883703 159091742 856342315 141478604 651706214 320398582 909800938 363907561 797928370 119439837 490212662 922179554 527393766 351149837 229985492 727780302 917370420 982782583 112642303 72540075 359114463 128281596 45129721 363177945 289537315 162817819 172709155 413324076 320771686 848886790 984829820 937454404 789272612 253039142 638775006 900035596 312728745 852223633 699479906 369946496 976825431 741666212 287501536 342507638 805310433 872358307 439045302 996442687 959930841 932476690 123798633 894507970 840851382 34390649 336214847 337412273 824517600 172136270 519855986 460699454 746726528 212329697 126750849 315965114 352263780 825670089 284140100 991990446 51435512 683474108 501941615 694165151 191834665 925637197 530546689 921041942 887513304 693092429 487473360 240888219 807916182 503095074 608061518 799451690 656148447 247687772 566908058 933782145 19472016 207958141 144158774 798645522 468192358 647810834 800732600 239526888 874500209 325161083 507368173 396453940 895809372 230054467 767995430 601358962 3517250 258622995 818424988 723380533 736933931 976081492 506126249 853918474 426868300 881049782 985847258 87350604 544298326 560959467 609295329 982172186 644930470 464180008 125096283 928591740 787701439 200527112 900668870 62609377 178202507 274899017 506886725 494192753 672951306 811868122 305460136 524314013 639078862 663321700 386663516 356938575 539865414 941642856 682202749 193640506 397448118 180639173 136281623 544831218 347617970 222199637 412400026 70837391 255858693 522364921 600388175 17159722 797783167 226517767 366182891 320196227 95318288 445954351 778744365 596840557 658425318 417085473 761277257 45738962 805307242 80318596 697402296 254079088 844018709 109662491 147162744 145844768 204705031 561643281 347519896 677946519 303467135 16022725 629689359 828033822 185039070 793751280 607420368 122678163 502114164 980777970 918985985 696609864 520669073 541568883 517987062 563826958 984478540 690693397 119300164 76628698 735312861 55201920 396841744 922089672 591645666 278621336 655088148 517322822 819610446 767819549 995320883 118445043 723765470 598085708 566177943 83968810 506932028 752029952 700614920 782355346 23260967 953144375 454875955 432758353 909521054 370963405 78968103 687628778 611925739 57299209 736840016 179176159 451250022 898763067 492198017 7335792 948388024 645504703 3448621 164040129 246972294 591522973 653348422 674598746 838647016 188075910 5344477 793056355 227247514 410318871 121025097 259684270 672832072 565009198 107585749 288432805 640725776 852182522 788040776 666020928 794329101 386539926 82052544 281145215 242000831 770622799 494312765 838621462 822997984 429991985 963383018 477506417 491023736 646371120 974053464 376105083 59678959 426789103 437348006 829990204 474292839 991857440 838260775 739103423 916237502 581341771 547894824 138638349 96959556 216111079 83689754 528351382 453969294 174238862 673455943 529316204 994950085 531948234 439039853 747274800 781047119 274717139 363605314 46730185 716277176 135408749 391004497 217224238 274182878 424779959 694505531 741563297 435104043 885345607 703723298 793579109 998118697 633640711 902962518 678760293 840997064 456047689 733132370 228523617 871911602 396449731 492805641 136357522 353219060 688589364 715482526 31255352 945146686 208234072 959280244 987061624 841218058 811257232 225691455 21578513 983537525 565465181 81127435 479573824 723736446 894533309 615067429 664333406 948036435 161815003 743828300 554856076 301588685 193929773 166148851 104293830 911652123 813551710 62183290 145339823 550159697 979313003 798551111 662688450 820113310 887324522 968421005 921003001 66347077 38235952 964367936 529899645 261481959 981796756 713288143 551322568 2290947 399090049 521753919 49429920 816643087 853500305 356954964 728843346 287447088 293030699 520647619 363080469 328872910 572952130 247113026 27634912 279063900 308575229 568052471 808570359 342476419 847509246 108491617 677116790 346682959 93478366 906612290 77556324 539219874 11568693 117374079 738711326 951035603 12778683 989035848 107764855 57423992 429823853 838675957 597353373 770159784 24104009 111556796 946493702 93805582 111578648 901742467 457466006 42292705 350369300 794778397 733867255 639219008 269040108 66484407 155166668 225443802 315492617 601346506 477421858 172428880 590867409 90408523 54251490 871942189 548684621 602491025 589559985 589591669 654109940 694033677 610571386 10810453 712728578 127468885 320503671 106798077 985331036 197321097 71632938 153103584 775738572 91206467 330559282 997873643 969288321 212555208 345185678 220412938 407132961 551126470 564713405 137825152 404606917 741704006 474258868 183120356 859600508 764261638 167926275 562961110 356639118 208794501 345088247 287818434 953711672 592274928 713224645 484436901 487349953 100470982 439654709 211276845 62829628 234392901 643567000 371771589 272794215 615466643 293637346 410546319 409955791 791198233 9425573 142957028 462525422 476312035 119652246 890718551 194330908 820756560 585765330 718234543 619504879 661031762 827161603 820126982 855452267 854941373 899478808 196008408 876927104 9754597 896917064 316132760 803728227 179624806 517537620 87733336 679327946 637402164 287243923 943989082 711805124 184093993 403037068 290565971 280133788 585622441 846025518 461618777 806880213 445644696 136608095 667246361 745169836 735213945 227995707 117506397 552297090 960166236 444899700 949325302 873394153 788483884 129295114 276389997 359653893 848546197 257409857 399469175 580674841 226981415 899895369 228196795 903576144 641780640 237793335 644140208 963690783 888583342 56075589 348863195 429077809 112990925 170790043 358222095 622439862 852386882 823053158 229916690 633266305 415628724 23267768 766994575 298638547 164347922 677972531 432563347 109613292 616280202 662991799 320782303 595485944 879550043 186215758 180143290 698647135 108945483 406728237 784117339 285169689 285231353 428668169 454979738 174234016 738233056 44623407 544739332 244172245 949014782 241450617 479206656 685790285 624568154 199812161 662233562 73347325 84548010 710850913 829508708 79125073 599145126 238212428 589384298 642717154 700697632 645284277 74256735 83098486 594324484 675474424 622653040 670624101 342589492 762857385 15759506 593730183 796263997 302924016 237231978 993992143 443143899 830985873 720480257 120235651 335492924 851299003 730605481 130222440 761052988 825145725 72112743 754067479 700315518 793362948 51481584 856142091 300873100 162846049 705069280 761862477 723567150 523215062 40235928 477008154 773280199 869251949 925287539 383841903 215187728 193356838 623703253 861148342 712718465 679311095 109790851 355665879 98444537 878103004 906205257 575559152 221852403 890583146 650255367 224694765 958788434 814819378 828361359 84352839 208482765 322582949 502509427 798922097 819508866 389315945 467198253 726592371 301183285 978488683 460233420 51252181 610721411 750015239 271729386 39029211 258768230 661976564 985934528 107986631 310639602 164972872 8523885 877270920 950296322 209833557 432892223 134000901 143331689 56750983 634089974 289677762 261755072 994177888 420679025 504361074 823547588 328176678 704330780 442509241 962701678 779293589 484937675 901494262 968513346 829180947 979575348 896955055 342504200 230564226 242261142 727740826 276576024 450435296 166018639 328853515 293424127 288321500 261132767 836669075 522716919 760226840 773906953 169367226 647043668 139528241 22797598 375129638 294191508 201020837 565126103 601898222 592820376 995682693 300853889 592380467 385294541 730558512 993543732 413684205 251136698 881445114 8364574 766259723 605568365 4334022 182940262 518629761 545135757 525346761 833604328 507288729 595144763 389070091 56295939 776208578 729782127 134696742 446351557 629423285 563386994 858965500 282248777 931350353 80720631 533327326 970782566 880270706 249709881 247894165 720234296 132675979 900707549 387006437 735558932 163520835 382104050 471255259 931566215 612243208 131681208 485105509 735857670 585124410 355365464 872718526 366269582 171704220 525187731 571893040 332455104 18188661 57669488 284709503 170747863 842734004 860509951 786344401 880635285 276133732 262772145 510702851 886478316 148193700 440364131 514384262 665856773 116105811 959381416 690636644 44014851 976508639 233599363 182375788 898307074 340940342 27214038 754656140 56730513 773172770 693934186 462913063 682014451 671964789 25780384 536320697 954735619 818723515 274462230 623198274 452329708 652863693 34667557 354794226 53670920 925738585 681180253 419278577 740385544 868847910 450019710 816148389 707928486 455148471 150662820 247994020 872057196 915786159 369186395 28947769 783372024 277678339 341200239 871645969 384724202 642693476 836465901 521602705 382427295 686203478 502229694 526512435 305938273 843892396 239281321 106007426 536349758 723646255 975462137 312943958 484401418 791958548 592808317 185417593 786570401 260229236 124493165 505250897 762262220 270352200 10304113 232234738 67452925 385242683 660194889 60133179 381862740 333475533 891052452 67711665 737254681 733021868 789488125 777990047 918686471 958133036 712114412 749891017 506977915 696018205 778070133 243174701 993019488 94414610 282724637 579002350 957949250 667966736 546706307 210227887 504789485 964571159 986471983 961639502 858345699 238034611 155071634 28006372 727357653 458999049 463199375 115012447 359349034 688427517 153993327 82646799 635524830 672253518 661583823 648845028 922220016 958389932 773472584 331489495 549601803 525881855 438757615 424090826 185114034 643776315 907903128 900975167 649689347 668619087 439528109 883114202 705855359 785012673 231048366 263914622 661830210 303230605 3088811 548247292 578937223 630001483 394430352 514666658 159326446 818476670 132114950 831394597 862053885 662627784 341362460 759470212 981503619 125550542 304150672 159755246 489167560 137333441 266335831 582799388 335700735 400292383 190229419 812706210 108871650 941146820 480174103 563569757 912339210 37510702 231046643 233266869 889069292 383576223 258456816 599577067 565636881 783674608 839673010 950883205 217226982 665762898 551046033 174601678 623295424 840744461 945236535 258780726 576208050 370818318 892197009 879086701 886223848 399156099 56842604 703784140 242124773 124855038 591495626 546150642 583913726 500309857 329780305 756137085 661754978 685509047 469124344 103142516 697403573 390901320 708799873 352383266 975431730 117662141 990211611 576267238 897421666 252908860 953949565 613631800 55206855 185206474 291249764 98635792 963601097 495504734 201899200 987570984 609468274 790456899 920048485 986598532 2611426 573425827 118355417 646819896 268626251 336477875 182272672 440449092 158122146 155224101 132683543 162480539 294296288 370824580 953137171 535731750 12562803 455041526 188223634 68991791 309235884 772799003 643054296 124638967 718585511 199851122 218425110 819855126 47441291 550988606 310440822 741683991 847190908 691988351 864454705 319732273 344128657 650921415 294261624 910231281 894027232 273698869 166529901 211583030 754095408 500934835 674334296 16586552 676747077 914234466 519909352 507928540 708030363 542767431 644583315 663766440 75363986 667592508 615637845 203992267 772418061 352016511 900009365 548602252 784982892 920942774 619135724 219019942 29799686 824895904 971901642 311464049 895991653 489645703 895549040 684660108 270980479 865753812 576386042 756792159 52279961 681865243 934780370 890735507 561477799 373256569 96942870 798237015 944624927 366033091 865607405 618295527 466700581 215381411 840966325 725275886 826073803 489475035 959643350 275542075 189923314 295486657 650070444 657462520 554274549 508972469 540318428 626485982 666465048 471666938 598692866 414047951 544460526 575639470 525115934 117380048 84369830 632548519 651944749 510828495 948064308 926348538 152215728 371882818 201516669 363585312 486266106 994792431 517013462 137562537 415374413 575278204 712604960 94544491 559862749 132714638 40296634 356390446 87338876 760349445 607841027 500425403 414723771 440796381 516507475 518111036 288640670 443609797 232790470 498009878 287653258 852535574 655779181 636248668 822407408 260312228 21605303 212417490 134803928 89201418 257949749 493818693 307522743 751853554 152774867 271529193 821588326 884522668 932529552 20103451 521505758 652826945 368116713 126615777 844960099 435448740 353079175 495733216 186523318 576061290 473973943 29583581 5148106 52149552 699833573 514884380 15379231 583180728 1168533 89542220 224463803 529213015 548302286 308135460 350778874 262201220 849773496 612237182 93072477 843938911 437288130 835077867 549103490 292132128 696469352 107718542 244668503 791574441 399203892 361613613 992887240 886523138 263335622 309928357 828560158 907293225 819797375 194965897 124121058 311925964 677193421 504718053 668310988 517472856 691674633 511474433 768059662 494120052 311490602 56054198 970521688 874918866 431309096 755543916 220439682 109224377 687896266 771841912 745931876 996479273 556076610 534774474 901996334 408398571 463636942 802250274 833224857 690107887 647876270 13593776 404017576 165213363 673708584 763561972 995923551 669898992 517360343 850368987 262385324 77795615 935213111 545370760 963140813 261024583 79420096 465490581 771358354 30773777 331953529 154674993 449320654 956919130 756601213 547145337 205668632 721616478 21145861 71639976 551912607 787880610 501024033 581825052 438246336 368590868 726401709 477691362 902333360 783653121 353666004 893084300 775468947 169439062 597361083 946348928 389432606 4422895 900430594 697836623 1609596 85972051 29743353 718502871 557520002 11267097 435822071 518948143 840235946 378142216 715464600 319620387 971351567 505480876 945851656 982970129 398389959 977760177 680760045 386938797 175278680 152610991 146081244 902504787 914422901 896109605 934378678 316511957 404388749 910577975 974838572 417443841 654304819 569021002 9407308 919405701 377759484 616443825 756015540 266990628 242427929 442037977 67981720 719364138 68880888 448759463 653053278 603314790 583472390 686018275 579632591 126910884 954344283 459386181 361810728 408017150 901137430 914037149 188083410 602504973 142741916 473843983 263775097 189668786 338740604 461734475 688200380 715171547 596788170 67082629 749101159 759615868 821829621 727304917 540376707 73297946 831573677 491950688 293652918 17310056 631921877 815996111 761547743 120734804 855532364 14086688 642117189 370494181 314761038 379918622 279630837 448387515 937065196 233857859 424179414 177626890 174331326 752639125 555899370 134275012 978200636 575834631 796878953 198538386 332480364 184807334 173840908 134706649 440405230 193006880 985261948 935744105 112840597 573405192 486289654 427937040 608336002 621932315 117440989 517499354 716395571 8618285 591900169 24914282 919894852 808879123 249280223 342746346 659953731 560928403 530358995 837754549 968150035 192645836 441380791 266461014 854896452 200958799 219099719 12361076 334696296 837211513 888738260 227656 766534578 519770558 908595654 610786136 667158749 398415831 343835227 299064788 844816088 254871671 168302740 131874096 510204968 771946267 484012801 960014428 712367649 718478782 719428118 175948486 765812386 258308983 475771699 712458813 711291850 321983218 814733962 627367281 799726630 471850845 930251294 724735556 588750268 121183406 548499041 104720396 66915791 128725570 768039241 439306275 485918383 255454626 182752355 898399551 261234580 305740364 24963617 811108272 696648344 438875643 307354895 192086187 266555187 879061984 927550413 42979479 714394069 994960288 922829919 126672445 919738459 58482125 199826730 862271938 297573811 418698820 971395838 920892082 755107130 113484733 376905443 3384755 254044362 178685166 504520322 351682131 678330758 546251470 923762612 719931310 795142871 294940739 327721607 335549706 597234095 486364988 91241981 304398904 994053110 134660012 453735334 910995603 381635676 804621808 292205981 246244823 835655017 293443310 102760010 827091159 374185393 999790490 607918718 832831519 129263398 43209062 102667237 157456026 235021803 665873744 263685390 870887781 7323409 898849594 280478856 239731191 58133458 963082482 183086339 345572910 434937268 92991421 18206375 770681981 715105581 528212264 299170088 412160824 833394500 440008136 877931111 578588389 64300533 242721676 566429592 672199220 651293753 556969225 139770024 70988615 344041320 181168098 365344074 545279412 827805681 800415945 217454639 678869325 141828853 948942596 523354886 294585696 882565390 933752803 628968488 648470324 971884176 499960630 996681788 802084189 181249399 290022134 403749770 328604194 250909926 160984409 108167451 959825686 74073363 278338815 959543444 192347783 477872424 554221656 299776410 582881780 164112848 174339612 596563107 885056939 207683520 708375435 15581259 856617551 873382687 266408506 940585112 658615180 123528492 963334398 815079804 206994474 347208739 628469849 691430468 111681645 688250392 839798522 145085660 59943748 780201453 846302409 369662437 869390470 436669618 406449813 451569046 457158097 145869027 719711227 919746893 791053887 51134016 187215005 476333591 106870194 290228191 177456235 380756655 366531351 506489522 835489636 522649130 396219459 163927621 185456327 624630968 553416746 860695282 948227292 31242837 803550312 620311193 143253340 618664986 9587963 869447601 814256234 856983216 318432364 871744993 850972112 523861085 399168101 288329590 17662918 530625220 88327604 293753483 152912803 208653252 170489853 271037448 467262357 947514034 963206579 770014336 657177198 364881646 71531871 247036702 227920944 49851899 161487431 539468629 738982874 825684843 262815849 840340949 665289706 311142812 393369372 154490642 835382970 920304729 953147939 861834074 442903722 291383345 910299255 466516420 83333997 119987273 983377691 470355127 490705378 52732915 337006553 439223143 111475233 323876980 757151322 988831596 670686053 671351819 863926159 93118082 949262578 828216928 662430048 431184324 1835585 283000782 628163173 854654441 230848023 298561773 803166349 910330128 133280239 235516583 202250003 6793798 371430687 75144513 643362108 174481244 748065515 90145046 771804420 248011218 50362214 311300231 315738654 374706965 713382921 732043969 592856807 723315192 165936656 579259194 393742894 968808396 29240796 833463837 191010475 231393333 427939618 248209088 166723603 985241394 748689092 364605271 885653848 729041900 548261374 188418508 179949317 926556033 593717864 192340183 854198786 235814919 471513282 304723610 43612037 602397205 96649501 972828201 401762532 809395243 509442879 475920083 257758313 292386946 890202598 487978618 634858832 99845667 146342848 41249676 979179193 795920048 702193429 831034264 761560450 253847197 89028311 271915333 877092200 26654317 182737626 741898208 664968223 416483857 872842675 395151497 439280152 857237597 338945467 654633221 874367620 634601571 776059956 508103427 268378810 288708610 309130259 501585861 780229566 32832735 149002670 385807543 694808798 171860228 320916102 340615757 635654025 20671965 181349858 416952380 503379665 127665773 691085202 378645565 631137787 139619100 653779955 611320652 963537341 512237328 294156339 516456220 705968896 930737497 63967600 438046791 520944976 38111300 702636311 15664394 257795529 590977937 374915126 503586704 550024754 679866679 111071651 311502176 904700472 187711654 83638975 787014285 526927637 787097806 471506453 720405529 70667493 99766291 759025016 638700279 555968602 243164882 500623975 992424465 308453850 754802280 722873511 696476697 503868474 139868501 196297178 984176944 834857659 184240606 472720684 156780016 626998986 370935941 208804678 193149279 357974277 239087167 651324354 308404547 163552349 776168559 840905859 246661139 393187657 684686475 940448979 617393624 642586713 102646114 210966693 389160025 423155030 188455085 161211462 380946094 469013046 107028641 73165045 204193302 292626046 544889243 592461455 71934363 218423037 691020110 174549839 472260556 853714878 883055665 942566866 227241227 159596598 763412309 300470123 628067364 705848570 67606238 471945787 323528587 642964935 684112493 520284922 621732849 809724989 431874866 560629576 791274706 825000759 636349863 832155473 421896924 986427694 637045679 811491271 268075722 228743162 132205784 399107594 29005442 920269754 274896406 661045552 462970862 499810856 190962532 474752669 703771048 442280937 113067802 662730766 248070351 412493492 411253359 205538300 904353230 528962376 961998595 571577837 502840431 445523453 591374999 305724919 617250035 807179574 335605036 50099196 512878281 378004988 73053058 605454224 309351736 153466975 137355924 739970465 615507286 441871118 623753329 315636009 307465915 59019032 726993094 269568318 9493247 216958778 921497383 360690441 868792483 104908015 52295781 409844295 170424168 874036741 601146398 966730798 745141458 828651266 942124177 508609017 576509159 283961709 614574379 924580984 385706434 151343550 840702775 881005293 751409837 579541296 43659019 403000758 576800483 698631096 1071644 200346969 193164612 276937988 688000502 496618821 97181478 64195347 404317045 210494600 966664559 431048146 682415617 284200358 61013428 8901749 469582264 21030845 39606699 493286413 903217240 39126601 144795951 940529965 464516511 840771721 909126040 666692533 841598297 400253626 345175086 114177298 966871204 948651885 266886548 747175894 899309551 603078064 600866288 207224834 971311610 561738251 434156515 559296010 235046908 10194826 180441438 386304582 118354378 740429710 5762735 152910583 239115534 241038649 46578584 603014146 164263761 616987683 940434930 852493264 437260826 832442957 929128253 328648921 215132878 816226896 174396633 250179397 380759787 284699679 138006220 244435346 747086408 778386278 581437238 534692427 61396789 108602744 261370237 968732047 636240491 325318307 370981354 14506794 206948038 341474261 12421218 437082759 172348100 699161327 159934707 261041023 939491278 75379938 323017869 884663721 321120986 615279226 49828375 263563857 226884766 3706860 246738468 328732730 898900197 82292345 633760548 325389987 459704215 618097364 588798907 791564661 816133801 509612352 143708800 923318200 501622978 504009151 76767768 946373872 507123546 864879625 64760312 536958201 156536146 57023682 900364779 786806315 494083219 226791007 432613760 162362881 871681656 201879500 823813522 233226359 158791141 265286417 528210236 579202913 974866542 199613155 602216695 611074080 806187352 226718211 982425414 598537671 99402078 6515303 754435155 768667585 273777138 992941101 692039380 870093963 182379246 536214789 274809069 291234455 728358922 510194886 607493753 310233364 624531541 806323703 383998682 393964703 863792511 299275026 32099519 122438310 205160030 498189598 464869859 742096803 604155362 821394956 673186434 275636582 771719258 685521981 675418736 404683119 416568401 187450807 952702821 924512175 370138449 403866414 104864371 643373044 807180024 145186016 541505397 343378952 374151881 973179458 495856056 299323470 170969832 519368759 623083171 742751534 474011650 59995027 325127879 834900735 163409140 823204398 824215333 999956565 869725167 659269553 386359022 671593841 817199234 616733159 922830882 985720955 894561058 951872830 910482725 661922168 998539745 831064901 438373854 115618593 796588556 724702101 119439181 585516882 198357398 438038539 424246082 938903685 385297565 249289805 250998514 215331146 329847600 106673040 904945322 975610684 621157038 128657982 7088584 836639615 327553861 166606414 792234450 389159755 294442909 268583239 694030383 499788262 830758107 349153829 186210034 824855594 502066605 844712755 357657214 965513477 30300898 11807545 73171741 665107182 614632165 572944378 859789387 73034219 190432086 617793445 521443850 924056139 754421186 297325695 571104434 168982460 300136009 972848332 383556560 30158930 529241023 909800448 492974503 332053017 837790083 157845222 618115278 449479917 656456457 309888004 719206182 848527567 675795605 192922459 865122954 64773739 13540240 145524092 50038055 457233743 722180572 925213455 374832920 187107574 206250445 456338065 642984708 411183709 763592657 795493303 251226215 87839042 812292005 465491532 760552543 893495490 628189454 89537871 596563323 648207166 14968904 404277327 601535623 116469428 304652693 815602367 820258685 693651958 900833054 500085640 613880444 784698573 635820317 21526651 211615351 192984036 905350811 37795872 284979145 965616101 106174552 104089910 667331898 312934305 735187107 782205126 737249980 177628561 633127466 874554098 832986266 293493593 765818077 220633449 553119091 821426965 787962992 473382017 773259545 721445963 657218793 29744406 736929595 977886356 456249177 152067384 389338659 570206983 780231601 966374674 56539711 318487295 726759426 5760948 11027775 819387496 699158311 376635834 66329804 730252488 390273665 834997740 156493323 183683133 876108850 223219796 569387157 234511003 735391136 659453461 693697039 302885795 791048250 913351430 183501551 926368615 805626377 631464736 128296607 605544353 247458231 591166374 752748907 859976833 331203368 338599514 422114018 924019884 865636044 992883692 9359214 510592134 264567050 959263296 596650294 577773789 738354162 626477529 290019846 543209002 876697255 525601179 97951900 693068544 657646179 923220660 506088407 456470605 960543650 463320676 440453738 568485004 395849637 321394609 225672099 677209260 733276063 473616331 853494663 705404781 769626897 843623746 187669015 920933961 917933985 178830523 204117209 871716220 525009437 512528764 95532061 370100718 757359088 334666270 325175953 193821381 283836387 164791427 506852339 876966838 155106078 523325122 91641656 635834016 376974216 178043420 207316872 668125487 414779923 758682264 551420662 315805369 967101089 672222402 451517559 442852741 847835262 664408226 459564975 126340131 814638240 231458887 681473598 495879869 325676618 672204328 654923454 451089639 170487681 363479423 652113301 56730460 826958767 168404465 436713300 268942148 332495206 698320085 638961525 83532064 478764024 741946669 469766762 342372885 515146946 571563828 70393925 522289153 167211758 824989072 831920073 582069842 996775866 365427218 627127747 167755390 141728099 543756198 379522614 958692192 98482152 839623180 980269689 336566151 378789355 830227866 570102539 608014407 475416813 696053783 31242267 905710469 541883087 915024233 600821562 78563433 306336323 34837095 200413390 444872558 440076174 791392280 605989640 472733146 499644509 753612209 626654166 289879428 885898038 2438875 879265391 80296372 492385795 411301791 552255706 222141909 999841607 473698125 453715638 115505368 767795930 75981463 68100048 809469193 36003680 654398049 923737551 364758245 111658419 9302800 600414103 134101545 794940184 88439350 736255142 869029117 666834271 125425881 117923665 110243654 825780408 430812606 882015081 678813074 342771028 158414342 37012585 361674700 837669608 239935720 324629388 743756351 150714621 534073360 255748181 152986488 141271771 267496667 335906153 695154795 768046260 320151932 637960985 577188057 904598022 870664661 189083560 49534496 261665749 769791695 9615522 328983192 941799239 180294448 703224766 790050574 479554066 930217114 888422470 195850902 823751626 175128995 742851481 434884959 111368431 952826136 877825566 840658665 983414654 707812024 993573214 588063209 166760599 234572561 851165634 775045284 199486079 350322227 57011374 867726525 478497521 669174087 235849318 902455642 210201398 570770189 975759573 227678547 879781640 366501146 26555016 334002121 725040365 461936287 999757850 893262824 530996420 172806609 170069769 623269450 464709231 398346125 369266593 839060763 10727415 740041087 495655964 839673249 130951911 782197099 445553200 33853365 503607855 872095135 496363943 344719582 89910998 671409058 222794027 355082952 575259402 177218490 82984401 408379948 32041338 866051994 673283345 795075108 468736318 406952962 443466640 594081588 577893379 270070414 496486020 493115066 436812201 730871420 257089658 372945168 348118347 237282883 178316689 442094071 586743192 263784978 941410357 302027890 562013287 821499043 922370302 396987265 985705569 630804112 667770088 38028805 637587387 750882754 462954377 461849730 248960526 196544700 628845810 430997393 356731496 162419128 372236646 509297721 359520958 996352618 99581756 348876800 663119639 260153048 83321806 5448560 840867823 662373386 727804439 329890151 109827874 73929534 58493592 540067448 342341677 99376955 360433961 62825136 462075518 637244811 663285928 656932920 770573484 276090582 794320956 278549047 749788547 740904579 421039806 62231481 358925843 427510378 941876933 4543653 236614798 984057877 837519742 225645185 792112427 500489723 754410881 469052506 201585650 848361233 45131852 360655725 564971629 621983449 872024612 6849758 187940 150550975 836933768 833411935 898418029 71049610 837797558 510153386 7108702 53450690 76651411 375571892 515514073 599233494 771658018 58789839 416564160 686097384 272169385 23437207 975411837 631296346 275792119 993291781 107846611 435929724 872205654 87138195 373822762 697368210 530226441 592522340 171535421 954527036 556733490 92815911 665164841 582252835 81732300 710034713 129859195 10409597 500276710 82332419 801686578 794189008 766076033 956785283 394532115 271660612 673142839 26507963 241675903 229876988 976445897 202259834 853120645 705481222 437837735 721653030 634655627 205114492 125203121 488425456 139376024 816729775 391468112 438259266 224164960 850693044 409128800 377254238 523000955 335711153 164340035 728691309 989291529 345695289 311626426 610032008 200646932 855701158 554655592 986629005 201213708 279099005 759700465 633480818 876590700 21717664 772797649 929660928 457201772 533428664 393233537 136771686 993968604 691788527 565628305 682481078 629136558 375463652 793788214 661954651 176945487 422502417 3899474 131329109 404002491 154561329 995441456 222789826 256376453 98872805 257314165 76771857 625045706 697434090 64150124 288375245 281586662 603720046 402066622 729294867 402402143 235856597 851316627 76313295 971096808 504059285 747123440 580591783 735332812 956943021 842823866 516360211 4803075 546416489 940258240 519940948 538222981 51389937 915032726 835219147 150176621 103171484 466400791 169042863 744028576 937933270 938413227 503788852 204114047 856253705 803763066 427271184 549213143 646352450 132136030 946176688 826200763 53734513 999343622 504908362 178179781 747920892 441714707 69054974 449051539 123331101 907965510 860866940 744209731 776974052 933713103 357287789 169443674 120539234 405299351 514847269 124061960 157280110 295206876 518243310 868734750 100787017 838414328 742787767 446372271 652330852 218111511 125933398 610976973 251394379 635542264 135424574 656560592 286345329 263882643 71896617 501037132 760494861 702597686 952562389 106691481 852166657 764432872 530601922 818655489 699092949 158892145 768415848 873178699 200672399 233646383 63006616 795224303 646746224 762015713 654215764 394294933 599674136 169209315 994905350 34403822 145843935 456938964 531574719 497146186 542730012 765671179 29773085 154036193 373646684 598616668 106272832 961371514 892370148 105056195 91029931 709387356 225985215 973029215 524093882 531793951 8134828 473514776 849379213 734335048 111278552 991987206 355144210 595130476 518109702 80316405 740669564 54284320 892593502 438057455 175810558 549780349 241729593 880706030 313127396 215929922 957795067 191963568 203938514 954218240 832958196 543210321 778413588 180325555 228909708 27796168 339348404 588259170 585930920 633935592 199044265 21438277 400786612 834374175 856712083 60784254 607985622 371261128 17425702 496477534 245626528 112719649 856657133 15627448 319165914 238456420 6016045 877912829 798635273 779644458 825520986 572974932 358135299 604016163 326916618 964148481 475014539 406446060 626869045 587548834 707662956 403780370 902065721 731500825 954844498 724844921 531703979 392309123 395094744 899397682 220590471 23448014 913537278 269527554 894896546 42023438 134283472 124678578 368208865 777043143 333397819 432060010 952358597 590374009 426559876 563520471 846068407 585401296 417231369 728213026 127438263 186400219 87532492 362371820 553335001 148868488 695639 664889599 801923315 641373507 433021101 431446728 830987364 134633795 883806553 668499211 761139042 904926854 295601527 206915292 333856778 519432974 923711518 863427631 991731377 151765264 829402183 311180902 356445561 351902415 928820242 277650598 609309453 290070720 952776729 51399448 262733829 275319025 925216295 68910473 616200216 151728914 362981182 132552626 252655379 54362283 160660486 260590593 45173240 114122542 345233159 43475352 540803810 101214702 422708620 864451250 758941065 685867344 779220104 626651015 34194354 806574812 914692063 521138183 955915715 952991386 426280858 935417571 344800430 815874907 56289003 279529404 78347457 289922326 61548288 390708508 578787732 222614292 815481315 555060033 951217237 925338652 542869726 393454528 127315461 579046513 867146045 710027535 207659322 463553059 145608707 875445939 895782468 203526246 227478967 488717946 308072875 12613373 329715860 502181629 179099976 727643863 61665336 407717701 309323705 695289029 428154313 490018312 889421467 387539091 248032610 587132583 808761827 92629145 35350134 306122199 244681823 899549394 541997423 383618162 121853421 291622410 78846089 403242231 79800812 456748648 706204634 418296429 421779572 398932692 176765607 517125383 459534654 920155500 205115943 572684829 220748974 815400673 72717960 989984299 278412798 629671698 810212465 582888143 826204509 813990308 974783845 631389077 241866908 631974924 538283011 971395180 973164489 23089129 623893684 454164448 994776200 554798900 789416977 100138690 129185195 36632168 618192553 90185502 607809880 470307587 984302736 942293015 926247705 754769286 727723867 120681534 103815199 258111829 431871959 110654566 990427435 811981908 42024613 408221887 416694181 741542310 876744088 459587398 733069663 962692403 637116336 554693156 948719255 775875963 359502540 771181961 935982453 232344950 919693498 701189452 966235284 138779451 196520523 2174872 672968447 317257361 628692030 909733073 766699110 374050954 144558928 250481464 714327617 240560821 957473297 175977458 845987100 56315107 102890755 525305231 669156662 407521277 548450559 490363536 353166825 920075350 103670242 318152431 980015651 754303311 36795056 583915909 460326219 481769701 323386024 578390379 800268374 456586482 100445207 290454921 500340453 233513232 343793257 228459936 199007529 208299377 828057837 654455629 983179523 706320999 244611383 298054822 431272063 241290315 170419426 520697405 119506638 57023773 112756326 14510119 646518900 981826998 860313534 259461645 199543761 588096918 137170627 584763842 172228938 947611313 636509104 969588455 985533536 870585205 606158523 101857215 413266643 600233249 914789827 488176032 850481670 447640883 850889920 680759841 602011190 675509014 417894050 779023722 903465905 627469050 895978787 688314205 423781366 795725969 945101631 757707890 550553649 129499291 555088172 573756323 753942846 996783353 500370291 230974421 186577105 160672108 855552733 317119256 358757299 665028183 32556825 647090276 414498286 383027075 172398807 701694539 688999122 38887944 585937366 154019568 732096547 763045767 641381236 254927204 653553772 358286292 564342705 762398925 492292572 708307082 443377068 632996874 562101169 109837413 995453180 248569252 514920479 236392466 296723367 468254163 472601068 317821624 384107189 167652839 357175662 492032428 240282601 350838984 503408886 661301164 400479034 513512191 740762683 291146337 269140436 692796787 350913059 581533873 328722645 185503238 688381655 631200927 260990736 360210013 652583154 251019941 829433664 750562429 640168621 988992095 263763636 121491960 336395429 797696910 824785047 349364504 983126853 275027315 414418757 828268025 622729421 919369748 709747160 677077734 617866710 453407547 634576518 150551693 629801803 271314686 843623487 51811102 143248366 523865270 203327588 533371270 958397365 360117777 492734469 807396876 326615321 415115083 873077791 395507535 369367952 619635500 733187649 881374319 362606656 210354082 724741257 647114328 414942412 664549872 791342083 328064334 789671203 697595691 511731558 82510735 531792716 408482455 901202386 181521943 391900871 366236545 892885297 783683785 189815536 988026280 368746142 928978481 963405783 494755597 109464779 814426883 113876719 572422293 700163777 33124252 63612705 752912982 207430656 233928890 631161695 976698936 70368003 936238958 854057604 30284535 470715367 842038980 714599635 405785864 195998771 510230630 338676140 353600315 201248978 606943489 454286842 650308304 463244747 662380626 5064462 146427358 492586222 758519176 669883286 568439477 251962064 850161119 22982497 735279768 934236493 908914275 432139121 780847506 948968482 286515290 514377370 220219738 572212603 984955504 126492455 670958723 922426716 367949908 261844225 363395777 631680925 371884842 364510543 168328851 859887147 582611482 245658471 963134768 356905988 224761430 974533040 849557661 504607375 601428285 752216672 39626789 819405484 3301803 125978844 682757079 993171520 635748676 478416253 94069346 366306073 767492883 953670574 908110105 117603851 207495144 880914758 664205357 467273430 158699981 202700373 984587757 538375790 58780372 991678695 909295326 960683304 87697363 320134143 792290681 970187313 935452683 861627816 668084822 699478926 183265801 8114396 595922416 589604426 136099304 751453692 701314706 547847024 576061239 26258818 682759063 176889793 693080051 8815388 135915662 910371098 852937319 942164451 524420130 511659377 831078643 946913422 427541182 972220173 374920470 882324289 510143350 905812044 195010602 906032742 786044049 356271850 644881105 160271202 481648363 161383849 573728800 975843764 70519079 442931091 288816026 738546870 132286799 751629090 945488564 64137045 834074264 249598341 539442178 334482343 803211791 676827474 908051446 904463665 321547691 36619041 122411965 923710302 168226040 13157479 288819916 704578655 567170611 373534180 206938795 292898921 835220905 627061948 73254968 95152656 674603078 822787403 24127584 12000512 187936634 706678141 242707384 467077444 347514544 419760560 288890486 391922139 943377780 816991615 493738413 311612563 609131251 281985387 478206458 956749913 507010814 426051923 286953436 336576586 367771018 161266007 461534305 44597587 858994831 757178648 102657723 97880729 172248787 54716659 603335686 709822045 564016063 41319287 19099755 804722099 308166794 153169276 871576085 510256401 306349339 441716467 423890550 282003094 181405870 53317298 520611719 977417790 60283402 545563340 938816958 622691938 584314558 218059009 657608713 895422810 716979534 567372875 526099917 49627496 8751608 555515520 227752042 25231178 155963769 316373112 458667676 369870306 68856790 525707332 851995693 411383202 814704777 803193483 246114849 100180370 260386781 791269071 982363785 619121876 591383756 525188574 573205384 883958312 143928740 578528179 429812532 283323028 911031645 280227772 443611889 886883285 396694582 569176830 419827027 369074462 39860976 523676108 127532967 345775040 829211038 187760133 160572325 304898387 379899983 396849059 991950237 250553405 334855478 669539278 799112777 533402386 820836179 134811909 573108583 569759496 916368197 796787696 625810511 871123545 135534068 810933441 692020799 557102830 865122285 332199482 836697240 308907427 273519777 22052526 16472625 930998631 747835315 602496518 876365582 946492472 42883321 5760000 36941720 276824478 553238272 704467835 87210569 61914723 500141754 971851225 971601909 954339234 175851698 488597989 865275681 667097681 969587232 83721630 7586401 764928665 118646712 805926953 269992234 416319705 551502624 167786330 572960917 74471947 587204999 286180796 36803449 7678701 661919887 553388454 606419042 805698946 686569718 158065811 161755 742348575 302724335 739962351 575802442 671011047 241281326 372901963 58296920 723998820 665156 840633933 494373732 945294545 264525416 47381390 551461031 330787236 472638200 670019713 449119961 589273006 361085408 522713 269779990 448684392 447290693 970012370 710259028 341659357 547539655 770595491 106025814 539001552 709339346 779372248 773382901 747428392 732505829 1166672 784757830 943700045 190373150 764128580 356325285 788208135 986927655 983744855 710657508 897841813 139997461 327137045 913591439 811687447 542537296 845608490 539501522 132996829 813480267 601926754 498508954 216047728 271536080 932120570 395886964 38336617 103113639 584617628 893436042 179976554 476596947 738770485 728741276 772370664 876158260 387885815 337053298 810247777 947458356 374013955 17740162 985549806 983164219 209318976 188361931 937470325 533234598 242241041 620572391 162649520 394682866 686689797 195443732 220002877 831394609 476851503 448022877 405735120 798739439 129116154 463539974 640361552 634408338 787111613 622965866 460499010 565282750 653360776 101947298 11308747 533399296 978823116 985414306 800626171 998193246 649432210 701585767 951464965 188485513 26722549 409914894 400130040 879783175 488285495 681777737 655666911 72061213 772584367 809966374 693341120 929453710 350413774 955467322 85632684 836080202 627703457 123805757 428204909 220773526 573484772 972296966 283072971 891891463 395371803 66773179 674345751 830237250 518858227 321131754 411879471 150722849 621944492 553270225 595043699 346483219 556112343 390822726 591811587 582183678 268785784 247170214 231510886 971512295 340829627 751664301 845948376 745625349 467810170 561975402 184420779 478492484 444391182 203720029 9407521 859750296 762764325 222631281 983336460 606157368 666015690 118914126 394580171 379613485 859048840 641063709 303731169 392333544 745249993 484805525 900787864 70519706 384199112 673633891 955161770 424573503 355146690 225756703 777364205 298699912 610649228 959790909 452783419 559542545 616556977 616526247 401267326 729710831 586495639 233700560 665699953 586401299 151112561 520757471 62608552 726141427 213045851 289858101 410245555 978089587 138556418 96214281 3943597 9897633 790965905 782412405 543354610 975877875 384726256 553942212 576872846 705078793 968881612 66902361 784360048 588303907 840845680 447314006 251045828 882636551 415699207 189552230 475108614 256814037 347049130 615186994 445453496 160479615 956522823 701222693 883271020 733756649 851938667 631313653 708782830 122635177 469124917 304817595 365134742 903810422 279526368 231518664 106272487 508272949 176262192 40976353 375968044 806221387 893061720 28001114 847538975 444877431 33789067 345170188 958472023 700947394 112781202 610479857 104782755 555982335 884428811 550360602 181310806 682392831 471654747 34146760 968372339 859984848 692265875 960317665 26235165 45722661 442252213 597772259 735740646 380605802 611750014 649285689 399621460 129248216 886856345 805135994 310243578 699975965 736924455 338300373 532170450 256629009 57271178 976521703 716691731 138351650 67575278 791675713 150388817 678407010 259807278 531440775 492718129 606070683 15007220 706242038 44649842 934777375 673760869 461504262 133068627 939446573 9748532 689446096 998564948 768336085 346912189 938399877 327348338 83949631 690286162 871033819 992562508 30716725 818853124 718975581 334315176 481973868 863210319 706850427 135552852 336191715 548339390 872410252 229288247 354232245 316650368 263292496 306415452 301326704 765614697 183675215 147112440 232821795 899451176 303902823 945808967 790171192 207653081 347511429 836005692 151953785 953521716 863069853 955512055 807910643 360733444 122636769 240429545 826977043 900043129 305935586 658603794 945367584 668944689 913563889 705099128 175787008 850995495 261256021 188600237 933793895 537875624 515792127 550589618 204920049 822499095 129742060 962971299 23242766 348262395 623197903 215783529 953543446 929432136 529783299 696375995 951578989 156772861 602844743 414233335 326993098 12303713 65598096 65458116 753754232 723947641 203087679 4262190 585700434 782988969 959001470 638149168 249737790 963315778 389179773 723744965 35233267 497816915 346091509 323637226 416789560 985712725 94655117 404632020 651963768 597636231 623527334 461717228 56978443 501602150 330361393 96404042 883931420 673827286 397486592 682328548 67241960 868535728 505751476 886297878 368817484 823760840 109205370 448893462 278333511 607005057 962697542 361274025 58613736 726919765 376142771 356256310 360254131 253763532 728225917 463713721 559415971 601277421 988880703 570094008 103677144 376737938 29035770 315204962 468423939 765308272 647352391 228497276 158642469 561683380 323052921 551891290 931908039 941655005 172418633 194440892 144111287 401154610 95902393 488331483 64250167 402792988 38896872 977528277 380698392 216375213 789196668 666169680 487800801 944117493 156293479 844572275 144243043 468187174 31905580 890419440 223426989 523292002 921738966 419453667 913860625 325077369 287639350 441881762 673710649 317604180 35073973 84968010 382405966 912590716 536999726 314905368 795651370 51159198 423319337 627482032 541823008 357403262 201152185 208166518 627221779 69520568 830481621 139004466 523834688 185239795 492451228 918455508 966463374 235926375 551748552 679893162 36406193 450288834 401923515 33910201 614567400 531732847 261658668 94855578 329351407 873085777 488958926 634906979 974534200 85088474 870310198 577469280 189720529 195670876 103758131 562582523 694154117 747029552 458177 42874895 366102149 960439067 54116315 556518463 303606682 873531073 76899433 121100993 960996883 708530158 156009614 158459842 220960871 312651546 807637220 633115737 812170053 263189434 419372333 668347359 857495347 46948455 657703803 439059509 273651612 449926645 830563423 673764456 299884405 988408759 351975051 221388771 606565772 666241474 117561621 31635850 897787801 25041447 262874618 275657478 247532782 703331400 217851118 117655062 503277449 925049802 727506038 309319655 397713206 690277322 846315491 686976801 653337918 660559502 504963618 69405412 335406265 710242904 968025727 16299806 906691553 653806122 113045938 444567609 446455817 360665811 575444409 536691506 303261251 977113483 926281614 18717243 422737517 74323029 702782550 610275419 65320581 47678972 462600506 952022114 727761183 623394064 696125127 400086329 583796335 363926996 475812872 219588609 556305075 415076087 430147923 115534304 262603734 539101559 156088061 605963994 498081535 411536065 653374693 937027069 773029639 507463753 374522057 721874288 486220065 187306577 401656990 646346231 416435255 955206455 481299832 649016585 564174576 319893663 949755006 682594285 807260880 786215117 786643882 49342318 608748781 743983749 117354713 597212161 671351199 279913729 726216391 812448726 284593061 275366955 614546785 605619565 901441185 63815628 770134173 706569507 891314818 907495090 607572946 182692621 111414207 887414133 918563787 224871602 582096146 953227970 880885495 407783128 494725490 295636132 765000708 344447273 681369340 39365284 45578510 998933404 818591820 280791214 164931364 925869368 798724176 336321103 975912839 812411428 914846993 446820140 847063907 309760046 610267792 2927975 194951957 411575821 370659068 123852918 772512570 922932207 918037134 983314262 172630087 666658950 154038256 447034145 867837561 569969711 321658599 658345488 918021126 929387030 339473397 945297468 636531803 898223907 802049849 300817320 163837470 17547219 442358059 496028358 105243560 796877124 597398280 304176604 307203734 909936469 664167949 625784982 904339923 552684294 499803005 328250702 301632768 861108918 422908067 393211222 953066664 432018984 491754369 504501476 165665489 681616558 812103077 921660223 414272282 201442979 468191509 712792133 244518714 454280674 689744184 743518046 443681031 847752876 394141969 156944287 853424568 970654111 436419877 638819352 99640629 786789779 260626226 72903632 126542365 807190488 917856847 551555919 807560781 409997475 61235467 93786186 836619868 79311433 4952813 984231090 44636112 151021886 384198228 459387369 385050210 69250077 350356084 237243570 858364937 874894778 987526585 194439391 187703073 265710424 999396871 829209772 570827342 16126329 128632905 561137627 897252610 755338208 871510532 123875898 210579257 904705275 809091308 177591672 418797227 399345436 332178147 501330608 39749273 692797534 857528555 610711163 734573045 883893856 116715795 741903187 108417066 964550038 688112460 222246188 948300763 318459821 857545555 597065742 883603175 167641332 502187163 948052245 853341571 942635400 431811203 985272581 154006578 585260350 501562990 285207544 575360367 190563920 432434074 570280342 151346665 17906285 72056873 534086952 958555433 203014683 940492500 150401243 149183497 772574414 739713562 290993432 843656180 314092751 724568422 468867914 446740354 868690390 932667556 382019026 554895329 394455166 92042855 225120574 62807180 38699617 315096571 814944252 855496860 203449173 444069092 329453306 128368063 199242736 439849768 751316376 719586071 291503125 332398390 789438465 514767883 970158065 472237641 705377371 440893833 338158372 14530550 101666543 144268933 93924079 609992293 853178794 261527446 720697087 275505693 490841425 441124417 313646383 88306520 379250659 299601054 796424805 910664039 144802252 254604458 222775995 388988574 514508942 146837532 568023937 683212558 246516171 104663575 875439673 680200107 860169714 415563131 989770976 436559590 378085436 881480072 666516606 432700730 83269125 101021311 374475497 241975337 554749283 990760004 326010604 111824031 645164760 364911867 179554494 146621160 656381105 148431981 717001746 127654281 779104720 192988693 798991324 649930280 405850160 448839097 195249328 697988725 343638204 249689588 636364094 258857868 972747533 353317635 223673154 362980816 938343939 101627622 647394681 523105885 556762386 823176905 810596623 549268273 835579001 711316324 463061034 789719679 332943708 3425889 204686424 88890127 113634495 466857745 178325309 965803602 355521755 543886903 603588324 236323149 406814489 617814547 379737894 193967819 314551562 657532369 965816025 857731784 656461362 868626572 871458892 149613167 565550541 866561045 869659549 805925968 884581523 726694685 978458717 352901983 676796644 507660045 513906795 699450439 565453970 300454094 589853888 770722446 671546130 88665126 506384436 853107022 339781078 824608225 140176801 580298941 451392130 274839768 561973670 396012588 923008003 18961561 223606278 483544321 918577506 25150741 170394023 990438415 4084326 97181646 239064331 124877238 939531718 743914779 111223954 376124620 887971772 280802049 635293115 765678956 577141481 49845065 516787772 192616373 504855707 955001476 802849388 162477431 95845141 47245729 492678147 613142390 21595056 344857127 341290551 869767482 416683148 980159881 552102334 923370300 938505090 736787947 775159207 211391913 232441322 963630826 434621239 858157081 699792119 97235472 346178352 271377985 981673624 138034494 373766556 461909501 86359907 364492263 897650224 111359336 514817018 27584257 548686200 991543200 697659073 748329202 117369115 834374929 445107614 75633907 485806917 525500240 106232770 33446166 466091397 861618663 509539627 188957589 619560992 175283811 660366779 7399344 445859309 97727557 696738888 584049058 874616438 32325879 82412927 813509570 549883716 570659762 148157165 439058378 55547435 970280244 182527696 577338974 686855588 459072697 658656530 233516627 178520227 852239600 450245728 892269830 478244401 987737890 918108244 100148597 179453546 572833487 3968231 332155208 911140704 416720050 424501180 760035091 221143562 220704491 298718651 46364098 219942837 627102781 796915013 27575158 100078570 545344352 971509651 813606061 703776533 168118287 941874633 740484370 927500828 980160142 432828458 309496950 411206956 745753035 251632818 852093833 189845969 132704124 493492840 366423507 385031959 529353213 44691824 919718172 710337675 45667424 613936063 703492519 972732834 269278746 568702983 473712337 51991987 468995105 450592076 778339606 19045612 92805425 369864570 711422344 769712928 352914549 310533454 794963726 217825386 680727404 113960067 509696661 965786608 447612217 156664396 299908657 520540371 997305928 759250191 194463110 10182284 26440251 775941196 390794840 892885831 389566588 892107447 332706061 395246387 462059071 843022499 562175524 878007145 191691635 296315150 485431706 133944199 504245755 171277863 919309463 779858088 765776154 430153636 444477170 379063061 128713788 652021004 439007988 350864239 472374882 169592590 867527999 381078049 395249760 944325668 85565096 784480783 652969277 406737399 761295632 832757295 90542896 757685558 915681389 226997141 79103972 373643213 306728691 191867290 594727601 708366691 125368789 381246862 76545278 731848742 383340023 334154333 645830591 24287535 862216142 962350695 80332281 652469285 903090041 64625519 912494304 266904496 151627176 662850512 385940716 553177526 253101028 303330276 635526000 823526266 794847336 16883168 527458149 715811263 647734650 829807850 844495497 65703644 582212572 951196225 753543071 102841203 206012505 820061458 420133967 801872140 346069268 718011157 11509960 234356802 702787193 650746805 31058784 415307355 486682206 930717214 362686869 637168628 65158170 795591036 574241151 240925097 279729147 761090289 867746270 232358010 833374475 357473160 19838757 367767857 859044921 69947517 370002381 981948650 191697415 51412494 56464750 609670300 743694375 194607884 948796712 433230904 290328562 733308143 442867393 250355387 82774435 853808249 520537733 301778665 732201173 222707077 384404799 249581303 441197655 749445834 145044348 437416705 96449188 98804183 647133284 125170126 76530108 660147339 785045617 792514170 728704896 285774179 311410219 735611959 222550647 361453806 264333064 549961867 255811623 982011284 913875048 621942780 856501516 199350546 705767813 431625105 897473561 409532095 281483414 420022519 258453421 734380565 609804017 186979456 914867509 413370050 900243648 563574308 572346454 172425995 399598005 8377713 889595209 116343372 688868480 467598149 451025390 15465553 685844037 614718719 511027099 865639903 448222840 49762775 248448657 360957091 325009666 153825719 666123808 197082881 500996742 977303845 33506721 785244288 772759985 418930376 896806937 705854866 508247602 391179019 391390627 9131342 698311376 140200404 599858786 329878729 520370484 364718508 645078302 706718226 856894023 132605538 656821978 370684916 155771439 999055846 590664797 594732571 677535744 957970453 358427399 476008030 694134348 88714484 537135748 743754844 343342063 936688635 86532444 251249183 738785612 288432626 857970500 602706872 301827532 774515319 693959648 457787349 363433155 427893105 512659769 682498436 736294830 385705859 950488220 89512341 266813465 888646648 15639606 275572883 493784966 447342130 603841962 187979550 269268528 881892614 209070028 714605584 162806129 141059054 948396453 340946933 709745166 85171781 326196529 861476110 446098479 465586025 60806026 747524547 514542206 232801369 601049746 548863291 116582008 563896317 138033772 912538113 252588245 241279259 194909158 971436334 48609095 251489505 875647009 676120600 529271256 646722583 257295295 677934309 69315837 608373913 94392041 954989537 820310595 212883389 810515052 661407482 918623078 493642961 795546876 467306804 267927055 575277 11860571 838677964 843884289 14272756 383718161 401856873 488469362 206960609 260563388 51279672 927076104 514073978 292285952 294251403 568061518 513001895 895585112 749964618 293555136 827534669 356220939 443239706 357023093 987504039 207405201 367926519 934731189 582998167 432588138 347977932 996458705 821557470 937929368 899721683 695482616 822562512 741572884 4296470 940922566 73645049 919588677 708421212 318519698 602192334 59290448 634543739 419926663 819575462 520027617 867794414 59498251 16509536 658378012 693339980 334158275 844231105 926836621 203463548 71082184 199505711 250350342 47841788 688668251 602016407 984830042 381008701 10645566 829510548 195605696 285364817 473786274 229742972 905851268 870675763 994320506 916628000 10388547 227331152 802628504 138106571 120743322 324049669 436222989 116304444 301564342 917948978 907613121 646741741 746416798 872817780 292361703 708396981 922786627 881537628 790325234 19661327 116351201 216865884 300981678 705488787 913178709 337333441 70000201 278158630 853880335 320957746 981001942 167731404 14154878 304061161 357264354 863529468 776047308 44281520 253667953 152243481 695793552 202731523 825825373 566786203 428840925 590808678 711212784 254337701 80162980 169409759 323985376 120385659 467972757 3655765 508843725 494002473 53394488 206160923 185275614 21428556 506218309 80554129 419821637 699265799 616154706 739569797 737964733 284206529 452979771 114457251 636481094 845043744 35536780 295956414 13726764 212662151 294979770 5002548 489056177 326244536 906278022 328437691 870036215 264163934 939882165 671325479 634151846 886097001 875579589 188559091 973062286 900034740 95046651 612669 512988653 413760047 252275220 630497583 213551128 208473497 42815154 719944478 62437315 194254959 316761204 755439302 53403720 145468968 262138572 81132943 890632822 626367926 938225512 397083246 476688425 694884520 265340230 8050894 787761503 885648676 619023908 298353865 255594740 792397161 316108436 782033133 31421343 958563865 859554129 19695143 757131277 83509227 567067780 256882894 281781047 28353927 662111900 539581079 90679687 153010535 31073028 178441800 295028775 295984070 625505186 242561777 779742553 201508012 255825832 727600318 218669477 263163032 393799784 749502207 95805113 212119086 120247799 860782714 85967877 507289933 554737781 821031292 291519143 776041712 892859891 952444246 573744974 194231841 866264812 36563938 479678438 94836785 27357648 941404869 628793116 559087730 657919402 555544890 320699329 565933380 990524962 225131588 97338675 334264313 374746047 846326117 235705767 454802880 23309689 491783954 350527104 986034108 514971473 300465894 720516011 958966713 174196814 540195527 801479472 802980577 328354293 280960939 543572761 389410358 830110203 815767622 806119625 529994735 754028033 157857025 576140930 348534104 234559582 725160727 881149955 13998829 998633514 403217382 744642500 290182022 910001720 636314622 825883027 410328473 185760089 275261858 477257543 810119177 990446315 662277991 807965612 989109370 404549146 356320374 148257516 476287535 195096891 71153616 199776852 875289158 412354946 799187295 234328091 740406085 763280277 911346091 420235330 69715306 981331751 272319280 285519407 617773287 349547119 488256516 804661923 986922521 391621544 279375510 119320910 241125783 592613752 360215189 327741071 663872756 50566648 208365949 733421856 732557709 552969307 520745548 859259392 968078201 505966920 397366146 946421162 125986779 3657758 658550264 318394326 981325456 493428138 31145546 710230371 547558438 60140817 467409174 698756066 418240496 802206665 824694864 167433128 877623437 774093930 903787378 123694641 720069479 788249722 867995011 176845170 248774553 622628237 864774128 541150105 849769970 997792344 14692829 300497638 630235338 421282749 370531001 459210003 694523030 118590057 515231725 878289732 821598074 943029846 920293182 370516276 108471807 489211336 226055151 904738967 592133697 570462607 487135871 649550543 924375950 36209793 502049974 98125508 711127253 294100259 663596065 38674073 906894992 906064619 351017075 303899458 456371469 628046959 503459593 886247472 677494384 434265202 717457848 883569831 596642278 207552975 30186113 481490573 133059866 610510632 881986467 554437743 609097846 145014711 437956762 754585781 32102875 413581415 297424 270694915 659588943 653640688 503268219 915890819 969207015 733427583 893970210 928423252 592943867 138912222 18497479 258084982 552498968 721393177 123863510 386777925 686304912 392223740 820198297 27586044 570832051 215832569 399216567 718110789 706895834 512046235 509454466 693717552 822129966 96701891 634606675 538811182 859538272 618373762 635752027 392829347 924677573 377053122 186322031 442538750 14607472 20221619 500615910 129845283 517165017 11158820 913981938 375305715 875199853 832967875 576210454 953636164 753191182 21564162 476144407 884311161 381242971 398337004 784742662 187246619 407080837 52930580 986163665 345596990 468876404 34106495 766145876 449963260 490169914 549914754 574605081 838051838 964634984 754229789 851407995 878337551 934500033 126820149 510560241 138441286 996057092 944950766 717628995 410363252 3678242 215859841 296631062 68244490 557197142 50868542 189328543 320150952 498220705 705641732 881399540 320530870 91446403 964782971 682636916 724990577 705038222 940574042 487842925 975671169 156966171 16662268 71509203 800051966 577623277 450003536 410707193 662378769 678582107 545932878 617713300 981318683 443565963 213933212 751509675 399995894 537808013 819491242 246167122 460972199 345532696 625027653 758481153 403493780 184668091 776911608 712725433 609725734 365147481 47709634 79977972 732403853 837490650 312296315 930005484 39198917 545796717 211067864 258906402 36013574 16297402 320139482 460762209 836446160 326326674 983250033 587559058 614004269 109267150 411986062 10178439 724519517 367982645 714244924 557204761 518512604 185029048 695043190 780388854 758117057 608335382 556256153 258244688 143190746 563161753 26592826 653058674 207291082 67084493 374067605 814761631 109755372 227427173 722882032 617896944 746800423 381094561 421801524 532075463 852807165 398708714 12941674 296380222 301730959 841530714 625200631 145113934 52582709 589840930 624611580 53127474 803307088 928444530 330671958 178243449 604861436 469515516 149291721 181074196 462512617 192815598 898614655 130578759 276219427 397329387 857405375 336088271 103250359 857401972 529771506 42827407 402917597 428662271 411516611 737655447 668768537 448408432 631104668 332366765 481812083 673891165 99090521 355610255 543297498 747919085 166473042 603771595 643080695 835301237 919259311 897607137 572193322 600640868 169277438 418540033 371020968 792314875 87395554 530802484 543552013 898357728 106462549 257799970 649410039 739874707 642801237 199170796 475747542 147211264 271943039 268775023 496940119 687381449 955249474 884208194 974719419 472397457 970874527 548016934 407764817 664971425 305908395 247726270 367749007 136462608 478778373 288276809 862144477 117520115 287510719 603571224 321427037 584609231 851848854 166219510 384537460 128760199 126432549 796966845 287149851 949702160 866649291 790030392 761198702 469714529 744316042 732922373 441128859 805639664 771645274 744270091 818060464 235866503 544803751 759528451 134825415 922518853 921968914 547607561 424411067 794426015 326023000 538536448 408286262 67251408 718439407 897692896 674235058 360422364 64777818 265718616 301779877 326716795 688112525 262037771 388069005 946801722 251672542 278566373 287354704 109838087 865114310 719227590 151159484 810025958 802148140 393442976 851379639 168783195 756337555 807187586 789705764 696073269 257233202 708773328 339393078 378549895 455717748 50519564 326737296 272679504 398101731 368411404 507303185 457142390 256007557 540759120 411510153 119497438 586345746 995167598 237381160 357886462 121261486 35086351 395908935 784451036 746424180 23550102 95782397 619634680 454027258 240567367 630561866 853679933 168339559 207127641 509954099 116341781 707532235 29916039 964427406 459703174 308916816 669556197 247964904 607697084 163352229 951732363 971106550 971644664 914127390 146672601 854280449 182975716 410509592 268655131 200086221 228860043 240331014 247546410 943672384 90984429 592696974 975141204 818543190 534964768 421729072 717666595 253729304 920852114 611283244 3141930 303680870 396341045 84374668 483248236 354081393 251808022 856454961 90040604 248151387 607918105 433164119 872389775 468181682 490949047 437497014 181035263 179293756 203764988 434038096 82641122 430787213 499052544 482335108 613510725 992955039 864351931 515066584 943549580 788676502 811430048 950462691 809104426 622850287 486628270 5387865 54493225 666300130 337242560 33991445 97558904 364450658 317901688 652194051 688138468 469795842 594726262 501877226 93571518 75544491 360276109 850089518 462089432 801668154 744908410 126409753 961026537 382295430 590963925 156234885 388896955 542472818 801607474 249045692 973209325 777049896 469457855 167861278 545738648 418998189 217650265 40150416 525705416 138670454 426017186 349015221 75491369 425505302 847079158 338967913 308498998 670068200 16719984 25122077 768191698 673910674 795168566 861583270 205528334 273818302 478239387 379903892 705043644 93747754 793641064 185034321 226939473 598661167 418120091 177939484 814749286 557858440 138219108 597468784 332116812 348118240 280124181 508067791 596796558 523572977 288753573 248131478 290305528 195199148 149093913 41449047 207855250 93223875 412421262 327032793 873303808 613458607 366184551 826374971 908733884 330940803 861063144 200444299 108231571 61122728 461997961 418553202 843166031 895081341 326607131 435065461 867661008 913551685 929621389 387031206 428699245 817258243 747416662 706377943 451357511 514019102 131004338 585625919 995902744 944253242 463627039 818387980 51999648 198229564 896383816 702966892 271277843 87168132 25211760 473333432 898131999 582303643 712161320 570377325 274728141 519871820 790870423 588603855 723150998 710121589 399004664 576254203 900060454 666227092 376663258 567762250 15967486 744462028 167387482 999941528 738403740 674938148 183939342 507480660 69676649 323218516 595893900 291116989 813363393 436802600 62585786 259460339 582278484 835701838 888512096 371869164 361076784 961503786 345625229 17963487 347167532 169879524 952628044 11381431 237799901 693536604 64744211 230617585 603773314 46421988 3754487 246868777 252878259 15007954 98119591 645433810 364253294 287486066 120958875 618828594 15293059 54074097 787863815 351585026 708815692 356409158 293914052 713113832 768443835 219182279 824243229 421010287 956175187 116374811 232488564 576675223 733644120 113870007 280768681 214964792 459487198 171294762 826213625 172015797 962738982 672663821 474022756 880283461 190938699 408788152 833297451 685135602 164309940 393460352 754279936 434318763 106878271 917795263 384271998 946200083 306776837 479839421 87358220 337856457 236599518 62407083 133056908 652308785 593442796 749406973 428910662 594788749 102908157 595841869 687127456 910835855 185456945 76709757 864550716 115271010 347730901 235544348 567476832 341771409 805654378 928302465 21193063 356844196 702050357 889587983 62605443 682809258 743543338 740136494 384900552 745281629 14165471 255854121 565233797 25046817 720288679 565784344 47825524 160536866 200787937 97728518 96936438 839334783 699409239 590533660 658748743 853413521 303831159 827332198 472872126 235148816 913588627 583698107 623418312 82283363 495447458 313491491 945481222 505935656 889073835 335121970 722824584 754046223 134114432 505690838 439938549 434300708 563779767 963781455 372705597 763992772 337802497 526802460 258990626 371592210 68804444 631143420 224819299 846539440 433893763 730726775 927422660 967761598 582541548 395916835 895924555 745672264 72239806 768259701 398688316 870547192 918441833 624645232 141145090 429739301 57225036 433783857 810525961 7959164 834337433 804993786 886270715 243808267 625796611 282563670 610554964 844237979 989992077 298555077 142000398 56812923 321730736 526126293 986673282 495888346 625040894 577823740 969570582 989812956 915449310 115948274 729251642 153855249 687706111 542348013 320374956 159975515 759095299 83054485 377879865 120484650 692264324 223080498 208043001 444448007 54565774 41586710 495202172 537205182 161437697 467910351 678369125 784026947 262550322 207195985 731703375 463505136 754759926 280085528 986640897 372476883 495704010 775787175 410810784 647508081 9571559 686516805 330906405 592488001 432301505 990385094 84739134 670444487 92410760 831803612 916887664 626785809 310324876 422187749 479097296 523315691 320516852 240352756 19236917 742064666 377945229 647974187 791680648 240266153 457109044 420099638 726357019 196192006 362590672 825251746 663757785 90220926 76190543 384132289 773387173 626482122 609883026 783194277 737015805 628306459 717817974 874726113 997864279 712917810 703081623 32964850 913597287 315778808 378355201 724131980 972164717 675540932 236967766 135020115 114018463 434932382 858334256 245978263 147612233 557924097 355810917 336366442 286112510 316971344 212960900 908784866 175132431 517903235 498677633 949488852 721637950 228394611 498526254 763529731 498642185 89727112 560874967 509086275 777664012 465661765 605042555 764164399 786857272 354103656 723102547 679132432 980225229 107933062 749062837 727641359 530516229 295073389 842998462 306275739 957167823 141697910 872585003 271493533 801538727 896644473 151272172 625380240 350935882 864174865 446642393 635633374 682029061 226190530 509635866 103695983 347688469 178719384 604146088 638858405 17908670 402510088 510825504 30914415 13722065 806146678 998759354 563552229 123955303 239554501 506320327 744660644 930220403 890735004 678404182 871832938 352364994 116365236 388269742 114847139 624050314 851495884 454261620 548082209 713873009 748005488 520931317 701845690 28834648 865308185 793325807 167787859 224754205 241950622 186052535 928664137 610941034 145459542 947629549 464331993 395506622 948417731 452517426 524440446 180125738 103728562 777428636 816852333 611777077 125264745 702423387 815709861 826998759 787695554 649114067 638263104 712829619 674324843 789200051 133771957 413372393 66693422 96908162 403107268 273602267 60269618 816937574 928483084 885916021 253814304 472419990 788375188 457808715 68678244 299983370 229133922 311275013 129751129 706301252 845071741 870904518 781264383 127532041 725432717 500025933 380167040 420877831 486358987 466528570 130095794 994676346 89968088 920594877 146637793 799599386 903408062 912361181 588592400 63789273 360194693 962753653 349212428 412877519 761323126 515437595 686740424 101761414 267219039 538533876 586158 843120357 578212519 284302630 71456391 651616542 598092345 652001242 910800347 256953346 228462543 323950390 76819447 984381877 455980447 343001876 965477444 57651845 884127681 785099945 678474318 810020953 649506006 520242795 581461513 522443123 210778064 199457513 560240720 540742985 546853651 68935052 122428370 319874834 965180783 727750821 509386875 916115470 385280961 586684107 138324618 83133863 7250351 349804782 633067990 890416462 368326136 602742912 279031171 702840697 851632343 474742029 263035280 742484779 548232231 600409595 751094372 536162537 851550875 619427971 219172709 599751287 900890107 735387520 598786808 819904160 837438399 559373165 91606393 221970128 365085024 725667301 494867707 48708905 223511473 245448191 933123781 515807022 589742769 579070565 887482740 42154482 292728807 32646576 207287893 820565603 884725700 563330108 741957046 426412791 713509413 420496628 435085442 963346785 743302397 789371881 921018517 461198173 773146990 798214448 730750783 394905623 438334139 880427128 364160748 24210940 689790379 55347152 571935736 291808758 97591909 828219835 331861052 341622681 368281204 947454623 294381279 770138492 570070987 335720220 314333553 512866132 336938887 310245056 864328792 846454379 251120054 658996826 637919347 915750280 838658206 130929034 818144010 620177624 903862573 654170041 243971453 580939771 446533432 920594736 780231015 211167685 2045875 675397010 830800276 986603171 542082775 373140726 489571776 436499383 124800979 377951604 965092391 53809313 395309590 929826824 553452932 681355375 683266243 999134099 835111049 470994193 532435871 957309693 277994917 920274504 308029875 457915213 744781714 832973094 507880298 48878919 721760977 251845664 178920274 223255151 797990321 45528589 77151755 705104183 342558742 399338554 915228785 746076572 338064670 866661361 349358356 285058531 855126829 118152834 105159221 500901661 481374070 519244758 589845891 171787460 498650746 246129999 607042006 782494092 28763974 41159842 434671182 226935934 379390955 80482028 855561593 827895635 8055839 62686130 266965754 113261792 884008955 961113955 398659225 308953251 205749781 547406737 240271143 300119434 610904304 865439040 27878026 407305484 452853839 955199950 838917530 309509297 808679138 81326946 99083532 392206647 219389895 946934870 538699967 589902510 158001313 365287553 354497285 345186271 317550808 73820679 42517235 272230023 761696932 305511666 747262762 210106082 786536544 768139638 581778426 421401758 284786266 220026401 800180501 496982070 837570589 208403638 280706272 311187187 108761236 622543775 221427865 245478598 909498767 345977512 848055757 941281881 592950384 324347597 677442796 913060349 106899751 212809333 852284422 774390210 401760284 91462783 642585855 267132588 244051816 181574317 290669043 796986278 855478025 381051435 856341773 682826026 38467344 717675396 703524452 37634081 287208733 401602642 54783457 579504968 812484094 799980587 850930252 577822957 239714809 674510129 797136156 959576083 296943695 213288421 786017151 747670729 922620223 952771812 652151516 545094362 49427080 199900400 919314533 811353600 511693373 784952512 706518308 79301263 392820055 28032366 294282263 478377264 598052893 444629975 277412113 340481650 744386441 355245320 451872016 144864948 493430116 417283080 416000707 316925111 795153984 524133873 323794448 315745817 187085499 348285871 111848902 714503431 89592767 633567924 487490767 152370723 444912855 165468314 242904263 471684502 690363475 287102709 576614080 156474931 355680863 71439162 172097862 717735596 714482128 799282165 596890642 185412617 70020017 620828516 183047822 312775751 94096520 634292145 78832542 398364381 66935418 873709336 868937307 459703310 219457963 591394391 124651953 25190609 448390447 444353142 781340795 210712841 848355948 474808216 391581682 288839706 705665327 186020427 515109398 863196033 641526937 951429109 662782489 664331194 464807836 140801856 744073085 969794090 580969195 903012651 98457912 482212595 930272408 745246384 618733540 848304056 968202532 883858052 342183767 760939544 104672985 701011903 19232227 108507487 299835598 258801381 479975911 593648951 448845533 849369404 300479448 579870275 208115402 946257819 179553030 550727566 614354068 171213102 212093924 902339436 422432667 20749675 279744305 226824057 806007613 588226477 989148530 250080598 457685666 966781332 482408111 781151283 620795236 471656198 956145987 660854747 772238918 683998858 781272822 794943109 990754728 421546032 205894240 309984084 857458980 192394417 355151262 538667784 790639265 134134036 860961817 395897991 827150206 155059367 446731227 111513369 440808097 356823646 774578565 173979550 995715241 803503171 255998696 312766620 739918136 955905197 513390840 710870466 214830549 959933336 390082192 370270003 662063508 298853230 536653308 995128715 241204968 370252079 71971701 37990562 293796664 617528294 844003056 665037568 805503238 672613392 815508304 657924857 522638508 715322567 690073210 377576209 632812722 543000573 569089806 571253409 876717300 483734079 486272043 523223774 216531526 476002862 960224252 712785899 145943665 362194674 719820448 924238877 687573000 68522154 531038680 973200038 166167321 949980971 182735460 870810313 420383519 517086554 520006812 68546283 156899024 132445397 120649720 409101500 213975629 93645132 407022640 582350305 792719767 748080337 955365074 170161602 324338300 203337011 628857575 384136740 93361396 101030748 710337825 206630858 811129334 243589475 333227431 823187356 204168331 780934238 251385205 795980177 518910850 50470856 906859103 267456100 248190211 366165141 16607136 854276705 265441332 734799298 966722056 619994415 934330418 971175297 903196248 145355711 798891224 759564631 688529494 974728151 462264350 569590762 30579414 397609577 775823324 348324324 965517659 886604896 661807509 523622301 757649916 691478639 348453353 768919872 52462043 498663538 224442440 500321376 6219943 624072249 809111462 512794217 432881415 812301541 913040400 349648776 996191185 217355982 298086054 211785823 925428652 709272633 32223621 125352721 596788611 82636355 820366673 243898755 825138055 171503116 49454615 157148353 699821563 923348582 177407857 400404544 631859127 831505587 366060393 884171959 453899221 336429859 532107586 426230900 891677173 195267679 725730474 210271687 791454718 133304572 410104817 568054667 366856766 876134371 541571232 322081276 542651822 107943894 440749894 218264263 866229206 497282782 446736791 843307817 967092982 528408533 678351007 192362850 755579316 611716907 704331670 550521830 172584104 632727323 822534645 743137593 471329382 236002126 496851188 76603634 164794042 914134771 445892075 237896567 648359959 450515382 109466456 30864022 699311499 897585487 41019946 130478463 302258273 204543233 798364472 121528878 412305965 617032871 705740913 823373157 878640469 698756997 787773672 637508056 403089297 757121656 860518021 637087538 718384538 696202491 509668550 780099575 821574036 335508921 641285846 977441147 38172664 346658640 561453478 735749237 136456543 86202240 903718830 628322334 262485388 472902978 896609877 473791699 947795518 764455725 756576957 568536375 894153673 338482939 325007348 283594992 759462569 993506843 298939601 346259580 10826216 681132068 59419466 809755459 9528654 977869396 55947726 572519303 372897033 923129716 406394625 138342483 372245063 822267274 924012158 285054017 141823557 778198823 973184032 972977365 376582992 356893989 207402059 587309814 937315472 909856440 522797661 375487967 662911200 942229801 116099941 95714144 609876198 370790006 475318427 186366425 150257176 334103551 873332263 898567477 118195310 237343184 315024604 746630036 656709694 153727740 456899920 135246249 857899228 269479380 110491714 224210883 538156063 540270561 582773455 641301437 456184001 62382425 90878736 144647705 514061281 818490837 74095702 566299015 184100608 174408847 33340777 673513116 516660189 281811032 186403393 140708396 779467183 242962300 154531960 695453097 138026921 306874740 67980007 348361163 486290351 164339546 723245765 937160736 980098038 559565063 656104811 552570373 682817523 458936300 987269323 142826495 446905085 20024333 253040039 915623243 663075232 627556024 277511460 352979756 505491826 704268279 966405699 274660049 441862467 803790786 241717696 166310668 489345837 851019086 729009766 921787306 639011980 21418495 370508483 143103525 743466074 893586386 880476692 940740939 240523095 87185130 249637045 282733735 588542447 841633674 899196885 399949282 750117997 384652549 37496482 76758426 83650732 735140699 49758285 36969808 268362162 482353545 867521561 990116529 884850090 458235272 367904421 577288905 284432027 774034073 720394462 409492489 971757661 371984343 558019200 147957826 410745867 70989808 807232604 352180668 472249441 835203976 65618443 852866990 268220917 435821774 859936108 750565729 205449221 78181403 653264718 40783244 173269448 421278585 969104775 186061666 822612654 670984680 214639611 430677319 649917397 984277921 398691111 371882759 306838692 73544506 581471007 146072185 591663730 997738141 417076602 30887922 601699435 531604501 359122708 797097212 583764635 279634528 937483599 680440193 848724433 840755406 82696041 391161561 78085329 299797531 136871679 689063928 861138345 384043250 451178586 162829141 18147903 483476812 93617452 300868196 944901061 779548004 590608991 751925514 692933479 233979254 22221131 719452511 336811397 538470825 638009500 51623944 723803136 972289778 388426067 500860597 87893176 61866411 118512834 301606027 466349194 112593899 209390123 119677151 405021131 602347816 166247529 894704724 14363051 771917625 389039878 265717196 383393959 276706386 524778859 769655774 697621100 542701866 270401398 234226088 873585381 508509003 286270260 965667042 699346559 733538455 514442387 775777482 220353517 697809261 896573972 310654828 992149260 66700665 884679695 795229523 859270617 130267381 729964526 926699549 426274450 909511716 632310954 720383910 589625678 766101335 948672878 651036252 417962148 34525232 328775927 41902182 532624825 584876130 324972834 963568861 606078781 923997649 4001279 773414806 704830655 16314018 791795790 452206940 53011636 659361356 247899110 710234139 971636197 632134493 638324066 226066508 600498443 146936225 993532840 541097444 679352822 771258095 196051001 489960643 86069273 78455671 649107931 855828641 238943880 509001789 627471273 839419473 781331447 448658854 827399786 792806833 279212241 166795515 305237595 347490480 704060898 518450573 878347656 673993383 19630209 857777754 33767998 581252650 884103431 751216040 296048753 450108165 134468091 392045487 91955476 937480330 48821885 765401675 200998164 403792491 100551527 442104658 711327361 381555163 538906223 663132547 22280624 526475861 666857777 572131680 422543662 26467676 129334190 845023692 930774224 637605634 843918498 286845580 331054223 668110100 862471140 680744167 283870942 584928853 274105669 346956630 643313123 996327591 681874467 864335006 961159443 691841378 525846056 493939676 353565147 594540734 588908796 241751294 795139330 573959461 383405214 649023560 142446823 161317583 608532461 530797188 605735536 890435838 273515547 750979807 277007372 625131040 441937877 670402768 881507243 897632565 121936435 167927603 461609933 892005587 690981281 800135270 708416873 744614203 410406467 251404379 661940111 883370461 106226725 103241385 982404865 765789074 38877487 536396984 136812448 634749354 117188281 124874310 175436884 85183592 403409323 194590777 296076522 218579932 957435316 737723905 646913969 509159774 753734076 239350448 208086304 2857121 758658923 26397494 299525654 543666485 915107430 142070903 20007043 201932967 146973675 432222984 417895167 606029653 899261579 868403535 440183605 82679966 511095319 220963361 603233922 222924057 663866750 814687846 585698110 659342727 43869682 102435881 524485677 747195487 986544807 286875018 752230112 249199090 479642534 136734977 697647969 712208323 271799556 850095058 18706633 671202226 483143763 448491377 495273681 108977521 859031918 51684401 868849749 665208187 182133272 56182899 480453022 430117728 934182806 411365916 508966568 27851260 954927727 291897140 180130452 834714791 249498555 619693556 900320070 42780487 387634887 38303159 236425327 901484569 607442621 262995811 263422641 414805919 346414266 620564391 281805210 903431112 701921429 663719276 417096638 665751493 47876442 211543606 191056190 961476647 421442485 1008012 940407817 23678748 391284208 425438439 734623587 360473538 850723140 542157603 157379405 534653347 689097727 979231746 563590250 288927141 281810524 63058360 797805984 845050962 633919241 254391726 455698256 890790741 271162403 840215013 709416795 592543035 977952163 987945423 451457384 234694147 738950229 702452344 638043913 645366845 819866072 45121328 607457963 145672750 308138155 534825534 562019171 224500539 794324623 675533498 230884916 270548667 757379131 525822969 488081155 639546135 984179073 801853690 667621763 931115337 312197497 872402036 535128701 118276530 164546373 183676183 224085037 255231472 313297489 286983693 788503284 531746126 580004619 248326427 387877231 832609352 814007450 777944442 911998202 463475055 169285732 779540997 610803488 203354611 971885217 880232346 5570233 714842923 916910395 195971983 421712685 996565729 781139909 715322993 409081979 322303148 502443220 836817344 551679408 307229316 62836638 481924058 91281561 742608970 533559127 369228387 325442244 873567625 580906317 626374175 516687012 412729078 985963156 410008105 666653970 918187560 50032406 848598893 279625217 734506567 635102378 499958151 298349174 444126920 84194755 778993705 452438164 276403264 949879814 482299849 133480460 986153755 896317957 515285874 296293438 262982280 527452491 403213574 410586974 51209694 246892989 539363965 643196142 578019753 91471679 30947820 303962710 879542604 646018299 309224097 148351799 340848663 302467393 844491724 597469645 992698398 420914125 794099608 395945528 972441517 211965512 518729631 852466830 692682880 103666246 777875366 169844790 982324187 494096393 4795860 208787230 577453128 530113492 899435863 958155677 804467873 921120970 786792388 90191134 222603690 898688303 477435963 421136181 493328396 832989115 891225269 320106747 540399975 441141079 68786962 550063756 946822583 940937159 171839687 428276269 352537918 884937438 322704712 112841324 395142239 812690610 445935543 509376142 456501020 932592161 769701972 802940839 424637681 962535307 468396702 367450423 908226034 947916058 917929898 657935818 303516459 379580865 602466414 156542538 398957889 656544410 258216177 649828587 603127664 836482866 25169760 809465616 712694844 426832888 152214146 41777997 261565507 319804479 264081667 634799540 420116162 369046544 927660996 654301646 492759230 806966485 951120318 793234251 503446124 106966347 332961619 892597330 690513055 66062445 960748736 893997120 266464581 950223956 151813332 275848211 557804505 768505309 940184311 215503322 900838711 41384704 385902606 287779783 471537040 987816755 452628407 112912931 493385026 351234075 980156521 127810311 161084214 328650560 418591673 988396259 301855715 184114490 144319576 206670520 699089723 622662628 356750765 838569876 90177968 661687991 135580486 62128161 444273843 148343046 748257895 799230636 963354339 138480942 637867267 689377088 523172875 498815678 398475990 716161194 209161092 191823055 665940363 710227932 743037290 987068753 336607187 880332054 745405013 833319835 805991440 163074404 613283603 993965233 688338894 859246363 100014037 619600581 939084683 176194823 400925881 406468398 995118664 974894545 20178021 356700574 773868436 314095158 374162631 305329533 545669790 649881584 896684679 662377629 510458475 250622812 909580120 261095718 110150985 965867772 965587902 281733664 311517783 626399920 17371216 834209141 820164624 147365859 335487855 593258373 294370288 639216943 473986627 529530880 818984237 916566533 816274753 476141139 648285337 233462783 755217356 216630114 390315921 278275221 135169282 8194908 708497668 715677932 601584968 699524173 524361274 987466675 849058701 974301902 681734846 214779367 233673502 373341548 489628139 388574994 940561970 583465385 125219377 229132053 27136652 501279181 798099649 575966765 112381048 907236250 120248992 688598479 193298095 396131106 869705558 713761693 58328335 932647795 883320422 764837021 184577875 207841799 951708283 808706449 880017469 817594906 903924676 698168566 739507029 145391382 676155023 615258439 590894158 799588073 527985440 993492572 616388724 775524803 766480861 538261503 755601746 621912376 810991863 923232924 76504766 783669281 966250547 481259604 494627040 27628606 450430604 398682832 544132087 258937099 285124155 564257142 806181341 545826291 983054270 181911671 449677305 616350653 325044400 239163075 561869922 858341899 594779641 13645530 309928503 422339275 517823898 366029944 541614918 788211606 549106970 101600038 682969249 142219929 708337923 456963662 952466051 413707618 315237321 687926509 702494997 610385607 700618528 816650411 204769272 809446744 884491609 252041106 29739688 344761692 433341189 783224620 341658341 55766762 308824790 264060695 183247457 143360451 49702021 686444405 48256234 331711910 146398612 970652624 892502559 62773509 364535315 766988937 960573035 699215737 758046901 542314761 660154045 337850004 156068727 179196409 172284191 908603281 60926346 614078368 314862464 868790026 202012831 918103126 845435558 935301774 332633035 442189591 103938976 536044417 817512508 474020137 29608103 736413725 174071638 729969354 933069631 806766262 733177965 310542014 49099957 599270046 44097950 78881886 338418810 296052213 247732859 279328259 617194594 40742809 738753710 304839742 212104572 366177022 973193026 422339830 120917925 171333046 173682792 508607220 911311745 245524528 703149961 507463761 564680039 282670555 930873572 730373562 515132743 235057017 747614795 844883305 218372177 34854467 857406189 697638421 236055354 399935499 30253845 406211451 955428034 645736643 841060972 646165767 46854619 478500169 320053507 283138934 149821844 633593858 903285169 778867640 449190706 3486303 293608134 474503034 980592508 401843053 894069814 466574483 94931531 115418270 498793635 806236580 879321507 312429969 129705654 663564793 678527226 968988208 327297766 912886014 125643572 898944638 27171342 143907783 865194435 98774166 889256792 921442723 727966345 332292788 579919276 171828134 975203711 7530924 35554421 507269205 466790744 355663452 604090752 990500747 99745608 559366199 829677840 73256887 525760197 815695777 136010374 456989086 773682757 144958907 315579400 923770394 708720709 75704179 97281271 87032413 766321888 461946464 719858969 797883323 741444839 931434738 917669878 103597975 663631715 909263026 612156193 688167411 920436274 996675352 824706053 953743885 237351328 816607662 744062125 47011229 787285774 650533160 937749312 413394332 868163305 381795552 785191822 134738770 893991851 153134831 270467717 443188691 736894189 426877289 954976626 64845969 105535886 78745636 643537422 610457272 412729468 938681952 424243622 449587159 204237145 846774957 935803700 339437770 882516420 895641352 733002736 907167595 274814480 892433766 639498126 571795970 873834210 978494015 99904735 162775099 79597159 191468756 216998873 940308719 74874192 575199482 881472006 963278708 356015334 92772678 252837695 171170262 411268536 554263585 297227155 409750357 130282525 48612852 334603702 144319856 971922164 413314413 696485156 981081962 354839535 111910630 141733140 847650176 195156236 787281998 917208684 684598264 628053322 299509928 784587744 162522107 392282743 546070442 66665138 425788330 947439575 146152181 616805748 771328405 465706696 717655912 150438840 465714821 909897516 712991151 940229172 359317675 202563178 182154326 771097953 363557745 206270887 744572471 997861845 48845240 256722868 840634672 176905095 970097588 711344901 889076881 69476507 284573382 6945404 907160205 535219845 130032738 503637313 496357233 732842340 70968044 977532481 223449481 604128268 406976183 328572488 327058343 32296325 461320722 699111915 698809182 913630468 60498555 610987776 952381372 921648929 849493203 501474297 898704818 63430236 788882288 458159512 872941425 293897796 926732063 748698379 165308305 44203863 364163064 890680584 905497078 176248868 882990207 989733956 379552269 137601777 738059714 428533227 374307128 186389235 838798415 445084750 546309370 480284590 492062831 416149184 809013937 388650141 660624378 6722762 489992985 608177426 829317469 338884568 332768733 965902826 186927532 383853926 360428612 498972486 725683440 757477444 578741138 64045905 165083081 896514320 776940598 120274706 796266478 384520107 657647277 765332723 47778837 333238357 604562776 348580444 48242688 571907639 340731025 558574757 646393530 522346122 311419683 974661788 81445094 489084754 567767276 908093974 822613437 707306660 427468356 454287630 573466530 878174749 839180610 267311493 687219814 27620778 537134260 752899654 659685154 173459523 650904059 731039450 111127369 267578099 458085132 238443500 275338114 352846052 629523006 652421511 599231334 546130007 282962704 770743420 195808161 241521446 176368826 596349967 51238561 528290140 480666667 187845035 844346912 497080326 948027038 412246204 727904257 337515034 482640372 561704057 994963527 755036858 70334450 42050659 33909050 538947839 98249204 23770325 566369827 190091169 514080311 280030591 158001588 440160775 916768089 636674213 26310502 675934276 220445438 890870317 887531994 896415677 543799265 230164067 232244237 714556864 933366583 426586440 665663822 551414137 934329288 199846649 907382797 341526183 186815480 801653164 563749752 792028656 320494435 801747369 369854939 43971582 934416621 174060029 610124165 724228171 820117511 602753964 878797007 191408701 756256346 844155524 198307167 672616475 358592914 165500708 412480580 544321244 91331462 747640808 424767623 421447044 977447085 863833033 451226309 537087562 433868836 927761965 437325134 171304172 766971733 165766300 888809533 162696027 241009641 17209330 125569921 135983719 105731078 718126653 670479476 779236455 73156247 593704825 688197241 832066585 702284882 757686261 893111920 43586056 87502390 349874963 156846239 289773030 445639237 94977432 511456288 907948626 148976469 20241122 640465944 336783039 274174471 660279307 956754472 943655271 533223519 395195672 958579544 847882454 147831768 697843167 886197621 679461160 609584464 497856727 182594580 139228345 594818503 940724154 6228238 858697289 249510829 665152683 650102280 945107464 903266645 799174444 812681332 446814507 525376500 66028210 691578720 100540891 117284272 718511424 416884690 836178499 302660042 234755853 511617094 607699656 962142567 309314316 992837035 985053688 542644991 255097260 194231052 361019481 384950109 315515824 627592998 48133478 396825868 234719235 507029839 293715182 782591740 288116610 500847457 540582489 936879197 68771147 180796827 865971903 804796218 737299285 344626354 857314015 403470772 339371237 907183585 27953212 808119814 503556802 758160588 497531022 744521892 84076439 826604259 747286262 469704620 131996694 311635078 550335078 156836017 88911776 517389525 455998739 613744092 710545465 40395958 858995135 153749290 357909834 293207651 875301895 634774486 3214189 884562321 230107952 185064359 795325299 488354769 352419047 879404277 911867259 670175963 369472514 567097453 290484146 704964208 572990616 536721348 588785576 99028293 430626475 800158577 599884247 30550750 852184340 749592597 131417845 591859524 111464033 917995793 807421885 195571556 926298794 934075386 458956398 738867316 316329821 828598551 472261648 453586428 911822157 98181459 73324405 374797199 891009481 888134915 811561001 84004550 933531161 946341432 822435381 754636042 144720581 163348067 400650903 508336039 250238820 203313702 641517927 979838992 701296826 501649311 375984667 199722933 148705326 951217847 716709875 524551329 845329178 280950765 401680723 393371529 596189712 691823377 621553140 447975155 12457168 687001584 973947483 566917601 491973960 783474891 876116237 800565225 350047557 750413659 513407253 314875676 696881307 637500187 982938721 343188480 630656836 803299969 752980922 539304431 637796218 988305933 173678597 488951108 889566709 587614051 897638452 708637220 16908265 219261264 759526503 16156021 444939725 882104476 243598448 893102057 567921564 372287172 118383942 208874352 756031785 25393226 6701456 381734482 413152556 740845548 768552679 21258431 746712528 360275842 814183986 592724509 407903825 106794232 78918186 166467067 959304793 12262043 763608154 483936847 589708580 574073025 641735507 322814678 563218811 296728449 257641103 528246518 594479821 700686646 564331911 902782516 46391765 699984554 157595326 184951861 348183095 273346775 955488284 896473407 616188748 90135876 140852539 809260892 321440832 202011832 297331108 139799953 720950492 813566492 119859063 183225832 476784600 373819191 534228883 804170824 190707458 384771325 206314521 380178083 456769232 774869617 12459673 336311199 706659377 929421319 530857330 408639152 519988889 67134323 284379103 278105864 949620982 973124110 512635597 857829330 978744203 881566172 966116299 892724686 272567527 102015185 242246824 525738110 891052825 674835335 392178372 641874723 780488692 452221852 691160366 939446411 370193576 275093230 960822790 295609506 786978412 659723082 442798413 274169658 690708977 927918500 202980753 27332296 117010572 484044388 450506157 605079574 493952191 104769030 689844121 487623303 417042349 420050125 392706015 573069566 928443806 960315757 991862968 136058862 255799115 986819819 319952926 120357522 999659011 696747943 179335249 109995286 944563129 719928247 159366250 459905694 748283486 814725897 489387852 825515488 814186363 591415360 468785433 898897656 744872721 772551811 924722394 636727368 101849331 760689764 876881191 588935148 437488708 444840774 952894328 594745178 567818242 710016054 791631755 230554918 761860071 193248632 284166634 183683862 653141723 417416091 267537890 586771705 46338638 902118966 585931589 707366985 963543765 36284198 490237960 947474162 852189456 556448053 236104018 73561657 949232074 496867859 734488605 195312734 695546115 298391772 488682486 551310831 963738447 482660479 434769939 486045574 128858442 884721989 11092019 994428056 134323019 721890395 288742106 77758514 324898909 209703044 264091256 291870632 452635895 490378542 408936172 694128397 544028268 853708834 158195507 363570702 847600435 299830213 798744706 681983181 712689909 573940086 927133709 149179324 959888162 339286701 961223710 33142640 947936451 185169427 491818534 710938404 761566716 787023171 564436544 319297947 959648528 103132308 795974382 392365999 938483636 714660441 917297324 378759993 832991318 245013062 516224976 214669085 479874999 149338380 187666134 549706680 718001367 925286429 689553082 887405259 822092190 597316359 241451124 526861282 458112782 451251444 228639304 370088474 426213059 472664386 230740013 12120185 288186470 596726829 180206143 565319016 575295165 335503452 841701092 939740501 27880288 424881987 29209922 329843144 11992646 943131996 502867160 701418333 202764044 961519218 617594204 467338525 488686743 979802405 99232604 551741468 524917131 953825004 469837679 566085171 897792791 691382319 553869564 403026564 638174217 172597569 529750956 900148121 416522129 582214586 505167240 226768260 954134085 215782834 165942867 389808427 422643221 621437084 549021519 517350910 825574356 494713796 850913262 906080297 656168626 917544692 648764129 486982499 114234504 673999208 752956381 275860123 698230368 364826617 244623940 853097253 323687786 42683885 239115968 583122408 798893751 136814238 451997911 427825236 10590617 125342650 430008947 881967742 384645580 152430652 296322357 336206364 172394843 879501201 333205238 70738453 293931620 982291246 472941605 196589727 178286559 882954042 566601061 831735484 10037904 999386965 346887942 547616259 606912718 505225623 936438601 516644028 539398450 416222708 864392977 409701835 644282000 626357343 52729317 185868870 718456038 884677791 199784389 489993802 904608613 541846834 169267488 524335868 142055740 834589476 242765262 316365905 963558739 788164224 591134864 964350153 467627653 718774739 618868506 885875091 163908041 455476807 695419495 471731728 334008228 981129220 863765324 194741192 686324702 246490491 499116000 215377565 185719813 745186191 641985102 330974249 986044686 346767140 749227438 311199910 551139300 633974551 714159407 809189861 691174189 317348681 367080902 534171324 720406466 249545234 85614144 735793733 826875836 591040618 890213224 313088629 357767170 921306483 526854307 346468795 252345845 916372184 724141566 844128527 827030987 675400026 818767963 944871391 861408804 756234332 75786292 4459450 856171815 545981036 128151723 295842195 964043574 693416714 511377186 848254328 625710843 409813036 866614027 137097193 456927808 384253810 728314856 690931844 480704805 207130349 694161548 519298072 189494599 751216036 534590426 510388765 319231218 322451853 281793705 260938730 433716661 109662635 780210287 614996446 29018197 378630205 438577285 509069659 978348392 927344351 933089729 949864634 57180130 152326553 531284920 564764666 761022049 971204692 82005112 474708567 801709357 94063437 275579160 15727954 675756158 527090317 453408990 373013163 682488386 451193603 149696664 845919142 411714436 318090881 906084038 976853154 170731996 380665957 753841065 207161916 631564859 99556720 876223198 417284297 726568889 131599864 493263595 138221564 253717099 863528516 301027772 664272994 504762456 518860566 859637411 421833716 234971540 845357453 156619024 901840994 799835724 425179532 834672633 848922929 817988600 648722769 849810598 633787025 235519646 863008166 559180824 947114661 520011898 723053682 942478643 937980873 545839393 182909687 752244795 57907935 203462291 230889482 629423576 843428995 19642381 399397946 416432556 541020521 653810491 467229129 881995105 906758436 866374262 10241561 94051987 369933686 535100922 926052270 352067837 642960577 373749574 47484408 204308769 28257335 21519424 634889624 352746605 758997408 26297715 501814531 767815758 565454669 36538731 688451118 985124434 215291587 877504651 842449095 836756395 141237575 767178006 670561566 343076952 391671144 291236467 439636519 915981105 537264833 850989271 675439031 186194958 657022964 157865396 304703534 665311575 684731919 296905767 770784099 568587485 473853870 26397679 886061193 903611413 949087081 71519305 350432441 311465095 301918250 753009799 419908398 38495661 42162616 986087639 48524265 233542169 700493605 453325879 992679256 896532199 624204312 474390795 463464319 710232491 21300551 359022423 50785467 721516560 891896353 452618066 816071058 303169002 483909178 320589232 213390625 938069344 672388031 25336408 57582304 163624067 604571553 217162848 275198230 321796406 995904084 102567140 387422900 888525009 781806975 837823562 434391201 212288185 74765069 299762192 212656765 351311415 734417397 623794860 673142255 228593708 846803691 939210147 500776651 298166210 675136156 519242305 185819272 862409554 961596513 665728192 895396247 208985173 715241701 362379170 989690771 536664452 351770941 310809883 502320591 552693415 237149654 720801440 262808297 883270433 832851674 479289460 286030104 486384556 602295302 491992405 916063365 562872702 147762748 514600341 33159963 774764285 791729506 601020767 811810300 881168309 622171316 806056343 7177202 494734221 336190844 926510330 378376482 438479080 466054903 782571066 227436482 427997445 133745445 382039494 543197822 396546667 806515151 8199282 798303160 214681657 43807444 841433692 113060277 790845412 318853475 797023410 821255647 31645884 954222241 150333001 148345082 688321326 510894508 594339978 678835566 473619145 347296689 373091179 938255825 316016320 690487500 488156728 590024244 351095158 242525333 148996477 844962821 798004650 566390596 123740865 369210838 845813280 318085138 442183732 759838538 860816379 415699089 250193098 478989163 384892937 553958179 536274133 836798626 964267719 915454726 548862357 856829949 354316852 997448808 475309340 121611917 672169024 486677291 675776469 639390588 512275816 675341441 823382613 494243117 872250153 315189770 876739736 988867232 939570971 138123568 839469437 727273111 153077011 5759918 859180989 968288375 85571731 714671490 526618174 791644051 811785694 992395696 833154311 709940952 639902848 795273797 219357813 253794247 162295915 545396848 644859699 333164726 758497578 730947623 625633390 12172309 578751145 367559883 158501641 794238770 673905709 293538888 212088960 77978745 820043453 760133289 860718878 159304754 439036041 650811424 848045520 232775223 413627166 811922493 451356675 98066172 905443051 380288222 755603683 97053714 15383340 835822617 581931777 845473349 558152397 499700342 364905297 694085052 764835955 726725864 950452526 353385780 738829846 670414267 532183054 478277352 504978131 143031398 806471792 996582029 923099165 366169307 776628988 597484404 845557790 62209251 712424045 266308925 904475417 165376319 877976103 309925384 612064319 458014600 448774206 751587206 157590461 477420882 362356950 326979141 353144599 780427714 405775808 603877617 260849241 135088100 385750104 477864369 456756446 859233197 207320684 401599090 286876325 661671964 546311351 22910784 207087887 737120881 896500143 956199019 245319743 622349890 659414969 924951536 553736271 840455737 311066459 694356565 189907008 550491523 325793301 697672152 216940824 344604815 448753978 243322634 858308537 644476925 645837563 847636612 297036103 251773577 669218971 363621132 521895050 575572559 447192901 199446035 534002147 802574091 973031444 446758332 303810968 81411104 112397020 297493055 742252780 956304955 110392491 481135746 72197303 966862900 377617869 885642668 131786146 779181293 237217678 153058130 623085378 275736505 671789172 549689139 997324475 617455483 972097094 182356599 437204099 806503075 703351231 538663718 304497192 900743770 745115311 218626271 35371697 315624825 981481634 823364206 998176334 568500562 606308294 501422118 125859554 495851012 770804837 160600340 647964132 644429321 272215779 245400708 208587441 956187621 786479263 892400539 733566788 903314535 119606166 216818814 472754006 60203410 729750828 896658536 731705362 80903245 28488153 705294141 303149303 18553287 382977623 260549561 538021638 943893426 192778065 64236133 503184896 714110326 314678151 479888588 187073407 933336572 950942221 237152252 501352322 654716593 132341122 896433324 504104943 429714333 878327058 435003193 508181106 199493913 702835008 136333897 969230988 788248347 855113785 291950122 557882203 806123807 600996293 191355742 267200655 518880433 147795390 447500743 581042914 998046641 374434301 497130359 797308453 975485943 291336357 93229872 764682948 48147904 59663845 683461581 407375662 206397125 338900860 394737605 382315002 780385083 501720816 929489410 147039538 993043767 539402067 509718042 442771025 377781346 971405753 236693902 486255789 229002280 812879021 904413173 452862158 562357614 221827086 388483234 483315927 447836808 22219495 937674936 769302370 226282775 626101416 881081472 132020535 849211137 237348438 348935440 505830513 511310246 271267969 237388827 938744907 539816220 171694187 544080859 933696094 515410177 160554042 799659687 938241537 632862145 606416528 863016633 203088056 730841808 542332452 189444296 764015476 947402756 578907245 107582654 305613772 424812004 743227468 405853607 347208458 735285235 949284387 982129988 232694381 495181684 944721451 85311775 981210391 647402940 478176361 84611293 667366507 371289572 176820398 476036023 822014226 551124816 919766158 906726605 193475812 694753267 984017778 432891897 413947374 793368314 256304039 294500809 184260671 637872486 739369161 747516008 883478223 84219596 830077629 211117730 971308460 401771626 24296626 819727336 745723517 85731138 426073758 174978824 916501525 812774110 159905765 788981403 273883182 638249436 318407110 243547331 792223846 567172555 314283431 406838046 180236247 15759589 697320769 244289974 859518991 292947352 34538894 703202960 199729563 887974346 132246899 801539180 42188461 935659873 185141102 756906474 872784077 714070842 916711870 214114471 592862158 503277676 548286160 683649702 930142744 508928384 654208155 920972934 630753279 9235369 646358387 694274765 523079043 904660835 546087886 638527315 17641688 838434724 94044497 796059239 132059418 853570837 992136798 377680973 305202615 166765341 177607707 178809810 975138486 735537019 146457450 684389997 773672971 830942420 763156096 974908629 615670456 372274997 251396447 749221270 637238935 734469799 446633945 583829748 809515966 16373814 171279706 844743370 522938427 363758911 733731034 452348256 15890147 746139336 167237202 632047385 374433443 956388315 157899732 87157064 621177987 245175466 798212035 29260233 684335569 951141250 144536619 82343895 686654596 601254802 789161983 659399147 457656577 960359574 399270110 708360866 850659769 587134285 91696467 853389893 30375131 803388283 210201436 616051990 643745560 554267488 779264393 35117359 577653696 789513885 653127607 292364243 533175353 430395603 565707335 226347657 305015661 80732998 703242298 974545689 91909654 329078705 908076230 33457782 487504272 117156290 890027735 368143111 547246256 125560196 251455734 129798983 918240392 967197544 434611616 564132211 429458633 621524485 292037394 386110306 66386800 344842690 872806510 713489524 66630336 999322062 132368018 11809424 66608889 734006786 301034921 930185866 534272353 37156615 432305481 820127087 677505155 766792440 580940782 412091776 19841490 109946251 659329831 793572122 650678061 822882659 410547251 934763897 838421878 487231438 148400091 742402185 300244622 564321478 290073101 254104540 246378721 88801519 376839102 467219745 994542310 131007531 729501662 351392144 685157537 159485944 713955225 454071256 977537814 53668385 551257004 977020047 318386089 810775820 889857463 457109036 368552885 154484580 165003564 792321338 50524771 512344971 663305559 421087926 282582455 526308499 860808519 835130020 500344239 454195933 709683233 86719330 771807950 260907165 837257452 84934423 637160285 785755807 811444339 535435733 879268813 801858797 901027798 830945997 842815852 762394181 682530018 595528416 704742578 753537251 218875413 325889015 785624494 328924373 700113031 111278861 394329684 798489798 774507610 36084096 949792941 738190479 651803246 484414677 549356681 61134718 216129995 497936069 158158597 325495701 387292643 305453151 971169887 217112437 27981114 822748008 436193513 502203031 930483116 921295363 350546666 80981064 499069938 625599355 855106253 359986487 846160129 806202717 312105530 302696300 639553508 549040582 634335317 289240568 163111885 193635989 751801475 804274487 197222634 835597893 405313542 20728465 259617295 206525660 304543455 218174373 960485649 397847166 174099961 654149767 181014705 407440156 881176404 89560324 858684914 304378556 795182607 449025740 481364526 734727596 410103843 754176394 847929798 664104637 630412422 75240428 669521759 494530588 691846849 559571054 66304141 681934027 349264796 855973404 515262686 840668798 984580868 257819606 841748454 178306969 508441449 548437719 665970884 508267467 973932337 413723710 904256327 272652532 830857510 108705585 758580320 567597388 434844444 859057908 424205196 341090704 979815681 570399641 714934749 83608367 391049728 971076847 905276455 419667522 563146297 152540118 951446575 902772732 322563333 892876836 217390182 23371385 196341978 891359017 580197543 418038447 194428064 487086411 654428897 39441679 254719848 162817905 961144929 144407027 266597362 52470262 141834573 689526353 851973351 315720938 377862390 593840579 120465235 709757895 663798800 965113750 967583921 114118879 553652548 454278548 660646624 391654889 578921574 647145187 88078548 23028455 613300064 901649934 780181146 189102010 410505680 709957827 842620873 292839887 440560188 935172487 171658614 245080228 751582290 698430417 427230572 105663286 837167184 19424617 677814776 931558476 166087579 835580501 164304305 662230031 404096624 272952657 561401182 854712802 469075605 498989198 424364875 349188034 663921119 207978689 883617960 86182871 82799441 793068711 914990956 75354520 994865087 676147132 572646366 242800689 375716524 459217328 511574649 586921674 18613637 436053834 796080386 470480043 595356778 322397391 886186897 356739073 410409837 455261260 192599198 162320750 2581481 118724274 513939053 909968433 410988576 998082258 543245597 582963110 472108201 483753502 351178556 253273670 958813136 343619700 129170400 995218516 800289556 490590684 547724124 727279264 855871289 866076868 417005150 397882904 7627277 481511856 384337215 279486886 396895181 530485586 128803751 37050884 332473383 252044270 843337061 6659510 860317491 77034104 874170464 496480557 491919537 735456325 395712892 434658880 977403549 272065609 404563430 877541816 65572494 876490759 150971450 808460425 749388848 713075931 857729865 663509080 709793321 622706342 381195714 931785370 439878249 759651819 311570865 494780937 904482842 581741654 545141706 876911844 17797400 33703449 348340674 619168281 629356822 965685953 663137909 213006356 420548169 417804846 998278359 861519735 665719222 976051683 584242930 834271530 854190986 275536385 253495441 11523611 41974594 113033206 509524305 324030828 163368394 946168494 424611266 887521602 439697353 114480092 323889742 296598614 212048627 588741261 417678758 967920002 515659000 90878523 85642544 639936178 587168018 27526837 917387133 283435881 729885518 964789384 459342214 879764523 337912251 171051365 98705705 445828905 476918665 766970478 369953863 473609037 638607916 248349899 953423852 556810256 785342376 927412449 5657327 626203445 381009092 77102180 189159294 22315909 451878732 662813864 866693473 820279968 250331407 961941717 779885996 581403360 68763210 151314474 278272217 735398882 462703365 121356413 438127145 120380942 638344635 888488849 753837053 183039622 32768884 957580744 102894125 402861218 589818065 477177116 33426734 661021119 593462606 319782979 853424227 162987983 559805143 781639476 859528716 368095228 457670883 126399728 978507367 537886724 107340241 378443991 445546944 140366766 521336530 691278791 142851205 442743288 466070900 288728912 373902374 882520420 857918609 126337139 60764735 438045846 107013466 458605232 590427935 981717333 120582838 363429727 115983553 389704923 206382702 209286863 776461177 147775101 854853506 407225889 375651896 884371162 142830863 623446344 69236121 39935724 940829196 647077699 497208333 778877109 798430754 114337815 30800961 944934282 226118121 386133218 836698020 832537530 398630473 625962958 817963467 424839696 674680319 920343537 927790463 927770929 911321642 389542741 696945546 261869983 19117030 482433118 807696128 533366604 754313103 675583956 505260880 602837618 702478736 307320849 332081781 588710722 395091966 374271187 949788979 488297523 764830235 866012704 765768934 149772564 315850211 962702570 664689628 779097959 218609172 266930989 902566247 31959175 972523858 354420552 998626756 384344889 918339547 965390176 672480496 905550563 253166770 599579029 43377096 745181945 240183581 509982445 215492830 168479990 561280206 729801110 320134503 971970030 866052549 307180436 287637450 394865014 268528656 122834062 640475692 496828503 489649859 74866955 965404352 191199 992380145 711212891 17088074 878329839 688833786 179299520 408629142 30867134 703833740 662059308 161166674 114267123 568674958 948344178 57520159 822851076 46683927 302243087 623544345 234658396 853079540 876971095 108178722 757823744 651116949 656870970 772719361 559303777 228778720 60889141 57894618 972968613 213437219 97475767 671680036 34251018 570393224 875818209 54796248 676079368 180506562 193867138 511520124 500500884 375279160 766973259 955427205 586148286 940912735 970263038 761280104 648852480 376157714 753226739 323708998 67249502 650837114 730755271 711297154 446202000 46241948 710296264 231912784 312841318 717974556 634256098 976954499 705361978 507859168 505144312 803358709 409834261 974926750 953482421 872920926 46284301 166899664 727222530 372969062 550456693 949767891 93382399 297652562 580952353 357248019 235120347 197780096 793657304 760713249 277900981 284542963 347521283 680242744 837589420 901100860 550073853 243477841 543073535 726788530 318105716 21003998 653485357 293860844 332308463 542928399 318345980 679678967 319329129 158598136 650387910 330862736 679591161 976240130 962920833 244603077 940974378 438392692 726254017 343096931 207802242 424849340 740313788 697369382 852192486 361914094 986158561 717792245 467689151 875173189 970386734 524597078 340875731 520337923 415395926 20012284 333289458 24973391 573152781 144824197 143508191 485697783 532785403 444698889 405501787 999966366 98908167 585809638 62979023 605473768 971886775 701769107 722529329 880796664 443097620 518472280 941434939 346861772 638453654 984959482 71773235 546077953 139794052 716818190 536451038 568612749 984323804 312383877 789064593 882002672 733638549 414954084 464302615 605812032 979820898 58557624 993989394 100891427 913803095 765708042 401567833 402120159 281679670 116833373 381389548 863712936 403736657 870573156 796767611 549756759 425010573 83853283 655232516 421756811 322449425 114990359 251696153 272476904 284570078 69808620 719923246 391321256 223772472 778293629 43405729 215401963 702553444 24731141 60791538 74433971 216155919 756634831 845664913 879371656 802817172 115427093 485373502 785230336 855154097 222605337 144832839 444173667 429477443 162764439 440352365 576249365 10541853 701531276 487630777 584716950 912995710 286162308 548086659 730893787 166670222 493534287 812857630 578725999 397943814 196341580 601203637 227209115 713204833 556272486 950045073 470396294 861977319 429539129 742495779 797205613 822525736 459856554 451777340 527835202 337596106 968308690 49502753 216438455 962376709 379810078 159855549 732009200 667781691 974834129 466158519 920326628 775673951 533077513 741321542 143095799 767912043 731335716 705823540 413337350 631541185 539915143 466899159 925900392 982009349 442245014 386899418 976289086 36105444 206214389 290156407 590183103 196068987 415967920 609457557 760255498 698737656 929251447 250638651 988379985 40649622 903592307 731194073 627654803 62358144 347035769 718073386 910572980 709937899 601926439 851189139 922660475 756261618 445204094 642595279 451436322 246198338 14182737 148673423 561336780 188811657 270983103 242257742 587262722 860456952 521758791 693548978 945435556 306690122 289533957 295681162 377325624 989150147 406608226 31970597 150423583 300228067 591541017 452319825 493059095 618127262 246587561 933479909 150416039 491838486 973415260 494833408 839697278 24104964 926982169 432084871 529730321 55892827 997855821 618976718 813248281 230209306 446956246 858957783 669754907 840604798 44454265 867073555 86032994 131725013 919257401 409006874 450194461 172598265 477030445 631009468 5889883 197380862 479227260 584777861 784284095 203356745 70315220 673899166 235550249 499049686 524868871 406533465 985316680 972238891 722271345 408882331 504799876 333234190 122442614 894066693 600253905 631937657 940132440 828030609 620543799 803389532 47522511 604925347 632173026 252402633 121884505 810237261 179517045 461635962 937415117 614764724 996518638 925346043 113406619 648102897 788747693 284366380 193619689 108403569 128827934 921789508 558515915 592111012 897558592 157544377 472650369 63669958 793896157 246722288 391845527 509243245 430460818 718826988 906600090 830556237 153442932 641842002 825096661 981245637 313571733 223162418 56763734 616207724 76587235 826181762 373045994 410570717 400194926 404359633 714109058 242314538 25172622 368832277 658646477 186612469 555722713 104798857 383487877 875391013 592225786 900172868 721231361 192719663 310701743 352727606 521671051 93167285 925128069 987646983 380125373 669959594 118252991 299206856 488815850 508167083 657381906 364008426 196009968 62966981 450478734 850589965 344856661 262627021 783474102 763278811 359472214 418805178 699597005 499037102 318176131 576827518 534986133 691815044 864714408 967277174 951952148 639916658 194386983 667890774 610993014 745228169 917699540 4019868 380600788 472088039 560580581 154455758 652285876 378245148 927881654 976536678 143978523 308398128 907368088 334616282 5219873 109495640 706875226 563993309 281255575 178736614 568239433 876427756 926099070 401864977 875938622 236524844 329617353 605830830 89650279 960265332 120399145 812706338 893389804 736636535 862527052 154755572 305967454 246900966 461825837 497883627 426935568 237180120 493204693 663687410 62930696 981943807 292283214 715341743 700836160 61099865 590344784 345297764 795982873 215884839 594372333 594698541 231920393 482030446 274139517 899874158 950657685 642148230 64622842 410326228 286160275 870652188 582208169 910262570 564590806 517579580 99394927 823710117 847441571 89561932 20575648 446232259 73772902 18272058 408079001 948973516 188505917 273348337 67640481 320691838 481777561 812571292 144557001 831743588 157198141 924928361 397094000 254983345 626438259 795928534 850444855 809169700 106115264 485635426 611740924 141335403 5626643 914084108 372926380 424542463 650034596 362628266 885270685 209284233 644889682 495629363 221780532 178458754 843883971 832401264 886415268 663553070 274035722 418388241 666781335 957244476 107553326 241779662 246192796 928264334 584484299 887817311 604765880 961898973 704029166 758084360 68021738 532764910 308158059 139174994 149450663 218615056 81427490 994001772 152721169 100534401 232130816 457507553 774526828 786848814 673026042 62139043 461065413 35853224 792715329 237379405 670577665 249928891 498346157 735729786 361847095 37799934 891352931 55719021 831626908 672414912 836251501 381883663 51493969 913572179 196443082 372533388 817280781 960035043 80562584 899176814 224562187 675064170 177245866 256027628 519368674 336147623 441140523 180772783 186863969 938844375 739694994 599041757 111805163 287442260 761387466 262094744 198017915 80909560 789379576 917156612 148670214 99517712 249012923 236049905 299720080 902505067 610449184 328564021 99808607 999301163 524304083 424159346 651830760 509528903 92616105 712146695 251885265 762026399 75234590 102397297 971145270 562841420 989365923 133184430 671928849 117561212 510519580 550792854 240602669 211295803 956757927 773835081 116764306 988120117 419817207 987579145 25249783 632201915 286126663 166045454 276349975 844825170 228378544 963194279 116386852 918081540 420044905 345980185 342955306 201330247 954621378 585927161 754539730 828282191 464903007 741204776 912844028 725330891 775425636 203375638 574685606 743680701 824788745 579762893 405432068 171064250 516172284 928708674 423000830 104710363 884138524 520362011 85313385 785804804 548480320 286644933 794546468 956603932 918336842 165173999 545358631 773147695 176724591 365020809 912403756 326686160 567680667 924774286 719406845 87812359 468667249 830474502 442182372 225848223 117345625 720877401 856588486 556622264 590005880 831821353 421156881 306291418 980706732 517775776 338720640 91060425 360128125 792537273 990742082 799896873 719834623 574223778 672098025 153425315 282622043 24880098 870926162 902393149 800877275 908930798 571821923 532384391 277546639 246893643 566893902 403685770 497353826 697015070 334197967 232898799 260595435 626532024 435694977 375605273 618847742 425227178 911923589 298205123 743455772 726496182 179190041 403090036 475159574 112439618 867986295 588790482 254494558 292131316 424791307 622171025 294014069 313353245 820694905 297409294 901673505 890818158 284199081 401873357 916496710 92928849 448638174 912352931 284284677 467603276 793811100 450547434 790517515 695396632 418255822 444533924 599212386 142423198 219650124 80648721 930677817 109050075 968339844 406191937 298898422 626070584 899157841 556909141 402513595 187354717 372509751 258342082 55350806 95293236 298770241 551226293 933216448 477359985 482258019 336206558 637106980 447727826 695819996 197335250 780719940 829092598 817992738 311344105 570065971 849978808 579108086 955410984 493884262 781489756 367454348 695023136 326564059 437857584 999949916 983388740 953177974 596097482 967946389 382727489 816588525 218963683 199533666 325241012 881193839 260456907 704143502 411823169 328492281 765528258 138173310 337580664 369852681 849404615 757635925 744892275 267652557 177194159 588246365 170990953 763377225 118932120 383169388 756301716 533014193 836109626 555024607 936144271 392141893 488544232 561517538 878070745 358264396 964949624 224155858 598251312 43698125 160497770 378559044 643034761 383135853 852432760 939091690 568300589 848748076 292695313 461611692 330164500 425337601 732078190 921282101 673498493 713836357 919128172 433707168 627222168 715043124 767930499 88775026 883507286 41370484 903869698 687856796 228299252 455801171 866296629 259472172 437629958 159974649 9583721 780547998 483739534 863271932 264737491 972627187 886743298 705221647 682286442 820432032 844600076 73917849 484884584 530072138 123313674 400190277 483645882 86716002 435386909 920504139 891892829 858954337 98496250 236897413 211874620 879843183 450222105 99314866 485391954 13769884 223707181 847714223 688344512 408893443 476636671 158788835 559894454 187891766 170940599 138431596 264137813 420251385 88567890 188309604 508094820 480911081 61252699 805222451 680831826 362621827 559198982 76285784 930683585 485831723 260361848 344783302 33821751 4762958 715953653 722946178 7057698 296455414 754124789 579996430 984563465 740062653 303262704 276027488 485266093 416171983 524199112 882876343 616337248 158280584 628648272 957518530 610002835 918790343 181919068 480022623 799035232 138794932 893755573 177399232 21476972 718269402 630925875 717554722 117848685 185123785 41941585 408475733 112194944 869634887 742657333 541509476 46922635 387261764 551070996 690750850 542464969 780452618 642925949 747100283 803391108 442668901 319858152 595226884 246987009 177986185 46157111 405978737 159493954 937087723 942830538 362175013 209579339 456056417 255370361 824592012 364589948 474646639 171455383 942049737 36053374 855145464 142075666 574069894 545029410 460123941 411289036 389709247 109921010 499553939 269288339 207787192 274480339 453033199 550871894 495152033 161687912 120990967 803746116 648850550 891075544 185138862 734211384 860673178 737629366 170252142 506660982 542137669 75858774 522586201 963330709 236372348 852308595 171112395 120965443 408194516 810612565 652768795 351019502 804689848 691924603 93149109 794353090 576556973 865136566 454708631 191419859 546271411 770819702 974695217 977005733 854079475 929887851 548084524 362423106 672531887 602228096 148760048 838227617 531993241 544246853 306543063 605150529 334681954 584672560 100568544 381994176 841310864 60850313 855502377 4771147 825584725 953207937 885636092 326613912 282420305 720972088 372475673 667509438 785519561 373828254 648568781 658882416 956292275 209046762 607824392 455105368 415033981 246004871 39420643 52261343 352701755 599198387 870693549 587377761 707701552 319276006 648057181 664027514 658588710 480800254 670322418 451977201 821462874 318138161 679974736 14668725 833838403 286218281 241346902 548051151 259734740 64831501 810764043 803587459 645283142 373304069 622024522 53453488 256957476 776375322 304299064 332764922 990300022 162871237 284775762 181374539 557254801 247643002 408532103 155241956 10113816 462666498 218910207 121441635 961175460 634412545 95213601 476817698 471771975 499598051 979475351 875681269 225843343 114445941 313824774 904682432 191733064 643623730 912741164 728430335 111642250 953601992 975440818 494572887 631350368 168089177 762301021 933912675 35243631 151186372 645239674 667058236 263012428 153366972 992906965 291412655 747219421 184994024 133044411 743073767 522610926 766792632 760999681 494356189 619645191 11699418 304822731 798289969 982646239 700964564 964038208 75916103 498141455 63380926 670511621 32178622 61115493 547502618 409374397 423469366 978476289 730319477 192822747 104771046 935858761 507849656 594745296 621403051 944579145 926750983 784198447 498944453 379505670 179196303 244262074 21015253 981007199 255726752 230419771 245439780 731005310 68319080 740566965 136437717 423199667 370336143 518745611 949192650 396338787 108189502 231901807 619835958 405374321 41285352 947868235 18334243 682740614 755817440 298410296 562108729 831038619 642954663 963321478 839084654 957802086 318845105 134734237 102697179 349037921 412238986 427682103 942186999 978809036 754569419 768671893 575839852 342694666 524671476 94624129 326448797 320621663 947298375 623419426 836366083 23146138 640901604 744060497 660004468 197799308 65199220 904554841 802876799 540427006 220241689 69589536 417075942 394374803 244461905 601008580 783948892 648060630 775825425 899673601 235378431 196948292 580498517 448590867 111297940 657769768 583127961 214295477 315220158 138830704 542776790 320519564 854365096 942118557 27517021 359840954 262358690 659105790 255921863 781460161 829868686 242499913 630776627 218284261 929888194 418618522 312168292 187985508 414412070 103484572 365152950 330226339 491603261 906431649 164181881 415662385 514764332 362070846 229944618 857703263 825444182 310624307 865228433 169088767 64756204 384236461 814722982 865572269 841514938 329241662 418540382 744641806 885802244 977836476 877346831 853452409 633963910 329460926 937897337 945452650 381634122 41072341 993004439 846588148 495973073 714581504 984968566 539334295 213669502 67250960 799046055 316208559 297550049 709975526 129619899 217720357 210303668 993783983 472030060 413142417 851022836 827180087 374108629 657814889 829962189 840742386 870068426 762019677 63833757 217107981 634944962 974303837 521638992 17170077 201629920 247640717 517633626 393640741 28388790 50623487 58923536 908326353 97089320 243585571 758794104 504637247 966610862 946265303 70384214 48788899 289577672 22851052 340142679 988105571 916223456 754781005 576713390 938395708 175847068 821937491 701425449 122750091 344984084 399499757 395372879 196994948 515130201 17559907 826223187 541684329 964375818 360794409 214580012 9971544 174629289 114187066 58741456 224612913 922876671 43244466 486812791 679278489 63416490 126067007 455207915 675157319 918368055 485254293 638624432 553108461 725897286 559382926 414844138 752237842 963662449 499749671 83475240 931392998 844100170 418857059 974943883 381429926 136911689 174688543 459074997 640254966 620119464 841605931 543414776 560088181 628159350 914648234 148990932 874263751 660840787 15284463 344877366 709586078 231988201 614650316 950498092 4626083 768122276 676274826 679908609 763954470 651745731 146832701 88966916 542463639 685918458 875967174 801382445 668700211 110246965 42221913 691413227 891323099 301381027 797525777 173105513 909530159 502098223 718305746 573859463 195269108 992964844 660550519 590966786 196632651 291679896 734897631 508653776 112695534 995071413 214656304 527411600 554655984 136106560 649414339 810603819 90603228 261935691 505069822 719785156 727000463 451820954 806257764 193211440 66261507 877718874 972967017 239443351 550671428 489496936 221285944 962812901 602159424 185540229 462239093 131829349 415083280 253586462 888164180 866702345 392780218 293201069 690674501 37355905 635048174 219676000 390604228 662183263 752987147 974532692 693286624 196215987 953472866 859303168 291241613 945189993 276414629 426391891 102468938 689823375 655422011 14991518 403733986 39056495 683840058 468175251 263990493 886025475 862721634 731962674 66039198 768327414 567671982 905189944 968056407 717403637 250311412 1607141 293728100 689513137 228323017 715953735 130586549 601789699 265801210 601055397 947092515 40277745 748911588 527246193 882048988 931989593 758397044 210143466 20372155 408046895 613060645 991098575 54512241 710000838 852046698 534474085 426293144 902844622 634410586 288965528 859572969 359461334 831966780 374918057 423267956 609467658 771938650 988381166 469989017 346953293 691597181 393209813 107937969 107207812 78608552 525727756 338133937 62782395 876281631 406856443 841782318 12355483 905780111 649088207 23549527 769823939 388936556 657957943 402489335 513687902 16786902 669027640 760953975 376102623 404339750 893306766 467361452 671235528 116884047 673737347 989627550 686864927 672512722 355635726 579475579 83080496 95518591 326021397 535706165 637966270 223090133 788802323 889986102 902974108 629442409 998677451 250706814 490107336 170459756 896115340 608993192 251976123 779851948 614419822 559547154 880212969 972906687 478229943 572194032 142930996 797689383 826216491 77107663 372982146 150352154 268267010 573341147 369346248 205159798 378686477 548541909 415850484 374130669 157396333 447214159 1517232 772701065 136968336 986451310 792503640 495401651 100777851 742761872 140035714 443365960 393247281 875338504 534941775 451278773 535455274 760978903 133505690 545890982 60248444 559575416 806023384 180209361 408472802 851257415 146902843 779912230 643474023 140684345 567317311 613610118 421773466 427587406 290843041 52670075 461917835 150006702 188426737 645697511 210548055 735114136 291584900 895626759 871783843 620549856 456381429 769352220 672603419 961435101 69094222 925403422 165980709 384079193 496917829 123545600 537154722 583255306 779558475 666026921 923389938 647337462 204835543 358787413 844114987 682861803 703911925 150115357 953503906 596687794 166473233 782689986 836667883 91878464 411154652 252930164 864362746 975868579 766878287 785299191 798624310 501456769 707779259 692715146 487689230 391221663 554657654 959984911 46058262 244580700 740606188 862472862 573497201 392926215 100460547 755026165 679713895 472111684 619797859 330975978 549154309 460749764 735553184 593176037 882398842 197404123 459845598 828229145 129446092 365562078 888788719 991003031 577449211 513811839 261299417 365476119 782039885 237594357 204238779 933452536 987041504 961491515 115669135 364375989 401858267 957570520 913937877 424924585 88402742 253135144 682926132 943804488 885235254 897435669 528900735 997102332 307584971 877793593 55892035 882704950 681164899 505688608 559233259 124103162 231409615 154123336 729008735 946454005 148059340 214979031 540413767 157823470 673700118 159792568 51151506 849969427 499562236 428910875 423722450 366591796 74862639 934292041 176058670 348237350 313666699 688984144 104442880 903833823 914480863 292670850 195455576 138611789 223082113 873443440 492691127 768808260 352692389 593525514 675258844 73064058 793998906 266879457 297922286 259973919 686149903 416785321 240354388 271113264 539425669 437689175 951447886 986500277 76209551 821900172 861130457 779620071 963874844 52032455 365822970 761427383 370663540 714099400 901967285 782011559 75973005 503020066 218619240 617155450 651675930 19487846 871670412 874359292 888622450 845113860 70779957 432310279 46354932 628468182 394711366 831725791 320939323 668157988 657431036 191844532 15960415 830718055 58480602 743320915 884739468 130322758 412414208 137879292 168018171 472297517 852831621 193337793 560720363 703103657 440815571 404889733 150230499 782613214 176143347 763490185 113116659 192968637 144177928 64310683 286480408 41548253 61018709 126484778 707959254 493852885 474207581 646727961 772999325 47959262 914643137 212111055 260501633 732390762 153239841 755465744 296832650 764139979 752085095 531745513 4539276 345553779 609013172 717701404 471330935 787420448 901030082 680008009 330277085 650313467 559800403 430722082 105761909 328864882 713053085 791981411 58406140 592791782 912209767 347220620 386215484 871192128 785129503 879411819 217877103 737830723 6984900 298509034 320950163 406822170 369694058 260417796 479315083 796896744 626754937 303652237 950621040 489004926 978968457 691144114 340770836 520703516 271069130 909806212 599300087 879527153 127465860 806410905 906935686 430676855 948881697 586906144 432239690 949137401 366156966 226832284 427505126 609555401 591275186 626542407 428457578 373850348 521667604 629692847 477857678 347052184 802582083 944662201 968490188 406409038 924620724 410611900 864529609 213581109 668248546 268049037 965747190 908949663 13951062 920599027 418039901 635054847 405741723 562016951 332894573 766295160 235961769 977381477 338969280 894977666 383756788 560935848 699800072 818653190 874092033 572702917 306187803 240667233 659107350 531907894 685326622 340087463 801155400 61223217 675735023 910916701 612261487 836939506 137380743 777235954 964871533 554381147 657902402 918126274 641814392 881589965 734109432 186231172 373397569 705938366 845722762 207552547 528264782 58412076 457862377 610785706 28964764 486356681 422507032 966787180 176994127 319031281 306689980 427017415 737568416 699320649 248540015 560975337 408549188 885660942 156540392 381193934 884518469 11724410 82490161 488737305 821998726 14039813 612425067 497062149 385965134 870007962 1821355 293788998 611288530 293270326 695780183 232129525 957497241 318696497 57402309 366415664 514721426 171337134 709164841 412818249 85554378 790625494 666888873 612412014 47705411 989651714 951327106 61236670 759383078 205076576 446619409 280222532 111072525 512014693 505526923 381184182 586830912 265924566 485573014 269055050 691292691 45922840 897716803 534070 283924073 721120106 922289389 435752058 807468009 275198167 876766195 775979866 604196574 928829429 373368253 628795938 184112043 211603649 515932863 480601193 117575838 300829638 344015532 455172493 377734735 341552070 850096104 458531583 194548663 116202646 125715413 823942376 214643317 378273230 951934348 729534029 773549499 710229469 546352113 740966270 856417177 827450059 306256543 390593269 659360405 335724335 349340819 986943394 57521512 839011753 870199309 367809354 220766995 477802538 145509435 713782982 890065769 593761310 255518849 724036948 286281659 371737225 228737688 252195063 582282418 986476453 706840514 971632392 223598112 686855346 596521424 336340914 532528900 795471071 140772413 710342626 867194772 273790182 710085516 511951142 862068562 511809403 871053160 35971088 585085206 557222246 658432308 567747430 719399960 224842334 505881820 508952118 420985838 229695305 28604562 191017694 787805860 347709634 296479248 600084518 569985135 317781133 898098770 687700141 912057947 304308334 674344056 310986378 482095264 538794867 856369244 675354172 272467286 366869486 910185706 364489135 926363498 362959025 486789800 316507007 642438968 451419518 375903341 111678233 362180686 615024108 127379191 712767344 38369733 826471960 60078648 408976465 467182511 453634198 917444191 615556915 965069141 719073250 893985616 282208937 776109624 99702965 416103578 171782375 573713309 681951394 811878956 970570726 296020122 121603298 752104654 486456654 344110872 365759597 856003757 895811298 399256164 708057155 840378566 562123410 961019047 860171067 594616361 526339040 853091607 806024571 69922111 578826828 365576010 575380430 682157853 220715671 626012053 519311403 330757787 30526915 217904820 320731027 432870708 253987707 986822302 741494126 203593852 685938110 191319335 456207485 480198817 704719129 449846525 810012057 749485841 365919442 345075559 37359303 224369948 169031938 959287269 818627464 344252058 837495803 821835509 704244207 466626336 508869686 127231508 212297597 333591818 779625735 135254382 172937750 95636030 299501250 611129805 388875847 631232292 164677710 950402602 125989522 438100202 231611587 865084522 605940248 100348405 867070732 116528928 985563666 50010389 438254684 229028147 691956876 136866211 646536058 238914707 995952520 841441123 953576114 71100036 776356344 582403024 579910066 889955181 399059646 599426836 684626895 473430737 39520996 334477047 376159489 986534707 391398554 634150626 930065153 244618148 178058769 414009147 160124728 836757728 106408442 557201233 616290987 631560243 702340386 233674474 902105596 269524551 540021077 789784820 517152293 855305117 304669734 143224831 337923610 662955969 854727421 507731376 881975399 93717516 498513100 501015674 153459334 452995523 141569499 680798475 597003079 462393656 482427348 286941034 227627054 88379064 418267171 442601166 336364052 536679792 40478602 370656419 335799531 301547325 644785837 354782430 888902000 500063718 979683477 447728800 4644108 6009258 335006638 336628463 208964129 292526137 906042628 427169156 897721328 659368714 267039781 159909710 201646340 695913935 679962442 724504734 828677063 784686344 405595734 205302025 206455934 875422895 750432249 393097736 459308096 425755754 83771115 803052658 686387219 35055837 793478667 893829606 815586033 493431224 948772254 681271310 111922394 271602025 492511388 994351474 963110514 484970766 635171067 124697683 191942283 593620149 652582631 802286372 577282966 191799480 345060374 593847142 514363698 740820591 391776370 447675712 306799786 809562335 606284400 666660044 572529679 341400278 25298970 354694084 109270935 374454287 257515786 180915191 392554825 510903310 138847106 208551127 867491252 964764798 204057153 11797505 550507312 746456923 878455734 700594473 905621594 952097330 415911901 614682294 258264189 809528143 322366094 476530302 12950801 544895568 513725649 956095994 299164304 753891297 847600485 240709102 28192438 808772717 808770867 649093640 436613266 181205016 133067461 387807952 521514565 413522606 57823254 96939146 650314867 596308165 653007384 523111362 749922436 845911584 356301761 658942229 2383464 84563755 471695197 820247560 513956060 324705067 706691785 24109177 331369982 193489500 690691051 475735892 236929500 203419352 371026225 834192432 469843109 62804431 736020150 187533349 786614107 790787707 53588365 283605675 330199776 331840997 270002550 681772792 45457075 948153167 783459396 90538241 516336076 532025775 584686675 340991017 757230172 229934513 981001701 552122953 436963177 934474 435625443 95325534 234176827 748905575 776557830 912994161 450087275 71473544 492739554 865822055 920553695 825420632 348591309 986489669 15835928 952131354 391450169 642928366 856782881 933495538 344814216 50249504 194501691 688017061 580620310 938872750 677999964 982299813 772645107 472922109 75163775 440258297 622343426 352514698 816965398 912265233 693178345 786303067 294678419 584451903 966009194 924778834 600457119 453299288 867098376 708495794 16133671 876675648 150236846 175427195 605447972 480488876 923315497 232517629 647192847 272500840 404927187 550240551 31920501 235933387 905648543 411135561 307692092 713952969 471921119 822014827 338717573 422899377 872307967 325709650 948111909 899311610 595964804 89490688 217630151 154576934 25474059 464731611 189986646 193197784 685457124 837431652 780763645 507177599 619266766 814646040 686177909 807060468 221080258 873480133 975309669 28959686 928364285 353485608 923244892 450703442 81331633 935639889 644532885 169877258 923353801 445478523 655274329 361808510 182627370 225485515 852777742 789019495 601345208 336452494 361005162 581871725 344576445 45127186 160151039 119916168 351967421 580472699 455617182 204544797 127114406 866248042 113360667 844093598 569258397 968609213 448305323 453936294 991228132 936889728 203100639 617391912 868429547 253280486 481411600 603576580 401933103 521062582 778686044 419770594 656760601 619752646 830761325 342181034 909659369 323915338 262268930 343170640 352326843 48053619 969491473 637546815 124783282 182448922 458716545 524377950 158520717 246103398 109660987 941579565 86163645 129742522 641868948 969052842 219302347 469451446 406762602 305229707 278809864 549560250 869254099 369281048 495709735 138377769 20570912 345636194 544974357 683575983 404581205 753844445 756829415 425542967 891538881 153506593 757030900 33643330 709944749 523824621 141339931 721644998 160839681 838975920 130838742 37753424 939405570 129822554 463986798 119115365 607922707 424385124 550335483 19494390 888786253 447353836 361126792 391782337 174980322 670698404 675434853 644950089 302228633 38249374 557345783 136930151 664528865 420934615 898841601 914249714 390088812 832866867 17427277 623806802 191779106 432359605 949172795 253763322 703289378 147472271 363155892 228053306 155945511 838794404 754590550 194404648 331066299 89176243 234582359 61235818 125150806 417082582 103497747 991695191 736495883 539218639 183757671 145362518 495699228 145622206 191541099 369327694 43874867 604111618 999014223 853019485 521665979 994687963 274480809 775162007 985571864 683438511 240133028 383031316 469648398 917936271 749312534 866593569 404441594 457194305 234231579 133102346 59189828 933309982 953173735 458877979 309515942 85522882 4168703 638573324 700107218 661831447 729989080 437755652 118331833 433344101 491053433 481239220 427551804 149904003 356431993 829391559 518731339 605348229 618052902 132864142 235386843 543693484 524874396 14514006 836854058 351809445 686444088 717973590 869529703 792225360 956482308 60400653 424243264 84531948 579362694 625633670 518612646 576404781 385471573 103376821 612177044 104059779 894919077 664397487 435786225 43932903 840588229 899937967 111714663 603344895 129545847 932954054 987274071 851893116 204648014 465199387 206608518 909012320 515693102 894134764 6905184 157591449 749622207 95247907 132959293 712802392 217727688 24415319 561655629 89888804 653301999 625267873 656410447 122217014 360597349 498944733 499818187 314856955 631252837 642784273 975099610 536580111 352073509 293163908 633065037 537367372 320294006 259960725 67526844 558766296 146051523 955760397 996005902 47890036 397264804 676516209 179187798 513554537 488239065 652833029 965253209 602652409 291246658 654925882 671688772 127774701 465944758 555548220 165596279 372273514 744988943 445726842 449806600 118995191 572351650 661244290 884646598 607443565 760945017 152939990 34857211 450832374 107779493 996890804 586607255 938814564 947991611 96723870 121616636 614133579 359599487 56435033 577712308 892781836 785313926 256210714 967898538 655946473 656109705 461325392 445316156 30976697 959153461 68227043 793138613 879621558 564993738 877326379 750858245 354072377 184402516 418478105 797125719 480079045 997956839 158287012 70286183 834203605 195278670 78882454 791810435 500273007 350158652 96131319 371632786 713095968 509131564 402369551 821611151 705582487 888306883 691543529 415020484 699793543 217973297 497582462 977425416 187925993 648790776 515954579 722402597 961005805 528621060 22252936 968757805 827234186 446615771 63821569 697449581 109150701 414841017 869484741 888126033 478669919 486851411 595775978 940129679 236266743 821901873 816089138 155242395 161327628 742688497 952609422 785364257 452679938 918625708 203130151 985482455 28564959 478853939 224706592 763864255 489366655 776282887 511405604 2311172 962713525 716085261 88081823 578818971 201903227 893318673 818426979 559708469 570937187 890379796 16871661 78826532 469049830 844624947 195553354 596532819 715819256 644239435 869244932 964464669 396687624 150771170 80384282 299049685 311494340 494909677 610490922 384535576 400094879 576295665 524960702 729924859 61411197 808192631 87199691 613577679 390985546 970913207 163226741 443569700 311139232 995782178 579774508 526460760 13842848 565957116 459145514 469422983 734580310 110502690 152524145 743157652 359603450 612963341 41974686 987600761 840012308 739494803 177745405 88761973 912228918 330939988 700556884 155768357 876498776 611697968 307537908 799072938 161689697 510815242 683122271 596244849 629244505 209134674 522359110 75536722 53942721 131760653 474229584 516881552 903339201 644656989 443003236 545324813 654593704 62300102 800372066 185259710 598146901 598960441 50038651 523959666 795961454 807950633 463523785 957452221 444602414 174171692 780822004 24210748 437990398 472934478 704979846 837352591 205340325 999933756 153790259 382458525 160992788 375543166 639479502 53787296 453342022 680988433 866098458 742911760 472606427 279114429 316852747 774331830 218577380 691051578 598161735 917273195 564286660 863903452 11608886 984509404 895669375 456974145 447037035 249249270 377585141 826293275 138429608 115422559 921812413 557201623 696924798 295523874 884225392 54248150 80300860 608917630 808298384 143307108 899665541 21481115 307379194 574055753 810649614 72595320 68893001 954796131 982995287 701067368 22508104 261408211 910542216 351448766 478116623 308438627 863002224 236096661 799248035 826808945 72920932 718710710 918487390 130297554 689967733 852885831 236777339 685801098 547403072 61009875 249129741 55269794 124377451 903489213 689703154 735300810 810880142 39683332 341250135 379952861 341656961 725944251 622333243 161781485 990313836 241092751 464672953 883946260 299108673 19338048 638355411 524347978 599091028 340203213 777355219 409011376 664600458 779824250 202863491 694517702 907008450 166633498 483235685 316238563 502508348 186025506 210622899 884187787 311735191 527435739 20986544 951383001 835104193 98438017 212569479 111751935 30572340 569801803 504737940 133579360 269176554 795012121 689205210 968750021 957573399 734344246 195033572 808752918 628806439 805840328 485123941 312907293 959277732 284761754 616830176 529307493 379076055 465927201 570060407 201655865 81270055 616316186 294924364 130266873 7690014 147596664 912834600 968044153 747039743 572936925 122021766 215385573 675232024 745698879 475732839 578528971 226856047 142151614 372250627 64741298 956130887 436582702 356393780 891643954 884963163 986094750 126874602 741357211 69531275 973391548 366428218 481422939 200506324 101397785 583899065 965584877 297159081 917388170 534854492 438132660 846577399 123373841 116458687 595447519 240549120 997494771 437548176 296290353 149231662 926732857 546415360 507063868 178992108 853506175 578320906 682669169 644026277 118244344 8276090 857926662 400528051 991573260 380807913 394176912 22590603 96681713 763426592 861378410 888970041 478148516 614148375 439992414 76551816 971723683 263979201 424175009 750780097 734538021 160727022 687419800 996871095 188256513 614323764 196079117 942171256 474868826 723599498 903200040 764637164 168324362 813085814 919378459 257467694 821045981 635291329 63929008 68209437 587434072 893179262 116922703 776976677 775841829 424715646 996662046 698223520 846138869 466096625 512302279 630223315 437276965 236052879 466698017 653345977 275334130 244774687 490728787 78726510 80854046 69204167 681837438 625086443 3194756 586796962 195684152 338896132 47511249 227852598 338089402 263382782 406784434 202033713 893566933 649439243 525518387 769733037 266970658 945565363 792620289 28698840 906464949 16170693 786188612 855502286 350226440 613379178 164455049 817143911 736533074 767183983 634147040 16130019 770814395 205172984 835266557 756203949 937806767 94779909 120335919 599034743 12847061 123324653 335646439 879738478 535524760 705374678 896599528 744139574 606703603 904520753 452237460 474466525 795410910 184358854 500278364 60027911 704635088 705085266 147748537 111080488 958914154 335259649 834761570 574069392 838778435 498377022 868445350 838559565 67409918 322996493 476861864 145929989 575315710 185252538 388185940 953929689 194919942 110694298 722665512 246547059 350550484 237497571 457621944 979140961 323536207 849466945 181447804 901022801 496321934 161476538 937013075 71459201 386860353 982777633 815803259 803569002 109883452 748388709 755533837 453641099 743690364 407381371 767714687 22189037 599120457 65997573 345112617 864233071 684843834 546961407 351506461 499845948 104952208 505186845 657352683 866496109 154501972 699690241 700920052 577546050 253013782 586993447 295498721 886464378 77429261 710959399 299523629 273312168 463941017 660877296 874902256 527327926 812654723 651150160 736854990 1999267 277320407 709079211 883017105 243536474 473112466 701528549 8916015 958327324 474782854 115253888 238168663 338110205 206225010 111468218 342228289 941248873 342982492 682988169 218776034 306058726 13998091 779966558 54396766 864040081 368914894 963601898 556226406 108636618 826893460 372711312 754175209 732008968 540225471 200638639 906864238 826311038 307841447 282095474 470038865 521761562 489682665 955087529 384097417 173213367 544182001 451881703 12645383 933126925 269271889 481602838 107256095 712930548 902145719 440861398 330543835 236101776 951689657 889030260 614536388 582950175 394126992 880500671 445037238 947382199 142368574 489855594 999322363 501496945 387729919 876506503 770509262 52453995 355734272 415810635 601767185 235304218 567428531 370546560 902454484 327052722 274949312 131355147 349410315 950846405 125738783 176194301 863136941 152107477 388613798 525000543 934565505 400559907 778366212 212656858 850950276 500754841 589344346 529254998 477957109 310589200 844089642 348069895 255522837 417353237 570369701 336328608 184930349 381004689 233860737 107034038 750896621 966228723 149072544 539087888 994285008 754502808 11044129 413704029 597923952 697580173 134435077 144704019 855610585 788537850 282951621 440932858 365606028 129534469 821420752 513212495 345017448 77970454 584593449 342731447 123128518 638948483 193004163 797787246 528080049 572726940 127899969 72293879 311007421 995773799 783024023 344523829 830203166 548818190 192356372 234869813 193467227 555278682 536674315 293814412 506909724 373439299 94659840 32558666 658960135 879030882 897713268 942561301 584279028 839239571 886140894 248520139 168290447 3141123 621001188 606437731 521245456 423700132 822784659 346360722 497692127 895228781 831664680 380051286 224488858 921302981 501725691 942872173 990255562 513662870 912895566 139765346 277647315 164537583 995832276 97523570 262637626 187265261 665751943 812944986 21608492 561737496 408256092 788635021 29835651 816309618 161777320 643581191 468765783 832794937 202998291 116829781 124451166 617069287 221263064 530969427 152946403 313906717 914738867 538169396 411942473 6466527 712106701 269397674 327691879 730441808 136067607 260015560 2390406 925499138 155152976 376160909 929427738 224428283 669476270 968207008 661148162 84063293 348515659 896440794 2241043 414434380 990654011 116393037 967913862 381115940 45844646 19995847 688275092 217446617 10285897 691946470 239123634 769903711 446994852 414890260 198630498 994036105 569596607 204635404 132958165 377343376 821925387 831109538 414602957 368688989 79371864 808124547 898353496 127980633 4405774 601357580 815858658 92381633 407444908 875457126 750834826 303016944 652590763 708513572 683382103 890874725 65668634 399418940 118970971 456484008 755972128 381461805 173518993 550218722 170790672 438314138 276131048 793522207 386247790 467175339 603605882 140868165 75176064 160624608 207258232 87005463 767124098 821567183 701584261 701164980 160647592 481198996 414427686 488735443 950316630 274967849 257740798 962491291 901341533 18489946 455705510 211092363 124079228 651114829 634807289 136480936 271839129 637337389 190134569 141650834 99224340 565160724 57272618 221559224 444575323 87723522 115684651 743038524 742581211 384814688 953785842 247150165 899763181 420586283 401462210 890871932 623721716 885164761 349681306 150003562 390153693 562111871 146562113 49522613 899352193 973200264 638190530 811404721 498382388 554847429 195124435 689354963 887356329 386313731 901976132 337521001 271635043 559479146 818126193 923829932 786491103 35861460 746433640 784799563 399419465 240080184 480900008 166760226 979095742 680537169 196186960 628061345 997913347 9131094 892824030 903937202 429436227 569199184 115263026 633328465 428490634 337079870 620997706 593224328 68668605 720155706 583509986 149487439 357459594 846266517 943660202 97784597 549246613 203843557 505625867 541833798 225259620 805443509 897771319 377219220 176261863 55184211 674380200 628467030 893387360 549933870 930299989 164775266 988645487 399502575 583005477 745691707 706319324 406936709 315776266 730594810 997796372 565380739 902899918 133389371 941265760 159424752 179155072 698447402 233661783 631053528 918500432 535072621 673231560 617071712 131095680 482394846 185993966 713077644 741159865 888808204 159750910 626651807 181147118 737771677 544372800 569936180 949355207 120176397 163424634 539290165 225772255 830936716 345288126 867057492 304809101 909767878 483914457 277594569 907263424 408686711 957415327 946223076 645541944 566569353 98864356 461005538 253036757 455692677 808392035 651531179 197504899 608324782 139796693 425152587 78067563 456408989 987643798 218409673 922428422 333651257 92482914 708308643 467746800 322892491 108310986 692517049 967368078 224001654 670729414 75177664 138591579 103300483 425968901 756859883 70824489 46176020 520350482 948800138 799256147 933604677 691058126 233340714 800739187 75444661 466865523 920169537 472826226 252804801 298190609 758026543 401381135 252220914 783268468 175347897 436920205 255155295 893917121 39549691 299882686 506758684 539762722 125919002 404845693 290580612 550861678 753752061 156412419 374068459 452727017 740174073 66756762 496693076 304725837 722517725 762370975 425472652 502834705 682566397 822666949 117191681 303554574 626915950 808058923 718882536 545060134 847159761 538258722 614568978 458185846 83648963 618441659 449775645 702570449 770949395 439318035 296054115 771614272 95708086 628271571 591795622 252477855 331660903 4662305 193842864 879866975 219062002 958529637 963566227 12653639 677316302 381642287 168176838 933327741 16354362 642310027 739570819 29172601 633153110 350921116 566759563 187209659 767734410 28989830 937181026 295623353 603003823 191272630 546995824 877288187 395078380 798117172 634285733 57700970 443937377 113924052 693375713 352463312 443481736 594001197 948799013 256356041 432343636 725275729 735575822 429373008 522680876 269509977 1682907 192223656 12951520 196531801 247156034 279180702 452315910 288557146 849103389 661707144 246043736 491436749 970100740 763531844 997760477 728931842 127898017 575511477 108886494 694197417 165648762 877613362 6939548 264056169 981269104 934422085 521689532 120511901 804407592 324553350 847209585 685413854 590950856 305163270 916640203 109448831 908711411 725367576 129069508 25262540 894411465 302717313 550758175 984466532 670398492 214014796 719237456 52421195 323941625 651440620 707107288 114255620 503945970 811728249 841108645 623546534 185217631 119110006 475309590 506142852 480917630 281939720 730816491 933012295 586120340 174973782 341039034 364864058 326571765 791964097 107977363 440900380 302134255 751870592 667611186 767813466 917234935 426983697 291209945 158938821 29004942 536743963 397090030 518463342 617790841 872680113 275118909 742972007 809784682 877443680 81650005 677513398 99061778 983433317 638174249 105492477 850708530 760172855 266310907 921476511 914252448 473588625 672513172 815064096 473031369 454884774 969976806 715001738 92933601 410463298 487038653 373294555 319692259 940012556 403354859 624169432 109360857 680528296 114971721 111744500 775238323 381039130 178930510 739870352 369137799 947114943 36935505 975275084 947738407 626604731 523524787 309708466 635021771 243573298 499906411 447226933 753973808 100249069 157084637 368075371 988971006 154664473 723267312 25618559 202325351 695526268 406422568 454073470 214199858 221281945 432240257 192567363 593030673 425728266 919568774 548755367 131339333 907809859 568290488 535521788 553304169 823146800 49830316 589883927 993067870 564480411 976109589 351409703 969093645 978668201 346681576 554404670 621505055 901608744 784562464 338517761 579364819 155010707 162209904 468121934 580839114 356485267 313339768 623893846 948085466 643285622 402665399 130664346 855828898 919225361 561119795 28884133 612246940 229620239 408408597 717120381 690902788 344845833 856291357 275285242 978809601 827999679 820856792 820500101 490266301 105195287 677775353 406701289 754435346 184292435 225425342 568085646 147108476 667438377 709645648 9108826 634926242 129960765 840499120 177008489 613374793 634223667 103562855 869662502 539434757 514993219 403118869 279143205 391006429 278423154 638897363 662375062 947920789 240148051 381163884 544526022 379698771 473227424 951910880 846663863 553738660 946537334 512418056 801005298 860520579 151716254 673009679 616997445 130822764 751001857 307023629 176320988 168832911 836191809 513666374 100905742 229136504 423760394 743579600 440184986 8980632 191792368 135894668 572424967 777106519 290472605 391044365 141897183 19387262 436216475 142554016 266710730 4842122 226687329 557696878 291434137 482442081 598778855 712248374 542844114 906032793 966885180 815215724 412869603 296791092 886377457 674233920 558992434 104650824 308541609 443930960 212909313 225564051 908005923 962881408 682284375 240664409 372340627 532337938 86212146 540168642 436146616 894110414 79989390 993792206 16325338 270184907 548882174 395792245 259259102 781170717 232294892 362992275 115981333 332448062 314312904 867089652 276914913 812206856 287109172 277543981 973111791 987096659 598274346 704788185 544139233 904511680 112886152 934140382 897113644 551062685 370725743 377367948 545543210 173042826 652598525 433278429 381674008 604528203 660195440 293902292 231215735 907056925 149550825 267515631 470566606 545823714 803951459 269849704 646327415 383413011 314658277 831290380 526588714 866061030 275215026 72003882 82633082 475759082 635423958 391488857 407472218 788978879 817728365 795256956 271894478 150252617 328331424 100118208 527495637 89386544 172286325 630570128 127579436 769629331 776390410 618698603 77622198 278851538 526757530 855646775 476506994 279626903 599298765 480626320 557550317 835871565 169661763 137660686 802098967 917083133 616592580 528817950 672781092 952541854 973150692 979726735 398101241 112106629 712948538 472073417 815499771 313205746 181914250 558398215 180145955 957344107 918235059 933680064 834115108 298889664 994935716 33783678 714242330 949072319 933496324 421532592 888830285 19824615 726481796 218198365 705173391 442408357 316986064 336808091 813796799 2758721 803189190 761313715 717526685 687893700 902776315 565270584 511852091 454606541 728063155 562883975 289655671 926600268 226105817 479030111 633252431 265293361 440353905 881204413 135891656 355729670 388314046 26501921 563005046 784631018 616038555 883794970 634642260 156608008 732451828 183982412 181699357 364867458 786526194 275125152 872721805 89556337 490527963 937566305 221048916 65207034 3487790 553079338 368851464 731656444 963995158 339762169 683521140 361699808 740418388 905887100 530808351 183545221 126310496 860719725 474053698 875709080 1771200 800520030 627613682 231142628 381558201 197100325 168562633 935814833 732504517 687231660 620678655 211518364 7925170 984522966 359166879 712738631 359505359 366270699 935662524 15414658 958867891 780394683 787030612 240058385 898133641 556950170 936761944 22802398 429320141 770800320 238358007 99743290 14144057 429083622 540545441 328949814 491962289 746747408 20964720 139052445 867491881 219589642 919555357 596181901 227885914 623755756 454126983 651713359 25212104 458430795 995290945 966013828 277552406 740116276 339567286 843938003 428848811 482935451 66601678 431386680 320649848 545882722 822270379 746055488 216623287 942663923 855671070 712020685 790248039 103217518 249824164 155329811 987736408 327825330 544108901 909202845 462247499 73204128 954739937 973941127 971783437 967986137 991306069 82297630 831411419 569455894 718122626 31659181 155402374 434901104 214589805 383172394 165411653 836352283 860612862 186225014 745207131 394332550 546251695 574799928 321160344 3506837 395220401 824710588 252459873 927407309 84484659 610885973 698521163 124863585 689740293 89096985 583135296 229793937 82968146 963939377 374071890 118543409 544126475 482984993 791135605 370094829 884019628 760488800 931841492 212905174 508499610 257709291 882275961 329471821 763786079 273195958 715939460 697711650 529395477 474695221 890343870 691333752 864426748 42802258 945852371 693963639 706294453 757383927 468392347 372877239 205637828 241087560 749351170 839533602 136130321 208348140 269171175 544208471 518577189 462871086 838512960 486113099 82218565 169700509 23516546 925584323 479640616 353752616 450432942 530839153 691195572 183995079 801226743 53532579 761234775 128099538 64601722 414521786 920826274 202296798 187861955 891261704 754243383 729913109 344471886 997462456 418930974 493989938 27494332 106938984 286247313 618932880 199319228 944377754 437508671 556984907 193303691 799590427 540866193 807884155 265945553 397850458 443404161 723802489 794967090 714602130 279138183 409372897 153422837 140263988 793121137 29341054 172365567 368646241 915943056 380124921 931469188 538591127 1768942 326269887 108329849 738565374 888748337 230194125 359392840 29655536 373293692 347824815 105884973 204284836 743770307 769433366 865458430 173579347 278892380 408580586 750960271 866782063 280355078 427058169 512228912 673485279 904840777 868794282 658237829 5907382 718298749 687723155 237170201 954795345 956134557 151122239 123319626 146336738 194112044 678112403 570846907 368460839 262263825 660433759 683524993 914872385 679908112 445244919 481293100 889164340 889311755 59196239 282159599 458869000 633324959 265134557 970886342 46394976 344864894 534074369 166846778 344012009 650475711 764010204 868608499 70105568 296921763 661959662 187463451 424152164 238162102 274814123 412557552 116956917 814352488 676490998 53955419 288201108 918449517 193415516 1156739 727784939 579423520 580859666 840527928 121556284 179338116 36200779 666140810 266299163 937168355 978792087 887648033 622715209 820277783 859469455 184522856 475504258 622529388 891794420 348589099 587900978 966872955 792173605 605793626 953790814 592852356 703191999 448825339 704013913 651459987 480439090 365359724 156064872 177203078 814995904 43759573 285648189 141632211 849049235 613074322 116209502 818035478 107622163 937866156 497381473 317741475 85498126 283024546 778761649 224169439 320059337 723323935 973725451 329336075 427500752 174773819 386441293 484582922 481792309 277830963 822709359 364946313 820686129 550339103 938806159 336833592 793032353 754163323 91048661 70097936 551720372 861562701 662790743 400388129 605034184 80502730 630571180 59084056 183388283 895783381 940973974 280214923 78715213 254374126 136615751 808568647 707201876 212374013 966201351 471439903 986130828 403971255 309502136 957885021 908648613 893909624 752110065 27752618 803739692 267201170 995178770 174118055 913500243 100925081 556873915 324057003 138083079 174146806 666096543 751627636 72933380 552073727 51305215 955716301 854246963 723043648 993800152 440125024 658680677 429255024 490790869 111639711 944052605 626996970 428977131 5368264 963617524 799636235 877026349 990763447 728620748 507718733 498044539 219312638 582051560 798667285 596988244 558588831 457126533 591352985 712857901 369167051 988473321 725356695 18736227 240577538 700669821 900870756 97468453 463140533 982517984 823494152 432859363 547560399 925211641 513580439 682797584 57672197 712307705 908619928 495666363 695534851 864480675 255400254 213159958 504225929 54028480 664517631 526755558 661869502 301692190 865496057 482701597 350580273 231238688 189243630 25249698 969524018 586620747 487388822 903356302 604872530 739317769 616543211 235863034 493328971 323531193 68194788 89675274 33231929 957088214 592969131 805701323 91290435 313428481 145026226 602972219 352205541 24419824 805121689 597528516 400349533 873659265 972276708 498112178 102528538 550584294 430181579 583848360 665495022 999114622 960007374 321276548 832001737 746468448 858907876 659780009 509904438 595144579 275770714 438606952 254007817 451307802 685003407 861587081 627861052 291405356 924439634 765654850 617502671 344865115 647885851 408894348 149394901 428244523 103473973 96608794 400627317 6411085 898319939 519762303 1482782 594321477 727299220 629810761 562847532 373075346 387327708 499816093 252182158 192090216 249878306 754123524 551264141 192106844 484328250 472176191 206701550 718552515 374940621 391883472 662720278 481920999 369332962 327205166 971238127 150024073 652663216 98378318 97644359 483494853 346579663 72953058 190234667 212755623 876501285 775262457 440732496 462267551 414381855 682073335 387105028 811618397 325142844 163844970 261959654 236848013 280144070 392634364 80195376 873479890 381119899 113126493 942751344 586216174 172529412 505703866 788704916 494442556 432479574 177735392 368823253 578997101 522231453 327114310 853207351 528098618 807866431 996456777 439429085 669847371 462600108 716145016 581334217 789324244 895639045 847874936 468015148 187816771 893856447 995594466 454925496 771907488 673710408 334090537 434620587 413961047 201421331 881236255 732849110 689841262 853880890 337796198 684706460 785983885 929319835 123081565 115386156 673415118 870098783 741724891 377930268 528873042 184984296 783722759 145450765 279736346 386166878 418124927 422467853 956424145 945308841 711604996 899530168 444433285 618700727 441539288 231558504 493371688 548284595 281533434 334351612 437673752 848898568 250040878 194495 564036667 900454920 552403114 210616593 644536334 275135306 461965288 745738034 159828337 898731875 725722336 954470748 987258131 340280484 397330999 680687895 222678905 11926642 413411731 720703130 271099792 390531150 293106102 667923131 269311827 547961968 890035333 618238435 932902700 551629351 41073854 492075405 773989790 516151865 963903749 447108696 733802882 234190066 387585115 826262535 48551825 159653368 557896706 200319430 31010020 429583271 720543042 967796375 268416956 552752707 372972504 16845843 685989683 128260908 800376797 59125714 198972040 125065672 295446172 370077301 9796527 532954018 13871465 169752341 51647403 147316516 784678697 440408883 21900214 220928449 59165401 795161021 22594808 352151906 316265505 475038735 422717097 188378847 287294549 892167919 65294523 763650595 531186123 268418596 880771844 632783958 348327894 34635140 685263381 307757536 260950487 107244718 110466550 619711292 551132842 709787870 580948519 218102624 3875258 311938875 525622844 503925155 337292654 690569385 943887070 221237323 428520019 477136488 738973313 390248468 293943489 147667678 667863389 134253769 773339049 62149543 72010737 821830567 382763942 369430228 505578024 22660688 59865278 475702671 860163723 121755382 295270017 847566736 956463684 855008116 738423029 148231278 924751133 654720460 42847367 688326719 773877989 69243209 917543984 304252988 171190447 488005355 733623409 629969340 62078110 404564814 484374081 146543294 351379232 2981188 556558386 792645625 661680555 965914310 875596630 63758991 219594835 779706090 578288389 805403146 422342042 225665221 610629734 40719989 737373622 878792839 877717441 642664979 1659148 160498931 538414042 430393784 721379294 560814808 411496440 286064641 177890249 721077242 238015846 160142954 346777126 857900095 946832602 441107328 531015 223752392 920182676 450822305 684119921 406588985 616087500 69117155 495768395 21175064 299522366 141453842 459922036 370117704 697043280 297610346 810652290 683080990 288131482 220378617 121380519 121766862 418599948 343082262 880377141 998066011 644450140 974659729 901025352 838034314 335897946 894144902 293841350 759781442 813135154 845244728 884775238 412378229 806475173 670401772 550638647 195262603 429916121 195577089 416077131 153364323 787315146 819748511 943633944 833433098 130719458 473184061 941168208 610197214 584581957 22490908 669946848 170141374 490852009 442283283 647690934 736628241 245028615 290406376 322766456 695794632 968412169 31035371 984754933 612680160 751853801 687938937 926979986 258122326 766401749 563067568 104500160 584778287 415460673 961754606 986343072 726814909 318010135 432631036 535681588 25992480 810523237 621370906 890706893 58539781 644837143 952569508 696086126 590048934 144742937 410609841 14950655 523967956 587415114 601299042 344603942 524175890 720093838 707154662 345403975 179528112 25438044 638673932 73717901 990741308 170319358 122650188 132711764 289605527 869991103 171396369 918332896 421589671 639751354 4818811 676647808 617999362 701204208 63422608 288800389 413511569 986392228 428245327 56972468 393605629 915584474 387503912 44947241 121106672 82244933 493721537 879890865 878576197 882265481 301838208 101863950 402593141 515804377 344954581 889369507 599459304 192941685 817431257 57557367 708770516 805654167 185237083 716151102 92259713 723295118 59815223 291210129 647911023 51946928 937540652 282317634 268343583 68718875 984285008 548965707 929003535 3272497 427462672 387532438 829492806 722954972 288354623 89579452 56127084 433265369 359235505 279657400 849498723 968434069 710770587 568147758 985292897 872019274 986698706 730302412 434204841 473985127 609633079 798270221 626858598 799711268 175796856 214983769 966659787 191467671 470436653 195630715 189246048 60308039 642463540 163522115 291780010 659607867 752925324 112994848 23462010 327216556 567267166 669463271 828947112 926535958 301924482 516990447 194491170 67271963 69819643 300222665 709765486 948767165 909083378 762634559 486905613 360161730 317316879 915733859 172951836 639970626 785483267 732993830 181844940 199835517 467775452 650260799 343475096 871780261 2501505 496703398 505265109 339056258 783871568 241845700 239652372 162892331 937410425 608648066 905469378 690409875 831761930 590053216 910143947 936751460 97693821 10463527 148810345 746986717 320473465 665588230 846352323 265204563 183370947 467902482 56028123 679950741 227580892 292803595 471512161 713532514 136847145 648028501 916067209 787802328 23090446 66381695 698736546 777065746 384468146 455740054 269468072 611670714 978299507 591920434 329315237 543389110 178783250 256833788 300991731 745103999 774567829 570849089 582930083 455097475 276595101 370900578 816803684 137451484 311549532 806687287 714669847 606214228 301578952 216224146 293616701 392787400 47345263 274770244 833820167 215031803 105144608 15661771 611750402 809023168 961618579 866100271 77979794 639760818 726200446 903801853 229676339 294955728 746575411 803413206 496267451 608185099 903074743 262608218 99373700 247782970 822650391 653893803 435426680 830237807 214929533 813548629 672091333 325460083 8399778 736772464 966958748 65716170 273665517 980868343 240110151 215166687 219338814 621267942 895045927 72850958 487006069 17980804 959429260 602394088 39432300 913710019 951462341 16219813 113622556 355050913 632482015 493452308 14834016 447236339 983503901 274696715 237668181 501418080 999966062 543953018 822858125 171418367 126554724 751545154 286444783 103371352 82769885 490274970 212501039 690194517 220554047 595724582 946480817 999991734 288463143 563687056 383955892 611756848 426562094 877009684 566896357 298960937 443995446 873167401 930888073 888375541 592896403 682482810 253495900 560083418 508391426 933001718 663966317 486911665 56396680 543040874 306299885 191031127 88402418 113589998 425728089 409576521 262338892 547514586 314502578 41874814 308466635 209218919 307850317 507578816 371048414 891518549 402460089 198373524 70983919 43981085 465616147 353020723 789277655 724264361 952709942 821314846 565441875 436284775 678022698 13421754 320930224 218632958 658846519 889196300 505564965 117144991 271274410 655570007 10013172 587118485 228860029 923552863 666505531 418951173 184715492 276287767 489839165 355320010 246851627 126298500 641439233 39134848 200942356 714631768 206644991 636080703 66806408 817769660 662314183 283606756 489691863 267380846 436696180 739140442 573307536 519583675 449380921 956581560 197424826 650169378 321910026 756283092 879572975 207432595 195645607 879257645 352490665 742878979 551046857 226722092 591080241 207138122 697120220 157164745 560502655 434473489 599904741 499941425 558787712 563888866 999144610 318214227 965406330 323016988 904715581 652839566 194649633 541493684 285804219 915565230 492845050 372729059 414940563 585825336 980239755 684167356 228825072 572592351 921223119 571233246 261845596 665367575 950762893 606127466 278858451 39301337 908844158 823389216 622142551 825123386 569907014 374236109 464476168 427259602 575839179 435996929 874365305 933132068 100990968 485778053 250742388 891006288 993846508 700487196 277678962 947292697 313278414 982127608 310928579 514382283 277320083 585151060 80624774 427448109 223796118 218447275 581019794 620426745 817364678 126500338 857222288 300005752 784261995 50105790 19766715 135307851 309431431 698998492 731395214 875604206 874121969 641596969 897042700 998702337 931465396 558405341 446993327 206377952 542216131 3952722 632266523 876942200 791493328 107974395 101871425 186026763 104157877 518750169 392875411 107148577 389820280 273981854 471938666 603368050 447153850 966468316 849355606 405341647 838649391 716386787 41921682 475348999 138703398 806605219 792190839 609305371 222546267 149827705 364470661 226760865 25720831 493715486 229518994 101374759 629968365 916455439 158156728 346341487 891661209 729995665 462793346 941511799 123528366 949081178 388722115 272807 335550439 373822731 242670382 687365434 15500554 174604140 759966059 6556834 967379443 593328416 132610009 919970806 940639888 444688770 176783598 518605131 466879383 885882543 311826877 750320287 343098189 236838936 827591501 7333182 993104660 554559856 420704968 783442533 883343301 928950848 188503335 508835965 797595135 408249815 273671329 795610051 375009018 239028215 731541893 824411336 944265837 248744931 714427323 386904591 394593244 672931258 695425548 253403007 274488246 341521104 400540755 975959146 238751503 235125529 891116988 485041267 298187736 210071619 973880037 772720719 285706889 888492896 510757288 109334313 743898482 183767752 779178704 723726954 81893312 804341235 758343997 414041084 944805774 213868129 915035046 322893476 656556524 417669146 837462232 221037532 74914022 950582681 340658536 734621950 107628461 388452432 753075818 655549915 924147267 541851366 540288229 122223241 734184028 860537867 609277491 976653103 38993858 953699325 626509042 522677037 528838043 351277911 149649729 885179873 228451152 973600954 621814657 762813723 939085458 599802314 591784777 102398286 480025442 642722838 939366931 45222833 10487442 274544190 885652828 479698569 468340754 202007768 882872342 423336975 43956901 346533756 794487675 147538738 410077143 546778760 365748169 631445621 291459752 951067661 422102750 735178612 544615650 347591196 339048376 637198187 770006550 925485035 634262760 583642814 77372992 375709506 597652741 996456778 900169960 600237449 971575939 82856871 332914782 363062459 597496531 598023591 550537804 426777475 845469011 136012635 469520071 989738947 61593727 550335579 634703336 973674811 438809246 961912951 601322913 918659702 996187466 829536907 285304098 502341992 414955514 166309150 340390700 224573421 68886215 946357021 767177540 641207298 622189613 912461737 501687540 438415778 214520739 205859784 745272061 642181966 350104807 360518130 258772586 348813461 386676207 967989837 507951219 972479505 243534528 660040440 442723540 138353946 856845230 867566225 487572090 985872787 859969968 994763695 798094713 801074434 97382600 923520928 215536423 36264349 92999216 129327623 23042396 675810613 151508494 900798316 739337236 371558632 408701225 920720329 674470830 975735662 433397211 228133208 560347161 69758876 336440080 33945631 976379252 739292158 88426771 570436846 943728003 487070473 852331221 142152014 833210610 238412352 330156955 617668242 792575492 713774827 946244902 817406024 854333030 485845335 156764982 41810863 299511457 727274622 951580280 535035755 674549768 619907155 221919065 882085227 255670033 568441173 273220975 446933088 821415465 535482196 895070702 344472970 786967061 618755032 371717765 43882117 277295565 824742885 733887576 22282133 834332567 592462462 865337314 927351328 322917377 147989618 702479776 577975509 170345888 270516594 853698459 800756230 129546192 558269865 126918373 465923529 766267001 48783943 105151820 38580191 703870328 817652382 233734297 444547674 288452594 421238305 27187998 680142651 635533084 77638368 29908862 832012465 589659798 654430917 318176185 720165187 763961440 510221476 207908400 960766278 148766015 566266119 783250482 683409239 908454586 952541656 191415118 11745498 193631514 230606148 280731298 885265071 678640885 205461848 569857131 681018497 27876685 928268923 726012507 285704397 980519285 291826058 566950250 681575885 465339306 762177418 718142944 117108433 879754609 186536571 341886981 768227693 857745596 359629929 424421048 693380909 343967632 893908351 601829048 290132476 739118338 815616725 708345551 259212046 392106259 575693387 761456630 372581210 964899002 646088862 405982131 702186655 740040572 505192916 995555143 738418221 350029552 733877205 738786692 237104845 517940857 491724746 314845877 303967278 730713655 9575458 993850679 604798834 241241717 906111857 692562461 711760958 998597760 181086822 129762111 232740665 38759215 636419645 799417723 769567741 69582047 285201340 469039713 579838962 145293989 692753329 334300933 339738378 932232004 152851709 912552786 387136115 773731603 930686872 492904909 767510366 894339355 492011321 783334553 316270686 510725634 976815860 391479976 988118307 579392583 974385752 730430779 961544771 464958647 556665234 197975109 105127522 315212727 164253562 509243598 602110371 520306835 332973124 849151467 717442201 42196455 957939493 993687365 912907482 312107677 893165223 496514241 479935822 61259019 900237731 563351815 298257050 201104809 195663879 984033483 133375250 718634465 484844565 564847827 242766539 440083488 421983653 562734004 904574812 8448407 987344315 570627709 966456614 832247010 930284936 146735833 196226937 409674327 876358158 410137725 65294481 970984847 487376358 225020558 412649967 527633129 51784598 357041342 795460546 696266441 999008754 818877901 223388391 291192262 769719307 499280523 718085375 779739362 520064210 648342699 294347183 4705732 91456960 186115941 59440313 905613025 992120388 724590758 785626728 359872234 293519479 783629296 460562344 683102301 700213826 774678916 376480746 343142172 983584484 645355921 756404633 783283471 536199471 698098034 389420446 516163388 961109985 94761545 725563437 41458153 211746612 215560467 144976620 91835344 603906215 206835676 565417804 965666758 643075740 932432458 908973165 928607201 132003939 791297776 325183819 154739378 627946938 641685866 587379255 965724565 783366761 996916395 751701597 765744502 930886878 591086681 81618619 880368792 82573313 913624632 781188201 122220416 762867969 132166955 397985212 468715023 538208587 364250514 2617250 116242895 507234662 183387579 237838611 42539050 258381299 962523158 528844740 583440469 996089455 314480541 489420658 676469011 925649729 954449215 243958344 97361430 108673467 605956240 655333198 532355931 178826028 636297045 238285242 58533069 811135110 152198379 578081770 144558877 178873927 33973180 82272895 83190937 719803696 493300087 114694083 981216489 82953798 946947109 306834012 259804281 793329335 584413554 776100805 453492393 22897481 985896264 526202624 247734600 28189143 2393089 821556526 506342098 95334281 189215088 472743700 969907394 979342067 718938739 972482356 307460617 686387213 4268172 949535809 902148747 698335816 119956011 279585402 762616490 452625002 747188109 838772487 734495514 32206927 570324046 119757683 502219077 938634853 609413536 506033868 176041378 275393377 315400767 636428645 619931766 151196401 658022268 996658499 190372378 969924849 507524351 343938159 640066859 203966207 36560220 684606691 439594620 630016843 850190356 364270531 477235233 877902653 93638642 838784803 952703327 197116381 716706016 576096484 136015209 708985693 173893514 800777205 315691677 128274311 184175473 129863837 719461712 83848624 798136816 870403971 66455644 758096154 367658670 357335985 927953315 78044336 364453817 808938861 618818475 927820380 381241662 38960492 479216115 88236901 47204188 753082655 150101568 635799930 65047652 444067867 717221401 492513371 622547519 239867916 452140409 174448955 93299145 633984783 55036042 611593092 359794885 993018831 867317438 816818744 853144138 980584227 327987728 425952582 715266203 817287015 26895706 717982905 8657458 385545859 203419447 313669489 430785565 378930648 374689618 599012483 826744593 112132747 67454253 762007132 436071496 861717617 852454670 328621633 805586183 205963322 819135413 531993162 327589025 877943567 94718341 338743949 163430063 378763382 539222831 984807479 368858249 485975721 281066627 268911580 821771656 633973797 376058089 482472418 653374181 478805319 748932607 171947041 752610887 837171657 98937345 323659605 108117489 670965635 336622982 355138364 939938729 141708619 493204200 505348567 276517559 125869376 824028048 551581310 413531943 679079022 609454793 112411074 668399609 607546235 761103665 612731333 57789808 254392082 832758899 767564914 463499520 448288761 781268442 742654188 327453088 980417025 78918162 738503394 101758234 154277230 30281046 661355936 75701687 619120314 975767053 567768026 115079365 88211617 414082513 687158318 692844837 531075392 337549108 373487938 511933596 471630406 684291722 551287931 68247247 108981868 587372680 518006808 414745772 269653523 267421988 19310075 951994720 222701212 831524208 57673411 520373039 104522399 88826963 21107089 648168180 618619251 271915255 557702408 899292724 866816134 382728281 483541758 252865054 92317951 902464038 181838328 438001656 80171443 183878654 243067300 456018072 539408852 875921877 647568033 828964953 770664990 189127937 166962036 542432108 858077034 794886801 621246384 634210780 512398929 201493427 195139775 484046366 299927730 805929599 831145160 546733276 819477158 511831229 43587409 417703713 83112602 648865105 480541756 544790817 68634238 454569624 310940033 816365194 126967557 536173252 747771061 539796427 606920084 768513992 654107454 537070100 507645546 526962971 883629695 69569259 246114531 321740957 268792294 54323984 740470353 791870336 59912369 540322413 854978631 559591735 742455563 122915524 224403561 54766754 903803607 843231907 149318609 73369606 943937697 256061162 453451193 465190281 988932142 447368154 812103217 688297691 995945959 450666200 202398316 965226828 491750567 199769855 928106184 688061155 58552479 632093224 784736032 20898353 816518065 466790413 862767179 424635829 709325771 534028254 309406637 953838340 622497555 658155702 159410868 595509982 759020451 465875264 711625506 928553085 757073733 591521437 543862409 852343272 14496515 883082891 623914138 294145131 180919336 601695582 666481578 657627322 786949014 467189579 730910778 472077689 185396679 249745053 280479077 186914386 89444532 91088389 299143912 288999948 372451621 56264142 72643302 431278004 565235677 770133253 323189276 100833865 22295203 739824573 805464085 292615079 592601928 782675470 821678069 20292310 229539216 177732309 703218165 501288163 294482486 687820855 105763464 92573663 200781971 868020939 710210802 252243199 454979778 765748001 505836510 517167603 407356954 476519639 562096286 850324934 196410859 37427635 483004890 957481000 539570984 831537655 25347804 14962705 952917271 667469793 440390897 777892405 858403454 662743936 864099501 877618011 791409951 823787452 592696667 918602215 3584163 124035084 204072654 241122165 179974006 591813029 170236229 437634042 233443393 467461229 891404786 341587747 912486472 98995381 715678439 285514520 622760948 475150641 395122916 871770472 640693241 858145210 484467341 829810834 330709484 243677832 98390668 991848015 818688054 257986215 90705161 846290206 174157207 994612682 861309443 546590640 211252807 228668659 417343445 647884541 938923931 347992684 668992744 999799305 239501620 405685434 513372458 303495647 642346407 589490396 268972114 407927281 995146246 926642929 267801514 695404677 902439667 637149249 534429097 281822169 96237008 631914565 880108791 850876342 584895147 990095272 59397636 402575942 215243711 469352104 303539228 966484822 268693 352479162 658652179 500419480 88101003 441248013 425159383 526552611 792357109 430004778 798523955 789006672 838575295 65686105 784130430 677754763 870404566 278916987 576062109 181595961 980199341 608302296 655004140 286404582 972358590 854872738 27226285 949985293 650103260 360786970 60761557 389112959 877115611 827147037 289974959 929421543 280378279 319963962 252752572 631693753 812914265 488541555 324155130 484078455 388281074 736100143 820250243 711639500 57100992 419705672 355405332 316379615 960382911 922959761 861425715 408038768 288472283 934805273 715396804 273045745 78949774 537747265 372256596 506387641 315721749 706047316 289959901 731967583 503313761 837199503 259596936 323981982 489720118 451462231 816713649 599136105 868401801 434259523 122149368 875754829 566520483 613480892 275950714 889329759 73693146 331681949 142634563 796832447 615370099 225911162 531407499 33934713 750718751 54096247 283102398 323357319 589838394 62371387 936628046 871229901 602851902 63959901 623317837 372225417 174113657 827454940 519518505 546268179 798597112 611547940 579835349 480114586 729859469 615740402 274542325 233179354 684004221 935980422 798160528 549014821 708213196 793003921 302847744 992322747 532214897 803705926 389285566 52172290 367045101 181882474 672450832 623687143 21577376 969098052 256425305 530048934 335737536 894601362 267442926 38363080 507347798 554040532 486639983 18474266 324713377 376837332 879531682 652078740 698975898 197530594 939631540 624072323 574523344 294615418 498542523 906043205 64240105 995081798 918307865 91253327 124249048 624488244 957073342 151131310 490238396 756526305 907948458 546669825 64460429 117944381 543584518 208223655 894491263 236665084 823355627 440566904 425636748 377374327 503916868 424924286 957883769 298805350 507461440 830283150 599826720 478912624 402266669 7100436 698224231 949905658 922688178 454287326 750364617 484414055 16476702 35117659 725766355 836412065 812259953 24386623 293571470 236742336 406276232 219227360 543318926 836847670 710816078 356557251 647113811 328920942 322228237 595093619 929656656 574414248 538640569 122080803 374183955 658035933 356783062 301564683 528235955 708307347 181812510 467445137 472385993 199242521 153385313 221712763 343750792 434747292 334474735 438501914 288388240 110307293 586586979 681705570 166983296 310387599 447629200 692915812 14543327 446076244 383500650 109126478 545129311 722098904 225595980 585391025 128155226 207213927 667183416 983452565 958802791 212277566 983802552 32966043 25412036 636861561 793697433 687082149 497965871 574064073 636497578 224509673 345642450 825498939 189349322 596843296 634856136 121762484 618295734 127998589 492459268 801138450 67028099 707421810 342394845 917566174 396198922 740331237 604723746 849883659 503987100 651771225 820426599 609931358 428327147 950793217 175626715 236576986 545709471 556037859 462267768 90300211 279377385 429893672 94791074 982390047 624928132 141142437 16688990 634337594 379213785 621953456 289783696 497661818 88556506 243659868 836032090 864205139 108990116 36917917 966215584 41454145 772292120 539818867 849595551 272016809 614578859 395205467 980136993 712040544 564339733 998604428 811639284 120931466 549480747 814912539 153497494 533897328 682084645 831368926 885382059 54397009 950763805 474830708 149653911 609437539 817252863 740893490 389748987 773686641 424591067 995307338 558694090 159439484 470098939 418956741 380098357 195905666 95821167 808012414 490515123 64395357 241826782 947271305 428189082 248563878 5151786 919421289 269124942 378186099 680785894 411152524 642702111 9956577 822609369 151560557 131591097 895163934 866620365 891873458 691107746 589985411 172109600 196199074 34658115 837314301 900795514 934344946 484120214 678136257 756702094 458957783 809969853 688107671 972764326 316417681 249457340 158135030 428105033 439426434 985399788 428828736 313743872 854562543 38216953 184346109 861258132 963104130 485611690 4912250 177532470 138277261 106224862 440996532 729973336 997661121 961316953 117720713 420043407 82998455 68357965 430349767 390352525 84551893 719126772 46592839 925850556 140847280 425621816 20313533 746703741 931400511 631075734 182083560 434392196 999974021 462068006 439824617 196607278 889262624 388162395 704138114 212785918 837791547 607939665 733758455 827691585 237455158 967995038 441491613 753284028 170960078 209251670 129988815 617107272 763734658 544996975 76148914 881821263 979534494 941131133 719027682 273569430 98508991 694588524 269026978 144107574 335599923 498707093 860028386 35632930 147163930 186494191 327403397 515536986 624012441 886248804 377594321 287607761 538058684 837065055 454578564 536114679 402852533 851609900 440528563 651442009 909908713 731148903 614706243 886462706 631947386 630993745 155517230 335037838 533033477 388827461 696783859 610448717 626200752 969816287 513991541 586876463 567361021 620566778 136215539 249038691 200393084 338654705 361973852 870601821 635534855 348394940 765787453 7661962 361858593 680418071 692672539 156144337 84561768 690265792 239957257 451973631 235345463 200291490 771593585 576180928 37383280 638474842 939377904 884321029 170935599 974733620 498031276 785889619 183462899 574133665 375111269 808997587 377102851 843505651 76398585 437883977 251017800 96726227 252951218 911040305 790035418 119113831 252641662 143049512 155077148 182798711 682891786 719315161 599061543 123880946 468112051 633958821 714236447 490600097 335301475 975132989 699926134 666262552 621980254 863450161 575513921 215799233 729942996 997306315 53112652 4439424 201428901 933796405 226359051 211683119 675021309 221186957 454068903 478864821 753407258 660314420 496273759 46521608 761186715 368583316 882450486 793980610 316424024 523254231 279050074 351906301 415608620 375305770 874179286 983954337 244355701 722598783 594164643 833303902 748708761 214122681 927301655 989786629 75759338 202045913 227258230 316850717 211899396 460619272 539175872 951121453 833385479 859768631 458475053 211964276 227643529 149041801 490800042 870271330 652406543 326686907 369719110 727349888 741999736 766293214 325948843 231376507 48797627 318482871 293285834 61675090 595801487 825778314 97582803 774799474 770185798 98943390 405279546 23411890 504258382 713164431 184217518 184948514 400585394 203074260 836264246 449564940 458211493 532640589 603556116 974367950 402505026 29172347 164144561 657076185 612964583 23505452 300306789 590756352 69179151 709591127 518376132 607447183 764208406 107724939 890740992 481357392 279267350 99180746 287821450 547226270 743138055 91211142 999266759 446001570 450550929 985428665 723717810 140792400 384176824 52587577 12358452 36454108 663633340 256063391 654008923 964362360 302139732 510958978 806981779 829591360 766390924 708516990 704034573 631018157 922468598 306187869 546844292 729648961 989987439 402694682 716910763 186858623 226135827 965286669 260123272 790795414 682481029 485634765 901939269 291108241 79912716 644027891 940062094 810608258 471531580 713119888 197228585 18442208 27728986 332787467 618769700 334130316 942197644 475692762 327872274 170751598 203429006 908010976 291232171 933049562 184510043 246256959 862410207 761516555 657945599 809527386 416956862 746986324 175572209 51153269 258920034 357215980 253189918 916655124 100868134 820187582 584910675 140136754 504291327 132447945 506001775 490426919 817264627 222415631 485596171 101654502 5782472 765728029 597190006 296331968 209642500 76043083 190015735 576928613 488198916 548552362 358696949 596728377 506810318 513375371 681467352 979277287 511962891 672281114 320270477 157813849 558374013 395077028 909586138 256075276 100271098 314908118 696441570 822168783 642300082 665253318 748062663 419003410 472250288 919698296 74724475 895110861 383658698 282773302 333914641 475751034 770642722 496345873 44335495 947625450 259222293 287564658 153417536 248892020 718329363 399759797 898103665 12581652 896081995 589625632 334350660 33355024 255300194 817655235 83891949 986986837 653825290 49941983 701107980 465264428 869524541 490794749 323563651 515924101 908789096 417725518 312043866 602453020 608285842 53624930 695591422 928026178 758352354 437112008 777945661 775605995 923408845 388562916 637757675 616016944 266467931 62191553 25451391 839379311 972463990 791997609 199034410 999044808 505382808 217671678 264303859 552203930 976274484 930909028 423666522 568372163 54009269 652275344 239573344 573786238 314205441 987817878 127934891 820475003 471604658 782428690 193242057 474497584 851954880 396386589 808603977 925726597 351709768 981008069 53763425 904485567 334109551 182034323 66478678 925709070 816179085 630792548 893249446 291471586 117284428 761406679 274165390 738049820 403571888 450883711 336650298 422404621 245589575 309563809 320747176 55875797 539641339 693217274 103240791 724258588 121411974 796819558 58711038 176876646 562377744 130369077 46457610 305646455 846644059 831583426 877000619 410395128 324368299 553049246 67926195 898793239 440369973 793610652 824278470 157722512 537588609 474330530 335764753 69540665 618861450 103824081 606706983 1470019 962749345 383421112 951666663 479381521 596533170 922631744 778038656 757631659 963128412 910627363 622232977 688260386 518815734 746790918 848057237 348756598 19711712 964229868 872368555 131798300 957070039 175724526 134473388 622869012 109077876 149816333 805921929 364063480 242296953 108633195 469439224 208072552 956126565 497921762 77468858 948450779 499016401 91331747 254542693 544992497 531021179 558836206 280827733 675976263 292932981 276275811 971059053 763687540 235518314 676429729 285073007 648288664 456823674 788420847 67148935 856608063 887016502 117531438 955739222 490400485 761077220 511872624 464684211 314239620 723442369 278112628 289261876 277460384 214334476 210119124 843653538 338726491 35184882 566226321 306017085 277354034 783030746 276354295 674512884 705830459 124237991 881046569 689287154 956757135 253984628 885718606 465196720 77907450 206351039 348867804 766898434 137156875 367623245 359891208 184521720 569938359 401397043 8721018 189818756 401446424 724288835 359221909 164347049 550617072 645855271 493489823 374121687 700310128 732093062 309515580 140337819 855460527 928021895 677443128 607775997 152216846 714705838 999332122 751439159 301276071 358083654 528246111 51580385 423073489 216090104 945638861 39681680 588559202 471984462 201854556 778621612 210580065 402679884 645808422 383228439 404901537 997750553 506714375 144114330 200008073 329597438 457645216 527098521 634464572 701154998 179437433 555568874 384207911 16912099 996330843 508482864 362150312 363449066 884817652 881905090 276801693 627156325 244080171 992849705 434335746 744909319 463132466 779627620 850747128 441082411 821940366 856182126 749404090 599694360 814633735 235221615 448125485 27460522 729756344 945674546 300175525 496690905 248287169 109511795 968724437 442206719 672857464 806908208 784275311 285580736 96723418 184878050 890163269 643034028 811343210 951961003 666400695 848373936 224782139 347794254 31671395 916375931 474810506 79765395 69911120 311577520 975702546 859535638 172725529 524585969 514377163 666490584 482390522 772854535 325691757 245425365 478237295 239302988 558608700 385748853 525941714 771724109 359835760 561533946 800494790 399278675 947948406 119626201 716521097 603543030 863817263 649490209 292011609 206554614 463211137 374093387 739763619 656985355 61742504 191169903 465676602 824565755 582768863 353389600 550598236 576919501 702961629 610393933 239259744 211426965 903612125 207225741 209025024 500791561 369299272 216736614 280984617 341226425 396343430 319559799 343891577 699290971 632846038 274012890 951786188 86621980 174535685 115497459 959325446 902352827 826918289 894594739 353780106 150410527 823300539 919838111 226958029 887016135 863875906 709785040 414539408 576513437 161370897 717932005 39325760 979934181 979098660 371161011 162773463 631100354 143608288 213571827 826789877 586302585 686891445 638615566 138733330 792864385 169430874 497902047 994266504 805857534 822005304 526958607 710219017 884212195 862313997 326978449 211364666 552867137 402905720 98023277 246930837 241323051 313424392 844628756 349682542 369994240 245867088 565773565 153340871 149801173 127677890 646653817 142579515 962480437 327434533 804858002 541810094 237702430 339084019 863366536 426757312 757584143 635560324 648116880 908274268 352219616 856010224 515254300 587887544 264117654 731562736 183591839 876292605 779183404 319144120 284391892 242130148 69695100 704607509 680661842 375551240 706028714 910356448 734179568 484100971 980041984 447771865 461697940 560662175 699636917 179620333 113429812 25184346 563700152 232302215 189579385 793654972 16581524 888361383 52224672 614530993 28300418 654975184 328914908 5690960 428669069 562745615 376670832 711141512 183154533 934912400 742634860 498889582 869648473 463179060 626086126 602665413 3952852 998888081 510274119 540206000 728261508 139701282 702517991 811126658 316356311 383453851 392293668 515727747 94514592 795856314 346364042 377747909 487210700 416490673 411136485 491687791 965970159 303159527 496458545 2923696 768774911 20810142 146280008 754978016 574600874 501668173 224739976 420357761 744558277 690843498 49706179 654359721 890494626 305593440 43486923 950084900 943793741 139431699 238092261 968222047 93176654 241704467 312302333 11976418 687184559 773656856 98192274 57324100 505577776 193724523 673360286 2902247 902635705 840139333 202527575 610109277 408666268 507196485 417128169 774255644 911182285 312914436 373650911 372910619 335818946 154585019 829362600 904941844 418494201 718499158 851022908 547239928 726753093 157387165 697968930 971167300 255136868 212520188 897903045 904546783 645935627 229972601 3897712 42375610 973641320 467814097 823251606 592892707 927033889 580964437 446499001 698618834 417143882 349800246 607518307 597209022 883747994 946104306 560745893 691184100 340142690 566329458 29033428 442475678 72331172 591601626 134470195 822303273 391373714 388514985 359123277 395261861 192780901 177040858 660563829 771672474 325411184 659264101 594261878 876536003 110182942 100977065 378737802 667126972 377334206 278330294 666358550 81644058 262854499 600163165 782036077 449296720 11005787 378471214 704088702 465455054 540801137 899987206 411112414 631688005 430150577 73717438 253536966 556565596 952041193 18982967 660772600 549949079 206505103 858251460 646114315 314815487 140822569 723297942 948236296 544491264 51524265 598091671 309659219 885497083 798542405 520903530 491756030 143032327 358250452 496950279 427561182 17639239 565609122 124338229 393587241 219346782 796977886 403241510 59393809 611595255 125422196 979605109 78667285 653585274 146907977 750167846 871690891 636110085 871019689 776609776 376120048 903047826 541596019 597541736 877266995 182671539 909610622 577318418 603606622 155182449 462652334 315409584 678469123 138490395 968850235 481624447 718984650 342420206 892753565 18338614 303760595 509054197 69577402 146695813 43245797 693331315 201600204 703132878 368950898 242373250 432548450 117156192 770038789 644168839 285537295 470166936 533836786 477771181 654394305 145691438 368981223 612933509 287814039 678262450 579960821 225021372 820441488 868945208 106911182 560404047 157314858 209179295 563153405 609719408 456782782 590551341 243472809 642011036 156464528 511633926 868206834 942597291 37011675 34669265 821331799 622283537 100369723 752188885 633964283 17053586 954645322 325323224 370006827 524785322 448593344 63567031 667473991 598566589 670385555 367839508 103061318 115002327 886519379 156831912 535390982 839256467 91492423 62418607 705144753 224365084 71944141 719127393 95632698 454477850 358446156 276671647 953072785 593715678 850380202 192793291 957931377 185162971 361192126 666171206 807106442 883367023 659195396 241266960 310280391 998709282 66145479 921849989 962287103 26509968 121210460 596397506 560334771 10799605 746682587 578235391 361117255 266223036 697125950 396643506 294481176 787663400 118410993 504858437 702257220 731431866 354931844 627577002 663840235 187156716 899257143 913375289 167338250 837802203 562949037 344756148 858580669 378483288 126915875 320576503 815557773 10176510 455002129 828181244 344912355 49494627 583586821 322560842 858241657 684788366 805925732 525727494 323862468 521660214 622505526 294017613 623889592 395381187 829632585 411527317 694343682 964691426 41791849 645388334 542454662 6149672 779629331 600137654 630136515 558214230 289265905 138401234 446508233 88826698 769509916 724564718 400026370 201791529 926241830 280496883 140097567 761337329 329866979 133334436 165869291 870034610 181730207 852137786 754273690 492210400 519618135 988659352 253738517 590356950 185356095 339706874 40093628 510772264 582194041 848464803 773038170 202065197 441864667 291736500 425381134 719017417 64524035 649409851 32141418 563021038 74450815 315322591 803303001 931030232 202031957 57802324 378703245 689882321 777004702 206678340 572375673 982318161 719891716 466630609 714552531 435936561 200340342 327245265 697927160 606665476 668777793 966775209 450481328 698047335 769725964 631829105 814930533 286651804 707168922 939706633 589670656 817042391 204944780 117227735 102371746 718341769 783266396 86677691 490917238 194796918 946375963 822433693 670924619 983067695 854010640 246585526 477768847 467292035 454912361 403534536 295134813 932341571 586129383 228648204 440377886 412676487 95493520 316485181 768113321 172542868 720887648 536528362 774755628 764670850 662042765 890589885 237936685 760390917 759573825 366723151 989195815 858289840 848606810 807972919 767803817 932246257 137616440 429380653 274129874 192277061 659116693 726153642 983749619 844813635 643865860 203608933 780455436 630791341 358450362 932473291 452768292 357258635 312280387 828051608 431805457 254905086 657326544 113051832 874250795 899091035 505907510 190576165 965136255 848563170 168451828 10357882 885374045 296810574 984576656 705339292 754273461 425956428 306868109 606163634 284935649 343965941 307626718 543865542 543517256 944761591 962101028 726722761 205886368 845247006 352159486 103563305 839826883 632259141 149898050 864411966 451397791 994752905 524834357 87154499 211068276 642178557 693440009 832787852 338351111 138527934 822974514 225441691 715232519 552015042 375815145 586166440 585560582 958887919 520745109 575600187 889159956 850392114 405976095 535671322 767466368 534022118 245372030 427998600 763745333 20979831 666940257 696372395 251778356 1902756 17935729 265676797 88006300 150521974 836601184 57225164 743807362 290494347 627558271 975143915 805599839 369184250 334502237 403621482 891421646 567697259 527737622 371005751 947663783 354742914 212099461 83241837 931717863 276452359 830448755 339159310 87449747 872920338 562364318 6264235 406795496 815552241 329324690 864573984 196585757 3896462 745959049 20912141 118949850 887101963 147779448 165823845 714292634 975360598 319826757 473269817 57579398 456633707 806638299 583651946 240066136 368917407 71112354 505163799 124325098 28838464 567570675 988523648 766878862 250765549 299847652 873648500 250811720 599879281 50034803 321106932 966911666 52233707 103161361 429534605 442670567 166354772 112301400 975963291 374131012 311844834 303473228 833810834 496090020 617602406 7937041 444916229 744656503 74713061 431816734 518487860 490320021 319096952 54273789 858180504 871330748 955739168 74938513 514631374 870418086 972506628 459702360 873791486 747998546 667896364 343798856 502294682 839424441 410875689 90779502 771404714 977809581 243435495 788407457 344800955 556077511 276552897 31823408 82056107 340515900 447625096 230259960 286429194 56327352 462035091 923111688 918799687 829106405 223058739 735700614 993131768 807116301 172713105 337852674 934499814 722724780 92525621 563232258 339167463 249028000 613919553 607265354 803809432 338549527 455580068 563661039 906985964 133922183 170111333 636125377 629863351 16270023 96959626 182246454 582976239 135764547 570728570 504299740 752804050 633299911 936433187 873628338 5175073 27387328 921045337 615343965 975507786 500104778 224644649 125160518 524020886 272203725 663555974 441294667 891171271 770093459 384004186 196044144 99340036 761541907 830943106 71263832 699144043 277894604 105040665 84503946 551983854 65933181 215779621 668762427 206138231 861729058 260250797 376377980 17592849 737226179 496447729 538936680 554996416 255737913 6436339 968811548 253179771 623596526 779090696 722265612 267900917 317333899 466051787 617300504 833504206 363079168 344144930 996979851 430288344 23540530 259954244 46402637 875128523 480085527 54514354 382169022 437291593 732694780 524973829 600790636 420105971 650242188 416152039 767181004 792613265 293742901 782586742 518313408 364896700 212249946 839268726 821651641 268360210 598956176 586107593 472068629 618508170 589896368 856028479 163340844 503114209 19616717 121394813 307404572 394177991 629696063 510321598 519596304 67854753 206474756 199416200 571961316 785427366 139793137 954948599 787433128 289649762 107553694 422261849 555375218 118043499 497208294 909736528 172177283 692791309 203393977 263966908 928722084 128629933 361807456 833331429 952482108 610109248 878927592 461744805 182931083 203958667 47674288 480440181 224076062 956716648 4493719 980484762 780541659 473735933 495855395 400633578 874926134 852450897 454128824 151279433 214671351 542246990 420206392 400059136 794384187 166925606 309466727 538587133 528980495 927718347 213570883 724580631 645558633 618858654 753477784 780148752 343374515 90629678 34615299 835153607 106998957 440165190 335412142 105888219 364696818 855571093 652494447 264219617 471732991 176620570 860277615 226633458 817793649 489400275 670266323 101366105 524326482 545809496 689820444 468323844 422927427 351200333 536231396 836890964 538241324 227253820 904731585 546186666 702290110 320069968 798525259 886867910 475219547 514295096 477228055 980407261 824274422 685578873 85462391 994504883 831160237 117702282 412363945 946643466 13248533 859206560 538838918 435138924 813658912 310023410 856486119 572094926 603766973 527775436 332983524 779698660 563554252 751327749 725442938 646250283 878893743 716365327 358975906 565564739 555354917 356395163 990368825 593075513 412255635 25588700 441808206 50798073 72694142 367771567 97887016 23488744 48262238 716046118 748710877 44230395 972546395 933664713 525290988 64073632 168680060 253132810 940530316 288848061 677469060 306500431 805050995 45611541 949182601 473770000 771008696 61134546 94266711 634014224 175416653 210013773 890934054 599805407 29576602 580852507 413616758 235316510 784027065 751579553 423285384 692146506 742006959 905518770 574353088 129281437 989835014 760458828 379912208 793729767 231176859 241475380 695866711 32437908 862821427 658299062 850924885 201901125 216187637 87522050 470305417 301496954 18230582 884833701 833264946 336569312 975488766 380826836 446229172 171584880 25771002 411374344 252133077 990089149 701225576 940218150 930631381 633537673 914583121 376727943 179912441 201944744 505539154 75622956 792222341 726030916 928153329 529377299 101035906 680203890 323812937 975626384 357434629 54823838 811695867 797367071 410382556 784499352 341576848 983534766 741305203 465255706 363781428 487500606 560945922 871708036 41988756 260109644 956417469 657399108 902333410 60946477 109821840 946536052 820766706 487836621 81939609 531300278 608757971 201545068 379868202 355145892 565634434 612694288 307357702 930302175 202313494 846847990 313411984 659993913 583617038 137086129 946678527 366931642 491144085 251978164 60201195 880165431 602059033 611480532 741359063 912060356 620922094 308764374 294654282 359506913 770774559 956756293 307039534 42548555 355275546 76992889 529820857 332073633 849035880 144956539 14946795 503758600 529993990 963879166 727891255 181452514 478051438 759925376 533971648 174634706 815523189 397685375 858815475 246426513 863380564 786740969 447862061 435747890 949113918 900962203 704719808 928635215 867092503 163753904 775301598 904036308 931676850 373548021 556303879 80887492 66152042 46277017 334358447 963992602 728289440 623247456 655864719 412410165 269971321 668181102 391265244 418576708 597710836 253840941 465166599 541910421 547890004 988929719 776031119 533400115 104405680 334199284 94588661 173231957 432882874 148199536 720159665 992819577 717085151 220603226 757831560 897056526 105477940 165428016 348595369 375323395 995916033 122260396 32968121 851077749 637683285 8891201 365335875 121776559 299155397 873891378 364319731 911459506 940023779 535485965 151995198 86698472 44124953 333134785 119549030 532369998 175044745 621168022 511157058 602066901 874475375 275246060 559102852 87652628 543094274 962514946 508121816 490181483 514816406 287116261 168385837 708235694 886256935 480502988 819154817 143795504 832633391 657840757 316763188 525354321 640623033 521804807 324442301 523136803 239137986 479347593 851214940 500895663 790108630 577339931 173814622 810999135 255275459 796625480 598142101 20191589 315937795 916802654 62404283 901548174 541980617 914935598 445409869 938962785 270538588 338200881 247697716 657942003 651332581 150614856 863724507 70269885 241989577 61849462 366030274 342454098 611673422 532641341 675733605 449085481 821642221 557929704 480504430 795167296 645138639 649101369 943109693 416798585 306667993 484573349 814890622 307748885 707477648 554642269 831222279 330633468 817109728 131643004 634006834 476993233 79601075 819843687 276692686 572806624 236543173 194453482 125459320 156945957 214044653 866686754 186152372 910489558 677805587 204647288 440644631 616038777 971785620 278567373 435039014 762543712 996369689 420191008 670328492 751334038 61835461 996421040 786668515 209594590 353237781 83009200 153652050 105157985 414995939 644851770 689784447 237282497 909208671 471104137 1033457 746240166 981080913 9059683 688970150 855960351 978142099 165108781 347499957 536650299 101294436 732048366 287678878 323623475 558512276 241582203 674412679 601036976 740880300 465870247 625502995 797156140 557938532 235879344 855599718 754018870 381324914 879866933 670159173 273911214 669893980 246534404 746976932 109570716 203809688 767608752 161044721 278223077 281914438 725990920 685282615 760532351 838173976 55706717 131392782 762625396 447323551 91016798 763635408 956307401 94782336 154886788 65009579 680546625 686635037 273331575 315216004 886060363 485819139 344842633 979219347 497079306 605575708 768881322 701107092 200945809 877012824 138210662 173740792 874949829 469972473 727132296 770655175 313224044 770215300 345615702 876483094 513840780 521862185 361880833 380023551 773203305 647584511 199720232 508818810 501053221 670196713 797239192 298170012 929854510 215861442 191793726 39054246 260192076 945111068 394011918 572193889 56830735 779020283 906520003 87617076 935061621 272002597 309949586 336141647 626069024 486956051 374957382 227606978 774865520 502439611 854733849 371859329 8668441 509460464 372951201 732679470 978942298 84531902 248780613 139011700 938375258 377845724 606039214 96185407 39925617 140500120 715859496 557729561 526854466 691257497 278315757 374975593 41410693 361541280 249224142 755375158 611059463 838324663 164742969 863214051 695839884 516880132 410856250 716557633 955869430 21006898 858063118 228684987 625468534 815484427 146229520 738209636 685556473 303016504 12878427 196838578 859824474 505851928 569026405 692194585 201375088 695647420 601588633 622034748 273915361 72399080 979525272 341758674 365496166 909218321 525845254 77275461 585739655 448255535 606663013 235668077 99381980 908747806 859414770 35311811 241144602 983389436 456302410 370231832 514658825 639600136 41477584 997646426 797559101 941292857 263509914 173112268 82794088 553731438 715263820 276861351 986387463 62419678 912306306 977927921 551090223 780050500 519368833 36184760 636529390 478482294 184038785 100444762 243775755 60715041 67191820 623202880 266995902 749576286 205747124 131961889 618411550 730654313 52732108 215708692 819176929 634050811 988611536 4314414 251297322 360879454 199255942 236497433 775424782 216892555 901633956 529318592 323912736 314400007 830709375 741557669 5383555 772677368 310192137 641695513 529281757 932239044 754436478 545809263 67212595 931062557 106799870 953162330 469233312 29459488 278883464 548290231 135567496 135773888 549065028 437138100 411644152 969835648 237967162 840831525 600728582 673170782 378228059 562824749 6310754 323650652 474883466 110700693 472547 821497352 61808818 358435848 799882435 610912883 553793970 563653279 209423228 694177944 647498643 724408141 314746066 771234891 400017134 828096613 72309670 31628328 725477204 727941875 393141285 782919358 377748259 464606077 78919531 945046146 604515197 592670658 125512857 957524430 686218832 114298490 472720239 786476166 842867494 297261793 400269324 463252 713951718 566623308 8512701 184522349 428621661 6628648 757095140 298377253 918087903 596236395 415619074 7718555 461166516 601857880 286496374 165879932 901492019 49601305 753515483 837988625 594838846 524179454 611428723 38265332 723147370 979980230 181987916 3248980 340569834 719231807 243207506 286647186 953609328 631235858 874603492 961019126 271633224 683272693 256839708 196452110 59122280 506857804 397486619 580104864 725301868 202944288 317562250 779017338 220752127 980759414 379802722 276651984 534689829 232430785 747081606 255736874 142291989 421622243 94050464 837196324 980190827 540678561 150213541 860557674 372446298 939554573 339748177 294849128 212514864 950965949 122280402 116333930 869351777 523365462 647196310 734598897 427979200 158687846 112463611 575123492 866078865 345645058 204531087 356766425 319606631 792619054 442181774 331769354 902278357 949981455 782319695 98884610 70351259 582229729 974564754 132132777 594475854 735724313 952451790 155193492 968836699 67922493 317501728 509799770 893719846 794833440 708206808 719305811 495735872 363158230 526772497 618963160 893519369 179157630 52693299 664954193 160448466 904025791 101247976 984424835 832961160 632500740 41371781 728500905 967833814 430061020 350309533 924415440 289708563 363655724 751445728 844081302 436930503 487017307 179685430 189579931 383424032 672756336 435381531 654858171 39030731 954818960 364531605 86761125 113180403 735958918 595003529 730296445 517911957 768535513 252193600 420111000 880940166 484150716 285390496 397525929 41692063 539759143 389844544 18741318 222372958 269950461 791606318 992911027 379956960 737593797 821732691 692656535 985603765 656735605 174165761 222719718 831436530 340981963 833429179 337062464 342748608 721128466 808127284 237284074 241232316 183348211 896149508 613961303 880247606 151332188 276948543 459039781 922213645 792582499 557735886 948122249 39887726 18092188 870882997 596779446 141998066 336876343 937807813 203269460 964054554 259798436 381682290 203701429 716923988 755446280 289206874 496239148 663364895 467448529 484506931 25712833 497607110 628841398 651006862 58205321 654846114 841554866 842658297 577754549 938062284 16280853 723606431 775478006 142620200 214483074 945274799 587985222 350108729 427766869 932120058 194283206 23532517 166934751 541551540 735532319 973043653 920099282 177568591 159002874 358859159 830329690 503077393 208874354 769296032 288659502 365609603 785128061 624152243 395222474 481256962 722115337 323202024 801296320 290949934 862932264 898335554 426965506 772330985 402522201 760126412 749095485 405780495 824875208 576134998 43958111 923929245 273288332 172356266 375460624 919963604 664396725 944527278 125212327 400050652 906372252 502676363 54944380 999107714 203991054 194980921 770201431 722718161 585543140 488973995 32721666 789012422 467410028 493566499 771456902 455119991 157068595 861063791 991824627 629422168 79358732 952517157 230816663 881545 162501042 536309600 592066198 926317054 868922257 587079756 984547277 969539390 975670394 134464100 718657740 772954867 31388751 753692290 271109346 687379502 33541296 754178799 935646331 278007178 175334653 871074220 763285901 30761721 3498251 907896687 230446560 266419410 575442639 774630440 25669799 521323216 939792776 489179305 284373574 452484121 269030410 506494326 971483661 349516208 117410022 492557693 853189440 593781731 792083324 229240129 30093758 844301570 790437328 727437303 2078938 550164324 741837966 489264718 847919594 850680433 283068059 681634669 30607343 801743071 88121636 126415924 616904325 950039426 917997263 546035833 435603901 325785 941977381 671014608 812880319 764340363 599235678 913939312 965597464 411523603 329548111 837940837 960008570 754595057 398323773 834453619 296879069 54047195 471684191 148071253 431395780 365482341 113048550 338347514 167641881 151571446 901331390 350177986 739514889 81069295 404064571 336623275 166000605 255720778 679996367 370695512 701763282 204022270 290463113 567996349 595776891 26621020 81681053 620071556 645768664 212188706 650527468 497834090 120975261 320362763 636789305 203277302 444325251 80540976 282280554 636079942 557856319 672524476 40786026 734876518 518257070 373410964 956565325 676492058 740537964 776080498 599857187 134823293 762900894 505916327 199019112 755917978 419967455 755207237 613865073 515777838 651628866 858129232 785205963 780952761 748267698 448262880 562789955 460317130 784856684 172605746 692420754 79549018 536679841 143999617 661928912 184412874 92206926 581959178 860308944 722618997 192929507 597661616 944008184 960472664 912802724 91500167 117783463 708018849 463334738 956788337 40567066 263598906 379403462 241054488 485648489 810962697 775669349 489559610 736255715 661740227 824276575 843052558 22994753 169172119 702735000 61032716 974069262 801894630 951006713 249662359 21479404 92103352 119429535 711332669 703844254 631617908 301384526 229867484 555451932 489104664 401488513 961837705 790424614 447634086 808150024 604492238 817641994 652016969 712652454 205755573 649897598 990644861 799705795 645964966 908606573 416339372 589603427 78004324 824434042 693040267 149849767 374493560 147403218 143494111 204690813 741943424 619974168 715537579 935733294 224370627 231870261 743100339 182529029 128541235 287326298 784825315 351033469 691633412 259990812 7609543 47915725 21013855 123098593 777882438 281610632 237421974 183075758 892585235 55549955 877105897 410523551 237822883 925311604 168885074 926602405 633316650 426570558 51265953 371019206 682888947 874625366 923373469 521973172 3902154 500747156 669320940 318230644 610531634 235614705 637431551 279006646 241935921 685897121 143427068 484547756 27880343 362971938 504114881 873018038 512098066 782379076 317147004 300055830 285564286 319617470 159496363 271596578 657467788 365582895 140709319 241825843 854439353 698690809 458039596 246217537 954726514 806773160 190184973 267304926 402804993 947828146 65394552 857445552 771892771 512925412 352748382 121246618 901165887 381917534 495353303 117522943 31947767 768138427 670473651 266647210 895115667 185486223 488465840 400145231 248437486 891346596 44908752 653617618 405404953 358393682 236609537 53384578 324998130 966041526 190609320 721502317 888844366 435084152 634119173 579191360 684039688 339744929 881925731 373604168 810476573 190373732 182326414 553180634 535566383 444625452 287627058 1638387 98634509 708151515 384879288 868638888 730924356 319720364 247161044 474359323 685343683 770537001 640237671 174710299 584092065 582534340 705079512 874427810 738531501 105068642 242963088 260050740 988633553 543662549 724444934 170745516 492312700 410917528 375852388 143019004 645438053 31623763 39667300 929462319 513443252 993558420 476635698 834182649 895796451 612296481 188658480 213595075 803993763 467224939 143927651 148790436 32665149 460617922 489378351 597564658 777882834 989271873 987330581 691376130 177815977 182619414 909704406 584023577 442855516 373040336 283146360 512384692 146621339 580769147 706835445 127262918 521049995 219724169 848801388 365656182 646890828 989581675 432722620 930704208 315780006 492774835 393004619 943200987 724654045 757918147 6424435 500123797 763900585 61098303 628686423 434061062 201946141 290152750 203868449 391091235 707205256 730199111 56204211 494695987 566655095 468321923 69631795 591604854 93827665 768633162 609406172 919809624 160186240 46321986 532137533 625263934 119069613 619994097 490498388 709410842 433391890 668620631 647651610 391564460 950309451 289241696 880373592 409323116 850631857 814683979 627310534 360359721 465576556 42740064 623012192 414930335 511530768 275227413 994412892 326558266 704628164 139342905 521174779 329669267 438787705 526771507 60821808 71578259 95477033 762730028 639437447 658016630 431478615 159474576 405032048 844515617 812844212 731965402 318672330 25177949 746857418 840339589 489840890 814876329 900286260 211241598 200706500 186367068 358258403 231471624 358527070 227953284 764338418 98684657 634928322 567952776 205086572 974414017 906356061 136001262 847680275 570407415 118367643 401248233 557657812 959163941 180397858 628711307 503452670 166121152 955011641 445732738 541611916 499223218 33533438 73059053 433165209 112140152 348125456 267980004 359877373 133222264 115917185 361570694 700387374 107644638 654632046 307168993 269602540 860739583 288829403 620423400 686965785 811074162 483219852 311727415 433190407 654327517 953562373 75203809 716742094 440061475 878404224 533729362 293797053 81120153 935173353 461584371 103818522 940584699 915965544 891023464 333307451 728628699 152245042 156242467 629640760 864242036 127376721 715647857 295542108 953368883 885072703 886987295 540583648 414055079 762104966 260090570 852983541 687099831 352095687 788609558 865733633 462173590 344379770 506820205 351784725 928608620 987778877 422907446 254374896 153711706 52329756 68967658 739329793 527271036 794074163 825577350 180766814 988500961 433382941 777005077 6440294 495665008 478797719 907059264 367653104 416564586 604045537 557741753 539233644 74490936 132491749 504995019 482403298 566519466 830560029 171714099 980645833 11125560 548160700 846145594 398709851 411908184 613275388 794336793 982682214 588654253 759958233 44953341 72410781 449181746 131512010 390341975 411192026 329864006 382160118 402947232 390571864 769695212 60973739 753448082 168560019 113264069 148975321 968974806 640672449 669295540 682633887 116316647 582345619 962678558 612153976 374995854 675877947 746333814 217067948 299849647 168890078 764379081 67735793 131707714 421978817 485104918 764896328 594110868 73169142 569106182 24993565 810973675 210974527 908320257 367513980 132292611 936444726 178554393 38433014 161105501 931964584 531960918 125724942 927190846 103258898 309598894 199822706 421822165 225774443 925017215 531345492 407891886 746334004 775004989 348499863 456522513 64682507 627941119 855391300 768421913 270331208 677815432 881464712 565497814 809369518 117240599 349314306 954635290 676619286 314620123 741116121 182045847 962267619 856317811 273211822 730728035 173219312 606248920 115113860 514212273 40787637 99192766 910832310 370367228 833204369 806419751 978038817 613522775 658181216 743323212 42961993 430313840 775695065 875616543 847865779 948124596 459447471 483732441 327950384 376697857 561583234 579782782 776002688 324727532 117060271 623547672 846092846 362457957 627578804 379947893 732089804 295627787 853992388 409715022 17329006 20822973 255000284 101971292 631715104 440089811 816667582 384186246 936987039 88620206 963161530 75544883 400478638 157472094 203940030 128457692 380245620 598412166 758893324 746604664 544544952 368577689 802425017 561531061 471507864 89314785 600788244 230913250 572392654 175775661 46298524 550148790 373650433 893698016 613373786 743881156 828669854 551550047 718754434 525521683 766175087 330171494 588052432 99748702 386203605 299246698 884945659 647071376 773393205 100806685 456537463 456060669 879014795 482868655 6559713 572601534 675290052 420416189 44200045 117348024 618032255 993877300 699573787 578636336 543691190 345736510 632988646 292119252 859933396 581439063 654240903 186395109 499180296 382278181 924926715 250133798 513896500 388290128 410070740 768254113 861801436 475776952 866066491 188155979 550175877 504847627 881048282 96062720 973153288 996502760 275942738 886388980 758030262 845907730 980592423 335639376 52608328 707651107 850260737 849801057 519941985 93164888 497523882 610952596 592204837 375535438 981584951 574089061 762482496 897807132 944734511 803223701 844153920 545755499 779220209 658421816 461897926 890707531 450024935 525639625 582471680 843634152 712622467 583329193 730718137 832828568 283372359 868183426 326464267 97045572 694952860 614331915 754011081 182168256 987224332 745919385 70073177 827587211 4514031 619483551 603949790 44893347 409189497 716123125 775553912 949809178 612188294 503288126 515469007 775009299 671230724 470400286 490034108 333305751 242519979 766587516 339432461 368271740 75140271 590890951 171861954 738025810 204838538 502784775 48113522 954787798 193782 209693239 341918766 308983275 90176636 724237776 648285452 953606265 713031646 290650032 550365424 813387437 674386922 728986317 14902159 287389119 357853746 300068527 256040589 236799181 620931239 995604199 423710532 726152360 347261593 676586419 736943657 698710 541692871 14096308 818546438 889997662 522295707 387820427 373650995 456851626 561114475 473381002 252232016 807177500 794679987 175584995 527370275 443514848 150832539 43198497 80577338 659775966 277994838 108922930 685108304 735477126 159101621 553341724 94269669 22094888 625754489 650984070 893828631 905942026 166304745 106285981 544459308 948803655 665717753 860092761 117148901 905871671 682352620 468723540 551346672 401482602 714356113 174023393 679059056 335422467 413110459 390136861 331318121 204127311 259798647 939395579 746900030 523555242 752081487 931416048 874157202 909349373 208264100 757605064 433808694 565891774 769447285 785065882 760984008 332700073 906453647 64042486 388271143 548156875 425984775 96913302 291066609 512316031 342339860 46929698 978033870 224038102 975401453 943250809 298215972 557678797 512111771 121592025 109667209 399741896 519216112 747387564 801361360 981772530 716988291 229808623 779302457 393198276 20050108 973343430 550661563 423013827 416835715 92236854 565491934 919632332 752740432 579907612 796755528 654379688 767652118 11195337 378311358 181036570 204180642 405699547 264806790 282158881 216691943 947008540 832596277 1569711 983690794 810125030 691519412 572341944 79388356 666488099 401547069 835607971 445737721 580065030 328693536 351744396 327601883 842141779 877673895 209577643 568918601 118349149 390625510 948948148 748816878 368183253 836799560 538730055 682627667 465646480 23037690 241406312 67449 692660055 488871044 765835122 352772803 22938888 15437042 239041236 834472491 215353589 413983638 763204578 599385751 678293714 162075199 35906195 534140316 706261725 561940418 92022758 604021787 160201311 239915732 189185457 413701606 729069360 635842711 900040480 996605463 985681115 41507925 31699537 52070573 541293865 247276021 613639557 670355581 964170340 294293750 956809909 569568089 140631605 890361463 502838669 801852637 57671455 316566825 979559483 570829439 588600177 838503069 855271503 134903706 824459008 994678444 660881884 581356671 297515821 337114602 663989977 962321359 590344728 32945617 231519907 222674330 864582894 971261801 127617402 498229449 595166127 947414543 647794758 114533909 99376936 101351850 813907473 294106789 351169409 842341344 284453006 899171355 313469315 665617384 972292744 476558657 597908845 939122115 997310190 735253681 711999749 312224184 699734700 677949705 939842421 500246390 146857692 696903250 52344167 606554567 554070196 358204845 23176042 531362211 747958151 554492953 707627967 327787154 160747214 698435774 564929437 862301564 588838504 278249400 290228339 821752670 866854981 951839053 335784969 122420536 645066770 948594080 100288761 142363647 615335986 456312987 880792359 44752250 160628300 640219126 656498365 408350163 938902830 318181031 600126935 359624236 935152647 584849288 202231752 786666755 188459500 158268943 914970313 993225992 678896860 690304195 343940440 723765960 857018224 184688716 273681522 144527975 837242656 555342403 444175070 316325372 24937639 33228539 908146775 384979883 39036661 587990578 681180839 621610726 351596958 927204605 363380011 503603414 323193221 88015955 106642813 521747527 311457392 370944763 717745286 656899500 274982342 205991871 198806119 712768399 991444378 978933876 602664890 85302108 91629412 20983287 15988481 125003861 246958870 751150606 504416094 929864504 226879044 324267933 57167346 453548331 820547043 966017995 640636169 618170062 88407167 345809335 118131667 561102885 323402046 835202884 663751940 761747933 933586907 974794934 427480515 143429353 702758770 997198230 697309045 493801317 678303644 228087121 983873127 397970300 476962710 862081843 31929711 840225651 657670531 701391805 918511624 589154987 940740187 667505158 252912071 571407897 9855034 252433576 36173259 71016925 747489577 520440702 600051631 178349321 189557409 772758466 443153587 899957094 323858561 235207594 764326808 411982493 768854310 28556806 660705418 9899562 397552091 519685455 188035995 392890220 484266852 68632293 877919163 544625473 230065544 419657412 205823812 968718429 253028006 68492441 595281394 92213479 708774529 221323318 409758277 345563165 352886536 654909980 490194412 955711647 572782556 670777709 899657661 81319577 55918210 863165770 198020438 320665580 262435577 33930867 169569303 386406168 873462240 906378763 760039390 345921291 43151200 630978899 274654711 311535616 886375129 342125192 580874979 418933742 739255808 903132941 989033665 666971225 418767544 146957165 553004329 851002764 421306437 452384339 289438488 166923121 717553617 6118142 862015090 727848186 360229212 746405821 884217258 751490468 140107484 565392999 72027643 608579476 318714582 809637239 34612799 904581975 422419683 182261113 275676021 24189344 489557664 814751769 243666777 667575994 159314838 60893773 495907326 262716373 214514152 568482990 617329613 500016118 730135907 671489527 444420876 519257540 610817550 88956361 926115071 463294521 199134745 658475285 997175608 929593467 110040075 1038934 897368451 985977017 25806288 144315612 764583091 361562559 784021075 470820076 912782099 707758263 72310146 784795 903343326 802244890 709833665 422942617 730451259 458086706 354549709 780220138 249543474 257522170 681148075 396138006 39891836 242635637 641028345 718320320 104816227 607246640 46490374 71303593 95377855 427866630 622214060 337654535 326368884 286151471 944495138 694344376 223821112 362324663 372301693 174410934 59586104 858985084 3633488 207708435 678952258 223221259 211296143 908800114 599695089 481538531 660841367 796013323 964093669 608332883 602979408 101358441 286579500 836691794 570402529 544063027 235847970 239335625 706684530 5508929 143556516 13761794 715257869 318037106 248801386 909214470 540393016 63845298 630922949 328261310 257257475 832813375 382837481 172898400 631947792 207909286 209776586 163138868 201557215 160223453 519082330 740398275 532678215 264987502 29138739 334365147 467698059 105868952 320156174 70253353 8481513 821992185 170796743 732052901 607987926 231234798 719491252 819350877 81847167 668472250 326486770 781242152 496949621 420716168 329447941 248721250 923682690 327394530 839978054 116917189 710565546 980805016 950542474 666900287 89410522 95254557 887884431 302146338 771636959 869068258 373852050 19762747 482585936 188573755 68982850 302241337 79198769 679658088 854159750 752669068 989930198 545953924 765934486 880043128 887061296 747583150 568378968 592151690 836555285 653763403 722674012 665930231 908535711 988733532 781959217 622891411 644827028 924379969 24572408 572875548 848904680 734656252 21564753 72791062 557307361 605456195 951444558 152568736 66424479 146028371 916952520 641833423 857551729 270435700 796585441 293708310 640527269 739480584 504795789 118393572 256542898 151535803 381089479 896129052 324175748 360966541 114839729 182399660 976076339 177117612 413733766 827656531 790349821 213876685 575182009 846816751 137520842 146902005 401410940 146871910 830634242 597565180 959452889 355229126 181383003 36609819 495686476 359389071 992452840 505629798 416882517 823628056 579319690 674206020 962937662 674026828 652771413 920682193 195997489 395863478 905062404 501472174 320963019 714556732 401748298 458260262 533209712 207455085 299479797 749604617 961153653 879851167 315112736 609302430 975272987 612482504 26016114 201511908 811786075 260943761 323381444 368884860 650920309 71700477 467751912 291462238 195344102 283160770 234868955 212983607 818880692 979450121 17517854 761951734 370648166 611844063 972924087 349778622 867627939 180419110 691811496 480623601 970990563 960612285 859952623 900323089 920131394 977236113 375535828 814270953 651918039 323092773 104645625 787293478 284143070 934746369 23509764 126073420 151376232 310577515 126061104 851340039 310120989 68727010 531642163 393282010 665357114 706046109 233342770 538521938 34642289 663780315 414858481 323369588 187215059 137789270 80005057 775336861 682216643 658908285 156573107 77296249 375212091 579447957 29937787 366920314 162231640 792210500 122754223 83753401 998102740 812066732 800311080 106711809 456106833 28716926 235054977 768470523 510661460 992145054 933981459 183659150 503581525 109468913 785192067 167144825 847332783 366285147 146690080 366071074 851349805 739581073 966570271 791507577 724427079 920484561 90364079 242709426 245858012 576195777 645760989 119184746 896034388 763989701 366761317 191212264 349699265 813839189 192969025 669661662 248904730 830182778 508805317 930002389 909366995 145272739 924794229 379543691 257013164 391907064 325699655 312002974 526202724 930826172 906008136 84201770 390773398 369675656 820892016 262085324 913789437 473060438 138954474 299316037 852995885 937389580 474700190 918960684 199774166 478874155 26087413 737469545 118897720 885584558 844578762 539186973 165626302 969376585 713585454 20493508 120187573 521369273 499424089 882712736 786105953 874296031 519615153 524727503 498384381 178280046 391385790 30598676 970419398 502360425 481620114 713008348 957050562 554475300 905368116 486530555 76030219 590930060 465735144 940013637 658374800 816379748 286836740 639731899 774345654 662448132 481869955 870788293 800991368 593276544 898018348 707306159 567737636 407326589 211090464 642162944 341684562 469083059 359498029 270552287 585575678 97656281 366125996 863768531 880473103 727199334 103551725 617260628 592858528 841891605 289236439 432666452 628565491 793244129 888037691 485014197 822127714 448637257 609371960 15519935 824190070 914758882 124574209 573073840 869510407 279364272 506009555 337314953 774096838 469259928 857554819 419902519 575801398 498346612 343706057 454831607 289908700 259857698 106602176 293847995 185002166 13773562 111445626 316173804 21790592 689006671 228011234 262552502 265639483 212672052 20016619 635326696 215570957 649298911 801936647 212177072 959196055 8641314 793669831 310086922 723906348 259806540 306119198 359763332 562031296 874206107 347326024 299880645 539569977 124245970 745653313 956151333 508942501 876072768 860048885 763644413 155280856 400621925 456634189 14283105 472564477 958096997 696881177 552005703 807582376 831967873 73522629 695859906 577219615 807342671 231968471 585642726 694578512 635413008 746785970 352749425 601214451 143106530 381164373 524595512 519254561 177887108 861650604 385011634 351954276 737804534 31918793 613464059 9205284 875080381 90780789 381557639 342025330 468813066 453342431 155033832 354505554 103832738 968739434 778880953 904732412 852970555 963774434 125677913 763995682 658743854 135750793 10253286 492613270 156731041 75856597 50262159 311804839 745923579 874303669 738965094 290413512 182274411 573383735 817994243 865082263 120433723 734726851 736262684 612027943 86399204 566124367 989504974 351170403 570534305 99353468 478500382 415582018 727545085 477424584 251521832 121827334 274003257 687174655 858953904 31946860 18774716 573408067 712495693 625365990 484192972 629745485 747007100 942717811 730563065 380819001 210280723 144877495 568986167 467688904 191603916 882416088 970994954 444419974 332718632 994996212 473662616 502935582 500139417 660384923 172474169 682963739 106967026 504188145 591598644 885457125 522146088 850443822 567881401 309665260 304049348 985811839 543986161 500494733 811591748 930055554 977118817 37844786 761170308 97412994 679355506 603902475 219119237 657805867 910224512 195159446 319505044 73696378 253606992 906200817 451564459 142976781 873891762 493116279 146867093 860079937 59313789 52397657 649432173 51196017 903159257 680400682 356101156 707536648 694204102 602251444 433853731 583482720 674375725 379442977 369836620 582502260 651780112 169284621 230816862 198666998 571296643 222141054 625991482 971354301 393574087 538246483 97361377 482320737 789977208 265574548 697200250 656562130 219207094 483556622 123745224 802079301 198355235 245241299 855410595 434162994 61091329 997985434 599341855 713359039 831311061 317850081 636649287 556786400 87366852 531657788 195515653 933169496 505867749 671479294 694989545 375324076 41401507 456762252 482062186 418777869 730577527 759598269 193445666 418037861 126423652 621564009 947364332 140913897 962124629 559838903 80876854 122201874 900958448 746705432 351593157 922742527 318573979 751014159 624146108 298912026 765654237 813641620 118516295 802343462 635422007 764036260 429631023 709997142 573347019 182886936 162246474 757663039 467808174 611243890 346486057 11884925 373742482 243424359 869724205 990643190 766220663 664063012 698510324 955829193 813517352 188759419 569246332 431001086 220941602 790071735 781688781 825258989 411846516 140820629 466585975 317849298 955717853 160558792 228075844 911339070 612660669 441602967 502856164 429013024 658072329 882691887 210908580 796456614 757730275 388045112 815921066 478941386 914924521 366284131 641263493 860118404 655512163 92174719 705624859 347648697 447070222 355208349 422737862 497771465 47570299 421764072 34357028 129706526 956284337 341956737 576088507 441951120 356869800 23912489 994630530 296352659 199990496 622005168 1597664 441407908 553890987 340130432 171515093 151746064 502948467 618644323 203237415 372587342 196448196 94099023 30762278 9102483 182870396 158027554 642586976 72996676 205829446 48877985 82182994 648758414 152944023 867718748 13130673 294575670 202440184 360125893 174446018 480050774 611261148 848678642 656051455 770915609 644973856 286036887 972650306 316318636 464291957 671296275 121426203 378980329 643686590 2101109 324173733 145836724 82321322 17934967 816498725 180109683 386299761 848171556 589263562 792077465 740212347 755122585 105713375 2861017 255785947 27682900 285463191 909649716 792626990 291123343 965700182 673575775 460759493 71642435 216404551 505697420 535836596 212333384 368157133 654601163 887682052 646319530 499751880 448716498 874404546 925971620 682476048 3225904 666703918 565557444 990548452 525495908 343841912 218090214 701549141 532732582 40072779 213045201 318589296 385436619 864760642 876551282 215302527 622754201 816706063 720913278 453887635 41648705 359212445 188374138 307031475 682945184 547576414 694718821 810856691 543146885 485677648 586656366 77061923 368873707 477779485 19018561 997558421 524937035 480066201 439050011 996734641 120517622 19480486 701811569 832323442 772158112 945322040 683925454 806826217 772761543 688080822 664851928 482891248 559517366 689403927 768182529 613571270 315683225 34272401 841277692 90253390 172281834 409957324 872273079 915837188 103785660 986552837 196994873 666221099 27567713 996816651 500090743 226375411 749932360 669262960 135795227 40856612 214394160 931170429 90384217 382984521 892774130 982622559 771596484 550660737 108756031 618805787 521776098 913532332 815443937 114686333 949459371 619885871 729962209 417186977 330675377 258281814 664952958 958784386 287033766 426868383 859214124 439758322 430543155 927634659 131856055 189818180 705167715 520362599 697911946 286153707 190807289 658163584 111986937 151199284 417132939 492086321 976458554 176883076 267474801 283615091 638303715 111084760 624120771 611111367 821110028 906228828 311278579 826627857 729164082 372755492 219203717 743656071 622105912 815463789 524831308 918398365 744356878 988310256 356253838 86007682 359518265 7720687 751861467 528662115 220914014 333816099 61083723 860646170 248452002 502546810 352700120 322008811 624114454 609937662 793213442 782766156 168273526 263416772 59462674 994412872 754253477 149249792 632304494 531828699 140993776 708782328 365963374 857860847 633601100 127451137 519337785 834755564 308350172 543186322 653635124 638244015 421944364 937838676 605059908 482923434 263301859 691338114 845418362 72413188 277780020 515843565 859209600 500302641 211010556 107771290 60897294 692425317 186829281 476840789 48401677 873666850 54959320 712325935 943490361 989489638 402899131 645064822 788446184 778080481 87437162 439439182 633017457 334336971 711084626 738678292 754431140 570276295 388596407 547787783 302646946 776565825 970073722 849887010 276436137 971372803 473931433 538982409 540182136 528727772 323322372 733417846 100194684 272803837 929683259 54902991 474694812 62110217 325095000 400892575 789619846 799365643 297543525 527072591 831258085 560220351 489944280 223558161 248476101 896423504 502382617 252889368 570182893 605781229 59982057 773378981 392520122 827999484 104974256 318549208 331596833 823028317 268450454 887426251 271651903 396206019 107106692 470232462 462839217 174872520 939272687 550438749 695408593 209683420 967569954 668092570 738068982 541534808 690000528 153422615 268908705 566341237 250764303 980885750 748984872 515047775 804480675 120382446 336983261 466122686 380121994 542906601 204494443 21714812 63890135 509491632 323483849 926198890 2389328 438961769 901635185 537238249 528159448 715191494 959677305 398850909 830321954 912655263 544302171 85459751 363786171 260344263 945588738 961221796 830067342 203773276 868031840 799166151 106231534 946296279 621181867 560400624 214897142 680400257 365795429 652996796 780555393 874549723 838023695 305965608 943462470 992732913 899652309 669927977 237472144 773306467 482187545 639989857 17548629 642970227 892104379 345061847 24268137 426776924 425171193 422128155 154871501 962487476 796851054 443763372 823607109 852356525 62757257 152795363 209500790 911780737 206331379 388537186 188258544 97078550 161768184 316918003 322672637 146437069 345337017 69092848 717348563 324423297 693501004 408253799 426599224 861852398 657923514 102957619 671289821 540518419 39557205 703181001 403022612 674732025 298379827 144428694 977940029 260845133 552371868 581320363 456036126 151686812 563756086 274143258 60827858 805000598 559319291 303389865 515344522 898512034 645201453 478526925 977424191 328007019 914508870 426728273 640979938 832094715 80352983 943621146 223467439 395076202 22955140 527314756 694453622 916289373 94397502 348471320 553714288 977851007 121061660 242364934 888910718 52599956 274041201 138271936 472973346 323114696 903435025 967977838 163829045 30955169 726234890 866181077 32492150 315206686 991631062 903680708 984228635 684898069 683975449 900870464 275246270 407539682 526225341 854828770 968344015 796781138 474894892 969695867 47202895 537676215 277670964 41371535 227681567 186966632 337866310 983498663 223488245 91707721 741707875 345987137 166136838 521515633 448290723 172269588 28975421 595334610 227575705 702920446 45592816 956689772 361856771 346872899 473319832 417229901 300538616 249878037 24830769 720743533 297921644 823000785 460674520 649132683 645140388 772432216 115272326 165919304 230145700 606956437 714236356 785141289 63319328 80750307 874251312 626100679 623670421 886006133 561191963 803720990 744999272 587746776 16499376 569616439 737103150 94644427 672443094 350023728 654406153 45861447 953357053 301628201 300133144 591736114 831994237 136031295 40294368 324200370 731621381 740745741 964346098 907319811 60233101 220963460 2050949 977894145 723788727 684563108 767576493 545694312 668917215 382885178 776672854 412003295 217425384 894658164 768216655 703721581 820739601 400744211 323818640 81925425 119066071 11651829 674534828 221103219 957639216 248987224 340543893 293728747 250601229 50813480 882780941 262219447 356692191 913264933 115520460 408774262 916026433 228878303 97775149 597605808 10799697 807732756 815819595 31758364 786266263 327291358 434304109 350811342 297102801 767838505 346863154 827430648 709324228 208926452 614227728 564460927 810834368 546997219 447173988 374403373 390376023 945500543 575389810 849773122 412414527 749149256 201097533 395543353 610057254 330204757 503057674 894621220 859784047 290722163 587070962 856438047 346409259 82924380 813857634 398319834 20065093 512876731 146022970 910243075 419379166 637187720 365148020 13971993 607781427 766579450 521544002 754756585 840678831 596142804 274873856 717177867 255261613 502727636 98027719 106459554 223206949 546494689 648486017 130456153 742325343 746548841 261342222 798268185 761321447 899926320 843416575 625111036 839310034 732929271 513263833 838412145 542488438 458744066 677583540 334294050 833580561 835227387 164005289 355540045 741278742 767467939 229937954 585312692 85221936 978060934 3457815 622607743 518994243 147974410 437748597 839162825 37770613 480034795 396411385 755533633 331050354 643929842 941813218 301532639 467909066 322683507 760508192 744810307 372061845 47999808 892373059 837619118 258468745 380361143 747882658 816493387 652332362 787514460 566431526 956519644 816283889 376468880 316100919 257967142 312840246 453309092 489043159 872775637 727302247 563886986 98568601 703756794 464074935 633682867 81569345 684157255 665138443 390667473 654804328 374969210 691199147 680742612 927664521 890171881 110270111 508339979 92101988 675957894 397079269 18351595 454494336 638603607 926327132 444551441 388093486 743335232 104118423 2452224 213165331 69732459 980440005 15729839 385148307 507440841 424589330 489863026 454199299 447573694 407220619 66586567 9823394 734807001 416230714 172116992 808012284 394990221 888406932 715526133 627180908 65707753 651528673 91956729 585471758 975664473 140180039 347798876 940229093 582445272 919299417 661002869 459250538 187308886 802847548 584400545 256657119 505326014 429794254 262453573 196855140 765830831 573167440 906341251 868323275 770857191 635664328 566253088 198846816 51126503 670758630 198906973 413183145 436916101 202545095 800382561 3866327 463078533 350330001 466564268 412000644 362119295 62258629 45822276 626779504 240432553 308737376 439426713 177585303 737599602 31340299 291313120 426919275 555946740 473024833 248618830 580355469 916215924 737703404 902548628 72858321 880471376 790454608 940532981 830744546 397535618 293855581 991051070 359812114 264310976 295232473 267124127 199873510 823929115 615892888 351649408 21377506 182309204 207980416 725010554 827885564 936254284 517495314 833377550 363057168 9725639 670695286 960618859 905026642 180591947 425534285 829042629 521181118 454324689 306857995 424198080 59218753 119601225 685578580 752340203 465990893 42522982 199420645 267973245 715805778 994932326 778232098 553323711 529285115 276205536 668161916 477846926 131195176 404313676 957239001 347332243 623742245 680386520 600866414 724967914 260207801 247991714 133184238 120237724 785562053 486579911 491896665 258811099 917259005 251732538 115905574 852985958 245439342 778658526 354657138 562054461 46973410 640494667 502320583 840010790 462599381 45999310 976879953 119184543 824804540 990140764 94980733 533491453 316850191 289915150 591065733 704540162 675245516 98643481 476673144 110949636 530633787 400350537 963832300 51978640 285468221 29159910 542941893 438120349 477453799 99590670 444148823 881699611 494190130 915205157 901551634 11351758 188132757 868701162 205173186 930555211 221608791 766656620 341608001 421535730 603418161 17776159 945903049 103585749 545347551 609118075 168075212 44083963 491931872 747449681 178968106 760571300 890473102 120959652 69741853 583495806 2617990 748926585 675855856 997413184 111340497 438502056 351600431 927222708 620181621 997027276 287611365 427907440 602833502 998773898 628049708 569777730 726251190 491920902 363351637 506828375 263518587 947139097 295689054 272397977 429617935 807808872 173852588 623234296 425951897 308766914 697585136 941932250 65544350 438776465 643849433 188994911 812290388 921304522 748826375 951050835 270193166 358016009 685409856 921662996 594083570 165647625 861244610 123443336 738582341 688188845 836526303 41374625 879031170 204304047 834118071 567491425 963618446 773271811 952773940 277295431 324627291 647566167 150671621 468470047 756009685 888519613 936440672 293468575 238487331 387833488 152526545 142820276 234718745 44545402 501315312 890642716 498952385 69371733 85990299 876718906 160478098 169474294 200189052 697905568 688353658 547534473 639180017 20267895 505597241 870575604 752692542 456653995 533753417 498883704 588642489 820902987 676623465 17260033 52520492 169591252 901720888 470190645 600620122 53537565 267934786 390629428 267484099 779023547 681986276 530904717 183950591 793637331 149668924 359369552 981526657 854324057 912688959 754465406 855433189 642078054 278297105 634305348 216257132 632255223 319196479 138918598 844526002 915840648 222550153 81859902 800114107 743574476 450437517 904875888 159922523 959160650 806087238 401191519 268899842 690072715 879145088 732224552 206596809 938832265 201799084 795090896 33117984 87890568 141363916 701171543 826356146 510842925 621290542 543385352 310679032 592371925 868090751 329556170 135364081 785723240 498510497 410796486 167796493 727246393 61234617 294317313 668715525 858379634 621993275 571160303 382323582 81680127 295164568 832924745 483617063 99612583 216643292 67240480 177069085 841428880 793929617 101115668 497003079 915277638 977738248 979567462 576172431 993200721 338858194 710054740 36672961 39485872 533124934 396049233 660237899 14084786 658819369 52292486 477631070 992091926 572961674 323467531 274788522 582265258 815965335 72609754 769986918 814520342 867954664 82475669 481505861 853441809 464355218 463549519 136756986 135432252 618895514 445647794 586016183 810085053 150247675 162426796 684368363 357168009 50018314 305618861 97473281 843218965 820073805 113536580 173510229 895471854 312596830 411478540 958377295 138692158 223818991 168080951 84903389 797462227 353148259 466457005 353721270 151318949 911726031 333292309 308890490 39979975 622444406 266397420 313056871 428007150 985882193 690994496 563470995 110130115 652077358 75509243 442987289 87697197 433324904 959889893 616525097 795476190 552081347 580678972 321067104 288944655 281371972 749985206 277148370 9751554 318637484 951810337 300513649 458679668 895787460 33619433 781020256 459589159 326852512 816510677 446722552 207001713 520020286 436600776 98038487 574230464 767073742 362814106 119631055 388280475 50533468 909461765 492367357 102440942 825615307 287350175 194035626 40771683 349812245 844147152 130301444 945816534 635357444 890756945 975842512 273817659 829988063 490127869 138272870 416906036 644526184 68858578 347604237 670307981 418160271 82705 897855958 312077848 923255069 355487440 851321410 990732811 75912135 546724100 294125707 330074364 724069925 358706902 263068984 349600409 865600668 732104239 104256798 171662947 419159217 977834941 730888092 262771619 181845184 279132884 180698733 379197526 813872361 54986297 948220696 314499878 249197298 649135231 545171886 597578291 130245246 229699946 160887220 950098294 984098202 245418593 103588968 699789366 215877022 354119424 90554546 849406164 281006369 803598959 661575550 897282679 209739032 243685423 541316993 496759944 753492407 472570584 105508511 778244348 897111017 841981933 49459093 98115885 337538894 722448382 426206601 227624449 578494800 912261669 630858158 9812172 870241862 348770112 191488578 177035436 837602145 98087443 964963868 592096146 71842625 448559982 173720004 748995297 909770942 544831045 546316906 693954648 846925490 625017803 949507041 730172823 750387200 777758733 976688731 829952044 456637777 988714851 535850828 546518317 220120253 552053515 268141634 917930171 485799665 358511537 609388151 924513850 864247861 99050192 825862034 645488635 112052545 664993721 224709983 945387408 974999874 341104232 969481459 582792255 549242309 627452776 164321281 924190228 877434196 176366544 124868383 600776933 319781812 178077039 789130419 106266779 69600381 502809724 359181452 445636698 450658566 468965155 822385942 950987495 558554790 201102411 599658287 696356491 746102667 621567497 561546402 38884784 384018117 520420174 635925361 890887336 900293557 207507597 228596035 971361799 114356406 4304023 583919752 626266133 312030542 167577564 858351687 326264596 199079612 315443989 854293737 565343762 511275973 531361165 628125452 351766410 642179781 702112509 620527247 157535730 621495808 10645118 843679768 518774146 591781227 958848843 527585754 916491838 13783653 167504346 262250707 871578427 387280462 286001115 171182106 214900647 285851415 362248861 483824584 102369562 65777994 626589784 595278660 752957656 335408634 844935902 4781445 942573575 547853061 745400650 139925006 285138771 548214905 836801631 707805149 520373463 357222287 711890733 789504401 803971945 832959815 96708762 306542775 422102163 52668735 689632219 737916368 764768577 851119831 573509978 761857225 865710710 305413130 323632532 405254302 531542350 893073428 134519509 991238755 45202289 882870006 523190386 896755265 666302093 534233300 378950440 344964640 552375 10402472 546914002 269998303 952592528 355753586 815194974 939742555 854767392 12162664 873941952 903028994 31534517 512704578 76142833 574003843 605895950 937043579 713129544 222381407 580755525 498001077 858494103 756322276 837645104 673073674 780767256 214703389 755645899 789591900 508684117 151234928 13494682 438067338 990465638 311001247 608390068 45735064 119486048 17495121 765942610 683365168 786775425 888174965 772618253 977157103 178139484 287378685 310412917 962349788 976363327 430938148 835486108 359253656 957712066 705389149 745644479 896557914 649149032 151009389 182826416 487787456 108509434 81105144 281075882 716157567 44895871 40888892 128505725 622127280 604287925 154203953 585388853 357842526 20753066 502121673 924430890 322525973 838437838 581878211 895084625 880962615 570277121 571729693 688183837 842330674 545923918 978154839 446772481 332059200 109124241 951390508 425191308 692289864 491702438 127384921 310825005 504232467 125856407 323714404 253138331 26367781 676274019 272990746 237589144 951442135 518671369 443538 13618654 120849273 316702190 400414753 38832223 72207687 69614990 428571346 666927654 652503653 883897608 580848199 867999836 603182779 951030643 198401753 674439161 379547120 81932990 693166207 213976515 28419265 889754208 828557738 230453407 1482369 550685118 921941778 978603694 337477170 763580686 300514355 191802579 163266987 542700292 948475642 129224006 385364424 472943506 3248047 14676491 545009881 88285366 937852906 239187804 161695241 971828303 76379981 867020321 183763740 528165660 256501561 383111645 666501703 277780546 932678331 769227015 969161495 625999767 850152363 585466188 390411107 313894172 71663116 890586948 117094784 230799874 191050944 282940036 849554201 498606931 420624620 240516921 321546915 118615391 108291075 473738063 668076208 179524796 896118984 200095812 413941350 546613804 994577335 493454054 404986866 881275726 362814131 44699348 78677503 412999868 5768142 389560344 403524763 962391517 899758255 833240171 271733664 772341024 220745330 771278233 576420322 12827108 48827850 514727072 125575695 831896580 769446307 287549952 710187014 714299952 205832223 255750306 87798475 403982720 437465648 902850827 174703883 774214672 415346310 46272476 898455157 739778281 212856251 786010053 10238305 173927294 854865173 671392873 140981424 730905323 495955305 724513396 871449427 830238159 552328396 673121398 764702380 758646339 296545424 457261165 935563358 45531031 487089868 62365793 681375931 697302090 725290478 447100051 101231121 397694398 712031197 435046315 708908365 16488397 439819406 897855068 807040154 306053959 772534178 468282090 595059465 178097651 462707259 106999798 778693201 615404532 88895822 703501024 537137263 709001408 610069563 568310953 173813538 803232110 714778032 176219879 11057570 328509677 768084072 48550842 770708133 753498402 90979668 205997782 343280785 37074375 84511425 551457260 809295903 1912911 734137680 353823584 917548917 120325303 727399041 458389020 554409070 786492217 237663784 553263141 563098424 652098012 720638896 473128914 72832103 851994204 499957103 57798813 144445248 334263776 538677216 374937531 101329783 325623152 922604397 998845054 431607798 496777648 151431852 250285660 493230822 114347667 309627014 479425616 257798032 942858090 270898067 941822197 624662359 605302346 466506612 803251131 452609409 9454521 155140190 951207935 112654397 905707941 490376202 666157517 346955170 816270457 46244982 902397508 985100961 16649452 535640514 512622706 893082154 344901831 628993408 395946863 457730703 900204017 921909676 411190980 753698079 58803416 606938866 313674926 829954921 386534871 835266558 828567538 370792808 188527868 375135559 558825106 993727219 874510277 584697322 109927273 318851667 861763013 565092991 283646942 704738790 162133187 16119977 275153144 797020997 473785717 158574562 211870228 921370672 306409544 300503036 500760353 636493662 578826261 717723180 301072777 591967611 957329845 394492645 349514348 304162608 26837100 153927871 57004619 463639740 78946128 133874519 889558672 286261461 388977531 766158741 643703939 853387945 457256786 673144219 40449803 367199053 104067085 305699233 498245867 829677260 921548533 767780542 754851056 828020506 133080637 741565505 554868785 822612650 204578056 417072173 932159871 66489313 720351014 621450416 873691127 686456260 188525864 889672362 773684944 247350003 451598799 713409256 724163049 682111894 496305464 933403867 168298463 129989757 264905938 387030236 115512213 828976506 551444838 337945629 757972226 293345759 897589367 218450903 218573922 239436764 808830386 274191177 182979917 926453567 831250598 618951668 543362518 663414630 776916995 775150632 521967298 105782536 344885170 953737095 408842496 520996979 882227408 36356221 12422985 551032866 816492181 29385691 464496987 58703526 882165852 855023150 956623980 676579649 812897712 847016875 212535851 220634056 603493215 158086962 495857258 137110883 484006935 489161401 840644070 828640732 336014975 7378544 236212787 452223528 749218858 740242224 663511516 521586038 179147563 689480891 846752391 559785427 91711229 764368289 437482869 578403247 235486993 84560951 819601744 506948816 307774006 602313464 512908402 634373697 976339795 706261312 58925730 43487583 735253411 149810957 275432506 870172656 665193179 313785761 672174981 728160662 917984580 42201523 571155675 537678759 216138691 475266820 108786703 681974636 518436952 460337217 983760052 873600583 888037923 939534996 522182297 664448736 343519065 130762132 616491101 507799211 376298775 393776465 27739161 129532329 487553333 202484639 57479478 711902277 875344976 695804012 581495017 572728684 630889420 417221130 641482367 415081173 264689212 414111428 380109353 252014925 754082879 372950098 725693640 862426945 806828564 427586886 610778760 948325277 599773699 776162419 85347692 651473635 9083305 141613182 149920438 604953794 899388189 476448007 213968 265708495 960776479 36478498 757448673 988751550 773672168 176981030 274977324 90983549 941727952 183247534 535565544 958471517 458454111 79610023 567958705 630865680 788529286 82848043 380882545 263119609 261274455 403848972 90088935 444640109 730989678 877511704 944234295 436496255 443167052 633672052 637976697 53602684 960659093 823991056 128249023 777358220 54345250 27232518 55636658 476019455 805911378 996785540 114794273 159839507 142758962 284641509 495542980 590872944 490050442 760438239 873423413 857612238 663988827 544620622 667598103 190060376 163240080 505979636 265147372 606791705 465307304 594525972 305114618 593038372 579369515 460329071 419124407 864305399 43479520 574796889 866923640 50117928 190894576 850268860 698410610 406247436 981204384 81980986 403346740 575999338 153445889 579916038 400744607 598280477 427207746 168023566 962158025 283878134 9456961 318334637 116387214 15677484 726675746 553666973 784705906 514133600 671104241 477825152 329250128 678061851 855393267 508955748 974379276 474004578 779978013 953087269 962192831 750765457 968158263 248501617 518689576 531423400 4488663 158487468 854613448 87138560 418917319 872387987 931156522 218260545 904179818 523992409 899678834 415793482 815638370 76028533 996116639 18964885 925729940 263131340 413151101 951448800 649886011 579433577 711628724 204474409 209649657 138713684 416365080 192602739 732147167 426009410 244940062 439408286 400268259 513323431 589278545 572539076 62711509 99676051 305980717 805843660 283147742 415365731 280459086 575186093 515856492 44743806 804177092 598475600 544249881 137681741 948886807 257888773 894332383 530208578 822543416 623548656 936915121 358195226 259560844 536903339 122477609 604887746 809203832 482104999 758286931 524995934 974503327 836003758 629190586 30452317 430804937 505659853 255198968 16793106 372011119 23720231 960253809 186572042 341285619 646991515 533371214 197960357 911001954 521518236 680030620 560735726 992695376 580171893 760684798 621186655 352166335 166764856 294504500 125899370 604533184 540658361 437447013 195473593 627678393 666309432 54194487 154546159 961894901 395963875 401583361 421693209 182889872 175625934 425342922 778764692 135947518 76161376 692069432 901062900 89295322 230973935 493988439 527861651 33189324 618906944 416111990 401276476 151833761 19563221 712449283 988665381 932276477 748987781 225679364 730159886 71570503 343983150 702000248 254700220 46430994 871366139 459186571 782882365 293713602 79336465 774437561 469198870 338829535 650412774 684815434 46282639 936730564 41646920 22485186 324865595 361919247 36251408 804332067 32834436 761087087 429840052 386085945 637628797 11706119 105320379 440790278 581423658 970548145 645361897 552975424 820553195 323890088 87695316 64736065 752963190 277298414 877906500 615486734 151213434 157395474 635734463 493166308 43742242 959332591 395677100 991381254 416880444 275564956 60596793 414189976 449000550 903458161 447249871 98487427 809388920 177207187 175631221 750234345 549859470 480783392 877616800 99406400 494657795 887526425 318852213 638347350 61831153 739663166 38089385 493489055 143378606 183407548 825844679 20417678 678579117 927799345 474894705 448958786 762377663 98310198 843240102 234319964 542043082 553401067 11740936 907902622 640646904 888486745 454511868 180863538 117815495 400292512 902542546 203817330 732882886 4734938 39375336 805447960 919092117 834489644 714889280 120450978 136733028 589397472 717476317 22531387 482575624 818879558 789895271 286171468 958190932 896268049 376209437 608090092 327937533 708802345 637458220 842640054 962097217 544384046 718934690 497462062 548447072 293848146 817106809 728785939 925416751 704468773 477349907 973059231 906601148 420177808 726315722 8459584 352982961 949722802 917690750 229848353 192333262 349958862 443066904 449054698 170397074 80755219 676229267 961084037 269482319 369081638 419251805 983853003 959609586 221918463 453391062 577950046 390002952 610925045 476498777 738535477 860329542 242779146 406995897 554809708 750643161 899753358 959856514 689009593 161940648 546084943 490226966 155589999 372490139 480622384 422457468 31443138 522696191 778016313 224705584 126731064 929166628 703840529 952754515 574766493 117323153 155423391 962069291 520148843 779707855 136207711 486593657 955531525 884307838 724089850 439817848 496246047 799827828 71922396 466165337 257332267 772838780 597710389 776047818 153908481 496916943 575580007 145961434 85873595 621289264 724543055 125230222 266939573 36069602 55734030 652208771 55564433 378371247 769291203 564925051 598393481 922962477 323912773 838741991 98235542 427708380 991934254 878101618 418431366 800029018 667963753 729244911 732230173 459751113 269916574 643935317 241939861 250700203 196477689 609843569 618121903 724132470 937284069 169020046 197760978 536001658 910002945 823344851 819292828 290487952 746065507 66424502 793146388 667443761 516375041 559854457 127946755 51378784 688168064 886392678 251305358 94220484 744017250 266861735 157665077 228273180 632597869 138809030 341286004 618112568 405409718 684675864 403640840 499368041 338848562 223545782 584471194 570195179 170811426 851769277 640748238 969448139 199775437 3816191 27043838 20906421 773436725 998174500 236803614 104515648 999008217 116787991 772083764 484662010 930276853 756596865 540687737 343024860 876333441 308814658 21595139 103742339 862849668 307958533 169025771 822003518 896342143 49543720 703438352 263995290 866264521 647867935 105100003 491673406 600844404 507158389 892123049 454843190 727885311 505111740 566617111 856764897 378518039 385407900 216237620 862304661 476374926 607504326 17569512 251496223 791426382 439480318 61354204 401503939 165950501 866396383 834946503 452412263 691718109 328391832 436387211 20778833 757530770 59159829 576243921 320412607 253167504 147317364 474273818 130493 856612516 698859136 152970834 277301249 471187007 121015084 894474315 635509045 766716457 693159995 670555839 979542838 965210632 581398303 300275200 762528510 223612609 970735007 258944745 826214539 670574129 49933445 276077419 387786956 451574816 910175951 155431970 897863333 820175967 11108109 81526663 25576868 811334782 700304800 888503220 743728212 985048347 427755882 579621256 950981973 445055236 702554748 503678085 946781273 724726147 969810690 748642216 388106928 75887807 123097299 600251477 251174089 291570541 780473104 69279633 983743544 14868961 299154303 182661684 361725312 224181204 818006885 498579552 457644262 382601270 972694143 826637798 885300711 646470754 365366632 51084760 810153591 987577377 393997479 184322272 364144466 104811522 854156910 579166282 371508366 675501625 333533649 565606618 690639312 89263993 144546903 461415906 962709457 551698678 224399502 216529263 722282118 482590716 659979430 331013118 106131354 526187753 217935939 361890483 852269284 962498236 221642413 279265076 150761792 694457517 555953111 578711112 920970214 158419858 592805395 792492997 907279436 65436344 510434266 263940834 96429046 911064565 900416938 310402873 945115942 470504556 837885957 636635937 754376333 891410282 251442827 21611961 262016080 224623172 400324793 831193010 472777737 629764186 191234286 822101008 563939101 498708005 96762910 488400501 457879041 751358936 5199643 820338371 163344383 463824849 760288834 695112468 170936817 455607770 863719714 412149073 863253853 304494079 791434564 296990632 403822928 308119325 266012317 994550809 896853272 142595612 114899031 673289426 928468335 140219378 504900285 555881663 385995720 294501903 875439914 773921841 166321988 892338347 151679849 609479754 539807414 453628046 946354297 360089710 384390196 811300120 329230143 72426759 808854789 882022614 674319947 90929455 161702738 592523056 744788360 12301377 26216026 642391408 742425953 287422375 180914495 321485938 881594442 443339755 463013446 513859054 804396441 966049033 370826043 661734853 466603353 385458684 25719649 730731716 152411868 849256999 594348850 6567478 617090671 540035413 520994451 549073318 620936460 601689779 942658474 501755025 847857806 823928741 499574724 697009459 626765223 368912600 367418437 739783097 458090479 341682803 571964629 626045407 947119388 707625871 44057455 275655554 816677105 373744967 411475789 612239780 424445930 206518809 377956060 766951339 6733353 414550667 834628287 258029645 78352974 534357396 121706107 972204207 162367397 447466874 860727911 710968568 856179745 562168293 416151677 701117626 773223526 262015587 798393833 61875883 541878699 967153427 457397691 88435621 659414964 31272258 436098603 213720135 601157557 859251888 405087499 430199550 666643811 556172758 216021670 250711495 625244299 11353107 423037193 554135403 313623531 125805351 809107626 780712481 613684843 935711326 805105611 508331210 329872299 410978594 743418461 313762139 911868730 748628982 188544469 422577304 261853193 661437512 923759552 283386969 626613124 24448388 612763691 123638768 27798652 722585812 748315183 347216476 382021545 501932137 294754468 877406342 86935901 62368303 543606935 622229422 11749789 64261554 572189292 286879270 524386433 709383561 967096912 657983228 523464207 645951849 876759029 733712756 132895292 937946355 674539872 879450472 247108233 338732807 481110511 18463951 297645466 421978173 183033302 709061425 699135458 128161012 623158140 823761801 539205974 660479526 152252412 603219472 53830357 580536770 985109673 244296425 282853493 600312080 591890144 287337663 134018682 121258524 346063394 192231531 603258696 525906282 839052662 140203974 90976712 114856606 200783714 734495304 710850699 759266068 886349267 590465588 369812524 985445015 407826231 8165563 549437363 315863301 257639860 546619709 593576629 74136911 847294230 31986248 260339962 645370853 302127588 609240590 25109028 841721256 58275409 387678759 660841164 44432755 931790806 985974188 715232306 163001909 452717387 660499281 399718991 210809550 201546908 735061200 833934515 452350424 98900494 504492650 790299980 725359143 756313072 427299433 269680685 92326960 407393971 334433432 6166399 809893927 151434231 902203509 92048480 385308625 470367374 944645583 597965765 173330391 792594738 882192796 688491858 167470114 468993353 210767666 341957066 309477387 144514434 701821050 716025203 543353485 604853660 832130514 953870721 750044074 75871903 985604987 588204296 288037066 74174114 875572365 702520432 670072375 485315851 202840842 854902559 32669530 702627628 110852774 360156477 357603740 817218643 282137579 399284784 759905253 803786536 906399336 456060919 991594699 2281799 753528823 793412515 191944526 509735036 710423801 441514003 876273706 781144879 845267830 841491700 293965901 886023343 485122156 210799369 379831176 65091596 650932605 374607524 439374405 319493400 629769103 247914105 944348145 795725530 857294171 534342099 550584339 243470657 57389554 542399830 994238316 516794629 921408463 704416051 882796659 538503866 910803337 892321450 511371689 430466973 592388746 468746312 585110851 176393631 367271507 408584298 104420675 194558372 947753451 357869201 346841645 562686129 349523877 792525399 430535827 280723500 491828418 358971397 325658299 555248429 267050004 18570922 930179135 310953709 532580978 338522369 920176507 350528920 683041159 619187385 804272679 578052797 379920208 144940222 441553651 844420057 481986086 194449013 921760566 587370817 82559669 508406257 711128699 731399855 453044770 143977999 823099408 433153953 137615081 412412903 322831434 22102881 544287140 30821135 427011192 22623444 146331530 487482919 303768805 665923801 451461060 81509466 888417621 673384893 515397719 365798236 499675013 895629576 725639107 494058308 217632484 521306325 77985441 914391093 374105578 232564710 980745782 994794809 620537916 292328184 679495206 92677697 669934724 106492616 976678578 599282109 887535332 454351065 352548379 227495578 392990723 892291581 548189531 201123801 660466560 449075409 716152666 140453802 388614466 810154124 81472061 677133106 73349483 88574620 368287325 867394812 526979798 923865306 150605011 514753371 878252892 445739269 291292898 304699037 771023426 784548822 211678365 582836578 405701517 757531818 911782340 449879633 918568200 879119918 27425708 547475179 399484666 977912000 405915676 684696900 665790790 476855530 89469323 295310408 630593494 667548902 37754110 852082558 815922958 47879552 330736218 786905132 320918030 193923198 82561888 308564536 772581 378711025 71077859 261917354 279307958 844341711 652465656 428841553 245491143 25743389 509858563 876843095 265008154 295183456 343513708 845564683 736534227 379912073 407883312 465401348 434155320 447403332 863409699 329315116 742467930 385353290 30295842 298723261 727220845 972866885 717918801 751713252 895938186 983814373 560294602 709847981 491101788 883320547 317493848 712483360 705617291 878699529 622237687 441944771 393583031 720505038 727515989 505224219 585143341 134712966 255312110 620950678 709139759 146817568 110293936 202989110 576503774 569171894 640093338 477908187 446702979 109183648 718254465 693630407 912966801 980576636 223139863 463828792 657993288 627023607 336896234 68675659 777985867 961858094 618573999 126043713 371791192 648239076 918036626 14271565 983000496 750547074 625943658 366940856 285347454 498990614 167311685 832538329 89048230 665530982 2914259 811067228 496637061 267006314 846389747 573877656 421779438 636047236 260786298 271958053 688554974 88089253 485067557 970423142 162298926 563429720 88036957 827400064 703558581 890682083 555120278 153036533 809366648 52795961 356996508 793592380 688651997 70211130 24837878 333853931 875858043 249259201 107287634 358031713 772278626 117797250 909647926 206903221 258228258 749084923 833606069 763757536 527244795 487708756 12211214 760457036 482723480 347685839 150904357 813090109 675082341 747122546 11872808 107096253 79678023 161234539 241498503 302696846 514957793 838256244 115912331 509441061 107136463 974346440 289617190 415278031 37563232 179046385 999458865 122813455 823153900 505348578 108067107 596505127 1134531 789968367 799922831 797344950 797376348 585999845 628666549 658474692 436117825 959273715 362191784 961392152 348609721 878789015 6818481 706465251 669644678 961861547 116174832 976491117 889266597 58192154 284826488 555719817 317737730 724040013 703663517 868164568 929566755 609522803 692395989 734589853 869371674 344551545 325394479 773347549 785988677 45524719 287454982 317110162 570985167 953681175 133350687 477554605 868295208 576917935 929290410 338417670 635771527 459242567 870140792 880825292 620095176 266389064 26173743 19946436 662125046 820405916 402829238 525653568 133109458 336918611 278269417 902576337 273650511 602517734 366727195 364654498 305087897 631808104 675378287 191521893 952751800 382817874 372094144 122505225 641745250 811664463 234467552 295356749 149471797 626747866 988763107 95086684 805552757 67467289 659172518 440622340 420571463 581252626 139205807 539633677 332320470 117989926 526693932 414217256 757483271 854421536 699010001 603829888 143980326 338594764 908436055 831434950 597789124 450668154 220980292 795593975 156962471 590430794 70185762 806339521 367761602 42037053 487902309 171767433 153674900 139196608 200897498 610654365 452438818 265774567 950289482 807797226 580499550 476875315 556314047 516476211 980120027 392157639 145235938 17322895 169040831 344819815 429295974 441446494 98007082 691437656 58672679 405689003 153994519 1535138 818317343 402967244 757652056 703398159 864785078 873459019 970684908 502509556 791491402 220337719 678210371 325610678 337980785 976930801 104466964 509701032 606551907 465747551 492268276 702098096 628150301 150420809 295701734 931683979 362065355 424189662 683651512 151679413 531242225 551462748 774544497 333954659 81903364 171327043 999882728 139712278 254541285 542378458 239972056 190307795 703329424 127606873 243995021 590034938 83153458 898415756 284562120 475885861 543026345 942748662 582246644 290233202 660624955 107068041 304095967 478136182 583817652 406717369 58315980 711276927 274028303 579435752 298254719 665486268 679233861 128446555 421170234 489549050 552352982 880491461 353288633 527165776 615543 340337008 575020306 254784003 322959834 350995674 476490410 611206856 557811528 192042137 950850520 292281581 163518871 405405846 394227453 331229677 216675842 97065431 481494262 237451093 237602217 363069659 190688427 22589115 51208139 469773330 347090046 405866390 231876593 313088670 925330044 20935923 152723632 993512068 808489299 805920619 169734208 425386374 925150010 109902657 971107212 637710220 317795978 587441355 144540430 494413766 961430084 898972696 112995660 244991914 655282999 9228582 201703266 542700073 559228155 862734485 730550904 69937161 330157626 489106905 508017883 245030337 229736553 933949785 568632371 786473401 541595365 57588323 284565493 511109363 419151531 484122920 432573513 333046255 458205565 694811897 405577379 326412228 267561101 486732159 692551409 662953481 497957843 102675264 730343381 498513462 855142161 534524210 779043246 901430273 857762923 443182994 824365378 860588118 906078151 138984598 658585919 261454543 758315467 269533042 206726734 597177144 607611381 169660116 221169440 380686004 891001635 60672863 580409615 628578438 720195088 687105082 75205266 62051673 602049607 777487083 623227435 853148729 472521766 29735362 789460176 347061714 211184759 274889545 433325850 805438172 571361338 557758225 781999123 178790040 333329102 415411615 881353009 175112907 457286048 794564238 543684187 133391756 403829811 459290119 797060862 364557141 227712760 851269979 661582072 973552886 185709900 172189721 102133408 34416708 219786968 705642256 561685345 532529436 992989662 564512926 382635358 327255054 904885518 677892972 284833338 909126811 710158803 570872102 602752316 489482876 186513178 742900102 498431956 787708039 980110269 856546100 975085129 628032651 319379505 758177859 606471550 992714462 680063557 633731222 892402218 788663050 335917721 543852898 246942325 900081668 457994376 536607512 621984900 315296302 35342332 301025854 379614421 777832235 418307446 146816068 917498829 934074804 833859889 195166922 456748708 273828299 368091167 1396290 899847605 810275868 793737322 72536668 706242652 901911414 459055631 156824617 94357799 363334065 358056880 853009675 966573906 66934752 277048438 607279544 924515042 979355309 186062535 517694287 536844391 67322995 444509387 750474936 33345334 148838168 147554807 896416655 208655811 172451018 610993310 33778250 613634823 846639437 375820355 954782912 244440803 192043016 700123902 91738571 846568634 938917359 241470248 6160208 890954468 151023162 872733622 328202756 116675030 358775602 867661330 719692763 675252824 622485853 363623360 430091678 741560149 481003858 127887677 764926741 961383565 529186506 485736667 444743384 257622846 944769386 351174230 686052948 306151147 850763950 206796389 264285316 127664031 396070380 418006456 249272330 426548431 566112455 334243153 504026684 418854995 259577349 440313785 792933335 739688428 634569004 754016091 71776651 462127887 824943864 943171951 939000297 329292060 990937468 166016366 683489115 250064779 210237207 52596702 473699395 524017765 975361092 414570229 998603031 233810830 139408862 788933490 935128108 656554897 418683739 363051339 819523919 374855757 564484628 27035764 419330276 433005278 405894158 14366020 535402006 421180629 22514120 198101258 23277624 882297956 785269756 668699645 983075977 283982034 939992154 765806770 661753224 951262958 380945701 156525961 654654867 186571310 778654840 269624846 145243481 694609771 10543057 949009980 414164645 393093516 309722674 367789184 297566292 283377630 283509078 339038083 727497777 249435682 418111708 598809377 37395919 75842544 469583117 650443448 40125618 128853149 648805121 47094131 470397796 344118846 180734930 475721865 29014919 918740681 489202341 344715155 88885124 847993560 911303332 721849074 500650649 127026413 213692001 601393196 679903409 803304184 555799010 25429655 761547184 262405939 468064985 236772498 497708737 686935830 527260301 191165706 478752715 368917140 385919812 37616486 396147859 753782431 897414786 196211362 840654874 67096502 203162139 946827559 236418551 381848404 642628064 608142574 328994537 540224818 809576620 482785233 43995051 346903933 776412879 275238859 908916517 823487862 236951103 471494170 907712033 930976403 490696867 90080746 396851318 284986094 389021543 605176705 249100423 243485182 728483067 356065318 939992410 340426735 454039348 792855090 357013561 263579478 297886721 240281784 737254430 143463596 650060152 233072825 30447561 147605144 826594407 590277582 956366228 691690762 964544454 108390712 910990565 32509772 606952593 142107262 708080682 398967402 515835548 683078304 332413550 195786545 71420467 324495231 481698375 418305711 562793219 266284955 536033890 19377814 728116303 674074068 712093250 749944205 963703441 157628843 890692383 707634719 703460570 559767589 682012998 667068786 234844103 595206192 864982905 904821751 836754042 986658341 565116817 855952770 519148846 58947532 423617077 907650108 524019438 119585993 370012305 522875543 655297274 467760768 175158095 10237530 959511086 962892335 922179303 304594235 298020005 742018201 994506700 734466175 816793182 995040422 341169929 924720245 706711043 415094943 898048212 496064215 66886871 755583958 630559574 159407033 756771354 299489075 245113932 66614222 262102618 479148035 782477555 534745781 480790525 662032416 952388793 995773775 375542418 359398565 198965541 560402718 735383255 496238468 87360800 711788824 148190068 593733352 155935447 203008147 390283943 461078195 12861569 432704713 135093704 205979857 750102175 278542839 89729426 268257557 247249447 314544893 488046583 159392752 651938649 174741135 4897950 549458487 459874642 638327091 489998505 304238844 701758625 201833205 463693239 849759560 578360436 147905249 459906895 427507765 764327989 662593676 81621949 224710206 451194524 687140244 600675904 522575054 515842945 806897469 805050699 44656666 498414880 369075635 537144490 300876652 858320234 694689913 716789906 320480899 633338429 546327336 274527012 96378056 56715315 557617935 651419580 554113470 732557567 572378877 584916929 64518536 662758709 496695533 295322702 669260837 935698547 426336959 64871436 9794517 717738397 330918460 671063785 997345813 577025592 218283315 580535008 449689217 500557125 280924202 424663213 539294606 731445805 371953593 524065305 646192174 408896014 873033608 28654543 314369265 168242676 458092098 351850629 842120573 150402125 818047117 39191661 229680295 362730706 750647244 808878400 879482836 612977871 917599805 27264282 294331901 413947537 541354773 916021468 333601107 222174305 104001920 416188491 205942108 92641047 16912267 776022511 36511461 519991660 59109260 666661097 317783321 124998570 593275116 190481083 324671883 148887711 554775087 330697459 301069379 428513833 644514975 640088636 485928602 791194017 249716206 495141783 555364524 302135032 142195023 871216677 415510087 758918835 635108525 580362796 551318552 695258351 877532874 567763140 145773700 336284886 64301519 915070292 106340081 872773807 26499823 489657860 409981268 611200606 700206865 527653553 961105500 166868705 403746620 786546753 248711541 365183810 339036056 263921055 413003092 16803139 472003721 607795978 106989866 108385460 318708988 546732342 641688240 557491813 573599529 771329934 34315143 273117540 268341747 92523211 663382288 898060090 173783476 231324363 120129025 261226777 978616002 676514966 191022039 165605576 598665870 762480721 1690663 614044472 516350905 627476855 976264359 477642045 483638083 329156630 630754374 192919116 468746490 260570459 684578045 94329383 573274070 839132260 832593617 529122235 294148327 858674061 568177456 503976344 62298102 731567672 680363972 537317957 882906922 343499012 384378722 870597591 520419275 942507678 543681006 345223576 560635498 303138440 941985437 83391371 714475712 978929868 445843445 797262795 48995923 170234089 623717913 943163816 436263533 938442205 6807219 81123084 322932890 702587473 601061258 953196798 164070619 140875971 362438234 913245717 382329708 447189612 521631414 637433896 532832363 505669877 905912183 316567801 148550068 230957338 440040569 945561380 544436974 624336177 428123088 830610336 123959210 327551604 287070036 81078067 538205532 640205562 537579334 976547386 119408029 706345243 329570299 711422305 126036587 523373236 916843292 435256148 449923792 159805987 88474276 611892637 620271887 952944122 833837483 378930951 270790800 578326079 258318545 256674913 369554446 57999027 943319783 142081233 112204075 705449038 243291358 784876399 587504771 162357473 414427772 254119162 99951261 331475090 240047954 971660203 237799358 196843049 971219500 974749228 440446937 496827717 243892283 478444378 200967932 368351956 260285124 934005921 861383326 989235355 510375443 596802113 933892871 146244535 576779521 606046889 274556061 908082341 801421263 905585254 687446962 921466863 747369199 253208226 548898234 17286058 118838921 91779379 438573642 194240399 832756570 140822108 97147139 560780841 59363301 120383903 172212913 655513141 857044174 375779164 934316539 446283067 179945704 789903918 724833201 473692344 315299463 73897787 797357206 265360875 662227179 894136039 285954913 733609975 314567643 184984118 568082520 724954356 493994673 707150623 199172479 626017316 626779739 466519461 459442833 412171223 687919257 609198945 48742197 865963009 510672099 378132473 350511069 908964129 269775173 254050407 427065224 686241434 131276429 676253040 248691694 286519695 816740397 193015947 270198863 453374204 298666306 552697280 304428378 656417873 932811588 957730810 933783911 270220443 136784693 514607206 658349139 911336363 177404632 81522032 281007261 478037091 467041889 270821506 585072827 408050202 195476296 795964932 632739319 394333990 976128373 10809171 628876561 699842692 983852389 5355987 562722253 388207313 916121175 297132241 556877072 412729450 116899809 164541696 266079783 103494580 612463143 809867076 418058414 772703185 806221915 677051640 906052312 899361803 871799299 715348543 472209990 479759943 786486675 362818963 939947953 630206096 904510225 426867446 510918712 380498599 839336499 148074086 507321116 573422971 686793726 639666056 949487258 980924473 8954263 898870124 951543212 269935314 433188766 916031438 601739650 556999442 579871079 253792792 355750121 512446649 739636764 20180599 606541290 822769608 261888179 168318101 270458265 456490580 945539670 367360737 537340644 52934221 799086997 109260749 773553766 497647619 479524890 200319819 629837709 931415640 275549102 707105864 44947150 985705693 393068332 869559392 259190360 602764269 464312593 241023467 167919168 42599505 498748202 640258545 672150382 993871418 261182459 97170197 772202397 79200971 492994302 886353827 672709469 796112158 304420857 403112869 626523879 841716020 374364468 331032210 880768427 414099771 725501026 696833330 712204786 856044837 531117141 777828611 839563775 335676914 46862918 393430711 962293508 271041435 957233374 654582938 83336348 784249988 599664629 963273361 419514841 297771133 978042585 566701591 327548985 230418706 101209334 879248489 667544968 435952031 101153912 919472299 5835192 619778743 184485150 214750503 625367545 164106650 698391032 798996360 986030110 553099659 924612824 530601454 477641396 889601814 534919401 530393278 543963111 145638052 945482507 705027232 770867216 31711126 154028972 575466151 367531785 154848291 407216517 866390756 464575599 676227363 45224332 577638083 752628099 889231243 20006069 740270328 448776125 786222058 943499559 231488046 799668870 120423715 929183834 836559224 72109817 674353704 648827822 240249437 806225900 403975426 516616959 954416022 549854950 112444731 949764143 101551559 393806469 659099165 436420039 329376898 794030817 975100410 915175551 124501095 391054278 817129010 106465128 574363084 26991497 357278023 373285746 701594743 237762679 411984654 743938560 532340443 964363030 664387440 769142226 737532444 498475371 9800423 523394031 803624272 538770431 967655407 369925566 853892642 32247855 355129209 1351618 249657658 398950638 985470167 75159512 268023459 510322003 544194998 216666021 746531223 600201927 339161590 231024954 825644854 262091299 699133041 66451672 645254846 737850699 374667477 616268527 862752829 596013961 94894747 286155932 283290192 146441885 723975879 950609224 436851588 896544746 540402620 602104157 600758040 286823212 54245053 222403339 978743947 576930667 285386233 233137997 161354096 597303286 71346729 465991190 209736052 918512384 775392884 30562453 114659253 388830843 676007328 5200004 545274254 857505404 97994303 639711829 873272310 948667363 484408703 16570789 845312408 355503579 501808493 202524853 130677449 386433643 13663398 167127099 412708812 373702535 776874387 377553673 534797242 601964539 47849546 592637095 825764863 800746661 528680844 404735141 510878690 288064411 319146664 873655414 146571621 38228027 336079637 655031842 776582259 821352991 561001739 914826931 112225196 44410766 164137084 361855295 251962262 596373837 218376098 304195178 636853165 894194596 404389252 931935601 810962177 248918410 167417842 739724716 737430067 791649934 105977704 595098019 385427760 39438213 605243193 685149425 94667577 3227782 790244710 500671927 632555368 790167266 197460248 94521483 133629279 600517307 563307489 224112322 137315284 634334984 870975418 188139720 984290934 816461173 639868704 839719136 679838536 197805366 395913321 638784400 673234209 295996889 910591693 462885910 736305126 863790543 801113886 101913813 330086173 591292841 832799727 820040297 561020829 725700463 871126544 507192766 348772175 211912251 509350689 364946212 142874519 473062955 979905386 889519423 290785945 540616578 486266590 598498359 590439824 270726665 201116410 752388824 410308553 907863317 188527235 137619742 935619859 567450571 430828503 714304319 163780047 482384869 743531274 240373501 871005080 627026233 325137702 826663407 935462952 29206027 820251062 3128386 116832901 314020389 219175708 611766313 943985873 945996353 826150377 755491080 603318673 507640373 887431941 490424389 401387747 784480430 758162178 802515110 626550556 107967270 697143378 359793699 138753233 595893752 776309769 956464758 745489669 528866468 857730387 897252028 537524492 135864677 331924798 34666206 579590971 876213476 707700187 671966855 942071975 146171238 775861931 739312890 356786114 894244188 496294232 494049836 559427482 410702604 856190330 660628266 532631146 996752113 75251692 725830248 461511047 343585044 202164540 852424854 365692941 24139354 72628244 744800905 99366447 294306422 126930870 794993730 902767394 326288320 862819339 934243221 599619597 664313840 280468901 728617139 333609950 89310842 954821913 347717245 171991477 80830779 177612621 890722022 445423250 974683460 522842172 658821397 220687419 334062955 506998032 933272668 207880024 847717701 687296687 350716929 755782041 6136007 361618991 650479494 556475078 167831973 466183862 248188531 391050865 735690978 54847527 15429711 427331480 280680946 994271976 775454366 729528072 674550385 223492565 694996126 772633545 718719970 832000803 240957806 401407526 707460739 751911430 637302730 845894298 167874049 547720825 205460365 681421598 775931330 837528781 225711677 331110819 375185159 358326978 806669627 972837649 35020802 58269606 25808658 837996595 236298960 26770550 511364050 298999841 153601811 319147073 118701923 651979088 939106781 117109635 296319124 905518004 226425655 470599848 629769258 189799889 529109344 97654058 148072244 592309875 739970767 586985588 525106311 962232908 517079470 734096863 170095668 720077547 507592344 314675473 385880469 245784111 364928159 768010831 927666703 466124891 933714173 817348142 963585195 738480222 519473943 131878572 1392446 920599358 641625052 638311041 210109735 746952768 280572424 229567447 440067750 923154432 281620620 54084157 975574130 549239266 759563687 195841436 625965959 308454034 458099530 638591993 965061516 991648577 79648110 652646739 783306118 808638024 367887961 173421193 623360156 194942934 805850654 37299278 730476215 671030108 501634851 646272236 491810559 917779042 817500067 618673396 862730986 868363022 114054894 762063069 661755226 969642897 24250097 947891591 578160067 285250579 500719424 27370706 371679849 607639998 357157146 540998179 538305109 493777669 475948788 601609275 859512424 209628780 467490550 110244431 937524893 168996843 706059227 740711226 983385050 98847304 448045064 327443166 244881190 585696644 594725116 508058688 301033038 597000998 204669298 451834751 791043644 503315309 179980818 513087943 263283670 933235003 70746216 86065156 113168459 575187351 300747791 531285483 917458304 106713568 679422558 38953732 308342051 993942269 715838776 910239657 78830259 767333593 921605649 951966881 903557110 344135269 699193793 220744559 523276518 793822020 907499525 896908960 909343340 919064864 538960476 699174593 404815467 890954258 13483590 380403361 98041274 113094869 648869280 210117023 205373197 509486207 259101203 487147472 601907088 383349266 166937337 526930738 208446136 63362330 547000840 496167291 125199076 960102869 110249563 559778414 807776940 219693166 785034583 833120089 560323734 144682354 866577675 423783158 475321441 39429892 184794537 152904987 584072137 190776522 148006619 349280153 86897745 23981809 119057467 789407276 141200777 765881558 704468411 178928466 294107689 615264050 195752573 987702665 245706161 31318294 22675838 336192599 451662781 164719613 88324885 310133017 302200013 725196854 63159440 403250553 333036845 609696699 449097558 49169298 675803162 878862984 9755048 452130452 899340174 279441282 976889501 345562627 460999522 924478126 882820278 363412336 812619508 141205761 963450013 162557898 583254580 357191045 598745529 235437731 327386547 353137915 497885254 470014471 446397570 882487138 890529719 854350769 47444717 720729891 819414741 271863915 781461635 372648598 445945212 291187075 530179465 133878927 103246787 424798716 438439483 133477896 628772251 349807723 877798627 368828154 686170274 873584735 72393447 566767851 943869371 180270801 232687444 139404261 114401829 301520361 925084443 612971537 696121524 947240615 393049800 542709598 777050822 331723370 678980018 272535995 919560074 815792919 941229266 38589237 522774911 933701476 819203662 774078805 780607208 995015421 264239831 287274828 111962889 587741792 897444845 482995764 430366647 760631110 718464825 232530915 918269832 517154959 927283860 56050027 349498890 422746871 714977659 224021675 649593301 870654579 664787984 51410310 519953544 69188982 642686897 833060424 485394035 69804882 646555100 343405170 772303869 515138710 449877157 808728866 194107998 495497301 633091643 546171092 15955653 66186181 592804356 190511300 970095430 793691661 802142427 474699124 711958911 865897949 545142164 356389773 748223841 198985565 610145176 752893888 128104834 636804026 389191555 1442671 638450973 22179384 661042276 628672012 377660234 94932352 376893227 684167719 351468816 253694224 93690358 688789332 796503998 4628769 793843671 492719019 292012560 305118734 462613780 383939450 983631065 578612461 67525270 713981261 752733823 433970403 581765342 85059008 687085991 633741141 827160341 329581117 478378538 628295290 532156084 180202349 783975230 349875370 940984963 812227481 624400539 460995839 945149310 560512499 135044872 880959418 174072809 902928921 780009305 102640930 557328950 503790007 366594650 623838676 915913522 540023795 667889325 372079056 383067976 449515223 167284906 323278455 9335666 289145170 516908632 521472422 574582504 881027012 589206318 369543656 797638485 514617143 296082977 369547120 496225857 215691931 530684924 461883567 548735175 517193714 72710276 580144928 51237 172208693 543328156 607003466 528088596 553367076 692673269 40213117 107046725 442518063 219189752 584745924 647617184 685770373 298665342 665598320 829589278 733310151 490481746 457451311 638102166 635764938 448606350 228778372 405741888 958231268 212566410 110986261 996585837 6855696 348105897 69501399 812975072 340866852 933582621 493365488 346329509 12275062 298216196 166813334 61354075 977368438 511205312 573682297 139113838 777512109 189987878 884605290 265524045 956996075 317845462 950944072 587940664 719412432 865598216 563757081 23655318 73588098 84986781 866444551 364524751 587408649 219227278 11328349 899936996 229545660 798785667 274402040 319923543 898198711 509642685 771772839 915229542 441157036 958082833 77586952 836156651 665092152 876973526 434272260 652352997 4449128 958291099 230022636 994379320 769906367 255444808 483623252 469657156 978657431 985453553 949389759 871407600 516816643 195025617 376577675 397195231 929096707 843534738 403676548 132833970 568071727 675907181 532618048 385639383 298573765 301947730 868339134 926937651 205855532 227160678 821395642 734196323 196714592 105166124 302012532 346064155 260469670 144860531 890694811 36005232 647240724 974163762 918557009 196113338 439678538 492839565 164287015 434967857 274797620 288813253 563319542 739799734 731110791 754603238 555639020 892059878 140747438 971890311 730834530 285409139 313606685 536094322 221619797 331149373 752135058 446836458 598937803 974090913 751917943 919618119 154461415 825918309 66583 102032267 687948622 962969649 943935806 804864992 992066154 245678359 718729969 177304852 412894239 684248802 105461289 310149410 703806815 413034002 787709800 675251036 576904471 691979909 379687865 373350642 776312140 103469183 97333831 823368117 945330185 612592885 534732627 948312478 538351352 978822832 382430178 769144995 569521559 697607835 275091985 244994898 732613361 585453873 752152127 337514516 9604012 391453236 510999691 465689725 476757963 632100928 893337204 693573036 352909757 424513057 230921477 314654605 565977068 136811715 115505575 389119205 381544353 192201423 207936138 967580508 635840338 197862842 600611166 465626478 888308024 203898277 122137468 24201395 404602174 798281578 257987377 571676344 978786898 186796431 779053592 801450050 863320332 234933852 736104712 870229660 685904605 274693752 746816293 324776531 406261007 766066353 675778527 321878929 847535253 303281669 851106939 161169641 495279901 463628928 799699465 576567519 596529757 828828338 469353570 41988252 54023168 493809501 554594590 820455991 280326419 308481195 244978213 597083368 337593354 22675000 325236108 953564274 818016106 502420881 235201290 200575101 867607679 951022115 801115959 33828471 320367389 415438665 573592929 226928555 190292850 526775805 898950095 895813061 445919358 468953538 438785386 262200031 829284366 755369016 532016644 74727637 144968272 23581477 729348565 637185924 167397721 216085292 90737114 145267402 186115432 452685993 299677453 57349786 747355995 673894458 173370242 493241543 425157208 630839923 349858955 878554682 551544663 539611874 563542065 47223036 985456099 842259182 796143491 398679639 233249927 184922525 271672398 385416450 190019221 499486957 680240869 709964457 314561550 741594431 981779434 499552349 911239486 710893586 452089428 449837399 225507370 135289760 43416631 391802778 480801689 161778583 769903904 967743429 851312352 201890959 902040697 97972994 421774140 617501189 154404375 310622813 496910633 284011392 679644162 498114402 737980068 369732800 943165907 740508899 671076536 21724101 683781659 45053184 304911814 393742446 366298799 995189073 258966466 588538484 800571314 292902315 848430452 570317589 10382323 105203052 807338469 633853128 441952258 95717396 548593270 970405578 582245482 485469904 558975612 631133453 719219597 793682911 861718985 252632212 667557596 454912902 274525692 971175561 631119929 609525730 270592847 885346114 733436360 325717673 679163412 256235516 73941410 902111998 48626675 637261440 749716949 998675719 248543344 83088843 553387768 471802430 537644774 700182179 278608041 97206315 585952206 763121452 116708069 627473974 30173433 763641943 770757798 853970403 410566605 360335805 658620899 161621218 857811526 891119696 549227251 913531526 368031974 219002362 363808286 500548144 380905673 771325595 75025226 467427221 365018369 313631849 344777677 87858225 235044213 396928864 164306069 34054120 958833891 281663077 479184632 919389772 561871981 736566665 722600114 157679252 364855415 821225674 886466710 286103203 560705386 733292864 195856497 514005842 663274116 994242953 542033203 989691020 99323742 109294674 129071874 736381008 343439819 486135554 949189119 650781325 387676136 783658245 921591203 948496433 950388478 61822499 407947684 711005771 97411448 692111767 697332958 541838392 6905562 582580989 369421329 422424282 640538641 446095583 787593256 796207054 578129228 609043336 607612804 942340786 611651717 593711148 101991022 890365709 593270948 310507974 781271828 570875010 406784545 942936735 326092868 860411185 673197697 500583456 919065121 47872345 92708375 426130514 241601683 263563566 479431940 861549461 96338955 292895902 285646671 910407657 155927893 538265930 811356007 186474800 585443100 800332327 858582428 954454812 689976445 775530898 951747590 669434082 306696139 140765894 742981875 992369168 618340049 366918320 94114676 537343850 178079126 436201834 838449200 664021716 521078756 99411715 288570034 598787032 87393869 949081169 40292929 796000776 698475159 207286509 326277750 955330013 382107962 528325109 873124043 387590878 4413568 894870847 718851362 980204282 682783614 19055811 776884110 79981044 617288580 751189830 999823729 229306928 638688594 930920852 311485742 847138965 547125365 477659541 600029602 793172969 288238678 422411920 73421308 202158097 236167891 71003069 645133301 651681999 428219240 398530777 146970451 699374754 157329422 708502625 234392452 228445313 867660823 46424204 499829639 9496054 390671636 135023515 81425242 42858053 640182260 745408099 709307857 671709922 371704405 299652768 254403285 788706590 511577033 530000376 192193077 643354268 213526182 104370767 220932109 173738206 760030300 173766756 331411769 538268078 553790329 838504916 989000588 173466099 688153220 94529620 432472696 69816733 143001923 264625063 925257690 597973438 9657001 342740269 629010543 828363049 6568401 231797340 772730228 640541688 865678768 654460223 647015449 282848221 908626996 860282237 265362791 593717988 693656184 847473501 44833920 559619291 254943299 600561965 197670600 35718150 671385157 939269437 350317985 904776283 999223233 356403652 638724393 345614778 165992006 304283817 350748967 51974703 784154883 945208517 72158010 75584170 385442440 989604630 88868419 847773741 663878172 936672109 632778763 288104464 94995448 739052893 760892189 123435744 469423543 558591876 46355340 373675045 529824914 731622164 822111571 869590108 730909780 29825272 944616872 862212146 849506732 672370714 420483926 973843110 197158248 604323069 95187517 886666010 633537821 27273488 255028049 315198384 249915217 262615719 314828527 906029006 675466370 56255165 219972814 305282727 34581475 803098780 522563513 53952686 157415803 911104915 469691901 978858582 107055268 915492608 543895335 451238891 738114287 334105108 25797797 83486178 504748206 425046649 94795219 619945172 20537232 297560339 544159871 944006998 938633997 435038429 13327870 453945152 464326893 48405591 487350567 313815760 420424935 194744660 184246584 277162141 268227437 224950994 130609492 572734632 9145181 484170963 259189614 98259816 210771563 225219385 183727371 659074749 145975641 975855365 105533673 562238199 263641099 82018841 679832919 355488526 855944401 15515100 233562044 274473756 53261572 461517049 456814674 203479639 867454520 505278597 550389054 103361695 64019710 224969296 315714264 44340241 747705387 957113675 99348553 27005549 625518343 227526681 785054449 674255909 197018460 345459234 218429653 52634036 146244588 945075158 248827111 348217019 185217940 452852122 632524415 503920357 444364702 175901574 190527103 21429886 868952758 35188227 649431217 886546881 730793502 611581771 425016237 28600235 385328682 717249051 15576587 74478279 725932375 465531786 978721581 187186426 982259240 113234163 632616922 598563061 106266783 211183831 686859632 77486687 699697461 508929845 487773757 862098864 702421663 659206237 195530370 694364743 565391986 828168279 461340997 692662927 97909263 284872379 52290292 991376119 667774591 769530644 80360674 670298926 581146041 609836266 778980547 93600764 20499227 216268977 63796408 636953272 235205294 885672592 615982527 903989109 5542208 794090606 326568487 130310131 851601230 438779126 853168670 210168982 222591652 437438529 905074169 883385632 905778527 663889786 266314943 987142889 997668414 104346441 28682917 556164218 41712833 501793507 143390144 778331838 708848349 987594004 399972613 8109512 909665645 985941470 376799778 647935130 671595000 487140716 147854995 343735197 594229803 436754740 585061525 161469195 778757069 883038531 460907659 693922025 661173333 315473442 189660539 637915746 135187697 765185705 416660079 279829924 367322527 772131779 602008774 943129095 577234554 289538852 10209051 88609997 940906939 203086615 670376874 929226501 139207980 114022672 716728755 76887787 50612303 987952455 266757937 318139920 957340280 439664515 160742371 631961535 136149707 304208047 9300102 249085980 179428875 516565525 368502706 819509478 905348076 761172100 320994200 145499396 715185587 137845334 385514453 375168828 482187847 238852924 701195756 343786476 787792624 313767872 469145285 234610713 916091286 409402965 879442888 189322356 646475669 375371114 805920054 305323983 783911418 597177560 314809463 527956916 860178356 253211001 410099461 332193868 280715331 227847486 457320722 694442802 476571702 971419863 405535762 793860725 232367157 610155691 542733074 319860518 630431210 716059911 105020398 37388621 433626498 216227659 241135303 840082893 56853167 727953686 645456870 377054223 850809376 490588675 417647896 675496776 849274961 62919456 229746526 471998065 762041610 737013787 108614620 110025225 221996372 726134531 855015577 1097020 359519172 270270810 235315245 67491833 971675792 513781115 547353264 77794493 584654161 754103314 905080650 493739879 308174290 718795690 111220036 476323166 481306365 556050694 580452715 615465255 741618607 593984230 375295381 897688877 327846332 181888921 730687710 541138363 811730646 502016513 438616594 856998977 118294738 477538335 143294778 34066161 454856847 7357233 234782261 966206814 352164415 744595487 902452611 397245908 251717697 181511790 524402230 371633826 885946146 695837802 94149621 538914217 650267123 729838334 158002517 668184980 431645598 334024485 909911161 195714276 656590106 698702678 895823630 186771646 984178859 746270079 173229980 473025675 90463539 537683048 375079952 774601172 389593608 286792091 133516090 38561508 279027503 469679767 974038448 917193180 58869018 243154143 906178804 287351683 454540976 661443963 565448143 719296518 195326924 61522060 995041306 736508194 951335097 163602330 229834466 274195422 684587296 157028072 822938853 570000477 266460944 386392459 744112675 195399389 445866835 677028196 852425824 949896631 722117607 119948910 235224843 185516829 55585330 338022684 861730182 803943362 670796891 3382759 371763132 797144955 158780215 905288660 155773820 594397718 524430779 405864851 353303625 887824795 551674736 207656839 783435106 777677122 799764685 757412110 981672961 371835932 242100732 802734160 978258189 22384576 826991701 310221036 374270857 271439692 358722368 769934574 568639130 212509912 142113023 123870238 431115315 314869538 229337459 587996464 210180776 710112716 332396365 846465047 743146593 820182526 915431816 110023368 284302987 940504205 599559696 653044205 734129770 499122776 345232653 411831002 894150140 822489182 125901872 910534599 865446199 197884108 478921900 675709154 843000063 205004798 663610104 924372117 763389538 475446947 99001079 399904049 489973626 973311208 490420785 898190310 506933081 466460499 690840993 859824597 47545192 617956555 833273697 471295127 746947079 314703858 680413908 194241599 859769483 629837022 814813830 809302547 793916328 758402646 658457360 835841160 506837811 868773769 516094546 471159677 866386798 902977449 347734392 608729732 557347029 734518745 245326608 21588156 164153988 132721889 552232944 861462351 889950683 777971643 393386228 732302902 277477442 88433617 57220775 496511985 430659209 933113365 667093247 728642525 160290252 303082590 480271149 998936737 213918326 250359564 303537330 305786580 537389085 192301886 820390840 422932044 745091678 158210140 526079352 724823451 38725066 975054945 980573031 504076425 369387249 11146070 729877164 879987955 1722876 941709508 693233751 383067018 897534970 116671172 37948536 124400531 744214549 591107069 525564383 526437790 113295484 573696174 636028766 718346282 615860133 156108025 777185363 1801167 232150453 862507533 208392442 52326921 201548487 256269492 807399662 784757205 15196065 244901915 418273151 965770591 944843216 723626435 220730988 571089014 761801990 440415671 166345503 993951922 676693575 661412359 378547406 835623338 251568708 322208127 519670616 541140352 586856946 833595909 360961346 971288963 837203653 427825327 618755681 865707826 909730570 690727774 574528280 746619565 280026766 344369782 530434326 3034775 346700402 277264864 788733515 853190711 376283165 798042587 427073040 858002477 531804346 819972662 988451833 468095317 898933079 423085790 294375544 856122429 127208983 915361389 994008597 614983844 847934929 119403732 168123944 42144654 989065540 555793807 219382733 899666000 670792474 792298858 916952840 514660955 517413386 136864726 522554461 255591665 585490205 731623956 564100611 369391914 276071905 579895239 531053473 260296495 105465618 837453227 101458235 911145037 980761428 570855113 72112881 6895321 132616984 707849239 122178563 107102928 938228141 653075105 2017032 261284395 739119775 557862857 238285557 510929123 740664427 582279278 436530736 68837670 868397141 224893978 339995142 976463723 648580384 720797160 346662310 452853007 221756715 544408367 378373874 736566460 751825734 16976764 369842697 883097428 855408565 158057749 875963022 506188185 902014850 816304367 63818714 290135914 995014905 111870395 785387570 591663179 49130919 321656267 924815953 907409913 835310638 420460876 680652185 765875799 543124291 697392186 527342588 37821372 186606496 145150104 909583173 553659213 260678628 774589879 85087661 65080003 891492450 208976764 706779325 918461165 67459978 115341675 985271941 22312545 430291306 319102198 112073190 483216072 532560484 124027485 965998296 286866559 499813086 30755806 729613079 823153376 913851474 947312319 254745129 516472276 858723979 203104364 819946624 121286391 924726897 261942988 213362744 119318891 93676179 34224623 26705382 28419952 282043579 926827033 231510967 83810317 391822367 399890709 883909755 311338707 605026565 271539243 230759018 329976257 950995596 109016833 984879268 920957890 946898051 72088533 213706714 590065478 986581815 929462666 91109707 22858728 349513684 263244940 214283616 656701797 403047762 938443225 524238751 74357929 354563866 778183614 361110736 342895891 259945473 642398161 878964231 326554402 109126060 797127326 848688615 216294989 152421530 358655152 411009780 478464616 96777131 986434118 52367101 554111631 945991140 408443501 93637955 139843050 19269262 367880791 887803131 225562592 123040449 468876606 497045205 726877067 259727716 97824274 270982441 442400426 407296774 362738383 441858176 930615700 28112518 956853726 40590001 298895111 487518716 96776288 312400024 900189828 717134705 345069293 817177188 161398371 882234859 567915041 846347246 256487513 365944839 841080631 561627358 786373372 240886661 7371685 211435972 856907699 460988680 232763461 700856237 785140052 342339291 712255117 515763633 999335568 966520113 543871961 374159026 618714335 441468657 154470336 282775730 108138325 804741799 617558065 205950382 545224021 861877431 553983771 203688214 585556303 169976984 47942014 428422638 327170096 28184846 23760989 864616110 950323010 310742974 474448995 1478022 260678554 792290039 834495348 727119144 555767184 619416019 434068545 747570990 326110047 905554651 584356992 237136195 787234428 830911810 618121804 425283704 964313093 760632680 212402748 262533480 747063283 272473042 959728795 13349867 146334963 277758972 554200817 490293722 916308724 203975308 732614964 63332030 676737778 14159934 8731484 313987358 925928564 30086409 797181609 413924550 377161603 680211991 97500068 257972309 115893454 782444510 31405203 561233208 807547274 899010721 622582416 906154770 47215155 377859496 998812628 339512041 5891843 207595163 856626862 673011783 232671736 123970743 647608957 180708230 22950215 888319418 122894005 446371282 556518962 432555975 98101891 63293012 240602621 78235969 751333408 385001901 387082460 573398331 377336157 198219567 510057876 534112465 222500575 411875119 538490685 961829510 374099175 442401388 895706131 495190400 20407710 377041905 584839877 978842684 277949691 56704244 738641143 785106907 874230002 56849451 552118505 247593003 52380612 951284406 995758307 472558725 921060718 8057167 501733463 487418612 331494351 102599839 595380276 820025221 3595311 331231463 629372840 157442656 68985660 616232818 573778477 329739684 112644617 70994562 170468510 311554061 261686176 557366967 902383544 292363996 753316069 151653190 299198753 495593197 636012177 799721045 332441374 942188273 481464626 216586759 591072970 11141956 36451206 140516246 266183869 892727207 23637371 264393174 14797185 271294420 90290041 885808696 624291745 296639315 607664680 577562872 440958154 174541055 726884615 716732601 38682467 189954775 242867653 186139827 152543726 862673936 65865899 540458489 283566979 714493940 109102380 920403956 566911669 342340766 676849896 662304413 172071155 395676842 422928145 886421907 671925684 591475963 56556560 468008209 67677453 980442854 996043626 379215048 686318194 236110067 158083389 659999091 342613512 387786763 145972315 203042371 697948205 902053427 669842832 275326553 766518333 894947462 314851840 658530915 940897996 279511665 227042494 129317408 703486266 636064661 414792370 624013227 844400846 171735300 28225774 7191883 790646704 523514754 803302827 570458804 748926992 580386721 109323659 423665347 465386263 13712773 453999437 673395236 111542243 633964700 280668993 46754812 654998242 62078126 119536990 202457931 901986093 599120354 908376717 905387342 179677004 537139262 834153688 864798872 185641773 797334044 145531849 529991785 110263967 356523059 806137604 841207479 439113029 839327886 627587561 108095100 105741377 825841963 464171753 4451256 796630639 674264437 620119107 978275614 288086679 946278201 482175179 457812412 690712249 277957172 690989849 31861503 907539326 815676507 712382479 458199794 467474992 802569369 217651538 640918663 549722980 186005458 141448750 511121070 472475771 253387965 822170856 803807183 531025691 351572274 124279932 435221283 518328236 331147946 656566827 49395080 476118110 985927093 866581104 920685772 53375906 644639892 599275182 660619294 943720258 878925750 895974895 492757323 970630013 271751348 47228300 189445941 704683502 719443747 226623495 472524096 160867497 62734420 74697540 964351060 690412681 51572852 144668103 256873405 363279238 677649414 23790617 559164031 451972036 963504397 783492829 930335831 846048277 456311110 917746875 255489026 761240151 250858888 321787847 217314086 534100649 979314509 417290134 676102787 692540442 826645865 32202606 940948497 767148426 612523354 272687107 236101394 339530899 597420852 824071587 928239177 358872560 812067717 11269432 836748449 924001788 165552125 995907076 708213214 943078120 4339383 394136116 79447244 258341130 736608108 833814798 182337024 181181297 185954022 903665791 714288094 504103490 616965833 574040605 881846149 186566979 884006335 583542747 5279275 368317837 388416507 762247540 881498181 849675597 103747367 180809334 831162255 897793050 367237774 183937469 911842559 460344133 853078006 605886898 655195156 460322622 54303009 740529761 788147440 940554322 281720546 410842537 799868830 303222907 444991092 508308970 878427672 860534800 429079402 565022545 984669005 776500929 366332488 45093168 957980654 777087539 809119281 58322535 845290832 453890425 828830418 651511315 422557555 137629926 643593493 108070822 848320195 313481108 681971499 325901650 306264312 416753886 182023903 243312552 192604229 797000604 116893477 446480437 84092298 929814562 463195920 297103824 931144075 93943119 541723836 189502628 838066988 583605355 38660183 546231601 505203875 233035651 427740385 122108897 256292446 540739975 990252929 966679326 665604335 361685736 552322407 857961446 221843132 735379754 886259500 955462538 167632504 293907377 677959913 790257967 119891803 258994068 522320982 388186932 256625259 615019307 280177403 833515917 664785741 288030247 510033398 666177705 376243343 820509208 914736860 662373875 407479197 920466642 89686825 876825913 523346935 433601646 215323590 547364428 7676960 7171917 429767153 809911176 906197281 20856592 912053417 296022727 954328634 130440072 176924920 7313422 777598113 129513630 241184769 676298350 474161613 539804807 837334564 921961933 614156373 240955297 900634500 833402917 701581697 717608417 874476147 187222 270438520 840856960 81978371 352699518 442845405 775342613 988007030 793695657 703270478 445597857 622447311 660905730 975688422 348292387 494795802 395447707 905900479 897506390 816657407 844325967 852657418 266693134 690287180 175536620 863247433 194672186 337919800 988003987 226830398 320927962 827933561 434258756 482781101 817949987 837096433 785259017 949558814 397453597 799582886 343516848 74388902 92586785 445763397 813144465 896038982 33356497 178168668 633127224 263182972 570489957 935958841 993330481 18236333 166775600 304658523 717063197 515452424 723526237 676251727 172852864 111293886 886600879 229475935 552814224 324142005 75620577 738421099 254749148 406633990 653409412 345748517 422449432 785867832 996275783 353263158 457291328 443546637 110580182 826573650 906548007 703240358 17850697 69075334 270302834 33418397 276571779 605823732 345618140 714116056 224203226 537625145 459954934 524731119 571011409 262431886 809168162 628207154 173159311 395179611 615083139 194126211 538428318 517971740 598103178 358670160 527116509 32853599 49764186 391175682 609348000 401427006 319313529 895975273 366047018 43423775 496431547 167472506 549106787 843346168 412687873 946729084 836038842 904072924 105116938 27377787 904099021 790409589 11087952 604113317 171012766 980024319 39692489 4170656 891996830 151135826 467903367 360229513 772384089 971648950 740737727 582850382 133614325 276228363 173797919 704974501 388107614 572631872 118088532 956570428 320223417 658110714 571286054 736416952 227382339 510075720 436983148 159967670 355025963 358464473 801318262 863944436 261816910 855748075 625761630 86760280 967314063 982531388 997319729 747318944 395911620 55947675 679086323 962836935 929236025 993390088 382791586 701729809 193785855 7753050 881941942 130971191 207255607 153953580 467294347 950960930 264521200 447779931 185515908 639612636 41261063 515251195 507360988 416845483 987057858 601492907 204242179 489722088 21967456 483721169 14296241 336079403 526905571 391848194 912776588 555315603 419115848 945326192 838140142 812282448 137582313 985563727 859964625 303959607 896665993 14208050 987689680 590631662 851145166 631464528 669605763 18503502 592693453 191202104 212678118 280660145 89583120 605027428 797065751 19669748 24296997 996278890 70459505 301343893 830895170 317379527 933213249 3383150 562219215 930889953 147361442 139119304 664107319 518653811 859390649 666116650 161294223 427609183 298548539 23436129 375695894 894541399 234224997 75399306 950604300 224723132 361567274 540435231 850589355 153868448 219228274 640691426 925056124 881137843 758454039 105763173 116864719 847652047 806558802 577621284 208618260 335747985 368643874 939895785 403626682 977987774 28636987 210025827 343756087 441130918 338314323 533235281 343830673 688213847 581318998 793168143 739807894 991158469 196920049 168014321 812759620 884582400 552278914 858063354 901131236 781247423 400226019 607477975 18206913 644253781 347466202 192954704 446844338 487556989 213472134 276919139 510067249 277356604 190669238 241870381 103968674 337957129 519760705 407512164 142359752 170666929 445078108 143930801 696197763 323043847 962668975 342281689 913986546 412270795 565521431 546027942 913643007 468924070 54749997 672591360 257316242 225530204 667236402 71147733 513692528 880782987 212232888 851282912 171823910 534367901 213408205 986742830 181988975 486586251 955888517 481781360 773010217 188479125 619680990 42293525 791618022 510896997 941479825 375478270 380453168 734381585 814335709 398947922 2959563 380633378 967192888 566390089 319104436 55356772 446771696 429190914 886444954 453600382 473156697 526672795 107331854 2716546 677997298 860359776 772513568 886479924 632002966 566625316 804642342 730719587 716941973 868632546 358880329 387606387 225140503 472657509 430399696 426079098 394640460 246773581 157559039 4223567 255103890 277034683 442202263 980423614 155223197 73709894 85870948 414613613 380118601 938238770 20551513 159813024 662330008 466449418 707988312 376042912 478960844 464839178 963661514 39995783 581825777 439117792 708069895 515328727 480912768 167048372 566982517 349876633 904064104 807213749 306303167 978152636 90026937 803291145 896101387 980629195 606119211 804532743 514951736 975667386 168346742 274999304 700969083 540874710 639168282 18443935 914666686 495685754 188669459 820605503 228541041 145524875 713084225 940732714 687241527 935140239 901478389 654136368 555057230 135596102 687802154 524285863 516085410 728799755 58356334 443646358 178945420 81574826 273846685 813050812 354644516 557243386 500654348 330354294 109682287 22529900 254734754 730530293 754463309 751664321 580135222 418601030 159430054 773195355 20138330 478674043 693707747 592495770 647321463 760421645 606954101 684394542 7650762 986765667 943203736 597569854 904427738 991858702 733311541 521802019 539648265 520372357 821402618 382849524 460753419 3455269 426636061 999710213 472767987 918522880 746596572 596067132 102506256 160458594 994580916 371431346 952092413 718718817 953784930 70638980 346236014 622638743 142541028 644370781 307118859 721064237 938332823 895840234 333079050 740287647 158468332 733048722 158947280 382891340 334814420 987544759 753283585 679040506 250315775 708708250 512021722 989416569 572994351 643469107 336067608 717936417 789310108 915427304 365133404 51676021 100294443 201584928 792986766 48723613 835472662 548324779 151894360 4964632 234380823 52846348 216967048 194749719 122601952 483330824 67798882 516418963 751705875 611024370 769020143 130568180 624268533 813145469 868773767 227963702 42539075 739037247 117463991 862037924 351856339 867189629 856900375 569260208 280345653 79346978 780439190 378181335 535991500 839977470 56756575 317868091 818609475 745854063 97280126 586383827 30069451 501803219 490947336 949535238 289065677 390579494 712354077 399185962 749942196 295686763 365732424 871643542 497362603 159092942 233441701 604356619 542478419 879372214 244905456 181292547 474230554 95137640 833116846 169838421 405757825 977862832 74110203 250285181 217103843 728434003 510717878 794990945 890290923 664629141 183098711 482660827 864530442 335629137 333282301 596004991 952618772 785470946 604613714 675295769 767040134 976042127 91441944 25135723 112570216 680749540 758612334 941005136 862945767 235484942 383215047 978029141 277616106 958871586 675843729 49295167 126565170 646870389 395567542 611592117 933106292 293163264 838893792 519064395 531601668 705306401 190767662 19700940 919973865 520028136 925292646 57446306 975857735 849921988 197201606 277879165 60707512 565669778 57277593 404665853 268681360 206496973 31655533 186162326 758195981 919544460 157446728 329375663 481025931 518312278 124904824 94635352 195295510 343680900 683231284 462029501 918579353 392281536 909278156 886990870 945836784 297579466 852924782 647669979 741214790 200496528 152245969 587664372 237177458 914217017 486346388 506512262 234073601 811298870 652856802 374274599 52597110 291132933 449581028 37072222 433187090 876318815 213143574 907024414 326264841 867177370 420914905 549863494 24894418 786901237 593758075 848408647 341481138 847604758 412920075 399812694 486861144 138775795 947164519 399876874 706514801 596234642 142374833 126026861 628401774 684078328 424267961 399524949 130071883 523881049 899904612 520179615 299471039 635104916 826703347 340794334 710909934 788565298 924686705 186470766 46800201 764622673 795912392 681444964 434990530 568024274 806173581 525459486 532226075 567679200 738695698 605025310 247487006 670984102 753998436 253956071 729420603 891780238 797073766 546494193 943637775 332047055 555734357 484818262 410897619 312973351 834642140 673822059 434853210 701832660 522508001 219879244 796296029 323870939 381701322 738949675 771635616 496974677 746475693 564202943 617273076 973835888 763123351 506615155 891712816 224313626 463770190 815011899 108354888 613430413 793449231 328823359 628964903 951457370 831994634 810675704 353280557 801128125 752765191 799099977 438727723 957427235 290438286 167769986 91749238 687159412 894765171 76502163 912317772 545787625 617526198 522957199 625344932 497858261 744646687 672837886 859119511 254222625 422842101 625088291 419687946 994468569 847967526 283150022 703784119 419844115 624535054 62262734 844802276 970770967 665634456 798145631 260492605 406252083 19514270 795444471 507868069 17299810 640211148 489172866 411302975 158952681 504689408 178082514 550429865 239394018 983331490 50148242 592959664 6796909 394789777 377475852 394654467 282643364 969301471 945590201 525303224 553672313 574413021 297279400 155419315 352919237 55493954 811032584 693134310 427969456 750014914 447756746 912779225 369082989 523035852 427544191 176600056 992381781 351068311 285780070 753933092 42896736 275344387 946168021 443576152 410527225 199619053 643834082 311739656 648591748 765269529 113342846 903651655 420372399 59527309 552917144 693379805 412471838 939677684 827858847 302158883 293379601 485766928 12643755 728150278 352347686 953962058 973721904 749957806 489331876 114177707 925627150 255809215 800804480 160489368 262970552 821138405 323257232 108086382 102801560 15393362 667872812 716620362 246900397 534421326 745305466 734393897 769912313 282429212 625704447 64796497 303525546 969414823 76803966 738208722 67096667 335084597 787486030 214615915 174046166 465881672 678527435 69553569 463668976 800414213 695855046 668973231 637047575 489959169 559479978 683441396 974512863 79899594 595255786 523744040 322348104 817695648 91594866 784773495 596700254 586977845 957992451 544177966 928236283 778350581 241081529 433545456 472297378 346813464 460369411 718475272 137629014 102141407 317032109 864329929 228835146 278615083 356635557 567319175 751242277 900970412 421852763 654264931 703532416 695249080 631506897 705424813 465864138 118199824 434788666 380881916 150814669 621420854 631225867 305974687 793146108 946149068 562366616 634508064 432732793 184029768 862418072 62905245 90532919 812822275 310410918 421228543 406386571 426564339 502542416 450176357 755682403 614928053 756171198 363889230 48972306 618526280 512246627 798452090 93419371 589626189 283965811 112506496 701509844 611237908 224571695 962657281 464720960 661549506 137803513 137373093 908574899 146240251 485139570 876635625 215102460 457597601 925040099 135090347 248979159 51336853 23270790 781242349 585774937 660288589 552178870 362774582 545998892 190980173 992655706 647043571 289607477 381007184 335084527 628725402 962250188 21804240 410859074 805565835 82229984 591638306 499891713 765605995 510806729 70185207 727910131 487097920 329067083 28523058 40365845 95542393 239635059 962179298 903473518 585077275 46605333 215429504 402397535 61949786 160543229 680782932 305456611 975504418 827343000 182135268 517922393 682985761 125725340 611102721 722911372 260230155 302480708 64424755 409284970 516868641 410953433 415507749 646490802 314306339 708577793 235625068 197538846 109244204 945384489 685985254 318939598 331621209 127672406 367206266 78451450 527211169 826403066 59308171 94467034 321521203 257018465 483702125 294051975 944765545 666685544 397383175 42164847 45594845 222448073 230469578 36903707 684130910 324831718 142228963 235955257 927908560 823641560 924350286 366230241 182299876 472024062 787341969 627787372 733418464 145483645 411223518 60736871 488732500 799299620 830944700 19981285 141801931 180422459 699971767 187380810 777401408 292643826 901763352 485856068 768236406 757717003 37446099 891756905 65057748 65986834 314291693 540185736 776963054 870363175 378629061 467281714 187987926 137314715 726608190 858289589 559699628 85258556 644733297 362832417 20764124 158345197 248838731 814032173 220746538 976212601 942292567 991756797 416876134 361020894 111984464 895286636 666956734 476853978 360287853 893644980 787767400 548070054 677773809 371644150 749573511 955701415 71329830 315426078 695407829 342049423 97163238 872187043 653836538 244826988 934977650 845800742 138513906 781299782 974636630 987522035 663586539 28925328 485178252 751036785 161547294 488980752 770379814 615652158 762985700 808826088 635162941 183833793 712346364 186029759 844146974 864527484 446646163 922104151 608987942 134829619 814128819 536021030 772971192 177257011 746664112 10510718 92500163 430276507 787480287 70782157 77131820 463763888 324930606 184675408 77981353 549447505 90542983 228506166 689491603 580007545 327458771 641522439 23471192 467444459 331591295 704415048 550731241 409815353 611778084 768539010 738536146 318914023 867360526 180480694 960212286 197720233 671731973 337992453 844239904 25723603 604687306 363120632 858823565 578917534 4740102 195668817 831584545 611401957 448013709 110692657 757442754 575770722 688702837 144993898 789689257 633289180 873663820 437676220 220459143 804446411 290330769 919824983 602980812 656234246 524659472 141167879 501457105 962012007 529813440 943299750 81590928 278017792 513305608 589071860 124472406 22951958 31696257 891114972 384231203 390415351 101580050 242095519 321363630 305316302 794761181 252072054 422550266 350792928 919804442 110223938 395343419 907892286 958357823 454895060 904317067 220546393 486551057 313635786 221437346 38164074 461322758 825638076 884202155 120808465 868601360 723988504 461828191 671192668 693650172 240291646 615818705 708130790 342731067 411557359 985747797 117770270 264896816 597003767 189078938 464532089 170844787 400763228 974923942 801810077 123791182 31536502 784786308 733722019 164595227 657080203 336537726 842031932 509461341 370468657 776398710 607374283 30768015 523729245 846024347 742693113 178002922 795981708 624114274 230865070 997838495 638612252 12214587 381860282 889911477 116043151 556923296 710312885 267645926 973431854 65076386 307683910 301691806 243613751 159469728 239403381 934389329 106608871 831036717 408610102 291529004 855302977 756187141 547269534 831344842 463087301 666108612 998607945 49407429 531677547 694163292 934025879 970104387 692489099 653337463 625870571 606407873 913606143 872025472 490526482 456506302 579220330 551045451 768795191 237413408 166799337 265979332 101027949 185947078 723538383 909829948 583047317 429791825 410266447 578225513 781379113 140122269 37134112 617287865 549312421 249052426 463452942 27032265 630926823 556822915 1892803 92269720 197830294 339157363 959101133 741418866 117313943 831961344 969530506 289308002 544959498 232674283 646941941 666831419 210915032 963349578 722305214 707197580 186391113 944292422 815877821 467108812 455963740 539055149 559324455 367616189 833270835 278300241 817240872 795498581 620689672 885881488 143809723 416612061 97152579 786237561 113598748 610218372 773282427 16713171 765987975 960528483 91520994 491941381 266686711 827237903 365273687 925659357 920536402 171358900 7287583 284296557 434432805 546836741 619398409 243425063 534502115 617219110 452434615 714793367 980223729 208748307 411476114 19921681 88157750 538009201 393922953 178692135 610795144 17851959 733527441 536995687 734497909 282623257 783430679 740532893 508778940 803744421 63737537 639980381 277272022 159595789 927471872 872984231 663206862 951763667 410032929 37858483 288667362 468981435 194910149 486156362 585407948 757843877 969622633 148567842 354790544 836771511 699450939 127238014 615008771 791282656 198627793 763564873 938455001 489161948 616378816 19360334 86670399 658632604 576546910 806937450 500067283 471857209 910170017 769034124 295857732 583369802 251944264 464245913 618632059 566762247 587558282 136885734 292958372 563252848 661051723 903321368 615124618 979764336 597823655 560528529 480230784 115670639 721230322 899380645 463408681 299120909 35068281 265708425 828796003 850061395 450998633 664735624 639261229 535979062 718474439 44657192 289829318 737546534 503578299 291539573 852733500 342427643 228392040 311377717 681045964 613246606 509734695 38758950 590065546 755697726 173150968 478268879 712642051 239320251 718449235 693567299 671817047 943245573 287805135 431888689 320462723 677908745 837598708 997177422 796222839 774252089 583633706 111146816 467300971 395623951 709118231 10729421 785279136 195967709 769614905 245772777 664798817 572912754 450320839 695144362 750619111 189881850 61264603 723129745 905843443 571634510 32367080 716126925 679512395 904685944 878768075 742958712 372310413 561786680 213113826 78316823 733373859 884419255 664713335 752886979 853057829 129141859 985728634 568750255 956921482 773858518 884291735 2021587 695252935 930116795 660383286 691824992 111199014 497801565 398169974 754732430 5794182 252557616 922535537 153111766 257291341 956088451 386623401 393167439 510020491 965537049 505874277 825637135 186609053 901015329 932670944 154875842 324492052 519914031 844739405 701090231 147670504 895076573 843421576 18138923 711158405 725685049 922932446 358993043 228794393 244005224 655851416 961428620 334408 379009128 644643530 141717342 278793503 261630626 280043818 237193852 883403161 493140122 515840272 560376815 902314072 955568014 439183999 836249923 747882613 46051586 313384707 589368586 142862552 547558655 455600859 358599088 276020805 879861121 888118679 333390903 756206202 639215956 724879456 2739686 997725683 534850169 620448072 746559617 824152182 562873294 745166551 74233715 258519965 408096945 831438759 971402405 610222037 165808271 339221756 549039481 325593202 377444671 449587911 81150136 588123268 205758287 312162638 681277691 651829528 440105835 895958151 459831540 149880898 628150484 673439776 933544232 152554552 618452854 353606870 529449879 703192825 290412995 894326516 781796324 661111655 103935290 686173983 583978918 777471632 359045566 963932955 227481619 866345055 841728103 802995750 737294421 474876945 337732673 101180141 254834701 90696287 487982687 115172480 585647409 376098105 266822401 916796351 310059187 280052436 221369330 147107884 212027530 485500236 99307931 106681004 181429334 538886849 163464119 604930550 63581293 24919706 296239322 43940748 285387936 35581557 991324613 82234986 164897518 491478637 182113962 358639172 276093914 576852575 675132578 580550037 652412659 377159328 444421063 541647948 741242032 862256592 118698819 346547292 409095180 279103227 803174171 203945393 280635085 564854602 141194578 830285942 642886675 754091545 755697967 620927707 83056062 805463356 925478632 625188415 471465610 510844744 157278942 983109660 239169742 784412876 503339992 367036504 532193169 59442225 964330355 629034805 836012953 371733340 212346953 69293923 864661469 743387926 436937076 658718017 674040488 618909863 105597799 910011 947486188 426792415 410157885 955729958 998758044 535395246 116015955 281918730 332881174 459923558 234306997 800248138 253525200 259375022 226387369 382194100 480725743 654563394 432122168 653903351 997580078 772206112 957978856 350125146 81434363 713155069 22031312 75765015 897959613 628839370 511394579 84552272 996242646 273735776 219825282 477651526 1577785 762082113 483132042 812399839 110349403 113391513 613861219 935467139 832859295 317574175 788787892 281021037 749031582 527117136 988307860 89165979 129059534 892457635 104222589 209157040 762335126 843114959 435996987 189425470 663170566 316180288 249509137 355771818 253266022 818720786 676185783 215847673 522834220 434444448 326441188 287673993 243674029 400276786 332181670 986313585 273575594 253511619 722298855 28979389 544404207 6367788 364531512 123328034 858641720 956159144 294736775 146445404 813175082 989484580 180113748 739107127 824994835 737543087 189425942 582573501 319798473 277586809 244765441 142161739 369576352 725660062 334702403 895549418 935089228 315136433 866272018 627944520 86234102 542934732 732477901 246320649 834451238 985412692 74448274 105551101 275218853 58483998 450978857 818681466 962294080 392606701 928804421 436050681 662272095 13951883 357163934 988418376 708071301 998143421 797819438 292578279 530577392 76851651 450291701 89936234 972512904 881450941 539245033 674636622 538000812 334459788 253870528 5722353 609691074 152578332 846661107 458979078 586433277 613971416 298128248 636605766 856842594 45139334 901219700 918482716 70540892 95166197 194494534 528509346 604291 168585516 12308728 210546893 814260124 873293337 769659611 602441890 771082842 344584614 488971501 784581865 355282327 808291498 846406693 681800613 343444116 550578971 697919376 8961629 550386973 128501461 786552 820265402 311534834 679849446 127141417 712982753 99448653 427693694 714911168 84181028 278470181 576901434 673849749 865404288 214222706 178494496 99947779 487924135 867470379 473387494 35904734 185023997 775877364 843020373 520441059 734951842 739225471 705398245 645207987 493513818 148547228 1822519 265913696 74800865 909878657 684159440 155105955 902801778 551054997 273138062 124681616 725802308 64822465 575302920 990276166 15938244 187633493 690483372 256636738 182793338 372142370 620687631 894667759 650557989 694383357 397043082 277641421 843512528 40382756 765255219 158647194 315185663 841699681 61978615 62960252 896963157 749414908 57058957 327513469 516773212 11629714 306480617 925381784 998166262 167456686 439443119 338919328 998446067 300392495 771484343 785578196 489727718 799155674 742005421 552512615 930867288 342431627 481370337 264076871 447368717 180366920 253330025 158244172 296759234 279660704 178346212 714032930 914795124 539734856 191617020 194094121 705576424 301924278 868872887 998935943 565926865 949057126 593021174 54395455 422333804 497412061 681970990 928069659 644807584 665350013 261134802 106232607 417705403 108085505 161387824 636632568 12181832 307772686 932215706 540704989 250083044 967901386 213299969 619012852 832388879 837897270 8932947 711622529 703295236 806456636 92676178 586472007 285614147 229102082 565159464 424424736 889577129 159827694 283208594 163039529 833278064 113268615 353085582 768737 8186414 723544768 12963416 296724469 764326324 255066667 184437128 719813165 248925265 508415642 80762682 266290856 932093039 118583415 622946713 5338338 590696087 754892202 454839720 630057322 636537534 903533366 954025566 504271853 85646697 204386515 873809444 602925247 113878935 980848951 784822270 872149335 414891886 984968297 213219391 943813541 941853786 211802781 418834587 333817296 874604360 61337655 888360556 79025929 286778684 442712036 208596411 83942283 128358514 778179561 944563602 83284269 614657636 334142988 52422308 183259837 124352750 291930858 484140055 734685165 841427256 760007060 286973511 89183463 994592830 825593745 775966874 26880900 456310586 425679202 413387082 285178131 895492081 380230761 839915049 801947683 10670624 28130104 163441948 599910912 242847688 693385425 72080067 366869337 34916709 583057963 192303798 48022394 202459449 268436373 526583825 930229810 586586379 968367763 894343586 414269929 833606015 590084945 428629428 448241802 652659129 123554603 710117686 876554787 114988637 257288967 494216515 306886414 800775703 846873889 471826473 977557785 62177307 322544951 64239425 123444420 439653549 225305211 855287584 282329464 582197911 501705462 460029613 78646148 641707929 860267809 393788589 404907296 887536726 548054281 241739820 248045224 651563154 10437136 55402187 696935888 303167404 711428469 783559931 777955976 870428216 298090018 177880332 918154020 360461234 649451945 344611655 403730890 810950449 970409582 869063980 806402530 124930816 106767765 40949410 1773750 402725455 453499373 560234735 529328930 626272620 195455829 720669895 725589449 291749803 260384726 814453521 862866374 431341156 450205727 807260922 463942072 279247420 788428643 317084912 497589737 884191280 757425481 951807958 622687548 257521272 663410971 857706600 330145027 616455982 757740507 908576346 187442779 833482272 722483933 20677235 965998563 663207048 463603781 874388065 89322948 94347295 421927132 755841542 411396967 973432572 884560869 98350317 821445079 350435631 870979907 604411399 223713512 538555886 759240002 985271335 570070179 562493681 309265971 975878595 863896049 201593239 305601295 845026902 147425176 481658819 726977524 396010099 205337085 524965087 785239605 2413316 987229660 327807214 524735820 819295817 226506014 395939 877365216 47625707 955925810 648262492 943178170 457426401 743477246 675419847 502807682 571159242 235723346 867588771 534836727 235480138 536060651 226835689 4934489 350163339 537118497 596688530 155189091 399546456 301618638 836533798 915226002 983326257 978145959 343895780 455817728 110248739 155507410 134081755 705178344 298819957 706000619 640122843 968427263 839839714 734458045 503936557 434826924 170245085 639838063 410865295 173921653 490213775 292574168 607297485 423155725 656410767 54008783 700567725 277039909 687241742 956373549 266032817 13700803 529938179 140181353 398287109 54619500 583508004 670188187 712415682 929700185 696040852 991611899 245727150 861666370 223296557 140605941 418373141 463618869 369751881 178331686 461663488 502387534 749121947 792075614 608818602 441452518 416359936 152877643 120505271 344881862 320620836 31192767 792559037 159513231 387487541 188941346 49932898 761411071 361604055 412002407 809508354 819788991 167365365 690559026 507955522 71222381 836129788 49205111 450212256 368664572 432752304 806362650 756007727 700992119 748800050 240577321 164294386 6673938 100732067 414673838 453253917 866755306 195198068 365114794 614484690 946428745 927588416 82389512 884784849 294325397 832655106 650024445 502602217 345509212 232061401 312195346 419397213 146446467 647153237 107294950 516058558 716351495 170668266 432806434 720661898 55090279 322816235 235209868 530955476 493135805 145380799 677043638 551582171 4298189 613005141 391282213 198931320 373417100 26634731 846595284 682337312 267032101 145293601 881349572 412038433 526090880 430358826 846675124 595619228 966375413 53061746 444616979 180293936 845964557 229620463 754537639 137638673 473257429 933383782 753736251 849239268 474878515 720511864 294445386 983034502 723257504 341287484 589628443 351524932 760796006 605823222 522844628 545261979 728880133 621916031 754055623 362707830 753412563 73301232 474226980 599536916 399172878 350096331 810039539 274613408 181221865 928502194 709735695 296207801 454668978 680867590 627675925 378813738 484675790 473936783 139632263 214833431 132557401 710668699 705001526 735884564 91137103 698423451 915740728 253428333 624399143 420705591 9485730 115720745 852418008 340122882 431295768 316527294 872218947 895222915 603639463 17941813 436832154 856308811 131163388 374095871 332758609 825681935 927744526 595139025 493636689 458486652 131664673 599349461 409895848 566454739 205281810 121654164 80644550 136813739 231805828 498732117 310729519 512071665 540609536 785562413 136349961 757234434 27114511 631622692 879344469 314371500 862336253 693304239 532606359 666977958 627164915 868694672 830127613 279870628 830583503 118527048 837523746 866755042 206223902 781753637 845816904 596445958 507490604 415903627 357827182 157528937 734058950 34208994 904843080 585015356 574687647 187493456 513764584 646931019 181885035 757967965 499796816 442283408 204126671 138838975 81949642 525215267 743933250 937941677 62929839 984079222 615677164 184474499 658418097 974548434 507680105 486339734 463800667 109666785 925128719 326617870 736190702 892506494 938710201 719388244 361418695 972315122 598261918 315482349 755129382 100945225 814732667 920929063 903934965 712798778 469632150 313471739 945909705 886397791 508344102 612354182 751143150 231330651 532880429 231270301 597734245 940866899 169621903 886745194 397013620 927841286 460869384 984793457 89374314 721872620 184689261 913471906 490157794 51157636 868430453 784882547 111748677 196551158 202864293 270606390 31977224 705175114 159540370 583610080 915597307 581598147 823178813 877314794 99604493 391305641 125649891 395187167 360387343 108826481 431527107 348895331 141795 709492928 203072876 447822457 566277188 614216357 876602005 335842691 613489640 354175020 428640178 90174281 652810565 447554568 983929486 700518710 714146347 327881191 665947047 763970775 751491237 485164172 976679764 715212039 955349708 409489063 116499530 232224496 191984610 835006638 848496693 261320245 479766349 216595399 825470139 979621205 996005364 199112681 31510474 722500322 430573625 388850679 740417458 790768028 900622499 787487604 620466248 879514429 264071095 9939554 560524105 180229962 949995865 427071789 610569934 576723688 983107946 14376225 272921005 735991008 754954399 414639383 47596783 797330976 506004055 850122640 363824456 298088666 297099755 495413647 216719381 827196318 974037199 154311893 236253412 840073686 178128709 71422545 648614751 881040721 243206382 944559805 285999449 880473495 686589643 363529758 58827637 279383547 791626355 310833460 173406987 621177816 984438572 310173640 548571380 857306592 203229358 114987112 863583746 94059462 907533572 87635279 29497743 407596750 74028618 231165717 202613707 381054705 301506473 541883885 213053050 509804699 787630298 110196103 464200017 103332916 212956888 363976210 222627263 679643611 564023191 549501242 313311355 795824377 285966505 448167061 161919433 169548574 606897945 800087672 703341165 15314237 195640809 974475666 966961675 217403369 408982491 694960907 744794271 545271559 408222261 878911643 452628909 106906562 692881037 984145743 550136088 39138309 15425895 678341346 305122354 763803369 913065744 461301207 756025303 901106288 441252228 866056418 205077208 363272119 918583447 361461363 825217100 104862282 175843076 906008146 718926996 573138404 722007667 552174090 418845351 661958738 575533613 837871327 630217237 995418602 134318892 623191297 651291226 383406978 839644435 898160531 294339785 122364105 929750026 946513819 80000108 90275463 438605796 241439825 666239644 7864725 539089167 558287200 460975209 506072732 247919603 907816710 615647635 879024877 574199711 38488155 207984771 147807160 897402752 914943106 85004862 308285121 746036263 203114981 883313882 661491226 545556618 616809330 187899395 308955466 927991223 159940507 907380706 516330713 590208047 524643466 20400398 394511251 571844797 973519444 329105652 872084034 89272069 514363148 409828351 787983608 524134100 575521351 248967371 534668773 234404699 381883828 744984115 967837339 30824164 42950145 60185262 225619455 290042055 366089689 131000026 661122785 874115267 136605334 252061794 227203818 366768099 784422412 155308320 356040245 315489207 384265825 833500613 319482890 519137790 259753641 527066131 947372946 845197592 311004662 260673108 45843575 80827198 344617994 825067588 195519091 451806096 67312126 214251722 901461437 851525554 420200426 478349958 997063278 805545884 598982180 640112354 350010231 686496615 32785275 802447944 899305555 316813261 198732904 130705623 161913686 539600221 490750734 675614479 172124986 528514338 846647706 678277192 729417024 401947244 649044181 92868236 400813252 524659387 703079739 77913264 92139308 563299044 325792269 247907078 194818592 938228982 813710746 653674113 453275625 304301893 575674597 406990067 936482912 934488287 11893898 648545468 951169083 902371960 47230105 433945354 764021665 138156201 772016392 771422078 371963255 438936392 886157011 951125682 841810474 376288909 423624079 614422932 897654792 406354410 609445419 158506472 457409157 520238210 884311485 910104957 232865951 625256154 450996130 286044069 451684286 636323080 156013062 415966514 634685975 677085084 111882754 545693463 618475735 503399549 186291723 938769060 510535338 74468817 945847821 684499113 622986168 122509229 678766517 469881012 611962170 497257226 861123096 133902169 161766127 919600298 124661377 787296888 425641773 978772695 378789796 408164687 882379833 207609080 435091403 589268280 981278997 270717633 510128015 492678521 790526577 836572390 419135437 661102552 495477643 640296846 565045373 310256858 384898707 202204978 443820469 134688408 715290980 333148051 126317295 51597254 909267772 9085372 309037409 378012546 491233246 201769146 342977635 699630350 91863362 755154141 31863257 151762857 853559067 941911242 910843760 569343010 574860291 414570029 42817124 234143268 478678720 785087157 717397157 770396529 46536688 340787670 119539350 693749577 305204920 256098993 947531715 413420279 482058757 464081688 493927408 733547133 708060617 626634291 868338140 27626838 334459961 16780739 635073949 683112741 572275995 508035179 220065781 575317853 900833132 762074888 557845705 41167532 374484835 178697287 4148728 239469000 642368329 97325691 400476427 509036579 922594969 133794958 326046219 12508590 699900180 47826235 921781405 847495258 33987253 764949210 798840269 361004045 89504089 451446093 973922243 374856899 906707581 96925840 392980854 256440417 182784214 37384324 186554970 606750223 60415039 396662043 894133804 901051763 809131561 189057458 336444071 200368414 721191788 895280996 857393450 288143931 427579007 821747937 311527528 828139631 137685807 640066021 140078283 756169909 820746824 666103889 914001975 683561276 80876655 682649594 766057306 975815606 45789743 904478393 781571793 567554648 719205410 615270915 877497292 860490936 27781242 497628300 210254533 247317371 194838016 505996974 173871908 913726748 497506526 711297862 946343101 708708381 39148379 870220693 427772978 562224406 702192840 806110040 907035670 669687563 743535486 912351409 430550011 868630895 963230362 753377167 346586114 708549136 313139851 95560406 356145389 533002436 962816046 858450694 752105416 507242847 334020631 55688858 926986150 600084797 290253368 315270364 997675102 621381098 929387706 448309182 358430420 289987752 389659704 722801396 865390390 454241598 886947143 103769602 724938830 84429913 819993122 51901213 230456459 906087359 352284472 905241875 593068608 94159052 157733836 662557316 964726294 227770909 264739629 24050162 652480666 749201393 725016931 575780816 336103464 76228372 306637843 825072390 781097656 339809847 839153473 138297161 756664630 52908962 461697411 667263724 150050630 556202652 618411233 17184911 6027815 226333880 173235124 238400985 79518849 190090730 67554156 31124139 818271517 176412807 696094688 233414358 204772644 640935427 709864828 200274287 901662479 223084358 643139677 33756000 479864946 594369415 140674575 740781769 720268392 290626418 914658746 398731751 600855373 144798637 723901922 341142641 527329025 925208695 941742237 132978123 858085260 773319654 379563704 314405276 48939339 955379655 908812714 211325568 286481010 115351445 578337231 821978976 751140811 226868182 961834568 255782152 468267846 620226603 434530071 324080482 139938923 581610706 547480645 611089934 482200115 727550570 778705353 532996795 336217426 119167195 95708136 805769671 294744681 543991678 110196576 719629555 337557238 192707081 463754467 147201463 90046766 97473261 516816941 898642036 767424217 844394299 880651121 22825451 809840930 62978362 923922805 923600456 945332642 529102276 240836217 993515752 961592005 986348791 591551878 663517417 58740398 351691551 257711291 99387653 523632756 252121722 912237773 539290124 399862506 923237688 976424325 826006102 244022555 873874408 332217528 298438751 994777496 142806328 264191951 406842189 160404440 798895134 487948540 146560605 58964233 60461833 146635226 240633684 171774159 254759765 457869511 551047353 823481295 616226821 453828900 411501006 449460757 488123528 95904996 217990178 217396893 286945649 312370784 470205467 14282189 48672528 984024512 597866941 590742130 392482777 695760342 858760708 8839941 947486696 4787442 973078781 779756141 761548643 581220246 858464954 313316698 695507711 35935324 446711386 70567483 735080900 535063287 216385699 425918876 457974841 199151942 53982903 211959590 809499107 31392800 175238761 220489628 156495607 762728539 53781607 957041639 62835773 151821931 806096464 931623773 951095091 444941279 850893025 93720379 422739128 360263839 73535905 791930818 696448651 941201099 885879719 312506722 406897878 477056972 888018467 407015235 933747753 629543135 743605102 403509048 469288545 507323940 783959967 9786584 602294527 780140642 338745586 494211753 442161303 464239472 48933061 594260363 903328497 401764847 974973799 842129129 821226202 681199041 370594168 955759484 212392509 699043243 743122977 642936199 280215405 177750666 534868154 557551335 339901711 667669484 93145542 841526838 510422595 197232618 349261080 169399704 127573917 161947490 591576531 520059975 2011889 853143238 76146024 154991939 442957373 178786847 909326980 496787071 630386946 673646336 22530190 909618255 341123778 234927376 321798488 852655942 261230097 455908078 615922342 900808866 620998129 173538056 462355202 796715696 44803821 995094568 3586782 760732676 364933750 224241789 131827740 170876134 893731960 337654319 645746342 184793360 26180292 836910424 132612892 30342535 120840783 930499756 547845044 209362133 2238347 256264277 408959142 578441396 931758477 651955337 62160028 48667278 480453511 715096979 995415791 668307195 251776879 265112519 789477161 139394783 113080147 826526958 498552085 699029162 373130914 490047060 310237164 10719502 885284128 668473591 777146858 892230758 893433676 55854622 234827214 965608544 730669717 843441626 700159772 262575514 14049777 320976334 271965584 891161379 433049083 637817420 43555785 779106713 614840041 59826805 345217888 731851298 101494015 959896856 86595021 215199953 598413555 725194249 973958955 109162876 8594285 602568996 441013667 871209512 503432696 458036454 767106147 325653214 611879909 172784904 500434413 797528385 273720858 437629624 681932198 126186071 465076233 692911296 303688216 869259630 624096877 139895557 314341611 727073509 333008173 64054969 938259779 788101316 967385789 505787361 422162254 476613348 205371945 62817148 375134144 773390559 928475145 903907697 67658595 271863850 489707905 920289824 927508 275075603 97895581 617842932 391199748 615698793 264271334 596840560 34511484 898113543 407856119 744394033 654137907 700901923 358136172 558527251 146644022 783491311 283112423 34556040 678281477 442274071 892507404 273905836 426875880 174571617 858883170 852750256 821931207 934320965 594891940 827255673 14033806 60253498 153400595 991220972 560075777 286472734 959187448 252119352 453158653 278071401 866453673 712150955 354000486 87428673 713768054 377489554 224739588 141820482 919451314 93694433 632753073 622676502 423533484 975962256 259891716 793785816 790685256 645306565 322213200 446085515 74685051 416730088 696593217 300968692 254472203 167858273 73887223 588614006 772911859 700722691 822808199 288337353 287512487 541896029 940692109 545234963 271587975 99058046 638817872 474858221 734635704 49019890 185892049 909620659 110506135 133922324 910163883 95707205 904551542 275288685 292741582 751597416 845347466 832131529 231461252 96780256 792509693 719980465 704252939 566953084 721750229 811021332 833613701 995314784 814364985 101587116 685855659 342371600 920155123 414138647 354390552 760698648 1633887 659818885 243538714 243110079 333838013 168413963 652640947 511512253 940355047 84333854 280318060 586354486 899340178 728723606 731226945 47488818 488433262 911598288 60120053 149030586 637501873 208384404 513435743 963088753 65694845 42486575 88602066 939594674 802158109 722930180 422882330 693185047 760875440 420793635 792510758 808553450 947386232 463317040 869737417 515803647 604174417 571754823 662093729 231944609 684305985 615077205 685120092 984297302 588014285 31955861 81630320 708533065 809126185 292333346 67887874 585171629 934924524 985239486 813928758 383819130 651823440 130982913 770146165 415663582 645079239 547103173 338612740 945757601 215066123 121701867 188757574 479974629 31519009 937220902 868083056 481423349 750052269 58138834 570489892 685868517 209991158 377622261 242339302 404472115 898276580 678257046 806146845 864237998 803715683 16380113 922659903 657883164 413539951 465757253 410621565 225595638 71986590 898244861 717284575 764315129 102414594 192609587 159617947 925542146 625101142 467260658 856957612 79768956 259665165 315759366 47072371 607190243 908710034 685999491 499752272 862177129 928752600 441080546 909602969 918704192 368296343 948564070 652162255 70063524 692964014 992846646 759227036 421245036 223921340 600966662 981462255 353841394 2367707 148735613 261236814 7965397 462078553 124379756 773621199 444466800 394744610 830347840 599313078 763684093 577705184 267412488 686620274 149936491 58272752 568081524 256981788 532370215 472198408 194820522 387246873 896834950 421531384 404209700 900714882 857714108 271775953 236235410 437936733 452108186 659161483 428482352 429884614 710480013 502605561 599098003 109782939 608765679 709742570 358731655 185892502 572047346 46448994 655475792 850129877 886814659 923631033 649676922 269856800 636273120 51263690 27338811 294243291 682210942 747348271 746995742 290953080 796692666 495316640 968048624 819470679 244889850 549061321 988240432 985131394 780131652 716560526 860407053 720286917 530576374 672174013 175743701 469747728 529537305 641457457 823731003 79651586 141618381 617358071 54656413 868790388 40494258 506874141 461723426 473431559 228515714 900643213 654962643 637546400 937350999 724764788 566708274 80525481 943627073 730395071 98559185 500013636 940863600 404176112 126861647 438409370 164808987 275788052 119631249 527935488 653150469 687345955 443782414 765833971 319586271 70954334 467760306 971493886 312296992 304110130 170810906 799936636 318435409 694994540 863246768 172988081 267429090 488633496 364847540 475107714 29001060 535389897 986948082 813163193 720583182 278024636 982401336 68740310 441421591 73798545 830028918 587489191 812240441 469397623 204599444 99046357 284621007 455779054 475376906 259192490 957208088 102069469 564701944 496346555 881041892 100903819 695967347 543605930 850801180 325318162 513731735 575512182 500939681 47493717 104510595 186955876 344455662 48949629 622241039 699915647 453052896 908874017 858472168 401710629 363462929 517667184 482454643 742120624 408245884 198249185 943191911 109688721 696134573 716478428 191304933 198736012 918322688 643434838 977306236 290830 546407662 506521181 386299501 178427543 865972255 121334822 531745248 498592011 633574869 341100764 32668449 880743044 970166487 691155663 10731085 734936784 399757222 836447153 605728600 532064599 425225339 695060277 608630012 147031350 564650449 876513110 469120481 132133509 906341381 165062131 3826743 128613322 412544089 333775288 206099079 7305129 696660021 741601673 865803619 47768650 856272379 576930347 80810922 103460143 967651383 199158157 792965322 453605005 307852537 974264194 266304206 51195679 940766919 268972444 924038172 503427587 457673084 25684692 251491669 314383237 542054977 681942748 508105663 837191099 74191654 824795992 452214770 332153104 894684342 656975426 86713608 731643262 603142707 392458879 499637975 614467035 308832014 385473772 340014763 686265336 731933838 516454905 267525544 176859198 380580801 11233812 314358659 898195742 140053039 210532359 475765940 689111523 144463184 453177716 504121785 530537268 620574635 177999058 825252163 954184618 947606231 663467277 34389577 443650311 977477075 956179450 411696948 137892562 358959126 405144310 23723308 457526763 746942751 705011990 495337184 260117819 466767493 919540249 810896435 608141871 510314131 568922756 292899378 138318751 42168472 403643812 56767335 36865364 577302384 53480481 20751261 101044138 754127687 823194434 811729161 981638978 195337762 492305714 571862644 27060306 182606543 538839777 106520403 859484247 430291117 276736566 18206752 24958463 699574911 72091359 687610262 215286400 949984267 775624351 169687746 877467517 557894615 896324937 116356890 437692642 876962032 417063530 483419849 824371261 6685616 675569745 425638944 419004880 48379438 86101983 508519279 544217578 331434656 764613083 313903198 739172199 319129547 338421138 4946747 67505491 258470128 54245475 657445811 693817661 649869477 364424604 217860359 515661293 424861011 575135094 208020879 835677990 494758230 572813031 500905115 138271655 394457616 35729008 102358841 298333984 518585202 814640608 733445258 968245994 70114010 59209565 363949671 357165443 409533980 485494173 108675696 966003582 35149265 32249325 859478069 636224971 735969188 390926087 72721483 934729007 404515125 529013021 868995654 321512376 336012867 289768610 378401947 990818267 332406425 971591208 589306352 201562123 337256752 693389130 23807715 939013746 426708303 197050592 610349010 338190519 129445728 520909931 621766337 475160477 213176145 804262206 27545710 359733016 633424385 811559618 993322474 429126730 337817951 346207575 208287488 405953325 856836134 556955199 494559885 941153642 640605873 183733427 320186511 172511402 409468549 375295266 193254092 148882347 792445401 338606118 967450773 944501512 523520869 29550855 996399244 463227372 95085798 888618920 999640982 884920624 898002923 812381921 490585579 995753229 644863053 520689597 571781167 764111448 65385101 811321422 647293199 511045480 781021914 361134426 862470315 959725783 759189019 436703110 522684431 449843881 38286994 951466986 418170424 297262175 199399388 224328645 640418415 979792453 975006018 574670201 586768753 720065792 259063674 754922078 140247128 505950400 734642124 391075341 28879360 534131307 952770523 786348468 302159046 858842930 590958296 750326420 741776483 336161097 468843 883087904 41938913 228800824 580294651 423362857 603034115 950143088 282203342 318622977 28541968 94164291 106352650 842028343 8285144 794190353 110024738 714408825 836788669 529045873 569254515 872828194 67660393 402219555 995187715 571400781 447437034 64232283 887191875 265419350 223782829 51726819 612672238 135897005 909144111 582661058 218047783 878958463 5281604 456593076 78075285 833862471 444895549 53339507 23971517 163905774 969321541 215506539 518918601 748001648 956545451 149597602 430266149 258793000 489812609 323868221 763530158 264398050 147170096 797645658 546426210 224515192 650848599 52299952 393169623 727764071 142901231 758706146 945583266 586607301 235043868 949165221 923655147 37064714 552550696 182942568 880009673 729030530 745082006 567402501 987193152 589019640 513046184 797026605 287836549 428774527 336457611 209309216 557776918 574719877 575881726 294733936 730789233 837971745 322244541 118897397 619141789 888361054 420262578 768389940 526615882 630034740 420912198 222574242 753908296 56154558 147438438 417784449 3902190 332517903 745266465 525697189 789335128 842113786 756082233 297374106 341939131 221421144 575729141 367677273 513677456 112701487 119858282 298559524 631704939 596935400 150608619 586532813 353756833 513299024 64480816 837948875 561931691 873146303 675949035 226434976 494165852 899097583 311365648 529873129 108642717 612487679 264456419 806850915 935770289 840213148 28864630 985329473 803329726 761256179 375578836 145318630 289171947 295467086 883811359 543562224 323865421 945331627 583386394 863887398 219127774 122306727 354857434 656874866 529656966 516203219 708040315 807180031 988798509 293296093 286861303 586271827 53140162 36934541 655099583 125149952 791603257 529649782 802810992 125304760 875928227 638098382 409476521 784800880 963759784 93225176 996263728 193389798 528831085 714362077 501519379 307540534 928724463 865826206 385643700 395224398 680181332 396035693 206974103 183802037 199475471 920492250 355695833 82651451 862432076 274766091 714032038 994501963 702874464 551983230 910294865 866989162 646753475 751250747 838555147 752314161 20013185 167111286 44828240 888376099 838777928 284546859 130124094 590456135 514611489 195579916 542786547 800270867 421205820 994650578 450293933 992648965 790345365 238329504 895251091 271578025 24329764 473296590 203118137 601218698 620142874 132461864 44493386 253744644 902107001 368788383 466898629 139158901 664551086 312705210 447636122 919297739 857593608 301844630 114234761 145698633 102517665 887922449 878458126 782061353 486493771 731289016 330712446 417857162 131912703 28700637 676959202 478625339 747362771 337340456 484336363 477056599 381056915 813439374 287506077 425129170 333637534 937218409 688515390 937671987 18510654 355313268 241725543 961997516 171644482 491676567 451189754 665781539 357936435 24068023 903319947 437828237 119359750 213382539 917502266 687830697 73179609 701542427 496870852 525447378 734766695 251403221 137443280 763984388 506495661 239524012 150914082 596753372 578042018 213214240 305444262 876534899 555817586 251665517 194151222 376183616 452584565 53268377 455064538 283546742 960194663 535429823 94586362 363258606 185606387 69806250 498581848 456192016 876519740 984042743 137960309 534783869 285000758 557335442 68052394 391110670 352668927 369516900 765923709 62356666 634850119 708866877 667557775 401357231 432224383 211266870 652646934 381118674 205508876 936263913 800438451 533064498 956092996 276773248 133044964 765813310 610622965 294514705 154172526 129938175 400089906 339382849 70645080 367417250 67357995 513694424 394758564 542577723 5447988 754840313 11119512 134239968 263013446 722702394 641390663 670698999 598259275 693717063 848933877 864426264 776268769 669186223 248852161 454230909 929783224 599567816 270667464 898920963 175831531 161545876 931486759 571377199 237612873 430749238 740707296 497287147 64248557 608015435 737501939 533378956 894738948 971683086 287656748 773394351 729140951 563940994 521849062 473038736 780575545 458881144 854016916 747772387 676395599 861889020 568438236 53247676 156169764 988084502 442930843 364368549 100289662 980388154 990241425 268045867 385497544 108274263 659974776 557571756 418273722 417286435 13683031 385724533 840255973 834494421 65344491 933611970 932481228 310852988 940552042 16757984 433729444 586269256 154521402 703970737 813102275 812954720 803962337 919075682 164789234 291470820 641658818 342651558 906702910 585132751 937781049 999605562 880645217 778599009 212801098 448253780 920228282 118832399 42916296 725300788 896815313 238129837 804306759 523096876 479599258 925851992 406319168 47377504 243395228 453377707 49652762 994262511 334920855 112207533 831039032 355515352 452414672 575641174 199982274 787554337 449346234 711485325 543778231 890705092 526401958 369683090 710262746 513781108 406010696 558377113 881365327 148955576 959371787 418415386 239294511 335491582 34846474 370657634 763434159 475951376 135398611 539745709 774078087 805739864 662766487 448610871 886750280 323390308 551627547 52142762 816042279 293845381 216204691 275816001 517620356 930049650 9370462 954061420 488294487 400772485 2822832 37891675 923172311 224082900 897297186 857751409 649947871 873521437 796485474 303868317 624083065 763950066 863014153 952269917 329544686 162416372 992868064 46921812 139517798 958161700 271273735 445553724 547927529 617162934 535447701 906273090 828881553 888793492 350200645 839235999 56761253 142615304 46315131 320520025 591924750 257789609 646844525 617885594 105187923 694654965 633727571 798641196 188804327 173289786 595504598 551027406 845433296 926006201 48086186 189982241 289824013 912820012 630305745 145305595 212373819 385784419 827718601 711212531 994629753 831618394 860372079 567760323 767238169 799682105 916029477 692889970 140805800 698964638 490174976 82023124 52191234 940520602 849105183 419963021 512560751 755708786 241360778 843733996 888357050 925588628 818760939 948974321 501931401 133865352 999837675 905140081 311459441 584340893 637904716 195860602 546846534 395673306 436093234 920488496 846118438 191224749 320772745 610887806 529362159 385477912 354144574 91071558 337719990 133439444 236625974 400690045 175153053 191209873 455686977 800951395 75003065 153463687 804881905 873218288 725285369 896404098 591573596 829371050 440264406 145498972 888843206 718036660 918731854 889935000 392472927 141686173 246897756 552518433 965640413 353595692 238291133 318109211 118424814 673795777 917815791 671197364 260081140 342382134 647780290 140163966 205499396 459559975 830645904 658685571 736231032 418773689 489134992 831048309 457469692 547297657 204127242 939089301 245373084 561840366 596631148 786068471 962268370 862830684 396937445 534965431 563278999 825696015 29050440 872258536 117646489 840156690 97918444 862067366 494079300 174713239 418292410 260398847 138719563 282547603 438858757 19304091 668463765 669208327 481283816 626857115 576773481 645086471 734466216 162154836 215829140 575387350 75801704 980185202 548992215 891946712 897904894 67746221 776310692 670599325 264908321 893453771 132898052 145735873 355826929 5954600 671502586 752215374 833873039 589484055 80799483 324135175 589076140 255278344 258595760 85002503 99239396 729638766 862011816 594215094 312776043 615776152 390705659 279517291 954505590 980784905 348186538 449936277 68506150 948843466 946167517 398374801 612370940 784468422 125828914 612396894 929845146 483783454 11164325 683550561 894671916 674706955 889500119 151879994 614042068 928599169 877435885 473184127 95023523 232201547 309279951 257048579 715617295 217331718 769325259 40625613 882063179 198951996 484482712 216401014 940087954 647490492 994547337 417776790 291742270 513176152 145941996 404572030 560176230 774483139 299464826 157293488 800955183 106547800 322896987 770714082 879292053 703083823 689004546 373782985 667217647 421756566 185174375 111153815 13169304 818852003 615972831 808237426 67948940 303641768 796181841 728397656 87359981 552778350 855209531 6842160 21536935 923687061 971047256 307506558 837599679 634049577 339832719 670755157 135048780 916334546 268395058 935607896 965829148 601437535 424542304 718477011 350390704 137822433 417138065 6047283 438126846 178286363 522121083 978999521 87628448 718786554 790083395 708321954 852709337 481728960 391095960 219787799 28507274 234405553 656160726 841170666 860029165 718425148 21883106 818513894 586144140 946829699 829006308 591412419 66301463 570239683 744007957 606287796 854928213 218964828 735121260 534239362 352343558 172994782 791008001 650278188 430794267 287786615 107968127 570124919 728264610 684704240 353359576 157724972 961784084 531657010 121561949 79045686 803312901 197882864 548911944 864357123 820699673 61882534 277261336 636090080 664042021 327873057 832707318 970736721 658352246 145907741 459989822 226446965 499664724 320412087 675176123 116524416 491757129 745488164 892571623 491683222 509660249 900655225 885974514 187888811 304552231 58931852 517757513 608458479 771779155 246021823 425916707 294585331 261163499 991014945 318921352 500875531 697203534 417098156 885223288 413514369 786582408 515028921 338438867 787416765 866165582 398273963 327606844 375175280 174133142 913692337 968921534 979471429 860519876 862448091 216505862 66165321 420235958 697355968 209597705 870159850 486181559 852572891 438075071 549396353 587610963 126617537 478370820 95149312 744970288 146180013 689402622 421646422 970516116 545485374 109262087 728670449 245086383 888783974 466965253 162802815 570807857 212382844 668827692 590557845 827786213 294974457 909404274 412078259 42492024 638962010 688245534 928224585 987392606 184230515 490184061 474071309 652265085 146210388 384034811 64096258 133504282 6090580 866299891 407190703 505200170 493684072 560915649 94546918 557200074 603773442 130274706 789082808 315661578 578291183 681374482 531365881 178913231 219264531 789743756 714759765 948740770 353020531 18296250 363019819 650654361 242748446 679468299 890485257 490425217 396499598 99253510 108192902 257526448 557778721 558822520 712265257 778150067 52471636 841864619 980305961 34225879 682135436 583605791 942955894 991962527 888308361 516728617 244008972 658296126 466907996 141025656 712919864 829501132 176341574 646133102 451640789 564290349 182178980 698798022 646000514 231346772 610579438 755091429 740100655 90906609 613383090 852271997 992512614 79268662 958641533 725501062 131023960 619427099 268609260 85427993 201750810 970759958 499091795 758311823 823565187 543002637 478978160 143913476 586241169 91451183 759657875 9567168 909176787 197218429 493014026 914538703 573115063 424664184 872385266 967455425 113077572 436870791 144056065 32938633 578779425 120576419 343936105 220390236 188027583 836213180 701042819 444580715 608806563 254248310 455923947 695222224 908409215 810042571 760140548 282377994 42480197 346937644 146659449 860106200 444960397 510899969 782368200 447446279 512226754 668093619 404460611 639853975 849238712 275484955 435388721 949100199 402067313 318614330 892697814 923568360 886108338 441928406 712588581 294903430 742254166 289354978 14045834 115584252 315369853 607697276 597043824 647639215 997653904 893080388 576183528 688361328 276294740 486285786 379396634 499963243 910314599 726002316 131193794 121201852 971320382 586596397 139096175 733798331 563818747 66897352 311278069 980150567 835024400 135886963 289126594 61360473 117193997 36144867 482735242 529231630 999009504 124197400 245952060 295866422 953009657 62571667 849842505 218282794 653068290 87360255 529784950 796637179 145064801 665310565 392113499 44020572 280615975 790357946 760009686 166654732 287196468 743779981 290391874 696234789 514671995 182319071 998880929 936509305 52620003 716118623 325275062 767742081 673185016 180445487 938726907 95169533 267360968 329252997 814958979 799064043 159762765 817588570 440736018 12123053 494899695 191286070 984473024 596490479 263237531 374235589 888774375 510331008 79518442 829964266 304278267 777967713 65840387 570211567 45213584 287622850 903486810 673223594 158726136 550688938 718178324 438108215 439252524 232342195 225243373 310297180 160593762 281928640 44767672 444791945 519034641 246131128 135182145 188672418 275311148 19932664 588616802 540162084 875901319 61288506 202416645 361740920 727177412 324612184 251972738 762776261 214681001 79906277 566252882 750300889 785089940 164205748 110277728 683388012 638553208 836499182 452264905 895658913 635632775 49850617 995346256 977587031 750021387 647698948 883581727 24407870 815625226 437982303 204518217 382870206 519568153 902569288 418231550 200047315 611656136 879359748 552067297 270602118 659887238 497866900 631705652 315200297 344227292 200109944 256653949 888405465 468576598 728216491 665831450 608445704 991624249 178136641 842258240 423110365 285179655 30613359 336849912 852078359 998196115 480455374 820359753 192761189 344374631 421980156 730256306 4146697 848238160 450731787 552452156 558661799 97101802 50877145 205803567 680257698 282918706 928682459 576798391 869775661 962478925 366072574 147787254 377170337 150272090 494278405 745702798 794324557 336961855 750838794 520769739 728512182 328429897 398830026 353410689 4632292 325057009 706909018 69387107 295128006 104470981 324002005 117132905 927677900 249841883 500654504 144136267 146029291 984269593 574334222 923921143 132519512 596946842 473415187 22047861 183323857 499001831 478607986 661815048 926574688 813092155 258400034 683003899 756581627 137665022 540706729 966334570 287947991 398727522 70924419 263367562 8005946 600232209 765896522 156930445 640454755 763886850 42216039 221620837 753897029 799440525 259422512 267406027 718944466 390697745 29410017 344358608 498321285 646715924 115449724 456546351 855451092 418537349 574563481 600822789 206259328 442379489 482473446 785339467 143681893 416375085 519753188 362753513 628727631 682972276 211518933 862003996 106463226 473937893 530665286 968578285 608482382 18898433 692397164 265168475 744625475 991413066 938781841 718459398 595198237 334646683 559930337 122532730 787426671 343786688 585623494 257717315 676612563 53801108 109687067 490974802 735688483 389505688 211354358 931435570 320556100 259371530 951050295 405188809 271709010 30548606 592918397 491682413 75953394 293634593 25317878 810386707 808224660 215692972 959787489 193751393 582201040 858607559 541448700 619305336 779949698 348696955 825925055 133417221 373457193 213110839 763036990 207712542 410972702 666566746 716900399 890186811 287190987 536759876 374431644 161701513 53663069 492053640 571464701 423656893 817107473 264644538 422718064 69726620 573428536 441716750 881648296 147484419 771224309 497265711 66789283 567519127 529880151 145217013 479879744 350491122 46944405 205953898 433954656 246988240 677230205 695331503 995981460 326865339 812393331 776754109 517431904 912230424 251051603 837287810 312535787 417221848 918535943 581090204 253889814 84877193 732748406 528350038 963022962 564042858 381708497 955426356 988972321 71775388 127922879 642582188 463328049 959700882 933278396 821899071 513815250 590793665 312048300 191481686 958357037 688950073 353872717 367506815 992299699 153250113 137473561 109982386 947126515 652079403 202896535 540588142 266630079 329395305 354316071 581676920 262336380 169664950 2229687 153461007 314709744 717277306 785296516 224363352 479737935 562090650 802455034 980725703 376812782 81577659 379202604 250976861 800639134 982184927 239384872 937818002 807966662 275990309 16784654 872496527 658111727 971851136 512433776 917887781 902829198 512921860 100553866 959720608 557893976 778031184 593497433 791542654 490045448 774161982 350238364 643736875 77594942 451049664 984145114 760292603 906779655 742197932 740363229 341978387 16781128 610842537 71425988 423540347 922572224 196553376 114199667 539710752 138062770 201387312 272050049 106222339 500025254 925859328 814631633 974133314 283624916 39521933 690713967 104781667 348310096 198068170 235684122 471634147 216589171 641745327 418389496 702403832 80052587 465177101 73377996 509622891 5838346 242429133 45240843 404685684 915957811 246741298 967942323 657093544 68440404 782646869 593318361 661737447 822473938 592254107 577841074 155505867 689010480 547632575 818306586 372217492 195473478 165168885 664741923 465717402 364048687 887075857 473646740 688012087 210520406 492146380 422636460 723475617 918212771 327593710 494786737 847266341 120960753 291806940 955244842 829762967 812608077 382759523 805898603 667541435 307008189 773001350 247063582 734401488 444971323 524942332 499971080 35835259 69909184 558973676 27200394 11536232 865021101 79199486 449715636 777969317 593333865 569472107 305213835 716191877 545168228 866979349 373419485 883372995 402493411 693127444 584889679 913786589 927461830 853329039 753049648 248360363 2395032 918770709 760968598 618299030 13502424 431294343 355763493 104139413 828728670 304828201 989427206 102704200 795426423 159409502 213959059 654006807 430290338 811036466 796707859 908806569 541231112 534119421 288426883 47978149 29600117 558589482 606156449 389961945 212360680 675829543 442689837 87978845 308705577 652241366 83419746 145392336 596101329 253825967 45813150 622908034 412825693 672568651 861931911 337602215 430307689 738037059 994745472 213148741 358304917 258113520 305550851 782991431 350443969 120824153 42798332 815049687 382261120 582322974 476935266 739997368 95054453 55431101 33953110 558404448 54964555 274702216 755173710 195413011 753148866 469635744 517393812 469075316 583643685 408027631 211585823 770910092 783571927 780568019 547518953 774048583 268768288 99727253 569363174 633239681 157415645 411074153 574703293 82354956 970578279 866730911 953105224 942655172 441755756 914784437 528232801 324854133 189961830 544506863 613623274 958130927 265326254 842496102 696058364 976294071 385980721 142975905 817171947 874782071 129406661 250831247 803310445 749172113 242059646 810675208 507894895 198234641 161011226 183531049 853281381 88320419 148849283 801750857 334999545 55889281 431677599 392338272 334428891 564919160 21878478 462139833 778448337 933735028 30913180 972548689 336286333 951481892 473687647 870145088 252630070 686312599 431018085 764772929 591824291 260442633 259222517 732402472 733628374 45282144 964052970 187586222 415437964 202335021 36620374 888370419 714682373 192795437 566788025 588672225 333003022 271133255 595707100 364292107 867244277 854560449 764123262 918271954 631884278 255875715 111240640 151078762 762285368 627766715 3809111 450647611 818285408 914499424 421293473 808590859 216478519 654269904 775766611 580614218 827653791 549118595 402735967 377002559 35523041 358973742 582513713 732507828 645692773 880041271 71598958 755131316 552476842 114053727 503947945 456452952 857602200 733408715 437009097 916297775 18362431 389987548 732536366 100993635 532345294 502497905 671650982 956118670 277188163 55269077 86746916 639757998 477534188 278847257 997097204 20109641 142357521 525004474 545928964 606543903 59799406 118377859 781853849 571465991 15814625 301665623 252989226 899396605 346436644 815788962 751533370 726786528 215017866 292177029 829368157 290601468 768199842 573753318 187043789 888801862 569637863 403313567 930496022 783949437 512333787 718043641 780618286 164141258 213698064 879984316 973898654 641816552 394374694 158485113 823640644 608399791 292798668 857797979 658247404 386064734 984133803 431144213 923156620 710555907 726697793 318991057 602611209 121722157 399660616 363803047 538198143 658095678 622296236 29844819 738421643 160162599 243505546 766553245 589180318 547774960 39009759 46115116 725270259 894816705 190349852 713039810 345224000 785083060 446794168 627743361 855609397 552823854 220418593 47597107 67308780 968564539 622351354 341483457 183843325 254383249 209072152 370371084 788686117 12349930 804765565 896989297 727682516 711872046 698102529 166915430 232257875 184677816 261366026 420395714 781528600 435853800 829012308 577146558 804869688 284407599 859508201 103329478 782549773 827861815 56083257 704880332 599520678 824608680 715520077 285784999 420891678 156358649 205765915 175287458 791343838 61149670 110140074 837662134 472785269 128379157 846955469 689794468 373757154 242484734 579795005 779703046 756456201 119211722 959766681 909003486 482702540 630313966 318719682 794225848 136846141 767356759 753255506 224330947 70335104 19758812 533982740 65233436 480806937 774881448 468936580 951866892 602592840 771725952 141835337 584784160 759333369 212540716 891132737 207467177 486510414 752487136 194106052 566960491 644583684 276553037 84968482 865629520 407686876 842745065 765928166 250881111 311787798 756949340 774275756 760033083 431487356 508150889 207704151 700826684 668512851 890256813 470008406 35789272 702137428 428463064 356630089 833322375 93843194 875260371 135986932 774582936 548298452 112016012 560108738 251068625 227488377 355100110 366015063 951869974 24766973 711265107 699400801 943916696 111224709 480974800 92467431 77869 509838301 171791672 662473012 609710158 759924051 416599774 720063048 413288076 388727254 926401614 319914031 906132673 251394600 965754156 742260890 903093655 857277970 157819040 676405251 315002581 648349479 211819439 991428468 660994179 911255897 680635495 384934827 502747529 416014494 240536665 88657856 844607051 336017426 264223539 315137376 171099203 822395790 749783402 631549374 367429801 30411609 275496195 850420295 559939581 525931860 335684901 120763896 242202196 194430757 506417259 378196396 344260756 756298398 475355150 506376688 343897296 948578994 733406022 274932505 42489377 165972033 809246882 123986016 859995855 751656359 680722186 929716271 782395723 167382942 510046039 928553986 491377732 924737634 771967891 40418064 622047397 370382995 23434612 760427263 946312067 440760231 257718574 851631392 850902188 318058073 550792156 74234827 543093515 430097097 422208155 843203464 428910626 341859540 517060302 427437736 888332384 37571551 646390829 464661849 581299248 495452089 361352645 220940137 344021588 825119563 487350092 11912924 68379964 339193750 173999205 859277173 261073475 949881613 877824014 429001931 231253748 124106095 689731062 108467159 668085197 92472667 539542310 780627612 33647988 714552895 790351488 583034195 488464374 74574183 530734778 699061162 639631309 855332529 127047023 744967010 437845518 813890575 303106579 813168334 879540284 585868365 929294601 452298324 828780827 543852489 550695762 944980160 655039856 843574283 879983767 221239631 609051071 694300084 890844576 408151929 508529737 280592063 211984003 336588302 792686504 402017200 842526112 920517415 172872409 796367751 782408521 281797805 969105609 349082209 497435522 757035366 443173885 542468137 422442427 5903358 225116716 383785624 121053726 705598472 96860148 773398239 131721343 290006047 295873527 313451025 921844238 801666203 330970422 127687791 599474865 181828602 941073086 480360334 788832065 638417665 444442898 980489655 42326483 484101597 551644257 70627277 411603339 961279705 236489499 385667353 97142637 2311626 848773609 76311909 65639364 961145812 146697222 412093129 623692588 481303247 10152040 300616338 499206588 197720706 293664959 359368340 652177993 814213433 475052116 577415976 223590499 525804435 440185753 934472143 580800675 216191652 42872004 454001887 961066393 147136597 443246777 210793397 468240872 993799271 343864425 625216580 743499065 749745719 942152321 805600513 819459230 575193440 889879194 734954750 233329417 411515708 744960001 708184216 312984341 561940102 232337183 615235945 355151227 154080425 808381251 810645586 537421411 972495593 907225652 185027048 623497881 97023803 951960607 546160809 798336811 614042857 304537270 124942499 301869221 872968998 229801916 601478292 946782718 308701642 1571593 735939719 328417123 177669336 94375592 295513952 354274406 14720120 548817849 376507107 325290634 53285274 882544608 74149148 787142656 800590559 690096922 10643364 623915714 507947148 903792228 923299151 365786621 257486956 109755732 23466242 925437643 272603807 578868670 220364694 161224339 859129675 925899932 118781288 360346399 663155698 296939748 253896999 980244198 191826271 503721508 415952181 302200309 242752452 136426117 48824786 790507657 31315703 743349916 77226778 122780161 45808401 2392917 341052295 752083819 40605396 54565287 490764270 277068111 978527944 625122084 622529618 14574935 337027923 95133676 817180170 282938850 756128900 572602558 43070190 296247853 355636641 806861582 491569169 935400563 565833200 500371833 906043520 939386419 472446978 874238990 589555638 957223671 838029831 977956134 139168028 26625666 449810827 997179652 408460704 746057328 895785472 135724560 492591950 363359100 949816311 254562078 406824457 362638835 322277780 365688376 46243351 807283264 739186645 456248264 155294371 909575546 616280411 224071640 832995698 326537497 394311879 35223746 716665489 829518928 929332513 399524732 441408566 484656646 83135499 514275193 659126161 708223969 640554460 538283580 989043161 471898411 349940264 310811903 239739983 592636047 893030318 647418065 191016605 908723977 283896327 300885973 923739672 434174071 757074497 778962767 146426418 735792439 21444361 465274901 779084549 837414268 809991407 135641266 410451386 678857619 529981598 463843756 513430659 619795984 113346439 806945128 64523272 137751845 679837296 828898774 376298542 367875088 343441585 41306480 568142605 846803580 326330648 936522508 226886099 287378696 37908132 380617873 689265162 849031092 874205622 164448746 44301391 539795723 16855686 86681471 383859562 269318679 446454834 879794844 486952643 170399508 862040254 884436831 96971577 678561226 215462148 754934972 839994378 152404315 623909989 632726562 835152877 682679956 38573841 23303467 471888466 49874043 340471081 428434272 905538614 741741119 109654876 277288275 220595671 808498529 124792690 167239551 285910658 787721870 851887431 249584453 810293113 710649505 904335314 499205021 891431032 341623606 196392329 91926723 410481193 870429547 802408121 172304104 599145543 598114961 223380950 150460306 69489957 552522718 159092965 900224720 793577385 428081397 425502081 728714607 670806698 830576774 445815895 378785198 920146376 102369413 956533181 971709130 852823529 146345419 840495970 982208928 894636626 384003392 788458992 536730938 57080709 520980452 978183670 139686425 377517091 258125537 915920431 866202076 429419745 113773527 388338037 584868883 895110798 419430662 998439597 157056553 316421883 550285055 932187486 346659513 614322799 339910030 786926481 454741424 708101756 982755823 96264565 74860276 176246735 726702312 723101614 615842921 950917328 143364341 828189778 445906658 385723486 473841941 586111225 771974161 613904075 968292901 513325145 848344420 374906749 85201306 999582810 329734288 886465013 169217823 364288791 656806981 786577486 630817908 137191629 495668429 699916344 567230463 158762225 340878909 268287252 984647263 219440749 459620133 232387773 77865659 940972034 573699249 659400847 477037255 33425913 315646970 970959015 376797787 816429993 673729913 704748514 583645611 480696243 348800821 131486191 250526620 226136509 107079448 726193395 519226327 434081502 836336502 855933949 281274688 120548674 965409650 57193556 297061805 512558848 19188240 621155663 664600630 772011406 751793969 161769534 978618871 249394293 586540466 243690090 239112512 419216357 399767841 893194347 433100411 447444398 851954959 800133784 806152682 737104417 799934977 808815 604960922 419322212 624106543 788958012 247699334 589508513 468062939 784631460 957352294 68462876 502099693 691485923 172615599 830621284 711441375 181948461 105832636 921648720 471589348 430848139 524494107 744815045 499115220 358094216 953382060 374485223 906637095 748464247 220269019 729472778 983032664 775583755 443802769 105618243 247338655 60041195 299494254 399602784 168819025 472876633 385267158 554207624 903057515 640024786 462598589 178981386 554467183 996630947 280423452 929455490 978299649 512800626 526196561 531541805 476018527 484398887 31982834 163471230 802722287 815482842 288865707 940770323 780485154 775411428 216630023 255795834 818302796 160531295 229549637 87250232 151247468 922244380 453803223 465511425 980746435 224883186 577008041 827339747 121038836 148540348 964469037 221192710 287915277 527785375 700203201 249910160 446151400 305412410 792724601 888708627 838804399 163324960 115076206 985049541 803128684 418367359 672922208 757486499 803319992 442209737 683542524 286124050 590682539 330620959 459377640 593482560 654587135 865184018 895732199 185019845 68326123 817237864 693209400 866678962 510084462 323265350 483875117 63432982 225596744 58890194 672607803 602571113 491397694 907959186 47049263 157378419 451267425 97580794 565676469 106318574 98188532 217685320 766006178 466437191 973833936 480007905 562178205 952965722 286494253 313168667 58777761 906305567 80955999 968807909 969055462 343111614 621752156 254203402 903206138 493235831 769646697 398080926 112006344 303998163 416266989 500326219 221996014 188245160 56718060 316971086 884961429 42062179 206021936 194479177 16084611 434743862 895370193 890336237 734204788 90911916 48439569 475638693 22742225 599870377 572349342 778811291 503127863 392445781 119028540 75188124 616119951 591817883 647640472 876354353 922392339 537701671 693452969 854516777 739975171 877227388 41075717 840792621 807343923 318732646 870848180 131597030 230528134 773763197 530118186 467107695 772598044 616153011 515891216 859973960 502943396 253159368 34209643 203345120 486716173 6232853 542373316 880699568 329026583 826036547 442512312 76879330 243944241 10973932 354246167 40006945 375007179 66326920 592489444 589794070 978194370 382076980 147987070 649324254 433868372 956710158 11189240 231227434 762564453 732635008 461397381 366783677 104555492 451756767 772289624 973307991 433465825 179350861 839049674 283699468 581061435 501751604 305349766 100936136 884887538 814952538 214012955 429645240 353348605 448434681 724782322 805240765 831653219 130732129 75236699 483829576 382471464 937757338 592887688 417793993 417677244 157992318 926080643 423921048 143503091 266809999 85573478 899170837 668033480 34695684 578957735 536904497 234956352 759642980 594925588 96993247 248043434 624948941 148766302 101915182 857709033 193994071 608735800 28463495 233543720 74968005 67608772 953241521 374280437 893002266 217518445 680981466 710217324 859107524 432795513 21636934 278512978 373772818 201325873 910072465 517009735 966099648 739114320 866814138 390984505 572874030 420763082 219896155 914809323 98606691 164076001 693156669 957470741 106350915 239795779 934064189 401908036 181608365 450101134 706502817 688169962 365727091 744403851 105626482 436134263 393300247 501794085 120013931 174148004 315661210 830853175 536311794 946767998 967483162 417348040 889456244 380664023 182988592 177733734 18617957 348754264 676105360 218204090 88764762 218381447 37375615 308388197 128011157 736586504 15566014 582805104 787148220 164382954 18486402 421095832 925889783 498099680 905459864 63714794 448530018 53519010 880395198 44357852 89918463 288039721 254193869 9300873 320957457 697057574 336165261 84348260 832551057 221498098 511433118 340724634 609843182 534412848 487280892 466103429 244575018 446305261 783342867 161509364 925652007 259102865 896540310 383078956 176364731 376333511 986146429 858538277 324541895 967809467 44754036 607169051 224302192 697871205 117570626 679341226 309656720 117363006 561724002 1509715 6133581 458030290 87199737 760753756 459526626 908755481 821546138 953158919 356142270 952217824 120581687 533282535 648495853 591328356 700237998 904199573 988023883 721972290 914317392 589838371 441035984 195838973 925658155 287947171 380096038 540637140 293366006 24568167 311089311 514935144 878806671 411310835 315332132 921326124 502766250 486046196 947895716 574171671 457459716 661805636 3244825 634815702 688540089 360435552 767765379 934647527 383022391 308749857 321073141 973920740 733831031 718511326 170977257 500690442 681106717 553817570 717707920 769550953 918363952 473868391 940515065 794250726 65269083 854456619 496675917 145026674 289758026 501665385 325993521 787958770 400491362 445968551 414085184 282361163 5339383 381966529 940053519 779797869 663888959 539371255 558797978 704121041 884446804 569635411 633382441 410569096 161817696 50268987 65714618 909409354 410252953 125528729 789749802 572995796 737061924 18493838 689823314 199138860 878010058 925921614 145564909 803091950 809889130 36225684 427583289 242867394 392679659 433612897 406259670 536991331 588975648 869771329 674120287 993015609 746806762 727824519 50472003 396776981 472772534 895257080 971109512 868665596 492434115 57629122 107326021 508350656 206531138 180606193 614539817 988358030 568223808 752016869 704921594 40256025 76548310 11410715 957870263 396990384 134453935 738216094 648935004 642583057 79572457 240941244 770575028 611011562 323806513 162915707 144059730 780247421 559476950 418129002 208593615 714664186 788674342 250637647 490843467 563650269 366188886 632348439 647433421 998564933 809718524 480600152 476313263 321583071 936321706 448558504 255904446 302789912 659622837 859932736 940189915 633849292 312133643 799409776 53157159 71396907 199581115 212975557 511607864 983376808 210876711 759786617 205506740 591328295 922752649 379972523 320402214 882293768 538166147 477206339 525968019 86156568 731779397 499974378 933772083 488474722 682874076 683969639 476793721 398917355 234435988 307717389 820485881 710883032 361543116 105988902 266259754 422197610 928776947 595672134 348562069 179700488 730155706 874514779 756544589 318756318 614980550 365820655 69897762 212872541 10927874 610475082 530355561 68866743 586688830 733241130 623886063 497434667 407236871 57217161 531343252 891416400 10761128 729167822 942972840 821621460 594417807 410920117 17537227 798047552 778018724 811032851 327028163 932661202 163376697 844685141 140792414 824138951 503398515 378771995 770448207 948663292 126305897 704606541 999369301 799328594 846502400 36330538 921495115 459509875 494480229 650919190 436396282 814963872 382797747 747333508 109557582 800777447 616331463 454410015 296810656 983373145 707592009 970245201 456779803 62626923 426192878 988776489 609788544 272083708 553790020 580295233 701597697 729168623 515237576 484823260 405861083 948464627 845237270 807199245 521833779 919590179 846078126 338776200 157198707 507474138 169654250 632129363 362968572 597522853 602597900 896766459 40730985 736074783 664953595 305156169 973817007 875235020 923435971 235964757 406665993 475806393 714316522 347397885 953459833 754744422 332315697 860812999 576902551 412919338 568901342 1252202 813722174 981291833 425167647 198212545 959411792 131152320 934830230 64085463 85777853 508605003 964851570 638291076 723558482 650104587 6174709 182194029 793428498 187009781 915938815 163449254 459796052 832950016 468930786 634990643 823431506 470456242 359321905 969930344 610354570 3332669 384119992 163980499 598508557 932693303 860921959 363949332 624782862 660119025 551236796 330871401 415574597 311712821 352338996 326476007 10467602 4864738 881318406 458490979 15619356 159956311 975073132 949163061 129846185 754997509 412167917 788402088 800862725 693451770 92794223 141389887 824175193 155471077 450087037 15793029 258133789 638563770 116332317 825021236 448742819 198023627 378384301 472007002 291024311 233981909 70143101 279953757 543764822 725599601 129713296 24820076 421759202 227096619 26772615 232859681 460011287 234051115 844265259 749519822 9456370 64934449 920153780 657552605 126039230 668259665 771482597 197417065 668554692 872845779 904642488 592679768 195623045 259761077 804401387 731402421 416194024 584577305 125221632 788040059 374530776 578560892 805285951 826796657 281387404 755042391 185005386 977652097 525995128 280907825 691693819 491687196 907407195 865378864 780150479 798113384 286839497 342518794 936954195 441332284 578054008 731998338 90636100 348988912 564699432 136733032 875507049 463819098 823550198 906344801 176444848 670583452 692468361 115897496 97184100 600502455 632750266 717681489 198183500 123527092 970971226 215260559 122268682 174111933 779966497 807350290 195376618 716101422 305425969 703906958 247644752 783891777 464156469 866590796 892725934 787401059 221234366 868671764 619105031 681991254 1821186 348721756 536085437 675299588 109643999 324733614 97942086 56835200 117275114 324565467 55673525 241770495 163633324 206913493 357845549 141806987 615872730 496352871 862435067 242013297 588568014 9360310 626011248 884405472 760549466 97541244 20449080 902354901 347698997 119521272 758344113 457698394 739350029 523237119 135619818 22912784 870244071 970620653 178468398 162036954 861588302 594489432 964276936 519271364 81695254 868894671 951470738 63318033 41526615 331206343 321521088 511446998 484364637 962937181 942329859 931270096 680600124 322460223 960578194 571209058 39777688 987220670 178365343 471801192 411305688 569424244 980191186 472782479 143901060 990891678 984210250 641138879 912982765 535724273 751113967 261821091 402359599 402296880 333701634 893100590 852562272 330845656 965829894 859004134 357121289 946681619 740746870 70536885 449860653 291051968 215813789 625707390 464285372 705223251 60303720 623994683 5461030 917306178 984243209 517906928 721039721 521727020 321126570 538908217 801557107 253487104 343792297 550713446 89872482 577221361 606101606 875236911 284595162 487966297 770397239 102895829 627338434 393880393 31078246 253935910 643623492 766365281 643699330 396716774 414073509 853889128 170905800 236998087 622375806 158840834 823835464 66930510 245258996 843523911 15697038 438489560 910678231 302799126 724894982 818876782 763936974 342685418 547256199 578704160 303749841 420094550 886329879 560903514 30846972 271917776 305136849 736917421 718589566 533331376 987486165 191067802 150248596 977592281 94664493 486312835 563627696 831449623 785183764 833676638 705573913 29087987 502508433 687653230 213793703 156991721 586041098 711349819 634722293 405350837 774727652 586339617 18459396 415504112 50415897 665425780 806393209 757313694 180403616 839795054 131022726 477328990 522631899 185879840 233639894 631653287 815143029 482650309 246026618 249499321 369118803 775329283 214601163 762948541 671523853 559113795 490471159 868762201 507156903 541737959 77951050 542994833 169466008 270311189 379360914 640909123 17277268 103878359 360346925 821381563 91985425 82455382 237082134 594452214 571106228 76634720 674407209 26513611 13143412 367214255 117075854 945273750 171109669 78556849 872194452 763910779 569587267 270084448 80731089 362680537 319151036 211663222 919503865 274216876 478605211 660438207 479109507 202052147 290600380 142908650 753492133 456355090 759073865 651676276 37691070 689674156 138723209 775555460 265064594 307538716 667930180 90966461 790426596 334720897 734416057 272262015 618058855 557283005 938647016 557170645 453043147 269747705 27412129 911099786 643079892 708085037 807825275 340119006 104591190 659260624 635486794 784693695 184877711 871127924 939615792 994489327 275865906 83354187 916415890 563898444 492248538 229924384 639323064 148065075 779618489 427818096 941726870 647658478 696092310 903220783 457578832 757208924 423847596 257481083 710834169 845708125 992827042 571712091 101137614 184699552 835094532 799533912 641224849 95420795 946924140 566515697 316785377 838631753 779760927 147859193 808485016 74500096 398994996 474491081 532105367 546968362 552417579 726562099 722572455 193999278 935493999 859541252 760222364 533977523 879054000 749526060 181395212 964932617 209712263 883574203 573457017 669972197 125972712 962002008 347004486 651321177 678704076 19641003 329568388 943535136 171573375 33425472 662122752 403421268 920275392 512927024 273705152 411946280 125326780 199459136 251964432 97452665 231147392 707148413 192386915 474914706 238866770 954054351 762580102 951462541 584565367 561469556 378836746 279773739 947935407 655538544 868480447 927059769 639928523 763733026 135248959 188517527 455774735 229220212 425696726 282905052 132669699 357037147 570294415 894568111 919333427 784144411 598910388 913532171 485858240 486960643 266221648 911334453 229246308 88618686 64127843 859610119 962963657 304315605 43539920 956265075 410454393 99881541 693678512 40418383 140795546 229258680 485549533 813383326 463059458 424567632 482624542 20893569 721653320 100725968 444370885 413562406 652142879 318791410 570997827 222659916 211291263 796309446 344709849 796052900 4192460 344943194 749147636 58448305 498940679 995870692 129641147 809449045 782540480 403721531 897609636 404241737 163499126 433847751 893341098 23685678 686149799 386015019 23803184 473445569 938464977 433744302 242177091 661785236 742155322 306538295 301928789 549247598 186936477 939699480 549520219 255873417 591173796 72715112 373951330 590127549 830615460 436538589 261002479 666341171 994211580 171285232 632314995 216817363 748980018 780725419 760877252 318400390 535929613 700110754 164368710 653542694 743594825 184371569 153533850 770641314 305166538 585399347 9840814 510359824 998744661 770072676 220372796 683663154 321465746 951451874 38879631 925877124 636851573 86030468 131506421 290106620 49210846 262766061 446744568 335752441 674852723 479294444 527131790 271476961 310284843 780985875 314015523 538732957 906256896 219698673 83315612 33097420 904775946 225929444 697421684 458330378 188844681 863478230 891729492 209113391 94847930 909708759 436534152 886618433 393369640 95526295 473425727 972853451 677197667 77526172 604635196 445381697 986152214 650232438 727203100 51561173 722377779 791084749 492883105 764018126 148397752 682559619 180784131 613253566 99816835 208626783 90524842 346962488 328851150 702759988 44416454 753150723 490985372 218903252 156744977 764549106 611842459 787893133 976096542 990009133 910837298 944115342 856416687 123111080 791570888 230321190 248951965 357248144 482919467 220599534 177899403 830308094 88402571 456492936 846216132 896701023 161181123 907705121 426750400 214439583 40318133 741028948 904536377 492230861 622228787 561954629 685322042 764244643 423081626 842927430 207438150 46058025 196783814 413983146 766440247 928507333 539536766 417204183 956560767 470292846 109585854 961868807 717005809 501797556 173555131 282906483 953673195 864086601 986115073 640299785 20538989 293890108 412824716 549376071 240886872 665490662 861368635 81545597 10637217 616080632 475862616 120984057 758647873 469381083 80743494 798058526 901256707 315256215 655055372 203248066 850710525 931457171 894699805 24459679 268977930 855280423 370195491 638175616 61070886 486259743 88190796 299942890 902563001 366951891 551689014 283023864 342296384 704260646 891784945 316457240 399511410 818143883 226838137 941080708 53464953 205164865 400292976 122333482 856741178 282987649 962295144 483187241 597488647 442493670 225374774 815750088 355087755 922894313 551850437 80183893 756173958 392098599 120159051 462983093 474805634 388589212 185986001 968944890 327155874 997417906 973154186 615913734 299532133 50511774 659528679 714235332 666175104 385097352 174738965 720357661 950119858 60779076 997028055 427346294 571217831 653823555 447149000 831912244 472242705 745897457 805178930 67307475 510735603 562246703 819973141 118302492 643691414 147374755 419186302 15330423 991443853 47852538 616059345 793088572 138711230 586852852 152377591 196555255 849633256 770409033 67430006 161545091 173794957 14979520 633090505 370238773 156331820 579526378 963334442 706737757 782773495 607203512 214914162 893381184 858237530 355222416 851112785 351013402 921249250 396862037 131718749 864108733 297965847 167341257 819798608 773630328 755453601 879571436 454336438 900911396 11992103 383315001 250923842 782771299 886555070 612711737 285813539 377263581 50931060 930527894 321030724 622921692 567978954 927415734 475274365 373187681 685791880 820582536 697568915 182965963 84344126 989899126 947027612 508703661 757008006 17375413 814780192 265203138 607104154 873103752 33746148 424785385 261243929 593807337 737588850 474241097 570829583 268787401 849508264 113708773 817871345 39318288 178941463 603491477 199856018 58157217 797167221 19142656 219366961 450250164 863686276 595034200 332160465 664749554 138421305 630713376 18753002 710066919 668460880 434471329 18666277 470966414 820187321 416992548 782120292 593936060 588710284 267834230 490282645 310242925 511973057 347168968 764205041 46974429 495143348 481149220 152095113 663405139 391086972 407808121 830880537 25180875 913767691 856561349 867333550 773672886 526505661 439161395 709845545 62241285 831899107 475368683 536726741 431482462 103170317 633863083 45943165 398174460 841569710 790724736 359004019 232804671 546364385 299379962 319281220 524027494 72225775 880056741 794048453 791144932 871470663 404850074 362894891 886241956 524282516 668162818 338374271 802139567 216766158 228254179 993322570 854261772 62047969 935873776 319475143 133514164 750485829 514437743 49380603 26247539 22659427 581040005 952358025 945200900 446242397 2192940 702925294 118401340 964978335 654647782 824661260 846757045 706187428 979946328 470483294 739162731 301022201 989826390 645784661 471805625 541749008 125576786 31895427 285435993 137063087 859863431 354176920 811007953 195278956 344677046 930912314 266914229 376693428 304082225 621287956 709056414 347708312 608008858 837010634 419430783 312457493 519840919 183849081 654777330 7224363 821039593 591590171 328776631 936341655 420348996 896722127 521038246 893957177 224799887 190098063 694961575 625844793 568499489 741026794 513422405 699787172 767126523 693948627 494044913 956256033 598065497 293867657 625243829 922556167 658673332 656221042 252240154 588043657 433962205 930505929 940809776 404912127 450000071 729613695 7615315 692423333 918127198 929272767 705948102 177070115 310915216 735381496 758148759 84310311 34746748 722706463 137608250 636847782 115172313 841655559 295275855 668461896 859496093 509527251 929684055 714592082 69956313 23075916 763306707 815446881 256480628 424580003 163984311 50862232 164705986 410550267 126709104 294459584 864195269 280131476 415304578 648813591 229304072 342636625 500435297 363326841 383808888 305816314 69413674 386757398 254231955 346969305 693856237 191629336 288051895 595070516 328178962 505148271 592483676 203290219 76181853 48361856 172204434 486143927 677042726 900851072 897346095 177928431 294288779 324682574 765881675 363596374 784653478 929087566 157396701 384484519 722417634 284407293 708792325 875235185 116595564 370473072 999685776 634804422 263435714 186856083 238283617 817604231 571627572 41121248 996219039 504447074 595801944 390979114 27432892 193153144 50534583 236462713 991458412 340818774 286624019 443937738 467025377 137173516 650499648 455517286 573973696 579503362 783217723 207509369 977212070 118106704 904349021 143795479 332069248 995548715 324814401 932764049 37399865 149495235 881171961 567239145 197232097 469223479 609752097 409604718 415335634 421739564 234608194 886404306 958562032 634837637 896720186 766245400 389943366 626576006 681459572 285277212 908781301 876773907 855427773 766062465 340792685 206921446 432068468 337766328 103721068 6083553 919064176 365146967 67119839 868627760 610147946 528433425 67777045 890568060 603517677 283505102 428578087 336210896 193840445 414318577 629430531 453593066 537618813 986454396 591162584 897427695 581076512 374342989 782772204 911764733 920643337 280823814 435909448 373747976 693206359 711745740 884006127 449604152 996376085 753815460 618143255 983716339 913900161 974891868 528301573 964540049 898657079 799345364 59735470 412807348 123445864 181518710 451062000 543534428 255387110 920099415 831656562 108490098 655995276 142099030 180677717 33431177 798300033 944996943 459714942 336575521 702499066 464712137 933038308 41848004 890451836 964194562 424244630 343062866 353950307 973682116 179128485 965639455 260973620 329386049 863875954 16115005 895266178 811586815 807419922 182550410 135846111 562583661 944435878 359741962 407240012 829188148 761628415 492388780 458126139 534844156 504942006 503384487 283548765 107819960 483435134 822356365 796176858 248846387 743077441 68968043 725455594 698770511 540616505 378895285 653460868 111894287 147476704 358956282 588063257 974986320 11540818 160954163 144388503 5302330 705621462 13716357 34838366 388217164 154079240 174090326 172949602 86662428 345335545 285078948 526397640 799187735 393082705 235465732 838907232 96978474 743944554 665709797 15449209 864352029 111037278 151650976 528806310 155738060 263710374 609117532 140271525 366579030 591675325 510706235 918850526 464538216 221065201 885838159 680042575 669489551 679603873 955634813 478391776 233234950 631884339 97773552 721640396 723525943 358041398 479024720 430860686 266349331 762605434 44559210 912772389 63266608 513819673 210256468 429707691 398773083 670689536 334784083 622601042 904504379 595997529 383910161 604554372 445717852 122485846 22736747 92920557 60835434 546641102 825441563 489309910 434387891 240210665 964869042 21661582 779519972 735089987 278117077 694871172 789714457 698315709 532533988 968961004 850985398 760670722 398541005 130835467 325704849 136961273 885009014 433078590 98039738 940361785 2185186 692528759 354844444 534992164 94943352 128280763 696361623 984054457 392582729 439777668 357635441 406696774 188700447 448351198 413655365 372181368 865354571 198762492 769993238 785110079 978657661 167285237 825717228 303712416 358598379 531109974 261091394 140244627 682023475 164170787 684607068 67730736 902575798 24600931 699796229 207982336 390522064 29885154 995570946 214038909 682667076 97184939 229513963 505341361 148660252 956672731 625799465 553734963 833491492 676648840 893879382 407704460 309559447 791179098 471131117 344304750 930667647 347605794 549613922 617259397 572436399 468609274 916699110 919607125 56589967 846191131 115151333 621246198 142175762 412510797 646747679 695270500 482622416 361215813 915117629 900575785 717627317 672413277 373472467 655893800 11032637 653086778 154204530 370991637 763835625 235192028 55591464 824473420 501345919 592849849 396920639 987320090 410635463 105032798 757109508 496093252 965384797 491509864 819909212 526216222 923418544 292093521 722262578 372907206 9182131 302035932 519869936 374994992 695630266 868322184 1405803 404146825 285838482 441061891 50524283 295686011 619545499 400400936 192083782 367043190 442894324 811332016 170518362 28589050 184812506 303905089 322495896 418465519 682191180 539575126 243112877 51053305 222912850 550432704 668462202 787275433 327251649 584510454 541730721 12843524 345710591 25494436 381360564 287307428 169823436 632725755 161669106 890667813 462451799 426891648 996552061 292932235 736055663 983165344 119436452 105790005 82755627 171719612 955087707 231789517 113495265 285763487 567202523 66118107 174854290 845761000 501221021 119886146 581458265 83744747 591937172 560717657 692772241 397826677 655102073 945172840 489041636 478796894 410594205 161680180 845012936 999844718 500610174 433503700 966383996 395254472 564441969 65237461 59126752 218764932 668058586 373771239 803334313 614066992 48825815 403243526 298417719 898493194 248851353 924486865 865416915 919823398 664553257 841619032 784657961 391590782 235394268 653124391 688905966 816011099 747277026 231352803 842715985 686908927 427887917 671901903 327444611 198275266 911208454 850620655 785969424 606204235 788682062 941369105 334030644 486929939 381184305 533459703 433613165 699570284 213737072 945352723 660357532 425461629 866762100 939150616 649543524 294074080 720234574 17089474 634185808 165239807 433426699 433983057 286082941 726604707 210525677 518825061 338535823 59175282 349528078 336049123 133666762 455209601 956508987 532923380 510444480 351263649 452717523 119506569 395815608 633986856 390411694 843551661 278894086 124930629 222100377 281879019 479558457 859343558 650355859 721960041 926309090 904548983 222285457 475386261 111704599 402485680 961205393 791659909 860348928 491611306 442207599 843131802 321703097 452922546 573866847 944129822 846625672 805473996 992697227 216848239 692821235 902978085 984807180 498695893 619522075 926484840 556280270 447738269 806516801 234912514 925287060 297630728 580379361 761609169 140338318 895749871 884962712 255880945 853547896 775547349 936910423 194211649 124877710 83598446 4604008 226855558 809593372 169599856 240103783 961202426 356385755 951204425 877498604 160666569 314988405 972205760 981668084 994547796 212576927 610027603 619274885 131730650 10702176 46911381 474549311 646554782 937731709 892234548 159882023 853015615 956455258 331271117 386057891 957394989 926465823 855785324 676507332 369190061 769721498 980219519 643728069 387780245 642937955 446665362 368760430 455885488 440595865 822037935 164205494 666001568 328876300 204897113 265938557 139784919 248164754 915039404 74930738 862603369 143410577 481534170 849732515 871677664 167376741 205188084 5274581 437861128 83490747 265332842 755426791 824762998 160447605 407505239 31734868 157585417 726190751 483296757 822253674 577649755 705378335 363057017 377180422 410124276 749447929 434499192 48420807 596273756 627452639 966108175 139925467 702131821 145075318 229176384 230496600 942199916 959439470 755778690 133797613 431132697 766839566 804112872 144534394 876785653 453768397 414199008 109912157 622527290 287125372 854548415 533739261 505115942 402193915 257930946 299383844 16027925 228245873 988823014 871173515 187355361 411514423 269843537 614687234 438607639 364920761 271109649 777680042 26899611 97308093 91335561 895446831 644210462 68902102 698029463 6639357 78245244 344666444 756706846 540192215 824018552 423894520 567185189 774807525 40597876 391440969 934297025 607819950 379706283 78225290 601363658 674425943 524867629 269414543 872392213 599062377 495505528 947408379 607122442 744386739 291949095 130430662 564574823 765318165 209518208 827212549 125550251 122624046 71470211 683526922 90171310 825530418 305907212 308942752 103255462 678409949 48192900 34034362 668317592 406779336 834136531 75219099 26367776 528839745 904456467 107680202 427621463 164837112 805059963 514285576 561982295 424554348 939605720 610289958 276433338 425205793 426465784 864934554 603243375 294272785 804477837 791627149 803742351 275361851 845671316 429321093 980465338 669666919 835514591 569717366 996717053 898952108 750759040 521351575 628647896 746400831 12051409 274140804 353956592 305489534 356200914 49443045 624281073 750524048 940419117 502126819 14161403 862395814 335256194 991226478 607795896 370750114 715210164 593503023 875151954 984737250 299748861 104266475 895783934 805641778 848593592 153791687 961286008 169808482 835801238 999182747 49865209 245472939 338400903 385218905 69140491 641870368 506568349 954261741 831881282 30942827 465025658 905648731 160214502 742001640 733372929 100517405 77271773 855462090 784193778 669807256 787179750 204543767 81322180 691458674 205503037 247975981 825164131 96405291 842836287 453050720 174199104 891929231 328901759 667477295 221603039 296874199 148818180 803217749 987275317 669044666 486761217 41655688 618989283 549192647 659463818 516656684 691068957 950768831 306963995 30986142 378440703 797098049 95225332 907110874 641047125 722254539 415110855 460780306 281832634 707019144 88946332 116987672 631543431 565684125 497123211 332639138 956007069 753642860 341437021 998234240 800074015 25057308 929254146 783516611 302179088 858690294 886157948 273768623 764994106 70713567 893001682 740188541 77793893 732694281 849919180 89604235 776711277 886869451 804647426 915001482 348798310 635910765 638422858 374443803 698039500 409617693 720170800 843213535 520540327 885517783 311437157 882624201 749370628 558165183 81527122 23163413 402316391 804641343 706618328 533955278 801378633 104713065 623011287 974598586 303994272 104083117 442479287 968754496 672921978 782828833 937797909 556950403 223338670 440148284 567469787 921454452 755451179 429302596 100540402 233886592 283738858 407866319 747402862 584780191 313669761 458939755 94937061 747673545 153974714 555853860 20701088 686788949 824864654 851418676 135401119 273699177 144933138 631643849 243242679 242893571 631634542 71083306 225663475 111086186 466225127 528464995 140569404 392120509 771557884 130618372 714879797 231065944 727446787 953258776 810843732 734409705 607337893 217250248 365704765 599197114 853813665 688733522 921561714 890140647 545827099 194589111 870475244 647865925 573560164 856648552 417977576 670635863 330917902 960908873 901382585 955430735 480366504 706280909 516893505 830088501 452898593 224267001 853661170 744964400 164540090 729272936 968057527 90182090 240745890 407856262 91208686 369626284 541006978 846693020 494866422 728072643 903800793 336744960 57657009 722485547 741326812 803989340 39268751 458421461 356442778 618991251 113147522 731049158 785537184 422586822 230161789 84599541 117808164 394666909 938051739 747478214 487554936 765100589 201110023 597607786 23709543 790590507 581778642 911768364 17488582 29499552 466348483 139659905 85385517 312204471 245582857 813388087 57760309 959815735 252115139 133193968 687077592 527831425 523216953 513124064 735169770 1326837 119615571 845802563 737294736 613779604 138303171 750228573 638031330 726226298 926080188 600724113 445280795 273965878 34337876 196984767 375783843 428253646 550604542 657185806 23459704 530518750 836818711 166512857 734915355 262787483 191593175 154764151 191162139 495255217 263043238 833235935 390425197 581630630 576388668 996487908 69913507 806319547 950244994 113734734 554540138 504692249 118105066 926836528 722576023 656247738 91002450 722097877 418067670 139925326 464415559 236605222 110508228 616653494 102305662 779621276 108908295 692920613 912962591 58661812 752372206 227761600 400673974 832303636 168334096 733272951 40649848 72759404 637202298 742084865 737773081 668702941 256353076 507372821 275136028 83508957 283329723 151678172 353160287 35788293 623804694 576464250 728947836 105223094 264109651 266139997 611514522 35493951 999036798 237195418 344559512 970364751 728478389 629064085 151271614 66177457 730042726 659010726 152748374 579433395 50872203 52207544 738132236 589982796 456520485 719218994 771336454 795581434 783010078 489277269 649644198 875133515 177005920 48794788 144560000 982246789 515133797 781183732 179745658 107770943 543963243 280524677 910339660 319421913 779862843 308761136 889997931 315793556 958101915 127804617 212373082 434957635 441924234 500822261 62501831 90123518 513402040 99140898 870319658 969301151 895539522 340371471 736813129 71463212 448789244 609071322 32652199 553041759 693762597 21032923 918970799 108403356 70768267 683640386 32755073 896236 537164051 302064200 801202125 345516517 581170906 571976418 380212470 393338168 936208678 318468866 64582198 551936316 103921987 791040065 397460766 57045736 111040344 882425868 439842759 322311264 143043042 782114892 670563054 323956241 454742034 259162747 92651535 623234910 944610372 219454928 256618511 794349400 724199589 539530952 610130671 642935397 54050032 464962210 214065095 328383665 369081421 189521109 602148384 208103480 719807210 78576393 474737486 922615338 368346069 726802611 402296163 450642729 147058056 132398609 336966657 447715498 929938655 201115367 300310854 992126783 172227028 279722101 760171482 3992170 525320814 423026122 433968202 529905165 674777855 533113480 985050057 913513677 4162876 456941638 720489445 349669184 743089171 859950134 883750942 437916457 878856419 413957827 248936631 111787798 597380210 706331396 226370689 868372657 414584943 11966847 728663112 324969254 404169472 158749395 917255069 554375939 976319263 591612187 968487259 344238378 214288319 486866929 383382784 670488603 974978173 450963113 47653636 285555516 782753727 424323745 774859838 158348097 996119319 906148232 187333594 657414467 604941209 706242177 709265673 13692839 635177566 711368371 10426813 543192698 867642405 6232584 281346096 802551503 641109469 195936096 501762175 125737039 720809649 443632740 180179225 504806033 172921756 660436901 395022839 107990154 644395062 629960840 857786058 466258583 609948863 463215585 746042460 976806686 483013324 867675356 841503954 405242112 465721470 98519511 413462871 556540823 951293741 873698148 886231080 597798940 652752446 454749502 656963436 308220011 588544868 553078279 911379039 854031461 390596157 147622973 394012480 730384163 471904833 715207054 789488827 684886576 243715234 476539662 108788042 100450509 184044327 591971098 321107899 631232648 683512750 649885541 421672267 907520709 522694741 460240618 710811380 924733063 849256752 164669429 572516588 450355732 596120849 890852717 756458483 266917777 30090169 295196583 335715209 551147880 203221350 361017153 224985011 492863745 581531653 61890858 631548908 162900962 727044612 800722625 233833283 339544646 989633479 192823187 307235887 815350423 188820502 493119346 212696228 122053776 105197129 929481816 533504812 674795990 592408791 169801818 597977130 557412996 825634780 497162839 694654542 510684899 8716303 899721840 375694924 96410568 267436780 75780277 988028190 127178751 403100607 556931644 427716604 5519053 299162522 520116969 701886583 214059557 620307191 559827663 377206062 225937485 795602994 989124851 217229629 517735417 534367734 52944992 12478368 943811868 211744726 208703533 162970732 51785296 228413134 791298505 961045793 188020353 75613120 957641382 536253884 175397120 442758684 270806421 965944749 701080025 178812475 537583115 532593255 4517360 621622053 777380752 532547114 660699196 675662230 960914166 472464081 600026768 132585586 959126687 951782481 424029265 121050611 947489643 234487584 786907340 592422693 964136229 919664371 572112034 313013935 580997372 827805462 661333725 269278730 146739449 691687544 264359652 792898623 861399468 943525797 497346024 360193354 762512282 351062343 337579298 629410876 544238941 761712711 734563469 341070042 2667221 399335046 460087493 155667531 879669224 33990834 922403753 14376795 572843722 495203994 52564287 479525698 701718534 382408212 743107206 514337105 640342286 192423782 674961239 135807700 187589091 439557203 224892090 366309720 507883282 887548361 721041802 89585196 34989298 108236625 634714140 306329566 622460009 623162845 875627821 909544224 143682571 136138749 71835148 559974941 713962302 614151236 257309515 981443508 987573935 655625590 19181808 395551896 321941450 56360059 471104536 446398109 50696790 291398213 936596688 62966683 67973838 925647076 3017035 761565034 957970969 48029582 620241211 995904490 969790870 89980023 198457771 523413543 676105955 567734019 412862480 141239720 290168328 248293916 78177943 58849387 95108134 474501682 766977327 105057460 336931373 80097067 623027356 77820942 118264226 534116043 570051956 386528814 309652981 598299443 212927224 830517982 461213483 106453271 573246608 261216650 238145239 779306138 209424561 6609435 365273910 920197599 333537698 699501151 700141282 556813281 253098747 534387564 758383386 504869816 215927415 894454807 153547991 501459626 433866052 804451793 842503009 958493914 876632083 113487397 696322586 56773620 70467756 318734166 640288830 413287922 436109691 701624834 775334966 429828537 903918587 672615367 464313269 158386542 717219621 750551079 836603163 638733934 773302291 549318946 336207327 977083266 458966023 212158027 987416531 214393185 94493965 941835837 362745256 324813972 689705827 240873433 807025659 577846739 641887540 15333843 364378171 125067694 752074874 844061780 745929899 800228963 959422572 357192301 202081370 701535811 82453778 663746302 911015593 824869975 997244811 324919489 665027165 632546224 543219574 345189786 260489489 318537251 298151726 286639012 585817375 152580824 244532421 926959380 473318775 388612346 838545370 395397201 741273265 282315676 332528859 792726774 529695434 534132591 255148282 324577416 402106317 480938636 252337943 181689512 970921594 592298881 726472346 900731613 73690195 968599862 316082657 615325499 483922178 879794235 357888005 871939000 85301508 284967846 85184124 671805544 450074047 356943244 427993878 494674597 282114340 248372966 839473083 277008730 758135344 991509549 540784726 834157728 919830089 239820819 895124070 671431711 550754962 969376591 755040306 328017841 224606019 489703480 622389971 845839713 506692136 623817408 785895826 96039220 106680585 459388519 192937839 889323438 267170913 709416888 74899131 376915815 729474301 585699415 478292803 274618712 284501352 458590140 745859318 313219339 905237004 104440464 736167062 936762675 311744247 151187581 60116655 228638467 8363191 739987486 126613209 301195787 469042678 744890690 781190424 403387184 171222739 86083717 244081627 9228967 220523274 974368896 673181960 216124442 168121280 145436229 906451101 370620348 652858649 821459373 94916438 112392654 883157725 311231482 747822093 734305204 435495599 433993413 536269219 866977609 149277085 634218274 232284367 152859053 723721341 411017432 409266504 612096583 817849464 517713979 691606856 107842944 912355589 958264568 933548690 559607908 252627983 869670469 263754983 631815296 743832567 78206786 749204936 79643402 673168779 35258776 938366556 860023767 87765905 505689776 436756033 304540104 675594819 358750256 888297189 984949115 93245966 409555265 253912694 941952650 603365379 523104095 520900582 357630309 44223829 609118568 971058125 940520525 300951373 12031054 303787022 553397157 299057938 424775936 89333112 233447048 538835547 470046167 115742083 754279973 462206260 372010458 67400929 604331513 641740434 945938420 972134870 459089318 166380217 649463179 743958389 335263804 453980458 55104876 901788619 556164992 703672386 270141897 634993924 816526905 572830193 530608063 683758685 471202468 983695779 494172699 906780980 264703833 807969809 873866200 139321584 581874205 552892907 723620031 640856298 191538705 861894838 351348742 973065145 422307580 158895304 469650394 226897988 331192425 650786796 496727874 751918134 499834522 753764570 182179034 305289058 83059963 116027481 149247702 916548425 725815502 758252414 679313221 970337325 286476442 314352379 493306216 339862105 378478888 465290014 342193470 471210506 851711868 113379946 915794858 213420143 53258752 349136328 31937015 711874215 114374646 375776230 249905358 564635251 283864612 853989796 429175418 456904358 586602129 939867509 576203369 568840480 376324254 66653752 783174684 207182307 853191694 141490351 213921504 44729401 934918013 722321094 222882095 761106020 801515730 624405024 304785599 784165758 906777536 699477614 466034655 397581501 136269657 416411043 873402125 689650448 229957247 480185403 796178672 983911319 756344049 753852251 925922943 886234401 478329903 805307025 238075184 165783401 927247662 932430091 106112251 149993722 987487077 734298740 983345420 292929780 202946714 638689359 662323996 599952142 54063964 597409759 136460401 720797867 146862545 620929618 263553350 276508061 342425996 988984012 321903135 857189199 619712469 575111372 488317136 1340003 215601035 519367200 1878235 237765902 471233615 123379684 429476753 595086132 175139350 302929626 721858428 649738405 282896152 902957981 413118823 607890182 545005741 261165934 6725879 491470026 883996785 680337901 355643930 838307855 458505232 79496844 794919219 83535069 729540823 103039686 983608985 278205646 534396263 245222559 881932622 745517417 670948176 591570418 932518854 127127766 677957882 214209211 963590416 562462874 711872167 754965757 60064377 891533139 366117426 393710140 864032488 330980980 462178954 466798908 545328713 557521795 866288887 110927980 845774020 789714242 729480314 191400809 649889076 863444697 73991778 618052836 669759467 145660083 553155016 967059101 786079759 932699894 883751029 356538012 320313089 729074265 946431650 573177845 144231586 753010899 112972023 667981310 690217331 565705088 539330742 130389164 332540549 259327612 416873046 471668486 395292497 595775632 824825004 51694382 752298523 213689102 689842084 662132356 942865890 104409129 182654720 108207103 444382047 217230490 583562102 41015067 942278997 274202435 537184340 478046259 243975261 100456543 135736914 983905187 807492918 504035453 962108108 966666345 285585805 418410785 964708180 615460174 107396582 945082110 781782032 862184129 473971420 336556571 808796787 226255139 377370374 140679471 386227155 482452360 782627080 830755966 703420511 867345534 688962543 544723803 24916221 223602429 908525972 456942674 202712910 116312871 617897463 504391109 417911524 644542112 664995423 184074572 824450373 429813850 747769475 700622584 701626093 369548311 408221975 461194737 818997840 325642012 181313064 9183971 114433624 629694087 666120523 381560070 269618387 331431442 743999884 277308708 353206689 819907140 536762329 688453410 186953830 417014160 4244241 974748478 864129541 391490764 663643137 167581757 735856423 596859106 501147325 441005256 907216420 575521773 639552521 479037210 549324179 288027877 923685847 62912101 321738810 152763799 688866258 558628630 858592112 999480102 406254251 599984450 941596714 213477382 597205409 576125709 52502303 428995186 381512290 939206042 542989819 771478902 642840495 827816692 3657414 13231662 497872349 262731330 370911298 891889363 457400250 650270799 963741754 131081589 673059647 439149559 668834554 791977879 46813163 697793010 698669642 513576277 407340884 38226765 754825358 456479202 762797687 386297910 723345400 893125295 71317680 862885251 323245769 210596464 81226874 18114504 280400123 226349731 9249195 736468727 902001316 741973682 8614620 257434397 780717452 226414599 426534424 416466794 220588381 684480850 103805731 284534771 969338302 230175130 760525347 401981513 585214480 796183456 415899375 936824771 970934865 985169549 526915422 323340895 249983092 981560092 603476752 258647893 6112472 457860218 777752016 513949008 176096874 533933137 473089195 625646170 86304497 233139352 524941759 545616029 726467846 838813355 115460672 946625735 56138642 612304049 478307294 912347076 502978174 574382507 958048332 388835802 282812229 707940398 377125988 22113402 203713264 818097491 1150704 363840749 659870341 12430728 648745463 839363547 186079293 326108782 579221777 221298608 784457248 497910823 41583710 824591925 198297742 925142141 170496969 964431645 158398194 366360501 390322845 915214582 528438714 653995178 836396261 887205284 8065623 540525093 970187840 214683252 185823808 229926750 718842321 882932100 530886431 716288735 9597216 54996585 754403524 205549118 894471478 987137331 197314967 557173987 683528459 818897978 743909838 118312985 54044181 618639413 759718197 681782821 606861063 413565720 782968830 355469633 650665971 965643893 878515663 612641313 184124097 644312603 945127848 770263269 263111930 747635212 362092044 170496626 314409861 233611280 136671781 25573318 102991103 408722791 384250004 23443371 483605222 826447621 756436346 799385564 288198293 745758183 199868692 112021132 390138670 119671754 124069009 304515627 950649189 978036313 822677664 38799229 270265404 746075299 780954620 198767016 48581225 757457328 272185345 33546723 703244688 740162571 265660042 968395485 868915056 476206924 628234637 17129409 280379831 839236270 911709651 21606774 194030369 809795208 970312221 895996243 932835733 59251907 176179736 884001656 961474884 132057946 149409078 650920862 571517976 855753758 581505503 606710988 856485746 232280514 442973281 720266763 291749233 913414986 759589403 698712899 814065518 235645806 830496618 957155796 338715761 972037087 491440262 632479861 505066670 783330851 977919469 447647695 906422184 286659166 770392152 883282024 523699687 452338443 491768283 849598202 567097019 566662577 534387453 879359142 587139076 661347723 669544776 720037516 402860851 731248150 328739750 17361873 875780121 479151136 760068722 294671730 110514335 897566286 607345159 256202936 756453335 721919782 513429673 536794769 121568380 959192937 195604984 257059121 459780562 580284325 254652441 851867151 809430606 555549026 302720164 314741749 680905697 140564656 439431418 739298448 598140586 119031669 478625514 104390315 336632120 754023102 831122796 219010450 136970589 324415989 850596614 641935605 114461344 417229151 746445737 292079982 298538690 522509717 605690172 500499155 490741452 98557279 326950805 646768279 380345001 178706874 565149634 293812841 359119490 696113958 471809209 748558405 752821347 308594507 728871312 401338563 808698863 404630992 60820485 86262633 820683618 963252312 224434845 842093278 236751940 485189636 703868869 337817888 683119586 540623681 115457972 459962888 417218786 380097573 635727703 994508981 723626489 620799656 716688373 818072874 16633253 27183154 889568698 368912003 138457287 868536151 594314472 59418395 935591833 920515848 259244689 560081910 507969660 203107067 959825219 901846462 284118807 556458945 268809859 784828936 551028711 401512410 37894708 511923345 733233054 896900882 220451051 790257768 194298639 407275255 738507139 946363096 89914830 832093780 781516359 492037293 990973747 519821262 809852142 677898899 991073332 946866486 670437860 976095322 905176173 140699414 376246355 216228662 952600363 730069334 347472982 349039382 214318178 145477675 429659341 877814490 668051689 159407330 283770748 69662612 614217091 735982367 106496952 486398893 223816983 586087698 320895748 616396272 365542330 931986298 239830021 899482858 707473952 90522608 319573389 698962257 271657387 258400429 419315055 549332397 911157274 246695217 676437613 582515336 254788763 886984084 651455158 447912026 291404343 712031037 483728733 728836022 309371760 820004503 166316234 122539329 429462967 580274591 262160812 349185871 19892200 861602714 610174430 643109860 534130251 701396436 743965329 371260653 839200785 608744840 972508015 974670457 483347874 131904602 603953466 240750256 560956962 674048048 895095551 308792841 940578247 944440 903008712 635908516 64162186 978537459 58853872 295827873 638477429 892194237 384017283 425216812 153633100 809261953 928263352 859734963 646963500 639585806 239508204 685359855 403375880 843125815 66476326 89466565 996171766 813806439 684619731 534160844 365220477 424733402 209614840 888983988 439319056 456682577 601010210 526411229 245135099 875137376 93227913 394345423 667633097 195540227 654418341 580085607 174926306 641437664 141638644 852433346 996207827 487021941 66568144 487187845 814272528 765804655 476958735 593668619 150872490 477266714 571074786 526272847 781811897 515324155 404523956 275984121 919217016 673411211 522274098 921666323 927402329 515000418 549954462 397781943 240782479 443706815 377278863 596359425 164323773 898445998 91421354 725561482 205369055 15377069 891445831 391881988 135956971 308526565 682301701 580555325 2672693 545451537 23722873 93167255 329887857 263103824 483680515 570029592 107878606 409255009 197407583 78674280 432211733 654479851 823586558 644703734 298448646 296661770 131162141 558791660 304135397 737990563 126267848 76677715 890610126 447350917 296010853 499524414 334196963 203172456 957287683 760179175 498065502 933703974 883159614 771203346 374819840 937113120 724140232 855449981 824549918 681798897 616138350 869521612 436298781 30661795 28650135 798967094 415713853 783112246 480481697 127152116 810734874 489467772 801000001 541176890 998889546 433006146 297532877 179951550 88351931 806093552 109941009 666122652 462620640 403715303 29609687 632264845 784972036 33259868 211261793 45885805 620175792 216996453 262937533 819446639 350613416 469989068 416373110 900916746 222198536 129015649 693348142 20525047 826283107 498642045 990622221 235549313 662200857 937426004 672950749 396314895 14955814 550953920 582788745 61985644 452564962 376051396 489363455 581909171 400748546 322821048 289686336 25881669 882431163 550908329 59428115 528712384 260160134 202219968 560321258 217073559 147519103 640354011 915340407 477240406 727195237 545891233 440014013 110180941 698320046 108758532 12335182 770480053 13116917 344124202 419945282 217319484 659065081 26622837 27164092 792189500 442777851 516599958 159798430 622689251 18151738 753252731 851306041 34821989 282894657 252428986 31576382 461773157 758993850 824508821 877354588 165168798 422718388 395200229 823425897 389477852 418619408 732314531 981768588 972137659 181464379 571989964 456637023 153621066 245573246 85549718 618739371 749048948 641982540 325623592 65800239 832326153 883100240 937358062 595854029 299566326 467757669 797668665 280671624 699431821 685518253 734503873 694930287 210278675 115374709 873602987 884018449 176966166 455556299 100110231 993318311 291281698 941327879 949978043 590233004 630139017 409824067 637824681 721659628 563691327 832013878 336599768 590387879 398878696 919883283 844772908 680235397 811834700 651257440 178051581 366697582 620325957 448417440 968560245 436807146 152935608 424410958 713154473 716677000 282576257 468535758 746183352 989172287 16276457 815522458 428664025 595268709 920865243 363861367 74186012 777963123 694695926 652171338 41065488 890103815 638537326 348223994 934983967 51266409 226085120 588529057 506272206 163286323 386117291 83321570 172989607 12507799 166324018 514814015 798916634 580412418 880022008 11208574 961369595 139528792 298784015 881656905 556156888 595315700 984328323 182938471 183460315 587345130 378851970 753850225 553538324 46074545 146813286 556487015 582740087 812922973 848823668 367644324 384879476 995041867 792325273 333919826 46340573 617542657 309932250 988399875 322374360 327206941 513809231 646476948 582308989 908998949 84018791 79782663 325727026 834084655 986914197 652247594 760612592 437227652 18340557 92730990 886719988 270312795 631348682 845912291 38387420 177036172 66316074 43511853 415639640 524291759 367260655 382701970 27194221 462053836 797356862 586992803 369268691 934736330 491525163 407707166 922385379 28663106 329256568 493474707 4550267 180019902 532963396 763808782 720374984 687571215 821802681 592293410 602429114 699307909 344082248 714457466 780019464 985693329 967879601 739642565 12524563 663349300 343786410 972952125 568664824 514706234 438931313 62572854 57530733 484266545 403635370 993448751 136810091 89561212 468035434 975384414 585586928 225041844 406397417 44694791 522450782 360804255 918490713 20463820 909897567 629069723 413586179 846769810 191143964 450534869 680534470 554995603 291003214 945168790 225296304 513101220 205797356 647321640 818140181 146222280 368160413 863130213 374677083 480551980 66900953 781605323 66599535 61248434 393072723 721465974 38578549 429311610 843897469 45167151 970631687 349502014 99021968 285439568 386295989 960906926 227826369 370381606 44491265 395053493 630551191 660955955 428078684 638207631 878420322 489023814 408840226 325572078 455163883 342063069 213085767 434814398 297276602 886113858 673158706 50545486 420917781 71788476 545533368 279596531 369202560 354964818 678610442 593426323 185788623 543505491 268508273 209651338 619593891 356307936 460789054 978198717 837776009 678487205 587932956 741024653 892892348 954878072 316049071 813842275 454857534 509346012 498383376 446994457 999568018 633230393 346891400 295935380 656799339 620349039 6621562 505507780 41471757 855068342 541281293 234857598 670854448 156866089 199646772 115340339 681366939 931007050 826838250 452037916 64587748 489021171 826490321 862670146 107504949 745323887 133472137 368170935 945916055 388709712 33994683 200361481 596912091 495446808 608394323 355243681 536001459 964925012 844620032 412389784 492328160 604617681 299370665 487943544 947415056 998356082 421481939 786220130 264207369 629459241 24433075 873481528 993288913 988516206 798078388 719761771 782582297 879925772 591277518 244413195 809733568 916315560 632996183 404138046 225107408 39457449 760856409 823929800 809258352 372157981 334907251 180143622 104981740 356373806 540779283 232281819 184306139 293359102 366201031 968136562 583227141 666934565 568665163 524447176 234091575 60635723 161413345 3602797 927092150 119692076 716403725 923948095 173547949 577750254 303132928 844421848 314690637 183821290 54534401 594129445 766346076 562077453 448139235 951879641 100794706 775673391 82699731 176037939 553990376 448278020 202703814 615794055 81141317 157065504 820539058 967176602 445734162 804498102 575501445 523434776 208997640 770623996 546316746 90864894 710307831 231371760 643820936 38277260 217378277 57886765 654811318 263599908 474392786 835392605 545153853 916329922 13647941 903969747 976420397 670586095 655117413 336236803 677469041 405910787 847567149 826475589 639602164 660497189 541901761 405797249 147547310 984240711 895413209 539598503 352441708 188690348 712363860 767473955 544970431 329905671 724060714 114487081 683220856 447076532 231429214 563748355 815997051 593806424 26464748 321622666 272697756 529016662 691915447 551805279 498276090 213573176 126899631 146395889 714695388 647528641 13287994 730348047 363958967 261602387 821713194 7500632 985588603 836529359 849374023 377836630 554630421 508381436 471872072 923816363 221796596 193914249 937536535 207652382 219087918 176507131 92313543 581724446 62768128 722757603 527654211 608064459 332787644 133740446 461893618 377703444 481188478 858696984 838927773 51848090 654966826 473004008 742665530 100753015 889573986 116912289 446637247 523783858 360839159 900520898 396168094 704784118 702114418 473679833 628839806 865062194 183654231 483878883 960294762 2433450 993491399 705620143 438438408 887579343 54889591 679985006 511275776 767178766 476382417 901776386 273906652 684544359 188041964 805028480 26237373 910318453 829350134 915065892 80206520 949441994 457753531 112660802 150799335 958312782 540337186 759449763 954136828 829999250 948944048 538013995 881870377 438514194 10665198 421621368 258680454 49315174 588713807 221468669 671183976 664156190 907187636 829471169 181449134 418706722 741606990 319806515 589105563 141142271 728554362 130756847 47891611 645440207 383540360 740719103 822747574 806015936 820670806 869249935 758587595 577413307 175828074 600694203 653608205 295273805 720794267 674739271 42068392 348064766 323769068 273593882 53675148 141553664 134364878 11440714 324475915 243328914 876149894 78290599 116162517 679225928 968024648 249011664 497248755 625013513 740601428 133322791 61672068 654904455 594850244 301733314 39978061 72377580 340333247 911678575 539934398 190278306 8100296 98885167 868536780 64398174 536431815 907187728 938423988 993165606 334665528 937213553 164805386 405515371 775130786 755138363 617536478 616286363 247183798 507223418 563853729 139219918 489519642 257879478 87562630 599546711 236600030 338623418 292343125 615335231 694805056 829096033 199100605 904083868 717157441 984800225 934384905 661430177 316049159 665781627 980202955 14275088 299670213 726698780 719535483 247948426 898690573 703032042 75567013 683487478 684923101 779609531 644615216 21098225 200979357 532659196 459864151 166116811 497384038 666052048 221366880 668532802 414809814 318459290 188883393 357596495 296126288 371466947 499550941 803530904 520152771 897380040 673111705 634069589 213324228 254847072 720052296 620745753 941317444 706754738 1486680 125197488 365432753 227610478 352526591 208618512 137630955 34346240 333004876 155361494 20227281 520949730 664933128 683113810 473694002 909995113 613153519 782401307 9714193 572898055 721227672 376503481 166457013 719670596 282198460 18126396 966400346 440218138 199728289 780859365 821525868 877147489 734414432 697503006 821975645 315132118 247250680 118617429 217487935 285411261 393195936 114295939 138962165 849715340 261865225 437878794 638977679 964545529 828639097 387305511 701947148 37084416 230897671 139493032 779139872 866633541 898758672 432906196 229301783 845251177 220841075 895851112 465920472 41522036 624159290 596827850 288161061 2620570 577371992 851941416 387365628 366281821 840816650 310718246 801452687 233440195 661278981 427107515 37297010 535393092 360581714 283411501 247925925 47317218 818240589 993584065 192575974 582139838 138109107 322137389 996580424 217384941 995902229 399816573 885611537 605967211 831860857 782921986 873400907 16026292 497110175 220577048 520965225 680514995 480962960 222048638 478277697 466045080 339547924 983922932 273098732 123381689 194577361 779514955 788902122 551025541 593683869 658436961 246317713 412488950 159005070 973069138 534187740 730719712 668264083 756880101 199183309 313407716 457692883 569027312 727182602 811899509 349448404 627606043 662544644 65332824 636508796 431409719 546045467 614018620 68766387 435233955 197165444 682996716 325417383 467008718 447452524 637960521 349817300 364010094 82823640 786771183 252696651 858626994 284879010 236685240 753450330 544611233 761576326 745309142 106179504 107423892 290637785 423415995 887239150 529723884 556843666 649004685 759489483 336146683 427558536 716097744 195649802 444366362 169059829 482106777 988181321 957253350 895591322 952940564 826884356 798572159 345523235 488406716 438462460 814662482 800899114 994610936 876801397 776576151 12818825 754001953 613501756 959719941 737175260 170751898 927201930 151239548 223957215 797517474 537027095 808875147 660435281 562312497 471979068 600655009 834043441 383742552 968955334 895781924 31739651 901680206 84657155 24461296 521446254 991045545 488752330 574646639 667203040 242493156 214568417 297618930 666526813 612996475 855729258 819730884 174675744 745889662 596026361 772178804 723129087 937123038 767160206 69635284 705919905 890158661 936068760 236524104 122451744 392154440 144519962 63772318 830955115 221801385 133231235 373478317 148413224 508905905 14996442 381776111 626092357 385550808 453359668 486713484 899351754 202884522 868695229 652997691 9276488 184921491 601738351 178792623 195505747 236978442 214461308 976689092 261687783 920169485 129622724 494270935 356686215 662753735 658775154 754265238 184906715 12659850 14399380 557580486 24481413 406705359 183230072 271100752 766051421 550129270 279748672 552363822 342365030 382913156 306456943 100725096 811530576 493064037 474653947 114250317 945434340 546303074 311040251 131642028 713568414 219903474 711878863 195158677 555000291 120215767 357575926 519727782 383237927 94235236 235195699 366417174 640158758 882688615 402372163 516917181 751485130 45862549 1236326 169962876 708272812 60858944 470845438 702358047 901041584 218164497 275893583 854441152 140882090 350717651 202294340 734849395 136125499 588862864 352958148 301280919 636046336 380807880 558281719 876795335 378927500 433481838 290409186 650934173 910096551 762802678 620130015 312196643 978401982 402019087 805368241 667164065 192661849 288340209 396723631 328574008 926222678 46872628 100401486 920615444 150661749 718841173 662954654 755378918 583421754 596219015 346623901 706507773 204132041 282638906 826128783 872554310 37384758 306742053 682480739 745601347 654088657 218207609 365598562 69107340 511312619 93907281 390403523 318355053 619529307 152548427 185416549 505549463 781359528 438488677 848331210 973505038 870077556 161868544 192904481 211563138 864941082 831985972 121866858 463580870 220603433 959008965 624013146 205873594 291489013 685430304 705378567 189283437 883983858 310984623 97364450 51352701 862540075 224119473 45047964 790422967 950020323 295602817 735308329 222277695 643322264 686633748 213839571 776503811 959564843 468356795 911772208 542668392 780030421 108536304 986859874 426479314 405425023 809439629 451305372 567652334 652553531 595210791 57431944 629964703 362136429 744728959 999201387 237017569 756708275 626077397 921301854 689172796 483175312 291361099 234660969 875424670 614008629 508604138 615799831 723215223 358427799 32217904 548242868 993181116 974957349 222562081 798312841 727382917 761395786 491473231 333863364 924382720 293454045 180464685 356679255 828232534 986495761 58729584 891586806 94512871 74932964 152753078 549923138 153155004 936535313 267942914 626618573 886650841 708470841 785337899 286344329 265620876 461497729 916187159 340213100 806534338 983962141 204731414 897037244 849618080 819312363 78274524 630627314 135495511 205597775 873119768 443826839 324482532 600081141 194562771 592589216 503442509 549016083 752271748 598143239 43647320 863049155 147362561 739322346 726007465 373736245 400595085 846925458 74224481 930185230 580366983 958397512 264692285 697815955 981493871 23208526 439487078 796596176 956952745 251943236 395153773 5773129 974760235 432821699 645941322 935260616 337736168 108220219 580233042 578407282 612748370 743681195 346088082 690421411 320885719 53840351 527800715 380789405 14929642 543782673 773964253 899657962 303694982 808692567 841838017 979622687 938451298 407495667 887161945 258568394 867945398 223283339 703009777 44796309 90276890 369561386 218087167 39691168 986205489 40475725 766376445 640451991 146898706 613769520 783815241 451653467 227598092 963900408 529380716 193953926 345860735 663438842 441107317 369546932 736016279 806373192 841695290 592140154 363236169 494263289 375556855 687010806 286672703 75619799 856296229 587658270 793570961 232818950 3183891 45693920 806830042 8478953 153426110 976516424 634735904 685245040 267600450 62329894 190959335 440027813 737443642 204875322 776590416 523794019 962641943 445417850 474074878 285816459 230013640 263928768 993843355 814612330 198270643 551061244 867557406 660262252 491130392 882673520 200131719 89551559 399720765 674350116 963915854 293989498 622616531 104877893 969538914 31861779 915260293 364674827 82270328 604949305 863703873 811542240 777966949 595435654 315182904 60948307 294343179 549706538 757661406 882000710 151174085 74206216 768264915 793176116 970590872 748280980 3060272 467909668 324005888 546522780 918543085 202938503 890500384 260081390 353734392 941371358 842269793 789091386 158987393 271975893 474127210 766871850 265974697 868103238 994881646 679414679 332618844 68107507 390808763 344487804 142125973 815965103 372390950 916213797 861270451 904319452 346592884 662225600 418739852 548151946 495751791 840814290 402494052 176490058 271026243 641368208 142480271 986790596 432585822 319112173 282355107 332478302 228337975 792746263 263605572 366023674 797860013 230915063 336532501 610280009 872502711 720249542 983012921 946713529 231203114 395655855 197673464 974763132 545691305 303879885 32030387 952815423 822800104 976563348 622064115 382569605 884305306 411333499 507813176 785509873 477191812 365568225 301983573 544099585 523529417 571900011 860795984 340115639 686344898 579520834 355200856 982925291 728235503 714102832 564235376 955841088 472855839 282858346 691547427 834742364 443221261 417523564 531394759 828288889 271675597 682702053 735060225 94038951 302383940 895149187 309556076 796721334 526902847 331540429 796039837 899348684 827791207 741492854 385514297 441260615 407832674 89138358 863353992 603645171 173188386 620057874 340653473 513660647 570794656 426354398 298170109 794362686 187544905 985712519 531292227 457089597 275330697 374876003 422349835 216813024 308305529 57972670 647308645 597695965 902790375 451977137 315797158 194030088 177633640 176968922 809329361 434926300 336364025 616562398 237924145 390349421 969036802 327538942 520104349 733513754 663227537 427360646 890129323 903346240 371426793 381012826 694728819 950654753 793681520 94974684 423564500 111330895 399031580 932260747 877683135 135344062 948584405 144479202 722449958 168978856 893650270 991043765 183825588 896181285 752875875 174028303 701169824 950519019 923479940 190226837 559912307 909933715 26918056 215831216 996534537 417260216 752076695 685605842 329316698 588154271 278673419 918473792 267323982 498149083 235155603 546280583 20948021 859505176 18664267 456609430 951812140 755638378 829761117 64552926 569442844 201724649 633639054 660800125 170383603 946472076 417813034 608966539 840739183 160738484 73117827 179636584 874658018 162854360 89153083 124531522 404528260 470154149 895668132 812095663 467997939 271987709 357277533 359284679 497326232 963198734 783703117 73338201 191104242 865889371 818557048 584924019 764987591 203646162 375918464 30543730 122255291 828916623 847219643 866351218 779585062 723734322 974801535 734932888 801925472 686453985 277155025 355461146 495768059 298435062 475091635 706280955 800944286 563327674 801228523 514200281 529413213 53649916 863260998 565172475 146963587 619464229 955784048 581957255 730728281 995875825 772865925 673505314 81340668 274003977 455712481 721198965 738323491 540590536 76480572 985356952 789516187 186081653 272041579 310786056 82496228 160916763 18664792 693419392 499434235 571687816 826624633 215530056 828360795 302701384 244276241 132358868 165470089 97555997 77232372 736039551 237926471 928249692 575215255 423067550 788803106 98606869 498869689 721952842 639676068 222702853 947987264 412345479 306921317 798352322 110457521 745348914 380491395 926180477 873297252 783127775 439164595 778762079 806950576 896984311 700349947 506231209 348577475 685808159 158003415 702027379 89937016 541531453 935188423 768779076 713108342 236957572 7006471 228396504 15401678 486260483 792418077 636676373 757484280 738104302 283971760 100723467 648987414 13611732 361992948 410337794 406126731 462556193 618794211 447926793 834991344 202927107 932015770 423311705 364129044 408217884 153035192 682096439 956532586 350360397 982463402 771972749 243477302 22442202 490811961 765103769 434746252 616729349 559026881 239792551 546557759 488329659 174226569 590302945 762960480 243213542 154562719 803252832 321510154 349463827 753534541 215418024 953554623 934823521 591252393 269107583 474702395 258746684 758974007 926454388 738597220 336254316 790697375 513241576 639364875 501980584 87284441 284373441 158065863 388715271 344463654 418408092 875644697 364784903 991715956 260325017 249160584 799242596 607356546 175851822 367830066 757542272 481500238 803338843 973403693 425542346 661912160 116015534 733820852 134824777 426136131 617214411 381523941 829184636 821731947 786283822 266172773 586242270 796200172 611360461 274219340 93970420 105245840 730281582 636307514 594414576 284490473 690805063 269758456 188969810 870585702 873263715 874503315 898821178 135247693 520579548 248641996 655094845 44018552 224896401 204285800 431510831 191800137 864817935 928677440 556480462 923625574 13595362 729079526 833326417 273094751 762192124 291174517 46637732 278883804 892391072 22121687 913102243 756034532 962178180 800596506 809587949 528241160 76651759 231722072 295356046 175182574 255639318 17893277 27796681 954564200 434231881 435190535 512310802 641738323 412238334 199259357 81919237 960927419 464980480 774069795 844512856 706816799 267658087 81750396 845024305 497222023 498935195 569577492 671380430 655042804 307841198 733374102 52273002 603983417 436019052 100215185 372144233 342621899 896236498 730470241 186018868 282870894 554023091 479504681 969883013 974879455 784349986 160641548 190339969 662273474 374467653 18203419 350909370 112628099 13806735 571457778 841466780 417258593 109874470 202454107 775090737 600270386 291157273 372532184 799093473 352320287 909606287 598774371 516384206 924594375 530412050 750745080 615686522 699144314 901455940 831677497 659240634 261812380 277900745 445591809 21404590 202642930 82595328 953105788 839053451 7520737 38245566 278013550 7930979 815647666 311307504 743151238 29832957 597961563 279129827 995848466 968813022 209864006 719018299 992481431 746986042 536150556 218113513 512246067 854681065 879247155 839185855 923652014 208782910 426577292 276890136 587516368 334941624 612681494 738436692 362141609 649406110 274445005 574486657 903642079 18591237 527633658 419924770 617650646 888561424 60687280 756145769 527856822 139642096 459299334 297772747 904528072 76419239 476296518 363572061 601677118 680130351 213409908 453888114 616780313 667059144 424503338 223491293 717765661 195015523 664790714 688069518 845986622 84100911 144673939 681790519 299498538 801280858 940327685 830960917 411876751 658572394 389855522 561042307 627211523 989945893 856283214 31435662 705387473 132011171 343365301 589413809 706867246 558469939 120802933 834569366 243298341 26574560 900956300 946013530 799945918 345307180 404019278 599424071 564054157 277941688 932602032 278379575 993481652 138815372 999856890 641720355 181341592 385349550 120981879 894861647 975258882 599880288 28089754 133326531 11345768 932697635 647434843 40361092 532988729 984604409 704054650 876466120 83307965 484473186 218286879 624294987 502141066 424382695 588279878 731446139 326650084 86901201 59128300 197500302 421147882 451643253 953714814 68193361 211175565 511220250 815297988 276511584 321607199 876928362 728261592 831962210 845461947 365930904 603385025 160887899 448336681 158921744 138612204 865841955 113471487 683376316 197928023 55813482 760771997 365733852 658536407 471535194 593374700 891945612 645709101 54604705 512607476 457056931 994358838 899892842 983785526 739481156 389498162 6739383 98103083 158150740 91865366 940710159 897580961 35732047 792854634 866823370 546118999 627488360 511964422 546274568 218014905 802384598 464034964 586530793 962591793 342453156 334129342 511710303 685428386 712114147 144970091 712828914 164211521 809562851 273250210 635429876 361158302 298582816 525319416 765083275 18806882 553675877 458364345 352117244 94046168 343115330 872346014 291462250 584541160 184003832 695679223 121657714 591485736 525337163 653538581 96159237 623214506 435829205 526312223 478561114 322140204 144056901 736140973 941317762 424353005 906230143 279809749 757470918 989256818 424202528 739639761 919586040 703882189 47066652 927346675 675594094 757994947 300509688 819153264 557561670 250912260 495115097 199709226 887692869 981620322 68774953 478791264 600294644 85522012 399899195 26731558 822045208 582065965 647379311 658112843 380379179 938450220 529652761 839343041 434372360 496054970 787618943 587111544 340545848 654321950 893980190 207117486 667278630 55653551 736702655 574475170 190820209 211988795 209192977 233519780 644455827 464817982 303853217 143193370 92370483 400517579 585554328 851397606 776750826 493395460 902933307 459952235 197813079 627681406 430004301 30103404 971796846 807991074 411359509 601706123 157352802 928776900 796045361 694407505 702462168 2816304 668861954 690077056 225739108 483705975 268980029 793596305 445926905 246741956 203569968 940210079 275530501 892308258 32095458 276822261 602728268 910142484 245548400 910966860 769571835 728500444 154460918 337391326 131010664 760500655 640000572 488852956 268332652 206547373 674832874 765845468 770605767 149429054 292400212 789675979 33755198 767266020 404228448 789337424 535208027 153861073 795099668 439866718 819909843 546830260 924402188 720372079 111309791 205881992 112207675 57576825 854575466 143327659 420176406 941678707 443818098 235220526 499925073 663459600 294914675 785177857 556994261 712273201 604222235 642358280 213961412 322422137 843194152 398889993 183514817 971877484 403026741 330064056 964964448 254642617 938002272 100734238 954594918 434170849 575434864 655040681 841368516 82791138 597047348 906284229 757047304 417837976 775428764 397539904 440881247 308876366 645550553 707465606 941589527 28542012 263168262 967415402 136409700 56840428 424055602 606226375 147596759 159713505 938231470 281263611 268103067 446967264 383581301 152631027 975845078 440043606 967609606 835935568 102609621 664565333 567939441 110167908 818048118 228471792 384824479 591561265 553798620 202092154 444908086 98306853 458347212 958563940 569289381 993105504 491042388 211001840 219141712 475454669 884786797 744127510 186548241 307080082 392373784 140877997 31276997 968286020 820232295 297477555 225894983 11239651 947574178 4490747 214964358 788361253 865163458 166234934 799870500 262155276 460168342 993934922 936699993 465026895 215674955 876572390 245040929 745246984 661370936 772488746 861293995 298732723 555026792 426788622 175319897 942921920 881545017 981428484 442469832 153894292 752420375 140204721 495259434 453080110 133326918 231831230 53929225 461888842 90079 764020037 734980689 324548841 898310178 895245276 452833182 959516613 757289449 802837044 974182852 584347558 941020363 766795604 302110239 160256741 762837072 563721511 234960379 259018804 650284661 862338539 873673704 749680527 600840672 975214512 656326816 214254671 112400275 217293791 840376118 610098689 747774242 637086193 185138363 836148736 947644728 482515188 537439054 897684188 654862560 207614731 147341370 894758496 885566970 225028934 72140754 565182852 107020537 244644820 555491715 433042035 890743239 575758550 313737102 23094414 911045156 671798131 631515150 333246715 33870546 618276848 416282098 579617914 724286881 152632746 150125289 251838089 834223087 46529313 615216927 470455600 22085286 369580806 796911941 525742694 272491529 281127994 859745476 178741374 174133290 713534135 627130985 272851996 618713236 704797522 263583726 718162603 672886764 732434945 245844794 993433039 393487036 855254280 646899478 995158811 188526209 337452053 504469659 19708565 397144811 112094363 209506059 735568506 443324469 354894131 894828333 252553246 760968125 475005421 963349738 906781613 796838587 530593229 228570845 601935782 884399405 536352173 872397773 386604830 974932123 648366707 785218593 869297924 557857824 2902063 585294116 462463054 344586778 717375433 292737966 475216355 526142740 255803237 102357547 55819635 489326446 816501960 561915939 391393183 897914091 229447769 646035793 575519446 31989075 516967965 837487676 929020002 673351816 414865589 376427635 930431502 40716443 634873068 403117947 961830104 844257370 147741898 870569411 970271454 124732200 986336123 611771929 98081662 996657867 5794572 939703098 754915950 793135787 229696798 522856299 164477407 915995111 150463243 121875005 450529444 120674348 534296907 324632697 598846991 488152976 996568389 729399893 904754505 737817723 325291257 894431185 789424696 113562959 371769669 460094271 94838202 416414012 706629872 453199599 962557660 832303808 355720754 224941356 508538524 669493923 37076521 634453342 25684508 543293123 608851267 328588750 610875469 213737015 575841834 331841290 687504273 145098383 19089893 428125384 592008848 577459098 624974324 767796538 437002732 42604281 840286252 461335900 785142017 924019191 773148864 745003408 249969476 264557859 338759214 812362273 252994253 498862923 113026945 249606155 377322380 792144235 899438270 883499592 785345575 231977779 840732715 633903783 132209552 159813419 276728946 130010690 874034077 482919676 664611832 796282502 140215261 645068141 511267877 911287950 170462924 780816195 179113578 666051623 157163175 358072741 186397817 180154617 940715392 142217751 326830408 857416337 912278102 258877140 170258356 834715390 922717049 710767621 323842402 256448332 822480593 20347890 987709230 244872667 235356638 431422981 659660979 558132821 97254589 407307732 767920419 291135810 332965058 119968807 146246335 115704849 662164084 915920577 941267576 696556173 366440337 464367882 154193267 230717337 302616474 591757944 73814675 165937797 274637004 215929787 192907683 956293118 820699892 191983131 399070542 479473704 522293954 277455623 300374562 842626538 598225177 505402212 553361484 338202589 766973329 26997698 623621467 4723224 592876464 807181073 826271767 277616123 639567315 868509132 407130420 525547170 351598138 149877414 895968212 580698910 311469124 672377434 195357216 996260142 32059661 321492090 915386487 558610503 713640868 169034520 925350891 423325092 643574849 746667155 533186089 729807275 979627480 320284985 802652829 403154867 286117168 178754262 171888624 423373687 361439021 140388502 453655608 941686966 715776244 11858760 193926822 182267369 860447279 295368492 217715747 777179148 803038738 814071946 950194933 408412511 845998651 721225630 752212604 684674838 933158713 918233267 894184050 871124562 883911792 299128901 559259037 644131239 934373103 128684422 839847679 925817841 632841010 362671820 434088423 541453666 107453121 377880424 382342796 307727162 79779165 728737712 781995793 639946241 483086849 93335036 395160398 611241010 252193480 399543586 237855053 691549737 25132865 644573559 573608016 158280381 391041194 588855293 444392364 118082532 241156038 828001582 48612217 381514095 885748057 873388154 956116500 423685634 745612869 760019434 427985507 729650051 518844138 110439838 38647876 710900291 147361581 315175558 262237739 59875361 330945868 821464079 233404961 121494258 757989967 575740601 495575910 887558861 21126481 23599779 460508658 815906053 952255604 494130168 536705623 169336284 817073436 137597896 850371191 943986815 529482727 433020501 424743763 613430963 535156664 845857409 886076118 951385184 159267470 313554435 376622684 893621183 704266993 452685872 733330862 17774188 874593330 313798928 480770229 940859820 998932376 561531239 883721571 19173298 905324840 940188548 525369222 31130775 393821443 778972099 795404208 838998904 52076968 163862661 479488054 759040244 90933943 112813400 401367151 486720867 999131167 179780732 438580636 391627961 314533193 597390023 596575141 396295394 276410987 973753566 196634682 896917860 729538496 35367754 501949526 787069045 410370406 620933326 610784940 708012631 347944022 176304725 666714490 180467359 708205799 696844172 141590830 695196745 786673603 477486 570157252 652628115 137324817 109530696 110491603 596030994 339186507 624402824 326884370 835565821 260799407 732689440 171016566 427112854 127380717 184939951 30995805 458681007 26955943 44652914 455240164 380467990 948250283 49930482 281917437 883188615 669244387 239805251 431774100 197431946 850311837 148979808 36868624 248075300 782834491 842783150 861127301 331161435 611237544 718684266 468898492 462538021 361315731 344073714 478767331 245006160 934605178 688667722 940395382 143218560 103770992 914757089 572801237 95395922 69589218 910564156 655123126 642453174 880695765 839599633 597066046 119453609 718400655 536535543 889746940 81822039 235191867 482164744 183921198 650412226 228682573 183892368 666146709 630186765 620980908 341745873 4336644 624766005 318908728 194935392 82608210 532390399 483191837 297237254 707036409 322054374 180851146 562201373 423304682 284778936 853878744 491287075 666715089 388772106 835179033 889514124 43073392 933343696 716639610 108724425 798827713 584318409 480530090 141922640 201435651 884351530 309365451 485192262 468758150 642502853 365665851 805042902 869277041 783615027 336853418 78485411 46012752 492680085 688580270 589566809 75357286 113201012 501301290 947950021 627336376 165920286 716343273 993399996 191360 487795539 379176880 873760157 825213816 629256758 874716656 885740246 246781454 295742477 703354100 433874958 380096854 34384840 450723118 61566978 897215643 289925300 106500526 71041995 965334395 800371167 458573015 193423631 649303976 40634183 230785665 859326418 134464804 721506129 402473946 787447302 385418346 891495463 985510397 692662365 948310877 803812587 841470184 560290161 802464281 124208546 558017674 413839499 156019762 489288328 517729905 611932824 134769567 299947812 241282846 456892937 485124861 510429204 352299406 467400972 425067052 575564392 711653626 560715813 99006739 612883843 576698668 388822292 816058985 137158646 351160442 569033753 211367008 652391241 946610195 150567493 929998655 176797750 287921562 891478966 305299191 537511048 278148459 829028158 849903764 393967830 584326310 19972269 655682366 963938913 806751060 597217897 920457690 992017771 710048381 188766222 765899690 851905834 342516476 515027802 200300963 475893294 387399095 767596242 564887845 300702791 424319289 659066227 682561013 588565092 233269734 522128156 802329690 508042717 914554318 695230664 851952826 816972078 552384440 857595033 100056839 74060280 475870163 323425177 261180091 751551767 765782348 693915798 286673288 689957816 404204429 229287511 313027110 363654303 275013295 654527881 320806562 35837299 51178561 241570720 606829687 303352640 257452370 475743758 111794559 299477411 504248296 530128135 117006422 154920147 243156471 357764041 204491516 193027529 612907917 315892738 418966398 534784571 384965296 123117556 39247632 543826729 205849963 461658692 583283172 413328417 704559996 585580797 97430193 298060610 454129695 492027796 649544640 540438909 591368632 701720319 777517788 789743140 844078608 266526730 627148405 113292363 886143774 534185277 884566742 916535234 661336005 918308969 970452635 467974258 921787015 85890064 245314404 496076631 81444856 590002755 109621339 515953198 434599444 102444321 875000381 65829777 633649374 296024389 109411558 616664199 464160711 675582452 849773715 28144702 851983451 489882942 321167120 703102292 947712916 973603650 711434945 595902825 276040983 562247854 154473269 184476830 637126171 798646861 563068756 470438085 533770802 782925783 534813046 136467560 189320142 699663281 748077212 655421623 105066660 883354748 875737378 943496216 360145992 186610661 814474993 7227498 574767779 865204419 470392508 838571936 489582615 494742035 34460902 509591581 855991985 75578390 841496242 484182846 766098964 146799306 90791112 404893720 891535970 132839865 835940548 701430985 716772193 450040630 390080997 239296117 49739053 712678401 190755190 651238064 628325293 583705624 894188491 528292319 469856155 526301708 201360869 985350126 681758209 927940983 701790888 83027721 122603060 879714251 897742369 348380629 905711575 830448614 673066223 404755648 491697736 924087700 480145302 893562794 516592723 843155046 396391651 212327003 239385232 686784652 219630191 131916517 53274799 365918121 597338421 821096765 433893852 359213746 179567457 780740418 164789851 410370592 561148663 868230455 374437647 774994924 769359300 547655427 445981645 408087810 929103725 820531726 998932245 362193698 822835662 431607663 381511905 805797579 48022977 425147364 136683839 877572161 349861831 421768470 148972068 703948545 576226664 513499701 785132918 613553774 804839257 30690715 619018645 893399753 716488702 12334755 269935027 630345148 470523275 158338449 405331882 857794255 521010789 851977621 267733422 464026764 818840946 960351045 932861579 594688321 80895661 341730960 830705869 613441647 735100345 871643879 801289021 33322806 384738053 431778846 494867785 648372859 168987028 933862020 292427350 634362812 466817288 493218994 39315862 418954791 129432073 920852001 304093226 735687636 870958091 303224676 569023863 438049129 737152654 224795476 165222110 979400973 981937418 128096086 70835714 220811078 659224474 368599964 461764480 542047221 359178066 960905012 771377232 60343033 326345308 873354868 36749466 950149 578543138 945011661 780579158 478400234 233704336 796969270 358983176 904966123 242634413 874245879 992504766 529406477 259084788 410990119 961492862 946458983 790706871 473851911 622169555 198054234 764365947 607645836 36195450 284861870 860770246 665879589 499742125 694200966 889887969 371739601 189568411 617367112 379689927 934619161 574503651 457632045 25885347 970261970 705334699 408891585 804961531 931319153 210450458 196367675 864707950 757475890 29986291 496974779 50284480 498369841 644343315 687986970 172272902 564793689 574839774 910163337 252164235 923667692 869390425 870322661 205833022 895452166 501383349 780150044 228023839 284231029 504796221 758506768 869988792 828010019 610225646 685180140 373228885 307289752 62433236 336034928 826357954 508143074 710632053 611458149 585991727 774843800 314220076 876422396 359770913 709461148 845495366 319290275 802411116 926017914 387923219 4808654 799071163 11128946 149273686 590411414 192663011 926577681 549560947 27607578 451309586 204690155 535504010 799938772 167731213 58241997 297062916 992500524 168707014 85318022 18497840 441997951 337174197 209834272 148428977 230381035 185601851 602856906 353814912 365142364 747118273 716396492 204914816 179549157 769717936 416140161 521125284 223636567 617716570 822387348 764572621 418048849 825797262 283093894 763256132 174509113 16208997 591877450 809529097 220454594 568481857 894247093 113220606 253948967 887156761 844374408 516796301 869759114 887215139 192815545 667677749 654157067 953502710 268797633 839692086 910090856 163375368 599351317 382956193 49930829 509483157 411522368 543164620 152193461 708526259 276405601 139334860 893952113 293866192 166902835 86554972 954084103 134578234 25777856 808939548 592577401 408048357 900079700 895991931 634748418 742914827 50341699 659253790 262605776 8056855 866677640 205236501 102832291 835151424 486137250 420562608 188608950 888394558 290557627 621877900 459827480 990632220 301353924 901147239 206569803 879003964 729197139 655637045 9796716 843272935 124967973 711679015 814558287 382450299 275953965 987289112 833119348 173654567 109847640 980693668 800525505 659006429 144974866 448572214 914134470 411426492 504268941 28801105 507220326 496117311 327783468 823147974 807981394 466426991 255502157 82524854 694159787 731643538 310993342 923309709 870441343 747120273 807403503 840742563 809074633 555390918 868856735 332471576 340447673 31296400 573788393 821910908 98418891 223145847 210997347 966493666 43562115 35380949 502465019 935731836 873717763 677355174 109113761 817798860 462863035 956010700 930149261 581677374 769777061 346846096 958657102 633177659 381731229 498072067 87463626 708263087 648400539 597073887 803991303 853415018 213225009 506086029 539436357 963697213 175991610 67062707 690231465 401136888 230924787 789853289 284140500 872473569 825921777 651281658 245720017 281802763 383782167 109748962 640487426 135216333 25497218 402459373 573723468 187363189 968993606 857540750 171367914 510623253 396562222 537887770 261669982 334283259 905177335 384260166 415553474 264420121 503671493 527731200 877691723 571996346 428379613 835198018 252113376 1990162 220864125 207812565 296848916 19752485 525399231 152878397 111661513 295652894 429900269 859617192 241886581 562945429 441762489 488233247 896105172 812266419 884465871 297547643 610241588 234677900 623133142 289022212 270818933 132338271 970768880 366469748 239141820 577143350 278867505 218163491 443011889 556343494 253170897 418860264 681895094 605553614 712171655 975037035 399462104 604867889 421935499 87240169 467026243 780529209 516830399 216450661 943755030 976157354 193689228 372582041 496116993 982891414 298348336 503647007 143919491 593975467 245788949 631688650 738382177 811130916 442733002 967088764 917233457 883941043 577836541 101535501 259576763 372617890 672627225 889779713 909757338 149998778 233253608 365413427 109622129 42772350 554756847 297989491 84946853 277840908 837314770 885787615 2001671 355123836 367915081 900325860 870058539 549389845 194082986 75852653 683366856 317203232 993064177 286008409 862490563 233078792 377295581 905537658 503621273 666211744 20480832 444204041 633917115 432765657 144272642 363182154 852300574 333185331 382777333 252282878 146309794 321971914 970002522 157189813 256771483 604176253 617848143 694394901 369765698 87207155 253676777 929752334 271894770 740507715 204465323 470158651 37305164 831486859 764400016 976398557 762593216 516612121 796326527 194969169 473826716 183361400 62702588 5568194 693174790 264714877 966626093 124241518 676626978 437907871 811893296 219779004 553925690 184429753 823782647 537949238 359977860 581890149 530265883 194585891 532848722 918539284 979611900 480914139 569502251 871319292 246140790 550787091 860787774 500868161 428161838 482724968 130187890 679363787 926742825 401259774 351609265 103606301 388672014 268424379 66076826 280537502 138694047 786456543 297724173 707666311 456097737 830133112 161052134 142200202 778057757 602628744 45547946 176622709 84443915 274917498 615473490 251220348 816014219 305676866 891868904 183568489 175799042 386543323 607683504 361446573 281275094 439425864 524288726 185170359 489183988 477009298 497205060 266750497 745730796 728229456 121800613 800888627 8309672 44513978 358789162 309937105 834626759 699270306 441781383 222638402 86129803 233366903 56417488 710119374 75198415 486324111 665854564 205211540 377442737 132946910 281636744 717943620 118874199 997845171 474240117 915658999 610632800 906562551 275332592 580538319 136246046 449158292 605007880 138219939 470642837 82162745 100763265 671664464 37210848 908642546 746033901 889000500 112859374 567812468 443271197 568214218 372201950 231912913 493410665 50333017 36182534 728995814 77779526 903407798 830134453 731488134 935325300 838482254 218939602 320179402 225701234 611444979 567525132 896606369 249315445 165675079 652830851 96647017 816792580 610519812 471512802 98388559 171569716 494843004 220282834 170205009 603518970 896738694 636167763 734345949 178570151 78050806 366055070 672924919 656437186 958254745 729147731 68733559 848200926 866571001 788105907 863873644 506631501 30984804 426076817 691973465 617833975 299310837 208266629 284925679 406118741 810274374 346292760 432303835 761031010 934330036 234926939 350852250 133013882 398746314 811088118 822440126 939436948 958717587 610501587 29108493 176970849 886578411 207437154 808359736 788668206 735353594 805534481 673590954 715434065 165531765 923624662 48264825 515093088 718723894 500227105 545571816 833538018 133696681 879177257 699023463 582071306 700602996 532615441 280895808 238141029 382827507 397747430 695035060 320102079 311459578 223790468 344755309 309988815 719713035 229290170 633763348 532109775 120241887 241754678 4673429 512255075 16665914 697186305 405359327 744462543 175951957 592552429 391451704 313916439 633994368 531528418 883903269 522034641 920517965 231782982 143355901 291983925 785848716 43582679 824907027 184031306 126079844 825955468 284996886 154493086 943037874 68011515 611336309 475127852 167115478 146969486 144444832 50494671 572651153 299674427 561608717 729082559 979087144 631385876 987481638 91828971 203953212 23294546 737860906 608681500 811772104 443133009 998701330 75078063 914761529 24096671 7961633 314544186 583685697 918159129 375365847 57236074 62689051 743478498 142038386 599529688 350407074 779000852 274898326 916311365 336637971 196664542 592913231 715444274 641340620 92715669 579932185 105767765 871122047 513722482 452161422 387729248 845563395 398044903 188849297 408178148 493283670 475760972 213447634 12938018 409681901 604245049 773826729 453434291 52799196 517579339 745796735 725353340 390034424 570463790 815530952 310487788 811490078 117172568 624368104 70456167 689797064 741856905 163546174 671302055 736083049 343369425 439626169 872405937 69017613 697221890 739854219 541579145 699495186 947454031 124921170 404831434 975395581 526993328 448556822 781849092 762987921 653637844 947602450 905374602 104393680 6329525 783904060 409205965 143900844 856809486 269247419 743376930 190357450 187464701 801786282 635873038 363730771 615992565 149146938 700130139 404976581 888048420 20392444 941799854 208449741 731350543 971945106 26737548 803273954 419521340 427727582 383648298 107463288 148166395 478385007 138963953 535944873 315940380 826054225 774029458 218172865 43607249 899434798 212536450 762270895 488292507 720813149 582238833 613879517 473449448 149484200 49046989 633495267 736318306 623724465 872454726 685549145 302556255 609795830 387565975 891450812 381134933 862065382 905216118 374499695 93713475 623373723 184627146 927563813 805395460 757047480 862887896 772835445 69431 794200554 240267888 350335212 617262446 740115171 442743989 530601784 828347128 41702296 490952723 5141882 165065404 252106531 195927431 334481432 531488094 704624114 631005358 669185353 305333844 485253000 676745655 60521230 320247980 657517105 649202795 480234194 186322119 403395956 495041710 331458574 592001699 268536350 324833101 876632129 307139019 311693697 603051111 446239416 686707257 985654322 456745251 220480160 20730678 376887898 564361356 98907745 704802530 15614851 986375378 536256669 57346095 127511096 940064920 112809930 335138054 691203944 900983660 296446914 201788022 451771351 143702120 894287289 580955890 520260131 81808536 471595685 873474732 329333983 665928666 941432790 505481882 51425715 402212898 940553894 798242368 316015519 601377399 978667570 904283009 970434444 5676015 384431067 186225167 883039201 8295062 577406451 429198408 643963081 836572994 339751480 158092832 697683516 917896302 766046428 833846567 654589251 201481543 842914406 443239761 824942387 251110287 521279872 532894648 889565029 71827920 508273511 525796495 759113794 44872158 307776108 638206463 814583963 188152359 886128002 506437367 797098450 168861677 917946346 598444724 395356733 861502528 370484173 126432999 834849231 978681490 906671417 90578357 14689043 62202097 201949176 350222011 254210883 823079522 226120137 873121717 553026741 336084292 14502996 353262041 43568963 812776126 198491202 353689893 286048668 64514415 511338985 738527087 16624647 6294982 538813264 266964875 82853908 445642117 765349313 830243779 793640297 19633145 241645172 167325237 254299630 305712019 70660968 742818715 311829330 802447057 615627776 779523220 387090199 952195422 778399613 805095589 498992846 823547198 728965191 511079311 886150379 116916602 920460074 472995306 867070644 525251539 730275846 643406385 102717062 748360174 19935824 387849349 628988710 122891465 318030803 747426698 993575698 388891013 72008150 243565172 528062435 863805014 473541796 370735705 390779455 451587633 114961075 694139710 267324375 962449092 331916318 42716811 188574964 912770665 363077994 956876224 360517973 572465017 202177028 458710779 163579883 655353342 21753894 502550543 628949600 631977161 440888337 738267619 269366466 521413606 78952864 114261123 139830496 559024894 595230556 359608600 869415760 817531953 298805111 164163766 651544722 569446344 779409130 674715310 583862668 272261297 323692963 873038258 994734807 544189182 327909786 42810447 242800945 675723976 711062202 953996805 716550214 71903879 936419241 934719144 681626976 204241602 589100129 686197648 313590483 375408981 502075296 484668497 931560513 772260414 124400493 229045407 899343028 573520493 158170302 870420123 813962901 204204530 505828832 194507499 195810345 456759910 683107646 586635761 704928724 182731902 98041764 462226686 70161927 976038181 23249942 887768799 391215420 603883334 587772889 549637883 917766603 68222165 534773643 849786384 482654853 621383603 388977897 614585241 402100342 737239492 465857346 641781030 536979712 6465581 598467172 96151596 796854805 244441072 654510638 498999342 691046928 98912366 27321800 982236820 657784977 742951242 793566175 58522001 330783962 704745076 609656830 10350916 611321101 215330181 387192946 163299319 126830960 970976732 409639867 847168816 890601172 99309341 10140397 372251122 679594933 492193268 856260212 439699734 755140943 963125026 762309039 909066236 157383645 368142859 106426060 431431575 489052968 150740115 640709402 626348904 78496209 762198840 596382860 563085772 554265141 818929001 653905438 527591377 558630927 737483814 610276489 973067196 187150283 774988964 31716769 73086948 214545989 680174256 607887940 186531856 683191168 783774880 172569608 969124237 748130666 722626329 59216633 993956922 588072683 324221436 461286302 161682306 813172089 693563343 593513258 963728272 509235451 831755463 699769934 456105854 160951115 214655218 600585211 555147121 564372878 987774245 271784574 644615060 129594806 576281685 175531473 44287133 860164578 455959079 61781178 687721642 103761827 685526103 313510268 286227418 921978787 495808202 669862300 322295041 340662202 298031630 463423043 424085872 376374421 614108002 943927300 216580889 174186908 128840809 472459286 621251771 171565770 417965501 667004190 783933726 955676039 100005747 704038512 680460622 728643219 926296363 332574138 482489220 532777892 742243334 448923976 363898014 623674883 445094221 333133496 805371002 140206056 19250272 568564553 267182646 235594000 876634944 511873205 186409177 281592016 744779886 664319738 65409329 587013008 459125194 378437926 678100511 413145666 690228848 375301552 242224338 503956138 855478825 146831614 750567952 851634631 9769206 888141217 666285278 799666500 950784168 332205188 792936197 563352525 338237804 834823603 277992096 273823965 39976609 286483792 160880150 781309330 835974465 544971577 787000040 21303371 352504024 33546879 424636189 784126580 541228517 477625034 700638988 791923748 875451669 335735763 678246305 90723699 469162549 148464996 713204009 774805354 30348566 601818894 863151394 322724749 457233712 77949316 485033453 298215232 3056283 590799611 22367341 75728601 114472202 157449429 622818227 465794867 414423962 501889400 395169991 556148614 166583363 929717085 886870072 733793340 928535673 487440840 972451549 691577420 493592422 845416595 892003723 909389825 51592189 314160714 211318462 22645832 488418249 12794165 488116007 575838811 86266066 543963387 344427846 444219229 91212292 696398217 847194553 708738349 200702769 605433419 579334948 155553329 460097026 88031134 626967615 693918593 47953839 349329325 191279734 864219208 749296214 328081906 591965767 992690080 90522198 555441084 872574327 644345089 137502891 308420915 901674513 244294323 596769095 999613529 780304045 858885374 441963346 881074352 46990949 147783936 281907838 558835474 902577602 340772067 141419161 428576337 62935427 910349212 326251047 789168088 784036938 524693604 533508927 852263707 397383049 937015807 381205793 243685516 731131177 522630177 697886254 804299945 148926370 792754846 342326273 688509702 434907293 161129630 663576244 253928755 428370091 228193807 430427704 83164878 748442405 9774306 684752974 354536720 972987991 792732923 132750767 120274990 8866807 611712106 470893407 570604977 802406112 819236602 55442856 80487819 630010274 206497412 670003667 660579804 23561757 788237009 750399452 28055184 113957425 688399769 879845361 495103695 559307854 647124011 247138531 286687041 296207757 73507119 697896767 896554410 733045673 692595999 533847184 597707917 278618779 725136552 568537931 610412452 172046694 272500985 467599821 157742376 782487045 515010079 495229777 784880314 184605609 444284420 487587549 607575253 946900642 914729386 285625077 339887576 285592639 900773039 275023504 748154019 437574549 479274312 659221192 312017070 79688213 639227894 525216081 823595810 827375356 522436254 447532789 202292163 936014568 363018675 22727364 661312966 747540818 486509657 6106533 271208698 773084804 201537967 564034981 614074462 46496671 81249605 873109083 543113593 959673070 567981297 48672576 811712763 228810362 139828072 427078692 615575775 755430912 634323166 589174591 86856571 245238781 674332015 47131043 753845447 657733456 767611792 12944018 786624980 229483631 816811451 78103515 391005448 705364583 855117352 826611088 550018484 997268297 620681854 251232911 325464506 822011383 741185303 407739702 786844959 408502747 398806000 248204435 977388031 869275736 906880385 642553377 926580721 940540992 642810411 14687180 253167175 766628774 961501566 415441954 468164784 173173363 206814230 803060966 235631286 361709459 529088897 213628426 66967934 593688156 747533843 860400280 316555609 662729013 254039952 679489913 678650550 35912769 78480134 353086662 633342688 414399565 121405437 831687339 291439003 41522867 526595882 105260473 49857000 391923582 653965132 752404232 870965793 623467876 39435659 71512215 672393841 744158652 776937398 247137275 458557488 57162151 260864533 852173195 785489205 481735858 915859588 627843748 765627695 338863407 619917375 14836471 9408592 314353683 571229298 746123044 758844557 175940901 573880706 137904968 147834096 365517927 329162575 866013311 107208252 609185138 338458350 919367100 960532369 257394203 247156417 224277119 648358980 941476959 238652770 662488096 964875049 991502162 181900606 217274950 399567428 539266628 853367368 292075330 937588956 42606710 606357161 478547294 3174248 105259351 218715710 933750255 161965306 510075611 405898967 265525035 698746692 657669215 789652869 159638975 852567954 777081036 150256060 16136710 47544418 415162867 755692401 838075112 810281261 172702175 861592054 535883240 923821711 527048788 453869025 501652567 860803726 349602391 654242738 104033959 934267059 899465925 853493298 950514795 192583343 876150545 522553337 350931408 560459074 460278472 890804684 668024428 290596215 438935326 797338327 567707298 437104442 33239417 889005056 50723726 314643881 460496447 526764691 193508399 40146121 809897686 961313391 150003968 950611965 245852271 239357169 66486200 551589423 772063263 723991677 265425096 618717501 884719544 794450981 922968978 448972282 636777917 799755034 715330885 337946394 52567916 61225614 656580769 824771654 616480945 591026492 462409154 965292621 57170238 187482298 86708782 21163579 55722508 87391686 525479639 943448202 178171651 964634855 276467388 909263238 55589267 309189921 317030573 535107133 29985115 970413415 844922455 678972435 625971718 959316928 58048349 148288495 320910384 574894557 453381304 142081116 120351880 741685047 716332041 574986748 627172998 184850809 672638568 401240833 23570308 63400848 701358568 475497550 498202906 564176423 748285514 919795508 537622873 671547646 260460541 743497248 60314969 878836999 366858344 239781669 107276965 584469253 526560286 532878461 440295304 947295748 772773616 248269152 554229529 954381338 979076454 362301350 869536232 223626161 441341109 502783393 636388821 347204506 897241229 263277930 314857414 307341699 265088701 4839818 286986814 506776086 606870469 574526676 685500573 465059696 857696505 957232827 209591096 850449835 401985563 581871161 123455770 513924155 648451886 489691458 974239110 574202599 329507095 637200962 851390630 985147222 342220605 584828491 388379001 4403845 853868662 585418208 404140738 698868636 691377875 27451528 549879526 794324246 973625928 858943536 21174440 818205687 281027106 225567109 627263521 970981058 5130891 653542825 824114609 840451899 689788547 259687534 66465045 763908867 19417240 404059958 295817841 6357065 770548918 629893997 869126819 513663745 270986043 968886543 489875696 83477001 56496664 521211320 114043523 356859410 432329747 591217480 797509629 102176891 766207146 8975693 576797710 460109932 692498215 379435906 475049453 253094226 774500989 443592574 848365686 102046745 816301207 592881974 140538908 514604085 67249602 76971141 924857326 426121224 277938603 321738493 782781369 708884084 660875293 27063719 519565470 317545808 91566248 560493865 545237833 471878052 827806231 698071960 193218470 79771900 442685030 611285659 901340846 373274962 621079420 403342910 427053684 510140669 59449031 883483527 995199974 200378599 844425660 817421720 854003124 346435223 252597312 778766582 898765626 894456653 583561867 300371157 976460229 275628581 586489555 320440929 543679763 355010335 306911051 135138086 119321479 236885252 671409569 969618463 644562456 933859482 522560817 375212228 651790397 104282282 188363302 605275422 121903576 512636715 654446109 68877389 436910702 88069216 595503493 988484746 329228019 214176537 101657337 910330117 819791168 108227254 642674419 196866880 700859668 385774176 598750268 814416753 342239357 897668305 282095580 990589887 859364370 540695482 164498481 480280715 549645368 152962672 568906601 172929430 624975891 580123290 417423140 586667308 231033454 301467550 847723112 674852909 566997508 960340306 329589583 426238159 802023231 885867957 308711801 500386776 573652050 303906604 454316226 453450102 699468074 906610757 74612398 291157479 509504875 542614592 738911639 191591388 212490896 108115618 350730427 321616444 406144562 468717082 276677124 983720678 376132336 301392632 75407530 983389098 742341158 30349696 556527319 254708803 342514127 549825292 969179453 824781742 139214053 293850223 928313414 901489720 432157374 639045503 627915836 537757914 128964579 750559344 237171494 930001756 916129443 202392759 762894373 130462127 951886749 269133760 328599227 1306432 367016125 721353865 677115336 785793299 274531301 464471503 581994876 629782611 203076574 34904081 978907575 733167901 303666881 488740420 3333488 707187582 582249264 534148668 189025202 13296461 219616934 547406663 843717281 452618100 155034696 507086552 633968641 647036703 360093678 607910263 794140684 713977177 631135317 608372492 332663038 287837602 769187410 500517867 255779058 381127890 733725515 897972091 334512597 350674191 156550918 596580138 213019572 231048217 830434256 711803360 621776666 476859290 374789535 835405719 343004921 348190449 978198192 845973407 825420261 759129256 482368384 40004094 187699960 698761454 811296476 734811718 698639764 462742676 32865645 970954300 610588133 646485869 606252863 760452734 794098487 130065970 868622678 760598536 375704582 698560522 807120857 458186405 262071164 419257056 677180591 704250809 273744815 243875332 346334077 124622688 123260307 619874476 636645711 722746112 364568850 387462912 636683829 156956661 245428831 263070391 551426976 950306658 628040532 910600999 785451672 331313446 569628046 344786647 565364091 382652051 178505707 660040930 876225076 931402835 730128066 243822632 335785424 249738633 832143066 274933439 763138786 940636812 600069171 476260305 570811335 56336130 307424145 862167644 349547770 567785806 788883566 553986160 794526102 115620688 6719702 77974453 243756210 910136777 401394649 980496386 505033408 654844329 630254029 960240464 605740536 54535235 540640937 908863223 918466348 261835931 95737194 246432532 385590100 7796703 887286735 874747908 532880074 694536016 193271436 526239513 549297853 601930513 970851382 654464790 257812672 596135122 569115371 865854163 473192744 151433682 887218896 926358405 49407366 29336285 879003651 786993839 436146387 270079929 789115280 880305797 932221918 965010539 305494727 822927189 57176128 3216269 161524994 820444202 176262780 611430680 63740874 258303305 27907503 552509912 463858733 376033279 859958928 819508209 119237390 997888290 229846839 297687966 318716324 655771995 883822593 920273885 405241372 695083691 174162826 546057602 949924128 518992775 910902273 636923314 737669180 844558783 955567553 392374433 757767289 282708481 130004931 682503255 45739409 35241965 891900481 613505553 177190146 702547217 306174950 327976514 614208942 583419378 568162941 372517280 679473054 513950187 610460433 420948806 19145362 234598640 611371766 148301147 77610805 761679103 420273685 546798021 960965976 975266419 521771850 954126465 296824075 544475742 968524349 594202890 415492261 389241656 273966574 766025424 998597526 817796414 592555573 361027460 606894018 249428759 449259030 870684072 232241475 952096446 931790281 79107168 389123732 270928893 847402495 427821719 361030448 806469954 786463467 483291717 97050244 767054508 42798806 135551010 306459149 521247022 251730017 913733040 944344788 45307775 318306949 860282916 912189247 905646438 201853625 554589943 730845836 21729186 957620028 93824386 414424922 189162659 460978292 962563093 769191603 987587462 905849704 119906300 932432266 957907620 634055227 640339489 683954238 509566285 411119796 540599056 214346431 458506228 680989926 64107892 685981459 379543839 896376766 349539019 244587297 56536992 351877704 217472485 438751120 66008892 152057784 554341237 984620865 77763966 800337740 272166600 323676033 678584019 122536268 683848429 703035354 340171791 348113196 162360844 2706072 247185293 89597759 962504589 128677615 88657843 766330526 868575083 414683282 297605620 685479294 384395671 168520967 247024363 515668805 485050596 545997029 285376976 538278877 161720282 555702389 686261395 702442696 632893047 854332840 838484731 905228396 188588276 996774773 555621533 753731383 982880455 510864436 442843296 1756473 854812598 320829450 827417585 926395988 959085580 708309913 943754499 554498640 707719514 32100745 662564786 351108712 405392196 318071746 363947868 146108991 747267429 891260449 747873859 745587738 257182491 573249994 427240948 498765020 752944307 124504145 91934604 337437497 476059865 115193534 482612127 829590426 271618246 173187682 528021494 182503682 44061035 417955569 429629823 777258838 613042902 582174161 804086968 149057811 830167863 646965958 494176767 139153710 291063349 858957005 701691077 516443437 984042347 364710223 185909681 25893276 738733702 474389165 234889729 753452101 273135641 567536597 466790182 862723628 2950534 635480570 664355500 322126015 859471628 358645755 997483810 286229036 503868015 497786307 674797650 944592788 399169438 644706361 962773624 690984994 886367285 153168559 580086047 698282942 879789366 876774982 337803399 153818154 994427897 193416728 455609390 484490097 718272185 831841091 505879286 98074531 853788223 697872605 279078349 493751654 846730849 648167500 878742389 789335612 833440178 817018670 130250418 889326289 177013385 301106092 516265461 491743642 973537412 707795124 625675821 664755382 756127525 922183831 364045895 706492066 720244922 570751424 290793559 573845944 95769012 123757057 801449959 427255927 887187892 554036980 489613083 800921093 294002204 762226897 424619684 793060032 417473191 572203314 821620078 477564448 420598578 599770722 447555476 162496994 643821473 878147961 577031196 95732841 428543235 52489941 668377085 458509271 646671259 462210380 149371079 945045453 878208764 736185207 779252069 146426602 51444645 964046650 191769956 675195591 793508101 760131053 923629251 959498271 154406394 493456817 684830262 810957543 183230176 434852386 571111971 636980173 552931395 263151255 843791233 972592021 753938997 961530611 955271469 916311498 613986390 319408948 414529818 110281552 221683456 878305353 57070104 129984115 505933520 721778938 31624049 579197856 987729554 589502333 526874344 356945574 152030707 329593313 934818419 780386498 236282768 139371416 382245976 584085036 116180940 830782892 937959773 403039197 120077432 602316086 796858336 14044716 781332979 949658709 529934058 83951291 712002649 695210065 470812449 381982039 375299575 474930689 44537238 608259706 553470759 44866745 554881977 895424800 638623163 139840165 181558308 824361978 541663662 412413430 398017402 324365551 522549796 144135209 319391255 83359797 912649865 346660560 601168521 818776129 79781335 763181268 834538297 939646699 387416354 472324607 99191261 848492067 532682642 93227899 242281708 889432676 297271041 922000462 893015998 434633934 88367006 48933233 130476107 398357648 86645357 129064513 808302438 189713610 214848346 583664915 244581217 427054572 64294062 402933262 126097557 614103209 40037533 527598474 341118520 858394112 994767851 366842495 322970211 684518722 924358821 764821601 324623992 369086051 475798514 692314086 886899966 847437146 848135914 861314920 867768959 812615833 987452697 978102140 990367265 868684108 751498293 900897267 209422219 935372331 361808613 231367305 574120259 287090965 548455117 98750545 431402589 419419271 398354074 366885145 364921429 690405725 962313207 659358313 914518891 127625810 317657240 864254913 122707309 353651690 447024981 512502481 258104213 905765801 966479038 270287735 425049498 596205407 279146890 810377530 756160098 792787609 790523484 780549125 264989900 743026705 602470190 587489935 416468380 670418057 241349791 502162433 424335244 233460065 661102276 79617000 704452072 430219850 927922105 521423714 894159092 636615328 566416099 24888094 798289066 664295681 60722797 648050814 129163909 668187778 619286391 405960354 157342514 177753510 552700556 531411640 729736733 457100327 73191056 792941736 837506399 279759436 867037807 180649652 691339204 918341881 89751711 203300037 452389313 644985351 599085605 138885974 639480402 101643222 169572163 668190234 111095744 928507641 950859757 496216054 391126310 797130276 402063592 316675789 670966627 401635347 117642633 665825813 841733085 182477645 645819819 290845220 738717211 29445030 34875446 929591917 276368400 416674372 33407145 157789718 603214222 626197376 933661951 930972925 201819171 261642730 142863770 849414234 357781257 475437334 474156108 183282952 191921094 773996684 681831996 916930355 490421143 359097418 922933388 755630793 234929432 985759051 688648896 817649681 267487456 642376191 797379861 453338717 720424556 693367027 607542443 198942810 987934136 534203341 576267617 639955928 387921125 388208618 141638449 763669190 712146365 778527415 269037241 566140341 96826033 840109866 795546333 458920963 472738289 249784787 732762627 143504545 24874840 178909855 709173163 273027098 351855827 738749006 258423615 186863944 840575942 413472854 13380362 589129003 206544553 736813335 432376904 438108000 90255526 80685810 602009850 442107311 701681276 890757026 829053720 295667348 452325968 104725794 697730952 519822005 402386902 261692805 970893272 316024523 994391460 585960222 882064292 23053598 439854032 792739926 407345592 613255909 787194083 650434755 173553675 59678759 585186389 525706566 46544832 98389505 326144139 722182910 709925352 426175239 32105754 42246665 214414564 661861661 651505105 783248792 933395555 422326370 923623088 819226334 259312168 216662895 930558451 337447443 728373310 879924236 233608882 657037793 84302298 652090349 812270609 527338112 607944377 425017168 769371555 528639270 807379620 839937983 883812837 853942556 16781410 28014466 52215458 438554490 601891371 360836729 105688402 313555153 63380811 100033525 181345678 545884648 180665859 542323533 512115935 159389046 275736120 506286305 282893229 785840278 927267441 488370326 275883135 190613625 200716455 887040986 889719037 585551233 311921716 618246090 112369626 901147340 390995435 151090223 670047585 949988676 360497867 363822915 264906917 264423029 363630310 690689001 964404804 268878386 657509109 687723334 630692902 788520642 612483389 616662451 175924485 56837671 824160529 221656157 234006475 69936196 597864313 702374878 470486320 378374678 425299395 670247275 182223767 728194671 909755222 383818604 129228177 311106942 490151829 517204980 343489660 485283182 251539859 948200780 240992221 812467947 350887387 565064560 745292394 9801317 887142964 753497456 903809057 399212811 270944331 705453219 290629742 712952648 887155540 147104221 865039326 11975047 807545183 72525770 315083705 350810973 66645012 682318551 879350055 95317754 377469431 151675460 576789051 399259069 573264223 808439203 932039090 562471428 717904447 288768633 361831727 854349327 49296591 285515246 803195906 142936255 171226106 907358940 932823414 595312967 524197471 685158162 555553350 710722586 934364109 625048193 226732281 239559211 88995938 134079645 747823915 10761594 106488027 412338879 99676185 782404352 571440925 685048789 148904232 494079131 693963347 531630480 361462775 578384976 114400482 279310392 441760710 664037866 665320962 760251706 177730002 294101550 278544544 426373691 254050468 62755888 461770574 731557369 741792751 467176984 799924006 225123471 417582447 854800762 92074572 873596411 535819987 890405673 945929584 255148463 9693799 654832905 200704903 262733450 377665439 286243899 358659467 882656188 963326004 727350121 611351115 103186397 750528399 206837850 331168050 802912061 389838970 910661590 211914242 253441025 656940035 997381141 369274357 612799236 833164376 485978554 744967979 760058622 833535021 26452626 957408945 762270450 267046477 17973297 136464672 618269253 313422777 287640596 987196765 808247468 140514029 101898307 716003299 822228456 439264538 603781401 897500499 607825567 974132128 944034393 920900418 469987548 40090628 405162547 728556748 916469561 395728388 29009656 937313176 526842605 18802700 90366102 518620891 603594875 211373861 173372469 641191475 684265404 592486800 395181656 581710625 577326502 145020388 748350647 545404848 631458641 262526170 5110380 613854089 424433401 456346875 287682533 397384824 759948378 393230095 627157818 598495419 26731406 529921811 741821137 395969864 241868898 277639247 790075262 770168283 822131951 679363510 458458277 829252184 242587450 906715103 10795158 641448585 298060471 689139566 907194117 718148005 242315802 13109702 121499697 962525195 38456170 169107704 128505816 888257125 444798795 505833847 859312899 775736437 705631544 969033452 700329657 339724897 338357832 990875065 776508612 643571805 672491033 945905956 24146772 499601272 421927694 39298642 717930110 872579155 87026635 980893057 658886566 239674856 795490205 687666140 225373356 648784488 943153192 567280246 796794395 633812334 544116952 230421623 134925210 232619932 600441025 818444847 962415359 914718790 564638085 62044998 665048229 748281367 642138395 912093119 26275372 253305680 194932344 538694409 948098382 147830194 694336793 716605117 337227082 630123786 695769358 11935193 256570958 648005564 821228143 829842371 545845254 142251760 91139298 793112850 432521475 159840708 852062664 902427180 713650171 418037067 565189410 92127016 400718791 232680964 702119955 658266711 851650806 799576943 591193669 246001825 417639163 346529527 883329080 859247118 802938201 790257044 339009185 50122444 995941256 236129728 675352107 328287608 54821485 575163305 807864843 150665350 701269626 523772827 778055770 991809474 462099741 809823856 77637943 180533445 377635298 995317984 873388901 966219314 895269932 58339494 295052596 148478658 409236477 878345100 674251971 256061257 741159032 868790828 76745568 502536020 429653008 392556025 724819267 296271588 829754076 844976915 304373013 892737709 935893637 874960728 476676969 679659221 190851110 324892597 951498367 314872732 233373600 398989607 524527019 957335261 261395122 224707522 310891649 958795421 225795224 132755212 24191059 828495206 579082787 825891286 497848053 598754914 558517176 153359062 879498316 324505114 566988924 157628480 811543049 268367854 509180061 969357950 828475495 643599443 11750579 440073242 735352078 249255181 599257038 49393515 247926799 860984394 237050535 182075493 544878284 423013997 359624852 159529499 342656340 647705429 126549365 680015730 454654635 122284005 142750780 218131810 716616997 210014635 798208257 647594868 588909678 395548849 463585760 342542507 867595102 887232804 159210127 270849720 291896618 685397500 326982573 119075719 103712521 45065641 874492952 472719516 708561443 736188954 352082024 694295022 461043410 513453430 263724760 25855266 116986843 531487326 704855552 884588408 556135866 951634232 696897208 135548759 486307671 996322103 874101246 246714042 296390517 642345874 458018015 859702392 985723878 135538091 949401951 400125816 896637968 481038151 152145815 435689998 185781821 39030338 136405818 499303648 149706911 134227754 309682511 359071028 308629442 970644249 257523783 858286387 65465732 235747106 641901775 640589129 421127427 305682785 147866432 276776371 414215517 352918785 175967522 571366768 593018777 151385023 620438932 666669581 290735807 519320863 523787275 116728062 945237023 62897536 571923144 359137255 829368399 772612590 142189451 988062431 475013160 622234159 872407493 828217427 879400231 379921279 938069845 727048694 504192717 763962801 469539211 896613447 348703406 846088311 130406 364033872 881787806 786007141 857417972 831997946 948525087 765543906 297732207 194818432 85754704 837654461 150080572 629762298 650076390 802937330 884890250 550397327 115402673 29935533 554528998 342054626 754943007 129304220 533950319 331729463 857016895 49283720 219990301 778160281 787583902 481592906 954306921 809581529 558950856 225338742 594538928 588969633 933757896 759783865 710806636 89023186 83068192 115533227 976538399 524169027 276779271 575981966 731146798 82627270 162876650 884350247 85470883 763831200 49444205 826046594 66939725 142405856 420230288 170835541 791357231 25904265 495685706 148347411 528725180 805249252 702916928 722690215 596568774 178652295 404087018 23513590 663161113 743250059 803558631 27386919 356992261 342185015 629168480 321106059 413094287 314652342 190860170 316692139 722050256 438945667 452783222 269168529 150540221 643366048 552258304 152595821 167968871 659626492 476436303 663851135 791814989 550785203 252766143 174109875 137381080 564348376 835933734 17444061 336790800 14922800 857503159 621174411 690014267 333931559 157327212 984399663 37119935 863489679 273953197 136279483 425632414 80142111 217277568 253832303 9034058 966449538 211168257 830312033 697698601 80200351 189365995 840893602 981775405 460618842 305362992 637120938 332059968 868375464 287105323 892074679 63322529 930061498 653431624 537395788 790216072 33839529 551970399 375376681 565652823 803347088 34433571 639442510 163920538 105848207 121647830 943679410 857265773 449892490 148560522 936428190 978335675 210930386 317732803 731932247 72807190 48212778 771256839 734034811 199262004 229122030 993460872 291452686 560745498 392268190 59952922 481603619 403438677 893879845 971443875 497151669 978516152 675085963 654889255 628778391 244637848 736481634 661666308 539377305 142389040 912788187 762294401 42721587 688997085 557525459 410867947 313847534 180963227 106650752 423544020 72334305 573678723 571513419 384550079 878436029 200591558 17863918 780444213 757879471 922028952 939855284 559992805 882494804 241152544 487340764 567272606 572638198 608942713 220857752 89540646 916982293 948455456 326506658 287564542 843268865 939773577 236232576 941893007 737904816 309608267 746280758 348328753 315172929 404998178 207440370 736722235 416551369 550716656 145473228 462034835 375328261 541547490 652664100 440217621 293231841 855198528 386407444 308972691 175365533 813015376 647866940 414183928 299518745 17666872 868318068 629553204 263051042 47038071 705772213 844505747 604892484 122947030 110141227 876230655 899595451 989928664 923838514 529802611 300818728 463900065 571586458 242338054 7858797 129761349 214409957 636797306 700789158 453814077 870560801 412031307 562083965 423527427 530237505 678774971 337211533 492952663 873288751 734599471 295736048 911518259 761590935 648093243 50857651 756078377 241041036 310232069 26937750 536798123 211516913 516328248 32046633 184393435 482406974 633715906 670201103 50083055 331687062 274048456 746015126 540276411 574674285 169838671 15075996 314636481 57664477 69632040 967627907 324284024 78597803 480417523 84847302 159613938 532506969 176659356 288228373 583502184 887391715 144418214 936559510 980551159 383071945 440250390 712951920 769349935 46059803 300408371 626238069 923487966 643448117 126367919 487825224 823707396 971108932 609494494 485023621 175779336 744799375 36414200 458726995 856300483 30558583 189437307 19128072 198409280 415758326 226433439 998871319 769793478 577999181 952878435 528729814 219319881 355326663 399741348 197375972 695037747 310968075 786636452 117635690 166683441 707337677 367283023 483341437 61110527 173289687 551937724 206338614 797320830 234821860 793691753 31305220 869177432 614654440 710054881 328015109 198275697 856445099 684797731 221215879 769997676 583786113 770195052 744446723 36154565 947962364 762165707 927704964 174507063 558881225 587103289 730749635 464066571 758133673 164186734 54000120 424342252 547352383 350155044 199983983 173389240 855652794 312901488 324324050 677007859 109438540 139765126 481252153 889887887 902409613 83265909 581276962 337611631 739141733 313812913 546609988 727827701 115781634 159931219 466540189 696832898 488686428 115505991 154697840 875864954 341515571 509966397 872439261 505249552 138448462 459734246 634561406 983299875 590158339 506213419 695977792 237762500 536744386 820379858 508560795 389281862 492650742 341640217 934117141 833925595 988083801 914060656 382042747 623217286 504002093 323880173 52500055 844372973 259895285 471297637 440760608 566301556 431120533 235421144 810459032 218653079 299578693 768353909 127930997 282213970 100864589 127325500 828190460 991769800 261049441 745308814 411274388 257019280 345438797 60616351 631006719 185904624 868188177 408276837 22735763 861522907 862083195 210285354 289225083 867977644 288959649 531880210 279367738 988419292 63998228 920580426 991021133 494638609 582280557 47470534 71299067 300622095 516284225 904404437 518227800 477177260 34810153 499452817 131146834 405811930 418538496 337803839 931024923 305815480 230477761 798188113 537695973 133574854 483246052 503970209 242410347 869567262 90635806 751817421 411802370 552755370 441270418 947620614 510662549 592043255 338928300 515749026 824117068 326770052 745703779 727035255 424549509 121511952 654008193 411105619 582529473 579787178 549185720 485382132 905849300 441994550 223128952 453565928 336803682 356446135 347398554 306440376 614521621 681818431 564771237 497293462 623999588 477260261 155688822 311973784 23405555 83132769 961591810 274750097 547088697 771099129 917774480 815294472 497639508 789073839 710283765 509571067 658239229 385248410 163839394 521939464 102995512 200911616 833620496 919142930 972512931 601368214 576951402 196768511 946704196 278417882 149240700 974698845 25092256 221929771 700645981 477860485 231367715 987991740 804946119 898145050 323597892 515513211 548618947 198991390 417237531 909693389 408757536 532015722 613245823 545281017 368516408 71049749 56969564 797337285 546889954 277015931 182388314 735558220 425921982 221162885 362368027 756114285 579593227 999777958 483205578 658597779 878280718 97808424 937880802 311367370 474192654 966119151 846577508 625191562 649758952 34222724 590044835 248797377 6659470 819463432 665865424 310855139 998316044 707902382 894536067 319190869 484231486 367047915 255353267 278970390 479316290 49265610 833370595 907979650 661311213 291520516 62040809 692543475 112444657 151021192 170957376 862467299 288858653 440750579 557140568 870777898 849965805 435986736 997157966 585365437 33088087 430212453 245321168 717951741 110199706 534857330 532861898 157088880 52026367 619210893 177129289 558603235 169805154 854191589 256446463 341708709 485625916 995249782 129218161 592997220 48537585 807082446 864208510 966674184 578383005 600853925 854853684 760385977 467770861 373597169 55463513 736693890 547377967 457356036 9818819 811834832 194558540 648776291 327446076 732225507 219397889 515439827 369906670 201580648 873102796 462138369 589602191 289348339 440194227 6115150 406481121 415484152 526493357 539431430 996680164 174778650 903157430 710237706 325378245 642868788 882253635 540170383 61641183 718088133 224012169 762727112 553097066 849972948 576683349 545215392 251148860 714687975 334158659 721819945 845881108 673502022 775944662 381902552 414977255 521853691 724141993 905719784 503721715 914361487 116381078 3701571 277015523 285152123 432923946 371771345 49897063 835351832 296236373 338777518 781835425 345070372 950644495 120399351 276685903 789498893 830241088 647022990 964002732 300441585 947722824 738837667 978332330 221033782 89889770 899478354 280144132 597890717 825986452 798932581 943120739 901236706 673821843 794220012 724574525 344096904 297308034 486890221 292568654 807883200 471201037 129538593 224687637 900052911 127644724 358444005 21828940 466697172 991833402 284064781 137165076 981893276 15855743 312471356 595413150 295425685 596395561 850915176 52223451 411393631 691344003 196110453 153513767 611904087 481193061 336702049 177330167 528151518 90296883 828117317 238994843 776971347 298637496 836198919 553313016 501687641 653922856 495353559 684918725 934387837 891716288 938395287 521532295 660067979 337197589 576517769 596285461 902788574 31281496 414839993 841421021 157123268 556166636 704835492 8893379 826209800 831386336 475055992 643183510 562407839 683407444 125298512 611432231 404188097 575151050 450332432 2382965 159322853 210551954 533166356 409680741 933645866 411567346 372606253 807064842 435320025 199381860 530316196 205850268 671078549 499828128 238141509 835814713 482599782 227680301 911504093 766186193 644160407 264123456 775397833 89820347 872437283 130080247 694151571 167135568 156697975 174059521 993642364 509990388 77322501 917480665 266934217 466817287 963008988 646259948 362233211 237141107 443452445 984040321 110815293 131927772 429712738 256455912 87606373 849324432 642546896 849551962 602517316 190986938 389669603 789769717 785907684 900493046 641256074 376369544 665742630 876666634 242971518 866824066 470914086 719967211 471833351 535759900 289595185 730382178 376286455 370923183 993443290 741124350 334605239 522349924 776521900 829974545 548373519 202120574 727733487 300466413 903864711 178970415 267446644 612366301 14929158 757364038 309571191 534672681 173743454 144175842 345447829 717712493 614974037 241718370 974605555 16136870 518102784 144743755 385337418 591969558 777803290 795583999 120913591 220456774 81102073 649560882 880549977 767715246 237748298 93795345 828380771 417955844 861909819 609129554 615521316 830580856 594520029 52512957 944195034 707074747 406031819 976942073 750209317 111125078 298742588 705479351 858933404 555836034 19066462 683489917 31356195 692559107 322756359 733578572 725699874 762593210 71845157 549713116 700584922 308606748 750071298 911858027 448259925 236592791 232813344 509633417 719144696 691585375 747651059 943180837 478099347 537555465 608166074 139851221 937784208 529361064 702167354 52448925 108300571 449146269 29268373 794052318 627810022 610920787 584424564 596525805 423648346 594706821 615764377 628793787 350533717 522899145 300146845 951471156 104740833 417446879 789989 8100028 175410789 757679042 727519052 366752306 547241929 994176855 73076507 558081102 344401719 615977405 548375955 915941771 916056192 859624755 846437066 749385498 835081555 484319241 162124033 882628354 415925099 898225590 415979300 270929148 857451414 297604874 181229329 381611986 343040003 318745939 338488911 263045653 12905977 369513469 837649762 534680924 461652852 779459300 977494652 355881239 779769603 636866901 510936669 65716541 761247365 396268851 567860724 70262261 862849262 988514859 440508320 543638898 901240104 590306393 184763605 582179973 710335515 826564786 179744069 356480186 632796073 322648777 704107011 66070431 543091983 268970183 601907053 348205054 898542610 656257723 92776842 50887690 709643503 703361350 250907619 117907178 605143492 593750252 467609416 725683432 790599010 795612142 10848406 10966363 895908533 178418186 204208034 829741079 257392446 387238512 620428591 697746105 29672932 179714252 70634946 54744664 297472980 612896170 555393690 19995977 899493584 441280872 920858664 637124226 911349126 486125671 331044664 492851487 857653655 700337337 248894475 585920166 350626977 255232409 734414853 811265163 463283012 388936212 248702791 279162603 688067972 374854349 758554351 65365327 208117071 73412931 574398227 295623947 446095668 901389393 707362419 315249924 588380185 809203811 129734016 969932452 732049611 210285043 552689720 534598591 350226470 600404401 450419531 436142898 390601046 433495962 709835312 865106739 949399962 455784320 264631324 906481624 56201905 752871252 120697653 148396858 554588722 302908183 726503751 933259234 571463071 955402628 186134521 559206904 778239085 392446987 255182465 442425259 273532039 871139346 185184800 240818932 759260403 4213388 547269413 833277086 788496973 106385133 64942463 358040946 407270302 957934499 844667190 755037199 700413381 580369416 50725919 614096034 734495417 680729859 96635612 379547343 448814800 26490997 631422875 835373173 413892317 140652982 603367012 749048902 313249292 876553577 169971084 802792323 507237062 555669881 69288433 952464089 207282491 330283865 207642324 135993221 815154902 912020752 894725029 762494424 617377046 975122772 928854676 128757293 8913663 789715876 209121929 422964138 984677139 679595391 245730793 691898060 896910289 741825215 178727407 51210368 553238706 415111747 136191284 290021804 626905133 153136186 278268732 703564272 314332994 975434165 31194475 219599109 63269863 192565461 89839322 716795830 748344132 848902606 999962879 445885725 204018523 640623489 676328088 434316985 728876588 212283905 617450924 651461099 821763346 637155901 519684286 382205877 942976115 413732168 644277984 507890378 870897239 66402964 355336304 693084273 766878904 22346541 799909419 57078272 725790230 276441492 365770836 753428701 621190145 646264695 607241654 580752585 610457713 69581594 891270935 222780960 572122955 863644699 234609305 838214241 338127715 603556522 147913233 636454931 266389048 993645238 635186691 725732556 696554655 291081024 162826099 365560198 335888446 135295662 113022186 70206790 314689375 486423290 781141344 339761295 967075549 846284561 898175149 66490980 406569311 409191614 812405327 830657425 475961128 635824095 967148623 367517122 573159482 723523467 359177362 286740714 868301632 177867445 536720459 388738001 885315513 231294337 543713565 166336347 35163657 818350762 126998944 559797525 290438904 624791942 962379782 977246463 822686204 379583770 820502635 851166476 147611202 491042365 812083737 505857029 674396651 266904814 277712206 106426184 429602883 523597144 12192979 683394881 988069668 738074687 36767475 763812504 778997543 144851308 430635428 447304708 591842508 975925893 171332631 157251928 250504784 825251412 145212176 438275670 931975965 458174227 165057022 572640039 519090680 573543273 256554541 220762230 470770797 852532277 683376094 342082404 922803105 192387035 462864370 370689229 444240492 662140569 459165551 312463018 615648967 976176400 186786199 807532297 493357290 775286670 562567272 697033444 859487188 273098815 822782429 509901993 75349393 168003929 78752673 312742349 917133145 337932356 658767927 292683464 154069814 448863699 702251207 766006223 657886923 494513343 270615932 634325580 160801968 192100175 784291433 433277749 469316160 436457434 977711165 546865724 97274985 749492897 817731090 558377365 199567816 282075915 484056331 512131240 449872264 708893118 960299390 479981297 6300390 538384657 254328961 522465071 696009900 364166344 419609143 445061675 25238249 434386240 573496350 24999337 35529510 73265424 391506278 994194277 314438715 934425053 953263730 455300138 824489175 671527152 746213116 810338207 145999607 867587038 117693438 718510140 543703814 832130932 61402367 70228098 430222263 409760382 370058957 924448428 497330711 530320863 562356329 720617115 660851623 520843736 762123127 47707078 993494474 398709786 441688529 93269666 565892067 330687582 185977100 577696551 244870177 118845284 262198228 945152952 555261204 335499482 858508718 110094992 692107088 111109194 267574318 598385561 146101470 943712281 127513494 437386065 384619867 784299943 92602347 720169856 635836365 221531201 163949489 388529392 522190094 205355112 748927756 376605033 247497449 584891727 732041531 254584697 195491172 48930330 836147738 939838612 310636333 947493478 876610076 619478551 611417736 609879524 285479873 178617063 958710447 390157864 168832317 207931962 639607484 389233975 87562833 552023972 653298002 912386058 490960454 363206597 366638818 868119943 277047778 923591292 219184089 409722075 697778679 152431760 660492696 46293222 923821620 380739402 697828606 762175676 937633275 886206002 476333063 101685290 555589459 899637565 1679446 149715928 656730623 286543948 503073036 648439941 47229682 958973976 506532709 633351279 595341773 873615931 803732989 150123282 566917561 490294558 850213624 689744551 870865074 14633597 580036270 494036634 114633361 352101131 957214008 825079384 852752026 15877934 801865855 403253906 242993981 473649015 770032824 542690524 661339944 858324742 302498413 855619828 82961980 712381977 545559075 707013137 213023078 713558594 290859393 297024889 661853407 873214376 22185967 655482063 537267993 873893230 239073707 918403071 339792877 336240143 341488963 286053797 95597561 748826257 647267274 240802732 320047138 628638356 247193781 357152205 418782020 149965885 880639053 320909631 642847081 301280798 644057147 176811744 771354527 229705085 209799108 476231549 597133043 699120524 826085282 319810694 428241836 932996374 223057327 84685439 63393718 223134092 30574353 907523166 710197043 654608579 694360827 607063712 388285185 289061202 853489377 769247 20114118 925088570 920977723 721628518 579546797 957283500 31740852 265391754 795389279 871673109 864373601 396570101 416912696 348680741 666916580 219067578 769182334 159519527 75187493 456717005 849150399 917433232 723479385 540087570 242153573 631531540 361537435 42906606 245413743 900623034 166219687 851714778 948825605 773579702 297525885 248360967 232854034 712132877 363110613 707909839 864040257 369759450 180604276 208065711 710026507 78585320 190317719 579431152 206001658 816476177 140478092 511074310 479761961 324797342 429556071 663311756 162166710 763168157 2453142 232006052 674880603 175424716 715208883 66019784 687154494 786418088 11914306 741813137 639318882 221426274 837991375 389616586 582316617 123022161 913698456 911089723 233604277 302991234 601093894 427472900 749968144 90512415 468785446 200507942 637274751 673822294 867564168 466730194 49666717 638380361 93071139 537649315 602411480 487357902 130431743 19915211 585668633 590577522 383259094 286195366 792472356 338848104 662521905 934765057 721053517 648011128 278161884 270993486 144821127 688301982 206775176 308846716 727562882 541390332 900915972 482937824 501650734 924112005 318703792 212617731 663981586 815511504 610152243 58797490 404685079 466612393 242750706 178986816 236168997 585473834 505694747 64134544 540061887 781744339 209660728 82799386 240533653 107467965 121765491 194864357 682754694 435192868 691488060 790240397 439964414 726537093 960342531 908175103 379898450 809782913 538348487 387335355 34601830 473773867 260121018 826397370 76158387 247318985 873496933 21382709 318374 546612106 74394531 374343580 888860561 445051814 921833437 320532780 855231217 388759472 584328508 401471753 633375967 555602937 899035013 150782898 332323851 869548887 441068161 321212045 156785797 512301927 908497379 212332744 171876452 859028753 750164312 244406823 186105351 131044847 915135002 117412293 806455719 844727576 313783244 105426465 519130676 695215862 487976512 965184000 845960898 793315474 839057399 725641551 459003586 658853655 397136373 952731735 145246163 617325100 521022368 500949721 570163548 755104048 865123579 994390463 42090554 703937972 184661906 117426004 182753927 432952868 546104289 856928172 39247822 913349241 730153251 837654840 620279571 936494871 523963048 167312875 248323470 982693016 569332965 251245832 773849300 825797433 904861493 22696493 561737163 933905100 416166040 284622346 369961334 250998933 93549954 487018850 733613015 159310377 238744468 232300274 591212475 674735194 708274829 185929252 259904885 285342502 265511431 988900646 620680677 457115715 776199507 751651342 820781089 678161512 462272164 222311601 331890873 99760027 755046290 667134670 162060539 269819542 390088004 914380101 963299161 768140538 350221074 641631428 365552117 159890143 463944400 600598193 907963128 880742789 905535111 658936673 710773403 424160260 141673184 322634713 56103382 328583449 316948657 617419105 577484448 358484213 344863040 766813206 893203509 466458682 376581256 740010609 346438473 774404831 861757265 107311464 677304606 653993362 604143397 243404494 529281823 827696000 279690794 839181776 693423157 459201001 872819405 574879812 873682772 708092539 408809403 755223734 573277869 359876409 455771578 757776605 698844106 5058035 556559510 292040612 234648169 8110651 103448975 335312672 192138632 479389247 259088012 745846378 100963286 811984258 697063855 523497740 672147163 757042075 706750225 846226817 88033991 43098084 887957224 384803414 542553035 917804889 76790355 946619964 247834983 427721094 154433368 724406180 449391430 172378215 963037845 57285744 925162056 38548421 650340904 196872513 835143573 355111606 863907325 355834963 912031472 217608783 602585664 527703289 794173193 828332894 929304655 764082001 209364990 175305750 497887834 623746856 83987767 589789273 573297715 964112681 768479035 19650689 869647432 611073471 71773222 119799021 354961665 406399948 140271267 354223334 780202806 492695092 989563823 646160944 204258327 944875957 997964732 375106231 726855507 96735423 887419535 306788403 254071499 244998727 878784508 979466323 263076152 828110591 626023736 776255158 6106092 858849964 581359606 87257926 883836862 296943848 865486006 684739229 958610221 276526853 226621393 589341109 683264383 768148114 352269223 341835125 872303759 200755946 814774953 144570414 689986573 828880612 358642947 842156780 340975639 101349001 274717786 469490101 176986642 445706927 720162718 210592010 880134789 899925289 601013367 878458983 753324394 248094211 363179244 973730997 474537621 984582445 903360458 873331461 407715398 562226418 477745230 605654395 163804333 906077698 60114376 517825775 378599191 585159384 749047359 357214800 834909672 956915494 995182450 841779983 812894380 937191628 72042598 260314672 666393665 852859960 478592054 317810138 588316015 650806211 872760993 129181075 810960120 642082341 130831548 946108499 528441894 404806182 747263663 800158029 110660143 838696842 23413739 443901219 681315044 842196862 908071198 364765883 301947128 77847593 682494142 83601769 794562368 856534799 60820631 144334606 117364184 873158773 827764490 882178590 512430950 202441178 272192719 245208250 737227515 351366529 755951591 996659793 663640819 66744499 115283061 996751109 509582978 362476248 910992441 226284247 97942893 617958498 541330277 173470122 240087797 481523482 917544320 107855597 85244780 887731838 799709743 500648950 180356141 275580312 207486731 566738813 477370517 944359907 714467647 952083412 762964855 374212401 624431006 508897692 177598374 847111885 721048532 117782676 612994870 833442607 801915795 287451056 540694414 777624661 830800315 594254833 721033429 329560360 973776529 63418684 862641449 162538150 596192164 823169704 467965268 271880867 920934118 526691340 241974620 231241815 781102024 387266863 409683412 735220246 414098869 414177344 300171416 345533647 709351865 190737939 719169240 666830018 469909122 936014451 431345529 683375551 49463122 170760179 224611270 158626949 980250496 793889949 927623914 490792422 422476179 895715425 849276844 352316143 699632212 860515835 25139065 592232044 38542439 176934512 456288419 172618961 516236784 368799056 291986164 116494078 770011353 280168197 179253509 492641242 471724538 118166940 201673435 541494907 901722069 808219643 767288630 876623978 694095248 278716647 798137663 706313923 381545470 86997774 22436794 947825490 187673507 779516782 104438791 761683597 904312125 427767223 513334718 582304445 807320151 83811143 293492744 227630632 329123953 607584906 185911532 968834136 562844060 462297506 997158474 322120816 753088993 689032705 455865354 400302959 577821514 820266634 387164541 453977036 198526046 960319186 823194419 205790882 486233605 92280764 386839620 840093638 975990653 287499332 916198705 130156888 617438922 306859809 812854223 917346192 594790613 251244925 879886631 496452451 85228700 958832561 600982427 904987057 564547396 736742283 810040082 388756724 589916814 147838936 788623442 564826373 6737363 813295532 259363999 203346870 177373339 645527154 935299964 880544347 226320613 388708527 63298546 548112925 329470123 78740780 525021248 99666684 649101921 129979433 453142748 52271190 876804993 433912841 521656983 622849890 230011147 191089207 387122420 845899412 577462860 922168094 52334183 188011932 845117596 885319545 582426886 545987985 338651764 300327058 187251360 89708471 326353618 752699206 898212086 690100972 667240388 568336353 12184446 651787395 391850936 947896770 824938052 657994868 492360561 541641462 454192181 18948717 968808134 92006842 974205759 436437821 310340318 154492069 896297997 672015004 802120253 902139062 244341543 431081781 14511643 63301605 925910271 127427905 805413301 672343085 774784262 502357702 924684177 585333758 236109757 136513496 252788610 890400187 854046446 772493785 908041163 68394136 14894476 343486573 906177061 932380125 961724153 666709030 714653813 64662342 364454858 312910890 987020522 359215266 438417995 173719620 807952888 278262992 88958263 331163761 120992000 587498995 964229183 881041105 765069968 34373692 648117384 497334398 998435787 120930646 189676091 412124505 642408452 114841806 515820742 666265154 952264245 320856470 938259616 508475873 988734071 745380149 854747860 834282737 168834129 703135051 809583284 347558150 224026837 662848504 280802395 114620587 816807428 88930734 797154918 127499945 867376755 877875744 429739771 529429880 992626070 70635759 388358382 859935641 870014456 422099722 164385678 851526944 770998674 325545940 3661268 740192706 738622617 172594184 761614262 877060670 409514005 963530352 77262233 62258131 159824680 473218865 952093713 341883757 185178954 664680427 588075050 923585591 460297873 33756812 376811567 232547605 936806206 955827856 175942981 909238172 656944093 178896296 821740255 350536092 155799590 720620151 189014928 571934769 661805436 883929982 650113975 150644003 914781734 394860821 498968623 869602538 112458282 625196369 844704818 202864813 279760607 563742304 575876761 943694942 777090036 437561221 116167152 101947987 6589470 452891807 327058218 993607200 864371743 983036716 959031049 440535148 447733980 538893052 709297982 911771799 269399606 976572824 849623266 924308613 483223549 702500086 38142634 2295099 608749683 586319088 155616524 115861370 270884488 505257793 849335976 323010812 467149060 671155416 595056529 411093520 185369082 295843671 937610977 134822541 727317543 803087287 465040700 322689 348785450 734313238 979454309 12789521 384655064 640946766 329705372 43730982 198278938 854253253 321131632 854476444 220468691 288387193 527260337 512050062 38057565 170889712 637499813 649315415 982234216 143238757 461885543 607960262 626462238 850919305 74340456 54130840 65809605 857490078 700595236 181298259 281845026 480239756 544750925 374212916 500906017 445966087 577554546 301479858 958820606 827382846 649959679 664806304 224396167 221315085 860805575 846710689 816156417 331934163 177437432 319854348 825584968 114492362 349281176 110387374 90192066 14176684 617523363 666380581 117681665 858201074 169942621 209848072 362205058 433887586 3480999 516907080 387195524 156866616 541929907 229101817 339613765 628718567 346598272 154050009 49166804 227114917 119634089 341271507 711485260 140389481 122506324 129041716 405339983 823140743 980904332 650154040 933597789 525351336 751482788 357929905 82474409 7563878 308208020 473895489 82181115 982694871 649231616 410634569 84566727 156849831 754388824 461308299 347600735 568927678 303091490 387549020 74051488 755313600 220845386 403473676 793839993 550941069 540891195 23702396 713904944 893980794 695164293 561622763 624679762 139670049 977017979 765195457 944555016 56588271 722724890 978064753 957547231 893226436 279648529 169651621 332884530 299005490 357408052 359736701 836804868 384511978 322058435 551068743 203374389 395591805 610514894 726588698 731667729 302399482 718224995 941829473 574121314 47852894 608572202 110357399 956970373 204909259 639510603 453825804 176994226 600388197 721403278 25860795 664049239 900223854 688370965 522586594 755501911 965526006 566247517 898291216 189953630 215910308 622321911 652727135 236641458 732241972 353915497 691797932 344450722 895508370 110175607 995900897 634603467 98487349 369683722 502381226 188645718 316259331 485090701 697439260 625583676 611745830 197314589 786532647 151315491 812296089 946147430 443524423 82687631 782833152 2244763 36505412 395605481 106953853 792774741 232377678 64385735 250644814 409391157 359044972 499796354 753283517 28243560 75604457 641897841 915726598 639766751 303572520 175019510 915720113 569807534 774053692 502414001 948500975 452188050 145027105 712102096 133512093 910411648 504247104 746878881 137810530 275045787 394129894 560202731 270782576 858897690 775327512 114878457 116835459 212806565 128697025 726231733 433213879 713417618 888919564 786295211 941939797 545285865 77549784 398997206 71605862 451218179 162752868 197635204 720317052 483940353 332370258 680346064 788667391 141902352 459074370 248274128 459736398 159151969 168556656 278008345 89365635 811720109 375067808 53685716 885778221 253124014 308091521 860207264 191234304 544095405 367533502 667147120 356450741 964035450 616275802 474940054 285187590 773012382 560050215 28946415 787566333 793714733 469031551 595068879 94679734 857072181 297759329 559106859 88914878 517898090 366793052 508855723 482841255 416167148 669596955 296492048 312801880 468826072 753484499 612437525 117204225 619292786 652654566 355643692 449216267 760977090 378295387 683176287 663669568 313921967 248928239 890998366 622062318 971916366 31854044 290991830 30530043 904983394 635303438 193340024 176106659 515938088 639337295 635553880 710718113 298874710 178937238 902034632 879632976 104371649 104492104 798112045 535744621 984420520 450742189 98660251 957242776 330228594 346523617 524334409 514879059 510258074 761712364 72493991 304286738 202582532 607157298 83092489 496061381 567252872 381046669 39174588 296865970 995708079 352123447 294259591 935670645 120692387 660008381 545575996 181852063 71022572 200847866 564854247 134566050 135406710 179441537 946758044 558618633 330204102 139048665 23284559 199648999 579782562 659996878 48936831 669828421 421868712 862672457 448122945 804374927 412265189 323337269 519179637 927586684 745934840 58478673 943835816 221148990 442301458 666886506 957478812 912919042 419276644 461587548 118076772 103497227 351355652 59799572 395941449 687567214 266301598 932346985 770770973 402033883 136400571 543500430 941916900 143440688 855676478 422393625 692208025 268206217 650580064 74834487 778200263 456961892 550247148 474551053 361842981 56790460 414712561 914583727 977503003 81601632 951634679 845917432 956388338 443570875 759621418 16602178 887330066 787810773 219528957 550767206 61316831 126020144 278886680 813545167 716337086 695240438 509359021 472388630 620015219 444028644 125528000 564804052 600442400 482558239 646436509 925129246 196408262 160546515 603847487 819934223 807825449 68561082 255064840 51410937 888571106 538186996 362419765 380104148 317431728 248415006 353972973 552176475 931103918 918067286 880797436 928573430 549767909 93988 244971524 326812545 482797620 201593086 876158881 729860879 541403325 185122146 374675880 554089646 994594726 400214213 702066323 864789799 41849693 555621916 200154123 937296885 613579444 110956698 742338451 179037795 221741915 579740199 345744415 224325466 548867995 186884024 601613196 973197332 334718649 45197049 391064286 421967810 574513422 668828448 504432395 562129970 619173533 641404688 116114586 992353499 841629599 840281003 687063380 456702878 613139022 135306249 782987086 219008590 753059098 46667176 375572922 338312538 903846693 599177734 676165260 272022802 455541757 20621153 483786572 122297898 581282632 362660743 671216065 160960811 842192736 703708499 599225703 837754955 766774033 657758439 511816895 395561884 514060243 579845442 992923470 494524513 589698382 902624647 192626058 590641317 358621758 202200952 919656082 869324696 15471597 512031537 51862041 908223272 988920856 525064369 685299663 360053747 375483175 745447211 93609930 315316021 695645101 314496797 26324262 593856144 654933805 569960223 502708776 718022091 271002528 21828370 889982347 145417151 272212334 381548754 207953195 601973144 286497 530303567 515274538 260562391 927717088 710940466 944267541 425439687 142431991 385038756 159577272 589041357 22739730 454648926 923416356 673423551 619716884 790377320 309061757 852264656 626246371 470219035 66030843 297773316 71484835 861751320 114528185 374374018 164061816 114784123 626284087 404536141 185431053 765952377 853534994 855901379 73819612 266385885 953310141 698078430 15362971 366444932 469914600 401941647 838399559 878905789 347246794 963345985 219674735 566989183 594013968 941986810 659214951 932719462 441226054 168670998 748249386 274408564 609569194 651436009 72802618 793044083 877309239 137377634 951594933 351963429 844702801 407596746 873429432 358738657 534633490 785310638 151754946 813402864 838918020 818867573 346514595 654052340 368785854 984996959 744084350 816979108 280811003 367660438 218253153 265168821 879113933 21573773 809463617 303522168 646097654 751137544 459227217 24111401 68694717 818823053 236490380 958627793 734217110 405093193 618165676 743610103 882043110 843376974 114298107 224526863 176695820 30696747 176490422 76045066 412777825 800878223 302999620 756893163 505531425 489545614 426329064 551376557 253498673 384205727 724839013 42314347 486844667 971357217 589298949 926507052 832744103 796093346 492001619 279429784 107561639 310808666 294536056 87556492 329268699 493390786 243388234 132218417 489778125 992040277 531131210 980075238 738632623 773908504 100036644 36129445 713609007 338293331 388930923 704485216 405543368 373224647 535468060 596774353 865961558 901256446 16951975 351869758 838130967 471296947 752042626 835548508 709540000 82374374 22147213 721662107 856384294 649238177 751601234 598414490 144788468 865327996 928871550 970742843 609170178 998273954 936118833 568725492 158607675 254480417 214120130 633393886 52660133 67674862 23772986 668799575 336143462 226555252 822134226 369845238 109467993 341329831 743281303 580238606 816680573 996641362 259959764 398719656 15958213 813814144 168004378 847120102 758646407 871688633 135175846 192887038 643627303 71829028 591515708 394990806 353047351 662139716 994653679 921963990 353011081 682275657 606575458 68452210 699164729 518391817 710813475 944900215 143581950 801245226 447876294 601844820 144320322 390655645 953905905 598125278 119151845 576680745 863112279 824074580 447009591 669693915 432055562 878870317 476804529 218278723 966227949 775178307 211121800 519226003 181483594 678841733 27169075 257657104 36576695 414992406 965618478 334225385 230580681 727553080 860762957 607645633 660659257 238627655 886499510 74274692 977230792 915823431 856641287 415772930 383391934 593725558 460334530 681120886 17229441 72260645 195176684 883370041 342221761 329855859 843054966 167222091 128233365 533149769 210917270 159567191 665745797 62265909 727328014 173834972 911211475 316758117 855142208 911069599 114160209 232774193 407731577 380637046 277216366 611532619 559834821 507198083 340921871 640913473 925303642 771973640 837307053 618362025 157573893 256204978 734042180 310554352 209424030 777253079 522337523 201326276 206995416 958402095 685039250 537349676 406382616 121721108 988287529 254887716 92298890 151144950 897882892 127424401 876360730 178676772 934427784 454443080 702444925 963239345 512216404 398906544 388519509 302623003 588691683 765757890 825947664 519889813 738776305 873053628 582318981 510462790 630464885 919657244 916234723 655519661 188008531 639645574 312161403 774742564 176809984 754901314 280742978 700916752 536257538 809725477 174310026 596646458 974669398 371106293 468456240 133142313 839475563 397420597 64392055 919029907 677522875 409767346 675897502 345794530 391796928 763831538 1714688 562618615 153923518 880944360 862638610 276221358 409518102 907684587 568398237 871119260 5348997 455326846 267723874 385535684 494605117 513624336 643252281 325400688 337477305 102221366 344181866 252514477 319295732 481927134 886929165 552653352 762242443 391999751 111883393 47499489 498418052 162000142 397693047 340137282 486663594 269283010 813374098 186870863 627290840 122929664 643967414 903984526 392955073 760047252 182080281 151396242 217022596 930115659 422482019 9759877 280026920 851748478 435406031 116323490 743420416 618743832 490637346 259466866 417676591 322107626 916361698 253191846 513733977 20848769 712717584 610555975 877708896 880605361 608588761 749098625 400295933 233035620 933575149 660472550 216546913 685147414 178978842 95427988 703135481 926718390 969400060 425719700 272298534 348169882 751216134 445221925 258522007 219146342 876773836 164910071 243104548 117831175 397115182 715669802 39160878 6341783 298879072 93698702 42917071 229379371 542097458 26235903 852730476 948784994 797519396 113867426 327953295 884634509 876630431 243773204 590454428 753519835 61729120 882690709 5576682 35332525 908190690 204828019 234895437 785027402 835834492 395009927 646991614 659713686 653670127 18185152 908196326 18011733 861975896 745335508 244309882 589217921 9250707 641803979 591138478 93021459 528711132 628832373 593836637 310581811 91792660 305236750 491106919 196675452 754024158 218641792 793415202 279784719 40402339 484829587 865357831 808716818 321565036 138848489 297350598 653855142 910551444 96705744 885214405 483271095 205426435 800467660 995772019 774806608 525309556 541537397 451351396 900087859 68860683 949682300 231740195 408511221 920852788 201240196 230378531 822165632 194910149 117873317 516282032 890439831 181149501 565585946 883650882 201039268 973809394 21818470 5628760 892313512 254210925 827362974 488720394 629922499 227496415 670877128 468921717 730377467 209931935 412694772 496981534 264226305 330584297 577811045 897272270 572227578 888322954 776774774 815905048 686932816 288558854 444620707 23832864 536565446 810177297 527619157 727797594 966604750 784645169 286848048 82561712 678860850 383867359 820927808 223609956 281538492 216388819 491075250 484482507 235828838 986937064 991868272 8707436 531945776 729099521 107253874 951483083 352468157 588946695 409295449 147841321 267595694 119856136 426433477 474959750 142432020 961588536 175396090 602941551 460536135 372367204 289068292 282756583 24004720 83976348 243057213 693859161 618084420 779106464 334701693 764238716 338588937 596513069 947836657 963567364 402399712 420147858 871852924 849233469 349832695 128289797 981763739 740506629 761422331 659136087 345486151 385526976 900189299 451244904 466345664 414997422 662026356 751294652 7674559 704156745 584930959 972309002 87304446 217357126 925872290 862227116 562765203 886789745 566149930 139025144 488851107 359939117 713155618 600038696 915255202 734210047 433603152 217632102 653654838 917426161 666903713 373917802 373181247 519289063 730368955 125754724 310437535 1350567 931558079 150175186 786582460 925732134 149873696 592786734 180977477 498336988 191928246 821839994 831657564 554242427 337465679 455681888 454100976 637059426 476210092 736034853 521588380 206503514 704855712 805607586 958196791 435383569 969131565 177963198 707778864 498361521 534690443 625806183 170851178 570651453 481494997 157259153 295400483 302080570 455492080 461977342 936903856 904651850 839529618 753754805 908166166 422916316 221880333 771783364 985610395 848297752 359675175 726617541 956848450 577935353 724005577 928152474 696773031 66473501 738749476 939456026 852255641 149045123 372289664 136635522 249939569 895336072 755849723 140105367 138609562 519603665 898458882 590468990 546372221 953333988 681813030 467540387 868129108 318083713 557939140 978167065 658692216 580370273 661492078 330509734 529483567 844047925 807392668 490590185 456485878 761026937 1248671 228410301 794529423 834919900 808195729 913188597 459647508 9860544 407080781 826631953 839141604 103352028 809994234 962274722 801701257 233613774 395418468 972263362 853348433 235877544 311694296 23840253 860811244 355509747 199317565 479629943 669374237 477677677 71958927 36329626 279131295 552204767 672331099 481464883 124395279 854112918 810452897 77259477 481222664 782307534 599619758 690493852 681795488 442712174 116335325 876905271 310540752 16189204 597348955 677529047 888405729 416057801 801204697 10706474 413202804 248685033 388953722 452014921 835828486 635810481 554601687 579772557 512188367 721615102 884342034 745878493 906783502 326243043 959230132 262605851 849287400 567704304 801815853 998555835 237540538 636004461 990608026 67507239 468005590 984416357 890892164 75750610 259543257 226157901 808262546 465176849 821041102 931930823 124823315 698905118 936905560 870452534 725508442 239069494 834151969 185219819 189148203 993066350 817993115 669655833 630881584 681735946 852648798 988827751 339837830 706243740 991139434 5366027 311004585 930256141 624886082 366857106 35910064 882396403 20100049 274120519 372815505 680120154 787139420 625409118 519822400 400727208 882875447 29896538 560382706 470581651 801717697 542201338 946128277 430967459 589377667 675236932 881318347 148302464 918842448 694893796 48907434 747431331 599982439 612924069 793643313 524259156 224863350 780281005 372309770 118280762 672250081 563749330 834176607 301953430 274267845 53457709 427721684 25105134 377828129 570790518 958893564 106053228 105553378 880212427 824579261 349395677 226586832 688417082 570302525 282372097 582583493 705944353 995794046 545358083 736375035 652840039 57664596 629702910 861650984 823679697 511628295 638710354 798503194 688389218 727316436 75323239 125075997 833225444 466508192 11195216 279085659 906734652 462034341 19933439 748145797 184319881 245071890 657416139 934936821 529202517 53170613 971773196 363648304 445875037 170267099 123274438 526836848 44147004 310847856 393934422 52956575 443384314 755853873 331998208 689286387 612634596 368955375 34987159 865804710 126320272 593438374 556904666 708248895 94913663 818116147 257042970 742932830 802483319 807878418 396098510 25251243 457145733 494119558 325297834 548372641 564484262 145970298 95055350 531264147 485504361 702847810 722249156 927715892 616829918 214038006 280741090 878992892 554518896 75712114 578811977 398356359 450338247 809604818 201159366 469474923 274244869 191012983 953786204 731092366 98178844 544495068 709488141 35810424 80080013 182497909 666158480 211279610 207122995 546775074 344293738 832923825 124500844 731625251 337875977 356074920 725265523 651769640 754467122 786931242 359590045 975831042 220864709 183611514 822639589 623258692 398175909 572687933 360339325 921793456 401709824 32440865 667205814 446913901 234245546 710761903 114556543 717459053 106483174 762552306 125201524 698050849 665746622 164849708 90357747 987702956 776135148 845147116 392511816 136496870 495211491 692640058 639559592 696243848 815517332 846540507 979491970 941257002 87401382 443544952 947518657 621901455 823690861 494279844 607472007 273447293 74915930 451032179 357361827 408675896 73309743 850654039 781610743 717023860 433948699 724958059 446839682 209471128 822867677 414556128 655505337 506174967 588462217 767600030 72391261 73433409 921897823 907196738 571820427 992251825 358325605 376172571 48000645 318726358 923680682 659228624 370524264 119463536 556044987 436856538 746134103 403600017 835781670 922854536 458361269 868904539 262545640 303544290 506519355 757348555 947938191 642924902 170308317 426942721 761925768 866167657 690154760 934030479 302932629 770859100 436676903 118577028 914626219 850465228 770003997 388711723 431321288 31883565 172281252 985974221 742531712 917626600 919318911 992744020 433871050 29560129 693280307 53143420 758857706 365952740 599981515 334823206 130677838 539877040 24863374 645740690 490573847 360629192 461079453 445266555 364915898 939687634 650943886 168635282 463852707 554474371 613295939 976682461 250968702 851067992 548811421 464677070 808896007 137923633 223725373 450474846 834252469 405934656 882098337 486419445 602394719 982166439 615555629 633062101 998657885 927552407 158776192 968785689 434407067 495276480 699241384 431747969 324803123 982966666 460112877 110882185 259971430 391966599 475383367 507577123 796590598 371111226 158682406 889326241 142647840 888733079 381385194 385940827 193464331 270464581 578415887 265497800 515775692 521108089 978135260 444044068 417176660 690100605 871261121 913644518 160690059 515720362 587362175 856072297 414220291 523879970 863058730 161768807 678755593 997463892 753545281 541340585 858050521 837039443 929785253 638691164 411411087 127329019 461179141 860740224 993352344 245212498 290334637 499302833 893491835 311158960 467636568 590252513 214173488 763133246 439688283 205815609 305101422 682579513 608041122 918884365 526483586 774229505 123413489 993914292 861131503 202814262 68510876 446297532 437706814 126779674 460399284 907292635 230773009 112760748 846347301 639314255 604941643 751703709 750734876 514348454 460581592 849585329 947659426 848958137 284500228 569752213 452554903 145040769 907630622 445208227 144781829 963327164 386890986 360497373 187691446 714914447 209822500 653632168 818954393 549525043 523410572 883373432 537360869 657407422 26920704 602426662 75741370 900413409 443516055 478413651 596665797 835466489 460317942 11531662 392057754 89506746 13801148 266544059 452820632 177243950 834615158 280822672 611156235 678533836 466068778 896681908 30188999 254892414 207884772 351319491 282959303 516020413 144177142 445865868 496927789 451553613 745051900 866773824 316249023 443994390 249267388 267100346 872607672 223456420 455932068 465757178 533114390 102934853 354284542 171593248 253523360 891018252 564684185 872282863 34373862 859409791 816309477 264421942 544756273 941656889 416032715 651808688 632111152 193657401 220081433 885279441 186349731 389573734 876457151 647874686 239752985 975048081 739535114 175199191 318358146 167385486 238848709 861786344 897955537 85056097 752431418 336765389 455924193 903588873 805773965 67978264 261432581 891777355 346226311 639607494 131378228 692888219 339302175 664876993 231873492 461785529 27005908 94588266 702363254 273874415 143160786 937189138 348785404 264387023 13602097 728333350 74405124 811925815 34173803 337847367 375857489 400645179 737819460 327181048 975513443 183338259 76816568 956937152 515542923 890928934 836058909 163926109 827127591 812613564 368484239 335625267 480387432 899684889 8517525 8363718 36977560 299317459 796089873 931417026 741673347 385336514 426593341 729906136 234722800 635010724 821068809 331840549 598635082 488492564 860675258 559070569 570821775 343013151 492170716 629641163 159764327 757270444 879370920 16745354 369501276 91008104 436724466 703919024 694593669 4205849 530074868 141588165 880508929 789827812 512798811 300119070 83058303 468257120 641544323 71651569 839620392 940596812 208919802 908815493 742502488 192957095 617806654 320008233 821819788 618886378 278704403 285413388 331316680 961837113 374704896 553513019 39707914 984625836 28824639 823210277 892563982 744157959 487295086 442571787 726074632 474665812 22877580 834273561 778254638 816432864 873855577 412021469 164246351 990505450 608710100 522065827 98967020 890721464 315652140 417084849 161651103 729209440 610480185 948481003 114201821 737019318 269571681 503409962 62308320 35491824 662100405 915189035 867981903 999542668 631866479 162526294 162574427 856106190 529173963 61836967 506755550 548978581 538786867 186685132 492676048 984382533 360137265 146008649 661373094 545152086 426864865 514682297 670624487 11297239 289810159 121978536 462377574 64497417 20339103 619816569 433619495 682909575 961292281 915977383 60656224 880208782 226792383 362789033 263945871 580563422 690617862 563529419 702461888 846578500 281632117 259220243 949545018 95015824 963809345 430732246 219396823 508211497 966320453 165949172 796523702 355367815 96758347 335839078 572675651 136888196 626303747 945804783 816020675 242526801 218652446 702206689 425298098 417957015 31346790 820952173 499956841 758494999 794903554 489546880 977990917 790516406 623994693 714356381 920352108 915476943 530250074 470041685 482170796 841680241 975558604 54161542 708545186 802891293 70102444 206708001 340292275 645193736 880971040 444227301 7496976 752680272 862706939 640241620 53368614 280108606 729641200 383725832 998294314 745033961 831913165 445577692 142481459 294407852 769599069 261801153 557780754 349561375 268933599 61820991 210794841 565045543 858663646 847953378 706498946 472827098 68356828 372296232 642346860 650347193 204633623 918598843 549471169 745089351 860451404 176785635 221869333 827287637 675795610 408952027 468826633 561175030 796195076 4207566 148666959 194782119 450550765 284654985 438958793 814121644 978673949 566998471 352749862 180271025 565736604 472762232 239867826 209520635 529376348 146840250 200116681 981984465 193491747 163451415 637873715 294550399 631025511 40470800 162375114 3393390 218074645 952848169 596170374 670463550 973049623 236610981 862458962 791213944 569582201 348851541 881825215 571031751 7272374 843298535 54144670 870053514 77645960 910103789 124684802 588292583 504356967 634779202 957879127 234441074 240705241 746884099 487078917 155474340 471267952 194669957 389636691 189982946 922828655 298155579 657597137 140394462 836651624 169886842 793642638 653891090 878636831 808227464 974374371 642918287 183387799 168178714 986894574 560318668 898464253 159465725 869508214 728694310 157083851 418862463 371533369 651878652 787257299 820351228 653484791 668220805 559702185 196673089 440479015 939377826 106571257 83435405 691855428 954309267 178528153 189258016 725152552 576583101 63687903 295043214 418336043 692658982 594538221 535178721 225339983 253573157 189815397 363482355 177075060 414596197 561915047 513820172 26887335 759178564 857052417 385996 11886693 244237958 880683373 338146598 822974445 440250983 357234939 202163089 965423222 966839262 700433998 78227522 286209074 452279989 751269724 445832932 310618980 103033683 223297580 34736527 232987020 441077463 358156406 832319735 581731359 340501786 231076237 684251104 731579572 319429307 448046112 442282405 859289914 762023570 583571279 218228711 585974399 117272557 932574673 532597394 841126447 464431515 895407917 614759803 645043286 584003203 635052337 268590856 659290387 586675715 620750407 748736624 387195635 858645451 248043487 935974808 153048241 237966859 533437962 818702952 83634230 228418344 349683697 769828787 735335643 185428368 562042989 599854635 249181329 539866402 561585445 199729773 713818525 973680341 986508069 445344790 515896366 206449046 977845537 224399714 292293253 622271791 663644507 603942622 577069816 934654024 806356502 895705834 942886566 181845836 282718469 573705981 641997223 797905366 937837886 450342415 705854397 19349549 656335119 730217965 821634060 727276155 924740314 799259610 885548585 17317445 12986955 474044638 237419321 787204545 451953979 716027344 952040814 260343288 226731107 919293756 84425576 254930728 402709958 923296589 766391063 637515018 215898926 758673021 138008229 283745248 726833793 946190676 144637127 395088773 362729239 555516387 627092107 312925300 6140318 517465756 434779139 142842548 32734312 2932496 576251173 298888173 158448467 737382829 64804994 661081831 951446965 780808801 747170606 271104885 47132654 521941843 941313134 72208167 451750196 884777936 10369583 704888939 678742114 333049848 148607128 80115328 342840877 577361191 907842124 605130730 101040882 653770398 37615375 185969790 281635474 681682442 868355287 477619917 878183045 766786350 793879476 244774687 112932024 383068380 828590314 479047357 422264137 682053889 392755144 899349144 622631901 340091154 788480141 607362607 196208750 208396547 226892957 62744786 144178452 874901532 438377166 401012316 289430662 593970875 198166065 473268836 492848528 139505586 592616431 120846905 507228733 244303928 566445068 99848376 804269101 5377854 400313805 552440073 601063901 623449724 771246817 368594745 440711318 877423724 946418565 871691372 595333471 720221741 948753848 821789332 468739455 113738705 838914533 422716384 72570837 728779630 571908810 392578163 357066126 24662705 324220967 274401663 893528243 967300446 824787825 691487808 780218093 910994344 371313679 284714932 374917633 595395346 314202990 47412226 885796293 139103628 485343704 778015280 740273047 740414695 600423276 348123312 438075825 414022721 651138809 954777496 20558175 572185501 946898463 674210882 208428115 955271896 83313179 543031883 376619928 618038347 519818150 742191496 893503302 322337235 37709747 298130345 342353398 726986685 324827559 886716865 206618077 612058658 251562561 453100986 318194826 599964692 687615225 59371795 803571442 336075486 775495663 511488391 157340542 302369969 303414059 370317228 593018872 35082883 812950829 163738184 425644232 489999540 328807124 9478908 506081270 856520107 78686682 76532562 447383152 780647826 378357245 159665439 256030241 283636825 678723194 801240803 38500133 642549461 554453249 667884784 246639319 961076485 181690193 577991272 664486474 897292042 977476468 79428454 308376695 781079571 727938234 81283930 691503070 502721070 548973026 15185544 555623853 172563087 806472263 582674227 616882227 273604301 858688985 217512183 51779070 852289816 589581952 957819829 495587374 546224472 473271664 694960202 966699624 534261362 856004705 878915427 412573223 135947777 258749508 334110578 64433767 189105149 62007376 737480236 215100015 897718555 366341437 2972268 327069500 755217064 921405806 971619874 599755948 791355778 856094730 800874214 923735789 180115204 681007879 705254642 257091673 525539654 545548807 927774551 476150256 749502233 193025489 900000193 607527214 910125695 531170754 761458973 465839318 975441214 882450900 34595236 269329481 643131501 371368453 938420163 683938511 834544222 174391629 463795456 295838012 162715094 54213779 98173973 743645531 648694253 905880143 629371320 610204012 483807019 720010822 537090188 226129817 736041234 276185840 287799494 108411402 192763154 992492664 88016025 859145521 72023107 81776115 693793313 213088143 35730149 830738784 144508696 388593862 472323408 983514580 380168970 840207251 14042862 189100527 237702640 301373019 66044713 173973123 512032772 20938357 884761175 895728905 203548005 527346659 285658398 429317998 428637343 891141318 261057759 684819768 797005960 651314527 731408529 375641656 837544950 26967343 68309182 330576436 466385911 34944808 651273194 297323123 997213205 524256392 559547489 404689741 279905258 550919012 523023774 215395600 994985115 48385142 616535951 443547604 628924382 834754125 352579101 933357276 818033822 497377301 416177187 750853755 835296634 440618192 286907378 540092442 972722833 392157728 520546260 528587433 177392280 258036159 133265786 999138828 410056275 90910343 738592234 655648210 46983235 860053470 493874660 344423475 741806839 596964544 393456797 527943013 313747995 28450954 618366804 388398217 20893102 719321483 948691691 859755832 237823245 45077030 230560875 96907620 671244750 90841998 407153610 271041286 962262796 990878822 866106740 520152434 910974037 521949685 789538426 281641166 669006633 289442082 720573076 87176111 112742130 879179945 695519947 31968639 186790773 721173708 557360391 139120050 903596026 620618225 636712898 991713430 831167396 457277489 748487880 411945276 585626079 760011821 815829701 785143644 281430176 652586466 31634967 952967676 512031567 282536400 33560438 430779378 737610037 335909680 621497870 371966314 549944338 100192828 829650035 252149966 888824922 762643704 775207169 269358882 311919371 861085983 834060068 684414807 28675255 537279488 801207054 213178379 744108954 801159435 228259107 641387033 816129255 814189198 710307671 687934518 871459654 458131526 812799682 685588443 456290427 654330821 647372371 918306353 673991323 780829219 719471224 839766722 309374745 250586853 802528166 865570191 90551957 547483323 362366784 855617271 807367041 462572816 58067048 9732236 980662758 183954159 965567160 353784191 136006466 5168498 964782943 862758952 458070978 113224412 266817014 42848527 92190811 536615684 491075712 311779302 473357595 352283666 486777392 973087949 757122906 556582525 56783085 518338373 318680783 932490760 47660880 177110454 293664061 244582208 266380078 332623944 542445679 180588857 572017588 137091908 514759126 62848213 397561286 487126889 42799893 506597671 61801338 134985887 108417025 132429443 661113092 126673786 578041763 56628406 187370358 456839921 552593103 3410132 498232019 671880497 476288007 740948988 885161609 287589128 192762832 406112117 413268664 88117806 560375350 602815467 434340361 103658167 967043586 507271013 62653014 508301207 346308968 37003808 701933400 982385666 641280659 77070932 503204555 471227318 475152005 144532290 15827797 872568141 82735852 661984593 610256218 121156778 867843898 492347468 791712979 304271309 343919105 321317462 792793715 345254228 663996023 307561274 353549168 760948282 497398996 247399098 406035225 638479219 52055712 384771790 13682326 590217373 229089416 592079822 322609067 296764691 864236944 340831612 610255053 179132513 737638176 13355393 766611806 377132757 577905773 72122071 828988205 671420159 641698417 806639485 987578899 938863512 671395739 942729425 298401409 15713238 760280689 542379470 429842079 110161140 272114173 19817422 398367071 274404861 584106080 954900845 922805141 358992996 614303277 16307642 301928930 186707196 907814289 805316007 880403558 116991572 573408217 340984920 656109794 357495428 811950133 791259101 238633178 556374920 711627902 862635432 706796381 625898408 806807457 85929698 107749141 755066075 47484232 723944906 390390208 966806101 872093821 615143349 685221222 978476230 919974740 233291168 40948459 109220181 505725037 18713150 309092124 730111348 972362610 756917302 88844633 583501081 641413868 121224104 501323354 249604010 622840834 703378128 456299825 326249138 812785581 799695187 202064997 879809811 26983303 393497419 151731921 453404712 322207308 25777468 350383073 901704897 268770599 488363432 28933609 399792288 368690334 838181218 269032967 237061848 678377457 529936461 361087884 398657735 878874057 367875729 373647854 85179074 210722313 150849723 442705742 411738247 705320165 410661790 175136500 13951708 531579357 788175833 71367168 542747803 529028424 517334919 674293719 45280476 204120460 363208407 447798535 499974052 58985809 211318304 58859376 806003096 714062939 266014628 570805359 126990024 126575325 614977672 317734706 73651744 123380889 482792865 80207549 834175459 310269770 289640161 750618720 895444920 96798788 147940758 909536993 230615923 453647715 41244616 58588895 366707798 193031824 680036980 525592747 767830409 123989039 302542597 20646011 320746949 423855147 727308948 495123873 71471013 799756118 921642207 40651765 730568219 53145016 926787310 145209674 482930938 780467736 316624568 888941836 515139925 314380310 735208194 332271520 673426686 830094085 218060286 160661893 6047887 446464350 759065792 494571888 521610685 764947988 416230723 531569246 874747538 782372518 1363720 148064873 755193043 31965672 775119957 32316382 136117564 646378504 501276884 898439908 998612573 120644754 904413215 892698957 696307223 513749548 653747054 367295086 903844522 262604081 527824946 661662890 470971243 842981672 700009628 355457715 515467627 826127706 593286231 322783346 531282766 314987609 735538672 883401374 467842981 893347101 95576278 842704972 947248330 195435786 679319813 966455667 340708654 183304034 940909534 224682080 940111475 578591364 736484144 518582583 22453716 285296543 634512258 470755686 932842495 324765621 447874471 601127327 593147566 158301464 851281895 298091812 564189646 140070505 585620493 878960811 401990399 618855376 59162040 585879445 674544335 953669461 647650352 645826478 838163754 413657419 295002685 929975452 982389888 230047153 469787930 470384355 950699294 505424429 360280864 593675912 201269974 9982216 748794770 768429193 702713540 649172279 403051726 786394129 49742747 507515857 86064030 412998485 844517761 262993688 846938121 194919264 7054560 504472789 246108111 675458560 758532928 354148924 255886484 814071158 761977860 199398222 201911747 513837797 212518463 656800111 296108002 912139801 883651011 791811875 639108281 300036135 821080018 30771808 111882591 959121053 220154155 300301488 463387824 98519123 320943588 894822488 400826155 475925019 765522792 497388607 498367853 890204516 364020446 524878880 835056576 72750289 200647077 157695039 446153075 13051153 133695851 936033909 523037182 871594815 979529488 682721760 297692220 7639244 973058816 340728775 166933859 64230480 167299754 83943625 94759468 179073710 598612373 549273074 610789451 896971518 963943197 546362572 881940841 191229582 266773574 816817801 558751117 374491863 481422923 165837932 294207866 152167628 2818035 783588532 868248870 626840472 499819185 298881170 629472173 797673193 557071226 345805378 815273340 614404123 199203833 512072608 461164989 584063520 284799987 10090159 102848002 659476084 176722568 814388190 419553336 119261249 380488960 729671005 989103926 130351938 84711684 626932438 654301710 532633903 863339626 301891984 850681253 836426568 537784823 208625507 592599743 727821960 812540480 171046591 748903632 382184788 41727989 247706067 312753804 853230543 235996946 99834545 272811771 830527100 863869259 88666548 778413655 257732951 240707150 864034180 348790586 236696253 235325 677557749 777484932 674152125 332214173 626008999 452729127 370739395 902117818 273396522 54947450 17274044 760750694 967384651 226671114 596428354 764439791 552098188 609440716 716102196 86557487 258566892 514197863 210659939 443058183 255181402 141775865 236426429 626271910 614921834 396532283 944217998 839527919 107840026 928976290 847400307 454046286 690546077 598919546 789228124 187784385 686057275 620364422 77597060 911179683 305382540 847535232 390179598 205733602 331962354 132885815 817991395 837450918 558138791 106458438 287382216 422744736 608100203 63134037 529155537 743672090 838470407 867025610 96124106 956975871 439795640 464022773 694386674 499561982 840975260 660942529 349313454 972016212 898695103 616177355 306552489 771392854 202430016 571489337 888323606 101441372 766068965 945656889 815503654 525275492 64712798 396438935 685373477 520577014 413968392 399129691 760539156 538401960 981550228 796175361 100285536 54335489 121725441 159963380 112866556 404668013 907648615 620438317 66923696 887844785 843285158 708254389 389432720 254824955 238995793 305320951 747825477 265784691 836995895 642004648 454658563 223898103 49342456 134120299 707838511 867325954 674631925 123285578 578607580 477257894 653527034 314876694 796552123 506980965 596651061 922844269 348193277 220373751 854384390 778303561 174491951 428454123 89437225 58254788 903282111 790692627 706703680 327973196 777865765 266757767 316275430 454947413 782314931 544352255 399355975 3962615 754844530 767787690 553750438 370576046 200835983 41313080 368864786 438768951 934303380 77363021 378224222 346331747 519163351 656093367 530961034 849083999 581529024 322993407 611531812 470509141 655924330 433397480 572611485 109038677 298448786 380701433 973898977 372320680 122501798 404880167 318641396 63019787 889152463 745165423 597971638 626452175 162564846 520332135 977408913 547522262 202700115 774582233 507611770 350300713 818347913 502821544 171963475 647916737 674880350 705869849 95750240 371910083 58640269 804231002 205512551 354196010 354481255 743369337 885746663 528135808 712482379 34707130 227807947 11228348 895819697 595676349 689802721 100611485 491588703 62033189 16096822 251620067 95782132 448982069 480715622 563686160 386185562 145292059 758747778 826306335 472378061 685511349 800800877 556709626 486057505 151758622 779245337 895347193 115561102 589198275 833815174 993773742 924144249 303618293 276685372 521352555 652186801 350418432 563080784 166271062 709678937 868103228 653395049 225707820 546895189 655461123 347260678 779509564 305655298 960789037 999721141 709679975 967724814 405359290 307726360 316417363 780228223 612480632 629316849 584046903 298938116 361788584 111034574 672287680 382945381 768783842 750644435 553181973 224777231 855733252 808230854 725084176 647376156 608911861 336208948 764683281 517601045 707643990 482174576 222267629 562085547 248883760 999145018 936732032 68124014 612927548 525511868 708872708 559010944 172937142 642850590 779453385 671582087 50261334 16680625 892284213 798331558 720161399 264744880 984288203 675678690 926428958 296608786 292250051 937396694 160583828 290136306 407535692 797270150 898333224 176991567 247828024 384529937 871785749 478635074 318848240 102497373 750544120 592741646 709552265 168035075 417737582 392220994 996359441 920553397 713670160 279778827 355266824 586335798 933507002 954457736 39001738 173490233 119213336 221037173 629886977 486709546 539323415 81730846 762185526 509470895 960521604 382262960 46838108 721077919 393940965 891923309 727209507 72599498 30754890 279697419 305524313 701680747 137269902 843902906 679242868 471795980 960264873 41686858 930158369 22282477 333042065 512623737 456269292 231283852 115504264 274298255 33548606 186818722 185012545 68663631 883934954 319468345 946659055 610014042 451917031 77269755 403566520 601978709 179793412 689002557 635410572 123953019 130640022 979196039 820879532 975010043 751287300 882148979 641424900 781161861 696122669 723781879 684282778 286278580 788493412 80533579 857457995 852979896 233141728 773859074 74827419 425488889 213597488 210206910 309088244 904750751 73408428 474119649 85542603 191739155 404033999 647111180 581865467 748354896 183439729 734813941 974018470 337009354 558804880 606032699 122001185 178947222 545268311 205340136 189112844 115002873 920942475 724937129 237221194 138214934 763603881 670456641 758708354 138021924 303644648 123513412 453664758 146901087 970524847 236099068 994477753 667622094 92114242 492358853 689013229 313597112 556592817 430315858 238380213 631893139 239148402 418763717 812554357 272261238 559901378 504065000 745081676 611716330 174136777 824848362 875407353 854398841 161974379 851907643 972210294 264781720 460433259 230249159 172152559 462025455 756724478 47550953 541529055 934528249 821127475 764404801 683885642 336040021 944003641 548126794 326065739 556131049 856613281 424916395 675209622 62622362 750654765 880747263 930583522 44392038 743935601 793855073 185290539 235282019 758341690 881871689 733787970 215129099 501344716 329684409 389284637 491761194 83050974 126950454 430605003 877145989 988158318 335919898 11278950 806201237 168930790 795152352 776478553 593507253 677885162 681471202 148347585 650144595 202674379 415128633 18801628 515938622 437829255 928254163 119747026 929625369 905098106 699419194 334392619 659906185 229304857 534193083 353369220 250941265 997135388 517944438 659064540 663167425 193103018 954331417 999020860 866244798 950916126 483018717 536076025 418450626 276680713 269204865 970071984 511440823 868829750 905218892 758009980 473597879 855253106 223361844 157990542 785409885 114209456 349599057 819598297 455145749 824851110 605990242 124691424 760325004 345965496 572475961 983526292 660063585 985612724 527721892 454650938 40962591 991788606 288408712 106974685 188957919 113554758 464040539 486274956 776538101 65812843 482143856 137474964 280049893 289392192 514833965 865270555 203849616 589886573 187367885 397322110 837351967 224593717 854826236 185414628 278899783 238656109 8834612 26321760 695019695 141201882 449214264 208660810 168009940 50530170 960710982 245824378 886632169 453921772 938023088 66408383 669179094 586868182 649214823 745588188 540988393 988659386 937383111 435023092 141156372 921670826 606550620 207408030 41112022 570919807 634968738 153309952 565539358 281599414 468182123 637190753 783519918 643739492 220386256 346856482 165067913 918579123 918424913 457326222 247217374 732583137 442767008 561341125 324473423 115966975 793992486 33878531 572964927 289831892 25795099 727548194 512576255 61296859 669429914 684624921 988098539 817778564 977632443 852360807 402942327 963995439 351966001 600747959 820462875 9378893 276707209 645666567 31990976 769928137 281011895 247348154 544641935 516147151 449648544 59808189 382607098 166031961 275647672 463010564 426195720 633264073 896115430 286894404 249180046 782115278 874452870 911807847 142295967 476955258 576058681 220195654 831680688 760891166 835988631 181210893 2546576 420735418 128451995 798774489 884090877 4093041 804200373 557571955 139090014 596088087 199191337 385532478 943122105 672784135 375441520 75958778 932625094 815479084 508695082 113792031 23114943 829468477 103494267 630870804 874413767 447127240 479545184 29932187 128315296 479947960 649332943 718214921 422521373 560125146 875820460 144025428 104756360 949652090 555786917 24816141 883868707 101411871 445659920 357904943 978682956 226746712 438523789 895460693 127934785 517287551 504111267 806399593 138647507 336082955 6790402 484330381 905912091 582414894 155631287 69347073 47075808 963745335 988651956 619434600 709139125 959582451 569039317 715615181 198017600 840090362 771967272 53447313 749493415 687648050 55348662 195165207 786846245 421305129 989241155 851826196 85346061 420918351 44401435 355450596 305681812 24521282 592356178 493700850 579141569 782138016 949416855 316306920 727385098 688167722 640981001 553832351 4458054 294382670 838289272 508007326 819090755 257839044 119525979 770843433 323975339 633381871 29127424 997448480 755595613 202508071 127508403 829017038 736648809 858388934 565112450 778272928 225770140 793764401 920584714 99427817 946067964 591537149 36143978 606780164 971842337 241136601 633615957 29704366 849237810 207404480 234068343 396791999 578138042 892685069 485958641 408247204 961328669 529446060 738192344 950058647 112152905 659576808 190086375 323994741 974014354 512116058 984636751 964671462 539008268 991996792 205069134 34645935 766543020 418650011 717007616 894561809 689096296 272782340 978139762 970472684 105315483 137889773 464371158 961862668 402889855 888248460 143455962 486718608 314652170 263187060 458922985 591446529 247438203 888806015 947696664 198522076 394908293 331454509 423999517 593041559 66588678 490221163 544716388 364768603 229110247 712261122 45204422 964588364 370976955 230912067 161810537 773659935 684872590 800977870 528800804 857956316 902546611 596396416 611568801 524340321 373641354 21455406 311637574 47334244 300359984 568467226 931161498 142112977 975969478 476897802 667780420 549891789 331978906 326548880 663098823 695184497 541555453 411179271 677578365 74222911 359260225 450081022 37001291 175401953 328028823 500684973 449609305 396363476 418273813 629073529 627030698 774494477 7613496 937346570 818205540 563477188 160959257 234161898 429201229 688466687 209256469 976965486 937466599 132688113 417485641 449724806 794880458 712420787 689463221 276509518 218330551 271309413 302973328 774295645 155275540 236557183 50110693 954688273 898048935 354558976 906237673 505030473 334673025 194978566 645973061 418903018 795246961 420153450 811940620 121442547 345783728 708093589 740572574 868600188 350890178 340634154 91451528 959618373 596346502 824979909 914515558 35822600 283947041 741969481 964391242 629506367 353620543 589785888 534603035 986150087 956105874 645321438 18671770 528925583 773913587 248545288 628028382 662404220 395281541 910143793 794865425 771576034 58103781 82005690 797768276 805314188 538808557 841157429 905017035 512174998 227001251 850677243 233224783 800852546 898004155 191783870 501170091 309354350 496080895 551217051 222617800 473505570 126090757 976164874 879490825 647420185 450794935 153397654 904089884 69455091 6401927 978902385 430718109 19719871 128163717 154329125 550152563 186118408 531120287 911529806 288919641 789151124 11925054 411824933 682168908 520085316 466045410 755222659 440176507 495847227 989356210 877201541 303349989 744247645 99377775 993343840 200926866 14560325 907853148 119139344 640994105 84708947 567069351 557661271 75427558 79737545 710346476 181235160 844650708 934088789 359288222 668291173 232752901 189099037 669497170 205091690 686575242 36359247 678954297 854074217 57969425 984654353 705557156 920280531 290369267 444558282 938667032 938941963 525151995 678095826 760724607 984532799 753884886 256731785 908877606 732927102 62904583 162175862 269017753 748779243 178607357 60336625 980115519 531361354 9488393 612532074 142586026 90943646 162741454 373159243 735698711 182661396 632517969 278404789 888157586 631303095 18234781 397805114 345186584 908329812 206232498 292987155 591895608 369459767 620015070 847788064 317412557 387342353 392549061 21625303 105436189 438273826 772157429 718776622 223536786 792406834 256492944 703689309 605733578 841621459 245492404 971751177 781576054 858584447 135476592 368990959 811595996 273147985 799482500 710225642 168134496 4066565 465486014 813643121 817508758 945269285 985725626 60219453 276232977 185327771 155487826 293286831 79561517 152461804 85018671 128997125 783266857 628840392 914391759 860427523 632682775 664480513 807723452 134300494 979982428 287722058 983920293 458602218 766273551 297044114 560869620 23414335 63436354 233059138 673380191 129802827 639013065 555720232 719477250 888785416 117181228 293857007 446669731 819175866 430013624 463987475 831141109 246129774 888013669 492087469 452674478 210677395 942731023 155561791 353121710 647965058 637888533 222774574 863282191 614079063 840350613 206024216 268389333 762311398 422205882 709289331 144478795 693540846 224242981 93225448 704051577 447048372 778988380 39102912 719240944 277551673 897059585 643651634 432259840 911179530 291672673 834584484 287429775 502917588 671451970 347343993 404067003 143104931 76712507 759383277 383247748 14633765 585792992 617373825 264663080 103816497 77745342 12319588 406085369 430666690 835272831 449629736 992379121 345606938 117932007 490194852 66380340 935063590 744737842 36407224 617140075 364298097 352034316 10392982 249156737 110272364 38071396 397744072 689391537 902689565 539103112 724733407 277813741 772917209 243424135 513233457 562758469 59157096 584478924 729286711 636126684 578125042 309149224 896340488 840052619 33555372 667333005 434308939 82376775 23348258 624156375 80613044 332602505 199722296 738699386 673587623 756024269 903067139 746493655 901136232 335673562 339463458 11143290 733998143 544804974 491909667 512499449 933390419 787466685 404708487 395875131 220785876 203386878 106213135 21396080 884289559 878328995 591792681 744388254 510719108 814781291 314020112 66628237 26334808 556044805 417366480 729714652 783878624 558663773 237413739 332760016 284209253 272284680 212365400 665352055 52748862 30365962 10410110 801623331 921550460 816419415 13120235 453303479 618773575 803050037 396700424 483436706 85403384 98519872 435568403 704594224 151421669 379978491 915320086 846419930 671850030 900092048 331120610 302154823 634314857 784678602 707924722 560121172 536101101 966427805 445146589 234395822 177178118 904609829 820955197 724339247 522351494 99850149 96234556 15281254 437067121 356509014 640081689 847098611 928690468 241258420 500884563 542245308 35787024 525930583 898974329 212076863 846090307 632124471 929126183 998373161 204797650 117124157 781326515 385055479 401753901 252205981 694724631 398457872 469165457 938640283 412692916 90825999 842015999 133308880 345786909 858933036 471612117 497262423 564562140 78192114 8349116 465335530 153828099 135963943 271523979 45279067 879325548 772803009 970509408 500802437 305540589 433374288 451421099 660489690 835548819 911345923 850469584 888950425 609901411 235823201 271541300 978201954 588307357 108946810 915297976 819276605 563768145 871845305 55117663 882642138 241345780 109551534 168403853 68526700 10344393 760144497 21681059 408642439 731626549 160807255 944950054 831704700 962049617 936625960 260430415 463238832 712798751 713435039 172373881 489421428 698406255 814886333 750474922 988841037 461950570 793429486 590767432 118691613 377457329 911094572 785946517 603653538 277657838 879485331 888166290 777890457 113931876 458504430 325279294 469936274 770211769 756234169 331627643 340666248 239188838 462791818 27229205 794071816 355728939 762027317 728826691 240933365 426397726 702263178 470417337 403320365 578215531 222604288 614416436 419035658 553964795 101869827 352617400 964218025 260591317 479292370 187841501 228913056 852066850 303514301 778499815 738737909 954716809 538278807 856312105 60181669 692732032 98943772 67628951 726410345 59788855 974566322 737879993 367015265 299317161 601695715 593090066 40682490 86391964 847485671 998898785 152335632 152786971 714436312 571212276 529727550 456487365 744365041 921289821 110537303 385185747 141455261 333392482 650662079 172660297 123175243 58390882 265187646 778526680 228148836 968933698 432552655 807058494 940107147 141978011 535276768 73950616 907915298 933101941 715767330 144551805 266712836 973658005 597623439 725249296 658062847 157834634 824716549 392735884 456904381 737208164 42597235 416267023 640186021 984007620 577734102 167701201 250770173 422047871 650233920 267790241 304099218 389437372 366411221 548435587 841340863 974141147 153362629 682687251 964321773 586256 62981117 202243619 117425603 927019981 802569451 95378556 382882355 822326237 666832346 301303927 56385411 597911443 549786941 967270536 213439434 25660607 205684547 183834128 13282616 753978105 75288992 757944865 116096895 170359724 403341326 250913022 606904456 795493031 353251178 455636410 347477564 427622487 205028347 162148649 44660430 178798286 285539122 902488936 894491275 103570024 12628104 117687832 116406477 317157370 353380277 625513799 789077550 9819384 974974275 755976156 816755007 757046958 7372897 351004716 84282967 909440264 890183797 448293438 3892911 444428907 536023650 715059251 726088581 379924814 947498082 114954186 692083396 396446974 311527681 108510182 733291640 527315184 625852413 371887845 288251958 73841787 489162954 452595080 739667960 29535296 59072684 695546794 101131326 268744990 703113639 344620056 465965829 693392942 170109310 34073202 279446342 681266696 987850749 729538634 928234600 513883600 242546538 323811842 773583481 786050499 531010942 742343331 558709742 393953510 410993796 356835731 877844738 89334128 591658013 749446475 383602512 585348300 22747797 760947841 341066875 569669056 76753024 466248574 811264144 119894499 748109047 999599069 908192272 731425990 829062941 964824047 7357186 710678764 785143033 822526513 85576926 161331906 646464326 402046252 747207796 108793139 743083601 502942592 899838282 654224444 640055954 36739377 917070440 645255603 261888020 115605179 623511016 768417979 788048428 983827808 640270335 299359330 361805625 196046835 385174484 957690341 15248670 967661408 44570679 417423158 887555662 461977743 192742636 308669981 628338846 382781759 798238651 779985972 506251972 878134205 478501020 609306071 194495571 454238253 905782862 875315084 490528941 604798772 640884762 374483405 450016952 142501463 32109791 923909272 900741431 40042975 993245494 141883163 740241939 141008600 181287702 669823095 569350053 58508062 365972890 512927339 293066986 732878383 632979373 805233955 270431609 729185927 861513604 357965945 725551290 814644833 26110661 927583752 482669836 951097647 163661895 743785657 609460586 284795468 415392108 136802049 962775226 152858011 198583458 612082154 592425403 514867373 28693318 71666464 441231457 284825928 280743410 534020381 215784365 619639718 216268027 782797039 105169721 135239896 34617687 680249452 373701412 94582489 23299466 718824814 429736121 68212641 379834539 984388218 840461839 48999853 580855725 960672254 920113274 870229940 380637132 947068926 789312005 13496914 334208628 916282411 160753048 690843606 851010239 100835857 455558502 675903253 786263733 66163434 274379739 707478705 258240315 563538699 643781569 124989377 703153677 518074057 471428360 998663539 274080830 272891345 410752081 863453963 541725046 669228407 493377195 9045101 808819502 516707754 235355806 500228843 800080975 170311458 208602643 851176933 129739328 594011786 510178269 146565879 355887766 742924131 60440240 949045964 938994554 432007530 580330213 783600177 654780720 329064711 375775059 827281528 223416852 897977781 750380461 709830725 921691238 519930417 680990614 624672441 450037693 3054158 985717223 42835375 88905464 946032036 577308544 528594435 866423805 856867365 185623917 255099060 210334777 970994105 92499589 499015712 134165778 289330522 71194542 390179136 194355338 330136615 760296454 975524725 570637577 921805135 398272880 558094643 898644450 92948951 595299048 924414574 74765620 701116848 325969007 913970922 856998487 498858983 927310885 938865973 469839362 228297650 815904556 39262555 305270898 800242383 696978122 231682846 301084585 540499837 245734657 123045677 956103599 760830456 992892737 107997136 468802849 622108761 905804321 270095750 17104010 511261176 517341938 418965649 509575109 246832193 468985451 744674146 727574824 608871910 959278143 311431481 38244534 299061075 766694190 764727506 856465447 357782079 877510128 81626502 624927724 200115242 279141445 235041070 253093313 981910578 585188955 519982036 921338191 862378902 526792450 568302530 654980117 561835592 286319498 325594083 400854518 569550555 929525212 902727973 167782365 979544555 679273068 201610294 869593097 180228919 831917275 201512806 890832430 5088907 118971021 523292571 465276187 849862466 967847196 447381687 326855655 300871966 621482201 352417414 334421580 523426885 804154175 628881188 950281212 929333820 106671950 876467508 371096849 567120136 171433411 935243551 390815981 530772300 521424565 418523482 379983158 413816402 714722718 180611401 70677146 689489377 859988524 396681357 296296518 764740230 331786914 154292608 289535940 382490212 788026953 382886393 145019042 673351667 498805686 465126795 113382591 124092664 716191200 310333587 278725952 414969590 427190878 274124424 237980895 629428840 171517176 15425111 330914737 827108477 487979292 469286804 724702914 671705893 175119453 665828479 73097186 838431740 881885123 763763217 7642089 721107350 313052775 45005709 357474587 697883310 675669952 364920617 500688592 251860261 202762230 782637593 746406788 235493242 151541742 801289900 508222749 408451495 132564478 908323081 148087446 115861242 817470051 545942256 884144372 5918730 712822135 273630855 757731862 688905988 406293268 301961184 976468464 818296025 678078519 583345857 378225819 210714301 451585384 668455678 303563763 697098632 877710930 341846360 916435122 629391370 376628537 149816335 117295627 294597812 880248738 954858294 506869199 369641316 806221862 445978150 58732013 57393900 93316156 870563853 934591394 986877088 329512497 97232396 32126561 768736971 383922403 426161830 359166352 186731681 920347163 230586041 820713087 322860394 790018394 679151753 629583968 830310737 8400498 835522414 604076520 318999551 888281315 738840715 385252345 398428851 987964262 793660466 699643350 334016373 648913046 241856947 104095354 840616119 747148576 698866362 345941874 308227483 836986553 160568164 458651794 959006494 105810260 714677027 267574676 425793019 875190588 90529744 814276613 428207504 588256353 518318891 839883796 825989618 628607205 75619302 178085832 866531310 11388118 504571627 782616200 359266195 633582153 970066135 415896287 805542964 17657477 439423726 373146257 43909516 972925563 69167742 726189534 92400611 2501757 32930660 323758869 257110628 93561814 182462365 887318164 990756184 308851956 775611056 395020100 888751878 254784076 327143532 366327405 165365989 593505008 930812575 677025939 261936791 484862954 214130272 844647213 668017507 81353448 853276626 759714639 533857513 956372679 480178327 493559863 747838627 146726891 909931033 959372518 144854047 195854451 739812185 707140893 123110367 712371717 283212270 240347866 552543461 80205408 273124165 680288354 770273802 752476841 711158121 210649261 11918458 240544492 211786835 836071343 404199782 233581006 249871324 163960379 483090747 528313550 891262706 472676856 199966620 857934427 928533974 846797657 587268818 967283215 571343791 308144048 646941238 7385206 585950579 365065994 81621397 562295764 121954505 470695275 958736246 965421877 665206938 128648976 711703684 582943111 278942320 885814865 913187698 869801687 897728805 151295590 277298553 603853909 517438502 980289950 211895069 431550232 328432997 643564136 271049151 5254888 750106281 161061795 688856696 68042184 445396898 723805838 866965856 35143494 380727836 503682955 944665575 352766252 196051596 780784825 109323667 795514612 114292573 516452322 569835231 948132724 286242309 728386039 138345388 616519438 202032357 886758524 559494859 142592413 699133837 109969714 131926900 160227085 353950040 547347174 398296748 334258491 736267595 402266693 619838173 555108990 870247895 454785627 89205696 52215976 284222389 36146480 60101139 560705658 550736414 329407071 50553169 424965995 218956975 207796069 745452962 753698951 837288460 622680547 813432074 854585564 898657452 583636759 37276227 66356638 544831343 697466895 663305637 826394833 7817019 365074828 279613562 618551034 139436710 510127594 99225065 978896308 571994368 735109865 889154498 430682245 311552091 862162181 354224950 694729652 881665649 160699520 893544906 980457637 221880271 85347815 705077266 636432603 834338613 248786445 619829943 162467582 41491604 172688080 886224871 734597289 578328314 750985839 119967646 118374523 449809558 261580920 750906771 591621713 215314050 226883434 943763600 144588435 455870148 683199981 808267901 39094460 109677647 764418645 25604825 834245185 103923143 323530848 61357926 481983944 446153509 92183934 790823635 77981578 994101330 227076265 47609875 776342638 266501357 406340492 951497244 196086013 461298652 865681682 93921614 721203744 127154800 615085000 825697525 746732041 785745933 204655511 927148323 315468394 98035986 887005977 116882875 623349493 969883184 861021384 347814540 534948620 472694360 623360597 376958158 351492544 293027437 989855903 511377735 958220439 489774684 240969510 844599507 96715120 960565328 991337727 897810321 435895337 421361179 384363610 233193193 321522606 896172365 342381114 640310102 700460808 864810848 341774449 448985090 937251214 135484330 551753709 982550442 132346442 911461216 679344229 841957683 459325869 563516807 395798418 991997827 675905603 422249615 345794841 948242806 79304517 990154267 620959441 861717458 924547924 949009740 240571467 505326795 459882023 738533674 144792266 418101868 112110915 706878937 759974061 534919648 768366675 551722466 983198728 638015670 534563336 780130992 254146809 665925714 234332093 748776306 403484031 55719970 904391338 569466785 7343131 26675461 716309495 524575521 688634299 952226644 92446335 49404795 472762505 110047092 413559417 402400675 24864475 667171297 665893831 335998227 525183566 617675735 290187440 235488019 584938496 538425591 427868404 242256009 542795680 689566718 514082969 835293919 966795859 123069073 375281928 584293050 992751858 862718422 716437140 671259418 157700285 621132988 344066273 918007490 780587866 855871073 770951614 54865707 831435818 80551221 580274894 163688559 50965661 55354835 890893136 681551400 580124873 848817393 660095531 849780616 12337876 248097340 834613647 28084110 961845093 12805614 860265115 664171670 798580724 887804919 512987366 753563959 134836543 455304711 361433105 165687810 29857910 560332127 957857017 749884305 824378480 404117922 479123046 750724786 100602686 598525574 990970315 436137359 811950777 564807559 73370868 558394073 891779746 724576659 813781003 214226801 215885612 706693583 974891325 709982070 35162241 524198043 441342485 333695314 732183304 746639564 623868370 185982406 835774229 555800203 733705742 596073143 807364757 924996603 255825548 733873317 424439297 419943794 978847994 902620152 620433350 303744948 697288618 851112467 16390266 837805503 814192817 67132923 407781874 528610762 486760 417105955 597129827 649054810 249443977 715958067 976936523 317395873 367130394 297798950 566015185 147129322 116775644 361839738 99008695 399326017 536994412 313127642 233078491 626971431 987968018 998916440 782833778 347657450 287596901 891578701 310929529 471181406 662775524 304230407 347402564 672978841 925021299 62922917 204543720 562694599 710029024 99694793 383222626 916814890 728978116 179564608 47722753 972616912 216513996 552033893 363270713 924645430 739391413 290393543 353721191 588629270 594621670 149869266 562132844 569761779 323626424 276326180 565808221 52550631 539626932 209680334 437581361 315727442 879510706 184006752 782207641 876028899 457681828 431191117 78113962 503916926 691093858 402415277 756136227 844684672 417183580 294922402 351666661 572258718 737678845 645279085 49610873 515517454 958162658 870768837 503850666 503108178 624149047 41681191 497121531 507656164 321578870 733356980 610798365 792554248 33159204 695543665 292224443 721467369 708723036 617070678 273695286 142540574 954789926 227015875 480387301 741200043 986731725 967863659 753384900 108346449 660843077 35643415 886316683 418721430 87739811 743409356 158385804 224794320 995836458 266903663 922603951 225188984 285676810 62138666 566507597 575537123 606689811 131718328 141319341 692220354 465920303 42319856 22877037 718643079 523062022 833119047 517259732 191119618 860582205 725901230 252581293 335568023 647492610 959587328 738390829 362318522 838148569 735534444 414511980 667627231 217091563 810693682 748282923 656784875 695261592 11794619 416841226 676351008 31972993 440352078 755346631 871128629 293848288 821306895 541306714 541302904 233970519 157862089 375429015 816889596 417539429 725744164 808876273 461404476 238436626 4725365 804015736 996572980 217973468 263610937 452418841 730208500 204982611 851018942 766368995 762068366 480659542 772857031 705761746 639699829 695514709 491575964 985072487 281944638 155418282 229434440 434153287 264440301 363479533 279324434 254358398 849460313 940844842 192322515 93718085 431402627 564972444 606938506 874137439 937166899 601236126 464709404 622286996 548125365 464815898 268455934 193730 789563229 576116334 38233397 110449095 499005450 971016543 406157767 944861180 370081142 16681354 297382955 976751823 107558715 865479165 901748821 764349405 424495502 699382238 294951892 840453478 498759570 160723295 940549690 827061432 770663900 623444772 986668147 227662161 726460864 915030760 309460592 483938804 29062986 303451031 203718009 999028994 715564998 944281806 450861874 132599636 648264352 943115444 820554375 734656137 805106405 551122686 602278326 659463513 542856844 17794336 817779546 173212999 116260345 867915362 153977678 482755802 108843680 348569801 147561581 295415693 367035574 694693170 974151696 237766801 737385102 22847960 553197426 513757045 572127844 618279033 887177376 510739757 909084062 733904150 517574346 570946813 842651950 807540337 579821676 569600171 168272004 806176434 804876271 182124777 588316954 868663004 206752374 60665596 826302374 477173998 279776696 983261867 118475254 201125448 935323140 746126706 458432633 207960965 659648174 633006082 869533876 333182588 363836401 408859634 178088335 99247170 721248459 163114818 238404540 448256931 207316247 860651531 74527592 882310675 644091951 347397979 88533414 716008985 945374382 33768816 917847625 10762762 76654391 854091760 949485536 433831752 704856207 290333203 239859981 242625123 981572827 431916958 524983384 213373509 396876656 390411084 688461943 10201877 828052718 750341186 527364455 909467483 269535633 162091550 440684610 758826191 221227044 240448318 518347519 170077722 37340237 733735095 234763984 623929885 531674234 40332285 590690774 755064590 672834320 47274316 75019731 461341651 515450131 445383131 366398259 303101031 812900621 341792653 301895484 513653133 336179698 201156922 227663614 969055508 409597122 626913652 757572262 556911154 937184891 885061774 922006253 991966574 119670246 934964569 580095430 139640140 501587212 354685846 340935913 672863784 19919752 231047091 119174440 923546689 963442973 552547797 829288752 500070555 623223706 304588680 246361225 29334345 228007416 546919579 715169220 721274328 12561659 567360536 496753737 509427773 51398296 959780178 51037229 92786381 602611740 704519087 675016986 406411946 597191912 476814339 253657844 913199245 55475065 344323665 52300886 936360756 525808881 329367222 351117105 71257060 823346352 703105978 382388451 147167487 487422654 42517554 449224734 898667523 256650609 492165631 513122262 122147681 259751238 374457091 224029900 492402569 817597277 223517619 393542452 408413973 911570383 251955385 554715692 437654903 119549108 38911333 326274075 663893259 854982955 705053732 314399502 977436459 320198914 718818241 833539 988858389 251904179 223630119 299537160 205095780 477630389 606276127 92037939 651488048 329108839 607229461 326589046 674060196 826801450 49561550 747688281 180569291 615905940 930122832 84612064 311006007 289656043 307117234 166375408 606137775 696459804 692653457 692879797 318266684 56704056 346649828 348285444 989279227 522545033 844136613 619993960 626985379 363677950 138075057 381453295 657872689 695437235 795457776 104809627 721576262 728907235 431522824 579453092 429174339 271847283 614478222 905742562 96594833 155541093 560029054 585608886 931757973 771972207 732809303 569478407 217407429 286688001 108776076 610793514 311376947 725174256 745451755 731813463 756225626 670275043 377304509 396494077 173873017 358680661 742163338 274201195 929461498 969464509 39344150 992116572 125085343 994567890 532400242 490022984 983918835 641660747 91617606 553071023 711116941 912322890 503088647 366138596 283117140 870457353 49669677 761955418 33180166 562559282 202752361 688116914 152343669 936639856 229858296 57382565 89363710 991253910 115724702 330452935 602486044 870559102 69757682 817458041 662905798 650477836 633050081 503731977 499785662 123409427 620168197 144081593 134818577 581390319 361737335 415411655 278940345 132802144 640127308 721920263 447134460 292257159 948311948 188497190 114973447 775052926 888272815 784780459 597150476 43906982 15996760 650950165 86346635 451259084 939760922 132039291 238033395 65431755 683058674 893245623 81217453 514267132 949615338 119782648 597205856 421821896 48148563 235826296 169836890 952357812 861760341 280646605 840555465 540955979 149709734 383638673 428688355 836021721 357662786 886072492 226763624 23244129 410467749 17711340 110443843 530260863 494221293 65342751 509758185 830994144 467735468 320281638 412719803 275652943 237749257 740423308 778985304 285396891 321521392 731052016 286430824 418242316 495369922 393165867 657971575 695551472 164058994 291615954 499516665 612750957 526770819 337680188 57733644 544824451 915232550 218573246 282359209 945727858 196067757 227558019 57220971 464903655 801178244 693209062 431833782 793684997 113388995 871076449 510898081 167034661 314260892 897441072 727643041 308113241 520059641 750965421 759713339 404904792 218822161 59083092 888456637 67190141 334870197 483287270 421620360 993179731 427233285 73166411 157030397 364642786 276302803 486699153 26578928 890746907 890847322 197253140 661912095 682077518 896199035 839338057 274029501 996451737 248754768 678332396 948856559 47550787 537012683 238313399 906401320 217285184 584015529 449495729 781648855 316456701 674316034 278055556 402862896 323002754 852571862 875332263 121824231 386903853 877208036 646129094 541141640 372887230 539686610 176992700 295626442 859869116 507361533 518511914 340372345 3775322 56218836 627650730 396898429 779597603 676095700 808049687 789782944 478431947 533143357 773855588 194156461 438123049 822843903 474396251 788888006 681235147 595524782 944882592 725961284 893328111 660418516 889266994 215471397 102865090 754126175 665002586 725644483 947795897 764729392 970193650 834976759 976931490 79974502 409794880 605208167 722604052 950232434 968798590 971676824 846314200 999201005 845210526 634963798 173944648 841851898 881963328 50832022 12503636 304565735 334656496 650578189 245679347 531808699 498802032 479379879 775439676 497068164 351439765 366287183 229617051 184784917 445605692 491442119 537308494 308298556 703696133 720933390 346224688 140070298 829953388 534856285 678852729 586517231 543454469 71814887 35721791 275087575 227069511 677968096 441593952 380746083 382761388 613204401 939108876 423609866 247528757 872507181 22997619 179543832 926109974 129532239 604315060 680576052 812392488 70717430 251878790 56298142 387597876 215608583 184271477 449605187 120064761 637616819 329496351 755247147 794690928 871591862 550360529 266289071 156663346 880387585 187726249 545051315 857233630 369551209 957343994 790356784 253316029 848994360 266497339 166020717 787704579 573287005 994238959 220342504 323163953 994708395 435224069 357475359 718648415 673648244 601626192 192386541 629890294 424456430 709065479 823589207 87314122 958876343 537013974 370542754 945599299 775323268 298608481 271824014 311612085 152750135 6090839 43549609 183927099 546596033 146591680 644666347 602707814 635336582 368104385 837136532 131470007 652389396 148141689 625097609 914259624 927795590 269676721 943016664 41677661 38444198 10665517 684815568 79566949 660706701 982592933 207931474 441773673 171192681 317793581 799993648 893595035 96237954 69710306 87417862 214852144 389308810 221722031 474804180 215579311 696833925 428225584 638207564 159782029 38161230 743775899 626687139 728059046 598518109 685818551 182654513 514644069 966687431 416271901 785480069 479643502 660845666 6427873 845152380 684954611 589083485 931452251 781481972 336870042 81257835 384589506 650974796 664626372 696621064 393043453 917224704 9930778 218132963 301951504 425411227 130127233 932040285 346487823 474232844 525234129 103444928 570823174 269477115 1108294 291868737 211115579 897016332 435888223 506722328 296555152 537818302 438985622 701608912 174205368 817193009 176706750 953003941 957101764 886605379 653509917 725495850 867263404 7115049 288386395 970615700 119619581 631069581 141413540 850575651 616486383 395319594 791460496 778923324 985051650 808298562 914986807 972559881 558574375 79849243 878824186 163550546 481435476 261590039 884998510 983443127 780064845 305753417 450660587 835284960 933508613 852459426 910442712 622648988 992678260 43284512 82006267 844926968 261174636 645064150 516610439 494303868 161327610 374237697 70307924 695053150 875690982 780416224 89956457 999187247 419945770 614836743 563128358 2020974 584517295 150724700 569268393 212103823 630167033 72417567 210986513 201389786 58380320 299424800 116763148 69332081 213738892 561465473 40754108 420744418 688172872 841525832 474504125 169094546 846406478 937929058 589812968 30544824 678527633 87395004 756306055 369105366 355451973 82487491 784193577 124155529 395838430 137140538 64755437 427031464 64102667 237209546 259699116 937855917 891565708 873136834 547032004 964705922 423931123 824000522 593208395 883237583 103276146 382562762 750018722 476381727 78378059 567089024 252308417 68945212 886703234 684575844 129225311 340587489 801719086 168921743 78697209 365794721 690988825 433657885 37811009 234816355 947887966 765800003 31595462 44953333 940871999 96703507 846393055 588719300 457804596 818869552 454618413 531263725 743973282 292537247 238530973 504824467 492386355 538941094 145482000 832696572 586552028 663106994 151526102 217833629 669534178 7772163 671287578 577645543 483469442 668198938 54968995 163612459 637694211 24207382 113091862 372223880 942556408 152883607 838993906 927206012 106488215 785725920 571480313 66196088 338254022 774136109 270601348 454375470 750958444 580608655 706023991 809081719 219133872 350037625 962430844 890346117 817498934 631067883 159472402 512379485 300913694 902534033 538142205 169353028 271499535 716137611 151040014 630393256 746046830 204509996 258002231 424462381 463175141 850253692 441537447 605386339 858001759 735098283 915746126 56634328 794734475 601482675 206181229 972957208 591244413 621752833 198717990 425633567 34411443 613387767 733879639 249937200 77279102 703678046 586076781 248468960 973069803 993669740 761527556 956866395 114975006 487003544 470532578 173208235 616650436 977080618 346392636 944040371 26418814 283178002 837124356 498124635 710186509 45137105 558312515 583124604 380202622 111543305 302967335 996848003 560063693 356183124 360833175 506425870 85041412 465876369 317642628 610359526 211765752 606715981 523743229 858922310 450484752 532073450 65171264 799561343 389833010 97043074 391627111 287116337 586869570 320172045 75860073 342786245 752759568 560856581 222352699 965351927 329930064 883313846 605540705 391190765 352185622 24604118 826326761 916098866 320005773 938519259 421969805 726985488 764632179 618701644 949965580 898102938 795635306 282302086 56709066 839772438 290532864 504576268 43302529 181993071 986691159 651105806 719409936 141073197 597087689 722786949 756258099 384333878 754790226 529911165 858694214 185146433 135134398 3546710 229923566 651804784 516303914 841971389 695647749 198684150 136807920 873333775 393212070 892639017 696870589 399393511 748333979 603110285 376120339 303015915 521240793 688413547 131145365 373965455 693070217 325493924 279678549 688498814 731792078 827430154 586162119 918759188 93797192 786331379 784609340 648414435 579209193 667036283 94411108 979260684 894522257 98795847 156181576 318990562 300177523 262191842 102512063 574623715 750445141 348567309 861285023 913910783 749343014 51638888 255655669 391537992 771486901 960524944 319098869 122033558 281873348 82497304 933341097 844463982 855814470 614111900 209475634 711246972 587996895 213874330 687722577 517629549 227330655 385478363 922518562 847106990 921224380 167861580 273378860 30927679 788054933 54520808 686643129 867930527 171485406 583952520 852644446 985927131 574090854 826362362 507557241 574412005 330090377 983822120 452937239 644938491 881608880 397189590 334903845 773223747 763453042 928006675 66653053 274556709 59616110 965950733 22202833 645189924 801576006 549095910 210908148 970329127 755450423 373899745 979428642 188234475 651715318 566577487 651196297 902068914 608431822 887777231 977610667 882418883 76874591 794354103 513138827 225205203 649376424 369601186 34272135 753613233 754563813 503711390 822347252 724835654 406115611 230282340 912181323 218794568 285206647 823565590 103189048 115957337 661142238 298541583 112270789 645737827 765246271 177818369 15808002 357691215 48582504 515872940 284734438 16957711 528139767 231058207 15083608 160894545 995084423 341479433 223598292 268302799 167907296 800956556 89291751 731144856 411593930 310776553 425595767 926916030 16001406 962325565 740196423 291104573 325877167 562579371 311964880 702315959 511857877 928406486 449738549 322035508 469115471 643493817 927501249 305497023 632035509 622232630 24304743 82613290 776734529 296846236 98811810 729318578 485302975 998563807 108686095 817706338 919161359 623410113 322472780 940135483 106138126 961505301 15475277 124947842 96476715 207186975 632331961 583930864 303922549 748823402 817959689 546582031 397721302 443915624 263541128 742511079 488864031 462943991 525265344 66136366 108109530 938280819 689398215 510106566 127149277 113426250 52051573 284936801 398101055 716521614 370635675 374101155 1050872 1367374 525723538 543110678 544276677 204449930 502271305 645675108 574889524 996393391 308441829 759472660 434012533 521091999 384101898 670075457 497007289 459727555 928808676 736164662 190020397 506237758 731832987 610590389 737099064 772780832 299903065 241652880 689898906 465990971 150925860 456099971 20492985 415273720 990036680 515312389 798318891 651439946 363981838 304109814 203839622 519914992 278027513 838969561 748356186 621699065 224992257 210459621 858569548 373779994 767352833 644460196 678308680 243547866 451436262 746783527 583580299 935937112 386136815 706284628 679573168 872477366 336993812 428713185 490291105 86532009 159289363 559810641 847839683 591213678 641174747 58268107 193331671 238055754 239607551 526365116 611946503 501566595 892320312 955505614 704871427 768613880 913349231 617247120 282792712 315305877 776587040 310681151 49906600 722369637 674603817 946998768 516857421 206982968 575148186 801773061 419114223 533711753 913813343 205917076 731748437 794467036 652420950 537660067 569013823 918938319 473589716 728317905 456206397 320609557 431088396 201173719 282811268 939381303 767668327 455281867 62877279 514891375 360353054 838773822 867772617 656426206 279024706 854748584 351747664 532534926 591315288 604395204 833520470 931167037 887672470 25746405 207577760 917240210 130323663 145677414 631787530 36761521 27873135 85751232 777974298 478689013 495179538 621518827 415470179 293540693 566385170 667774646 114290013 885538873 377676090 130136134 375264239 961968287 580430252 782524000 193679674 18921705 471397635 134258814 674609970 830860893 97119507 197494752 489219634 133438455 23339184 683552083 248567001 337620826 244585457 351689162 385285471 884043109 271105854 414824742 592578765 549314903 878658723 601795883 613421838 3186256 173565503 980173065 766822941 774560975 851078253 856984723 949610216 726826423 44903620 260491767 918930207 721089944 955292866 10584130 907298343 413074348 855127978 689515959 851232583 690870111 82741916 712836839 703829319 233005248 621613309 658521609 662015477 160540862 64431358 783983535 302218936 301314703 959829189 68225129 656407288 717658538 988366752 53498548 943508713 722509356 26568985 73341682 243400415 986475428 816225543 832188317 336967387 634915588 99279469 41493775 270467374 91566998 121447505 433467855 774989473 131113281 843968956 244097739 452910392 889235700 43920147 417022882 174649320 13923487 132622805 349298111 409791021 437056007 221586927 263756139 766691728 446900178 158663417 247319976 650140681 263313078 194078264 261757518 214489861 992144712 363348298 128979223 216640596 394840005 617744024 80884787 845402271 898499056 79740254 20103268 480109813 803882085 498786762 65159929 821551357 425346133 228776615 26541457 565033625 65664136 497409628 321326462 266571230 206442053 432409659 794302146 290009879 548749941 913354612 31233318 946491457 942150069 628423783 137506043 703910636 845009941 143019619 155030286 775179022 544225046 651447982 620632770 298131649 774000490 192974993 650664271 443598493 41731222 193191667 931513575 278791240 521688079 477552428 359345116 415693162 887620947 45782204 848071071 578825241 433807432 595084951 765062690 829233850 80511953 967620149 654487245 757639350 526913800 623499053 220633117 921996721 999711611 108730022 890410479 467968182 263764220 731940196 803541659 568305119 843568859 423440895 547426729 574098654 892949803 976961944 987004247 101766461 12606640 986742097 978248381 428050312 377570810 772225124 139399618 982585845 532226033 71288771 824828733 212265783 203742544 895699562 414254603 834057765 32022966 598150692 526845505 401810611 786208629 424163980 229354566 677991503 305961369 430695935 321967910 880266972 54537804 38004799 530955845 484635864 830443602 53912166 464182014 945861730 409982986 510720051 73098449 963810688 696564315 529499677 901120226 854441174 983000663 168717491 290498120 452053358 626098163 480698860 538024901 314642288 870623763 978368256 440797084 901155338 365348737 96140602 235183711 154583335 755924263 998297469 615360059 851944244 184646101 418282330 380864671 232721047 741940670 392178838 181091540 374578548 545564219 898460322 427933314 78614881 284356224 474006952 423184237 256346779 923297293 201347654 154705223 626965293 186757967 443535236 302265405 388269785 87437566 241107683 128915814 463373286 938428859 975674803 913455214 73234618 431311283 671478613 511590088 745226705 373206781 457333214 551057964 448189529 586227584 879702607 636619311 774354601 715298614 427559378 550991921 703476031 832243658 988880414 924486652 81140900 196073464 270633156 811486897 688694465 92089391 811331815 350000813 436513987 650515508 102237192 633131205 291691872 672880728 151719044 81061201 617658373 936546874 194038532 510163883 145588524 902974276 690007931 551547821 34214699 720604210 75613574 316959076 516217750 474856057 240418165 904775024 886128143 258558145 581520662 881485226 376698981 795962144 546453184 678895444 801071187 883743029 848486389 418852939 238491407 77098899 231254521 638645363 715481496 949233357 663314974 303946656 525994187 870581923 92083076 70417129 267119844 833164842 100909381 713441193 21597528 485988784 336627152 718125724 878574713 561002936 283802364 453152118 940289098 866454704 380172725 361230570 171278748 275673914 296376559 937543564 70119818 511280720 105859606 33930606 278292807 864978261 216413855 539600948 373108992 141761527 134784190 731743652 582338599 671868191 648161188 408443008 805138993 808673754 148898407 126842378 691231447 843953697 195995966 930922062 770112479 185812016 654088929 739443410 4552775 83567046 317553822 767542271 723431926 829970798 116910571 124646410 482431472 872828427 451537494 275133767 607299000 259533967 795860964 336371568 711968627 773631611 624817410 356142179 627595959 704316283 664002901 96957316 749276195 902064136 503334110 453190912 869940012 336549525 618585952 891807330 490901965 700212833 637387241 75076350 335583590 449066341 714802281 198711454 684116422 700830891 780830055 516534599 819559687 973515950 868510372 813976562 719198307 651940018 326984133 875829164 396074854 642434696 713509487 113377416 153947817 492568040 160462927 465679569 284466026 395983489 918532081 577449121 769811330 506934223 365120477 41402334 242914882 141889942 711211180 845531239 980162837 792976820 851807919 298909340 407312715 864969088 296549518 434728405 356508928 644091591 737104944 908682413 548308409 333401905 188130991 534383634 866769511 404003550 37894501 473141415 176232872 420297782 881225240 154753618 990884972 4110572 394915201 641533660 919802823 628811406 86748148 352735003 449869378 504321344 279251736 846392668 545911271 939700909 4272972 371432252 782318604 826064972 261584527 95755659 72199984 317810608 486572130 685593511 189512633 463057950 145620951 181656474 499939757 101640458 693032792 385496977 936888841 252397398 182854992 895090513 179076967 238834053 204188748 964891344 307740286 747632822 284364265 111901668 757848827 549106122 909956986 610959703 983756657 383699555 352198722 714515100 7234797 232473447 900733066 720945720 795362539 186198154 162063864 652681789 787056648 409176613 740976346 694972418 763627695 185057054 883432593 203152935 500548752 745463925 195204527 437005592 978558561 724860807 72791861 270382035 82281386 581665985 201775263 429627628 998921825 885482422 678012228 626691182 327986529 112419724 706325786 254835418 953290934 930807215 797011628 875964631 968879615 156200761 38063753 698734048 714890680 384516898 858671943 545391418 902497055 172255867 343502865 428748154 333003912 502029310 157795104 942707668 646781329 797759048 220473160 887710827 11039865 311039433 123612399 336148118 579994065 595255154 44443142 640670048 204958449 789041589 166032261 813326830 137856529 141016073 848389086 330240388 16165611 107425235 311228527 592408543 358398851 593479692 792504712 296732923 734120757 476113313 172546868 456581528 701462055 228114637 563494643 231049964 121726712 413682536 329994255 902102931 577555891 47728027 773883016 323771808 13652841 903341579 469879833 418365605 888952626 940556506 112314638 352214374 123671184 358511324 742971446 67697136 420664862 718297432 49040137 167463356 52784671 60942470 954257446 549818520 132370091 487487320 577004351 494999981 226866755 962765904 673240705 233001692 251875372 57994434 802940139 421549059 574407816 962393162 390645286 396956825 861119334 758306564 809688490 120738391 209843171 558038863 445562759 220177787 573588931 489246278 35208032 736802252 555850863 12902171 532489813 782621086 128661054 276570010 989090706 263606671 779511255 271086452 99276304 283150379 17688707 330858616 656079930 389014972 562929930 727950385 991670950 144296902 602949127 459043664 736886731 712874892 238585751 338111939 89894422 58267857 401563352 379377282 438500858 967390046 77351562 67854975 227555564 789355201 135904107 889562403 859719757 919093620 659883895 484033074 243538453 75497146 974290303 610356926 702847390 63588208 251021242 84743234 399931293 878878383 404280573 228758888 964811464 540493520 621576893 256258724 148170125 928652890 202534140 305281030 825226895 39761576 424326429 478962747 112735426 253106926 989380829 5699920 261828628 487695503 540935144 537240933 419234372 99802853 750253890 148145524 635079284 734278245 412385249 946453851 175692191 23688632 172365139 986963387 621337226 328042671 721398364 274400101 282673048 969746207 978431794 533389806 759873004 566732726 432371826 318527541 697741771 968070297 141406446 488786058 834906167 234680446 567852926 435223885 997832211 284022274 508072492 404331558 531093705 924317896 315611121 259255471 665838704 202703423 638369113 833352815 502034678 892478108 323511793 85696727 803105901 6506573 916151578 107701166 914600001 856822758 229308821 921333227 852743842 449725777 120857243 677950734 134109881 588385891 338628296 172661464 161617922 939354725 623846365 76555107 969736884 277654522 433417975 993394120 43372253 115686642 132933716 249728591 387762245 131836634 600088295 920713816 250927787 841299861 951373939 771404887 945122080 146310410 469809559 138720148 641512634 459726046 964041251 644514617 686062904 464667765 101068067 545780732 465126119 984891809 244070467 864670798 674850324 979769394 410618078 811800211 391622129 751511486 395560064 457442468 727468192 584915243 757660602 371134711 351190002 738671219 105021606 401963929 438408191 638808359 22487521 217758355 401497348 760624304 577900399 744990281 671637390 667422151 340991942 203282714 242584333 738322219 817389640 967394169 627159125 315999407 97151039 689302951 462404098 589810394 398688722 941997074 573944477 940822767 585868865 993400280 862532157 76829424 918249195 34398101 821450342 170062296 485637817 730922933 712747690 654607275 281543145 850374092 989130915 383187517 526984709 1090470 710344960 910394373 859986860 711720671 240421914 844395526 373233338 265052582 59709296 933454744 655779565 265988042 842208788 544591835 971131193 800635623 492615570 676943832 235955275 450419916 367749639 139847647 6563208 259371140 771018269 891586243 852313120 704340423 523409026 675039441 863701799 233813637 899849303 462643700 379089344 520268370 699699629 31436452 537281628 151983712 273643577 228611588 317855559 691660066 733289291 517182701 349036609 876195683 958385359 608665955 19432159 5345149 355236487 767851910 958967157 73742131 856971063 373130014 203710404 569214319 701560255 816631301 215124958 48431295 511928891 111809606 695486835 922096557 466507816 504027513 929896081 952482615 267262193 273418059 447324840 783416399 292650652 474131729 827683740 562510014 27201142 762908519 845745657 532393699 789739996 590785273 407382770 692986185 487665619 486114542 435132159 793119221 426902150 612364448 558259604 784371088 104817110 422942491 691181575 844222626 543590788 454298415 483206737 742126629 215285455 462766475 356133115 293916660 254163300 15826588 924397173 526366149 834219398 377889799 242453679 445215363 427537138 225603733 407502635 922759361 419868595 384203406 440402514 699109165 119264496 176910385 480074177 147816243 797323389 132699268 207113641 244201052 652068085 710620343 100226858 82123277 777774226 852823783 749348825 2568278 79758493 758897476 38293566 781910592 592140463 808398955 804129534 518768381 544303308 803396873 632723374 786039014 857517399 344415040 713285643 258588621 103203342 763241408 717726075 611183395 191992294 663307844 534874139 2587122 971670546 365221573 492628066 695063969 501680855 669234725 459217093 435521115 771107495 396594442 905677194 696175803 818114577 451441723 631383410 649015836 475825321 172727855 807326062 626817633 298164906 362393985 986567070 53564627 334063167 614697136 832111936 943634969 543116079 758666433 788899659 237033825 834523236 285697456 508427839 246909518 920287583 884579302 926673156 670213460 337146590 367132704 798978515 510411099 44023164 726342031 159715178 934021992 528504633 611302177 22521429 379599597 39281791 734712827 397628256 616533598 364556910 810237078 806762657 726432100 617591113 82217364 709244514 989125845 935093377 735185716 702271154 399576763 727856289 79854881 620237021 357079174 324500061 971923523 890591369 396713333 655780613 108540831 468041980 208006612 367785716 793875515 263591237 358663140 156145897 152233935 920913065 459097614 582745740 401513093 687286270 207989634 423006266 626412362 430379326 591463247 956420247 653357577 457559607 579261447 411236402 645372774 428687598 347074537 490611348 818034155 748834476 786270327 59157142 514110638 848288614 455227132 306964391 769076153 45518793 442613080 36883373 467913550 745841929 818858134 252934478 534656379 713980395 339961254 383754510 792876047 114787846 92833860 246688905 180769841 506487176 207546143 748542527 245143751 126128917 327480051 777343160 965623907 464979793 483100544 21337 794513217 764843471 990539567 375983795 972347189 840833649 910561378 260085389 815531707 934042794 443928041 782545065 162525742 362286287 237446464 846501065 33460628 428372679 139003238 740864613 320666021 270445965 243158924 386520095 504136126 976363001 221570064 174198858 125365893 721117425 485215496 634736630 923638462 678023958 183829081 45756361 704148223 612434777 816432628 672695285 332824860 334937288 237522577 970558543 110842098 701645666 65249877 418184114 191971425 583369824 684797096 438993546 49516079 521122575 483524171 927551138 652275369 503032468 206033124 550022283 486308856 291538480 64627011 671397066 658986655 250018203 543263745 50492188 43539987 443153944 759044141 272695424 24567789 209464664 984376954 968865268 420277963 297569690 269142108 750519904 424304816 536809627 42316282 467723772 165134930 364765669 622819580 176908079 336943513 499503428 660919623 559223128 939911572 314799652 854475077 306118274 878964611 226280009 352343310 756449068 957898273 283040399 457235052 945055801 827105309 257680465 248125482 205075253 259826818 811400374 698072649 767365380 54287124 195415346 590380031 903755595 645517636 496213059 176865043 920852487 277237223 640541750 88516835 148528273 737844812 54432326 952950128 945080726 505274408 899284729 215762215 825475533 700576866 793228823 757019271 194707643 787915622 854993429 456726257 545061719 428681611 11451473 838470526 843319666 657655617 464154772 789704663 755537924 837646073 834142446 694853975 974895416 444407 121971157 623808760 482651509 394866746 483866522 508918758 954034190 802600496 199468562 848290950 385792576 469791967 481328491 538729244 309606926 583534274 237651816 858577664 566157803 505552593 360747458 330620417 117290473 927428490 54790118 621400740 120289167 30315193 628480811 957676475 172252089 742714192 813571583 645753624 793202886 997764939 191277285 319516599 864305253 873724714 175814884 256639622 988989813 719941315 958797863 940314041 104473045 856094535 81145520 79920755 898441523 474682838 869461480 687735083 394637559 892409522 607530841 517145273 115499554 995227012 173490860 966230158 89330892 916092943 56644863 127590319 451790330 824043029 700379088 510088132 200174815 297380687 631596141 309041255 495789880 819207036 143422848 663495990 569863024 750606194 475282547 6517674 569766922 611818543 642034034 956163611 818600799 993476796 216849824 874555319 714314607 826558370 626277097 783143212 393164879 723463963 922095846 623275116 933688138 309035740 884953693 472667814 937782000 13639750 465377576 378210540 260903393 484621793 710229387 229770229 596017744 861531314 728071436 857231883 815044252 65157312 767823726 859748016 51365956 287913840 542423345 696398474 338899024 101398715 186674814 928230105 613326735 904564475 203022439 660358618 526457288 609494387 596974961 82356397 619586262 989967232 537287613 306024142 199250664 484104007 783943156 270245900 961408608 799668576 735899097 455299808 69198659 6145875 81292642 270773187 780391314 916214213 189552673 133636053 670944723 264072582 915780699 538744664 67516165 698881663 808951757 98435266 504820978 17884943 231720545 695142409 611303651 527684403 744179464 400613892 822536860 422318590 600324493 686702934 189306398 883776558 4015615 817487493 391064379 291276677 873378083 266552893 542167941 537239392 541054183 338664682 564427571 264072926 49872752 78713919 220867009 342742452 86931583 853982749 899059560 605169326 205121730 761324040 371134734 173767629 93855360 738321187 209018949 197610037 669298905 683923002 915185275 198424768 619071392 312480939 298688651 127653547 281297147 456525657 123447231 972677022 46784043 996340269 324857576 457190322 620009651 880370833 994140209 66610270 289436428 432062237 412289230 377537939 225546681 294763955 59812923 480699167 5719268 582986666 352553917 105827574 72138523 178817906 90577098 615007370 270525575 488409347 190261090 953930656 658053476 329115003 898408009 357893000 417606026 799488545 133722541 217217241 294843060 458123571 127365250 411194834 141347112 802950456 985836888 724607098 252316055 507282505 590216485 782027870 500670488 641747625 633159332 407407138 279915867 679695405 74050493 242110641 114681421 46846294 712566836 769539029 392657825 162494013 58353951 895956884 85412168 549193466 726093998 300863152 402608568 605040164 808274270 874813489 144335976 63049307 168607903 772866834 500984318 190711214 320893872 565503485 537092525 207159179 965679631 281572078 167811515 874108498 365997630 931255912 171750937 528626655 555799010 290597532 902780157 397736948 380349013 41083307 81830719 204201337 989849053 586922902 642029872 788260105 31324576 288492367 942884880 526359054 439306762 290357647 687186229 125186414 436103508 603093709 911163786 787704023 476692017 225576791 185648928 659994014 494276254 265985277 699888495 254744955 879856167 713351698 653774060 658575664 417623299 229224544 46556575 370749619 53402566 250653231 602699219 356455343 815091431 837977845 444233307 678638992 118859399 635117645 358013549 145146156 432251533 751123412 173548481 934420754 964958586 447507919 733024127 29975011 412430772 289149490 224290269 573598761 830054818 979734385 111157346 122903750 314705107 409879204 580096793 326448435 630914565 561252340 557255663 782888154 750645949 404971112 416478102 765718174 455161114 605793756 559975926 722858410 152698871 966142630 973106622 664310654 702896880 506596300 298337916 426517618 312987370 104761592 262454739 77146040 513990444 883109289 607736577 247844911 29121430 133307225 162991946 91696471 491626479 716314314 518796687 561384380 815660896 709801508 857771462 367846673 480057485 494898150 375964553 775494186 750940842 259181 47998041 117563385 895050698 959687414 891465186 305399790 511082650 648702598 221184366 867572900 941235664 297051609 878142719 158795015 20367345 337996714 235716180 975975419 23770851 253885793 743117041 311727958 994974572 574882299 736782625 66877108 789235962 965114937 870488583 457458048 481175356 558324197 775227318 214502950 768679147 886849157 896638188 620146972 405343258 706019218 61606715 753169160 240969244 85282188 724266241 584109580 606823042 604543229 469107193 209341303 81008799 992134484 389269939 363369626 743937224 606195633 26231200 759490549 31569262 180129257 135785594 160333749 890865301 159219989 167981882 203904217 398466004 352698535 971668668 324713397 253473915 908477007 252381850 958176213 104110468 902995353 38944646 634022384 39879350 18387329 625610886 669445106 129917787 59255364 968934665 430085864 863267976 135079870 916888032 149267353 327129433 949182024 486109106 123249333 812516099 726129671 788350269 589852455 34155796 73150527 95152727 927947174 824222767 700161177 861866895 596551197 774628596 456315980 475795750 371202626 436042567 123345981 735980239 894234112 461374664 388505019 903741591 441748082 180090344 534871368 211790002 976770761 559538926 668753081 145926792 534412817 894444574 952360415 998157426 957372262 573780430 853196977 957339826 114353946 428906416 759652128 80917733 129429277 880173654 381542497 293433846 6272923 459923431 840054868 399837016 574548584 449545696 826992563 232343030 726668826 27367080 660322142 816749695 325471992 690653257 435111449 976709503 315411892 67881633 692885946 503388439 895221068 956643171 531316443 137002168 908290760 87554622 993295712 277534145 795741878 538119956 710800539 931474841 530982336 654963743 173622136 611625790 723758519 628552109 445267209 344794081 945977564 934223899 315541964 858775011 145785095 271667871 964797540 956787115 932312009 367726774 874429366 702474775 586868980 208957498 372066065 596007457 638606632 769582293 705176327 981142041 644857007 539232841 348801651 515662469 376390730 769652523 665617205 111712559 958795219 548964283 118498404 574864113 401846087 131022047 372994069 713824046 738793656 403012899 615591965 407446222 469977676 390473685 816552793 53657498 343522383 708493455 463444786 804173298 74586247 154952970 600862212 659469242 614214779 752938670 753215525 624807707 422799747 288006543 149800151 486278499 215163403 298033946 515419194 564241067 42918919 100293639 604825513 485219843 942738550 274444484 958751580 629983915 267605542 460241427 558407982 971590245 874428769 979682429 705327870 748253431 763217880 85917931 98540319 665005921 276997056 197647054 33537598 438536657 809290382 899583748 122106743 115605030 973171804 865905064 648792991 580921857 840395974 613532448 169393921 928093023 484245702 52056832 288669097 622291570 227219782 507758673 827988769 871596038 710291881 782198193 820462652 160091567 90246925 991842458 102178018 410002536 778051720 762871654 900185866 316586912 333000406 823490085 415947855 386124639 499526819 638527985 702191897 643995535 565277090 976004964 218779609 695038561 897795344 684748792 932240361 473192144 125337482 508635433 832395016 35054638 850897411 980791541 872445283 220369956 103777994 350995885 714129411 198348791 674017154 642159740 870092196 460827826 569445535 143300696 229465160 258485375 760043370 950487484 988683996 260357427 612838056 143169571 384153913 549548170 533847135 273393011 784109965 475178009 34179042 61115474 975130511 799510475 367311897 538402992 406396811 405507398 875629578 279280748 58305142 343358191 359539703 936742151 706151795 43821974 647964646 605898515 850387645 707631288 480507704 262147496 689582565 606970530 932577877 961170654 874048792 816749583 295303900 930987308 81911496 907750866 326440650 522633759 749541287 567716286 248473413 310284815 173320790 223690113 409871282 3204310 742830146 723886008 775372102 573491840 398863171 91186260 111122293 798275531 287692276 4053640 473238704 591509651 560625282 406021060 774607918 83170656 408595115 843176931 432331968 500869767 612241192 215798485 360618900 75828421 510976351 933565989 54090143 553328977 881790259 885092879 103590974 319751670 746522459 11252996 529234189 884616309 652893895 335365926 212472231 706268339 111749794 164845941 340773136 470260812 156275398 449044445 944415326 288809341 492237840 56113354 438312959 547722806 878167484 820935014 12081556 690445792 356617475 101567073 417286570 142108587 497780660 180655207 575432942 951897868 439653130 743301849 515375501 495616681 766940780 884159251 448917771 239835537 186283913 66865708 931919700 861040441 250171781 206729254 238828247 679087257 665521527 784874082 555214047 440706159 279262591 267602135 684260938 82468344 97108907 864045396 86115059 837861455 514238431 550092370 696374463 967801929 576445748 936351564 97225733 691688695 966517772 546356092 288427529 283564230 332412611 916671286 972605719 452887349 277062255 419264938 702086412 107623758 804406068 779649528 125646630 760981173 140549315 352328145 428318675 782741365 522002080 674275014 683564332 975741687 786817777 903959354 533370539 804493758 207854075 989547830 508277544 493699033 278375456 946152358 223680505 139544722 274605806 752564380 250042323 798963501 734619092 110801840 619092243 531030350 254896165 968997614 252476252 122347367 127920581 150405629 748380490 960889994 194459504 271487652 445470262 958591318 206185821 239182120 325636431 65743248 846520307 122057952 200665237 151587 22057146 459210128 440708173 89247807 831028270 22635129 1282626 77946842 63640259 722533491 295940345 161573283 200480058 525380342 804389217 314370499 720749735 797757689 596513828 242509229 298646339 18258299 127514975 539641809 540771995 497255461 337349845 415305651 200151896 291936007 217618149 432166405 177014727 745805908 659222602 367992784 291599814 576268085 646353517 743184401 497337340 52157665 142822196 203583181 930236025 568646590 910037353 240809541 964534287 888010135 576446844 60853394 993640819 999404714 251361723 77503101 974616432 707809908 322695792 206665208 993269201 618484059 486728677 394258632 907161740 898247313 98135673 965782863 674605008 355352745 27994800 535840611 117933049 845241901 53270267 7213498 501927661 267940663 624145583 561018107 388896196 354641850 317450871 887781589 816982116 729772867 596728084 137545637 790934868 950614123 430400541 574347101 603033923 490386849 496973915 130738725 57681770 736520806 785905639 328519519 446541184 948364010 646976515 738241401 322430828 893493394 214853581 201443245 395417765 958978149 818348238 721724041 647580238 469053572 39372488 25680491 605737528 403671392 510636533 18361995 220875279 331300890 710088994 455977230 715369833 493337018 106645226 404363587 524028182 408998824 890207849 208475226 554790862 423521729 65422833 554502226 167972072 593754348 693724282 727732540 303101984 847951849 814097496 373449651 322169646 958677460 70572505 130817238 474478072 437550780 912588796 964535086 922805990 774070489 605762881 272084727 983494094 873425661 532364775 645668499 757544655 911087323 435729579 489247854 768853726 545191544 695492012 583222598 416435811 208390606 445314390 561384042 898585404 993182902 17635519 520383184 946516264 930321788 611019207 339380746 889868121 741492823 770333996 907476634 981480938 402798042 678810584 785574538 465967051 128269101 467582138 211660573 108024096 631679338 379636150 659108092 601412785 824664417 449717884 119923348 34864164 746392984 629510381 676177312 527351918 35385090 661659876 459254171 522393570 799649625 625220077 666066031 748075890 182246067 314527248 24364874 635349007 338612023 867676307 930641026 324468299 749623375 749009032 6138490 242702873 352509735 728199686 700953645 503283653 718204471 283436550 104910286 576983405 23210537 998897686 843956849 453423623 893704088 638059854 882471604 257929708 150356270 752746291 867569975 684493210 725341576 656256725 563849200 472421994 276452282 853652995 685105730 393602413 461576537 548735034 581618887 445464865 404598535 329770754 816177561 147308986 431751295 682085405 780513834 942808222 817853294 399638413 389210750 100790553 657537723 350798423 548619618 212624810 318336746 194260003 529815756 33980379 592098231 532971890 898984615 869852710 637375217 377855494 735236981 377182178 22772811 143091909 857614029 49388301 906490162 801539592 819826897 231073426 255252370 226705479 882996603 248128643 853091582 82725594 596989527 694423912 89494257 340441563 992656218 215341772 611664413 445482422 90038309 548040524 948933358 157938113 199243638 934103485 408677774 693393918 582126736 479930197 110764787 234147867 931375897 451318780 432396366 222378920 595655432 656308882 289123966 805261158 62636191 287337484 683503888 459445731 210660506 771643766 555924704 803800044 793757435 27058870 5102039 760511454 237533433 642509041 315764199 612174078 848228590 516804471 463571185 243823142 554140718 631561203 907705047 380226684 743851109 336875785 277847380 545100793 892091462 438509106 956662867 164296731 805166403 139785877 478772791 29658743 204300999 498353381 735705787 963874997 995328053 694961624 653129334 176082954 726386855 959633099 31839399 440167273 333487356 744532727 542173535 220012570 3740285 452340055 212312051 217846199 393604084 967290518 635472435 708774839 239120748 452256962 7208613 78617769 428840435 16566084 142773640 39995029 505034573 155735392 747210838 216840850 305164287 569174687 731514706 555111876 642835941 255516216 922431028 398507843 274962967 734097970 890145215 815558503 539599039 783298202 780111454 154631191 977993092 475773683 539397474 67049466 545534848 634340014 85980499 246025181 537593082 243175059 190686175 859494335 341956565 276886570 423081343 236421059 673407471 640455723 570073700 64993228 534886911 490252073 695914353 50566452 489185896 291165304 966338683 636481962 966829140 251021627 966080805 631442797 724075845 444604196 369681260 546874112 902537522 56701471 521007886 528427124 759977472 307718710 129414219 982634871 948956179 211292077 721135373 475852848 899392651 591183441 41990449 533009223 463241715 29017901 526439465 395741626 505180892 147771903 125845030 314906111 819937901 250234923 656266822 589743407 248130793 827183899 693070186 945420809 487126082 295216637 4746128 323047682 891904308 576780920 908314478 594844719 796228658 46859731 420665967 694710492 15982940 176671240 951565653 867461437 123094352 750725179 934665613 293349618 93233317 652363108 676573238 74925183 925685604 875070394 586611644 933373448 22101731 372158986 701513833 899274432 440399837 703134680 689883313 797946839 860075800 593607231 656532588 797027579 531941006 630878857 651559987 950982604 241792555 824492014 291517638 858095603 114417730 342821120 582910184 615808901 507760342 267068386 85047104 591705616 499307941 91786941 799711584 783151076 268581560 737675954 892668854 904371758 31109300 378628291 583075999 696614302 657149959 801603490 275304175 609073872 572191473 88497446 143851491 744988735 526327119 914657826 546892870 162208064 610389599 464037084 321937074 787091258 59608551 525990793 906109092 385136358 599988751 702106883 135088648 135047244 254631190 460771099 791797595 917361836 862053487 849099996 253375459 399465715 405031698 589846548 659243600 7309402 388813612 261098336 766411043 223729781 669876920 839502959 20031053 520724719 821240471 669739139 869683455 724027323 29597006 990053376 538406275 828233762 128206980 15825713 609094043 572151220 877236180 474357272 568739893 830593775 666439639 497225926 923762545 805481482 112642296 781349013 480288880 345257131 129231534 716152424 306127119 492726721 888482492 206444846 213733376 781528794 349033126 322193353 486589211 913091051 888321881 749581832 855122188 135939299 771940998 947251058 931067132 457227144 850281682 745295153 13706200 866311844 436205335 733113418 385202069 908913949 760099877 513850186 410524665 709933069 525397726 476374225 279062163 827937687 308530109 202044867 849337442 415625552 148629050 861592274 475535022 693284468 701774076 702529089 982108568 845735193 948022660 235132232 105604570 996153926 887291314 539534810 375194400 656641615 280952572 277990606 804629037 141602650 887706929 43080312 915235643 39512346 518998382 699016135 41098801 988686902 88469774 601023845 696646401 349814480 287575415 811699528 876409833 917187997 418864063 146299395 824792442 380357710 449454933 971693203 401603052 223081200 698633025 58895789 779100904 331590066 349302145 904121675 92864502 123041111 547825062 839453021 770650889 715812068 765331962 854264770 970593926 521668298 572552298 739900930 28107269 273696619 419758984 107858361 818012527 41727926 124306800 608440607 229184411 352094537 897945271 840869509 132239714 465726374 626715431 926946453 277854209 968351504 935964275 83380254 412182310 142296873 289349756 463080618 213705140 919116558 404723145 156905954 963580543 560021155 926620648 908718341 405542253 678930461 248091291 137941476 309294853 191137323 375327137 345209282 865513400 636856889 845096737 275564196 371491476 375693074 738239255 511083209 340928993 888351789 902110039 61125164 610609483 922242207 415643350 657652667 568573050 188217917 759920154 565602735 380371772 806097263 210414903 449099320 772132143 653751888 334487234 880327927 459504031 48651247 875725229 201366103 79020159 725846050 336783021 523953426 296889327 693142668 107950416 638565949 107442252 237731911 436605789 657483380 428155705 476839162 994736359 116075239 239962505 416305303 20906369 407015686 961960015 692335250 13036221 550480754 895796906 524816289 239278465 656384390 181648019 22086369 598879735 250699522 386104515 295208131 433325043 706938734 771168296 457925846 405732725 438690103 652973856 712961158 580166685 443998552 362028268 870879875 438835407 476863995 484218351 779781431 475605706 494880992 226883261 846566613 360099643 449264328 168906699 401006784 283353717 292036321 517046523 892524406 367435726 460922896 964185322 213351759 880236158 314590448 681069449 470462488 470218324 870398107 618004863 326750479 938755676 196932301 477285025 873801751 863673850 907297714 712599582 336500913 877191441 909320798 70046142 383343729 525992764 489048470 728397851 346956942 899485024 608947060 806085699 413599384 798873490 520468842 74210380 407092814 345863553 388052621 181577462 115956864 692434924 383889272 569391392 510230480 566261929 588632114 542864743 482078303 219859619 263627201 749081468 228238389 136718136 242697885 31398182 20312018 111519679 136352688 428942952 272416877 554508303 747979425 600860217 202387665 990536975 243015043 657029997 814655527 981652502 61348259 189885611 765550830 718788944 981375706 780400107 681660892 677561436 405368473 653658833 867533638 22083031 189664105 354892096 205179593 702806560 371434188 192157833 755626948 384015668 132598775 233589690 417966525 716742667 313909200 424189156 649325223 192082202 394104647 365858241 188005337 219076291 546174192 22603639 857236963 826463148 816963472 448583344 98051978 228016728 650218325 884841712 718359194 227136392 399236853 632174209 150673882 837895403 224605554 399660748 478038906 171654467 352379198 619762556 722013380 188044695 517204032 963186577 65856391 739139493 125450362 393138832 45258145 565063255 93038552 412606816 338064419 604484148 890082066 965446970 701379140 655657290 839728478 594785108 742294153 836678924 735165315 385823726 214671819 497181463 710143887 526231118 140077534 203342975 781659203 626314031 803040685 911198574 55121888 941517581 158864361 916358612 407240978 265051619 413734308 842131169 76617691 992115330 90045120 734735529 592692361 635178289 68511374 699631644 943158814 258165252 829830078 632417509 306151582 303552580 848341881 94413006 261949647 495723452 217411592 610163171 945286192 566966923 348935410 745775639 343953833 715002683 412676268 71071795 930721103 67760525 454654055 12148649 20996896 820492281 466733127 29318541 241715493 450022965 809498681 959549213 923331905 419021105 274531357 290673712 521367271 35757768 90736488 419195453 676732566 624157505 569598609 202525270 301455305 593900904 288548491 530841972 439517826 128785517 917405792 665980979 518028767 488111367 900439104 195284091 442356256 790825533 705692142 643378460 242070681 590779409 265964002 285486586 323155474 634626275 7680822 900744657 588786724 969469318 333608060 266976900 588600500 996188055 369567710 53346006 863297579 131043907 646976553 7038440 814911031 373419844 607777025 359346368 618270541 523173636 630800070 668721125 658381334 358429087 978926188 984990217 133496723 425167067 663550203 740029619 588649796 606114091 918675545 776194504 806747249 734359035 163249065 601916680 295647020 143124425 100893782 403295855 239132190 290994909 254330746 77441261 884179182 635186118 982613443 287011668 369827879 599690791 18771576 597999439 695265582 233530016 103705719 2390463 410626603 594916604 285595330 229846017 172589824 836422812 609759185 286030420 437102599 669796839 221673 63713080 547302949 930206453 590901205 710953828 284655497 819090199 300634422 25500761 395730875 971897193 568343528 89338975 452840389 738380972 509973498 936529472 68332766 787255059 339096723 128237328 396438741 330345016 519097713 949717641 760326614 775457960 115307210 583266619 104564583 483370183 480100461 617709232 503751953 111670329 468685027 15910585 726377677 753394966 398355266 138639099 9593846 369780539 520953876 183490321 274302343 103254739 766223531 551095714 103400956 747480114 14692000 164569569 497207438 451090176 122540461 192585976 743068552 207724255 773562601 757073212 616496132 848386172 849817405 273369465 880547033 394300324 112458622 281026755 932808401 157855462 70128072 225514863 926486433 50236596 346589446 149715817 717112050 176563517 710393060 482849999 786777393 108327214 451203033 994036363 726711678 530722882 992115759 998543932 202437860 155524560 993201126 980744983 484300602 263333937 361821451 42741350 472567682 34817629 358079661 511214182 685516857 213079065 727799278 339066775 510453633 573605544 377268306 796817110 875972387 676645742 75224492 161365235 358135787 767905234 607995342 506875844 566887633 678782586 181180931 887883150 943886268 326389588 17850892 377506013 719394113 384615990 203434771 196636520 69732921 38370192 216284321 925417102 38618234 764555865 5368670 728753549 123019175 68282600 764478203 787136628 771671516 227311104 592497388 951523692 383877002 441750870 470023403 254148104 152290237 935360265 435117113 282548989 762819984 286835154 461516848 802171884 235686708 992301906 69041341 721830284 927511600 720089654 461565512 577656040 34518655 29282570 846856179 637145564 125179489 586417299 90872406 107063134 136571785 640688536 405056720 230612361 454152391 951250721 129158163 979944584 65508398 153784664 205636681 84852983 635938733 502272856 650395501 636136896 295786849 246930260 452368547 601785119 685575372 480340499 694042660 528837539 870130591 336740058 177422504 511437043 65302678 544162687 614489007 266916650 504607955 151799130 684696589 561583783 214958139 860394772 416767711 364893828 651728574 248414606 876022714 243033136 549374596 384689948 126301443 300250433 623325323 324557180 361735833 883196256 418924396 570881795 67096482 741354889 517145009 143376103 497193896 918222998 887349477 247237302 765366047 682289021 829767265 366352862 804079777 86083934 994796529 658790616 928210869 157095596 363989391 861992843 433961278 447996788 788209170 618362987 847715580 396504919 414709359 661439539 759438795 212776591 579312217 77116472 158188474 790302440 596746310 799083199 297439032 202235386 442629834 57282018 987032852 556400232 425469765 280779731 502735202 20192587 830155583 776770590 760013516 887454563 608552859 768972964 933704177 134240196 301923382 937312513 59657289 36198945 324212623 990070832 561100925 870704293 507073975 637702157 820547464 512776259 730900994 81257831 688329340 788482172 292060175 782025370 132590545 907806488 790401744 459501399 113538961 585447021 716818774 691511442 12765435 903615831 286573471 731243162 631714251 808190678 935410879 250654179 889556690 587322271 958892008 561708614 78820579 56456791 160346832 114800884 363690783 748593618 130766840 386496681 637084330 707148067 811545140 66528417 971945880 422256093 876685738 825416526 492474767 926976047 356026435 217691687 954804848 359774699 275518252 849164427 223774740 798436779 908624808 549609724 816071232 31818933 438241848 489416940 772077901 940602639 708029726 430753283 427663199 763461918 838905211 821344027 426152521 225293918 622646766 76828103 709334976 998912731 448208953 383772766 60588045 563910045 454479422 338538739 423924062 525712684 353784566 82770627 184986072 330139141 369221861 976374454 635138633 137114113 569315133 307875835 60381374 361876100 790575956 441583646 528897634 617368718 48901422 781415080 842858419 319478386 167722631 603883104 735157721 93967621 369311088 924659668 605246498 165980345 946609688 674976598 901417463 828390093 550197028 585119850 59522787 206911070 855247763 876734537 483829018 732461144 697679732 255357543 404624319 485891965 672057786 468246408 41088249 162418999 875381066 790257521 460129130 732335543 453353566 619819180 478418035 157716001 601482283 201495681 258374532 707142141 840499398 730506222 409801921 697110134 462155662 213738564 514762597 489534423 745975756 480025115 672927555 618981456 901542719 31314218 640169945 833702393 374118775 874051085 957627641 397246526 833797572 705896681 723387312 406190825 392525328 913547565 347668890 337027499 653245994 391764671 793004866 451671434 744935739 454276327 630270177 156736864 140597926 798297553 289533255 202921493 803045980 126483799 193820158 34103812 346938988 435934104 33800221 496632875 917729753 36186272 623535332 356988025 188783822 960065484 629769646 272711039 15195573 395364053 426456445 45775786 599734063 82997583 695157263 355998508 756837688 825491176 488608138 748125191 936842731 809540868 488407032 887346481 241733094 993781311 557475649 480905183 537354484 96668389 661921671 987354794 404179149 230548493 177827859 755738917 468792487 67330612 672047440 559944134 770939107 746893880 630244689 722589519 391772261 113339705 630352319 637965088 629191250 818443076 302622060 573775080 128305120 600177978 123256089 305522461 204116378 280917296 800452487 316932923 641017838 556113302 711541599 886444146 481854839 517527395 28014002 597412283 724348845 652236621 882003363 312917968 341885678 692662414 265003095 288095401 563529019 444009482 844231706 345137981 166548021 818789758 70564840 927738120 924805248 233173223 508761651 669043327 27666720 510698726 635038693 885275339 584904535 210943015 700900822 142454179 101963938 723489527 239250250 805929812 334932590 329406791 61704865 932294444 14558566 367879648 443496573 5996407 169014139 432519511 903613571 47938545 162583283 58695499 691412391 849264500 561582098 413435806 184180498 496838149 284556739 491092175 780074319 735877372 372199816 750168674 967748997 634858305 683609005 422947145 994551215 978604248 457728884 332968708 255955937 505878413 211922549 46783599 684066751 720433968 862835835 853947756 735816824 207914435 538939234 499558110 942110134 322596087 262362689 276653900 839170279 461934927 242016679 294535119 76271555 614796396 477840907 181371795 909519981 17782089 121796688 204860676 127439600 186433484 69159687 246176029 47335902 288818536 779505681 720158705 150170816 145625827 212568207 459199698 540463027 467302162 862776167 624555790 535719893 104164344 124976367 436125536 16812305 519352433 541221019 943558123 836898080 577609628 806043025 362021090 228244175 32462977 943964319 636616274 496360519 471767565 291991682 773323861 115946048 463101419 698497697 50436348 204394179 31398234 573131542 472397288 598584013 972788641 976381414 349028448 222752848 102675626 348521012 814312261 885421689 104293911 822977919 125494204 745847314 814163266 293930035 284331077 246827561 409850141 285104332 221240235 771674174 628288366 774635815 437973997 468474923 456083953 962356549 327464405 598506788 695403028 672343694 398504030 592853789 224580572 801110314 741138417 664993536 12705398 722407553 864772380 655255005 316432081 869457619 3234372 915252365 42760382 266125676 374631536 70899350 13812659 218182794 176390553 879436100 644738004 588989442 222029684 553503000 722683773 369648421 885574491 539707143 72559531 790158670 656396008 385945756 227341954 182454859 662878366 712157206 406308115 141396517 74001999 357857939 384790103 841242820 279046282 370364524 69135478 385252372 761109688 677249624 81662873 773518066 510149131 167536621 578212241 99999914 462479720 41134001 396675767 447733222 300751852 563578849 275261492 769195063 369794069 691948273 235096520 435729483 413765131 276602998 680494955 25902645 227657813 425734940 732978396 130426209 261928217 640745623 56750900 804125411 268838851 929129323 667667825 711930187 643864916 109199960 382099086 293302980 115390759 339853586 749178551 525121625 298964885 127185352 460430592 116023504 280881884 39668672 629271722 352041875 350740423 223931819 316680403 275002899 77854414 399381558 914725577 242171990 754725261 427366379 27548902 752247233 541114253 439594114 5673054 858993969 225443800 923714489 525282854 617821039 618003580 650138040 759951861 840805234 267651799 343748097 461420906 812168501 70832651 325528915 125674039 976280540 47195443 905705254 777345829 872236897 950149000 449131731 189423199 350778810 103822103 58184808 304192355 817867368 790663336 784653207 621538270 511930465 297169015 890322486 337208062 706192134 430259759 976062565 456160512 783358081 933110894 70326131 951166208 490895195 870923773 978995154 825979200 47571586 716669018 623073046 920998982 305853943 36849648 182200731 727848823 517145774 51043320 257840955 48337451 938839540 936309854 260050758 996998051 50257933 178511816 979969677 897532480 567076047 152644579 201355528 24466529 341967548 647866787 558650078 10313044 86343868 504469119 818088741 543255388 930008854 808800087 420244913 881630512 546720701 270561471 727092614 553123214 274313251 291115659 263295118 784890309 416503645 804448755 636505363 915046870 422048037 494526041 930736520 959736811 174765373 118323445 601035370 639903221 67976679 851747792 312712702 578578305 65019622 714410719 40404871 510891854 442575934 387980087 94749798 908876376 137501083 107371222 189860404 350380503 70421755 595394605 314868698 163289544 369362195 230964425 304987364 236842490 222365596 298104210 474123055 81922166 346512014 826208605 607163789 946639536 497380899 178875313 459393153 396743819 558366383 126654323 840828126 299841611 803786071 489441136 985968268 809621201 451591261 107048025 232569116 443562495 43638847 748575024 696132578 644645427 70481085 13486553 296445957 330148338 42019695 124316574 738550224 295994211 657001987 797803724 32359241 810705097 784827766 612943817 416440569 63645320 225025832 876021289 12796831 913418261 905641516 472540622 145401832 582176136 880822500 437767496 297788804 353443984 234077222 204365197 221447683 545716793 142274930 401546929 588802401 96111950 743657341 217241387 200210657 456534640 220412841 673256044 229934805 896318768 159726210 914705889 163047648 755833951 150535035 11775615 660800411 676364651 340978015 992111208 472243595 864843746 220758606 725933838 73005663 676672444 201570252 40911638 482711154 682335331 846666836 398953853 123159062 520397797 707086097 829251702 184757555 731733997 659085768 106144917 68337481 708540886 153437913 939690091 425797533 672765845 396722733 603458475 50252229 162634541 310531670 439413154 238261618 204400141 325103713 970657645 150082 872265519 598279531 474804610 981025676 322923539 109773265 418602004 241399883 58669439 383266899 694386185 80795183 566045514 162986124 734575400 2281555 68056662 887712270 44522896 171352787 654545832 161783911 670884601 750064482 865910355 604616230 602709029 935869108 925466853 921297971 854071236 934140212 731001166 185626367 228963797 242485275 501376634 561891103 158880589 309247197 564368884 345109351 475687766 371768560 382100593 981051385 915452857 518701844 196346246 901281143 414084358 109433655 659193553 283613532 860128928 994658793 992739406 940950402 820080038 625709031 140742767 811520685 379953299 915172207 208844704 291086813 603259970 447469877 290561219 667282307 706512093 833471668 234619652 716686783 267019221 20083908 11502378 424688193 156448039 650276085 45295384 843904765 578676743 279996350 950780181 38760494 407454692 464439668 394321539 395954410 537761187 38174321 982809774 71467980 515351534 408987486 95911334 889348421 339205429 275683476 898947403 938394249 729788343 4044782 736802222 288123879 402977606 768725459 869413754 39179538 171298698 820188985 227126995 112697948 387339826 958010998 710531802 268977525 170379518 783151376 126456682 746567045 504537905 62340868 46318354 511180800 553395912 27374025 674689366 644003978 80495928 722237433 3581353 819204326 316032853 953453522 416723780 566949585 316151083 58842587 528102079 823136779 188561570 491891433 591836553 249875121 334156013 8930233 972105758 690749595 275556247 224073227 746613042 980776848 692220460 985058978 791587297 901415573 632414102 48176012 413138544 934350843 206183 246333104 151076692 322476216 526200146 217958316 409399454 755019918 990178919 87047995 130251438 633532092 23299477 23747964 50764831 119924838 110467409 197077470 524569619 757903422 60865363 539487410 770457574 654793460 323968712 897241229 573796939 968203206 20686639 511903 508155021 75807599 877210833 211085342 543063483 302237010 981509793 490658727 564227791 726877643 706648377 63523884 268529339 802847328 227503459 910186627 68939935 932522867 599047752 98259624 261961218 371422658 747003379 427963179 471423919 983508858 878979011 117119844 73511875 558151262 158720109 494126175 98152487 985359614 38047013 309633806 61525619 519528665 446651324 516696483 492396556 447679993 74867887 3571776 473591330 234234681 480508295 383265542 853351469 606863654 940132486 247612103 784117579 136132028 638668589 574565015 9261427 882660601 906565654 887707904 390242275 566839674 21549458 631027041 922356973 162422963 894128001 742570228 196232358 670502710 485819741 144039658 182088152 541003785 273657686 531608912 617909436 785527468 514783798 846482543 295819694 883673647 966895697 93908835 450788195 756378322 670127895 221019762 933767261 204527483 424207298 869746026 452014605 761050362 527154232 314927782 332423916 404478043 68908535 606105092 865442621 57530865 8231272 114306471 692674076 791728591 412024102 516212052 755607265 93064597 704313508 713275790 635830180 173919131 174904892 3146761 82048669 51108939 701327282 159218316 32965800 746738883 422080595 5835409 353214357 573096919 809067873 971585194 590774866 191096742 537822929 664325744 838159146 250825445 337393550 159728975 416314051 456678551 612531757 84854894 554916830 643652753 258996853 933002075 314121959 432634968 279099001 25650134 451526769 649965322 20226070 907896091 148046166 458106872 868488734 390810273 297889671 396858492 447094230 194578221 130828255 373463160 628977954 661665456 647058997 756436445 639890091 8435834 96435782 387438900 264827520 846451816 55697426 557578814 47712659 95411463 580113462 207131657 920426692 555071043 56373540 248474039 843821959 802061381 940904108 448071166 863533380 299556410 684722221 922573398 407943607 432164527 388465257 793215207 836653903 919094484 550340819 803187393 76451155 559328444 836188331 848528327 96323759 814528467 709231973 73306032 519868048 656562903 618513108 99599081 36497724 695628265 347486924 404393282 753266473 208059967 251628140 289568523 622056448 161051504 504546241 465955056 458143747 322842739 354289685 334354718 658678681 318503408 987412675 1861935 332774497 622097574 30365144 355631204 338148363 477422656 158941913 729043869 643748646 888161107 38363889 3026147 152379145 304836371 315759262 214225891 914527500 929936342 140780130 41230247 175454472 252652107 277080018 652744254 977859149 422247141 991647798 666880009 387677394 915630143 491851414 992468571 332510041 907725403 614557552 650247976 326244663 518958647 986869586 797760875 704561588 714155589 94555094 780697715 522926693 356393453 65093397 346270738 620390770 575169215 482863241 747391082 941418143 195164296 503813859 628795566 109886203 88490698 441778495 681677354 280704016 388495471 666171756 781802194 234977069 707695948 984186126 763676895 253652610 245149352 25484810 787933696 520237245 63558418 496263507 220481688 507496085 839430762 415846678 406959012 870847187 799559670 400544270 324848942 289242682 752606830 775044436 554687218 684248505 855130720 378870548 779311131 73763868 358142858 642904644 823009604 797229687 969596925 86172323 189856429 71631930 345561718 955552736 308893011 7578148 395847759 623075905 5765590 317095820 16366978 469518635 920964056 534523707 120523552 954817849 876238544 302020045 584253757 287737979 398296465 845910067 531787630 422629405 7466032 615883993 95092982 928026624 197001903 560293653 947492304 270215405 108117720 410436653 754705941 997014426 600957466 906628580 940501256 181034928 377895540 406551508 553928693 143389002 806247588 736666070 961382906 230700041 154172174 334656045 780540362 115011997 35592246 755460720 558901140 583359785 619154390 980037760 327335809 765905174 466162417 182225154 98091105 566562045 341733775 415110286 831107660 912933308 14372872 631504701 393490303 234253571 668655868 460587534 857585062 164151707 393900680 316257451 249335921 502736264 234069336 537290554 866075482 690690641 862101636 715866543 200570748 771727586 428563098 337660216 724813390 801202794 892526683 982924252 573289682 854466456 792886373 499100608 180914019 72808988 652176359 222114335 282858779 816807272 192060802 829362127 644957198 188576843 632159317 32445683 991291308 639220157 987240953 756627081 477262229 614154289 880415419 157492252 43448765 466165231 837505365 285905965 958752017 405218615 434938274 45853980 277102 677357139 79142722 112948095 485926614 226016925 37303002 165768296 460681217 570263851 134529571 301508652 135540273 338072494 659008345 383006723 801263616 700759301 460202684 653115738 109110905 306151456 861130706 931966011 734712695 218742001 66550697 910892306 751862763 972680938 361510658 360172532 607709128 157754961 756398835 394869581 899484717 631159683 80830727 34338935 141108387 496677562 614887453 636971510 990951448 941833685 990230073 643020862 471872921 431413953 482108982 801525433 77170081 453123640 77536746 108064204 35519589 360802244 402541495 527015074 428217532 389263159 917233232 676403728 300798781 224518427 248910419 904716013 199864064 791140909 9017795 719985328 143077235 423509764 85193583 924468487 501969248 923583259 380859864 154887549 642194591 611211782 377830612 752284028 890114090 236647129 37420170 853947969 241423913 124298527 952236391 203352627 97364245 855733354 234627032 608740874 147144847 412720669 724895977 85403597 989118941 646957729 788748910 739542217 543151409 278429680 249265741 55915412 130096162 232543289 765360615 653953333 862065440 160281073 738405147 661404345 104833324 358446640 971118294 709845613 253225271 620107207 144380184 317132346 149280712 226401104 547082181 415964999 62046798 801163364 485993287 408086026 511826318 712295850 700149947 60055430 610944971 123769177 548803302 320810419 647516164 409977009 780040651 440410041 226567626 361184318 812503786 827065081 935885916 524164090 266508491 213211192 142827571 32646608 50140651 955819913 966442225 418420090 996696593 736881533 63030703 245225995 107807137 797049489 376090234 562203001 397534890 153065125 2458156 241931054 285698218 450799726 957298426 99176443 18945635 191396894 486769887 552898334 633362816 889105484 486816402 228373592 116029841 975102951 190674720 293071354 833295879 327508493 875957285 978132139 404843779 841256371 99287058 499096806 964406543 516178291 787926264 824119961 226951010 481218881 257224192 281103308 946166255 166510750 648105551 284506389 326225947 142523427 393807482 9964069 710510024 876594181 509343889 723239812 788656576 551040780 531447105 633121542 888008010 210133568 257873086 286423939 929217273 198136233 895310099 260994334 982204676 30899359 83880770 310457825 606707335 330966948 884410381 808233675 304103527 190866308 613081373 772437931 638158085 632621786 402025973 748655869 313142347 210284266 73351014 494135478 187222242 558439603 776188205 377696452 219798365 782101629 795532765 473960010 904995656 475045621 463667629 837571336 196474727 599600441 187360184 424763447 27139377 146856752 659403489 845313236 770434862 544031836 776881031 711541314 581198768 462170768 665505967 499507854 721334230 568716972 805918460 729818088 296937117 472749267 213914088 98053455 364963636 82419750 535621959 349343297 666247798 933820931 392925840 405546795 302724109 783440168 287333332 830677921 748912657 240726812 262185554 170356256 528301896 586501614 95607824 137315708 692322057 918892075 96710233 618850249 779513541 112443341 66281391 230812660 348430151 112457418 564885036 349757150 914084977 963033436 174722047 584909381 5446392 688523053 553861742 138983658 82431695 55616252 709425684 445507339 43861662 223787790 198995963 792017006 978619795 345070458 667305512 480671928 490942128 349532636 207768470 635850280 333656932 904508261 805267213 348418111 647808053 57144499 800561803 653532742 972939806 324592521 512563998 291254441 79308787 33120559 288562780 142133235 889976826 87569459 451394784 829451742 914624227 122418697 379735151 927733181 404628650 575118474 941933747 533642958 880414045 136476333 900528690 523993894 868027993 255785001 578979908 538140145 844089017 256091085 995262524 335034892 539096187 887324977 716831269 729464314 528483014 684651409 377894045 33870592 824542722 26308273 709661405 690457667 219263826 979589404 161252877 621425814 5541687 707786734 305400580 390752357 46688457 386387885 395763809 200110426 289745102 594701656 858925070 828975075 529685359 103937171 285397004 562852094 21005281 246629333 597748986 67164331 309095783 346390311 65486735 892242164 514217495 462694246 107158258 202185072 657257523 687493351 490141803 226405204 335492847 623426294 807256935 153871315 841068426 398392101 621674395 462334413 640235161 161845681 542980566 668037763 948919325 479344299 515642068 130310342 726656235 27067377 464281816 640336855 217172918 805524114 412786750 599827012 661897946 267173605 486817672 368069325 512562934 546794056 473488814 667667544 165040434 192051872 595762240 146540716 938677796 600192506 112654313 253468232 617875991 839185135 516106642 286518873 589836116 51592475 207173652 128681973 94892576 500302079 528951960 964185528 713868633 453245125 306859780 348501949 499888455 880292934 291235134 191479393 473136789 982360710 377929406 918853655 843132831 200741746 492837010 105745598 642497692 916243347 132691156 363592746 571398847 186259218 753901894 500320482 978895327 231944999 492394608 661760799 448636613 161894177 772267362 872185442 476463037 129046234 817873647 99549513 298832043 660938164 757938770 327602505 65827556 454656085 489537534 812840679 212701907 50369929 675843351 721737015 372426324 466447161 498111181 163051684 524269931 193329959 966236578 565303620 242596719 912470426 352826345 404370135 700896857 609181868 173955741 335881077 696189294 964588896 64867339 683271208 872920518 837204207 73977659 506184727 141960708 177609885 316186103 530340374 476265085 937973443 754439643 272124472 309845174 751721796 972271699 480582461 493859544 666665114 124685536 56845518 751695608 285980152 410510733 359794528 148256362 723990989 116971034 841480982 680784709 487733419 951672868 626205966 908144095 82291987 620433721 770032163 597783373 10133553 254538944 678727145 222185250 966823973 176244193 251576872 828880287 75421828 105303321 944241824 361527358 505627703 97208998 836967710 574463422 120857173 706246157 637820033 392861395 908199983 424918281 817872969 118489686 609135127 197753785 918332368 350429768 171189957 548798486 349535701 175552147 648869801 759050072 397945199 143021656 502572393 207907778 209823661 74413826 126319712 62058743 573260000 729412826 356417035 385380711 116865689 664176872 853795689 386087464 138768566 397815842 169364741 236709594 607700493 749078521 197638021 838225286 108809207 243310594 762364746 99839494 930440410 968161462 661442039 131728492 145769161 689520671 242028607 733744188 286598087 300286617 932500416 534105701 804263407 210728939 845912532 612084204 965842285 927704214 49898893 431059299 680449765 434709685 293488121 515727913 763473467 510015862 72005214 120096947 443111759 532612509 658955459 927645060 372335891 392603591 869701293 358260988 355725432 297966650 323714218 184429564 280805273 487459204 146511682 94428309 683323284 16287322 596191348 42710000 337264945 118304063 951446932 611369155 687760022 883907535 466169827 786567871 617327306 140508809 172820120 358043001 475824270 652638005 694995226 996047076 84951006 795950297 575495780 303025301 106463743 981966163 693644742 674012802 402047940 990758407 690517180 903818920 358521459 35525269 904375426 627655899 903742161 515718634 134271989 598401494 790633697 905580152 26597611 661331064 185111861 45488798 88731441 541055042 832459525 26086900 643314367 902704423 121439055 563031911 510738210 96800888 500443664 592668512 119255386 799390163 134603793 632543041 237025901 112226582 403165315 161308047 241524324 809532694 573046962 420552780 63228712 459311995 651654017 332586636 169546663 938646844 113830843 120375123 708021048 888520456 669114423 28543612 119880197 159816682 167813002 982054462 163272964 545990867 264663684 376974111 609255037 907539583 543516453 976099297 674419591 147088626 884899672 775172536 626437122 487277209 959207961 752782162 771213761 930101578 757633016 45302996 778066122 329019542 532962564 958868335 686365280 399372558 775393233 412137366 709851349 423596397 289260513 894486728 704138861 369030561 28815273 547227726 898362660 703012480 569745323 240607400 914279551 146220656 199317467 752492946 344995104 469664735 442877304 34381743 267188976 156174669 112879296 615941901 968796533 185515848 51006344 343882036 299945431 834186077 826264179 835449749 400753901 173415959 759509981 305111623 271353577 132579846 222474468 864862951 109635436 589525584 303193106 15017060 522681748 123100136 750684812 658507124 560097309 916841587 499386240 356734391 916861764 677145700 682342039 4145457 143193038 721957092 344750526 629890607 541928540 541453392 531931356 943761897 919602286 761106403 78501090 555551451 445025733 948986467 872982193 416029960 196648916 51485104 413700721 683260395 333923146 833451607 473316426 337191908 320690515 808346882 553753281 162130521 741410124 712350771 388638889 557623644 806834071 240090078 593498148 618973666 809439762 722793920 10101246 410677976 620567468 225768674 717254219 284597677 56912111 625733640 634237308 650678661 293321513 417635860 833750895 397821591 347178840 504126006 688955500 813905370 435847200 115620815 692290732 552397434 29313299 58843040 877374864 841950496 782498548 675372319 64028164 204917812 652883529 69927473 883190090 821413407 192186602 719335434 204138996 490562796 860321113 605542399 638434211 234409154 218057463 657753529 84566762 190621228 237416489 668877620 601443684 663908421 249007706 262323628 21003406 928467049 679346441 705699559 753633743 929559427 317055992 837410941 589900198 480169653 267860843 388387055 665801587 48533006 694187223 834205908 866514756 639355558 688602298 550175434 20779366 800694113 811713141 910092491 758870754 83602505 388724287 178071063 989301328 14634319 481720388 939411194 317722182 180991920 541190255 782273757 351276152 443485300 714225235 376635585 192475881 137868173 200849483 92355107 815074232 237848765 646617597 409290783 322828654 65941792 540190126 514818347 311745013 100579044 177305096 248978251 12769003 565539908 71951719 493283687 633259836 632657792 377183305 879281292 258426936 377201263 68162398 776835998 572414831 352084123 108817554 834050523 653929667 768131234 584175832 839716564 782166819 985864859 153707995 299272864 215171374 335812706 196524920 62649431 386303916 96087535 684061661 276589945 347443568 822204819 237272468 171007314 761672498 665379929 540460347 907049319 120298863 347212822 770702167 104338670 214452142 375057359 629729849 831726168 812653236 512575173 597641882 366079849 391263787 468568869 316779727 676668226 290586751 982897295 556552793 879468773 65658443 155369876 506454071 359663363 817664074 339282145 740146050 265801922 914076121 894100424 843911690 127283267 939436395 242775743 898767777 886533564 169382537 134045173 226871402 8129123 935289158 53619851 169593602 157738341 944450561 81512350 49224468 265112813 439254367 791624439 508138082 593302710 686363997 661374433 870708447 238266368 853907064 673442125 76697909 359326752 124816019 518589552 578137275 869526967 227547369 448299137 940544221 799878841 661246527 283533156 906229983 684355333 227072485 827091019 44330925 709606969 159222944 940060258 819868617 839817672 906001440 593541023 868112528 516635122 549664401 415809027 506623573 635122290 57325375 800594152 766358091 789996533 984929844 287921711 870981377 224865589 333720037 133628659 80127580 214045334 235183115 76989535 272101499 197933745 100294948 764191677 18426271 52160042 293334386 672216066 871379580 440695180 616798135 865575911 251670929 53162355 736400747 507037553 352794699 191827366 847449655 485371336 530796996 911118194 714679460 21361812 305524306 248677672 392306205 417893396 434726800 145044017 31805275 736287913 156891692 33280028 462485135 108783518 591555629 606559480 146758927 886690795 344674990 457829507 990214735 635275331 522588588 385664384 848579701 984085585 619311951 397900073 585436438 616684696 497587918 620543778 501825129 298029286 169401439 568522972 762849547 542174900 883209623 715885576 332071362 475146798 734959394 59370586 133668961 658921903 457392624 988062349 490045774 319195028 539624216 337343724 768407693 42708897 264913882 528106226 298212644 865653930 391093393 614226208 277100938 984822588 936544678 997210506 381032700 71575962 64858635 375178702 568860442 276417864 69588489 71594144 40130971 172516796 610918792 763408778 764698680 854368720 886241367 687583307 4035378 103986947 691730289 21863983 957017818 423303200 918354818 665897647 227628571 935224119 468128851 345002718 364905942 974960798 869723492 806212446 879100410 142077678 56264838 820870573 934528044 102603341 231455825 68478818 199044166 101988004 109001300 568190969 369510294 379786050 482823926 430705461 672825018 95879621 615021255 448717269 562012258 651123176 738960404 407614467 99902881 238199125 92663466 974350933 424659258 207136449 631210262 187455528 258349710 804525710 15112287 235880013 629058573 48074562 952782082 873756779 796903206 222194081 45028040 626444907 829960311 330758337 682085944 37754729 693732673 434571991 706317706 226922380 833770484 40163358 863230413 589732883 421837477 787212473 499867221 94435852 972364512 487657062 151560561 337593821 779164894 551261602 34133073 732020362 744244637 48111510 450169555 426262555 534492966 72716235 229608814 394086086 476313707 577348669 914543035 384982529 554225704 249235781 506304503 648983275 47923086 305711035 830514119 885806185 776421572 969115635 632989256 152429089 676870531 65385939 425180194 834536611 219782634 931371301 124619480 153856626 150057091 620894541 563818818 688191432 428631059 491364409 507352986 573722953 886135396 602480678 283757940 707414107 179320996 158235097 269347603 768667024 807005770 741532444 157876682 962012419 257805622 367647159 988411608 547708034 116841641 121492917 292544780 63285168 830067721 388316057 974043236 79730505 628580098 162821277 312740283 178589107 522287685 722685525 242332489 121285212 208135113 863732357 19040109 658688035 992079161 784837250 319079055 77843654 991637923 133340389 167985636 862971635 399034184 167599515 921681226 963095726 281464885 851141125 242288730 498125462 749365490 759055048 191742366 407103915 142366656 423871031 348374168 706532215 353323172 912032220 606398574 428711631 117804695 785216838 378132671 231598195 554805470 373455456 956734368 972678194 714816188 131847405 569339053 527850572 766440098 374923852 296329295 264212728 600516998 568314028 154758925 158892491 251065542 108217179 395985232 360348387 348631100 646760060 571991663 369535971 252789052 76555206 749316774 769735546 386307313 370950467 397073520 823874131 313708307 786026569 17331856 97989112 853939812 757904816 798115689 736509013 944028929 610294103 118281692 482770802 805823581 268879451 627724780 227805114 517009167 333515340 405244900 954298064 559511804 517518300 580644602 165719377 827342146 711654315 872960650 503931246 45988185 477657529 774059041 477188228 284676199 911268262 699158723 770502 740826700 803354324 842914230 62060068 855138931 499927320 429963620 987181741 734382757 822032168 323559887 512106958 649438935 950786397 557947862 63834846 192165431 5784022 910655159 176168958 786167942 6288088 490862661 776992429 377154385 440468766 358128661 178903080 128076048 266455154 325194723 429338546 154525444 767917908 865826591 930383774 272199496 815188668 644574358 801032492 543806133 47806872 175541090 230583143 668120623 757840012 908382830 305770366 384806265 823793530 720176090 899213394 399902328 620193349 261042912 733183915 413691878 946765486 71957085 519108492 163622101 337165038 157502296 470441908 911311406 933166633 641458494 744791038 395597640 321457146 348324781 338904339 858343518 227188703 498618321 301572221 4147527 994822272 284776391 400736820 31981406 471975734 302066881 193676491 675208824 379483812 765375466 972666022 504894194 370546488 234113146 737561320 136762266 856453500 820567463 618719773 410677182 477264936 528605143 805819614 301562527 352322739 711273416 920925248 678824042 656242178 52869985 487687681 249322596 431802682 137397414 705020540 548203802 387620727 963306615 271880508 343882026 936487376 541646678 163348294 515139289 624562858 437925298 467337507 993235818 464550433 860972741 950107299 446876939 586975250 469860648 915170805 979565095 248568184 515128066 615693516 95869751 24572317 14498908 68257892 877253516 95754746 357523075 78150717 785261360 838970656 324470417 755286808 993360093 189026521 682449163 862855119 704415151 828327178 183191061 422989326 850583524 839903219 925199297 245058777 699260659 247080296 284244685 141024352 293487921 434810541 152941576 228629995 694485062 745230764 461307528 261983619 328655564 112302957 714852787 567730175 975947935 61599782 454072182 904524135 540615246 879182260 561619350 741727731 407801313 638421761 712726486 753149984 17861526 321135196 176548585 255905648 252554890 133716531 176447998 629818491 396614151 393883312 991465277 614805487 702206259 171346561 9168426 470888812 436735356 912907938 932229378 902486136 290670314 884791276 387063105 541608852 596790365 177634276 965202937 715024075 658548874 775618841 639083267 141476162 792366955 801497520 214711296 972070097 440206881 358738764 282887602 400237769 990819971 300553203 682144807 696490570 344696048 626359302 238688507 358193744 312350955 563423017 862625620 255193122 437571131 705334227 984933385 988327776 934916014 959885083 688482062 148563579 302813771 919445844 773873523 785836365 24035472 735987892 3220761 857802029 867398 252949458 270393807 740716475 917044354 239377662 569841264 885090682 222230157 51251330 410800257 104122555 864755779 835618188 948150983 747143080 567789788 563102729 928141614 783729865 352519315 602983845 812977221 309651709 694541296 807505207 869314946 97777518 874542541 528051642 817806949 852069399 891469764 710065929 134529743 701831507 543402120 938677641 759535517 772369344 34859773 417108686 840230534 473768325 671903645 6424225 853571252 209308345 231899007 886717036 55190370 483301342 290311203 751486091 512825722 562882978 336075320 689322187 623247338 291753026 711439765 69226026 670100104 938181549 398225717 677895555 658586436 30789997 801554897 445219430 559958252 362712299 348235338 811988222 46175266 120019840 822063367 25567647 326167875 635395237 470275063 4491378 384466683 591753448 573579080 354198325 213926023 428865524 474471549 451972431 976972061 81511488 664312404 581847240 793238828 36180178 396194656 813176992 663174415 554165063 408184651 817705354 395852109 926720610 736651960 424011898 352311563 987672153 916401062 405126235 749699344 284645345 754185212 547782334 806192605 941489079 809470204 217595173 653317660 951310882 34455158 161736389 491491204 640480300 26436505 283871279 225550505 209653674 155563921 747003024 331781214 783312146 128727180 280985498 801509509 113715046 946664825 246509657 303825623 209873954 75925591 271226394 156033570 172655578 463326230 764369813 91234428 790159779 865401062 687558434 45751446 481147230 928969908 99914950 734822823 203914769 649215514 149323544 621966584 973863006 561363684 449821154 861711635 270740704 884290345 444328018 177064405 938344262 936197411 5705339 642482481 564990731 811751229 517698339 960849791 372590863 438230822 912065941 792266164 983636501 117497228 573281879 450780413 716011113 650363618 476111556 716655999 949980164 106963634 256132286 760700780 389145287 900551018 508726416 5323115 823477484 479458887 688984447 605388043 667417702 334871960 848140012 751825477 333670721 634238227 34826044 195497300 191797224 326746852 514924387 494932678 441300255 924728142 351548384 924620137 542617777 294483660 783023039 254789946 881745480 288069592 106081339 486600700 225484862 250826582 548371631 341984066 787801636 384213824 120304397 749081329 354807412 565082324 890564187 795121105 182477457 92145004 990579123 241161904 100174999 750649073 409026356 789524530 772119340 789983211 675554254 365187166 823350595 722828908 108194555 515209586 631775839 450652898 570088821 587134700 123008351 365730627 395030477 617807577 896546795 429574595 627959783 520355916 692576027 440973172 857370167 649725039 332681778 425778126 776825085 776737660 544497684 441264658 235890686 344693004 174964176 294072519 964782298 19000205 704366007 83460805 435876056 593336193 365748030 551480522 428961682 581273556 898701669 342458296 652983516 201690692 534683663 394189080 567017631 27330329 533939148 730726832 163962085 843637245 49682991 919459161 935796870 473420700 104607229 66741735 37163616 496352102 713817191 43498104 327276904 60842358 416029323 96873294 35295883 780225314 995406160 978278946 647807685 897638576 502702984 989917239 236951195 563060406 493953007 904780122 467107335 634329810 743958939 97368071 738780134 318146633 717292400 485883858 717675679 399029981 373042328 21216216 116497603 207202535 737903219 368460709 257085856 763154568 815324873 602102954 16944343 473374979 807632141 705862909 903269160 682672533 188994083 278538785 351988587 608321061 246111484 31076085 147182218 418495743 480363927 643521112 176848167 781611108 470782494 960981585 30145447 941535712 786982328 659461742 619885686 910851897 647022851 196405288 993494837 666964414 587878536 497723451 939776063 76440128 789822852 255151539 111806729 840418392 763303662 721282987 329537431 561338511 751997446 932104840 622770981 826231645 48238295 406362361 462316694 90176533 619159489 63722902 949169151 634669665 166945950 949195854 108020039 577273787 353496424 785784924 953877435 777811919 709793010 40398499 114749664 786063832 489539682 650418935 503860680 530573886 33278927 76958434 611073961 324622068 404473182 12446704 232155738 901296484 94767242 163979071 700854920 571063160 998075348 106244712 746448529 88048590 236595068 842623908 16932632 101009345 855324772 564192040 957363644 217419226 99501762 170651466 901452035 96808951 176312760 725186487 564637513 934130058 206570410 282049238 644410362 204193852 501231750 620738595 541256291 258718374 114112561 664397599 859562390 903808856 215753434 640961485 15216626 517413773 133580447 309595638 15439987 819824179 441820971 677167738 399500092 118028348 28198021 607602456 34188405 435907054 92536565 476017969 812744071 51649505 270519151 179395824 868744696 288219823 137732865 939578683 734732560 685672076 262387203 107126090 231588672 97206587 673523555 36019642 309405795 905535798 459661988 301508101 688288007 545923127 189507599 74570692 348776025 844966789 431873414 869677164 759302572 112115653 814835552 985550724 665222885 822729232 628372772 971083880 439033245 56838435 811225663 941998397 128546211 41554757 655134104 876231486 939257599 618611721 165946556 637867501 18313377 936743203 960483728 727343220 663448335 633849603 180326728 931441408 636830293 247653631 167358988 662584244 831972420 503004914 830795979 405435309 651571045 53540869 946042115 78681759 877997534 247481922 228359401 620404436 754662508 962477868 358344427 611799161 655859323 94340620 77818150 705544995 460339539 65306699 978791070 343756886 678828638 13539418 39413366 448305987 656579500 435431516 936468357 482728731 970741356 454860625 717202763 664687071 763889503 744213138 343032672 32124084 312947181 863422503 652497722 740665067 320089128 183776307 750914502 988627661 561082106 131246955 725461598 170615134 112215864 650917067 343749168 772580182 376819095 411335768 259352495 451819476 390556874 817507179 123422446 402247784 280764767 404448855 567304807 380595975 946283333 386168319 861262888 333015940 13054307 35188785 654002195 115612419 676041707 834501894 165475294 312390419 905466525 105986659 149329319 375697687 317136215 240858972 813710787 611034005 243212583 619419537 795796232 491405036 796326224 574790723 656623610 119101175 653100607 172152838 830560429 144214324 830934387 292163945 50353673 975772812 907950823 995943107 57710800 63382870 324374837 947857785 725868115 487901684 780126624 574468795 986151328 586080319 225728098 215342158 966170687 379136099 433743721 844882051 198909860 856665157 280099406 410163157 247283226 620483535 844962918 407305741 355000354 981233074 951265739 4634418 71080879 937123527 396680458 257347308 306471481 200291649 307694101 406348059 256277919 954896055 581435955 956800340 779202124 543237946 327805514 258923892 938956471 539501611 500254667 564770796 196562682 65792950 227237197 786633439 508600097 741705801 667678201 884055252 616613963 225488070 653343525 674049521 222005257 920731396 807742764 799838129 839723193 677822674 777971677 666132050 476275498 127487215 310684051 890029833 400901445 196136567 737987659 903969399 562557880 223163550 735701652 713092683 730298265 666142041 787255028 386088310 951467464 423025340 975472164 41584082 793492147 328368083 59776436 64539607 794113273 788726713 220675068 708740020 511718121 400640743 69780394 875152015 673453228 628458310 604647277 724708930 632313054 480050582 201217037 837690964 311846152 537885984 182089763 946007050 106359843 132568003 927480314 924023185 435964724 684719723 873935981 609212253 995955677 536031742 214880671 936559660 329337022 945402852 921993115 916296924 578663448 339559775 967856453 626977929 349486262 339336349 192359290 548892430 950057444 65590213 891508624 27087823 973210410 874440100 351412611 146351042 812484008 155295732 319126994 892750100 757885666 605195932 645351107 90190626 565572372 412413423 99856318 595788685 324519158 755852259 854493545 87478080 338302373 158498495 811854522 229239911 822133499 136084687 56194455 476211871 398451914 324039032 359898126 277012902 757225547 509093571 301689294 654493186 815724055 676445663 865254929 384733468 629495303 238581781 931745384 821392877 842259645 270615824 394148150 840278826 538305463 471743078 272792497 254859393 931852259 837848950 515903313 267206422 366822589 947660330 114170640 817742447 769239730 802153437 212174611 67001886 728530783 739459469 907206278 122453482 31579960 598348508 430622912 244875347 785305508 205788581 440321151 829755561 564461184 748643763 878668395 649052689 269102277 546395700 79485518 66960023 806733867 966473527 554693955 803427542 451609823 384065950 289052630 655880663 202852336 145684047 149364416 217132185 146792193 848801038 676601676 259810945 431175872 612835023 717422470 983691516 558783364 133939614 383198037 707792084 977277407 426267432 877180829 461581699 88749870 562573111 895482175 819966051 421395878 301698464 333946657 84548525 309271262 571190697 548643318 730922264 508545178 613733841 65324397 405605478 83103962 758342982 713458147 267512379 620192232 122226314 339473934 780595309 482177733 977831739 300094035 842409609 140249234 791095771 29357589 925602822 37958289 673621733 502339184 959078461 630598482 372488777 211661636 76586652 269919905 91882274 757572557 61004399 929557713 792414932 602013954 440810483 877064059 519781669 425945552 299644264 765866336 266651671 696511766 458998252 84864566 11899849 454320393 208288052 308757641 315683851 648354564 307181492 337506059 494385560 138409654 65515150 737485518 256746976 954813752 18295903 8341464 854944262 601904564 123955372 250723442 827768443 378155502 99323855 61210982 259478811 175916448 682043599 880064238 873053764 792823538 770104869 108097262 401377096 749859912 582661788 477176678 282549600 516666233 542589758 153682563 329151342 526994114 964945267 822728340 381768924 419636074 870620713 674577117 217462448 876470636 402635013 619426235 233810165 258386770 443814833 443379052 591860771 234926554 20488511 556292776 991593557 113732056 155474727 874288234 295631768 370197427 192292104 658154133 124959569 984065900 223661782 474192671 790118056 738600161 783440725 268102704 140159648 386201941 97017631 896404185 193564158 330535266 91785244 746765908 526549624 280223255 690674716 700074791 235262751 733953622 302651713 461002587 994921912 750128737 190792657 84659402 476595789 505493821 441783609 537264436 185269507 995796969 893290469 265440653 66167615 739167982 355159768 766388115 101654911 350435237 291798470 385975427 458647455 674733575 164454446 796554030 415344490 76643402 309442880 831805837 345855344 51079511 246295364 523400470 164121159 225335359 428931735 539758006 236351077 350106822 162960121 387292429 144537975 812270118 512612141 388209833 719545710 565338410 264820055 435150973 108246975 191621635 860724669 789419764 347918528 133806885 136943425 611849890 826909608 782881497 861982441 652350285 691992695 372447536 146637350 457750698 153517175 976892473 105947086 84778726 110141568 401257677 152942354 469516115 61764346 347037792 744838003 230487878 826338870 955228378 542665676 186730371 609310962 115758432 59280739 606407053 166317914 84482702 931165011 485444950 917590713 669516248 219358179 718021655 664757784 359130126 884732410 242761027 116811766 390005054 344926460 111871126 697889796 482848613 85727069 380853281 38540231 991090704 655838056 794766621 342148194 95334337 9336466 654173050 516315657 985392530 448491299 932604541 192032657 668176380 949003648 983792526 178522271 619235209 232489699 603166385 883326625 578605557 285162237 665020784 694462114 885195793 77233822 597787334 907756173 935051667 39669663 181836546 652921192 963327068 558209505 681244911 103975589 95066308 800044352 30322281 477540727 249694983 102905076 890870317 421213449 137716222 634906534 854336149 357058650 998331806 248353191 918408520 831168294 278718252 950659578 541061708 522999943 6681311 712201916 306133519 311261403 164273712 587405140 433625356 370593072 976295073 861649689 849464868 246980671 920930578 255245815 549111804 880101177 334346049 258789199 18146773 562154398 692599952 410582668 461090585 986753657 848576272 189092550 116684537 178552812 311302323 694268390 46383221 259100907 15337671 213541605 182854563 78967244 212942745 879425313 415327455 189632013 239209005 979204455 795428934 445093000 201977284 198523843 695693112 778736848 287035633 473475790 176384750 243833740 58609716 593434441 755015757 857362225 434876892 358026142 500938751 916359832 18121509 33299106 611560380 669810786 132109624 634421023 794762363 579210182 682257185 445178926 872571910 943785042 897976258 506699263 687419821 869764546 305643789 247945250 928363835 644396513 228568821 670161584 299079997 101730101 916487561 63999515 988519672 85500535 739569599 656504727 337733726 175851699 129789878 311785249 819777553 221079572 963248637 441795366 751768358 247547321 223523679 318529117 64509934 279714064 120537713 567195103 55149590 891393498 626613605 784907795 142729491 102305351 15625094 239293728 100656673 131482512 248539412 404350529 954957629 991924760 926717434 492574032 146626389 659230884 184081117 282643638 5299030 876215787 789344902 728415639 118784986 326459685 86332422 810986129 857385604 846631230 782767831 446645056 211350180 320833135 682345251 782352669 180055350 395970421 676609089 213812366 334025308 736641549 819536920 368378174 489185973 526806127 965716643 880719028 959627704 275500754 972451920 455583234 260865759 437479577 960281203 985679974 751236733 937482784 805606871 903289753 525491069 912035831 559832854 617717384 774279396 333029497 580275873 495592774 514846225 497028947 617992902 263976956 218290794 129927888 861064774 667810788 404872535 232368767 497409027 792660196 173906167 271640421 354414375 858803901 259186253 546563331 152167307 428068198 432294082 226618522 920470247 458814917 70124584 541349328 357253514 847020501 947116496 621675741 406458704 726435664 521714514 525932624 675905877 362948983 372984059 889545538 933172166 101788166 324950728 195766593 307459677 639482229 756151918 26103907 854648536 914800924 739556713 140675396 695819955 62834229 305471299 608017596 725099032 332023137 559953260 368964543 920672293 296399788 158523944 994613503 849295719 659685164 679404060 907924744 596510882 699312958 598480222 775910896 764893994 536875018 68657710 766203471 634131093 390360169 182960880 365507747 855056200 414602207 632069372 750604317 932977293 116593898 549046594 875883896 249344202 560819893 693877993 602694510 476198509 243339709 62161825 745665417 439470980 190211962 931217192 177499099 771914508 252853714 931272903 789140575 202141201 194540722 408489608 813238470 454399675 674140530 291890869 573673424 820674703 577177740 272993918 435696682 522889276 766403306 778077371 997902668 453973019 473281013 934489904 390426990 279527744 352177898 977076181 940714730 859354025 408968886 547205497 561994944 665033992 875997071 100503880 192123936 671049210 988767133 308918784 214511982 829813052 903635433 926296539 278888711 293405439 97420716 590059319 907056504 335125544 440755300 880810833 980585837 647375306 921098283 4398566 762176624 781547818 326959431 660554344 633681261 656522814 420605626 604349904 951074234 214381226 440893545 328673666 21683194 318775995 885609122 641368297 291257579 36104256 526552397 354873857 826540158 120376072 113996487 140405214 976714141 51955807 231254102 795761208 885369603 885021088 64444342 223239240 16085872 671487831 580998558 551678072 340412216 242898545 205286177 527188056 300286044 607809355 611101601 888026926 111379243 783198803 213635691 54000618 107374756 592450128 359628585 348481352 915897570 471993268 739379410 783392752 629159979 368864779 289603164 923516954 347095255 205398388 591824559 788025408 186862908 119951406 473412594 734366939 367916337 44800764 751182868 400716367 437047658 535184461 130609624 96950266 988072096 685533907 450455054 915147269 950925932 150447747 627844234 89249183 679153462 822208407 93591516 299113061 187331495 508103001 771431797 864211992 443635585 943393020 890849834 732489699 220213012 990271352 461517365 507827547 654587310 758628914 325195081 998133155 127812869 838697129 690414812 279206482 783203708 804672483 472279294 362764380 353584681 480816271 154643276 243547104 865515739 236755373 279150076 949198237 952232925 224270439 620061232 891409539 813470944 138186914 222230454 42485009 839797465 439173648 479621066 422035336 620054613 717294377 34562923 305014566 912213558 258843512 608149604 260771639 671976293 909717103 530905516 252631521 542467448 982543206 506668157 520626861 528964257 348974511 260378425 539701638 791084735 551548505 612403363 464834254 363914167 80008373 923593671 437350998 428258903 379098979 570568211 423864944 567276232 730861420 322412309 685333772 853663104 828494034 858826967 33226228 855821230 91025371 922223064 959522903 289518735 709566609 627882491 204485420 135307423 150749258 562938081 599827477 696075287 417142601 135464982 690544191 501084564 85873642 179913098 800876556 671273273 342309832 345296419 527814945 436703459 672638618 834711851 304743977 440176253 60895945 941190132 693184723 591832267 372492269 271376379 204938921 465974260 578528037 522811012 638966691 298800048 281722187 913988736 835651203 280352755 654934481 582027060 41218302 592867098 91148897 794622122 523966698 726592887 578348945 147449232 829038646 11782895 416968267 236761295 801806889 391083565 848248979 204330910 670110887 114820393 524742807 745218272 947017059 90439084 500222806 982531806 892148749 850613190 327229604 848074408 761085939 993312307 381687621 151076912 484846121 882054714 700652336 686268481 470320186 741455649 301663414 814795471 678562794 617835605 414678272 237088078 73110620 746503191 850688870 165357915 16731399 300862802 212024468 49166867 825053230 28206713 103537020 89964107 319152529 859000366 77685977 63228213 80260729 648118820 774794092 386527965 449059880 306784147 797955296 806341556 215195001 527681466 576017571 224433223 864571578 612005528 30153401 273782028 622474133 816991112 54351042 207997036 903486567 910847635 336317316 355145441 777073752 950202597 165997795 626665833 647573859 448651055 441914977 322088204 317650175 146342236 999536185 947578302 370386850 93949146 894871002 862741496 98416024 638053392 314840880 720792923 583936213 814896703 779940725 696021686 602196720 817911234 513711615 759568877 579142519 837933347 716717081 601740993 732079249 808860602 18111761 508619969 333009821 525199297 694428181 186491036 502084536 915120911 538878581 324381412 753625308 525172358 402390094 411832027 347563505 561722739 960045597 52569289 603948079 894741393 895527431 157188871 249409410 839859062 865748230 179719853 671401700 38575613 578795816 58234217 996095828 289275811 599698742 617791439 790003523 144185641 479392290 426555851 784310378 731140377 5286397 10291597 808295553 764715756 369476303 856521677 611821589 249834775 297479800 350369301 184100311 24577626 119418873 842936135 953980301 167805640 69222893 216370701 594538295 305462271 738831812 918808471 985042260 119792355 253002528 987014622 340243770 941428395 144811754 54431425 67536404 782047896 803085820 186446206 820805048 458905798 416984090 274065481 888236447 729781078 343017513 695188489 581465158 36178305 827173746 179026917 735249995 174105406 938659369 521101697 252994327 855089825 139515859 54791099 988945272 396867113 524636141 564357434 341936774 497247937 880314633 841746249 2943926 442912097 623310172 192212607 976243201 839461083 114179422 148960219 336607986 510243756 563466453 506734434 814628001 939047266 714412747 187368995 6556592 869035182 2878277 568517200 778890834 396521021 477646070 462143802 56695493 240911001 502534301 945058021 122898615 309841207 452550178 209116841 288158367 754311530 191780703 932975807 680096015 290069686 285102716 243893714 923265041 514514960 473068081 108148432 750008471 733728205 917084603 299834830 755939424 238742874 661078036 129580290 993114156 851861921 163037397 810941529 162710655 110150553 178078355 836889460 437619115 691974621 436841621 573994458 737263231 546030161 178965643 811375364 626782503 167685246 323024807 699319128 107508531 238511945 900813149 881888616 147386917 123955583 143257382 384753907 662950732 372621444 511413171 377164063 628419121 303367127 958527223 619646264 509129866 521623305 943393322 597471849 358310466 502514844 842061095 706333199 221593870 437373183 725471498 995181065 174711106 85421956 683854389 758435248 435513740 79446354 702162518 932997799 285936819 758818960 812702867 532703786 129223527 672818496 881927307 57595545 364352754 729033966 594381217 38320887 903894219 245325747 769588885 307925555 849802338 730544097 688560311 719408102 236470194 207052895 153994853 181821921 822742723 130337986 737492626 665082859 186433394 267867273 383665158 248160685 7357531 313313531 417595424 371901138 585175632 649198303 133849656 930362277 896557909 906377738 523847044 494396393 703567659 65669433 35822716 825575552 622349910 254461915 715761906 211427946 466516865 383890953 685876266 98288790 208292254 979628854 448954674 894606121 920481222 622923891 603715800 271856301 650083148 987226585 212682544 302481714 703277411 186054878 689728588 967226617 719625436 184271104 870522634 709348661 250878899 469391565 520766496 288502956 109870505 877554556 588565466 177576588 197341006 675341602 485764932 868669695 815915254 953905779 652878118 914176666 517403163 32341721 559374361 641473152 316769965 715354123 943902647 597947392 306867425 191377421 468689536 242732962 615681524 68971702 88614931 252625033 466328762 209992119 699226762 209982482 198202045 275724547 538619441 91993076 77871953 501145149 881819953 559913209 241413065 524886929 217364110 863101569 849672507 305871330 630208576 839343027 985699844 372684564 468749699 302964079 463655870 851571308 368682687 630439138 921257439 17743403 446652452 413641969 478886776 363614565 908714926 77897641 216924566 948940694 817232007 69383066 404884229 202975144 46817123 833572275 287153614 516745391 169882149 4178096 432683433 176527147 690275687 614164345 842124734 443452194 655663653 18349728 278634889 210238002 137461771 295695365 59072015 158777020 281276959 569289094 94817744 617911186 91194473 598250188 831006323 939516833 732051404 723541073 811095274 293489511 949142809 892433381 121030855 266566796 494664712 758993067 263888410 182382323 863053716 74701377 870448357 865338346 819587212 154025265 467038740 740703919 384094710 851397973 26238330 887110141 103027953 964449248 273816217 207543257 525297586 85997901 823400230 713818993 517499894 250431095 383469164 479540515 707187075 522487253 696517663 159544537 178239153 609702813 148999497 169871282 848525108 846313382 540932137 708070391 786094529 91229313 924820190 589263105 534017512 290937326 609389236 746327100 862452116 797019685 483376113 253301228 560824563 600002243 456826868 267098529 412777496 976284278 702590009 166268788 845071909 949371664 731760732 407715674 820703835 727483111 773651299 476819946 426354296 211015522 485309916 112461477 42013174 498771172 879727138 778836947 146123996 688530120 488967842 591602964 231884107 536977098 420932221 314376286 739603069 962012682 593354274 112115935 35093148 289859894 865099777 360933679 767210532 764751128 192726741 292561700 376475410 819315803 559285917 46070676 126153772 24428092 869684513 151747256 618945445 344616375 433595904 871894273 525688944 492818263 845652132 17024963 621842318 764518456 285610509 686158643 547418680 65860719 662250338 825564025 476877682 68835024 107013887 146854846 767501334 52454393 631010091 769424689 820286517 889841449 487536215 78378719 475540362 418682110 974058832 57874436 853600002 646028815 804911252 186827893 98531256 194842194 306811620 488010466 614951981 262029106 302507187 289304571 444437993 524444947 438416283 98641413 901377504 863161273 81461614 860478780 55450821 174672137 390748563 868790644 25837103 216149720 509067268 337866175 826825387 471052032 408127501 626156073 989174117 266753956 574353054 384602606 259091911 116759326 592084769 629746969 970492432 570813752 22611388 747597521 611932355 875035740 277181344 905734181 17564057 623599385 273115111 185075467 819360290 988705070 116565345 216369289 331648784 681843815 138799551 282103957 245919047 977027707 949002872 42616291 297632099 817959150 24529162 953997881 752637649 230437211 132998999 623811786 607921267 747242047 910440899 928799859 807452560 215779767 22203689 36832565 989473529 195859851 324261899 481840157 293546726 328805887 934676650 44307621 579355514 783943781 562880507 632806274 890996413 676119391 889336774 863960808 316601863 497086689 425839584 665136135 747821557 623673920 117039024 132255268 231825473 394879214 449158023 346476218 305097189 84553963 3422295 964317285 802758778 972354650 207964189 905642653 971026665 984830568 444834905 22089710 748426629 324697277 146314332 621302259 359394042 100762252 565002002 171600004 636683764 387813916 999529789 568661899 831741151 358858289 736364689 986581081 523148256 949899269 225293674 694729542 592710543 285970696 181447169 469306437 908568669 834040573 826989393 505233499 711392485 421761313 652671965 755617523 590600806 251082582 112198612 688827235 905529206 272107731 932528375 298397431 984613041 58205082 567772890 977025866 219704097 45768682 350942102 370236321 587265024 528434646 277330589 276422254 746791933 336581555 938018500 799261699 786281818 200489792 389058073 161469359 158490337 910494325 397867422 335553142 132972949 100384015 973446873 940152397 875177161 205548329 656846849 525599857 931124981 211410849 290927143 902426496 935004957 625776102 759628295 931665316 444126246 261125828 16719132 496832125 41602641 307147383 783702085 701675992 54825079 745076726 787075433 118877073 290553713 23746282 733188073 584811747 109349666 488243526 881896358 786336522 288271313 358021954 681136336 638274958 874206399 671371274 15196529 744844950 563129673 973297742 461648524 967711968 576753290 371054654 836642474 886041723 400359052 379980871 734801604 976002507 739028810 30299372 123583003 62092740 877958013 699821115 743424546 782925785 286888971 618911283 164729527 859347213 101558401 611056816 535209071 860378625 966292548 263441553 411516466 28305405 54108754 629957294 630940250 211780296 826960452 961662187 639635911 94882984 908948611 710191147 727561333 317587907 35254787 79456486 584008482 205455024 640333887 621450020 256908129 588454606 629628600 204061559 950543349 342036555 831241628 597325843 674168570 838497011 379987581 33767878 326559871 331405062 2276028 147591192 845449412 780042075 936627950 183113870 537381294 106457365 464293167 34739550 423895883 310940359 302066305 823529594 740658823 107923324 638093290 916204395 930911515 603306370 64966505 420921252 628458008 885802906 967998186 363095788 311340510 635627638 65748466 28701246 685360624 751759684 551407721 756794937 106208708 418048489 556355690 145534233 381498524 118217920 938452980 726290315 259154037 916260757 827496737 514622869 461335686 70334898 345591693 219537241 316629280 950215124 251384222 661598365 861152223 907008948 558231663 4219620 258581464 517420369 956754071 797339143 272845634 952696032 270654523 668545438 352713151 409107057 170516446 360597392 148464603 152762864 77372213 522869496 290279133 870183405 831057951 640725689 645116338 90249003 80298246 262492071 714579914 270053380 539576409 926622924 458049592 242645465 619639832 942960083 370383580 405545771 280404804 70643966 81762727 680357947 390231504 501230464 291121245 731827569 333199539 202748865 197462211 605440070 787270981 559602528 608864688 674667284 967977567 839565105 556553597 424420949 511861398 154263208 468836645 304071128 631727762 85306892 319762793 618624043 209436926 696111808 448109770 497983991 146462419 604695079 829805871 280302278 341528902 468908990 721634443 184638272 162294214 994070044 514518148 956470608 107762757 551225290 243873618 109145101 482858622 635454234 995255996 739927139 437315425 147927022 940227168 717719051 128297097 597536327 270791989 689997271 790076823 390399941 42227798 141154540 354308072 485193512 266719598 13381034 911603563 452493301 486766464 990808537 996015728 131657346 912155858 665208565 617837307 26105593 794085406 7606239 675705610 246406482 399992253 477783228 584253265 304589374 831354989 879742975 367445843 509471389 707498888 981494367 386404157 80679979 508283349 634744570 760357025 837629098 295395340 475160174 1195854 267602991 368036955 255346720 60325392 556859704 149512700 677577821 694017201 682808303 444268331 731393495 889007714 909019116 467892268 9310054 927223072 861508870 562552941 410153760 71435652 28307869 390950802 961418480 229134520 443932785 461243013 170973640 482685923 420045812 235750300 372447906 610090874 561472987 319802720 363039773 128434622 279610622 941817594 260318107 356693535 173597163 954348781 973313466 493914685 614752720 745856002 298875577 588657816 149811901 771452028 79542552 683779127 358488200 85954426 445022218 786909999 444949220 265300495 25052066 608168695 745356425 538669945 567122831 513224115 969345608 619113200 751168503 258053372 637647681 199585100 435012906 431648762 735271226 748763982 84718760 66322735 627826052 197635394 881196939 816674509 637691266 747599820 821950571 104048986 25976640 804641943 184076768 194988492 568617612 923895576 350161929 404292666 73853353 645953708 80179307 17957791 726707646 133296675 241599554 694446916 166377304 505889361 544715184 960520214 614128371 475472766 158415166 842696118 711701801 198256092 541755126 796687115 321078470 238704130 457237763 482629381 933915484 361999949 775778229 579398814 552322000 602532972 514062284 485112897 565618590 891051965 462796734 717639834 793663526 60574897 961147517 229276141 988278605 536439787 788274163 462721431 935734910 681390663 953673912 771846105 803422571 452639587 640913173 661701831 196065623 65144407 150947923 69945194 314279177 722118636 537866935 768754226 17259127 722743407 486010354 540425267 395264154 534552156 136720717 267979006 895174295 48844719 888561019 890627013 32522968 473413070 985514721 844474960 255289495 618803251 508163103 74760476 685094413 127218099 82145272 744114644 584015368 953390040 152538208 185278415 99124587 825620852 664807369 722069490 271878461 65666446 10833433 633413638 94832893 972202057 311871614 904206210 995147252 875264640 243613815 156642185 148935260 373074521 367080370 233970677 42829830 125464087 385970624 746026543 208666195 537563138 370230711 137873689 458540059 157898566 809996116 485989090 399586528 212065290 810226534 549701272 686578373 454654732 231576817 415752879 635376764 25471038 231445432 311728618 11474632 336642035 70198996 433286188 772253602 707746072 680531722 65512520 108629754 492600816 276366427 418570046 428482729 356709329 661907084 313883947 50134131 941464782 103301232 667429655 443694850 8189141 512834036 35998140 211416371 83391437 420236280 135421014 49148317 263691142 263884196 716677125 523481412 744438877 808298858 109785094 35290988 161751461 562356345 572683707 516660584 51085899 584579487 507441340 974052013 213278512 819623686 318286559 247060427 848139499 309629989 89948952 414936643 259636723 167714715 934790427 62398 721458612 963672610 821186784 959470781 231902602 530154996 78353489 753311435 134933326 593404753 723811396 2732793 40226718 867973303 266803379 458236330 62720119 201319746 478911356 315197386 617712898 661552935 469760273 505693652 326178248 281260979 650905596 410748391 68103925 63754380 723056880 241970098 10209353 426914691 30095852 780188710 846041993 195219822 81503806 333958463 118715705 510254432 625517681 237038844 900540043 491901503 837273065 950655735 62488040 763824745 902478616 858859812 311370733 868114428 114145709 239392524 735139454 926911840 954768430 810686704 927188956 252783445 190526016 152754648 271704736 629817564 646556633 75370875 160838247 654301704 241534575 783664260 714286308 1097572 347635124 986292439 355757985 966937237 341720541 514364968 377216369 183318555 11868617 575380570 284066740 680143486 259580277 866667817 113121876 108073550 374533646 376332239 497177552 81503108 762984906 696136844 167787327 94852480 776791171 79473243 67038174 428071161 294782914 740581018 434976957 738291621 173886795 144241549 977569310 900685984 793608553 876480861 517589995 488044560 942465080 936195195 232660911 672345583 989693451 736080447 33660276 199194657 552397540 11881678 872778328 152440393 772570171 176349513 97448513 549970954 496370245 195847516 125799185 673623458 566945452 318876569 393035600 258528343 478392582 431571726 28605905 379865825 694984495 779294901 911928559 689693048 83991452 865150067 337982975 373691903 305628021 274359199 431789102 940965923 371747549 740567096 638419568 864969068 115780526 866919264 462981851 568983365 390742227 510807989 881636007 391736225 766854887 627661441 503163141 933483544 521900823 71318794 101375368 174712274 725451787 787101634 507286512 334215918 555271344 997741694 492911182 269052309 381612593 874686722 790031598 371660762 971902990 60464058 996824238 959996811 855403203 592348291 768932959 400693010 68237927 931498550 80160957 354240829 847131412 624394678 625141538 382449967 187217145 674117681 644832639 761776043 86823441 132033741 676341641 801535688 462996381 373566025 668141232 703680642 799268324 328731840 978605445 375720853 588177735 506832267 781437339 408757303 972466221 109283899 155275337 376330340 685203652 141421403 594400722 253852185 6297765 39218921 16707571 280862982 493653931 713682194 921379558 581483543 847109267 802887014 284970934 440466899 245432245 816832416 982756975 191636030 729702498 687524400 831153865 238236861 918578314 731505548 573067377 67558148 472204690 417129060 681887212 332663615 73303627 278170457 657347863 361717203 809717937 398857027 947637157 494099164 926687479 643437279 794848883 438013495 595111847 925776139 574893560 56485145 902042143 134957681 911313914 992593711 921106707 992273677 1573496 127746488 997964022 803135379 264962921 317778369 151218881 650126518 238280320 517677875 470082225 688313608 288767020 703746543 198044149 625278297 108409117 754729785 411037934 383726843 746021664 351592793 169766437 637675429 460477185 326681776 862454570 295200116 454508842 48397889 655654335 361625858 349113952 841284379 150188202 427119456 984655456 316652887 155427182 604502756 136155040 197740914 823934974 67844653 179906764 697933747 779104942 966372129 717014016 778149363 560860931 77273371 909755714 4034203 738884855 515212588 838193005 348225475 769757379 418483899 316642380 935409081 735538838 236537750 827140275 449488964 606020759 986032944 58402216 857321075 46513915 393219923 8650426 671845372 690067716 64366072 372680186 66728487 567555079 521427070 105443724 704311383 992409798 94756190 960239048 844358177 403587028 984415857 172821215 724600722 723106379 16433217 148460392 117058920 573383263 196575910 900326206 882863251 618221509 590399362 408513848 155819299 927804014 594367189 934221658 99605113 602543022 511996280 913847271 917535855 629562977 517092706 437014841 563202466 346240750 17957650 684811366 966104046 379705054 291697325 853344116 547226611 242787822 481159365 519110516 268213640 145991294 590981839 763430778 633757224 102951596 718922201 582632736 920648943 786153234 569065128 742155843 618528222 825762866 54982568 255226095 671660297 626533327 164394686 100276948 174182389 505285339 521665757 52158230 986911451 285086971 416720276 851916070 85434419 883551772 120963120 654247633 975093368 5773071 17608326 945171558 328368868 397863479 16379027 562454097 457210345 896626468 334645048 211962750 896675669 855265332 791704862 261015027 515411234 438092607 462665477 278318534 439710477 55969393 96955602 850395194 206537440 689384726 738125384 981271717 321148350 364785325 370267586 844073839 449242774 316799910 324225132 459124169 303152398 573798177 527884048 608301004 737782822 987466939 630160136 1592874 332566856 591855943 812655930 639255833 82435837 954589557 36041661 760500895 46612124 568996252 681703804 503446635 494781722 75312602 898578216 860085358 919124036 950865833 217740113 667106790 998533461 175352802 753937718 727478292 510734594 432116020 858698816 249913816 11297565 95229394 253117236 830345748 617207037 105877520 461928716 143103739 861346629 353859498 850913895 120781367 929047361 170899472 488934807 516641688 675043329 811252111 600332142 105713416 580141165 865610611 97325089 844878676 906850693 439213813 863260320 643593414 218773424 112363372 106303089 304510905 367867399 865731276 544048077 67833998 364847640 954479927 715023558 966748039 323967353 776167524 354103560 406811111 619620871 108909646 35785674 533500755 448231927 165331335 606053114 120010858 852254668 566686565 584677654 297881143 640867521 104218683 752550378 200427000 746281031 458455317 841715100 237429759 669873579 925784940 543177042 459773743 494261089 424750868 120682312 147313512 400861788 762398832 710672471 850132219 80988866 877118823 902404641 99916287 65932802 932252878 801435213 570410765 541676588 263873785 392760090 150229513 70054815 50890774 777992426 546611153 616195087 495233866 443240109 760984248 838782608 509539594 480067917 982236518 836848034 32356309 834769228 741261210 89599806 462737993 498679873 861576623 70756636 13258954 145823804 837268181 687724241 649171640 623273336 458202622 504928436 876570004 919204094 832390250 94801715 437409216 665410398 43183887 642034415 997784985 845398123 896187590 522893190 848267502 120212631 492499387 158618590 734042114 722355920 912197873 522147434 139918118 447699363 468755114 227013133 35929439 148721730 344411338 847043571 858013072 560022292 133649717 46413607 590828057 153728069 591985397 118860802 51050729 347598698 269947996 380248047 261788706 58664882 248264497 971348650 645744071 224572578 824380613 634389008 867332842 52204395 418184911 678772856 474399310 905383945 764793482 529229615 918598218 278337936 733567362 161801921 388253260 917562142 493862873 969213603 334111747 77111570 493457637 493726925 85862239 772073268 224861069 380603555 784366966 303470996 685582135 138705682 211306038 702988575 941850430 747487960 859435443 498056762 351202226 580731573 786241301 625918496 653423300 76926878 815749089 714807654 442500937 242124719 565183709 907915415 98234682 632772617 38418568 741596877 279541112 82893552 543677517 694970845 806966236 725899438 929084645 223110160 299834204 978548865 94205480 605544338 697082400 658591127 17312355 77429190 168636427 561185115 926385767 442370248 96629862 431413771 135841023 607818315 479357673 880950653 282649220 815729547 879072409 419565909 312633881 63539198 257094856 441769487 278427116 792754720 244497401 344379144 828650514 333819539 500380972 311471601 76142665 418966744 877047445 34595334 776419183 617850965 145074408 769577630 50977478 386577924 342650561 399585327 203494099 522700146 375681343 794765938 982013481 800432916 977326895 360631561 242538725 765367786 109144715 706401266 387912714 339298271 706594883 951262492 284832524 144988448 361654175 940771575 775847362 478781528 545147207 167635782 199665418 802020666 9552582 614576785 308226052 729710395 108840041 898159175 462407623 293128154 210857255 778002732 52645038 345858122 101162573 696640391 422181326 425493859 818762511 402051996 82072076 502338321 524099102 150449373 851424779 601789264 625696765 806691965 551918253 475010829 613040443 634474929 907034135 666653173 256761215 506395028 334386330 107951974 89962543 811599437 852666349 757067994 501654809 625161138 832900085 581772232 952900270 652035974 715943198 578032276 454479620 16377516 621752564 167734487 970765839 367623736 600811147 248237094 943846812 892040056 975748693 895577038 265331136 924495625 565519932 49281228 369475809 713881239 21620764 636216779 470034481 986078910 127052740 467873929 527439574 24617163 262572360 847709579 169423230 292368383 623402896 816151537 813485398 453275384 36692156 689312793 849583530 269131584 952093552 475911838 803627785 976117660 196365117 244824501 396661185 559086392 530000888 572291239 273059699 118875106 239817858 127253252 169628488 143104928 260608224 73884161 636312658 398261574 176735026 986394668 194269338 978568732 333848633 637823266 711169507 549444906 125806039 339463777 666014859 275833383 257533102 955814655 230194493 976307778 61358670 351768689 617516676 379847145 776507891 673228132 622044878 971463452 674356610 675423438 440793793 537268277 710725141 275460796 970791031 743423971 929801446 448106016 485447827 537904930 116346374 975382970 932421837 174719117 837699072 723538969 79332562 617288436 235116957 697597283 22025826 437702104 487744046 918277315 785564254 187555473 488128729 7170138 621651502 806450585 777636508 418154298 543921180 390765528 794162883 445517955 973685891 779099048 510468423 307198016 341431892 581087376 957959206 519914805 909137478 897410719 982795657 877228716 527516190 968561454 409931804 529470934 101451722 742268970 132224773 683358041 23102344 159194683 874234062 514977692 394477857 685090215 746715730 783269216 570020102 771624112 700742863 584681149 797434358 833675682 212422595 229039151 140378949 616941429 165282697 398262748 954682086 88950757 206092160 971335777 595151145 766205388 196197461 421908362 885524977 166051413 231838630 221727009 980694822 444575713 593884399 269207808 643044809 509970183 860417241 215721401 807398955 145221227 864557657 268636725 300294332 473254007 20039525 101749397 485306333 823638504 212810570 835412017 742270864 626071136 359095123 502922327 176227899 207685542 861966444 51413241 172677349 504626786 551547657 353432965 546233916 403696316 487342177 751897264 158401395 850946562 720423057 431531798 253067994 198370889 321084143 657416630 780341430 132641966 564910471 71432902 626559228 876160044 707153558 371445802 290532608 92673330 819641114 458364917 594243474 576640842 908309993 944257214 373432232 435909706 830914436 160732708 917291316 436625536 833839409 284078442 176639097 545009864 745058277 342202583 292425524 881358868 353606771 804179326 298596586 88004641 162593399 466113315 26063061 203376155 290520528 102159121 665499546 652657776 688854010 884950367 595138072 671069497 676330307 974676505 716411630 231417748 856923566 807435054 695479495 523155961 63847839 338939353 568518490 759261808 308531582 533373067 668252772 538959493 32513010 293709645 288342468 252554043 599577247 888617363 244717540 584824442 469130362 670443614 979731458 304248271 473496737 236999458 195630677 570171057 287919910 277897874 179675098 352497194 582552759 787901440 400473335 689480963 820045987 462147429 544395997 150048626 924675824 230498821 492144273 666320092 57748361 683489833 188118901 435274880 38647905 865211296 679467980 250596725 383015214 594154740 145917910 617535116 502063789 48368773 884152928 2787687 743482532 55317981 153711128 339330094 223727282 487450216 1232057 28201406 805882026 302110214 953215856 547934237 870203657 373850423 448728586 166133153 315123496 347151600 425840636 921619419 740884199 56573260 960858373 429215267 477462403 319758551 579820646 237472231 936257774 62981065 950046545 433738651 787703679 877428388 416410797 862005493 352827532 500727985 676304998 723170065 738787606 448424428 121559348 330342634 304408367 969199231 154417995 369692560 721356465 52021945 909280991 939816568 218944656 99909031 311176484 267941393 641098085 947440916 854064060 992186782 726378957 270999196 118949400 585799258 962526442 966925174 391917441 230030492 564737146 723235708 212334233 989676976 626404134 908735758 822022320 152091662 51060486 677322776 766248496 337528399 394474241 408650511 498706372 407563578 320487713 550498253 663675114 807311115 611855090 284712447 886048736 917038205 224664505 164642778 624055769 655802708 734386170 725839170 199553674 273673205 690991606 759540150 244500103 609104233 194413641 472970132 164618535 720545156 22561375 950816532 396300527 702266539 701791080 668560322 158426807 414045586 741159502 689342484 225582171 799200910 213541646 586626904 126415021 911216414 520642944 267851248 760508202 544942999 22031604 972171550 941012347 443810625 601217057 169435517 482277933 881156266 406992800 563631373 22014669 32637314 559109582 305831475 579720567 76631440 978884214 292057849 235795053 646316952 218145898 290842224 889336841 196886028 260319643 135615343 898257481 752896409 446464530 80255382 210130846 52459434 816231028 441094224 723303077 822452921 17492669 94188967 504719232 503520960 184463169 625993018 229843404 481433753 112913518 720008716 226087798 565263763 996729033 774558622 575934438 349878544 296447673 219745833 47247442 688300159 523368903 350865580 693665117 593393667 968519418 9339375 824062928 306624507 901895668 201828390 181697944 937171420 617666669 453020848 77032696 169302135 796676074 15236869 164809973 255755398 869738849 187969247 406835720 395992722 217012245 857927338 726972187 797427733 506975526 703800247 862377789 162870203 429858138 765153358 9672383 859030841 415854949 379215707 186680173 520917336 186200114 227475284 47365930 977991001 388608146 49463066 411216655 768965677 470424847 570250307 971940010 63797031 614691927 675932059 964076727 346192248 593732846 828567272 433896694 37344921 188079355 596959958 995327178 667566697 921754881 974844662 605172018 969909375 48593567 826681291 399510461 448546824 470438510 406540765 440447459 115461928 197384596 857785405 759306090 123111140 515706594 54302573 416123631 306490642 632772589 437559475 813073221 515161835 793377483 216301924 484537706 999491279 475765667 563666662 90231739 163971719 288549380 175475336 846624152 733974627 600162943 652920559 474813395 509221528 658631602 726746954 888181850 806395510 535805925 13514959 892610677 885457572 618239010 53455984 669429894 715815619 523206997 362148866 142767853 714336483 505049251 644160891 20988332 157468222 265673556 879669442 843938203 872554056 399970653 232279345 680257744 926189021 348530486 264328157 529942586 975424206 483057237 796266636 221545624 268628623 883680556 522576753 381251917 266856848 956993108 715944328 301214424 403645469 363014829 693535942 926210309 167926232 32786309 268343940 831893891 542642217 600043989 475480783 77316449 589985980 602769166 396189320 705732013 905050439 881068922 565760773 919444167 218449971 902192948 653624953 670864949 945990348 552562021 479017948 325213265 858163588 301177108 374075701 821038538 217930117 974894535 858591220 98390674 794584000 90707902 145909127 360082631 756062779 620176508 368157987 99125965 118062687 685578843 628001994 841139967 112800639 934834450 709290898 885064923 243917552 825517913 49849221 677004189 307431761 811594111 529485768 526808977 590586989 961403905 834819728 109285791 484073234 95910133 30430342 121592904 117121817 29639628 939405609 214333847 979127702 944434204 880884631 146556363 380294062 381386247 10514216 283731420 567135270 640876380 398965446 225924518 997819253 410728611 940312850 342400269 638222808 462703537 7328932 893813431 514685098 222031102 886924697 117035634 877951705 951294105 834376397 729209473 860799572 647380868 362067394 455398469 816587724 803730414 847384270 890810194 430999019 208742938 395860495 41116532 693608901 150741653 481954112 95682879 861576468 741586128 94368763 436058537 221747515 53018817 281131762 347635648 747081249 258524912 637718346 439562845 875921836 5534737 575570790 956361163 414443969 492846846 547742202 986799939 709533522 356549570 444175445 998635045 739968617 334945344 688731100 169868522 77716739 786633621 615555643 459586128 959165028 319374323 65456604 596378912 825118629 190621692 465215522 256596606 974765274 228427854 73790230 782241956 627831355 582889132 696833958 971721257 172275609 106865879 8999005 595719954 125267467 472636113 326061093 862095822 550268842 607689218 575792694 157884496 381024853 412535465 867341820 66004120 608199230 838655442 37626550 260514244 185988399 189761916 299769594 92913087 788478456 655710510 854570219 508998773 357361486 718120678 396918975 343973266 624187390 167985929 270458750 503388118 57979753 509066583 339910569 353579487 2165777 228163307 386003685 137918382 493657756 477961173 687037777 430300905 655244281 145444772 428576874 234350264 516306746 82907760 17254409 156862470 552590270 827172299 28988728 924036239 167188336 215366666 517573675 734257169 989771273 666160132 70572560 676613581 749095853 165154888 10181232 330517800 557867928 437393776 435567625 461847950 111459400 723261495 580671119 249533071 643284393 910642280 770956633 756918182 977551672 364478727 949191176 648449459 258936354 349723937 639463688 81914651 401733159 901920441 544707133 525342123 524216664 508908124 775186602 413588364 905170588 710071633 703932023 132568078 444146383 802715838 512848768 335101773 295750038 320245713 257295674 710473849 901622122 910785059 922507493 234787439 149562299 323404084 312836509 745985061 150851211 191161183 7951189 441186654 505413540 342382254 100510543 244946120 126651226 85142670 255843862 302627287 415489828 559648268 886183206 331539920 284130504 35868412 344280734 619653338 722339549 943119401 101022016 601937554 938664438 663079240 463771403 119042269 813575994 911021221 739005263 545091733 982707589 535986392 102388387 331614115 618971596 801961428 897510080 813322067 668037956 817876034 749145177 810046055 625790661 911847388 42970238 808397947 122389742 75465688 969946594 762214539 995401918 818353856 273467999 95968246 748715002 8058189 945577999 794217906 811853216 10985207 999266412 238433085 62714936 642284933 925626298 587484105 990672425 552400233 519492400 162303022 361097676 941987600 554448757 776766855 387999979 28147713 930268793 325408865 256430188 429075981 376804451 521809025 718208596 747125271 403007787 80465569 169460905 239227637 832831899 64207331 4032464 440278611 441420395 37391422 557131800 888152143 633602522 986363434 442182883 976664239 833994491 678558106 240580845 821659040 754001406 674446915 849996627 513109839 332090416 325374924 283118915 343860407 573841842 52386509 280392001 587258766 546948847 616032244 700160906 817295109 833539825 667962234 501334471 786285452 891282843 786444949 609574838 237676340 623527422 853971087 145567438 996923379 759829170 876135861 669063142 688409025 650132641 480872452 159722911 855026165 592317394 488164698 753441554 94527435 8894014 858765439 634669358 823269348 311661127 177146430 830246600 671292496 158921963 123051403 323724357 388651645 324104633 297555877 435202633 293436863 374820196 509647224 552311309 934554116 676826975 865416201 536698341 707976154 522506852 570779654 202025222 397606581 208476607 322153073 77189016 216649668 23824070 154949266 494712377 758792295 581324399 426177356 531860165 921836064 601420932 447004678 956539773 449885742 162751051 517931925 305886954 647453205 80180291 656297318 708569958 297348730 76917923 809715382 776819654 278739868 503404032 124922536 215632520 575590238 616472404 179348796 379285481 767966470 920024118 284891352 268251651 640773625 97653445 987038232 612757542 489847997 956960426 560983578 538952491 685956029 466037686 490300549 474680773 588193559 81548163 922422391 573995448 906914921 328145553 950375755 349764182 239403983 399250099 594100717 881976485 561502209 909154703 771603784 843821832 699128073 146145632 235924253 715917913 35319599 435887773 577836318 751195598 31197753 416609636 848167691 907805123 196526575 735356736 178185246 230475600 50709075 733798811 894885786 588328450 571125070 526341950 860014773 384934492 659307074 937628342 895719166 963362556 944782423 53302108 615609608 554779603 386561738 156413801 122727346 261612759 131863895 9199123 401273557 381705228 691961097 21957140 192664000 400395502 913967894 961741912 649876680 993916337 300518050 767040342 14754110 181356585 227447651 586319194 423602790 998440561 573795854 677224238 995867674 5846099 847046619 174981988 982719746 316541609 527692515 176091688 296532032 897174159 206625599 52846618 997695042 974089536 38652655 48963083 283002428 364487821 96627993 840097779 720207756 8417442 730525293 926560037 250056636 464096534 191002063 28880568 223641624 361020360 840298252 880329945 40107586 86639610 920397111 391191885 100377814 274651396 560157361 908582580 860339688 973967525 477042491 342506312 196193119 916644313 3320772 506756645 287835624 555022250 888091037 459198604 420511750 776819367 849753373 364235846 410477197 211223858 165577653 309142445 800044487 148860841 711856430 35329696 636329625 731297427 876147282 806067325 422083982 353909620 433931526 83245206 798157492 587987091 674707899 125556265 27676920 919277812 416996097 224884858 792882095 207889008 311238651 683840998 601137691 189897180 714517488 985920518 27409331 632309257 945335203 239248572 744752010 757527483 852845199 515822340 75944044 715459867 218626407 639148536 165568302 736093039 831440934 300706167 282300789 860609270 796111316 432574665 247714692 907077919 214752160 36900795 304523022 537724973 433209079 195123438 782945031 866382793 73379317 464841644 308721766 840418030 243589641 927338812 438302748 118607741 708152166 811761091 590886582 806538933 816322810 433825720 710696824 638995422 12252520 349999239 743760831 779444247 968347281 200729305 466281783 931905645 660544047 190698515 20546191 571787361 820973060 259024922 48506212 828064660 894506061 704973170 503270186 371632934 787949475 702019480 804277805 85092863 739902668 794260579 717078306 872584283 560238580 845191561 242725764 280977036 958275033 930518583 774029614 715498857 972657791 263208351 545664816 193375816 794692868 435413603 755594441 827434220 165604558 577411004 673792105 903132638 763958024 568406957 872836993 822766036 415645214 128880756 984631035 639809793 471174973 466088100 574567060 449455882 784992606 787809548 781958305 464293657 556318702 325866522 147279526 146854124 691756485 649320812 16404912 103673207 377806185 840479356 870146974 77866091 274993081 392189577 113199136 378776765 507781261 429548080 118348930 726411568 793655600 490239597 333028453 260211802 414477296 823120717 486061527 919078475 512394832 782239373 834847981 243487992 185765193 717762545 825973861 154440031 5957544 821039775 919446690 56949147 702522872 25537418 834449607 448103308 121032835 837075424 192605714 494149626 202464423 569077832 162430597 781524095 451247505 323829608 298942300 430828986 55744863 931237317 516351014 760139418 597525266 858120482 816235887 197755618 654302233 248698540 134982199 377298777 283584200 191184001 189489180 846390837 663477166 245243930 520477596 704834637 294575055 261607240 426371569 486139132 684505626 200533890 617866493 474509499 531880040 765011224 220961715 552132249 733374456 888725826 442468264 33425642 887157518 691798593 212156052 733978301 601696003 246316216 660570989 399708757 687074592 779937162 414836459 263368718 722759939 99621078 952729468 949169409 102565044 297593254 727336607 829756575 3874332 878618045 169826991 429522395 931078703 941580544 169717658 979103103 583692021 310874544 394088613 702015544 351405973 449573404 712927722 164826343 435830366 243394157 470700195 806377319 416898981 718343736 955247586 501901841 517072027 423502813 32723605 180059725 951381487 597789351 132354985 83149183 40112598 982467799 24457519 681661048 375574377 332048958 152796557 401527647 33467848 604194661 408256279 459431644 801584349 757009705 744929990 893522923 222552344 322332013 101458770 720119827 392327690 35099823 874029059 988257641 397683385 47709604 9506061 306475959 446391036 899392281 804166249 382969939 700377618 100534918 841372544 259676103 35445134 128687024 947882714 405904138 239742409 916403571 440594854 480792390 737210123 966579105 73952951 916861658 964020713 969890691 14962480 754574241 462988802 458761604 979924709 564905952 964581669 601310527 270466113 48402828 413086416 897451079 203659894 703669917 816730771 211022770 45891543 763314937 704823511 406919873 900755588 414299095 644625385 261745696 201907226 926766785 452723570 477442841 329448890 585178422 631680405 260254129 574253080 1211328 868092549 292726261 510759792 476875822 523998372 306370988 693280591 270974108 614137145 736001484 610417563 909064774 892609603 833909122 857672882 769692840 447006747 888983491 890651956 140702697 231031361 354744026 340190570 28427873 177765038 457633475 651240302 812580942 907730493 104449110 249319021 420061785 272511752 440979542 392861859 555674314 357820325 282759379 61500079 360821939 384871936 104660409 269752806 830367536 584072542 543000261 301235150 451556773 856444444 402567718 148953400 428675324 263519093 416252421 162815612 84195287 91848793 376095280 75175226 626002951 268145541 900490899 333423982 36415226 82894235 639778503 304801175 699514521 310753600 936289005 394549554 939508956 214281215 121767646 609141262 105376002 315980892 757785650 653568855 802306293 687430764 432167343 960655993 217862224 938178387 144523201 80476844 612206527 192277176 413881332 362993752 512134216 342584482 593418011 859016972 599471268 860049494 341917561 472401398 892989285 154625234 635166344 270063133 849644262 775679706 137617318 428947442 611676835 948209806 951485661 883253694 527115106 792300812 462470819 639112379 321234131 148760028 538324000 199734676 927365324 308197282 870627770 958760159 795789875 735992524 216801001 540417891 874450234 510423247 253166345 4512790 755710769 756301421 435217869 407053651 539911677 390738906 49081553 623866324 442042165 9565927 46472577 650874535 631077165 941985787 855045727 855734582 118288259 843478088 136895238 253727547 690892810 40851191 359878120 437978318 707149511 31583414 901313542 460793520 567326864 907656112 206725224 732943415 872297579 772157194 949867825 917052204 232693050 36248777 756097369 80201759 946701403 512102179 187705998 23413549 699626279 735956337 366806376 262477991 624785578 114060812 403013498 42638053 914700785 884749320 462340511 121165545 746700634 576048084 866147355 77449339 284910579 276451360 864074648 227015543 249730787 773237448 724107344 86800353 771618533 89310172 971208770 405982202 896613587 480146485 393305862 724826946 664590135 665102833 922131274 856517196 373666733 405381718 132604331 387152552 17724986 822011282 64201986 585298016 614525485 829285129 4668827 965450839 286191915 437142553 86653007 371092905 726434172 293882175 821284796 66901703 209471128 23616104 927379960 740713820 508745756 563902579 788722144 173215167 535393121 420923149 665488465 924004327 998786107 493236099 759356135 527826241 197331107 300291033 226714873 533166543 126538148 393583657 289429201 94751272 568167362 667372164 300913212 717871632 284932719 823286495 909836326 951255326 764637396 82308232 85003068 38281469 472038588 60264090 716859708 723152566 103371643 658965529 407862712 635516024 793160525 210632422 858183262 556075023 308090325 751782897 633581744 718370718 392307415 856405889 440901773 231522322 98548291 910899962 627787420 582699860 807334831 556726164 971354095 337890666 928422022 243556032 612002589 825120238 441206275 492420026 580652207 640038490 740422264 387468036 749859581 607254335 385978988 56601705 212775577 873353719 240514003 901286847 70706322 468217887 449744864 950905059 831967989 211584900 208133005 906221572 362285598 508977079 158162161 60469544 276408169 253468870 578308077 104718759 905311632 182513916 150402844 625730004 638843550 201212758 500351895 117279725 776450974 322400888 758918990 522328883 132348250 384839791 195943383 677851937 733302277 951654212 276778681 386933896 663868469 441350987 947467822 289329221 604297419 285257614 848183477 730060667 501479276 130524297 976957954 662509660 22025149 36724363 458042260 211433536 178260050 128027538 252314519 694717197 38286474 289804239 305359503 157889476 991663110 342843740 186186760 735622395 929861066 169409469 945517915 611137253 661761257 222914307 489570966 6264062 997850151 600916316 510411989 800621705 220090524 541119042 271306658 168695818 207497442 100732786 374874797 633466040 145803321 413363909 973087164 443150791 437768045 503155379 913974548 997558138 177506933 347356197 51949894 18091035 232243212 744404174 80282153 288727653 990759919 536754526 552737576 435010941 132486478 235137325 531805612 84259872 406358084 769807161 857039649 798741071 526346096 148422573 289268533 670159106 59774990 569473481 944439964 314543707 918325390 178165233 537354936 501562559 890758007 158622672 792058751 220837831 913704706 319316614 359399310 431111826 680935857 469868752 539790955 866175113 873281403 80320094 324581965 764540694 280311894 240554143 792408699 170078808 302099448 574420421 208442071 403847195 523591104 362444642 759673517 54973174 244749657 840581157 932142162 213378458 840125376 776261720 579463771 460018415 577182618 397617555 925498871 576327328 816963532 842823281 286401573 411480344 924516312 858721089 787590953 939559445 612170146 433874113 289167237 800217681 123174691 822987797 938051422 475890166 919167038 243293548 852550847 10794750 437774935 470077820 156875880 689894373 645062495 919584539 189305438 908718862 686751905 815836567 758548542 889453794 970137075 387253622 125035264 826223859 117327506 758572398 610963692 305085142 463373570 620358992 801652608 326355433 858255851 59881353 942424091 665678216 451368585 977658805 1433968 33915954 574586680 892281715 822167960 692260373 163492976 753065268 979852350 338002419 316073122 346026921 30159327 783702334 851220256 647085447 158174 481160864 695544189 135409476 899383936 989916681 165945312 73302721 998681675 993678390 480247068 299420907 457392261 459167224 12647355 961695284 163931796 53391489 375453956 400863996 341049413 876762015 92438670 603710299 85508378 730491988 219288928 166107338 241461750 534456497 407971733 314838405 373225024 595729847 662156664 920914658 996123087 20023659 406546817 300573190 293982369 123252601 982976777 953652726 444957851 233683839 89671705 876568676 969184704 615894556 707271262 317962385 333766864 608531312 142357878 896047406 469019218 924671818 823540672 177882860 656828314 567244111 222999904 131153527 872382395 839644083 306809726 282345380 93025242 172487554 197126590 428872218 677916147 338738136 111424497 938448485 998679918 204280956 217269272 987282658 901401265 558346223 280315841 16590169 623458837 884872347 120262669 343540303 118839099 781259169 587927373 65464520 868024098 698580247 727191365 305404574 599783716 516851270 754138938 961905544 866561206 424173286 541229480 937509789 847895468 182395727 492233769 332200151 458694411 501427138 382728604 769187185 58678523 748746337 785782580 86948432 505142664 868646096 688151331 443213117 945504497 344220254 522232694 362608233 899338063 679345908 300013031 5940112 361771263 349467762 645577484 577471229 243964298 120917178 46538140 212896760 953363421 222622484 750889297 130560239 411820536 687568670 416536862 407288762 937614327 573857731 953914622 659446863 607654332 819382358 902084246 254520298 759034322 825025740 341421769 480714839 483879492 350865650 481984466 362741182 798068547 287163792 772633806 603643347 814472533 289840227 163573153 792516075 64029514 961168881 830083030 140435850 656202483 516920697 679011125 588280478 451259351 734955186 796689328 604047617 37859308 202469897 423883485 26926812 801414560 107191504 500647126 799169715 265017334 298274168 888296549 686881284 278774197 369666987 229330080 809148156 859235464 540173162 670173056 240836422 742549191 416174185 536911066 456317945 251450593 443823435 637151551 92588347 664076088 555956017 101240408 279495286 723813439 340244617 978005172 615346739 645395251 705291441 60801553 344946812 752009847 864272693 935069701 262988477 963958674 459407417 775929350 933436267 496949169 116990161 480137864 803669097 390399455 120645018 633688689 341876256 682369807 66319877 478471879 529615994 522518465 492520252 36709957 406196207 555394955 747573254 372372911 690149763 802122733 158980943 547261832 385967851 498065051 370428073 195946912 402553389 581074574 499763538 988209063 513992112 348491951 433420593 505681681 837878803 563747861 262866682 870582846 695197544 687359154 196523836 302789523 76036196 509456699 402905981 775831004 203175354 847930563 840642809 354068280 638433643 202290796 443274673 976081983 215763667 645957592 600365403 626977655 360051882 238429846 729509888 493293326 122327275 604691342 738073370 497486486 803806898 738654484 740387330 559439899 551337363 32826944 692717493 733310045 344071804 197241636 674104343 825688357 538553316 290326682 462008742 565086347 730383760 313588438 203658158 6010200 887710483 812772541 920473969 181152131 136090956 638796664 464158399 669138511 451949187 471765790 131792263 851680805 164292538 861058828 84392851 330378296 958812066 802383656 555558509 140185391 862984864 351726939 631776091 950814229 590001136 918164453 59180991 136550131 268927658 911068375 531305961 289899451 36312715 380534001 910436256 655736635 618523837 787506331 29075662 290517979 523790458 541604923 726215111 529325825 280392779 55647682 138192590 664892252 894100198 540718002 17164815 453497788 464043940 901208828 644026576 235991754 172341492 546716722 364341698 618517987 421570733 639183361 487561358 37586465 837716006 944754728 848672965 934620110 658463357 664106468 70744204 296348937 859559971 430159588 903907883 743597372 350637945 457581330 734797850 759011344 280867766 768033975 524962753 145304660 750345896 6869310 396791108 984686282 294065726 845218410 197093550 758592193 722537060 694929761 871267867 977034569 152315424 27398312 583159313 12583975 708571572 879461025 495362518 679144521 83076865 877922606 340513351 291900380 60903092 6633633 776190025 350108458 92083785 444537329 798394281 858723508 242973866 513928729 806472958 95495635 315995936 850908572 121072812 242794689 575122027 518339018 393336719 11492495 951680912 862484188 759881218 551879535 444302655 506906884 790313117 720039060 932319736 671304214 28867994 983689971 603503577 704226627 382752259 872938571 818688305 17215085 120021212 212647776 836175593 822029679 409659729 697890787 467561004 710186566 684231554 281956262 802889133 992859503 751903242 171095421 212680703 902367606 793407826 793981114 510264103 241614708 815887054 606782144 309320994 797269547 566889458 168051892 798068019 658607316 157433744 670872361 531696610 506773028 28477728 276380583 441695001 113536187 223009858 513197896 391093777 512689403 360352073 409251053 226077098 48305250 141236895 22066451 69070598 53563591 562009088 619759125 708133942 904235749 248936106 478623613 280959376 158960707 525180689 795536345 463684103 688469679 994618278 886925316 286584700 498123137 353493372 20487998 940045713 912223117 631774183 922287771 369584251 43371161 989688607 473076680 300311146 296355164 348216633 11970845 641002437 344615326 897021677 693027204 302837450 456433366 878786117 853024441 209978799 439564676 695766871 25036094 99321441 512395856 953316171 262958348 516870297 243105668 948340457 160954232 842507808 858620332 10157940 852408060 298208577 727418266 485468156 276759072 340988582 535090700 974842273 373798113 470697036 461326357 971451969 862385680 119710359 961752537 290607696 69312751 295723201 937030624 787272118 386672617 825312565 765210383 446860835 949427440 665801042 221052534 539653389 274243275 762084957 148536576 367302426 731240385 571861011 861034971 40994912 735502351 427987355 903349932 675335493 318044439 430665171 903208543 950549298 67344921 776120889 267493357 841285717 26374276 367121185 410522374 318862186 334526414 454208231 867067454 333510960 293277641 978904043 296529858 245273863 393481322 379878363 769059861 300070815 296642156 852652000 865502674 483701715 432838203 834910990 696869178 521506492 282307489 440006368 134272830 899613900 141725206 193181521 160950866 119484850 812322562 321773571 780502405 167396033 591306306 394742204 377263973 41028761 605580849 995992867 578328896 917973885 216473839 952020795 825477375 367649863 287843247 567403900 416013730 288463082 276501784 100318181 992155764 709496328 975361687 301143751 769854058 677408242 195095444 580470359 992689073 334040533 426215177 748852543 599337654 499651108 602351813 965980871 415159875 72743044 711380179 735319845 820901778 769136488 504283062 566618422 499411768 518885767 366608218 139183939 800738765 630953676 267888288 575512196 829156204 821638895 81832264 774093893 437691486 769691356 335981110 727391406 584564574 26883129 77233280 921754022 85148556 84279900 119404475 717928233 236546838 925918177 442364214 836792095 231111929 940276447 665644590 945793667 274252123 926740410 311071429 440311804 213137706 122566095 627549930 550830574 696437902 927327609 454274005 713056437 576089578 607417711 147432121 242904532 840850833 525967648 624634593 30931815 642675954 83420294 508120995 587452052 50357698 521610497 391000315 99528352 724101671 341175729 765443992 628725676 846314951 491618973 979001941 999744790 378356853 941192215 194798350 330686955 304847998 999020502 537285068 625492201 943696367 694345587 549225031 451875400 89711871 363094891 961973107 603652981 26222942 141327329 412245652 239083085 189801995 229534291 127914951 414621601 286279999 301190586 257188529 610651606 18608609 607823138 196874527 384607658 656369156 691380437 374254891 712403475 37127189 144625244 105512944 264486015 652733647 487008823 650633731 582767074 296247879 304966758 708915503 549876103 262259300 86622204 585602 693773212 700068540 587908502 895312256 274043147 328906565 238348074 204306708 370492018 569183109 343937327 64239840 236343092 771903717 893868709 430122931 198186298 939903352 557672813 892735961 787525574 459298407 136064655 598491171 543330082 585003353 349331989 990949636 937246271 256537442 204025723 272387332 63665297 98474731 247109401 709957002 283150347 859746249 862125128 429780896 858151469 946965470 382842481 710731871 288876775 616973785 211219844 791038648 686243701 116461364 275087365 57401798 733428439 425149932 507111599 649477966 96138511 573979378 301700411 152919340 377992383 982698887 27113535 14976837 988545825 432016784 182411378 274478378 188518097 587802375 141125779 864252163 233706608 393851475 749528846 911620758 454423952 110387273 667906525 178600575 646861526 688853839 782209008 345809138 736255283 64864593 417990684 243699024 483911107 855582284 940322745 403937832 442517510 597067932 882623282 663960064 407201591 96344045 508332963 555699693 407772276 406178349 396763927 611928591 461022098 271968053 582899753 272057230 830346137 42863556 846876008 380849258 686795399 611698404 324956473 436882194 246292113 383727905 302053607 38122072 997925640 721835664 919470901 32918212 43275656 872584097 492177824 350261904 111452349 669089725 770211027 462916835 493873189 577498478 406535345 749436033 506398627 127223048 383167765 564688651 691658873 665844205 700648315 622139497 301223786 194686876 403634643 686941599 653434996 708463586 443127208 187658942 368227074 540301513 838637455 95070081 707244746 182932231 39107178 368251991 124276179 60638373 572894715 341683491 303299656 430479091 357870981 748232205 384702503 74525030 153787576 642572598 593756640 250294985 652881549 606601360 683694036 550435127 477649833 805305054 464360720 582477582 246524253 591974052 894565071 401007880 567295795 540330002 544700739 747104917 889547412 774649480 673662101 732239144 310022639 560643529 523014212 221557005 189121987 797855980 167643570 606932698 165679181 294926524 824275807 55675799 927036564 901089832 871878527 689607361 897397331 509145386 339875197 750873076 381183919 720866446 48217132 384319677 150430641 607849882 692420643 502742127 563880030 454901917 27712705 938590350 271808927 582692928 620980261 552548266 289561985 775105358 734658411 632349316 514314052 772971553 297032631 840969929 698338108 851135409 733647955 827449153 853261289 639132496 759217689 1962144 903315126 725668683 598718416 53017856 228231879 57265689 735662472 924481187 598697789 552020407 285151305 555997036 453846687 416532868 566705826 670107261 96224193 376524925 787342026 414847386 342956510 371115950 381371878 479851225 171559092 280561114 459465235 191373981 737707767 825154312 494075225 43242651 259993571 756647797 878502162 261761360 692570417 396891899 997038436 833302069 210906280 139789589 532936195 431182992 647903549 538455168 160264909 513334275 650301412 754099689 319451967 354301763 465406497 438892230 676673459 389614497 644019868 84414614 728913315 326572620 321182682 397981656 734684201 822714512 930789226 638759346 377752213 601137575 351092895 243889447 417607456 730341275 883704835 198117328 927540112 586080563 979710763 379245676 652571722 694018593 76777725 169239278 601685391 211059251 24331975 621830134 863181041 199297468 978671496 934495503 947754010 256297584 281648948 718999703 656360423 67977901 258899071 121551668 500904777 719800151 207271731 235227907 392329290 97419465 789565225 782559229 513483906 367073972 72756517 368894549 557915337 570915119 593352647 964169420 677819977 5565000 857975904 361202671 264247677 341290788 890943419 22374432 156910109 809292253 653513914 609273863 865730642 887320433 652343348 421311836 479771371 87285937 112226900 872198537 376882571 91573525 490584476 908670892 288509353 544099696 455313676 701919390 855935338 830121309 286749962 301393445 50169415 336930396 12617394 608897220 682884909 263258439 944368303 378451670 41021345 317758117 354501655 574493616 451336059 752980960 654641234 643583494 91383203 352699141 902003678 785688160 577334948 69778912 198840629 624064120 674284542 966386815 164626492 914402607 420123904 113156215 505624216 945702727 552411567 525691489 81600567 104038312 433794873 325777246 797230756 56368750 646557172 42419870 404757839 942152800 73488175 871287786 1437803 305232708 542134307 805943721 660594659 909932225 13702830 204872476 75553010 281868878 474813586 708072541 604039854 183220839 349248969 707724922 980883803 697348299 991145491 434435039 31900804 838200280 35082968 608376312 295848579 368842956 162435896 273618586 260401232 111813352 524316325 158270343 200055260 712722591 197565555 453574921 113318284 134787831 637669309 155217603 887912537 622972186 960447886 486256539 931445388 429280059 742100760 80037827 558239517 814907223 103253487 665394984 136409683 569929224 932125799 118975351 949346126 284772440 697624461 353264391 990464839 635089910 964833225 46383568 867975941 146178111 147694994 872978445 750341207 804073114 716496796 676930654 224219751 931925775 315106504 572434244 700991685 875254188 1592025 728917683 692176003 579419582 922722374 590937505 817014535 838246550 40628860 774949847 558849674 260600005 145413150 717299523 550004317 350635495 199699831 344872087 927784946 203937983 738079794 681259173 805819828 796623047 935011727 598681717 551266564 468184013 387799304 2851749 552161578 114470093 689261654 17353687 447992104 929344871 754786735 844968212 936727959 559275355 265917517 984625090 269497073 562529924 699539606 792922619 565399145 732444082 518782692 999650945 36453065 625687569 354662644 30177398 60695568 475546886 831743151 314829149 586800553 269773589 872456378 471748787 753413812 715849374 608547363 76322347 86082235 446808941 272017482 312222310 607859642 306317744 215930781 35710926 189554877 392572675 471206376 905862922 702317538 748609868 839729003 559948635 57018277 617421041 469943812 424282291 315658336 535233738 222288259 170625436 549896985 956283084 207047941 407079537 802910987 740931234 726688197 917912301 325308235 865626263 790197869 432777268 573104973 486739667 831486760 508401009 872108468 819661404 363017065 197534103 391500473 449700691 603855195 91027251 381902780 574602423 576419243 502512248 464024491 587291087 834032957 610876027 846366152 764606327 839012164 557006866 813945799 550297461 560546050 557292375 892740969 439785290 746465429 853175108 458520996 815410390 291356869 381096829 725231767 577984915 606299589 478728084 222444210 31091945 703730398 780673015 158989061 813250631 503164830 646268451 654183207 595130863 401639269 379475100 100489444 957957442 452173392 635190788 85628617 671646481 220779598 407068456 120709305 742046809 867180676 611276918 706909631 905789054 133916493 750502125 660384102 863721295 552866409 297787830 788903852 37642508 756893819 184403215 244691101 633658145 857360035 857187987 250900361 928212797 241049247 130803591 12550035 564083403 857487614 709810357 733099804 112694835 759983119 643307738 699857127 665510311 172484844 620803163 893591772 319731140 567727317 566968354 656711222 577610226 284364775 826342871 43987646 950092176 564830782 463018489 412282534 181493010 314716660 941558987 209644574 336490248 719243271 837561392 221544481 11700915 127272620 15449039 908679578 86329779 814021318 634719688 930230478 900008492 573266271 373334257 914216554 77374045 186955396 299600353 573706911 334596233 72578805 81495113 301020249 481036546 709635401 594714486 643903869 728908271 666453635 329067420 19372661 927040664 378940648 642212267 445897858 705965186 492738276 597691438 574762067 324865313 330483229 901110362 539031644 328681733 899133102 208085996 357293243 100256875 835991784 921592744 60573346 159776181 262138129 431054104 155466083 276254400 750235432 830849854 784159933 764111484 14233495 881490053 583788310 91057800 179422865 749394996 250878429 631167368 358889767 806196095 627250509 75320558 769871118 222837462 106436336 83331792 697692706 806065249 637575514 773141699 298162009 983971203 913503470 44018365 369893851 173157894 203637519 416265424 574983841 358349318 285420497 520678021 748427502 170823521 61525381 76651236 488634837 831310253 471485923 531737528 543005579 819664085 315804888 590195234 715861900 477221497 869402366 789139244 690807842 129972023 135915297 716821006 225541045 280663488 138018007 370695152 637154356 594052481 34407275 232285021 372017864 624416200 419302494 942526913 478913253 283572241 711151831 416604694 627349390 628109033 482828881 852587134 351911275 957472899 555505280 847106700 364239912 987972008 93810917 427627243 368353131 831715646 261687215 512347827 969396598 511801407 863876655 678711079 665706715 551017053 80284058 118507435 481350112 228180154 240400174 974461399 243843674 649591590 92864848 691903065 86845888 320441508 35712949 124635773 357517453 292938419 866670518 525847129 781288039 558402699 217690764 489108442 847958051 835179509 464880608 830986762 55335729 543772029 680639616 299476508 842707235 710181333 410327097 311249774 344659099 121744183 805098258 848280552 718286885 31986511 285711142 839255190 786354987 471928678 751283604 513862790 838988960 871315491 578453641 54266792 733808869 842886889 604337079 836052386 419567490 131152009 829513061 737900937 822564029 463020683 592814067 618429876 276793981 840891737 294777367 151079825 520114314 631145809 274657840 266729614 666947464 279013442 200513762 761147518 79334532 247439276 964816912 906955600 445963085 458960054 329656171 874949777 210331607 204604204 203550964 9074101 880089911 390225452 170395513 734821450 287037815 251072327 608861721 328680957 688078009 274839140 22203045 232285540 924355264 34552437 662804779 983639200 683351258 660761165 567435286 429192190 915522188 800042321 740983241 17490011 508793532 302906924 552578076 300541507 288318024 361717062 877065020 250836777 995910985 130629559 853130044 319428627 874691819 388593436 817175770 666670069 63053421 939303086 654998544 261151203 312733517 491001515 333495145 534372659 100330769 895754121 722631146 796692143 104318453 370679000 330822113 184296039 372836333 197186483 835699813 774562342 154668063 839918639 286481530 449277281 767445770 356047779 348681550 931904318 885813279 702981794 781928153 255533846 887531360 801787524 955914492 678165661 526697025 281404248 177373227 807600486 122499278 409328570 166723962 457994041 98503904 524413579 830581012 52682846 523439759 45462729 811521177 110844679 184020416 266427951 312854554 894762834 866318949 831937422 356182569 481372896 709757634 100670902 797368167 671804202 594888286 772007857 897107129 595384645 757556941 482405511 770581389 808374479 339805537 50977680 813131721 303165616 200983471 47439406 768594549 629340390 652363022 810148944 721918244 641911787 289803275 67946435 673965002 650517295 199163554 536205984 104439091 9794834 535573785 59099572 310976959 655385823 30526876 978441645 474593174 270226727 397476770 960134689 875676180 646648120 113218708 191622035 800984541 887095426 130219980 949193209 981537684 638271100 397776553 740423788 823921852 287525110 952371388 273303394 768191347 434855783 225504025 988164534 165827496 981263328 100919249 718289277 579600425 699837869 489880335 380910229 817961034 371723038 713820453 846189767 773032358 339554525 779433901 863868617 463186400 377080543 845760228 903624098 276287964 370350754 85157925 367836213 569981938 794199969 716918033 142952249 665514953 59628581 96029794 704680022 788724337 410772387 9482486 876761450 741378814 340044394 623568290 16298666 399465473 157531760 132865137 583719117 340055131 175274550 516908001 644018344 676800147 931843575 303718866 137243002 615759736 721550631 533087462 373773050 678309943 240858370 160480362 457517031 336436043 592732721 585225563 573797949 793654631 223394408 843393576 572260736 575373678 718473312 262730978 406549777 7744476 244690731 431563403 384839137 514224597 470879008 438240567 569537868 546222011 255560700 284528311 606118759 562040157 918924012 167295627 752850332 612890141 751558618 357241090 804866733 831333523 212174074 933053768 251251306 724526838 77975838 929206278 575334214 947193521 69058428 829078197 711284525 804195491 277912927 20524825 941475914 355536254 174200998 479745979 277401161 868431759 996822907 192092675 808663688 843084568 723662005 354187162 71649135 521856859 262797991 666964740 962934978 52872293 954841533 520015209 605775518 545859077 858140050 596725110 69011994 997950478 572187837 257307337 610928681 985533 134781885 572068372 883175632 862740272 698291955 248832687 126243152 112690393 858297720 666129341 902499330 321915089 224090005 10434115 441071468 845060433 885050146 773539959 888571374 151297844 195891148 652946881 228929288 812458925 764063422 809632168 304849616 543726374 845527499 350948717 182957775 235854530 596031348 165117505 388887914 685755971 931999895 132235657 75500218 363785042 79510674 728450033 293872804 728662936 769916336 534750939 757151908 739990754 112735516 709825890 980034364 264931314 965902905 206476288 511517462 467706047 554369446 930606762 558298399 612742056 755197901 36133867 347133091 170709479 208186863 446845094 140276133 480804666 896452593 72529743 552001058 240321513 998197804 515679669 595753597 35947465 264382231 616207404 379508128 551614445 309191376 215479175 388483975 479873092 871347183 960527914 583864066 960225375 957064883 84913654 188852515 298364487 415030045 356729934 580298971 830806007 916630967 46773068 908433222 503421568 554807667 944496819 723334814 867598003 554732708 363888900 446174120 206079005 56790484 165264040 944015648 212630382 924695267 488103574 80959020 676150759 861106694 616184807 34244302 129328419 830475061 146358882 652998309 612032537 978834494 785089456 462074122 229928741 509705142 886025878 122090361 791191196 399532639 486265394 693431389 683645184 522028211 751216607 96027958 980261049 339040406 710776637 411290858 870436854 760096533 212322854 356320103 295563827 159263285 294172430 34831760 721740036 301219017 467035954 143367369 704910096 140305182 707510184 982823908 813426573 674178334 133674420 397572363 657298988 816077398 596442371 444362843 20794078 747158246 250651443 403125130 825111908 377645411 324336672 647147349 777933300 278932188 655685949 940251609 967612228 815906934 346292309 880418960 708872875 301109633 339762763 301722983 91834147 396193301 235740418 337007029 444171427 413602738 677596218 479484356 964482206 889764200 736912958 910188792 344356757 704637518 59630049 782159850 514460641 21184435 247355871 567445515 675763381 691251650 649285142 194317363 756109966 116465556 61214617 86960406 283233686 258520796 108152044 421646817 361654787 860457470 865850234 771302759 5552036 635996294 840008424 677331298 399246276 278220817 265250890 232747562 326709469 313971492 758105146 709089816 804043486 532728095 106826010 772554366 442400129 915469802 594199861 54697861 193996935 750134232 374448675 672541770 961214166 875546027 593370435 903459312 991568434 621435786 946321790 852995340 353915226 69735420 444143135 20688081 729273944 494102513 42682508 740994338 125855700 387224342 656957815 89615116 561595323 722467479 806383676 738737335 455287034 130257814 293021961 566335424 826731037 471732421 273459706 193927239 378740124 566672038 831079799 101932083 764324711 925484224 684486082 288274930 338327683 691682767 614499760 375286527 464883497 593004872 263747475 946067845 167012366 922052168 254301443 413268319 206946462 423827802 570896440 937288863 52668024 214442988 912653479 158910449 532277181 194865099 921302210 180964698 262422867 948808447 163579841 889534314 766595111 176247293 170324624 113845472 7264496 547182631 27931897 974091982 861342441 7315066 666015950 260902491 576245110 190923271 954675253 79817876 546204030 267833664 911747086 210162306 716714620 204468032 188410819 513333402 921102611 963260994 419780183 97631805 582761684 221773430 710896446 398315709 371111961 898526906 891681416 467089458 219071488 780889736 952318475 529701742 932607760 761406128 756013539 244877465 193186514 670711892 153247828 825580905 380151569 476170782 656667443 972444885 376849963 811023883 903643630 910484821 897194393 273415032 895925449 505800481 781409078 533265074 647427973 652020567 593553101 942021654 85375222 987587856 832013950 144368060 958410090 554233059 107401083 25558338 770639085 130255919 295328471 1659871 727191469 279246552 614250390 383080732 890542806 568207028 243184405 487511138 530761668 352082481 753932845 155053251 999189511 686476555 112880367 809599425 986539290 217270671 100598809 146427370 451460641 176223971 827426818 736697293 486075125 377493546 97203031 541121186 267953673 663199966 302590754 83280418 589135455 6912977 704095223 304901438 709198753 762720677 256560389 313967759 174634031 600558294 683880183 672217353 519352907 675733502 875116441 51127664 199167428 44511496 523650812 11723299 810330306 635123984 712396490 908847240 538624090 668316458 17262046 342307673 112619204 121675211 533013596 706627629 729162209 62347068 478639025 160517606 79839536 952586145 989649578 876975808 537037608 167416341 46748124 674467506 636158358 711395273 357939976 722871961 405012566 272073373 744280162 557594524 12603404 275421452 141249861 771321780 306627777 624134117 317177809 597553609 831315755 416989068 296840413 717637407 138786607 85380733 550326583 279262338 869932283 37988800 937483387 554691860 943023260 641941788 386397365 604084825 211437601 966928385 826123200 825016565 913598315 271514145 634437051 846655002 547480053 211318990 463351723 209308033 151661305 236690944 234663251 99172704 12409216 746895920 86307930 408984140 480910944 188117489 702641467 690857412 753319147 130229167 880230784 417123948 109522221 781159797 378010554 793249336 778123632 958442507 297648252 324435199 115216882 795771319 780032110 977567852 164742862 43012409 615382345 48670456 860494565 72741003 732847082 149123838 865689017 579221439 713130256 423523676 800183016 904278178 620061586 250682249 977944899 18126488 283809230 912283469 336163008 550169255 434632742 390198852 574873438 799761046 688373552 164247674 833917217 973691375 201165821 899150370 713571022 448812202 730143707 322923830 724762765 244953176 714668776 27753304 885376943 981194797 853350529 813072030 753739543 129790451 752362439 10025663 9178754 705452249 82319129 509676370 136300158 123782049 100149029 934985724 278401592 280478905 517511629 602352952 759591113 94415790 862051524 439149173 209130003 218610136 266177282 638174921 625102904 250081100 171524050 804555902 987197705 131522684 389899409 295270620 340703222 793307625 723423878 278492949 430225289 229998439 756927291 691745722 132351281 658932616 642426858 284597474 416511514 959652886 765885689 313569584 639886325 919940376 892088338 825489749 304589428 125026461 91499358 969693298 736845922 13781352 182966324 233478336 73303659 167057913 317633213 772267517 721496264 810599409 914038308 494482196 903645563 449072906 876984144 686685187 560551555 92768190 582094469 417461957 427943866 82180723 464373865 915754307 548108642 229794733 911720321 455111874 335910211 505041444 33858279 211671656 579094600 101002171 597728515 495838569 667307845 573966109 184176753 203188455 855100917 440689186 730409004 836703602 609569770 812404186 974173086 876424503 474153083 318390011 380780265 858862821 125789344 456569275 3443119 842719908 12502050 45336072 753615300 553306156 640953367 560745759 807609508 758080644 239383802 72075361 632068598 529571344 337226611 854207711 29816055 727953282 753752353 440100661 618967663 912896376 805171686 220470453 55404609 264800271 3646816 785386078 312868961 981213903 833488842 960881042 289043155 787669545 782672282 259265406 946013233 493512384 55674243 762343681 410319029 556920553 190862597 887759704 153280720 667654962 390422989 558073595 956715833 72418680 46098110 274715904 144015586 417166710 347250785 574674598 164102231 282573652 886989356 409156509 762534758 991751076 421364965 807931283 866898087 873833341 837732930 946273848 284435691 191720827 273236796 494557065 256631091 311593150 12059552 361258019 226528612 375658389 549544821 577390668 181867922 202487412 261568916 930469902 734871889 311957717 741822388 624350076 822842974 458305599 701375127 568165809 368581491 774579845 567509236 675472883 649807934 589217163 371464579 905605186 385336286 346385116 690306673 690965094 645862970 892021850 396478792 758011374 423548524 216943922 201349002 761431599 894472144 539068574 966776469 151410556 407557338 58557922 865415875 722424090 449353522 477930684 337310816 117242542 187862947 18057750 149546864 678270546 298283391 54444892 716133958 546582439 211473100 134563072 990780645 637363940 387676780 219106634 221156640 991852144 873044841 832749322 134479507 378111500 750216604 750593058 668146296 221156040 111173418 530017134 264881759 990632963 54438709 275449663 542833471 898015554 622238667 726212741 756341408 957290214 611758014 642390398 37930953 131847489 332175396 890281557 668560371 153803430 953802335 749839361 870850723 395562140 728949190 646885001 353628353 169955436 286343215 235281348 29698821 780658570 587249596 900278157 65090797 151637694 131720659 176094699 680560486 128017609 356840022 544775023 757214537 201366868 738201007 281524546 738357900 105943270 766051739 169990326 126252544 855314208 423992257 878808027 456125619 353422326 910727224 305271994 403743147 361339807 47554256 608525717 914972341 432121611 835660707 980079669 36545460 990708462 185475017 166366410 690861975 641837688 107187922 915950299 393264234 283257475 802671498 184763644 474960780 122292324 856612181 649286385 639575481 63638289 198485839 47920120 158766618 365608108 808461924 931971755 823142676 952963129 245475709 764348777 91527695 252902968 98938294 940729645 793431035 238407226 675349187 345153215 362219361 317867894 784900867 385139711 768344213 34934849 760485895 955914817 375033999 666187578 882138150 722925470 651364626 715477900 107187165 16264088 1383305 836190952 94155145 894650279 380152326 941133691 757409442 253093717 662114102 371749669 59495482 728859986 385024643 200700978 782033795 440657138 792664609 252366173 496855929 467900782 92194248 448599186 152108078 717944568 424111203 314868329 333380058 813715356 361061486 977339143 65575919 324998381 389029554 425939873 290055455 302239502 748904436 413455732 251804710 462804397 508860782 334781446 754533676 437115254 198460893 480701274 994851259 476743190 411554000 721800070 372974245 568568889 294539612 360341633 224814843 821056750 372644418 899080191 43027116 51520739 987115801 357240962 352700074 913316510 799708043 946996523 806435830 612523441 334080451 564347278 633654116 589855904 737044663 393005226 259969944 117355278 177526778 228764104 753169460 150349621 951638109 750689050 402806626 491391765 115962975 600940235 659763842 855898838 968913175 215306510 553006532 372985139 70959925 639840430 694218141 997820476 646260665 103918379 833736397 824574825 611588602 613027618 293586057 173606611 957813957 243691504 484482145 829222160 392197291 681303593 996644922 922257893 612810510 800905542 288447854 901843334 757973364 738342750 80605903 838134936 272346057 725144919 142476161 21910958 857852856 494068027 315704085 313064790 115197722 372525664 774602733 912664026 236100369 639089636 341889026 889924659 675805468 725428377 733475520 523631723 699969012 413642100 377218575 814411065 219507169 177304292 70316579 980412565 873621063 449381211 140381562 585635247 355247436 193292990 894632518 788603720 577802790 366933903 848154640 439044561 134089877 524055636 430231003 719977665 369888254 509013745 530566647 310613980 391543887 602068318 382521383 66584430 299400327 181606421 738228128 904430809 450118701 466304580 357593460 14407691 310766460 81713536 483082786 9195195 726331939 967875233 838750824 18660461 495609097 591460128 282010018 983214187 24947803 84052405 445311654 1052414 836411775 861615361 240752426 614725570 95505713 988075532 207355420 999175937 780050109 825657940 85541759 184292543 902471252 41491875 990142041 533941723 429882172 584717809 622011701 594340758 507086083 753222154 624108382 784598812 68036709 622545313 789628560 508433168 629530528 587696219 51545433 735147660 919525347 29795137 503297348 75231978 395981937 137828721 264346234 563534346 103457621 22969319 423856220 322519396 20842871 42400284 736628018 863309020 311870068 816976109 670191418 34072181 515235513 985436067 809974549 593020182 733461549 864548414 247563288 411430526 493626838 479297817 892206017 537015414 370131411 448435769 501583510 910426111 73837331 791117096 560232526 68912561 902626618 517973367 79813583 914614785 901157819 880692347 689395430 983339724 462988628 158325955 885389749 479168736 209349724 651923672 237102993 776129700 622739807 794828715 307568727 369929897 53586918 298602063 339477712 753690423 991887706 449679244 188636194 860063237 55731083 848822249 436492819 34264899 10122402 72962356 762058640 141090587 474807496 147903644 441024627 156466576 829333249 78732888 36830956 475230719 482966222 93039946 624274092 852321422 443636984 243544747 136359615 401981249 878895780 479947587 56121680 121949077 142933183 171320449 238321102 683679103 327912404 231692083 513318367 665423905 593795195 172347300 368099770 859454061 216841407 468099225 251941282 786102162 228817392 61393775 277119335 855769003 374084592 718123194 411623756 478118705 625862522 388705934 150326818 582518010 402808498 13571170 267402065 123555959 196596575 865891237 432594803 479416398 431585793 853038220 721255610 811440089 371787331 356211860 319925721 709687523 639374271 223333876 143836985 102747690 357818076 875751251 290811647 491705525 66958256 533403994 680304416 649134883 870896514 91204684 417170250 312073414 526850483 768439273 983812001 796062558 22277305 192254824 815051185 164763022 120992987 706310680 723101516 420864947 150520217 446934591 290741112 944550779 100142128 724305072 670882188 488272207 351267310 697967589 855326060 277259685 724904776 740749518 837019225 309871814 498670849 513138194 852764525 413789702 97209079 63517341 170229492 113462734 841152650 862517450 543631593 568048475 76624309 254548968 233667118 491696819 707557284 7565690 12996217 991808207 70512601 331730894 336987014 581852624 567586443 659021494 448182652 742479177 901918852 620513598 709971398 369705074 442550216 710059356 942796022 954247549 258843961 471535112 201536617 445744265 655880893 103627962 290588774 502153009 870995191 245691598 198663319 920654209 51038364 361314837 39504411 67026855 825121660 775497831 610587856 961736093 117383282 705687607 149667085 820603549 239150062 185717158 483189523 194696445 791903640 130350266 929334361 972965545 949264951 327636448 561393114 759725606 917919599 497860219 246766218 876874980 567849833 161079770 522713000 530008078 584709985 329611627 204997344 603999874 258974768 307154809 517281214 461355542 65261168 328048820 779905265 924632297 816544970 777044246 275325738 271518709 597235824 51189944 959839179 915691234 761347959 289442390 321307885 191751916 850237850 463629905 816127762 594480555 577655580 388970663 546170090 900227167 996054148 866360497 461841936 78049848 706014806 122579242 177132865 776334651 228036222 97117841 959801652 968107303 689948561 146831900 296264259 675068035 117769346 146043459 971492094 125887870 47856527 832378384 971588216 247212450 994614158 815195289 858644129 883343524 403041211 744090497 793720334 409666832 669811015 793586687 220828369 110592349 804856781 879684395 608359834 648496949 330202950 125002106 501743694 702148006 26391302 297758637 867814695 603104606 339453309 47637563 507796833 150109422 132822410 281912118 652580338 811655581 133303216 919578825 857407381 795518740 920503407 828833550 116639694 595699242 821981124 245883944 131023690 915702265 502865123 984033068 124005005 220142880 927460293 349385688 329578718 416003096 740606294 999114058 857188913 444879139 598178390 814016569 260442335 274070633 776597668 842570352 579981455 113950079 404581563 551415014 123798852 553652294 701907871 328814640 814405124 221241936 703324700 523933449 184869657 481479215 875798398 131167459 424080148 39524678 806147122 898700919 981831524 285082628 198062428 806513475 823814629 310206345 917265434 65370298 485856458 5392537 855373923 617659168 874718069 968717882 884163708 379804911 786335345 413905782 250550396 360362083 848503412 394308213 992535603 946333688 716715305 348249182 640227902 245249209 803676862 870697339 310905963 949018511 58220613 689307258 33540043 151264337 425468999 491981780 923657876 505957934 952647911 86273224 643388866 571480852 410949088 145763917 540682088 852814723 885238580 905225927 990673244 630623453 125570057 321963161 193549045 212837571 13938807 856739874 402931424 257642195 305665853 7169887 656865979 618247159 97927553 626759907 793732887 445425553 828963256 819642643 424118261 843818953 565908463 849602204 539538484 33903412 82957315 603654188 260595806 643730831 503418314 133405158 462826515 787423000 522606163 582201372 604883991 529971219 100677099 980963505 801265939 666163602 291037904 383940967 519495663 281789959 267776817 582435839 812237105 926200744 56447424 2056535 319286301 333225649 136687647 682747102 171383593 221840242 306239292 107713320 966538187 83371521 280701237 113621013 304917494 953216444 951023870 46811731 713653438 398951617 481622780 816074503 506057487 258536267 844670616 227133272 859922641 503528373 447842822 11034316 860524857 785863928 580579150 613535935 43318827 323183596 369825961 383159540 83583250 250081458 577905279 952570809 960684280 900781544 824793445 677647433 137232225 375059225 664181029 311875888 643765900 395410843 857297597 91761126 376224553 534476466 844006423 838176011 176577665 176301606 375398068 763966463 219568746 691569319 76238633 639606454 923117218 315717318 813197246 519619122 755423040 429266202 659783204 399274200 938448845 428632023 692545710 945385382 484317269 826704660 965304227 885978152 666104339 797058811 42382177 729163287 815974838 154960584 704515293 437948819 793348402 155394310 775985714 455002268 542029789 994944564 771384150 371763263 955622787 14465945 708088414 332471499 946335126 39182721 398500034 164151770 644652569 32989971 5237529 992593573 386324049 181721904 603300999 393958362 436423699 35075543 949930823 802752537 524211546 598388535 405965667 22991336 514766357 20270285 715120895 552665010 809263132 309780753 137338167 582486072 989407236 470755761 532417776 600049695 952110876 183105226 607289218 710138387 810081894 678264397 151820590 567779378 340959210 70261530 776801578 941585887 664704952 146545345 181050160 717829184 686282875 891535844 179005497 856386811 713296956 864411328 564202149 110308134 548593792 286098321 762141888 25354834 43126554 319704777 394469632 402481921 167027064 970879962 820570784 549875463 591515924 23118821 543368312 814025186 214912379 449157735 176348125 439202248 478532878 981557459 228742195 114064689 769564843 327897410 840178931 697584671 680484788 854416529 180586224 621797345 987066101 29777170 228746845 43611829 486468156 525424787 801275877 727737702 369707463 944573023 189617193 36871729 351221358 514760594 824014703 740273680 810683352 353486716 551881623 870657028 452324632 650043912 46973358 418765848 848694406 584291516 785732048 802625733 245993842 159384817 730288622 497956424 565360323 62498677 933132282 578532589 222076442 182152048 738554506 692979588 167493320 49007928 927201613 173768435 673626466 516776628 759911243 687801689 214224586 437883513 862522473 478554837 970286174 982692386 536234125 518035777 912170 466689631 91078172 947353099 991794640 684229001 384202706 591745941 155508875 34875904 371988956 641208977 384669127 59592871 272445835 543652828 694775559 769244675 141471374 620990097 43786875 237234713 162254092 897185794 651567624 390699597 301633008 765785994 119920310 992164464 879137435 959589507 23539727 418674509 559960751 545873896 292062262 812058524 816365406 296621101 1224336 263037571 731836696 19620420 846003587 731544482 21850745 795545548 55921703 400126629 380642524 462136939 203801562 774428495 800197711 248109226 928322219 147957817 384344794 52823666 393425294 842124105 587508058 302457057 903391634 329567777 896364335 764199152 630117760 565800735 908755205 996915149 575306188 896336435 935548873 497262756 156829302 293267274 56627536 941782076 664620301 681715863 563245350 785892583 373133719 578088035 503961533 621397394 391246215 542091192 267257168 48881262 726460238 768944837 969153951 927243656 518022449 991787255 550283179 543036450 242762130 434715379 651291110 49561867 428762006 757363075 642052040 502587843 245703323 584735557 124794601 521094840 811561426 683479133 288645871 306694451 335461605 51027316 114349605 393855092 319860446 208349866 579531110 659991503 723010260 477737734 773459788 388011977 449209078 708295396 74051279 337338553 89292155 967666151 197744381 6142994 993736276 486625710 323240742 414055411 115630643 452705576 407756446 340562585 624702665 464921944 222846381 432802480 639212569 292174580 147673897 676448463 4483895 171596532 441228405 946080253 392347874 164581042 718423656 29791802 731802835 856198786 338096964 105719309 847730476 349247961 980759726 901914328 682708554 692071908 96044415 743455681 406273620 851952218 326846679 950976208 2976158 62998220 784537998 858388038 278171149 639096552 901515041 184180155 111046316 208203868 280171925 16048458 138472573 364276705 220017795 740945964 371949472 585025230 882951374 299987744 564960456 871662586 584789781 87791662 449684542 691677516 865493100 947538594 31397727 347573526 795721564 646069752 102696082 693869146 590503593 936334492 254200821 425494653 403730858 398035856 508086799 996299903 792352443 59071390 256913181 786141251 792941620 10513361 209470502 1380248 162432452 87627863 657866796 600260563 543208336 910501950 601466951 980334905 826177950 195880603 846375172 529187110 84988092 405216591 621090058 281401072 773151905 720094535 483737837 780652513 359663677 145619534 807678938 731907632 68109105 896576759 690796426 39825 801640784 805967597 809578790 154715095 643787420 785256491 323867536 570827417 350492280 195690520 689302696 594159032 810614459 275424734 918554079 986876779 116197373 332709073 781992155 593476175 550869618 481439238 816590962 998308302 815676938 699576175 149820775 677208355 103827826 723841857 153549598 522238461 283674809 51267406 659542846 853148602 662308840 156702045 667698475 241985557 288203823 987785557 931328554 400749473 96144273 493233724 374910714 195287379 746470916 376778891 152779477 577418334 125431176 719499801 579139944 958556027 34123113 559318916 335960823 833092339 301403520 555861847 95502769 549437274 845931587 55940889 444374742 683806362 231324195 241499603 277722221 100264887 950066183 68028251 838448698 96143281 738930404 637089212 523372881 332960117 30628744 525485711 822457172 379793185 418021641 534291246 158102959 676532154 652098164 889006018 566425643 31688547 183944623 545397824 214337555 546259860 147929413 141099965 764788685 694800563 626288293 888879580 225693357 787104300 593812052 79747056 399001542 459048667 136204165 897536217 798939471 553430527 214665826 754102668 889073098 256663098 85861816 464129322 659375201 685672454 7927896 854936800 995048017 750793928 131620913 788158989 475212156 254308416 223575508 632762020 661196644 670549548 893549249 865200157 735005548 203317462 625047978 126172901 935869328 31940003 333617339 682312361 86507700 961837879 129544562 56725545 419985378 953636175 881348879 350770704 191708105 437992078 692011861 917064292 18445024 586047681 568943147 450174978 642625948 239923748 113578087 649284687 3852219 763681844 784595863 7786695 453725832 571889862 830929516 7857639 10481166 352922933 997027030 470450786 742994055 270993711 640190945 434991548 738699776 741549124 755868723 112035873 545856218 925660811 492475375 614772479 742720724 841416626 861241923 948604628 394340984 376157051 278915785 346936599 371268098 74132005 723212509 329801030 460502784 793556729 264670049 226341321 562836027 264883760 315112472 207819147 792100793 187705677 684458915 654294727 812934014 432428156 975746389 367795417 812608025 267864926 369868850 715806925 967400489 403258771 502504590 589006003 825951500 102763661 303417922 114237432 334799078 177038439 172446844 952860908 293243487 588417961 816094793 839755895 324844502 622340268 498225176 789642828 513566457 778210034 893084800 681388861 100499892 350760406 343178257 198588248 502252728 118178426 677818851 646856314 810583572 142679310 866515777 602369952 71617502 511062817 303308297 47781859 330010560 653573272 710446916 437901358 577516030 49938059 530489144 379603951 739482719 651010060 71637201 202020808 126111644 466591423 104213034 442542948 40415351 507260039 887991149 181868076 982721546 129122736 783832761 291510051 987462828 815045134 828817833 84275724 583578747 935068961 985881891 248894851 903276015 626145343 673882339 824708396 30116954 683252865 638762027 335631938 68116525 323536129 109409990 642037494 526172219 239249347 328112598 725949824 276629380 318393709 49705402 118927944 768519874 930155805 741916366 56539028 297329556 12073460 93454348 318451274 596431225 270726230 950016931 903421325 581604362 267991406 229798896 423537965 818901282 97063846 51653674 775257139 736505991 54232823 174785970 675091075 27411048 901427458 596622620 621673971 792056868 175098549 397792499 766510975 689475795 535347442 409292577 731573433 610461905 207099524 557552716 742560627 661966460 794151179 977181470 715368286 128308033 688330169 838407741 773379153 911615350 271115149 793300213 399921746 201626270 599810273 794756635 911891326 368821848 497402270 636893325 714383870 75695512 629074866 73777689 836037160 659338942 427013626 340581355 407185423 219952881 943957999 588246842 875482727 675243565 41346669 428113845 781817440 181021472 804257321 332325028 374484869 141790697 946955972 958720801 389774862 431247532 52982872 914011982 874753743 18643802 420033366 879361849 878716560 414104828 456314078 816199024 419136043 411565075 19971253 416608160 188383546 109085419 394365222 896503029 691983607 665043354 147815200 242383972 431098494 897948374 252312654 903924166 415820667 246362896 801889904 294408181 836141682 844640988 350497502 737651889 397321178 518891233 602224449 69967709 237593442 414730134 901412508 840601776 42027488 300091491 760217311 597037547 551888464 919936367 392524918 301329140 642043430 683562850 608035578 201994893 583737916 95984828 231222323 653764529 828412180 126375199 9197306 367038445 397397524 880843183 518435260 267541067 526682822 292641263 33449962 773393218 731520594 973121841 946190867 403992033 416089965 760001436 540344483 343017560 510123173 659075782 749577430 282612451 349507412 678322596 472753549 650155359 148676235 256045688 269058401 996010791 413543500 462265209 503564894 492879022 41371877 896527154 316765013 134035809 759144563 21095605 164282108 459475637 267363969 912418479 605150817 421941411 711143506 824705437 809342093 175470382 83633306 821568853 143755917 780821904 968311173 528789901 239418085 494018709 450817637 406753405 691474882 36395107 575590807 857968274 770357190 686374296 306821176 899601370 427569491 760714455 431340585 738156114 472890979 87606190 746923144 835373093 298188075 273874788 179684988 30054798 650090679 27423679 980394816 285202536 147486941 658409270 550717695 723647501 233552611 552778186 772210374 583423165 254080034 768776442 578243907 300747450 248406498 117226141 932404453 754323342 112898672 978758958 59128402 198945381 403752954 173648100 226864274 733694855 697135270 60457554 790590784 213653872 432348233 599409624 982405387 111050998 419301285 691938886 882724473 788104002 200866480 559493381 766334221 847240598 528372200 201107734 865698705 951859744 186319741 941708048 325090483 902659806 603447394 349841397 33553585 628431204 302000197 105101463 516506868 642973213 979690108 257588743 568857933 9401189 487314170 163397354 854282992 362586757 804200695 531473597 973733359 40164698 221563288 790605281 111075481 643759066 477786728 273355201 421122422 150126396 615231575 563127010 410280581 943003267 483169405 961433856 789013619 48510535 180128494 250219880 508406736 791496992 41139446 779166993 414138389 555554185 204734958 34329610 635458607 101358224 378603030 162224908 825331253 538639589 207185126 677035787 141502217 806242760 103521916 793083635 929202888 221245979 360757469 327674352 460264428 39596307 437641132 285326059 257163358 785729447 38407151 334340154 234224048 932032580 810316634 389252567 819606016 571891308 352845626 477227573 349523560 301880068 164051822 233632612 646629624 880473431 339180182 348336978 556456698 856824544 292261950 997194309 825777661 844795640 156923657 425864151 813885042 857703710 19435768 902802668 249354123 60269765 127881534 604648508 799783634 828245714 2495786 857655362 519299202 878712211 493569165 236434194 550741463 971003471 702634406 739154252 213086046 824952157 409211073 776508468 662593656 266728578 223135082 95983081 459746552 227278127 334742186 78119059 5919146 501929170 404563912 51673426 884623672 914340966 807428937 675531755 797315811 890454571 869663370 55997321 336550349 250246513 39292882 431801920 172097011 747185167 507085367 315489121 542473995 407788810 439569820 668979188 617854699 887331550 459123836 359702016 465706107 989316819 873471060 417126795 188437953 171061306 857729218 393509780 539210686 450186631 782289545 496928380 588594307 348665682 624661382 212072099 575899876 69747593 196807838 267371534 788754289 359057708 281656311 437410843 580826880 905469575 742079301 932926251 36811318 840369220 435070621 798505418 154983716 980238286 646202465 182910060 254258581 71524937 482533370 886820291 515675103 113687112 977995539 807294364 688394070 797295022 946570864 329996514 799015684 911504884 128538454 910095892 648762449 268140680 103266864 11039317 900458081 608401102 364004939 383973284 866967568 680571636 463572620 51495069 941912954 630604266 152348961 511461185 39888629 420796356 796278614 122790894 150034245 840492643 652497575 86370047 461007556 277220707 567181579 593291908 786751787 104074741 107606132 688281189 206150406 211408292 548001782 56551040 788531516 380133925 735582571 625386321 267567388 580124809 150418234 709681672 55706646 616566363 858729564 166765934 311033071 623718227 414029544 416688630 804617073 253270462 435862925 106905738 142138347 345453031 329723855 385028341 630678655 117422683 597982835 94136753 460105716 956425239 816463960 169976260 205054070 135783813 186042341 79021061 70120065 769458375 397469129 311252820 747189523 205083967 838460537 244837087 502846193 425782739 858291321 353108063 302080094 681901045 903523484 173381366 600162237 740623570 481910533 620203414 250029155 508173733 677103585 555347011 602494785 235367294 521026804 24758660 86063871 138088293 980312175 438511149 194433290 205112404 886668103 196600667 536780454 103722821 943066823 638743669 328663152 883296511 789718583 302961449 76420178 880689691 370367026 807436541 411085740 106157848 662309487 680414109 691152566 683152090 197622747 8132239 990994437 709952912 902538429 580340801 825628097 871713989 664076466 456650094 751385923 847077443 947609465 280019898 14913900 889395191 96578958 908756675 84054772 864480057 214357467 387318102 388760228 140439770 827578231 133387152 860295249 219041082 761075431 343406476 225286998 829260415 305431455 747988152 25257932 741286550 306964753 312404632 975197953 119635307 168612764 487944810 85669552 245966186 484217172 411928922 123830290 232434272 603724595 369871439 635411060 101650945 790181417 790451759 658688318 364774935 434838038 442303549 429162278 996039508 51244617 569793654 440421550 271178209 316848926 891610824 826610520 504753414 115413113 924174217 842139305 882498040 163051453 974617014 468170374 194645922 108414111 862266323 521146149 556939854 323830837 500200571 279347156 799632998 263548464 658368118 547334899 104139028 845664911 858874018 520988957 366050962 510180378 297159213 829753596 168066753 831452950 478558020 928619928 507417788 310079946 451077127 30991352 696230553 923982541 752869555 934729979 457140834 360986594 273848505 80107019 285576148 367108885 632161877 81262588 192622910 508969957 438600266 611482450 890923890 611891494 489317353 708472436 741511202 106533448 917118802 609561858 708895678 386908305 308561939 815175761 748308407 889257273 638622696 773234178 940508721 313600292 946613135 55802763 691134986 268487225 422740729 911947340 873490134 520117575 273155664 269980065 440563530 7955243 172001527 57450948 246581660 702215970 11714849 412118101 92846795 755600800 456391221 85046679 880934506 319887245 589148334 925814715 457506557 24840019 494646610 882984455 996409534 135527290 422357266 705850872 849848885 505027269 780829548 407419727 337223217 898293105 828151262 994871588 562391882 625440244 944361517 51132668 484142550 6678283 38115068 962743562 157236042 500479938 489422393 991575426 943293479 769894823 629146191 541079819 419738902 103844654 433113977 42488584 683608257 392014958 992624606 778172541 282383358 41485245 414432163 793308335 416455313 342940725 367791679 665247493 598756660 962211944 34242148 619105882 696440353 27232972 330122612 489028522 192476387 298547810 580314138 90800185 226478417 507665908 437324505 813255468 11839320 605759491 988062263 186556942 701349820 185338659 941866362 897394904 950303049 860137642 251801816 826018039 583806204 570256267 298442022 652637390 46631174 372060970 809455001 30666775 459289680 292037931 128881230 141890477 331755093 785681720 559373859 642494930 195540761 642371632 327069117 917747022 990165267 41959395 996081335 72030690 682398088 77724033 243232652 244838603 473285483 944838490 1733653 810841486 386497368 267969891 175958925 22312684 794371554 152472814 169969305 780993110 205860510 552115449 907830494 84233436 774238028 693931929 751435710 971666879 514581930 580862412 354573483 608809357 226390633 627456564 981499406 132523444 538576112 751449638 779795672 687715032 74218565 838374891 503901451 439101124 52118275 98606936 409468180 28821229 151338779 163682481 718478148 237591729 915812181 286877417 26009268 455828807 968505855 860466698 308601918 747842300 306790534 140663145 619474390 397512248 23774655 327235098 712191071 789942605 390708131 343044413 699234764 705284335 934426856 973970311 966145299 717635924 358778800 834314948 50512011 774122651 183330625 467415430 462218370 352561432 988266479 91825733 130011379 176118282 670512757 116266093 560962908 841126765 741755558 273724067 792864823 764667432 572988807 809061986 816598462 50945720 864372991 65627636 729383038 308240524 187186244 671536799 597130072 682908685 988818805 235255767 39265122 105086332 979477695 148466900 840835787 768503370 342557221 607439004 760915561 192130109 650618440 901218271 938771465 512656835 385282750 585666468 171072971 699829704 840765196 971363458 813937689 827278415 726536998 880112406 709083526 10502685 592939852 435337909 230947456 704577949 919840389 416671394 771275576 535512759 538453645 467383240 176193862 653944139 926011778 863381798 448580216 898280819 615045763 455629143 854638425 755218990 297352420 38969309 282515030 785529369 961160306 424228616 788078845 540826128 743153921 713726948 82826098 95912760 345605110 331996680 680426418 132414002 776075675 828320220 317788947 549201050 482881883 142180398 697158259 288902612 982591815 873352703 414437522 509617781 99761544 208202502 220039349 921405441 570481923 238176439 674724737 843776846 727927142 824224652 741999584 312053467 14815999 63939817 394577077 655210359 53495619 947604298 714091084 795327109 184224965 955661041 582799743 315768676 858383102 639283259 57498 156219373 265693880 638326076 580768680 296005752 14912931 920288044 610116507 342023531 393414679 271751773 930500599 803894463 524990776 966021502 778680959 497088105 416367986 293249186 271428780 239212713 975845503 531792300 964063037 212310289 736994422 225967873 17788000 706134977 206934414 843100298 886358049 645356451 436004826 546619308 144230110 340552494 537992925 830658311 28665921 82005037 884026942 566139320 365401226 924158928 623152821 615615711 233548026 456140662 120966889 543087118 3791229 596345281 365459611 980622309 407863217 708669702 80844833 599549192 956878657 121631686 527026538 648726428 54598637 786806466 291633491 664643771 987574970 828779286 901915850 902954584 294159269 486747148 657100944 488203938 579075064 247451259 277361634 903876563 147270263 277302414 889927069 927539385 657088961 370509656 169190808 85268488 742732368 251859498 560622918 10696590 299650634 343226260 667884303 811348347 233880396 976907028 82549158 767384447 497935132 28452542 541295686 333119478 221257076 51000960 174118959 996077256 767272153 252932961 990809374 467540302 470812464 107818092 125618507 91482407 382075768 835272105 145588013 276096555 91954936 787968124 143349163 37561897 149295502 69861185 923227618 26171877 304906813 671117405 511438004 610257918 194349634 472461686 652029483 484011656 968580995 248046987 384127597 662768583 687979173 459667565 575015439 803041495 308416007 966654744 915506076 930649014 771973473 748356745 899446979 158617648 89545264 564588899 197226526 747071379 458436104 604368598 253433413 38471931 416738377 642232806 420762759 211569369 690565766 517525081 78781732 995009699 732720980 511894163 132456887 592175600 720223825 732966355 542219152 143200563 736504440 701023580 136486511 631408842 265323874 64538103 415890365 107848751 741719216 301884463 225476499 480574442 326289739 600070462 692755759 178899075 348065505 806335194 739791288 455945324 544632098 804154737 363178036 473469809 828978194 451000677 182322205 637029492 125491557 391337635 784921342 484744501 589693240 296470930 770925963 123397254 721204883 785660484 913949261 772927539 668504654 110121543 198035893 933962809 105507611 556090681 800395016 542438774 55220592 95070207 352885525 995995790 346617696 757089184 229764037 268381949 619017805 280411375 525743868 982410594 435566269 184346808 246502174 94128720 159818553 316751782 769677600 740100363 732521016 593418853 835539830 267888255 792593243 913805542 336477178 883907594 265776589 126557437 581147876 423784076 957877681 439630623 852420461 66939076 553749661 885710346 331978351 102570675 482281751 806500747 710653696 123980715 827448210 85368836 682550163 880680741 569419558 920222264 633046726 270287932 135506173 204126942 938704894 822077524 682898072 476685726 795779844 506955569 512090136 47494400 244593451 584768782 599020428 684435879 123449486 673493714 546237012 643196732 431925429 193444656 753082349 161974639 737787528 363876730 832928013 879119288 652225555 656406209 170349115 234271869 979727923 275966605 287137623 748132057 642318033 635812343 886964527 546483046 983346376 880221023 287613129 858827030 803915087 416099396 806960685 932632055 10014097 198053730 176078420 739365579 472652100 136921828 791946526 299640047 513716255 117997400 622870675 663999959 698249895 503774639 819924693 135819681 577934620 574127247 190129367 249806666 777190891 335005395 889734250 705298433 643334759 733488614 743907079 348198745 819737440 116194385 322711765 4152459 784110231 815749720 58760976 446803018 489263689 130945795 51981889 735425299 310237901 346489677 554934075 738642723 532850704 138912777 995501183 147936188 939034809 87208548 854000964 606870530 79967846 290520150 54021008 171657447 797118922 384192227 632098863 906291072 348981421 17315888 75003974 328665832 801389674 956819477 481902277 389785098 31534302 414713311 834230981 848565260 616899433 168283159 149025932 733078810 475392119 870203440 607567381 381232197 57923552 411097572 159091007 769554775 352913805 971141640 268772780 553099322 878404473 979282754 177091125 483048709 263663521 510495241 346394643 841289750 224007354 565403257 88862245 641000147 923553456 603888336 160523317 806653217 645261529 22088322 851711122 447724326 505626395 136278087 658116560 857920347 687395259 57315017 406570352 435956946 22899397 630365326 316343980 464559631 268945757 672939885 297111771 577572039 616206517 675079134 545659202 596664581 934814001 904237811 995785303 814796401 449418233 347298402 773531484 445130839 173903893 639643448 515891736 988234139 980924782 236547972 642825610 661505238 244624758 987968607 689796568 7287391 902649384 491619539 820267069 52732143 167596531 357660062 179440656 37060848 281334075 925798971 358434218 792645761 225060605 421872603 443761555 489843330 553147092 714106240 546247190 11957471 604347326 765617793 924165411 468889346 73296686 719441658 545262850 318720701 438022374 843756873 374143720 748515120 147426590 479997776 92263990 437805710 931699378 469056883 997700937 103435222 826007889 944415911 143052094 186969128 293542482 163862083 4782118 777805373 172477429 361358032 218058554 416678521 129256027 164028215 758830463 978679900 225419361 678748188 771297345 919890846 379791907 255452298 509513653 60003311 295734854 464246344 272397922 653647957 208481608 126014921 236718142 567667466 322899973 252181048 369181611 89424040 781621218 726627117 181112420 561953290 21072667 821924895 129687573 596556101 99160204 81671365 501818689 545568207 803679856 930612718 979769878 414761056 168740811 734087121 471818880 434902055 624150011 20004776 195643349 406620811 738234067 985970410 541822624 879754415 523635479 280698697 966441989 634966918 793772663 135953512 374732070 764142259 981485355 370245625 574930129 888761410 657885331 249669460 877782800 71269688 732171717 817861293 301632822 801056265 104939058 636261745 285999798 285775475 829249363 736595392 393850022 958033496 871173443 795128064 926995850 131373364 357008583 935879107 855382633 160795753 288496856 313561219 578165949 450697724 399159036 212466100 996907092 948232936 530376434 792025297 756927037 912419466 761578578 102439948 394016307 561466086 566574303 859041582 772900580 779588605 243882119 223020955 828698666 480114691 962785728 324264737 522983291 828553928 767119239 295967124 677624846 338494384 980453457 730534159 784259988 542453154 433035607 166607599 945426729 228449898 354940447 474166296 863119944 914932400 592237864 481698173 819248949 165110355 329000980 676612377 488847309 631323972 462251988 508422366 971441810 641988483 22422899 643989717 615898415 561630027 673943554 971912177 883188251 797584364 172448176 791157066 176978733 854891245 499111442 1657865 294225154 456103055 448705838 616060244 710229762 309753956 503435741 336598230 221924959 416628438 791972989 726359596 914915211 890481184 969159047 429226770 991645903 404799341 207562977 789827856 772606647 246420870 138688121 793134893 175656356 527182405 214857946 799556355 126579378 307394838 566072813 216273497 780977929 122977069 501263121 994952049 582606330 523286687 348155867 260234428 903740574 555227268 122703061 273328947 732201197 564070382 212505760 118764912 537197411 502807456 849035044 758531828 163204962 884053351 651079665 978213070 733004331 852128401 38478992 944331678 502391775 985213369 115080908 606235742 608813051 405762828 99564183 280516849 606607069 220998539 946432748 83578895 804222355 703724270 480761841 852591871 249941948 663048706 529244982 908058609 430735056 499233770 124851109 73149911 359964779 140138473 236889903 823021012 93537706 717245225 227589466 656810337 196274687 875240973 302359452 135830842 589949199 263392397 89088936 923795796 263141244 300817781 624837751 304580261 732903800 923414132 269040086 477858167 582638732 746988705 31585641 951186639 219042701 134574294 431176703 895062112 811193308 121611007 740880209 502235929 316136079 791080336 750775526 464337638 629948278 389867106 934273350 802242619 813502867 510094552 227808134 241973373 149114331 623418487 189785669 814623453 944220485 47432120 735000882 474464885 571460979 742864177 70252639 915238793 185109216 632081946 16279117 635700734 678414262 239170083 495461929 100172003 933174776 514811421 958008756 588943720 974643278 91908440 467167821 693737356 631792174 182303776 732054825 335972610 681085649 182850655 887731014 163947106 650581912 54297201 237319482 581222584 899696332 750272783 937061595 671462479 302091687 506056943 238124162 146517170 507873646 237274103 187776919 371014807 389614671 62743884 869403225 916219177 114899577 761285186 201625105 22766331 750465112 422496690 917754245 464408547 676821960 721613063 612957048 276850266 94381666 822023943 301384724 419248048 142259519 508503190 818003120 234454993 405943686 588377356 875298856 456190816 46354179 597678630 689007422 995861198 838416440 23701409 429462367 565476749 67789828 284637086 626932077 259875327 375541857 713396698 858900473 926783650 829371302 48207874 417556167 86737127 691418587 758601025 307499893 508863958 133282320 520442132 192069395 35222448 185542162 19400839 143418876 273220973 705123085 511447490 235732778 924640495 157202336 420703959 489366802 838663027 555306397 802809665 798194425 413250887 370764312 326180308 357049485 359799871 114298918 433493194 924862763 870332152 325630758 964544629 769781596 204744289 375239309 532856821 263868361 523082387 854912204 814671741 901339830 270492350 942854113 871011947 698895681 345321771 550281240 322840001 860458226 383677720 457700132 787108652 263883806 479642343 672811462 866661926 746985986 168193020 689996372 192627501 294862432 200593188 923681601 661730643 136637912 899888332 567119540 796989580 701324406 345696086 513230110 75381317 719155028 524702847 985347652 943879601 224827361 713708584 586095515 110689942 776376264 347063857 668154043 685397727 140001563 111775701 35719120 926775171 307348324 733186685 180990260 114212336 760498007 212171121 86627735 244838374 665496642 501029793 323235212 546143163 558528596 513521022 775138034 177421717 112006688 387953533 372659894 725326077 709469533 792878147 400707412 882102800 633093444 467384987 95087851 463348992 166882179 766950323 968887958 464635159 40695519 329115908 288543096 561060635 592067733 319356214 722015951 281813789 820817272 608390411 297789908 682985775 183092740 13845845 836810542 548163143 567727692 780260447 730885770 279147130 915434171 500594401 180097233 658790767 686931279 164981453 401305744 231548455 554997606 203135108 512698992 711173944 809462293 911478807 182246150 395324910 910384992 98591375 247937326 601306055 90536241 13571944 913786389 740654628 381110058 420076474 356277505 93838900 687412120 628366849 908991471 567693491 967201507 214987370 657545041 869469907 952309836 691490353 707334106 922014140 615527594 611844700 251174571 730374126 51926403 577028426 111796131 400343842 725283973 933059352 604572797 500353380 830416127 829974177 577221638 335733253 505863813 936858981 295593684 544194913 247735747 433681209 403866226 122752033 213262709 153780030 291844511 23687243 82618636 717296076 368073536 922421559 820670546 742899570 671811532 287266771 679260446 837459471 313751806 492665318 726002945 351426884 826460845 144551660 775492779 306315340 186264511 766598624 914491396 692117590 787788181 29769783 954764713 869856796 455020543 111327326 127498304 666464715 19770854 878527975 952168427 591264537 718258339 377041895 8256447 213636110 247651324 33315014 856168916 56864547 793936175 45192211 100078949 240993850 419722897 572614867 423565100 484397847 930808432 917352473 283483695 779354355 518305054 334008367 405318360 351868291 871580618 676538278 171283390 907135874 415128789 862118809 788066310 203615008 35059751 169847488 972282954 374190800 205648167 960324878 937024097 544715132 589236163 843045879 870419052 131364954 416672113 126874130 885594348 64696633 234820135 878642472 66020638 419922232 221990423 247702292 803576774 894631532 896051072 9659517 634795600 998055750 299044529 15054711 247505856 116653927 409293547 571971446 581298627 889661933 50861447 328728582 722001589 972949865 677709412 707263050 841108031 728854602 971993942 111257543 740659230 865698552 554190575 338737396 226251316 511717277 327306642 126894641 785115473 852499079 14398191 839308950 381875220 101362180 735029158 93250103 91628160 610847680 994805109 728445236 63059706 960355090 646654944 790676678 512177514 784453070 532926924 669522277 44760927 553100695 511559430 91369029 362088469 451994096 225868491 655281409 731755371 4984527 332574014 443288703 463883306 431529353 423690022 357092002 468998606 590475000 856651002 811597483 182070293 135270333 706094356 328407359 343057164 179543343 668630994 153522848 39622966 529637109 778247866 614909887 589052197 812408184 906842857 817967348 584628182 269815078 675608192 876266854 580066074 453159228 417570180 885369942 763272039 789588012 809738819 778355730 709500780 234153796 86429366 780033767 209909154 153423409 950781507 501449480 840255138 89350635 473185579 609693624 492733855 981027986 251345882 176181858 65126650 19424279 461857146 21304361 101946009 419753108 29395076 438773602 42370178 218214844 456502946 279946397 707649704 931071778 737483079 414170356 447701246 907216874 708770615 946789710 221408064 650326202 359209128 648632436 812904126 914707167 331350832 533747057 256180484 174273535 113693331 965288163 670946597 81217522 206759177 510153218 527939094 21057269 724546404 702447560 771988302 408883069 49890593 525478483 140175978 490773140 290073480 550841113 828281748 849583257 725250881 590141985 89773958 250382697 396781823 30270984 668196082 189335684 756966340 565544676 810932359 606319604 280362859 816843423 843125891 134692678 490195586 896457277 309287803 476278318 140703427 67007303 413773883 319442005 330578162 839808107 872709031 282887277 358167805 896215949 768479464 481558890 752509140 382541143 997865496 915406232 845062495 805997376 32256547 548157704 874401354 749667408 415714155 902595554 348989156 917844311 176389378 326056304 410376055 733354403 535091512 802838059 348800617 110476113 357037567 581380847 533031183 704340247 883419406 397452754 492764265 106618355 492131685 901976320 496628563 280978917 106313066 816628259 647857621 374327269 233360948 182629509 765917495 81897156 812525006 320689056 961822039 894022178 220351906 89822992 312053281 654464658 855994737 176549149 213625910 741822001 11653513 74162509 171555957 970229910 318651815 767101039 107772045 47983761 41480406 232027681 437790998 68414085 553236352 292113101 193601372 793261881 50954856 916743067 286664218 777281007 243308083 276448330 62204910 428425286 644557877 355094832 795475287 134536591 316374383 164066410 748140367 838054461 752503317 350833691 484141123 3786925 176583034 232587761 675072369 194319026 794844952 452407207 91555847 383269758 359846055 589881578 770535009 972978686 157916854 71744586 474358222 575256525 518842985 189799772 402698875 578077293 38837679 521247871 51392689 709214508 339399190 902475154 228960790 501058568 963809048 495080108 521236904 479054102 915147853 887342622 732349160 659835940 154885230 870597033 318570487 455223710 28840716 285024299 840852912 52953051 170684650 401125660 416566332 715980821 961325992 395741720 720789471 521626889 774279811 521263177 689037242 546536215 535567455 120861637 721012280 422542281 224577562 531877713 75358568 635271551 408133845 237794278 683968926 345318512 730130264 665217394 409740458 656553460 136082296 676647909 27925318 178523907 646105457 681181296 687434179 282981895 161042012 521719100 938230060 265043105 668272474 291864031 550887535 929590372 276879764 712817651 335553358 172294605 281611474 451070495 387058009 822284077 249420091 627863179 370048223 621439048 57205472 908360440 510787305 460211576 152607464 95933856 331851444 354983936 22103684 409391795 646517585 862913495 616750269 576019694 922593285 62590991 389203686 517256950 473563048 585693397 993420546 151082530 665483229 571851557 110125084 625622709 233489868 5099442 35908295 313778405 586596225 668817999 465381709 179093263 47635164 400361759 130836102 845740837 400628697 235965793 551762011 437592645 323311312 216258448 325127607 147942814 710164375 200069861 210632241 663963745 211292142 814874196 959987147 930865963 792262315 592693044 641093133 735936882 898568312 935655247 280049000 334382528 646488267 953942392 486649520 938314777 992188445 125658840 557116705 568904937 284304054 159862362 999280288 365864559 426348535 869064859 964709017 840648331 880890409 589137650 307553803 761426284 633099793 297146459 36301905 37623217 586737253 403261366 911959927 959314552 345501794 468764709 896576372 134549061 546398489 196456767 806964855 260714426 926916589 395455002 527203574 500876193 971911202 359691591 887136103 931923744 15308732 516211579 114947959 12099796 490234379 374950192 460312589 960609521 948972815 112495382 96927454 506129747 938415756 900310067 944764952 157615780 137461913 785357908 593827657 887220465 812526046 757290860 718397199 301924004 870323377 819652546 825055069 199335342 654487280 30530529 805394838 900350735 141259101 877980230 1296991 838485164 838764609 886057020 629763972 308418253 307433797 101744925 277203147 60041917 689807530 393917353 396381975 400167706 834954173 192459363 968920288 231068170 434624980 712670959 976417798 621693262 191148270 448474146 478739823 17721616 257185013 128475104 616214185 599087219 78256896 460718813 4537749 326892282 482221134 761891849 514559676 605675005 674292006 527205674 701603911 542293406 268682636 647120039 277232427 447898523 391580944 775851859 828429116 911212820 644214813 246171077 153302811 970011566 984220063 282845355 482739344 75024418 484479542 13684260 625556484 109203703 280102409 814214179 594144271 121841001 863949660 702676201 296289572 784432311 731277793 677830020 921064646 288370700 204506086 513230603 328969385 691508358 967581446 498229238 750567590 229973145 421147663 600167068 299603213 515047070 369963665 504613663 829847682 305906734 726301231 11947322 202629690 848109533 419264110 933444182 33068802 936684608 851970883 176977082 272644416 781685924 420814074 192820788 714037721 492373395 172905791 276875091 778732854 274604377 915077442 31900377 186272182 571184486 570190524 298916487 521139625 724369658 262677799 619664423 792864110 988846433 562684226 980407717 388455016 831443942 327828144 859719923 752550662 975221194 378297365 107263252 503181808 54754247 522424422 380336638 40026734 959039033 981894826 27925247 82890041 781190997 775650964 827626976 713169971 394873631 591149710 600666608 468581582 800731693 545512094 163966234 604640748 803904721 598368679 235022394 954672869 204091941 926147100 413269868 377244527 915749081 321448098 530487356 937248051 789835473 202810096 287085651 959643854 463601173 865224457 286698805 695939122 118894183 808827526 336885885 328076128 209744060 296772518 28820213 539048728 915263185 250043724 509768381 286845748 348287709 253220271 263509583 842607822 543585795 833627813 837221108 654560965 886382374 686184302 951113101 692534113 439048897 249588497 374552463 921874930 723069543 881329692 402058322 243546922 873037812 816088190 125313818 772733616 613291139 220717327 350488516 116825874 343741047 448489240 118280504 228753652 42064294 209619517 38895099 412246423 396800573 515783107 288589837 519634190 314606218 691814349 902688629 63173872 332164206 916589762 587339497 971090178 274186755 415220498 519333711 366435234 264329794 62596930 144191695 309716643 502228316 48812982 113904462 808773233 103063082 350325789 807743445 575254230 124505159 606201570 792430342 242501911 608477042 550677093 168223854 976559074 187668570 252291030 63899710 732078694 45062187 533106575 683401920 835493350 864462928 210288565 418756107 601760983 964441896 71977069 341918052 389885040 1113751 195699644 761010924 709054807 856566537 868805517 317579541 523423926 761772589 926854748 577313169 440875044 273967500 200175580 746710872 609323749 234629798 389371139 921528761 244306924 619798086 745418916 940261940 531516967 438552761 544876642 234508229 964507497 397270827 204001055 164878351 868949155 887881593 75076664 235026907 390945168 999758943 800195781 259776368 631138925 855207521 5499601 672038619 142214925 257748079 397621054 705208309 705728106 521798970 125734355 68206583 397867065 536301040 932564635 564089767 37219140 205073658 20237394 575649158 800857621 550110144 768561888 390096658 779211311 794995880 913634241 799311556 470468084 20515929 330063985 712760368 546396488 603934236 43674737 804264173 334728952 116653629 137933138 494759178 729061880 243592466 845532563 256630167 281279002 856606972 605328249 20886367 138986715 722741234 888005673 176877788 628412870 988365015 754212295 529868252 734369570 774967900 573733043 128296377 273312335 651667928 513484552 492085687 916924080 771243540 349677576 598303963 99754218 851764246 652592670 766446371 505482107 647975876 174686543 285734674 574574708 259002557 50471364 814966104 777313775 26170586 965031686 346830620 863551966 812473504 354845553 687606694 963726440 184736779 763501396 389826714 741184148 123779150 898819119 149312623 490960298 839971890 456313882 436159993 826206348 355916078 777742514 237231208 820645944 274051300 891181641 338477489 533718702 874962017 523304841 21477220 585145937 363640009 994459234 119055605 35266660 841740718 489939519 132086859 948371536 615859420 216485955 357567422 964538768 386453452 47171310 620010419 434568928 586775995 119041474 415349638 646747786 890454868 60616490 899446647 459207612 429158314 947813508 846235717 231852411 16112987 527222349 423489326 702768807 305759890 365931320 803096064 924746208 112456901 979429940 668829684 472502258 976265425 546215294 358977905 698200527 590047152 629783733 3004943 665497753 509619235 864103819 579345330 110401327 734278656 493448720 517947922 714542345 678422166 756181864 350282909 951528546 560047896 321187724 204585853 358691679 796346737 461589614 954588778 538916109 563777350 878421516 256366558 848638812 418992847 672222609 165161997 593590799 816322007 831512830 430206718 184282325 992582599 153042082 929456990 149957252 878955221 796766872 947450829 929572976 738116551 34125827 844921327 124714965 511885621 282460194 366587861 60726454 231893973 409591689 602399210 230883560 832614320 422109336 527118546 392042919 428922388 86501923 196514717 988544789 38875544 326496371 843612872 280009109 580200583 411196750 323711720 72623854 377223722 918478549 1909017 762086065 591913909 656487255 437351574 851261931 602356122 654985316 26304322 961466971 761439444 37732978 363200486 193564274 779267557 215403346 121771221 298660900 901984805 722147865 322399727 168777880 443408763 661130613 776960691 636851246 718458020 169273885 968592158 104146053 401065473 456652321 833528854 287137623 379659734 190970796 134715668 6655148 257388063 150037696 691219416 793230055 806801294 714867966 65934144 791652891 491748993 248260140 531286685 349334037 842033224 228877324 957564845 350475501 480215018 836485178 284145978 343422662 782512732 638021322 196912442 515019381 602709486 355049142 997684364 691785076 175100054 841644095 758537539 382408905 722739654 226791950 606481106 536394982 235730224 250364002 172884875 426148885 305494367 618303297 168543096 587302215 1777310 225287080 161022557 241823851 917648881 703909371 44288048 159467543 769330048 634854804 119531862 594826463 429143830 141795881 303284162 901675954 990188005 601360092 557730281 679959126 430473174 925009785 971603847 439147171 947526393 898707954 74030118 140580249 18033652 703104080 15313113 395552507 595058862 503827626 293053343 463454084 764768946 476504097 595748815 324769491 833344327 533865041 415523970 915440065 513940675 225298860 761492656 4063121 582566548 841559508 257042010 308220011 717648106 403720115 542190385 129459799 462559531 878968382 263265193 383726229 516991336 783751053 852145870 89798984 896566483 517605453 371155559 46554200 181519705 913171008 688991759 64002329 156696640 842429978 4198574 195349726 936340022 246583765 180508374 491514567 770554964 602910454 365101894 168161010 704427999 30046811 506517357 726341862 425214727 88807851 958527778 461281467 30133004 459649082 117582737 767596013 811935412 591334333 780259728 195451627 543455340 101665426 198973036 46814250 551329124 648169397 758415346 239955442 632505692 598508349 377302245 674622494 883629348 408716013 23860293 153398057 357052167 747162456 456755925 612688745 183207045 575430306 341221070 768175089 502088104 525939013 739139688 998522900 139123245 428316406 721405590 963880905 399458183 659001424 30878775 955206651 498082 85923645 939404657 348728420 794429711 721288134 561551679 372544130 42296039 904324625 776201480 785120579 199262164 953334519 376103314 648048006 310448560 556441234 291634716 2084471 13622312 944000748 901889588 251262040 261711217 100904489 635925683 647001555 602200888 807002487 276889750 381860963 416957489 266237479 476733914 145706830 839380641 249045716 334209840 425870621 372140458 963853908 742592664 823501900 308206262 810750299 84657876 231042745 713977096 816373100 452815639 43680190 634491015 729021098 820126950 311182356 218041244 982388421 14223874 513006144 789374478 691381125 175507854 152821076 374580117 595361663 235961671 380560519 867664705 280185882 389285620 718835724 680101404 670632771 687931472 541790065 775650174 176738539 980053255 527532862 540345764 683253686 731993612 282656301 410103476 327873645 126487455 929305279 570515896 914605560 884583639 146400611 407889718 857357765 916472414 785248398 99290723 708162435 814583541 508217551 219878928 569785791 452137059 724232641 90957206 543659418 517787939 327340390 42307611 665127638 503490808 38688591 887031239 474161178 974826317 180413069 721871397 417992320 438767460 845098844 720488906 311080898 702103609 292868797 656981246 869936318 513536988 173421467 575116662 761649201 720457260 547740713 886752583 507996992 387984562 750675845 743577916 525163258 211043758 378575979 921057979 22966876 710440420 336679378 523249387 131163613 502769179 157467118 796441797 485255790 405526446 157402914 16041454 846603007 120071067 118127487 891576908 844433992 752019523 912988323 705546634 345815370 440966896 746718265 556835704 919048409 863155718 727473088 49047898 1196384 26390659 655046079 390709944 601513145 157266214 602074496 18458161 671107117 756527743 106470934 811957657 244335889 346916661 357560073 844337341 756595387 734135012 419504031 429571528 367776823 722351619 545154255 232596729 513823766 866109720 649301488 21481092 656306020 157012836 306657952 480699813 553841457 669427181 96598592 181190136 245092094 918212624 555844147 29968039 754742733 692542002 224076878 535884544 660693770 501205407 88042151 909067191 130576644 675845026 284054060 855065778 457890340 950584630 772742456 86994176 389712875 272846547 325941159 108593608 649746384 936773131 816289909 435361008 538970268 563835720 698714577 62309184 78083794 798403598 27038571 187736379 184226264 756562245 608137455 512197310 600738788 192229787 795837949 70798661 372433322 215887002 506379510 982199769 442950164 282070764 379405873 697077682 344239584 348988337 164738013 828849555 560525597 131654147 187096167 695728777 27784155 297783025 491083212 559725477 959923263 115502664 966653431 784809703 117561079 154653296 308969920 802986486 641511452 883535615 995662842 848781210 657179632 591566521 843031548 159605998 480669829 747355726 413393617 228483089 671875095 331117333 768031752 297427822 576913924 302374531 998466402 997992384 331487829 523888710 726456286 969299754 408375905 497477627 861319226 840807255 42098607 796126047 611497509 918423034 479699976 489766258 520035135 71656225 801003259 965777907 699820780 362111757 701326746 281556339 56662534 443247241 621957176 221490184 55982988 778814412 31883957 496284190 332993245 984839559 45792820 781655252 678073778 324831519 641391911 753802443 375593849 559489551 363526758 478069113 485810375 842357791 144876168 280919494 425858277 42222863 353715654 892721855 355593565 125957693 303348074 645679574 806378916 801776495 115974785 885526483 480985821 577988162 29050037 517370202 295364523 837971454 997313067 284234020 969098679 604606524 926316870 58650094 635343711 496851259 752910591 727030811 704263774 386974866 941588891 610675850 984363628 172510911 302634337 372923413 277277958 951750149 464866858 584028461 246708877 23645249 46519235 715189779 248258056 327988413 355823765 52858824 362820935 600058134 584948589 895444853 806125171 861116192 368253303 626764009 320949884 172758475 8354146 136760966 747970270 796875978 921860871 774466497 938025564 676363062 813117439 631572011 67341600 865295889 236153483 23176215 556926000 556959734 556744595 562425799 20689806 119525649 461350657 742252945 996336109 552539338 764955718 392630959 678412054 420579436 81739992 964129118 83371938 954721310 768893505 392649996 966116780 88807489 435754157 475945431 477396711 447336989 876126215 293928614 735381311 648417906 587944103 745711717 207107239 419510067 995691893 642352010 375715956 113039813 29340733 90832076 940925449 681703578 179631358 250434787 901935256 566777864 835475217 214428752 751744540 865665694 76131110 768406505 599740577 258041820 66930114 355196374 846616262 936543250 558258402 525711638 987764992 352050608 7637819 824364534 348745735 125657215 766349008 969974685 633126198 979496828 95460244 313973539 813527387 978850421 918189935 148163619 154656110 399058627 127859731 767388435 808078658 416738074 684547558 353349161 230008307 807746999 824789768 110394539 617441294 807169807 234190316 615201321 337627724 391253205 156582610 777312344 837973517 181855313 343736718 317535102 23884346 117938468 460793571 340746951 831626752 4210324 927521118 493527066 485165345 997915560 808101978 445853346 368792910 128011242 713427655 275516160 300878347 125735489 305659171 12659826 147016211 610118411 564334651 40729186 23848651 843375906 757951424 104355447 465489721 202481182 156723866 218690736 616175243 754405895 314713079 14601424 258043394 218856894 701418517 523437452 625083913 540904154 668779657 211961520 18296930 326796512 207584846 613941085 289461930 624698401 807778947 625023258 106852013 593632136 841156328 661771086 650739197 313744026 2985988 379931199 870035603 986334564 382194678 373136901 148310873 702841079 123188907 982408631 786674562 596514751 934386565 993032103 67157528 559332628 718857657 318163505 132832022 907167060 797175022 222313851 196629140 631593366 551701574 879177039 474700657 386016366 438816401 209647115 787443724 805762183 575659906 433942641 194535586 800503593 531860986 96343882 58835025 134416431 129916580 301694214 451187732 413891749 699558879 839231414 924464597 475255228 525954176 459191521 602711135 654428852 694702946 466061605 368121966 136985956 431963429 933373906 70564021 790479149 684950670 296221440 957799444 84968092 488898780 971809550 505348510 84758082 595100382 494288420 394232722 724971957 675562425 561522999 282570779 59977506 688176271 465328115 221511967 33465357 801213239 957258862 527822143 924221512 319674557 343991462 692584549 416722949 886164545 172581115 963804060 28887090 923644670 275904287 814221198 736681583 700839686 732699113 353910668 439388719 513194247 182284111 62788517 979600853 78137589 264986305 39273596 224076366 383943490 496420628 54476529 457203824 518253634 625246233 771279427 865018284 230759204 462912908 345254197 227911944 272042105 204613915 869006638 967985816 235424435 451620669 893686217 814390530 527102539 532231643 896477688 398042581 940715668 597810430 590032468 514381348 190052784 591077963 306399632 69131857 946605221 927631573 775770204 107127331 105932009 972210674 39832078 242596524 637908733 846312699 789555128 218882615 294033057 211395110 623356075 240351388 374001111 951841315 472267334 539473190 421589077 305289582 49774981 932209241 5992182 678059011 602608671 340799332 559229066 70573103 522770995 379428342 643277933 447135471 208906604 524064832 572777306 144611892 502622412 126980737 203799658 453338784 520827697 760824675 12095243 578087946 525119962 810074629 845085035 559446454 354695248 863344171 192504039 695282300 929981577 793515048 409726422 862667758 676465396 364849919 442169584 940592330 909216680 844957690 359894908 465936096 56055104 928513632 510188939 884754380 265796824 217617325 450553227 990381532 405424732 616069398 610763912 344868949 726531325 502124143 247184388 549957401 860385904 897111542 785063551 447124022 335339397 272337565 989160481 584836332 765149360 111009564 852515427 233931660 212159874 541041212 496453610 238867903 27822807 584816204 117509205 367684810 376809324 766067965 705208358 394975507 386038250 849026561 770625009 973917441 876698958 803146778 760735628 936157859 717825619 580520754 248365209 602159481 616670224 860600762 903686208 61284655 431196302 583931944 46664352 415165097 240807526 635156370 442781535 289718141 429191533 323536139 602864157 231665536 264291755 682517630 178451215 30187781 769503173 52295476 923034912 204225806 864612929 541736203 789367945 440999500 676668472 79079131 186588054 463830435 173807132 39993818 634222372 569813978 439343337 464592326 386875854 796003172 997467421 948441787 783604959 259027004 630669279 808332904 236963092 500205946 281628536 131467104 770848399 561064240 191470404 569065610 767696612 175983806 979160435 318215301 908569040 953381285 698820156 688261299 221795761 96946038 579517223 862896886 289098711 585303055 989034595 721571525 874820461 252385123 773048069 994147691 878490327 431473912 75211505 4932089 483285705 663811279 760609804 949655387 368958926 186248299 448523081 116868732 573253977 737621074 25931127 847395276 959622303 584328031 578238461 231028451 626418046 239323573 609927586 211001737 387086319 740238102 865254292 53412138 3492283 715746948 536252289 122018130 529513642 659400717 81662360 247599117 775726182 357839157 631162187 630444956 196793740 124794035 826704817 880402228 130141210 753036839 715431056 684549286 259864939 131259154 420156766 615403189 557792031 306675586 567607302 196367145 627611790 943148878 299022284 602744094 434610232 703273434 330965487 51581693 509925649 526085427 950591735 376503529 461636601 203513084 554708719 465097952 14878026 606343554 575661772 595620008 673828516 445224965 974339269 321749351 816803005 900383511 934423275 444403469 590671479 380652480 688007606 889769505 140858879 325618811 935953461 937835284 833479166 645999595 239064683 227240395 774550661 142317701 339775465 586229706 810932077 767276584 714537974 620777828 80990046 335183365 600179844 587493760 869663933 695662228 159498650 133330231 911157051 280265535 147318712 722416054 386956019 479983628 34480757 929857917 400344494 820542741 757667722 325395678 216008804 259745572 267260856 246512535 606450687 717432833 229844252 931591622 425759065 538072058 800289746 500211889 833679965 77751966 512811914 943676946 830275250 713177229 381160263 275664036 494388601 519767979 352192857 189411131 994887695 309819785 356364768 611884560 248036895 118961823 66052130 395154259 6454422 487624305 615227903 868410338 557215767 868922093 121322776 644039310 217403929 646721250 449749843 257087120 937199617 643270943 551842240 262792081 139127653 65541060 183995256 418573645 644087022 114221340 270645932 370507500 948595507 588611466 474275437 517890583 427786366 529489450 80441590 660892663 484821931 248969814 780830609 32906259 761038701 363444870 303762420 756922510 728452993 136639727 397149606 445365667 573679217 95559443 277473083 502881184 41106722 763756790 198420649 122347336 358895399 187652630 229832103 573573689 366044378 966456820 589695740 653341380 564937284 253820398 825948025 167844674 881314104 726884006 184568823 651177183 515681195 291304608 335903456 928211930 651567337 532316219 629361560 408031658 405757049 725564830 857970400 312250936 910442142 561034607 275001526 923605729 50566123 216348338 476758555 266634804 642741333 147603251 620329275 305993299 125964212 347334209 250034916 760709397 223235182 155339069 417042333 314862638 715556861 392478825 775693969 382212210 531471426 302644792 817912440 413538575 861286242 125840179 895161443 197065615 252523619 102051421 177554350 626273897 46078315 290416550 179511244 631926780 628113159 273029271 749921817 416942400 832205569 781200948 928469003 340535871 156325932 822057697 801555810 44276291 828256626 73790936 99133331 218648059 109257866 291162112 664853752 205321133 939512719 353341571 139480611 521592770 562646658 225919880 702390780 422135941 370396326 524141271 790584483 224111021 626530150 694129554 271252171 639356590 241090967 941435321 219158994 380062318 466562900 323895023 376075482 398640822 817456704 812806418 663042984 721191580 82832817 867134195 81986062 176648107 685913225 377045550 856954346 481234059 918959053 30428140 243975038 803107590 294076304 4665074 707451860 79844929 496194817 931122950 409876842 489151686 527759568 429109217 517367203 345341639 507311119 762668421 729017295 32941988 489159698 701745500 656917689 903500301 510848988 534196723 340544652 684252631 766847926 344895311 426289727 402549777 75636195 683211886 859748108 916773040 551202956 976062076 528042862 848455898 570750347 246103228 21468751 647636984 418594741 792665853 50362965 801455197 163223925 901529461 145520096 86707534 387540864 888090901 609696262 980521586 560898200 33198908 712302360 316045136 545356345 947764957 909245564 718034771 546742864 252821032 701213148 802258906 695182646 917583694 744946248 972256159 181212517 609049472 20034955 562824582 971201885 238961259 267501020 521044499 73095602 367294657 534646630 837467530 312201916 107674067 652706913 726816766 688153359 191051467 477067728 917049436 998180782 712907644 879185971 695266097 251898323 336488394 215915975 721597895 732165699 5134332 874838637 140860295 941735096 594378234 611427194 913181 334585745 152044639 322659493 584756372 652869399 311193016 694659903 126318346 422326590 647152380 129667551 33378473 661886875 482697494 291257933 863017847 372313719 901767138 803300166 755601676 635179404 751554967 141207272 122438869 600761696 135482696 801628289 287583219 252264689 258146631 866094130 216324250 435304815 326739201 525184620 770058086 356507671 145014870 873743162 914407254 444880817 311446260 588458928 671172214 749189435 351054996 928818704 171391016 867676909 718256229 915864707 530725228 145516679 507512728 251692307 345094889 397025167 417715461 213715585 864564635 954506517 419014443 305561496 157079793 306572954 942678912 94226349 897332281 690311745 369553643 194893652 239965825 825207866 304179465 858463823 906911725 156335780 786886262 360461427 903528974 597386432 383000788 387533675 788686916 88627719 862813222 498361259 507240603 141758388 213812721 235509328 50625057 955007458 469612076 525359046 290717784 524383517 696990407 61000111 595556764 759904317 278652501 529873948 193591808 484336126 834001641 11941223 5618492 543258834 152176780 889287341 218657361 198856571 961293569 626833109 176676436 45183261 681419014 740668715 407937162 179275176 539543600 998935920 872376007 610711358 551746487 917828664 285228201 74498953 119918852 971756465 552705579 485147850 808446154 597694390 171204849 248795260 131392730 661002582 45592261 842292441 558811329 331202398 37067815 507439994 176601225 550582343 248207553 59436346 769070726 754535527 101098384 804545364 293849888 32940968 910326431 38449026 566108659 563684699 671631562 86525188 934281263 417964800 957888622 407788058 734858048 96979501 930581236 93123028 514769807 163121465 260411668 696676808 673179166 418103147 131265583 908773369 137054590 800883848 553260931 293062705 409684195 229908908 161555878 305352669 491861986 447838351 221892986 783697822 801566442 100784986 832060789 682015277 459122494 367248152 315010650 158939398 578184644 629208676 536070494 503913802 512666688 395337210 230557271 472418729 937125610 669030924 777296781 408295459 114826051 751763977 643152410 967403097 911522223 159244455 826933311 235443094 501439804 17306150 205141228 496382595 669180899 418101008 805897581 715835876 68669798 184996337 355172212 593632143 962787585 176499123 410689946 983232025 607813357 52240507 43272691 299427770 481988839 163826287 912322232 589555971 174676499 501307149 950540772 184332571 121015167 434324541 942764384 103691239 375672261 353822434 638639741 369599151 574862022 615083932 695199722 173319987 91517012 411589958 12745303 783437902 714911182 325704153 730655297 563779700 186565045 799141491 384401604 864183045 922810345 344614397 902991185 49655877 811789886 852968867 648549063 451417361 56752800 285967196 491260454 846096015 756019159 825045443 324210397 878709478 634716783 883611170 901176070 441360881 973040607 612188140 771092930 21673543 77223453 749930405 248296308 701778340 484310209 165181173 318936382 148666559 116227710 711001541 133644664 361224274 789065561 254708899 304441139 27750088 380221276 948389266 51489516 463246428 788937205 36286975 645262194 839395375 554497904 757355270 452852370 782787954 202160672 380687284 243615797 39016388 988102013 292823376 422372520 329392062 649366861 108914404 161206463 124355951 919582464 183547136 506579072 376884731 546901978 953306165 260091086 327234393 201094743 859553194 314497419 841532210 261528182 279695911 560659435 746675593 522387756 740983390 156513024 147660292 87760095 102766613 626518248 524147915 743846435 600404693 409924472 684920444 174451382 429225759 806992505 427418667 902817266 251667265 350367107 132680610 433054806 818518243 958901932 373395225 557547935 257118231 416039201 185844994 731240609 173527928 641007914 291363890 775260335 121460026 996755981 861887714 667094952 205494887 432215279 45165480 525858267 68524363 5525197 951851936 709675097 175687631 891255015 290302507 509492390 222642051 360585466 259183274 876381206 88481262 160641271 94771378 604259697 141467948 543370882 203042943 649000737 675864845 947554077 262368955 339396443 158292446 686183142 839593125 932262452 740008327 142487867 482198304 498594272 350422924 645539824 771623972 492321522 636611348 36033985 693089629 885200763 531662806 989713789 85703438 621600637 335026222 720014745 830781248 438378721 316725383 181631204 533794347 778762151 430675322 320516202 705054910 479568205 157998821 820805201 977512779 201679427 739971949 595781047 637171505 254043857 998273508 217510356 738696487 735056081 959749727 785445341 927310020 646311004 799537191 215019187 283370203 340632274 409464223 901231706 81513540 952628562 413092622 934818591 501132421 769057176 902339637 91728653 596136201 875435606 137337943 802028287 490949096 887044979 219843445 514763860 365483834 812506998 915632775 211188781 117791799 848454056 541479395 14060388 275631835 955388778 260895472 526125704 266540680 933192894 330368720 779100643 365612558 160548417 564007699 172760522 460468503 494734264 955585153 768409460 173464577 333657399 432935941 47994243 506344760 892532965 988100021 781773764 310605587 922900926 463719568 647758951 286286202 589429667 255718870 984589400 227883589 798227373 584893437 960772694 69113226 424775356 619555231 487434353 165178867 466860312 601817110 678045557 177573750 516040228 775946387 884959419 187274179 643904954 555102724 663448163 171302922 816845686 176079326 961447046 510502400 535349626 300182763 253299308 338346684 294702073 897580412 304563824 848439872 231618008 997940949 486136682 794553957 665894907 674952838 691478321 910647689 306821954 775349494 15542945 281221780 755844781 921390783 933783662 25908694 501572211 831531191 430797103 506395763 102642004 172318445 169328945 31544032 436941866 741491515 257194995 432200062 83815909 428962363 960222100 922924 367453619 429211757 828071943 469206600 496882658 135778449 299659754 59924082 791635022 931694030 409767108 773323850 409732691 899937307 878102364 443625168 35610823 474322753 246020917 63473915 633761706 739893823 146998354 525088833 965545263 741840960 858693999 502169236 613984242 641959259 169115697 4458967 330040107 614218408 260957905 122238582 316809139 710278027 354681148 869678184 42415428 789752936 774982505 580308864 789599875 183482239 285374975 240554845 386229814 545533247 80668582 513333385 149872527 939313150 635832349 561221171 599783871 867812153 306690218 339467034 506392691 37965833 854514844 574183261 45417285 921011238 991471342 402145152 27284007 149441379 37679910 563442627 708002172 315804051 466175094 317214942 992494864 476718685 691293216 932100189 406806337 851034286 724337783 59735342 676689074 54209519 302984261 892095482 907903279 239130304 768151721 527930483 516824926 98201912 528395852 748606489 161579898 286643474 472240078 124657410 187645894 809306239 575551997 894014058 197095384 584403971 484715199 306389225 60429935 496041043 296485107 692329340 927901684 92424934 10328833 559029399 911330369 945361107 892003095 98782650 293201842 718242353 36856384 888230157 285060695 855124809 474025479 631757633 254654451 370362309 665844866 575551665 965906440 499372033 384590395 682762910 745959153 180936797 191388909 884642572 501595372 937349296 226085696 887875926 511498320 666645596 583181437 773937407 844316887 838235334 735139614 772619621 235248222 406518634 310901486 485877913 646051037 242964216 193614670 878914461 883547004 249576080 360196221 726141591 959964383 858892860 52052371 258987911 201908378 695820986 786597183 52574669 302775719 696290304 86148269 168478496 406878205 747486105 786026042 940483564 560071764 498626342 430627003 410663085 718587400 791592042 456546039 645583464 271975580 624129834 75740555 365524553 743019877 140907448 120242635 413536988 959834974 610227245 795689435 76457430 219061666 697320296 556926413 935163745 900459463 252811536 640621686 518054202 309891106 312993040 811267830 982861185 967397123 468601900 519850699 496889311 715134168 675327802 832524080 258615830 7530439 7755291 424299539 871072143 325038077 659441453 360659842 671277100 155409252 455054429 326860146 911131736 890674453 141642064 478497774 635451524 97931347 378832936 426803961 729520995 722055822 296005631 388033416 854071290 565900336 169883610 254048464 622059405 146297137 847800352 761886434 14597294 97038526 737826421 903593803 382758951 626904798 457967977 126483974 492956863 941196529 547906065 552514492 652754767 702794032 743218810 292333699 400179084 295782042 169554616 297301976 366898038 997234511 15179859 317342060 230975585 677341045 104106855 854567674 317726426 807810712 14739178 855972193 500894546 559944947 594888577 663054501 395555049 503695099 577860122 879176932 947048357 926739690 198009072 960015564 102572772 938119904 235095570 836144123 733466273 805285876 139277912 914527132 738644767 136483133 924269839 314894096 4491200 75114669 718514371 987683396 968611784 520299789 338875255 769348795 995250294 26186392 464180246 16251965 355740039 51140569 381964172 211912996 184632722 433946797 920440029 344157852 722118834 96368519 274547783 737881508 941375552 592969635 862680292 301644063 314938306 345900856 891544368 171662540 802389139 493366872 369145104 392975758 734270186 718959505 995802629 564187138 836591298 390465621 251321953 431450122 875831761 191197613 998267016 604899174 855953835 109138577 213465184 850879471 235503977 402643672 333080883 285387909 701095534 194840647 868222656 15173245 581651949 229343646 351601603 315203748 333556870 722035708 531054434 829541261 572783707 683782663 417038926 531371402 990036613 660414072 70957139 65928220 797765565 204939679 32101358 612369686 915650054 636655754 60102605 138788207 272143110 215411536 828237855 908036659 970636493 100304114 389891784 780330748 739908491 186344709 409395325 812905294 34514512 887091285 885052475 995432465 324279153 720494054 993609828 53863960 306995522 941941518 689195824 617058500 822080120 463518261 705377759 367053360 833160428 541388174 786379626 794952720 711393941 193564809 494157810 459723780 903556525 671360081 254667067 145600217 425373023 208641975 327496153 216193955 262462362 985241731 575675766 226092030 652916937 8508511 162417721 8256518 61518805 213798517 985926624 934874538 319765711 585563942 594489841 480854944 628012606 264074118 962111327 831282186 292496997 102407655 426083178 378709568 69227118 403882078 37708676 713955283 234594404 852690073 490520068 133232791 44852996 138322448 386372699 313462022 615155590 176068150 81557107 499501651 386500211 642878843 905407324 819948860 342614972 303413602 273968871 192401260 141629124 818923471 555504418 461411557 456421273 143836401 746605430 229183209 650048374 619386924 956653008 635915716 213484853 266559928 140207830 523743510 725643581 109402403 496786946 461252658 324096845 927148992 788516142 846719557 747214352 293126199 924925474 603684868 743160884 379993388 467238612 737190634 881242059 948663899 184134902 469620177 757328570 551312415 986337349 916133628 660450957 619123372 907224339 375699466 707337111 937588423 35539666 664575488 853346145 717921200 151265534 296589239 181641144 172176690 121729634 909174979 893784868 629860235 11472614 734606015 165037281 734590694 406208270 891563355 709941781 542533652 360128474 761946704 70864184 385165727 271383455 921807587 447916315 997704987 194885442 426233237 610630037 247231708 416093396 22243711 458508209 856140869 314728332 641001818 225205064 806468443 329884396 69343298 933632168 744578664 647236883 461770086 117747299 729298006 777909718 973050617 610339490 370296480 357547770 438075827 651523440 418609846 276310859 71641755 11359819 944742428 839343731 174968215 862164009 403838487 812647177 985630186 960104446 31757720 895798569 939666334 692488398 118474941 537783923 753105259 502721681 540100258 588541902 433896048 859073167 252013728 453482778 608907906 93139241 483866704 501080890 125826726 853362281 935821849 372968631 718037968 917454437 739773502 914601075 616887345 812260405 195522922 916169163 686869683 411380958 668399575 851205195 522708901 831764543 956184997 830644195 591299200 419800993 861001250 674669476 955099804 151411559 210309257 831933657 774391752 836004679 142957382 694415406 926686721 542365364 691070425 139535597 739799430 604844777 316215418 447476658 7052346 55087758 78292069 583292607 341651297 150298551 675437861 721095089 62351898 325162002 677999817 274658489 393434367 743080886 305320756 306373443 326243116 223812551 53189645 54410379 123646056 837169470 95953633 827412915 250291260 390572156 487128247 424573082 100804808 197255729 206722912 895132325 200743670 314952588 828982025 595716773 806544468 305342666 819305884 700968659 709752995 239394923 780321705 571026459 661745956 938577380 218900899 800299632 822572895 960493509 476143079 284926 754750982 15740359 824616951 412496256 835317004 525736796 927690807 187106913 174181338 780392166 515236439 831287765 894843920 904682890 517822586 730048606 142998332 92760803 195572664 912422026 338171551 179824569 760805843 304253045 840202446 165256069 360802356 480296226 606104618 654397841 443060332 959260106 672866904 683907818 812484574 208737376 902136552 283389986 517987853 801525760 685154238 427066349 790033768 990021556 883761468 397847242 835591447 217241775 7377502 765788549 225431131 359815602 492758005 446947491 794774663 193288463 522725650 789702816 521550420 77499455 224521493 686141529 262768440 4146776 740986523 559398074 147353071 822894087 702636293 25230286 804541170 489065424 931635916 721556803 334567437 436970406 296392121 976262680 187882559 940822589 773030860 252435888 218999452 92321398 921426114 267977441 858484812 67454525 159567628 986175084 378398524 736755319 237885825 785866049 79271394 18586007 264681820 332768164 851762504 760231693 502758360 966128178 147013017 238102073 969167560 61310909 910398643 175927213 57139498 455726307 211123374 596218115 117802932 855419147 821271856 425798485 547528789 575474289 22667855 159012930 265336065 694987130 811710841 466790062 745089125 227983790 423145071 759191431 584787700 169689626 650615094 966839238 550538341 141365578 294881224 797603184 325420534 781992076 907334531 371905951 472640701 993132393 397084841 688733734 332673312 743594402 442966893 789012186 723065444 792811329 479615906 355392445 568259740 129075009 779111402 906041919 555779554 117888825 784692160 208276396 103925774 961038122 679412755 767675734 137168977 930598827 795870161 70230141 138355835 605377181 565617324 273562633 368185053 170873142 940422505 295967106 595058444 938206723 380969242 8074262 934703487 57511012 618501763 221006589 76210065 870817149 59307653 420351260 646283042 398273809 158132656 576260460 641356027 781049334 238905091 583049850 280899598 260992944 206867764 579278429 425557933 57934813 531086686 501337920 199336112 548106252 891725329 150427437 818077165 164831335 493948367 468704035 728861704 871575296 155824283 468014811 274751674 549610649 129078242 754143274 249157147 208153939 604133283 163749573 684744546 996923380 905619170 653384666 124649205 386456912 41506944 838914642 763308405 947778539 286283356 629535025 281543734 94192132 305497844 92147206 529719955 405770798 97431051 78139756 550915699 66326054 680660783 192417246 786118728 59897556 921095972 670378128 840826625 487935668 517322532 438839404 606524067 168010368 904158536 630050522 50528016 287842637 991977803 615071765 326083574 268370208 367270193 970694860 521751145 135528030 507953151 420171737 514048712 485479004 751327560 864779438 908333870 10790756 631481015 798185590 328464418 230174153 493536577 549396763 478732047 107724302 684912515 546511353 179912983 695084055 446122740 372398868 977906504 450530479 855107831 468829188 456336959 807549136 537493337 975620701 729158254 301520669 416551768 122161442 922967547 879551014 558299816 757891830 793866896 832430728 854478327 135108750 342820480 362624512 380329999 165988977 47040066 962718839 177041706 676712093 426408834 579067764 172766946 713767482 321929134 969664061 215645709 168124478 697995478 314942189 921116752 195856591 532755613 670100030 555505920 378631972 352935272 761245682 773012981 773639455 395593109 546360513 624756540 635510893 479283234 617541385 352642130 864710160 386945235 1122694 438227879 251439271 495027307 983345099 987992586 8609458 235161246 69445815 250282540 448254811 114854222 257705629 514887567 368918447 245491463 475134132 447964933 394578300 302170261 387324362 52165603 25683712 965223212 619165117 309259401 612235699 171083835 593001391 573676253 294459001 612967151 285941517 116609626 876985255 491724499 126058048 841171687 533594006 606849792 825477496 776551310 265749275 876938629 844753932 320383394 944719686 626710226 422166945 873537870 979165796 919861607 268531471 776860360 729209623 715882344 929619008 27943699 548287647 438112510 137608259 458727880 687613198 255747940 308160456 621859712 888289800 858013546 96470971 799020643 198079602 968061607 813563115 362572151 923071055 439187881 328717485 787248240 78438507 839808006 234580549 259035164 964513087 797942112 480158855 551745957 960534616 584738763 625076901 20433418 626788151 840104420 471370844 805786603 725103890 643351110 168897732 418531309 857419336 601866813 689933355 696081749 99401997 39827740 938925433 69559800 287827690 75916397 490249977 673905649 739554413 169822394 369114320 584115071 920889102 230696039 819252912 385183264 594759074 224382847 600463184 60854476 137194852 85375738 543358941 673595539 31540028 421634488 863285073 168238356 373072857 779254660 690461083 511831545 313818633 750919760 939795022 842961856 80488920 648527985 714526400 650444146 931546642 304054938 292831073 251965398 358936526 125662066 616725362 693903438 420948623 94155096 829351991 733346536 4034906 152571418 971857586 655539541 57578701 687149078 810907729 2027673 779641045 481467305 972959469 707507839 113274923 553558773 503050908 706113930 460533566 170943905 529776709 316132751 866937861 316044327 366458452 434245394 237137515 325387587 183738783 632956110 714303276 288376334 371357663 761362454 897113083 918450471 364378233 857793765 777260609 504328739 799017151 742052743 433249285 320511923 893397462 263595321 552922986 925655108 919654745 319182645 181200223 500217735 346954327 64153860 33620231 187699402 132783572 441652929 647580431 997961124 707604958 778441583 212134960 299893277 617467630 89802570 48298153 142084932 806950035 56948684 779183569 769105395 804934862 927043599 802566392 31851181 615224272 905798721 910126717 492967355 478206603 610372680 250648961 609221783 368272516 12831066 746900583 368236345 265500415 389692334 553197333 568544028 232586734 471844900 226480101 210030081 212777610 457637891 711578235 176611242 166352617 875615800 623300030 222871069 569808982 552565541 46629391 974610380 192910190 118356725 499658120 323262362 634530710 43104552 800288480 895563621 286199106 30303194 272927745 911372652 887184097 557322207 828697398 853226030 294888870 943737170 655097410 201308090 914455629 74837135 39954038 720516042 902639407 272330037 703504507 801962570 199800613 610382660 466592447 689564282 797846995 905236626 506015530 664260326 76735914 204930993 580935115 573098261 646750665 672278044 397177246 451331279 339095743 188166620 168287965 495560633 244083958 220400357 794770186 48586260 213196199 736321811 155703970 683463624 660678998 523880570 569158562 487724981 740160779 813578623 366156448 69117795 36648849 189623154 615867979 316922934 475471857 512859345 553919689 25218509 888137182 670849898 415576424 680267157 959329067 701769093 369576457 929342613 23109150 78908551 375124952 842196030 298306344 316739224 547536974 868197861 227669802 283174318 742999429 811750037 974234283 397053943 886586141 153946107 507903037 714369003 927419883 340287813 280010432 669928758 960863224 360567589 750952790 352143397 690887426 142085402 14617668 459410124 74299134 811250967 263980621 806446478 463420699 588691332 638805730 79110188 592823188 108076756 769292064 147869946 910927155 156859285 707958994 376318686 392716870 596781400 464157717 791181329 849950145 668120667 102983657 256823957 681422156 892820196 870367725 164620644 142471295 5148341 813763957 446544598 5768492 883287685 548172146 451447602 472685668 737705525 610127989 93139048 179157938 248103272 773627182 798877206 232508811 83623341 934026140 731891407 238946034 208675063 75569225 434681233 14235874 861837781 304849519 15782537 370540690 885334682 299228902 688878451 887990111 552026176 159350603 173017903 922224131 876910232 620766137 770399743 980485984 756229706 794275742 600936608 560422142 788377269 914226484 519463988 941807665 347835816 433509150 908324036 220398617 452638305 464895366 350463540 376231044 31118429 984806354 491612358 530647730 728601181 848941225 100462712 324817489 718011815 67396734 706926525 586088100 520926357 483383248 287509050 521933875 112074596 118953327 653066145 288895486 864055443 220425389 447403586 756917543 481945324 846005127 817592179 666085133 820497297 497021127 595487351 211157244 440208879 684147144 446099311 881134032 534275545 811171806 482642269 912990655 370781183 891055858 424000153 370269017 116558166 350016806 648551495 675017276 708346537 293977069 867024225 858297638 141624018 807953748 790868041 703703097 971992608 512040978 172464176 534549673 851634987 449675730 299378946 710937869 946336319 990490519 109719697 11503515 354153678 616242252 131273704 503025249 267264677 900633124 707960724 134892559 64631443 392868954 471483088 264289080 165856108 371689240 119714954 708254580 37116053 158642579 808457183 638029478 166854917 96956066 678329297 68727739 391957867 221149127 351754737 365838676 630073553 498913310 146023955 869943059 253120898 518130905 952244030 758551623 859929088 890485363 997920878 719773765 841495745 409070190 95643433 442591666 463275663 7316800 270287476 810864120 99891451 607009418 908689624 159520789 972754374 8656643 107920534 277341995 715654383 664895192 449997366 955819860 274759683 69778198 845697491 545095975 273536378 755065392 580519926 481211255 899185531 919358839 365054855 418395716 417547878 917106589 190188451 425596157 248722379 270744909 872852602 367317582 663248770 126687429 364726433 688871257 572578699 795416221 264873099 807764517 645979847 771518740 706799061 811608887 171114002 290373755 205649865 851148381 986151313 102922819 612905230 610919071 483915732 646973674 600460600 557206020 402666959 163677473 940322077 275300835 236020103 564307127 407712125 446159079 155624446 98884780 544103396 829698854 925625454 982893902 207350218 986158365 472144986 970510532 106658440 631709020 768279025 441151637 831496259 490885575 715479744 675042352 304243623 528544006 63248092 589952741 759246215 984784176 891557414 500250177 405374077 922078412 662868020 89417831 423481154 195722020 550812075 771941031 816889638 379147004 702397586 117056861 831285416 309128664 525970180 718180152 47957421 843772371 585788120 637078597 78180196 952093861 60487042 360374238 422887320 265698947 810725891 226252777 263292208 946870719 509963647 996622229 778983640 159218416 269405514 273440510 886473521 548339366 272911242 1319335 129433940 127043043 710416838 506669172 305772533 127865176 795958778 847854758 938220735 810228153 108287034 785558968 38941969 758075468 965110571 4084277 705029768 177237110 907500573 5067205 494193583 630158876 790610860 709120916 34406054 824278160 499407110 1698226 417329027 113859088 618033517 558751276 936562948 270416572 730158051 448218550 895938300 796166953 714809632 769334658 978169922 476428387 534557886 80865820 266065494 919519081 97150359 382722489 223956985 442533559 990562646 482670334 615728502 999508317 33448829 449454451 397820708 59180882 193401851 27879765 718459699 853058886 596018134 201549054 647340935 995133028 71070846 523254478 850217046 912141202 502891496 992778157 526257133 857162445 870715470 304937786 240881692 637632921 732526993 268465437 749043179 374782327 366876303 523908598 317954977 670272050 86940324 550092337 28964869 666956341 617483557 899599951 342246264 674153835 857050013 415344680 121962400 458081166 411750772 793810380 725782651 359462080 61228352 598122482 732846821 451606079 895491096 389915808 337205219 368699869 92077627 112576247 153260549 467473251 993435642 930506259 85121478 104249796 493142860 144317624 315714324 605525188 541463884 801207453 974326786 488761634 912947146 218889365 32159615 130257324 231028372 43904847 860907841 277670558 178961670 52814238 834183414 926930328 135978920 833916276 27490192 211697888 123554012 496289905 743372067 797230720 213861193 477915659 131918038 124705426 992555747 962118210 457827257 680823950 203177175 84413364 839389752 519004068 571595729 691834650 954721507 964342662 613512785 109358883 779175433 377127167 919451886 285663031 308971512 851568707 728029277 418216304 682957227 232689512 297838780 580452529 403929163 899254208 972537786 193991213 481339291 456148477 668503247 565020944 321071458 670828776 267032250 919430515 667829685 63152392 984696407 987330379 357021312 106058549 123758574 236771487 980343000 16058476 922920889 704655890 378774539 35020134 987078433 720526219 140108042 558540101 534952614 776135413 705078398 435617722 63007926 586036916 900987861 909040691 337180941 45467126 241633903 792674700 907828512 803534848 736886666 736038114 895164387 976926282 738769003 698099394 730615111 309746057 767455909 92399380 265231393 729186839 635294649 210688891 115533948 593685097 354037517 854685207 254048481 116359093 423306846 827217566 305223304 527033716 53397428 845455512 744898683 235135141 466512393 932611763 972173804 887334754 389698153 392194493 989572959 790683177 53635665 59520694 60047330 379969966 128706206 652083561 955467181 393166170 228676160 47491298 237546237 19035381 290036921 641813663 136192678 859527966 764203129 474787115 550302614 946814815 516066763 119352021 344519611 93004857 326421339 132478423 177902000 671861424 697156085 584478095 426447380 188408812 796056748 655755616 551452815 714824363 76438081 148148878 464519317 321626882 540456594 362980332 640660613 571397540 215011809 810360824 384284339 507360326 851412116 307233683 953875967 26379856 956286025 718460314 341966432 275113124 36183352 623569970 339964645 227808304 788834577 991769183 932997596 827518024 151079973 780978460 483278171 694367375 283120952 477938653 997280917 644020338 265092501 124881385 532304080 523849414 630855877 197929860 932510170 13128707 489578688 72278661 750803738 206598362 378046368 516547781 707266825 747828980 686305196 784631755 792543092 761835700 102183185 662054119 859880901 771388646 124731969 833669609 133317799 638756377 438449836 82278449 903197275 649362267 29900384 276487792 674138095 254272068 557593966 860621183 338785623 284797447 550794054 509736212 352055886 188866892 605327912 67865962 118501925 203405285 605418350 381412072 819089504 287941489 777725181 868177081 434236995 605451871 608224449 4498095 546436238 4856707 219718681 793221895 354890808 32187034 550278601 434436902 613263173 254094841 902700271 380419936 234481687 342284241 235006804 290873803 41267467 772508161 181501807 751969543 727985786 250467319 82144063 505909000 910605898 949072837 473266418 283753306 963744438 897319553 153604823 208346156 729049303 399117124 649525110 962130806 622434204 618838543 653179527 166168251 972146356 519477570 545675612 177707508 877199987 876654147 245739223 319802935 589911490 583359480 331725953 311307278 285668516 510301306 41025480 733900338 80325995 457914565 41950812 935690042 902596923 247874316 115411515 703399917 98030187 643014810 327100534 304170606 40236623 548998068 680410844 356009437 241959451 881109820 312924867 535196757 692904950 805173275 603337376 620206216 388752584 620992923 843941274 109915296 234557081 922677196 167200943 485303616 614107809 361042320 923961248 943715654 778994925 556411649 544171829 180036580 762041626 880362470 944263493 91547624 367613649 814438267 42474572 799102722 458416301 863957879 261435136 427762545 576154435 312895736 94851836 993354018 566126393 107125208 465213003 338128815 262342283 977833616 41775442 529989705 645496229 516950537 214563078 25471657 353413265 694519690 94627077 357009929 997303772 183500646 475755668 265087673 719549357 426523350 376228488 97126697 804461973 258539879 196040743 79030827 870519159 164324355 883290153 604567046 109970339 365570322 959823901 125904828 756737109 410978592 759472970 906765699 372518574 669152821 53436055 746427359 454164028 975986644 348646863 113619022 224881606 370433132 689154533 331972763 343943537 216335790 942075750 26540141 768986244 529329748 943619341 585603946 761859671 538804848 945866399 960546887 400477100 476400084 759664028 273826425 159773677 716978086 35866278 738102465 553101470 174675477 232983213 581961012 968835200 224676952 869040587 808864260 134572122 119764636 807134302 928472180 874342294 612469759 691317643 489251555 29095094 561223425 298533233 837214554 52685810 80749047 91752010 386283858 372394965 3008849 167467501 572215485 437909934 207915524 277515909 591081797 70418602 287137984 348740792 231026999 763813183 836932525 646639876 632599184 884909893 705628218 618319189 742806659 39984648 477974613 16348933 825220390 644042663 343760552 51124532 863409108 564611794 378841395 723264644 387659611 833196176 488496277 29050207 241093050 136805736 816634590 907976357 471254913 957255071 968141113 954503627 932808340 158839027 859418882 591913939 845255682 531888691 5382475 221978471 832549986 879460851 619695592 17379637 388668959 582552267 467631766 694783158 823529352 258465042 281223537 725234731 566996514 4271288 997142072 81416082 233632167 229701495 695103823 119767499 858283928 773650821 923500032 300814700 286640820 396447082 913576423 299210765 318912559 759912587 914182199 391762364 864373790 434444900 382142356 872751150 605723018 127439358 237122830 600252406 433460985 565716008 513586768 370021852 760071950 574004562 265972933 320245037 819788773 883241331 20491040 733422774 15202309 762705314 969819061 528264578 510082469 26672679 137711167 757540343 308877201 434927073 189116838 69173083 804096299 555235668 817560383 751197119 834647087 325260202 160844975 452791316 308449588 488034767 132274695 923567571 680197673 66325820 515037284 874206736 205673727 324539023 523524538 227638630 989207075 443739926 392743167 141477288 951366018 418965165 461023446 376423219 429050189 225871885 225218016 922902824 745487991 420902152 645843854 46632059 326721521 756301799 45945594 897153344 798892191 664060313 420537048 490959090 301272072 731187857 38312390 745297326 986930270 767266475 340448356 18927280 596479574 401073778 610680840 197070702 417886594 127846751 738875033 105369062 298160036 546618425 401185322 537375759 559210372 551938970 189912158 31121881 318619388 533175135 117032732 791579651 397845955 704396321 622695088 343739131 200026851 610350540 863555653 899622505 226390870 662827347 290098696 165823094 258760006 978189666 24524359 507665968 716625016 363434061 128547041 104354638 277413753 738357192 895727149 748378269 281581423 888636975 874754403 115685244 939711735 59262893 335762118 283549117 594269163 361197665 419797477 407250841 510255477 143084053 225859125 806854363 803847263 963385853 836449098 296237130 341810554 818500150 4783101 394528550 197934295 936992408 752910151 921287722 591680574 108067361 397465507 516651846 370543945 612544287 287418695 540922156 148779965 74152460 664998539 369451925 644929449 284258689 953084949 100649437 658169113 143662226 537264885 273444180 272486853 252071258 790300057 213508923 794510054 83741414 617790777 391932201 791474927 23059659 89053129 26679775 336105668 206868033 122277296 958416147 383627768 282522374 594850713 549824863 358962640 961615795 338495755 29504715 5397656 872858518 519579060 332880010 902077378 399345804 397538490 66898989 153493697 69699823 445504152 750560404 314408135 324368391 989210760 122589400 171880203 102264058 699805928 444290639 919201919 916045708 954233239 333041612 794859325 83651088 567124325 716490940 224793755 794271566 843916462 493292801 707518789 551966533 893114983 686181885 927253745 179648207 178764788 900504227 615002695 76670551 569071483 206764815 635178138 24670868 62880595 970232496 527386724 273564568 842537881 223170688 979974158 508974487 914452153 212538170 914210663 581508624 397135029 135470475 309253766 854229083 786623711 138153781 167703660 615449690 947655609 201142156 62908805 970450772 202893129 626671454 965154329 346186796 195505702 403701988 117360132 736994031 736341523 809305183 32137983 86921885 212244693 671552926 521194750 16975837 524339656 429233548 906626842 248073403 177355540 226766846 934371676 359417165 217700681 659788358 504617128 181546589 230037784 398128342 608140819 847762608 234820979 534790064 627124338 261133073 150605816 789088551 879575243 551974614 430376848 64314018 501413868 977396488 895107412 811988632 980389538 140702089 172888011 580847649 379783254 995784277 192334229 413564065 267080456 211190466 875806912 688978971 41805511 151923676 690527386 195553727 399000630 995026195 919335197 102387268 238639332 650994316 275410087 830572794 871460641 693477657 912202819 309581950 631604495 103418252 125109918 207780596 814587705 483623186 674275862 999138409 855403322 256366627 411630533 448973646 802162781 36583558 63743814 747912550 752309855 959654602 816190263 764016936 536446893 88534807 377398009 836629618 475857851 666793136 24684948 381104736 502664398 882069108 945737994 89475085 926369306 793780457 304152543 607478779 722263060 231337355 826040779 786047239 526814920 889288065 692494028 572168434 575061195 811528919 558211478 234665624 140652510 812031884 17755449 345783660 14814202 756201396 41497520 783094160 328288660 712895113 776639640 203866646 618380189 642205557 44117504 457538274 63921746 681967459 385759201 695666265 761158500 101975219 223262423 801743118 967501242 325343330 107969669 594592417 767080466 701416817 444888924 874788740 744782576 329214987 388580934 586112751 274075830 824721834 576352690 977797190 427225699 491292432 547044671 568528638 927803957 672385335 536275260 545540297 101304660 346095986 777125742 510619362 889097865 902270552 347826321 702230648 600846179 662803365 145471739 613240772 655554045 345060540 684647972 960475217 887692042 946581605 442259547 242959454 595313384 555223939 750908564 782703650 12794978 550329387 65979061 896196372 254370919 240918208 443831420 513785711 171720502 514449845 468612274 376052724 567647399 134721334 969733852 291289433 370369659 854557967 39485757 468814193 118932221 98038663 409444636 160984313 567020061 608183235 254573849 353544865 953682086 905498463 153443403 586039789 719167376 131023109 956430510 552646606 359006094 21519317 698576458 832203168 555130893 530231066 638331019 43735807 998730481 148169791 767345452 568502850 809635396 938256342 670035105 590514181 722489477 888037606 605079578 441151904 726526405 216852811 492564001 69154649 375257123 4521098 738065198 162608879 491218816 44350446 183997289 570064651 913279103 828205218 492057322 985746114 246578052 876241747 870701821 612006977 306010405 29674475 372434268 71265987 482684804 39479738 419287490 866222190 747876856 302577507 320470646 513512520 977767833 134804564 820718066 335974045 366255790 144002649 954685960 222818260 72439292 247658000 407506486 200324176 939573395 735101679 215434583 432618663 577470118 488992511 137244766 142310879 581143575 520296646 502442896 458369094 424224804 246291055 52529691 219287238 955250571 871569170 829709128 284989165 491435166 534752074 205586995 628166970 757223244 855568421 364219131 17688410 607662790 873249791 30319933 790536103 575684769 422130541 140384261 713446371 23097418 911280853 892331383 45611210 175096995 865591728 689599330 92711872 139580487 63314811 316449155 719945062 28353794 407494360 204048473 655237010 552000140 765550332 52666404 188050691 310698914 970174630 859297700 98174824 636454889 719233926 592312634 270483394 263044223 635646702 29944106 803542862 910223352 431878933 72440417 759633144 602635755 94426706 13167803 345198342 148683030 868860609 379945770 119716917 15099093 249869469 147999660 33745538 486557087 663361982 605201477 85119806 997435584 541980547 552405373 75433816 605843814 764930420 584959251 795101025 855993808 773066534 383706182 524364665 628279748 39348407 282573572 238301617 381470847 883947334 910671432 556277933 97624585 129053231 870648396 91036156 409819906 729348497 595210184 870523193 661421872 82838032 794779547 928331099 320529571 677882643 635229520 150889628 960861405 394489382 17857161 735748523 346328051 512560778 947571199 143535767 768546749 836071236 126682850 734780514 839635586 645357254 522099822 184666693 842602277 599206175 736022955 90118153 602034915 696292602 903001184 126778263 391014176 455026422 285271274 361646596 770260207 151082273 880146012 476054720 421209769 664485140 915454550 830091930 269352909 743611818 446555795 169912523 590711207 771595125 708555669 848189046 359045650 727180526 223718661 227669164 767830282 308669210 130427301 956626265 650445896 962895234 839696019 401213043 63328140 79327064 281141816 435464461 683399562 925177507 800793263 225141213 193794747 641310780 482772208 306699189 183731892 304582235 374898955 919322814 945294529 541588006 561960471 588733832 650502929 162076025 496739237 110399815 561566463 422943529 261286063 597862192 73802113 616680075 844300820 420580975 436546024 531951873 930982829 582010463 958954600 903704820 212253423 208055892 900140575 513120144 155315611 859486300 280932701 465788789 642061725 168524005 411184390 656766473 110006010 146753212 641887512 51485220 92253783 872825442 427250192 947502456 704557774 579093772 459988729 74134139 412950778 292388577 42071508 475663412 504435363 964553244 256747488 725467013 90689848 21891820 324430124 381510933 372696897 658219697 225958541 121271478 79467489 193706108 562811204 939379474 692115694 752151926 451754237 787326818 220959879 125932245 734869570 198358852 963297551 248097208 631158311 506847728 25117786 543946077 822365136 262129679 567901751 215684071 642805492 863266583 35526108 639954998 701857427 528090978 97885732 121947918 202107305 284810080 231741916 829378492 926093332 967048442 404478790 601937325 486613332 569359978 675763969 331331907 716323116 400266481 211905887 464317995 869190237 897260376 193487706 234019409 743798453 740148743 547551409 698930492 467302213 604064215 813576556 645161735 446535512 630914783 447797176 292829532 144524582 74714872 826083114 669766903 155074441 397790952 15510268 172188817 787015257 535285076 6978002 593592727 819419935 234009317 980096949 496231996 854220530 920559142 970328137 105921380 32244154 35772525 400316597 981932569 194020557 261615346 172514734 930502398 903326334 761559827 978638037 268360531 678771311 14203920 82024691 466571859 156505320 535502813 776216382 856208348 73948404 367822483 657023639 37047438 227318939 339001006 981565922 943018352 440757233 364741711 823357827 822123975 898027327 337224598 831103340 647119791 592602179 351526279 577351167 568530576 755855274 479574171 42993773 934379997 750068783 775539746 921339751 766502427 363512052 215575384 406770872 767614976 569300276 631275490 71477436 492189346 85633456 914496783 225913798 953716042 539613042 599780239 939496137 241078139 964715060 44477304 568476393 122793777 760183369 826481558 842345992 702580078 487609923 912134404 900336132 646784419 806196179 331776862 947604839 757729425 137501239 695247028 21718275 306164400 213673437 792501158 675534240 319140607 305380331 143144981 67794622 887328398 870424293 410299570 250384161 529193015 851131617 513887084 158475814 440017451 704200082 464653494 389506347 480738978 601754213 678195009 324882584 945231297 928237544 263151107 115782503 164981391 408816674 633963041 954952108 313375277 179413851 934757560 214839856 866421069 670316083 664208409 3656670 760271861 200553569 33837697 280938545 515725346 965851169 35846600 859220660 892391025 168742333 874021363 366904110 312725301 726631637 67299256 630024659 997203829 519574791 732127438 126647791 628689243 970100949 649902103 644449784 227931275 142252807 790174922 750239680 695672471 304645307 745681600 122525872 996304916 920654531 444712016 248438502 798536426 224573536 58634472 851705147 533043754 682315943 579816555 119811253 977119300 461744246 122474310 126253664 642879604 222483743 939985514 641337479 856219196 688320384 93173540 384195256 18173717 488368992 407918672 194307819 806583278 334442537 924774016 367781903 503242422 120647744 919622673 230553369 826526483 671395769 415967027 237544301 88080711 296358021 755975980 158470676 764257468 874307103 681948209 463298403 762374113 111212709 893588765 683658590 109349591 273983407 133117084 404736306 27605276 665649924 360220987 577555777 275960249 231160935 82045634 259819250 721974649 474132307 943442031 672191807 726482687 807839377 306761584 45763929 283722614 657900616 653901323 446422860 400430700 394964441 254791712 803715862 626921137 749505554 734941762 633587334 123503594 886466139 980915968 21293736 942531406 487331837 842726061 775408602 313968769 209613667 131319292 21707131 810711584 741063204 94946578 789739830 20757384 286763904 333754221 55290707 746859826 503037376 723531965 518406890 844971870 105929926 568079223 627499170 130588075 335253540 519100751 371162480 79590631 573352784 63851581 135948477 852647015 957706845 170844072 88546909 900043951 412204100 166691228 447031018 266198188 932779710 977061408 712399267 140937314 81300546 992817555 305787884 999760886 505459290 242894959 223413345 687233496 430759957 414265011 940739011 351573093 244879119 280008221 688610711 473794948 340562594 448587485 670158789 56601789 954608119 472807599 322126225 496478872 214099960 992857983 639578228 713077253 88080044 621403362 624742519 899682772 205687485 680958129 806140705 306959807 519674417 851577505 271177743 984269503 63350922 329929452 430758467 968679421 593319431 28562591 455199207 440537423 298065435 564882004 167764729 195626802 515310012 112659863 807842013 106782335 909556503 996784250 996097974 146496328 422187627 782152320 594973410 369031612 47593384 329073088 184975401 359478631 812434719 921201971 603094454 148446007 185054616 735539489 668583885 893574088 235205554 837838731 766324853 536462671 62664832 985416680 400631530 11474384 101937034 730531127 849276672 913312218 157089219 274618304 526120665 556737163 118798319 683856630 787114349 363968750 22098439 742943566 136928395 346001841 465820510 838741472 786843746 971811379 488179945 782513930 207922414 565378923 952429213 277001307 587304969 338113216 292806954 960206017 642206947 13221351 367399074 909601664 664180174 115147533 786755950 684526174 912014608 305123199 667804846 923689231 212057009 663418173 110674854 854842638 39572496 206260414 667898263 391702511 117979448 709133793 783308380 699875691 131949363 330726262 136955855 462203187 714392646 95709231 471271390 722970401 401825319 335552736 327278260 191547336 54331678 647285097 695486043 695908706 187395810 998651649 466036947 730600300 629154383 95094576 392985032 708468073 568931828 237511259 685276497 214661033 522162723 319441436 382751629 671060576 81574019 364537930 969941018 287437790 978573532 901352881 4404697 591598709 68336010 48350355 799177501 622041696 322372620 101141313 599802424 954755595 502225843 414637630 504051730 790945063 364070962 561327603 356349874 135184049 964165986 710367134 277283393 545920956 245918656 942393724 114256782 743143395 583468211 358809943 517628863 602055158 522004945 51619470 263025192 401341496 769077774 589375475 839697837 141398997 624134001 194028220 68618043 53535337 145127117 483930251 158712274 429687840 390515857 809427670 161825310 143247047 680635831 904459235 782700434 681415247 211342528 974186371 533083279 772501673 15469292 709363326 797356724 796355520 677648803 159298255 103077087 849302652 784795127 688463824 260597015 881427197 663924699 608122747 653852788 142529932 350654106 451735017 481552187 869697231 562183137 159576562 751923583 339419810 153616628 157638934 131083927 704347694 322486506 627544320 344400765 64167045 272611233 171943442 163501835 605458825 933979890 840832262 862463067 882445870 819867421 507824507 275425927 464403447 502288557 641668533 996177344 38486321 884516174 277808822 405732326 791261527 761709934 653316226 312126109 285243721 121407559 997070245 367697156 426810915 68566733 128692938 706661993 32142468 568288154 639320002 606998068 765581234 2758222 369297554 56068918 446832367 883596851 88670545 41653603 630598325 151727525 756780406 175254793 391036545 621849813 799488245 598551955 748304085 194309535 279233489 270484553 22597423 307614282 469085425 300428158 740135977 91635595 75641940 606872261 718235453 936215470 293019214 716548891 111952606 291196586 707664270 252671193 191598452 840859399 569501377 28504795 671523451 617083164 540468643 794310166 529574461 362788704 65807228 403967979 582288469 838733940 757770562 406624507 580205020 987932916 961286501 345135355 424489508 674568437 994529875 386431327 336949387 255709367 185512578 392402658 971608518 71309159 679402921 828733539 369390390 185238377 301849844 299291382 634844099 142448785 291444327 942441938 128924636 506692858 104530608 499270612 527623637 322097076 718944992 405086751 276296106 307956923 82321512 833464835 478309240 832139727 252442837 977901869 548568236 959765727 686144571 229157649 750673653 746005118 444758280 745950177 850440034 924127775 305540673 553699858 486496185 447493375 103456924 138235644 318174901 374583582 435240855 229937028 449101953 872983122 358650288 521714592 869871791 665449989 966183721 971948743 796549159 768235297 310368960 495264769 934225929 804937790 353234088 310914411 893786642 278248620 48787969 619040074 850585288 924713710 98740416 267883967 881456779 801070521 284927981 867797518 780573097 134825527 369483823 573841135 886143029 725905174 93884498 459819167 659575122 873212734 405087299 698000982 953910446 490351541 683557331 643848826 263482104 76376100 170188326 304479592 616155377 322589961 623877595 548221709 965550705 953846542 460125269 450974249 288805107 48458301 470937677 377201975 479277404 912371489 381884638 960154662 907605182 307363433 22718220 509456429 459603381 234341781 678638008 794937808 111116113 734580701 451102099 208592704 492072865 857631778 511244564 445460108 125203280 330392758 557255863 534671159 826987185 464336992 876428301 961952335 363877642 539240595 22056354 947695874 662157813 794010979 984230874 135800896 495284423 266527834 640629845 51660440 664657641 35009647 956073405 56143168 259025673 741348376 548065880 754602602 639791864 254544942 649697644 849388836 345062789 516012936 448228140 810344610 637656851 100363524 542805183 159282392 408120966 925736862 150645049 709156387 439837684 53594106 8204975 592954942 287944210 662414722 993604935 365628035 362892200 989220359 697639789 767770239 560768662 826610721 736827232 171109587 919237923 88073513 468057737 13196339 598837155 718428647 700883213 27021285 532728339 139743398 418561673 211755537 922331126 686936165 705646224 456430234 33085202 296361262 853694900 833926975 57179371 303097517 232476567 562182483 612787665 234506059 385933025 788113270 404180220 603537295 887230018 484290571 628066908 585247520 861143871 967743385 830023443 904400710 955860675 357844028 135756542 130584140 97278872 638687222 120691365 52237261 941025752 947943112 283617059 277254266 218423541 102557154 946180123 26131578 404771647 880423564 405133929 486740624 757024175 161090767 600727858 891488295 262721324 496619847 824434431 560908887 983853194 426356819 400808678 982638405 404032027 245774431 572999975 687894844 459211265 524860518 501025763 134594863 920210987 498104608 548115920 131328750 676716079 983277348 849804634 778833028 417797795 849908599 24507224 840905223 353849777 159447030 43764082 673654689 989274689 197753694 130344841 251317220 400477144 810687591 339191615 978987694 517574905 497873449 933965484 644035818 603664675 503325053 632890786 364538309 631792211 610233306 158842453 995265188 843013260 868573781 190306954 344429266 978924387 453262010 775145121 296024235 811285968 135206470 648553156 63995849 562940401 28815699 502063644 337472674 797527722 429306671 860915995 85862838 863011906 178295699 924321476 170664788 905474065 435843058 812745841 15363162 434600184 845544719 648729089 461700864 218151805 411306073 469836188 549029407 270073081 287832763 181101473 349429419 581350565 315418310 54029547 180321818 513744824 840285338 168445560 832756627 985588601 643043458 233741285 194944230 641740456 921677445 295180074 428376328 788709328 706499446 420318068 134150582 146291896 572986424 991566355 746320450 985931217 770802266 384383103 161936611 663882041 975052358 552173734 347810481 199589826 277576960 455633918 214389483 135898023 300599523 714282960 129750853 543457141 733138311 326826754 192092174 175579764 906537602 729203268 944299895 365213286 429776350 172254174 503571473 362661669 78724546 131831548 793557169 223253214 625033879 589972588 110437102 374879303 521055992 29717824 664883563 989754842 875540243 253658194 613103092 888143770 352646491 602315974 310178021 118704635 988538121 456711357 428659660 474155391 979746282 18065058 165341408 903398725 861622558 725197386 723126418 704686456 950114664 55869529 515594508 569354066 373838120 556394076 434816235 253898500 962588748 236206911 310724345 927494750 133259382 635489851 385073678 408391704 579278170 687239424 176468129 676295029 670403312 155183204 65792969 936019931 306188358 72303914 505972154 282231228 520480674 583279338 393184577 687980199 663743052 22304583 694062521 677624565 359979538 565860560 888553627 12437003 8518528 58158303 635644771 18607469 564961115 998002165 160032988 743892724 314230006 474617918 323227839 724348902 637086740 980573737 990780062 754071134 416169974 814182837 928010608 770747858 487745740 273901390 169596259 264647742 534355628 800541260 200463125 308609517 143045630 685523241 133349545 438563601 755293143 241502299 29994437 779867664 689614535 794308156 202741450 928510342 674662929 797791171 513594206 385058574 376679046 683259333 411800225 25892194 777613872 694815453 188774812 274499861 158057676 530597433 650641930 357947547 879678892 643213673 268179925 703716862 83694932 596551929 751793203 968564766 65509649 838364561 138031479 29287980 34562326 570365679 465569602 514249325 349273513 524368886 237705464 749189437 811970842 643081742 310426866 903022657 461845780 230791088 422884257 607227 886299834 535060593 529151670 225266335 670095066 566739070 35225638 335969911 730299166 297122039 123358195 731987890 627604862 882768511 368752262 121873597 253344008 506103071 168996261 379671972 678879372 760971563 775088978 30978427 970923960 311340755 33263253 804358566 400302872 906201008 172845252 678652918 9034415 925417859 247592664 504962666 86946573 87043383 615003276 576854815 313213934 394650831 907835333 22820621 377528268 897402931 573488406 284254715 226017067 403678549 431714785 381591830 908330803 80585576 293129747 812474695 145283481 686913730 896889133 70513501 472038892 233089128 586433752 200293080 752671850 25691389 51883486 161775741 139596301 399804798 353822983 671700498 14824518 792551170 1760499 57815335 563219622 243104387 227823423 316156376 88000821 192987440 991627813 883850041 106324874 413883793 774581389 120625107 189981022 261146402 802743960 364901651 352717642 778665094 133951703 33116176 451374909 345313510 723516625 152459390 129347828 788984176 81819137 177231284 315866384 874248344 549768365 706135345 753570771 685137575 287296431 476197216 341975628 364693960 40924959 233435832 582735374 646798157 683783189 603587437 300594754 723948996 132090219 17967042 556783082 920720032 19660039 844862378 161809820 518387365 301096557 419493214 796770721 484640994 212972689 960988155 291926360 870431718 249372939 27910933 473530717 284262864 764832943 100473048 82094420 879120010 733227455 182465546 877960906 429734861 231949884 407242619 448125255 14998011 657709094 590642995 620251680 632031494 510755393 10321486 571488134 470016851 402347161 388702143 70274101 413452515 368490547 278433782 790181632 716405095 205777691 58456287 112806466 49447985 27707617 522852259 979870115 802648153 468633459 56093943 835705060 981662515 663513313 316168614 34816231 334642385 258912410 282016524 635003155 480152315 40815433 854038351 335688287 764769387 722039051 254730259 808737303 518129561 525531032 964684876 158814776 395289045 873673173 799432894 665743843 558098853 730710418 483914242 429269795 792488126 40593559 318050750 894226477 447753376 753646786 470319361 551338749 74538520 245144614 680646957 812229780 53820958 176035166 804450921 563497807 233485219 283931772 170799321 194042885 318447486 200704148 168852751 964123103 46045536 290608686 402035205 743595929 436157398 632258545 203114889 34545034 228013926 398851392 65333032 439389886 408789470 183681992 994793500 102532230 810913151 403166981 223661214 702407775 375307670 94643890 809879689 696458468 834057737 127738062 880114267 198210696 81568780 838891386 190828446 876544263 658063933 907060064 650077492 592228171 389516736 557518337 265474836 701929662 923840255 84281680 150885473 681854192 187991696 422907069 148759851 138481837 754916754 974638647 663504818 299998527 279381981 324343771 717447793 415388979 826731595 859894031 628946211 819760287 366607093 463997957 672706035 989590777 715847512 32166225 72076660 892352594 355385597 682092967 15976456 503192376 879076280 485628030 385592771 552767385 850476673 959062590 161617694 157223468 432666999 248104942 280458746 806011811 225321760 236528622 383770088 837440552 716842953 605489863 881348864 484991366 214976656 994219245 505579973 77081265 912827095 168137146 506554626 458823939 961313685 856836014 447889950 418155208 910025142 291736787 827974341 917966481 607412773 370057045 705140985 123509686 419379695 469976933 396624157 473421607 969959001 609578506 889874932 889997160 644795724 783137912 703103380 412677832 220643328 416241417 547467670 989175115 546654118 147194447 377948944 155505900 571372069 563873254 349364020 652186636 558775162 806595546 236830582 169813549 525849266 630525850 36397612 956527494 432887151 397295281 117851469 292936482 624963335 614877330 247121562 259236275 356428173 525956963 3359618 487528613 813801667 599840101 696172705 342657819 990924812 606958284 454603726 119085704 943695698 342232820 571572392 225870497 970229419 137426749 973678128 397883043 905649456 576557703 552530715 980297905 415910416 823391677 441363673 748795621 593962145 109309895 6891867 550519125 570169179 97041595 524729351 48078561 792395583 390736950 285976634 791659770 523762631 374027974 408339006 16972788 510489087 298859584 6370040 643919109 439050286 104175189 914737260 961572976 143506693 829353311 867447984 66980694 818896585 978528885 197908705 443300793 567342803 538035516 676292339 601141564 311474151 901131520 873728324 410522589 19186919 748703336 375338336 623458075 243938047 182703682 469388911 111345142 664295163 699141191 6745943 102884183 79678622 182971587 638352473 112061504 86063555 586620292 587707922 244053016 548886932 131411932 577635778 262196609 345692054 325075263 910693596 407395658 629408888 645130450 818414537 475113592 795495434 277577763 794716910 13837964 215954093 691276483 741707482 721956341 471250218 787215780 777117122 853598716 256255876 834863011 795270612 782419228 388040901 945753451 710929756 980343890 562480303 705351094 836664400 108055749 518679220 987328449 59412590 636516924 308470695 675183472 30934693 983806042 854716215 113731646 464300485 198235713 129645838 969414116 675165699 609609883 666693249 255894121 146950497 386406719 890780014 14781666 933797415 752098377 990036893 632908487 956672364 858349020 66577270 11332576 712256764 598124545 261524675 381092978 205605973 655668668 104919495 875881113 375827449 926377759 553414519 945692805 761246941 914085708 412066791 279375736 512679470 876013103 791207633 532770554 567447474 356583785 326956553 653897586 946201625 907845416 231855516 147126475 522664237 893381604 925238528 376207235 960361349 539744676 67387427 351411337 666098160 129587153 764414181 201412875 652826602 54487613 40922195 758317966 231127998 337538833 382011277 791293002 95983802 264559771 836212339 53246020 971764828 938995406 366750005 628057237 252790472 77386104 525877007 616765152 621850453 118177808 520657429 439974560 657666173 421614023 507207318 807704193 341429809 674207977 895696673 765210803 287473991 883212799 249907786 227061125 839091435 483768303 560217988 337187349 675538217 250729587 477188612 577107452 139613694 529489459 338710585 23155548 116444005 861944733 663547221 858669611 552186511 771331890 405909312 195259414 111701153 460799114 321074492 464836321 123278831 927854281 692547745 132730568 910957780 807403123 228678930 682456909 275317269 38753309 378291560 415249785 129992955 503514025 835665783 741811223 460182559 924900371 247753910 910775727 930722961 533575108 161194702 403470061 463830607 582498094 965319891 65620204 27542854 590076929 821260193 199534295 21564883 83977334 641119862 477608325 452093919 731790674 509465781 651163418 461228752 48906013 980228375 784794494 510986088 361459665 571154389 978132814 958138839 71840962 694752251 414656991 262151398 569701994 288455281 754221547 65853252 283718869 419432693 96923302 581825454 769657200 669606582 567007554 158442301 603914479 789229189 566549057 826726757 845464669 625029076 718868538 799676512 28608030 429712850 427651344 620983189 7433013 246812877 900406324 495822991 541478325 871916294 86584069 186262973 900223930 261774483 434823291 351123370 543805362 214272622 344042011 311347589 182553960 975603397 234864752 115358243 723972763 597434314 69902533 654798092 946517771 171577188 718992041 348668874 448212111 394638749 830971003 394615213 207775096 891068562 585875440 295858328 875158456 275646359 949898829 24232436 784120978 935566891 984575946 781909324 362149662 21926293 303253726 614077564 167588185 537016017 805540620 796718036 233145082 578312000 930629720 560600057 43239682 112034512 331134142 828553751 489168603 946985614 274505756 912834098 847817693 570630633 938211711 378440354 883393907 432854846 608238636 181777761 969014941 95451101 920960531 331170708 208477720 434253766 698300690 799341518 259229176 368751852 623126749 970640035 10444940 733529523 468917044 106421557 214396264 33831664 96466666 484303749 992590195 714839403 184310559 5853680 335134725 519253458 724882098 526529057 805278668 819167950 502862445 543139352 195796187 863452470 775914714 509387281 876208848 62090238 577377430 17974468 943310916 475706253 463874673 669736243 905046897 22256289 466600523 32263184 535203357 6995009 12343429 575998691 333990573 574402006 259076319 621498939 501857886 648564889 15573698 232630190 855401076 550617905 533068305 76849760 111536477 856753914 341934596 324963542 813714036 520044918 156185945 428021089 308231309 734245208 92252080 591756793 172068590 310532750 685166167 41405718 24572900 840396034 89749560 22454185 785805381 947301483 146318247 71822316 381622033 15921859 232504085 817244121 909803348 683402211 222601032 61047321 415545361 75932020 908703240 878507701 83657817 201698460 382426913 227774951 737235080 630729594 962787218 628782233 339382145 689240897 501630858 994730247 607195532 680810875 870311402 424146635 936538429 625230066 889743787 676116796 610716468 628036151 282106638 100648895 468130143 997453574 838489124 436286489 216232091 55308955 931764736 967784844 581899884 197234886 327249669 288103384 849815636 375456946 992773093 454902799 998505450 172130798 649947987 203854671 678749651 720006844 342049793 884235550 165857098 218225892 587066051 653994712 713202922 387926253 97730978 152394725 299108797 388619998 245660467 923446302 284236836 722943337 22139835 921712119 371360068 501837922 181991894 849671389 588878834 666271485 33187354 35535747 730305724 974774174 459139345 590015240 144220251 665703022 779397254 732778716 730853112 610516256 316408350 112534961 498365640 937200847 473964047 279234546 364643878 372074478 519585235 936931395 584013855 240070183 669260515 732374884 685207222 634695405 155610977 171618298 689356123 660057079 748527403 629338877 321306369 961951464 914904108 839459277 504314562 842838475 332290157 152605474 597691288 820953270 388290550 163743451 781024715 735268788 717955024 711764839 791447244 970368671 645750580 270994560 268542529 438704746 272606506 805250889 225066184 387679536 101479460 683323480 974724900 621667683 858878608 298196430 688505110 732419490 508644395 508234381 807806748 342410271 767489992 856422116 151497321 923962087 332725268 313889137 199383699 837666212 118980118 788432411 951977328 840566715 683611653 832553869 867226212 987071457 288218949 625129032 418011901 187483022 348222280 236964968 235121571 911074226 858396139 728579828 728720199 177862260 868664552 347166321 721642130 797426675 885459170 952599337 25331060 761509898 790424135 139372440 915547814 53292309 103464758 729379775 962109453 312082964 696909091 380440416 220049692 83826402 362999227 143334066 269309161 562496475 868610728 71534651 666251285 708659533 872363068 229546913 476281912 82740088 177362951 736728481 986057844 752450696 746029192 812618455 749675404 533047186 169306422 19840250 563245556 390157694 951885316 885645969 684736454 761558665 821416391 533995915 285347719 463966652 712131386 480777930 527476959 177664191 364408998 790253439 32950066 523580730 991882776 842922264 842172891 374036718 387165248 832948658 504246807 9015396 187861616 858788295 954162562 730492675 844958138 656831511 235049095 294881634 607405953 62837581 582612544 669055373 390089555 38943979 973124238 473642040 362446153 422190450 799403183 877565920 199123824 768790043 708923105 940286680 35718333 454106655 94655864 140726998 983922539 453553309 252362338 290376363 53474298 594314457 317682306 227473766 770058842 486127552 29960878 598908008 353050960 519574436 701576974 279720313 657569962 933577032 900105829 561336658 809178871 965130767 178744711 688819457 344619515 958644959 575965452 581011805 413265584 312882285 426765922 45198275 633306377 29617867 286063365 624700698 678862003 706309513 685070838 638628655 759877285 439590271 706858258 606559122 870384356 66466030 160420607 728589676 954321405 34282580 205984345 19497239 586791031 474984821 756823873 408385940 444366253 931919693 676231904 287310984 742862488 731022172 328286582 361664370 173674177 277183368 410492733 481685246 770432765 365662679 534439702 392774959 435986450 801795750 239917452 583829832 719513520 983187301 59161313 609475881 112400560 824601564 303352369 832990939 696991728 836661219 297175120 806916228 453973267 744945648 266638585 347902830 59400877 572709744 655438605 166981089 907979997 953896822 678761671 53621428 279056351 678807616 983448500 925510372 855009620 797261962 941570454 867530516 617564943 19777493 160956639 200918283 82988125 142615657 175056063 516721258 198896173 135597762 203858565 997588504 897572441 76274264 568739409 975622202 528907725 964874810 934171460 304793876 562230241 690267033 673620416 358860566 123068704 383841522 244476971 587398457 754416362 72542845 737194405 751843898 455520536 884225093 378508685 95889146 919246906 895089475 990736242 480162534 132193019 543592938 957016798 397151359 452680047 414637966 987190769 125619720 918300755 235609424 739856661 851121949 277566292 835817311 199086419 480340104 465191663 614038196 520378568 595479014 965947507 960883174 990990949 492220271 211325610 754798837 816562211 167096409 349658200 884408268 882263 988319350 38953412 416886185 572486165 351147780 411622816 497794637 598551798 223562124 170029640 613119767 245722316 859282692 347720736 121199099 553854103 535958229 768209477 258255628 263217175 39437950 830115978 628082681 222668492 461780884 708962658 52129280 79739498 763670063 984629636 374026032 646400720 977709293 542105373 262635078 917691413 854001930 598813085 722580400 216176083 796299947 786067074 884629115 766317709 636768067 863403521 377608592 54108818 200714408 877638963 479312146 740845482 671805446 767650931 348933334 222806293 153576817 474591573 43344885 221785741 629186944 830611141 927761287 900590874 106949829 312117911 424449660 713043931 777178027 521262993 433785830 114613801 544728284 26885180 440433983 391872985 418763177 458696799 333803848 724102413 583190720 432044043 294375045 632201939 871555947 391336458 370622153 742563741 57394215 943134895 496664331 360957891 826418150 188988964 914851339 576416559 970844342 274168298 77619033 646543097 370101949 147925626 275168301 328214742 51166720 707473911 12122746 531556335 954030864 142087578 42944412 458542131 777975680 445208998 920437654 963075657 188550200 915361231 422688304 795779118 371061079 6089472 641697794 838595178 855538040 481903462 230015867 741628296 325304426 863075117 565727200 630707641 329114059 321612612 262748071 931362537 891898767 818418266 710077916 987599167 644710530 769267526 809736592 146469662 86845081 598867786 868418790 901352040 755094048 937475467 92230556 615041719 647231339 977509352 962120564 457350103 951024139 754834879 946362719 149346514 102210862 373227597 624317048 246528410 472409324 633483387 19871861 458797752 882407776 235128215 29431111 697805771 653854920 648848663 632439914 110310848 286907276 921722259 703631382 807450952 102202390 180487515 833023003 885967290 719449177 398463527 703642574 578132056 598721591 424203404 811778611 10632285 592547798 828918382 986988686 405608483 663638576 173779391 372795159 541659602 613607193 983820771 631049915 979252780 169839878 266958953 405363890 917541616 488205350 843010179 97680390 804741172 825708072 771222297 863704215 253331560 971132058 417119789 27155868 668171989 86972033 914632544 617467618 57252913 876012282 162399285 852937554 373089232 62393976 490457833 243724009 498128062 256808991 152374076 366377552 964619727 28437558 691064122 856465969 978458426 191422579 173063649 479298418 315659334 444610745 594999071 352759526 528196539 704366999 100747755 391242838 976210074 182792220 151933590 766353139 940496790 164543849 818382637 460648431 728946764 982616695 425968356 212986667 692870565 911219943 601902175 931368751 653248059 867757659 707263867 390301985 644127329 974449559 72219503 229798672 445527768 481831268 34954852 847902628 652002566 207468365 64538606 425165166 276533678 632737733 586395303 853413279 374348915 497065089 418857855 256399490 518387932 221487632 496484122 550143719 636179017 208677884 216555099 905179929 463507581 647679472 261919953 916125392 423500311 568061258 909911788 288166985 306135040 632462261 818879566 648940083 796812 911198070 207234719 299676930 779221553 550810182 585033434 987183691 69090484 538554126 158881449 62308564 272693171 425207195 162596940 148699124 830395009 44375993 120192048 33383882 620914303 419769706 594088586 793038718 36499968 848163386 407586362 192567680 265642846 857325701 172218598 498739851 313848663 315465269 725767154 679693268 297177439 445355426 188589008 721583712 931511679 700239719 386524321 312181833 917405434 37096438 295823398 129787772 158673953 729594057 689496193 842958739 715344164 473546268 735375708 895252686 687092876 573854183 656592488 675298610 220305201 954787320 646732438 254880933 369508574 126377025 709907471 83472564 684394411 944677298 834561633 189102641 617043954 16368787 330026662 413410824 657544570 990050879 882955235 403963243 929965150 161603196 920810556 208019074 291132586 198754667 693464705 79393644 816969643 883964447 810686883 258858871 918823893 331749988 38087088 213355372 133546660 576679518 830205941 243392690 301715102 469830032 196321131 545668129 78796653 141623369 946647336 689288940 553305819 804004244 146444478 986493783 205188895 604192682 594118143 578761418 313247027 206468746 474329 496070226 80318957 125853089 960628908 823760754 421965273 213455807 712336345 518890359 499601022 595790373 569876173 101172263 846523246 119878029 877008716 302530824 840409605 845164387 521149728 647780261 825628859 353677944 596299371 400792592 706411441 816227568 898229308 240235453 691898762 267790111 419105854 222995627 88087316 95627001 906557788 698148778 543973239 397420258 413426783 883529600 961457557 113881361 246070576 462464772 48434266 491254889 547151283 818364670 55560010 163029610 498644916 731325682 825987586 686287045 688334131 639452029 997283275 846606794 956125563 99915049 300232835 716673373 794579357 515841780 416890289 103350734 214499861 251244861 282270603 226016533 385862012 77340059 933975719 924997668 126144297 189157475 426932395 60962708 593110477 346889079 213020511 217468700 571605341 461809567 279545786 840938106 22828793 948073929 189446114 357982870 362355421 317968168 884033790 419184897 202081628 271950432 923955985 703640167 598125282 719233629 55626380 774155970 971015706 599337545 671215721 859930230 324480115 28554478 493641403 671084320 243496533 182654769 383247776 12507365 59187199 246565721 883628992 460064214 414829676 781489943 511138773 358472770 71652281 117384526 422193249 976950553 828764944 466246842 264201890 918481624 681597511 908521920 631572872 77433938 79696943 417312701 637794970 791465404 418084398 196536649 60170816 949558860 281578608 133774789 399882055 866846414 333667472 101515019 526420462 98339919 979413762 706135710 548508421 239438838 196545220 325082178 136238142 829400043 822992942 439395909 300469231 945560075 408954248 98248034 526607154 586320875 930698417 208876289 486788106 583458190 554414651 132124165 444602555 894970293 758846063 375294220 253128311 847090931 555804135 716364036 744186120 400567158 343060143 681591223 992891332 530061716 492942314 371584719 270696530 156048605 905596691 118255336 581001333 251678214 515789440 392030026 743450796 768599803 58934094 304361215 931258424 979734988 980778244 876303810 294387415 275150034 276846740 625770147 121174926 576251255 947285065 651956593 911913807 307943055 845593981 349893253 152397617 977738817 424796819 236008016 923663080 254611367 820332671 481199343 700040248 188176946 576627572 124610141 895780823 552383414 734727979 567203241 273072696 497711858 32076764 132944028 976263914 953771672 69211759 799829191 331227160 216616940 254193129 998311906 465247039 804131986 143073282 483212459 635271512 529955868 469025515 706126654 560454316 918462544 178348236 297544906 460139697 194796395 817617104 57240127 184030731 722161318 814624471 380526534 217358136 861922432 368390301 579144318 528467381 397583066 783512076 524833116 812400659 423683620 259341783 361128845 340133583 837963333 809043887 35037781 606930363 281871479 388241634 480228665 417795362 921667264 658062095 46455422 812421300 835010368 26899613 582129549 538311141 223128030 855808829 430985715 398507802 535995707 336994135 559987097 336626990 336590199 884171069 141505220 250557872 467820325 236448498 964687644 2826225 205224379 568620474 269418401 42183215 18059837 986591660 347962912 343723666 139744340 606627297 357252414 814288446 194142050 879537292 377478625 205129234 243349793 827477482 955549888 603696237 224509491 672326677 664308522 136267067 170262173 429856302 465789306 872480713 996862487 580371548 334429484 391889171 544672905 659543627 954883481 633082931 1524959 463178514 362097732 624047550 345760956 213167680 358390295 45944354 674339542 185431034 199551617 971193509 34279750 345759267 666204760 681879486 633954403 27694754 766417468 626254814 604517704 329309610 81166839 204337272 703686018 64596248 377836435 820751383 180684534 975601906 530654733 98955023 904302933 201684071 507713706 399637998 850449322 732710985 122928445 586496575 889524150 266408902 342065682 962151715 169567951 722346507 321205602 368500576 826553990 828187519 635718979 786846285 975052672 63784196 43622676 274625638 53993729 732768704 83154175 875186327 661550741 295346702 318036959 376150919 341737852 494739067 176334225 176278160 461891664 554428305 962832914 937570271 862306093 462467242 992299692 304495753 233843143 860064824 825942975 605203100 109863535 159148370 597661287 251662258 17598273 61201698 883087028 74359508 758865726 995476413 224636911 975313592 300778122 939487870 592623518 123718251 340190655 348470302 249048298 3509382 457388331 248163751 70046705 455225952 281956702 757915703 193821708 619265743 477859426 467142288 63543602 603721150 881913592 330496369 553690989 456014722 672147182 864377461 222603887 712223142 472980837 921521124 281266012 274323650 154571277 588865854 223840816 724808810 435997206 237530733 363638225 445051995 125285612 347399672 454559128 820132780 977385063 456069689 906595520 33139014 16044279 753125188 641065193 222403479 852358826 177432030 17323504 128291385 115633258 980740270 238548275 423614968 592347459 403522784 835691796 911096694 774311399 832453279 933060231 526780862 608291705 828729556 579440997 883156731 978195291 821180636 457698955 920213749 576861709 750786646 370471474 571613345 763393028 333769016 418749293 788858070 333437586 185909525 604832256 171577771 965483290 727474103 959644428 24086431 207322264 823775260 638535720 371825356 363568794 335341877 255719348 745213703 707092893 916914240 643554656 506134681 192855588 476969086 628894343 269199780 487387915 386520027 197024027 263581840 735803057 726047062 183525229 243926131 278806897 923363519 332680219 122671715 922353081 103099190 542054993 861956054 419459651 400975760 49479242 221447151 464705175 678571804 401047332 343745204 332832937 469056936 992434894 372096015 33547307 816946749 427310277 405287966 705874592 216582313 732895160 589786853 494738853 438149332 227027547 902153134 760175012 881694272 647837983 483742460 351348374 265821189 181362075 950396302 176233764 335821452 46179563 948818367 904117172 465163847 787635046 245192457 435994436 658452101 782413756 891423521 665841612 531842980 773770819 354487022 459955608 275637335 465420863 98432389 372883102 29817069 168114103 809885706 488030996 75352382 309421175 349869393 417646673 714807910 516749813 15566552 115089557 45162364 605809447 599237164 181713242 12641436 333944351 636093465 487412353 721208674 874512652 309326280 902267782 384250318 641004241 902841063 553332245 94615105 787080204 554689210 612224446 172951563 654497066 862138880 588315667 595358497 808847161 563454946 491575589 772170058 390082318 774502834 776573504 359084891 823437161 13662131 449790878 920417207 154401065 259762321 38384852 868802912 887889249 604583823 884287818 128422323 39152948 377872717 630444059 713703387 239756038 581178072 931448449 598911274 721182231 718050241 387086312 116474927 567116340 237515301 603222690 445752687 307784708 856249838 302855181 848372188 3679793 702870875 503952815 914117679 187822711 422704213 960882099 806253469 35586613 164163536 236255959 209229543 8704116 160089352 887888885 157562451 885921076 992515024 238387879 942635302 957824104 125849565 326882865 432909679 982898209 353341170 282068465 180956261 30543344 626558816 143100103 386935211 890715983 457819453 535436362 175210423 561931511 727393958 785427892 272061523 255263944 678859873 726313489 425437151 412738533 950347283 768374436 509670909 699464949 181134620 433625740 539163802 953308079 180103921 702719381 246572799 368213592 125694425 255746174 424828288 879534098 768022685 131324894 111558944 955522437 251193284 807234587 994000487 808109114 514535388 511898837 827353355 649983045 463834880 82176651 42809317 665122624 157974029 232968214 266313062 301101184 81906212 162924419 419230767 558809060 584467908 22935191 599751689 743707052 849470204 637445008 588995790 313389126 945725789 933100242 588765232 221362489 108230467 350399883 641090521 31875030 209696750 81216362 246395825 202400803 424710462 827940335 629981331 125824190 924687160 200814697 147770424 203377991 511960946 353594422 32007493 425231220 35703881 578859847 273213217 331133054 58344912 63982790 248740731 719760980 961403389 614658353 616260346 993221791 206920117 15973216 340389274 240774685 754642625 231020588 798221086 316271663 176340133 988006776 816107963 4413347 970470135 742268429 884839839 674731466 752489768 262599489 262674912 773514853 496070720 56736264 414047872 79565963 618515871 531207093 864860907 959152464 939015352 825137025 609798092 90568622 942842684 310924617 694812239 218315782 80213996 826483448 725935800 741270201 98084319 516403877 889203827 702752766 27066070 473467002 941119800 493421433 346383270 363870782 750361703 653852527 343821399 616268037 121194611 516903083 584855132 797239279 797662576 773417956 323876350 44717487 492339690 42260541 796940622 346949326 453222328 472616220 210606678 762240601 672326253 988311685 647735894 87731742 279988513 425805243 72522881 340819714 884570190 509102399 848918055 108353916 565863736 940807194 325991974 501139312 573490890 825712191 182400783 277275533 808256793 129386280 353721706 895676737 361599723 417826912 603378297 266289221 125779133 153928067 973537606 748061474 213226457 544904699 49722725 567371968 24565521 25410593 720042653 880141935 377764664 607223067 918430672 695030265 385568479 383882973 878068666 886061735 687686849 792530002 969761363 388281224 138788274 737635695 339701628 185910166 148616631 594687262 176753519 224399526 963238115 559228234 908112683 571647681 943771110 37103552 784810050 232862274 643128809 338405175 226844160 154547206 175208134 561733241 565078128 348030439 294846889 943673691 537003156 82947129 117138239 422974244 293146112 641431917 598236004 400211052 997345688 491609778 143750137 565769230 827942950 975009938 281012791 799253861 760593279 397320221 42300125 543055244 698836878 292418020 509675172 340394144 510533773 266275231 843522781 410810184 459860548 331923261 168524545 739046830 999766638 558062976 534911382 577685955 80855024 521593059 294850451 428946862 786201185 205059970 765785028 264570395 875609699 812013960 261120199 395842061 723270683 526871794 299373805 669909773 758872853 714679934 128927538 200803415 102510820 272216794 122070648 630547378 365149838 847765083 533139881 887281511 319975012 688669982 465040952 412747761 124558227 354919383 214785242 904934214 791852413 923953509 845677304 674679298 153266218 998438945 228725466 663518515 152565686 790927311 316310057 423389245 552580315 656420141 898563828 272374436 581003834 348571243 750768419 71619349 37666363 359985312 727488427 410509402 118721927 485496762 355086851 30576280 346352208 125479846 75013394 439994527 236299752 129751750 136657832 580164213 423740694 311647046 5456691 277182847 957404153 27269701 281663948 509258054 797685343 858705786 351070666 332217276 68648994 872047979 260086142 291475524 494275059 843186153 261556413 743474043 226369788 308736429 131830039 447575225 253285430 228464411 745966245 265317640 977984051 660504511 923519676 344275860 751946796 65219452 997744220 500800771 905800705 232929728 381001915 553349055 935157329 991229578 917866467 376996639 772578365 416310198 841712492 585753691 419788625 327381768 973741707 767067069 342943998 943759569 175096937 362092983 227533577 393493752 333304210 596303704 234502094 67129993 858976980 154022026 471186241 197856539 98978488 919637317 172061645 333795319 847450772 552823099 863893180 235530881 276528085 113814034 331717083 930253966 132637388 719024901 46694461 559331673 875011364 384815521 40708633 114789256 317918831 738269120 969682273 748521136 460118057 893906806 772847437 300053591 258762601 92314949 672616143 676661572 364398501 380329807 655122764 99945873 549730310 585392952 257804310 891405962 446775408 108713288 168492511 580713200 263425389 653443598 501512376 789213919 246538092 186402958 105311350 23701174 663145903 99077098 862491666 929372900 539468090 220961087 674673890 966907722 857640532 145511533 430051701 875456458 766302241 715572634 896558576 366657357 356224171 756409056 472813398 812983047 361524173 4705974 254121149 74428997 539902856 786869680 521216017 27925126 732109498 938258330 186505153 998626582 517413667 674040523 525669682 774272904 624552063 33116340 188604828 196357676 807924755 287928489 928408643 433436000 392683808 503092567 422530830 46880511 535612108 327008964 353587739 618919835 519106465 812909952 950935615 276313569 5640112 92427239 241927868 650372956 12567489 409954069 891405813 898866876 366619474 953884190 279588631 616133128 566296818 422019443 881823183 31365057 230974468 132531791 234488861 445357951 352298726 327840023 230931708 960622181 943998249 965626233 422911304 946805558 856181371 21758175 452118603 752093692 588324616 869446007 205875418 47967177 327443500 927251102 128188976 81493722 352871064 56581081 239284015 916436735 345118570 233209299 40157324 390296739 737650463 693504353 361782630 455027213 114380504 637107013 961411076 469082802 904746021 261679049 278578128 317398115 42063200 295139415 569772937 239932036 102824399 585041146 731956133 117943337 350686717 275357469 121100605 840687832 281685026 655189708 430313703 465464786 402561978 54444810 786702570 166323061 566883930 739637471 131884932 736164182 896325703 212908708 582787246 232274208 813134358 935557324 639632453 582254940 376415685 983098773 826185547 492097951 932226329 613520201 831484904 77088260 808884685 507645984 55248959 494333477 419950400 962839174 749279317 674146807 404298000 320967929 383297381 590236045 214763013 811787287 705779057 243283436 875958954 258519372 910599104 476345672 550788420 168958622 460372167 368372255 16159773 829632134 601507480 657233649 244733531 813295448 800618253 269444343 364337882 50457588 596622373 825129234 539963201 653595039 657375661 450556481 263944557 168600759 674299760 215625411 245234918 164440757 218078944 591269878 591222325 13095740 480065302 60336351 412330917 143129005 57216920 509949579 35537768 655934989 20619807 228506275 751391427 612585248 441321591 778628376 799370839 952937439 277483228 192046300 475202172 478568262 455294568 916302702 483175587 433760140 43720335 248808895 461428686 486087257 755208128 747397409 8140098 59012159 656133694 417159298 518415106 160859287 325704727 746006379 529747495 544060398 614650663 197418850 839748599 304937065 893475964 248846364 226814557 471243521 488691412 621928095 229008447 566831250 877412352 856054416 405773748 810843963 947813433 760689561 54152208 519551236 953129437 958800449 937363104 871507953 356198222 125224699 217671446 735061567 871160557 675075297 958616572 754659344 324699013 96012427 809572075 17975078 601239368 874369847 272547075 517415937 575629091 648874719 410825795 379892040 344014482 221599363 291883795 391435177 123849179 225011414 388776348 589483557 667348017 667986134 416244270 895788698 246584253 911623443 672987993 788677038 155903224 332261429 677357493 323036991 875955423 641453454 719341352 286586031 454733722 548785325 607350122 786936999 63274954 792971197 775178813 119562579 809397834 929005056 497684818 958065110 879861114 553822291 818132208 455812026 817695688 532094137 186287554 695273537 924618859 156155189 627300357 585177767 593506807 591067727 218028443 817678378 814192136 989286589 485199149 586335458 486191809 986972842 455701585 474571039 202431645 477339315 331041099 579401345 717471724 912745352 120079007 4411618 635399276 308097242 949976461 480084525 769137647 500568891 309500814 737593113 268732507 379312536 199705431 896195309 138033097 198542069 74260699 66994422 468194868 371382911 797213124 383038427 615591395 737454328 806424570 184617711 774044589 75424945 410813569 412686907 497007090 957754274 553176461 483158203 850037576 547353103 984952943 501263608 537380202 106760312 352408486 873034261 369128625 459192338 490673566 379556248 352102648 215323909 367430148 579228628 478251898 586630067 15150768 251452560 716882126 109321164 910880159 793719494 658358131 626998610 446279944 712009315 888798176 285020293 713444856 453833448 668869658 534798266 152424928 79077316 439408736 718822252 667104672 477647484 324384941 813204322 998098733 805110019 24102148 881629833 714185540 12049874 908458518 10655452 576267169 497928303 980721773 31587227 300420288 465460512 170872878 721340483 694566945 532057073 140766657 627606735 37038155 891480592 507005319 87931995 881417738 188068855 613737980 904357250 786238865 339445726 575428011 684594359 929345689 712422953 478291006 755651036 892848446 381088800 858420652 263952554 182312609 644132991 940416632 376385982 51527412 618155513 568259979 793217615 322882843 774459678 731993324 458018075 357233018 584339125 265684529 853963850 643139329 589773089 5974396 188496416 661025231 50702630 990134818 274326685 219752873 799344842 872100113 381560491 770261998 272709479 295385478 621500638 394819912 148380719 343531308 80336921 671983633 814049191 767425710 450823351 50172978 560825009 800042490 988021681 193905945 359833690 207766849 64745598 390538798 412627237 218102823 882900180 610823503 654416313 822306021 419793770 155815264 933799608 858270614 946648498 153547209 583442237 536292679 908042070 584860127 355756789 16948002 878612118 205800599 649543413 183933446 100550376 336077641 285362850 111586544 70417619 280962793 912734483 356060854 876632744 167428658 721631260 936460650 78115432 178781473 184543584 243948814 362578414 61095436 908531945 507275410 754925302 999394392 293847128 970737801 710930188 928738545 449260666 27264953 460614072 787748318 339780955 67307911 666263753 629518419 696668018 949867261 222967074 238365932 90921947 161025456 78798502 835725686 742099555 648987862 186510116 576291877 573993694 373880296 338626279 643200413 341596460 312734202 396478967 370616510 590578843 553919928 718349245 980677843 11622415 311281095 112072672 555233815 47817995 676076785 437076469 766004678 553568147 54120339 794666956 319722719 754968982 702867635 390079191 271394502 661862019 648827123 242826955 971733860 121641528 698483749 12492775 283145015 517475801 417998918 200935918 844264152 783415564 610638977 727385250 513608267 352340243 942864836 169501306 930230562 589116669 434447979 852859911 408799901 771760455 209729019 555101383 757178247 150607833 879479915 216720562 776938249 53542088 457678360 155032006 756748620 915989306 88538773 719992826 561434188 759777882 785227811 484582586 952587244 74204858 265442129 943748733 813347421 239652717 558874742 530086358 499442583 324063301 457417730 928000747 832887589 904469155 877505688 67335526 731324989 600511775 631325956 445251212 754415746 13104207 460145966 157958204 121255542 535759183 835248509 463092346 939866607 812892557 205177139 591783952 328672631 744630073 546123230 526809649 375150724 449227506 887378583 636448709 281529859 239589152 524739384 39840400 735975375 10693847 509412736 846059039 738539914 558095780 855470211 935705977 83845418 861716207 853206283 109075602 736614361 365398434 146165172 813936444 695984531 372381692 938354945 686516729 665526610 792514316 410629691 799690621 175496835 529059753 623828245 851449004 979374222 760024131 672387736 880849056 658594357 471000315 589746695 167572798 934687367 77932420 619723401 925051028 502330678 701866363 459922819 806979746 693267563 240342538 524094642 926158490 173973904 920276392 57402877 884253565 601549484 634401252 273540833 522667851 918669067 787342110 791414497 180034108 936290078 530158008 943489475 443183828 752931660 443872564 598378220 498336306 774069333 87124386 934949576 650874662 74163858 486236543 1127789 608157289 600061006 975687912 594924826 266364763 315930269 562216795 813876044 344551976 508193384 338804198 981047625 355115859 199349618 884775567 560290121 582086836 729018808 967970225 262498562 220255829 462278642 123635972 555864075 238955182 997595779 563330245 798899030 817385767 413376882 546925986 682162434 850898586 612590578 648928488 205955530 109203904 18423798 328731904 767816864 686538089 817703044 347954454 793979729 447320828 721309076 944065119 543616478 436279320 522255286 862648848 738741300 335898223 507512519 122876897 801083604 592719317 796960442 1340875 912837537 577852843 692966668 965396919 616342159 586929882 265069101 39834764 979965612 717357191 541078157 456269296 963818336 422866849 888048047 792682604 619371461 805416904 822687278 256183396 901771159 709300560 194330145 284939606 801522021 568841022 170242947 10794580 725073729 906088770 124373483 122471313 831528395 101646405 742720263 541363797 582155366 77624141 862160258 332050083 925239053 399730444 743431815 518733180 894882827 474279121 239941271 894461790 875191625 996165924 33028009 546391865 143845512 672531472 468667445 996821056 392464253 816414862 686444387 567397541 299041503 584748498 441376644 344775563 319891400 57971156 513171989 13244881 546457984 48725776 287502802 425775984 653299562 905149081 478803347 772494139 434348496 714281510 337560332 47202769 447012445 445564428 619465524 18440725 984605582 633184412 869736513 602644012 130251826 383307222 854604789 75630100 303018458 421706851 328917571 156555580 312931541 652879415 805326774 811925970 367416462 544867223 884126169 36125037 251328165 271534193 39230413 787107179 698901245 242323694 592839551 22338339 465845818 48832628 688927073 967911172 603427549 432046975 124281887 139685087 122138422 275351716 711124298 512946464 600740921 886601795 45010972 909810172 119619317 162718599 200961450 205813491 223240334 205396706 421826440 457249706 109276977 767517074 942180741 605830520 324263188 365156701 461756459 403594815 530165320 37723424 47546086 379505995 593216397 818588219 430486525 239303141 583585803 407149135 559868999 492402434 776775549 906052895 938100540 527815961 849665424 625487866 75520508 350184105 264619641 667199272 888205159 602050207 945728806 370945013 511457980 895507935 968481635 203748622 206924209 27754115 527070031 512228520 99824866 985178069 535989661 980030226 75601739 607495607 75952021 441755300 64318708 401651560 49527606 70963723 277092209 315386126 992426654 370733417 342372190 318645689 931258786 396725558 870033882 684665327 992680563 698755157 391548226 853433703 293383814 244310969 563692783 76524593 43418046 160441539 49843114 191243839 64196766 82645597 175220120 596525656 590149942 573628699 98483291 411000769 25310414 727752215 349451378 347127610 214700307 482839839 453939633 896432866 129202132 806682654 861944282 628750483 454996688 301219321 567760529 449710237 233221588 599414741 628132670 629775798 653500715 924287841 751268150 734431542 286200182 684864765 350366182 754242158 922782885 648265333 407283725 312961808 605946495 880450209 140858116 901140075 94891003 509375318 362748949 950191255 289930677 601131474 453506797 865883851 865177189 384172790 660132775 841466842 566518270 703766030 907987913 87119384 876506652 231896277 263086994 647931725 262410408 635859805 42140914 511836840 671133890 149075565 998512555 788839921 174277532 307449873 94192764 72732057 91429546 571990400 808337938 16585226 280445361 437345380 328714888 310119585 363571673 685677795 879929876 34248259 613975751 980690004 253690006 995886756 931222618 17013687 614753189 727740733 784635194 705806748 553168929 40738619 269874762 817786647 798137548 711375899 149740278 150395230 24107742 231114067 103316260 706515833 440652037 650426523 161621368 19095456 174104502 277925217 412550537 574733688 635904462 978920760 961858314 101950621 92376136 670261276 541309472 874499489 448898145 724411552 293140613 536317098 856719182 735554614 348111330 327470277 552743333 483202 26518469 295410301 87623232 979225162 897163931 219727834 878606705 588387387 275752247 191004880 568411307 663839012 455565752 465419824 702617202 213683836 357436286 593693093 682449766 696632333 828747108 866213363 916479105 146454479 594942019 406775931 800598517 57998692 6753824 35528933 872203223 489013223 983961555 93476756 565617207 796120659 101951756 432111208 937689103 726306359 700876876 42718405 463809220 595279284 287233667 556595011 15368146 710704712 942268274 758194360 936519134 635664162 115599400 574409183 173932985 947320222 757494875 354371750 82949799 865775582 914100804 785978582 347278920 118874136 204042650 472883762 676706752 816010001 365767771 791785838 519114008 945422173 368855153 515144585 838406910 444561900 366155693 427309074 567919374 1096881 312392897 65660218 706495358 713452454 631275795 127578979 20116796 78919447 632439102 103635941 437310927 198691009 330463706 993174271 525756720 424247489 630190129 211501279 519945816 657501966 561508492 168440329 550896886 164355165 167443472 22449576 847470797 621496826 378461674 952223296 494339565 805644292 767883289 455759137 205491675 838522848 352715493 626551436 252094676 382380551 77896814 763852100 285523027 183435771 375926285 559348325 664703316 408819580 631821361 300022200 523883910 276146252 752374655 93835375 610525892 61289643 123046552 952265570 746487169 785435031 560005502 703968187 739471585 169240693 455304554 978350994 752913781 13101646 744397558 339947161 313045131 442682932 733134962 865011908 741820543 30035229 677075947 331537937 104964578 74749725 577955217 714077391 320559842 540272778 561542155 351077488 113868770 733729286 830382546 110168333 725221550 713790006 231316112 474367086 341746800 721132510 127093130 245593980 460215468 38371194 126112789 191532732 500409809 297896160 881028619 471082273 356276737 175408251 212955766 989613093 655789310 866546616 818406526 842082263 462671394 181182262 723643884 169763140 892992071 569130922 2038683 100133655 150352255 511646663 154135539 721242460 18092683 614082478 957260038 568291639 911328789 572260671 98389352 860190025 834150897 872178588 694057671 646921101 253911457 532501823 310818353 253239907 65242078 882797082 640081339 295376173 832087235 44468459 345935079 894004801 974029753 732339900 447424338 747169655 392467667 600363979 745152795 249344222 789914714 833888646 624507242 188116415 209598888 829107353 325745018 94971371 143661114 500997351 72043854 132133760 660388159 911647177 184642194 46541014 682563637 564736708 133803448 936291532 753350996 867909411 727157401 706578899 671197353 454969709 168787614 140870465 838589245 449021227 394762763 329215357 171083467 961415715 685950963 127255176 276148466 864847987 26039461 361814831 906901755 910086063 347835740 798228176 815538024 374044484 837980231 684576866 749585267 458199372 737576972 181142036 329074928 161072427 97141005 931618306 708003408 656414291 661094535 942208216 780493036 649622649 145028438 959666774 467266083 553763213 244084810 41670749 479981678 438804349 618180803 471970832 318280020 59862547 282264599 903025695 847723754 616619097 733850669 346895861 162830113 34660814 887480398 626539283 680918396 512014971 83069355 174126827 440600005 451193630 832985528 979957131 915108457 376878359 103957028 132924693 273768475 268280995 849472930 232046852 979584259 451757817 460230230 906556343 402046985 872518152 389352626 923015452 110633193 518818747 378555675 68485044 577447504 849268511 164996051 135966906 193861746 463474320 806456792 264927097 377435718 505819344 450591184 377684803 746051676 232522355 34891661 155611129 219431179 248724375 939192892 34894228 116769161 715028552 736908276 348415453 465328062 310477573 324299238 629946621 568105565 83541965 976589342 535251338 982284577 423001716 27960263 774853387 778443544 196792706 713619878 881335107 450733798 789538672 252710932 381997599 352178445 14579202 403022497 437168107 845133828 669399168 818689974 218883164 244627618 580680146 626819768 354124409 433951562 547264228 460199884 531188135 831240503 967427055 195096064 31859981 426375358 679434560 935431694 398815408 784176839 276731442 833459126 581697091 732995881 594511844 291312960 363040235 345524089 983849011 676423128 845754530 211476527 145916252 299574569 706749616 238808332 852296203 456239611 256654312 689732970 19391256 48303485 1801548 846144071 532553357 669660473 801493244 42928822 516115112 474982969 882363675 883853567 804363004 821525055 780719408 768630053 907861022 367964933 370143239 93393965 127520001 662677403 67344753 652168414 857045158 345674809 551739572 567008048 106888380 941727081 820129898 921259522 582955834 618691245 977751513 275846488 266711779 968555977 640222589 694908705 434774480 925435234 500750643 714102556 600924382 701273145 859013195 615698160 799882784 107921046 259963861 909020401 281636051 653269183 968728224 53003875 982344903 655860395 799946636 257931275 974549392 672661328 316998839 896512122 232116475 953181933 632467926 863453526 409770846 244428016 525405848 304841052 670120452 342242922 965911190 932690925 703316639 151903470 171170016 489811165 188141415 287100058 790388537 489833602 814831824 174940765 717120792 122940992 209223612 37240534 949499570 31557766 837399122 161186862 291085094 173521447 479231590 614945592 888325772 556260387 922285578 137928189 808307853 875902750 441598453 7441960 51429301 325053473 333908838 796864921 94496633 779595654 972404733 424589417 149098770 962311506 367938640 69897786 224434416 999767446 561299160 69463633 990615730 943010801 745362224 426035481 280655918 693269327 367669391 136918281 188075005 383583347 567332710 743505858 785408409 247737790 957884887 509086804 213127045 309561825 165863455 348485035 787402812 519083523 652940127 156857914 56639422 266505999 365046152 893593546 816357798 947477910 773689475 229097184 783494862 750543315 29372390 712777191 14209144 242960573 395448929 135270053 109297866 506189238 97647260 342813663 427305123 177382144 25519546 722868355 120933585 142331751 36002277 356186100 765518553 396698187 59905154 459144695 383445552 668303508 668632336 215598434 59687560 170431854 864668397 860627879 89655002 195771896 619706031 632525701 787747640 325738681 899330030 396435038 582254679 573869576 163659456 701256592 934824014 477730329 111558203 638477044 115244962 222228397 598878504 364706056 40535101 905099522 407567775 706538882 859497582 183672488 812396971 847932272 118892763 483262620 517118397 807317855 441810134 236867393 247356973 482941119 7973519 202747535 806850320 503683233 141443539 479606765 275647991 226835682 807272315 355751197 724243874 145187930 975840570 950647715 970507045 232172312 928700208 158505761 717625472 330969400 268316464 774555117 860448026 319040318 170235234 84405771 332088560 93912638 545213626 74670476 632596940 312530722 113359958 211244765 6685317 327925548 918894825 500954079 643274796 317847379 65954577 134445480 504336856 285725631 660048049 613203428 98482531 159992567 694128439 111064303 402785309 214195027 736687040 31800802 375345259 560413675 706846854 750521805 177600425 434590718 34287268 398176519 459438576 848200518 134343836 35633995 563752578 501545770 658764443 173939144 341086868 531169862 95733978 57468551 909527448 244762155 798035278 765994315 18237943 410814636 470622243 711395419 312834459 751717439 491182499 482402855 521756077 680080153 306352522 55787823 592271189 186353784 490727585 788364746 572869191 211527661 3908966 319099574 12927051 376919695 612220102 333884668 176158778 808419814 827341639 86761665 714088388 549141875 532636954 410084162 876977913 316853222 796817126 853264424 254922300 91638928 129359635 423576873 562385343 469732450 299563031 591358995 482084803 694074810 890107 201167721 763676554 856823918 544894636 767777740 373616834 948426056 758010259 2040906 343219528 797944100 588818121 212110775 235271746 853748003 262533466 877032555 965310419 937797365 478965524 356992297 778816336 243802633 935645385 261436890 194952998 722472698 8358863 416188477 936557835 731249173 608691298 337391244 693740480 40310382 203470362 482227555 138915864 185859002 336614778 74315505 884684870 944771645 940721662 526544584 388587203 974892275 860810776 416492812 93012058 758908790 468482778 670355736 750385443 428002998 962314655 911989701 411637988 78650150 148133982 757608024 678013629 126891601 760066512 639574670 965625738 710831544 573647288 650172083 560092576 602283185 102687348 959881034 568056459 600329115 222156984 245371630 561007448 609907442 107367069 806363249 589295045 885295914 307667348 46975493 869254698 79274840 888675117 455654950 496442739 528106985 338896060 743122015 731096495 393305551 805633043 944157999 463024149 599823256 468408269 285593528 273242076 700634151 178036352 803755499 820170676 14086753 873188379 558571518 169445958 993130074 531557024 991190571 627295177 867344732 827556640 977942256 107802823 908512189 65871353 218522780 499994977 687006430 84174188 405045830 636230666 168047034 660485383 319180055 482664492 903571620 154253947 142024786 356126736 214285363 410559636 370144735 750376677 659907799 832802116 683014964 59376254 522272212 929624232 651260815 188591116 75001438 87268875 845903163 982509530 357393296 265751495 89727002 988192176 833474985 134137154 943096388 20347495 523886102 574064950 615201082 88501407 686312516 411545530 420998254 313715898 742761371 292661196 529708768 957157865 446629005 425305585 818513703 144089445 680089025 672932728 403015483 440620427 24189586 938451516 462884831 614119763 53952050 712169108 735033231 414279013 30807026 595175157 356497936 435272245 330419875 45538733 832142978 759400321 396988264 383050635 666442424 428468526 361765303 340722475 728502629 378136614 644920721 440855930 968783433 951140746 591186503 451149181 814044189 663549125 570301880 41817104 873306651 486861084 814133021 676504930 773590345 935338229 737335786 516879651 730035425 36723944 988872550 476551974 817658291 635783996 324974972 853180842 819521446 968210027 645054582 585301445 73394004 39765324 888318952 605398464 759506112 774796545 522912242 42393226 990050090 428777390 657670436 319970678 95508079 105148409 235077432 910261714 962456736 194430895 198505078 582110480 760231406 499313915 317899287 408925293 106317471 112457001 885784488 630115548 853735139 160145624 335696199 356526776 311226333 760547282 829608093 746934126 833581355 808271107 534128099 162468251 251980045 527863534 75164251 43289776 397813742 44605125 481022745 329125508 86072579 868714606 170683766 562154550 435556204 514071554 28716174 52466812 307208614 209719172 452479480 83906534 824782886 936395129 785851885 620844153 774529609 724944770 39867929 768612118 609584961 189150137 705188661 632174257 644881137 289512700 173911722 217555099 266714751 687427433 682337312 512024054 109011175 988224473 926237370 564075856 184776520 972626192 882752193 534590469 577206424 989139629 534540036 844307926 179336636 333778099 147606151 23485935 583487161 861586035 889815953 995893632 905178823 624971650 279071516 29733452 705942372 192543694 770784455 298786836 920589035 640313687 919933030 573537624 289974225 124950928 611687458 107706899 198740334 105991139 777602948 957133974 289208765 386244 580011483 446120706 262979645 533269091 467151206 329528420 632719936 412010449 243992209 709862969 194788205 315827692 301039108 792089488 609870837 822377278 445049756 249350913 241846662 310927575 148777834 392254141 34092662 197018351 302996975 685596647 136699450 339156830 389686304 9653690 983953587 585586667 465826732 631281494 947111313 563527368 589430583 528130676 278035938 456969149 372263136 251921900 959820746 972309199 323701150 701632508 968612888 839631546 492088651 702249978 62225012 29026382 974251994 734653385 798066299 834251051 993516675 304743414 881106967 875463817 144281697 342012424 888635037 956916049 757623868 427984980 74731201 479896323 380958317 31732443 710550795 568955185 659687438 310643142 839079086 785223996 805198655 740730610 454118341 485546521 886314708 964678351 761014930 450684778 658900342 652069234 401457583 221511387 478513466 893463615 404799277 415159791 457362366 377423636 115336934 164446302 127884764 831066387 125982091 299377817 980997189 740402912 534126121 44342237 922736947 479243647 992048295 712482067 409611151 642588951 289391668 521058093 462885735 142699478 243654526 725894517 377678178 387770433 416751547 862925318 778062254 590606638 113417788 276684420 799932543 581829289 863096211 830126215 321361817 388343191 26428858 898700474 688419264 359935901 467516446 405521049 919193864 15050583 715731228 566623861 579623899 585923892 993230855 730912140 163136219 389728180 86725211 385002813 77550693 178667680 204184109 955627519 341916706 711450578 913656633 729069361 431262946 639381569 629526434 523065894 453198692 108402727 763622724 979514386 900207192 110886889 104966253 591188571 989817889 136028259 136899201 642095896 49076544 867143694 92188579 958228901 647968288 616823424 407344831 384983370 19910108 160503747 136938825 7073244 481077070 582391567 523109760 719569207 75472265 216299589 388872734 954879964 572889391 352059560 79994388 913396636 104268614 294187169 609403487 8086172 785483431 269664031 179065695 130144912 454075935 863109378 131124862 548273448 452694766 311283506 262944208 976986978 673131913 348867324 227483533 179561958 815276655 598136530 407205353 696977689 220459283 190092212 200247545 713835669 693690823 758151065 144502836 70336243 204552900 996397899 216536195 640621259 389859804 541866001 113172861 12847565 361527234 128370580 516034370 968940633 224491026 558895144 175517422 132771804 360124022 671248694 8205323 336046065 328250585 813620947 748686332 370183594 543064236 495971303 661388380 532818256 288860774 408048553 344599505 862836883 873179203 106819665 351607582 498824882 253393881 197266682 233060003 478419614 881129706 847943221 685573336 666121131 621931810 382169725 385757779 164249487 568274350 197233532 196922168 555542570 725231503 399262913 403538456 568415132 251220657 228062708 474804563 78538219 136497797 194224525 48770503 25547289 868467771 921095937 466085232 316242516 481684457 261393580 298765854 722783543 136150035 283717002 540461769 141248626 544276449 165708629 508289800 472382888 568262773 587468594 102980972 279728405 154881724 9648681 463738590 955465282 761012241 334576015 73058427 600730038 987925717 151769904 505443419 576999883 205953985 191934413 531400367 898910835 76216984 81654482 781465392 707354843 551596053 744254903 987156546 456883248 914793169 909098943 160986311 961312513 138010944 654673141 75675869 743678335 554095505 224364443 17847066 151093941 760709127 283133186 333289240 160920920 191593813 746008171 387917535 596471348 280523031 774432128 420984101 893165590 261738359 538846967 598020720 690182061 940330608 811679019 294090015 678327396 817195500 927595919 508632260 842666542 247062174 407378506 268157671 303525396 644560346 988113602 936019738 779140934 594495075 439869130 181019671 911864172 327329930 761317132 585700533 722682914 622628971 699684144 933737663 38528385 459296020 510595812 652578769 656672091 944546424 280732225 79659719 500369791 425053539 685199427 108128548 719033341 204385639 701070724 294365947 951788101 238324559 333733603 421635517 634677862 818100095 980572084 799075578 484939572 93532036 747349903 272795900 427916626 947831017 238133405 563863819 505292862 955153297 103054433 240420960 357976149 568417585 331207500 253643373 783287448 952163983 538317762 64727790 917422097 496454665 126439647 793049664 425019739 739868579 949814704 772349054 96092132 424804936 379703771 110981713 605167739 669184135 540146048 475582117 479697719 641071148 703867949 290867194 759636676 458866210 913234437 202814202 725527565 841905524 42589165 282710973 723321426 99999649 853565103 772909823 931626479 939098090 964304656 463972971 409220770 735815883 372747593 530328105 685821542 976373586 344753915 156443292 742228609 255116275 258707404 251486864 794847247 80941321 306944034 289643085 947744407 600946440 549426504 894655513 985056558 909971947 500493073 276451436 997346674 838035933 409904250 403701396 724480145 564873431 906956076 410749089 416672569 44105660 727581783 344922325 15045134 513350338 688963885 166049537 158273143 437406004 356570683 321183890 254070928 789144143 446842270 917726311 136361754 846702736 887586511 687146482 992730613 372473154 974539992 953425375 247261458 688458413 494151643 764498059 855672522 450296060 210084987 59656472 709270009 388721049 954490743 258108295 871108349 244801375 441150333 665145218 79032572 965789997 749166738 127906845 736350220 62065448 815923624 492477242 173607963 191995266 169526868 183495433 939955257 334294344 261358644 37061197 716721178 180063756 789155562 620903773 923748048 786454010 555390306 328134637 760470567 356281422 450330133 935390256 496564086 811996751 912775155 289725545 224702511 237758989 469793940 527645167 368648872 173100092 659510143 893835996 275358068 211859641 398442030 795839476 114753727 800003263 355547898 644442939 635177269 140568140 42845628 715074336 691286717 772095944 636845031 565015048 132213685 801819708 236568157 115026402 488734188 313600484 405528547 109058048 69384515 613079181 375225080 638682151 602596683 974867058 942161856 849694272 86913301 162756378 56141778 93686698 157019201 766048820 334536844 522552159 692079880 595919345 25865150 464504759 36443787 478287979 105242095 874164751 371907078 2239456 278152264 136980224 583925888 86645665 707242069 643749787 368256284 831346988 836698045 154227259 644048321 349039585 826666998 444207927 237538162 428189733 465711029 263236543 720850197 825495078 604179475 632418391 316102398 193521448 714929961 778885644 787600507 48117915 520567787 502171688 922517332 460196223 276441995 940931312 664945572 946703989 686710020 866998157 361310822 521246285 134841805 142053380 271924364 844385831 546539971 91984607 795647000 78748069 704495386 343077078 998545662 259280656 247058663 727020192 17617185 729335311 933213117 89411752 719363860 897219396 643955537 391580361 752470988 858165004 292482520 513637542 762892030 783313001 111175402 175523631 79114130 140860777 935046526 283069505 765139106 190978581 852092993 233882455 248611160 659309348 469738872 803498904 902867645 75913142 348879171 79520221 210651822 468316817 13741968 703145860 992695392 127058030 139698676 611067441 701578454 311074845 172912169 355519981 80465248 253210353 760265733 783941082 932328640 109695053 461785275 698977937 590104715 810146160 338424437 662522844 409063013 195183148 4516617 520911591 499644259 698449950 109603887 912159098 307004881 65839483 980226058 500003132 485442698 678446933 18582242 537539392 670516800 52703060 520272109 555350890 197024532 481524244 148160961 294956551 931218461 747405162 618894859 150361518 38192151 781673279 693216250 510869641 747754694 5572882 406642389 988564794 354556275 26573561 407149609 99315965 330814410 569563324 85003576 578684985 614851483 388267216 497624380 992802821 361819840 721041253 120205300 989988954 412147599 977244664 382057017 286022549 890080758 383539788 230400841 156773665 999621607 541671112 417574003 930960100 596499951 98367246 229769698 904601004 791543815 663777490 908951469 956515811 855588489 794374045 27229826 999315206 941547419 743676174 30426047 566263763 382647590 411251814 811515237 39752736 22834452 566779154 633636620 465926876 451650807 993620478 897744858 837471534 559872109 449045007 544638574 563998438 577166972 655558231 911054100 585646202 529618138 786707203 168712021 37955398 288347714 362454066 249788840 367128102 717874542 62236036 216753612 331896189 823546140 570648077 791764905 260783589 756027937 20531365 145125018 949859831 822378962 742104047 273290394 859926286 156375050 589990679 695933797 578520358 266140321 804719017 555573085 618423384 330118447 529895629 749320361 181576564 43632557 774759855 47911284 532534263 138086994 371280579 571144603 49929029 607486063 260044100 824593600 279577016 392407016 817588720 353619176 244744764 877941143 389024523 99859347 406731660 707917735 680764983 679315243 712160405 636531604 209267958 881385346 359509794 638590967 815913004 140755052 524481733 537498175 988059710 819993590 343629612 59833559 422287658 15783644 460775660 845760445 106721348 18378096 243324675 912708220 215902770 17331352 687589561 295400338 12155734 643404538 704396001 887988418 310606498 117499734 689240662 533485897 45308574 518872311 677727446 612694895 88502262 593586484 316141813 240177342 991446150 94735830 38683549 650369429 701929529 469768478 681016612 40915408 928900742 21769660 628428805 283746465 229374664 707578846 574434481 112019484 134829526 541706933 365513109 121646080 542291692 98241431 92304703 553482409 633923851 989035004 23355224 47787671 758445296 497471550 993990030 92733592 39284981 362963611 448886596 849826362 371028859 373896900 114915962 353150344 2632432 21590143 877876682 543814288 451815919 557931236 561775620 207741854 904075542 790102831 232886897 676336622 12595949 360456282 31890132 852263765 351656090 282683580 617035976 877115110 825587457 625346518 863528323 614495127 49507612 463008467 923307658 181134030 641013490 238701532 512469771 277739008 513161032 606086777 243722986 183907658 308838985 56288462 813819051 290048514 984012803 938974949 974633271 300713429 656360256 888043589 890622581 237026235 325307945 260960723 720098198 852178311 52701223 434344697 536713706 648448811 342930017 221607160 418948269 102583924 536859965 169816788 882210212 320722451 816206807 900236356 624397867 101024753 326684214 398816911 972024635 31985439 181750537 16801686 664589854 920089532 127914570 95724655 468260694 230043861 672164127 760437663 33364850 857346247 22994679 273464218 670445359 282902176 500988315 442978520 63863176 299839089 831973629 598867986 718147951 419640625 952831166 721261961 66967706 816407657 981473043 646681327 628138479 717792134 347066814 362603683 373040624 741084904 671585480 949856253 393588441 334084085 555055046 658752310 96134417 34686628 722747286 105828663 44812520 467585470 752648914 315580989 836264256 318916026 784660216 70676032 442745687 810041907 172528763 695199229 326446799 290632238 236808668 567007169 335011529 522130639 862099292 802367202 185358008 677969317 951765876 992099354 644147294 870987502 996808524 812842167 117373321 7640344 970918115 187731973 616716562 765558648 401823288 182270712 812832883 393516803 934228422 251385809 214154851 806333178 647143117 305470806 120848286 679634293 212730165 954613993 994640746 149928786 367245374 85759482 208493117 30947723 577634221 627161564 913892387 294075578 42316971 711446488 79750431 994555854 161962351 293582057 496817838 781309217 308128105 904984405 270867492 24113152 100773015 482395626 285663523 643722128 227180802 690815404 173279797 38343395 797935148 352029384 464530127 514960476 397761540 617481296 182763073 944433884 832113897 682894358 282009539 900346158 30112717 254088493 488567538 269377213 277100733 931138186 797270995 270762055 505805154 20670070 752767735 798029532 891572747 432339381 717999537 301729413 785847760 234316461 813155079 183566755 733715872 947405644 387234406 734912640 615058870 218176201 69965516 568035374 791048175 261494231 280630504 119570257 196043097 538578977 393708429 472330069 858916994 895177894 877930266 454820881 752913291 347066120 619237264 202352993 916238508 716749171 408632970 752571949 123648413 964740662 685801325 700283465 216141602 891537620 42738405 948918519 895973959 551985320 644164200 184876406 371710519 777034397 846769003 18954235 447814229 727240910 378883212 573154872 953230712 607802765 455588706 175375182 678147750 410717070 345999932 736819418 524325973 428467348 510274634 710487326 931872902 96955062 653935576 65466650 780417545 582338311 365173754 594821980 954142370 411674296 391872307 673053258 677116958 185875373 851323383 564784086 122585988 476194633 295480602 474870053 696219898 774622359 367442366 636599604 610694927 192295009 433397582 748619893 167887245 978019729 538848362 493463207 790094621 818358395 333577724 936718616 969569339 916457737 887536102 466097873 9853593 781876753 445084932 689154652 240940456 509913639 764028236 834411598 412646876 824701171 641143797 529583284 500213086 5309515 509032506 102275775 57402916 308833053 99191957 717143912 295141767 8341119 714383957 282073687 752752239 596471941 941909568 309358250 410305370 194431325 148629067 894469141 210087184 215714979 308672319 924258223 872289809 546807159 731914090 168186625 642827458 190019919 990658780 712604035 950653996 773267985 923639041 479529244 415436322 736610301 450324306 785829145 312852759 865192867 669287354 917478616 988419107 673649213 886272382 720556582 147347025 232931730 531986799 645103795 801356558 590074764 179843185 696331564 748699454 789202190 528959255 369729527 715923970 542506001 276614044 450423652 712511060 771420562 375378126 455789902 352314475 773691980 200710618 498355444 286326210 931815008 567773415 596546405 653332608 307032291 852026005 421277934 233427019 509875743 796640267 667508319 320403372 474404518 627216396 378522774 575785142 831950332 719356026 580725031 887501756 198313845 211151376 440675658 67088126 777138906 483940026 313531629 349017112 736994465 876603992 135581325 626405923 920982312 583535749 208775891 228916308 101892570 722958914 406466980 147964135 673271151 615597255 749803586 502230679 639581834 142264893 682607805 68588496 869988615 649671909 114902319 10127703 354367381 322276009 63418802 952202570 657341432 146580111 8924718 36974833 9152098 588077447 380158919 140428041 688708643 324007235 168768124 242353598 324967052 794803296 791127810 795740830 228477718 748294476 243387646 553483935 965040090 52877885 677702093 443561181 942399076 523947631 318018257 848310675 597095769 370617005 326718420 354153275 221435848 571771608 347585840 821749939 617115496 549288462 515033393 158279437 982229809 379609345 481394884 847426218 71131676 227650676 483012408 215503860 892891425 815347228 319029904 768293844 245406998 114076899 897397133 463609252 607024897 844739343 783915527 783033440 174658379 812576822 313348646 779787562 639810951 756076990 812834299 111192420 31412964 195536018 731171354 994436114 466225567 660238493 175488531 605769483 225595918 53744258 386448069 378651236 956950414 160758168 500979152 884936651 889324539 896365509 61701842 780641934 557528276 968595182 624970906 677097546 564800201 701849020 181618732 466531359 943223427 470592680 512696635 333607124 699227331 52314044 996912548 619919659 460326701 496611938 45172874 458018894 872220689 337993375 788717129 687843953 678556698 854767198 2577891 230646245 446107708 841091570 93870499 955567418 71230505 848517219 199978656 606894373 267220808 273529610 190251092 710385713 268443679 919764062 260328727 715005814 703672717 159649348 809634051 123626958 837128218 576501692 708496583 863421820 399063882 147347106 943732901 881267001 662846284 266892963 899718743 553535004 664899083 940403171 121486497 418301848 165215327 335850264 878807820 303281797 407739619 667944041 696925524 242105718 267622940 776371767 87343041 856865484 259014004 593207992 514326883 414601075 94444255 486748252 987054067 579148257 429159212 86722569 628730553 84142869 258250081 778623394 140114435 653532333 94782354 98372734 535817875 819589019 773377435 801743249 742440684 320430835 319643231 454932999 302029325 750976713 602699299 238658624 173402918 120461198 856226037 978024386 198057991 487728086 588123663 14723274 185360328 74330654 628439148 105086989 84693065 477809668 832484370 811183844 417185056 648579634 390430849 11606970 814260648 361645642 912740245 517983257 499631062 648352895 805974510 596378685 491909908 113789187 605815123 797990590 652307226 837904394 860220597 374976044 827982063 796384788 997211814 517188615 576114383 421109836 259932025 404032911 717454785 91380977 306598032 297174095 152245450 79439450 9757852 403019490 757917635 236738818 864992966 5061446 691063923 333467771 648322587 560742822 423211340 228092497 734817166 436791660 833933782 831913989 284052645 370753499 427389880 417038193 806540501 620302164 116841265 224565453 736795589 265784213 308039962 456856627 454921534 501844467 938702998 192514546 845982865 60343318 139539250 816428112 173766524 258014011 856659821 867616187 130567889 980110148 579787921 803110997 705294351 41248037 770555390 843434665 934209235 202021756 143964365 184136404 10918233 933447236 153835468 120950471 92156241 955081526 40653305 71186482 845886982 92387781 841127837 605925628 12460699 897147774 898783973 512246701 549074499 830316275 29809676 719704625 769344860 183190479 545627208 214009225 531517460 850351369 888689883 500183057 941368148 548546583 710072165 24035197 226938015 23886142 92828362 332911015 728181464 459494408 278137099 394886334 287894362 924241352 826068608 534695538 799998086 164553433 329198446 137961695 352320870 288203992 85542075 125164988 835858737 910784102 832726137 373973222 692431164 535983366 119448023 20570719 435247812 365290156 60068102 232198191 768036737 926645962 785729602 578410707 293899784 217224584 480218075 193921431 985040740 309982334 624547274 891151716 915779818 38880432 516649734 652340752 209030435 589483494 578872389 41717460 386902877 14426296 784838707 869377288 219710158 962701771 316291127 492541190 324538399 151407740 678566988 936562452 319328842 289326967 173601218 636340112 821239387 108588592 641652430 990753204 698926433 653513684 13943464 266562675 692048101 341360755 351579904 489715648 667045233 357603275 517269022 816313112 523771905 74321145 87322477 518464344 229623374 200041983 663906700 838749615 952963879 16432938 862415818 121669144 836031105 96040283 789082500 940887705 829018687 949668516 420244356 570113812 649352365 263836676 402558028 614365925 794254372 252682598 89402492 364980020 51477413 443431849 237578793 687611032 68819773 474089505 797363255 818976783 667676854 391339024 772893647 517605045 705418834 488239259 894972310 153813321 477576891 200175033 218061668 478736737 768772988 695864140 520983324 331425039 959978640 31149950 48240153 286272330 545538853 264841269 597084000 806097837 265590899 970164191 367707767 693824458 804836367 403009518 843690525 498756358 457581852 351549555 777630328 42113960 539767579 721061225 810165122 302685342 87445514 35700633 373003164 508007961 239474578 391476065 708737084 128880709 129613700 524412820 726460194 488357888 502298171 872159728 296432844 635330015 428307357 490239352 203999545 855729145 583657540 763266810 950461223 522736974 901522076 500363371 514224057 943664814 401902563 180316140 411236809 936343680 27880072 918782981 387276764 189566959 582444477 597038274 562207026 355599016 217514373 402587404 504144803 560890693 224572880 866459848 229559702 759305144 248250610 600819710 275550332 266456961 778987485 215056408 884283183 346449701 351558808 198792048 489056476 479870559 809135753 983944610 716077996 282143948 792594797 834983848 962930735 807335586 506662402 627377284 619555794 590741112 667713898 643535262 309169807 560101011 270348921 253697251 425807253 165424262 184224994 987008152 541935509 125524285 569248268 625724787 826392688 172320800 448152388 256010496 75281575 546368076 892919256 876071961 461169885 990790655 343473686 347239723 390201177 78115815 256971900 562428938 636147362 71755112 168020978 268722444 611417737 178150808 783529440 393855396 781476165 372948046 869667008 700825771 708340803 342308512 886457811 651229359 554660787 138878780 774707712 566757460 531792803 637149033 434090002 41738439 746467895 653956974 728911459 793006265 623986952 277215374 518706082 787245566 104918265 24213793 956117386 970775255 5680326 189393703 68312692 367844244 176998108 537641514 370773974 651142602 619890668 924426776 376906873 177902291 916484484 393248069 944089799 736088726 908681676 887063011 309612258 345647806 118450158 975342858 795501222 518270178 755029741 14763018 794153107 769743637 344409980 569184881 49160870 351695356 775927754 788597725 259260764 400413878 487676936 113794553 469869431 765657071 366268934 292584550 330977239 482877054 109751347 473552837 695760224 524875858 265271474 808805434 906544498 800970133 867662316 890077589 320212885 27093075 623803210 511896001 440641693 607749990 664553275 807679553 359727918 906661592 706757449 11559633 745786631 300016218 960902166 505369453 712606163 297630469 45260244 374956185 569294596 313503398 803807260 483210943 177599130 435843233 458320998 25709283 834532932 279022671 790323767 790263154 857468625 117385040 251601879 485111399 292902453 509336558 252523998 796710293 18463245 802566906 979151288 915108130 867283333 852104238 34895207 906675371 293911267 934010286 670401930 577041452 591629192 118962070 346060179 540373388 373310086 836322834 955577437 127872654 268851531 391474748 775354296 7560319 554047516 120170150 741320889 688100960 680763318 130876023 375781405 927024038 435506150 42599664 426293457 481900897 776183169 371100415 491895942 864655737 430675544 663739594 716552716 109854953 154272649 284999300 366868787 178390170 773513749 685309211 910850603 946410486 461750734 390276517 544269218 232880813 197411690 52677121 896879657 130082974 521638268 836907671 101073107 396405921 94336578 672313975 329366978 489844506 266783990 399289710 753466421 648566911 951905720 172405181 445306794 628670568 292173551 418038580 777172063 719369515 669888152 62442536 894179515 874909445 557658738 8272206 552801125 969545383 578780677 866082459 765444778 845636408 918388602 297710786 748694554 555507246 654677530 708559082 695756735 483824447 177325038 723333718 758950534 621196974 982702742 326776626 208106756 117298555 260747623 450192698 638532971 394719182 423118284 950955706 791128980 244090750 531331098 28226561 885659354 207744753 26283961 735110458 960452079 316518046 397637594 920073898 212935978 58779670 879545001 19349287 661661792 811450919 117280171 611134351 189097657 868232853 390714517 977908861 703628853 495571674 624025336 462454835 713329892 479257898 409471304 280627224 547801555 639736291 530631559 562233703 283730412 113743942 927954988 941080974 266139173 211312878 710782583 767641274 420150534 65206702 396189566 813305298 738795387 700577925 665061459 599105730 20682112 178738290 332251988 503740305 471912553 660518616 512754919 302237229 295423957 792257927 853591512 190991255 467735753 71333059 259804882 881506947 867700723 137133460 664230051 331876108 193990067 287454700 625260064 585829804 137016278 219405526 373592173 497235461 849417408 542668711 553481506 138357358 333812857 451775649 446806544 475492309 682173133 124930384 795888773 785167554 534021888 627036569 372645026 874504378 155943302 284440060 616011861 71019702 867920753 597396269 586305955 620443193 892893384 201819808 935367761 665721292 697545317 614654111 445305477 65538320 513982173 777527303 383998757 222742451 614316127 333101785 430423940 496257938 125197567 340198821 983332722 908232675 210882145 351879143 845864479 317408278 836700740 616165190 179359710 91258663 722373130 120359667 777821905 536127865 729598022 588531551 420630199 502631292 107681347 199106749 984363046 275737813 762612317 15927332 517285165 464840722 640898503 959662627 86773729 969166291 645195304 815299850 212751192 235671512 86999547 318749179 576194312 194797676 818879757 278456868 873384316 624196405 332381888 622293309 371578528 814123556 833513229 7722331 171292543 259039109 894206843 371174002 717689151 186767343 620001169 313947722 149936417 776711048 781090722 746141494 350612716 292306331 974128138 873313702 9511245 875139685 666441473 505021643 65349077 484339180 659253836 482418860 967646263 666689363 232883398 62083556 258888669 477949868 7377140 973197929 512976162 723101294 238034889 161175552 348643787 423729881 652461570 139641332 332691010 480190373 33795077 15647893 389899426 847782947 286758566 448439240 885598768 876770638 301271461 819230888 725927164 953944526 875362933 770902716 914594669 279865738 65072596 165275273 219561686 260757916 408421612 216313763 239092578 64160459 563670635 694715572 778862063 728836969 20826142 22960276 956902681 73773820 56366558 421418197 684651571 831987304 847106144 902245748 434022935 945824969 900360273 774686990 317200673 448981897 151060357 524970073 494674278 351762087 277295272 501052257 639600966 483125238 475335843 161076153 484597686 457993091 559548745 829375322 109578224 158148658 174414948 398864931 114560910 16630301 934991666 149227010 736226830 625707057 542066917 160311516 213002446 877405776 69258480 330128841 45939906 649354374 613024151 782555818 84466512 344171170 113900892 485249491 202799955 756599809 541481613 766338908 826852740 193001061 625492873 644398483 233547363 737873819 954056691 560429050 689681839 997177294 479748669 720253953 985931556 219162012 217860538 20708899 81738064 689944427 509284359 126848838 113032288 958336085 346030573 428864794 82946395 952175304 13339687 665162046 642609031 16661421 379770276 42666859 872722455 975461712 170234270 805414013 170486827 293787876 58585045 533911705 588663685 491727876 399822586 584048150 828427981 535063287 974166351 560269716 801588868 285759300 397506021 488893458 644364137 818667379 859400725 340640025 496157778 949330244 915150840 740870455 594066290 922283884 93853902 776683854 552103690 783430605 727314994 323696212 360732854 704765543 747337217 178447962 580157779 874943413 380393315 858815342 758106170 16865034 915425545 84486560 946958420 807612260 279673571 149573714 523499243 193903664 575907938 956966978 371483029 623452440 236343931 949723644 502980748 726110622 463659415 258687794 85313085 63311173 376777903 735262933 983782617 494008059 938777709 40361668 203543517 171460940 27329462 608508717 996705615 500448966 759512460 768525258 433896140 147745233 541361649 247932292 113942761 623566071 415577661 724704243 164417751 368605076 409823170 890195392 179779906 289266282 68798282 752365496 865288062 903031315 196220392 133693371 530392044 745540185 743742913 576251035 231351992 249051997 869556239 2037502 843203700 662989315 508595068 775231643 332692556 348852005 299400837 735259367 43403448 91664066 88440766 968801530 562103063 118848287 926861551 951851807 35997424 544704153 150250032 766188062 146191290 711771308 158660396 614042168 149432482 785554646 650738371 701510639 228062595 338580615 309918906 710919447 476768292 911881360 973930269 495093706 670366913 859379988 606950215 287065158 483650363 50130667 203091767 366422616 87145169 244811049 476141988 686909893 464163523 707690066 819063089 792596554 77755018 744276087 786049411 504264585 887799214 973579301 275529258 608939078 337193238 113787662 302047661 908058155 380245802 123449392 977627309 377881138 141847256 982220763 176428678 430532433 776133329 339855334 542981751 34659110 454209905 864203544 720997038 129661487 749582825 481937916 637414707 960077157 963775578 953128096 549157130 966722935 172613921 386089542 29939688 561275981 411206601 715844201 842075390 366311664 376924638 466230411 244906390 642811360 961046264 50425138 34482861 59573204 111047932 36335894 336201286 943386185 476826214 794195999 713673055 504485908 785710943 170884195 318723238 948136771 596310915 815941461 877093614 514161467 511895807 288057826 765048489 941902092 80875639 9750122 733369370 437736912 115694003 369401083 386601678 790874881 19642475 905040288 672204619 13555057 15203813 236544040 24553737 529638462 946102830 690890224 987408646 670936517 907542850 58955731 442555338 512017027 191082521 584309748 109406793 946892287 436281993 191868680 942359824 123957213 8534412 963813592 129532499 146408280 640811258 985008469 553532851 643163892 827931536 128613046 228149085 492905331 537781422 656224251 930294901 666625626 696267972 374507322 889675109 427394255 359490598 1051054 751408038 842226863 701069379 307531089 677106526 927003847 576472841 476384421 89166427 302372507 448800365 818799579 14812585 205872083 46076224 228381555 597606739 558636545 174600168 82283252 182769259 243115314 47644770 612103318 804991461 206742712 131033668 676699186 988221915 90952926 104540797 798451639 52736617 508465163 366754771 165592869 303970384 411484233 412206378 958345592 112976356 947665702 422552324 331293714 702061337 614101710 789559790 357949566 172594227 541706921 736225530 478211182 805972343 328229295 735551134 770252564 272247906 727290562 828766806 240722036 149050135 263550662 22337857 795340772 505906421 840971394 152346175 48096987 765528103 842453281 877171100 406050206 300120694 526082107 160295677 781321712 30576028 291984281 250809519 336104563 595675129 245166821 408835448 113321564 250617824 644447348 308949105 686584562 428374850 151844190 121343431 23135014 53428449 782510115 969824720 782094142 180759473 70394296 564436807 765243030 31456280 147731281 312875707 120422291 232161356 82637967 916692837 420017176 837725925 599097257 500758814 723412203 517754179 21245087 701222935 135314456 635753565 476028833 539805988 323975293 711770518 486563725 812455033 331154027 477917512 941342889 400782677 598967001 758056351 52396004 638439936 774802460 934861916 41369145 821369664 515172996 815078259 662119289 971573547 641668228 219871369 830839733 124140067 338357787 38455951 117121058 433448681 701434020 89858415 669417822 435813011 534985635 967677497 318579400 360174549 886806630 816724721 400940837 582141510 891572748 965268243 198095620 359399128 479482041 685098815 324285995 834727789 880446316 938618536 558476727 303096093 34516306 953264630 463617903 758502852 805734202 701861871 157253249 521751330 33038351 18754395 289115089 18967108 784643127 809826630 193598325 671457692 994457927 996616280 524179747 634318160 467517811 985438542 3997261 956781191 805442675 467658093 5658198 547437046 241268114 752242418 598165724 98483451 98083579 632295198 980753790 909604699 390476099 231931765 251667902 761916113 133834127 146066762 684448936 915266763 754109716 585312654 391803277 8746391 165284610 187693430 211158435 421799113 86550228 188227180 703908225 634459330 937605136 206009645 947193681 478983336 373184352 691745282 176785114 468506358 997545773 644653752 107565201 699871464 167548654 28800051 60488754 293948235 495296966 987760940 33500305 482350457 825042372 479532189 76354168 657284818 161701140 557604165 919432051 839448397 476044298 787425661 452402899 916168886 551518269 717493789 764456340 524191751 287313827 677850637 138867108 897816828 876721074 800737429 772832160 275319822 492421177 975398404 838006232 664004452 406124552 386827386 211056689 880343728 802935813 541873883 469098602 669491018 206100185 416477729 704876597 6043072 56369045 789370929 481784128 225349661 70074148 66362943 916378357 557124823 824001270 183935611 894852767 967939333 316770140 991362065 399833369 111116959 846393086 730621532 846451174 895925974 957996494 185828103 746868060 354286482 708004955 284809359 389303921 328782413 847704181 390625116 295976393 683537341 905386095 287387847 38219700 512030504 290864673 82671933 734936489 142182913 702036748 7731739 344899635 357665342 895946664 629860516 241590425 305932388 169493682 965211471 125240737 327056614 788971565 761135304 54201628 258835382 898987413 187053048 188920813 178120747 195849449 876746582 997419294 383034121 124267681 255012243 285230638 628610328 877231217 979323824 245497804 954283118 567473145 269301432 351440510 586902159 909971368 572548641 16658006 919293914 15281576 332028226 486934270 589736988 691428612 553101938 787676304 376583361 942058496 989481162 703174686 770883848 594697866 598834938 40592035 941023217 5945751 300196574 537516953 869978000 403846718 456222214 848046840 410768869 840402043 955941798 149251917 404941028 334092354 304446764 682720203 553041098 607385132 49761612 49256203 331156779 376947545 464088877 884803486 474773111 375273840 959259501 170551841 616739577 622525706 308682974 452506940 109841923 357646627 38754622 917717915 364372304 771873940 891589330 692241166 895999420 313064541 132914182 129221844 456126032 413349818 549168243 547297822 376365826 470930630 126356532 281502431 542992918 434888955 404761064 959056933 199595367 379385558 762946280 749453248 485951584 567458425 432804139 418054650 408276032 66396798 664274602 622500090 347905908 616833903 977562313 280496284 492788758 698136640 965182448 194228121 965721383 411500472 912535587 901545358 411673416 647389368 132823020 910433171 139888364 234724386 460001388 832146473 602516012 729678521 741365638 369720744 773880305 837774793 691547947 36396747 149145531 294195660 237847247 90891121 112047720 103335760 785783418 943583442 702317518 505977288 326726476 287658257 248571583 213035331 804453659 76094669 54314707 814390852 121108961 508312191 428461543 947252494 717456999 181931778 734286868 558696399 72487952 973373198 349901270 64486393 801854535 64675915 275333246 853908218 776431212 610225097 631589369 818842344 144873646 848410885 852134579 332800983 695034669 453142793 211421361 465261170 745921990 135852594 871766144 220002243 912816371 154171908 24685614 665464902 102192317 164480672 853097219 687575393 658902553 151447405 661006543 842591130 938659254 265960545 345462707 433487145 251276056 49552165 556088319 978669919 850074136 929099932 893780379 419668777 159889211 420292686 441588404 927311794 110293261 815859531 40894332 996058490 47634254 500929101 894407296 862442522 965154180 426771948 398240120 883473260 803890728 230491630 761308786 828604254 96770718 356500556 627569596 985794902 338953428 405405474 388914775 752581717 168048005 277769407 642650485 1581135 37224883 213538067 557125103 666535218 949582917 727192834 976227468 913056532 110614998 852255024 387063082 424578185 524419854 561706379 517969982 106779255 590048945 84763961 449903871 463731613 57405365 842455093 193311584 317590132 391034995 284046692 284116961 517126002 613018084 989234943 996418642 140690422 45399295 578868707 142898506 875980197 819392080 774547868 860942874 979340985 972061638 809762455 425470813 217761181 792098919 935809897 873514269 313126937 561690892 407486588 948085825 684049681 137648351 260550296 111960016 365663660 428484197 478554489 28440898 449643981 665562514 963544258 511837883 410631944 260894267 851492778 115178177 799852046 73312070 254447524 571333263 872975409 991997635 14095949 169362634 121139099 382320132 948503167 557043762 208479567 631563415 460667845 552081640 47323375 123918040 384633049 250439673 980154115 116208455 692595976 635581021 423198085 971775218 720667884 975698985 193915167 682261290 945350719 586901241 664042873 66999914 366448699 272629226 727857399 595715932 638395544 636327765 243692412 899535091 673109695 261429489 604262248 353043960 91358387 263213506 422019833 404681622 197742393 695413805 357293397 952798232 388948112 315346651 91647366 790488037 183268403 977461771 872178475 463752913 793034247 674686830 546178418 664017617 647028791 501204662 759875659 82327653 999697926 628648365 270740213 429881565 71586448 123561471 354941377 488051625 237950441 200401736 276023084 719878665 510145876 817791751 338340761 671711372 301339426 973376276 191765172 75087561 993195588 839080375 560377016 192862062 417249198 103718598 189604997 141510509 718500016 131738125 257796842 577457273 788030578 914427691 945108724 141796349 230551609 859071312 361586385 4439525 948054670 490729597 588029387 295266496 913741846 772576902 148672703 62943719 418465697 922267614 574299416 591194373 479270793 481260100 578518049 778730382 554783873 676352854 441626359 946008555 919914086 368603053 15076275 399114369 365120496 242696564 823867835 925125031 165374132 375358143 992502131 766503912 36902463 969374964 507586636 558388512 702294524 447535080 897226528 403108753 705098021 935989458 305918853 13444795 257578418 293295379 940341818 4335782 76586936 742933256 898880699 370458749 229926101 534509473 913406172 968546800 176964670 629615773 887891004 56031900 581331408 70972063 226906875 85660763 533259181 448649552 442293846 543908469 366274867 509196196 163187142 122699901 508713995 113220118 963436074 628624803 342275024 506129789 987884871 945319851 104005378 762439719 988104404 460570705 280920078 84456455 971473768 86209100 274743609 915024098 811643480 445209162 583373321 585329131 653488871 571620456 250364617 618572386 131317916 198374772 474726327 864220832 228910120 489625406 356263896 333811686 647471935 154826119 898113742 668103118 189731682 282195692 194645831 693689866 499290865 792989810 237295151 178605418 549608395 134166252 164558302 307212316 837586248 799455907 468436332 421161822 238568955 507845059 9944296 158818254 814121148 465867532 100875574 851387768 887579796 988560169 57263816 111370073 901252731 512587145 419795152 669737688 550418017 752667275 435287514 338497555 274210191 96659983 631885640 461375509 716457732 71478489 922013035 330637784 353497552 909262614 744134878 242511310 27041972 778425785 138859749 811789335 877911893 231513593 326460749 700966338 497584555 930670078 864517684 163707212 275876897 357957658 784302292 513739464 827790268 391163091 469752987 505880692 596855917 850181783 46897910 243354088 536323583 422543067 470416699 544349448 210051577 350755759 91902990 276648239 351770201 215168793 613731949 128658240 685076474 122287833 28768623 993244438 608061413 368591447 930887481 575871551 487762355 790360570 267259976 20638295 463993508 865125940 2088598 363271035 123417879 778565727 510238174 387601194 835994509 500335316 22273691 251384034 223739369 148955008 203839858 990262988 138073817 628557864 176908239 430939516 589792634 667205311 57360522 289102417 157569649 159530325 483922807 484548417 406131865 932472114 843082828 230776212 792468244 669431340 975827597 518401813 48733038 423204806 166021599 934342990 691620717 895907189 958941279 705767145 631842664 83581284 562124148 102893299 270114636 843026934 270467466 51669892 693413343 670142209 401823689 997840936 696073168 679453346 985101962 501472148 672129687 637636971 698121798 820154499 136949925 21845903 382261344 47968195 85780098 71079381 405953353 543540181 753533905 187970319 257553359 312866317 727879127 794136650 430644696 31174836 992098695 113530362 559939810 655203559 589574433 571387374 553609199 962563790 531417084 862109758 224961663 833418835 697255696 150748216 5168744 999897499 456166892 241386825 959270201 171896699 359356210 357325356 245147374 333107234 421618212 910873679 545825469 394697711 876879556 128271123 84224609 71836880 273676747 766558991 896933087 219680605 930791050 201707010 817429217 932045244 808961624 245862520 354644044 923167642 884753813 438613856 193510688 995264484 812658392 149302036 420434084 770384527 433227578 485106170 420016160 51860464 548509676 672550110 90163498 719710527 719143347 472693848 259810972 86270819 776241543 435352521 956701515 437719946 489180260 962161921 651420760 896169696 255044984 622544770 198185322 340995071 615877490 239230264 151411034 903926833 601420277 527723514 104339543 467739964 431188211 97567273 798768256 342876059 346340249 499849020 114886856 43490176 503172545 203833694 486260403 779605637 181633068 18945616 863939118 943630133 558154975 204390375 31341963 794214044 692627746 180218415 526116043 305764598 446302885 19775604 722656423 422248338 148746281 934437287 174314475 133882319 225262763 658442359 249912711 848922099 33549755 124193286 745417778 770560862 538976950 380995695 116658243 139437930 496527337 210883349 913887496 227358785 828043019 824476058 752880398 985621221 334595666 353907528 396619449 21591248 484994228 620178107 467731767 806927735 11819490 893553879 868808967 264212630 747961285 758009044 937737281 154525704 150580933 954966222 283821300 53969777 190630967 158863950 290495461 699655958 66946959 307795427 432884236 474279581 174310993 878538147 373803605 210230487 797890747 691111432 219542349 301602018 728924929 377390239 76003574 164956306 622629007 898593835 548955854 339407936 899403971 693262504 320962846 736908940 15639274 959765327 155038599 34246347 362793713 115720543 42725044 440298141 870721789 949459904 86429721 2836559 645400870 778082875 391659615 283709670 308456337 90997030 493324946 332276550 555371073 912832862 129135245 809634782 712146849 874156451 963095826 983517273 420215179 377128967 685851292 152101091 255220328 555373518 597895976 941199073 232586328 932492214 749924053 837673745 885482284 273743660 248275644 200161292 844453739 655396038 302724145 919378769 51513094 152607407 64185011 503450353 316050487 133382520 738694049 140129327 746838830 69785044 102488593 753366161 29615482 858009700 821200295 648376230 879183214 874236610 29099543 78162174 292954655 399614518 519657272 8281708 885789529 163566006 455795293 372969963 113361652 428267206 198297801 303844690 524302409 93832360 645807899 504469094 73008168 499663481 170515908 823829664 774114972 671207656 799313422 596575576 12400060 803432964 732602536 502118345 299775539 215542525 273592745 920958211 940833497 99861921 572100895 653048304 76823181 992413501 835529931 476220805 56428720 444252592 821898424 938838401 667786165 466124510 763817123 215488313 410740279 460651876 746128537 163721023 146846322 652477609 838046074 200997498 653905354 685972160 759805629 446973603 516963453 665678305 146653340 525310215 466773922 676890024 234321036 38575861 394561767 637276395 618088139 167770293 230556992 102261855 33533042 3450695 615700695 386988357 364940593 214892416 380228352 901776305 25335742 996151467 952571371 582661484 585966905 324872457 592096806 652424078 254437295 479916086 416076661 260734590 916329484 320137465 494532003 498405388 865790458 193586918 966206145 65624857 545111483 59117278 663312010 682286530 486595543 351016409 521926967 757468451 429193371 884850612 521782556 152748409 228358711 661357268 859495307 628608276 25969401 542160287 609893695 388294367 214106741 700667788 167057463 912096173 809485489 258295545 222214671 899901964 812670886 453879857 895041146 866500841 553698160 161818569 320463333 677628325 26570301 278212140 421507050 973374643 31048376 796809686 725337400 664754374 567275283 278988530 625265128 96848092 577545093 963731780 49585043 258270396 241819175 904627972 407268492 899381280 671482332 67807391 472625148 371239604 594110444 399292408 939154019 478344002 709941122 135035025 837914746 892987962 765763019 289307133 477948397 993339529 997752690 643176259 205598978 598650105 303241404 24846238 605297962 505850490 408279786 940658503 981018097 711613666 519837480 852050974 476248310 583844972 895587011 628037434 794809463 543269637 581557464 642673711 342989973 548177499 581025051 859002382 489853285 135220648 23872531 424132817 505729682 666269914 532208611 404280508 592823324 577195382 957300612 328971411 47098742 165959050 889659836 552838137 727696099 260335986 798861553 475867082 749642299 345572893 493662722 9204415 734663360 39772697 891903936 522370828 195255076 710806565 608158258 302725652 248650493 604320974 712952354 794633887 241131567 407925338 728539199 404964554 726279218 845134352 962434780 856477923 430457768 441321100 582013489 30705781 337817332 324695992 944919475 921804422 565729871 352025733 358674977 987141701 651088468 100750107 384895281 634226891 315016692 394094410 296247836 571432019 721515957 759020705 105422916 465981956 730819865 391257299 649620602 498266415 922594771 142876389 765565931 745428698 80444685 498818209 778916777 875963288 496276654 690542206 469442639 184922651 666040466 864845693 281105465 356750797 489551101 697019421 621062035 682289937 806492518 758359068 321270328 193168011 200125277 113271942 966918408 591273194 747626853 728974754 740088536 806570832 679134955 115475756 310276784 893428959 728344061 691885893 261152075 315210973 387525030 425881170 826627528 59533143 408785374 51568938 143762135 373070327 174118286 399398560 927954480 25055673 517508617 658944210 872831971 250700934 317033299 566077740 41435692 793063452 163361728 374414090 613246899 15716822 658896291 648692473 733650909 940303297 710337951 731978613 183320436 426503966 590508481 72790820 791458500 807735251 258161849 387253882 899670280 2418087 231547935 800955646 93155011 297200945 164857061 224950120 85064378 520496551 337890277 203376115 10849139 950540679 218710674 805376696 429127498 241870983 99782985 822973110 527598785 471724903 441242431 355010450 793691271 148383584 679877434 255270831 446793797 485376589 513647809 99388863 384461056 742671525 290171015 402870894 168975526 69592182 126633724 866031037 802381466 813403406 720348662 357712236 309592594 119801760 115514277 637173733 114383260 428088478 675587105 121417624 574097365 332380141 373923603 237078364 101901062 137275275 273817557 507014685 465179260 919888336 951945667 224965677 999204961 33362446 560407060 516024760 375595548 900133367 414238749 182198314 188923565 323203626 161516592 41892908 824728458 154535536 361428871 344807870 223673846 415409041 641422800 270909844 202034595 360485317 705271887 593116802 286784455 139852773 10433468 479627926 753115098 814242208 591528854 424229188 621090787 686837819 117467484 836535653 834320216 413591692 289000719 520543929 871912395 515687540 762697275 956824150 300687697 888718787 430929926 780722461 109408763 695909151 44282985 305302277 30721380 669199405 982257805 367822871 504030034 136815705 672776500 810025863 700679692 293116886 466076580 25003652 747579640 556832050 220651805 901107436 514989710 739457076 550354227 811832847 852057479 573525012 237827184 609327815 856525478 136071694 849418785 16086557 268350554 119229150 405705601 84097990 798516148 725055717 947258395 856464259 315156574 344155374 452623731 843752103 342412018 29873335 594208976 793312813 612584555 678949125 377319820 36672232 945846312 870202069 751428708 243176554 222791783 327925261 289944135 988055150 96434425 332520739 280553809 195172008 878733668 376537584 347478943 619219888 82543531 239911564 885354774 332120819 490099398 404296911 292276494 588391411 450868413 319957217 147984904 280191669 823367501 152411492 259380056 465544826 673394964 157872778 488260954 207624494 149173710 195868677 292077858 512152707 734035233 240367740 531229104 346701722 259614989 736838044 767011498 460708295 497333083 118066393 876694930 589796484 363085152 903652824 11844950 978515890 532087671 108925698 163937441 704673667 890666540 149520364 59230609 222349521 753794280 544400189 504286951 345975021 658448824 682409242 697974010 988323933 680148644 764484045 6179532 236473910 291679410 511525870 972286480 162609383 522590672 135644212 430218114 26432456 960277148 943827817 708278260 555916548 464744793 83662468 65368083 454826365 562375846 881385877 124275529 176950324 344162290 736793590 488131513 647769679 547841094 328895886 871605030 622636734 680217586 417300450 505532466 210055783 602545683 305567697 650737298 128361123 668966587 154926088 695057461 535918196 484551806 537297972 830328488 568336447 930907666 319094557 175544572 797552333 686457747 887060658 284104567 177928436 184204272 690708289 5563445 264324224 975207203 940810493 704547529 200173611 449727613 802455699 424644280 630706110 921899987 2231690 733372693 223831953 560230785 143443378 648011315 239523829 338034238 691347001 65532587 358505348 872567302 953235443 722761711 338548668 971401678 947134988 243675946 158006345 268413483 129833913 641716780 188659870 533610101 242998363 337212537 223272108 253304533 744036013 621985198 663299707 847901110 773039717 669026048 985913415 616108059 190487969 483753890 966518077 324816139 349305023 537807925 350501821 895093947 537742865 753238782 953141445 665992696 791413498 798418453 354381010 387206761 969574110 818703156 263927304 707033401 274314639 210357725 947533408 479537235 600009086 719896326 279133960 227961741 385374092 225818173 391871288 859819571 539457977 918240199 405441134 274971569 763870884 420690182 358226746 353062506 761023273 307888636 601996529 827535302 434654975 507948476 364869340 72809574 550483003 279134424 647347062 183089010 939074595 868290754 316999272 541728153 161708654 529810538 203681682 564363766 228007192 995098886 825639925 343442322 741628450 872890272 550904114 783810216 322682041 63641408 731669692 28798901 782539421 754068158 129079833 744481604 51823700 670582592 272686016 876143297 750627185 279451431 853371969 97782744 780170218 997224984 259013321 367541570 297191056 865989569 258520063 120317868 441336225 164528906 605672044 861052768 270011956 812465074 996420796 822340968 649636552 887216230 344900989 155902140 527333859 294627784 934847313 713592051 817284645 355880940 806254062 274928074 452669535 683142273 48442877 183451835 998302691 341361047 742952331 725678264 593749207 946329743 967147016 530947395 431604223 654714078 727310632 860647167 567860692 203550188 519197026 484810254 861661081 334985202 423590589 8121976 353829757 282669005 189392048 3269282 452426817 968028530 26534990 224525003 709155924 549626432 993849420 339151472 334240815 91675960 72542835 188393385 499657942 648760909 231607454 172174858 69059761 766817724 869916148 431576654 776709817 1544338 324746725 331672848 555578884 727826722 564549202 426922616 975528907 177782605 251012465 543947797 428899121 264683141 288608456 373196217 790029448 303513803 701015718 269403271 465554290 980289834 124147480 336547830 174176702 378827123 895555579 972964279 714105572 930613111 989102143 401661938 821360572 808498275 23993820 726107740 531078585 564893474 389165237 867176990 33478957 177050642 986779404 734097260 141414526 652520620 532271549 433578259 429710618 203217988 898333626 763671603 430528385 921891793 274077419 120900128 271185611 226599531 921810741 990818050 472172235 749870007 101834266 389989870 906473086 917198140 240505006 529846909 8073724 91644135 122233649 9025317 441163964 599281 449294315 223297304 939428407 45366683 357876308 87153785 470339852 505577172 700229724 56408678 790200364 330989553 41515530 968381320 363770177 979469110 677117305 137786328 192796481 142976997 633330103 40002928 97127760 925664627 511712254 987526960 942635017 522675657 859494292 646653495 241092805 628203278 87319758 46858674 394015462 459684221 196477756 378130187 253044419 692611827 457458438 386275622 950758520 559735132 430581205 83563277 427027451 259942578 173468994 420069265 318302818 317564315 518777074 115502263 72146360 972530683 383536293 174268321 708311602 297044774 779120672 687473215 27770854 453284965 798274396 218215803 40985862 964157824 873020877 579864484 111045037 425278401 261122536 394713919 635899551 719475168 100849122 999435306 398669843 874410455 930133646 39808125 192972146 440196866 255018496 90336705 10380236 114998771 777960608 222215060 512655510 879831398 15314258 300932188 160484573 134932138 451729833 288140513 70887631 150508391 383734761 907620582 56522966 892080495 176778758 506574543 341471671 443813844 433793688 45617346 33735903 28454987 78015028 421021708 532175760 190329197 277480205 997251346 868097257 91403629 327931612 63029228 101969587 753182133 449117780 994162911 635673348 751278252 745555968 513700238 264471780 351127429 504932145 270947102 672903249 758287006 405547182 958306076 347924152 965206653 555882252 527948993 460752178 725305142 449550657 751457607 869106360 308413209 65704491 936979695 540445824 735031943 162174370 707224637 713153650 882319043 380581455 952383783 514112657 641035100 984578878 235471831 560812556 721661581 585290114 433686916 122218183 863542853 44723469 524116309 104766974 734015687 985896742 928392696 833435950 998055568 419612132 897195023 221916753 790267212 139214235 522335492 623786064 803524409 231346477 61765581 414503326 629146945 98778255 569445153 109847763 21904940 279785124 230730746 325328786 480494320 639053219 365185622 272819251 584490882 235773020 371741779 944524369 402119346 546318725 428557922 654465166 518406151 166408298 359210687 58752334 624774006 268763369 237593520 778552169 274470803 912515975 947358601 372224424 640082730 707284266 52877307 533203219 933505714 947174921 307517003 205428667 954334269 792765430 987877698 838999736 154658969 943208219 357326327 835765197 657747577 562868592 873148831 998991718 400179363 823225718 259516979 204198092 281383541 930292117 919015610 809882307 417895708 90419622 71044003 868442117 636387953 101792769 618991198 738945729 43139692 389280411 790987127 654791669 873576159 777515130 805955306 885247448 570080550 562226791 685604238 338658856 367810797 55326320 955949394 588862692 368290222 649958096 683120496 855207961 21650082 467280621 544603959 682539391 284515560 30663549 216109143 58397849 76502559 892949809 301052238 547499898 9729279 83599841 648843009 438483173 842847941 332653874 213655343 902420714 718729624 693946939 706536939 857440505 161457953 273821106 852980523 347666242 662222178 313381268 538678946 158873651 730198318 3663256 140135302 56556889 838194000 109929326 873349674 478703097 189827225 553597509 8194702 864144722 687690217 45233034 602940046 515820337 158534798 386654274 725955988 375893835 680850368 721305122 358297173 46202820 995650411 107349755 782826000 424512220 733961281 399606118 729872681 820146970 894080516 848668603 145695148 214531106 752537790 796751744 242383635 484768568 91088329 53868029 676283101 334873542 238594159 958883513 249218393 136414221 607150855 666658879 182422652 999766388 351296002 915945897 432782109 894922353 697848922 17523268 403284823 900972333 900336839 344514429 163963969 274088479 602945739 930120165 361208036 527998848 297816961 435608283 323190639 992891558 636921691 345488449 92465231 977143212 684584516 102790736 277716707 464787485 136799688 251598138 92300916 453081619 575670534 494436400 819714306 13019667 168043793 484858982 132526296 132492810 566773368 262456032 696101646 951223922 540342308 270430686 511833690 574354727 996956538 704616264 63174194 210903110 448589012 575574123 839205495 829752260 419749763 156868462 66616779 992919197 837064616 404159524 798496300 557028870 204887290 810765149 922971771 828230683 83378904 100663699 973620346 55786852 15779889 474756386 200020105 833980019 214270778 545036253 823042676 91276405 377853634 84401840 486102851 134652551 206597718 104775725 255054767 142497958 600484240 785283608 362623988 616699163 270068982 890856621 640958807 360794520 983145136 407534472 208725026 844309664 164343495 786685377 781313164 265875696 159507106 17869429 477826026 435342033 350491587 870659391 936756008 264209159 702707877 258916816 900335459 94049047 940916570 53897281 500263002 303577426 599073197 858630722 332361063 76938912 732367517 47569520 463498687 324237091 445663608 894675643 555963487 482126426 862706763 117119784 842597758 735260499 489010472 808688848 889844829 255561875 309347155 172759667 540390563 460405673 750680910 406520364 209280482 415103451 837123009 100679557 429407832 153897538 20989443 529325568 287319602 131133589 134295500 461486546 571998938 670700035 529256223 889817352 42808225 975108434 218550582 802497739 75281532 655883277 523535383 952006691 84281282 940472781 46015370 373458521 629592112 670538399 972866905 209616828 172157194 95137875 161995121 167119132 944279322 66525298 600872482 606650918 419825020 963869750 172242290 942507416 100703281 752311014 333298951 984737593 119840107 159870998 931775403 846091933 527460068 840523504 782328838 808698956 929110664 746613365 595500598 459869280 935267576 248330211 164740802 412930219 658425063 83567637 267134015 953899400 387406421 341079780 321810333 856449498 714086832 614424243 789384909 122549205 745790977 644016319 562545097 609429543 444540760 443962101 789119771 88904933 419833811 204760709 195520011 122201614 118510921 319844916 303136634 898538754 263971662 121494097 792585121 709324319 690390543 349973144 843970249 900710091 200772278 892498505 273932699 826959753 711616137 572700874 480956990 77203754 83908723 923074830 544187698 595805218 798406218 757671677 902977519 474244194 967573174 285304348 513434070 80783930 715016540 92280222 389534613 840495260 245988446 294412973 646022563 100806769 475352213 648767152 909766287 714513666 84414027 420218817 127090236 439468433 836396548 570454796 990340285 549646308 654570140 374970338 792303125 316906791 705346268 550906049 283972856 695743861 452401763 976048776 756773887 411535560 87895552 682280168 969378880 129642797 761760058 770266852 156169195 290862089 843426478 198326001 931474325 212999570 632991744 135171616 500460409 984004726 118549058 331007864 573642379 284679038 491418279 633366905 524951428 410684804 224434148 231179939 49365055 598760229 201319282 407740443 385145572 584220483 156960064 996180597 136583410 642473098 390193923 923558960 230811973 273747186 782060702 660160693 324225409 377913925 658074689 205314676 170512698 554287217 594522991 563672903 553841577 740965525 732713259 317045402 122518672 488546067 633487987 871901992 688545861 185210720 341304683 212560535 133176943 149582630 702673064 828383678 593045279 958753544 784671197 990248546 524713663 701365723 5896444 948111344 417823694 171901111 143897427 779799771 335942647 813028021 179306881 755296408 838233242 389160453 928981916 778264692 434497800 188098006 729540493 674708292 983123384 322022207 305869797 669408244 651106358 825896494 251445855 993237498 150385239 593787106 101496974 64773076 40120043 185325453 143390965 295665516 640057823 355892565 924449163 343004151 579189135 135809911 387589129 459212088 942301068 60240993 527001850 63025538 456192903 629586434 44393905 142688867 312539193 943960270 222419885 999697926 466435727 942208638 914154039 308453115 632710479 986325387 539043150 476832550 304074001 99376702 806785528 120270230 199653571 821892149 435151060 32630553 831232575 875550307 193521942 572815900 25849215 75779377 191482847 709326553 632597451 549080571 348396539 936062817 687663689 420484833 61099877 117509074 725761491 566280592 47040743 742791858 267491466 641011768 995495169 586470171 668777250 700900006 457817637 674610980 123854921 181441571 76865630 361838084 319157504 297729409 924382695 78834520 83766091 240373058 610868286 288255515 108773319 33850212 382376047 525815897 980905347 533321558 28768355 917068213 188167978 386897014 951066563 69347233 172670001 726124765 368562428 892040678 29332507 39654308 986785568 767928092 409824197 505101293 966577346 228938009 434927417 288942617 485874628 113045153 742004701 791644066 243190770 163874377 516059018 807464231 305974278 255347894 632051987 22848500 200951067 901222939 54353419 315263017 592537918 158473580 598342666 324533711 957462912 101693386 556156069 29402100 665596333 216339779 602753539 587733266 864254014 603984392 823032015 233221949 52169478 773252244 796192236 409306451 752031392 233085668 753704548 159192538 389509771 397807947 848077960 328289713 785195161 703493841 316034998 438946964 486867531 805961968 515011576 221612483 370652961 84306384 714825341 877255059 958771799 773838001 116625189 18792321 708988971 802380941 278712118 190267903 693706555 700298267 482491555 647759659 931203475 494037724 242833541 190745456 990605249 786715406 481684862 10210965 493883931 920138672 113726845 320679144 430833061 564879025 458604719 887104509 114018613 335706841 219769207 282696455 27388273 288036053 889117499 284182254 684704660 800686141 279896943 111746905 815012289 253930404 803212569 710780375 408397141 52081721 891832723 273113714 670456068 351311485 823162366 101053944 534570370 277211785 5695752 464299955 867058270 252907346 427232790 55418445 519960968 466919831 509095895 770425646 219940497 227381740 949757930 707137045 826254700 92483135 329865114 469748689 731160897 473069169 643954814 90151180 216706436 935985526 33501807 362877137 649426269 18941214 793554616 955283674 841208013 805317269 67375974 867257326 718449360 584770638 500729247 684112357 558527196 520690986 610656350 109384635 346656788 723843972 214358027 262266853 597267499 96772946 442888883 591866805 389166388 271953951 546125311 671240818 529859996 418980845 166706231 167045990 7252794 729208502 223414475 566884177 923002574 299392242 12058973 856656613 759430104 831489514 385326191 358803585 89812061 762898340 359174126 188191408 173943423 789903369 282721741 397704414 957884787 142054392 370194884 724790433 934755208 166573646 599399657 829515358 339366236 361220440 282721551 451826489 231806194 404023068 882642653 66085792 693791887 351459789 434157576 882366025 79586292 979609462 784684392 605797967 515896187 589854418 921755695 350725657 26842312 91727337 12864434 437417707 102511327 669311701 46125498 338285768 465546432 999938499 147099564 618558457 336042546 425566569 316383350 696496407 755023430 928706000 307637877 508038605 118600680 604746067 269007224 644694757 960872359 59236531 50910374 985815363 629216530 397360344 807530680 670326634 490089181 770293214 200971446 524278854 10671219 408850308 103627271 357212281 969677716 178163261 669357906 344204356 120552102 133081913 575442235 92324081 465732803 517193115 94132053 348878828 956815372 318463441 426114121 173628996 131987117 853959409 292392052 281927841 988764602 206764631 306009368 869195515 17967698 73470742 658478114 921477460 479386324 243994045 149052301 113634327 881282465 6146507 963780069 349750933 644867906 674708723 63192910 553499406 817852678 815329842 34787149 833487403 310569747 360529809 468900129 674142061 171867358 911230538 778853760 873888092 906437513 422240340 541756867 382649237 191491151 736439468 908613064 606922043 94567700 816008687 621544918 85653263 318999035 906124888 322079176 281556824 437394676 919642728 453402411 886251761 994556009 41431563 302151385 394589013 276333425 607064340 853888512 248160022 877583407 416448840 746418041 414014137 649045029 893713871 695524409 199029319 223253223 964506853 637364585 345325075 196908329 428437352 687714890 867754094 337144814 678017551 872918253 234512075 928951196 390962635 317629582 591762699 774062635 841291468 499448976 869435474 113361595 994276931 687795113 392953153 425442713 25027787 837654002 866082523 822711626 467343703 236931718 782126864 214245476 2674958 681460990 54389327 211056398 855114276 334607642 278924103 279783913 434427139 92554485 810287583 401926107 861473380 524440100 684457844 171495479 445390726 960221602 619231742 967340564 489391730 783905258 950317757 405702456 844031775 429707925 158668810 398664595 739325644 877185975 714591688 574012524 650779434 721798754 898318439 658227437 181451917 457370010 297465071 387639577 234004894 582344859 553754869 290917262 615457963 843478856 287225716 635508040 80097157 581016818 354968573 438078299 826890470 108037390 217161820 279377861 852129800 574680348 765417858 943192693 490943503 367531235 993216926 915872969 241931375 380161554 77535403 576110104 310786796 750928867 422586386 715912257 219102929 502341665 712518617 111563363 58984014 923229219 394024369 473782270 707015230 432033495 587375728 245693815 768053865 936970759 243546392 600721041 718646650 416057819 318250748 684575987 47855882 893181349 882938565 649052518 357483787 741911613 969097453 341544357 394516577 286682490 483721532 799594633 945417427 920520509 808988958 393775997 220296986 141759196 214719589 261016846 960117161 421282609 794953525 437126986 844441200 662450410 573702693 474735735 405009392 96631308 260035760 266683791 594320935 477771652 582244198 589815642 564898993 805029260 575804628 7733912 621416122 145420294 196213259 255931629 167855386 168882333 182531618 666043499 197446610 113614123 626031056 606443164 881299491 114747211 819187359 492607080 343370219 142724652 446608092 132621534 864479248 891158234 1791172 357638374 424588907 486299625 254105858 202140059 663077218 667629093 942748448 161608744 688257348 399853034 328235095 813122769 769335970 13380550 364060972 830158174 15287289 6977502 296197603 444728601 703834982 765664418 295291899 230547101 626367295 459488481 939618187 713264043 158319328 793879226 837733478 657742024 377146640 562583423 487241781 954374727 420495229 613386898 944978709 427951969 233125417 622550183 584514512 388623355 706944720 414320791 735127025 412769391 42797410 791688343 73108827 41439367 136520440 552079358 856597649 962607810 255003760 86180885 662123374 458828079 547612393 520070251 912811370 847699520 253959957 309276155 80381877 495233689 948349990 954733455 82643537 537193089 279008930 440562262 836927988 173521299 357830649 639892486 129301888 670534836 747655554 433860848 766370012 648998363 208543198 499285784 572834413 274629197 656361697 981457456 898063453 393158218 999343585 843322817 304301304 367021249 66369151 323780180 116795525 4355229 233768711 428794545 926909413 574741354 890469246 995238468 251718908 396755852 635426695 559115366 578750521 612465196 481687656 973121358 468773727 950202131 610033789 887109535 56041871 651222473 568358552 145329366 737732719 932646235 311058218 322555082 730655701 551998262 756582238 635762447 692842707 772768760 640393420 792544170 313064036 275992167 475826833 84103117 686986627 730297934 388732294 1368474 881741201 84087613 27862592 840664356 109658758 782720669 326227828 217507829 797275489 260439450 729319415 395197653 868885395 278928112 588920948 320269416 184333321 965109923 52086262 653576017 845197369 470540970 756399050 440848197 850280097 92596998 823251466 911065676 171523598 409521623 523496184 787355803 615565781 237714530 864962380 503139539 630590279 998237259 239075464 659433991 614615304 805927539 203985910 226386325 363761538 919161531 401986231 963516652 878728834 905483191 364639416 43549873 60284470 492500937 731164654 295641429 869581844 22268089 894578533 712987556 388980647 859147819 970637200 505831629 4219311 291980419 881123569 223998027 13255405 885346543 605700314 355903741 712722143 223291767 62001094 510950599 328891389 415057814 613134630 214293258 488400285 724805126 981636072 357297260 567595597 815386219 303080535 894365503 802768902 379699810 481610886 290414313 9894598 306864745 335981634 706766437 870134802 582047178 257676122 786917153 886589682 39325530 408771202 354005460 356256099 726173455 381501165 578586859 120300935 768071053 913335591 755204446 88773392 257289022 579317660 414988194 928465878 408356142 65546063 87443688 79760906 255178455 842975832 838321751 98258662 180920304 880511993 581140743 139153987 472308485 103683473 213140903 590910032 98955959 70151915 886920326 201617207 912807995 700846729 653645330 394503857 999043605 910576492 792614113 896390053 146182707 502711464 246498160 682830374 313506072 55496831 903150671 503347368 689719281 287980721 658857129 837906020 33975020 28360696 109400761 815396179 216779124 669939407 608265203 169718238 412047713 790043721 787525925 613998841 221863284 469555933 976329169 391495312 584735690 209471072 442352509 315229411 154485225 467341703 696787493 507901327 67455193 349580376 492942304 448223139 150062631 265671042 458858436 295532648 584176203 523781986 939479109 937368051 331549340 577733694 504312047 496994809 69765869 924339448 976061518 374916566 783314805 284886429 197973416 561842678 899765686 53392200 880005981 830380324 735101343 725497230 683826057 354767364 17876214 335931408 166828653 584010049 817094357 175468312 949910768 382404908 898150187 427550096 357458707 493496063 813274885 635374753 69406831 61753554 374488392 778446718 504709690 901173093 314945211 335508783 568140209 962918073 187673327 233517736 306033641 46773431 624030909 356110148 891316983 722782705 934387436 422770459 898083749 716615400 905931866 542367619 20265495 313482165 107861687 302352338 430002157 240785172 94311148 924394741 514843277 605055322 472625546 621413757 134321734 378350755 588993117 276820898 161988507 726747965 343324458 523044330 959606772 833697338 705864906 380499966 849491783 458195485 80637482 599536692 394930521 560065425 743824088 150064383 567885760 148238339 651884256 655462331 43843794 561621269 525330139 506718701 605602501 663159994 838890717 754540270 607732108 708862235 739975285 578296118 563024725 615800572 146825176 449840701 512244822 219581891 66638658 781995675 434078127 523882512 276509166 768660560 746459602 855629642 438985906 730363155 606854893 219584391 245901181 812787309 999321322 605802042 773747452 621950285 279326914 683670934 852290361 23433743 911141558 820988492 223550214 356308761 162054646 891200006 88323393 16297910 402094455 754271329 209379660 275428446 615166263 776871688 764532956 493543605 933739391 101149088 640416220 276747030 610107087 908881730 733701059 427022262 162062986 444667884 177055734 822812442 581157861 874722311 785088630 82930941 672689344 992427486 670554161 935897445 44209512 713562146 228218040 628436406 936451661 163435061 343536492 839180180 558144881 916043990 292513144 960019582 758016688 697082982 712166443 32991053 117770652 185005919 989183558 658583364 8499014 179224569 330252073 105020626 273484336 935262093 607695770 781839276 771161357 202720712 29638839 296133727 316704223 660806443 545472353 736465580 11514755 60962274 497958092 322918352 267720301 238431128 342287490 317952705 595884298 243991368 435664572 110571114 985853891 721935998 289077791 748497982 316788571 408254291 664747550 624966956 285642308 130921639 284006134 357428091 205369193 901421285 417494267 495967940 298947847 303447490 219392239 198572300 301963616 471591017 115397423 761039262 596843123 374931794 627659364 540484905 40435558 94110065 314055075 596710292 654006401 795033837 420505636 850735765 616709300 108070907 119271243 834381532 120291389 785711828 99450105 589131090 187623675 406193232 25043631 377158549 676816629 211262083 771873673 116132249 225468449 878525205 184969723 820378801 262627681 170803196 253648336 777040618 841885877 834192833 370813096 608525975 401696937 718058611 448406926 993253296 4192847 845475260 296523773 831188144 952153790 326644829 581158374 230000553 402179588 114067624 267427555 451032306 998334768 833736627 875430289 701542500 467412388 469086800 626987326 392803500 622233566 653476111 103194033 765990909 259045072 287049884 973198056 630010706 734520241 139418230 485961859 218454025 863238018 12495714 306671160 346700024 359692543 749027663 738266443 125700288 257864074 554226724 834307864 44696971 674304266 336515898 313088648 248865022 627151417 78162531 714249671 58099885 871946724 939920682 223640867 437738972 291240372 166152862 984827532 452211702 557967314 876027782 91780319 311491473 272890168 744849933 622976170 312460685 179494967 746371107 27701308 206916622 296347247 708569940 383673721 455201615 252899108 454098872 981391427 593223196 589784470 595928384 2207717 718683048 522422148 504568502 160105294 817260346 588542226 69133470 697080217 300999884 657057737 243988343 387553909 206679772 329246745 42019334 278182863 177345657 848910074 175567944 72049563 178891771 323911441 607209720 175493507 713592517 206193865 554552779 318583428 402307071 847443874 933953761 456005052 908816620 919767911 231997599 73084557 358910054 441574680 370741754 801193129 563491530 704196186 136317055 802774668 705769775 378182934 636646312 433106437 446579546 96389482 221202989 32742127 443162150 225295732 82581211 948424527 553797060 793599035 246700696 203659500 919329802 861974998 248398201 576604212 612221213 957048494 169471421 269819140 854142553 890948508 452713211 812463262 523289374 925879955 69114114 265130308 595074566 546022817 681803159 689465304 444063593 822251526 279570799 675328894 157012678 291090177 867685093 283424350 460076046 415038222 233949659 528768714 934752851 314727375 969449501 40207434 91365487 238396404 948228808 115949867 569744549 707717218 960488950 635726176 851516270 268385207 882099888 552180152 481173061 395321528 317759764 964643337 806581228 161743577 269265650 283436533 832718615 309224600 961172331 909450832 239022472 43369456 733763022 699721542 281144765 783108504 839154236 208866695 45758580 985862641 235319700 900681028 192863398 83347562 367400628 42261535 522644565 672524770 948562633 446093088 695248664 680217667 992792398 791588289 897987439 128351806 956471929 102937419 926729648 927976716 368706278 628608090 289732736 435164752 366168631 517154105 192561014 656531897 416179349 455211032 504306844 431077139 642953618 457864867 130397005 846411247 536599804 412131044 639335840 525810581 856880311 96196924 534945154 732142060 151143634 238977097 904395700 877651146 640116029 270793004 696631745 212002096 652671371 552769512 629767304 810795020 430659150 383655652 687023814 936064721 355717910 596050763 946370996 522118254 249849072 231908335 792527058 326055361 996120140 497465911 704732553 339833726 725819102 704638756 559224791 761256447 929468893 327715971 730090933 46582977 886337946 468148441 944425971 10756532 874503975 516967604 560504813 933655009 150469737 632282523 367532481 264185625 106818907 871702072 542964686 474200 599948379 716481839 598083612 191317942 93955243 83249995 348534345 586456296 949521409 947957705 318639703 499694893 849508968 932653711 758374257 533615964 585931170 60870514 850270653 654808876 9927494 630114393 8420761 992197471 558824247 517583746 540488469 261379561 544936379 852821113 608587344 21044128 559902670 367696542 67985158 11182164 878060488 881165990 278716930 849375434 232489579 791106369 855166508 307767391 257613179 831498996 845653950 135110602 406722598 143129518 247157747 714624711 36172546 547567263 158220 142458585 293096617 411620559 648101515 295250265 553122429 834328217 85870215 482164000 612002641 904343186 816378009 276260351 906180007 529283833 829012028 825064883 510841568 66546703 815547985 708199773 400547816 945754938 948830184 567257618 940476509 262014404 640585403 840132583 122365320 204935167 542547091 964662445 417890849 508229822 789926464 163538542 71078900 989366216 847999607 622907135 616120417 336079932 360721558 118696020 225749504 147799491 722166384 549742077 283331033 316128225 294399372 269370545 756950029 533221280 674279596 177124486 629289598 540566823 342814326 326435045 499070677 55219715 62455786 432229565 427088099 302296075 145678635 416137514 515427998 304680393 769638408 35547342 842545012 952433940 417960065 416038517 917534084 232381400 848037312 335088622 78014273 350487785 136973083 296366397 135378826 235401508 615949259 305106002 397858816 887336807 825844170 122110847 770397345 550464819 21542678 324001961 96330206 520757197 766236780 365301821 301062603 715701769 831643180 839985737 633104254 811067953 615972701 425367699 854905057 284402920 312315813 229718538 338930703 558735854 677131356 984312106 943867570 329959934 161977765 920800355 27275317 103607828 59285235 907590422 850922510 472951662 973504325 395845682 856369373 425455233 157171098 767300227 758574141 297363880 932678682 864111431 90810229 729240457 345423460 728296761 391851305 877387645 391040329 886462809 413213091 651801934 750934088 977868746 709990454 160492681 456147288 836165848 519146896 379242822 645277445 461267185 30772469 108339346 504314529 426459604 571594856 140688491 869018674 72497105 476754620 317632607 322979638 895864244 975577262 923321488 421401216 915568940 798838621 998276727 955377004 8547245 178597246 77828802 314133151 597268246 344359657 387499697 502830969 186520139 821096650 230512874 843131797 150531813 100122165 674846040 958407082 168093686 11833926 386527244 907607742 610738453 285516024 219809217 425431707 929075 242813419 727149874 342537292 355529386 135827653 209037940 745598302 622670347 605358307 639510939 470436387 479639099 446172269 73003426 334886421 455980232 968656007 636751791 495612332 273467073 983470630 223421846 964713251 623900960 790954734 115781755 941136181 524096593 238412348 703659253 657871432 74342084 776930837 407284251 25465032 104733893 623455648 951960123 409491137 563232513 678100263 856358023 449470720 706812726 981391263 249557023 123455950 511083148 370197640 487867239 490739115 144488475 645058298 440502662 452691020 620888415 361150620 571418575 885106977 8209076 630715661 215757919 14511653 119592008 417896615 40970470 242635051 346082596 801829316 438087151 13610108 403740456 781456279 626522600 217520132 145284461 263830537 837880929 230183574 720453219 209009162 895951773 506711168 900532244 286805407 476880713 785222363 386242800 259625900 200610537 361231563 744284749 925991665 592470742 874549886 552773522 878613180 917300569 939201481 614057750 825640404 108522385 929132649 569343418 86619413 515770393 796356798 431860242 811434230 970409742 875775151 67815200 637734385 499246506 606107343 214026043 280347552 234864314 840490571 84247076 702383180 45651138 826235523 879933022 766540419 846327535 334088631 25198167 205859902 775209524 142447915 969632017 63398936 499258512 450986192 963934074 722047919 693551862 456356743 613172059 335841734 737596693 97649734 753998343 526149362 699401507 425342932 324681131 958980291 840623234 867568141 278352799 815056503 658172194 248675875 634087163 77619956 209711345 8478823 787337505 799169059 67002123 886131519 962991330 380211233 859550228 688614802 865281082 77228524 387094290 281772010 676687877 362839456 608779422 965036909 575099560 317729334 247797623 132521987 370129896 507673144 710650993 587392666 949852596 408942332 150948987 832415050 453864501 533580012 954682143 651170305 19487855 133589692 410581970 553473142 778656456 103205117 689706216 753359147 397401546 180734264 148312492 61771933 253074355 37431571 240138140 391540747 54975847 755696138 216937457 712047464 807184453 533343274 66784169 185100321 210569213 189384707 390373184 210876810 267384677 578137845 539990892 318824942 749745333 669355527 681311519 557622240 88512651 798061922 309227698 129770174 951678353 814109239 490846220 706210810 439141301 17985391 226545938 693593833 155022917 915968362 540783399 983899862 79455472 390945429 90347968 689591384 237959638 545260314 581137900 744044626 944891033 422769296 827076532 585819175 435074121 725705973 632364844 143626352 370845621 533626109 16839449 997332064 188673129 447791937 426813850 64761082 470876659 876550831 48685685 380985376 454387507 446459978 607749427 136614128 179605491 671646843 845283079 41391740 832611855 563254297 197332463 664283823 727939410 871932092 234555358 459552883 702503577 662023815 695297624 566872049 753631886 319191401 530863346 742027553 276556921 270707944 251979722 37352047 483000135 39864488 479847010 484292708 188550000 701022764 64719478 41925759 778839821 290560162 928535044 431346403 135107060 53225908 826938761 367407474 893931557 207675982 15265262 815837166 577383906 660445917 950133292 23757613 51727789 781705511 263327479 740413787 79592804 150804787 917118289 281537473 202537857 150132997 516410662 860441734 992660340 981000421 240434691 503327285 210681295 75916839 398821440 924655426 886002436 757749686 326428090 61897816 442504026 816590718 376021616 328322005 384580582 527043550 539030445 555650550 405011475 526883342 469319967 731049793 813863012 623857376 183673870 581195531 139305843 514423889 790152622 573683444 872501361 773131590 673124557 537843200 277856806 942674282 61127290 508310810 942690772 498324972 955327318 302075157 867194102 790121537 275609704 904483218 81971337 272031732 561169440 187346100 815972162 688808561 997700929 589324743 308148531 179824837 857098126 235112224 437744316 115350854 190008205 362077571 77519210 153884478 300909375 811421928 300262653 703651295 957510649 785567218 129463512 399307843 348999748 648006080 459462023 251139867 566063081 271964530 759951695 840857339 972340412 115278282 573599550 162304972 436351091 376758976 876419648 127076240 609510624 795857077 599830091 21180686 640982306 765238297 193898355 113198343 380139990 965477062 731579498 487543089 235328148 592427682 665924908 923273005 649516200 293026847 477619956 525836217 618030869 684202836 257052983 623224181 838648141 484554668 284556065 265883661 107055404 996650514 478151539 52256777 499390811 398381478 26405120 144346546 53777405 727385465 18793333 223170977 707758225 267100642 607961662 416690445 293720358 656692541 880519278 710271073 556770138 961893198 871650667 11365236 717940117 96323737 962165980 932096109 128819351 512164490 520352845 326783509 790410389 278757233 612557645 893028514 380288180 408033699 421063067 164844357 337788678 686157599 300735482 13453123 254315269 670999252 474924152 512450580 950547167 407299300 819407835 434054049 586866145 686674529 896197802 303958310 68787401 867136671 980910338 292999621 629088206 376930562 178701732 522604624 823743500 353075085 445676160 401862509 549873767 677312088 601995198 505685626 787220757 715012747 373902580 647982182 684487604 582528738 542323381 301992125 869118909 750822049 218783146 35349637 32383334 392004487 361975877 720936998 976997396 468209433 936073453 25273923 595658678 973169384 274716153 666713070 957904286 131801474 297930672 264517337 934788976 334200220 505947881 333098742 623856105 382031095 148102094 910421653 409175386 134630751 820858405 361741151 655641726 222205104 742614626 744110824 367892553 785786545 841601754 747314641 450585885 898792325 38762984 805371224 859353852 797794012 91853200 263410221 124587846 984660016 954822313 137257617 507846445 717799200 918500722 89346634 109803618 304428785 913879346 922036403 413818713 672300726 264753237 335492203 824442467 471609799 132900561 654886620 537785200 571558031 734178130 570018960 25506999 38576102 379978587 922894594 9247939 536987422 374062919 87138692 759511736 336326921 402467079 951883873 247408141 56638116 18698903 135476636 806319123 8640282 911739755 112391176 48462930 907548050 941292318 818786672 25293572 675322396 491663244 939752860 740946766 951683483 298662304 187025922 625059238 938090430 424458551 160207535 377217079 46336888 993936844 702504874 754565753 160284882 37353332 189489992 787786760 364308829 7637801 734584334 704393442 423555359 131255397 314134399 881615467 558623341 36047906 337585495 870135948 55430674 731795215 104337821 102514180 724105252 565099 963628013 443517744 166450331 594670569 483986258 486818693 372864723 595664223 893539339 564967934 306258245 311862518 618559289 120962598 852104712 74614177 405532495 387990348 401885526 779645578 760085125 90591528 810092258 568447336 977760127 399371909 863141629 358093261 949437356 340545606 331198809 659182516 798877505 31315932 44449983 710506937 247821069 133311877 163540572 119014877 449382811 322317935 15233265 906034228 138977239 668493265 116625385 142121631 602010805 430005444 933670919 441974340 372391280 194123012 796712088 792729917 158532699 276572737 840574725 100986223 304643133 786208015 139757746 901031164 121487796 147512392 578275532 666094336 465419827 592847020 258228071 499014396 538240933 902244558 342545898 695606070 17372506 919686967 301624462 811891947 37577949 146819665 493317049 717350059 777993340 364891016 781091357 5678176 351594008 565087263 501981593 26412003 935799082 681885470 344803010 248466391 527052766 833836584 629727659 385766820 676886037 650242426 134932522 327046438 53394710 946068092 357545119 71799366 758357470 587589660 744899208 231245015 500044028 834202144 658036416 703001947 274387009 863412418 563498687 721450287 794266508 789290862 830498852 125775008 110189409 664399003 1925131 154026382 556350000 399421838 785575604 287748750 786958504 453944116 213090028 937591520 864519566 958182379 525766523 662465835 746144739 149749038 565850552 23488878 814641004 24861897 685263542 92127418 450986507 764627288 869352110 523521969 732472253 22206684 84749376 879798290 281050356 887290250 915802710 392831204 305521521 34093316 595910987 368225954 720175633 548139763 299676273 228804513 629480834 489518590 800131697 898738394 729483884 203237621 171644111 51530539 47790596 946191845 780698214 420195979 759099894 137122210 485452488 44428825 927960256 455770563 267909901 428797426 289709007 683972968 364295154 769892269 353487574 950585535 235680983 820420158 729875391 168337033 823199273 401837418 10635593 928548752 291741963 178318149 81149593 993080789 96681816 886138602 84954374 544232515 940515511 109954914 294710597 40619079 475262387 103911786 50318272 694373746 365259709 381915374 619576325 622095376 487353303 412250517 886466780 575046801 833780852 819097530 871835908 353088565 732091007 827728100 791568336 250737797 555008150 647590152 85970153 386532205 16281843 26676641 543847331 868422900 630975138 666427358 403011608 40546859 375318306 502486527 405314540 706400102 841234032 573364127 300823498 900595281 670314223 229579368 349116477 537787228 798212849 341921923 794767141 389001034 538525954 518801168 467022555 810618477 811950675 257622687 494862095 833667317 254213273 620764448 579140306 660255195 601020251 425849203 445761960 567993731 671609703 630812541 747526116 106767510 307560847 694956418 597522203 251789681 370045895 948553932 865652697 286872499 645856127 628434202 940269350 386734656 702418084 527954236 802363510 666797267 272214714 136045414 62836652 606742651 977150321 540516245 333212183 775844696 745702042 129139161 585173802 824729331 956364858 702906087 530777213 271812810 79068000 96919561 834147612 139757807 440747320 26501262 525836712 133624529 500783067 986757573 361970963 64540545 43632079 988084806 835778275 748056604 634435430 285730429 835406645 178036249 487011175 773581791 368874340 218825882 882727550 522396816 172751287 31755346 879599017 917664926 817883559 383757775 148449034 842347362 481043344 575900625 261808441 945799302 742784462 731714980 122368239 203497316 761604575 422965469 188900351 347030670 664298977 418040534 269255879 376183989 503562744 176629343 876633595 517418492 100447793 293517365 974728711 885122815 914646606 249810963 232075227 62436362 341180260 976660857 386180241 899349810 327426464 458064785 68596921 399149353 176213631 494209763 463607939 664917192 149688997 464939582 48444997 523124728 784407096 990568425 398724487 763106654 487554281 797810169 593178988 968520629 525010902 300100751 578497693 376094033 532844511 721552146 740057357 69578781 468020613 717785017 205612546 746196357 968333420 118909318 632263550 77846225 356005347 894546296 496744133 782844268 186018083 221040510 575738926 852732488 755341370 603600697 301895969 852677986 907989055 760745824 131738692 868926631 671347581 892114420 763626184 728718735 369856677 104078051 936824130 312126116 535329921 292344045 919606232 149703106 29924353 787256939 945979190 992864090 49605805 394283282 13263496 139574344 581358100 925866822 460000919 329887281 246048676 484328031 904289357 116733791 854226131 8918229 322895969 752722986 494709831 783105061 383728808 710924957 745237621 580390563 487888357 134762778 72964326 634578418 349217167 171033712 160679967 228347271 749751359 996891639 273159934 909776247 633756461 178549216 381461006 910043160 522825433 345806103 341306729 972833644 175230756 236200476 31929967 429778166 757774165 717793800 772424905 553179250 802755063 115267843 962475252 966118779 479474454 825453892 885294223 750748897 101872829 586552445 301474222 171665580 779900981 353854564 833838637 601483245 768603185 847443458 42751521 626401790 102689198 318142395 727196071 24976424 507232086 994823953 123651752 137028682 408540757 307007644 1103714 244666406 895820947 24253035 34819913 35796448 512252156 432215997 311664343 329424071 726978786 296686502 993833168 628272921 446311260 111132380 71530969 219341027 884194562 858485384 201697945 337387757 502507048 976415589 310997406 269203519 469671874 694178069 611790611 777104817 546547313 6927003 143901730 63347801 120477228 254182048 929670853 463772256 195330656 895366279 971260808 813121543 254380212 861127227 379240326 679126057 715490957 855791429 767700424 343986088 893507751 657756914 335911732 487696837 484252380 711357970 552814643 803311217 98137468 989615917 133223033 487865350 475613300 919272922 74112548 607007207 396676618 648934106 871057474 769573225 368851370 888830873 969099604 520503343 260591046 231937554 89362277 849992232 376602479 341724864 779377720 362523843 347893881 234499899 672732676 825005441 963892343 451056423 322913926 503680331 288299494 465878437 373278955 291141795 148400182 488779333 728001495 167690355 544374580 218533107 69657335 170536474 267461791 764699620 918272050 943960934 534905458 84255165 799587062 892794220 701178858 719753103 558762854 363987083 392125031 291971401 118463582 434676994 110109206 864025907 87007628 871097348 540026306 464135606 784587571 957117175 212788810 882538405 660598006 812008812 419575682 361818861 88852255 293767375 206971072 349157065 701855952 196948290 545675941 602491681 385245691 727674467 325729503 602908971 104562059 882346628 125427951 682890521 489686639 63908671 484318399 332804837 859170649 738871354 244021328 330057534 853607451 50801190 723208224 370390075 658846849 68962331 92663305 50157989 241618510 394657828 121429484 436230769 63098313 486199872 753283572 168471564 438370193 182836029 546866834 499140065 987475126 438564661 633406836 613066312 281441286 812601421 952695984 460656772 454559198 816750638 654588451 255117648 160333431 488504858 947350757 521598250 919792835 618785407 63388329 621254619 320969430 435758012 673029552 872149663 249812668 276191674 183731936 189317219 879917170 181639108 958151696 188292115 263740401 658558875 317617264 704497301 736863941 67034456 474749581 538369042 328157730 957146145 133229480 465091439 737970588 658737940 417202462 679084956 14429531 881680617 148894082 581338293 99030372 902835577 12753368 803078753 959743509 853654825 147432113 874626715 225741005 460488770 175718021 301663128 265625238 568703163 675782726 458909342 435219406 361645774 511052709 50286505 390943546 270977411 832090994 688803547 7156292 994387518 361876416 921655396 939751920 404710574 246251185 21283053 680543685 819512675 489892723 959864914 417444287 746915932 644395893 62359439 105163726 482081860 162430367 865420813 97426101 804383164 491009706 628665771 339972464 782814944 932140082 635255358 353700995 253915936 675958181 985830134 493007994 385623532 918210460 579307390 871631633 735085217 846203177 897060767 756773975 384718339 772856914 987798207 134444915 569481646 195586420 53566638 887899139 610849931 951694791 700018425 19309151 246577686 577840855 53894315 976685534 206058686 783539471 220725797 193683627 390587851 485216140 629224640 656258814 21967205 755458870 931589102 466392945 395022351 812144452 518586158 628517631 844513158 141974508 749283450 899376660 286132271 28645278 151715539 621239032 170089084 396381878 103214970 685779242 619131399 891455821 952078935 391518673 48235386 509688279 976956679 139886945 201104556 770073858 428983729 227884597 314466994 201604789 143194666 606846587 61409117 737808031 594050808 418015440 136383678 545169780 41643169 483262182 326827565 694185005 934786638 49653202 517619523 970644865 662592078 941710876 227111583 137064172 250120838 417388894 313326933 450432171 533021668 405114192 98372469 178032623 619546594 138297497 312446670 268484056 513821871 433744170 477012242 376550516 232513310 629442381 265175736 41694818 375896113 349999760 396175400 733635380 115726199 984390316 357348867 703337186 606385495 390044503 665985324 724131638 464871337 910883066 202942375 837960945 573792384 392317009 431406786 69011455 395888013 603167910 27027469 147384644 628733231 504934483 627495130 777147039 688056639 967768213 213551954 411110725 890799678 68684527 113531153 625813826 132506996 777940157 316839106 822939413 877797434 558745496 931985399 970942271 400012631 390104074 909055767 905870263 192370468 787010957 21188659 345814693 528734889 931902337 383519100 841222989 961368436 199582046 2876106 723880658 155727634 639869942 10304970 230531437 901943249 447076375 790304310 75252042 580026118 793187677 177244725 380196802 686103527 816029666 247449946 437048660 53104776 174774216 163538159 998172777 545820750 96469587 414850005 336337820 769895467 699921240 30878871 103493964 92275161 950860989 596985 810836067 159089832 296174669 830390302 874475511 598601571 151074424 31544416 562977218 117014816 563498971 692519429 193262994 348397841 64579000 997810466 426359113 47140880 658416929 294352919 567918935 407848785 682993759 829809014 682348088 63906718 572094602 679361013 817405332 586705565 849834985 594583504 898161052 639662172 182155276 64469648 570345836 125326611 143318274 398854746 302976858 94515564 834226079 186447396 425542888 759820522 106936105 773182500 433232766 418459611 960638661 669632965 201304436 563369162 56800009 654627334 527187968 362198627 736055267 286061134 359999098 494762765 541925293 165382701 704990318 422468311 753476117 669226862 529006454 378128528 300372921 308803003 383340166 869686658 54463183 226141678 925235588 965854137 557300176 133958288 194824743 312800261 643868234 785430592 938943243 869775120 483224862 905112097 15029771 29102400 877280374 492663249 997050948 85377716 669119778 703570454 654639082 459753773 532287954 963535206 449406401 637889815 580395760 50208583 145334316 242932116 833633235 17495671 459726558 157300371 162763795 957829575 812810395 341730761 706449478 343016529 213618133 4327430 461543268 812369037 198315934 211566976 15759282 95783243 871024802 276227288 958818882 351473312 39409626 175639066 95127235 892111075 827127754 428761525 64168145 55256191 272314076 900439885 477406538 340675911 775175082 607000023 954344996 969456422 510147497 556721944 916869467 921545976 363299584 324870185 226133609 275345354 253442600 410962030 440730131 258605348 416128397 334730995 593622104 521945680 582616219 875229182 482984347 944982114 160630999 14144568 90915527 996009480 851254948 528632812 157232676 173096476 384865552 628786093 340301710 464929465 833953407 249758724 626093603 325665058 433097927 399985109 245023882 729964837 903941664 191366732 997656945 886322400 279568340 362061440 291073538 990535671 73106850 763165127 861090436 201569647 447671911 4841634 907161103 682531361 943292398 141958930 763111603 763718665 560331701 982881983 815930934 910965732 531553203 266986877 81576971 252791321 723677621 675843366 905934076 499613353 245103762 71847345 329860638 586438101 566111937 254960216 818281528 109369457 942636032 419520454 34760974 908135339 96277749 972841477 718208635 633426722 723879707 189172784 445425408 27305937 952595803 103749552 877558515 530455504 152506157 484274771 204239378 630138197 172527378 470247261 96969313 238862087 606841033 693833410 913640014 135907572 203254980 512027758 502040073 34928641 257513151 381742499 646374122 947507017 678654446 299094291 202889066 257874948 163029269 693292878 493168936 126582443 182047658 696957274 366332502 969811327 364371643 803993827 219364704 799851140 890783735 295271732 496522354 872044762 989071478 807146177 930028891 849542377 839769755 37394405 951041249 692558881 371763548 155017143 913422311 629619705 942242617 363233728 682350572 130076099 876680024 581633318 897083931 378364672 222664025 112349447 19529790 258836372 361119172 119144734 146451948 816092208 805255402 361356733 465112197 897162506 938759085 336739854 310708150 779896196 802612041 778820145 740295492 727192147 739127713 164954129 328383802 554573403 788909953 896161963 352218085 565644555 768684746 145795335 635852806 690957799 67431747 258948385 898585440 527554452 959917750 484512733 136625978 955275741 733096493 432495748 941326936 829198017 701208782 464347288 938352002 602683914 869229632 665150919 597792247 906271911 156996134 317969792 883131875 733523185 699622861 233739363 560510075 231205120 336965410 252236413 21740939 891312320 894101768 238970418 782251292 739005746 87825561 352731123 394845343 346416659 749192966 611367462 443796970 568752274 296334588 231208514 442556203 929482145 629910080 804543253 438383182 972304072 943532885 32061423 55337322 779751751 886564309 750168544 927875608 711695788 886125528 765539403 463288349 336799571 272841340 493475134 716216810 778066538 530198025 804284322 680115471 923762789 41937448 245326376 854112964 918551214 626483295 143002199 930319880 676400397 535435172 179873487 966114284 745370640 54986072 172496941 815555783 484045868 251631639 413894205 998376767 41842390 40484143 971688105 685656158 600555006 922530900 199163675 631694063 840177435 264350310 122314150 64395909 936997310 422354356 453417254 968139319 94320168 379476422 811622222 901195580 359416371 450261840 767274787 871966631 389129028 162452122 704296349 485387894 481008929 120117010 60295480 280997396 506178315 558030686 660345001 667621398 796492987 364925959 739218754 227242478 873329840 884942536 842394401 928532722 240634123 201713007 549260446 202523656 585801858 589280263 440701307 24048345 788653581 408151965 964987808 238729034 174634127 189473802 478256042 607507435 121246377 798792273 632135833 786605270 496406482 805404248 512095545 353541993 389676776 358511032 580393789 376774416 280803650 570952608 847199932 131920611 848432499 375500936 878161745 467718359 751849985 475720155 430736256 178564900 258679113 386994981 662513629 199976557 782729917 864121602 415996640 849582523 71876170 697215346 923334559 977565091 45681824 198920902 451279086 511335848 316803970 513077532 210227869 975270136 207202112 250260888 992470322 18061293 67398591 93672879 440327835 253553849 954112883 347822269 269051390 583548867 634251238 2129613 196723036 906526179 842784830 962334933 758824050 932241943 313692832 48974638 91223104 451040539 522895000 872194626 363941807 575173582 383028371 270888304 285285049 728694936 67357417 590400341 842129557 838658298 651401320 433284891 410153889 849450244 521879816 531785904 610456516 856578149 747690824 772483422 102568935 846899251 396212979 479637409 994663154 568689887 118137626 658264785 808154795 322082591 33042311 751374554 78709109 323095470 753608919 713328689 202261497 127801430 633178666 656528958 628467046 175687209 878735930 970870377 742670605 916723721 807964190 503005331 811959912 985680830 353341375 635107637 341161902 104601461 406175200 3603382 374474905 643287707 858092715 923976464 836458648 124187829 53853452 724676504 648894317 764885874 731908827 833379097 230989509 368582394 447960843 146567062 83493536 799798734 171484419 851086456 871293614 165812173 90496469 631751767 933227171 742130341 540087841 726895253 162549261 219681082 595976381 979189555 42084170 89443945 793321494 265335951 630291946 377085284 834196573 348284702 27620947 856412345 161135703 629116056 282865912 859362900 61754813 208038427 978177601 481814911 54106045 891282528 409069922 3557928 742827708 706422971 61098656 211176170 373684611 66847993 581667832 148469511 988001602 203408168 753089288 668538485 136719824 914744968 169829391 581570500 171177922 669963578 903322757 822436690 57037608 199048592 248113096 192441696 916726901 452153878 647491769 627592577 330537792 292660722 600673744 252721031 206176078 79833806 710277416 296623326 245621187 699539508 346918263 720274068 56509494 106872781 138863344 25360358 388265318 302660570 28132455 151866257 836509363 23527350 379322346 962283851 323173286 81949455 48088821 190681269 561469916 180038529 472195691 249283570 348098863 884218522 31982539 717845467 785207955 50341354 684989025 635912219 356501922 804048416 280463138 751191214 850337044 990248782 323174263 598042550 942477570 887894768 725385160 677921322 82163636 455118538 432700600 427436973 205751924 676392504 173328893 605763334 131348270 791007932 445364002 115938850 915702784 708136470 564469596 825845375 739185816 18042272 584894488 690585348 235414247 421604432 965655381 984271455 299851710 420538969 773566027 731416693 204862099 78482474 737816629 136063665 99885484 658634004 771813759 67229586 879075459 530707604 803800658 876268887 506306386 834421637 404838010 693371219 424807929 846139401 923731164 426075496 26981092 47098956 824747273 490260100 897176398 610121540 642313082 9473837 539257397 859625938 157195975 550197748 270085735 98131699 305190186 114116370 402527657 997959138 928705745 277886634 746451508 761856741 249375221 291704270 206567962 264619199 832431183 431736850 268570985 390520892 634632318 424015864 632886999 59065593 623990694 600576450 732708223 985031307 88827134 801953928 638026208 353434643 112221926 948754944 666031384 337997939 584335412 142649113 638924558 416176394 71577576 476354071 377002284 41113578 646383762 827613686 197328219 605841483 734935033 197366328 555775559 677390456 105834574 817361917 372342442 797802388 665358709 995664829 772529394 284172792 568109071 365696437 460451313 539129265 328322419 509347510 260157697 126961279 461774990 355310690 957330172 133457872 677166516 269937736 455002585 442992361 43856527 671479683 456463063 632111418 646302810 748542503 921976354 570701356 633236730 287593530 18131691 613796414 456527843 312988065 484190353 106337914 552250301 512648643 577540307 234954139 550999659 793199811 414419533 657724022 533184950 767137369 654901595 770040214 486309159 68042086 308175218 621058320 8855541 725137134 408138668 887259938 277272183 418905116 385901426 951981253 686694624 781941208 145721171 192014944 612573493 917645820 804101992 705694934 825522985 411176611 202977744 828384640 471024660 473974302 799886077 776541020 490325812 807501140 415387381 703762808 462020961 441045552 514202248 556871609 106487786 710580739 387693513 802432674 875058253 986631875 809937745 559982910 991022195 911208728 218935271 535313590 127832074 60579901 804484119 796728227 650703546 363858905 549918368 978352078 996574533 753907237 6561421 518249390 968929064 59122325 78862681 926013450 949073517 810031837 403682637 943128802 300469696 121570178 125404012 238359232 676958340 660523276 369640402 951932278 919582245 478824655 272749876 85061624 900798784 955736598 837034122 891302750 435092588 267658902 744415579 143762158 74790841 82521679 815379603 361511550 37044704 10305641 580633823 254040762 963820461 800583239 71739857 436170825 121314833 38540245 691625899 67440844 72297264 692161577 824579478 727915801 347708009 513199508 462030543 184598552 801864045 646820938 199576417 206314918 397014883 431956005 201037936 441522441 422891647 948166720 152345037 161867772 987501352 160435890 157362934 940390065 727112917 627980315 606616717 550031235 537068289 210473857 657381079 430419086 875544100 871057049 150289753 423847878 545562925 241452506 689257689 358042822 820862923 431620659 788863636 627223152 944141551 723927553 111329824 706618938 528134055 723745265 638360246 342449541 471835812 942187514 251539634 117339795 627876974 116016405 790111420 677863400 515263322 604193766 992259126 684754089 310769320 637028409 394690644 102649457 376829712 438902293 587402972 291699062 195218279 718851689 976916808 350282507 55302444 205371050 876884429 364903080 847765225 875375612 266950598 960389577 444377001 797404669 58843931 923633668 405683435 877707615 502266211 904603245 456685180 646497086 849999881 544658097 144370745 926045071 472115129 759575077 760913048 166334468 448318905 451127118 955207734 720796170 725249787 392631011 859504862 569466304 699973746 693714297 898466570 469428350 936910764 973165717 87356185 338109652 855704723 541187433 127195500 913889557 612528868 537723041 139948070 467039755 961068252 788701835 606691776 488280877 208482179 589619659 274209902 576017001 590971546 125386690 394385599 187104650 347893480 419684437 804882510 602121970 538434741 42728945 764454230 204922178 843321920 554826295 370811856 755857371 680491766 730917520 280361387 886061052 436159546 565260136 485474576 849783900 260424930 495024941 842980097 894900588 330341929 815919971 257803851 421745122 773999726 885321165 621383079 105753617 500791065 963903627 317397586 150725431 930880964 19782177 789322276 585905922 778749431 779500543 728575057 954250091 589910232 443107129 491207645 667440226 260569210 518859041 585287570 545978507 737760325 659074097 482949931 997906074 183641225 108207756 870552422 920809652 585117502 128030897 175606676 292920891 84470765 206925455 103792452 606805776 932560949 29632316 286195028 292394565 451861637 850258330 900386700 633742191 11747711 673721531 6469409 579803229 182125059 951578594 641599024 585386456 872681580 164904428 835421174 443852226 162196289 642367350 979957242 892858664 490685464 926815093 674430355 243585477 260463855 352629475 767730796 96223503 42134512 360884185 612226124 420863705 948372674 88837731 519418277 893233417 844016274 987637196 941197325 635993253 286152236 459968030 113955673 282926355 55160964 429414141 521560783 95514905 576635130 57404277 784448476 556139937 788703161 318155397 32716791 759152217 977083101 689358351 432005195 572746059 214286833 312052001 892234858 874729601 270117522 434929558 105455210 724898666 136253477 134385415 331720547 579069651 639586673 530927657 389963348 963881710 943458975 913694667 906159695 540792725 697068496 240959198 773380677 804542543 124646268 858947515 690841891 662176121 146955231 882741660 674527940 301803001 666742077 983530009 710738607 568471398 75522156 698253174 740554269 904896006 552622603 362216224 821975723 229203803 704168222 770080892 301086415 494655923 70851482 462450020 220724859 920970882 181413353 649096881 466866948 244694680 740821859 691111107 459069686 428656137 214118226 413668582 55812944 431921894 185345671 741298698 84269758 583256554 121533556 382727534 18894267 761893773 233380999 119718710 86620870 983766779 602732021 879741201 296097647 290996205 510400041 575644687 706508945 656322938 708645949 902499920 186360159 229209282 269566614 149019505 818935934 76499632 35318549 621423710 329153641 46258072 3308394 726291986 178319237 278552453 406982743 701067551 343926553 490894242 923094531 379267472 28127277 446939744 501851198 121173616 797476233 366137091 524531254 792687273 833356571 61611625 154074661 908769911 632187660 123267709 624193965 773770137 97989663 818750038 647047034 267027893 59096290 154574770 783961249 436901934 779609545 184208271 952113947 111406137 703246022 632536312 479429354 813798521 95890399 918095904 416864132 308187827 127978210 531391735 395711712 764016973 936548603 799748092 462914083 485551248 59368762 716412184 657077053 861481553 217400538 863959548 950141882 901460488 769198394 625243341 605537919 595488574 989914490 676849421 135253242 931714420 744755557 611527652 222346578 148635258 822657235 102640797 405575914 900393990 392364650 655803886 514532893 642800086 214266841 392674718 501099424 343209892 84800230 990393234 610196610 369686718 964662049 659038890 37715064 584688420 271973157 211076795 451822933 727624252 891619196 642342502 851263142 501842055 378093334 185770008 918868786 887375640 841369997 873658523 318192667 241313144 944720482 348400110 36952364 455412335 120516345 35927266 610985046 536087760 246343356 683116173 827890913 377695726 719229159 86450631 767953042 431655097 101261406 207987033 51477045 462247521 4675334 93327271 721394090 570269956 655191673 861029708 55549910 421329235 251755472 811635072 321969755 137496819 12527582 338195743 836192542 599668787 608496831 456692491 386719825 297699518 236386196 930953936 961310071 874325694 791843182 124144799 257798250 708199163 483079649 504640434 564200277 587636976 980588537 442550599 193228482 953825393 476378602 411885049 8784091 59538779 939510462 703353125 741996184 938340590 403423074 871552426 249680925 256847115 640038739 57710874 63067297 203915103 307154903 440128172 937033236 250061837 284549862 222271034 330276277 694684145 74528831 755403971 772852997 788794566 96330672 397075280 876051874 160054444 650278574 974781006 14911416 403937841 707947587 99679378 80485661 28712049 995775083 125640369 987897666 17909915 248514649 482365899 129904769 955870489 101896797 783059045 213627042 657748862 161736654 697558370 897646648 864265075 545608026 469123525 892994681 448770679 431560663 85767974 681424212 426314336 423083524 881907771 900152348 113909602 294578759 60508742 482205628 906217820 479017015 8451791 355368279 477008338 34752397 106758918 659904519 270190715 280376714 756586861 529132984 196414 279498404 790547019 419008077 563384981 377404961 247731986 687995530 708605206 716566367 516549124 844136798 712903854 808900172 120527571 710068658 703260938 719915094 36095518 755030229 626778846 754013200 909484971 830120515 981994716 669409845 5333647 658452238 633212950 209399037 685169548 534455736 270980533 969219658 597975512 338775494 124646807 677406057 240651675 259628058 243526760 359324389 471206519 807367918 701425923 248984682 531877394 930554224 387475593 363213057 844198423 228363498 567882880 843996571 756904803 295747065 641188773 425498354 882567456 145083786 253443891 249110047 438331528 842275718 229116506 477605245 991137239 626062973 642428013 465140348 293353690 310487843 859118715 761710227 282807854 257992009 455482697 230493587 570752405 623581302 936566438 200894964 937845052 563011726 575470949 104373610 284191996 977697215 374428814 412953874 535203427 340727950 924625824 771585645 835290995 886530778 123454925 966565145 696183434 873277572 143967146 64558666 868531706 690486652 511169344 781883815 703086445 762508128 50983299 881553214 603186629 274060544 117752699 429291670 223138544 556008101 322175560 966008957 568986555 246451446 365678849 908917720 415230596 662519400 649734001 339408301 614662172 199238209 977145794 449573837 562650975 402888747 514495603 637490792 301995851 198955567 642013831 117311271 630488935 172767700 690154889 857535806 83060561 511935333 177040677 800392610 152516946 393536092 458959765 596748269 513721713 953555299 800011444 683411518 663553968 590156761 505138983 355609487 878641099 230587472 116706880 132568582 693100043 292507732 500179150 211754660 505630717 75355778 755666314 330938860 127854739 493664470 99219267 603389605 261568303 588184614 748770377 699705963 388008804 257725209 642884746 271504443 638116489 446952431 942404058 507391650 567975819 618610919 987654446 943519448 859965197 799932798 508230961 143917288 55169360 196859447 302429082 91228579 112481446 539120104 2897226 205381668 768547189 495519822 323471787 55879278 336878650 356938254 77189658 963449205 332259480 158635558 92843646 42770025 342016946 720156142 10503124 675215960 492505912 137835032 348742649 482402083 574694889 889624793 481826030 418175021 224492520 832868246 258681417 705665519 715160526 777492575 624903461 965891042 364614229 658723238 315242960 933962985 808302056 730724497 366832439 396047541 350673794 127423565 626199760 447210251 342524318 112335161 953593546 370182117 257672948 733184961 509284009 519654203 765675303 612233316 94896786 664816788 606870259 239416475 553368179 911088129 302114542 437405466 285265427 683740776 559978644 702542753 588165649 620172903 286480297 440195872 468526483 857407251 458160548 555742778 444121500 138476901 958485983 69921509 959538884 713310648 119740472 360751712 227919926 966049743 938763276 712712161 728570829 128435002 805268681 305419368 390339144 496621948 235300741 758237067 739747050 820443038 546120027 721352780 824893617 845231597 359367760 273908392 311620837 683344412 243936743 194323969 527944121 216288465 146776261 969448774 50754974 501311402 69328640 308149795 416894964 814704715 43153044 935726007 154314568 578148515 375338707 215051699 369112565 748721138 470892709 779229131 728416687 215483763 373587615 215091245 483792319 766490566 453486206 216991221 654593526 53729150 86349451 851735358 389279868 7950449 565236253 154964153 648637041 856798193 446954745 622680664 319504678 540561214 835280151 921640563 630630073 596509925 924769431 16073090 865584691 21475562 198681502 307448291 57216069 461037166 282920636 919727376 944394461 229274403 371745870 332102431 762557399 276610599 367361007 928379376 993976415 868619623 406497206 877713911 971941338 73006605 923206528 843376457 733875149 154896440 34458094 756804907 95621893 16494500 782626775 622941462 82819227 609873607 675849648 871570437 144074598 438355720 697109827 159079869 541609345 831824321 773653145 249206570 226486603 415127466 804994879 100588535 943385411 32942242 997470294 923707542 263850677 900413544 278290613 234288376 395872822 727139247 160767725 722155420 77960353 734589942 389407583 930205127 565942809 816262932 282902255 221025985 442240879 50107595 807340732 700482283 204803751 584683247 132643045 332481155 576125469 265875951 355151826 350074679 164007107 280490483 988420024 819587655 655615855 587126809 737257326 869895785 502373915 446766984 782168856 345450931 513204764 554007551 725186403 549719706 618043443 534621930 959176068 224492608 891242826 861135638 34748377 591150849 709686461 722768580 576653610 369383476 460677928 261630733 511876860 521950665 147966581 394029872 822871667 63081365 695068669 877131359 543449955 716383738 980279926 846949477 511512433 756623309 950340461 685826638 201530380 858977085 21262092 216281636 914582938 571345082 96961599 42001227 870061036 946492345 928978008 212987707 975729684 51842983 532764104 126561474 233835606 32665050 830215937 615795047 962572323 324974610 313327975 250803298 637361517 869202628 365487002 978964430 461580564 500492556 720974623 761656264 405499085 173346615 21466806 917568384 959002846 91724731 192574110 545043226 816987495 623599082 532086710 847231988 718551139 183882048 677813422 868466594 152654751 81416256 241185347 787489949 721559153 544913584 776058974 3897700 619110687 184268866 573988419 902515381 237502838 71428581 551145670 800300417 104987899 763254655 984272129 836458342 865224588 873428463 838868394 570260024 942680253 372688297 410910911 756654187 136260390 693444303 911448179 192816426 412790981 22024600 487151286 655584186 194131558 664948693 456518528 194034480 344884793 805846515 835891139 435232283 899041629 609670749 253190026 595500254 630263679 775732949 477849196 327865892 25928573 655507868 821520337 786023200 431651020 715521854 597313966 101849234 711080126 145671885 566447066 248099674 579549196 722378633 15184920 823207367 965327858 876489170 827070969 236869608 409531139 41404420 319197791 886143915 108975075 581840246 624224741 149254630 603383035 169203033 483736194 534064071 621052366 301366806 733375875 746696688 526122784 398886296 772366740 739691945 174504317 698302779 630262590 739463970 608729100 334679661 289093505 939624918 121638368 776755169 262256442 683330681 296753580 800780788 679745269 64746949 970914794 882035519 32344753 185637727 649806880 847249593 571480098 556453279 873437449 479342951 667114058 871322981 853978950 982719609 663851543 640742144 769282646 676133842 750637384 980736939 141276698 813846328 214028064 366127732 388580518 624243208 796153481 918108265 31223682 129884751 576422002 708464944 628800718 635268366 592629859 401063136 286510719 778679780 501567443 146465722 725591743 169452266 821711751 68989131 462765804 991369872 763741083 259851398 394686687 251402241 348134084 535842076 914008071 142102015 625293108 444225815 287939156 939045844 690055145 177224511 223957474 377634479 261636268 249133158 210433796 326263093 647118982 815228920 685877371 791432294 566751291 228255026 186148012 898623295 574611648 983905620 581162568 555858061 132489078 887446719 457679041 825866864 747761820 722738562 352484822 843273053 122710772 528582563 548504104 951920240 724318918 435519153 135022207 60728712 732714318 198106815 996686394 921834500 180566514 425343294 678777622 451783302 341089137 153525071 214858159 841653468 845467192 163974078 288276674 629300112 924085101 70083022 240301469 852572841 518584120 798353520 111206944 118919554 798562239 39806298 205339737 8690110 844870377 919681808 608781132 980063118 306770779 578005733 232995932 465016791 207634225 947700161 906750604 216611970 819219571 380221721 497996117 236723930 271538134 590457573 286597898 585888176 47047054 547282610 791058553 41325781 776011845 534623672 320890731 126049723 160883270 945000715 469191576 777318977 151949375 957397992 463096830 370026485 532052319 461605837 885651977 413440177 746851130 78970135 861056927 765877190 76223805 811157202 554728921 752622369 965000467 923049652 788874220 702826183 647556518 884933473 396585696 552415327 263888140 210938898 693572917 587052300 974640974 355049160 744097041 501241874 623867624 271041685 477424418 747001169 551865934 523435325 511010902 87405521 965925281 101827355 698092772 766745397 247807672 683059381 234227862 650292098 772058968 997566483 380813660 149152834 469706105 645730012 787841454 725784455 235951525 663175635 122943712 543420408 465518091 715723262 718198802 631786337 545070366 923816100 132165381 394659907 701137362 108445387 766993549 64783582 833634974 134390014 307731891 854229139 896441190 534530254 584772708 831308924 986110191 360324501 975969948 224279099 98506427 720653595 361257391 237809961 834197229 944657016 672075502 953335600 260132573 985066798 155361922 94355974 846845935 242155798 100861763 236219109 85353546 565741150 707963472 67468294 701835837 336206127 564593947 465949313 70424058 385296749 527839697 329916993 119161845 910429546 407422468 330128377 591677831 455023421 390385484 770710986 990253849 159491283 867072842 801150923 220161845 947375277 314263626 204646093 765176606 527885537 49978182 797901443 752663231 786614363 119785750 566176287 927906791 669457475 409257673 566289417 613388360 500152280 281155343 427281412 546894258 392564426 38349667 366174334 886747317 715825594 584023126 117784484 313311476 398753205 364614636 605244576 818864438 175877675 475880069 951444840 296430086 991344783 321540356 370410541 836692174 54515267 708644910 97134308 803410523 201669796 790235870 869068531 205519118 172374767 444241953 36258327 801253920 465650473 94700592 454089144 343503600 489044132 14765221 427272260 999722422 598190841 844294903 271244300 426882179 622428702 617808162 530257430 482305143 42428736 765105912 127748158 922372789 869967496 200462047 118226831 53652817 184299637 639030746 714598956 481130548 494072340 137562358 236103085 964703401 45106707 570641910 671773121 794121986 195794710 278599968 251460646 944489484 37643956 539318323 571759597 740196760 561873185 99570065 646457423 95711383 973191171 359900542 984775643 51309443 647664243 388645572 651870384 46060741 167807739 508259021 918665849 249519008 885003424 678131139 395036016 934001380 125178282 818571561 352076965 222811918 959464726 666327006 155982698 413401519 858140117 679341601 61155117 552533582 661730350 321955544 819571721 767019180 979861577 127380132 156932151 362766173 443292735 647334913 810469904 93484840 496736592 637222787 24814112 808098536 70070677 511520490 710127201 271269518 245270716 236355374 235840792 422790235 30406658 115833554 247643554 262443046 356430134 39542061 732588660 105360569 513690052 522592122 886335037 420431087 826724510 843179275 585030773 692406484 523750423 832263234 714553858 393962225 408575634 427462348 630270637 877190667 775225061 133889895 714867550 300734414 932342590 629938949 734398941 815296139 23342206 785574369 518006462 985334305 829800839 535305343 374172850 529018468 429464257 746120283 462150269 301518768 373229129 426133681 790594619 882345089 896912003 845798814 955580127 150148827 845071928 140231879 194233996 605810698 46698802 392803358 957274252 917311838 724377694 982741943 429651266 850799477 544074273 777982975 463532960 536669624 884655005 285252525 959063622 120568012 34379534 198766710 672858776 522287037 809707330 453415166 69067933 976756170 604690766 126532323 19082913 170263613 155909823 134436797 855318044 457858518 474589241 334165654 809069775 388132234 931671750 858355887 850992602 479757761 55018466 553849528 103774559 161163822 85519028 447606187 1913572 464430733 834244203 519518078 411982742 496898416 546674925 784044668 199035598 539914988 369569874 94953290 905442833 40949213 82336497 507100794 764919729 228068922 490003471 424576025 351574937 742003493 544597692 271089109 302761694 697235521 881157005 804767791 419478370 563389135 637598124 208059204 302711260 898570771 815583229 983171344 267588581 961756927 605967022 629618181 984224487 83783667 816587788 695342211 693281954 903127621 925604115 12005937 873085365 933974025 892390176 354221336 437422414 457420592 458177120 658079718 493444556 144371902 215616481 431089250 743650111 696478943 371846306 24450875 600251033 834795011 305500296 792560473 865060905 672805123 795983795 539574243 510859738 491135923 65747735 359761924 655723751 128525321 81035969 735160530 19522693 51618581 347728169 402173466 322980570 749638939 871720654 371754290 290048072 693200399 65405050 51006617 271012904 726029756 334684443 928873705 462545915 404138628 649718599 338243980 137630935 447928873 619259983 608731162 95021938 403179497 840288984 591825923 335258941 444047666 423614027 766505983 293440237 768734818 812449360 79363338 776445117 330573348 968343660 361498512 538116031 603961185 597643770 756233561 811148606 104641212 288772070 888370151 737157161 754750606 309187584 511949346 274053127 366852452 537210008 27532394 723469496 482227759 508566031 214398906 822176625 109372332 718020434 724410792 524908200 262467192 550469952 216983547 927049366 812810915 333448082 89468537 407465432 291198438 230541422 345893047 257679997 255643851 258777204 731728251 73935092 916807130 179665516 266192840 95117756 18528474 544325492 305012382 661200029 149440560 887824487 991307857 485486232 515600335 510806846 310915819 527665714 189268725 712331388 953197409 327014677 768054390 382469826 278034271 135640074 122980503 730193487 852645876 85344175 911915326 78757464 908263558 687595384 72213969 227278085 513547547 104104793 648830734 694332161 314773390 860797131 262683158 329070914 565682540 141517404 194785723 483167104 450203989 87220657 114397290 792892746 463968349 490760342 672658082 302646822 465524644 498933285 967279456 970377644 436463820 712800521 231132883 286188489 704373659 372903874 962494152 604410795 338134958 15338511 154209730 251538505 462513983 365437637 260622864 403983669 974233258 336532080 845970432 135980427 607621884 711230791 885807478 659975034 871315972 663018844 975901465 929720990 796608041 367911321 561576642 471193891 545489845 743504231 456966285 580995034 720893160 252080991 864340161 630441518 956185196 182256731 662236055 595358471 432560325 45506560 710435418 717531523 110600495 657406166 832959460 114514681 961751958 127559493 457302821 870677974 250512779 23986782 503211560 229111901 853129536 772673546 996319239 664446545 957495682 506055440 968745187 530144619 598334358 812103289 646415451 930986275 617424 610740823 604727525 233675947 207552811 228095049 158098859 49294283 893750553 534141193 574784941 835204885 976177954 117784757 551041000 74233220 354165401 748541409 824039893 539802046 889411276 807149883 934904472 9580683 40793474 936618914 929504951 973506178 516612825 110147458 349963557 216412906 495678494 859531778 626772627 390725799 830765329 942294074 833008202 474461059 90758867 907393303 606513771 363165164 520060434 784637852 623641582 751737092 149579102 694414799 953768337 437504543 874333530 57632473 572573679 625272458 397642423 23747871 634024133 365875311 468563396 624143463 145700394 511003741 166514379 604496931 489511685 884680453 999617836 623254780 637561092 646298620 163919610 643016418 320143885 263829976 351218812 803996299 827469581 410611426 76320563 19639873 700632729 499469001 987592040 696697059 482783073 320347424 881382723 366059661 262053076 287066715 983066474 806553065 202927149 857810665 395110180 951773492 589168084 395469375 397771509 155884262 967662755 608057834 605701445 31388939 18410119 401499936 204641628 110666973 645123587 570515757 247990686 728070421 399154285 971015690 902595848 618108864 367900544 163131092 742784963 690545282 515805753 586136128 716842670 889551826 862071755 573113326 894576581 714283978 754121478 315963484 977923703 207830349 868640661 262400843 506572428 908292414 241587427 254962683 685700184 375459999 929732275 590493318 916453658 962749252 807056836 569227058 844722625 741896754 525958923 630608586 213669374 785796581 349468638 31341671 13002431 835108805 358219059 262619127 168293237 100898646 639350650 838729753 412299801 15848387 57281670 316503102 340481103 186877936 458157606 967109876 462086119 676668590 622393492 398169315 386964832 472016287 641334360 567585011 639930435 110780398 719179711 694498634 6233460 918226355 381066706 67703454 27573727 921390212 955112485 367052370 60112336 544729222 137739155 29570450 967664148 265473411 28742339 482596387 777168184 517280097 302911129 448543183 82862473 824792337 303478351 897994084 516291518 947860922 558281444 537093226 36781695 897412657 174079944 158975715 699510171 34001017 241162405 255434172 110256990 964790819 504756374 892663951 569281985 308543759 437088030 705418349 694751838 812034131 776224478 78138243 859731730 277239780 339543598 635969955 642196011 353651488 667184532 583081203 274819325 334850361 661567330 299508095 187837892 519135130 452406961 864995930 293919186 196737929 367302877 714321924 875043141 759862630 465582729 849021578 391443589 838183162 108458098 200554404 856837351 377898123 336253372 967234589 832952919 638256235 494193831 312693259 317802908 312294589 666602554 470286657 667757319 592363453 730486839 354232540 406979143 265114067 932069115 229608 744030959 985425730 584208018 594391458 690042550 776390355 558023276 81806062 260990768 393967101 502212202 100837289 132248964 215495699 687894047 252648152 225863639 973705057 452444921 199035082 750688526 542862553 549926496 94472093 145285691 7735678 817522915 535560423 330897951 472865244 812055831 872668942 18624940 526226278 528672884 286622434 443385537 264026008 867134398 196595191 140110499 940819821 912946364 843250295 915434029 969339495 701617188 954663338 363902457 9022686 959659157 911278765 59230033 831736289 797074659 600170038 663145919 170729861 137473286 307796697 596973620 890549793 879281879 838588221 696439427 171600461 660168591 447235132 37182807 646727454 730894791 839381476 112319846 701461841 122151918 426140437 904262819 792832475 810934097 912666098 811578179 341195176 378647936 468007558 583593266 514600412 287284221 469221889 745644193 64197211 190897717 955794232 348687497 234211488 935158002 55547360 42874290 286290300 211973113 725332186 915049508 495234141 620827084 283651031 391471707 440436854 318038178 942993175 895193271 661150431 959804669 525048899 304853115 967092464 312623006 861630614 970010519 36390618 500924891 178178930 699518377 599651447 998237087 286981241 265351905 117888591 133399273 343030715 966707100 105345322 302842536 197629384 41550987 335628471 312952252 633397432 146906047 83007845 295537578 281574911 940576312 290968764 20368516 578266720 606475249 295703616 745655098 429863250 832408065 18321634 260310792 961995584 554046323 578280916 455986873 626231338 302700258 95032193 654958219 260612048 218870846 335536250 195040882 485314608 824858589 688022900 480878017 74728963 69278421 345625239 3808208 12796503 371129290 600630700 234556360 581309317 328524153 152658946 361631112 130794996 752055638 620156874 9645745 577098075 672675504 95032053 607188945 798234848 104886539 354802645 203183042 302950906 708375483 30005914 834190010 314178928 725768419 12874734 130098904 447294354 79851274 998603943 656291733 953408451 806498754 170998141 739567100 857611317 580785018 955159350 574214373 436153648 817934285 124041049 380876829 263188254 475269023 406157529 933028549 472516570 474569563 685964620 833948261 461067263 281296652 32238784 894116530 668641216 519829988 439890101 961127823 959604503 989311464 224893004 111620588 342544708 313922983 844659828 420254759 254115556 798582678 693904088 78285874 119618965 808765618 72973928 166138761 178882382 769843634 874102427 779108168 441794404 939460130 370063774 108419999 502593081 661240179 329106157 786598388 241400855 68372447 274051372 995324635 766125025 457346670 55896075 94239982 158812428 126791996 155018542 336232856 399690312 23192588 974897018 242110971 191293831 163262108 185306992 774614129 708077647 280252875 103289243 247336599 260328214 273161887 101979172 602868545 108485540 290913607 675149947 882777516 644894218 317914058 656687046 298789301 386904945 29066474 421583360 585699199 104184278 754067193 542732197 418683151 864236264 699034268 59828605 682532551 802849026 697374455 83703411 263312647 398789870 178385532 153718011 528628838 433105169 465031277 911721535 993313173 238874082 777889825 333731221 387129316 595767068 952894664 297752388 598017547 663096588 485678491 779632918 242457644 25712892 101489573 406916949 820339556 99005717 430343599 514925407 830318728 511425150 733707067 881214306 229008260 966791757 569008670 73913668 292545523 486453088 644371270 609468670 43461153 404264035 190422131 124062567 985041988 29014355 104657923 433173954 129633499 405165408 257403215 194519701 917615517 775912629 902644842 781705060 794540559 285946161 208218072 170362742 56179070 541565984 433588261 418609974 289591803 752442319 398105591 543671898 760423542 640080612 248378546 246703225 112718224 233060944 771913921 153675969 941420322 325817753 990167962 390112908 899553647 162901025 660511792 791121308 469685626 487068536 53313544 931096021 169709576 674715745 355254898 780245541 782338824 719557896 910285187 906827315 899144262 267417277 737211994 631688522 666672024 125434467 333320215 74480593 560545361 45434558 23408646 999419499 409732510 368532755 185882825 994741214 587525449 561507011 645920603 385990794 274558474 380095450 19967164 753521538 132109673 630792533 158179809 233839616 865740389 902333441 207781027 568833181 420589218 461905047 234988632 302301433 355958314 462484658 879925951 451301519 601873029 579677496 801379935 393303216 548384584 105515470 464469536 13599607 593022743 534602823 607805008 887419717 594135065 414461501 685875524 322129636 960190337 526821224 710727493 417232 228185684 910478390 219528532 599266324 951437634 832450171 399788021 410931196 253645661 154609313 911854814 809841825 810145296 892252939 792989204 234639497 310060460 548451319 997420320 236386829 222414023 822256913 653333314 323648531 52018554 860653697 498201327 861376035 849562797 677747117 267314725 572858223 391520627 435825138 939139633 574996697 194906782 35252261 431646528 855598650 523794803 997096072 939218901 318362985 674879724 887226041 261732107 666052601 484708546 167973592 801200804 999978493 380031316 857333077 348160052 784049637 118733124 570166073 269251543 881762194 916379295 708697916 706504829 634108586 844902602 14908322 877821856 873959908 692620543 586992390 972814032 482122767 738174090 14576397 357318859 66290874 566433226 671951938 800712469 881392797 286996423 286619302 197235687 261085826 88610138 139108056 989726524 771221350 734685882 426025537 973867007 658391572 97073184 551028220 811469884 276759846 648428153 510252047 163181418 557007141 868681177 554457065 752533095 580846285 157746434 259623412 217483787 423126537 470287376 898656872 376915370 367966481 34665917 615985478 907477482 265549044 530031958 223275600 145100211 974337308 896457993 43412334 556601640 684065960 232012457 218869704 98426625 900801254 467085727 851563285 656990291 73374745 357673355 6810181 466587813 36931210 739136893 427163756 581284347 508479421 933500369 301202358 574726312 855527435 934925739 298220352 337037279 978490656 415413006 305822774 641752176 954621839 53910688 929982964 392060903 173418985 739930729 919966928 296288641 955275431 670406216 352303176 101251819 984923387 688087262 408639609 553806770 646118222 657860156 120392608 558669714 547458373 931920787 506667836 710059503 388478368 890161955 380203250 528390369 257234634 673649207 104651079 100577093 443903924 299085316 164848881 924414618 595463882 559025908 137459869 570400000 371499689 93072499 549524644 885543912 125708942 756899014 224582213 849862103 514846453 96547381 832321017 40163988 508972790 991817588 568302099 591577837 816025555 360362094 104427429 665848998 203252739 669566548 640312383 435582006 105046036 73694483 42831437 671700678 666937994 998751817 8156119 691580424 314315999 784350740 674588037 672451904 833373618 662059156 341327369 217542733 903347984 209932851 306135018 786420925 115158759 770849851 104800196 186043558 158570433 146802201 72798537 464051449 932528598 305586763 745400819 887686326 227147217 839254189 514016119 471295157 149479169 269215710 712455673 190155071 360147925 233020834 166388572 244502510 989659882 33976402 665744590 398724811 222417869 117976678 270451854 109444631 300351373 556062982 397804674 813450357 533148890 175562784 346462969 967857687 337721476 177159332 325694480 391303736 161839283 322772550 534115832 894498775 796332859 801777928 892726099 935873706 960754404 786346495 627009132 936596590 967940099 826272397 140832576 243890300 877331545 28332685 851456283 235052062 847257672 506316753 958483717 283501780 127534626 24177523 550549571 692476315 237234172 527002043 726707113 909077075 262994923 341250264 260273081 327079047 105119305 65513930 565199698 56718915 460971444 667762266 976800953 397174985 96497458 37230483 471767894 516602265 922444284 271179806 261022504 534182880 865733614 494537360 616663797 966229629 37338431 16310836 722468290 753668644 319151944 685167696 547930444 555827507 765676525 915259130 977822802 91297054 782841398 64259310 317501128 502229876 429722370 952278848 525499248 758633222 388281016 929328812 131326774 364389092 690413950 383501069 62334467 480007882 111958012 239021115 678448460 820410927 696076586 668692187 351573009 399745200 752578003 698717526 689729048 925689072 529904240 865157643 653007964 114883123 351726105 982479224 327662812 556566525 876590723 423507381 423152652 640468668 418493200 954488758 669539850 376415206 772729109 168157172 587913651 734788960 960978397 558970426 33225482 17288155 616879657 47322457 121077207 949413930 621014140 31874270 510450034 870429004 133069622 449310080 760071755 784966838 630539368 581798315 485829044 310634516 114370025 334991444 329734700 642342900 37738390 58762269 251792328 362618888 373644434 975050648 681134075 714931141 242520067 330607758 51069875 678219441 973406800 907457499 319562253 158797115 775043828 278726122 382393907 793757343 206531188 338180079 437031237 987793015 419953792 665246561 80629436 998939971 442238535 590961757 533113882 782399780 414416680 561130596 34071035 427566948 798391103 395067774 917972877 97757106 262906791 790617041 357651915 218926286 789777485 163557229 606282930 885153062 38122496 927542021 576601301 870871883 398371749 314862785 31476337 268337125 878091891 356299579 42375137 966011734 551665653 637823660 375688591 93906105 203872909 35046920 293268202 62949470 852153786 33019904 53278276 216794297 524463541 719032356 55390579 615582040 287318094 729017283 27586453 224027139 823623368 61942081 664571754 183999936 207108236 78488928 711388314 297907106 275508073 153460487 613592361 613810729 669511149 178872820 108486549 388906918 746895812 982912649 283977511 563378043 962241875 533640570 636436882 288316672 689121917 66820703 471935015 97665725 755470383 770148333 407384071 709676589 520064791 450996253 154979901 31975257 481538514 821147716 675234069 821324924 433918498 361712301 698606981 75212597 292955158 15523149 448241621 748853126 726960738 193769641 491622628 361268600 246533910 98160713 336921473 233040831 402235149 298435507 234114217 524040041 482161067 927460122 720956364 683918275 294359046 875042157 56626681 33370049 536856009 637013476 639580902 496368527 975922531 966304978 325426575 69135003 863260422 887283265 144094815 498622440 8963161 113720644 301777923 881907179 321340991 502303019 851195948 823489128 632124991 604887598 477535440 403920809 811812823 249643616 441436822 344357364 787043807 361362842 795231889 384454390 548836553 338235182 667049928 635015287 887614746 301242214 628521404 173063972 47391434 492040547 220834446 52136437 472797839 137204957 476150327 638555294 292114726 727817396 13451302 865674541 966285815 11465503 959376936 146432447 222920964 815936249 817594503 333160699 166227405 742825644 377995424 369443495 602146779 691361902 299768615 565949546 78545522 198391450 790214313 719872244 188103751 415775649 712742751 841081989 74141537 415076815 517968525 23881525 396956327 354611658 202049535 838034427 32936201 710290748 283012078 490701850 543116802 5718222 361088442 490431475 827894923 566038184 87981651 581685043 310023045 534389844 89572057 51408551 748990482 386707019 599448475 38952221 904609799 433646166 27748249 804792705 358715951 685260494 121522625 141805225 395099444 889824991 106168489 330444864 293477809 45448482 477708538 409458637 835485491 82161987 748064271 758353790 935837267 558125114 436005335 144132767 328663129 706859816 250177036 91009111 117403955 165712236 520925882 878748596 265850793 589640261 626648044 775631920 5740489 933942327 911672587 163661262 399536969 625033432 960715763 649729409 22685249 555628754 449786117 493253089 399216117 593151868 270590510 835519117 934429368 332011306 398638986 90789752 534407606 279727920 257620149 146192559 38884663 929516667 780055682 527097623 569299971 165284458 853283877 938689979 23451328 574318271 232082713 308047980 505936226 663552342 892653839 24739149 41284349 875342136 486326578 746914918 300996507 325762845 999697002 260289467 287278453 210723321 348019578 93716993 893347188 244521435 616305988 788447950 996357167 773114085 463616282 659916538 736627342 281080029 26794182 802389792 992944559 993568842 595967624 636100354 112056465 490917061 342931944 184013116 470287672 428368479 245965510 78188229 484386590 961538095 934673325 982854252 706180434 331481374 561838567 943549092 162941850 725973359 592897595 779957738 556179122 205571849 222872366 248486733 345437445 744789436 343883394 534405886 897513650 790286378 585285725 527089251 182924502 381237714 912680814 80053442 156749041 926953479 38100508 147184789 184341110 331649692 113500167 765807042 483832851 33810959 440468423 337950537 282241073 44889317 682710100 437596289 43785832 106425815 105384496 538607584 785860983 93921838 275688330 4790665 208619271 215666651 735867951 144599493 577818483 308314851 375099917 493467988 876377608 545272344 636833690 357401381 463751902 987126282 333910191 613427110 201126926 747954341 224101830 435399852 401753181 128827629 220659529 761991195 32267111 725857201 125476567 301966018 905808635 669782432 960197025 988822387 469313534 661005756 710880170 38640301 654062395 732508199 472159280 449408355 652295473 216898948 621709597 12576020 221804966 445619616 811654513 132898079 617588694 327430204 115357470 66206255 874629376 577226210 224722139 467490963 53625579 525483796 782223850 748228033 134161730 640743168 525738598 967662241 902204040 269791286 918957591 915100393 17314820 826565859 851923957 419905140 190136557 127830990 366903282 476973534 857230370 869181865 248961655 168101955 384030923 136725930 729580239 145594087 480300351 335192663 183223966 351049982 393548378 217295963 364478384 798701422 554593943 304840358 798740989 241959912 104680813 739572571 352837150 284839064 445680348 239006429 249592769 778746873 409535359 522636397 700121632 919487404 43274455 212328034 156144531 279691438 251260179 729279827 914740496 2424840 456178478 53514250 541737286 450616639 47459546 748298373 464239775 145937370 116513333 897761070 327721475 38348031 639816880 233819647 842618116 888181363 282337946 974096428 679028699 691978809 927676498 634427140 654543633 6443245 634983300 215971868 519083941 879974657 704584971 903182230 344320159 2409609 933892786 865095462 719338786 433042596 33149980 290691695 694078785 388563346 281295452 439105548 224583574 512043172 763067352 533360755 911293582 140754528 930446161 704853314 837651474 687819706 974268365 261838654 414999508 387416689 818822001 353262435 717295412 904406698 927134847 306845576 448277420 19988400 819996978 786419415 680051462 133782263 465364669 825488163 949718969 468625840 398237441 257355709 67119067 150400615 581979449 893893222 978942351 796665577 495161557 671728082 11313496 965456699 352255774 677470951 203798719 405268538 109178040 223219719 528585721 189405963 492548285 6823397 61803684 442172098 504361255 965543975 546123284 528246115 781773638 65020387 424653375 492037721 793303300 844115887 564635888 608709161 849204521 47966046 189256520 387955696 214660542 153879807 779616802 315746069 209260367 573581860 480384038 488776038 671166306 904338073 694475562 155367752 490513456 819775246 214801747 736091027 267215809 416762072 184726073 397084093 954692884 403746627 317727048 42413719 218331338 365354710 969330497 445519968 168763314 437519172 78487948 100900616 300625224 467967990 5512559 424797316 958090806 151259281 895779759 366011821 663088302 306688847 595222654 221306274 471433427 692151546 842544530 499282900 352013572 641449566 621834184 3459557 120879254 3335781 815937986 121761868 423149346 590045199 885551968 18138078 653276318 597974018 441702931 884175244 42371724 630097647 295742298 680403012 687188213 857918232 327168416 775287010 543185843 248115440 347484682 972644821 479753994 308892239 540681950 675392654 767355470 757648523 280984276 804817310 809861113 12146754 720821671 840308313 708221251 762016744 545671208 141898048 331989725 125500222 25124190 875822565 339736664 515970451 282673704 898053380 909041164 533330224 309156016 784870508 11008448 188068387 14094360 143376210 885618837 874899357 297397341 143138664 826002540 557402041 964283098 779515993 428446049 649229676 296009151 322616037 888812475 705322350 257217171 633160215 634547617 287743579 511909401 708894949 501461338 546298533 892685753 499814281 353206032 774075065 481946195 900742582 26589757 600913900 25342093 626921415 251132973 862438217 935977858 855843587 55000296 457652835 698117952 751672901 224326031 107204954 456607483 811814982 425747924 152646260 154974606 51365023 135579200 236529290 475365411 730070905 517293164 943532837 814750891 956635357 487694285 627828700 724581556 266023038 995580443 563802269 238942338 650794537 613191322 435931848 100905597 966503228 624996814 325039832 973131294 463472678 963929521 1733448 160573476 88802897 279560523 341242876 223648443 892405429 892302 473232264 266821228 986914112 886781215 833183769 619899859 57539741 367513012 799623071 958753042 427808538 288254736 52517696 141331546 654916690 221338330 320641737 449727396 19141076 945767017 139577377 169828863 591569203 718552097 263913810 229031027 670040628 728837557 17570523 572980066 252424253 439208267 430050377 446734424 417626823 514402194 860762135 969072934 577726600 520149385 320485024 874731507 693858837 162839804 33987723 112214999 998138551 964982645 173586527 299024642 7376558 632737869 998145009 315502852 5618541 912300948 258059086 918900555 375773570 421854997 937743682 483926339 216627114 914726651 263187225 357134787 21271955 2483561 40768982 861031960 829311915 134465374 434700550 933471687 103267220 217774829 101634543 122639380 817036557 369385046 670709947 207860162 913064414 758850746 269493298 365328179 474685879 653670072 932358147 517525290 257289700 107473031 764084734 84990232 336163857 74363790 601646449 758672629 374162461 483486748 701250435 410502490 810390855 311408088 749415910 15372556 530146790 564089450 350683933 169232108 140465424 831639156 142448320 633738020 74307132 413958460 971890870 649240361 344462696 125661319 324923150 575179414 676868143 395263901 3804175 400687275 959694622 87691217 442234393 339552581 778368591 543196678 895064030 826530966 391027513 481214761 935135848 193785423 102894239 113790402 951063281 353066396 917198908 219796502 650915699 763590906 701080838 966356332 2514519 682497488 816846534 392694884 258557742 241777634 186731580 774763507 269447041 426756919 266094611 350514859 49991192 854995643 585572318 609279521 484673240 397636193 683303767 215161350 772038606 234795967 809601121 228232615 355286059 549800381 838688709 657469857 462151675 108934246 517127849 127794721 861481792 722861426 516939313 797291488 760626400 729311877 391702693 212204931 361533824 131764564 262631921 707514882 962225793 913645173 603309798 628087517 905671895 15445871 92416115 52381684 802088498 664911697 528673257 861544880 240700065 435318084 559770283 588663359 726631878 845216225 651805086 512748260 376765415 179929611 915524638 129027902 783661697 108863644 373523053 651613412 103316122 151486496 676751923 522633655 934361364 9515071 264114521 39414333 179139985 741444806 55749480 412415417 570281160 276914619 929808951 652904062 252758529 786037795 229635908 372163727 756058269 253666668 277750715 898689282 526473079 404661657 890549328 746593397 752984797 342560206 196206478 308976388 848092325 85655149 482857921 832823335 437072884 912680313 444014001 722571296 976549288 915699680 44979885 6513804 943255546 519349258 483143708 285251096 711523284 238872407 616563455 837046182 479322500 869843332 239560778 11816263 811736806 259877798 83369097 679545816 596919107 53849274 475059089 106301839 227157568 258195390 519393354 936321899 880325263 5675821 621748825 926355026 220849818 9023842 66640859 711600858 271178278 283239023 457718184 836106798 629370624 938276935 12509017 386255540 683717507 864412054 904289304 77425235 671035362 755201550 923419659 857957524 371339315 331479273 893796402 45567119 670018305 486242731 640976179 645392088 494259066 562068853 979892184 52942514 150400569 762194793 826462762 84759714 53529183 543738453 493153275 599813300 151245381 945623904 492628147 861751028 628193578 585867368 370975324 670068410 939954500 960148702 522028831 435206799 459909954 210950535 18220864 583623960 46516500 412199835 192875542 710649639 924356382 991734786 797214806 635372183 23506826 563448977 932852770 277605887 463841539 118159008 177556494 155874517 974341492 17654060 140730481 520618202 166936598 905711203 726932103 879919805 365317877 5649314 446750442 623114684 615715697 625010278 318270754 286965569 652159299 281535389 984279631 101543077 368046367 263872154 528396756 889945261 665943746 660499883 905205717 272667568 177946141 194310722 937278239 959113338 158804606 83820863 908504055 161792152 902325025 424522035 98207859 586378611 884145729 690344753 367311350 725664622 331276054 260485956 246940744 394950397 394030228 645397791 583640325 63025853 336174357 361787668 565629762 855173922 589875209 270724131 727572076 469134757 469565102 737482054 987504300 877386469 189778045 16747510 468127679 94301538 74065398 236568126 993396495 341835341 475576003 833791521 507262036 159632589 919589199 271955125 198106224 139835551 32545181 614296646 851619208 13205066 258950738 567778717 433570032 742973037 178335975 501914120 711698672 377498236 393591667 970575832 599260391 816136865 576134366 817950539 999536017 886975430 879378185 277427482 159658533 475507850 887827532 613070472 237981593 193013604 231525550 819800883 7427436 768537334 378894571 295199238 425657947 432795150 645981741 290314492 847691188 915392604 861274651 601833353 863468212 959943048 783803127 299270782 230472141 533162084 742275482 99874256 665396241 247353530 738895784 660419239 38410688 943799548 220304416 517805337 71191908 392932530 663565547 605420708 205179292 173735258 684536906 52625349 883469123 621539629 762629714 383757483 106810972 899606114 697032122 252141990 941517045 537452586 624184396 432494719 350719924 23611692 660347600 199252757 785087264 65273503 916743301 819625343 849653746 273462243 471134061 501280878 794268245 745511698 328222939 749272119 363969702 457624008 977871496 714429872 831274666 681963764 387553780 821962231 540062536 334098577 453493256 250879915 844942020 517214682 333463667 315180073 600153076 910659635 678239071 318549662 281047368 698288283 825600612 584964072 799298881 132193066 742507200 629276663 958131834 78499454 775949294 678477765 311883691 18781717 747476822 429147510 443502240 300377540 715065789 354494054 95321089 13996897 646698723 176537810 446600060 484445253 389931809 480700971 448110917 95511665 881315341 921842971 31107494 427908254 197207297 521245721 944141444 260328649 291426996 745945755 870500864 178705495 677146258 291979561 363496143 168486875 149812581 56300339 890843571 490097500 855358779 401826837 56531963 580764420 197237924 367797470 462671878 957604199 643550188 866816414 846603150 58366052 965178754 732883704 137013401 66208432 952445655 721699810 710791121 229438419 47965695 643846441 496680962 446199131 950565993 923720532 262774331 593429244 848833350 30328728 411386096 920723197 154818921 26877437 312818340 307002170 327427396 287218251 930081460 615924398 2369262 846972997 881594858 276304094 561630354 29271518 412001253 898617890 701990850 421472671 39503703 824828712 971395029 177039689 619465335 155550673 410667311 345843873 52194698 891510769 249481570 507822556 96411404 538563263 904759203 390377233 985972089 122953847 835950694 178129470 534488057 952593265 246388149 743552486 347090155 238212365 135499567 503881648 919138779 670099144 176745167 13883578 435350465 447830624 548840015 45937922 820557716 626940901 19109528 461189784 833581832 997864097 439834812 375370387 208806584 600047451 190177463 531183618 346354041 382236415 15487320 154120881 272762108 930152036 662771986 806387870 225912486 574998040 805783585 272328340 706875257 395724801 352747725 146813038 181886203 267062251 737422086 583663498 399850400 134637788 981300592 452767571 75238383 507434860 344513664 25446483 633636619 81164549 739713195 16784854 786962646 564012482 53852766 384506970 977930953 812471560 90906703 269503075 70183098 59244870 415896925 990641650 980125039 442351853 275527764 765961244 594148596 32719003 991731380 287279377 769388974 319382167 461173929 791850654 282260096 306257610 796411854 857852052 913652171 151211219 937221702 620702227 905944593 637386421 202849299 396514521 671281726 783506389 137432694 321918637 220427914 475400971 799653708 909949465 458637177 967912012 245224878 348016067 312364024 762172536 461641773 694531936 845006594 360676511 49069035 574016304 92568400 960077843 276073056 265693407 834863280 163072503 771704850 370308729 880086419 713986621 86021647 779286413 422665259 837886406 484902447 567378843 241046174 330429117 126857441 335642139 928304283 838729705 206656450 344525887 460433753 976253834 49963923 899933823 480727874 78076565 344602282 652349690 966199608 221901247 858511318 154904990 403107621 144453295 892730779 11877523 657861462 608596009 922573725 290587544 308520799 412281876 109662802 537989705 855572930 910901002 956981239 787311350 601390779 407175137 712840123 589750710 404866642 651899360 789521397 701471400 178979579 49203903 803412462 130071318 838565265 218381061 860347090 129911867 52310289 143381735 325901098 705753024 640314146 5390113 331951393 584268897 238872345 486230692 538380030 435966586 783848571 157974842 423140393 462114411 443033625 828526415 16084578 852288457 824602777 845828073 168708465 145911402 684689694 900638200 971981301 406125844 639957757 814433311 346060591 31120602 769332797 321487071 750723234 944379325 689578741 293130104 511319997 685187070 176954372 343537055 550783216 518271477 770320510 355414292 787464766 295151548 270885111 265409930 538888242 266090828 947221540 583473285 976159909 462532083 879891948 120016520 937526044 358182528 769580652 669260583 743502864 166833718 75926418 643472203 39418383 276964507 579806570 864431070 867518267 515743907 437781212 830935677 728370604 454137509 285768276 485870207 54909215 492886754 33152374 31323610 491727051 328550568 983486794 172662416 445632150 851345053 553478527 504835442 799949611 653167148 430628656 412462488 767937255 378481959 926934874 684875074 197049634 755570096 872190313 76464903 361913251 93109349 45359065 741479476 797333119 959390542 201247406 947902310 929234632 920553059 848032802 128558647 968152450 268947856 602172831 76500521 920063037 676835515 140548317 683364667 654481051 51676524 982587547 188569319 788985360 665520073 688629282 300979897 544694935 233035920 216708055 337948768 714599960 250395313 218641203 23726786 750724709 293941367 633286508 433030064 766719937 536736414 111027216 678834279 139132521 757323637 643477301 704524837 77825157 543091095 954038482 557243453 187237757 999404268 679494869 874068831 137487995 530114753 712380541 284762020 692991901 936180056 93247611 314050015 38299820 23916232 188435140 797748497 133885338 706797726 936060333 31532308 548178137 895104101 718092077 30615532 107703882 324922525 700761111 786065123 88153402 920430927 321089201 961034249 305072216 865537813 972549340 773009429 998934344 559040353 415315877 332857888 278935485 442540991 362178688 167127376 28939951 711401607 358736293 971011140 935219789 902303396 990629807 616990848 227800974 299048396 270336027 109662979 531448039 663074162 302230116 708970299 901965369 923646185 284632681 404121622 563725599 635738118 904125057 687474446 445314080 731261036 464575186 500558215 265867020 367952665 440973314 851821572 257720453 693162040 284844186 170541130 994866920 770837014 240730752 900160029 55223445 489099822 264235124 69025832 200772657 302393893 711171323 563771151 614127715 898997612 821771481 876725241 562430184 978635073 515591618 215111884 539446670 911618134 675432734 215839074 140578165 471702877 627299826 978992646 981699102 401700760 929217968 699718001 736979734 555455334 165041525 461441584 48897447 892795197 2479057 645510218 793184965 31546214 876253954 612530118 923547285 759041497 309061566 354608857 756443107 979134765 768881678 182355062 978363900 290195889 773789439 85310355 381737463 591849484 169611756 516360348 699258115 469791089 403487398 320608855 174982382 9038995 535019058 465114819 820911956 334738745 537241588 759165395 625330731 772413902 927253362 349369122 589154939 663256406 83142208 788592383 263682680 718280900 735766651 813534055 657136103 652520103 658617810 910437574 524253478 957232053 448453207 761083078 943007047 457143183 468324381 869375178 672595855 732420288 694296579 736222076 557668107 782186524 486573187 386416962 932220816 415240606 38746159 10233415 625478637 297160728 354836494 565033863 28850439 896027899 583636798 966011352 718680959 504660698 421073747 198984382 38967386 763572708 151088981 314638491 240099019 386312988 464086565 585163307 241169547 895402882 776993017 445163588 256788885 291294092 854534138 822500134 686853519 478291923 411969375 325459792 808316451 698583097 622617186 33799021 852791632 801303000 569430793 38721090 135631707 394718949 124801553 710895254 901099676 488006830 628562557 731352893 394459673 789472741 600844209 772061444 205987921 121512441 173678485 867093118 818306551 418772436 331904330 117016565 531620310 930028158 168727239 420110519 104529384 877016109 995580869 796494746 968265310 489050883 888099021 64187807 214546408 960544912 908729556 481030755 775121917 887059848 599175805 865786876 604211501 54323154 987560836 382464014 259800449 886468319 549492850 103133680 344816746 450772220 858515358 759834686 485857851 385122527 515353231 858602263 95666765 171959485 899848914 797141481 177737647 880139202 350773359 625017145 749130734 363850446 314229851 985163511 34641651 225001152 210184925 916952456 367405569 21662615 485469261 202095073 934921757 889477650 385610998 451558426 380183538 911600356 85750815 223239950 360672227 953654442 413002285 398508449 984898417 11338252 31701835 963321456 619630578 111419866 450205771 711207868 203454105 83293104 10270253 942763998 319282106 961098610 201018962 719178130 42581984 400462024 956956317 157068693 756531666 421512629 299285115 313135765 831690844 678224819 867453208 807628688 190203463 147895053 315364850 45680930 698684091 504025247 199805749 935688148 44745184 488200253 907760895 923942471 444253206 763698567 908858413 176165840 848047680 825371310 167049354 363169610 800904965 598105082 229234445 689840379 150529672 454409760 562137678 211961326 419812936 159944957 434587160 443011128 206613307 469665065 601101391 651893453 279842840 174101765 387531119 790025026 120583791 571977264 278155407 679368630 341344679 62867362 673568638 973862814 589925679 302704981 766726899 694279041 897681924 91597984 725829058 244705581 937843546 727353008 956370825 618810418 675186749 202046744 545965409 951047491 54624804 306809034 256685627 146636555 42419534 28442066 672413681 362198072 101333474 933546270 32423174 881065809 909183180 225199201 81373699 247632886 345936611 359978273 886583981 828793060 134293910 204863955 668809253 380494857 165747062 202282111 264686805 794330654 826030707 529235479 940289878 273074081 959097125 567030988 921081205 785613803 528062213 386246495 997219653 101198181 917605904 801116264 703664560 791011454 301214129 147241801 81078918 689011923 969553443 870141993 348132950 775632584 625846038 161936660 734178355 458819047 470018554 914143172 851617597 619855696 626981739 479874295 333130516 498734243 548016185 605122121 833996124 484428737 100553402 448811010 192479116 396012609 642474473 901116738 53871193 670098348 244935904 340530724 179843869 632784148 696667142 525333192 371731248 624073548 941901328 876926138 437013024 672842741 380683133 551464063 918078044 378119489 571403603 627109774 669428245 910794169 708294773 586915066 128942484 361497952 604700155 766026274 443824179 420315511 48513526 393026100 715153560 65500319 461625066 190439674 849113353 846902558 285353163 569171345 677319264 409028027 452205443 272894928 931958792 735680578 579957770 176517529 23554625 173180346 283866070 232318783 963540584 48019292 295367171 838354791 681588532 565540171 935253867 466047648 240651728 591181954 969836036 393046724 303739432 674815610 810379271 232329336 734494134 17346316 528511809 349687706 406488984 229860420 9640364 373975466 439406084 628360689 432965321 764676817 363770592 668349046 540890758 883522766 143716724 431071589 440237239 685127498 326849611 807735082 694997898 378286734 218364216 5842162 432252799 307165875 266510486 605761480 527245621 101912280 610857613 880379577 788088480 932090802 776010627 885593245 264758030 276347924 567007741 665402353 223623802 285611637 510736263 456802639 575121756 555898563 321871001 52238564 102103661 314984417 323959138 24679723 728987561 85861786 379687191 96018272 139486068 516224730 775511310 824151233 328581108 606964560 390705069 605749081 226925503 487833568 515945464 420044820 700101846 448454111 703362329 235849020 482445002 779861800 375756949 845092397 23712005 733372101 370104169 598269900 702426611 993410835 908566900 99682476 312737505 829072348 982959528 326548197 657681852 591416929 174129450 649667754 391164650 681080852 471093278 712471867 627058097 635478566 324524995 277759588 650421209 621495732 102738585 199247334 220280876 617725431 574024314 972132031 24690655 26404673 671871731 823303117 941365588 716224568 510824073 124449057 401729082 465257479 9743165 102984103 464336974 245014628 190229018 770423492 398342729 54367839 620513816 697629501 801466099 87604493 100484201 341798116 150826439 110269778 592047639 361781020 875013622 535544553 6636823 733839283 561618895 365352735 490553769 273127685 730159915 656233173 529517492 359230008 745462121 830412566 846810246 268217796 483296425 483401645 11877543 861167529 931848135 110222651 812091140 996534099 460308940 472779771 591956699 577204719 637456415 195902869 602037512 372248305 161012722 499669249 902514629 101602234 291574544 421081866 263435808 831937069 431731686 428174970 274639336 249480150 371821726 983514112 852819154 123601529 568142975 14817171 493830913 463224829 32216867 851397367 200024145 611627582 606984180 985366447 272572532 305759616 874301261 923126111 390771973 177762179 299290753 842001443 767586065 571255307 28121352 538290021 509256779 699039242 44521592 993176232 43441020 453256692 613338398 452334961 196861771 595427658 694404571 838656917 984213307 500932093 485768579 976447281 202187080 209915174 513278315 642047018 2954319 752241566 166410427 577098317 586330100 851423713 468088098 386975415 186389215 969083663 281959886 371631530 6383741 917551298 316628819 773290305 197524121 654508868 409359796 426426589 169602713 485683472 692337174 15766727 732285820 121654841 297517879 447114365 268368020 45813418 701628960 267479595 722441256 763177579 333173252 19425046 8780496 632692189 691109121 47720357 931585739 906353144 639466947 731287278 350266008 414751559 575749186 923822383 920746192 812923641 455891936 751459770 458740423 430609187 311529700 386053487 264935759 259475882 978450877 912201835 473987413 331362252 165230986 719729453 215154221 427840830 675720517 377548230 999056660 969220018 537914992 949203778 929401720 609818936 416001321 455876255 858280373 417204871 951869878 197996790 603458455 23965465 708613335 943406604 993333736 426174126 34319040 234772240 456784877 316940674 223141323 434192152 511178506 596095433 650339301 186794950 569132125 284259344 234821516 290082013 322678042 485570637 384868953 670360398 722606296 69747813 684744934 818722809 590469255 429277657 606911645 784475636 974028908 475899964 603264010 478716418 832979672 491185013 481951477 417205873 689309062 448294774 499639978 147373810 419327308 381121674 556273248 123534636 519253728 169331339 955080717 841073056 400377245 444962602 232258637 219244926 290932533 360827236 675444021 663474917 472227687 729120893 877148297 328619310 115714778 887262323 692561111 583540497 963345967 143680649 53592808 244988689 419994670 214642872 410333326 595497877 507819053 808077491 593590351 393240502 25623043 900714631 301778151 485600970 646149196 817798599 28004376 546601620 960968697 738356964 561376134 697123262 806864995 156702186 954653157 396006918 653766583 770064062 904194021 111573783 34977699 859069569 904454216 873570815 39203794 841193648 464851202 947921646 285432132 286191052 555802692 283648976 678644812 588815594 615963643 619632744 616710399 252876455 806742283 108675108 883103532 746501639 313459853 377339206 420517684 477852017 947441494 270047304 511791740 987775378 562679068 741226933 598729427 624047803 405477689 364111413 769834656 416930879 968893856 938485633 496493098 321678134 622338556 484206559 239762634 811648403 824410382 717599388 669135052 786679487 573732901 170517078 269864818 950628464 221975968 210003423 697672446 955786179 856147749 542755655 213732872 988489206 136914444 733323475 731977609 818743093 590033621 631966789 299174651 862843059 908503695 419365715 75474377 84919257 699316887 367831780 281350483 10494089 876541334 846171823 903472998 91401469 575678074 404782140 238472312 11680822 629858590 710628204 757595858 985180183 161614826 946313554 19963350 489557521 527727863 477800999 968672136 514627614 183747720 580794795 247422686 374412102 852910850 414590503 291905779 789464164 912747666 901201700 346604696 876270024 333522366 188757116 32482138 338623701 328099177 63598280 134289656 344676181 918364763 231782949 389876118 858167961 4120368 481559187 793962284 965656042 477120135 646896986 726604285 788577793 849395891 747346611 593468489 204667451 420536262 446785304 661607359 159754212 673045950 231106964 688527295 952154839 378299056 464626564 96562376 248113638 969753227 259487387 585731386 383109134 714078414 719005253 931277897 713664522 978630609 250654214 239641547 998130824 203045257 347272858 120983393 207095472 123210343 536954999 538137265 189353293 857647781 123315007 368691328 303290791 633879940 606953998 520898320 115701098 269847109 670620702 661353008 124380610 822767024 325787303 513149019 400516189 32325447 92908603 283542383 685406056 6350984 977791320 980910826 176620059 786219783 528073125 992575683 389986416 435997857 926836396 14952320 247816300 815215108 126416212 132432854 517853881 995461214 727424231 387203543 828363301 659598584 95035217 828630985 531497342 890669179 317298606 566656152 220327127 669365200 269006480 225160173 189321779 900203774 378477984 483291724 682705739 519376402 35756789 625390295 806253026 181380742 49983703 217656504 344619310 253842308 987203209 170701215 798225229 524763115 801784986 212922799 887922324 788624910 594422715 263647626 788933790 62976404 365698412 801767880 426888062 166284088 139267942 331344250 742092488 13398730 502249625 254398097 530015079 510815560 234743448 425775414 744735059 495820580 918461749 26710486 560725542 908929826 450597092 385757776 652931143 225776991 777136125 554809099 520025223 248587681 441260887 147140726 39194362 61566002 705779807 688622216 757240809 184639962 187778905 118013218 599706414 173969616 564764824 281911115 724637481 469748399 450164733 415618347 489651016 75876920 100977089 948889881 916997728 734215810 568403389 803557638 360050223 711179682 129717335 447554511 61531712 855955621 100494156 539439252 289050762 727185544 786700518 399490830 917877861 893247675 949494466 225015703 731698919 63317906 968528406 373579382 94335012 603145964 140849104 646207804 870585504 506301599 97764549 541841626 187828784 715861360 628589653 612874565 931980851 976135663 658440470 115479665 517228238 472952444 726928870 791829544 567019917 896008452 572240734 353225473 457192377 937881739 924205634 323277904 308024766 548896601 175002410 314400395 837608076 622466824 462430836 763723530 797590751 168679769 983099066 947749201 381146676 639817656 285989465 97340422 256473701 661769981 85493338 755479428 237242647 469304673 58719031 919194500 769767999 553975577 365652022 751967716 154323431 552857983 71071554 993878614 701717521 503321816 370146547 55871458 420258256 77373073 784954979 718430834 521263331 509972316 803376205 775231804 497486960 859340568 36657326 459203128 451831332 322327777 359423365 565493382 936962773 812049320 84210020 939595219 651491021 248144798 253259546 424295476 927628074 330842717 375367445 193959255 501950951 498680799 235138150 371047038 868145753 327436007 848665044 542256888 340702867 503160470 564395193 906821248 48814140 84257535 132010264 569153570 501147751 105457212 939268319 774102314 472838548 417712604 808393598 685831283 409042311 744102811 327788611 232160292 790816218 722540097 56170294 795647969 517058892 966657049 295525275 146519582 273533031 328994240 580117745 222457667 41221197 964373902 749931635 432555029 444121548 358098441 256393786 376108274 622533438 47224304 382282482 148404128 260534040 372566697 761076560 177527941 107052897 685737360 189081695 896882962 186266142 835154507 895080119 106733249 565423158 83366206 816071087 745548285 49999172 286718880 2067782 711524631 650367171 412006069 939215549 859537914 405756865 523488048 413418748 436295074 502448269 62281954 702336948 615192372 387191266 819706517 830048099 691655642 453105098 791128736 64625575 696811654 859455705 871648581 523400917 827939690 750133479 791970889 539789422 362140981 644431880 895886976 299751718 565751426 187381105 104559225 660332269 371157768 906068225 888123565 759962366 252754416 308646513 371661329 525572160 679702147 959649269 579003655 553418677 291743759 738328022 788444176 764208668 86445353 3310558 507499088 834709347 376911741 538862363 992122853 70312642 953048306 67139449 660138655 751007948 185688095 853757021 453160343 74337815 330108086 123633203 283031354 838559273 34257779 544184871 148493478 471499557 724867360 434262376 123111648 117750864 874660702 746353249 666401362 573204134 289997270 831298272 235336326 9089605 681517157 443152185 70442660 765359214 794420077 248051628 334750008 536528489 514507130 714023053 367885124 860678875 330246677 603028430 603175393 522168615 268233229 769430364 18315105 620178169 576568459 476358417 663099568 780885987 392604922 268129991 863378112 255364208 323331073 913353675 648113574 23581184 553270702 841137246 980935377 913443579 37742454 673586103 804223754 518770326 333346130 408139913 132653132 401440991 179086959 947583843 902896670 138492649 164668532 434602970 232804583 165358903 212334293 614361784 872393658 630613705 908607284 687412292 669440007 599029545 734008475 744882508 510181342 418842681 645287216 226628986 539148031 613142470 227475700 845086929 574573903 593850598 884408653 811102859 146289876 783203463 936519713 511736825 114820568 732805112 359340593 373732657 7927470 483681093 791688995 606580878 168042747 328683877 34263469 208355986 582370434 479053459 519478891 95805177 713710062 281964308 792985847 901477339 360513932 729796891 895117526 332582944 127076708 245223656 822081319 751217443 897574260 907688780 459349424 228233910 684943884 556622485 356047944 702922853 590228852 425882352 73285893 309830723 127912746 328389645 683064067 430974583 327578398 668868724 831131237 552163255 88285664 283773362 300869930 303507152 934680237 976837439 488618569 317926673 70513308 612293764 70392141 365512371 297356558 567641162 586759487 562781379 281690772 80080571 286335050 424458605 752930381 497668032 15377687 530342104 593642111 73021985 338491396 400049617 888589710 735257585 980491074 207944142 521938640 873140331 917242345 682487610 694110182 233471408 939311923 440655839 765390067 20761976 844511749 717637592 956705320 722895409 611973230 140153360 123601414 248257604 399170610 141617143 868464197 200654039 194792098 769990886 236482512 272594887 458754935 600926927 511122979 24755601 321272132 970746729 545718577 625771058 406796989 196286371 908036123 426945534 245871887 562451856 606117968 419180997 682943824 340356967 464328936 448417371 195334587 914468218 722187152 302742784 940533839 192211326 853466886 368340884 942655971 115816141 604795098 433809561 984234171 785873302 574610963 250396422 559447357 763917755 338848802 226755283 99718082 414733396 814500701 840040698 155678473 691038353 348225385 378841676 942740892 206625709 999376381 804471658 181797831 958896773 126049448 763462237 670083095 146816952 285635403 435005645 770411199 385438029 122874840 383132411 518364447 374110345 8862923 513579635 371800066 348905618 686587265 454233014 548246065 47813975 299560280 388251064 577642482 331135269 798713833 882505991 601889136 323380186 379190850 923474101 715389717 394399484 45594473 347309785 164875553 556821229 9910942 733893220 699428722 831430167 367189548 931354643 699028173 950617606 191101707 353089212 62015249 183210669 445596573 414242219 144659720 541790267 176062868 47703208 221188783 600524655 418566226 69279113 997031948 261470906 895622492 155390445 900147698 895442118 939016329 93493522 265364350 489223093 887002730 255184761 511205425 720950415 480174253 797539396 751939640 167643304 517791270 242121833 510587433 594545907 311951560 735788924 269626485 103402405 954426158 571326599 771954895 263491227 80680148 929761779 8429587 637526545 126689535 394706330 361913580 189662295 2338044 574173066 365774160 461835287 235163860 394651850 809331612 339697922 792548437 368176954 980963105 749224545 505883476 448680747 648370604 339391227 446452101 285760433 109631139 971830170 339085047 321140380 739999156 251202866 95260875 711768427 995372274 110266626 211697904 514198212 225061818 420429893 31488556 64531652 680816110 480285438 643970477 992692063 411368221 916948674 23964041 952451087 80829594 357836615 460981363 219605554 972873958 259607763 679191477 987402788 578223979 295930372 271641451 391849868 174713845 697888327 328431672 783610315 525263978 18280294 887180627 826636012 226937935 934859122 852584760 245679576 315914196 535260515 878197172 287779496 467456942 647035216 232110435 41203673 895217869 432575923 906178805 490789131 195070811 213182104 809438956 190857170 183122769 394893012 693915918 330961375 451464844 731848496 105632512 210108294 460925332 493665637 855017317 980635778 243401421 815058416 986842479 701803833 243308342 197579576 33556717 377397091 323997417 959875266 168064194 595895333 983048779 55324378 69587929 403808124 794542957 255549953 950496259 798763098 65716811 241101669 430937153 656262053 197951360 415963073 832240720 476233600 991634499 228441907 342560253 698353234 855137782 737165868 328325416 344072464 937928146 699521608 300175097 203029168 242809340 179763834 19875619 251207555 576022479 274408122 781143640 103963464 979092940 855829830 498836288 123571574 958812231 603933316 392748738 106198724 184911453 390921488 58550444 699491792 852101556 947810011 686902512 696951469 215934356 575086624 601329686 275734944 929873405 476621245 191925402 436567193 882116126 488005648 198982244 829520171 518997395 76558861 302998947 532218343 754498637 710525472 531569654 418956906 567703725 15345016 167407424 599700052 336619082 842074048 4637804 648441894 501702536 917742229 151326244 56537759 287147481 26106550 397141848 681265733 832130818 250771512 530211103 43280759 904592631 917423650 558998338 807415899 332480910 258362405 538473732 313517368 928607808 573043763 958268290 136472349 831034373 175141671 849369711 888449303 363594280 559095175 469496505 782287291 227668392 221317652 842866036 570476882 440776081 245971378 910524515 5872919 779133070 70232260 687721562 567903221 607028961 31065517 293773376 903971770 785846982 938623321 918601048 642733614 599907640 331776477 946000744 417125123 808855661 890400927 362724244 115090061 503573023 859308566 689994173 268498871 828108229 691690102 458826704 391261488 85290350 222395186 686000277 270714630 579998776 26408196 220455940 141492527 382682481 130376540 923354760 771228772 784202564 568435666 519506022 77660553 582179654 939702054 733360902 676450373 669115315 853886504 940048703 105319276 398403241 415392478 457643468 222232613 435353678 477032233 321958939 514449828 393591684 434942273 658774213 203276216 826313082 46450814 988973975 585239307 303021479 950643221 60365496 739816815 487495864 339382552 163631785 823719087 186361887 328106131 256558116 554274578 646062295 284910390 681255448 642782470 804715941 257152677 233694999 719027759 407153869 153438062 723811627 71706623 95131802 231061297 265747804 670372067 95934947 29569856 542386056 756341741 114325304 588474178 173083710 446713159 343401330 360524830 373864143 713027762 874452072 86529513 310890618 693474484 342809262 590010660 483400341 613001930 613203337 55388147 247253978 1371327 9580691 929518047 127246875 833250516 952300152 564171909 199127698 291885571 438588557 928697137 502476747 691237069 991138817 803327244 449056022 121789964 357805198 116493624 398079158 552810865 254998385 527867164 851063969 749984131 877835078 310679692 917175684 164227578 20297475 87342667 671189125 87152672 275527033 519706838 17272029 186751363 310656340 517377546 485455266 100002299 996610831 941076789 960716917 354683452 962739830 464549344 540679767 887098452 997870946 58030485 499455789 144660930 490721034 802207362 993070872 3484004 586493050 360364177 482374577 639315845 424112388 630995612 267434033 63220882 103437461 115458930 380900741 594138216 141155263 467921633 890715292 572333567 877297403 759461658 400384427 165233264 958912989 949915492 913766435 463423903 630839696 590539188 27917180 653897393 38349017 817411901 562753848 607294181 848672706 275643492 499574942 88721467 706770651 93537819 48047368 763348349 48819688 358675713 729367883 104551585 610112513 535919019 307070924 38583183 841667048 193721629 495794031 465648568 169675167 116042839 95272359 644973615 213397932 273576714 230549764 608908247 300146773 21141742 476942273 658363837 379000624 842952731 998069863 781424752 49397808 849867054 266375470 40117460 442951998 214570493 490158839 205368776 385903679 155391014 512972309 323601689 246555271 753694225 786764000 551230124 11313134 623709798 236870566 11607066 51669795 8106358 227236727 545104079 149226456 933436158 727902787 953468008 429812947 477953369 56543803 243013024 975755037 131628471 699730471 599109294 341468359 122667579 399904150 391489378 186107384 420405301 795448991 601497154 586443679 945148429 197417954 247007787 846837376 974595144 49713791 52890088 990806212 954859360 654329083 137644213 984579258 135112152 513194572 551784832 55299830 921255111 153038583 200340228 188604376 195306786 27567053 67088282 555227161 300620401 171506117 929905120 665614582 399384499 212084294 616942061 953172385 435865134 962505810 856355092 294213865 854948339 812180449 421417395 873548696 524862412 599747100 184022528 353488297 39300772 451694470 657612713 498937914 103795639 913455120 848322884 49537256 131412944 316001551 148009127 154236103 862502000 421484314 265151773 871899552 62265613 484477993 219985467 681381512 311909254 110141093 222780840 757516012 630376804 445738376 887949330 226539754 950597088 197703485 450281563 482673582 566216030 985493440 82743070 214122686 782623261 663274633 278526424 300636645 479449339 205206391 228104528 217242856 138699641 311810689 758769567 684797837 129048556 289907953 945178322 763057437 912440481 219674389 572634191 692188132 43858778 727988919 892907599 989575037 717831108 948465803 671572698 459712019 191899475 163642303 893846759 607642350 435449583 578343874 262096261 647825907 16218355 786543465 608492712 186962533 954536445 898252242 540438384 11677852 720682853 873403587 196435164 88523588 612471923 467923434 530856873 463050048 194751354 492601359 389583820 99555208 222572144 786424775 174552429 548955936 480556409 698942456 31455755 601971835 295900484 731889189 740900229 648920306 199545815 950837374 888859471 563634885 91726242 149483356 557932598 760096788 985823499 968762235 32528654 844810883 750333863 631752183 144724215 506342208 838628014 118735677 159365971 292561098 967777607 889008927 813700982 611978197 822557231 133253108 312367752 17887408 403190540 720133611 50690822 178498247 781566165 185844814 562224558 259225716 204522725 110366425 119265632 363323447 203459312 511100202 648903185 870902634 860652676 457776798 958647636 712737451 235264929 392607860 56610249 951632484 740821268 8668767 285331166 962786308 202273173 821949105 185710824 719473272 527351522 937469503 967290598 343300276 519030928 589488777 375149882 498970959 410514406 401358639 884259950 243436875 187816426 172447255 241810178 340967501 445088599 334212851 63725863 945765571 735130057 760671353 243502800 38983811 308622986 592042862 376575418 18135393 583177974 734267120 581082454 891691099 202304508 570024998 133089179 630009981 746688335 595524102 494659157 84746266 441133076 464911487 218156204 18764599 882803056 882030695 433932921 327053139 627193873 764650207 203326203 611433338 50606301 184052648 429985285 351643887 829002037 35992234 379602600 538407323 460214169 171800376 516438792 756622847 398660840 646260664 927622484 533490081 963416581 198549703 358715626 211606461 685964288 804436450 733241260 508281274 135681613 747905470 247535804 128856392 805358289 993722030 140208120 115831769 370580989 446731868 649629876 130305818 375647326 909295948 602508873 971725913 976356401 346183694 999012618 48669185 324645487 23399584 664442359 453810656 639237158 930608110 183558377 536003180 235211934 846899644 79600855 37848874 516359724 497171635 256511495 701377710 980771942 95721412 994583107 845332150 662524041 815127783 705406622 471232418 733972598 886387236 163832013 952570793 762032214 593995655 622452298 932090823 360722958 399959217 136689767 525376617 437632190 580141383 496086287 870084296 531853986 224386767 122571118 783571854 646053132 235249392 109598344 306888011 277475514 877736127 819593563 93421652 928174193 367413822 818726033 579858950 644310634 463141223 754898148 78018111 262211983 456121110 772105903 423950072 811917525 485371113 275567369 724385634 568418507 684521243 492331034 124411451 53334285 614743736 203526730 769463833 432104027 662964541 349945905 564300014 556934976 188813208 609613396 322497192 603188137 799032203 612264419 450424286 17491447 379789286 8483904 747423367 716111021 577422995 86416005 21967757 862874943 798320816 230630345 846998201 291562530 391281604 216623616 871661060 439251839 618761177 980848710 665659975 274823553 220004626 277486072 766734840 840240637 539540565 448006413 535447118 313247992 829914003 473262504 273322245 845212403 763400117 38874955 990014975 48452450 181463899 396442363 161954315 460163689 626412037 903777399 968290553 127808370 731579672 936228344 163316072 927448967 484284513 878545764 38123162 888473026 156106914 713868000 372200753 860705141 16758505 353321693 723680101 701585471 534243536 261430508 752747915 532132433 498810991 979670532 892202546 990581967 492476059 96600196 43347645 515109878 248839489 72583402 31505674 969760646 939138610 786090995 389908116 338476506 534861270 800854034 221131633 595455577 74562646 269574810 22288682 716341988 189450548 934251078 835886368 450980322 33160114 276167614 172831386 676412302 283495759 114587924 852991197 574497260 448613411 5982287 597666081 525205405 715774671 86796630 379389990 590209795 123823151 278407334 339250529 521182745 190170641 615732011 153101434 220211547 473330155 502015046 398920880 902788884 542837989 905288906 810305718 990625073 88484782 128868999 366092478 276440527 114546414 700721309 793062899 714251797 576881658 8701648 346579643 445223124 860515792 651820976 362510120 973064703 867737510 748506905 322571382 10863625 812493967 421836260 903059099 811694723 359022241 629787034 371948332 801639012 470740799 792919901 128025230 345862180 693244685 24760448 529106667 566632577 545389254 614827976 225858911 96686133 277273482 134731803 327482197 141284567 224270853 5289880 623171828 960239870 981084673 728583562 591113262 350343389 214837546 802903498 492531334 473135419 541103263 918358408 481598682 231648889 434459597 295709475 70092008 59927942 531400990 451635267 652919880 443433409 854830321 538448008 720580977 387800655 997717136 888065321 885733772 380122995 399556292 682303238 422342316 926118264 712677685 446263802 840672774 128483257 914820286 497434028 599621988 319992212 186237015 608380983 972565576 540924398 217025262 856921064 872176517 866389941 205594694 218806759 496708434 68361190 758679669 587701580 466256066 608843901 854545508 963778516 28293461 463447426 212597593 170242910 315821824 188829845 63717264 596642840 805753733 462915438 881194739 294095907 800046659 815679758 31539511 549183847 131697189 500215990 617420927 368999282 622190387 558085960 572815864 144179989 541034728 973885364 473820900 886380438 883732430 191283854 87782878 964177267 262556309 176573903 670958373 283152246 335122673 530832349 793623423 340464632 92708927 121758587 296392532 10415949 287487856 131458456 409680621 797771071 565379729 54537593 138582170 13923829 236501687 577761848 793512671 50209024 281263658 230522177 623667745 168585112 613230981 340703052 630728151 764154971 526058516 506524529 941163466 550778678 418004562 815925838 128299583 266687184 279056379 545867620 85357458 528336349 812875231 668985010 580813644 345721808 314228677 254199941 40464210 165462649 41092987 184048799 919016407 200672720 419220038 771845121 68625810 615572776 716513190 157939690 866377528 128782493 50351774 972001242 694831351 966559794 789367267 179505086 970222540 774893310 464109031 813398620 357676084 304767207 384047624 85034111 378061067 974162954 423184622 50497831 517550323 519023185 239697199 839008665 584660454 21116235 750404253 770964024 36908735 201293375 939069524 951291916 804701149 520457982 826958760 992001656 645128647 615205241 965394423 499610099 364959474 466709110 467955258 672191520 184120527 181830139 29949768 415797187 187917026 839154658 846999746 848820989 687840206 774955598 789080599 759704451 570551804 823799208 691111716 682276510 671144995 798279655 805334719 757547076 146261802 604221268 486270525 962871843 11814777 283539260 439483117 32135344 351456248 758415206 734125001 754645179 119469527 12509118 129145407 63296767 802115632 170579603 695749663 625451576 280713238 704867211 313373350 919949600 165588623 954015189 134284571 249470916 564415972 209952738 962229357 998448361 269231034 430092823 268268109 273460659 16654173 441726906 359268069 542115533 524110201 771883132 732555080 148248939 927859122 60870050 834452533 317606272 202044879 371482507 322829171 551631103 331438477 635730141 493689992 787548553 933927602 936426685 655106618 720476180 827771908 252201097 327367455 169759665 412916815 834660700 352966010 864880418 836864783 751643850 613434395 179551365 243485504 377452386 491464952 535513750 686777077 245994265 354939168 612950108 67017280 838993297 235589243 796056026 18614496 258508407 849051549 671809958 493626489 836848086 243601054 498162978 365380152 870843240 45405693 643941460 63618257 360216705 628321697 497442016 959759418 637745796 1035964 117935723 194385794 585881517 854484437 981794585 749595067 523403389 966085610 911728551 887434059 297790855 690276082 559113176 849892630 983720630 163524563 412928389 249180539 665369435 234776353 618991351 68215490 550670014 805707918 123716956 915543512 118550562 567862183 162184403 406504910 476016415 519262748 64301634 679986208 53471340 304420017 614973872 480451491 315291005 748136885 446067623 429263929 301243271 72585845 840191532 427453757 719086696 224685517 3557981 12107260 679485149 71050287 443272233 579673220 82912782 809144282 309017581 371560460 795388351 749458349 477122616 450232434 792724452 733161992 719064528 568580074 491968784 355074514 423361274 54985152 471167933 236023318 947309814 781740575 967877469 484474044 982117063 866300532 846467765 728145483 271316797 241363311 260844648 261489989 883201932 304948995 882940201 442282659 105749660 703819308 623236978 195860634 782112636 402173545 965747964 126814853 196282830 989696146 582240860 13837359 478857258 167218457 242379441 610339344 771576885 916104466 296871991 943172284 175034705 842055893 484275834 786890963 80998369 158512878 58527441 880265561 784499853 257853743 211001686 164961062 840033483 573285606 347644531 616268012 422576426 194108500 313708473 18156249 649031206 712950976 282956493 184156730 589769706 344990345 401888429 564053399 755544242 335865701 993582063 477913210 633721385 800676014 430202033 452087811 823008610 71483419 266577305 209812393 258000669 176189472 675120295 570168448 548066405 479189970 858662912 213245281 881610029 966798240 474896287 52083151 933538482 395241990 931693822 289118834 488374099 861106369 931743378 425921355 617581444 69220545 361243648 189471127 20229009 219958165 649157359 189657914 877803029 217403236 86971205 318506203 850301188 391057952 459840790 422640946 268792517 992777062 152034023 40518426 418072415 351215088 30958316 445061517 398753119 895496157 25799990 822222996 55956783 655299363 454351150 438752411 643709156 327221831 305193285 859572636 936906073 290369678 270319999 397781345 328674344 725251471 305454003 479909013 463877679 602693837 777495500 358271093 755652242 399937321 327794417 895537799 926368402 132311610 453532759 610837456 860561298 133724388 935415591 330896600 830863714 149029402 507534291 128966565 660959898 443865886 158571099 26009273 263843420 109909304 249640970 790768335 812222347 7932357 45275115 763770482 404790656 596001851 371861583 660629607 836583222 99681609 722351628 570435931 250709035 16359735 111621714 410238622 760066762 857890219 901411218 706145611 11279513 634025645 764620220 454164461 878429013 488687132 501570195 190026867 740947149 587608742 480785989 914497731 440175194 381419174 459236397 442561276 121107638 706983920 14830982 439928808 879693060 333247996 955507135 638386708 257833410 754822444 42227297 615289277 641004820 705420686 518235824 991765537 613335402 431474173 283500612 65882755 47880533 320484983 721445003 531076049 958208532 954211899 25972612 908948587 705601539 762645252 273779531 301220000 275860762 833083417 110826203 92140441 919953212 820544896 624570395 800846693 991173533 568889888 785506445 252816342 911234147 698280708 927766061 661365182 966649425 106083847 293701836 39561571 668504881 701931813 944865524 88753172 336393640 104337181 889886220 487768768 959322894 475851049 71288365 170368128 504548740 695522880 453184281 959859812 205343928 631346425 620116636 452166403 859062422 723896000 555695067 628446811 712820671 779964547 498771323 83970558 562248247 893881843 814271902 125014717 447798680 865471413 820830510 862954504 207701477 297777194 829655486 238717484 963702447 670669390 916423165 649001981 560387317 840504342 206120168 484069133 585845694 339956307 64785916 770198658 90849861 698404489 115274210 660077705 696953982 130556724 709704242 108940189 849429668 488927069 712998785 267444175 107524699 122392246 454621904 216528610 179517859 910691880 214853134 52252631 846326812 678148591 132333740 185194660 811846905 672455275 67421776 211335931 385220568 976525700 349533842 78493216 489313140 132451673 861982808 256021665 205006754 128679581 74589944 76364760 653958761 559721275 747483184 887948748 785689764 684644273 555011173 299663490 82460632 479960167 996366385 884209646 996183479 611253297 523617552 526687415 382620516 442295202 33046492 140591213 703029895 963148827 777706601 201878673 322117443 749916059 955152499 605101016 233622713 738215290 528755936 868869565 516185750 369760056 112450825 659042335 477874274 323283295 661842432 920894975 667610863 623484242 244842349 618288996 881711063 874851573 79328197 218941485 632759833 721308706 339118674 554121136 491390992 561309248 244814236 355633360 105922301 552538305 907922968 119339338 317604450 244083318 880031183 950019064 928536442 189484322 241584507 976856794 268500967 333853005 773426143 483981413 828892540 401474635 649990633 385924056 594765325 813305199 681580194 45048904 58778894 732521962 585925033 262333684 161549495 531430515 409882322 312897257 352389654 52118142 653193051 976748370 976608307 196955211 7629221 796942559 970266131 383934139 84790945 692197264 894113809 12119581 632136239 171970021 742723593 700985370 973036282 7650146 63281877 825986517 497812501 911026834 523009328 297923518 79026065 205757774 525887336 797114024 592023223 293502840 637798928 377993338 890730134 577040172 502850042 93285175 179227376 401781587 286723792 707400201 43219447 329685893 757103766 458707446 21183611 335027841 55606312 465307609 829933290 442466914 127128745 566485247 596647739 120185983 496888454 357961053 382339509 853273426 670020046 705749838 18634466 605023431 423922807 362255831 770190556 81055219 530714529 621086841 653507941 441555273 246300889 264515252 184252783 329531537 409496430 85423582 37446245 463904835 20679383 510733274 896352724 900787254 343154997 669189813 10663065 934051855 692391031 910836216 515608164 128216615 249589892 380411867 103650492 362695500 577403098 534566175 16713564 177855693 977629663 854716322 31513795 281256670 84943653 587109622 917483951 272325745 421192984 621135683 855847022 642703722 545832284 169106739 82172696 310007933 437753235 246402695 116969638 780044079 258117354 796288602 44386881 459329887 40320110 227929193 99946188 747458857 427108831 962511200 796545511 685054013 189518775 859041722 872858105 321755847 955923968 111223590 54141292 805469918 320436521 547162443 464844484 838631253 733663064 394409764 269739301 281173740 271723763 264887024 593704780 811759340 737430833 370910470 438848100 688370696 256796416 27044869 924647725 139053299 4871328 534774514 675288992 173058360 489439083 1135142 934982319 210265391 311222904 243525503 764104855 606751395 711490859 332156516 988099171 473095620 594244709 205125431 262585029 639324682 596291822 845941011 773260407 796636697 932028546 717832949 813445987 534139799 672672862 297591604 530001639 750365200 616880823 463882392 723310977 462779362 991022558 867636022 508048244 309390762 729896292 321178159 417445258 4657748 331171346 466419302 678140915 17409047 598652162 390783219 124704876 51639294 873472608 427592875 138683033 107604288 73450048 549372 219536393 308814707 787160055 387456228 226289215 433408660 505424063 170321224 619822133 475170881 91501321 498876577 718443049 465241842 217874812 733150239 987783503 399560601 499998881 531314835 708450685 585898622 343014646 50798651 988859585 132993505 850957398 136732950 71915849 699482007 705610143 515960749 627309266 730122011 619642112 760891490 923930947 377940967 131632114 339209325 36815901 263992425 253961447 129230191 534392006 16222825 868840107 182597632 873199674 23914240 652776611 80408959 55838642 5773069 405130958 575093877 49504067 140131290 70094226 783240528 920916607 990119513 411385926 398918746 617743262 791735152 4613934 962837082 698216900 479143119 513655952 229390055 348068209 7331371 907849573 540683961 853326029 588695063 328176811 702319717 893593622 324536766 434496760 152113663 719822402 32426514 483084558 287840839 297030733 925847233 322960968 478098803 422815121 643926339 457340722 439938693 971029276 328467541 290442865 321925639 21571585 851801799 317129714 753257528 228497262 161136415 268467326 847834687 854779783 73915795 250957145 494701209 499833504 365098635 37852018 841118899 492749877 226459065 329898722 64245168 752625666 53132654 849403423 807771948 218802322 668468997 477995357 933191711 770455808 735511577 543922080 85743308 871553414 6503325 338093666 752159762 885632624 739505025 328325642 673005726 794578833 120770958 862997025 128175602 949804151 867482155 916521387 885717394 271414381 369740965 743707226 155130907 35467960 31472748 262648746 169317283 431167979 816989340 492709263 979110971 848444799 705146475 737115098 873205714 316950183 754190241 971419537 437195645 463390920 106145036 976547588 752554580 721765188 452173588 972379628 907589168 79916122 447429416 413048485 651342743 825807977 944827188 926934001 915675235 953766514 302928470 226655114 118114863 834890822 364074000 651780257 101015342 244856267 739534113 361510624 179236262 644086417 862133797 140033884 722907979 37479452 162660597 459098468 244239896 464847132 939774640 330357287 898927464 281216690 931978226 60163677 597567962 591224746 751771693 760268216 762427017 918968216 800033261 774944951 990535275 587457756 181049756 138352179 493711069 355789887 763779572 659248976 754897305 929151937 426561819 984317678 101630473 767547546 510368605 108827308 909876403 605126842 792679307 130038599 355037196 322611691 9063662 649839641 245895901 947712152 829964015 778658156 391076946 748470817 49285798 503587588 634019294 313386116 945128403 853878100 412958876 402758766 115787242 658345021 165900416 422550906 386310740 245403913 760293882 460241361 578378044 165440326 264570242 512954230 503897599 703289525 121115696 108431767 715047737 408269284 337482993 69125520 167092380 675234038 855447085 100189653 654539714 134165928 185428474 272324057 258864863 928061286 897738815 56387706 586983277 655550674 175360885 700132103 712002347 447986366 970566072 910752315 508497495 816912075 140561810 14580854 972155883 880577276 224009955 657989473 33817522 540038817 792359277 20291921 108249866 545092867 902417483 695440598 686084895 95135691 232823763 535185952 348867450 65920813 550801581 934592334 825439813 698533036 986167252 248826201 615971854 695744814 356750590 849342735 167719875 865422272 542257377 697689834 323463867 230920754 480603631 747537270 521796934 620574907 798871389 532321696 290356203 255610289 259746387 934812122 364020553 588737954 533736706 713021543 25372274 144650487 752888742 884293109 886862350 760733498 685128514 808472303 888661737 621307915 712854932 591637396 841160432 868109507 475192649 806955277 649438434 954504806 277288757 708027321 315444777 778771123 505884005 940302023 868005256 156620828 427750802 626511486 749802409 738556316 492404738 113262851 390964401 895980192 523495795 966066912 41329017 966711078 53756050 846639879 309215278 402135747 364631617 303560733 896083039 728113746 958684991 786604531 301229765 163655359 326422525 483846290 721378912 393724105 943656039 516490769 533401686 464822736 600910723 573413144 108643120 778377367 932363410 959114382 272316357 567298054 897107446 788187531 217395121 799029823 449203852 764897688 207656886 495750707 496794421 685907335 314326259 488240572 327346610 395963361 664309594 280729592 456215480 402493293 220195940 140099113 969260684 230598051 486379373 283834585 836185334 702472494 601123423 66185323 346132281 102815990 156550281 61469904 687102561 966792265 520191876 89234132 206014726 258506176 806525818 622583706 780534979 64742967 369340330 459359128 896473087 320593311 23886688 540689789 626816371 439636450 143535341 3593556 401221168 962073442 786261121 912142606 434739562 542865102 447969551 511249262 617037343 827894948 763610788 996184485 347641336 904130392 162271264 305578195 897258417 907687838 918464657 359482520 655640113 984204935 802295768 82605862 649264656 849705714 879588635 964388569 422055412 931006373 294597145 997271049 753821697 981014750 613219718 97729004 329493493 155796195 265288981 497097379 761826340 635447301 679373752 501755816 1904940 496863184 945216497 371682247 912781629 728614749 222121782 501127681 122752261 713588909 899988873 194598365 208485177 716927449 921004840 256356214 389131690 448398580 862105624 39949453 310992324 470087697 599877781 97868050 728511935 18914462 670307928 659914065 572482818 93073369 697265130 447025816 758613282 946416194 205691352 222616157 364011878 554513658 710602957 8735543 824132298 980763022 530215589 379943783 396328099 458188873 848461655 720559363 121845278 994986065 326799017 954662869 485626259 802897632 793379131 746687420 530605797 501007157 777215889 371088763 946472537 127950852 104192616 244976462 595636545 912944548 826600773 6264709 999495365 571176701 626955351 614439431 429075305 772412317 461236886 964159017 2684324 657805312 690588746 431021320 918684385 931384228 891483361 785986998 211918131 8444242 731034850 877454617 15884704 603518705 790336703 755328750 775710474 107346159 272330447 96846727 295277964 8184648 679854075 934622277 872239606 949633098 416805686 266046141 96231595 373086439 440489767 848136552 73208338 371087127 142760015 314722415 226109060 922749161 593578719 57747641 369705280 681469896 3956235 799105315 475998414 129429202 800098102 256351300 286655542 480614214 123190318 72645859 532977185 470243060 521534518 572596279 646094971 619986611 776681238 318746704 650546114 543308137 416448565 187401818 816213789 388547733 601485757 850240850 695614688 978326120 435185316 92246309 576717099 207274573 499861292 917847154 500440883 980494629 351873749 645390048 948268895 698248256 276136517 309452656 712265948 399011655 988390434 223976484 572668709 294071213 655859336 242246886 978287460 237173286 487322330 734003180 49675058 821738843 456804795 874459747 978057891 263849885 495350861 855470578 179133965 501597094 482347516 51165903 280451625 786617692 853596175 507682674 460301165 299469242 803518835 994304891 747582300 211656536 251408222 204660780 42484584 924058933 35945158 162812592 988090302 456131059 627782101 712304287 274910339 381051671 89765057 723038998 478323765 91248943 860385814 310554913 832815167 563850897 947096258 606646541 215790849 427872192 747168285 519973821 299233805 871602621 69849367 648747258 596062137 79978108 583432241 95929771 779253329 566390513 51129362 16774951 741641249 918171709 593482364 180636618 31494691 638684658 490792093 997114271 763058736 232504873 784557117 262823051 915479464 335959183 794354031 237453983 232127391 543312585 377958180 366434039 534616560 607230810 977941800 605860162 494113861 874274059 997491693 955222345 471819310 484755293 322172827 843127428 164321065 590121493 54960560 733575818 361546235 40252189 410205016 517841469 376120336 898615463 312845308 266404395 95217084 393409140 717190697 146465614 135435740 949984385 922640380 887349694 443819245 744917468 949751792 154626336 6694617 778525283 34769429 180182279 924093416 439644658 740956262 313213318 380098587 411028826 920341783 419772457 860818513 569167767 790419951 397814232 843703405 937001536 218893316 708372267 550096965 322869609 572415586 100954481 521857005 857823295 186310546 226738721 501044939 505872560 332915237 199819615 643706482 221816793 705455792 40518948 733029349 414004913 693495361 133227821 236193061 704327348 747550931 476650569 515858621 303666506 310042460 755901549 579808101 541358218 433673793 296398043 388753187 5259080 541083687 72604324 545281226 580515699 657690879 273406915 563092331 404206227 544627702 601116451 953478540 889509385 689016459 851977768 899539263 856046131 116256166 727690197 789142272 547668084 984612833 584539082 209504149 32260175 146228096 586034159 503660505 512998175 485702517 392996845 983693652 151474292 807413363 271698778 760182652 556113099 677552482 607840694 383947741 776748472 787314516 622882651 153334951 799877787 921184828 301065146 178025680 948340960 791768318 395754519 895007096 373793307 707238408 270980458 259962996 48062565 597086371 473971599 9739252 456321160 497229861 68571309 317900712 513401292 230327592 621124748 985839936 546670646 128016688 706528779 317431944 170628198 504516419 167278252 825566866 154574319 754689511 720846552 963759308 176608255 804442399 739764185 434138560 56680084 900000288 733222591 637525392 355299211 674029702 80890432 233670481 753543578 626496490 518499052 185042768 508310835 17261350 981686776 977462724 258406309 687816401 17514808 598107107 290810509 416377453 609285067 383275318 328334201 235847848 767761917 970088065 61727942 795263594 306642117 462686928 991559445 50546134 83254242 479945276 133964429 939780293 670183942 171976205 604899711 888619943 665732643 721116818 323995598 651362511 461777953 44771050 593973635 109839716 811954285 293634175 481850211 407936991 486505455 441437032 489463092 789834651 390860055 875756027 117820584 642073489 826152172 97957032 60897450 463507351 23824180 842214176 184818652 231707868 442870688 236660535 230238567 827990104 632564197 871109154 293933327 557227719 278640646 873173198 315042395 782186280 578307463 644053542 106660735 584070551 724492641 338317224 51769188 73968340 511601344 483060314 586665882 394561419 488432957 243487514 148113465 219794920 535873457 838110770 317922173 513037249 539660264 848423967 227786511 116099027 81584340 820219801 973774815 279352409 227980688 742227121 408973748 44410591 96904809 102386362 399162706 559735232 258709966 505805916 661305570 942857546 797756968 199011877 505393474 450620049 366116422 615422523 688443307 341241501 871842280 459332332 133135445 371386237 183331695 696934122 75263861 392710862 721026293 616647255 990934097 755012398 909960488 747454345 402960698 820277612 304112454 841335812 732961660 180936267 925296055 564585276 384113282 708106448 836848134 670993489 38825969 659004963 285820839 19210099 229620241 917371247 644781739 806128994 638263452 706575419 541736539 739093586 226598783 29168787 569822867 487317723 19920365 675369327 461675748 912454391 347806981 369647981 285984757 734471921 473228748 677174412 228590339 626326206 573323740 201501814 421656658 240250215 461596483 60745208 684845406 327151378 838688830 103233185 303346610 449407263 781974131 158662054 964764181 781273904 328202823 266608874 372186986 698819294 701334010 1075847 882816959 313348935 366047310 787194204 567014254 553122419 579795768 165420842 974474818 361782706 164064116 149469940 318239011 860000325 433089892 785991710 792280348 400138069 775197895 641589220 204973720 143250924 396120037 2949763 140290558 868165883 116323680 385802349 395885743 878824225 886979173 541080614 921548725 886088295 319719703 928420872 886509191 615386363 515165475 989933908 916464053 156532568 835245029 316933352 998416018 974646489 203929809 193466989 953810593 970584751 393695204 274255640 988226008 219298310 10949209 788091457 268412646 350030498 723709191 920859652 348662245 891235657 602111644 92323051 52838348 218165722 799267450 675611755 270637185 304549330 911402801 486123856 969528048 885841062 469983100 214385373 421318530 338061173 952703227 972891975 379839557 557356265 232642303 638619052 378044114 725174881 201272938 807085911 751695392 325335378 101136496 521185532 479965892 913729073 986989072 836872464 116049129 899770060 494159261 800212610 930030223 472272555 669483955 444529648 102332393 327642275 858281739 294729654 364800747 820798330 653777691 463531483 873371413 927078045 871229210 470803928 171897074 717374180 522777172 859129902 679421118 767576356 841079493 239054882 515181946 487099943 304421935 153305589 111957929 352844565 280727936 865452369 805568213 94954707 262100400 124109188 804803533 277166090 526650574 400591420 268388375 694950074 865416609 466924263 486893717 386515672 585197090 474512771 976421094 8903638 142561629 934702593 466452650 494026922 211602931 342999086 337456496 643621364 499641600 244468256 162476120 37896488 238339194 525996372 24966314 611175000 977336143 21397189 332826349 728369543 663086182 13460418 176080441 819957239 273710107 105332213 992889689 309895297 344858888 26863129 165196966 280575047 169151668 42954393 30618857 890056303 326464726 322157434 717521984 598042075 803357931 56945439 73042024 892412791 632136953 639422325 326009782 364887532 67201266 259434435 269779719 238199558 609679945 272064724 222284404 541108938 923632217 72843873 70369789 662822731 395020166 163477170 321856693 941449945 471707437 410010391 164736629 667909364 584880782 858725347 812710128 878695338 784934998 138920572 247283689 380759880 789988902 28484008 291614157 771396324 225895621 742640809 105404073 492281559 154673832 404914802 128228089 835993438 550771202 692760225 909559493 824771954 280225322 729776814 110250332 882797509 411313002 245558497 834056260 852000780 591238097 380118998 947000096 842689143 713569302 477205368 722953668 866515886 760081010 439223629 321572627 237726873 855443797 615885407 628606882 454118402 952259537 585057173 302168647 380983206 457848723 122352763 804342672 302963297 777291394 817564852 323952851 806862882 407485014 276051874 654496881 770268367 578296283 891012120 728431958 339429359 627926001 92435244 499188918 257676720 917384610 862605039 398753586 297069397 862681511 572786902 813687851 39187095 42891991 150521068 403670335 867257351 291339937 429276830 353229228 37817727 640531238 98420948 175105033 190178843 99148484 401671258 350931112 344912065 76080270 236907102 11236768 751516038 74624845 717867601 207818778 39680106 615094191 660571199 552126950 123780243 556565176 69360713 815143120 676739322 426001358 26006968 837938014 632217183 61278914 969822052 371795793 395152355 344401096 748872208 549191891 391753766 358722408 58406985 751683940 607569688 765302856 552821563 273872487 628892226 447635762 509577226 484402760 548605544 456110083 669878983 138114535 120350750 36931479 387410745 9270399 204814846 814108358 115790260 689910746 165030240 477862677 932327316 535957970 899195476 127806096 572180304 945058062 645930528 790230255 975792353 573681428 633360089 340270180 896339209 161792713 476223243 504603748 809943358 331282418 833922289 556752195 847188715 446250684 635979687 11601179 159783604 512836634 478109541 162350148 732948485 954182982 701630670 659975755 909762950 860250132 572952373 655742056 905022147 489178793 991703081 220699160 141548950 964515436 896698358 394022854 239727345 741509038 721656040 152727098 612027164 681961906 519137878 407240007 993922736 342683907 621205531 662301189 795872418 365703403 532400179 70257147 581662667 65530417 352319824 179128888 217209194 832140386 203760852 514810358 220395693 891085752 334873293 804877779 510509114 144669204 492338453 783833138 675289876 154572625 233275371 684294891 876936263 116744920 191505370 258237837 38964015 137602907 473449343 45438651 614845653 477135455 325827620 373350462 839817987 771139490 426800533 696360543 400366248 88809131 243109221 414566527 165429517 62604435 672961077 276829003 371451676 153852792 468554085 822244979 580685437 873712032 132556055 856199493 26527275 684025460 594784296 942984222 953855376 210758256 895550292 51049137 209410840 687741251 116382323 371428032 171626947 886244580 395844240 456429851 69927694 762451274 342253131 866345959 429174342 264913266 970634106 803850273 739241030 569786253 996891010 425512198 262891812 69868751 416193477 128429876 177102980 296920486 682033367 111982326 72124188 850064668 915480495 157796569 421203767 200279778 881164100 937637476 114413190 697935458 17892568 730996355 233949950 417505846 369412236 509749881 954127454 697211154 993613925 295513528 162905164 901446414 245567768 123250653 144591708 729727660 301862615 595482214 606930411 185791352 314137888 501683515 91224756 10634554 174295300 571862497 474403721 663039595 322983783 906562162 455242938 81892736 216422878 411488168 27446934 460507805 691104918 403982470 154489526 924548490 36562306 779857063 548083960 289960491 946290004 344319293 371314881 169880791 300329130 493608544 675062969 287301274 744176117 154880632 485219248 605041594 183268493 454309497 916365949 232323785 53501878 907495725 841947652 268697115 205274581 80519791 331220112 159588594 136873813 117220579 787772294 246720404 213652771 793333833 942942112 952604418 594057873 435636223 29430714 905370971 670033298 409164711 203814243 519507657 546666915 696678956 327806628 202772722 847260830 746416106 834167669 83631156 744274778 532198916 646403919 722849716 682869959 151847366 175105986 951221371 111710745 838217377 183278625 875531331 330497201 927485564 717585119 467420609 844051924 43145835 582831837 601399588 981881867 897817755 852887419 73673818 666851962 56746221 735322800 731474482 533828165 874814092 161297165 460690373 566924751 967943002 413688350 347282325 659308069 580458944 651975304 241757540 270566693 667842021 512817171 5672189 912928716 263601318 527237858 182308199 405483230 216130173 780181900 202991174 289437876 426129158 365215649 823592235 709175478 46837403 151487289 910843401 601130830 769125183 289628916 57781207 314497371 712230193 433032075 816125809 803768010 273155023 807094318 499589299 985361159 606420988 384958590 237499662 466912686 275196389 930376894 72831787 765616612 290352623 383491239 36263839 246264464 685703609 846618397 555361559 278362911 318598346 404642733 559508679 729532131 303541692 453622612 60285015 230794325 872905041 117659237 459841937 260347626 63518061 466483194 766192079 135014544 763722460 170793825 738824596 3867229 260523975 913569781 913941104 101515492 572827722 879757368 468750843 689158754 573834026 484313103 604118124 208449430 44851391 334148504 399128903 817500945 894483550 890440092 864265970 781520072 279076331 546235377 358796305 735123233 423248176 510423055 256957672 252415773 965499027 3378480 585771407 895839854 239317656 277437095 475030168 577578109 226377651 572777533 294402087 360142807 588667693 218766539 671274559 240783200 148707361 25234290 410618109 123919162 363968505 675077120 254841471 251889802 371810139 712455364 27934050 869845042 826615979 812985967 43806194 536724591 882697469 748563091 764996307 507973327 606954314 618257519 617259514 983539776 251071677 501941201 693911484 922891734 232845183 945206937 115030604 447655652 375397138 826202740 103165667 469764745 388388176 379343933 692261978 815166180 238637671 27261133 715769159 203265169 8470064 997563444 806243008 890804300 909935643 255559463 27772029 608554628 309588931 459096624 988929861 210820908 587924446 602729757 43022790 964396031 681675857 214127454 408969430 886817389 46016512 276332791 772558857 2471834 792615023 773370445 32267189 756739823 704981059 43372290 807363084 216612557 213008516 62586360 189633110 850770531 527306138 722761008 161280990 61981040 591575511 853469831 171871556 978385343 974935575 474381941 715020440 189436809 174873277 433151756 440366384 288661076 98542521 125674541 985438396 72318464 620096399 480144574 65337340 768483275 963981859 652538718 681640297 280826743 761457192 102012049 820559737 700427778 363375271 723141564 485730846 539003384 822788169 753296543 544658227 916217970 976157700 512195460 818958080 482878922 52459536 843462806 416881429 840219184 529906917 895882597 443095902 718487871 131921328 759345447 566664323 97960710 106703320 572156475 987740044 262324085 209356476 95895960 216136169 458635257 462193824 80894025 110243983 222298966 194521811 735335680 344517258 130292238 984066594 653808293 583310654 459619033 185878221 463358862 826568237 704523039 802542364 736656315 316813687 403932084 759754754 118023488 50394340 957312290 392536807 124257542 707338843 843497677 171481924 565087475 755655407 724008118 139944352 391095066 89256310 934959443 205464246 179350714 149261262 345807073 576596352 594889281 250757590 476850075 679750125 373973626 170084830 229159129 38980089 777316187 644469513 535074146 954381957 294553084 498797570 193556681 683449125 807207437 419127513 971496815 565372970 632276939 423745261 470165830 425618877 86071967 676368924 918262806 940816748 239527462 130617278 815750093 228916235 743392222 546161056 368115151 275960689 597117838 785399645 419935503 40615940 43863108 341001386 22543260 283955940 622609059 565147013 615120480 851690618 834402356 941223687 418393384 728548513 323585712 68995738 766991875 712852339 731757725 527025167 624986512 31185906 806569546 474635801 226714137 807660146 288388519 351381160 264750670 430642469 575028755 968117064 724372799 59225023 420948635 699581917 311838947 807454213 66894055 322648636 221043198 522568686 445996919 3665017 94196191 291599430 632148918 285116264 206479591 657302584 326999212 887535030 738311758 293289311 666076628 721867850 893134487 182617629 630088587 519760726 610338864 551083025 929359559 762658557 237383707 835190124 493870829 250586128 247681929 393899662 291159692 493233533 441860884 497027314 435452760 47818008 341365562 103871861 451238378 353564280 656921718 779067555 318120160 703297413 55396900 308804561 80054597 219869789 961495598 456496516 644189819 958471658 525975683 70086981 496470091 993695360 200974303 325854656 406533813 221937780 948550685 788879785 425948512 87114347 721549419 933887010 140261322 690972168 841366780 848572445 769174176 663337434 41811617 325522060 763117326 946947674 775182124 40427933 796131562 652668568 571940520 355344688 485226520 87736530 556359559 9085102 928657661 866844403 821064246 362050568 557320474 832640199 914907233 709631127 312455801 785977126 557388817 853237506 476852257 212641707 787842970 144696612 516521929 20133840 976793165 993004149 358554884 831677459 505395983 280556524 674978988 388162056 299187885 893345248 265673584 330570526 247103577 371722100 927987461 856656408 261775422 710205339 115475361 674254894 161990227 964325875 96035976 803743234 726556131 50104528 78142811 703359233 524853383 815834193 816420698 643025769 35092821 648910785 695269905 948727717 543323660 807297078 563017582 26523378 190857248 237784890 276334367 596136492 669309853 562771936 202544107 891461945 550883374 978160016 448942957 647378209 353157922 434506404 476651664 726700447 176812390 18191014 845832118 353719890 867035524 865789623 713941485 597120561 934138258 175796791 99074592 386485387 762132535 964890532 540385296 487057387 571062645 45430211 936499337 227681012 554854546 366265463 433100088 911997294 158007434 870975940 988947460 46667307 277973614 473334420 289945215 586286397 688042683 400343146 826981446 890722866 759387743 577772357 936671530 154266193 496830122 424715910 600440813 962235255 80088580 319736984 867255136 221771446 980011401 892508091 917059872 131836075 373151136 279976431 955516266 526398710 136549526 577645600 913729845 190517284 284658653 146319790 729031143 678602679 61637893 88772104 244268480 726241164 326947429 549906607 666037666 913423718 328172560 6978736 130278861 837790411 69636480 896975721 458990309 32621702 281753213 722954886 944489422 211485085 306618682 861617505 530431020 84992947 630895190 748389545 882981759 543532199 344075417 511643892 968639893 642473523 91763958 896482667 474155104 772173389 77650231 317498374 183587957 182121298 704771443 694473551 865698911 761851973 327357855 977505422 344829663 305984353 198339648 625282100 72108136 864307565 934939165 223139556 669572426 830159522 587791687 772634308 379876819 818502498 179683039 589593719 52165069 106570575 755717501 510350966 477823285 933647006 907550318 185358707 855161913 644318186 121102210 157292745 770484136 356464547 315512447 296913797 606401476 315778746 479381162 873256283 315906954 128381474 459754460 878825163 679608382 651495434 550004050 197189547 391411198 204204342 255316722 818557802 599846782 311451627 483035599 509975402 62286864 662736534 852769063 140995084 270947388 586630548 363755323 851155444 685072779 37786340 413162687 195359132 63522276 978756631 461017702 805599137 402510421 342011877 274170415 867618302 270481700 213750469 518016184 58186258 37971031 493132128 950475998 502725584 174947978 745559890 21394745 521836514 578899008 83489664 244355362 862672602 650956629 681776165 295829185 237074934 112143176 96493318 646956890 608667589 498237751 113048769 614799867 203410676 484996093 431526046 396623699 162455099 127845058 861777459 837647078 606129283 631047213 173249593 314627903 929836897 148946896 392403076 394463609 831223380 547637837 906830031 554846061 830445747 688703153 477788135 699573712 709984443 996989174 65458189 503291550 61400907 318671047 550691966 101492454 160416747 380045429 562830973 135925706 952067356 301674879 238826663 337608628 539897742 975886269 855284270 437321348 390560909 171830903 188333532 575235813 746789479 385298362 987909577 241222984 12926325 93190208 395112645 212644664 432315003 550510573 80099481 15651751 665253714 120943255 332889201 573435284 414040494 72528129 377928710 263098865 43308324 371547609 238340084 797712073 937628467 254042358 969805528 387364741 122571456 499654400 366458829 664420726 83210276 946864846 663362078 480263000 760471963 318978155 475563783 832338312 409750443 770405417 362284805 372360941 913923845 90784429 438339896 443956723 626053818 603174456 438862584 249444681 782032307 950905657 871705199 748227681 33960145 360559941 276971898 628414134 774553276 920888186 2291935 104115575 835451841 916312925 161434082 148888622 961249675 819597785 851989430 863186001 828305943 560355325 868283396 176678810 758461073 863423553 206300150 713435383 177768852 796980551 1543191 324159605 800071265 522202922 306016257 260323908 48246783 502506234 612386916 749016014 234066071 402822430 322945646 264621714 264096636 581975814 666874178 479392148 292754282 710477895 923855205 287959788 840220007 259655862 479470464 606177541 391630729 189978334 443792315 498393052 117486013 461757341 4905842 892635457 17677560 853308784 591809287 801864580 104648347 757702364 47969414 155900711 110544819 8851255 996454997 332862265 510351328 158242754 925102643 474728655 361192740 661193806 876724112 162120077 793826346 118851839 68913471 262070840 995068994 159733486 374902459 505318260 53078569 518800822 14324638 917606646 372886437 677695764 790316344 34200873 562929501 460818109 653085672 497611016 614267812 540225127 418570257 22934033 518963109 810781325 145118646 738847946 936678598 740766896 361027087 492969252 622215706 969084281 456329978 716774323 464273030 36147989 222726547 142197476 995015272 902656302 119667837 259915892 472145790 936607616 540455636 297420528 459759874 935624885 548058681 192883603 70707914 726542391 21572009 621188371 778832923 136303648 97692473 392124734 618786094 413094643 267934072 399596708 384956620 988808331 866196602 302963333 388035197 160612027 653454410 201057694 471588949 811371961 598820932 608751047 28016140 867790106 709508477 715734392 526693354 120622510 49583369 802120536 1192986 66146778 329833156 21289094 726985131 823392166 150916188 317155628 147231649 646318776 63789649 731333604 334862838 424228761 344697616 654687265 993611483 251356825 535084065 713346206 296176044 983553079 848092313 784940557 421045893 851902636 826916995 268942585 167003510 557525841 592512101 881710986 715777303 695779203 710479184 890002126 631066625 538596290 785456437 977494306 6909787 345113496 232200904 84083695 162634128 437375221 390541291 44469399 28678298 995748620 890751444 142975737 447120243 112239675 679177806 324397727 70132939 522281463 944634683 561640207 613300484 906342295 361189809 680251307 543065264 983213106 110820195 673842027 358797791 856482500 251084373 117332628 761499951 938316971 266361060 520192561 158180333 990730616 910574802 633553823 191916304 91581060 9599776 539811597 247554770 15030774 148847016 207698795 711935996 698538160 695253122 812903619 105543104 744351751 184757081 915994030 484571386 451355213 524251260 447151908 784329405 79686253 222400730 641012131 777517492 130842659 422230854 565741437 880984216 542067626 569369418 86918158 836091538 161063015 204098784 660637731 787547480 331619766 673040040 888912541 710984570 76395523 632701307 637500950 39206759 556098580 529134146 581991420 420629614 412199731 521612810 654820343 919264904 211497993 847290782 140935002 612800638 185946855 245629102 602051209 417296605 332381689 93261335 88304368 150428158 616423881 147326443 511088474 672847633 367763630 932360947 319143188 189912423 107491036 946204742 309760493 861610356 592018205 778198923 254942166 570016481 714769693 948399303 153851558 629074296 820549018 807280236 795524190 620321465 990483662 412684728 815905393 299164314 623944303 107842326 701083097 335536152 359217233 210820578 168779086 734075781 986227902 22393119 648127261 162534129 392862668 121879616 808288660 876330124 697971794 777717970 374175200 966802304 320846971 641907528 99358733 79577840 249592651 980733862 745803102 852527467 818313143 554607621 804224898 107887960 810153542 4940796 78573186 287135452 486869923 110264794 687320313 244076022 572896460 402719730 441762709 114166706 428341722 569874778 463728767 358790507 504993550 873676750 958364072 375152836 682584137 123204232 340786332 616572915 254387453 495719102 732658854 399156174 717960722 460202713 552096572 483137689 770741884 203222786 352264723 798852378 110497282 136831641 701528164 265003038 207061096 252965012 131436119 420154844 543148643 849876465 260830832 18229939 305340022 742099201 87600253 821549840 221672221 241706084 431658218 547898964 67137298 541224062 432775938 997628160 435245085 367455056 326646850 39730261 662618558 914436522 573553099 964968071 864299884 479713926 522191712 757860669 336880374 697676055 641947511 611536357 657024185 104381830 203307727 21903837 563280022 607329997 525687316 829443265 730416122 366198646 190728403 961258980 426269758 124021303 463774712 478109516 179684658 291406318 171971654 892977509 675463637 126921692 861305872 569644178 766128392 133412355 694305602 6354996 424040301 447304698 722567786 916686049 873680271 974852474 691712933 115309752 844929925 712177614 365865467 600483891 551106173 988173143 759303035 570800129 962194062 684978936 905729906 46213615 236868990 680511943 117307902 439956583 268968291 175915248 405407023 786894760 214926195 626541245 556283373 310468897 471306781 330304669 954529809 761238523 866850053 482127526 772380810 328514261 893704442 846021775 774750273 767765617 355547462 563342781 750644964 490842297 988165573 877900323 295798597 745888117 585387239 356052936 663914873 15705968 873678120 111137064 991263523 184100224 467935775 957044907 550406616 148426321 304590998 366716261 97938762 258913787 919249483 393974615 170918566 53552234 3469104 262163546 48037284 783881801 967062541 583212398 516574396 883388129 127939542 168132840 41897152 198491637 848626297 138413396 172063874 691990410 40639045 51349795 956237569 984352240 504879489 98666003 41958017 404639644 966460454 621050636 57901760 306466602 362819690 68490784 394389196 435640240 384452241 856357585 826514132 961493342 692764857 109744910 735929236 748189752 528583940 646173820 273050507 585863807 988840130 849558784 606114839 415972620 1581958 465579643 167194251 32492872 730503551 985858491 946325230 234535259 521168188 586173189 607481786 102757952 844479427 466453793 317259756 723574660 344198339 545186101 566079766 246998240 774269962 34002462 320013098 143022200 813980943 717940304 473619670 35411112 160449840 412510446 46540760 614305629 928282450 483957324 219949375 708919878 305717483 751207852 108724131 165321914 919306053 760481597 467745655 618865780 227180825 857806760 189491094 757154756 209790990 991622692 614174151 528209678 93098883 302826462 291328543 949991745 420086817 56435562 500944731 582966290 683496926 573502229 987486132 905495507 265960786 334469948 161276896 683589305 531780555 914534385 825512335 482501344 852345365 740028069 244467408 240125367 786064880 445788708 632650420 674106522 524868812 245291963 210261917 885047506 438481122 782208355 575623013 670991112 547590608 245416995 923780774 936850793 443052841 656788835 522675953 798714015 667457772 571779448 357696646 973430296 296334028 749847586 628875646 208669716 190502996 205546626 495810254 386819754 759525410 385495463 71697669 812645408 81224203 570147536 404749868 922838092 260782434 772499846 844399571 325749260 271820049 796103644 513946646 954627807 811963418 993039899 730466733 318876579 632482270 279549971 484689354 39773521 426013274 521388854 594697583 397202572 631905206 691465286 711469682 633153759 452953630 272486369 994499790 520827924 352343212 949784174 826302841 196099010 130720044 141089670 919744530 290479925 312338366 755459379 564745371 607697787 402429195 586257347 933311546 464338719 279633687 774862726 19061097 207105923 962951180 143131435 341191417 13942616 174460860 454442316 437059195 859255121 546209685 869906888 165287286 65447953 768830657 791121063 663583517 893484492 96014372 157067506 4287791 554760178 902916501 534608638 723512065 669803767 595315199 277684654 988652840 190670369 991501015 221820961 290718854 77258398 537901967 800989551 358454968 33657946 708907737 350426326 637682810 328974821 433602158 284748517 292008128 922102520 296009830 288187092 632259535 761148392 207581121 462086998 273235636 701567775 695693676 277064930 454495559 455450348 314045238 456909814 282909547 833303111 95287783 467501797 726641147 8063808 672321610 79912834 24996227 279068565 627261411 788640495 313219397 132681903 319787887 451810673 133728237 763221016 219581747 609831337 550054251 119891154 829339961 746212614 985512554 41402384 979667179 745478656 591513227 892584618 115250180 210965116 363948667 354921749 505356927 863256808 478355306 480664740 479316574 531084374 405136431 979297166 900841237 275317070 564984995 329609681 175367435 883179316 909452794 319869654 558630606 318425160 895814732 596953699 235150109 507396548 504627593 967651501 816159540 768576375 866665838 332781613 498930287 964880451 229269766 899395968 539295145 450483106 802219613 615285497 78548697 333496756 740235688 810818116 177685239 396057902 436780052 752389864 496086299 229146170 453967300 677682496 579215474 49148781 211570442 860296514 6719179 402752056 698177966 645395728 195704090 830026462 746485189 837685829 480544722 897611501 328827161 29544128 892972546 584435297 767301250 687686743 210071978 106332532 409709641 488467573 488522199 903797840 171030346 507133952 281114108 966245968 864119302 38177382 659027375 510259275 891622892 126549222 831156411 669941053 623177077 556329384 617346338 426653466 974825414 151603233 121768110 483207708 550421663 899725936 11014356 155676167 521776322 323579490 378816668 555947089 788996535 390794632 393706169 583249059 490746831 361405887 633801757 312590427 840953874 185334316 836881314 5759649 839345705 425862602 187693533 232215834 545330409 157807406 702973653 351368306 987257162 316115917 130316411 785567142 258024128 720077904 807937569 442445869 551452056 632915234 306266728 52777567 411453222 88801754 904182792 963316046 567281847 762407922 566005772 343237017 724609830 645078151 711108918 530685869 371776051 373446785 239420840 6414695 468248279 174096160 929887989 165216590 486618512 372609200 984916673 851004961 244718425 105035291 478820427 998796998 273818886 445052589 388486087 50987765 521017757 17736602 280462424 163971945 612938532 123760059 757799383 215945244 817462 956556149 224032267 94639002 253062531 409879072 855677363 700436673 515049552 716512482 726693515 35539947 119389215 966112774 956113911 388206059 929810816 150393605 519155656 215956926 936711320 580749977 823467607 826042377 418825111 669015875 400424136 886676109 232826192 580836886 561935279 783911098 250774418 492108037 746091019 7705525 528133097 531600248 110966881 130058793 679865283 528123146 597364141 134069963 814920823 517896642 345658562 724584860 4886558 467428202 939606058 34088167 548268295 287901504 78219999 526852099 451455609 122410300 644053513 626963374 538385052 315857174 653472272 720721128 433760914 366450541 820282120 918471759 73538828 426026618 476787566 639153900 929743139 250900798 901539902 40950983 256338926 897730567 302128616 830328146 12343128 372815755 354400681 79145705 756958803 584223541 141660625 947970585 541412407 135556854 509572801 273137678 799942771 811189941 805296945 285330412 806123131 448730077 833379573 903497431 79848131 692932257 229519727 575202752 473145267 539611100 121478454 821111979 588232769 364911432 105173537 470963729 964812199 679983795 888493074 462122486 75055469 550985830 180500812 167019991 564222602 27318821 462739735 182325943 693312375 888695164 608917138 652940668 509104596 885483367 21806893 808793934 713585140 3683671 375110378 161505632 817525681 119018975 524777160 389659196 541129442 917665156 58456401 13502813 137322669 848343639 763064903 445917911 630959142 446861068 955570370 653614754 857553755 264543917 201997746 483675947 54920267 115695569 375123588 215991394 734954100 785426551 476243217 437677255 582206094 729553006 980295731 973545480 672853911 57712724 729681632 181209893 399705641 452677948 301471511 849762613 89091035 977921216 899273181 870836127 32121549 41180878 340123428 790408385 278210843 392756160 157165049 927999258 335635772 750417325 854508061 935303788 61222924 935957694 886321452 618595839 659696847 582220310 69760387 628060105 461076074 549757100 668451876 92110839 9938327 328527985 771483720 583501386 506520122 38380953 769757104 888483319 959860644 423154503 951463430 559572852 939025357 566535169 389682442 583505491 472875664 595313067 899504826 624794210 828376780 662471821 861653757 283796714 944368679 748575945 877257164 821673319 162506618 903037239 918418174 709126479 329618084 218268639 165667913 977676572 526313401 939563041 943058317 217587416 883352912 961497297 609180784 882435533 150779575 980775359 232086863 494849609 774425840 386001182 728815659 361423167 797381413 22447802 439300852 250225848 140777977 221026996 919062891 114184665 208630721 948652603 440676142 162881166 665721697 706225365 167717361 610809430 388559917 281341254 625601496 647430455 866697369 746657510 379505435 202713106 993608794 141841554 194700126 566266008 827263183 754697796 73576374 335657095 274224011 596388700 608479604 891778818 135542554 983244975 58923489 76671052 536542333 345346663 82558090 844683780 268000359 632599445 423936696 204077066 305952904 795272030 52535445 254956296 488799391 832185473 139206885 646849600 921389707 989469248 920948762 404577890 642191370 369123046 300842218 40952728 412129668 92536913 919077145 73586104 477516812 67024618 439719969 408532921 500681352 763921752 82972097 73517912 994408453 389102991 415362818 838780077 106751311 564480269 658833566 165006473 303753450 295605710 363820970 678021154 522062128 890655 822429260 258726683 395404 300136803 768538633 769611256 488732172 358940499 640372293 15495593 567977966 649290025 803584772 863025307 110894757 485117618 185609241 898122531 151629329 148386568 224965027 247475762 52100689 592408095 766089806 866433288 181596001 418693428 952221398 462975602 462800535 86711580 593149505 725653228 960842336 812867224 104982229 988554440 757527247 14850330 334937691 262582442 405850888 714973060 316512475 715797910 490280618 939198280 641072894 596500451 268852133 336136568 137086223 835252470 674119113 676218226 212278659 137491876 961330075 277986179 773290345 592461235 855609113 322457244 733143616 122733080 244659192 845403079 40526974 622523679 994786361 394442325 285028890 67859944 377882001 69534855 692528575 115906649 159161608 985430761 730954958 478818088 515447574 319615555 258258058 540189865 813019350 407491041 839038547 444093488 746446628 868666142 905944712 588068093 997336831 861848387 475304398 147010442 464825017 373526992 475443078 131568869 133062424 746877454 816016692 993393859 401466235 858675149 445048498 565102717 178008276 924140869 906000430 183349295 203777292 477847843 619694398 147896741 843356522 554921988 490730173 68551903 133979345 403377356 248721488 803439281 500979285 599723127 355420232 183280434 313311998 720673937 646219537 617820005 295944902 967310500 806162596 10268685 216099995 992209370 294725742 607807880 826696173 651960192 45781300 410420993 948849433 52769792 436219397 68851037 350136327 345762623 202138619 199076561 114313043 403121941 501890933 610153832 467448657 872236735 6733989 499145344 386331264 894141703 479378611 416473830 31621368 710451529 371543722 182949329 871769153 443673055 704701845 661010511 377961836 229992120 397691889 480253238 53100179 361134053 45060863 838418639 876586098 142123514 996219998 649420370 750573093 988650567 400560009 446063310 242015139 917581249 655296707 299042332 330187617 819819081 726979864 115452957 666509869 877638549 723765262 493278340 115579598 610170099 453988699 816083346 225602329 997549382 666996958 151908332 888297724 499528931 765620971 2416202 386463953 986030636 956560901 557752470 232968952 852080380 8492935 215214294 937486437 101903896 212938598 120879473 763585388 670933899 963854475 37900502 372456915 540046395 176996367 512527766 684779638 367721424 171611179 814637310 339469807 635793668 681182548 288608196 808046483 304070776 465981120 693917858 424978758 661544402 534331822 286191502 98858192 547943700 607080724 64576454 278225208 10991098 859032110 92906775 862822278 126849685 392260994 959445433 900721141 360667835 638874052 874135644 176818165 598546193 244632528 403556183 66241816 669470869 930305646 546289969 910860260 638179270 602561505 826364459 648871309 892757012 340744264 515234556 819212802 520151103 474624144 836530593 974867910 477157361 977207658 379064270 838643559 420340262 139022679 409050372 294713626 994324515 454163488 515592237 270551309 508752370 924655489 375192244 997406553 987288463 986720636 369197680 338883458 938564174 295812192 363280330 861914857 98562893 582157043 697862206 486850001 84824612 694057706 458653242 172196734 760357427 963567093 223037477 134408014 807648761 602197598 240078529 554032719 446300759 954517557 994245598 993862444 51122716 813220182 302829533 670994566 207493744 729225993 551162719 65176258 888080827 290674151 61557961 364986625 935781558 252020881 155356913 281145044 383841864 801147121 307900502 350296455 979740279 453407632 472200452 362064473 549929341 597988433 766326181 885012325 223470981 571404814 916679460 247845881 401551675 486486556 440784695 28980293 703587058 819816743 376684141 857184501 813763880 104330159 237581439 745835071 527756454 801729201 92422452 187256179 270942670 480492922 397942407 899789734 718234599 820563351 367309405 616031675 392860269 726907281 748842334 805596289 605998423 150584850 461843583 733063943 794723442 852202504 345538810 497020647 353086556 884103465 150695120 540512427 526901895 34899854 197569148 765162642 946028810 928596898 24100724 655015326 24067521 824395377 449067819 33673837 99976729 442712228 717430193 993337048 73397020 591811099 861373222 957505294 510685514 613539614 280994640 185008069 283572061 623614168 469723832 880990947 963440823 935018374 252812460 596384999 804914537 406956215 974467941 802395253 298909434 266950442 495054943 507991438 685593711 248900248 539231789 448295794 27870923 635247163 233420198 177896523 130475005 670164532 661939677 940775327 620754473 557823482 886004158 493649342 430584826 847286950 211045038 652858664 357378667 661876226 207801440 422557373 983056663 335262372 374689180 620155981 611072630 486239419 544057020 344392454 432698403 759086892 444821768 786200827 607433409 440562608 923966628 301559539 445121448 120257424 872875996 878832505 659388734 866224705 298159036 522904679 881499854 375566580 46991633 411265926 469725172 579940603 605367501 108995782 803524883 203888265 64590195 981864552 584369390 699339246 74065668 187888386 674373708 523545775 891983707 477456178 229225185 524108710 284029908 581735797 931469695 965845450 6491497 325314295 743953220 924467 564334208 304603359 103482968 978118198 671718227 582296998 827123211 312975715 658579951 460431894 524370289 944291928 172351084 859158487 190565762 59065713 239504667 267918800 525422373 477844701 621219207 956786700 945940335 604658703 934849250 726021915 831458719 732648917 635262730 935772962 810142892 94080564 838661880 961351063 968446831 402128967 532718973 62533819 771086188 669055483 636565149 493251971 734090681 329771139 343482021 996658837 106532345 243159155 411320687 465130637 497448214 383731430 407511390 375523214 292116561 872174222 569155493 708416511 668804919 723495739 243686667 44685547 430205776 194436037 806767240 398021222 144935587 832315275 502516522 416156291 322494468 543119809 300690019 784945590 653792976 643534357 222637812 988513912 94702286 202587364 266852419 716518018 958232032 497277963 938610862 340571528 942565285 64146978 58844434 663418216 848398972 457387310 402591665 612974357 832036429 61518375 862045466 909206780 840663565 489488501 931026585 191623129 784970176 866815320 635711206 600814606 344076267 619350992 726407792 836060438 212408623 852825893 724827417 88034578 465327787 360229620 307602048 34529077 964721258 177436398 953761219 682033250 907869131 306804033 214248282 272700076 265971234 187836467 585027738 786377458 44761449 262105030 853319160 612148958 332297799 945159138 670982596 302920237 82689419 430031947 718765824 87050125 705453441 803555900 275748757 841740923 246653279 835522373 835876152 72154657 624636000 513186949 454901326 645372071 802274904 515316825 81954144 221171489 686839713 964930469 940829604 753153423 937160369 369547831 661568134 460163843 362813338 386789408 70879373 992280455 311037657 818434744 54606825 48876014 306037760 984908426 526515662 614387445 888325075 31812859 534170357 702356952 977541864 274673994 197406381 109019490 170463372 508395747 188272005 901392994 717349841 363999642 307661447 874832126 423639651 596096135 342917928 42194930 223588131 413779541 660309814 674064651 718096394 963656531 98793307 251371742 180935732 665504274 728508841 527403122 745854020 381993819 1790540 40335313 237675234 870340211 521134086 244069913 3729302 432673273 973712029 253314566 261872358 749370982 325268346 459969957 170257475 83547219 664002405 1578456 26186800 168795814 677875825 98745515 601103325 709290938 829937938 139233791 208641778 95627900 191156196 282591904 229932851 551704224 139363679 965210178 646912343 481308787 593744025 209817445 562151259 213811627 752440184 875588101 519043704 997251636 62094995 845810011 955040062 888022703 881324916 617629169 959454174 80204617 503604860 891010893 48329188 167979382 252778229 499829351 944570405 982725725 391676534 262711498 332427945 125665788 258488423 647418093 204969415 722588063 708064211 516220039 754209342 586335605 796236476 130590035 897893554 107510763 227316479 971597817 308640056 845231322 479344980 230772069 429643726 514132264 205044370 874608971 620869917 654036770 140746166 838656198 112809006 848456028 895985857 713142952 636428358 781860047 75712801 650847713 41324775 974255638 394901027 539974933 937775948 755308546 73438062 495276812 402826391 580284905 280796017 434289837 863379541 240208013 710069869 567292894 10023670 752516386 111238842 335171756 979425939 393158225 217971028 672900486 706257986 197399713 684664149 502290499 287186582 124091898 212928420 447045765 168481719 750104839 253014246 958541391 775224945 319145832 506828817 385280820 746574718 62226282 130884973 257243219 504764193 7994943 33532804 151222609 531155904 565678407 621350298 548171549 78357743 85334877 840945514 722319088 862631851 314913829 308374597 60462582 217493614 601624813 874076628 848251244 985551408 221557437 770414821 321462983 793434254 340571993 659355814 19758303 323534268 656230902 791677274 903135231 601705432 977771649 940053194 390275892 178940262 394680821 963847829 727896513 28176982 158276961 225813614 86087411 730780314 662362962 28254778 401785301 452477165 145087429 854869682 156874854 715027538 776099516 378851766 815374483 539663733 403117376 446404422 91157744 340753129 824765829 733038545 192690794 319638958 545342189 923030439 349776082 670423305 875326619 164809044 526444309 879594256 218032132 456354192 376610741 257883727 618242186 618552433 240742275 88513932 37676104 872771045 539742726 599493193 510730397 153734478 624518036 859315780 868653120 674366879 801057839 519479988 330196542 164302627 323012521 336815649 710885056 478001872 21665057 956910952 821031455 354563121 152783232 819483355 985432682 366342507 710320117 197271556 823020238 244670332 762217744 403116996 293382834 605009806 143758779 148478795 215241936 444907453 552006473 695285163 428028955 9543225 20753227 203423806 774547014 290822640 812374153 670780377 555989899 577562852 646683386 594868451 274817665 181925466 59124521 392591722 174436265 889463911 582262692 571877342 97388220 467284418 679868328 509242833 773299641 130812569 807195573 741135839 562700198 94770736 731460083 564817160 82147799 468294543 312056835 593036447 746039636 697019521 725827480 716043440 745578255 209433347 328256671 590868625 735253584 28486720 860435051 796689926 4625108 622880326 58773997 489855245 263495226 411470344 473092717 145356714 307246514 908043649 237161525 818107802 277856565 411407635 577224281 927308821 392014139 530004302 849716771 601629904 445864741 589207667 263716318 215052930 122460849 765759920 933720966 682948046 643556340 573285781 32426640 766151885 96165580 855137976 210667622 574633796 136125210 339016807 291606621 836990932 277051312 283894821 19803216 389876530 840401963 100730427 494523784 873198981 155844075 450915117 830668875 108297189 592651930 867245667 415639670 304566867 965798220 963718160 154863733 125147210 644195873 378921248 413656725 833714415 610218572 694767231 306841757 297616905 863636575 894423438 140413176 638443766 15453808 989830348 229197327 678224633 404322850 407351424 17842598 816376336 892439920 544489 10804706 306714738 60809789 250006455 171432911 793691212 571549860 889494004 866412785 991484673 3630205 273933993 313352791 234573015 778891842 444845131 988930517 334470644 507828043 154790187 600578043 192180483 622982220 270274661 530283508 135506098 546429268 663596117 295170089 797252163 458690756 131653407 16647815 976401005 167415391 206546385 267535422 173847750 313342921 806684239 422711956 132820300 590661786 344844078 961847359 425089540 116033782 713078055 813557673 708168714 90725809 313655678 614066279 222142480 29844693 171508345 588147295 119972743 225356313 619082421 832234925 542176663 521586824 995976097 170108057 945574494 680237636 506923195 220707527 404211956 85934316 542954999 827368191 14660158 936512276 122561911 452626905 471320509 325768234 212753800 921256878 574637410 830748069 950587741 594522472 754973012 71549147 837804083 825019692 556807833 865329180 879946721 445524306 640805818 985825589 465209832 298963835 659312124 115069844 771787318 555480519 663487145 356251371 831745195 309221919 767532392 785418141 124926948 639819138 950008571 226322922 523348637 391366818 248568704 993288156 232329574 227263081 657643548 273082199 359195311 424308317 647692771 49590871 257645884 440640001 651415589 304018838 260990167 354719762 607223533 725345256 442559931 776241054 217286370 855412991 717501404 364742731 909340570 581417014 574285049 218493034 88209454 562615949 214099000 893358472 746320476 178580022 797454884 603032863 487028010 460538707 104060748 268779342 647182520 731368614 515139525 780162680 379186091 578475167 555972370 281923994 78587681 487370945 414385879 879346257 185114161 473604745 550683070 794178433 379035596 569720807 964605812 58781584 751993242 977047122 868591266 13038313 25356835 110553208 199315556 790484808 194832697 481519388 142616790 73643463 203110525 799803064 798082430 797864970 428998825 155461185 238671128 782977200 975845056 547387018 831881478 539468438 832409937 94833305 689888263 566105102 580439569 649659464 622744532 577374349 143626014 509559201 390243507 76421933 293039837 765117419 827263180 512704519 501954328 18276247 134294414 492089339 879643936 638666766 983701264 408951415 336967517 181400487 161043736 308471679 728774311 657463837 171152416 84912198 820784882 802337094 974572390 634429959 849039331 716056677 976352824 362054297 4840981 18757542 713180535 619666289 461752262 576579649 580579464 439511893 420982185 154996824 825286028 728510201 617070148 769380528 837939166 324180670 599532645 74121618 468952711 924072469 935224866 307984535 268640229 350593363 440064963 773245330 258390539 885952002 142792785 669204290 536757896 177920985 67360604 973159205 96264742 400132334 620300125 624332055 930732030 878260206 908207814 570129433 690673493 807618283 248606600 557488577 345719646 650466713 942057967 614391989 307805622 497148511 997022765 395962811 533770917 228274421 693405037 635585188 879055401 826057007 175549449 325123609 16389484 161830718 743626434 643395398 716412457 664169857 229358012 818340966 890547839 582039579 816493742 242985412 628215258 289531448 289629107 881094106 753229220 79055706 51296477 925999539 416603799 481268334 57849054 125519198 723684464 90640206 47532681 868122057 172338452 986350981 958856979 477607693 777143201 780387732 938430601 776814099 597147766 382536624 754996740 324768042 640367941 701154191 529464200 339638212 404853669 289328082 712698373 831537148 295868325 853453456 826136641 790105162 705167253 212358420 99287186 797299733 836226610 115963173 71418125 252927865 839052912 780197824 486148794 675843664 812415728 618264698 356743801 240469640 198679792 73258512 244877603 47403819 702684173 716404533 755985901 64901511 559121563 140886003 163877660 562321354 686885320 978955362 475627893 812764080 48611076 203576437 108713067 400344269 494169896 835170572 981090746 534257729 394153815 447209471 143445184 573098050 984992665 831615415 551684731 898445688 75107178 430026015 803211780 872125492 809509189 773342852 900873446 528751607 170847442 447404678 642379228 194797515 260061807 385596556 931401221 419633381 269793284 617822303 477188448 897991479 104658488 426382099 457981110 343202043 169643387 434403767 483959299 50904356 180800322 458929687 714318294 288493087 587949739 83510818 366750745 189948606 252638005 314315911 140199980 558006410 133910177 241877156 890805440 144675496 587323925 962388714 945409998 876836319 228954100 688474219 117639431 672173957 702049704 737345214 913331157 442338926 757380602 556761097 149529739 393928690 337035176 233498104 62764041 451484626 604231310 35449133 710285013 828044897 400621629 288393731 18743649 85299008 360302048 108418572 928888884 42805154 436171654 730303882 299542572 156438609 778900030 399864498 43318339 499240715 355144966 441830642 612257399 387336900 405220962 486583949 328566642 536172045 529557811 689415263 390811239 241295880 985170656 56707971 835787675 814951258 374975538 153283090 48555002 989912460 702050471 393428899 855467263 763350163 751859915 785224282 300581842 593859233 871048558 18410743 480064807 610036056 512561576 373900018 198370667 281666677 231513226 960983250 728654777 993395197 917592957 67829788 75508749 439632052 625862687 957877764 201160187 919367807 276615087 329203278 981219148 770020264 299348109 620690228 532712428 821534038 821509520 597169201 614321696 428646315 731085644 330501526 77259925 630774429 347643943 186424217 119946931 627112751 567412339 871605874 197570146 183025264 101423093 519869859 268993719 305195067 88863314 601532010 265565837 108875259 217024980 510110278 54741112 38932491 325489552 435996671 558281504 118503912 952563902 303269083 151128206 426972400 164484697 419194539 867644652 830026149 127383610 322274620 342808033 804560098 996861882 843243167 287754425 610162700 26670846 518690227 755529290 475477845 190398387 948873818 65119184 33071940 358176308 378998201 324082803 460859189 869242445 385113037 833608207 633671633 77814012 995951334 119176686 44188339 408830310 649934667 99900403 496773725 926034716 921690810 18293687 479306652 310019891 118732118 795776715 581838000 365952076 674958399 430477309 564633749 966054573 867134139 962181125 858382290 434275188 210020738 212330250 327687100 868408795 858991954 848520306 734741564 907830978 20705094 522082900 910320947 890308736 239653279 164635014 40611574 984685229 202575133 718170569 325878423 396157447 813251681 491563879 633295963 298968949 188040307 885380303 719565287 524079819 920973121 324742683 903992937 503502974 613265321 315589291 25594185 187460791 23767996 279601820 890463612 338927296 945699160 614769937 811558019 464344566 692673251 446838445 80334807 841098747 553231208 678617348 398185159 374383995 972454552 283906380 719486609 687597866 215602548 423301193 574623911 558941236 959446562 663258976 726947863 26866469 845904861 867577128 225952268 136645375 43948603 80305898 267851002 323357217 690216056 164071492 644131579 132305878 443863928 462010384 461511811 879279413 41050064 362501755 717717997 598774816 817879194 449384685 201453368 512627610 715023117 167976890 114887177 445885892 902265060 295987897 473503639 740215389 872323845 35430275 502511306 421789758 17103857 816878645 926613541 993239939 774532703 530256675 352597301 89156868 241157649 985979441 779621932 181888113 118949083 836499861 23166859 655010843 409193798 581284189 69516073 273499096 467074842 354721266 677439168 871627721 820755543 358830694 60773877 879218272 129374188 36051915 868663074 601191850 455691471 139795319 789110970 224767510 717809023 262305428 276608291 309246454 890392029 4325946 90240444 823023078 854077440 862926089 731883418 817201400 847404946 331229940 267035494 224834829 765468807 550852343 666040403 365226249 784307720 888553966 568473056 239599837 979669729 517781632 838553118 660623745 662453336 260167101 877088049 157187101 793145750 238259695 979099076 291414621 802039922 765555547 523106222 250105703 125401428 579043697 990660972 769936249 859472721 198055497 529433570 57554877 671054661 46214210 813385463 252947821 653835105 423120519 31340627 518813207 894896147 906383971 731610779 566656231 780567497 841721630 533075820 244746341 576637899 670279958 498038957 613506901 747956362 126521120 364628311 63576869 73639599 405956909 700504072 47440233 588394444 186769944 953561011 680429190 390188553 676552188 519966752 194414571 299659414 229369087 776021838 111439243 554692906 737480623 420672785 126417285 482449651 530424424 369948566 449601155 494045562 799473793 675216257 283887247 228875291 86270495 802168403 920004417 170582425 76774389 463378771 549834326 281249013 621430010 443625202 392825689 159000859 566187918 16364020 999000720 100205031 902017646 550295823 932010448 811776591 832787938 918104046 213045729 189707089 313599007 8368621 432554421 313234458 750110170 235248968 464442382 752234367 871618223 244188797 545949839 32549148 892947943 256176509 216647935 590925148 71119975 172142527 379993052 15200448 206756811 558949860 874071624 447288422 494861797 288801182 283343307 670763239 12524870 175955339 716476796 701204803 972273609 239517357 327817396 605663951 449413382 182870102 368455675 205096996 591340421 901257997 84725831 574525948 94296831 726891606 512548356 131643827 358184530 506255728 57545681 807346771 23497657 403431212 831341055 264150797 375075965 553618380 158436439 672882662 36409449 960477913 480545145 611026838 304243779 643901980 681113908 880256762 285370478 256925465 280096230 219100236 755820703 627000452 353845699 58449808 280639045 75042832 495749043 167023058 622618255 497055701 790255558 679716473 952651788 801360091 839878257 470470043 46820205 384538349 500837990 356871473 127665912 671791988 622806160 366553491 962759821 485886203 388713913 751005480 277612794 922221191 31181960 538280596 919446449 912608552 970867060 365103435 687035939 14355753 939514789 422997582 931628136 487656184 383854105 236109216 866962315 35084571 986019135 387850945 321998101 906901234 753086969 43541945 606937602 108807273 70863227 766870709 509836658 439437570 870342390 576766610 276560940 353012928 179392733 383254148 808256162 342357080 703479119 714372929 796894355 188832611 320797202 489205445 949393925 705012453 782539677 680237980 1908519 43640616 386952020 818639877 876913650 408791689 438907677 918058330 819208818 383169888 818775632 266710645 732648474 231221958 424374162 927057096 850068945 853572595 884951575 182366168 652823392 660776937 258700211 375931423 707653116 401550624 842205315 273468384 84272134 781584005 80939489 394965605 244679497 96558300 188179240 432142620 311741822 197822518 844010307 97990688 995444944 137223399 200643713 877042993 486682826 942425157 821234968 882555740 471884002 626433068 978863309 308986746 577861117 799723654 54156511 744059110 301787458 399990327 269647049 199212576 953353309 852888698 856580879 261490724 766808332 240060582 148841505 202904987 708656235 503562808 974821216 704626110 756921824 329761748 2740875 542480910 22818726 984629408 179327205 144403260 252528442 91270325 971480727 144297656 14765620 644980590 639195537 324026461 48848484 205131159 8042564 235878909 936013890 932315684 267891001 827132489 531860058 119135203 254249366 673706839 82847095 199894524 676062483 552950006 168964457 84285619 4019326 658975483 950762959 983181300 179626991 93406066 52039640 632124332 146620509 820909438 625801327 283690623 211611255 264633056 434364600 818409813 442024321 980063292 138671106 90263378 632666868 71257195 539211904 120006607 876292049 631187926 604943142 86182244 99605701 489800945 214801291 494553467 713173647 975960277 516019043 628158271 664154869 994332138 184825688 478908197 965815965 716087533 740740582 595149684 662560713 125845362 495340201 979159568 86020153 267154015 619448361 240038334 254486493 973536892 283594817 570515757 417399475 703582152 133830815 12975008 890109704 69231208 319585112 984404819 435687740 865885881 129292074 293875200 744109039 916484471 390693955 499313603 938084848 184808004 743705917 20926582 618942694 356947656 230370995 861593850 482835876 512246340 901940344 722470616 114278245 366964041 253657617 154757880 546705565 691746419 56571910 901593698 291386349 42008580 463684740 255518030 867165691 342668926 725732054 37831468 293337878 941312033 575223118 319353727 360365028 255892352 847962458 239740736 41378047 88651544 284718626 302490829 56547805 107418239 252678916 467165346 880992906 580583986 199443093 186488530 541039075 366140338 180704952 489975655 996329084 17075101 32194088 131850281 480484333 963351554 469224208 534876169 874689571 826415431 549685019 364390191 130069057 255751896 933548976 495299632 583384256 544277301 315701311 853259602 470739211 196036015 222051909 48636459 909760051 564706888 617579952 735349400 227749490 148240571 320554253 147971585 350607666 932623161 173912741 212506996 816642417 47535267 150376028 227187071 636650804 76272378 240695480 956130941 86846058 954915271 635648564 718982495 212592210 854798162 212841589 697958323 124571082 184133094 506328432 85191087 502838153 577001686 445927873 952229655 410501953 801397959 414040952 359214461 301406074 196142311 508335610 23201979 467886226 700048525 372700228 172494838 392228995 348483396 850684235 478649711 580030155 601418757 271550344 317265839 894351117 977465425 510815643 527800679 149413666 593542059 815674332 178893529 829342043 597422390 552891946 296589284 361186316 769853640 86819971 577894551 657932036 947490251 708365279 813800848 636343968 169532187 433832410 256602781 81552350 199080802 957711791 520641511 11071098 251457450 544950093 175447252 674556579 14267021 18474884 578303952 81018114 694708532 12521343 674731443 949009849 872039588 882482503 728916722 753203877 316139946 357406938 869854503 714778572 174071493 526252630 751834706 789289778 549012764 217548416 771303530 726671001 520555486 866737111 824533377 855064530 559526170 542228280 805129272 849904273 211808764 299993075 380469702 851423771 64548303 622616301 875713086 778605504 767682869 231183196 995288563 677410884 314069087 204621687 518500910 909863781 685022245 388558654 460163042 857922576 562027725 500480284 163029108 403705808 354711719 116259458 761920991 298145239 873074686 336473459 207629001 628397003 880439929 532075494 801887995 366798730 235775066 47067114 610696969 47177989 947016575 669672610 359437071 711555694 305441303 360689897 201298098 926254168 65984779 811937279 961291663 325532939 537563527 188915916 884478379 775740204 783853607 14488331 635525622 989463891 831637806 347982296 896668277 11773836 300718320 601503898 315485208 389064079 913274425 921294418 358156917 441775614 925417546 345523296 384868832 877794275 207014156 967021583 933993375 746538551 669770630 123487939 767721121 15518654 990756104 715639266 47990358 742760686 752825924 110674857 799004607 258022550 17183292 566872468 453314685 593984008 986437198 788819775 32092062 754146530 885267102 162166700 724500954 674585949 673996278 560644973 12044230 327400200 958597803 619613713 599985155 259006961 329629777 55254799 468821527 61895427 811961003 193431563 148350439 317167523 274915968 944301771 341591741 91762972 730001901 844286620 986567009 543834506 858174409 717546926 561831838 823059826 27078010 651433916 257117816 270536955 127401766 746635911 980456824 948527169 626103488 582191631 233503487 885287036 772730908 960585826 763149414 414410018 712802150 827053839 627644846 349874581 392553023 810908162 587507153 111868729 263668999 96465287 105091344 968328448 705826012 568122601 203704095 989444227 940165159 582691039 626912840 39511036 265684947 499403800 442617585 601491619 771447886 824904523 93997614 256643607 732332491 505437292 534545930 904878377 345168688 697408866 270468062 856106357 585324461 784220032 26137108 106769395 701319493 822931177 208702985 511795710 237418349 572312186 101354756 562680957 111933195 389880736 518428518 286531919 317804356 238498123 672045291 345034691 296564743 98023384 39037875 471849686 380945045 354586438 922215155 157773471 881597532 917046800 55155846 968997285 379998073 571551742 932810928 428765616 896970568 884024972 384698089 723697564 561794715 772159243 443500049 78216353 317087912 209922083 262173222 840666980 495044560 950833074 690269872 696794850 427174523 58592921 781990537 437760197 219114496 561561235 735694333 570205678 197980558 154607368 981340092 92301749 853813090 465231255 907281753 920387105 879183080 8529047 906420037 208893999 880941411 713774250 590343324 976066543 611370471 556719561 528000750 602646279 660423439 879439731 868417820 222944553 462283042 841778554 647627594 160400296 660746331 685174318 577288214 991392863 21872274 711143811 789461436 123520236 910184773 722179237 622516449 585886288 650459416 64813089 976859147 912614082 967656788 222694580 435513063 387597443 821639723 359667114 239142330 304425516 622115936 665485351 135774290 451936260 771338726 573137204 768789618 229738731 634895919 815374731 407586178 236660783 389496811 486735740 746344517 685520570 960740907 186571213 988678529 190936753 10002864 308650619 595273310 189535902 444966832 255834487 672813025 640833000 771242916 400662985 931387232 82127557 974423884 507990582 756367984 363162315 702254615 16471183 690521622 222081447 105034299 777848577 821324056 76888201 822901440 948629894 336804304 131270859 726377565 115711481 441664361 194445800 768029612 453017348 438060575 94736731 547702270 173748138 740180017 273577069 207105028 924947658 604316900 952466264 716626609 80094067 374414192 781646055 115435426 609951224 155679775 507609983 963537016 510883676 730607890 896126339 819417435 192755029 645855582 144125038 295337358 922966578 606168254 705531108 241623191 934946293 78074263 762685172 383033805 863397623 900995458 662635978 199859096 721840488 22511854 569852931 82349523 717764368 569812966 362932457 621658444 52403689 697392135 906477417 17461589 489574239 309407072 939228379 376726013 27542795 173321934 479828433 178084476 990356518 30455527 954498224 402177405 958301425 474213147 608196265 268620420 712009141 416712633 702992808 513932095 951130552 974552210 740469637 836393015 927712255 832060111 332434285 919425321 556721263 814830205 702794265 218988068 819100742 817658254 104745301 270663578 947052829 342392216 268377036 725258752 379437688 704785853 705431616 287394728 898981129 982573987 984448181 32170142 214647485 133822675 733626990 388283334 520085191 258880953 940076542 107839165 457006170 934947707 952643039 451716956 601456272 20340699 253979024 437222136 170588781 367656428 953126576 742442332 207254210 227043180 517931417 435097057 680653199 361272113 12239469 188167054 275040700 775077286 980897873 556955596 75111856 220732962 717569890 783248765 858977590 253352204 770932506 130897277 730589153 311755275 169662531 637072260 522508062 475367487 392048726 618842769 381799851 425287231 837569639 900171903 284945382 797878303 368142730 16999705 611599369 887604831 759294847 914475713 454000302 918611185 610597083 922219367 178895653 605111405 410961591 423907710 839224032 8293486 504237589 853816228 699064318 86488762 33211663 816858240 407844794 774259691 282991291 430732874 162530121 971706990 965081762 698323708 965394188 984511705 645442458 235097639 757459619 133397262 764704751 788564656 657169747 486039670 411496741 784021055 963073711 309913138 799197300 831810812 722660015 711124652 536841587 107305879 137061179 917189818 326941732 281142375 971738786 118756087 190867042 67812963 616990819 177028487 949821320 984406769 956470500 765752726 31048434 809199746 400974776 319309200 592282705 137150653 68510243 698343219 269409934 583278183 259386761 890728745 695081927 915639664 411404421 579563628 743197833 9203146 894503199 783003411 258875839 981623486 965603774 827730742 648703961 211112169 484069696 150728967 721830474 556741691 177834930 349579480 748873516 302974729 154013941 239096796 310753236 878973942 996569922 13553254 561401887 43576966 310789643 231120131 978509816 440861034 975196360 623107331 227087646 810693873 76976973 770658876 450065817 746137165 856121546 326428257 356821259 618150457 558249647 898031423 140663249 779224035 438990747 326898631 585349034 639138226 569509395 404021372 150975825 571203130 188369957 922253268 185689511 769126864 107269619 228509334 212808213 648926876 300145105 960114212 670374662 798271911 758015818 8511778 287724649 961849440 219575634 423230563 319916226 838131552 471945071 160216623 599115899 914446824 455568265 487131533 945408451 569688161 786861432 660551448 898047430 266729442 76700534 9457357 592842256 505572704 209282809 882264101 551836595 303469882 197974992 620683633 336248442 372497774 805417342 74709940 363152829 774290709 84389878 164057671 10525280 828797619 355052016 389131945 333127514 427063044 857816779 835909770 526339361 122264790 271246819 215311474 729229404 935850759 490750869 714828082 954567730 922206147 756562750 197070597 471049262 622881334 891738634 630752313 957409374 72819440 82445706 104659901 918309416 293318320 985695469 988558070 526971814 733590035 386638067 65950214 539739460 157986173 623996496 891029039 733124392 633757583 680139456 615308279 31695602 217720504 282113347 243296473 942134588 477506981 872366048 294838407 519452843 678295692 783638505 593216984 868453312 129936750 555200938 838538853 132589402 232872287 718536177 198792842 930474751 59292182 591330572 795301593 515704080 695261163 734248872 937395993 381376509 354678422 738177603 27485267 544190598 472305261 603973032 388934636 468972843 26703745 630509772 81414321 225712858 529239570 132868958 642809255 614010793 463242950 954704661 280666892 433505666 81503382 954520331 157308970 608251939 40185718 464690738 971122632 926893509 316231441 42493555 602807774 80154271 433560335 120515996 339621343 136144226 831721783 869815040 724071968 259913173 274825824 274679836 508313959 972326394 989391460 434733688 308131611 93780413 752465539 13247014 426944016 331953719 87843725 208859830 940268403 64933545 219940009 49592604 442706457 972419854 865171026 373843127 305166194 495397109 974445005 788874585 759516808 991594393 553561617 354088227 342496914 451885287 956336475 69432311 323553378 140530494 695861822 209196744 173926824 856997842 681602136 257382480 118799954 580475031 296938844 686922428 224818798 118802747 119745090 323726072 264019325 263132884 146432245 167227307 57684220 210687504 872970082 85498823 750553329 871019229 672679993 309807691 552327742 202620353 306371946 473747198 833713720 716826516 521486170 15305648 61635207 642294080 768524524 604267786 983945015 275504898 725273037 94001902 596655899 414803572 377384410 194818538 759795407 415813537 29991166 58610889 761354109 435652256 339223176 349805168 119199497 958139211 487994491 316677521 670189783 653737136 69190013 106199561 272601095 450323473 240454287 692265593 782389245 260363063 633385257 390836774 5625588 191423466 114480611 944024511 609745783 727317244 860021994 561155444 92678952 196594133 20514197 353306350 539946880 939121708 618194009 931792574 86944046 861248125 984131341 134762536 345537543 605269589 995277652 494131007 497577826 17543602 494994590 150421828 53693400 392406019 653921298 118909013 167770141 991018679 483557149 248791005 308153580 416129546 890462235 216211463 756643472 719235037 373768577 713092463 251181254 834300952 260777530 214273730 512276247 455124582 493005813 413805000 624606082 844056447 71944280 175092181 220859712 624885706 605423583 83215531 282991281 930260100 686194035 949897459 538968921 722736209 646200798 971438931 867522984 450417293 495057759 975748725 491040707 827709157 655004459 978561214 71099974 57953382 1706298 826109571 990232033 86373222 646771967 324800010 606480815 235071118 475525719 876915459 623165500 508696771 76063341 952097482 633962787 145060743 859321152 863840007 128643810 129748518 338591480 170997591 948027323 316085502 728284947 503016489 173641895 947679711 462923233 434531548 612204255 318143440 27241787 693211888 515275992 73817937 688628979 438716328 427602533 920605126 43383802 615787579 863013136 671338650 415683368 275779975 664856174 314503919 673192732 345610692 640178005 555310651 269323631 778964945 654072549 310082041 678357577 101564798 637039921 423124454 450264327 684871989 248749438 683375725 246489831 641298539 96639578 689114967 229298979 144635465 592091648 590301419 37462940 711127068 908973877 295447324 628553480 515236471 124722518 503825996 347513635 418328404 939513238 653647009 321357569 832802807 178837184 807962706 525486807 353193299 923955539 946342188 662803531 579614080 524363275 22230333 414040544 97044258 576090015 314543868 447151411 110998517 224323407 639699672 821965820 794919684 562751450 967647902 594853878 410909879 965063507 702001191 293590401 949993877 556984934 30752919 528229778 698207057 771072494 29973023 41617818 795665144 570053210 903722822 820514750 164798574 543856988 990551460 102551414 439798280 925633415 772796194 251278242 476915246 862879052 366291410 536420897 122791337 424917882 691772585 871387391 366786757 836175515 261194321 566969712 824246874 165118172 101471928 955239645 434778585 896425253 286377707 13500359 36438980 732550727 370849627 797929771 783516617 359723283 822292588 553972366 319891723 337345868 338812360 50285952 67479747 417067495 102032681 129595144 819200865 709902929 203990646 580030614 486846183 543874859 319743536 961549549 298458838 582647891 688454491 31338710 441300135 963287132 718770690 662154521 923889237 850194873 772636666 26763841 188364322 102122178 761135231 731117354 62810883 980310243 860205567 585296158 832752778 481365673 440956191 564772376 394470369 521300203 96994097 527083567 516217939 909541525 875021671 449829690 706812129 390043574 50285575 950670981 480710412 779672496 326840269 375988659 776592272 181325035 144233143 898156307 401417780 759842341 951923585 341520776 116113954 148688881 121558695 575941240 42669018 84787916 857300117 476401360 525007474 622544143 707173125 502961329 114029977 284689043 225779635 811446201 904057276 999711899 511827267 471475826 845103165 220499059 858216901 47380193 789999681 57249900 898043785 146456563 241891619 835723006 434749177 231349930 398424508 152215364 789713466 647017377 963512904 340111750 201300574 361303387 839153904 658000835 969444436 841086449 737559216 911719831 935462541 538728640 908066913 116925414 378546034 831998702 106708955 577474710 202023712 957233836 794105015 95793205 61623955 233169579 154357884 691254602 385971671 612896510 6984033 749503784 835662858 517996944 366247732 62080160 990157387 345464832 807992039 139646607 573652160 281575407 614139679 480331240 819611334 132711440 877103420 820911786 736749628 393683822 883378218 145638940 268125190 997956903 384569864 12192434 946080457 839939750 904569556 152652325 643031308 215895997 256553712 966601298 105071461 862175660 298284922 554551204 145611679 461915459 217767454 333270176 530884677 986046431 131101836 866533043 678730195 385163766 780548049 471321947 377867191 862780188 490769774 131465003 896101079 17955539 908551187 821463000 718897301 182888061 949570903 592165293 203859974 72776391 639177157 114171400 604099739 539685159 560223555 83191107 672416331 58125323 122902423 738223832 385771033 924326090 478439699 689057908 215708903 134814829 176058439 785899297 784326519 629219611 812493037 259789092 971665991 209531691 740051384 713653610 716269013 419622527 469237977 628705930 349379125 499101957 234082738 866849614 894198936 404083032 750067998 387062682 166924025 547750142 925694364 842361267 797237238 725365674 555489235 589085691 731014808 804942110 329227458 807800614 181474902 225309569 774522325 97548252 359549009 641170332 223375347 235136571 662847447 986774482 896744180 50086858 435185016 230044273 845163194 893834109 892274821 951398161 709598361 651789906 125808227 949206481 434213121 252247300 284314259 969679904 494628039 120556816 582319037 733744848 167929783 14725847 92847856 448956075 721406375 652586991 824950183 489199838 313497033 563011590 24795582 716037197 696942155 963921742 585819357 353891997 759886684 813327132 240393698 598614955 31720604 954485357 142506815 836110896 750935185 987334428 566278517 485844913 509604551 217837516 73949822 691059913 111004854 412747606 970851896 716879191 111457649 90182060 183203596 17007500 166433188 98784010 959028398 476195348 351790795 718891720 697908458 259688454 4054866 430237483 932300842 132098291 35890537 114462084 478121876 83465614 128071195 708698853 874725464 305427088 5276575 861352582 695498985 896234409 492755263 129915840 77933075 57499240 745631346 747264043 767327734 4753402 737036577 408157577 68650994 254072764 489449878 409399877 698392694 224607168 398912685 281854148 569860691 200836367 772318567 660885525 625882792 2620472 891999474 910001321 316911568 491424046 986071558 8565206 629170195 201706243 603881519 559116347 512244725 795770107 503106401 229631397 515519268 954207133 142242265 677517053 876178205 482154976 608645440 121145030 783618500 706318527 272204287 403857296 260305356 875991137 674310053 445625863 820799677 100055417 288198056 121610989 941209013 658485379 492638131 766333224 47990859 145748711 541760749 336871568 851976121 521043823 944996609 823737244 949139542 626250067 207172822 483653565 446433188 392501389 75532183 379617978 887571518 35860627 403382592 503436759 936026324 864166667 714840086 202168908 545534625 244163153 454600808 638644865 462196013 746482065 665199046 941381434 483495878 383650108 496657787 27239177 469805003 761017702 451697902 29524361 401518492 933258166 92836512 860765565 552499016 338344220 992695168 927578431 375630984 184009322 876726907 656235827 706972321 398729438 379449454 656550373 307332314 975093654 406092746 616231450 62840400 782336882 497245646 128354477 369331847 577950423 383759655 758590686 561683078 893017769 856059278 60115541 6122851 911345474 455678205 184125372 108864828 991028217 833153001 718172879 361089144 891498235 990888906 898466025 540870383 815371320 755311582 327305082 488452285 83878858 108103729 312514635 186687871 788897519 876023597 304739907 392094036 69694968 741190618 522043423 984693435 886205746 626908823 495453401 196380481 354110582 933611295 651931222 467121851 20535240 930311522 483425034 535198498 961780926 750292888 578590604 236558778 567673999 733077096 114039708 562218827 782699108 755756957 57357848 133019960 452337426 500747858 389649822 122641664 558393806 541349263 156286907 103775655 746139522 931950390 432799056 457982658 318144041 791948846 230288281 22741007 378916941 975071098 183565370 96423721 306569720 722846222 496773243 897038019 860680410 657481433 41850740 731811638 716941807 358394127 472212297 624398274 478257983 226579164 213098549 166346280 446745282 441562074 56624683 601370737 644998997 8384066 610679363 529230465 421099357 50299499 107750271 269487491 599888583 646384493 5181018 529876645 44097889 476128549 712216806 77150848 273212187 848251040 266408729 903369189 971745951 802248535 794926687 764106714 971262681 951321473 610939972 777343096 173563601 66966907 237867032 529987803 442158061 570809466 481680126 90641981 317361116 4447945 868685192 168704372 163413968 904050597 972999899 253334764 197789870 141016500 70299434 901577178 82088263 571665166 427311325 190285528 866444159 612731232 324504573 716309348 933848466 602926202 125628883 91425743 756111505 683440301 941325509 865332548 529510340 79577295 148661569 634929793 416453272 522521391 860556526 313046442 762201337 195674133 241514995 342854369 890936396 132227128 523039320 413486298 30320570 173635254 688666769 21954222 522093483 321654706 899222208 933960415 989013214 701506289 713812063 449104481 232939496 658192234 208896198 223353702 733195345 962003969 478915575 604406120 636581988 590981398 139230729 509720536 170388327 432614237 155450910 535228872 129206959 617212171 429071917 574244887 365200915 455240831 420083128 218529965 463021809 397722525 390139184 802945661 485508883 224126047 376074140 582489089 310972942 943966281 487012058 928378548 845615908 299235971 728667228 218120331 673691711 671110535 874183118 821582193 119509165 296767221 117148108 56625257 342054374 346100963 610073830 909944517 461478173 829412562 516917609 247516787 197846240 250893031 402701126 154736749 737306357 720947591 636082962 57669725 888593132 233397502 998631766 306523290 917824288 122757373 522180809 252059926 741382476 30601781 589922321 819911750 552200449 304624157 354619420 36420688 330953117 985311750 153516370 448493142 189938607 488120702 227865384 247010385 325828357 898592185 324531515 747966408 511867231 462424505 165478697 550031421 968841977 604246838 951199130 342006845 432187444 403394895 234647020 615172191 754143921 577625822 106686320 944897105 284173903 263419373 205876327 766141630 131039470 527597728 617839856 490827084 299473257 78326177 188903581 587859648 598445478 550912853 553391489 662310773 166227398 718763302 37801351 928638460 810429541 986839184 583154731 887509418 815592795 931938764 798196570 570704611 312861886 789218067 237317633 926347530 48553586 230464005 185690117 550783827 608574647 779846886 265980031 905475765 27459695 696643816 864372483 164638368 728441516 24234600 686331173 677505670 362645500 636408321 575742570 149867279 663023084 665633672 760534804 431471883 314007385 339127208 597219290 875775315 522925278 8988414 234024259 809960220 991962347 693379793 379347379 468724303 905845021 648928089 181150469 451334691 20025768 683827860 924204089 530956608 767664603 330782407 184740427 512300938 373105725 435785958 979113936 633297127 302890094 961564171 996704564 797547560 468765416 374828971 408514440 297195332 485847774 975442704 190198939 625404306 852175990 568900987 611827815 624559735 224593563 636811312 612272953 743760414 883077072 506524780 170051203 813291600 970578638 284825207 365233399 87999148 846391864 795106189 30275360 105149616 66867505 432475078 906562786 704825077 256076736 26744327 960868662 773958997 569452274 899641966 466088516 89994173 320396945 171657984 38341621 481879378 599452706 31111098 613345925 663704987 358896063 37875501 363601755 582935003 293465593 812426106 203164220 427417704 13247363 614499885 852856305 513078410 278049371 320075290 395452919 867137505 294339875 175446710 80739029 766955135 461434172 225394821 962836768 583391196 951062054 278554105 509845406 401870607 923352293 495744213 55517827 987161766 696712999 140413778 205742975 676859208 948250415 355078396 430942874 207536658 352219347 424383624 50050643 339826072 86465125 992732502 229970589 584900612 110177423 199354506 747311146 942062667 559868659 305589476 937549681 287043397 193428250 381733053 553339783 12200828 344001818 129861625 78452279 584415743 975663898 843413522 705387655 889665743 572517924 903450498 418070938 167504498 62529514 179679790 595079505 949105367 805088505 209096079 201457199 956400277 15630117 334507731 473874372 857665337 660234539 187102441 779740946 781701666 819747981 63101953 15544675 185798129 136738833 475501040 770917839 542788605 223245231 784633927 519114683 291564306 201629734 275389239 320184863 673033234 292443776 404386686 87869905 168500362 243287818 250858017 676904141 587918195 418299984 667011596 902256026 541345670 635488680 649376295 673923407 505020889 440543497 184884136 700649191 751005326 185508136 396241488 319335156 751000132 754371160 710644473 854349671 278843342 805164883 417950923 55527180 216889836 52867476 280260270 711556987 197604548 125164056 619505377 751208286 970758960 854222375 69004144 31634152 647242480 912817780 600775959 582830680 77567344 223875047 22425464 734949248 409343575 211752876 511651714 343181722 721337348 454123064 897234888 206774871 602916674 730770461 201398745 394217506 573501623 324636363 442018875 149958059 494736772 353607489 212726498 623720609 771946430 849905235 743400208 900879033 178912163 30943705 476279975 211884305 584612601 247388467 9978031 268579296 305037057 625645850 479940747 829734813 950498189 238727450 415129884 683573886 111222689 997345172 39380244 771203989 583942440 69722534 635881037 787573499 256787891 436514178 200171140 168495041 185518102 168929936 651787544 996020586 15665033 661021492 209510566 757735199 435121094 63033165 370102530 810235178 949983451 266791720 36781795 291574846 116729239 883782936 415796222 596360024 218069229 940476682 133196222 726657663 868055603 718283486 700998562 141515670 652682820 738982466 937948670 188420212 195600441 103609134 156831609 342540937 676529721 19196147 740524707 340664128 957328238 587038688 670749231 366799611 586157960 492916818 415412705 563379236 648706605 726536295 367634913 6297259 282251192 292900264 127573465 404770017 573979843 249564020 825692377 501979851 14173676 198789081 788921086 262950315 900016344 6396739 510649521 445669685 150022314 473502589 476147007 438369452 380183821 946012225 848143438 935501142 581914386 322867954 359290353 897811074 451890318 472085290 781462422 757212875 175741815 462540933 678484172 222660160 764015453 176462456 921020001 122452799 19861513 156125391 137314509 34138450 610385310 108857593 720341173 587380947 501358108 162946876 207459904 111000279 823621287 180973499 802450023 512232823 730853025 76401635 341054808 553178148 71615514 607654614 393156606 676060110 883615564 14223976 588431088 243798202 283047002 225762167 238365052 384023904 765597887 342306998 83802788 732863862 241642315 707584297 23974074 862140248 985433721 249055719 786842887 104478704 226499428 325855676 932152298 8757937 670439992 17937657 51764813 806686660 164027538 998500768 818123904 331297084 96130022 633478272 969431924 231295676 993599036 52406302 333981622 381795379 529661546 846534545 313850625 692395485 901336590 685213842 719594043 657308128 747442743 184715697 222618500 78775998 376967298 643439557 297017379 956178157 400422327 941624886 29021019 636257638 104765828 280503913 961621581 747413924 866939518 354293879 946890830 134403274 297483222 933675242 224803173 801321982 858019330 496517293 596661860 376507909 218389175 826985842 884672509 272187946 35007732 832067051 507440454 133936959 795108728 206068330 424917460 681164006 981802215 409015537 277230218 772798132 342351460 624215398 126846851 545094318 745967799 687318883 860795640 302932685 161105086 29768208 191649961 916342531 389825386 98163152 717452573 95546563 150307890 198053199 336873297 120283578 13698113 332092170 172474638 969300597 201340835 438399793 185114547 725229342 165657345 700867786 51635437 955976388 310087292 463951000 392078056 905932864 747789513 77868881 565584587 175312576 528288001 523847900 70833105 111512559 425813660 515359023 856916065 439694641 921975279 81564471 584094099 760064668 34904357 450559305 683019180 891563256 731210678 256662120 176571833 904893857 723063249 840921658 948028088 10588270 162862142 519229774 213645990 313326056 697705661 862341182 755430002 412626289 965627604 128409326 24288415 484126911 353924910 966525821 42574521 30454189 324324443 308275634 822651302 409302985 901515052 893073534 13362198 110680254 261113029 361648344 728209535 123101554 441958946 71628508 760752205 272078183 629687691 584296968 560869216 245297294 562314073 218803369 887192073 327335779 475207218 288301783 936202339 701390517 330224471 210099761 256881006 707145806 232942734 29556271 571310362 480797397 917638246 366389355 880497908 721860168 636705481 616266376 77388812 645811425 193850772 286845858 44760461 331539980 444988504 432853665 319155178 292240939 491990550 552147624 811043079 411891781 671494326 39196531 747927325 429067068 254442971 789095576 148684974 125273844 537427910 87838814 153339695 526578689 922738652 971986573 817154761 948209512 335034181 334695044 551693458 711351809 519763479 407851826 758683309 330426355 587523791 953239950 249743605 748498356 830138968 808291562 747367537 18683086 555521183 473068797 22868534 664873947 757921739 218262268 658778138 336048976 24219104 119396741 625294944 512574788 790716908 149713525 86435040 80271447 149814754 229940993 749984728 320878036 478521917 495042542 611291098 801040647 983299336 971042776 934871272 366046242 127496004 228230964 645914640 547874247 940655332 886766501 649589638 583864541 704073809 975948872 192270075 354902953 485389538 310124135 236078486 388387244 128305897 609082144 755741671 90226726 424730379 253758870 132677294 125226837 183236161 702098521 716724369 192595661 633540624 794063144 18985175 765184212 812463352 882128439 458478563 543003141 311201166 198503088 550116186 368872726 477450216 905147427 336930449 22161239 580151647 66896007 417451056 408078870 505962811 274712278 85849008 150692489 662680476 90123729 986415592 483377533 954713827 76237041 704683869 983589569 681899160 893032095 808476846 842842763 13264499 614717463 307849338 834934456 546781210 821068 628075900 891044363 561848254 857367976 786075147 805113007 675714324 818394693 455519283 612503665 350937906 238186537 674850366 28656187 229425544 454320286 669012427 974221791 747765719 718533488 440861059 459344773 614067644 337408898 871136899 619316348 438261711 912534897 311582195 670050444 19960014 809247301 97921367 83412240 857835826 132283669 642564300 579993777 36377275 987439608 315515546 925988768 28163635 105800712 232133360 581857829 37240831 299838290 309330354 731960630 662181664 445873194 116744450 229633486 929708219 29259884 559091915 424613239 142612270 87317463 860988025 945292950 349387324 17480223 860817531 61767249 68544953 28638619 934803251 735364513 55428085 475514672 831602335 721119021 320122460 416018027 147995100 766381849 155200883 658648304 48099636 376208139 828825806 210736619 117523016 151047349 506864783 943133737 519775087 322071962 355697014 66744004 220064955 360113842 670144433 53329124 856829119 700594912 282339372 623102415 757236424 118298597 966873308 965551622 580093710 317264235 941806039 291333645 148146906 517803990 331950901 332778726 377450278 830135336 201281757 204910480 170608586 843550183 923158888 684835675 633642833 542850579 880392729 254358330 762798651 218377786 889169616 16415453 196854397 169378745 780891393 89588556 219570136 23964369 45965622 464678086 693778673 389915264 685973801 988956346 682644370 908504469 110318172 980839983 250645857 396581071 721687695 336350332 954595490 169957370 83917557 63642719 600818598 73931328 414856764 978838537 838670741 85176157 52924146 234305179 635774843 178081504 124750928 723111324 334560081 566591261 961980253 366620418 999932520 741994040 621170739 706887391 249668272 878306036 853413299 870316497 425665886 338752717 569474684 610171114 526903425 418426302 735331766 349752313 125051601 741182448 521937995 607011187 41231643 870594122 330998429 342883638 829292056 562488685 175553895 298762347 514816929 757884176 301993907 79894353 808825837 989405697 571933092 752380597 108593391 417888193 515673395 667325636 197802417 208148442 47716064 429025390 614501123 901792793 249291530 151358021 622346911 936653752 839964944 618964890 913176219 888497605 749363467 534341016 829277514 723802753 33402113 881803425 787257004 723424017 420212192 12536280 34896117 353643737 159559623 623375321 431204141 121515731 152314337 71251119 988425700 512467688 299503605 498908817 180575131 511016387 152854826 299715406 689437242 410313702 441387511 125932709 90511864 240256936 396652170 615870407 629726087 618928883 559501003 217992391 398742431 418936768 491331459 225985221 994098217 281512285 477750115 686355163 46504318 954273248 194882138 916299307 774434291 268887673 714693310 318500912 7536851 308522762 815731671 883975144 664172526 268485518 750085045 103478291 40872114 62480380 519692857 352372776 246579443 184651193 400063165 819268943 603181372 21778256 643954046 721899643 682361975 879281579 491608929 967508185 760058521 963789993 809582394 641953643 350790100 449820382 782915146 990885428 416828346 436715478 152776423 689021365 956126833 175972612 178144153 595569475 951110715 58956360 503031496 973250510 453588731 63728537 894283326 826551295 245594589 741688572 224146537 804248213 780487535 426666754 316281725 480424561 781649408 813191948 280253069 583387780 853510631 660746168 276806277 88502287 196974271 118461320 849620068 955788462 628339446 381379666 112273428 199806711 490645684 15388103 823918461 380690286 586536389 274775372 474775365 78419336 144509408 551150078 592708061 154718920 124126431 657271544 887284099 159051555 326053338 154812791 327583411 770765120 42177274 553343670 998472406 91805540 853881191 945614181 716974705 510884678 69426851 231972254 218301693 53758430 792487570 997735483 140618822 968666081 588483917 241064092 392204065 49187661 120856030 641957462 239672066 897775412 898842613 512154584 460345900 30950795 172429256 783858737 728132664 77385003 6344077 191855333 840955131 579704356 759533445 483382531 669797347 979568339 714041881 703883112 638773433 505966762 828087702 611425262 953732717 116330116 87066893 796161085 650388566 580115668 308671405 691055882 492233182 210579881 483377390 548448121 915289534 652417765 89696595 336593391 471990330 499722897 163834924 249853557 443779339 505237672 487068038 9675822 765436787 839242964 426074837 52077310 81060467 63475699 739805782 433383984 1302261 704332341 522334852 325813155 332681742 807345411 383637202 111429700 386631466 513015999 865195792 964986441 316949062 696621415 59740355 587940332 261349194 929936336 479313027 227847582 421979614 367326037 972381666 89454490 861663759 647280571 610282239 575879927 483151438 694881381 3874140 701734362 83566183 871646034 738277038 296115216 785508568 195794273 332171287 3827987 578338144 105640752 284850831 953531526 947231600 966997236 227881119 270738679 767049487 953840987 46224870 493263851 761744109 685876544 981273743 665044701 647832971 789831529 998090681 250126056 828522278 20174026 196582170 637563592 780350952 287214813 731024004 342188064 141194938 937732447 737111489 425739584 667952350 931440243 18250898 874486664 104477 645529490 810224706 83696108 841516667 250028077 792483142 424259402 214203219 821124623 447367683 661262070 457144416 585769840 5065656 852925955 937542456 138854346 859224577 470875148 665434032 922496702 796485971 268919886 23365928 890413018 551149066 123576672 472915224 442082125 915550565 915662020 997059501 984627774 152084393 425204486 51941609 771758530 76726763 703701201 556143251 887345003 806128226 192211841 503036070 102047408 127455317 864766170 242841450 351493205 772879355 911902162 523712840 458203201 195973631 702991587 967950597 178731544 272985176 476205989 379373460 319425743 442009836 560737938 95423914 552340272 688961610 266255236 665597989 288309452 893371825 889253229 696808022 96448592 440737327 106983196 995612023 15399837 579219439 62465191 130550052 2575057 485257740 579777793 6363873 519672869 530781496 574326421 635849498 163238640 87755415 257428753 192290015 684690750 312350193 784469420 186853962 39606680 935419330 323001519 718151331 750716911 764963933 527675008 913071752 23391904 71810642 880002238 980937055 827290737 30748457 255979928 895379874 785194389 720315458 109881361 593107088 145582022 386942424 569143072 476027402 941187186 923726057 123412959 505487508 23247478 504586473 788765233 236358853 153069760 444738258 908207557 982070737 252357418 513469140 677049002 432538750 494461625 281997966 248535905 648944157 265191621 111239431 155236394 719880123 296431364 502320580 450001941 48418993 546957196 90606386 269013165 944254999 452248683 543455401 724459586 535244342 385899276 562932332 740612267 204741824 500882133 316452953 162995315 664309624 841395665 660140212 638665068 898965020 266148757 875248041 240829677 60996829 947527695 357471572 638375201 272889427 40723412 354034331 58456657 233535898 867138532 470002971 219670563 325369999 528207745 843569755 13554617 859010707 458093714 398826298 199051049 741937318 366507428 183142914 559599172 981443357 990275099 78325668 270951806 984590880 169811458 354190640 11542073 994702716 35027288 923425286 737350711 234063744 867858751 185301271 273965782 553668751 102970391 415624690 494459023 954905047 64524654 205214157 637835689 902820211 493916425 366761022 540624957 600403034 523181284 280053789 782063990 631205103 499245798 175131280 721855566 425568696 63254559 704180606 982780762 333096290 385666822 604995642 617979614 271093996 669544951 133103813 556899520 921556863 147911445 762906208 395913843 809839722 703860492 836355823 571443275 436841152 37949072 860743748 815634527 406838305 551264033 521141747 217153695 395084287 201212664 117485830 37076177 909650034 944918755 3366377 523651679 110358257 407251138 749342904 198510123 35159621 918172226 772396311 156801723 372314781 700683321 724846592 859559818 532738780 5976699 285713293 53789964 851730183 468941517 438158644 477184650 396149833 685967272 831618609 980180574 905397281 736389173 284980673 734924673 388686602 499370267 264716155 666447651 112344900 80363440 517261790 78616741 834324557 625031346 969145441 277708712 753085264 482099567 72447568 437697331 775174575 599306498 612086454 922940995 429629722 611518999 897830044 618684907 365784628 100068292 482110931 165910617 2255840 275427799 194640674 520729764 790770021 708180812 329644417 668568449 854633410 824706449 576909995 657437278 395689890 339225518 703703336 530376713 780549248 918623925 409637229 831949678 150599092 713234947 203177565 274232053 243801120 723015297 530220642 311686912 422756281 238183837 199529209 899179668 396054756 223702596 2694925 211143269 450539191 400427306 717901860 31746902 170046266 528729518 638295593 830030231 630027809 472629078 969837563 844659549 709945709 217112803 97155863 464606844 587694447 16459950 546179097 353156494 225339560 967881077 588189966 764677224 883241096 847307132 492450076 468883119 522820718 689021095 378206646 762633655 981495988 589387625 909874867 757323348 125179107 145131492 928232108 679661111 518286338 681783536 886025051 491360389 5598966 105624691 757718417 653388819 411774890 935225775 129804953 34978631 974253498 588425235 78867988 909118979 148735398 219739982 417036077 68863551 972214724 334667661 477995310 939932632 900049463 429769445 337761461 837420020 717631517 867520466 314944700 59863525 127337223 934820102 842568696 599265160 132000328 730803666 530750414 197035373 872137641 814062480 914234813 8215139 408186145 497629678 238651992 347153680 954683902 247694495 91046740 410240660 840593618 449200060 504874535 584319505 221858535 768232898 180611541 21013626 112640439 149434273 276950766 421315542 521577055 132773805 815842266 576986364 206318927 535237129 249516729 645249984 279772567 954476057 23742243 15677778 521886361 209423539 178797948 711397935 825180498 190463761 519840325 976566987 91377730 334026675 929900788 956464618 79592063 906104107 932312952 989057735 460259903 156104102 429726330 484671995 103939419 257347694 911888533 625222920 304083722 367900155 675777308 483724422 655578859 657440794 972044253 813194039 125156665 259101987 435816316 681622207 714655775 865597546 504014192 123837119 601647496 739037466 868983677 899274720 740115491 282146005 774016619 771942327 897620348 475573696 725623901 278400488 845229714 392221645 668837787 112613432 511739026 34410350 43439195 450550710 951720408 394222313 111734994 641693969 371477900 508221041 472840399 676676779 235505187 515671921 61529764 330455175 471898550 28903143 142859743 367681922 117937370 674349631 364997864 148655887 701568435 753468338 308575372 852820543 434744839 313650616 193608250 924260340 77255258 193637639 584426641 653021747 242402370 72849831 285989835 389666126 695825004 93437978 655091918 195250100 128248233 606963575 540725427 378412697 574870400 551215283 147664084 397685415 340797646 355114646 579801471 704182427 568766004 150084425 398868976 67129959 568062431 205267439 422963036 806999587 19026442 255525049 997242047 865941028 55650892 591523763 90310093 612931647 871358451 807361691 296245311 878832576 377518349 962713132 907862797 570435341 556330183 599676089 268744788 116089329 463093529 317031334 533174156 654619186 400784327 853460622 813127650 570316079 64166234 832998299 569842128 381393568 505828878 374659558 42630581 465896965 750669561 653041807 169941338 803011380 798090154 328313132 630918139 407685652 436045014 15585061 733160283 935261432 862094292 432339469 989101595 304862975 684789773 735051532 629816701 434494372 363476546 598329852 321398093 755778577 325253608 703564371 548324294 323666583 9897145 477767391 105736157 756035859 779303898 13880427 18429913 493038535 39888241 793508680 834022823 995966942 480781392 467774313 65603237 106854064 586443794 559079394 921550405 794014176 744131904 330482594 338584717 558133788 259810637 670984163 280509784 726449219 627866063 148586080 203830594 548735172 159337030 538428126 493681317 453725551 439786225 31704786 939263461 801420422 475695797 308565623 875156626 715153978 825064831 123173113 492737811 149968807 14610167 707962153 657011189 477321673 106664813 500696396 144405451 970836232 653810671 237570880 776452934 69862729 394384 34072185 529180889 59657360 456838873 372410318 932256131 509201369 219892783 239402871 494720005 624578975 262833757 175376689 703957006 778575784 496051316 569597073 363153650 268273053 773690550 212485463 485041566 797381670 224801515 191911208 799285012 1764942 939692011 515115903 649375270 573237774 597452916 546947975 375265894 640589230 279536060 308522136 69208564 179849652 170555721 42506840 276582704 641722519 417364082 159337911 611872949 819137898 82973532 673524983 642096783 771855452 340218006 220503813 246409630 558167492 798569594 487008631 750540307 205727848 988456509 97243680 694522401 480257443 687268024 383953596 542568947 339701128 298901222 773315330 226946130 169965705 5281024 819804108 345857320 14873524 151120537 313083973 140798021 539917423 924065041 34834929 164434406 461218111 597363062 296352077 877053703 549878234 585235611 860189634 181575151 540794285 538616771 910016841 375319458 663956102 888003326 957304551 817447170 305268345 264300067 147208294 286535891 395123134 487810626 828161453 503932997 324924067 788083161 212225813 764787997 196606183 200526646 756765813 567342121 218293300 101509614 877453155 307383683 505379182 601181763 655097607 359210141 37152041 55987224 970225627 762379200 273476963 706438325 327204170 633128731 770542806 409128501 10095751 450284242 237811960 635397685 877350610 224009811 299780124 287028756 871123267 939606096 131897220 621520154 464705423 497778975 765062122 404128244 206306118 371027265 656842075 151473074 1416632 352657604 436378317 556023619 991405372 920600491 909098559 782881795 158127222 466114917 188940308 692651161 180828797 468891559 882132460 894351939 516875902 586832370 567014609 659446229 428625893 475716638 595780695 715534357 459034005 321936107 418024844 104165296 966949099 690146394 472788647 249860739 549595522 259952438 445149814 791895560 850513294 691714322 856431977 562678038 678955698 933463512 15851872 158603273 579257952 523769611 235416509 37192715 803280032 168065344 432221514 213329471 989938756 406916918 41232622 588144376 8644641 324655631 138769807 396639899 701765188 833787428 535254309 440399526 582647733 573021001 945692922 660257751 746837269 389818049 664229268 430982069 160765176 457593307 727720991 443160317 959278154 463608899 172880510 843436238 499121003 272433498 600738208 617604599 233342965 651061855 309212619 778700695 517122017 149894728 427413057 917210968 170844113 803438507 519947059 949624131 888688060 421229378 342501615 314357450 246550367 178305761 403177397 873876130 136328202 654736817 511447423 564964559 806632374 168968522 653233185 752297786 880352364 268921094 292744649 434601743 843828639 684749796 514485878 702678121 876449707 12474660 601499807 965637030 686444936 86175605 659978172 93060384 692284105 651689527 720734220 119434162 195280343 574744503 265967149 782009079 854362871 138965051 638391096 846241922 287614742 553148496 344125049 801482336 46209547 916159352 719970800 714102777 146758945 375504956 584351889 856260131 337165989 797716945 299919900 398836156 774019180 947651490 471053335 870524886 676200566 791532660 904552573 21835080 599810054 861084070 67643268 851225601 769144212 775823556 299477000 426151490 353853093 263036166 160541742 683420220 104658713 997332081 29496919 341155788 806054764 349403644 77994936 568357723 504372233 320023441 421979559 306129911 435481194 434950187 969811379 786480170 323911777 840257597 270050495 581919296 230977716 492941485 752860087 842174080 927311559 984030358 537323844 204632240 848134584 155544491 989447958 742719251 297848348 809660766 730299819 601673723 678251174 100717079 188735082 675883600 493178275 989434995 259420902 972996916 645122663 516710587 914568384 71955032 349895538 759727806 675955679 619593671 279832106 368059248 357016655 718248832 215812176 202330775 826745680 717478594 588000713 200512974 645411248 330159064 785498204 304337176 620405779 879281005 734252611 972899038 887825590 839099077 991097883 738511604 262115087 418338936 561716200 570430646 815141326 493025057 751854599 278627778 212795467 335453803 467885726 975304246 779707008 371071168 330893094 724146079 481019411 461516448 225554660 378998612 891312503 214500313 769888977 893761283 649243166 905309825 882986732 75890968 944683819 155169146 694288077 507051259 159787721 326137480 190067023 584562178 449982300 271538947 206254537 313275189 50462648 137508648 451891336 505658324 63147463 552655589 178140383 821331013 417063195 24911793 526591229 117736675 87634147 334069157 976241643 613525767 116105189 792576714 355371979 165051237 143606864 367308983 959922588 330664931 4995983 318102958 671385323 42671404 378249465 58717892 807008813 416623067 769036065 877729411 106611751 183406544 998566394 464054073 76236987 729828337 665069426 861625714 594240619 507495408 535600676 79473737 103167573 999793313 473527055 157371784 310918029 83242542 293361005 760080755 525009136 429567191 556130288 519930873 330716004 535173028 583046024 987470490 110274637 538888953 248457635 568758158 714112509 108416354 806371967 802329215 197106447 51778075 883784231 831926653 246868996 693810097 776804067 333209078 318491308 922757376 719680878 315600729 276760571 615811412 257859610 277724310 987712236 621525267 733810477 665953863 666215553 397654181 8734762 772412840 234663363 100035509 333636172 503172973 455817573 238068380 76636883 796632025 243359099 460121511 822168837 738386357 593497569 973283847 30876443 217991768 721700278 155533914 823216848 521902219 482604495 959187506 125873054 494768701 120833906 684914591 912344524 189496553 960679495 177809707 527548725 371227168 204355475 850469083 662578451 408727165 485267002 311501489 245300692 474917877 769083917 128486123 410133300 18926683 246152732 226363087 837257839 78518505 228576732 851097028 199017227 358476972 506342714 127504459 522714356 910273422 921650924 774344246 488405844 815766774 235001610 478740765 144489375 710983385 125907376 257521870 848683888 828349499 390991789 533237147 646958594 856309239 225580438 869130704 540099558 447736580 601851265 293343936 220757305 401680883 83478769 227013537 49696650 744311231 430288907 538369449 152702065 686806980 747396452 957776033 455597058 868744239 566339801 351622150 829618747 882470593 467816471 593438171 529455469 81628411 146850974 773866516 775994473 789684129 31849764 854772471 575028294 610692313 788351181 73535621 88712304 591159150 606350641 351929710 535004908 412166734 210818830 6934675 406998433 83531537 357892434 812535025 927866614 695651946 170741996 33156918 383523439 456419187 156324938 332811467 214860996 546078027 586449450 53707326 549580168 326468112 485666222 939933245 720171688 742443163 965700653 184222395 303548007 231725845 532512001 749515486 854801699 729380637 588610139 60621613 64842633 212294051 765317974 233991704 12389248 191251953 926179398 37563029 817872886 535090740 980812806 455867392 773404009 147912965 563494680 498763915 645132600 56091629 438983089 63190258 837893063 92825437 831692651 780782693 654830702 157755942 282971472 532158521 334727344 497021090 390326311 893244043 906170692 830603962 427184218 767697076 844533207 218654103 854173241 21325978 499817014 753344673 33520945 440996560 905829161 692208993 544499320 984215112 590148915 476513994 429928415 498469997 938825573 723688244 347965439 22823118 268624825 730810779 147841674 598088011 952796168 107179314 154931562 325054693 448942253 554402436 452819749 138567128 114042072 190374108 256071007 200624923 769008332 226193543 950742465 892995950 884752193 898848958 128994917 630065305 649320759 405300158 133739801 221082974 920896267 527841661 398608495 709329067 137575017 32892278 596296571 995185935 424728709 525720481 38826317 247592363 488983476 414435489 367786761 770673669 296403035 771096889 627730790 453326976 257047806 243506498 503271652 289437581 462208017 833384813 615691715 239679595 135199232 576635707 40218830 979518421 814103557 77416225 546626194 958486387 161221420 145498424 977616804 544202411 527311870 255006500 598088592 957084928 952407950 160689500 742400190 496898383 399417857 316354007 571419777 34544330 254892204 473352715 285341484 667842282 894255319 817042409 621131300 185022456 296933650 165402081 487975175 343463906 605221518 340470967 231244390 556707182 204081867 805487164 726642001 688860622 628125204 213970603 50408209 379955896 911037298 588108473 49881250 317205151 354886789 426753818 428543927 499480845 549000503 488419703 180632914 485683457 768352703 940160854 548391403 486870399 954083132 387910820 206919439 702726784 444605460 50755446 225591660 369662174 313496181 360725723 819231464 758594076 224256044 5030170 710113459 268525821 51046670 956475155 577784734 842199094 389106466 503533824 878491208 383393395 935418757 372107292 799973077 658948004 9823864 675828328 673874292 404613293 442861252 27569077 583817524 962638377 396768071 330042430 853147503 162065986 455569730 169758988 68807762 89277457 862375448 140893863 313213436 460248504 269787864 339769978 399790167 581877680 47558332 522563135 571376305 395625661 625402834 197183185 816123600 105110377 784388778 700222545 559869296 71730521 671008153 548111153 841345140 663192060 307365241 197834542 674714609 732541680 117818863 636126956 912607988 294076645 858904404 427072564 188957428 692023942 848033530 124033423 517634852 569476537 76288864 682674257 658779309 244882851 160801183 550595752 109634008 770535482 821937763 402797606 192011248 764779657 473379940 288936067 515824524 815151432 710471357 760552850 894074361 532899921 185249362 822294459 976153082 602025842 554440795 910031279 957473493 560162876 482007279 496518533 548999635 783006215 139358483 432284983 262210282 695472128 176577972 590582370 152437991 189630153 26393737 632942465 300291346 409850991 235026830 64975144 986194737 718210899 852649985 800993655 81752368 345199110 892777065 34010427 951906535 744783715 918946155 537010492 648788026 382900301 57452472 854616230 933034055 849667942 847853059 986842239 658979652 202075136 891694048 516423629 729841150 440696494 894383922 69359995 471340652 532313156 169091102 570273617 86676223 335283174 235723185 901149764 865701680 53458159 719435494 85755274 508907509 695526768 20385176 987875649 211984464 319487925 908849543 421422194 580383738 773685066 348422059 616095536 800235549 283462652 940069840 506665723 230707914 392314105 723632379 858351445 460384371 838619200 233723871 44609390 712670832 724982012 616321479 11636810 412893772 778766245 415676927 460568266 245384753 160759495 632450111 499135302 331584160 124772710 331418604 779829477 947311342 496530247 892949220 57676924 734500902 871494529 356596510 746147658 651770222 678653173 407956871 225674375 727489177 566808634 791918019 595849545 806674330 646155726 627601476 587778585 374204901 330700378 879671359 692058516 714466735 802886359 288355059 510975208 103942351 60842760 496499286 224426110 153615222 387663452 899751062 766527097 553296992 422346469 155501112 439657121 330742208 562966297 667091264 901620304 477795732 911654797 517292061 827294337 122522165 151657176 276069261 788713658 613061697 483458688 305039156 972858643 730322137 122843400 138616011 883738098 214837290 877687360 225697391 599938670 103770470 4408267 186822462 155691924 712867275 739174185 51093987 930347456 62765159 222538180 968373408 258399675 757908969 696918217 348498005 198013216 195392356 432260453 782537375 93884167 322740451 142253282 15884969 204001661 711482451 230732942 187445424 343193512 781298307 647055676 238065345 656163972 693370969 703649575 411727933 590798087 43029496 412186109 427417387 906416685 17387300 926371432 785854700 882761703 540001566 108072425 797425395 327873946 690026078 688242370 575865265 100377179 691350022 9346982 436149176 500177929 148979844 536783880 43876815 329864805 253875342 602605826 584981457 509415504 257026257 351499467 300738455 550579358 631372650 425680237 837436575 588311533 522656188 971272485 811699940 717655557 569074348 270139977 870207089 744101875 276302715 570987158 540427763 628393165 673166740 725175627 589223542 514430678 765783633 85259403 51131582 684917579 611677903 377231549 186608793 56128570 996744232 1859713 210340019 811506293 454752581 890728594 718744062 595221895 874961925 708867970 110814893 109685399 967487091 393139872 227190931 649466554 420606890 761920274 866464970 564439351 319109308 823776280 692479337 134856780 570496478 694312205 523024804 929575365 647716637 276556442 937122598 925174292 815750843 440131413 175521733 772315260 903263782 644182218 78197983 439019947 935977564 938099232 859695136 559102266 535116070 614295911 683252439 484897992 924043550 295344322 850305876 138196836 667725011 286837129 996803049 756049241 207666064 828379023 233078752 583277127 739384524 746014722 842483145 995879698 937471146 881852079 150015656 526188934 239708602 796269103 169848710 202882372 707482614 514619149 279513876 46602377 700290822 272125170 13432088 893303895 447072601 908974143 347899668 360150493 485611983 106770745 633295908 758902498 693178763 897331444 635152639 834679565 824836254 770394814 191752402 254616000 350399606 272553899 718427236 302027285 307057475 147795155 524473321 490036930 578915094 783633407 379155155 568761105 446273141 740002638 738722622 91464131 268123822 559250295 559545325 463365842 964376129 584285251 696678249 192461515 949595747 916216563 620456719 719212187 169461433 30599764 835721144 351569717 32643009 857521786 905243202 224748661 747746612 825993951 766212671 809677116 323531476 51178033 652119909 205153030 739377512 444439610 60988755 724053253 959390773 367422005 534526078 899583914 754043381 525220644 292656052 708196448 366213891 436457470 224453359 538025830 814206931 552837702 837479107 915025963 725268969 770961697 338939953 850903509 87760075 366993418 414514615 891148172 656960105 414588659 921274880 840110858 990708654 188123532 833878172 758558143 957310404 569426865 405208692 833474287 788400210 597775705 905969949 328324145 838974197 667268407 213301773 962551407 156815904 476171403 842448740 408102551 855383869 252633411 842450007 23516005 868507856 769893801 102261315 620102643 409311584 228699772 802518512 691752667 55545154 809284897 474840498 122582848 849463000 691310920 426566299 855532347 321478143 740182351 47356848 241207513 419264233 588468034 719367706 136116761 174205393 135910086 902237665 840658042 457166918 481147540 723926677 539881107 989021383 38487533 449226300 275197635 495069703 329775644 827591732 9420692 454983666 826217514 868239620 681460814 996959070 218080527 419339984 45804716 457647561 134128826 380053664 242722353 227439255 235990857 265539157 411121438 916584292 607114322 151609870 779737572 638319461 230831374 85859134 951734244 623180467 364745498 213427980 644112038 259333896 980932048 102229973 762523630 223642495 807821090 232394196 630217602 579730338 476866792 910372577 781086901 820739567 100146339 550665937 909430903 152199653 862118778 58394937 350013678 31244193 180396238 549033354 661214778 551138123 488138504 34867960 109138451 376625705 940467856 830860398 51343011 115007929 917657784 373803641 119041292 280612854 207859280 521450206 659285947 125182763 719810202 295357397 51344045 953652969 918078729 884605408 323579647 276359694 343366067 577204058 62966208 498287963 163847207 38391209 137517842 328687130 604173320 750505231 545964525 644311004 530977692 787363736 99216637 850359213 459842736 841199000 432121261 933979615 963902556 189588745 643342016 281917162 950807396 42401133 326950697 366880875 486916205 876583220 587111521 920254984 767567518 750068317 77020028 630404254 26146852 171728470 338466514 724075466 460352282 810941657 906646259 341541011 197766565 175683394 270514168 118084549 21955334 358831021 619358406 943535130 255265254 452688516 190754039 748894066 950561295 404539343 686710540 981133185 608173185 262845156 234026950 403668576 802923873 287505866 690009602 261939810 294758530 798401770 227690491 678502934 765632078 746903962 929549702 601595803 990897601 453664599 219527950 178078566 350609495 418643563 263924529 485045627 503088145 650559092 205680842 635679307 891141146 291335827 708171761 126594905 894090875 812302241 150635128 880543143 261110814 544730975 14902799 622943007 563529373 19335215 247849063 330207143 963561049 549457391 902702519 685345758 57336087 617471887 368084647 125458536 402502357 618384392 956037946 69007634 10522307 747341205 483166806 811836618 406507418 592143153 898221082 657100359 325597018 511663963 47419669 745736807 598103012 176877040 739477166 375688196 478017353 256656100 577044829 132699910 977526350 960395444 589736171 137314986 826189507 696951786 606081708 802881313 595361548 597893083 531991970 396957394 307665458 743350763 157384491 552951813 80767659 64677090 424562614 743343379 509796483 937385178 339958401 228299446 523342910 853540785 924449902 977581819 525003891 743797522 909296401 390771270 332559223 877669978 688682258 435871809 856418452 526684976 843703604 221771362 867131734 171533074 841579719 98320688 133267827 450821817 70098237 662109625 903654494 245897884 756110132 941793537 469730940 349123517 285720026 469224216 960885098 618598944 294937116 869150157 447879506 547132220 469513744 971386105 943671567 230172547 576767083 938164486 392406228 733862502 75764150 649268084 209361921 187981291 831617188 605384857 459767982 982245959 394319573 336392811 624734242 659400538 445607745 94824486 605439233 822601627 465180343 86447029 909594941 150904290 136729603 106151754 459032265 35582022 980511862 212920342 793990328 625826135 371576178 700928403 925251465 339643776 170257296 146659684 652571411 593634230 211649876 250191561 628661302 146024147 190722539 8547972 934564926 520455477 656753834 353303976 701649867 616846527 2058256 676606424 934675151 719362886 683474066 91463584 217131037 785179540 846650972 269346370 738956241 206189331 477982057 751907628 257126586 787710049 69197386 804565410 832086432 774041566 140511880 899827206 268270122 836706720 200116946 180052674 332144048 25028431 443831124 499794704 616569123 843375298 890074998 805394380 113202331 52221376 154804065 298994826 900294665 388686287 199220834 531912500 788833808 845818926 305065187 392046126 349683266 349957484 889145072 631555594 804502972 647461035 861323298 495211004 661442286 864665851 929356368 915836855 680441010 698814090 418762060 179120541 479419727 708841503 561756552 260085271 452344901 425387860 884570195 406476673 850774300 303370296 249211769 453650009 588083254 798420114 751853951 774586721 751383394 686748543 564958030 302035675 193368592 239368253 674337288 606586792 146503797 921487162 605670499 390658666 230667238 612606586 64703479 548570773 397378438 992063188 391593233 399542559 747917669 480605058 450786068 599296021 410400711 245378029 767235791 629956539 217778853 843832981 325384210 753954910 606291256 730108982 380195002 844841574 121050669 602516067 948414515 773579198 822100988 607120217 954011575 46149866 947673362 92522339 715605109 957323357 203594581 670768990 411570090 719100515 671585857 320505510 746777524 694956442 130125569 29477420 861281580 558190575 518383928 391779108 540575617 770744487 851117019 900718767 574571051 141906485 225113860 957459240 850595703 638925287 125144812 35749561 909114919 554928238 774295651 897776177 885121315 290098089 294231255 663037319 290318416 972313697 534431421 410423375 334569872 967671062 901469450 453158799 630377779 124893158 533362420 853030449 825483778 674204255 719937181 174185064 437853839 107873827 528688489 930445867 188934768 405235707 261793382 156330368 9416012 288791463 81846066 366323485 194789719 271946550 37003761 417080692 231103350 341150177 841705727 982588426 172529760 808941417 695784465 409040704 690798222 711605219 947401153 601216045 867425373 458555887 991203675 250292945 633359259 37303080 533008475 872950115 61236510 887169910 935850102 675931824 170409774 644630021 892333186 846264045 743369754 667507264 552446589 792681811 797483776 649326009 336817352 537321720 82635157 983886915 643065162 528332979 703890924 994944898 880772877 981137108 849922024 357866108 144026778 89931231 416725958 364352684 757828753 795783125 92765323 823233243 651052112 938106658 602516225 37510975 679828628 164372295 838893255 324612217 810497073 752343179 216112800 500640022 109878206 292174872 82328779 414661625 767207295 127478431 86627564 402700918 745042464 366639830 273128348 476297027 765303320 759819736 173029583 910292520 995522242 241795185 574814418 979897341 249112866 599255513 803466341 339696572 471417396 488754662 600024137 78858503 344565030 222473169 675862269 796119305 762535499 542782560 479495824 606021867 969355040 775906959 873665479 128985031 451230805 779159188 765019780 905735267 595721908 976729340 652657787 751897600 341360189 869961833 387857527 163672573 377438647 428007288 480076991 703767267 924330344 975148673 635124200 217486227 675759611 651066694 16297501 503549232 383744508 313868663 593764948 989372009 67986736 693838717 761959587 228798832 837243590 344893052 173352888 671828478 64335958 708289750 729142960 88644152 689662406 768827482 387057602 800532844 532727399 983070017 662491064 956747585 365649167 502707627 312360953 867461512 710643016 573055601 573256212 184034317 708940761 954378738 216301737 299749451 857390884 759083421 276849183 364810235 387614130 590151903 137481631 942426211 477317712 831214093 845948486 601406777 731061355 79176849 88541204 578164205 603735860 174031268 627420840 729110591 830787844 362580186 739094621 245938306 641152405 23491443 332301183 81632972 109644799 396498813 853395489 603525932 759576842 916328574 3359970 21485992 744467858 650515533 613401868 390421505 404874976 962294581 968727341 806318261 629283864 428380678 392491775 155533205 348036870 905153924 148804279 255506078 2068799 153594626 579855719 734914026 17060122 879988056 921444800 643059267 922677509 621847358 507029741 401421542 955155001 479338625 789355780 90577749 760163453 57721484 207923664 722829812 95304720 592667286 863176216 1932158 460890876 173490316 31468569 727909052 131395409 857998992 198534183 658792502 345468152 202299799 908588540 16545472 543093442 279318553 486039822 126485994 17080293 79563484 264783388 899694445 92406820 302935447 945212936 739865338 665230042 741348035 4398202 65092428 736268302 505568785 352361653 883577702 833992524 758006231 425787474 688163066 87295321 312435569 84993461 995304989 519082621 224217236 911543193 605226498 959246905 934570133 650346737 980348036 408004132 851231655 115562017 824092823 719977545 865910039 363640562 720685861 377016700 114885554 364308555 386572246 919906529 172290695 360535479 804609540 794217446 110273215 396876879 385128457 20894690 706891894 337197367 724984131 694027559 414495911 749490052 542614369 889399377 7179732 8273962 601198538 403754897 919755418 36480885 460314709 734020030 877985376 573068716 432551943 69797016 822432845 697026394 609477120 8974391 656045273 700119556 139725447 214877 490327152 692684044 747600604 891142913 776402441 273278378 365672150 828593576 472316841 223059460 705102806 948852863 228759117 980485311 184917873 63963458 943151207 927844000 813304078 483216789 520913916 325493071 784943639 720517044 870187346 77021287 504773807 463346493 187992894 318014658 763740073 437065737 656480442 974780872 941252752 588679364 294015816 521423927 126027929 36940732 464905859 233802511 314759941 32607534 921876832 214335933 304832772 95476730 198451207 353368061 145781899 503542213 74450040 374142750 904548073 234132861 687021404 23331167 729884922 753898416 20857525 627591451 768368380 514521285 634774544 729940278 699090688 681525356 14170670 465351054 242807998 485480235 800344000 495747727 512479393 685742328 510360298 277932185 672208983 489796994 488893013 207918342 772772144 35756808 236614604 890531699 267952144 954205588 265496033 486427998 192237537 985364758 982877147 935426007 976117798 264193296 236208464 324087038 919430078 868754470 2845717 835179800 889825529 223828495 634788453 322961780 452637341 134402998 898504493 995243416 298982542 832924763 937890277 666304978 725813559 240452866 805837641 709762168 900756647 110994272 787271926 304664831 965412885 86772474 837000066 601081574 958365887 350008836 147618785 482411236 597682773 113345685 133157205 714456631 441648091 895127565 143280940 55200889 862846959 538874593 65639526 791955511 233418133 839878211 272428330 945551776 918740330 946184274 742528295 852195728 117011033 617104000 794420336 529049541 634718236 772368257 817070450 360663101 172968144 691596061 38689103 376640908 507618875 629911681 726324409 959565378 647007105 684308674 924009929 938012431 367763267 456810637 946814203 447938171 538429603 622758430 475452120 670398409 744450246 796361444 83157844 840833474 279038096 893391019 544337027 256119744 517615639 201908756 669391698 322744781 101828910 689171890 279251511 342335602 374261577 383395032 659122203 343327375 770490438 808188046 692735388 894880617 132381340 596781167 2992931 796894599 156174267 452658606 477905922 478615852 283957813 199746043 564493895 84212441 237414353 478735897 197947848 667060376 208895346 330310290 846347163 497346822 34829386 81862028 556129925 664203814 52440857 294374350 639801874 160644840 476891367 398117432 760827965 615892491 271957739 376935390 454436438 696004142 122405238 923043591 302611266 374021268 407746148 596112273 172677883 848708112 493481873 422476936 969401536 552887321 704374053 341643074 757054389 21970922 375494399 275148248 875737771 313990016 459598173 891903518 615781785 846991731 181767182 386927847 222637551 885676360 931081514 426866737 244218861 790112823 229210991 725662836 564327728 380490372 240834143 758055275 167786544 305800870 960634749 632373464 696659311 748355155 883127931 422572431 143007136 6713576 668227146 465065512 657434936 879213510 333525639 441193537 820764939 559282213 422231045 596871390 758871280 513492797 101107524 780474592 262691888 266541044 962818384 937416350 556131288 316581784 999946345 358790945 186637275 453331111 214920324 108790674 81329857 8085210 483540286 112555260 614446247 239773315 475798337 461184064 693050428 84888914 528716555 880674648 434390905 959415844 949913547 380755572 782380692 308884706 800198298 838736567 868082495 638456717 948827990 148136054 586137706 863645832 156996507 326681441 113028092 407979463 566544153 54608968 565476007 915305236 103974360 398183178 323885565 627549518 907295313 802134604 665039300 809696743 728993949 702224417 903789634 234338362 286897641 757243271 546836192 916129142 493301754 362659733 786603731 292315391 411787606 140542197 368082492 620906314 487806859 316177700 384735325 678207124 793424995 776065965 790401855 463458516 335120374 801303038 299763330 410349759 430818404 714959885 785159242 775634114 330165709 410184434 460475382 375316307 21381198 400250168 495694113 111235927 754656000 711224557 734853080 247200737 116349911 482593659 790660881 904179555 795616885 581031608 339241923 141957155 197679377 517488783 278655522 719105823 90964574 644895309 955665446 388120927 649766939 431875677 414470891 311769142 361887600 25065248 377968513 981561857 284855006 930345394 407463 142986780 199642059 999827110 984427184 279408952 618972682 835534634 204533341 488823860 837324562 539994058 635615760 196964316 872025583 950210223 865211075 183841211 303129006 491331966 623814517 651877027 232420736 75598094 919958556 991783727 380310456 386230766 269960540 922873450 674373978 906373881 146092956 278636978 370219098 733004496 214447955 398723505 550419098 696361051 375466374 204564798 229625104 430590363 841423737 791077686 732079491 967284017 959014911 166909535 619208013 329079194 836053811 169467789 739295532 754399369 363726838 373503306 702037883 222274297 187277101 989123049 144360215 538633947 100703911 638737995 916825004 36287110 238773102 484664780 384473694 838991799 459576141 527991237 799115018 970282445 703672705 490292687 80155803 452444891 542142603 253852519 973849906 993795753 423571269 862277428 282850149 593680314 562103526 997115156 136412310 935273120 875509964 821294349 755159826 644975282 646079174 144123217 107189551 109115589 827822568 980035447 597209368 883901692 784288357 490934461 623786771 62923321 870730174 818831207 383305637 944948208 359422162 404931140 718932403 112601665 165992175 254105855 500014691 556736499 996359827 521809184 730496705 392482651 828852517 330926482 731806116 869888432 255767913 824786467 39144845 339789153 174998810 325540465 217400950 870895571 336645095 292833946 115525589 172682200 921085089 534491809 779266364 93710073 945851038 396475556 31252384 930409236 104309994 459549083 54238592 576511420 505108086 841673110 551995913 454741593 940216225 366315712 137409127 74533586 422225860 381746504 724746233 546666531 480540041 808102148 889954662 759896429 481413735 309272943 398109612 326186060 461165170 44081271 933885838 792321828 880691637 99251837 506696499 172391531 414444862 199433966 320844683 325830453 916965593 940238685 59771957 347659143 63449602 41482881 762185286 193246125 414407217 492623183 725272123 917459764 784346978 102737525 92112773 735094586 749999095 412219320 646336343 16436152 217649420 175373207 466203482 404264296 247671555 736211700 143290610 285561660 917002993 136718395 56243577 521451149 344062112 441035211 505620626 712168647 624230495 470283702 161934114 22015403 280891881 757287220 522055209 850052821 864568280 608329966 816771511 344881419 73358158 538511755 796264514 742612666 805545968 255262922 96838814 373047546 103027447 999061789 543486799 425247188 399061841 998416324 144940535 823160058 79945647 470439595 298694708 251846747 104101384 468723551 467113143 202869086 830867393 424668074 652516783 873809703 638404590 464642985 554888142 538468553 587835044 200252568 416200280 995345102 596297816 629386430 383596684 890861727 577802773 570161149 882836051 412086375 487815903 819041088 777160024 194955549 31452789 326726736 343129453 975555831 120498051 683484782 267388042 283412851 664894841 241698264 36627911 391699182 803969498 59200354 749065239 316548233 481898154 858820914 46533026 210868359 42597604 638207155 52105037 26252923 560084773 76290918 667455713 614291793 16628211 428596065 612940691 316199026 614568801 994267281 753393469 404908062 486063912 423176192 715617897 838051336 980990381 712389466 273378365 311340873 198438219 112405766 792445831 337152664 574686604 524357854 916355926 157562307 899849030 322370872 790518994 995999072 806796364 561869157 272255585 352733958 33393754 448337662 327804987 682293975 155439187 239969373 612315811 986761668 91975751 255586774 768341690 32491850 178073816 104858524 103593224 490362803 980388515 634375761 107383504 624057016 942351953 473367348 959687846 316571218 392975493 23147758 417926027 157983994 609234609 161496934 296339000 915797221 858776437 589795511 68827742 733622795 643123627 567187799 637556791 526399312 822766538 960337705 30194033 775169732 256845849 960643 346994158 57785206 348350767 38393561 498214331 836449954 224239468 457810057 271422945 381001983 583228132 491510282 71345429 868959652 160791798 898724914 778991031 98682494 139719381 160898656 344710863 39751806 175631739 860507519 868132602 651116711 727702060 327629676 375270538 319671285 461417240 96498672 66315115 397504096 190664224 80655968 839653537 905554415 131843218 460511183 581774726 412763968 659356097 137466001 213013371 778694747 143383928 690266034 604272645 638609143 820931333 764705165 54461124 755491558 676772540 942433579 883946954 80712373 503666607 307371273 102168338 488522685 102200575 656562330 677475313 490823294 836148396 762948655 829620256 20402180 117992294 555176517 671740 864774972 728368023 80748697 345916978 888531019 331549308 355058040 694849270 826953717 587500036 464398348 115809490 611005527 901680544 705564664 582809878 616987966 774594214 888486863 210439133 421264660 174039270 914446024 714594889 157584465 870279396 902794465 961320630 651505794 667010600 217451596 456950011 738701928 212612573 494254324 579459886 239791714 502627409 597209383 448950096 332090377 272876984 355194247 89577900 251672294 71940324 267672441 984545381 163925902 306569906 615256192 388347694 966224710 232262865 880135834 168402784 336066501 631555771 346313353 788237167 493053835 804843951 529305254 57133198 726179028 217593205 700599644 843945508 464462436 590821228 441957855 353309532 856721771 904830576 509204987 162299447 77433232 420574781 883882992 368645538 175060027 729549109 275914375 272188874 806829219 760459003 627268514 587491892 149230680 89842362 760639075 644611826 584697558 580359007 974821577 227708334 656369662 744491192 348736676 160860377 371610023 657871927 329492147 891586420 480323283 821667074 230475067 602031098 783492985 957619742 905265645 627536222 600529151 742582866 370018343 755767253 489463117 800480616 74011394 999129509 520525052 992529959 96128410 104551517 821268758 261682844 187585028 339127607 113290862 609953127 385591335 360648462 216539565 530227103 317530210 112238998 648773881 865964693 939767093 864734051 582632456 645582034 660513706 131671098 807630867 373803672 124969561 179213014 760268970 475505133 451096279 139354403 477272371 189027505 858743582 636943803 854547598 486596463 202694269 123519058 44876403 661479422 154957534 606765609 395033346 598305435 637375410 396780161 918453765 608306335 38101426 400857288 900041972 170083449 644020762 781932258 961425440 294542934 964408501 523494893 372659791 474721294 344006449 150353832 519609046 699439593 29813709 303277636 845380707 96814860 934365538 538702916 683822727 722691205 471606807 633364140 806632722 872928595 460139198 920919564 342239510 939229028 455169466 8786380 924087085 278343736 606231100 749792259 872500516 569990851 545042752 358675461 906949258 388395053 379453711 348755709 902298855 282182931 771092677 418685286 667575999 472617770 413006939 87216064 782005410 772421873 111770368 433239233 533139065 422053945 77969105 819262494 663554373 573222096 680070664 796164546 75385844 248364201 81176874 148894367 431728802 21357621 877737273 477797320 584451620 640460831 934199305 109695486 965913104 951895064 660677000 774317001 943555142 172464189 356674731 183790560 559191749 84363877 259295184 263654229 301323016 530985916 724256374 344296729 129700261 350671321 980699932 15535729 643331276 2215999 631260356 30692924 906038892 698902589 373957551 705135657 397458727 799995375 813596293 859287437 389064669 411998807 57250650 947816671 445530033 775120683 215871539 795694595 960001939 84696994 543000346 321743465 221501239 422884016 354766291 602199390 96587680 486870542 319781651 8261576 277752539 863466615 729153498 829231094 235317071 208009111 650744354 427926560 570033471 593027605 555856901 769632843 308652633 800167004 989333623 982008111 5844209 363833817 722339011 24452657 700094119 6786092 836278339 44102306 238784246 367686012 840219109 233385293 253604674 29909949 94993969 92211977 566738404 221487793 47387917 98584365 914399181 914672983 348924376 23716929 131837119 375803521 991734489 141747896 695019084 261603064 281854923 891910906 765774396 241161898 618536781 313728118 806991866 957494839 780750152 386714500 176544541 366597789 747355572 569004875 962244785 319178791 860730879 49330456 595239361 676450674 362056664 644585278 219880993 906210551 595750622 581982233 665954125 17160619 355018344 105191446 852835781 255098756 812136763 692685074 555466682 371027123 818029570 281187996 338891521 520341525 100220726 932764031 88316125 277330251 468806030 947711437 37946474 102335007 919666672 134280424 617119362 775677277 917099117 548800771 459044747 353567231 770449947 784756880 187612527 7020891 155323656 264817537 952747477 931343067 627873807 201283234 551743797 466045017 473466106 528491475 442056779 608232336 274159574 743190737 506067671 931302928 542058359 300319894 640738502 689560885 124672942 388334748 807000189 378403591 607263626 602961620 448128847 432319841 59719619 298020847 9601428 450288151 77631542 132279757 215123897 638716287 990508004 536014073 647375453 529771398 845930626 311573459 310528007 267294446 396174596 450825997 528856667 649382707 119479476 687239585 101194507 121066271 302847625 877239986 240398702 466303334 313791610 578184145 325870894 580724757 99872785 477449557 457422945 989990250 420437433 881803312 729475342 790117936 318443032 767143918 846291407 903310484 271384011 15614408 950915335 487183224 309904447 828018217 264794546 260752818 394284999 209208461 164661254 273609546 370742566 742327083 95082988 466851534 585958514 973531277 912374020 541679717 198094898 414629584 752532100 689750758 566574110 360263612 911309814 261635672 625936385 687740684 356213314 149724671 845810927 718729969 127920439 436639143 547803737 860364312 761934608 487700506 187836150 612411122 412217676 239571503 997725775 822889808 659357946 151954063 432813322 24670273 150079890 890225063 544399257 266711670 477682812 614045570 264561049 650145630 337166608 415382804 556874546 610957804 274463812 996143673 872249999 693685597 728696422 393244309 314420649 279696088 978163843 318604738 448756258 260026775 269783036 901319274 461573755 389982563 677866561 35222366 15917888 821893245 323550960 532166012 333717551 640606407 320986884 266534996 250164409 76382171 555101514 250188506 243625095 759317333 886347027 739916785 64897940 634397309 445887983 733796557 538505205 129087247 940898631 127035061 654664048 541731312 621444434 71397470 998996564 771942234 19800858 917402717 553845652 496519679 919380922 174807508 604208840 517767267 105739717 331400377 657498256 574955422 970259729 15424687 589306691 90055354 884193660 268478216 3782872 234980038 745498539 366714295 650999742 746212314 165842056 641569357 249284858 949816575 780952653 664599754 732780973 893762350 415886748 877072572 631114807 91463724 188469291 566997096 134197097 441490111 585589746 242127121 233227875 125498031 359278056 21333681 288489674 349730206 325533407 910021757 222103247 142396158 853451080 183045045 176193033 189077287 955331440 680020815 365601886 39386421 795313446 989861429 281855654 560592919 741723515 437114710 7347735 548957809 421858551 249818264 264879536 136365810 498390410 700842324 763213299 173644955 978071492 838841327 800059243 956074081 927577914 26539243 764983139 632290575 391548323 577191531 219461381 499911838 362680825 145722021 138411397 456322596 966730615 87016236 883670816 435028937 532752989 585914966 528687919 428170039 137652174 900220214 396265720 596034233 341312758 72746327 30168121 881309008 873897869 53324783 720044645 951427316 782898353 122760183 706578149 56943290 382545518 628318657 548290037 976676374 482380568 965619535 932016552 432777475 362349918 80222119 176318878 434804283 54915793 480942684 876649284 856888106 220487889 137515422 763612826 151297266 219038355 532624748 53795938 213552310 978982093 694693987 487749902 233911659 809878232 591125199 539613051 583762510 13890136 301590472 83714013 942484421 118835648 749918157 411522274 871072469 913546008 789027753 615913992 996185703 861662953 957932980 516580788 815003766 951182713 581869009 119058857 724518201 344892437 436391133 879350674 356514393 337457903 982126249 952022078 442298232 986768738 102042379 997771147 2654818 464428260 829192085 835220041 212803675 73269692 925277231 397148947 881070241 560312771 689136371 283109779 398480580 973340878 259491398 709513379 974742614 366449728 518312441 540836979 314477328 300734192 699170564 586897477 487204094 604972161 404573917 239528473 218295429 409008231 274455560 164382831 534057571 175681043 668648418 93251792 1523295 575076673 136110165 5360820 307827079 158048372 342972655 460991405 814428435 630630508 940185800 658163623 408308343 932858979 931945043 612672800 411543011 140408378 227998488 862688682 34166210 916872652 108897422 442817653 320083826 167841231 663571076 115804414 592356360 693801789 286446342 875304981 344965124 517552584 880856958 966943417 592188028 191498003 695058687 574002978 618372065 840098216 505887258 201552702 299345100 827817415 139904955 575334648 653318963 187591339 650747755 592290048 259382513 743413864 858660237 211117681 673877776 437722716 214991409 244727315 668270419 294769713 383499407 148249571 74319018 233154414 666625221 979725806 195144280 22031280 831040323 581712978 88657376 169789899 212084302 248542916 334830863 241734871 997948203 199610681 445508182 250268060 935333663 301454655 294018671 453680387 188376867 112140210 77232986 323940949 654723150 754837942 795810422 192089016 965587054 609342622 457796487 535904365 545384229 133861799 251712300 510395332 599950227 702818341 241131823 589925406 176665348 317540606 534559673 481172102 660093584 128342997 565381598 393061725 476479379 352933344 440757441 697949520 736941967 318271010 859204119 57834873 655084610 623574169 667360742 752472424 258510356 882661259 133002123 975548336 741839489 281136117 58938694 464209827 230149004 691119530 693378087 806550521 158005367 598402455 120777764 466214282 174106684 530892278 561261197 1438850 36767753 220053351 202713971 962201419 366538433 938680003 937629018 350463872 209819902 781489172 206178704 768404607 555416290 955200540 446351300 906897312 31016431 461063796 837463156 632779209 111486008 254461987 266532524 491532065 253884605 822023710 110626635 258104695 534436660 276858503 35710404 904302435 914049315 158379719 432000047 708708363 890330502 929032242 339826559 251992548 834868250 948566027 922070570 826257471 371529782 660206832 307983305 512872103 558937912 344311983 680791861 17776206 677939320 116278636 729696306 543174306 38666415 750199609 799936404 856097287 180031675 93223311 580823415 42102950 721994305 66291272 339076225 446376129 18456164 573349169 236843324 301108693 483282147 374205636 246006914 120518455 522625865 841941640 864298050 78832545 659113546 445156318 265614902 611986508 974633384 320288553 567614282 536509737 101571366 456253500 95203405 256375 113605985 114713786 703186995 79661757 522919143 639372710 988202020 172640493 602903470 913916086 507709620 149338455 157045982 937569642 457934619 985723247 23376802 527502669 361527603 714631224 52646952 168469938 464875373 389362243 392029038 370775592 400285294 348956970 800635071 116377815 612808890 104492427 575892929 195021809 670154566 590435412 507943888 837432313 497408260 656127458 497655558 998942616 254201945 52172534 791965250 628723490 200614486 608000123 21478080 268323224 117998890 868492394 934007887 147605696 451842464 599194677 704690140 294528189 817121260 386070717 839856597 6753007 857779603 923329631 820852461 704879434 997479190 97684408 805205321 514729721 352136701 377011428 380949194 352958598 469534664 564020278 110033880 823851414 57548608 447825547 469618790 343787652 942918981 283420210 830879072 1749255 131019149 843305834 833528234 755850499 582509260 153664168 724770462 552710346 728426747 71672994 114671595 449059839 830131605 908268108 694895491 194556201 219602040 257944333 474976484 391812160 116499499 321006426 725386832 151593205 870454355 11802389 85538567 394047180 661135927 202931753 290919208 794101870 576459566 588924654 496680618 933664097 38045526 842311634 21048132 686555001 960551538 132500962 87790307 529109309 361202090 868948280 121972047 906719672 19504684 166524112 419918869 617040915 523748888 387848821 401870528 380728389 964724061 275330835 803745151 783029943 769635994 121471780 717584262 455211877 367739298 135142911 902997673 136665963 850322423 454102464 400575632 370813897 18325641 199125069 139851905 512861139 129560568 354038764 620492730 913807846 947876420 234658009 804530843 601390360 251355428 300557074 968184619 50854680 481336880 587964283 540847 288394351 62749610 750629031 256856460 320075820 133963156 14518390 648230496 691452488 492900767 341599438 170142073 71425096 625556422 401471378 636840917 831076303 715501363 485387270 929628586 949736984 97393162 547156878 37394673 345545132 244310015 840640934 129625599 997502111 908177197 928653125 38408673 44021567 606747667 759937831 463240576 716011546 38696121 317038190 357398416 894973803 528836051 841988510 531932549 671781350 133467984 148741171 477827044 216357209 434960706 100769108 611301251 613270749 469512065 824167458 323619800 977919406 301849526 699487486 103629559 271903673 777472746 767766800 966163539 100304895 691021622 148429635 948054737 531117858 47673959 561740496 183774384 967764086 543639317 235323612 790323558 752361153 412475299 203887641 860741371 126200168 899291689 987265956 41975173 249796749 966865632 365133814 327533244 923056116 897375747 259808839 208552384 528197930 469411257 896254408 316739163 148285522 784577159 474054507 122367094 476838806 275782009 350321065 367809809 899532996 256473443 642327027 11970870 716136950 573928557 264691610 16502106 685469891 338393795 371031579 417638659 791893938 7474404 490428898 211824080 769513445 35430420 840422797 764246425 783416336 154336173 147023595 429433708 668812286 706687038 336365723 404675016 658242769 93210614 367360964 434632394 537894548 364862268 769850586 690179167 29524237 90252589 764778456 673264636 542988924 678966628 712039401 632775009 948630989 664302361 569134599 860084470 374700271 783943341 289599736 337668032 515673591 187938690 365588815 25146133 634504712 456041332 253250130 861112236 81458774 299255746 258835753 173120613 628552415 838604150 873438318 333753275 870325428 229643547 855758340 467203658 477456971 834245503 494323786 93410411 303699130 220845716 856241853 761241676 706337849 524506597 341664571 446365237 403238917 530691752 540223387 346018893 652802383 17336385 5017057 933625249 455213672 66395099 962574249 755696944 159511578 586662147 419935568 691036581 411531271 563857579 753732377 256729127 840027723 659064395 518494817 247271121 347673611 527756598 417336738 684139312 869959269 771115065 738092375 646704528 19436007 572141708 705563238 15850371 207134475 76653593 868633512 116027176 160059333 196121541 252983719 722014410 471230788 201803011 375842492 809516183 637775851 600590747 436612720 904605428 367045386 366061101 227609268 55249612 946860923 975843471 231035877 636439882 719603834 974808993 125031110 94608822 458573712 857081676 626661664 962559037 243112392 122087422 956457739 878504250 167491835 779006787 136208367 85694806 530379043 749619605 879829197 217348259 689137434 845870684 649536502 813459233 439036789 101036727 977670370 255402464 269204392 661287997 269041204 910639723 968749690 885915918 653343020 634219735 355307683 983169775 340939248 753802230 624737620 949740661 992678590 140983971 901128541 603673592 362859308 706400729 976857382 379413884 604323882 284932837 363429006 250710550 380650172 460077916 377770753 649047432 31036763 80996331 684487728 648282434 526456931 107743899 18839106 534985476 374225679 899065319 227304640 574998356 959005496 522894947 943688998 911239336 150742590 531234668 382151234 313166291 553373400 415991243 619044654 819995284 769976728 959504566 501672839 736012738 496344124 228669704 639016221 622869985 284285444 191564794 796702349 447272027 20548421 540705624 179688921 21867047 448709889 688887884 901156316 372998918 206611628 362064010 284206212 881666791 600880398 581941610 355318616 464529565 125885580 479298833 91618955 483799069 215168583 22968579 415600053 14125430 747625562 64425706 183956875 125985368 155078925 309680348 736197771 441578780 258298934 795467387 531206762 850213759 444338733 637251378 89587759 309712804 811458410 937021564 212283809 625705630 212760421 179461572 193260730 146486911 17608549 986424900 383077652 311189565 852735589 733309009 491450840 895633970 583760608 188184973 581826615 140226326 735493436 794400117 959204702 363932000 446262618 353195432 860324859 242934391 969639757 257754912 315271479 530497956 902362736 817410815 307040234 591851205 319501851 6070843 846696003 115476762 407926440 580894824 939075595 93106945 360970697 87335935 97524373 670353040 194176649 500335915 369236245 842989919 892669796 415564208 757063961 420093653 387942562 311096088 277297975 499699900 880105378 367964879 557622572 230947294 567623066 177992260 380548897 157076194 127854345 340924530 671574784 233089051 299676799 371921140 216417367 562976767 170086790 984683030 582647681 297641682 746973768 309191009 496709800 183066818 148011148 820662849 791709663 78094735 542711210 940925767 794737454 949378125 591454842 620230460 159053794 161486149 858545540 211590786 669546330 729021889 354369177 746706529 529843670 130588175 27773632 909892217 580485136 167253031 369427727 967220093 381083218 800778837 496725278 533883463 793120096 927668815 105607058 164605765 452870997 860247169 44341764 261321147 322524974 953440243 823833528 83685803 535514768 671272534 414030080 61746550 197061484 57191599 201276408 738358358 592687526 857587976 645760454 232546474 56780699 513313851 75461905 156063178 221504415 265104887 923807815 850539408 309956659 62048456 129780764 285547447 60974487 831209409 675019043 846931675 825387775 631267796 933999969 706404284 193819304 947367279 431643459 474321513 39323468 595907322 58358481 272321843 990633486 95655646 679570465 435022188 591642482 90128779 844243618 506651179 511771665 849579019 439068144 773969326 241294848 779092974 630722540 781181386 748426086 260398867 425073224 286064263 676113693 584049081 444500313 669528408 334489649 72345510 397260283 686871263 613827842 53029344 222491669 154454991 448385657 85052004 537669966 175482082 569444286 557215810 95240504 156292795 96271846 81936555 625026824 90449302 274201053 427711696 11234847 132116430 258922364 684838659 771568302 853864715 531296910 84612467 552295131 645253278 970187955 790010477 653700569 765020566 981788124 511402616 362832603 61660964 88966977 295340357 474716469 391071354 784183933 345857043 945075170 628251678 834389764 16474994 618450876 987111504 773972641 155035980 180980230 647858539 37149737 756807934 82548603 137685307 795174951 1003349 240536865 751165109 349207474 754037797 188099194 312168892 36586043 380749441 908658000 320054495 393967447 474642358 319542824 276407172 540197150 329625253 565798404 786726034 801509121 219284159 680783578 116234821 881234482 11118388 782464543 685444535 36320117 886039174 594486905 306445104 547925189 633034766 400631483 647004755 749840257 515320320 272337919 478061619 334374917 878797105 550403319 229234505 95815656 647889394 886383304 844844049 690321650 67722837 713881411 299057900 616932127 615400413 700553743 199973164 775069627 531408760 765284523 916015488 823319878 486526582 735114190 262973371 869976213 651168265 42410350 347196957 538058899 819867534 544469729 532037336 357337404 331302732 916086132 82204880 750264520 51515301 74615893 929663689 472752613 527947344 462874558 867886014 254143180 280783497 173418798 291577450 529758361 459110969 816040502 330208203 477448911 446277770 195703012 173865363 699005687 38377739 870333068 300327226 476551601 109577709 20308444 319131812 177446253 873803208 314374610 772886855 542271685 597804715 117133779 303448905 203527679 999789936 906610046 597175795 979446798 564964214 528500018 828382759 146311031 493558170 987903097 706855430 558389032 337347890 856374897 697705945 140072535 487496743 162470078 26632941 344044758 394280320 890485611 728068484 280136626 533909537 608989159 504165101 843974405 910294554 975668254 987563953 660851363 506995074 214687667 331718151 480723575 728994091 992527376 679716977 470729585 267035056 981586183 696219569 560514581 687466937 933894596 672595784 646551305 913567102 330515150 74265432 722361574 996815001 811596912 930076533 275327314 717522827 837118016 619164612 707172237 130275477 777178764 741128272 716182621 85729568 301292525 883131038 940282782 368036039 246183288 329618730 367209308 87301564 405612832 494627132 975299052 754616054 139101087 317815372 456133708 245792401 211784351 744943458 930504886 165502538 953935707 281441310 526528274 478268415 392329246 762105373 528614258 242840668 96966024 597475630 794743379 235472474 503505145 83298449 137520757 448792023 283839438 554195677 157489069 958850437 891374158 547620487 739659954 665308999 300685267 403394631 726341076 983419588 934505173 422017259 652390708 198652356 607530363 795199731 962982801 928630666 777461637 898651299 247212572 485450342 566641071 950423742 358645929 265367733 42808744 692329147 229669923 719050571 838097058 248828294 520191362 463434326 296692321 936781680 747894277 251929099 92028120 189938849 853755665 479284140 463855889 436908371 736962374 129081166 993500300 471201312 296890122 924479553 309039704 19968887 402946072 202673793 575245721 726959946 316933003 685609886 615572401 789258155 942679152 458798014 885035681 648999003 486890828 610877734 335461499 905341680 546516195 85600682 282261484 210572975 983173503 514386987 337293166 305318066 394619394 43480341 739586429 704977926 9805881 411789297 953611501 41849489 565708131 562708947 161577492 943113207 101890397 602894236 311919648 901545767 914952782 484271246 403504613 275065479 858128918 408175588 336456355 99261050 400960467 939483816 359105241 926617376 527289122 992993698 129924752 815745425 915418082 671213342 637928384 145149648 851790421 110862689 106859607 162370067 726792776 298775477 380497104 814643700 964057596 469501423 198582033 794523448 241540205 149424042 623778896 599555023 746140298 444193505 83897352 144179920 609906817 118565533 554931274 391615756 867357492 680285087 515763860 23743358 4168783 469658246 327528485 899486637 664097649 803360820 235251532 345148556 725021350 75930417 347150598 385654895 735362280 701534201 351903060 659013146 468284114 788849201 314755750 120154731 152548436 660093911 255136576 348755178 148379897 44487479 996361527 510079660 381631384 962672614 605976469 949214992 581146984 519730162 818752553 579233138 624357194 987915378 339426956 718587096 252730829 128867687 561627388 982053948 4633042 186989854 454711615 902346915 359964362 572881968 60542716 130220864 793476675 161009045 794658127 627309156 481610318 564062834 622115100 55873016 353992759 411616662 449329696 663621059 377500730 73881820 263000439 131893995 333790636 661375724 574619895 642248826 469299624 331569100 705156374 478873026 600263007 258138835 647322533 265151936 17923773 44988500 901691115 141220392 805303447 895893954 431564428 34489697 682148727 185815650 521821682 103144260 249575184 710969272 500609797 811030869 157885663 57176530 788945245 252977285 674369215 322444504 889403528 323176245 583914227 420323189 118110376 13672387 457095631 708137231 275789602 968850582 524066549 575806540 19154354 603750522 971688393 560754037 793614723 340920948 939463448 752986557 1122463 115461798 413592952 472441838 986746256 7393860 773569911 520643314 359872456 216539766 177076499 893349421 947087357 2876546 785333784 967341152 158841625 350137156 955693133 256659498 949655280 666088627 791512965 80521934 5397704 796788018 478439291 558159487 186758443 530068529 934968522 596041333 896002458 790411357 228011338 223419371 337539677 208369459 456980276 301151947 319495872 764364849 450849806 962868040 789535604 978115962 703948072 70033411 937565865 142063993 70981437 967203707 921456910 31452205 141945091 810030994 980237014 711028462 387760122 889708718 101572003 448689709 475155769 71466176 864503110 101339903 35929791 645916839 517971943 793615700 63397246 229531586 705708116 328393469 969531666 656889995 765182172 882305603 70225342 687605865 254935951 59542790 861352561 339181597 149347476 79162351 422920381 965179258 111016973 288027955 245967291 7604594 296444811 247342908 649861323 229911712 492911438 769194292 79674822 671200282 636994720 191908845 814975308 302291823 316801544 900352786 255063185 681925049 218222737 702864975 510824678 978801809 587495084 325609057 561869431 801162637 781449421 704474786 702733723 279770537 780071167 271284553 64338834 337413977 643005557 311179290 588767992 120772982 536651206 833292720 166619856 240133466 207671976 25754658 204802116 65277980 838927780 551633067 210745211 132566276 398815456 499845823 665570790 595358894 409604316 717242029 534924446 967855437 742547230 346530042 67472745 642919192 115807814 302228920 868597916 317872921 739225702 918736458 518515287 884924916 526790029 912504155 130263717 994858328 311417413 367422634 981316533 814409 285576941 763961901 79882009 341763867 887138031 414348460 375770695 616392551 380359178 284678327 489204427 522405664 888320920 122957449 53900247 201437252 916661524 28031620 433350380 969446666 963647907 166225232 705062689 319962847 435686024 50008282 250034846 974961059 988672241 594611781 784569597 657779512 464095210 687287804 576563731 82641206 685948969 640450642 754666218 251268395 569303321 800252337 56279859 548209254 313814648 941486000 714825587 656613123 609071964 902591089 798949613 793011214 484696055 5717449 216863684 517140140 602658398 228186691 897080491 41589931 778363806 393778004 508582794 764901788 153401493 288926201 483229990 832548132 438707508 437493025 697889565 804931544 493450350 300904387 357930617 404663947 837782077 359684845 849096452 653072460 594422831 108408796 814484733 757951033 289236366 506631457 670877267 182815423 389553528 955949651 745087646 439108761 711385185 833959600 949245290 738962267 105063927 426895122 490800138 172346427 1371689 809590369 88503366 238624734 222414751 651650759 874702882 313748475 36830490 41843376 538389278 397883198 685437869 343041896 618721363 568134434 710397506 156440809 856709256 799764334 904217095 180116189 346101006 402316405 984800939 553247883 866824584 925635662 911419666 640450900 171187883 569326099 443083748 17602563 139772518 901307108 259462944 902636573 237179207 270102147 480618882 843152117 641763370 878686104 382231238 260856218 803039344 700608274 309483334 638643038 493331778 547311145 605291484 994324722 201924334 457905673 939951063 899966485 461416193 326242291 124490250 670496847 155846404 519694902 48749082 83688318 641649235 818535578 810934384 213240842 822733662 104196101 847801141 591273702 293845296 247155820 845867144 967386306 880400894 482939351 79173615 928204124 643200560 414044597 860227928 298587290 518611739 716993382 395467268 714633958 570593095 342705319 559563125 742299336 204942563 819263066 920035296 577012493 425294304 948103183 839725128 370410307 143844158 468887128 344607013 422496501 595632758 392258027 684351657 145222868 660856654 749349231 891607369 432307592 372283128 401578755 979842206 73985894 255467913 964172796 871927281 803990218 307604931 539994115 811086533 166270883 386027 742586413 400830205 950792325 594531198 418302118 761521785 278028286 336971047 47440150 869085318 924636803 842163045 672670539 907491902 94814488 226348315 730423246 575622013 183919437 701570436 346853717 576896123 506897091 627440035 912325128 951951558 796976407 976749359 487880155 335839392 100672398 32848831 550034234 243476381 943748301 126585735 556683955 536575091 475805965 453783915 968887332 564424305 896089218 47915619 934784211 321545205 25313339 746216683 677968808 489836015 242867930 465033407 210701379 229718323 681371925 48979286 109876205 436659758 340928149 136620031 99788498 462090430 69802210 913240954 867474174 927830277 105802832 766906791 778688296 165879405 436231679 578068126 202836014 824677478 326138244 372941371 148187235 512094872 438303572 411138270 748524528 943151951 981445094 475521640 963447092 316405342 202483420 989192756 900443309 473383087 598426854 849624294 267675020 330205667 725685295 60040897 997644144 130747821 763049791 98315981 154155833 570318068 454721875 102781937 868184366 278936422 460065337 839268306 967146726 281763491 376200009 108682671 310678065 128598681 645395917 267116785 468493787 547623118 537079074 923162689 28066788 951937926 347645008 245412616 359994061 724828709 907712613 776920450 712996435 201895228 746429225 129140072 839900675 792647446 879878350 456155880 199331530 858883908 8171813 220568517 938277813 953375364 805626466 84636201 439061929 941935506 23803259 960558035 255404960 100852022 802083116 666918831 825316930 574985124 491146493 176581500 415450425 71965202 638696889 151672681 410923544 27974965 450638526 703619052 408375997 710826012 910496101 973220451 676548078 208050954 174497763 605497727 948137911 309835338 493099309 701367255 569956750 656717509 525993070 651923803 707953364 99247464 736338200 375724876 698218161 830431689 718355089 721837096 879022575 373964898 870216805 213146191 424884738 118839057 861310822 929519737 921315107 630425067 693506952 949430453 563473699 472846136 686704819 921903133 344341494 49425643 488330145 214747093 208634733 880918444 326640909 124028827 835732903 847462905 218877113 768113069 662476510 193396146 999727705 673448196 325936365 392610786 433355410 303222221 391310019 121983080 606329188 283597267 42835705 760615438 55059317 12484151 343723709 326701490 843110747 196894823 819243019 138227508 453658945 201295498 323528443 162909058 773255450 665637623 611191073 881024307 543282602 91768625 733514536 530142328 98208768 500707000 169463711 181361609 541013153 382275449 355644350 920190496 254236517 23850134 974747326 764060966 795210897 520741846 979781751 273517793 168092635 957183542 575399857 711386140 208180475 867116225 498016102 232012597 551110809 28882650 223215271 493303584 897960300 403170184 509920241 447050857 744238717 805153165 450872638 589071069 228087553 358154338 975088924 273465055 668092791 529094574 898399426 499848086 510970698 247500509 784653306 780303100 104698624 792626945 905537501 392709577 121803009 795352627 673275986 552769242 127957093 50626677 861976108 785350107 18130597 401996690 846001074 834622809 842244068 930432819 290384057 137315703 97636920 960084872 758994834 57321483 135661098 782942437 510330635 655203323 329296646 895846951 161605948 237731115 821946336 992343070 503873939 958767935 736611355 661644117 890911487 218466353 51613031 813594636 984447903 823143948 33862016 973221104 662554245 487974878 444487333 560420541 360287224 681689268 218661812 608689379 878272103 826000299 910967453 809156088 647125417 917730017 449495517 37615690 913770766 917761727 586283680 127553716 340032426 921732819 765599714 467509933 974988061 424275639 762676599 638656109 752888477 158999848 117241469 728645785 182852182 977613888 746488835 500417723 356008753 50029521 835186476 792080259 108772789 821460533 54395613 433954977 139006942 16332247 35473869 282071051 47289229 789375277 14536055 789117230 607164883 640366846 623067757 607427371 506580195 867554312 274102796 425004033 694930131 731910860 22621960 633131959 700128372 622779492 735659526 603928519 97334370 345611467 35674470 627726911 533158033 989786875 564654257 595857368 247651756 806416688 717253341 354872905 533741910 396842989 469412450 298672383 204573271 901152509 762158923 539461872 741506897 551051013 237497012 691687835 96935275 842595243 977671334 662398380 68810338 290671533 535405177 653869133 48339923 722579724 273795177 269488601 966931671 355787330 683999736 797510124 945791096 283168814 995488966 12240892 652050308 172832162 312738209 616192418 483733116 974579389 802145749 441987126 588475423 696966547 77056970 389047965 251069878 449603356 627057136 637110770 859621979 848890153 634522449 995090629 973521331 337612805 670644056 931741935 141539024 890959790 487893825 559768048 351087377 580794104 662876266 640982884 563878735 497717055 50048146 728021402 932771872 558234809 146234354 642254186 890107442 177773397 837277923 614776182 953311376 996416213 817389913 838973240 942787149 571484057 43924473 311990887 943382786 766106834 340161070 270921247 288461807 952577389 384333280 499733749 199397573 952843139 746903976 654898801 964943319 290803747 220625423 703890201 127464450 431604234 942476416 640331325 935535427 233375468 93578190 367086683 112276083 32544205 235066382 714787761 151036012 243232503 140130092 105996774 896013225 952305746 904224753 646847574 489095348 61410758 793965670 751498636 917357749 48403497 640908902 43468818 107806174 741504736 374523131 290051009 893640851 323012352 115320548 862908334 916038737 829827481 500775573 198912361 417284844 211306033 617434209 669016459 476839344 506763575 609895080 535271967 923781618 579743196 699644950 850988120 510287568 330204284 617642508 325097597 37017510 595033532 866746234 714065131 646655777 883111547 466634227 608917408 810093449 79966969 984997705 594887340 287798647 232553807 499296826 746717364 854040518 793113816 89718967 809262185 997998823 883772343 882747596 859708407 111190733 998129911 434653114 534374776 440316421 119810718 594410625 420201949 710866665 640059786 810403882 104873365 357181578 972699048 632962066 589112838 53789689 875339447 185665199 872903868 158448017 421157239 627368500 603975505 130357871 115655768 411781406 117210615 874239235 417692724 789386290 372480067 861092230 686970828 924789549 394982625 166913943 532621339 266425398 366957091 130374889 276620758 728974515 938832365 519274228 385581334 821597654 626421332 188936891 793113258 783248923 813380535 519625638 497253327 915147458 789784852 764721445 841370525 500492384 835948494 801884736 207701310 981481810 827040839 864660829 850435392 738347540 695075073 187918783 651273531 374587517 853559 662321533 809345930 461031752 78269905 840184270 865339894 573233740 807044157 325773250 163774621 878584771 552528863 346796605 850198141 42825698 629887582 444776275 891273347 770184536 367906030 441311591 815438395 626936494 824689254 188771322 104993618 207811678 307140883 366670758 173513732 607145864 267317696 125640520 795297739 40302609 537788912 618253966 198946130 355423310 717748401 139703714 874688375 141370843 378586047 241179508 838463640 125630737 5136807 477160140 708154517 80813890 803452516 758523026 303647821 534945209 179425073 129153080 987775090 830137447 284995279 83006242 745207664 256427557 527388614 447276735 249682008 592766449 778524703 80254529 512698929 487936533 723504215 759822600 815689446 411625594 235334409 302433785 61900156 543193464 95290500 116235188 187866150 343243395 279781025 339186211 857215184 25322279 992711927 969181038 112647014 464662650 982269139 686437138 747011398 423058519 214076341 778627447 12819290 671109763 577804584 73923330 723695372 923142952 991284483 315293750 883211490 177829484 312530849 723740852 187404303 587375331 721816798 223069165 840324746 133496385 913147230 220326358 847661712 87196998 995139332 75753115 190825793 79093347 926330710 817700411 995825557 440554165 334588643 87576781 221607683 211238872 42828234 586538015 663580927 235641301 114431840 480903252 853562904 708093987 876312068 870211137 811717939 968720139 277517100 784747945 578450433 509057392 796693689 164780048 898680179 724305635 783036147 895948553 967305111 388433250 22102123 741039911 687827291 37558964 519376511 496389561 774556468 518348181 436795422 452681708 333990776 939782883 352338011 354458750 499224366 165516083 672300762 548407540 885871487 238990260 758482711 795909693 723442343 386663965 927450028 458136051 983114129 426264596 809535249 971429836 541887100 116071286 43808511 107738309 289856570 51099689 214764596 31888580 363549149 302695490 721456233 603066701 495721091 772891672 906534236 977083490 365352897 398301291 475953238 488000021 38132824 499686209 939631070 673950216 886665894 620275581 72803668 46209405 756840838 32021096 916679677 429212091 824486035 141662291 343924990 816210527 254874903 513082066 439851128 421190666 915187779 620348356 720228792 466394992 745486944 624607499 443144759 255627269 83383628 430897011 864230049 853034266 194738142 394271876 727819238 382470940 638405123 44122256 292464096 553462206 141851246 640126720 808576238 71930175 391781788 551835742 630587631 947383363 863746828 498068549 406586779 802934093 81321035 915717453 584656466 962834339 184851929 884510185 259374879 599882115 525449588 662240367 641921616 459083958 350660609 451744230 691542485 855271869 291420753 191628253 947757068 58030164 64403740 498515018 480791780 750386286 733346619 600582460 878877587 798990876 860642918 331472243 446588797 805246425 721212220 582590417 140559067 90254586 675245921 109178701 94971175 865009217 939129232 572013038 565817016 775010434 651728402 463438709 145540395 952768297 706027700 45156405 667579600 723268658 929205560 221176144 731275317 715577851 468005385 822145179 972581950 869545939 672813936 610744647 488464974 997514068 450478 277322309 248747139 504638867 78300228 767390771 288579155 496319449 155128662 955295587 500861989 176734150 853060297 351571418 480656374 314503936 148675348 176071157 611164351 508176224 404686478 828137675 961898263 663912336 464802008 946021606 466391863 644205767 971950111 895642630 139624823 810254290 367333524 798193788 254374258 54614160 974646698 243243688 892873233 284785620 405076117 559746524 444919779 887906267 533568137 374568242 705632328 708795339 995762490 896980973 232418914 147617300 896853607 182583500 646628317 779322156 996271866 834216774 780894418 600345793 130944726 526112359 940209820 718734830 165583400 387516945 746093970 594063996 106985573 285550842 173871337 959289000 637793108 556091612 307074783 794776216 604946271 90228774 843255397 311882639 159690984 341032085 258961054 826866586 520716268 521834138 222737857 795629816 325785678 826063094 446481803 208983823 110419214 399472081 401719434 217524786 897307454 100827134 50186419 353694134 90369497 366376445 354196253 16201869 164786940 649126764 688404422 492273835 176592361 161106448 59581 308379300 540996242 613440331 748804045 500245013 392101858 206456583 477042517 792715809 441338073 953689417 253002355 526832080 642920070 113803394 661342131 267692851 276126489 758627308 824655624 409689090 776678344 181563079 177407777 35458752 818434866 883209916 705712434 759281640 641134404 684040503 816966371 434261608 115714414 571343179 872001079 659070283 180117263 543912994 784809765 148198362 303640440 64370697 534415778 661343890 300620533 238095757 821607644 496363598 253985180 348501649 273453527 967210593 411751797 104725291 899765132 373379793 351575547 44212378 658642060 39619977 335626176 33461352 200046126 123306150 925918112 283903925 414211517 907821561 673737274 215095599 487103172 34092628 615595223 142320234 139177584 304092247 743101656 916633565 809360561 603738180 445976382 869349658 755636408 569360906 850352429 692870134 942378534 15678688 227236942 102286455 383345344 242608306 447728447 188274002 345776276 940302205 956759812 812637337 725770335 478493788 919187264 486503420 49934567 505416635 927693798 752926748 570155378 824541782 550727997 336290534 53596334 377214556 408849956 949702920 703333014 402518926 295702034 896056716 265989464 401122839 631670370 152106288 465910570 801410189 455480551 375555537 125670654 752425788 463093484 51549931 926063136 698122944 856557929 660060632 331030328 209723939 59695607 870029105 659593967 581676074 228757755 124681724 363493473 118294748 265397422 896966070 751887902 71198864 953732934 224646709 934325403 150252869 597749647 362383798 300498241 787804400 388720353 804466807 934787917 558440076 472555542 911584892 229324698 563727363 113816381 972501043 250752533 500849221 52509667 69650310 884618920 15167129 30079531 286245554 441895349 554957702 246302658 109991309 127209452 299387900 302359190 985024273 688167508 700092380 610435385 660289952 203450717 693972023 93941742 377874456 158611894 283776430 749803068 11172826 112455442 301855629 431238653 764633445 577478751 6653391 13738835 793432237 447451419 471532037 586641554 640437895 455397616 544105533 503542916 369357563 294384810 843330756 818247125 577805404 846550104 607058678 787250607 984624613 925132495 519760368 623131159 675147385 811256410 166445125 214240380 331231342 971974282 361993342 775048672 516561230 57365080 816911376 262312146 118335779 951033135 931055745 201552050 996472989 807831199 124043462 989936044 894828101 592759912 266679195 248077477 308758999 872757500 575382780 184599949 664328618 763123097 280365376 320229116 553049750 669556734 982474566 251783340 436203093 282101743 721538293 321768328 551247635 120311324 635365116 629934253 911504344 804672151 152501095 309264551 106790836 469523716 71830990 740841037 158913536 892222295 253400655 835246484 145119224 734150537 150705938 738074590 944466651 340672399 445527466 459348812 249819866 358886116 361498450 369897221 558370363 566850427 73527139 828921527 204015083 424698049 536781400 211708589 138100975 828063021 154223471 915047013 194907279 314374896 400695077 788413212 367439460 128293260 758836294 160378976 272462698 385729772 475756399 227032196 564348234 618210376 975377784 192784808 860994544 359321568 237951437 804581207 359399973 285679381 980957318 249515210 597875619 309235096 12556470 875589062 897986125 34844483 988707843 255771499 927026452 868300586 775562212 374168333 65162703 581883549 174382416 999764614 871401080 709387708 35930654 104840374 448435603 844451012 692170670 180721625 123778187 559264216 449649105 740789748 196578149 555151271 512930473 61986255 605256977 972255241 631314855 710612061 678015607 382710297 143543 668530593 754118197 362872227 813093767 178042046 602320798 433574301 739555765 657145569 924933414 917339731 542718156 671783490 822947098 380975092 616727246 438663215 616219624 683580164 204551745 276868749 544062189 725928869 122644677 356721883 144189043 97969355 987586260 932267726 670339650 260828266 1616758 451188720 951476838 948160799 357855115 625987700 368809482 486813365 624581857 511340481 314304244 330096898 520164010 99780825 258126423 18661311 471044911 340647257 154467172 374138774 964660174 976139722 967021677 601146566 840481542 860056795 944804591 109014281 213818657 28851648 314894025 12450319 321529436 473165553 149065345 880291841 80067525 267512153 105014623 503402468 817985765 124171239 826917542 905019694 214238851 202335775 950706397 116099347 643220193 169055057 134988127 657870951 328225477 987274325 848689791 384427496 22127149 811613154 205299589 747744641 553335147 853219401 792175445 178511195 956079136 313069347 738955974 819078835 628437398 252400715 3606400 180612706 389598495 434041975 552579018 367176307 112101974 879110263 573400568 873998881 762419232 800351629 404769281 298335345 190405658 241839560 226249400 228084266 898925015 710061161 661782561 370296198 884621863 895551702 862000879 29003755 580901485 589121108 495019649 912144725 422821369 198682626 888231805 287608694 931085238 432468541 30511935 185295574 99088791 74008123 755989026 558096864 669526616 461468186 61479079 206601809 292243886 788129889 73250046 208425694 825488807 304731371 885941069 176489378 139442837 761178 477549326 806619518 243261341 593510229 367869875 318963581 720013804 936297990 18661457 640627406 447557722 377048497 865799225 94789208 682157983 104565227 56557964 192432703 306261499 257958780 462331930 194379160 86769712 72216689 492839500 730040007 929475209 171551389 610017017 257880509 525919540 958510249 139855828 779456736 53271879 110353296 588374890 371374925 200753827 291152165 67230248 189358077 913830941 266721264 644588411 291763522 944169539 29393733 451148430 32186459 992344106 308966894 960170731 105122577 774976778 551890373 338636971 464321519 143186867 193173930 443729479 928819095 681557765 822940760 791970347 374252188 109552455 119371230 339396732 225129744 93716150 756033961 617260892 981376853 517993368 386986919 460506071 993987327 325102184 217907933 583255752 343947781 673410054 522561975 486967187 524086957 367527296 285115735 429705610 624884161 487026003 121852600 627232667 104778751 19432782 517484169 570885604 289477140 398254868 177275349 593259090 599018734 157475757 866176319 25889346 253530295 771376361 964615792 626941421 605085091 572756523 811883504 81163835 256931639 384541701 660442527 445913935 365646917 272421479 243705568 371728248 513935176 348293618 479925493 404323295 918357067 20387137 73549448 931159715 803570930 664995755 36871294 311857378 578987008 704391412 373774626 593594277 324403141 176161434 342826532 40397697 657825477 317503254 934202170 27224277 451401005 806989791 966972504 520281465 495789410 949666133 789179698 883558269 18157791 554692939 600161770 996208296 165786209 726312804 589121756 687582542 764864931 78524241 858082574 472751758 895183688 619512264 65832341 404979784 865204151 163507396 464673199 984833078 595334774 205950031 752433723 313933468 291613346 477206453 692884922 265414295 328143946 887347765 352334554 242699467 226738494 185952009 172104249 32476920 568761848 403034129 330708309 87564049 289119296 514829698 265607491 340054135 536397638 398058283 903317926 409390325 654955867 16505281 490645100 116100368 887037508 345151906 918262729 969847282 398558780 520872056 304864853 158441862 432608457 846511490 965763945 949082665 513682397 405553007 679099827 471889802 884696921 929696077 556799062 332246640 186736467 970717537 872187159 448808858 948353009 622192669 851182501 452998218 632346235 194317447 738027825 365466569 608016851 778732451 736473774 160849897 797794398 947707552 899388305 255007025 799573758 319968701 551432384 57413333 625493505 478700412 776038366 253830506 609878676 495527903 876198538 56886151 538783793 242264344 389124542 608201355 30025539 862875976 180515442 922221243 536984942 435930320 874835954 820174249 357154443 412994634 978743225 267926278 129314828 447716292 257238378 208128945 330220930 501510965 749519708 830521918 895530934 645081848 95229989 791119385 405697005 336047727 830068903 343655978 563756446 272007476 542583555 372842101 533975943 343950224 496296115 9417708 800814093 391282186 130851663 939190170 875355238 45577589 601039582 247429865 401564752 195211736 583447483 898105354 73519120 383444284 890215840 283990449 922648741 100034050 615622255 13408754 823338987 253560133 896203473 262186379 403655711 725499238 923801875 871292655 918575207 922850524 965426722 849596459 333939370 439434900 911985886 398782120 245459934 118498445 2423102 44239127 429152302 143618389 623018409 381634613 320374383 142921869 199840125 989218985 111427622 542457704 360317189 591846428 349477477 511356985 371105273 174088220 20179578 488309846 147906347 148570803 645445460 774298270 547326213 374999631 668199523 529735905 95521763 421550557 203459745 139261765 172747149 822945366 317684572 156772906 827734145 352621718 267366734 362169460 273122652 513227624 872719070 294841525 705569025 709879790 890859464 272117949 788587302 123158165 971502503 887509133 552543914 218847396 613987847 59833558 277354647 409046894 940885576 814188258 830948937 928070084 918340866 50792902 859803132 660629698 550413080 172709618 255232032 663128007 153367614 742807180 529261995 218651393 485006567 572051959 668598567 382221269 7835403 709233006 682405422 339712783 307658809 215006478 613288750 231143571 624242786 505388662 189554452 105173026 324891373 216193442 210250002 503711598 320675077 856651714 888761675 100057607 990052954 657350469 883148142 438170300 468795205 807575902 310944443 949787201 426501907 35791088 119560897 275193954 306530479 255283597 819633946 734814334 435374273 356715725 828474357 66043880 82838467 450995425 716223316 289308448 822678072 769709425 566922776 453755822 734004438 865833377 527734650 960233110 905630526 657604892 829896822 834732077 526475730 820780472 650804616 608296257 122086417 770666984 921670258 657146578 475667011 757285577 142544646 786509625 673914185 191723765 241936062 215429573 217322169 663370272 208939478 499154160 188596861 733058483 102188198 87190344 285188564 194360606 920366759 966212153 697492643 804847293 471790201 880390274 786308717 354158456 650538003 755169095 991135903 947334920 142092719 761606002 609425136 872977621 110021371 817928842 32436587 895839210 911613498 208964309 964311252 657071266 673308554 136834103 96047811 402426591 437583585 119265217 107813637 833119115 623323395 322048802 88605235 119658040 22396091 145619228 386099647 681748159 774252112 676318197 107608211 275897152 637296800 609293836 641847002 492205283 951636096 257889117 506437695 578678988 346417936 757640745 12530555 332289583 74763394 88056526 484830876 958055039 838536021 208739275 318994765 443653515 371790787 493601703 622215209 240560570 481407742 629481963 252072457 480134085 692649593 44979914 23647492 93660311 671076582 141581001 951663574 113478247 335155312 645451190 173777894 326392317 215755383 688813343 640178933 602781141 127800922 425571048 209909081 282684091 247287929 970385812 761450972 36715805 31525667 470492783 929221521 733639784 167320082 812937678 66154310 58695870 489941314 771745796 733418685 916286690 552201864 868015501 989115032 977113647 85726108 136638764 525506090 272405182 628388639 650050859 986375166 301738340 956445683 777272664 326541131 454581682 780362817 630332497 463119660 22778105 883446189 119340497 591238196 556917245 300184739 809217311 375662507 85506 322638105 618261486 696073274 382698996 679785454 994323598 614488988 594077675 346677558 442252002 683045531 141372894 516795013 249338100 714864122 151548005 563903411 702322228 552161911 579531649 386648329 347485363 33110566 308756819 445595291 361093365 517320979 251467878 215405220 397778889 555306230 91334004 19501592 193399706 344578014 706259301 918039095 930478947 229279378 336183823 220003774 470413349 24210345 864867633 712475612 938066105 83232325 823145599 102918868 432673724 474229530 700740470 519018842 219192873 734772336 300523988 732718982 379654668 863504330 851600655 522370497 471851747 605414975 40616365 859257113 726674163 647330386 88001514 574497542 317027670 607968623 20713826 329088043 541962709 930510385 54481003 517723613 579539414 847846845 822479631 995806555 659420347 301390398 111099639 467348744 611568970 952507003 266002693 875344746 25243463 778650997 516199875 200473977 156683695 13007171 357036896 3493989 971773257 88907868 357440842 959353116 991604012 826278074 515296810 837130399 500978278 107264430 972409108 321514081 620448405 37782049 661753029 734995641 613906227 523736520 247645308 972740676 526836967 886128379 93531893 662903539 916915436 973397761 668203169 831961371 182442837 757052568 86974315 460505164 96112408 748989392 516655501 194182108 741872676 507815556 758836622 753015761 732961316 486725502 683118701 258316312 854104342 584543047 903305591 511177367 355666764 635623434 132215888 364086628 921692531 684368422 877583641 361674681 508626048 70497628 638475249 324610710 607352680 983371911 677170684 580824996 722815379 571597149 923237058 957380265 997115422 849535805 722814779 534651426 467946954 546138222 742792839 97966480 563647934 618020395 668305567 204329137 484546444 686607286 425362045 312666178 183314396 374072215 784107373 538898441 354893512 802862895 788827940 712297916 447636416 530552656 525948400 873034610 774525283 950487095 422759890 65792515 522134807 190732714 240214503 715625176 535489342 983693947 923368541 813512138 934588987 512799710 784050344 465331483 692906827 467516119 475517473 365948983 864467846 779145776 884532149 90460368 437398099 657471252 430788731 438830226 596794320 469397099 900577578 684449323 419181424 235515538 680628957 891250005 195826432 790141925 165139462 413421588 106024017 406510861 526278549 23955422 243295045 557914917 839377810 989943393 43871706 438083418 999982539 850513497 95892489 227843189 806353742 41272547 177410418 17275964 387201590 938117430 53761878 640567145 80894933 680814583 994851633 209443008 493218980 7659362 498974836 214927809 611678982 376073944 336847650 865984551 910223966 940421071 133075110 5582093 804135974 729513349 824945667 206960009 136053219 378616688 480785029 200512431 854035694 765858909 938731756 918863461 293476393 427004222 817831886 417445271 191828065 912777367 298624234 817394204 869747913 530322297 708476244 705465828 867120618 315472114 2804709 717443075 195191804 552503165 928235566 719474122 313573069 569245834 937181220 629273063 260824702 976840097 222592213 93838658 686495300 862942907 322045490 857426468 810846450 987362610 984977640 914564955 137134273 700189960 303903766 377693846 237154277 762670089 264971674 927094057 21891924 695600991 121716844 779173595 2983270 365764241 895533581 661601431 773251166 301335363 281469182 382307918 916056239 765979934 488245317 33270548 319775156 982309488 963963287 875678333 893404050 950989489 580850484 983377554 471082541 546833078 710157918 769296757 54137291 520895155 350851483 662997467 466366980 787815003 546540367 362200063 860309683 354901649 209927490 786977445 246805992 565427718 573389318 477069130 752647857 242507899 905416989 872193314 830929793 424159830 422586824 350106128 754772648 736125725 252846283 937868692 121058199 13595791 838984174 873434994 667075561 580337212 943321345 21040014 339377099 309909298 156999527 334158200 532200493 124839608 970472717 436301124 825458294 172914015 902481830 367928877 193670844 149772576 255119148 931527725 117109985 169026278 864946114 111152937 509204159 126100307 23528435 225445946 636763889 674869498 145637043 89785687 673869425 862073688 721826981 898953629 481354579 877927995 530127187 81564164 859000328 680168165 333743695 705543652 190306312 559434606 745894056 853476139 565009911 495082779 905474662 572565496 157601628 645797635 341891408 80922951 332289250 582146570 287460644 709813600 997406540 401253656 504463123 996907989 541740459 463242996 699620358 987746510 907053062 352325040 132592938 384833467 975288826 895484822 368460776 663588606 593559050 752417555 911564071 593231265 318352857 988383583 738712835 371075878 882398417 632683929 307647688 186862598 892208152 627323794 626593508 626294641 779884507 981937029 764392551 273456625 344486173 795568937 119342456 990065383 682232313 825685232 501496902 222022954 776213657 896400696 300440488 3192977 507186811 612592878 719456964 749962925 935391840 299227948 129773044 952156521 575964270 964730425 771292930 176008447 788595888 807864339 510356658 82787460 259860122 453472400 10208748 607485849 719642717 949308600 855458801 244618093 899215202 771245352 726898414 393558376 932362609 596152444 503578155 628312607 413893013 388213065 135946166 794718314 293685885 606792122 212251985 215443553 758317700 146867323 434766326 926460425 795813383 627653898 962396292 686451430 334937079 254576992 149419173 624589155 538599431 53687089 286136954 720084246 327129611 365937108 756498758 7652668 852090219 854357282 43133122 102993150 949742901 102144027 585138871 291655190 540001775 919509372 427408439 949827757 762969922 651184536 715255494 35829122 273621387 304206882 125108846 364481864 656760056 192742472 461621064 334123896 58822366 909982663 360882973 2330872 862081784 893202559 556934200 654551748 647109643 514011299 771943026 505707713 818394762 228816127 702234871 287229390 147347905 846885318 997683519 460872077 82003869 124600111 25434549 347880039 372405607 685157026 422824127 176231978 499108573 53236309 68354336 911196199 853045015 734005312 491368579 653580013 550754780 107528282 410312033 489749023 478743778 376186074 885746276 857157920 120409192 287896181 542250006 705000624 790785042 992950882 607448312 489736369 926336616 145932 144502126 366521524 838436582 791296205 851412413 422137911 271968559 808544410 345246231 84062874 171514156 163802303 991985178 752820293 257619476 954362467 825753958 127697120 411448208 662624111 232595147 771958506 65185410 595267157 800583962 157085615 175727457 423759444 360046186 406965967 347204316 974460810 418129148 290075149 379525641 830883720 228720822 602531260 509320954 12108682 998438616 415891576 648523029 595593707 462887878 69075736 40241885 972796940 901380539 863173641 92824376 193935711 738949055 97460826 120701602 656166769 964179963 795996623 640304745 217138202 982316474 128558040 76341818 966520787 251323737 59418922 816057849 799616447 85885844 153427871 49725297 554166490 198422707 821969984 933569661 358909264 412787341 844318359 967616266 535296905 307434420 815176889 795846430 283021020 84282499 81296732 267448691 651965279 585885474 256570508 724995902 302096556 825382886 217108866 61368891 392575538 661580090 419177279 188731880 553378032 815254923 89624872 105529542 876956607 491426792 596897585 727459965 285162221 157458512 446181512 892414936 855359116 941128886 323907674 274294321 508654647 577135161 524044046 777172455 551683073 27918607 58997450 41051308 874827210 42422596 645751606 429754584 104437668 693530414 325934764 509776714 987654000 355126774 408398444 800228882 876360511 619951543 659222594 837436761 261343090 531706847 572171802 35529839 855108803 671383543 882615018 610665130 944277999 364921486 399265849 666474256 527304650 797589075 617934855 260109089 49159013 795686478 18997591 647347555 793671748 109173364 838548773 822277522 439315566 56995873 617431780 981975317 749248564 894124747 303157451 986565075 406510787 835220218 836511225 509419811 765450502 347954605 445681990 155490946 566482249 497575552 154323419 742648962 862813474 841490732 606649024 837158883 843653802 172399253 625035131 733132619 114625719 109687910 933563123 347338578 50074741 619804188 791066324 334170197 639091597 726933686 344372480 758871065 602838754 942344510 711889974 546192157 243311236 218485712 347850462 913876643 149892839 195372430 197444235 228152301 167032384 391495980 148806870 451672408 257020151 135555333 915440399 156077372 338867895 848494846 973629733 503926766 910101732 813179071 89281934 610479509 337327838 390836119 324875183 113749438 66453853 845365196 198419675 615132337 638053278 932596618 39144313 486951586 343484328 840541414 14779832 840936634 661016980 353433423 111602356 511180750 286165781 15234888 135171119 570813895 702500270 169184529 962514520 774387361 393960870 738126760 231722875 508373266 741130880 738121336 289838596 392742112 605894533 347952179 762607492 708584645 965512265 117422651 478545753 721228099 979287705 792441559 88343330 448643887 938984476 798707058 309017748 495270086 311284495 967766747 21865581 891532844 961950519 202225762 211692542 792050901 410462587 675922979 385829005 193288207 777753873 712984822 472220670 948872076 898385052 129108331 498953450 936791057 907765446 184718333 675723403 106126828 340254205 130014237 143866578 302641689 375152126 243121143 105729785 601473438 909038530 889123152 679139374 671960473 33692692 636998613 11919793 372997149 667477873 148475545 56430913 632488058 456024172 702450299 65595670 604434508 899798338 647554202 996235975 297742336 101662582 494308710 139893981 896300683 909318257 969734000 606158749 759958512 521772362 156472824 977340305 968564141 688517830 646379860 229563241 245067005 801552067 53664959 590071921 336814358 217991623 597520300 267926432 788098685 875361938 467806419 668986985 752024896 648347139 163728222 818939090 528434486 363187959 809956215 538337518 276054824 597987133 562815291 551823742 715135798 268248939 842665789 195001330 410085631 880213049 890761721 216774017 427850505 230472921 169174691 425807217 88417325 74986436 16708074 37179081 414976186 118644837 253970685 734789942 540588823 632151135 159649117 144254356 928019845 449344948 687739436 485324588 779445335 725321932 405819217 680718989 602413787 799995039 749736323 826371793 519032443 247563649 854803414 474830665 763202157 301072039 61829197 62273452 456203451 522016765 847728735 360547119 388473340 230421238 502497411 646808916 440935229 387225864 103592783 683120425 914409203 166941226 301837054 259048658 20950501 536662356 560609625 332130057 805817140 195112425 492192210 802187750 128386090 725533321 335677480 635892720 199592429 363110174 333960730 561878478 657358345 50584225 711838635 492302835 640948152 546217806 379026937 742852567 855684275 316324877 696652265 785800291 468523689 446197982 497347519 96997366 533777380 321967967 631847595 793336278 678789303 438983280 137018055 657923473 264584305 675893710 428361737 646129567 941889589 892411931 417757080 916589211 189470364 78000748 101726346 871143217 84369220 899505546 970945257 875649574 464249026 739516224 473619478 829901628 127962771 70963202 322072161 916674311 369529602 805199939 519176605 88119102 761176481 316130415 320206484 718546913 425306837 347500497 347775931 128885800 796486910 471376589 439480611 102194845 141065897 118810953 307665898 192559744 7398282 815630792 923174808 866342321 945135031 426911538 685698589 556156876 229973958 766630556 232412133 117677118 282437499 944308256 103110915 945710366 740974627 446085849 85390449 553974037 677701721 982747873 133824502 471502825 426228010 243119448 529679249 578895237 97386111 595251540 170486491 852507527 478513013 798986869 111928968 190177405 307019950 279856790 283208235 28375927 224062088 913977485 341349178 26460351 335673160 353962102 906085141 467618331 181792974 664174167 546049889 830595849 120068498 176531635 868878895 856412844 224344502 220927389 920309051 587366135 259515079 576181730 457436457 110412780 999866119 709153355 188745817 512935257 57762406 654980517 343137801 857486220 440268824 882277526 175684851 702934602 399203834 95683322 797159205 131056233 789013938 374251387 541642249 925038753 266123020 126668070 392166862 269159664 198706623 105413203 366234784 125541705 34485359 178646800 472709734 317354840 695368191 735958493 278225514 212080446 206980517 852437779 207471017 813475085 332820686 619812731 727441271 848438371 992127612 507080490 511127111 90736825 885021162 718597927 641170241 676271797 558106227 191422879 774636773 103829638 618542125 619381023 25179749 808517746 562504340 258394066 391922354 179195692 484942674 514162774 555465943 557788530 83518227 225568776 799156852 181464274 538322588 327547092 303608718 140025480 941928159 282374319 74923178 62938889 67868090 750084594 583487229 988914779 244669762 541161067 773854064 320963875 479412973 349124990 471525300 936377413 711143419 258448141 461785800 465547417 958766278 83758786 427061659 840926706 590842010 833800906 560620504 873598629 161976857 252879738 300228084 588554409 189362709 888905085 440952072 247367936 563888763 267958394 177899722 332932350 196006296 688834891 88601051 626923473 384480661 788852590 207395916 335974206 710904046 733107090 118410030 429847979 81741309 259899568 157263364 995916730 813413543 107342729 318480267 18664377 241156121 74423071 313728475 930432556 141689761 449165374 781925125 333940288 304417705 844882826 895654024 794650445 123812269 788484331 551000193 189806576 971385285 989914053 835005328 551031759 792913907 700084914 301455119 247726207 502553871 942606271 690738417 575162181 811379319 520618570 97744732 771733312 517553579 539048031 707335207 920009838 668322866 975424791 649387585 626735617 856143593 261600977 419872922 994787272 868876956 342023558 643975671 476871533 867519807 187707328 11623470 984231412 217108927 144778678 171270618 499736640 832134475 38435663 116335175 6723397 455022518 85633691 588832479 773796795 744485531 517298533 881317532 918581191 140319318 290185152 249669306 891134214 579325832 253518774 690586602 583743423 787510543 713274840 817931322 992791260 760244518 32063489 848795630 716655139 209615418 570224838 624411851 91037590 585561653 900737217 802599310 176620236 465554826 107291375 121475322 949268070 388691427 743583458 904057174 290222090 712442949 313148040 190947352 95856169 354735089 704849022 955913604 953228541 343150952 472170916 331218472 200294325 707270464 604213171 891967756 721648270 145593850 869566558 540522548 564684682 742456596 253518609 862848205 718301214 85828069 52256096 54875555 506668796 426184164 339601451 711380166 27178321 253332644 5614949 555639817 273200989 299566034 4382608 229700332 165211044 150598112 218315473 439109080 144972633 806592650 133505554 41383449 680019015 763869952 537531772 302130684 406444006 373079498 907310893 253179426 523927349 584142851 475051550 343076512 571091549 277461436 781887108 937188560 487048269 750704670 956814576 433389711 977253193 14958577 925678119 898127911 682612683 419388589 792559903 186225361 187933126 824868411 519405524 467665343 986500928 914971724 828948894 5513907 698715993 651728577 789003582 916535298 795756720 726015790 401898310 664220027 689464717 575366884 708131755 510751249 39155364 582670526 583713115 745824069 148346423 258569793 928874157 197079093 468737562 224640646 715826941 542854137 113166813 573697994 35176522 929733470 407072023 942046968 867695722 485688556 923254863 664351197 750223250 830891198 5634659 948669703 432126774 641485968 63295994 169122591 79640809 198569752 275043135 89745325 644070919 90058920 692955326 585909539 694427702 261112897 619191363 568732267 666322238 419176450 404713160 195404312 986648483 352315932 361035571 793587107 468014976 418869559 20292701 950066577 676906176 663755538 281835699 786163461 290265476 482549718 678583610 237207082 754319016 356517725 629391785 971012927 757645339 701618989 306547378 983662923 816992633 855538634 272531767 153941748 175376028 802043045 435864957 808509809 771645052 336145231 118390565 867004892 245680194 871533850 892638975 690257097 68115951 84702065 27133281 680084230 897679105 390145561 387997733 260463680 269091486 405461219 341532314 299762454 413604125 937635229 280128668 647248226 228427314 591249239 37155783 956836448 925667679 181267014 750608198 903113103 685947866 986242967 36832894 955991794 740402046 259346190 62308930 617868403 574977497 67327957 428119089 861233736 475093429 285699678 47555733 983631454 304506128 51885100 888587252 12625257 629909625 398164733 946635712 547533804 979988285 362994520 188763771 674394991 635794041 693804807 851320638 84948701 842771043 231865156 159061095 957614332 45024072 407581041 677914938 583407676 787725625 816053050 528613580 723108449 94025847 558136852 858557407 752168151 843513949 872331773 205019783 569673555 264677988 591119370 773388817 380270572 204677532 868571843 466367402 825862251 296908254 608730528 638716622 880581172 742433680 909000231 970717582 671623737 161777393 873987416 759931282 734918083 684048724 572335668 809007976 582983229 806732501 525901087 760389963 243418120 939177867 606258051 204473105 703330392 373461366 581995295 750415392 329048312 258854051 731656281 375266504 450139498 319078812 16480827 220330263 267049447 170807377 53862928 926408534 301403431 879625771 13744483 365184407 973588310 620463909 857560451 674372691 24873662 143456800 106779459 279577279 60729498 625899811 163227235 857154560 905656729 906512496 27709061 196385184 167682637 854887795 15548668 71857940 743809200 393433775 453974291 259829869 18587121 649614295 82140404 925645642 703077023 510823399 71430676 634987966 682007057 773152819 827052477 346684475 414894230 509009431 307016140 174167741 574960955 210204050 599253335 641742155 910127935 434888132 191847935 238532056 635529714 829196662 612079784 910992506 614216902 756409417 876852000 844503482 351723574 3293555 611717361 555106156 2127301 473362000 740482072 558860477 494825572 579683350 888397693 752443380 460282815 624590945 291930617 759190133 211262456 746486120 676329922 532994362 24685163 548547661 989881590 319332839 134481513 390991754 446112672 568938508 835144215 653843647 740359722 150275109 733747307 689317549 492395924 109955205 584705910 181327292 306755919 74938249 662168244 860555372 125475580 576247786 189283893 83998621 619598720 412086560 3977065 288083090 995971846 374170367 342343101 263444697 314475980 456606901 809698617 792832352 951266654 607729478 282862827 702103585 437122530 166880144 899887110 733092952 774507599 60765689 641837313 495519863 313243314 785905642 180226058 18438233 957904024 857790815 616319405 672343336 491491455 545687732 22638561 885511418 350592332 286798216 636042838 962051359 254012246 176250955 981632656 863584908 26188105 716252145 793444644 793427817 699689625 293885429 734827105 213950379 989229302 886660789 456317528 434503800 387907656 758095627 228469594 847187104 672018826 402354727 573052223 24034596 956107842 391526955 823889379 658042273 723311426 921233729 864038282 160284819 262316009 205680135 639259527 707814288 450732708 934712329 290196106 333998414 505561676 627653663 843920321 827406357 98072424 558083825 147649167 794311554 632418058 36061438 793476504 551091519 971320426 167808990 529756115 792652421 926131147 825005922 770385330 79256414 739224936 826890812 387133000 403652505 258919124 130373279 873262407 144787178 689891108 547509776 909970018 274050013 668584201 78112677 875868847 800333478 382297245 233922947 104589120 245740079 290314006 537980716 567924950 854503801 950068281 637071920 572584845 196515765 15645580 430029248 322908114 193971998 613218545 494007200 996307872 901895592 61961350 376552440 165284830 996180398 512793831 251586086 505703405 102999713 307512973 395855577 87978886 116710030 43666060 75930307 61976610 581344836 718245534 219689592 305750920 574611860 353989076 184161454 132510492 100921286 466863172 201836670 166951891 691104137 802950623 14123132 898773058 100397631 714060520 208596801 728746768 276009948 965095885 126018776 527507220 427038524 446365128 182105027 93520593 749124497 64928985 784849252 720749754 272256765 395018234 580987093 325938857 280684137 435525369 742816901 503007529 713641008 673352532 867913180 46550288 542325510 942006894 944728915 151111358 427398262 714808594 630738770 838282754 117713645 812386936 885999877 568928368 218582060 111329611 907192026 988974803 962180398 716511229 900247647 692000380 287896262 134800469 766050471 639415575 343508381 59916178 163319564 329090052 193215700 491371601 169283570 85742602 256745107 234913471 802937218 264953423 60451277 203063722 579447241 479023442 571088540 391506498 341181748 509070099 59552505 846530268 199320951 359459979 605324062 183647411 485946554 847401033 990018061 291191392 810956186 281032210 505315779 344241819 418527326 216513328 268448680 114966798 377491955 475929328 453673478 334241289 709005951 740951625 76563504 327026774 77126403 995724109 631199617 156178625 686398372 774999819 23192827 813370036 159460531 906539689 259819125 633760590 77541119 479276915 475097699 409696036 470955520 381728259 179638604 590100362 846731263 812516242 270486907 215541035 506402416 249293994 145545104 773401468 235865352 359042251 41583566 105578468 962120556 130891523 528091184 227535978 171846859 575832029 55280431 129627129 999055371 590605706 44098824 209662431 756588932 485933536 339225467 869163987 286547870 967177760 752550814 497939721 709224563 712214909 41613462 172765540 309088226 75070217 743770496 87235081 203378487 516980961 961779509 710093393 986051033 963179183 716250038 680454086 229218115 213903888 990222470 635960621 963123315 49266496 632314186 369765666 864005721 817565913 932849583 162966217 709323132 764231179 913126293 809657343 22393497 168580993 522790639 515261515 67886028 168349844 319871876 82537655 685417167 265920844 656445020 75443989 666015998 176748945 918358324 81657502 98330642 153384056 847694701 750720820 687566090 351712115 981405193 127391498 493123293 12091599 974967144 779940774 286230044 847402162 528589266 364872766 968858270 263555255 321496832 349012694 1130748 90244451 696753616 32588101 510800506 132452409 804560762 638732790 308400984 58681324 62079342 969805762 571050287 564680602 232132799 283501268 167019787 49956518 554771304 461439038 537040794 742755511 813667895 790989661 127368145 402090247 208378500 200362474 367980167 375871914 603035644 971644333 421037622 940417478 403778879 694290690 598511664 562159166 192401913 703382312 150425835 465907843 605893159 491925833 376219039 249252854 238539090 861661121 843516238 304901013 265763381 217534868 672651996 873715052 293507268 877741914 441632577 346764510 375641694 534860285 851460712 934630529 245229108 397118622 72419430 500431405 581195814 981553718 811498995 738563689 555090805 260493887 105490182 570652157 384619786 17984543 228464605 867575318 358635990 8022847 605304227 548590214 952273465 212471911 270305225 63981308 414692523 892276996 603265428 277236725 584565887 903453073 534624584 968496632 210673263 869494772 64644369 578256995 809448590 354981532 348625917 480633522 212495123 60695589 148510214 995600033 853283239 263503362 733412034 580021565 279718405 390858091 238469699 779395979 810362626 509653752 486195371 625895218 221974195 840002861 360047785 488860011 809879817 808968085 873634045 981041148 477733217 143821267 826019151 232502189 413093539 822056081 408089242 76682535 786725104 664416424 195010074 724710654 990411318 53436483 113804750 975555166 147827993 885962282 532673307 997092205 821140955 582161326 592910811 221589086 957399030 97686089 609588386 554289173 643305744 578593237 887569847 476199254 250512572 959135269 438110711 846568161 930450279 119683802 258898652 453141780 295810149 216888062 867248230 965549473 228921941 405381813 162357551 775748356 246722413 637805156 854811699 832301303 391422017 958039355 958139120 318857767 662208368 53992936 55287886 471891966 538406013 74042387 559739471 944419438 111287069 82007348 612217617 183207348 658411791 61132598 31686169 627429796 915159343 884679633 723786791 196355944 900937229 71588153 181710764 917285733 136318391 777784158 112615626 394409309 309902696 445675704 149128436 166122439 332333683 550914513 357778835 550161571 882723187 884513627 594608067 357637470 560026466 931443639 406728050 241873017 491097646 83414443 27524738 990674110 921887067 725342842 677720645 602614846 383487978 764047221 4806153 658233592 5094670 135308720 90462666 490373584 234972067 245114886 199654837 452985117 65139215 654970246 305016280 949991302 815636112 402451564 792155309 834635179 359426237 425359610 948024831 171076876 924505454 131763144 623130379 851150536 231178428 663569075 552246654 519823472 789883466 656555671 445315350 986042343 840186408 876400507 441776377 8052584 872720829 398466247 104113378 887411184 61678167 944430153 91790450 559490410 571570230 29931149 106032510 77861020 174309046 796906723 692291683 920759138 521570124 656990281 288119435 164128268 199265559 37839602 43178370 536861022 233861585 876215308 354318006 166655989 388170482 901005511 651662251 148047470 487129080 601970383 113097219 583332694 959317528 639333060 704606615 97536104 368679706 537221484 629987751 232123429 779813318 666863209 330556377 858466878 38188753 375346827 407627322 24641897 634137475 921217695 454171718 186296731 310383941 482767256 842817000 471700815 778549092 672726888 910286286 463889224 273086367 239405000 394825986 158298412 604586988 75785173 542267279 169312396 309435287 456604283 217062595 864868564 583010061 201807645 492065873 100125309 816906022 422997900 623454152 696861643 566537757 225924601 278491150 141230158 671418021 883164685 247642294 859886531 431189743 781884484 365665554 492587187 784992276 436962713 753506312 396609264 935907464 807169298 3654274 772457258 144119511 209320495 815315963 828054446 996536533 572619651 211033389 661775922 756603928 846548474 384371197 363884894 794318619 164285173 390564957 326667267 816009376 785796701 830429305 42201514 982243897 253280052 181910730 844014276 665318008 894314742 549465105 507752696 21784983 380413330 904120493 68201807 221735627 138592304 184251232 333191931 463305824 626949696 816387671 467786375 387917238 836468101 296520815 43965273 450594769 818548946 885797384 211882498 647535539 391032014 829186840 393912249 803580595 149066830 829628641 486635719 35507678 228656683 54342613 3437180 709602499 35882017 186273485 935090644 166595094 564962818 828170765 28381435 675093050 277042377 354329706 964004231 714151922 892239024 14240758 917621555 81169777 584874946 832043026 86201841 942321725 994966727 232052258 179057746 574588116 700755128 588840218 823258487 698816570 606137590 815899778 608833961 288686425 16174905 47423076 919430209 30620790 21831271 259006836 376101027 579507444 843548867 667563909 52798398 812497202 419538694 448117178 69337779 718204266 267026376 635992442 231399594 386138535 541855670 544601589 850349816 864475746 173221889 469261104 181709636 241742604 908886035 566637867 534000601 41396973 242686773 671094867 256241466 204621908 840091885 967434180 920154585 229813971 751897527 41399651 935351484 474258037 770800305 581680374 123618600 24755146 237052176 901358427 226337888 770424795 537739397 641147479 684323543 264865832 546515453 454544923 898439761 937138739 271323249 355971168 408597003 567691762 969827334 846190065 850286607 724132538 654719724 316634998 187780636 661411007 240938827 694253656 886468780 476936860 148622533 96049986 504691922 209802036 708611252 161239968 282012828 160855037 196446488 253358247 335417455 484331949 838929922 615688464 705587317 220007120 213979691 380493 655227209 97009503 828529687 678184831 128782249 930074748 779399791 222217548 20825593 327633257 991596025 117126456 946683370 495675595 979628880 472984990 642057270 326399748 473698797 244487272 122172326 712488225 477885208 367063557 288774320 847187799 650561427 974985829 584768308 878667224 715347595 216010529 775371116 768678853 218996965 896661965 37641524 770710530 476539960 118786539 341062570 474119574 60939234 737193247 380331971 104740715 678970440 768561197 337807724 133329402 390919030 887903837 670498519 439060269 144370694 972301753 253498622 945970295 101992213 724988941 442565098 580742745 503839517 350026257 741977864 743339670 875108198 687103769 350482606 893136886 620247241 235687604 665241138 275515866 58831268 336011192 917335522 704086028 186390565 87352185 332273265 635421449 543263943 376560760 401355408 907072189 458710044 237132528 792892157 745357219 961419158 522785475 529047987 897759469 298570704 675885526 156773846 474059958 327085544 782223945 449054727 395885948 75110399 475023971 482112671 665773990 339611695 532253111 871069995 609377235 28216857 512094360 222823574 122751735 473751040 797596344 382571998 112353209 714603436 321882483 658237753 492945122 420941015 704804108 344231289 860687292 602522265 975009786 860594558 364835774 419098170 924382074 509507481 733905777 889866953 923783543 699946966 348966453 562110349 578238798 685458987 550257392 453259983 934133519 4238023 298565610 251982993 765183047 626260793 806446356 967605524 394445130 930543393 609229139 674569180 882637596 959325667 19390127 75218973 664401112 332328907 10710250 614966515 790004907 391342313 66389388 407204766 3847879 650065917 27110888 883162703 693588306 233760381 386756357 296995620 830309822 997129522 589642496 290967932 66123349 469388835 601433968 252965862 283982143 867380745 761831567 595298503 415112822 262747771 704061792 25754903 11304936 414396267 975244975 910233574 138397232 860681725 779760381 60156391 214479172 406586187 670704062 256589792 853985945 86635103 384839594 716805245 777706319 409574155 920196481 610319300 550364048 157383103 178570027 271749772 92509264 776298992 22606745 737594921 593986471 727327072 41708259 616144679 876071715 313574041 788915822 830860392 504918021 221329395 558736929 924639779 186257141 356263805 980984242 580632837 73627959 762421207 431486331 694474880 75458135 575507253 29069335 752158750 992649378 626953091 702419697 145640035 455096411 977617013 984697306 459503935 912120012 161824905 620121424 211249093 112174598 11446831 786005586 409863065 13423915 63943292 541375248 656773096 847071218 115892806 858723556 314963944 571237189 314098160 480056285 294553836 154858786 693428804 752098212 543292754 747006605 260625494 526503768 408829630 786153820 342296739 128556751 166604457 739948145 449396217 349715074 876411508 546135153 830440209 926038619 441757697 791462556 594231454 23924268 743085944 232430097 85594831 323759181 750956727 33822048 837106934 346702529 366664852 86860340 693245117 922292173 777544760 893709804 963811317 601665262 577058167 439989565 267872479 148824602 635300837 79997388 443122217 953843890 227792828 786360329 425153528 804050697 218657216 832194407 137259936 14434217 175557141 445787055 10761347 516989129 574092353 616563872 920694631 473598085 288287513 999043756 737303590 554211773 399262731 795963414 121844311 78500138 804339938 541430011 726923551 235294136 81579608 3557021 296570376 462068191 765511697 633496259 53393285 612374216 33768642 410557544 91490851 392815667 864710886 826650839 784693260 27983233 688981129 466919444 354385394 693120885 725936273 581723525 335917504 472935214 903487573 144324137 961930170 454705263 46177831 440363303 239793551 273162446 705310717 369629800 168349678 718691032 624573685 982917835 849809719 43475731 991328643 763590009 63020785 894989693 959610406 106761128 30376573 284287755 476285938 417355116 351922842 347960576 647121673 705039982 878302545 8784954 295357856 806475126 834474348 829615674 656565740 44606534 640156830 250404946 857648191 452621740 627167174 224237072 972336462 151250707 36144696 947749414 720624390 60596668 954760912 926198669 478382036 652035779 649739538 757574575 878371562 890745170 616726286 284827017 802076004 671410304 375912771 429550528 394923088 206046910 943035969 690966243 431822163 316816054 207567289 922158117 219616629 971387862 499471771 841762200 713858301 413470943 425474141 612509214 550647193 842502296 935000814 950828816 524097225 62311662 396567862 779089746 532693976 920015649 291359802 16881579 917476677 746762136 636963198 604163138 486247489 742345019 77223627 572182480 754222468 167506641 455286643 43025642 594748187 97297467 85601649 464013855 823446763 86197269 638546035 287544044 120322451 986949642 243287839 866913552 508242125 323566779 713259330 48334312 932255887 394632256 568182390 11428810 311221185 135174358 55722986 968184917 515494635 319040101 886324765 692654656 154149345 722362071 956808584 653789711 600449448 978724233 493490230 821395152 4202521 390675247 239920127 208185241 383160636 904407842 843606202 461209433 426078002 953333807 196718101 336082242 699303395 97555866 105411183 621061894 692653688 509779510 759369438 246938896 60648058 299986771 144916314 140115267 391133074 379084713 392122988 737034902 534406800 874493664 909871441 432847577 245381734 237280808 253681257 133233589 357389632 462378587 835386001 868105591 901518910 370043294 981617079 744191594 801736790 605226135 955961672 426887331 381392625 369902183 194722446 401813368 58752960 385353260 144138314 457165656 87264841 323583501 656048133 752155696 195485530 349259923 210162675 333222801 887809692 845376085 292349298 912292232 910225557 164701193 750626488 94658322 678443589 897856486 67522208 755754968 164769242 536948818 654844770 572162240 731845743 236692191 445614940 802270344 240319343 109304471 773365398 790409506 818201818 248080770 86301907 852276367 854119214 509838138 523597432 843601677 691834833 146694635 499318175 286825828 699762669 905135270 560124494 817716509 958030810 24310496 928495477 401572901 818005258 500579067 472088049 276008767 734666474 425059899 927219631 679251406 923833874 748734443 283027290 242832991 790027113 821935431 121750729 471701975 118250231 571656089 43406740 597625528 82006866 540271426 189065632 664404706 780379587 218496378 167982180 155408443 820220354 590271500 147798606 570851444 935100819 574473347 769394055 339669019 601931787 464828569 987601138 216151085 375437025 244662784 217793425 977242420 378251203 653324870 724505104 697764253 903209965 790758944 278957941 79905608 387941543 840761491 717293491 90664731 631486687 49358762 514688648 494335803 216880059 931531838 76027385 976978345 193756928 851008954 929088963 68717241 634055913 579563045 714812033 993379749 9423860 480719681 204387154 862854892 424002840 303074124 180171078 895434478 814350672 559170258 57140603 279499092 40430832 442620379 752612896 253047993 10303664 889833311 66929990 33073845 490751674 814549569 236620065 361903349 419411693 832025115 372821734 337033127 677413842 743188753 285809320 503952039 143429513 362328929 915449915 114318355 160272874 915056556 112597221 363259140 239944380 755607115 870425487 851045088 865165968 159080558 552551726 893097108 773489350 512723103 738932502 8067770 179999599 766869811 430579762 783128419 29478611 288114944 823656509 733564778 565734910 706105948 986336677 632647187 9399642 71826449 861810907 432915983 531052566 959114013 204623004 48264382 759197853 442963303 333699395 906694733 202443845 683969897 852086121 845262880 551367174 667309506 158863592 585265978 497688526 945098405 408232722 510860981 289444751 218730354 429177237 78069951 482954335 295853122 634103534 502328267 317702927 34961820 486539297 943956665 163872186 863376421 219520763 50169365 316038377 551800093 936635232 648795421 690315847 650269000 823369002 76362725 672795594 870467597 231072905 656698057 754913293 611224409 315060271 322977775 921414378 873159705 437573518 257819772 480580220 117532363 578056895 847719656 121158413 718016966 543379058 319961284 295826662 753901197 987383511 115411866 948174323 881529179 311011164 235956654 363132895 61727530 194049219 401618573 857863200 625554294 881636659 798227853 598105403 70728656 929111927 754424155 551669852 755030224 402097519 260935806 90288021 461754319 808105246 348086797 483575064 420110415 773781315 80228956 903166252 856377536 429752748 841927689 43728418 990383097 362985483 535943241 308854934 782489050 383060233 641989216 241867767 216613340 732507565 335282605 495553782 125824299 140695887 104500104 367884636 670459027 28860866 181546106 212081455 212073846 165508717 801912995 192038934 73346580 484691984 681909720 891695608 189262127 842119334 934652214 725319721 378001326 333591748 10933972 638557853 261346123 985737990 488330476 705628319 407658185 44381541 546150759 421911234 558693301 306373763 168473204 694311196 670653087 908070861 736743871 806381025 530389297 907336600 595138164 289008734 385902592 731360541 335934741 240212918 96393278 875891633 66399828 690800051 401476669 390760715 865103653 19382991 903121827 340554146 123738283 759524590 228296424 393925704 321058441 180355503 465551559 195426861 381850496 467009527 854408611 186913925 579919931 861872151 376416107 90524090 935885772 166611226 408020889 262336477 668441539 24464581 829455740 461581890 804216463 986245338 381794859 216979374 195236675 415456062 259155206 434314434 278693475 114174632 754123673 547374077 731739234 574012257 855105279 604022031 366397386 694410724 666534996 912340238 528928805 143124281 639600609 768600307 167798054 792884627 508281446 380952055 722576747 779128654 102702272 644284877 151396828 522198732 725973697 445464829 400022178 286928702 404426850 943586362 744632988 305274558 698201067 373895597 502791542 365220047 561562562 21863026 988855061 717629458 654031077 646355853 926389481 266858657 415486394 693156077 105598453 43863237 788235173 528571173 659475330 716902376 33916636 112594685 82800510 867417669 955231956 272496923 791438846 434851609 463549505 362670070 889056409 944096592 578280147 121269563 897683373 586133156 161721295 448338746 311361126 976939342 680473556 816632379 933266146 175973887 668976900 222435899 945352608 98254717 884882048 753211027 490838775 477069130 461473651 802872278 322791972 974942694 167394791 3455501 723200503 5546430 134918924 198987936 549565406 898134113 784123336 421195547 804577346 25521095 996053550 171155144 857706826 44332924 867843188 235636092 424651565 541889610 486585625 747588089 27650105 244497254 237127541 825686540 527837165 285031696 580756950 927311832 195436239 643753277 184918495 955327945 825377418 785685492 518939029 837129637 317470070 667411370 910749347 3469414 541395868 709087127 871596739 41060666 587110570 37945661 621300344 830445501 903200998 414203291 916706932 437898866 941975758 492031213 251521421 588223664 113878614 865786342 843185893 708120198 193242609 14565723 220778600 500144145 308971019 372338185 944179713 82840289 133959152 57205625 795402081 275302440 231624084 177171873 394282232 962571109 607440886 602235155 55578337 670626672 301256815 300122461 681609420 260582876 63666731 643723780 945002957 790290529 100076713 902947593 101234719 392012134 283076978 853104643 902991553 153099470 19172580 25124610 312854850 241396458 10025277 951253828 837471019 731901385 487152436 790199222 412005019 510754386 867772329 466901653 29364692 345020751 315888633 663913739 825784039 996498807 736690869 549039832 688328593 86205255 530667780 710386189 171210261 244999448 815093636 373698621 924304085 13264253 674959420 23637789 784645988 141834287 589822613 741999733 810300431 136821545 299986157 210239096 789226723 320828343 410006370 286542096 350480477 915306815 224147544 777066818 767808499 333838959 444937896 104435409 987812105 736381870 206500712 612719046 818731641 197442128 304907542 869738252 354115769 502411836 669877512 175355544 446438638 574243631 958526862 664019847 758755416 131366518 662530058 42910319 712992637 438714844 508075303 165866232 975404496 935858708 120689087 233130034 219793058 434275979 161490130 701840866 944362013 486700355 995490850 25188620 78819039 216174967 777916206 28543012 487530193 435753624 912273823 942208318 684402416 518664515 854918382 291477242 542460153 65854743 712623746 324322584 884481415 816872315 998500869 877961154 914202648 814706774 743348341 886627220 506434833 175158535 341864707 901062312 759637861 528032087 749981721 91658062 503759487 758458465 284209818 803483974 682206936 704844684 927053873 864315857 435103333 167441557 275770640 59544011 772439904 42577745 723731796 374935395 723022400 709073331 524286938 569450188 228848646 146393882 125256658 936003076 417708377 48871892 281462974 393970289 145411504 706755200 54155625 341408695 935106258 345291502 844120680 11455769 479282719 322265412 255996100 367044306 344747189 101174539 48101423 11998149 119160844 867566919 754302207 787892437 717735175 128898444 540645545 241154188 832169907 961272563 150313549 460691188 663407448 376299597 459114329 318740106 531078860 719422476 926429035 298682789 135401523 945121505 960532653 886883793 628670299 395192231 940042691 792915258 168442660 943785553 742503367 249089280 328974922 723186713 466767233 823694818 311366610 496415276 526856295 290933031 550576311 461739410 802379180 229407136 427248942 558942792 287270887 265929882 702219923 869052212 129586683 621901659 881184192 552916143 359001429 342921068 667148104 881455467 424772687 911260015 651765794 400881732 481567063 667962536 248063212 782510828 114137589 695587677 566246550 715708342 998857491 160618202 893827673 245916874 300929518 731314008 359826567 678179620 665951635 930260404 140488011 321944611 616476840 223270521 422291725 518106205 594479245 873722678 585664337 995057328 986120369 383862338 888661432 882900476 21281375 551423257 807801947 273895097 414732669 97939834 120629891 934772675 931871905 16641760 887104964 259627356 352104687 953625200 427487908 88130161 189783525 750977327 86619504 370979934 871747827 751679263 733165482 220597641 219694602 454106592 543660500 106463887 579505714 139126097 106007519 456518761 707011348 603820708 847631668 590999993 482967683 406960968 847916140 766855571 476185516 39840646 635380168 156833384 718870244 544857959 475575644 367286894 401028831 725400189 178589147 132321471 63692709 8078856 469263993 892980756 641426340 450698967 590979845 362750931 984693911 192044547 196245312 172938264 664399006 790243378 670179436 470939479 227639398 429449542 173300192 991311506 475850394 422948458 303421308 784382123 755259089 124421319 59438662 485756650 20452677 202881116 409948212 912557418 618131121 771304087 78451095 836446486 775646662 32994919 164208526 937322341 100020158 606586648 383961481 750266428 469521786 890779773 632695686 39759037 713582083 361825441 125623986 770543413 440090386 934385977 329533837 458644343 642539146 563446251 317409029 484308512 454778894 948327861 409580331 913693952 401930933 575173560 88516793 184111247 202596936 487418794 251622864 256193880 758542585 98302812 952504339 519471795 488099386 58262269 806505039 275900552 397108510 280897503 847071837 362766042 412598168 446329687 290871880 821888243 218549546 200748519 822664834 501475072 566143130 955746646 862375119 803432727 505051462 736462147 28205491 403301488 627024635 929956170 846058365 944558007 700088351 137451558 339603998 34968272 614866434 155682690 402366776 353530965 227462014 42072574 846172921 779716899 211117228 496430542 240094338 249876889 658890337 656898394 424041706 215869052 172221449 696539102 217350654 101846629 574790628 94546081 744146318 755097651 128957589 888776784 822677980 749896545 581098389 44452221 52571581 813893389 283864822 745815533 275634984 431986428 24288191 276177109 614850295 347777266 888959042 299737233 799850022 950294827 256870627 523029198 96149173 708004529 433803337 955962879 870556193 535511168 198102278 533250073 745055250 647461447 360846002 705147739 873387663 685585545 955905256 912532492 101395734 683565493 883538223 281570733 695960167 168135029 224502903 694344878 177408731 329843730 748415475 678164101 83469879 658618890 822471208 117727091 724527457 597127743 172730875 623315465 668666002 954929297 804576886 490062048 189667898 535125955 874916843 430029848 268078774 926459790 194565181 637787501 458030957 878541401 770502291 858273887 821156037 900454890 7144679 268906346 623040288 940292786 480888988 256455631 508958715 53081780 3905035 110904293 682387320 787738363 692723951 914086429 322966651 617457608 914230655 386924734 49900962 966620415 714120800 136165362 35033797 951228742 372283039 570944542 133981755 486798245 78499143 84089276 647596547 700997404 851933107 811106465 807982601 690446095 12542798 299910770 184837304 166732147 363030628 236663153 671841346 981947870 289910280 757629119 654276426 566355193 767403075 506236068 71004572 243086620 294499589 832187255 374078169 51294552 880172052 937208868 624173673 323938123 445031291 527545616 440555811 171549901 186637796 668138492 248623964 276239090 791960747 657234242 882142382 681906079 583291111 127953751 971467844 561823809 528511326 589049268 640651849 974734174 211067701 858858536 820899237 316370149 64545531 237958337 438183314 905772534 580262722 587908546 819708039 32362619 425438425 742788335 423860082 151234476 84044767 548271021 131524517 410529231 482456858 957718795 573110217 411827935 802339495 873722203 187333379 621361126 923709098 408016471 785995004 723860219 626857391 647195252 280068720 733537731 327127387 638375556 741992401 129195552 272314117 65206058 795635496 414016885 120105680 498019128 710589271 911709799 50573150 327877137 781413314 231100111 653618741 133839256 734655709 62548607 539809198 397397652 733593419 124383307 442696243 84595919 883366243 552505433 790055726 3838009 726690506 587922366 846003792 963778087 492977941 164674066 497144646 488381451 487693728 57344020 577294976 735775654 838892240 307997387 732383300 774922740 729549545 513565346 198082290 848382243 921686415 4504131 157215630 457530176 950210277 208845700 24743480 253550600 425344504 986767883 287254630 368571389 826873420 988509871 384681113 256949041 798128622 211007559 32309045 443667662 936036324 995004848 61112845 670781076 531533342 293573857 113387602 500833649 425291608 658914982 431249594 597533302 192761726 522880363 361090612 56949405 690661287 129694954 166938333 383123576 953291517 188094538 13047572 804161492 953170795 498528618 586518579 774978749 108964633 616494078 884013984 393339503 411796125 723576464 191130495 649134959 639862587 220934923 746131549 385439177 107964745 481574318 697267228 340823526 931645076 221295398 452421641 913421350 388781010 233514000 604149984 292247539 932385965 466209392 756637507 284958976 771359310 220944992 969009015 47976814 404041496 533668580 262563975 571849912 47509348 512564713 299586000 65033679 923379523 797861873 237237254 470269098 448516726 284982440 613179769 12840850 60086582 283800886 425760716 770262200 854201930 515587969 980841093 392705414 300820579 934766893 496350130 327398595 72397481 843917561 135306767 573740675 39844320 241872979 304598873 386259900 826086765 258347369 370027332 525483099 208715042 742125986 11945169 916896493 909032316 748108304 983011705 611829541 648074085 106780175 43602174 309040095 203830872 413103146 840649896 667163547 301809324 274090084 747276936 332698073 288926279 634576933 34936042 345873635 643795460 64331739 285273702 312041769 48301 34365222 68850051 584559386 834605309 202793439 410866143 239149838 159081582 593808571 862746978 709137920 759672589 935368152 264938597 613394548 786448277 191924031 550754384 443436020 695485965 927195047 992050115 43977106 809940379 73959942 905937245 162177521 697044957 350428312 670283545 39082078 361199913 23540458 909419216 639008149 170084226 377981681 521489592 644507162 285712563 294488375 405540166 421637072 213495604 797639022 576881948 748979653 587639785 969617125 378476547 473237487 531625732 988160168 94283572 18452253 563043595 795575762 197016196 263050550 838739922 827632217 439143920 264705554 708089353 467752034 618357146 37222938 211288275 571108765 86568514 875880441 49474873 4407117 817736349 785358283 975722548 193864352 922999802 810554113 912736361 7480946 447928404 163552224 603367225 316499622 553973641 721481473 123543227 677636035 297032959 492556357 173635709 507184750 388760218 229617043 629532614 549277283 807717563 24511222 95843478 316406723 940993268 417630207 314199361 888229223 454340474 181095919 87488697 826317881 528034120 190899584 504611655 136629701 720645765 698284953 816994992 114691418 722908889 571702187 587456180 836097279 668451220 401151896 358339174 197287608 556536678 894811534 432638606 62225014 234969762 909104958 10785305 990954542 584239217 224198016 331934460 737075409 265150409 871397198 906626749 322360856 917080968 905796002 552016493 908353 823797663 208972879 346634220 498908090 793138830 44499345 121894090 764669691 4762216 982901002 86198763 699080837 635167171 347916225 397529271 350534454 451547980 292784434 683618975 253304751 659929821 779401615 762938649 111522742 855645479 41831968 264948534 919136101 115984404 775330361 655125088 240828432 135232504 537880218 932832077 605029392 791924148 432095077 517308762 330639960 324407312 768266131 20364833 637476921 735057982 764166652 402702601 764816151 402037645 38360491 95773769 113573435 555019576 148396737 867691784 858491130 684914503 133019273 885531945 236820633 650513502 306751204 984526206 549283811 399085944 810335463 771029096 571902920 340369691 743372591 702233937 913182156 404741532 435945580 344315599 990881473 134840026 970562931 101967714 12641430 116513467 329279235 714607614 491063612 665700982 324106233 695658624 286062273 222462265 349061457 889819119 363397603 391550857 940157289 674278685 151523480 558108604 676112982 445440276 831900825 758908110 900752998 393366644 39523073 7805645 392176835 887356562 690961797 430997948 136347982 186310555 112655167 796011628 898772423 274353892 625776822 406022320 302614722 74571150 336908222 314268251 426075572 550007516 613079093 720695284 636798040 722731221 52203282 731754476 557030165 627383898 166807976 811602099 973581498 277105176 527549397 702461990 534548523 50365926 776377036 189582974 142785006 56343259 134285672 973087020 236071323 99069810 902805619 393456192 271661198 725499435 775382646 558160511 786544592 37820854 318276816 798615525 215931527 242933349 452952022 182780280 794274119 530563518 618804944 8271231 627415546 739275717 639984130 885891697 401930307 388815830 456648391 623579691 791761003 269526346 681172794 479852098 906977942 26192547 254657786 292308488 143416360 505321868 870022310 745112300 575198136 521030352 281368736 855646995 66908640 200055661 300846695 978938122 142510880 879566519 927589132 653547959 816118112 697059772 270247231 381658767 620775186 75647725 624335122 604436668 949381815 112710133 823143977 611787328 438548574 755371674 17234966 602175519 420746237 138821452 440493026 910063368 156356085 402849122 832462533 139855163 513702933 29582487 443723474 452089268 786371041 354040628 147576864 35948468 336087067 61999157 269090388 601672167 843141309 997208857 653442530 50610972 873601919 197526225 413203803 273624619 260421444 413423166 335399053 199928120 254945491 228872799 68951491 798859767 823767538 184548108 131125063 393287731 223002800 541871312 69299047 197416469 707977517 145635579 721242118 487349713 585658110 959222463 127481132 571510072 246089464 503492470 150165825 939476607 821498058 345027009 631228561 257389954 365574879 948712122 879892137 658537901 421340876 426563832 392418953 629520091 612078297 582213571 879713804 739550144 911478548 234164186 551848149 854635921 579219021 522884775 435117887 810191299 145232771 503214190 6593746 250181310 88382899 483878566 822846328 356268655 547240498 433360867 306146256 388264423 927621492 689796300 253589039 628039578 376907598 394439373 457038866 260900245 767933037 490595029 605853165 343377335 927448569 303260919 221534361 142254060 925295041 935794174 340202817 211918177 771261953 999346220 136769171 689202702 653423244 841776773 936933903 409707232 146559475 139597199 635750076 229240496 392470005 627236389 738383813 346751886 107492170 675528138 802582356 894090109 950173254 317122204 374860189 576390723 271692561 55656175 177930000 676386831 222887537 521774972 540852631 763363167 135150101 847493567 27113182 608935140 33821515 545294710 685307246 999700227 207919100 384361528 363849741 718862338 717541629 945158840 955752114 954880440 246119522 842957688 944047659 194948341 111078644 203985106 809351700 492310950 341686724 696769657 327199675 243343230 212033930 502179106 653153687 70227455 74712102 225404517 614734518 658775656 442770443 489342131 493580715 466467838 640900673 479158893 683850392 367513116 965290115 406480758 870208355 180737331 206503163 306213426 327234173 951338863 629172066 450545959 53652472 592602737 558414750 889827215 808344564 596403483 687766351 778907558 63906143 461755188 723309641 391712924 314980127 656778266 251549763 455189212 975204363 840851918 211943717 39468834 207862804 255440476 924193064 639805153 865319276 326746561 841390476 357461877 649297071 30458146 391776230 321983138 857876599 476842953 909819895 319634006 693112882 674695269 866768516 983155407 570520407 140982849 749343549 382264413 614623533 85833088 525659362 904327910 885233190 658707625 31210695 565467966 654543994 333450304 539887425 757511972 662473641 851821124 529626510 290700949 828306238 445109093 69403744 105947860 475738476 241241636 912736640 79399408 577673826 980400004 989949393 8728619 812219739 669323755 784690216 261541889 478923999 678632289 103345858 840159117 761050000 573643854 434761354 190333864 819189433 597615045 996731152 398356102 699145253 228671055 453959046 330953820 622140762 486623343 258787431 852049877 421361561 814920588 931587649 32826019 946060316 118542706 985517007 1567374 111106481 358773751 356835066 653478752 330204328 223419333 132699050 532735516 513672547 872159409 565634607 212689031 286459417 963644701 657780390 343761615 953715437 689179988 279792266 332925033 345696280 347003509 870400575 882695181 842001343 425547805 488137840 722317582 661424900 917743745 655246162 264084328 598589545 40243122 513432644 932595670 660654835 891638220 558180342 44191646 337607210 492713567 6781695 461432921 838451249 535954898 275959819 839732006 92236629 484364451 18738596 636930992 554806633 339504731 77729380 948876669 617934244 938655643 831333190 854835380 406122291 553070621 405518225 938196538 477303403 890305274 764973549 687129732 703956787 562758961 878568305 35529075 657406058 633951351 327902376 794915879 515352279 600982993 648844324 643388117 532316209 586490408 938783123 414722612 240004495 864124359 159342384 471416402 816054815 686356103 836483068 706360770 907728287 567010307 545813358 454227459 575396602 881856472 319586610 903693341 314063259 785147507 842457988 870153273 820721387 548163412 425442139 42157467 649170521 66397537 552660540 840948371 294885021 292420898 909790567 287761401 967404053 196260325 852883855 849331874 552842790 805365716 333958749 96703792 995254964 525329529 161567613 409544707 19757339 312928107 68884434 297475705 177490322 551728575 628163927 529969770 936311705 679109360 865060015 510388242 41572355 153636604 781516205 400693788 717382003 705143007 181671039 482077020 749606186 494587450 351513997 592969317 198501610 665447126 560012164 887834349 487087293 181566948 463815187 128551977 421539623 357523546 614641150 348006766 753912694 899850518 677838716 185250174 189389213 522153595 786579683 25218375 586931776 936468928 740548662 282743493 380276191 369803017 79521557 339629643 97307309 122640852 233249841 360407603 832888011 128853569 42176398 4937564 933271660 134101936 180366705 146222902 860116842 669980349 827550958 685563250 895263271 170178457 704274542 209798768 390660538 357676647 210549359 755899798 631748073 154530389 520127099 130443592 452364497 445447746 343803354 543203341 972516549 932277108 203515868 609778038 268656159 574794112 765155802 535375107 810597734 621846895 928725641 321268469 525499644 263050365 871446682 502776749 306879166 661622489 185872420 984747232 435616002 345822695 805612403 28801592 808378738 231665653 509608081 9081091 304855259 248235001 895627895 846732061 525261757 164269611 447123729 775515905 49535729 785460542 110670127 804851345 260576002 839827789 586409021 857873414 692068272 234353053 883526944 53556900 62356131 502164187 774996334 237412480 126489559 168971479 932826028 93433572 21567948 73522014 750377309 558199287 346044921 202950903 238303633 354747610 133139552 478582740 214724008 454881663 565348612 161130958 110678732 75125459 253529184 472940081 166373196 960338643 714284338 166006936 968489349 773159950 61020903 81326141 18520775 473045888 423006440 323002538 480747810 803342569 767948237 289225887 726114338 1402672 880732183 833992811 509791303 640595918 257099704 507896161 636071748 432156558 694896366 293476844 28130260 429642861 785651114 303641182 958104844 40244212 675511956 813730547 18935806 349837281 98604113 861689966 736400341 228962847 102610959 364561852 69873646 887881910 477126119 771625429 343538610 167014238 893567577 665847653 75406243 332548747 77194582 631972376 405877868 785775755 196004279 123929941 428980212 742604393 899891148 897586037 768963935 156708413 477808254 109845567 557289285 76149512 239115480 935590487 301697880 719286302 774667437 488129295 95965152 193470541 586886754 66719731 209686958 413346695 876039274 90713716 810418532 585402992 79057402 381373158 995493311 92375145 797349869 72699 950945864 175439813 130314795 691123592 724131042 937186165 723614599 205934871 345831809 874510365 664023968 464804547 310572061 999070648 337039982 465140669 682162502 931794026 185470267 353229472 497516099 51875496 564875328 414356476 245923715 947950727 905214308 879254203 888363574 503475394 48256917 209031997 889715056 913909705 460586015 793168041 24276903 928736399 826438239 289384437 410619017 578220907 124991695 12843858 428979278 619188562 850877720 28464870 273148249 142270541 960220830 576036252 63811338 964395492 832392043 18764666 104999969 85431743 636554045 470173921 143029488 516694790 617491708 339981373 176235813 589444958 543639929 395362963 142515479 670110463 971599429 824659096 207135878 642992357 157385183 951886088 53434112 172764241 829946579 461224604 606614831 23933985 853778456 127819356 213924776 972383607 860649767 261767503 561621538 245441854 693710040 497431196 949848096 573463540 559448755 29484906 529145185 906262500 855182726 995924545 524697289 836025326 480872732 705144509 787311852 618992551 243371736 854071708 622045015 607377628 917890685 814294413 824308860 152639497 356792119 874597180 108592944 572972777 999894012 602342904 337846000 319685742 246456324 179558679 809341735 654748175 22422748 434235378 77317745 171176250 10420295 395984916 716788183 182551946 260714075 153830108 436380097 890510043 589152302 467068127 441020101 794281518 261124464 618169744 327971768 752789997 561028812 404125572 874629519 35735775 829745768 701445186 115969774 495875279 328443695 867884024 635076764 135729117 456342302 304880958 74902124 745706179 37032326 422604360 42654869 56805409 471087849 861938249 381174554 951604664 856431692 313995811 249623278 657047468 40905971 180184878 168769709 167747525 703762858 121371818 378994314 138278912 405921174 124859873 840046925 20169766 375990003 268456333 505395327 731908020 995336001 273673917 654159864 628713303 176904818 718170993 905612693 213488791 334798899 735465795 22027541 535214398 364684662 549426395 878095927 143404843 587572807 803924079 103273270 472541451 501200706 851836099 361483559 887137051 955958891 444821879 708922706 809706728 6222617 585881101 99151231 284972558 914253880 20413043 60976295 473938144 162209050 907411258 127650045 894482313 258439359 309454458 192582286 579855301 136746592 601216806 918534450 472153280 797715126 552646023 152041903 780841744 95205659 805058633 806894345 362605118 424368245 502362218 604906034 344914937 437872697 145546501 117820984 847769501 356910914 564439979 425725819 365559318 470295591 704542197 212635117 916600891 491445391 917450189 458910181 194430910 142037188 151098460 185010446 317391337 384153650 867977822 942765450 846627507 966816002 388815669 130417872 558079833 810685495 957079175 623112843 342952857 805046460 167181679 794614505 580818453 823491392 556621771 684037337 799689215 655385432 775030851 736734079 914420506 869667904 30518517 434426240 225980964 547643783 880460573 949371934 467967838 825962023 16793445 158435757 929728961 268738993 113088412 225322885 262934882 828475088 968211943 229018932 557417423 439675232 190728357 693351704 475640598 16937331 434758349 846665095 51727881 790891891 787952904 735495316 351114618 292430453 255674535 528575528 139803378 460940791 312357469 52365529 669749085 578084671 525334970 651517094 332322222 931666500 467165060 993853659 248174259 22199046 237551138 91676502 746311348 822674041 664925545 342883623 860138761 693963476 289360902 93171417 431826891 835507077 272240495 800181982 901971155 933557453 520313489 663402338 33456145 69125738 378726387 774958162 666662079 368474823 705334784 896668092 103462112 551881385 832944302 507811271 73864126 762418743 398282629 400190072 564821921 237485657 252870550 865650545 626004814 804110200 431617575 591797265 531816248 195304992 370888171 664828905 338781787 405279489 225399232 160178928 572819179 54019384 470901876 975429189 301646074 268835425 898500872 692537303 167505633 432634613 913495077 790619949 355411611 928373038 197926380 797581318 871769423 462022282 391685222 224669060 712702344 26967112 276798474 179622266 559787118 714545033 531007494 629905454 170807475 166615358 927802877 624020591 703028396 242667052 546855515 369147301 595864538 945964407 955837564 829225352 915099078 759491538 111289093 643281766 740760762 664481419 791188498 665075681 165414571 235116223 989439956 462060350 724966043 380633323 724575200 363591936 555508962 560216827 270312080 685933509 42735326 299299693 715550740 388668172 297678991 991104577 525604900 338184832 290284317 424092650 395496949 831563534 358526476 827646523 580518597 256739598 787915918 84855929 766368876 188989557 311066236 915611673 578484055 802940719 807330642 130715699 684155358 95721769 118488206 943571670 555347748 723657544 392751384 2877491 457166607 175769252 160637377 730224053 428820591 366306120 614965027 778703108 614119048 891561821 835293074 489304928 227201784 836290008 318253728 464915337 831839428 202429297 666719955 441211935 741088807 37673837 614173220 894243660 374008025 272051037 152796358 7307561 194041124 174279291 594077119 948692262 646363280 597634693 109859014 46345045 6522770 439754119 524332581 474550873 35292896 225390077 688357008 439505642 663849841 818290461 193298122 832595115 848495833 75388776 287519871 402477942 177964408 621451777 462612976 536775280 484895890 835241488 292004244 36234239 495685342 607616859 891435111 550350741 787925588 292686578 802299032 454073428 3614216 938188353 770637552 314496799 654966452 726665582 608958137 123230358 21726909 45688329 92169863 913164367 675749077 300823029 449708871 96013674 128809097 484350624 676381983 476792033 822176091 32272172 228661621 946528885 451464992 596540789 307296613 500615955 495386794 984681379 158708275 475102295 131151716 855827628 687689559 569033772 956244379 832222805 419103115 604925395 426837306 343177106 442122430 51302724 835084821 812404108 526630087 473667752 389169107 269485897 62533091 631724405 632981546 8225134 197372255 768592128 546371615 762274824 902396290 390333807 53639472 732093263 170926857 696875930 228186195 725727130 135301797 125393735 532764251 151850518 295712977 524900964 591715482 205405852 833626191 382596717 373104677 868216985 888223 725367198 954226654 755747707 488820972 908892959 407361113 539058464 703056196 253137340 663908760 283543097 920245703 284444326 145356044 173427359 82967147 277595542 562047797 436079847 374562600 372523620 968291656 557429998 708712925 58271452 990596984 746489754 744930013 285286673 32250075 430333908 24071883 310069477 884510450 589789443 823509487 105828930 688458202 247948698 631071664 648502938 456931697 960398332 838049020 743599537 418996294 194360620 187996043 126442653 979029745 940746338 568790253 289229946 712476659 333891919 944926100 972487571 552735651 687898779 225089984 491073929 46124615 213084671 922963996 318610311 498860423 961311162 517853960 662039510 234402037 942393224 910786467 792929898 458961620 203286357 487394655 980170500 736231877 823051656 593879479 764748244 614799732 399465079 99208812 428201860 134106944 994852823 355636110 791050779 778225415 8863599 461234725 672363186 25076211 584230194 963756606 546769207 312860988 820784875 136090508 186268147 821630590 175632089 529500977 73803019 354656297 382349944 874948193 551090390 953504864 137271065 399263714 643880270 418016674 445872491 340954134 375820353 894288002 194632175 746579438 890424561 601102736 536790449 745812892 66450493 992677697 806554408 415229793 180043058 395801688 500918193 299392202 198489977 236010224 973058605 31463244 714098664 846358245 500261617 579304671 12535214 199188597 101553013 2834383 614263083 399588587 434266507 7680952 924218279 168743939 489458650 476056079 716495903 115860918 429925477 524191733 107412723 732922653 945350430 744839509 620963125 402158169 675775068 223327290 327220098 824969486 307056897 549441245 206234873 291739394 711061581 678809272 904850445 1543799 370888822 329884418 743432162 754806819 258297400 602482358 350479864 754990930 310045895 234917439 297829456 268439129 236373237 585344809 895144630 601914869 437188767 172818399 378362035 627509739 477590534 425549835 833045833 809715527 392967248 6486696 536207144 447894049 55998317 276715195 929577468 844400085 817452704 974611187 361137238 226654872 729795176 528460596 238556484 476269892 83651610 715616323 461673658 56374636 950348536 921988305 362377486 395766289 941329456 151132969 678400911 897564430 634491900 176230250 3033519 245290986 881143935 325910029 803077226 454551348 834475983 252761158 622480774 906626874 215389309 444907281 168678245 925598019 633741683 532830348 505910021 732674992 755937119 553740965 353851027 448070665 924031449 466865458 224422400 924447299 640842157 219599944 858303004 510932365 576762134 494938928 289011616 968587531 597797121 624334588 310780262 831555739 859009648 280303214 878458031 224626470 26058796 424120938 512713975 905807625 742054272 702886325 947066281 921628458 339390037 539028299 618345318 741177162 210052143 117066993 586578618 149002635 705186727 959849591 388972747 594898115 137693987 640761860 82609115 699095242 704780358 493182682 768586527 853866710 620423433 130480635 733102160 845705608 329391371 559787624 662389964 591059348 401507277 378774813 989625117 900627619 539134664 353094350 82158599 258314249 110089438 500151148 26532549 318538665 31573480 540539690 429634500 276121419 532576110 224499210 126325392 635313846 430506371 409927183 740788960 984397637 682611802 927898666 571522856 783077324 213713347 586971565 74246612 22491474 390914766 376803518 73574163 532606382 276276232 235694618 152225049 134701687 270700234 390990705 175883703 461787329 845430671 533421243 655696898 243377936 518634515 767263310 471659172 600501763 120633522 387667477 661296030 135211797 886510937 835774933 957461391 658881811 799085102 16540079 412588730 735905982 352899778 173916856 756231196 223323778 958756840 670903883 748944389 513487097 656130829 14942651 413063577 618620341 349881356 60224782 34076962 14413035 820536388 585823794 738284490 101177267 903627320 2172539 605006301 163861718 604468854 165092270 108038098 571693534 888910759 952197302 419672438 266629958 692633464 89932382 929933205 564423958 94471901 20030380 957381544 408568041 940201504 621943648 879431712 915277171 97447242 127909880 689117963 331735459 582494278 410161790 57000403 287168701 913876910 201063983 51683608 997248742 311053195 181238038 832407557 488299885 409240061 652156615 552745029 986846674 939271067 930013101 443969037 141947998 921404934 111273217 233995717 285676769 495975680 888253743 627202456 882929026 803215803 192054410 26512686 763294628 171928261 684612767 119709145 479590840 660518172 68990048 705292472 699479629 835815082 73658178 680488448 46049627 789307530 227646115 440725171 288574777 532948894 70608838 647265764 243383732 915624426 174181985 939212020 822172669 410076363 684164095 672391737 678198426 335416582 152134924 141372547 375051216 449501888 614948520 545015180 544828356 281009421 993556932 542522998 466705781 878348894 369535312 370753291 827697969 924151026 124672995 968879144 829463769 14637224 859227756 26358500 131379599 769492114 603582896 701952530 942770653 180202268 411824039 336100473 568424659 795081963 73450998 794234216 734536295 844047576 230383294 350088476 970448741 256320622 430373096 967803838 830771892 814731546 314163605 796537067 318767913 59422989 445102593 804146389 626040851 234753241 884771866 646615753 724630076 891720253 95428818 789162362 313785597 935133344 103556630 771729427 754522108 309176305 407881594 616332222 89437022 696747892 475528157 708373621 298235093 262931383 900182127 55966951 637506534 708647023 910835822 198289633 214443082 174072568 797947535 236981408 751758754 892215403 117213670 578847786 700409576 21004923 643853701 832078456 820312164 22951315 16263663 159389685 666430466 656774113 214398726 788344031 743193175 207513878 907239740 657737366 481878631 4699768 594641103 831803688 195899804 732196081 682299909 792856402 201619522 877297956 737178836 230008873 262460912 595448804 915408111 302019572 88928313 392496988 483196487 922197579 286402292 115829414 214390215 394418699 490511877 185812970 844098152 509022168 593984419 70372973 31891049 536714710 544233891 536769790 933889535 197521454 690629568 40745193 106752236 354920464 763992712 904204867 554940540 806058674 551710505 580133184 303232698 881167958 145516077 395447619 634591376 145722869 684873887 706575123 334426803 598377055 908086293 149823965 952871708 445321069 717088082 2001662 629197138 131925356 187965210 795403024 136879815 796965707 629166528 837096099 343913332 140752489 766181466 506828538 973120962 34752576 947181058 85684090 281027728 509319977 641181919 929704584 440320076 716810865 891511245 766717817 695598936 802518595 481089778 271670254 567969515 620360981 920577471 836206098 478643862 724492355 279174812 373094836 845457886 533335001 721687530 698220029 538187933 973058148 247272572 254769668 574339979 228294080 939690231 881381034 656377740 320050125 732714635 391852864 684315019 727818654 531675078 572432989 102480739 878552842 962454750 731986536 524544416 417887181 568918393 216798787 174048074 726451527 416649171 798284823 118247981 785580160 554662469 978596213 100870785 913752934 697387063 875673134 26896624 268893790 390672858 399348857 404592634 423800482 759099648 779529758 8050759 958178826 567700892 47261368 802448906 872057780 881861830 327781273 129811631 52509044 53947333 145217375 552467267 826371647 998915815 447098836 125572739 529041731 245681628 373899202 614126218 608505486 982315323 28554775 67785256 731016702 844212042 395381714 495313476 160310240 109572934 461108046 77971155 123848353 245327680 35929930 579954500 303852695 747854816 578641020 146213795 295693356 605216238 707783375 782652046 765787822 822780324 482882232 208760058 96672286 584683011 752536221 880913717 284188557 529737248 792626953 23831139 738497301 540459238 24087612 900686986 584221406 380788172 57681373 962547218 973029099 111247554 893671515 660142652 846349930 703757534 710951084 594739748 829224497 869049705 610246052 640904442 803115774 658009734 477837091 445553871 236474718 279249453 101905385 333348426 862862573 588171269 517410434 307204045 221182653 743946715 30114766 269468667 941646882 226046813 540854959 920061112 681427400 100441405 10437939 779929211 736753920 438789637 524955470 193738363 515935737 521314387 739830358 758396950 440109751 718338735 609578394 361180204 257578810 623526215 281788413 80484175 546718777 29303137 243564099 462974841 129346746 784478035 551477378 801362875 176965023 933425328 393553460 249288041 542671837 891843220 202884581 359970691 220860068 107753454 863650720 850641617 996268353 824400134 82106988 82771252 923406728 823613616 710919510 122188440 524460019 356701443 341171714 636799092 773328624 711961404 487351141 708502709 774512776 950440298 947885370 205045032 13297981 23291805 307568095 279855685 597573605 538484479 674726484 913333902 841131952 110714926 225175747 594557267 411003036 904449410 566784668 979738170 725315375 197886980 261113945 869946911 238602911 628991392 812839761 22371909 444246852 1914092 626125549 633315929 655989134 930024144 800556070 161667468 971875090 431024872 212182697 447712245 806483137 985038064 932347671 596182742 87548481 432907456 802079871 260494149 367290627 176677425 864483626 334274988 372772510 691351002 641092862 606932484 7847711 516566802 462231832 537067110 851272181 672080346 852345772 772770541 657856486 841653598 116248848 855839326 997564235 355023150 503526491 534003407 954679754 662800455 552454730 913111954 910350210 119888642 913648332 940116987 589687524 208435932 291250177 862250343 227673623 290244894 689080934 976141504 820441240 897418396 620810600 824167058 16663817 261582852 432405038 464745384 518376751 856124565 843636328 960691414 34893045 309238174 234743955 823418735 398471137 258890685 40954813 905307706 554812338 492428199 904502418 566713653 757656061 53685775 682268044 31240593 816727430 671562679 618474169 734284762 302549635 586613193 85633043 226162882 802888775 329386545 181583836 462581991 35654675 449979200 455197132 514042844 936251610 488740578 138837418 959521286 932550973 562760605 424878084 631169546 905817518 699022047 897854004 534468931 507571604 747776852 361001130 644099937 104386238 829699201 981166444 827467921 715931004 256480003 344563998 416517579 844372888 512693155 726002986 758509072 654392036 701054670 269030843 282500717 619156068 767542247 54200264 941700222 854825965 457769173 173873161 763877513 436914713 630291305 223830314 777708377 979898967 825107164 474977169 619666707 920743090 801158015 473589323 4156208 243255151 56833467 941285682 63249467 880531772 172343728 661445236 541474002 571245383 889201792 873561525 543809400 805708938 591053079 7011664 633851268 481343069 131748739 523815093 711430681 598920205 156935359 969441835 830586581 206558270 222662505 88054339 311143789 149673877 860309095 532337758 139476681 398308603 561859470 222022116 504438426 348677468 345819768 958143164 181495285 245403870 425852934 866618704 474596541 978337453 786492078 456281288 328836880 627079862 897825143 720922546 850864076 437495327 414849215 201432342 168874666 850379073 562253903 320704824 469869386 6403495 511711484 135088127 124446602 644270829 105502150 481971118 563506817 89336458 259112088 78450325 165751222 444554790 795595100 158736541 896790234 351434445 613951334 969423138 997700922 844180874 754092631 124511451 298241247 197521827 711273054 770289725 36242108 472077274 621161998 98456499 174496987 549352714 917406696 37469170 204983642 285131291 663064279 214445318 821635840 774967409 329543933 480589405 147495335 582238519 781645431 570106729 993691426 99172024 484249215 317347618 980403111 788269614 295446594 158351067 173261467 886271826 378742749 108185587 38003461 681284451 501622248 117883112 84516482 11426759 949268803 100632056 702691732 649439385 368353890 407976646 636975508 868071288 288616291 190189204 413429000 851994771 555667606 829944781 182337095 311990889 23149360 684202459 615281207 547036339 581784204 656333069 873547459 887404558 383192307 590144935 671311813 597917206 255775483 83640040 857954391 77277188 299009325 445427448 234871286 739883429 736922233 944633583 219094965 219870542 91875569 88257035 55262442 376843468 483546219 434470572 744831302 640276324 268537740 77982580 217412093 929354006 574083328 867712602 162733474 943718193 177633215 194782107 439882505 975995936 287138455 988069832 136562081 981759384 498034689 667906181 31334117 121413220 214075104 363736354 935567575 973207295 350053295 484920103 309584538 106160174 231595679 386486438 255953785 913183571 777359976 991675488 439739747 997540650 662359272 157056532 654811007 381249627 326422709 455570380 910261430 425119142 594528741 284061227 801719921 508194408 106721892 173258562 940659809 247986011 183360611 140494907 724317372 774653555 120280372 442540578 902661898 966027967 795108215 430581037 638519214 573748336 156856280 183965880 892719535 653813735 482761064 126996084 983712222 72877334 111458237 940858160 980622737 135366852 776838493 748782588 410821437 555855783 212526012 897383444 995820699 214700073 492115783 612746762 469025865 607566202 725704420 446850868 788052064 470978881 609232844 260316804 275838661 837978724 720077678 187539774 959417929 168820462 244057447 170945804 521843531 425195065 587216964 224520337 936774319 336052959 230537551 739650717 86168236 659469057 438081219 223007388 893555236 512313007 77298101 452540886 238899968 273469126 117835906 142442307 158244503 896085831 623675326 78732589 501988553 87695027 154696965 427916783 503482018 285911972 793407816 51385012 177367406 205483829 334645673 560610543 246498800 498697723 901440856 847223999 669596755 310771393 552218037 69974777 685019755 333772796 807310323 614270026 955252158 39151136 586056826 363159526 336658558 759428644 507434229 698444643 371524258 74684066 906588927 100393727 821091360 653368973 654350916 766369273 603387330 668507584 210421192 794272132 760770943 974931632 551700896 97877231 171735667 662220278 161620634 38560398 468663749 984659665 901770244 750570772 686047328 803182926 88342432 221759156 273903445 882129751 662255718 232769633 649745018 528933319 66412706 623153348 150353865 868503392 750505323 950357998 629865244 461296449 975729023 275848058 519441159 926512305 339773249 608588703 340769613 218023630 551299849 457465664 764433510 836763533 913150112 337517100 868670051 751994639 819744380 40926114 425788238 799007664 560087778 799085602 80709178 27379609 925418999 9992602 756788024 892360501 266181180 78466665 386146508 590272185 238931672 758157024 957533412 242047415 541794615 547280254 351966230 519056988 102996168 685107738 883938725 671564106 497923787 267646722 793003133 553688161 791880549 629322116 987433152 374109746 324120749 831478849 705305955 515371190 604260611 318480904 369568531 168837401 42616873 852817495 164404734 382069937 458061843 309459882 533374101 910346721 639044494 213525702 858724224 540603750 223385132 741057858 254316984 995101348 513002167 754656888 618693949 983352399 193083131 937073815 211565116 96996067 702349856 547514351 66319932 604438102 530871090 528114490 453566219 544335465 402476332 299836620 947221368 906970234 958917965 333422532 430887221 838886666 121583341 938089420 392269562 289031494 859078965 214939423 953496319 810501183 199456217 688515462 110238324 824538966 327082791 673663047 917323958 893425530 814867263 12844049 594707166 595172224 885949827 28962234 225769166 998434017 166749642 208097011 352418128 744112719 839495027 551452319 480057813 367857397 931694650 400193305 197207539 11351177 47118698 175472602 471183056 16209526 195380409 45241 751242090 865501195 572271450 467517410 577504218 920673366 655685422 285388727 127808509 954942849 154303229 826655403 744928669 188840107 110223529 251750834 445480100 435553012 637528118 726284663 376877379 598126167 118500759 197427997 773425622 497134026 590471028 195178368 43834929 259165511 105594758 335553738 664266759 405908619 197035979 352722732 902824599 670794147 93477 105383132 106362932 81115253 415540059 975721970 525128458 967294663 676789506 697350460 679996786 167206370 741974010 329096177 674823588 982638817 91842216 484414520 351291211 156139647 657569095 989465378 689704147 315880191 948508752 304962359 597442046 309381702 525754416 222788057 655252764 731099556 611044054 130684887 190212573 148825782 715903244 839659830 302516471 258330543 695243062 562015968 138647413 30567430 61887490 770508506 536452011 482923218 451247778 623405998 227695692 224458699 675029049 970566412 528534986 265147096 425082172 665472751 680577023 842209651 222148198 30212998 164548937 996922038 82302729 996916532 206933012 396492455 268916156 800094393 358126249 226230357 7500833 701571484 715922334 777163531 755187815 787606060 935223043 240677704 351029699 378874043 965804284 661125114 173837710 692354091 899128151 800267065 769791699 326151877 335061699 981699398 234836590 678852785 217474543 877127625 474284938 944344965 285667808 63506570 568509664 746531917 98318352 708130558 627213479 284124824 874527308 949936100 605441971 552408735 481675252 693642988 474420427 58826868 663799111 994398694 147463576 961534388 710797354 109049080 114036675 2732043 384474355 998608627 517291666 912794367 844534186 369321927 120681317 217885497 477000122 768144652 329977384 189306752 958182610 675991704 363599121 460474975 823177847 632938664 290512596 916494940 835902951 124796194 237978755 835108612 435409761 842167625 908095357 429741337 486416547 588889123 775778768 401204899 648064642 526300995 100562114 280193239 559114619 86360733 188805278 9853272 803487291 906289984 504506701 264860631 912027810 848847306 39290538 315474747 343313990 887750693 289354390 28476321 733657520 401409638 879924913 872578481 324514682 770657432 225288709 85676381 501625879 972248324 447710423 842191839 454875536 627277260 693512895 524277867 606302567 479852874 264414086 450727043 858720627 586239277 157590204 845691654 607155344 590544961 52564568 122459896 444091436 198263442 743770876 208201402 519508216 177722801 870985778 667425511 544157716 361564845 492565741 145835534 34305136 593352306 993411457 307186615 492787955 354568282 768493667 574459061 85828987 139015122 915671430 302268 307539281 884603337 876367042 338230752 739091233 66410701 368785677 321931542 656839869 633607551 99278421 184532810 822346143 684810148 843388209 320592996 152672895 510792787 148846580 627806530 51474669 411750487 231878075 862333003 314578887 674901274 666713906 342859419 649762247 451380266 71594307 946166043 147483686 288362585 416480621 179958006 289898399 539763136 422870335 693378390 654645337 623525157 796255198 845452125 21331297 99045519 565133450 71971166 247360955 855208101 190483858 261096203 566127833 796482090 317628725 884506536 329498448 556322832 215423855 326144102 140202846 622443164 1430652 148078499 805031046 356597172 148972474 294694517 298657176 167459233 372237314 609760811 481835303 119078758 349810590 827970489 115798977 944183067 415861998 980408481 231098144 792119342 223920855 299726701 708922087 430729349 857280372 430889558 556691038 937821209 100529362 162033648 244156883 204101560 316066289 691023102 638041925 150575654 280424083 252073739 256725264 876464236 951711784 631658749 134555077 481009125 676750744 599162759 281083670 744311279 351684554 358477824 546995001 417755547 472263444 571740418 296086116 793093905 493583765 386277051 447958919 419517983 687957484 808578483 263354844 550619029 37471833 243240427 932545306 487891962 242620236 659841055 217944712 115884286 283303265 796806261 677864998 548344960 510936841 443411799 950719616 60923370 126308004 472385804 454795356 327170327 379423766 923706502 382944306 773172294 680487763 139787981 738576542 744010058 359575567 50904805 622835594 933321520 223211364 977924286 389454775 650339987 518139300 164559166 753557188 947428558 812317348 350908180 239497204 173811673 197431453 949355805 894266427 883147507 425741557 299140889 504089665 116619712 380440120 264489772 45925618 311723317 339536506 705768395 586244732 109389724 202389917 947520362 285927400 136719476 50561362 393663443 78869558 612111015 338023288 224221443 43188202 925165746 408677132 670572507 148368116 957523695 812416567 262673678 667888078 695596240 76541029 889586290 326254861 305478897 972999980 75990180 948745778 926666494 220296542 663623116 594669904 350809620 966515765 415954201 210481603 695808790 272746816 646312417 14277163 753828826 272654370 370662963 566925025 123500585 557593646 167606964 999984829 95796362 422451286 954822645 990382572 676366999 242128922 222978578 542210744 969922896 357499786 180391521 649110719 392914924 933280183 803223310 68062293 44851737 148601482 690473556 621670701 655423795 352338268 163797311 694564619 95028152 734267666 669043332 843397047 265854963 843677274 461608531 929586134 997287357 326275075 70296160 586728657 148682650 876827949 392819584 562441808 302822176 50547653 494717241 763858465 107303312 471109263 973566325 807429303 351711047 743843988 736088646 576559009 514988675 124044244 902734685 180521861 432678081 538993721 347091905 200592145 117705788 834059423 889708196 324131937 908254936 535684649 906709072 687924814 675793459 963630076 415913430 175657836 606461691 176007818 215303350 768051546 282336774 168637795 326946986 679345339 399496001 51883873 129335186 486235267 687234331 696069760 786190967 420966616 936805588 122194366 908970417 712894743 260088078 332879284 325352585 708318103 615718544 466191800 67456817 970007492 731353609 293211553 595661513 777762654 428081394 481979117 796613187 87031933 602304296 321683089 930661367 792694100 367587332 192313674 741524863 940628321 709296348 569452053 735324979 783661603 133107611 20082295 308003543 871492294 726436825 321583974 556755588 984063803 532672145 184241843 161157414 403310332 818368863 653642473 503259786 464470977 723862164 269050731 501607545 366609758 706621944 569874758 79932031 710543443 967467805 680477154 241006784 393519195 837654651 207421670 659790725 919332328 770036226 491365625 422840006 765462373 249315951 343962348 38783165 215150408 590161723 854742535 324498535 163259687 803819025 665867265 458241659 993174670 871468118 779647076 287451409 526493867 38580720 925769353 571446453 450658986 28785411 251874056 166539821 540354220 466419046 802289724 883463486 612535263 452870860 125374015 192254586 856128849 483523884 988346767 998434136 57240525 656445206 897941058 928561664 203373278 139838335 845824168 708111825 771443004 386067972 302927593 767011496 44714690 801719243 695920270 230630907 349424611 224498419 798540831 495625604 51980005 136697165 812146180 249930 757193150 604926466 546250987 830348470 380027999 346549063 649079110 402939502 886340010 740979046 842386316 5793222 557148353 554311959 862330291 579645236 765458046 660700375 713120105 380460942 762721143 128077819 398865840 626882723 424215668 348497267 541528104 302408657 760999305 968589047 20107151 828055996 544625029 768297725 537098155 942162055 28993353 705482738 543580992 962511363 917075459 522408492 505442531 238682777 183455175 648125604 314283891 178393225 802088634 831304166 99857880 334803851 786893126 435133509 209025136 493784932 185945844 645121051 917103547 542470991 472429808 876162553 195371332 479909163 568005986 61444454 405874908 758281375 633789596 937078093 859703643 957645195 80351987 893374375 848128 109254716 385685695 326680287 702608167 158681457 268460258 466478851 290049977 71897953 117499508 389051859 495323363 34760947 254900284 391734296 64166863 553526160 151407003 691513843 742997775 171121113 145644671 723826475 675250385 200033832 157615603 387857776 148851943 890964076 889908607 972526479 536274634 128034181 777083249 101215922 229840075 327010979 626805128 399280017 840000343 860968170 980795118 788345082 927752134 575765955 765977529 45716872 354417500 353202577 123949780 191161212 813280646 771922664 204146701 816060128 34711759 142092695 913942925 665475744 498214851 225865603 64447072 26274821 678633512 34938726 89608563 620103538 590102791 152200490 81954376 575898576 798056644 456356492 418020923 713595629 617266807 38475042 344991643 115861945 997251418 638413186 824748887 623872297 469727281 214523149 447547859 313994460 377152318 645802917 307339873 35881939 924401431 370914215 95921655 817849474 74629921 197407454 339901514 665305416 401333850 515328567 307875771 146316451 790540213 583112865 888510540 862456889 244182654 890395418 176658911 650324786 401198249 947358275 759269730 153172917 300732859 630937216 201211946 884586942 418622552 609889860 115041010 535953628 590351801 269958524 944191013 249422036 402570813 79867281 276599861 449444411 590498594 968215702 251753644 555611989 337072694 344418912 693933831 903741742 956329382 764551273 108679934 887207844 412056008 530472564 180025760 800687076 253470524 231864914 242533772 639020534 234397858 611888483 66538063 531574610 289249813 685819045 943001579 583670907 198988191 226265195 379437582 100116897 64102297 349637204 298443131 818316984 306965278 222111048 711707319 911342338 706205483 836343875 317157153 447950789 590763073 515740918 125339599 48715562 361381016 649918856 148377023 194765365 485140183 129275051 91687664 75781514 176851854 838495298 855409347 493512913 560177783 134159405 147364210 31138987 391564193 564877969 10128622 155488423 358375025 789040388 139375893 333560013 283737816 110432517 672503417 433416700 790016551 286311694 324232291 3495878 135349819 339204315 797188574 54692460 459666343 486783163 734319209 829293559 742991818 879026932 927686196 735018439 625528497 672880993 764920038 747131547 773279215 476955059 621859307 557209233 805992786 907755540 395377504 686275689 984503434 22295236 781344569 69496724 679949518 357769453 276345591 189898833 153242222 937590778 917434174 685045236 910557385 152646119 253760655 109090600 489155736 975698284 359389115 974500346 918558757 166337696 976930125 925049126 994089293 398122958 856517019 604870066 727683617 315037891 9229336 148092090 401394594 848891503 790629515 458395711 291877370 642286823 717680792 753354010 684132147 720478771 926621214 9425296 481756897 675600699 534884665 260860479 499269308 603979721 227260819 168720550 832636165 259729517 463363674 761097503 164056292 608992948 252045227 188255772 334222705 187218250 849091803 837878162 18386343 95935534 483763375 885693822 326286652 612337885 937052181 457708329 803364027 809920743 688000314 360664146 16807879 354994967 988509139 920343964 355088857 698999586 826311064 741206946 368189946 680262457 646837031 5278616 235583612 390661758 171195497 594570014 952941654 184668765 105636562 438494622 70598836 579619318 833340834 786874509 263495151 39273332 838399806 168271789 364958800 11561726 927206635 860489574 14891665 715196845 114317700 203668577 25495649 555155234 442102972 374575260 433410789 323434632 205343811 63555046 27668481 247612481 738900995 285310139 290423143 572645691 38017163 423780769 34781475 193830972 622218026 266844971 952477478 67515817 361241699 169953609 874742633 460543624 783413895 97682843 391873027 707645801 299545841 499167634 775095426 238012043 993265347 110033649 876577951 124243972 521413296 105188930 630023042 985336523 624729872 128056319 142987005 326269633 877840102 732195423 21936128 483766589 427907035 150362070 930254946 806098254 39944622 295424008 289344414 197456704 362491005 580874705 139305621 772767984 81024752 953414177 750096015 613024286 725639262 612415820 229177579 549462659 174868287 409285134 439086169 742201854 237680773 364795722 655721604 165011282 627089722 582678477 591054173 126863185 436877979 896675242 580011760 689581628 662994704 628263808 533611133 867999243 584216476 476537021 419111975 130364967 45128509 104070969 276102791 563467043 14357857 712663563 430254783 140556432 608939416 970252131 40881769 933339746 795636669 941662672 412885311 943477428 388821830 783956340 465283745 488242447 704037983 681173081 900560159 136449 598412474 742754533 37173880 596397671 29570460 539018073 986072569 927476904 594083956 396780955 388082313 737138900 974277391 777099239 84264955 416405109 118281845 124407046 84311064 501437799 589112199 813776487 227426717 899299839 66121090 113304744 954191177 241616964 638941547 125259727 234878415 280693858 532835148 372380700 396767511 412055054 734117507 35904038 725520065 996599558 893736163 809345692 592144715 6705456 407594150 957048644 147835788 312864522 64375591 173048381 925834238 543807397 851793791 122788612 850359921 504049508 136952435 757132361 113450698 174266898 988419785 251093724 697802208 20799474 105477744 53736883 780751234 813996861 577336205 497009488 209544781 888412454 880606404 247843501 246345083 163542484 156737078 191654119 529709900 319846877 320839932 217831780 420747686 64029060 604270663 347355403 143620347 494109108 865188598 181647455 529125329 418622976 206623695 882837612 992092384 236085797 809602491 934013369 365298670 427016162 657260263 519606180 406126575 840365541 453243250 212653705 777702324 430366399 180838912 651172885 687802465 14411249 584096832 544259364 71301587 733576930 546401871 772466237 965295108 352817890 298626749 66858973 172917264 308158897 545163705 240552647 644813293 158160100 751147290 240160104 936447083 42843352 601013359 173481797 160960219 75141854 7120152 865651015 415519692 363237809 102094992 622753372 553803672 987395824 696443106 608274306 758631111 663808211 575368531 490171428 978218779 883202465 660043210 179715108 59970807 518119933 961157629 361892699 486962907 369650992 543900020 379884121 82173571 570035352 874713847 987878042 283188943 817712606 17563980 100727380 338206317 28440855 859222733 740029910 600155624 561843800 134775386 861580589 933312101 631102874 966982241 126623269 16809034 26145248 359882591 677501933 675067920 283164428 556549374 242073814 431503166 551245130 448924808 955047805 394474458 162147916 298712611 614935574 690256826 325299929 879108853 287695508 192972958 535404438 277098111 153992130 391880241 740451528 270801180 131451625 255126350 505815242 753377255 379253304 991798170 139365578 134454085 329267419 651147478 291305225 332995090 260610056 551840664 95151399 988881162 256508043 221233633 698875509 423082436 890704963 831872685 616717482 645881288 568078145 695248518 618821347 182256403 604416842 838238112 468300934 456277973 759423162 672575839 46672850 404800303 633627604 840355171 744628290 268459423 165466776 142750066 983180414 197589878 791372195 554370992 519035245 53365292 492575416 816799500 627137278 490957120 142800363 484276526 716641318 307679065 113193085 425849985 31393344 660512239 254691238 157461107 542644669 930622066 138726692 240984248 337410300 773724155 206754093 890547627 486717137 550944544 734090060 776416219 212963285 849827494 866295769 558833839 30955648 949010111 358278023 777627683 874245465 759223643 720066757 594909792 509919329 137888599 350235169 404637934 319469039 567950714 970457897 318316439 599535114 235498608 372115586 185739745 104352983 677599030 611045035 368183858 525735317 2806488 339332528 54496391 419845792 681082661 515504597 413005415 430083046 909668738 900823603 415757919 658202051 764801545 14996740 91439831 17455881 699533964 872249711 797922095 899794570 899113712 10184992 129672300 354174437 344845122 546134073 596432294 658806631 89137924 205733266 270672896 705861396 746681501 830159911 181185007 516292382 33548644 69555170 406158003 147411771 165155381 837611003 688999244 747193473 388939189 859853876 630509673 809380685 250135295 890958295 771657180 87938431 348582132 391720009 442158724 908158247 430988047 985922799 799061449 119581231 853559986 340684518 436706201 94389934 35671123 924428651 138805320 697617432 290499015 795370565 497276493 426137226 543668574 918671696 274953021 490981096 768622883 747644534 172005039 628245753 99419590 142647153 696989317 697635389 271068447 792298305 35595733 981572089 367238563 910620983 744524503 337866801 89402193 543443193 764349544 696220100 856507933 571394463 877728712 579627843 37120564 566072431 620566089 95220109 76007674 85572099 251245520 938776684 572174582 208837783 524117231 967450769 498910459 299564431 31378275 728100364 566103947 669813111 888218706 262849217 822552943 709418481 407595647 666064272 329189892 865854126 776146329 895862153 230768011 556569829 433676154 509066514 329879371 980148789 122984592 411211877 114970939 253893760 305307057 278272753 821838049 63240420 568428156 474974690 297778321 346676093 220670955 886175142 11201771 701543255 476203898 413853484 200928275 519357047 791044490 954289473 790373671 295682761 876176707 704426908 604402306 801633902 735954912 609422144 993833747 369096059 608934652 661946611 999473083 58638632 871812434 459406859 501235960 535176390 254743874 625603385 653593335 286281453 424571091 375057902 359377670 7919687 84353868 493251119 135336829 543808061 468403744 439276466 855181651 995053882 36075143 268183728 240006472 193940516 875336380 816363321 947036930 402735847 688512248 685013175 145889061 860054802 944537877 507522017 708352238 167947577 374114936 423891772 713224086 380818229 966668484 982009201 148556034 920796549 354835153 141886369 2350373 568281999 165897312 13540107 838763244 297956127 19077915 228336661 455977418 795607304 62998340 199641872 506322482 306177174 926089783 97185440 186549356 57476342 438395142 181375590 618583995 551646026 736772520 817572192 453073309 887995493 591219868 375783086 517523509 36808241 642497575 417434724 92023270 738224686 671252111 450529707 920245290 115099674 66646389 749929400 301356457 352053322 571998783 481005265 756626741 938342313 155117016 530788087 712945109 15605581 988725653 735914855 25226734 561715457 457300182 430991798 257445288 577352655 840164921 587326745 539719652 173443322 871972519 154171584 976344959 91955337 918699139 799689007 881525337 674485739 443394308 910001861 465216499 457149698 688134992 335142077 688541672 982391259 853523755 646613789 475003827 20002430 940028099 165004118 17933056 407274247 346530623 736833265 601961312 530958386 658574171 157405543 206924914 205079035 207761519 848844480 753456257 216035768 314838894 738926396 317779578 97459065 578179230 584806062 558110339 961134092 127399687 231950458 229709375 947997046 728401955 834531977 262994548 781041997 984612282 861719565 591271922 380242754 301604376 620911039 434741610 992894920 320685157 752861788 55318741 839984887 847810674 140521564 82015784 235449133 101636766 47652157 233083968 100800858 415679723 185432980 306701327 573513856 935386828 26155480 109483924 596227075 276377525 452908221 756747852 547090698 858406358 936938741 978428525 833905671 59248538 849157385 401513411 324961579 695107851 914642708 909508267 527444879 544879655 444118011 680857040 329609438 219803080 158892385 200096565 62334218 183951926 456130960 312403161 953545568 918780879 839391363 735733087 365446089 32873560 648702076 892190805 679460658 320770442 137335485 795899561 868714482 319891503 245937187 880097996 546517049 428512818 909864015 472015101 461885177 229024721 652862968 770776509 460763672 904503385 201367188 906703824 353982078 144594389 53347061 495711218 281102956 403552929 773933233 705369408 301056537 259706543 595181570 527344234 566114535 573687145 250800085 22274629 588843543 744191937 144809057 793977469 655938622 150047573 431084655 282788056 858418152 796046437 97587285 729169714 637597500 52638384 479733789 666650173 297159870 409272152 462624816 813617304 856532062 193604456 733643790 290948399 147405625 48164086 888680597 343609795 117428695 523972990 197618195 594876861 482307749 90003292 522620710 98165666 754302495 721632700 443562076 458988010 53774028 41828469 835294706 126616602 812652293 402523671 560921961 657828426 628837475 340203705 32576343 469684603 39271847 753323707 35870674 778509809 386650489 874849533 785393721 504582416 87844734 923831607 947515182 854294796 432408727 896711746 887112482 37177271 12442312 142579745 555281344 396063563 367196646 511452445 296077087 268918579 184837363 934104956 961676541 907321181 789929129 96884076 112879086 933033262 385257217 471836587 285279532 813903859 946552831 731553020 396684512 507008621 497631687 17053569 804007691 652718529 393842609 947267376 946792190 940248682 50047346 269705861 267440501 500152883 745656231 81653365 646697159 997429648 301260057 874964043 386889166 83703351 464364500 760982009 323578372 537527198 627894881 607261529 878961523 616258403 139355925 840795753 756910746 907529727 155593456 977849815 179952426 444711347 102993327 86873602 283488644 40830293 277782529 253665087 795599670 153336565 32301123 827339631 573103765 972567560 92278294 957253036 128299783 362706753 319464555 885808483 238024670 707282559 918309979 929749656 398995112 863054741 872999707 258414862 946052779 155666728 652884112 164403472 609246512 295002175 700537056 990963672 154222600 457016047 630216466 995801145 466992357 79933608 188995184 505592997 518449375 188706795 581247875 656213693 3205999 301283638 935470831 383364019 672090 190949340 699907664 77226481 383655635 798582647 360017789 742325240 231749721 781422615 922131989 306593170 379321876 80745826 959017908 757070306 943260322 571285757 757566538 940663780 600202289 783465550 741305931 555641634 950668472 870552635 254455428 704397955 811285104 141562351 981808013 727723195 636228906 751245302 928873290 302407799 266500350 558446839 210999252 919089766 492564056 25866105 757910861 377677767 652887111 372279619 814385473 982012136 194808369 768412802 244040568 125297516 373236683 377419657 801754393 651061601 210424473 734773766 996685275 658081852 944684821 274989888 422375577 995047649 111043824 476980251 902793502 526602943 961180083 429022302 877140157 717650178 100750777 558346452 518456321 529643556 752919506 989414974 444538843 182540301 883496581 919767726 954680347 786833173 151845917 661285128 210387186 786183639 925283718 489802571 881397448 142038008 645885367 891964292 129222230 875781151 269787003 660288009 336767578 42364114 592790688 859875593 54612282 994308454 903386946 577510170 979903817 410431561 680133717 486179060 839775874 788545056 386996812 730637899 798793473 11965379 969046002 748413642 190683604 48049224 192372074 846063935 560433577 512132965 917512215 750379544 930677906 235679040 17546080 981337450 757053561 226070302 548622367 498333349 751431978 95989607 261759827 440696363 659910379 653190723 789921071 6572043 551272133 875235353 511714656 150799517 714977436 83208321 844715546 999876187 857066411 908270055 295255397 694582686 42602916 103653405 212687840 13293924 158135374 82258542 988223272 231188682 623279659 243082580 139476596 415031628 673397092 553592157 664175499 556158632 243891453 727897315 375095726 15268056 323309021 87595974 117084534 879791631 650814223 703968862 175188077 498318656 531077675 211070025 146336418 42833559 769757328 954279598 272463381 507334552 142795534 856077842 129103951 344421247 878150801 207391561 676301222 449064792 127031675 107970522 863542808 402436658 884054197 765725733 97883959 707053894 863550252 363405783 862263765 906019800 445384143 862857524 98254953 86024367 507691218 473149486 337791214 182792422 123783982 483056615 91034469 889651661 852728606 397278242 330393663 859957433 971468646 686589100 563654463 330926364 596175290 276053234 115554675 648517266 749260713 540500040 817314605 397671094 356756848 736656417 362996111 577969491 179930280 608699236 696709481 116812689 395511062 566418893 883219567 733993180 10477256 881382660 79656562 263339957 296847987 270510308 561510570 254426806 287121854 496582672 325509334 885102289 482646707 879302338 860956104 847425337 516473456 88660529 578306963 239128612 286033294 723054851 73046739 439399940 616257601 16186319 987986195 306006820 805274628 473632682 244365859 300959233 232524832 767765461 986558371 424766912 272247239 304974483 984066603 750511389 323384646 699220327 247563658 917992494 950603436 653750979 245459305 642071625 245490389 913482205 75865964 95864746 122136850 208315664 69798926 834620942 918116740 28306249 33234394 645947420 701165644 680881572 539469550 402002254 514578768 415893775 600897769 298049074 117540007 782919064 348999077 409423548 213724166 573869453 484848227 988061961 922125864 359752336 86660978 658405969 969963630 728367082 297077940 405530799 189651370 884901917 938690295 232305330 33609912 86676956 157205786 411038119 47260644 206808035 123838864 431988301 493356469 171347220 577542884 11024850 102815375 620261238 827874333 328251043 353309333 806545447 667066356 183972687 61058410 295258671 798764846 820484412 171750725 412501173 437056788 981253077 971888175 88257686 722212504 387492901 678205634 776490110 914435631 427884869 212453936 608577738 415008954 347796500 890135316 103357603 476257299 39409075 562368763 548501079 714978285 976854692 191258915 128354918 972138810 47539242 989452131 104263061 81866235 200698922 298679189 202918530 367676506 692498698 165557522 999752149 822382718 734460790 343252210 806427205 139496397 698577142 393180783 292357587 32023442 588021290 426824273 414456266 795927006 432242982 522621221 388201812 849065961 296258773 23943895 510211014 480019503 528083738 36903298 930788374 128201758 167551349 286322228 180198931 330191903 151219052 130270219 600018432 468617831 100866206 656082906 255012863 193447446 664916698 921128969 861503007 140424568 59581811 417577829 51333945 371000985 147835149 826009252 986210463 820397525 921330149 234991446 952955495 808191391 852730866 626921846 196469993 521811927 17534524 721760318 845283296 321940051 595610401 519062056 472797639 528042284 330961723 86744393 447887164 203234650 537514551 387212102 890778823 509426176 625708735 587613913 50679999 57989646 154714042 867174410 834746097 34416829 309136506 751966366 438624737 267673976 789023671 167176248 913656141 479885747 607039897 657842296 966973303 7689604 911269825 868993897 565834658 333528313 316902876 988100487 442682607 211537517 188857438 553728901 403346898 865500675 276558961 612066360 172304027 460924747 489515617 870260211 219703701 644228316 409181874 646927397 719522344 932550035 393907604 505717393 29694328 61895103 519304650 960869140 723519785 929603905 878575922 197157082 9943854 1898238 255099566 264543664 708472819 13570582 849663055 724149643 650034967 278155987 724633904 792137035 813879629 195461520 249416048 399739118 584662377 79125280 918258941 193311715 193792962 227277833 894793398 144972724 171201400 555311988 618389427 704357944 63700037 984553245 325468663 841461350 400471324 522049238 656053138 713621326 680351333 947712858 392762035 176549844 106373420 673825609 299653283 363539052 495835786 274469938 293564155 150908284 990182196 20834430 762920257 894653015 52550395 725321379 808915280 434283412 424714804 996767039 348980872 711224470 235359631 686896345 735970143 216190548 112406796 161709566 926108249 1974963 891590626 279144377 335343975 836391570 538829060 194237757 542558416 610609579 668407814 418826421 315974538 375951557 210273303 875986322 384182191 337578103 919819484 424262939 272016110 78819246 297354859 680371624 386792751 197239042 284080558 305617096 889269206 507682323 141668789 548482630 427923163 340441651 547766399 800497770 63692451 204785411 714957875 447250385 126629597 340061711 147240520 435242463 930572579 285773053 361782860 474055045 731856582 266100696 435124505 293730821 178541835 793693368 696011742 712709766 705660499 768751319 21376937 252613407 763502595 885407798 319598795 966099997 182522862 129441822 612334382 244577216 537571312 851368926 488990469 189566401 960796667 388783151 273045266 285427367 471763350 287566973 503612138 812560223 360150984 629444932 165896350 970404050 261370641 105267525 158964605 352968824 268115669 417607979 434885324 154835140 309261029 429073989 751977706 737113461 931563360 360415235 138751461 492810576 513145793 510410227 221494706 921838356 268087341 833484187 115830693 843335813 618190253 42629218 925431916 962383785 787745717 988986660 132568246 16326188 430906104 741332587 293330716 209038273 396771612 220529968 606473773 302013993 157572780 711448331 528854314 364522384 184857054 229154316 367045903 917927489 720126574 892289250 38227304 92009288 871172610 748572867 35894946 124652947 501973035 455289667 951466485 809603778 392364540 601085692 967350754 677384101 851894132 833825396 922341016 617102836 234619992 302676059 374704714 300766681 951454450 536322337 712461803 148146824 57012154 780523964 772785082 335955247 258836918 602126803 166849784 67960381 697466443 2115097 875369127 574648117 408761935 868823519 630729933 550975608 506689442 174622529 238426368 949701402 134208020 692316271 864329600 616277633 176160233 739528859 489080952 242464350 108830773 778288131 136558056 916590566 833384799 352497606 654749326 570073865 472206694 394526115 377354219 523452574 837820456 876923679 42845855 827252240 491582868 38715307 786584966 978226399 499031274 590221619 173762855 372018030 925951870 274271679 194283487 976546710 96586640 22663425 717381582 181730096 999844545 270451714 938861666 988129078 697542503 966364375 314468611 430341345 393502961 291281206 489077501 458184995 52759468 740455558 897719628 579418064 271407465 704239805 425558242 862200633 218908343 61057872 727052317 14066771 622360519 659760068 261985333 659189178 844572125 941470854 332056398 137697380 451806007 798183562 38672062 110400304 832613974 206579454 968818189 475530792 754819426 930394943 726193151 812105208 322196113 203900906 173516719 743423046 242102669 186102182 379391284 583818435 907108807 703368604 478164187 104820922 835224838 48199721 27251550 589986965 543922909 522145907 215167601 749885458 483227978 90760791 761923386 488225446 466172949 51779249 109070012 300794924 531944011 337453514 273054548 173701994 141462235 732007657 428758518 799824533 393969533 718309848 222895101 405158659 824599477 133166597 100330578 914479591 837294827 723506643 854621024 503398172 488124991 825275593 156832175 665121021 835815663 35893914 702132751 841706102 92259896 12279188 490720178 761569656 455992667 953417456 878051563 948648114 711912575 540924098 224164868 747625433 174917929 815409548 372578640 393009291 771813903 407471934 902006593 167681160 959432208 181560570 39873758 73388138 573992090 298354868 724856264 866113744 222880958 510645859 371202453 17009913 109076727 726931807 585985656 984930385 377130039 704807811 446974272 677890237 590642141 58224790 850235449 928732509 732400969 592038899 28870221 587712962 322529814 176604546 483141913 118534245 826107343 935803376 431362511 428832426 39177319 242531996 545565408 694050957 939930258 507990860 52536072 271121887 155875097 552036172 382059201 889004954 776519856 282072800 76288075 348577772 213637205 687776530 828289691 879215333 578064583 898035367 912128179 204929104 22475329 863085514 526859877 416626447 996575181 108150118 533684016 319137009 816718300 1073973 681490863 886653855 23471793 902118204 98122798 283829771 869367641 812430768 82711859 801527653 392173920 112892622 442612938 536093651 566583039 813622922 849297489 394155330 358459918 459884873 865566401 648370795 876467421 912483995 174096794 489728019 244094813 108650085 679795239 106659446 499400237 465554210 641729021 253794302 406734654 784537504 660883073 262063465 244874438 88644589 594534138 766731254 645151015 947969752 919191301 107430514 74295779 916767225 744877742 657347263 897803898 386162580 996027803 505034454 164615107 842950019 338781458 802809740 703571473 118944902 353073415 241563896 843346344 310545617 962105161 39874516 8609706 720178443 642596836 947468190 176004592 921907953 577194425 190366025 280866462 739289467 72893531 195633811 403823004 653396712 563297072 933507847 102569749 689069517 286465576 892650629 889270586 712569170 168400877 650963583 937403824 718059504 879143310 975215696 467067857 716272293 61307768 410911552 152441697 661212546 230797970 376158673 431019872 868711613 176513817 445472187 110357493 876383484 977617012 291286404 995552612 460193074 173362208 191657263 591621070 462041086 37569855 738137281 677028979 876527151 798547501 495320588 798636691 547283188 510298022 514364254 703469450 89391568 62446023 987921857 715681246 983618334 484640391 326062069 90093872 901856522 948788274 741474750 890802832 507455802 316897537 796253164 363476061 212922834 269057601 714859938 679482621 611266431 82490243 288396177 145539896 393138186 827959521 229742192 74801365 31698246 351693861 614574486 643306097 817471911 437632668 212413024 493385244 662820777 104954317 786394956 333890956 616654401 269533204 730200778 191601432 986389731 3751763 794032729 818983392 708755897 522039255 682658618 374263488 43785083 90691196 169894031 539536582 26915368 205083982 563927339 632191458 527172812 359279209 575366791 913610426 444872600 547379494 63252830 614060662 908581126 896221942 94123856 821731596 266293263 239550082 992333196 119430215 34622484 431840627 954541947 562669681 684724086 523998397 580825079 95336190 776637849 282292850 845335665 710483294 450788843 336746430 864777344 869714234 91852924 130614416 245629668 436776568 825496924 151831394 735628477 317561878 978447742 697535408 836374690 757727321 236436814 873463793 94535470 783445977 649684814 511728905 424174403 64066338 198565100 737907933 698449913 351036747 618083483 263230859 243640038 56987075 304854081 374849557 209276887 448681193 196435811 792227212 325917389 976989737 828432235 111944329 675541235 510691737 856026232 564577731 320341719 114008738 346736901 34534319 498851961 870247369 847245035 694269134 791500634 166214891 847712857 398003697 823581603 27174243 13044984 564856008 262733321 676827102 585788257 562013123 522289481 445116153 204588130 258109520 968075472 260351565 764785708 833067219 184106539 623403382 917822906 12912193 720412677 960794242 886368189 234966099 808589071 196393900 678109395 592634990 736937909 788416342 373100932 597824040 563143611 402934619 310670474 442473527 931999040 865362554 659791757 315898211 853355679 964368591 490350460 208176240 876598793 394383676 175699232 4011915 797545243 964079649 378317967 16380985 192218807 637672254 676932604 616436012 804963710 188558079 744234490 512433797 188143974 29925304 46868459 526063798 387603269 989808923 462022519 162425139 835747133 744372044 845734345 617305153 477299257 236684550 218268659 112052891 257997287 910562702 503757833 610319145 684891368 20847432 389186879 403175857 639292144 522854809 282546769 624348620 170443393 96701617 629910983 409262463 821349753 366978868 632361596 679743004 685341457 940698919 609956907 337138405 177989715 886426204 703981399 86975412 842690356 257761681 490321464 487291389 469741283 848169059 696283141 277608176 995555430 622779919 227988353 481376303 641609125 98912554 775607368 155919986 226649097 972148582 875271876 306506160 838424546 433881249 666279180 309952465 415627146 488197986 962962076 560406706 813457366 818392699 388904555 812924570 585910677 945376494 303083718 580832095 608893144 821786208 737330016 885024319 270255388 513150285 211311206 186788072 878193209 699839833 179773969 77797216 361236115 721428211 563256164 584157915 929959479 524287297 71714823 876010833 389984041 79767802 946173146 547496367 535511151 666174560 640171397 257954897 627277222 81984886 668160758 213278940 366940788 660047956 512497927 227224934 120754533 381358886 333350474 470060449 989920941 250165341 783233350 254010145 550864972 924540174 335311935 445836558 812727837 86809243 955206374 577002730 812876691 27790823 696000563 795330318 671952082 935926044 930436146 534714398 177741637 445350378 408778487 710348329 992753988 329194639 490713679 843906313 594125050 690497654 272320616 81650446 147243046 70859868 191418784 502665375 127807671 98845235 580791826 559280485 561553791 755206284 803160324 629983319 372379673 6449032 157262053 536390552 76890529 69753728 441668046 491012604 555607493 270476526 425574168 313829361 363710274 170008551 979145189 384903058 41949011 97081021 681569315 300873501 952842773 264297582 684096705 544568841 912591384 564797174 302858100 353734113 878941573 56444285 596458202 665647122 838171652 775897874 578622572 231384881 257918074 943888385 469260600 654916220 808204324 345857310 204916920 852586654 569274201 242288950 430165930 832612609 125805638 266035414 644927207 806656636 115639667 433846436 657628678 306236580 526882609 930887817 92992710 170978084 431736581 301984622 88560381 375443611 864959474 147783447 352514723 884067232 387109420 20896056 676086945 131876426 536863948 810969885 773536883 860444002 967207410 724525883 194661158 367284952 110099905 878902776 61550885 57113452 392134140 687432060 539536526 938690710 434135914 554799001 645311302 471490830 971686707 4736088 384938735 740059327 365664408 253424550 215426451 293000916 331150688 125188018 225163550 136086128 741196651 975695992 930916908 488548792 507154702 769727382 456520630 936181927 383581111 919566747 314782485 634147897 427384406 131465181 761223101 279324412 550205948 401056475 915110990 682771017 600817710 364136665 434447508 504978808 240919690 496766237 354262834 876822761 152415721 654548272 491193749 866769969 31243475 866799372 183935694 427863909 269273860 429881102 731155870 929992491 863098045 172574670 192115713 33678023 991994581 386496440 929087089 432270330 775834565 545715024 698849380 193649382 659839145 112320052 614836501 685238119 242506975 930586387 238830165 555117968 936696276 29497727 655293950 545143175 634265654 394622894 175559308 831964457 459102377 915516018 875486093 330805230 462663679 823297728 89576941 841494554 708176496 550902191 946686368 579585685 799511977 626436237 964513187 185655751 111255891 858880214 394641963 620953078 86685546 625307763 854842727 815427013 320819649 511958311 468368793 99910629 649327553 903596690 35029614 459104764 457214340 880020502 86770684 316691498 982329617 581222534 417892234 614144886 942810508 954634778 803307303 103563646 243509401 80982382 68558537 652482546 230553902 46732389 910540814 317950972 357164651 292218183 300156267 211229743 93657071 513505417 259114221 721856572 112219451 217789996 285203893 664285959 214898368 302617902 956961976 482777280 671052703 578117342 78070765 529478717 987464627 919098225 177716915 702886888 289502390 395798779 46533568 141434731 521627103 258410492 633135852 50336920 137804535 665004903 521667197 405618340 616617794 484843335 868885143 226123466 86860474 104834109 999869254 537699031 984190348 431012740 10095488 949105995 39865860 383319455 395712474 70186759 133400966 188262475 113948887 592858201 357778252 529388441 459248403 941631613 809229365 597219068 632251524 17562208 822826367 682889768 126091962 851754522 219248222 614475341 244923882 424220276 418165719 948211539 82314146 559094091 416752144 198630238 506272006 359367288 621556385 205253324 829828660 659277629 480466820 419059184 889961726 589064398 587691346 461702159 507152983 49910281 178615632 269366834 816710199 427885064 865928470 939658865 945025110 359153627 332889431 78078386 556300547 361446657 73948443 440306973 450988745 606260366 354343854 641533855 606743823 974052154 729359599 178955874 291390609 166990730 224314900 493626717 452252052 506233590 997492321 958987321 846680858 712149264 899910732 928398356 251181909 210128446 870866251 251414612 39225419 490354839 464489700 964748093 3423623 50590453 106285719 259863117 539975629 160703744 923920449 785730959 429338864 444650271 456072880 765368674 610968407 136179857 605147875 864482686 972474646 205503656 638693742 297463863 522038230 737419627 554844802 917184260 271948785 447284119 263502553 218228 466153754 860641819 384203088 47050486 382275790 627226240 488980535 49087456 456896945 167473414 262219075 737133818 114358753 167118864 341315864 850650824 912092936 803841600 742454570 628280227 259905690 64188229 404601378 106570837 375496401 174823663 731429873 922125521 745766802 842462920 80980864 888839774 938507927 69272963 768507673 447834080 530871807 245343615 584120033 23431316 862424735 268676091 55701539 756045342 506359229 11377052 998301573 995736430 66026377 295143075 535561802 975448364 244198640 248355745 953611616 666660985 538570079 677195474 979948218 690058397 918096414 940845016 434506387 574945029 389727939 339640396 809317162 855638584 859818934 782404591 322910023 447330475 710262746 539939171 843389936 271192802 564582185 988101061 779710665 851590917 155418652 709086857 908106473 440581837 499632862 660167557 750904896 707984061 449428637 29817172 769088332 252750132 606927505 268819963 813172602 334042418 554516109 618264556 553669899 909524617 834547176 320329767 511740667 115336934 843408256 423928043 925022491 974059104 195290983 742166219 406050867 954711003 455584181 760708660 945941711 935368483 168671444 234950434 170439236 609756331 885475674 559249346 775049871 149147592 556469510 617668208 591876054 399903721 17832726 229138514 26195195 509308975 595039568 903538984 155152111 262989031 890982023 672797001 265481907 506279549 833521686 186795537 109741423 855408706 134833904 46192703 701601739 501670213 780047653 205745759 557019495 914689861 871085255 978950562 250906469 956564666 740440400 350562941 458476074 339904726 247853432 977973612 438646760 60722941 54627933 889408347 598529235 266821179 418574911 825841498 609130767 226936848 856021786 787525496 643681209 975314902 222084279 113924171 458636275 948238805 324309315 266288012 601645936 348983479 671177815 142274351 253024260 273203254 903402861 729491915 166337311 840973630 963843916 127418831 453177577 872635951 360962279 113358293 846760373 200092376 708473117 583405263 388490045 687955175 511850410 482743375 463506345 685227370 760281939 186748140 993077098 681723120 861478889 509136867 256652161 875961870 565117935 162790694 106040284 594681072 868494602 740859916 262687279 639741020 581840149 15664723 344042938 472634770 686923210 407059957 20275230 907525167 608529829 351834681 334178316 925118260 667479490 434286414 390359969 390517448 345885941 124060195 471324150 426586126 312046461 217942872 678511376 914323629 281751477 405962075 375062052 848070475 254214818 932524013 561188452 141663138 83256845 962957790 65873905 41277406 603792613 425418761 716247808 687882861 608816416 113910064 686797071 776753983 484625321 620193696 330626070 620722719 721990024 810964155 136117948 222558541 187993926 708878013 536161046 632635502 921271403 899278473 199045898 452325679 563377563 309407067 844586308 381464189 511888694 507483742 44494956 803267404 40385021 372536107 451621712 33748079 145016489 6651775 903664602 499781610 91827586 683739826 244631014 241346065 567521512 116654943 446388684 606569 632924895 165900405 293711161 798485794 131071041 903565719 386470574 836910164 648248883 929562594 952611737 675494388 220480440 340525848 655919478 44775550 118445315 991633459 78483319 220560308 753731831 972076234 775417056 68663053 596024298 511670935 361296481 644854329 467480963 720255071 731994034 498512896 348870459 759472350 728976216 783429225 520262945 396682805 601028070 535918744 30262363 830227240 381465220 814244905 478280274 329876694 472325138 597252966 801866823 914291099 87496966 502353665 738997494 749122628 909549027 498679775 522196941 127915483 37029278 938476524 491554482 419107053 433211640 841907054 472511975 196537699 574742230 64110162 674639981 126453857 376847180 907204008 199783854 2712553 526120698 908869613 788579336 505464003 469168602 675193101 256979594 843582322 612143336 920426750 743245984 900985713 721131373 326341038 945058681 661414145 194300879 851650546 494936173 668840020 981317375 121571061 79185077 884048878 869261821 120802088 250965528 461968120 795444234 342333145 279121130 141023258 91492126 740342622 751081782 773022313 698809996 961029910 94162736 218382594 620315595 611973686 68818317 704980033 758522418 332332987 652522143 127063131 955465798 862191744 173686728 573895917 564156645 634688556 386600690 822755580 607236996 422948941 45300186 774975598 275843381 858906092 298389544 225807473 807669480 971403973 513816061 612152485 16301103 83312443 393605462 92092957 860752857 233536206 613127101 569398715 475379408 394313483 886360046 36222884 819432289 331373454 91067978 995784865 444106833 284593114 427442615 461360176 143969355 812385626 932022079 280829920 642041208 175453034 473593592 700516385 280228025 620163764 636971412 739488428 252146854 943386542 583176586 460073647 789374828 616368081 491708188 66283092 878973905 477555787 637552724 693516824 260340973 626885043 330368875 125095507 379271630 109923154 522382774 630038271 392237258 768315962 138235605 318876901 623034997 277454387 847999520 325807243 48655978 786955219 767267804 503229156 900443361 432206773 907407881 947312474 512867787 480194612 584244780 71864007 152410395 384315461 294953001 80940070 39482489 316572166 85531057 948905330 401547114 44327978 650982304 680452936 494240887 498895896 280875699 819969141 255389574 512645624 540979550 259573362 899915796 414309809 132298657 933743669 740165488 700284109 735300630 694223434 879470036 527751636 379561162 607918056 159741126 599960369 997916251 198222288 288575548 34079772 508165923 917404050 489394280 862507386 793806239 272989497 22963871 999417202 358026682 735250175 965337961 193798875 734099976 728012639 211166894 835868010 723468872 893820472 870761547 179141060 596048632 932980698 399407145 308890507 753116115 349335816 356797539 798885773 208195023 188938533 349376479 192226176 207292805 991272765 689849658 102956348 130120346 961597015 467096117 48129915 154970544 565506092 755107590 812073701 802364262 523859090 550103508 8415052 7563485 697987024 670160395 953275227 775601652 470821456 491728486 799194075 506474062 175180804 382973172 368795429 445594982 88406428 425877531 958095985 49071511 282077593 475103637 842404924 68619253 248080746 742575514 219029530 26544309 57059065 322366274 758090943 598799666 84103058 835570511 29873652 448275208 846092137 213055525 728864735 72390435 531453097 502445481 669531215 580553165 177394646 778145097 287215162 584700324 546527058 323341603 780206238 370935607 507465125 985514162 150797355 117068603 354442857 95325491 608080955 995139002 524679159 504650422 394382832 633229815 144589000 163378240 57598255 521012658 439117243 118789702 563912082 209820134 560575557 611164909 163628649 426456583 415094063 265078956 813194392 252844942 326515596 848916487 92032147 2851837 257304924 957824199 566244363 563614086 119573701 677056336 133210836 312345902 66622851 794548262 133839202 592531177 37749089 636756138 945681580 816032800 336899163 730023603 112120039 341967620 709848447 844515312 715843068 159855448 90299379 280807895 550494534 41980445 217127299 166095614 319344789 565914879 885558754 569364804 528152837 369147982 402829915 892394814 748207876 472352057 740568689 192795989 738108295 905395328 743474799 189087387 555720585 802210488 157244199 821794333 665312565 32055102 306591341 344446577 584909766 515831440 641426622 938423137 541937772 765638553 609126726 667964895 546697215 773118626 485697941 188980465 679677123 855741794 499961788 818343226 639856876 99004937 520467037 430724001 743965814 897788158 134931177 700600212 362931460 257824140 365959989 400467740 753950961 627900006 381539927 535094056 196989865 963447983 616126113 617774561 942269618 381801542 132351859 292750133 717276417 688772282 254926018 783319914 932669160 391609371 491461133 516693136 867209094 646225285 125242273 627771026 873067596 873630587 860965515 116742052 710084704 401452182 743353266 758345492 991161612 563871028 829028195 363341708 495420210 249144434 462635972 889574250 816955008 824821373 28499219 230519025 649440441 747569209 654184692 985607715 319269287 786879632 146562752 65579422 15835054 539144665 402463126 905657669 362541500 798126080 390274622 795054264 431251345 439683229 262142336 966272945 202428347 456386240 466026642 621550744 449606066 477762851 153050962 927360910 980172986 678090568 359340053 123578337 355953919 761172883 642213022 591661860 814602964 865545198 723163450 952205202 428539011 616621518 784533049 66155283 461014537 228596147 338372805 176191181 939019640 509620038 280485878 866047388 544885743 513296283 868246121 468612690 550568886 793368467 85830944 247247303 434175633 375476413 959736120 291821377 311652322 807318916 874071908 127905278 600084931 18638562 253093744 652459818 603889980 495158967 917647579 576086673 296605225 574766196 791738373 327170410 862511087 993242437 301552785 661574657 142622773 82970628 321552680 257638523 441920789 601525021 786409690 341686426 459337388 777193304 433661946 225691705 972023256 319023427 749403311 883174492 194645115 314476515 840879463 729040106 357748667 503640653 969521108 226266368 624279324 152307358 248266311 193391487 182303761 150612471 560143558 468077769 224430948 23867799 3189475 84401701 6750777 250909023 62973929 725110960 47308703 59836073 464051376 953603001 644363186 102293240 884347225 843782593 37771909 448566960 162775312 520736254 161691806 498870835 621583356 478992581 706993557 96021810 824567311 949181218 413474295 829802153 810550076 117866691 614349860 895904689 308618543 241743345 59481301 195013657 91285702 381495481 918692268 499568406 36448880 268380321 574995527 494237899 31898891 654255969 502760657 150536886 229051967 674970555 930678536 234735054 497326680 542719683 565638559 344031866 137079611 495591083 330887000 562930420 863081246 269011870 977724238 777893161 228853204 884963497 977798609 237237040 521312098 225171343 908112040 424299392 851822639 249575968 731045908 574724782 787336133 37624228 93275078 423566390 929618825 763333938 786230847 178664664 710905004 343370438 74189466 224736696 258683558 369564679 270715766 693633260 6123104 163491632 861327725 356198886 867964011 362976068 271326389 830681310 663258470 224132211 508911106 963049831 346676165 573773734 858892562 546000165 375287127 675338363 131335282 189137690 963513193 449370870 800068379 215215263 612674960 656169053 247862486 697111146 678846109 277863361 676717767 60304151 849204709 191057110 741292391 197218393 855034709 400582184 636190862 937568859 981994772 589895868 779771573 454133628 910946215 111378986 509318152 303299047 54501664 335840477 831061654 361670056 19172651 910370982 808266110 776389017 990630521 416932772 488791924 426049197 840565203 699251677 34267295 426108718 189275192 997190483 944122562 176255493 676280399 181913959 895982600 534241688 707656740 343905348 855358318 605629744 647345149 860084178 13634423 266726836 594991386 371259911 3658409 858685683 762448619 4433254 190818915 308296377 325487700 552350680 939167773 65621040 529332025 743282821 851863813 229072858 964486870 654099515 162335618 233862415 478878365 401316941 250183406 507893188 709006492 503257857 308363802 632021908 658514255 81639811 373095580 728846402 294965332 536678158 899295874 141710385 250556648 615040052 630575333 77478991 19974595 110552855 971950465 73781186 84513139 895938832 365719296 637278059 876016738 604432282 810358064 327968502 30413777 803683262 635224761 47788871 887691695 159133807 905269349 155388365 41665549 721340873 958620851 224628214 201787690 187127180 193760103 482647918 393910714 80873089 382284204 649838351 502351111 299038411 783123573 609076101 56433894 861593547 629397703 704348375 901490772 753956927 565497930 67132947 481860932 604242112 495652084 707539067 20948960 524044151 944170771 563526977 648142994 906596972 221139236 478335122 109478931 528629821 849666817 843658739 345821080 839494082 878292532 481673061 143860822 177716110 668032466 794116091 96042007 297642400 381967242 30786178 106461481 681647962 985790198 40695634 216287307 507840102 321406250 165207173 507965277 768266188 43960261 77946962 415849909 17637893 732575531 436248622 11070954 811867781 817316019 551381709 703938742 57172484 840255943 265522383 668351300 559488678 362857678 590894917 206910539 104188631 681573500 999343891 735426105 611674832 196341368 345580593 840956502 385155957 208602141 794414532 687968165 596846223 749904161 520496461 600050238 230259109 235156522 544411258 776750434 133504370 114656178 682996332 524065500 657173487 628080873 117802209 178099695 382098878 445390602 848113780 783849768 992575873 181554808 458778343 213932301 500090693 69644544 489855196 208412911 608788319 759098202 823504505 936194488 209282488 739250464 960851453 412842527 318663637 27485308 236461961 769659867 559752331 883767046 517319076 14481082 27605875 428844483 112173408 585757904 589738288 255959447 375816226 258526851 49913267 806968966 572768691 594557463 528712824 436071855 584558580 175028886 922776609 67495439 134829889 32480730 219010805 524524175 964647738 581766441 531250784 508339621 18684220 822001821 543317863 698474060 228931465 304607282 881919973 610877022 849192785 639857232 798124480 968428689 462528039 261349883 814715912 562947894 234597683 702194680 91472051 918110090 848583963 863288643 367393252 865879447 745356517 153161468 152513725 316513017 251124835 551897947 857597361 819004545 365517862 912082874 191484320 482366374 488045876 228276048 413256164 141188569 904104229 499433994 479964210 86534567 927888548 864933437 237595258 257225396 723248436 326803356 581394956 608845297 964621716 858018182 44187142 481704697 294671103 795776390 944221353 836495111 116817554 926011665 426237056 820579080 467383174 11268020 716820855 394869849 466770294 776423798 227769891 345352191 688384218 888791314 244476297 52936057 157877731 405137855 917168942 185038792 756179313 590742934 600990544 429102343 467131439 551755240 169456359 816881465 885235208 731929125 979100968 871269225 833732935 38118999 927973254 746255115 514614805 696503964 974208596 265276656 698583816 182299070 842009532 493012123 138612857 176837875 775806114 437463556 559814919 931730717 218114051 5842688 405312792 681124540 797162416 655675096 802646551 647670423 441052362 724905206 811291973 160567495 674262344 890551155 788694390 905057458 120890935 133375652 332104790 85448995 270718107 986624170 894857556 443415950 435794511 182434838 80531199 744027625 643902743 391939490 786565449 124883344 756982100 809107306 454722369 647687240 392197219 49660293 746503313 845347801 92181013 287752850 563149519 431823165 441424789 444710642 138391024 734763109 950854278 972245071 964395586 350241477 784083317 226116271 712726011 981333018 281177406 676684662 500231851 302912696 64197869 498151318 140705053 538213170 663229969 640973982 186229807 515725774 743270623 503052574 864336157 536348956 338597480 448211938 643806996 145330741 524033944 757656280 58371230 893322835 552915152 455561592 844784347 313149622 453961649 152124690 370760132 830443121 207527963 771429452 140785586 311603358 357236526 597161057 748072402 986170400 890868313 147023507 470083146 32357221 260484729 805021573 501287916 512484129 667681547 448032193 993997530 653471712 442089194 262270015 13132336 724444026 716115829 672125215 381875824 719161910 100977224 376549009 836717210 445293242 265080393 991338539 138218721 197974004 180328386 513088104 740324670 488118686 549712923 52955692 786564749 370055227 73247796 306276150 294054450 339117980 654556539 444610745 393495013 611519828 795389093 983837933 61528215 106106476 827472104 62052209 642657417 779226848 628159013 669846101 811533014 987501334 365222317 387811072 485373259 356105994 705574162 405323175 230981184 75287599 421685552 948545302 284120913 922845512 81677709 403641455 102643519 288948596 996102398 647218057 992222387 139576775 430710615 371252916 193040916 514731991 194710575 445032048 324598035 645927367 11638634 433465214 734986317 718285657 114573009 325490763 193894085 996006575 35009074 341707929 880775668 530994236 187770019 478129060 847036887 678814347 157841471 205706300 203709535 154241473 815456376 370214236 167181608 649150387 946272895 96683260 196446237 728101236 831936441 706238483 494847721 170987915 903404389 910274262 965340834 30492965 253542443 697423442 920648362 39576937 854179887 895611094 949280115 569532131 94262548 587300611 684142996 204682512 348301135 974833822 596465683 444565938 907550737 385306501 974167644 806463039 902909952 304153897 402262938 988657230 948868078 382020082 353291601 615526789 35095579 136870910 194496875 756352078 422855397 231040652 224872663 765439923 229566712 891688740 48901964 700416220 544183771 455625604 960662619 867267324 857146856 789156569 749052807 251451556 358827349 914065187 354660474 919580905 465281272 384802798 112432453 772199884 907148343 398664928 988605861 54021573 277069981 272376033 668082867 966045197 201104481 926866126 898326924 935245056 560635471 768050254 447287857 804614373 729744205 459455741 318767919 589738401 902995066 193492969 251113987 4972992 714923279 254993025 801955035 885915648 823756557 558886159 562343235 89939660 364796516 116456182 122043169 621932316 442646247 678880869 319382151 865618329 344482689 636333768 587347828 79561820 356803302 913751866 801433416 656181960 599395440 231169728 58555193 341145564 600973296 397945646 317639564 839776177 720027745 309070343 575762427 240718815 502074583 494188313 430490225 910525600 359133225 29089866 399240715 776485157 930509128 763525251 941985879 406074873 45317182 670329671 587599623 534027328 596184052 622510386 878383081 154804538 369053354 604668979 640485840 676862072 935743567 465166718 568566809 418205446 663842042 67097185 518905165 967614485 941849674 606281469 582848196 58623978 520929448 974870493 838732289 654442287 605449238 116405325 357620644 988326871 59527663 390593286 522924742 950607479 193236953 25872445 680516891 375102620 909576982 219846946 891625037 801877292 229602831 612616374 907906357 356682701 162607907 826268126 832506083 554583208 308499658 558065179 445249649 894355254 682544171 593163349 841985336 128626618 346617959 999344473 39253139 322186246 967065652 154963370 210130546 185107121 854568883 222574789 535361621 141368939 112834160 387690134 732950885 333660248 243164502 340827214 969069480 410142693 972755163 723466591 368303160 860767572 748343731 323438437 421801539 56085594 618239532 151467968 935959921 346300644 27846464 832559577 357667219 432444796 296097155 20613657 281374961 33599489 236834664 167115008 411579077 205116112 324885469 117739576 628515089 502723926 560399378 613998066 974643085 216544065 389820243 156313179 448972165 598375508 503019293 965899114 360774614 21098149 351021470 65471285 363479364 427619624 789069721 851755234 939622849 854862673 173890073 769455120 236669632 921886174 837599323 421585826 496825157 176085567 584431051 803401137 406779419 951593883 440785094 941991088 257349769 616138622 272418612 861353177 816615746 171844228 348883600 545499624 918947419 206317402 78828635 564868677 773250569 337261955 248383409 336933308 948545095 340543800 983345503 646351239 322437109 393731856 132089462 578662963 463554293 627299992 164931917 28207905 399864171 915120944 434057719 355899951 982009278 4913054 588091884 813136535 511019399 839588546 677313365 524987934 511507467 639985211 66765382 213532645 458580740 243384176 495012467 575404845 300744317 47147157 394141229 771390887 436005550 713445884 255081180 639269258 200062015 383113050 685337969 706181245 483867761 202424641 272749844 401949677 944878351 238729745 674583547 64982012 356982752 242027570 109035094 162151133 590463417 696625467 471010411 528740712 204945204 857965174 226235057 716238336 214738587 417110064 367161474 718336152 122215477 886571633 611614421 353364236 159632114 788797349 494071247 287064896 724555359 741848553 351422205 635720921 172210637 843422138 770473100 288565510 402864058 340053492 779357493 432499913 425915540 849448673 408993888 616923959 929465434 844906954 930520423 92331663 546054097 857613306 103099922 576393558 556205307 552028703 625757623 571082670 546202214 848376955 714998814 145630711 382950640 210254571 882644937 624785970 278364686 509455426 55711222 11121938 649229472 815254330 94875743 688015065 801682716 750159350 541339678 167387033 134023765 42081412 648176921 134166930 904615026 940652252 887026535 152872205 613083330 541883020 240941709 137988139 717403210 64046198 385586401 614637797 559162608 425612191 59869050 865426731 201515816 575418009 394809534 53602227 357897225 924945439 641035927 460833511 543758646 805825201 554906298 768346826 161842821 306175373 585650676 248313698 951270053 397447100 490465737 724246240 120434076 913455815 586263143 84592727 542058991 720915535 974728382 685130600 67335718 336000426 18766837 359232318 859629994 293543802 533263725 504469992 237097865 606822522 703600877 416569377 688184656 171702212 771942471 588437703 779255236 293255828 983594247 743969993 530757212 878636929 725181671 250377330 401406692 236697067 16123920 908116592 120823400 985023414 106686403 699180347 653525450 531331020 313276900 217815530 892953518 669589119 910111185 949702159 407921 224971886 55668467 258848402 383131217 870999316 276176318 388266393 378010504 267447296 553245971 790802412 329435377 116041767 171208456 945103251 974675933 619742242 772039403 336690561 150552193 48827312 716898148 28085739 26504663 627032768 888249488 354306422 643094020 31386789 891903244 398245136 238345882 756418507 386445816 473765743 141468596 70722141 309676410 57141717 657695224 951223375 574176602 193289933 905191155 935608154 974223038 981860565 172649384 469984554 600384493 182094062 155108700 632195103 673879296 47481124 864641909 466068925 459668391 123124124 292166480 832452224 370223322 114267336 15978606 373405833 680520926 222237626 302710352 415982189 596326931 736712010 349293326 236004027 845318235 602552489 268829636 936449594 99114668 305804234 9999521 680234456 963984028 546838398 729573776 941634181 606738837 604865802 824793732 783880116 687162756 694243530 966722337 363178124 187666809 354043315 227473706 609277671 544657616 962237370 125754129 339739529 194226084 642009341 56755402 694457971 542772641 610704100 131602431 919190347 297767631 225286424 292301346 758168539 4976102 858496997 488674686 967660940 21185386 283891978 955225911 293951735 637750922 125572587 367658488 161327799 720499606 910599762 998497628 459013204 196947190 236994584 415047226 308405637 123711520 89301879 270826468 64902648 75304180 285415272 539116312 827108052 926338211 661538052 249753195 303322877 812441484 7937567 601216286 645905564 95665575 512046960 59066087 201583255 585527196 695308989 131469823 571789270 904431562 66670452 973761573 92296528 894877047 543027228 666247966 257062895 682818554 642145813 292876306 776533840 450415406 879529002 660411346 690666714 229327339 291264058 283438565 989274605 948980063 252181289 556609052 38533193 29319092 240409164 111602969 855368310 443794120 618872856 382229454 479468395 16768316 415914183 637222530 115306779 963295371 592725290 871092442 134664265 884847643 512034357 632837832 405447395 279404665 28940000 569871632 336732097 76657183 567056648 547589598 636232533 762851632 796150208 492129236 239839359 550525332 201876253 729731689 615495584 986165590 523367724 980269288 284668786 598325193 439644526 599148747 915901134 432673885 11157549 518484050 157735790 838166498 730718672 412365987 114179880 220532051 808281407 292293837 94975691 359015219 747722186 184521725 43029280 560704235 910491091 712285622 359498371 757277767 619732496 833281793 530445 272954653 302811863 975030718 131510038 135113982 139306944 524313768 963151810 238589489 447923256 132232658 250412745 991094728 505299207 12813526 428401111 959988244 132362029 13016780 764440914 645848240 487814533 277356080 566994749 669788150 747447237 994416066 649548918 691390571 895339188 688070702 783538699 869855712 548100342 131450782 956326584 5348891 287786881 210305323 17901053 142297751 135014150 316858082 670943680 352984823 763692060 256175433 636514730 452640495 908808627 460478832 47684791 91829681 514828017 647690242 403920907 188747598 58303221 816634958 805745903 313284110 790120970 165713820 132614111 15681770 813623949 946460019 448791157 908282544 370795720 182461635 263569538 203790781 156413876 615353962 612058272 41037927 214409951 572769407 861146401 272332658 149769761 774479708 720378154 79148658 846954682 986137229 311878618 588807919 558556894 932173714 469238589 783564607 240243032 523880434 904975791 509469181 979221839 34728920 940328585 985622644 989623648 781302684 529071880 73836343 26086973 242459356 969156097 223819569 125749622 256429464 723545318 595439714 27932067 667596775 203560033 76697586 761849711 301472808 52553154 741217614 127120675 21153817 648374078 420518996 969421435 171072441 392947042 959920903 88229549 449092647 938063531 523403425 810772943 156337453 888685705 368547204 227095960 242683935 155840647 206917667 170571452 356460252 755106121 46160592 668075763 659837147 438051945 596781481 675836833 732894397 653846508 164197405 352602465 418985885 265559164 784039708 580090756 483498075 368664411 236932981 733724365 559933490 375751787 644768376 958604002 542481372 371477170 75653216 471829793 370670722 351932131 376539285 356852122 514104685 801650182 174555429 774572726 301053119 79211356 19959278 808716892 792647652 969797405 225410746 627481560 798580678 383768900 694097333 276129531 771674095 686729461 606621580 371212285 163720684 718524152 466212441 353970028 224592336 864739358 544493116 23296548 711508858 570563493 380689295 600211600 979781241 782402330 287015838 22768453 238192897 773283618 160363052 690070509 881498413 235822985 15138927 362120745 901193803 335236097 157013409 531451751 758966249 200597512 316228624 848409224 292806872 325371511 700195322 961539585 708447313 215387796 460637985 995029502 821334261 500367680 446914631 555919451 926956453 124895506 829326015 210857267 466022314 542986243 255698055 119672933 266830146 203871428 847990356 912912270 300741638 164584420 135474412 930555650 954284461 764589519 921233515 968062864 767239579 468658039 187780763 1177273 463662234 198662160 318737704 475608552 33581019 688973859 34295606 263142997 446132938 621206394 421515859 858011577 913632051 439218338 68474152 604385183 687221549 757442600 586711335 900738772 767409815 795084209 958387313 433443783 237662079 157782547 771858804 199488401 512505426 157441105 700234748 90398379 43797984 82058474 925845541 119298341 67013467 444987340 336059971 16605835 697655593 847070897 595151621 895044535 413445024 788511501 826939732 864800194 70605105 205843999 527226922 223612049 668704594 862801796 455478174 123395706 560767422 323133 341086105 933114091 776578742 906357756 309451792 270599936 681277666 803353736 737023654 766302829 235104406 72126439 485389715 895554331 320413527 759769008 809867036 52876175 217099695 903909665 100783367 694309193 359622449 681689353 780843330 852265098 478975868 41539842 793293627 501817001 239767183 346084292 783425556 958832422 319527263 603467306 909324490 470606137 272571519 606677193 949735699 346769198 261342070 332107267 763137900 105953498 588467004 9030377 953542881 750698384 784593441 97103511 741428102 99549760 467336578 158177067 122098942 404767353 972402957 823722553 116622012 366432217 92177684 208997393 633498743 444534710 641576752 159914878 671570449 532762140 142650852 939398842 461378388 25664804 987403878 931727548 527800902 52724261 447575558 712901443 604845493 219519378 206700954 110294827 748098685 519901974 317665871 663926143 343773664 709697162 94439405 178139160 100764532 65485033 659606784 134840764 477434217 718524657 181408073 810654029 466374293 44366192 283955029 626508403 903426381 887967109 358992041 660019119 805954490 650507707 794228511 383535869 933803156 265768364 343966600 966691104 456856194 274595127 392360164 657169776 91108502 9328584 252601645 317991476 782622059 298652860 502913132 373172966 980975387 215288526 901917345 769158101 862750957 44186827 121166838 155144923 216570414 676609576 813717466 371173497 609916743 713609195 530333642 609891345 515653002 647679977 709693925 517926519 423395787 880024759 603398359 20648206 780809157 790258612 382332124 493566367 653029951 206440921 429235305 93849639 204085837 667504723 919130063 298459958 588717915 906414647 958225200 291002917 999720620 839491274 145289597 205157297 298222547 984331191 693785815 703286015 849450059 268991053 178152799 432794815 787550471 419623487 550574074 295710843 724835201 236135588 811446766 731767257 46608157 757613939 325066368 461109516 908157745 235224700 800258890 937413586 834702556 963218973 195232246 59021837 736428193 587272580 820846158 41293710 273523104 19333602 73329698 166882856 776415777 140566303 54609368 762611270 896913320 889394841 434356670 980346773 720691460 180455597 312529280 17369714 258616278 953272996 197247688 796754212 526966800 327554315 70051161 852431243 806817826 219870879 334343659 274055164 253237538 935644199 951010656 941278263 391351544 802445062 811822420 425735246 814391997 677909011 923221173 89374500 582322683 962773317 134604667 682006919 140165583 514429238 502424894 535312404 142054255 594668928 596948492 386617035 4437646 944785652 128523081 791248963 759586316 715066338 594846326 911645839 357616919 275043940 925863246 957516453 775273805 654424132 709277280 189082083 906244313 56608254 501308387 302717485 360411194 489205002 876163685 513258178 526773792 833339270 425010208 768090668 179943827 211918218 269844768 774995904 861414816 19025222 792062993 127985840 672958277 267798327 374154575 462199042 664573469 955717294 237604279 546852935 378468993 68998223 83690025 313415815 246863627 323678246 336609037 513114628 121098185 499280582 379666506 911533796 788583698 1739443 110559373 72675525 61361345 938485108 760029625 240246275 461751785 940658016 2453002 125338149 142142076 475080304 432513385 362794073 687898175 572686243 269985536 627773051 455274720 941798051 156184435 671116127 58888734 525066908 24665955 892688946 632438088 9512036 874195556 96191891 641045437 442500007 261891348 855141887 953060534 442958955 655728523 108789855 813119625 1410757 265937396 797858219 227813608 601675636 519307873 138789170 5272548 809172561 109057395 865098269 920594651 602247715 977372339 527768363 133895889 719733593 754331790 779640660 308538735 231200271 117615349 393070356 323874426 334001778 953601437 34585219 713760304 198502183 467568823 670864119 150387115 351356405 571201478 303925400 681486817 396474450 794070283 816331583 311644195 422569483 586738203 559317407 494510835 264125841 362880099 691299097 998382084 842634761 660864062 537239589 648292230 116781882 492464653 837442926 31675431 179166235 117671569 618968491 561005411 391636681 787139000 516905182 282181596 356809453 110816074 152202489 325031932 146803109 115791323 620460838 110848423 619304668 234329711 634427613 742955808 530256464 524671817 699517676 695762468 842431072 950582710 657542215 773511103 963215525 17162805 563861194 217157403 359525727 202104819 382702488 101438464 222161991 445864331 781113354 353353986 290279367 980072368 136893815 970703470 693464672 50528813 54905128 824185092 702207007 44295755 556139435 401827433 962653539 113561928 820826241 7502849 600149819 581273338 73649129 416864080 740242719 349272437 372253910 262323350 366284194 214588706 981602141 458319246 677714547 97400587 115832869 447587363 612969755 566522109 439285809 904580472 785942225 701707719 216729772 89074782 732080282 959282816 798428817 82810743 75742718 450157933 884090459 790970400 932090146 874273244 617063380 662133787 378281839 964197805 832429456 54324248 894849589 417955107 672439277 716786936 188892675 641974021 158108136 178703134 580316908 969306688 34393093 801319711 713818322 307941050 37288239 660319541 982495327 427702063 497097889 79568365 501408786 555911446 698961236 792442978 161959248 207332715 890583570 108945963 373203310 852364378 427137568 294988740 410559750 945868810 2329361 50736325 541221199 375781365 616224096 626478590 26568225 35827940 729821699 737917108 663500901 352952572 472135003 248770165 45084290 843980332 26038975 614305549 295734630 784181509 81401699 544171980 63199423 998907286 747413691 807064816 848040803 524548490 756082334 168034131 193144061 726367256 818263333 343462519 581013322 989056547 491489313 311769994 898679864 187345002 146045112 325732509 567352612 593205316 130463928 399927434 481303853 586508256 240042239 62637624 175872691 11285159 568214038 916998199 915954366 340445293 285340714 498983378 290646641 130129102 724714236 326576880 373708824 619601931 902953347 776566087 904157730 125088840 344397471 278197609 85455415 270790775 755169591 293995668 643642390 128171657 838120153 449165726 832878302 6623734 339770047 733082702 26456005 819220111 749223829 937576870 570596294 938951776 896791471 771362572 467100811 922696254 709389422 800614615 472607664 646454063 231904407 154970546 770218130 791647211 906512852 519700768 302162809 130259028 207835439 891734337 681507870 291564244 398267894 652736009 551390838 520715683 183243643 222269918 740106496 197895961 421713342 608299480 446138859 55262658 580846250 71603646 17484196 653412061 428638185 333529627 480336146 131672546 481510567 940273515 657978974 358184343 951473952 645991023 501651534 605771369 427867867 93860120 245769554 413535731 544441846 739324509 14728467 573723292 920239149 924147291 513368216 359890729 88212053 961700876 26265446 412221142 148108967 72608491 963612262 765425545 651849852 579019202 879442904 181996926 383233427 758557422 951981183 260053946 430807729 674659946 446142421 348398144 405067532 848778601 997708190 977550266 72020576 566243231 976191255 429885510 227898905 995429201 48205113 4312096 327992675 961497365 363689360 248329923 783788295 260450916 191235690 848686270 80532484 985696907 663615787 714520309 833051387 799290509 885011855 89087117 375904391 43136387 748827043 645028032 772125695 503351490 916768377 671166567 563706901 828418083 362848088 588700884 140948145 111992170 262746732 73028316 53107949 314002192 562900671 849118344 55584861 783028891 407489337 218224594 306730435 367718246 941585607 552755706 807101861 750307026 939561162 436830510 200715933 635912074 91279392 250833312 250176834 885485865 463240963 870662696 756342703 437886411 360026792 525236907 185648882 195507726 672760164 985005123 487017366 943059107 790885911 283534312 223968912 459253674 603672414 961455230 273596080 463622166 182729106 229954035 569089086 898478288 963148879 45361200 952918557 850972056 148609941 623831116 2907637 509284452 455510544 750286825 810431839 366097704 666551087 661914450 304787996 265896311 215907699 646349612 576526762 325649265 212569648 667829777 235659289 311607669 684791019 35926827 318288440 62938859 896652422 548610440 992217924 427195045 641557233 982712462 845847451 315117528 611729428 789932288 404210972 743506927 369088389 520149820 961519863 749405053 782829668 378872260 433543664 916668072 593168817 494472183 5939060 450885564 488119985 440782247 960871589 355036461 959109719 232578897 141360887 463236461 678315328 500739524 200439250 584043425 869436515 370177118 13226738 158268053 591303050 894755964 13085024 715373149 632668403 560612398 394095666 258503359 508462400 573359937 928436182 879555163 681321416 852053684 302896455 157223557 25045803 186311396 557705731 659863537 615231244 833983061 220959677 882879930 92720376 574436919 447810793 814919928 415532329 151042777 222189217 951845281 326026927 148101337 917177126 436496753 444038095 632697926 454494428 46046391 945167546 152717263 259054156 109345777 595780422 607360012 340386225 837553934 499756660 610439796 308474662 818132520 331660734 682019900 427188644 76502422 77066785 887838287 617323006 210217405 645386827 828745208 796103632 113845599 964896611 923827100 15959165 964284247 841331582 769563815 538430390 429734120 559756400 771692058 119894913 532004033 380464976 841217968 291975446 610055835 12007827 676577826 276738863 350679863 762674781 738859159 867687540 769040692 205524988 277009332 800679904 699374428 274213416 836288332 246601002 23837303 33046642 760664491 852270291 210620814 217999653 799517577 250478222 493658175 286446402 39577407 962658200 69893230 574233785 194410163 211643738 367374553 568271572 725684405 674017036 642337381 2868003 696677425 970103617 744697954 669152679 719921952 175786906 476183599 50812877 430238612 656547373 585410649 273960931 363286438 893516081 568052339 976681823 939912475 536836738 16532396 335502979 846213574 83808604 484654268 624762209 502329902 201662791 201597806 658712900 602778527 854330622 263887489 34827026 344286033 637811404 618839484 84811076 33634780 34392176 302012257 85825127 18426910 962426486 390738645 155465178 623763924 512724582 837944933 870873433 564173944 929517530 613782560 616244406 119197636 464369557 355700298 535362011 830603590 428693025 73103332 877321818 180425299 167195871 516624371 43042639 218494997 446123535 811925707 350343938 984617887 860221587 816506378 53137831 659618058 436061273 482919966 811570478 365136534 756188106 669164592 912005204 594902802 983890193 313983591 450422295 469508722 134069516 808942406 503157595 470395780 884285427 32597789 958646350 948210331 521737173 425677453 778410996 534338796 988477002 928098278 739983410 162636163 867748130 670492644 616256255 665107490 857943770 931774041 538611220 920133971 632756358 72568269 321514959 238695557 230638816 494708871 778790841 336775578 269257802 5859126 579577406 404868732 458837218 142805060 173394450 983459730 813606369 173305110 105099401 994650121 400016817 904761892 933947048 378591329 200955132 244982367 591605477 48711379 823354668 968368650 849436433 385766403 87609775 440781016 405202596 271434224 664907323 323084847 458963496 536479344 687819842 797979530 697631775 136112484 601510259 703729147 745580967 333960270 14049053 312365558 887333844 660721698 242708310 145201739 484373742 486719918 151873836 209425832 805132127 725266803 472554005 805030596 471323077 45672106 974568778 616606405 784915866 805851307 318481051 528500874 325169995 253506748 841735529 62691494 143640714 168080487 785432628 340986531 269752994 314575578 621050700 192630171 543213567 390146394 4228184 786483470 185480939 280150769 63689603 374393842 432205465 773880967 731922942 171246256 666517498 614807951 146458958 644954670 823311555 73192803 465698646 377618116 757318995 136714190 921349746 477682097 826202445 464868308 499102260 768576180 68402732 877416346 152983669 446980872 542933071 49622476 141229381 277517304 411497623 281864384 659242589 554476800 441645538 352740351 18997427 72146155 633192833 104451402 234801449 96096272 379420231 496225044 260105335 982628773 113005396 723570600 570794955 582538152 176916743 740285745 167272294 213495530 693648399 241120529 568854236 890480289 528927005 833702590 695164015 638923937 406531229 33450990 110914152 344166431 335475075 750493574 802526371 834553290 197131404 924772939 487946022 884273179 376307758 547922342 525885664 415039 396825850 190321360 958995575 391443219 205673531 27448482 260226263 730187526 568414455 316756290 889917299 359922253 788841782 49981695 41361034 178296997 565143798 271328807 1297713 401710591 782869301 268900570 944124096 658459511 602075255 248218182 962622631 71449033 5806950 740249975 645740421 64105241 223310751 975889668 289989407 475491879 85684372 362796103 997626855 70171950 183358646 764308980 400856655 970292910 467172690 940142002 690256171 577658650 275666367 831842622 265841135 343687278 987749287 450795955 1028416 134300246 846714127 812813310 396081855 263841228 352661163 422679447 189345264 635526478 15662263 619114046 359481614 834167962 624570871 765182341 688359726 869376392 595308783 824952827 869804698 638513484 721011100 374441881 37243806 714960327 99389916 365387882 273952650 606832252 960694872 976718560 178147564 749690482 295283628 848617626 960724351 559413981 482400858 951081365 484201651 720469792 565992245 258438463 252416079 542145670 757424133 963060468 748242902 199163531 274617852 162242750 193715172 598362133 441700668 602418105 846624686 321732661 395211356 660713808 415001579 822272958 529877760 884002744 501172176 604615048 170007915 469284501 581847931 982418371 351957563 819458602 344830054 969075046 200166776 13527703 456381464 439680219 600894745 71654791 775424815 760069054 898467705 468244660 992383133 103229264 492041346 416656490 500831981 670537855 713950399 310048683 275438003 230822420 190771085 312324900 673649652 604587514 350357079 619593722 445930298 112641856 741933670 516326179 827323031 245116223 451340120 989239154 907877723 779885796 724056331 473789321 183101153 994939362 775938570 272197704 193604921 760372154 844620700 741096572 725836536 712880200 543871575 798375596 326420831 914590288 733539507 94504136 993544791 306709337 335468310 236364996 761857370 816965081 69412817 116560280 903404221 398283619 466709377 88133801 540601312 564406717 546292969 244212223 372635633 795547609 73546144 490753708 420518472 284570727 899190223 663402931 166802523 806255500 582034586 903029647 638872632 952723017 858270030 276801394 837328301 807103813 710753851 790876859 94161127 244282894 217788668 735132217 640101462 59415492 223830085 369851008 935005253 565983125 796908677 342050293 810377675 295802136 385286619 525341065 896544323 115383972 387467736 227345904 915593289 130076014 320293640 460752888 731941007 970207437 843476493 330697576 837219952 172361621 766604419 250507301 327602814 901894524 510375161 231446701 713850010 291195608 266172087 465213612 474148584 73294840 526387199 324678243 119985247 967897879 323032617 917308486 976627578 612184806 346547382 280372569 721937445 376084736 689860699 47082510 359402715 137626289 247203342 958022568 635027366 28704646 118086123 462966060 661192511 49368718 705308725 367554336 685341216 978982002 152814265 461494700 552213362 697284488 727631999 440085320 73117087 657758252 539328664 495242557 970104584 356156061 916910956 184054729 894001774 166999937 341473891 31523842 812496732 351696130 868756486 203813396 73527362 446517771 199227794 541642929 991055634 989966849 246920199 404247194 765683072 449908401 637524012 223464195 759319366 615560632 55827738 604008500 741423355 291297676 599004919 511824664 530238215 201962496 953351740 365269771 370295143 317636826 832503512 439277830 524184860 135434321 160726253 989993385 850374182 46832269 558546031 447495282 142598383 178388602 751232831 985703229 563460948 160056271 10977534 63374358 542728848 547291897 512846629 666126725 35508598 322356757 351579747 949252890 870760167 663595630 68327426 384909443 591883082 564937171 79206944 41298856 951942462 421582011 124842266 214614385 405845473 127730769 953842638 414270565 25882828 24203068 146663304 186420113 895138331 621177716 672083419 231221685 34454839 367770173 314475631 389078788 356680042 365722468 105885129 82642154 206548829 190262674 596212486 88957824 839695315 844424730 259370229 697775809 603255954 185385470 674261067 444825713 655912674 233952983 656694703 105926699 250451444 342247422 897366645 481470004 638977112 29118985 804754687 593031999 689955135 844773939 231376440 716316571 567831150 409305574 125001804 607796987 592941453 438268542 957060574 675368532 182833376 59571057 475104169 483979090 619834620 381716301 341288104 340103124 952341171 605622666 37884090 835928531 914283501 721112032 654381704 677507679 412068083 340529880 399716740 228440730 317077596 582319507 876577098 607516268 365927327 344913129 116680109 861706288 550046211 613233474 370208649 439450550 931998047 37444457 340829867 951403313 95338558 255162454 101057624 297154628 452725883 450938759 880502748 401901080 925845627 452785265 371052909 329106228 795741338 352975527 496877685 509312482 77941318 176178462 30043139 670669858 558083976 116146551 419689664 558777184 162833298 356766733 334781776 866312028 849182844 121291613 853310020 302724918 21510114 546565179 857277375 793535665 821111012 803603877 690479145 464705995 709367542 623896518 308372510 983608688 793735302 238679197 843673948 328817414 368675782 986612025 316444031 100685784 312175542 660784080 753494874 295800656 342106413 127470361 687529690 827936328 27553763 158582752 100744051 833390608 43305793 187026421 5132969 809784785 579116285 567732872 670636541 45519960 775596929 961794031 953465660 833575021 535105670 295779640 392894597 774492207 64187967 814740273 850904894 899919378 480398043 140106842 868107632 59738652 537575171 474909567 862459460 111144705 325930244 528473249 89740433 617234770 699136828 949507542 701967469 185208980 945068575 663492599 606576997 568900391 43372138 401557223 541675650 430047830 138344847 775709993 481358243 962059284 205524564 839880028 421467840 477130610 268108546 194126705 929737855 512990638 793450872 542748829 848340808 312873392 626570490 693662280 643198039 528752550 2373588 839378329 120700767 144288807 135857726 994499567 345537343 246939561 814567571 837715984 472110119 523092095 641838540 39406065 67885082 347820733 801466849 938212658 118214941 752873023 97166646 23757707 549703877 658635070 415650424 620015071 968593363 512856429 147448311 722835811 974065997 277234443 857682631 592401467 222230378 344759607 505382635 905924569 613133278 492046652 304971346 777097845 149264625 973587637 594662408 769014407 553364123 196701843 277769527 153273513 576064884 959360487 490037009 977977271 606510992 356960011 483289657 713124914 321030130 828462200 556129520 418251339 348107955 811210435 927204177 955153089 495704036 993155963 111710645 816616938 567242537 876520897 797011992 399913551 273356492 179720894 571245608 942945186 629732178 632447053 223390951 290929233 227184716 613982422 240828876 5459874 940358525 943497959 548750063 844258599 538800773 661398174 137205760 232713863 982152031 319712283 762781498 169742169 397951949 394871336 255036117 726260638 537492083 40894046 690421043 345725037 444229690 130385743 312799577 297600440 976917838 72589615 258431597 641991892 908238926 836483825 11340127 934351041 364823018 173442 877866847 687909344 356863888 391531478 767652233 816179005 823523608 58568001 58721335 396224669 174038070 869878710 504047046 88392334 687136938 2843094 546262313 136656042 309266103 812951810 759521379 622384108 851340051 301400279 537956418 327714962 448248732 580082353 395906268 95538288 210060467 343429050 636909605 894302085 956803450 298946429 821056472 871605050 765644571 860034633 940223085 931787335 982888756 571410098 617618017 12417342 989600262 257902013 379625203 549709386 798990301 267515370 435993186 844783417 18910438 277990605 690289291 59065768 470411530 656164042 708429116 711142943 164228490 328102040 706429807 459977062 740328571 875316369 704001588 575614851 294616618 110712680 606677211 364752047 936868339 522347412 541419526 660213299 372629222 87147358 870864220 266227000 777528749 431465849 370211679 45498637 391791173 634604380 300680067 483519699 818694859 707045950 109867296 599965973 445658883 504626761 830896860 727728031 811518508 532164042 75899387 150885507 37989134 396098615 568386383 587204308 516726060 408824476 596162628 246956601 817544644 160038340 592398263 417679356 114943140 826886043 126652857 105451403 696229707 579695608 25497624 405723701 155859159 472114498 902098728 46493585 59256333 239423465 895860137 420836247 642586346 228603949 612398576 348001229 353554767 586232060 147251304 624473155 869345805 923773986 926610792 544480866 699463188 700091312 665534412 560373745 32363978 584419067 423598827 688598853 810934041 593425788 913044544 678397399 580504788 236144912 200676000 247051498 733875738 416267972 239060013 830134103 886472575 788458249 637281389 923803151 508696913 623261694 327427494 571870718 347155337 699882317 852171100 69044404 139218547 919350806 665002197 599403426 583855840 639104849 854126310 899927164 392377100 318018503 405929520 111185498 998422561 324260937 578803622 815137214 518666961 434578345 545278878 106821557 860192811 306176541 912432098 53768139 843119758 861975239 496073652 42575431 978777706 416458742 995746673 192798158 882302323 807123803 315537344 967955939 821976270 291006489 445935765 276555799 446655820 124949267 128377369 191937747 13788449 541470437 611213588 631646044 991388104 245487424 456028696 258652681 876627661 307002118 819312371 556672876 287329237 135712332 909367790 502922649 316527079 235922519 458039525 711027786 195449188 116574120 961759786 822584782 667211039 22931623 323382323 522715106 150503054 556977348 843495566 62383164 824034833 537871979 308169518 611080752 377568186 265418093 30422800 539481767 677618656 745999022 67161997 101234185 982669408 410670538 182500058 310967658 248760240 664906858 906855473 655063649 168087092 251278589 770538053 446033411 597087400 858913254 367691895 167711541 837067239 295398774 12484628 635930024 611026500 417595476 576180625 341862251 72366499 573552613 438182923 895737353 977638762 827123702 132467284 612375803 55599600 412572646 710361681 705260250 855365498 845815511 154999838 875468490 453008654 709794858 194133406 52789860 708205320 526505222 161717087 832044432 886087996 585598302 339751024 969520103 396807057 447264671 36843532 97251761 750652104 24961172 821178696 205569241 500429699 553743821 320582306 83103681 747884068 679071856 793622195 346069737 385588434 318386306 152832581 101563723 598275304 186093074 436964348 340097969 571776565 294759986 810156775 346382692 184608366 630277987 950316610 268918257 420113829 528536852 714747392 965341110 708405149 573095801 270988464 312099178 261186508 501696272 453100804 900302848 198561430 443351602 676507859 717706324 538281143 754988462 916816225 453292159 843591633 993030488 620754502 73951493 842190215 341756749 832609858 291827173 675154963 750589137 660161348 51326098 85894354 300769172 443920847 399055695 160360107 913404857 771760590 520071181 912716973 312162333 579178185 494388208 900361907 215151451 412992319 360003836 519135311 428449465 640198675 195837160 967368055 966723743 850915202 446910706 226754287 78660511 755889605 856384804 966371174 999893342 568462246 724499103 11039224 107936952 754625862 952188258 45301352 397180084 197454033 18185751 678467688 897846996 390790454 575995430 978662901 514281988 720394691 569121457 563989480 213999437 457731052 727162681 246179174 142801104 12828568 341774124 733753518 90102630 149996633 492018411 919133307 492840325 187536912 317808792 823086116 563823863 79677716 343139031 146203797 371054009 829452766 935553501 564991782 466334150 820874001 452852363 885040871 604133781 952603153 554767618 29703392 787955180 442618488 284058159 644065481 921942311 230146680 478768070 81948161 601317882 795545549 374842702 416664711 481920861 665152037 397671774 226197510 39995404 673169645 252014442 465126833 240820237 349465593 258020846 669763424 532060566 955468352 473040205 893956992 508196918 292756840 956045847 395926800 876790822 21423794 260692932 84154735 217125040 640054897 949468324 242444949 379356247 995991850 647285700 393698192 97030204 5867391 424596956 405245864 107787061 369540309 727104537 620136380 57137852 85712448 374615585 437258835 347839171 702168980 348361956 406944472 33548188 156768372 275670831 721788991 790587875 125063507 766024264 45734879 287430886 622091403 895858398 160595486 477228096 322470754 693809722 315310985 292599384 995297584 212481115 180784755 387785785 607859351 342651225 772828765 404103324 770993638 717388776 8768098 536647370 269480851 362559145 530596127 517678274 516291513 293792309 496652809 393414714 354753440 220801736 143518695 796025638 229902400 604420467 254805950 887370512 860408106 230212840 91364061 558389359 377928539 375513597 254712042 573739647 677095991 867661265 663266015 428993717 418053183 518383477 247073363 721850019 329997740 264484164 604218684 681418662 243194526 961123139 468575182 15910403 174542018 569711696 116595675 762213489 868888514 704575505 871314083 373399538 450167848 156139892 78994285 481332255 752770715 828428138 503330803 87560771 483398233 809959954 696898693 140722882 876212348 532643257 4805008 900204266 887408669 176515542 174701321 300591155 22395428 104599990 546490224 598818472 539566453 21468401 512760037 295673945 996745335 152603612 984371648 333832501 680943332 583055294 98612455 756855984 923902629 654516529 125211549 132199350 193260929 616743245 406886185 298705956 475813550 320977466 226982811 512231562 281053423 57498467 367190757 721673774 675152462 393154448 175150903 81931930 300222648 713122246 982333510 283054533 798691365 982352956 830381740 889272494 211561928 425059880 527315398 690877214 113040017 896987184 802627136 567384674 330294020 177945869 51749379 915945984 207914594 730051902 458583592 162546417 69033745 525625576 492277024 523050341 806361496 686511351 723059527 173014878 175807300 275298457 431999152 976686361 94313163 873644585 140858408 517822761 498706528 717549298 760933382 640877426 585623517 559913005 199039628 651923520 134379116 326794490 306322372 317942507 369634572 119363812 145079992 948876777 478021510 78607836 143559154 5823684 122646526 122919243 806057872 126736000 222088865 63625264 180433013 781503088 742786030 128170083 238202180 355809502 352982044 726724166 358850623 11791267 77803826 530366110 308780687 626431691 468346369 509627952 289344109 715963696 575198888 206724674 819590101 549138710 648139520 590834372 498288035 109085450 731573759 158296494 856740512 783281653 66252575 666001301 363945344 480213668 145446150 49637234 428400293 2722170 510760486 272408518 886248893 898408496 132874835 815611312 679243079 838026229 186402729 733672492 474590774 535011411 436941463 27880183 784518604 276555444 276865554 948197819 346594951 575491412 228223406 497752605 949678184 975121644 208693019 281697670 447751891 477576026 568186900 308193285 176459188 890610389 620219138 719169588 613432673 840665216 68799844 396593705 265594521 344010210 99323212 831062519 488469551 448505916 563330922 904849128 804631039 834396733 883022045 992271592 145957972 941647612 416774089 285250887 708028338 318756528 374538983 589537789 735647520 73184768 412982747 800135694 480983265 71183390 550632470 829961573 122564047 778241115 701877902 619914245 420318046 890612554 828711004 440356592 554671911 523716597 438709932 273208243 192230716 282748390 658352643 140205161 930299993 657113231 309602416 974081051 37892908 655531722 808409403 696114193 770478715 277496044 715604548 576661206 52228310 94752680 998748912 120406334 702339071 581067787 98639485 729750691 581036733 570867299 284087210 66631358 627960258 868170844 631998688 319789923 772583496 19772834 587498009 287803249 585123004 536716793 35282077 425734309 335061239 964746558 981643693 323235585 702229592 206152898 957713445 919503306 15201072 905449326 441404241 407635271 904393911 139545452 985148456 24993847 840844103 339066765 641865677 736288863 161520282 783616130 832388299 96620820 70483454 149751291 45408317 703192774 635291495 916447953 388673245 692655602 121280600 807829336 49753825 78320472 13984328 708337627 148487173 301895215 988867579 708214893 235987189 464982308 347670176 663531343 173530606 616002497 886478807 695994000 231469489 106421151 680038433 513979986 424505198 288427014 777496737 53989531 596362622 364108330 981282514 892533873 16975354 259734671 396068920 746197670 609323009 882732307 811329543 76594808 416859474 940970746 524440285 893037991 542778030 13171565 170309683 645466194 998725036 931921012 787480659 860822455 800034049 498372733 906985641 82427721 259511314 208347901 16440218 410174601 15811594 726026892 680297468 95200567 390244677 878181244 837183274 677392699 319593797 208603494 476485461 832757364 259886355 696993372 507752402 785778615 953980197 915747830 542564668 775333481 429200660 529597062 387889382 581536744 598296890 773911305 765979474 581126331 89341349 157803477 763175227 436223481 809126053 80640767 677247990 208068563 801912773 115422678 852450049 856937294 956055245 720851709 832289632 451089748 883736465 425037707 257968466 416592443 500702917 532803292 721065462 113985124 227699883 15531350 765019655 822653494 269406589 35979421 565511349 110186503 49386803 737178181 682090569 783523070 748579503 918250792 110060894 635062396 615839221 72590320 469249551 897345531 549570035 413608345 456579386 616985695 157355089 819918228 890475167 678675405 435392620 793448020 116370032 950861209 213818705 873856687 931318933 634353482 599633158 407640808 940227591 894125673 237686691 571013456 509936532 801494533 7466514 330798176 17609596 250268280 902776705 227701569 245528100 846164716 333306240 549304618 612356630 655394837 203298811 806308080 284185026 353174431 819707545 858805015 825024118 532864485 952639687 757025116 146857308 885167725 979896645 88554356 19435101 127874847 820372065 379843041 403317890 688303051 9146169 595474868 546305925 520451493 939340716 136524812 100437504 847318843 133255292 500184906 512440471 220322340 735272894 328289868 103631699 973435415 852778161 930237981 855016477 500196782 411065559 145296352 503477218 460886121 575240219 21753876 491197164 856296863 655349737 25617776 605970996 352854146 313358766 727015120 802317498 463810737 869092846 292091012 25303314 470931689 708750982 420567757 1436707 403465243 158370996 434134585 417427295 733992178 628581680 123124941 319114793 343317736 85678547 325590180 180795165 849181208 689617480 670780584 96299812 190079967 734817690 765149945 34701483 647820150 137938175 699907567 377701628 967642566 155615355 554485588 498880634 890219787 30377699 342937757 365890408 981718798 316248290 152035058 582646969 226402065 515155562 89633469 209960882 335447857 279520243 943769187 156781627 460550288 874459574 40804337 578494320 445169794 165143893 824604283 113058753 50108562 310334497 477383641 375256404 748274561 72404546 451011244 382888810 230426613 480968173 119565981 92687903 665924186 10414732 604419476 587777450 757316351 505388550 30297998 72843903 46357685 938114089 226606302 651814688 171911496 674867987 473979307 457651391 457622618 41695792 673883653 335211864 637460773 66296594 946783544 323754648 7673687 743762127 331044982 233397689 134291692 769231366 72164518 287072602 517976130 927093929 432897487 342030757 176634078 497409976 525261493 569710447 727470666 419321358 759097846 676467837 280592637 870341946 688294238 452231103 8290706 623633468 802747845 299481034 956593809 331974248 840620813 900335561 747562726 201040008 279689200 402344208 679286688 405766296 88027911 97503884 371461163 107298853 551022922 21831109 118086268 70351841 385716824 883353744 992433821 80649016 359017894 346294646 776836413 801612999 701136602 135064189 715165895 473266292 662793317 265180880 938903290 553579693 660358594 150723310 321820604 661870922 433269765 524232257 856825845 359330899 347596994 967475188 9337180 351524295 161768990 11494765 519832608 834786002 183589711 707254683 310909713 77074784 314628050 648459716 403732033 70731806 881485663 977321222 844318151 767273990 118271618 992703032 493138254 437390042 746595092 414394766 653209375 451915942 350521017 435847178 488714051 703269427 524835172 649317812 940945159 515761202 906506390 139437291 969845886 614434260 35358364 961569506 291936199 329644408 885141883 552883002 333039972 834337491 972784397 353912215 715187962 953128164 407049545 119730237 205991074 205143950 278775579 242816125 768243189 528851700 811947218 819424457 941796799 132475983 722402547 672614793 783491859 826034175 959354440 298418821 724892216 102416991 489770863 252480982 9787432 507860511 224719166 380532044 320393216 779248184 646782924 984274315 16461317 903342133 552941657 604124579 899119228 360349872 625841375 561366395 614604648 278966948 166142320 895111050 666440780 292703905 302009437 259009879 820612391 853995327 80554188 625300254 262695833 959518912 420414572 640922031 389131449 78844410 107680598 887469698 13348089 914726404 927657272 70855353 748429535 798861975 807481325 374284719 808150695 567921266 129332379 989153789 139557782 588818696 607342603 864119442 435842867 452741850 242309525 763924367 540120736 519487292 248931218 654095563 156371124 496221220 537093070 756758077 954160598 76779615 366376487 188731564 806867276 391001651 442975224 160390424 963672715 255069897 629755916 806139072 770274820 471876354 293370304 218279835 420983013 171647365 204212837 873858419 656309653 175159633 113095710 992316951 837150783 102871721 360878733 633151632 656981493 879110935 436651707 363089839 619916666 468002727 990879349 487655318 850561219 229517742 927994500 612623984 353710407 380608261 909898420 671089014 842865502 128532231 748749072 928042447 153902282 521004157 189278101 230282949 763160886 514892384 304702301 946522710 143375179 125597066 213298115 278990543 36289721 65829110 119461018 911691513 551058362 540749769 426108664 959534221 152923472 487135108 861662994 4362165 548218189 467369328 337736354 518821649 291826894 523567750 330003770 432331359 595037229 307349993 789966082 78937390 465224935 12187895 228033390 584232296 281005121 826892091 626006207 6115663 483930030 869864849 520179545 667740819 633464286 934714701 680926265 444291956 183579914 227260674 872598566 864377516 457916702 844203250 634152128 560155634 133371335 716234378 202697587 648435601 19238250 355493194 455400377 147604310 313405461 227253994 589447439 977368645 843969327 104071033 396374152 126012113 875635610 854498979 43574084 250004664 841563277 398633733 165218523 366869801 675499271 129670537 660409505 11252600 293899105 590522727 235411163 941472983 991848360 676390655 769869715 890677150 166484130 158027203 662864226 556452242 633987333 971860534 883366559 262108308 507583426 487876295 312166548 987837164 176814708 643104906 550048183 330733564 976225356 721852065 399379944 166679128 817528295 651576395 461635537 598433573 125405735 695764917 94438171 746812418 441279464 210009015 742857842 325051090 80375963 186071058 254831106 123740141 568687556 571195243 232400729 417626773 742184564 255997539 718359063 762837021 723520536 390771807 729836708 651459197 681469216 478430885 310797214 736370666 981799848 107667990 679613126 942543459 961267470 815601747 498973175 351873679 655256039 745539470 846623112 223422861 692655027 872539863 968208119 901640695 244209479 350358434 127999719 431479811 444450710 551830694 79250297 255360770 556454785 763356858 522755690 381965340 843205903 930801604 407244671 519147921 119211713 589968783 512023944 591127706 208888863 112569944 571354717 216441880 14175018 582919077 520219066 948925072 578092282 611964591 661027739 977360600 994330899 371252478 812533318 218181575 612359858 827027051 265266423 998112898 529035451 323994278 266216682 171477923 803029190 692048432 748809345 327852405 971323730 594523726 744130780 882550298 893687962 711813699 946356437 534199007 374949449 71623359 243688924 699814925 822616574 173529555 166955949 865694132 484944735 377487598 607701686 707578212 721996060 995976838 520989447 122066368 380418724 178363649 527812467 895942933 273491028 820439374 193560299 233527801 564241607 874200731 501258520 268647945 654755756 475404898 296931794 938838157 446488762 407178497 696568425 809719183 694363517 565423189 665904581 814207412 794031982 969776112 597837265 716716483 797252002 550085838 344776860 639003417 369239145 352207294 134300568 513220111 26602288 746427728 478030476 565395893 502432202 582568862 814016111 404685403 118004355 26166208 674929204 654354607 541774764 106531657 327131851 322056868 316319405 563995994 622975380 197648419 293478933 438585111 988860611 136033293 73152315 99137668 324572467 161953575 458637967 571573456 422784142 738377844 50794951 374883245 948344850 216225442 477150013 387799309 212216751 778508635 656640389 571114166 740098197 357642008 375933481 373438391 235894084 434448108 313073387 638884121 986245790 104382326 510959135 229413412 347414452 953994419 140818820 784574783 472484726 327660338 829204799 249860938 421858200 870881137 933353198 773820994 732703440 304248810 960784038 538579216 850268510 699140167 538210626 932727426 151738789 38216465 713196049 459160850 774485037 905755855 104295782 228999285 505097983 461194733 305261649 294869594 501074407 627026787 323746532 759395580 144140887 160021730 18803349 873816845 650543320 131538158 898195319 221767685 415425943 197244118 70143974 853276469 145513159 27679213 234270552 11119470 967206035 574707351 753833594 601297896 372399766 342574860 936815018 671147616 951606101 946811833 695742926 268722890 572134871 362683836 81347362 762111789 280016416 980655881 457503790 202030361 258288384 288968502 953453139 435853078 617606283 175193103 734334036 125098806 323764922 298490773 459857136 632929244 921488285 458473042 987791497 563273164 838503233 387595993 134772556 218542649 47906567 1342446 827449133 983610105 361980743 255105467 929820554 746346344 628924406 448713525 76052725 97839499 20407832 746905355 88912675 300002953 582766190 791837731 181401785 754567058 754369187 598375193 410607669 168610783 460853112 193701535 96086589 549359270 328471629 766137548 222483330 374432166 679430233 146950147 56215062 800456584 429892959 572378385 422910285 7268481 483046162 18922176 578324636 119550297 859202090 426160814 465807470 957463421 849959407 349110391 631899932 969478702 520634034 854997288 196030842 990748837 968238437 665706336 446951574 922635228 725554428 765657066 376950291 1802621 843234140 184586478 375772165 52202576 777472766 752445339 505203322 58061348 239966729 793041799 163423052 496752109 173104697 430110598 32639784 289631719 791791106 195902997 425266262 108321735 530730027 450150951 622789040 807801534 134430506 172189658 972876194 902011626 30655035 20276826 140281263 781322546 558425770 755265996 863289024 562241911 195255517 604936228 975691178 936252240 223203377 972189970 13307008 513550938 267240928 885797398 662736526 544475768 133459823 38880274 355420271 274668957 600137641 170578547 455055928 704098492 972255877 335872557 531819165 989696679 329253503 763153729 195035608 638973424 596441393 792881379 737319695 592748479 796013326 663489566 494463085 826003908 768851006 563956508 467088966 374105766 635170763 264485256 423739265 701487636 374560136 240072436 66713761 680748118 477376012 662663689 361301520 268057849 529889265 494800326 593042709 128314135 259790517 180018186 286355248 934017872 635221086 724943475 510556187 821460641 97299373 293362748 758564491 985197408 456370006 484427640 970954329 77015550 177041694 607550876 142749174 498201220 609451279 25987485 575502074 646555274 67972766 357924271 153454383 285471113 798240419 542025244 180756316 453410452 735262803 877067946 680749200 948854056 428209111 555947580 170906381 361608624 27821501 596388926 552400755 197646023 268805047 443199401 252005165 781944531 43944596 246703174 566328640 982026717 602387442 446038017 597765338 140131719 447122745 453702092 620172879 99907877 539771772 194443700 434176796 621597988 508156523 459060247 822135644 965418806 609525707 579223146 332604076 337649307 437559963 194456497 981634284 37031862 481894447 447430348 845780932 643689135 705185947 313478304 282027299 232167128 172311897 169229239 256783475 739246877 258528607 714481485 433079174 271655933 771178430 101852054 924939622 865356997 820308181 481798163 702009109 483473674 536955684 61748778 671011606 536054305 392748212 465364857 833047525 481935442 384860065 151233470 587727471 919413573 755239498 489335403 922929197 192225523 281824994 186399110 976112293 850393649 962572503 866859645 25561972 232005458 528598515 727196583 232495360 154114280 151907835 591377591 489911663 153003566 391871032 815946330 535525935 628304099 845183822 641724234 747618924 54560574 356918522 148688626 367910600 485275666 81864314 861475335 803632829 321759998 901159420 770392483 483041485 530101696 523528656 228291145 809533875 717556128 236107604 673274703 800894872 401029104 301549344 521030052 204156076 390271388 814313918 232609784 766786107 571927721 7689619 421669341 466753644 704383692 414677996 529162690 76748385 788625378 242856826 459603943 965170534 94946779 911103355 103265982 300285670 432674052 424481959 466954714 664620501 346307530 292756101 171157434 1268559 926949629 901740381 857598451 933961019 313770213 661217926 768422556 607292334 440544944 7773479 238783004 875959184 64202310 123114336 49302713 771113232 341518014 261428427 804291396 463900449 288972089 668793628 384434248 950324840 276465456 298184418 755821677 870828028 123984352 601300898 381101048 421703469 976695550 587962719 752872956 950033756 676078833 568887260 931511661 86366111 232420900 280290018 905544929 11248634 844577111 55634653 662693260 58411169 392123175 220916548 524243243 12836347 604712781 72421533 782142680 316272618 814394495 172250677 685427967 215453841 733565546 296601933 341323851 809440385 252248941 44750577 973020483 922328857 199971150 354988786 333754184 874796987 659760688 125851335 826992705 389641264 620399940 673089901 476475205 285262283 670846646 764083585 824941491 423644020 241164597 586514751 450346277 661365581 880947492 571457097 927551798 203076426 555193759 802855961 326834168 31050 547976524 549893982 499629548 415771570 281069625 215957287 367643014 445481992 835873046 930669027 124908760 758282671 147908874 190991516 798064684 365003289 364114723 931775211 166535438 522796408 998206274 788935876 404573750 774726012 565760555 743161072 617646171 731182942 914959904 439067247 438554786 821447647 641439520 162599473 131271199 539257458 786229471 790705550 329285151 841438717 674183935 678341793 493653120 159177103 872876360 417258827 128061690 349336903 972520598 164237047 640434234 666102883 93390370 287967966 655209950 986365239 445387060 736691642 149419837 554989361 974920567 767461150 674685822 891041106 799096760 228547330 50161335 70285233 432067808 526357517 965964565 166880294 277070636 211958175 111455737 493949052 852057315 316139898 867047257 500124637 957887963 766473920 31995815 1129910 233685396 942199847 811743014 525584740 987640402 777790736 226393113 305034344 204248905 834101810 784111055 720627209 117583273 560442073 622177427 537620074 883625025 180427813 802784143 393409158 974356456 963249537 868296305 663854951 325932423 456534643 671075692 996303637 791774067 619738443 352315241 971516221 64079519 633288468 29987286 931643721 605139506 72835233 807822775 522720297 560511384 110011619 700052874 643242342 99199788 818787909 92916673 252375688 124891223 846502732 214407373 318045389 617423941 851457722 197470216 788112637 541295856 792305708 698440689 829589108 284995070 541094693 922272871 772869076 832100164 492204018 585852515 888404989 738094062 806519088 784770716 645853364 653479644 285048129 159850433 324941684 402350736 340608178 327226833 407018266 739018971 833637944 166396216 835478766 668923384 620619931 246354753 658296857 743512289 654070351 46740961 369060949 910861964 819828500 373384172 66234945 171532710 125120794 26827073 428378691 338572870 749257935 866989905 231913782 377536152 4575079 377988620 552902317 69337225 754086270 849624816 985497920 71247948 690350542 921480179 74444309 690773190 887103965 829697014 934319143 30341392 434145249 312473899 766140414 14297063 934574233 678441592 161333603 588903852 134266560 293634533 801506236 819452738 518953447 366313296 283664556 169569699 937579209 246068860 3635492 706864310 63560185 643846509 927362334 78391199 407621932 157146297 182302050 97885754 775460935 10009371 354780230 494224861 314329545 739332302 270647285 622182316 4823223 102337087 146276338 723085392 700981887 588918488 711332232 328779686 635612088 763251316 692180771 546647316 799790828 543571724 56095252 35304750 466929056 929950496 526051165 198845656 974543390 721068179 854838081 517057440 988314582 268487087 979998585 54741378 92921043 961535226 710296422 269539262 543374667 25283939 618283046 883883494 440417121 842442466 199343270 866988323 891936396 471549425 26204345 161036025 779972256 935502759 381269160 435760789 405320909 304240941 336170772 573759995 951379675 726278025 336565624 665890923 635716016 666383087 169138863 867831721 811950305 528863456 391883856 539574876 860674764 978471274 748859796 864174567 281831470 995736236 254412694 866887726 63777929 508161930 211275041 658873107 188818043 552252889 287142808 993402917 406405359 88182164 90380418 944825829 506449048 115919212 382132949 892636820 549590524 894083301 678491124 974523298 392959729 473185161 384621548 496015774 24102099 531204828 685550805 421717905 289415939 636370481 582150594 157842153 934356525 947102382 905253573 331947042 834107706 479306093 348205950 652597820 274479032 922121963 803892966 111593695 324247205 617958600 39149834 769768165 721189740 430798929 913286896 897149426 354012186 948187705 756512342 672558273 516553913 126804354 657085422 493670530 331100843 693186365 500965761 488915898 560419722 230119990 663677613 785315372 184438683 751321403 274360828 40370598 374931227 635825098 574393895 477583960 984676905 77059659 572392283 230228369 632980174 204367558 85214233 661891434 737490645 314684263 293452317 207089381 155929282 785142023 588164094 95126749 441196313 142999335 281044392 777193707 946854300 999844243 404397714 192409359 167188778 287135945 829234837 832305878 254507830 415074457 319756625 970967956 576031084 663095492 814901840 813087846 439082806 957846877 4129749 539275466 424868576 714325389 899818161 92902322 263758259 920414289 879983190 802885496 764165451 538778394 402709464 699755199 678391259 401112519 741397706 376621178 370461857 825074372 435720198 353066358 195193565 246116022 298120258 111364494 115501883 230290599 127798271 571868599 619002078 775170931 213287425 477543128 760056574 829094019 408874590 583083911 843893828 434332767 509152373 682729883 516972261 603083327 21133961 584349959 500882886 587866269 465322807 650963767 647652616 996926952 220949685 874199546 7515117 884171044 324495663 108170499 834366238 533009004 642706153 946265685 53437427 864166598 998282986 110468092 240746667 591753067 404133489 497225574 261640647 213770312 492879668 682643988 515383811 237919394 584994949 236845189 608280782 995849139 301205546 627639906 235647250 733007153 266098677 836573978 332700670 607664773 526702775 574838646 497681171 56553658 301107734 979599000 658525508 339033978 742641599 798819195 949218633 567868758 869662323 91035367 784754280 648474770 66907878 143501595 27154821 136635730 21683767 150647196 333415861 128147271 529047159 503341430 932648224 531355279 459365144 827890276 316789247 98988593 616718225 195167974 481477066 335547097 718984468 954815928 396509486 646848111 213485126 894421475 874686336 16934065 587677898 564066671 472599363 369057622 376505883 248261139 321755688 941435991 165662576 510786857 970225093 13356438 842154360 541666557 535171638 862364106 481739255 493426553 676271379 899923267 603473703 396684139 673013440 527245743 928425189 719817972 469350771 1637758 784656886 234941754 691595607 378735915 245376247 262983232 735847225 611469390 624224880 378619087 666752433 665451016 743936840 41736949 258543695 136171911 865038335 58651563 881019270 474418556 337382973 427555492 594960190 722235604 550879126 586288946 79463642 888542793 418606949 623095460 206888799 304439343 730464777 729795529 192208674 43497317 551297416 843086305 919102011 566434375 284053964 808651891 243901446 940792538 21037170 819888457 106816300 65111116 851939969 86075346 42285315 224716868 639313525 215474198 407757785 305950844 710836208 705232488 445290377 467599256 492462550 111633465 11692515 716139644 675846970 172806295 618605051 162775502 236675036 984741563 184096966 37839173 264879744 99108092 693437359 442934837 429301151 520218338 535869213 962938133 60917632 820864150 982623793 814666918 489478427 449217612 687999753 584760311 840548059 320633797 920839777 818860295 310253451 612790803 784210632 767545131 75350018 985534218 789408643 393912996 823566406 560783947 757479074 118664539 423638395 747544981 436212018 398091687 171656034 900930880 3023265 255024329 215932880 822828280 736298110 816408664 636433984 708343712 197202028 261013783 685244229 546484917 238125265 211594930 431985954 193324705 577135202 364565628 839329202 950413593 386352258 795761430 517170756 365276734 655768890 236874423 141981225 687406784 507972927 738238033 533681439 457046117 344431292 300943028 397585872 753977870 334753104 509228919 263991362 956542142 53326600 967273547 717866023 4284564 797535967 991437263 462406710 530341745 526065580 703274289 520989198 865517333 607812798 555065708 130084420 589162780 41419286 405417105 228082121 410768388 112864928 484533644 332843888 806913982 979509265 262367464 990987369 777627341 266725832 978583504 335238015 575505081 47226851 988714255 347957519 510398401 992982474 632207919 443228602 830849557 113561726 2041610 727507719 965027124 860602828 482096607 424088697 81728551 719801375 149316920 613298959 290831995 158044257 415263870 511729835 468789159 187606167 340318251 342666988 955417359 604223924 616834160 560880844 861713774 910483980 190059044 199711806 783081482 258205075 216010480 294265287 523641209 269141807 982051578 782873856 491212137 102606134 862301778 117147210 505609872 327940807 418347807 785682037 778714170 165724365 914300747 230206946 148423718 524215471 23177285 735903475 819986698 20868319 891950528 426551384 882624987 732244952 472761919 945135661 515724050 459301591 680613034 413733620 135435090 183322008 968102150 950045461 176786841 422804357 839934576 472417920 76840218 874912056 56386738 105571344 961957361 656018574 638535319 971932904 562683224 931895553 599139569 484267650 571919635 933069891 213946761 293984838 986645564 367296770 675584569 410185465 399157946 163653047 45560253 126978274 217218038 309257920 773171107 359690751 109057617 898593401 114474227 718817493 868931067 378164452 428459235 959349356 328308348 666975181 940017400 792456915 506851551 38893638 408253823 552945999 812679933 736218432 216107053 933774885 928991019 944395708 800642354 47651528 898407728 974636610 494251585 142744872 52947721 403707856 63162735 32748623 411683021 71619493 118012931 434916733 127159577 207699661 334448603 263243908 370760700 317840340 485677898 712284176 910729841 783029779 877934183 753050816 813874331 927612106 452232132 451047252 827456904 371959884 209889130 416911800 983377401 677897775 380361607 582565755 808407618 745060492 122343595 4389906 653417278 782953316 567271396 768243759 590450378 82040370 8405397 166523046 300206763 792532439 208603792 445990081 831266022 683748515 989987142 466273054 297825479 228842763 197276070 501101909 617172499 893631584 963138377 544543408 972487861 256332392 61288443 661538312 802388835 27752874 675908056 887379900 164689146 802407700 174997761 123588403 287596218 438795596 82989721 406802033 501233738 789587877 5831295 34811649 317389070 326640184 300410467 87246626 350254610 491745085 592454638 21223766 361525704 906865564 654872284 894756741 874737388 931056202 604096173 624595375 278025301 667540237 787564570 891955206 575652876 173999682 212155110 506518888 237615259 631525191 118980037 341156480 105289318 65192606 482633851 502887808 358972904 202339416 728226936 772402119 383069597 812453883 249492979 730206041 153640290 40086716 94020766 944162567 448672557 83605789 714864394 395546937 313770629 628292131 478511668 352023094 791415074 144366489 319502269 762450425 288927075 750194409 326308092 520482336 702847011 436868649 949889211 167521809 829598441 168789984 188097666 278366289 203749792 117736432 303773626 892196402 633816352 749643035 56627440 339957340 260288335 604386598 169241248 476396567 834474792 815888309 611626825 329816912 800702406 920095824 570977518 835442554 951840063 95814070 834283327 126872219 503042295 387437923 439734673 456690328 431480715 72377061 945964437 234711644 970481513 706405441 136605370 392949801 47312492 56818912 267406850 43519338 639446404 257944678 952916932 511079202 251343701 123027975 875608486 666693223 679980368 660437976 386586474 470387991 412679947 688274223 764890352 967737652 997779930 270909624 182446330 577520462 640212883 533460903 39659260 833479321 880652819 668103523 651258973 586771164 447767369 778141226 369200650 559742384 559303317 429812810 316396204 646048534 296754780 703872466 83061908 845709022 942403244 600750818 660600401 747019667 880873089 781086741 856066729 707351082 544012781 14449555 233220774 677360722 63191001 359996717 929599127 421086765 594872380 36109839 706441595 207327965 881436024 934315142 892242444 212745944 467015944 483727104 346540417 383091524 215564720 254480892 33378410 692412075 715045208 280922704 943153120 451606481 97006210 557031554 418707941 200057843 534734176 782326640 632147004 743440039 437770788 356606372 986307185 738680905 203024672 568228405 546958085 113007305 443741301 313414078 1856983 313271857 605933738 210208153 683495543 224807746 430560347 829262959 135998976 235441831 976891371 250718193 945765249 233602973 122436603 22708548 600963717 252940405 639186168 310474315 73511925 834910549 58131177 900495430 126143842 553335163 806285681 971313080 993911150 312848169 759731295 882797088 934014935 455616124 980039319 58785027 991111770 115844083 324400675 963156322 68919675 920116305 431092390 118203520 479767156 922278911 121578656 756134311 975211569 274973142 750094023 141945723 784373815 803874117 42812296 975361521 799134683 53983835 657863774 670271928 205918340 441899264 709027426 892787653 853153100 47334989 244381001 600222337 603487512 965200720 768281157 399604069 254728648 505896253 579821561 472572995 29915043 371789916 364064518 327078029 186432432 255174426 743694511 637277697 629634937 942450268 758452365 500096434 618606451 308006412 495852841 94369858 190017829 348980721 232587413 681878084 321386332 751451587 660736722 804083346 316533944 968536575 611142972 296674985 605870631 534476555 277678739 641366650 637083874 949723642 98448070 161403481 946182644 742563088 31480978 84903368 103651754 333857529 495397094 781282563 700531619 758663196 547337819 972698904 220090530 858069437 950091252 287898012 231000483 763354473 618386119 600983036 433840201 952800276 613602294 609738603 16313654 871584275 198572545 558362535 341354930 65398503 719591998 765206997 696898624 97368199 820588225 674965681 554760230 770134046 573353925 29638929 72703460 208498478 214366177 583326798 671777847 880528430 187900755 142047284 351652659 363377870 87258532 578305946 553463107 579361547 552602714 620122437 872311441 682522266 532071463 222848461 280652825 817719088 853814642 306636299 588657839 381365236 724394517 141393788 589857283 797363194 696107796 949923035 424466392 767912141 831458862 178531686 851106407 783602198 458201867 972970522 59789429 361623665 788694335 914290395 644821106 448331345 126569102 342037264 788494166 605503253 976487436 590953129 18760006 53123351 528291650 628222771 73892296 630511554 606100137 162632568 50458375 777502885 733234427 98914515 620119833 781968465 849630322 111189720 606942938 51491522 677418542 144773629 151355953 818943111 221752531 703694745 300953329 751096731 666869407 385441128 834886203 351473638 289934078 961574333 294326427 411199377 906197615 430157218 418875299 742045115 32244280 763722695 997877906 505536857 771765328 788851825 809429978 804729686 382908736 823106201 834004205 908900697 249534196 556030805 197712086 586637413 476778443 859740498 206612500 961544615 416299086 407902038 993761004 868757707 791257109 621132207 508396098 778486423 674480764 207071202 737872343 161989223 771661650 155307729 530294372 563056664 273069339 444729861 831450910 398020970 52135219 537598696 657185593 549209347 755421157 552532746 944148583 253695678 672422170 563515905 120204662 478186301 727796842 203123265 993513564 536074063 76104127 667964603 201011682 384650148 698394712 933597761 520915784 302079668 725494493 379804858 129038067 100796701 596173817 120362464 389296575 830748911 32648338 768894742 200216077 657841878 956010452 457261782 296628704 198373265 660931277 390764496 674699835 731216996 417828366 368776370 58878400 793868281 41056204 564769413 22017114 714148317 810017067 843456014 293619193 559351353 640740474 855416177 880949989 93505175 585103850 321082688 134650485 305930584 727928551 268421218 85714111 918028553 628610479 173332576 661880831 254542506 642249452 967172970 218549059 453810309 96451236 493109697 908791281 257344632 928323963 67937227 617272218 462017488 645335714 636252083 83511177 938968002 430117259 144357626 625829274 817231872 9854087 163503162 956171623 824812627 668910318 970736033 656434610 412144176 665548506 790538773 936942121 997247776 175322098 144761540 87204197 124719311 673181755 922724164 277346367 330722636 15227657 239316999 118822856 780545173 788843164 596994808 340156649 263553379 17497222 249922790 977248468 594694560 291363233 358656803 742880434 385012095 36841313 122595529 481165462 595731341 835910574 98861679 742852240 185345658 668523995 16941548 238632837 473476743 536752981 410580934 386553584 287893337 155644307 396295551 31845758 205704290 935990634 924474593 586912477 101976300 408190919 974361567 621269057 387871243 277304064 117123947 652310577 269096091 878213361 212501976 356454216 554824464 313232577 833071018 304005238 95019664 496335824 587764676 885446642 84007354 897584912 448122078 337328865 456603508 465048401 988900766 178871559 150666970 607962643 860461151 464500038 626883828 118059299 846782426 980235305 592785245 525263600 779138976 387030655 483457433 611917801 941810782 547996419 603947146 969311237 420006239 711063050 950660811 865243881 288201769 8607657 315458478 235502538 991097616 822241389 768138396 524800561 318941226 548314295 983495615 235858594 439649963 988712546 231178614 931551319 135233620 746314439 486201721 654997019 306238823 651659742 839681462 252859114 883856434 484360825 14140753 781006474 424657357 920536642 630884057 860156842 625442000 62431787 860824852 928821756 500802171 222802 223756783 347930288 570524992 506026625 4637196 466315972 760396685 176769664 412591485 359323634 285199072 267626519 755853771 448945732 172158575 211426495 187113870 515597295 105656930 550606255 516142867 534800977 175267107 629994750 234535986 75897515 160755174 82530983 612804736 418340514 972567662 93151998 22245692 90405339 796330822 606659981 228428962 502708107 347410132 605448983 168510345 414444187 553180715 560121635 417312227 976024003 901094845 806046263 549211412 385420088 17985454 651478639 584943715 964239588 171079262 443398037 244600673 733648593 584280492 222588620 655109552 143915911 684601334 70777544 780074702 280450791 5079190 324896435 651041320 381628925 73165590 362606349 651373045 75602831 272720115 400824807 268696372 406167004 635160429 644916115 855840450 987310921 439817112 984655578 839199773 65332969 409521844 243889220 985205763 838586958 925954697 953339312 777568237 516134438 696012298 795770003 750653386 260585967 218695784 671644326 987743500 732520125 110470612 863491850 71627690 740621433 153855875 66064235 457901420 420981813 485835686 874764062 653237403 83224097 676879081 135363231 503836546 578368297 52460315 117139147 87858403 713804868 685590816 980117470 827457635 407326150 567500297 771661357 165341285 913044637 828458149 638788079 115899888 688012277 729084137 30154399 357944875 965624535 942667148 767406751 529080243 563346037 392177680 32950302 676694917 195012792 470575859 452117853 67607530 754130451 378276517 734490944 125528061 44384071 618970501 803413478 841589735 397937329 50514705 757062040 686080335 459250268 856704895 15342711 433113864 240379642 480434876 608867750 976622731 606058394 954045201 343650658 457176968 687370677 739182093 861919682 957729371 189319875 748170280 393140312 417711804 555941765 248835959 324952052 698406159 421604283 857310314 213331448 369617070 922803766 727601682 665825483 669366193 649723072 690202928 519870028 30313679 983630979 53253837 519017955 470079817 740450617 507177178 964650505 479827018 903033800 244116027 663925231 650257601 430506458 234960350 88763515 788858176 14053186 784141970 787395586 665875003 975416548 581212951 747920105 172618526 191822047 363001174 994581486 47807061 405860000 406306122 829667046 749715663 832555695 807228098 946464249 475665411 596029999 308903936 630739226 808328243 279091710 884619460 139397203 67401157 39454947 606317677 868768221 916600517 867010663 568182558 807125496 28959204 869277529 808859911 848471736 341927264 344270553 958128186 546071248 672107124 914496005 968457912 6479397 339926609 145845394 419616211 202859181 293001876 928341473 63900874 351228082 184459496 220857564 768908640 273571257 362704482 819939945 967460156 711223505 11963530 854486238 33289332 239506632 285229589 221976861 537554773 747474759 655508982 200650567 456056128 941975976 799836305 831821679 181281865 60464638 764282637 816594668 588804215 458576729 368975862 717454260 820330899 964322000 877299006 128022595 153240977 156670668 374511788 956757751 655701848 669817583 841533429 64270259 321348425 701183151 51590272 661954710 738279426 199031626 12940266 134375264 313605499 911065009 81582250 316444240 878634655 636961394 683830625 379303668 576836983 424111938 367459335 423629797 888068705 209425988 918175386 453602505 361913747 818429175 937561743 484530154 314639980 994071339 140493432 933361762 512711187 23273000 414735006 223429211 473809814 192363776 125399303 250569318 550242282 633380392 212254245 32531372 456703722 708913075 650113795 358174031 693954641 574551768 558421721 353884670 524807599 993371584 359616332 82377719 944267120 87606228 660860556 506580376 720796898 434567962 465195264 978888833 163580135 338693762 521378015 773518575 408508462 678529019 842146399 59645596 925298230 836071106 680425166 363040036 375817895 894175969 420116228 881310768 619010640 41047395 92950704 834570214 534516569 31231351 810512849 105399300 319868610 293402687 771607984 389919486 495572307 297255787 383644853 8333523 704163133 301582522 918904639 615445698 306287347 714865324 616772024 590523066 913579970 268878629 955705848 331925971 894440835 656235382 810300215 906499538 4314403 222254335 98762620 153184794 325979578 851117155 310018307 395354888 718064226 848557971 367577534 780408312 95436114 644912018 162015007 965786749 43190653 769178738 686092987 184193135 597548601 248574987 607919826 523865270 220653285 885619556 204482032 320424503 151334720 655020120 327352202 461926940 898235911 559411288 887323205 687957667 59652657 552848267 463997967 97008959 313140690 919297349 930600871 906963420 980398135 480351225 631996386 532442938 818877418 617009506 935024268 591782222 871916034 844871994 873172663 592780463 671121560 511560782 557736279 958191877 301860955 253657971 48258866 397459989 724496162 577825819 706685994 346019080 322583603 940727632 27355841 838246598 553693872 312417844 136144846 878486919 294707198 78256539 157750548 706315082 681428128 620703746 937860630 443596967 582583053 795558886 361933651 608591631 835797363 841796204 130202971 994858745 526666168 552482155 450284362 583335369 107281669 579129582 107282152 806531115 62599882 296534491 493398465 639286708 169809759 773224809 694359815 119670820 46317341 701085373 925114550 663082553 572023883 522722052 152437256 645617082 785793483 251884958 811064681 348646752 206517324 410074460 654789038 652755404 880900176 288114317 339744935 238668517 117560871 315221551 356473957 899263053 484248735 937985754 581772655 618504158 332328572 291539381 280974468 455065107 393290840 876627462 65558555 650439973 86529546 131262186 934676718 549378106 564667396 823428455 511399327 923890753 642334765 14913205 545199448 416181735 956423596 470883934 320555641 538908777 936858106 608081572 772474873 386560314 921189779 50537947 194924855 976930544 931853209 869558333 137122374 614422129 315601607 691097403 556278996 181361731 116681572 995939939 382471093 590062885 190214575 341461609 955396466 970835093 882478190 913380544 30261926 481942462 387962280 957538186 433129878 368973191 328136406 223288455 714322332 815377403 314681558 293783740 121476098 719341176 502458736 951746840 78854817 516123652 156452595 964534414 321988603 721361629 333696477 178019522 170109139 730006758 991439956 922179551 337501780 287959265 641074303 681509734 752719329 293307897 495135147 557823293 59919122 925227122 308346238 841388643 438451161 15781085 697498815 920212573 733432969 533768997 290413206 359773120 527396830 499310223 399419364 834389166 354971491 90035122 639641073 788492858 646030255 448675695 872312502 673839720 224721637 237173024 21097999 21432604 519541732 63385066 466252900 588553843 634542360 355352026 481109534 489017359 824953337 80813067 836500257 108695202 684580293 445617884 440134695 474566052 491139121 538356379 940480365 906602214 839965194 362469502 340767090 942796466 637680566 644411179 287432394 790701734 526146661 954183030 480108909 465363808 652584982 841268778 396416140 143036046 397101096 527924213 722946283 29012253 336174721 233627211 61594819 893299676 467533269 816193033 139834719 255996153 822707485 93525513 989205397 459034276 478540484 938030556 390203411 54446083 910669982 562337815 507816258 526626708 218594412 577080893 46695556 609038546 701368934 495288999 608588582 198598156 728347753 508502726 201604073 416002226 889982043 225454475 538993335 534021967 35435485 641969250 351831561 195061924 365927077 83042702 201625153 512290980 142147021 112975067 398998291 522361327 223641669 761558954 819976937 93844959 491298501 73408221 265108979 267467315 971048016 790962484 540289342 20246479 104357578 337675574 385268535 318472134 531056554 421188045 718768756 183233350 304247409 217366342 984646786 593037098 458640939 390707886 634026981 711457006 378079735 21025699 959508649 25944016 621865550 627677321 674103608 586922160 201564726 646445759 678846763 614236379 777074670 985497613 224609552 185883621 683883368 197147960 412323324 339150871 386503430 487218429 164194909 990177215 429056742 912615641 681404970 972898090 368230315 779938609 261542163 149156037 983761557 629924105 328607375 737988556 96744764 751533015 740672083 806560865 13581859 273424980 210884036 155285200 692284421 93769091 454120981 302346431 92325043 426313573 256634996 792802625 737433419 927510742 593053977 26930907 35636975 397583274 348395447 89944753 103577848 213430747 231857116 945672526 790511496 456394688 515222409 429748467 901058052 876351014 641198197 163511769 62482258 605326798 277098551 33166470 160868331 887446938 658447011 873669622 840649686 814108399 352326770 820674023 242073146 577478957 669008415 818375308 722894435 80865615 907534435 491461823 397325265 443584477 97324566 696842651 139860811 503008354 212586086 330140515 993885635 283366889 680483088 125395922 718260547 470626590 431974026 274267342 194731812 413280113 655039785 445562328 864016736 207878245 334182495 843139889 223413141 880955254 181006883 762125880 92521612 632193522 25468613 513522690 203184908 525321821 905409874 183193019 579360825 985726891 128020129 850154433 926371824 764447819 2736711 538900021 800655365 662906516 662930571 854420710 104330979 972660728 598213127 362137822 51550905 567272743 987561710 411071050 60521837 183041941 515343198 313219361 681592651 208725804 853799106 930603154 511661739 566219132 502518288 440635671 391906381 560786343 162260689 655032922 882569152 777961672 1303267 585181015 620728117 301892209 463832955 729975541 142450613 309799055 383047686 632466235 49164980 324322799 254447965 501858023 638954834 882336971 753564058 628286401 24480094 41368029 487128390 462321398 342339106 962696487 195010128 777154598 408118274 283125463 433503461 494064180 373970634 666453059 617698276 500380813 298588291 629517292 965498831 682045481 784262156 484531501 964124019 411068454 845151223 948211692 636642983 385625958 109467003 526823357 614844188 744106269 732050765 334880454 96131706 465756430 509968076 942616501 24441281 22631025 718718564 774442525 264823270 30919889 24529297 687299053 383132193 174827495 330509070 870931824 210731628 55229740 97672376 323505078 432317917 38449548 803495232 506138208 250615500 828198664 851842446 639771154 654326480 626503223 380571247 153876730 240077806 641095205 981206570 743169952 849246062 11176995 728914368 691077661 507006264 587508292 28157373 420604455 109323648 494481650 964908328 319038213 684348006 330125683 452053768 870983580 464557108 468053130 153931294 296673921 204526836 385484951 816188053 36333807 428240397 668399596 201721182 159918043 883194194 106748371 918804393 979391097 593591052 997826854 245229835 416507830 280338253 301899997 197824743 117769243 949093728 991298006 552742972 945094653 652736085 911591222 912113840 297822980 108007534 166172881 456170474 711644531 487260571 184672738 973413951 159499422 647125025 391784566 349572856 563386896 855550746 10529095 636123915 819714934 74839745 965428955 305430535 267030316 451575258 896794246 741384817 750340343 876646191 311666747 536079341 866161081 881903002 931738596 440449621 337817026 550470158 733296169 129967012 986466262 569873118 908291185 277380548 721283845 773905673 624271836 725169999 742679850 4089831 410728066 612265276 434243567 133116982 592639257 33460544 977649622 57329986 996153780 965049950 889023057 386153102 804802487 57014245 947918773 917698234 436948445 269356481 759700411 726968340 581041249 844631269 429469613 62318994 446824745 638863118 78507884 435117480 63208249 275970831 448233574 980758318 258973889 730437911 531572706 982009972 937912464 171691010 631093643 960337061 61815769 302517719 114467228 962657567 723825382 216301960 367488370 68087364 379256131 250406508 236607423 421143620 880363592 842014536 907129449 622569740 640508913 593869605 869561041 959537556 788845880 912208765 45067962 757053158 270588552 334880555 327153307 452805024 325837699 404594755 120671667 171696637 633969752 513510505 367587957 717932764 412065383 648853354 400819085 505332995 570202806 840820448 183742322 784538682 174472373 627047030 183405768 536257462 994279207 815907991 976798488 23335328 737670306 8488976 146834445 631694917 63208865 502475378 851490551 487398020 377099146 373649325 164911409 95451997 318564987 521735388 23022792 286553548 389960161 29408581 954732067 267008071 601520628 996900846 171312271 156278045 84519360 193174071 35823922 767878534 338779544 516358626 524546885 389865455 600425047 101012992 518756224 482353622 604938171 316282695 255371499 700336284 233576151 330454767 372394320 649425913 820016769 281696098 865075411 828157881 859023094 906565677 103645886 401744769 189455175 757872038 61827542 190053254 406755893 485440373 27941337 160934137 581220930 557399094 976286444 858949172 751535977 276605513 671345921 491291601 888514053 485556399 92745651 420200223 847178038 459321631 11102925 380040358 9557951 525910715 655447979 31949960 132918256 401805479 358972761 938206778 919940890 794726053 842317458 782242375 276711266 647055841 681473875 245600706 101852269 403280966 700696585 867729491 262484661 871335839 369457332 516326410 201684671 725045598 199519371 612453383 26347033 464242676 712255570 569514195 566582128 293813169 899826341 868026121 220094336 813790941 903034554 888018900 487863011 896865318 335123049 965057384 944745570 69414914 507254375 989904144 473138935 67028636 635030268 526613366 927038412 751285016 686568223 415617072 185423269 393853212 92820359 603379765 363794711 764860325 577919654 471650231 807949550 518924934 544787109 987513438 34809963 92015458 77486975 809072067 623978181 777817881 454445495 707171699 763431808 6659806 637810704 691434128 60953675 102018495 309874117 423776591 951607076 709413858 889771188 67709032 218953320 835207245 208798546 781621973 872804322 878867277 85827450 193020177 545152532 402553687 238160495 958431689 78171239 840800107 810186360 582213498 420582231 733085941 263371611 7873826 650433990 198734178 100421129 810454821 13557598 923073608 402503898 491824314 795503542 373695419 63939285 908522769 726262837 219740701 293704788 901789345 693583010 398315601 898365528 968235296 986771720 460018599 284123921 146074868 291088565 423478646 478112551 922050871 440239264 349068245 578581046 659463623 496809257 252564995 396559106 444874157 330204252 236951884 807836657 635066772 655945650 936952132 897651981 775931510 59054531 939551790 261249748 866757602 681270252 515156491 607640214 327042740 407921007 500072017 235532143 619553961 83820241 258965296 760678951 279988866 601728102 805545378 562786452 986259878 799113005 18474092 361652467 932989326 985486436 149409964 817717861 300698958 560560317 985841813 220253947 63143392 390737177 536866084 200924748 935157715 307485701 402461583 257767952 76351924 609601655 250905902 667691992 170664027 162858729 715584098 183449643 349977033 713391966 666030322 21148225 756414872 871682757 847836510 612366751 60570692 7618720 869997257 450009892 185302708 877413222 953382582 499371967 218750196 838682463 30955130 592632404 692455535 169227976 378227914 694590106 928698796 299945582 310171543 774256736 814512051 549127033 156912416 807051041 281733061 597282813 654308916 149702575 803765619 667230774 700467745 226619672 943792287 225790677 789769059 390704797 634666842 437194658 322672017 559905560 996089316 197070015 928931685 195650547 36021698 396411217 489841897 950413409 351199109 543799477 676425507 332937224 667740222 16785682 269019371 428566085 693119092 747678634 562826488 179536477 809288446 1846710 892190165 105914027 254145850 632438860 88541688 812967831 937013341 491641394 462452459 679396041 365920507 512257351 691840552 564296860 63119623 415490056 982405105 723813382 402139152 585969570 845179274 874448326 550925845 961756938 918036844 475980593 846324975 614493845 306424700 117965038 732977667 806454447 499461193 243421886 677934058 571249164 260483959 549648264 9824548 115227139 666543346 46742625 90159442 877318597 378430961 32261275 666663571 113085945 134231595 534024744 905970210 993644033 726834599 145049845 521499099 201240944 485192315 292389229 251366239 56291596 109347678 538370832 424666278 560169141 919731821 436739474 416654478 503100669 437301982 27737665 161092275 934859328 829372493 375882773 917527646 960448009 396375054 835478348 778830767 450161314 845339912 107905297 850858409 420790650 323389555 378815240 781785479 599262902 963861574 66912739 442578798 511413826 460404441 792217133 32246125 586016744 317265475 727824584 40989080 136839693 486266743 549972376 870874744 169984474 430532181 817188383 578593510 77933156 7276589 200645110 748208028 131481344 713275860 522669168 533372218 423389145 797422220 800022684 682780351 383303920 833199917 542068477 212892959 533014535 457853723 278361130 684015969 907385317 646536637 431522669 330962252 204974087 434190743 755426496 652042954 21907746 838138772 815977489 297136139 276629815 948796 665731634 254663050 919287612 747394929 790373329 31701341 910975474 92291070 538722798 306738431 383363815 93788455 792825882 855314357 137560742 167361662 167644215 579105468 794296976 267807755 50662773 268994126 783041016 148500521 77721838 635502037 388717589 997946757 536580572 983581424 248958323 101583167 176535431 690867270 351645245 797190823 406759144 426683022 295846552 776982085 906296966 844925531 82879649 529419958 115956561 1286148 210209249 768811486 349997008 793924489 417033144 764165936 468886512 851048359 831194883 891959691 395773939 28756143 933593760 687212323 598435571 63607608 9339757 680795459 603776345 968995897 490949900 241555531 807535578 500794565 575298339 911846675 825045595 660850687 5304832 208349113 601218349 728045006 125097006 582989567 651925492 451477987 958783476 622733537 231083752 835770834 54265401 462189870 149472534 534591755 785797022 770288081 240497065 642099239 398634334 246368388 785745100 616905167 213890825 189423268 80023320 166438120 750655052 489562787 538086593 18197151 255503967 631606752 261286796 933186112 543504337 747874972 600083203 933102641 802871699 807837729 240690612 908407450 553585261 999246608 813748263 996832076 623704017 743335601 40789277 882150270 161129684 996564869 468433751 556330721 894325171 310181911 897564971 250159038 426854681 324541526 192919899 13838494 682454742 119374012 989110102 772177185 767864586 221948755 289143042 733219193 737419760 58935874 92801431 506087716 774007150 282655765 56902077 401957171 719897276 174695531 968282406 33754044 142257735 140707057 778048025 877888835 325824947 277992323 263807158 554517521 692222536 190056939 805360733 68614525 781043813 698434316 646252401 897998257 445984938 43623788 522706857 679436134 816075169 247667286 503245874 632101629 54245635 776676921 790428622 170055521 443441425 983838556 879630191 714204434 338923213 902555747 814487252 494054910 128617682 257295769 643599564 919520856 865932155 125844688 389337926 197131880 759938081 781026759 425337923 399432436 673899040 787259305 685689116 926832206 142496420 697076040 442030286 45869583 76609598 689947317 333047044 882484006 142861663 609086134 739517775 289847800 912717627 547579880 111202246 578552729 95744726 867931322 939760419 404215162 326656379 729582250 16826550 134305453 836157277 583880439 961949665 46824955 818662089 532454334 710257917 844002632 505881914 212381308 567055759 63826565 40149968 54977404 481379445 23459521 118307466 224502619 527782537 60953701 843111784 354382623 36870223 550777680 595371698 399639723 99678562 645350970 117255985 468283063 201669624 904960769 336740944 323921387 103051847 542249920 690436874 346557610 922471372 715483924 612762130 294971314 560971080 705965827 896034960 836243176 661347289 369806808 626668439 651366266 609686292 496203561 570924507 76676527 324533106 221496786 390811465 554769388 779778507 927154809 293130539 522110082 323008315 664444203 935836156 784901267 780309581 669422395 437105713 885357366 113588399 20369322 869515095 187603079 262126872 618869420 723146373 177993519 378460623 380892391 500340653 477158860 450274741 328012624 168930435 940643174 931313824 929436922 72726730 349978321 45875386 934658267 580632018 121644757 215895690 431334983 708599897 399146279 967497619 165287152 592543525 626474847 931410404 351516296 933149965 265302889 544621574 93203042 210352139 25543064 996334464 596708816 159232928 647623523 698849093 11911297 135850269 812621562 614757299 966552521 450526414 52399594 274908468 778822090 211899541 442515676 688682440 614985168 187633028 681360943 923901364 458768208 904432099 851096394 848545463 41788361 905235546 354049630 860851888 23353219 532763236 845612009 366346386 44285446 979794174 737326035 107347534 962912101 103413906 636529919 573990878 454400620 286541511 76450674 453823035 348074031 716775759 241343159 196833577 408282332 857813092 720546538 364555861 994848662 923760652 877649620 444707477 491331268 840824350 923213737 258966016 703846112 137182913 319569231 475853678 187322886 307443752 195167967 774884587 601789057 991006149 192108883 227421201 297441935 582886412 478498071 555714730 464517688 363476496 463920523 507714854 551525216 639461587 810972266 237956782 572005142 780879536 5041290 251459952 505433634 495402775 180923489 757079148 229352874 972798515 320091521 570176194 599960236 924536502 152204768 509254716 908039793 430496538 145322211 461647983 119717166 922547973 258677696 845862510 397518273 40151871 452144858 593501518 468308204 289254059 83342928 804521613 752195108 14402075 891384879 450710164 992232323 696819954 471141 950746551 139209399 841429402 545272479 446902020 899659060 257655557 402179348 799979059 286539165 83189690 831792388 493293508 330423567 953761067 26946376 69281951 550722759 193369051 585299026 592599265 74319253 876413171 547371096 162265078 158276042 364937409 437266592 551044449 53522121 86798219 897328828 703511372 843404925 679831896 380412388 561802994 333059219 894348744 983559344 281863435 989803423 615478903 599421679 729571468 506999556 750064395 470780664 59172508 735468434 699530099 922126845 259630050 581724751 730517416 328819847 888152579 771858425 730738761 444833315 590876869 306785038 505580339 963488047 128860995 494731308 265644347 690768121 492561746 848993220 16596985 891594019 131358712 133157634 244240825 146999389 149289663 821455598 817973438 311312771 141307266 563518281 278814096 514831741 649274983 515616185 61083735 863849089 495990466 337038975 219909391 116235539 464058159 935663067 62633344 493778009 614783521 319413572 409181817 298843438 516247057 371861624 557233424 612701988 933817312 151448040 280344079 576739123 500962420 717295151 453467291 476748690 55103057 754062194 904119380 193145321 272199607 748309291 212492520 59661623 245126409 761939651 702270037 921910755 831532271 796270784 842849674 414281889 851899792 282593929 877848117 12133416 595093145 284894026 853702470 194774704 701700512 563406570 88350594 745893905 91361854 480481093 910226082 967699182 230233042 503265051 900542388 892154416 863483479 945003710 641407383 192712515 533686135 422035943 709724442 711231859 460561388 143896080 60325083 231008015 491884521 390282323 852499186 795736646 368679062 765027711 742774542 10563012 353027742 9981347 471077651 1894643 290084491 113655659 117509226 213103503 381149050 57820864 775392930 534738920 298696510 946191307 509862290 754045980 679500361 501129087 165446179 727207081 461881708 147629825 563496538 374282659 236170487 84434110 238577253 767472801 203517559 640757310 781235283 663848829 400630715 863200218 139525349 157434691 740432411 36252468 335798689 385974480 289474499 50266057 136970651 675269072 968615385 553545003 29506050 470060814 998386457 422957362 891249203 626378418 149602550 376910370 827079167 744455102 613191532 878914227 874746947 17075049 642134795 43640930 529271213 55104484 945567647 668624485 381368981 91074803 365691718 604587592 22109103 174398341 215225560 911561962 946820923 931396455 509982454 267387205 888135071 31785716 694827100 45339197 15018484 132707856 816035295 538923550 248309569 476950702 805259005 387231338 562885168 759242037 985288408 515665291 197918489 529173635 995106303 22443185 542205904 541307118 356287290 222998238 533965608 147010332 354054822 654970182 408890413 146347687 711841626 834686787 563108399 750575144 773709626 769739051 758311510 374478381 711322470 751191319 620227427 168318497 715017076 272650650 869293307 782857453 165760219 838033685 661478059 459646427 79466964 125984056 374932146 66722631 143775984 459774823 722320200 147247666 408483192 259946730 428345948 424004645 272165920 204120371 559797137 792700939 612782909 486297542 115450578 887342682 922631825 500808665 109714299 826862887 559794176 963065872 63585534 114917284 713221657 901908283 798520171 548693724 995824343 839517699 686036063 377145041 859220992 963579046 585000137 278784656 127497383 147496906 318643776 332269667 350590593 854947478 886443624 876248993 705103996 439113844 518253948 495915616 995610466 355799748 467219163 22074966 42851918 786275385 97237826 808014967 891059263 640876124 220507953 719067553 650022304 89179211 415655595 536216168 949916415 885844378 11921136 450189173 147510554 961904289 625709862 678292684 347689887 298216075 395645230 404100512 21681808 894383974 321981880 865398706 309997065 531976956 504275449 976060733 77760545 727701963 184366703 908369517 580598415 193473580 231714956 286011767 452855747 564370592 676275054 862750892 663961892 865688971 376185393 882270088 853803824 374809925 346211636 157864395 811428903 192114008 928615666 607621108 80584437 677337321 167646172 162723315 171376130 152466319 485880506 658778749 189750434 822310201 667309850 150526637 384218538 890258562 194594608 621614413 707593939 785065474 119852188 317536953 358137910 370152842 696204575 235011895 918275589 576949707 992164196 773942259 202064360 501346697 52410256 644770220 796108651 181698858 729557861 289170876 94963395 299521679 945782274 230526782 407629441 94479707 581709781 872064549 579581615 325789841 314290246 469569608 218602231 790363042 792517013 250250284 713822182 868416423 940376712 802779383 801731578 979845729 244037047 451798725 846599466 803537417 682710309 334479342 250822460 616067264 975743436 535558996 451897744 833698463 42139522 250430556 988999627 911723794 507646994 463813171 812863579 860098387 539707682 523842321 741568812 528762202 522614382 283739666 807929035 351962119 255969583 944455334 117854633 202972030 103245349 549376631 740535988 75390815 474003460 558964461 988228861 314037896 835251334 38751658 537078923 147969521 712541447 779899660 684417281 276171610 852892325 327851896 68344199 193741962 443869247 453863853 85087148 340534714 921267304 224423411 793395777 326160007 318537922 118213986 667919537 667752457 470069647 177174868 430970060 762847282 668742504 85022493 363146283 738571263 906964335 969620728 354187352 837760937 782555432 102576285 901915887 167475057 49617101 548430619 927629929 589394965 709138087 666293463 120878308 769835146 377217582 845731870 327609276 998274580 826492186 362089895 909091331 410047198 138424207 15029432 90427188 708167241 196710024 771232307 471592542 501178081 464887855 737589946 289525203 536855931 477573915 266183863 16678211 586422132 901499770 361391476 287233321 924776850 366922226 215325596 761189982 620627943 373460234 888768188 649980263 591828698 561651196 586538574 168471158 459515191 422265756 101266924 564910438 951384929 194571462 142375761 20586128 59107548 947439823 296711354 652408489 598114036 320113366 198345320 429938633 947086824 539756509 822430686 166531712 620197647 790228988 925447395 307695100 620722671 409170080 796572949 439679791 56514954 698817774 636467512 142265828 323302849 832456026 633674316 692934888 716058721 444465792 375234170 84910382 409715315 298999867 94906056 129539461 641874050 802019972 989628520 254155268 840241411 849746182 58270607 718861834 371157305 813407260 222702318 458087442 316982108 688826510 179114617 578192629 202589224 130669234 991883747 631733838 318199222 777707136 904779472 625105720 939820262 191390705 839934221 876886777 570820122 410880650 161171792 72293209 69600487 816169555 720649912 489544448 818657963 539925438 605491030 52920201 390922862 866951003 442505004 905816740 593484750 792448070 957645249 105665242 999136102 822053419 122016148 890980701 697410119 30628525 601584431 823057701 206113849 491257111 141839783 730409129 153615710 161910291 666373108 600617056 828286675 918204415 112956500 36217843 126971919 86146257 384121404 41714299 931051692 879937022 637199037 319514187 968381722 611311494 120391995 72601069 636538700 343418722 173074967 901882113 629068962 163791481 588093291 678661109 19029378 809158152 113955196 484466959 391141197 529630691 645600526 510841897 27958730 623947034 965565591 264639426 691213579 774694369 275109807 715528587 858632814 122985373 10404311 638547116 808782781 492578449 513085412 296992329 595295480 584776635 643795270 535254659 555324437 681978670 769745914 896507068 182765700 826221476 447658662 340788836 243013445 635325456 588283341 335967302 933394512 753312391 312557427 136363372 135219990 703756990 115718870 240479913 634357765 128898265 866067949 277444888 248763684 951357222 448951524 473986852 555309095 377914759 261755121 404493310 848888273 740979563 250144323 985395335 730993627 249443421 573315494 700802941 879817783 722619338 751039404 430138384 484518120 742041010 839954652 599529473 243317768 372678610 479685572 305440501 86363726 738581893 813696853 955167340 797239302 952815808 452158193 137698110 255478961 139631413 831605227 487309303 348653684 328988636 900431747 774067005 32410080 596480353 143993134 243864765 972361490 336275361 413911211 185091396 384078495 933310178 656910717 167760969 393180295 358019250 695068584 884344400 918476186 874000230 664093834 879059127 528935527 804074860 114389845 139436577 964715288 336562546 378210751 474335764 429205030 927675986 664588811 880595421 463060093 754503860 294027081 4937337 576974442 229492649 828857953 183610080 349291326 672500907 695249754 245170827 700742429 291193029 666492047 22778522 528714751 711014083 690373539 107621796 23304488 206857238 764830454 745563322 448797904 238617859 925482495 404149161 676330933 159753801 73581392 957977396 479962911 681547273 145257193 61493542 47997315 752781202 756903812 822521684 787574157 698383041 780939736 756834424 501099377 199183486 149520033 447161344 774581611 660112209 283115049 916550945 164220152 462929971 637294367 39517396 662957116 849045170 372318452 100919288 194262991 359316110 226497971 225535512 256272583 260028070 243001286 882895672 711228632 910482924 194698661 166341648 704743532 821085061 915866104 748235015 23496497 748007934 239980151 801197734 789931194 189151747 551917103 900084117 866581472 102106711 373009687 775739150 43660661 901994657 753380706 481458913 983874158 424675885 556147088 126974501 214599774 758483492 568910442 550182048 958465677 167830402 553279880 868033551 53370351 242664738 269375819 427836165 645768829 560420556 345759316 839730970 101171111 433796122 35620302 150072867 935157795 610995996 102002356 906434126 342757550 656837739 404234432 753547976 458896850 632568643 261363934 463462024 371242679 712344509 639114558 747744176 957760756 466587105 685761858 529638038 765980085 424473538 96465429 6146402 319762423 487411238 253612114 751438066 180789710 987021749 512375698 879176662 110387678 396666451 625172824 308101772 780499292 337743878 81182817 717065276 745365666 157463920 145751565 935621583 390375551 192867292 532117193 510349483 468689120 561096317 431922751 390549575 371183516 478022149 128016748 860208248 160014222 402831037 622176005 442673328 71105700 533672846 768988809 513223820 991758679 14134646 709156235 64229542 449824092 461681569 613758409 588870475 247089264 819602276 177858057 216790337 717873693 36716690 166343254 570288815 180264951 665901090 462722342 125501469 358416255 440534512 710454488 361037913 869483535 3179428 103867925 839387613 468737613 678021991 207663746 226579275 344099179 891376640 672338452 152585546 682664091 7627587 522563166 112727016 423993595 434958032 408821349 265490507 592911967 706549967 371215500 773637753 931420756 431928434 739707821 670697566 162601153 418172575 222364337 61306378 344603386 967570038 66923219 119110364 271762127 557871327 341275128 885947484 475371403 447331395 751192544 165233970 493756553 634312830 320709383 971366742 37993204 957817585 821871648 990993855 156595339 663049912 8053380 708339569 682865792 728581064 622160045 464502207 520691927 629260848 787849659 938552454 118781300 727707674 836297457 408509932 444737659 920606273 175515370 845273195 205504998 266888475 898613150 747168727 16202083 687264336 361215015 404179022 117788446 272501889 640489219 964991714 949961119 220154954 957298463 945008230 430191981 816244131 523676406 750542817 810884370 243015723 579939439 397681122 596465662 53745552 418909743 965889628 356421288 604113193 578477440 24635297 542866011 310579017 577000400 868942007 658232301 780101170 288450395 540254327 90784424 751494051 243615291 536408227 937548545 128555240 254749844 749934979 976752083 381177180 80687934 661151393 783449572 564899816 153622801 540987817 907510140 432621924 601240607 697334404 519477091 292225255 758146601 168748310 810214578 642377861 645382738 865055149 617260788 921402628 873311252 85063206 200328764 253224464 505675675 512921581 145257054 857342759 149874168 528539096 733266529 337108380 173379907 291519969 329811508 40539420 699683504 937778409 497565055 850419903 414825352 656662704 562150364 442406871 203358322 857538410 587674004 210703565 562315954 634987884 916439475 372816299 225553261 359787709 100300507 597983148 82055287 464706370 825403962 963922914 188700115 975859241 947261767 658981025 61445864 807130400 257566142 80435941 433065183 619604372 200364722 670130483 657567460 563088646 66293991 659977783 139150852 512154765 284206018 133130406 281258529 794033375 186513934 258352811 572450479 147437046 155409081 751108343 651584822 182392586 224888463 95646777 240020385 37750055 790764497 454177661 758130261 219040553 114532200 519193268 978072430 717977465 393455483 579392934 328997076 613193042 703344942 369937588 84259107 265936219 881167588 761984162 407879925 681604856 929466500 447456499 676391181 925393368 682021152 757228767 531855532 563355948 217046025 694402571 464337061 280722958 212043294 928143444 105320825 569084371 42744927 250801874 83012150 213265654 772522117 212615062 468979376 728537492 622842556 348947585 497119965 408039884 898293312 940644054 991920305 188519042 804905922 3469910 132663694 559191268 111127687 559807773 731689790 405872888 720369906 312409447 580369890 440179776 142933511 102802795 453048596 581132196 436569871 963881289 977579365 879944586 995036704 340263785 784117085 334548791 906642893 102496074 427313284 226285108 413340950 364264441 295467092 418181430 865387086 58223293 501280310 656130611 845887777 698834502 105513759 650267365 771237885 562080534 426840091 672872820 328396418 317499326 784370052 49534158 373649929 551039986 7662694 758274532 36202310 723587033 240166609 181332638 905209782 916820140 485207196 347020795 831760851 507541911 11663775 886995501 605719138 998246486 445889424 127565003 204084291 302287145 684063826 527138386 96104228 863891168 251833403 532426109 939220153 531366268 175648351 147179223 150286008 217084592 727382203 980237440 223241879 200228708 66208314 245149424 111873822 952084580 51508010 595387365 629826831 208768559 21841467 931238587 627326770 243790057 734882539 52449900 439013014 599134346 301633427 300340710 788292921 680198073 377238418 510306502 769315466 583495479 61451581 210762089 464219448 330722258 12755776 790526174 673074567 949766496 183537601 692297045 538787825 507024533 811693378 198460616 433332020 120559654 393994975 973221081 979099275 140098635 169075709 283840763 915075260 51430524 859837031 254310944 786150910 335985725 111539809 435417171 764576407 175274719 472815261 471238393 273804001 97940878 601400137 734449011 675595189 485190579 746651450 133383538 21609374 159890407 828528319 675095336 507309110 524228600 656338545 548674984 226345843 52822196 937590392 271605545 302434566 57190791 43830449 873302761 220039133 384655715 493192766 653220771 357750746 42507119 912524803 987231288 421920726 870302699 548691168 424202469 950010865 848755003 96394966 879185295 785598491 471118235 663441722 929774206 720003387 911517049 655983224 341318007 734521170 938299373 263540871 490595734 575188251 24372520 672436932 608416813 183463457 495370282 384111836 497350023 3245174 635843195 744885720 46162003 842504559 570213531 978829802 589568644 165345753 425826452 829354322 143749098 564574301 123907679 106070478 559685283 132538683 508100203 718328515 801784603 358669282 154145608 256401778 911780519 537174345 438296441 200814454 693079536 223645374 898233821 567256060 155035842 313308051 82833145 183396728 150127534 123520524 84459398 273280451 952419779 5646880 886052214 219462245 179920172 144638026 581931500 973287815 412588654 199914419 654343144 526381692 208486052 790259786 477476069 751076395 386679724 556426546 804747990 403955840 413273042 282325728 641777378 484752709 101867155 805656931 314380746 208254944 716118127 607481167 474460151 156761595 244821960 819457589 287295296 871742472 638487627 292330955 622648378 587131306 311768752 232727018 730182321 764135858 387462925 520250976 527817989 698728358 181918375 631358013 926528808 733929029 717307337 391391021 1359166 934422271 197304239 36977949 603349930 139829745 277434864 111241178 249990128 919912300 113729831 534224219 383581044 445179893 420721002 387082749 82470675 386407554 95208514 749061229 258200435 48952828 341449169 137355823 616143852 108915852 798042241 971622250 906618785 426040455 492664930 839486445 99962354 113011936 817895297 119516338 396868286 915682789 176887648 883876748 96282462 767309469 45536903 21611352 394547213 803246715 66950890 279060897 401916473 112955809 509409061 34506390 850055267 601291713 621238683 938285928 841318633 371786103 817539254 882953395 851696430 113176521 45369245 505307609 10391198 596459477 4785424 171371885 886187993 23572298 891914774 105015110 903705427 370776055 525956509 723398360 824598257 658021576 984081436 331507996 115475830 798719953 508746852 168437100 629242093 720457264 491832743 61173365 625847540 933490756 894660911 483361147 728068893 902430337 288249949 346625866 62160611 209125770 468831688 207086652 519916598 647029095 849572723 588577280 971157549 866595051 749939724 661549275 401050334 376963061 584591878 46989123 784774921 244775721 527211758 930885762 545828243 716899229 823246609 935974712 10517174 718328183 761709283 983425149 717674473 355942667 344449124 771453607 114186963 621063916 981197145 60240051 552326921 522546786 203440275 933233022 421841663 852449154 437648268 856203442 915918347 389474836 911998329 225239808 186130853 839555578 324473333 198301431 341737988 478919517 305977022 164734943 481143714 886237974 359874680 860328321 20387210 321100128 16944986 641404887 941813744 523916623 910483174 362498847 832072773 695279287 22684098 798049973 630218599 387840263 386325375 444607799 968017939 951519249 967647248 129066602 124885913 756423981 790418932 995111298 318891578 816857362 262825277 468025706 536402056 865267904 93267132 824995906 716774604 625161317 261945454 498234779 176560333 721860714 878889860 91805301 823623237 697903994 595074238 11964572 533351328 799470533 886115563 326111540 395329180 562641099 713001280 113685633 788612642 269845853 45297433 356472485 722048732 343733718 224514706 516123101 928966 3185593 507728553 635248767 376845312 204584535 254599984 759179594 106324427 117801446 624847762 810810303 589962672 97611978 577893494 447942125 155314910 45395094 622563831 869996716 154657834 472200982 976611020 647414672 350920035 207791263 464667020 465185014 165320436 375804396 950873715 92815520 958147796 952506034 438314854 180072459 414499199 540368389 471945111 951196177 23760989 699638548 119311569 971589238 349996791 200268291 490437202 579278079 912440949 907326797 963178518 40335829 978419693 280193538 804020838 742310767 713236043 404274599 560280312 844821755 88647278 964962132 559810568 478333545 738299396 918152952 48141580 313609963 986220335 174747068 811864117 932774854 350527142 220802213 405987711 462834174 647847067 286641523 580128872 529500810 283334178 367406780 90389168 438372836 489418734 199919398 557067520 951515883 480737062 646677211 301072188 971489435 684435008 108604142 846342776 149322605 507698942 417461041 332388244 394483643 372924226 630215854 73342869 640587902 755174611 185478982 723946257 888165606 981209901 213440152 412548534 348194391 296050295 716560091 860953690 393985420 562263751 569085561 165496414 781334873 600919351 539449206 405724583 25705298 339244863 221871821 678067683 65235184 718490645 514551022 187065780 43738346 292514701 60745188 983586055 262511189 877855056 208538365 80038610 198386437 951160696 942085657 758538526 975354225 491524356 918930646 548215223 240586911 553296673 931409977 440725133 601420309 496115374 940942766 73892470 203480254 538901551 288445634 165996700 690920975 221914982 69563627 465026640 780017301 890206144 364776032 44582438 409271210 559311825 197383057 688658067 772206508 831601153 641144186 237370861 7300873 913915893 607196257 905016789 624890492 4688289 652326902 472052588 554862442 901239411 572895722 628945449 777836090 739620585 280442952 132974484 518549092 682825339 763222724 603591529 613643393 403075779 41379480 260043226 900492507 605265170 34734739 617042671 751542240 181579274 340540396 506599805 901415605 47754283 400294039 397425877 955278479 955364924 888070120 800860427 676329343 352365278 280901912 612176928 644634154 634497060 456285963 25126472 388386749 946745212 506044041 31171960 270742677 391404418 885333129 397305617 904371797 843798433 895851965 653387079 262899456 673919236 676615995 7546624 412833020 295513188 613010723 953631553 407340764 681336805 983942524 166809887 171629622 673885685 16549100 203021165 82865325 873222099 983169607 21742550 691249046 839666648 847625571 116481000 416494470 305256438 883162097 158648702 934132814 514646477 893117487 706347114 404459695 58610889 659082215 40583982 441123779 198621047 448730025 109050942 185333291 451425704 134834212 102499679 94738082 56196120 805021892 1807836 370804709 318735562 503073419 440405646 907990190 541689375 663717172 129648268 281023035 90999899 890146429 845848877 780857420 633957583 97624181 168479080 510898686 38001360 139517010 293074300 567550056 228041135 653490909 840440435 37691474 233656366 649318875 351528774 861912920 685243364 656896961 32104923 796939828 506648685 933456372 882597076 220174541 633111807 671101211 595403402 787590897 70821970 48523682 119719861 807262688 994673061 428758592 932048422 569156781 873516290 77597635 815216644 975253366 890628149 980791763 291891585 999052644 711922212 501558717 870614457 402531431 520978956 598054580 136761666 793422337 332524658 12461472 397590188 947030471 447350891 285953345 573093719 55507327 219768429 538677782 245237666 178085233 67188225 977417219 663077451 787518129 180840677 433276866 369351647 187436746 87921045 718452948 756155143 646134067 40074804 672567223 349739614 316623092 523210185 872129353 47701089 404551163 843977452 864361264 399103824 86267386 21283761 337218767 34438842 996447596 501853802 137133249 97983854 400785138 630944039 439833563 615501383 257882826 660787646 70650984 960078665 159244400 963588837 576487099 419120185 905181490 408130075 162463776 296160378 215875669 254201153 32826748 911097240 187335243 828980624 455721392 771521841 82156095 715240570 127870804 611869635 877492974 67771767 523963952 232139272 600811457 123364977 626490864 969788138 250364853 893465811 381663346 588787200 59818786 407801093 859608067 919430173 371914611 310096472 494841770 123619036 776322375 5347623 201185917 18482804 822591990 940652800 506764608 542768649 730013614 619623538 489659799 172726995 660943016 945751574 721348182 322576806 513716607 86762732 855374193 803590029 345540271 287204777 536270546 719865676 620926029 85603617 262229030 705681702 782477430 532735053 700136392 58231414 956801856 410430394 103775923 576692320 690660300 839993484 614744302 563174752 133102171 495137792 526600156 438353800 869009406 660540459 657484777 354638934 892513760 755317690 261059848 654611362 472659163 871627600 875244471 217998108 237176407 652136782 159951722 402103961 48720442 327081140 390856411 518196199 784221238 254985253 478192126 705824237 399361895 831446907 395218911 670331982 708372329 636372745 900739447 602033046 470995978 742932673 397856439 426177967 344352862 91715056 920574491 52822453 626520417 873560743 377711091 484564255 569135883 907780857 403745236 991028177 614286213 446165450 987340118 6838942 155447604 564014300 213472151 877362189 60681402 141404891 812781992 515500608 236257803 819251522 636463452 445901926 597073393 406532262 575420674 63006831 143425234 354421901 979447902 45679278 787711199 106310891 244272558 372846881 954739162 804200212 951606343 613244740 615880151 775799603 547946292 713298891 587325205 579500273 830471922 646588313 578214307 96478055 408662534 940455346 395021417 637018325 931648483 107130453 834183362 781509759 700229402 864302365 602661322 222982673 186277765 716903472 197178695 623531444 540086490 929383666 839219260 994312534 562140622 398656925 401974679 895919358 720039430 754022843 184564171 109022243 786539728 42256018 848290405 951461192 578685996 779926614 833666832 825837665 4618827 7473730 659939350 3173376 953934087 63278307 645814599 828824763 370652135 173099587 858856092 690748821 486051420 454370101 622242017 761062152 560560109 828775122 91783354 414995150 220248166 708324933 739940208 161111897 124908821 719998586 468099888 203530606 939014596 186163796 905040297 756054664 746056051 385935638 88457712 27156499 787293689 42875822 641909405 270231977 384264446 405042027 766157042 411646905 837639524 53666126 438048611 667942670 423942387 207483241 360594512 216686887 752499461 243233146 571363042 85865948 337492115 747896922 807352746 727104827 642691845 189686568 316611664 405525670 117721528 510884429 300836865 521455202 992388013 285183816 974680083 678854843 561937402 151999602 26510580 493936260 230432551 237975209 306996794 128739415 505299330 590662115 729850580 175561897 581184515 851695435 315706320 513198033 544765685 613484168 120974320 869252231 559382864 14287863 153345706 58038294 507040109 839642855 490093412 971425329 427650920 371831515 475275768 467432711 285216908 592987259 591205409 14814321 674851966 166183737 930044077 396067471 481916634 312498757 546921095 332553086 309879876 421591612 422831217 519634125 392885685 664059425 101778906 362855847 129650271 636718059 821597372 322264615 616742890 561271243 55851913 514348095 462775479 663263507 746209118 591800265 425117150 983340040 274881689 812237778 674923161 614332538 963338862 232816708 605667095 139183155 692150052 127312099 644811244 896409282 43179304 935732783 30906732 101961400 783697790 853077633 44573461 441703896 175479505 554897134 449154083 863610019 131560052 562538228 339511194 718802479 75385054 738663459 611175151 947810067 358997849 926896667 773772076 196771693 267548192 788035318 47474408 502898617 649024727 196439512 140764966 554349283 895271711 292358111 36274337 180991074 581172418 850957093 117180606 852325220 575503934 265523238 4772047 240217888 796354630 142178497 826600525 912954000 735692735 143358524 775852024 347249758 464099081 626216277 980165014 576323057 63302060 108119135 550294241 529464030 996128580 775111741 198901702 552440187 397118543 557135223 484400525 844055969 904118495 64128021 971250406 481363634 667435902 514218231 323767203 388544268 901175414 943371003 248564887 670244472 966853402 544708258 75782694 325044903 935287974 131318805 228294400 735599684 476728211 726451884 166053477 332605923 610764818 312012366 394986576 815444992 930670237 244562888 376196955 576219725 610857537 209766129 955460795 244021246 794752067 974995417 117270505 379689329 409937929 742547388 50581048 705375899 136574790 588095780 588087110 850581950 981968761 930149249 503193381 602036192 103821768 832629344 319432077 774077529 938555273 50089405 393181508 299293811 908806486 432753967 673747887 873771160 651094956 377910713 797122431 639590550 945754363 428747886 276294852 227328610 122726329 924606881 373020818 669060467 501385957 984445654 946871825 878867007 339579615 890164080 673837465 118242164 389315287 103741641 45462637 448551265 192236473 628113454 639861890 616904672 844257744 833876082 447544677 219595191 704797549 239336158 892212567 155703293 963447558 800379611 965507286 594723900 669518087 612589981 291824146 50566312 548866799 82632489 765362056 962178767 789132905 76101092 682225800 945663387 530968702 158738964 752553481 630864818 297855881 248555447 681027111 801807084 677229648 923534548 860428149 517492274 625317291 295292790 14029099 353743450 818760865 670214399 791999023 432950107 784668354 666673336 65116132 695770235 602121990 869332422 967787325 499924833 515629626 376923522 637945815 175933782 939929198 576299554 763389243 246383828 192467177 700389936 160589861 364299682 997417221 30577323 638750161 216815902 238812845 679704177 381949555 251803933 450773273 754956442 40209255 659715194 324924025 666401537 379477003 466913429 336846637 620066143 479801922 319480173 757756986 891962941 906135970 206344334 544176614 915552458 491812646 821897250 12459430 535215444 910072711 335327702 666552075 671303020 948450239 69373997 845748655 996576972 205555724 583407939 712069172 93810519 498059671 150832692 120303976 834375953 462212091 135228263 164508162 510332119 711942539 197981612 721730043 173960537 89114285 956031946 234629887 644244462 468210229 906884558 97498592 985122760 860174238 221367227 99084 598925367 217103821 996158242 483810130 257474364 270017928 796008638 614105761 418824056 693993398 381561363 248563543 881646624 632065260 266775289 713498216 175219396 142190446 699056309 712567038 843464533 650035182 459701941 392362337 172193445 379425697 102039969 30222554 633260122 892390799 121528082 833467572 361642444 269024150 720209478 434135004 587281129 417403754 527055751 695475300 784943230 268779738 211882629 334544804 43516758 45603971 600570519 790999396 456254393 891037084 758870889 901782981 792712730 400166755 144785063 87707196 343572116 556354271 297971129 551759623 226713229 582617820 920375534 726713694 721766289 431038082 790293740 763492422 649562872 810928384 126708833 41201230 904154403 765678424 937511255 261591058 924596628 641346642 537625684 462092702 363982652 542285165 401141087 665406002 541543711 956881127 926217605 966894281 260215345 838245980 457975165 830882615 538764517 209218452 184803362 390339649 948607153 63409966 184407736 63427399 353692064 98564142 68077554 550026629 809598227 754717242 416886828 724493606 171221307 251996620 941080458 192403652 834968019 18286757 777179885 417948416 867882056 749788246 987952025 90258228 739364049 708747671 322158442 546229494 15216188 261073561 998668868 500699713 568968448 722147643 547672528 835825145 821752997 531850443 927795116 294375134 333512196 7129175 635057748 690911415 813465833 676677696 193902422 526684967 395127980 680763455 390626836 865987917 791692627 361997804 576166569 661694138 428356973 855735716 187621610 512927391 426150737 578144992 913364087 301018863 570340772 373525758 234866961 600100215 606185664 482368203 136051159 774050029 32016375 709320807 208989720 218491199 160251470 5949840 603919653 188964 494290671 928180294 683943230 326638316 955474874 265185463 108650314 75874880 485494473 457473998 784504960 321145498 586491606 381273300 252055589 378734478 227606531 25973562 882266990 59846470 873892070 452569329 702852932 302489017 159480642 941182805 688777684 575012578 654958749 566815115 177475444 882713610 368574995 188217808 24142444 646470591 823401662 478522088 374841286 667513293 423080603 513341746 956901833 732792500 628242164 339442048 408796172 313588872 814830621 413379662 388604037 854579773 587431089 415362359 151104305 238040726 169661354 393161281 101311729 616778040 204088639 471729679 287566384 440186154 945152800 942523425 714421858 264177198 237397022 834184553 757757663 803313920 416973497 363898545 248519121 801125063 933941162 674585663 743360663 180653128 830764078 549200012 139487955 180495660 7049952 114739780 145373682 296900147 572345491 944717646 886248476 906570755 782476414 271251549 728912764 857781615 164905201 84807786 111975176 247068772 497298830 130134762 590431679 692027802 719060082 760815079 395364580 136731564 473927084 262134423 216583102 781068654 341519172 427774516 728161904 720541893 901994293 11401237 657290708 665532646 34729446 166151281 308620431 557817001 586858567 352381002 540535159 758449592 12989616 419766235 698726260 656225956 562704326 339220857 158889313 863452415 458493479 352607123 52575053 388642597 423155517 364186017 707421620 392503773 567914717 19291853 241543554 794099099 898568854 263029726 805072778 733560211 67636282 377963239 267089470 560854867 582231165 813675513 484276968 529206295 446341562 322272434 638034360 932197277 412583991 10494511 944179077 445109458 704417923 541008617 13479789 73773987 98126776 668710791 776582837 562106781 116093327 410077965 978110057 858362996 934823362 278672966 764256167 836332915 544821824 436663900 767480282 347851096 24721014 716475372 481836030 687684533 832364709 677467739 610385484 927335690 936842680 516890718 374313223 370469826 419628730 28898038 848277958 47698228 672254507 117206949 296035826 807540506 126447952 724372580 299549582 398031279 933051606 217391588 365574229 236143184 422322999 246199091 916422199 572390497 756657038 508140134 356365386 708252668 164665625 819366798 816737907 382538846 796255613 796740476 489638155 240446675 739931871 462522686 92291747 217503407 910648363 459627401 599243904 159830751 916796601 933053329 495044765 363864823 334426878 711025062 551889762 238095042 695024547 936664530 85316768 18158178 872322244 851654416 100616399 455705676 645512075 847172090 530918824 91483572 896252296 158843102 44202841 673748109 462164185 195521774 857213962 32105106 811494479 986029234 734512772 285355517 39817399 317392298 498915829 78502989 106009441 669016899 279946575 627698717 181701198 362352529 502666321 946398159 667468381 971302404 61464725 370786856 365734101 848534047 225306060 869865103 591005417 858010343 611955819 156324471 117703714 399692463 800966481 352208076 591021115 184749281 557065644 136420731 958525902 765103004 250909350 341191375 136053749 236241658 631563777 466477350 79012470 361841316 618769107 505824256 857354597 357342554 960743825 833114260 696946745 278914624 567379302 554012882 993138826 432124373 877733021 865205228 724430409 177917885 826889496 691644337 779272096 187750344 931048892 369553587 596782287 822209564 115922288 281775453 858555613 862605160 537883967 451523953 292806328 257163905 358854541 292254429 905405629 244286445 217943486 640115357 908761531 684285037 931151786 282648183 467147773 389117974 597942827 930674508 956955065 515078050 81632359 681693315 638803544 123120768 323494135 267481733 246912821 228064776 322552379 137733086 101948791 492679074 679948718 170450757 499272918 968990899 824310851 528860254 522396934 435960432 616868428 423699903 441372260 60836223 42721976 898818627 621995268 726574402 341457298 136979928 625885900 716080521 376715096 489260760 357657993 355002521 321767485 420584867 213690516 428774142 772063462 748048823 396007953 136308159 231932996 454760380 8023507 509321251 376789422 204298677 947596366 16926820 887613236 672213483 353196609 604499279 689621788 291272598 876443439 951901213 129675828 928446904 514433334 44481631 243910841 862153432 391900757 948942216 99324575 507471411 297859374 908229177 225368338 450190925 835184502 920070628 387111213 493750950 915279705 853307901 299816773 174256470 502659502 293414131 777545038 910402568 326649908 352328799 731323697 648303675 118990723 116027352 91849690 817554323 291083992 822683225 475748793 311223907 627104773 952750613 462257541 302706425 156546378 201435840 92041139 383222972 949224732 229792179 506182776 113360783 410010529 680768624 512570967 342358712 190644547 354656910 472064876 223278779 934630021 423423697 452832007 51851758 72857371 122657636 964513327 898623205 478672388 668661107 178082600 696450248 907066205 898472804 808549758 41320758 330566145 878712115 405055909 774585369 424019001 729690763 48104140 978779723 54610524 980474560 401676619 371762706 946407687 540667438 269410730 774035419 443991709 690925407 636481027 352439906 876872302 794846993 738190101 735585883 867280489 266154644 790230765 226271774 586354213 351088090 563634747 501178328 514089605 676849238 979392338 919130558 374895733 193350139 767535137 80067625 502929218 161158255 594838997 705044595 145200217 690703589 515714044 156598821 211517213 527720572 72861911 465333719 629289578 733786517 767509594 105850643 511796697 957221130 524134537 202253226 580167579 10719446 338966071 400359173 162063598 580689792 275673070 146407585 255802535 425593958 782073611 844186131 700315848 977509096 474196032 373861162 349789117 69539338 532935848 605829091 838641380 976676984 593586615 362427542 946706947 491712507 941669462 365826617 480501475 733888662 816643237 468931233 264836833 366930793 994631712 585420609 175041193 888641909 600547739 162159850 771525191 792297613 402809498 234134118 260371283 621643836 427226776 946929941 380071834 92192944 262830684 450970494 64132822 136975882 808889530 437671350 675406325 390040804 869175589 363626818 717840275 470191641 574627798 28570955 815743871 844202456 331313029 328282740 161863597 245513140 178733649 576794973 205593997 276215189 102372555 952752770 962720611 692138888 98615377 588446295 219504742 683096661 642643720 208925630 767223776 551438995 104963769 864406956 735062350 958183889 278118909 302903077 900727945 669129117 941798767 463121366 600341275 431356601 398512035 263401914 811958843 270400282 805200815 777007042 422718619 868291056 558692928 736336325 822384738 717286186 859825252 454787859 209476326 863446016 528893711 488704270 186617601 8921273 423592597 614929548 608160807 24468578 927576165 234560723 795303627 629505719 322161421 401584221 988433379 883685539 710760780 905898721 42212022 577687029 287915044 367792917 446497509 486353315 851121726 808047552 165463491 631792218 156248844 66720198 57295884 861343418 303432526 853148176 10769269 110760179 587187814 857882499 107358633 189536709 730572106 941269019 192006870 473223553 553210236 832382159 496487190 715954896 865340010 627059914 965911963 301209039 189552141 643868944 695573799 880917548 679048686 905344869 129098840 439474623 723619306 861787721 554023478 379479843 662580560 987402205 60920857 548673950 998829690 208651342 860985978 356851747 955190583 896777547 572554602 860365904 127949307 402747311 57609756 903895062 222777832 19278218 911972693 885513228 742972218 148591770 854071868 475924739 385367223 808177609 526794259 615858741 545907869 216645545 341098249 951099923 916550146 836942062 118484703 475745101 440614515 54759019 843928928 274403297 327552918 603420099 547353938 983634042 739912626 591278361 280493215 112640586 354609998 834802367 142741946 970192439 71636485 269873727 236345921 493732662 738355282 401578776 168127092 546766824 753768275 109287513 387618461 775802592 659380270 442146712 693133802 658542737 529696876 314769269 96261902 667668361 166546003 472861375 506986366 398768531 812429678 376681892 607745760 969631629 63409530 51846385 320752918 95900333 633939899 598710672 894382986 230151172 564472952 563807604 112784750 168305792 313846377 215273091 780565260 637280776 150368795 833966091 402843189 827594657 51708839 353092716 569235321 146125425 102633225 917733602 197707313 372394869 645156323 566945006 847049414 674195225 921975620 48665423 352675602 511471449 130344761 111118334 694519224 74298581 754749055 47601761 891049998 881399270 48452456 347410933 316187098 291089446 30815487 188034529 323150942 645852501 684835917 901987052 267240641 936223354 120012622 849584674 791430686 344624047 394408230 988376580 620652847 880034087 467421068 111235971 184954636 69842493 286617830 662269369 814479278 189196200 967001328 857971004 7113262 701903598 785161288 988957756 493602801 757982852 250975866 366699205 548900699 457402672 283281593 45867359 521032719 439155839 781761150 396193386 743556492 220021935 207080872 3205174 981402528 240896629 162963967 564180712 922593397 883967179 280271788 98577150 801207640 745180581 473749733 797441940 469692312 869201208 230561780 162077838 275904813 155739120 98747515 401957234 347581897 390735271 348269476 571430399 57571378 939203758 639154239 578092557 196689894 703178957 215162074 759967665 565518828 513731030 935235695 436850914 25636065 103081560 251949949 540200973 491727904 758098974 139095416 731438878 274406928 872177361 810264789 204587342 798149414 146053975 782207828 763970116 969650029 374262371 292891161 83515997 690002515 730859600 948078997 442398809 956698816 191090987 738250394 42057424 521599251 529841513 750190382 262926166 412815067 175160983 718201389 179437835 309925966 627466401 182442206 150189175 240945984 729609742 484084781 434661574 543450541 778778252 33254909 949739914 33015855 347785282 112050204 714025703 857978707 538177081 419398730 162637681 181184430 550412609 711066200 228115816 229119124 363878320 792734580 46552195 35351606 192629939 747716488 219201729 857263387 264789830 789511297 236269065 559008314 416078623 778929392 406961802 973735979 585154676 461112002 577012789 948140901 635333459 25923513 451585781 335138575 690544971 785031487 624989562 316388584 936128231 669053210 218432362 394005836 955127026 954265346 805493855 996473278 452504284 24871173 382427096 170090721 447316449 290527515 783064876 723755170 409337793 380069107 665568765 413331045 909299528 728001997 456273943 196569127 421888755 207794786 326605219 949208272 123045167 165706899 824369308 756245738 540971921 568923291 540184121 925657567 399423752 228780471 990837787 175689287 80273082 530218449 374479462 231154237 213582187 998340646 223737107 690971846 873683728 839702867 347637668 395707655 243676619 421202521 321777862 210319543 291034638 640724995 319640650 165618806 869929609 748544799 402578869 16700671 343907879 117148073 590197171 672495310 533301263 51354847 117875938 599926036 900702759 330495592 855456266 136763311 234396431 383891541 669535424 880402940 399027717 448401697 92556192 370170501 269516102 351195940 880169502 377100707 804233652 117617502 926668022 326057699 696009508 602165357 38402031 833207832 637655185 729168907 898966094 788300087 110799728 6657557 541178797 521372409 641640847 867005465 946085286 458532780 6519847 788375724 149906889 452494614 578886692 854192347 806115877 104115654 276800546 601990414 271730360 601357706 724017238 850588802 250029332 886231400 417954619 13745483 392621052 913564587 76674019 716398890 284842083 987714633 707124600 267509135 601107654 718978297 698609157 392154056 546295263 473829542 846471658 505458776 607379503 941403714 616491089 235746484 161973442 260092776 7276049 541956519 904855532 988225782 700579107 478381362 612333542 406788418 982142381 663216014 463207991 270202712 69847208 649220274 806464746 719924759 271251234 897290336 421298192 57870206 606115804 268125410 610682565 153066374 231230078 37171 248699877 648860770 267470535 584720257 90265147 277313389 842053766 618037744 292437316 436992476 279561963 653802673 857081029 454563191 816787200 3703259 449099182 660347776 175433139 95466649 28694257 227955018 175589785 42452855 849699711 728931210 299017659 644751619 776647571 601070801 670594210 241595211 906788576 134006864 428557879 829617035 864273457 624142172 476349656 722533167 219330799 181933586 150985567 846081732 506743509 40727734 818669175 932444102 635204750 853225380 59708888 857025062 130474063 555187445 808844362 590124060 806263706 555717180 144629864 736186060 283821385 528521647 433711096 615029667 206648479 826127330 407340636 605950437 305351593 248651768 941529329 201374953 454361876 748188427 575859654 494276244 2761514 911828331 850429565 338336803 139547113 899690555 833514964 975894753 448769567 860644076 210990126 42718151 98862666 426513006 216846804 764270864 39163607 620402817 247094868 434510311 851155882 615943919 340366848 507214198 29693438 853627325 507839624 750594375 750487423 899033094 47038681 901929249 122738367 542461348 473410836 882909669 28272909 90182926 553682697 238809144 13841038 43512231 894937786 292949200 711921387 456268166 566144664 564290302 656568517 431746784 304109179 209674529 292521497 766547503 497910201 66647005 174248409 959807982 675342964 629513297 968358398 661712815 235132150 237536179 846882775 320172831 781061698 15685888 841252253 998335912 839717234 367749400 533588203 535431298 835065812 237609355 223727758 428716956 786471695 551943367 884236045 332516999 51938107 235541125 528102990 854545445 745088867 891329818 160299385 645334463 163787430 475835621 147062558 352400942 953908772 367045164 963221299 663021181 274962299 710742822 810853233 230657455 745624936 944624471 18604356 595148364 152071536 424358004 523659584 28001934 458637366 398888884 427986005 606958375 500449846 667687732 679191451 98834201 952546653 911351286 530178235 955802924 303057180 657121918 197210446 394709894 301693745 699467455 103892946 452061252 89050526 848783226 930380630 764688299 669303933 392606371 626395697 123187088 478901439 595474118 962230865 266877921 11499619 287647549 656663896 377632891 607325996 653664907 876376082 797992575 390081259 507010963 302893277 297950508 554100002 719446960 540414677 69606551 202751294 394505057 862536535 566276273 96478588 753248728 65193667 36346182 726037094 264816213 928359920 852356993 164659540 169386837 383803167 734148973 26012893 29023323 416871808 741695065 645092399 643557921 739585667 631552524 205274287 415481247 251118258 804101148 548946979 693279661 232463525 494017202 143737212 399744321 730311020 841235833 557376306 202163241 204581908 527078006 69425950 694745522 782917306 473440373 787165930 760947858 157628521 288981149 991509682 869839146 756612548 596608154 473176054 633545928 763807802 317813271 974498845 34681330 340820764 682171419 14016649 920358463 450485562 258887008 24765156 996232252 949332733 889166100 677429816 508985902 842413501 723249941 783871486 917152795 300017998 606696506 805600306 526783609 90032891 845890350 187012929 946811272 197515302 161406202 727941780 392017468 350041716 675956974 900635770 212451151 968904925 624318302 831914784 923136448 429343317 972429655 443902822 826215865 448183087 505410512 9043817 73711182 695829358 745892868 985417555 287218586 114985017 83831467 626912243 307351151 171419230 979865282 119649390 773509839 785498236 450868414 736593504 227029949 761690124 128801823 429151887 300755952 200498345 234908948 435152794 411368903 984343079 167954909 906460456 700256650 637314221 339568315 370799726 684666378 39969574 693375022 182190802 171109702 220898551 465465125 85509478 453817118 645962218 298941763 551540032 594838008 144591394 583393751 506430283 288769288 953159856 199334827 459367623 393373423 423454183 178387499 432157889 427224641 875060607 80773236 272104070 429644541 393568398 298290932 459682068 659717741 799726639 96713531 483012022 88746187 448382838 609631270 466345063 414289207 988396912 482864033 639381469 984715574 889023047 100553556 810528608 137383702 377652893 215964896 548130330 936046235 714226800 884024363 366786898 370476289 127522884 487195114 854122316 465632010 186373184 551583706 387034735 869821335 566623487 128252180 82234900 672957814 878721836 672887512 232704833 23392166 987514060 825534395 483089684 631417132 820488798 520118187 771825492 201876501 13983251 668498177 446626970 778256581 837997879 295903617 61429805 950633952 266082022 582141125 623192707 914020740 29512221 868854338 895883831 168705555 778220842 485347803 328438731 643081848 897076883 72118945 82883829 973734571 474057101 496768596 379546376 746950083 389562367 843126384 965868098 756109137 305758124 276500620 569406984 511792165 407438385 519715960 886472435 423317226 585164396 840134968 782684942 730545622 806141880 419888180 568735290 72397869 586599335 206487046 592714593 611743863 433406730 760666510 647924231 783656244 687395176 62909445 543185380 750130329 53840182 474351949 990254652 507426024 930392852 141783025 879869407 396478360 1758988 901334048 710341776 84580090 612172311 265057238 210766394 807184933 604317507 63439549 841490722 388186667 700463299 114040456 614702773 574898709 639481247 374674593 231455166 989780092 380685467 247724975 697788128 466575563 561214538 395956473 171658365 737436627 207497308 951611374 983583550 70716648 224613227 838087582 257726754 403029497 671630612 599518860 687980342 634390098 545212632 717226553 473420545 827717033 270455870 644175350 10786489 3152714 681402345 215564203 501839962 695664669 218679832 668769532 507269386 161179460 785995028 303194511 418701852 34932688 289177230 357923652 992308239 547194753 504216269 922141116 679495473 235640768 706109809 427049469 217599449 704138458 258962677 603354138 546166517 26290034 285664596 455365727 168892933 907341579 696720331 139739748 716364030 842605970 717246546 844929488 326163123 781575509 286370509 606332956 172055170 418834900 35286926 140837741 168643185 249094229 794015959 307157977 349186764 236488723 831966945 331734221 734414052 284604610 148937912 251331635 240670927 363928275 970089453 605750682 694073179 255983864 948892184 302243336 247386564 144764266 69053409 929797638 702571840 935990064 514866774 972941768 821667565 432530137 612749512 921776259 929744961 742944000 841553909 22855406 950554350 438891565 385374050 748238020 910587651 307235548 896777333 104466773 728671454 764907842 62035668 628710335 898953548 264526003 645238656 428463397 565680798 510683135 143383520 572559110 939220871 690185500 350433773 708232028 122990831 148662492 438647614 304342909 590560000 448171357 34242045 420234454 300649196 471683015 131242329 365027367 304208399 954125679 30055974 466734465 598141177 303221533 621222811 102991977 360150026 864308068 632716615 456599739 586348749 7191978 782020174 895209397 728607757 791202711 257108881 716519425 106087639 985714865 424508859 794297107 233915815 34408738 823377884 753059465 789085729 447117330 852868941 356988195 112176430 766815198 516417924 264889473 653852131 872925735 471744148 176408947 325605151 92417967 408692227 234096389 916319601 70067408 765637118 286703058 259064414 879172372 810441495 101330072 475579977 984915442 210230883 911452517 151162862 200433357 985414984 184220520 208009872 442856631 480909270 639147239 846080082 929327037 496499773 779723690 411519383 10043602 874839215 613298319 416328059 881610974 365124367 233824473 221339287 912848548 776300326 114687943 602531061 104714196 294121552 95617355 266423756 790323791 666457405 443616603 429824986 402850718 890469266 596012919 57748223 583384126 878317802 675884488 20722024 400895224 736036838 758604915 131087729 908998238 133040998 446130339 139816022 909110025 323960841 292274491 342903006 484592205 776496279 286497305 587497918 752205441 627624541 870550691 34383007 615097305 611427669 871381432 136048641 756503746 566791393 370752361 170129586 978192334 921483532 257314142 607995183 274345598 918202192 753805248 248859328 205293064 315124211 659754430 886860457 951382108 633703223 815891139 188553618 966193030 431472003 206537999 845338823 935592704 237043568 482477454 585676281 524541529 866090582 175995337 317020279 356773600 76677791 556421300 288613296 93614107 709494530 115891468 117272019 241739403 289813759 169631639 834756903 854321406 814743432 362063297 896836634 425628942 926298144 691855193 230327088 978246964 831424621 652974417 860638373 31069349 812115193 843508965 870809749 211531888 291736571 471930489 257327694 552002046 805865390 555734026 562432881 324029059 934524799 331850582 448100764 788557727 169203759 626154277 181727122 631822099 707954423 47646310 486686647 788425793 398479299 375222685 784435189 791028990 475951735 814471213 264612116 784169259 971094330 186146682 41022682 39049888 317551280 431587107 547817059 44261535 965658627 138215283 577267582 580515036 277474058 977326182 611495185 170965738 547109982 110372136 124107244 874957435 290640801 66189461 989324648 578975435 473971837 293696395 409669929 389943748 396466591 28546551 227691043 61632049 659961400 70820949 568939894 422484283 742351348 727856258 668388246 221132397 414456995 239750694 753221808 659076665 65731128 229842848 822051934 404472183 366384377 389378479 643932164 649161253 956928782 796804204 467833167 129246614 451280350 341684574 851060594 202701934 353869543 324289890 806400319 664687763 462469706 52419667 936404929 35148405 501808308 807793424 683429715 234418482 684382919 729965233 298682420 498423129 922826087 411157372 167625543 954919819 540955123 770761418 617048449 128522550 34095218 772110322 687684111 880345447 251692600 452545751 561336899 939562524 71826159 41920762 313356132 550159340 182804818 526456171 189139991 992826704 342786737 930894962 788961699 286275514 624619188 643545048 924947512 387893685 171408489 850126673 859599305 144448405 608661155 380317046 397515787 392894037 407169558 301366841 885975600 468523658 919765556 990560042 105996502 324052343 898300639 31301131 922399210 624501323 386956753 614676128 240101742 115783642 691529688 981836080 364962336 895137338 748954602 173719216 475017624 986868510 130857301 691518967 529537948 976435759 281565828 249585166 456840755 802255995 904710671 209877241 28249168 48083243 530404124 134189848 684652249 997189695 173832271 29845604 133327631 673307692 967887807 577087446 212998629 816788922 154406246 438630039 844598238 918530806 59279330 38616667 962798792 203498393 50147233 25636169 211427680 260147742 275882117 413683938 31218323 788468392 92306934 774413385 275762159 177516094 771789293 584032900 2988298 754869106 18817420 70329224 856573154 51812313 700447676 243013226 415973838 604853940 28024100 886673062 684164926 637603194 447460853 439422993 536303669 48983684 990177135 844437212 861832979 164998125 222268590 664366684 788498019 885019270 755910300 529153918 563889553 802776564 443586757 886928840 599477437 648148834 519564886 261526360 961030998 157533680 684919444 617948672 941648284 830273451 574961038 656647380 505951321 485982560 895874510 138668126 923695388 377499532 419262412 765211045 423887277 832903781 712155361 336075071 531599931 535438908 70617947 61870437 452071141 407166250 204767800 368436103 519419437 413353287 633756944 951023631 214756241 651187458 184346422 389662416 967644994 691741357 954154507 778373746 44964029 601987206 350647062 862128292 36006408 200582331 985504419 55345494 473660626 470470832 259389832 296977016 773970477 308288703 339227093 649183637 78303782 354882041 535145915 241999020 417530177 518946165 862640611 467399498 269618425 453726150 570513180 434071599 29144270 578728907 46030452 590091210 603908507 919768168 30992182 642378726 705968789 851812145 746522935 29393775 359617649 127164065 436042528 80417361 841175424 94192970 94103251 196490043 477463851 753598569 434754805 505688986 77168741 237584550 97285062 204298441 333119893 43034331 502240908 893075456 71158213 749559619 923777390 134471539 851832261 998498633 176017333 751053101 637592387 165357189 323835096 808811243 776750974 70758467 413428383 162447083 84098052 139567207 168895214 475220580 323578815 382071590 211952226 731494193 220855277 693250263 460533102 937576348 333613506 905615290 292610358 870243300 320750143 873191374 356205304 236904044 173123549 894107363 755726637 601522481 96220990 593912990 673580090 611363201 917206213 814125912 29116779 460716578 864053281 64585028 870384661 588849536 182762713 356355372 845291857 783201549 5101130 263229528 827854886 233111913 85308047 835262696 997706208 114563576 37314270 398494714 792267517 93640942 301294707 33208590 394950953 468694063 571587701 136823483 581846719 161116400 605285543 958128730 839789638 282606527 531201875 856991919 730970968 467098453 27782483 264989320 805895187 782982787 447081218 484263017 509908575 643830502 840294542 275325817 519785617 941814868 756494228 778004192 842652027 416723057 802474435 871899800 415794623 951493716 241667158 326483237 73762090 749106040 269957904 480309855 87964650 415695415 887455416 801609691 698571370 976093202 168076867 583144549 821023001 882712315 375334198 354234766 245726773 59831959 485753195 834652627 482119999 106354666 339404233 899010765 203988655 989531614 406691436 351574241 511133951 810358143 562337237 567296556 917404757 4330535 920999303 86088388 336206912 622553770 498865786 753423149 903303266 92324592 668155507 99295147 47685417 43788174 391767876 906602277 746643281 397793586 760562124 359749839 130141319 764320235 949012950 444984783 482801487 43506090 103223866 232626301 480501744 777995307 633047237 40202851 683702150 241873032 420166622 559582872 82469599 808446330 753825953 934683088 379172024 925719630 379174489 817096602 889560824 30234932 494510541 819620056 103922572 437244755 777786160 968928824 478931865 623649258 783492539 498949301 865387670 562487240 423488040 499367044 737995635 746621104 971553670 420152657 633734364 660649526 683174710 818648325 482250998 482134098 76769766 197395681 427227634 669235284 672760433 432216872 220359925 340258539 386910114 986768477 943348802 367973676 498129739 24291360 224490895 813953460 944779586 73346064 948402054 796015671 365927636 939364518 889310288 966825892 140065006 510887803 547811200 594976499 288173972 678043830 585317320 954110903 752586558 773312693 74798416 710613624 746660577 557132902 160268700 123734133 515115687 41723904 348142037 751751447 94466246 788191206 647801426 787041770 130384805 230469661 891796418 515180192 785464698 87933294 997959079 76856400 888914111 667357849 689082160 376380968 116555206 25592844 389724691 330469275 656059709 926195028 214749161 392664817 332467139 909883658 506358948 47312511 990133781 831206855 226156700 692804188 508698608 412582339 444341449 353965600 222458825 792062173 440295091 573486768 255951962 842235313 620381121 568560352 321591683 765072955 282903136 472631343 20612251 246208436 211186698 902423806 73146068 817642383 516838460 988584098 190612193 742608361 846278717 255022060 313349098 315875278 384851536 327740697 635683215 223930812 425361780 328365323 23842630 665507519 350508390 764133546 169638726 765447086 897579502 281115111 507746800 527736953 261987435 10837642 527824209 702842128 1557119 887202131 556974423 652845692 352250132 971287922 354629097 319843891 684039488 271830835 803647499 805327968 479807839 995510161 828435194 773199110 830394765 477587945 692950269 538059061 843558263 115289820 126762797 407994042 560937573 761640740 149461735 213329203 726766982 108966450 488173914 436592005 891208112 864556793 915703676 530562545 492538262 948703004 595598925 440073532 40558860 296860548 653879976 910331906 353128737 281638979 399471264 335430181 162030060 739891204 846373575 852510269 41384774 974787358 944210644 199551370 241541470 439030207 657464736 95404129 947865915 985963101 508494045 453815014 629428433 192956889 583486138 144161824 103943529 804226477 518398660 818393253 798646757 244023642 820958846 972235870 934518951 179528259 811560225 565925663 518034299 550969932 404291461 424362783 116214274 656186207 954389825 429205110 746577830 768360007 69368231 27190224 822331192 564837598 348257405 824051996 301064580 531040558 962507207 750139664 999766892 798797286 618924551 7776070 12256004 902665291 101238284 774279531 192732097 666622317 568109944 214826013 999428932 449644805 354352572 703517973 105851979 918808195 953158871 516895460 451512473 157405257 115741972 286209534 91925977 478584436 844525320 428182299 315480513 372459158 745456675 416346807 21874741 472058127 245179307 940258393 734080639 636154256 132569250 111406004 402891396 915121877 849397388 743207979 974340364 263316690 418325593 365936407 141036303 554913620 390545189 790254252 382768193 105749376 189672842 720329295 109290405 555357941 608632283 926657271 640146260 352445340 339600176 427978979 731622769 451945861 11933555 860843272 476429557 986937452 727633639 439143955 994545424 739770911 848431340 692064983 546129498 751691941 932920008 715304124 522937500 57134435 122484677 727428117 49668741 243672147 577262960 520003614 65710413 466023417 630327918 286456726 883624765 484621990 809126720 923439407 650896446 222904327 755566908 486208530 428493346 955866707 488205844 60625345 158222995 318682281 501876063 691204782 965893139 676535791 765518311 147210220 507976643 856789768 98824541 301256039 883563826 598561498 263655674 319738865 709046287 675223369 711952271 61616482 942416693 427058172 302893240 664245957 422473899 893689039 711848546 18042409 697405805 455984677 953700728 348460796 121949996 406326592 80082107 177068043 777476330 314054240 982390796 603140960 943647425 4061579 535934549 447786459 287985544 269997963 649452705 394706942 334293034 190438795 744872113 231686793 120680880 752804436 42440191 742101363 895941865 344621310 710549898 244656196 68023981 651752494 644537494 504786521 566332021 675751375 960988831 512333360 747308390 16177892 640398783 516899468 413523516 704304021 303874668 780639029 912448989 691868318 113968032 144613948 605345857 346644927 350653679 569563014 878563536 323975057 453607991 525512445 168196036 333645885 960492010 852130333 31703412 806715801 762387525 123490717 365871948 805033663 583284796 787325380 218797550 661608646 51564264 411452144 304986767 749326411 424681136 660873945 310539466 123181449 386711286 193038360 86141295 198881582 897047996 669487699 767453503 403107540 597958534 272338859 254074466 900272089 552418501 16030836 111867300 270950774 378617630 58691279 630214213 457134527 722251532 107873851 121463675 794503592 329963590 656823850 929591150 396023633 347541431 669626778 257985296 592070318 502807739 556919138 472125671 183654552 658909243 820449441 957224285 244418943 845531234 106568952 621896578 458719246 785138195 782908593 783094031 207839620 33932363 824936020 532510089 54092487 365899989 220469588 686139809 492036247 829440900 411341202 616297050 592489318 492776913 926446528 109687540 504015662 911816472 594060221 362251125 709432428 471484263 748655159 206271876 877549434 891826584 110407652 479308441 513827532 705409440 305547416 435170567 722100292 947230704 903599376 125188065 319280531 543445717 328934082 47205039 791207121 997366756 242252337 71434218 129958646 672130879 199284095 682958558 683895841 932715720 205521986 935803574 501784750 199829562 27575806 266208360 893886607 727506781 907783421 629518015 153757892 351972478 789689060 983863732 653269765 272549252 339090484 606910828 37131421 29629307 253609894 165986487 829815903 719257100 829918699 72448568 887073590 328229839 283766314 500670486 445699059 544149629 733231135 129318701 563668130 196739528 765903145 463074698 393335952 323060021 68867805 627512126 505794301 29372212 696018457 84422283 643832783 191854522 992249030 688755151 375052616 980416450 741394674 615121807 510510265 616324861 779219732 519215224 958021542 517291833 978135534 97102330 801120862 379128837 945898246 6665089 867316068 113011744 21484298 629876043 974590970 945877667 424314496 675791052 700210868 789820835 86648533 487528307 54502139 336454690 808777049 405835739 841948800 48623502 75273019 588991337 57634792 716117597 84995756 536293045 265469787 588510979 618173999 54098971 42648738 979501336 492295819 177433464 526791103 593876961 682940142 871448930 563057026 416447838 198886957 156141122 540660225 20347632 989257478 403452504 371240202 291160561 577799642 122595198 54807226 9583369 839131138 643195738 372734637 553172978 835382628 889952753 662065989 146328443 429242999 255829570 457414593 725556144 992192708 988396249 608203298 890234299 926637522 254146338 288762290 759930657 492790767 106829035 432403118 337305150 215853651 186222404 288594983 145638924 579035814 498890921 912177775 977916335 83747188 227224193 349004870 691887136 836559347 635833150 196252640 354441626 701544278 785550967 245351487 519010653 650613025 679218795 163251694 692925568 479306134 376619769 63225318 510504697 771432593 430751185 360165697 191352811 172398146 296378742 167367718 256937270 963949553 534238644 397398020 54526455 164503351 876810794 394334245 629621058 614036357 836554680 994821442 681423492 408346331 861620187 960342792 650152545 880951918 260660991 772142083 593509106 84540561 702320126 932721772 524639312 72714334 536966007 92505152 187974568 449720978 596678600 383770901 459119952 579394914 516858091 755637474 892882421 956853958 506162696 934585553 295461400 383838249 755214738 169964456 403891542 774272033 945416404 32532625 377280996 575372522 954306919 265927475 442097640 464581629 709952349 236595829 331186666 462548174 299582310 609386968 370366421 34645625 536719954 331640428 77847961 798294716 126215968 309651108 122145322 834898639 918964344 696167845 297964667 622115063 707709937 98445972 537753178 55401267 742790476 103710124 387157186 989473520 557576508 146739465 566847203 332063498 818144447 489236440 162569847 268209251 576618450 247823372 51738275 145301153 915659770 284067978 770446949 750676391 846697663 322737703 768388834 38781379 557692368 558250018 789468511 640701288 434433403 320970241 80659300 519785352 52857507 613151080 891638973 105936017 563540187 142933526 505481968 649428274 615927909 582416699 830719850 628657721 419799930 675769526 361745115 23096197 203696153 870987064 914371396 887334829 701074254 610568247 354514611 992298496 405710170 864350728 579131478 97283344 392264216 117368322 187460972 88159438 567947549 977036898 683817423 411314136 278790273 692394698 380505753 828356976 769542950 493157912 573588297 999034090 740899257 235673234 759517232 99866666 524441113 959781918 638673437 798313830 517976763 298209159 28647023 848222957 131736603 946486209 706081103 426766726 733097581 551239051 297426997 135333795 633729129 718654905 918226834 827240650 772706103 435614004 311024224 432957728 865761670 189029500 319833593 15842465 666457121 213096814 873651530 638957894 127026447 93042491 286516176 390035572 426467209 686730825 249789157 641803412 690291349 618327989 296961885 54776126 655330160 824658805 753680463 594984043 148302596 820763323 695106193 905498123 186922798 517623636 506824810 781572068 206518407 786208782 864167238 57682045 585846624 587979964 621106101 86377247 458527784 577391504 543827456 533644799 128753111 497319837 544524116 149898720 800091004 8938535 316635866 202447088 629778943 897243659 407005227 70654157 858748431 484253650 582619426 694561367 441495750 984902349 460766279 715498737 955863634 550649659 626576789 28248335 644423471 969655896 428295416 706064901 270711928 258366175 97326265 941676318 132978168 624656589 349107408 676481922 875558598 597015052 746687414 370661057 437634453 239333772 713120187 712219312 770726857 868462020 312866614 64058689 866798209 997739107 790284505 877936478 817310356 489964317 923728149 739178131 526914512 622858846 835000616 966804190 413575860 681340021 127143615 787889028 473112769 609170764 892115558 811434105 106925626 293339753 943949795 194159852 627827745 474654354 655897818 229673022 268231336 196645914 953396357 786755254 64455320 592349977 681224444 478619950 210763116 601384501 591193192 354125693 386361275 877823541 178399873 692198558 791713536 352166801 563035101 59046429 306575185 488069768 553919219 709073039 961857340 216017503 590047852 975661899 435509868 573854732 444590929 522385572 939063658 709531073 479466495 802043562 522490325 939304517 213671571 548492480 957572296 123054422 62981 931963542 906058159 723080394 429078818 836896699 295113836 791218929 842329800 219938669 808904340 637172143 744738315 384422615 845678856 183349425 167440255 446655123 346816473 362515533 596533289 367204894 206426973 956628667 24126012 352710957 830413417 218179778 353286214 956552300 366875592 656303961 279640112 745745526 148102781 473908626 751580103 492664498 936324733 56557846 115468537 930518433 470325284 977312004 709392282 979689777 773426399 992311449 418532627 30195267 559121376 260016166 309310785 388843711 122054555 796840988 885663437 360454025 357462155 793915988 90679945 689415506 111309961 458912833 701407611 6347532 519734322 5077107 374334466 68270399 966655157 163505473 635262477 883224635 610506455 907549739 959404619 37006265 892743581 113972531 709166441 883444481 88442120 638125341 409553179 487952698 743132485 519684918 108186657 231347698 571524313 705289087 179157945 345674328 598517366 671734693 935805301 331768754 680851641 427615345 928614575 636580071 617668289 505219624 773131938 459183841 539460528 763639022 130640671 36953005 439161394 148421194 134315 908106343 396382584 451298747 210288404 963635945 438639242 76257280 97232837 906775531 166169755 680324371 251575355 507272938 674095482 380004040 797824514 118984574 623453433 627674722 69974933 570112690 592138315 205168200 905098449 384682564 929831484 440975447 483503891 573080070 257153811 98121555 513224065 743301230 739331314 396721388 795719072 218952159 167248863 826666675 247915854 677996336 635696471 53935984 187275105 539981465 92076890 759621740 25635582 496860233 893513165 28039358 90465559 54979076 480662451 106326154 681521093 746075403 158961 508591365 486687875 392245759 756432153 10568732 204726034 909811819 800581757 664392377 177491494 408489895 576254857 250160371 51404097 688365638 829727378 141467776 491608980 95499580 593697899 267638025 129871759 394179248 385255736 417526069 364992593 229761109 516448577 944618749 906610300 501535290 647721772 521456678 441563149 654900161 339068341 572951810 816645000 547956503 121777605 417400964 452796189 530850736 137573144 666433038 337033207 543810332 762852483 705741010 409401137 855008036 770089463 206557123 221137950 419829315 920425892 764175138 631471878 117811328 235726729 201386196 684963407 262294629 596448120 141194472 88821157 578200627 603042611 943674384 788977432 909295094 609399663 477162809 395611405 444306121 481055650 487716287 579520613 709191702 415508471 217647844 636081232 866988315 621925450 506386502 325430796 133140798 478354305 523414067 82692083 876983868 38952835 371222682 697495064 912122401 802046610 63449706 279766040 714254016 68346241 18766225 547250926 920831067 423067424 63822239 506306453 247956824 638242090 752842532 585873322 52424466 227608769 983503606 23543972 280505782 315077357 617517193 422066906 499820719 299417512 226145202 24224807 447783276 775929857 38976535 556790394 475062322 749827765 706773197 277648008 378225030 305021625 430449971 705421341 152338492 73118951 74784552 131049012 19444756 254361695 696690560 703625350 661232787 950029879 272861256 326120572 158574130 785241501 535236795 780864891 628398757 980220485 377467995 374808480 508262697 120968628 603669715 306890454 176485042 489341030 913329791 466326503 590769887 566651550 211511065 9527835 801549770 57584934 450344196 350411037 997807420 582801579 370901677 540877546 420447722 760618252 411565942 895476634 234847708 380211746 238275362 177897079 975036760 353063143 101099425 146322022 295360628 569251740 274581539 700094049 306913659 804157616 448752668 245824352 537270094 957448701 980566951 565592726 504552672 729606927 375057183 751826765 226712385 193431800 663154795 242787577 598111041 812270002 70892016 251871376 999106016 365372637 370309024 687037850 5677673 862677778 129125148 714330593 796382523 840998701 706905446 38281348 55327786 821488798 84968510 81359408 981965187 435606003 966137920 917949843 760686903 952421058 319660614 366306419 356381945 434942061 758105595 662812656 539757796 658118688 530116174 621392601 63792259 133503627 325931419 297009084 886734616 114825986 401290643 147751081 672523881 319671096 383106077 791111890 210602945 995151915 40381223 962938065 279906186 69360368 163133348 892296740 309698998 143082465 614510182 438712802 844438764 703792115 299827821 493115638 2742746 548384908 41418572 84072728 87104062 436161598 890049832 652443152 80193988 13895548 428604638 684606412 79344628 497596554 623413028 313060024 288645729 129551260 308103508 932459501 264583610 62158349 289716990 75582336 319105942 462913264 335598040 802325960 906190229 576056160 627139719 769425177 717138201 354260623 235217663 112095648 247955921 871368132 104946982 618599425 171745512 811936658 138877098 894232718 793741571 6895606 913904172 687799162 249644992 137769480 544936958 671144869 260908872 583093261 726748392 529695355 508805870 221211547 219973750 789170253 106828896 730501662 325627788 426825357 826366624 310350982 372955730 203379114 492708518 876338606 433873015 506848823 366775025 295137544 337420148 992283930 244100598 544566852 67366023 64383280 924790913 954332765 192574936 922780739 625325330 367446056 96654200 989796025 527916439 514593808 85033030 98146815 627424552 908685132 817613669 673531869 508959410 334724827 39069111 920600503 246735089 260799548 141579431 257309907 328439094 236381347 194572974 956523343 128829113 764584014 670262779 399298041 273249750 521511041 880613505 866083543 294140318 626755309 962568622 363461315 765934240 15085592 826491228 450713199 824961231 713628709 908383238 91732107 124160254 523555233 613250060 422189561 592335400 300434340 374009444 715476582 857032379 769316244 915997570 789376310 82458026 523684424 696926557 54631717 215235442 227617635 946260992 723045629 898625040 544891739 700567147 556001327 413204286 649820409 466624982 328728935 661644343 569434753 717872586 383584818 527097018 675254635 200103975 977566469 926216118 808733772 820367333 20676673 625822361 283899940 28058316 566873189 859544827 705979194 821385708 81369101 350058158 865035062 664798384 836522213 692681715 73391661 692233845 959586006 311940949 733452389 362310662 87101703 893332908 610491573 490229936 378018538 948672015 97274126 707833987 844040111 654201482 50428912 442695410 624848999 146605863 57571934 586570215 798058471 674694362 96008823 979469952 678868377 606383310 212668622 109350865 848783579 216298121 988217622 593959464 780387157 544678654 381352394 840131873 3063128 455691427 351392415 408696810 109136114 554337905 750423889 732188280 948958640 6632334 732884650 422203268 126607305 638603287 647233203 886477714 194459189 123745188 216057657 546693473 131127673 6050407 321994533 908969696 907418355 611052424 333095405 643389835 666982970 882835160 86059701 696667556 659402677 575190673 426493920 18966183 491339194 766340620 509173651 785103579 634305277 834842910 193416574 817034885 832862925 247125380 67137908 612219383 274256811 214134600 968917628 318002455 470363057 274403471 113580107 975968663 115183321 322609920 457786104 13206000 448428478 643683715 346543744 450910706 913850509 732910606 734423875 784713881 768584721 857642811 225001846 714381193 48631684 805163811 375505376 797829133 568052413 733159296 558066029 249385723 738938828 352762 634185816 997822759 485437189 551500058 156409961 840900418 483444086 972974534 470522912 913012712 153376463 451141063 143403042 128413688 303014747 925019454 668696552 116137403 352472836 950283457 94941612 95844714 706718373 594706276 759480481 487994641 752022828 878196594 946551424 315762357 461827130 536069226 23287807 654849090 498425873 332304646 568266389 676029427 844620003 362404545 704322276 351084051 842758777 24957855 220698158 261795152 541197770 78622135 832106796 177771709 710016532 534433939 587527224 24060927 418455956 680876366 240476388 254586861 784462199 410860637 646272435 732885850 607700639 501209695 883551331 238634655 82194218 260594187 382605715 304047654 238468794 583031014 43921005 403032616 787410492 29996355 495810651 140000842 514027826 238881971 478748154 285867704 790353625 537848186 135534091 948919468 812256950 448082625 192967741 914174496 895393915 457039212 40543835 258017918 528469294 435267086 523757055 418165438 419811663 884031253 834316664 349069157 140603716 728723903 562233392 200944007 789580706 540254047 705584855 70001294 820750766 577354890 908372790 431538059 97016532 909281638 144189015 709911210 322497993 847343168 97196197 161516039 62381756 668912508 527503035 741643147 68211353 864804141 333678338 840449211 147577495 578736676 65524439 768060178 654968652 243396238 413823605 993046834 702777422 556258925 160580882 87745567 203211862 419862553 528017510 85639999 13553902 547491893 722228933 627640345 429784140 315917606 531000636 62253412 665402713 470955542 171895002 101656907 439247310 541498865 126209306 43168212 509013752 725224286 597770915 270759650 759894851 756632407 51408465 206531510 879630951 92768522 538202130 732882378 226123978 279433989 809931662 918728195 546161456 157490990 546050394 571198290 315476358 738827230 581865536 200934047 82545775 235755486 65423904 594772921 738664430 52969273 640978758 673120760 898581512 907021182 233416758 249078318 790778233 440313195 987428179 841347322 141199331 910954813 3331996 797778372 373273515 757652156 481726528 484739153 298108924 114014090 831566821 175045551 173238605 121534807 727582954 24720356 85692836 578301428 185179023 970278869 362531091 776038859 856326342 761170615 195817068 426546736 101262294 686785147 995059128 426626479 350753164 258976169 538176807 431044044 680051230 625788549 221234876 650002821 508879759 215632253 699138384 423908586 202095293 556184902 735284883 637490483 107700294 254583242 935088159 966930685 683616976 787454973 563374702 716580501 191739177 240826856 85300444 807977009 202602590 452442374 250390311 151587963 923559252 816550758 561618116 841544737 350502103 652775491 602159078 876620794 379914487 963140692 727066553 936797948 608208382 372455189 532354272 712230721 403168780 124367773 998660357 660330128 772634929 47276063 185944455 290490935 404290031 920337356 230742964 104891212 702848116 571813549 279437241 668248957 902017320 605639440 959474426 732659848 226664525 874469186 957088713 449889953 626937034 560409976 15116866 926718581 379645351 189897593 144641125 939790376 823494413 631774843 497131323 669782720 922098212 232703228 339625502 504384835 317822477 66319816 418592645 643706725 662824366 323505807 392164743 887648573 307899451 300920050 180821798 288434952 774628430 396639739 581832665 598977787 672448449 765741814 582832914 291282526 152516275 841930164 538197677 456388534 35429574 137158850 551170049 291009102 217416589 826828639 129486593 497734840 479421767 998081774 331472857 96822756 656659914 513624149 350336534 279389784 112049222 279497392 429142927 758841185 942861919 699475694 964235098 790164964 25846096 247785127 341775743 496118937 511372031 680566365 262966413 541088700 4422774 453863865 648269659 44244773 590017012 174043349 363471590 316036111 896098929 15039230 706228700 294384903 83503587 107330296 405284835 471135790 562247083 273913414 783233870 795010258 389251533 284825797 226368495 800146914 174583033 239349302 779161333 611807503 994006934 243968128 370592632 698083673 219542160 501074546 196926100 806678869 4330772 169789513 600499273 764307855 964631827 898931049 811271540 464020197 22773116 947907523 54480249 262344127 871363616 949085242 947171012 20412448 701653173 761938775 187831154 227783983 283519710 928557729 165803567 499596473 852326508 655480088 334747545 6083082 408238203 361651725 519633511 476405283 346573153 660647616 498548170 730062021 67235873 497023188 412307294 57613760 275105399 301854156 594326303 349397881 149130160 164454935 546765218 227091424 946024838 932169553 659128777 809656225 710311229 666038394 95360764 932777620 983472222 19219300 487093052 487162172 958645862 347592673 338896472 237237391 123159901 332408830 557890715 340238377 720203585 355048632 611866772 863574617 287669884 200505063 761265086 290701535 723449342 152096036 221064544 314205160 545070248 258251450 971297607 5586053 244539319 6863937 690124423 399826126 463444676 765368538 452913268 805233779 885390694 477292906 473373462 93912607 876724444 527302732 440904621 638757926 716364370 215333813 105712805 746801074 853736932 774717616 91230068 57659261 226157241 971440975 448975893 461558739 921575733 765348405 941296819 895427448 626699816 657133806 714290432 926639731 700125193 40515324 248692031 738157443 508348112 983023885 385003163 321606192 890830604 268284282 814420489 480592226 454051445 29168944 433098822 353536709 602130291 279503140 868796684 205184713 928232009 708045237 601797169 113597993 17912884 87907490 132610789 217257371 164476452 370340145 288405008 32685217 337789862 698706227 445218269 791728272 621257027 961785774 276081505 189356379 100394803 343956348 651100994 310170427 781468840 30093295 328222108 805237102 784652852 692784892 247686338 737619679 59609858 213333028 311996426 905423945 637684304 939092448 804352624 834703179 258424346 757427532 746863810 124284463 282455230 497895908 196366960 976110117 252997699 631214640 928157761 188383375 663571652 666282058 309053956 827956743 897178197 870765144 594305890 166661114 561910075 520134895 775231499 988538030 136453866 345086319 642788572 536870967 719385291 725887334 722024553 58229145 977949803 646557477 850566934 166259357 478188947 186306661 804874753 36668048 169896481 79794462 993393468 443372959 291345901 416142932 373737414 978850961 713722050 461266436 541972621 836431610 71068783 842672090 794159392 266677877 119502043 965204355 197933380 425670414 205730452 346524214 42458580 434847421 249117419 714653887 241692915 691910376 727964914 790583991 718431252 267238096 16309485 695696431 245692676 231943407 105940670 771099111 502510371 349740921 732918876 34337174 862416069 609931266 465571594 632804723 161970818 565859676 228670622 376436849 121161588 978573097 977214118 104016930 603641934 204818226 286727830 988470335 785634022 669222111 173593352 809528345 803048594 947231 830214591 341529513 247991507 22079179 699824986 412446084 412103093 106151366 192060683 35045757 340842742 471959931 821466154 91416528 160718577 308748958 842071501 800125088 841716787 681142562 235772224 362130809 250652021 687746449 962799372 710669783 272651772 257056395 902858243 197779822 645687668 463106192 785142729 323165263 125277099 86999569 306989707 904550559 344176083 446583290 860306500 721428985 781719430 313416634 37059446 848519916 978541714 110029359 394274695 923991299 592448385 653622555 665061752 135623230 724816100 933888481 316649373 844038131 274105544 252687622 438811300 482789365 955960074 797835075 978211404 218978223 298141326 36345377 528046045 749989067 750810798 393956886 395652578 849758445 769482121 448248145 426900336 175741588 528228162 764013024 405624589 714200333 822304907 763119033 870529520 920839923 113517905 801825675 233892692 921691940 699573069 631216385 387190524 674604183 706054033 849004234 77317297 77917372 767751413 366225088 440231684 962420473 471552621 386979131 977977941 968811396 82351475 499755187 550179850 212964607 129098753 42382069 772187867 390823521 610626183 845754380 113696516 373791354 708752556 710887998 607053560 603543827 365608552 535843422 631811604 72950471 752811492 288299844 748712161 18602258 830412590 212326928 374103652 377420082 110335621 268003603 35867920 303339869 932160549 210479423 960544882 20520860 284542840 190017388 746475049 463447755 397508369 307831192 689020374 612444239 484105131 438773504 663767631 923806793 560996924 315926549 539765820 821105966 778167526 382913222 244972681 434147726 624492254 850401114 201979341 119857926 247446524 909592261 880646953 291559120 265583560 260693622 343092844 872334786 894580895 156356736 427450359 511255585 502550700 309285435 349576074 219250634 515587611 500709057 508820580 957416907 736415033 163947715 499700060 819328043 113692847 791806946 809307627 342534043 323423499 939851557 91336104 966493728 418067533 878897583 953320707 176632666 399601844 791659910 869371000 992653821 435446938 802423738 150062750 230248688 4152537 423360507 757649176 779906879 990773106 516607058 103144794 578989958 889022782 78066347 780441986 260127561 644176165 895847295 910748398 892221088 128390187 354007459 634679283 449688043 127121597 617815835 409495987 283723335 586132058 315322849 488457451 201524832 785406337 740604889 26555152 321853904 815137660 852566029 654175244 146754148 312862351 160433002 665679428 918920824 357096664 504825199 675858632 788081882 986870287 941733937 838142588 187780738 552014226 699061400 681098514 271911664 492744842 571602393 897911975 502253781 350028831 907438814 915965362 344137869 141265634 421663470 697701752 614798312 821025882 900258760 727584738 354760259 73573320 196658639 804339222 309572740 896405944 778214094 155210936 94503240 287940428 285898361 338808778 889407075 43496767 456412943 771154547 717350679 767748157 590023478 534811001 580178254 473174206 355738434 925602531 704347006 742716145 804183411 420670230 93855561 764400180 572584468 635520075 141703690 706100802 494587546 660506274 296709536 84739421 645193470 983174917 18165080 673441040 56549487 621032033 107672391 385569203 999244022 959670956 551520009 330432664 750738304 72366491 271594790 207797511 985802883 216269698 743957110 820678703 949150307 205418885 975691724 97567083 81356494 970874551 263151834 898056654 379648231 457509835 501591275 467712519 92008938 144232779 647824004 160009581 741446332 199773684 205698511 191935220 428717741 719383329 757914551 959070863 370062262 872229498 502730297 677020156 760739953 863607863 322726933 73575383 498423604 116343815 92125643 413998100 758368244 155457690 271633701 466101159 272894353 339059698 805558510 141954659 74456234 80491151 688804206 653902407 423643194 345847457 76517711 888630549 533788123 69596096 539098124 10860935 361341107 949139116 898810762 270957419 214570093 57539250 523402197 302427139 614050997 144562144 885548994 946464826 213064126 377750487 839139410 126100668 828246184 522892750 315499133 764087456 100754466 402274739 144506841 877809159 470260720 791399141 528621165 769643511 758783089 23999326 31615710 881610841 75154930 534265909 55854084 594557289 230105280 930619359 637391079 149198363 40993592 985711313 265881674 696750452 144902160 721132121 603369105 592130050 962470235 848495282 131098989 870129410 447294377 125792054 234543293 877910333 23674055 492435009 86184175 285016849 902034334 901980548 927056497 786128419 690734437 467232043 495488709 14013234 715952494 783166736 601986402 204488279 378604091 268289663 712023309 183776114 935910609 163790535 263425938 704534177 333332510 470907836 33969654 259890734 967662859 886000986 212390234 638703155 635193102 731971550 813742325 974254406 598278100 674855223 685362487 401238923 736569744 106706296 983360527 851036076 132931362 636991723 190767864 111794638 303514945 825183976 250233090 294330379 989404966 463595797 528293359 538809929 195139834 114479852 338369354 549036617 268987087 77264150 381453388 253339562 127983417 379614067 967882823 312905923 339936178 49393907 343558714 812316580 178753408 509607606 638470263 129922737 815411928 610447295 757089442 915735218 377352973 10886247 998254299 350662381 868395341 464515859 534162161 733309104 149394138 344620623 878219891 392941626 688305395 6115837 584350493 567498819 151056207 693756455 178524092 719753448 438900313 64995262 396689618 780107704 275500113 102684920 950192210 273926683 806528475 622252881 967526261 890007839 749981097 722486925 125653785 629646870 317721361 713083738 465096766 927409840 377129745 594533026 224895950 932484424 399528692 222654458 864406183 188383153 116568739 400099606 591396806 12780520 600928742 998857245 326037602 387202053 590147546 655381233 423078886 723763082 268791859 927032850 143052266 810314840 355530171 705990873 18127836 34195964 770606020 645512296 280286257 979461983 616359616 737030971 368291948 417877302 728596518 150085030 634871131 202658022 868135475 585622424 695659315 613113744 763883106 161225021 3983418 789218558 599482875 21594677 256379997 524907255 202004461 767895744 289379587 463236148 643167764 315260053 939378636 447478307 2841783 774137013 283195340 640732716 145227614 331126595 694701541 595941693 988223098 178443434 5621282 717179373 306468061 700878455 532271187 932764142 575118971 678046599 787680182 55671694 552614126 715739509 466866727 115992143 211463201 87624907 726544239 173589409 301927546 837643039 647841776 308546126 631480305 699221370 439258169 772795203 777185513 217695257 642716940 805167888 243857191 61744081 742942927 52381261 620933384 888163447 751993269 767651789 157175700 860155331 155745233 424336317 522170931 592329453 190711707 738907490 766507922 533888894 430969772 693329174 11265390 11026394 422864032 109363043 378798167 940231538 71066734 491578792 654035108 853283829 60213984 198940355 498903546 614014822 63121814 644311542 419413035 962646029 703278733 807872954 997394335 698951006 659207726 523171647 357538413 757062990 178971132 522125340 540147213 836193056 183327497 357078323 257484751 729217664 835324880 330744508 564254836 132314739 8499268 638563995 552029565 939057998 525475801 91674309 120502864 549927125 902383848 148235392 510419185 147737127 18557649 407719681 585527579 26655449 762409333 30325747 515164812 794772854 223611782 792567554 727737041 105801354 977780940 509507049 721503321 37912224 351645288 205707342 915753132 793699167 753004629 712789657 42732741 985802295 324074657 306749462 656108492 687191163 317050244 574117111 832161352 512167694 600917858 832003172 801476558 991245827 83202831 11837522 505031868 838082995 997955067 978316037 448543709 523647590 874293696 665426242 23067090 911220110 832782656 912466877 8787346 922298761 599443561 738357606 172798067 204476074 450390350 131845888 664741775 273915557 58995494 758288005 307464385 949783581 257218922 269921778 82786744 21701476 669411429 439395643 414078938 350554500 606127750 527097989 848299156 657013549 165695138 661566239 541594678 829242680 503667332 763241320 808392192 578940874 69128411 98971278 955747944 363854332 714725815 254515987 789469523 666656569 241017677 423855926 797355591 247370172 538814415 594283894 47584958 723742344 601531860 175653104 647061063 380882490 566713028 432036971 984093967 783998799 711920926 958715628 959284952 731286459 740387280 117782925 453957224 430515260 168173968 715794415 514973096 883939797 759173195 105305024 521989050 783310681 893449901 936273704 936589049 604309528 64458916 307975801 920818601 726248441 334881005 145228527 144791342 327516162 617534225 64386849 276968561 151430516 787849478 378320531 370669147 27267645 35184670 182452516 672920958 10581322 915437284 984083490 89278098 701595475 568773378 71604754 839471258 744183870 641400970 665879068 835909585 900720087 15813018 876022307 390423818 727492854 568124372 554311046 403003580 545691567 741111141 915761252 308426275 760766738 867282209 32811302 652457952 818499639 235661713 983922828 732013678 263245905 298140082 390153850 192371249 287675138 679912341 446578288 57207015 412823565 239786861 332486419 361463739 351672176 279621449 297936909 421873773 956272289 892832555 895261539 50810686 700853991 217266579 202581540 278491432 996568190 349111978 955619022 262922884 760365565 59973246 596112937 597272835 111486134 414026415 292433021 806668899 39809362 568728821 193255071 298728215 440408460 997400836 130998838 486447003 717438059 37218401 521149009 651752767 79003673 125163793 657399508 162113810 907458354 980506534 341234142 973058458 935385458 743312902 601082429 304488013 9764326 952891263 342863051 213244953 570341344 277388743 132882278 809824673 556146926 785416142 711005868 355195199 209961007 423494166 858068539 23321915 903763036 123470673 217072725 850958263 823087824 347881739 729225772 533249688 165960258 411158238 385753771 582047532 780038265 14666262 490720382 622515161 779324911 854046286 190650363 413300343 825923560 529791289 883751200 710403343 250400673 899908849 796098067 319773675 995975310 227748812 372692957 954301753 896697837 840119407 338424405 384100304 455883055 790812296 928823152 784493667 49092550 5043509 332624082 832535025 186637623 267922993 527190612 436956167 676074808 433032934 213982439 789646491 173443032 195768095 761875797 62678801 679582064 483055356 374262723 72795937 798431902 174346497 773055610 638872235 348839375 89599617 230211515 491684398 69690414 14956947 620688747 605765692 437619505 850613997 874742197 642156484 746099245 962627776 852631687 776739689 829377914 193946159 976898747 403991005 641818201 14010722 44215427 944369599 745218864 871551633 471724714 783486392 983101540 151680344 225526847 38491980 524593959 836037883 194426359 754295525 634035162 267489012 385674398 573132458 348601945 498692773 882418481 550035331 444249115 710883136 55433728 770368952 274061925 674593610 898049208 221503423 74076081 342473214 732549069 578595137 988199647 246044396 4043672 107382868 137900991 154597264 586317106 916202249 13799519 731314371 456535066 977981194 512823074 972906849 468536668 407128398 186282557 165962051 831233325 405287476 349449340 149840880 621053047 738635087 92274514 845138078 358791631 447629391 538609175 193860709 171126533 603086255 727765136 319583486 18940483 584968611 490303450 752435422 724473536 317531184 942697300 282418270 936584294 894820269 854654298 72754248 208473958 208544707 175062760 40658845 16152186 222249735 304479480 114612990 191340272 136453659 417591990 527173827 676141366 486190287 363649235 69007891 599581740 698928202 936923060 242169943 523101746 634587826 328553593 521976824 773233157 804558817 432081800 266864455 995280976 900869722 832965783 431385505 689085311 626402499 93882605 146553123 860911819 502541147 215856629 194552431 805138135 424329814 482714279 120878435 889000084 285699307 289940103 494369671 189442537 966495159 377923255 123988817 249470877 238206997 881438620 14255184 375138861 977339845 356893469 671304523 740790390 786071169 133721515 792917276 619446502 654495405 989867257 215285844 242093200 619643411 277713302 20617171 753774070 593677070 381371085 483847202 992697986 419252498 733727792 759710530 307261511 369515148 19539401 71929793 273916059 963068876 252221092 678632039 77993805 802519510 176451340 164672920 376124674 173413370 681595903 956767879 698146171 928402086 857559048 842322714 703844441 174304752 667769923 634089990 527987931 487010381 313140384 224899546 542090552 275747158 25080730 927572890 568175095 5460783 696814168 438147658 595956475 223621597 326470042 461751711 748663984 402805745 265571357 723619175 167493754 618255785 87371763 966593152 100539626 397540897 143325244 411831469 605198251 519196189 469373722 12700609 922026399 235708158 255081413 235737131 60775895 121769016 994324900 235822336 927080727 350716196 630283982 352273269 444711583 522958171 317082614 400212364 133679864 45260857 341902981 120114629 99185099 273026025 68826271 478793421 173517518 291821654 763199509 521881841 556513596 887378370 825332272 550845037 153027377 60702756 597315073 783484869 568924643 800831198 472365710 593964492 114013944 157018248 841138392 437277605 81135591 406342632 918328874 478557070 455852074 937139953 656761871 161034535 332534016 803067832 661147071 765151310 516753973 978567298 115561658 771028045 991509002 68501381 200245597 965014985 961634032 237050243 661360190 291290766 362579345 338649419 972493655 869663945 706550701 599899914 261212770 171514369 605089648 257946435 795856324 49491503 475845153 736426463 505325263 151429776 262467569 651408113 262949149 746215809 435127459 125471783 408040648 339250196 50334525 630257839 681483220 798251857 115778188 986588579 992970069 938045893 964289991 652490268 893012074 212881243 325527415 357460949 866967954 365464394 694288953 327661521 280357750 713886074 611425611 571794743 789775838 73368340 862104195 935987690 580867545 608855296 272906006 162651218 207213635 162316584 125406800 914879233 800686362 858296524 485256439 180254868 374544124 479818989 927186444 580236622 299859609 805970153 318243358 348397838 591619461 634429972 332885813 30966063 196314519 74343130 348971783 958519379 748875030 401063443 175124034 891750084 740640729 813514860 209472784 702118346 977500286 116554268 528189224 318567945 898977082 468068542 928829311 845954563 373905872 980489301 931863112 415916657 775160458 134461838 921812368 230683402 660274014 888922120 4533091 221027006 118161984 557520448 740662998 328987107 271166273 598354630 858566120 923801238 402000654 327154885 613305304 158709804 771670558 788794459 934498028 252235740 228545471 228206173 57610967 581141627 586956423 411901283 603817473 606281689 955369559 34685020 695251518 792614041 947891684 723308851 714560086 733960660 689237708 421980730 712633474 167309134 191261487 474638351 523564896 840169589 622567409 132842795 434000711 79942987 455455390 906453616 707148649 883095975 326812460 348844431 647264116 405196207 772856579 781342206 494427574 952770072 553946626 912871700 135047725 646172583 659750433 311777480 616261669 466262708 900117135 261359925 502795393 180350268 791179225 52787144 838776384 820338881 16630867 443088090 868409092 266300939 135235798 253369806 539427617 831124089 181589692 175947012 825596424 111048522 420711044 447720723 481311937 107269115 715112334 84221194 746253923 456120539 369566270 854020116 208169939 386722606 122395106 451971251 622898545 667730636 458422038 825142266 475213186 802776860 119221118 671511672 291312443 334202568 967316435 284689503 712356642 618275445 520905691 186198529 583920773 57167812 86086436 823461667 211292482 708284488 334304776 800015776 341455103 234162211 585726924 674855123 446926090 33748167 182963124 53038705 895729361 913547305 835476787 472410929 448294449 287773317 501937101 590839617 745713803 984887763 929987119 715204225 154269559 658500196 211732994 56805076 362714208 462218050 911247416 777294052 940856389 678516758 599961595 502976852 211207875 727735136 488363784 773092737 563510884 999686666 735502414 550522564 595508021 785524111 49924331 8718586 900645802 424650962 619383924 909641249 321591141 652947469 999175048 274593860 86683423 303290228 859360976 940378689 7457027 415268612 612076785 661747826 6221509 115708642 544159993 88212561 366964385 285592952 825658396 474724582 169938533 974872152 600379661 719355350 283394026 337934108 921289841 569533173 333498790 680514301 950460880 434891944 149581369 14327782 782402307 186180390 872898078 424012509 320751333 178170568 295695841 621157423 875319314 784556688 309496826 364554677 526355320 789427122 337469168 463823238 656480582 983447680 766486244 427628733 621027960 620519172 358001740 497550505 929737399 216667089 348126117 536753516 409669318 898915232 595523135 597598297 939503873 473899676 717020441 57459764 269212718 872384141 649690085 524343673 416636728 449966713 423039951 855983753 433107173 434177326 997593112 698917333 564749765 285409993 233133003 995626453 798677968 670060708 181745045 10316974 700033791 274558917 218471871 976819372 902039278 626999423 319765736 688788715 302786175 164926428 261948470 863050853 769216839 37089444 884610796 57820478 184314307 378286055 230421800 2080831 132127527 555393399 643647030 768798712 232122618 621150934 181167830 223205425 731812884 54045129 216979818 826193490 77911177 108356107 714987624 485097284 936673574 57163900 212487886 403677305 817484303 842896735 583414968 565569248 142616404 131279059 254001328 519163768 675223923 249344225 547584851 208750190 849758002 210198671 266438137 510729951 93654820 450234620 326592379 816371740 897091742 664089860 290832213 861370040 574704462 122827669 679550046 462462668 606473806 118260649 182171354 676296633 297801252 989226412 23802849 673955888 471780943 563099654 176766252 414738752 356178777 947932867 869656703 784791308 418578561 791486278 132137403 269007542 627859008 501956834 631255602 681197822 859934583 116133929 850349449 463294233 49853074 295262457 616270985 330465959 391586354 396331386 632419312 217135758 960987204 498294727 599950185 526098376 80955027 129378808 613030390 619211677 26714286 310751469 953482539 277889133 178207012 528521644 158713232 931585297 98882557 520470346 255972166 159089574 128426739 463813789 677724631 114176465 729174948 840345451 712886113 395664517 240461272 90551633 346429529 869616335 549157605 965100240 749177403 185904521 918792072 579198262 396157692 998530423 668291470 197440343 72960409 327296387 291611595 412414599 910679678 226604475 934443442 142480255 974952500 815171272 485815853 618451456 869139531 418778851 430544406 835978546 103526433 598939117 352890856 894059500 740308998 227218108 717337451 215233202 994415331 715232249 789209687 731488305 578180106 894008930 184595382 926410362 127920228 939510212 851130302 44371292 802354235 610238 492837951 277616305 864904986 754765075 486224639 225617481 481218777 864826266 778416391 924940396 987128146 893883334 26190554 106484799 826900336 836544571 462460730 714543477 665787786 550335546 186930522 891393056 240721297 558365602 679956224 992669031 699788002 462272510 473217486 633546176 653483300 919783853 279255752 760724918 454993163 348638636 643690353 827685546 666160240 915337693 726422999 71948178 170312838 60951779 922707565 732822595 633275934 50231628 477339522 935108946 723734025 673389283 385370498 11139451 736249222 148359116 194383860 886997974 178455277 934111001 4074870 498643313 652525518 980089473 372333018 734186523 347722602 308665050 5041062 646715989 301583665 6571766 2627418 450073051 938617093 143713696 365812286 645297931 776294265 7447365 957384559 41114141 636878865 996593171 349482239 448238573 730022912 463155516 680712894 380692668 104371243 617280115 698849657 528705484 353553825 591764151 765139981 847384459 731768479 996473480 353585045 699302759 943390314 622245669 600999546 478944944 972888405 640037310 920355346 874856630 466075910 676660908 756866940 647066699 243392293 431350264 105670502 939011755 346399097 41511132 524083667 440347082 772463204 725784544 7548629 838007327 496722508 727067292 628629264 611760519 251764701 818222512 84645084 340526044 868959446 322699202 609674908 753349157 581064103 307664868 812767971 777644498 548270923 453097446 66406775 271393803 948351565 13470589 720033538 749212598 621473656 169985787 112904241 87982096 127890822 612868970 668841356 719039914 911376150 258389150 461353033 172641991 117343680 331431804 887240132 825077619 597536225 679646943 825761552 546898968 400936865 610518940 88859552 256328709 798690826 588291620 877156699 527759485 695082692 995219884 598562527 644930949 530767365 386162133 668004515 300222182 652661878 519637908 210246069 560140930 846362097 34240192 394492219 659472769 552368538 430928611 481010 993785282 500401672 903574431 484480618 379682614 529257577 589791382 483198964 943823402 526484126 52138303 555628489 811373298 372838819 842846781 243165739 453837362 105963277 66703652 164791851 578744287 761046803 483486647 752795217 580368845 317511417 904463074 153340620 306454534 176180640 198123035 424029490 562788225 881495049 310712349 60397976 853207979 968911262 319019717 458409655 977055075 615768585 849460957 654135587 345811647 608472345 879289083 463958927 790121428 142604767 726226854 496746154 515003651 882079412 708608816 744602737 64664016 415254672 313040821 238618948 931347305 58368445 936858736 299965352 17683838 710319435 223129234 470343811 157991663 70236290 410119381 836987716 12303673 946292455 312168176 464181500 532552220 129286072 837486625 744553532 318823929 306280845 625654733 255914960 475051768 432386096 584807975 809627033 769303879 421945253 74620748 990369210 707144922 110655188 513309312 522912274 320102356 83563592 515581416 610491389 981442247 876623398 538142373 574966857 953058658 715406152 61599274 350079933 490193799 20675172 943547152 480841409 246678285 844231661 21867542 983929176 744166940 521209737 938840177 889108742 102884562 94035078 430134177 179523035 392463499 343327242 593851752 148400413 144287255 495000566 579766254 553703178 832961234 746409835 24873364 52274272 117410464 930137875 45536511 681320434 926167221 206020711 631800122 354330461 536156451 494545982 837949533 196977738 4550912 124570298 914341764 403899264 739254994 287744130 791574620 587221016 801882406 120501675 857458551 908860263 676712510 515151247 992000427 26636688 573950233 660027576 835481680 846249930 964229292 195655773 714035826 593194102 912804128 924201087 392079321 644700642 964959041 520009353 343261629 885051636 878463659 616118667 937429879 551819700 929330323 657048553 633456877 18454239 856428786 736172106 932657002 675852166 792519405 335680394 153689883 499614332 336262646 556632017 741714250 976833656 172717136 999448119 355727647 281440951 943164819 319505210 544584714 32326851 81722886 27399526 364596728 397006578 423012715 802272191 349066175 196868526 451108024 926781461 968999514 929859191 609632955 832529043 310286069 278020864 663304200 186476207 137114218 784775409 248531685 252341514 276984848 477061539 935536955 682494860 977577101 46839694 415927436 504259946 981187511 576431647 343109888 792905193 571921659 150212813 780772681 590657105 32423055 607605190 875471605 986304972 451898665 866321893 177563486 221615956 756621023 68771748 48429967 339292773 911395265 995489143 435848632 466478604 1152565 426929372 999843479 79025078 664518661 105413551 183888079 630660495 114588292 383309203 953487880 427190759 255967374 324436267 157655495 790504475 353309769 995706850 263409508 651263019 626507503 43834551 486981928 357871294 783832403 78601869 211664815 357306808 36347794 948801343 189103953 193492670 160138780 852959213 473223331 919543805 228451393 134806136 644427569 665970123 62003943 942458654 521883509 270816204 158902881 38942441 48327723 393744031 136636851 59931926 861218861 369654748 985686507 846835383 310449539 209496875 990896262 40897133 970418670 759543285 241467800 957699077 148044258 669352807 966582090 343745705 948701954 648107668 859202270 451868873 703761889 308029946 434510164 1242176 135675679 198815222 12085893 83457735 916252720 785154869 195480487 737695287 894660265 819336709 217192061 895266996 272983142 208874387 392906654 879077496 540858542 103901975 361743788 458951145 137857682 252116457 899047111 755971607 537414383 485963648 195573553 831593685 658337787 618002608 540848024 649802896 331635628 75455924 654292644 82247510 960645631 182401266 729443347 607583806 173957873 319988482 989914485 29901453 65041282 956260209 796090921 103113321 298042846 938295591 69587317 410583825 204281184 170114195 134110189 965306949 240598104 964517000 778257441 422910824 759360437 222583851 419749249 73838592 237767326 179499142 863109091 255437009 503244697 566436356 32501773 746453422 521312151 86629189 174415538 712393535 967500980 583668163 879794443 767793884 803457699 332960826 541231843 722117963 207823974 159496230 406715420 339884012 74489565 126281801 924620766 782568387 764052416 509295474 716297024 337177757 66970742 352808503 104451397 625474933 305874886 422498594 359228869 879681423 282305356 771999590 939161199 167866578 848057128 649850133 430023408 86550842 877403341 577146643 395216652 728238919 226858076 73036128 678556893 418874391 551309146 348860710 848260052 562058412 814961250 384919847 237953991 843644406 340449752 526380371 24930042 675132586 661976777 540008918 979757200 988836176 570339567 258615717 357584934 742708294 482330882 776516566 200356304 201475109 702914301 121324941 150321409 926528870 552366849 960016904 429244029 226046312 997558080 848416969 446723273 65109572 477436646 754137527 211513117 930571904 109469299 350074440 454567488 568300353 937922829 546908457 218178276 36703083 461406148 526664831 858735192 184418146 701248355 471984270 835184668 427647499 349199837 922274456 489534992 995457430 856160064 223737772 771289686 130511416 174409253 786916023 364203409 992276496 779736667 443814689 534101539 24057590 207554026 777006854 32867972 501113614 427254837 358149163 276518762 181851131 862083764 118546792 728280500 610394434 127290905 861451811 356867705 48925222 165276814 68679980 521128547 764880996 603699534 946066777 239342517 500195155 483832687 910984700 429863092 48911795 751092215 641429522 126365930 940714843 546146828 532549698 152638441 796501275 3924920 479347370 59812014 257484297 599141696 277247238 642253415 961610414 706421369 809879524 390673094 659435978 159266345 927453094 80138881 253416265 814000828 660607478 482054675 572566531 321238864 87204353 677365269 571012660 260124194 269101376 680068338 565315242 209343861 208854281 51307635 769735334 292445484 700781318 295222670 449607832 391589583 934294011 615468703 215280112 44459985 733294217 466031526 184972384 937162755 543183267 201575615 740000926 341316616 720563910 699910339 359858057 296518284 941701448 52731797 636654085 202333780 717467530 73370168 840124275 759959130 645830771 415900118 521233282 417152 584332203 574895728 22689016 799014978 126580502 322718706 514151708 426305966 469106082 455227006 717079450 19416152 797194945 101652819 915006310 698075868 825494079 874873142 736884192 41079405 980799135 912864411 266016749 737161163 786974273 635747913 406326057 889555708 502301335 306234128 956971297 137824416 28734027 554886491 719312077 312883085 311221664 800355026 698130972 366898122 149790556 329976373 837777922 516862073 222733365 811915382 600087009 555678877 449361180 181402893 883384908 29284878 541854202 652393781 121759392 291363485 507853989 188344705 144102017 230562774 641103940 592628206 433934103 749652217 555440966 462293969 452619759 418991202 984009932 40452762 341824870 58103759 871316610 214088584 13726343 872743218 151411806 485671678 614385015 167616751 121709321 341447982 30558765 440559515 348664387 308575059 11194611 228010154 366366001 375865345 286168722 139319010 396591393 434498708 188015709 342767953 453833201 685758967 154353651 228264004 213581609 316372649 19318973 597516855 771527725 68529638 629952888 751298077 46180745 940457035 372588588 563419547 476687799 771569927 716626442 106727184 85761068 164751831 826058400 205906481 782327494 341717382 916664608 7720522 300797021 259234737 556193072 263453892 565463427 48363022 469104925 664991346 310660734 663525189 564633051 717012059 517961651 830193548 630688003 790010499 823623753 850951843 864956137 509023190 673312833 891157027 146799103 693845452 263103912 404938454 907029898 343987946 380720536 322772553 465362035 45601556 547184638 448003092 437655770 404366210 630172877 475173283 238218074 558667161 588369139 97511776 316656085 91694911 887875495 231471677 56095469 348735873 557515889 974891523 213837688 144245867 667486605 531211147 632218146 210189946 127790703 741842408 386793791 572517053 58464434 331996250 547551358 656416244 665214136 881209 350434804 309039382 4769631 71349829 404072686 116181178 413641680 644932254 973434307 383608007 581011764 802448197 452301976 790513130 85897378 598746814 855782158 674558957 310003428 521212799 116830769 670154979 317341834 707941468 803494424 199508456 825680952 365591341 620274818 446571931 353416743 741438495 53349578 897498244 126449615 160793883 783921536 567339076 5470309 954457151 730545895 573028220 877106665 349544635 968782137 59710091 57924155 715380497 192201543 148661198 995673582 469669415 912256138 9022921 980803814 22153528 930513201 825264843 631002232 214351700 668775107 347039967 660808490 176065115 833458547 429852000 756998768 254062421 789673288 821454128 517631525 78487125 834705343 736910542 375987628 472314815 146795102 61824418 479941087 634950347 944897037 153268286 566333001 872227029 954781545 882665313 480569036 529536840 585802332 397152676 38627102 531550280 861566436 77495883 212470328 770768335 693558110 55433773 347855817 334236547 980413156 687262065 210634608 555388201 97913679 554968708 697821003 165138543 431847723 948694845 784378098 144652907 207013445 670922435 123106418 625425401 47150834 492440481 354281324 257514220 600002493 131541156 849673349 445454945 473771848 637436220 500504647 945115840 203229949 321405659 352725426 498548152 386186435 720821595 809397450 756774735 869393041 68503329 979986029 489415936 837771965 597709718 484760285 747048389 160970508 542749503 442174517 368042537 966277704 350618533 234606524 184816472 668660474 783305635 499911906 551579864 864188035 489674225 109536695 541531236 156635348 574760476 595324988 902498563 779632391 528944414 446004649 368171025 250488085 18492620 121362810 477257329 235356695 959203926 966347719 797557291 217428163 941742257 354334301 336418710 573602358 700793406 194530153 726035608 35459488 845522627 930774156 865708326 421933175 350851203 33578954 769948019 520863062 581895462 911199993 459761274 57251941 693849554 314957544 96307046 517970625 650156949 328867281 626223773 685298556 756757754 929201021 857531667 686439209 997541156 238096826 72977533 194404820 406926051 43814425 210343643 431800369 85483144 679413355 384277974 647885415 634337081 62106748 624901132 438782809 957887032 471705377 325145294 106086348 398876929 129754922 601492554 507396680 78844394 570054671 884461479 813105734 524674944 57191002 604879736 764558985 593159960 842783608 155249030 187042579 889919150 26300648 397771506 627794785 676093400 988775770 8824981 133458630 672751424 240007247 582507504 531325495 746784464 624416991 308762429 342917954 849807675 987698521 518517999 252081856 958070378 955493784 220792469 163743275 249958226 273020934 907739012 447187697 889371156 83733664 237220349 875403259 705496802 60753151 315925594 892593003 366845210 554558830 183112162 895916952 284235706 806397049 28292298 688426723 957321319 749513485 386838457 226406975 407658326 253691542 821260953 122238431 333252635 113486473 979826443 132591980 670996458 580526815 786468529 705244018 537517204 88699842 468489323 43141957 448929208 441343664 719737073 786174524 942867042 890304020 268727521 502407959 180701840 694826715 923860985 462574067 199479004 933693111 466593933 965118935 776172976 648645826 955070296 119819987 709704762 232151252 460013951 511409855 645223673 374829823 530679044 827717702 553430753 648810860 297055869 884271943 315709233 683319311 771564601 268690479 729128634 495845102 193711978 435247854 521173979 212168633 624725525 647835761 76894964 303439583 88565904 565855119 852592113 758270328 326042032 802066566 52365949 431028387 938900916 327206933 730642981 726108557 306619853 998496552 373370832 608745039 511503320 42748814 115939397 968645051 733414227 775528261 141157099 74847320 550862598 17499630 383951483 831352443 145357741 920182324 765553889 288565578 503912792 98962909 529238806 735686146 617172480 584475334 438834946 986358555 896126333 88153513 559311942 112189927 581556762 745068484 766722502 783791801 719628401 696736716 959579350 498426790 934471595 314440167 889461367 32373515 159976420 832949870 625352817 443625089 646754051 301153138 845106351 968890915 538679172 836014032 840725788 50009198 95723911 851582289 414507804 74725493 439179609 845349073 786340144 967937957 788902300 261938272 599300202 814767537 595954146 900141142 445894767 791703640 37076477 767448043 902325848 747453028 150324278 651220268 26310976 306282489 454038709 432540573 929183694 159751009 243179842 668094455 479351028 338689429 94052950 319943550 696614311 384453300 158552554 651045463 192262579 192959012 90329187 778954151 482586568 535192507 718758677 370170910 600332577 380351454 614970971 828737382 662639598 956140745 996255057 20655317 64507679 990443845 687215263 960581155 12515521 967480652 798054215 289224298 512568693 87486826 426459957 481469454 584050058 715186072 383757135 920603992 470192629 794710001 32708859 84596966 469786186 564252994 303835001 621291714 303676926 434889521 72916122 109365618 57460737 882831632 530966154 243981758 438456828 574229562 438374046 216629438 388594513 353985875 213536634 118430336 988059443 233243056 528334855 168299159 921810490 80484304 220476170 362298111 819795454 551269363 666386069 192312315 875767290 504339736 219429561 595434306 805483904 838610881 337110126 607118197 965046531 876816313 751606894 785843126 852987614 833515420 473224210 916241872 330416466 983217916 61194559 710093544 523564887 848835602 895272383 528265202 50834623 335427241 716628769 430678725 628198488 244531031 306116317 616906948 495208770 825039365 183684724 523947899 888282836 939588612 855934648 738054625 756573547 202836025 948948486 840685774 909582289 58211951 112665949 94890170 802855041 819970052 364770115 987701061 164196757 118038112 15344817 698158499 125768401 228298973 28383957 202680592 793739819 654391039 789377177 814638933 781344710 736934877 757964574 690349321 30162108 136344148 960388732 241153837 712694706 657988923 715423238 370653806 553041960 364075775 42281830 913066676 200172027 884448053 101309733 867438924 528855287 23991728 714538391 974987806 80847833 165320433 256457857 164834825 893719542 464984896 755246951 592007217 466025556 911535186 623090824 537620223 28105910 157527922 619623024 818478792 333841451 352226269 638756194 21721138 955146481 998607488 428244988 679424720 927232658 428202574 869310998 74482635 513832919 636234687 825136987 995762157 973634812 138509680 484088222 109556477 404395124 988349805 457568923 573567694 99693730 50582513 40878744 619875171 608199914 283588353 359434861 246840498 47079652 328129056 843721861 850580982 146889076 887802275 91851197 440275752 316557240 485879969 571748717 659542991 49469017 337395120 987646532 741152964 983553458 413139189 51463465 779748535 903318576 884599975 736074614 133250558 460996051 38116520 435884182 870621929 993760524 191350064 654938835 194208443 974299292 504121729 96529460 766229002 986441085 909900138 538766903 860577972 259299719 870793816 48621267 869781317 484793625 218557649 279886038 810029871 187931664 177569255 992065721 401037474 778305933 424394265 696106168 150503673 921700258 630315420 892419938 85245809 190484192 680575931 161154094 564252958 519539905 879022533 284345332 970862408 12128609 743613398 91722091 944157612 346599970 339351949 151749114 403898239 113205946 141419648 412671874 902377027 458961978 262848977 595828763 457412271 949734651 492178727 918756939 712431958 243742774 257197525 650095414 930559467 849485603 387985773 63863785 209896800 142543235 121102062 689363349 143112682 69321608 176335519 391685193 156646502 606021025 751132029 63555402 459214627 995851170 228631919 770270319 380013187 254089524 231876110 747785910 651877580 362537797 322401674 297946496 917499784 901621076 80588039 204779180 825549476 362573922 137339690 87516357 953978010 36214371 147580737 493233502 913815292 142869058 432440795 295221831 250087797 362083165 922094953 788320018 593131095 674623236 534412238 57484017 346182066 182543861 512982821 208391624 981689886 140124468 336377304 418409766 982024569 740224023 20393521 615104833 686439039 22465083 715726539 206138605 772245822 287584863 743601223 729347683 495491965 328481658 260451573 527916735 424672037 668976904 379423866 872369992 148310858 369391017 668466468 19229180 844056284 295606464 65490493 999667027 90022576 170625 983537619 969527678 690948531 199208087 382667921 338138957 584297950 236032842 580646821 373346341 300406080 731064630 557721643 176226518 603800414 433569506 506353278 392459268 841516968 93466353 62456178 640088226 677911788 396171341 535789418 319089793 212629556 437500077 581162515 882926664 604117559 921276614 400040834 138968665 102411733 331481217 929661587 111001584 446439359 559415827 931130880 814749384 145217690 145289063 39306786 22667524 57828659 880966992 819056051 923597168 822828132 85497166 321513011 623280356 724656359 910398889 702614007 608576741 288712468 805058809 112674596 937042892 228051936 692866949 244803733 356465670 419024447 91244484 210805039 135473590 9878370 892248888 849533104 175199287 968855022 76675542 33088035 208897268 857472383 722509167 155397211 493411239 47772880 894549770 410910336 684708570 715604488 428789322 194333354 633805706 848765546 515444178 208587914 464234326 635626009 172832380 778003463 959581292 299128137 689714249 443382761 794021245 424619889 387901976 659904296 426438890 14822890 877328960 849331784 487034031 551554435 74408793 551164908 421509365 523028668 791405221 457388684 322679418 302666731 405764357 535866819 577866410 526050274 4141066 446379689 546051977 766192226 434985274 92028790 107772817 66620166 165750482 176096775 949319563 252736157 131744532 679889743 714300230 673207507 135417239 541332678 417333179 579169035 498615796 814901652 735729276 335163175 549696371 278701222 672733243 243946636 512717508 176626604 704777333 972922819 182947888 428752824 597796250 138830022 858901346 718725155 715677172 33160511 672832615 867777964 962686558 289006235 986029875 32326460 87685936 760145887 732318768 448838091 424358570 322064849 739125555 226940663 767713933 221680201 189664641 722552300 213234273 96974543 458723380 449715037 450575835 687143140 736749288 116917503 134406530 365126020 160781357 474460798 14070746 441379149 314921266 29911099 87559414 39658486 43443374 817643667 303113807 694518072 648970562 768371459 640871832 57712038 50711669 734352506 469929636 890171518 487084935 438442884 465878882 323686736 748850354 922266407 659069097 375382838 950403950 379862269 228361674 943886511 259421286 828398088 892170756 572977232 15332763 167203764 642242582 603752526 887288194 122491059 54756222 123397092 152427956 614255158 457738542 35474641 14720713 240439771 877560369 483983712 169794169 483062528 785623617 432306287 151130024 193039612 99017279 960902640 719797175 816296127 69342115 665623749 539682219 120830532 838314384 960089958 17738334 173248725 773666473 986958137 686562059 231599140 853173621 45178461 219247745 901741646 38582373 99188600 986535803 359129426 912995998 651430590 686310808 173021431 639258998 111422785 754488541 273263285 539968927 41150445 930173900 849444692 882654546 863689913 895752012 14260974 435039122 170473286 757790173 156158679 711007303 643843982 737855293 105131114 843201734 311204736 121747976 867882928 228010618 764654559 583442935 36439646 956307340 706490421 165588591 237943462 23978864 852388697 799542530 877801113 625540101 204099319 306541357 72894581 969552203 339703021 769913502 336602522 633139523 857072537 287541901 123280586 715722423 767408611 368959670 146135009 818650350 243317493 657742045 222493877 32714310 891356414 940747041 11621801 835670048 13735676 565345968 836452103 29323219 391164683 236274555 594797800 359879046 830061409 848810053 758075844 961551366 628241294 738816858 145197030 33375828 502753487 486173702 929965310 786235579 311402166 280106782 101136937 764139577 932092913 476425991 70170282 601375903 623549422 373397505 778345615 667402735 774467000 524546321 310725344 279765839 235012396 678957954 513780528 351166723 373121596 188363718 10495546 894221343 801833189 170888050 341579613 752199836 174006862 722338255 828590374 487634120 600320901 707242499 514330019 475685668 1015463 160938870 814726356 406339087 384151197 128933372 318322550 381260497 403933352 128222513 795235346 201028499 43523960 301783646 165213060 308180830 676284154 442363076 401002051 267733668 171596739 657535250 309041968 767345177 26152285 456359063 583709281 860806747 498605641 922876611 57787703 168984597 394877433 756585334 875495377 71632311 473854142 494848182 910781376 979566217 64744421 383145208 957710154 840648469 827754151 485873593 171528663 120206747 328917427 958157116 433901413 94023238 438902098 766022098 123733357 520626622 137010728 697306340 161374966 319991462 915797372 981801342 384245606 728643021 809043675 979393560 623457411 993868094 150330405 783228647 677374562 64545224 416164856 973553278 688571443 520086599 889882977 799890948 109223692 659765134 713163674 175606953 91455035 340992971 830142431 921141668 107148464 990422359 603459734 804969531 328779497 376348981 577469031 902316866 940945135 25066691 864613136 666146952 41793502 401923918 746602833 536142453 737942893 714763311 525084832 704720364 570991302 796899206 569140467 869048676 920402463 934480615 497157522 667945204 946893979 592958259 830556250 648586560 329787411 47852162 60994766 505495205 74017629 606441815 843591434 332288424 233986128 853337568 241730105 444289465 359874104 194653131 442104282 889552855 612297101 448302588 75843392 950253518 398099935 580843072 363180695 845579629 71943778 983173289 951649481 268160137 369784723 307176218 472923974 156064611 974868275 370227033 352730570 332356729 603912994 932113807 133281721 545151060 624061672 227158061 574492442 465233829 235620620 725313572 486848923 437956495 507179797 56158521 818657161 840906349 797788492 858199459 599642292 605476092 335566897 558085273 974760343 148036749 631682569 311690544 811786527 967817517 202942121 791176188 998817281 397427581 442908878 762456685 537295657 208438194 565613804 436051570 825127732 266158411 999920616 466305160 127724107 41023270 797727495 704300175 321257797 750416549 993097819 269071382 116280732 392137525 49074460 999593424 602634046 281948843 406299313 56143561 630184370 151881526 792506068 485547541 234258473 448610823 994335881 867564173 122722119 383025716 757748360 828236640 556078031 488068701 100336807 976822872 809802381 285356886 659041549 35190778 450575787 795456083 868788242 335816738 734105719 95993188 338821015 459606526 869898658 859305829 204822151 296386660 896095128 522289819 460223586 570847284 940804150 217754224 806667416 956214418 377597449 931100676 388187331 876614975 503238020 368111530 790934325 206360385 442931580 353496801 435389809 565250044 240317937 340130720 701164448 299248155 703517311 414732452 117933529 605079637 532121819 308696385 628520999 99151898 688020412 3690070 633874500 496138419 189450257 347686291 47415701 34292712 972679361 65512792 720707777 12782462 487498448 829934542 452759910 483692915 960547047 551291635 990294888 118348202 445116726 435133010 257152481 333285440 871298481 517143346 231031287 954136429 135543496 35243962 788010902 290862206 208108268 244474431 385435342 610494040 892456632 915606096 261705991 473441137 170772756 234143629 363566423 973212708 634521608 96079934 322708138 575382363 663841102 168258253 837362855 358864113 524050372 262896194 712639976 501889346 435883182 403078781 742569839 100657315 269575502 406132726 492809335 684798198 422858554 687509446 95401900 287588633 321580448 214309426 263447775 467189088 665751850 778427919 849684582 229888212 199800701 80542006 369473882 540652110 850071326 978138418 470691660 660194462 274211161 864209826 709058019 220221229 402356437 979512579 863007887 162829652 123912787 954864203 748303312 395217704 201815026 997849213 617614169 98032767 482240532 223965037 713796306 148788041 260037849 329773097 177812824 542210192 441231313 197089998 877328229 620780658 591481788 688652867 851336210 972870540 875643402 828133264 846058372 981103143 197845584 98083504 309549685 439070702 46034568 364445937 149991744 288501300 64450116 416025291 676574740 429928471 813765937 272353098 293317096 165815072 388660451 629620802 175033578 373226796 244415123 209614577 688059929 903829773 43748681 863546051 602900099 672192496 681424639 994975557 171051790 609260319 507979650 296342819 634394334 983050976 748571077 152526426 171591154 347124807 940310707 129248001 67347002 10717880 616475605 751658317 165458428 173401539 435741922 762963530 229694062 541486618 858325900 876282470 308381198 947400905 373363341 535898058 52424394 204080856 952655559 120930744 51252770 967744314 448197617 654119160 982759674 95152643 346212181 743419705 21137647 542882848 789965943 351704579 385126465 423600293 519708673 259045066 593766335 705668946 162302791 864972520 399214604 991046553 949978884 60291891 855066125 653585236 359196457 77801955 651522971 802647650 633087890 392923627 753742370 720383390 139014253 984811378 917897443 367906261 328083350 190601053 881330254 657043432 667724381 648336027 217539953 552809235 40837220 197482403 664565606 819285278 336998623 690020964 870611136 730275925 193391763 822941866 566362200 345356711 953891702 518066637 223188041 185681298 413919890 495023221 404762321 708213435 740200067 547741021 578672346 846330990 330755625 750841389 109288850 952592891 39328082 673694873 74367624 393956207 652945682 275748940 598884277 35348825 492684196 649337390 76792979 956478037 209261398 202986572 848160064 849211791 276580438 930875930 574567898 347296858 272262297 86592337 492059488 266450170 987328058 212474713 908644040 87028050 450819922 877994470 714936823 106077843 388441183 901423544 41142568 710837716 371042693 557822269 486914162 391847045 863848068 269328016 463352592 676056834 198825930 194281033 932748771 152077143 178949524 934035489 445097861 702028868 36736270 121820455 170044871 559011183 779017240 100510608 912200242 890950821 178872748 513075075 692328654 63109737 834397164 970510164 137514500 108325054 738143418 718086988 792512436 116702646 334953507 763260720 592795249 773092736 583746500 668012982 405136721 580464631 614937715 414203004 597490070 979262831 101774519 962359236 184199067 194746528 758573090 15766515 970499539 465840934 575524927 553019023 759369683 471034198 789673956 820039420 177332435 636517183 775543071 982989807 830298367 808071394 257368475 364484476 252063573 872189529 5608375 833734935 101275565 499490779 317162773 779970982 810046700 33301696 97226468 71072402 502756613 749065698 775326490 882553185 872398524 580128848 600809501 403287699 461260903 55244938 109474078 227392370 775217511 128894467 411693904 157000114 444605689 998896991 752303170 811683948 266383207 318674268 756592040 944427077 399334760 249745858 166449126 277883287 504314690 465055596 119068338 253912600 376017115 188921740 88390000 429009838 704232466 534577666 88607826 682300970 551456437 611484698 896999853 814887189 115919640 709279097 770588535 563823965 798613768 760373326 950347991 784372089 661523902 211514382 765907327 400063977 994535517 380350637 192301789 25628019 73996194 522071359 880445587 615249534 811961176 225182310 342623661 454410290 389075021 515364094 351939233 791061396 371846968 211802028 647412428 978839484 641009508 173799266 1325697 460170250 252567421 627105913 220309614 301748512 51992868 174382311 573485615 11570050 801178965 936513929 216979013 772615164 572399834 572569365 635906681 589660214 557652675 413705159 227338354 937703794 686349373 384831620 436548280 646355106 752026358 694658993 401898300 907729168 515142711 301746452 586573205 922495805 978186873 764380557 327398619 772248167 491532493 118029455 741358625 274748898 139156532 791450432 159839132 965482914 230909101 193369917 313305628 87981347 524364000 336726659 641617385 766726847 467710973 505402788 762540351 549246781 43081193 169147187 683978065 227286261 829571426 793350908 463722452 422295300 154745450 68963760 835476197 582750031 844597734 864945706 42296332 144632318 555165275 721909857 519214195 241013876 625177689 169441158 936225612 544608803 897473498 82614771 878461049 135118850 91600482 518547190 604824032 371996028 669630564 141631081 583459994 389782704 56669152 354866065 184860477 750173881 466285253 832241427 706356243 498207018 59065051 176084040 869967960 770595366 907494917 68863700 957827274 412194665 952715939 726529331 47623754 797021686 680686295 147070804 419001764 806806501 274555649 769110737 42939133 973119046 352355320 707202511 69686543 445702157 945343276 461163777 444194040 798610726 694093398 311993938 515354425 778699252 799827103 340942091 721143154 532740403 213755895 827016576 14081706 897585691 927676758 19136148 861746061 657269307 818718568 904729489 319539439 111622882 873676283 802260570 412155578 231649088 182023897 998661985 108620061 761878850 748755691 546766567 418417650 437577315 231363661 843656976 563483519 379249436 889956787 677376937 348452183 962311750 380226133 216314534 65754116 681681595 304538109 32943498 250097769 592976284 767373085 180329821 205581971 403603616 717512595 437734396 372343679 120906121 233256122 421266177 536371428 342974507 370441955 134903179 397256774 973702837 581152798 895621808 625744679 636028322 48578458 249668255 7125101 183613677 198683652 36560029 405775588 984900053 191230792 310464616 589070056 20639888 76021952 568198773 871636591 208776487 894851607 538696839 794312918 873990008 886261318 305718862 971128152 84641248 740723035 134223145 360741941 449317490 879964613 475392068 51219053 952647862 464382794 653780022 211897625 733378915 83021882 595552475 653653646 801285263 808104061 959512791 576299292 326516606 598636922 899880983 770348056 486535977 917271469 472478536 434524169 19200409 970181442 634038402 43298821 658338514 510300119 991582423 64363753 636472597 275587581 426763581 709929505 646158664 668475417 595492799 771539015 717955371 781145684 509405851 370967684 774525132 855621808 679769722 383217971 907714409 585206049 670465760 530939414 706746237 528397510 919162627 826500260 431775869 137319873 539358933 284851474 331978204 692434302 910276298 426579336 606837921 703572426 502401466 825489707 812165045 360802230 223568866 338996153 254539350 238931763 537912037 805982185 674669441 216698636 437596825 27082797 1356992 280723164 812040316 804964552 262225779 1109092 230255482 390923452 452463296 608320117 393531774 410432569 973854216 122419262 57311640 686072526 546826637 712765974 405386756 719746212 987681324 378180529 596124861 69333894 783048174 134247993 346136252 538728071 736053140 118592894 822324334 872976149 515699418 255252415 892303081 826540221 142379380 70410321 252482478 186474371 758539327 719049834 510386245 407084940 972289231 656463371 350855221 933626465 396894827 174392890 633069244 602179849 995184592 23562159 909619533 7038033 776768462 577833685 418536009 179225293 379883695 603198545 274668194 941103430 430610837 291502618 78506852 773288233 273317920 192545951 538944929 644035938 375297385 777385843 690947790 435304116 184434520 872847303 117775258 550222108 19314377 481264333 527277550 271213703 639899354 586746238 21828243 522196935 280799361 347229109 378907995 289143471 923761302 793896362 654093609 300053516 60840705 90949897 401551660 108898220 562367708 786382312 542608443 660976481 995032857 404891991 347825722 211079067 769450522 46119871 516032849 356812218 449929900 668147083 671705377 168484384 271898937 41753996 380242194 757833133 293053252 393680476 974719186 633353454 236917684 842356948 189389749 481142160 914651423 346373907 741638264 6435780 989940390 307753039 832301450 968302362 884376934 405644971 100740629 45613448 843203991 600422917 974296028 492936401 197868873 855605837 642821109 274066987 77690586 266352161 739843875 450993846 216915949 442135568 397245014 250432207 137963148 165822120 691288258 338944961 804941174 103182653 879803906 274437984 930723692 859151892 505295589 331962133 21591964 929705672 566793102 981173659 896177596 604616113 143716444 592076666 496801563 790851226 434574710 95544708 145037799 577412593 687610427 410162043 497066421 29164559 893816333 409571694 443646109 774184046 82516379 336299631 721940168 984350685 798347424 441132131 135260199 156218803 228626776 933152656 245988212 425186466 37816191 836698638 798699400 796232356 571051659 179833523 596654953 900002699 585977742 429831068 92056994 531053478 641378963 930323488 660371045 986357253 524698467 553034545 691647898 801784884 523207966 23506332 308434808 154003760 425653736 355985305 35226122 565602000 448916944 546509107 633496618 964649074 188135758 889149491 649199190 197507925 806696615 312807834 683494327 743580449 309275561 981611592 544000456 949177880 788052353 497850988 125216645 859686987 605413151 719409925 841084037 865232865 233535178 771966300 14170708 978036775 205690363 901766954 404454310 589967006 937578952 301628840 940112802 115150961 674358944 50596800 152892981 368730368 786710828 105663685 296213855 776582925 130917619 517436857 807222975 359530575 217645407 562967457 96208557 483069184 293664739 710043082 50569540 162171118 861610721 579308508 323611453 616976344 766610446 157479658 92094463 138164016 603366004 866847328 55731834 951326857 62854099 58225156 566412457 781375018 833433399 906598888 326186508 18864351 444141872 702817440 256587036 946946299 595792000 997840040 942995181 417214683 633098025 771568401 802019141 770537897 443898520 92077269 997816961 684298703 306747321 882702746 8910728 194214493 971752759 522993226 635543299 374276998 64695584 720009364 335099890 679620199 287589011 374814357 884830487 301364381 923701374 462851302 251648806 720972427 901968482 253095974 394304700 886775625 415382858 292069220 657181866 302745716 938989031 993411614 946952862 411021845 171468978 108919551 491710846 511158453 344074117 408824564 301994485 681056118 802512961 624761516 781789645 121419050 305175279 966957626 179524759 835368451 17812171 129642926 277549676 268779157 647242878 105592727 221890410 194656315 332919482 454290500 586259878 604156393 498904592 615973862 114215018 443209546 949009219 241622090 314089919 378677846 291311586 628916266 779205123 447614930 695870241 50440731 354427233 45477613 291201745 54705079 151212734 947991640 787885497 548112663 500816860 6756244 235718612 460927306 967909972 842774126 430072197 756756001 966078477 141639908 157616516 125171211 971622975 200921519 742363156 796976072 759459872 864009478 636768702 126188410 715606345 122279486 136654827 148162861 268785780 375242901 199830117 94315422 456760124 126377060 19118029 536504901 861054083 48123619 691694585 714175796 805582864 752716917 653272149 183832975 682374970 838251343 367181942 73068505 562450415 814273986 345009214 89770377 630172955 588111733 685765897 988228716 671392761 576037857 753996029 946701226 159467585 909493282 9334938 109280956 158094704 156052394 306400921 558138398 850965605 137973888 620482846 685301688 323680240 934523625 279337159 706786417 578314516 905807474 122361803 717869488 937415982 495114748 350077811 422259352 651868775 304637270 720631346 215027985 150582395 817107911 376347167 242772495 280201755 869710102 996991718 230337075 491673640 627390276 228707479 32060597 554496552 853337249 664230138 591941425 348959824 1954179 603682623 973293264 793233760 199989247 470966809 746450271 778096760 834294469 69387439 690559756 810315650 370135398 749501617 896154347 438812231 954736522 540964862 96390222 802147429 126166360 791478337 97598649 836810755 647796851 113452320 566961194 384790238 491271656 761554803 419715402 23842401 216675167 515373496 867718447 860500345 29912844 285624439 402560019 759286055 500693693 341678478 827034405 335226264 889382184 332929525 451589540 598251460 461102282 425968896 384836265 975264977 841419544 775647985 331756968 996881231 853634805 180359819 870644520 591847821 109460775 366547741 949520761 471650119 438397387 137351335 218855591 164988951 233333667 286151754 618243325 692481370 754777231 700367041 311326347 167450511 622195592 708625695 589057001 299484508 438389510 534163605 471695523 77441895 320766593 180757456 90001534 579711060 644391208 245838689 838219211 841281857 15460559 218686786 557965440 52499559 544424788 980561092 135008580 910459784 708144052 454737182 308087659 575238614 315655554 735052365 333548934 34444250 910401308 373824964 665286428 147437010 995067695 611234413 62908983 227952402 577083292 289977661 734603917 970534766 628966566 900231163 471567588 514290240 588003860 238128110 217239129 452175357 478360418 797192247 54329339 64375875 770159488 344396219 194573884 657423127 56137577 745135580 574258450 482777693 14879698 835219630 612883614 470884102 779119734 170509288 121267258 870700761 651654744 316004041 638980733 708041427 436953962 339498406 775661176 30066107 451509417 82772738 433546721 605194187 73536335 966079893 508571153 262258709 404500459 276842697 813808448 993438344 567251474 955457101 111812068 741294957 463079039 313333899 702291749 832124221 74146980 557155134 144327037 415563997 279576173 334054923 954352466 702509109 126573054 710873564 720415439 284913887 105848297 850562420 885863881 383902806 699706672 835722622 264880660 802590346 888558558 780695271 897590151 493709458 820037157 855878834 409222812 735455785 177248917 359485405 226852624 207842441 925569363 860011772 37776970 618566381 620420715 827010390 361983909 392502885 546331643 784680640 111946850 264725859 303066394 74453635 42244564 617640647 874327854 787642413 749896776 917756486 933971670 75380503 959071347 991473402 203981479 741069127 624650431 595029610 160556580 869674766 2141605 887504638 779462981 485264602 385567512 325092645 18559257 298544043 575197584 419995192 786061137 706481998 882176206 869907809 983990793 247697575 15896525 864316841 710024058 717605167 332203453 197749699 820858812 889828251 558396294 867422552 490433563 748600381 304305415 983379351 315635895 572234129 585565975 736957114 782561115 106565260 949152792 30963535 688100505 801447032 879187553 896912623 389262913 732769814 951630439 215674803 118222091 417094530 870528853 19934276 36523448 381716971 15532471 325036195 733705718 828898710 662161457 655322279 244692622 475986075 445545257 621094645 994778870 793707880 802403047 148738974 990861141 898172735 496070857 827202139 107757841 368071964 672782577 712141754 467526866 354143269 511298962 671821804 740185953 477206314 777369457 364506725 155120282 267363500 371004608 305594532 170435347 733233644 169239670 853846542 825778080 468839443 121871566 83968286 708692471 932436196 686097813 938623649 191062226 262370271 417277917 257669212 65028104 232327903 340667403 711009183 180672604 172333946 505147407 28801702 751460790 813323450 675179952 303360997 828306621 352126575 355573482 784002446 308791144 475900788 705210367 374031858 664209759 113743909 440149352 608649488 610671690 219469052 38719770 565878958 147914360 442810966 451129234 167133305 390884965 965358459 680528833 935383280 107692709 918876338 770159227 914322205 732527303 693281269 943487766 164732863 443207086 573025035 4050748 750015724 47062489 461503805 642177242 802173934 337696370 112939837 675728160 908093979 926844888 505155256 228221727 950785417 998526995 778145541 325710031 33507701 335054625 78501246 88638192 129450083 674207188 292433547 588672512 986829721 979909329 281345707 658093256 256624624 240649244 821812905 309731749 724115748 927727052 255617085 458562946 911326045 121365558 683733757 401665552 49142879 572932329 343337437 101902431 246742365 827459357 449511146 617341966 291252002 166759175 627419235 941431486 423722834 621932956 506293689 99651025 927788284 753049431 479440311 212204323 306562133 1316062 897189571 183518028 110040674 363474133 525588467 176159588 266769244 745572368 774788304 506533791 926940102 724143103 689680941 538676903 250365918 916655292 163098056 265455541 806425059 153394461 646169798 305318944 482238964 791701221 20023039 598732267 933037430 674390937 846345577 77358490 971208470 370340457 906243033 931442100 866462694 202298850 479090332 264967625 617553703 479308134 410727830 492315844 114051289 716365280 604283581 42863512 80160347 644277014 479304532 319072985 790073018 342478194 186830469 93689103 917228979 273487969 116864817 109191934 242263572 526990684 315208468 500779433 893794228 256251990 989499922 793310160 729705172 562409616 115109832 259932956 559476026 515772334 223684490 508990428 499715547 418467151 502142768 533603299 490234705 269770434 120635053 700078901 711598732 582851300 593585109 148155863 508854077 376617106 823945997 207793190 269197707 208088580 605232599 872805186 494294801 288981634 620895426 643171140 331202192 371481152 927510849 150760928 495517053 12672524 39453910 21146239 521992381 816940191 686752496 31530589 815183679 141803926 998089618 599163387 432758392 498291004 940780573 787327046 856406640 743872311 918862778 51808207 459130876 956218025 183360672 882154222 704961485 562590006 24280246 859885649 867444983 267946622 958814319 38364264 620786497 396786953 631180692 277977804 579877212 940748255 914321705 164619888 331738535 328160359 276120639 153315527 365386925 363689855 62283364 178977550 595733615 247184921 776903893 148623426 902770947 561137751 251809163 119380761 199619603 201164293 106752038 213373077 442641438 867971062 834897793 959389729 856324885 123527860 923991396 565342763 797776120 250759215 914337789 203241722 643235808 448804202 154727832 335159933 487784342 566685572 250275538 869867816 345539723 365191727 158147135 113806743 608099314 810224091 643710529 740270550 156230977 988125459 685683360 12950375 332732579 103822660 160520283 529657992 511679316 661894419 131780711 333577473 821249249 980819017 763522045 855574848 866974032 898526930 594419357 780957972 22002885 198375419 336631721 95289340 984285920 849206673 830825484 945790370 645701294 501989497 242945565 351402010 203021868 196960071 513883620 466952594 292225670 568548486 473043954 365502088 568361180 419390907 46502756 768932654 786679330 724748351 851961264 159982384 610895925 755618813 276158237 870544899 418895059 132920961 64610468 814992306 593573689 555504781 974071688 238793565 566678094 744466603 696972376 387809467 656945524 786323067 57009549 846310396 975852618 439485590 580095667 516352617 277373012 555149775 195841169 34441412 117891319 104787065 323417347 321953945 883712819 569779624 832562659 36809198 148470870 231683160 857533523 602103973 333932862 560690130 453829460 270536039 641812336 827040446 212660896 539653745 367603360 446603273 660051334 327696446 785413483 675602462 428444178 82123969 254750339 833867273 111889164 576805266 569476894 404987205 15417140 569277681 244196456 533271040 683070849 484021913 464884740 359843704 57135966 871391193 951910620 267046953 767458551 474782936 344040058 71826622 5103401 629270813 71684607 929122025 380779700 623971218 65694653 178540775 78700190 60588596 661910867 49582972 430683778 662292970 248460992 840597118 912858062 56654423 934777558 682731485 613596830 421902847 203356533 517201417 481935936 930822101 498616154 806488993 713416438 985630321 20773841 600232359 492462677 488975511 420525800 366989196 981287906 760229415 854690785 289758927 160575166 927494869 660778732 847396692 317078026 414906245 666977129 277597810 330780807 797372135 600194807 949147463 48538613 808995030 254210737 79494969 993885218 468486405 47895857 174342815 72779376 23225181 195048461 52535738 486270347 341425277 99614289 120598105 788733010 232931985 970121294 979338766 623585895 242257910 990540525 828314910 158071707 408425492 444943346 463260206 576615149 616506827 522869746 546895851 522574893 500321895 169476792 534879402 137525636 813259510 793235531 843170101 314012762 330621784 487165188 680832536 698755500 96418899 382082412 439603690 52118151 37929917 695866469 137048872 530405491 174798640 989257847 69156574 571751456 354974146 28574742 630278751 702152527 921404569 268045211 828536337 80118688 561438184 217703924 108976146 536107550 23203357 640227312 150699519 577582471 635821768 158537888 16397430 377840558 209941247 483194582 873222488 540496047 433726522 663108196 705401042 559823554 754670264 208811611 444468208 597654560 193609866 650571833 85991333 444354200 39259740 853203435 336286534 283114199 147282365 29231225 363865203 574860107 526320638 356693347 375881465 36234724 967921771 608424942 492586576 609598059 137662246 690736540 245579764 404213594 632730175 540153416 431631364 87904410 664010939 760053442 131601131 811175323 381239561 244094677 519700268 239437393 608434084 124042347 221688637 604262070 469077970 999833508 540051146 694000257 141595731 526401041 647730543 4334556 761356398 876762267 392667953 470461810 497610177 275870620 562630946 470463226 902575794 376288340 255180672 540380392 961440309 689456560 623313215 52324767 358721063 149704348 517628565 984438346 8558075 106778055 818670288 911130271 503063089 772138019 35427140 76870248 124602651 782919965 494920066 791266017 606754238 562069426 671004511 152210089 874375433 572812179 736326184 188197151 253661803 581519759 715420503 635128081 10117739 809605675 38679237 704986734 875184328 718823106 535755411 444808549 510621718 408368835 551240223 177742478 510295013 433262460 446992269 278433120 382390428 719976669 810069387 80396352 884260027 112589790 76527889 294744065 973621243 570552704 411949493 599429187 698028342 766355586 921027929 614373579 966853195 432251629 201261829 175701155 507944222 450934535 169213237 866299246 141812967 557809044 61920114 944614749 411824305 335506438 927209446 359812898 330716418 782329200 696005760 822257653 784411554 98589736 12004344 585123082 87068892 940334756 109345728 84725019 732656340 26899335 431685378 596009621 43339157 313651164 159541955 818727820 627878136 353321172 803812759 906740408 19664237 583378692 928041492 857282419 134498228 511464555 476849685 992853112 996863020 722479779 242688529 752132880 139710778 97622787 892068354 640933369 149694288 597355254 479223980 38852854 74078669 616292031 747868565 238226388 578963820 443467904 223387752 610445459 920740951 503967018 98612080 445292644 968766838 849724709 14381943 259099391 772695610 758675565 285098088 618214213 358768836 65398265 595941227 750050094 12300459 789614286 313300678 590093104 709036860 72045875 60889252 553130338 431120856 63441784 585201740 973831939 728688938 394941218 395790172 93217006 301385599 125068293 617810550 814974897 235936829 416403401 668520752 420934560 518994915 491165266 752981594 148992708 864041343 486960374 921865257 188180196 824783336 478650730 914593925 536130181 723442160 345785143 383775933 102510416 295108984 889543986 205446977 424316010 697853111 970708960 449147222 600075440 856318056 692721326 541080656 749225098 115207841 871264963 33924070 162703850 347270189 12149003 438129524 595123394 719152144 863055446 796877472 90343030 827118122 315105649 423612483 65917060 451099793 955816455 979043955 269888617 601731677 701040517 879177098 915791501 644327602 130886224 728860018 945730069 650437092 610830855 226115114 936354227 542507309 384618941 858486788 193243079 638605124 573687931 417021454 400493932 78248663 39951701 597770543 961093433 438400005 925806922 916687954 207476259 594703112 563901151 424121205 688159002 595825194 709127227 905370937 562657035 528595814 621723518 421999541 223509474 311912440 423545207 672219840 697255247 956565249 479252747 285990728 415812277 465179052 286367100 867519820 304575061 376650609 798859737 945131896 725063331 745476445 714461803 326646996 346303384 137854863 855397115 889085799 29131043 75728289 207818646 384982165 835933407 761424966 510260314 384910487 739443621 852147996 32413182 140433365 803684178 998817964 3004710 131366955 478318853 389189338 447823140 673492630 754360660 465407576 728147812 694425109 723974851 875627183 662151901 300363697 821696372 674737415 74220286 514020067 65521840 126010841 333080770 32469411 15585949 646139643 577891800 906462927 672841627 12979716 493340314 216865563 862663717 217265310 30669934 928646522 892823592 238517509 119716755 132054197 49096653 262639249 194321947 589610174 828967762 480008731 422058016 757464411 481518958 253016721 369639123 662695444 864750346 376114272 694983182 88301515 863571557 671777951 207298828 379537569 518814969 461408984 822039126 868048016 564400333 1147758 197129347 983057863 518337347 434253081 379237092 888147714 540688381 615525063 322161364 824869066 604504861 596686471 346688536 385693983 206708932 741937426 941141535 779660492 750322650 739170150 910896100 997649744 67025281 547091944 332814681 191275600 9712467 639796181 259793381 283499519 967323726 967128492 824855971 352233950 986564408 176078133 617468189 400625866 680438809 678632341 641577551 951805338 164105611 783694492 670519027 537449615 247115569 714592828 814340944 385802355 862347392 147098211 589726330 470129570 507548627 935972640 878600370 235397926 429189391 154331030 148464939 496435027 110646899 366853264 54676257 663301067 626094943 753710935 494318920 561771576 173204608 73789203 289910700 226440501 178001110 515190575 675715304 765773811 842321682 617911261 495412373 387937113 574595655 964788123 326796268 169050040 12844915 980417209 321554931 135306398 66087245 120065184 868586735 332287309 71969460 796165356 798921898 430394758 809993043 530323090 647934604 561465836 981021939 123516094 419034402 822173159 64635934 913491685 13889892 890761214 331742565 710923211 951801605 868528767 832462254 839367441 60678386 427961465 547964436 271664379 476434104 415189444 232741731 78875403 624047344 88398802 535481574 786918797 283814445 94120879 680736948 764490720 54330550 394989048 787498230 873337076 979680080 811821792 14409136 678601914 360346623 502053236 613148913 503369949 830834007 688035628 281191210 470564229 485661640 244693457 407441507 639610240 73661357 898264207 865716626 26990025 702015628 610819950 113193097 200768120 791238944 146365622 315776194 315182579 687767195 765634740 737192767 834474318 277557006 390221960 95484339 554411790 272291522 152044366 281969797 646362106 299105824 597769353 305226273 336282690 631741146 224074369 845406948 901662985 72804645 823561894 183142945 84249166 824774610 271644333 198611674 73903116 98860521 918375702 525039412 200898840 386129774 317844060 845066261 122798531 69726686 541592355 599675088 729359079 59453956 802098955 77848417 757631043 807656687 473468334 842790594 337584748 369650390 519630357 894642243 831738264 344784137 299709583 161685472 878286685 787587203 684160788 795034093 90059989 377031663 64278038 385461854 466852864 869196764 200797167 940573457 328123887 662245008 894045168 949881243 181649756 277454036 282008242 235514230 317430181 921687848 177704603 342713316 227879541 465872815 651747405 802946030 705205028 190250080 378033035 396272043 350319511 96003253 35535963 263765648 920363057 572602934 585968729 130474853 283708531 13635945 689381874 725264528 311292847 539912732 878762287 397501592 661107120 710460062 566245355 883248044 311905089 513786638 53552433 868868263 202489323 134078997 798358796 315263022 403462799 932078607 767200554 454952316 429863168 750412194 371079684 767970445 64963995 367346085 949057047 327270702 953782782 147499013 94449605 974073434 489262490 440176553 353521451 971188858 621792863 321186093 710439143 223258751 189470086 565436998 72085855 975929249 762442077 357245810 179529353 836692367 438784772 730979919 878996767 226862253 247525591 741973785 704148999 173044631 498583453 57331302 891120756 608651851 988903539 212596451 795042065 365979275 250085775 716639657 558265271 536926846 260864015 325234593 577053815 744124131 540446950 294827798 150231670 361758833 665488448 749100903 267059640 68927809 500513091 432699055 444503174 789042517 622838542 816480828 731537441 268738349 565293744 803761922 906507108 104181945 483956740 388343998 427000973 221775572 12899046 580758962 274781561 635254717 546668220 391011353 511033305 327550099 725599312 444110134 66863315 708673468 120796738 812031415 369674891 923152330 468337575 774729321 666420232 721065994 693241660 491061690 396200786 444003067 532343475 667808658 497631313 89837077 199224216 530172885 161565995 947652696 867966702 110662197 568426397 520912905 337914788 812927686 838061391 705573065 956561191 843914737 34726376 697564137 795794973 388311822 414964210 95052819 662874944 924808187 674408806 181408366 941618581 997243136 168323599 906184263 477901490 881717357 927337213 920604528 714062565 272272461 940221543 665790051 91411134 518977116 242785332 14674134 886273310 716404443 967773426 883794199 535715070 381426004 733046284 338949194 654039984 19358905 36554193 550040077 290759888 550690098 20557484 573618638 49702101 458988116 513422853 923617222 257983559 301316561 764234083 620856358 9906431 584947246 528662950 226804006 950897950 405559371 431572020 24748708 723517858 707362952 590515516 657471644 603468315 72185358 790505821 990864928 950571904 788177941 961553448 371728167 351789284 310789128 125713972 372829699 7688605 963354243 444790499 173906710 709190597 568981501 893242217 215581404 842219495 536654522 950671413 499827960 726879073 215830458 485323390 578922819 472684525 579957033 847731596 759970899 261261265 100682334 131264558 168460526 497436474 483341746 74915623 50372724 341580997 580185154 101887161 796993156 134034222 72024812 951047372 889229320 320760073 134349165 636062221 943067218 119024764 780277954 341477463 571980005 707136838 815095632 604826135 844015878 503051683 710478534 479383649 969412823 458930767 335573422 295944575 5308773 921155772 25896518 845490833 2679453 96560200 54446576 887058924 321901654 433246057 231049970 842533047 126707707 944284523 841685047 956697779 857928680 198681340 658138163 393744157 511019476 636172824 513575165 67487933 277807394 61377393 342971251 654071621 116026080 32210637 874113485 664317221 784165276 75252636 359580642 109490189 629941640 924352078 369533811 454233594 943194739 993144527 730010412 563087553 553005128 733743178 309449737 864748339 477773176 943612541 579144907 686826943 293218299 66157086 482922366 272675261 161932547 63233338 412112754 474994394 11462658 184220380 682324019 796081993 917836111 598022653 215312219 454471788 351622693 39587729 676828433 738662572 866593713 14224494 68162421 341922731 560298042 768394094 275477105 183057088 129593884 857153517 833011827 556983840 831343344 82482551 995860456 814798313 203884754 198048850 479011039 597714064 289718832 1571974 537537012 249538207 253459442 720903269 553907189 539268525 777423577 636065072 845600867 650816635 142344273 595952437 455858604 581951789 928918939 442212452 596896123 890387746 743193135 882140649 699489645 98581258 609027191 917269691 649780052 677175100 846610651 915723893 415196635 666136099 670089226 510784059 582265432 181999482 965871557 93183664 439302544 825536017 411230803 987248721 161129620 950384986 66886133 577937932 881920975 66146035 219222708 455567030 993513432 647950402 4357107 220221567 605614040 604966817 721905390 391567566 318465462 229244119 291043523 629910419 459690792 947313332 107558117 784879633 2222233 304919710 53118137 517344321 649863486 711942053 277209844 804110151 164440737 130796201 933645186 864794656 661000594 994987103 779814580 450494092 211257416 571411836 131636895 781659162 302805915 434144934 537849937 426219062 471764357 872824246 538650920 316288275 831717132 525659403 280752645 463716915 558794063 799709952 568950475 647789186 431086443 466717385 867201141 277843343 511515868 21672938 349529488 428824194 541746910 511921517 5520569 791057652 509563428 259667683 650767990 664875817 850841241 368782994 522299982 350370514 334476258 776917034 619669545 396806765 292225497 810604183 640183631 334851730 424666578 297706544 298266149 495858765 281059081 26202163 570799273 336790855 592562890 918088618 903277261 342135410 623221357 280208269 825966446 193955558 956593371 831130523 954415562 439546121 558539744 984500242 945281587 959549327 246847605 407415023 226200518 96565492 324571933 580753614 122384675 211481497 193895032 27919848 35168193 177151290 996063293 744293723 356049653 599173517 864022642 94138356 39775954 747491293 731577178 896460743 912351557 837554272 457129370 584499789 55706667 509696957 981379903 175413018 149998314 805248683 66683217 36083237 418464632 875742373 393066882 129202334 346810952 836297173 619078598 742912399 154931412 419276837 498660327 569747373 886386834 184507115 771132199 210953600 997866628 27732230 175340022 739695662 16486626 700820769 497859425 4089104 839857434 38993050 474478146 366855435 316946418 525951616 830868877 71196766 534810022 96849549 686278374 262639501 309105004 456322430 590418769 469954164 623596293 672424205 649087669 240267562 432275610 708172730 563886508 165171361 396748887 261743485 659720529 132535860 520953777 296200986 302160408 429250028 689969935 791821283 359318551 543068727 150785192 439024628 684791398 603284534 558521528 195854346 171113517 200606920 324647563 634672581 653774781 337806408 303839909 285678154 434832182 266819439 6246981 448605316 64113875 684074188 647649023 462914767 680038045 390053733 14249439 153454127 831734430 372855852 415886671 871452900 538994248 836538486 886042882 396826058 2537526 210035727 485852683 816636462 949789056 462442736 343651619 630706940 16678591 908680161 838298034 91095256 261662875 207035679 395982802 349018619 346960319 225971394 483689430 805439470 778901614 421886873 62539873 188008812 279742611 61257600 45709405 203140417 143457641 721390790 203596391 382955448 77087304 843473334 497618249 4228247 279936087 247734392 338998209 980990829 67862875 981755246 208298455 323316131 321807214 919125416 140274130 84583024 102524048 495445540 523379199 980597031 519999230 391821838 694086678 229380257 925771994 984245014 400666874 303207838 19597051 880723823 814566348 936496349 847955151 166414839 52084374 222074808 682044776 901590579 478592816 655028004 406679876 433727406 30815024 808628007 73537091 261172293 152911384 36890869 32470355 414223175 832211137 412560548 151769055 548297478 198480665 574715264 86141038 494532571 7736801 592504310 887457526 59034220 677019637 817868655 201651638 297795464 35606357 347240560 234352634 929460939 134644903 281844986 659294601 543730607 668823438 493600152 147364458 479000426 881046142 95350426 596173616 873578506 669658586 840619643 125356593 825375770 519655186 455117989 846845718 927019440 162223724 509030935 56939953 268737003 878548442 161665190 64339116 160343135 856717634 461006189 230851023 82515523 616887275 781695628 587496210 671162175 947664891 137254420 363299318 109303290 693884298 77714449 940606583 505014927 153830280 815251912 610958849 337451915 437261162 436054766 589791601 395535693 456676984 413489455 573787039 566182577 801491548 65339022 123209806 111932447 182801694 579400731 864320277 10371394 405410868 727303672 179276542 572154790 378573302 216452716 321788782 997200424 868787663 677979294 560827313 149838466 373377873 507568476 633730444 671935395 175600343 755194129 162861309 330747170 230998705 194395974 224130418 936887977 275853148 934084016 497729896 228215746 894328022 797498415 155184911 741862293 33149862 975676646 346085621 620333015 982260867 354769385 671347368 619290679 100155929 423583410 725819607 835102869 364778558 580192036 887312728 729791905 240895988 234228999 997502538 910142635 198882586 984964432 718183752 571447577 38940789 367570941 248826297 331693568 427061038 228624996 508523407 74212632 356229083 304488908 651526567 891296284 333942717 836883412 446658080 2429108 364951690 310534871 722834263 207019912 954825938 420491619 312526363 356575564 724150556 103041414 736750715 867452051 266718550 89380578 212016844 308499106 101720951 77978152 678199169 641398933 672649310 705438996 405904951 214251458 399396462 527228291 652805764 525739559 271335429 919270982 260159571 467241262 387650583 447607998 175461217 467749923 803559451 854448878 381769018 568350960 475618732 518878160 337849607 894057336 846451308 520269008 267195765 917906309 466899843 599377244 741205421 447516597 851117015 639626125 101581042 421551953 124343686 186380009 990301417 184401203 216262501 78530746 969024785 3579317 928705280 527128651 643998619 362723886 181516065 75699404 614876080 943560287 630723639 547163587 152961738 789794955 972196568 289873819 299417342 146626637 396364278 656533113 599632286 795921610 433298289 84282662 652012172 798822530 229925011 15653600 722899699 74559577 439643064 951667785 925258630 475738601 817635818 974322992 812014654 624229491 45401942 599815400 995807902 706350916 833494166 955953672 872689776 747616419 634515391 685483834 637678521 368145457 296203124 845565613 147718863 120124918 373354572 307532578 407927783 861327448 663356234 985207124 701158082 288979896 703582438 584975509 194254352 388530230 356897047 702736553 789861307 458321182 243817328 899184848 281431978 305899559 371568986 779494775 893046904 176242275 619207857 730090650 139712694 731567498 546132428 926936621 943273276 804498182 864903935 906971977 818327895 507213573 240373307 496037195 906042716 418777317 466774595 12826580 941816303 645512145 24364141 163962011 749317309 735232221 139928218 483282287 242791964 668755606 696278245 534944002 454325792 988070660 393629093 189016053 728392335 120104963 891635177 674110188 786327615 449284144 824036540 968035528 923358128 139765994 92296660 521311021 518568161 122738205 828453910 845675805 23436618 186434744 112926147 581596486 162611851 679438765 187455800 456285997 772822130 787344385 198452622 46448367 939470657 383873583 252689924 429227696 598846031 118442272 660312058 311481698 629525113 369339090 532163080 869141528 923357028 850468782 692798413 285939593 568248442 599390138 801266793 480656392 333946624 384232130 824040317 460363072 822804275 616427813 727539691 726881920 623712010 987156780 270159991 239735660 387500357 826895327 965358558 40933303 533049139 619956051 535416115 962213269 896083082 381239564 483022167 632659834 895829071 827366003 321682782 520397895 544003468 100527038 764550074 819987391 982618823 899145789 778615806 309788930 258143849 413867428 222384426 740264175 374451869 343168248 407649846 181854790 316309371 434148924 174165979 128498133 159842317 822803527 553472402 276655981 41124968 464469610 728505924 366686516 850973719 375407687 401094681 917428858 712143417 446347659 527668014 54300858 615818336 683600005 730800840 896332382 106459211 77026919 86811364 692334948 460276210 917958593 550455870 715844061 342499755 690825941 520080240 320328067 355918714 896082089 978805942 322968243 803431349 703563787 220749311 408963365 583508578 93864075 986018318 648917533 374983741 801271246 372396013 706569587 329103196 608976476 122083542 415422462 303325139 201084498 588818506 904627731 257855281 718988172 337703472 906871382 662945061 648547193 71746323 460779726 101604159 33117887 289534944 918185582 457702451 503902426 12814788 56001521 75185340 634610004 799786670 403406297 804994090 505306088 729678530 346176827 548482926 291562837 517050736 13462872 426648542 62556446 921942942 640161214 801050962 502437983 493028782 266640870 248188261 150743939 143932718 94760068 781129296 571255822 859511690 392959072 960693649 197520245 250388199 845455417 773188570 333313131 150696771 749558955 19924174 755536448 826378799 421184456 476349348 141459575 697297692 543598165 515571124 688292431 61522665 294477943 612052320 443961886 90492984 278355617 436437614 291781852 959097625 818139220 179390977 28424810 957873699 112653487 340522948 817453686 133072656 644339560 820833397 771033979 206507436 995177345 99395897 608445442 922109102 518707989 565031140 110692287 849677233 507522639 767888557 451153722 643459811 592523249 554970236 896683522 293497514 466781263 622744215 69232933 640522711 602452597 52915784 454704868 558711951 731208812 864663981 816678263 988408872 365648791 292067257 896589648 865483373 671583097 400106157 98108412 315340920 92232748 237084150 490200566 251271962 327144542 145793539 66228637 735460566 538845854 42125698 200727990 448555012 381495929 676716993 764283313 549910688 557965137 509936458 979492349 641212696 502641389 300817648 184020822 605984765 723590790 210883740 958537262 772421859 909240849 666681128 810559899 192942807 360491950 535603387 11393882 605165703 527041711 84103724 651344931 102376247 286618924 268097159 523803398 744909134 656992766 126575585 260570674 494797333 451393451 138762486 502299857 448670104 793890265 702791229 765598202 405345332 873012399 726116827 39790804 344226012 254780353 478390441 333852943 467024354 746062943 832650841 199966898 385872094 122768035 815538648 648647535 351225206 560286863 908715667 637780895 95496005 25265005 466124484 783817890 401360883 760549808 991978333 424227062 157584757 273314605 658445422 369831739 808447481 493350311 776050816 430577470 419864583 562616438 512669270 677653873 584167330 37379172 853792209 737727073 362308828 394310874 565164922 753997164 12147521 843557125 716461605 776698259 529070618 31225076 493926940 267036158 490343776 55268298 147659346 51617711 120030169 419307900 381863308 718155807 760960543 601367199 202571480 783528396 514410111 798451523 159781276 871706183 618348939 252339379 203178240 254106270 26165286 168166313 641022290 296285768 759824089 932502152 289730177 549818224 660403661 732765355 691905709 216087027 543567821 698812456 416242135 780521671 961919429 434730433 240391977 333079423 276499732 906038991 879734730 895823003 269804837 771873063 287521155 396985195 273609683 618202564 552313797 964390619 126781911 307403550 503231789 234375543 935201043 246754419 592032438 851468271 289761303 758062301 775468295 544247070 201043615 766125156 212355709 167558213 482676431 63106118 26479956 458181749 299875797 21873819 873637065 471891333 447710748 668872274 718223247 477373865 790541031 397662743 938222046 127781069 181088181 764663392 359994964 437809212 299109601 100833552 397672575 645918153 490307936 674689138 197430830 526678562 329237955 183384799 609214097 469566901 158499191 234682672 762202583 774810363 568763849 547592203 789220457 86600023 189602532 587624876 573251008 963317238 818606905 550631615 202826847 587381555 438838444 905538464 901306176 664489826 127084869 563450396 9046446 354967622 85139448 432343911 402576016 439765438 349778516 601232816 709144792 967500495 638320043 341851054 384258431 764743628 319154317 921562156 287849074 455760946 763574167 647226005 353309657 557707457 630949324 478716592 743866196 838310689 500060469 461782093 765526239 116944214 71552396 405441395 457902355 391876887 24659291 292217532 8513184 962183781 615038893 397740566 312004252 567785007 3594098 282422700 561630080 35832103 172674301 777910813 726520659 379801460 550427836 828036538 603956475 519826681 85009781 907877446 121505311 249182089 39439180 453983119 572856516 704860781 882844281 991926032 767481030 963958529 457857681 397676392 892609136 638380547 932479359 560317055 961894454 152186671 31008151 75878176 511726185 995286305 634537130 287654377 144031962 798326467 793136420 464393886 963941722 506542466 873673695 819249871 56912155 460633189 274238798 453745200 677499819 64990838 428893839 298023150 317890107 76158644 16335706 312325322 127262232 424206824 994428517 373705071 99103271 458022905 623348099 507184486 32390685 316448270 17143172 827542761 112603729 483507525 619456554 701921633 884963842 819829088 801092305 660129440 806520049 155383045 365399123 89053598 684336182 769266467 861701221 260789274 566353202 756485348 394823345 576783153 668882321 316029131 45215098 53492088 341911408 711674380 767614149 918679892 535860693 481451334 528721517 346291411 700106375 772207083 365859589 617873763 171455558 892645779 861851067 584114566 796097952 631160397 360580315 239118831 887362944 135515541 265811244 46573047 949447178 518478572 781857901 378783599 215168948 617589854 544517760 710622 321304567 294718656 1535700 463610975 300772946 528859274 332288058 365702696 904910209 98411521 677815042 846060083 452104079 816617202 451864100 622915604 513594910 801998368 310025303 172673881 571946030 780911718 305511889 857373141 206430966 968963861 590931281 3348130 826685339 747669784 678060017 754174345 300667612 545800274 304097349 727495136 29428753 621341147 155699036 9496353 419971147 35676065 34258696 411797436 688933051 951591261 151946841 820124413 622913364 615319767 195455805 873506288 804267389 72273180 139918589 739990003 66421119 668608843 577251814 204951202 158727997 549736769 475438495 493302986 79300321 708658810 651982919 548654919 762884325 909788753 975801885 256984092 897037390 755469728 405656190 434765353 337456000 668626713 491583613 661506972 864036056 185997687 219928859 379091700 21909830 503743127 229118231 730075722 453458742 433780226 365439449 943659675 480369226 636828029 544580494 561602074 898648669 326803594 430956464 117893031 816672924 308575959 346349300 110013697 848144847 170165503 671383355 466936340 187525961 437171205 986808288 90570518 960284026 533607635 974408064 35557322 833965848 103308226 392947614 981395745 401559050 283344865 510280294 834736699 30384282 130846805 130187153 927066533 843234286 201697826 489069149 420601525 264505283 728837537 851135965 78923351 34471887 912567135 307574876 340706310 87929874 215102745 142084506 842444056 704724464 567680501 254255289 613444952 48845076 845946855 331824888 478618329 701591868 470649274 779359101 666331840 443091749 212185610 70831623 737475301 919274844 986578324 760347019 719058787 397583557 376275509 445076201 804341153 714924691 996603083 988684435 203829221 116113201 403344075 528149702 331352008 288513578 883678449 476721862 8446019 303222424 295932950 609688262 558626021 232996933 525994300 892529007 534449478 95971148 396427294 570893008 345174156 61767565 806821150 495940499 283444528 514674361 828797835 240447771 510841128 212051983 836950117 572597068 685188699 56799628 890931034 809745128 412971217 590386244 15495822 882019926 853745342 580091815 548295375 374082750 187899539 159488444 959231335 348608782 121526608 809888103 732512639 483689945 37206885 922473436 434336910 65514034 512639328 258278183 556390935 144141165 999943928 840745305 626857694 632245182 154259190 163215118 986415177 667143958 899867454 715451488 712463446 197062651 995185759 385024283 570719250 617203200 74701175 64941133 358351680 696605713 575393808 943497708 486625460 498578339 811624473 18102011 173658427 193341146 804824792 696327385 784114960 619374726 506826918 318152507 243939136 596443885 724609530 395102897 61940599 858176947 382096653 163705245 498954857 791373798 551289781 241648896 651066019 434736385 688900352 166555452 972075327 381715197 18041848 268339861 529617117 723819857 750186484 701116755 622414015 659499235 416927128 561669778 660901329 233965669 154786167 721476687 639323260 256620345 533231750 992926436 619605784 506550411 428591256 911907971 329448394 411364568 754257970 983587602 673965773 365837151 441191860 60692860 820502485 367196565 667531765 72307095 481098467 728215189 456415145 513970384 183724518 141163975 76522805 8221720 246165311 28897655 786353693 977580891 796804127 654329776 254648908 712768837 383172929 999842992 715861556 494202822 318070675 117524616 934901433 75287643 432182362 703957132 879920926 740955656 897805815 728221470 634126733 255325937 592844694 575730349 277647378 286211423 593551536 325052977 765903413 31858970 214991330 737731015 424099213 255288805 905606935 967834029 168002403 913021571 392523297 875099170 111679166 960777664 376401946 873752126 820840592 864289884 768056157 478067637 847385665 662585124 770764491 236370468 588207305 770594335 389710636 288118191 849251625 776030464 73941195 37853972 840889052 397892267 5911169 309463139 740192245 571439118 163101464 27961791 285811239 753468823 815344114 286183304 812207412 18750352 269872282 443609451 709721442 468918266 720854139 84538153 666927172 579640931 983713268 920994504 212914460 677978578 137420445 259777646 250553635 290263492 256454163 244173818 644464385 930182117 677256348 118665020 691052931 642381809 497634618 942590811 623751421 863896213 101037745 514478331 813733424 200906790 635875332 617625809 722411484 784866979 837906929 609362738 719421316 253580191 742519408 991035296 337952167 479799385 855569038 354895296 491951652 58414475 196587349 770683651 665195728 790054087 2745539 215858837 686266521 139313144 7199851 143062106 945102225 804122971 59415572 978038390 721590597 186826304 16356335 342373319 743107288 477072281 796305301 520971288 337142395 993179205 682110217 662760682 789006160 601724613 123786034 471742145 740066785 251384642 354886924 85142594 983600169 929709073 90181218 919669275 714484820 160383179 237779517 904254874 69351298 773591834 393926545 535128520 727477551 290082221 317482734 911844801 718228006 6002825 617337036 867706420 347594576 44305651 830060404 76911040 889422835 116990749 459131748 652696987 690716601 141296656 317310773 560370408 470575310 102422092 365742095 623670393 501091810 584316141 31038625 771372716 66363134 604782818 883983394 252856014 338808249 54767084 585629194 827844882 782991601 579451704 772741388 816566878 108247252 979529516 823741217 15138385 61427005 787827140 788885385 411904605 260397816 428393618 601914352 264616160 695886478 481576029 399639672 666426093 381963073 299941931 912053625 187302269 995729003 237246242 712205595 941096866 673191214 869613212 224784621 475135486 206587890 503901667 890027684 845013553 784377903 422500422 996024535 778353289 512078562 21546417 444701894 401248654 172027929 255822992 258853038 452304325 392298923 462168333 238336332 883364684 602244412 407696611 486956593 766960374 33460507 66854103 292572606 11238289 688964449 560503975 286177066 860894729 675256804 586109164 457866828 260307951 894872549 452208917 442734712 226955544 314661473 615311768 397034927 470319372 41372579 32871125 312264248 2431557 665670860 456103595 338371283 925786845 633940197 466731899 429490801 49590791 129236507 980065186 772695025 480747955 666792297 878481147 44620097 395574118 621431502 772526861 199344848 866502333 202704015 717068349 382753304 542984361 33929107 101269173 410348398 959947784 151450228 598786006 812146615 472811848 38348238 517566945 215278222 935913414 329351559 352997199 677925449 549156748 387224827 518335961 274656935 749638102 404269989 160340584 568177845 307264261 334025597 250196299 61246391 145079535 475306014 509272134 782166012 278491914 41098714 214533535 946899422 832352883 218811228 613553608 54472424 319895267 688087319 137154607 101141614 404588369 475200814 494243898 875624411 405309615 912453076 996480471 203266750 233518687 647674263 913505170 94494118 954100468 450631559 12569780 814180308 998199248 140535621 487373443 162932385 608899376 690937845 551828448 746321914 904225582 976230119 603311326 112700487 390217312 39220450 282086887 5498057 398548028 301676811 219110648 371448559 775462752 240610177 641525592 226470565 337398442 770059492 742158977 891655010 657049263 479634187 806077032 293796266 970857052 12104010 137763820 407158238 164693515 161318495 126232988 854784669 738035881 698763946 173063749 710534754 540988413 293662876 965739366 216931733 791548133 578863569 562988559 119355523 628739917 597567093 101855555 827223456 457261873 832700636 258099350 518457723 430900107 776529215 788595188 591566938 287881391 747766636 325392161 785758357 150014191 948373461 309417047 107962063 306171724 820476678 612022575 185478856 324535182 494113573 272456329 273196808 298527286 768809689 509230100 740524485 980477082 549037133 724374520 400462447 114529852 613874582 944213132 535195492 379783495 188049012 449355198 664373247 868293320 222287479 571996072 813516642 362843370 787146499 946041259 565938824 502523500 68814404 445348656 150245024 327883055 935970835 864383931 134895063 272849676 985853400 274926463 266669884 233042854 54106353 918157965 241193459 954861013 352626353 420292084 858888165 768082468 896090628 232443433 531552338 980197544 675735727 483545851 961375972 795109221 914211841 95987539 2807041 385851351 842512406 774202227 474595976 779984841 226389236 466519411 267356666 641170996 17500549 161493242 440423486 515208842 684374989 603822078 328303259 301510737 931446849 501059161 494355231 19517795 308705727 713480649 468740412 748383535 171339950 319936386 695026324 61436749 43511846 939476634 737122399 716442232 656073375 742640821 446904256 139681161 924438447 428488099 619697053 824939930 778628337 175437583 508950742 899552391 241785290 123530868 580239188 971782107 905066501 375546103 72231907 214760716 363414028 316882039 381615730 624009489 234182710 333946383 905869302 541462278 93372465 581332017 350921338 873553220 300628805 348385198 431564930 486827265 776313792 407441748 680119112 898385551 871106598 565456435 821733019 497511335 638118963 675995517 740086466 634342936 870562514 678675267 688721868 245528126 177286583 917973978 736577240 768841941 644889097 828635436 848117294 955321649 700721698 220983434 469194964 851560952 651722911 940062031 975847988 492559055 450258912 784354125 4641480 94939228 320297419 17061766 503399950 180859538 613091894 39156298 286868673 851736601 700970210 656489863 233542746 6963471 290255612 855463323 826399595 864668730 950208594 626353546 341246293 830538426 255786436 434992723 470679649 350715936 494783387 879784176 772065973 740250110 805809903 672884710 614009888 618301778 978183435 781573541 958593963 377869822 352771919 667626051 865101178 653022406 554800030 174544444 443489343 942784787 26521288 828513028 740220964 486004331 395088788 468110296 896390528 415813236 465393763 678158542 500304926 961045055 712625879 958323118 368365723 404040596 2989224 944050251 358623139 330081041 341103894 191265187 67394191 741799256 318176015 807383762 380416150 456000097 173022555 922528473 311196262 548255016 133967032 29144692 373141187 701300529 167229535 64209040 734676699 838649292 129278106 859381095 88266443 747943283 982532362 232549898 122116405 991122045 171335559 406159879 988346381 35194306 115765353 672871988 338778842 584226444 158040456 899556259 336140658 797031192 432485581 566156675 561288486 796933602 47727068 696002267 591719259 781151374 933540218 575797581 164163585 815741664 189778699 851907190 801163106 402540638 577389232 659910723 313380483 116907098 395258936 136496025 703755920 577018926 23605673 977490987 997728331 571406640 123980337 153735497 160050800 37893791 896535328 518545628 371862510 824945277 939438987 842621615 494568220 158663448 686105631 85570016 989500284 201159216 895270661 101000105 374305183 249858925 24041842 15351388 177381822 250040634 135113732 856478382 262114927 846344196 372354068 910711876 343163129 250286583 754263651 800333536 441412488 890117111 843188565 987632345 349146829 344329658 306555820 107008236 347642977 61860849 764217940 490441799 930445366 148016277 892616750 902012763 20713647 43635352 608346574 613746566 407787536 930995733 849964273 178015388 326508666 35724562 282815259 9362191 309049216 914624318 26175624 875341624 394271317 252729625 48496534 600469549 293634754 991965433 80962080 867462675 302458693 260851752 689361848 416889436 209686771 895690899 928889897 388327269 861875760 249324017 128857511 529618512 34481677 215790996 816909322 922786737 448654056 837254731 172186710 366694770 937372150 129847777 104743645 138381154 682438440 762878127 614454423 20678425 793066274 948358856 778858470 140149078 384840255 412492686 775582817 792268029 689377619 800511982 993341718 280446330 316753180 951392935 967751452 58291863 121814881 719914762 422744707 300484341 972435181 770824085 997117904 695354908 192554030 267687069 242160850 222852232 517763566 609334505 857833208 364944799 711595575 281011177 474372051 277039859 924706145 701043023 377304577 324259535 95950513 195554012 841658196 515661504 455405177 279962386 532473172 923136834 274342707 503425978 69845340 447675647 526518163 985707243 541789628 2323826 699359080 865131085 413085730 363004619 187875954 295612993 407819526 262665798 492568628 166613780 982972119 312989122 44564373 185973744 887554290 686580067 655191875 138160417 535561041 576115915 663216476 507901466 490721109 35853554 912589067 398479248 519704684 520729374 754807274 990435350 781488256 461131674 154337780 116068212 302686167 385467007 181874343 384414544 515208659 898380040 654251117 669479198 60847789 667179216 898344404 209236139 851349741 839593848 5986969 614836282 968778328 363613350 964845669 25296261 668476389 859070860 981321055 591010887 290057597 261098547 74871252 87493224 291783204 898003385 961298992 465285606 609723452 455915144 120244150 135258227 690212700 968901194 555914964 905941921 21227320 485316920 159386836 770176289 851913631 877275404 984365342 834258201 940807420 71704130 158225055 730266078 322569534 780261779 263553564 328799707 54844733 761502741 153715427 724637986 887319971 755151554 36413569 900077326 810499291 150255373 490013051 935666008 8252834 93902382 689572019 934942929 147506130 429982183 152554536 184664331 863222777 283719265 649489158 350390240 581267735 757021179 965404613 91529765 436010998 605084310 604433250 25373152 125187697 548865552 841912486 981531259 274782787 162404731 191137633 158582980 663621117 496549748 9533454 434648746 104984490 660646620 569142416 514095156 863660172 186716580 642049437 450182600 51317540 645709541 344470051 927750642 584947573 686426879 313603332 480285791 915236619 395843488 212286792 615678471 642884492 542774171 567830142 409627041 764534468 991945712 741680036 171554507 286027390 995027978 436276720 964983371 878733892 455050164 357198319 550027441 167409042 401692528 82154306 937325995 899552871 729895677 743899352 532424890 772367196 625109421 684247969 516305213 177187766 636675418 141336894 316294689 166637439 656494730 939241468 908135160 593019349 194872984 748382601 359942791 677626279 286221423 749220172 341847914 342070024 939498497 85262287 418527201 328779471 118095383 993770768 48814544 565087275 897612926 60518440 489776261 229715873 642917302 963912214 264068060 612933378 686595426 397037389 270222373 477623084 657417118 265682254 790518493 672413277 2133447 736834872 779526849 295406319 398191561 557401733 520798091 768251778 792870624 378379254 969619807 120096992 634128532 952153275 636303061 979800432 454693422 396098803 830376119 330715265 54257174 619204469 392296518 161766652 584808822 512618297 856609436 258136883 291104544 552733262 663655062 396616371 154150334 593795008 854278465 202691494 115024685 542470129 716914799 122847363 594831917 158696225 37728042 202642781 133103679 823408481 973488799 668799252 992961431 36091175 287618093 932544213 609279393 275122847 846503438 237079133 650036321 631741392 684249580 988169480 60343721 679093982 239850654 999011667 852555019 77911304 262243615 263381787 237414172 23427775 510630416 806575139 460072522 960133099 64102365 637468521 679408167 922515478 732779043 843196303 973737012 63917405 661326831 534963008 307680632 906326478 68671058 865430381 648466337 171209492 895559358 262578413 964613710 556331417 687088277 163532388 607794760 249068371 310470676 415625739 312953607 258675270 654801071 244684945 342801908 272869987 375188408 832422039 178825052 313139772 211970157 458342796 851180260 739460622 691317805 351157736 655557765 816321200 699635047 671387272 388625449 659990873 629885278 184205726 456853029 524135765 184630041 869707135 93080075 110214885 993829022 654400021 277439192 775621359 382717933 587626279 942701339 670816636 312177457 937860640 492153647 589853625 13536469 949415972 559666784 795175124 142603414 304307382 469079986 414109534 226322542 277071187 683396859 760073394 405437747 227831227 513056804 804467865 724741021 320692453 447947382 143491551 562079626 834984924 929119277 383989921 745135939 232643149 753743886 918425974 303018655 779413124 945107992 911639656 608566560 67816830 657861427 812479615 765202165 156936283 788343512 209004506 807447800 519369783 907423134 994763514 306664825 573536053 783449048 201285873 775846575 407532159 644423101 970599282 560076573 607247662 83458734 841693581 985156036 313497943 468024429 570102479 553072336 924003738 551740262 42562939 831348053 549489829 435380648 82394784 119645292 633738137 781401160 956842572 120994599 604465014 975817309 753659822 987306685 320843003 837486296 320624309 16411143 462065302 975234826 874917042 624530282 568958774 966322908 942495115 681901845 633179751 87080178 478211665 992896635 563378854 897917344 20061288 12179703 518904284 653977901 765529986 377290019 798882557 732179291 196332180 810779453 273565859 868330573 473330282 835711897 820120225 45594465 350187368 329309776 952779724 370205560 738363207 790383788 419599450 154914719 354807699 370797925 873396915 102861263 339329149 511636626 358995998 352915039 745027161 627492325 536905763 68602218 311858097 572142950 986339383 210028284 157464986 258867110 98906075 11001278 445483767 972227699 804954358 985629874 150595400 709581753 102245253 781897200 686566601 144990698 212807646 155437039 869371197 401440089 869846595 246544745 984998744 788618927 510650722 195900833 239293995 26846211 984799316 216551927 281825630 982395667 214045895 71585361 102712559 942109644 488562602 319188760 537088724 386649803 882255818 554474210 788207138 181284689 469936010 224392337 968906069 417083243 691619219 347825668 427575238 458941220 371971598 88111307 263874531 713243744 658944309 634684296 612540019 968388941 608775070 636936166 404943146 212644242 710593475 153004711 583183103 73311571 369877248 761820754 405210992 896801329 481598633 827902166 238807219 10616615 346737296 139771686 928264261 564006733 633592075 126699454 424734922 300059352 543171762 558762481 395559192 518572017 442107585 671527153 416629373 630101115 730423286 964231923 539466330 360422466 557512783 545281070 318907184 34946375 398771451 84074327 472497450 787151484 390975080 41221890 471331272 997535250 957104779 727470336 603092086 418709265 209765585 514286394 755438992 825824645 177214766 725676276 673833161 740085287 404902382 486796646 807494985 880381954 953952099 848104758 184413852 145806741 496217681 55820846 552147678 673652298 86122935 837200069 160404129 860080511 498246721 803883756 212685998 892731804 198054634 171463308 359763608 508669769 614801531 237997657 158570281 820556791 707039632 508892316 976488462 909870143 889804398 609793540 858265169 65337161 242579361 99297369 65008032 112241266 212610134 276280060 197203622 60441764 762836434 444910484 309806468 106175675 192284007 140253210 338863796 879302269 8171878 871007090 470651207 269389296 95553614 855665413 44853135 651171131 801276291 145581939 695437469 567882017 786934240 382550969 140535975 957537146 195273836 930934918 741552003 454802390 309141687 980431199 20352181 232668915 250622467 414303873 377788658 643189871 574668521 928274415 729859998 478344619 821354951 42391063 746884368 670691167 831831693 297691430 372105346 375044943 301917361 863461179 829366110 478869591 381034166 683681668 20757688 221553770 238211948 694809706 177889710 99214704 465670955 792970351 417214504 457617013 444498399 998434302 655290864 822341966 834160666 722800940 865084064 782411764 646402070 470857648 533226130 731979732 693281277 29170839 294790661 457610587 188107323 894429224 32255238 509762052 297536794 574313513 28066619 215675922 147285601 246715914 185041199 376106134 109948813 471255330 407654320 720034778 666384718 845725409 991977933 252595075 818523141 695685514 857922713 329128452 585053641 653631568 143956872 661624458 911660943 286577855 846996577 345607037 472180893 895289476 556670900 609567641 130748276 574339242 817096027 876046820 310571550 527643391 926248739 363347852 514175623 356814355 23845796 888592609 28057748 533227718 710007208 660317636 952601424 813837024 644957651 268327169 41700156 521256946 420576147 847454925 305219210 363358751 275854200 313718815 314670163 116164596 713270212 575593446 161658257 565818290 117747565 678829996 113546822 824119157 148301578 540603981 947828387 740406688 582753718 86084804 233115511 585022372 16313662 309496469 990626959 370907183 502775650 532125839 69161522 977623188 646727416 224907476 26245650 483695384 669063438 778157527 221250339 819202282 83959793 649785176 951216458 676040507 750018711 436929630 490920129 54023349 723686048 533210051 454845189 351481351 916530055 771858606 432756070 772015382 740679538 722756154 74447653 860497730 931199178 82086583 612288587 582852589 821454045 976952187 708518583 722344558 588686632 934169674 567758858 125791099 614625885 425673204 614219317 758548298 195672155 883256798 663355771 898474097 544584583 807703640 499823309 151385308 543923205 102153302 735678720 339036191 666413559 501659303 813818574 214852152 352300284 499283785 350361992 100445408 272299984 543380372 862825907 212546469 376878998 416480739 213887134 537003526 980787356 131096495 196694696 108183355 850544157 627512961 710163036 641555461 685200338 402668526 827196548 195624012 735513692 155380250 62678872 936826562 260708109 924958533 202073237 54171030 733806293 872692778 66256685 721165330 673798909 110814605 533665493 351087849 925610285 249392658 974877205 216759232 96114258 546959767 762982187 229109930 974795597 236142387 926885982 570361314 984707011 943749649 923341139 514289675 402607032 914557785 82277894 809424520 540365283 550779293 140997260 605915497 496020204 444777822 747350699 39888712 219633293 687003831 780885401 259381763 927240408 284036760 242635788 125267605 65880693 233747153 765509494 769066782 123437293 132132521 844429084 536155186 597821153 403190118 175186300 407844737 213285903 323681461 993271447 341785380 34634942 750027046 459430572 989671534 812080623 522448988 564441141 806966736 105097566 862456763 416600307 148997873 244372167 727161474 621873127 152380626 665566 867342799 292625597 477875231 395937132 419969931 217700277 897164800 440715448 102847950 786766120 676290202 216623615 951164312 808867384 897265532 806070205 135689607 501619156 557529064 796780965 210405393 715319289 571391167 962724407 476118172 732237734 764688769 616103502 286353133 64410590 129921346 276943587 765740376 462058937 487540531 646026583 422107051 165632298 544895302 696187092 702139490 267402741 471365417 628196860 10334835 908037909 32599827 976742231 584290428 76437639 931011237 332859347 807263695 120889461 176968006 572987478 132073932 60095932 490132880 507233233 355838613 360449752 967454398 503733816 113993285 858728247 122546076 409800691 862947873 95566293 447795998 887116772 98504949 305577496 233004181 797947146 428728844 300664258 150259508 62400088 266786097 247759528 34655492 250700284 101005307 623085078 898247544 397866854 307951241 292798033 805451319 385970634 59315390 925584653 623668761 649656612 808149097 482571673 736225442 863025076 338402369 535835291 754073378 740405931 323436956 885777169 273649208 97008632 170078766 612820808 121047290 815762622 718897541 941664099 760817302 978299320 701162093 165546941 116773764 613459480 871039369 844618613 794807768 528780041 255140832 61415212 90225621 87030781 926392473 86104757 306709392 103567880 696087220 185240472 748099368 854125515 295036665 544521661 35514801 729170629 71798996 153763891 630212875 795124777 644345308 791540463 433946979 27984213 918495706 326117649 500868388 281204603 347035034 308616931 316442917 272028231 541337638 781711253 518919366 972790672 426109779 211862763 373480093 276892121 155985724 759823201 300781390 351097865 949860194 18054968 32266501 4258917 756253440 588163649 939613986 946708655 677539003 921743303 651879206 205985351 736664761 145908090 952078935 74866730 303552689 178760563 226287266 656039250 493205861 75972160 54105382 764468560 250188101 729635707 456373937 99006050 513951267 375059554 484976042 396196773 705114411 93336401 894155679 823311931 591079137 721522410 593036901 210024911 626788575 533700878 11751604 482499674 525418530 185259884 907484918 598872751 422331814 665074249 201832470 614667994 935775638 491673448 583929772 236647142 228980706 346226387 634142211 574287236 287753459 750250389 830184587 469254260 116468065 868666400 526049595 300984564 302717550 191483721 568279730 234301852 861074731 727585238 967320316 198869914 164638402 668098797 556320971 475873979 588840449 816528956 140950011 533471375 826508769 5440516 897752296 580736302 966677997 59236090 150189385 822660833 95928542 236204349 51215424 910342584 614845214 776481516 154661085 316380236 822072607 569502821 254891104 130375315 733504536 791867919 416560411 781318224 773913325 432794404 207245430 960553324 882080469 179543441 887493796 885536560 580162210 995802512 657304244 632641035 724354170 428098762 684560651 289117536 123274459 787143863 346798230 298540568 234321265 269380431 109183860 910038081 479285693 950275640 570563486 917035427 548252519 864761655 342656189 103153773 549819225 736011632 7023713 448877656 482220982 326095513 233611495 167131817 72307866 299296062 525652488 905024220 178590697 105318192 342591185 750953599 150505577 36844482 416877793 605064843 221783769 180558686 660948044 507466684 774503708 536368337 592718928 848080300 75218864 467588380 292759584 518541892 933506145 600072360 440296770 264521851 354534692 696212386 930669508 754631967 225054305 102322253 698682996 406530422 43471370 15717621 744659927 972937543 833063317 958351444 336930170 934224532 456088497 459878220 971153002 712378881 598718202 640415696 673531405 453450270 422064907 213214722 315749709 216928844 988498806 152570594 76250015 342408244 887587328 981412236 947784651 199473440 24332425 682393131 882844491 73284477 400495251 380769813 228140401 995538531 882852586 945000898 271032503 596822126 205804710 913172174 181881202 280464108 363784345 537125776 652269204 390723191 166356263 769305704 522063422 163186983 539209683 248557143 533419596 751436066 870709445 453933986 56482382 162200836 646264696 845669383 752194834 136085004 600165022 289876482 823226642 144521729 160095543 967436182 441944039 85326837 191359659 744637479 253265566 405310392 117943314 964594978 93830303 430246378 259976630 158457232 556916398 772217361 224974127 856536788 106847894 695056834 624495175 640319503 523837108 199648136 383550499 886702198 444941267 358100451 115984215 213510482 153590697 171201052 129659156 974543612 285563577 463069034 68677475 223614055 889411045 266024919 734907822 592832451 921349306 641123472 724367033 558223609 605683656 640405658 65420359 514047470 492356313 977442118 412813783 365578522 188276573 262604309 232759973 334117114 422644701 38839762 859607541 498086621 469139420 679126837 537662725 902099901 630923215 261327531 859583005 626593614 466974019 362148617 794846841 84866992 198587610 870695734 126313524 346883068 814321630 677285352 850167553 976111523 967726264 548624289 433462850 801893701 502547126 804054723 291678246 492762550 589085906 308012222 84752098 926498357 56354902 922302859 528311812 295927022 175432431 424529984 221173095 974793826 74650460 926851445 263018371 806074628 711675258 905662888 239770268 659940114 958209142 79087831 836869130 352303389 744943637 955352125 515507019 113134995 881491884 750948130 941997631 187557874 960999170 469448183 773394326 407803155 607318790 171151016 360306321 758942612 76694755 896868159 191039979 70508183 309999176 309579005 762059173 672176093 879706718 665836625 395937109 146666709 892698820 592458100 641807900 37091024 3228789 637236813 392768372 388263984 223941773 486121135 601733970 858975567 295465047 45321148 378725756 857102416 741678481 279614423 387153539 821048847 132541130 467527564 335031791 392057677 688566044 367987193 868558647 123364209 982218297 91536631 902322208 750294022 525848002 987464485 289745615 700134974 20570712 855877043 447920592 930005077 72385110 850191401 640770707 620904053 798737573 702770784 456421102 40031662 325881149 516578988 878810197 174027158 418203449 994331794 842165964 5816872 672951317 476038639 178040347 938864693 786722611 416439301 796905976 902623720 774565447 312147186 258682713 391260940 748476067 512766762 164578453 939190507 607959891 488731547 382317527 141099864 151386444 867242457 653932577 504896289 622734263 104224734 65817167 726696896 609206075 738069210 635500010 713631012 62798173 353927139 904391347 776678831 741116500 631489859 904333492 569771322 396751219 530634856 984755887 862320595 39262611 843203698 510336878 423008360 31832028 371245483 976664674 275238676 429133424 890684634 41926981 176612946 663810058 225544848 533122320 569537848 525537378 465936863 244646076 740876413 919039425 990911607 164063970 275740430 445619426 660699211 590427799 529281521 868513133 778114574 872409658 122490875 59266407 204978199 942713338 890542317 235297697 97003735 237847794 366716838 518778842 569461418 701322322 357377692 821064907 669202218 904012406 872456549 888845854 346923654 667726625 625217470 746646305 929607936 137360749 593387477 158262237 174580214 525244105 72067155 998260492 967578647 937329647 421456495 111013580 156880531 463999448 215148852 213160022 289255607 535600759 615036610 649352727 250183934 103107631 621838395 450953156 852771795 716117709 951469410 286737167 335229510 591190865 761272828 375433016 976126973 86215027 536411600 965750287 738825425 666195638 563829189 196581141 620538752 371334194 828245583 32855330 921347844 277846972 7695959 805127820 259664677 396479426 621307178 121542922 485957998 777899744 287951692 222565910 737433012 181597198 584133469 68734454 969409702 243856055 188428410 924327767 852868599 607286548 882121026 474583442 94854552 96008347 828337014 162249314 663845192 57520086 365302990 208261556 243543742 274090192 932054402 691777791 489025636 901721822 338278278 613531312 42941618 551660561 689606928 493666536 673325558 790942697 55843276 844702062 746726825 506536307 962584932 541954074 589813477 170794765 910021946 847804068 63089356 64052685 927501519 861044876 208297802 287871384 503578363 887201371 504033891 80783014 49879135 720346543 705141113 102361348 665088550 109528018 949016039 196153655 489737703 188587189 111337898 361848494 66089986 231234317 325606844 661196272 636946922 587634237 306358650 604262858 955195737 148994353 386874992 676401053 497221502 557877173 908960914 306601207 149034567 464666578 653467291 5551024 257283002 269986782 117654695 177077847 167274206 760403261 760842481 152168440 718988996 604915179 823182341 726362226 911071547 793317438 258610550 756835362 601591748 262086768 620532026 13885673 817968261 230700690 248823335 828581410 373692778 14427478 519779372 40409406 913174438 6916309 976049803 698715882 496576909 560017092 770624096 670710503 657896337 873229415 27161190 562051866 773251493 240725179 30302261 645533611 301448706 305092352 500904111 865452893 410331569 845901003 958518118 961710365 194032813 983988647 985070773 667832071 768882242 32043040 779917118 125182362 87889884 661089212 869265048 983638135 542498563 120512010 305742971 29445404 656881537 356003689 952714919 126122570 884830457 186759008 178415683 312806751 173029650 188148042 784798692 515027632 367084581 831668947 799921800 769845040 629326352 15846479 804053541 663711164 54264440 540182744 939727123 775681452 19099491 223560334 312048346 691812344 70628330 683013699 353177555 663601065 779898597 469351832 409157713 73137872 538524701 715019037 565111029 52939987 379836676 827506145 578852132 139473991 685297163 726989299 101545862 354753966 631890189 773642194 257740824 660990291 108491284 447188523 899732162 738576352 530749842 575278583 726271467 275099963 837278456 716902610 533325577 54219187 881794384 320222019 664898778 567908409 601706774 815395148 42154650 306783285 208614349 548591286 134578609 939738084 951496080 567804784 965615795 75730807 813196996 416834202 647954200 428251147 844834791 334439389 316063528 988635008 456442169 847488831 307827141 65053699 969236704 206551571 696259064 786436041 371386772 146011652 819654280 725981657 744549432 841535389 450135069 313812170 760204246 967626376 156295004 262378793 321605186 32613450 173488746 85046295 177763656 675818950 25922300 514689929 73556591 146583314 601369667 22678595 446666806 748556442 339669319 875383615 797534858 738911376 349219208 614217685 718592034 948319743 470438778 171689536 50928800 385671513 798806391 125128617 411180664 61738452 901658433 458747472 6339676 593891194 819437269 192175890 536325346 945261010 196977073 956404272 861587290 536952282 815724827 548630625 85391914 690028687 768448488 697585462 592849710 874705183 734457154 771137084 4605077 941585139 390515243 709490432 579717717 852314808 357413919 230808386 821918512 557917161 46599612 671531247 390859460 146756177 996567931 700287008 110549062 29864756 644830121 290091925 576939913 524041717 945182835 346986713 474529322 766030620 791325029 459577226 982982514 84376892 705442707 308864094 270303168 678311019 762190728 983635059 798098093 963061632 50769204 938329318 514675286 712065050 328049455 254882984 79184299 577190808 342148510 615197473 475771125 609935432 766598950 383997931 515508829 334656651 313772995 36300610 610844900 336006350 694651530 236447414 806637201 57820529 351716440 150845565 369534171 401488987 929636588 963076054 587544868 334158518 938069394 612538212 291249668 971359394 585466409 703812503 825552250 957314189 403474273 802331646 719436506 342269975 162188712 362896627 326981488 895664615 4132555 596476242 498711044 304287695 301405210 572056735 665977978 510692650 486205403 656671537 792514963 693575878 349706318 14779768 868928207 205859715 752225846 514064076 343970689 973885761 494757394 883233667 966507476 421303999 862013276 273259391 128903303 119778479 715218330 484390175 876121466 735689218 291529783 738367506 582191534 630376302 555290602 169148040 615250761 578953353 579444318 57412389 77327434 957286257 12532362 1126351 2437648 416910897 657410109 622403079 773692319 389996815 906814653 184305977 76274432 128162999 386977114 530261566 592220464 862526946 710955288 975070203 634891343 873443350 760606802 456211889 343202123 475416494 886648326 224041097 736352621 758167723 971307420 37428690 83638833 720615176 294694710 69838945 698077044 646654198 8895128 800401545 902262210 659994425 444349201 717488610 464230474 567697237 146760430 21324507 797054701 939041 422162257 880013023 112812698 632767119 107652156 596204339 794103733 77056738 600773830 642555963 133600488 38882053 954166780 52222093 878443775 598136893 301058387 734816314 573151273 854029622 845063766 974695469 125141443 402392593 626509540 67667382 619082517 349225259 358033958 324923226 631061231 386562852 416833065 474657295 279156158 146723697 410563745 146302100 945909106 622823858 588241764 625744142 179951350 12228599 844163613 701753229 383852126 21056555 493888801 52903766 602222532 271212145 133361569 286721416 284399249 131624860 551974652 527190857 378264939 542667812 728022401 292235752 999698538 438470516 182109903 326027426 38558515 654876035 864612249 712126341 116741700 312208537 535652326 650877227 932494540 254941785 128508504 350897161 854550423 91744213 223286239 315702815 249358829 272548484 733536860 109416494 48275761 615243702 523141576 402240976 350492216 73686027 241863749 411906358 474155952 966394497 897489819 949558601 663151076 117531652 407412704 787744163 768457544 476511281 575002357 809370653 652857912 864024954 309320342 120564484 979993597 594222550 468951800 797736302 985372363 178280474 288939401 433021549 73468836 94046996 33041313 367255221 646066713 128868357 73324247 398435131 655686353 62658055 759993169 335296063 171508695 953302803 697045298 261871079 269559607 527193667 731610633 808643155 442233609 977067448 100088772 404344876 332535049 671164633 482201568 300565157 610029412 956289537 348571318 631745317 477423453 640645825 40415369 592340437 375033591 669623012 33876320 225516446 302876367 285473063 898589327 989880862 395847254 834783103 318716573 95807504 383725570 404403291 45315562 956747816 426250298 408718508 244322012 160533623 550368256 916294669 693362301 556839679 27789589 24884093 277950635 991034170 863781462 918971090 725808165 785506084 605177465 714273277 77457720 554979418 572275062 9476625 773736232 159778762 369440390 315485118 756221001 833327361 569044896 694355712 172308366 33513315 979886929 260202927 14684716 980279812 288070201 297059166 88914024 303371645 323585474 948764964 876202582 497340196 331637347 759949436 334118274 27438254 895292466 444687506 339550373 812861367 275057470 382011844 830800779 867229342 624914803 596730755 222645921 43125196 19491823 96547691 917040554 163626086 653487355 460510433 387462497 551187680 427868531 663890727 518499718 829317860 363015036 635427654 476066298 722989470 154325663 652864672 27686401 84979496 397060017 830102918 737819652 573544325 39360044 858218998 281910903 211015338 567042000 69254899 713476760 221062346 253395028 995532860 973241167 256732405 885341027 919749496 225994983 258218016 212067900 580599217 292090790 702643486 760681530 103868971 453210549 851525027 56816855 678912167 586946537 233348003 831474853 223244923 532257420 449429758 644285252 751872530 271233393 929359303 575856148 186294922 188105504 644191959 588411498 249401246 383134657 716223106 241179333 763687573 811814169 16921062 616405213 431229385 295570380 442286080 420009778 286674561 862008463 58842668 529588386 95071136 101139098 709873213 193926157 499073249 985329867 201375723 159213732 358752482 12577153 875543265 144463321 603258019 195311874 215932782 751425783 872820271 342520605 182144708 926474938 990490590 908355404 126792286 118534850 789204621 899548730 33608928 782141815 414279746 276633551 759346923 844439241 288743492 347256061 123702892 683163315 705928574 580611721 346985607 313446923 745129914 130902695 494256036 160380908 492552871 734243161 986514711 857083850 367594208 900398401 469374944 499568795 927533364 36507840 930476834 973292842 609625528 928727434 620953727 474813253 249644065 248891352 917769327 856069992 251226663 745256878 865161717 274832920 100627104 892437074 473387744 98940093 493415111 306578819 672672530 806043624 582890659 790346730 289769082 150344207 257744168 489468245 466505993 229803009 748325850 520033065 382542044 303675382 139985364 126768898 855112622 198872003 343892032 414197167 516267812 431270314 469385434 710060669 207105990 968263173 573955042 64055573 78857579 356697227 588835733 559187656 371876980 744149890 301058132 648833473 400714054 331505011 678216346 113863584 753486228 725356070 102693456 465967727 334339369 874055968 974429801 972567347 423187454 628970733 482622521 775724108 227937725 143869492 140763883 372020607 826087425 223090451 448380993 698068081 558819703 832844997 589711371 355677567 524872363 539422785 720945611 301445441 885298920 930797600 187045463 629701370 715086100 707411015 300761978 222281961 84143233 314886132 412138501 424668599 668066881 701068935 777515863 532874334 558749185 701305906 464960251 288959278 969601638 852039040 509172748 442961239 25303745 265151720 149142194 931056037 647322451 207072020 961534828 602199402 712013695 652443043 484775464 856546077 902094071 970983808 523725525 383171449 317955218 444798689 899356979 268459073 39824465 790258173 488134767 427682018 483114299 622416725 679485404 99020578 736797982 47080283 245208972 153743937 807389108 894692878 25080854 349888973 47632886 685014903 22902160 200010977 106296003 87809216 53867705 374789823 428292831 487575637 650646858 196493479 224567052 16117106 226605724 83425914 214394619 69160478 542920817 829972687 809291044 188976363 507838906 547133227 430652241 959811907 910790310 861545931 605790522 643056047 734153256 182200233 822456950 534808637 833358284 999745352 757881488 288104561 908020770 149604776 704978902 596032258 930397832 143523590 916362291 490451778 309780788 687994276 449148247 240436032 878417459 94396614 28717421 319905058 196532153 814173173 86108568 175551466 768558921 158125954 488503051 64609879 388771104 729823661 115919618 825509334 724186824 113558843 384782305 206260459 429664939 994422009 185950498 764604208 12479376 127562919 776705800 138745002 410893487 308242869 601714074 671794221 693610416 315689661 493363372 461253641 178559951 980578741 792665061 612360435 222613438 817638969 728785008 368752672 72410508 827070159 720258191 865373343 249403868 769252864 102558215 619557293 182392868 845992451 209769019 228372205 410627375 456162239 226714891 809514594 413322977 920379224 766503050 534306157 122317250 407962466 967975558 401348367 813173177 824829074 95453853 494883290 381771815 531098120 795330249 508797549 637130207 973863244 120523559 265556216 411261061 392756898 137703797 865879846 42507831 290156949 604776080 986886058 450313244 641707594 203420201 693129327 127970763 165623841 115168698 822586473 384500307 733766133 813356051 254179371 670862866 644597378 480646813 390994062 914619491 716006350 265295 376441221 91463940 402338858 1380567 822922182 999651569 621402730 165375732 755692147 548791275 303381787 271044938 407143178 644612262 473250182 413371596 865946678 72948675 601835547 22034964 495964502 690794758 180260684 255177162 335699370 70236485 10297079 830424910 446533785 291122110 733850070 442329085 571820779 142134163 177589499 792506377 90901197 236664987 987353896 553530899 165388027 211703233 995724510 601987954 767797079 374332784 274694600 665062570 555248288 666641607 882432613 246330145 384950583 285999570 589759371 309569470 737333941 716356541 266488544 964250166 763072942 971955957 696699305 121075204 369776025 383728531 375957446 72350903 168014529 686317502 123454020 343788639 43643975 609513955 877983459 385844680 734684251 890982657 40968257 505533298 59488435 103250496 748878992 197515862 519486864 52980477 845746173 7639506 338597317 842297484 805470477 931946841 182641294 47735189 524546736 493710777 906223256 927751043 702734441 973482804 95738411 866611881 194228354 32284564 74438381 633890656 816581274 998971262 379037358 168049787 739913937 995493389 55167487 569321774 421311193 155721350 599939844 181856209 443538218 587689050 608529399 712150438 983506683 931750621 270938656 492869315 63993192 336905804 960384985 107994931 57034971 348705531 826433833 303625727 187217203 215459706 191533403 643810113 475280937 61238827 996197975 204044743 664410994 903999610 427262874 754135549 804970500 916119583 401397340 14763736 724834049 363457738 66719338 82804890 907639370 258139565 276481229 777050633 9981852 318384384 247403472 493829767 932002235 523235677 875526284 62941353 654080490 883744970 994274088 859831499 892784315 558279484 29341047 519581593 690923253 606538359 129294220 126461036 403204354 411545641 534666430 134176523 617807420 793187419 167205386 536713559 393245277 222763198 461830886 557921820 407893443 581714919 323215904 537493912 798196766 417877077 567499097 608982037 751393975 315828173 692602265 581374013 556516753 978401475 952119184 78662999 80733591 705760330 558731818 331289995 347154927 39501508 607302682 154914293 577962292 397211150 480924105 115831 185090679 67158967 842320304 358944578 139871859 752904136 208848405 14817415 35917676 582722234 511165436 668391778 429886225 534595697 666246095 70855762 370090409 714764179 320752120 850414641 460493935 264987843 813210816 516388236 711005520 615371909 780425377 653408481 942522789 397967305 274428267 183257991 856098967 476324219 209368595 809747223 963146120 417377735 711667980 469772904 583163837 785369827 489964316 406379730 857760597 954400877 776911317 796856081 640372876 585435641 487403351 684752316 444461202 93595830 965414825 499436940 858235993 132451085 315236193 319862995 24913136 429815555 693138057 866327761 447456725 965151267 175584837 724202260 625396967 146041374 137213723 928274506 594810530 581699979 914884410 879262239 414847566 699947879 68309577 950805252 538486817 924148137 377848412 107264741 568963496 519354507 806747336 893317023 478360471 275791437 701408049 202822447 639130601 637693718 295219740 641038027 777849969 1485379 193413943 169956958 195933577 651361339 313404547 366307980 324185851 159412398 607059410 263613128 375148044 403920426 462369482 745458411 224914163 643658509 165815686 754424180 108527389 592756093 186364208 996487364 124097598 161149248 115992714 551660091 805365696 664904038 356162784 661331899 360936279 747762787 480236626 859032940 369678015 836839067 960961719 424627004 139703246 568215365 24504292 88177678 829884994 580996961 118933171 118056144 845455888 881913587 349100736 229427603 463318698 335870384 318159898 486526759 918173715 880499908 573379369 409646013 652270545 854785507 60498662 575828077 650943704 517447495 576912586 585570388 173566323 5702643 269631432 152864107 489894214 604411188 149795025 737154135 405197554 246201740 141909403 725356547 562174692 629465923 231146631 486965936 689506272 663326479 568693125 863144780 325753375 586461038 662935447 500191943 500057253 307341966 582122983 798279824 509377311 108952460 280611928 2424126 861508178 841012887 468904702 363292145 489664837 528714055 509024331 697370371 682356488 130678494 780617164 531894398 961653114 330036777 532271419 262389920 530073266 312361688 394487145 988444751 558281262 298055779 693052523 678064883 188956158 475746970 619200967 163821854 333288675 40489143 920404201 943195259 292769003 172683087 33547523 589071385 982616624 304309542 890269689 790198739 967739799 140839314 303985927 181091559 942451432 343106925 576395552 183703179 507269809 807807107 184514955 633178763 53601564 963063344 841443162 4057849 380277502 388592224 963600024 13642043 412377680 116973762 37366368 585302112 783000586 272725710 31484217 454523781 35206507 236781557 404370977 865790032 26173853 460564174 618439695 652240753 811585090 371450942 23962671 207766011 745887036 329202958 101093056 61313245 625214779 903685096 523382828 867250868 540612052 427151430 670540802 885825066 31159638 710876580 760239996 662090489 926110765 597596958 224051805 18247580 635393909 501938221 200071597 230582645 191391048 283512612 563331447 715589565 231655528 34430256 147540058 521829282 145391983 23540789 818406126 435974284 714926992 180553092 112940995 54538383 895681531 695850987 585697948 858865784 392484281 278724173 711035971 884735996 623337663 541795978 647333107 679303006 294365545 402036688 891177517 373932887 207855860 604913878 345894877 319254543 186961575 630860397 453190206 97384098 739739348 526758488 336476170 344571529 899245564 951688846 263945155 224885808 360380000 419898253 824090010 281613060 5720906 733070150 539691937 895987976 767982462 643646442 162571484 991017468 30733432 979935219 106859092 984870525 606014553 92253117 790423875 15685541 505909773 636948532 311034420 233781606 74644781 401154885 256618522 885907329 797528324 896785908 488623105 887519318 540389815 63798950 633649919 439323829 724908762 44889944 276128685 190916044 15766585 444016150 219249914 455321625 247804588 930728150 235878181 255240546 751883352 680340221 332588936 157989680 219780030 500916124 761193840 655948762 366635217 805478819 395453412 167210063 601364349 267108119 263653688 129811758 534840917 320488803 495615966 673658178 31428068 523224785 215827047 970290873 682022978 58564539 751819172 699964469 593071544 588300543 373572325 586336322 608971761 433852534 198475432 620794597 436662538 970398176 951224868 711344566 178198969 284205832 292061667 23002906 987215466 707665970 455912987 35125378 703440025 155952463 813613139 173557315 802720738 333987621 248378951 133694924 621730251 712254723 738763796 734214393 927930396 689255157 741925252 793132321 535324774 481490763 56922603 199758151 345195472 682981248 416525593 413379076 792453201 985746138 25210622 162669366 511286606 846681734 622058800 332047193 111282937 406374211 539541469 466262570 332887929 859042615 299602625 865764530 330005273 36242943 604701079 962108152 609182379 900988927 292907062 733262066 148060183 624594425 698571524 444645205 930015281 346668916 651522920 930961806 863250521 300516249 157309714 187879378 689729875 521617887 418832645 811417520 718912890 407784750 243905233 450855030 794726562 653133278 308940301 714928574 384590421 288241353 906818654 205733656 653744382 539692285 458963753 842909307 952409954 402346197 845325222 53369633 862963566 804126570 657285828 479988826 879806285 293187321 628197349 234148017 864370039 242439597 709036379 28535102 899689022 458738675 238917438 553319453 978863513 403724951 110979914 139061425 514759136 60728909 117502656 232136152 533943739 820286467 67533133 711879703 482946878 955603462 26051384 364762061 914941410 580551133 734806313 233508286 246287449 480310609 869102967 647067315 138414998 997222200 849497524 32178566 615530299 916465887 269796911 826949037 548418791 184146245 574093520 1647195 426421537 179527991 298039288 970867830 54482597 593175184 23959623 920579700 941617287 802030950 774736707 112096833 307683402 565981284 816416298 388088200 134095412 770411557 404772993 730340148 943965049 261063582 238529730 747417937 550590103 563693943 615950365 780414265 238501261 430155989 534963514 909444280 872385303 759909944 194344060 158039376 888533373 947782504 167470058 144097393 143113966 975740593 175673783 788955198 706762611 77047656 309339765 374713864 935372199 509028782 447523062 647855884 432848119 517478540 234392397 858642451 597811770 895485537 293934769 294480577 673646455 867285096 410484115 935858724 821181587 121347421 810817261 305660645 710759977 244428422 966920916 992846951 276254807 799276470 96885402 105765326 633544950 206260534 349713623 421082055 341668288 85011730 464514681 666446709 591447575 238258622 143522333 911969987 525717342 157916856 421548977 760892510 350590859 833773592 700922975 916010546 472489858 794910839 110862569 156007760 151143696 449146968 862338246 844335528 603816949 534128946 899297404 619515803 574141364 207162867 146183852 980071764 921763039 311958986 850243826 49514580 613139448 417915139 727157154 147760975 895144144 430675455 183554822 158146126 946704260 495652549 458262306 560691537 90417161 745072785 49970649 879881701 884225574 219616604 680361365 141625785 638447513 883677285 339515667 605201587 561092796 953687381 724629018 576160854 804880638 850099998 818924192 598082728 381179413 543787203 137147635 285206651 299826836 50735379 949558538 889556005 163205046 515434870 647623063 512657880 425008844 452927225 153239735 577339523 810778604 104338339 631097102 350577182 851104568 639393384 818226117 4013170 509510447 748929382 728757706 447075137 107566662 869547582 134871395 56599885 584801271 867347750 423131933 372498227 481483998 338343488 201654814 267880691 3639106 194977812 110178200 304152816 556220620 894117077 187093817 65828728 671482693 284323174 86312757 221874319 897254748 562357261 607329994 982869060 135062745 760355401 112616415 671339947 536349140 935032958 335792112 64796178 983008690 647659653 877467578 692091765 634175076 119691186 617386011 209661062 528480913 511038149 39053950 301193376 190893834 119392466 145779088 123589630 228128151 687576679 226145845 480171831 449999010 801392028 430038294 633654581 273344090 885612648 782624701 237369186 17091192 945636192 440821405 980972565 787769803 812743579 729221511 983007851 338481071 623071864 129203554 836523229 564083437 293206254 566727212 597179859 940872337 538340657 873583506 888652168 962483894 142118373 43233953 1398439 622544070 55708724 189143466 412481310 493423984 439404999 989170734 408916943 419048898 957359202 95881746 516394699 460398448 158209923 945298934 499621972 779715376 671322130 821491488 61177042 671604065 467983442 321907664 267766089 15625690 730261078 479712146 458287850 774746893 595811366 467168219 56915357 400649597 347689578 398218703 825227749 597063324 54057911 209055877 924836159 990032182 280958843 156053114 662055124 546792169 706830861 945451088 748076092 182025801 218436932 112757622 714153583 946972626 143539941 598753356 191048109 603069139 658465856 824012105 206659055 744479405 602216512 865511055 60757383 163412407 154221711 462614922 550637468 367745139 38024826 678111259 809027664 4836092 306499266 526257750 809185660 933872701 943339749 216424882 710538633 581929442 558390439 270045252 251740663 904739674 882995045 360969472 990076939 736677854 932050722 429074256 536676155 569885836 92026587 186529533 584114709 872431115 365957288 151687871 749259755 741550544 314663321 976627559 378861734 601848017 603277349 467404633 830651698 613518854 547100795 832209468 768288295 152992408 169846770 572936161 315606042 757344502 774205781 560638704 346578796 262282965 238264513 101511300 123370841 573765215 888162700 999708103 632290949 966114794 736871538 717043298 521615786 189564737 646851653 345951121 348869492 506152084 428478793 514336088 430139765 790694825 94963587 796198970 237137072 221924586 789504277 675875975 136469191 968601387 489847290 609486332 261750732 298929053 417363812 57699927 561223341 741795619 461541827 498604675 173630287 722916238 302481731 51636967 656169245 586415517 463508599 160095666 470929408 78504679 197989055 464660453 365327867 117651054 394283928 296153601 699303957 237073294 680687010 64349050 303222047 435284221 99146310 933150503 249326730 194551617 899191915 880956129 394918479 65680742 501289457 340250975 506750548 202997201 74467694 346978002 168081845 642912798 903981931 911258359 691163223 252355681 90963153 494383972 16704864 266077689 200322150 131961208 368844661 59241959 841379073 848565549 752408111 771743660 449883719 414625220 350712045 896290627 769792011 697288454 543323383 322371344 360874065 320092942 660540055 641099578 947688629 594178615 323917807 187626085 821971393 818076252 134376435 762255664 769445951 29115197 999417119 356631763 614399858 212588861 652368352 341982523 487236905 374752168 915865453 775679077 562510553 67508101 905562798 392317821 10255105 304420899 5315869 292029212 160177409 361540948 7956104 605368798 466817063 242498300 492870230 43507088 40005622 991316016 272483351 936651366 932914441 495866574 347380250 223271363 484429415 391935672 489149616 807076135 944067288 121535996 866816427 605246763 231260809 505691599 450826176 242999758 876754798 98419766 610155311 279381985 250111799 220297036 992652402 652763670 16784234 532466394 851918265 218406467 633404812 270391726 26155932 843041577 465072085 323471116 696049934 998502229 442124586 425517504 929513634 334451149 797630491 327069141 31413809 693743709 374013427 493460907 689248306 74147195 491676061 564763311 167209264 663292491 976653637 590280875 431322824 455626020 515324242 376594357 262313980 585575363 912151057 984300778 287425836 47938032 849761405 834829866 511511204 159589106 948725179 792272207 350165416 691023472 734737606 677568398 746555162 885534812 31806694 426481891 621355059 815009028 312311332 617978425 856177076 247213090 741767848 644571352 495415981 189645637 693980559 343318740 321405789 961055104 493437952 103817380 61433835 545777004 674809825 88786340 710312255 573192574 475529078 722335161 718416621 123261109 817503629 686946495 305552717 75193722 346076145 597425071 589219953 592274598 891889604 120952896 45031727 950258280 795712140 102745726 257007586 961060011 257210560 217054280 964938190 483674083 446553556 490363907 472773193 233834636 626469340 994359670 689201721 262697810 848253459 882251710 923342859 822967300 319638071 868079518 94675652 2644294 919903607 814601304 425877224 107328915 286865443 769598151 373123725 615619543 90671334 842820449 52060315 628607146 94275966 64286049 645907792 794626367 431277006 537360089 820137386 927982060 774740803 624394356 290228791 864618472 871840311 808696160 468479319 877764890 50687663 351282574 555731983 329699243 38729805 931196849 657481140 66640003 704013802 703652005 471876869 655472924 730310998 170104697 601292317 284351225 122073616 180902622 418422889 656300203 214402914 969460509 159683647 756299774 106611929 878103263 502993807 384788438 240252915 993798810 912577230 448484614 538795678 127186120 22612257 508874834 854908027 454613226 468018458 786728994 783190439 223757891 252025669 274733452 245148539 102060019 778184795 72220981 320845373 600751322 348992728 412906440 30886940 546949520 5647925 209449814 852583139 739824156 998890768 522374083 840420211 555324071 6249490 960815731 10601870 181082104 942666675 179853216 627628297 155049360 973246052 202692639 424541200 495576020 451218851 172413094 736700379 670318692 982485129 895619413 932306692 593796441 803995487 779251627 873097417 43718883 937957857 915194304 108940597 554363831 547055665 681565045 41792429 930305685 11057639 230967622 37356587 850072332 587419763 34231868 826762541 953067967 611251566 557784678 706546608 213555604 867547919 272287097 992635597 194532221 737208506 929671140 419961351 244485772 480695507 900232428 830458364 187016203 292484680 138171526 300617612 225623679 455509478 112930359 422209485 301278933 794806431 737148689 183524370 539002472 966604194 80760605 453735898 900311574 918241093 546304206 997584687 889106051 272828290 170850559 440852281 490256531 302904667 154250679 348164588 484162014 363109145 955605007 719588645 321402301 280910714 125391457 523576650 526424999 768811350 689895205 926918194 383096739 937286982 901956046 802681822 957001730 258705915 328640217 644695600 73320571 288824899 905287757 513693886 180932590 113374089 52753417 929275686 355322977 651827759 648345219 904240006 820318699 220601837 325952802 125692854 872409499 331963654 231683403 465518263 65265663 261789462 5323708 917806621 423124962 346726330 695795979 257540445 457670494 934081595 233102183 216589000 502633842 88413938 420426941 705133185 201391979 165545959 233230565 380615187 309224819 987299061 378023828 404322416 564190040 59166932 448646643 453236003 221249395 127278094 600760022 853828993 519009154 791028352 516559658 691374379 142326658 117854997 820839614 90051281 157967696 458994783 116952314 409745361 519953682 827218698 759958132 694365328 949617433 607101588 23056401 708396479 690850795 465546215 134766353 739756534 620111369 156134325 20447277 100823815 693360429 756596907 100966413 845476424 787188115 428759919 161610763 654000192 893235193 428687057 113143579 715302192 126798837 152914555 561481986 511702352 296127763 830626133 401009592 636929793 393142847 109730675 735403664 590983937 506248723 655497194 516864091 813059991 865591063 34819253 448244508 760873841 950057847 327357307 144193495 14663608 827323697 167192967 586415539 162059292 508307885 419992035 28916238 227239247 32115820 976274828 955277263 938447086 689137052 212945583 705934765 750535741 124998939 922973054 312739349 12424886 661348309 673884118 896137431 187461549 913758852 715762115 910068745 518672630 415353665 629134898 555895717 50160982 683269284 901293687 784297389 595608803 152195462 450499855 146216378 530700074 699442565 594832073 986843527 548486498 271744671 887619965 279374604 569348905 612396177 728564635 6990570 612598872 635693433 903006018 869698542 91294513 495161553 293355917 887574816 284026471 159470097 546093314 913055297 89671521 194526898 808377054 609602546 938786464 693778056 980681416 17141425 286425743 658399162 351144805 723595575 259500033 918365011 400317973 472657048 722401285 46712379 701695870 729845345 360748932 273182557 994807782 934935552 423176524 360628273 729620921 904981268 952067714 273513359 467997627 49422739 93843852 90013500 622341378 57081301 861386797 785572464 903651531 736673840 739070584 414278463 616168682 948832885 174040999 825877330 156666387 600054734 908912620 960769056 47357004 757367940 883256233 8149198 535020580 843183813 862545924 44667326 268816292 55642992 966753585 340620553 922868257 736352475 149153074 536815481 824848751 852931930 419610911 255213365 777740266 154575737 442320421 481791868 321743256 380492643 674668793 816574175 504541923 829953465 182821620 725281312 998577995 527279351 364482034 77296057 57348832 621896989 348934768 864631900 48191721 299326730 218560821 925604772 792930318 388477656 506494361 214811671 16909886 487271171 747200808 586577610 753530927 307570471 678088147 159092350 125722025 467707611 652413992 711783844 631411418 285836358 547642061 130111534 273180095 208426641 471802982 534763105 688932602 544638807 677609927 593708863 562468090 687504699 668357846 983020286 809810240 601056278 985069826 9475407 481372352 890826677 734534225 463025331 318410605 644848822 512034714 151950306 519118311 723723684 529286156 318231051 674424361 756224481 506751515 21816615 709085030 616803197 944329064 994386339 363952839 253748046 584511838 633572065 657233985 662453116 405445499 970027963 390338880 448831502 351121075 292727417 952097443 874319734 175535896 208219154 676636990 471581459 355266091 850437022 877356403 426822998 395662684 207293347 112864253 572799292 226923019 627870197 7027119 596901388 885853128 562207476 53115317 569926593 377511492 563206047 447015957 549989689 946939931 271938419 505895429 676832720 266534341 557011606 502070184 587531268 697241468 888500096 813588422 4703177 999649006 884396404 947209315 853147545 567348177 992549305 728133430 560853428 986915758 689897719 314007356 715160627 120239937 418758053 802575530 143242783 570919976 266098499 275099960 383029557 414294708 646815068 840725794 558638340 447371673 10902090 840727825 4602419 904049754 256762816 541980521 578456277 674510194 38975303 374078348 809721931 270778873 630447182 675061668 945739299 131998791 371660224 114771928 667306204 169591247 632691846 80258083 153823492 982044304 235067265 479078898 496326523 955074367 805129514 791150953 903729485 585444232 956875286 657000283 296045902 547666088 574540456 136132595 293303485 286361652 868635238 91567164 47847205 975647801 873927977 775066371 261601530 713315883 42019571 434223981 703121989 341693156 606243865 816074164 497005727 200047071 306902320 84482364 519163882 370883995 101667643 683658692 482605398 911688364 868214211 920451006 682793235 746904165 727603751 126307942 670770290 43926897 652748441 902402314 456349501 739991297 462433221 276042571 145736248 889490629 851396750 18137142 542238070 759963071 162200580 258030487 849843275 538264364 997344099 945558838 495901039 632260376 746779913 447480676 649574216 334299323 866384201 556834031 240592401 790471886 345533197 828439831 123397627 467871867 221507657 337906392 578908173 354682339 521510585 866938285 452846363 68329717 474837458 357806785 182382380 593718998 679848328 854130270 5799390 828378537 66432334 976521068 836495900 273031065 850857545 934154508 625515497 614490285 431414187 809086718 720451434 334250140 765649157 728482548 321884752 421232162 945115635 266340211 958422730 817579689 754297209 105422212 720625379 979952594 788391410 528233807 655453880 106877344 463438739 607574617 499391232 143604297 557284079 123072129 426182648 572255423 810149867 647999797 171622360 648782482 914333144 313704633 306553115 723617679 6197365 443864281 207816514 549376629 417552329 665582657 662366410 674465490 19277308 190955008 446683935 945184861 806789550 544972534 524543463 897423199 389772015 356716997 704604883 4635558 420921294 952264748 653294575 79695580 853299439 303634 879815553 954969570 6679300 849128610 649777833 965817304 372540319 937370140 688311620 986670650 336844365 103465600 712168243 590237262 351207510 454978757 993825821 999150651 946029191 879906631 132044645 710520179 222187727 529915500 487792753 4516766 112221551 989955833 364344587 358628027 415548466 429520593 295759125 56268169 515987805 747492747 326611962 224006632 752561532 722666106 366314905 170305368 985859880 841289332 617751332 879239144 723195549 182384557 261669136 525965596 828606956 814367249 286049182 352624351 301419284 710296523 92604127 727212024 646418300 156420872 363770657 137209792 884579621 636042329 536940826 491333609 608602932 534026058 246215381 43570058 765515450 794783073 735134023 831273764 435744449 477982531 695341646 941664636 568030894 614824333 617657421 117291154 864540232 150797158 743266546 294252219 52778598 204541405 133960062 140187734 654919678 442337723 139711914 485048614 626675946 949603538 173748267 599962155 565643408 522076305 212501147 229793975 235770119 428447621 28300945 727651904 162302596 283001881 732604974 466524804 356955245 567571063 674778487 730403980 475298736 423192682 847955529 25503325 333640389 601010309 753462468 104696024 372121530 831488580 483582220 481540331 575764618 674274839 121044657 142229668 592854646 403022409 92756287 103144270 708331493 761470497 229073684 790558322 890085464 783175736 291367141 263144434 281022711 536781985 636075885 486803318 326617487 408641814 654329652 383428807 75656369 751218659 209879726 866868797 36890290 951554568 795195624 614131765 340772688 339555833 72815308 360347274 537107484 536980541 809647003 220897621 433704510 715085221 72941915 830138448 70939942 685221278 290853179 521567041 709265259 219546587 969158012 737147461 748717893 386944188 700825989 822352584 758818744 927991274 109689165 840919033 159434427 887285050 661607063 876732267 752324105 31758930 174825268 730794606 407559048 790290884 547256265 211287571 84938642 924554221 108557786 290988359 411678478 386849350 390680035 596065548 569420000 767846412 5917019 997183710 896514332 8274737 429089156 767795973 279201910 982332040 969357542 189855618 377237948 442714018 610799616 836268050 439651089 20291103 212335087 713120531 743675553 882232818 25275089 88704695 51566369 609818127 344672633 776039863 652721793 390611763 683491880 451546316 169386828 540302148 19515662 164946641 25258906 3905796 126692525 655726192 613341250 122721505 892574810 14097142 501605526 697836149 486482935 196607905 230873968 364253940 313666763 768557338 349403409 357695611 804578815 949679569 870291835 361722764 92904433 191302014 219977374 345826532 56512505 865625814 905772520 986045452 51915942 439294502 542508809 707351357 143133683 835801218 911898354 395276165 924498107 287329285 951123406 961770627 256736683 903112767 508881426 195562895 699609809 880592211 586677438 727093858 633678148 512796484 662750425 795315747 86254634 349270841 56356116 909426048 113787591 124998444 323578539 915756571 104345458 531793023 247854648 124389145 558389604 871436656 366936534 441477850 856913723 349517019 978269105 906085326 60246013 550288429 104648997 246041995 107115930 877566324 718527548 552369535 113567539 729278097 4832760 535433214 310567026 516495240 975232982 348793580 644919451 508949439 315765173 671457395 250456819 154829305 983478794 704118287 473186793 370231106 961193046 488452852 4534081 791752114 720791060 759187169 420984997 693575239 714145588 83609504 74819060 420284917 779576449 501587016 801740389 612015846 562412344 69706271 628374372 971822675 234947172 799263021 579543000 766164688 561901508 71169973 796676805 42654032 844698257 87925058 696850038 414003222 770307736 632243684 266231420 976524407 600566712 389305043 334982249 130856177 221334513 415142188 319982860 695366895 891528069 691880380 896064814 248058742 108577760 323927030 793186933 330156410 664052882 935098352 825575639 226499585 626124645 345118757 232911690 650053507 756435365 349239790 380043895 228551567 676996079 290691305 481290125 526296838 594809718 36203463 962118276 107603626 335511177 758666781 841710877 28478970 7484319 142802841 223120323 732480725 501243664 597308557 41618109 435012875 107694710 258807393 847350407 91983958 840161797 963902981 213257358 655216621 706418697 556667274 474951332 621564512 362227102 501431893 830660469 168451395 400743044 184431442 464726500 910718355 112490682 167061720 566419279 614385783 819168943 620850266 868772122 311400814 514452538 611940131 584847125 320242823 334239454 347138272 959134226 106073063 769291866 690954561 215253959 171310365 911772582 894836560 353567221 197640311 908941139 987415979 583044162 107032107 363590405 665751300 658241052 884284112 690213054 356834489 834600700 480161411 452073069 947186398 542701046 360867767 560733383 185190733 30697858 319374250 914152999 883423289 799968682 524486804 851687651 803769999 696466754 368945387 977317724 469990517 830252088 729471865 956962588 119038715 767287560 772563453 387975122 311948192 97982606 570884199 92113979 528208478 757349328 160860878 460092104 389102864 675109343 581094176 248088003 860931670 34513412 725007540 228635087 984907117 908522616 275757630 780390478 888676087 423716042 256927358 729825652 863669143 990616355 961707153 686791283 951470153 256860117 940271712 981925278 984709321 819110214 606032038 685556514 834028127 422370343 643709342 196998358 69717568 172712160 897317371 565688271 539480878 296550372 525266690 417061630 176018733 90140007 282638911 183423686 477976960 715429055 576983283 223446750 421028015 379900210 615793114 929294735 819204577 430751435 223578214 538990552 125163514 285941613 22364852 303281497 733890811 278688927 593766167 641267826 881338817 191739275 185418096 293475947 450218187 362734713 178079886 135551028 351615975 295670502 949452920 325648492 227847910 587952134 738037180 476492348 394763026 343428301 794268308 268280322 194730438 670279344 306333484 750274888 806929126 717868903 809540289 864686348 86325635 166029667 118441390 421292263 528607464 736360635 197928847 470263028 76074631 862632426 175017060 756324632 977340952 951699291 720220968 39316230 340125065 705412164 603251046 24252227 707485265 201321647 994458298 22455813 80715429 130601338 474998241 636492191 539136165 419752043 932971427 765951121 237573233 601832465 72762321 933725944 643706246 556544046 808905325 956638804 594164907 338624244 541807402 102153 565558728 207913517 512170758 213966935 860737921 314066922 467809317 928523695 739350069 544739339 629491424 704094915 802104887 654375345 56961314 614636715 52939851 568130411 343471622 529883494 82681876 409846550 346802731 585650019 345983441 342046304 11971621 418757353 900059880 914870026 973589878 114739857 963000170 881967607 587418326 239314675 530706911 858701252 781734803 968562841 901909676 139334271 125479140 942047655 818301108 606025869 581416558 239258131 186298661 868008913 247911481 553426194 545605419 74829046 313219227 236385067 765826249 58248585 755395961 125587821 439502508 425891080 376863371 920383630 709704892 413126331 254416588 302614570 752005060 406061465 255319043 113587089 890589124 805836052 34494066 899039292 530488949 408760256 186375051 37574163 77493548 47047038 255223056 940217325 8147341 733456809 400953378 782597162 792465651 650300192 107706504 681293557 651235925 805611047 219160371 133775420 324274709 246153105 444347793 19565313 359281675 922293819 949302520 193553581 309426595 453390758 167889478 395251862 885641189 435961015 433504002 706944609 611287754 138251977 144250315 998185016 296856177 768311614 313996461 168183537 768517410 639975047 906110430 52318279 977779189 611511331 282596063 297897509 708350398 308933209 720452203 632491121 290656867 447148043 63001975 473166511 598117991 844999270 357802525 690575141 846203543 994428382 606125540 247341591 44617032 873376256 398179347 752950404 619603902 224854691 779329194 236080302 419820921 279848009 669612554 629828747 749269346 771976470 18644280 450638881 465322495 339437778 368512691 28701932 826488327 459240796 144949576 782415896 189607722 827068161 361159842 771605630 372623604 217622937 590868990 772919490 664021338 184979732 675889389 647448386 558531812 517545390 470036726 39838379 650443338 399164282 334102369 363100481 237674213 152349510 918528180 325676483 854031002 496946883 549335826 252039935 735920840 228972928 567112874 350076242 242172121 39964584 438241419 628156607 871282724 910445880 123403513 129377679 828334998 150875592 781541949 704803667 966661484 862316092 459420951 247336403 490822387 659923014 210113228 936381449 612841306 386557787 916455801 980529267 818998586 117203848 213089015 241908774 937907486 393448632 957034071 614858505 216252098 945236417 284922429 972786858 115849756 970905883 905109191 680095079 199148184 435390478 886270383 390120152 870628291 659287754 955165877 28617217 564529390 39266266 307135251 870298064 348463250 859771548 616194082 180050349 719811606 109895032 393430600 258192049 239127749 622044815 341749891 250656805 491454151 411831662 223542256 505774986 630016259 311687444 917009300 591178059 836129993 926796470 550958564 671885467 318830273 249250557 737528237 511399142 889599627 552871146 984629810 616089700 741184184 987555100 488627732 543374406 633996038 90851195 665943801 479009645 684355408 289491830 331186787 72293582 781266019 897882527 181618633 986766545 256707802 118539040 521531585 433697203 360508589 442126066 278875975 752933984 942329411 119852800 111061527 49972374 775377560 332633812 73652158 463175347 493715194 963739546 482529559 422395984 507942822 117837196 526417188 315638668 213118315 843598066 47718779 548741966 939602660 337212006 167383536 421246119 619555150 531057396 426294321 647757882 280380908 219326052 599583345 47003043 872268057 960093312 704518520 686175058 44919975 326254862 353125058 591949198 926586353 329317869 148507657 160229113 645638206 392578652 428626586 906828907 339942714 674216318 585416711 766860300 916221406 765236450 6580597 888896128 160475549 797190276 548171851 836965130 821376649 535720356 949510985 228810466 315645182 996418363 759353247 81206961 265158821 475005812 442262813 109058220 736097411 221240672 44289839 982434151 792737914 143726903 61111683 379111592 167577018 913041246 259554890 842534792 757363623 836042436 803987847 229531255 133518704 865602361 119392552 266016974 982440591 877340016 541558414 476931053 920247458 530689428 296740812 641173136 809245088 936943572 914277460 42019371 683165642 240510720 445145870 298952400 458588275 858244116 838611016 629779974 283177979 38633035 376175705 757656043 871340882 745210138 76043536 106798630 560362152 219152735 635870109 624086559 378667038 626715804 417467208 536336057 100979434 667260523 994500134 635304723 294332606 254259417 565242794 189574285 797719541 691280723 883023813 148623895 684287205 488077013 832753714 882197587 545048358 673105484 67361194 942459930 96769926 542333477 719002775 625284234 134541638 635939676 519995576 391797379 8959306 84259931 148923848 436596237 81517601 565149087 557959634 839891281 137677338 151672972 477753427 413467558 835416534 562756485 505295957 744502825 312528460 152284794 284603408 55194058 811256770 505884997 818920216 243035718 10383660 966948889 316404140 529331427 303143422 120085412 388557221 787609895 328674802 80964327 176262578 944558854 564236450 570161967 763741651 518532953 962556077 708449079 20428557 235151257 274359831 783491824 195015577 928247310 25113230 951413635 826750935 273076112 813789197 884642421 979888388 814189423 542762060 666701169 818446291 683149182 304801898 957561762 317096848 532301965 731314244 49764695 324491374 264784310 189041515 546910780 546519505 932873975 230019350 794027777 581720786 953942388 962733537 645272122 917255329 558014675 775896489 898909885 75453645 97390056 680207289 900843059 18205786 429504780 307072392 640052385 157645566 100278336 837326028 687672968 406668534 226020119 234288750 488246927 84626172 144476594 307314727 885981749 332680898 103410733 801824864 506757471 687842781 549119150 598455070 840993051 758386749 933407448 36042777 739879824 730792435 256054369 951094016 562927666 409368011 574432623 768747909 96402950 67300040 445506880 846609384 899937911 671507994 943307771 546694278 740603053 666640721 676859364 640631861 650051220 437916911 107174808 694146358 376182982 286677696 733473646 163274798 124520552 922216572 298019290 251914637 766934481 45051487 807268397 119258927 468356622 65004673 811689965 491943344 102933600 515481538 313631491 463812873 962823099 308664275 311168411 523617296 853697853 827681043 476223897 745922783 294133442 46055945 504097864 204699420 755227007 873204240 43129995 60277212 909823980 529877372 812357567 830927740 166582394 616305692 422718250 538648450 386034029 546455831 425114085 594431719 966818655 709982706 55004264 284381924 415156135 248156747 729316568 555048731 768000528 50734782 63189216 424946237 873280216 883875481 926637568 112142196 862135671 510044730 690129987 219292968 56214007 273118759 932275472 93583988 658506454 796554493 827461052 316026662 655652510 14491610 253046150 712115901 461681871 636823129 3593587 308219918 370003175 808893424 893208755 782792377 543216273 196518338 362774412 853723935 703727030 331528485 669489816 370709906 156585088 561444743 966307423 205813316 294834340 522999740 421355793 824277488 100310258 664517214 580958174 746296051 741389602 429652171 718666314 875777967 345368308 538024325 789934887 763444270 302514525 129648599 840513663 887099730 292207692 257688439 892913094 971177829 547542545 419509109 923906683 468751853 479294195 420123852 546802346 49344227 654257546 3322362 938303782 894618759 470090991 575683956 506292135 768430078 626172307 525313014 960375911 361545441 286639901 247943232 869742906 62981 58562977 617017536 189768304 483722553 814981133 159322116 846618080 958663289 200530638 701084906 993638688 278774961 904187099 396485837 263480508 636552236 173956586 777535004 788387802 521392608 24523910 88101518 65669031 527001774 508539776 612014292 772120681 788074143 72338565 980593032 233025460 674738677 669001753 163237176 7058282 502843896 84580463 24132717 334556732 517612130 480268496 708123168 68629982 40272259 474751890 452291626 38009803 449664883 266170329 755630241 117315023 625388018 227377150 505533648 148185951 785163384 461935986 603821602 437925553 40377641 93042594 866742836 914249546 10259770 699315934 20514922 683083354 651097432 436636456 671275869 606996249 363296985 574168518 635027130 638521822 983572342 432065506 127576100 522568490 669747195 728728299 685166010 903264325 601454772 49130840 978273533 221913088 457376485 32446312 109314154 586781043 179038115 205614008 241802069 131634356 632200537 101656574 801887856 759058276 13099072 169806529 154504924 290992235 346544015 177487614 683232307 644430449 662480968 173335639 133473859 541723567 658868693 651343847 324498949 692981174 604574996 201872132 182080655 933939332 770535331 105019462 769288998 356980896 789390013 49239081 669003077 776422374 217937771 140292947 208968845 419532254 177567333 530812011 392873585 135555344 579928143 879786114 395160362 487746585 291981279 900003175 870435228 201275608 166803326 149618891 498167651 17501091 889036690 488169247 437103043 586342032 704668149 37188698 600285884 4595600 966965466 482000925 86510010 620450840 439807361 142025927 90841831 398631790 8530969 605197795 100012634 755467361 434967344 675859687 705174576 894441342 655995469 258627805 94754539 456209319 903941022 663577786 386603075 941626112 349765448 148161295 510482217 925456846 883331079 444741426 659732157 639400172 810840378 464946803 180048181 796867108 526422400 20381497 993478922 409815249 693872734 506122938 866987925 818599907 619986838 787685566 999960197 985550478 914931766 17127882 121612395 665362676 922989034 55006917 446950729 103190555 247643318 872910237 548428310 268734318 647017762 945637345 947985047 157468480 780127997 899037219 854295415 715809959 240253403 231239183 598848745 66227519 761117788 722997298 376626617 995869474 908390105 420823392 511215181 439751760 958584158 426647443 639657040 119302949 544138206 464682986 692419010 882272430 954910630 230805629 523763232 683949612 347212593 958727299 598629383 684021041 803071349 458113579 131765034 616948942 908975523 54529153 243571491 294286189 197907024 581385766 987375259 969162627 641336277 628624889 651810331 660246827 595932416 333428475 115882840 896113319 956920504 888347474 767985136 341171640 938876399 565019822 326158837 399325581 843554057 803755223 273471197 126575173 549179651 18309624 97272975 640961641 175200307 712375740 481142610 318955022 965367436 846656844 742676091 16775014 475243366 912769552 728446563 700906000 445105812 513003763 393646396 846129371 943313262 631756905 752861738 213828932 118837215 593752053 124934366 648610472 91120713 554137179 807038547 213675502 198415688 244615098 224568180 341033696 130491492 136673440 89844046 368881934 508934570 710749698 259155372 777287033 37040638 307429416 870753257 351688940 538430815 402192508 865812502 582352483 479010195 360017519 191379158 620773037 107171678 927481229 93238469 22108284 778545863 716108588 877501389 571725681 909070218 796476193 594334392 290699095 885509 571215817 234942433 140325129 731760866 807893242 520364567 473191968 538972323 716634668 132089007 127023855 987215436 862502624 916213065 519308362 628371740 560579856 327014093 397261350 449163853 841475545 79128314 237186340 868596465 693504250 434311694 515551705 393623794 909474310 238337006 736883530 20149697 96357612 734498699 223363502 638838794 915223628 440749816 205528549 899245435 685273451 477716461 535245657 547409099 825830340 366417062 766842731 603246033 146704715 315615091 86111232 717506726 238769412 209096906 149357124 328853017 803363144 397791693 706185372 739219585 29954330 100639264 892278668 8079215 237883446 299178705 699489153 225400956 655880942 55140253 709475071 656968649 221299313 917731651 102442787 140162094 432209163 237891022 720298700 35185 38331508 476077388 807433402 413385964 883792944 722159521 658911394 795388171 858740737 492210678 942102865 817554823 846707316 81588776 620327469 496744646 618746233 290177878 652413148 797162195 937766375 777562326 331398828 122453705 350418804 101891387 58123923 77324580 682311989 790455873 723199742 539512105 754936477 965911021 770143593 815302390 451653007 710842856 299756473 619479336 230346034 608646630 666022239 812139439 844031916 410595443 289170988 585677101 712253085 834012272 200652895 925757315 86338754 913777853 24669613 457277063 85447586 904458807 551152622 873462097 723190185 801688102 608876512 131429328 883655307 243393455 420851193 111233566 493170391 480612143 645698051 880603323 356906158 443898923 239578235 171487647 959862624 345309302 284747439 697271133 544966523 904039125 142353240 144894304 753811532 477532795 105198921 435427455 208526379 39461740 100611086 432086866 408612999 618127896 284132207 29008192 147379017 551062242 557256690 708640871 617773428 908009461 579083307 532424073 81665634 393358469 159801900 615844415 679136367 457503487 232957420 191965951 565449817 254707086 615647157 482809623 792078827 464266319 949702143 918485023 788892007 970765953 510350607 120965219 932276078 238499666 556415005 388270050 717959014 856549098 347286642 177669707 768012338 262983693 251993995 939228912 433049113 516716806 396197772 487558928 790122973 99398983 570015468 104456667 31811167 454196836 496009394 664750217 776611564 69990638 765387943 227952227 568170248 490193177 584251556 366735469 785930212 334565919 457885452 811157223 934686180 166956401 650314213 848304266 662474764 358371556 278305027 753617964 589895998 676915491 266864153 889163424 149099641 436170273 775528103 16733777 849305321 597970954 649608684 566357488 805905533 498219487 437237999 295329962 515019130 537071294 883821941 87754210 356794137 576432647 677976899 639320897 219934839 823563991 141089600 440062644 206418847 148187602 14188556 442802468 390477581 682854235 487217429 733883031 427703336 159628473 823777582 451138226 627891811 810404400 117495190 452467906 142643738 685422127 977425947 508826584 806013514 836196251 222296754 764908377 176792034 436044523 766435317 71844688 20187061 570158028 779897639 498776723 940519394 864874056 852186246 533786394 748253068 107839105 578233838 403163948 873323331 683855142 127104589 203720537 721847478 153809485 9204882 273211600 199283469 503763534 764338139 790969339 277296456 724896946 349702123 509351694 658139844 705093611 176335379 990674872 769505325 846643704 802288712 24436348 332982490 667914907 176179067 608178752 616428277 722963936 195954655 125645290 622202137 660694606 788156065 483847105 142910241 37525310 13101185 415105574 390058887 835313451 213050104 779670292 302338015 913715505 400890192 765211107 480192119 738141468 859051786 872378797 647614153 923884381 41153144 221148749 815910487 125040440 204571604 273588127 581949780 944540603 564298689 853667390 844553567 835750510 746437032 190692091 605209190 77967617 275826951 94025682 632475164 824220241 835465761 451375437 590358621 808070401 877461676 604061376 434566413 156301897 421604621 870476957 40708005 311470812 469731637 829388736 566034053 61341696 258784994 569259014 408243350 280294746 802178207 243888737 550557233 40913988 784935013 192794405 615410741 853890297 381313005 700782968 731646997 38831202 138686197 675442727 591757312 379296287 934570792 324336964 893003232 207831267 806310589 81171116 132216809 687963590 962839694 989581310 466456132 394658288 825025751 222398173 136163776 226784460 373523268 85156383 599760499 328133374 385104427 770567438 652048626 363593824 516255167 972233849 736350505 420745763 662644818 263558392 299803105 835078406 129545449 886008367 702659978 403132864 759814278 557447479 485366163 519547078 282839744 31178704 637039800 707050642 164216741 258182365 389484119 153340654 299166393 730164823 583488179 996349662 628095997 86111434 94136921 255559048 105091207 145960091 938922621 831681690 832720903 499495321 318485976 323470014 23780548 576538369 329909361 436297398 716741485 545356291 326265303 189045252 990852677 285930939 958396871 31310874 479181638 234856481 995857162 954515456 989694759 141743279 461638144 395294298 803456323 207337235 866089423 679563094 455684556 152865871 531212237 375761832 222601981 986721001 779720351 688096541 430730347 389940763 909586349 134374598 334221576 999432331 418499413 596099059 478493956 814919985 816549551 846683170 892053942 312247370 546286774 118905278 820505294 362141429 962074566 55384964 163564173 693250344 890167757 66787275 644697140 981381737 625653412 232856512 425981255 861983862 958293908 818537132 334982471 331858104 551418711 345415103 933288016 241375282 189246471 874549856 108459295 700882877 124445695 175050373 609839635 281258415 440054019 844470081 178017340 441403825 932929724 325293544 141418302 636476291 479993166 254588559 868770064 155591525 523806069 243635257 10824975 409318350 805469887 730338238 817351148 935760092 613176968 16423875 586955902 573611907 840751722 843211496 804647130 621569521 763491952 379982263 364507892 719273406 508732936 311500098 658421758 578291388 282892304 930354578 723197101 98087464 264938606 63352002 721203978 100541638 842966321 365065315 56262528 803998229 487865733 201251510 794868999 977783142 86922465 96059016 325817509 319388582 359238083 480854673 809156804 916851558 498804327 533971436 137673370 407553457 739535855 441058533 617562763 745096707 499149059 496329264 642151203 376002692 42192957 886077300 551620209 672263939 409060693 383957086 941616471 64367164 378087228 843973069 761300187 445279746 191946440 251242074 243409550 469522393 831034199 502194310 521511571 914186180 852374182 75762376 562176171 163376709 906758488 221577169 728883485 284222726 813888292 671039793 382647004 314123987 808066047 159304420 499226280 806407129 9441840 379642423 521853334 181542654 531786473 891706696 452490602 7900284 53957724 266402530 991560363 278634070 265563153 659683257 680325693 654885986 262662199 806560335 501174154 544407261 337011250 883665298 905650429 720853182 456045025 207067080 611968909 447374823 706643474 34814309 29232187 662322976 569653915 23582448 453149337 139341264 239645053 784204024 312817238 469604641 473679242 301111955 346697887 619917868 331340420 634532780 355978537 890793047 587269345 920993436 916673374 159021551 589685179 397629819 140562815 739510164 73054001 435262573 741034800 533160121 854183747 422645165 584790367 750856971 925441321 767791548 438149537 384170953 242666047 951682359 954891681 738136116 573630416 404205328 348047671 407998721 366897 974724102 346409689 472242180 855064597 247448327 512067608 918577421 264236817 503613662 831109899 456366147 781774837 336518727 416824867 185980709 360804995 556771843 665439428 405876064 884230681 812820694 832418656 485680521 630357116 82728255 579135509 479539396 195337591 752557987 203176620 380476364 218973765 20669478 963638680 236670194 814536628 612647031 583732678 648468695 938203040 5570703 817618907 771288288 730393639 225412754 51166193 67777183 870176532 195830949 43670123 167134858 890443113 646255767 93609887 975736339 850363836 787767893 15022922 990345365 572153076 951898493 946101397 79088604 799884594 428219696 263335746 488111099 555675533 915407408 100106082 419096116 181861855 130625612 636362593 142449950 386523511 376608933 908707201 165823880 299275377 452953790 720969130 704769131 373435239 399213435 885935722 747681406 288042078 234172097 122138545 798216779 182329072 472749608 89016438 646547716 174435087 776820219 131997095 563627835 188876293 74511508 798280370 994313580 754402501 120102558 633317004 56052765 121271633 461704724 537328865 668993035 750594844 476986511 593293613 775890540 517432626 776555744 720301986 634523647 469485757 400873262 871882456 762172079 649007138 156289262 804549092 411784604 944525906 62188383 998373648 64799552 829414804 11425379 60414186 436271521 643106710 698462653 835164160 586367459 504175626 708487007 831034423 405729497 77084359 881143703 952554450 521480182 658369242 3378519 21921627 976620613 228172173 702449088 137839596 245848390 932355677 360653075 715646465 476977993 30780882 538795801 664494840 248177944 820404436 214439033 970767478 296871968 846209095 725604290 945792070 197069257 195807531 786051394 568873965 168697059 233728281 516106267 29118337 183503312 929490128 997476258 871605065 681806045 30615279 359878090 411534888 616910552 302537230 227194060 670739167 2976525 826081606 516625590 51256620 115585720 246403098 645136103 515441231 901423921 43222417 212627485 876438553 730158448 428600146 381856548 984109907 276801689 214316243 879714901 452490039 820846985 227682167 420526338 418777499 429720450 159380263 46537866 359677555 816542393 194898682 585442912 272953945 957325814 22039030 780234623 561981659 604030045 352258326 606161898 422418475 13729234 996913618 395685819 581308920 32962186 568390297 247807264 1636575 736237802 27971605 112561513 50814857 893729424 357281146 571084911 231984974 778340274 835370946 987858181 936564946 764966197 655532415 551530324 968470627 515162957 264495736 827477873 946784286 590981958 116958173 905202565 93647290 116287640 671104885 239153948 405316066 888009130 129035360 16207650 237014662 208601133 13623937 64076664 412850181 272425168 411091974 743218787 822819651 482996348 350351387 139482020 845124243 530913772 776667901 241584573 534336153 112945339 263113932 184367215 933808799 318958043 189577482 895224655 589345203 475784429 347998390 459763451 497441460 116107540 42766890 653484493 277994111 460006396 895750997 773001516 521907953 26296045 829100529 517847210 995409300 117066125 910630907 321649172 484272357 946299516 269690044 963706286 201210541 287691279 601647520 885059322 721211187 814187376 125829821 415092664 994819862 769422642 654958300 952248339 886545842 148873200 267441444 152578166 537926976 337670755 601794095 145370245 815312088 792013996 999457899 638357083 569804226 253120834 267025999 335765027 581112939 776403126 75453574 212571626 398153791 325801602 932584933 319395398 713125010 816855273 193469347 537236051 477833235 905679659 517981746 446665043 365730327 785512480 225970247 89810628 415876614 893099514 789849780 138151268 499890971 669286849 163069419 566403776 780051329 713678610 522553808 814338957 747304880 700240206 819298105 763797822 256943967 294445199 957588018 363369039 81481430 161315763 803943113 460371321 204814687 774409252 410993855 278513499 701832681 933752992 540031032 245137726 230806520 672657512 494760122 623444786 649186518 293170293 35023649 453454251 38293036 432512082 123309693 33203694 90604145 539372294 341157983 613869380 377369706 64893687 285656243 917007210 818690883 831120496 348086346 369130556 922507054 480144519 693566445 133871923 165252697 138994602 54579466 202481272 432570088 150246531 783742817 507097233 208489987 927508778 22080370 870216815 659649598 194772749 97963252 484638742 971858310 222667935 955793317 624924141 544078875 24493261 337610810 338887917 687846768 747673136 804703744 966496418 46905134 603580508 892138600 284107485 242496346 296985984 691349023 222109047 397717320 167418400 585113860 168599805 205142259 527075442 975840247 443590852 697478425 904574419 647601296 691153182 296326445 774817871 36370347 831870404 984086647 48971675 406497897 91570985 843933620 765745850 431546828 292244365 342483731 384065768 330413910 185182271 77211925 394551997 254889271 999271890 930501001 864851254 398414728 280825790 125174170 535552169 458857094 349769958 301160554 663695850 182598954 641783424 894354252 461006284 919149891 393201737 386337608 26840722 653065219 873932900 315190430 797610597 480892458 596723545 899969943 396459562 560867470 211421680 987626355 559292135 35134265 72067506 538737108 544293540 306286505 750241737 14708167 125305922 243448033 180363800 743364754 135420964 303180437 291356222 235295208 52428984 398017732 806873516 412230350 248922806 917667739 662227978 146025466 536551764 297410002 416960727 323545187 555100968 26304534 246280801 95735931 851746902 306647566 226283656 335400981 779373556 884596446 669566179 278485945 474807411 517200029 535959520 620352959 38800241 598025170 821665669 214020622 456869921 93468721 527765596 884410876 460036116 251627617 46644827 832822382 473061795 997294445 106095409 986747547 667344145 475703801 195083376 73617010 508013033 270139961 238640248 133541562 412971827 816805053 847249099 433461429 427830410 112006638 553814367 315693678 729112180 964252615 934254433 898662945 741914679 129418834 11569756 945608313 837510973 823281155 534727171 155460678 168060236 613303578 498934221 477556359 625378453 294516292 374088460 879994797 143445830 388992787 12370542 395169585 222659188 858651400 780320265 442084507 809660613 764400572 977986976 532066843 715041789 856546699 574375005 831531311 498392999 777112646 589379553 87005009 580185188 218662082 928908652 849658635 306059644 968879707 545454347 770939600 212797285 939277522 614754605 278173529 413014202 259172083 787184633 414529989 386007231 488544387 356719273 644626440 912151406 847795779 180060724 429154582 928309913 872088214 919151378 667914646 31923879 170733333 341253453 309903028 122606894 57477806 173878078 688138781 429591483 370550778 922499247 818068827 773086126 857039741 607598659 327296385 674602737 713893356 501302567 994945340 810472138 234001496 263110041 141697168 618865701 370314303 349273762 611686096 50008135 544944906 452356709 965711416 927999014 113439351 437019849 89986851 168610990 766422628 925257163 849314500 565637713 747921744 941810206 447322842 291738170 686701388 30693332 699342351 44588864 908781025 818134703 955077865 26149504 673949560 884926333 684040303 160425033 840577045 728242017 66737215 110050318 695424233 505651261 498800313 365911491 264919672 282922380 742708910 602898651 76516221 321912565 921375891 105242801 916736179 102754738 658825533 450159928 525784025 14452003 841233290 685574072 309680028 442255606 39976718 843975585 512631239 171319444 785043193 950981974 586876749 507361270 236760445 538949405 978963195 604167787 832765545 316258369 553830280 959371134 397859500 259174368 948138527 813721194 289297102 462634211 607323434 13371457 385370944 792252721 995468141 740825121 145722886 809828356 857147245 606771000 852758528 495896406 624263656 353429953 747042723 144778058 699496991 956991642 598198738 792029009 306589839 151784195 701006894 685156984 519412198 386463193 908319463 503690746 401095923 299889586 175739470 432412494 276013761 27015634 575608910 819553916 249281339 305068844 38897257 571801982 346224060 334547470 428114640 135748740 103660722 92508606 376353161 880276802 588405269 332663398 503993019 719046915 509318097 957050730 848322990 20038229 329717364 357355478 914517054 997240322 954046872 267774371 515119226 462890320 281071057 860546521 4063237 708688860 324931525 369010906 839638236 501702765 363649052 3559900 179849510 76720534 835531794 33525344 192168404 381307443 654218280 873787336 456418786 153079000 211926963 893375206 367381282 963382937 439422280 461530242 301833293 17171928 98790620 797376619 966212322 125603547 625725006 136984688 235869863 673746921 846840213 63115934 122498764 486307539 926574312 216431376 648462487 400601882 771289907 447684065 285321326 506822744 436873939 285137811 505130040 740443468 221981214 224589338 226244593 902417936 622288906 215295715 765363523 730465448 630571793 352575653 606249112 521629936 849272158 792333758 858968 842939833 861878303 395224111 646953792 995393425 306824735 525973240 743935995 674122548 450123416 252466980 848128099 357349423 642800918 432324841 758827397 405469969 881241249 267092020 781308364 939354327 612115979 445151524 878728111 735911784 538301133 676650723 502071811 212631717 772235436 129038957 591166517 116192345 70575681 72978734 97144529 4978107 45933423 605021533 743485278 306285950 616478418 714308752 877691187 903624978 492862149 148238068 187060873 235118954 255253475 517573604 508044322 229960295 125512732 364363587 558628674 589048565 187088024 907064922 587423848 445748730 777610661 159805860 809655175 287299441 795962177 124676996 194440561 259025666 781006754 724230972 228767071 834618 926239888 205078219 722792400 997607701 71606129 56371162 554747402 814601233 465570814 406453735 658448826 523646338 408570619 497847131 334543677 230485880 720796007 985400677 797932801 590784322 903323715 804706238 379491987 327227131 361554438 868833867 579800074 970238789 18982766 575936442 614491986 262266385 319515539 700810947 261513339 598495119 638263248 875959577 876389890 761770691 571658371 198332282 139028618 593974472 637638307 142092206 295466345 872719046 621713465 542684569 94025628 535384906 70595567 391840330 754600777 924098620 456421780 120541596 460497552 671891265 509653154 305310775 649498773 680884956 459970501 799905379 848342765 959750195 331905411 103998837 497992647 467217564 635379440 911289706 785784656 546583019 32020462 513705260 12786288 251300141 293861661 769055098 431509148 747036892 73140448 123947467 194133531 162271422 444319161 198861901 960066282 703725500 607421112 617978035 480916571 557176435 344132676 195426449 396451235 869701129 152558471 493152163 447378280 855107976 227967599 610703449 191427815 500053947 57010675 570407562 169458547 23181564 742201925 472643010 622129201 586745393 774522717 818779122 638149786 169655911 12330201 199447836 404598716 122557953 300112663 647882072 464761334 207940929 625537654 186512835 720868499 286376160 457121559 87198342 211746417 64421004 172175574 682929636 191671756 587430443 479475793 316833509 822695317 657136186 436324885 810522678 410188556 473872827 992783836 289836494 966701434 837482377 856729907 139156927 405147092 503561117 430852663 977631321 202881824 251602848 471116697 268862627 238487769 185829139 768926183 400504201 958579154 245339389 839505837 574436605 644189560 181881072 288597562 782052798 88151341 658117646 723205293 532368706 473732337 216767616 312569673 625987680 809929284 792166413 811442402 669813147 536905954 320873778 272886642 807752909 465321674 383312417 359999632 410878808 352131804 865979757 537249308 958052473 489376846 60615892 825676698 137378379 772282992 980040931 305111255 911862277 859371173 303473504 962805826 539511512 962776938 690217970 47515760 640763463 242291529 423984303 548880684 964124716 801530844 966042294 783800819 592355399 212917859 346825713 610392789 262711208 782847394 204883572 820585644 111325558 504949203 62552461 682043127 40873915 715542740 69564684 991548731 714514252 200275488 919842480 738343211 324711575 74633405 528058841 716010803 241157241 989896335 183897118 75759773 790553493 905310954 53947853 387454754 959705924 544902133 367601156 951782875 374302385 45303581 800551169 154306698 695268996 759906570 249602075 78481991 689579356 685682522 980403450 203598511 508506958 181959414 454329445 332483272 782224271 903165633 921474973 233563849 602536240 682385354 433745564 228976848 421913823 984232154 999421657 499976960 476087602 199342199 857715353 709909059 956310950 366562340 723451411 335958984 388156976 656591460 568918286 246607964 167261320 818650660 510310297 484509177 510681678 740361664 220097191 693113830 117415169 487087454 806058007 699710210 981875352 366044114 118081732 464240018 778278783 900104116 694091112 953307803 419852935 413853634 560725470 279232470 634224580 824008007 995218406 425445171 182247956 202168788 44393107 393864836 606426151 198026499 134579849 10394702 904163476 228814490 586090231 801284463 136621294 49435780 449207674 377232345 85759453 359715896 879885830 923801510 894993602 179747809 515221062 132357307 681716549 959260545 336761236 958445245 371198577 822810882 648227949 174532914 366708725 881763815 484681405 676929103 696145408 32287422 450441274 431811750 153874888 412200093 49283417 249470207 595117950 365641432 142479558 78216068 809784104 280921898 482951102 254356960 621193 553440985 960426029 678382814 807135831 393437104 113378243 935723496 351434379 361923437 262764291 309784161 734874796 213124385 587176163 248946886 927026058 508271772 984814493 912463359 84863125 956196921 932589059 238634341 216107945 661923735 57827618 38299299 195535076 540476601 469926512 91837860 933070406 238440266 832867362 54914724 113935524 164692867 702413759 980163521 158563503 47774925 141935177 708206152 997391142 681332367 134798438 141230189 117946422 42862180 688745908 226372937 522228111 509664943 842674862 211305346 626242594 599958601 534447120 470473145 925182752 976646208 511648964 11212599 925285004 838537635 162143039 628230912 800761155 492546024 885598484 296861029 359978609 875530284 574379436 879041740 899939476 752953643 139707951 914316626 904548693 502795019 443085708 802171462 546656624 889213965 62762468 156717883 936827502 123551752 543071120 995603724 813618862 348202423 247446148 677116596 871399082 520425698 211056587 857523572 115550723 330144501 362086613 436759824 39656918 775585069 417325729 481242337 825935693 176342282 176102127 337183412 472548762 427867661 747615927 172492082 55691108 562876393 859185802 253291864 227710462 702456521 148103909 715029200 840296372 623523604 130496233 340907652 653265841 460221464 105192473 136363741 454064474 810096591 795822621 374934102 19537455 311576697 152282240 158445565 903170385 928122223 497553521 452864981 298830534 990697053 396663055 375939975 926910704 117022362 329961346 704188907 218097939 634399247 984511315 90338971 598214553 489500243 948728507 218595102 134068286 890739173 118600279 559817618 696488324 376832702 104417502 378268976 190488369 320295288 686191119 486088310 900886303 879898797 864780934 354245953 606487673 818421182 90238999 472654444 353192047 527354388 807325583 64746786 473529740 88277168 61089434 435168822 263106608 917205366 560131084 620972206 974261405 532637231 9465714 206825439 30843737 456492391 270582182 934151035 955617552 924716922 825998726 736257717 19993828 425790583 419238203 961084272 561335785 307006314 176532558 603272536 897941777 340841041 650313240 552144867 834501351 936188063 916458757 342886685 495106274 850602764 836303915 261878168 513891660 890598310 424433939 636097281 816120414 158195637 183479043 687114832 231816924 112209766 880512710 209342274 316058279 433406160 545035624 579006577 712150764 496296785 603238159 479118499 487455481 117269336 178607964 603754040 462769438 521632836 555497579 896513687 88323709 986391770 17766097 321596782 832468240 31053196 908112271 983607068 474102974 471162817 77618014 163580918 481988187 254024975 505780257 310280009 60099993 204401237 939863102 208725956 81951537 695199829 88444138 64847252 729153758 919800376 476426768 93834982 653938988 516333406 868476731 856987551 239994320 462626395 693532562 898491442 444022172 709287495 346701999 701362314 690438389 890831350 265122895 119630519 722157722 250367871 62115691 817590128 996459265 499722089 54189378 160235808 910195370 506655130 793846728 983025739 648485859 325317230 192684824 720671915 427591396 556144667 24166121 111889357 186210682 58525220 484127426 388252191 170966160 993092759 551001408 233380914 379265374 594075926 214779545 9157522 654516268 963647591 531000373 74515546 149219200 868581616 245728711 314795832 321117393 404237205 608046767 261954436 511498080 667135861 527860058 321334328 948186840 718137742 852127712 805514673 222586742 697836941 377481888 930050548 164793121 807124663 268527574 114861454 188580200 667359228 892172904 432255765 798714320 151185385 802219478 406947671 675039593 514402233 231245491 693544616 717907720 612177307 36763196 525724541 782075935 662510556 529049418 186267801 556554631 373419271 895396919 489886875 612331027 867652341 801591517 15197792 720829659 317959222 385136918 780645597 732346211 536029337 270343308 419147544 123470265 936551120 239681887 129958458 123037835 798295528 468380813 992632042 656654770 908119294 634374423 835826814 499477884 960463984 408578857 550944876 159212024 957858979 60688556 216100292 716275201 714708429 84585453 812636148 920975992 236822190 90157764 250692817 545682533 820936350 387050687 418502978 398387882 821546991 889299971 102798071 254444959 238777700 926490272 224766084 328591074 820958640 533431689 487591340 641492986 503568827 253624575 123780079 341743596 919057621 785664336 936121144 902987428 927723438 310184589 567032051 345387524 60427670 436012955 982752754 237045198 842895611 1409530 804801499 181620956 491254293 577413152 119142184 949071350 729126370 3436919 812289406 873667765 92673458 279542851 230536380 844556135 852851303 300111638 240853612 822074042 211698947 885535117 496283352 507189982 104209955 447469858 308868937 846820025 775386435 700013032 281230445 887372269 697007055 693111342 145129983 1090923 914082448 287179689 40746457 800650351 728880382 433732156 974294684 833079904 669549134 926099172 667241012 611267840 38941282 140834986 176987329 57387617 720011420 122823403 113583386 101548741 542156122 7570252 504381561 554781479 995808136 879008513 784940048 719195215 922089262 729834594 503219438 678332153 534287643 23770393 669824774 311810168 23191674 660727451 482368345 381191341 189567315 781663792 779876308 882923516 797477286 808504896 97706281 287471455 491788203 292312576 343402566 373813783 634755801 574875797 623247438 222032265 176667619 289506618 590980768 386176227 174388142 643252529 297808231 724220939 252351025 332911323 440407353 171475156 157419847 45235966 18945083 679945747 324984171 491412268 363791278 129535775 425312618 951089736 527022163 710138701 100661934 747849523 593693498 893782244 81322470 288296729 24794941 742770375 249143716 211811135 662315622 519535718 521815713 77966224 510832426 16900450 942049613 627421633 301347682 817124850 306145520 599741080 52670417 24493323 894829419 592350136 237222625 318321140 283622720 655887135 622484998 407132015 771641881 401942589 294553611 228230506 657299614 577977840 358937610 282441924 686648747 79084798 658659644 308247576 275634725 574856747 160687679 406470920 923715720 879189423 746629397 69561988 701801330 499394792 339424942 100273775 777882635 290975614 319292935 754863437 493749914 35836975 972837144 713220205 156961523 531240662 591775549 47628778 542235911 235323950 263147196 274466539 5187087 546793433 75632516 382257279 581770906 495515999 608238864 915700642 349311816 611672998 823761351 244619546 613259652 582743812 130471416 84461280 987209347 675105060 304157378 279807726 152667961 458606902 801113524 521927295 816030742 151743810 380183579 711688581 187754031 506126646 1170131 165021417 630941079 870490935 812028059 254099871 46368212 749903535 9935803 119094666 1612666 952050817 330192269 811283250 138101042 289646436 822608166 673886688 466261140 722709995 574672092 624223056 782486195 402870408 807379304 654514083 321227758 533223733 288238816 704290599 567481227 577049977 128476847 443523940 226906925 398690911 325834840 757259043 385590196 126841466 770662306 208268176 722279446 995889986 441045314 41825133 603087531 1625509 475570540 574048448 840716672 195264374 665942042 250177557 482968137 816204479 252430454 109011264 476596837 924356469 659942961 218817258 57265365 520741369 225912135 127447333 573238406 938987690 54805929 686373626 557964731 973572908 633409751 889191376 797401490 710527673 943622378 995040077 840519299 692802573 207895463 386334208 625894880 885658412 3298686 502997893 772373965 526831722 92776929 818834392 145546136 240902849 921908704 172198063 696434248 704648666 629515014 375842599 562349214 433514606 129866038 251044072 359839269 908502579 15832776 467053568 967713529 816826513 686475169 193541881 668243347 806694578 252001207 380629332 667641504 951391608 881072971 494945233 756962785 778588366 170967417 432334756 213562737 458807916 864885711 977300943 108210083 391794688 83136133 903939101 741576211 239192205 178912034 794004042 265963804 442231649 187285301 45611499 240648765 991428821 731245488 971299374 321785303 284510011 944648954 40761718 730520259 522119690 705380533 305737065 685015837 209412457 908071210 65072479 116346317 939893284 958991430 466928325 932667685 770194481 807117724 271774587 988336488 928925431 421979670 241962722 261272005 280479637 34398923 336597304 77660317 451485620 670069795 846179248 140400461 55588888 703027484 411677354 639945849 38857066 309873766 303568274 670955183 957939574 669255173 656488673 227075039 987883233 981243183 110150238 996263707 339324408 624337979 825012419 796436295 994939118 668848042 61780436 435140306 5492921 614031716 124015937 898609161 593438910 808586178 243277893 895238453 128160987 933409064 447883046 812177013 81320202 146480100 255398600 991103075 920847393 545879557 350654359 645786250 567792998 713274352 254114087 955734673 560109024 537127654 787928754 390438865 437419226 6515252 608990205 614642404 774970945 271573854 900513049 907323861 239185718 21308872 288795687 46039795 229065910 119591654 120736237 140729411 645021214 173447376 83207617 62609814 467657038 702138785 171459192 567760384 307332071 516681765 744263567 471932240 762612858 43750620 558554546 384633813 174491836 26026966 665558785 831948157 487913589 594804577 950859601 2731950 278340270 895779 666992350 814747271 464183732 305300997 250956149 39300615 432503454 45340344 262459063 726189966 591054493 383894366 280563886 247847199 882424560 384611279 760998167 352042321 656256923 287836131 689931898 758384778 387392740 435440848 142357669 665698677 339398959 309059356 340541722 651157815 265565386 218294884 549082247 81081762 283894033 634911815 388032925 615656856 569026359 907419475 728701611 264633848 638254842 46742148 847510934 671637211 805011055 17207986 963345577 818755258 11511151 354860810 976897506 724964159 8749759 883834679 607517127 910410933 616267897 668968767 575387653 233399363 290081302 539928577 580712480 839285807 542436485 936399505 604113578 73927032 346386937 89334610 632289701 446466900 683513211 566963266 797727813 911989001 360682908 392326186 621202409 942426382 333326562 767119433 251123971 491191727 634547539 579237348 393467320 469522777 397389129 599959120 960687713 19888049 878735571 640155445 704689517 688511915 254358092 168501238 428670893 688958363 487096538 998442215 896697328 846839926 227961540 255513310 277281115 319507522 574240161 186325532 60326206 573391849 922864006 425584346 487221798 978054149 945648225 67931693 101326223 830426332 1694410 252282677 602171962 723985885 813092528 757277725 542335301 920506746 995584417 90511630 998960652 445745319 962739453 752939799 140144489 297380100 625395568 561545903 89187133 50481021 74936823 70511271 577719740 387664033 419350453 410158874 517636940 427755589 332252929 803536251 147659331 80939608 479963309 36682247 501280358 541727288 605016430 270072986 105257447 923874465 804335236 33001651 661093951 574605016 830835202 753830968 123153227 510600267 787719300 858235916 585453443 49367857 643372712 653410970 966573222 148968485 458882313 721770170 833376640 452745586 823749431 659820540 556870007 73153675 472535665 267229199 439471032 590033811 672497166 680530124 848370494 880550799 914890 830997027 545329887 195254243 150944937 591516211 568044364 9092981 457805681 47340707 687452637 967324683 296560082 140557162 233057098 108036664 839691753 269215451 1517310 377503822 437056182 392407159 844853155 263572154 24286850 122860364 364609691 101947582 809836786 904052428 672393173 554343500 659978813 701919919 786054273 117915499 610313122 825361847 483536171 462373269 128293733 931557436 168135692 495613575 695079890 731470566 679712791 960181552 123273987 136380436 913494856 95836854 304954099 467383880 874999943 142288574 466642152 705823002 18542496 556149250 947735119 971904845 796216763 880676252 445325038 995946894 267900476 342099077 716559632 462746184 92284055 579581110 4336029 755334725 446300346 225844981 863055506 956906354 869029874 23801893 962054077 868843261 215616821 173096514 475198368 279731467 54493102 266524583 172001737 707174734 34287046 293345045 641681200 931866059 156935585 310673917 277408438 240341569 611630398 68740000 787189801 212786976 288616774 580391091 109410399 983603916 188746901 724503883 181479263 746067118 511907618 668107408 640471957 12845441 314590191 772165440 501154936 41063515 115618946 508701323 619566572 412850369 284462533 32870119 210506892 515356027 802912509 523891127 876185195 404822451 331684613 7252181 260038088 361397426 346887958 311873000 469485673 373533713 967957445 611872767 144050200 926544979 817877014 406605927 747753781 128551754 125940189 872495585 850068381 818947524 808618988 501764758 673698505 883093514 269157752 181506616 405675087 341160405 662170402 815599202 424755791 383534684 50097065 574386604 93477307 841273311 17111147 556473092 768165719 783700568 336576515 34301795 731581336 849559081 782250194 841353535 594129801 923446264 569956841 733640717 15315754 308979848 666453828 152983839 426453144 193079620 877521020 588638533 330928914 39122212 173901608 495826640 833263710 655981194 815818882 750112418 375405539 24757452 464407511 438953357 583907041 746582200 851687024 976816988 339959894 813695718 838623186 755327986 719785160 474230872 673286817 550809372 769547167 609650436 373272447 419316395 882561696 708821127 314862980 88208899 270332945 519986045 921142082 498397608 871649862 719552168 543149200 71520134 422099055 39233631 572189808 520572777 827287752 968702690 933266211 827319911 31569765 279986713 8309740 34676988 988553617 933047918 743808764 189397376 265263006 44422287 812753461 818392945 354957774 427800963 533641641 777746758 878627971 369479029 54036040 139187333 248378495 863272009 72126951 681144699 136251490 550369303 166559979 609267969 793321139 514172923 385046647 77212105 616800240 647517900 261148149 282745590 503543065 208911208 628122703 487364765 993154081 791207927 220227230 832630307 278358454 798762351 214183302 851241821 684817452 644586732 334619486 258043596 298226961 830478769 848363057 604017451 880399530 883320392 897816515 470110754 71910285 13835939 366538110 216310196 988443054 567605429 621369120 637824129 85283274 42742482 421685277 780543115 550403683 511356929 765394616 39563923 349609961 614266560 58235576 646742502 748156355 620263352 359844396 393665675 422623495 488482564 753143105 679024697 511718494 458375554 866401434 419731419 39167647 184286868 568435011 977151719 221634771 101062147 828345308 253550517 352352313 594265982 436127249 185122401 549435178 895267367 120489179 469305722 871583312 513395628 933031157 48909240 284406499 219307187 391915398 755486241 781296116 240572824 602286024 780121885 181176376 904888861 70992397 25200726 684254631 821607747 303962834 544473395 297123567 858204223 510952897 492962995 756240411 788048340 121811410 559144941 799366226 632676832 835753937 267562886 809255421 634067281 244161300 917364254 214979598 811366838 145499541 431003765 946183070 390120999 866203744 599321204 699073900 914863815 337771241 383860718 67377566 950049868 804928895 909000455 352120771 655274891 130582066 445891502 509297321 154514188 14259702 409371970 42055250 887718087 214985690 788227831 317366339 263117936 135981455 22049801 415636838 815130633 892269536 58934170 69396101 179731266 213350266 403787747 645324947 903715582 178652632 527211332 218154211 907780464 386681987 183713562 606379379 679410331 822815601 63915105 813875165 544863248 545544300 12629389 323780880 899446652 489081549 884673226 885961541 784792193 517818784 587668291 682897328 508259672 61105430 230246014 10936905 429920537 372308100 287995701 265580784 249114553 788263510 247164537 96292232 42839753 684336725 508535319 777124305 885862137 757893409 455901919 641052645 699840500 163285028 485902844 116032430 746497359 414393893 38169920 806907327 517974756 948025825 985344449 182909426 257644933 704119332 393345627 948502081 970972711 131352939 635926201 333470612 507918837 445539261 627007903 284599094 978069907 726769077 71725702 720326036 660220333 879251520 89403840 864087362 644993961 116072435 55733849 81070082 288948465 738483644 816381860 358158156 72848847 986365453 699550104 693362347 822273243 753987433 185373614 685046926 38804320 156577769 243683349 12107879 851396190 536298485 701774687 755437091 187642095 536360997 634429917 143699719 469211708 507114935 756216693 451013662 115477038 215059883 650284573 209097842 454010302 969799065 370073830 674598601 507062764 395115084 510531824 12863390 606298577 339916446 267559417 666742193 160120332 710155777 130490614 633360239 415679003 265667759 242340668 694384422 453185946 398264269 888697761 774606826 793287095 652228370 812163013 641923379 178575763 577558978 483563853 848751570 264094985 414777010 105271324 473755324 342151096 242139275 608445468 975106913 133431514 867644162 415834130 688146182 687954522 27386845 926351356 897285928 498086385 621004536 961336505 21081640 546254880 401497969 88379379 982644190 924598404 740937850 749009738 100077971 962845976 482458462 552199113 582028094 469467627 974085558 324956531 123109495 624714348 72885494 587918756 915122518 8346186 78573449 934931860 176708089 439370571 154300407 890144216 719431904 587959583 338686084 527339591 55558899 327000638 164323869 223704739 946828052 414001495 485662897 431780916 270244482 909121644 832703069 551518948 414839371 164792027 839182512 826631254 183336220 43698659 401535256 7121181 845959323 761721171 47348911 581452966 164656383 425208377 877211088 324650565 56466312 916019849 812058585 432019217 782233031 938468371 231127788 764463559 969540223 567467491 822620039 362537081 376149135 62768935 642283241 202214826 750520567 903370898 138232869 534210328 55202944 466173745 524089216 423988416 77644249 916233939 818597866 802924676 991962889 670119587 835593388 684583203 769086932 930286410 86017575 4067894 230774312 801043403 235175016 300006805 705221343 200791130 36619562 945308738 823445227 793084572 944264281 463852180 255391239 31955491 745386864 337591531 959960358 454598735 178805951 722953210 770268449 29841807 270259848 157295113 106835863 862115605 451834383 50992077 603282106 123848580 299361203 259854713 259968779 257355698 199548130 678232932 647197852 58123493 452661780 469981804 86272755 12628607 196076702 970426532 561572420 692796642 771671519 674803430 483941278 464418256 93961077 332160052 171401055 630208762 744797355 796830780 859446473 486352098 336918502 579668984 768754370 268945786 827777904 678011502 377559961 584118367 302153124 769633178 804810254 675227783 758061383 811939574 655372663 247900562 632792777 784942519 767944290 249300029 642153090 815984919 729647771 506164455 976306160 757821393 43274732 79496446 456926782 487748552 886045652 283473482 767278642 366283241 675197490 474788686 984401476 882739178 41820874 381487785 556477024 925663181 602400721 907819143 660376061 541201426 472373655 560791392 842795100 171824607 815587528 566153052 744342837 815396464 636997640 800013422 129544979 980063733 365596364 299668076 714162178 369881404 637467885 935864842 458693884 270460621 461251879 977354003 492631546 446043413 502970149 653583472 980631761 143102971 18357259 603603232 20802967 562603670 264558840 249306208 259761073 313546637 710058347 635211307 506439960 847947856 700785776 883480685 806098206 355373123 900229977 187898888 792217218 361799811 582978162 545283734 360497656 303314717 531973430 166995206 3186032 882790993 798738400 685049036 862608403 764955083 600831850 210961648 589116175 693499588 471152541 82241602 231302056 16708425 87247110 415913489 577121943 344314063 367309955 582483251 437388964 575007410 91791927 762153889 986736071 152345093 646754524 885075982 637937981 474061014 991589892 189106360 437009824 239444733 1378019 921176497 57432173 139877459 57790838 612792236 641807083 117657639 724085495 584929730 286769679 768114236 473990464 770852472 84621684 549215075 392732292 486281920 778428094 826630639 172420691 250581792 903379183 354131311 954931740 895507944 347402903 486306445 123423874 285441674 517727950 436858193 440961766 413307461 640356590 691781786 573263975 80360527 837567020 131016617 331454236 695646712 370037838 28777715 333607240 588757931 151121492 786149416 833411352 432523908 479614913 516358883 941829782 817745894 565552559 292815916 460211240 646442638 320802331 133390572 559906649 433500234 990544037 730608746 188562562 713499690 220183950 479714862 905738881 291670468 234808569 764150246 256812299 243631874 846032305 531731081 213418172 958632884 660124637 5315864 657578171 197721957 373766814 86729767 513974786 489567877 433434054 117370745 865696021 680037234 553490033 798260437 368966406 742877157 603062362 304685430 799331002 875713425 256559751 815325213 554209462 641914567 790866006 580654758 581389513 133041963 43512208 702045694 591067782 97963024 660391108 21947939 418251429 484209271 913871167 598733085 603853083 257242399 692206510 401707090 328023527 938813307 871078078 512685658 310023486 713395696 762258699 956107318 865044192 400796511 502624783 933414771 77201220 947909295 262272910 209608344 971732687 949071179 11522481 674601883 130782220 468068802 93046523 845187348 604281177 287042008 630886508 106508520 465118395 204339291 57443574 893805350 672712007 67548234 272685710 434190257 986735654 921210646 282802176 525548496 181852479 856997955 911771515 119870585 955962593 947953888 151403558 356269721 866628838 252691003 500668226 291834915 277472350 700307864 889930200 833882302 5906758 177205394 362479449 614396817 916110933 385740182 987557152 774685650 947297904 603300497 48747240 407565380 521376396 939317394 585640833 671848886 388305309 801910417 349044392 388012442 578081363 23209421 632201982 588184482 183836293 733088959 390990180 936572255 432790280 625717529 846492033 427992804 339551536 897397434 792744885 110208379 213660317 566890112 194257142 10805326 609427638 42583632 234761654 783314645 770457051 193151484 262329807 662522140 555724787 136777422 490657993 386483239 248508598 131015241 295418670 956405172 244613708 270058482 380014632 215618197 72106859 238263699 988534648 380464897 905865045 167103335 40336748 871841335 3487772 81430726 480092380 755100040 271614397 828976611 622812297 236394041 982171441 777462043 53415079 831349138 724019944 520668932 947381163 602974310 516633426 586864711 640332428 435892204 492977414 485124193 117281864 371948010 785382744 590929205 30084740 822694852 393571280 602103267 715234188 681920811 770352286 401828075 879280396 729665606 441085083 732944585 855816901 167523396 381134424 323052173 105162355 98886513 625232400 911234057 470948688 508566741 540209466 703618771 530614277 921492928 171683347 630607893 750367874 357452758 594671767 613100844 65897853 653711706 406027069 647679416 359396841 673525260 809333968 491703720 243632526 57486157 305141044 211768829 844635426 995174076 967344290 321924886 689957648 843139106 26080412 214039423 140291437 892930138 710618575 729630784 531102639 931240182 328217108 225227451 59679014 722908519 223513086 511346730 992282065 465929980 50975412 272150661 969859784 26067001 345535927 605106305 716557676 878357867 445992502 288893268 692124541 841697825 959761485 250067764 862869718 328234843 992592244 918033875 833746088 489092646 82542996 996358005 957999605 389934988 241633690 996315476 604789048 591383260 637996044 614912471 709011688 855386687 626750238 767178580 18543252 88245616 162345945 101452144 630229667 451001748 257868632 896112529 745678069 864700790 163274937 18230017 57885242 369443613 133561881 63672465 136647302 426273427 213778753 427062114 78748388 155655573 716650124 740361876 908939750 541322421 656118462 690075789 170010068 50195813 716752115 790499869 720652198 90067434 393456455 624757476 407456785 296512411 831547004 550715952 529074574 407718920 952283883 947705850 460480621 75518071 405309755 102996553 397520518 213575091 848126312 102439365 928554288 31072335 22398865 485458675 240104059 133565166 898719632 243749431 111557827 400244918 912855610 995876922 162555312 352629670 455891590 970527340 980932206 961488533 737606144 389987174 940948637 792292535 516156653 948900502 634078744 289077923 352236891 403784229 175181906 123210404 614599720 511155024 724895291 50635649 686555038 179725738 842330537 282982493 516134406 37474388 474712680 263683621 261215210 24454623 338244125 235672117 457388515 512321950 776114903 36177854 652933695 423870106 516429510 570146033 251562083 482478468 745318764 626420003 460965646 528777294 666577846 78397788 502029522 90674703 233522591 84742497 960167601 957011283 905503221 869322061 574231584 548667244 963747262 300757489 570905226 226135046 846330188 826951712 801652921 568743711 542951098 888500424 364484357 43161909 853647377 729629040 954757031 386353258 855931492 707414692 506247885 676177855 1292749 215219271 330088564 93300656 840601173 503854361 619799467 523705520 183310991 296429149 963053137 143483780 307080177 394949547 966028760 799881151 127811827 460671879 604149671 918533587 401786934 654038648 236495095 481674031 293674080 64153951 221066613 19303983 648538966 751632881 280311860 272570105 894444139 75472036 306827809 619969246 254270907 514960394 526060383 664010862 193739598 667050885 160846303 719919466 892146996 801858200 622911603 229137103 217166764 875500739 622403930 342879221 252986029 53451274 421161180 325930547 162644484 697727128 155395820 630039010 41518242 567448500 706064550 750198202 233815173 152899078 471181401 112690118 145425627 577182382 18437690 705695475 237222951 198388071 966455280 792603013 662889281 578217904 42988075 328127548 827414087 938325503 55649220 649362293 444427572 809105826 304947056 553270201 403821548 443475610 798816521 353752887 222425653 730164688 277806596 265413196 748921865 832607081 669977892 469166011 185498872 511790955 35582491 57961110 779191981 92852675 393184738 82185852 761284774 444516304 187386612 307463708 137982579 873023448 84729177 297231303 287719678 514856634 392082987 970566839 495027137 127392066 673499794 774706018 580215586 73356212 240950441 992139405 966095295 112278360 318070444 326387881 548237991 6419404 637037854 510398883 250676788 895809840 693565658 803287781 412185272 735851500 528413784 950070140 297132104 231457685 161890775 874280641 682053039 440822275 475496525 390326588 488232546 420211997 370102942 458372417 675995880 39103682 296842471 275024348 711582187 980169843 633039502 580869146 846712764 68047275 702473133 752693524 895148678 343482833 710778962 703885209 354249145 385000761 226888010 642190281 12783622 61950247 95017856 59612263 88290950 684817254 618092389 809300824 398154383 815498512 861865333 857632688 993519788 421274201 93417082 705152008 10981730 709617950 911841330 166600332 347615334 498338036 664105375 875439348 626021087 625610981 291922679 980217930 770705826 154330335 200418710 294234967 238896648 577462445 771064016 721687386 832098048 798629464 319597553 106807011 520533557 477311005 830882133 862505212 378295537 709326715 156690363 397864266 123069821 599654514 306854507 981603921 632352711 924523241 528060084 340119892 243405205 271448323 678832315 604034039 551635790 200662953 186903749 843428745 464319595 154902274 231889940 358731109 429114690 749064870 34684038 698634590 971687297 146090154 87072420 239762879 230335254 113550205 496556680 523089193 969707608 625889593 96822110 51543219 677582966 792139137 60448693 541388197 487700730 988671932 279467864 663167304 829171845 356943626 151045304 364576899 40695010 210546988 225927946 126979676 453521824 514506607 414830691 527714331 150322309 359729469 139318741 636661580 840706990 964837596 17399965 189557455 670449112 558818619 978730044 950835662 41385475 315689009 426977355 981834339 699817359 146415142 460450641 579216611 953995878 583347387 173335529 405899350 325417496 32796333 236164312 336382286 910218596 132586717 650723160 89345637 812147332 691757503 417502323 248799198 475891539 234778789 308044583 514363983 185139338 351262423 240975148 475680534 808534792 188951654 455140867 110687648 860959223 950150455 827889829 518468415 359590297 944330791 20016301 622111474 862634776 427035470 768797508 502770909 219585233 368354030 593627508 871167312 334454031 653906053 947453775 785559111 777440211 111071898 177603496 906098962 647883183 712571841 407335344 813248703 179004939 785271203 810808280 614189877 64478222 813189357 335435435 868388109 621640215 783325123 846420937 979794438 974116063 333261155 72048405 352464020 690284075 147615586 436590197 269255901 470767617 464494596 349892718 546454610 290888879 906541254 416370898 942676762 142925695 40531912 418476229 378179543 587428774 853259915 471262419 413901910 906481596 395045324 23203006 30822076 742016583 1868772 456394836 125007672 611116744 353395554 975281388 263694733 601058849 717642595 182397201 724175443 594501199 908213285 349051185 136920674 115811104 153469039 481417686 854910480 330230519 877273521 670275911 741213983 581038241 417728620 544978066 126179372 84492517 256158100 73937272 473822972 923578044 98378134 874175394 887629876 24331377 533764504 715088200 21738077 79569868 603327641 618342578 690950061 894795647 373499094 256888416 853788339 356547375 356535086 326823840 917174916 392890376 59711838 810547629 581545128 276744683 55244818 2672905 863319570 625141071 812201085 204592260 343771484 903773847 398771753 477123963 541035880 535761549 253265155 645697939 750102691 779271328 725409664 317967399 257279588 368539307 999247719 748259901 936449577 650758708 319721174 103843466 441273200 288254696 751974853 341068509 933258069 698857436 576153116 915528474 943798686 157625951 469288174 279563997 725115562 399850258 185017589 210544009 721915260 25272506 800792470 633897999 141509366 570190470 361155483 418343077 964458672 777483708 399290784 913496011 60838301 904846252 493941860 403901365 826557467 656330842 65177555 768846063 274630151 941356200 296237606 949975967 514907915 932600173 531207229 269234787 89485547 32321059 399320080 158172995 912292850 741680418 103513919 961169799 305033735 383523565 864989375 512549285 125999813 252486228 148104036 398988625 905557738 334336287 700061931 995252997 345562605 963797483 302617974 603343857 108350022 780245915 218924695 413261306 235016614 692659877 501993640 298514254 149480229 635657676 167230787 381580764 646348865 490658468 92351609 64651871 343151490 893189100 701183120 336056340 836453303 390909983 670761990 553751428 423708026 86754620 791359467 87870135 246542162 438521250 856535118 718748713 717771691 982452020 561457949 603806971 389574286 960592882 274375525 378600570 185284069 911908715 56695965 528560896 909397707 825633718 900540435 544830957 774341720 619923412 25037307 951834979 992831961 921708806 301228567 225436290 196302663 82505146 75360113 976903859 873959277 243115465 395624084 193662982 241427834 620792399 691792852 120786201 861862657 934449022 530415806 613104054 784663356 32179631 610842709 322113271 555944477 894383512 918638530 883589126 867798246 685135956 211465198 570910428 690447104 547509518 319889490 327671069 817156981 435421173 828709347 369402926 203494987 333831730 618541059 961850473 4552893 98307909 101435504 262282189 703512784 494848163 302357463 196285910 247824783 619115200 962683845 135089149 140609439 228967528 565423794 234001190 690048158 930840864 510691366 289023018 995706875 699960053 678062394 536631891 20495250 792231433 539707239 545495128 735358310 64900169 944588129 150816328 307833066 43411375 485603877 627832242 337840146 585673139 890242583 987751035 235006831 1365350 715383380 221352797 341754940 708106295 185387230 64137669 578536884 936990378 950275887 511973797 845559413 339430128 906924111 684550728 655988175 35734080 800653613 982488574 710514645 824756893 196528030 217347305 477244447 544943348 421195190 982447271 828385018 884033543 814721101 902036364 904645795 731726578 905983631 3266872 881991090 298204186 723639041 969798260 762276853 24755461 679296179 984790694 393527838 624621196 728265527 151533395 307534778 578814361 645531918 155531604 379835846 692451677 890402182 974515646 510653767 721531162 139212062 947147305 851756393 562351796 948876517 16750364 211806755 438003363 851316025 411984639 223772839 70307939 300623465 328132710 209891758 437163536 138607038 647654897 471930196 822841799 478170219 122682328 536588735 392780705 785923507 367977898 937384039 11711012 453250833 127086067 243239102 6946975 377258973 68140299 722820637 720668507 334462376 12556707 99357099 517149342 536260426 892605639 174865244 617465315 978137608 210370016 138949528 225034172 541307565 18643696 26803828 883415009 28557151 207449117 568046766 441030813 939994595 135458480 483095302 920122735 86924910 142017263 939305828 749840817 399922030 405101302 588439690 333176178 947893488 931732787 197153816 515898491 399876302 260383426 520078128 240473763 374374698 478772025 35251767 262968348 237899895 193522643 566697562 463289379 124715247 539786884 900042384 495675568 137647476 966109325 378437440 120935583 513676883 721508043 8809599 756970860 589368200 8654644 885824276 123219734 463265011 11060278 825568433 61864079 111361071 61825350 106912361 629274356 554159357 531266701 715385666 454488057 694324067 909127288 944989151 993770104 145502351 799739659 539355363 25141379 152989538 250061274 227024965 918286770 704052785 166711384 477215518 718583951 921614217 445341363 71883387 20923533 340001703 127349358 522173880 681883308 58417102 49052390 484872553 139014007 986300022 123776082 630869114 394560401 793564857 121614567 783505330 543718971 41835718 943751585 498810363 717496317 246478793 397129478 947497455 263959517 182249699 713425170 473243475 646589105 583983328 491817971 234453972 620239662 94303953 975925582 83429243 152976270 510849835 3963703 307183493 882103606 207181334 370588454 706038945 905460310 577465023 841638526 443500161 694890315 978678051 322156725 612460729 846707785 940849189 364097283 139377441 171041340 443494296 317448448 376249734 216240018 421752791 852353021 692325561 839030806 974544583 603892891 595622487 21790405 412925830 574265281 982106635 41917364 284742489 837426713 420876507 840989643 53241377 925765626 366787656 668236441 117118305 555745597 68213394 977296277 114392986 733087467 810794207 426497847 868852710 914508047 28581374 89817748 822105092 194088456 100114693 424472821 828875432 973595753 722896887 386810776 808438073 359153103 131769605 654502962 367522396 726834774 479008799 774148440 725710095 361721392 533208095 887481771 643575695 680973222 987875652 566066288 401575768 194595505 809404593 172646448 534675795 463594950 85598630 777578291 892042573 510142752 943112012 733716511 476476521 526697159 651276219 887784110 994268974 675648471 283379286 298450928 906015434 655327693 877594736 337177177 167768754 382948115 260665397 468052138 52454945 147645365 669731853 915197499 762083139 416902568 19068509 863494691 68336238 42176822 74502668 13697154 148892735 982789961 320301299 851626901 186695349 346313118 394961830 153639931 715466623 202184585 472117819 830668218 480431200 484604592 251825744 431008130 190157701 55797722 410301818 167717724 450589777 613797450 284598888 159019592 943460644 294540006 578517470 38305976 991910643 40058852 57807476 290995591 297505354 704768174 474356293 75247523 331439980 567565956 748902282 714745213 777793569 529691879 911938544 91980975 194448341 145369805 726450191 505090389 255405159 146174690 761643816 544891736 649276764 554341700 246391719 273856640 692740302 238402879 930819074 794717764 481870015 997283604 673968304 609605811 266159296 893022300 965494146 889387207 251569087 245022400 491971917 312143182 627766515 721422465 745790545 682109959 877992749 889631297 351848477 36193848 237622225 504757988 515916294 477325711 463988221 670984507 128402619 347330471 434237872 649636346 212819556 694933129 750223575 24218205 309997412 784462603 136375936 84076498 26305809 721070323 194439714 835712838 775997259 806149227 163318207 846302373 850541793 81009892 156981977 339361992 220172296 597746337 810094565 636321762 150147084 700673760 995991020 661800518 987744770 41402062 514296236 831389668 32138520 706590233 249389042 633790566 982290283 7676625 385538295 629197172 781299609 106476248 91013659 82799431 930719203 641836033 388310413 225386195 198594458 517021898 872838628 784323089 665276540 589879167 120298214 107159615 377775361 493715372 387941701 721628006 729240519 112733561 731335994 116080673 97791302 856923110 509337761 443831648 220683011 215877024 854459779 200909121 581493864 214358154 382793052 952609765 441544215 725651507 603539782 901112600 109878420 592742477 289139008 29468357 395264093 292987185 657515275 860846725 100073288 866114849 914026627 7868019 279873230 436693345 925601346 474213551 169959828 657312881 386262782 696626768 565008279 54755142 890027058 685962678 780834152 820814268 193800553 938853308 37613494 536849780 575789099 626132671 706042730 640560477 315383412 278520884 477495072 673618029 856952393 105953109 713501499 281528167 681500817 399598584 998202447 449354067 966481537 545269402 104056483 106571681 314618178 997058544 915871962 918743889 365403965 119020224 739192043 647012772 2031769 591425779 312104266 805655395 391263118 764097597 458480115 508757575 978794455 806447698 740520416 49393358 523412841 412306019 106797048 35174444 797083020 759291081 438425017 848517880 65366892 73367256 84381419 670424513 659453522 756222800 674425656 220385018 612496232 256832983 398277873 761593942 796486318 739989490 699342750 504354351 449016419 143708115 909135409 465280683 252269598 137774028 36674900 637053175 155297738 597150433 839652209 814523147 271861480 587830622 844432543 950601653 125722102 381001856 25909085 270802841 734769946 601259809 387401926 71972346 475107032 483040063 105790245 229838273 382207604 275470029 461273342 526447601 875176796 41628938 309322420 931718007 52344744 520246783 108254118 843560018 278184593 578314158 248667695 98642315 343374287 430181449 362640023 227087785 639390258 425515712 217918999 940461800 659870019 909690474 550079251 103808180 850446075 353059195 733082055 807826747 204958340 748010646 868077840 389888646 882246202 382957619 817629754 716505073 949159651 377544626 818057315 629764624 459004958 872914485 117827302 454372350 787742199 399647613 211888037 296349982 992789680 921490635 4152238 530585032 948129787 59214354 927766298 464601260 203290884 841772604 698497904 171561548 983902274 885831572 309262802 915397755 707123711 320345492 998290136 183208335 836094431 557925398 575501324 775147282 263376380 847741410 263827432 242133046 952459234 870819162 146290330 762707632 731073357 522866504 29781144 483873051 950148153 111205220 763086073 64177823 729798544 923642879 54336723 616380352 213989088 642905444 629912669 505664658 929589138 354143779 656365216 227037974 263055304 781985975 232588835 979965614 277590151 301821677 955218856 746415850 922025202 208769189 355926079 559489628 799292041 415265411 879657982 61076228 803970280 249455703 480693296 799687600 306155244 555332351 552147890 24081566 801492541 267209571 194534563 725908082 841803450 674553602 391744648 588360391 169835462 444361610 946759904 339441740 510064710 474318543 944414941 703695935 882036008 26483450 563905341 353646851 490232746 742261765 873606598 504076751 227656254 942418049 301676612 865973828 94641189 189020293 993682232 139201194 22394723 747506450 998318086 333322255 792515185 306474978 422678577 461542920 869815440 790848884 528273977 203228387 764442300 293481387 432172545 6119979 834019864 696188942 458543152 260896263 229244761 394091460 694529696 449071982 559989890 869749532 551087700 975130518 976764539 575271212 714442537 119709160 215960009 30297267 165273744 110094344 333768812 48813426 936473495 638958022 763609289 977322195 800355870 408510156 473979789 623269988 394214853 973602319 917663090 910064544 635222084 282534580 689158461 443790970 743845933 766149434 611519545 82971711 474814033 180591322 993498103 610394991 177337935 284076710 354247451 857898430 55005284 365064412 254713180 877678505 257359901 296971401 36441889 178567360 210493711 107192337 717181702 403027538 268891738 607775676 387075551 262277201 504305285 666687673 875897520 842272883 267138127 549641100 783016417 103713766 378446829 781795807 278656695 235247403 510032332 915232478 630910595 813073700 729532218 317407851 175801614 798777745 68241864 641398289 871028773 756708764 244169542 399831731 866202219 685589442 381396798 248103025 122459212 541118074 619233543 906421568 741512171 983675411 603230190 919216497 268682741 735095646 576794398 566831703 658042554 103871311 478994429 44679906 391695061 41662600 524223115 208453102 29321303 844537564 195393376 749097197 753194552 310202280 790614080 656090890 255371035 321879004 530552798 17531387 551960858 417385557 134427550 269245461 915371385 567598887 963367761 705818495 766125615 965874418 559007089 824957509 484162141 399329487 77470976 300445576 480794336 348363609 470169913 218084214 494958706 659492831 451118320 363248767 575434049 567774350 66501509 508764996 788473989 903253723 692960463 68484450 973975424 881636978 435301004 922259099 742947539 415918886 530618054 444300630 562019298 265129906 578516250 244770047 989052592 238899620 674198954 435683205 725753675 261266385 431827029 848139705 856625553 311930903 287174228 157571542 251814295 209944755 758893927 693573851 641119374 692399529 689916726 791904722 32977557 42907427 599209673 525545671 694606482 873582607 29420911 416806490 213348402 607807193 277020805 485626164 897874863 729907940 657114974 652141414 361730977 253690700 412917663 132652131 31760 776097878 250100674 3247284 764137790 865706150 664729649 634165884 83801232 811695406 899825560 497132142 494255450 868090270 976660990 179904591 520922049 88835872 726718850 897073879 168831243 756614201 161258826 392866419 694050164 969106859 490827448 662333970 702353745 652877559 630371924 890784326 91442332 560228114 764056286 675715874 447584367 783909914 698156441 520417763 418118606 375956339 79677731 190708300 693675394 638786282 664628311 710896540 72521834 629152164 156492715 925329178 212181102 507000215 249294841 852559229 875535152 462020525 994967721 688752883 701336552 409981551 131846411 49652815 334237433 650347316 644470780 408873200 883545676 118835657 348432396 7133128 896501387 758720287 761265009 130253759 661220672 993771265 868479749 229234917 662813750 100013977 828728094 769443982 287594497 874265251 605587970 584170455 201055327 842590900 207870030 281193560 545421434 461806596 474191342 495964638 267588139 86009734 180774314 307888394 794214505 772873707 799310122 991047277 194269832 399874960 296274066 310919366 643320484 221684013 392237756 862781137 745508142 427118235 138434368 262141849 573376171 353236457 968644209 168524432 852817301 662943099 174912251 514231434 418256682 726354542 308959114 590181080 465011178 487924218 958174881 708077560 5127749 814010794 703344459 362822297 29300774 618455504 997971274 240307308 80185158 281058941 871470434 140303020 952735434 544597367 563662655 173260150 54982494 147547538 307913490 200955163 77417606 61531611 372217039 368624099 952601841 827734545 227468571 863704860 459393447 479274365 604701318 375133080 774486164 9316185 763098708 708452000 25591856 445336882 143856881 678141944 741223415 175835172 269789491 991246303 981947823 556024590 106942869 287007236 676724476 413507594 40831152 313811398 976384779 796182563 890170607 262595610 994614605 714512287 842518361 891159919 939417170 352764576 373562780 694637884 681392690 403176995 465372628 258220391 730543679 690066317 202118282 394254226 41614126 764200891 875360126 564715403 657344451 487073899 640517893 420069858 392935199 533706206 346844714 477856407 596291987 417800469 224934773 271879616 948623852 619559865 23794854 972368376 649404608 784703339 185517108 70059296 112194545 242988365 833069849 155903654 675203892 271977038 259339807 630683552 80575972 386347122 862446454 476418285 715552074 416112686 399350728 770145373 275332009 760263850 733233545 574015861 200326856 44738712 118484164 244486108 948085053 734634272 886895157 13337528 738989206 343102109 334265689 910737017 448183044 408441647 6894627 147258899 161717915 656833679 974424309 12688488 669096969 728926074 970450135 578193470 815315721 219371805 360722371 98665396 294126208 664582841 203000865 149457917 281145532 649620758 731777153 758715847 8892644 839156919 70548093 553191046 877009503 537968784 228725602 749447182 79491242 489454323 5978851 182759409 427894623 114391063 900766878 992133349 614028079 584256644 888930558 449264119 472481984 406575125 518167483 541665932 151946435 358087834 643193325 141428340 599730542 662299191 117091313 324086672 538831016 495252118 354200242 452484967 964570469 146832846 362322970 906858931 539037641 43065126 173939635 374789615 351741355 414525657 311030966 303018400 576498361 713389647 806158906 856831496 112533530 893178881 474560238 150604633 977430013 102453464 814299317 469756032 618215995 45801168 487044170 919341756 327630554 162615907 717722498 626193488 707250716 668684728 15846195 350060042 382737552 522906437 859935071 144463354 632423292 807110464 828931610 420427395 799799216 51090362 97054699 371770206 579109836 166040145 434245960 237815731 44395880 626598650 491146738 87433324 441072916 483024272 217175903 137787116 521543274 473827585 317932997 28242044 879271818 244481150 763251515 858931384 897901248 833194019 288766371 360093305 304525103 895349441 780709050 973145667 587510445 11211223 333416253 448533562 219442971 607626380 813744669 333708521 307492279 613486300 714606540 307194122 512533749 149371420 884150966 958673418 177365313 556895154 491553121 27132346 790648404 258837871 689687749 149936633 824750907 437014216 583302840 695801696 850824073 162992211 641501542 960624103 596315040 163590767 70664525 96361440 602938036 70362889 827978194 318801044 986774533 434604084 982541600 900519610 835838763 21646497 952608830 244750310 213584500 432840976 704398956 197470544 395041097 224898216 699560642 925995857 330415100 462981959 783077986 879069974 57728738 361610455 376573388 536588219 383214665 837377250 664006567 846756924 367002245 349053022 500633697 592776229 948822324 82562860 993035666 341096807 857264863 189017148 222327457 472411961 146303493 279082721 918613032 884456335 158127277 525203393 91517701 872498772 85277706 174278878 193397941 33463962 331411576 656425925 58177678 763482571 669127648 900087150 240957873 941077279 789889991 459967014 84290969 96322852 851762382 705388448 301946033 930456809 656094433 711618195 809729386 660217157 937252647 661499498 498894213 864122348 251925041 148613155 138802802 122577242 719475547 37482975 338124515 983044358 615906551 318385995 386802599 958251397 369820138 48511786 237020453 403333395 412912443 893787832 952921157 385290345 420878410 502412341 908004900 345500838 468586262 799289306 954360393 815810540 233886692 853535603 459119471 696510793 538646560 683722813 412969643 794859560 192394590 508822660 21741452 651785910 951926740 451649801 220957486 627487798 426438173 863934299 582895505 762760737 449377202 41840044 946558822 198994882 818396411 189162354 625841946 612356708 698639964 598153568 486403785 81978128 897518515 878578140 252318070 442817750 204622372 655010625 587376106 182640068 711585313 565935805 969846529 606945613 394809688 644340067 78795372 951877107 912077813 958206091 316824344 965498821 690120581 353580836 155677221 647335612 42732808 979915387 587535554 576372036 143804050 40504573 814055791 396075084 232454688 231692349 941224163 377898851 900055650 516275130 392578656 307231700 861529781 924562634 183212599 250394281 566821923 607212172 239281417 198422292 33660092 276628525 14937846 57665624 779303137 335615252 998358148 178084354 840375118 58310840 975608693 693159470 323398156 551422603 49584087 228134804 773296333 835916945 96892596 900197602 775222774 428494499 149793712 231969608 761352416 169868414 209613638 62895399 97214394 909965747 834056262 920239368 567679240 900190960 332708055 572149236 791853090 522460464 405243276 111314204 423458242 853618700 176028948 749335786 764897029 604924830 296822704 997583483 464727979 674232964 886379559 190111824 451738292 491710308 230264277 127945342 736793952 17417455 681647716 116551626 541567358 942692740 630267722 466703147 630285983 664336706 669785804 434950848 559050640 425098729 39132526 356159019 355921958 471441055 316280284 951681275 190861779 325821066 644324182 949946132 831367669 994406714 297470303 170541196 266993247 182946989 328057796 793868536 990873739 102528921 753709328 248705452 721961740 577768120 542403918 161396480 375758973 222713555 372050738 641384370 926215748 700652669 864319680 681805410 6469659 197531945 836874457 110625916 973511857 640710656 247539272 740053112 776908771 438378489 863013717 754345238 518086842 182330159 892226028 588819541 36688342 598986928 410718964 843270710 393987260 861624292 397494423 689826567 186491276 115090409 104309709 107736975 509794259 705434309 542188862 114623726 539108025 103766782 863937894 406487381 183400649 262184288 693255043 915464702 541896933 173404936 573159160 387802738 154714694 413939915 850367356 960372255 926653298 70980703 454253031 526815309 938042347 938876973 124203889 353357310 617567244 730068001 115072620 809971867 305106314 455574897 926942720 729628369 757427794 550432737 867287537 317114674 970417034 562744581 854737914 628927436 557235645 969953183 382074721 667304235 425567921 961011456 919814204 530083490 529785343 925566253 766313742 492533248 578697269 582565044 433653993 602128027 347978810 214627606 346499421 878108990 345400824 16636753 423959970 312730940 132797805 699247944 950820538 224345372 70049694 667228236 308085714 147451284 389942339 823966787 855032230 979360291 294255748 863480484 66620299 7936229 847913378 139399225 643688431 308424655 69859330 972305451 559142269 302135974 752759544 774044642 592582153 341498706 983928602 328893953 754367744 750939769 336173849 231477809 76303183 974548406 376456906 861053188 181851693 17362490 679998624 727626441 829778230 19496017 406459539 599729176 261678219 900625162 263756570 343018197 785354018 790017785 377383400 803163586 955289887 10981509 249737385 239806597 52600441 494761894 613595926 489476956 70346618 822961829 305396298 994291012 506085210 976942190 975466359 811637369 569103519 509517120 274752405 729134891 570403731 163581090 353180793 287396374 778103692 914934492 449020412 156492824 799050000 916333503 721332949 670733122 598796516 391481550 544030495 701225432 479309951 662183276 289398784 407577406 320037033 754671919 414588368 103324699 506669670 835977896 187790241 650290200 309775082 708374447 172837301 116496502 577902585 939465693 689151055 379403784 243819265 584881878 284856389 835460187 802544689 448106997 969978881 519414327 267266808 441438507 406049324 376650124 896510415 911796049 360089987 639290749 731778584 38369155 111465828 111270341 167031548 141861526 535818565 300038418 700861442 958696134 693424535 930997853 882383608 289889889 347566828 651437859 417688247 750608314 425411216 488348101 326047904 400132395 795027590 710958394 628111297 822596488 798183711 593257360 885738997 942374297 20460135 245115805 345942291 245595055 455664375 62375686 345591079 162997829 4659834 349520975 824825122 929716528 237379893 355609763 689364891 136107018 273953148 120723611 327414727 512221290 832325389 973556215 895504321 4527844 720219266 351688792 903742635 19549920 802397801 7220854 330221302 925591574 390694404 87924041 163066497 470966028 652646033 332533537 667260566 124109967 737187322 339534520 945844131 927779290 979431801 342242814 830349801 561115835 597552959 933982992 860315109 863073401 779589062 55522471 220187978 120576686 915892097 469398005 422639189 422364156 660900766 675790036 835650401 49585180 221901138 377736052 962157011 765252887 182242905 552000967 769374288 250799398 445352359 315699585 918967932 326872649 320581297 926167147 41156129 902068811 560765266 190800916 742866341 148769916 872791838 739102337 411301698 932070599 698210025 927018482 645696019 288161854 303557280 103733274 379076407 760049222 291933537 733371025 290955190 106164140 206713045 488203728 141432449 49192207 106595170 90385025 218288820 801418878 823632616 47008258 794741439 428653993 712497317 823230220 510027462 486647266 717894698 757314881 20260972 843796722 292147451 621116060 419552250 589583029 272021568 282096589 81125728 409545273 469643318 356788189 523316186 217265530 495700381 146241027 430494051 762240782 332508457 19388296 874368968 669089637 993713014 551663255 128504148 171189277 622964918 696915125 292089402 232849687 878412584 694135092 856241314 833078861 198578494 465747537 641839843 24675189 72072631 116829310 225440305 666283655 966254622 634022464 156034369 811553062 740164169 355744855 692640748 144199628 635326061 605183072 91723255 96157565 668614816 35275392 334723888 221118747 449388406 844922910 388530186 930148843 627831200 861591603 605140678 325221466 280140989 635364733 828506175 755172912 974081069 339701080 648214272 708984497 36327690 640522722 238026588 991665253 435824224 381694114 533731843 767677307 129161329 180319235 59745492 10700177 363240098 67279388 448507148 485009736 184271986 872934469 488088962 526326475 719289840 456309136 301634833 206162143 257208023 510077005 508851523 905107026 369076870 495191611 185966436 866315779 440163429 927075170 599992631 716897804 14711444 731022668 590092721 215356134 465074392 309277626 552559622 448955306 857803358 638657911 688672568 883561796 461701816 849187612 929445715 535049739 399815198 602610068 353949829 177973475 247589531 810602854 635898029 363230404 330723426 120807235 497189921 180393436 266529099 847169437 649898124 794054195 877947355 561187502 418124206 360963457 538505469 956234024 883988474 290732521 310886890 301939209 687176202 582504556 814204163 790780044 653088870 216107576 124707941 66168044 50616138 45821642 827928210 974903874 893484438 507913748 298462319 592636751 411490156 471610112 491625520 161461373 303231981 787200549 232969730 154698290 405779551 823228849 851462570 251320810 401458753 64216204 921561123 352354795 324713799 12940035 332716957 266723258 570481720 71347755 780361106 278376992 696660685 244527369 10775054 918147892 544172948 489414028 835709065 608032978 477922815 439184278 579258845 45030251 668395584 813619781 853802499 370920260 13222873 718431978 58567174 626583984 727632947 505461207 206855139 978497409 771835280 320485828 976351310 740670912 694308456 975595962 532987874 124544783 516347093 280147362 343018801 193118681 333262180 473510680 737934677 379207234 579658731 948743462 643651611 980275800 275346833 912616160 678172655 988441917 483126345 358593093 991737118 188065775 68328889 266156064 562789844 56184785 221454138 3250019 408483685 509469593 990920156 670555748 629983099 709972872 25934550 190236050 812803579 640170130 896528218 927029049 103405155 350901489 813685144 711419387 261956084 804697255 574030894 794717807 567348447 901096751 147690229 27775873 146410000 710205785 474515205 897442341 228566736 114059455 925678796 97480771 92396588 793893879 963133117 696041584 411385500 997321555 54028241 468316943 671357642 322880486 66208640 544391124 587923816 106689455 41189745 207516325 34165346 402168200 195176584 474209941 768758984 965398332 738401271 752569939 942137025 842872319 930985957 92806621 875605620 655160446 302985501 516136804 258990386 292492672 399000130 10782257 938148044 365855328 335574415 781414931 869534392 267991561 317411093 507441580 461395411 858630312 946023481 22165240 40896124 704550551 799808107 865667230 351189207 736565926 376674392 724428996 989181987 187255994 122748804 917571593 86535114 877351736 793723007 167831882 211055688 932988356 661383049 431915548 59863686 719362534 624028848 518246416 645718890 475596830 227762767 539437190 92373883 908589209 785636728 664951849 237597316 351585854 980392215 281133585 485719027 859119409 212576713 719325536 17543736 829813179 97628434 375498836 477836114 135791164 628285203 158495268 970281282 592101717 85129702 762891516 189392011 87118573 234003006 511437306 43753078 646335440 587867974 403165324 903427844 441394238 847334682 893758139 690408484 601172537 780979445 344357055 654584969 43878752 840832373 891968309 549680492 552298782 996577820 527550652 595052103 699479364 938327153 72645045 143483591 458338316 950376659 667647741 207505941 114310236 338065824 286893752 957154764 751324826 858832049 220712588 405813180 86471947 223185143 50442697 263705128 795513737 138376143 868563884 518041865 337526241 964042916 791509163 614289593 863966167 762874399 76326024 756283572 732785612 767304529 764324723 260631535 640826322 248639723 836611806 42799630 780218284 437167925 494783726 873818841 263506173 543343291 207899832 421003471 54124368 234349263 305947115 740822926 12900699 222298430 131456125 906925551 879347412 966459228 663170479 406129289 457408254 49019643 427077895 408675267 661841443 404477095 394204617 927089338 893787919 313247726 292338559 601197678 125115492 114729574 491892943 867771787 933366752 30690610 495461431 360661920 585039709 28189444 105311930 402695933 634917510 198474103 282876100 205636406 909201005 166108888 44319752 985249340 673795110 649910032 268956336 462042772 688323879 853239867 201897359 951607736 631398802 398104073 615289779 776671586 264978087 655722029 648798502 400872738 649760032 728702465 929509664 318355506 827858564 137102135 444592527 12319954 21173549 133897817 704287134 359147763 387758331 813009630 677651806 980401189 190199652 245987299 119904029 469749690 514679018 623950217 256889275 275176689 356514935 179705299 139147001 940307944 431305366 359534363 298083717 374885762 52538378 792089932 110413420 572333470 227646373 166776855 297390692 163441564 738314061 663850006 75637545 6124604 153250622 687007165 282762932 316192801 417034326 747275332 635550033 687550571 367585331 392687568 798552955 584365957 267462401 592391903 130107559 321447796 407028067 655170838 298592635 709826001 598778886 709727359 434559555 54117633 285682100 101265180 38784283 464512108 414055385 735987477 723088965 522496320 222061331 505638718 679763196 215966689 290781573 317845887 838089781 413847424 209130872 113317340 251805183 349196357 767735965 343369975 47257640 430840224 328305603 263345350 847913923 365051195 294436633 617091448 874226249 743839970 651527694 220834628 213013567 161207504 415992780 682592660 104661783 120263213 575715140 977035335 68264484 889700976 565534149 845009582 357592026 625812643 966519490 572695583 311057295 386275739 164775009 932141005 260617304 460823986 678320430 426043277 346847579 84550438 51680342 409900281 526624094 260928224 162793691 553120719 884409061 707488764 319740552 874089646 83552530 34571189 280127843 556376619 583135503 976893790 839699649 305745732 968968805 744274282 114174273 486313921 58709318 552491823 356891890 509795207 782677711 136608357 29067844 816432897 890753033 452798332 624463394 155455678 662182633 868911 808424903 478888699 14274463 829294400 656766374 811369877 589630690 877354717 143692730 87690529 896989000 581561920 794167904 774284946 844919098 979350721 861734300 433736831 964327453 682601890 34968444 719650664 214637000 756014577 633905141 887489987 252761511 983865037 451350082 492290085 887250925 720133868 30739518 502540081 943361866 663755682 336778909 671729778 310742931 278229967 543064454 16411398 999562548 590370599 350347967 695932203 162184445 752488059 46264241 838550723 411510769 928634635 678207979 705657707 317608879 343948947 677173559 287167089 447712795 996883631 417231258 577954393 640393495 250539053 860497766 597769104 237678838 254498680 608506923 557496123 490454514 403633852 91127001 422543482 46602233 878174324 838003223 873252253 927379854 440130902 924523094 610933939 155356067 381167089 194504609 972440833 65485475 716744652 544847678 530350800 925471326 147853349 179341129 735802563 903595987 367082528 99750354 826738014 456408658 876405797 231989489 262141122 877833933 717064771 674431896 616135263 848757802 181658519 995343043 807637185 134606699 453320480 668574083 821424924 456378113 130097890 876482895 503623078 905495510 656756331 626516310 870072093 654181247 925153196 447040460 933880328 637226966 967136920 923717820 99976996 64232821 808919899 826394879 771454901 138349147 285732911 861439646 467458857 634128456 348563953 517735046 756201438 15154074 769327349 415372787 714455092 158773656 325970417 399719150 465818335 385981425 833599753 276100025 204559224 112623188 831805519 749677862 571007196 777755564 360680060 397794270 202154066 517110977 854724425 806190121 928141817 989992101 431796202 767037085 592445425 703051738 848290001 910938396 896332199 16376489 842868863 364148546 235684021 103855022 303168712 282474707 228069864 968895258 500884475 868414968 805617673 596202824 955793040 160431593 58086356 570898322 429680891 985382426 742237935 944362504 534621269 903809142 309916624 630763441 314902541 71254710 552438374 821963935 37131691 10681850 331829102 310641062 430540406 102613305 458743148 730292096 753357265 748456430 431196658 114676384 366287682 444534424 895573097 530443318 339505423 364267153 354028677 28785016 983415340 130761449 72472508 79733403 67119952 93125136 89111660 907585119 307492663 802330679 414924542 452153754 974951888 862019556 512571888 38964734 800088941 170370274 739123841 936366900 61125088 901831368 336776220 654213696 389940824 149975577 812077756 567199869 843522315 211553069 755133369 888985152 602898071 688909151 355979127 613032434 622485589 486957451 473518022 952700664 360848190 743439600 79831479 556589282 731906908 582637240 274633789 185015583 504411180 153092357 120840361 80011103 820601357 416022370 793324497 763208140 184735555 917225899 109410222 779791023 853705132 829436289 306680544 477004447 620624421 712071572 986434441 249095982 287436818 57516261 211654509 852605887 823931640 831184437 221665757 728580574 421848465 392075006 387673819 937382323 673162524 722813363 578782076 272738577 62558661 557407259 105132225 938384712 840652581 192892015 793164283 85488585 712264036 269509799 782279834 288767101 979497378 689851040 157260701 777981922 44147686 300029571 438631010 644239676 565000952 781515434 158208430 91108575 185693627 513632247 301685040 728803864 417932127 497774048 78250351 830037340 265958445 607401268 897691740 961126861 121910096 62842078 548279026 153617620 965756145 556414477 801367370 129268996 50787703 770817519 601596916 449293321 221897517 464583095 604840994 983156317 203612363 175256784 469418572 831751082 910660629 856848365 97071949 724346396 564902792 464512888 103505380 438217455 788621322 373156303 405696617 909738169 247690220 868646445 58420328 960206467 717324462 455410828 53266865 279132361 920641793 293584894 777089190 667914433 894108855 292089892 734341137 815464691 915710265 162962069 926174298 376244639 597647496 739589641 682891432 988600326 908621459 123992174 883620131 179234810 697680647 85865626 484083589 896040181 37635284 168364643 197544960 476630664 606032656 690543668 193929681 760745232 839262785 132541784 342399199 623640831 19577470 203079461 497919758 276172804 15404986 992838472 917612536 245236349 477006881 918095273 647756308 628920895 734349003 774502693 930927183 715426316 463881997 462747 120903778 210769930 500057625 250642234 931517995 988925905 310679592 999415895 662316404 990875060 863819845 434307960 188185158 508749701 113217048 180545267 766258636 642098209 410626352 469923080 101467518 385110960 786457175 534068734 418915443 401547467 284064012 968912300 153365372 402707914 774875965 439813508 332234710 635145471 996386818 815330675 163244034 265777321 787650249 718742667 65128051 730343244 572083678 528334475 850695993 659465973 581758734 850272333 943761290 15998369 254809028 641639942 783952979 804919473 256171149 637853519 794809518 549539012 518508960 215239751 255003069 928718459 404930263 764530870 878091112 29019771 973805599 740668145 594403743 811627538 63798070 299343570 571317141 674942258 769496222 912332264 908217934 455251777 199906820 773314727 818319789 135112918 627801870 172710928 176775963 143550941 627739561 580439786 419131784 770095710 650664342 800118582 422525771 130699749 527843032 140725318 14277499 27524714 374765129 691685075 488594759 145401027 204442449 298714073 836318312 801691232 952949718 417154330 678437838 28824645 656620777 818803810 408424397 301732429 829028835 626345321 950527812 37115814 286003661 810086491 123748821 963846877 853356025 159509327 235786197 871667133 638497930 686421067 963784142 185604767 481260306 16562278 41776601 631374280 488860533 560008960 440674943 520738097 730766043 238741225 939357135 165049257 552605627 364965206 199859598 290743814 685169555 948577605 321970095 811449304 431340429 863875439 62720802 376882109 707320008 79666598 795764354 54866107 207837146 403669478 582268204 874662072 455705566 587366489 532699131 421808254 331721755 633401235 783021291 208667768 392199813 442191217 123418200 793844621 785648161 438254873 802248512 863028484 682309968 230687352 592973069 962173157 34520501 899020938 26895645 255806863 552579741 988277184 447509093 137814726 774440732 130065352 880819594 177616941 215347766 913013281 943909136 715685919 990727071 337825517 440534455 860784414 753718447 580221935 109158259 448551578 95259670 408374058 663791139 437370843 240361519 765342044 558727519 11995663 573392323 790755845 191810376 152662963 945451099 136046446 587635992 91651111 723892077 929269493 431345157 686303144 299848473 202142139 386030702 872353598 788258861 541082031 572571779 554333465 542664302 502984621 388486892 577831611 676841485 649142339 6133569 695341710 152489354 310616826 87250795 291194799 394927871 545411647 344079220 497839557 227780242 686144501 920970400 126230328 458160732 479817669 244187077 73934288 485711310 494638783 879552811 860093650 509914742 400681232 675798084 208736833 152932037 227439605 829956153 293301882 981752146 616830665 730050323 836828999 964515999 665618700 188600406 915454148 261206692 501059893 230484946 955283816 216299482 40462754 635463369 53962689 816718908 187944366 409634971 872087834 440359272 243204166 328950703 814202286 898282417 412006649 570628399 172110594 487705926 472335835 325853163 506095936 157240208 58518179 927167505 11207118 687716140 314912605 956257843 652446291 317374687 745738164 525705560 154981017 95016908 123542663 108728739 127360759 119211141 839930566 147008940 644416615 171889355 103965554 684053979 294019870 388486010 618922371 277175693 984770795 800743692 41694848 739432934 518919151 200410896 609547126 453878303 500261887 915119044 415084454 416088781 683428384 566355770 770543539 348707190 493796830 370826077 178313552 26051757 738236027 751885440 409315777 255103445 669981916 424262460 926824798 148274410 523333804 388243960 676442176 50991474 260884701 239612956 472593006 657971622 805403110 518520038 818385099 731311030 470017984 843407678 523601351 715411500 352655824 489721308 577298584 440731187 479347142 405789840 867924118 440611648 605443367 95257866 214963000 788410359 469957671 233363474 880634303 16510380 180552696 49241366 569030330 736434819 613109052 551631098 126533613 240116295 338664746 816221271 527311396 171976325 928688124 568753448 782652370 464656695 312289930 495672214 355034730 536418140 12431974 715626214 767920014 804453573 354434268 207361463 818130498 359420477 601182445 85254162 32110533 921709718 121582700 448088704 168735511 822609870 292353288 887481135 791263412 853217850 510130774 369837221 961724786 966791691 266587963 379330365 254273965 38305917 795020395 212855394 65789435 403884352 554574594 934290385 715103548 910129436 954477319 503980748 20106650 224708070 153439684 801115668 245398016 874857739 695757309 465576169 688745212 864480669 115559531 82365982 473310649 750413222 104074296 847181072 47001017 467599491 283056798 824968423 124837328 36855303 361987968 226325133 35865840 567888270 454626458 726965897 613679108 232574928 520507463 181168232 534381608 731869546 496456358 947774187 661233595 213455519 790826534 371233393 857918443 682892574 411898360 677272227 302375528 115681895 729559744 440419382 504039923 988724216 136738436 921737050 567381240 435476917 907863848 509751301 359819276 604740689 976727947 326139014 109844279 879468157 472935078 54485715 814929629 248311086 592172180 365327287 33411974 137223459 857343664 981807434 197092325 440441001 628699256 331432767 666356135 355849687 152142096 443487571 860456649 488559501 395821573 280040337 353748164 612286535 486344937 953786362 522846966 417190339 329022655 720059886 911694673 268283061 815522766 725550594 61698656 746368369 85143305 620664082 591745074 208439531 865543522 62587084 118403545 677320528 273325197 699029144 117727489 146400866 59081224 920853016 416340332 581936589 26126540 20222039 178048929 361220522 665272899 147749592 583105479 79509344 20538263 469374478 904638598 81096305 582238374 466426464 53224097 949256481 17281182 319770644 265334476 245610180 983326324 70760605 356908840 119286607 947213659 428232183 763409511 638270149 821505928 370485323 379858633 615454982 259568006 276946015 337124371 3305606 697327920 85511175 980295261 599121063 513256028 57140439 685129130 757054604 398137589 209193860 497678780 4859947 307344565 915287274 695398724 781909707 472022564 253558381 363686129 435444158 725164540 923793111 94205668 982015558 8156939 261214607 457660517 365732042 833526780 246121759 754910151 696356978 687349640 842518566 543978843 174567627 607259470 215443027 318868908 696141267 19009879 218097232 164595944 476396559 261298648 976299567 343112486 947522975 690708096 603380476 865938789 803689155 631385878 787659634 449373666 94416691 66326901 689436413 652325578 531092479 264438658 190148973 103781238 927503900 171165516 129113509 643710049 266338035 94663383 106535394 404611974 695841530 158807792 682591108 356440256 468096555 899632507 823406807 580486490 961967935 325061023 943653799 426679680 557712026 474911000 786036416 956709708 226484404 184947822 170741211 563882988 273391514 767358720 224069499 872033549 691264054 789284315 725365716 243389865 305878908 155270444 829187580 21889044 608960289 503288568 324351433 634123443 256157150 492927376 5871591 445598782 979036698 161448937 460028139 690397831 580239911 676873359 800760399 466552829 399695435 772500142 112671116 609126844 339108262 475341791 800361188 69693926 929693273 548953340 78489906 992362152 507807266 80234084 429539737 321438264 267022115 706102507 193744767 350914745 99911894 230735351 772508079 349481514 500420786 185063008 845582826 766395417 202662139 329687093 752648433 225703061 527476568 712262826 782526123 792614936 452807731 700583075 3859453 904409990 566444530 328615730 632335425 648281523 262150678 909932364 879997328 537013114 568483684 707702991 72378972 831119775 258658829 666458958 300444607 883175073 197232267 574401953 882649709 590127254 988476750 403649923 836977691 601965553 430117794 544084 155650191 100992547 624883758 852588180 284713225 609889588 35293630 851722456 967154813 31669962 900974876 41104986 548670181 696293203 244342960 937562247 82014287 651721843 217468911 482654852 586480388 459364682 825708458 839309129 714193476 332113753 639661947 277109769 421715880 747580058 329224659 775626131 905269916 953841350 580431051 751444739 525947424 714064732 940742159 947926802 594983396 552543758 445271779 762231711 831518804 471137087 525808710 790964991 683020740 147311099 394674127 38228090 133232917 836631011 148108482 391062181 559791134 226392320 228104118 192752732 476677054 881191954 208891299 788538699 223404934 735233541 863631252 590407315 265352589 752045145 968701634 493652483 960603854 907813029 762527761 851369822 99357017 267999225 944980655 706679049 175028742 349111073 861511248 245030047 753014636 219287425 731379985 738761646 883612680 44747226 984997217 124356305 475963983 118647212 236074391 13333432 218649042 857637371 486727967 804004371 433936127 466722223 613626071 521730192 335236250 908184087 739242106 554565940 608075110 152947733 316062753 346611142 41139166 111260389 220657156 93875550 706705452 462031945 421519175 790124397 430458477 488426996 277477613 774598828 52015294 54029128 684659717 554106467 49455131 997754501 315933359 877958695 517064394 840234800 768753191 159564506 957003082 581492718 201895642 833870185 884744281 45707321 508709682 432450424 382818155 868750541 610515514 53888925 177337813 395212046 348624722 945830205 532927639 998129123 924527021 548732148 626692891 172303741 562774822 407838572 60004783 163739573 389022049 67764111 288743841 318920663 175449817 343366859 47687237 276116960 692098456 204637958 513068726 305933961 105015506 78500814 396417607 232689946 3858958 274007547 758083270 775601423 997861894 770671940 804036241 112954238 584888634 578825944 998655907 569088626 135789444 534845036 621161016 583129092 277393910 365108663 415798835 41783399 978369269 248932988 446692086 444581275 731651347 883220314 483456809 647780940 928067216 662197756 126600219 941112921 229931614 740235162 244129878 557127500 935608675 427100169 121085657 780870171 705187848 162910033 849546838 419614441 689570504 345686134 10699201 426213929 787206172 513124748 463281886 753659106 527837194 713512349 586890997 151171336 747563968 154024671 537601472 197981210 676308218 558754959 620078984 720093478 995766375 383899734 757633759 814037462 545859639 891915666 828766922 924304666 241119028 499081619 1902958 916324670 232662029 62578737 226670723 128935938 162181647 697378718 998678334 944797143 574104332 320671038 87711242 661152209 150471223 559097222 650620984 958918153 279792365 116895018 962064573 203013778 793379441 814151602 334636625 61883124 741613294 717847776 23759214 255097746 63112153 552375209 229030636 391613797 477953875 649755953 799026242 475880626 197344242 218712513 932852704 796588937 40899608 385953004 140053295 713224340 433175481 308123161 99548361 475062684 350082760 277531517 939496533 975080772 222865194 943227530 781910382 971327171 697166550 906416993 915775386 817762767 385622379 280763659 477810086 983297269 150898621 883711828 530650289 139834716 116454907 445496214 228327505 230462842 62524351 666482794 916871731 384885164 319721788 303947412 623855458 938215618 686391172 417797921 98465419 756195827 786300898 315432581 723511871 45590906 849359939 58888668 940319350 367169422 788796403 553516690 139632317 764494658 863805613 692885142 835062905 803758159 891232933 580237954 468607340 322876856 347672096 610854913 420092321 100343284 348150705 403163420 829553677 15574929 328648424 85230879 624937490 417927924 612164202 426785017 768058790 239214100 929774064 314706405 716135728 11045329 74371902 844455055 744201407 279546647 192370478 684915426 92304907 708024170 560700675 316126714 853332063 58518132 600322344 181787257 293733843 948267249 730524576 30883299 167629555 975901867 128759534 652686955 281639067 996252630 775757845 679155336 330935963 426987776 667871356 66259839 948296185 371940562 29277480 799582061 617391316 870097830 848276031 406965158 736049436 286094965 509543039 907026376 895920094 797232126 640769116 357179129 127263660 354331892 49077993 84094969 208962157 595420962 726797495 944619639 561871422 482464553 860158721 621109426 388997159 233896606 873861604 856575158 891251681 227041791 478157624 926723832 352543575 753054124 497103075 59503847 334984967 691192195 513802385 364836134 37831682 914214633 844083383 523843537 838821140 891606181 300574194 994156937 853335975 51700763 643681400 201867872 234260997 256924777 205264125 167379605 188983793 634523101 716163283 694043123 213351371 512707043 933938569 362672802 500846900 374253356 989922929 536767204 255546170 402424484 72134231 340505616 883004714 341787974 902637537 149596491 301156133 257564341 673774485 688882210 604260503 259594327 330317300 298370808 232616430 213230493 274644532 612074478 55921395 240550791 322857911 922151714 271486030 874336854 569167048 810505356 545335622 416260365 231984526 467960570 522638789 984426411 36633584 741519225 915573264 643695582 827791994 709756743 171298854 716516261 696790517 878398832 970754902 712042728 941385103 642367837 212475383 920256174 472430943 239525731 500201696 269670637 848213231 262804412 110577381 976317040 568892501 340431808 382788247 556667160 243156442 492606506 768353023 290575095 316695094 266094222 530302522 49470964 25956194 41192704 265505407 972526805 637525680 23406513 12662161 944975667 314238422 185211404 601407848 396236889 525233439 441398650 192249381 986368483 86479637 284618191 313675037 5710694 734085623 967538898 981697608 934650729 314870624 131222389 761655174 346986989 286004735 653651319 852373856 646143869 764920104 802476925 908176157 283843902 102097080 413965686 287154927 332559235 678021075 153912787 280067937 283165348 363090783 60908105 247742582 835259851 294051806 944641952 408948262 907459629 668361338 962222948 265098839 94370336 600801259 808749415 999427501 475064376 654642795 633698129 656892822 561140685 219421278 199210699 528286710 931592036 305090749 792388612 981012689 183368996 44083459 225221637 896033949 77157356 284450918 699397730 989831203 412953088 937977552 897774045 156439088 695784471 290848510 242368732 207581048 934559544 463568159 415433170 160726878 119035329 943978600 188415190 961096037 992602644 879668203 804747208 661381586 745575385 643628219 159903466 239833126 782876012 299519774 518643207 854927143 189602596 662982119 382950194 570188052 168296249 500433326 998965630 296977328 958828348 332118219 987250374 202095602 330390496 882499238 944673328 718253452 818767114 633620703 472854801 103980588 45238336 829009272 409517712 98593909 722008871 716434810 240287917 289325613 727385494 501050482 657676413 320363665 698051179 188427472 328369335 836604191 176835971 519605820 719228350 495215646 884003477 536327652 520132217 629341226 259224981 242427650 554275376 755874081 192106631 217969355 360257081 262179392 930999593 228854723 560021787 609873442 226178800 17600053 824786382 152002060 210080514 319551768 37992841 917212335 8267007 290661095 64017510 320173814 449104595 510398464 471152987 68127344 475799391 787237295 643832347 433893499 183926153 153855759 203184824 347293324 707278791 490713773 592275611 638050471 258947233 102742554 444398786 409884034 846019108 981834247 243672830 570277313 836637604 553385836 286394534 127937052 958400881 233429887 248166432 177677997 839844045 783920040 627764190 379807943 154860716 141813957 628940269 455078053 877781111 932750183 796561581 776587457 668370365 217148959 206782610 76149246 898534209 198998011 275850201 873740078 229048564 279822814 411439335 163890603 698638552 369897764 573880318 63192111 485728454 776139795 141140743 192205764 858681862 435106835 268509880 920618784 785808430 713530234 816208719 689638415 650535936 290377434 802511338 985795895 696957326 625145633 562740448 2556335 128903352 666977871 79047154 336166956 128677550 440248922 250396165 211834554 660482524 373192023 727715889 849836338 414406929 247456835 25111548 816882192 104544622 500458597 420902261 550772197 480480731 185487988 605617026 752522763 590694720 413206118 540271864 735564388 133523940 160308525 616914322 917352058 730727891 698179486 875613738 725027936 398695936 835365638 13837178 755020820 483090788 699869298 978256876 484033362 4859546 103773519 78034806 285724027 747384382 971562152 967172481 27565096 899505384 709346651 754081883 672561739 343830615 647113018 469995386 582553279 687192149 660700410 317564203 938162393 606544366 478765480 996849991 699514041 783512484 809346661 473969630 847153792 464852684 544267202 247965127 700358174 201675090 438446196 297477191 844138562 396734644 670561826 255391927 827815274 541587253 452238709 721806066 176045598 957294188 273488412 89193169 704137564 461547394 143302443 344094244 677933918 662389565 781945620 261611486 296078150 651324893 275138574 955634046 11015066 417733616 875893242 866557528 39237573 606834294 737175077 491360124 817397116 847742372 176787153 759137896 221562298 244555886 585485616 395040030 464654221 87913699 542101983 441927559 442821820 45868082 188369549 677855914 137633778 144785190 962648217 236751502 626941898 325603339 125964006 313952589 336477295 381051223 627783299 98398233 999090167 345989430 882123625 28563795 268953896 814362241 598795347 861489473 457398110 939826892 923509200 692479312 159962963 405724674 982547666 149102576 143281267 332315697 833372929 146635748 462078189 574616530 517684642 872148125 572211967 401225778 856604247 560944847 557655493 690453268 103824673 931080245 978665996 326610344 652678611 163535652 925171140 653148886 311248093 530186958 545642441 998236581 868618912 364822098 867736313 704898070 720542624 657455689 389626239 752915774 853270772 310269468 997884006 15921694 308935497 604030662 45377444 34361708 303390297 171238488 256870517 498650977 893279049 387850136 924694564 381130664 644424798 897561159 217883914 951967888 278828857 501118090 429571285 739483532 199908224 492321459 594239952 257356293 658346760 139874104 280525332 705393311 588421085 970007475 227694580 519732085 110813192 532135272 445322224 100268345 851616192 599345774 631816215 878198554 76116618 818318113 382381972 21187104 218637479 764725403 37615087 653242780 808134743 315103397 424177373 742225612 929044273 442380523 91824855 881722596 9438772 35441677 633525376 78061468 908241536 925417896 757701308 440582531 489613989 688413610 557343264 779192816 903245648 209475210 361503556 491038270 914054207 693800047 222138517 669288311 597952743 408908517 738992904 62461479 830625848 669866521 713796658 716295563 751986004 687393282 257548362 698649846 900309947 935011436 524418572 753240368 310218508 68863326 680242488 36756160 536774710 414440918 684765970 891979742 156194481 571463824 385006630 93917044 530755085 84912387 401358907 917599846 973135941 230136521 524654434 7739941 33006733 976336665 502633105 875310465 554878849 56868245 28700584 100887163 9404518 728884465 38960023 822993727 391799416 838849013 858045044 316483903 752103430 595690961 645299063 838284548 11299744 840255015 969037555 555388260 274863262 23010745 468755881 132954744 473629197 486769000 995226299 255601865 506606122 497035488 611036828 801723983 267250008 487612237 31043347 162651628 748832194 443447775 530054504 92894981 306984494 456876905 97943289 283930576 761067750 853621272 581680224 339151780 834822120 699234400 757834888 291802952 210276745 623966366 315484268 151143470 941609081 734444393 173953234 496196846 295778016 829594467 984111869 256145788 984470303 496968561 856090122 461984540 753900926 949159844 506611192 780449457 719506872 311519672 158887598 392241830 743705175 299129505 87944994 242389431 765832533 964479308 736905767 167019307 708526757 373035237 39324757 427704840 501776034 216547035 904642001 659229484 855777814 15101376 74434999 790746863 571500765 991217129 745777937 753587100 311679134 701755328 509580493 587695887 587398401 35491284 981526894 772284465 651715010 37315476 480084933 823159860 739079824 66128001 519900066 633929163 757299823 105540865 92482525 229545842 364041768 595948520 976609520 861741873 757612438 658575407 869078968 97682391 573551620 298297145 22517584 795086856 388914996 887940541 812454098 738498884 750576824 204792375 495474683 556047597 141066419 521681380 565892796 204266664 928047883 734622122 602772166 927651959 988590425 316624573 384920895 40785455 141043440 971344312 820286350 187820901 961590284 830683519 767411222 993460391 428648238 753956360 258708230 531241792 970444073 117064715 904048996 347293503 331649547 816066182 933419359 735215841 656330776 909992898 884027028 316171341 652565266 18917172 12043834 586052824 830370090 656693908 199847840 319065853 850707550 149689707 680736340 804144495 874156283 946895560 314707599 955173041 321514983 739489593 131764700 441796239 886980470 615294255 250784890 611620395 194613474 504370802 225162077 88319376 269287382 173151345 880820926 826375322 998991730 454578261 411725251 392510738 693068600 47159579 862169265 234551654 331761914 388161713 734495437 642575871 824671937 641249844 6964464 210424220 853714753 595907856 340969847 412981262 599214618 958396437 444735905 467707490 285168304 474465296 282031392 710890025 650142941 742797186 783305452 985808297 714194087 972853905 46595736 331940991 235424494 838750820 358120177 91409328 593456054 316318405 107387736 100504054 587585112 540177543 28520051 770343394 104873619 245216255 981739005 155224788 62706901 587798170 346112228 99779580 486939045 751954124 158269520 749166104 804645279 614196803 36482844 827508882 819015176 397792067 674883446 86356661 239089394 147223349 640410612 544944169 406340573 869717712 454422498 727748063 381619229 88670554 945375616 536009108 571895549 276099996 947684682 961511205 180810446 550164897 837019711 478387619 727530157 497256978 800714531 745953936 772098266 751758314 212505736 872250627 773440291 149311827 434383958 532951146 735791441 175628811 901772631 519692139 288220053 307523432 185232377 939982616 145320481 304856422 716605757 543215540 159306991 931811388 265708753 101788698 718805674 984119512 541329853 200954646 382475124 526712821 282333989 628644619 646543890 904041747 820866648 563576070 935076253 645671480 889910612 274072320 541043596 580741186 120026975 917121666 503269049 863971888 378743418 743802478 463581065 715205077 254526186 167109589 715922460 488631802 894825481 123337504 857181796 22166138 159053077 960872617 493043020 380934555 859892560 873581591 798907750 52716554 953083696 815764007 801861747 900329906 224757461 56630368 83037947 247470508 161564705 702730699 352719275 172909813 107535785 875230877 990497425 788191646 456189747 299367562 912821149 710184422 10272526 112069861 966741100 901490162 190808131 819368421 379766330 995507188 19767746 363604431 689951520 744936991 38428588 296610448 32524628 435610232 411088116 139637877 399605529 43821706 311647330 735684037 416505329 748484412 711314427 360717729 660013646 208511838 889339142 656387843 145583790 708781565 639467460 586812426 201053587 31502688 98706803 504671664 583881747 866217803 894805433 250421898 298367979 392578548 591981893 460531215 346194651 755005057 303844261 526926162 714080286 293762441 73950316 100148330 245995322 515799952 482273655 136344287 310435921 160290495 514559268 613412028 879237718 218360810 117342175 891484263 852479962 824723582 247071075 522592232 598021525 639097384 876188188 779198020 656230820 18041859 772594855 739343058 273331209 723163822 86908679 902199623 600803759 861435212 101043897 963866329 725316875 380792781 220257907 501174770 295842378 973945684 375028956 673794971 640644930 978776794 34229585 33428961 775807751 91414448 175525920 325362657 874870031 74120499 167915555 961602995 780764945 815988008 227951334 254014020 533075007 213731763 623696252 570798737 164920275 810437236 421584857 231594458 517128484 896907096 242097559 614608377 235519379 134131702 800751024 860002110 976341140 368775761 834853372 101189278 365847355 305427885 282436934 221507836 882138342 975031601 743749619 876098683 485072468 647874998 402680363 612625431 785135079 291535400 354341116 273361358 926073251 877134078 47762693 564245130 695263344 409531960 507234734 263693806 60253190 419697125 794988203 810841298 827970227 959422103 14252761 676749074 807741808 141382748 717297283 246863659 439143325 773637204 184459280 589099319 621406643 428334136 696776276 29337807 699903763 142371213 571929945 388861752 557693721 875036416 420329338 470512845 336632614 191702094 290577222 343830530 359897323 433041208 705978832 898734782 181352841 952806247 913058298 74252531 863262404 157621008 26185143 229385888 927056089 909117979 300198113 449555862 43436595 287063161 26912019 122700067 199396532 800708117 351519259 588634935 537016291 536885611 907459547 349160314 385294695 961903199 719426327 156855799 767434206 672294040 896105547 976159980 669588514 572642138 448011149 608292666 161818316 753271501 660954988 338094971 691591832 337330845 673206344 134251188 514232396 698104850 358122329 2756197 293274216 5082042 605650193 93279933 857100658 536932596 314669550 90301197 162822682 486508368 752919630 118780740 103003661 316122218 494836878 927977733 444817247 213151796 420812286 284207354 810592621 342133101 805951130 760841183 368477298 588565779 798460358 484663807 141123157 829052146 634292515 396711707 140852425 472431482 973114795 265010417 990010252 585937310 865409479 971107362 689796096 551386113 642144146 720470896 397569131 302070019 291941069 265079374 540477126 434220216 461013353 11193663 66467362 323052611 732978620 421123242 390718757 371864094 864840424 826425049 64773028 398998524 647618768 96118798 959203822 572880314 668742168 361756661 957353572 567283773 514058151 807426702 693028358 917375480 839295522 848231874 979525887 7359928 94960478 777883843 627736457 596341216 207611245 495083954 147184778 832373212 307534336 626138953 862636539 325922579 857235054 667113633 954471353 289295874 391957778 321263222 6675622 421425669 560788926 560302565 655779275 496598254 639221996 258713081 519274977 421028333 287488751 513821177 171310133 278935403 556494194 933469034 363920783 920085955 924369 753882143 505247328 158850061 486551643 874070946 918853570 36446352 444532800 980098916 490099255 584832237 257859344 740802085 538293453 359492480 981292196 393696564 973269555 760645504 482314075 256370495 621178163 555946226 373237001 602132445 550545383 784267362 25238522 106084931 70834419 499572768 372389698 223540011 873972721 193085804 718994205 430128207 9723039 947290907 388800033 402740853 911244892 440182979 157754386 889189312 188586043 218380679 793330122 917850422 947802832 226605635 922679480 294128982 798439070 809150530 915215531 522410596 876657180 487680735 753750210 34925787 124510782 751828207 34727355 332612910 126360064 430901480 692184857 297378421 192266698 140231363 440060115 39145245 238547399 26000676 381183703 230161250 756637374 406598638 540684989 526614014 78894541 172692676 924724122 206316871 679920023 590617959 748496353 94377615 316761402 395402787 87260343 831926674 398651869 711533877 814305220 46115021 288915944 289496664 136370946 965852078 363540429 819225695 927106855 905374707 158752327 622780289 763078756 912979456 968192218 840689423 281589700 497916856 672409518 227124319 678128851 105520677 484728309 559491061 546291031 909817286 894432396 7626127 409179887 260181513 954286336 664604004 228577842 983990462 759997693 739591395 333789462 653136036 145996114 979069197 192153157 840788737 787097316 22284119 474558642 105950316 714714679 272320880 100317325 540029815 859084496 710390089 230399103 686686391 114504062 365216564 96637192 855574630 563324583 953336236 954487919 22831969 127330754 222670990 815203151 912791838 294170397 626655616 443905628 693731781 837259560 244547552 486853182 962463991 757217337 328030545 599967132 252557191 502349090 955188690 736340509 482506815 277919597 28507587 324052799 237648686 504048830 274182125 100851314 419489398 919004109 322615578 144596646 201438506 325687712 411173652 964968327 582104473 462169558 427749730 300985265 40826383 534412802 354815499 940086822 204814764 972865468 559620846 503770850 359533587 576439462 150758932 514847559 97894502 189674206 659695837 222295905 419107779 256822703 363367973 692483467 601780180 116702852 787896117 275820100 765027575 932921968 393614478 421285098 261592499 93796258 944533677 567147526 400811785 335074994 203642827 877147673 853124655 164536814 968130724 159875614 248037502 282396389 201553585 532004013 37464643 512227671 847432975 715979422 171109908 456257041 28430177 998092074 620619739 7934575 925192589 923167746 4123334 241646321 819546046 169388602 441760525 256781151 751410872 973066919 785203697 564441167 321027674 717852107 801733403 444727330 519043541 255098712 603645525 275106929 730592719 21528534 244406046 61523112 453407305 497783922 172050344 556610996 818660793 231903647 370000037 11410520 509986281 914602143 638767642 403516392 969565916 708825202 779983118 748898772 321375657 139697904 969214439 119758825 846734482 913958080 518741910 494341848 530627627 778027266 388452043 792854875 121340663 231945289 288823838 527906185 148350759 251916664 470744615 54085331 96767449 564419612 564566087 900108524 60394733 737161423 29322116 962508796 626868428 213244453 816287770 713811174 700935479 886844915 114030884 399462494 67161709 211565146 593365843 928762430 212911279 544673414 283256933 243972267 157028037 618800653 735099837 650029029 368863517 331380923 783538915 989473836 850922455 548466039 492064066 785817738 936496815 754474838 569850024 272688142 415036886 403581822 292630469 37638 273306062 587373507 968464655 539597869 18315980 305296464 606517784 957600245 387625242 908508155 73929843 323999890 894877974 168397948 780419635 760658972 875223233 8655680 367851578 53874784 888391850 536491176 334293754 464692511 401738000 306758232 861370092 847972219 127894470 188382030 192324945 351544 787255702 422155651 505356218 280654326 35218254 226593 192827808 846334256 969240648 579767978 304378286 453404665 358304575 604361512 940879514 92564118 964178586 464352812 259080290 550794896 531481298 215186182 96778550 288893929 1916182 22887369 715644024 935224324 39592775 990612011 570794408 269911920 499118744 869796673 242529034 44625888 229789934 185542764 335258574 627381374 955664544 1482993 832579971 606567106 818032747 852736452 465653674 279307594 178812367 480908418 392995309 974655684 990052357 919900291 821172419 617301771 21217463 757789856 845098374 609360862 528704630 748527183 768753797 606029815 466031001 154355619 750054829 410293218 519760128 8905224 938619831 787735714 722747885 9521639 422462764 37413878 138416382 692188597 40810065 569163106 774084570 426897662 495959478 423518299 846468392 967247528 231911240 789560131 44180729 150735892 148331647 156234978 21545463 51809144 280329065 69760966 560570401 986779674 115948462 400877555 134381878 381935983 155158421 749576493 555361979 998360756 453323854 260166195 972195059 824199364 34456833 691557325 432161762 44501889 93114600 848900163 235608829 457135399 170197388 804474256 99477541 475743528 850128228 790282570 331015718 765259316 948597582 460210922 467297847 746099525 726779165 890083076 950407264 452571995 122231726 162554763 954027424 419113322 978877578 883244881 173413073 746010808 421751259 824240909 146696021 637838361 826558851 741613358 221837348 336835119 253233274 335005855 745841824 413314949 754488529 420380345 110154029 754023989 661018547 628237142 816247690 251120403 973196046 847360973 182807986 560864792 193853279 409950666 737132263 944342459 736138133 788061071 540306167 997965168 92647439 475257580 115778082 485131848 114547034 562800230 683639022 774277331 707015707 218778066 528190190 495300152 723791099 213523442 556940509 408303184 327676501 435699463 50879048 824957453 582997049 821350627 589972474 739272882 133355848 409196126 200310892 711425975 499877384 867552521 562356899 30052385 407779267 674213951 493829057 39306165 412466568 477890820 532759182 90602937 527160399 325372941 320199881 443075076 157769435 441290080 805374055 470305360 286708817 390981673 853616736 368318435 500963601 390217364 187985264 354460288 357345904 990280834 633164612 550140096 292805191 663109934 643036548 864913525 191316762 334966742 290198293 629334663 558005863 96967753 912726441 493977665 154255382 517857417 722023714 279852424 92202303 605274033 423836553 677210048 571338766 8018487 764393923 14731796 1018327 196046783 907192923 268250530 588336998 85790351 803402584 611697546 738908505 358305907 585405680 20531905 923928667 178959192 843100191 674127567 258372813 760976193 61443489 111020288 247655666 541639011 21983946 49573216 522855653 611166738 847665423 554542687 430566238 683519512 282267330 761723124 315670413 404161795 217879299 486236859 117897349 633860061 314738167 82418030 15813591 911410848 482042503 14771849 970621601 177235923 50082158 160854662 141645339 68801760 532507321 782660527 368694965 81183015 33607851 562706786 899227216 287923170 888360621 385605566 702310032 751564025 914986453 209278588 686379362 346798334 579532938 337370903 403438193 779761205 953580011 934982838 161793805 623619781 944677180 990992680 503421428 177127190 322465534 562443846 140180015 597830196 846815257 433518666 422785472 777167070 474901770 422820676 559604973 654439622 585265665 485642665 482171445 197470925 903696885 146200588 682237393 900285412 618183706 142021433 601191585 135934097 846765 415855491 827318504 725395529 109732485 272488782 517462499 505972836 596389979 355396762 793911294 254798804 787998865 155320658 713159731 891959426 386179415 777428740 449284017 888814848 370140072 402881839 877602219 691939020 552498616 930312507 537657480 195053039 100851015 822220570 614891778 73307482 630911914 267273185 474386492 142967043 31668882 585316 250408464 832669140 718638822 577609051 743415566 136307069 359772378 258126076 357101725 467290922 832591318 225141910 555425129 234839860 150688382 733808535 13390988 43709339 778145338 71196641 969874150 389503821 177051465 853764414 989835470 77214621 59892500 585300549 242559380 791343635 554849780 714296895 275144779 350706954 471110307 445759016 763588679 836854022 42988124 239090015 438004255 249321712 462365399 258891783 651796469 136737967 94958701 782502776 328645607 357507588 894774195 289729676 727244644 706497170 992044597 263811492 726453213 478400058 586366910 963582161 582684081 652606424 495190415 598358075 649752750 899995985 224571060 201553722 931959433 114357453 160616323 626639906 69350270 606939243 806073470 360743918 128561138 511471554 88790213 238600469 685765788 454784589 123465917 127103904 241615218 997955993 349646140 687165499 636966674 479286603 173291356 176005807 869180803 730219338 111528348 203442583 34410422 778150547 396764464 699521206 135624570 918459470 620924671 666504968 115452419 223360514 338227395 4491670 615924049 700817874 349167552 419884461 161281846 288002144 488653795 986527937 878136532 672339315 373808483 703191765 131741705 781703075 289795118 613825228 108624770 897341749 42550402 171219266 356667303 990924730 417800160 409209778 870801820 816523829 29441786 838593043 574472785 64687236 97700190 623924106 80923337 382842625 592391050 794729168 935065742 532806271 370709860 975237761 584535813 661915534 982302827 667581500 865200932 432031941 816897212 232474897 696474592 485236064 53448407 425105125 828524854 566533996 849544166 554185855 363924162 602445890 836247252 744065897 207151092 952393275 570199334 387459899 441754491 622851971 248132631 583084832 110695833 81074045 341684035 622284794 734241027 652723868 81520374 168747635 835102021 875858743 487631794 185631205 605162408 391512866 158034680 551163545 794540345 237354368 103674229 879902377 361761778 211682325 262800190 294847332 692235302 967284484 806968507 394320080 20028154 133668118 68810298 683071990 611947540 794685028 151443379 686366266 400485131 61236098 323707601 689931921 526739784 250300854 75135670 466239256 816946248 649920957 212595212 511661513 147086458 455363930 595888323 144158724 230621571 689372919 692843357 692466469 247458435 674616046 563198623 540004147 983408769 585788235 963229 835833539 364749714 394009471 905837172 403740022 167505943 584109815 190780773 909615679 260900572 481884509 213224868 234715784 346563269 626886527 791335242 534468629 782308252 535916512 331739459 800457642 829095697 710814877 403299954 387913929 321488428 37219616 910592358 652474378 522126000 796935863 293328767 908170003 696957540 306249889 294212375 190025371 971270341 428703752 267389347 525819339 247991154 249419848 559593331 102072163 179974518 494040062 530757068 121737970 54065315 95728717 75518430 444618312 249926447 11699711 327502604 639756560 16782705 896493868 792186255 104117000 122872437 965746568 111840485 540229664 789241246 79310920 959551126 578534954 222975292 825348258 969396153 693560986 613715190 233254844 185928238 942017304 19682451 374977982 134597958 703099137 386191554 276189611 428753024 959871623 959704866 348835484 333152864 888883392 692469812 926468970 384537462 968784443 422149329 678066341 451997500 188206475 405809975 797895484 775663270 328110717 857163594 513081879 181268346 147105278 784087337 103779605 985825570 911240533 923733845 110288666 886179717 343363099 988393086 270988699 975960300 214767028 590564393 208500144 45762433 245435408 550278816 396506693 991357264 175586764 662634351 522433389 853539832 42829476 498430107 605402072 940788497 450198185 897690492 626366488 229652987 420569148 936842245 520161174 497219490 674611805 229903499 18610269 258454585 270715487 530740960 980782146 135442076 253027653 918184364 451495073 912773240 157729030 888712648 551531896 348031662 861424033 130536369 297896620 317563016 464317710 662973941 821586834 37400049 510151214 30106625 602965830 489749797 125630676 553112960 610360568 649246694 774467943 690342740 676034784 804869721 564909725 406331634 737601344 18225219 655236131 974129150 198418023 554219891 123643047 580960602 958731511 786560509 373781656 480825146 554338874 199950265 693048318 915674027 321381384 152728134 413559467 973776762 618114656 823176053 926893910 848983969 712431300 532927226 776857293 76575828 353212324 167714095 593063185 884039074 497620776 554104882 711331587 722274085 235347665 630195953 33403327 509753009 672443184 692712250 465570653 779656019 42525726 573123408 169228316 962268622 589483488 199226262 191831532 523426492 655578614 572174249 746157206 614000820 31740367 5891330 312167048 327316959 438390295 785602636 454476748 162852444 427137030 306600151 757416665 111378189 46604859 425566623 906760257 309829875 619749808 308116502 646413275 670828191 590954023 653805315 476332444 176560098 869297940 437335378 27947100 461034624 196116356 462651008 783668139 793197995 787383910 602840973 888369862 400327771 612712390 366847429 201118374 776116566 525233515 576176632 939343445 770491127 773053086 370211009 681233986 968200164 800394052 211023950 799825185 611766666 168452840 974862298 721630482 370137824 979634131 166883161 304770537 202234850 739321032 645825886 31044756 930136504 748154389 375951049 381997981 123895512 879743456 67139864 503558725 755841704 626681160 69009378 653025208 776814256 150891552 451928363 585888339 75699132 907309095 573553866 901575972 662322877 775827038 163647133 247801766 835756647 306214702 241658426 885931216 329519447 404749669 210497375 404585685 665961233 353587433 915551564 831938706 708093565 63682827 640845470 170102736 500294161 4913278 996741881 685415404 509633530 525036822 848515516 138269754 564154131 382514197 617776384 49008101 176286699 473329902 495993879 461101697 416486051 301109425 285134634 946754752 495141637 106536947 943818895 827907426 34303356 817890704 778329419 505157430 848434983 336890086 764172869 760943562 311200928 122435634 830872697 578289430 981122085 802178298 382141043 673130842 30737142 33881293 995744698 301958502 529512901 447942802 699981816 207906215 908136491 36532485 49756141 298269971 875111453 859944235 683124123 474924301 414222003 210359848 862683267 689241070 879064653 297014852 452121116 71621398 415350745 433793649 232672039 4297888 107308781 309347659 745891611 285071437 433724471 36697026 481002680 548965366 545002746 332806682 791675399 961475874 825060944 917217377 129980549 468018160 313847957 558119342 979327911 272268481 327311787 556918436 591537741 330468513 642737248 716577872 481493351 912410875 929516698 370997579 778584056 851072844 449376193 5889765 795857863 906869673 223310895 916827339 880707649 592511378 859371553 823677045 544872136 796146118 765506331 818421725 397112853 942309771 429959597 542946790 739940902 992080128 883715211 350573262 231410284 19258483 515349750 950837210 678627480 48317288 20313250 169640309 444594840 989185090 416413083 331432195 692870757 268217233 238421799 69912246 457353632 422301887 458852712 507646985 960276653 155661939 659921402 281292802 909043541 592620240 419225911 759255574 465529618 28489579 106762246 158662008 848355963 33065815 130911090 983076535 918947952 190125603 191036922 357373040 77107007 615029799 345759939 914956944 614099012 166035150 548893567 997934511 524747500 485278686 905914870 849283653 9292363 960905477 237509307 856862456 140928129 812092453 803887939 164341990 37308908 856958357 676639095 864897361 558596129 410405216 840214510 66657573 950743920 926033643 643883390 393666920 630274158 576200308 201982591 937831783 862342943 682419928 716582902 786599914 263243061 360644892 849731026 231993898 376190802 581289267 480834384 606759160 703847793 922600135 368254071 627276939 143604769 148632130 584564833 222258385 4296816 369079833 221961440 136746208 569759527 802355623 149556488 508156349 187689791 628221353 322640322 599980657 841410452 438451518 29277776 700054555 427061816 18778932 520878335 981684253 179664962 456782217 82298198 891318494 264195435 93257923 799871381 775932666 438619852 838271400 886235854 821597243 484812380 949481312 190089259 861188557 866967566 235672384 110163581 405517260 459092804 538027133 961816738 195485708 488839333 342623682 696058899 147191513 549367756 760721253 463402967 294777191 780254316 283547185 757874943 348395736 70020548 433259574 787467521 874753515 324619654 237853647 45937750 636672289 424901984 453053634 705341200 397485134 113002181 836285946 899045601 529089489 506131112 860243104 891566816 800753288 507723550 223559546 602919339 23877137 556569443 217718839 876373214 437491765 522234608 793443259 894032525 849978372 663290147 377791228 808326194 843242556 360101120 857989784 232683188 147088489 321580965 651076211 19319578 573181206 878316590 991044177 512710718 515013143 610607647 649058919 670187269 485324522 786261178 206426113 510843690 661146314 238953902 622944604 290132767 212414888 909373223 30737677 267166521 894308556 517870319 985648345 578541740 532608666 371502108 313549345 196761740 876936287 832156793 562921952 765179084 327858291 901783088 184754076 214543755 538949139 22716672 625603302 974026279 246020046 863852393 579167875 57522259 493165180 479770893 887885862 997056894 990344467 144605774 724175520 101140881 313497160 719613222 256241374 94566590 785261443 291211434 862225620 910469562 987053593 357975698 610981536 119937572 35991438 319721172 734940600 865357288 398675791 846367038 506901842 721149162 619525820 449512311 979652205 982254172 562442808 64275701 577315460 588700981 112433393 169861812 144224910 521951716 798191765 305249137 493887576 77412325 470418309 471289894 600090822 142845450 651067338 810595891 582082769 559997128 22494153 565328161 397781005 809494046 435597752 915290182 208632413 927691367 275400379 42564563 81602332 46116941 4152219 514057184 106160941 245330939 770876534 511101734 247547457 667003945 930041473 782581129 235023636 988084558 996612125 553531564 445400131 561085608 214826343 818556451 415140988 960180749 693434313 687290989 770131160 15924425 704750787 100953322 52492985 896774397 482911005 762304448 591109595 538210498 526788535 14383631 580032793 544760871 807726660 584583701 925419077 377764245 344373552 67340561 608495484 500981744 239755927 860943827 53857759 878678890 297194932 2108657 259176313 458775601 724262571 658499607 176386632 66834243 124536888 609901855 300283577 646556720 7903826 506814667 875098019 595756020 872635998 941462290 385213865 882602389 30674071 919176497 859307128 980098237 963631788 787986414 176813928 775104126 104540631 782660853 975663605 517012644 499370818 152984510 552074188 82181903 907119327 84631171 486082725 102529609 725879765 966467234 572733450 290907373 364087262 341696064 195306191 112351651 296465508 27422178 667371139 266464312 362801420 574489018 135050023 958775195 207322082 874038149 887449272 233283947 907689672 679804027 828483637 958116726 938932437 714973209 791547721 466061842 592216336 64233295 356629062 481723781 441538864 660435140 956880788 307641552 89523836 102709262 851378897 524207568 498840046 342878886 148932124 334088990 543996890 891307007 762179998 163094003 397585207 942103235 852786841 714116362 487420916 597382447 720225199 91485667 200444415 125020888 37604909 163431386 247815016 139346966 654278631 883309412 79070877 513650483 674640399 232389810 735839441 139560901 289769119 67250229 735776546 338789603 518814182 652559040 229154701 118951712 335018518 628581644 737915744 534554537 76609517 895911906 139085459 301869077 950560939 917975011 293263219 180353860 357636204 141069742 934208670 988165702 196198789 963670501 563563942 711798162 236542022 544476820 965636134 777630749 68394337 241199686 740817884 608590205 723835175 10857016 163391700 223949975 165554683 731794659 755692349 743680914 396138667 466406923 702710534 133621915 421129025 110530945 804060020 762531881 71707495 856939961 234422421 326847918 193702703 52888324 532080054 193837910 182806954 970198105 507275520 869090431 379731909 190088365 321937887 307413780 513278344 47118768 967278688 676267467 819784764 849531618 172471528 846714339 535403716 177635988 596436010 441154880 232805832 363505386 886009945 240004901 225937733 635919674 879458438 868468722 321617499 803657705 671694634 12544712 430215816 384695797 195097075 30838966 356387685 257542437 792402518 395386886 168482367 223856868 648926815 15584664 267487994 714915182 330258262 990152758 812371219 581394140 621900537 410122737 432099383 513759337 606627750 70440954 992942893 911387053 571868070 601451197 553455433 319596181 708083297 37469824 608761002 528889741 967754121 8134956 879199292 936715900 361307208 404319052 713633204 129654270 312250351 466754921 507382016 677080182 890393566 368373075 868331982 611192453 729757788 386596718 69716952 194009488 854396182 769555698 502560233 206721477 654147154 795347921 874446246 719544493 251474316 884804279 423671436 7850049 261344697 920875475 532817267 636519106 173743376 466347218 229480328 77933337 32384770 435158189 345164870 23657356 133427515 196805582 576574159 328999493 972805064 695424645 245733624 464564788 372826390 122202609 980457354 458889872 83597777 166437898 274962666 597454100 834416292 253661020 73908878 521772962 163627423 893654460 188209725 860688144 492984837 249367432 466210255 614978215 346133295 292658996 31184701 828322542 770489254 979442440 828078959 527669844 856346845 253313360 960697255 449608807 621418698 15503255 160868474 407598985 495187396 544157369 492546123 695106564 546661596 980333778 504123968 642999280 255180876 68504125 23158795 511598145 113230835 269633383 318664938 952892695 782696502 901305742 385672500 211535850 892840984 513786521 131553749 294981881 650054496 838266282 242876246 997033347 39487608 530219354 254097060 199614879 14977945 308879518 590116028 688913115 71101421 862226280 95082034 175429068 731907910 138783589 414773921 469910281 850588818 120317525 456174193 800051646 973201427 667391590 811767701 680302249 977797482 807877598 956107266 763360766 134612667 58789151 650254182 594595988 227486996 813721373 310353625 79342945 328326066 83853963 790105790 403317493 7600327 311402607 383203154 677835894 483530573 82331212 377933320 882002446 717243229 643628679 801416172 346430660 72175302 362444638 182270574 606734852 602848273 961946602 742906940 688418966 661852501 638078223 486296069 946349034 226867877 78711682 153996082 134219379 992054093 337438954 825364970 961103548 102418414 829580505 639893121 378749616 99699667 124985994 859977131 121940398 417412075 668330583 549071746 978472447 81299915 834350320 655276551 301854295 786067649 313754050 258595594 400778029 332547965 442869876 443378059 498340722 572426364 673295385 639167369 623683926 598225685 425474945 574320456 118409930 233456945 248224900 148484503 620286329 467527716 163144723 208437151 98946931 791030713 659667349 503981981 678335806 498560388 681599599 417490935 261435641 651942002 665290258 855916178 738823217 469073422 297669980 529806812 707627972 439334242 92253088 617943509 974907531 264544810 655756229 324259361 305430976 585217464 107968987 222162767 445022499 985657011 117086148 242841521 636436930 596312565 130906406 533793826 398761774 441768982 373579094 886035267 370211310 835017458 960007574 929812987 751634644 353513911 851711323 848519531 454630666 401246458 697353296 868068516 315060040 205577147 919467867 511996204 959938512 282076079 968207696 910322996 805875014 970673895 425945872 7620343 591088567 53178088 695314209 271876056 493548089 638632551 362713015 157203848 366090024 243079663 557589043 165130805 806698273 793389175 80356246 189588550 99260249 890387571 598982846 707398853 578787195 417600823 134732792 562855156 509179524 122814382 582680746 31818636 228290515 320953654 600342679 949261385 414036942 473195866 29154673 650935683 279720242 1850105 236179671 89948634 596049668 885278679 469286747 943449115 950173582 615424938 502374592 675500376 250442674 150923191 874294648 518399133 81016903 554863587 755189534 662720528 340887176 66800293 594605994 547830338 640941678 604756051 985743511 719206612 908205004 856004944 922351146 829483322 6725604 322649256 498735857 347700415 851128571 300818191 765163345 498493043 608122519 416978204 324919116 853136489 908662404 550125133 760243064 862440928 74686184 447715682 121025631 884161563 774384567 479286764 159648627 58413992 188599210 367416825 509178649 290246432 834395516 209471317 970251957 369764437 386175508 620536884 823133972 40337422 706520160 656230518 831242485 819667141 924110220 824920913 165889774 779981460 535205137 671802236 491493912 15731275 700015839 775469566 365496794 889779695 931967905 651334247 396808457 393808713 458456815 447223933 664989702 388966896 605438157 431574513 595751235 133657116 161515793 506171920 279194763 161438041 1053581 122970856 404136353 202586412 450185450 896182227 771036795 130078082 50172800 744587540 506136376 174914871 286912564 194732457 512501972 415942729 766140151 629453103 423313881 598550888 798862763 234266738 487434392 705788891 243056787 134216294 487337720 599305136 19138574 41845643 4442782 429003185 393435170 961338250 937415143 134338746 367467133 759971864 463594056 916622123 15896482 461005254 36252370 28432945 5644380 248034871 592015538 613717559 869068657 247619649 139816368 112994459 652987664 512190916 10735479 539051718 849830319 330581396 849878857 168187203 30597154 354308393 816360445 822128867 608961045 248412464 890163289 571883686 967812293 986125785 576028426 399884739 829859465 934894290 421630062 66029836 695454671 197721681 617999585 420430676 936228277 339317831 419076309 891485440 393392440 574377875 289950936 664829618 348048571 213730282 946972048 122634934 701517910 758546668 119937507 259491080 273891639 318569483 743304888 177735187 912481128 670721109 907900651 961375233 794457776 534848918 556459998 915346475 814118695 662444041 369172450 300073137 867033033 65474087 551240675 519520539 390919790 142523882 880169225 381239798 952205979 279331455 606805671 482887814 35159785 609381531 547244838 293885220 413427014 196852408 28027853 520607974 220060239 36747795 997437756 821184425 897211547 795380900 911209415 311001863 757738854 176360138 144612665 396231606 258094832 300620792 128029892 172110191 930185559 882031163 440420324 134749853 122656124 223880957 246619794 793084346 372753814 624007758 514343619 602172557 216604173 992517875 71232387 3674500 412686942 813739649 347651472 183704662 372365139 425351393 775212319 996258582 562410923 196771128 311676925 750403130 684429203 703281621 467336834 612762662 390804967 178240829 628517383 776803335 916031959 400312657 374168458 669986462 937196127 498217774 26890508 424622258 850590111 940509928 444758928 422975729 645722330 301884914 655487507 379111164 901084333 20812104 853305680 647167503 604321902 517848909 554313669 411425736 250643665 699405842 236632000 391751993 920796145 969389370 845825724 245767406 138195571 931739749 540145340 866403359 841367318 787730408 822015414 420327636 679247500 478760821 755245431 217184480 409175532 459865418 427060255 390290495 395532032 663093215 777147707 100654925 704688186 752047812 563201227 464634249 402248781 303223373 478858957 834255215 396176593 826683383 18341958 397745517 888341669 350772825 701305617 402045210 387370197 153852604 253199522 464628732 905181555 398566858 785991008 79049535 534258588 609436140 653487786 838244553 972557145 659564993 738740820 503798947 800002194 243661426 824085104 844908785 228198181 919244949 619577636 615135164 248149050 515129298 584134351 493088141 134119406 892499270 237386763 389332059 55426494 795314927 213790223 927393805 340216124 105469519 186583388 877547568 84734811 795499538 860192788 425731286 535913458 605257871 307874624 433592105 465873917 368745053 807253866 267602462 905580438 601445972 998569260 120290649 93855762 60994651 373520047 159595977 679906647 191289034 316826186 16368902 988768180 566178496 213493636 448454436 682625071 889250721 298721361 578136346 274770431 612829204 990100128 46422634 83196880 69295733 690003120 284199950 71256328 525513760 578242057 667509057 194607057 303649024 579762454 54885751 143026865 159594890 399850310 77525582 641420432 458751182 518147497 684144062 833331910 291726222 89844268 737098686 213832357 692421681 66332438 560255290 330818280 470572287 441750473 311449180 628443519 77600148 172199489 997788054 341645704 523598782 642960705 613830414 32404370 227259940 965840721 327807656 296201438 703461703 243406136 255924924 490225531 368469859 777499130 327846995 614697975 679474678 421893040 471719604 512349512 391764099 72040910 401218763 483965 437272498 385509866 310974460 694761702 984505417 298802983 71253495 183904298 884727864 484486015 907205403 702556351 409770393 845538193 258551481 224597995 761828733 690752718 467891093 373439287 307653839 518478420 642195520 946759779 394780689 55046421 115333346 811915135 709228372 853207390 560515072 2405610 347923515 628480383 289546801 951256339 746052871 185882830 503471521 155640384 748081808 428310734 631519859 42348868 277169095 69481515 915613952 495456185 938294012 98399685 263321609 796284803 210879536 224676601 631879090 192315812 536364929 553019707 370779404 147720591 553648841 29839235 19840735 312846339 181148220 132731821 784822279 781151527 435650852 65790749 507439585 486417244 314279371 298009580 73841981 826515269 412578794 152674794 51656824 382085816 6445990 587412838 721783151 599790829 92252646 372923146 183646091 582607362 162194476 352428123 737808696 118016311 288672030 64121163 353928172 556089482 29862543 658659731 533667731 278381381 700255256 253632795 951315280 826372880 372998301 198170881 394910450 283279413 886350540 587041750 172809166 430239511 996151503 390043912 771910282 723582271 219441484 64206149 901247481 416294768 403198679 898694301 128455782 833702755 712465747 978241796 85379523 998476798 234891260 547731444 938760277 260438463 514823315 647628721 501085955 785813390 848538358 27715678 994764403 975911177 127855447 924863141 901735309 306419010 82469036 7667928 365884195 430225517 751886931 80670713 722566637 452835881 149676599 976206325 109265276 135485526 584501015 398460877 148488701 428015667 973645265 963145965 698147386 831031975 890179390 252786651 911236618 432018460 856471836 813765815 836951457 832594662 413517159 47903270 164566531 278793641 16166584 771639416 799269182 315030947 205015562 412700950 757698229 671459291 43437009 968830627 564159402 413458800 286510635 161757897 950731070 3481941 124404161 951487390 21164646 137337686 891683257 209279724 548205950 609868229 443511815 442967751 351369550 606108338 463933619 233705625 565246320 536491649 864476080 2830820 219186795 213321515 56436995 123375865 647176577 512417009 847349795 362584411 71657362 998700769 637717207 546522606 501055619 127531669 965842978 579885218 718223717 911951029 190290914 333858175 583603370 73881828 556907927 469715884 247952797 412469918 140389272 300593061 80522646 502826241 888821010 351428693 291789219 48166322 592230428 531562556 118679184 646628468 307045519 757009322 49098661 556828528 165926925 431937401 462001052 535351969 825878679 179458532 213220444 97960780 387944729 97855646 822653159 621448098 623989854 364376463 894065419 984110712 166545480 794825327 677283750 504663416 177178078 844692837 638053708 554545906 315762875 266701149 329018144 375108649 3220156 206911883 548137649 536522257 777825695 347892656 924607190 962902803 231006029 380748563 769293365 840359210 849712588 289193403 759508937 736342432 192283420 591298442 980675357 893837047 462037072 51012435 790100874 217229153 222280086 138619569 572304437 795686669 601252278 573526900 925310809 74518255 450180083 616759036 847576279 967958910 160893307 761093450 399810319 471332125 759893558 16312452 356214623 782372115 883292511 296864530 822461396 601310130 126172297 430346935 782535442 549855520 402547126 813386863 811433653 903302864 102264779 598926805 721278333 699883155 793566780 3762415 935864954 817283032 297365327 203340408 345935461 7835908 496731425 979558222 597868323 215471409 685504799 497711813 479106471 457301858 720668115 692697379 408179203 204630636 900259071 25610071 529357584 560625856 526780135 761579244 650688385 136515193 623755709 826686437 422677888 779110427 758216247 260673844 139132472 610500545 761816399 803798600 316532211 67651629 614818113 785329711 609906705 39778499 896420629 734934464 612366159 216681351 20009528 908970321 608826850 361815213 922452693 235740782 69841239 56536993 526860933 843501631 723337561 679193859 514629650 797377974 98019707 184114665 284002225 758901692 461307177 895288591 997665613 603496599 957506379 149403574 252262702 316388121 733021895 132723192 140899707 583334923 685892511 326499334 817937059 505547220 283517211 705949413 974385505 937518272 198325887 723625430 967230523 217061153 401688092 37658633 363752009 694503118 675318378 113338054 872253339 485402519 84396422 939027984 185839171 288131639 544007492 886429027 772036860 474501412 808133323 432074652 717220942 105709821 299717666 530079569 397894452 846976562 562857542 988399596 452383580 285401234 975771780 929825541 661452889 104340087 599126156 829244927 843447971 815053037 241171165 496596383 222002581 453683386 34447898 362253224 222004080 194929192 694517132 745456164 165436376 534371112 633927185 106649323 413009032 731683623 657544859 246327544 710406711 327324351 158664085 452966520 251076791 768706500 38447904 438589237 914392585 324660173 141138764 709115838 825027159 938202366 448941493 989930296 415813371 128566699 20006540 107224044 434534112 609164587 955393429 367134503 289376785 649886674 361487292 457108814 360185823 347155975 336544900 6352106 956764857 516603181 280644214 687853598 433403360 195820994 905077149 755456551 551079595 245020895 717201235 635691763 956624480 537667794 809857374 458744227 63521632 320969590 51133499 992760501 461611760 602012519 73879917 361202398 603801486 649127095 593422340 46227082 108230466 952886147 83973988 963608770 959141339 7601209 624947018 664471260 723935456 916047134 67606566 963002016 884321690 681306736 274346488 23522495 146160005 496382963 299159304 102420450 607527869 598260546 112557161 718275026 932260736 426995459 591851766 199413601 324376584 943573504 728429510 53254957 537781511 498869009 866864036 680870261 802334501 456744155 201047244 701395743 426958412 259226181 384022062 818999826 648873962 970488673 444600853 922081848 172348614 559092870 54957429 335991422 793679000 499340785 767854144 760547265 836038834 237868103 889960208 373047628 210411858 244786559 250521489 31647588 546456780 183736335 380637900 859153485 531131421 337321559 707071213 967737571 636162214 28031673 413049798 232664780 400920736 15563905 209879200 257584441 421703397 588420286 346865325 669252633 49952410 851023888 415340184 500112458 354225869 87551427 722404452 649362746 502922807 378584677 435855971 847590564 175311953 873574922 548137812 345468771 298010446 513270827 852391322 247374811 530475935 978788418 948000550 65009018 164138801 226106846 882185263 826523898 619829213 722847659 28037705 25768452 823158909 488899194 182981441 854269290 268959412 948529576 683344677 661142433 579224249 621623599 378659630 119968967 818302983 798799007 393906485 421936032 329673019 94826799 575687007 464473944 815416551 768778292 910810927 938341741 400834806 55867541 345816634 462045185 918618846 529138852 825626851 747739771 803836649 898546958 681762066 138420337 84390955 809343226 269449782 154561059 660556303 438144872 4412292 472512751 139305956 34912814 775154137 139915935 866195136 99321060 804862500 360362403 794527898 558645592 510993389 767600638 732681611 639382943 659721618 146204215 1084750 829350689 566301207 403080593 981503913 772182553 29549155 898548084 282095653 697302042 622973417 954234189 579646506 891243716 305852958 31924891 645840948 960167915 381476285 800524963 864467673 130401429 420345794 832102366 416227099 86491855 38143494 114324641 269727655 392243598 123716804 59089280 704317740 185389460 134191413 169042478 586965831 956879516 808745503 485328882 275956292 708197707 168760516 385354400 322936903 773006354 21950270 335302481 787608941 927131491 686058155 236825084 188340451 311100726 593293303 400013365 66249467 65801678 862489209 255123637 566429135 993054308 115589471 985769368 364310275 997956974 854975250 724586889 72947671 197087325 581797237 854673061 673946764 414436615 335251934 259608607 309661555 339708637 859791082 614598393 895000738 372559367 717162352 291586751 791527187 450433156 624033404 871803404 223945508 46546011 561722937 376642135 36520060 298506437 614402486 60533497 789795341 793091041 631879853 611724915 440228017 292314592 228133473 926709756 745506573 244514928 963486370 802382298 666190848 452335176 977907603 759956443 161518021 87330008 55497551 316923084 818228710 119082936 758217418 771808387 243469883 921204241 990502358 278602437 378738538 194765155 501569603 669651684 79898840 726041865 968527473 314159537 624438961 615412646 90753694 848311527 570082291 9195914 165505018 120183474 853918704 896681303 408190367 307533860 248339984 536807138 508963987 800460659 956097461 723241404 866135364 257588603 23343185 685194790 867700656 854122484 744882430 695709639 962882686 288107782 389065150 904559616 313116351 879030830 168160454 139441177 82196286 577177192 337891834 317473443 423730201 379997399 889205125 86660179 450756316 874790994 161594522 701239138 658865798 995363378 219953572 596496002 279852045 117207551 571954417 169016143 121558167 956510855 498153768 598966428 66067136 174783883 543517963 243345336 515203457 624806720 307528268 148549523 563489094 197376450 826817602 544084943 807203567 306235991 470092353 201051432 656063591 842375709 150742684 544750730 70772004 609362580 679589516 430986379 147420036 206534290 539242103 359709708 983100952 744374355 506250212 311475124 417753045 93278618 48048052 692438233 95792647 822859403 879025916 726111547 94277957 178652208 380100413 217736222 581281664 593239733 446306439 22382396 51010118 280724729 144549212 140189270 863736663 792617527 530777457 485341873 991228158 851830313 634930175 465365197 682459512 946416783 214153649 100091496 733028100 728563020 398535279 592077615 581083195 161129778 577311383 292134417 271581947 292719014 81588259 457569779 364330550 930569240 632405396 709064296 145140466 248115805 342018686 177482204 773519815 632785579 694533424 646015037 682623134 86139197 751052458 794913130 437548823 66013761 154722683 526640567 280754298 590513158 232544266 3500622 658789002 126216568 486823360 126601559 915919102 890820324 365231087 537727956 148448666 844453321 959587918 444176188 574095411 678288246 695645700 212064042 190714596 770260542 846845917 190224229 578169026 975480870 770782989 114606489 912525381 216677537 98850303 18993329 682603501 128526415 935388218 842768809 380463428 955734423 483230742 318027484 685203241 947627553 344367475 764200611 291502546 494757345 783596848 903402431 473057268 766243160 738211375 166310957 443126169 921931677 918128074 796311654 67696881 310134802 81079969 150525136 84072663 331161726 475274975 453667962 869516509 962012336 4197178 680654870 629361939 877432839 751426673 517929467 839521029 410617118 808082211 288724433 566125063 296221491 630696465 987482582 500535385 275270547 967372528 589093579 713002516 146090865 917386428 580890178 642441120 902213737 971277179 17033796 127788296 425914703 15653594 831904502 360768344 833579093 570054944 328124105 59132375 356888632 337451975 474992608 713616048 576010591 15869512 644071205 657108498 193348751 29983309 638312749 171017913 864604832 657363312 75274332 851609653 719023267 823331287 962559541 898111983 336634366 382257986 655975343 177269483 264910446 320877478 257266631 44013953 664540179 963125926 921808045 891807834 141832314 888256435 808993944 448089758 637417135 617930631 999051842 438352542 142065427 152506315 867984521 32837752 367603808 111245002 690716549 136249631 119594441 801981344 706883803 443997898 929107592 634668402 680118151 573840393 667937692 841758570 812098610 721804644 553321266 949309925 983023329 364409106 168362818 226152278 675375733 287355400 783103337 996027846 276388408 130428383 982251969 512524386 301060100 858296008 919516958 858228993 714396388 422810756 593209742 94795052 898383707 705494209 452199804 826151256 346476999 86233067 3631046 255390166 802274765 653982416 383666832 603585159 838589261 667645842 267799669 744946346 544595066 428209913 19056982 677133806 478827519 653157898 428740804 802269195 257914302 506296719 919126239 803582780 805775115 57386154 113342379 825373390 431273799 154189869 664245351 509142475 675301115 422250810 485745888 578656642 759027293 861088473 43790028 478227859 485993990 580095296 234216806 671684845 133020780 820401659 484904658 705556102 416811007 578406092 924052156 23061164 558711377 608303324 487933553 39559617 421201369 460003044 515904699 286865505 34392897 188683566 135392230 79250103 722048539 472493698 615720798 979105906 805088899 790440854 890785779 499493006 55637043 89529258 434272034 430544070 166144955 961705671 879680633 264679232 727495267 316595805 852858912 382154325 128517961 24907555 871306622 835487283 695499946 988612925 86244965 781529873 718250756 539704797 499427498 113420292 982265023 666684145 840349910 27409228 72308503 314317470 322953269 529380976 860951259 242498004 76880107 472832133 462102413 397892837 902958265 480610106 697191387 584114387 692296782 492275132 823194137 417273971 877180466 463056163 521328551 859874845 948308154 901045626 665154245 490987711 837699208 745440186 100287562 328454187 850875444 691479483 844993395 533248274 441893179 517136431 885523774 713499493 850237697 898035494 60738174 953678523 31153917 932748542 91435226 461346987 220763057 673158868 402018462 632059207 953585289 82706724 800235077 511716447 870875798 166746126 786115328 423656111 155133240 209677625 555966406 772052623 548800855 713242260 574763429 76981738 986133099 994483266 837015117 245018568 876479407 108421502 136226275 990076510 906668986 946553974 283624368 167113155 128246539 782651031 585418406 547953680 822584683 61949275 220442320 171321332 555917272 19522954 658683447 89755605 924797473 769067596 572684145 962856964 743660335 379555757 717088261 397759158 676097697 223839472 149153623 996825938 905476177 715258294 794631065 244891686 637990545 782814162 601653250 593436911 674309468 10441067 391867212 669640689 548111019 403173905 765005216 465211702 921880449 324421671 577236802 437733896 755527033 88122343 122640653 171111410 645233066 228348943 842386198 588497256 575821433 172323720 152383521 953828257 191306298 427873844 926204093 607692332 108720130 158940417 929774177 842328145 282714191 815270097 94806092 806620828 840238514 473649268 477249807 927837481 689436241 748510094 898352486 159399113 518779901 235727121 248568546 247121171 602542358 956319537 307877582 157696459 719505969 801905984 615302864 858496839 861908951 869070067 971083398 804253940 438632768 502863530 308820313 979298684 895097899 986797332 837672559 709741623 83296180 12051902 464093781 137520052 986966790 173028646 15049541 278600365 774854983 2991417 957785241 112082973 436640092 805992077 165827544 312306891 372846025 990969627 197160581 45971673 152106620 157063050 847178537 559378135 551989757 599081006 516335751 563476479 937814086 386279821 30253378 556177657 377395543 907324287 123208378 871141092 682403119 708029519 83094213 35047923 849533712 548591707 685391913 347148128 414402050 502447771 46929980 346401252 610310822 967577314 675229613 492884978 499011933 449346714 262662771 955438695 905646015 936235847 754189657 901281190 840649329 361919044 450004597 589759156 722995861 901500846 559435151 710256944 672448198 858723189 139257118 240956222 905313181 941332379 320579895 379821658 68356192 862851680 640825728 22474526 993527093 153623477 208903988 1497844 393397457 976776110 596032876 96743392 459759264 785881858 229024129 651839035 309541546 535796945 689139203 826945366 175687990 133968905 969861917 868725726 763259855 823044851 477504805 742626699 506633772 366274037 497822078 71555586 709023733 7354904 796514559 936611794 434992525 383017021 868921707 600020359 344857544 460099144 355235035 791957780 817348557 381576146 955212624 314260401 862037559 596913409 717712892 278259373 149101007 956735281 108760889 17343490 209242722 959544142 871627824 378758572 356554261 37596230 857315216 816199867 172552024 506764964 959724764 77950254 356246812 186044925 507447796 570150644 7151013 717504542 144927153 83084166 469820506 99322204 823868149 800308859 749186604 989658580 429591255 619630507 593154700 993606498 777295976 431155516 60712625 428611529 570645226 502282380 281874016 87440854 787319384 629189791 456510906 66066863 349792216 58344361 684415998 1449276 314714817 926052558 396360302 393064348 596666700 630562747 813548843 441955511 827628514 856217738 452930972 787140447 453555164 648196402 736645251 483784957 20950018 654126460 211170538 272241619 864242566 149230429 871473020 552950473 625043850 561624918 546338462 745427179 347411721 964216103 18784802 749075727 328159185 191148420 178362710 412993190 831340186 655957719 835846296 597594871 344961258 415458308 416600230 4436725 416967795 539424817 182541813 370666517 662245763 762965710 170025705 205747999 227295063 284085538 994100739 814933395 356776691 892574365 808800032 90988613 632555591 695453801 939998541 134067761 904558150 505538397 157365384 879985199 287007703 806709009 992292654 42533968 841362084 481474188 640081859 578240080 835421597 976308604 643349850 871700263 961904813 541914088 856267454 348302431 432383132 981206524 836002046 364217987 636407244 312105177 368764539 999326889 373754323 768883654 895477087 202794590 793109059 737949541 138537281 471695984 891733812 522443892 705922360 37634886 913421593 764423804 711675484 700441767 228728389 291127816 466554226 159019727 949661900 967436403 480094868 316428074 944788808 386176633 315126965 29986131 509798345 675676086 750544447 692635124 437514945 89311216 218602119 106119910 162278968 699863289 506884581 772887855 717513470 142031549 187791430 117182768 658330776 917893682 443893882 447881317 128857994 23369872 692836596 187042238 836563821 898280017 591798112 605942299 734700698 152204631 8294367 654054744 758215799 507840637 825581687 343426951 538186496 532748079 744673057 879475096 247476287 740446478 979290601 798542699 320190070 994667407 415535223 66600425 772225652 491422477 419878353 397886050 303578313 48552052 403165974 164657868 869984949 777888097 206098554 738262581 171824320 12030269 363808801 720322303 537387713 916471516 823009712 398620228 538097349 874237967 505635568 218533988 42111849 542432689 5566501 743849560 141117720 608075239 609920198 365201591 669713212 916794849 252095985 629484099 598766379 873713066 967791165 376233873 691007545 214862955 897883257 526919191 687845678 643299036 832019103 303514967 495869078 58165674 989630619 865280168 425083361 348720874 30113238 999681190 581934659 6007623 424131336 975719258 482257181 562495950 411494616 123264025 491956219 514922343 440199808 821124868 745560074 258163777 958950208 604804643 379967802 844815773 583342789 903330044 711565100 712332470 273611754 783464107 875796546 149271548 273926557 323864505 406699988 630038670 436021397 331022071 449606451 971395643 81449283 242384700 167872393 725774432 880932633 434470294 519660193 720653409 863224736 27444582 843426864 511565035 908392699 464113310 609947687 378160153 710934802 145295748 854353670 278637650 958557698 813130611 975071520 124489701 573500879 748694499 277441423 437162558 642918668 704341924 402851906 477849856 65828859 34793817 624238815 607345821 521956841 569141758 644607725 525683476 171861048 406982552 224399559 98205934 623475929 738896676 347614812 434467900 1734928 371732435 866434881 18441567 276211205 448565188 861230932 13540156 718668043 415749833 483430859 704647688 615014019 108172402 465713884 15949025 360426932 830498660 32831802 630132843 793560330 922483303 256173967 552126881 754970881 736407801 288090675 30943724 983787163 818016280 461203977 444177336 193075208 886722957 345581479 283788242 18768709 220247506 29157864 978778095 233083500 755184545 18137242 965881226 440077898 420344541 873336187 145991254 572246375 111806493 967532584 728582394 758832700 281799364 201783412 491804783 988050731 168079576 812133378 168034497 433549283 531552276 339602474 615694720 830687868 957472072 677361787 194411774 66752565 350227248 55643195 458429375 903779697 991643766 367023193 53931778 690367343 470253353 162141403 874921105 711092426 547876920 812583705 484542876 450121454 530440480 140043261 831757559 985127059 992156741 681306333 36274635 518616011 482374366 42016341 566698552 731909368 492358845 863646111 579468170 211049599 336803725 914447219 834597006 802351075 664709879 837198214 747056764 265280098 986276187 598704950 538409836 999615155 106754132 231958344 128460311 963229413 964079211 834921544 281021383 369486535 734553705 939939886 541000873 497374713 307645905 59729497 109217908 527524144 882582766 123078488 935567981 27402892 122419162 883635590 332503798 169821068 126317757 580804735 407120893 220040694 428024073 860094150 368508886 513057090 117875833 931107806 592540190 358609451 6233563 472310693 377892157 90277142 951004227 124498633 678907236 174439397 923614688 549839313 683958190 791912294 546133053 193522709 9497785 486320503 843234723 512777014 371937144 701996873 493124462 63128240 478385450 341760824 89825098 465606036 466679308 616680617 516409123 371580463 236424954 707607209 558700763 173313635 720812686 373254070 832827017 832874339 390495342 446429641 48510646 35457745 373342 421337678 801631882 421693722 152827494 537590444 385613624 475539491 588627500 824749278 677036732 558289982 328895321 751338127 201061114 879162115 791366521 3331614 334602859 441289285 873140810 804295889 635861531 521404095 93538560 716624534 117057260 390574225 481347473 58907818 3810820 695121051 7713382 731932022 318568226 367122191 960378002 552326782 821205864 339178640 960278040 213506010 163090280 832739904 868936666 542024926 915673191 245138931 441870574 462937829 415672446 125534458 794581480 897492935 623191293 17526049 988723626 89419977 619664902 776179121 858686166 924467286 853065238 544100691 51369922 724419877 208997488 80526389 617386202 72780548 445097336 943082054 817740185 365446166 821340899 174040685 485090553 535598207 957728135 323600273 337353101 324798143 811068257 396262556 228570548 292839307 297267356 727280982 462411857 197186204 144234559 735817901 131086091 690018743 803151913 135723927 738880780 341802290 788473561 311676117 195769679 590371098 200307793 998399635 207000809 988196191 609919187 888947659 505938717 325631316 212401547 55092961 507291826 755443303 86078340 421714155 315015615 655769484 34164392 293703278 903056729 533618870 316780465 4421659 364002310 91893724 509377589 459145283 823663626 930675746 254318883 748414845 571078020 943095944 645759469 410371121 484270373 393253814 883306471 110824853 108856664 112624507 683329880 490187360 60195805 800887840 913476337 836059286 187061563 498640797 470676923 896289674 574134868 939444763 857190073 272288836 477741991 538219574 241731044 211294240 487830445 936622653 814420081 945367740 365358354 823149169 702241136 492820894 206831073 734861225 950730934 320039683 384977692 92205910 381867366 823119023 353189989 900630222 852555404 371057492 837880760 665207775 952372687 931991414 325916862 169491441 689154683 603345766 778494721 449305024 535101130 226328976 61781585 977035795 355348534 726319227 78902300 13688982 566153216 94168925 517742192 145671691 250290965 334093794 100031036 896961456 816189127 292332718 770667421 224173251 348215223 536009913 346916697 367540355 20561492 292820104 848322293 565414622 699435196 759810096 975677228 277421765 427632789 467744769 143266944 44141916 817913550 503686556 462482554 293254557 30173922 818123391 81902088 661523848 634210860 453566779 363909014 200967730 469355861 913020805 945412066 542893867 251551937 741057351 746352319 852113150 256633450 509865551 648524330 439837502 438095083 965292674 798094456 331421484 665873073 205721485 821854712 742687272 950875871 660788885 60899474 972338157 142621073 647082278 282326553 652161331 37430090 643008293 670794893 839327761 739880375 412482115 876212288 434449939 423162864 345000533 171963834 640070692 22599046 517250038 669989140 216670824 296406974 653462906 753371927 59855993 164064021 557567289 600694696 25407155 867729966 43015251 448457022 701510224 975702374 313600440 113546764 929524558 796186907 711423117 394387454 730486467 976098020 302897181 554514861 386876253 703375638 96645995 441253805 658804237 138685712 879480022 353816978 348308561 804382582 98351027 934582603 503490141 148740744 47612095 788613424 952214889 299723364 229625239 880046849 785072173 182761994 779141408 496279453 372167003 907139421 19811387 775128162 50005150 936169631 716368073 34295251 549929119 610556104 581554828 653514368 585982771 294195907 565712497 358140716 792817914 44020799 590436228 26601793 107892943 313446389 757890328 50556189 443784553 921764470 241855054 217815714 397122865 610265804 860676531 510871265 61375902 659302726 394896755 394744086 727423662 50591040 75821875 475370060 385959326 272714823 414224238 828789680 93293640 890341946 876848631 306713959 365176417 256028370 265575108 364529155 135430845 77742793 233248693 900855385 747908412 238055306 915165893 70105150 528940919 147926551 575772512 568147937 529199565 958750228 735803165 459582838 471417652 205134747 428065955 726414401 625451688 996683305 518060932 363307197 75772039 522640903 855296218 462455354 174644874 28492930 530850686 829712017 568631086 824502647 839089821 28385659 748217185 991098108 13935805 421141525 522301548 316030779 738535115 368030046 632404498 680086205 511975841 338803309 34378429 117195125 502225460 65717051 507414298 751249203 149265681 381582865 190257740 731231984 488308640 462052495 128414386 518586449 393356548 36634738 636951341 555375930 580323433 693509967 469868306 326663918 134689587 702164888 75789860 429374167 963614173 380673108 662591868 910234290 566349194 249822123 848525287 303189361 962179500 98050952 149160163 43214701 660894420 822854190 771380415 39632954 144702665 216955519 644321529 648277642 622260467 86011768 799781895 952742791 946110950 503521047 122390739 324356364 290225196 779703714 448628762 831650104 793145971 543150794 411773187 636721087 44709917 203358476 996883092 364738742 352231113 34470804 529869836 427353840 443558034 640966923 175972402 874749999 287731035 407459658 179733428 308962541 936284854 478916488 879794472 186566085 661728664 734959179 291140354 9765388 709261702 944713000 296589409 284072248 361932344 376408327 71126808 3266177 767277591 211578029 3377104 579703335 631409991 290561798 319863070 552255964 591341071 208287535 855464839 917637940 188084601 708982189 937122355 288146070 631855321 519520954 882900827 481173511 214499350 864428351 462226133 13046788 824796924 754339221 642737932 285540980 380905861 307217037 821150190 101971957 515967216 539518203 297830881 355206677 510881513 886072884 387874992 689656947 313969942 62902069 477987920 224465686 493782408 985026729 176660492 11565278 189195547 239159647 504652886 468695791 907868427 877034847 866518965 233918303 69498984 741024714 139496393 824012958 61281109 580401748 58282586 985514956 396498384 93433497 749831973 665366475 177773485 389044558 923642399 249412837 573929789 839300959 859793556 568190987 72996308 236365480 985139434 395427124 161411371 701659135 640496466 239858641 836517358 790252862 806388734 231616869 114931655 406977251 602988598 669509855 285964136 177381732 203747926 594943267 985960442 138109648 730408434 380498160 880334538 560760701 375620763 529094170 881952528 11132344 736925045 10745160 423216632 373204496 887666253 261163994 369452509 352104139 571313960 292683702 589357273 562415532 384680536 353726728 926917991 526614924 199345838 346893577 73831106 625558445 906014750 704044076 340304656 727281071 914642248 421778161 84740458 245372680 545256066 334159276 314187088 666560421 702617084 103064283 482001269 230607315 275234699 782285299 479205495 786293447 371173017 375369705 645506283 426258646 699566104 683368854 502602943 120603499 412076484 621964720 797293277 497965749 188254310 989469414 556674935 279853140 167638756 522922813 394557836 15671163 909414484 158895040 127330571 818473595 202498988 245925105 485118592 455199286 492405847 283028784 677051684 126648565 690013757 148994021 938518491 799998724 485443452 436867456 858959063 293898147 701222569 946019952 174239286 959083986 771100012 927536084 215163712 171554115 840998731 570616438 658315757 397412661 180491899 358704595 870482730 910646340 705735547 717344791 122690763 562973311 552374986 960733827 723668979 69723287 774647594 186379228 875881079 463548456 222944123 355960050 100976484 458850620 716977991 343272947 231936554 78068542 375316046 652574317 864727648 81053449 288387535 846251122 747771505 58157586 402784648 130068361 244143088 1618082 543198252 549224720 870741351 904284301 245224616 485814131 693393865 241335418 596926672 889051578 61808478 791537286 609596087 386280461 715847107 149830980 52412524 534342529 426266538 160258588 81024675 302884853 697318128 185445800 982590701 180620291 804072864 448080039 216288359 746718385 65782999 596827824 442547816 217957656 930525634 40548722 275362073 179541022 472886568 992147433 753077030 79352367 561140700 515806601 156832674 662921296 480599538 432300675 2110788 577621477 12953653 528991807 435431376 391105985 542172241 705901403 132739510 156673421 260598492 445045901 862500292 208110478 717141044 591485323 411501594 698109428 727604585 928785359 515017973 341135787 240839508 993100876 831694351 755291652 477801289 386925747 176191063 790176085 512774649 166991783 582819388 841689016 725962030 232659045 220831607 67219839 919956740 290937135 693443446 121365048 166445908 96138496 729139962 29488512 695048000 295859614 173892979 488085347 904473781 526964764 501218289 70780855 71754825 91218533 130176548 485993957 964770373 75783475 911700465 162127539 2925777 360433984 401544748 505141481 499523102 628786723 273561949 704056227 969582925 486210909 87167262 100146155 890369545 228885192 422662311 882865598 448320242 560290712 903325930 290970177 434685670 988183589 6927251 419682485 839851164 333774492 571184798 576532091 878330035 109213829 383870194 543810169 990967546 827710916 441771214 75876017 916186266 800077691 100616282 351888942 407264844 51734085 39271043 393222178 768476650 551774369 712306102 772413095 32423577 504922266 613816205 830864987 781210539 839688130 59479774 594539228 602884183 391180187 288027026 763384108 929144356 510005477 687009072 969047438 926538718 135551539 492430627 634253671 526404512 122294731 166993671 641574821 299337298 217061278 167097081 793069482 171063907 368751395 75657799 721483137 580620195 98895902 111702609 761137066 584626160 405967481 402385350 364421707 108674536 167375466 145150849 633021387 635319354 983835145 199158134 372201039 231191204 618719631 864164182 563353600 240545788 957390553 209060736 170439585 84860179 528756524 468512557 670133257 940644918 769260925 39641876 359780331 476973254 916953762 471757025 779100130 120189613 719808825 19512408 854635734 1776935 870289501 161715144 463780102 364895100 518218861 618171955 95575945 145659090 552296407 415568633 56143817 69728442 118823742 33314081 327187923 647891573 28378285 878402245 304032006 842167168 279681667 632865970 138492367 880278157 888358960 653392650 437646922 902517515 479248117 488108000 614338341 262981345 910841038 846424538 959116830 549959056 150035045 533626920 568597510 905917034 997578173 151045536 260259587 249956278 75395238 671368757 372139888 634296171 872031827 249742374 677622850 725134284 336384804 843380577 532550389 144633610 762773606 746459052 611863113 463702738 390023481 292109155 179695494 80315619 891256408 532571762 253008122 161866605 704933032 573422543 103720968 225797314 890289530 631853902 717113830 741089002 278394223 455698337 912917235 613113941 294617997 578870234 983144432 315158644 808167603 31107509 195414066 732292068 513630457 59110378 794007442 78298038 897623614 105317490 456506755 86047275 452798587 614006455 708131300 219638480 104335178 163393421 295515501 912993560 796794251 201271248 215116237 828236439 308219515 593804083 763227288 951046378 224890506 867124062 541629397 624685401 921968573 453838337 923256913 430200909 687520021 138215239 820746837 236910837 613786436 901524802 365123945 215485572 146477298 656429892 419053571 992252484 794424894 416276117 951665887 922946129 264960445 541627013 588832866 785088308 734554865 663369105 897003097 655095761 851190733 151287981 522688338 59019975 634135399 743346773 571720757 83200422 883711126 64892723 136368285 210190784 181579575 183898004 43815638 326152017 266855163 955206447 548600732 668924867 484464280 195489863 661970940 590258418 710463628 571272942 648700612 535881153 472687131 890507602 450937837 100527814 329915223 711447436 910629693 757736197 847592906 385326779 439694135 652244258 814565410 189899823 406318920 33075317 937970989 992748667 531785387 996675988 537915723 502831221 293106675 873760955 122961945 90689353 476337053 920793826 220160240 553029568 874383567 735484942 514772245 322504635 596940530 152119104 879814114 553929960 660863384 539099256 98395348 10539720 472898070 391242488 149821277 665915858 296761152 72207229 319704970 131598665 26278272 292940990 219326268 763053277 764672132 7151520 193994335 634165225 364920929 714672831 746165837 275542746 730013033 16780917 395406061 924675590 882429880 67639696 817703680 916661626 502571508 694179585 206993467 826195524 298407387 877510064 267172455 719878036 661032348 97883047 833491558 645889454 85062463 753844538 933452372 378981119 794548314 457074545 33047969 8469622 864397946 924726256 72857654 371967133 882959822 215287858 465318198 753836727 917578528 168826843 564551720 122060512 294788399 517820114 144438270 691575259 799918718 776624147 478744611 725266277 103333812 232270126 958729983 161557999 751856595 416375771 667670335 798795288 421893005 864506185 124592843 585402235 15067223 782142217 933722470 26885574 502400655 212654570 546202933 949256660 119393487 339711535 567001940 252285952 19582345 918938658 243499698 958164245 364675811 593739272 760432289 992930735 384249759 766424928 580611581 573280624 668375851 696362652 576378033 800229857 269266557 611061033 788505455 489374005 68688153 898254772 45810340 273928053 80101453 877835820 271265399 608644604 680628220 502082476 731896831 374670182 794449120 776369403 646481132 398292533 706978502 384532425 623289758 517502673 980597053 956966563 532750026 558228580 734188959 816838343 292840786 789941419 988480344 67572488 196877912 469174139 512896813 289149097 915932307 203659283 822182778 143312150 934879797 53755730 800652524 102746214 556831921 652664193 85093740 755835115 80672689 184933109 173321731 424237244 682444384 407724145 248822627 74524204 349232416 33322912 413058108 721725991 15465168 462508726 464340394 459342148 761782371 664579255 353964695 198605707 335705669 642352626 723853001 788609614 849165719 816447259 166188946 642405662 557404620 11535035 259228797 610528732 575799394 645436201 151913715 589032849 257490305 887903548 184101475 351059873 912536112 397691593 208983841 672360561 349050065 425314346 597295351 2717442 667642772 787800872 719668266 65127201 184143474 654642143 710413812 192885873 364212833 882673293 213088852 612738741 109283526 518787271 358463775 804302662 637650207 50027436 627380628 193968783 446896409 502360210 302198788 488060716 920610676 570047391 819945760 217294827 291072068 105305735 603105093 974379174 707950501 863529765 829352369 990375683 99290242 362926832 362116906 794714320 539037298 73866179 966696732 292323391 603826832 398283723 293047320 128507340 540783139 313357514 650952218 695097886 924087734 156274809 605688577 895063110 785957963 513954839 965192677 469532352 797517716 251820270 411819586 816608045 184091157 92632884 775610475 520456410 376697653 559118801 77286762 12989577 29058308 981098560 487036069 966128190 119338433 912685051 663144022 597909868 474142205 45928561 998609469 500869297 697336121 795434817 732773637 667084808 866807364 20275089 288428302 511847925 755941549 239539525 950468089 392597245 523030506 30586321 78835994 749734390 66734372 816294197 973642319 102061095 764137314 636413258 266924081 9896991 530368740 424807550 605189384 540039857 981567205 790297589 631099926 358774185 27132404 818955147 668820623 529818282 573761696 843821885 894380642 615307316 685327224 853844913 447476337 613529156 141522212 488646630 22301240 650975457 33261418 7426610 991567243 274737095 151791784 997605557 133266009 483934193 944832287 240063524 568843474 89960903 703861795 143319554 868889927 938333043 64623993 76269776 76933040 180532152 716931030 151767809 804793826 25969015 196825752 550904175 398419862 653740309 768220177 154612675 749965950 181254735 690600579 180813267 293084399 571818015 782400447 779574383 877917308 42224338 667867812 112354763 999655224 123477564 654460673 962859546 282011102 297064693 585451391 907024267 929420000 194748351 771407708 95191518 388523373 218100062 697303544 442044422 990643436 881625318 443347302 308363840 342859617 844479597 211627106 258973458 690424344 965999260 498143632 281705875 257147645 414548805 910350971 180834072 378947320 26075677 658446439 116348523 916183755 703315270 807144791 20509490 327370895 658503691 727305195 524674188 577250036 26374490 435725098 4849835 71921663 483823261 721574244 274953246 597000644 22386004 480239055 159730627 404353951 108407030 533430983 281080252 786676344 166707632 518538272 884366289 886072044 678896039 898196027 690381534 93829895 118682992 994631625 182365042 270312968 714453611 425842969 845558114 576558036 624436346 326174307 148754774 632257214 673257608 481858932 564110510 653404482 409224832 489226496 724490721 105839266 376973720 514813405 990916849 583360218 655774044 866915029 197001633 606682233 316518284 559331198 935424487 510402777 705222462 47046125 572501960 475484346 968104992 179339955 260243062 283456796 861677656 167473152 763616805 545384259 447916104 198439786 419294320 313835632 899089572 213988088 584285376 865907414 759613856 196937965 390845472 30729224 233193658 297835538 76699470 110518724 794871475 238854035 609482558 952733049 695379441 674268923 7262227 844094220 974667893 374297128 579038013 907426619 256257801 746236201 956790792 801649238 434516697 180706426 917785562 612831123 755178412 982121137 97584962 995744047 558518286 587506688 433929453 992163443 771917585 64771098 283392907 839568956 991555888 253776727 176124788 346824494 633332679 502614933 756003009 869272036 171465782 476832771 297694142 674864839 221752566 462143576 187321014 860850365 936474049 861104003 205839735 506172009 888417936 984255282 580887333 988424963 817721688 605513277 686714428 942786519 598617996 411610382 519627924 75542407 232188634 470209675 155481224 756157222 693774676 848015007 784206151 447934688 872357228 14046058 986787687 498113160 848114008 43885083 606735999 923050397 8522005 434409382 345880325 636423544 798093443 382266691 977575286 42346622 660478373 600571792 966091454 348111603 168777334 207795723 108934153 437939271 47631894 75461223 873633471 815876983 945542485 583483350 732300459 67140139 804268617 393664588 729705058 468105152 520492717 422027589 340927810 604762362 825992349 57173735 249577306 402450360 560067274 703941800 274699075 917727084 356529916 151646014 55007681 577447930 794696967 996046515 663530389 179664678 882141408 649602442 710845576 413452118 350623664 933736338 14020222 805760588 95213985 633565273 513459203 814447453 170035661 524992225 561889233 428029001 246364782 646591859 30375613 655053372 205053597 450741608 878224303 809948743 592928369 817138512 698622799 680427199 877657804 633845590 732137921 651405075 891843222 872050283 837753955 392091815 984579260 197174429 539958847 110995601 978324262 273275300 19247395 223073953 713242776 213396687 509401991 389893151 83470444 820526429 229078537 837751216 855654511 313845536 640321130 262927766 884219491 782983948 104513882 27565296 820516073 930400844 308898031 57361709 48729313 655683531 943495579 278316165 901984249 203448796 65296625 754285150 482498998 598399867 800726740 832552809 617908908 800292396 565906110 459445130 908957089 75350259 846962040 808264231 603271529 205493947 804015331 107669494 200433052 809612704 657938089 63221435 198430866 556956935 993524462 718585223 592019935 972492494 597908144 742234092 321882943 226510048 539129699 775973929 219122024 974284387 185350271 675015320 370035090 343973438 22652943 864408496 231303485 350128934 797662554 630422467 663720436 335953459 511601014 26333820 804711205 626733793 99473536 397090271 85441196 92640812 117117216 701883360 604218996 881135100 544240042 865760371 469100480 937317239 988771663 210412888 209531534 191739466 54855461 203390835 64609299 163152391 590146729 806791288 140158380 407869295 817175618 686147559 99740272 408118031 917532865 103081340 841723138 542960372 156541372 541252665 125607671 537422102 300168865 377702432 23937691 320024656 799757061 79692820 675547381 612309292 408176870 313669339 664824368 336536164 857345987 661725619 451346412 377033910 270533078 344126350 898258147 668806304 428463615 641109807 722395703 432769498 848058925 409740636 627907352 809844741 923097546 462804313 963877616 723116689 493082542 200916785 20076102 5461480 159797115 915906600 114684612 602930123 551447355 572956040 528586623 952125654 321524695 343812466 696481299 810183116 741306372 672551289 188342080 263844155 691442806 848845505 937480272 59560934 924938451 976240006 387191341 829421689 679239285 35236842 21355253 454256234 652494082 771610936 767313763 868502324 112864524 265504010 710178396 497107481 864487219 863267327 802264693 795939336 210859583 402482573 943555210 823938186 382142040 577404381 407009850 9417623 925720719 256001823 705006563 109135413 135019409 62897312 477132317 399591634 833189616 290921566 518745561 534101669 30300250 966123347 179073964 130188243 315993028 519949833 824193820 637395563 794239355 264603622 13103937 498170079 952073076 219354223 201331774 231868683 640925133 120342009 285256780 245464153 346523933 956722537 28937188 484532764 332012507 229131509 984329755 50424892 618583181 34690707 155428029 920809487 572261223 285745910 297729001 195838355 922962787 560088600 7247191 945638324 478049838 410836350 603321251 226203235 757846227 834947527 914381806 473967315 10853375 993852140 557379936 799655823 700644152 554451091 527550061 858817969 653263512 856372698 943889990 378671204 727189940 732800693 610437288 956231765 963854016 542384268 768973488 708954473 540795115 928061792 68004837 457924503 897681477 669041213 930272704 927534412 636765144 4177930 24405291 574319272 664468451 196922855 829141681 814983567 904403942 200242521 709173042 455327339 579609098 236903516 8786058 948755028 730629529 882409660 206012300 532893806 254750336 909924607 398549929 746816966 790574695 128685810 690234584 464392949 574926203 8457465 892056988 643507450 801149142 153770209 137672156 360199837 244020961 817859296 219768388 944710887 339481934 90863081 831166574 856657017 960221508 737967306 663388494 978307259 152461832 779336143 562719216 629014333 95986626 167526365 295617500 18035022 924396313 360074180 727147814 104732168 10959802 744324847 127570119 344736258 752271696 10775721 74730333 571153804 969191111 804851585 625621301 25385766 864467861 953638648 265117946 431860799 275048035 247881031 841117148 49125267 25123072 299816356 782493286 371523949 464560400 484224359 554481372 675994093 246624077 33516254 84983109 707119705 904707109 150047143 164415570 395987125 971053818 406550740 837516929 279930034 395307984 552343811 869831715 987017057 108202914 612280744 251231833 23529055 17709194 920029510 233175969 142235906 646015802 903691094 209105846 511193709 54673075 617698022 915403826 464746324 788669251 661123293 731586797 711989708 494460267 155144534 140055335 692367341 820620761 297774464 556652285 996819602 187850747 802686369 980559205 983561812 179509732 216115693 44159026 758205837 825968303 718474447 647815410 491085283 551759273 384832295 664686424 70590265 496911426 273552428 436704657 486040649 462307649 82742278 447165309 796785729 980260029 558809151 386691799 387586018 596289918 285487436 520253523 84199969 784282230 437133100 986409231 89392817 206093964 961608626 468734245 889699132 216106925 814144486 633215294 655058026 865643173 896009061 952651729 911488928 359455605 730979487 894271099 871606480 741800501 4090515 335761861 884100432 8286570 912837897 422020981 704364664 441876914 261307180 306410843 996399105 992110258 463932123 827121727 691846935 46328858 366665131 731108003 455972578 957235056 853624402 308826648 45810630 538662017 278770122 683826458 968402085 782152038 344223463 716061716 602420788 560944834 423514160 571040752 415851965 47087873 217107723 83748176 359973962 720584483 544809003 355839163 927614887 375805842 269106024 148847689 588564332 715960219 561503596 389224561 68028949 66426221 615649609 652214179 243664595 581483237 308522401 886399979 815002356 927412832 547367646 140939894 36731907 572400364 829531828 511616925 846836453 876910459 676585189 567782554 252759779 518399520 42951221 617295021 53239467 271495321 833769776 849276968 162368753 764621842 795398146 503804531 412270113 735872814 197716425 171088122 661671086 990576376 862808585 428299935 702284558 331516468 535610121 462125783 204251752 582443008 103224410 252213551 924341173 393772880 939495794 529185292 641308761 163478913 740634460 899428231 845038870 33667338 179330252 465718928 52412486 925043978 86771532 327367287 890035404 224264336 197040716 370920631 974044566 644852217 147829501 496189695 881169021 109734643 888021135 721090672 838248183 634108247 303983036 887518506 607947035 26002512 615623337 158148473 137863174 813555500 304202641 479334942 239600867 984247037 15427689 340071611 985987588 880193734 541023759 885201062 540899816 56022595 529578656 898441025 847140531 835752681 647633185 468135436 271472883 921405731 655361570 182572917 116734573 163225973 541179860 187888467 600837733 700664509 854613507 640182263 156752898 502207639 82698532 796031558 282724933 827948408 475651986 70703488 694090478 674797759 172419805 727776717 20793900 124239601 68448049 513001205 973993105 479105885 604408041 696249446 555407417 499408616 870833586 664710938 582693729 844548791 773987114 615963667 117182550 470188386 212717165 220998314 579747268 400906453 990214370 467881357 504239699 664107685 697119339 443459363 472231297 996815252 268779382 411320520 630725392 134882866 226917660 289849987 264413794 91022484 420844253 83963207 296944428 393194591 91039335 67204346 703326026 313317636 741204712 212860266 463877050 365315995 512898370 120138277 705098044 99660960 839720763 58743719 773485959 841984857 562407694 299464205 278635667 301603821 791255628 851210138 887544737 799999005 859114397 529626070 515719069 497029465 560795769 789871424 265353498 489252470 253352051 268792979 998087854 658607295 285771235 313643685 798076842 887605693 718193376 331765530 415093319 295583598 281355511 930870183 2149915 829594889 246076148 466618420 573138908 732784014 308895224 315782753 540263831 278900561 702727266 259339744 863025051 248597802 130292247 557401719 485974830 678727177 937995766 531617908 284904732 165745704 437178714 581258331 875783365 732772221 446386796 488084893 950811332 601068220 63631754 700517418 214386167 969293095 365172660 755582073 700199134 347343009 281163344 495118472 767632131 305557887 265958878 498759890 602265586 345538716 142466510 26267826 853175823 798700634 448688465 88535473 774716798 385243120 705970740 28537023 785183977 305495019 139318812 16958630 438761335 335106280 35237601 528891828 109442488 273820309 594650280 193683823 794227789 495655918 249065618 704265639 427968309 287419929 459815687 458753061 614417205 626388671 513574459 729703506 254969720 969671098 631475992 235693572 102325030 367850284 358125942 952494832 79695402 996819427 370642581 608632043 756753609 683763440 648156408 426297083 434741933 775399853 660414296 248954315 559392371 662443476 664738692 283445993 438805093 189243016 700660435 424918136 159245231 502548287 934998712 624081746 302034161 263683468 200653692 72332121 54532382 638297959 312344287 955197282 909983515 538329334 824019646 199557404 472504169 241899822 128003204 942208906 285926354 407058437 103523650 334406602 547281740 173714113 880747712 954401441 102121170 414080485 467562597 199682660 667200417 229635781 417143399 976923319 483362827 966772346 633549141 488854741 215143908 863381548 306265142 795199728 53854639 980118200 205332331 828369370 657331706 399845579 942688645 311016868 189507097 235449123 269183527 858341887 177629083 150149308 40825917 135150666 850842462 850227489 290615410 651348018 159824010 365150313 987952475 185320255 704646470 879197338 590334149 660742265 933009319 273848604 85609254 117341041 671017207 401768281 510981398 514349250 528419552 61750225 560386155 585348592 442617797 99868047 400296467 725957089 700618760 273858303 995252519 387531246 902550404 859612476 120168475 341929165 951556072 481156145 984237253 272635117 471554080 16449657 729693359 771586319 340232989 747239401 630496055 7153754 317821593 314428988 970990173 667339355 373828257 754828768 242290864 659449647 697399267 118101033 981287088 419691520 928121585 671269374 879791121 75634314 208885697 772650516 694816358 427657451 101540198 831332388 715241798 579004832 773289330 789676417 432555845 894951212 603597925 147254166 170743400 816261149 134229176 104806890 264858048 499830729 611421245 290561513 2586967 354117856 403374537 473483793 680147437 222174667 123872111 957424948 315024172 884582578 822407414 730973422 725069350 872313799 92441488 458079018 303816114 812389449 214942316 402583205 593331306 282843526 879704161 995219482 986345538 60536432 607901240 340810800 916075171 531093573 913712405 561614850 820595462 182356708 69642122 274916383 323072856 839452421 46446804 602287589 302287124 476260635 998268006 241516872 187965982 901978883 465224397 761681724 433802408 92305382 782342258 172155822 493092851 85145394 810130228 709060336 745648011 579717918 908082760 620808516 504622418 823195227 7032721 25247998 238119971 435918343 639751232 715640361 141089047 287141830 349359023 339696488 230469472 434528858 718156926 850380077 218359502 21604146 705462158 116096931 566940524 147694013 732045408 346671652 41734973 682181803 549379088 362166831 75375486 490270655 340367662 923989484 851586543 406407211 652863918 48972483 162326596 653937144 920559613 100808864 41837044 168796200 580725186 481611001 49704617 908816900 558385970 810111739 12397175 716146468 722557463 465307321 545969985 13498334 571434560 799148221 310807510 170200428 646041133 365129345 940849021 655984779 762204364 814180870 416636518 2004321 127811960 946906586 383619468 881594776 754827746 714153965 378576806 620205327 647552342 713731825 721531494 198109393 445417104 126073308 195698245 371980446 110079326 29579849 689474760 193372934 475459737 604190943 678028383 78946096 202371472 801687344 630792178 849493340 464235812 740899707 594608930 798284604 681722305 190271629 277537418 816874100 273704379 182200621 57254186 885656762 458548422 685234658 173559118 585935130 892260664 996575923 369796480 769445421 783429983 708058283 351929152 401794976 215372636 960311787 93369444 206665522 869023111 157415691 615135404 11096896 39701663 443991827 532652715 590307215 341914766 164514993 850476584 592664780 128270348 860610501 937089826 245102241 918288660 835435885 73040590 18577580 830534598 979200152 753108966 680478642 727032355 195768979 853448628 502714328 697720400 172893669 122479286 65585865 370464156 286617784 605441799 468763323 863718178 48179659 369001324 329354897 212742593 556207197 362897092 371092011 370756344 172578656 920967784 713003708 381222558 746536896 58196569 961544612 469236053 566509491 401573426 941530828 702384498 750612912 986902359 747176359 330657185 705721334 629260525 568924537 169883188 247988745 951671405 186293400 898712255 766417536 330455462 927900652 3605293 852684403 951284043 103847268 184272221 859448669 155540439 172606763 828594974 942885296 975106550 345681319 311331352 894591848 55947162 570212616 730198065 989201605 132967366 137801054 901337523 634679307 971188384 200393965 364354744 811917743 607960890 201297542 192129224 610936192 342488759 678895088 875337187 275768896 151550319 312178204 380579692 508881050 384039699 26249151 334696993 620238595 359191319 220018120 835168874 941672906 586474931 41746934 462737517 233328615 727186068 176709465 802611932 813959874 628119896 932887923 126822060 599802073 794964360 776408969 194806955 616324196 533723355 219277461 978256828 558996667 987084399 2883252 73030486 42881647 50125574 993193751 29603219 469724195 530507708 336165420 243312143 532302775 106681582 574895919 723610983 692156124 350599227 45542493 767722494 378765005 490161909 552804408 687233439 157850568 270953951 252446153 539873579 490516362 447490845 856648056 162067291 507469024 658130700 130257603 861423416 851472514 40478957 696733999 585525523 426044096 248643430 390142698 664412949 433054755 658675103 562303268 533619105 311417433 982793685 450028196 315654878 713219717 695779708 557013574 912334807 604044467 191419219 842956893 851944366 764649884 870371797 393928063 753408613 125646102 785606890 651189241 364736724 344250826 436680881 32599548 509700920 5518379 435245703 307021903 1215118 512099566 613017440 933448055 31542976 275990665 360060387 413559514 713958716 529017530 808126207 729273646 266912501 37938904 129057972 660279601 407280974 458652529 14666335 882729979 794730389 302180506 349782192 363178089 637048696 485914580 923715204 610285499 46603068 61690805 138858750 472373723 345362864 980067103 521690731 490951766 403157674 521423381 137432915 766945849 835860832 887283220 657045523 806366120 62895156 189487561 299741818 712840875 31574026 691179211 549005423 231274374 773287053 829826819 18325448 227270045 516143317 34794798 75027128 734165957 97557338 866998162 467807941 639543951 565069775 717977236 714794710 452442888 591993461 516071206 27989696 466187183 274751818 349070278 305225187 887431940 924030986 331083718 224136332 988721808 110289549 615949983 609775753 483819437 841427913 326467180 418666505 823458958 1268948 841301331 601900726 198664181 979381331 456335960 299211041 543790904 213954917 216700396 855119735 822624264 763146163 695550629 903415656 542850902 506174054 85534978 179198173 728504645 866820762 244956235 145526490 360949399 69766419 719679291 457757479 194534476 473201033 106117019 946131422 604015653 687902833 901843431 65932960 699406427 904539349 197490616 42909504 914877732 750832220 39796446 487074859 225937699 9283542 624333651 144099750 506246394 821994292 375001698 134958111 54113971 778679505 21194373 604925814 535377911 788865079 912088812 660472731 12187839 878133498 436641473 58944196 414891424 448841205 492685478 761816736 616037358 642304903 250451873 983807269 565780532 142398066 89478498 176302169 222114154 822726888 918795351 942901686 531282542 165767939 89393590 699162270 769462917 309988773 310802065 28311659 694880992 62645203 43947600 439364962 363125725 206161501 938771573 156073539 407761900 806233820 432303282 896188541 770732392 5157764 804380465 20899055 523652776 568230199 870070516 153580712 889183070 719161664 66876279 64243347 869583173 708248048 34655774 4239935 63477962 613613458 579556993 998038532 486522527 775265275 637320394 563623141 965515315 776180404 463605989 83945460 719633909 815108002 466735741 284829311 809783934 148904187 842609654 923337027 977171146 438975243 874598304 4439138 833267477 977544635 858586188 296787731 595765176 231917352 710291615 790953761 656110913 181892072 840259181 624033069 730893674 147431403 575449235 856015958 462922497 590311496 161633827 856625436 250783220 383884672 394363178 341749723 914876754 889721286 296473075 219746528 503105742 189010592 302861684 383753448 702289074 545772437 628316235 734501840 436195059 680472550 370713373 518417271 985500464 586331979 49618620 180565311 2139106 261965527 588855033 993392244 431058564 485308925 853165392 217047254 357066304 66005324 941624699 624832810 451716144 119591998 768274096 230984791 885582557 249501464 757788276 689065376 518090004 530789460 222744645 822965977 129170028 748479197 752888501 528094658 210730538 325475830 960967291 443427826 115784450 259679319 9136086 573165742 746384648 159507135 134501112 49536074 369216308 269630941 106288966 785898767 595676346 397290862 412262120 682400593 727408890 35827922 172171758 626075067 188556234 937579613 219451598 173383966 850039914 369323834 519660987 992274726 755809036 466361385 531624263 125521776 335776119 334271512 844434538 453159379 742877283 463244860 289459410 477148639 900618769 499031659 270365050 78252489 527144397 940480149 709150559 55226368 643865221 750955176 24681203 618424901 878300331 69076364 683691363 252800408 487049818 159115204 992072708 886151553 629135632 818569330 328795909 564283561 364840002 964304744 293218743 687242399 480763504 357452618 769163427 106435675 541298384 906281419 969544183 374578695 883723982 78247792 74763746 605481123 977331483 212403906 881985126 790864812 567428257 256911581 850224647 487874677 560399248 399390434 962677435 109678688 206995156 109124040 356051056 166855916 952283595 952992788 920411291 961363576 428417544 596912341 115501799 86609444 732825126 435005183 936230748 487435284 824862813 911587444 670126493 329310693 392024518 279596868 464387210 605638119 533226847 598673301 709717328 108065715 19098289 63629135 947196678 333946350 836140207 588469694 983076256 638146811 310384923 911478234 43261031 636787084 458045368 765433218 445569605 257555455 89960938 963730663 964017385 74587810 45051175 582613190 17824322 341140300 917856491 217816857 171323353 383389163 88865979 469162790 819775555 596917414 267360034 241646906 170037392 244955661 50409812 254185076 276757007 479794691 321464729 798421544 812197896 288512830 182565537 919838633 3956573 47738027 154242543 197798917 689424799 443704812 233015116 300791829 622169153 965202366 386172009 967450368 839137442 232513012 582004389 648201526 652868577 904553785 900146437 811739077 587557431 901308896 98459473 850411133 368437339 235556212 732028977 331716622 991133978 734366628 422712353 8900312 209930264 911113536 721836457 316417092 529923535 314654707 819671060 691962131 556077019 462078046 971763017 81437951 511342931 692346367 887027072 296819354 205567550 459043444 170908846 141073146 151563354 542292986 976592534 347610597 61755734 535868631 672517503 849410245 367349404 506764698 814703531 532565127 467208007 441495669 431570782 544972229 20782090 955071258 742025793 23231825 458294992 723431902 484292828 950090472 134564894 792364082 976249827 496143404 965421184 212132843 348617517 224836006 327142988 343501308 586092362 98276241 773868587 224926332 714038636 148044044 744584131 810522426 225035289 584204409 451153819 182349349 888793784 171225787 830295612 347667841 940764710 273428376 103722028 268563312 843041288 372930358 143785260 695322708 266582485 607265031 361610482 663688825 968098658 344669579 657562966 12986594 566727527 671173964 929915521 941526112 537646277 573582412 152348388 409168657 966370180 844986231 411062128 315076041 715827862 760667751 412032333 437994769 951747835 932410919 435322770 827339235 303764340 748741402 644768334 597058838 198408083 385517851 847780038 976970162 933730477 336105069 613209148 701141947 543952003 531185020 701598932 594184142 459770613 302686859 410544975 741868765 163884877 538712158 992353780 575468765 510818069 632594425 462092424 596922939 450594676 835899356 816943477 318337580 585922271 328275244 95752580 549552712 426767106 661517562 249285174 763458136 840374947 850959681 512230609 128581242 366140273 223603477 531495092 114680823 446893483 839960452 470487303 887114446 612827127 417378643 47476711 567802892 782515417 291483439 984387509 299327865 427374515 963384703 79927807 847262708 575066371 597132267 836923564 777239783 65505833 992049458 858342726 594694440 300110280 341253524 344161904 924063887 463690629 129967808 130966894 895514269 331603252 294357336 495811517 454194923 679495928 436354688 503768588 877493177 51975141 76269118 215768521 611841948 181437030 437457320 853203593 885060766 60950313 824219306 801334863 467647479 831787637 996020963 409496325 636917880 833471095 661403881 199796284 442011021 371409471 873694628 574771530 775341814 673362869 439253216 155504255 341945012 53791583 898232749 418006920 657407409 166785867 363302609 683468561 751521626 545191029 970571765 99451022 508319593 878392161 606678572 395403735 623078935 81400204 303976623 19237752 27590803 309360962 604111174 489900332 399895955 260118753 688211601 807672804 153049352 989505889 563713275 455543518 857314963 743326253 797394377 518815776 874471499 846516698 437761036 151507108 288813190 554241682 948088363 690933464 356231499 449824956 252032355 570217924 578754262 153669178 973836055 855013875 157653070 186212665 630004195 861463333 707905157 912832438 672084906 145528585 847081756 567773769 81541241 262635137 507452960 533069509 826707225 970883968 999884668 249165929 455412268 845623001 468412102 341513725 930987963 891071019 729798137 450582222 409475119 476772189 692257702 709299806 246917222 759221085 691568858 618277739 692734318 476587076 320054981 390252582 768072130 538800007 394591776 841327176 775912793 661727066 402861168 698392750 217814965 949758968 196897892 187723146 141713419 991314076 472653016 785674866 908211306 461572467 566101001 426681411 536903573 654404523 142790016 511274267 800717627 825916386 195320754 526512594 140415564 823223396 538391278 497869901 921360417 757879116 869460949 828937338 879004500 262238873 100793460 778145383 567013428 245460399 539033945 193895415 111187128 127518117 372712997 33781738 617495341 968160938 943501693 607224401 169274292 84224137 968361720 467840780 466310050 955049733 565431099 803787540 355542768 269301203 207540352 2682815 234274905 650925346 300220236 345735041 571836375 780513732 812156565 55883754 487378430 265985053 876551753 778559281 716465901 963906851 856587973 893814887 482370138 37631699 137365643 254263859 82200460 855942049 525238320 625849629 553129260 838496984 838918663 346897800 840266479 672601142 950245739 54643066 121998564 190401232 106644100 502912734 751170342 948184562 469481052 415651387 131115918 350148950 218388492 42466277 843896104 617609534 490491299 888725056 563833486 239177071 890886205 644437087 85004814 733500307 317052956 522874021 665128474 367162912 355478891 109936359 446261250 386384303 857579869 532608194 647708454 809177331 773303856 202434535 859498038 243868114 503674164 22657553 7968108 315498329 301865402 799691292 399604033 467253035 978353912 638426809 970096441 150587166 555562901 777496690 260362650 342946143 884115189 775208708 59853275 417110183 954083722 903506108 641418508 351463624 588333274 772971402 343872730 923181942 521852037 270528057 330496991 975329353 441338874 662102481 236792776 641808903 692991760 292433697 837590429 312148551 257613166 515317471 805801180 156077866 405851278 944989350 917461412 919711960 858440113 37191395 536290231 405570535 219607148 617414595 832867987 720248012 60537440 544275179 714619627 46255733 984805250 336007951 284038127 940077167 146501811 928026418 921143436 247992409 894085949 514601047 975862979 672860438 89307486 253058754 789410203 25088201 553410160 764560329 136709675 415230122 802935338 610270561 699446114 849991842 296523278 761212779 528501845 868451570 117538816 578481928 262951261 568612982 177722079 467691971 23813634 447569399 108174528 971528220 41359638 278224397 205302435 982235612 717584645 849175891 406345557 77198434 851327222 311308145 268051825 601660976 313009191 8148188 284277404 781170731 432588565 740772186 748892840 362358644 410973439 683840570 410887342 170490483 35968927 140196074 390332366 485254140 186559592 206882305 529388124 792974140 119417214 508275165 746847176 240782235 213982161 273851188 976324970 388691640 852726691 314769626 994545332 225022126 310477733 430060205 86554742 784110484 503007180 455211860 131103352 977505741 131576925 519487972 446083642 555408751 4552962 815707823 634635410 387722752 432915742 542089225 535998802 69070097 892507369 893089484 91771953 299621135 331749390 374331230 543309758 447300465 245499005 267333376 609799735 77225640 85696513 924885771 992747641 556938889 115978990 64979773 308629106 631332787 920665977 808252200 945337634 435033239 39052233 31174627 189478979 611608315 450600644 407549379 311050595 959070171 572112994 844089075 87747630 681165991 95886950 124913646 549647097 859081305 921216066 42326802 788353151 582069100 424401575 180627786 1850800 975510289 592420663 440743755 717792048 811671238 717823080 529955977 797545375 347438427 294919799 513651178 582949415 862124003 239573219 931391540 145561271 577704023 183915893 238411742 330946666 229487785 976540590 711133284 965176999 596134404 32782545 541830970 160916986 28508681 870502086 830165038 280646532 246289551 85563105 419674180 671514010 196301683 609299950 806819743 956943124 238875916 141062935 342408623 41647192 570510194 253471286 878174910 551818601 986396033 682747238 413197178 832605233 779217676 164492457 862634737 495158864 435846541 918161056 806194682 761883639 379182498 646083575 386027404 543593299 938668230 29215938 482649331 14263298 577829473 274898381 520953088 116521553 567642402 802417607 718912102 937594827 890473303 216237332 631071516 551304538 706530880 720950540 854886185 209879875 504308118 929800426 764658393 606414005 185696630 395267704 483148977 48992785 592357807 915451860 781773142 125629925 561740719 518173103 866660625 410318873 81303472 771295352 876683929 277406915 362326921 359545661 869501143 374989596 536597863 625586210 302901170 250103505 341638387 907612498 108662894 49934331 399913593 140045857 166416227 133365248 346129453 839142519 305387094 880516236 531581184 342291251 831606508 978433380 745444414 850667885 425763765 896082204 237328411 731972318 162391271 844160402 177816498 116019346 491418627 597769885 38852502 211949978 569631602 824838365 512843639 458045135 754420924 726040435 978800152 651795076 658127121 315015402 28060944 149258174 826657963 558986322 134655816 831131323 779877633 491480938 231575408 594053079 393919793 749422616 840434798 61957763 616279514 765089504 717121332 247616007 480230177 530042159 584430509 12806317 37158085 422157779 658055974 460252016 320260410 554501585 208163091 860033966 116658224 552014475 269703885 56396777 545849983 576506700 214196197 220371175 824660275 364160880 195523712 715162004 849221322 736759430 194867111 48665096 921717676 47725545 328450025 215761827 674815081 199174325 274006505 184732100 444817769 33868892 104983791 199819819 873711558 307808104 468491980 573637068 597519987 629892147 578250968 526449600 919982874 755183078 812613571 307146839 458920254 50492941 579263391 613639215 472243414 110155141 264221896 855574293 828480026 98760548 150403395 4747595 274901172 740941958 964764562 871871906 164021187 420883629 504005894 557243787 304644066 213484378 522508951 873554561 467966050 800018547 349572186 506547603 650432440 629254132 804298427 779658267 149235652 623915068 411241608 692143552 850915568 454922177 578802808 345202508 210317310 600517193 54410786 988885418 991227855 305188646 226925792 962101349 880498025 400998153 690696652 108737745 860881433 123248688 285008170 699239333 663020061 662865 738730054 862683237 70029953 119049492 182842672 838990507 553457289 104448592 198154490 517131108 5983394 684760380 905859569 320695902 190913289 953971313 398275162 932287080 551751035 78995543 753629871 401116792 486471277 383625610 159771493 412874219 551484373 339844199 440844767 676554909 276893348 816211656 372961338 612440948 182543730 972291040 525230154 13971720 580757358 354162330 383055060 936173524 123742537 11872632 104403878 842663315 149749257 482433969 315080916 772429227 903872985 711809289 678599395 594112748 552672877 525369369 754469418 534609414 629326615 381015707 791010957 357702934 479709537 35167421 765616253 855165060 189031366 851906068 202913655 330199070 983146374 812494473 841672302 733191220 897165917 823009394 831486756 162114894 293892213 359317311 51444734 207380721 411644658 586479060 618597531 827197537 148012583 662326482 916802499 326496700 47315849 523266740 391661339 321836310 430046328 183083679 485962904 316863347 288907665 345455872 561221493 355052882 811493989 482170550 647182321 368579894 975206436 23246074 603428085 718483595 947085989 411547039 779232545 787752109 918271767 37533938 408754839 49979782 981739932 663662864 717319826 63275908 81191122 321508615 977133852 525532122 793811205 223000937 385719140 846069526 157355593 373300535 445307825 223338077 126348351 505716702 547500090 245290542 111737904 702489609 121166733 385475100 307385006 51907580 329668231 995863925 728033019 238544722 731452283 303360492 694198374 56709292 164640160 247073421 377827788 359266852 839999952 536852585 952689075 731749677 870340124 522926871 791427059 932689796 743420312 991472684 648983827 877051952 871171916 539542015 89703927 994939271 981040679 868127770 443708470 27099297 274383025 348567214 264996936 679694568 142796262 219234956 241293548 902899161 760074663 402168834 824414115 590306622 577295553 40360382 460227053 270062569 513929037 341305920 126292358 476575924 789263976 519932577 753497836 881289845 768637043 287767222 351522227 733039316 85781120 72103446 571788802 583147055 375317242 882824006 178722140 284708058 760915829 886429530 56129678 294623186 953751764 115370370 946594084 581811051 411560502 505570097 851275997 772146992 462627822 753588782 187393803 83191728 587374206 576999729 793413988 495621208 803646981 245424907 741449309 125402 965882539 915151482 79161337 670958963 999884336 710778755 645159153 341926899 957370412 260022124 433848016 668169699 361107024 423757319 544505843 79666642 170031086 245658314 994163056 634966353 241168672 490749850 41467480 461649850 848363434 842267336 550804225 412465846 261550933 905660565 351049090 506269777 539913141 878734282 578518492 332760914 644566444 500558991 750770865 599679905 312723208 604289296 846556816 745482825 267292063 808446295 661150128 85264426 97117384 168003061 236299912 794734205 283665629 202694384 114482185 373420115 90373708 317237990 388373938 189145676 432874321 984427643 767861194 25518632 470691906 158317005 798203027 738348577 82660379 221792174 586637913 912652456 827570162 760112350 81081905 654523418 284530252 599548948 756822187 582166053 868704921 937546593 133921992 777225547 934511837 434707788 488339746 406442970 685463774 388593872 900748507 988387771 313597734 283278374 522103712 363017914 917185877 671664116 122377907 456744792 468692778 68018011 474784931 910128131 734943407 365339116 631592296 699622947 982556541 542261512 598468417 940162349 107647919 823551714 394434010 22783391 388278224 377724569 888079465 979770218 241830856 134466890 321180420 508712697 469369463 241151538 846421862 962583639 142043905 983199351 812456621 261678250 910656888 424865899 610942441 393375763 510046254 708188951 997490976 184183404 531982451 415371984 989927010 662844300 173423842 170492082 481778345 379946664 905665222 705330592 797333603 764617860 15119917 648269439 229356509 622342859 20945541 828206334 420980282 346201989 426576354 109982903 451232109 447651443 786990840 612871284 574744227 826572364 973123497 848402137 647738373 194160174 606380946 506197085 138400506 980810696 389445287 368878717 859060620 431601808 620259157 924297273 845172684 674727170 468814428 942183109 130170950 974293109 763189368 939664939 889837416 334433040 806380715 909403945 668983725 145481384 658300719 160156701 801785427 422668604 187332702 964743630 7538491 484508371 413572265 120231489 187685879 895372851 654247053 523548613 545660425 43708961 902338150 806207810 971525274 791400276 134929712 794278395 786308460 48525170 198118936 735142039 205477331 477480696 910744886 556678208 14062793 568816503 514789988 958299386 85367224 213356408 992567473 248900085 624607065 391229682 687642001 413737152 36123598 196978887 984140516 392425471 220211493 799445709 797990353 287475697 258137500 710678989 261925303 506610504 654932353 30833694 947010237 987357662 70690160 106661992 29831592 939666903 923478722 903937582 743621644 889154566 598628669 567844939 120022311 996440051 677479528 837964615 412898402 927676535 824419227 328681517 125445991 887141505 321745939 948119376 934233702 496755755 184998333 961602058 110957793 514856984 455971701 685818065 256163951 410720266 940743249 594348712 773099215 154120327 112527456 81684672 323899713 828595829 656619238 666947908 611338543 10892788 825979020 983370127 67596404 108137851 472797584 78735515 857913490 907757463 18556539 150066456 246377527 959446737 537259760 378918682 135540800 883475822 318790382 901688750 215994007 692359051 893484870 649892673 306644265 576683543 543440040 440807178 458300120 955128009 479715775 625716281 317982891 658663148 776046696 413683876 604329929 408631394 469366850 780323538 279086328 238831060 174129510 71383348 241327923 715030331 496429113 554111535 708588248 405312175 105728275 554420606 206949597 824531783 722999550 35092271 24257019 219564422 168854394 906689271 842051094 888970628 292024886 711653041 169343590 38743646 223956900 311516698 977453374 437890786 278538892 16603992 744736795 590393907 908304473 717854764 240704086 310613945 849265463 646559333 51973393 950478905 770576211 234687839 220959847 575279199 152446080 330456861 631617989 432870317 145085778 20588830 24810602 296906905 525873466 693909816 481926705 620825051 815576783 800878635 864061953 549573001 998227486 603548084 499811052 808143820 424432334 211997808 790667739 282364053 319171647 350082208 544346414 331992406 833799608 198096436 784322112 693456889 351249035 395148512 701348793 671045372 749579456 551264937 489735489 217212519 617742652 583514853 334688551 363765261 456793719 747874255 101928605 151355157 185761141 954772114 396904809 823533818 703150597 158386169 845113933 856309364 857813619 452915384 381715792 570240930 801337813 840755036 831534076 189476670 846847235 142399118 743531920 820925592 338105395 542549190 302699110 375511060 103965734 142053576 243042784 510520652 185479204 387302712 480795404 697674122 182346258 330288241 465204006 172478415 125912124 99151312 588172652 20776051 644303301 530754437 665681955 515219920 844298160 850327709 409029540 103816352 241747123 35278379 834628507 919184513 348172157 375894569 317838633 299390366 959011705 488897773 153521010 62125908 294601093 167555219 82361969 26876748 991959410 91429322 610627865 656480252 484089379 873372325 930126769 647026654 294567466 325054352 152187407 361229207 486203735 71117233 569767988 811869355 807028499 949354626 514520382 461453183 183479419 585993754 649293235 858711452 454561273 442755081 425323262 448650018 483265824 739794319 637713116 463766990 707498367 765841750 470801996 573082004 936670795 682671575 141812923 618509141 795489933 639291452 542271567 961628041 563520750 522709644 392149691 15690542 826504470 560970625 417624691 284786940 88598695 556214910 986071504 479243758 979196976 783945841 867825201 981985177 720614149 393903948 41464216 761032572 398693389 504267798 629305306 39629184 172116219 846481489 530735605 204581741 454109110 918895371 487165853 262948226 328722294 501787598 649935806 272400873 343575568 453296857 539856179 308690325 822674343 189271267 947636031 876822050 517886478 372038911 706368394 739581667 285017017 617443021 4978626 931614880 479041960 407870543 706416396 580066486 540802828 406534411 297579057 803530090 603106489 176193481 747563408 291858389 535779818 945506867 733792141 732041179 519510565 30264574 907701055 722631020 410734840 53700976 644918011 565987991 480586054 426333427 109048429 482551885 424465405 33370874 998291816 123389747 982104212 13015211 126883097 746072133 487086721 686162391 710956020 885431572 284304329 349354332 970715073 164374672 10678984 504881177 498142831 857661493 473652569 776043890 763390313 57977564 821132211 670817446 411700167 302052150 817535665 78832129 886773454 429801345 589118118 998606949 780247256 112325096 536155724 844979098 615667348 828279165 667586114 296004846 149940593 488573790 552656316 851941870 734996527 806956740 416153537 282899525 552262502 172441778 206324714 586265729 230579278 427056254 644909487 988118017 481607626 146853879 727443502 916932009 209424276 428906387 3418702 994973692 927717810 238434934 228384916 237739774 574122140 137434091 24275046 240602542 342977324 416482747 3941188 847393687 929862220 652471117 921397137 420703181 892922506 564193924 579092796 212508918 845555424 102654297 464655577 525167903 499043267 203294300 207208146 642858615 506024784 338604462 154692830 358931927 753997214 754823871 12949516 663383376 610577888 472146907 339905247 528256954 579652677 344972115 768517384 770706477 902544119 77954249 569403568 965742788 802311894 757187944 654581724 99656672 872687640 73956131 254356788 488359008 66171232 45509513 742119755 875091281 827371109 29615551 825834649 800682252 676826916 183411130 780850929 284388196 755076515 994313370 383403146 783822553 204010016 13965461 566835720 394377332 746857016 127666683 165213097 56875384 469205820 386994261 403887763 370084479 914751743 897027196 793467913 182119418 299478347 143461535 270799496 92020697 213719386 513587405 891159726 926794322 238535044 785981690 948346915 601144993 608876478 536059449 612457073 289667623 794611239 69962392 938698115 873845747 277720616 535525993 978288705 190982298 946166273 858164831 838529932 284453507 396229121 419063319 184321053 245307430 747231218 777659495 229803320 899257509 701145563 835117914 118027803 574913928 645762451 292009604 820509702 241151318 974379567 878067458 836338566 863570570 986394041 378491250 208355231 411795207 712771750 648251815 808996715 104005716 786188353 40160053 607072192 770506436 176773112 178608999 463025704 505378245 168744150 319679488 92155541 578871990 399648733 659126797 730686016 460686088 520446747 835128934 443693652 474868781 421967006 44220957 751611166 681927978 45441556 192053446 167399356 284819213 406902558 642379622 645083094 956487825 473529988 751768422 974154934 782977529 867069006 153184522 480254687 198739338 357296849 351423578 617069748 249947714 782826 457567576 268190652 836143860 174846334 108416895 404191498 644944784 474494746 755917531 183856140 929014948 757157468 400485795 364218161 198104099 509376051 941545613 191859125 515226805 284278258 692001208 523871397 364908425 579390772 906098681 653991000 959802396 644538372 235983954 583505106 677687467 541292512 343395873 637188190 470786396 122460416 206519935 894809618 470798587 861777122 937362716 746064286 563420918 175801140 944444164 584638582 360619916 674885237 810702598 141669616 34530575 343244113 565148796 826344830 342774027 803513135 765876441 254995459 875402092 296375544 729902778 991076071 505009247 73406059 504213730 893427965 408524214 475578859 204896777 308723251 7629898 834760482 321042306 416114762 936307404 642538423 7523212 401411124 750790850 448813104 133468171 336178435 908539667 753442750 914291226 299847608 502983687 21661265 963849952 892141572 866472707 280492976 411220954 7893742 979900443 576114513 568754604 436585216 546362510 528135113 616599817 155664580 958408790 569637444 645357891 914310608 444762117 349923671 629169611 839286787 659190385 941625930 56229283 890020737 799988654 411330542 408426199 651551582 373979679 126732526 402812441 276104942 4382571 720998760 929018964 941530858 857349179 628904172 11746025 737772378 153681034 990776383 105805290 957996376 291794917 525147556 938962698 562944393 475719633 155197719 477207402 961017646 695562357 583469266 804531819 274500202 277760276 676149078 133660501 973160397 639540809 275666122 598562602 954493914 831564016 717115000 713125889 649474878 494540927 440088619 250031484 885401167 308049116 661205261 315939070 686883554 92096479 945977904 16651355 54483099 430161345 386256364 741556021 494263333 467151053 98931602 17767974 405945293 206981921 456434948 473938741 239378517 880042517 771053293 536221384 92517132 601650211 464028320 559845274 491909263 414825533 251931642 519107898 896800983 809834328 657653214 554584892 346359164 241334829 68500753 441301012 925220739 694358866 108846349 312249269 504635176 545261376 566719734 492307612 620370046 899714293 858366415 387660860 61213794 764542454 231978176 898406025 637026690 233245442 314982170 599540933 925649263 463021764 514692699 312152964 631873512 393636268 692892532 354303680 982108410 501788183 985233499 758915220 427653971 802475767 938860785 943506643 836516287 166417480 916544809 433929566 778705903 492185714 336803955 680645639 671934546 36338560 39314509 647628074 842046763 242685980 340349047 393536025 306464779 643664756 830780716 582971628 95656668 83313042 66947892 793903351 757472408 514463610 116982511 933797839 253834629 324597414 796506627 908193027 653820252 949614135 741050894 764850551 356203319 625747242 263717338 515797480 769845166 656933566 319617758 801741272 116903440 508657653 561297276 556289846 994736597 37290074 764198079 156142933 44386954 944777148 516481795 718514702 881909831 617610266 433055339 530859873 648662813 191344857 713748377 348719241 608377474 222759834 546551441 440086060 833211006 724958875 968188219 123281841 145923690 767457786 152328388 203391082 14615898 203924141 524858274 402985770 441579364 317787160 106415878 350456498 463201378 688199162 840938567 385811195 407605132 684151367 406872393 350972567 116235276 679638004 41650006 854944796 871401733 365339388 575867662 30317911 707969039 412765350 219459910 368902739 105298155 449380543 250401570 572240715 163664880 74892827 406849269 547252789 227734263 944271215 211805874 930997564 664374931 689890733 270055849 182590843 72948920 258668415 380004878 206434089 923873577 508821279 518544656 738372001 432390528 780397535 275260945 55948973 652146855 960803824 575614095 14753346 286067266 927279371 265689561 555907231 750711726 228606332 567741116 685485381 918127406 373543537 525927363 423823987 443813924 351555439 699233073 227681337 507351080 211726135 33310384 145945793 233834532 2517790 298791934 221841971 595564234 478927802 396817472 475282047 267897524 282269059 345311105 273407343 629170997 269586175 955295895 201930807 62448317 18459456 186689016 951935422 104082990 353472191 935430024 594480468 562548051 626310758 138679741 450636734 109192785 327936287 155968870 229253945 15603836 287648580 355053785 273945048 584893200 535012195 288791124 651705003 397032468 44001912 990713842 968862520 982221712 947379112 893302308 75329521 898475578 221971166 885151629 261016836 982839022 675842400 709639878 460890535 92317973 431147410 691644456 975468220 28234244 79924589 25769708 698910530 128456053 931970358 713097309 642232897 672973214 234005866 515003559 220426830 604159104 181924586 143742432 394863918 128210762 831049999 675817247 787184380 540460019 518112377 674173004 97609309 45212335 817252195 635195403 884393122 865467459 168670802 340491534 843112438 391234117 361275467 160038848 557138170 504275387 635448313 435409611 719672208 848194768 650177570 22969783 153791122 805009299 196258012 963902945 388541921 107193917 221652312 69896581 989658821 712956550 315794866 338560039 787672184 76392107 304064148 505675882 558928550 791502852 11199316 507230355 120196900 870180327 90374882 239710751 713781641 259181692 299278113 454566038 286138801 658854759 232661701 364038579 648959830 446680078 547694251 488337394 180260066 513089113 908579134 705362164 594311390 798691177 275848420 621768860 230396109 845333791 457882252 958003178 87857381 268200821 862422743 992355055 514412908 903461563 731660776 563857835 790197520 264014774 650171250 843044582 599520586 760284719 591820972 364278303 140708144 629065694 271023514 409580836 567324461 591996135 761304344 348932449 494940973 359847886 727453728 963556814 965119276 472076873 611808966 923758776 153435963 905593321 200382527 311650808 966116348 459001081 254429697 466015513 197053699 948737665 605802364 278886257 716921794 691926991 181209595 965266320 200631804 727880080 567588316 728585495 440478775 763191347 691014491 859175352 834251646 203184603 774524087 990298086 474971585 250209228 47544646 185785274 894880047 858350437 25688092 74841684 610478960 449471740 876359438 564895975 282209310 307160647 951840897 636772178 357238434 668886692 312631463 872184910 151984233 579519125 348356367 505260848 146789029 521109323 505700883 531077917 777017906 832080319 960785184 573062095 729883201 761322032 6974129 248633761 735940599 428767080 951950281 169445504 261872333 686010598 805689858 786161056 251347036 31451921 601155028 32183675 94711062 928586735 115272133 992807811 758063539 46866637 534993746 891054539 516257860 419557262 495034259 808417792 479673041 686866423 503359224 456159737 361754518 356527212 781769820 692846777 290126347 487188230 801515615 96839809 557539337 915015407 885921528 848402788 885670048 972813814 814292982 407756185 108306123 556212423 106073486 755074946 505905325 842901726 680208516 481685892 47565497 981989647 360606356 716215620 246766795 203312311 108462865 225886970 877517034 191586343 230709381 941319425 995548434 413959602 151893667 271400217 638819078 187659597 195026789 394329281 788764811 289655287 396265082 580375844 616900094 322652741 126170841 31788142 715817338 762809626 999374195 303285718 213862528 777449804 781333868 797013245 308547218 973589967 324669856 956373034 869078471 478972949 521647618 536435325 529594736 395455626 130509553 582462855 277143137 119286616 126815628 209308701 635771530 511333561 219294786 770040272 627832184 901547648 556836240 218504561 817423073 706227113 93227098 465304735 493170368 444352328 180337450 610440547 938066921 218912273 674057708 842691347 39839550 317406731 921552112 777302831 957415944 30761403 352300695 449102571 526344875 693696480 666817453 934368998 723325215 937278519 457174234 907198963 842608873 404149867 96165847 778087637 548065192 584868839 12032929 726428435 177072781 172994402 969481770 357689073 17345627 514353371 922383038 385895787 487736407 306644979 263131647 338927028 363983737 316657390 706311011 668250784 237640523 104397871 107198891 49498040 285544987 683881444 219594736 943039883 888723846 953435606 480664175 951938045 818869719 342612113 643681524 510932506 238827523 344036365 937371726 169500561 380197800 430673978 367423307 551582569 447978309 644886193 148236373 998100310 619908252 749361097 598225514 521036736 308246422 194633110 145397502 226482390 540792028 874446115 706311656 876379006 887598408 17212997 171920325 693593593 3003865 913170229 995261400 531038775 681533461 859960680 898495456 961672582 887315263 735535186 667176663 605449669 837320544 902710403 788675270 714368818 208614035 370128366 878376174 144750656 815180867 205569935 252661388 518842869 600111989 443637653 218373188 645547192 177369259 434230598 491456649 139305032 474618999 711246329 248804242 906125211 703913639 397367386 306460276 354699343 496174870 721820754 705005253 670069571 26653364 847848298 659310767 342613513 632773013 639352792 472639951 719389628 326975365 717249638 713691164 361386401 306831618 539553393 923654731 823526671 110692954 488969674 774864968 201694839 322008198 94392051 285004289 966553377 576070749 208197343 493343554 865279666 506525134 555343259 52119012 279934815 93215012 132248991 346138872 373054066 869772968 710083381 273566615 156744902 494322178 115503166 401374020 522559612 8123333 697789843 623461621 178747227 637546779 534669531 484899459 197674090 3976331 650801463 693048852 277284018 632027303 437691676 924947747 998915339 774589628 57253006 719186507 410927605 207272426 799884181 780639783 315477057 56817162 958517638 624872418 457919083 480170750 952798445 509828651 158951305 589033601 133261012 428744173 146332037 168628700 812824672 433782268 946604091 268884571 325333544 692871548 890934484 496760583 104704844 507787818 593016766 603987974 583606973 914558558 272057821 121582763 152700208 367431950 645362752 999714356 502142033 424205405 117030225 413729802 344193376 391337320 221339715 951410831 985762249 769701686 610631186 329847874 694936640 498032795 443792003 719763392 652833639 346613467 894383911 258972602 989357478 555129151 546272474 560116601 340576880 404202492 681095980 57089521 131326101 374594510 969499038 488336786 766253955 345781914 7895081 405832107 73838097 351369344 573853341 580780752 604889790 880392102 648930164 619469594 196238706 223860441 91595324 979809775 535079122 232586950 986886062 531392697 694411635 662892334 946121024 44107183 874789563 686627760 267349827 61533378 147742769 613707400 962014793 205878206 588429813 778679788 991428574 118588631 899236220 245576427 408127716 775402505 66644106 518724870 531920883 714296692 279894067 791182766 258491457 78119932 335755633 890283378 209095452 511654079 626404469 640696281 952776528 396250854 75763056 347002818 686570224 73847946 467268045 560037252 91726533 14026655 923378953 512348056 365483714 792041766 230001448 994009453 866409687 196729271 948198776 985182362 838447933 300381308 814479848 922509365 898729277 481251035 749756071 566585995 839152031 92773200 35267990 979535034 621066868 960911947 980575860 845029591 542290823 884525678 972017170 367225501 543367268 348869154 887022830 415079756 786259552 953028854 6229197 864185802 285650489 742966482 511848640 551596746 29846581 848345447 741790610 551130429 330165208 161730513 57568145 590786092 390279699 530211912 790082153 990889346 190172813 776065718 670556872 94218328 675944861 704702380 441987279 943317229 158799063 685395560 413116921 509024281 490737913 2337075 507702628 440432551 244547052 286108873 861464118 6359233 765907233 641782840 281863213 491757342 396591392 233802149 440534428 782281689 402697073 648187752 557043401 626124942 871116986 801829687 20237722 263122626 390538747 680496485 811845258 434463319 25131699 122263470 282571497 884311369 592898784 312791428 787135240 823736060 403298454 90392688 586609983 29470722 203192916 236681605 342331231 906079658 885742927 723869492 33075008 810199619 81580831 310680599 945790595 19798448 437172373 389617196 161907325 226116601 728958141 162226493 130384722 455496787 932114292 304154191 632262620 396029897 184244752 384341243 416979492 136227673 862387317 265071903 892086287 191466533 839072248 356384297 871116183 725501366 660883180 439771483 515456416 87226664 300576203 296848840 280097588 111720064 368647697 491575431 469073457 268772231 231446638 945812675 503604690 461973109 174286039 306804693 100652835 536051560 522150246 878471233 318313372 210211577 15639265 709514252 523042702 141568594 215074445 445618265 32366378 67629907 461358247 967995174 530026109 151258528 89125756 192202258 651828961 379379469 128170699 704085641 832927219 696875181 856694953 625419210 221815658 593591776 608839891 753487140 123364278 822526378 440475157 215016973 400305864 84860691 459824244 517562869 595259818 701768074 888019398 638962390 455333366 389880096 593534802 546546081 63470732 215221401 293393070 248164536 687387420 599001194 786759059 861598639 46032328 818676117 311402691 642090967 225214447 33507728 704238821 584217755 962743398 708248102 127894251 428842551 236814309 990018872 179183784 264724999 312814882 103970344 48058097 898490613 797812740 785411926 587863873 868335384 494100568 374018131 496139998 548253458 814566272 783969488 544733317 227794593 904179884 104376511 971702050 236499838 747282252 959912901 94526106 222286734 800785612 539596068 280999747 516732561 734472122 660583359 493304103 67715099 401194229 8826363 26821587 354335773 223394256 917505359 16308255 338060009 129146168 543174777 698260631 903134459 675336448 430188353 442640367 102020934 71967370 618417337 125460210 78968885 205797598 245054926 922826130 607969693 512987124 627247380 421232109 816416675 563850846 271704914 419238929 622247784 949945019 555516898 669066971 262030169 774070340 792038549 547362216 919871065 519269901 142208112 803600904 858270316 197602526 977939042 484664668 11834173 249763132 556264727 513455089 746420878 483572305 158194992 322422649 103797137 330854995 348565170 447412602 954016172 336325080 720412942 147668947 116932399 451870927 49219074 426893258 546049433 403048610 846064086 224562694 729441873 108305747 799155463 653993815 560927028 966176887 470847970 762317449 325856715 220058511 994741099 603286171 951816028 367640452 116136137 94819230 3195826 206397864 108632506 460413583 670615237 948138530 636842590 683635354 505171469 880387869 766955643 469644909 868943335 732126827 568662364 86451730 796505924 965010331 414502567 394135687 408996737 93433126 486796989 271758682 674952102 52915002 846189366 932048860 706948392 851344300 516584059 724390654 145032882 340292026 525459120 924787571 740429896 370837633 626710119 480204154 346396454 209783746 451506050 43823078 93136234 493726662 568627009 798805487 497305805 438606766 695780253 299602830 331846318 790249259 815355448 174091528 50711476 479585908 330579063 341819865 996105849 270886123 391954494 444053057 225157786 581451169 93513332 889079824 845525464 386941511 286906412 8932602 228253258 337292204 278740263 907481182 800816744 846253590 829716563 702379639 286723063 25228628 505168893 765272465 56563381 325286271 114269763 871252781 223453220 521182291 274409058 266612099 859336989 727884934 640356361 647200223 206421738 684675189 552283959 394676854 540949146 158059241 795547199 673339385 96290390 711260510 497626006 287749060 138160202 864294546 73361028 292180212 340103057 480215514 514613709 282945820 425410189 25585928 497559351 420372823 106665826 31281477 149916818 81638803 723668948 786577434 728244031 210063726 884569619 262355966 361602974 576637160 452171963 382199390 114923825 27812771 742033991 74979636 630814318 970250911 11277521 950512700 935050692 87287770 468860313 490821494 689300031 770855864 549443729 699933985 78528698 885719382 166740360 135728253 845223722 524120113 992145985 358501963 455004051 658525360 308259733 240956903 911685719 626969069 907389415 81056662 323170817 311445580 514232572 594830961 262730546 644055090 744500170 53047838 459157030 245084673 531217668 601650059 873474603 781412510 249501752 686370185 140729434 865982580 911592838 363429935 702984320 107637011 384932350 876461386 332536722 130248885 12179325 677540314 467573790 565447690 861829838 962939253 94612489 394800909 724891378 640248108 252135932 911149141 385203821 51641666 482981993 849012827 626554552 279836855 359636363 253744039 850706933 984913036 297643485 919197623 655217790 547529588 217434247 5656794 628267637 266721435 269424820 677072743 636238671 402115649 381008987 846051863 872671746 848227273 815428966 164637652 347553148 278092058 994426830 250992880 105597922 509246206 316051951 599445245 394754344 707484302 883144008 562546899 374608327 695943976 364801856 203651551 29997292 934298999 108805866 317008163 16520362 242348187 353047280 135366637 826047767 364043707 834409547 873420539 260465650 707044422 919343224 477964968 561143113 696667347 419059857 542214 801265199 667259471 40091493 887447039 289981834 192783433 8506211 901009690 259542323 668303369 396648610 35447143 678814362 806132042 724845138 193316586 3721084 176462105 526899247 139962503 311260372 951299065 616769954 168709045 862966114 819320304 813231346 660606151 436857205 906475169 6783290 845426118 218489502 205452719 526007629 778239805 815806297 225464306 602418131 397283971 411265262 645294857 462940767 953195695 117219770 65040514 952518259 731784865 863203072 968883468 379552933 72153859 735594484 957100379 909431570 894498440 211918157 117727886 265945026 882098021 15228745 568436516 202578200 870183599 259218382 22077118 135688808 503077769 463118624 806141780 247073855 76856795 914262858 848941861 15929699 422611257 574346427 352577469 378364129 220069556 348288039 568191767 360291102 575580453 111725452 875047107 945583746 938535842 549084125 456218563 938411403 583798429 954793880 934434485 216426168 265445340 440115425 590267808 878065425 256438883 367539618 723520941 824872096 233777531 169478060 735757691 894952984 177082218 554940425 120245097 664056139 333688876 680684103 387807847 450098930 332386900 382766445 248564119 407212295 715306421 341802854 100242854 935328223 349562476 38183177 865154139 287327978 938133569 361946823 500933105 943101767 207510112 522069676 158061296 892198438 759370203 668893140 11450699 37084854 815730272 514261572 245722885 708759070 906782044 331657392 923499365 998283422 933501227 552868032 437871258 207616246 594032160 96426320 902057373 179630491 890457432 338741154 906184056 705376404 505487279 627781336 897486447 561361648 438195587 545323856 159725556 877545949 861248035 80595949 240047507 168288384 934025903 281433821 938032740 525258292 714630134 624676452 644340270 184676901 975098639 784019523 359450682 615123332 403727291 887222550 690736241 634038243 568261387 388611270 58203580 133613078 522127001 46676606 34117696 900323917 926163138 506296220 536660207 802041332 158944084 986274367 891686067 671725483 619314479 682070438 995801722 437262449 2142874 268630112 528988084 319193585 315507022 690052099 453291029 684790785 219471152 296227946 690996035 726728698 238719522 154811356 161845501 618842344 16396134 774175784 278207096 123129299 646862668 78714669 755260005 325638777 57528246 230621779 97272285 190961943 872621839 86357929 32866982 851972853 594656937 551533799 752345121 229189959 475462206 893016863 735713532 633924729 189079990 523588148 916507693 193183209 66736688 299667704 29760562 450724305 371918226 968233396 285517730 862297853 753401432 236762993 779521017 636831568 934192326 466464302 895229305 366848476 440954758 435121785 909818158 958105863 670477418 870266505 297064005 657060798 742741087 209624821 134974556 351342386 670696656 127410609 852255116 10455980 462750162 790852070 725363036 147716077 531144568 54354484 65890632 2420384 372829979 486329815 938554579 315134943 793422348 60678886 323512925 356424469 108245986 831732070 792990792 508100703 131903790 35094358 289021003 557416476 677453212 161067716 591726507 483434647 567645027 871900165 646303647 34663887 129285605 400635436 864103538 351396226 461948716 350267449 350194289 111645012 573128084 308644489 106364580 899666104 751080864 930256270 279633447 883685546 536227986 453148651 645085595 214103096 476457626 923835548 273357535 664155365 355962670 305638020 371263344 218943451 707314203 725266734 456563934 775190701 567521060 603454344 947559794 194569973 296588337 149024006 784191469 725505216 551934819 752733416 521069972 725736691 532039893 893536041 923548302 70349063 503052643 189520486 168996984 899197016 226158716 932287195 505167387 37870196 888246317 137076173 916130490 135286433 78784101 180401655 904486966 689240111 347466732 664405277 380628399 118094417 710070991 697052696 5533716 442897743 203888248 191808807 703545675 420738257 664905914 710627361 211292313 468590336 614830421 55301335 760681930 281280067 830082459 596543680 796091460 415954942 783341067 719375323 923585433 979730579 597208176 533232442 594470 374371833 147515763 947570247 938422959 48257407 905411812 368413910 799161483 592535022 126584427 96864572 455836323 982782425 299758251 705618578 855408911 56179946 193389938 978510659 665591989 264517631 334978657 305546648 172739910 788770505 413965234 11532540 251453933 17472156 551121935 938033169 489541885 984575930 455573112 465484890 377188456 765248665 736519968 437268386 300924388 317336901 921936127 563353488 366872776 608867415 739770205 502149688 652432317 799674194 28272668 323246700 97019976 816728406 105179818 225958563 1123232 18061647 208764250 690775882 959630423 374449541 269357865 451972539 353124615 174943440 435282666 434159512 966318 521585168 334457573 782313227 281173087 649430442 215360640 309458800 212825354 753722632 647511953 693129327 650079093 13156607 77386814 842135319 135933203 354931322 724229562 882392455 578338239 139990018 227286323 983594696 255259558 586749234 541908710 200750352 703197975 584733086 898266587 346755017 574379336 709857284 9128362 835588058 750596370 870950635 309516120 805145581 919870274 907045390 868474376 879701848 584652294 53681147 963485854 366963639 250684391 61253470 703930044 514543479 572100744 418108541 480083759 692497049 83062924 6926465 70578771 781265462 599446020 511518330 455845181 486872969 471963800 905997927 492373832 891704550 893113325 683136031 840097009 686945309 807888949 46252007 519193802 683563994 815097193 342445268 805422810 873561289 27264542 407274985 77992616 244648676 235509347 842207346 103727371 425285204 961605531 569979860 329206530 955002831 191671170 622579207 221736518 720759614 895138760 854948773 353353552 931783454 321903527 829227940 217432430 1215002 424812785 868167140 362287911 959783477 505991491 181507878 591801608 606944827 445009700 806959698 632672934 709140427 442458370 902774073 413764263 935716552 185008102 754996299 581603866 995866653 549070735 935686705 159670295 678576594 452848949 420656392 310039781 201289449 315402810 24289514 942255705 377598330 54861168 326492323 321557297 980610069 628355461 12451627 400834399 611706265 271406434 529837704 661175981 173294575 103300327 322147709 637474905 202987425 950982671 492216509 759963457 445455895 851224632 365953346 600899556 920144938 460435261 911120136 646891435 85667362 987084118 893249512 351859221 205402763 57930036 583595122 274534783 960594403 768704156 262318203 452674508 722578548 843407369 984866193 108995986 23942358 927409682 381931307 231415688 593565579 494593618 52888392 154032344 678780236 751135206 166513539 859729492 240945192 404171090 666403340 948032112 979221770 672362608 150801671 144943614 820660530 479920083 254760213 406459673 738536456 864990582 281550119 697914781 74687244 158792334 78805113 368981421 58787172 351948426 243073632 35464343 246941347 667058492 366083349 491919673 17219142 351776725 41670438 724094612 221179885 29526550 546911266 622165370 99523312 774983951 379773288 610780874 203694017 733035171 107883445 69876971 365963663 362944979 747501347 4934087 733809174 87970878 455874147 251615408 875576460 760846334 891375892 539655789 877761069 890127439 990325971 279270344 320019053 14345091 895056261 629517093 514254709 972299192 289003865 464219140 961413817 4055786 444093275 301607592 763988570 753186055 752380306 445933239 681645755 272414411 907509686 982539850 23716939 246193751 713526637 168237231 401820968 860522012 103920378 753006437 838568168 615352367 929833392 344434035 684210375 343062888 702784140 746568304 843407770 380357297 848969577 809237335 141448887 971189488 32484162 846595789 632873229 850071255 953106501 632318874 544259959 263168422 357828763 955460669 971233384 429732884 716517697 447109686 464999803 198448508 409479707 754966744 63526789 471055592 186860247 666207816 139886902 417124845 311274931 175939076 101906830 119444924 781629314 762804173 63423452 206829577 840660381 899862491 454073964 763454383 642502248 837506927 53356773 242092398 725490966 319943763 271531559 884960746 645592548 144587364 436299722 253941977 837423861 595278373 603566925 141238075 124289447 801553835 567984475 820141786 900239483 528579594 644989039 19327215 149163385 696281736 936906810 52549688 877607900 324500497 267998603 188701386 896639833 46928835 513768167 778678294 456459703 928278012 24984895 716886155 827098158 908010319 798947634 542884550 894837770 329737873 610113848 293579402 882670577 630100647 484084564 73956917 849750378 492103991 123749652 648915096 526865933 593396485 234638197 474862166 45521209 502615658 467985616 889001383 932524557 532476382 845916672 13723926 194479063 804963948 35030852 872104724 174835736 697687767 894215550 326324154 331324483 650832149 977077117 378033103 272631488 238821168 468453598 297083955 705426626 220000118 722399029 386846220 561402025 196633661 394739453 118988754 947924068 551450835 444543078 558053307 608987542 189107348 669745183 103017483 711855488 724281001 584695741 524052253 196945510 485442899 836208500 498439788 186881286 154389264 153441991 239717953 194424582 414512105 291606277 574924396 636189447 402234419 558088193 165035984 603035623 487019294 86254982 956870052 373007018 287782737 132600522 577123379 564331536 664837323 88789296 950188990 37079338 19716606 985949059 502467364 606746647 969261457 267748044 753100557 388134466 491633748 170820308 918932718 857452104 202164456 325390283 697767531 955818933 81608602 78120588 259218024 743429537 339331424 25258983 773516982 253907017 322862097 26132370 915983094 431908631 208826399 666997338 73431290 771535588 543989912 381192152 453842409 940062013 734857652 899942646 65959871 926550444 619242828 588263261 592817688 654878016 739641368 698261835 977509863 135333072 334726099 442073645 998339001 966770728 732021032 792139303 554348832 31858154 124659054 34372631 786382007 744230496 905846187 347435130 938841946 87196252 735694662 905996926 809754999 142366156 650518245 311802899 984085495 171752749 730143194 438818426 663842962 608231145 120621468 606917856 675767997 690992279 910873533 309116020 278496592 414750897 637753650 724315399 984107024 853873511 503272464 190775669 565035430 814437152 344492170 410090355 82297495 24538758 652437239 253295135 662554152 207218505 925675473 347711506 743820515 758813507 49638472 640292718 928575811 154980753 868209283 472380806 211753255 709159440 778967554 918275512 911358160 32970153 623576166 106099129 655022687 580768890 229758177 201894727 668392729 841513831 556362130 699112304 108589484 4223295 168196457 675000281 972715085 192341910 442454343 551229620 905796354 232614580 804591002 52719484 596491114 432116752 812022419 529599024 347099821 923454784 809955620 985832309 184459530 628190482 550362858 396266639 842908311 81306675 793392059 91433193 192352808 995743137 87155173 150296239 714819718 688265717 576213189 681870999 801739662 340712922 981835813 10159038 46475024 522227735 913894418 734503260 606522315 677785325 360140385 284041804 138892292 83174339 594026574 209092931 878812442 967069019 906124807 588048799 337952007 680095399 132934819 999196835 887559246 259584469 230493733 599201357 111177979 59824612 302910064 509204193 895876012 225148934 350079010 773369973 68252191 367255317 345643679 259701151 576513786 451374223 640361583 970091463 902457740 602330710 698634120 101038255 649473758 796034873 23375189 871460852 421914724 717528672 170176297 64922971 235450094 889127793 631774588 303961637 734225389 235886969 643365672 783324410 631867552 741005848 988688463 522185502 793671258 995479537 968783766 282135944 614138235 465542733 956532306 558799784 681584579 178533025 284503992 370136535 837114568 395754785 862276386 346408600 330743546 970326047 79929123 371966803 42657005 292583225 859900080 733420759 834914485 630430161 524779741 623929474 726542007 624001896 31857150 662442627 225063300 554627727 310357692 420928450 90995176 102686110 705824995 544259888 639926113 494919256 6802850 70885421 473306539 292644716 471376200 699922360 949730672 218923400 653557565 361925086 890410660 995125001 594403527 706725456 543035638 561932099 897283412 546098834 585818460 419819016 970986231 446345900 291880742 12573654 781214364 358389043 882181518 165352964 576565305 158904204 811091658 289357375 331881007 595409530 662741475 489215923 969634247 84257348 620599032 851897438 703008600 448791303 404224125 996318265 722049861 956229203 656142515 297276713 265411089 419401189 328536366 538598170 644974724 73757585 794991289 709095512 859077896 535891086 809169344 30304025 933090979 81251303 921329015 793741239 838736960 938056300 190142378 834783373 885469643 287737722 534231172 272347188 591530866 629923434 771551124 702441310 259176725 755133507 334192166 564253949 302653790 610574836 463128463 558982511 719505815 941477703 199962438 523779842 467546267 730813521 174362388 973461756 61375866 764488209 861852185 685374362 894934282 626611990 32495672 146914761 566544363 622055903 420359363 578224370 43611552 161255870 709631979 754254417 90850967 546006019 963149445 492595256 647742038 117387574 538610032 162839005 578733415 538048942 955254969 70369926 221590300 398494556 397964376 279435362 24238981 679130448 838844382 563486915 583391859 253854424 652600666 764146851 440407454 60929838 858312708 591079365 315237069 31528824 630490502 646276574 263553138 563442351 556417885 929086398 790440785 40391157 963402036 805396632 599250026 614517932 90245990 412747211 801279111 360959169 210140010 42719972 739634444 815414254 622452150 341491681 388387523 188126660 619280181 695745660 886450627 212154066 504420260 961606839 3677143 470206089 811572615 918899791 701906878 874994032 131813936 774346675 309399928 276942895 522456568 966663763 190513121 514072853 203389982 918473587 717147313 82784455 105506697 275392727 577139516 881487023 271358081 389794800 390624874 375533856 128100482 134126123 169493156 605198975 594960074 684217317 729467241 748650016 916151389 832767804 79971176 724293960 945738281 801840539 746630069 147031732 625638888 873210711 53385629 309303671 131024693 899220282 104299797 203844749 493696660 962714661 337827717 170988057 502292684 404470376 791868627 921403261 823474568 862628471 847509940 334793731 461041368 117146679 627647743 29592490 112253490 181947209 140644627 783618252 111392431 344164549 192144198 316948466 600059555 499912161 129711146 862945305 106866569 791194449 471618938 196465224 618764241 249384822 924652149 27238029 18768199 865713316 787310056 305975233 535275663 705203121 606839009 325792782 766662360 896834739 589413972 226136411 72852432 940084724 556839894 366336380 337884668 360008466 65660699 44603411 392744428 125686295 584941775 492846574 101634236 152345040 645402552 410192526 120645072 516922901 370104334 874154344 474456408 203678853 321290229 625286810 51407863 183477523 768889874 770550286 46812285 628301203 895788488 627205031 990695121 39040654 834943986 254109556 956448803 514010187 108426261 525686965 724046817 501349388 318184423 118573039 979901694 990073781 697283268 472297195 969763973 218623222 27052362 883218456 984418470 773169128 521418728 192361311 866752250 756318417 299237582 750849782 705638723 739919456 320585738 1439136 606489487 677813412 499359311 491919408 553634233 637775945 966661977 584425726 365387906 343702927 489381553 394499260 639565998 431615695 805588176 50093360 994920393 555374808 892637734 290218203 396362273 874429845 327015862 244310813 623073726 723019229 683099044 756049108 579332247 61772888 478668520 381437065 572546824 682695126 358174199 88367641 630530875 55969487 620064611 288554297 250503415 689114412 661567500 52950262 265968653 768854467 395905343 257482950 405067145 173334674 845594130 790701829 271115612 435180267 381936252 763946076 172142839 813345151 351959021 567312842 392535672 209040104 879891493 9941045 418621310 269437234 309504870 566115053 104910879 299161792 753099306 275591070 629479880 527206708 367487415 904052837 529477341 137825666 990377819 957329669 815661506 16482792 664941411 150689410 22913620 875383992 826050484 656512640 692512661 527466285 841987433 529106146 723845239 701273631 377775340 514324013 111466352 892203235 435169603 474018113 677810115 358317834 184770124 341736355 751887505 581027875 613309379 999679747 773375696 166736606 653735176 987432787 308229573 961634732 84515205 596162903 405059143 454200790 374109437 106672068 203786515 87015748 566731117 290368359 543824039 180619334 174567021 957550294 931881876 665657719 429606332 931766528 413172750 134310352 981754182 516456771 434710206 28934693 335070745 603948653 683497882 692627409 114346723 568388341 557126667 937163271 648883073 970954661 754419779 536722134 711162234 808493330 891153507 644721679 741389388 315585563 94195620 856643420 664274633 489089929 907929405 172478157 976133440 10914796 312196184 582227534 434172373 358150539 279308022 990862800 676822923 140806819 156518868 161190872 870975690 148336342 500955696 220853118 229174960 565766489 957639933 825102215 662627026 528527585 705571994 530986455 184939411 357090590 457659172 529362551 909883954 502333524 375920005 246438545 56013046 842153596 384018518 621947895 867415769 802872613 846482575 178010832 178095625 113725483 466109635 329142086 41285825 725374816 495385951 386051621 855287963 819629100 594139272 259442792 56304399 870801775 950808544 421055146 9558911 398642629 232620826 904342016 248143225 12808736 316084218 638920946 990488058 290896939 124892317 934699920 308020773 152113083 472250185 270884125 428716118 476210593 342792437 967855940 839774909 302939082 540954875 937454613 202689404 91894811 968625570 755224697 890082100 339219995 756513886 4729180 377188311 424344531 238830389 128150687 909881067 542545073 254698676 56343633 507986865 454842843 134050983 98529139 116188074 408676633 486346630 958658166 837691385 209702933 801528056 361954792 272298510 777723624 916082282 676862540 806532410 137517689 391333136 311022843 911139612 494786784 979784791 485202814 97652225 731763480 772770425 75904784 7398940 77611815 668773808 20305118 700352986 595796136 637136111 311345915 446819450 841322375 944443193 698625360 111667174 115684089 177288994 615949482 228324534 924050896 566954702 402956789 9683811 871887866 938692981 865702389 831236134 323702403 260187804 838807501 412242233 48232657 488583048 894394961 112593201 657911879 909849900 477831044 42469150 525315804 135127472 418145362 56837937 746663840 510450751 623921048 354033351 844832677 73755776 448572989 217667601 733373008 750270328 14218044 388720009 296400633 431126304 725627386 441938797 4540925 888334355 644781181 359666463 342149811 176533318 911020105 310847999 557093440 383304029 87958841 774553183 84476847 564297731 486816370 367673260 196052793 349007804 793880227 365483039 633072847 24975190 379632985 618875542 749303641 421830368 885419735 978949349 690148625 408044399 307754303 529875320 510681749 663167881 930593629 395416814 189276449 717841665 427113648 326178399 973027046 301395925 237919625 828795404 956989761 386577624 261031837 573084201 45180033 949000065 26170567 593779440 632391098 525461132 308449785 978649492 833677906 807467693 547405584 270799665 683521428 904331490 276404390 721740501 677456021 2116894 823117865 908983118 772279120 597487869 544399532 460550147 686478569 554431636 49211057 995928496 630459154 840723707 362080870 205658949 362321732 265498639 528736637 814433826 792776987 344424307 925197824 301430183 282505350 355661256 921722844 920254676 686587220 998229109 132120717 699413933 144011322 812867385 417430267 623183968 598806985 351151207 873768847 73100517 895972891 177249589 242134372 363272689 486129995 295204196 497181170 123492420 561893990 417722809 139386393 266330778 8526064 390462446 363492122 660263213 24540370 605984499 13869691 15980935 536854482 860866626 590334909 521770876 62217251 929525462 966041308 767161649 873325542 900159234 508879015 959424045 358125082 910655767 344034455 466487430 446032243 756578446 146944462 291838507 474380832 593078890 548215992 721229988 443835834 467832181 929101142 225326096 206378098 919494736 906630789 614110442 223678517 612586108 171761350 319690970 958536595 466476126 59240842 822258092 514040092 251836317 117584751 143653407 434540234 633825517 279181480 183910605 670088712 521171142 707677839 611096558 346662718 589121371 286213852 522659896 977297336 945962183 790409758 521893325 831472236 788008353 57208277 882536721 411324195 640934627 933980558 612259249 131969517 195680219 469144585 152188276 912903229 108950945 208532497 471380173 867425202 265855797 656148184 241864064 773289747 758997869 242992890 39434549 141295611 57958435 295741064 410271751 513599693 830509401 378826335 960749875 455694744 580292528 332081451 453981969 545534444 60438615 254346634 63231402 371881521 463408959 848814336 66555405 20549976 982456265 66424789 640504226 810766824 200503354 682564929 508309346 828374863 754972251 360296183 634724533 646561659 568691030 308028694 600669317 210953966 941182053 141811821 707571498 932471748 932348146 239944390 877595383 775031885 719686138 954355793 407947468 341710167 922121012 565892394 317417282 229459952 950715063 831502567 523503848 977951130 192924820 252779144 546830295 860702186 645564202 768701982 466289449 415824996 796151055 207548505 195407418 602616645 64043100 780484722 812019877 448802209 553627894 191575153 48226381 819402949 910335406 695221402 305518118 899392189 154917946 502768709 607119486 133562071 103608572 906918620 201684982 821291601 813421463 942674190 814779896 294725699 996688733 150968179 833442722 951737647 413618722 43983572 524436011 946567655 403559774 398529612 625374753 640171991 95302243 172724203 20726452 75509689 711647697 110342233 118069395 991592332 390759279 531329756 480330291 852015451 908364907 520312128 128691796 64947873 345650954 138540775 508215211 472549779 156397111 840101460 900315865 561011703 177927761 91736798 145691162 181466756 719721808 918206604 427735218 134489705 310368750 235636113 348285367 970270779 667115208 811915810 810189380 539651311 606569808 858183932 73494804 237514113 964158268 160181644 169388490 709156030 774856212 557271850 358678236 445494319 96998083 48812929 832020528 504523171 843231017 338348587 105724176 14409776 827439537 634166514 45182249 741520336 311181568 9351817 60159030 334475790 376477429 679408549 832845860 560040792 271438280 87030740 710796411 99460230 125383046 685307171 767165026 36945066 874834983 832381912 129268403 594636674 85409283 741444859 964837422 132380447 662629598 208902357 574948072 165831901 904346104 983892942 879856567 603828095 470646342 776732877 247983388 623975654 323466592 434076772 876241518 318555572 113822963 442584278 206343889 450299206 772929863 33522128 13208008 474268035 337770224 214202738 45173289 902670101 168510902 639206710 285982736 50028408 792230190 841714665 805119110 488620546 535715383 116724136 598996068 193679631 753370784 214190893 594049522 250569785 787630349 823652299 456237191 733927215 193425948 421364195 258819340 498598419 503938766 418363459 147812436 236627432 586468586 115217115 189736546 543103985 783164391 612876783 634284692 325817438 492330274 619904859 917654356 678676307 312849642 58976470 903922039 968553715 840437436 145332419 294483662 433968996 877741566 886101619 636532761 718981350 217257864 4589024 837118499 126679203 738986102 588029458 83994861 558898494 382918908 37669305 508357945 92295846 214368685 338943121 105291039 365487081 545284409 684268513 877408954 191703685 475239451 714563760 822048042 184566673 27525045 878315293 530617712 654482814 463001879 808933849 733082191 796579762 199150460 942120953 93952405 311546646 492010568 864889373 25195981 708678156 313793673 984506395 599185149 417071337 137106339 41000433 598593249 122781824 517942332 10304801 947208112 117262600 682768702 685579882 794480950 483741831 177723592 303518700 986577757 690425970 300991667 176656589 651782914 820289972 807567758 921091091 636051519 584679884 54617431 985458905 554858688 123924987 575140364 240581595 533826585 488587432 378267115 983891399 554545162 781670350 831202756 248640234 6282083 404125831 435910206 589815291 486049168 520569476 379820467 807043041 682401869 884981888 238468576 270534246 806930015 571016864 691999913 619004549 328255554 91557552 88448018 674008095 790630436 711674791 287990333 201093001 282870262 716900976 801617627 587339942 793036113 982025969 532920663 986026105 359728659 274244569 695857695 956094742 405491569 668012298 769381890 122415377 766289515 372336994 201990927 664668538 11310425 545920810 769827554 786299532 927987637 570908571 855853690 897869271 423087468 931606219 28853658 671644494 406630252 986117355 219021341 348722521 657563871 64251727 791193106 221739539 72405851 545049566 128106846 742120427 229701450 224164047 930829253 431605725 133258601 403496259 919450638 513810485 578120739 444602006 332418390 200158337 859432607 931101974 587110858 201509982 730514133 855520805 945704155 430643725 481160492 933370763 855958000 304245858 273307959 372726057 226836356 507414140 381194134 29998884 792492379 705047275 541674706 526656759 270371784 917679011 388102804 435313347 153901553 921877684 131565713 421895937 267539018 922954275 99628676 335760720 981819537 55402998 48483294 313948691 118443063 4532177 476540109 421559316 478353973 399876761 481138754 543481955 492928853 642380734 378292491 916268298 618054569 731138734 585110115 25123509 746686735 162629341 455952413 147051259 853877943 389863995 782641076 742317248 50495403 647971588 827659645 49395975 85276736 703860745 174855267 728867078 747553402 548327808 201304253 632018484 805165033 310804980 812169737 617284571 569545868 227344915 380519995 555696046 288773939 824444438 772749801 963424258 251290027 850684409 376567339 568929705 653976657 648870054 35926415 600725526 847315425 292220722 496195766 23498901 374940548 111174061 390800023 815497012 985625030 993199908 262301911 722720715 977510657 994095342 417025327 923798412 734744517 618565007 234841996 717189349 712966386 785519958 63959478 263084754 759376413 127935805 715354514 475207992 900440114 359971911 388185819 960868890 708802217 889525778 619405237 524398530 497666135 251234989 58246153 244152588 466974130 738035745 869581239 93084173 59553301 113365311 659325841 229522790 315890826 864990478 613528975 528036383 647449942 30137963 470978879 132359340 243427199 736416531 973025212 428648990 137659377 183825798 14263345 628440982 641960715 259143894 157212124 75242518 521002193 236956509 482465912 154766684 102837013 569172415 468902554 808655812 161766418 613731990 955414443 411432397 223238128 852884600 633815792 717927368 83715440 592573055 333265018 771049626 165529621 893421059 206039522 529703256 119480510 557373206 909345044 608129079 667161791 224416928 719529417 903935769 112517682 175037025 295500311 623063253 960282642 805592048 157259788 246952348 617639925 632035498 533329533 423178423 662333035 539612655 74990094 78284846 585968954 197257403 997801276 731608746 790833150 327813582 130794356 612170010 407316629 489802855 735117245 917448369 394659651 59389049 585627202 556855029 188666461 270330518 506908353 696906068 932250202 578177087 382880223 559545470 213580582 292709297 331669461 919450277 840349594 586384571 922718203 268408358 526795827 421766938 147189355 364098680 584593902 803744115 11762884 70181655 873853797 390647891 610975411 730644921 496848891 584222160 106364864 551696021 106701549 13096924 827840183 254373027 85386545 287959497 499893177 316829933 970557610 654499606 778916469 855862313 179174016 99060406 531060340 33505461 759390656 247028313 664983989 683063791 859776255 392722004 696410237 814987898 582063928 521510050 467993697 770095864 657543795 993574513 406064065 46973043 444544283 142787836 689823553 287253292 599108605 765155593 558498320 27498570 683874395 686451003 642210458 336171331 560752095 51216096 986588591 339513020 448643376 519058218 66730390 647617691 405556353 35704360 329039125 611058194 435534212 442474338 825042194 845703777 775730119 606826755 797927230 978740137 490998273 364273590 435869704 965975094 271846649 164767067 196298979 872642916 571595200 752109518 794869339 590253298 758777914 151878146 239269906 642461747 688422772 965861824 763608557 103424622 875564934 853781829 237388160 560984187 53287342 286289585 404116055 160456517 828290926 577119838 763317168 862336865 636406693 952060501 406001957 79685612 699750604 476588224 379830562 863440269 164474645 182385197 200149221 103985683 700647838 34874860 379176653 533685338 798517794 191778721 225045584 448868415 214267771 64828453 852601299 181986438 93200705 327221493 989099195 35626522 946813796 805932945 352203588 571747100 932653725 727591466 182219680 432797736 808636765 6917015 733521095 385879281 328345518 347394470 303713227 769793932 209779808 276042721 573172849 702785368 734399505 884227381 457408741 367999307 519425133 669739978 690461350 377020345 722672837 69201335 185871024 68235171 415661017 29830707 533813519 691776347 277203789 279787512 56935216 786594491 470216565 645589420 505904195 419186140 614103369 724473806 765723893 981100302 623677053 438784587 951164832 835554502 33129522 647642186 374064157 801268618 401149164 275847386 617890562 323247368 528331722 51375054 143217719 622870324 499002811 285913152 709129939 827638228 663909036 452943609 992952537 992634071 581378510 8862626 946609128 129796275 902306742 152741383 516471047 134073691 80157454 202267320 147691201 798340062 225100083 1632319 778658656 855518115 160259219 575770462 803236041 712772822 901767789 917191814 133317492 815171881 637955957 751942605 446748040 489534541 508070748 484067410 426807526 217526523 328639008 50357211 353768014 881939806 968743201 578257348 574622833 332068548 148724806 104967122 779050508 999354845 344961814 351235521 463978268 919769303 104855245 910083968 670466152 637972818 970846067 368555340 612326987 622762519 268594526 159303387 352545531 703370940 334292464 930840005 610890587 928498302 328653600 701358521 231703336 531123707 114284290 672933346 477666757 962788561 436979146 885031977 681959156 377666102 180868438 294552824 926342987 696049646 687610725 703279141 662035473 645032044 301148131 163288476 222054006 438103233 159104002 815240377 860153378 936108480 349446557 189347228 643616922 898821582 774915492 82520448 346391501 969525777 672533346 184909259 427747515 409067704 278513129 540262652 484064545 710005109 361747251 963178654 648960664 64861199 641690763 164235163 457307108 703174094 221196689 936213274 812435482 71519900 877224236 50363110 834263393 493925035 853289651 6898481 596670532 945388763 305979932 474182843 562279459 427589900 791506138 766257349 821477825 816782539 890240111 776696204 278875026 252535767 60846475 756915454 265077565 230935706 628282990 142710306 774904198 940040983 151762903 809457552 509119448 910007692 503923915 486147739 986191742 782126624 562298839 333736735 416850812 945312443 658079451 337060359 461180074 522128632 496666996 686780896 899490439 364350797 165198524 167883761 951642455 24194037 980643375 920582319 754053061 555317446 805256782 286187308 769835308 292219052 743284170 751499622 688625593 502520703 689501468 226548644 856048320 328037184 956792331 684414403 996666653 282465127 844031857 571576831 888423831 203492245 421075198 738314890 232797383 181601507 100164259 332889644 193377864 342801936 112701799 194970349 925928270 436542655 528780699 794099382 686245407 12004551 386266892 272539742 298241167 696041278 428043356 781511726 579047540 18045277 341696962 733152449 272700505 219986059 152657274 808536503 105371410 720410778 496121496 545874957 593953882 188622341 801672114 737237127 75704585 157685711 952831682 8147853 2009612 169745823 701602846 684411252 687410486 184659886 596292869 983028516 246868701 422251535 361652698 870648852 572305901 783672181 133699431 941590435 766384502 824660384 383899565 941214795 687702786 181896216 910472885 925047311 302108881 43027726 674710441 81037975 609130644 468423541 623120820 481398198 646618670 523480477 33820902 228836450 288520056 865029097 309424452 411437164 526321727 332346931 737270677 530282402 927945573 891662934 388627982 531997943 166222238 874446974 624425720 461916621 440017280 596730046 46006741 377115256 576357288 457053182 817773441 192228418 730042098 527616727 471426111 33295196 287392885 412632775 931515204 593567457 437200081 240901197 869651982 646377177 72871157 87340829 807172996 872249906 69541870 754048028 803209444 825786755 677176982 503103669 957149983 587036643 200418198 651861570 670280432 198886052 38814735 702420416 491667446 491119375 80220696 118942405 177663321 849683623 450532706 694477884 276927365 435055871 863074601 67838187 502927100 332453206 674972781 409690526 124439241 791079368 984945055 438069565 371970527 687640098 414817069 755541330 825483558 571697864 962428952 336505758 658975305 791505379 261297775 273240645 946511186 784347071 853339522 425433011 832079138 697580489 101076115 574110522 945458494 383323226 914277535 92065009 380389921 261828554 323869938 694313756 832468567 554083228 366677626 224026358 21415644 47848367 134755004 43153324 105689708 957897666 833786387 784800930 336122583 833205761 946661861 991040553 202627879 341304250 757675467 728771530 663994778 799765008 9981955 213864547 835115499 26050727 298225096 147204745 566140786 532113344 975583907 722016222 945855776 329876996 971184794 944779884 264663249 401397795 83216705 230776476 395380792 211681838 404386794 357418423 486934246 529155284 718678451 659759074 482083431 832293160 734750967 916839523 310912553 232223121 362835128 853352529 253697232 111721168 146474001 67715790 133765378 679817397 294838560 494269872 580513598 824035624 678149316 730924902 284845096 508796215 960682595 504298560 303153505 186915099 632809497 245454985 962578045 16486887 431993705 572393149 224831290 762862378 331678099 53585892 807007326 278494175 312401362 435690725 27917721 19834101 50088208 481410237 535741541 657528213 723460011 181988684 391356708 916239680 632926302 835914630 493263022 106859518 222813045 568859857 638922182 869297147 850537472 237952360 230907766 452206609 930361441 226734103 706332993 894858366 309453768 1731339 413022661 602603209 479519915 140014934 890195142 737847323 126139218 438364083 645131774 514892274 313152551 495069236 536285478 157487909 520149664 521768610 120019580 66432349 304128666 386632307 373144509 315099390 246640214 640038300 359942586 407053073 16679137 133931579 32140590 271425211 845753380 854879655 488007959 21018826 20576359 984872773 388389307 611321311 2034257 16229900 888177750 612456729 261230753 51243107 162821064 957677122 112839495 165299595 44332906 47807327 946379961 549494094 17403458 535343987 829593328 354866513 93217120 52123511 769322534 204043865 95717320 525186675 895247845 620732849 421795016 43917264 220915185 113314764 378502049 822926412 380475196 103842659 522941734 471692544 490605977 356441771 496451544 799991885 475313657 962666538 469982250 230633919 152301112 66955080 587215924 216259919 685737690 742289569 908175793 387767565 74918372 387668487 664032671 894830752 565423158 119459979 665449331 308859993 274011092 875230034 351530652 501599309 52200288 395658944 127463388 120348413 82142167 150148061 856696623 911625135 479091186 186253356 583621670 468640602 216055970 793716166 650302811 1216083 327757776 625730742 536205670 76972928 728751346 648992893 678743324 439364978 223323783 499346592 751942278 418396510 576170652 443200817 380218321 85086753 509507983 666990450 33315366 294257623 589967418 409247343 636607453 790294540 181120571 224970812 110689056 733883310 997746882 876996730 802452845 108482492 930575045 947416558 832028978 63332579 916371832 961060089 756153999 498925934 448845465 823307094 373041930 111961792 297407737 721926814 493008517 63329343 752334504 118031662 1480902 440734527 200880580 435464066 328398828 960891316 70132034 842891723 371968969 679388079 12723113 445605910 410848236 426713756 649137191 431881879 19758704 306979631 319602284 578833695 180847549 291627092 134844059 935194031 110595407 405634506 445606799 750488887 937195109 147265935 622001465 9428846 14510609 932109645 536210702 794469858 698603672 702931804 164196456 932934081 620078284 687369074 679199153 196796750 659535607 53345671 305598147 300833564 501768978 926319426 933387617 578302277 415333372 692189400 182633434 863779460 758568301 376236022 530261955 886486990 91968036 50839723 88393984 215473878 152405932 118918742 585074492 494954595 867175263 987770394 333623427 640604159 508192825 125158733 964449408 944797336 111422292 599794696 160169815 503516846 335797862 152311573 268141267 484419907 519676813 222871083 303072068 753191785 198612366 304883847 45035241 645854528 861864642 402668214 708537404 970032195 173736613 79872646 474036498 324506450 571530275 793035005 13964911 830719854 449496841 273487186 330531062 618948330 521429455 385989379 180404448 536459924 362416432 39977496 658557187 435628478 234829125 474393208 816391700 439441765 818947700 553599524 961733569 643503415 797037205 856156139 434208846 540532254 859605033 417688689 557389801 357653430 311801295 851845498 723670186 238612694 189953073 275688100 40584010 89033897 35495453 640948529 851872659 684493005 218468458 306116613 58043507 342755320 820758870 485651018 150632692 34013736 369525889 410162636 77346530 546783220 848823809 335595210 688785355 157006945 727396558 547655365 493156167 132687171 608548409 712252642 281269390 336545703 608700114 716647287 88857623 512774606 711181905 562934591 4130921 333839560 327871541 795537762 663438992 385297938 435354194 698872578 532104295 258662125 238447679 230342385 488649316 936482659 894101408 980024142 991187692 125455104 395155301 12857525 125984254 176907738 935957512 792305187 210690187 568141988 447733517 588140090 466179063 843690953 191880266 488110974 824407198 311995785 173705205 156546126 34813716 893271264 736922415 483345952 516476832 695169345 237035426 396639033 643867728 354511475 102271418 33161303 457412523 653782663 926760839 889684108 277331521 562261579 561009205 175979999 642509887 341598823 29741024 936562150 118645376 590873420 302642850 54375507 822310395 795622928 349181682 542323105 370822474 548630608 895189477 768485759 173497045 856036981 788951507 320375111 782718608 519866317 171567756 448529874 880742453 2455693 847785449 858161533 448688805 548162364 328218255 126561339 851005838 646216278 379123883 431754708 904689396 157115266 80759212 349660998 857566156 399418800 495586153 501798468 743185372 947732819 586037800 477171217 52288568 176050066 140361808 379565669 753558550 459197670 826087936 270673556 189292025 991531117 903595247 721546596 399796020 867740824 317252081 88667506 364161446 641517301 957496812 200675349 317677483 35949485 896346287 392446385 718663970 329312323 281908063 10303167 58855791 602443771 24588073 511848935 896455550 462906110 819477487 755933184 971309601 499272526 562005870 904008849 193737817 608732045 213326645 669491741 781837862 38779292 535816133 434710131 72594194 514781812 166930506 819560132 437556554 17798578 584063620 281400201 237592656 153248445 672614584 938707655 565439073 523792644 609372147 212502896 173349027 11996432 25472156 573413406 983083152 975628558 263010700 126371564 260146648 738963070 992011453 78145808 587386406 633328358 722984630 103354658 885880201 210748046 474893880 708875858 809123753 6316960 537374081 128710552 620826316 600742395 854043869 967225846 413114971 269978206 206618572 106053047 272514817 687227883 633718643 452066157 614107709 422978464 577102480 821918988 766735296 326057938 798206726 168587806 553415233 353389931 954623471 939105438 984724831 501309232 336534211 833370531 337008416 318199449 206241888 843670563 52914992 523497177 817551525 681530428 447328344 44383993 500609351 396982502 410326483 75366100 890745339 235432619 710801939 437343038 320955039 636235660 957906651 535904269 982352681 972247417 793802487 928774617 854678111 460099158 908989778 785757824 518497916 651668768 432804450 235325587 48233729 316080359 468251866 429347932 25418880 612580292 427833504 355660330 62920642 450337183 967382340 41602130 72898678 583462175 527010148 206282578 104259160 472109943 665573400 631444131 326124063 77229271 470647258 401325015 683694194 622625249 347690645 322226520 134065717 169128829 581302542 106278129 215444277 695926247 779342486 941214932 808522572 675006135 867270128 626261950 339263962 412438627 950973561 928274840 192365371 141824676 449287733 239319907 17546933 506779622 295962906 28792496 365113057 231488386 636523080 267531308 565667462 874409018 846668198 506156791 337021379 481075725 913403821 678171496 915016281 569386273 910841170 633632766 429443359 897175660 199124689 90655505 802797669 88173040 760152562 839386490 849739082 773778574 429203205 143059136 488350797 930978275 858010977 53740431 962933755 558759872 452971953 461692186 183069403 638324007 544469922 518064170 316672435 629823465 230422194 517247649 677356418 997041080 378669945 147148294 591837926 724170210 654038374 289611292 108892616 191218047 167861120 56400538 795112007 535261033 342006149 919798128 282878276 61417516 638788666 499649965 433847569 998651106 502189922 257185167 418828241 25825243 827286719 66891038 309053710 928930583 91209021 56955461 872793693 394330642 392417909 769403537 757131158 930358646 906097356 76896061 11819171 495413557 880267447 300466204 128565694 962174341 858887727 648927460 16921781 346244939 728954301 811994208 515283030 947748797 808507504 47890536 843400163 124538329 800147620 157149079 882679978 892262478 677140271 182550173 915898665 587778008 44496999 731774595 899785452 764509509 2444529 870923125 69327022 383981467 875472303 706106482 286005424 162721036 308378219 905501711 450201620 545583997 412314251 911392957 92272205 722586453 746079476 108262844 687318956 606600562 288440540 401675024 764084710 126089565 717654445 244846859 545026605 934270132 822093400 466758485 574064612 118553882 789320144 521342099 650106837 616207743 102388401 191350518 535795582 734006491 147577940 221254435 1715805 919346967 216944909 886828702 464378866 49635729 783663270 238234121 847598636 19172779 630539642 892992873 179992940 137364730 891316573 55743674 357576638 338189065 886523047 978486121 952383492 731734312 371043645 301895617 281014782 184791912 15940606 682418414 787369954 907274444 702219350 148705768 482317191 128528853 922526098 713264905 375080805 104830702 472093679 220153020 20820045 602030500 561263060 171122598 637432452 290571662 714519055 92122868 201019037 333510535 411121403 733692760 70104715 746696823 920190061 939367063 237344864 835541469 292605508 199992856 749404921 917928810 577962260 813663262 260877117 502009891 872129976 320289574 332446874 663245125 932442033 494364325 634275059 831439022 882276644 285042626 648737006 906065114 943928011 789114780 581594784 681802591 733656892 124724726 757730895 729311933 646872663 903125401 716724354 428181956 112233906 656350085 123197103 402046619 312907766 354858853 654783615 595327142 77146690 888769756 726971242 964626992 715690452 719935378 91940026 260418638 405525432 562270369 912045785 470661377 291299167 778304905 834437444 822112555 428536481 256492763 322346500 741669052 478344922 614995983 55035095 174310851 405952125 644505405 358269354 284163300 132376207 923686138 274404187 243609396 689715280 91429429 661976478 578645938 226183285 167067144 970215065 917290055 226547860 940066692 7997169 650347566 693159304 478704268 336954191 535255144 32879326 959799345 547458069 772370991 698932023 898321454 870844184 971252620 358845303 288786869 735426392 11772029 790799291 537413136 55930341 440811331 231172428 709501969 134666909 120992556 902855472 381716550 967179627 36844894 258796707 770977836 957901561 272853499 493859576 53637988 914992725 424651320 769015626 406934495 247261825 577849651 71360060 833026871 246185926 908607495 693419304 213372979 180336796 911476119 863363077 440626757 426491998 912876924 602571056 28907106 516416520 620542015 711896898 592803328 188190920 842148929 565251723 912439679 882792380 608250471 83893185 941718282 581881500 569929244 992429157 893775151 991097802 21765443 515999569 651331072 181769102 234572477 612212154 576083147 106588816 673175773 379033959 343821744 190691297 581168350 145623365 366171748 833416170 847567306 630768668 962477557 85152824 186171788 399675321 594759247 964134403 691837594 791659760 544642146 97321577 123220161 388034501 856253742 107083934 672980704 881005098 323011376 793215289 245305760 458959226 723435598 203488478 602031587 667809894 501051140 337275234 729856691 48241474 580726514 523128971 792296807 675127086 273122119 478087318 985210511 527617366 480467861 947565939 679310403 411942865 865468264 420214046 2172889 562406379 49092241 956863552 997673115 146403154 725766096 868578841 767509009 154142408 758122683 162457799 620909781 425803401 938774578 971374965 920959938 392484991 601067562 687178545 352520700 21304956 2252942 239565369 95095846 303040632 160409638 81627823 986401061 315067625 477024096 769855584 832358903 945171557 654143716 349962621 24452945 456933890 914428401 913260687 202341355 138533078 308175947 809778348 792579235 223559052 66502827 658997259 497315619 916821226 753412180 179752922 659008104 529183701 629394631 186143699 921839847 6095027 937745749 882073728 931285881 914964254 900677374 249650476 213712205 406363702 702136797 702111444 758586124 207268733 367112058 988375166 680176549 916691099 663806183 807907450 256883363 571712776 566322833 417749634 996680290 264411475 13654678 571680336 373249519 376065698 909996398 210723718 116680570 6585582 994987951 520041472 429170615 760041741 862249693 148198740 955388305 567308493 45125966 752091655 802371772 73366608 280659475 210597413 109840374 223297364 383028275 351257233 249921893 398667132 417347180 189102358 552956215 693647032 607851727 20409886 916120132 297558436 176803341 584440622 925475545 3491397 318639395 39676106 347750397 268789469 558078013 824647739 666020513 757037416 422640008 354025768 515215638 328510447 476651066 202007338 430050583 6644038 46627601 692587334 515622075 628206256 343428346 331347957 802422176 573830875 190978286 379659878 276778479 209763379 424123931 238638843 866691320 611805217 673704199 903282378 425761547 715270685 271287719 789393083 126073913 400044898 894376878 488107556 89885773 99540624 771210264 696750551 413180911 186849681 888746353 983975141 659541320 892925320 802412104 219788396 716946475 627672674 658851412 529479637 375600673 895970676 469443007 389241508 258936459 579717209 4596797 169915597 435611014 25482678 949903552 738524776 404367729 267330912 647393607 37432551 660417497 761998026 590647793 421579244 326274161 213302658 534560203 344104665 901891581 940040099 631650666 352130502 132944676 141545194 732074976 230400191 502287042 439415993 792086304 692808764 309955438 798587355 326334146 505148872 976888768 31406550 226937640 474256483 768417111 366199368 967570131 549228022 569365507 685607173 158130734 585331874 837567882 463569683 346313083 366901639 260672043 879939135 362673617 99502621 387991767 852802110 623046964 333715560 45679594 82428777 157590436 422757239 994515843 200748868 816612866 945619301 466122903 503401301 82163130 400603439 705838909 234634880 688668340 941523228 374860250 903318796 638849987 401511952 880361974 591450485 892718231 962804035 456607858 36642229 571493122 174586143 768072642 832082851 831766205 827038112 479702344 213154965 839504788 859373834 712306671 317462509 333497159 839885315 533761092 103049484 743535593 506241894 317767784 701781971 322862135 579867144 334171618 973945241 919210824 847898304 895269746 675196890 117244708 11920157 98201085 752259606 908012866 282637672 663051371 970973429 15825710 691960820 243890299 267677181 199713 171741254 491360480 459482305 311191158 482386886 332695019 796506974 572283697 439737170 479708538 208205041 693180994 459522900 702331259 758534792 407980124 647549368 988863840 788666749 529696569 277488396 328656478 191629819 980084766 87646408 109382055 367764541 580012947 621703981 473334563 9771280 473960709 145455000 181032424 839144460 456845545 534506819 978992504 916352533 782547173 84776200 603343468 39083040 127432975 529112158 878426930 812235903 296145929 216042331 660530580 101729800 874138226 720861007 880012279 410638049 975137500 765753209 517433580 262615007 492740107 127902684 12727740 420787036 146483704 223882302 720366569 26808102 389642765 170752214 280541554 416177395 424963372 466172051 77310532 286811546 367774001 191556792 806173308 68508204 817670901 225385753 270556598 217415903 147185437 876266826 749307105 608025695 959802847 326254770 145166278 5889047 552191936 654788287 660959193 893929163 373216819 52586194 962756947 136590364 868694131 655999940 523702960 438679547 77963816 874833851 215245641 303821992 167457623 423976220 626687740 262588045 560934883 807222145 256458806 839899994 87329003 134397853 151389161 301743854 875556513 379443829 187763054 73971635 14689700 340330717 239203529 457016767 114087222 926154120 22084511 61202332 373479796 769714439 711943439 711853228 776780855 480239417 821008165 998724464 630297598 666171058 231727173 681198064 431783323 491046417 559642536 983630739 279706116 881497367 141183736 741188674 481668118 515347124 108138453 502672347 319251519 207327378 197027281 193182327 2382095 88439364 616279518 392127555 424740223 370641581 384228868 936368107 748563635 76211001 391931652 983941596 520396161 879895515 460070783 535209893 124438474 555990472 834270053 654813610 698141604 891506516 830758065 525726719 814486097 695859041 225958374 443015652 480164936 620148587 515567877 584037193 521475396 339369131 608497088 728737686 799370827 460336982 231826238 257855912 9003219 266247607 66357636 98975145 677910401 334352614 107407155 720080583 313144997 319214425 613845909 385373310 908481810 713851704 667116473 763772837 601358560 544831613 529812745 707972086 129629849 945532273 649908610 368306665 855500055 731723114 314272485 513263935 373620016 35224895 191595138 448752429 77552383 143068271 90955589 512474097 858924945 346330478 450531884 429148715 792277183 344282285 824851023 845261209 759868444 778189529 971838760 990685334 546146686 433402149 181749453 783940668 31852271 389351922 784564662 57460851 35644344 25570251 537592995 923856993 308003570 862859179 168611708 901274378 567159578 48120733 838661905 746691693 520408560 875504467 713618148 64638610 104089787 152241083 725372522 853167370 504417139 755652601 967160644 547215983 971219987 593384886 535667854 628637567 123592086 402906187 936313692 633209788 632062874 404949634 749249787 158981175 426624297 616589135 985411185 728430449 728782518 145160032 187152971 413495975 888243363 938711246 949913112 55659624 84839155 480242543 69055739 320182707 881667844 110255985 325638006 515006024 489392631 971726059 999077582 598583660 145298554 432001418 783289960 525218746 207135055 102931965 552508197 438761767 716712301 864396638 820559255 743390898 363405691 697201619 766777439 14261041 163637620 377660067 244517354 637489131 522497377 262555901 799614585 787957706 970095211 693941654 628618416 386584447 400324872 341018657 349581201 996187740 233936588 370043831 788243325 330927205 935590491 945069210 388088845 666246130 179244266 332552532 887644085 497078572 542429575 411624683 519009017 597598798 749617347 704429820 17818554 526142805 618137609 727180042 210445991 280828412 36106640 714376534 940739074 476090417 815807039 604836750 846141277 672305283 365764337 40954546 755194230 41025186 913644788 988035927 905940469 475599237 149770503 925968529 628518156 465523136 396471145 625087099 262938411 799894751 157128572 386794400 857251776 426395558 713135764 966923357 946533355 896421938 939842681 565413333 66891737 746912639 933646618 837028125 900631434 571191147 345450997 787306980 864154321 946652402 280751981 774662354 18682695 917225480 806301333 493283617 580242012 590308656 619847843 633814411 782205367 613672780 556948012 17272501 214425345 122620182 465066170 87861113 972608894 396545296 623552669 262166563 58348939 358439097 839011749 546133342 15608529 83464714 711572619 190346519 727604708 357699509 957919422 526665282 479861712 335456258 760296571 905075293 489326536 695050665 123774292 884152766 880479891 223417047 243450447 268139036 773575329 35178250 96614134 603066650 174876978 369961344 66557431 547650080 450661217 799215570 26997883 40881205 284149797 95974245 854921852 841195646 176714937 267846970 204890567 974147254 984065847 992937172 994973472 172150651 767747117 376969161 262054049 317706377 961538753 604376075 144808788 732719550 135526632 204405074 757775166 760321734 829171000 89503994 170556391 268701723 896733650 680474902 166891689 124575794 521910454 984383935 572556854 985396953 920900653 110807735 349833337 593583294 179857261 145480919 460885169 956790490 268742466 648320221 253861704 9396033 428510198 706931366 235311346 721168524 352747212 116268683 88888806 874681340 794445328 610344720 994705615 435296289 190089199 429749600 996619787 777565677 533037987 363731978 252103442 7043189 666350322 898734111 434289750 700924725 851997466 910133129 851232252 227814652 1898168 325032715 64659223 730255280 687699447 699890065 503150548 595831262 961783988 641782385 165870189 645570447 469677672 145305201 293283263 104202667 245669214 510989363 631525599 240873493 851438493 203008059 60573948 875126622 542913435 286826827 11229790 932006763 480778663 179354475 378875562 572561776 247417431 561922238 778729326 399593596 622986182 973995223 611005146 76192261 508668021 458066049 195125511 844066170 377429984 540917812 262682239 870619238 499947673 302525172 740346136 95137818 361567987 575247958 907911168 153375627 836388023 103803914 592604989 948843184 336147388 119395957 967023065 533104244 587468319 35677312 927799392 246343856 579029985 117100598 174067755 767312562 914625696 731799406 700307985 911417960 216520281 288911057 587365085 311253474 418538993 57241045 778731215 101146154 612605692 904233315 40766042 760305134 987781288 38683507 968395332 463390225 782012286 942651308 369609286 309636885 436982749 77848242 391793421 333268450 993599301 85786450 997016892 655007303 986714799 332883541 502694418 454653232 836087712 864501812 392981119 398249507 520369397 751791410 410430831 305392616 310625553 718429672 832413547 132532931 511555703 72932424 903967624 320981023 980171209 226165914 868815938 995039964 187959797 294331116 174000196 370783324 838083579 511799305 367706528 351407890 22745282 853368404 623570664 406914258 131374705 628226007 566919906 883609685 268531041 485174485 989828290 102441746 505630928 474430256 225273851 127268708 663268982 914487536 45414506 704298952 183365261 416678587 324854096 356615592 572831498 878808567 665409823 471024404 706336589 768415328 681983741 984780455 509892982 648337262 824482208 878871135 155870581 425962811 344254328 744549327 115897496 559772835 741695262 2231095 744429867 343670351 911014594 31158552 165344518 194738344 925454370 439322657 997728702 952908347 641506016 933519163 312524946 727866709 389249343 232492064 720180190 458245880 457138615 430416496 393860872 940353958 9377964 200718425 425353687 708516282 800353832 515376275 74562823 49500972 245562812 76123677 751552402 570087255 452390728 106873685 376575316 74159915 108945566 941721713 981653082 147920273 148182336 915764309 629082496 425186186 925702306 533114336 723695730 365813664 816161555 820426239 624566189 638637211 57770782 978057511 932122611 401580736 6562225 452748407 550022337 462823385 978065527 553921017 929150567 432179058 161052711 288012093 45727075 510990801 185627067 334691041 581554136 161037222 204711588 428632215 771198388 181251572 930815746 826116766 897172637 888303437 101266138 769740038 51971681 609473279 98495090 800745371 739853566 901560219 57549529 61627508 119035160 875456175 234292272 991804865 411349934 687127335 580544663 721043743 967326892 305227535 829331075 573456595 979563968 710332671 305257899 634014058 173499624 812641978 775863931 570621257 183376025 72990453 372860749 591465833 795494417 449108286 748220910 791433058 172473445 418538582 962846506 866724239 99461657 671934590 915779146 578886805 702473082 762616994 415538758 490748564 940854156 488515367 263883834 107654370 471589026 370104860 239117878 575180244 157662290 332803962 586917522 509834219 342967030 39352043 430950365 328479155 911106105 439400129 700659089 792478225 595115404 605244141 589624562 703836697 74882008 85601849 401477892 575476778 849287306 54232464 250487138 598446601 537312507 844478671 960055533 794750490 347601265 416007496 100359277 515217998 181711430 785797470 367975595 846413296 601522184 804846320 278833106 143533545 594344917 854046147 929423861 354550601 406223741 190870761 99396589 196966072 708609907 760660489 40898469 682893086 918766946 802499909 41204796 523341460 963924063 750411958 215637180 230280224 963769511 378548367 868871024 84671689 875737136 983748312 252361648 247428326 921346391 891912634 667209500 700474848 86929470 987367255 741699171 67306243 389921247 563940548 650830384 845681394 516837870 667055610 969406378 833495446 236983017 282345227 61184801 588025438 410889836 157493208 557177874 451456256 231693332 384589378 508500352 370856115 839909385 371611808 736886293 777877541 869412890 304879577 499862117 789393094 661110224 886621573 38267741 733186179 606823865 190522262 535160137 582256032 536065564 216025797 641823801 204544286 573627231 630461924 821109331 276343898 819437855 671498918 332277471 834094006 341069612 891969560 692658346 372322815 227828615 997250916 694228416 167084648 510380424 712391853 254383215 246398911 712577403 297941432 454500461 404279292 190376724 414196168 222252153 519061922 875212577 752440825 949603768 833378542 413980713 929424378 610500936 912999416 319335606 878471236 79213968 79409450 588086087 182922183 256724818 401767282 850618083 38693083 987452385 376848801 382720155 781294017 759922953 917288808 241903656 593037509 823841689 909390547 966542714 211596244 26116385 402288269 478983706 297113342 440360589 504328472 349783718 840138743 94382357 873016539 850547412 889266763 56412058 654885595 448489237 353815331 861019815 181975282 387601330 486264413 364339737 218348230 38752880 580608862 399653736 515561197 573836509 831820479 637930128 708071919 981592696 84834883 16100889 50914939 317893151 297631840 286928913 378058811 63061052 593318133 71089589 405938589 697970379 931965308 566416470 724335995 344170418 408764214 570743720 634456080 208499036 129428967 530649893 373912269 614798659 576824690 77788186 716452790 762397327 131043972 908826086 803122496 571640501 836877850 411691154 547227785 189321225 635540662 645369556 372437084 382361151 888045128 897681980 771616950 752797999 280859382 509593524 30829032 5740253 666236824 960061936 122912527 49422152 750778559 450288105 854035953 870950337 532007854 187545229 494946297 229605040 232777164 684464532 202455982 459422404 173806401 772515388 171008012 547724801 281239178 949539985 268685114 274713391 297713897 239781080 40260435 803863374 822163669 54900788 598083139 756744819 843656264 880396061 322817346 612251598 350733408 936298964 344920767 748198162 708428936 522612254 569458000 754780523 470604173 790188520 586642766 547776155 987069248 512760792 87993078 798402372 390877920 873116348 75499416 363861650 426218824 795616100 913749965 492766297 2187665 584416913 57584403 448297413 358833920 236407361 141043106 492207080 795279703 138244226 191027188 896195900 68130993 370911082 892360 350776393 791992053 735991975 452161291 395371111 919306802 616979607 673970345 232201315 378808999 580994657 160452050 189855887 658552131 444040471 635444569 170865465 262175383 609569587 984591956 263373807 200297879 413013733 493693769 423695524 507163076 824985983 274011686 943450201 44008839 891331293 993304830 94266917 847489140 55937141 175633701 472434765 295849160 381616298 846801227 413015957 866365212 219838335 201634161 103428614 246694505 383354552 506178165 174902317 686883271 236484706 516190672 259015168 660278067 751119506 301316144 861902716 852250060 903097708 870291508 471393459 112497249 347779394 923007757 673190346 771588379 430387819 335970467 664682566 643595476 570179969 428095168 229168497 140708520 664696415 679603860 494451792 890434796 980982019 54916736 124592182 60488931 958222193 145449481 911513485 397112530 858634012 194479364 881974284 924776608 281493252 196070313 529396295 924725047 757983976 735656312 650243189 907513406 409417135 101889801 629055299 285405 852856290 681893235 506101195 971524493 790266655 923508749 397574234 567015703 527491724 918789589 608054575 536985731 345081850 270456104 436375048 631089966 952071209 183070714 939316717 371921527 321002417 942413543 193078884 593451940 911868111 844828273 554105002 1814427 3004466 649882278 439780090 977299252 17398024 746288466 372989173 315039573 699670434 988211628 230169269 988806752 992690698 999516775 323822967 963701309 492145663 759345751 218796200 698190808 68644910 936329833 625685392 356440587 135107930 630077936 612926264 253846247 530383982 638069011 291475972 514611636 680970123 816251744 445844160 770150928 239087272 279623175 238586674 950202329 640364554 166130464 264174945 39424431 509722910 856795046 822968652 250334572 490606800 483317385 525334763 435761314 461875066 276586026 755727030 95296477 81508965 548029590 685398502 105049767 992939025 743866216 661876419 248754899 954127943 18124549 844952256 820807836 629827390 484269899 214225756 917574495 217763706 717627503 155734964 634740277 245670882 190064715 13574961 962342125 3211829 995916624 403429080 598446172 831359981 679698343 767707903 142968973 565334616 319001455 34928302 65907581 810089289 58198506 422461485 786447972 85091018 541352789 413299258 625252965 362236862 119712843 488486377 731127366 453523811 792514519 335546516 497467577 773514194 212461705 943958445 267909557 310059989 132300776 751294095 285928123 495711723 723764506 219469157 777462693 650292024 863896127 255944090 422222931 69467939 43444413 46459393 344303857 644753218 592825810 807429383 699577314 365886820 408811112 515124688 379872806 757733827 781635836 929659596 248570163 700607289 850737988 721418714 566158771 221572361 582422175 567323922 322769053 825288113 712352670 947452262 673311063 435388499 986617608 531214405 438726901 332182440 858173503 361007440 528766075 125407215 812106525 312371579 736605168 161880074 363221984 668350946 730240893 448542699 941106247 129464963 739685424 872375814 732942484 161133911 629342183 755816403 364017626 907361888 951238558 584369039 86305702 518270585 537538584 118401278 815265997 345320450 917222161 563035887 831690841 3398346 108061090 879934127 212480914 786877137 459375710 984062597 216575942 107175917 958185994 139009629 21696697 569159973 345625396 955509532 398217444 93892942 167606605 822510292 991901486 649594036 945045886 995672189 205550534 14905366 813188187 945254809 552666581 53497773 399342592 354226325 167438183 786246958 376235614 86776102 139834611 832457817 552650752 106823441 974871652 615992071 288773966 97963264 74217902 850391152 851196150 807756239 142369737 540914530 92436599 549123006 411956592 807783226 748432095 613025841 688861729 114934167 133240628 205052487 919945876 381170540 867886229 969631124 579266228 933561448 467091 323388491 81218715 711885419 284688259 614196821 596724126 724676457 878832185 971421827 487046121 38600718 226179945 935023498 289110757 967956297 490846191 297194667 569760751 424692873 535358050 28399045 772203935 80403533 457452593 124264427 457284937 994335900 20005655 167961989 652623007 661084120 925172260 937381780 90243659 300587747 593070628 456210103 97733118 636188404 397571469 441124513 409369505 942530089 212510614 983575359 683831445 421254975 453340231 844495012 691722778 682520288 775567066 451886723 441317026 324339195 527721773 103922115 104364564 469591070 460560540 505779399 479564959 174017691 395467806 661282075 398973578 509075871 750254913 101598616 975151385 410542663 578257611 518193687 895084848 726831959 579402520 346654892 87505412 310759798 211458241 503243105 231586253 143796851 520452291 14716685 272933614 850129731 710091110 222012335 642737128 931616391 340595421 62219962 524313677 234349460 903501116 459436662 901427490 87638304 792197390 775317244 64088637 811897637 436841410 526594254 241571900 899589671 746491680 910168022 178953680 95586214 810105409 558669680 635511422 902492727 421703968 214059800 982448530 349195791 325941082 740805052 689549658 254753932 478155336 61050890 804383603 529203282 758561288 524596534 392009093 658368084 45080785 210742892 440589053 731117495 234309964 859377686 211024118 237890629 289918792 457698885 346520583 719064939 237393665 931875998 320348929 696502884 272964758 602576546 824022008 692888936 552364525 523894516 977474829 979896301 39562945 382240790 206350994 583003955 263601719 964453816 982238411 819645179 362773347 890320403 550952458 397564822 584085326 798770478 360187916 883930502 268043948 481082539 273107195 674431192 19473082 952499429 649821309 7186174 39720896 890624832 68340992 893301617 247295358 888928321 15029534 227033121 851279781 553724945 838411503 503423103 750500309 983334614 975903524 324188774 376955619 600238718 394079499 964741725 693669338 715248643 592345041 965747075 614768710 436756767 424899882 549201479 888431919 80538549 741618210 479226434 206568301 242494157 714827459 22985731 712252419 564943528 942875505 388636596 15815685 896433242 639448671 326194240 152636251 47763225 12347527 861221568 191815857 435142447 846863264 215214909 276401714 70990346 747719571 513890161 645062168 290852081 304944454 922353476 400634659 634213816 521481268 876618117 343495728 777647153 702146301 933958563 30038562 179785649 791271253 656913314 768760097 756245360 739015227 727970335 34861601 743782194 225275146 321315002 657306107 857544650 802903784 814237785 623918255 129193470 489708361 147164015 796914493 502897523 685186109 456443393 332711070 556685964 97287694 951310695 776493860 250396635 964191963 73867600 955458371 145243224 453341747 685045728 753227865 543180718 501616654 388323071 452402947 383193489 788585443 372739517 513587513 819077010 552664656 603291232 820804113 203572397 884319101 11343535 847223748 302535983 385994097 897573491 87470991 617541190 185064408 851412095 530015103 710861790 927736712 468340002 639966270 28854700 375680277 648491584 746496107 68529718 147534982 949610215 922669007 903878218 317508521 148286928 453397672 939351053 414235417 250885587 130100761 411446338 969500242 609476641 165427498 890411291 238405458 534536253 487156589 946210409 553569617 33377361 724495345 788892995 340460724 492232713 440292734 717130189 67918862 352466535 182787636 326327315 113070714 475906632 961816760 216842040 70323370 486713564 752370818 749250098 125504275 825387832 351083766 816633459 982915954 615774159 517468365 980578975 37602154 898270000 175972572 228592653 672460009 132859523 123538276 51278483 776933858 923281146 920547410 462565362 301198040 475452517 416291236 170189093 669482871 604732240 308372543 794827061 817989057 49159282 36222910 587880441 942638704 52285705 612194080 667499416 334241347 453783792 696730698 603009731 968507880 274906441 654626455 653461396 577429501 282579001 944473023 183233938 938716139 361698990 639857049 497081986 751711511 613534441 811878026 29369564 918015973 992219114 266002127 972233718 852004766 732159450 391183466 500287779 239900954 144762172 268596925 555813722 970211527 921020796 84527413 384575472 195568322 307556060 793841655 704846969 269146579 745415776 929180471 147229408 862408432 930357378 867658496 305512946 919792464 341641902 577059790 787117260 609781095 391408352 646197331 357244013 641348085 164547215 855207337 94166076 472967873 85906150 898997885 289548832 79339527 247277684 532291149 21835011 473271344 794907070 556192960 243271094 977470291 258704921 658957797 264259870 502495384 144524842 300440000 992684812 572789296 191558845 133922257 328598748 563827394 773343448 633262457 529965348 772697615 609201360 683314721 813195480 412236616 113858653 80272697 574019325 564580248 965980220 821921475 152849595 682927162 58064877 196050760 960224678 474827721 966710200 879595364 307735776 475868523 566468799 126335817 138957136 651122209 678601663 356197038 941972786 815540291 747636147 612199166 259591971 153756117 77269386 679322110 636711973 587046573 695430230 86557022 819921398 171416175 368948983 479901241 295154206 223694097 111672685 925763925 754839201 985037827 682313626 592399528 499000594 597942298 441359672 454966527 763794247 648223126 944251836 898209363 351066309 852102296 604651892 309492404 502050941 765944069 308198486 944519105 955626237 609730882 111224279 856375157 830725893 136990533 176776358 221529766 497463096 601407005 404548855 45736031 551159996 102104005 47923036 102236737 413249291 632213953 663796639 361830295 135940047 76790628 822400939 42739048 126865514 17420555 74279300 991655781 915507429 244031715 240387255 854931504 275527639 962344548 362237593 897079669 249396893 468663419 576024025 615981808 781695156 906638674 224574900 54864005 957583031 360876744 501986556 75318303 826994414 526878486 249042251 85277132 570209837 443623140 778361390 375006246 481789988 361780786 385427754 13913905 446765158 727645787 542778832 301420164 146863873 763237648 159256510 915840152 2473667 377679389 192497992 197177824 108047918 288154028 754446701 119154029 771798215 308094480 54338730 620033189 685261684 150684511 496978996 887185251 815264195 110894687 969685899 224365200 803463957 351007088 785803202 498941988 15788014 846465935 480046148 511742172 663374598 73221947 422425634 678418215 885135149 961321830 560552654 442397105 176496012 445021688 219271124 302033556 884535458 526011804 772112936 866347274 962251252 635881515 881487945 87791482 710371695 160261361 679019123 454146644 287256341 943616490 336309398 615931442 473557740 191330537 778050195 698206614 397766274 686278611 777161035 810433387 306218789 938573557 1863381 459067155 129317113 377381698 923676153 66684186 939029470 936098788 6350521 60613314 161513756 47151059 862189763 819008339 757087175 809822603 159859292 494413807 694685384 769828022 661271969 251392366 138375066 839244231 111526518 451495803 772882875 199136702 760757932 412179634 486213676 718748659 781266325 758607470 961199585 476163824 477623541 758274709 860468469 915584507 313964380 923778437 741660094 305750663 501769280 710010678 660146727 462467232 963488493 843664866 275455749 785861480 41700815 593910870 965249480 969301467 346214552 317442103 102903482 147874197 609037211 713588211 349338454 157274412 894061941 68297017 162233884 828012984 930794412 420488282 827306843 628944445 667446384 531518155 255674168 609886339 565102505 680410899 871543142 308908036 266945717 868059638 150114361 830616139 476599647 74242793 619552850 894747657 11521128 775014954 257066721 866335606 700080688 245867545 859639740 804082140 632565232 959871182 710837855 883375718 92814787 49706822 469276910 213812539 278555246 461798723 731272786 694892528 241008745 868548980 959444472 608768056 973671821 507314800 68526057 89965919 36384020 963272661 508139419 327866268 883326726 596356317 35612478 242384674 919027003 730800352 841965887 442788212 644169635 452708872 715503274 367223944 391193173 671039726 914290128 551485188 448871536 618293286 858034928 798840160 588992647 905608528 440844225 589579980 901318704 283685817 136300250 52653615 506034292 203735867 857322044 605126996 528834062 250387205 753385867 982953732 95097675 138235437 495478324 107189243 215707812 294725297 952695457 479407920 2217521 693662403 756826608 594903020 645298072 393213204 247127751 605684266 565391598 96978593 199594144 243439780 815370470 865210570 974981924 883316664 849525716 994565637 523290378 545136830 313103382 498503537 496853448 285538449 925965055 978613922 82109751 236460340 333020990 370073617 288288959 234149868 492776711 191317963 419643225 771810013 595072596 397090692 506627384 296716077 806310260 156639068 227119606 929165080 792810441 666764482 886028842 160924979 626668219 723198997 662065781 645314968 615194614 552214062 917251365 5554540 922885341 307648772 46818082 751603058 651645721 747946543 669839677 782948700 461247770 870897809 920967789 935944869 152221662 145810155 711077416 233136902 53177035 998397699 436865374 372390163 312669268 694321258 537921502 750421732 237072208 942616221 320273851 32257502 54699394 949768489 341924402 669261612 227254772 900175893 405756350 259001504 387681756 44183035 775176065 597453454 253629283 606182571 607426818 153648586 631836860 646875288 228642014 474477986 137506332 586153001 574218391 310785933 877776651 171454076 956395284 496516671 537898901 507078883 991237256 303357307 57402984 104567714 81391738 355507880 105677624 635870512 335921736 559664082 514083506 405207922 627062294 466894778 630112933 594371404 208773147 811244327 399639967 587075209 768828995 984692130 956495508 960619392 497498086 640373091 171074801 678609471 224651649 498276954 847586406 379980831 349882064 860824844 614182578 938996045 471898111 344984637 170992705 964079313 412094540 869190273 400228853 294025224 243014023 741235952 393471906 68681487 538994842 234474387 973925177 317258956 842491556 935368668 463190973 179193387 702558942 743214318 477052925 946508191 307158676 519472586 963292190 296767099 85396982 102815538 728273180 998268982 432135302 224285383 764519229 294089088 516537828 278546843 183089322 709938511 611117974 657625305 615247402 99955919 48498962 448681154 200512961 451730479 119502446 765517894 966546769 250752932 792144276 526990848 573447258 26618936 467919595 645114965 92861799 82323114 232185164 151953007 690225783 739895429 709279365 514147590 487062835 482838862 70239903 190606136 870066677 337874556 104594539 490957846 401485574 775854675 561235552 566844516 278313867 213990160 790394891 958605275 81341466 460071974 158365997 472161428 500305769 820704410 590663119 767989193 410384250 950147861 362328072 507910093 176022358 344008775 964854251 251783710 24347521 671773932 509196545 765041764 786529364 612562367 51644559 834357433 182675534 537577946 294149555 178525460 69865497 467187088 740209230 783940196 669361429 359619552 255885549 578278167 413133191 703639737 950231356 146884933 519093894 125399300 568966338 685754090 313272363 561400383 881224945 28865857 639821641 664751333 437853903 358704877 636348999 648876712 708605500 6898041 339023252 632510027 269409312 214463349 779206283 765145987 905050229 456554110 892343243 833572608 231904894 771010864 556147923 896708665 620878124 328307082 13327568 85592548 484552772 785341166 51203975 752386578 410951980 838477981 248225477 505450102 741490763 524602262 562850905 878532365 352228440 665916875 591346789 698084157 917463387 917286624 907248290 925807774 219307322 622120292 649884107 166620254 595931640 400696710 185544066 792616828 99638887 628057964 209401864 310230563 889786999 926636233 667152693 966308631 647406974 762851090 675636845 928819335 157945269 5982530 762693277 222019004 30585869 51278185 500336683 834119290 779638015 782980608 223539514 184955534 859022408 610027278 915132541 871856428 158587110 279612749 781167766 86999949 370467591 325763297 231227404 28774561 106997709 475961971 938521721 774220473 193291327 588130817 842820498 998371880 866275224 477381767 232208766 285924418 81052549 689151445 321013067 15991372 379026016 656002074 677488916 743876876 486629145 849844711 823325126 196835781 534828800 983465281 392435624 709623046 931254444 907040281 451929722 626077047 369406409 329445983 715371806 378065860 523712500 733227482 807615486 833761998 977517043 133857738 17900379 890007250 755377719 838179866 449417214 667680289 406334471 53690190 582648128 309787306 910530511 349965852 203100329 446337864 945211631 760665065 227839456 934056765 603566847 131538431 376692531 846525803 153612763 46199677 721869397 199901193 726722703 752361264 744744528 182971574 83814905 598042611 140768150 230244275 827476421 263130074 686514247 606503017 262367500 614201467 174832427 929375839 370177557 647921186 456310138 9690488 83124947 282802783 125879707 535014133 3092927 18421188 749806689 511130041 977568512 663570417 296700550 838340577 906883349 464433658 805873962 500534511 93749344 231774640 597514470 12266223 724630884 403435048 493062457 624509131 412296123 446516508 453506742 55616144 140015976 777998759 613632062 567052002 993293229 989190694 941386559 340558036 807992449 755714179 941990366 468816089 554584050 120872245 342223237 571920373 270734370 639818886 894044762 38034365 372309932 529638608 304903392 608499103 284840793 866300900 262701876 905253342 524657029 209945184 861418842 181557799 536244250 228304791 625054590 41571162 850126571 930136157 625223928 959766256 786077201 216938725 606815066 884207142 900852336 189932139 732154500 27958303 953393383 335415744 648919346 383489776 678187624 82686005 105512939 48667780 891714023 279827074 901932075 81713677 357865898 142453113 531772041 416473627 459282769 348809533 733073783 155485599 931874906 244683370 302569547 81862699 955475757 962517708 413333976 104283621 60203879 70218727 748943472 712949197 495212301 428037946 474628541 676494386 601662425 34787183 130098222 473714614 757892244 673648711 554008608 624477915 941276668 451575135 829506294 832606373 720310588 791494024 470112900 809244124 170569010 558438702 198222042 577160053 911708502 338447461 394912317 284720627 776256352 638974902 263439505 525611225 384095893 482962901 552266407 715423211 414149205 873932796 186284074 875297664 343721724 34260260 384019285 528978917 981734209 911467721 218883138 584160691 498578598 899459392 504032841 715822832 593652291 664601751 644779124 195766582 59164660 790213974 523382694 974187448 781751025 801460107 422214120 49919379 457090763 168830567 154236349 761082601 238707623 611101308 480009084 672382864 729474524 289360849 625536483 829716132 454944492 244639936 987733445 311180111 129594487 716833229 839467623 385057736 671744742 78676180 976957143 881075416 23902891 595853319 217856352 310192604 348497636 93489328 22694048 429026491 159667157 551991139 87727969 858962857 966039583 600593465 339246681 173204123 996139973 518295738 400208772 466906793 942272047 909718353 845378831 815567657 310500400 280463293 932988287 351003315 17586606 268577407 190533113 631897409 784579010 825645635 340962606 971105357 614298889 362034045 43031303 238834709 758275504 716178128 763258016 222717165 429780037 376629573 426177737 731234022 297667078 26074679 225323463 607686827 177490277 589095766 591594598 628141713 991527343 154276013 611448040 192722165 22794371 152484955 936802901 150220270 331521890 5764303 849702928 900487173 799616805 633084615 739838250 633910191 685474401 947301567 819159663 896534825 135675555 45041139 701847600 756774494 878074666 778884126 163865175 997428980 876672185 894682184 672277119 598135676 950156988 555774380 550115238 812437343 561092870 914136212 175906116 493425501 129977664 227631687 72711229 101058347 754253202 370895731 447587402 344897572 878012395 932952275 380291931 16238478 317045495 599632751 40254949 812312859 181975092 301310084 707386037 811547573 114688969 58949578 863454822 958085588 488417794 176108380 479548655 278940718 469993993 687636251 841313445 343996625 665121486 277673748 175334142 4718515 598878788 158778091 143946703 212233253 571252017 879262500 395014356 124772953 180166880 93777604 235083417 477574366 753507491 569963880 507884510 236167969 590604038 569742524 350096515 739628266 563961083 645011096 857328704 342403927 752172953 956619625 999573180 932966909 788839570 344569435 858925902 781867364 675539295 799407533 175286614 507718868 514619815 903245193 193753810 133064332 427872827 249085171 238569363 741745466 646131761 563626848 114066425 716872003 910280056 601272987 177691005 38385781 178447784 104677793 379066556 155644355 610469836 714671954 432542041 783329409 93899561 863944868 896287591 531515345 180082161 154396331 133610407 796128295 196072318 177815836 219079347 975702245 466663585 839864608 615386766 865911470 150128616 721814715 400703251 591731932 602206938 180938573 916847974 559124689 632179771 788745230 443850098 163535085 113335939 371914446 917346990 506435912 387017764 243188961 239851544 406157400 718343773 990726111 891016036 845821120 156606421 928048130 771288011 427527252 112263991 148955784 862199909 714381378 801953201 292723575 680001703 725330531 324104122 716151479 448668840 992632628 978334730 134007507 234595260 811708669 990491526 442650524 705709290 430814211 103789478 742335034 17124440 874973717 180401942 424847201 58204668 417651083 476647889 422063937 176408232 847678273 14329543 867097698 7280771 437123142 679343293 318710998 481035607 62092151 585727130 887764746 170356566 112078381 393378421 807310220 443725065 179703726 303562982 846271399 367722598 649004841 372066593 869604798 7260191 631476382 581316050 740291045 373230344 898760146 544740403 406308890 854392155 189415076 569035395 885525933 618218070 867615954 855147238 354394114 495639864 483105760 70274481 326960908 218459897 623425932 527214029 562908984 50974258 942161409 243301298 819044009 64040593 559858643 603430572 459688530 466425060 555389930 475804164 547971649 450898754 472333662 118490255 539446865 160125455 4001077 74640255 80600336 257698026 141235443 682918298 969194638 816672153 933414937 741237909 508538249 24007060 178212785 41544220 101456182 221065643 498513105 592073217 983926801 955231630 470458263 338928673 736604800 922749057 426680745 930561020 320657115 652522028 732412844 907942727 46977189 206956608 7430955 916247668 458422237 67764034 400610282 363340337 7303301 533849944 121163206 237209692 13149488 575591571 388580562 953926237 704424533 149370692 598303452 61491297 926758710 358007355 456646098 414382945 410916681 9071923 115643909 20079915 971533141 377058695 509917519 313579233 601873632 96016935 226535497 507605023 618367619 958539066 774032251 457037771 521167448 980715341 745421593 315620569 147454492 929078636 800253647 590243496 798248466 721432599 155611269 240592930 977252657 681202829 504829598 520028527 825687852 419761539 870458497 217255293 3573374 85028704 364726806 750480271 935607674 845704436 426713311 110614222 237134361 648261927 249193739 384866031 908783971 71235015 301865086 813885923 320094454 751868891 902076336 782096469 470619265 440767429 972899583 719768394 255524886 691880727 978301484 151178659 366912676 179372985 543321232 114723013 687822536 727205475 903922505 662056637 347018166 744793923 224648170 192483322 383987204 101610255 567122082 216830557 787315345 764674814 475451216 223749459 220819740 649570531 22648128 617741332 754720041 868448940 962029212 854365636 644242729 875221632 716493196 850927684 242136349 510683044 369745542 116550365 624792169 876180193 622041269 399168914 816404948 333265153 572004453 882373183 867821037 791977409 842235657 933292988 157584187 952975825 561627681 520303889 986237848 80136814 573800001 566693184 749253496 277874335 139696927 563447512 576232630 492319710 198232746 147193826 387504619 184739108 969863804 25972806 296917680 272443519 530238664 423593012 262984011 818102587 739885268 255612621 135503191 928411429 850199890 151702298 545866423 800066340 389676927 794300662 546713474 367420525 783209933 714314395 136828374 166610264 648024207 664168821 976974013 212161332 708253882 712478950 875814572 928806480 742387697 471668408 437370969 665885616 152869891 148184127 764559442 982169474 327070855 383828244 77825073 735561131 293328640 427086326 853755957 132091586 439708692 68018265 268192986 69543918 952005598 388629682 221565423 327991920 466803136 929061926 4464150 26592563 420715497 220378572 531472115 861751525 570351329 401077648 543888297 995232228 619445386 375754706 704819596 469311413 828009605 293861413 628381313 145031475 230241855 816322789 71631857 740052743 614315778 211176766 253473786 836195547 741675808 37489947 726356946 5379828 45296859 855726125 990602266 399469727 834216775 285543528 393007781 163919009 167783998 430199129 407802217 373087204 37374676 801553486 751639433 804042158 963468380 371542859 311541859 92165015 425745677 783494121 529048000 572353833 651628506 568937857 805174298 260850574 490701206 819859202 790121876 659036746 282048085 510317881 766572570 889817604 383517039 396782375 369116900 443460610 227345739 981742745 797434580 979763610 157899516 707702775 351060567 208694750 342339936 990032181 854961746 223063139 153649174 556665905 147387299 685864689 963299274 882504499 146501068 529575218 506907299 914716515 579830329 919742256 130398959 524495085 213870753 118861608 520916845 806699773 257792552 81344696 878635209 485318179 17828231 472709846 80205649 21723226 447858008 766007103 989911977 979467796 83349394 627073268 401529288 952027495 955684467 210552987 804885421 724791137 424498691 256899906 650628277 336236564 970391999 945594311 434089373 339959632 376270975 824217060 263651104 885996498 255758737 741306165 613973036 788345228 866922220 154944675 205920330 857808833 695308697 349360404 210854664 501363118 233240000 250686749 707222658 501208387 631803388 564272678 113221757 850523469 534783086 905224487 979469777 21054600 68951737 560351990 527661816 701003460 698571426 622962816 778044522 96265811 128106827 315997766 561137406 34893500 260011417 812957041 818054253 901599821 893974849 833720034 578543484 445539470 639574626 326624279 595067340 752686404 888987165 568492462 347122532 380094911 237099676 106955082 424962167 705198066 81777724 546651333 654362123 114770948 111909983 9581618 984912955 308581219 611488465 984465630 813522554 609944847 52851418 135590594 402779293 300647924 720401885 949643150 167504490 493364634 481287560 719978442 963187560 788862714 7360208 956865614 93915483 181100003 343138886 428129899 502594156 959515549 615719139 911673812 650495811 18620225 788836224 848894520 578371633 161059715 891748467 591462701 824771111 291092101 295694261 91770489 428121115 687866838 328894907 435524449 285018475 776040041 826330063 728718678 292342979 14315378 189150416 358609529 557226894 160801054 518459937 188802715 640210707 223791688 10856879 494232133 536065087 463727732 113906651 422555333 4687910 738646891 599884611 749948532 816845510 983792393 202730461 478648943 726911441 45145923 502814879 549703837 848423412 850951473 938172259 784116891 874014841 810711596 695323187 608566084 969603307 417412546 461681082 497157874 615691891 385217115 820380612 442953155 553359089 400825056 94249719 899107706 512529047 564331264 609765955 784429658 787925729 820621418 76130139 187814630 395676856 834436083 791215182 183865726 793393300 919942930 54432291 551066557 546519801 577607735 927249200 155403001 716197849 156029488 896669 754186985 630065185 318985726 890067052 344977663 59204375 153701065 99836899 992013187 891130145 266101160 220764317 569523604 340030866 685088974 634931690 643213209 620213723 732249487 507397938 695168704 813438224 846303335 47398785 933089516 454518251 87227933 658119384 364988527 923386990 124818966 362479661 573100203 340202468 947597727 845793840 154080230 500672914 780562383 181505378 537246178 69407476 810099557 478407509 242254209 446693022 724841368 698666999 768922893 793889321 264333637 269674973 31206434 44915699 701316226 274869941 98086345 758130119 376454026 366136894 330213058 932243708 122272807 614719875 843753044 749407599 712478220 168663794 345005403 846002732 571911430 497490249 759688250 483035162 51387200 45860404 205893595 315318302 734823547 969441025 321160800 886677205 844401747 358232432 63997363 617069741 395234246 187066680 124815299 44706697 641785808 137019851 720338353 381983376 158059255 632851726 330254344 31555796 863734047 477084137 516310812 707812457 469489807 767586629 897014254 849802080 667802847 341147223 390426835 630929461 14752664 663865766 183840209 890175689 460332155 742218443 42137066 200590601 357793099 748049230 949730633 627735341 91442590 303020099 361488053 619492729 278169306 503081566 329501956 946136492 378013865 233866239 414718142 858819959 188957409 842875556 338260193 899738443 813126909 101383701 870771193 901054960 862422606 443140311 859707051 917182220 782773671 760643494 873040963 315023785 629605448 354709693 414260686 219522676 494519675 892448562 904424166 741840614 776708541 661189521 369739916 821491755 865866076 334838343 579612433 856866848 365012866 536125273 590380589 19755330 749236445 963015568 685205606 652328487 115105947 726324389 371583213 640763936 470538964 825692237 579088185 244058607 262123482 859358029 882248748 78433607 116726982 434914089 249751309 982829929 294256584 518165358 91772106 55019210 165012699 892402208 65698123 329576943 283720222 13880160 678556801 667517360 426873047 369706853 205277222 511975993 15203100 1196320 689434151 749249186 272441704 906998317 804151136 287621607 57581821 361948341 418367725 528470695 118577910 648723789 222059505 13145550 235185095 334577668 401719902 103324713 583816099 424944109 742153097 65839451 820985043 889479544 947743910 925820692 267757447 643355016 293673419 492357648 183364603 734493805 721173599 805419723 86573936 849822433 254722512 340122646 409903161 60323200 782887759 82091601 714913134 167593661 610140864 19082772 971948199 3865056 780314292 201774008 402628199 649925460 860666619 648574646 243898998 724566489 221143042 79796871 975966723 393989266 19717679 8154179 865029301 726991788 500112582 279873777 419782576 909450279 201773811 923010535 520794682 237158714 621384579 344103288 620218406 674065511 295178546 354229841 852036105 282093797 725810193 547512928 735617495 590969674 357578719 935668627 17139496 463429118 383590202 325238704 854619720 490753152 975296361 951693082 75279152 755553658 747547821 453430189 27007141 198954702 385783273 294606680 66518093 723872728 161014629 721897295 343080188 239274769 302263893 314989623 546721074 913432782 335046188 7075299 92854391 622180477 243127817 168118550 428686748 377959144 191012007 543328665 461165835 122572192 13090054 690312333 130977404 10639542 948985945 54972586 938230796 95499210 882467293 389982646 655490933 331197626 171061161 978568602 89991603 430707805 862659828 845854536 653135060 681285333 171979355 264504847 524249370 92431025 767485667 533318884 614428475 870292991 298197975 115525555 833190502 63072076 167377538 916268600 511374772 689076807 281361115 340932263 318964463 558946272 687456351 42347813 529775396 320110846 972997332 951976882 707785676 155081132 43637445 380366594 130303435 189605242 217809428 795316452 527560889 887552296 402797580 178713010 623013104 987530396 304266623 581681520 433768466 857022183 675488322 355012913 50809860 934563711 606321767 463195632 198427989 591384715 919026866 184166886 106773618 81899869 408802351 792206797 530163618 85104651 632296784 336452932 816449558 66817903 921289474 17512210 835217602 294014852 937694954 696968249 186476240 669113368 800973804 253557334 804963173 767638745 994254810 748808590 833353610 359153956 211105243 442180574 651606683 695214761 689957921 668484455 285553162 508030204 892172025 932342020 455926275 235535388 258865003 439521294 170063606 731954990 42726588 322731283 189055120 232134574 474311524 295271939 674703753 408421430 516550783 932905509 122961751 245337419 592062572 294974227 428308514 191465902 99936362 452289024 419639994 133831651 113786739 140718999 16764372 505302083 227236423 967974045 706066421 896344480 774864993 461797189 425538705 651969768 375636408 542625548 588537289 956405434 177785658 152062240 136650553 627311636 454733913 406035110 860607392 645730122 139610375 729612489 429530512 42520022 184188261 31371031 688492507 20880600 630442715 442651191 689066546 439310721 470065855 967320583 882274044 269954565 629899452 388952137 744620312 359649366 303458182 726220873 97998369 810554039 757212181 467272932 911403529 610939367 774542845 922424449 773132752 716883860 242910579 80142354 279345749 250867502 314786982 684695493 867060769 36953501 830828328 431567615 470649689 225904701 863666810 700708063 816098684 926382431 85934356 777206315 294180047 416882971 817244086 965180411 620975220 274767972 760316015 104703399 808784301 776945463 483366916 754266019 542537348 549353559 410237029 511095705 315865203 395859888 601796206 316085532 523476008 473275952 954531147 139311637 833243684 947269914 613594369 962526636 936387192 194767221 450307182 685437924 403257110 574965819 24836669 88019691 722108302 372240097 886161933 291323075 305136691 5352565 939850617 172443752 475838803 55875479 57541484 817351489 54684711 179326099 375373144 713281315 952981867 662289284 47875998 354383260 53023043 977441180 214112821 635103446 180707424 649690168 66638100 832647163 460071712 491752082 823116045 647079834 299552713 425342131 706729217 641343972 7878752 635046490 191764464 350071102 54601023 128151863 644777572 604231425 754441788 828479847 309973093 351586518 609156068 895324579 884956035 681068364 680754676 565186382 318659646 244089357 132945851 49583488 645265636 353106263 258944938 993184952 80257713 722027237 954748239 552744294 883026265 345567483 283762918 16467152 459616322 480202175 26736771 681081569 318159640 690192032 445408610 365177745 885550900 170745432 646209477 51647354 559875022 453522537 408257684 952435166 691324324 388311281 137500256 220145335 896144325 872634293 625860665 486096227 16697717 573592722 769163391 551630716 676460480 630462560 922906328 541278086 482995762 658585068 653276025 116928475 395926568 502819652 661939241 115677696 363691272 896246268 353451582 716556701 201325693 781777925 155821973 334702324 908896941 362301557 610016458 291920027 744876701 967777578 93551392 277812707 241487443 178264566 805278952 996690105 73260252 7372240 704004783 963801045 460814603 820623365 320308844 311748367 806802100 819528480 337373807 861464666 955441309 719241569 148211767 114270427 46126913 684210275 154505502 24381178 787008261 54092210 777535630 410247662 848623970 909529181 427662239 637170666 424292243 86935222 361980880 25845005 44906935 995703642 632166557 74906047 178757941 134648128 584748725 300791801 940590038 795615307 693366113 753056544 978227663 677976359 417180224 417619278 264654996 240220742 366413482 33240685 608963723 132822618 265552510 220667445 49155026 663543 568691089 354072324 872622243 975168362 684523226 222178875 255272491 51297635 384208851 846468391 391279836 246247532 501853754 397355519 778190810 802182051 63022608 824728526 886406721 471169234 906221618 826328290 55983478 250105721 293793737 579464125 86340628 6343446 484237816 416659607 666907079 286898037 279086068 123341166 51165624 231341200 128687062 911083473 336015049 715189669 987289111 255091285 146056538 572776846 427101912 971844075 551410191 749409236 17065894 994635298 59146146 568852034 79054508 536772655 908413257 900790657 783385609 607419388 249071435 332090760 674619118 268049073 349426273 768105591 955337705 301283380 408413941 357943995 569745839 271973788 704888331 617371287 517857491 139457113 538827969 938539181 752317070 180863812 391631394 574155313 30364285 772988796 319074116 733614767 531115873 191297425 489135785 760863965 176610075 147294401 547929583 578486156 806988146 317160533 67041654 481902969 559804829 261001633 712256244 279234611 394904471 196141198 379458917 467613246 900860006 917966312 703713387 641152400 424453172 514643297 303072838 471401298 966109841 34580295 186718669 226873500 867777623 496137246 473742157 924429169 489435929 575496612 383147444 210922790 307403177 169259812 602992910 71859998 212575437 91137784 33527683 591463182 619197618 269879055 624939382 494476188 209364038 227997992 360914311 981372884 112570839 579007356 179376120 814073520 497536759 835416923 666616244 134605116 650575662 432270997 585040882 645637632 640025944 224365730 523979385 613744488 68924226 600638984 198362105 843074307 221719150 275228603 817685784 21081330 167155214 172684803 833461491 909097571 372948132 219169429 451917829 508591818 863452998 939149789 413068681 527187011 3365940 583315743 494692748 93951586 15745602 872663645 6386322 611092008 636721101 756993108 211542122 173411353 220838256 232000657 82495873 159737822 840822315 384080900 301481281 331597029 670730453 627853637 926606096 632302149 711623373 98730871 594708238 44800510 575844591 641188745 400701569 346051275 871884739 297038223 908496833 357720867 371316607 892054778 403827573 236859953 765958490 354324204 736307303 245585252 882805174 1788382 282695778 437520819 845073959 252304743 578758335 541247599 622532362 80391470 384540015 309037710 29538824 399455690 700654701 855587867 607920656 695468118 336056728 932882217 606676755 360819267 677653598 446216986 584151585 621235663 241549597 196654120 385477010 65744242 386811327 727976165 118132403 490292033 343040151 272311817 942932978 558560921 748701745 308161264 440259666 578573914 843814535 887808271 548426037 615508412 462437840 683603329 458938488 848244945 416036120 741289617 317051729 237546362 758892088 304068937 266190925 699727106 126767617 143368159 188096852 220120861 612099896 466488536 932083512 163504796 803804835 938849401 959742438 385393611 394529636 233326009 493835206 865326462 202762485 357844489 277622069 232396403 603792946 331442281 306717670 966885456 379599218 845837111 193950493 809778927 605445688 265475714 112421656 38012150 494387660 448314764 258054771 614564833 366978128 177130150 852834938 140630100 280074896 68287454 16121478 790263317 176523182 159648682 83439853 807368806 154282954 285534302 514879404 538053817 425215459 454639429 864502930 320487608 642996326 802419129 833209943 70213690 214053132 262527848 274236647 941694398 581929288 963626418 139549085 452734700 973616530 984414362 721573216 256231236 711163996 705622784 629324445 684718190 380528702 113688985 767280163 462604922 609406406 884798067 979439660 962069566 321858891 121425491 2552890 1064354 229564642 647477314 874403373 580980477 418643824 868025703 98564206 144085538 534886536 216745816 429736591 68990492 14696982 837822796 544482358 641997829 949197782 275122669 114181051 368935571 156629231 827823759 89196239 816713925 25237430 203077414 960997030 596393892 855354855 275406230 215860932 802655138 80353761 934643572 700592538 692020608 195526667 997211895 329717351 246487850 557760443 410236821 311338498 348346216 525300536 410015387 146890313 24407591 533818131 668613702 423411632 57630022 918618538 663088602 791172895 625013341 419543690 252308082 322197275 183066302 81126742 295942163 750318103 369272959 86959092 472874596 341811792 464403484 672366940 512570215 170847977 571059747 606296994 579960891 804893494 549011508 137602492 182124093 948736404 695084818 999794459 66994924 417897439 915419518 25113783 299232309 62132235 397531351 167439142 195248884 542755840 742861192 274636265 464649490 581404398 28212377 78584492 720209321 783236114 146020785 402701315 84897495 56920919 575789887 234961428 614599731 42866266 461657122 48046928 583378350 492366137 204094113 433768265 376392515 273748851 298698797 601885256 79683765 998781438 105421701 205769376 72348095 334790144 254206932 330520228 855031082 135868721 430828653 939756116 494819793 182259903 801159508 711811771 859476637 397098022 121889584 496641766 170575991 723898136 394503869 168682186 697381807 514467389 663359635 124101429 651074668 90246107 415306896 775168075 560570121 971234609 637810809 812842502 109675319 498649343 467251870 798835395 828050555 573739075 205787224 520130555 991140819 720206985 105875881 127433018 272396455 575397583 639418105 804821728 214581865 535540229 363524245 415860467 759214437 109148447 248550321 959985826 741721390 195265149 281530353 829585681 439053152 964368752 529914664 637598983 680950561 909714470 290797509 990725541 848146183 5190886 187071557 915036231 878182502 744006518 99642709 654678316 488918308 486697232 415177381 859240754 49914055 789192837 785048092 999472778 85124005 272188449 731328296 462053230 155775353 739420848 320084695 199798697 623179471 505525116 575595892 922109815 356035798 889511805 687669176 420697760 456910408 132212564 332283946 116830798 117707669 750558371 392560788 303236176 162073331 423554348 547422878 447887438 958231433 92294528 952844323 648582984 212694743 450332968 153388550 253681584 816994157 992051520 434599489 627796995 68377169 712250486 603757169 645645496 325063527 310733187 544051261 776807564 684527332 298479759 67299616 182989904 574084847 167500022 842374541 874660185 807939922 915437329 490731136 333549485 491814402 947397267 944940807 194165709 412027547 175392188 977079279 148617308 889636694 697756120 682831070 180722251 948583802 148329867 213767844 636798641 328408315 96290057 128008343 413817924 335601517 775366248 513270538 705609891 148558046 315950988 371777541 396322977 299715109 825612045 913167571 667287939 696208240 73689797 169872622 614450326 107868136 770419772 963949047 63284629 872330868 542437815 764396502 98498408 188974856 979294379 261722857 396061006 702904761 714820197 237714215 94812051 537710304 458231405 718392190 317429339 138739686 152344281 664488293 533266054 900187240 43260835 498833458 310667955 914980280 755254819 746727597 68581141 52578454 347371106 651622637 559618197 288775807 877215439 954595841 384991882 856322897 316952240 634531893 739507075 491776152 94989882 73921376 151221620 578854848 364865917 424542623 945382294 30039345 817235171 13575959 246240137 343804091 944208663 984888160 419095946 611373032 410498696 852821038 602567561 862435423 518961058 379694564 953034612 920233958 552576936 360081304 974341211 884532896 531811379 383849167 33977555 762643037 22514823 221926777 110292222 874901937 875649585 204809869 335243262 753887125 552039610 443322673 933034222 747103017 388654733 416975291 321516032 941481262 301171691 137004604 570272730 20348484 13398999 772609744 152846151 498800561 481009552 25525472 592569422 632907957 133285501 747829932 343380085 107327627 300970623 456685695 569292523 224069950 942069339 36858721 919828789 783558309 22833837 873757049 601916394 468945104 90945773 655575099 791284703 678498779 444118189 774981717 210332486 485718824 952984262 625869235 271329627 217668219 546264995 91645421 139381241 324989707 57785398 177375265 512305466 372370799 907247832 479272488 236461628 704113828 95815053 47471757 799883112 813135692 575635881 144055151 644993909 312644826 480428718 438863251 117226390 712821366 119390414 938319546 469699200 773686945 580345843 874239406 581626395 419504635 368753143 769861721 149311624 535244987 118671189 747981395 73409603 302610797 549724679 613037176 480048808 962378026 817952890 612616928 569017763 386404553 323767663 528539971 247036440 812707864 120445708 750271000 364897708 96008844 580481350 915835616 119785576 391996326 887536666 941945943 331857335 209015450 786453942 179538092 809153589 424094570 385835559 18680397 649683606 146102430 277243967 843668527 863164077 360734124 715396298 152664941 927341725 66826233 889749649 649414704 663899482 307266531 427973686 904534475 27020317 857881241 176034726 825033015 712089146 289174016 920551785 936594905 969420944 856940520 872832427 622436391 99424455 855086028 754728548 751454430 23363460 666246462 723142622 746392853 425294929 456110671 482158797 935539506 77179380 381808975 113856358 585626041 675168583 869536934 776984417 681698245 75184614 462417891 186930242 470980848 765472559 745276067 656038561 802793964 745822541 328578158 841146754 793100585 261402286 94078893 942120119 467112178 525082107 312847162 223559222 424432147 425545302 404288885 260003641 779983727 505962562 693884892 262110282 995571761 484087759 248476955 457502761 547248403 963254150 884766439 780427047 514354072 350610364 482956603 11132123 491455304 516478867 812452212 36891389 460083474 868881060 116430566 707034696 958433869 256578929 220719178 284169914 547721499 874064782 121697156 94592518 323567281 853490911 589733256 315947940 821203880 471324400 665929676 93117777 179427899 838761011 670081756 934045753 831140600 521299816 168012676 993001096 810069456 944190972 346787354 534041433 499796740 402532715 646294127 61861084 13390332 801604884 644769200 364876332 623724270 126048181 236499380 272183808 327372375 913312684 801093829 17551295 402476364 295083333 748229828 737564162 135957990 477571458 126483963 85267637 200751463 223592404 631850482 832185350 332292266 383738150 118732208 438056747 571538720 829828190 121841158 373425003 13322144 521766490 927853759 717096128 5294735 988097623 495157499 134374472 385188317 330888401 630211151 89955319 862900101 947241299 424254785 414963125 454340006 234702755 485791988 524332881 796452266 25979134 226014614 366780703 389136341 471770732 166325467 247933325 708901999 445173178 947792878 647171387 111177676 790967450 229009216 237597618 417694032 219663197 568735239 328242902 335925459 738955699 767619469 845195881 291258694 131448218 855308879 359783996 585229713 433177529 168560889 496543977 352101133 206802532 654448970 574777088 327588220 260074650 182171842 672364417 873768564 536211451 228980155 168087820 251054009 279969657 151880450 863119666 54429999 383659065 634395156 939723197 306262764 249078908 47655522 455547006 342376853 814827864 356531377 611427429 317201737 4762591 585211759 915231918 237419894 202224922 953868820 277829435 17472258 679270077 499176470 981058259 799524700 555052918 619020983 879120101 972481689 272090138 273649008 853546702 531951602 455192466 48021294 851532246 517224775 469076097 321434847 949450505 271636405 342225414 107376893 705720601 932831927 675831904 416625879 964507749 481709002 280093497 139629632 33101193 95125804 554457946 226829888 240040448 151080025 456038817 520282880 94687786 205202043 249827723 722601541 443728725 243745079 956331287 343549676 598382037 635141186 313265751 819036770 487329418 110571758 769883295 393773899 309610444 206349174 270661005 149257282 295277537 572667696 728262954 520876520 619894435 915305932 151443779 279459201 342871198 700279200 532399249 962967330 422507360 960005802 972711406 618152997 493544989 340208030 998754564 510272356 715433086 125740958 574866973 322010057 634549021 125842190 207427768 739688015 150781728 460003724 763065553 747230948 312480716 192382302 455398593 222195256 620380086 219824636 703375251 338524132 249798136 11558691 41282580 682547753 303491827 316806390 931903508 599006506 898573865 753334530 99197265 775976889 349624249 658491907 995057836 113052455 515270016 607012433 157716637 195026900 683081311 677959642 504712236 590317777 937728427 930466763 660894248 155984238 457246469 50593629 758181771 916403676 187160657 726243061 298336818 39366949 37620300 855100237 825002741 113956545 375821922 749022730 840258240 513360811 299223668 393578332 957381651 209042176 431900661 52862047 128003345 622294750 496177293 286486750 12552489 113242021 58813106 905891259 838227542 951793601 568049038 666507546 785608574 576037145 608818785 676559716 500083057 445426022 782085142 193600369 257358121 810650938 365005260 961402019 248341152 818154350 279884151 421981221 446489744 393981776 612531059 822263936 998790197 335558029 7219929 122232450 151864127 174799313 731197087 251703052 554764165 86332320 979237834 176718557 754038066 139357801 34922801 782759716 480122366 446376032 542339747 375072674 98952419 102255173 586339828 565373979 968488214 555847370 35147925 891235009 906356181 115756848 513372558 300481501 338396024 506535574 339574932 166037888 311620574 667165396 994896593 224348213 268815577 633805461 678649960 465630171 927023208 149184414 130844942 949696701 473475736 594686521 766611476 974449222 796039966 657322275 851603762 176127211 474010058 586828692 945306163 230303253 784414702 714958724 845019080 924874192 32861749 396275774 129730685 860676672 206273713 688025886 997736750 801013716 519051440 966880225 348338403 17655831 300310623 103460019 762971081 423916542 155031971 333406477 964213935 212522280 817516668 978380906 216369094 123669023 286086620 982172016 677851845 136563929 849185337 508138215 798960710 512379247 735064234 336908716 241988295 184767400 430153950 982536825 221717952 532212364 572639947 956678636 367028865 386754587 371708176 985675249 638447073 662659408 489187442 370708519 938408168 784307519 176734998 689322068 510334117 478571611 117120338 802073165 723236083 55721164 35007341 804061773 116093290 115292005 176545742 496626167 551143705 587763828 603222495 52766174 103791957 955367704 449950334 822503723 82424112 581277005 697499097 296017786 504186027 82291078 615332802 664820794 703746503 260873893 513558474 484176371 356851100 758745028 789415369 692855858 928796980 987148098 952889249 965783610 669651286 881312303 325865483 390477525 232684501 894459697 654662044 846999391 528824314 692546872 394936956 338552535 826009413 913245693 155670045 497389973 869881058 276989614 636441292 213838689 164798544 452104717 653437810 585158831 581399403 39395767 68900165 58259170 30616499 943372152 364984820 690840139 818226062 770067103 274459037 556367743 92457350 407220463 592259303 386521132 577860238 982425675 192541440 437057997 890263968 542777093 701362070 918074060 511006317 480352938 397098334 827514667 362937023 219860637 670234933 890437098 732348078 225162815 553842697 663519420 292498177 972128538 404947549 671343607 615674404 714712445 241659206 138788346 910459285 952896809 202948689 706095909 942612953 206891830 536857062 566526112 131316067 927008332 683109547 972627999 495470845 353627702 559718979 32948710 127034673 71200757 201026854 891132704 8076292 799072930 984537558 232134104 732935740 964979515 867302504 509057653 848755622 61314364 78925504 477267959 526394250 840590489 688952354 610251564 470923124 885971906 334930419 831769309 2280242 790724664 461902466 728714733 261169100 808392566 763430971 280119188 929563779 967225105 12513993 886986490 54301928 225113242 926552486 904884622 319605832 724889909 515110280 765084409 500946628 783767664 7888372 569125317 12876336 672365773 317360218 665594057 842496418 272753898 914650633 376749260 46223674 683474210 514548784 634235514 34576079 930677055 65983236 986856347 803648077 378887344 984082833 151667503 1772062 694335603 550271702 872837273 423921099 67727065 795154156 561267078 746879201 488505693 641876012 797626085 261088767 332311685 100093848 52393432 168174214 412910273 407275588 950378904 265978098 400679826 330724925 872584644 975406841 231507739 645703153 858707001 886780096 937183298 930414763 793707726 908733311 675660844 817000766 869027154 378218366 307746908 687114962 959978126 810389862 991355263 959141897 653504166 878062149 203934592 619838498 707920719 39152455 622693710 828798483 80606722 914570131 530790272 737925689 963195070 85630682 888216278 258427079 361596183 119392839 606375535 674576216 773500975 766127391 505917654 971578767 983049793 230914278 163212389 580624052 16810728 178130852 323363844 840917621 875690728 418390454 159164847 365634785 944719500 73802110 938751744 626433050 992528598 812689388 513007271 870696419 691722730 7928170 612212049 373499618 760500493 86518212 121721960 655173034 649461103 267314102 901650498 861056425 869253982 963785336 115030458 700991494 125285782 484674451 425114305 413352200 503099058 610625813 51667653 909594356 508869085 343458430 966094715 96588780 715270394 596588251 614346295 655655017 375586302 671993715 533092365 9149540 633703111 187217925 285877780 812494292 653010736 288977473 868596013 115461141 731102403 945234336 232246652 826469068 111017463 916243164 824648666 434153055 910679318 267494966 388325432 463549705 217415146 991910720 497780498 533382777 9339577 130975209 279633339 994242236 970376406 428907872 310278695 820982499 678247637 591480177 63079844 737923624 31604617 792005798 3059187 812377479 493371001 856370261 478460861 54568823 507269737 635571709 337281182 39346699 857484692 79542341 880599398 861738252 342653469 411364854 170369094 907502318 99109961 947865259 933476475 746108037 165637629 378381996 6820683 163234940 174417270 903291646 594153445 902372848 644029704 761997350 410556870 609701649 249684010 690932590 975901404 653949118 204272648 824672516 176692875 876152214 676461926 191772589 583637729 742460079 646959817 884935320 354559209 706946285 585916126 40540365 500318259 326663057 737380425 524854277 628933200 709233844 334626458 767220655 328264215 900418801 6084761 760795568 805111222 25973832 219099215 548244082 536898349 690997225 154928956 471062045 894702934 360680066 238837518 38379119 181412627 480139525 420513352 921220500 685468539 459848687 896717776 965456835 65285252 625697053 970439910 189124642 76345083 260178818 285433660 946983204 468316902 250384577 15476862 132375330 149551646 166198684 371126438 563380189 47951945 846845584 317646878 673107289 40802677 492055893 147557398 403029460 806218804 871731771 698350749 237036108 560332297 673862405 328832680 532553695 263200732 773291060 252675179 991275744 589180536 762305232 261652145 586190755 92188955 510193494 28825534 262338910 657995180 971518271 732230751 364995266 516520250 296155783 264404360 657232750 832822310 848737968 388516968 536064943 476948969 127226881 122427896 355820210 808283463 795170276 787870282 509673271 798713550 288371813 446990282 795027116 994203578 363679968 346391420 951383410 236024263 13442220 523366473 360261046 398810417 46495150 111172059 422180656 116318072 53553599 510538090 642759163 966968823 439365015 260643665 636679049 600920756 117908431 260067906 942053445 899668624 737684749 816685173 707020270 325607740 584825852 714599291 973358004 153159181 638877020 277236428 641515792 815008899 842156053 784002861 121797971 506796303 595342994 611661726 96424924 813782743 355424838 531206123 413923914 492656295 759418215 213240005 596766478 838395251 693264405 460751626 66625120 236237364 584571141 105874151 729317619 52849572 688532236 914205917 696456390 809092374 157299104 992771301 773859967 255484978 722956792 632452418 628847505 757622798 88668023 788518292 931338819 315552215 970919931 919101309 75295202 962483947 64944922 666997352 226250888 431401101 856001027 147429636 221719841 794660587 128065365 467245543 8857083 878302664 479800259 516810671 726583780 838281330 55516153 610184985 957782615 156102959 419109103 72695987 679393170 795370929 778807255 480957158 707733869 334918491 94382728 232107684 569355496 509684002 451617796 452551371 147419298 261415912 161506987 956301918 612820234 322293078 830960535 154457082 300882767 398146678 876545562 758732708 84101085 583857371 412396650 922035164 870292218 139603372 172515019 354958882 74038604 619135491 367078550 441380470 984899436 196682766 955855142 895215821 447227087 912872433 648126655 397198494 253259773 294834332 355325142 584094556 792453300 956149761 158253050 71059468 573772188 868055746 843189086 523055550 41927149 76856246 156431288 983839685 973937340 416651012 670881320 347687357 886684866 789110440 368022114 921572325 114823963 795912277 948111307 964451493 301904707 691092749 445672626 492339875 90152937 682916835 494469121 475564427 354266233 867255148 741829325 728979156 317633906 77178312 688351180 193991686 258529470 953087532 936897663 480791821 839997380 92787645 870496233 687334056 748462209 460621100 682177455 495278895 681760528 58466852 388991685 665581203 738383197 32799144 600219033 553151148 101395580 374323338 342645099 350046317 854494992 217395627 343160922 673997193 982486489 514075172 278538480 535358001 268447078 144641979 307539152 591764523 300340312 417760024 974754422 486942030 879238708 324758638 781228752 637728782 649225777 187155785 710158308 421956177 510319576 895784215 54374714 654685321 831981518 629884580 308608473 319329585 955197714 74580495 602592049 161014379 507627861 523437507 848534678 20820362 953802429 393439143 138557752 778342083 881721421 347473318 39976804 619281829 411010142 208105148 600292261 754785821 229862117 964354896 181541532 573539465 890807633 490130540 475409745 726478398 509414780 877644629 315331968 453463975 911742930 766687325 401855361 583258118 426101889 696817339 536715784 36404112 66262966 142269580 890936032 305503278 4174124 663533537 72100329 485487139 49274307 301932232 722937881 672358820 13567306 130975409 726791494 408019824 117304379 413528522 988252751 373665389 876035224 803186798 364162966 935615866 346090304 756572307 842481377 678471301 680891857 28257627 411138077 499178673 533387153 521920991 378939489 477918048 934296735 384939128 581495801 779571267 622319027 449947795 930773529 905469377 316253626 519899501 369232127 957020542 181463491 30916653 742259264 337831142 468163820 359480357 119182831 788261526 156904573 428589114 16477439 24917040 646289145 439771550 410792079 794121281 396799672 787306523 355621051 754349997 771720894 854771526 401868562 282502633 498990441 770382460 542562122 499614580 557026796 101641797 863672692 619061697 479570632 458756143 232464143 153079575 742296329 222771946 186396338 757011620 887387857 812543061 133875675 162129822 278005075 752570511 43563910 205834830 953165243 327885063 631828130 541583133 383318656 107388612 281202723 5323676 909963575 408463495 361701195 305531431 67927053 497702496 705701477 882875395 300156898 913290541 343794846 609543352 3510428 221957412 118248457 219002753 75162726 590265221 559421438 509188469 739948537 102582444 299102327 36411976 922004407 614499544 98322591 560427455 301443060 909359476 585791173 3664992 846801036 297649896 114700443 987008799 916811728 391807566 979102517 703278027 377146643 856830634 703812792 467075375 864997794 175896950 872482691 180122971 334514909 51717761 302663461 27841288 604885073 941205194 366839877 875473488 83993196 710618733 110158352 285338126 725459303 474431064 67643934 893528975 393439706 392537897 500699756 408809517 662914583 385120951 573004511 945094652 173844571 783175671 801459570 806052912 419925057 171762216 994178100 591095608 502286603 878456622 32936987 179954588 682712330 52229953 123738745 389890653 668198543 260587900 243346526 696886183 181517142 95387261 994894768 356787093 345703619 67673690 498636290 394939091 792218197 368416648 930556739 880160462 248174431 560760771 604042226 995895869 447449776 903883247 295305271 361754348 103101164 318277757 221253119 618680118 310488997 423483052 730325707 482027005 421643688 741408927 742252585 5396247 61708580 299900148 638161755 196223080 414392286 732975805 176173020 334936072 753429047 581092697 273966233 964531955 884359643 16996399 625648632 928350261 906928657 694511867 659585638 386598086 595231127 809378232 792224572 514934164 928541638 822203100 306481886 131216261 60321753 363688328 996059231 776636763 818276310 685501005 72314781 464733643 801159054 864728134 999622674 151373795 893182591 835358646 800354987 132539114 480771539 566081926 914712493 271627410 436093635 409407189 651838454 257344323 133974682 874477315 396073243 519675160 636366226 958530273 667350154 413800605 597758384 487272010 280093843 25502251 693508423 410395391 987411220 123027313 102929217 54370165 502750799 794320566 640868605 627354390 956661399 130466967 368736114 475801772 365186922 80918908 196219238 183530813 50459256 395334733 799620124 273783849 825648371 840109654 965978345 920328488 42953159 826964657 360097180 816079264 280348708 610977795 339761089 801625421 158130660 754649894 136911834 194434247 950328574 583686372 380138915 431995168 2812888 693699674 699588038 184297025 484876572 406813215 232343765 87663389 958586201 116178981 91789570 949484176 900015547 278190721 943906216 602575216 860212895 759251423 146544986 900686086 397750910 420522563 536233949 191603008 977361429 181250823 882140279 845666176 941643778 686671411 979140878 709599259 233304102 108784210 510215635 99281925 779210862 126262382 156317545 658677807 571439621 23146240 664180512 184789805 9217205 954455456 892325922 809137489 604815135 548356291 175770214 342573968 885534271 553014170 872453829 161610044 431214854 590642133 754329657 65758324 113150214 970225415 621671030 938079117 103533229 43073007 710860635 106012021 704741939 512554612 220344609 674094586 953501657 139544831 205934871 951853867 502278188 490134534 333820186 642412461 687650414 337997745 831232078 510915493 249785556 819629061 87571246 393636981 449958236 153778852 592099405 408861358 675701502 867272269 587041423 346904185 316605851 948807062 75900646 497245627 660288431 920762778 279680278 426642588 377276402 124873211 951723253 348848842 239162494 647706241 868285057 529812167 241493606 731572346 17271932 272944508 687223254 65974847 206110102 478097068 58171234 735414113 282950727 228440700 14242294 48687447 788247909 187100034 575889925 659212822 21782238 853173573 817302677 682123012 282238443 232199920 280162463 847809551 390966732 334280811 466038382 715875351 153684327 487805084 616075845 655002348 105784263 238449664 47221595 543193096 294004707 233354379 556255039 710748124 760006801 862841964 793921191 724712696 737199532 331755567 959809557 607476502 177294559 680885325 881402853 334100543 771036626 319703086 347446425 551340800 821889720 219753957 479503859 105375744 648969210 895529976 378269214 244101664 155483094 265535435 551585323 673742970 419282570 913711146 664683796 128848933 718929806 456896798 120890222 136071440 211955337 443609584 688627407 395269938 465603337 164076498 937714433 64506844 533144262 398828773 143911341 185932505 561423447 736252063 132332556 245358832 300329888 66231644 754959792 55319614 468146334 84230046 818022759 8627869 39499873 785068573 102074969 851394114 798046742 159585796 459632580 730963519 762262971 685010616 472948047 76509330 709878120 832340968 601294139 587525812 50433995 62828762 214280458 586480849 4667597 270469880 943657249 677453694 40360361 991838697 478013241 765435463 534081994 819163723 124785275 438436093 167022491 986521785 392850820 720410405 217004540 744369318 359178779 378038371 876233078 336209025 14988522 354397332 568869271 713867255 625043001 728336690 265187684 644192515 601102574 211394632 689975736 933719913 807600331 692849181 321063550 610030482 29494406 356872797 229385620 213617800 918968 866571335 41231539 623988102 752022096 869262801 66287658 897578067 362570555 782439061 154572589 89605118 993344971 26195039 578809845 123251426 217388196 507079190 639149412 418277908 228731367 365536819 381526870 81930321 302768533 13012549 744666935 259924577 657462120 470788499 400769276 518016881 121783975 176975379 504590090 969288870 227637643 324430234 663580632 763345863 452975309 515954803 522074377 860639297 805984015 33674812 360227356 421427503 580481126 813696423 429950668 325938556 159592012 831628654 700695813 116900126 699445841 237940902 690663249 868059922 261369599 942560057 195833657 679318493 188739004 878434150 611420521 520400755 141937216 229894268 368729751 789866548 678084753 189280858 905497380 598035169 861738173 653455161 100145388 891203047 421607565 281022097 736675082 604020934 588013517 580512330 442046401 886054686 195439448 920219055 965670753 649006087 500445207 837393937 873702096 326110295 608853186 57618794 441243325 353171305 413540281 4612381 479531478 53037487 99508978 663626561 825819523 810658202 162797786 278370138 462294735 645492933 814250828 739071384 271747145 588796889 401462552 331456128 829183946 424485070 80891798 86269066 758298712 596203614 906500888 656730939 457096078 643202777 827875363 675585609 585245846 398140003 742265535 968815246 940354737 630953713 507110127 33723597 416944487 211347496 858502928 431952641 683587728 329641848 776108708 499583441 849809156 949878209 227132504 624446389 643777702 329600361 743314715 627981340 996880721 682102760 626416257 349361690 775875442 590037155 931776730 660448228 453659931 786378526 896881060 986683150 473473390 635935780 285991610 792018786 988131697 678360036 16881550 648926335 30742639 195572675 700124346 692837327 162847043 321927689 791387176 866688561 854092558 661320125 903181598 368377714 369299965 47536788 567060119 491842001 887868784 674274556 586040784 479555525 939416595 86893931 47348541 659364470 367278178 593433884 512014768 759258910 19644218 964771516 1211237 59557335 924220856 988013654 230036140 457395041 77231723 957690956 980432848 364113973 286494789 719895229 912000399 938385780 908232771 293570471 348536730 598809236 527073452 59519980 711353270 99297895 544927309 994393798 158490649 354452316 452590096 694637704 315824548 960350860 332069650 24005426 843911497 180422187 333482169 942624248 420894561 36015923 834055222 826827295 869112659 637625020 375881437 412312614 914615785 417261176 306386800 992156391 541190059 45958805 893612280 202822704 369783152 258732806 775217597 223994784 172730323 715960215 102934657 272215972 830155425 166975089 119029125 314168744 554499131 730390544 630075475 547292682 350913123 89407565 717276123 667025205 205408953 460465303 309993535 66263800 147536022 238598921 308048736 605018520 626268737 472197850 843008202 707027627 125607405 213654058 456151166 730709869 875454162 489669771 350467974 868070515 285484994 185168082 625374228 349290903 547743200 65621034 319716051 337318898 851001370 740817322 836031057 643232675 162056180 489347152 831752270 887356888 998148949 466861552 410345510 722241984 774163243 463688828 88972021 202687945 753826959 94336519 472110817 714454284 868151424 424717165 346838849 823862774 359485435 894673532 366850591 688962725 611367424 50403055 752026074 846479640 739222721 654271548 176037840 507263571 888157631 921938673 905426881 112624082 481310604 733049940 880080775 200892611 458249779 959192947 920420876 743596590 129708653 797106880 759102694 457252429 176528028 119939863 204151949 846046791 386480188 156402912 642472702 176904516 433358106 589559086 62048673 52751785 562825588 912261003 754039544 541709829 566986079 100441205 980151198 623521898 966250956 856937485 245678127 753406969 707425405 278295655 35199624 839603599 226500529 670053497 447865582 269018521 127417891 549829583 886923605 271737445 603375155 517281435 943805409 972624090 937559158 825008851 558568019 61861846 928581569 213938559 473703895 37474279 937886125 456603780 472783987 622344253 883829140 937146589 985745023 377394760 49115358 847771505 467946049 385924725 592321096 713176319 30696029 126521228 749223039 7270727 54116132 375835716 342913587 72075056 872992151 464963965 483343945 96965964 651402536 163662278 274106583 541808262 713678324 90708349 184783346 561290111 621814010 278193549 213467476 607941831 723931794 630319689 97169060 573145181 593280361 956917562 977433983 634970528 430787061 982253233 680176273 764687437 707938099 185602478 544713459 62700067 34500072 240600258 927811018 894043118 210410178 598921474 277909529 26196755 537554475 548710599 19767022 318150511 432902992 883231755 994203905 777298644 795369663 66021940 79189901 294045828 551128285 152382139 994246159 662212969 268211195 543518769 662245577 656093543 451535179 997549196 133620839 924712286 39981974 518548751 274948777 909678528 78260327 727427031 847134111 890298285 323454450 625020865 849033176 681966591 213093495 444960788 591860088 471325323 791370165 455268991 911502406 447190310 111521955 587568515 881659734 949699797 942284578 857213069 331979286 426020679 908823873 803910156 343863430 961369664 513391039 281971847 999572958 745826454 175304045 901594365 551540247 417051288 783443412 83844491 479494487 234681442 434907722 382062858 817404328 414178727 50846635 36111247 317506314 804483413 4370159 481476350 829559302 450852266 445219582 241005460 380463908 606331907 315219878 663377033 501081300 228216131 153796093 345763461 185469822 913029742 377530467 826990365 801698731 398327109 421103406 127013774 358477234 953641838 665058133 701500380 885758102 533720517 864236004 753297874 624760914 712970691 936168968 495244877 240382684 919274599 486422986 317779429 723316042 746049968 303049909 238377428 847123400 242367831 132501554 795766471 539608424 961729688 629152207 623911854 137289247 188482281 945212383 946786938 849280441 143769595 672214648 512893719 174919931 444504341 509201356 890254615 383234816 267970923 669246140 419861982 760144867 917263313 35309076 12089809 963095788 840242735 19778421 222029533 288296695 470703680 94679040 267183897 130206156 500861856 653748658 948812758 749965494 597905551 643005801 385097282 130102110 134700355 405334708 374151317 195163965 902805418 926248002 265309711 813727075 473016433 965002781 679319874 787230312 923209738 516658999 601452989 147005963 401404265 821096103 596103077 166685394 789003973 339749111 256958258 402774910 905663653 431604064 765879620 618735312 411332367 109654652 27715484 180588451 610897847 195705742 980258573 493263949 391146916 908843137 850138266 192918778 603117467 822217449 524936089 566138415 257849107 668788804 457962561 977406923 503848125 84656461 504883334 876948834 547714767 74258988 157805986 544869792 772892513 916353825 803266011 114351480 575259025 612314389 337506921 533620143 578060346 705287820 641164336 414097618 173555475 605152304 984017466 577237487 116912317 585441459 432012873 56692295 416406307 20529770 939846336 522288145 174622175 560575849 942448931 863872065 908669367 322772549 206725806 831326596 79352333 849314622 967217860 665115872 496237409 146276926 466447513 598805850 702822172 57270256 150831530 56260562 920058486 41526423 2687602 112508445 874161624 307823176 77259487 651756283 464732262 182283420 741343662 851282836 988758636 516803535 966689067 229400573 65977221 734766684 597779729 959987019 681756650 813157749 849248445 160751117 389708376 37920543 467069769 369686500 407717361 121364628 700682483 750320251 415958137 283080634 718684163 434796413 828188172 11191546 151072240 226684161 665029573 398527307 92725063 418867562 84174298 390620250 453854424 612949177 525254294 973147080 751749106 47341242 69851416 58352505 924504018 360553306 419389056 564901301 83099948 910966947 287919958 41347527 854205058 317416268 495565051 898340177 184540318 807876132 250853470 664357314 340139444 471883924 612031789 196904079 113343971 8484307 948525673 161166382 692566595 523035605 612903994 926671886 238793590 761709932 707532754 375367160 444730329 913330097 597066302 65280974 676183523 752695357 153935900 990854296 606792920 456504856 33358422 764692577 987954239 285001077 808937366 465864718 202703544 659916448 148738179 519272589 787251492 40238090 115908552 531425376 307413456 12235936 467655363 517302794 606893888 609064672 527297262 485711744 135568950 658973028 269506872 720108026 767375086 110282945 196488925 361049648 574931019 919136728 860958915 404992951 772850470 61884269 58162177 587180201 427300642 248819851 598672343 308344676 361306410 870347915 896424567 717207011 449979196 239491005 290346814 709235516 518229813 14431946 56188888 828387402 731899071 781230192 40234481 424385768 63741165 990669740 431813679 679582816 807907701 611086632 510657774 696173390 800485881 130826830 165718358 678892053 555712021 74901925 323393201 571681160 63707972 277529938 141998468 94279771 778746441 175578634 732341620 929838139 149225876 425573855 170570571 241822004 866995127 873579115 346871383 229436524 777459004 280939680 442103491 778692844 301433615 273727262 401243324 230182525 886872311 252465528 158992101 53792156 349840996 670541963 772882389 985443988 962681650 355421177 954204380 495267784 680823148 528597785 205192458 871877202 23645254 17830887 712725717 404080740 798689482 502234973 975879250 625634248 446326782 300589060 465921800 681612189 970540983 933109597 303836857 989548872 259800112 444409046 34032790 249022217 975333806 636898756 9972677 218605569 192698972 610110771 964834545 42810824 704064631 642295407 183607524 226152113 866501914 342937784 662941421 565074577 839389041 112404953 221265479 32579264 839627954 607615777 632238855 831485692 711368752 164942850 102207896 36283053 732760451 628830323 274853705 833839057 307106530 18932187 619839142 263653791 72745735 82721956 823643727 660912542 602588925 499370788 816263896 43196504 316091923 198603697 413006624 209001930 848942367 344645162 763271909 655970528 515681342 914563229 945371961 878150833 922362794 512327097 621447692 186049411 717359246 848436602 412796784 15090811 70661372 389747102 573794542 263666901 120449427 440204788 463747702 422885347 236501254 383141966 877138293 303463313 184337576 502806055 67671610 375390426 789791166 721200299 472808207 271046658 225495218 717873290 841714785 77241975 654223293 59240290 423879552 615026334 38514841 382348378 805142875 943874627 399140344 438792362 519972341 275404609 190600717 217834235 958791916 797309233 193908975 79384043 8113305 57866440 832243420 345327966 12037456 306464065 862768695 901093159 356013882 924790933 472670149 170168831 429135747 247271783 865907575 85926577 938380149 941666328 719724291 348947570 529723200 387225237 917705016 745189456 171457472 220734375 999163975 27372221 33181964 680246474 844006005 955680426 500479338 214394878 575557968 934194606 585469437 67372444 281310925 717160664 157342616 323699142 926018219 668485684 279141008 881995300 435431038 653660860 417407894 662090209 771137665 993692247 263050288 200061190 969030515 195193585 499791211 233845172 757523115 960238361 642668063 760942808 597666267 856589614 817777459 122740774 670552583 553225251 792120537 652020780 252027198 165429285 518482310 515648856 272381131 430951203 510744937 630565145 316947065 689099770 307198821 562813332 443586949 989330369 824380155 939294438 74804908 736299470 226349944 652812131 692585288 149542956 776345394 819269896 850228524 675296094 639317847 862302008 464599696 874955413 435074933 851477475 524957692 227935523 722250003 69827600 211562784 789232913 500016006 466832889 375646275 333464848 63079489 968799804 138703322 43397235 864789838 206941876 154214302 80547452 9238400 505856889 810271943 594462818 615285230 65506243 13380655 431710718 6082690 383984340 996441769 657750605 942721528 361624565 835519727 178978737 326955682 276291342 642936297 174686916 550807915 10846833 326137741 803197516 494578090 339086519 519350793 572506802 426790448 450933822 372313023 134224358 928983229 82187432 62163380 451706647 152260310 988022897 142460771 112037717 723321182 896576864 977957267 120119540 33790730 293735131 554531517 926390110 276877837 766293953 758167419 418669593 389865322 229562469 762077667 116294494 901443521 958023086 375679708 228032542 337610559 192545572 299162909 880127155 137744139 558040924 111835236 79604276 343999049 842256193 634641944 961409458 645968634 212297706 171085553 57660970 861810472 849350876 647249655 656086789 249898046 411580461 165498680 209071166 452907780 562344580 796793626 820320122 950779046 895522243 109889663 89022693 849577749 308616673 146609896 858659658 60900978 104008083 25082083 14086782 821910854 296533696 328576857 595686598 121334652 736541859 118850923 885507138 292104488 709008777 638179420 920500504 519218940 575831454 950681429 436087613 503307597 983455907 58880052 894300976 228634317 95600327 83453115 394056496 65356411 721135340 718388808 619003261 504229999 846258987 914322042 634092940 735097735 241913427 927710542 842463887 597944032 434708619 824781913 288278039 167941554 117036166 863137066 381922167 722024990 49924102 503666996 354483043 234395469 249797948 588899656 724970358 704318895 710519125 643332417 63231068 522628389 912537208 712359615 900031657 693194628 725502839 887988847 527865329 709927635 904047222 875740103 605104369 802003281 897739775 777137324 668288119 223928175 887396506 921911003 579419159 728565907 784730080 123066820 437162272 119377620 675822403 876741309 999376222 461003592 916047222 481655888 461106228 422130168 790174685 772054480 991408328 834800078 473298777 861500 934049698 838533038 617840733 36150384 811857540 96015963 525533771 699640400 581135209 137200419 667151206 930353257 352332988 314924151 321949579 743878629 539888047 181914299 446853281 382145673 744673968 385706332 48410232 440136964 404006539 759311549 404035493 786391930 737339409 493898355 819219386 206494130 14901734 451720228 593363566 56074486 833727147 711147948 800726730 301534126 604808490 517220789 926974850 783141875 602369798 383857861 223476983 145160309 607784602 905524012 9294739 742761918 971183267 538124263 570297570 234859753 161510590 653881317 933929074 27070003 375650685 539315901 888993837 83035310 518449403 831241357 920529618 186746327 990816605 827809197 92942254 332453508 284275582 701386089 80538770 124331165 458437109 471862311 699790338 460539864 954286977 96397366 117871174 39123081 591569747 57420095 591654111 435913084 165782979 94566111 372264539 368555654 273359940 437078357 74210579 430698765 618606072 401889215 206239561 216144277 822074254 650427189 362902436 130084549 906170609 684822647 980794654 158489561 618306735 532549970 198709090 726937181 566097742 976448306 633820797 712488572 979274148 529294886 127565804 636580005 836680351 126038847 593558648 174824453 127658880 64898251 478058308 508697889 34963278 221560373 551996106 706730194 821811309 755096544 674582577 254007980 150657227 138249509 86350906 155525078 53876670 952903216 225571989 210466737 507494075 591900489 56153467 333240652 598007877 208265343 539681109 791234961 99684228 978449650 265654461 837917165 836602980 628760538 314720817 565120757 795235560 521347198 65779080 985828806 115718423 925813916 519612965 602425961 880307514 85142060 983809395 564460541 360645594 964472715 648675126 83332833 657907303 77306621 992168247 422782961 361751037 948383251 70311440 54055026 366659850 740730543 146832444 588879146 12154498 79546414 957944159 851347250 280151038 313521301 108614882 346371648 677635582 35172679 910695258 9896986 209052302 829991687 365672880 270208899 352307204 305289019 412536810 481789378 249591820 188556658 359909925 224576986 804824790 943497098 236822318 3774921 556340996 621697527 680819413 212322479 458493254 39657200 405922789 702225689 705597069 751148080 832418114 151268842 859355317 510196053 263627447 241847949 289277499 748172866 556220567 231473188 366677029 507159308 786055916 325172202 715636592 450245173 221716019 492726675 861864921 591518443 697861064 706124484 599049218 872462295 307058213 552836039 523186537 270611874 256607167 145428963 47264083 383277103 205382016 292180155 17595391 270141311 918446224 939449139 685374916 141195589 618951721 172959811 928775870 852889994 304010710 568504819 718677872 912898904 125460357 203746598 279928426 819962592 806504470 91155481 150657959 63707740 35097856 889423159 401541274 839534937 563867325 507309660 181767152 276524430 237481619 950346448 551724852 451672734 39288676 26220857 101842908 34961420 932809420 435655569 490811089 553589301 792864064 395828046 197001364 476342948 768585523 162421889 932653750 590850474 62987790 53494810 428749390 803961354 13799892 810124965 401628614 142916705 93270844 349859207 70125390 838828972 417208870 915422234 161438284 390714380 450507971 286191515 105453244 673997450 520431473 425996981 370799848 340127795 525335503 268107946 260396351 679938209 826879083 261856991 413445285 221503965 898534921 810159321 688486918 44576783 904721483 759605094 977866812 329566460 700614871 577488047 428137132 449958116 430671702 728053319 535669608 943452123 321609247 417152378 416048020 374781611 884836033 458060514 726100730 700827517 50917592 239140063 961762760 400542275 192662400 410393855 855903258 731776017 781590927 982358677 433708342 215839386 340054301 584138450 444736212 910832439 314012275 476040820 901250944 93482791 27085447 417840392 297975953 437704684 570804501 81118831 826671913 682191598 82240514 144360808 824635597 87995623 931917904 988358045 149377323 973818699 687677328 778745475 968035139 706415187 640233627 343688239 656539750 257652881 731903120 328537185 412293136 65600985 40697160 88552895 951680923 625102369 429945281 307050375 278308487 56181966 872562749 663933554 246694936 400373238 340277199 465318060 844143037 823337674 690501984 789139898 329891291 750570813 663922424 526739269 96825440 727607057 969847281 66472720 263812314 501522154 228600485 504379994 231828739 954350371 801020073 316890051 961408146 278315542 581015028 151052865 823478913 290644731 391757553 337682387 555126870 586760907 642947328 977161026 619173100 407031851 247844632 267734731 550642868 241856742 987437035 503432272 897693087 896158950 597335072 160976678 140934245 198750356 965138284 217912103 175964518 541891270 961258784 953696685 400068265 986481534 626304294 858550868 74176968 3766316 38548283 575280444 407289362 546398722 735002252 371478016 428409768 3393340 558279655 696650763 327333445 65976646 59575150 434285389 587362136 852796145 162096407 346583574 650686067 70478950 990617268 29814214 354638794 764683278 912744596 132693177 512411842 321010989 539226376 778333057 496105640 597144232 265738489 532337768 503535972 731149164 964198703 155241408 607333943 860951193 660627931 952842070 895232310 568184203 215825369 78204956 579384600 551685114 210737156 66192773 628316489 768540884 667714923 589583384 276568874 158423153 916628511 959713809 401846858 495474516 899457993 422017781 125821952 803509291 810940557 931443994 206975501 878340666 109532603 559000916 417526393 758892006 967564913 639812363 384258307 402168620 402408405 13928929 962680630 740898128 175069480 702684914 82034094 549418937 474018891 757529943 139288895 430910687 557187402 458268696 590298806 929559921 842297040 286000466 858631129 600489155 515629709 531537419 693731404 630758707 58777894 134734900 101174539 772896318 139422084 914629119 447594208 374387175 386608328 403323045 228463186 903808659 332550845 502107210 267537611 433049438 809270005 258797568 657624374 65995566 112336536 736468701 168750719 384051478 631701194 412271704 338550437 418337898 90580059 379074131 806336709 955258020 889436910 446467411 898014619 902270862 958410895 524298469 771591649 369182500 281607116 76589415 887808010 124357996 758929142 545287871 384000563 851792531 129333715 107434065 411892711 301744890 271435866 988831200 976929691 77568303 370339058 707383525 7926411 524975655 241448507 884521283 72687204 998789071 81641578 97428700 78918287 763209367 656110552 382262755 330731689 720144207 215982331 293230292 895994121 764159756 771961039 518629186 389321375 367994607 520636591 295249787 704140209 301912572 788688817 750667021 736139566 526010560 389902159 963348950 289182514 516502129 841534590 439730564 336080811 739106821 624686453 131143084 366776998 545181321 960905009 757332286 801560386 797473988 573183009 351142956 706125119 161492072 276846095 614732520 574903627 215463627 123437154 902285092 993574063 576210121 454784252 938620683 197944732 844849140 955790645 402180586 126948224 150841391 537016539 193127383 72972126 933067722 665272783 462496400 779726816 718178993 903390104 110991393 134991459 589740788 575255121 490527160 531325117 796229428 517520248 567098338 724354608 662673317 74102297 643217990 235597282 32747052 724356217 617299410 577497551 503437809 791574350 87035931 942020525 538135020 31168237 253434002 503286418 774350011 466797537 659443624 486735462 861451344 783358473 335231048 297828510 153291280 606562110 54937941 344418467 634642677 137105038 61534540 250451540 37990360 443679598 895211205 528273866 517696272 24190602 428860433 204292452 172952136 516767679 752131781 920647717 422435243 754986694 256530431 166270133 604405838 628632028 980755218 861123327 822094225 723963778 225060758 99847349 213250741 581370254 320426421 517093153 45546906 891697997 681176683 792325890 351015082 121687580 270176171 288247893 25892491 224558402 448289708 1638066 592864275 235245850 226321281 477567181 111893655 907706580 236262829 156535655 377212371 907424721 485918766 263672547 749775482 419002721 565218064 283708730 760701133 924678475 766222460 617077071 140290667 56564803 863744653 100482601 232312621 462389547 80581053 621290349 88761966 18509555 64429819 663983790 483125137 946972098 483269514 58281440 151078961 712219467 545443566 883420242 578672833 965636527 326058738 170243092 39394982 320340040 627590866 859283742 721523256 129483191 390685531 902065945 783050632 431965038 786679966 363706773 346428966 735492925 729114619 179455482 640991718 976392857 933764970 972682181 606024453 616142508 285026888 997073230 629979658 948135252 699081930 203608938 261796719 510641382 177437850 37534608 736777183 68516668 367439089 74820080 213999634 372959807 691490657 36785118 666426479 517924358 14126243 198960033 34354173 870863654 889915278 926362296 476817909 245795446 850217290 557498912 899564373 141458403 61510165 36627637 869052321 338776833 451657165 256515497 983783368 158695828 454807522 197810308 463894515 510123861 214606948 871207473 814154203 814319586 130297307 374946317 770742795 323230207 764501262 625711304 240722908 152720268 655991810 25199684 216651930 124464236 394418029 361964858 26817546 838243305 865165792 579961073 849366266 871085826 455964792 472248558 789588346 919344449 35205028 122266216 591613582 570917537 253598985 651539336 464004261 453388408 438596189 628474003 949863558 715424761 904431399 164921334 881981546 923667779 631117794 338785397 731941761 537677113 861681579 6111396 47826270 46762392 404849913 504041616 178924588 592124015 305073249 340325358 102044472 154430014 16513710 548816153 580214453 502731675 144948748 45361933 638240852 54714881 334650362 844345800 670371807 565201776 921878825 590174193 338160497 684471983 379753951 892759465 819160351 215486567 56428382 657330328 251685671 846557710 928923979 467550600 768334445 898830593 781628705 828534842 57716246 539539807 75853609 335167912 362275988 972417486 62168126 541371992 915415589 638893896 869626027 676878976 757683721 374999820 803421519 154129523 679720548 90477505 69336590 793629020 602113854 922581562 361975892 784989449 795242876 23344257 489477477 493305837 503958489 359084328 384552129 113269158 620080136 359347957 204075335 43383459 977599729 249031391 50527428 253986714 826691836 644405870 182260233 878490916 507913671 409410412 138857227 160400576 2308502 64455546 335970322 790486642 634283166 486869737 221009788 301994117 927979085 823195317 612125849 932037988 648182716 705949620 775524944 251793660 214665651 207829014 628071967 793208912 630682648 863244429 780471329 626893244 772048232 544908502 468435806 761062171 966281781 966928768 382349402 89698286 857513887 838700909 765875722 36961006 638832334 270420504 495957710 308995345 274094033 824707135 934638563 143106402 391780514 213083560 420146446 381780160 472818261 695224065 148944817 98644000 556925739 294740545 981546959 578878848 192903945 474139077 88673745 989727679 706675248 709754257 110257673 68312856 514330513 8944640 856295137 102560462 621001462 808568937 939686967 982763693 601299045 15465813 565087862 785051225 664278433 264872903 610157137 200495692 196299880 601332273 638423016 100328664 949398320 293053963 3201732 545456931 738362266 890623635 98754329 382416901 442902765 894593359 41107818 606456042 718398645 403502767 300144566 984585152 4555345 142269166 210505497 295848810 851200722 332623064 6062290 885121383 505462279 945622320 142054634 138599375 768177239 545725389 757245338 186419217 904447454 243313466 631583115 61890636 308945454 659093581 397973293 983822209 313371718 307730384 700043866 606959334 942208686 23764547 818892217 874747747 979133612 774940020 899030859 409104989 122716875 738076719 274198844 175232089 964133774 371131881 376727805 36836928 797693930 711706745 490538218 799520663 403446415 105100095 702172483 83983389 621041207 334766507 927533795 66466773 588521167 52105774 917058743 437336843 270006432 304157473 600835959 32678873 388689809 206433452 597369392 807128529 472794239 347851526 284016029 810342980 217637182 254252305 220970512 240319849 315914572 772711127 847424427 833058266 9290769 883558386 499836057 193688465 303462684 842243838 619476747 867692968 373740725 460637899 255019756 224700927 665333391 743405297 672864404 845757670 167513415 401830309 513827142 379163131 976404751 740304386 206140203 839024463 131765912 503072855 916569016 608973143 945703827 706427245 484480846 20107479 928405741 250059919 645998762 978424858 523121468 967628849 86873695 411829380 729950692 361301675 679810959 487944941 471674090 52282956 998594456 605307846 779143553 780840548 695610677 167507646 554190790 466215021 250684771 71568468 745686340 992446170 625785937 228086919 551655752 36822099 433237657 325375156 186955907 675146765 967547573 305668414 247068579 672529805 675545367 58034766 630652907 171105575 58168876 429362716 556501017 261574573 394124806 666160072 931784930 615498204 10239769 583071059 311795073 573179328 110904289 113148045 845822936 356041736 577745458 249006522 252541542 489019253 203938578 313027829 977945503 351443027 630580602 575550473 326617250 918707524 102860901 251002756 476314636 969839955 323954209 21178018 139348353 442158300 159252588 733461422 715956865 668220579 685497343 971880943 216824231 63834546 64405676 570633054 416793371 892522480 103150647 534106034 874156916 405661339 564147339 663979394 887353429 551680970 919922429 375142030 290675998 619380637 99020857 310510182 970050370 962361564 484932237 565398088 522096490 169577397 544268125 153963306 216097112 384516685 227952631 693311988 91620963 186106587 413281363 810592883 410823509 326854572 51194727 542205927 684156070 989276183 888043172 644881508 947805763 650782330 327456620 585180786 992829796 914167554 112087113 742970629 88043858 849890572 208801283 270915085 672715731 44745967 561120906 189515515 685415447 357225503 550698568 644750148 195973976 578428969 436374027 185193366 893193435 799310356 280470300 507261116 423620472 471068209 333696438 122527995 598142640 838894518 466920436 667049051 820860072 98510410 305363935 55185188 790276536 362705735 970344337 677101847 660959424 166619585 256970733 441427161 239808739 866818291 788619601 413848263 806847608 589176407 39178273 515575566 506428028 722943235 534134244 183026880 987505693 767001164 90144767 744507928 520423694 988206245 76350468 18115571 819797169 1590469 99212809 390097133 400185830 73458914 95493264 475820647 205381257 125170983 933301961 823614276 67461595 832099001 671549949 219579255 758680330 723662706 790743241 215681289 770747506 152087424 80023121 747585297 742494692 78517474 55554020 761991837 26345579 365261439 835437885 944783376 683013081 897576550 698613202 216469601 39497224 673282532 240620114 245810152 517513845 122430781 154452867 424821267 740413136 898020508 252514606 806857887 718429668 674625998 489505325 255465871 954347546 424595870 150767594 642888124 578530301 76448853 638301078 202995602 528017813 467865151 78216006 600047999 121647237 432671123 804823871 122321768 543416505 905383609 753135208 842328776 935737797 324407205 354227583 539524272 475921517 864053081 80428539 626077713 62510293 764381882 363523251 212782676 277542836 866010733 189153227 407356668 147484346 325076519 432968106 40412337 932970170 260447444 520020986 95803450 171434608 824712612 958603609 484355479 323149587 8529585 985276893 844891069 702402939 873582268 621630595 812236994 947383735 909865657 833098374 737462513 189770546 446350011 247282642 447222079 35451017 349912901 367630472 182813659 290632400 106320994 620141978 380458244 955160650 154653680 903805358 385858286 585642748 874948733 427317852 314621460 707784555 637893434 398406353 610780093 155108186 414566913 972055739 620275141 626334755 842806002 213322511 148770273 681232455 114010475 90314031 376589231 651307022 98761756 237045420 709404011 18414411 462415547 244679041 126878358 511951734 864686060 894434682 994776974 956740244 705296105 391552466 323200822 432722716 935154037 333412657 683379883 572363664 697030110 382994592 814232107 518718594 310531760 865331175 989369885 770818018 764979116 241167296 430524214 935801755 108279057 879409242 943542411 934344076 190567585 211745480 960957120 557118835 467958396 570589135 273119849 984251987 227459097 294444897 750616577 461167335 991126555 875212647 308025491 193616 575539244 702248973 983278351 537216756 682780991 532004480 564934969 914997199 228399351 175182510 311604612 80080042 274857979 764226366 175508169 661711786 789982120 956439087 212608484 931400045 71237913 913114826 360683374 143664351 320031692 857045570 704639526 916861062 719442460 481115009 787558901 510902793 891753200 863647910 441092361 458214823 561999433 464432193 558664213 109183618 194692516 720779188 836481526 369035488 508163575 464018268 202380293 233640416 809540067 662090528 247122762 69800995 613503792 276535537 451853191 87243245 510112103 634338722 76271999 638615811 853067031 109019440 494082794 379502130 250536193 312659414 623683460 699768227 240968069 482630627 685349439 985050861 526976471 32268010 463429368 473354531 876960072 228838355 914850238 629552343 847620501 343028572 385948726 232393017 864876498 869991008 830562711 563119864 457616672 880089908 700007478 214258765 503967207 454189635 784923187 214109130 976902856 86347374 253454987 653946556 369802856 694415386 788155267 836990775 788894736 316766282 349425908 568221464 624325626 286185938 993996453 262875798 193589342 659233958 323299210 443765630 247186015 415446055 218625478 438466397 88511846 437668911 93803618 602465530 692135958 145763227 625831568 950260615 285636753 907190974 76351842 344364185 113916449 946712279 470983797 713538321 373000702 852830370 444351562 962365989 90416321 808342863 886139354 825515545 134841890 981210948 581715821 37913943 63257702 49090649 194936782 179636205 955533018 169024570 34259962 369087148 199773619 614924260 106880914 878003608 850298903 576032788 114472718 924621039 203033082 865336791 786779767 277837600 512260704 658732010 898000354 543327917 658171151 478988560 378890528 380966010 664599508 987798976 773217311 128190649 942496782 580443435 588052398 662908318 613068010 665132876 406429857 86253074 256848898 373415801 866389747 203133216 129835918 325268097 179662429 256047023 441493137 352599086 620270382 623823199 441079520 316350553 315516196 600606303 323271524 104132928 615011329 635134581 296635317 292628980 135149943 191114988 300418515 829234052 972138427 855851523 184213946 748529237 867112670 745022188 469187858 737196941 707359780 212294422 596185245 246057 264887246 994078373 720901915 930440065 922963732 868186795 699733679 480522099 468494579 217989118 583514679 570806658 124742786 826976703 703494099 999949892 14450477 421970852 101473417 443875382 912965757 322527236 242315104 556352065 855253049 701400263 725127189 239916221 330127355 893873468 139371677 161622284 618144485 705626333 811996032 520016763 87785129 429146546 288226404 977428784 759984945 533140908 328813361 550629600 383583941 15230471 752918568 954683983 787726015 259735647 886615791 924566920 874624209 270719834 184523616 474092748 902243924 325595496 677347998 91209120 248783990 833196112 513917592 766844928 478083393 704890042 26070027 656444585 787149353 82842014 736290454 15220363 513840903 311748276 386967064 676500785 961400731 430675342 941647199 686823268 654091191 248246921 423180223 981198101 656332824 602122271 606602670 990494192 643218224 103927604 734933971 494952990 652301377 773994902 689430256 998376365 837328617 94030214 604411048 519837847 539365012 945722998 693352032 51577749 419426621 54784897 925055942 7530435 780727413 464485275 991038870 5894566 517288141 653817473 138458380 852156820 885638038 164359507 240037327 875756154 924320841 586130748 774305197 829881935 91672495 289104702 488221416 278599617 558469605 377811874 441960242 248880765 857127990 229627962 870418221 359569437 71184208 368570415 754588765 763532780 428743720 879142205 915148348 332671576 632318741 871212196 876395532 730242603 105265478 842579820 106322966 522686444 502618578 450871395 893769505 867571885 719188767 955503095 630920525 804854233 521329301 116984597 305133469 938419316 662505491 113507315 211106671 471859223 75641729 242479391 478354291 482849280 47613738 540343164 724041745 643762184 653823040 913287739 245841342 504183191 586873895 989829119 197737888 824490525 61404409 54371964 579070385 595235410 167490049 325999503 98639148 467666541 398395291 172554426 998150540 904655289 690984861 889041038 593778872 17453824 550916888 958748037 402557936 581381337 975880872 610159181 291706356 554131632 551054619 543121384 719560750 518461006 139082601 677119886 293172586 706577375 679853844 878174231 266270344 307898216 187207257 697277928 367193791 408874694 182658484 309175270 703470167 124282785 373593020 211518358 985586375 772047007 773190289 878176486 566988495 922764756 322910211 999542794 417216158 873074904 731577013 226045965 799834744 941499098 609360207 552666030 185312569 887173323 788275701 90712238 320205585 420177258 657662492 778901445 766105665 147319651 472158008 344778593 971458414 970401188 935132447 254980751 719505829 508005156 414993605 134219295 364399259 713685770 582648402 760442890 842232893 288115994 470290360 408419032 374773780 934148868 75811688 932851408 505341885 390495106 887615434 121361449 49984115 347091710 325752114 693256541 282011011 413030225 497288269 349931403 563650556 80089415 468501900 864242340 355503206 520172796 765215786 889675514 201002684 849228150 126336016 46622795 524975381 798477973 959626336 332756100 737514234 936228883 134610888 369511812 846882985 957347600 434471112 76926421 865517845 946688065 533240444 197224418 897275172 278957978 360813360 237679663 546177510 379933283 948965735 363083393 751688607 121210682 81407710 242970843 967605543 568519441 129319516 346829968 953678985 61652450 690636915 964551519 727030291 87756655 955742124 597819325 970592601 827731035 913191591 892052330 895486422 652665547 964321004 492869843 561883690 98598952 571674622 478262145 732414368 720680283 958158455 707004548 956446510 214655485 506411959 705422975 190571018 952685401 61884757 244890588 889740724 349265704 674381222 156463402 298351245 56635689 430286746 40363236 272817433 9766903 344365724 372352046 187815543 266429232 710414767 126224488 860861283 455745069 738975058 574633940 689982977 512239008 1231320 894725481 881381055 88116590 431722247 9773497 562860797 478373029 724369850 795211465 789468193 525866333 973314156 446001389 46919737 137278194 847993241 626691368 76779355 464170660 622745242 15324638 79348824 124400791 629131391 84778940 553896659 846145754 212242367 689243595 606662668 812780831 262600117 421765343 308255826 791583678 564323925 383745025 513979313 450939395 166653293 560842921 665793406 691459888 749797762 140991622 58682184 982449595 553973709 374456564 306862494 102647855 375141906 923478521 594650419 718457177 814919544 237227179 611169505 478719540 43733752 986541275 124652057 675476175 990136071 483245358 305393307 459395234 142113785 647910342 139274183 685895341 728758588 992615408 938500348 876611714 638400378 784413443 723726191 265377628 354874029 775995271 720120997 174640331 34228730 97956073 687689030 168193565 607551284 179278360 911919335 503444837 179706923 897168358 386607592 927395799 331293468 25793086 585463532 227769150 471014690 454886278 935369011 853649216 567339517 567286945 52158353 103609258 652490322 864158252 916178560 675442635 307030887 971984937 498387470 24533973 935989929 3918048 663097306 577601089 653083048 103797717 16340849 117878603 982320555 95033289 336916233 265867469 101651409 433889229 420740382 789780731 696710786 618082107 497934773 919530337 735118724 61032602 961698502 809879184 755577399 56557229 254381644 55681336 12560319 798367543 863215123 280690860 704592499 677228395 344908153 471668034 303449960 959482836 435036186 821776378 778609764 904665740 149903783 783185074 214855310 705087716 269081319 171520272 661584957 693447549 794376695 337866436 245910062 110935853 62272146 625000499 237741598 31156627 219429261 350367847 675174117 599678740 131884678 113131186 461885748 110601079 550166432 175162859 883401973 958367842 403600125 147377270 985675757 751753422 738026929 642631291 520195702 29705635 431108176 737205096 458689546 533346548 382361194 562776773 305115051 162790207 353759227 376697770 16360462 668269456 287578945 960579797 599196174 428694428 829100682 787614790 801120255 205699544 926009126 490038492 131600743 339654284 400967925 7207560 347826407 540393716 54798513 830206750 592206961 449919218 735437276 35209415 186964563 926173222 286975505 664437775 807326757 756931425 453960218 297540145 707247638 218984583 372183237 375644856 751887355 659642851 6282205 556564256 301874638 405846298 163571575 879024573 660340737 403371537 129607699 652683865 679285378 971670461 640144297 785812941 362676596 768823734 880623206 916407448 800062276 375205376 571671095 167190622 303265438 551740227 238836299 369513232 463811649 330803688 554009526 820179718 401415858 333413087 289871247 674310569 136007486 858937885 430066952 914899430 803861451 705048753 75360323 277557171 773138571 846142466 611006323 239129517 106552543 276777081 38165687 635525422 333455511 332171964 314617126 522061196 782095268 25676283 311393961 1696252 604807577 190862480 280001471 567281485 927010428 887493414 235872638 202526652 2175503 735186783 174203681 339354239 107988940 186405577 897032884 304672494 466797948 414612188 560253155 128850008 426303480 13524358 686876744 672770286 506816183 676444106 132788800 158506327 605591066 640335494 323225233 471536216 828873758 993997037 483151477 496581121 7801225 250818446 88807927 830734784 178233231 15219813 591533416 462886066 96990924 628862045 719975655 404701761 437506706 889621505 677378661 290603393 891926971 461714826 264415981 855538057 828344188 72325486 149538906 380773645 28031845 807727775 451593621 154745161 25398793 630815459 343243925 307948072 533912469 895850199 967755970 694953457 131294742 100404216 810299235 32869164 828908369 650203817 773382140 752473441 350454805 237021858 58560939 940519618 119302639 262521400 259653654 793653555 809382574 952209576 570980127 263452343 701459730 594403353 762571607 317084523 356676690 168184118 934423094 274889405 881407671 838354077 653052285 39852336 110154741 174148471 922411503 437502624 786333370 747024837 889659113 525597818 663169504 836245423 103355183 848341825 558579487 763356009 224332207 68720713 187044036 43269372 638068253 724468892 108975770 887031460 646392024 693779122 486072569 117667940 344024356 171325136 217009446 608139675 515628741 426625911 989270934 284471964 671218653 554297661 517293972 622197188 35882311 921292412 888448485 275124225 960676295 322057309 200754686 149482558 263343755 22386936 979205264 284647610 562335247 75467336 703136852 235309162 525787560 838501176 160673825 350352495 827420507 819248443 551279111 682432966 357713389 539888180 899560864 695698164 964170373 452828308 830758364 152494596 913366707 49059683 312606943 430470625 581739167 394678022 852484398 459802667 210842363 750183464 954707755 740175199 618988020 560517603 114919497 351359315 936942568 922370154 952780067 369299699 741779698 678100459 343137746 195336646 224423317 678267971 35515117 837376324 260465961 341186597 436055326 843257097 530765249 135399364 29817147 303666085 559558144 481323666 96627607 201121397 300858045 582965662 686705228 875070540 798407772 388470365 345925665 172239036 267251347 610735079 458604282 108790336 964150318 944631186 578728522 650683120 893394641 911787546 788150614 394880188 785085606 63315722 735605140 248809647 372720660 295505919 543519746 528732156 729339184 804056768 697692138 541530264 606844998 703755436 571677175 137049637 330941342 924507038 54063801 307749825 15602603 881883410 912694421 529800383 434478428 369857072 317422336 60356206 279815487 115879182 206274176 370018686 818110725 384608556 757690053 613782190 284971678 712881539 468880602 548292399 690636108 107058258 900068285 934808137 653148928 467679140 838067398 809713097 855934443 57897784 436257744 8371659 38891977 253915341 755124517 563181727 478213560 288249916 664468020 416720772 412959455 893914567 355941579 561541228 96066981 12186416 443723697 58444499 400538269 967387316 845745135 959641490 806133530 253556459 627026019 653013258 954640136 109670989 806105618 323186010 889421260 433632346 89666070 165991494 527782061 908627338 470371031 282427664 710152592 994515205 117294178 857185266 799122336 357810136 726821591 552931549 461429160 159412952 173604415 850333175 94641557 297680891 842622696 966878193 235345968 8315441 17629313 399428035 297330197 998565344 26755874 244556931 887093402 961148509 770067402 882085848 135659215 155278717 110802481 546174116 753616482 192387295 956927533 621572926 927635883 315777374 629260696 860360761 266595303 391662766 520630772 915753298 329010948 681868225 204071355 418955096 204504512 712851069 41211567 164900288 294530012 59953487 506171635 815777356 952204615 497177409 900757487 630870064 32748767 34577863 462074315 124285396 300677644 709174019 409237551 973433230 19620987 594091766 374520853 170668063 41898661 755196015 324987477 701285512 343540867 63400925 40127838 35392903 699239139 525717458 693877487 48013109 40822336 866848787 762065244 435462923 985886640 318553966 655085014 35529975 351622449 682282874 557696702 782769510 453528117 358216240 549573738 644510930 533516260 656483972 561404352 985598575 348527143 991078081 117325858 191957196 880338316 316137616 208512644 408324447 776690700 601684765 307927200 856742212 441131370 720065306 914708693 172647463 676255314 31177439 956108276 304521306 178359681 212265183 438396902 967531746 748227007 35608894 340574937 393030700 438685522 859496939 727774557 651552438 176326730 488642254 184573562 536992467 866090135 170381177 763425245 258869397 624432947 513917967 628488162 445484891 282391538 557000665 650301676 567140508 788021757 196642266 663292795 38142707 81940439 906857746 912280985 802553850 169192496 349727882 118104667 315270030 476127509 841459166 420395016 131428155 540696437 828688137 835863985 633314427 707771581 889631433 7265279 314872785 773453127 95725875 750049401 275611286 385154444 722344837 480272409 701708219 660438035 724899 310055513 881867508 487141718 518997996 676961123 393898062 123965474 824359863 999161413 546325967 472868039 331997225 770268383 581292749 20812220 415969794 864173042 875564813 546317641 257949928 378609813 145450553 160212411 411725435 819419422 536068862 939960104 604123733 108175388 110733920 879394346 915000886 692757904 855068246 270970823 635161317 678585311 159720206 288955461 155225761 291881145 338303265 335807259 396514597 735537194 611247 842240093 428120173 564149562 547697706 248846708 840791763 347020810 574653801 947325365 802979067 218909709 770431960 150983528 587996956 379545914 596354359 266642148 457092439 600096579 924719960 762675337 876220959 180810595 540771196 82097079 615424412 377500219 582489979 362887106 780540405 279229132 774220199 351837100 528510353 716073053 659910366 301300942 117710870 774117241 35810484 715525242 999403855 435670711 413315011 700562180 854465900 860250992 651332256 883086675 125041551 817075674 832719144 662699823 292353895 548919199 529792333 299117369 433037182 578219813 387480002 13868875 714517184 575255536 451067505 272987415 714366075 515670317 378144761 657880833 295235459 561236969 381201368 693388982 545194115 816375902 92561940 418767422 838398047 347888046 883781226 379333817 121483352 29788929 510062837 808137747 353221594 830987821 75958484 455125333 925616185 37934020 97107117 603619683 664634131 314473353 339622919 781498182 163557659 289787038 296251598 898177041 386202365 487259180 487897789 345930903 359152962 640508038 484861221 978164775 678617578 42018933 666817266 141619871 151913325 168277740 867743626 585374786 997656029 400558607 24275640 534636604 245186658 293689988 177801916 932204052 336564922 319711552 381762893 654349721 804239205 460014195 966066530 592151780 247487982 832295895 106698138 311321407 949527346 836670331 134753824 179243404 484496815 672284282 41854244 530794451 851810256 781188003 156735716 39424789 412632163 786997865 907045742 304962901 74541853 955831395 572768050 927904165 281823068 642975764 370138705 890549962 361422792 344917286 303744267 376165266 246341656 758036995 870377448 188555789 702406480 511493937 877651554 472851356 922583862 527626064 340972825 704673318 844385537 18697406 533074822 746646469 665017390 750755644 164015775 562250605 922551122 773270289 550098616 360183559 768638343 833853466 74953952 908934196 911154117 347571667 683538755 556836383 803215165 311735659 606785198 856854792 313463342 431526834 166963831 486855884 544088601 996777821 203159949 503750666 91451570 33137562 5391060 945049351 934615675 794751005 383593558 473979617 888637369 102226377 887653455 695967167 360701263 373500174 236789106 701335210 732496199 373370315 750794156 906961158 490381087 806776826 840707551 165027320 653495329 707313884 599996527 266068464 761063797 360742619 300318484 577871497 451171385 291183033 584264498 748018438 712286086 910793293 837399456 536916770 655614340 510472714 604165797 439610722 338600690 854311445 406878946 972580427 725997084 897212185 338526232 672217038 942166856 441918387 31311966 706824545 859467141 104304857 823037013 435470782 19610417 579499923 185540619 492727081 957219345 932663273 562683333 168386840 503452755 460656559 924761734 699142845 30129951 517982603 554735229 590611542 258892503 549089666 560015916 505332066 37122336 136411046 853518532 969049766 596506078 711074466 769915718 96455547 277540658 74113388 293985067 94274458 556019504 596866507 399185809 794026043 446580312 499018805 986824458 873298347 820330401 461102333 786839215 250559441 727921448 509716954 728281308 823469332 226104444 466103524 625872930 375537808 95601653 47943672 475140456 257435018 774277684 698465679 477088085 845663101 324887010 51907038 737300585 928667364 655391908 806031145 479983680 558306444 66123431 651706895 621389753 514857765 193118660 988883746 193766039 776675131 652971009 936914563 422558281 421763304 75324194 293942787 48403272 353515960 919363093 891341715 940910799 938368160 51789540 170896091 118187765 183904050 554879535 528127955 2798258 498018591 145941661 756679920 775527117 326221612 468700841 352978406 66912147 862101244 831733503 117168633 654272677 202249860 131747990 844476852 855595787 855113691 367576757 157306691 389899743 203490143 486802808 441806754 679785938 317375202 448857607 211990804 110607336 687806475 657913755 846998150 431883951 133929928 972836501 142808900 907679920 796458338 910604493 955427325 634182519 364847411 977720354 866674383 284312947 845133707 316719094 662488310 997054447 805390711 600138228 22161646 306960546 77298309 752579360 560087004 829588936 570010081 2726280 558304557 505440404 481444600 759058759 628463778 409043369 625637368 611722945 695251752 108274707 413192031 588616623 17884080 997557762 571132559 85748329 800915439 796929124 693768074 346331241 811738900 311204118 403758449 347117700 145750940 187267333 178555222 537380796 59083480 199085064 596194419 333301535 709270765 36835458 93525163 104186590 499854636 820954433 519302851 92437492 674346260 598189875 892127776 687286771 787599217 908895146 403181172 789592354 585824861 598988954 969572687 871483715 582154587 505391140 27733521 855108251 821723806 912934322 61326329 920265540 505583959 633188023 549716470 996942898 809162083 802906103 893015197 884093499 541065630 296757744 228560839 376143581 883106173 312990410 915278007 529152188 927354577 200736649 201953072 7238142 339381374 356031338 754041779 747640012 241970507 695911335 657515546 183414027 764074892 951721911 450988834 839234497 131905437 995381762 181152741 752839346 728336261 501130555 134821215 812930951 225958873 37427207 627152148 273782106 475242042 631657107 982698502 478199799 532895086 174200747 270818386 794926895 558741755 936422988 399595344 55251072 944700318 652776465 945468942 223910926 428156729 507636994 87100051 740300152 735228232 80405646 28540446 87095139 209230483 188111767 714995330 107075250 780457754 626006338 560567206 871476878 862438757 988609711 268562761 708987286 690846928 855070247 978837365 825870235 897868552 152995633 591244502 256315498 265231171 406953360 947044331 104074899 140678190 918276153 674191331 381858892 394112060 590734066 977522035 201016230 819113632 278949717 407212334 915071202 53705824 651320719 345971684 468282169 444645197 768329049 430212878 413357672 243711218 417369700 539898655 931299891 538865936 465099042 744157110 919468670 75390155 771250618 331544302 908864124 493341639 171850935 745066717 750562420 13774837 978129247 729107189 117794024 278262804 691251462 278218362 819426999 361483214 375060351 215243506 225198315 962025116 739720484 651293922 657983065 194564679 915692329 377634764 492899844 852500712 660025420 847011612 687927565 132159407 488617163 242692398 438802422 304472717 953230789 372541575 416518998 249150212 702938045 878143895 42354419 371849481 569240166 525926529 279879539 814959323 730609402 228096052 757169653 714101054 892246332 685052473 971999646 99044896 987925851 910900239 596086370 592673333 263715329 151617269 443389583 766347119 963078199 601284233 6789096 160232902 927719761 380625205 493919205 26503006 298329743 814968890 995852358 324286022 183515407 37929495 195302060 688939562 295755938 804850761 146829929 189569126 723141831 584938105 78167325 705395349 432818170 950716424 445043649 244476767 213641052 369107478 981440007 158333560 591053958 752865553 625724996 595230163 164155947 123797707 535131258 153636908 958193819 406328105 768605616 853468686 813414261 324090475 145026558 941347455 889167021 506370875 623393869 110768675 742000489 954247711 757875194 163943244 942759839 297583294 603714954 498434124 843093319 365907824 137935748 740526095 237090840 132791683 738176760 64287179 105403479 868660023 984683097 278407707 88201539 515448846 592721975 133304550 912312963 558188171 360712545 488754269 377649018 975543780 712697633 90782643 53878048 60266095 160691959 910615571 369658671 61159906 936026310 597800500 509159462 517181504 978913717 204038625 989345386 28166264 452425779 367055806 17726895 428954395 965127517 864101154 950669247 204858168 611101850 677999664 629757158 577442695 196265956 160125283 277173436 442575538 832048166 177646571 116618825 874501195 997411076 559365303 203204168 257430641 547318317 85496535 104339331 716982875 209092009 276333804 611829776 937186343 754409615 99477531 744328203 594600358 298608776 899741440 834582864 99778054 28319647 3770397 422625364 925738181 913747663 252040097 167201287 5669913 17348051 842669509 917922289 879387958 716972617 939391160 555625226 611153816 367562006 729775957 533078290 955029427 990184957 980250070 156952458 295023685 323146871 622729963 424830398 781321358 856529251 260668548 397348452 588126129 371621359 913001026 609156744 256852768 137299844 561201197 194005361 456833672 891735732 825012545 985418636 265122376 148141907 96527069 807676196 818806440 342844485 55209076 541761858 117912049 636259283 889577570 379163725 156964426 817982744 603734813 283530812 603929860 450663980 11263431 53349127 290346358 530671502 824743201 773809706 746160466 554605281 750776085 414614263 515672803 395351291 30838427 393407740 64105317 520585959 766900416 738450104 540299634 924770720 295364079 827433178 616863459 895505815 263273357 331175994 681655690 358603858 333790581 686200380 239592306 672917108 591069632 514067957 269045404 420693653 199415112 825597107 315738499 778070492 254807908 458425996 911444966 419920965 367203535 647162980 666984255 740462033 643939673 444456854 511309763 544651235 183623947 901826620 774797835 766775013 228341444 894533025 671418334 990747968 237691434 2590176 684125993 367867367 868672580 9757125 471814683 576185411 992680037 526595634 251363972 342087819 817027965 708755371 404160652 204261833 366739681 116575013 155525000 969551879 138002241 251315310 635873862 225583535 769654155 334458062 938314463 851370783 297395426 109586284 215181944 886556142 447305890 508802825 375125234 70010317 250986987 576000741 100410180 770544471 132888648 200072649 226303023 497574830 858643828 6879553 561012417 605339597 108671003 718512282 981944612 870460884 140267381 956486602 142952151 630706623 480968843 56216203 424682706 184703563 728272970 41820699 83259249 800249168 738192377 665167044 182521013 494798713 527323447 742278549 673140440 583540672 150445603 381690529 721294913 562601546 118170681 891169530 21789977 456258439 887649509 664884015 193904719 14596303 635077309 298573768 307905524 607224057 496222357 312872255 887694102 583262226 543904685 985828285 153964913 59849658 266279483 203758162 606118368 752737562 181244582 26658228 93431684 494851731 857562034 769265536 47642779 933917579 508931537 940030383 237932103 361955945 700501072 858679608 617028326 533957491 29551312 786704690 429296673 867723972 738462071 600336256 434970971 387774835 638968173 622303959 443346503 656885597 609042264 223517520 638235160 615204828 417863695 646663556 415515086 772928272 161179347 2429309 765304007 51055692 184322289 986493063 523762265 862811240 590825673 824190680 29410535 655631353 284282281 608142574 974273141 420837098 633609374 109938934 444161657 608398207 523935511 148768065 52992518 354215994 632915321 967204692 708450739 230671934 905683725 475331550 171289039 990190195 122199300 331926531 701709871 111990455 704743434 421181663 727829472 516658589 182173786 371986658 61637500 880839563 321181362 538468211 444450376 749927366 455512239 520631973 261257024 880913190 957575605 343882044 373543135 969771904 31046956 759141828 582223398 79417887 352379915 265529078 601961295 273709797 45524558 734188710 239550913 324231561 742418409 559806241 168180643 397380715 855061093 482621111 379632339 432405617 975944742 195417604 405702761 148424559 98061432 117536734 654089284 158673162 811271888 742673943 845335842 899990287 323188023 566751370 227314333 797726366 894932456 713845626 509268492 735937247 45876429 602447619 870371734 625945269 19851564 363670777 614466062 492863649 342173266 32736044 659081394 73791010 940125455 555840306 487828839 515761304 77921989 46242385 726810545 696725429 460596693 40131376 720424751 847635823 88340695 193384572 960155815 370693378 985140994 764130391 881709826 397174849 921902600 948897162 999780068 670472028 939181054 245043460 718594454 525559994 248783790 312504471 425702428 221750181 220936210 450183163 216958101 615100823 734010858 6264372 994698680 110359080 292950874 690957169 292161843 112014795 253616501 10682148 843599092 403012803 133262391 673413346 246157765 665097884 826319442 650450284 470516440 156262675 507486543 821294773 784978948 671502381 934352140 550129846 718023924 99212579 607361540 753253549 444634507 833760986 969694754 466298713 484776031 219690533 429134180 182347483 598814773 332750676 190025697 124721872 492688585 934597155 864176873 623461990 380570489 322259201 534836475 85969064 489991117 8003331 97906265 531104785 308428037 73971825 351504785 839855366 11307065 304511201 401228826 451663620 361788641 946415510 185668578 209570643 890855565 277897298 673650683 375031333 366039726 716550359 908774596 572434915 186054095 721676479 122713628 518816273 111436893 143478891 816502302 216309881 695423570 842964769 549994989 395329346 129612543 688927077 871319656 56693140 755651340 280388805 729293904 915865677 258206933 561546058 691368572 407281218 603295658 703714639 285671776 520277510 227559518 845878546 253212374 486448567 134183649 248815384 323734237 154874753 161684918 976742290 629353235 557776395 478808339 498653772 679799152 204970006 576295032 11822365 936019928 145523941 100702606 815297193 792892206 55818021 618493987 645946115 426024120 612533857 624127758 686660794 101353727 953996332 353289386 352186352 295028626 127187022 480937543 353900063 545181277 167444743 484204259 104482329 498845896 746697953 457098970 691079925 652733097 934177689 99989199 98920579 418250087 302904410 635970397 101653437 411034826 840246184 189558018 589535709 644195558 122915351 507651418 933681981 298346889 722748014 47028666 507413049 915889343 366562271 701537563 652332960 753243469 434415322 883368774 697431793 656228422 474098556 764607769 592938358 500580440 813817154 507544189 408674937 309668413 402279199 568597231 369562625 897297896 801966135 629755131 245132780 687852085 245498110 130556000 473183982 795985233 745503624 228164211 558256339 316548598 294696861 305242083 281777675 997369013 23608745 742671086 196785435 181819719 686236253 89983050 663024280 484558143 276840972 284558577 560737147 840009629 830852767 414031559 701806535 298548629 919065549 506455362 788392955 306375622 120744994 313230203 47934255 645286620 49499861 51423547 663114059 736023731 783486767 979485075 533710448 312927464 661553192 618965229 431717529 160547092 947067430 574891304 442914530 385169760 943854747 863908669 236143474 954371794 199379741 9221816 246837941 249338308 257784555 196742481 647454890 440277470 726423008 764157944 97096580 309159635 669756039 15004636 130019085 366492654 631863651 908539982 799075142 511611055 164225772 369561636 56442297 678697524 987193156 734636189 611555554 806977753 478519857 209926041 560530895 42351529 404127874 190040606 204642582 426713034 623342395 893145067 334624479 110332219 301469045 587758502 508262989 498369336 734063536 336752514 857889250 298577383 129739580 405386161 459462141 787018632 684007482 213004827 134940578 519519779 596120003 913475341 597012066 427263312 64365469 600738064 152425199 910373157 97829872 743585200 745659006 615480118 486934867 605623477 625677582 956509098 584443881 752731108 48456100 451474345 6923724 983973397 457312248 708803419 217024594 77898668 732654602 919662071 569789236 477293305 188805236 274702443 267855102 694094254 531315207 625663234 638748238 752830919 1094668 749886723 851369219 936709943 811212466 680009676 778888528 457554238 944365529 824599752 237588362 314347423 99754988 678493281 574020673 378507380 642055179 663745960 935856273 249328981 238655419 18368837 691382613 824317920 948250068 946530601 107990298 550667746 167854901 416532182 136756584 843758626 285835088 650055495 502970725 982211862 449153947 36182583 429083180 704738668 24592747 963950048 25244654 703063563 83284240 895574737 1734740 783955792 727300087 313260984 621301688 286434478 293140244 739052693 155955939 631502887 807635463 657911412 897960195 711235978 836248067 370041433 398606262 611184466 710608945 466004577 627529845 699603210 477383241 329543168 291585178 768400873 301665217 115300371 464690103 516756215 104736162 122150044 328642208 835122174 982993789 560111607 548175922 506791259 605422095 858148967 495302083 124797772 77263433 901742223 554488955 446844531 629458207 112611131 795448887 530479739 679322716 809328953 696827178 73992204 310680490 683642137 459309669 37907803 922265652 463103805 929348079 622372143 632414129 371933748 964935688 88242112 719742066 629770671 846326431 504142818 116623290 699679880 942831004 135865368 286161797 448788949 341803059 131948850 325812941 446466194 234475566 409722155 185438738 201613519 41521431 551173449 64736032 217436014 939710943 461042780 881045328 414824682 602734268 372333494 287179467 889774605 750380746 822747112 806915673 609918356 3941849 910031213 478830291 351074972 475512198 402296774 671015191 731046882 574160398 59247119 16320081 932975407 73518780 501158331 161577934 991416730 30636532 496974064 90546776 244790473 785431342 636255721 935356695 332781521 475990985 883773838 632520626 991988279 465396695 644501351 595383700 475093769 420993565 507364483 31855949 873297952 859411722 591082537 168856043 968494095 832491640 945606577 38674612 407052488 251677212 197107831 390630411 441266268 774470008 438600132 172753864 159355878 963249215 282834496 36790433 136705373 118737408 876402583 113771171 159452443 40437104 890035609 176537199 542137309 24044159 809430941 165352636 216981568 896907256 497396182 837720318 562741217 465421240 542046947 402849334 622556673 651278615 815113302 76336258 68156981 78697805 836313257 875707438 546639486 428071122 437619848 404119314 921713861 434223523 825681546 869593150 156016690 648441065 758811517 406352724 183211688 861324639 984539133 647720779 618451865 863283211 186788760 437887084 456390851 315183749 743963114 725622942 516608528 936785572 268180239 81726616 679042423 567658122 810421861 615801654 127376204 774442756 227219231 104435471 339983454 574474134 232288608 212633669 231507292 825202541 615303683 483114627 622983462 680025435 648532712 945717782 212419939 49363116 413899190 750159460 994994955 947357344 829067003 637151561 166387825 629209631 712090537 539832642 107771500 437196496 801837509 916322782 8398500 364300693 837705568 625574061 142043627 266105471 901206448 662129845 474648345 302509345 482205381 863784897 396830242 977704628 911216924 713244984 171787803 776284308 416470553 475791017 240399637 674316757 939621441 972246696 601745208 65680242 912481277 482210004 775288039 522316983 357854991 193404594 558754370 86088544 134387136 165010845 488606968 74954573 36920986 996917299 855560654 335871073 812979695 418938979 102325181 809846958 992055006 429011236 561923488 275799592 834387985 507556310 373866490 243221947 616313338 837327389 659895866 220762503 775835820 97621032 314373221 507702705 320586239 724850663 687346078 543770475 406284898 877525681 188030808 311082952 80747887 904942044 658751118 887548945 26493164 681661578 689203910 756178168 464355210 939657848 474677411 656193021 712556613 397774614 222016408 593512198 140202059 139074188 834119120 125812288 858985107 47594731 990561631 221389558 453919753 721164305 872375918 894525591 840594884 603475072 399535330 594362330 239794299 50242235 192466466 274670821 889305978 587554575 949983243 172537191 37686052 553028998 679528029 260776959 947236861 560772058 786536320 168869592 327116754 380152310 329755744 655489449 352051858 87293347 727168036 240046130 339026082 611581168 193658483 737154414 210466253 162755233 507461784 269265875 670441476 770149772 436510151 547385543 902801906 638507044 377765127 696489591 594773710 958594036 228100115 472195028 102807358 132701075 781430719 96306448 688987953 99482953 368480001 565508468 86809148 527288931 491423364 394286518 903140586 899137787 513099922 549961583 775578441 503491282 955859803 385761061 483057004 145454342 442392922 833800833 987509550 207252235 506512745 150397582 18179711 484774249 103088283 602759923 679482102 174836093 357678501 379734163 230826149 121733275 633644986 703187029 829060014 947522512 451835345 199658202 580849155 125865494 561122034 496596655 36040420 848542897 342076006 634867614 872621298 623007930 450189747 285432516 375008673 65092592 41708679 443228110 554808276 360586551 649041304 775961075 634177950 27073525 35279437 456640732 972475879 822569259 437442460 975742685 38616507 68125683 857889760 220498846 649254366 227529007 31540287 758412909 841752516 270646371 48807207 490855909 986727146 335461574 994755900 870994415 855651755 772116652 913571396 112900736 526342359 963218291 673622377 95232185 338996919 675563162 173837686 569232607 736050975 121525951 527737841 583379424 620766823 607050704 381416309 100218483 303661193 796001244 588429498 814794843 775057501 601435303 185670973 336547320 654928532 901871117 196276226 852306573 775883133 45043366 516183291 761567428 228509713 172363036 129774049 626283211 313327996 20423352 345745018 213962036 613331370 592388756 665972929 183091070 748411574 857057321 729820445 392603708 333158672 328820071 188897048 100819367 721374404 677313486 650021076 813630393 420734918 341659167 89303849 864154177 589944354 555609141 850664704 990714346 99531472 771923566 113021630 144856472 549685200 354255691 567055993 306891765 351762258 654161046 990482843 63716724 368313424 45704279 75897438 456531046 482990983 206594007 544851388 395678283 467847901 742965294 41399255 882391211 18645033 760087605 262176967 217652568 238726055 229846668 512409162 622843577 639674915 746530421 497819410 7683118 42106460 952960104 511919443 635702108 679136172 259401344 309880078 844451210 444548412 172916252 314662103 564125313 411259054 694996889 311932460 41064955 314392950 143197020 80982352 974967529 228112676 240873144 469684913 380379935 685814495 765592097 427715377 517504433 657123057 541394800 260607920 443077689 845649667 45622846 870638576 746645391 357182086 707417798 760349621 989278852 386387423 732940061 966425416 864161966 410236883 934848068 868192792 557187580 300107166 911966987 4018715 174413058 46045649 782555762 441151741 807619753 134556001 953299661 350441405 523272527 231092428 112441576 59774598 274678542 751014662 197055803 602506740 285703515 615091238 976372679 864616672 31000 457061398 961810757 366231811 365890268 988955814 657584005 818365824 640674067 447674941 171882059 59627937 468726057 533829455 484901434 328770811 597029507 760353023 238247341 50075475 777531447 165353709 898973803 522945785 258823684 270079623 95992483 526084603 369497691 824807709 527417777 209274841 385361534 839743778 867074089 906147493 422469473 898520136 574168924 566766668 374348156 323159345 526146445 721594522 798045077 978731024 37690526 607835190 765098481 694310641 563664428 768583386 44458717 495571339 560262339 366349707 628687832 812328432 735000933 564398758 799878009 522221373 864253261 650023861 958965641 334412734 891004387 814510933 371071628 686131506 271277418 27596362 990765608 207118834 843707728 478607628 900476610 211754846 675298855 374875428 682879815 156192724 39902441 170516952 668620525 605933065 254096898 550649419 614749373 663907194 997813194 784786516 933575931 786723974 528045866 350883548 516171631 121800319 959915714 110878382 657183364 577451464 792572447 255983098 123267701 378010015 461874365 376432166 216324850 243685290 653913527 605042655 563300916 466925901 23768330 550699961 615234022 366931336 634666857 510881457 914591990 767225518 522579990 408136713 920872832 790445023 957008642 535299943 203784925 462467482 138863555 531308123 176721572 224178421 627524971 966945288 902038615 791008605 6752619 132469631 838314494 36603787 691635600 973378997 297486432 27953955 685662786 604806674 853987272 205977087 815006446 203181420 893931799 422077760 764000045 105041316 756346153 91466788 719018190 251763020 457758939 565477163 861201176 658557190 986349656 372761191 34613194 453308716 627361990 134523873 473127118 470923732 47104930 78712445 663867436 367843626 108493178 844041776 484064610 396111387 933001911 202983330 709337377 238644660 396614200 939058343 137675715 559954994 651232547 145554580 284646643 648227826 917607975 264189740 736342727 90248922 407231859 37706942 399248016 542389173 65410873 439688036 83097429 303653443 985239498 657382121 814154204 629441154 636749616 419148902 953193954 674998819 96112731 955049188 719021854 825770410 218777328 368004693 109093350 276254623 192379067 150254343 325146847 668896318 514390021 286181955 655691514 180800310 51812406 767048434 309859748 37372924 725326807 226701697 385976614 398942968 768309346 384844017 325435588 257524363 980446996 375609088 158515826 127103238 129355999 640604808 121999562 380322550 463883447 230012914 433287805 509520485 989920467 183390142 760471080 710917963 842991373 95295271 253563061 989043594 329453032 369691759 27385616 735037292 344076361 205970186 426388373 183584260 640734807 551458574 475261453 61207723 212791064 484095830 371142483 280237075 968815326 844384351 860752084 811736832 45156361 213549546 779967640 966474294 592568763 330255653 183440763 972227998 753193902 658720515 309811269 243384235 99977697 150889527 321391680 272340103 871631415 857551314 675551080 500619944 471172328 504510928 446688003 514518405 62554278 615938852 579942861 406103897 966184045 759637800 770460393 716743765 286422887 375971026 936096307 211674858 335770106 599086330 263851249 696250614 901220975 17631406 289756016 633281006 117433933 862591854 62559092 789971696 36522905 92166930 898492794 359638785 769923605 740736173 993598785 718532437 762986479 45398828 216716154 255260450 402170650 194199695 883081238 1286577 270074140 885944112 426954935 938843119 415368601 646204776 40437504 786942983 397662097 477756156 332239545 375529982 521288659 84954330 885869572 668426653 110816267 946703461 691772875 918974466 735413142 743646682 218669109 729768501 32553050 782445919 887732534 426320165 608360417 386691128 629486871 746774300 388063234 352580264 889943473 707685523 721647784 496885150 519835551 338645501 338962538 653911533 362263925 894260119 533998999 30209777 951061398 713378730 519592337 291259494 1446048 200332793 468804792 758970014 173647088 685536332 905385461 397782099 755115244 582770722 549062646 955853872 908591751 352650343 361238323 967106357 368986111 254127811 272813014 506000786 541979461 572281437 375383708 419611289 601189618 345449875 323830868 457748794 475877960 752996915 731085202 362127408 413907868 745151521 147659393 978836803 939705152 30961795 197706322 139576202 85341503 447865297 936357410 747066435 339095915 163665536 30709455 43151549 446778866 814845973 442886833 700725559 515319226 241127410 536895695 544076185 460020745 522674693 716628556 173432080 981753951 998076777 630912954 201413796 505565124 796604298 709998950 617106076 955473053 2918333 883429636 451606905 642725653 780381810 533380934 112674308 101703398 765820552 755519427 288272547 224325115 663225595 161386875 905700879 826925329 287728517 483197627 542798674 533900105 622255874 119853560 183433570 685030023 216855318 714548490 661665196 3847130 992549798 815744229 237261044 810662777 130158541 165113427 160537403 3985319 32663920 815551363 772157331 655497565 803498627 415201318 447346295 851640219 379202234 614832944 824728942 604025462 18215587 823942155 355400492 616406223 431615241 759206667 69881529 581167608 526721833 314153905 584307810 76787723 529632390 557307927 975454081 403717669 443677676 613276246 910457253 947648814 924044856 826347119 871155890 816017975 699801035 343936860 887550353 318662602 687937051 505990743 818162901 719530994 799158641 967487519 283627087 288340712 639727003 872843772 99252623 208723392 157646252 376205802 965283733 964131225 891027296 378385026 737493094 370745554 704885449 566499774 510463281 81349058 660545572 535293989 454851150 341470310 201869390 755954627 996593794 56142183 261151240 49095166 665276466 525484870 454104197 751015714 227576729 720541726 145991735 258877264 283208705 190878040 632764767 123473595 69525030 938644390 864575923 848933046 766913373 507955610 532487317 713973484 70512969 415102005 193567717 995067837 512350380 210653347 496753410 941888135 165605039 726578936 443986855 368606176 777513306 458199432 654237411 105234209 220092326 815586183 164624716 746115698 674856162 26953214 222496945 15636239 107857953 554525186 443792051 603457656 248421581 523322989 520789902 194627120 992885593 909388233 471443013 614625354 49950993 119044898 363552608 834749986 187957574 522644988 143304988 224956535 492493209 527020389 563206822 988545283 680499778 688600954 970626384 109302249 818905941 965421331 9894349 394770375 3078259 727402271 833885033 986200328 556995435 312623536 788452420 52460150 5138838 484348227 289210128 28416222 847175779 881692250 745368928 506530036 1520253 24056762 994115338 88084493 277129536 224424452 531075668 289485913 722528372 819143550 150641360 565286366 36286224 174469937 724969952 800544182 119588591 537195059 328574993 623011540 465733613 988997100 358934763 802092547 888342126 55431404 201970197 553236326 133014722 268905405 576487221 705890103 765514793 383215430 813783439 762379832 144070241 996073649 897730490 534497230 26173620 927850030 578483301 782096116 569554915 468336887 216987320 199974053 165780409 492111056 146530960 576168018 269213678 164172720 33630265 664180258 756332196 715727101 655666670 294103427 548987606 418460168 348640229 478502818 784655245 3199649 283942983 340411831 256407297 443663811 126905175 365769167 332977339 689329946 810280961 687968530 347094725 760744447 461238283 569334223 100093498 82726666 580424524 599861944 744562118 17491831 302156335 341094515 914914327 55532280 382379613 238217981 545898361 429216831 620028876 206802244 853652668 291389958 451504806 647608368 289640272 842599940 776683940 979571235 963230157 708772619 277468732 328064303 891053595 974860894 751245833 668382091 278497517 647846633 990710531 991475716 534895995 731971158 578426189 362931746 513620005 871705710 242472010 201035034 229175133 465270260 948503776 407106946 544685941 57359299 579660893 991467549 169625930 980967120 816486067 317729765 78141838 965921535 773992528 491967872 736976555 109261639 616069840 287409531 164485149 798867682 889323396 413309565 735479185 366050084 912231740 425059912 291149064 959480359 858505100 646192752 343569459 53153193 157585953 514247514 850072328 407745294 812956127 677438731 440550313 869068987 125161511 388614328 996361087 598788064 995485953 667322759 546105696 152906019 992990452 44084707 314249331 486222837 609175686 886456964 791348609 606420288 515863954 772265262 420588907 185941754 305192654 628349965 485567430 332115654 682529616 186039174 846592344 606309042 19122956 739885704 308299403 354317078 334475784 466065767 307445704 872155857 211553745 578537355 790343863 546877223 346037927 539944264 633007521 700774012 115161245 227242468 722631480 715673397 326724442 433298633 120271113 709663151 743715053 933509405 7508667 450466837 382130090 707868368 677713329 206028085 239046162 941503310 727996071 960949108 753861833 691422638 567234769 96186146 671755948 54251299 10599887 760483834 374439172 206356977 926898095 292034537 60099989 832792480 288870390 49040492 919818808 257207267 800745824 261843550 79460124 209573732 623870752 426835153 189160007 59721296 741269538 61551346 269363286 70056413 536422482 663627338 899280668 618700312 682489514 240948354 688103457 265805148 235862864 281458189 899960345 794661982 705720218 76632367 84896548 852029212 972266510 404383548 846447950 232518537 161634018 451255300 583663302 280157323 985803041 374672709 776299193 847487703 592923176 800295251 107304798 557781242 372502247 471487611 407555513 449035990 507865805 355915034 979284475 504799804 939725147 675915627 485078581 379427529 688636615 823579929 298397635 432107960 760904391 76751606 750173885 44136575 596587369 264862610 392185095 839095256 976467147 586385333 175162225 11300690 577527086 917316864 718000558 505495987 313605096 610970297 358631208 928878147 209697052 372277800 119387394 118811090 521077986 116003115 267804060 901919214 845283041 481499231 549286713 984487457 805408572 336032462 55564092 827279629 347279954 285985684 791138739 929010149 724829929 654363794 957498116 506429856 122899259 288031387 440651316 446791128 217762681 313279393 419123834 882115728 696783737 924886551 1732766 442779532 158657660 385219622 781473391 351011049 955997547 327405955 302875674 301832679 332550058 612552859 132710106 430540952 996845904 574161255 705933484 827232227 300911428 26498159 259035999 689730516 20155124 41168192 356141450 544910168 917302105 67001336 42993648 582804723 916478215 722823279 781756397 729200651 890431565 576187372 399046199 815160462 926781452 718331119 567921538 118481891 610056601 249968375 444927072 517731726 910943949 311493843 141724468 152368349 897523257 663146470 912131133 299777956 110477449 316107515 328837420 92776733 685436943 724226399 716773101 481762603 958428728 818921408 919834497 115658325 310862332 546716484 771044902 106752419 18852391 535063484 23249919 366407934 33697434 887771345 686952577 790801843 900711605 579728709 482068745 269980908 100769572 401371674 116307800 131015271 70267858 876311467 649395248 149811915 793947617 714839220 474846695 325292359 406131813 813781707 463159331 596530379 610312446 564079433 802794949 68425328 699862500 2700286 869506534 528564926 802243581 134323300 790348063 776325841 834443373 814264512 485578810 618695217 371766012 216569709 910109516 784986086 564235816 998614240 342804662 329832217 986196531 849813013 843513197 963266146 922547545 32927237 739390669 629850432 687865126 571561093 496885826 760256205 175442053 957331730 309373522 229400320 563103981 710113759 867811254 671604698 97927410 275168036 548487132 420266918 848797888 789590511 152272792 907076504 851636527 641215901 29975435 749184869 703995822 514739071 181773866 98475841 262336768 187649056 819737376 961118356 992893940 773275891 431313214 23677300 162649161 930477093 233525195 706490960 250597039 289485477 809202707 994045903 557896958 272112768 225661254 648807696 657172730 927656601 96102293 993649547 867023932 723380332 585680156 508470205 689650298 745595180 224098321 918571506 663514090 926679151 972044251 649036364 282326692 995689783 716669172 108860360 313147843 867540610 142021413 871987732 368947749 50149950 848318616 839546463 513890926 159133873 899998163 425418679 299810202 920023306 418204313 72371672 896720181 35311491 121715978 925208551 781202124 800061879 931852868 878461842 834017791 876144045 829622729 174104354 293278107 740200178 576909286 51908018 910552845 610365999 569269685 393359419 41322744 952661727 39896513 282129186 292288669 687069410 214414075 6641373 202961540 46683999 233621281 12318379 403112363 932489416 210740357 988131055 452068487 751753072 614686508 205421645 937515170 684545926 305216988 741629778 141341110 186705010 645060727 693680012 961421530 399416982 709004611 45881032 637906960 676801304 577808976 196434295 235164197 855345090 660754263 36039706 770663676 857247562 200635817 733467152 885081747 558256392 285398950 847557751 186143177 772167562 350512700 958368816 466919430 931224888 408960453 300259112 852446418 317411807 213732434 107005998 537327803 399994557 143482134 760352993 471451432 741894646 524811612 903391082 27321615 242502531 161877461 679910250 728795233 381209787 871511169 278578573 322572117 660829492 558511040 714266933 699962796 28728682 342447875 390752198 751467924 200948790 727315531 130073132 150831234 586648708 552685033 525316014 815336140 594635722 66537951 79923271 101554569 971282881 43453523 852119816 824045411 404734978 464461715 251690269 952287739 286555781 569573374 433030887 968017568 189371069 92913545 615967602 377999845 191950816 224055981 575806326 901293633 869673542 613784821 800082458 105720791 557402415 330297721 757187096 657450293 245535749 9612555 111200508 496188886 321655630 503471160 964862332 306242961 81550980 13838526 570824880 862444233 794313260 519591395 205132540 357402405 860541008 802140526 174681252 104039622 451484210 166754409 541504372 740378459 604797756 785922769 168807037 603120913 234145705 573629741 189430398 881136226 933621548 27742729 76705210 367743352 735666077 414902466 605332458 594522201 6777606 900250150 280241440 970741637 153337906 727583892 998283705 661091817 881719965 141417511 941828560 62025412 279661039 203526921 387472103 984235632 374531347 251468112 754884164 43991410 805302540 552894880 829494525 870427006 128640746 500794762 926102802 446762453 746329452 229744558 193979446 215305731 654570667 492564332 154080917 486198660 213665430 772923421 638260071 683622769 26211354 165086 605294403 238186838 360330251 747362473 12175543 149329275 645213097 198022447 349822436 402197043 547783454 496720043 920735990 144177180 656847417 655062897 825615192 402626329 421512090 795833441 665966034 143778652 892178631 833779577 214083239 393247997 377326502 232614872 422235793 933341898 102246174 311808949 535471083 294362877 117677138 249942637 428303556 366591172 907585015 69842097 24597205 855896475 63924280 521870960 893586948 537860666 30796853 657375846 678312596 638413634 922914475 463127310 231703797 887919136 400872739 672090178 289446524 837528134 267686995 7220240 754002707 632275987 111280827 501607907 358812392 67057732 82727825 782970913 807981914 449056828 713383531 497265551 642979177 927347478 12391649 655132997 233898758 574809553 509731865 445896155 501747843 352826682 260926154 533285918 107819995 216310926 650058087 979052739 313169601 451439624 255982212 350086810 393369966 3106262 886067646 951638715 39984002 75825641 520768891 76633640 289173187 791415565 891437372 358480571 663182096 907949209 720647101 713285965 348517755 793029556 654487662 439928619 662327140 930435974 919836397 324349977 925204086 426165049 580637727 48835121 450942085 710606138 843558268 479926172 697929625 86172675 146183949 707688962 772341951 706579902 940843163 789876737 850099435 736081049 56430198 268785806 371916544 92031115 169981855 966393129 184909105 11294615 725394755 945805165 995031870 355124405 162930726 656950349 575304979 705962118 781660232 820660509 407817773 269068358 773664287 569051400 943908985 72496683 320250410 600505066 152177526 567363194 480923739 112718329 685514822 987930995 639588471 467129488 300823014 37575225 729367873 661008398 472532937 317473736 449463807 264148857 610633226 489601270 582954700 372546904 312299165 448072223 357576971 654624668 601178328 833468921 490997194 364775046 676229749 660685537 710846412 484780140 566085367 805656579 220938609 13654694 799919746 647685979 821032913 597890946 556854844 423153124 700424679 398153527 355557468 49821249 2720100 338436679 247037310 773310960 646752370 859375494 910550392 462418553 405203475 968029735 221604617 748349455 562621316 455758803 928818488 975924971 235339453 66455059 926399543 250092324 894274975 433927729 888694573 326542279 99295372 230247019 570165057 294222317 227057057 347263130 800263399 406532394 190766499 835549673 703989232 180885067 106290498 839745998 670769918 747180899 340671810 287085216 492469789 802733209 179653161 784665907 979744958 80852818 819948235 263775605 573884936 474139369 483985531 64318805 851426464 87823810 465944612 15249655 916416022 504309892 426131724 146414707 436383386 252674516 215949720 293524438 37275310 766595999 592981778 600354305 938152946 435905620 761747096 91838480 418808037 489692064 474207081 922025255 404385379 959704278 413930350 109304080 846482953 186205599 981176987 869869490 305677443 144698460 954133010 821174653 553586769 154334135 689314256 432056791 588707973 600570674 346038079 708837553 783436387 47783689 484901916 492009435 88257953 642602138 707693574 20550257 14444066 201681372 8793264 800540398 864650051 449218452 946219992 609692660 859295616 56053754 94625953 684234920 813814843 339803744 261042876 247574942 158035221 695566689 718554209 63925927 458167452 999725634 860971680 923313881 767095329 168189231 697682460 570166347 506962485 208886815 127869681 735512164 258737884 793461041 245296341 182589838 945263941 945856907 919742677 999570754 432585161 66400746 664528174 358118049 457143583 903273817 621486049 680823 95858522 707891998 867937408 995242346 615571661 321618847 190516346 245934899 46300825 689145157 202248091 203373333 765043199 118638638 137615598 875905846 727859463 786246494 293566155 758008517 415184939 104128803 952170279 262067671 535368377 497159585 753963851 832488251 200605078 377685828 626862262 729830596 332790274 248185012 526206044 329444197 231775880 928846861 607242687 389377594 902497737 104076690 966479236 159442675 915816826 108852099 44219644 196145789 626971231 73448138 872330364 188434660 57719307 177705680 317413598 292830949 892297788 538611412 167296729 479678427 948871035 630992536 208431945 740730163 174616945 296005565 347902980 746893105 437455031 255087903 461324621 919638079 76076082 163219078 854633410 828176886 601763445 219818177 925128989 724622411 65463183 61550841 929606978 31905108 641439024 921544351 799512515 104480293 103869324 776805617 199917639 400121894 397821345 458335904 411029990 943515231 933639029 484918643 950485275 71276229 643277075 697680785 826974949 65562652 940394681 139947772 430611864 370313091 658921112 804006969 335908369 433953050 379662371 551656147 784330207 138730187 300856192 885640204 642182905 409902076 893164135 238633781 582732905 370247933 296771837 48796672 591521758 933390705 863617838 54831295 337082189 596846048 264445947 369227691 230861560 972034698 489094641 608015115 165253280 696323534 751889166 29428033 467544612 776497562 427191006 951308214 696664575 265287266 113322304 977738957 315581427 460514066 348164161 165822180 717480303 437093861 982912838 744909062 781783636 424127998 951371656 494309699 485613028 32380967 903358308 820232790 332954691 413031329 153915974 457900210 800961779 634049709 806348322 71586029 508005639 16257603 120835896 501310908 315683393 134012194 228785838 329214785 936259777 713836680 482799384 641694895 414865695 923545465 894069829 77936836 79166358 559691758 66454438 255339858 846041147 461450725 943064588 206290560 887928492 998743648 912194847 896827912 365671164 641541165 643628338 143086199 487249748 830522040 268859251 43092540 124036032 145737119 169225457 616271122 865080796 511123390 730291325 896553242 682123459 225431982 261022915 243411032 45290861 410267118 184772828 533557621 192749531 748458281 439969655 225328173 318229730 704047524 183642679 57212181 711894816 166814421 141447599 443584467 82419184 611481898 271562021 757497635 611242122 891500687 650180826 741214494 299565170 824992914 633430561 45480141 860955322 551395036 158424200 910201170 83236247 988351189 666047158 737812126 395031234 356179082 628423517 411185493 451207910 866638884 326330449 103948277 631844990 415608071 171831221 401630735 60754977 735030241 271252963 200040846 346771264 733527193 830872212 93590006 169715838 583749234 756042001 946770415 276615467 921948563 702941394 253831615 384889122 178963173 506192528 113463738 963373863 659326430 640594548 671061458 518718002 384145663 959905551 882015894 638829523 209748477 555952238 178914695 190697242 569164063 998015084 295817940 204899541 22429639 82740753 229273489 233471147 156906680 324137346 925170530 717961835 996298 141239365 606530841 373721128 275577525 453351504 36460783 658433834 409653894 694639247 388837429 663276408 681144871 230092855 326689837 520585757 971092307 333276717 172755786 84113032 574515949 605140019 596080325 100496068 900121363 381819196 135945518 107297399 924740351 791222590 55285093 379401149 403335033 359603765 254156617 654871296 246534082 317364107 848880534 863268556 195530159 184927719 49214137 23489872 787378690 160252685 692286163 855121537 732537703 920415334 586314220 539770336 488735165 986718792 95151098 913942727 603511971 403532128 454809297 635343445 188658259 606285711 2495275 688953248 236310242 645251259 311124404 495975548 713389977 565964775 958699622 812561405 41033050 92978062 544158225 129697503 101369289 859981691 567121635 656970857 951175954 88965602 315105971 288140883 761494886 718019838 151665658 661134023 81269233 948566378 149717709 857562005 545258179 269138224 356248673 545464611 986124062 416220353 458591046 633038037 317559044 951299557 469403471 347096902 801465435 981776292 278732654 582298614 870635593 313779140 749203737 957674373 987058046 585313846 854950488 722223760 39430763 630394628 847616040 481814023 417153626 33363635 590526372 730338842 309825736 675903531 167523096 783119807 543559600 657425952 906789945 434605642 392148411 834758200 272739179 911870059 589504013 839917541 126008294 274345718 561056943 915980019 461179022 882791648 774482611 926113787 865862308 711127763 900970020 36562202 559736498 17721979 426085686 689270492 270904204 279825064 652972772 722674425 21606662 853055029 588551409 662293426 36365987 524026190 900053736 647637327 607400020 654741611 872848971 96059205 212017829 293199210 913175177 430613575 240167471 926174548 60854790 196006060 910240887 436650402 87002650 423969047 548371646 346676924 622895997 258441260 741344671 441494870 260167148 505305259 3972480 657188046 722326129 831098457 589264442 384813651 480971032 969686744 493834472 338986288 409464192 743779033 333492160 461030484 674005945 336183001 66372492 983365673 279196240 324216598 332038485 793203069 140891539 533997907 41333946 767656705 410793717 899721634 734151980 989835264 546487989 930391218 558547217 795639441 870910839 532786162 111938682 476859301 666598361 294227291 858797767 318674076 544795294 395262271 957220034 269948457 279598405 39455375 601291701 105773895 159398674 354654873 190735791 597378014 980608120 265019816 702329309 769312624 785554083 939646668 133351911 971341554 712754906 414714252 756956316 665033341 900601642 680429551 723080655 468203754 107530746 632011803 263343030 309476870 415168854 614259481 221069816 820173799 330018708 834284026 332472571 38920503 232956348 256052323 600451061 766864940 343603583 467700670 106993719 360266561 329776135 401067779 542316744 961340599 435097706 228726031 602769134 551935263 999206475 483041733 308875522 176730074 715776776 755088981 764318703 484584143 499662435 912549111 982049036 442296682 383653563 66918391 979531654 586362679 951595590 463174260 174984782 487916729 61995750 342976697 267348446 848110014 554401461 589286289 425681368 217218282 948777232 407572941 554852404 313836615 584946173 287065952 973986374 381262785 199899517 34394722 802067262 592362991 830048899 774484162 792252241 397507121 995275177 797211282 342524717 919342649 986577551 123624011 189110865 187003733 71238844 947592687 577337259 740077246 776293306 32049513 664636839 781724888 127818388 497721432 706399570 748639002 129251294 478586291 284732948 962815000 258391387 832924709 501515204 462193098 685596101 733832865 416132260 87998640 492058614 582036886 155414318 312678573 610079710 91513241 345041409 354086949 411081688 126831671 463352137 949207538 656246105 439655911 493567940 580848621 602236269 206753694 97263912 298736743 544888145 684149474 156112619 690320745 991508730 734670966 581544419 110251339 336044203 318839600 501705906 507136998 718340906 494345116 286350724 290127872 461167190 536098633 369727124 377534801 627944604 638705415 692032524 411370912 949726851 405651461 726167345 928841707 319078740 880226838 806797026 58063671 655890102 356652455 416268392 943982425 136116592 319644186 352881745 411852787 257264215 143410463 686129129 589302880 41448719 676044759 773865659 164491424 169070850 543588114 470987619 774504155 229124790 311100008 824016398 45310108 905631108 546667655 482652997 137078583 325577793 154573814 319756261 262660418 128940319 253541741 79724938 725087801 893380119 233334943 822964734 76709865 7286543 96220323 546694260 992028726 225467062 147136830 229818570 267000651 452219795 814664567 804784970 325160106 443628992 88884077 699782259 143173391 401738450 965781443 852167353 85713395 737839278 16581461 206868536 942650376 217561695 900460463 700910077 801918332 233415596 82126791 465876382 765057555 557008845 957014384 328353864 312087994 231976467 572463864 664873804 288763113 608231174 6355478 601067165 60228416 752353564 265877165 207287698 859281927 886696262 21901503 474577685 829546688 838457866 181641418 25247899 979905716 705941260 267596892 994400804 807333202 750127931 464945201 544398565 753392922 467991124 910358830 80280481 108197754 529351203 264141243 505917403 554161965 679901719 389932161 425815131 149743758 685105939 745375015 573103261 750399233 738329782 764296346 549754849 33942562 423839487 627425269 476696097 819038198 613604017 862813976 106745167 306018443 177125477 966565984 597588049 278778646 386740999 354497715 805923340 323038449 636835109 186715849 131989280 366939438 639669522 195972604 705228797 447997302 534568294 157443372 177374922 48608285 546449819 126242849 400990250 411118341 157368989 192940613 305600993 307299992 888133157 219298009 347333907 909864689 221543460 865016705 530336899 228288722 229739283 573878983 618395665 36653532 520677857 327513503 820507939 956523074 103580316 184080427 210375395 41141524 341251042 829122546 235896268 351761157 583685526 699856162 26564779 863543926 97379546 660580625 149226707 521164622 363903122 429696850 389785932 257150024 221555329 750885135 968442860 429121744 415195537 37566198 345453564 324659095 235063614 813719788 199962710 577634574 439811002 644612996 427633468 606842078 529402237 185992514 326408187 13732564 861315690 29600841 771559025 874585372 844332519 568425357 587936079 283455662 116660652 78000557 609327290 885786942 141516562 564028352 698898178 724166592 685226103 461052810 805566044 122386155 585821698 326847785 170200218 158212723 472601283 763014484 122468180 322031635 776489315 535912353 279109041 333614215 904964317 371927836 803168010 999821018 998446471 359132237 864764178 799918550 460004600 864506205 190228163 327712998 123130852 937726519 479668394 124719572 801315973 989882723 953772701 878410864 806215487 939172894 128000946 761147079 321650754 860497695 68119642 837757098 585675764 513894654 57575653 119076469 460439514 332244514 191548058 163586540 194152710 194444180 30463642 193599938 842735860 421461774 197055172 299416991 85515705 840099860 481113854 184281277 51050706 435546404 88968656 96376767 572408143 476766192 158468473 4686768 456457393 259204305 671895450 248396933 503211395 386342798 935061302 500259497 924276748 980036460 524249413 677102267 879252637 48451132 996994790 63728442 17943000 974384167 304095197 143993239 598159669 536117903 806107812 505505571 75395117 956490184 237457763 128524238 821130283 450078924 100318702 19222464 412874083 757685929 830793713 324865594 804891038 765360381 957464405 991675616 188520885 359814265 740400929 852895533 110913025 78980938 610107253 258089230 994674378 656146740 928071814 103510291 61414354 601324201 347972824 859739596 959509123 437179240 165961098 925563933 675601150 574172704 177771654 515448677 999633909 825156553 299306001 134145777 526266176 335553931 696569683 47836512 943689530 120718092 242190596 889347632 57474392 35177203 859791199 632145237 629275713 727333147 484294102 871781515 164766595 572003548 847255671 996179053 765377617 552601439 2498992 313188257 349150889 889102989 307651309 279062822 142626385 833502801 343011185 478215694 752471450 970843789 814405324 133084098 621528279 606541126 565161992 445684228 962593111 505409534 825458258 496357901 679130334 908133387 224687167 35207401 153802009 532936749 200525994 445052629 687187715 530023159 207237033 528873863 459553749 222078134 458104938 816928728 825968886 57360489 289918901 100840999 540807734 480762318 476652150 242856416 618901789 461323068 182468550 466878239 543191401 103924829 524133777 539651268 397973078 916451026 951753643 985091415 230953539 260699192 452457937 587268938 698254631 905973695 220173257 737003352 457687921 159497248 865484626 10585966 22571249 175566189 635915852 801532180 916898699 208664226 653241758 243358811 442219814 893331962 933837661 140952243 204459215 921731163 370532993 601859913 128203809 969372859 342018176 362271526 442107167 28029526 981747681 872748204 15018966 268758091 872876211 929121862 145495014 953527774 974662691 417579123 13602181 450050175 106171470 992582074 790002345 722640727 109965159 552253357 336969383 590427772 369445803 995209038 108217319 739895656 123626696 177167570 419680121 367213372 552434936 154704508 530791422 406283555 41940651 416385524 739680716 584203934 459571681 825697972 590762266 827689281 296006179 309622505 147014460 193459230 347531194 368307317 893698721 607579800 746389569 629276509 340952900 638874501 840131012 18538652 51128347 768143874 118204076 946041446 245269394 959020968 711340770 724697257 149473394 830803220 993778291 493359196 883062935 715648643 526324732 348853195 415392613 852845178 612930108 174760623 876057228 237678145 58250887 473435911 245924697 267218239 952871022 351592500 691014015 481984377 1777981 486861991 956904411 485328426 742435378 915758494 23325375 824133472 498812605 12798034 70599677 796259016 3407179 345528065 694942563 867679820 230171722 573137744 258588584 835818343 347448583 503405112 656024164 183414452 521912357 39570023 934403826 963580718 24928892 775275002 785287182 305058047 44400135 433328837 926352350 176871625 325684077 296749688 57735374 863475209 951808371 22762287 847340858 758519650 642089003 252557232 608717580 846717932 510434974 444648360 681877676 319199905 691587628 957384618 435299193 275324500 56743128 624011459 867173962 994187517 755987791 408634861 483245374 835654638 538502116 433113949 627465478 901646061 57383821 611256330 559516269 510301341 230430198 485682768 904542847 549588051 885675299 219457804 757492158 814507004 639086624 408583087 671355057 997738390 859747082 818362483 857424625 217461811 214269366 922086936 33522858 802547353 635093655 832262351 705876044 269219951 56374339 281585310 174341329 423039217 640009810 907216481 19520773 812751305 624939359 783322607 325588496 609126733 827240731 830664487 842323163 779862853 943886266 55848691 622631171 758737342 32663318 346632467 89442525 859797917 555290120 412090347 252969222 325516226 486829399 162993121 943063817 724555095 608421899 368169711 684976361 770327515 98354818 592142480 1033548 547805911 102965434 250164839 169508579 276189631 123153606 404285489 227493346 61587664 756577025 445606820 712440886 375387289 630464045 545280468 361867142 884400879 874648748 780953869 510324269 380219280 837147563 440966900 702538382 756143181 430653748 706338851 826597143 773809275 574760915 540985680 508067762 485890101 689087197 91702450 225039689 356941265 24483817 456605087 350409529 565273770 752692005 33469246 981970659 155769273 267016243 338739125 585307967 569699312 697872420 8283463 807439166 716283471 134405393 260322252 798700122 340944747 420478134 389033660 644493185 59613350 887416557 940131427 294780465 999476887 936512031 692564262 913724053 910038686 979189990 240918219 509759762 570378158 634249237 254069021 233398244 734617916 950094301 681993167 104321270 709109739 157021716 804779807 814653556 707183714 36710711 376226392 747983864 179807965 51296886 669881540 360209120 976821840 45548561 295957643 584861208 739769467 180163510 758755280 636982828 459034610 129900213 35970359 910708464 119935586 25640330 545156863 149304051 4228011 810602718 527716801 465270654 10116661 313556563 95576938 499675967 336456316 372563865 662756144 645870210 84518783 350056504 135786865 44759942 658736540 717139489 712571795 892836787 385905049 319517937 669709211 932073209 695966130 235695378 68786767 908316179 440031908 435514370 583320927 151282622 743374836 810579628 610633566 15136601 898622749 699609756 741269771 557818536 211238017 867810827 482593299 854040280 340613117 101782152 775773164 468611036 794280108 569634310 674468153 24629094 712575222 556700732 384869714 919078346 174695067 667522023 415695419 400643382 406133053 427332612 492532821 75375553 398108147 612196971 76143896 379944010 810868335 860368011 561222799 122329671 741767485 563336675 432957192 577904249 488999027 632779925 596549555 136693416 788565981 274723182 51244144 556404982 389084153 399491424 782617811 292702406 390952076 755084842 124843020 768196272 804153760 614733494 344254868 721401471 625557920 537266657 447282652 771600056 228573034 322774641 621181127 200170957 118545963 134504589 449526954 675495328 686953655 577187117 412452876 910318285 413611912 480456887 440090843 504981565 87437636 445122011 791619826 483622894 671371187 728075628 763899504 678148368 862629765 94105377 323299611 785730407 414871594 586475503 9422738 58890562 187208581 926301143 33992046 881305423 60960804 722568039 487972520 425981582 262481386 958122205 517905308 865050928 874215124 2038185 373591417 199623337 529039146 137176900 913218874 397902595 919677504 518115534 864978749 450894170 327016452 420338899 49088850 520269071 93835782 846979395 491264245 568391226 780637939 117437433 524932272 426996950 506303097 246133241 543117046 884021954 459852153 104047580 383955885 884478856 863795286 254409332 982175143 349750193 895477181 88226356 517001211 894311446 373775104 523796101 731879658 946942322 885529849 369160243 802420637 27958046 654828555 948225265 714994488 314650994 905789812 584216290 20339118 267441751 257338400 113527304 73390458 625996832 866226447 664375939 66613377 280317434 707707869 787201302 593246985 936732108 105448171 891132506 343818450 25705531 456323694 250183266 489179256 259767525 594250295 902851223 411087696 89132665 951497707 414366376 316788724 545072919 469747466 122493753 502287537 777869954 709270062 626493402 873753274 9520598 737115235 486287200 555189201 990981706 147451151 36657962 116576958 509836274 707604928 785082650 292146735 562998345 143664091 231480469 227447397 58148462 993653399 145470779 581136748 821181643 837917347 540656344 369782876 285700605 614882381 28029566 516931965 554817569 506828646 304421510 415475643 802503383 694801746 843129215 682554309 726872379 383682196 878214892 823104882 941297874 642157354 287596584 691123317 285898908 500063564 655083903 602960373 739816178 55479000 971313668 381523607 58305215 35820026 257101963 186505973 512674604 184954325 747816269 886284993 725899293 423198994 489933078 806807230 163674477 634432256 951636370 311251638 100113280 954705811 925626885 150771700 340203995 903565801 903923698 46922757 535724470 368767962 849907755 289401056 13519746 643090463 428132264 958478043 413178455 208635707 783368977 802382818 800337638 346494081 939406564 715790284 857373458 333734326 201204831 808402814 631437479 483981817 602110356 613694925 372729521 958567767 715559030 312379171 838872775 179986322 58247712 901220419 422546892 404679680 196426072 470620126 928479029 139412398 152435241 368859684 849260868 623797595 583975277 598288024 321640315 605383731 764791602 961598505 535508838 552249060 778292322 646610731 82586897 12442410 733545978 865127584 628227129 736994320 631572154 306031669 394626982 315573058 20948349 906463322 713128655 166723422 595031473 881414547 44965640 368283794 478039485 219876454 76455805 672147099 522556956 829399115 38206631 960938418 576711284 893014257 518132823 5932953 648613868 404433025 12007469 38300067 601051558 927550540 747993859 988164831 13253879 529179407 131902239 409081069 396168182 274563504 313206490 592314001 924175076 170823345 211579744 464854428 946897388 407756466 986383742 525826696 266172810 206554975 619235453 767045131 747653124 369485434 943050164 148194928 734568450 624241440 19985386 817892194 404359171 171137719 689350038 953094465 682152943 115452444 171675471 225335169 219349269 162357383 39677696 342321792 832384712 239597737 496817232 547373442 645017355 605613578 743473685 463173842 613730261 167750716 416464373 543152344 249014075 851771675 588765289 808204561 143237889 240925964 314910735 850826019 368816695 919600589 474704213 685136027 79820788 205200946 737558053 537770620 566664349 108321700 126880580 952176617 908227739 334106598 609815446 85912275 704045136 805902491 346871615 615732391 104419039 456284803 82169466 289075413 554598447 182165640 998882361 351181606 317052974 14103218 374676468 788658454 978343106 470356682 723939344 560435853 352448050 806089770 980834574 548377285 44321752 589404541 506362884 27656496 323825848 246632440 740864486 344484685 644074822 476065230 617938298 834276800 611842193 409730951 137472050 236175218 680556618 6969503 302447854 509183898 297876893 911110777 259492670 849270162 55040696 543894692 985365494 605213025 404038722 605033266 642643478 873859194 820795454 258116976 927944359 373825111 967233627 683870573 187000905 317557735 973777875 445705816 775444596 56123281 291666678 91790424 699637653 850048472 279818948 769369136 823188005 142762097 230505479 330020666 729881645 199643089 203309423 251272605 706447058 617408776 825455292 818923575 457554648 670702919 847653859 447927390 809036193 453820848 605093646 241173963 359988984 715747699 831206488 670472146 600047383 162450905 716562333 194273358 531038155 913639133 213627143 154225667 665539140 326175161 541904733 694572823 779899731 108888902 853914286 355584388 720020865 637563896 603336192 654513330 173716828 571298351 730585658 599257590 302208076 221579232 695994770 242642798 53410373 224615018 210823024 540631122 977349125 105891636 384343213 969532340 13997142 911005593 93797885 333789875 342623775 434276489 195451852 81172627 142181655 330602031 144384380 978010451 940586640 851154239 391133107 81663842 244572401 945331568 538170615 918180995 235378708 21053358 429644829 376875033 449625154 824105663 433561962 507582818 176534351 273614950 473826227 203280204 204740213 770454109 598573369 694717717 925914185 119875904 913486853 227948608 57967499 378403054 259232964 652832349 803209415 335572702 124793137 357636673 445970191 601563154 477621143 961529483 350945902 555911378 493090194 597834531 352333755 794656791 405718206 108896468 163670472 779134658 520014267 929236662 863529492 943554828 564358216 826427068 291410217 193675527 411097541 989327508 507060960 324307293 463314677 733511903 497989123 992780625 458371230 217217 873207750 276251426 421732230 339418905 913432812 122818095 187367463 864412676 71561764 171291527 615184485 252835631 223440658 374828754 465300640 640010521 572097298 809836212 530758335 347595289 88342293 150760243 190478206 433164940 375254961 954706091 634857050 411391755 345837150 502339915 642116347 374271395 547802584 456576186 765243894 805399297 487061787 407687447 399204119 95846217 739114767 256471153 118029371 734602094 887773419 959996507 543838865 693906944 823327336 778282643 794142050 911947754 606931577 60479153 201805417 516033159 775446665 433637556 8146280 740996830 957114519 321124568 398760027 580561113 866727976 3655003 327945449 696327946 229458394 392354569 342243497 621482087 120212087 231289217 984567405 99091632 634995834 905852500 662932968 245980513 814469454 961385408 195141912 130567406 951692477 145092429 250155781 585469423 56063165 540554472 288071098 635272892 628490125 970079690 329890883 285559221 823908210 841449000 878242414 61508680 351493665 590851598 159259446 548904881 575782254 471068268 548598541 692651035 297994630 162026936 661789244 104199334 350391345 113155722 845438724 732304246 772593319 508772626 30977299 536913919 286290080 635021297 559413773 172054375 166580933 362498562 286681108 739280574 541345048 107851232 585001923 9043631 941914353 156329991 677509985 332553847 354605665 921996597 859183596 625100990 930503311 612095247 502943078 230103708 216098402 247415281 25184043 376417750 294698419 80746974 833363742 375712604 306634926 619500791 456474904 830204726 746975303 622596984 239023674 497369136 285803283 817397997 172513754 190095159 120722050 285458795 713853150 981286520 739973986 362617638 641398986 441338602 265122618 976363139 956243501 174632532 920243071 578989576 510713978 384380112 988405235 892048160 636001407 556443210 520597670 504377931 994610845 653138842 177790653 360550853 620560359 968213112 616422661 744025508 60881430 310227126 161478371 36363191 317283649 793908398 344685904 775728275 33466561 432241179 913580640 864049636 891038319 378058468 130419324 200978117 410236868 306995500 515901282 692312247 643395519 897191936 537134437 747924768 506863665 6915150 936505756 550352771 380546573 942554876 126235073 699166765 871554805 950586489 309651887 860637097 441946861 97856734 661266745 507606336 692413741 422907360 95493095 444333809 839501640 316461352 401740734 971645522 326491311 998979268 35465375 76299422 353910696 575076532 436994203 720197253 923665663 44872254 911556036 943424449 900061419 553717851 728298123 262786049 448761282 469376367 236674926 156751328 291220412 668668860 275798329 474387309 979837745 16099939 551638326 605178317 829778923 1938950 497459477 208708848 813338882 200562260 780324936 377981902 698567589 774235925 998299910 605928047 154705281 579961941 253389094 59133346 755813658 486751239 251291588 632779966 756893487 440311281 991766915 988624589 671594438 998768314 497585582 677441862 284145182 701788736 854147875 669523394 295056341 913244246 909319919 654390845 235848947 135804610 944524001 535191823 537993420 979191278 368020976 109651582 656682144 435181256 257982910 705723361 35146436 250481109 75059836 369867085 546582600 893370533 257118138 170825439 852265487 614618589 230130555 58564055 336611096 476536585 540167531 888763428 109747227 154015442 461945655 158437960 579421796 231677178 762177469 422461254 195798382 797539193 166712309 614205306 170753275 440378210 873394736 489254215 969110640 47399149 762173099 762005558 234259313 385075124 756706578 886871793 821375695 685847166 190871919 26372333 440707299 149981828 269893119 634620390 17317575 345870817 323220460 447626888 68434242 631722517 866458839 499533154 702320434 167379186 979566071 881521156 638408310 738598824 367143294 846935834 781558040 78663988 33485895 111030124 830442354 362434252 307642907 212385222 55173123 506988601 498972444 769566653 597599397 892373107 217954726 523395682 903626320 521208805 64851970 883407865 697446335 993479627 857338946 618119432 786196820 851297190 101884403 570741680 200308827 528241215 308144845 792200614 498808462 337848873 680412222 636870405 221473687 355749773 773121202 452588339 423824377 268363673 126011681 635350123 509464363 232234819 517112549 580048311 276384522 440427956 221895472 177182447 857576263 580521561 48183078 423121844 195619094 879781591 915271042 737368118 236337829 275264424 518294717 523905655 490619118 988624154 336360915 515473771 117687239 166201515 651632045 636510460 440081459 263544595 83520914 225126610 407893255 722281767 481606216 693280068 943140933 727195112 160555493 972813733 789500034 518908431 986894245 791388093 649438785 53671781 583176117 766590369 502274011 93890174 160527737 212188315 72118250 531048731 62851801 661043973 807597156 459904626 880547632 817656945 175581172 427122030 106222845 468094698 124530926 214785669 515598732 387653602 529465835 681397572 132706627 462299158 416849465 314322714 652638362 434900045 558992930 623674358 552081486 390594029 26798612 676251420 883641464 212472274 643742705 629573937 890700705 172538483 755169828 45233308 989509896 884842833 449110389 186444759 615192904 380954819 53248350 146102281 921385298 551928845 412708285 404653057 832640776 131017680 914352470 445596902 705743775 861545402 558299333 857721800 876777813 113294018 27424782 156768285 106262059 907671407 118898473 159130419 263597345 116156351 347752284 421891177 429618669 532055669 501257472 316129233 4319932 185406037 352616138 80115517 185220545 745209048 145930869 785557609 193558859 375904874 727808960 120514160 815288850 573870839 234025927 880071781 867709575 915122830 918413846 651407148 897297694 94848737 492456959 267219647 777348637 372823576 639857745 822798080 36512205 45033048 48576069 900804681 233564506 155526810 650354311 223518912 386909382 405367526 847300055 567031458 165671477 262542868 965541461 738951502 27427375 976012293 238311223 409023762 223281608 609982514 575506083 975950099 223184012 738790884 101446415 843937108 686157770 727244458 200188234 166325053 489286408 900256872 280332416 285190888 222097562 95877463 35797275 740942530 811241144 67053315 647211958 807933402 532725630 732584055 717640561 796404701 947505702 430816440 76707200 626177728 942994947 107284057 319916308 79539330 108612709 17817455 213606864 171777557 457309576 578504818 194774875 861717024 326707899 735594007 78528386 554571190 476843974 724711886 11685317 689618729 684303114 802841249 167967718 295329958 470994268 110555800 393726669 527885632 791990964 626314126 160879582 489022662 480177954 7597113 789901286 922355279 482839667 327130028 929377713 310406493 674384349 678964854 304410227 709557677 684115081 767101188 561837020 303897562 131947945 52759474 120628308 302487731 711098282 259247063 303870797 547192133 978546542 169995975 900756970 833461743 759564168 924424205 528070008 881464998 759994627 965448119 828824971 423590310 920329534 772908655 892381262 804478830 292143439 259057548 907376008 747606385 401402094 821777276 730015943 304938132 661826609 99300885 280298454 460417120 822093101 860655089 88351812 935054407 911532186 855514008 142976779 590152243 1807795 93795654 963245374 678816382 299368269 76247803 408815356 36084840 698557464 643229048 189189388 141565227 147800518 404782966 225873962 345277997 68325751 2844988 310925823 648090426 65478514 18844545 125305677 162232116 615047380 713920492 925526599 932451921 767265389 590985687 709414306 671009377 745130701 39617399 551722872 239552978 852487349 344100560 539993088 820374066 817617517 187255205 523904548 833234844 910390649 113991724 179180163 383576446 809961362 780914444 363338704 315889570 89960889 696429432 747745682 481051368 998415309 136742803 921455627 561160221 32063731 175184569 901323384 926799988 365861156 911113272 782997931 446950273 977308442 626287775 682006550 621975183 457281019 509265680 678953612 156129580 574925287 228572812 8912765 592212630 916739868 512864193 501289017 169692325 987037434 718759645 422379556 61283340 561908359 121015018 368748571 257017852 596259371 636720732 207860301 609578943 742490801 597113479 403608609 774028667 795202087 106401167 205879663 552604391 823031046 752070086 831205983 847767030 413015536 850785750 602982672 851330779 773220558 228324604 713654658 994830626 834076396 883887855 525662364 731520472 829111331 633696583 411118315 441260171 507701068 315636525 137989780 488747150 680093556 867634851 445370078 278651510 221197570 526064462 928062785 575576380 533688495 895576100 765222147 206224073 515956735 978069940 470266329 351667540 674295733 168209947 434280514 615372069 559118073 738028579 361384862 758341444 842301251 860361241 129943336 322818889 50400770 535367696 136385068 270448558 749066314 301887410 348904461 908785089 820277465 498145101 158091462 973387720 463118453 241446546 529101593 301600690 754854059 174212708 935122523 944849986 826128807 143389343 834025280 740047130 672619237 703936741 952398260 345855112 999303748 545534112 696862150 831532870 918000388 630496124 420948076 821594766 754671773 668318427 276426713 900323486 920605888 550996797 566510778 780164610 937231544 259993639 404132522 133239123 758071556 871371605 449084216 678577896 786644026 808018311 773263588 86107812 758183353 460685117 928472599 300658159 89460445 843300314 100044815 362771916 250927281 202737237 886688349 363466946 792647417 183270294 969460289 718051955 497009907 280961001 241967464 213806942 166940962 529621899 23873278 681074909 589880778 285499896 268371189 177730037 148422849 82937858 501436871 574877402 59968107 696673988 616213620 136791599 309597946 810743140 358352654 90920330 313044292 244945813 58215336 933394532 732823361 440376816 780391994 271527502 545469030 367002154 37738544 747548016 947457027 310028490 450894436 497355046 409406449 867183823 393156853 383462429 389849978 430294516 980890293 397632958 774494749 249669477 970817568 715663871 3322632 872777691 587935643 502451321 951831581 830672206 255764099 342063510 376987298 914715887 179649111 651318037 777382774 301784154 60542803 862868568 557353688 979174161 638906250 506656249 740715766 275045037 456286584 838512817 72263227 234687908 697989162 614032298 159711153 19743792 670258874 677463687 990288740 630464808 343935817 645870740 217649494 855620600 35386442 544236837 701167597 490179044 841205074 211753688 775303659 714576269 681259482 298255618 685237939 654361856 463494279 650829801 750288835 659955363 198977723 575445702 527078153 826332605 225020308 467221136 336975482 870745166 880747238 169555831 365591403 8393969 891412032 809412534 235822719 274218120 322182124 116638225 303134298 350120448 44057471 883205692 658444508 19953766 525186407 21463600 703006572 180908279 346266675 100996244 212962546 146923687 401430515 835584627 484100768 131608177 61027341 871107205 693437556 925003682 921812288 327626419 720880935 660550741 613354171 643483078 715666512 953617594 788599776 156730214 284308879 15360383 202596785 249326271 152279228 62621668 332426744 920530586 762692669 556584314 725376232 714063270 540974252 395947002 79311637 330707518 800840619 441683525 111355029 859500045 51864076 364428680 139899068 117710496 433795953 279802019 606699782 744984435 456595707 474479827 455529915 497185194 350604877 286294059 659800155 316773707 69602308 244673239 107684689 17672835 368144205 10156436 67192819 503955636 949138162 577875365 574372186 707074360 524550173 23392945 405639468 311004735 503549249 527710043 215769470 224166832 947442204 901248990 844805280 788345359 684552928 962311863 150864835 795144152 293781206 518109905 722730689 196084800 880913330 961658697 584130950 145758090 340455674 662175271 555001373 123168649 939916586 906029573 757074262 506474589 395849802 603848375 148520255 365794902 890540934 522429394 856840293 837196172 606633747 727269780 741935034 460281142 423374982 561396175 96735596 976466357 157651937 491293823 253643420 782818084 663794005 82133763 715682776 208324821 387729927 794765239 792667396 5019384 492874811 268967066 737758666 917066171 458673857 337455366 471901200 924069917 429727540 600262015 421414255 628444748 651174404 235208866 391295970 733140435 970434785 456319208 11767019 908280772 9805141 195483826 707272022 919200219 881047490 209066890 374490239 468248711 930189858 322858052 3943572 222779372 132148385 203344994 654481888 819152674 15712863 947039016 808463709 977300913 384971551 649300889 9854635 439556930 985226239 158230500 157366377 406803210 328417315 784507299 923601144 923412113 918928717 34745059 956227330 699696530 75689639 366978619 269698271 856757734 80655206 783130601 942522490 257207308 934714517 790299873 258832313 806815512 790064269 611828147 879282000 997135484 609715385 681646823 762333742 972366725 392500070 757031184 342449427 2554791 428239508 317929663 728821503 372737223 595352661 815916838 326949062 306171108 372141951 848660811 923008998 376200509 620817553 992747776 324040612 762437427 588105432 418356800 511564803 32940304 177554401 776071966 475112957 20531244 653442431 936562541 763439114 285598028 505409434 732814675 785652755 548140201 225430870 308677558 159376980 730867175 922657934 323852779 517988294 914256683 950722353 773646718 448269098 491057747 81289318 46475627 518310952 361528994 471231909 794619619 203352494 5721553 807920664 86131448 57364764 183622337 781236025 904224589 655093908 489209665 763074942 266790491 861725895 692325790 758746812 511898784 498794694 43132851 978859864 809276790 932190546 824021650 518017780 952799278 925192728 948895965 643079829 965997532 67311534 644523188 435921319 515452499 373353483 299465174 865127785 752408080 471203494 726646926 127363584 290729806 651597752 314979192 5764245 290270584 125213345 252885630 483352897 93181988 534619831 463414894 489658796 53939562 944749620 651047025 250607873 788582497 968419896 213797399 550245372 373994540 650008089 278865627 4346852 408142578 745922088 749590599 630023019 320704976 244819399 751603813 144067001 705377894 32414910 815016528 533103115 36151268 384652967 380312808 681291793 684247305 398182022 743058409 609933902 374810529 624773294 98136681 99948996 551325192 855162452 969939919 783977591 636650670 931776480 788324991 110550236 549625664 499733069 85198856 706150456 893797516 746230007 937633568 840031063 36194201 360972648 351593372 942660047 591761942 200588140 128999271 811004794 196675440 890391298 960584314 666111239 421589915 683530606 535817478 471686400 988358180 709410429 273316081 571554503 504621421 609049947 501623806 840359608 766658885 977756222 12031046 640489203 870809903 230141933 673197622 153583270 623663682 727610268 848171678 534156955 741142910 365623727 414596954 602976869 420256386 11569040 756582950 997702997 629735493 257405887 140310817 843432709 956137052 492552331 49980578 945994025 771767889 550609105 461535050 805989886 646248960 38079458 165666328 773107995 412026582 290744777 737416009 994993269 23225783 361217248 22465256 546228006 597807535 254866688 306968610 278578121 117546155 911035462 404126947 431940631 695040572 426971824 700654580 222583106 933539245 998935824 805249000 987544223 648523758 801874826 599489660 276363866 396667456 529448651 906350180 892199998 698113436 356046111 654480869 904829965 431258634 521830547 676198461 422310910 496406829 144324778 376540313 875461925 392792610 337559449 114581983 393467510 993497820 618747877 478335236 254551999 104540989 491824601 642834483 976575668 868069385 510164626 515158129 89242778 266669949 768978761 832807067 219049891 160496469 977625807 594935208 782653598 125762441 880674843 850943197 130742429 456564067 232394206 480348721 979991472 581637505 41601097 80384009 187884479 719607991 909785157 590473496 656496570 250601144 195076199 92925986 588872275 480977244 426881539 300424425 86726700 81008060 932479810 708041263 121707736 64273390 623016726 826301391 195644110 804856184 21108798 122345338 390043108 589435742 166473929 726375294 701468583 775072867 117663475 623933191 725932203 359526789 324696876 837567910 770236983 500533538 427581544 586153879 927928239 938387753 753936499 836663958 140720432 12110601 146502623 934057274 77808533 53252843 170780663 379854389 721532469 590612689 995086300 938992486 433120548 902178941 788795403 723021434 116828543 539833870 199966551 965764799 641475457 865816653 593612389 141786144 417919113 127448345 724032430 469345509 456442606 577936088 837576737 605540204 196321148 619800378 81619798 560223792 816112493 115160075 957641066 708620155 995411165 432881700 602848486 69339467 499593505 871408986 361629562 736650598 767035374 144571669 91717227 359020357 607087785 151579320 124329183 158631643 180757384 909399697 303121845 847593373 727212584 820110124 987769455 440023659 442976938 91044989 610350550 116440188 955342876 575192704 89787534 386600775 932158050 173658038 962291908 914360768 224252723 570753395 914075250 762837926 155433216 800063062 354514331 297071283 911902238 24171331 958298747 331094051 261343319 927446373 543615641 923181478 236154731 921458496 208533736 286156324 296247075 680717339 75553238 52507925 169019963 509370537 357080333 286341803 603977045 28549608 965170329 435934784 892485413 636944234 176771916 409076974 292157863 650288691 368426323 352071358 869138909 268733976 316799774 81858253 472517994 468354880 173716742 661618556 911980163 671320144 889391795 714985488 86689953 830299580 104769855 806582382 43292341 556322446 581703607 531758266 497161027 186023534 682338152 423245137 422304029 954996730 216458253 332237136 999298064 233541088 108417960 152406039 412705567 463472619 462374797 174927378 393401009 329400708 198895603 822256233 144874614 326747807 140253632 278378291 43213188 110576499 930184002 199527671 764146735 146869977 983945592 158190662 946489269 440298949 693707949 74106699 684057480 634044227 157476860 213045873 878635595 988040488 382182405 380392912 477602331 729821785 882811208 177328995 854212539 213512090 568123845 366232384 337910846 461219960 789166320 310830700 614407436 22148511 53981704 883949519 147350879 21066410 630243033 330317980 513539156 477966712 466757178 209617237 635555388 772334559 555019987 542700061 832835531 410359131 439721624 955169479 94762649 974889625 238028802 194292654 89464228 993164063 611855968 712587356 300470920 477050527 538774553 165326594 933142518 157641675 775708683 162751963 53606250 893079473 484678644 947013146 918933740 403043499 237568873 332789894 930522255 79621719 677007345 250651333 389733137 314045324 120708223 675292102 311077662 428541996 401863164 990904904 892314696 527934896 774810097 483668106 953476697 482559954 442312081 57746201 262831576 109024332 336161046 279904251 127255228 717120383 673784901 630767714 323058588 402633324 951481102 991588082 771991969 910895261 426959926 143373220 278830619 901795961 984952755 256092826 447271517 417185112 2854367 974828424 421080073 748070648 644643288 245242907 756725125 456924735 944893878 551036325 122156767 470152581 878631338 595988880 130262493 817092490 950180632 774645487 212165899 349801281 826670631 331470648 389149457 629921765 534066942 448893786 574808281 852195556 414944008 828461617 28341932 268191963 838122284 510149434 316757879 226602335 618615584 39698305 159878121 335653479 133369002 702351379 426961093 81662430 798488566 65881602 986400141 462553745 562791511 606105313 314051245 94165003 745549881 542893152 817799990 513247534 936610863 627865340 911728427 861617086 136911502 284759040 681122955 839824574 315882036 168402677 851620256 488284691 812845682 379270759 466476117 224476200 61579409 514107395 646751122 925991761 397761434 351536230 616806780 427360690 188386234 441941409 324601298 513783041 999894017 246881589 568908336 226076359 192411490 651675934 477330281 385156891 874104436 924235127 903632632 669938663 923094593 85124142 366648737 465061087 880775357 432854799 713167774 919429582 843142328 270882039 821523795 107196510 348831507 204622909 202028936 58853473 203372018 10667840 701794467 311949457 524860435 480627825 981881023 162766091 195995519 516158997 476400273 589184047 434640684 599641919 383927605 837207945 176569705 30579065 330576560 642553141 118548566 369385007 416805239 148307242 990103042 578001434 856104994 327175121 514603481 80521293 364327733 346050213 699311053 711982487 579963326 999819152 600296831 85362303 849922407 810456995 374049789 766716149 690197758 581106343 42262426 447844116 239951354 505090058 310601479 727888840 863483081 74916489 296670109 338230357 367373989 159006349 230700259 193085124 768655696 66409700 849305169 465871587 154583880 246115993 199234356 817960712 830167801 599819999 287031584 622054172 126899835 659546120 538921204 59738039 181683164 232529499 917327116 242683803 60855254 360320238 699837294 297293277 277399742 83801967 664296206 234219976 573147447 764425788 290329424 114930182 214187678 448066313 490208441 342332013 911819249 740893141 604909903 43834862 581261601 114446475 200372564 13417737 708477085 992114962 905774293 907017878 730966545 56452228 807081051 311378532 589390310 333286849 478609124 192213558 167354299 566642887 603456944 302404574 331689774 772026425 118379077 997389654 584839299 575031736 359941740 274574850 240591274 237023801 113449914 999135251 653791664 421942473 499404324 83801023 99921044 432332085 45377080 934631034 921348845 818906196 131716491 69418093 904585996 379345110 570781348 629396453 426762557 279775860 78117643 664646504 678688070 376364852 716384697 223763424 697905636 972801292 892813512 468865992 644182950 378277952 911028798 24094947 618508866 575315855 331960138 977995528 430388531 823161746 195968120 579896208 123470734 486301368 233549705 89120372 79700580 692233904 402951577 223728005 682208421 70550707 53763046 12869638 432699584 792772377 66557048 635457138 993650807 654670197 435095942 11917447 371018749 482767147 396927224 845749874 639729185 243346788 855884161 697629842 686514192 52247288 991747985 33364448 472218284 238364519 132660694 847534706 400463006 716891797 929006415 947692965 689329155 91125632 781494862 607315295 186432789 242476773 964874025 637177939 290690559 921147226 27428622 980566972 364877519 948626447 322941579 102366494 56622155 146119881 493321823 876250948 534182050 658038541 177435382 504247983 764559337 14497888 301492231 500031190 169669520 794593580 204248187 893661642 633211591 544258102 292489600 14537633 815450778 84272983 30318491 308386608 429622552 523730855 595589501 595166003 216464625 873313437 590830001 258340840 858590223 239748574 65092249 754160907 595352979 477715062 404995001 717869922 322238877 725972518 486771686 28489694 264403205 341423205 752216097 229347695 982226478 443433670 481237873 648865017 370445617 14732826 339985903 360311201 133872391 223060006 265049490 434376883 624439762 794922815 210278209 399001664 586500593 806566545 604374806 742116056 279058114 23562741 470778927 875056073 933353492 431727677 474488563 172692700 467849376 811213047 58817170 231436772 870791656 927980290 618537342 2394469 274526731 172553991 609609030 904672364 628917163 293943045 85138565 337892008 40688569 570632018 13659642 733309698 200665691 39928619 141284610 416774440 372969514 779334865 447959938 834550652 125405527 344918744 256556048 302172457 714108563 67480324 49477601 903734539 619741491 286799712 127930616 682236936 398072300 475038344 200651863 428532376 88945296 124563575 533764781 338028054 32551963 87037101 529097041 478895287 31388097 844123236 219011548 494503287 912721656 918666373 816077568 540822447 983486874 253996630 957880141 607757275 535391952 33976235 368412160 82263238 610826613 404100626 74795126 278066620 249278629 931201590 714577422 8154601 803964574 822406310 956810193 257391752 245815834 718346258 587750700 391129869 851358296 662586235 283194034 802860580 991913857 836413600 57626108 917615830 382158940 233844861 502854010 689610912 475428894 360832653 728834592 518970284 223989411 911400857 236089873 69523496 881120976 248962733 951340504 457719332 339834281 661706267 71562913 366600003 252135563 377780989 179059827 586687498 661154666 291298471 665216249 312390758 409940421 465773197 588451047 464387400 176171515 609506965 34885232 903046781 798628443 787804030 359383715 373112178 815173650 635621013 156991816 937075269 419003177 116490676 307284466 648125417 67060615 143676346 30447684 424145448 270079603 634954425 137488602 574244360 368540491 767352411 408652788 602596911 94182522 22105561 849788795 753887382 336204503 888310218 751578455 336174841 78562157 230514299 935786525 742989807 924828647 745021759 328597472 255643374 674194941 204236405 378806079 791012825 472174676 94219149 564203665 773159304 785441928 815630796 76183324 499528236 129743445 710491944 58863852 725780050 34815804 351090784 465299102 178196810 877609442 761369348 4350244 630005143 69431143 518964694 379335574 566580596 734335023 499309242 313306689 159971662 944979713 386377251 529493649 769162226 924614207 33832908 704498272 966868700 671172820 790222068 900102328 168489896 239817553 651190326 41857660 606956192 890182879 640823524 14920043 900786242 103541670 249914625 329942401 258901096 974449873 870682615 751397712 908807418 95421781 192129595 864035813 575446805 379561249 371920210 199946938 994917141 386673263 532681470 206229838 773365146 214650356 128246069 886260787 737070267 411474641 193514324 768394782 361197611 396086818 81771601 761199505 50019645 334459638 776236041 712914493 489219836 369033817 90241361 821005553 32067308 235000740 742908905 629487071 164130695 684681492 633156061 657409010 80607196 128244867 42554142 250079406 439152210 881190608 395290205 483016404 52694585 262268056 375902624 805475791 340226997 776649377 496932834 299381265 85926731 80848623 244653357 237530409 838211795 406182097 274754887 95054937 988036677 683018622 1939599 194078640 714508733 164590340 832910945 535542600 866718187 205903766 703543816 600560884 977061581 108508569 793859202 9760536 524406917 781436006 853534497 27380864 452108065 481666278 657713382 400676267 754586752 235876716 698695320 878529766 44639500 84765776 779029894 977048224 806604644 629596773 855456486 404468110 988952118 794453953 748591924 511177570 345436560 304001141 29708560 189555793 428618988 182745626 887409688 499598987 450716899 971417954 322969721 781500906 551620969 679174075 331247969 993786549 314042974 71129140 716374445 998819277 616314611 138539013 423459296 544966621 390411392 398890027 99344171 989649965 494811415 617747695 382232746 257649444 787116725 130365212 730280770 222351340 846290007 582028584 136856607 84922129 486220062 763829747 24827653 372380824 927781461 142397186 377914382 983781989 315206148 561891146 592499966 227429434 551883364 523516045 500953154 945876137 146636799 815540447 410968439 280047008 589623916 482180477 140806306 798439759 581780507 15671491 859544091 716200800 747670162 16435129 713740414 665210907 287332096 817812940 566595363 142673641 556882679 36017867 968971771 244812856 835977576 14822562 973857001 767293905 421686061 290010119 637181261 556206855 557737003 484026026 944372157 490433406 889283299 626919143 457902235 142747039 698514562 819438698 82083656 747470091 193637676 98946625 239350685 792560212 78665579 237914197 509437315 296761640 511076042 97750968 213606690 329741096 926681575 607649206 38192983 662540589 308231339 783100820 732458883 946087452 65172737 343617890 946933990 990423210 390738818 772422070 444868980 694810809 719267485 362552493 610190246 764030596 659532678 519827755 687326118 385538473 893395013 877615851 552260144 385424339 183360775 240089005 228206086 459707048 701548605 741677420 880040819 312182465 512650868 838957282 829041231 49031272 905031286 941375971 253732332 149709310 306531806 783831382 388592984 350673086 584415667 985325887 116428601 946228519 33352565 413369742 172698040 856918594 739069961 456669430 599932324 535200820 266587511 929564960 908845868 506881757 193970837 682888945 640761117 973459679 168393429 279753601 845494570 743539416 803219987 168341612 505528253 13973445 792092425 251411914 58930087 395256025 592150990 637691631 650178967 51665854 452026669 222030105 904599904 835910323 277447105 372740033 830678042 805932064 249998775 452357654 583821575 799438640 642225119 548603132 846398210 537108118 448676386 156796784 154199040 266100347 619533955 218487867 837438236 74952095 12467371 689092369 124160617 956945851 321518823 332511329 276269725 762621908 49251028 762985734 627844633 169389741 628323707 310975350 266849934 224613559 71911133 329160603 722164636 522910393 863602210 912488234 878298143 8201589 570748965 456172364 559184400 894951459 604497 947995201 807663555 1256035 486351670 20272459 531841969 775676061 879867606 716845300 685757193 914567208 438034471 611205657 393049631 172888934 854507581 34170613 396070280 494665625 554533419 536169258 731681772 182433596 843373701 676260801 672560880 822810943 421445551 632608215 156633761 687732740 308830177 94619875 371036246 440038675 31326844 60909627 80889564 562296129 683484489 626318110 957491115 306365089 958660921 437064699 714173161 803606364 765090049 628179228 732925072 496173791 473085532 802357455 885061942 772041000 455189828 180636757 18442743 585590402 856615726 370956640 630982350 457095697 497652354 15903885 500757525 279202760 880968722 572941552 7354406 522675551 469363136 21245602 274961544 444811333 733835526 899429902 580659953 109323987 316841619 151932700 759561875 809757253 908088803 677802154 296827908 467122546 771548219 50585745 319671849 740988396 455643167 632237091 498736641 208141929 935669459 229297162 596291685 976158120 362236026 105417671 603924311 898750293 106305073 466945686 894511560 396159728 687520196 731291391 427002343 727830840 730110598 934111302 851991924 902891610 37488827 365725927 384358947 955355748 2886383 959271329 388525959 939418983 480002970 816054217 41364045 110226063 578571918 127797553 793756612 594254026 365450061 70083404 203356905 223213309 202576057 668974179 146636337 712250942 344073077 168223834 8547561 331251781 674090911 818309500 50165599 66915092 158523917 790405434 984096993 656906940 135294054 942685099 884356448 929037126 794132025 868565140 681579460 43121599 544208727 989923073 809730724 45597395 28819378 566449531 218139504 609305647 292152001 602042420 892059175 53030929 644886465 544952189 13015133 487942215 622473300 795525306 944873781 636939489 68860024 184700220 936654423 653161212 390270773 453983822 677510490 628728397 847297392 783036127 616795189 436053903 761729030 931945696 584020259 844835566 233457531 796860627 430877329 988781761 229982161 53071692 312527644 214765781 985235008 126557399 377080676 644038934 311372483 418033110 384934549 35431705 801262928 203161464 682505403 796179190 187576147 385440277 199039701 215351590 374139334 112207094 988323906 651474695 280465127 660562613 872996977 423249051 905993487 516845585 143425770 633257371 649195844 602921169 678420680 185930577 523062792 360227011 730953847 222339016 451998248 651487641 157690706 373129400 798395730 754411692 281051177 893761028 896105470 165221322 132250895 299590593 54561938 922315598 79708369 243397102 591135852 255283689 466962081 773534500 141351200 308688528 792960071 538485199 277131768 311006296 802359136 819778436 810352215 526566177 530309662 757264005 946658975 54289480 197230631 760870623 369060194 915744586 431517429 855092805 862749727 816700635 866872750 805485360 575063051 62131663 849538879 520207869 460483280 561316304 621869876 194670934 322555000 849927245 141237569 610172961 824343560 803353452 670298689 190087757 48594923 935511572 289688961 21022719 905396581 8096310 903614962 214559153 682185735 947502190 268471962 484763627 880548039 612359702 891069005 843389435 66446268 641219404 925884638 138919402 751620566 200238714 454129651 258278355 153949843 682279764 840483285 411511804 61524522 455314403 219675970 487514684 293206981 799713728 118897335 475584209 807887496 133471451 459246045 354055427 874080688 30481336 799241122 353059679 621552997 632893758 347264604 938259873 207746688 176775493 920533197 254406439 872193525 155417833 677561123 197674812 186357207 532729673 601196343 374094655 538795332 355118646 47585048 62413659 707968652 777542360 655754465 75981494 37299861 322150177 200376234 746598092 419000827 617202532 940060378 335843310 710007556 17637540 304741782 309727187 509744301 675970157 46753375 334576845 127320856 522170489 659570970 914332837 296889873 48441682 976457716 124921318 914060927 251763997 485378071 438934149 191026798 717106731 661054645 621281960 779395938 528831996 117767389 959620645 151698633 796928489 228319907 528009865 540496945 195804818 869253962 344343361 494683145 513521750 758098134 681084695 519484398 387888256 705486920 816313731 211631462 155009540 302284125 786007947 305437721 826480537 296346084 786184375 989673654 571311086 277018161 991236916 968784841 401676113 420835017 173661465 77286010 212124036 374253498 645973529 933562071 310907692 900845383 870920656 281575114 977319026 619927634 106888393 116337609 547760241 193428732 449769486 216554170 17458799 517157954 62086153 719971483 425760033 631323181 610676473 864056799 966742681 328560314 731853891 746808333 542441727 706595905 835853900 506443395 675624122 667787418 969470636 957600318 404213674 967888964 352085139 632655412 507786357 911254456 670449496 386659952 258885900 426465757 129669461 911577358 196803978 938990205 565593717 550580406 321019684 882641586 728717066 173309993 480370636 837719294 924603226 118000282 649618855 237710353 465675149 88954513 812573745 437433541 935518827 932659877 141715696 893074403 860316261 743904490 281000478 651156020 180674509 746144915 477886243 246555651 847725166 175883896 419538353 470993497 651601118 999478338 705687062 440710087 461874887 372688741 70261991 752720316 70577937 951673934 264583208 288760778 494857997 164507713 771258174 964728641 181055445 909430126 851329569 902049854 678771720 398871512 501671634 717651331 181354281 713761034 174167637 219067568 248019264 64800034 360754673 257906339 609583403 816646810 998954692 285980596 461429512 366836652 270600332 845557475 261651012 77723326 802521810 107946364 159260440 407654745 161233985 416027273 462639789 815878052 123650409 533476487 116093399 315679515 39508879 390772982 724456503 204843702 870194180 23703987 394426051 867882119 914741812 313055138 843926234 766974603 49462642 965387136 23812911 573200606 155031079 905736913 544140149 851254285 560897965 567798181 837911539 708618705 128854943 267793544 184215776 801239996 523492805 139652391 496824721 659200331 816424754 406328841 955116426 128160275 680641739 658920847 583168076 595006013 513923710 173120503 601321444 163176004 563423631 679583640 185709168 704847024 410644499 154660071 194952695 959204078 604940729 473747541 225319094 747546407 560512601 727626716 462827791 862986673 615320932 654825831 67312650 51380596 474817688 1745574 685316741 62775495 712574857 988097650 711172255 233918130 68790125 332123566 10990287 500470833 464244886 158525264 12888267 30157126 898576962 391191817 930107541 872450185 390605346 910824196 863749035 697935879 241507896 943197092 134813483 878736167 821685245 158853052 600245033 89575467 200557 362409637 908104813 300756309 60528314 453555313 365532808 499331778 168723586 13040915 16467042 930477584 832733787 541915147 981853871 321536804 836352981 844064814 850115749 857498336 303283612 987401842 340904213 200923481 19140039 294604701 627416279 990557353 917162534 410748429 746195908 800935169 38441544 338165338 51787440 11196818 749203364 61066675 558806348 806753633 885448871 791850550 493282321 59520940 312393963 767603960 325586646 754081592 854794391 694440314 245472651 226701007 149540315 681335946 906479814 748544959 335786905 610068586 44347200 157920885 848812751 988230275 802303000 26882520 977292667 340385952 286356898 515222346 562334771 9681355 636413720 909846843 976634319 294745918 713036156 173202296 650946128 293047719 782409042 114349574 1592543 752365092 669501142 799358190 524130988 917313615 427772974 12661997 919386121 687041072 543273493 776608413 727962263 114187012 726594981 675881104 785284291 487242941 790917286 930640994 665710585 118595163 865431051 830662392 178062178 160294913 914867391 564328549 185763296 165382463 909788026 302776432 927322433 845945730 874740955 315628658 942489766 629285451 430320989 416162605 506480696 955474234 536204814 835288577 668104020 88485349 470508222 4048933 822586672 971123511 259802422 996020559 192586607 940786097 458134058 51322213 114590589 920218327 927160796 287204415 361921225 520409297 505723770 556027849 897522121 157343655 869716836 787650370 152631588 78455626 960178988 290593217 882664047 220215192 858945509 920557591 489295544 55242374 640450406 637046796 484132855 320134814 854986317 787372980 689228116 89185257 257534560 710289502 883207375 418024374 930671060 785557288 858692252 827486965 372795858 414948892 327780557 884706848 8975938 265774296 977706738 392534123 135109973 252976255 182500792 189218417 750802526 651636394 130558806 273676548 395842045 948821476 67864744 647042692 394795597 748334728 277814225 293943469 209484780 337028362 344163128 234031187 918143460 611454318 565660306 863036021 983519970 691253540 932195536 388548146 614990394 992256114 236474356 546670174 644895815 448623041 177440253 310448201 754348371 607535534 914942006 728426240 171557546 211380624 590200646 687103425 160084080 824376648 414456890 4936540 864767995 417251329 96419461 743027135 943677195 281722283 126832212 554289850 248534122 849736911 757006581 190258921 193253959 126164248 329265736 790982926 112116318 85745438 377140058 833942970 498974490 301061536 499330036 834914587 33197230 761807526 666133201 620868426 636958235 931234016 748530265 490624632 209028934 971462257 808871269 201473380 975334600 290258611 709719682 536856469 346680049 373274482 919040736 796166647 135977182 616081729 950483240 996894645 91496296 783125747 369627924 853827006 910144585 682298134 910452944 465021287 718058610 341403289 653886528 747962771 132158444 124483377 193290995 859952565 161298363 151340231 576532361 1925940 697221839 535848902 795944854 767721958 354207159 182485417 150910103 191483744 558868223 451578211 490423434 69874150 228925720 131909822 934999886 3120325 239206651 12730897 651050001 878129545 731036989 582878940 894820762 528557061 231095054 389660333 415429109 446468903 546311230 520127163 267338976 891557879 725078190 710190191 91694747 282555675 607582248 410373570 299239769 982151589 531453718 468007198 712505795 823146633 999122004 351367640 6384105 851548231 627519928 934852544 131476880 401396624 68411974 989583276 292919052 628619022 214477468 625222400 343887296 955293388 826668181 661777982 907515576 11634696 486633674 953288974 552595941 764114731 503725111 274191419 786804252 111662097 824992609 465533132 22377292 691430923 832633068 679583392 671708235 361071680 501626694 122121349 808162194 334993377 877842484 701376783 309477444 631251652 318931170 978628622 919082762 530104039 796951181 12220266 829737795 711476954 135836362 890041982 25227338 371126254 446639323 439720528 345334044 423940384 169985950 728800525 986172220 596808930 956064200 248999321 175426080 464102564 603343914 181448988 75956145 736507655 33476634 754087649 361984552 541158263 96157802 20951669 356756841 671248022 675262371 401992620 129234365 725472409 459118599 990981378 368272574 939051823 644034399 990836619 725787443 479685858 778492335 59941067 409619357 812792247 84622441 548090252 562303627 269298657 935579842 569176945 678832461 280453678 595601786 830776881 859945298 373243840 139466740 290920558 26603785 402102833 564126961 753421511 460387367 419485492 351533483 238955714 361632667 192687154 938001469 912982910 35428329 433282620 832860894 469030801 329577440 604835136 71934578 939743521 2960776 886816398 850516730 1585170 820321721 726532833 991608543 205007957 259654349 619288237 664430813 178362859 568075974 235852740 209172428 514809727 337708720 984980486 721521220 491353959 490040279 224768852 599681337 988820191 683143170 615823247 133615161 704237905 970880936 969619703 617308921 664596694 307058309 57968233 806234353 854785871 194492666 259486641 781962658 57354251 592598424 349731230 249323347 262390817 909238182 163387075 299824919 848490226 29052010 263689406 510078746 931465982 925281110 502493866 44223127 581308441 800229450 169782461 328840591 426947807 527661984 169807055 861881482 554279151 180767880 209089736 193490193 129528982 764050697 770120758 48552896 784024445 141186203 447850785 655087786 844622519 245236316 604020986 80735067 754099949 951469634 702861238 801349841 764764384 609999032 318882354 898064778 987075625 383713697 352973950 269888155 463978596 550729306 80867603 239902737 280929075 778165353 888702233 173439778 484259656 491735290 399808478 245738061 829529669 558910468 149264208 495033794 738256383 890671055 976577880 120755337 548227742 978972511 906835994 309631965 957713509 606028509 738121260 644608337 162768902 788127013 812191897 291554438 94635298 34942095 499990182 1997280 320551373 423717914 809240505 614703034 205598500 147680132 372489174 562711917 290830605 755497655 36644477 221434265 560767552 716439858 64763233 772955433 580077464 177885694 137093854 49627783 465412796 634499639 937574638 293770257 181948776 984908814 560336197 250375867 439009694 915430377 967096666 725056867 670234028 108203142 985430658 447910986 555878607 864494041 513873684 487100235 634352156 904370568 99412695 876975636 359138621 603602045 300331684 464128091 174149630 895456630 906307680 862380842 83656558 455543738 333836617 967554128 814323469 56307014 892084686 256224266 723682879 636996489 467390862 443587104 807337976 926328383 132133716 173568770 654465732 174134227 676750686 124380853 386532099 248412688 996478159 643358814 724473137 312705968 572572488 140487620 794669739 592651036 877020360 383166758 997617478 29521912 429847594 62409481 338195370 284052669 783434732 14254944 615927763 784781547 725306785 733703264 899162207 587526579 7974146 769776257 950529072 941836209 917725880 749985590 872614582 232180157 127007225 331421925 26270393 195023915 262915279 499640081 939250509 641960627 578802043 253687065 810742768 713739158 822956659 845410473 234994021 764513033 539925913 789792455 803445 790195051 519085525 837207825 339765401 666553548 270276336 157567422 467239546 454865369 285909252 714100871 565693004 722021418 997085629 308619159 43316303 134213597 982852036 663397325 846242501 584355977 658131157 992701833 494992895 902202441 105329548 954539523 184209559 838521543 451105031 797050411 265561726 921755998 993457982 351291164 469846809 605092700 629561213 248477812 150737891 549435711 498490535 948352197 56545045 30219591 69060988 13484451 977318690 966738185 555152681 31972391 609884591 416907679 613497098 370850085 312494897 198663048 746670965 161382027 811320210 919651726 363140067 904536100 89695521 431163729 703105416 325576020 610683312 672405536 841755195 234084399 159161125 443932170 227525247 469026294 354176363 914560859 565029920 397785896 732410072 152151946 606179762 116673572 57325693 49906458 559791531 314848878 789775530 136152842 706493596 778889106 620925613 822031154 36683679 512475204 928052636 284809324 998137773 728555291 999877530 39500691 112018538 724919914 391096677 460077347 391692540 588282323 222755520 510502971 228662910 549914500 86235938 474131836 612416041 358710515 749617177 701295369 806342973 289740172 484105736 542974419 887331387 817546407 791851162 433509482 974888661 152319944 413343147 247782869 341689153 581667489 248960929 500461615 182476735 653415872 800882482 247993366 620556945 477272065 7006801 590482828 436747080 677428693 854602122 960288741 549305388 503693780 757984341 68387349 753797750 986807474 950490583 810166836 677023785 605226477 884327251 959213628 492245862 95419552 182725625 900004996 645588567 103359037 737470839 433291281 94432329 148089900 68871154 52075852 574494018 990768732 839477631 210618170 498675966 306982782 265116194 58923295 707856688 359678579 606070317 237078971 532660199 730578336 542253812 774295766 861085082 861546483 979108414 72252491 825191408 536305188 330160796 368426560 193881635 483301170 840152486 613996166 715909463 392608472 394692761 307738517 657207450 398351055 748614284 253532332 286570864 72215465 465146121 568641158 482738298 664210562 535829770 996041700 541683920 286983967 212808845 618631401 183814842 357437361 398622519 538004291 576093822 603355073 438969601 993453976 275555285 646893366 976962852 805244836 84893165 269911399 443412289 994349380 134736754 768969401 182007432 802461808 164677372 332674672 834381078 389239057 757740845 433735215 360835615 922323883 819725829 790676023 820624063 617973773 80868078 161243100 784223569 5248615 961025409 608846416 466011764 314888799 348539954 330258568 970775072 105226053 457774906 19222158 395172091 413772927 798244742 725649932 892303376 412642080 610668641 250622415 245626713 42535415 709282470 258117620 905787159 590137091 721625935 320134508 647237252 995020141 342267783 347270175 455728866 37527083 794102897 290929491 100296005 968124754 463432969 652035681 708681231 910044620 547429085 935918888 567050285 126226812 659642071 902526589 133989348 434132150 392809248 433828296 535000789 660583606 835512115 930070857 72050983 271612527 35730459 743257857 693458590 158840851 623520827 888929862 543201611 608323852 606652261 541534215 225734232 125168661 398851645 757515836 560494611 543852821 516113064 673491766 576909140 858178935 43603501 654993849 395679029 482024828 510152845 470063813 483903699 48882605 604498675 556274097 779827822 572173318 698003630 846599856 185522287 334736335 942972990 37408390 678913632 745303563 63492692 100700106 612339218 601669214 943477418 548359302 69152271 612755799 3179443 200482344 20225073 688639594 600166596 600089092 456567443 198236772 237249689 511723425 225224222 983292969 548897017 418205917 336397157 521266912 82296499 366954636 559333604 720034858 135897954 652700006 498245033 226090562 290171361 907949130 113996364 806089660 381046227 339267554 342499619 283143595 391771694 998665280 311257874 873049798 939590273 393829865 513279202 694560983 709721041 242852644 76465776 305907133 479728276 726360815 721957892 110449464 982336718 927280518 989388820 540996806 589729206 6604196 530326316 839327814 415135860 322332532 492712203 183130229 876583420 941661781 78353446 225712493 196247832 442862562 262995989 142644601 226468604 37491167 781423201 4051863 995116949 381695339 27986984 490813973 511112506 166722604 286576651 893888361 381223748 698807897 675867974 958483686 164739113 619565513 908708090 984027314 272763434 748250426 46798192 325933854 219177398 317942575 891301844 810831568 878335262 752887864 991792677 598395134 378578916 867196827 672202378 532246784 814138447 232749485 633150658 89970194 615472637 27441077 859244935 432132577 596364635 841649137 359868235 948185698 410927066 802553998 557631253 16201391 770338952 153711300 295472967 682519838 813097945 120590760 746457873 68918398 167060244 137354684 330868175 157369860 103151973 409969824 533003859 269933503 891097138 793381993 530247008 795054023 31031706 722714998 509972452 812806184 484643086 432542929 1908774 465685816 872073517 88626228 799211910 494367824 82233901 657699597 291772412 726495146 515031199 683948931 749164835 377796677 609186017 477682111 880910710 595930188 957191308 755661811 65690066 179111982 711973900 898583090 496243435 680589609 72915020 291295867 400987162 14646283 755731032 84806481 901320576 830070858 899743567 184287650 783723598 308176904 782943144 929308005 251165909 984310669 205817237 467607320 906885499 975060466 528656656 493004980 628487919 642103354 12826468 800251022 581513819 111230461 162721552 273709134 987081241 693696036 732539580 874450294 602061730 341448471 759610249 20369897 587325680 965822268 908801656 362191950 272090277 373491585 5417090 428495599 241726090 199079025 24284748 395026036 292323451 814904495 965137892 344265916 2148404 383002055 553103715 902469312 3027558 294377978 727105990 887375374 399925041 740199404 471364641 223368275 383662225 646188710 248854684 553110887 993424294 748183651 872810895 383843033 206927837 970786470 602088240 246302005 696727055 961192377 661525315 121174292 876974026 696162867 750870764 755264289 567021070 438964669 847532098 850659308 421792807 109341874 635608416 281106393 791184692 149826522 27369666 18903439 56891875 911795769 492780339 604616204 10772819 420555784 395956375 50910666 269614826 312921163 400962833 423627369 744311785 684901503 459481158 840735379 882400745 332955228 359717674 615867423 945036888 559216312 456982356 696552570 261640343 863175722 13654331 522008611 342145582 628657101 329930409 351556012 542093277 496931079 488912122 750423717 176179495 35878291 989391381 460829673 759985200 173265503 316782977 839123838 516542777 430596086 131490893 253208440 839990973 288466363 619175952 572558054 48161365 139722663 730502016 837567232 297883765 140444116 883396194 559992295 58150392 85291743 633672057 346576681 594063782 583745842 624239441 801590946 391413940 66665604 15414940 615519705 463506746 117340431 329917149 857069511 671633845 495594729 438820932 580128705 273224849 721586400 875279568 108331235 72925708 826092491 175284476 295221779 770023203 280702930 368747791 471216551 816463288 918363221 98889961 927743005 606939030 10635897 696080287 400311735 526721204 831175366 97887045 275617184 573209253 21733027 576249148 165644113 332346207 51563378 840815857 243183116 547377130 414347934 434314199 183968917 519900975 510242760 344269624 192097024 432929584 334927103 222156887 36392596 271581011 972045108 261495216 838162240 610470997 82243114 442589455 356504581 384347849 202912362 342154168 132345282 549186630 195855008 616353671 831960344 569045710 319097715 360571623 700170064 483531576 634786248 984921748 226749875 523425386 801714614 74932902 120813649 531112085 253977963 469531285 281258866 803032240 737871142 94911243 791088594 743450683 449621998 781156724 903345978 969936326 855651712 232244361 358353250 255170790 572708201 106884452 410940413 488899507 656515290 114334796 79874864 98611380 399596363 454772582 632026024 87713713 408188789 848298493 363448466 569941496 298188737 356932258 795571375 303375582 630716314 796537465 518379123 444571357 887628180 841283819 960618616 804311603 998171532 345037378 828314446 523457487 27016240 426344535 516852140 363223010 154298470 489614409 757368574 538258218 135960354 533301325 318615548 807213499 131849710 52992864 640133563 15140733 756890361 203182112 83620743 842640810 196672159 84593063 776503729 815167747 280364409 161568179 81034758 434109195 625220384 468850557 596713232 934576448 701474193 640211032 117328711 727716139 259468772 362615386 50839037 46518142 374586144 780369135 335977332 46407152 757625010 819699413 679249061 677557318 228886805 84664972 836925823 111390620 278380857 46332515 533931780 671839161 13707660 430238570 231602713 933197492 474195192 40425894 552892606 999033568 573920688 691429092 417124295 835106527 37069343 610692126 736259429 783370284 409886975 139814629 572543769 979296796 804311307 699955973 435884727 252549133 558128784 28537223 651659939 992017207 961798868 957665399 819586146 589197364 143523803 930100658 517612392 224802886 676291031 619354350 260510716 924237779 573430560 881410548 10831262 548792207 181845240 379598456 135726570 564665311 238387345 893138741 689036776 569783213 77334634 319887106 300611813 393352135 149133494 472709942 790044235 117173061 315745422 579495311 88530147 860700101 877815198 515246718 232559241 925682009 978380145 106002166 831295135 842160376 417854176 565341698 235738369 154064329 819186946 957607616 669659606 763795655 688336730 380060488 725146126 753711607 17698532 806726921 651778693 360318388 63974038 167332484 399375046 317269391 268395905 672392207 542045812 481499270 256995677 113633810 872526400 513032597 86260439 19841603 976746748 170796774 112357483 81139046 148852712 545487364 288240798 612134000 438247133 654487009 393913781 438230277 732866989 878438280 203770928 178058793 706281942 46135226 43607174 707856328 265252965 854996606 839249101 409355438 609174802 925190336 895082420 854512771 784989861 724452125 202646955 551134693 831379383 823108173 702690066 110273624 610584717 689991364 599389371 469333622 354766340 399472611 659463657 211739416 929168570 967537994 528956662 276058792 967761337 103081267 239710104 427136087 880213558 572079703 537467124 139790234 323881158 589168630 398461271 598254914 10186588 423470160 919575079 679202678 698295017 838321475 730340041 103262030 19842425 540176531 589037405 540692462 331138351 519597844 732404904 552503353 433685172 599880882 583326022 978018570 438502692 60476615 594054949 228323554 491459108 681496533 522357944 787858503 328470841 653551005 557303754 292991967 361010679 348022244 802991527 562023046 25086379 230063362 21896494 956030299 231093576 777209973 117614086 861663589 546593467 260717423 991272397 996351703 52296537 618225363 21041354 794193542 502853409 447711330 317443007 637629539 917909371 280896340 745235278 869205564 12533069 172275962 277938251 930531968 931411976 350432923 704576511 980854146 57030802 537297033 321105374 629400443 556806213 55517292 363332559 176206749 710711536 695667519 283424100 801184409 106548546 184497243 128802581 708645029 867616402 620208723 262713435 601401342 935636127 505278398 794816930 953568482 578661450 642458852 932997002 978443317 382866971 78228167 16754969 896286043 174699080 121093836 947329567 107808966 70527046 615514795 598315021 412254242 798987499 873990345 194401426 783147927 248987006 185551621 20825251 717393137 779610324 88687667 954017501 385932592 354225289 353413204 143832951 332826445 926627335 827858573 69141423 27954061 112976150 224023180 8015968 736860585 226209094 830783251 77451721 757872422 193715664 951849997 787289224 229145658 705292844 50930845 165396354 885910633 774816899 483668091 394430491 881486085 417080611 769730179 109475769 517154197 706531989 364796412 421115387 496866232 805404697 956884448 685153774 511001913 316104178 491948064 774804573 768015923 697486125 206726739 218986127 432409228 495323504 432088187 303815345 748107372 653029455 345234640 231657952 485979976 535001682 729420896 873017416 847327674 113512632 825743704 570185512 145358627 365948235 472536045 387289758 551102488 635141531 501644664 642407330 64599875 316124336 298543037 368358698 993368708 153635574 137076849 4077362 196727618 638056624 267672385 55138373 140883962 36571466 537869540 617734466 765273512 883567259 866423149 834474276 496442348 133688479 827974318 7484316 136161926 2688305 557434963 837021383 278863495 957670506 945724526 662485712 497424013 647151012 899357319 558021804 123721652 57296395 440035529 252566361 878378525 615602788 255128806 865168571 67868671 7917102 811817134 780992739 188850919 825260896 154599993 791076657 571139265 501140173 650849727 645337377 885836437 368293669 582531179 601082388 282550825 518055060 343414222 15360199 33754100 557873143 911337514 52314801 26428769 518334963 692453378 911890733 655260629 958877659 988099897 556313431 607510063 560858459 48697077 265258712 734217240 651704240 725294320 500605191 790087474 425255518 466508078 115722823 476811685 83996644 361077390 259178110 705307889 335155211 175068817 525583453 515907779 67199886 227623580 118777206 680932096 608841817 232099080 42028804 731703496 455499381 361036541 107251110 974945934 787044732 404388886 331752279 2210116 971815819 572187805 499362348 257895350 267463709 831373770 110542742 401087012 567076707 225211273 75828293 833840731 515274616 769616022 576014181 199160507 925852412 231498238 313886982 700570392 775483591 145346773 724727312 280431105 681061161 648242418 125919443 32859805 972461883 75550430 564264764 516178888 297797822 533165123 785594909 494407928 36827858 294490493 959871069 701927238 844242592 369092026 362228032 787133512 588384419 493182420 966328431 1877185 809259412 232360534 423811779 432367868 263299325 747688711 545165662 300377223 241376538 222956351 90511927 96955038 999734505 876835301 508265848 530522458 520969781 728483124 368002445 42354290 524494765 326533963 748731856 187814842 2166805 513323586 970387191 768126158 428723530 158104573 838108607 694738916 745262140 617297589 783284593 610710749 890731882 804103966 700301579 396315249 937848342 273992406 708114150 366162025 377435341 379785817 396675750 331097974 48921238 914766561 749859746 387623508 265901218 577352187 590886595 755190034 117958695 85771880 654201865 809194600 710016046 622629328 171835606 422219476 743747633 816100691 38501859 535305548 748857746 463174262 949875719 60077979 550010250 783631221 298615400 184930070 631405596 601534575 658319709 874066428 124036022 709709616 114713693 868694058 48747995 211503102 127084299 672987785 371762644 168907365 500980299 73591353 860081787 365480696 850621004 405211787 210551622 607746284 832486093 676859013 552177923 498808619 414689301 439692206 827064080 929409801 117151353 360717635 438632129 367516427 474332238 186372026 176361917 840701615 852146568 61107673 805825073 976022949 790591831 465620540 820304458 932775003 692461643 193145804 428108926 633096371 209683204 421489067 528903115 314977241 525378676 288659846 97889942 978633765 3390243 773516174 532750228 897664042 432803618 916828318 750123334 860847394 374355273 549467138 14482891 485520178 740230445 919686988 922681462 877889869 853888193 209888614 185165092 471496089 991677727 287674129 231219839 91250912 88156272 10573576 620926926 693158938 80809842 938026266 657685158 101017334 766775496 525390365 996940394 402645051 896088611 741278547 39677406 598519092 108732035 891350230 333452996 512381978 185882207 18748686 706156848 825708669 206696016 199217293 577594532 707176536 670757141 569138977 852423499 90630518 838313127 37079695 746002432 586988512 600095226 304947764 282906535 766671873 156570784 44866335 146673544 27844211 303489760 164190704 709037870 482193275 708454883 429479189 222423438 350778071 635058139 46876223 611557307 85343197 571422091 106712737 451405436 26458955 795268586 629670349 900253620 460062409 865745841 566045967 393683132 220044368 963362788 139991778 388200415 475922508 763792796 600900447 52157817 598886899 980643177 533994969 609062253 901213730 525417491 41490600 115309913 671228199 180407192 578037191 547560379 985986000 311362652 323347124 678877119 723633793 694943567 497275760 441655581 949008161 430167012 218353219 375322030 29926220 551296208 622289883 511138638 644741301 292338990 566360461 947386378 180013761 697637453 274034885 890675289 410878491 622358830 859138963 914867374 449865856 510275025 198659212 779566415 768202910 612926236 631352066 581313786 526334823 141338276 66067649 552690341 58972236 832561299 877800845 109389337 908440410 380675907 413684338 474375519 420889481 528197143 848236693 147739483 23175842 606997067 536991742 702192952 977987834 127793040 291107002 433041095 203805539 304612338 443149313 878235079 553144811 554000813 458100300 735768063 844665893 550393347 953930516 581964359 671511707 215602548 30493741 309657835 830369287 995547122 264416372 964940594 733379336 911335975 956879578 800402572 452438164 629734386 97714692 72952323 863078499 487479621 568306538 732565687 353577417 824142616 143089207 37904320 1533094 104376563 106542430 380168079 741395043 25153963 660715618 746701901 98674596 932064533 738605564 976418678 679618148 733625095 914826185 638496268 867865590 443740659 390087010 415000450 948413242 360747281 118872642 116410166 75148776 658524102 645405329 762477540 97940468 624010904 786026684 864759370 556267510 117566481 376136141 738448363 822552259 640337292 264142856 815850271 734826416 915779738 776482092 850604305 43580087 630852500 78323740 732869522 179867958 71964544 180779636 680442718 397386879 655270526 73432653 967409696 875178295 289481667 143761495 713654429 321439040 920375853 359181155 299744482 285947304 548020271 497963198 766469433 673853902 812874569 911137459 809702464 180482711 342367581 264604136 163305522 725953620 560354907 60032124 12016389 612366210 794296744 477458994 24038209 634712092 500783298 823615098 737316473 325639290 805934673 230994169 443928407 535365839 954525169 218049507 911627329 659822823 237918119 409910276 634125631 169537453 807522662 285496780 340367222 914934719 297931 207333776 390115293 666071859 833376376 36914520 490890340 57728471 694361264 391479975 270393937 209042829 836078030 147150787 295707396 571233922 969786261 333598357 493174051 209514144 74696172 36981553 275702505 946465014 40693073 685337374 388540759 956678798 158673171 421084590 253625041 987666121 607218127 333234183 503562717 757284191 460325074 304600241 157693197 938093114 712453133 477983388 503992284 152291228 754910203 818719029 648498648 78452564 398226912 421542680 211917635 222410805 724439627 478619773 353328789 106242275 277309436 269443421 97817595 459339445 803327217 797755793 385533962 813600750 557884627 762310217 364322095 941571404 630839098 164739146 218630122 818906528 502846950 125668758 256117652 500703006 10792261 422437805 191155398 37319334 962221490 462604341 192324054 214168760 438690587 802168536 974081667 863748286 723641637 131046855 372970651 704176346 807564371 488273342 104821398 158803596 18909728 437971546 221174415 403685087 850756916 523324443 352218032 221353658 910017107 236467599 789814981 538471652 367460987 7411363 432424598 688431565 952100161 444654625 767318710 6655491 307384928 903945615 324039963 238048783 68014239 502229221 244882584 339290269 945883227 65563694 10025292 869465533 43711141 468871398 796674024 200028427 184824406 390495325 192105382 337393564 451907394 235606735 813323800 635587611 745417397 115336239 788824911 915633234 590826290 502084596 865245882 978409588 155200017 921869660 8797870 362148692 207827007 598150534 250444982 830617744 204262081 429324158 749772308 508874745 674358170 485413489 69712162 409309391 876935615 397325794 482357517 481185830 506451898 972728283 350940061 248947659 180857688 479644279 961402556 687653960 980601936 353698283 810814614 683243730 940698159 171716173 805925111 382220722 515921562 287048239 205946613 934898870 918794315 824093156 802248603 772353165 139288850 473674912 761291655 354883611 680018828 822021653 96279840 771188125 845429030 142447081 25386199 460953480 618340751 544782666 192775269 636036779 894951093 75905245 448650625 923494290 965335108 290862197 556206990 330161234 207582145 787295907 157072416 558319139 341104572 172776949 800294036 222596834 761099939 548673660 215252727 807790043 654222198 633022645 530546621 181723754 527507873 86071040 132492786 835109472 732403035 760924843 229600490 36518014 359859677 100021274 557064764 709988520 379495588 862800263 669200626 219342122 930187743 507862415 417258452 777741473 641534047 383095166 807093550 987392425 847187046 821485835 702565249 494995327 655605278 40451872 950183518 463250276 316208912 835401895 169566892 57183131 328945116 314045521 993560598 638670182 959615654 543335593 787214481 863120586 986501264 201360621 617343704 347546847 831582681 334703801 564514650 943755562 303713810 731475906 621173577 799450303 928504810 643743846 175866825 533126819 11935835 236913957 67994614 510819410 280006937 963331888 842088325 158736856 515610254 611624235 140756100 331589316 256257243 609611369 324624446 390498155 403596044 204217007 139999053 540233762 134174540 235458022 251385670 140248126 199693681 170848313 934609947 593135039 930421312 122117871 243159020 400663697 656112355 794724646 969331314 122238093 805750529 824190301 65350376 296868906 468647548 888696275 108807567 104885316 314093495 590607898 302432190 266041035 56922455 459849939 812464950 51103382 856199284 207355532 400822363 678145564 244102150 463967447 893524313 521399200 629395416 998506467 294714291 234583288 86682647 631307877 3798073 717888198 578964532 40751846 220390047 168653241 250494405 867229123 678073411 419281717 756813577 11892169 964976378 342606358 992623857 924967324 420387748 696427474 811362076 330589597 15215354 157380392 114857337 328779120 291490315 132975874 818741229 28240001 115518314 363865664 948891808 825547146 775906249 832579557 454755613 245338490 316820729 102850813 724673061 338092884 9550770 725845909 904227715 804089383 410047952 407823620 42703896 796368005 851366731 215614776 898878105 383991450 839577622 482176853 219495847 639484215 828313109 324379068 337790337 874440979 878004667 505227004 130643240 611128446 620208949 889455060 444206029 877804731 17680307 801391317 294013215 497055921 584932766 390910982 230636185 860261182 19844621 273920142 889820627 534855833 306681991 584005804 771760385 195662826 620145387 349911323 901306153 914284961 496827291 537160010 516570717 111620366 589615979 954043843 930796408 817485633 395029691 862345117 861964108 298417984 162271202 118562339 969839067 191872514 487917657 838715905 62316511 120577486 436811959 421472978 435268505 696283914 536328837 3183657 468451731 807317921 432313663 798252085 58294043 693726460 943697862 653071860 89308781 942434199 801209213 97237605 448399757 78443141 525004370 848819162 726624735 945230514 430899816 912064139 363265031 924183944 209266424 909364364 392242728 190190882 471955851 446070385 955677363 46350586 686682971 860777935 110083910 334394066 571202243 567644949 42294903 576455732 126418500 972000676 176587283 73634216 607224457 643007590 874718269 508398815 854864591 251727971 27328921 693570642 556803350 81615135 26389808 696580612 159312131 611620912 78609865 319815679 844775243 104862848 234166375 848313280 901808744 569570431 985141321 145381419 204662573 487386263 202695239 12587547 194879183 955539343 388957360 886895129 919677889 323097026 426987035 639108762 698894466 804439883 875100134 935261725 602285733 543389637 703382309 597181798 680796912 10989494 575552171 677479345 824308888 971868470 554599277 354517107 993153583 515202752 606202583 468023913 327092718 940063245 702377057 968377116 42857494 133178746 857218489 216865931 734736291 859035979 48754740 546274100 961993210 897921009 797372477 982275601 50660372 707237070 235856882 173078199 107790995 431174144 36328077 520048949 54836802 184553533 472392758 357056328 109843743 101931213 721466978 945031748 555653056 895822314 148095082 256214313 153938124 106655858 661170973 447093477 103479635 621745491 1428866 553792196 108846155 599478228 561945314 309064361 586207663 478276073 632291713 602071753 686254861 458629726 510981240 406777248 320749629 608509649 734569117 61958690 254828852 916329274 629034326 227790011 725460792 44377795 519805021 813474833 81774111 798319007 946726994 437593875 912028105 923652960 464598466 106388549 61892123 479853930 647372796 995568934 364665785 458009203 704873507 956198101 20794710 993169937 976052999 95958394 522415896 281253113 162470576 388538081 769929203 474844412 632322361 677383726 500025607 64049482 369499944 708466204 373740515 4602247 289590164 949418528 635047294 685340047 706495649 744193731 613283365 204987442 522368408 492766300 237412375 550258396 160277276 804726336 813511236 967240240 561927145 76488282 99525502 744521178 454893127 539558975 382723258 376941584 462508796 396119705 503959725 879867272 558052025 55400371 996128040 74336118 244976377 180041389 259743805 343232210 109355463 183085091 607271420 242249076 466837013 359037140 697021796 401103669 294128725 771437812 822225470 161944916 926746434 931122447 568618213 225530384 887512594 367153748 356753299 548912977 480971013 76338415 516491929 409776023 524841961 926382650 882932738 700434991 502578750 922704695 823102751 749869675 986503600 177522539 107185422 891361521 799565242 966488194 488668162 398623190 547124424 181303087 713943833 465170492 468994387 379792100 864251742 741652715 628471700 790836568 857003175 422793740 140590571 779030606 624659193 831658796 933292406 872747537 309695570 706562329 511413652 955524223 895346277 777228659 83777946 336609880 324108614 993724203 133693571 936864191 41908982 79147719 408601923 380282404 712387090 930774090 458821691 553658359 635061090 682635554 576299437 808590518 165542287 489235217 746151494 115394454 802587886 334393844 135922317 233532016 999015276 347893639 867757326 112392018 839836056 747730343 528277261 475462917 694960152 422642181 651785365 962996563 497569909 18498740 338509558 416086335 826571134 560552574 812874723 602307406 174596810 703939186 505969274 362772920 283471399 137022651 310951705 517843978 828931269 912250934 135130274 557292712 98019601 957774331 315799682 267869828 51300233 636875467 303310414 413957009 495889047 512896968 213179192 178845889 570602215 845416035 737398946 216136496 83423167 90202049 701107797 451999430 571896756 434780936 748074744 34002335 551763847 412001387 841056812 447741786 471627780 324361959 993656312 991818407 61948408 682709778 131689930 982591824 599376816 347357005 796547097 861503642 848878229 762710824 777518160 743286245 9095646 466276194 825377108 686184161 992022550 158337801 389211634 571919566 740243920 565957452 129675297 381082682 994902581 439428289 898377334 363270295 530858017 689238896 307176822 839968486 431154361 54103954 939654954 37403451 240395659 668223547 48124870 209026368 312545867 679869361 453950934 622513810 692186329 79295103 31915765 646461941 120997749 317913490 309974776 653357999 963634522 862843079 120637893 522532105 496946987 215252891 795654692 200720162 475452974 351036706 114597470 857313472 561239628 981854084 989409857 511953913 101578539 885507717 141484821 940827942 395808998 266353123 606759831 441571195 316753968 238129875 26048545 732074660 84718246 930344556 389109606 101236738 155044618 683269266 411541835 6471679 629527584 803580780 390929075 86438271 875410654 373786769 146630199 183095540 981022835 566297200 155669600 218333795 358310621 375236060 26949131 117049887 128620472 910268821 391924642 626016351 603306453 367818690 813556135 563888189 186594081 473305161 303349336 659505405 556350645 14093158 728922010 295752920 913898131 113140969 320176797 904621489 187774387 716298604 830882977 901975650 427111207 173522247 726787327 87229094 765171789 99718197 626480679 691358190 411090401 527032496 522935231 23328226 598347180 536398901 978153553 523961920 753789021 790459994 480330053 628913860 123851108 862826545 777709145 487883764 395449592 315915353 92591536 767834321 652871270 127028208 20480705 275788637 84073768 855107025 666326662 401327330 836194769 346833874 179320492 581554194 835065047 928631474 468292693 313911702 125350630 764227204 346979967 408529438 25638962 567885323 934949346 400389367 692991468 952929092 306924488 152835930 295430440 135752623 237792296 828006956 901870196 99027345 157248162 599346742 40118321 115474978 776630445 370783398 746850277 579016395 59823318 589990033 639449886 853723987 575029964 839961874 447471475 767339066 955375532 465199834 470045467 486228570 42731460 134701186 530037592 339053597 382601361 560970367 994520017 968374566 227222897 789065951 221053037 215491991 447591814 227345609 472082642 743769835 714011340 633255383 232356977 114190428 28207474 307702279 141112276 30356839 983102851 564544088 884918621 701854141 794600071 839688489 914919899 708098040 157327173 496726946 499140788 6162477 377682950 76647803 665293969 369350062 300199934 348288042 551078347 845160028 149776599 164378100 813717198 587848836 464912094 916328319 48848331 9713349 211074263 14418383 546225137 938234077 811168537 762506348 26550781 703122821 35313036 346217563 369069814 275165941 273666415 578334267 778118169 67881932 532601167 943750152 301682190 106029320 775379574 311108505 913635972 29518368 284158532 281750592 208318383 35249440 875967620 859286113 787690204 521050453 951406748 599441609 923828668 681704838 678710766 345025949 964411062 873502321 795684530 813752623 132262331 656721579 235910229 449265287 391506241 145017475 895914666 932128617 608665387 328539975 488749371 81701346 560379443 896546863 144184303 810012659 452636994 818517709 793609729 414723454 219014502 889127985 838339936 532468141 784134094 569102439 361247780 153702908 753563404 658645188 773208491 723059512 540943638 266937572 102234994 276925283 972774044 677270415 477816326 335213032 99956651 237085726 818498123 905166725 140175440 23311088 636195787 463347993 282943128 129054060 677553523 87839536 332945898 47947502 660174234 873375659 551065113 850423479 149753711 933086345 209952864 59078252 655507788 879694675 160694697 988922599 690271573 720051247 34199906 591473110 75701857 350427151 182523232 435681086 731754573 789436845 381451172 682983464 974839027 635013125 281915103 665895873 245147259 150087958 240624276 752311605 495326731 956969874 213994731 450271504 816323953 85648725 467091774 573626981 44213391 685874797 865086919 53522805 775030664 741944690 493049799 794154073 73128635 646681699 883158972 411323234 586236177 26539753 552421629 985543823 188620299 372868210 525124993 252696436 463721993 863449737 210003864 340088145 978202867 180998987 675663290 960627708 576996875 434121682 8727681 515268096 338303522 75788137 411047739 67108859 821310175 607721120 179456799 205754335 732069643 949026939 934592771 673473431 800542879 5050784 725763942 533620843 849574444 423319515 206262817 833475949 87475790 218614161 817469343 879071331 590242619 726310320 750426552 501663554 517798710 528294526 482143200 614112614 572260921 211498675 42527615 481818788 591009985 805632663 331791158 891417253 18041252 493883342 205065238 268518607 586374459 844909046 209905037 478720294 42289139 792301008 260131249 225734344 975692714 406561556 587171193 384501940 385716900 490401927 609990075 120797332 200139911 94093857 692129149 8822889 946673955 812633328 220117344 770933179 668085398 313674495 710924269 59468471 258020475 138632259 483842170 190979989 109302938 103153772 251973273 176210885 257068486 602651909 597105761 59118134 538911126 768527838 27213787 242724260 386759935 790390808 398553422 926415502 781754628 36005457 313658215 333882725 809117191 890524786 555020410 662880824 528760579 840582706 602705064 759380634 260066881 385030502 189459328 925428215 35709728 689726720 344256990 422521848 58694022 479384274 714514151 613013120 589136001 948534416 363334494 469831078 696860482 625139463 562975408 43609789 8437812 34415740 798555664 891077595 974257430 789534164 903487121 272538132 431007581 304131121 773828166 89426719 71590282 737105540 704901463 132393117 861618597 981789300 156045409 705603982 764288744 866479746 917945568 876055951 383288372 328891874 530973063 364743759 531542616 828093984 441242670 194987626 109765443 740513801 111587877 268536871 896887017 843922485 973986284 241824691 399594140 125966955 511905687 620452481 665651584 858792512 512493757 288044688 376732321 699702832 5843409 501534144 864263525 583986413 82874546 574649458 312104120 536420210 435504307 692903317 323379197 791982638 22611908 331971172 762302634 836678773 34427859 481799730 255329128 701256158 228819011 778740891 121769185 124667226 976610672 695878845 164988109 182814337 583434079 129221732 913802514 687167698 333773801 854119299 460730682 899363552 821999219 485375068 794463470 210274512 594694937 230002687 367136465 760956841 219432796 933302377 881731893 841163675 592790046 965568584 429594575 898465038 893716814 158578776 561903046 96373267 984781791 186955303 167384140 803205873 112232859 293980207 797996862 5745584 482080757 292650988 936424912 441154112 17674382 322800623 460282582 302633279 21917624 775863239 307032983 678252436 71441604 705294474 509767051 4352227 343797562 909868569 399422542 382959859 216295216 395672876 586001350 206374750 621553989 392693961 374537383 944039186 92423499 594089266 200486703 804534812 612460438 345543070 601231612 378811877 773755607 337852132 777104847 691337751 691013858 708028200 737874694 473196015 285042460 627447617 602254744 439386380 511174692 100369339 169371442 286863221 800909966 616815419 946962963 86405980 355630599 579322558 900425801 199600525 550203234 524284054 629128368 506666459 938237516 277940619 341210898 429304688 471140633 53144024 662216244 202559780 911389166 755499464 705933466 853913416 362838761 243155399 105392165 195203488 959681812 883933896 227858498 55923511 913083062 19769544 177783836 299196450 843221126 981692891 438634547 143819016 841120046 650142928 853171004 329689577 119377460 20128635 829646675 663492228 242621633 303475661 528452026 166483207 429846661 585117144 804058238 920186512 581194554 969982950 466462307 525678898 38067311 484103292 334191324 260478987 204511813 603685074 997732169 661162911 99624053 48801363 504979825 603493377 950734268 791677923 283839860 590529219 428409750 183567310 480435289 696490572 886720580 634125922 554840823 212341941 946499590 240296144 981667579 120157306 862796241 813010410 102607948 335313875 332902881 453124620 997825890 371644130 146980133 408975138 263523346 624458743 399218332 384110203 392459864 480101358 320179376 732028663 789654241 504413124 122111412 854614834 649329016 731074756 846678870 344550305 205276809 30092502 276380421 359045406 456069374 893304002 599360825 726837270 978070947 574504464 116090830 152952978 488370705 41805055 110917389 383968834 787045441 724572212 282874514 245291696 171658765 794710870 614889686 922226095 710741627 371185926 218534300 547899419 619581458 165971310 677835551 468224532 72513446 928236908 484022487 856854668 228973395 898335076 919225355 809488845 544538949 201851449 938952094 43970165 254851256 413151381 101996720 875712257 412967115 693126518 786379089 305971463 583932115 510914553 401079001 287107044 785038728 975451927 327120159 405570046 26896699 402372858 577130138 907077933 992771052 656810546 707062717 533166412 51078548 389935546 749777777 1579245 45200193 943967862 310562689 509479047 649648497 503959675 541890878 498573125 821282919 770143882 172746451 708155846 734266147 111784575 575995261 929771474 317618478 352333927 289446927 491403251 193943026 992134118 114111993 587015070 123783587 343801651 917133695 793133344 691412 958402634 451259474 608933143 5259512 310982074 769055946 36359385 21604228 597316683 106110588 373235313 94522930 795537179 350227593 485838871 527633505 590110617 769031355 437766674 334760438 196051489 412762741 565153927 956246253 398236315 725847102 650579401 222892060 731333423 184058997 339610664 48074127 188210823 2151981 873324985 593190905 702682671 838734530 284195147 196971970 104819338 541030041 812715661 299206024 683849582 422261697 749652057 333214163 763329627 204321423 870514246 158779319 830851731 845038323 35275849 890591472 621592090 857351050 387865769 423363010 152256576 459453411 255937973 286975993 824149739 7577245 659867277 123215415 820460445 383162914 591029372 800657499 510388776 539488000 377091057 482936784 78931556 379085230 353404433 987677750 562038770 317741987 395913879 556964035 567959805 20955417 785031787 125816536 98890944 762503591 955376693 680566029 811230863 511579140 702690320 212124147 465674144 155349144 89526047 785541053 532385771 645967297 152973569 939828576 576450906 545647892 185970892 499283766 843604702 310992032 571949927 72942313 471599200 288580778 638819975 668906266 632436444 8112641 750480933 176273017 316001019 98246520 607343773 680424430 29246432 315671635 641913803 908420014 837589258 231124401 320714840 441457 433373936 424065947 213947324 257349594 474045035 199828182 28316532 95087476 100654789 695327547 988178024 290214465 790471399 395727800 512932611 978710255 536750346 125537051 136143852 989169779 322746938 392101177 814506338 944232458 379340751 444635255 107302109 432430142 121071380 250204895 642514084 261078929 961074170 270102115 80739393 790634254 399567134 988116163 622968545 348888956 662320067 123182477 89456525 877978779 884838460 517850638 566340115 159575412 127877652 940468387 105125858 53413139 902910050 639141143 421663170 336740197 197482976 320621070 615894745 29928269 681173387 679296911 996270786 350047675 966417315 968323119 54137606 240966042 955325020 647427977 507485575 48362275 245471078 450683330 830292945 997712526 940791999 721848082 660807705 713429746 235827144 245489392 418356274 397493301 543028413 697585269 948557959 694908025 356820246 455350925 605001564 82313652 166462428 554038200 131929729 15240261 571984452 361289373 46345820 965674302 422463836 64681490 350769102 267729531 407845985 966806266 690884057 121481349 163021906 985470453 162695146 673449021 543340070 206928706 463381298 453025760 798478588 819498009 543484375 687984520 674052994 832808989 704273128 57351401 671446441 125192956 594160165 314794451 803015278 243184834 675535408 928821379 90472658 335050443 364942799 762163929 979734949 783134651 128954445 78194352 879159032 279694370 330199810 837366269 100220142 331889903 747681290 150813556 545610445 227112576 499310978 469861973 434626745 37982363 951091372 191877264 274644627 255644462 598785264 654754419 772993291 878315256 323728114 708999269 425094157 253856476 257425229 217788313 136327627 478533148 373836768 477157309 142223615 778610204 113537463 914949752 845948599 113467054 269986665 620059958 670822017 196498668 750921498 66320813 921202176 753056356 279047967 581598099 410276588 739759204 940482297 913464833 884492710 105568305 917734665 394111692 61209788 362275575 418596691 81721859 265942550 691365195 864049105 670471053 805373769 650011354 863129881 353185797 34475693 490724670 118258565 722654766 271754950 115232815 462521820 116577882 152851774 376757244 206713846 832194250 693255677 552946680 23361103 581518551 137631529 397168486 618392811 862938634 278057603 52739105 939616708 949699397 179968172 385660005 167813166 244456204 751820863 799160078 407275999 457079784 955958829 925180481 372057132 672572645 379281944 81058400 362439076 588712744 124914330 831855698 165581086 460546976 858899148 167012942 317473762 897352994 645424192 282609273 399626690 325855062 171059326 22028559 934921449 737075127 703646780 896547929 56202845 740741157 290959976 668539113 129168902 399248 636750963 1042821 22360934 962870178 24547025 842231115 60190716 162267947 265673526 215441627 958057185 662996092 127859741 616095233 769150941 405871262 357420366 634977222 250460957 210857235 738353352 174163509 967200284 124545888 308986363 360989914 478411726 207389654 151155060 52828777 802920200 725773494 789671535 212086274 169061651 516295530 412534711 746303069 824833951 318422793 447053151 549532244 595282743 742359609 888816172 768724788 315715911 181686105 135215608 442857399 212724355 322004512 648416576 71415043 872710559 539446432 263588462 72429 80626564 148045604 874196828 658657100 409756020 262266411 552321487 267408038 185693616 324538840 860585873 482216368 310325298 299941527 33199600 317311258 724752079 239681620 764444582 151595643 190924586 278317842 198012214 967079678 432641073 58391613 942422244 765787140 897394693 978003400 197846992 647210273 893491004 522239290 218509538 306704872 930047919 170423598 947228746 446770656 769259631 561307040 856241311 215142809 850716749 512973969 694793482 293698875 297027359 458902213 1485127 21962300 652188395 782974731 382499225 789729291 292939756 381446069 182395482 774339913 628177939 912712018 89027554 217583860 683105468 492233154 908370798 891304567 341614913 898210704 551289292 713348290 205714389 39486714 253055532 905231324 593559475 592434929 470006734 887131934 109689626 763219439 980117888 84949599 308212621 807439675 770811802 602898955 498588949 373205872 210878000 776653857 497025240 652575331 809326554 577804530 893987335 892721552 601384474 847653803 276135687 369036089 545173906 990738928 17476054 193723068 116687885 387204660 754711759 576573804 623759040 409104118 483665688 29642950 474660025 264828146 807243285 61982869 742558789 562075012 32687766 740955996 956491497 755250662 359741140 882236866 196879163 667273963 26217387 401426485 41105439 552078901 478152600 562079072 23096218 330388060 251087235 516045267 328643591 849882114 480569317 566619911 468596223 309312162 419461627 69269379 405739691 735825168 122609165 580768805 385873482 615537886 135387588 103092508 233350255 838956829 307222294 214809537 318298269 853987648 426863645 372898517 761372937 650727237 186553592 779262994 935698554 39139324 616538818 621468751 68180433 165427836 753581099 993866952 448282631 413122436 89947734 800437979 22684099 313898450 744263414 967214981 780859514 805075954 607734659 337308217 896909400 382369930 237094868 385647611 435726177 134520904 816388445 628366788 155145612 686231070 292528927 654444627 484146817 680453372 888223329 794089732 32080776 247290480 924258806 99026484 951734525 75093885 530228089 89171292 910726701 563899097 384195683 549111130 878831443 626082483 149236883 767372055 188323582 739467887 258200005 77703989 565152710 908362527 596394099 525206224 527379549 617733813 632595478 98821560 286875959 637177535 17026222 659339073 827210580 641827524 159685248 598115244 432505240 496948440 541301071 981091877 613586134 127826906 203496708 21000425 268730831 887982405 284630307 573430959 690129978 389474016 701095088 903367372 419963279 164229654 990252655 358034479 471015685 731510661 828562178 62611716 440845493 227578023 982617295 841244181 703742826 731707843 672003296 479386694 687168453 126194027 320425519 462064725 659206612 339767513 463487249 547773721 177443341 398220198 691120302 421275251 123173918 162691065 321864987 982287281 711432276 468794689 517003753 844548969 161353143 738128792 819952844 275032486 796835997 57281968 345893147 816934473 278976009 191481796 995243099 949556668 190086159 597097696 216222426 931048812 315896132 515499311 893259489 723864822 59478238 678161226 4494257 346838484 333428973 151488862 318062663 845729579 173427061 602965021 669694452 301450130 620348211 826895807 962799676 853932894 239477336 3766842 253400109 388826584 486553539 242077405 981533531 237461213 836981437 985464592 982901939 641790167 926136916 911368472 732758963 217807308 785640854 102739275 987026601 151545054 229980822 783596515 739896370 887995965 406327894 765906837 637695312 711428443 712370054 197210122 596635493 387204593 423027250 82545787 962208824 396164126 686130696 695348599 391485112 712565610 530750885 750168914 131631445 282456112 916378726 494829140 502620367 355551669 36702966 387442589 969647393 786629439 334939768 114900801 211367558 329111971 191613253 178143584 920741962 736444274 398820246 134845903 645786841 834589016 895605712 35738978 655704870 885351284 717743082 296105780 20357832 38007392 922851034 36099329 699966600 542025488 406951098 887506842 118122099 807876614 132139441 17571285 239312764 928403496 909569034 793634591 542437352 225876996 250351239 852599325 701234474 642052059 167421789 624100281 75463793 352953960 787675833 679322576 448722677 318457224 390762694 910043582 840197512 984155513 602737448 167870317 278331605 357353947 666578435 866000858 25533049 189885226 935139069 433840334 71797901 542030269 720000927 866695312 732856820 276191729 468160884 139582314 144973377 71780663 990455515 568680490 701862671 624403414 996955300 89906540 3192864 120859529 241828949 565083954 37199803 936964946 473877977 916590564 716168650 919865521 83533251 88233058 590520119 954466669 892155077 228894201 512212353 371786079 148500029 769981254 509037255 856324333 586061643 954487003 211706012 72425706 662880353 586281524 958289470 854947875 116345700 33600587 783057807 79408212 277109092 738864294 950423772 178388850 802489776 6023920 684912491 597030882 558528029 961591022 687837411 96245583 557128293 724426847 445304270 980924404 444444122 692459005 163026627 21086301 34730324 314400546 85675701 209348272 237399679 830559256 482714530 539930169 893701785 417950575 918432834 716348310 860049818 339536053 652154860 613883327 544238054 57067795 28259295 263472232 136302413 967384582 243421229 714131644 399812584 627905484 851831775 176240747 930471213 113596327 329744413 252520531 762822164 191316547 735169680 269437945 598928536 1348223 138245940 461480034 517458357 412461713 844270710 55652797 125775599 559823905 125408538 16810700 414956840 385900274 728629728 175786982 990055859 727185020 848092289 124886823 643658640 540389463 549984933 707091250 948227474 702883340 340856061 443174413 466905864 288558055 149041140 908273660 318037505 433877535 904487555 617403786 173380426 236779455 861701024 682767876 153123189 347516335 375916679 350863646 499958888 439455525 731202712 528965864 614169624 396625685 503131866 212637461 953624229 94707645 108483471 656053853 523762764 513127512 386734850 259411518 650314079 139367674 680800523 591831121 757970660 771376740 152828921 63047812 11519507 658543430 513086788 433436907 866297900 745290764 100840212 215493184 598440246 870468048 172181301 563175298 940898905 358267068 825320005 899843321 324100837 449571324 116493866 255467282 449644454 28846907 850747800 449942602 559042879 974707568 473866852 475295763 829132375 510502528 261550431 192198096 526932023 166334549 507903221 826341194 152544920 773562478 283379050 903573770 447081232 316560951 65076000 672528305 804668184 76754534 24511542 963340089 644156233 459988431 752416907 284097243 603868695 228762968 999193327 404755456 895520062 367993570 790453171 998746438 379634030 496415779 161478543 716614835 723157492 103940248 604563704 959463649 9086224 756884201 849072466 904593584 597224942 586091051 495824053 21115614 183841564 834243025 266134134 176240062 101611259 711546041 684990731 283215695 154857321 655918718 420927106 184127285 373535932 496235962 471446469 590621088 978377075 29678097 642934490 131471365 670122464 257232967 150800961 455215561 376058959 714491625 682575258 900620466 986510797 279410901 621748663 905605050 772274821 664524498 858747548 571165640 951250518 366614350 340483810 80342882 476199194 982557746 583567302 247265206 478007437 169899166 216640684 842024755 785480290 286042415 655089387 432208893 994924387 670299081 738756826 381005771 696558337 144040917 440710140 704127271 506750987 237123706 943149539 371673005 149828470 868690203 2378372 336426486 425983804 30613515 494144425 603626276 634719226 617378970 792951306 594882067 859487162 712981824 389110129 659127239 169460210 721224039 21823928 271511264 549365156 184864641 748826845 130983299 731524866 814977488 898907835 421367771 22715896 748998561 60408988 433120430 105082804 373129536 792473985 948606460 796746770 135883688 281995199 400685661 921654200 876704386 36932381 313376494 687590271 612299647 441883159 985761554 30470795 728714308 78316217 901554297 785752924 167158406 884785797 231354334 410738149 321797595 690511088 277136166 142957040 329603654 59841973 508366246 893370033 714910535 202330455 104795600 369760117 128074379 91978682 679422160 44400428 995768270 711149037 701119243 49560199 718730510 455558728 394678532 630268745 173947806 993913361 959090323 940991806 462506502 992786876 171285199 627014563 560200829 130333290 909121304 686638455 646223723 792175347 80993638 190046380 102311963 994058534 11554089 224702096 107092276 531874610 406408337 837334672 186588729 367314021 504571867 931664672 317137155 970519434 906072364 688388846 408474142 972371507 598666146 951708991 556457025 4434164 554695898 287891330 542178214 51305367 841773358 331166478 941401212 602709238 419075910 915159907 200686452 250955913 46064256 253873999 83800678 507578901 397131780 311167687 566482376 401752118 37966310 634478523 367837723 399859495 47657154 696775820 939600834 960053215 271394361 332477877 88225218 21253131 451625845 143684793 948020784 480372393 854763456 372469410 218890067 870231053 375920791 699207996 884294100 415156932 136412275 897554181 792857316 759663323 66528338 64634081 845932910 481250930 58821919 785318219 493337355 890254232 158657227 513671052 763990764 345203869 476427815 518085392 705041623 487758824 10494471 25174385 656978754 356815684 636987454 853835642 800569343 992249083 585931871 675877427 804237929 432021529 635355602 542471508 803089796 972326639 221904087 283897860 745331227 906906952 413944907 680346072 596798489 726261300 889874416 387366107 432653289 920387942 443037683 363115971 685599939 421240834 383970249 423952557 877120958 346241084 98603896 719065120 916001562 531508047 610415377 312649836 653802745 236870306 824109897 748135570 339044350 30646743 763019091 649506598 285334882 248945129 837418417 958597881 790164372 291744248 875824391 838722213 826928691 629231905 66044737 188727419 345008766 310920701 334506034 645802493 524703940 602078759 705334816 425839185 570007623 304997678 833645473 297791463 685931821 174186040 446321136 711802339 580277861 52816239 445172624 368586315 368484213 972292553 31455085 228872217 870054348 974009350 912899042 188947083 981929980 13747967 76121224 73594383 786870574 648472971 399992607 541901181 947965262 118497510 814584011 799880198 488806307 183470358 942372284 624531981 477507258 724989341 708467098 655691294 972672639 664878233 41799940 500664976 352489004 597317542 770542289 767223010 854119884 880945314 816400132 374887515 774903816 975695561 371374278 937678656 265021533 723401665 188149974 580774026 80968566 194493261 346927421 609628420 293167825 648860637 566697102 477430278 376234898 994075879 334461316 18558476 955561563 171266218 801699969 529438354 758904414 939208342 172775331 309512907 951114703 281712892 86553592 334378257 381729064 916755523 890979285 115370425 574555484 198158566 963016212 817757798 599670603 528112927 174796456 299118017 133813043 398254431 866226800 22583325 354290708 246966041 831602903 770398623 874999959 393608191 146601956 131243224 255695025 296348210 304200166 122185156 342764861 389655722 417204022 530100788 818311986 117091316 595275306 701174026 460080873 586154742 167838479 955511887 226580235 238543266 789556932 712973645 927838556 626538701 703229137 472481430 800028555 697960266 191685157 647812584 675648034 838057305 866870170 97209169 651153114 508965800 805707116 108067613 941464710 319572336 53608558 196386823 398993118 839585879 589532229 236139851 416873901 628738654 289565959 898887585 782010901 720427831 452098882 256082372 18415182 756406900 949115619 627082282 879802495 655957974 952358986 407968965 479599722 143226749 24980423 514093627 763730231 581789796 268054171 83117659 478952395 953091944 662864281 784342125 97360394 358954229 123874837 667986753 5235919 995018495 405472447 281894258 545872724 505509854 702407225 850290857 568247360 301162775 156823576 524205845 39627281 447639078 94346476 868700432 844560765 959098396 708035109 661024745 619402005 345359429 142836105 957086162 460577467 937551863 121779651 126605780 404816935 929903194 21298622 368100952 455300392 45698121 261430803 591109319 350495402 279312372 762893620 521112363 66704189 92934530 313102441 406186132 798562527 634395825 785320504 809788576 102597848 753150698 221834953 747496807 682827685 381096656 616539619 949738610 657695710 577786701 551010667 189251932 402340666 287474423 15341260 247805472 321854977 721528755 413402764 473454583 330605779 154716839 515908774 278082407 477622181 808711478 258265562 833253332 81521679 396128808 233071391 199549611 500090877 905431435 597459470 57671259 508759119 337147232 63850618 644441934 727757891 763101768 133083567 666243586 696330593 427698032 379141901 994824580 175717460 901812642 875237365 717990351 366055894 282723995 446440464 320722146 626930408 428533717 323238218 632997163 834032997 830734299 865673100 173442248 802655238 542627210 677595880 516900726 998482985 843708484 346634950 718441113 887407475 648955404 846513463 550006727 358020159 143899922 259541408 421939780 309621561 781361360 320083691 287240962 297384630 400747150 386635433 962075658 829533381 750316913 670947791 971373898 427735700 933857628 399306682 763711605 697035980 790445914 465032082 512756653 296361340 89732447 981471529 607840862 100208199 638653382 121073272 843215126 718312996 559025700 447304453 897756262 628827309 613287470 948635484 962431473 206818533 545437556 483213933 230902068 71703409 422547480 74492627 909463621 614124577 754276860 9051805 308819184 402488756 792902264 50074189 576514990 520409018 649187745 398732654 377410122 936539572 449321334 700661352 60741511 539635810 829844642 308796659 407612926 902008068 881345658 445272724 685285296 556989139 957856361 197192720 788658747 941472182 177988220 16637973 803564927 878196724 293043613 490140482 48680441 13527699 956091859 829390306 100092484 362448067 656513415 642763487 836094516 310209811 925810618 696403728 169194784 760934675 603942906 519798482 405555111 146621977 291842957 932063661 254594122 422480285 36286530 281582291 794368193 5522489 692274112 58867591 252174452 616819537 230260831 37432266 177513876 530193438 574044867 22533436 340893504 180973263 488617754 315802506 913718057 164999878 872652485 551741843 455243687 790266539 997314036 832557421 958695488 979527558 827074110 309428248 251509624 142722208 25059313 825691759 306890676 850835884 38551238 542649034 300084086 122082166 263866986 188863288 663313905 38869875 112952447 953027252 598111312 703855865 280535550 242389164 450012307 93578165 582203633 161449707 52190919 917511396 830123960 927740098 21181621 248733173 361839564 933252771 88640530 897343298 558507699 614906830 778864732 892984927 270053951 791660821 733526944 394747980 689435106 871993746 336033445 542558263 373423096 457493848 391108094 479819119 390215696 942462568 761499552 240520320 792504004 568775694 112884950 641774446 971682460 847597211 131315313 341110473 424387711 487815681 849044404 495207437 475167807 513806430 622373224 542645048 557680585 915603287 651805818 400543995 59133472 673284365 773116527 943010670 623335289 329310550 121430426 315445364 780663705 261253354 922831410 221577724 217700633 773758357 19090614 174673473 585950456 753758728 194372086 928655823 465617456 212116461 441671227 596117207 713593709 18550112 821932276 420940851 451999795 81887231 750195180 80492567 188207605 791994095 733136711 677952053 98403345 718537201 708987904 727372024 716944255 708623617 301774781 43278949 977085707 558171726 648381027 826511346 628573620 554259406 273442087 548593231 85634621 214017896 698507738 620874855 588432047 697577956 678351395 980133344 552096780 167399060 135607595 153977399 945825395 608933494 930766635 907248891 391956535 146330828 254185109 607274042 657094926 568390634 236819979 601977464 786410871 643637903 617570704 485135430 796254515 191593746 292224589 531137576 847702597 625363422 611873696 318844756 757016703 404456119 130917532 392550677 665432491 204860064 843751087 139459589 574241590 193093776 920002192 237411045 39550614 763473503 107619615 898517554 149792171 71376464 847364248 420986120 819479866 123728662 587157211 604129206 207282416 942019194 779328177 459262885 95162193 137663937 834843131 867565616 135379690 688438014 917977375 238720337 633516409 918169161 233820848 155601893 515222359 568298591 786706095 624429390 965475765 843258279 703592248 138748752 108425495 944840386 18429410 673903528 77552949 660551506 67314291 969460886 828823820 331378236 582880997 651822610 49437722 705517264 541110199 995873096 471986600 332777204 581756989 474426681 62319811 364506725 253450140 538599138 438731206 655993561 521556001 441558082 259017393 103100759 909907274 360364435 541497197 194358484 463793855 19973083 766462573 590091741 326157474 130929361 785862187 999339669 133449161 778780304 182506078 819178740 517817215 245662990 996811383 886513830 837287673 739951293 453244317 164517653 904619890 134839995 600907785 316503507 428445199 134615685 291276968 188927547 376516680 594913447 610047444 457367087 627800451 990179037 332658870 682775893 608938815 707783880 77064318 460371584 598307803 44553452 225169587 293610436 301780680 641058887 394295010 895711100 463608236 151054131 177164282 195745654 541297789 776542116 825177535 884454142 546926013 353467823 821626489 897412231 248751644 857352045 909882458 247479116 936591156 263053489 16727033 347508552 686932844 294679997 330330997 819283450 716125157 667987732 326470007 724803190 161958382 858568787 109965880 446078 587265097 645817698 943058466 88455722 514721486 520628788 13664185 711056021 419517783 223141338 294762898 696632689 424147822 823052192 824375544 43866144 352639732 709121772 768727443 314178766 29845088 291830459 827292031 898183538 429881151 83148439 161571255 895033369 806169663 803209160 573927431 326288775 292351407 321471824 396839496 219671295 72046180 607268319 584257572 580450491 196727464 34039040 882112151 123621312 485526511 463589632 339581380 54618334 607438105 762045911 610066700 233301163 402920850 420616275 304970426 285123215 900964110 322777997 710520882 602575674 123489485 32436540 543577909 932770684 473967331 160345749 107527895 994190589 944760619 8902994 591898955 531513179 388673154 756248771 515178385 802938046 749489224 408606113 873211611 249778727 42208047 816694909 795368809 616385002 532896790 386808523 358346628 219527916 778606818 409302832 909058211 201158914 425195431 738562522 323188003 231292658 742818463 799288099 781335807 610001772 999564937 355511019 791869005 11480853 268038194 419309964 223205070 584423270 777382202 637994124 379101726 650540491 787545947 598828043 586493958 3129171 460603827 13252443 947589390 525779642 526178244 217824703 416997501 815679616 939792960 684773405 623564694 377364621 179369415 51388094 42259733 570362227 258522261 702885460 706838283 699552101 12854637 713300804 90848426 823390566 736486980 494965346 521709711 321484220 439245988 650958539 933805948 762084350 715505710 153517441 149608580 991748709 686853466 752719815 196478892 483024544 900054541 885389875 839513890 611347847 447884010 74610477 856225712 570707753 37862966 648438296 163537710 844552461 780064104 580359402 776954691 447168690 986189454 37619826 474518168 584061405 463249552 10507592 331242108 776060703 607021419 385018195 748297307 971925690 109655372 310386101 929079473 524263507 941909198 53429039 264183645 145333066 753755757 65056916 58417042 568523653 30252925 427003486 955402948 216146914 423407165 817373514 802008945 821590550 335403275 606193224 715130613 607151536 159418121 451772286 314038650 57548799 915843654 800527030 824049743 98804455 133932499 357887472 15495290 399717079 126394960 335480261 813510609 902767039 349592582 586572497 507971299 65510121 584616584 561639480 860426455 460866035 100915176 684656351 345921903 644895686 694467442 962792986 270353684 138776586 10700412 999274340 9711860 205523823 649431814 107365737 588297832 577428818 889836959 10965857 600456777 528139639 727120694 559010695 156507587 493174878 236294291 457009453 985382194 906675779 825727067 114680339 709436163 376032203 197498279 130827084 235604364 558197150 702752513 847789882 536034043 951603298 709056330 114526483 354067760 599168628 215573710 401811821 348226917 345709028 36286517 848815047 827027249 40783693 513999965 577311035 854776838 238008973 749033702 910717193 73731339 2938310 835756586 28974020 109151934 836583051 537356745 221055379 539707083 148547157 22799526 114816762 514067208 338478373 876922902 926651831 208677745 522809138 249310558 960429912 519209466 487615348 585795808 441153902 264069279 788286587 226941548 901618742 747187490 738660370 701708372 336674104 197334926 814622324 673404343 176507829 843434602 602465485 147658361 834707947 519552828 387227237 852787585 795420182 505451050 34539007 843746755 78261843 355895872 447051127 289377024 444343158 433033352 293612094 81904113 916848919 396748853 20389218 211519242 238505016 811113366 119972652 978043469 436448528 683414654 541059431 974992737 789221395 778994441 75332366 213387794 864360266 521015672 468196850 306453009 479775325 764136585 219529551 9233607 315274841 535038519 648126117 495162729 362193023 644379311 134144206 194736143 372887205 436365220 588804763 375015652 742527881 501012046 308464133 985195695 686382128 344239342 427171114 820857231 682513756 639814924 76437797 480954157 809531667 995281289 332269129 752217055 143271164 232596146 487101625 569128262 190627892 174782731 898682456 737805187 80761695 676868578 594844770 503371897 388568820 509640533 541479458 496805829 595530135 672085688 998766843 43329964 285857085 834981403 357952060 284468542 370251863 478299124 623807081 311656298 359711633 397050940 16595358 556558218 175861241 960557784 246081378 802041651 574304766 224012448 389946322 50668406 88256734 148831152 628472662 87817330 907292730 826993156 328435688 279129048 14929851 399565579 839563880 53226048 306355303 579624583 201350228 847498369 60205022 623991525 872568406 904481743 484205214 147844366 556598953 215393348 182505508 277510708 561846192 315624088 118960153 55526476 656150152 746674531 102986992 439084335 250537667 852365053 469101176 343039901 348424305 400882132 300306013 802199719 280935708 138277520 648461029 803721062 159183045 927776103 683167280 305747858 116686828 968554322 270417900 264437015 143156974 74411109 247628343 314181994 225939351 66575647 975417502 579802880 460212615 536419913 248871841 480514056 724287082 600007223 613434147 441971315 387308160 67626922 493051822 977904123 545470367 165607057 191544663 643653108 533014225 938999685 243505562 74011111 519672804 279841101 694585543 479031411 40437691 174738318 983683823 379404090 634115949 401256558 14545552 589887814 897037567 32199462 837425309 195809426 638087248 453919360 92336794 573673909 429938987 227566279 957267796 372582682 437752132 733607809 413783779 243216241 646306563 466060884 710507111 834953319 691273244 805428474 477583229 937147306 320173607 605477436 692456471 125258425 736416647 411627933 798371092 120411796 811809249 704100717 805767378 284474557 637097387 607446269 2300835 790801838 602439542 876346279 963552886 122701382 919560295 935049732 703441259 922086340 684320505 888210053 294441686 867881368 115740838 546990891 474174717 851741460 20495581 574609757 812963408 965919207 449067989 18825799 192686360 197718845 241568786 94193835 157664855 122442391 764412461 128201485 608179405 8095550 633690674 138522578 590815094 406231314 408454450 411233322 402092450 612416162 456606949 949689494 654461683 586683281 29372319 911463727 340751814 195500996 818698712 158515291 942988016 646336233 710037632 957204357 34332170 584829817 207739048 936343981 864714639 851036676 547119577 398892334 129981224 75828341 765904096 650346261 988876296 763283067 711444128 6502726 818114126 108559509 777348393 49342268 990499495 681961278 119748579 963801723 30394084 313733157 130488598 169612731 781349757 94409678 491125614 399370602 768777842 606535579 540547844 724609865 103194740 710182704 523643146 309260419 229112131 561321156 847752393 371254142 310026019 270536086 676061441 44969723 717296977 576580067 667762060 859915611 831504235 163820752 990986589 947042909 37707926 231054325 175836899 128327959 581749279 56254034 529967596 21222392 378820647 652282769 783044569 666988518 918240837 42658413 277826707 627405866 893052413 201899386 557486863 531444230 135608468 530379177 860769719 382501054 655173905 685939285 462979391 176019253 123581298 763308115 110495277 303821345 952070833 181156744 746111123 22591750 226380906 857449808 884887306 148947206 955998681 800924707 33124301 759448876 626825175 456044620 676566491 643303505 472023582 590262250 583262105 827734332 91627095 437070335 991206590 600229715 930127205 511616053 619004241 865769917 539389876 746968316 808119862 389058288 918715228 51409169 939944938 739727665 431062057 72647699 597899224 389410934 534800480 332672495 842841837 339521731 467255429 434013639 257714467 624265010 202839226 384613092 222186987 282962096 309763152 408919214 69607444 925700394 31162184 619841290 690906116 350709416 181473500 318717787 164194332 947480795 296120413 337393291 390815586 68498821 540480158 15926560 672483953 590115529 429662146 922279453 347299516 301012736 2976745 453726823 290816386 823437610 836262312 625110934 157652335 578092860 833674577 28965999 339368972 313444842 856705708 828875760 633347948 492638608 836350950 315675429 372077497 33544139 712476296 157569497 63325597 739072565 606608292 15729500 780271924 848681588 349617520 840846032 34722919 38266419 220412399 10867383 581554506 374904107 766397920 296379396 292994193 50477393 629433961 799611863 107178064 20881311 982166395 786771738 11748864 308391542 213913212 648944014 802956424 978589133 726808370 268672977 493448963 352245546 840345010 83880350 222851059 819987592 154730079 415528550 177586242 32449605 322989365 754957496 547967802 701092890 826313589 862220737 651558562 216925403 521667182 979230063 744385304 676669642 875181737 203500904 204549862 256666104 611157614 821477402 810690699 902587998 2891918 264287073 82475438 530081374 818620019 847866105 118959594 462162526 632401900 215238618 712251950 107191253 327256674 291563089 929216897 704617250 452161920 582107463 249947892 257580487 575918370 103035490 716571127 287872758 594261762 860970773 78983595 612385782 676214922 770231738 341651906 603834804 293930338 556607446 187431368 460907033 636511561 939919853 678298916 87351323 181935918 761101352 449926012 282422764 962923707 870647653 895367275 715511779 174856873 384273852 222779850 185505160 92934248 701333938 233651274 40079363 953718324 725461684 154692733 144262447 390975586 413629249 250513440 857489267 662439731 82767377 766783884 254721277 146356958 224118815 648800632 448569001 219426798 818044993 778476144 718498413 900791668 357297214 207003435 270556625 59533840 215380550 142834864 520764298 356955070 295353877 758307870 382482233 265788363 968156323 448698977 441294690 972309626 382685236 38412054 63673605 823224560 846259694 504640371 420169132 814877090 934439676 598441965 266489793 930113418 950794792 831534574 687027874 892931772 847605932 620677454 476260179 514408242 832758313 848379566 500261070 372683770 60751145 517192744 215720597 733122916 945950626 815694165 320069996 316105441 492351129 608216603 295925517 884639066 918913233 410985969 819612921 467577698 545451792 711080184 500163371 182196578 846722817 792134927 365960493 751764201 13758297 984365167 746162488 315872423 412941080 670032957 828428290 754328159 879872760 736641201 426400758 224547020 908719931 501986238 566099298 430677965 369791799 397510720 260053353 866019228 396881613 576865744 114700194 138903418 41251730 684131086 686392578 856956645 347624585 709294525 163769177 960309149 369839838 324178623 711350985 481454301 198986901 392578620 293803817 932496560 782573086 616748033 406917894 938178867 909932570 330757771 318968745 784966573 998951972 638601962 796799507 414246348 369322801 505887169 475929747 950813750 358594218 343754433 379476203 64080900 747361399 312030448 614484577 625355263 222526027 237375118 147865669 498094014 657002708 728414381 801265002 248567724 913033226 658406180 400872925 373418470 945068852 277083387 356844714 630731545 450930757 651635512 425887601 387424613 243694397 76930207 637945597 556653820 112356915 675036514 318288681 4398726 367371776 838783864 267286596 687112113 805203983 92645974 670533902 872866368 928936851 252697260 5629072 780116176 145593181 268302307 702441347 41824210 872551669 384227360 826707684 862091426 627212283 453850607 96065257 52699602 365630007 777446573 678221498 448229594 144324954 974521523 307282629 876689814 77589948 548071252 358422866 650457425 616494734 947824597 355687085 307347896 361598665 115925927 878057393 379871932 977716603 155333857 876012328 222105004 593776487 912291870 622224235 576995798 698281429 121039251 738247184 612165032 787465115 722690898 646546341 176200441 224558224 969242901 28684772 197560597 216037826 790756971 819187788 128221918 530604874 738877733 131941381 300734547 385866972 328640314 816519029 453078438 655807705 635054252 54171938 380609629 934618086 41953041 556262595 796739932 931146197 995694253 863850129 217118402 438128460 914335707 317018793 631899677 330100006 465107869 568795177 425328740 664411486 772279826 1221263 844052113 368283403 952442463 781833688 815929338 868599598 610819300 645756919 446908011 947269924 568702641 179080338 306627309 48800693 466796860 642412849 775901916 240220460 469360655 138576600 802720489 505529508 749278843 868149810 311432593 662256057 701652355 606121809 172293153 131645835 737220541 512571010 42987132 614229327 955381557 955229600 415854702 20033142 897631017 736167611 207552100 813714800 579315324 36337518 836647807 57326961 726948676 783075712 174557757 518664194 149757698 151220512 801456218 556683338 37755643 270916056 125405953 515377209 84906473 579106645 720335756 84473554 745721935 671343452 276067640 846455367 935621622 246715131 317603758 740737204 695150061 97996594 475003640 278985444 897240601 698604110 580723289 750382899 197980250 583083546 338124464 193501895 876367806 807503516 49565053 530240675 780625221 862210261 900734838 504674548 547254102 977316448 899710735 319496042 507125138 371174635 525173915 233996514 105469515 873428721 63684185 778575481 377076324 884900832 259788245 782499728 804356950 3642621 310621381 336700483 208042813 938471077 312540088 488503879 731713346 355088380 35211598 810880302 521931842 983245302 499269476 962220863 432318359 442018006 771433690 665237785 40368266 711375634 323536737 661252641 343951970 388261843 932956097 598757619 508181280 947620526 666897522 602146570 336158159 192050055 845698952 550075389 573899856 839608534 546903809 217797218 659167891 503924501 571068232 45602131 597195054 438326563 221665819 208671451 378055003 295691890 876668966 638727906 861461746 681031878 295117501 466644938 734484040 884420187 842371993 924711254 239948325 724264645 511324598 993260590 481034214 417644264 704467395 984253650 404247294 637681037 751755720 993215416 246225520 607710847 890524039 519947920 724030213 44959393 867622054 357677630 218224236 139400800 716511107 661457293 526408885 753182060 318487710 220109280 718671816 953867960 670039686 16983721 155850812 73266260 502854629 363854606 457755112 738108769 706902208 730992116 254401238 141979149 36943672 889887156 176748778 647822861 992442524 544775859 89717306 158458607 909480377 919035921 139454041 627844989 91766445 173603509 838930918 827933619 448639039 301809394 472049904 168958849 416711777 114732598 604492678 891739107 312285373 525331015 368847538 981387676 863823407 235867373 596642501 425670566 540759903 145671184 191820035 184904979 537268659 818829967 909445121 169876184 220191831 37061973 452213501 850888568 137741344 932100277 628854359 814782696 729386817 410229682 402223171 156866323 537485265 905356975 683163986 814484682 829863084 673392674 74587859 16323739 899743938 13970123 857499442 765899513 727761575 779735746 890612049 541668884 70296327 793953850 75425374 677470016 695656555 299840025 419595605 372693565 382778737 488513890 986711090 950083834 96729769 165593062 173977078 283561907 404724081 532654733 883760433 394209575 115084157 554003915 988247647 71962283 614299912 232835618 692564884 937915826 36975476 343395816 889646160 777266331 75215032 666030009 533122114 779479386 129582280 112839912 854011793 890988393 733773356 85929818 940189947 281777339 960772688 598590154 694867482 638417211 337373022 965128895 988323030 421643307 278000383 895177425 272001633 46790221 874334525 19120135 581355191 142287905 52440236 783929912 480610687 120211511 445162243 851392434 33707252 436569820 649206765 410436755 783316631 526043888 818292912 703773506 214882258 43656264 899622225 600213789 257287278 744649942 472694282 978125665 435943350 9927566 212441022 197504138 539421041 994612093 948127078 174208789 918453722 958193697 829231909 635921964 153985979 689595677 351852243 368631593 224083874 402313272 404880381 140271342 315438012 407013048 595792033 698404296 390338158 738129700 391336038 276351296 682308793 616567487 230581237 63046696 446604869 760262207 251220406 158017931 565929050 879392050 629708279 665058672 720324001 280659366 970996094 3681424 559502795 271897334 978420269 930837800 314460555 430498136 732026585 503037846 921786578 259510010 85607245 456929185 246528894 533245912 38516335 295687275 212851550 953453684 740794886 645142091 633984667 128896469 452096345 564371139 531462125 676082933 560756488 662400961 769543522 995706958 92084167 455875789 829271117 460513752 590964336 448139960 534865974 893547248 775141645 35666985 774441800 308213232 186703657 171018143 319831425 279688929 405616290 332905107 599372565 73860640 994764874 644277296 487190693 773998437 60366651 932845526 214053633 285155811 49304804 846205724 233770798 529277492 926792542 494462024 656510395 606179028 77957960 580392031 386206256 781177001 567900201 272730186 131997360 22750510 639966020 832255959 564502950 332723444 584603285 288642393 103735971 822678871 618524881 746244396 214750826 479559631 740246740 376633169 13724186 582740988 624130343 314634644 124985460 647509317 562448521 981346647 894821098 857781500 29334569 296627600 13862563 797291104 941657843 456944088 365239200 766512848 569956141 457642300 434689128 188241166 324176507 808917968 760810481 917960220 282787327 891544313 876172977 110768726 183224867 933082864 487976118 957959067 114668395 574052209 759188190 366044160 906478929 486222528 959644718 474719708 728150238 470480512 29139774 972529205 495567395 931961258 934808142 828452519 567018176 554012116 62315676 780489448 663733256 655890084 251858444 662343790 32961156 197165689 353360120 147668147 183733019 617776237 847731918 71939159 164316405 617855470 817288012 994402569 914635851 981222422 126123847 560925738 926559179 771538076 789076811 560348996 207994665 609356354 433134744 799117923 588491292 315639776 372993040 448961106 824434961 541693503 550392140 945653832 878681075 105730223 276514398 1870893 54006152 647776430 855573559 968264428 990580580 456769675 811705766 634642350 91208054 234653829 749096233 829445585 436318198 539587190 743547294 78497235 349138955 122284873 362510233 774863599 288197590 976462522 766667982 712490252 699542920 564956031 880428612 803151194 56673941 931661556 338447733 153240645 879462756 228208804 773350920 835855194 73881736 33956944 345590666 523229491 782916050 702612472 681430919 69828834 889101226 105053346 357012660 508904469 345557735 381838084 241061594 642607130 728572961 184115964 982578623 62435966 992771221 629391384 438602674 979350087 730031095 142130414 4951958 859001285 586474090 678616697 520748311 192307047 845435069 927880260 502517187 659726320 457146615 857532564 398704632 978993576 547245872 949777334 816717705 599807301 878209160 800071423 314466668 696417285 469183060 717263497 692105050 592664288 489964211 520645372 900992936 406601520 435902600 67432883 263278183 480980716 68288739 471408076 547010189 1998388 169158665 296173448 936151339 522129624 773751634 129279579 54379601 377329309 598361833 609441957 60176703 604432029 983345023 852089935 594814746 136590713 658197755 79460454 546740849 39601884 455158347 688158661 162194809 176168229 137664657 864886000 519701959 692189273 163884791 522808602 610035190 413524378 548158571 441093059 290052257 401069693 312002283 436260513 561157505 234131989 161515747 959628767 408368999 742712226 550809744 707809079 710133254 467811347 275893578 449946651 496891479 359042930 12091120 85998341 435497407 477401844 797700611 571636218 507852763 896801188 421414534 58234976 874940090 255349873 35550762 894782695 201388262 77774511 288009163 342854571 704249567 739898189 577917526 753298500 802407110 643727741 845995907 260785382 211900024 728167454 425779633 165017486 383257605 536451868 898468427 147088054 800823153 146365081 644991529 544620315 454546546 779282800 800447980 989561165 841805390 309777505 683116336 557120690 807071539 989259376 570398539 996819168 470434713 356823499 449262553 299993197 328741905 784846756 322700206 52073796 959402608 220960996 895324285 104586816 232368817 419171467 616875869 385961375 794688985 487498862 932673610 571685472 647045224 230229103 371759497 933541129 800381732 813351347 36277751 687613559 311208216 874436334 617851584 594470538 895336953 289835891 767930021 758978191 375108025 941561968 882228594 280319704 969731367 359113029 579254706 238849679 204733050 600744779 368503421 584171428 139414033 434252347 234909564 576788523 100389881 993665028 258751703 96665189 721831915 831614149 511346358 71237479 10474868 85649402 118576263 748169082 376102685 745869647 944746350 934330398 82643856 579022651 950213355 853213644 231416248 935173337 365204708 257858937 715063671 809495813 332049690 824221362 554604467 81934606 511277404 633706620 285862599 340456924 193815659 830898986 125684097 767177427 933489157 846848363 6048175 598921124 757207367 40680738 107224780 967329880 608005104 952488420 465319808 23846278 60643909 874456662 214253367 447965273 814028109 232937929 312539660 701091246 835966844 363654096 108475040 137040293 993864994 350047653 631651472 599912210 534213491 984427440 904457147 612318575 743888260 525508174 840484229 155248600 892331678 658344280 960116675 747260454 285419398 582835163 93763694 329668408 305633010 361224178 196331571 369876941 192419451 602250760 802507845 782767612 4319576 219105972 251157336 736188254 39750429 630382690 148527420 92202847 589486782 275843940 666989315 715259195 950142226 490385918 100485667 335097065 239103524 81604714 207835848 16664005 918095704 982099626 463830576 3845584 831635648 780832921 901699825 244246305 436110763 244072661 664912883 64218650 224933305 405420874 562205846 805314134 405862562 163526465 604083097 262156024 450591112 987671137 692910218 529419746 722814706 222261429 53195605 336812958 150172657 967134101 209897620 853104098 531738632 908061367 805929221 942356165 304432317 388724847 274157734 7994551 110080716 544522268 836818270 94085920 599008108 170536837 490219447 602721962 627901980 240985321 118402265 586062032 164742814 224398663 810934636 436412513 850689950 840656446 728383539 355770571 581480713 285964536 419273747 142509213 368175427 998199201 456498353 255196957 248952957 61791699 122278460 731663852 897261774 921467689 256560088 500533577 625921695 923407862 73317603 765678784 220485171 165459705 940924370 543143816 869176552 58104551 22987254 593836678 15338578 126796952 559541913 488657289 677429423 378597177 253809647 324065228 678580837 848357435 643086054 373498972 572403657 839282709 969389535 297487868 64105323 661344976 825057710 694100987 103881605 444880151 478679887 885251822 558823181 357856780 418108027 897257192 317746751 82459507 470209118 848517479 607817224 804913957 296061831 238937991 858784556 356037762 381411999 640964927 181635337 186231398 921362035 900748018 555276485 654228129 821667528 943611949 644673124 156914338 394307820 655008779 797772340 777194025 860143871 853320730 280776341 849027619 306517059 556289154 842337509 495848495 285109523 42578985 591343277 715132169 801694623 212806458 750310186 392891911 796801432 848872477 870098600 134393300 372122273 381309985 579085574 273833623 521189715 593717016 236862906 926991811 171775348 50976747 766054881 16962737 29783592 2646487 463732762 970405082 379917712 266514067 542151840 410396341 673599126 537184692 609167132 723322277 838983067 58477645 541960328 143971040 871564019 509728047 211693797 871334792 287133447 939255579 124901913 774728636 100632954 181378606 880248258 84194440 357501422 565305899 131165822 582213969 582590857 422644248 831623814 436117972 720196040 56872316 501303389 800516847 427406582 921528226 378695923 337889541 489553045 72484723 596484888 545209989 299611722 927032029 226241056 73607333 851598653 370462060 872975450 65633369 908715464 360700856 556762029 679722899 897507927 110956540 366822199 492125154 12365425 109273889 762755137 163954997 176755984 294645050 669556565 689711084 582462035 605585765 773418578 532289128 431643622 851454262 361280753 170378989 206763417 517047426 962380128 234951564 781042036 257708202 871631093 576642943 289036192 173286528 570634261 278849786 528620690 224463231 632891244 314664896 984351018 999732012 562052124 263675866 194581233 418470352 186831410 825977815 25900012 387792081 903171622 804215205 65307773 797077463 145878547 325524966 88890612 556693730 33366093 355185591 287778523 356941209 439135603 641155603 731550835 408129620 287904866 535182172 356140422 897997952 449780385 635759132 436732151 355511482 96633456 803141001 312337010 514613810 803553282 3557869 988478587 288681804 739764244 734908146 659326801 200456907 277457607 452798105 420466986 756576433 896611666 856397397 266019974 871484702 98581949 387757374 77823013 623165470 199703220 23497416 41058911 587892828 354382322 648575274 325152654 405711656 958932273 883891084 384088656 432862847 745835555 272260726 538663071 996053337 185138617 696653542 336939873 148006475 238734233 736025170 516694611 18518619 347945739 875135141 162153836 201004036 29958261 173748015 564061766 392703295 302747721 715912968 562567762 53780577 985887524 261380653 297276161 29624568 922484940 693851875 127773331 718327604 801382310 109307259 140356080 322710138 851483872 428682062 899667208 902401364 605675156 479804201 826883408 886642368 567050647 607194197 44694139 937227488 602028602 425042378 772100904 507710795 731687626 901739786 446581574 603602249 816309745 689985776 220584434 96704716 295048937 13738777 916269324 721000303 619689022 978520020 944226265 2005015 4063277 795439843 767472384 212085571 534366263 372673207 393347794 911038929 982242152 979367802 881253727 550770646 970423126 882449514 45300148 357289269 365933147 620745278 831146716 335404933 875037119 184632372 567643636 660256808 585963267 168805196 508819608 775973550 967513662 645412904 977192544 494003686 192621268 283930182 977922887 699911644 572519067 175396870 849685608 898337880 821821480 999600204 318350307 277195739 832272141 124944578 324709529 640767680 712686218 562341996 834696541 482427072 907483543 555908313 694166914 197654549 670574062 410529828 849025746 240852287 453790297 207184154 224693025 747568343 254572507 505123990 215759104 188917163 996287080 916469186 337040676 904063399 363433816 761076618 845940443 241234937 750099712 564001730 575279974 583834812 972946602 583269310 263108665 796093818 616366385 568270319 659078719 88648249 14888433 767148029 346945899 570588556 544962753 585114324 238059510 212817111 359455144 98272768 506145109 708887834 216725691 30056658 874971726 910313772 646591002 465635398 823429930 112335767 309719608 339854461 524296228 801165265 915096127 73098241 311217696 328255070 933469164 686366640 279981823 453536650 176184231 760534720 683285571 988471047 157013575 496241080 217839819 915086631 666276813 227964738 373137118 112984483 955879770 223593226 83598333 93940292 144833239 768837594 953335471 706576476 704788311 605089396 120292774 334667328 158306804 26482719 220870585 852924447 786108583 654511556 704162468 908130599 62372536 998627943 982855283 884667924 975798436 835296059 684955572 836174875 667989071 455461895 22574409 180277089 768827623 59824416 735341969 975733646 448551054 89377975 447090151 925456429 334858776 448208057 733427114 834677769 899291273 491053267 556180857 726854707 764746581 558627727 343064039 515026051 455311055 925893695 176536479 249615337 863515805 532606402 841926484 8735354 324547948 79342782 886462202 387520133 637629119 862890995 255072989 476844083 740038125 748201863 690072562 75581174 681455124 671242785 783370494 96169684 161975782 839299596 688693007 759594936 609429583 564590463 876349282 614240874 844333464 273603508 787776051 11827883 139946626 31707269 656372333 25249745 10978061 841359241 679836654 291531754 581831970 543563762 452884680 408301024 634018627 686123177 865855499 387711622 490671693 348652944 185770365 965434041 571812845 677941306 351229895 19027869 859890583 772704904 728289021 587878553 971499132 832898065 121867049 202540805 968455742 816702914 484118426 588015829 530050381 10928335 203532353 643643791 268695680 189551856 274189567 353517057 40225198 247564042 55671761 165281570 929669799 72236531 864478957 884860987 555656455 936659093 950149101 317485677 633392077 323267834 223950356 522844411 916639736 84233439 483473868 377883960 77344585 559151515 4679855 316337352 625477777 456884104 76671276 65247744 804382533 968051843 33196787 185942058 152190833 513491040 963220356 772500479 835274358 499599632 944279218 673735610 263749958 881293551 930403543 170139245 825961911 913303880 790908062 357570616 612144560 447706765 583467287 417378382 882465598 220065171 140010734 223661217 781209845 963383321 336006677 626088847 760411939 16503027 162814255 632993229 776310075 322850648 224775852 259652501 49083283 1827574 443383460 319015750 463239250 296894715 541046968 186362366 997301838 82619811 120262341 510894411 594537719 668308777 654925149 898348219 761723146 563385674 337519832 769146181 653669882 697191012 970450659 433641878 475045774 34700473 200165358 293120945 396543280 565324084 998839028 323896565 330667389 106791293 691653322 49190899 35277591 56146665 793424777 415452739 871011089 128847197 312202310 296437625 905017929 103078316 670448605 452121093 462297763 463158954 58336408 986630963 490256008 924021666 679751108 910402757 358750700 124901930 99836516 79408973 999496853 557464260 406278930 539000627 627190987 995702382 271217733 679849334 109647613 502495305 171632079 943856384 423235865 506246280 224813585 984082124 495246772 258293306 163567608 113830318 677824063 384487699 351668901 228945464 548350913 522599451 999494974 871202847 662350321 840562752 830345404 76485897 353561583 522418385 889280590 351729795 826626083 341130240 289444791 817542505 471080325 733023900 843033295 96142062 322001909 33191504 212212186 362615316 524306782 435008034 170770275 796268637 414902041 492718713 513673011 148007004 541379177 105041698 284610251 235191043 45307681 25109615 426912511 597187405 169469458 507924655 383908390 668054539 126526580 682608976 686865359 828757519 784222680 833893047 434174229 285091483 385906852 227223911 494930272 377358097 716354349 707448210 130929031 966053582 753894221 376550699 647229420 851651953 788892924 728711168 812288414 601811846 417293707 138212803 903079889 179866167 504188152 421234631 44008400 890434263 236877928 123711455 172356313 326399643 219774680 726465081 397353502 291850874 372269986 995980826 171043101 75642868 791477361 452650552 258657481 318211527 492849334 798483500 571129984 558060421 380424721 425378867 91415661 18510334 654842908 712760065 825570307 919368514 251845601 749591441 62810756 193257800 747176652 91865434 845183107 2449756 976395950 940300625 86267578 756634785 622139055 615990929 827122822 844234574 501328616 971293857 895926487 734223585 160486357 293314453 710504065 785818707 782701655 382991861 900440923 956085591 197690094 868115340 464619044 283475448 470234372 105681443 844161421 308201512 381076482 185304931 976672794 411045751 676283209 831852587 761938615 803097917 237238882 175503539 875613835 871161670 321573411 655648948 412576712 46136298 979297559 104611009 989486088 101635772 362268187 587184742 300708162 354850760 715387028 894121803 689506785 98425250 143902034 407940139 446399041 164897 16742764 809511821 326846627 867404343 689111645 60474885 442377559 461650914 507328083 798522037 149623246 225537930 839756594 115896969 820101006 789358488 655435621 979635208 754621026 639194674 672231356 559982130 306690765 870034909 827806884 973770865 528039655 277441466 924032894 548191236 344470372 263466754 58115293 977317523 482445210 532400149 818110213 347242201 189729320 199145205 637387482 972707998 281818635 58396123 62786835 644323135 181868590 129368623 687158993 81331462 464429921 682416901 761056640 697722128 941199770 32567418 864442216 655470895 335904810 387704372 422655161 339867452 489312346 244833567 674499879 95801675 835786598 300676595 493305136 404543347 611339737 678878389 65306502 261147926 662289203 139037795 669668480 365413610 317263349 942645496 640900719 681591984 887360841 62487013 781493379 493711746 806752403 604507225 554016586 710777838 805812292 20076119 88225691 287352598 433594611 196250753 852804807 242474162 832476075 231975119 400996579 951653706 999862588 519202019 135717368 465719776 40723406 35218991 183477022 573863678 825015817 14583016 856911382 624673826 812564089 573820081 539487186 907327319 176119509 502852778 915305766 443045875 537707300 865139471 429647711 440710177 434205323 130454675 987140518 482550525 27644788 535587238 572817273 843819754 529320333 656825478 958531516 314754792 459360581 65808780 919016808 905046981 223582806 690597547 93822320 198635092 806726040 151672118 462294462 266846431 244061500 323843356 908008912 634907247 940612369 101053143 478976310 784245458 848022639 969957717 713320857 18528124 45622747 809725477 373430353 910577127 646287769 976633457 729518679 732864435 974078286 354918809 709799701 550831769 213404681 658393136 610906364 281377078 814816464 980961973 861065075 241966022 966999431 650414310 945614623 134439588 46511077 132282007 524318337 931047469 666336072 682356051 88065523 427392291 813458242 906334774 172040336 660622182 59903748 809085617 589846880 243272509 318496578 536301758 316552263 363729371 69676614 235391165 452350103 206710607 238344922 590987691 686029349 718303551 388452286 943550550 684246959 398219169 757731380 476589385 967144751 225306554 942586511 644860927 768559675 725178128 324582948 164141435 757909855 151430358 71984458 571168565 569122916 511681845 247119581 450500929 599752147 727445169 376964716 251915353 574244736 135328101 956366122 189516236 491930479 400658608 684874641 778631385 785636885 884305259 161044210 641647785 664346483 49721254 459198107 663339108 895598358 301637583 225655554 982107152 571318315 700207604 289183875 167291291 977956279 579483496 913616209 843569232 96540342 119953428 524871278 419299609 38884691 763508833 460020900 297130907 425278554 290701176 463500560 910796771 648542719 567002669 715183064 765410772 906721252 927146311 106470668 624073819 266852574 665181780 418499817 312232903 790447236 116255317 182687197 459599436 175950951 671253612 92681502 2941175 555780609 667948069 484544456 618744092 657744771 916130655 570763195 589013596 108132040 253071024 303026649 907781317 916075979 807673395 186822709 377676952 936738846 160435768 906406394 377128566 556315159 37577856 422197541 662698131 450732309 903102495 143479704 598765406 270158900 606769588 699782338 276455785 244923131 196442664 545268953 777320906 718306400 218662246 708156419 894260126 21976679 863290932 208619363 740392953 187122721 553236713 667598426 726603779 395405284 647024226 917845269 859195829 935032133 450605464 852637109 896450064 437074477 464499992 812867429 921287817 850598773 421582183 213705794 271184859 618921164 116784454 448068814 602822439 336113394 34214795 669211119 363076912 520335870 184979115 362375113 922945041 569043120 246249118 9677704 608244421 150745703 302093783 565077456 353936243 421906951 271318565 223429865 488722873 409990168 10004806 138635781 606919001 354291007 439553386 452302536 251829015 790274181 573721416 969764885 760126557 417202401 221499448 340743244 804565783 447752205 115782054 993928275 733637743 326373290 686272377 607866162 40640328 601536348 413605724 572075025 490036462 356993780 413837029 35043119 245856752 851623478 579434639 99444653 312375601 403716177 455143628 929029965 393222411 317727438 334586515 720696831 96015695 621652446 3318074 55866058 511844370 445312542 828520594 136362228 77378233 490901452 813290434 90742953 172465777 990565277 567273829 220062812 294242127 741685268 801020632 533078610 776154914 42941012 945976484 57313794 286891194 893751361 829105275 283972041 952577893 573741132 664005146 522037939 529607611 349759424 821684162 228991779 172513217 749458301 941027707 686453201 914691110 136454695 621244790 104043468 841835370 514521530 405385456 203701685 317225545 122567812 21230541 498190086 280753054 423803825 706403433 494375739 235499896 489792513 608919425 341520887 508454852 662366682 951102878 261496423 921837489 418175859 858769708 201971090 213847160 862100404 151805265 988517778 352939745 477069790 418723928 337959556 300117435 670509086 278465854 509057690 601399987 559779009 271788330 651894038 967332303 915727000 376582379 360807633 979692738 369128948 835801766 568748312 488031509 644632109 877457381 164901542 441739978 128302298 68102846 885345261 988309290 921598212 602725033 689564887 624495884 504621574 160445919 935726833 86272372 634704045 459821631 794628627 523676580 935447753 635044512 549050477 836184129 363289324 729813078 197572998 614314780 486758560 111356511 113153134 593623415 104291345 128043582 165088225 640968383 134424721 180187767 510162055 320280325 329742245 503624348 452197712 228772162 324522136 904387684 191847682 772738083 72803551 198553342 929567268 491236994 659323782 227379294 352249232 787245538 627263105 979793636 925164108 382514242 386114385 886002321 25854564 322434934 828093010 754946531 999698990 138468073 950545977 185804081 859785965 931443620 387723086 87178545 820490382 939126445 222406690 388985627 141904199 347464729 212844732 116892814 22067154 106670994 28813602 524696332 979792460 829267280 805050159 634716972 968448533 675817244 168147323 970923954 957877667 344829089 265202993 384029727 265390063 204262664 382291088 946842589 644501388 463457356 31063257 421824482 46623836 577151686 190697881 788028131 172027179 760387530 112250711 398737725 323052382 24393038 114764742 385733867 716972940 132097184 51966081 64848821 622362458 125540573 9439583 273267450 371263164 206263377 483596340 693088287 359197869 607688522 292108295 60179228 921678615 113650048 530706758 814142965 589073639 309015165 57933553 677259113 272753771 160308354 889748534 725018854 801710627 130933972 661790776 647242380 768404859 140124285 39863548 954883682 568253135 92451575 757609288 753084261 792886612 115750119 283143595 323576497 48299581 829637531 836521780 161617335 874965048 165815172 786761616 342010795 779821202 498706292 688950030 60652056 639533103 270704401 784026033 725679880 340476118 277537562 551190742 368284845 200000916 299104885 334670332 143496089 164778819 877570940 538572217 614503566 465705445 446241632 8653402 907447217 746185196 636789113 636277452 351923635 118990226 139666694 954621633 98167794 889070367 474515096 666989871 244834484 780004428 564941261 30910837 700264568 581078680 829293204 386111740 940677459 878310150 613768090 107595770 290760523 912732092 860360947 336930001 153259500 543791063 272747337 345296776 921722207 390887856 52508485 685834067 532233965 372651060 384426348 234443240 350979450 207047589 498223026 502756072 127425188 584130515 314910329 689606045 90667649 834889733 539304119 126672707 299604459 335133762 934945928 209841112 708201770 626602934 161157457 655894844 924593967 237490603 239873637 366037807 161598259 253371806 794150637 610536862 29068077 201511733 49517157 731907024 196282479 31836970 240706133 909177732 80140441 514137858 90818763 94325724 363744296 225513897 308622006 226679859 391383727 852821565 57581158 739419622 215976655 957196831 459510383 652840110 104743024 155035276 322104289 733868524 804243330 247834862 730592535 657001578 99443678 313742826 186837577 653092189 602260052 535515096 234472934 738406980 930897451 676181180 827849474 537408386 433080718 530785084 115170527 616202535 272073318 927700370 298953132 547288744 22732478 752912805 378242104 253467479 686511730 34409159 6202064 714958306 632213052 961481999 516350170 670204082 151326824 45638473 173381561 450262747 297656666 75407903 312453928 759728308 885228758 198405009 499460643 696566299 483051370 741869029 304169723 668715243 573149083 789101107 824072346 96003846 105892121 891592674 12397753 960848828 596063659 867296754 469299900 350830572 561492545 877951754 778412582 363382020 898550662 291528230 800175212 992330926 967334064 37747301 179264483 853440028 428936299 79563414 328687684 820910045 570776909 609794305 803838093 389260713 672182670 624828319 658583670 313966259 797249513 43882247 319156579 996670226 141471029 332923113 673323195 876243798 565840061 760671608 423096977 327582240 213860080 896509644 590850059 916674297 249886426 708881352 562999572 785028292 886205887 316612739 745803162 990231724 861805231 34222976 125759972 668543164 830963747 169466866 459799216 356126963 751281582 842427991 708176080 245423874 945092733 552878456 857041124 846506245 732789776 559185823 161722282 85958180 801167182 733570197 289825919 348213865 410575331 375859997 202085532 284775610 864642752 866374331 142836904 779489843 723096768 706515809 839624911 220222700 829550912 226311305 695757402 732195711 491842389 950649057 273581328 50553405 152984929 780211826 390419738 69037198 885958617 726308212 595642403 882016760 511431753 161917909 815343785 121849904 461579187 219389818 1138395 617782125 713457990 422956569 344799343 78374310 387794293 889377607 459106973 448403142 201105400 909921120 622103266 213682822 479111747 643384401 971923478 304699060 940721264 62861941 287169734 647176091 555125762 902515559 205841636 987202758 28155691 364928141 558712650 530346852 88521988 844392989 253831587 453187932 332794883 133718464 467921042 197605574 474379831 461846564 605386528 39360017 70300099 389662710 105617930 301652620 128062790 735010081 110039012 331833042 815905351 356882336 202303892 351753734 826466211 384399181 512766025 35205236 586273834 392121266 882733787 235347100 489032367 579573423 710937614 51085241 870507976 215218574 957795064 553943834 377010759 510466601 368649761 406127285 558711228 555229035 364968591 985043720 403072296 606479416 880216794 856116322 666717519 334350284 370774840 986920700 76942941 473531219 878952559 567151482 614723387 558591271 212635505 726971747 523131100 583034771 174788340 900798091 651456921 902197924 925766806 409590443 331291002 204904747 571784394 927480001 169795133 123058882 56094475 97671988 24676314 520923090 243205330 228607610 288258325 861555681 559817325 221895681 587597874 27793741 88882282 699686801 169045431 279232695 785002870 689003047 959849405 748747753 607458466 110439902 883424239 69970463 18238487 275852257 836877566 797376553 679181048 52500361 934716726 164014631 938194674 887090957 716064353 613600164 164939918 476923006 348584431 749149285 144186305 915824826 263454186 188244118 398260363 201431828 872085972 220091885 649955631 633821773 322865510 739874902 331804585 737860937 188357295 588641096 19826499 645646449 839580660 981908111 464299029 727448442 587522872 877355802 726830160 108048903 438188269 538381102 886782901 775531163 360220379 185949544 612628639 333746485 760421434 200090580 341930208 13943060 678723114 730458385 501507698 566199789 363550448 254360246 384714396 678500798 561658871 620444185 459481154 616341451 639556122 227180927 302741510 910426060 583909801 493748412 357433982 472004779 661575223 686262994 926842663 432835448 755974545 165213299 344630687 934419605 360346489 440349442 75628454 105204931 321568364 321724682 984005921 32573549 110934773 898734621 234919328 995017791 871888879 175235741 485758867 581276503 861922533 928059519 170665005 508251961 888372029 458843935 126239146 626817469 871740414 395935045 179222380 657412499 780972091 766883612 565248467 57136849 344935614 84770242 356204348 461446158 341143768 256572810 753616858 231981418 788661629 167788221 984243417 624412833 290053617 193272605 535973719 23113045 772661656 226493539 206195941 194750004 765455188 107700353 822345609 168982851 433368479 334243637 695673464 960333526 688925531 31290321 937443107 738056242 930616233 411229659 519906287 874530454 195422595 581375926 508168095 432114859 320211119 984341101 708760157 89681294 701766384 283588144 582860993 594057006 288261870 765454346 813701636 833416063 366075250 153411967 873323945 1323316 139638414 24173573 104084160 109309531 336425525 369435960 240715892 125674501 520122888 923495845 901968831 705208018 36968731 97911932 187709171 717180436 626466418 595464840 570884922 386052298 220094450 785785956 948959124 466167610 294962710 783632216 476664881 411887156 223597289 557375164 401909190 133621172 942768344 113119207 43505921 703645760 17146529 499094355 300595878 455055996 496695899 924734860 701063070 561774590 491348373 204116116 136500921 55493018 896666285 451100249 522423000 335333256 15293290 579555736 466798879 182439495 108167065 694988833 885788203 232548396 470864021 195563901 405436899 385627426 1868111 800390845 625384889 149908577 278344109 757755204 519663115 28992266 379795742 931197553 666574928 546421531 600495877 929254897 823757507 78177270 51516998 900937291 24499893 943995824 717506651 246440949 982089385 711443213 444650335 948158587 132047033 927049571 163217180 670391767 516684417 948059802 836022646 671382783 547057951 974455820 632269896 998416601 858364093 872149630 145937446 888238402 485227163 35765963 726553567 511093819 805646137 459153322 817262352 878714804 13034109 351559019 758527149 324941105 714029112 100243342 769245181 582202014 482845327 641424152 675447412 635829014 358556312 424172216 830201513 928205345 537921299 934859472 502255557 973243120 783795959 527081403 20899396 412061351 190487597 911167268 903986099 135334227 901773999 446887269 850618693 682657996 395419464 5588299 392195918 339427465 148300876 324831573 515989257 341084936 701542008 240350525 908944214 844078319 55783558 599874878 231888016 885791230 221469564 642790294 164686197 958285687 21927922 154777163 108699731 820487318 891128085 194571764 592676356 781187910 444259124 46445142 150111589 664087691 418736535 89707853 472444272 497799059 811179116 399128032 376669967 833144598 791804642 427917294 813886155 624679293 196555733 956800170 333186812 887273326 502275945 667202297 208142477 295713257 487484655 877497178 700565825 179713512 862241466 393962835 861047211 191955885 949366681 950042129 301739107 244174719 644186578 524348549 507444334 302823972 156529891 168305037 726236572 587801650 462935385 551046289 533170630 813364369 529129515 784023509 820588266 220008316 910883058 650625025 271249345 734523142 991525579 940300638 723598298 79934756 185242243 464097639 5747715 321333657 229641497 683617360 919669774 502451047 885345885 189906993 109622791 297001718 140118076 412847353 359171628 345897739 285724923 485294089 88015720 86494790 633348470 362251765 128894864 764657613 499595625 111021963 208015708 58241711 631060819 612190045 969799992 537582830 616073649 286848557 980396397 868269242 579194089 954583651 440357018 409594285 95321459 825776167 348160855 174455758 501478287 523475093 150486512 10562207 354287396 325593726 949566834 78751715 29960771 20563500 118427602 913961358 430383836 577462668 810439237 239735385 906827928 851055722 626149455 771273311 204392844 541905774 601583275 893771801 915094407 727503741 559514004 774561584 809187340 767017331 844322575 558321894 83402582 374010641 325595303 206230793 454293492 340665723 427729764 948182595 883275288 413566220 114165780 960014281 95294116 611582406 754513971 728561939 329233175 581031689 966549199 681916331 179588314 911298170 407190791 528757167 593819273 21855294 545568192 952104246 549794735 208591278 826300038 652572586 654991655 572586600 550868052 264531787 647936123 962333891 594933902 497018918 99302469 391130609 30199225 972463212 287972481 151033217 964306196 885778834 355263371 619924272 219777202 344553868 985901828 373162961 609665504 76977899 514845180 786004618 295804589 976086275 24906063 157768808 267471039 497012434 53477334 55731294 231788623 891683280 933667718 385782115 702961495 416416498 660739946 770646133 901941952 158493491 75946017 45722474 552140233 47065923 433140597 815097787 764941573 197515812 719669860 521299893 896409980 589053911 889517966 453200357 493944413 874534657 855655403 958995925 910158224 580289912 597238438 897420323 675173006 109470355 344296198 2822619 852364472 847930953 738351271 916302290 253443565 929004227 291643517 856253424 304264467 764899467 984402734 896806002 788813004 820694509 479544827 828275495 860355301 160677457 119383093 694488485 661385640 188071832 636817354 866373789 428796267 33160658 488079239 523790879 598821757 988771320 246907761 342554224 80353454 11599762 576814117 489215455 4162664 269099045 651924084 671670885 109356857 750685934 235611172 149848894 58066578 579364199 493300544 368222022 672028542 452852214 359451892 907624730 410107500 933152959 268926207 569473610 610313851 761320386 201901741 10004645 234267047 958962717 226050836 265675394 831339363 936411073 548185437 215492812 764748281 90983632 436965077 92332611 117197244 314041198 26008271 643428079 421719170 53758199 839412813 735132917 826069203 791317191 636628317 857153947 385614310 810437490 348116663 278282890 324628195 724213293 719413804 313852477 469292135 734820089 278091781 598670519 495947384 51176963 880782086 195181815 56534327 928632966 942792133 889487024 818858899 818213341 594586624 955618157 855793818 196762368 207490932 512168970 269775163 286437024 963268870 204311717 73442521 633707612 756342379 330297844 316461710 494532769 283308682 982160367 209745486 588666978 129762150 320026794 672379258 394943987 598436319 212585684 493786703 612896672 725520876 720082269 103021620 540674881 478914273 303418751 854280117 363975265 726880070 475429252 496622070 61869911 864983886 305993617 828057728 867949576 413683806 941524046 710598216 320345 842676783 691729395 578481785 538362975 464044628 573049090 419258674 246100891 846922586 837214805 758773729 942115063 169837337 254174715 66827810 578849491 6120150 501517430 145330719 351275756 792798128 321801434 654531179 235180564 615206012 167788192 728328335 35011946 719546992 652779290 488352167 74873939 278815552 73492633 393444441 426050620 30619354 104180277 507373050 133969419 835903131 962320779 165952929 834329015 712005097 33069473 455778889 529747043 866355156 774912079 114580525 691083288 43527724 535956219 270501182 95794664 424175893 754452948 280992962 614672340 460199703 692813427 968470200 276450174 928740744 617723432 246658249 351040180 50932613 90264336 228867345 108665659 728601206 348900497 74862980 877699751 156863479 211416305 464680519 634206366 943994564 620045753 302467756 64439895 675916557 678093587 337053301 238209076 600785286 647377041 640998892 804478678 937078609 698690896 831559275 862985467 729162258 8646498 244052001 866887329 38972207 885986181 786104418 789456007 255405599 405380245 932319666 983309790 232688052 4604592 129005869 372854394 469515548 132648990 349887441 255800598 617425351 147256609 742207944 879574155 691464107 330143827 938710904 365282226 86585521 475966063 766571055 899299130 59344460 170809455 190552875 768658107 407446716 668706543 228091260 758791748 587619876 447943634 970909999 925107623 741714603 83013759 750058546 317098138 706265242 317340274 862961725 156704352 266319285 859508798 955460739 190843351 356560139 332457836 167058035 772875336 843032780 677407761 416005049 931462851 411278353 943994051 19520884 928347474 585889648 843197049 130359212 567226012 758080335 542827997 508690994 141203938 888805993 899793878 90192665 814512730 638176604 308522140 84357253 895325283 325309891 77046172 708372712 933285831 953498102 979621608 521534137 975188983 79020343 300284364 722355732 275942470 763817583 918559181 793012336 645055758 282682208 658376616 559171631 930766881 363192439 584892399 743300053 796307157 100951326 80087666 607167889 325055781 413879899 277257653 590984612 896784584 340464794 708477981 549933639 918284496 395219619 752677432 650284115 347101903 382243025 226053143 137615372 910835486 980713028 352262100 216877915 107737350 876610051 223761123 359156637 699166100 561637964 721738052 923822455 961827387 765770353 866204444 980512554 223848329 699846553 24220344 212046275 601633482 365050995 483771504 246119709 448688303 384655178 394765406 462356580 372798530 992360180 401029912 227216998 216648095 905688337 967003352 312358168 486689818 407913968 927580232 156541989 353212247 164830610 345904728 731160350 545062098 624544281 301671168 914906389 696782868 719625338 712236882 285197987 921732140 618187591 964706835 591738517 91790685 495072953 402275966 343710013 570765315 170655769 495542131 785732894 867039120 145631979 261546189 584956319 46036297 34984662 991676671 580771574 606630118 785535163 861537458 927928635 203686186 151637590 679623783 42278717 273866288 725879036 393300443 522194050 126981247 713933483 826676126 678888875 828637369 349508315 386770992 641379815 597418138 435384659 965277464 784915594 759164107 887356385 890654437 721424233 247413123 879821174 383703540 432258810 57732226 399680103 855657261 624042122 580124023 566579117 687886313 229944499 715372287 41005431 231919365 300802950 757358892 788077543 112992613 753024698 315702281 851166886 834077859 794203816 176442470 130301473 924778096 377653914 811973173 860933194 965382278 616712412 748970 603970398 348714863 578563690 533212493 56257932 302227963 147590001 24495071 706179632 605274366 422896438 478435741 104036473 30170183 908536420 748257540 601280761 216129846 468402102 546970386 673903513 803087080 729904167 450385008 256380950 371277678 384687099 246124951 657960973 958859021 281810088 121444648 747803755 736223390 902821886 333993430 296742637 782857876 63978385 108462253 271354064 897471875 272238413 51184041 828614620 452946540 96971788 971445253 435449421 914693684 869451775 487253632 374384763 344894572 454517196 949262613 479796732 822155363 982684972 32257883 729036829 663960573 47526871 750142814 52176605 342595964 478714866 437887681 631407275 795872590 152651609 262368992 31202548 102716966 132148654 399658010 430240677 565657675 663999186 152391901 713587369 228385980 138013530 794212446 43119848 980669167 799428398 274585949 482058449 75092481 873852004 960165930 117157408 715988460 681780050 580838665 322349961 810573810 644421555 996343494 449729761 209663565 876772604 463199396 542976891 305389653 410164868 855922812 785375378 795444158 628892290 251791673 672370860 897125378 630396827 55194603 176899881 831328859 167081052 431682110 578459757 412267218 679705193 917700217 293294896 730206487 882964491 395704416 777495436 485260046 404535942 194762795 315251248 863160838 827213221 720023983 191616304 779366704 371170963 888916012 329609413 342669170 913819011 343605535 908351892 22789733 343184798 375945425 233083138 206024784 907467893 509473602 242939652 714620855 613162802 282126862 729750050 512791497 667032642 132273983 908399480 328484407 838918443 757509095 575784818 364226736 580641612 343462926 743612077 894324890 160109656 411358775 961581986 127096289 648130244 569569736 849272427 140355847 304383831 495356697 146462250 586491945 276724445 39229672 425390684 232240664 2299158 951199337 770849490 921468187 620372718 793329592 664370612 665811051 511841170 352770759 546895146 897729554 508098332 273457984 529311864 588258693 3068261 645664858 357071188 204575234 141114338 590393554 176943535 276842123 89448849 624731659 924300709 205944188 389824884 299744006 678758800 479975070 541701083 798749308 866797465 518308741 226550929 887504549 538586160 188515533 397648265 293554669 127860683 549815363 351047535 800969432 179783091 224293794 361714840 916177438 603194687 578901326 699151722 691535198 442928044 338091599 802413510 486973296 795648372 273785477 934108867 285948762 634060144 786490891 619121875 902606783 4252168 931140147 431417754 495129363 363457466 756320949 140697690 714601466 125878867 862244992 333717369 248854409 42073729 365342525 800298218 354276510 610449167 754028121 330106829 876592685 239301546 441145087 14594338 371807958 581918839 326720725 618379925 82934055 468719080 676205447 77120855 313814759 572270808 528998521 327712715 587338659 252281632 370111776 701672788 739015776 858738729 896703874 222308111 922704038 52615544 239420079 55220204 774621517 300584981 416618249 609332915 515362234 78798335 592089578 853967969 51578941 677659583 174776297 267435987 202924991 656525923 76854949 648040003 700720925 272931789 649508826 675380253 963417611 957408663 801106602 737203229 28621079 737979507 165431727 872428907 979713156 862189458 761518068 122514715 433853068 342798392 19160200 148287897 430226849 225152035 693123584 101733877 82211635 285292566 783347494 633932348 239294648 498943316 461375040 770725988 448718285 989376906 177477080 505908958 936238786 138299086 884049156 1535634 703563626 273807488 230887004 848640093 405209224 431416077 213085047 397108228 721052511 884934582 284654141 412463883 318462540 516396528 297936150 29618988 129310420 237729360 334470335 563460976 162772046 569613078 393511155 447568352 694353333 997740204 66077808 269439885 770805206 741592324 489420392 786269244 302168459 12081945 181690438 922900245 550529516 792935171 390586165 787001984 165150758 29328152 456846939 775462546 21036996 191959896 499922139 65555198 347028306 702332335 95279254 81266026 548895360 260260844 231117794 743770697 302809947 145026794 993729769 913148749 517226502 837823406 340038904 18222262 225219784 660860900 68115967 802380026 734346643 291450990 952700425 152622675 568120215 327851552 875960184 1415356 911723455 709840412 45841881 762867361 138528267 805791672 653626908 416806569 844842057 209211635 721312484 701895897 175261188 246968479 305904714 312607232 205347411 201655665 194777817 74060907 51942720 33388677 558494629 590077503 169328294 453494438 950737664 109925033 41941191 588953632 137950210 536824090 697128520 453316874 303231439 731336813 605416071 730432414 337457198 671269737 743694276 876876420 169133047 197830927 242984335 924748893 673276019 564915612 452193061 333178654 392051622 724073197 645439922 789882793 503197503 438945389 988427692 93494946 828443576 724394376 412101664 99969185 956009995 388890930 957361954 541242613 957645132 119825318 938417117 12653356 598782526 441234974 465804218 774717476 765407502 330805013 173741020 444341962 650499503 662944266 955317821 287951142 943752858 946967325 15931515 855169788 682313099 896516770 661937939 165335537 30525789 826654095 190811225 197267954 732650959 573139044 233346710 289223934 617425528 914059884 839646504 220955417 857965216 264553313 722557493 5748383 221924748 143798169 345517946 827337846 230915685 926200477 955404809 182477670 186937585 681106110 754061301 29614904 516232795 732995378 601499348 711711149 852259025 392900250 385217756 560353971 918025045 234183048 536443786 995283007 858290078 209995661 172160361 506040273 98321877 345635225 898810660 140813443 180338991 412562918 426247325 486533970 339653113 204380053 635917166 437100212 268964995 567736144 22858285 613977665 178006769 355983819 264815599 241395099 646399590 438495728 686795974 950661066 101495735 278383245 301136895 336567458 223001864 711585179 869887696 290274672 56145747 268855941 602732501 509274876 913845546 856975956 621654089 608227846 847164576 859840766 873594967 723802517 41273872 277357120 418397682 306748739 563710866 197441440 318679220 345632461 664741691 26275581 405369489 386619727 807533423 898213662 486871366 559347083 419236728 334464120 851607044 464866460 802585143 307838104 400093208 831444104 321165812 356680385 618549435 725281024 322776820 470081511 854442661 512358385 582313888 32184752 926689334 238607848 549452883 24582142 130963971 21176401 987084345 705355197 349123829 532551822 355545435 377728589 293763987 683347564 423100353 407854177 121704705 931403891 637180341 758245160 747372322 247444294 814678383 886600746 250431066 619604088 312317691 542414767 759555015 849335553 127906987 439379487 766570835 877053621 449417261 690353237 258599911 482511855 440184646 815360640 805236049 611837945 367810266 59414522 44475427 328782881 553225846 424460805 228034358 647731489 513002105 493919127 62150174 223322452 546717859 425431120 406776810 20231743 880284848 900081484 158747989 663315441 483868371 100061554 546798382 791518381 979479683 962233649 877333278 868487930 506743610 204601695 21689956 794302446 485465847 184380665 767388272 716828311 662875310 64132765 595261666 612991783 318583792 18869349 231519397 788079853 621636238 622185588 21930001 56050798 892445365 89116667 214009749 300819705 75655157 309627739 528191550 498028177 918724786 809291027 683102524 747052369 649432163 334439204 28584689 484490853 613236661 656434240 142479398 799476708 445700268 312272785 246377758 466272898 575542817 688352528 281108141 730480859 279519335 982653932 233730130 711422100 900574513 166156180 403413934 52990729 115220319 427823804 748174842 609578281 949935891 214074326 388467317 392228940 403198651 295761752 992214450 988613353 392080034 504357558 434769222 637965174 174975930 438582252 810093155 417932240 740587581 173367247 166156162 459771965 51574335 973074779 255248832 114326122 8889535 577985438 221382107 581736801 507498129 242841373 149414779 368155085 40608680 107154840 917001021 244999353 777636589 84746884 986975117 362670212 993700419 667776092 845458040 29837097 82071857 187934004 179123381 929370387 784017347 421408774 537247264 844262693 958035748 810578849 570625684 650952383 646637789 610506195 721192448 578249273 385297888 89095961 321578081 364822836 957672439 182340832 524445975 558331755 540345538 911690176 839923112 158924506 310331923 671013586 324173404 13815943 109069348 100794613 554656883 509959581 763483475 159621973 694538440 292267752 826066767 592788217 256948101 520462660 849183575 444812613 245676034 999939758 180503286 432471402 390750497 672126137 133487580 868582217 539183085 589586337 891472074 212067678 957928209 750916736 357407192 343829707 744705980 798603391 713800661 848388946 389499383 116285427 38588000 381518699 470412753 65908209 206816672 123651221 594014782 765654350 720265449 318611642 903089855 704045864 258555685 210464401 607937121 196940719 333113940 739654855 463737752 967092624 307640816 707963285 345065434 754663308 811370722 808153981 73300444 186326128 428952053 815928309 287085748 76191154 534190792 341122691 119109108 403720236 278026840 965871124 510837299 521940900 428072994 194311766 212322213 266792308 742678642 695825684 171608903 288025021 569446503 461338100 958001073 764567005 71712999 925151855 354104136 451509735 893092753 922241557 377243450 594090306 288343295 99622896 935626730 941978306 393055587 326849087 624030855 694980895 148436450 730313373 412794801 729889611 10621742 694627607 591729689 341689411 903008920 692370191 134329176 126213176 453982686 25386167 702336847 29744600 994601533 434358686 630620483 158090363 389314656 875936735 675136965 410265909 17135875 479392361 749400995 709629536 330212748 541885233 646077888 48776944 352265713 15447066 18956933 442109195 766159984 176882678 115889810 573254625 913056238 490098607 919483478 831375941 223580959 970268044 521681918 109412830 574942481 615973007 243815168 835728759 493517637 136500153 347427089 606386425 798755244 643442541 766009868 922936027 91046351 851715704 519475608 678182797 201026871 183505172 650057770 351697894 22440232 45075733 442042273 489286885 48802819 210265580 601459140 474452054 887970416 835960195 767953420 830910452 788630507 248369481 124428262 44476341 801509007 446543892 618779796 749742569 613435148 664218603 596516822 958792023 586528672 500149547 625926528 648718004 364892589 560954215 783756583 293535719 504439777 178868988 370574992 809558992 111349442 286064755 420738559 84046790 372809783 73934502 434098648 819407574 350969832 884407167 36886868 282180946 155021446 848935642 710259259 888685418 180846677 669333453 578412814 426955074 484770193 29903504 434891055 848984204 13985859 885745365 836811468 954432922 596861753 649272868 767617010 751444275 687116697 759246901 118533001 181700058 505512208 578286901 248250097 382820490 821791052 775685529 636141524 279032396 738366496 282206227 372083303 817168262 210960602 338831458 900249128 562381391 941555521 373983078 536679423 553512336 410506839 127709664 760021087 118086312 227937457 252851837 771889300 697093589 882905511 508909599 261965062 50855868 527003218 267064887 167223405 372356745 376497061 908753821 66021543 470098767 955365119 162641307 842709851 828740600 712550189 5042506 172634767 492679836 162788699 135045614 651520543 325360779 887787089 804106583 778021120 104962405 389699999 741571001 765126474 712156541 757731935 572045201 986480782 41035933 119758447 938351688 875171070 713794934 914554407 234314937 990359092 557133246 695443115 795170063 422200385 334691131 222547389 364373499 252639886 675673482 673347145 666074186 936754043 820969956 54255104 350965834 210094973 496687235 243206881 190495287 486702821 892522021 929924141 646226706 135570778 713132745 434786920 141130820 535010729 645458462 65814123 242703144 663190375 765912404 607489586 675846432 447846738 90064871 782890650 875815216 467176644 917275361 450101190 232226953 887440502 903521705 275972609 437713854 300095103 61865872 541435625 804546191 645415516 663415739 927698686 840031344 192969808 850693482 344519670 701182544 886065392 716484898 682569371 180389286 182255568 65076746 821631606 936456772 991374855 350517350 165658425 493636245 456840562 672370111 881987091 775049249 196975151 737005370 62773350 106330978 561624758 474784198 69200848 751423362 122327840 150110549 946199670 310078524 470683316 884976973 599750855 307755333 258504525 6087191 178366656 354815782 262628390 746024563 634428508 354745958 913886088 651932406 455048732 669109249 732051638 122182692 802572896 958707387 29974970 411609702 43141193 636274883 465115913 244660889 431362340 710553017 342772591 581742561 689783154 673665043 277987897 811177735 511555508 850528475 173372232 946481195 484061949 902174783 724781968 727540425 343567324 995444496 537152225 416103322 832360406 929229799 611229159 990182243 295782293 941179294 99235774 263857796 786578770 454438442 455188952 473972938 494482165 327828215 589280282 262631135 247257450 214550130 792210919 967427195 485895258 916885150 684474221 490901038 165069868 475231322 101440950 721898002 985346226 324961735 59021806 852276924 195672737 677801159 327565723 154251087 99231592 978065799 690684484 966936380 474966463 607961081 247435974 823140770 447033188 984036242 651797159 164310141 276641496 379247571 804579647 326840173 828166595 148690194 677849455 657786141 578471530 250074983 894593611 837800196 150863841 970012080 929670804 655897436 626171825 684964537 905388412 911126138 76445971 173731152 94120881 66876431 64821524 77641058 244418066 65466271 794119164 591304473 985895210 881327781 290727718 512523482 803605081 137118823 44386276 468973447 941776388 195808973 779369610 856784618 972492103 765719287 282353071 516227943 673389836 504432167 201784551 231902365 82936463 762087783 972237051 470771761 638545471 487962996 60598072 741281314 345415003 560773908 656545510 444787609 831962205 538559609 96872764 580698792 756303679 403168541 130233130 835496850 72604161 914334454 942640670 296939861 703237530 383896516 688057612 476798144 758753702 355933708 583990583 265418972 499921859 959349944 995528141 62418606 556326757 31499518 866723436 983719054 927851714 59051214 295758632 361545063 492922509 53372436 639463536 727331575 429898261 594424369 298037629 104256098 445486424 73315288 424727527 278651607 635992396 114534031 851039205 843476817 127938196 569052633 122125937 582136862 272274863 631553240 688142669 795417600 879159910 566277761 16101044 549001189 373385518 552091414 954742657 10748497 106423177 445605029 489231549 228840736 812197322 264912319 636257338 465831068 103521219 883771802 241312846 164052807 157319856 91071124 884278505 230377804 963724464 552692000 999544476 400202431 158862276 255437443 869372600 601456843 861463066 897302399 159834482 231502392 809591979 894353022 167757795 308115977 514445101 995332536 547284051 899588655 689585441 421072055 585332869 985295974 209322106 450352058 41777956 712535365 823882857 943410353 701254800 832901646 173554024 262796410 90519059 452346175 854936772 547783014 666992235 403319637 936354086 977922542 90101774 529552867 968448901 751693992 193091158 521040070 145963713 517952350 482184340 481485195 587050235 395660736 997250907 600276767 822376336 236841175 564055121 649750235 850658284 609848037 226255750 632364926 166340797 669474489 136995069 137973634 537544962 988741250 68388559 89078499 853943910 49221461 186334490 515262850 335773334 909893645 240559621 665643065 672623228 579166352 256765848 147894733 500932072 290085147 499331919 811240590 895175529 165406257 479474267 726588214 287565388 863086415 105452866 82392735 928884108 843701638 584087665 921186797 678873056 25021744 361220326 300389169 786679933 967885695 267067813 696832488 935798445 209763349 691700466 410789268 874642226 697975914 748757372 243427527 298393053 476485686 449455467 53848884 788491563 962042918 547660301 763842544 410796490 772973005 654409228 204510464 244227930 560458516 81616 321362148 642255917 846934470 168205308 839945457 148349865 241457596 698683438 144331751 951078696 625867097 39302475 420483433 599395151 645189674 792839314 810229255 643645817 106939102 680092385 139530809 122870206 967932941 417477396 928554963 57512001 501158975 503536496 353922157 982393357 254155402 398827958 586555824 359883030 302902801 435414650 516648205 796833008 34473119 660315877 332873445 542872771 643361368 614042856 314650801 147516160 612670315 729628547 381182408 768097766 121947178 486215443 418388769 424962013 136717323 849400661 850644389 846232001 664429336 793282109 246752589 860241375 858108822 773652866 273053922 563224268 510189668 179841999 587770319 419302074 354014345 782498632 248460116 638810636 719496710 691295579 87530541 418289697 868012842 57347333 251930184 688777722 21762707 385721254 33805759 819985835 971864720 80078254 216054364 238125651 138614866 665714186 72262156 480148553 176762824 969365594 321693057 673784228 214144009 993381994 306721984 596587516 107895990 138329357 743006589 225184660 178050562 49863410 617582366 351998626 296907589 708065866 825647228 62934399 932177132 748347135 115230349 84845105 561681861 272283789 221253814 151109712 425867072 218456090 98516355 149516460 179286069 61995239 429824789 191867594 573074971 610305618 634245862 566286995 98694528 2814177 587247745 94759062 465975307 744069800 903859191 68136630 475984131 887935382 102865211 866758133 771796620 731264155 560523612 313239780 697000452 923283076 924374843 6427418 663039229 182287986 923862212 289755120 804513217 612139500 155342543 477526920 422379073 870220747 968982027 716807952 935863508 709381577 266014027 774616979 239081025 111207723 214685514 414646002 76680805 857907375 544939812 406229316 19742833 437785373 293194775 941401222 505511367 917229309 503039579 408321014 363582987 61714132 871045290 74073086 925362179 582965842 750273013 105112541 29398070 638059919 779776763 890074535 723208247 681234737 99191832 324632035 767030365 593877872 162051973 155244218 479305520 581624821 335525620 925659910 340155263 841562125 141141012 997346364 916884602 190407419 678568655 640798819 891378076 763008849 537000986 126817293 289071554 657974329 118107014 275777995 314126189 442327363 852421212 633295354 81773282 906373926 952505033 304756380 590621797 134215156 457595696 164130444 19459707 409093122 803931413 413370669 212950048 359919533 689644660 740175940 744039180 717950439 440947340 728708962 169614861 276433259 609234362 865222280 423063218 805075577 659411430 762250462 33774154 875215037 246473061 375682662 213179641 478808933 184452549 737599283 331916669 976148147 493600849 275718768 216360160 747976146 472296262 503087055 919068776 105108149 807305909 253503881 82311017 538814295 485501746 603187634 757282341 550133954 682682963 706421440 701287303 11632561 670630466 627321703 256977038 856607286 112540240 880617797 506609305 788157745 79705449 584145594 824525725 853677031 417167489 481374041 549283396 288338041 319183437 995762544 724684795 653332974 596003907 913781664 358285136 477088518 308118243 26948249 770101792 691677287 300920715 846374822 255184848 234333341 703191968 585523340 437932485 134185935 23699395 12077262 698918182 739551454 131366279 845095806 40279554 885280110 550572878 544370864 978034923 512074870 800322013 330329646 679166993 772133426 763581284 350938321 208753794 852954396 860993852 864105358 389024214 525161372 654543150 34277393 420213426 23155601 258475021 288001322 481468487 390817817 917350434 661081204 49675058 611293616 762410266 523091296 987396557 515951591 760261811 469894026 647760432 979455949 349285884 938372316 234244118 567622070 212616200 355075762 68785401 473016456 152118109 308165328 237168570 923365495 83414804 977148787 558750234 579133252 451039781 457432009 939720982 55921638 179084237 460813560 933014122 47471877 604097264 682359584 370804347 353632298 66428339 302689969 961866627 756096203 498064725 766876570 132996210 133614278 425977246 934032819 519779430 552661740 703213340 711335731 893380315 377858245 178816949 83423932 39316583 423238964 295611389 835732483 566085141 514366878 493923883 590494973 680776799 668151712 280983958 434880347 155665139 509968716 533999770 271786070 686572746 465612050 945735402 391020206 535832794 483735699 902161677 282278 981367009 517254747 938700488 579368467 661975747 847971698 555594238 474519811 601286336 192079687 308806688 475851334 266144200 863014863 790336652 9261477 576280889 876161050 121596374 143558902 53708941 314037587 372892708 125086099 415559284 970346231 216673573 911018461 502465052 984687435 160640179 77331353 877018989 236207800 532626173 276578411 59841014 161565994 271149680 213488132 916465261 199442053 89996013 782501152 396749113 746585077 542654880 469407698 477498107 32945025 257321717 208706424 659198837 713764703 147734038 443513711 619626322 201492920 282214833 994356776 859342091 440481974 412583075 241983464 550103594 881808738 803494608 307931631 451238521 256378182 178880821 785799190 875466661 810058593 672178837 308427799 317084315 727228608 858541401 589836076 69915407 430156933 449159300 969681949 19356181 976618252 154960225 189183181 486502497 658073052 800793061 101566001 211813352 425971368 708469615 36711661 339538088 850119418 927442578 93167721 402595236 619470990 374334003 350642235 269132767 615007858 460724496 272737526 542657693 433833871 601901284 243232989 728435718 3916316 193322174 337504086 420811801 39301297 153930307 428243448 422533795 460618291 706296455 151664816 317857554 327578488 193250003 278988088 406640629 906751913 466058196 534905723 837769824 412532665 983892804 268910148 534859633 593044312 797645332 911237509 462471955 876560712 190955612 488930575 535453311 554183614 450709910 461976623 892618826 243834129 483595487 299176559 398657786 911931810 892374119 33931683 934466441 644207803 57377343 892367607 542033633 272639028 436290041 726633898 798918098 287057862 938255477 580194226 263376890 473775609 110021554 348652621 655582999 997410642 85045845 502558220 596930017 9344777 6020780 359510955 612155187 391283585 387913221 268695143 381949888 570110574 244921095 871116741 923654555 631289911 297318693 538883343 939390982 57583022 346956201 896154085 827679786 859573545 466451242 946618339 1306963 17828908 252856778 830546406 374762224 490950652 666324921 916006460 68428477 375228368 455243447 598697710 948184319 280901502 322798780 114327560 373944216 787192833 717977756 422703199 301253161 645790446 388750172 954592765 955385356 379033034 207501998 722776684 256655456 785961550 46005506 252754966 152596688 538538504 809425713 695257204 206217936 300688950 971491556 308011554 472147975 704091744 545851790 919567317 265914409 628398415 399029654 677974923 820727000 491487925 596899946 863862889 683975749 379041868 369852782 93438485 494911084 593381476 813221699 402582733 682554558 850304858 976614306 227539565 141020855 45035602 910506716 234122075 753463503 142556432 878222510 739189871 329594273 729836917 669814997 988585754 797912813 645713496 194749278 318283114 336132843 85532569 90931842 640877858 480824886 83646525 422017982 224008435 499651918 234534008 340623231 930137862 350326786 693380477 841553935 581783768 476747727 517782475 879154983 232007238 393462732 614371407 648489183 586124721 841820093 593870083 806952587 693040360 696628101 124586204 988057200 779013784 496520021 665966630 657857966 721907033 792080897 41222879 123909643 704406311 558054331 805358244 745448608 19403016 713181586 34375461 750129453 840033401 157436808 976265863 862489747 544367692 807511132 224962998 869267105 493371530 232732930 883474274 720779998 766668871 643766526 380302340 243347639 990056528 704748218 297078601 740283532 97123429 944712290 321202544 748029743 470167814 66132489 810926069 171657734 255620562 76907661 876806574 567348521 862466345 920045973 492979118 941475652 941034965 892762139 626481220 451848326 264715572 350839603 813318398 278976202 433167587 912111592 7588584 390060440 42204680 864449343 531069089 36516025 66099072 245287639 800981175 189993548 650622258 438079562 551118773 419782063 92525723 710264234 46652553 179835203 807080760 552201463 351548129 426410127 29371532 731718011 99069527 319467687 713062291 590453205 467140880 123714439 490102422 567625083 240044281 748584321 926158971 758068803 828263344 815704129 726101622 28711090 15472468 973442274 160317969 736654758 288030826 181917633 973338120 420714429 572565797 999724268 476114901 442330838 384507968 718430159 175570276 442726365 228838349 19908336 250706164 440217113 482166296 62749573 964448375 271642227 131511117 343341235 236612104 142167995 88804704 665999566 962594982 991012272 261699776 296014799 102387423 383266640 852255957 941620129 26720996 80551903 858170330 498168326 454902576 806173249 556425022 309884195 972167217 342097955 349040021 602298633 306402998 836038671 180763455 831942621 787898367 555189821 68661225 926238638 109894190 782986759 730757058 284143073 553480616 975404388 12205693 74737166 570019770 788859968 182734244 359869112 765785098 368269768 887411983 152203129 565617630 82482583 49253674 80322543 291822949 150288427 660128987 320824608 163897193 452437843 233979764 296277253 192891639 586686544 92060824 256934347 544292382 506966583 186311240 37574085 758326812 440925723 587185804 779707230 332215312 3292769 210294049 105494174 804401266 89511805 487570521 486629879 685508834 905636857 269196642 999036305 175183904 70995397 221110226 460200285 708796673 952238109 310645644 121492443 931634017 89866953 896631465 865239990 800553544 966039953 13814374 235862659 589189312 418607585 224321875 915919404 301730198 92122758 532016965 139915383 870029579 671732600 334485385 8217480 307567576 884781379 946991204 39437357 347117101 421531611 889446358 717508873 98407937 576041058 408624787 420581788 705555206 816102829 17672423 35775589 416837997 371226444 883496582 968043684 478086216 622698723 685893250 410985374 740497656 799114565 864641721 656890659 199527050 825551230 850641567 485249127 939131782 830429968 702535041 530598674 671497020 697435590 39877302 588521781 315367117 211238250 73547044 251654723 580346126 854178768 630308525 151496970 591530576 820864334 333625863 104565820 474534786 590770875 704299280 418186928 957513869 634731284 821893426 897292781 718707082 343705354 971410335 251904714 893651064 345697406 113723221 789052701 215665997 352292375 348513990 149958110 947544689 368000748 123904948 889982581 155450055 148132456 569254850 260970970 761492048 586813671 799674007 22634453 839440237 874756889 661133971 394104368 301239651 34535928 970113289 305937195 668182397 78686980 982577044 323587174 402368805 228803777 472017255 604726232 419730059 435956534 984175245 167691791 757217803 504802758 362985189 645046054 608262150 601350610 101991673 127427193 234381943 377912074 156305705 482048872 653723858 62955644 520304577 264589619 133387295 843550565 618221263 527561565 841461589 743859636 763595807 399681977 612051171 610710752 937716404 463289611 307493590 384258838 132213155 462573697 533720013 86910960 137623383 126360143 135691514 483649928 782684507 808675143 149811923 51907814 250164508 850972698 202145437 880306000 132906595 160073672 31625539 159099520 980574208 172958222 632104542 569821000 308804372 746034803 52133624 761591354 454345694 677072054 819970148 494002450 837890993 624917502 549525240 503511066 530954293 741202490 254636253 930882720 428868113 349070392 308696079 82488092 438078208 79710560 383654630 501270965 93244090 60598995 632040556 283302871 277276072 560991354 306185489 874402765 760526896 892672362 110655541 574409287 548239077 551218837 304115276 31910046 452350228 123551561 162821912 807690638 484871405 298150685 149460164 49925237 765973481 149124040 753835329 39246998 294345723 82421728 336917508 62402984 608126085 245307644 189740284 166807286 894486718 115279367 143916551 85688059 553966243 18110643 551277756 256671836 62715994 648807217 234091510 348581214 842286779 644045238 273701097 295246019 303455456 830468296 661264264 891351690 727158575 422051477 834956923 770550017 113197943 999154615 957708614 432680072 460171413 773215198 926291145 145751993 136668690 463309298 881578945 109473715 514150621 637343528 631046322 933915948 354838851 596773973 107233282 535158292 976376963 915484072 899713741 438884807 31405849 918524812 130875270 444648349 615099526 576028831 631604293 41309108 341403066 665090640 576206703 220060200 594472720 105341162 728924089 810228113 573382756 138939027 73715434 283016306 901830741 278002127 534227878 270261915 628963327 3734948 629268921 521400608 394247334 400126004 213687898 661720354 481214422 139093921 248969294 744056155 344918299 815608988 746373975 659616284 411530204 610719242 63869035 325874154 959306510 288377096 923115147 113287021 749709001 739241966 477205977 253744616 696228886 264664544 682912654 830568624 284852289 894545561 495572297 438354496 455164780 756794813 224544395 404588794 135676784 420348744 661727712 276805161 241262354 312165890 133286360 103126675 463165687 355362937 756213492 533623055 442931952 99301845 340617602 132729702 428262525 312223224 270248860 729636865 174057311 443032280 401962967 880948468 941483719 102882819 941682438 928310619 158871054 534302209 740314297 311148267 64372269 741458612 195943494 852525506 917320086 514796551 320541351 541123636 783634174 676177922 153948463 628090207 718631151 947293156 792883915 97656562 677284144 247227290 700709534 548191546 622564927 181326654 986849909 731750117 203446963 675950590 35517524 143605 982304800 811629841 131015593 300037097 312559539 184021197 837718703 926776329 59859908 504472683 166323150 577265867 147601130 48345780 106858066 962133182 843416647 161644524 950525587 515040767 820854070 26312151 740587007 232880831 57572927 822635672 28302056 571360803 277021124 682779045 793394108 564432760 265127056 361141963 197555963 60157689 698748373 910307636 151018209 351731264 731868362 693499687 649200004 201373830 157292675 545384379 549817916 174045902 241342327 62573375 762185988 12056572 565462874 355491539 791615648 524563377 143758812 380522337 902996489 273331764 18612150 458705592 478751650 826476743 9739753 106622814 336291743 864678382 2096746 141096525 539083323 853567391 23723772 902490512 44417499 568230849 631429040 378978417 818080718 170291842 701522924 22697608 677329867 383811019 739569939 238701188 53606779 922161393 811746235 3972537 802915993 639938091 20311727 468658632 978294313 50560551 296579771 887001563 400932092 609180674 929428820 70349443 609926371 576553198 919758646 619709172 27881115 287856519 163418321 722034459 835739258 378317654 227136991 793108572 190226877 260438962 389480318 776939061 644283041 562230040 842066192 367033974 552083477 792868357 160776509 618266444 151918945 345084788 863295382 530619702 564255180 238482742 412908696 134167139 830360173 629648509 950098045 802337606 695687047 757048192 868910934 421064137 849708490 669695086 460768381 138055770 643113990 437766846 61353631 896192268 694289906 423859263 743820147 2234732 572339347 8761796 838021020 410507379 93642226 994151869 383692637 84479033 705651855 691764191 663520735 434910189 900963896 294877494 313673714 805751458 633775231 304097117 543054470 595329155 87861957 353668176 665427761 320628645 691929719 225272046 806761579 684096063 453762037 740395828 938664134 162744959 821998565 237505812 288380247 469195764 537575375 142514670 230107091 193671891 267522579 60050289 234210503 151785202 304181609 748017691 126336843 987208901 243221566 273296577 946576423 353576724 385803761 386592466 683134768 351970362 543859598 164351285 926870347 445473079 9792498 447194651 135804097 348269993 187087927 7720185 754739454 588560918 230384776 591207658 585425089 363982476 212511040 656719333 896980569 862816645 438700009 439629939 464041285 18906414 551279994 273051173 811141017 284933620 335706736 136508801 751756552 313844066 32386913 379240903 391011105 926201781 629624021 4848517 409786269 360538634 152803279 928900379 723932247 350194083 836755491 965583455 700521871 272785694 763323851 532557285 562912471 549528651 635367796 91588278 550968224 258824024 514569546 539228797 313107378 656712518 805098298 96254085 692003307 992679439 473535575 489722667 456306362 588653365 373410321 747546204 249584335 121423625 14194414 408247964 436722555 816993402 726837866 876410021 523844094 558976972 770930294 185121546 438589462 896351733 228311568 251068244 973354666 957456095 827246543 399937058 699301127 585068716 173827664 726497406 829493785 642505558 385404680 783027626 912366998 691629607 295733424 443627022 711429363 277700904 457052755 827910200 701968554 954964040 755231673 936955308 694495530 625138825 121599301 232561117 711885184 316783487 436833086 154456855 253149857 908148834 794230273 62636809 363462665 150712125 287198541 634006589 410692068 38657124 836224427 276769625 917307301 268622812 494482730 732907014 645775306 196871455 595745693 860448264 824674255 430832148 353891272 959049453 54532912 281062844 35894387 492323921 591342447 970955875 688810261 964305509 65651200 515555898 839800054 399664931 963849173 781505967 840070781 548836395 116711654 475843200 999174851 61844384 520332269 842179104 456499280 166143393 422633155 94154681 178244875 968564667 538301101 789635112 333107891 698448130 775079622 129965070 998952565 989908393 499538638 281229796 236893960 682592188 553733893 799668196 995038352 258496991 333255772 435442860 58041209 897127719 52355132 279112608 253345753 426920570 497092576 103549609 228378475 283256920 244839878 730508803 591265987 222036219 625570663 924373629 174699920 505381684 826168639 202451110 586062796 169584537 573978114 449844111 423380872 623976840 666377132 575683840 429477128 593656236 473784587 781522395 100842248 106504922 532129888 270119292 943749453 750459558 227948183 662079028 784428974 140096732 201268548 914585680 702617798 245702456 615323662 422914044 169391799 12340304 891281604 741983511 286760893 526606367 264498782 232953068 195694770 446836718 632822100 83102278 51486241 285845222 16916303 986792189 434612300 195341918 923874761 895748793 813715153 411507244 819672073 117512107 279390336 167938025 622250777 308173250 775298962 627793854 111639821 413120414 645822688 954385878 355617249 784444812 54551937 826980344 420736362 696100732 478969960 594432036 582926921 827721276 364047371 75924421 143708177 531991801 792037326 963542436 102734543 642901392 528230423 840955495 622551768 440814242 828964141 297105073 923178075 161342669 653413912 935662032 551784210 17702141 497597514 146899844 732555808 440376139 345725131 728545091 473772855 766291059 262181008 569816101 737932919 844115841 257944740 317038586 191492643 227727945 774525616 981636977 986981995 62617871 427374557 324691847 530641256 426542316 755339950 466495897 676781542 345765732 889279196 231893968 375430306 41509399 967688800 252215861 658810473 143110726 944088463 330489252 504715242 57517188 819956277 772704795 269971271 873458879 299292225 762306352 396778298 65087855 926008598 791182992 63485748 487814124 409639726 464017883 795318534 882437219 801802207 537421204 374804261 765612803 281165759 786195619 36171430 168133615 693967502 532246211 374055656 650465334 98537772 938157534 840305252 80767368 132061349 470524961 115340593 69264569 983757759 651317043 895573967 596137721 849632889 443887138 125191107 499649903 262065989 347337135 708569158 324929109 406503954 770365574 770658867 242618132 458722976 811570032 342398502 212927275 905245788 981892901 998456394 952066839 574358608 549258400 703802031 190521900 413582607 559120215 384497321 148963563 827923629 235074758 396428694 903404734 438996502 22371658 836997035 220461534 852580515 371965735 496280155 754102146 213095148 128368068 757020923 126977404 784001910 110582086 870428220 963689618 3402666 790715803 999595745 980858506 441765299 244223955 792306467 830262816 923307500 787438421 605741889 454390355 877544773 602307840 596579713 54317924 229054636 510724673 426706484 550368382 970317510 353472407 427503327 779248269 838408427 147591051 770131809 337678994 672848640 519441316 107043974 897975783 918982061 57100856 166549247 995650826 600221985 632523520 881161897 713495468 141594229 590469422 870873688 527441464 312712031 747251304 526071754 469254671 958049970 921842644 711123812 115924912 924331322 728076163 157364808 203618143 537659525 322828745 125292885 177752216 22862477 206346933 330761793 86165886 277746428 118262419 490082213 532743435 420148216 353102 593377804 633632994 483218149 935362214 318244779 279788704 358923357 50425447 906182354 679848783 198241066 851764917 283660919 132535085 374319028 848237619 404551309 880452949 381452722 838093541 526839337 301808338 384924879 221169502 5653463 731014413 687574629 8994667 472002266 756981803 688598102 887876612 80007795 293573202 315134691 377939456 236144267 419238481 926673261 314537889 746192059 124590400 217237202 470292499 739107155 793537889 549261287 586895967 35025403 712047304 828916676 357744338 701107115 490064434 480422330 477365777 306657769 792050250 279398753 916658317 482710048 748616293 504491488 395304503 894401036 13271992 47161017 997233620 228557459 192627852 298229359 597250664 777974322 444701017 634787452 961979231 311769970 676164737 876986546 366448558 691225251 605331319 208055378 645235297 122087532 495348207 900021038 690124760 557390699 309134547 508049405 883825350 367472112 714415548 280921420 541092556 34215118 261352188 94604790 7247504 331183693 806708704 681785505 480818006 540042729 274111955 986317857 625386999 287121781 111905915 88993656 269542729 308491323 868772467 187474692 262465699 920665791 433685123 989455933 742984330 605432714 138575475 357017870 269327414 844562244 918726605 468913233 622692261 614774019 310514468 782424247 37561597 767090406 848627535 79984347 389235388 5176563 545493326 152587585 346734113 87049766 9022885 948574022 111441875 197937100 121783886 666060087 613879781 416079243 76186030 132472619 553820952 814666986 440164397 205740836 129559470 741762301 582087689 9528457 481932565 528202654 637760103 803715437 324030353 284400213 457379917 372054131 854181760 478416786 755893541 192863247 555676206 567292275 795553905 779648627 678438291 393391838 263640134 633382663 485356477 385785216 609093135 882804652 740532747 106622968 936429073 248509833 659260296 768991577 267588176 783254890 782370623 738640891 933086753 406892476 190310964 452053193 620093687 789149209 408396991 916007744 63709646 36696454 491442397 602911514 180103421 345237999 269435462 616022569 533513610 50113439 408959284 802423849 730951150 356118637 806479201 580992609 208020240 707967562 992976032 405380522 36711068 955213226 165386083 38500611 834135630 20326127 975018324 612593789 184658111 366595622 65816522 499487947 636202097 259892136 236055599 833043278 515331018 331036250 758379335 679466065 534599907 423268695 544952666 196472234 427282038 79080604 682664480 186890780 123338913 594891877 967965743 397205807 541559387 313257447 125420558 656435233 327468718 821736747 49265906 514656113 265746663 580645239 581819241 236118525 94424533 119727806 886798463 653632646 90447698 437546949 387057767 292327617 554607313 54252500 859865308 723312415 505142729 445933925 116434387 297938563 117191262 508356808 469604508 275395234 452664433 574277687 140156441 783940412 653438638 479068336 211629956 843842564 281975619 384202953 315657846 417604677 767872680 464593748 699602407 149938332 352635535 161109065 280703107 693963127 741249720 461150108 395110985 432384525 787497122 264053324 124641131 311053147 571088757 615602426 818764489 47451645 429430131 193229490 135453819 370576811 240214020 767611487 992940697 189620174 895210017 411379011 906649392 500838389 903342495 819274714 479542919 515386314 1329497 420693648 374981316 605481080 166453779 378097016 343415892 410784151 986940863 111155268 655789393 71887456 504339328 846682758 353980225 143358867 325630436 661783995 420853270 957606802 128499737 745012958 461450790 597071715 659583213 512734412 280837194 182710345 993281614 455096197 885526318 374436642 729431937 629062046 738105491 172523377 73018973 757435241 926649471 272348577 39965500 403308483 895902030 316362778 142922998 663918329 498170321 8894310 83260654 290466592 74546825 987592705 916457861 133990237 217763206 146804693 97348493 339531372 422859849 248628054 885128222 170584032 917573828 110984451 742245056 343596909 21123009 536951820 693829121 286112698 634454273 770125674 512532112 652977836 646343880 1182445 738578175 516493463 546284685 63927663 798319523 459304194 261480113 879100729 886680995 539627658 677747241 85600662 397181042 698053096 824499586 651644419 232593895 838886415 672707778 971358647 652143285 913390311 753060579 251161660 882005381 24255308 462674808 952562613 613778250 535537742 254149154 880487469 558867291 511387914 183060376 720195351 446449558 585442816 613790969 609287846 203344371 122454158 914241292 804964108 674581744 663173922 49861350 658064726 204597950 724414867 736786569 772637480 929298556 358325967 224580181 404302740 579464818 335784984 267663342 903224438 777600079 697713366 364418161 241258413 320735878 538052743 694617898 81371959 786822278 790845825 590891868 795567846 24530309 200075415 604814212 826449731 682508259 55023115 639490516 113177598 442032658 678419851 915469099 513386098 103639833 655881416 96723259 720732731 925749482 758211479 460568753 945586114 736780999 921997471 910901758 783488819 322743067 632414704 122998070 735504348 360804160 757103590 229461019 991361302 3410095 115787482 214692432 151464456 643356719 491226773 876458319 844407660 934376079 931897718 650422647 995974190 318722705 209726347 825394996 194292287 411528581 901977793 201528402 243385758 25576049 212495640 806395144 79771428 959479138 745057218 422502038 202883123 143173064 152864702 916469790 33147648 73608934 797129788 597997993 471801602 334401106 547702673 893761663 568939201 449340084 165992324 75835179 829147715 902857643 550349877 999772074 666649123 816028968 188843304 343079653 351821872 785988301 246378390 398445737 99002482 359566458 668892755 374620247 751071499 17647471 849138618 693491374 580180270 190409306 639920215 320680178 717509089 789834548 682900229 333719789 813470562 227275687 571546782 398978584 87164478 310506838 814425713 319176152 603975056 799859337 123155850 429389712 327261553 153780142 187357815 888308435 180978728 182352357 568336782 776874499 746339116 75522579 724870211 576977243 444846608 55657590 251749064 603150631 954473545 401482787 46252690 475111743 202428550 175760309 382937179 626431810 153315822 512278576 361851951 775276850 82862655 397525915 292485517 191651324 312940394 876137358 218068545 33676034 906384127 169584791 526898417 78271101 684466910 692006561 676556047 744053161 827781389 242284517 783458602 525100912 854159965 708794870 137032669 121814442 836375864 499434296 640863409 486737438 831100850 72603854 284895637 617465599 730261645 573586148 835672356 653320522 470371874 846333592 98711089 429657487 948063052 835135960 703586780 636233050 748129489 565314406 225919309 878282150 125776755 195158429 106509271 901137693 21279901 364074933 639162162 410364311 667013944 629262534 711342219 982761717 66695318 529384611 450813724 280853022 936672371 153936466 829001182 904826304 805196621 120880788 639181038 10027120 110832116 632476095 187922763 743186574 566042864 564529456 36775302 35696458 145623324 837994599 583627502 510136368 579662829 588285580 965328312 128676219 437907932 224515078 602578183 931945365 890533063 162096156 633019067 688715002 145047285 959469857 747855807 51305810 66410300 391844263 250139439 774286806 50530215 704152715 780327775 953655700 886907251 131331754 334608297 893299191 844659442 6112123 834336723 572121710 310208774 453238170 304203274 264357587 101504506 99613245 729900028 659852914 922918330 58632994 51074279 770700998 468424706 734622306 31804889 476650564 373620229 96719286 483700797 738817422 355180766 622505903 168847023 961666507 264833560 154397418 181474435 338261503 810106813 284531253 488118229 456389627 708468517 487262244 583097283 649009971 694984557 389524506 941930666 734813431 701197929 934803675 838530280 695256935 609701404 626366461 234643474 236006566 631654779 828031995 575694650 562717949 259290115 570127488 918256134 556802801 238673747 574405668 69446545 23275695 127681910 466537112 394331813 940787079 654645189 843480614 416293989 832788778 763687312 475565202 736448460 226758251 633692389 182685033 639223862 923925235 18756971 253936347 728261219 323349691 566538730 779236176 731304468 955862133 156017005 358919072 718160971 633355304 850142798 358180209 496526993 331223391 565840849 259138095 97883225 841355907 908160626 631354159 472664365 30819734 651663897 46679014 878828206 971614783 601563125 700563433 263372857 671320509 602258562 56111241 447440367 440238222 673713768 426527503 499162182 767626648 189088678 649408224 927859334 516324410 604275065 298811699 885078979 716339463 91405274 540097065 523325967 912799105 509573005 100288026 930515296 279459328 518461460 168860937 711286494 589535582 58194994 25723269 179101967 460788959 483123170 610392092 346189503 903061358 168815143 328317655 810393934 427878458 2417524 411923338 65905019 877714870 793915985 479196438 797770415 217070584 991263395 654712951 564973113 661383121 958776416 484235737 976688312 815607385 955274936 55766263 904499674 469249653 362739624 630758232 827838886 365213350 756718056 713764454 642009515 924441925 975233825 120249161 256872490 698622889 511205667 551432684 177740191 776051761 208986511 28014297 832746435 372289647 821270128 741674883 981492561 638514828 245237033 530496564 877266536 490894337 743208736 496618676 612055767 190929873 521587998 859681375 930890157 40981677 39917989 934513395 37254998 709528409 994980263 558555495 562632677 475805576 931888484 680951158 537801030 434584887 703969446 908416160 38056954 455599734 786763217 225542523 797361459 598553360 402393331 630442971 479737979 618682094 70146077 756775486 803483089 553881826 236255433 77433036 990621725 763565324 366556358 551430435 49523689 534152178 591383627 287729712 898376426 453535426 486846707 699471149 691104663 831877211 30945353 281417665 168304160 432189538 961892601 393134243 337574317 430556067 176116070 966507390 135328609 428029009 946201855 561524198 719975388 325771112 327277840 508245566 686010685 173335576 49128741 822233307 442418978 16137425 729023434 320196990 627705808 88813311 249811699 120386689 392720896 629975322 421264102 6044515 709782978 444037443 3856940 618370481 670217468 900967658 946074719 266150175 357976413 916557250 227768808 815995024 719707882 383197591 797725765 28420059 983416523 493059761 753198584 779995989 453249561 562014485 423668094 549252088 473030350 757165900 163518426 220080795 503753525 692070406 347609596 370706994 144875710 466176011 367797557 352504735 770264682 455998786 155027253 930687110 470768409 285718575 615788542 50138338 874836665 958680536 400153911 803898372 25830129 970251589 347112008 927094016 269146213 896090700 639222639 354742981 878068709 754534302 260929722 293155742 634929732 377411420 707147595 450856739 778592307 759194359 390294028 922748831 24977636 702843993 764859059 913962110 28317445 919121882 967651761 354946650 361872223 193572850 778388827 176632314 764023709 851143301 908087509 914972858 122378815 230052305 411189352 610240156 528336768 719099525 187904460 667462193 276295062 280491880 262627297 32933769 544537761 660144167 785026070 523298733 446654345 191669619 892967343 354863358 490500654 804908817 821708330 101992205 508404570 739928318 454275251 844842469 48724354 814210911 76791409 459087560 34722961 397850290 886174366 591904572 917207525 184725013 361280248 194626901 986297384 380339644 441008069 683236579 342699360 106167681 707118973 508614133 522742052 25736706 888042881 397478000 626445107 83303019 937073546 255301723 569362743 854395019 478531660 986356030 259029286 329718658 293749241 227782111 299397457 819330409 298339647 342010881 210663017 314005712 980882238 777603745 740875768 311081884 423366730 873491568 439914275 54480044 258702842 380398303 869036129 638865209 781341099 455188877 622982709 987931462 910408179 718801782 982709397 996951865 704263083 999985256 206521135 390447917 24993434 43286885 165559610 361012654 678739928 608252713 446364392 869222389 609137490 780149500 65620368 868042223 66475618 443570652 832206396 74013888 451136459 118014299 249985527 208180765 5937750 692937048 638474087 481071862 739376536 151407094 510817456 708614431 994818655 386062593 594807122 385809808 144598804 599030330 644893635 941574496 167374567 94981652 638744855 680419740 818598484 445269502 689529133 192779095 794186597 449297106 810384489 502663164 897454683 585149590 74404780 675745904 727528298 928848003 977730132 923880126 427571793 712775780 613408388 456032364 416457131 248688500 92747937 149337640 534630330 399194619 253852688 777302331 254219307 674688973 318385781 873145918 360188259 970984109 342666930 291661487 229721634 372512003 529104112 746773736 309188202 59125256 286113062 709957996 509720902 20572637 32666559 752852838 124964343 537270393 792578890 673197245 590690010 677654352 213253880 411705775 538116494 834066602 864565133 941433904 934264638 238856299 761518399 776989863 460061179 983655657 789740282 893865126 211887464 439283412 464248979 139054684 730062397 615854684 500331340 379671590 621790121 399638456 457206803 411865930 292927134 189206831 287609591 29471083 688317787 856783733 530475326 82726326 405974831 176455787 418048911 496072017 479200327 300691383 213346805 863485557 31505850 947137309 266121092 920077036 833689433 505234961 728703270 652932323 116293394 153125694 538442000 604568121 116285085 557937382 9674683 605529856 589817458 953558130 512118463 705265237 261531943 86616032 116978763 409252813 358138169 566351991 898408108 747030395 388629291 255231772 455383866 618029266 378813030 777230988 235428117 702384217 526782863 152221214 125355283 343843481 206048605 840357005 697868440 538566268 911028882 205104306 637067345 36458213 199422204 48364924 677445554 61961239 453847626 873755442 874373700 821244699 779011485 754141403 827976911 999419259 571813719 476552859 801726992 487339922 484372684 865891772 863842750 632969506 604926020 469162191 668722246 817169449 737374491 201131471 114840691 60951174 848504041 712939917 638270940 35132094 943782606 737109058 329241131 286904639 934034685 172269765 947443276 820749771 542561205 329830378 135193113 228611612 146947013 259919430 241693443 519721055 99026139 993327125 505981942 859035207 595403846 24878510 964588100 519701902 109422422 333561201 206492032 845398869 913409555 764392279 422274448 822446548 285436959 281302653 147588784 370790848 536978827 190467816 355695456 57295425 838120800 61562935 676715554 598890126 305918861 685426470 642242253 461588166 649252831 232932324 558983664 461767020 369899984 415520895 467508844 150135675 289517786 212711726 678217201 107087377 921426725 214533646 327721085 976406565 225000475 840089502 430344544 492095966 455939040 671046329 717905059 152547226 759056379 188819471 78566864 171078037 969957239 606446473 979447903 798116163 297158639 491641376 413121047 671790832 973510983 719645440 121606418 478309930 870813984 463891447 817447246 105488606 531385571 92149178 372808950 806438318 129790799 937586707 903087045 931171191 94148488 405861122 330461166 8997801 286029013 959553037 107894845 457019480 746407588 314924487 355814280 636372358 997884658 844926836 683480555 204392639 691100556 568690643 395687828 787999022 282274954 897703783 958721875 448957935 978783342 263638365 554889061 971036013 588640765 860997641 155714220 717006074 339062120 205050650 167942369 396243500 131070324 587820125 829450257 135339617 874201262 916638137 206745299 502964796 462520252 641971450 292611525 442333845 211684357 813876065 944106333 83810727 560209810 833906367 25507398 773524546 674743844 778696398 975904092 77644724 553913036 184377154 957348648 398148497 337654855 265465727 19858768 157398586 487495758 107579521 567754501 385290691 902487713 835945657 636743731 42965814 380681447 355600299 750236992 789431321 92358837 67934305 602718568 8842893 198144487 960963646 157636011 619119005 253746375 523350183 966082118 366489759 838595963 919691215 803411137 769426587 583576021 371025695 533669517 46053509 435393282 95896745 706051442 552757300 8135367 368676389 77170395 758310434 725078625 47681566 106316050 129602682 913886146 189498949 6252707 98411719 771580213 548605959 86166119 611744097 641855917 64728351 841521209 781032973 491833569 464824719 449654216 806690989 747027196 459312215 135307585 515217415 73804462 30250020 590472701 34529983 664524650 50255190 578183617 806734472 824482305 657454148 534393652 914033889 497600728 890060962 125468182 460451288 594089723 846835989 617609013 776795664 39736001 44537533 576255978 536136762 632873043 632633473 362305705 975810186 878619916 755673686 185663438 432352004 144628605 518488946 736167540 374706851 485411634 673789004 871618365 373527566 481456839 283331447 463302488 488342999 931459556 377716395 260975110 907597693 276474003 561377383 189722517 220217701 803847813 449733808 817618598 578059292 252413809 930293669 421204567 971164992 411647456 823363643 900225713 737991471 324550180 158782809 338635733 997311933 8977527 722410552 418502188 359430491 942824270 308066069 35159330 524497964 380482463 22748998 311333837 274417175 956651982 445683193 32280299 670020146 764002346 56077074 827928403 364685564 465775068 352449789 217075258 237685137 670922098 983967615 529677747 264860011 214200745 719433505 834640987 427304507 563109139 239706154 964655997 507052690 860005013 250004778 448967858 667094266 486906037 217057196 500839264 883385930 194179734 868024047 726489691 49575504 985670176 676178431 671459638 163826913 812466256 421210330 262696005 427037911 829957005 883524851 696722350 174026090 309433969 34319399 580705956 872837045 930792178 538872917 165902970 399486533 462014245 32421995 219498009 496192508 363119352 569573830 828201139 781453832 114600487 874167395 673841147 69663154 206335507 24781262 753839777 618502718 931749225 369639095 805327385 991330066 833972955 601377251 181946742 850753218 700873533 412939076 426372528 277043721 908330817 491110460 324127089 30673180 188992298 875529262 158759246 255201815 413582162 119811067 211235282 820352902 210527989 892755885 357253267 971282021 333540252 946547153 638642607 954099427 349987609 921442892 456211193 169771294 97262170 580681306 928705227 180379773 509087587 125289560 787378878 535533114 671116059 668286716 729987243 498584192 645297997 123367804 917597374 784025271 564268241 565345794 971319952 873744924 283772615 996426027 292202154 515874741 319374447 41466547 803574810 953263087 669395866 502382304 468258891 708019750 210640853 430479021 39583041 201524098 269220610 871169112 501160523 933762322 592132505 413756294 20600303 222376670 976780670 688736190 497014387 796928194 404609524 933248763 427113593 457063281 66533540 641523477 50499523 537107733 658726621 68864067 706376897 836819927 603335865 609296809 585162958 918272232 46227048 842460946 371149404 234932936 789850520 108778311 673461671 640293163 251885391 479883883 474268192 570632597 736399194 958860386 952043096 626012249 419020445 995340070 257567778 73849495 277370384 156562487 15795324 175747509 983128111 627319583 246735425 467355602 809723729 345505566 256176529 216931487 543073150 858867368 978102632 477999410 64248842 531189645 264467544 981639735 100328126 570327682 871297708 805660010 113545821 656546218 183723410 366774042 104433706 751962209 795494319 454243585 343711530 664965583 293863078 640136721 814160170 681665202 298782346 623546680 650105700 966970279 937477707 573385604 786264957 622723656 295865675 930405246 996939065 443756227 601961212 685265825 458809152 420835466 839000204 769810650 366009684 933085273 472792451 180589452 155298078 328986662 29995605 730146270 196483003 857044629 358650071 438553870 879938997 795718777 772762703 978910914 616804908 283404089 600667736 320594345 734072566 415960121 226863217 330611287 83341632 772289720 551262951 20436722 392352171 791965894 472074482 184240664 675266085 996209009 151181197 712509088 953383717 373305153 484827324 216137484 965845792 761909882 165408954 457222815 587663216 165366564 669804791 194960624 873219252 677816318 969389539 487595480 286000842 135543927 648882974 87755573 901971859 199205531 392723316 426481803 398258784 623171303 109870310 557809293 21653950 205770463 130340384 398612678 349985117 310540422 757069857 382038047 257610324 799444587 260646067 896485910 644063084 143263443 467716582 56796968 854576139 674380264 201301270 703309574 332547457 303334120 653941440 721044285 122328284 114792728 50230200 728403595 659784507 104361970 264023272 826076662 509014959 417812386 229131379 421435659 767922867 144265178 324334589 298823634 67038207 612184140 210205396 400368252 539827032 861198542 712242902 255043597 422962801 39196712 41672833 853475686 532679705 882398791 769456503 400338520 667442304 470026159 940904228 327263293 496807437 696859037 421426327 522653612 587172940 910029113 786516611 956688285 447042135 42272473 968949737 164099719 101669693 481035352 402196600 952146500 752602220 287403326 677160864 514247571 157731302 333977215 854712446 636628828 363945792 274642930 547394267 533755917 428793119 199708529 358449522 686602894 454808 4613802 614991737 37588442 933849241 279014096 258135112 5797053 363886475 785707024 572822424 346563390 125845498 590472609 737974956 476978232 101105681 877074005 782388394 727500981 129585210 103394478 306792294 744150232 410119858 626260041 9666253 450375660 212218368 132270789 642207272 228957212 16441379 235233425 986382382 980689394 233304538 650373203 425987488 464792542 409717739 222884950 770302917 462168459 368609729 464651666 699097885 979701763 830066902 134573736 206309011 9937698 12075746 535084078 803913555 932520081 139748913 462534234 461735675 436617684 757711506 818209641 962487573 891591075 559620521 823016229 651382116 367146802 273615579 243101372 382641190 616286258 743381387 823215033 241283314 124662096 948951836 461771265 641779066 493148407 920281680 687606226 286362457 257013425 654997060 89370387 547003961 27008521 132354565 521594766 463544100 431973434 212156719 14778644 364404642 925560039 756924218 818594722 519477987 788821259 891010065 838047383 488458081 28439732 709733015 443322798 474647135 334581115 906990018 185825992 517965880 465105983 608987476 483714527 527257274 456902919 126176858 183227734 857464798 39765748 435544077 752385957 165081034 370278542 589460907 703085804 750015743 179670458 300847239 658870326 905156477 696981981 520569725 968776433 401452280 288546550 969521133 306487612 449897211 664025803 535591431 949854276 715564790 177271763 516436093 364278083 728123760 744090223 807211840 904859802 834052771 738362228 492141662 942596970 924182930 701532044 246174521 658681621 885318485 572943885 478137265 211325163 290335962 693478772 978966342 236972237 15492032 137211795 880002573 424280633 188861181 303156243 376255078 91249259 111102533 278553131 633383601 514970303 625261462 502017708 14988837 642305204 408897661 488678875 442951661 221897094 461646764 715891714 267565104 121680248 144502498 76301897 578292729 316757638 880891359 795012246 942694395 173231314 514317837 737610450 866071190 718882969 861576340 265345353 937450887 80808885 583354177 803615047 645605080 367410863 66369333 484891980 62114692 884594762 760147678 885090918 838261365 885127631 437062491 707772912 361245802 333257899 732053511 351875452 459742421 727467826 299434590 612337724 440907858 996419676 906224912 385886154 712668812 93343732 304432361 784423129 899584803 350199473 491493468 796628817 573983049 616510116 80733997 56021949 426148563 871269438 234342902 860041008 327478028 909129922 738870833 232528179 509739207 693650215 659639253 1015355 402088893 806695590 392992996 662984752 950296584 653820313 444910508 680237411 171415535 43348802 32290388 361181949 896924838 486844165 233052479 545055794 46810585 363237218 866696758 915980077 505947278 596609446 760010567 268646711 197765730 240785998 356790721 670619865 243072510 578145654 594738397 363440253 611536136 107625597 995200419 738882622 403576111 196624289 423173918 996088431 938296678 274294030 963023436 683197562 294523920 572552326 747930332 411078998 801705159 578740959 32463147 889272141 468243471 759249913 114877955 380673472 439153307 141377861 491240602 727164602 365138815 827621780 199751976 113174466 166577216 162893401 68740126 721805168 143230436 184242701 408268974 995807341 737709010 869704438 481098096 298877667 770663877 876372041 35756620 802323970 565335893 242037633 76479361 899680263 778891947 646836762 916260113 574572945 846169351 94257145 963481991 318258891 290969579 31387687 358117205 152339281 25953412 741640137 936996879 524949484 595387570 702651684 469478246 264698502 354010691 686221514 606934204 913928029 239825702 120233505 575677888 210878842 87239527 743749436 501619432 508865109 854572675 379646939 632620721 454444102 360074560 680946207 499076947 632007680 912541822 452250919 216818926 340371114 27522515 498836149 521634048 812269406 153949131 172746459 528910815 182614918 711672865 932917973 202691413 295748243 336680003 278946426 875783862 897047984 324290949 945517226 523470443 816443417 859941528 391638079 286472285 215210686 604865641 693321496 266861288 12040880 131775483 829575727 776253759 323242073 500862050 556348031 88824370 931166770 243823807 982431581 937559935 736826370 109162680 711359611 894690799 817574606 301245575 806366347 449164675 17070354 188573477 94985309 156049663 38080089 80027218 550850655 641425291 256569295 261955282 215987595 920312102 95666347 16209499 876570190 132548693 872856354 291413755 548015186 383148664 836361175 245195675 385266098 747273587 185018068 181216700 498661121 171142590 345815914 636707324 992343464 876455660 377228024 68512265 775433514 921094587 290605265 923369036 389041652 163692185 267120503 524853869 979548475 420708920 486642562 204237455 293366383 309171547 239358034 299280726 55486043 516116810 111050976 92687442 369834858 132577580 865749864 105895844 575976361 848385219 178719587 809453174 848874549 289852478 453637651 463577301 55773164 84960825 541555999 606767453 648282181 876468956 623165221 443131603 22606669 998711036 31618813 605641196 545609511 263225911 285327235 709825093 840412164 695356062 928942131 369877799 393584339 632805328 876482937 252350114 191475781 631633539 806202001 431187285 153587829 221727640 872011608 181885345 958258570 602225215 763817875 317929472 529868843 154289946 422011372 969021182 815138594 884456520 352417353 108685405 578486586 172862833 47165199 212200029 352009547 779856221 768052847 281899577 329297639 903954105 137238425 561348724 47336783 209434720 500676361 867627058 215932628 629586112 640115917 534089181 155508622 356292841 699859217 553511187 880245537 796100811 35796867 741240236 948723725 874948145 309634438 717801384 246185217 157053241 747009515 901914400 295324383 91115285 638883611 295747102 228145120 523830505 476477431 818941250 383664058 175095440 328129543 980180112 429933582 161789126 901849810 53665184 22904221 843980873 797685813 731480617 596189310 490036591 486769988 262333727 785788776 647403857 806875539 224970475 848902277 793061878 741161521 8676919 312091741 600682105 267336456 815742245 586376176 469553845 262815039 208733339 577571034 345596560 657665 310161685 594645552 179509551 804997468 210433227 500224425 870041970 326365590 80854022 906382156 128042127 572970641 538198925 937718743 647323322 958352512 557805005 861524705 16028259 808219850 195034615 655035567 287013986 131686989 665947416 546107017 395442402 808155531 56207336 49416394 321195019 163117314 69790116 506147468 432298208 972805417 871415674 838183010 39489736 956719547 522560253 481497952 518245374 219188178 95090667 88923634 410480832 644974505 148872713 500982349 854579658 40026344 490712336 402610379 242812926 628446047 647268568 438345237 801520564 338884705 687301156 980111545 855564976 809557565 190247658 22670897 667426623 138235191 859314876 952889289 517298539 470671336 446662598 80661508 142082476 411031118 667904609 198112318 678368784 288298337 446346258 532961702 240480007 241073602 470652770 422551997 485262444 931756976 37422393 482908121 252166716 866761764 459785699 574766483 758207146 854114116 564764631 368817945 464815072 692109884 652454466 720472210 109095948 82736958 701524986 419611744 3503296 848939623 60472239 726947417 162648615 731343880 106782392 394045919 789404276 893462973 312700884 891434097 142415008 785423041 205956710 853007257 160524219 59072435 675316883 623261788 958308524 648728124 487657174 966474846 780908243 339789405 946332475 143918359 450863324 793342554 376904784 19125949 41167269 953384877 503491996 703694757 93886805 884585446 492770116 772732054 824623031 989846711 839835388 369642238 253630739 127637053 437739426 727198955 265352994 946706371 350053561 254982563 763901305 367356274 226145486 745787916 133835397 936544143 739409664 486837777 466566905 422292627 364396720 858217536 330698628 608282376 777560209 73409566 46430375 650836752 529278404 946698500 908206121 208511339 727307412 915210036 543158271 905700356 734231903 915887141 430881473 690203398 676117824 254824369 787763119 526908706 192974974 764951832 170125177 754075515 641050073 952160658 947533575 670312775 402368140 708667859 332629121 547365939 123237878 119773923 186077559 492640656 471845919 201814279 891582025 709313601 355716644 501478725 414135007 313002928 34472092 107796255 587232446 428213055 96100408 539340696 641378336 689723614 358664081 430230317 533853105 182464713 842425009 490202714 991012974 250523745 862141292 741760473 918085673 91182803 378542308 974473465 264193208 289636041 654981431 111132919 784496926 476050309 708218962 742415298 243843630 379756314 538523260 416321031 837461077 472567333 154075346 351382930 17236233 441764274 499546401 854611355 104227191 820468539 852558335 3770712 706244405 793838941 626237092 335623119 348438307 172426032 27447746 473288765 688939748 931847051 79384171 525554248 487796901 67078069 458767228 739957274 194190604 712106240 692296139 81305070 544782759 310118875 653637203 220386275 75621730 851897910 644617716 447964030 865521480 148434246 510846676 669945265 581712620 851219650 693821619 944512466 1626050 293217747 554112243 929894820 286019567 560799103 795698687 416429024 202230948 650446045 11316536 697287030 157723476 520306419 309964636 708829568 809691272 207170926 481979347 823086522 796861713 965075723 314409521 901450087 67581898 472646865 870480725 574739228 597953635 595107410 902629485 622230506 74230446 154268110 774122270 489013749 952265206 617622053 923242632 151669132 255406472 976289035 9414210 445597027 889314177 510052695 336897543 300502898 832931394 568944936 567628698 910332896 364167945 990305446 352173775 939958799 236984248 409919329 545588529 205690662 362646119 438854589 16354483 1871356 444143925 735253176 243729410 1281511 846010055 595525024 54738152 183424551 460647851 306182370 515264804 968049216 586788113 420865810 45691243 165445140 685372813 3247651 171029708 886319853 55246044 136149705 324822458 770653891 970357113 75906230 311921309 452649581 107256089 31993239 616662846 749817567 361120205 647108772 741582325 956819052 663349462 311638021 682966454 25072846 83365629 827864229 605475009 455452477 287174737 581267603 654607124 162703312 754740414 557265150 666677044 671757258 891747987 19248073 790165154 204530232 376764079 719130721 862010718 570618823 494688788 239227120 967534679 591915830 40956916 602077852 385904461 494363233 950652125 442430597 650881772 168168782 595125660 348659424 173354568 675480889 992658308 913676082 412489759 98458853 465266466 769884307 98836220 91384713 833960842 403370014 430065447 604109215 299078906 352983702 28064529 171710221 819831325 991285828 886022368 394106386 416587873 322334182 721938444 286306388 829141911 138208290 860193284 206866347 996087793 470325926 404563685 954400818 547919698 867936213 882074752 394115864 273883615 628230310 344586477 461427097 707500065 929720029 719810598 805093548 734787463 388066954 935165943 876698044 252249278 894479759 671077264 435136848 865335032 475971478 832450014 115589660 636465744 656255943 382873112 856263768 562972738 32568229 129356279 969224287 682540459 66873869 708611020 831976315 815195067 993761102 308487726 628290696 800206804 205884460 775260097 663271570 415914391 499903893 707123233 167624872 464815124 763171472 649865820 878211998 200739297 594228266 806873075 666321588 963026424 293002853 930524813 383681438 982109502 876847404 385650442 588336040 272552109 688353841 636585354 934116710 953852794 146815080 524559199 529020853 533035309 997873733 541393156 515354713 18123728 157878769 942049026 473797279 346868567 21977751 164403223 882730409 1065058 41927155 996500626 584413194 341741851 666123533 187456709 379727128 151838581 323804838 702963675 289979295 948857573 835833117 419114461 757556038 330132273 433926548 888596122 887879301 85243569 385781629 768313488 9085972 922921596 518458046 561279388 907241082 522437938 431002042 361110369 482016364 832061422 623886282 936910923 177862634 624896168 625883983 138770854 52444949 78403831 312796788 542338073 34854682 592601072 486230138 6181369 854384110 533519064 432233601 319689755 234910949 625722036 443958931 282337083 807897758 336177824 609786110 589680441 632137331 857838912 850620844 539342903 380118623 104061001 443634426 988865152 373352916 901381616 414135922 633474229 766909447 811367709 144083954 348736396 469318860 86148146 443191115 127694609 83675430 793807026 653709163 60613449 194688793 618749221 283152544 966911082 87421854 943394594 848529366 836897814 610471601 785212344 715793459 452097617 472294710 644632457 975298004 237449361 891432824 900788056 871643474 954000480 267211553 311674499 855257054 609230617 828953492 415294743 143373598 618107036 783637474 592202609 288741188 611470214 568262400 861237896 194210320 464914637 213702339 313660166 462662229 370370112 648383380 624471053 15107359 593880615 485372866 277228018 702394927 460376661 795131543 942052557 127211837 460600990 528040909 570424748 634309442 130249576 613840540 610804138 384758405 885661023 392651921 811566799 83482679 89952619 521834230 406345140 350332284 586706732 155617649 2190982 503332163 802032203 44518472 131010919 185101762 585236313 680620452 566614357 483536957 244665656 172115748 367177435 794410016 781986922 390642288 167266797 720326880 806746406 570145495 367955055 383314021 920244195 804035587 744081533 373471208 114066960 767685918 904411340 636342764 264352160 334589165 379268817 330643493 728603887 306704656 771860144 551462260 636412953 778174689 208477735 179907153 62900572 671487839 962344990 938790750 292881048 773277647 355780267 239522813 487992274 788128980 868433422 457434779 491742598 538470453 892551125 669213995 935981037 229740200 694424472 164383708 68562409 503798475 708856002 101225763 528625114 640908052 376448742 637467446 694865502 460334069 548365675 56868356 341207488 91615741 395203311 728445562 133217553 420495722 741279063 156354664 211045122 848855689 254230337 411431632 889315765 270640068 713789729 472013434 341254138 492723009 662427542 337265073 639452153 829337857 858170699 109465462 16893325 668078326 753360406 459382441 612245804 415122222 134965405 200484508 285703981 873798394 286996682 849332634 584603857 852304568 272765262 776691932 734494482 98141348 927191210 130285034 764322395 38352661 297225617 492523300 974616370 395648818 508143219 752602186 309377452 440863230 846152271 658466271 573059830 842853217 595074434 19291495 432773185 854647242 53659382 182681538 903317975 925040206 925703219 172167472 766396617 215998146 289230713 761952574 276055670 6135026 532344434 906140101 853509506 55394752 538847046 53886489 763643611 915859389 388861023 109078853 121581327 273345830 831015351 737750045 161511284 582562004 110315491 90716546 222128911 968281091 72680344 768233050 922183156 583315247 738331323 470409127 245245340 45037871 129847746 70288064 423286704 913125727 233477809 558411231 930278821 33163915 960948636 680899106 885274553 386022374 898241136 190840498 514386055 514523264 158743593 20216783 834870796 172416326 273547555 663741432 88595292 2489541 990829302 821568245 13415990 369577805 232872854 844124670 634258639 803613606 697434678 940842990 807318837 321203115 351767384 210107523 979641440 850369472 888729795 859037134 659505748 630853591 177637475 918842637 571412066 589956774 995410965 351532911 392450473 851333166 84595369 353011442 428132531 418943814 725360947 533371642 255521773 127159799 757211581 988388603 196976869 809980785 421370496 23824347 510342291 930984007 475717488 983942473 327316505 358996489 958677118 972445623 953466775 339332493 860661548 224513925 352720900 778765273 38550887 136795788 232764602 771177468 152322403 597583666 962302067 833009583 640218792 428869954 527904823 515128587 781962378 17352349 812557013 837259794 665601310 218833749 893005044 838776556 777435778 603419822 335976255 634523131 669609138 383909036 777569902 92431492 574262075 287140947 24932335 231203222 939667297 328939077 489524823 410429069 461105987 496179490 427852976 905389253 61791028 361573912 317582214 123159287 533739759 700724876 95773198 444844353 114707096 463094616 304387006 605105004 210772440 705673078 556651150 334744 804935018 524236671 508200532 225690604 494666219 17778313 3201779 628835459 21935405 503842706 352651226 545347383 307701938 664928562 742191592 285515660 832574173 352427781 754877361 995003764 247747436 118754493 784017118 118035224 772525421 854563185 926131936 498973050 955831376 840351180 233367256 479763096 111654210 461132059 340336662 87416315 625380873 650054423 180726945 171034733 215475656 578934707 843217873 70899691 380700286 451888313 231035598 576702142 877746166 518729202 987880336 908321035 124871721 319673003 268124131 133639039 803314766 104274082 215279465 207973272 354576073 763799079 54899805 224296334 742603185 630579626 919004980 531461017 398033383 107125777 108634949 716414258 416604891 743848317 586982145 415309757 223182205 591556106 98798047 78755740 139949484 985709384 277556923 45843694 812305261 568323643 509857326 44772715 532930518 37228001 265624879 458339924 934290419 958501511 859156823 95198401 195427356 940697534 672143331 865652877 398054624 249381097 655116446 344162742 231353110 778281863 317963005 31285207 875118291 734216826 839277487 666119162 895845708 695091816 567762596 267872295 781121826 315260844 357155062 912726902 966892763 718916432 343170323 877606720 188086323 842094696 467592166 329508745 151207844 659523992 451639939 809786110 912414188 944120388 568066753 53846292 305708682 462613887 544972251 810113914 807698644 584342690 532837050 277491423 136557583 858498756 463166510 468609221 776134343 907696476 362318572 763069100 198292328 704413381 317534066 683931924 430947969 146636988 402317228 187399244 230659023 434660862 765588578 35572903 272526079 960842497 780186920 360530298 296729220 944656615 886436936 650763957 367618089 278295062 412213393 628921557 569079099 596106201 767407580 341167751 160163726 672620015 787435436 151373757 546696405 65727563 912757374 416905297 341001387 889226964 327184669 931265109 969290951 723505973 754240761 789089573 514738299 769912068 177204405 332029082 171342735 891348755 195941135 745421830 621687636 46984350 325739261 144597584 347859731 573079226 185335232 554421259 152155757 686244089 425816395 607852134 631222458 662296769 809942414 125196205 312755883 11984385 686852108 377203109 92069898 775831368 722707640 706634433 952278886 359837242 502485329 171711329 635432827 620633953 959039538 825680494 356169074 960705264 40614244 380790110 278602871 187742079 692510501 700765105 444935368 412346339 821044820 451457921 440017740 157733219 779454782 554619803 65285692 90868444 700430209 535825685 800363624 162481998 150137333 177129004 809879689 853311819 601621021 279291624 470306817 431991126 24199141 392491419 913571571 119906522 979474502 502732913 524187559 449458892 96277432 788474918 808467663 652132396 765370793 312811822 37397819 352008888 638069982 720938263 762284930 867913587 300827247 207228904 223726818 921306697 197628564 687779558 870300926 745243457 527658589 773445109 426869185 273209054 733652807 962109699 327044679 523907904 157175496 491284280 761567676 538326719 352113692 154759658 713351161 601055684 318064569 143420462 149694782 231229618 234851614 996356827 599275662 490627040 881635709 243315184 482540065 753772456 625869142 171751854 515069912 5860049 246312924 465889367 636174400 292456837 735905502 99653768 453982362 19178234 616220548 52654135 400294353 579327279 683594541 837911655 12869674 231585872 354565584 297676482 533013824 833454767 475617694 453726608 972545021 119541367 810093733 493304526 36967097 120785603 150407725 742209012 678017152 167683589 148594489 949174756 256691453 152943281 182626720 847485869 238991537 882404249 555934202 922599491 561647917 176811306 929508512 80076574 222774569 657526700 310820980 881533433 685793765 923290607 877341616 811289208 327129063 517494702 459616782 804103118 655788615 750989413 876746480 445626703 968571561 34535572 176485685 593077267 190066784 107252527 498173022 975225265 459467115 611857236 661901809 424148596 933519354 242549204 143386248 588743341 793587530 317235213 906828581 556631274 331844428 362569395 871599364 544351947 784375595 482420668 135370593 157702766 168786370 558148982 579123637 682561906 210909658 454061242 56593479 193909610 670959178 145861289 82002281 324710347 734595234 696733186 898457836 57797412 991549075 629549368 580396354 615181149 179148124 679775367 45547393 968601653 642580285 179861102 666291104 565510956 491323469 714070169 634881992 404225013 218742833 636630648 599469126 893312001 403092305 992461141 5522238 1666216 858614343 354826715 555092058 12788337 901782841 497043160 271605407 501932828 146989762 609481469 330056280 624815106 399995162 609740518 964461140 340659242 983644155 729537849 895666950 803522903 805030316 760252416 870892603 768229981 263177302 861256023 10693610 394293654 778268039 242110104 962106031 163358401 313622223 836041480 336968352 581176465 267227825 44997724 414366324 971614891 675313929 937889175 558073908 247659300 102615593 118580176 941053693 41389531 29367959 998342047 277172718 845475675 343209375 629746468 9759716 887869291 931138015 178596170 549502758 751193273 193570351 10273639 926565082 656148438 872661743 666339183 174778062 616841156 206635110 396480494 742733851 910328254 550117261 260037089 848341085 926353551 71170273 172109270 482245236 431304635 375203598 335756331 440288042 649213697 920287238 857012203 166719832 483288190 67433427 188911190 995616162 801907805 998912526 429258617 367998119 851037680 640180740 931558610 40419335 879096947 842420420 161523082 776080635 451690952 369524358 332181829 299863144 41870220 696851672 33566637 730666072 409509844 229121732 516820224 154402290 253751509 50459881 720403012 888224670 338360695 718131622 304275637 328856288 613260883 860442178 371397363 250529399 471694743 692205503 540424309 58945355 413827627 720469189 696649259 48315140 939739435 640274601 539224148 754643506 630671189 542664391 305897694 927033481 916224181 544528532 854776983 353537739 707411654 154700942 426260261 278743464 87179871 242256918 815753999 157531147 249526113 774834290 606329159 749302781 319153796 362925981 35791651 462960216 43622553 264505027 391169704 868535852 960051433 442160132 927016727 255213476 246100754 964379404 740601461 19703220 481730105 843872698 921281348 864358622 666903019 976773529 981971237 382031340 88156546 576861652 130715129 689797951 993137039 582591183 747831658 607388587 64425057 984425891 61041645 910295378 276586884 22454793 935547023 105873257 148092830 80425369 814732432 694897346 247482260 422086763 233146833 216600084 648760058 906203946 241041763 126979918 917755736 673742045 359258979 831133959 742779232 157651210 580693438 580393950 174627377 535197969 488397299 535329016 706832830 37718221 614824379 666909332 257185756 720290809 639430064 139532592 963623380 146863922 54357641 435769033 422800043 327995497 821370123 833589532 252691002 9150710 53414545 20596402 460328331 945164110 140793351 535913581 698264429 21996270 341589688 545792815 924354915 615272851 82455679 949812422 899663170 110533196 219742848 521195598 133071150 165409573 2977433 341228424 568813766 653131419 171937147 502767218 699085559 301335169 886982380 271852726 122444054 964863194 992312332 713811237 231452849 366703969 316321719 155809401 275784940 883123113 548298877 120482387 393693239 790156574 847321988 654450134 15949596 729795679 780423329 398489685 493274384 611301985 561078345 884446299 14961665 610232927 535226070 407654211 362394877 142937110 992513074 600993824 891323151 480445509 127323653 100687684 160760869 577583732 106819006 252029935 392873921 935942893 57612645 8164944 807235573 460851869 643914210 822748461 160151970 753939108 985434375 503335570 416264117 894076582 820648783 281815510 54989638 537940763 7723733 603184526 968043650 446312317 469319940 959098261 241089441 105249768 996466675 695290550 575440703 241101249 813067917 463036928 834142945 321785545 519016568 357290621 351672245 700569440 909901949 453121412 998666351 968359180 855725073 206637627 386234782 71471069 250556241 812866726 385777611 131939374 210933243 608614875 782753696 467755633 163644556 379295395 63287286 126622178 529759262 403250220 400721388 634373067 687729687 276911971 435066950 313743922 163304915 528397167 19168662 420402438 824950599 275879448 441529176 390015585 735214659 675462208 484203960 370699904 242031855 888213559 219896957 669765051 428942043 851369862 887449054 68676903 299283613 198315395 963179897 464337666 688213166 722887845 649495425 492136302 68587843 131606183 891020541 652742724 993681540 581837704 741130464 677461360 336097060 689439819 247134612 272608089 485838511 400308429 48703603 73574925 197044459 495025023 749767905 98530944 27719453 411914970 193640610 822598943 709283289 995602393 369130214 589652851 635426657 637602328 904424130 970364562 776657219 296377880 854189502 166498287 496087151 569663487 490406961 383653970 3103036 78533581 785116497 554545454 864586699 357643541 900136984 471065791 73717790 326905489 66814324 170161145 397096812 562286144 195259821 881656548 409293106 595698141 347539806 135281837 301543611 760822598 105094102 396464729 23101911 426057645 287793987 317879901 613721673 312012675 731199957 514228848 536331610 687035566 737095050 650745981 784792839 433869882 927484629 898545069 26315662 65031227 393516516 136612280 919136947 320443199 501359796 558095382 180751157 542917717 431535800 662872793 493176271 638992026 373075890 302864077 380555384 947175394 113156933 921912241 339079185 77349928 880864880 585309503 193056690 448640023 677238839 488100452 630050099 178221141 564194453 508697303 244806502 269257830 428724236 704246217 398134075 598811094 423172008 966771246 864424399 819079320 705225754 52666127 176774856 88745702 133399970 896854092 778286871 781473824 807878749 101969797 216494764 247768258 803534475 607923177 343317678 76633236 392894844 227130637 807380490 493891694 879430623 195688425 540242510 524132002 632839588 59420433 132820587 309675525 31860909 575096268 133563942 666614605 551800820 980395228 819073196 59024139 860527352 551589308 362133194 71988398 381264168 498988576 346565922 275559642 554314174 530231415 392480735 954459156 549518906 984711566 228135775 698683843 226729045 20743938 951313438 277428509 282434989 12781167 561511138 477812542 911307635 49073476 247566408 540987870 138147386 469124570 594899520 646133662 677183172 701365908 628390443 373072894 27593304 643104933 75688897 544619042 659937009 419084589 550160486 417557652 129012787 516338493 545524922 103086376 50210339 938241349 150204185 737796034 358213673 574548418 463531967 669346772 540704196 687372534 369341049 811760109 523441019 39655016 369314642 686461886 929224569 311937810 530461655 125345091 397576871 907879125 194662543 818601117 673047835 300147582 971415474 483273947 596651359 148953925 663892304 650879079 665994710 473203829 153323549 768018490 547438983 261774086 368598261 380524591 834159634 290538795 914909283 547361157 334951536 742274982 64874641 815179166 101082698 949249439 294670213 356914024 966618766 874582785 552430702 862950728 847357175 354322763 945583061 310582108 272613854 146320524 332518966 229550038 938182948 644467045 509085545 413545161 913676148 366175421 984045072 152560426 622300182 738711212 898787514 67890488 583570004 890486894 588557461 155579343 54383352 582450784 545015294 203282281 737427896 182156983 182025160 819944810 375332333 940463504 184373431 567843724 862445940 346424698 430368050 460779650 881696074 53776023 540495856 680572775 249589546 420712362 356770883 680447989 980080611 330642126 803817737 99534591 88150557 520406957 571800016 79661210 198951872 223338678 730240376 163250400 628055003 762776113 381144529 736934175 551718968 162565374 582937566 159209944 285722971 783787307 65142079 54457089 352114438 929912627 305390525 434110582 699059006 390766461 455817082 848890842 810669331 665315791 453375131 190364499 327669255 306700053 199035594 807730113 363224820 608315174 948086831 931773745 605741036 874675102 103698383 154084172 142195303 684864250 879437632 197609668 557950416 521578570 340034476 263259738 422180888 244116231 436562476 107836078 441243074 547523678 101552709 885309808 734716489 533780010 304341912 163865212 306918680 913175487 668013916 655264789 490710165 651956469 68938438 507035701 595515135 493281243 584052636 455041106 152916890 810838444 886985169 54995701 32437790 566055706 769808871 713359264 987567091 572383178 774897234 208517825 734851118 773000883 531819748 323729157 117985553 508069203 318533521 869967401 197183554 231325976 234169487 240011032 689878841 911907476 648641078 697928662 788347720 838845392 652300209 1785504 52396075 293039425 466339087 509323082 446054141 666485487 902959124 358640527 2928682 394486633 740131693 967286032 324779226 49622103 492751857 427384190 636836244 773961089 830689255 923725025 337883515 729206135 727183472 514521654 372033295 892690293 807863833 898932393 424997950 111776731 309827648 30651724 898504342 221260185 494429903 680642228 73901811 7127789 371742057 850460910 586987331 333820048 833871306 222268686 672967281 244704406 593015985 180726604 372130364 14818278 328742126 535625180 996702055 241508025 124760644 368081115 30325657 588511826 526010328 669297392 218709290 927105759 258944043 862086865 347510276 348225294 95848780 580901878 721144259 215604238 573097028 11947747 574010329 810647748 230031983 278580084 975778646 276710500 503481844 775079424 293610412 468119451 896088097 425772563 242208438 170385270 972561301 374435684 69703121 609518244 214438050 402804402 964702169 362973187 475611587 858794944 524189196 471511796 867768197 443968519 583438272 854139338 826627422 971172741 711385679 7322933 763857330 223040704 420047139 42649160 403506244 55989923 869473812 946859753 276842466 192098596 588448308 28863970 48156561 974359902 258433793 396466457 995277711 57292901 931465308 490955321 102748774 95319321 473322189 465330286 332163621 53791720 67182636 328064603 427265085 133102204 627576013 509327937 921883105 483195457 796298237 505984959 927111374 346993862 385834777 477319069 494500601 350946060 297349932 664382139 425003815 750806888 933982667 787872040 28191937 46471906 91438218 187831305 949266320 115889861 394513491 317575374 527065890 843854054 533233991 450927376 647373229 70690554 950902871 40593001 444047015 710709331 699400466 696335601 667257662 322845784 657045467 441172178 592843405 764136544 20760960 345243561 89026420 111977977 107429328 37861648 848595528 339056636 641257888 728718476 853430177 888447752 449909884 266714407 470074662 347272164 588508920 117323800 343566950 511967575 478400992 253675651 905979573 275013345 788354700 712027379 42734207 49952375 181373613 918866560 956264221 28807060 37601855 695946165 328906457 957256415 426968124 60731838 106483798 136295152 864648738 278578392 246124543 716002512 467764725 970359470 445562762 274194746 676891394 878408346 632087494 491009356 635410314 919358207 105257153 235311717 654470887 534325753 397661144 652728471 424714771 714332422 57390215 133748301 129902383 787142233 472009833 996425385 986867998 919656325 61546313 639772418 321508077 778233631 386917926 65493676 673023549 582345766 312622540 9512505 269968529 141530063 811381078 536019695 33359126 913720434 148314224 430085003 604876470 288482205 784853744 463422891 123861040 566328483 117180920 127879768 754298264 527232125 587339506 689788721 145838377 391034954 417778927 504623815 189931426 86419295 798757137 871027961 958907659 363936927 595663208 832736264 440364610 465919269 910688344 414618271 750275563 980176433 58882712 49685918 670564993 758349582 1993806 62876073 677671966 442114212 666100491 379449206 609393975 77494625 613278940 67188119 244759885 680163261 74591256 572610789 18789678 66441288 912406413 51112312 838539970 389625954 421820503 646451189 876320266 696064185 802338598 572530083 614329831 789570538 518249990 496102993 223936971 433043163 947752568 110674094 709877892 307865567 377601918 817801375 203009210 96823284 176457698 780486711 135241957 19039438 279659070 586536942 970089644 465812505 998134876 491960685 414854621 38933825 344206634 664289310 26768128 78224455 419175466 929370123 965729035 330642184 403338955 297244736 670451389 672540934 148404840 166741041 869235185 922279944 574184719 963998304 778627299 728862089 872259348 383875135 252007732 700744530 615910162 810512146 498075410 31861088 681845530 205527389 622403040 647237635 322127427 124786254 89389704 546507707 244936630 762119754 375856996 596995541 124897802 232159682 974645349 9916215 437327308 274174803 342311147 181621625 766836862 270739316 12063751 83401827 433568790 530835954 578780636 466674082 895908768 940562247 963110961 567204810 721817204 549038647 586844617 856272977 942976189 883289472 630536277 302786665 545854722 550332219 900465290 348115269 154699574 921528836 30234662 445152241 289884684 63313968 900742868 185734860 664550167 467232836 95493943 808364873 292272884 253351519 241112455 170737433 906980378 651018418 967788501 897065357 146687725 732753442 558203161 365367364 720284276 889552759 620259394 735428859 730016433 960428214 569358380 218062707 650891378 667060942 614897111 543197704 822005995 768515547 653020738 412133390 806629163 25927964 431457241 738896924 229394786 469976301 827947211 322478708 155950105 331561620 143722968 733008262 372051940 585867910 224053056 720782198 224502041 30384376 644988371 120923901 992128722 870906281 516855306 301773666 305774629 304401366 255684670 150516897 184761063 707311309 306574202 246045224 737213089 868943716 820360907 74373884 904475398 60143512 421712978 303841398 436284447 606335164 631315361 881649341 861746023 240752302 203113789 22490798 609414790 158810404 858512000 540998216 456934808 478087695 542789751 161244470 328908319 717589881 775692020 268102700 703050422 152009599 299907938 886929182 739152874 447449332 415353725 767485945 462715108 178749404 568337462 417591160 832947477 820132199 975011315 597526934 413306182 614961571 822883021 632280654 343389974 29476653 31836435 943453072 849029268 29168079 56614088 290400590 979737458 91847901 676943532 254454115 72301516 921029698 901511534 309176626 680140893 380673426 570479392 587564980 205026425 141854079 584652150 922688421 279051671 176442240 201864993 302195819 716127402 452574002 220439047 689659484 698341482 687098982 711813483 727399484 308731525 565883349 617728797 434299885 686922881 337449568 744112795 39105234 110011434 200581508 782167282 624889450 224215482 627528316 641085752 425062581 74593923 9689167 384037944 923507815 788517896 749907017 362197188 640641724 973387685 547776645 121358975 860050886 803096907 864105459 329730326 225896922 788741632 67518670 420985455 837332157 885933945 389309071 482443825 130115293 433208801 359664746 234010702 83701161 24849643 321640666 686592399 404279749 501276407 258513400 26057699 510057607 619103622 946902356 990665773 775689974 882892671 100997639 565814127 886746737 223325996 58331655 67093661 522070698 141322750 836283958 22386968 296681530 224322876 597902488 108430687 63965700 270374676 777765582 184488897 783103532 54079695 941979097 52522432 993174905 253605048 797027824 49000215 941698988 981226034 220646469 542057357 453326665 472643786 253694799 454898059 734981288 365915985 343907356 70976709 744113815 189096040 917291874 516969607 849799000 505827347 815955268 407216859 205750506 411142989 150892702 628822808 907002774 701261933 803493855 529161458 80673479 348298815 181157716 367121618 304471864 947289298 183449109 553498901 727520490 249944663 539592249 22829952 676315155 28466444 839446860 671737987 827965293 307048246 237029405 515325025 301414402 926822124 716072001 197936482 579346516 716185109 479977736 397070094 701794030 823655653 982152555 926749893 781696187 401160606 12659626 102948721 284822840 412060879 529918928 468215333 170479072 48405014 403896493 395839564 326691991 959972827 712856231 227217429 677056811 870455341 681603173 746929058 728961136 174339432 514180642 632233853 901752588 370441951 163453264 57784082 111922879 358770027 139831137 342666268 671645745 862605527 431379309 980507034 662794012 927477809 790160831 223960650 597354953 40185693 898788491 923687909 539529951 428838323 98260719 618936281 215659918 108123038 938313374 374808887 620262637 424273385 95212458 74757508 69285185 561066847 12861150 597724773 889203032 185036993 178405633 147434621 732560549 264774619 376781682 60685690 88274198 786482814 568835817 900526535 469010493 509213681 338029625 957900343 128150295 605579459 856323644 159075724 334448346 572108888 123337244 246747047 829683570 699389248 496622905 428197410 368194854 284603366 110704128 647101659 894376829 133880129 321906317 416425959 155277637 462562878 109956340 363495291 948168112 400067261 960371337 651925858 872062825 770946987 96786517 275183377 644454627 283665061 212199744 26004322 405773506 624963859 470417869 138310984 278199403 430824447 362819826 4148195 660599155 120902421 148622973 825189485 711518675 35269611 180577091 249616924 927708380 83834237 204936730 457672554 992002221 205971596 77227874 784908320 712410656 715578758 524601847 274744958 369105787 191902389 750879599 99843752 995146493 445496049 328497784 591490368 841259094 288399419 688205044 521449599 360977814 481543386 714758664 659133975 571749666 706395982 655451859 147073157 643378353 440764190 154791734 478852952 42275249 72439427 880885863 891710704 678319099 410352845 491012800 322588131 262178862 410378886 18324278 969023548 412820451 852502573 795170348 728236262 436709973 13426049 891133354 266655548 317758064 655276911 104503385 139084501 574172391 607321037 321523920 375781925 451751069 479900511 45493451 988983048 721733741 411945359 356310486 838432342 427167389 992451212 62641154 353657524 446536231 118289348 389874365 134120513 771566219 563567224 563271037 699066099 37568189 288489444 100773326 846831188 65494469 373960355 388196626 904120906 372595321 665313853 25012370 997390651 475633926 145428309 827064398 960510719 304534922 595675243 606432224 682196981 150426996 169321402 350661899 638234221 647004146 535496751 2960142 531710146 999930810 575362420 757677244 65325312 346246848 580708410 599422562 739202957 970354720 844704294 842548816 611753912 796645229 666228382 157878870 108002309 299264545 526128317 296685608 684820244 83731747 754665961 941151645 801443141 73082360 15092680 90787175 261410635 469514687 539494701 651222839 326827774 812613819 357507938 1290064 988365639 618618589 679785350 397464160 573405823 817387776 571708417 186934282 269914512 912520517 522644424 467254760 772131490 896713533 274375290 131073225 525729568 594891762 999499316 66291184 902651892 696566621 341213484 22806899 733357352 194372063 732493539 589453697 782391361 5349204 14912577 384542104 650873417 901979496 292711925 217324794 278558321 337429504 219398295 598931695 972419026 100874414 913996345 351310155 896248013 179052923 983481287 432417575 121229913 486361749 959604187 430210192 386792961 810588216 575218424 890423679 904059896 627873615 855926652 21869943 667770963 143996007 424851419 730441401 85933245 234157694 464375721 440084230 253888776 290662895 994214838 568273179 253791685 970136157 823987223 378368660 39779119 122403365 916074755 823220755 615353332 293478477 614174367 142987153 458370276 305968990 424266402 741868928 77930918 25536364 616162931 643269906 596462113 516849233 748826214 986525674 506684561 46680981 598855957 390865044 260077742 452648796 892900456 921060638 563578854 518699122 75182164 384244998 375887608 947460024 453235175 283082584 238176769 376909709 892978436 385462432 444103349 124581617 371063088 129090879 237960840 630573116 538604851 70013920 300843157 995403212 746863919 563338249 680735335 215943537 994277390 544183533 617926494 9593812 356832046 735020887 336791620 788416598 79701415 732862707 450148552 370518252 881984283 116391338 761111264 381661054 463466716 113701055 15201106 176100077 660550868 607124625 84125349 416213777 260462229 291860967 389817825 695649807 863439307 37540255 20592317 683179668 485368280 539876047 587308051 392391959 224467687 701856101 780855247 513870923 705574914 170904148 179106460 643580083 302062816 84572894 719569749 535551462 289542802 123869454 447042017 657514273 670140128 607831826 585698086 606036124 431672466 430901461 651289167 300777233 306552798 655108188 821753264 248742080 652516819 872859424 872339529 862060473 35771744 454143283 315826438 713724075 585328527 558989879 579872957 610923429 841461847 618556534 192538369 454218843 810247722 198706031 965925598 328738249 135396345 301501237 24625593 19920944 244625790 462763271 557844788 179973787 651707246 529533857 375952784 852384669 103071590 361854524 689348143 123765071 407496179 947524724 918355833 718493934 97197715 798230246 640340911 230153802 174208943 310285269 791201270 105902896 332486999 939280773 80021613 214119807 380282744 244309012 923385677 689748528 450105863 567341986 901402141 736104273 634582580 777314541 742443765 776345077 189073312 152290081 481318737 429688177 621042071 96077747 76222462 226816432 464015540 857882029 499629260 640682477 563495740 147683185 839093132 102106974 467609581 260885160 928482321 349131555 574946180 249438889 300376017 697506871 755510137 378066986 761643594 656434260 466573581 246697418 221071662 839026474 57743300 385710642 272177716 948916087 189717 613016271 697158279 975819572 835206571 171903840 996387621 246044300 839302308 585608367 760202647 203995279 263227694 106521871 608578278 924849781 944545352 487727801 290225040 355400370 321042762 8640754 129384625 536987512 252703428 835009055 191716481 778142933 121023295 955450558 409115705 201146232 220663029 162865642 43201641 476651018 138315193 160450096 730922400 653578578 715942429 415688927 299753196 852564448 273799319 31780003 367031390 535104768 794378403 98669474 721496827 129385552 224584221 907752601 757173992 821537093 318958282 196664333 690391502 38073654 258683261 879321425 491278772 59511991 169097251 878105300 464870279 169971079 905807890 251421160 877153017 694861711 213229952 328856829 370833775 900115088 81265447 273891250 327196617 523726405 976964194 509810967 65947088 641740676 529357622 867014438 66863711 281184378 199846953 752324091 491948782 370333721 124255528 134307209 465091793 497739059 819041445 991799751 901697936 260234672 849676203 590582285 118767062 706067569 942461815 519384512 772081722 181988622 153443127 650058704 915457138 808705508 534403252 427184244 784545944 127123851 2228592 552368056 752847546 289765708 160701642 5556536 342089742 391546309 558178133 244332091 197216691 989443808 769719860 763849965 116596288 668266616 116510671 60198340 909115260 676303780 782660963 80800694 556870438 864311561 153897459 691855453 340579642 428413626 81925721 423194110 891142912 435411328 500463187 804754112 613345979 555385512 452981554 840058426 893434106 238333981 733672017 759543805 560232637 637589525 548171387 718177495 859204153 402020925 643710858 583773638 237037788 44479371 696873599 782961537 43371018 623477246 167384434 444848134 137254878 622189370 576818663 919870162 398362102 455949279 317434597 136830991 894708881 823318040 937817582 115316002 427907671 371759322 888721572 350757598 854841346 736788892 580707146 655650255 98692136 204018893 865726162 771529965 728816966 440380878 252338541 733955337 446385040 517597206 934135841 727513175 913019225 43899298 100020205 323132750 901501235 105171572 920681361 706199482 364196857 33814423 618740011 972041769 43969669 200856840 442393023 401356430 205368759 101241013 950585939 378477457 71498250 893472206 181680755 288139419 250283739 604319376 380066448 729204937 381851995 296949317 223990727 854378885 286374983 198236186 648531708 984446640 809375777 640994364 793289576 905098548 548388315 420741452 583364999 647289597 322278917 296317377 422974525 182630335 92908120 243308215 824268258 820151187 110601019 596857433 953431883 805932911 802878025 559177072 925788954 907325166 898259902 107477075 656785706 831102998 659412682 716329481 539797904 353806409 430497097 818839561 716356213 50244410 676705326 424263045 948663123 191452725 714612010 464322015 315093211 481551794 457405063 905124142 25504951 842020364 541893764 331989215 706977719 34713557 303841637 723175019 362754162 21018898 675130652 457124560 362740961 214294681 344260932 273045169 118024955 389911282 149965935 520932463 200850708 502028876 905571753 349478989 131613318 857482044 362857800 749856056 777207881 794242079 435348519 541019389 269139591 684042512 82846466 516863779 67271777 715881915 690972677 621809634 800209844 21385800 56151907 210437076 524675888 636736590 588688114 703997831 154814776 371205097 150430071 554491388 177483808 195946612 611099518 975914023 657525731 900159285 979646841 999386958 307412391 140778116 312936479 185647431 242422251 737217461 843427549 542239068 766153310 411715691 380444003 458576544 571622088 957248068 854911974 722706367 157988711 595400485 188834884 690624834 898461388 680163199 395544772 480438229 802395009 797256869 911013666 896293607 59736776 995288451 134583977 260259908 567198352 223191990 925429100 20636124 330123458 272446229 468483500 727400292 359904685 704363051 634308374 851228673 433140190 815830143 204209173 499255373 134608378 281994140 845268504 399416894 728167079 445805898 185397257 180505899 804839745 788555037 796632507 126964446 111499017 879066227 452329599 344648171 57534606 361612859 512568973 354006950 927372827 940050285 586092358 273315167 533407509 895697835 137948350 414265501 22015970 440637242 218070853 420735198 690495125 564229316 560911485 710066692 65713140 466505279 285543817 71941403 926920189 578101947 624613956 539014854 964159259 142646291 665802739 188036848 104695297 422187011 761251425 91023347 540285684 662827338 759807991 639939189 15215601 287854673 435220422 551473060 224480008 748141998 984318700 185105696 433301574 457896533 338656114 976716198 256486180 250945300 488694704 205196205 923557713 880837186 170524124 734038525 839127986 77908876 572760908 319403081 654680246 436022286 535934686 267076422 247308770 359717191 468047601 555080340 207320842 848213293 720427555 833786144 914769761 16121229 974428469 661032363 722220356 830395667 378798639 518031687 104887980 529303746 958347955 665713287 908056613 636182824 448287734 332912496 125205056 416210474 349846533 144375261 312494276 919535224 34109405 36887289 194016285 282970295 169840624 238157708 655563050 404923387 631094516 933688646 678508563 544766836 659456626 350097616 616445412 21533247 32538165 951513421 956583669 582329315 753274004 263715070 538606010 674183665 621045661 614042020 500191528 318633704 923960499 639230964 109679702 84366615 825335126 628628474 616518559 494709158 351865910 190709800 338586493 325420156 669198083 376789154 756533754 478377566 995340462 829769801 105551060 893928668 183314567 478550373 230263656 399441968 513889538 732356372 453172655 313039869 245811098 894682967 545463166 777081009 967972597 488192970 259485662 563628804 23190324 605299843 324896783 734398864 815825270 730960666 483313023 582634178 783083494 993038214 634030772 219554653 961531114 364592201 838864903 528756912 678354554 587491042 712372324 144710653 258184873 334273058 357149289 756717301 595081374 253659240 296856638 332562805 925057971 771836326 379856626 525333299 939845415 971511801 498796158 692634909 744490081 985721601 588672556 507396281 952765093 341275783 589357117 90779788 56205557 897559926 266587362 71335611 476744238 615591397 500796675 33316463 581194860 768771905 400124560 738675058 951635250 210830696 87692556 778086576 735332035 906645710 70588971 462822683 891756850 528931752 209563316 73781371 180204142 504306275 464515930 362228883 485649894 153996700 405258530 759633319 652084758 718041264 548205086 248297321 931075227 15498698 288491697 602095185 75662517 60795493 244274733 431478323 636412115 458727223 764202513 314904453 646431697 649745386 909386681 543128834 830789513 357432734 245038267 656914261 743630444 395604166 299203507 703481443 495581945 819472235 917829864 806293934 41326182 417678613 162551268 866269938 83523502 806081569 81946210 506716678 658709478 761093109 151579354 54552806 761244785 588517496 955448077 307107762 683821827 470248967 649577186 782898002 912139635 219703610 496954259 863722649 912252863 212104739 503148419 542418222 434347775 589401986 368208381 282035496 692558604 242566826 338880535 756136419 893454724 472920015 965548679 167983189 829124586 947468158 807737662 703598240 905942658 106495677 258355936 260703454 416564710 923200371 211012619 223956197 498690376 750087944 461688655 86634789 608016179 990717251 119933025 975536318 439050839 797452370 341040220 935258493 264551568 809677680 927655664 7462189 159001918 258044745 268440426 942233739 383895941 903579615 890263865 448896138 659159769 325652597 249654227 425471031 34407324 40267635 618427472 715436090 486984846 591102572 562503889 961790100 264684448 594545875 227107051 526107142 324018588 211934886 489269051 843357074 118524223 992702103 729151574 525219000 698428598 995696454 623853103 402840544 732665126 867291807 618737100 272043290 312283058 913043295 2923815 341515654 376608712 689197577 222573893 614323290 575256650 819551293 920587244 181860966 39513727 346405277 980232761 700816562 314352587 638137466 308277059 426477536 904120361 665222251 977346380 798553662 333227305 871039448 734759285 296448352 552913376 333780933 100619330 778293319 400363394 427711654 403965521 309974798 4727796 339179241 210536429 265064912 4919972 664996360 170285457 863559936 290287237 694886807 164873773 658250415 259736649 897197482 261117818 593404111 725319733 163986186 713803346 948891400 880859419 688178739 825366625 690850732 508536769 768177579 853805342 253671578 808278922 410923194 608470364 53413149 529232644 412740203 818003983 448433893 687524727 106913282 163758369 146224601 180149917 70914435 918415047 979909921 845096080 743113818 173961396 310376230 274487333 755579601 693226567 388342217 619375303 318471474 835438903 846239633 398036757 50672434 486995152 310796597 389910484 741048900 919185366 227014032 134532961 65762899 889122894 401979116 972755502 517493660 135024217 787906824 570356824 374500212 608079995 372650550 125463967 10706891 63288432 891595155 204111726 742949181 88087060 950702942 989366428 517350024 725167569 389859303 974692157 665644348 317664932 406497197 423758584 471911752 489210018 640246277 159884820 731577479 794189978 622503977 285859179 235463659 977035856 703620207 933413268 250828596 336161855 136183460 833982386 378959684 505970952 193902573 703517132 101000924 89234651 838176343 797417628 61297649 129043444 742826471 125958286 648498123 406109330 826018495 485206884 521519231 199376036 717598597 974283482 462041699 96959394 991835345 109233066 354361186 253753838 370584907 274433895 401097884 554952478 975312919 860816668 283779033 160090089 875983733 860190255 496530172 742243574 717375084 999412927 431118568 41115043 198722763 502482113 470703007 187611468 998154721 496453879 88073383 168274458 929393291 733025510 297932272 103336440 334104484 614326527 782759855 966414446 571373769 782316754 129257958 72540017 594804654 915065515 182471316 545848405 295682338 801885135 770417562 257744758 304216771 803586591 478202974 930608981 728547496 901826181 305389089 583996140 695903971 203052645 561583195 65922277 281363744 335702757 845242705 554309623 903966253 738183307 936509935 601976052 647398063 701350027 682129120 326282344 638382714 233994920 526366577 895886408 135162852 253106572 565689049 208255112 49656489 268426020 416247938 134866162 329617724 833410898 938149131 813787358 765187664 901909382 308683999 669521706 445734405 27749051 201902509 76854309 43566174 90158210 897938818 45315912 759034256 979514858 864609505 422333893 778305452 593028212 456832283 555373789 593735687 910617411 683170862 792009320 47053017 567111289 723119948 539020908 563239956 651771138 721053146 539577736 218859483 390770180 420460063 150336799 948104433 928333324 612239763 57692282 962879443 652292406 476379698 147188702 450706017 466714244 582153868 550033937 742993037 54285004 770577695 676370733 969684769 902714643 199282143 536592766 502805050 699929569 136475595 92443747 370410920 734144050 321436742 871452 63578835 923323664 219249864 970257937 93951405 350983730 428131979 730316828 439702820 243283101 484320564 630249623 792102734 112728538 406701292 96375836 460549061 929096754 608027282 532885869 151512144 916277346 120629972 257132615 32836809 498235219 143860740 46166247 537315711 891525759 454809145 952981657 681113517 862519684 768565323 860552883 175177092 166743763 342507608 265754395 862295993 302391720 633664454 603595058 348977353 475430190 275380633 3276804 221945230 707737841 61484429 917800815 627809606 327738527 546419511 201469993 372019745 202723117 748944308 11281219 867943789 646322223 815057253 909336874 72256882 804229732 294629657 2761384 596556082 345801926 377226003 217707549 254258924 407252685 847484225 978977207 99353733 85969249 681148074 244471380 127824932 254037644 323751359 390556721 337007372 174698964 376765051 906671092 413075174 153288506 845093562 788487512 938194352 294161797 924143061 306370411 825048162 505076382 880801759 93157136 722856293 897912790 119763509 178396283 393118374 761597065 849333282 738446325 607375083 226693744 250213441 966325290 126125185 998833489 918443257 945003563 55982956 728905770 306111178 832554060 495379308 270828750 606116907 335537488 164550142 319611246 486150005 483669479 19189792 824994733 10619768 411405237 329432566 981541739 895934653 875537365 998717800 90184073 548318840 665671421 945175292 284448332 458585558 176851437 949987972 951435082 850236069 832059525 543352685 508376353 943908635 530036739 923637620 60826179 17319399 919169052 699609790 191597992 22452320 112826039 23579576 885798380 384183646 557422044 265967342 379805354 261817980 451349114 497730839 836821731 153617776 144890005 353481830 815287669 211538202 349750852 50825728 853599318 897302820 914333670 61772025 680568068 219926813 139532897 289053537 159711611 282079798 608310845 798412908 454149304 809110341 463618953 217781416 956580067 589568713 202474170 342505375 303970557 684488611 260943044 465904329 567585693 274151854 346574320 84476996 624206526 992185872 250376900 729615570 241124127 704675986 696813582 749598646 83549328 711537823 114049193 501069305 837490703 437541946 973076811 798518990 886630882 64999296 481581296 366499205 479834060 401189411 654740502 48177244 513500543 389563630 310942121 232088572 664288099 68140878 366605970 642017621 956978149 665957811 449056327 62575659 137423319 278849761 640868748 63911920 262352819 804549313 277964688 602211473 699476264 692084997 930913759 345348896 387421553 633837344 718099987 348875809 776035185 523173661 447099621 537905056 677752837 358545268 365235961 876130940 116544634 110602461 289301971 396098718 117554467 647608630 895101345 916781146 986314478 989080926 863658075 899361818 802446876 286005353 371211350 195788107 804032238 485352603 760269770 716618420 405681712 244740884 899307364 824885720 681166042 208852687 591883668 184697268 800167713 867838790 698806639 912140428 860344718 667958103 431181444 847656822 366394080 613302340 20928187 761299136 482204611 937314427 364194111 55990036 432282680 597614006 829539020 245796428 497495790 660247846 750964717 281018970 290189039 139145711 263505228 463489317 373842365 375282207 709818118 847517135 571127754 451937459 949735152 378722149 108741819 941083564 956934452 950317618 351987674 346621930 104889571 985706800 433518071 383200649 918727569 250443780 913450910 743150367 397612204 322995252 234813246 946468730 76661847 28203828 815632748 485240885 596161888 790748219 128432513 350395252 649741154 692029852 622209950 988777486 361718745 145503714 762947924 273933755 221842784 798635983 205187674 323410742 125177220 933055672 11617716 249471664 225696957 442281709 755352730 566070514 776238710 459716207 403322252 503522440 338044740 515258607 373622365 298029176 933806966 370941603 58502286 374610110 266372640 367171905 641705138 917617581 544268033 828240558 623608591 621330557 556204072 969004274 955376197 337215649 878890113 407762538 770463295 792904621 156544837 196377908 898306986 588669645 427182576 950325329 15079900 468615589 875251707 340147667 368525783 851690536 413276278 512067654 175907614 255554791 137224829 18041921 782281917 413025744 175870728 461563830 56746431 974709230 90314401 920836472 209005892 915171191 269443094 907856134 795316553 470587817 896648148 787301839 688956497 45111183 22740595 606323464 109035170 291561113 657598088 28970269 202085590 336231328 168114287 516974736 650696214 316973700 902073712 123196159 801913310 86974082 622694378 714830788 434263918 268649518 479282570 530974729 527059963 917429314 530419819 974497238 273793327 233954293 420759715 190225379 616827035 979612744 516267739 889346789 569466433 591511304 23897242 291592459 134408392 57877263 62859636 542329725 556256941 734362720 134458926 66673061 977674573 22774857 907252125 95785904 709586923 537732047 55332770 745490512 571494259 267838840 490553966 369997418 737453570 797373460 142710346 627477686 30323976 268084920 333273344 78397365 787636366 96162099 575128291 941518107 299521682 712944060 380156194 927831132 929470701 578591920 459571589 917458610 304784236 489592559 464504055 601592506 467610045 605375445 989703508 673297563 532351026 220970961 408527265 133977280 445799063 255808235 961901582 108635569 98290525 422090296 934971008 331430242 217018579 731093845 213170334 619902560 696430161 562665288 770802744 211182577 227447063 583306005 26501197 393668360 244242205 279263155 630982166 498268988 664989601 613576085 95859261 799999686 572076655 604577860 909156048 656518992 131764965 828976321 588023701 686590032 976754785 374887717 696944227 870750290 12733542 703876120 796196647 618591871 101087164 609699444 491828276 273295509 568785250 495271986 347942436 485536292 335458493 130287961 939339117 453078610 189484952 628445683 812048045 234837089 255948535 809593663 739670042 426073961 220567892 936326642 456864399 418995315 486588652 476047228 20360379 403365103 436864897 884794037 152184978 27639399 539824842 78110339 864305846 512533105 338327063 164133384 635783557 548573225 100493628 298580568 619081563 602171794 840225589 691838051 450386568 220106849 559754491 871289746 343302466 287665493 814051637 794274665 468292729 31880143 735786177 626265666 496423797 334463513 69516210 586490180 731122989 559046378 313681715 415211765 811878835 661508628 675808230 313011914 667795700 435792343 806029184 406340428 297233642 382073288 875621510 264272316 734944207 78586347 709754478 952930389 861436020 754675451 950631832 320852966 168751749 508027462 673497755 360888341 678996192 549830014 502368462 188951624 904028922 384495467 341404711 19354346 787531279 788524046 970020246 392839463 230760748 53229190 106095632 91978991 946923919 377040163 892041040 881608980 171486584 159003498 167332019 376268045 268124598 465877069 719689930 164826026 859752595 990079033 165164952 161155795 485440590 35712230 512636084 198351247 846145410 731472459 837220507 516919181 895030181 511090333 728936398 123774100 819608691 997622423 501263217 742690375 932867001 521717466 578062278 851303631 731065678 185478883 933422040 192472104 718326562 998603570 241967924 493244435 770378130 350367924 72805068 858204175 332471803 155386688 389973587 178541136 149693283 516609024 16009100 462718351 659608227 902123767 204281588 278108181 842289396 119236037 84075202 273182652 949918716 383307301 791689347 322432176 421085624 121007677 60350057 543479593 298967697 497913757 48929767 24321670 655645538 895060863 772455918 937268470 299059458 468481188 155812290 547328847 248611757 632037139 36585248 989591507 261119496 332141125 266000197 569165429 15318067 737687165 590747058 711420514 332972692 167124711 402399480 932970924 157111043 602285235 983400852 437766051 869175719 40720244 755427954 397482314 23339589 195753082 787390810 496809720 88836481 661746388 435918946 71219121 18690212 223562556 438736956 310216788 343716143 289180614 364112849 170515289 156339110 645872249 14905843 274785522 314666791 738130518 186355287 688730286 247535451 318592016 230948350 109183062 294249312 910130765 12823057 353489525 966053288 661808881 580010798 348971062 787211774 698473364 138627599 327927918 292750079 324453810 401981598 594028929 163552196 360671539 854110108 369105454 778552116 123873077 921142911 70866447 825130990 976846522 966369747 110193105 1342435 347417545 188050890 218453307 227920350 896477191 604019912 173755952 420174785 52558216 364928572 317305076 574894527 990768573 232560642 3852474 601246037 58860294 999921596 210321761 196940163 513157553 472877078 222388471 199535442 563134742 160580323 716966529 4409869 683948704 481452696 130363555 435739968 569641914 813291139 950475146 887328677 405205624 263054917 491722558 401856149 476104906 378998894 740433655 564358781 246904617 832199341 874813130 262268538 582071635 139202929 798086708 186020416 794100336 206024058 444174466 320710017 50905842 290165906 720666775 641655015 879442090 213515824 952344163 952592966 127997741 448840938 355120795 867404235 697648158 728669019 453632730 848438395 355573997 333493854 822407974 916370167 208652945 788428471 800592203 680982200 474192092 728448903 302683953 332756560 90167196 812964089 360420195 432176219 777782016 181983456 363699471 273371685 773993008 268846012 123342698 361509403 650743796 639187207 827845937 393560026 461973086 457916531 487005917 567186755 273014771 890617525 21684984 559158656 942366925 407947213 134431825 379534405 923216115 929704577 710777210 175139856 895982131 536531343 882434302 68138485 84101307 146497143 246180350 578335525 202192324 826529588 75396729 529139743 449183048 897333062 189137529 639112988 832845532 542759531 645025589 732697434 19495376 464227442 96903017 283686590 346103113 488515408 750202686 981593164 926893377 859306158 725697254 852934489 464520013 885655451 755999017 203693309 844383250 940406452 39329256 556264891 65877626 586809524 987895187 833184124 638117783 785824697 592387868 762306442 549864789 756545400 826049645 781870564 549956548 961836586 733107391 128345734 384177799 381889661 364326406 824361983 366624620 960915360 356457676 422898563 342935467 289220650 20009907 671274149 31715793 383504705 238684939 559417824 448000297 745716344 68143753 435816798 474293831 871606325 401309493 603164647 576205541 856111222 612417016 787652864 115208441 389241418 262625579 394847012 358199350 548645779 563602745 757217377 921984222 809107269 60302679 359118768 556716976 494917256 981767628 611952283 969528843 641105059 931668233 561183627 203246434 417969263 430949439 122629247 650641111 151996418 248999213 898195900 237099301 619051580 481019019 906737317 404276056 519191964 357140439 146571586 753079368 427360487 791413578 700161640 431413807 450111540 21340807 483935974 520041619 463531594 917023495 656751930 923598187 249899044 213255598 125260359 115567921 324750721 890775027 260376097 980820971 927203071 663221420 487240561 790955046 631476932 880936760 212845028 766243384 928961510 615612884 947443753 123265049 223013674 45469713 996751823 650930866 892531405 943854369 913407992 71592085 917047998 883739942 876813165 39270831 317600749 973953942 515667337 983973814 500937704 281922621 871271081 929773247 352834445 671677266 465996415 803107227 945184217 584532337 358273965 376423184 437391675 925538226 477895550 339128831 645804858 150641149 238255811 891395818 405185585 409554383 737596149 924791543 484250174 199991743 877841587 745849590 707045981 499396665 8660350 520032027 348733233 930508432 551631026 16602718 93348030 619737515 991489378 979998842 706149598 903148042 795811435 415937535 657424406 780185501 453700735 251541267 928557636 471974352 790369805 392491457 804849710 666935693 633866004 716966451 765168707 719299899 840331703 910140867 319424124 99279522 8529465 727449897 535033438 436058273 232466335 50285883 464118808 729913297 652650129 576091137 243693543 20051454 746130748 65532972 271369622 444354395 643422998 341337981 869834805 774436044 391194942 773913225 198556409 937095704 112960193 481682700 801582231 232664160 18012499 643580837 715647282 745812298 699368042 392794790 612035351 476653450 209666865 842215895 767468601 720142186 463959744 425601071 520331400 830089846 706568206 464850079 976723037 979987155 464354285 90284698 507754268 725752186 704346669 527274714 362310972 343215050 589278646 787985580 187812974 704319289 502383021 751166648 644699075 689675480 736873310 66017136 539965570 421623906 545136374 132532900 388317781 658834724 406978334 667511259 230776493 606134392 340597790 221493071 164905204 87991057 549536641 940864301 139165062 715747420 3607292 74136984 275972668 778612903 215274951 523309156 612121865 834801337 867783719 581255365 394719932 950199632 83322593 97687098 830607101 962558540 251438930 820048276 766599705 227621945 610459783 157620834 456124284 535712865 506993890 642637768 232113520 772302834 582251570 991799275 833633191 330788324 303985337 530063043 370627431 566826739 803929600 551822554 498594093 436294985 631905153 306577628 679420315 759095669 267586842 398884506 413953568 671670591 511439339 7737737 602231643 60213806 254387032 981528334 454644990 631742100 234629063 237206162 527131319 352433183 120432544 794997250 515741808 352904068 700812736 785891969 356020779 440508729 205789367 510686422 543875370 871604658 552258821 838802411 825156821 434835220 421927559 100777212 301600254 289692344 999307105 564948555 339656508 620302315 886682726 62884110 431152022 642111777 41043142 541725816 918104467 552694263 454912346 503927391 971445431 145714795 572176823 311084374 989421906 470171606 307871560 636892485 762614257 52266872 887981077 943311855 27248915 195026929 781943361 927886786 81753768 476818947 722521076 629741444 999867488 390958494 144584694 526939621 406266485 998107112 14339553 894899262 524653689 357131684 106611012 457816319 27494835 482515718 909636079 90528512 159784683 314938467 600036168 699078042 577840617 717909600 869997253 688911463 101796588 343409462 876005229 531793903 50551822 378116630 390308333 305537979 943890988 167294619 972365607 673578474 839578292 271433054 330777028 710783210 175652080 978142255 429231540 924108997 636464314 13038731 352493445 203506815 597189453 650701860 298734303 714068681 821924294 775789392 729945704 801546979 386780795 339163098 549970456 546864707 813699595 942357602 250475860 861819229 149222342 182003168 152551321 660599030 266859798 346156101 479662482 256332837 936912962 15049989 456260671 600502708 139185592 557629291 123039262 184095565 504421700 84389552 936137439 644594089 528174380 897631090 232042291 339847759 56726896 739264337 79264836 871650853 522689794 881746950 205997239 686170273 547859789 661349796 177707649 575603563 913191470 866738163 307747798 426893176 497184163 206630131 929130420 979833441 563138124 234667135 763552157 56903825 11735917 634928070 572983247 545298323 198925022 198723512 513220163 913760971 504745717 978371423 776094806 89026949 208403269 179688985 790090680 761846805 414325838 3227010 142709662 903646325 807310865 731239925 3168592 29443000 301509749 812045824 170823156 589544436 148045170 899114049 823119817 193067097 745714115 170720767 20126462 418520248 417092815 796951670 322054706 713672881 207127578 726272447 297759007 383418500 88114530 510420010 74335244 862941869 11587215 72771274 92760270 357133198 100905512 12710543 24285785 729106236 174242976 912791583 511575356 850179402 935706645 892279796 544803852 591793879 745867438 64046128 746571959 635827746 883938794 856900152 199971472 677469622 295041805 796787680 850643856 281677278 498044166 542950200 798219618 808963995 611210005 638725233 904875046 226842113 912380171 465766314 748276499 507596617 165239448 1521072 806898212 883575782 640193423 406170495 578671559 483124446 133308850 362494300 728311128 354195138 606047910 844516258 597791316 845903079 997344966 428255209 970184654 911162715 652435578 158792179 268859998 265353941 670238819 242341163 740764158 371726369 326909328 512580498 853007489 988432369 142333277 553708948 539702414 260707402 796154761 508811240 162738005 640976516 163120781 647138993 528864000 399971649 784046962 842679203 678193386 560065951 528562099 459965831 97573443 355541291 525343619 143496273 923943045 76459226 6676500 49348109 229771857 976753412 496962542 27800793 4443365 714943174 33509837 415897350 381770057 201973599 964559665 470118962 387665568 54988673 702728372 808379865 246399139 528955747 413319821 569732273 46088376 235651475 151086167 897693343 360705616 310016985 958384578 690719610 910025314 348900349 119529534 951462932 236920503 755936524 373639098 919018060 268214277 848067367 627142560 651905436 459796382 678138678 644901095 962618664 878049930 34383456 764815745 22460402 685031212 71171852 194506988 453921158 645890915 102593943 445148447 817645966 118651366 479342467 818548937 89948696 678004726 539649399 209845797 764613822 28458177 463983202 52148705 292717459 963031016 270525368 214778193 107882670 905459847 262454142 349647213 380396548 245706112 849947955 988507824 715185820 661935176 339555591 655714831 693783808 96748609 917588222 475394566 371650440 497232724 618188895 635693147 661838517 908618007 107898535 124009102 712820923 143980189 339488766 25993039 855216049 405518898 639020560 603203837 554464208 929684207 844378557 475953981 415620114 41073936 185007392 604661338 343481350 989930253 170206191 286155331 66600135 25804549 252170568 678005108 654670761 257076593 234831661 401748174 77481559 741298100 172730976 90580067 550097223 624628010 105404686 699565234 364309314 280256253 853509250 748885490 238382404 973247773 14364216 158373087 444842067 480815152 744874120 330270954 645514111 918645303 405358920 135943970 909845631 710978716 344021123 590265878 765864746 851686369 509757138 29170538 868376341 401645095 224554433 415515328 968464163 775356399 665272676 811403668 421574375 464498032 518459621 262346318 892506443 955126867 404133080 294107930 432159103 960797093 965398256 74255109 31683284 322496757 459270814 264426550 136355850 785277622 746604453 264615082 368666250 133358727 256529851 121232953 242520626 315313414 766648111 849035735 321843339 382717406 60764468 235882330 32689462 664120190 78645209 550128198 434227231 489533311 488081323 10245362 266010010 24947722 537305208 86765784 922002670 714506438 904539469 148254350 725395866 8087434 991739098 975585642 593558473 361606307 524176990 6141644 482694477 415672864 337951677 595204098 41580518 644599826 14297484 646474701 197439518 484907253 850132017 383338291 75993141 506942108 508293219 13938014 117880267 914014987 810830581 791229042 297950391 497669851 348777573 628330766 396710562 816677900 596543202 283953107 387470156 691861105 211282119 385658287 868015151 466656636 207601970 897245067 413345201 760710750 437121696 784917538 942217567 622452742 600925023 292083700 122906318 588688262 497107929 839062364 196415000 27552636 340290596 145638331 623531302 530143966 226343672 908877914 165606763 893093832 635174726 838070479 863440244 251550875 439255440 984197353 420548604 280371064 310875517 56030875 740646170 286329295 221952352 838347470 97989769 777836837 400885802 903598643 51315171 402809538 258345566 129175695 639218284 906917766 163549020 8605121 331059590 607917067 330186573 279602050 424888250 538480768 962857299 250427035 651514110 408686065 816213940 573026806 578832373 616529939 942652560 948523316 471724039 891326548 257332566 219271356 465556660 695823396 141966438 389349245 186469367 667376821 800509350 715138283 169300838 227667889 591877860 514952475 700585225 108596429 774605885 380630916 197285689 75676971 90421291 181211750 68526458 194214904 566794662 114215124 940720907 110752346 873210139 135900726 989319561 419792947 80686666 458403240 917341414 761008747 638976338 815822938 348121943 290126726 525535137 555099126 781688501 100983601 759339473 585311321 158247871 832963236 35978440 400020785 882065329 965056488 455954055 753133786 889930075 743338346 166720864 597540450 550417363 856318106 284827769 290083986 249846402 664529704 75995071 389824942 870775541 644745294 175825335 541931968 383077042 362419907 453371906 105686648 385848505 182951886 970059711 432566864 440839001 622352158 863271576 252720279 725018665 676239971 756226820 422815562 440143673 238101323 903153986 350542834 449030789 506171574 872613450 970045223 163368635 695538329 151200974 267595234 424425872 125668749 953920485 696233356 860753617 422635912 512469607 145247709 110063140 654221944 416949309 974937763 852275809 782064887 313072115 29711625 633683637 639712364 186886018 729896996 92078926 974293606 665072195 446468788 217537350 165602530 577455296 163264783 648933742 919043792 250219485 822874635 741721441 831528943 965782822 65026328 118978668 91270264 767957589 447982170 298208911 821111209 766855598 351980208 266419785 4719177 602131447 742448780 816592349 863403283 435586814 558096686 10187122 671855630 357398115 191033502 785511431 954177997 699496518 43636716 673383352 398814603 432992193 871756550 674831175 612358731 717813272 843663680 307287926 604716008 97207142 109152573 117503464 400156454 901051481 471617484 327183188 121844095 459748466 814573744 147225370 810969357 829214831 134695307 448902248 179737259 684008531 158537917 297356017 87625606 336221045 816578168 331923259 7191049 984044537 724872016 15132811 544665053 960336816 741743705 252202223 75386297 366366525 918095143 965232702 475548446 133003954 119601146 442633294 332975555 249404699 806910190 186911901 771107404 247147864 875143361 758433334 106198150 174384496 432814021 525020690 896369031 443214765 411081742 235209847 500703643 900076430 609773740 622017482 90690109 670549509 137556724 592104443 318267696 441113687 161943218 928076503 485262082 111009703 424397941 848071006 581755709 599464261 166716500 527969243 775489285 512114925 278607059 97351231 537636578 872442243 633548482 207853698 171523356 54533995 184157264 436315700 920941201 195947132 348565992 782701393 348948579 61832061 501379059 302675143 819986739 601734189 890672135 841719481 181888583 282549542 849306331 110076506 23963150 224471920 329492627 140355547 381335283 134469544 264154667 297825102 736133931 486239766 305009942 983975796 489878639 908059712 944201368 24344205 42500098 88245233 833866067 271161751 264455565 130626742 544316175 87474144 82368982 343144377 392262636 726239286 677436186 298539973 23315659 96804817 983936538 205430993 73910695 191460254 531747396 487338802 547795596 455079842 337637389 844119951 16192257 466443338 981647492 214011469 907097827 312522106 175323694 780440860 487545765 456618374 215206272 711946534 719212791 455523631 92279238 411084030 145478016 982577344 360613656 859986252 170242941 753144584 266121500 518201529 547121630 400912587 47123128 506899821 477298621 601572015 397688339 651324482 318782441 121890512 510078306 816630176 905736042 265757134 67743487 683633901 622841089 131835122 636770817 548478791 929399122 833051729 173194083 588535603 626135109 653402213 841109346 571069297 585448048 146769130 66149219 122469277 871246583 854495894 100487135 941961304 563693373 170146969 395870788 837807675 523896352 9669676 465659696 433929572 648577912 876325715 587152980 53795662 19085889 961180585 172704983 110237265 424109668 853706726 949659003 68338777 43639928 518416692 614511499 253186839 136253031 545153245 820720391 548447710 649687620 515477727 887741056 37728917 280179130 49378016 812907664 935189421 559423758 595053339 476943077 836443843 56347036 813239073 667086802 941700566 226385084 451028661 190425246 770396377 780872776 71374538 262414405 942236800 447714475 974811261 555566941 151082807 732788029 293193036 876478677 970919260 243129189 433681409 996863846 545485154 786801972 177035816 753188882 430119683 256842905 254393829 796130678 216512603 804379411 252644916 86057481 357105869 191582362 246943808 560357332 418116545 572557057 149540307 810042415 540196514 397062694 358759251 843004432 376883577 834311307 155869356 979138735 653262271 229676534 368309868 527641411 521443950 944662652 888515485 210716165 327016977 327174027 619882132 893086787 424369964 277993709 922517307 24190606 94954098 988523484 130720724 21505893 246038797 197148022 557944201 83285263 402985202 433921974 974199743 152578149 723682688 282859839 750954455 442479658 528684121 149536432 622240235 134994252 325363274 592394839 372706577 941485971 856586267 435072018 340208442 896160419 90386631 60879042 939953117 58559610 371600807 492416132 447809504 486744593 329447055 380280029 608087886 663871388 676559953 462890423 464744254 231276681 331033756 518859934 65767407 798230400 230979599 637311477 556458349 3327504 986668007 52793720 400065936 999244519 173898525 506879658 190599107 938361116 556857381 278661320 914911224 197588445 68303708 987466825 388314992 221764077 970665882 114630960 398980135 78988884 668454676 864581405 786850691 103250786 928093325 230987735 820146013 411036368 631688419 500943620 436468655 54396787 900915942 70872917 435351059 566802701 780881400 51750986 763309845 481396627 440067228 480151790 966511340 561208582 43149149 575639708 610217737 493978401 39972084 880664213 292084668 192553915 211401271 617365556 9527612 739741712 15686925 882318241 5361854 654718717 303412787 991652794 748620766 33260596 693270468 641992032 522592198 694251690 414081470 350623745 174519216 915356115 941340195 35537133 196227432 310603733 621825170 762030154 140634816 665145351 38328956 352559207 133018356 484904004 566792385 94675353 925638054 235365021 693601075 541890177 390408220 256858691 410528350 831805548 613108621 280348959 605071806 926484184 935711853 408556244 179847940 422859155 509799510 906794063 217397545 216887350 587980510 405667195 518894162 871931944 698559882 857138261 513607638 439533357 448215408 850098690 182969302 553809277 663282922 248809299 274933517 805145600 685352808 373600495 626441927 200156749 325964467 632033052 156573246 930214362 254692591 505460342 165210854 686716071 868474844 189721174 424842352 395698496 516936249 150508548 173021047 706891014 396654039 906692197 79666836 708571061 402721829 152574774 8723158 205257736 779210585 3433835 911649346 687128101 917046967 292283369 705018292 762382780 170727025 949987791 319343169 847241281 995473834 898375772 723769415 729215668 213252081 212603459 590562356 762263061 768846740 349231481 860479632 33792427 45589479 337540228 347252025 149157758 439323739 166092547 989734527 657479414 547525054 876247354 408356687 319362057 663957511 308579715 88696328 41083198 493563645 351922019 113867399 48764480 899486614 894453497 218065219 687192312 872008112 125148497 773796300 264020164 866330463 935396368 797378267 133880057 233736742 925157474 99700582 633897842 545454661 9417834 386378374 864819290 215006137 610305644 133042216 658603364 78808256 153878246 504037601 477857489 42039290 566262889 743058235 95903112 361892713 924763215 191223156 970058873 97463108 474411942 925047530 15971260 494430050 144468099 913453969 465748983 707980972 656182859 632761090 976835846 980979376 180342314 96826714 706542776 848028266 581696957 980396164 449654852 990529245 550244772 980442449 770238466 307894862 319371986 873079862 386437647 640775103 363928437 970410213 236737159 399025721 811668834 893834959 416668692 665846232 287767380 443261187 691163480 585552380 458950289 423224829 33582795 585932811 760568434 35037704 443961580 385945866 46313241 834380429 479380636 464229571 868688454 752011042 209858405 187647406 218407030 521696201 417797662 464757344 99739643 981603448 853817483 894276909 76318156 650362541 622276168 341135500 336419805 306324136 745672414 356048397 45644236 736713428 815022910 254307370 75628102 648357221 436931258 773972765 40533340 953587363 679082646 337975334 597548307 591191795 327565936 903397096 612712768 141991228 433805756 683311985 72417374 931850190 846510865 384647879 871168948 175644675 670296872 124872234 361498343 233140494 530716612 759380387 905885969 610990008 19838434 17138285 122240387 973141784 675009573 570350182 864817613 763835696 316839875 689831724 354114633 704421217 350951351 163414946 770409034 671696314 726759203 10463637 599156903 909444905 124970647 306782928 758955790 874162204 517113143 226044086 545674770 573090829 148813255 902783082 841853696 722066235 958150164 393912574 368011098 628441379 14422162 895210624 661413068 200678867 342299731 20080799 806068704 868555658 548979645 360893215 192229292 89730399 129654602 636532372 77540952 587434941 288349411 275651886 640068495 739773297 445987132 386959846 632673459 320981520 664857850 947792170 668806405 588386677 454184759 929620972 594977338 563536885 648277797 999303907 967440774 908180859 116591320 816975738 333309636 614959973 863044517 495903636 533528111 765706504 387874776 997667256 492916079 212410695 214739490 660622918 672347335 199912004 795967325 118343368 100742859 149933568 195935543 27578461 163643451 763639380 119767896 152369624 449442882 704416208 655624639 985967033 138538141 261569636 898707973 142310258 482184071 663974847 638974136 960855575 856233426 529653394 318940083 23150626 989175107 42443730 6548677 103762375 221174525 574240713 775790215 620922521 786868228 95702854 684848296 430709975 257938071 757019908 354258690 962275065 93251832 947148728 187693971 384013914 343639705 110527259 315025069 954324303 838684509 580286809 433682387 477244183 886927604 987492216 298273 818724062 445549689 813363596 711915041 171864164 666814103 594368371 806615252 348122926 926222355 16126948 631827853 807772992 8194216 722092237 525617786 702467454 628087872 515502731 335010255 330866792 444756102 696711532 328947653 538416774 985945754 494324518 912868343 893600111 988055805 756514618 235921955 915987506 182722244 414193305 108389301 248794886 182791195 583230919 48846682 892835777 608294346 96421015 969634240 755719022 272309405 466022575 742502955 4253987 52120708 681158044 195827208 283557123 666070611 188777883 510472278 23666858 190721667 86339740 449929782 473492664 727510994 422389771 732689382 427099405 946213762 978779005 317718472 483814594 707631386 178221677 616533860 419229320 759266314 586845203 926268388 581600922 134516155 382705983 134980934 786024978 779320459 719549832 26000495 173594383 494450828 237417263 211272282 400649597 842123436 663059221 150101550 293545320 916311789 199905864 319540973 383590372 351081828 852474090 678569366 284109272 686763784 520952786 733148694 907438395 875017471 820977330 769223929 858467752 454242664 837574401 774881179 193538331 275389648 822909895 8334206 935929437 435422335 707132817 701479870 525930604 962811624 478006147 8805411 380951178 13896634 397352228 296143033 363910151 90373646 309088949 202243751 341521393 696286754 335685229 330269684 577999773 190128609 322901862 953901477 453186005 847331884 406826968 246681413 949205312 235475299 278112273 429797254 74541899 960169762 605113947 715895460 193505812 74653568 158464141 117416321 404103698 405814841 518047992 728708076 426222590 114617687 686891144 958920008 314059842 153704061 80433919 462279015 385777761 825028519 725207392 569543532 327982089 607529795 357945076 250588474 586031748 819060811 107558357 910498852 371208130 353052494 635152702 497513669 312184430 152483677 384699460 933598063 986001696 792760121 278440301 619446324 762643279 65762155 749988070 525758102 432521825 35798855 907535733 219014003 524594613 16321071 707127651 775904995 394684503 679078001 372017676 391723510 329666858 627633362 266746232 222450384 629527375 114718406 652113992 968021706 220751470 635215876 33425868 860804388 798993244 944642536 656923543 817313548 158191604 569521918 635834947 664802990 743924852 507125631 661341144 880064839 728267174 102681152 7219813 144106317 873957207 563541022 649379371 618112735 804861184 93502043 555375724 331605679 92807756 469597068 174654020 721210284 236252141 91574205 999193805 203827377 749055357 345352236 31082487 171236594 15314905 614799155 681247998 420307164 476946289 705977536 54680214 903915875 573011795 297028723 47050561 668216604 854459082 611007870 638511549 277341888 315313131 206527330 285355951 920966431 450812612 46849569 530450454 45147290 808594392 222275500 832825336 816527617 215936859 147661812 447597638 502894678 638421453 730200662 746876767 303160595 857474284 557360773 529352332 883620804 191384685 811134727 499708124 948302053 227072725 318377691 196151205 345757843 192017367 293978084 136638828 921575408 948402087 986609231 475297410 985105462 23489053 844740466 837391844 483353029 216900224 161041330 468395185 291890202 475857022 544777161 619171956 192842670 613051245 632470810 937022995 107404060 478212022 769537453 264385804 761486247 417932927 87337386 374901528 690275531 172435658 544783845 381221177 16948849 208366335 735503385 4655425 788570859 584066221 198045766 163299045 390077880 631426430 886633910 944426488 529214675 677969850 210013722 229900747 998033700 632647239 206706391 506561259 966984185 138260914 605385818 718427772 186168332 493546738 882421543 394116993 753355611 315938952 884184804 916000551 206544597 331146969 664964356 82696125 532069118 793338428 677514880 559484728 39817042 63806276 440490575 595633111 965378274 600797446 719448323 889174220 800999876 514444081 920339363 767619464 773046694 133215431 129674961 245133260 232227024 169586637 503373211 383297896 459246019 222612895 862632295 860618074 489134159 219973626 509468168 304492107 152068500 382396538 671454661 876070331 706320597 305777904 696380334 205499799 620660131 813915701 990183507 123076551 971460858 718050374 253483609 921301665 771103300 859603434 886213177 152096261 693089213 188364425 43386892 422690053 385825597 400405370 79984626 954329379 672594650 292579876 90468143 767653975 326949674 443952477 442993251 755288983 209717519 537955528 94843280 744531645 735877007 481934630 396185404 237450804 535220920 597597195 741681509 615566303 259415161 936779895 619626571 105796246 925602196 840951247 56729525 322301155 744874772 73109054 121387905 563119949 740027487 395553303 995771499 260708825 952723593 17869828 352756710 986033060 865805669 369372189 205548374 378114366 590114811 402256721 92538765 710763527 785226650 289321571 102493977 199647476 516726839 681398253 821494454 138718224 370308602 177023251 458411119 700583970 164472967 48539940 851096249 315884751 4135710 902861325 525557264 784695777 529475793 362614311 994482726 892895631 231216089 232224892 125057922 469526052 848533837 180465891 615095181 403128397 554752808 831590795 939323707 687332802 195170002 607408110 39103220 177989285 622453094 459419625 383943261 990689906 835232856 791571772 502374915 969409823 500358722 537833391 333728797 510885930 70154219 950450140 606368633 710868077 896034649 292956234 160194322 322764294 514422205 960139466 3579838 497496933 429765460 87734702 719915742 117838254 185340574 337897736 346861195 905630471 840080014 812712173 783000289 197908384 158033743 363808178 143931683 116518023 159538039 121463260 607723804 577343940 693178187 684917466 307010389 312159681 783492708 790346284 511843409 106696846 241170138 227199817 554685222 537973938 522541833 913284115 871322108 770858608 116986300 920675865 7939953 780531176 936790805 747543348 228566944 600611369 76131732 963994610 661098318 326101771 517407320 516041673 368232552 887884597 510565395 314729540 744859691 209297176 414432514 23980049 420690449 426898052 137722531 243437536 641849904 834252721 834859159 373866020 926223877 948997430 901418467 396233738 211816366 273304491 71795496 940823717 91440709 777452361 170381282 527703213 671317293 695566413 301457496 246684010 804765902 318044490 185030247 887517215 640954796 863778647 95101468 999097878 789059174 307766392 439145838 830149420 527717636 186724414 892917095 268231333 738730051 160822072 998045902 221734084 224588405 85384230 695314386 853934630 277421595 200910386 485128462 793115277 101594121 498151071 965002952 911632221 169122039 588567058 120675773 539685115 805791765 107443365 737958360 702542395 432786382 661022338 315888862 730807059 140146056 832992197 298343045 773596159 582459715 547342299 436301668 930990075 23334726 513521366 849633979 449777854 444855866 867102624 904634094 477591610 228527600 7499646 437717902 629495650 748988172 479413400 255288151 385798571 488862962 107388805 669382021 665487084 62349309 658409730 734823113 170468232 440965732 265413150 973582412 226977933 574911535 922363672 52334196 492798243 437099067 60746040 106969185 265916128 352584340 967219217 256714817 921221306 952008597 54884636 627998516 797275391 520331284 485102934 177069536 339297646 476051597 946979577 342268365 819927555 361980440 833972925 680113103 61756057 377391012 396107781 859606975 267385743 78374998 106946911 117426688 871937598 859411716 509472654 902866152 992005499 568868805 224223796 135786722 384869177 768360341 825260570 87399234 30683252 508753511 946532174 40222988 786474638 245430836 517780059 149957609 128564799 75181770 926496926 407541004 723974727 416789962 865271486 405601941 665975204 401094356 423048624 153182226 935299443 76669136 69632859 983519536 748464382 219513695 963604394 874859947 297933610 654145939 695805300 577010658 337255955 528482982 187896516 356032245 67506791 613461478 531723764 459769347 481693618 185319667 791051140 919555086 705901230 163761362 670352588 327803748 334828296 827210276 594217721 219583801 446299420 492439449 475605124 13568647 719525201 222308029 510893918 658218795 451111153 585757089 543402171 147749682 971559928 709973572 827861916 109172805 6579916 107646367 344961904 424163955 90321294 264643833 535137686 882149608 277798314 244955644 912471362 217202997 447226518 851545586 958594159 69314444 136404340 676285820 133977496 250386844 372057659 168770377 128099545 664527346 529765539 152355947 303102552 393745769 647583848 895810910 300870379 157987546 343582454 465869668 155358821 923201861 917879913 273718484 227211918 241677545 124681543 28057110 573674986 228095276 427718707 571418166 163628200 467266075 517937260 534982206 725032979 955652401 616463827 949200369 31529037 789719738 107911085 260904442 977007182 207382301 230952030 464372942 378740341 561755630 542094983 889868099 843958005 739307194 615875025 935794353 496832118 775571601 564995668 53564176 72887666 489178556 65411726 532001128 502286739 187970198 124994256 664933002 869364211 765555677 887795591 23395403 450462848 946186741 232376134 245690527 932884997 49413502 968578946 282777326 903446562 437375710 737422183 651524384 648353141 286008409 980207748 67050391 981242641 140327210 77307109 951786611 570951878 71346664 973425546 148195053 141014405 306683325 86845275 529627876 570429425 188496668 172441601 53445401 101273841 282395508 871608085 957162430 167439585 364571687 595679455 702784686 915977357 6344164 375823675 600973140 284722865 701320862 389646767 561395027 670156244 647916025 492651870 365372160 985704214 912305264 754891180 199940218 206657299 383744576 757201041 119073701 794501939 947290078 320840712 339407299 94498704 731461115 876910181 978774956 433444959 254458009 367189733 978787558 141913842 772656184 815273398 91953386 643984916 174292010 144811261 91625124 1340124 15075712 860637509 709765295 684396379 618909396 42629465 816849593 964191756 410364268 423582958 529016928 805087419 266775226 325257973 711878441 784307137 638362564 244773326 548904510 694350292 457066960 872112226 989988685 956129187 49366104 139578156 764336662 151469308 992969625 112227113 689137963 343900096 665386815 84077363 921490633 967068771 430014151 53762631 780587757 7883172 607380377 865960324 895340851 148775315 589403130 853503559 617550300 746446094 183989806 429779236 87831626 779675940 766578453 843098803 722088432 893924174 926044008 108475333 701855661 71519258 273091581 806480717 904333027 583086647 130325387 731422704 425766723 869643796 862729624 144762769 908686938 443490223 9568177 162329329 205611446 652891635 509446116 229290781 802120263 330585867 985942690 277529654 117279123 475256049 492079467 12466232 164177360 267929809 211992599 126779267 208931497 547620482 298342355 26644337 190403325 317483150 835318084 508528605 421164281 672273768 318077979 523978704 520955412 244886890 547097094 898999432 160371500 787942138 47962402 448517408 815092878 76576548 646141114 372325996 502197367 288559977 636341 313548105 617458792 276502056 946207525 439498531 363051638 578760107 568314341 55388659 449934251 432621175 465327852 9859310 266108501 524379827 354029524 851990974 578427100 306759730 707525842 111035040 315609856 651848715 929221311 657825957 554741726 737488310 622799946 959092845 892338695 184238853 587389095 193781930 779273167 159689618 112018337 801650066 972985946 256905858 146281303 537564746 752612964 277135244 561063131 636905300 511909545 875176354 685166457 55059019 696624903 763687154 385212824 917995733 768400885 589735286 244810363 181263480 834017319 654889578 801327652 842152985 244428714 712000956 383853514 678070264 620785668 379482667 291024887 41610115 137340313 270898973 915687112 711792954 211834596 325308874 840257407 519934182 421752447 761545245 936376017 904947660 391692849 92743384 823048450 643487993 251955211 130151991 66575391 171096596 342566742 753401394 975503830 803752115 212731361 513524337 2370652 120280891 287709289 820296646 148485863 952984630 733174279 898468521 817382529 413346738 400189400 165037108 889489388 139819732 504442906 621505048 532097772 230984393 717970661 400035082 297846073 545083049 149998305 231475310 592291551 410837585 592238808 653464385 943063858 523541027 759351115 35653444 260774861 872466628 969719817 939632180 218536174 298253656 705751209 652345683 493323427 236216404 448216089 737166491 197301376 860179888 908184069 277126387 381669853 914179250 191376944 71734266 723545648 358373939 926884720 226704895 972492558 29249157 932452109 779682044 663299394 703046604 809177789 139351186 120015676 243185641 14145543 534718487 293940758 281315510 908981132 650856864 762052100 672197524 456340787 149665501 213490237 837962020 261856553 331093661 739685885 921644841 408793230 502068299 607362389 269623150 581143405 74582977 298596252 303876305 789967348 792747136 268319659 271768434 246379821 82744416 750423735 974692187 184373304 487312621 280708930 47331537 331972695 757185261 807506586 702764270 300914120 256497464 163667712 59582556 712467225 521288821 820351806 998506538 72330971 623994923 27005343 992359532 955150322 560927186 222770341 719531871 596074078 593054591 860614321 901806974 193087481 600782483 113570159 154279318 243080601 671677386 706238844 131761174 159952102 271161896 231616561 349455716 374260220 992501103 932974463 446594036 824384060 316178387 68663147 943538749 31072181 917562848 854030928 235697476 947971491 455053873 508299210 535886428 45992670 674332175 646567403 883177485 596689262 423972514 812380502 878537687 835149387 778998141 823900061 593942901 174332175 854862471 922413304 703066098 321491901 707282415 78365418 811239314 391010620 191329549 823511156 876483775 380059851 881923293 761178372 706662333 388586046 955025237 244258566 287863113 258826853 44786773 461004098 372545038 597755268 983566625 385279783 433665705 92780614 492635943 205150235 401693142 647198199 112351780 877779684 178111534 706265101 969183159 427734061 545260539 993259004 109411242 64311607 389109450 716043965 496313530 521933420 426989597 924383370 837009359 772554478 775498246 54843394 783816688 683532902 30042653 698106310 191482994 534950254 940275359 663335776 205349300 77630331 884136047 610001564 594032277 721619978 7698854 266824732 432793061 253093512 710143166 323939751 358362602 232116641 492670049 146020270 196009433 669132438 110479812 45227357 342404394 835113843 9239515 131371134 625350975 686158807 410484987 482160275 362459709 131756841 862129120 716304233 667924353 531645260 869076642 899507093 261709961 361633910 147290802 100705824 460119733 872491020 355567634 379266387 304246615 251068541 606431871 788237605 177467223 807740865 675458356 599141346 803332788 392837131 359875753 124332770 69221167 964655932 531219967 439474807 652885233 223255634 911180400 346682476 420320049 754856923 898629614 645178241 733243046 909917234 478237846 647920761 181846069 37528162 618819808 605666691 198714510 870352415 807880909 671251508 400139685 981211228 571060478 846742408 454189532 988062828 894835373 282274406 438243458 744689453 60002843 6731460 688773741 35490339 725396288 680694638 358698379 675059092 803288229 508895113 397949286 545889292 71803547 30788570 431029467 295212225 329047321 5245581 28616922 6816935 302145862 511310661 270816529 799212073 924858911 536629546 647403445 59107447 140527669 129639318 780107068 150315669 75638699 993003741 304653185 828093356 823279916 454052023 930102624 248555879 924689505 983478741 31231154 155757058 644039635 532408387 3838212 571899288 405401769 264876489 241756530 360566462 292926615 798933774 595270010 246138272 759231461 528681389 292184814 534681923 214137336 616440106 326205578 746861428 514242397 15504963 218443998 99876856 291674287 127705409 374967632 856270372 344646353 83108229 456770080 392094744 536586087 46970785 315346419 648434194 966691905 870031176 671430569 32342995 878362651 339861290 370759677 565132023 521735973 514249837 510667990 371341045 493248453 517854265 276709671 244005254 979327208 834004369 424813325 485390964 55007969 568645126 66282982 317165516 64126895 874393966 455181392 911502716 989176899 297786841 841631607 743235573 91439148 809112394 217636641 425664051 833991948 269439286 116668845 178926798 434967478 171435494 679929802 545182635 287448720 419860398 758322019 110683253 529251808 600648160 4885995 966120987 896799569 102143576 826283003 331224014 153055379 826220992 248702933 980306539 610784280 643207351 392964827 595862794 640715026 357298398 400651425 242798885 800041138 11518849 832656180 278594716 20434377 258558861 928551973 204812704 306831261 542507412 518131091 844693852 834193625 682184699 24335526 155527279 683017742 483215084 802387055 600315726 114428915 409224329 693896994 97038958 978157707 931584331 511012098 165720536 980134759 193682133 690960786 292911080 267688078 242126782 721196746 723529049 292618189 784544574 76956789 980679243 892838327 830934416 354835197 645375263 7113801 369704508 904320073 140402206 470443379 586658947 839344936 520421605 659413949 398133170 89812790 547333167 804109363 723604935 565986624 126701257 359180931 956889965 253520716 142405598 297794174 302186763 462189337 313617950 116811562 831218550 417191587 666810747 139105527 830893010 807120828 722996023 5251618 664344529 463033719 180042534 734779641 754349141 84850622 716191450 842604789 687502210 104881560 312804590 803468353 593540838 661366989 795073269 972135722 466459475 314051296 632980057 121224932 19246395 126367464 101400065 583234734 125151503 41111960 516847644 105970569 463926422 239801758 158937504 577120235 331956775 383034159 683560904 397405143 533684791 779017421 954661499 78736844 103074388 509582289 94948469 408983020 958150189 81672158 527509527 407263604 498012500 249012407 749410861 340347481 505664459 516908113 989597074 306144916 641873323 411393322 403253569 848594215 568594164 929960477 716128398 722736983 73746026 732025953 981959054 583269594 279084421 709129916 348842809 568793170 103366298 919377438 288833455 401078756 819595762 920407403 47435591 447316477 664295326 926029495 361789389 500337591 538826694 949857892 907256187 675506358 400476518 525724438 20303440 7993785 450938777 457815295 437477582 781780 431813891 673298571 794884579 929905466 666483659 784629351 110721899 464575661 306742757 350766135 499755053 561668419 18853970 958245566 446722560 244677803 924503302 656713570 639027941 382600456 455400808 678437537 168327190 476253179 469443695 361145257 232397265 674969437 428642938 314781215 478855485 903141388 743601691 176401090 44162676 377926681 922009355 559490996 676047546 671341901 589062320 842815643 190532999 900194158 854916421 513593349 748167952 305245917 439227146 812779398 499251594 136362781 147705630 507145855 611375966 240044736 758424245 59430145 571818345 220712160 557568384 35749413 174637984 794572112 96828110 695999442 92210942 631318837 996170040 814175233 387611916 85761051 127123082 860593156 147656143 146949845 519564790 760201036 529295367 581908301 558951763 456375127 443326619 537521008 854012601 543335773 411697818 116716074 268649691 269345402 226886837 334921904 999451765 919216593 446994921 643866553 752453245 734365324 206438310 879138260 889947534 903369569 932801150 137896640 912008276 447848527 1872891 230662423 774556978 377839940 308259820 727784891 743705166 264889948 365357238 907559563 276581806 308399460 376112914 338827136 948160220 676095017 438044494 529680018 267675072 658200953 429128418 81564813 85932045 816398165 250849076 486278926 573257369 869463529 693388800 254560088 133908395 530013415 38286083 327880794 48456915 156236835 683308122 365449846 580236451 861755585 67047410 53480074 466357055 841306374 618712198 128259001 121407606 292543910 230342802 474076547 416606216 462036790 559700672 723199900 443181792 173373444 31110855 758304048 29095856 721252418 278776692 185876008 62739136 235563883 407395643 394351717 914933470 73109264 244550248 720884542 148456723 565549432 311860021 465533488 630616101 943637102 773482095 607092655 501495561 109613552 711168713 163536982 380253987 853682738 496995328 659117444 96827298 173384995 36201593 86270721 217846387 209000287 12036284 573879905 623567994 918805116 759860921 303072271 45452258 926486042 744872503 622674180 440932721 947982647 261025385 41246920 296223891 259794113 866824617 931103605 934773293 18768782 652160975 276754873 27805932 181912140 93994464 700595618 407260915 22690863 282685202 950952722 526006740 151028224 6860435 72232296 231751859 839411930 898911320 585356840 555028569 543877599 844285823 973301184 720836645 607573445 421866532 780787960 909307472 105099543 359242946 458652596 766704350 391754480 625686243 82836811 479914677 764787671 132827844 822699653 179245836 427263693 712248007 747841333 399224918 357077574 308852696 402630216 949421222 959715915 319233005 187011861 5263001 41361597 504490538 735057978 593640570 265534883 612654195 872895884 735279151 738075550 53541174 387416361 504525483 95724376 375625814 772197399 581875165 9570085 37109487 316676888 950628761 756563321 491595942 560115027 633438321 129630593 836020987 741791868 557965764 976404372 676850976 43329053 944094726 903292608 556256921 609756641 392036090 54925430 783447999 818280746 117123661 913622565 139776673 85149190 377489254 784674042 814199712 37862686 749232684 419885084 509057904 558855172 333453483 690608196 685173113 467623664 483833414 779826679 101561548 532784605 940753342 840938444 391287065 78164104 269183590 225286821 614790758 109978152 637232482 98750907 108932650 331873087 685897087 634879895 871640406 733721311 954831254 914064175 681499655 600810025 317895065 922512867 380144224 718325309 915408178 864872782 362146616 940756997 954130767 136894363 952384913 267578998 961300925 532432304 246235082 736739900 581110350 876585880 391298028 287637063 542429178 644274549 446435967 963983498 897649888 698476732 347051290 416502897 216082868 39072343 89486781 294510765 474355658 869202320 262604852 561435303 28748999 273807 738905402 117605893 719724693 612972474 105073125 640914178 209379725 738578516 57071958 868988719 153871302 485185839 300180091 354288375 688820242 159460621 149596518 395357210 935217157 553530095 43357907 691077347 669343955 156620530 524555268 434714082 714141966 507243585 744832729 243354789 618512456 107256525 652206501 36279710 587169425 651524822 619568746 662390794 884001961 446757381 97558486 913940108 978889802 917705175 437030851 319265341 343176400 138753653 735587824 296647109 664192216 983681335 446360572 736920811 378553505 341071945 714934571 463734955 255607395 145524373 683377129 693169839 724253229 614061255 79102929 290968781 971816027 178924322 169360125 672143460 840959202 791525743 591258699 133435249 914556694 45552782 998497071 671140360 364858032 948914510 408186250 222371971 393034861 131933785 924642322 289676488 250441590 800247349 120126101 527134335 343582903 597714403 714307767 235947629 890009586 765949089 194281224 634126746 117375197 492520499 689771070 737520079 994844009 620292368 420192635 945483322 671160081 951670492 6675672 456499291 318399451 734955926 62357984 802542181 723183072 138415834 42322835 960329872 883679496 261191973 227584254 394429684 75315940 39434823 218280145 656550356 275622777 191753373 246530138 504270000 314323267 419849556 538599460 388252726 223306791 126328327 229777496 263178103 50105700 179796578 167325350 183327909 851349727 40250093 774503238 711306405 153947694 49525020 996553239 135341610 540774294 329963838 423901855 496333076 481096557 525588520 409251753 904993720 582541143 694529720 386263899 923092198 801158635 59173543 721243969 446530609 472081141 758489115 111013940 716876084 20390565 620155415 371361693 963686361 487716324 577142120 86249796 800035571 372337575 819324201 642536408 544235695 691919019 854714190 515757575 509701915 613265561 641489012 468263805 863490221 274309541 750493199 976049089 31307469 725976832 885493234 878425072 95884873 629986016 793123552 261161204 515811145 645121425 838382170 234441897 507477847 709082290 46970575 983366370 710901131 347369960 697433884 155885116 541652503 673739305 329458434 948381051 686111340 9357151 350738441 411258129 622147531 516285385 830234822 247291507 824856083 835179964 180532682 80110524 86536404 706855579 672969482 764820477 351489157 965891045 181824149 172828211 583834986 197138116 148931148 121732258 475004956 450685872 156982381 344474987 620807525 211506082 694136401 632159584 486768656 776169976 982045422 526973135 922606450 922347082 839440724 127482187 779976795 968685401 265149578 65469752 14708060 772483772 59077763 812918683 639523419 182426990 357312816 22589888 15176275 191876989 241414265 222443781 604040490 435838299 872787920 886646951 388089727 602499409 276620607 852759168 984839110 421233158 827468072 202612432 215774444 361047943 652881913 67254424 48206358 587410103 167508797 899082549 576145540 708084427 625181288 240362572 155738879 386678644 512025101 265683870 10261271 831570145 119513171 293991651 789366678 101661180 118403756 355096084 678906263 189611266 282630090 401774371 526235625 328670083 559965019 794458342 466978288 575714747 205150662 362421603 167642086 631947001 218959799 541044760 994162891 728191838 522216830 245215149 874643698 79847702 209280205 262488404 497368997 715294193 98958107 988454734 353297940 934508045 141207536 167474441 448217793 412159444 430277846 582214997 963022169 771724093 465608563 499518791 220764708 560040418 647350426 713588277 909172543 813501384 788914423 733274342 622356916 616246936 150801044 922328471 618792442 562083884 867991058 672797955 226028809 312049884 850303790 356633547 93388574 519450977 968099854 517650869 99030449 580123861 149720743 261418728 960535726 725139730 221319636 863689141 787924964 460675411 191233280 505839676 80613350 713195847 385916547 462512798 557601255 180617555 953682788 7009372 878204264 247883211 595780210 24551768 621606774 244495980 343853142 359086979 829656864 843717010 395677963 886599709 638347428 617954442 74094990 743609393 87068198 165396143 302234761 737249042 363752711 748069286 646566208 812560437 185347490 102508920 767862703 56227688 953111202 737347764 930081687 507317883 956859086 820159919 499402283 939522435 497579562 609487498 879662142 12182997 588347852 394098270 844511917 256135843 551570663 5476717 552505676 319455467 158056336 505344380 937476785 878022078 131376488 322004110 389376072 545847644 274994944 287627511 914269868 174865735 972789900 632529637 874011448 748825171 603838343 691746010 376986903 791552111 799782808 631340994 699961241 476614730 517577011 283742199 403411824 237535897 270749726 454191342 237443554 19217496 346863559 641947180 461836894 165042856 247429043 602638104 624240956 186788071 177040730 981021443 600145694 117805390 915937299 49396213 710474788 87749439 38702941 668803417 256582067 302344951 25672525 943579345 495556248 785047547 378650956 807212335 558453979 231012479 551143033 485839626 38901543 407355244 822800252 671069566 381679523 436167743 828701298 478557941 620970440 398448569 392406824 869588531 581603458 407975594 439302071 337395309 989817962 51687020 973020449 727902725 197919613 897516320 748787141 857497278 356271250 941115041 563123140 89277136 912171991 427484338 647253064 148877905 99879177 590680926 853742944 850215303 948612683 527592865 782238230 768418748 669717894 506434030 73613438 525084062 191738217 971848946 254468566 879178464 70139820 830444385 846363944 923534650 976098564 121583915 423924982 100498885 142597932 314156858 547231720 826100974 296375354 782210990 475962812 878603099 162780211 621434589 570064864 835263864 855689840 985325889 329885255 509761525 658355299 352681128 25188252 678785115 426369445 111555566 993269234 639927278 536910685 261552049 576314126 380156682 459385399 48043528 63665647 228815335 663654733 317902935 412160525 125818995 427878051 969191578 7777100 465855232 841343784 267224571 67186764 493732238 344065027 987743032 173128146 557678326 515114449 188593225 681023840 77482175 898462028 544868883 830075110 99661382 261162261 446401371 792083669 721105572 695121154 52689620 70253147 947656832 823706034 925994688 115302699 812290000 229581137 510287827 861978517 323676426 568943356 307487809 144364536 56101550 581387865 555429457 934458715 278167468 538152500 624284607 36145775 561472230 676465194 197134480 770265918 556801428 563053328 787859771 939612341 908235288 526811775 935847800 999445371 444992061 370526819 998300262 253654748 137759678 616284117 190774123 248874500 311963867 897270332 883811864 670258491 236113265 232953507 331090098 51414162 302903481 141672151 127055110 78882757 903588841 442875877 672692260 56698635 747869486 343356703 335211048 34330549 56603203 621661085 169070398 436310818 246309794 921864843 290363005 217264702 474964351 269952557 729232136 499624655 801548402 262805669 831668167 654107463 322699908 842534467 997070604 604225674 304129803 561164165 207046553 23878409 778364779 130752847 446241979 572179460 680650729 774355748 26546337 102003722 104035101 1859786 338246549 56745200 63355195 242793583 256130459 721244600 274210596 304040538 704899563 564257307 687172463 458031412 898554119 339739194 28998924 142078849 940530722 211573802 368055033 105669536 668827356 59605443 15403105 17107763 823758263 887399918 841745537 83138347 358523072 208252250 404199615 423495843 958872035 482729611 334485850 906401506 988028823 337603946 849867951 755451529 426743703 3748776 599119481 925306797 226088717 388010031 962530329 104212288 340310993 83349403 178583312 389376332 25100239 797296946 486258860 85690503 790239128 851368057 769518096 621107622 68878057 926095590 452113609 633801740 299671771 711272521 127491809 278777227 79524121 776487444 77505787 110803667 321981363 724088759 581360344 44782177 228618204 728616921 125299357 621327107 620280198 986698080 16976038 56865506 709545438 495763975 317501637 611991689 259898113 88239264 876648847 999631530 530080990 417796274 259439428 221704882 814521329 689148202 899378357 723368569 281091375 192493843 335693526 523624443 386447862 893101979 214556609 972598532 520754787 119932724 324984954 422571012 907690066 40440934 218940048 466492748 24203214 95205108 151473272 972932906 844134230 306045244 800386360 550910334 574998027 939348656 506510631 359013156 928322000 330447844 780486171 5708603 915416893 836032710 670059723 302612641 935761613 860939289 337272082 12351912 76694638 83441920 672188768 859163352 877839510 518681066 606236114 844436034 414666554 767229727 334475549 857034101 148372350 580080597 369254520 736289635 328723002 735214756 527085977 184855931 4099861 422412122 561501042 465512098 782711319 978705441 412295477 323397819 366462451 939213316 851922696 516693631 8211906 210143937 349011338 920553312 93187304 785825808 873363068 207902722 21102299 820881744 248136665 149893008 369387053 988680969 979015815 561717869 717153596 78934599 943073921 689417346 980528528 41939912 716735309 578485094 740585903 385451563 747255434 907726144 677803170 3681025 697573035 213005027 124610357 963477794 647480455 954634670 398178567 818045296 726043931 775531741 563172692 488464555 483708950 320515526 426166835 813727546 196775514 472693570 901331178 709847232 804877581 749006808 204927659 760089304 311433203 196084609 50631602 331284609 818055070 375929155 585586277 47659902 724196306 109703809 427152252 212788010 525539488 667120638 118485739 951024789 681019717 814339079 435350602 426715734 60946202 353156816 659583825 687148065 7508045 595981753 759938975 146275857 470483758 8535197 35450544 45031349 293862382 304916763 775143659 845626643 235545181 881417491 624340753 549008961 33235627 266218335 863856393 378048344 133473559 34234165 390444791 466009567 6234009 359794419 935777397 242811720 662093934 437984831 970672086 182879788 486116360 442781487 784032092 444962759 546330540 971063794 265894825 278661790 350591756 504755899 332637724 153287292 26811996 859859855 950893576 884429183 809120765 66227222 856204946 949492024 130588515 564810072 854730995 639831638 420730892 248851424 725318640 965039226 402398173 847103262 785733002 819928390 482251345 157684178 471651174 960398511 216531127 924744763 696854204 949871974 767385698 329374630 294756427 440484817 290168570 266730702 527478761 556838966 560675944 473989948 101000281 295136674 479088082 431004700 886830454 965781196 349548130 449635527 7554803 969456587 663040864 633486589 461867350 893716836 416925671 924154175 774342303 174475240 828906990 990421200 276100759 203353769 444343151 793085234 850537111 918091072 210515119 32009064 968283349 736033164 771040604 39115443 944517300 355766072 159519619 950879218 753101787 256404381 500037986 881916696 206274235 166912369 710116925 582165065 359629989 27123587 699124257 781346403 213944783 538111283 238783632 497486848 744406936 926183741 25670279 681484971 658520140 469325041 43381813 611852919 422200846 850310515 173378760 587463463 518420826 518926442 109319007 175181537 284822321 450377200 393881731 729650512 598277564 63931951 320459770 766192631 694892232 95910982 589058760 732667529 762180267 764192266 478773881 746343057 912848721 959141854 62784057 729130961 899268528 616055694 363781836 53858709 724344821 704193128 649750182 625331552 320452712 174350883 665149538 556388743 660278684 846032591 444653384 592550766 817979075 752984593 107985823 11416896 849051148 84510339 966194041 907428118 734888817 589030592 403215261 683601719 821631549 332400172 883530266 96962975 439390809 412074312 124498007 885546586 431569021 178389220 614494311 48898674 328354580 926480466 262002793 66651070 416246770 401239755 513940508 556061335 861521220 377414155 971583930 950877684 399789565 172859896 16597624 808305341 939339950 777260291 926665201 168325444 431956189 126143944 645795203 871300241 45224144 802709519 144453278 707936612 120162595 230752206 273517033 370576541 185861803 887541514 774272308 728005337 925367405 326024507 744292407 180098478 631150646 335683343 68413960 788792188 333920018 671142763 394786047 557343358 12258428 137541088 244022060 507345339 171046644 80662244 459958123 562910991 991147324 326952914 228016967 446887606 949996423 216679646 311619624 149925885 540971032 548095981 51640195 492452291 360994948 855274627 926216018 701521087 567464495 970862082 995185822 39065767 966008599 25485045 555592443 940293822 341703072 927562198 57461042 258159237 809157685 747505785 506528097 682716546 74124523 856499872 392790618 773849695 540827779 307542118 239304213 619677127 729895236 777896544 237952632 31046937 275536832 478966742 505488043 449414113 953924273 302083194 821867595 844778086 284646665 177897241 53853944 250492 562086920 744679175 429833401 791412617 826073075 985330953 652570511 723704307 804241339 488210871 274098111 950408328 682843628 641882044 802771638 738360686 413634743 391041338 709529107 208585722 547197440 427046113 386857609 55252332 559790523 917560879 865113440 443809743 495592198 36811924 102542567 948045448 296904969 661255172 69366606 34862448 794522246 162331128 387479118 860085526 870344568 861883039 744847012 148764315 131585826 110230815 509287953 210260134 406774536 399567671 877719708 148630210 81460333 424243878 761887237 457334627 947364260 37485409 400900556 927169004 103734315 984584158 12192838 394987966 644181262 258798546 279517198 977584630 792556708 567035068 550995666 367296168 388997827 150548604 820123571 105644696 283972342 784909810 491837217 293626943 299887867 547477515 41880219 51155426 861044009 81792535 670657952 839875800 934029493 229177010 147665200 870685649 653696915 735563358 186756332 386129991 899445083 382103541 239395028 283048964 352572233 195301171 820733038 157081572 310410582 942921788 757854555 786534712 272195539 875802245 832477111 551853574 310253113 485917503 577572574 530624126 995218473 703099181 697737453 295230143 225563114 54911769 109388023 767271824 995732693 941804173 137830988 21243674 61961190 888026153 272655125 239140500 756330410 532531648 715462695 361970556 204195649 704703063 520351331 679390004 257800289 566746112 259858542 375575746 536666107 200039489 942307494 152638094 866318497 905454430 276536576 799614454 861020408 711129547 214408165 980918070 494429102 698810744 815400020 904220813 415281340 498280611 508288433 237722939 275193585 947159393 130193554 982482979 547847800 858115194 590355957 601157266 562737666 983508034 269850881 584969769 307806192 707624993 249571773 36988943 686120191 702617496 168583404 328121001 315576602 221997170 385011077 222105348 873088117 469460399 133183462 11470318 548341350 292186681 56467823 554498123 282470175 968811486 802211199 882325001 291223488 150837227 502531148 679020267 852853833 727954330 481169635 183833004 353609452 751300902 573936078 53526542 968484615 776099501 210804317 534692383 684972487 225505440 559013007 33729321 818597263 522236621 948352059 967886875 676909549 989229134 292169620 387705937 428876075 148280556 900066576 793988833 63630390 418114434 13165583 933738450 578793672 439799779 384311121 775604413 83980384 922331038 21249220 977001492 319075358 948308910 245364619 491965053 75297214 928348068 121278927 472525958 626226701 730674476 157870333 611896997 559593173 720464096 168778350 515071341 343971620 855600100 667773760 458414164 563820653 298240004 457126362 306742263 567133721 659547421 951563184 370215681 325301016 399775204 873787329 484183509 107065079 240285183 574120653 249791123 603053450 332288211 543144472 968766863 473089000 694773355 206688418 549519831 639780929 733538617 987601328 680971052 875345366 208627918 144062496 248875611 272457261 452559445 906326993 768487435 476838333 198261990 375737413 65887465 493884325 643624347 919744750 978615957 201904329 385832478 85911791 685487352 649765166 257690722 91903801 404324473 720408796 524475286 808645335 462595766 892378618 433911487 801406405 3696291 542992752 892396333 437954180 89039034 323537989 64056232 29643824 91730830 779528905 674422711 953511904 741260171 783357012 908606494 184329859 135527996 210647398 789346656 608810897 916230800 951846461 211605586 947346751 698023186 250688175 799444322 262158971 629991550 854049021 817607535 283424845 38232868 236192787 782919702 930199155 313879093 901924966 635705300 784729258 439225303 838173162 517381930 219738871 983667122 766643579 895455247 76281060 449724605 888576844 246648703 48210888 969215471 79072244 595687410 565289359 638282299 141326030 691749568 298985425 429885537 20169176 242109070 501046334 113929543 348707938 366669579 997042606 540584001 765125088 965412460 573094235 332686513 909691723 990836925 181600491 617024149 197822650 509728825 713869625 885782104 85418488 865378254 982222497 290969584 586617946 412619545 481302329 691202314 762030985 529265269 716756275 755672424 66545351 569824985 331073444 208160487 375423555 40787173 854429862 423586462 781992283 190968162 735664031 459989381 439423679 184385999 730623496 389449043 775783394 757520704 850733517 112437121 651336210 449028325 60112577 920651183 470690863 840287245 387768652 796604566 430131897 191275147 719414431 458226437 802379909 207780114 334110864 87179507 855291918 949275330 836323524 663468724 413761554 459119443 608866404 147131743 951948851 404171990 946896760 804521253 843028925 455408525 327310082 487010069 597111092 976250489 877081274 801202354 875665955 645066536 819175170 616856386 701408692 268557469 271412158 344632934 65765704 930649178 685206169 107841034 84794233 140000118 149113518 436578554 502046363 544739542 51586432 152528443 711044404 293175748 369376167 895861194 418644910 194502960 809528286 834680002 753001335 192415329 239350623 972053250 577881265 215251938 62726164 538474488 769519086 590258245 176228372 14249899 665041958 378779823 403305164 41375839 561636005 446925083 844023610 356777761 414359035 694732069 773759292 678276609 313116526 507904247 606033145 756894371 748275525 828586341 207846434 220293063 242216516 334973385 81327831 633686218 971705661 574601898 927346737 67607461 790068205 529920774 280020717 578600143 58205649 118025963 270403930 334426885 65084979 276088111 881432035 806612528 651068863 463176096 589915182 126314197 636346679 947315297 411032084 746876756 73515598 849506265 503864970 332609961 815286983 541541093 185929647 666982346 770896041 566116547 615937961 385651175 551302277 605429957 141598559 60609322 114057400 686275214 447188088 705494760 506156135 523816036 989962095 229653527 741520353 301447870 586232864 800217386 872358250 65872712 592829927 931693 863960370 682825440 930797235 639659527 895635392 324912309 415753375 347662327 257110976 892109208 308565634 96189873 625683360 758938272 479582683 166717361 898361839 65594767 676401594 536201366 653899932 639079738 374349416 384672755 52075524 478837512 325346155 116038523 290183575 316480619 347670031 126660231 345887118 182120338 661396795 678873501 148718585 188748352 782482140 529919870 581668240 345829419 589422951 137988849 669776385 229987471 812596069 594052473 596757885 849918968 30279079 751504988 601000865 798061624 195162294 960516054 755810256 604921918 147179917 305480440 880900989 373988929 712711027 700905061 60455391 480806994 598699941 361208211 157431578 757714971 789528042 130734223 898503328 595834396 705389740 631568055 271705726 368254714 596979975 257004057 233377110 321060828 977814466 752268264 284006015 205504606 630364650 511529371 416134400 658156392 894214445 262133471 942259752 721030233 826447909 119156434 148769832 226952608 318657947 481312691 213616086 370477911 983807153 437679339 12203892 184837051 370876376 699187314 147988619 787448832 984372460 461042266 123886301 207770861 720631272 713389818 134049789 807890928 960028246 236662377 227472321 704092577 354874265 943269938 398165970 705790716 8019871 385182461 343645755 120201335 253592396 894723870 637889955 843362431 466489383 847746711 486930455 364040437 2202186 201557610 883787034 599885391 520946683 85154339 1080929 717958472 534999328 625649765 59787801 989424045 475069923 471304400 645713026 173824374 759246157 137025380 457154521 204600206 434459492 495412406 674147816 289114786 893143507 616389508 111404006 903267621 197971356 708271405 480433727 830560088 366399879 824732170 192906182 997718493 275209697 601060508 648656226 782883897 100114135 239817168 556508661 766990201 79952035 276295265 897241644 986824095 51047296 189649734 420869445 543981865 59169461 110157404 541745757 98572861 570559755 820559526 856777923 784559648 376273845 788863406 828913751 509980771 505013882 436337826 782598098 627849988 890288391 39250184 411466287 247589541 26193945 591257563 89137847 921370774 752967890 337483721 429036223 899174920 277712647 93707036 631786534 545010065 501507305 302336836 854311090 878229730 176036008 406750152 314424010 618009879 101288020 522797241 692940273 459572750 612616996 794061824 376546406 576509211 258171517 672014676 121188006 676434289 684031492 291813507 59579931 834517729 370012956 910659266 165717257 700577882 240950423 779166102 135317871 243283499 516555659 764628310 71267782 812787148 660161373 580917706 328780449 957897325 600551784 106516682 891889386 839252753 338663840 85056741 328374960 489613168 139961103 288718438 365427042 500634742 47239923 139594637 673307870 425867862 632738285 382126508 73496562 67146169 254058149 270244627 851076840 260519559 765289065 330991286 702071110 357016718 844088056 372354520 698871121 97364814 753732926 371761553 926676688 396250196 876669932 742319775 622529654 704221593 219361523 423665034 861807830 91423167 481491395 230093622 252765071 768311295 681264699 512617657 16228326 46150828 413500205 725008753 277348954 961432433 109163601 806358333 821847474 919968972 83398446 398977280 595291601 180157918 57411617 655396401 719137828 959901728 962307413 379139663 350922790 442405175 837955462 706326214 783032648 639421046 474959447 802551805 755775750 951888239 922601339 808563108 177153034 494259472 990277362 296991855 253656260 484079802 972101949 88283944 493203733 669804157 933346385 679185971 74109214 161805802 754011647 993815902 536633407 142960195 456496077 483912658 577234857 864412927 931790952 36580657 328344258 354643519 2233656 143383207 607742081 523600832 802941726 383023884 423424848 410079015 958054316 311253610 498042216 119901630 350501523 756474118 517286296 698037917 440567378 116922464 941527650 564368527 833723733 27349539 43717369 227776557 615240770 181468562 168752070 203168358 173627006 878043904 420170828 880841573 156517762 786164789 583534888 354102078 143943899 114788397 772888602 540534691 801223286 377934004 226885129 28696019 738082027 995763519 767892729 744386373 803875662 823200853 367925572 53359445 279632286 585809973 272989849 369174529 991630595 668309755 871311567 215751425 319711533 338191098 525310554 220005345 252203533 783268644 81245429 749706924 102000508 400086461 184847562 784219987 306916738 955698587 91726554 945144517 243657996 681652314 781613105 229045952 24580881 280658434 984828037 211983890 87477055 385894633 255940915 336116697 304094185 368989518 948398779 104224134 835529309 228901896 553812048 708980567 846214521 111563238 448615451 207188527 730776984 385516677 118667718 13939820 528671265 371809125 171565516 12014406 330590702 738077958 459601164 589716649 154128048 517514101 134990508 607931659 324610862 210567709 963958270 28717273 401480481 779541884 484790505 651821809 109719854 404260031 809121909 4083922 475586253 885860641 517229854 571252318 750504280 723036542 941125215 808861759 826604602 23558762 857392601 275149580 135110874 318626944 501414670 777833410 65694514 712546703 987184350 864563491 563524282 799789082 259230568 181436541 113929263 748566453 517980273 815138144 92187499 113904895 930124312 229080071 960615728 674820025 177380448 18279223 431673322 186018299 738252035 474870425 588797307 582564325 240760182 157235637 714713694 248622026 496497837 833927850 560335622 976673812 811690088 646276521 386717194 15088778 775898182 711908318 709850923 773315242 248422190 825843472 706197154 578168910 512006518 573733982 730168034 888051806 771957289 288061403 12370031 329410288 842158013 235481770 215200425 721828872 13859403 504452833 426312638 704796358 775955361 896512492 582446103 246965087 309627515 827646065 769111783 729135618 974376623 725095433 902018259 121729002 7708826 170005886 70120774 901169725 166832104 542497799 713450647 480875998 100057234 336926724 142446936 232259380 112344583 101718800 360266087 427560416 89372872 650527853 758505452 515170070 870775377 405343655 122342720 998330417 776802458 192747325 131562071 179487398 419940918 857611562 638729130 310152926 688525468 53981080 552558563 580585314 746263922 715984576 727449356 34177998 217607438 957872812 796850998 144997153 375724203 366305029 492595695 331409837 651581500 138580785 648456056 80554670 528233085 550712045 542381384 129442252 822078039 17955124 11321719 222630215 159399065 338375597 62649911 74584521 351655963 403907998 242374127 320154938 692710005 348098846 914354662 280988034 890458535 784948177 819498053 629141816 140917613 861786912 349888384 269810603 384779166 16529392 954976751 727394510 539823547 681060135 284412023 461471930 31794255 966240406 231384697 647074701 955735549 703289243 273636998 777875663 412206500 424612936 438996672 728567885 574884572 428848075 175554294 650413142 448249210 676435149 191746812 406024868 281246507 678721094 126152149 396107111 550204214 848427343 796699744 920850608 615631671 408092103 482675019 826234862 816778492 122504301 374908506 775274862 302149981 50053811 230426544 267219615 438063299 520109950 391135259 277237087 794522485 394377066 452953393 477409589 1399989 536801224 320330656 373770612 657148625 753284159 366634731 9720688 778333934 327954019 332801506 559579283 972113784 637910364 134033302 635205338 240819268 141514618 320044871 38836700 580439838 776417717 722890190 941137351 244626242 831653576 123261000 64560495 760652472 692308103 755437596 369211970 531029742 319749772 826286316 985911190 791195800 82961082 189938223 231897030 340697617 832904701 523439133 873152459 573455426 34940957 470709233 381649558 371326934 126236000 332829294 72598020 468562451 307574756 975342851 832996098 88258914 641735139 424208725 163465112 866404251 126908638 615158835 913839764 88328987 148764589 685109047 513211949 288853964 532812551 869698597 576227583 77120307 589824870 148495428 710014904 778450751 103404516 92340414 520579814 683520631 535787262 165229541 807681951 148933313 241223238 567916934 634459791 238652494 698394054 944343238 14866917 88324132 811025403 914396408 131935858 261957795 992743580 887382871 288734155 523840048 685595880 392661598 379792394 216179513 371938740 716701125 44938349 952453116 337677715 647395303 603184616 523220361 766150744 204266018 700869942 686633213 675292371 648960176 32060800 570253747 649439112 232396808 514091674 432371683 516733701 918286384 298073445 280439784 192201613 482906061 933887880 689628774 934549107 150444752 359770145 293346278 371561450 291091089 467682785 999281784 61785001 559171750 788134334 637111468 702135664 928177435 652227934 836289782 247275896 123396247 734875530 250171122 359750479 642008907 126597906 111226794 735972931 943435470 785456565 887233782 832491512 362506790 380267649 691794316 714101700 320048648 528918946 690757870 426697477 831293300 146238823 172271727 502224651 276684609 966902276 362289900 865487201 245930211 756507841 584621610 25420395 531408966 2801104 509052485 522636799 430093600 421557234 483507029 840080752 44869885 445576419 771446183 904258994 355173367 709232516 50670461 139039110 329094442 405206346 96340172 55250948 691270444 312636809 529767132 601368340 370811626 717980691 803040682 52280949 744554940 455961321 154141103 48209340 127924049 318105906 114678381 123784032 925919581 480259579 894887156 377176681 576942242 645190040 628757468 630519559 406326297 364959940 228002247 486310461 198986992 458018360 344252887 508868698 401277619 86850269 441156991 377342266 22733706 173687018 770482307 525450059 784610308 602917861 231540957 221819658 281456215 151946285 183557136 641927240 484803088 674017224 188343285 330370146 38140963 173057976 123029758 802778321 504482081 340145243 843994146 924884102 150682087 556726801 39423625 167029714 514774802 644965694 18128742 696271596 359367738 417044544 769502785 887921935 361881160 359798458 141990733 396642038 758746161 677255677 679827745 986761686 80082326 769416213 250950171 518360851 16072352 147664160 736880687 728431128 91972836 502282146 455836132 217306500 417014642 824817701 291214135 313656517 101317602 485124768 716629614 506435699 296396970 891412005 124174288 533209410 937408518 139767050 808117288 39773632 967287824 19396186 760456980 379023497 680131238 284905188 464881493 6822725 693663342 977675578 357875308 530580829 629943374 873873773 806471087 271603680 774700168 475324142 564985117 760874057 172610035 623287024 364379651 324160203 73322952 965975394 95260516 618561782 316743879 611831399 944261205 564429194 390543987 319637763 157909736 659636489 201098918 818309044 922200456 66046656 640869752 845483542 460009250 799337720 432692315 223791451 933265953 900755380 8375066 554062081 797568085 733715739 912364652 492227125 616527865 573673648 62985042 593015248 259456374 106725658 798283044 808531537 987051316 583061570 415372422 210947062 211865174 855681229 740855570 455719311 767722297 804719653 293971094 945569888 564221632 631574602 984263765 914234688 250581801 999637139 630957289 256191346 797523067 56637167 385540341 261090882 295701988 648056632 364572729 528427787 398184489 97923839 939309364 373773527 508256603 918887138 846545014 848634122 943937526 807054024 501053125 921032862 203959265 501530004 744349312 715160546 735904036 529847575 902044904 355597419 140828174 869227997 749714656 815814206 950526959 823308605 191617232 158179737 628950350 323478162 83655070 992246396 574571466 21360521 904324020 170041727 691410393 632837948 298420864 271562955 786348556 802251684 414572173 157771924 395407913 29830464 129100528 229674931 502960130 20446007 61328837 727804534 709264898 312014783 32344395 939232007 744921719 469800001 645788156 111465571 832995592 519712827 322627055 413127605 133184410 997928954 468707114 214007565 722454844 703077418 678417858 31885868 91540552 862244303 418040247 881522651 585366814 859695060 98962237 495047297 640705584 383901396 813211134 366131070 907714014 939526407 326889998 858668301 705420883 996920025 153199688 217112544 248593423 142150354 470851955 422085622 142011827 487743909 410085032 663980102 504747056 965899536 23915033 772444681 351049991 621596970 333492634 32868366 615932094 117004759 179353912 905878670 52324510 292068267 216333198 534272786 673119193 326726069 930408245 187792369 259533972 691144451 889390014 291789420 228872241 516476722 157126609 804364890 47587104 141329205 297800607 965107569 26367982 244036594 623760403 262128438 169262917 725075028 987813880 699128596 153573298 321313050 310686823 473838705 305554068 440905736 753902358 416190596 241506923 606236971 239703616 528688422 432106879 472519198 91217774 930162515 928367710 763382159 866663596 188809424 389918264 407924431 738383216 984995649 766050414 473405942 652424732 563460000 485291181 84216573 698080956 77878195 568410321 294694532 652675353 469546673 794562936 223429554 902612795 86570933 845309699 855136896 253395560 821092176 696137942 570307169 939457974 713369167 53620169 188136134 208423328 279886188 655584714 858174843 367830058 803079734 269662395 547671690 3771132 409849619 148587702 761980917 463479725 410216569 364394023 252750565 816973902 591264132 334186072 63076771 156130051 83556662 302262420 430992829 109528544 203632590 401281369 16470793 806901644 569610508 54455673 382573799 936305713 429941821 349230176 772825618 472611765 656631866 712686489 954864765 404264602 287478910 717164271 176997156 802716622 81999345 371834777 896153729 73439435 217774664 311100091 670409985 929974131 989873033 681131560 443448438 709174307 689584940 695696024 738767552 458219603 92081688 153108453 885933603 153371586 656398342 9019037 194966751 592514249 348420735 997565321 261077177 839156060 289590512 393591594 893946894 175009924 645974788 779635169 240746493 137802740 644967321 822956352 836901872 651033027 957003787 400709609 524802847 412583350 152679261 431468905 842502561 507653678 552709774 782595788 468007472 733965551 910752691 36506645 516734370 297013658 623639029 111483944 510289856 714444136 632307369 386894632 873410663 797812155 365435793 394470246 242237762 615585253 555664846 629403746 638609441 408556282 840472495 623266818 341807177 9706755 752223817 984626856 930774460 683089885 702917639 199704100 67166864 439632834 626372254 91184648 107470654 384517172 50799719 834581159 824865967 452970204 746242238 87952760 977851589 174219847 806777774 321612030 950505089 811585144 377803593 118490486 708944347 982279608 269724646 250747799 178139610 863166861 47797820 566605023 755759513 15971011 524366410 132982148 300320321 214238170 36586117 420054373 177610982 938215700 765510472 392520471 583006221 206702138 960784397 307933941 452034272 104082984 853303467 428920484 550419504 59433017 230350804 615669444 449336371 775345203 683910754 231836991 481186882 367704608 44844113 21712379 357835942 972146052 479877281 295321590 94948479 701753635 762120693 492447605 902702596 154046651 33874128 760305292 565466647 777280308 765572752 338916718 580546721 422504775 419523753 95447601 461163548 61431156 883633850 286906001 15782231 823862643 564659428 742773149 913020791 469507231 431256478 401349884 880248037 227944706 489452576 958647274 278493161 451333253 349995738 408526434 139506275 51414928 709093151 461045249 228048268 214918647 734421195 994850985 966582280 947614739 311467956 622279407 925431617 794584952 230962047 805632887 619423667 645611365 814719395 583690974 916431436 570755699 221820212 628658096 566250291 787543436 739031060 336501197 399564054 733096013 688393777 188791659 399028840 210349725 534363033 823142887 497602465 975495182 648722303 954949225 473941206 72155396 582334798 455499989 152152157 34595443 718692380 401299857 51850513 280763524 876322160 127539818 6218117 616871181 593134993 218084403 662204328 474154167 530837326 906505359 451256583 84402670 987850916 165819936 797019493 911577146 595914804 241219190 709600905 313732178 944725939 493767564 982532030 991544631 738224722 93690627 792598198 767975662 877848280 874267079 587901520 467347510 422490526 273314770 830467710 979595495 607577152 950719438 899607460 871243482 230465695 162589378 609057056 119322463 256280722 788325361 693319998 123200337 496654409 771264559 954737252 381490176 94350740 559356444 593724343 85395220 894044218 180439296 922371617 961957936 972523264 4960360 340853701 2311474 292287087 928138964 230505777 428831395 169882173 219387806 227186028 205610291 491874441 119421543 902552328 429868571 356731254 611920145 412339937 182191975 950402365 294238054 758872415 582338307 581542609 470142352 463895773 84282961 387975644 919435568 908694050 856356077 911384860 242736646 575408844 813158185 902433160 210334627 909774862 352053594 854919217 256791043 516749824 807899090 101715075 652634893 961300922 967796789 506120959 340982354 959952249 626205371 264409950 34593731 272359878 314513816 200834496 297335642 564194374 850022938 758112276 943827977 534903616 746623653 950607822 802639847 600033724 73487592 445452996 193166264 503787050 486467923 753785343 238345714 334709927 13643305 42877863 664569139 793143769 723748745 453195193 179712595 280195253 642637474 715466122 967223356 511206695 480341056 475079359 143973258 753995284 44955815 856222970 460897689 97506477 342446686 910475743 404229072 914560237 563419319 218291058 830341241 81173528 337353518 614030546 999784089 565639793 863298184 737961247 810253094 537514475 142306926 259530138 430597461 468046108 858848957 387558103 731651705 709463602 590579637 740039441 508611391 18698814 415187456 53310204 111806226 499952840 105987402 961307897 950094325 698778807 980751380 433510161 989040166 43492817 636113005 652286798 912392073 787253335 278024510 610796622 43473745 450123574 15510793 228789383 538802542 666115137 254033744 371459633 291687007 53638484 352845163 835714879 263481677 621367911 204988093 672917663 705601961 604496062 431640753 907289059 360782807 863386024 364157556 933638921 998216162 239779766 827082403 16817377 879716929 443580701 3560212 646760615 14806286 697539442 235495582 744096955 528842854 673143704 71414158 363034516 270362335 107036389 960031601 241916307 401064548 983898094 381080198 510048947 894726314 307116141 700887584 556324513 707065713 670883260 326654884 422982820 378983503 146019905 933087830 137214358 400005339 239864381 776848100 833515288 343383414 175720273 367470771 565705218 175146499 45054808 390989083 860625353 925706037 902328727 788639600 529000123 914114357 806667627 121917064 301847390 648228647 737358187 787817636 127337928 776518951 643134679 653438362 51865144 788637122 441772448 441812827 687620912 588711474 101955770 672576703 212054793 143841820 107381281 702364531 545536311 903485565 538072748 676203372 892557045 559919028 172984967 409830641 242490628 504380866 18807351 984898939 619520546 502104717 452529633 34382281 239061285 716387348 486161424 137721224 465301423 97339595 455823963 254810558 52456912 296910842 359979278 360941807 783210825 419887374 952565123 575877541 348445089 833126186 484279188 861358462 264234953 560295039 584086578 168745255 109454677 761028103 382969492 84871209 995466149 420642788 588541917 3236692 333129076 554550640 409194938 753782838 21526655 236536071 838808773 258430186 747324582 794989655 405541277 113277219 684899192 20619970 331083532 138335087 390753090 732686056 245875679 888746974 48904478 913638546 809794561 380346763 431298054 468972792 996273076 580809771 401347476 915029892 353958638 43355054 958253404 650244878 207835892 392248973 48219081 594973984 756797988 335118989 512742576 473430652 321407508 660593100 111970145 434713642 847515157 878031793 817404042 959047874 150681949 187311200 555988261 63432110 334823971 178754291 30165159 489472758 328767354 191083296 901102611 410960291 495233253 996683853 916246705 258270631 582982403 326979967 325635651 465854188 332739241 36590353 469153699 468311120 44665493 839087748 505976504 986684261 162991752 68112581 644586521 525404825 382560010 674486631 396600008 812400389 476157085 285884702 285331564 551112444 359699538 175974369 896217452 835998589 552115930 40662653 713682148 425054290 113330450 75990867 524717187 47641862 297526444 136048866 188387903 377733919 140819316 79152310 33854462 820159179 99177922 921204716 28779287 833233414 617034122 987013269 353540617 175372436 336944928 592061300 525616696 965692334 970845343 150216563 412533300 307382901 66132801 522328547 966869348 649359788 991055953 668093404 700420050 780473269 64628632 316630827 340503854 107988753 324489968 525599831 40621029 698755718 568671502 859748034 82684843 167406016 968543676 478651423 947929623 147486389 73060490 911158851 734643197 905950835 504168041 946467497 316959135 931175328 807256198 726063014 852936828 793880266 713143444 206024011 149540415 974648424 862303173 694561662 383923170 522425776 450669581 523284401 103713363 323566641 238067419 905298024 664805700 364882930 507393093 203696296 839636735 405681546 644312083 356622897 924534299 716979437 726137392 78651179 450182650 493432687 807625165 181385111 716880598 974631289 187627320 338585883 357826778 952241677 800114784 499981436 724840616 173747669 484509879 248994155 628671893 804422621 726632305 696104256 137935323 776163664 456809704 510114993 140870000 635804591 670624937 145593399 909378083 742367720 977511128 250955874 860583349 512252685 861954663 712913975 84893267 46170862 508498705 765468634 41982091 257281801 584154729 674311599 471435548 138195246 634517303 157767224 334840733 929252452 281616473 730203433 885409028 799637153 969277126 534642247 855071577 486584459 220090352 229550897 743405110 387040716 672905751 336071817 574306500 534051168 70705650 682896202 654224204 315470867 912380152 830655723 794096313 769002496 954026949 333312646 960308616 659960754 608675328 358770752 347170916 800374096 84874224 758316231 888717436 484423464 153591809 716983676 878273537 994521156 888704185 417177009 633466783 341730244 378983178 961117762 536779657 411857254 43208425 704012024 925128165 908332021 966735223 822931690 908295561 256858165 566749537 850789393 292508989 441420655 653636395 271661062 684967067 552867290 162055512 549699237 374292810 796172798 73282952 970533340 624870222 385144053 569776607 658007411 189069860 480457804 219512137 343089801 173177611 388420200 142101430 672259177 461727216 797460445 819220126 791597666 22646982 445538159 101318119 211555801 604685589 971060677 532218423 883304725 31482871 258070573 149406729 895264986 87978843 825056405 807121130 993043412 522740902 377954560 305946409 141254872 790681636 419054156 746617322 182044578 468088371 98810673 710993770 416822017 303868378 683237638 62957518 961123290 162102506 243965972 48825885 856409688 618498509 339915140 110098723 882458000 984157063 572434759 91116433 27459513 369866853 556176659 882415206 776142253 235214419 37314674 678446016 28766949 91369718 215501579 57489707 751922723 570107622 781541173 837957902 215992298 747657806 796549463 284970413 333187846 883939952 65791222 777634827 144532933 484465593 925485204 427104946 733542272 295481312 369778125 71932556 955954345 432069262 957285774 550185202 318428932 43357419 172049626 444917672 637649207 164820147 691301262 218358996 48770793 303912653 850825942 264453283 127845792 704137685 526575551 483910831 11334316 461066227 526523138 175779368 398960261 750607930 797912425 726721837 814912387 43222624 465796778 413743532 297207349 99658154 479294543 713340736 549790483 3622057 125008590 6026808 63863553 106780195 293199461 590280716 161051094 177555381 552790731 679166963 654860918 129983435 968420365 924569903 748337167 983762425 100354511 45234495 399353436 928425201 17153659 93960268 721533975 500941437 790821106 76430102 275685035 88842674 200048225 146737760 509589455 173923830 989647819 936005078 135936595 827188021 400697411 528359228 131069766 952020215 91415571 388822816 599350798 422042908 575899628 47751036 145485283 237104069 115667516 200307817 567881846 716494125 864442101 534483079 339088820 118290538 927563621 608920704 406220198 98718298 448030276 606894537 764354118 58243216 158346956 529537379 778410426 143426415 706957885 643397522 233603645 975209996 476095584 222471292 598616991 147946818 280764909 132922535 175942577 91834979 922527243 345842514 502525012 366670847 749498220 873010240 489819982 394025142 243328352 766985053 268444693 900633147 758250853 279657614 894749684 310586813 820471766 782672772 924692566 741659454 205939905 825247155 233813160 816261560 750558414 232884084 185841491 812436684 213387072 151912507 321076530 484670053 214917901 711578589 286017714 18254936 47637559 727735720 702086802 711912642 103783207 944621071 838858497 814213332 435511501 194845758 245195281 462042228 644579168 96770885 118249650 460716000 510451969 82563741 614237997 282710039 705533247 164229356 636989397 425711695 816280877 589255704 801945906 915519289 753098341 273495215 650624265 418033149 149731086 346234467 811617042 85538387 652353437 230077764 341923982 944387407 977109782 509970814 310365706 40352515 6280706 488562666 545115125 292198205 880051742 25899183 901547499 106678777 495577603 779111026 570886906 232207896 472864967 464931761 747284168 427785987 988188092 784959734 877791962 318772012 196436591 658778795 913327413 842682182 216604477 266657667 453640578 676356570 436611895 769518450 722294678 821427654 909558123 130694542 255935982 602414674 397218498 896218976 179432465 417489776 49982080 244823272 629542677 249618409 600613027 354542161 963416046 306484449 527793585 200093102 191602092 27344596 851968926 29814079 905818097 766381076 583478794 252444538 466418928 200529641 903220689 878082218 406569261 513769125 502457799 1647279 899554772 44736207 102119042 163717456 130098006 113249328 67019724 910028224 687973162 57668909 260933803 847038108 103590029 484157725 425406058 325312522 465248795 648793584 848544582 795211893 55591076 239852251 314298562 810235240 275066632 262124376 654252164 652216911 67968277 142183949 524737047 273080977 663629118 494099777 770375348 187743055 744983299 252901549 786604596 41294147 312768828 549542603 670900809 183706477 702516777 911303218 495237445 422167517 906070395 870364971 807470850 400360582 439753877 840062348 136386704 25893985 138294412 37017107 100474144 944209344 318717451 10204589 226075241 445174364 443493967 392481729 267259122 724343963 382725265 120353506 426359640 877559194 112122251 74626853 785175709 302304651 528694640 192737736 577013202 812291784 124018519 969073257 725700650 486129225 984068625 61683133 307961094 328280055 853343651 404293504 789291988 120596708 529287963 414896512 897792080 549052142 137886468 880234358 847811162 594125116 205899709 391312987 435341566 166051301 307003468 457336370 443452498 664487797 422806032 454902005 300611642 650648618 731530977 859977117 25320671 719501152 925032041 370800355 241257262 677785568 226175586 210746312 602084343 899832853 713875914 958442698 272173277 246229511 675846153 208960012 452704003 888147321 120640590 827670176 57991184 14879702 817275276 190037719 688035109 575750587 430053951 619871963 90518411 203111816 664681350 420435400 8123537 323113247 303040468 886859952 68181485 706197842 942368890 793925621 691260150 997392481 372356373 209764953 149611628 98238175 907795560 169367026 915485978 478712918 711258492 30455468 139425977 824543362 99009341 721963173 283410868 20389976 259532866 477136777 367686427 666883663 819379743 231462593 793964490 409766019 631884139 505714719 619247881 274291873 148050536 991907480 340620060 931485839 27844210 662820136 136382032 620200093 81145725 690384095 212714889 975087664 195081695 366234416 59123187 922500674 754160581 614684092 765478174 352668214 672573511 235812844 93095572 855168009 566735289 129356134 259374062 662236689 45393180 421036629 206319264 914713621 108865824 517109279 376495346 669243783 140524326 196848417 941667941 141713169 236392238 749472426 661067853 69474794 836357221 711300545 737937567 773376637 341360868 863943958 614227844 65208155 996952039 637714439 491124819 306400181 286724738 864442517 494708339 932940220 430229093 429772978 527700913 545366375 617360399 645918743 727057833 336272796 639414720 96582913 375735229 68428726 635910561 862643455 888207301 563490479 726468079 173672961 175688937 788313142 616334256 571348934 957359083 690618241 317579757 494134488 445534891 27195008 243801152 650736868 743312942 886513253 564348066 260419279 361086893 436861556 317859900 507762803 916754097 532636577 591840811 392585075 743483390 342224564 149772505 245365704 801577239 804487758 835949815 105653675 481474243 784041485 47012489 992431323 928432569 643463215 836634584 808834541 593686118 455274295 811163582 128776696 956117546 237433234 585410775 847582167 919548514 87509967 321846996 69212585 518683324 810871256 519042127 289205508 203488741 730278691 441502135 702731334 719031735 644594942 614418018 471845333 883948137 208766083 758459131 240150305 777932547 982267591 325449012 573522662 242959178 484367796 487279763 504501117 742404508 750992896 163114000 707967788 137517434 871516599 420361932 354253352 543450755 190307849 889311135 759085170 639404940 943529163 189478213 813118010 20501465 710989372 258083002 423513805 151607455 264873170 494432534 868127980 124761067 909859952 88610534 682640480 952833866 245536129 468390272 729116042 638497880 186981796 981510586 616064907 604162254 421760775 584671117 285869483 436790156 575645494 418619913 140547112 465124765 219406360 347083067 496489959 877035061 167740690 161564240 562993740 484598361 139788306 227546692 786343879 385883061 776108022 463519743 133622867 553002675 644193551 570506789 784971108 777166126 641712956 879998025 214512308 55951671 14902524 294582603 332702174 987871225 997476353 522086828 316836641 809375288 143162449 85701792 465733867 294189580 33666057 654842840 390732227 722901442 651620777 334168164 917210967 939534403 647649596 62313895 430353771 438359204 975541364 178505199 468598134 377616819 143586442 913702484 522574695 78180985 685655334 345087935 737495112 478409236 385551949 424825141 730732914 857243456 277159685 683792133 815523020 859379896 760509748 249732432 896211312 569673729 704905534 650727865 774236876 721015590 821089416 864925396 287600935 170085941 141437009 936533697 61755759 390047590 387947487 96397075 32464332 873843248 68907538 620966675 195227323 275034533 945701014 403210316 710714554 145392778 896609461 516132387 815617761 703879651 754629648 74801669 743596991 726811832 751543338 613565352 419531270 883828526 200920326 960315638 374518642 261305688 146686493 834508861 897523961 208457272 397931530 655672895 483619330 853123533 466503783 109921483 910355225 793329923 394277304 467555761 105993346 853957446 760333912 459418598 810621075 294536739 789578168 978777312 257465584 141679756 851394692 626008209 1062482 3065919 215192864 446742093 591209881 359988802 509298835 578502645 288143060 504142671 597521181 307387341 405287122 698724599 289804177 857779138 125026334 839431820 901972819 165290201 285195277 523785394 251044244 607139976 701357949 801130325 784530588 814851213 510273752 333065734 292452937 956164683 912838639 503018701 283816567 858351027 666864389 856368563 52822266 258397866 595111057 869480490 427846015 205330689 371560865 843234762 817226666 740259932 90762082 884656192 578903620 139936143 688804238 82695732 168196375 731152938 335045164 115084096 432877238 83754340 581842431 980625817 966146570 136782588 588424081 943162579 592015466 360069203 482233534 261593001 118788932 544267023 271887345 922283520 932981219 461135432 115921179 819827995 688003694 211592208 381431323 647260274 322385833 100456437 348033378 356258090 112039903 655323670 642424401 277848156 8045271 93028192 528317837 179792639 825559364 490415758 452382418 459117044 594646647 227671303 958469067 344054645 559007191 877170621 932340519 82124685 322199004 611276557 770024036 541209950 278594201 9966733 37544222 722221682 1765879 114866258 689838860 655055021 532437722 932399802 655358019 357138456 773456526 588652666 232313825 524664698 743467262 37321692 463573355 838203728 346377145 651410189 53249210 101251741 575084414 714881419 83358048 237860760 200867533 649420877 182607225 279568038 239704765 129096097 690136520 225154361 495879194 966098397 450912940 302110562 133334428 408531343 510391777 314468907 897823278 705997132 639651425 54825307 168479621 145832961 924785443 15890362 928419295 417020047 594408529 638481211 751074409 933751670 739031177 33052106 100366471 620987523 627017182 342442215 419535711 940233702 879417917 662013637 22757916 710555184 49080957 708893022 938356371 352301674 484690249 817601095 643420453 235589420 300737077 674565644 879689957 127920834 492830710 820138520 334361364 541810899 870701348 375249482 51606355 260536321 270540061 708601890 478475389 741421559 259705139 875334747 47088213 430548200 402838502 990229999 781907007 344300949 463111728 858387234 694547601 728729011 680954730 150382394 838968181 885125836 456505683 53146038 631430627 298254646 400264075 98264250 131405604 958182011 731358854 221461220 41838884 750757369 912399730 866512343 938804138 993286724 199515978 900417848 475573573 587641046 822211473 631041258 152935757 301552503 696201911 606838298 196779574 361819140 994857952 913706593 984324538 643696893 644115191 993280484 643046832 442636443 72658732 56693549 185175332 681723479 516084454 136710130 852730050 887129858 947567392 498454071 690659752 813596203 264960470 520290735 959248403 140901729 347269240 711885193 42279222 910491936 99655748 677430433 919485886 569269784 84019481 799146290 626837105 843833269 480824413 598220703 960136003 175490087 280421143 364984237 25789539 827690590 133344703 218544717 412739180 199046378 576307344 10707836 179262439 566198524 313705436 335209485 730916957 526836691 528713352 109515069 973908021 104746800 829453746 658309337 347904947 371715257 3957166 361375506 502264243 669673079 879803849 145395772 47431360 335170838 876927086 843285871 134357685 171526788 968105412 122099330 977426827 950973710 525010302 663525010 721320504 237681740 424155182 619887217 887621503 348627583 489416078 726608973 211368449 420488961 634403538 718417221 184806916 438921078 959721525 331813179 522823632 597854002 954126311 464414031 93441760 967623369 432201275 179089388 151357312 758857733 61537603 665835347 903189265 891535568 595369444 192911971 411883220 253748430 599324330 880054066 279559549 513724963 277575602 721463205 799135701 540254655 204034268 614372606 56116209 949675214 86027824 156335952 681282407 684104255 899592762 901990097 592203373 752250726 194667111 500454367 137713503 548203159 13522693 586974498 538582443 344452779 155132370 91392118 485906894 722230508 692542885 482685881 841112568 569280707 888483980 270178310 962771806 642846478 836016534 413758275 334875893 470865752 376484768 925761787 383044838 656150808 374732369 246209147 253996552 391696397 703335147 864414861 764075956 791063877 408160847 935442961 495209744 365018572 230442940 117671348 626577739 653455426 712097248 139687160 189563478 306335829 9829237 96699119 945552850 33328784 530662772 878241072 424898767 841750321 173708133 942376070 11562589 395036468 446987574 275606591 995928646 719915135 950194781 780305832 683251976 158561531 736223029 765094987 525869731 927947278 754114377 235811899 292687526 403775926 778826761 864077426 160971126 496733140 472929926 950220412 635838551 558412219 962370723 72589419 608564979 949619989 585246791 53985553 821172886 193124397 450770019 192910669 780093320 771572179 367883801 291192017 498751536 40788094 521884356 560568916 30712413 555164312 645554127 215473271 777911604 422535816 525069835 557559980 441013878 754193358 820864894 178726650 10804220 437399526 250427589 745336643 990770641 544456717 809771098 700779774 70427755 70395511 337440967 16231669 376452404 596359736 945187180 186514375 745014596 308125039 970881609 197553702 202973262 250822312 390217991 665456395 20516583 377851185 434673467 994015818 736011684 318240167 2891924 170768108 291275310 807682093 417048294 14153714 417901811 987710652 877528209 90177894 361874629 259802142 178559650 165408383 756948854 991202795 276878937 361316802 602381019 970233961 760960182 747626961 263134189 234691613 59945660 148300422 504247862 110050255 883443084 637505813 64838816 19505360 373702008 507528537 574815526 978915483 538737191 914439814 438859168 691616824 934905898 707246400 711571125 755491802 377518640 715880888 717673721 950630975 515405889 579156228 484774653 330718644 955081965 933655760 339532896 515358320 863508628 531492935 27844402 336610479 232467784 237189963 900615096 422062537 152933790 848792696 620446755 630336382 480359030 880737167 779584064 926213335 532616860 950346492 446974052 266169404 353243095 266500173 625033656 907345156 805596162 664615418 811059992 435350720 510442448 349267026 598113530 402783390 346549248 807481368 493495604 727222340 710832508 165728302 315152563 762096968 485847901 705406440 963633456 536753739 981634600 953607059 543168110 73382845 487999554 550588287 58364125 673659265 214520373 730670653 528247906 25026273 596353919 438820595 258184292 224876256 95239002 511399103 590955443 338521231 97362568 223986574 377286682 74923690 657919807 701151731 735881433 807316472 760929081 135733836 983617696 192362604 805004386 353947846 545288003 299882137 372107234 518669938 237600663 349668919 233831374 707489995 53246444 82245716 937217630 272192080 91900350 777651424 898142458 654646111 157747325 442934661 579495178 783730086 841367092 487444608 638358018 492449661 14640925 676981385 6200370 80103554 695618721 513492042 950081139 864515607 858948528 201028131 652700384 977130298 212421770 629476863 163777312 916399640 220616605 94751722 780352047 231688451 662877324 907446942 571879610 434455551 207470219 183296336 720786566 891205857 622710003 39071428 51009622 995109553 273445536 82308259 184296760 487327608 471762984 751941702 22267135 979291616 136101067 590264993 572214521 662188197 376414573 90772772 123931457 897208282 560438731 189694983 401142754 908826172 691353165 980833180 442439047 594061626 957353549 819131900 88225647 21494390 941840380 960304854 222274228 221696177 534635401 624481424 561984502 844351252 422876593 960414198 494912803 792373092 529469692 987821256 899192408 759122734 415255964 306265788 967776944 985918678 395540549 746381954 345559716 949877824 523182073 52983429 986774743 149724819 894459921 762256919 690814680 577224601 808697947 923282637 819364368 807918855 530379653 922255007 639352030 26060322 938571255 613836857 308916893 522452599 530930921 782226753 959482226 33685980 662098048 668606191 677190141 144801023 989439861 405748761 242866656 641942754 256808675 846586469 183522792 497777989 633885476 236426702 971477598 101731293 739410875 659559195 587722424 661626788 448836755 579788457 637334045 548954453 30983854 855607458 206814799 182295871 911286722 969971225 217929230 963581443 95601803 456224181 166670554 669144285 610472358 380503885 82242675 887319699 418084801 459007714 250040431 208589491 45443067 843052396 561645972 581923795 404590783 624526658 167848868 217975425 602474201 200694653 423780763 879027922 273684911 302060768 448247950 970122620 246968538 144815684 911103947 948715918 221452398 206866853 473772999 650702950 379648018 885583984 618005164 223576550 865382972 541567901 451125434 247177827 769384543 303367374 306788054 957858325 581951289 207219298 985110157 365268988 919704468 266555022 345242166 610201987 254294762 402656411 27919581 347412532 830970311 98522261 894351591 796338868 804789217 687666493 803356760 745790036 216636962 588206766 618392720 435420285 275721629 919256744 703889520 89264280 480225139 965883013 493429493 436580338 422711145 486907771 142512774 625096486 885228499 139843479 12832381 569153039 993332354 722332914 652375550 160282229 163127711 669997737 704898840 81886774 621770690 472203109 727370832 903219552 482126546 905502868 551352393 942535689 421915921 233826699 477662325 908976621 92912782 713836266 511783778 571953415 58548670 480442883 365527082 142146135 9364405 69284714 579445138 753580711 255618437 819332755 605608537 211561334 912649163 59341399 399941432 573867118 306410147 18261029 694128790 481588539 962160407 424285736 328651658 564899825 72026504 446132730 756265028 1870001 322600060 165061483 875436472 550113397 692879545 798016479 101669728 320600900 479216202 218702764 330241318 58562766 540581443 293966581 369854749 147169414 480606848 631777756 721509893 90996989 223491843 138328497 198774981 378157101 332595167 137885032 484739174 684988249 373180371 755798001 796313734 892430699 989312702 456308722 232127106 595784803 122959953 376930758 450195368 9332924 104823425 651428081 59260508 42097214 716228755 732408590 998748340 616153379 405295604 881893130 674761794 703759163 435216048 685212811 917626021 693847789 419576699 652723412 967640915 287955670 134498222 617921482 790525016 744644508 108694732 160281337 160872529 693444805 923641428 380096897 247493318 317951445 254714483 521242298 243133865 944406493 82027457 122677098 251810160 524657345 289202538 899535523 434589193 987849490 280582346 79235974 350362341 860188703 728703697 180930025 365940980 654344774 566226988 283450886 424052721 159941083 493523490 811938558 324964042 129304432 555839894 529993645 124284761 495554059 24909622 500708246 361437802 114127632 380823739 920713243 933108002 385419006 523694583 116211349 279007921 150374106 431145309 471112913 885946 674485770 48506888 98135699 689452140 111345 497790938 481864912 903469380 711687824 227409974 735694978 297333721 968724329 985494970 689648698 785221076 443456563 273356135 173907041 379603 850775960 178203291 883814981 954734597 382254648 594774039 740581638 627645427 318592014 799134716 578476721 127785826 157137176 646857093 526162189 400126462 640740008 851706834 306343954 507877607 308989751 319778354 667354650 421468119 313624299 133294892 715207310 99198079 312558697 246800896 950700347 330460139 549827807 773573909 298674506 870071407 850751356 267640041 770034865 434317696 560929639 586006347 911764616 674101118 803954787 503941841 692553130 359383825 590531117 627446415 394867381 917655897 757010614 101315492 766262467 481634705 840967886 452667618 521078361 694937112 579427229 343303712 928738526 662496347 428658003 305449570 263837129 491995722 846161523 130833569 123584813 654768315 601457369 410638589 295283840 5969208 448343495 178392291 84534673 692693722 827933901 968278876 440355797 770980271 893987543 98172899 555604499 282494621 482761882 894607293 823878335 402123392 882187671 422763032 840048133 775622843 39837054 401602353 382919738 237402939 887235524 950293571 434541520 543599742 148243709 340630333 728674663 575371484 973777090 930575457 59377434 796827707 78311636 604491588 541581881 874604292 624460881 636717788 172866891 945624221 871687289 190822287 423992648 165898955 376091017 78213853 945061663 39332738 162640889 679985109 873491958 708041113 96882757 376075851 257047450 418223324 476376924 623913569 178619411 639839873 750634577 889298990 990130903 6189316 803096106 161606933 353606900 414666106 345384063 108431737 7749676 983964293 842026573 517486794 661867260 628443188 339198359 902788443 344865594 719203726 818170348 740246599 455999263 351980436 694434360 185294604 166245800 668717844 319278484 126355608 569602801 173980040 406183351 508188867 560793354 28859231 756458366 587965532 904170178 640523206 806892670 459572263 115487534 369488811 233416543 812640816 749979265 177820067 752508951 898220852 254637542 519037926 152960642 901235020 70390154 766526299 286763677 306057355 294251692 821984572 192080123 298756444 767466762 343228285 694882338 554488023 978909364 109276020 772297604 308370228 831978265 117216522 196666827 141268071 264536281 872445333 673112340 112402882 486966578 242921546 840540622 122497503 373900915 869704768 752449859 53583331 523759303 643615420 867608667 175711720 258919502 885079907 671458058 176529445 523755153 542103588 530030898 685820468 645450290 938912500 972177496 902404890 940837786 307294221 72274269 114172265 384840557 125329764 432398251 217257042 400652953 723083536 170240847 196344932 136445367 108863612 586906226 29006869 430774916 415195834 294154605 542532478 912159871 511567710 808660983 187916261 413193551 172245135 77009290 557886714 427962698 347780347 207606862 528340637 715748601 792535855 67660597 120627789 116331988 738092117 489438653 714560626 297652930 39237429 335098855 606188083 699683758 652179760 631610453 400855155 53052992 508075909 732702596 736440518 591914606 711108215 895222972 485745965 590394846 346100281 823517619 377882091 625110368 930213249 916516314 824527188 457566496 572241527 726731436 686743428 775722595 941888587 791670239 815167744 414647542 298824758 264826431 839072703 503670063 607364739 146726336 660791093 683477208 109843841 627774593 494674740 906682224 490019853 391621192 67185417 792168928 771106390 179936879 545541564 615548898 923161653 148162606 172125428 400671918 787450109 971022086 499955338 850784306 693107659 667377522 673331495 415018017 692377274 945066063 287874281 249290801 621874757 360569984 325993774 166945627 915580090 256704930 505910371 158984574 842166209 861550465 399596177 375713009 371218378 731803532 755845320 80150943 724881739 904867147 395548030 56355627 621699894 161775990 415366871 656569653 323638664 588844536 375956473 926542317 873154661 352119605 458383711 339706784 175022174 3461911 757286543 291411675 635800544 568733115 851682931 914209733 634979400 473580713 591483928 46877759 77153214 835418886 328990988 41108015 646593950 31415455 334133304 677959471 95918088 758112668 861612239 646447745 654820322 42377505 478236949 454109574 847326359 765394875 527816894 936515673 827406157 842743670 444410437 858033402 450132721 970056194 710846063 146203552 32179631 38008970 420231206 783604476 888749153 977489841 985794335 784258931 159107851 545831471 261793840 442096843 734848273 156475488 681656692 588611977 437609426 663543844 451692225 942179879 723777307 471641915 58447094 720307400 898982693 907671772 831794502 595353935 419944426 863375243 877335897 14939918 635819079 999203038 833318261 441029105 445280965 283951978 615457240 992514170 985081705 661384873 717453583 515357421 788857001 286494691 279467866 374517156 112637744 648606786 559101332 812414369 397550737 539957495 510374757 545064161 444555095 914361929 484352466 188743865 321954885 735551735 395673117 51820684 340478925 529444431 753824196 475560103 476504491 196197045 88448683 68802601 812753474 783277064 24146510 793254278 717069117 721875849 914289578 852713893 550481017 769425371 764112896 608904476 578387325 703785738 564908387 770908638 985190757 282585194 336389650 740443802 434471003 191098886 560447222 449614252 381329644 721258496 619859704 365784283 860401425 122596291 523145333 643595052 195108290 891236661 428042138 829318148 499731284 583700368 926262594 588629690 400190943 88569415 346097902 295256589 670580400 77310570 621196891 275131368 970782511 592602013 714279068 767323470 209113101 72707564 673011095 992729465 566746387 435776094 715226410 868841406 970520210 379741826 890807145 468777764 798427318 338756836 936082705 971045865 101269678 511433883 606683885 767252008 977577168 184895139 161386977 80402314 546797964 832873304 751821950 231670460 667731659 976791083 7426791 510028150 220874946 687564522 32393493 194388127 172752882 320778372 92226301 41184036 844301746 852687709 779136324 898562356 776170913 878814054 244754414 351919952 910557292 184721316 636598404 156915446 850526505 779352201 345246639 642390056 28063428 149541270 789371468 568716954 442077288 907583662 208437087 949550876 878388263 967860309 357248511 612356664 189718995 977803819 43540964 530113943 793083240 143901613 214482357 875303346 54502362 512995793 610382681 583390365 134039184 563574458 970415829 283716729 455087612 868949719 615317956 759961866 877405942 537098348 619943699 494394886 282151778 610395719 471288437 907779400 318422859 44869838 692775049 836193713 136543568 675574314 906317008 179400610 338863439 634772458 812784749 195640494 246293935 657717762 576729818 600817859 716636336 98595334 585708542 333185830 325327099 512903301 570871651 578698965 485553725 527195483 388679990 784905543 8124891 986003756 441238208 617943979 328500464 591159458 886266088 823256633 134915891 116319809 435071641 547596786 377020719 170158697 980712452 474309583 685505159 778344216 852737815 406733380 153967655 542363260 976625594 854413023 569947111 59113616 40394277 465663022 638900953 44218830 374557337 57590007 769963698 648656515 783663830 183309375 939403765 158750683 404572561 532197974 278107142 93149720 271515282 887762738 990183105 548110347 361867325 326151776 913539611 537731917 667636011 63143893 760784941 957450498 98843209 773080954 906675925 173406919 723583041 468504404 902949510 926694021 718200447 970756339 789010345 153187261 848495062 580067054 943176576 813673951 733935450 89552792 204319922 378102077 297473708 441098948 905918352 453029420 30497767 723263918 743413355 691190136 432584333 719256813 946237852 703873017 571123785 484961122 203166204 923500010 615127402 462633474 213283423 98145129 32044026 40400239 992231488 602146283 559123743 21283281 806094218 76082407 253357589 607885669 248250316 848642670 965686766 446487297 583854429 71506371 447018200 876445780 786272050 916984675 208186092 181497439 355702213 11726185 959112835 680221666 661704461 383081669 385154053 491305467 998067411 546021101 782106310 977562398 460724589 275706366 839607877 658002633 712448031 210003208 552512617 774354136 685534742 431050504 985255261 102366166 27402285 887768970 105323973 719269998 144750223 699940303 629938591 600116843 305944839 118200302 955146603 860683254 731406824 797297772 201248404 88106668 236604186 595341443 657379838 420037707 732346387 363103809 109783925 964195722 852681937 423670692 708182732 423853713 771008900 172949494 751943338 777994303 604274395 833303100 256411248 322183864 459313382 58844066 228803954 362695801 841874320 688146183 531214756 167814003 338091942 565824774 453861166 41852118 532149099 652737299 654091132 251822885 409555669 81761790 47375296 494499113 895675213 831285345 697251594 338987546 146923765 567197986 970389625 168970642 76039112 70281516 91757254 232118336 136023282 825079567 550322102 354845308 386103726 927823227 120482928 757021611 159845464 81510734 586691901 464543281 873252260 706627454 270227595 564469229 114329138 968376780 563179731 477344173 656655861 711470719 429750420 433490244 236127464 555664306 874760414 783489087 707177083 283472926 157106291 641149472 835766058 65488756 987168497 540110466 880108472 545893371 476935681 42244687 588061177 974269399 114239126 385308123 209000822 451807326 842259923 865595464 950249143 518221033 98929039 678591013 917738358 1811905 581413442 475918159 344781480 739029627 411342525 717788005 199209935 627634892 936641422 558332498 556245664 662968522 156294575 958203744 8584023 279831240 439583442 498575989 467593436 882195759 689864738 264358202 634389023 524843709 745850894 199690479 104025506 790179869 305457284 423867441 599983757 637890153 673903347 595873941 250891123 807577697 580526390 233902662 802047736 42446441 61140761 967986568 422775080 32058430 779548207 236224761 2571066 945555558 809637631 671172331 964142060 55148331 296144733 460400903 340905560 160621384 736274166 55787239 766134736 601915879 834650293 354581540 55426124 920037224 848444988 15741878 637813410 119166307 983490966 840519195 61357932 431962175 224839147 8313401 15882346 12979444 117782692 595465741 803642148 822591920 548360016 973963504 796102695 536762038 297628384 258524365 377448363 859734639 319105249 700324069 854001493 442115012 333629431 966693401 785799165 499593779 128861383 232054455 217457409 665993573 29101548 174976762 536890480 531592189 807401525 454303564 911341741 142780488 540964734 649184028 849376015 945566241 125043059 24584229 405362739 972780516 824141035 584117897 9966082 16223891 308423009 374759817 774088271 197787313 460341823 61078663 21846478 744591393 655220868 822854047 141077855 428660372 464577235 425943090 603083819 708231826 134710405 470884450 889196025 941613905 943013432 963499520 829593126 278074580 426220214 192709188 143957388 278411750 249705096 458006182 993893375 473714589 506364722 399543139 520452508 775954211 233453444 661151297 954073684 512408272 451595277 291548791 739911512 340719778 385054471 865778300 452252964 560957222 688409001 747809369 689921525 398048575 595840575 924154028 219966510 492060871 223060108 307645325 396469708 542996637 44583860 371866657 243590093 247105622 807421540 909470132 780301351 688604144 110391594 191490886 738807381 331126845 867998816 113311356 867941940 889145540 62742905 35059890 251977149 784282222 903701794 469122900 100306908 12189793 655785198 977363576 373484560 991182088 148922025 188658833 782303324 238774490 712654879 254986159 306318429 20448287 379406690 37676912 925985145 929997341 284413368 205633687 495582065 764990293 70326445 103219983 854494355 996947342 161946767 416823671 708089993 464133628 276440193 296881694 807803556 751506440 688160947 72557136 982531191 430472964 349132359 559001278 472529684 383090833 138036296 531290614 862545966 197400990 926280196 499394880 614212692 958655703 850033769 208637786 262550551 136389617 434245507 371535144 774989479 92275185 405134585 842355854 595506909 420553787 915327825 274842346 660866937 972922715 913778937 281547968 628726167 394470079 424653180 728848066 46184384 347792882 662673374 784167221 889013872 390063447 613698796 127869300 506317350 918464207 445909789 419684510 843349477 73283825 5799462 474933752 439502050 538449799 195038784 574803841 278643593 974890859 399013352 635160817 25972257 429331650 21238540 854592916 775232088 632918209 286260308 103682622 454994059 89655756 691832360 363974565 424609078 988739302 299014648 781375892 203721659 862615705 783958953 375033024 44397482 13295857 733172520 787179467 998673448 664047426 614967930 866724810 53448211 916666252 927318587 506642689 230458328 118585250 453725657 363754920 199388781 604773649 465145479 587478024 777263682 23679361 222106536 50890421 247102262 666248103 615713958 692441451 111162907 762750846 342527997 197651025 420004474 254803102 976662767 714887970 377531169 155318417 265369983 86961383 102383996 155779926 91474135 807679153 15197429 721708473 270290810 942867499 343479452 916186178 517816601 846609219 93733521 20616998 741849349 212030771 581337783 379344305 545072156 129469764 900381824 536565167 847658423 556866953 563527706 6282480 440231420 73811319 733196943 936442036 887317182 567735755 125571699 176749495 848414125 706393207 780874690 248915455 483542445 221599570 149663206 959932902 123176954 408649875 51539970 597610077 507869382 890710070 368738255 142332074 923382963 983406050 732730755 675848986 275966754 832884985 955919253 155261481 175013628 156065024 265344230 173349835 144593399 964144113 380097136 465429721 21726621 434187540 557955741 467035220 89396472 674166582 122787044 260168496 602376926 298625181 701621457 734361281 771943389 41717021 195424149 865860186 928173616 116018516 91779755 584117647 49064910 131406996 181637022 447810968 863929071 350157108 712638165 624200943 17089390 994228235 749951792 390073092 82786302 581592134 549568301 10371509 849970868 684351841 169941722 614979188 443915566 326742762 555306506 461414024 158545266 102309684 629649447 423010376 789371309 634756878 392233096 637455286 238558152 351368366 610879539 513733627 639217877 215665430 697524034 986937855 314926698 438393044 327131850 518386176 660733237 873976392 358919895 771576697 406366413 58085134 77282436 49792835 274548564 414660639 534812841 500281264 525724444 405427740 969148252 505048020 140485393 975286130 688752706 834750708 749422703 282156422 175208818 891853153 673245715 40197148 717910615 976284665 635909686 996829267 556125808 702906582 409137280 819261217 589695052 212545240 787539740 323211411 702181372 847455101 162817360 136890545 748672448 116221342 196732200 74073248 115238668 808529754 550838622 770336199 591015630 942415169 887598763 506052836 230837530 38848166 382130358 342252436 232993195 531426248 796996476 634068769 955143482 656685569 323149946 857634816 369559493 661904362 393790791 289332180 781689881 189862278 606415311 840188802 71046009 747844078 404094975 972985267 284273217 184576571 713873518 545569769 698178604 889431520 902749732 672659492 80231889 145008120 158036405 368956092 491209703 528479307 354285472 119054217 667056503 64420274 87305793 456325824 456292865 826846544 887520270 21562279 3729737 688339056 229713613 1938009 772755977 89874096 967509819 470496764 484692504 671826382 8795504 685147140 454176222 718939750 367873095 915366799 198035123 454315355 692053394 768508633 861778659 965316350 505263246 950217665 866088136 503625101 587502889 21606878 542573454 576732289 38876884 551512474 196437401 925674894 521695657 798157439 973749230 438894419 988002698 466320752 203314151 688359619 187885664 985693858 136336441 375749610 721175364 842950448 833815892 36292083 227165714 17909987 125306613 674244582 935568090 972797801 28961001 129806711 372246467 661891121 113920768 169990246 304451692 645096779 910565280 35514328 121869118 451230554 183164865 38168772 459875084 95371316 688955569 931238795 253767360 856471618 900834876 949701070 469606683 350269647 929533830 720024601 963189744 550124926 640770780 508555933 866154786 282516843 175734428 842229698 542797896 72636356 930883214 316558335 561821940 384810230 488888848 151539419 358036008 366149587 696668871 280828526 101777444 427090105 652525824 345550843 76464016 395306319 997269612 223777756 500217423 745378926 470904669 614010353 992806905 733597861 293314762 720073061 912703594 446780748 789675188 867538496 294651906 225704176 58236130 77129347 191442254 24364614 635254743 460673370 459049193 126015869 170222502 735841681 253857316 95750389 38060592 51406419 243137985 693826100 253958463 878152911 387750844 862218981 100175866 284053247 987345069 653210594 62186145 910970366 699070944 800464609 895515368 152974397 621743302 875071481 480937472 311246897 521610420 422934182 487444507 680818920 366902554 523605967 243723052 380376332 881421724 602543196 705438948 543904591 538551086 576295052 457023819 290750918 417056048 89404630 393725736 504735607 72732376 485011629 155451312 822225464 41157349 730414365 259909900 522526870 139277655 305711745 250212626 373551661 420558135 797913545 487490482 976254843 981800836 816691431 321965579 151112815 873180129 744901388 849281913 98446903 190455989 144435274 281166961 714079955 701489410 262716241 612489543 115019667 21654065 154430040 652910740 656517021 399027028 176562082 85263747 246899150 817095815 188988626 554946822 105405930 389049241 808738391 907284944 214720605 131411340 127393557 440287217 994701481 688135192 220643433 650521576 375676895 118064560 643603430 516943094 57702720 338584176 296165859 881738401 281425902 753461278 560155815 201492597 607105417 672136289 547372008 198728582 592236412 19447494 478635669 831541819 856979209 475150317 605434698 969361697 694655423 523254928 908558576 602651646 649417123 831706409 69633038 296118054 551672185 876854814 373976338 225759528 568070524 944347824 275581107 743031257 647985225 958148428 651431392 422924445 914210409 68869711 380585755 323476134 331246639 731392611 57195270 957014251 373910694 500043388 44844018 604915386 394780788 997599940 586367599 526740707 509459024 152677202 807747675 959034625 779223975 58586955 955958850 369233354 664570693 108963427 209047618 126549269 63394781 602510650 481874913 562255194 943097637 295815117 926130514 641101156 542890130 777957558 112589497 859306457 716574342 25255611 491179203 260980689 693775317 265800125 165399157 532172384 603234698 160294588 478510152 205312878 795273384 970064253 89518371 881261360 238938962 483380202 308567782 992439531 716594115 547379796 110614636 740035083 600503153 627921568 679882012 720440716 53587000 703121274 767533037 580489932 807180857 259028991 948680364 864999540 755944864 867109425 583985366 335364677 785930059 126444037 843362412 66603203 660081967 802386172 404154299 562648148 396333520 87534004 363719973 263755054 42218698 77759807 666929582 392952558 221693159 300056841 488144663 355836251 981268629 836356468 679539526 740078366 662916329 475672416 536293915 398080426 376419128 605132039 912544579 594192635 168980299 157749612 256495955 471615587 750187503 355096274 281609419 216880636 781028175 376929781 770615725 13708959 185552572 593932508 337122419 955734277 291912368 34365947 624666849 953286227 645751454 723129622 218037054 49999692 952826964 18882267 993981263 534038831 853539091 380956691 708249895 471557117 424362951 672565527 827550750 553705948 348177244 977661023 315427735 821245858 897900743 714452833 126149359 831832145 710254155 233619600 611007456 507736791 378388306 900200281 558712597 878642922 568877666 758265707 162936836 900319000 88943554 794118060 905920803 581397907 635151136 980634428 79858569 590017736 189737908 974039784 563096308 995873504 476024754 835708163 735969865 518617261 26950688 617376436 854747345 767469124 340733191 442717877 351560172 918645665 119273577 589508255 706941088 225402600 696983399 749081416 568555758 967854286 693117244 449640744 27820219 662011742 248093985 549155811 358899078 835637474 638254222 645361939 831575325 609661519 605852314 965844518 393347968 794648494 615209476 403388844 756226319 338624501 807913242 78440734 854140450 541725030 778762589 161664149 667092869 516160849 221637919 507719256 122667237 874771433 211052295 309481907 747157519 463963290 610399306 660947727 316609102 365243465 455970560 967076056 133539991 564974730 872662576 853280215 696268759 371145320 836090239 476492104 44684944 856004388 350159835 752534719 942003139 394826518 918176061 268107612 546915482 474686593 221398504 753200766 519728580 818628841 849955866 478846658 148863062 2806250 100746132 331622325 217468348 349330072 515182952 923255189 170259360 255491816 20378260 594622314 184836147 787332337 144942120 727934147 107081234 805448302 750673001 584303050 356784649 349937691 225958749 434216983 196143644 448547095 724138535 347798293 116071519 258441391 635343766 490922396 776311568 444175700 451257100 79365733 343864898 836280159 40168074 552644793 108597351 376793212 282705145 634177957 750908770 118876279 962947230 167581792 337198844 901800517 618861055 95874877 862187525 937779318 562118808 73038710 779802829 745825669 347995093 539037118 341025977 391942278 945712157 526795844 642895692 814821825 845076058 607974077 477685465 464998798 525047953 372084718 680928060 246699349 213122243 260116633 285342402 911040052 64082833 275500796 428899155 92111496 132663463 395179010 991375147 853643341 996364333 129181689 140442408 979742636 930935757 310514028 689372895 972097891 688691074 7794291 147140555 873776910 567745519 528408641 351523223 81032794 246841504 536603384 601337009 326869157 680307177 333472707 509441295 557303418 959785824 327805653 833524236 637720858 825789479 237329963 578116533 455617293 867722916 364219339 439221192 101668906 112165265 446386269 436100031 368661488 589309023 330824054 946899361 177489501 779626823 763571447 3194231 566919926 620259266 598950535 228591678 942864708 678688613 70083477 172904447 460530289 807621600 35534124 579095569 394009571 66094241 851725335 900794350 651040142 4727680 552876928 262012155 265244762 249433186 734627868 142021500 629014719 392307166 422605789 687262340 47454849 237597865 449799226 343560247 491766400 343590289 339226864 372993628 653066196 33132638 361077461 239063348 314524733 91629648 159682509 458968918 965228829 698947483 191593591 386863949 483031242 557412541 609760579 155760389 883673265 134795678 426897401 66885663 164054101 29469039 516200807 6360660 999905694 291315846 120793188 360665803 524563484 572405607 745162484 716782680 457956936 105396405 638959007 804899275 810684761 654880565 99498316 436485441 467725620 798772520 111276481 172142635 617732951 997570509 367667857 137518576 807977083 57711302 848430796 535828978 18179692 530736182 104685712 363449596 120279549 852031964 447686770 245866362 931364498 837466090 186423418 866727167 796251504 645113191 39977599 185916341 546769636 512874220 53669871 717272152 834313847 815955701 679068426 196485524 992760302 145991230 611583324 321310972 607803860 656119745 770289851 663237514 703761113 35632460 603634542 20023603 972502337 267650420 212434161 747300743 738524402 123358146 379772228 169127500 341321609 876763292 112936244 308089516 25612740 330927213 392572703 492439526 779499322 407406225 903729838 869375993 377384236 739991398 264611855 31314793 742738444 738008938 165483785 670660829 515867717 970237155 437888179 514612051 848545010 440960192 261978098 819412990 623626550 483562954 956535646 122521508 995845036 644443593 219491023 209095253 380735830 519946109 923037660 267159989 707819447 371523722 807469581 585977620 481514628 888254460 110672451 68324309 909552684 685775846 742977132 351038779 159661758 804453074 215417586 227582266 282780139 771611287 544631110 525305323 404976276 444939991 770549752 93909991 316285738 857178340 368282147 551149957 556781881 836067468 771446208 682759704 373690497 757577165 569200799 889330762 544524808 116264110 446031494 68379048 285737698 379158962 231605402 456049510 720642310 135138714 596320173 676482858 357092907 546352026 892272001 903625226 445342960 105377126 236082373 947359206 37389731 83695828 297776146 801641254 800587053 807222156 245446287 480508241 686383692 434684963 87517386 757377860 761922607 158572604 961713493 54597495 332245401 666435052 632529777 315061777 636525044 148347159 241389263 672880435 113085485 141957381 224550102 842762084 899042356 59164360 87724770 847971286 179505308 533622331 856389764 555903777 274434151 936712118 489231280 924694490 666889863 695968871 208247026 737574724 437025533 953061307 573141602 433240760 819571533 866943576 616751354 523930883 264530112 106663278 54124517 110941086 194096586 214782674 228159982 486223682 110905398 379173603 817747384 844684423 194376293 153954719 897970703 831903158 66178510 641469243 644135653 828415518 452415342 114954699 429111344 212863016 580200174 60864557 297390801 449358353 446072890 272958924 947814801 818266948 613873356 896406403 545824796 572229421 321930558 509995409 906788 698422750 58724141 928825415 477965371 82755369 80740628 983506526 522931406 370000303 105739420 495240608 893529136 334819230 984094331 699972392 589491087 684034714 760794988 71063129 343293521 473308226 130796644 684070679 310401117 552287820 787801683 698481272 955856326 192544345 742383663 726920578 288899879 862258569 11385876 292843822 199014467 217191830 430411428 15749526 862201259 982426598 249325868 558162971 89680416 758801548 81070811 562905340 665517900 575466667 606412190 426931649 177547786 219712118 47929929 580529609 565392997 140653317 234789119 825482956 904363759 16440557 462079067 707387450 80816614 311083992 896761374 950343861 787793605 496760346 13404549 801742513 220786169 277170341 167507238 801576881 610302932 246176984 354785808 119931977 784940381 292020614 198627023 92808636 369401159 553982584 930650981 683989634 848248067 325495393 450960420 584525234 186034191 41473327 252010996 152239276 721388008 917713281 121742461 272001804 188533123 162116126 267929615 768765128 103731708 178484721 841394581 448226409 474767549 689056350 756738021 994431024 195851606 890009043 13319912 166112812 816278109 877713061 161798928 409250032 120081975 240883641 729358056 29974233 377539621 668311212 566275662 608446307 871301246 849456260 75876498 216318658 645174193 378981591 282819579 977000807 522459714 677227257 261123386 749642687 398900901 806519819 435406593 856867266 344873673 887724312 750612306 299642486 650224310 816616354 877182201 151816441 76766745 27287400 173309713 996645276 638841549 46642424 126606350 134320644 658532735 312704872 481465342 619163114 159572706 655355633 729116114 741675610 785511707 925295226 53471175 504103062 223201079 9752830 668287102 978915977 648818453 412924404 4986712 661473411 444131082 352091769 683772821 747378170 287349332 386157676 384013622 125477338 672629777 188053722 586168038 954666367 682132605 435797601 765384197 882334829 113615054 581144966 39153964 720029049 203674988 333871584 974912285 416595867 773175645 551190671 12895646 544980432 49083510 384003469 956762781 717700885 185487131 838354148 277911204 642678074 538206951 190438512 252284274 817244852 163002120 872905667 279922183 615359718 60392970 801603807 448865224 676677818 354064199 337176397 891225958 280853618 235190716 447524421 949973585 634431306 949904193 282819643 112807746 521647726 178745467 649526792 262265310 484948577 869484966 150557728 807487963 470238138 13276392 29139205 308164834 386801092 929497642 784156977 525600839 738401772 538855742 190553486 792781659 699115681 586423004 411324672 287527010 554640704 979401920 873165841 630338287 854436800 854166876 284060969 897115177 402074494 689191387 168305157 89798644 696048578 380028461 667588186 443688422 833816227 413655956 184955953 702015527 968524210 812526265 443416761 822851567 742542159 410211731 796714778 520635617 638831789 833263163 755160817 911550449 968990951 435835349 623534355 168774764 523675773 54797283 935609159 419950913 478345910 188123784 871977373 153542985 714666521 885602556 522289346 54567131 137499352 912789760 520816444 714943338 555604011 880639342 90117636 854416424 160672760 951154408 209080905 567804359 519038341 291958636 358563533 678724159 955922585 623176571 813385108 293695399 512185451 571416001 941343778 726500340 485819001 767756806 247445088 803306510 201445503 560966050 101286950 464606400 856876256 340539584 874197010 722161696 19858119 40381935 431454700 728660674 491772293 988379382 519421108 946154534 41972214 302659260 24502081 915838427 880482990 356646891 230501430 382639805 332422118 48389636 283523020 886117276 203483267 182477835 940166037 555175961 34466539 874809423 335420051 575819672 894301015 540991191 618113297 757035114 110744062 877292153 281150164 678816863 817226352 978904207 504478432 677405456 964842661 626061484 456053505 673342784 220006455 664405342 916448644 476444371 428129079 121948924 582596642 587241981 400499365 122002206 230345897 350616496 317453848 719738563 13018126 734778872 607461095 679595094 400773985 251442587 675139124 998103422 345710096 826170635 108172897 538450487 178990975 890507572 445105466 324911706 552345498 120200567 714371983 65485116 41514009 667464609 69833393 405181177 270196297 487169516 991565043 713540808 451982537 862218054 954159941 215117802 929874804 15584803 50466938 484370472 237138556 48727207 607799789 558905755 535865703 363872853 232981440 212778143 519640906 990628349 47652087 149012340 994445588 332047899 114773356 751382741 341900723 536307770 790464294 667778983 439704937 906776949 794557491 613915578 916793773 385434312 452216703 755178558 286590343 832098363 450961203 764756813 342576696 186091782 983605583 197315688 787784327 966119147 909946882 916812509 343084414 353799640 988864592 155842530 474153147 507911190 743727915 250167194 292911102 717075151 541537436 301232543 92427393 326838323 530140024 142079779 109111206 539057550 877005538 517025349 416230569 403839094 27043067 985797634 606505633 320568277 814053421 880047197 429093385 199586989 12666271 422755433 265727034 582730343 823623697 614119779 39263937 641776149 630828426 947904752 150539825 214588175 516054071 82766116 51891920 966950294 891820628 565519021 4252971 285064323 880059019 947414698 948822367 132771703 953449140 904929607 753453563 785530433 269586526 689075519 827578589 858263567 545914194 152217135 480937004 823687620 236751926 952536579 798383586 304721108 505590590 486870032 403647943 814576668 808358606 334631888 557452311 472747772 122283581 54633742 245571420 766599113 306705012 285955859 202295248 725906012 620735892 32151680 740145880 582776483 809051030 718507875 284107332 743911799 460180447 809347526 527587681 986440312 510652031 527929521 9667017 609318664 970669609 843762200 257804105 818688154 437681354 902936251 684244114 865806547 784523775 11909728 460335200 878630270 760698638 734044029 884492021 512759407 190498600 644048261 68524389 281862095 245834714 888393186 179429461 891229723 930875968 80198228 357451796 968752017 890751287 935955063 942229266 973020529 408767880 732107019 411886052 603470944 478361174 440729472 882469603 820984284 67889369 270956522 862031868 309102658 217794526 180967704 450100541 724834052 972711052 593747993 477571198 568997532 798368527 91206 154216840 988989562 917784607 902424151 846057067 621248875 980388891 612825483 235796909 945294078 182872939 35130292 549731507 693683987 777364958 33736338 241236399 6586415 235080097 397772454 617742043 467394720 526078019 464619999 826250806 30733279 395479154 33186397 400106102 597597420 59844651 916460141 850348189 925650313 749597528 746984545 887434481 640052556 730811189 178601030 361543441 7606726 65532381 258312896 383671342 345641115 863278023 217350002 455056109 846782936 890070604 57205418 398292160 251376157 481649957 823474021 65958444 502746962 625345430 91107837 304322859 214437872 531780408 857865926 202802007 263659552 675819262 651288255 665270343 560625494 657506458 594827961 547352232 261751659 23845246 254468768 953574552 805314569 695126023 99928283 114529336 593698672 294567440 766747357 906618470 811697234 767430968 534838847 435153099 759661105 278937236 810470162 967321508 628762878 906941080 600944908 73750772 419170606 428106491 578603245 989101838 988951795 879573283 877147967 366540060 689552218 302446258 100094044 375203658 480901358 846748345 696522383 628346621 649611354 836533053 288547765 187992117 9999379 194863754 148299507 948044373 530020149 102520640 974891336 705190151 844369037 874968257 916601446 289606551 488049829 17495488 584170255 364332508 57585466 162414652 625054847 785244891 796900905 35277369 929790188 371606659 863368599 924532654 233889724 985004519 262996835 218276874 116954824 624305034 135400180 110476690 295022360 523276658 720014248 302012401 712362159 425961289 30219102 472581830 358990628 885297816 232815889 686439288 924169963 174376156 821129306 643931585 970247507 603573392 668967560 853313929 159365831 710430139 794518252 598927691 298141477 377059747 701624472 266963948 193844315 212933776 640637330 709931984 695906488 270674464 198379691 412970068 14105941 329356230 40050118 277779276 255203686 408995685 805423032 119136593 973575935 522148924 70573609 877807961 732671020 402142907 719874090 82044689 6658934 164495671 800795969 122747050 712484546 526519847 997535525 742667178 10175440 402989827 544773656 408007400 737163338 228506515 30018483 125173578 992674040 802461084 530545404 122449337 149499311 441685897 961562700 674622393 313134749 391646393 84262165 834031515 167963916 508576780 707076756 957075645 715018527 417492972 558529680 366698463 747580879 984940188 358125928 102910790 925119790 527771654 10886810 910212270 912110225 358592473 942446887 847442019 613816522 383555637 98191135 306509860 560154972 969478054 650106470 876562948 913073281 871659564 857679104 114273428 370685238 885398679 132606301 259901976 305430881 387981517 220523796 224536555 132773123 773849493 37411309 117046876 301095395 961465356 400507186 644116167 648920409 339192865 677510256 725303415 356734447 467935293 917637714 818792985 329047198 858889004 252585826 782850888 895896094 500889685 317065039 34944630 763239316 891089432 150129399 693479305 707301662 693269776 937999778 818127868 237498204 864887643 297703040 158366231 175204800 800313375 801660656 733763140 358703066 254563520 448484627 575748086 274743875 127721116 73251528 668254361 958142874 930372586 356133998 652623357 670714740 159104879 634349218 680000806 330801619 982592037 3595243 784401271 60872298 624700348 222769677 960161971 308594380 459534706 458833653 764950010 192790956 64732847 77415403 932003571 917557341 747221398 936619955 283384790 796978464 214983300 86650942 966352992 664471117 477294838 835158018 636270637 371857906 635878738 160263408 941504288 143806171 506226460 819357567 302037579 735487347 811591498 864335931 602495238 170670448 741564598 675881001 78263309 429981887 967135085 535981698 768816176 905184266 812931214 233677331 887938120 341608336 708909660 764224428 186375643 213614591 537246460 234480779 997618745 507521348 375153510 830240920 430064224 932904283 14017804 477469413 58701636 913258729 46570803 288506363 471490324 629584074 893611970 982408065 986678942 403813409 176343065 814642641 96830605 36838648 40743450 632347955 100011883 787263700 947616420 229515275 75301925 184775616 902520176 381328064 163087684 925606403 200477893 103250648 983819772 319564770 976391906 640185586 482152939 976804133 782554150 839121617 506543099 379538051 207636708 408482712 368932648 883565425 466162988 933108834 75236674 195128638 905194757 111117322 682054462 708972973 617330023 650303551 852092880 125858781 841848752 924375637 507707914 852992053 161574991 576975346 494684886 469145157 969317138 375771349 438366502 34476497 86081849 893286864 588999380 764883451 621932615 536036359 545178920 199903150 260126570 174345208 731983169 386087433 560803063 509845441 447206243 583961327 258915131 154895725 998256974 446634550 729057093 345654204 350079051 973705452 380151265 166910762 997480687 224854212 934694130 778335741 421791340 792632440 563133414 381837533 8965901 393432723 464020466 739245807 616557899 439686289 660543395 166236591 3788068 607137063 312499063 861586261 254521066 973942690 720571379 993574364 319608159 392531546 346290333 600472013 206167335 277707638 354610797 835876192 950544512 795152470 740766987 831937675 694598778 932178213 701763337 430602172 23800324 219906175 128983483 369910067 442708987 531284783 521020752 976195391 300736938 481614922 928660272 114291099 34530209 330213531 974533520 508424477 196404971 413785150 321261442 161831380 815013184 660150822 115907853 756375249 473474746 380986146 215826980 35868684 361761013 198137258 862860542 503883935 998726856 914747523 929540990 702458284 811061934 427282356 702833053 946892129 161583702 900465844 163982032 332680169 954737622 231231822 242475328 242311552 940311138 511148855 567223881 926961776 713143735 108058171 395471795 515968974 807258928 577016034 795247359 230516421 231488034 391337175 171963393 301901678 42589723 729884062 495130433 275558682 532054870 169612754 88717016 289586379 283487441 414515363 70947341 569729932 629044276 529809099 536425875 423962174 21928903 201808000 606411246 879742186 806950911 936134286 463823908 409613571 358849252 591512785 921534266 776089829 625877530 618345415 408486685 657699288 806357996 771520512 651635247 548376583 829747496 551763172 889337130 603357139 294183502 989125784 51650415 639037465 30326247 433471652 76703956 425839772 179916501 246248771 204543283 406863137 809217970 45035412 162680412 759854812 882803312 489774377 123400616 753120973 216215397 452791845 353191932 123808381 89263147 365402722 638339533 706754375 311913403 688820832 862155438 814908891 945596564 466949579 17779769 859112586 980008866 942338193 283577649 571151234 148032968 478221859 252703419 996996810 866761002 551140610 836301705 729263593 2540085 365491595 323892083 270989760 541494686 182042258 59378801 793814873 956181462 193089048 643089912 796715358 710858737 292608526 435012544 426796850 208923553 573784873 137088582 858643502 284749353 26628499 176407639 483220893 727584007 537454336 599246645 54170019 168413645 193804349 742499827 303589037 451191929 504481276 228285442 95082501 749359500 971143956 376658367 553666848 279636056 636031574 202532221 843785358 875055188 95502156 971222921 5287439 17731977 235860898 830559555 147634733 876387204 58710387 321344817 913999882 43412073 274997446 145836711 688590728 555158046 145378334 565026457 857671480 661008217 852328978 933426835 111045070 476425832 461660189 239975929 449189601 582446767 7103538 102380577 273357217 311518039 700265625 53828521 145140690 919624019 918196996 86619980 879031083 864804610 390511013 964706407 114406508 994401619 300807093 184095410 173652606 751799817 577952871 84561612 966116318 177986752 983344579 766671261 236268685 986860632 407558664 651380769 136631064 840270276 517971271 603458760 738312409 204683544 960330417 44494742 272013844 738037331 71035526 408061848 879763915 463894175 440441340 504357818 904397833 703227685 295130681 580253871 421175685 762096764 926103859 635110631 958209824 930415369 400469021 505799808 406822948 142695600 462459417 852190151 504763811 963201711 120529542 361101298 895807249 648954915 941131736 208348196 205505502 942049302 893918258 880842070 628541145 36567631 637908635 928864870 324934557 300293326 503143692 952860324 58632570 229496234 925901157 643514412 918730959 500799473 916916100 425892343 337205252 418185520 610904477 676335819 197194237 907889876 992140440 74702405 729927897 525970066 259954949 288298441 777565760 284233952 42363223 408312985 670249884 278590870 166888473 720475048 628136154 716085968 296646351 575041468 646439235 581679628 852265873 772343897 305256152 303841017 838342665 473846028 544144990 897382123 57434941 270107091 681888348 345969266 810271279 917254609 905417245 570142976 878814240 423017956 720931024 247122236 713663093 322295726 681527678 422740296 361787182 554722100 990240305 195496557 167842621 2803701 841880272 471735976 521751816 760846195 131807881 92504132 41924274 192958409 490816919 740626405 932981232 685771064 870063938 776968757 348460356 165526204 853610147 844168124 707985002 943651367 398276317 513294773 326901196 175536791 226606695 743683823 757033560 848842421 105901468 190110759 491115921 669831241 412867524 747298372 113659951 981688479 743255162 68740707 302847304 229526856 441282434 664267762 582157059 736629640 268204365 618921370 447662688 876789411 342608685 479630940 507360931 965244551 978735447 699780486 252695049 72407455 298602155 357241948 489254851 709792810 483416250 521881020 863484310 268995967 467138523 484712212 857154440 460845203 290144885 65712096 330962624 43008930 678321035 13345163 814640152 488311351 852186064 743691494 398469545 760328379 765667638 862822908 20246649 598642170 543125648 323963824 867945144 100408137 913750951 174180343 51761842 329333434 163064129 443054540 750101223 642641391 130295483 980890140 676019660 257182143 207159692 344502782 59022713 158384108 939913068 920864382 119730099 292206585 53017972 879558934 974732206 659907268 192202649 600938388 11538829 835715998 53527718 342908521 926148926 113330936 743487341 15490005 932444646 814839984 422537784 513360206 528528008 841982335 534558414 353191993 551266887 102318156 776301386 114293172 864865950 690625111 330465300 146764094 66070663 867404867 686827753 362232457 884002609 884946872 187237184 723555449 568349372 186413048 517335713 225449656 47691729 66159167 160588936 907995071 772277588 255445180 522644992 737276511 341172469 602648684 229698237 243516398 597466799 921084858 711221785 602546094 546005598 693540586 700653980 757673716 672787163 140699393 742334345 96934468 375252681 231131336 615334401 341715120 331999738 422207309 367109401 184754520 580043341 589654372 50455620 783619442 468057473 756589284 67748070 37471410 144659394 659253547 750379169 916941715 638084917 826373300 959123408 892689440 134619083 738671897 481080338 641530894 657371799 448980322 398901470 800270280 326294725 143985308 184779972 405605099 748026685 187433872 542721063 254295500 68707178 374768918 301531883 448778630 938902739 119714343 39713076 206912749 348535922 846322290 387699820 227042148 105112787 181445171 125748795 673496778 129798941 864058738 708274224 407982640 826939885 234354942 476808116 121950380 422772581 754820086 40832291 549723067 670186072 809740290 418002431 671521224 368326983 852417747 289817214 799157961 315245587 584901023 505706894 961277381 759285743 494679658 248418184 828271630 825304171 722954585 271880155 353228642 357872523 709492893 513392938 613447564 733363748 730824061 372441300 205779749 363295375 861129304 692625927 414731032 87547445 220321082 240770094 308052522 873011263 908449371 256093843 775002438 420920899 877991195 685361756 435751054 830899033 510833341 898865392 20050608 784181608 21560893 152068212 442766908 288540172 74162805 705495358 168230531 683452569 587199430 902283958 9049787 757299120 713552048 171667625 164435192 895081160 709396111 432442724 103093122 66679763 542197479 243789514 302971388 889218941 121964163 779928169 511971255 372653108 532992988 355487605 668060672 770694900 628879816 660967630 264264753 15447362 16774225 245506351 307216944 586329074 159289253 203466819 621726878 201219215 774768099 345548537 530855917 328004578 850047890 913963031 495304352 971163353 69645498 616441524 492603936 977473627 37567977 350566901 717650900 497822145 468931561 133545348 130194730 680957870 663654402 795986236 902141959 316806838 912462754 583677886 386599296 818319504 646844968 280471893 639335282 204012626 738831915 729669380 760203813 80316231 304429285 756620539 65489690 812134159 405087262 884817827 112782730 249131189 475368196 485712689 807313346 872570754 79839288 387657381 814192537 818357247 280843633 386688276 128426629 359565583 896294405 957972187 627991068 744901394 443342634 678765022 300280080 783902125 596171290 682787610 403830138 782732304 263856193 728773924 330327755 679531316 550824789 486267600 337359048 314234195 910805733 247387750 439476162 301217008 22498909 398216621 837300740 17313024 68066264 273048001 705466676 241256442 210989979 828955041 694828858 121274374 396659555 428772371 4708662 165089303 617678010 283144435 107440478 852888305 221648939 655227364 633270048 329118621 808210810 764085237 742493311 429134008 356234927 967581133 316053462 598741623 125871882 50648416 653964049 767720406 462358746 265999447 795930906 811752106 657753566 293664056 952451194 337988974 624391797 974222561 164283480 87540804 53586166 777920213 616972172 644146249 843514212 722398810 530057704 359104234 677498956 333082694 342792729 505839567 71327377 795138301 521830752 416816760 803461600 697486516 572148030 104871840 807829477 143366125 274505905 32632541 946561004 883130482 935734251 8775867 79176681 216948502 298649113 476678175 451685010 425223360 101389404 131247442 811019198 168047219 177973725 290962860 288703539 723814234 642759586 544032308 348272749 11072247 817783526 950160946 16109217 690291571 809380024 54279526 13267203 178587018 744818632 824753793 530782196 379006962 644671698 178928540 951170511 703459657 769241316 351835975 17313315 364313056 578303207 523010196 194429765 653173131 721974312 295062865 65602890 730435064 694781376 717620728 120005636 191155937 448210671 751249237 51261161 172730877 558852885 431600453 634237634 797548686 333792169 389716847 704822236 879373123 437461191 62623943 451195791 845385543 489948346 544891288 346861675 77405603 242599513 350082575 180857544 195355394 932924840 582882905 60210463 492531234 534765746 283642232 646657715 869184968 394128523 141024555 963513031 501477999 852926975 758080705 628921811 383137698 101341324 942224670 545743208 509049618 149806292 530271221 853585045 855862546 21754915 493749235 533205638 903710838 81880393 628561159 293558512 178929962 984241514 840419417 262244104 151743040 294183996 517014646 276947278 949423095 838672929 637176321 878880678 60803978 363216467 266750751 141316371 881648114 696479154 22091868 733738645 387894627 140234381 29523571 124810857 73462784 103383976 944673656 690289025 861743565 53399625 470044602 827597462 228355045 295088727 333555591 210955094 972175385 567170670 697529095 243378527 834852452 187178739 734013247 236672876 417843183 115141635 840791459 698880216 156701670 117647888 241552117 739872908 766772568 366791372 181356183 174607524 222446959 122374476 857454917 919321132 641747077 575590823 55215158 588339959 953278219 607011386 258827398 750322189 971967681 890415380 239749965 922654017 846038834 542222344 282529693 687241837 565460269 934974390 307076733 555651798 47755543 200770200 39489049 991694463 790181165 252463800 888701994 683046066 140129333 687216108 528362007 151878029 384025741 270164258 858825208 830472960 499683452 133879767 756802388 973900903 354257386 419309281 729082688 234330847 992468296 957025937 635961698 970221227 223723768 665489073 701218984 778068888 942356427 352779671 980906614 143252097 318781520 661580444 613842183 518467576 526840078 628178581 194628168 76981440 336270276 37271639 53524415 894071445 406717932 261918653 475171531 244017631 802526103 453310438 561578961 933696338 252710288 91528898 223716098 196545993 827049122 826108549 982684116 768698522 584194110 943524148 475923969 630942087 637397411 946876086 278947132 904006937 722265858 655412668 912079522 254651768 807807331 142790474 395006972 707425676 163778561 592808548 810237484 798290320 537964608 72488867 563828236 363860553 184829688 973599496 61913751 958502722 706309201 699074994 204632317 445420965 589660295 745315588 498851043 179618353 746244886 756341362 263891909 167338918 720588563 829389037 601644682 95257608 386425185 409552776 313227755 52287724 143381252 651073840 319970555 202504554 198944864 946028466 845735748 319300179 437939884 92739795 940963564 55618507 900597490 940750981 591874193 731896974 829511526 953247877 887729911 2614704 791272929 47087928 982307735 944705361 848758102 109769968 360693194 206787843 747547244 400812535 675477546 567378209 81212615 999571452 804417649 896524756 873026311 36244754 420376519 496762020 233792880 831550075 995015833 432536211 943588455 510504121 757811952 500048000 358183706 957549828 934707084 677945552 726657179 3569223 936868749 99405370 270227987 873867528 23110573 947767349 669945368 950360745 67568559 601342047 342730969 739616803 277107092 521058266 440049647 102578985 244642335 492853600 672561026 171974129 704217029 306140337 143326192 861347159 753572054 673959234 296853841 24758764 414568409 238547518 616394742 104158708 712309556 179877885 501196953 405120796 844798771 765420412 106038711 308949484 912885292 706804351 659575147 183020584 947877490 267456424 349960184 758786781 727171500 427057513 579395799 240941138 932376547 168869848 17868174 408133170 311045886 649192735 638839139 642635437 836506861 982905359 814832588 210851902 571595546 158095028 126662014 356791892 316048910 218090876 932301794 442194841 199279195 92355177 62975956 70312105 889811516 115343439 125457706 122536233 897673649 136752664 668064631 720640961 333830335 605065500 494853665 440303314 891556685 855209854 972579528 537341630 662717917 6908686 390587962 547260898 299811819 530989747 786221044 886763757 113303713 58206232 148029598 411520787 861160685 153819914 742168848 861655938 656004227 711812231 603519035 810026709 452336420 951569684 331908611 312103995 605423782 853312736 38036355 425646964 218336734 808619412 107170970 664465722 192705780 725730025 763990130 567763346 337396451 987822461 524000060 32230599 752047514 130063474 314213734 325903984 694595527 652055528 369646908 17303685 360328600 716974990 184280088 546332512 255021247 52801941 457549633 109056757 796909489 597881464 521869016 231631163 336546880 535955210 390645064 948968072 880044096 618805471 670611921 59783451 781915462 586741162 581569769 609870302 846022817 114595018 17051638 267613495 62105391 475085981 723779810 423579655 417082626 731476711 422459304 419000337 416494418 1770114 918758355 207892076 35672420 122186399 29825854 875636710 986666711 785105562 812953624 90466540 487126125 786403151 24134520 441001230 345273833 643027019 469514115 659877668 44446767 615595202 876302512 159429512 757792361 671837400 574040388 273964723 574577673 807367542 611139929 357180388 239651589 518370368 985226214 49785261 818802663 432596660 810040602 819728565 186894667 72383774 850258649 612749820 749900447 191708205 483954483 826111402 645480445 621423830 507657267 33209735 996543685 798953746 882486102 778166513 448243715 420755326 283001025 763507592 625453905 5533385 23192225 471755748 648397881 629647945 179533992 541095658 824710142 985853560 855780608 426475100 746703534 704677373 93513161 384636100 979803696 531777858 372999830 740308026 436600768 235223842 565511381 960914334 768662530 646728715 414878844 756017138 861046610 174056162 338457927 364043476 115461448 939259291 301246244 227458913 88543335 151091029 591438933 224088036 653115868 792506208 601704427 779470823 410724133 463399049 338720314 9690698 698167485 280097042 35850376 329913661 892025487 960502084 493921179 375188142 758419819 195277715 96870741 416334515 697208994 660905909 419258226 632150892 86182664 897748977 370772681 30576773 350367496 610511072 831850630 771700649 487508169 625683775 86590199 890591426 684805594 396227664 10526577 983459423 906996873 371764081 426450707 648438441 259066539 867152391 367611156 286094443 997538726 602767937 262366742 617471686 536525536 293348563 193894618 784519410 84644684 581979296 8617308 3795247 444928264 121456443 504863274 537223149 950388830 159781382 922269563 355732379 632882613 149625945 715939774 22694861 502203478 799309615 867930732 855582165 629309297 308325832 10221053 231757722 662624602 392706192 57878142 211616258 839310285 139348293 79669599 605848752 62738029 975431576 339393230 144591667 668886403 354663516 33219968 730257937 461191401 383511771 774750900 666657609 731392018 413427284 155309895 219325295 679274692 391755683 361698754 427576251 838446425 182791029 338867517 212199957 543800166 659674786 456978660 502829996 83277314 354941694 421253183 40197842 3744223 20272938 275472870 177806721 540292600 105707875 604604658 710435427 493615421 857483184 11114583 467148596 993434898 509090052 68975689 535161562 52827902 899072821 475723614 155759311 805788192 821884399 335179658 707459309 632828915 189860801 730192842 838548681 922846526 302168810 654952813 540498527 113011450 639271602 820785247 52264856 19097090 323968887 761946392 486832223 142870073 776944318 843441659 946793308 164713245 796868117 6022994 161826156 835317706 151448613 153650214 563325416 887353863 820897617 210569360 944481550 220341187 53764331 313713556 519372333 752762323 816798763 237723425 299225370 568309956 38966506 698580125 32406437 920871742 648512734 284404498 499924295 494851180 491131374 139909894 108719416 629171300 10086885 860137714 171254260 151535711 254241917 725029102 767618306 273981755 373836219 927495192 291913335 866228522 958831217 712315100 531016371 958499485 410723150 679772163 763534624 990688872 218060174 957145701 222867196 603714800 722805202 163896409 760458603 61747129 772211479 303518382 286042295 351923802 543180489 233784259 627380391 404526182 314431842 799452156 163814612 686371967 536315338 418510202 669583682 936403094 864891936 184614214 815033949 331146875 869505173 296517807 761153035 818417439 968667976 849223697 414399918 884983681 694734895 206629161 887147038 565741466 720528411 736580086 14691360 131287677 445397493 737838018 47691527 789616711 801633509 495210908 278682300 347839351 222343449 659020099 610005261 331214236 791141434 346803678 665669511 738384968 974761891 26147121 444166280 12989770 303743676 115086584 780993835 341985719 874743307 870043755 631795295 491544750 510638975 362123530 122451677 919780416 63306148 65485473 282347568 715598985 955580990 240960879 222090102 358180833 306932463 61500615 519076461 192185846 403223198 178285929 437659852 35626657 948316610 579121274 15640251 140388048 375174311 80758993 292793744 875971099 612633373 156199347 129774954 737892068 70277836 981942485 194644663 3859813 645627585 908548196 77653530 896101132 504068334 787138036 626392871 222351889 934966566 758980279 943983054 955257560 496506464 559019175 25427187 20149830 288603464 540433275 716008085 633267496 156770626 700896533 797300489 692146581 822972273 569640163 578383345 929479941 881965013 439957966 187340792 92244363 953656165 742925526 583978626 588647194 428871152 23568540 69647400 712412719 175176314 411147726 696519826 54027868 836157953 87091211 521266172 248135310 305942125 341070886 784052167 7163957 85451273 972340655 645650717 630230434 896800714 748763580 573908855 492695464 558509023 782610674 782604725 243614330 318453445 868225046 375350298 603927288 553826570 218214940 399795227 113467207 41602828 753953671 697216911 351398785 583651694 770462880 572259133 571293517 39272602 94702644 807005479 975476702 281023386 704451595 911250897 624524923 323747002 704430325 542268765 293097592 23810791 310788719 95332463 121304372 987750460 475962144 131680688 588725167 208122099 423182658 665872415 372450621 228721929 484665501 728825585 454951664 206228941 230416412 881266987 101200278 430371532 394772386 948217033 289131509 473992380 804675223 507091610 504002479 350987649 116397815 719404218 38542708 778104572 571483164 222697808 532772269 922741989 823675029 880283222 802054299 265247123 857084396 769480965 271518820 9572496 98592970 112410067 107014091 808636765 256293575 816987762 68756256 506300844 382598370 586860763 608076772 225210851 48256936 776931253 952240627 549565274 113743424 542934869 451735701 583680802 664646438 244057075 698983434 817346158 725695122 123698468 139754833 833035718 522944752 656204017 958315547 67991053 317230337 176596135 670194346 120053152 22389177 620855458 429000417 462526283 657522864 149993113 272891421 72276285 269359708 255346055 911156791 702153508 530382122 637947317 776582966 156453927 132365353 921690465 238077093 115050281 520552372 657595457 413315436 35733501 567190470 819288428 430256354 979281186 888921039 977298067 141923020 613562459 218197895 241248823 626183807 173694089 506461503 990714148 26224131 77303506 418033880 753312934 142057204 360411136 788059800 603319726 438729578 283983363 344019135 776172116 380218636 97790728 40318371 90172360 510499513 775101718 915514784 624671239 780644103 167137755 545829019 58564680 165989853 836540310 883412203 614649040 166242630 749927384 523948511 895992295 709922473 738127467 297299835 988072900 118196532 511100388 717621775 452854944 618629752 41975444 67000299 138721345 592623656 756818085 760980496 166912466 469781498 991501597 363189769 509158746 463142396 898087157 180881046 246435223 959278199 188357341 91464421 708990722 561677970 609469658 63044713 315671577 220811997 358830362 416888649 292329401 508010705 675582095 606298046 326680712 267660133 745728859 972085348 803010368 652294902 334278547 577888477 552814061 655641665 599747546 52793906 613177217 324964208 50948064 645562327 767338519 162018886 623689944 791179783 749991544 199974805 48459054 707425609 502209664 869378686 262775542 292100325 593730310 291988721 123971584 758036387 424614851 563047149 982503279 794320495 308422719 490517966 297101324 184144477 521193068 821317940 972324075 559017480 610780662 105029958 270701832 830583342 235539076 938619891 596970366 460042774 458865543 157748357 412205368 655261248 693713251 660926351 396618819 398429784 556823690 309429816 18616581 268716067 498193704 973728543 657891854 282630805 294894574 150886664 765346245 381851126 724231663 417511144 763980776 441039365 305594525 490487979 835961383 17794032 376239563 736007907 898935638 366541307 386244167 473913018 329759713 588610396 514971216 198829746 80760867 162050477 570624392 275153024 159083921 359031611 804675808 73642376 981883346 807432478 211038154 257097247 646872386 573769207 320436437 459005997 853042885 299459538 131918936 221838826 822769198 349375154 500522878 613760882 990784800 281993090 643541292 762558286 585041537 51667723 829527610 977354085 196671473 261553280 675944126 923697650 225616014 651403414 970056312 564157330 251628355 845113935 586028073 299872431 598931213 801263981 776938738 387014697 691852734 599083415 676984662 910467053 100706940 841399529 620774207 579913404 727401338 133709656 759000348 397900283 185058573 801835020 632867356 41480958 393165551 122135801 171891005 187524419 117283109 60518687 494641939 758087705 384978110 533385895 562065077 639181847 780186811 363678627 755048335 496310148 707298914 12781156 551922756 569100423 365507412 920776330 985454321 98036172 954942834 503415177 907710362 399268080 990533817 747861994 152519530 97335005 136520275 881331899 511460805 690963967 440123574 51980965 691549448 391830902 944170240 543127385 811963336 498163794 973977948 58405781 498088735 740164849 92363297 821308699 952107380 310730875 920376326 82020063 122328769 485407052 182154677 847100001 815002847 655929911 952445247 41881179 567865301 886739328 284163219 828719289 991441669 873960356 404692269 558883883 964604622 283959850 710908271 204229412 622208086 813686301 361712872 481722986 281404312 602914301 798977757 69998838 502102903 793010825 585691398 482446554 828096272 388969545 351655024 245845987 86141546 631762950 160204203 679311656 114276268 79475000 681919591 986762238 341020967 769617819 505500078 83457837 832743897 363435157 715111783 889698498 391133824 212215562 461904648 142313697 736200141 69416955 550762253 245725482 405211284 669168171 315621997 588461219 291856016 128482764 522926046 870770732 870988332 41665505 938157006 33387997 23636591 682006798 781137158 588667929 843659329 81389238 328664715 765927146 93606060 627304329 555426511 426950441 68135841 315403855 17268518 419644030 733385049 198695059 205037856 469434770 814875343 582204245 932184123 692035047 577376299 959500472 668741388 137344214 163691267 866885131 962526869 699017934 612771141 294695045 698207771 115795692 161760753 205316517 791636653 849859217 527241246 772794210 368290991 63711827 550298910 274627458 248552727 556732769 818008710 482651297 403520605 444349132 691151887 101123959 227590266 843502219 840104506 979463819 507058740 480409453 456602990 122757611 903570388 633446537 390394932 513618848 317018397 257786215 528100647 279273178 420294763 198297968 650771120 528990955 404701414 983119941 278524905 690633939 476818442 294089890 644055741 96247538 623509367 16371590 685855834 382036587 352926308 856152839 229867977 924245712 825241855 781011862 510490835 827431179 570596653 191205579 690554329 991534043 38251685 781173151 690405947 788620352 428895855 35018742 769607725 742614720 885079705 601133556 6497050 966814617 676723491 994028138 266017743 292312038 212754699 251990699 835017253 998003315 756046720 611362235 287433695 506582413 588264349 726472880 351479301 849151762 728152729 628886232 241580927 459476770 789402906 700311747 206485580 405903531 698730653 427605561 272858540 81582441 784336644 681292289 616011816 821489531 711861099 411380124 780188250 721106165 96869553 968142404 290830254 680225187 992131046 800454481 146782212 350716524 35895728 844018495 333625839 737980455 998832397 304066972 942157941 406200585 600846792 861134733 685827417 122584017 292979921 852201791 814016014 769465874 911300757 97321834 63118359 848342297 801187578 426828970 103127895 317292376 616195908 851651976 9226511 596870514 511753336 223645841 139011732 357306923 476284513 824675385 12925588 895895202 948663477 759232346 78233343 270014054 868646438 273530528 703757831 230182779 76090510 803440135 720654661 692643569 217442855 978127606 697887627 987561723 243313298 339262171 888764021 618922689 793839071 266616117 471610728 365920748 952268865 453667135 478877566 288379355 686517526 279341966 214163484 290816201 98294840 887874098 659373897 999626232 72752825 777601189 783301595 664528372 291145587 654807869 573296147 461340406 256893615 563126518 602386173 507624243 633477708 121063411 292986998 809795489 934370954 321788325 344168177 646086460 50393325 280569280 80445794 997902873 292796776 476348918 748092730 323174523 720148979 38433401 15950036 233931154 30075770 707305058 652840054 365939108 402569364 386306143 456711713 29473127 880376501 303489322 657089212 80960592 198396924 66988156 941930450 776463877 357511214 912783941 17646862 37322646 816762488 933523258 175004426 161395449 123100213 610892661 318773269 179629671 838590664 873974790 417554037 54630386 263500121 400014650 253095363 258147900 644021671 91416969 959123407 674948895 615884195 104046752 556742470 856336642 555142199 632234416 490804566 981051646 666467811 981712509 406674102 757465859 904848690 829308354 896939947 694738633 943701976 30707418 495105835 815163505 814915147 102492464 693996689 158778946 459245168 452363906 535185047 456556254 188059046 677686249 536230516 514425627 186333444 821633598 266353217 536541200 221526472 164980354 54494406 435167832 551606801 945788417 605883428 677168446 152133091 77560337 416373201 206392454 245787466 265076712 877341791 312607893 340156216 77339643 895568138 440241595 799546340 922991880 766955585 672139674 236984000 237293256 843722029 626765415 6452677 642940539 156152960 831332597 996557983 731635984 275300125 453931722 962116489 407085944 129668755 926902501 258932175 253920151 439322065 804557130 489072691 598106139 218246312 266814634 514918840 662254737 946342449 558059474 696479652 115639772 923376184 577156812 378883184 836358231 696077365 259860143 831591067 814774470 201269771 785478875 903388398 130760012 682162057 36194990 906589895 92411220 273546201 355920156 905664576 333367073 651193842 13200849 668765638 500974827 470632311 746542932 513463456 97398302 742806052 230109738 118991765 718499542 199482293 877837971 847694713 186935733 565323306 15413324 491687137 831972121 880635392 140335225 943942228 79879765 927828289 709017132 323291971 978823521 958429067 279455102 372767889 608990658 360945285 622111521 65055385 5823476 728250722 688692809 989713230 148011875 398527368 657245892 171094244 53525574 841427773 800914625 459312851 351661421 495933855 998568973 660946286 970991426 601248174 915940010 85092972 589858923 157291931 262990319 291457420 603636080 472685128 654712653 722830867 802769830 349378509 890266096 466740880 307522459 880627325 629663514 913843640 300242594 220210613 865063298 69923862 459731224 687347556 38633647 657361931 391975875 920012657 425872865 947358470 69259164 748693424 216486532 942776226 825040417 471545321 170959114 40415666 89883839 671017587 454936035 425464087 439121873 313333076 291601296 50147843 943582444 211275404 61616626 501344435 574747520 713781014 22150744 154311041 144526709 670636326 769244172 215422391 552212552 884373108 672536584 513219326 463487298 822478466 24011394 770747369 981730833 581569514 776023891 482761214 22250926 61353236 508459491 526277974 599113987 962536257 179372431 803513590 490217439 288904052 818359778 399946912 230442525 85510602 247353872 521045140 341947613 908155879 531369314 68250608 560105431 584054322 329637220 332405630 58406025 794981737 777384841 507740314 225731524 115814841 450897113 853283710 142730672 162567639 420025312 712320638 101828663 256967568 744858958 24587653 675840770 88668824 647492320 937488323 360952940 246981150 17393199 340326320 625412077 591023547 506407162 938691654 81084911 273553015 202241826 454402272 672139685 679667390 269002396 142330867 914554148 680235605 307344964 420940164 996677319 786234831 253298362 9982339 103593821 168030909 310442720 111237109 129388178 84991521 182725226 518479156 964837324 881655419 508849385 92613557 778497533 973653906 974667153 174276830 440804937 499676042 681815370 315485468 844659755 288403325 541340947 378559865 506769730 915118180 736747512 422174695 759270819 693322187 321827032 422905615 482964942 503068025 683670181 901088794 909938043 832380397 143019511 254577324 635853549 158340784 60658754 413976332 390595445 943348148 366861425 810141266 6878863 507516384 766204505 305530038 371526760 284314326 526705553 283178115 582105415 297373561 424267797 796134719 560332776 738478133 771902708 787850440 751350345 430870214 661629712 529751531 699175084 28124711 395089629 279854858 607941814 303454684 95089516 478088654 480000118 391387230 224836991 215450227 830659840 344273103 97435011 762759686 445389672 482684004 433826342 886788407 469026414 618584701 688533672 899901009 439163348 355591666 742962170 453328339 469688875 920943345 682051990 106338220 273150207 882595103 453418980 452283251 583983774 89816869 821751244 719789604 998787400 36478004 523465198 14484356 428610144 981864873 893152515 158825767 320082587 691743283 952572620 653912410 910611670 567177777 376641187 651049033 777455634 855679215 288632989 997619668 689509722 479665491 340666472 998413238 509787129 731075656 565019744 955391203 654877374 286783938 453649180 99431274 979673622 962692649 199639246 491747257 707827389 292216401 642784018 767316639 166928871 999520637 683915222 958960684 337843816 143547060 941911058 491118050 181096687 673767248 783284186 930150611 764506419 766306608 7955979 920667503 572376821 932503982 220607134 277699677 153872927 138493099 717016466 157763765 647955027 496286601 19352373 19080364 539723702 595449790 35063407 31054776 902028211 968197217 142983347 913406695 213256405 933614936 185836820 590655256 210469269 189294346 477114519 472354908 722449691 613374475 365717587 837872241 478363971 204774690 342313323 566308032 8690517 173778942 495323644 356063185 936965061 865342907 91485950 651281102 799926282 571086849 526822801 813558033 599956166 976370827 26036616 361790362 533232994 243899541 491917874 571101826 616709756 19082800 777820150 480673939 729143433 671165441 469051458 570230469 820788324 429547926 726230236 384202865 965859457 297914349 746003759 12653532 895413419 714823659 983540995 567620311 165167725 387796389 660769135 896996994 734976498 174420426 719193616 829850085 731589419 697838863 601592770 875945224 883193155 283506703 582500513 116181749 346101810 714438256 443085846 900005104 74049419 498906991 620039431 345076405 95591445 792275335 292562946 728452707 634533588 545212921 92145474 363090644 682172519 267923665 212844955 805939521 988598262 392822795 391680723 747533465 876015107 639377076 9612741 247265824 470802469 450593636 31735028 433563917 176446140 879934802 165552200 328693053 104717082 502175978 579572154 582226823 279555162 258486960 522699277 531791546 783207895 535128387 317588815 590450697 616695194 562113397 24053745 985822496 978873603 737904471 868874626 728448448 77946600 744446189 455064531 229686892 691944266 996311053 876634617 341764282 342296675 137715979 603277225 163250667 52550288 179463140 625263648 79570663 129852606 248034819 225054874 305647656 101601058 987075192 695707215 507695726 68031844 158938624 895930550 273898563 910294162 495209425 704948463 431463437 202727295 720825449 404291238 975159247 936679334 873416994 838104283 382575322 450862790 735077566 94691929 595472298 106135014 141997770 93348533 909866578 150497214 76414255 402818957 655095603 14094817 883472118 569433949 947517447 86031919 715104196 303163084 229042023 21254704 943360572 775612535 86440257 602383540 81680039 964936620 409497354 20037423 667893560 93604626 755930127 242210007 114238711 751348953 883273382 953880548 715253069 409767479 210503609 392920459 101522948 15727173 133311908 540885201 271176416 449874840 798958736 675571493 109124321 1995760 878029404 525087760 322729504 117933745 168909027 934418602 403936221 408105718 279241306 187507733 700644463 552955046 716017447 205439507 710484217 724327644 540594779 548769613 350445379 661808240 294515890 411418704 826423196 38868017 262558575 458718229 399628008 497308091 92163905 446008858 774988596 344241959 751114076 415598515 61383478 593138572 290559346 419952531 142039189 431200011 46341466 120055085 440489536 832453960 510408714 372019482 683425110 352262637 161910059 868038853 825219293 205360443 590578645 977603454 494585999 972090934 342987393 69809279 849467138 651849191 266445224 437318246 551633226 997389185 454607420 211188645 127367756 160265476 801021508 2121597 815984622 754940535 525389643 730630049 371357078 674519323 690867762 250622490 273287388 542616871 168340732 471937158 371719903 12589766 865482193 472447774 442289727 462106303 961983768 158163465 434128582 967145711 823278319 515496748 835510575 209291298 250345014 419661944 214720108 614624994 756409989 741278944 906976495 103351731 679467900 873954313 148933287 523573173 984894077 163506573 692487410 743748314 290584066 442130877 472797518 371797076 102022851 476266997 681140957 908759858 182570499 372663952 721992462 125967057 115579547 299690623 529416872 133257221 824997889 54973151 516178842 594002293 238307041 35371564 248651530 512893682 754115785 606500847 63148793 470370124 213860316 757354774 765768335 315116556 912381028 828897080 375822407 314882578 742578442 5575196 791109370 405198539 82419054 399000120 334288787 100814777 127528149 932430368 968504831 132476416 966046243 861364935 363137640 527353483 901779440 284345279 323532165 690220520 362728020 606502988 303239809 400908127 806174676 751251598 79542518 777437424 157424258 404831778 161941421 1471435 445628865 910084432 49081231 250151108 865186067 252105129 58010407 238558998 821786018 862232797 471695947 486733836 933725223 912816036 482444434 897059667 813943250 605351024 990611598 709498199 409883144 901392957 596391107 631960428 759703335 527319672 883034955 608590131 748998488 596043682 73062444 394193420 388722369 283156483 664777112 256223911 960023047 926082522 178314714 264219758 406978110 914812468 863646177 334350809 125002906 291362547 616788837 90337455 183874674 1041153 958433625 909294121 982821264 674782565 818541597 407755458 660822391 834421595 796965514 749943317 938356580 754382856 48756197 658109668 391962064 485028165 15525844 927139756 335102446 878102247 986393097 374141199 953675954 858664747 584951146 871185984 454089129 616152962 336353880 430160360 337415395 813583374 615804516 257093897 161467955 160603422 117896139 296361323 177509994 655930912 443862333 310965315 482058590 827525441 389857508 719056780 416366322 590433193 245888945 165553393 232120850 736211623 591168654 432387736 430214683 119111836 542650495 884212838 373730248 707293095 353045058 14564161 951842718 641550 950582281 863163124 612287715 346968591 417288607 533425163 207725076 881094702 306204060 371347365 746802418 82884618 795931788 96328813 323524330 95976749 466355857 815811289 398456294 259992592 633550419 659361402 880690873 73650719 212794025 287408096 62614324 204160014 506118808 623115757 542297313 300822735 90880976 524043722 440136666 121699261 636746886 368412569 975683160 149927711 721919078 473667383 590588721 97003336 520195289 368072109 522226820 804684671 575321079 694122253 887174032 638974064 990339110 111546251 798638524 383629270 443418933 229583990 673779847 884170337 357549070 929348269 536630248 537871818 880356892 230896408 388157689 734639649 568067172 208345144 290926839 951026738 80044038 125284653 365302981 659579502 605895832 79581545 825983559 592170003 17071035 22847602 104199643 551034553 359621460 778405564 287920765 483208291 544766753 153526605 860154292 428786904 927072929 568137820 744454981 20532463 299471902 945381818 599331842 704136609 54263235 397114303 939989294 938460914 348174894 223825756 307080833 369353574 273939251 381366503 286402115 875377459 603887375 402766123 925206488 734751229 701925420 415295600 955079057 97890408 91880274 536835270 924237564 456652855 673358768 989401245 413215757 327702004 720253083 629668501 464905188 563029261 373012220 604018129 375430613 822765653 882229817 232182790 522690900 628659935 495352267 25183935 83559125 54232903 995126465 919441867 622529501 423675720 192580680 867196923 256223242 166140544 106025345 519783127 557259442 301952763 117547166 616663231 473057464 405303611 382388863 997838508 308574247 926240922 712776985 793689420 451471828 411408207 996025197 809048797 912565374 712696569 511947984 645552359 35736839 96574485 405528786 508519259 767100438 651487779 543184546 274810309 360891737 197087368 135050264 646517329 340541665 448516545 153453133 21147436 29835758 203080887 619688877 184643420 986326469 592480144 448989656 717185898 389528301 197343906 716324682 197047857 473360557 725732656 756753582 140205675 677611931 19192459 980457684 286724120 770342556 911338173 327350117 522008148 132769516 414909102 434716347 866710138 12054101 632655784 849051437 476033641 902612409 683497519 595155853 162474785 253857987 304802746 910823384 340127783 389990582 998214979 495160673 478567328 628946618 171839687 441329235 944862380 853820757 16915574 76725542 292084992 869312373 722286412 234964709 842314668 880058767 516100988 983885470 308865457 261553773 797590769 674216097 393607567 309611358 696937430 495405531 333661743 704775102 433924115 340812440 685238424 663562353 36782225 127336771 455620759 666203659 302196014 204975018 812303133 112309015 844692115 145511091 182192205 382154537 425066433 216713537 292293918 918897070 834399531 996099777 387460111 236258950 143922376 603234725 970819542 564617381 124430830 524349999 543168337 113688804 672065223 953813177 109988258 792833015 197046878 933278197 701637133 299000699 912640697 850691649 386236188 289737439 195302517 404983363 570550044 211344875 199885234 403741371 413210544 793155148 241495577 159227279 349730238 422769208 828971883 91222893 907296060 32711549 826109875 519860978 639370760 564294171 63416877 365392780 10215477 584963779 246218557 621130687 778584001 558907589 429485636 855011097 898550328 560951611 162916209 24511795 98548563 781366195 803122876 147677671 608322085 830539115 332209181 33560101 449442799 641389992 107733929 121729483 535771319 120946065 759874616 912953356 159324084 56861661 10433050 602908798 54960080 656284508 227894343 203266733 11446807 78132449 195182898 307363135 511703423 776624849 161418486 364688746 723792546 422633512 554692673 317938706 182365244 838734530 982454157 810737629 185049041 995409264 517018977 837117182 79338277 268982393 397057506 329646664 35727010 109360479 110821207 911929350 232853718 368738859 268505056 310509103 816569585 576642641 411059086 306616997 766643484 267306396 850247548 59893714 796628928 73844888 900509524 653041246 496240074 867538945 814892241 852257349 665767573 10233741 428695433 848554689 605839666 983216320 264502563 449516322 265838274 975366590 958889412 768984880 957735265 634154213 978776408 831323056 697426992 456681723 848176148 738511260 98932255 82410467 831721818 210847321 722031844 442656232 725577606 72998798 260108906 721878113 319922229 867170465 973398609 854405347 534350486 51581533 250723901 767165201 813971799 80543415 560189815 510298876 181508460 533885632 468907894 775325645 316050095 6477489 143028300 948712736 267519853 363753848 300113517 86463882 926721059 38862844 382332430 450381402 263550131 205696750 359238724 613035908 34510121 288355045 952608741 576151072 117274533 713139833 244517210 268880810 245432779 481126941 751017605 971419387 981030630 42786237 262063172 988794975 484102083 684534184 910037605 639780234 677645634 138349210 497187462 173931998 504547217 389922177 511961212 189407676 84527280 793675757 401980289 127547006 579005557 894011593 661341469 111982125 66725308 481378910 172201898 769089020 212000276 849562601 665779646 155811932 432018868 548739409 559931175 276165199 745672537 77912509 518946768 176130251 348980638 575540117 218683052 377103028 117413273 762602699 927844921 178173195 564418646 561945816 640969407 985046411 957034497 865990754 114902178 368740589 464525647 954371575 287301841 671499423 333199769 888034299 735311155 494411447 792193927 755121195 366960144 220133205 22094087 216742044 645399526 704583904 474262662 769560827 147070638 474371313 717239267 325430534 20939161 52488739 583785074 126840869 819500286 633593292 655313396 71927252 300056416 760098200 810317600 112466849 578923223 885612578 125102513 55298625 371499289 632448168 828993059 907551966 959355213 796970927 321907269 235014366 830396527 690634528 688661465 946066982 435618023 149531900 602462549 642838574 556351420 817547845 640127526 777082104 121761864 319111949 317538 150538045 967528684 224396816 542985754 153264886 561080509 428875646 176038459 77147342 696109963 19949367 314671279 595615416 716931367 413750623 250415960 826189621 24339325 836731543 201747799 63240349 513364990 228450282 344559431 517516142 644570977 387002040 525707268 353839458 204780677 704385537 60806840 809469594 733915801 449887734 750180970 806434478 751539261 336835263 66699599 685149771 615562990 114601011 827887283 743819594 362235074 166286314 362212514 585515676 809961154 325906595 476543460 511324493 732795400 399023216 756210494 742051496 228899001 51846458 653852197 764849538 820136988 952981435 163072940 453184155 733945751 279273068 928457261 578712141 937750922 633655774 812352873 149985409 487869988 972912636 520077676 768761023 246691308 834781055 772615507 650610815 772406706 627653090 902193691 355358218 814160553 564366666 48128219 62515717 909789256 714516619 938765915 66852697 677153810 529491998 600572604 546446767 626707556 45181446 821622896 689727972 105158490 827230 905665348 49801372 790965315 168133390 625157707 285112646 258948148 604838859 961176187 633690662 809365570 896075000 224877298 788839767 521525870 348056590 440773385 505505845 614857899 462597046 929569389 997282047 364137039 824365287 637117761 294435795 62251096 770722483 85840816 640973857 930633938 304004924 847586896 681103454 981875711 714530335 252064674 446192595 738349966 314265105 968802134 946043556 673228017 709885418 652656093 631556470 3364804 29321248 894189283 795098604 557913546 609424269 895074195 309565238 379152850 660010499 776423261 775380505 35641689 366997337 365416069 328866218 942400758 893602455 316603427 891613644 263116458 206977909 808320876 656775408 427117958 251200021 697105276 759650200 778772759 884874968 799680051 668588738 942611438 748198943 190672115 917893854 412619141 324452332 555407643 373459259 669587731 534258389 783925631 602988139 276838302 710337224 243759370 395000575 133716226 135079176 60402516 44204301 275737873 393467218 843799020 226963399 61509631 696174903 188670291 407040767 693415844 918601034 279417435 832431354 25416180 129533812 137286608 423908741 269621862 891592703 295615122 80003997 225293562 953818250 500052820 261890258 893301327 986897719 708618457 812336782 446423735 69418275 287870468 79092704 447396837 230060147 440535173 427509900 648849595 118311628 724108552 501109002 334483410 374904408 608273876 915163080 755724700 556543590 501016024 924526797 828641136 394194973 77773619 101819098 1228540 518298251 126242276 170994353 233984735 326496365 513951671 65361149 310160658 49304595 69080940 742987023 733448126 901851174 187204645 14855138 246316469 797225333 21724340 139451565 507189034 886324361 319164573 36650312 504860500 706182131 689290063 103975583 189770194 74869010 542534213 240735732 121450897 920825642 204915692 791661596 270329632 512778855 341478227 873905794 228103743 489323970 910394430 880193174 941032163 428054166 566143660 293179188 597299093 396215898 54402983 813580384 289546118 495536478 537685873 130890929 5703065 839570591 829822326 816075829 968581480 251451848 42914064 326470801 543381981 388536693 861223541 55719753 481481663 990378425 97030313 260993408 724115978 321401072 532477558 626465484 44112802 384521005 592946518 998727495 56372248 616317487 24605587 443376487 9331623 8787284 369033663 896595518 289521788 535491847 337413108 730591391 415352113 63208337 168225789 992348668 781937196 772394473 592850990 48315422 949344306 337348521 838888226 982920617 525404629 638765588 686290767 861571332 191101132 476745358 43894363 109529064 243776022 86765806 50327878 206726446 679579681 620865440 559752557 112408223 517171352 760114836 550792354 457120562 608124291 208997740 155409637 787562731 949888000 236330046 848803876 891230010 478026625 793835247 289566124 261164937 823177083 769389383 794850636 635218439 703281136 104772616 220446927 383786435 764748136 327796376 447880590 439225079 599798200 266602353 933743271 73477617 271746186 388262523 926536921 351259412 467182505 442529812 533838501 618456376 719584653 334130817 102321209 500218550 522604333 859246276 786813661 529576125 801674538 630572008 771219264 400383434 512516977 284381559 618462962 390252224 279485128 703062125 723569868 324614769 882848023 201175443 454574513 869175076 676447005 948454551 525485940 597352472 152308809 155510852 158105484 9982261 594166401 965168347 459555256 913897594 475466315 644872752 884641790 283214977 459130379 755148171 211068566 289775222 786343616 188225955 651239108 203747184 112379750 318951902 838585674 753378422 399171202 115339368 628460734 790640092 842507080 849201104 339070021 831731904 969637913 956640764 229013060 854319779 114124292 218256848 656972696 607482210 581369670 195863923 339931326 445518502 74741691 530232458 641573408 898518314 42263978 821931509 110967093 324866801 443167550 779635198 180502948 886709726 562874365 698440863 794307912 655673231 310832930 963483660 537789636 646589386 763138780 330264970 897984186 752238726 366195777 116787914 915162053 933546036 659527708 969075572 839707102 449335949 297326672 362573782 577716853 205327243 406226868 498912952 545301344 924423397 431887744 656691128 73116564 24693442 830465213 559160529 749566312 64494720 687801057 951177493 930832602 230443424 201948448 727025257 829915960 410240251 856836304 3742964 535072966 222818138 883871990 447445021 109435873 578292836 518733950 59428011 669000558 212850259 270106436 116930719 773538393 955992738 742853617 452437527 302557309 371029604 592930949 48186191 741328182 191776784 685936979 752684807 520660082 830355925 269468855 845747840 395517594 45150897 880613749 46841994 827465474 446740414 830627280 472353429 823912402 923431500 826525473 869577547 796815749 52741944 358345386 493683778 26208686 794492618 41292577 204232701 138467332 901625776 548201798 997255109 678206369 635938982 737644271 166503107 539114165 422854393 553976293 624132424 125811312 144822038 778470605 59664536 209015664 654990787 944512736 595597320 118531836 292918647 87595661 704858190 188170219 727674021 540420664 235389895 787878696 965102743 318744193 220716473 891406707 621852634 825056832 797174218 949533761 321175894 45939177 110266772 179670956 310112334 701585415 826988964 816773165 733651942 342512695 930009509 145660971 534627339 270557536 137277353 812898314 540986533 238910497 356449653 853640053 688819984 828587733 101474950 795053899 877013683 403581433 442931696 176871586 30472982 304804926 731734615 413448341 836854144 278951309 785648045 983755847 618541434 594104111 702738156 32871687 966758712 252183755 287009957 200305969 504691570 765239292 919125096 999551116 253523677 579251081 852989018 868161877 280399365 449451795 379361050 403450050 735951960 649713908 550207523 474721377 133663934 915501558 109137199 184098792 949499537 734711528 755919997 678836077 862310668 645872163 931050700 516074820 759801633 446183545 997366220 918012447 6611460 584795561 948733779 669205646 899616651 902826482 623424183 468318718 277410138 749921750 46042314 36457046 759491502 235544029 921632148 883818785 871680670 976033844 793740682 908735857 279410104 184375570 552396361 618876064 183951312 341682240 742246627 168680046 902367962 885493083 727049894 589916287 89035832 843395160 647534848 152468915 742706456 982933208 692310492 675655809 378127589 507213559 955228163 275971440 392647667 697967488 549544925 912319249 296746811 951357570 935605865 956121221 47120263 193591658 356845807 968844629 395468876 141156817 300797323 816467400 908814772 5478925 75244517 46901915 9473359 109427109 207104801 712688461 291410397 163918425 733333089 254139044 292336888 193379042 617743577 981900231 657931828 643079622 175962239 835629859 415351574 414670429 863690830 864888679 817180353 864207647 491701268 522453395 960359481 958927512 699004524 306612351 196895210 512112029 333976150 319479226 310342213 100902284 341098902 455022639 72293416 604067786 129751572 270371989 267887184 878252271 20122224 953284127 205473898 369146483 218012830 929573952 633048772 689709153 924853190 680150361 975695263 42076266 492740629 437256771 270020128 153513613 163129005 954172465 1942923 465386544 638448524 375049278 719519222 545164758 894433206 805983182 384688707 124307183 244948947 366307481 771899375 903164531 240197261 515323145 648554162 419623342 151062420 180285555 492319178 241639103 418559345 27630053 181810228 920734505 860152843 49331761 199284552 412387844 919384034 832776300 361502685 269324675 134029775 824212607 686907941 902017412 72313087 574960961 338137174 498090693 714867121 2916420 516692462 741336012 892771639 649947351 183827724 286267908 813638239 691440760 879137577 64702150 573066716 968552908 994802175 840404205 234999402 313051603 739723681 405788567 825431671 563777963 576963229 678576576 167911650 855539565 602939498 826721731 869141938 764549967 548529804 121760045 359510580 456590282 568591406 978428369 648368086 43536460 845995080 138713734 724923639 405976357 82794810 97355595 526152002 348868411 214437420 200688209 380425915 882898840 770557185 358908231 383978262 137214856 40022313 810004817 762198166 401331768 939814910 183388633 726471235 297451246 415077443 564334669 730130344 799353258 544196627 844959837 991266628 570388597 710727908 999341666 756809319 381340171 685543434 988582778 789955060 2162694 482536671 835713878 960942666 350819941 223759769 850179794 650417688 745610780 486139735 927532022 926939220 536310440 716696941 532698636 156898621 511608142 336807190 807372876 458024398 238976538 449433959 850800987 765263121 136464868 538334651 890081072 968664668 240740426 400424024 505740886 409854570 972248887 942959739 106203461 690821495 615761312 386142433 176459407 292086979 673061999 20608917 440815780 267624201 227837656 646447593 8569884 479720584 37989706 644519090 535134238 572279288 975306302 849386992 325524299 23057872 113276314 37180888 668869876 700335180 968011409 502785387 635100026 199673304 179845888 844767333 191186285 558092983 201532380 826442656 311688669 549524527 485086471 249004985 353603813 643868633 396697360 606314441 664326701 91642019 139883120 837088691 109833114 396849990 440984328 803303461 312389084 268210475 423317255 615053040 863039633 975679729 507446718 39092586 335652475 785366563 399112940 925276110 218883293 441853925 221499554 536736151 618797948 610847622 25292771 594499484 803426096 982466188 913811362 532761646 185346476 920411929 527073443 263674588 661890480 370756991 117500453 99645368 851589422 882503768 440856682 294883890 891476379 542014265 381688639 293820493 127442244 768615467 78579668 622113778 730091136 49362261 969118561 393987569 310432708 898078 944786967 872261548 982732160 885246476 675215583 329509521 462656318 649147465 77714929 89597174 935343191 816471790 897614646 83647625 978924826 750074588 179141778 183252514 831895790 55885508 612570614 149275631 243892736 219060955 189881221 991028258 743644157 557995812 612135790 780227235 935320191 616023350 897987278 828962022 810349055 953340161 873088562 717289934 638645198 771167268 460311490 115198902 362314684 647098357 655925856 240967709 294808788 786995875 254074986 547940149 745637410 131647872 487858315 137297665 637190970 298745232 804535915 882713435 993205083 810924669 690969737 714180755 254751771 936583861 228557108 829004198 7277721 636387950 141269170 598003245 618397178 102258510 206166468 181447842 512804915 635150978 757061726 117284676 678274915 154357236 846325033 256010290 923920221 600504623 105862003 297330643 740573711 235189047 166820458 517439575 665378861 703530822 204036593 678790309 704373611 425744502 878278782 24531618 54603808 175118616 142451698 765975340 241479469 709406038 131063716 302406552 813230820 238454792 454502576 851256717 211452225 726314540 619786764 753107909 675115688 248702501 733178709 924323128 232530050 439578648 151683858 767691920 250622877 123456169 880071908 176785913 982886511 35246779 850553911 232550835 102812865 742746761 35912751 319303523 686946548 478733249 567958470 861537926 199939131 316895932 738416820 155240307 262035672 830436152 204429680 71969399 511788866 201536623 459074814 476532934 977670590 128999641 521799811 840503694 821509270 599263202 618758134 27875288 479791674 917186911 153457192 395957552 9617432 290352688 34527862 420724852 831570440 382787795 44667985 991037692 197052212 846989379 169108742 321206384 79377367 103970141 791299708 817004372 730673926 306705973 627279621 406725055 944272734 191804514 244805482 950633003 618972909 838483586 845641292 970037398 63172854 392984171 76679113 596090864 33547922 343300680 61578684 316954110 45302383 332005526 32111122 770430939 147490737 916714832 557241074 4164466 289887650 195035457 185513413 330339161 733619988 478566574 265481175 821937940 356192522 140218597 303573511 439334990 394522582 750042882 414555105 560065333 910489270 214264208 194358600 576015480 408684937 210211186 365955490 996552672 791309584 619651885 735665214 259038078 247089005 919996691 915165690 540132433 710759683 720400838 274430595 355818125 86825280 249147319 439781528 155112613 508680925 484935449 41213811 433997158 192575950 360341863 809403346 716403486 133530017 31173391 291231792 101265028 131929484 169835103 217689491 599401676 897411265 24471083 515164395 147969143 253433144 193095348 458729584 837629896 677091265 130173670 996697729 487340262 702027990 717591099 453271214 367047432 917883867 124962854 77691073 109271518 917034305 628800943 146241493 712026370 424609859 576580822 293278230 304659781 642085775 522185104 409298531 532159515 227865433 283302786 137509270 854711539 937150799 231234725 494316155 413790094 359921098 583580653 840394934 672109680 379575410 646343833 271553990 627185153 267560866 547732763 809974402 832820531 535580234 647513223 764721944 315957813 196068476 434778967 396090793 85257937 544998689 484119621 800931135 821031957 472810152 179143800 952074743 945963845 554229964 686379627 286483125 690975771 282424656 545674311 626118202 797830047 292726249 943869466 986045296 404643887 81222451 735495368 602332525 318518471 785620568 272895656 44351331 350641448 643978673 108238123 465105343 540664289 219260546 761975960 71587375 799624739 795731573 26207825 209141243 471701119 996438641 602163877 166138333 367473532 372534148 775096188 772178877 571094675 951737717 654278592 210661200 433327819 653547904 402685993 105267566 425495151 734456254 301032659 531365395 460968166 574167060 848731070 784104362 811678535 921910086 482625880 27451639 210976892 981289296 711127183 612728674 590699254 252984704 114560395 682207658 247365164 934649352 561629046 656260276 355153312 175412097 553782995 944411480 254129092 853375917 45164542 204671616 735905456 99953968 595527380 811975203 801035492 831754338 116480825 324203909 90097277 650666710 30489017 746479833 175352935 527311713 478761651 124680733 508757560 257799757 380469846 571636083 403904636 190262655 392658711 110094281 451420606 968472416 623836461 904628912 861939423 187043790 543214619 585849004 688674355 614253284 497975147 326602694 767125960 170526983 687499483 102144917 369420609 133748998 465309246 478387150 638018324 336890264 98177440 286634631 903412216 271898864 44897788 936344726 374627723 997408009 707237955 883462897 674004222 279391753 492977458 330112882 191192869 170258009 850072313 327950295 56210233 188633441 563958124 524514424 102960892 825027143 179008880 772216056 560101119 121040700 267397962 551817094 293019388 645073504 993851724 744281255 431129156 224702539 373567734 956938363 62098198 48402924 197255096 766522681 970982133 463609195 130665803 212111084 283959910 853950911 851425529 747102221 559123802 381128694 473178328 683380944 182030157 759066119 193398922 389973579 479352836 625007109 558811367 443599530 722299798 991939907 175125691 914672280 909748983 78565317 856351781 735158489 492556680 637325888 65934134 816181140 920483905 201738360 517279954 911866548 853847586 990904845 419740311 752399707 191488341 400087880 556370897 168251679 253837477 26726723 333330458 816230187 503094258 72264941 541493058 978308704 914430406 85927475 634402787 817132637 733266337 901295811 706722565 383218650 175930264 494772346 427630171 196933693 818336318 747862814 958655761 524582168 773233771 507559025 659094768 980254671 509304889 484891075 281373508 811480718 666583342 759202312 420345806 821571685 198878941 284930838 518516258 566515895 778768638 248797667 729127745 529964073 660640119 60972298 396023097 605934141 737533128 899999443 260264358 416487433 582366966 890156092 782311786 935847107 844659900 455745660 563623919 315339030 846456919 789032400 679533173 10774247 588670672 538334594 760468613 215867509 96460579 766661335 701495848 866905874 976856453 948981154 242852725 910915619 659444842 265918697 938527262 429513310 628058310 336657701 404277785 509713833 126973873 439827020 671416034 528937105 610154312 745273261 517772457 649331786 932284719 240788710 72784353 142107860 798182723 251029127 358051157 77162648 322548067 368756730 199939871 112105167 919782763 396084195 903615861 817916664 780439534 303605442 91216910 576368470 748202302 107405086 98797005 829843367 915546639 448924733 113215505 456740749 722364739 745942390 934881852 511024075 560841282 909749003 211770453 86229498 107240345 804924893 622624997 343569970 123448711 627657806 781559746 853129419 681047450 38435634 799594217 271064504 953424672 88792735 746727146 702633484 629885949 453804140 324376104 573303315 743085386 495293441 32752498 388068497 169972213 504689411 975527694 141701192 996089323 598501663 959606307 340827085 270075871 708939161 44107180 342026707 687300786 418370117 712254723 182625467 308388072 762552454 897389091 875502490 793415122 875655926 204358180 710446935 307933021 282974502 594749870 126450709 294133562 785497917 944570234 877133663 947140564 885974816 250238404 681631770 771334421 437566806 612551663 436981032 702640558 236549328 504093688 868461217 494229734 767549483 613906381 150582577 981839051 251620441 716205841 945158451 195379821 181272401 365539409 232293955 48592718 85773451 654225483 323646070 995693101 377138274 637415390 923916529 645496418 611514116 529381674 185730330 211513976 655783081 339746456 942722010 933398563 765024533 99473798 303102117 378114417 633202080 534307761 648595659 291632378 311301633 165108088 391568498 633473309 417244778 547367891 386140308 5687272 780192428 207907565 935067258 848650124 939271351 379436681 792120810 374306380 42569940 590021290 239562456 165283801 698959971 823179264 150844490 905545617 941981794 799403928 164511121 359233618 905147201 875965763 464720173 588648028 836407744 286229339 580723118 638429184 757750019 765024089 470985230 819152634 28537259 740160352 985471426 302702550 309341466 862690718 622538258 109533378 707888153 180895995 552224625 780740482 265498644 733036113 293381458 463479057 482766144 231758438 51322820 310976883 376657959 518248789 442822483 537423456 309247679 513924022 266376924 988826389 63695936 290920573 52911774 527137914 672590327 303999034 276327350 807108205 818449412 397410720 236138402 619364638 185792020 373803344 678966505 962806892 864268351 484151493 914706233 186430918 919359389 457023385 678229728 971332051 649313852 97049768 654508355 73535543 974570444 801532426 223092491 606345849 421998815 601227786 690498385 791782210 453594728 521960201 447309228 438761568 837108927 356210381 740645174 478327466 605391974 88192698 460310767 980767249 683733305 255602950 641039054 187074637 1518041 503190261 354102532 644529095 575163874 317445902 112385489 753183211 797243058 625750517 850414993 454185553 642926614 299307251 588141194 146234463 929851896 636660192 165470682 102974733 631698433 102168219 69721920 707958043 586269468 566211888 181697554 230450146 341701968 782226059 110979740 759496125 897761846 405964731 465360515 198091814 470100852 846095556 370125655 139089843 56246039 637091640 468527159 734621536 770815182 793046116 495212171 694161856 214026812 912271303 236762915 693045613 917045633 135799099 999007213 230612566 289690901 59033170 900555720 321485172 206176926 646247769 622091110 437870765 115434887 475486301 381116120 689758782 130424336 852958730 742801764 206193347 458633527 695503264 366460568 501010936 650063263 18491220 357775763 521008257 378427003 79629888 815375848 844728713 317376070 528695599 151670402 381794128 140240277 947811154 402839738 124130410 641439003 61019 728817310 476711144 922308580 695527020 503805451 532063888 606574513 469186830 522259222 225362430 139151629 321744871 362313235 443269661 10354156 585468429 363570613 801972425 649464375 555842994 535931539 848812360 89521160 816639181 921785009 224334732 662573854 221013027 473676072 631416937 26564818 280801370 937029239 577133676 315180379 222486720 101116633 184051323 68580096 939597321 650939860 927997266 797515563 702655825 245709264 243986782 343411886 242411797 234522544 743907591 750767387 707407702 718298968 157637036 744242564 420826351 701801919 466058577 506105085 59497639 288514802 265832520 994612209 257735068 109410379 582194814 258749622 129431760 152709329 180740738 176139161 798885528 39808978 140246838 809537078 165006752 383837411 842095411 834675445 276934639 688025748 428028238 289384978 950790281 107838306 491880386 980159687 826895884 941487529 499149744 79917843 244683751 451713980 76822645 944728966 290385007 560745174 723277536 489234988 250456402 127374240 491682602 495641226 83762264 442842364 762711535 24056095 368433622 512480758 100131502 310522978 578188287 261887164 605429773 393626932 346912814 592061488 894906826 464785710 211619335 184681891 448238666 422485609 251687474 678189739 329076999 903385237 653029428 264758185 118872428 99578979 316861894 425168335 529007044 89822182 414287864 593646456 243524547 419472278 711082974 868106879 798417370 470497005 325651049 977819289 498444644 540749200 876754590 149139878 270640592 634934020 188457637 141289073 8629193 464842806 184594833 922049879 249866540 611486552 575736897 279922445 245983899 307783528 298338309 404076910 930466946 952993793 64800686 722376650 826244567 611126340 83400921 290507636 309774300 188124724 95074340 70231513 895783328 33088494 666015410 121818833 545386352 905359911 859672403 169932840 793456588 135354225 7663408 821618999 361616733 649748711 728522352 267177422 809938218 834789434 833049992 799803734 272781061 468553291 266666018 930595484 749365559 464352654 905738393 924359730 800251795 570658280 585450325 813705408 321132453 959701771 951321992 802432413 384109003 786121187 146571167 531941532 516962431 195387637 920792886 746629953 318203942 214416490 117826451 49544436 462471897 177782278 715468533 396546643 171199326 41846440 917750175 326750677 136559984 119468836 43907238 684054024 954460760 556498838 358111263 359731011 981229222 419302786 920755570 211222227 771470815 881430004 56287578 879942753 272943163 322144997 540127290 740135781 702319012 139664298 3838844 284742769 59055328 103180894 473936666 434164398 540025056 456597204 115818063 115907846 115554542 870976170 227898183 427527455 571155800 685951466 607452592 825289299 721295886 809731645 687377851 68814677 539123086 76720782 166804935 275199964 365369638 849552481 977567538 227639393 197358886 454684254 228707846 332039683 162727556 84345044 638019078 301276848 186854779 192400659 196590764 181760304 204724519 127491044 960672708 339939480 232998675 164340034 810589517 609611535 325451248 724249127 787235323 970876448 284884328 392581690 107846785 712643627 606828880 697522029 230632371 583413839 701960325 244381833 466368786 951758636 837861466 87249585 16438924 795479854 989268379 773489921 154835877 197361042 747763279 277428932 736792579 562899946 373238660 130376332 574569835 501360483 438769075 576198612 911614379 235257360 893828843 436913543 15681502 550612517 336515143 369303067 725187414 786702608 362936912 333952754 632661510 226312721 902024223 671854777 627019897 187078852 596418429 292308198 892940850 379840947 255963178 740697608 856120653 612015748 413108277 276493639 24799639 62165724 251628782 407091847 700225896 485674433 13127472 170710225 714689744 564638115 572008966 597290780 250576333 477599500 417167720 769629035 24565171 362601574 816696121 804358982 957823362 132254269 259158397 709753407 694407327 566587146 581789334 696034063 74010448 875792935 475541913 818447558 207177000 194760996 389599304 402863829 592946061 601112605 238210015 719527882 284541524 807146831 446295295 556627960 736247117 3211618 663017731 69843102 441835167 398137866 847381940 166248588 751239615 706751219 986401428 156114516 764855835 634051870 264094431 847221252 699851694 158362079 168417088 225972031 573247841 517271764 402042787 879932514 650398498 977567593 250965519 722192346 601159919 972673386 114846669 886456107 384501421 126239960 831035336 27625830 985685769 204698378 405605911 976901202 744302916 532896803 99853877 354458655 112305521 779438824 200793485 439347943 123390432 662094719 487004656 531251408 83705869 12029724 421363670 902420323 657434862 102758950 232032527 374901724 787277049 167438304 546847340 576868397 563573346 908317306 354966189 83930080 392926099 308702841 130695755 174740213 713476921 957824376 17426617 30189827 100935901 4424734 748827630 846455003 499324144 157754933 178873322 850618721 560980561 846003297 940693623 207016013 171818293 467971973 565622257 729475830 620310000 722185809 260387328 283564218 283811949 558377430 859369513 823945780 418515923 150093042 916933971 555160475 624902029 257176638 412917220 970606046 410405132 731386280 423199908 151200468 583995221 883856978 346054646 998723644 794791719 41153410 82877029 381272831 320487406 657742431 178950907 26316978 105792621 354143790 539865410 8436927 708273008 49304743 959338618 570717601 971106529 722539833 365283597 832057334 884518872 296338083 246929514 896123031 11545221 823650255 468053384 244513987 752996287 958537858 860833537 480726383 225196457 54571616 359162809 121679246 928540703 581961150 38618984 981858967 192730981 479282994 753744508 851159599 65316563 172493645 400805508 558300266 579552295 584084772 297369882 756702778 966279497 61385884 509666404 596183766 989330738 406137383 683031300 198610211 756334322 755637359 291385245 813736534 779724254 692787519 326178635 877224105 282410109 821785003 151368029 688722593 496264927 879756588 877502125 508353947 917854829 192946281 367803168 88870762 406756162 959036888 75993689 235187596 944875564 335647747 713600299 615492511 347492391 487864389 826377627 781653922 794041974 135802909 54818349 235317330 850471273 351843189 625447734 72980235 663321004 646947624 723763380 994478498 66083720 768389037 689321810 173354336 490941637 46941273 147660750 353612334 57836042 70834913 732067386 90288445 434900322 254410409 834090711 259398421 985082837 44830723 517042157 871354820 426363707 121673346 73930185 655713923 441314926 723464940 465652040 214359395 303042568 801083943 860735576 935597665 104008503 541300366 36938756 754930578 721654594 616207844 345186410 656126279 773304484 618414374 814020432 963327599 55686557 423503703 92041736 911480920 620351488 617862625 921572055 265808924 132550343 994874305 89238287 368089499 392808194 388024556 593557867 999457934 95164316 565850746 408799273 827961554 680606867 267436629 167860027 86802662 691557779 246421360 60505476 324227091 688253687 685028162 99869699 773530928 127187141 613779649 540818365 696933226 566724391 848188488 999868101 295906418 994835208 643102742 868331692 934869086 395634269 686146831 921498652 569229086 907213756 560884038 233746005 945998433 436941925 311019056 969592921 415678757 223356707 194655847 245416174 624218115 719251104 19166463 612078673 110534435 105945111 349064176 606486196 343382327 815276775 213131802 366958726 478872816 64364739 252715874 980040867 828716672 930107870 370492291 166112448 47186871 749990960 887498386 281986208 16323422 180724741 839348179 876316325 673714604 557287295 4795287 707938677 240324921 516041909 373599914 637224210 826196666 101497527 235157780 275019691 143917084 659010602 829245104 154446815 824225429 664935828 57474400 10371884 99651548 847548252 425959321 294342131 795625853 398966526 459808942 926008154 833052952 774218473 579497002 304354108 483871797 530450970 670523567 728982686 809704691 389272368 666739778 350324296 615835103 770323862 68165591 498767563 370021606 302950083 969187984 18883469 525850634 436845075 760724687 355386712 469099574 311209097 762134660 362716768 234138242 616261727 968682582 541831382 228150596 698844742 266188264 872166351 624750973 801487877 207420607 755763319 222445446 703093794 992317527 790684111 247070691 313621024 213540132 809049103 995377234 539064708 532184488 395024591 131184538 885423866 264120919 164069227 367990972 80192516 44184114 477652867 593452501 834628143 283805691 512402594 267618330 867791059 620811618 791393264 334833486 185902342 28855788 670954801 241410776 799615048 60345862 565455633 517612737 328320658 374310859 196869498 998356743 206153481 780494459 684461330 888177442 358762793 684161780 492301567 380454911 414469323 650314205 585235643 209465847 160701385 292025425 983451512 686500084 20252607 693155178 73429851 608783604 423692320 283622599 389458220 803132575 135115494 473140335 205748195 233046123 366389024 120808082 366318167 537377459 208095493 581994094 578711168 283446681 582257502 208589274 491365862 940456351 159327825 875782394 412447890 762252366 643110950 496990994 131565417 400497668 136483330 741719444 201173408 864319655 221789158 648326225 887821826 888737817 180481170 728509247 261394396 114911745 190167021 392680162 850111315 982920125 9029412 71842162 167248811 771762254 405432485 992266293 573135258 34886255 323704565 247655211 3565515 742290553 285148731 774904044 484853225 544570460 55101526 114320307 295578794 9067365 768332697 616660811 196905903 603709485 739225692 933705454 774295472 311411214 645263992 495237566 378946058 442704328 877103761 41285948 422587201 827675378 97090885 780132949 878239610 444258512 631368073 733912217 647191768 576559485 561938196 934693525 94884559 983159727 761798677 479367338 185852642 752167155 470724434 696397742 956257631 388725631 90124241 219480836 510695961 488527919 224506001 781933466 611699387 781478785 967971502 785609850 975288901 197608418 703554696 309663088 618778122 33542217 841725824 827157406 120798991 47345085 803236389 156283837 420675018 826564288 967544510 470333278 773542567 810480799 68958371 841762556 681282804 121799814 89596226 553291165 177366059 604227707 201694428 764220356 986890130 435564084 572212598 795075024 198468447 522384066 953249815 155672233 732640177 109788448 12339132 80031174 368050080 334056087 817010519 885868945 619441586 690780888 756446611 588636938 179426558 474796407 819608970 968011003 497593781 232828330 565781244 313857687 467296697 351241451 544147847 420055925 895032622 949047990 365854427 159430666 130114341 645095600 489485221 518556052 919323418 367048571 538518866 895698503 751209344 400167251 410808167 777476742 423688369 577761894 485015315 838362881 530981137 685716983 349763133 695343608 821612257 972880245 670307932 892730509 919262583 395958347 525046484 615068431 903160208 560287399 684260158 512075708 628436611 202373525 322230902 953682881 679206849 636398825 993345891 228679807 438782693 403307810 176245755 625738499 79241192 956913599 213165717 21889173 668703421 746240642 928846184 471729871 74750681 775793896 854221868 839144984 419539370 478178240 944127898 258991324 166217118 579381396 751212754 332147024 611870836 760305749 289792530 535778420 126386653 77178345 950944941 448188207 699370175 32898735 52206175 642197188 749870809 730889740 311442551 989048058 141603216 736297154 60362951 680432830 193080521 710958460 510688680 380767719 200790541 759896311 980686622 121932550 341073945 365084957 696469136 584053778 214840636 589681357 706984798 869222466 621235421 454011265 708270746 135779160 779989023 15385998 247131113 442718882 875031194 74110187 839869131 581921314 775083696 297521446 43458975 95666938 802179435 228869091 80271 178474732 613754354 280846473 759173938 612212358 791099470 385420516 793563654 699016826 989365974 325046734 637361538 290827392 820776652 816721427 386077591 663742913 491532361 502995215 613123442 366723785 455025318 968922086 393753751 876557423 837640289 894709879 446335680 801280262 14845372 411654314 20143899 291792200 765265081 956769666 816631100 213588663 285161421 190010018 280545999 569736952 202393582 391820184 773640705 165302434 421820545 195950337 831090546 379179659 252008993 769646087 639733800 54236678 118579029 725576673 175904196 799656161 465798611 293417926 94253042 863460383 171412055 604408704 92002873 413186729 801371354 278271787 908981691 939919367 279220407 858452133 604800232 530006836 801766251 834370417 247848451 932433439 731961365 751659417 384048916 379944889 293307545 735030306 540796018 555918476 491743277 181940637 244831283 558332200 831696380 925054724 975751164 786293445 886437534 491232727 245154279 998128498 670680558 758565077 714393623 777906130 687682160 851393523 602948207 768475657 355651449 971745538 681261922 56885087 24436859 303358728 53286580 773195589 55182375 403384314 962035943 213638555 611024136 496530772 341888892 21002889 853026460 166185987 56488532 488023379 158864285 458842098 939691174 689267038 561105982 539258895 441513446 159074537 621989949 46324303 735045892 151036912 889591817 87349568 444895413 458521171 994107600 237331551 656944376 642891566 332368765 995336858 576208574 837866831 565998787 989513360 992635124 15096459 879583395 168228681 159705248 728745726 779507453 990268109 274783358 298068591 519142660 448232134 197301945 956299329 771324641 343688206 994066175 593692423 287679393 754288122 836371108 112684903 525505465 335437560 17102866 948378063 541391053 331212174 287427275 294187216 723983386 636803062 89746265 324998196 399519883 518997222 878654296 353046956 498824455 89224263 251106642 578389938 5220315 91390901 8001458 319375584 976647239 815121735 929202874 889352421 390405773 17290599 498684364 927642285 650471648 106462882 306168193 923463461 58827136 321817134 175299608 821945031 340998231 655914971 30014571 829820765 49043875 580422910 347245201 539682654 435477253 873680422 492941906 675356875 111452296 16585037 743230756 524600119 828828446 469178020 236929735 438595290 855543701 834315192 976507257 510330614 453346735 940116728 440543243 839505450 497639218 502382469 544667697 816081613 903518845 480716293 871370569 991071160 11879881 468778560 26282126 204091609 387986174 699750002 186439582 919196186 149728343 80293096 700908614 497086836 334254038 491460481 408189559 252359143 564770589 210094582 830658136 8147684 696014328 439077655 982511708 571919099 465399619 222736999 162005602 546669737 790029950 592374220 311093281 791645680 886328268 135314236 107417717 784153068 646768482 538716232 337652287 149296718 82022615 985216011 484853293 433746626 903123676 14609643 219237523 236422847 855892051 411320530 64499716 854582388 850589829 741322662 356955626 282186196 833301732 827361612 562176206 338318895 52647041 661444528 563550289 514835628 530295775 608989316 147316019 537877086 128481782 481490615 89354244 272366044 198482029 343122992 851165682 277099700 521801646 981071498 947971717 133298875 598623992 420368788 290285793 369946773 572095515 542252093 263970467 626148246 450756487 583010754 816097132 981932147 176854753 474856605 177006069 332802047 756385794 592228517 790259332 458753007 925211152 77140660 902272067 801449663 189561451 10378419 476402263 913970655 968101317 320292145 268863908 416867852 125487062 183355947 419755856 936823961 82876570 857152256 479437053 179874598 483560640 988468345 520016277 761581649 993184819 952748737 743883997 224904542 708281894 962295780 189937825 681445545 428531633 993930692 2675917 713246438 171600048 461799345 567281563 620802843 922134745 459554199 43829951 571708413 240077644 609858241 972280650 923332623 932870948 81749614 53667949 388293664 630101199 152970637 995466650 950476940 542603170 993816078 268702488 781296187 143800097 975876361 462904975 818457212 208968650 954421949 32883157 153311822 54388780 357432552 856883202 394650806 454344160 848129967 245497499 158320938 123276718 23516145 599478632 182608745 174094792 187467862 727594125 908508614 962032027 214369849 278158603 165027607 82232279 938222562 744599975 258088803 686671048 133345756 964350253 896856159 10761070 500356040 936917145 163643092 23182685 833366664 745387463 666229879 10123681 208114478 386306739 507219895 368893028 739004029 909063499 13840538 283503143 644587955 159177521 598390915 263866867 872523444 756903977 124873039 424988138 482543844 945605757 410628016 960736049 251454090 104929900 587655962 875335684 655193622 603368028 35801938 136876067 245105729 813360298 956289029 341470207 960835248 54164130 114538470 141373516 641845854 416295229 361399944 126221904 987509723 386879990 88295244 573618735 912685898 556012499 719295626 974600521 210452734 518077130 982454368 747236921 233332345 659976776 311456485 54530358 309756052 497381885 646245704 239170601 59576250 392562174 176667438 729282232 421963019 989680725 22152050 73789072 180582340 28418596 7231167 151931025 99055817 56967900 898668015 358963511 351537340 195909521 187431923 748074792 578929620 275493036 86776043 626586939 901347364 655549563 373302244 578354295 268385359 255205893 291156265 973527889 926149870 528340890 838294896 485981474 655519965 510077633 764104164 80933892 475233021 904709760 91385027 913399405 309735823 12720547 130549475 370582759 645328286 526464943 46303226 913214123 351330673 465580087 414055872 858751178 459882981 953493929 122820914 203505843 821137380 290066805 299020043 132053079 467258946 266158383 129139390 828861518 951374574 253989426 377997963 654968297 994765285 222900488 154155090 413723679 875002506 658271962 460648099 450350171 332515828 90702910 868665045 222376490 902317868 353529217 135111351 917602463 674956729 126711979 469068722 707424477 773035374 417938756 898464352 378463784 681701245 629847074 19154100 803405488 732662062 784355432 563513254 432932682 211602208 136586002 591009471 403243254 512071913 203030276 320753863 351557205 46736139 758417150 317504179 986833544 49493333 994951229 830762163 208036561 957722553 633276813 680502930 153567752 221427382 338545517 648285104 929357552 776265370 952771429 977059066 113441187 342007516 433464661 452140149 893651875 15766852 899285824 782093840 802329060 162277304 893811702 375764607 170598670 913041768 436569091 874794860 85549170 765364189 356437193 653823089 601493136 906910308 71009071 479804218 618750902 470874844 846405960 738102152 412522884 496689147 269008843 904604169 5404262 187427316 783380337 275237847 686569989 973192004 583575774 923938793 760594244 611249992 801615407 446113353 157761131 840779992 816842985 797568719 584146839 783665926 443100035 202784071 962586692 754915509 612321187 476496317 890688389 351416638 65703585 832884833 967882552 873705612 361551647 650557613 10681691 12905764 60576940 487191954 248749214 796998862 53251640 101233534 700599117 248443591 680530237 744703689 89445856 93514654 949263601 390512615 185070603 431416908 132001517 938261470 638591820 753428075 128464094 701644613 62184274 986885101 720208112 293533586 651855845 79545108 194769778 300774058 513546453 959871534 703270758 624485883 872734632 330319231 232061941 881645296 14013909 691499875 835551213 928607931 283019001 290271232 540036459 596897777 335474459 924756508 748796546 952759952 411888248 386745543 949275769 640245243 288272752 958256120 539389434 12669967 138210533 212040219 782993398 488085358 738443625 656446344 602094597 275777725 45387180 304532820 782928411 809901977 315779991 902965754 417130067 13208967 403167674 755495647 683959830 790148406 316495828 209600309 910338235 756200095 88374137 77986705 80210221 58506949 389925960 131192702 766344294 724161535 903590304 883684690 975346777 985945619 847189991 846111041 290509535 710358988 223456352 174301087 11787326 199655133 655361392 83312 801228216 250217107 31231861 136575574 345411654 596412298 439279447 209433093 300276852 534941579 353694431 634126567 624006130 758295996 522258598 639777654 544341527 827434325 147406244 733554507 960555234 309134024 971722243 251853345 651481041 186556337 552223611 25794650 540317427 569046266 35007983 317007500 46752849 604433942 582180754 437872605 487934033 850972191 671353966 462628630 910959185 538634629 790497841 672186923 427696731 908872262 282934539 939995496 549957391 964475024 387387329 32634949 196902394 611470473 702453479 813589182 824071945 77616616 153130368 147204102 974395624 389519935 480437727 820161111 494221566 654209651 340474775 593749688 931492915 387190160 412009011 270161192 504526200 767699062 692348856 481670646 733286334 565682536 546629865 22174657 389142454 986898224 823045749 741187499 508926288 668835143 335581006 908419967 353616484 249347161 45518806 514637523 672673937 464932231 340506392 839780233 705740310 265927424 690619357 193094014 134491103 554566109 531697416 976335255 350409391 870072523 385723220 804028249 122495904 443487346 947140831 183380286 173002043 547511701 387734950 156483556 656523554 243555487 557351201 985950463 620697379 137951295 338854381 871186029 337741982 643251082 862833550 62942956 470268619 365582092 301928805 260603214 954332667 265183955 532222250 744095709 261528638 760552638 158854222 855565518 634075369 303122871 996793171 328192972 880375516 304394626 607716024 13409256 615013407 675914163 919641550 160817754 701842670 991430714 133774653 468518712 527594192 464431271 328567345 625903720 289304049 41431798 544982524 118062508 42517423 814896351 769008520 438430438 821928825 418931530 784753281 571648889 84517416 916880833 959794302 860652753 957529336 862045822 352459693 64340071 172169237 637347859 810645246 501882532 244851043 742660373 226656557 590480758 923890054 865885114 584337356 665871405 465132723 700810285 359524466 121456627 170992264 724755520 502498770 978801759 602342629 296884434 550208570 130578281 675738641 174697510 193473220 185262270 317507172 699686911 608225204 591257301 745414466 3561066 362676717 584282998 799062735 414211033 4589263 987228600 182044938 486962136 818688030 158348473 56883710 543528691 637858080 258925134 791079496 417550825 236503365 419585316 182181474 27806598 368912547 235240235 507062456 811435354 884220451 465504250 105528042 17815250 390185859 407605005 615395598 654347844 794457511 274986766 701107212 33193089 454175097 795885239 750399234 128903989 783360618 353472290 795835649 983254858 392932164 515925763 230360973 929238 977402070 594679432 537496865 710158855 902036721 901434226 607421296 312158168 773154532 601350623 646810819 804465220 993548308 332098567 853408777 890214437 506087124 120250334 359632494 932798601 17863826 361155197 316069036 260419281 287371117 866388747 867559581 708165641 482945892 927751273 2761557 767820742 483595642 539585625 598077270 352060496 220322070 670650203 603728913 445739067 397501662 467508898 395824334 666091367 592835523 391976841 743448190 711091027 198011059 128287923 175958234 826261069 719182315 489370320 460809220 951327631 20479917 299796615 9143406 573452843 62803687 608958273 722445855 782549923 873731083 48412846 510513163 964428193 943752473 539504720 490708691 513434927 461743349 426881406 429338001 858022640 967564969 385458765 60141716 322464248 76794322 202558041 565851991 554147311 934154177 258188679 459043972 72738920 902915516 337236716 87632745 166285066 742532288 937393659 523692310 72065702 236015689 153704886 938356144 206672291 266952387 94999934 577141788 672632920 95158079 292652817 892096467 571243435 825576523 93568718 864611396 545082168 216990529 983086319 106343386 730535594 399799829 144594827 190083637 73665079 134059379 901353666 207646340 208717460 719930436 26473858 159462332 542717801 209533482 576014579 272436634 307907164 815996694 539314096 469838838 255189918 108769093 85732139 506677771 303637889 306755190 99958097 62890921 322161265 348823010 50936737 367763061 481775110 661329440 551197180 453960483 447951337 155936793 505479871 461471231 880031002 258432532 848204060 399650150 408188091 830926347 617597652 749254599 498421639 826689244 243261755 457724657 229676840 855506700 450756796 593149180 431729277 804028236 925153028 131220980 15807148 475451065 945526943 576209163 171994189 155680337 394840054 447731793 149049864 356185840 511796217 516941308 996965306 140668458 100318086 188871107 810720159 484026747 367899178 716656375 446352983 375113388 958279973 167990067 929466698 443858569 864187079 224757079 174290353 874282265 152583805 2694808 954359623 119105588 56705809 822979595 222028523 158966377 204303017 204337967 496030709 470055819 165002157 547137447 993659216 764148857 367964453 250588191 248599715 403113023 954260245 5741387 181643949 910650797 390648909 184219834 61346076 169252012 548642772 8915629 79664333 359029749 322975277 704474408 934043645 9608486 141300642 755905933 284951837 952464937 196290638 444998398 527349403 815924125 452765763 231987166 704882895 439516672 653268643 551512577 937636210 427030219 839609588 803160023 693984228 759600506 377732513 213796498 331403548 815744432 887180127 901933755 608920131 361879406 889116360 410101842 674738145 201147515 128681495 712716508 90780213 864970226 907585362 622451901 136678769 601161586 816956205 758678101 950704385 850615457 207332870 315642911 522501063 954653436 639022368 376547941 262967569 464051707 115836657 801278775 28123046 736986507 61696116 859605098 743605274 139083231 414733351 25379863 738102550 854264510 17697764 751258278 515469035 30269411 402210576 46860842 153541227 405496527 569001679 13933828 566021519 927359311 415309585 509661209 944858974 396657703 901484698 859634677 85472090 963831181 954005793 199416356 775844917 609457888 723335655 862888264 179178354 471677968 894813881 782476 971133270 751359156 437152996 32629647 724433133 626591736 719776863 748692028 841177817 857193002 741516171 849743409 953455571 616860525 432053976 472116189 723458221 900849729 719690954 650479226 814158921 154902673 336767420 100035377 501782439 625602724 191155511 364303301 64700751 719568195 148566931 830287831 654309514 52792353 183468431 640397303 660800180 895932751 270828242 250667907 181253717 248657496 522941245 845742902 944988776 618027234 538086169 327967784 799812984 964734209 247397462 899722506 1150173 512624686 984393437 41212711 631091825 925989796 708506306 20627970 79760441 272329301 497431072 697808478 744964300 330874624 458566942 248023439 796440475 296048348 828136782 978042260 712108859 528907710 545919549 365933871 492572538 460574051 414691886 209566408 71339395 343836824 567386704 68468578 779147412 463727319 504893455 127169349 945433785 39836988 52105911 611402255 930592671 700987118 560205881 22309540 919578386 417869360 318518385 998374081 612430619 394305859 199901723 320331609 630332579 709132542 842844825 825667454 804384940 340969941 121802448 395899682 485703164 562988477 987225283 646127077 373904449 430158015 833363790 462395008 794433431 498964221 448663345 387215515 462860767 716262300 373310906 954364553 549664246 841038839 283223453 331244618 34189551 672179510 271016142 493431920 361228301 407130745 426942812 604126064 782104354 496945232 162365693 347155317 620371437 415800727 76262171 591193876 146415949 711047062 83199756 990178215 503023765 369474291 867807401 532535860 370307313 2402238 725637170 248910697 315389003 623395193 778543019 588941137 153816901 897568340 592952200 745327613 192274995 541123105 428409204 637533890 458980763 41609157 139972115 283109743 776716049 970127328 234691800 213862526 448723098 678031174 994801368 558096252 312139368 34505427 482777938 526406534 268700554 877817664 759437760 143730714 463186874 789148577 925219859 441956405 443136465 617570218 116449374 119443714 75184167 365135390 836303970 750615920 245592709 401048258 926832935 963770890 934021676 322666627 800976949 900165067 374629193 942448073 618016900 860335169 658090348 897946580 164169011 252492240 291158991 372637299 708691777 282242289 177232175 494125383 172075447 468477556 599328072 876735447 702701318 835738761 186574894 31540520 59987976 617434870 498156824 538643994 501531219 350631240 571921796 748006115 584132284 169374851 889630473 518525086 518357128 336807319 807522033 913670902 503306839 142156209 623781123 316359130 352029333 568139578 101200515 313982903 329575662 144529243 420169892 153733181 324870106 210943577 903438536 474554058 901626026 230909907 493825240 76589403 170085045 393637566 80377520 753685724 741610437 13924103 641836020 174805937 484463310 339198456 197850930 472448756 32896639 590834052 950011591 178289107 743530115 55852573 568353587 447819090 466232657 98018968 452903181 103792538 376063186 847147799 832507034 654152508 311646998 170991743 944602641 739387081 687517182 205657631 40764299 462638823 393051754 889977791 146381293 341680905 528750525 35607869 982393535 942753995 95591049 453565737 964452234 590599761 894300246 456265340 207999508 816263302 221474950 516069433 723279253 286424224 505177043 239909761 6367424 524715255 850880691 374862297 581869838 423207672 482527876 114929431 721900166 3004924 300714023 611799574 812175630 134576595 647745683 865454099 34912141 150028577 873014187 401944617 944510942 470488593 332282923 365266128 880149567 885563990 258515506 941666944 369704471 927757059 548629839 759378905 60328350 245994319 258600185 935659897 529436580 555779021 26735189 511025319 646495645 571277638 380274345 459398477 833575831 692415256 365500257 671648847 232512829 303127747 509371592 280317199 922774247 468064385 389934708 783609703 841921303 960013520 987319188 669609180 588520270 955437371 985792966 927511751 603597307 675394879 291839393 418982877 713192672 856754406 950587267 783141387 997434824 513281374 956911621 507636246 247539206 153205422 278851747 669118573 827972409 928027044 259254122 92056342 665771493 307828422 2538155 711184990 969160536 597822185 705488548 815998989 407609862 784995536 225156005 310719687 866748701 988243473 628643478 648030236 715603370 682063850 357232300 244292736 908734791 114892119 591674536 520039860 936065313 730715242 553900206 632793820 996548722 890534977 626223915 731349320 338069849 547045189 917225316 583260216 970588479 25320341 276521942 757192722 599081073 413330261 686347600 988707690 580059025 567740085 230322835 160451699 360497657 672022904 622144585 988309531 168769878 69918181 313727936 990180173 344318933 98263035 882233964 548692258 782436172 374985610 27147167 55742483 831371329 141056396 316923044 736627014 995891788 956755944 396220365 368815018 559467528 295008706 738201300 853129343 20322541 100507564 318027502 104384462 368647063 337356248 64374105 416029591 195203794 524829919 968123516 971039411 303485491 890132420 800561022 901166308 219759276 111997536 831483145 339362174 319424934 579870418 806204237 998137486 59751477 636255201 42744686 512294532 992692594 529004619 712199294 640042031 950750516 29344416 904508260 770209375 844170784 703091394 774074970 562664949 220704609 981875205 964647835 563936080 521417141 712921669 608032279 623875288 828202395 60498432 721870548 30972907 987636480 137330995 497211424 732763303 57498227 11056424 942380993 140846416 283376488 696735757 275253553 591096521 865778833 761104322 488064060 434686089 886262783 674503423 517769914 833001307 202404315 954754060 285154948 7571712 608626264 159574778 55350985 877552251 302948354 127691245 397525408 985361930 644345781 799280773 914022349 170322352 657222023 244353303 867820280 329440645 560932971 681074835 570181691 678040482 592486318 674749854 216547434 922157409 470604017 388365998 192564200 557955021 736237567 317991521 65311450 377897383 80935461 569095311 206491198 772042318 200640417 68761662 850105108 158419551 499684030 181502728 772712152 442652476 522011329 614168723 141566906 294123448 488774924 728391289 120829731 671199023 383553942 467188512 314009401 235089437 910448223 889277072 485068608 116879107 775483321 725925469 410737094 696235126 976236519 111158203 997703643 162810062 965623738 44637857 753052405 942635169 620514164 370125422 815476311 836559278 32068535 799753317 720831437 277443791 532947230 994540532 817447501 84194016 435949251 365026080 397769176 681564103 187512877 798233774 154675682 502865067 238708379 68364183 409984766 125602307 902961477 673989243 514297137 710862712 549306327 156031657 406263299 122768309 897888355 61544855 611744389 833102653 302431202 825129180 848461787 143399443 878915214 452584771 116013206 990230418 838338248 605283884 922456096 602700268 235105466 289872104 887667484 496813147 468222172 526135942 547496719 950943555 547036641 449218816 923870565 489692293 738320273 219035377 664030872 695390975 393883052 526412622 327815387 20664991 570780936 947473556 444565695 488121866 9729230 408489956 693569381 83347737 243660013 915012089 110027588 116211284 427060404 365458596 783321957 672923393 810785934 602794329 546955650 287867598 105874982 683756394 997136271 839601650 72427682 742993635 197723044 148694238 475992176 25742970 631745039 478834018 15334192 698945705 919780650 382259512 697314265 791362079 773135993 668360581 580864310 550917644 975637848 61148777 949122981 435632084 463184371 349777163 871848426 83879097 998283316 803100990 726887902 938658267 442425748 615264660 982240802 422761637 614394750 173146620 537916326 257723081 972286458 894042440 635712858 170562568 603617875 849728403 81933979 461579886 275507456 178309291 471547223 386260920 519465699 959116492 506807401 158125130 609187752 809235691 769788530 700858133 53412198 376734752 706948934 445509071 578512355 303360697 841387399 324701161 732944602 796878073 86219315 972801484 267944082 370730458 55846069 140093481 447125430 394983360 511911603 106614424 561913836 645499738 60631500 843668792 476135038 872620035 438231153 951351065 339992047 562541046 586609357 858052000 977663275 268822414 974167816 853213798 590137931 36394887 578111746 662917145 931596829 773929932 962446315 51304097 824452552 320378306 959696534 219470521 860932668 331619878 983978361 618324213 533486192 467995208 147536262 94144315 25255571 123208942 458030534 53277394 549696956 964723088 201023496 636022449 381757572 448763241 344622874 973749532 751329283 476303351 891322612 884753345 411290093 923385455 941479030 520608140 347881913 90942605 291131677 995241287 562205751 933682773 949027227 13672924 523403721 299942700 553513002 291912579 784097618 9172927 564426662 859519171 27998980 324557306 374089759 993744340 484946164 357273543 949120477 590091308 915546622 429157667 365708026 660952306 733090747 74975825 476351710 897341494 543202435 664656964 443766103 559110053 277861898 519142911 66393920 362013865 120760948 242388166 121439364 333769390 884709998 169571153 684044574 923916602 260562107 724093434 504539280 540431250 244558904 428957854 919884600 198010204 971146525 228846045 472892747 994371427 286286955 133800631 831341248 275048544 404987983 787019050 593193262 998575394 280316567 135230110 853851719 609312796 84587482 140694459 22206897 677414665 139430353 331691720 878186358 468523833 476629615 671521542 820994937 696929444 512793211 721481443 242030317 959283 370372943 201786051 314142345 812125077 29167530 746169454 979143568 988684363 932904227 21055386 526418475 799353222 700431992 52555094 958723169 642194540 4017578 951401567 926612810 92515630 896906493 867446523 164583599 92818835 376186931 596002254 624902782 714471376 64270319 361645344 191560393 168623839 341172639 667108108 422703509 634785411 18480447 255668048 423728365 503117150 361265939 687000799 32601748 491469139 65512707 44597333 105469176 182367450 14234553 45330706 138565245 603884075 35421758 354378923 134423335 52292036 299415396 123853863 968935357 337448577 646448043 313801482 276391488 602691100 650882821 749421530 570866770 331641725 64297154 406647378 896393203 800614142 325594576 525959864 680797450 77432010 797654869 137050968 139567113 429343542 219485174 191572072 523497210 10855361 951476311 72671212 25386455 55306088 446432710 921398646 334175295 2074246 378564368 363257143 535134831 379192977 135440483 922208499 156119244 638952825 105143245 625970801 886086725 870536015 809624588 885648871 234578966 297463556 276458657 936732923 80449739 879088002 165261172 748598789 356966675 286531169 24065536 673681597 319646339 58164301 692881799 889994195 410633840 713415711 406188224 99535852 673645829 358262014 978646076 565434446 981355015 226278462 182964026 606389013 253022739 915843417 78377320 74805318 825982344 332850298 656351231 172313475 658734271 180300754 268923191 918400418 593580320 142769769 160894148 780152730 849898273 288140031 631022695 905153452 115331121 71578834 531854978 790052291 815518638 129039750 108571047 726246449 883334422 694743868 259639904 787769256 173419049 761663467 616930608 637519781 270763952 133759756 892664790 242048604 310125924 481034271 603915236 36090133 22224664 507285968 629337444 888121881 831266352 654487642 501622170 986076166 824460530 57704082 363664453 504358947 671335102 414874055 750863090 677234654 494726840 861332299 12994369 324342236 197110616 367717323 129520102 407165989 16545570 155808304 705479317 395412034 979005419 270854992 219433855 184906063 554697325 431216456 725577642 630220951 388557505 667539339 14735729 108119394 455389756 450041142 456897730 48049250 232322016 454274735 823079239 282683540 173731601 268896899 378126138 933330154 911522489 849379299 572534498 391592038 45351549 999340442 922334778 134611655 738761625 536117358 425818500 770597587 324379371 440818063 11631323 641114741 80500974 900921279 512038555 6387091 893666931 124846780 75500451 806568112 362992725 507190074 603438709 633791867 781825915 710527394 697229578 600311455 485845980 479012865 365421615 646085895 639077431 783080281 268106834 644492709 873780980 581408397 370066332 55421206 918672751 317240356 961375206 497220712 760602965 814896075 33913808 860940371 763322057 615221306 79053629 531366488 563327866 295205069 324562545 199360712 272098989 287242227 386242538 626876731 304167667 782229771 714331799 891111566 140746139 962755834 471026927 936478832 607907714 147963337 85317888 913243839 870501863 643340690 640544949 647866547 284812106 995111008 749890691 648067116 798335267 415775926 721572553 381147578 104282107 521638183 574397391 261472466 793896373 555679383 545498139 839993296 283117313 963594716 469618820 696851603 113944537 873733671 214673727 818563201 584212998 44352598 174396340 199946965 716104109 161921091 609828169 970239767 664509586 230825806 146599659 716236498 213397489 616119347 66920996 172528717 197690946 815874412 422207104 317972090 943481643 774562625 248350847 713209598 69913795 893277545 260166007 118725357 709676076 612739406 252602744 473404473 679872304 902198878 597572483 970216879 264633253 61665232 704131853 203003565 344659875 299668956 195509708 119554560 686924573 576538348 323546872 293703332 214593600 90910543 695351342 519855393 829897623 708164323 783959183 410593754 764007355 788917369 783728641 626307173 400237936 506404686 395132424 768558082 622408342 252717457 305426035 57114160 371461275 446395900 71081958 921988600 402284876 839519487 407927714 126829532 840071380 343321855 60373880 104313663 922588497 808835456 306563088 538187453 599735020 660738227 944310161 321291612 101371358 900308511 556383873 130348424 880660393 176572184 940802758 529774405 329815092 303834143 319689147 285906473 724791476 463739430 152878819 354186088 847345319 60989766 572323495 657992097 599356920 945474290 505473948 988616971 175950637 93450752 918898492 889732888 971928156 871064183 803127351 499711593 704368458 79970912 224371218 459895180 587804033 860986533 277979426 439348081 806613498 233033163 339223693 974788297 289100266 698606777 783860557 964385151 867228538 185403741 776528787 355489244 846124028 668168939 295175042 540654192 972308895 950390194 791308611 97975461 967963716 339445797 452673175 759410815 351103551 78687297 484017247 54588716 354440701 133437873 745145679 810005333 403058190 374801708 661909110 667281541 128611074 932129137 558592925 580754987 63820852 301805618 925600569 326321857 189472517 34214479 782520397 416848360 479635295 28397606 39317650 73671496 750578668 528804401 350842921 488414875 336849279 261427131 970870999 133578596 779359848 766505062 662669446 451501401 679582435 295259129 954337922 451524168 161578374 5196093 109652431 833759057 717340292 433394517 699930829 382661829 647427354 977884630 277439573 29156584 997967718 942139651 854451200 361872214 173284674 346339980 716362804 295165930 806593099 464016576 168501965 784289498 945157158 426056723 927544520 782347948 504322015 555494397 666478543 727385653 368805228 541313220 341920476 406735086 709714687 189602011 11544197 91867620 134235030 270682379 904002215 516660971 824200049 363512836 644362568 517912845 526674721 329755130 467061212 116760785 976515633 835048935 695442172 480235294 154169728 751215393 193226831 567073320 994877960 826864667 790063446 223446441 918066548 389978914 970020662 42323777 92986945 281460923 569152882 360463289 91789919 147510775 405651958 460366663 308392715 730045841 174096999 55998612 299360536 334123443 365725316 77661203 133303905 470506061 830379334 827541713 999966156 645472694 781631171 434670629 91122850 653049823 75181629 820245174 344181295 372841420 764981727 664005243 90303873 921799269 611204479 675431069 465112388 918457273 687597878 561179811 514086646 584407713 469625729 941086994 818509989 164951278 40576790 470730183 137594931 659008813 220172085 123797385 773317691 292092117 752811972 788041357 661538251 569455996 225638416 156971399 63767690 462156778 168040589 932252482 373105455 202356450 638810302 630189555 842767400 191644012 35218179 63506756 876187450 256544920 916502829 68737409 748535214 281838219 813407342 746600169 480404034 948829005 695896214 203798398 841226211 423785445 273508948 612796924 632425965 786066032 935937629 331536579 138327074 27514698 929219808 479367383 631502791 463870164 644832777 329588470 639228604 463115302 210599072 436213756 184165243 865381955 293412794 111528674 21281752 791834417 934362853 643356415 377606136 664630835 110690904 6902257 796311982 124518405 497934853 936571149 983693834 806459983 116725675 463851720 544520926 944835042 360966059 821378104 319565234 126871296 179483945 971373245 772401101 103078787 98121617 379408566 450073496 843341184 473152675 688426068 313159949 869392711 562746567 339395357 426629433 66119169 905585421 422003790 336926575 784193359 966028049 886870329 932902018 383821936 446426469 905615458 523903602 318809383 333713927 504740589 675994592 86506326 508775325 99660873 717190443 658490969 80463368 48306790 4347454 420743162 939587773 74330539 116525193 81527401 421830062 527817069 341906448 842072919 355538542 647097914 678973262 419731315 37477980 370089735 507174349 3926536 649751693 579955207 296051667 205234865 55045900 918760629 548010592 377773900 184437755 913930359 738965805 158986734 149936598 764605511 600060197 967844188 524410501 8357407 181586962 138516927 498201805 602693867 598026198 587753570 849424849 884624484 489532205 68785134 661643027 966872787 859764097 630872602 630239468 281544526 22402021 323818607 964839683 467346809 673625016 476110606 807463192 718379530 495659856 922934538 933452366 371335682 267329786 216356782 915833093 154767887 433877779 193864428 858098616 829358242 73644891 456712007 778312203 657157412 912775392 839293333 321243593 649879361 831424494 838817290 121769664 681630028 521841761 627255791 446256091 965503265 224109836 457609622 112842020 676893020 679842327 35217837 516360714 492221278 883687330 819929016 527952983 829964087 865299366 542543068 477302568 41603159 170901396 186417994 719041283 854839380 996139769 710591882 949746037 32613486 17570820 318948123 233036892 1744163 713005460 492936766 257182801 102927356 829311156 934834735 24217 395863477 810988339 355344447 488886846 44338965 557350045 516251253 666475935 818944818 826675106 449515030 232178341 107029248 263248672 744224322 250988950 477327729 169545097 203891751 754962700 935942996 938021544 209614263 478279546 948325720 535891120 769177049 800840876 551133279 293370598 401717455 386137064 773662254 506547182 882242312 867639188 787899431 644293024 696911074 983441627 143833072 204262290 666345611 594450862 835112180 762316067 472939662 294283285 178509097 642925619 982797076 482127811 208866830 52366171 532959520 360029613 251573642 24912722 99232988 641057495 413521583 430374125 806897807 572513134 587326644 913655427 678860785 195421187 740106658 978016852 249131453 491951666 630085830 535819466 463530361 644249110 421861487 537979891 835775280 551615228 961747473 310058156 911966204 498401291 29168883 566377347 444497464 605800215 497085429 73765820 462676753 464265797 358388431 911730299 743650805 129756654 125900109 678080142 266182287 35499898 66324536 344279096 682428248 150068097 371812913 781480433 437736927 927378565 872562076 797717096 436744335 347962647 716338525 266451081 588869895 925092017 207808994 571849803 272443158 962568888 662157362 224923877 131134203 864537817 334049173 267300735 91639202 984512872 533034025 793730940 80572428 361127571 3726626 376557785 772057134 865756340 452012399 482664547 923959642 251187228 735917812 338479768 74347303 302902127 513431217 90495231 954777913 53407106 520114059 202224981 657423714 712237061 905793831 252526134 992937611 703925636 70636348 27495484 881493577 283387970 629173583 886605430 91853216 98296124 410006446 419717323 416586531 583537673 633212131 598759035 356365476 290376849 798091964 236406815 724738341 613682825 351272026 360891339 92798764 10282256 663135140 491365526 94627722 557823513 59920158 839100058 682030151 584868168 30682957 87271152 635175401 458582377 174001022 512665451 682729169 696292369 449131643 726019958 237010513 53853385 13454982 20417347 318711679 884559506 336630060 901096004 81068857 170739705 488414320 219537571 925216754 972673940 878437912 669806926 413184971 259561905 205066157 574245427 651596230 785178081 621298392 247563669 943608207 205822835 369570783 787533969 93755286 64004159 625229159 745091974 605011489 346797652 527610916 453721419 893238156 630275032 790826706 891336657 74105802 782049896 883479267 554873605 350587452 507177947 663546843 776442470 209800998 516252578 531675783 333594993 214730510 39292131 102403154 422303834 781596601 126448612 633588295 476032301 189218194 690009931 293176058 351237907 412997222 97681405 206412003 565855140 532115768 717810468 753364568 40953171 194708782 190259463 805396627 798222280 707110055 649676343 430852090 31533503 78217421 245421317 530645464 478389784 786166794 453184322 498859479 93929705 547535646 671477591 166158056 607409004 289012021 648265978 938419782 364401287 393173289 365794101 432420416 224347841 651023799 541804634 799548550 497567021 288523621 201597980 85564734 27109286 632954690 984655933 520132450 798556146 301540263 729393041 989484530 396913596 68638919 826485941 586386252 310509789 644542125 484614358 736854083 406796532 484650027 575856010 535798208 18789365 998822768 43364100 252799485 931862107 330512152 799032772 282004311 91147644 241554547 375064540 511839018 161916828 235640457 576370930 282250645 442290241 511219993 316990065 969840415 108131579 817420401 799240814 275151339 712127092 24954528 661693893 442712786 809429464 659266524 812002138 717648161 613057960 263160399 702909912 862773827 347961502 894199888 82464414 809741664 952291750 851473646 205736982 46905822 944022778 263028761 305300829 372803836 102962826 369086956 380648988 682800511 497001435 700698898 32887296 326820925 432888954 874863211 515559046 348728031 158723233 910607581 977675317 611087100 95998667 690758660 951663920 265760070 823305751 813874 994657227 234225280 484349383 515269083 247897494 798496482 439722161 783804863 949658610 403314867 817834806 59072668 534143937 548056581 837877572 97396673 848568127 742824067 880202552 637904489 740054515 387102851 318594640 485619904 228346765 935427491 770539923 449862196 800036276 386068217 45051514 45825304 754620312 216873063 987064260 656098145 792387201 291134049 267643603 103426109 203340326 538124034 917085593 24765156 933615262 698250575 221920814 438609003 527745469 2940593 240205756 645135243 973140503 132524857 940596881 977384057 806989244 880767496 188740618 926247527 979678556 420105459 697615314 143915733 556060879 849496136 805440144 155064832 206837557 898283740 160941839 112730346 824241618 890304860 743325256 604641501 813867909 969929616 46826068 139066175 654795176 212908374 677301100 521962780 258260252 940789604 232794606 895244720 976112273 493170565 237652012 639261472 982621330 351926280 84351589 305174538 10044420 408855585 951444858 855705869 908970103 590035317 904824278 221351619 490943116 903243586 918732427 138657469 385137532 213189949 437487829 273823156 583439746 334057723 707750331 870613223 930531477 161860201 831945982 672665598 87880703 204946338 114762022 865074203 651543383 842371985 513775361 822871838 355583025 633276521 961935755 300867817 96739298 58328663 829059144 389488105 321951194 18249108 562616707 81450310 124978737 925106380 541249018 395530119 343240609 537687023 116078747 805138914 233173054 386113990 402158452 869618280 352863230 301776940 223844109 942940941 931322394 413933266 831559883 812817927 963118080 222035615 390491611 492480081 323015865 743655851 82529067 692513225 367894907 988471033 948575238 115956418 510138582 128834734 238398869 723416722 302759887 202719481 868455347 278662839 237359357 700353148 837879783 783659472 380264697 109644715 162668854 591053205 594377162 358656512 956372759 842776183 735360473 830659958 270014766 972010661 44035442 623377426 807260866 555449513 625406493 916284925 915475232 504849929 174298758 291086564 437066942 25273376 352023964 624466776 734941354 496566857 743865796 377657268 786172354 345294925 788926658 191923972 492411250 886440414 876311322 681393340 320534023 841351663 852622893 9972055 446858235 443498838 746558891 101023243 331596845 353965030 642063554 659883582 508902352 904660357 148029828 86487814 357500433 614159773 275197590 334187346 885989101 7961978 842934214 518074204 63452248 457495867 2807327 584360546 636324732 835025413 84796208 421100734 182169256 876577052 234763579 891904479 78842759 300704281 303516235 591476036 305172364 620319425 142671813 656885215 672809227 804997369 546172915 82977751 766659921 891077900 367589803 679445665 852033892 899542337 373473542 71252968 160449657 546720388 576964461 291601224 489974621 559920648 802092338 117726476 754520957 431115991 115104434 351465912 560477958 8804660 989515669 51241042 563016471 174109069 836652228 947594458 591277098 975709336 187587021 10389850 660867473 545101340 680903761 935924367 633728454 468610496 157751783 73088236 892372932 218711781 299959891 697920633 252183641 210770106 242428417 995136618 638558631 428648894 239857946 770284983 860985915 248548194 444414023 933406625 164336230 288519234 359610762 814040035 567379212 492074121 218318173 757426451 760357367 862711327 9814160 77806013 277619006 777780751 45617918 92651703 129399882 889838427 190558165 666739876 722630923 362416147 201756656 993294444 360390266 846019277 510612015 972941354 76979899 929928748 974456942 944347597 859446619 969812578 375431422 125238656 968053479 807505291 430372475 229521358 240082987 285667913 34057905 67616023 50789707 62402582 445267728 848336741 942332779 720851681 539757934 808495855 779109217 486532504 740905049 561275225 629705245 556339937 573338919 515944379 594556276 60001714 705675484 773027548 853885602 629982193 242749545 573398051 463515404 867616861 575588183 467198045 936753387 51913000 771250021 308662164 291438109 354806085 444729622 813833016 302094826 545794796 313286369 158164452 701255524 756959918 221239699 353524019 368416237 97593385 947598481 152112017 409952010 6614127 640838080 55032466 995662351 18681245 646021209 838732586 572938279 293227126 428494180 501172754 441748970 792682890 74843607 129224089 170972528 284880798 924177588 260019772 625950282 85042763 950933824 917190140 229621913 403599030 56083839 367143482 194577608 926155616 135901352 926001459 833374722 438178326 457170582 683911253 529021125 931422283 437255805 11459843 932810424 36377353 321999447 132878895 987360568 355170053 709350013 756021394 310612714 545495145 505881561 641564735 637349403 847963058 133335224 628954343 161379162 736420254 835693194 530320599 674792195 912816525 539484304 74372709 383420089 407051659 34682686 794883075 334344640 968024877 909854231 560657823 379818719 73732072 541663812 612619604 676688232 252407282 815058894 126585368 926681845 68193988 190475090 870211429 421881296 114727966 474825445 648243608 937586111 234670396 982614519 769152849 966751012 840771506 90228986 518381194 83586794 7805550 741002101 956619443 656386600 227037390 261817481 478583052 606932449 192035172 882817078 523677781 591872600 442745273 685866390 334026702 593975141 588755809 880157294 273866139 625957861 300709351 144318317 679317995 283511546 620756481 890735801 49283059 887934281 343904809 557824082 169748743 134798649 406852509 913025481 164379976 373845302 483012448 889398955 885716589 498292330 246739381 345858684 638773905 338007942 553436389 120976819 797916863 156121348 94358311 613760885 846179743 674632589 876896719 132536828 88449789 977721087 359059972 574582909 198444071 412343044 508084916 487644652 953888552 186473961 494132056 335423402 453432984 787748765 951726142 945443261 769563107 86817507 454911685 848334644 760130470 273953729 4840746 575774583 827827875 420245469 741383893 315465924 426958964 767818380 169601338 81752814 600542515 362010141 120564511 522836139 63957142 497863210 566529069 138341815 968054247 616061781 793795769 413993608 190834513 771154425 905794301 197393630 298332864 749309643 245445554 6486081 176300723 864128691 374489542 431797652 715908313 907649127 774623747 265969065 33327094 470820674 490017663 751892072 584406623 206663366 420373097 27010180 887247070 853742737 680253784 441979132 416044977 660435568 853173869 769980155 955970318 462663611 243646176 306095387 517320413 553606876 384032858 37548154 468410691 530821462 357042463 250430241 645616131 40725619 740396782 880567871 325721054 293667646 774179708 582643342 500652330 517844973 939964697 828421827 39094490 469457847 98795076 145669802 431669749 947226874 354075961 674682424 187590509 935377110 99285571 734907830 393716876 617008609 746295640 338119113 578006270 534359822 815346123 399457040 375699644 651841031 732938385 824601757 210460370 245704767 178916357 440441915 653406364 431267509 89112803 999257192 824098818 54712496 519470231 354655016 679952802 581704350 427720649 741332866 685018985 680690134 309052608 331966381 786313535 752706199 447743964 491563850 144965092 272997825 387011680 33831243 98970857 277402277 767058601 882197275 612103779 662360183 421686954 843369718 521443157 201455515 528770932 807013627 848452949 269246505 13030413 245680424 499982317 671174336 472161969 944795218 790176980 76353533 57939653 178589890 241978172 524284101 484234425 728329461 386190850 403369681 819877462 716102354 155903613 730030549 676987599 831087749 647488187 104824931 280964255 858152926 412555059 984961551 432775170 498534811 283677474 305103214 380948668 449850035 670039334 406385809 421185133 796313528 245072890 887225295 99924192 251448012 916325179 581427395 679952832 940488131 818583859 46731884 255189194 917872859 983630143 382448129 190230535 407792412 769382299 336242711 130400035 136194331 20261097 418438518 730946828 229628752 334912295 238090461 664589032 184367241 41753082 979255541 295325425 244067564 723405588 468037580 648818358 534806307 337258688 631573783 299941344 29618549 306437607 560387396 179229260 526032360 736459664 450515543 738570078 821662220 247795996 568586982 3212637 804975825 465888509 468112300 289558966 405124873 311585743 205750418 454599139 742999334 958074106 469567393 73598997 239107273 507370041 801435597 224259170 471997813 262755807 734575297 57015938 469340035 571251052 540197364 282078341 829798679 179375280 99142796 102943945 43506887 707911390 352820508 606569623 109355905 986118289 422672843 554868515 12729319 46489965 403813524 529820352 896132377 279252492 658210393 329282109 637117752 748281348 555798804 520250275 207444450 807407589 898701474 913326062 585250148 220064206 49216586 26768584 92403356 662302925 521835563 418328241 308206652 374424489 565008913 139068402 152538552 797338982 628694285 177568984 408494434 81397843 428942840 836341987 952460553 234739760 892702187 384143140 463365893 192700220 800926123 236091972 802916382 704709047 566981472 487281374 401561619 443996475 934502479 247095201 130926263 950783538 377064099 31585854 505411292 587008868 247876975 939917102 457238557 482229514 805272564 370565675 534974196 954436579 49406895 362859387 795816100 861848664 701695676 953549872 459994921 438214142 374095992 388888968 410576307 381293504 874262475 428768151 454854662 67476371 169683307 399676245 303555467 481634797 744030860 822636867 376287662 408308892 184837007 646711444 362240851 230897538 936694595 712268182 877892846 149302599 85031092 594280881 578714773 648832685 68303509 928826759 231137708 385707594 753008149 307532627 234655269 854985562 730540410 618709720 2046921 451982073 576272299 983434205 222617642 877096517 383677903 212961198 433997639 492916975 636940226 209199741 986808958 148916936 735376795 990701679 220570732 404631851 531884193 393171445 394720046 874167749 723056466 558440110 567609245 300227695 516446248 28372978 19438567 151108229 10504369 358986083 606313583 297644158 764994463 720410066 328620238 487621047 942227772 91680825 858019747 766001191 597592226 124430703 582077988 515673296 571454913 699126736 729438548 4871510 481817275 649488625 934523884 487247829 947602834 992519173 107574766 872222824 962517243 281531686 520887840 952704465 608044516 648353169 291612065 449140160 862650560 744460906 822666784 748020352 830316154 501486618 497021168 348552344 541720265 434759723 850204597 166878009 969695027 332975272 298771823 398413447 961718594 729396746 718484705 878125839 536551563 612739249 533732946 669601620 683634561 855349188 247128618 109398185 791942259 698283319 234244185 765430190 982716172 278875026 932251928 343911705 605186727 758071293 986793198 316063184 936749697 588292956 984011041 437698554 834366670 739361652 83625166 915137910 343340372 419596482 832434056 476549696 677212738 28116034 272740903 331500596 907675792 215982815 742080606 570822100 473812471 79588481 792524871 619239852 949453717 671764714 952098751 941027823 489298413 514096553 953467352 252479722 352801600 59407460 934190970 575858047 213499217 8257718 610489558 846875263 538212313 630579695 455404445 407386100 632435611 563437839 338241134 619873939 730993671 409551712 347269993 902673025 919921893 165384417 310611754 514627625 333545171 22429833 725992913 808695949 190915491 469144289 820603761 349751918 829866203 683772395 513554444 950867564 905127771 840157846 840520409 853386531 212069799 846983304 141189165 18801164 296814454 83957393 863387965 724045429 738579922 125153007 162394481 774476380 432006221 767526464 267743775 982283089 358414589 268852018 91686406 371455042 272866100 444480485 875415473 668397734 20003401 748462901 229813799 328688459 920957243 724934787 968533843 1990251 580624911 370635195 902105989 858833242 520456618 260889968 989436671 689200819 132170853 789486693 535844921 812633101 325472898 988221613 166803345 392699987 378659026 184967479 565118712 160095886 468864915 381485612 322484328 751385763 342682075 557305552 308172803 927975765 954488621 481335775 606890744 873718116 279676080 25000880 419904006 948076402 83963760 305920902 8113630 385844381 753137743 330911238 858622322 197403292 865759124 672942428 261615923 400346937 769798359 151069987 89473235 419681879 849936672 869478524 699056691 199229156 343859640 975181429 291886598 514185736 970530553 580438257 820606159 818387597 57382413 850767877 594805251 781633709 378112578 613390890 226712275 472308798 182740974 794626191 993030730 1185210 877970681 121047614 135029551 260520865 104149158 928089431 973173242 145634389 77866889 399778587 617520676 901460946 821245408 855244427 927892653 96283617 974309926 660480204 224984360 468041752 907506927 133762921 562608350 857813464 861993273 101263769 906543030 69927796 45003683 4482268 490453130 730156315 698163357 875818928 119486155 131990901 118410021 150422629 958136923 321066125 331157778 404792292 432534006 883602891 68530913 239230261 768249828 333339439 409103710 70882431 194809043 900452111 121028385 539440584 705604338 662479550 481582400 323329167 446262936 567436097 515636330 101047650 598111621 241010840 289687607 755924681 482587441 660388385 104300644 179430427 712585170 539565775 320179121 209340937 951104998 880574948 66310242 342370441 106422429 926003999 327264995 530824066 105893371 958308730 965937865 409248106 671855222 241112692 593802692 853633158 964404256 183074300 499421735 901266296 191724512 906632401 286893866 102500631 199346322 786455276 20363937 350862189 591144560 392759156 245799426 495680416 877555958 466317572 329134336 715145477 171693091 280985841 30677613 823936757 803498657 494806563 856239301 43173088 128088948 281681838 883402921 917640694 317702689 129929733 716943305 900363622 405331043 622743676 209523095 801021833 359500891 362426428 841012015 925490860 353527464 984060556 177194326 973286051 417990882 638551327 193490725 524334744 731009782 942531218 475860034 631534186 442606939 744621563 240749178 368294485 873485107 876569922 24332283 817432903 589593118 793868546 629504533 71397274 90361845 785234265 189843784 914535715 501374503 228215131 244581923 437269393 679244045 421549473 237026433 870035988 440600561 296479910 93835995 65657184 216928314 587430215 572365215 676385093 118339650 626635036 292546975 940846782 56338806 772770735 937343984 28805402 891365046 409928712 773880871 578187389 923002175 507908226 938392253 924738449 186917880 989236501 114954191 618583208 979847839 555972206 728197904 109927370 884610839 773274015 556129763 905066177 131996212 684019879 115713909 893643916 596548604 903384021 24581675 277041401 247665142 471997326 782374986 607017694 956751566 72957431 813426544 766020202 499693527 596299996 766676787 564920754 119079464 514270745 282292015 699423568 117022683 631116034 255289982 941770424 853762654 986850026 890981785 387787035 110445632 143159728 650614266 545140958 956555993 673612112 314552208 885135711 560481878 207977171 661895604 936591591 365890233 433964159 389074368 581347554 285744185 280515648 480621103 630258252 530659020 148242001 209725239 938518449 942563037 870268328 587154292 530728727 381644706 636457381 192147648 272359213 586973751 265944878 102960805 597018096 936696274 584089821 608928266 292387861 468943206 500477022 129777310 357084171 817065571 178095978 761006163 359558333 89463004 265644314 476920028 191688632 300912996 561990990 223372921 97315378 203289993 274167002 914484855 268941254 810773090 593120641 585898529 870159405 912796967 361650569 916340012 348317053 516997171 445799372 796157052 448396141 733793604 598551205 736184739 762881977 400390856 443475411 735489316 57331932 670294664 408179287 232266768 50163692 22302658 852039221 105013005 946679417 257087166 823878717 523683214 929850454 517571248 469999336 864287034 791014343 918837567 358677414 814625503 908455089 23297918 772401418 475168545 433812014 428839416 437310266 65729623 464769353 220658130 78592595 244654246 628421611 78466409 55856193 965866674 866358270 546981915 26014868 58577614 491506993 69466224 679311796 415093578 189155397 260959621 666839279 985485968 148477292 566686120 525151910 495410083 51750682 599016142 972424555 850572622 461468575 562026970 559391029 992528256 726030214 701375049 995562582 596154748 762279288 394060524 244529150 647400248 40082420 139838931 824441245 928723035 278465748 942218632 54448176 189872077 390814470 427567876 865130144 401429983 100289962 263684474 173158572 962665174 320648899 818692299 908775236 969680737 463403322 315136779 370533475 379691599 959782027 410410457 484350210 754807601 809143038 390493613 546220381 477528443 13333749 885741257 76100772 801828016 699090904 364654190 746098192 894745427 380311360 255862660 523486654 465731586 745141004 949124892 703490424 507305220 977823154 454666805 715519702 426293116 174534466 680079547 468322074 599993683 154748154 550126668 286875805 511330395 989729516 200169335 363309759 756120620 743633928 193071740 484106069 20889950 703292126 462083385 786485840 925317822 217819328 422768353 839077885 983249602 493729159 724322819 63669947 98893304 451252752 270508967 668606169 718756698 882712084 643739631 512036846 16288170 31407224 939062926 885904744 747189182 381458523 354386929 618406067 770647517 404478273 268688984 242062127 883678880 930457131 959652340 998567877 596785411 901120278 536138964 678075575 61744951 395743317 585885403 611366760 900876796 335902484 225117706 157030103 680565510 323049256 899033866 298636750 240196670 612365769 112526039 617807311 174709398 228705942 774378131 115907782 706641273 408473845 614171288 331789604 647265780 758544719 657919828 668765699 284555799 922545122 632593458 51775183 288219753 206771258 937147699 257116612 412516308 885829774 788471091 432512033 349863080 143689867 236526410 261969324 685164212 244608708 982864247 878921304 249228377 284801886 534163093 943453317 196358143 702963429 674076753 263607868 556735294 631493352 555190479 920268961 541778121 839552512 564042315 34817092 891274752 967000812 445904108 816795964 653502797 353718890 622632888 572730927 263082221 576004408 420399643 6820603 978348537 855420547 347556165 128596945 738341821 912474894 423193136 815064905 648201828 959985611 235279472 977275838 999287369 605187341 222233162 37081021 449979218 781727161 501620427 551579183 929851536 357079753 581696557 187044713 901808298 497787333 981107524 328978049 174271273 522811766 373313380 951875757 809239124 357052916 564712756 440484473 961363540 807462233 975974312 864779658 612201768 251748727 907223805 540902464 391847872 517306153 521107632 905395185 217098600 703429441 5662211 874545691 882709774 361534426 420274761 958802411 77651497 409624883 598689644 545074634 460771917 478662058 359111209 456372852 203102667 461209791 683936495 335682021 457767482 741308143 936414652 305938385 810300097 666192954 573672457 43716390 983635945 97765054 865429073 878728814 752278968 586083776 44560446 397028189 608773749 517721066 319303081 211544234 136569272 883705405 448599452 401804703 261030751 378349050 869847620 73285462 202006955 606618080 593905802 841327068 103368255 177783223 575601629 140238182 716870610 856791838 376432554 949127574 837080693 830633615 537776575 931074033 220542790 236532771 688687862 442647479 987933932 189069087 605716666 627229376 28572610 515075023 377868574 423817675 698211138 3797314 364684569 909074286 231939129 355566768 540613977 792603037 989044763 896427089 330594006 970541105 16254073 114369923 460901566 563120768 122303104 108161981 727267999 987921255 920363313 768004704 294266693 530555796 866642903 254220608 152322812 880362006 5731870 702381221 142411947 788662403 441263879 898588339 291059604 597787278 277403216 144081419 562215573 84558768 378031922 494514111 363320058 756874122 727664989 927765964 706181493 382570148 185104589 20397437 256796048 799209313 262015365 668179884 9273885 208865604 639717120 856657130 549838868 820371768 682013189 953025867 543990220 133492659 536519932 302422312 629355226 900529559 5223202 129503968 647342603 454775935 961025558 534778385 483222544 580057685 753743992 869099058 709798837 85328226 24867873 298883979 325581437 190317392 724071557 458157485 969896210 871443215 538848634 20071199 788386515 14657256 482262558 94192587 968329561 626854112 477206924 633466816 452486240 642628701 724889854 182039345 18306494 664959384 245276568 118960907 607371933 543492083 981837845 220741598 272828133 820604227 191808480 639371679 688438111 800644563 591290731 246147784 526954247 760420810 239016339 5105074 6948213 695063944 892559224 968339975 983764834 191744544 977535710 763829351 43103004 496003097 743271835 93306864 583046957 30655292 78655219 990015607 146963178 161535114 961206559 3649199 349998081 399509547 129555329 811209154 917714553 325605496 342374931 985424030 229574698 485661689 673435659 305901323 141844177 385456998 395683454 103914799 24807733 440807530 284735689 754129930 940165395 882675306 179065252 321355320 677116564 48250189 313367652 359223628 682914765 918897717 465833248 175002210 441175625 552326191 289719068 806747378 854480401 322191549 763011991 568259658 691803766 344139187 280046080 381679331 707772983 629111692 885677987 238541704 428098714 107919594 136919581 734235663 287497452 379813226 381638777 692802277 278633685 803696255 562561708 189377860 368090431 837420365 229637791 365886825 809756434 320251415 316093498 724484665 205798552 463503001 327275444 883140716 944404641 101743022 57166982 383176333 873160237 490680756 929659151 93643273 465391650 981471488 32405680 547146695 541544370 822746853 455830459 449409739 693653709 369439799 989939994 970163283 12822252 286539134 617838258 427625352 530022717 598260973 12248658 209608653 448107130 197454484 24747588 528213737 892109738 568184861 885425511 403013160 497002520 322543011 64688012 158735253 873577893 479001092 844272528 109253098 226740495 259975645 395056089 149405270 866540782 22709022 355582140 994110119 832890458 913329225 937186935 454265469 92795661 813211199 33462983 836919022 113914452 236951428 888981190 666423368 800171281 244282047 694981060 269405373 476597934 231322092 52715414 587595449 385183731 973193796 718436052 345249160 781820091 658486497 741001471 810360056 144162084 52525353 47922067 826848490 669467739 883448779 313604329 228948120 280609267 459104934 994388229 466647612 943333541 687914387 56940376 129320676 894367236 899616109 730689008 370530159 604305452 777661741 998142869 208829209 844299588 718210546 658215468 788457457 915697159 889673093 191737053 160276579 615002957 620670685 362146986 746052563 833582374 927384756 380594848 681181455 347263267 212869839 224376625 222701032 306775240 843296745 134714153 884579416 844571936 714879329 751714930 161198553 838528708 979414102 988269418 21918942 732370058 53156381 974737565 449318353 120334772 266493814 936552651 204276623 114775845 632765944 320176673 98498841 712184248 962486740 10832975 561369489 969222608 633904674 410664363 925862384 272629808 342169549 759683382 340393313 42278655 158619780 175479274 666556709 401349184 177217487 550367977 107201378 283712590 266172597 559026366 772095331 926967147 180053724 535770012 631715334 590458116 837906107 386357094 131790534 932886023 553776113 692940131 905964346 4423894 199338138 276166593 496604431 572454808 535662726 129403238 91312707 779602993 383598265 29894935 953037728 829710392 129587797 641382763 583739472 483294394 552355193 901908112 800945150 18187574 391417065 417186962 653092356 214461027 529297526 12540523 522274046 819500773 347649094 774756774 85643532 224941409 18433593 682125914 314075660 292122514 906075490 409782209 22867792 584017390 634663007 426003450 6156871 204989983 622290227 599877468 670029428 591911150 666344876 600800793 505204671 885111630 450665476 592246119 891496796 468336653 473516170 980520447 828828076 597919548 933666000 105009151 271660484 946381958 494243758 103979975 310400852 19131880 913059094 942116262 243165833 463378110 389009420 517679271 264410849 383708704 377491160 193297481 993813037 171642372 431231124 50140237 178953136 463222558 48108027 498968957 897699053 245853806 386900340 418979534 929358072 896095590 20897294 336022207 404546209 930403307 446130865 55784653 625432706 675677999 408976550 798635052 892544418 607482750 988876429 688317160 745157212 99487123 814017613 799818510 761561872 813525635 769442974 748894498 279649190 641603117 87182156 688386176 661309017 29438769 646260903 574537174 306254548 439842893 97833297 82959323 41059564 939051316 3546210 341428606 331624457 56357606 942470851 253513393 32512659 769947112 827768091 854575153 161676243 432309632 644588620 557289197 501516222 374987083 1690107 905363268 812648151 816678121 645532703 825616413 207147667 363078472 664335104 759400372 187565231 957417870 529898984 309715023 77665610 350217014 820298691 408430806 527565268 924289204 729877572 318675266 1685769 90668247 775596731 484226814 184847564 604477774 384498733 492343468 941666074 417712133 843688316 598883867 333136271 157807332 72964471 475615367 755163484 873990018 688533207 959158106 456850445 195999264 531771977 487140793 166967223 607808018 329876348 496077580 669787944 226256464 326994213 115876645 799325366 158170600 82184835 833488522 179814869 39579897 550333817 475486388 681182826 422115410 650185513 215204398 744857532 49864666 882387724 35012861 601779614 93529555 901888321 347101359 171234377 132367575 317920987 405240563 829412665 50987982 467571386 925448595 714845024 280987504 155353429 654352528 238125823 835828197 944616114 15307366 759403225 387550593 920485618 296608646 513455336 2567248 369399125 347023180 730575942 392971034 602311744 525864905 571504260 854512601 528287028 307743139 367979306 449679937 964201314 136323880 437616464 575884777 454567156 319506280 680202679 244425945 898953012 430587216 771541352 382534062 604013546 677262123 783137350 762836450 18468535 91365747 668382318 311618800 427272876 820895060 530872119 584774067 302679093 434968655 809940158 690093785 695294709 861103723 679912654 402989786 368456282 468535202 668766513 297007633 521293454 684871805 332923769 328216362 802894218 621778106 181038091 909231900 445016195 852513225 313870198 3016790 568409835 247213341 449913786 79562037 184496200 660439876 877452515 762437884 293649134 356492738 836552656 76252318 539367294 534842800 399510239 814878656 777928908 195838084 654890200 90565164 11013212 278860053 502446206 288444209 772147610 871667249 719632559 825708107 838950205 884818132 894306674 280683288 782956411 786936937 818949893 186003350 480882086 201606946 274133766 733033931 807930748 540897581 709002638 793261738 603734286 660917876 729806567 856594818 815382844 7239064 818604486 283907983 153559121 186519733 456707341 469319933 390366484 988644845 858819077 665401729 825822674 971656093 232218643 627041072 176147957 616231351 739825913 626892305 353353277 157391153 595687665 305340987 934803612 355348041 135995373 902258307 869486398 380969914 338591117 965625641 412189955 227490348 928726810 96519082 646458958 187280345 844496385 765708520 239119945 40602114 176657169 958348062 216842541 168599434 779271141 163380585 627408798 914665158 706427071 144456440 353394900 165505147 162130905 832855583 305128274 548819871 909691282 342961061 336156799 106482079 345796538 91521795 670538463 33347813 648935648 576741364 563898170 333189399 37918820 898520397 724403546 582457913 237798569 621559995 705846481 164344091 321117493 328519603 90062090 783854862 411383974 247800146 628284748 777347746 522127061 856212376 616188459 503281172 292606379 226821840 769212436 87250235 916767037 8400525 388245799 857687680 23934224 731614305 393382265 650390149 268459412 34188642 381469085 369449823 808383998 836410286 8161125 996284328 767997209 623752110 498422407 264908932 144734456 120946732 826672888 392507582 902537731 874356264 637888502 202632534 530350317 503883091 490906999 917485642 546644129 691899086 956988280 659179625 880493476 340699360 631896000 321860744 634385355 365964755 4315566 391676660 107336444 707084505 805149555 171144688 636475337 576539270 178089959 440596711 103136895 861301593 379125882 101961885 368479000 92931347 445460260 114430081 501993832 371052990 852375739 537332565 749161741 221070970 531296903 764821701 457553441 981988726 303896583 821792570 119991769 148480908 50325348 454829237 428015100 996822246 283234051 551211973 566981035 60782654 234007299 44555262 246401517 200258243 943056288 340096758 510985717 726555976 803558914 158402459 340010002 607694730 892415398 560801070 37338737 423959856 969726482 727069599 390271629 376171143 143947601 383205357 252877905 249200710 136319797 652930748 554902788 56455913 593753767 250109289 40170993 397422678 972248504 791212074 572342950 157476186 865149204 55927325 377148431 416928072 140164073 334718733 536108127 929074332 852174211 799023837 589312014 848577382 712168293 329924680 407294509 808726642 795832672 676876433 511469242 211601434 123301067 376150062 793812235 358545146 172595468 103868231 964152463 743969330 7092935 439993428 580873073 734653981 899978560 129613922 371178160 403640403 761499996 453345277 148627668 110797488 720317957 202220535 697354736 512573888 538241696 508713028 392378838 86634164 379324294 569481620 336545897 5067186 762616249 648651422 984919800 872975375 129714181 945219227 887373391 220366455 821209870 444700202 164253967 313458895 762184737 424868688 315924692 289584382 944301698 972981066 754528234 325481123 486864845 249142110 170168915 197188362 39835221 612563899 947652435 849847484 69399605 325057895 195844541 795212181 947708831 398000748 97020303 89368589 244190288 977587483 372093371 788422370 442361704 929411877 517901574 222992935 444633914 398005799 793543435 283837221 91187797 311606465 745200202 374894198 372429376 225274286 234341484 26643309 621525393 888972184 770662418 333338944 584157236 841563860 720393679 231600011 905416182 373889606 899290257 116766752 777277897 469916779 630967824 188876829 459766014 620144932 526578190 422249783 710935247 458147413 38216917 349954918 401533067 73156253 377784965 157956173 718177611 655665137 913171087 797297561 234378360 387430257 354587987 395893941 297024028 46570085 658558264 863231855 701895850 485665732 736962667 887468386 170381780 850611920 868625473 999266019 331082938 109668132 395786938 944196540 335492146 130208893 940369942 639013248 292310271 809738603 231589 974789280 269030620 360274567 311975746 862451497 286807708 130783763 319854818 992317680 271286693 549487923 929154669 850066450 439493986 869798521 354493948 887694866 801288117 557961482 890719825 720552754 948105045 975410486 21095034 252787052 38099406 825860271 753727405 322255518 841023966 358996647 545581326 366372189 658962751 731482289 460319682 189759109 579131801 234449618 692578567 85522696 665378546 736898526 528177465 6799104 579503537 383843034 429338116 715251080 702846099 296985097 715620221 225728834 86768928 719219064 353921375 699558245 101925836 431857159 700784855 672859450 137155833 981534232 728460919 17731073 549001061 697475395 493091645 121559837 363367589 189637364 701644623 999688615 662926480 260610339 262879001 164088727 95223858 556340487 827994336 110633191 439094646 609970541 908207593 511707718 862426572 28166169 509241634 148043299 104029673 180914127 424593842 375134174 578028945 897267863 260770336 206325761 458768707 944805546 654497766 877770003 854164622 494998185 317674620 338040442 17646672 324682615 543789887 893374070 798245369 154069701 677186189 810213839 376284361 888422120 85750390 858640913 347619617 11913805 630365258 762219757 410301970 413873998 544308898 216817063 705870969 360095100 239026732 129791817 652889755 881292625 780717155 971521695 736092 393378305 682531086 936726320 469279684 310169172 257897111 515193700 804036089 520096115 217219913 851319834 584585058 567853470 425787806 780694211 188637114 335268172 870136090 838789589 568066773 675903888 519182035 964707037 576513704 765529387 616252556 220399477 811635682 523582817 302061073 509308461 537859194 314432824 747573 420404011 922222939 177181600 284652591 233746048 914757078 170971999 529983849 204814555 255225809 468743230 926604885 424034654 259751831 795636762 860280803 19421334 1795735 349366172 403565018 141023348 841654835 866865659 571766804 107399764 899146923 799335836 364081291 500885811 311462248 667918761 338723898 40082434 735609360 111282297 15266128 817327030 603698387 983873660 577725991 778334036 375666275 298013877 991219102 973342063 292238818 422883628 55229734 372720916 418358694 158117842 799475407 170585188 953816556 579776551 355087702 465774358 901498435 594708571 848617869 195815000 19996534 446964754 623363870 219720268 712539014 143522128 389048268 607271605 896765834 431658718 331375487 648752731 319830322 223398154 568544158 704367209 849335536 25605491 131002114 66386737 277505105 670062800 156672620 63975410 378063987 964997793 215412721 585244990 938264607 374198162 613369567 369029157 375693756 46735661 203226872 167991225 972888437 575779242 883919017 77608831 48972444 625803332 793744776 87065656 979245274 852451580 36225547 869180220 740777219 251127186 980885637 187464347 137158097 632399284 494589922 335040652 979390778 267378895 525881753 128104708 981231493 873685069 35724357 361778960 360446832 783915533 900745969 600209111 336229944 66577430 687795982 982524725 675340333 558877967 978368405 309806802 705331368 598314088 520951578 483058899 418654631 521068768 761992071 315697919 122519468 533570781 929533170 22872517 402072072 840422429 432907639 668287156 783686257 350280099 389454271 700591821 628440398 423147894 589602010 615100593 617189556 235603317 632327262 693837127 664385602 807283992 426311930 967335702 188410668 884864515 691086740 162680485 935568347 330471174 647601858 642835034 111110203 270786675 817287101 418763050 438650712 708623950 243352212 169426186 904620805 537725010 935062400 818056910 990406000 718191871 824133333 633221458 958430324 835641561 948581758 973974152 566319139 395064106 581195242 488265706 311598380 449490486 132811288 527573389 692685781 916962305 758847101 856173139 968752187 251411951 540601331 165432783 218286502 300249478 979059986 390830825 990217525 496296273 148967600 422839283 797303380 467439434 367011431 440872327 580759681 477272920 559607968 182507334 536637741 162206782 856610212 54542752 297918767 450850419 229203589 935442282 108583744 839025181 203286381 240077462 632981009 957433591 515352698 335063250 816111235 886547732 866245769 428993814 514593345 751709546 293658569 538717619 689649788 645961523 575249789 216862547 108800982 215576700 159147809 662508736 759300014 928469005 889784042 27366843 78692138 605246010 594524458 96273246 783595149 989786855 147878213 887361338 899531004 205159352 814770301 481663135 174193155 198005999 534552788 147292370 560863962 773818634 463731012 217488536 206314499 391920666 147191023 904182022 618174009 173927547 252799928 106368000 846424624 780088803 651496508 556753752 150355195 143232995 599619102 727842327 55835787 426082297 384689058 450606799 959450705 392716225 129212297 75047819 498221352 146443261 402371647 464987406 379289845 78273500 952144450 188793422 111880632 127123121 908339404 50622415 831115592 385224310 564051314 880137015 609718558 814099025 966680648 402835853 711432834 744069221 394595580 484702989 56701140 247663252 586987269 435568572 600618885 568458664 650406945 795748027 573580078 126767045 743563195 402895304 338765110 870943534 510723206 960616496 728236599 527866997 682012962 421782935 995768823 876048292 68286109 549066228 593107299 155248695 47415961 573566029 795133678 908896616 244422587 319503926 64926087 236483621 42791218 456191361 530692251 125355082 794414786 482746191 283688071 188352042 755708223 17797420 106377838 195369097 591580028 230627418 493411677 933934294 538790799 389325455 444555183 646780550 42283572 580521204 449153682 164475874 316168175 685511815 966942189 851448032 508972996 881691715 996159488 327119802 610225415 180149581 990234774 645580739 572547924 470009012 40324339 107560896 851928644 81935531 923219201 277383225 526912823 296533024 819465987 317558709 227177442 29747696 30189042 649159498 431609369 678218148 70598572 246388173 805608497 90161487 937350279 596283868 586228862 555883562 557116298 252842857 365965718 685156337 165909814 199242990 291789963 866125054 425635279 16221681 134225294 304641071 988027101 837443261 154639980 554886741 628493520 392134509 418411800 193524065 743785730 392074119 287712010 456802104 164014694 916496323 303789510 204958228 474217062 168880247 778131255 401618592 816576667 635823479 842586759 666924069 516264754 384876734 972726017 650438021 81494455 353642957 1703606 111617084 741287974 687345451 248537149 505319465 697653507 662701163 724581142 31949825 44761482 813244569 519882030 317117518 586892860 973311867 822499825 778344913 131593127 447759268 576722822 186404121 223571367 276116590 427221035 81727526 895007107 294174077 86334595 265594190 657070405 830019278 384585110 600079936 103379836 379118565 621537271 940966652 90167499 891588853 950711793 771265948 709178278 75027237 744958718 726021400 743455157 688029858 471553628 555465147 844703764 99484982 803635019 751645087 620950917 605720378 155453747 788539366 717031268 560004988 776809215 465110470 287892845 77073287 825100932 872004839 300799468 75163224 48660673 789646169 538732977 72046867 635580152 732348102 845028314 629847173 216053266 901869568 32043754 124292006 374581151 251550503 526768101 93240451 513667354 689161402 833273541 361451246 28954176 539145783 610669083 857653608 534032361 284984245 14368458 892755617 64595099 510929177 366770623 106164072 820539251 514189304 360325793 514300027 220336592 391231458 785915740 734695837 806427026 870033372 800220217 843131857 475080698 913456105 900768179 985141789 981314103 967324597 724932366 316371514 431283494 215095897 846123217 964877802 276786177 645123546 866724744 714309013 587028343 691903515 954766778 523647986 583747573 882273274 19930494 497061908 959248842 658910524 187307464 683888862 735977246 66888297 291246787 501339978 74550135 488905640 928958936 594913774 382500673 513631125 500509904 611257090 410623250 851549443 819348431 547488273 931711990 716807365 925684734 714583111 134145734 968867249 514214882 137612648 113085104 105174027 619121360 535415749 414262522 856872188 815688305 50558173 86327551 626946434 815957259 150069001 215354343 232210828 885515651 145138075 463312397 474353223 114485487 551537996 324427103 565510655 224439017 330725881 93601918 121904541 886472633 379792927 513097515 666038457 249013967 701851456 830298527 181780650 683388241 788366266 84512837 40665277 603936181 216459955 447379737 42826121 659689826 730153533 301629322 962501466 969619185 554120048 957281452 532870331 984046918 111074830 546802696 854658653 801884873 330402692 467248157 959493480 596906995 350489501 565126135 207531401 70108577 550699891 725922634 701435795 770501263 426217337 779935503 787477522 323387400 62608538 46600733 595540496 162526800 279685170 381990440 145691555 306202708 360529986 993376828 654860507 118329398 986338469 392626069 350189026 787440841 131636981 97306724 795966269 92913806 222289918 394605757 544612538 9136980 504630798 498095770 789395484 895864969 879753469 481047355 575406293 910702995 902094579 558881461 660262379 32749597 494912119 165911542 855330865 115775903 377772325 268078261 739626525 474815680 626474693 395785567 995157798 157066391 131529680 375754447 697469024 997457814 620300456 425401897 671745209 945716515 476770919 375701566 383220888 873695540 665485619 192315779 245362901 859903456 849962929 768305338 528932687 948366614 496073679 447525711 903006221 737613712 841092422 688531478 633303611 742540932 369845206 216558179 866146215 629147270 658675266 72515133 217126815 187517752 828368257 184579413 844060743 203948611 903328763 447000393 261983328 59816733 13502512 836915179 582452331 616889141 879085735 538400078 41826556 410080262 937612771 703110140 836195796 429423044 894303555 446855614 625287676 622978965 861426513 945195868 921854754 686636328 425612208 860652235 39330113 198387369 271139192 419895518 862643058 639402470 196240529 328998866 704137516 998333797 634341554 636120766 76888965 617462617 19367245 650027087 634638279 731150709 192794966 21711193 213002277 332483146 550305293 652458220 253287970 63296043 680983483 888135844 527079919 829328663 80879144 801176218 161683171 205626236 496461156 476194388 791422298 739216093 584734342 496565633 570566565 601794979 575888192 117927490 32481777 27409293 317984338 63185211 618214359 751615746 333723345 408266351 93477476 311924150 621405061 442032306 734723483 443743746 29465422 195130218 792684625 789722164 276945555 692606072 495857601 169576289 101645967 708789222 399625782 651856594 952140389 589259493 517031877 191562092 982584186 907577397 229227592 520468645 958014300 645340226 292724442 340374387 3099813 174316871 446627112 60174884 432909416 17862240 48814521 381799787 177649352 127777723 803638653 658560129 342910946 443152153 670682029 580334801 652308177 73898370 833984615 324149635 212038289 707681110 513580462 192291038 768218457 912208137 838671587 149312839 217911117 636709139 166873362 682524245 436195252 996205889 415614051 192024072 640023091 522944900 860724982 476973697 72169317 190097519 821104703 946822203 568315669 407617352 336361992 890456292 890329810 421828684 352425450 636273739 645783536 599079266 996244697 865190936 541919087 850299200 656622909 179494461 907095630 768816053 478787051 966650768 479729946 845928582 164517638 440846230 326508235 231370649 93608518 431336953 814106474 289876203 950617500 327689494 366660510 258228224 698523113 554558936 602998001 623193100 741254420 368947947 794898538 585187805 13030710 427555000 881382944 665616283 54757525 14980224 709382843 658049447 829110161 781371815 559834231 669613907 354271622 197325951 546146051 994854085 372191166 84762650 622282201 978304537 742062880 83437897 95171038 34352132 865878850 244871040 802813096 699424167 977372624 739431847 135347718 883468954 532857116 144543033 840525192 237887392 992821188 120813369 719828529 336900429 159650700 492146091 746967983 754477790 879697675 115244811 297113989 562789084 331365659 452767120 782370458 333510295 234403940 233278641 784021433 95797678 563725227 324808582 322409104 733987066 563949773 405961582 126195004 220463992 94211390 647197609 38749349 153005210 455573462 36378798 261126592 167922612 844298656 553992505 826761129 474291461 163365318 47468940 725487011 145772670 215601213 720482441 341424546 381504600 659035217 448604882 754476074 97904028 40011066 653331180 366869728 974939137 525785218 41109289 837563576 745051513 232049940 117417667 291285857 761777390 29080267 382140259 436723312 19304480 830269346 545146416 305688981 679809016 113720902 923156564 316053961 969818275 368230679 47350623 492508039 289648106 479906879 962277212 63837752 291205487 941133113 310850646 460682083 585903611 980152709 900493880 526722577 477345807 211035536 590829897 504292836 808342155 372767845 557416766 93666643 315642054 559581670 473864437 791878419 6675889 355788185 641554334 38214757 234609256 268066488 641308628 285675953 774034426 303941849 882478408 328661200 279353057 435497458 779660709 871141995 892991132 1082272 720686148 120953679 486945926 194152111 473779384 764946659 814967721 254915048 433848301 752077182 433288949 590499176 219530615 864557473 546093855 367437167 87002440 651525042 458075545 456051246 645706098 980140280 754163293 296724502 187707487 375812263 241823365 684905645 811522610 201302424 736413593 369042258 138760373 109755093 54004849 862606812 611130777 480040984 652128283 128457628 988956222 964779794 182738357 72500568 15329473 611222668 222968603 407255410 98466113 243265563 481577775 405788005 136220401 28537425 378475670 375106875 37390889 204938728 625504135 591890355 654447622 484327202 797550353 515557036 49444931 516097285 768274767 661484966 404971230 538756006 816484146 951989505 941599020 869770674 202120117 586029509 200331451 516214968 353757087 30447197 201649732 328234037 852089822 677220260 306790430 341391020 822417432 307932765 701806673 239326737 906611702 564352294 701638445 346346441 133398636 993965314 157362534 336281754 405924510 62349978 970917818 749628758 388347977 994643759 182608298 577839456 360399134 712034858 793915043 433071557 939230256 937082671 318272280 922046383 948244136 657601971 733983777 459395396 99835419 227649173 968552597 170257393 257419684 342590236 599660361 668835132 919193198 155376282 848925746 220459829 189006283 774897245 276990926 547302260 174383424 543069376 664297633 886754501 186283238 236554739 992899364 10918521 823698092 931336759 950141916 676266451 885557884 956221004 253984532 193888016 441988982 152556158 672249636 852870987 225027218 716910724 805791811 372736907 620305480 501753324 553062414 810539556 991562973 634592816 520000259 51971411 388657290 71379328 983492663 647754496 872965961 401169578 251525302 651267063 183488744 988910521 353819742 502931477 757933495 835685961 972016595 543327255 28483534 926390121 409694074 63541962 703158836 597887687 280309087 408851409 47811199 746076051 43864641 341535913 976388938 604697626 913559927 667564541 72733888 880782140 767242670 425389709 905937463 510876755 530392654 683138701 741174133 535006817 427938900 492318415 597181040 224107301 764723801 839998692 322822046 397290914 590487269 506941523 322486535 725978737 579431947 599312503 231161579 327154895 404777073 178147822 141071004 686742764 490932836 256506899 471884236 954106103 12175617 783499462 643254864 211028865 59472439 826076135 682472562 510775189 92631541 425462210 387659921 840712098 77981570 944246972 780923217 71078092 674126763 410517105 643932378 486065541 380259256 377456073 993042746 687234200 44453261 175108112 215908549 476613809 172172401 766761491 739998493 842458712 610516051 920348473 184163489 74352326 697307676 9198143 298938744 850196241 951865406 511691705 858648601 240927752 472060214 570176731 391554262 809100076 263254851 990075209 595656250 543466189 389939985 927133296 32327851 10782488 453806447 894385258 990310705 691204752 58177149 602797682 894524669 293249632 79383333 481727433 126127250 351731235 759667459 851829601 434777517 248406643 77415029 627964266 570912397 115878536 589305567 776374708 981003663 451327689 29561404 5405514 958574288 109994593 604627355 522340411 545378320 470911031 62681442 33017841 562076211 28465987 418283115 614773503 377726293 34283858 177066522 44381111 868418939 465798799 320725219 853716706 123757772 655927327 515750000 792124739 885832141 776532609 932366244 61986869 535989478 887258203 405747906 290132146 55472009 393779053 710676130 105736101 489734563 133328250 922444057 218077254 921102684 52296965 303304090 700852315 313678905 355637999 247617873 357504080 182529527 352924119 430419858 698790180 540782469 136140917 316647148 492367479 799146219 223748883 87923334 833932929 907175742 906094294 739926304 700867075 480061438 272254921 756476729 441288893 50505924 979286066 857487447 319591436 787634626 428620032 286859683 887710640 398313151 703117297 431965835 306711399 567774534 993072217 451933729 704420764 923621157 521035530 342698391 954054218 303281130 107284950 204199793 457777363 498164041 269796893 477405214 396282443 429884676 803912980 518610929 250758273 203322578 619230823 537039040 470829254 814014561 836413359 83038754 548368841 427529827 686944169 569042345 475759034 819428399 600207163 874780533 393251638 747575656 953336912 531842096 796340280 90767995 99301015 625359592 72070476 449662441 65388079 394577228 109323360 627034666 733879281 608425635 56990186 180541969 599545256 544264892 329432691 544795597 330449878 784936175 462261629 521425005 563352354 852256788 833419081 624207587 924268477 753600059 11387437 518179089 509551709 116017495 18242014 50542325 520461387 938457977 827614104 738631030 151622737 433456694 605834730 206695000 657701148 368880183 997032366 191596926 36401122 862917726 434808704 761571944 259533950 16867065 873548309 846747238 147819183 807609312 133983330 596331376 332133548 811064807 304843108 766784944 23921512 464274734 35855132 465716314 68998425 478908729 14327859 791071975 817549879 555869377 315801484 173426933 490587391 855770264 978932539 686277277 157919008 318379250 673707267 386255738 759328336 17653714 996265037 902222376 3960850 608594844 569190917 446488144 643229209 6369532 443771592 591662879 778271750 656422891 715492891 145259687 590541550 618683941 995240881 422646891 591182573 446568922 286028845 833067306 418269452 477099588 589915846 603731024 215224183 78609549 28752459 562671355 888297052 366302317 720378330 620895143 894166488 163824294 794585053 148148093 101535433 508047373 175771489 136702103 155034128 720295124 795653915 689202029 296120306 993694423 994954121 979656599 428101374 223662996 639110593 645850472 126341257 779274115 837344030 687473375 990752889 217533906 204540901 785489977 467237328 310780817 643747827 426641022 405826389 653449775 841782470 449319353 300393531 168982061 160653437 954745826 749676251 238065625 780874428 198481634 412534803 915006878 900780341 392641149 667414946 363338754 75263899 152161854 659661495 620816967 915811947 309440420 824176758 936948103 880663649 907723985 383315106 346005122 43636052 733548864 692056990 887671859 630985924 370873515 159435837 309462626 340894144 351104608 718734966 190667248 449633409 38923072 908774960 511010740 556722143 768367932 651967472 973412725 882306673 862664222 16727595 881545234 87317240 911201970 675217272 603442363 640573574 622825491 654670611 458374123 927811965 166496383 426354529 251373646 379565282 227011807 850210931 488312546 846767895 98437787 667015202 957595600 45079915 175696659 353672465 738124199 925059596 560122217 796984094 288675932 2085100 637261871 116274163 998799674 395986252 4562183 234729262 357864460 376043427 574012749 174945791 855395103 740775200 724845856 722197446 356664961 358628628 315770550 15250101 691127027 414758799 125192221 713817453 28139627 955882076 767035105 884755207 809614738 480559868 892024322 25551018 369711646 415388160 899697741 599999051 721554768 473500150 264119425 830107343 565354680 146086629 89235572 698086661 582939885 194392119 873014777 33289817 58213768 138437378 652020213 189551309 131893931 308251429 622490763 468456698 602304213 457584661 20670932 493832840 964492606 649203894 825840224 377271511 299452084 564108067 917121814 474400188 697777165 191008929 820021989 376369885 995440607 735460573 835735756 435007550 140193116 482891720 513374294 888030737 188939862 766123474 773821922 325498643 65119826 828064393 472074867 877714404 279080790 463441525 937984306 104760943 371733448 741167335 483262327 662099778 201347303 172899948 776563077 142057332 756269349 556882060 948736678 664559703 470553658 814082554 651489220 899884510 243079518 993866186 367604344 796472533 328815650 672721936 418001132 629601838 957857981 452850869 870313815 438190400 215199247 832349952 372998351 20406411 405727872 134357633 158028457 86194737 39110834 60076114 738311000 857864633 838609008 381245024 120290770 152105543 467603851 704388880 898574474 401834561 669334376 400112184 115922061 392367167 438263384 363472269 495568811 268797612 455978668 364170118 43212341 831938345 214801451 566337077 40140022 880288641 589213558 595797876 184989539 541898509 671787685 766439646 743474533 80789735 180277566 945181904 894786804 708561267 839407030 641500725 719305643 98475294 872347276 89052438 780391523 857291641 588749475 855984796 702000964 233505773 170266101 545648111 650454222 590060614 362471360 297086343 95135856 541882689 53261284 731962524 262923383 378503863 443913710 835295131 950654735 983540813 958011749 488222607 786754861 559391736 275133045 287588525 637711241 830593991 730009822 284588749 747914374 742697211 600539134 732153662 643061616 334627506 218178473 930680640 525353022 605115526 939322525 297231408 452452928 909503985 415777897 916268778 913527956 338167629 467209431 372974192 435825173 533804701 545675247 64928002 156932430 246776316 677970465 593483745 57173099 567530924 720472182 588981159 375120051 589876834 470970151 720301511 348815149 801126978 158072320 123085979 781649265 980265278 679624487 90690812 947988507 740207127 463772295 270254248 710367532 239946885 703331203 242255668 120418794 660203043 14108286 717743170 978142388 811639059 654499438 337340258 347057644 656052350 203911376 452722621 115475506 999197325 657046599 424659330 765319014 187273903 513080601 833241663 993047432 811477180 398974406 451292422 114476156 309509433 864386334 941672100 57705245 526735816 511081628 905725133 272729944 526742890 849495933 727380421 89954866 782767065 329666918 435051363 664891198 464357595 379183144 452633754 308915029 302592388 419853663 673722138 932875522 686089688 504635284 135804704 405058777 998660785 645968044 234050715 94965742 391370640 762732448 189941061 887993291 888280951 283325559 107527109 55510444 61083771 137104267 542779766 800593958 15052188 621059957 520180709 998990895 319205678 879980406 741056780 680786025 581748484 818144585 502976340 86385174 492719334 802935365 402335095 127468728 357696798 382060166 864701144 195639339 393544532 223952163 738451310 384951769 195191739 175308052 227019491 588377510 807184926 95252175 846022376 141596356 873822582 391844972 113837242 225093879 499136855 34267069 110077390 597529131 768126440 727108280 220670166 534034767 210233278 15869981 6233770 997084589 269161336 307475182 75082750 30021748 371153162 236873992 470707717 278751139 230256290 908747815 807570973 340620894 150974590 830439486 230872034 951206475 764443047 333925195 353631622 365302861 166874584 361598724 357410949 253261542 341970048 880249689 938781045 375410050 778421788 102645956 514012502 503938913 483756738 709846128 478491415 183284628 66075267 905236677 338055665 892744312 274272555 3990239 100414494 570236023 550942757 835394323 92739791 461504869 916676001 882011320 860317600 839342247 147467882 451172396 290864288 238684552 735613573 961315974 393831854 956417378 258274 369868196 550808693 370078201 708547320 20917577 909401562 453523281 836223068 423502174 206780705 423710151 677463034 384344842 837351907 835832092 428102467 685450379 130940754 970563448 711396499 346382134 521851725 546083465 40255239 400843761 678293795 834566001 893935534 450665501 673327598 144410134 761363732 354156553 69575431 764415644 209863829 279102094 947423639 542001040 918060363 597424215 644661120 537492114 300916684 947581398 544937602 131308776 276846931 299705286 469521312 949319765 156158411 779328028 930058343 872243918 8851365 398678783 967593525 705854154 698819678 903555328 362537725 19419003 177570523 672961627 661965235 733518251 585612509 928833816 424969022 657421378 203935800 387599914 873184542 209266918 504102921 171796837 302762836 605583221 666235165 667674432 867307104 595269047 933406955 375079430 979581188 318511694 79613637 6435087 980587709 44572974 36393896 81427708 580133633 275440256 156504763 90227341 639065048 205104266 379961441 526888027 466193069 360815733 692517184 180457528 515365512 182048629 313688287 542998811 235100786 660764796 354202745 585481004 141394543 75527811 170946670 810673105 984850527 466644564 933244365 527879038 791533693 420887147 177124013 715832214 325600763 284702113 342218187 183967351 297936822 531017628 115520428 307111152 627453491 320368972 460137257 894877648 57036291 481378056 678942414 874379886 204623707 701047018 258324754 512164399 922274 57037371 343766260 436956196 712218174 18815539 109443201 505858655 715124024 687727582 732448861 610368776 207371479 181862673 57474457 38675544 108141670 98284721 684500380 731028782 294443103 234857578 760535523 548018410 752288398 752479005 33940189 876666534 920707282 993856158 137274598 72743348 848394616 724681740 336802694 865114073 63478363 970901780 897140694 457617280 127313535 383598472 139800621 432935911 279364996 989625159 279399621 691668054 353628617 281238204 276944246 259934138 394109855 749571367 409853146 175871580 3804881 883076366 483214893 961836607 638763498 413953795 100996584 553043802 108239163 675646591 688737778 957323644 246031313 846317492 685408879 40113993 266502948 55197429 802582669 221426364 545669842 509864964 452823076 311775794 40043409 397240293 569591393 402212725 301374459 33255880 899312148 213734896 33901541 313208841 830357666 119027117 524090425 193230727 899605671 460248015 736086187 810490255 972128517 716616006 359555362 25243802 34018914 888853709 784979715 852908183 47828603 270491887 917206745 392244754 187762316 502399247 221263789 171241680 15180124 403373190 864900216 91642670 840054523 414916487 996107753 925499518 344724880 526493988 174281838 920588702 606096358 504919619 815654695 128611001 766247065 104098070 857039544 709885050 28574220 169424542 795535141 468100458 868943615 601173400 355882056 327383947 836611380 137648514 574882178 316763598 519519366 465145100 291545941 779213221 838347352 944168381 447200405 117849015 103363259 771209466 441205390 430278969 494699585 859866130 852562121 506788535 152780318 930084946 560534712 712950544 821799332 846683332 345217424 281491991 512683333 393101840 787228119 698177314 193928467 969851140 283224428 550664312 66058502 897660072 131295401 104009975 653975279 387966231 580151931 578235711 759579215 151964861 935748997 929446869 518235856 977780762 957413538 740841659 908766383 742208787 566742291 862098221 779509 473430054 727457472 937436697 597221907 35774436 593204016 819546628 578939671 227831757 505992240 749762291 156281109 592187810 303510515 777187927 605142013 225094681 731054042 859672857 380455603 131830360 878617328 868033241 452581709 112994186 955907847 6046020 303926869 108189262 864172686 702693351 246895117 605228516 517540940 408538882 872696193 86898932 284047356 8595198 11587906 457964082 531660528 671453527 881251271 459236458 332979204 105197383 730917167 960369798 793799048 804228943 730718297 473773863 20088504 12796766 477912580 541004333 945747491 282811936 449629576 483670224 133676138 458680772 511861053 143933615 527202660 843964213 4561023 28055604 486655920 824091884 508346781 831470960 718276741 849515430 741839880 833460202 517553886 540344662 9062434 628833842 848084840 254164349 949954621 693243410 172332439 12836151 977780395 84217048 598876019 816304758 363923084 761390572 109299731 555867937 917694216 839300299 52782933 434430816 190794346 487280308 447280725 6395613 409557110 886054663 307186119 962709322 792962007 335936703 821263762 875974947 738335647 326513883 791116261 55416865 194617720 592410985 379390592 962810261 792728361 649495222 786537918 338558294 229686600 467563287 702371360 556775968 967807777 515879081 381139171 991684162 247601191 371321569 340988781 27712079 378411023 359788277 12922572 828058636 763234429 963457070 678586315 622483349 355329669 968960377 214903757 261237182 638189075 929890443 79257975 380314909 447858362 852070175 68494783 913836188 995951608 150981823 156439072 22193122 261478899 361758143 392833065 254239222 293433616 793425438 966524216 151160655 529895795 999522720 704903797 517740140 50215378 700492818 438938060 340306601 630552609 595506784 886047971 18711235 119062347 738236958 130625820 342258204 49701589 846798860 345898102 2162444 999126596 740311068 1126943 676311567 785096226 651969072 276793495 329969909 517905977 322788461 793464986 67735131 673193913 451761871 385420266 976217061 77116812 555485581 873803718 276534105 519763042 440782325 681470118 323488187 397004914 417194417 533524920 435390783 736199985 195263939 118108438 7173524 922767613 581881145 340634331 490668545 584837353 638803270 852451034 436604359 2263178 180763720 425504802 483709029 164838790 794123254 103226775 97623150 42712665 530680410 753216828 116237742 424854665 909473872 33529621 550886925 26875540 692174444 411703252 899758088 266316051 8696325 69776998 52189941 765765903 925905996 28516565 115885630 61405437 461937411 791173134 874463170 457518539 377801640 786921827 810123665 962868153 263421203 94429096 920996009 1292722 894511979 362202096 389358784 254342479 670366578 251901871 564547222 660726377 997205962 986749848 755727256 500721329 471786739 255964370 80734431 802972036 414081518 569002664 962226473 396628970 111451613 188162633 95114118 469851495 43630627 939555062 312638443 111546959 890067008 199428870 709754855 641325426 541717674 839582733 831098409 419980501 800478148 222102330 383340444 464980027 425139664 653008625 160798454 88521045 958239236 535164244 850592036 343229782 966757164 443038199 117092479 867915316 561141044 356678854 260161890 253501452 380003633 153701088 938432229 570959221 520348878 274452977 892109035 594756945 131768406 306993450 885406174 499825056 864160403 456965911 411445320 743793816 296017020 330200280 423810051 100191535 425695533 997321728 49079482 668373152 737395674 776238124 168695912 720269662 638761773 202939817 367452519 582454871 686436802 674099546 25506508 698019670 777307246 998162515 185366424 553366157 271290140 512941417 94675695 576767194 416204358 819744075 710306545 632422518 217440913 72045133 234848854 621141654 688587604 225586304 45134577 725101292 123767201 16803221 922713658 251905467 354659952 60091643 614079645 885074422 298173446 484516498 532296856 118910608 502065620 496193618 282980394 721594713 583948466 19514981 600008225 671101501 866031966 22600507 422013152 988809828 449824902 362788190 975139055 461625982 732027646 452767641 227625526 860747175 776513380 893721695 270899144 319584628 77296993 14750475 184225170 278096748 362250860 279766064 555759806 105968946 307268236 686330909 406009342 712552656 801853220 739462699 651269197 747173643 884841160 702001075 541518438 834041745 294488830 367588172 304606261 776952481 323021211 862763406 920784469 810024330 252599704 235896545 108389193 587421840 243087835 662880875 991282131 498298214 527244399 514022436 387118317 258818690 68458414 407990131 458990998 385140156 991223817 790141638 729075605 548344456 722044998 61718243 36725429 462432180 337020965 349276502 67731652 437361307 995113265 103707091 761188997 175918497 61410536 268709536 776669700 598392128 181368344 991000595 864737023 259435072 183503059 430962666 539642017 507559416 401660133 189979717 976778274 595852569 459352039 466890652 949488618 845818026 167964436 567769054 808730051 833526583 957701167 889398572 485650379 38247817 560095973 626055125 162298836 202978506 879441036 581926374 673807348 227021894 678856921 953562048 556539551 730781688 320136082 185134496 283523524 326055107 267911884 969903979 150907172 365747767 593094988 609514966 830210957 635192023 705319600 119097550 201911656 232129615 804413187 282152195 981360149 975120124 280610543 263839196 946500816 570763935 95952526 230755726 594763785 770676286 519975279 475574354 672591245 863049246 851181603 776786381 383691970 127433677 253734177 580241177 654809998 563400968 516077706 501031914 525765109 364241917 338942376 616894349 433921129 866195952 253207143 949412631 352055043 737830801 613093417 482285188 30091382 641913876 978841243 399882844 692306902 867818750 810412389 941814412 219820589 187054851 548715551 416199878 931453379 853888711 588885180 440582669 910057682 302015478 433243845 744826422 575485871 877362773 396982635 935546830 681912788 115675436 131825096 451673946 872154508 898877803 251471645 683190321 506975701 87332083 539872054 51855658 740095060 882192050 497055542 805353221 822094556 296956440 852591548 215635602 578900185 284861203 161729814 457138878 750791775 898960034 32848556 172496911 220709675 644895335 77990657 131940709 620063106 222800607 111115409 101347069 718888251 782498513 942376261 895976543 137873153 370371213 738648503 74285375 565316797 7726299 437733350 647404243 13472572 699746440 237582485 267837453 800493208 657825285 527447755 389145726 861307014 875746063 243343253 967938116 18643177 588821263 990375343 449840772 99135755 364182903 757175596 884142909 813101332 369787309 986546100 618571547 100285727 125242287 422950956 305524338 733291770 316618463 683006198 491288996 903252241 387777244 603625085 759646651 461709791 539229087 865765097 394926142 184517083 793133701 744703236 738925155 443963039 618549543 83351034 640896960 33592944 657945295 363731614 77931511 624833253 563480968 721039047 224192757 700765116 920038651 428319016 566556606 485214409 191747874 992752729 285129591 26937069 558652113 239796293 244128591 278141609 58659703 850029142 467861615 724438217 678998684 843433650 559003764 383146290 131261004 982209534 102476888 57386522 549806741 948281399 618125219 239101337 905975792 483622051 323701037 993520779 921250901 50865730 570687476 634308854 788782942 645145979 883923423 833149030 989848255 264967359 378726053 234089206 714996399 785256050 466615172 715428838 978185634 605318596 599836989 838667019 74643415 552868827 205567780 180789502 970867438 671634181 961857511 452918228 287190991 730449565 801629505 181124441 428246560 990064799 578119674 32227821 699344467 186059132 966727399 742100030 736404913 832509599 732827306 335837095 581221967 910605834 328486145 885556404 25516869 115396411 806759514 618336902 801846600 769381658 943091556 110482111 262274464 741651215 196378541 258166454 266022930 719145547 189932024 314292287 290920126 50371855 412218936 836239656 394035046 343834821 370398074 52394588 450041730 489981049 349091284 689009084 268265117 198031260 389464277 489494326 474501809 333771634 332032726 668334667 942467679 96904611 109635065 99887407 11263146 460492076 892690717 646914637 481200591 176741045 928483573 977779260 152260600 474802743 70816623 620887492 169961608 547579137 461802361 895518370 248113200 877179920 221145981 678769678 94933874 999641200 197245030 509861767 127840071 4772292 288063393 744787261 752527857 955254857 240784367 941029168 148217480 15170630 857675269 588568253 905552466 659457870 154096895 532986031 613253623 651773599 294625956 722360102 940490044 761541976 559561149 851628539 473730688 106778795 103201814 856904732 205091744 700010269 398083055 817834606 279825409 964063860 215294354 235768162 817523988 293439684 958658350 47879382 506123665 619730381 517031121 580675241 656093021 259476613 134254171 689115979 68887773 368033758 468885773 895682931 478854024 451074802 595807637 309585212 563707302 955829186 84161731 764215328 453774832 991896224 476650048 619671012 69506174 534013135 298683690 452015923 432647356 113035354 713900557 247977736 381731682 634543130 298689350 766476417 469131491 109195605 320596976 425694322 164553097 529243034 492506563 613889095 640336442 300341535 202728818 617317273 150667992 978955052 565114692 287185286 165782455 475866367 833428866 660936645 630648924 995846257 106503976 858012982 809243871 231479782 959257196 874325795 681465874 960035807 486990067 255450848 96169823 473520704 132597524 873484405 731076620 573751500 636541550 373396786 540049818 67101387 446041669 369250871 783266800 254104422 870749682 413988646 365604233 875751948 382557303 120952102 219223693 293946 500106697 537427086 767500736 762658384 80322613 948882248 945244338 171644322 620494479 995155219 89366997 470348380 658505817 528958367 600635090 390768129 522835225 207972123 990297611 796717684 604733029 714579938 893792005 410668934 275864784 971885853 857543398 469569251 487433764 635498220 208675500 248579649 69473784 864711823 735668891 900827172 221390036 977597883 137042023 20536171 580190011 816049017 789322172 525004036 548520542 510179114 521330094 720081017 862731788 156643572 265227864 168252307 489249989 459797094 271347730 197246009 415586435 850309388 920148555 744330058 707887034 622806526 817891242 216911251 21765586 430849434 423265523 429870846 48519081 391445547 165970047 10309125 573664199 510938209 96546427 113695998 984761282 112088545 514518558 458293175 930241624 262405644 635811272 265604279 598964647 737152181 554474756 749114848 71698092 574894846 454845774 661855655 207714113 313975597 946764010 13284155 168062334 547430877 310828218 912759960 292763200 999804149 392579707 150023544 402071220 769833376 840846641 335256603 272331999 533044974 41334895 624856174 878285708 120364893 883411908 478738364 275270436 367364596 260941534 632076536 195188860 898238764 910363434 209852969 398476158 998505360 289420421 979343047 115105639 485562322 446255214 259272085 725007111 351968619 717095477 681389685 656246665 214303695 139872886 311927252 506240481 160430144 380412876 262379837 377034100 730161867 710492715 285760093 751702651 306531070 896678635 732218926 921127437 449770896 412613307 339569919 687002105 15340479 939446949 289676884 160114486 966313308 949115158 376957389 477118402 137169104 204542832 752862132 335396874 282700423 476553327 48153443 34021754 355008720 850724272 752191351 801660091 976691465 441871126 691472655 678766625 216650342 864864856 329934888 967439468 893376020 988831480 838858181 206360118 728956466 174093482 159746785 836255812 391384919 77585556 79911939 665018661 526474615 199638839 523025131 93099562 582547295 916335306 384720470 789081577 919743732 21646580 124206519 275090398 217932992 833479438 253399384 594102473 330006049 543538471 303018796 115758714 144841934 583718486 218000858 874693266 326370508 194137996 641377833 296632684 581222791 769227034 214006581 615864322 622886894 833661930 81686259 961492006 296938696 244437797 391960313 376057164 39258124 132105749 337406849 170053272 869471100 137282986 566904887 202907700 768991866 503770758 282622180 77129710 99880417 269798468 811840659 472689600 448329048 144852741 590142897 60778459 591602793 4314625 136510961 424289363 645679120 547607478 861222069 644371273 879456952 758734447 460586177 372696690 357550347 926675837 91746162 729178793 665196826 546194115 498868141 658469566 42080566 285743049 723712819 457816823 973006587 43447216 904316338 750512635 330422714 906605591 45661378 848989056 129425915 721605248 30134526 756633283 729976968 615285986 964591669 920037701 205851741 777701057 984673267 918709187 132447362 386331190 927204505 340921215 144621226 969024478 94079488 451493851 761169566 40012739 998781590 916159068 719576947 127397319 35782682 821865606 894366122 891692224 796013690 822496631 478411437 306773586 108712633 800100251 538927516 488681031 569622778 418137917 15345081 472974855 7949738 44878191 343849910 529680546 337373400 733914991 814901209 487363085 346083361 653870252 593979568 273519085 425976905 270745469 504238054 468710807 796592067 614547931 615536078 167125682 829141613 974609127 418367832 390286967 409813259 421881377 808165703 216405897 458984997 413201852 587478448 313040811 551851643 365313253 606951672 482136472 991072728 163556745 331762164 447676359 14594032 415544476 208335696 511301907 133931434 432163344 219657659 958856860 748409430 658660773 217695729 674272985 144845131 464304201 539076831 243813645 264053958 120192948 957253241 482497616 556417128 525838607 11294694 339969349 958506154 53642767 815580698 120785873 966724327 873205345 812330567 8025083 836726870 428693743 276674445 108263946 870751236 505271649 807235798 546337532 641039493 857628931 493303773 386010641 147948619 215367836 941344311 24941952 872409117 671272233 183095987 888636906 655309919 896006361 580424751 288188507 304823548 962656308 554206914 590362776 72966068 859651892 215460575 4478743 899906470 288153170 637288648 907117903 438440524 889006590 50433916 993676404 44002656 795917664 5816740 872828305 591469128 238324600 955480309 417980695 836476702 789395301 70901671 433829324 69963975 253766598 73525017 195621085 694980680 967810421 323648553 319567872 734239127 283531786 212449224 439519329 849074964 728094472 313020783 876905774 73667967 330612559 248656809 518724771 914603182 381845009 836217970 950112107 594755215 488885263 523431345 879980861 209814483 513548074 901573435 336442636 558287992 735533031 314084903 157891092 238432813 701782255 410912846 320996298 468642347 546354812 24832135 621178116 371028252 83471198 308277119 348819208 53841149 689768308 899998567 97602278 691322617 790702767 259624892 372794874 256251839 261786042 526942938 278316342 812428884 240057448 279558880 451857471 538019809 437479169 59123050 997745109 855544126 34452322 997103785 479618057 706260524 937709116 359971618 352479950 428092082 86508369 575312798 928768113 903469058 671409537 487409380 751680289 494169673 678076104 939023485 43584609 802303969 500291155 828617139 857194316 326690300 593435911 242805125 588385732 96750158 787378116 183473090 402414952 336438734 89530339 641515357 977388351 752075719 696643410 953893261 390343268 242458544 724693848 187403381 274594585 346166991 307613008 792254691 360765932 135419746 618382348 857369554 116451270 682309902 350891185 138552568 68671056 945182477 522792243 612458577 334761555 656500430 286664905 81144382 430142348 709124119 431832563 235721373 750079956 450945042 941085390 441052746 548434901 285966727 379396850 462801014 817234632 123391465 29936906 38778388 8324442 587888847 27354497 620797277 225196411 188770393 408508063 648152720 563409990 891894687 909611853 591713883 411443187 67849281 309679016 340131311 320552231 213773336 836585398 825258328 76499253 639055104 449039971 175852826 33826751 304433528 582412063 619320060 86902765 762624414 308920401 441613664 316912043 736210000 133661669 438912781 987720779 273708669 902157777 68955597 631345131 198160848 288596584 490500458 283929454 372845564 815301262 885752299 988425996 249837283 747488854 518133169 976653185 213653972 376502343 610432561 615888577 51202884 57260609 531930221 959330098 844238014 725827377 254720015 660208082 474137481 34609914 352975772 342048164 466591128 95816062 49274008 689218659 619871502 813656618 611228000 855256365 984980166 909183564 519036714 425282836 452484470 274070832 383413278 334846582 725241284 311813139 247706688 277538128 325230745 502217788 291283465 30627389 202385359 118946783 298607063 459122658 503080847 694980109 419195213 566409516 841279766 590363977 460346410 696038812 772006155 882757086 759233601 150233412 668127380 948092539 296044417 805035368 216081895 92366650 875683801 91489685 290327783 844451613 83459872 914875676 988269693 67743107 371780363 377329719 5458046 257395195 324342675 292561000 349041838 403465468 373903559 268455688 838356181 121472569 667081848 550539734 193336003 264473971 73958247 711003697 928207827 618814803 723470993 204996602 470026725 766613381 303707016 953557098 277718458 867750719 227725365 899898952 46833089 160504645 744339463 92093804 549090760 487152969 60646124 72847378 705711472 135295606 726798705 189941966 351150228 915216113 226073188 720475599 700108935 477358955 845118721 393980698 353630404 762098603 775529951 327017586 754663585 383204737 465846325 745765173 173881766 784840249 484043247 681238275 699080105 946305314 237897455 268692134 818221828 650756308 760385851 676482596 199380460 311807839 974849096 158962619 161791753 159989659 653324812 351367646 251426295 489518997 176195240 962087796 430773360 369343396 850145632 979684999 84966905 208043360 732337662 455668760 388879455 182605234 763013857 966333180 226046682 170531886 295262541 172294884 25381520 548768050 217721715 405597667 178104603 13184685 690643809 102190260 791327860 313723367 671301093 65660716 877530291 41783609 637022367 368443243 232084223 694853168 961213710 317931626 597001942 44367455 346797482 834520719 836404762 166838868 788852406 756650330 97771676 274545959 541562065 175287194 623704080 994084839 435258277 130310727 799745665 796343204 234652304 170375666 377929308 350690097 111815528 786501635 680987735 314883051 140860695 782879756 293101019 734056186 887914869 798870967 370590145 249711384 310334504 633853832 398969707 722946775 290786058 250266510 301311730 312415355 678140288 805790014 122006113 900132289 372195699 763188723 851546418 507114131 353555233 806144899 814186456 189031565 399339343 213043850 358474333 533416580 872551832 91070751 830575368 710930985 762164056 245672182 672978665 573106979 974267854 830351560 438419284 318736352 859123374 289563644 631740306 580462865 717694744 719593249 10816229 632586543 865659516 895174887 793746552 12224701 29432002 333820095 937059664 722054610 619540937 149745086 308195956 600696676 744227260 706233240 26182223 345574050 246919815 865930451 609294994 221835021 22673321 402736069 368889084 158854195 150469827 845308021 26355489 403172852 179224303 501520672 280880118 429234513 851538369 266355538 402882463 263466825 816014683 596124949 655035028 611599763 915211660 549706655 886025765 611207675 92542572 425696635 24117347 201994172 960260311 794970383 551072330 558341551 368813309 657137055 56495131 18766356 192600510 337570685 943823957 766028872 28785812 86731741 916563038 625164628 44228596 793528162 614906593 108882012 979968866 80535602 896572743 119665583 351814115 720054698 465915851 147763100 92445574 615387408 169582807 378806756 43603274 191148331 755478343 789122419 919023085 774649220 939851925 246350694 751227102 128705067 116411922 916221042 772475879 723448886 145716222 238500258 235278380 296187652 756611033 370254959 493083486 253563925 652360435 306409264 548260561 138292780 74132993 292738524 305422061 296086981 253050758 366771258 9017234 620282416 885254678 209069960 555738022 884618191 317477875 380161648 512580953 618487217 9573380 310224022 381168292 906487034 130596848 944149989 25204835 999934058 690032128 883754831 377032101 496536726 861019416 881981715 447022296 397940288 692821184 332895568 428183239 228596590 266799009 300979695 279333308 373091161 666116122 54968982 192239732 109333696 529186551 581989636 642369911 851554723 924686539 999475891 97033745 76539369 30465940 869249444 791884519 134338285 804503003 491167865 993818200 347591138 436232188 177400007 681616330 971273285 422867297 825432394 783035524 661899983 908373344 275052331 284946516 380473531 329930613 870579239 131328383 19518033 130540493 842915238 773546540 66813081 977551651 182045447 241537770 15879569 894561311 763098550 427282791 813121595 613461095 335197922 589551538 816199716 206056096 116221375 373374936 50975623 155681970 338891828 570125463 791705472 175245337 878955809 628566363 718020901 116190593 86131620 639291537 22393189 911898418 204367688 62909128 272676328 855922641 724490294 984108134 471533850 922956250 743852673 958856579 291813585 404905475 755725458 902822474 147882916 465176169 18242629 380113708 231941019 821455883 525000829 51945300 854290601 202028045 426979568 605937000 230288425 671834019 451485903 878378077 977029374 80770239 482154313 287354757 976911376 835532425 816047093 362940551 84891306 430286565 836370777 418082198 356253131 394894744 759130050 550195659 935954915 738402766 21983409 309527441 449211516 904149354 264767980 283083688 627171756 263155943 306252933 480104721 605192059 479102673 886520688 75370140 115058188 847962846 6449266 931587411 906934076 50057138 225866709 175659098 496731119 690729902 727358129 347168212 964001221 620362611 629453560 501911462 687379308 481002050 597960541 993173224 723330217 300044125 350191238 276048532 341857908 477388596 230718447 566116263 92090966 611211681 823431024 610472763 908949330 115577492 623610458 82903840 548304506 333022373 610583868 742226197 688744244 323925436 60665274 296831014 549050204 792150384 972297100 805365162 211742188 614086199 165655163 485170411 193946777 897000882 868172554 525588130 131559852 258197251 11361219 365181332 43616466 270633991 752585421 409606497 708772404 741676491 424752858 412842002 479953648 122641501 197214060 779564327 979424817 470010971 627931736 389072579 519196682 313743885 955024923 667833511 278010820 755253524 623305948 792184054 987028840 572238551 767769081 746053693 504268944 893655274 498842542 252601817 974889128 577463747 713898646 926070921 233164072 506377766 689540364 596240549 79906033 827229333 939658989 858713448 431829411 897030944 274487757 517737563 227100042 512512910 167263666 550165134 497546624 382005263 915949059 681318601 315138591 473274671 411285160 339714465 119173190 320009178 735137811 976992319 682035376 407525532 227622847 765646177 921704966 375191260 829776463 822912550 324183155 88829997 866554222 373562716 694892354 661923931 457531072 996451131 561251359 746997478 539415097 645737934 875396891 466689617 120860681 960782202 232040233 134376634 746293995 553256430 65227632 484968276 266753826 896378076 485357879 80715840 392423247 826857549 109813023 22350671 167423686 951385129 198083840 910796616 818240283 150441959 568526463 103432577 848546708 178492940 798790373 530988005 800060749 878790850 839203160 906790775 762482296 190088767 298412058 586933515 978022093 113146417 738451400 204466393 587069749 301849015 274308845 162070779 112505955 811222157 650214446 494805321 686457637 334164749 577016963 587149330 630041632 783662168 378069085 649780629 127932468 183272210 476497847 431208902 736965307 370855267 337033979 128750375 578389789 675039622 545195371 372204561 182711789 596344317 289903334 674939491 35342632 904741659 349927517 388059860 805653841 358874049 861431090 2197152 394722244 747723522 905792970 974597834 322295781 487656293 611891489 957416524 676767544 860057486 114178557 27395948 472539659 263390845 359314768 121287300 455493275 503407541 303787757 978865466 497846185 497319500 820679512 651388501 134645062 711736767 520384647 515909895 150818598 727066540 61611006 690466448 738595587 522532774 676348979 281768628 549201917 412699281 59562903 505607254 225280484 331707135 665643532 269165292 450940825 3348072 204376332 930955805 408597993 248346433 206798797 220524673 10905072 561497133 879393315 844037574 128356410 47174131 992889924 935999872 622849177 650906541 390808414 819555911 692095572 789836671 3287453 921926954 956956703 298665614 447031517 952937417 404039563 30141447 452323995 158028001 45386247 970014491 918600040 574216902 153331639 337803953 369567639 43674376 24098482 734955812 906260016 855345996 991372485 948423379 506314796 553029569 914455787 574916339 619508837 752750823 113905635 741992348 837186056 231078031 769083457 876180350 601338537 45803859 772506009 332362196 177115735 421296185 322286252 948290299 420617425 332299794 813286022 97441223 293449628 599051163 596181247 494036075 180938632 523225185 376952841 791356430 593539139 146841281 951469285 467888537 272638485 988389400 771315978 135623546 997758420 350284294 177283961 456368492 152652045 672114707 815441808 493376112 27937931 463271898 270573938 560433154 462799473 460604962 927979888 798425898 980230520 502956977 216820331 982803686 791485023 153843418 204293698 501301176 133942139 591106522 922453320 815029819 834432317 980868709 463987392 640375975 960710322 28956126 16538459 140975586 611379660 554722427 17471635 411435762 290314885 447670085 545614458 326943737 594616669 937558339 483603307 909212385 275014722 662279588 595658526 328209893 631325421 214970383 246591855 337062907 618086531 23304248 652676371 421298716 21135706 337403217 497082954 230258498 595156495 979467601 534586573 819204762 959684001 258115539 109089824 33332757 776322515 64518504 248346920 501636745 743520628 171098692 668181166 180227088 142461686 335907305 203986353 788790591 659108452 238581528 680190568 980933517 947915742 676218219 129883564 249879857 987494805 432809307 809225617 690283954 538398417 447016547 599422915 224461544 468500375 367934522 641485576 925932324 520586844 356577715 989221503 983335070 112374233 280447662 230417191 230764736 578019372 23123177 70245438 72344048 172412460 93767135 919038137 450574475 917735118 76346662 159610565 509471749 331772735 54433406 545022593 358145048 608396565 70363757 590734075 525825009 79223305 72588010 442710393 389836317 216565446 139899134 464612134 149058457 181925315 411839839 330167420 137008470 356143457 895771697 835676104 928624569 632647745 584105872 649804370 861050978 722573054 589848452 903461757 232675958 47788698 284234850 544717411 445845943 421094075 823964074 811034400 810996894 361256138 413187616 204284416 758922726 655324503 56704824 27100802 439995129 648881649 60702826 277120783 51198786 180694837 525163455 473132455 413282139 208440897 902144163 904904408 579206217 188963675 835822139 178444332 302826544 423257647 297185332 651980141 364936742 74367344 29324079 313021401 590011869 136187660 580802698 162631111 886057192 37019693 670757403 661288525 922694143 427091107 982721267 330956533 981984523 469769677 81079528 309132022 965897210 942726563 480143735 956482536 231456672 477544692 251981392 837128420 521940588 666172924 483688623 824349298 148258619 630165862 21200905 985980904 131319097 890121099 820184097 346217606 105437901 101651287 366064102 101948831 19565708 501689811 948286840 269932127 631348332 43726511 33770963 144302223 237423864 237668458 619987719 889404074 415359153 862503948 168872836 935918976 437021599 402701237 231860983 432401503 743294050 622406754 221762196 604930065 22396319 859272564 282094539 221422102 198423543 865847053 888246462 921169753 871758386 123813301 366824531 66545726 426463991 588919600 718055166 8735776 492074952 14404645 105790054 77687556 714272850 884587083 33380642 513175847 438158215 914590708 591498576 57775117 249853816 413924789 658631733 325082392 838701008 180590417 19043498 510177986 430968494 423732252 898048390 281489939 763703855 232971572 704220014 129977715 680153945 68602646 21234668 658785013 242213375 543680175 175493339 365988031 779858644 997106038 359618260 817922772 613182158 807976362 641693171 536477451 925328084 392616846 255055390 594786276 532021687 838083393 665022535 436407215 658808329 465687597 571118060 503557779 601624120 375513144 354680212 570119772 314717622 653864846 754640698 796365724 509073675 424050740 608652406 8801157 34901668 522250738 482674052 771609867 34321782 98465165 628814555 192305633 366358612 22856990 781282463 727037449 576661859 679430848 733756210 766302771 840951680 414055907 994773412 173321901 256209982 614927244 899165087 155869183 523048922 714821707 280260260 595714305 141877315 605522271 442491332 258896150 669093507 25532926 458456296 800416031 503830556 641005503 690411859 961790236 522650627 841317377 723891854 390278354 917713659 222120139 611741700 481275841 996258208 441974282 226117640 257197304 584880708 634937716 773139748 426313771 634874884 718224879 566628388 753080526 391183343 793057629 292120129 985803893 116084313 521578343 790804121 175997650 648957025 309224209 241040982 775062744 721410134 639777937 515279759 125446049 808195448 945704179 304941037 731583829 450604669 461356832 560819242 454782017 538021296 681961932 494408259 647630097 809622436 641664409 849454409 163433809 721438763 955400779 881649422 157309275 22262113 497350516 997981496 442778735 341581194 955055170 597226061 903911739 276232068 247499567 661376275 593415313 972329338 562641030 571592535 345709693 98920495 209087879 498996975 545305200 218837709 119160187 799089691 64452462 278460992 584421777 298253188 142126832 550672585 954299107 479093333 720621928 105873611 349124497 265033895 581852063 18832811 379051831 684040074 581035913 868628843 135255082 708830990 81511458 293281345 205842810 226447613 217983285 401238310 918069836 259812972 939484164 724064787 520555550 981947426 685854134 10716104 697382778 213460894 775155740 398771356 655090511 265423836 455470490 744372271 698689943 593675825 474442836 687150235 182925604 193373615 595715372 568004049 977381334 910486175 672976866 459070203 987040357 574190234 493390932 861957053 924708315 852533484 391288440 67803825 923454250 255996577 127421300 94816733 165855117 792159800 27494814 109133440 452361531 465947516 956383373 748050480 978538453 297507509 361662812 89943819 173735286 899134377 256078106 532520313 470660606 157579236 634441952 4376909 138794436 855876122 498733994 232684779 382360798 356080059 94734406 471383922 350131951 697652438 142690249 900482503 593384898 764970063 381194640 905473827 415753016 999253984 848680782 467286529 150948555 135958497 822338975 121458784 780419331 446246770 407124053 846552576 748501633 770821426 898466411 198145924 372470686 267867321 206760749 568986738 633716877 558292583 559416162 893535381 128466872 249535161 879145597 607573356 232017045 393136582 896974169 177401436 935250892 934620174 619054695 284571830 89091091 180199914 47998641 729525490 350196877 189732414 312467241 380712009 591484761 679930722 568254438 156817660 716274542 478391085 969683067 84100443 236150016 26122807 305497920 783543289 318127605 317026900 171611963 411751965 979125531 199690637 440964173 110973644 830558119 695620340 572148770 993819849 204036254 146444846 275502620 463846494 864753204 148742180 748262293 476223135 187508094 327323782 350501091 427161339 564437379 879156055 10975233 348806160 39502854 906563548 922461985 212220984 179379041 356244594 160627404 966277132 977224482 243987057 402753401 295788468 542888971 289941751 65883820 637334115 230603825 89089943 513775640 370649577 760627720 733811241 632810728 955020065 547283728 745846974 507286487 461401458 716254634 596860405 496116963 362705707 550458343 345949451 106013708 693983717 94847315 202849394 4630274 863995336 236368779 788033648 570540476 652761301 667261472 259941848 196597680 6178072 483532397 681068105 589511685 721295609 669532995 271610131 927184814 610197472 326146321 419587446 391270405 966226858 692156257 610825834 921675211 783840493 149414958 665372232 583510379 19890123 286646524 116547033 91408387 369600725 82101034 665563521 325789412 319737117 820430703 601215269 232764103 605460392 975983979 960968253 138305796 914911426 357166536 531092086 557171762 140597481 6121493 843736275 465566250 607175436 690636468 708136022 723215764 268811845 323282725 406707155 86715610 76701278 935942394 701500841 375247846 231517144 37243436 925439554 302121283 773161311 446345429 472960740 211503808 469278122 812151638 988153902 436133147 367330546 455671433 30158254 313277727 905816329 168013369 271642726 324846582 462570443 566964806 408317816 736444170 140815325 917326850 893440131 572961353 795919065 989812565 915386180 727030792 537361861 600011493 14903598 657757296 90984826 354034924 592712352 434199706 367417327 404787774 267139101 611410958 745699591 365986767 82314653 24726032 993283474 286253133 761267409 929187945 279529188 908781026 597573180 926970342 18812581 579141209 821425671 584800556 986547990 914883689 52091606 993146546 857895761 889248763 793489860 290281787 851768551 329959904 865881148 517202369 646869577 512668984 618551091 489331831 462819539 114445460 884664449 387791741 199025652 326841721 426632994 24083206 636252538 734220886 436548688 614067253 78582082 547243796 805459464 75507995 476788391 527887529 967396949 838162864 308803492 539161965 801360015 612661489 174343840 977500848 360311538 277347101 409804696 894825364 664744522 740973149 429427244 70779672 687489690 559261720 818010369 247626244 802698253 680330751 90249754 615058951 623035614 491086718 888038369 232040255 224837950 555951066 422094427 559164552 424458592 602938884 934712225 486750328 331641773 199526559 325901443 583663256 212956729 148023044 419676563 336384248 202354779 910215762 552483409 499511911 217980645 762952684 337568674 696877413 708161286 304038190 835943572 531076007 287738422 16903362 810218272 421459891 891969207 697547325 356809901 470837827 891896792 209958880 618114563 532516960 484492227 311122781 382576192 143309880 530921908 108604665 566077729 121374145 320531959 113300147 54306698 212993513 179988986 394936980 643063478 868794339 297242632 732106526 299080122 953912910 517233650 163950152 908888903 86597262 563627071 466062661 315519039 403661389 721641196 751546859 159881076 153062049 844161737 300879177 789179034 75300794 257166536 708159598 342343059 9627955 644584597 197971327 107291189 886337073 261357242 375097813 908819621 436739757 419511385 723380033 282226865 448938444 523436100 731318774 444436175 796861204 403157077 220752171 260187093 40656003 968822657 738301930 602302176 741019759 398079735 536259258 363919407 117965339 223873514 554281196 695770989 326934457 390987887 54912629 30868368 128906443 49889870 26362952 487474551 787698272 335497779 559720204 52284189 806076689 355857140 856537846 121460031 781015570 301882167 20387517 548071935 30822678 878356847 434525769 375182786 473395120 676969059 422885356 459860161 41529673 14993887 683664557 105801081 700749001 951197371 758976014 146547147 362949817 363210609 888839774 598535934 750058576 42759602 236837872 46331149 47373064 20325708 373427941 914357560 302106318 441062536 660790911 947801836 889752075 272823688 36911491 294343142 897310779 709884245 28473800 886372917 668339825 583541417 482856460 646511284 290046902 31819498 653312636 531042218 574490820 867770415 374607900 985261148 453970474 703188794 573547855 86695404 828814117 64979335 597097970 126939828 629664752 91364616 571194471 302845649 849860139 402154983 242961603 962055503 501407974 610218915 988730038 254228486 741232652 74564736 261968229 70486299 467022603 702025084 957729317 802697165 399052998 374105632 418475933 495782862 835356973 389643328 929950392 855446578 470511498 587982241 539273473 246217456 758059266 313998689 399291478 941436735 940078583 847482869 25900999 18277635 447358867 166153426 739802791 180842334 349601522 502040142 575490017 790175967 205888299 500013405 384022405 438623661 175646395 148700828 239704229 610941825 507841839 150125837 156908799 281256261 660996749 984436442 217323336 272388168 649632048 345811455 264904818 116890913 440571646 303669544 379843218 152317252 543735134 319587915 951936686 987995481 731048654 501152319 116273695 157482439 957835228 754521147 678509913 853061352 383842596 161141819 923296242 596989512 654029809 457044400 979728213 423145054 802951937 545685024 363086660 175320923 672879859 898860319 480866275 634561335 896453874 493111915 933265802 666031164 649029193 271295037 754065627 66543528 752690960 448299907 870349183 66612697 945931724 848522833 566297890 28083969 16947558 784169296 523629565 101617831 394001195 119454277 940476896 539860821 547341738 314254319 825758586 503017061 765372656 285459061 423003620 477371146 693542886 354729644 480298757 720037205 123667792 796928940 769935882 319233639 225556288 507025646 741792175 354071119 323641143 897603175 885453588 66565035 233325007 19735121 157736951 328435963 714765917 25959997 896142500 867213492 279628755 689677323 675737273 651215802 604309473 80075679 406857025 793656286 940329174 410634268 15718762 625898656 998848205 625000236 12375745 261441226 171995987 388679381 500111255 958607024 72012793 684574168 250841900 151418007 974626627 312500064 22353745 715966584 126080150 931484888 667995439 224470631 569097838 224531006 552450952 463213925 563004751 28535465 539865150 102236981 7038563 237381167 798351326 489550470 260440629 104870996 139383160 171142001 812094804 832688657 703446678 583943097 898523451 983012461 218259516 673603014 642367504 538052376 508954655 828700188 191378163 373465404 36663935 854223030 338032785 749443601 768716146 11481253 896514630 981412064 456209218 707763664 26622468 749021231 240574711 717663108 526192615 43025063 370199838 543575718 347900847 934638568 198503234 524298931 129863361 262352561 280303987 44853156 765104552 259498561 864464966 577277228 931122495 766854789 113616189 732840567 244257858 695032788 429308494 455144866 653981039 766424194 21281821 366378237 841168929 986586193 337072820 840641399 482133895 988034679 768248700 8986772 278686341 185870646 974353321 31910875 733658683 769367011 480627038 173906941 611639182 726449461 738792283 333804942 48457893 168891490 415842645 846990336 490543091 751731305 679497155 736632221 530612876 815342930 954589759 337172347 395532723 450786714 252892874 267557858 539276765 729310481 660418006 907906644 6836827 248211789 195225178 104576068 71398249 338774172 706772671 648615714 408796973 912066279 642748419 899082413 796894266 380166282 380859404 636244156 333588383 32031532 126549051 330537610 581606715 441888964 379404929 64317223 35421122 966469378 208026856 596871200 267730868 267952412 299210351 964859505 558620197 408337632 389101715 532172570 689568721 30500503 363537619 938925488 133440898 808785867 777854417 432973667 686323761 361663444 931589810 826146197 349659090 35163403 63998874 792990432 484417900 646705798 94828908 205030340 238751585 835650269 184798493 469436933 316909589 452639381 892686188 780856711 180084753 932515623 812859332 176534277 9846713 835760203 778658768 968940646 528378193 808133962 888471732 901765192 138143447 172278547 260625336 663813245 464363000 943972757 809304382 197099444 925248077 990611836 759547754 984502946 926979003 518881207 541954840 649206260 344842155 252488386 819270863 562004867 988466624 216592404 639622373 633254955 824479818 647311595 51081847 789971147 759167975 684325628 339798828 189183032 711888460 592237611 893170134 251058863 906527562 487302949 473966265 855402043 461787883 265866526 66181524 286498037 5000627 529766495 505528916 295791194 901918520 185260182 220234325 123076272 973779549 111899384 543693429 921240400 505744367 687246658 941243797 769293004 335770583 236959139 451429301 620604892 776216129 38588581 764042300 481457938 482247702 859561465 967049435 5738284 674208903 867792172 383352092 171327780 739604126 476930452 705915598 944581946 292642052 545704676 523162232 720361299 403865469 420078285 52164850 518648877 354306525 407135031 346441957 716683079 240433419 57266226 396787831 348424161 26992551 203353335 86415844 353555796 459799954 143789050 223471128 164874155 918882292 859166905 83773071 235100238 305606335 775421837 576517101 555986830 970566467 787266284 658020599 236916006 965496710 609300439 463715187 574521813 795939679 210816215 748798211 513011323 954962441 342976487 375219962 910998742 497904884 962054862 742988485 620060327 950675676 187651718 290180483 161030257 548475169 368803408 954543580 283442934 249287696 999107717 659246727 836283109 421588231 139457657 423969242 122981079 763987545 444814316 259801436 48697484 301337982 980557694 693787474 117875473 913048434 979799144 638963423 640760307 72653319 709955265 729552982 935455148 276558828 565040510 866349606 264047335 711948896 622028327 211738818 824168268 616387307 718914111 428475361 585920665 482321241 335153977 100319085 360074054 423357602 578322758 147158075 149464139 50709185 795850502 534583497 168013488 142321033 985655729 695426447 308121937 762892326 72800480 27432361 501675976 421063514 778430726 147473822 529767177 137361150 502059345 656442444 392336177 802956693 879214889 856075772 564484094 862925966 781345274 668330682 515047737 758228888 206094179 788242896 6713748 948373375 745547082 238525952 292984003 905695150 636326975 360725299 298776982 484548907 685499611 717542862 976956682 979775475 904508947 125005253 865029127 559577341 917157747 441590037 61144749 658330139 390955512 791189044 240733972 48231161 558435109 373525471 231662330 893353091 177450991 110445131 407230927 605035661 502591593 351439777 246467922 359510035 756878539 158258708 808004489 450452897 747613379 150345289 537392662 601280997 530814528 23855653 602666503 639529384 853609457 480702288 342942482 996625281 162284421 402886059 938674542 673845156 666525617 919075049 192427080 751112179 499269170 591381819 290811441 583682252 500813168 888348020 516849703 551371983 211843865 688438291 60866428 280146719 955248540 506861354 812809243 532924458 815808870 916266804 218470446 425225845 294894850 860636032 569163309 162658046 640500727 289736175 779641289 214055628 550012337 432058620 274070898 497084464 459090660 136244674 666650093 910500695 888416553 41119118 685376267 746114100 801766250 971582892 623280475 813368034 121770413 986203083 324317268 972446338 737582892 92617543 447086675 151835451 704255367 826386044 600891327 307595478 359861526 5858275 282748948 74692454 225291990 765799064 919638322 582487309 830301032 69415273 844884000 585189929 736670960 99891926 277279387 626933876 107106943 847687727 588080997 130870633 391510176 838275713 650444017 588408557 201701965 681623404 43779723 172185489 754274974 188700986 328218188 164093016 263119737 167016592 561169956 969090567 782985825 331391329 937102936 90210205 377498370 537490369 285246697 985325777 1393078 101057320 300052718 75432753 871230335 996818354 792529657 919108943 951446650 152132354 843479218 365864114 844010737 235285836 213364116 294215486 47461294 871814107 970413037 818208655 954026363 621786714 700815461 925474036 112164686 696130544 59268896 604467309 39238772 444422042 681442379 868965340 995132778 291074860 915304263 633162522 274785425 781654190 658739358 389195712 10957267 746801769 918242748 877757480 938149580 722739565 510813226 306511138 872746816 791546943 1877768 33242858 187011489 96980291 873756207 218325583 924916259 735774003 124559315 510021939 112723996 728151985 48018688 563176752 172011670 833717343 916529188 787037499 619686206 280620102 712302537 680858035 280281524 15690146 609281366 805364776 111406368 528114324 249176757 441456831 388223572 821764997 110198505 854888405 409171827 518883673 33395833 364718330 669537529 328577655 861992582 65496091 889368890 940484538 644055420 566170547 465081787 810630397 337453126 397618317 276578086 100152815 8800109 438183444 582771594 417463686 406016593 335536063 444443334 378781895 754843604 213120804 857164731 334983071 333370952 213890202 783471625 74815708 223421173 232505142 955525430 169666562 908820422 532819177 754428525 199130521 494624496 828516087 185811163 105874531 333880528 525922156 759823988 530139919 496019167 739994324 412490527 793841115 553378709 415507790 136462260 689995930 673689149 161176313 181643650 514378160 735950230 35200041 700942898 22025819 975001314 158560097 447905819 875076570 270619803 111142193 112013964 915018800 31871208 546980793 835108180 183977713 820072918 270600485 148393495 207142266 986639139 119661663 936716959 287879827 423709581 561868735 39034057 156670281 994372058 331343461 194116172 408578439 827015754 719776227 478719711 775541880 785735322 702913790 794525313 231018213 810156849 285604642 898197627 244448141 778043944 15879749 316383444 232629587 715542149 64807102 393140703 543763626 697616410 946338276 294751839 187248036 343530935 590659785 765967855 540201392 843181066 968395294 850045629 734332962 977568513 798104750 457166898 724168300 669521074 596096106 176393355 684515373 305828776 874935794 355607012 765270745 416084196 715641202 476745435 25773493 255773985 697799114 741881059 567371063 274767798 448928152 516059190 955476912 576415440 178692783 71026900 55721482 89278147 551406443 265458390 54216953 655969606 71301542 57731948 292721933 912084940 320136987 790543988 742833281 131647553 534578884 839544852 64578956 942006292 965031758 724024694 449485595 390443060 359068369 487416013 333095061 555903976 380948639 677621193 674986801 938462109 255897006 977131992 138794919 130546391 12310307 743861536 910862440 562906701 743481062 189343274 689008233 300723908 744232591 352302628 829819057 837329761 466185228 7283113 77775686 391771678 556304571 971650087 766028815 174855087 67242249 820096320 893983833 891820010 574004675 780718635 28646957 972413190 301964464 690353856 172749998 696770372 484916583 726700649 368541556 827437170 884775180 999730779 658497112 457304589 288114134 552907348 591242188 331286004 408180988 536426127 947468781 749670907 314772766 372284292 563012868 294713786 219463754 565407391 665479701 113315180 357267577 559837254 861370187 625188274 589315498 248033084 182114886 150985107 705123275 131906433 857295034 434577983 32536680 540595850 956321450 713009313 203379535 180869817 289440614 312819063 735837868 800638243 295909001 929903049 661270465 434336240 81811990 105169854 474800963 224298628 574931142 475691624 736478114 29214115 353502570 280634982 257006706 244720460 421970076 526433799 620130429 275785378 150010890 409137457 419766870 641547007 909307757 927119503 326718811 543088252 145402229 567785382 886743678 498570511 355932842 232375559 279623107 216813997 707105777 847416454 57735032 64559265 258765499 841634563 915500015 893144398 927585364 373773124 864343420 35026917 968951905 91046860 942181887 222009064 804458571 747147063 265687578 11556134 273645822 787768315 577359108 958030624 871457210 815772963 521943881 935940153 331915137 610823505 104342738 329020893 717790940 604277991 239587418 162387371 612570204 35962428 156599059 412607011 75173073 737449376 39653286 253938308 542902597 432153213 97325551 91958248 80808679 449139289 399680385 79007454 557677761 903980525 481962958 993368971 896400123 469806052 319858391 566169105 629284152 867804439 947169776 950826804 512160937 305468367 243210649 916151704 293225136 246602591 337828597 606215322 681110656 619765454 24377935 771159076 5214521 276896946 124928606 925857789 297621151 187653488 415838945 761024230 723816757 636465558 729983297 802011969 803575475 765592840 832140843 773202187 32948316 547701807 460489382 304922711 337625278 850290387 233225085 463802333 363017909 634869191 883683483 898575271 699088121 908240283 836456128 101060180 376440632 247465447 437183175 431984867 939899290 664682966 282698009 136543945 489228127 613465350 77300183 824167275 915949928 991583087 647579249 834345537 224774256 671355045 527184850 892999354 365602762 362571314 650553257 262860724 893088924 617591262 260198104 754201535 89720813 400240759 229165413 921164730 166221862 653037452 490458291 385525796 239116197 441322747 780133677 573143677 186680480 952563148 21101180 771780641 527570741 46692823 383784052 637659231 158420243 406440792 502453556 731405902 480186919 551280956 280264987 366582437 337665710 845871759 657603497 166428055 906012691 254246057 869992889 605386452 719339574 986343993 663947771 386999033 303428370 138187726 512252667 895544227 649966664 332967975 25389954 640746766 521865843 596582743 170719199 245609546 797800744 506695339 366625802 89672631 246376661 761570406 90362098 367658970 866526993 522237693 320787030 450801823 540960178 850476455 289627527 855576952 699054365 260201186 165070788 146093922 675308885 973692480 383125959 302276669 984252977 393440462 671296309 885063647 594878188 585664195 922223400 329248848 498253600 103825109 421670306 976003083 126636224 606171003 387788924 202126179 540408847 836666659 456331329 398351995 827374735 637596489 435434999 282710213 232496721 294012904 296625039 242345520 981139643 972560308 285796694 985197203 504275902 82964445 588531994 573709252 298812639 415165932 98827872 756595200 744158377 518739619 631994423 552432400 741425533 295996964 708840886 415414371 751077973 100164390 292964052 323357649 375459033 740460666 829879819 685903566 236264670 77304310 125695289 351612012 868128913 505525640 295942012 267101038 77081079 551915173 621001155 836247091 992423595 424353072 807283292 869426356 720959386 626478697 453344205 808008657 771260459 602069418 325237620 507929361 381416937 574461194 213938440 692504587 805049277 864206242 595367374 671261978 963109589 179416767 549549722 977915702 867991263 501253959 613388220 289397233 573219044 571736241 25417362 571098087 404526280 117806102 219700029 513259695 517248920 637338713 167752544 249419423 476601230 631988568 131909298 766334505 300802962 614612229 992895317 76461816 412276539 815655354 560385209 678351522 292685412 966307515 666945339 746950585 391351545 720953575 214798304 646262219 447454880 342764668 159704529 607656417 299669979 328770869 284704312 324385604 278516430 57947862 33957767 364796479 622248658 769805756 632927620 844697781 425201594 132905041 667614406 28412260 581597156 254929649 615533437 747277925 897990234 619299099 583781807 252633218 288725325 392255653 566034888 27113717 969211933 408044393 145214499 410182135 846089752 515377526 745788599 561722101 812301411 516092042 135331066 772435224 266751118 545526233 809795798 968234609 803287010 682086860 999613105 506030662 207077772 668576030 74098996 528902098 205779997 550661353 509372485 904893909 127517029 179309838 991527768 251149675 587043285 507810595 563883887 670681839 219074530 439672970 69368348 812417058 702904279 557765545 450036533 176724891 172375384 185071200 842499610 537054757 892914213 55326338 597627494 937475464 414640050 732919344 419470501 240396990 506620004 147211807 549929640 830323434 654518768 500645928 73358927 221626348 761120793 666646364 879898041 537335797 486223954 71349356 284608198 547823116 193311918 765575226 370783423 253613409 210777901 561627070 60015943 817151252 460457449 182395663 101157583 250545153 574620976 282568542 866734239 292089602 659260919 308690129 886929781 150947531 737227579 103406180 413043297 123131804 887960800 988855916 721198132 800404375 614867116 92961027 426658744 660413779 295401421 729978604 724038438 485817990 309812225 326832120 492447262 588735957 310085056 302019997 358865389 279284854 852663855 950634863 151424090 978572353 190890414 283606393 485087028 626552373 369010705 680560347 213877671 265816961 484377327 425210653 490006426 963768204 538887544 11317708 320054300 16534052 636700117 830084063 179881153 864920644 29385609 602512512 785268215 163487305 982363156 913369062 167364867 267185148 334182889 205600126 691197750 359598820 683985578 332629796 965843988 277175650 176510497 408987560 44188489 339421373 230676596 952866983 901678086 392252818 291711708 992311931 218149381 992251525 583342311 766440706 296431033 180664509 158508425 265300458 73363970 777448446 675186692 93087105 291813559 416358826 68784632 556779169 432583303 73828471 121892697 569837964 683862928 21539539 826015648 219263004 246869334 962765720 805811143 383965399 292216337 162414456 691798338 751575269 512318982 312090507 107881295 689635502 34080705 131160014 751458041 78115877 902986402 703341763 69657806 644187444 51157482 767242389 35329412 983530921 235028538 328424261 812367351 465720676 147425446 263191901 364407121 420376291 383082187 405407278 510361762 499147310 376945282 986313884 877589210 215273796 756362394 375464241 295330589 533496171 657858111 357321939 317587575 103566771 293379406 599932040 977125688 343197577 829745761 623064803 926125566 64215567 713762440 897106817 12411500 526432473 960957109 863430431 941392056 533446051 851557143 344403360 430768641 623389313 685841623 402395457 612232304 503389623 989230960 577594786 894982789 154157848 747935818 599410408 498717900 693395722 308700824 824816633 634369812 228824089 465629117 80715990 734838511 383315824 470546888 318128415 669325270 424582706 315861905 732798700 360057092 667925334 259410494 374198043 944357557 647035987 360074684 958836810 777376327 208880002 376822981 11902307 566144519 219930615 341726269 81960241 57360218 830878265 882995593 967010405 626630718 943508992 603846164 140088517 754735948 962232672 625287256 908141679 825317590 130708285 242749027 711547947 954153376 821205946 209737451 265491477 944229794 86223980 41388349 647147452 808740610 270880883 142387489 937171069 611388599 631509583 978593743 399242267 990619742 827807788 32822219 743014524 86682363 540302986 787008797 891192108 504579956 287695574 824206905 733914751 852342068 331801456 211537438 977082141 763187455 981648922 600836975 304775263 506866492 806872256 624846492 986537786 152403991 433169491 170015208 543804491 728784323 914186543 576142827 60421536 881796257 455684279 119194596 663925094 901750536 686704461 542741475 801411536 951222160 752470173 668440068 181573710 910733711 624281731 614955326 536057559 37512559 349757385 403596470 563695719 768272619 340110982 94241318 345485249 872210220 643457098 501382057 450005526 808424768 778585571 761493970 919479121 949730669 916590216 177739886 915872054 997384868 77541293 48419675 710950511 326815954 900574963 534123184 640595560 359720501 541549145 594267668 317959190 39592183 411063294 316848666 860367711 5822916 986679165 366211707 338561539 723903837 848557395 229233600 969580327 324764655 224947330 741580150 373113758 816551991 960123685 605499794 582147064 497449872 958900343 296352055 578482760 900315903 53858545 645120127 854140087 41894320 838209418 282164893 117988639 837478624 225246985 725873101 891482315 560230081 790565784 927829955 927909723 399921386 608131028 415311877 529020375 188004221 639160253 511470129 242929261 100090910 413115667 345597464 945286867 224627677 719003457 197941826 301077893 277760686 28391439 185928139 121564460 912471440 464448516 193323365 372122352 94005643 341513160 205876771 307028440 134064663 291495679 148528130 774607979 860603702 881788009 161611620 700535509 947887179 634949748 705804719 400133979 9280590 322804658 635949188 777719870 70537090 31975196 327383037 933336729 453764947 650562227 390279575 684982033 440053403 510378448 404069358 281990820 21781642 408988658 365309407 30083867 447367935 307785959 313382704 180987043 403929221 327823355 229864119 318389361 882500276 686829727 852912432 773199037 743169706 439614901 58775661 97966262 548322338 444572907 206673914 611762247 904726114 492005502 240728061 842861060 665049203 146166719 429273340 733345778 578054899 446927281 939787894 10560806 624188951 424059578 452891125 682024896 470094535 132122971 720034317 812947495 763023319 569067491 947051253 355040700 955797395 775983523 287395757 741454107 215657387 981866458 53250086 238066588 719108166 845832707 368875231 722341462 915533453 474457570 392486697 450513097 990008025 217897380 880279247 376651991 555245668 866799708 90535500 709064662 184072787 659325793 412087482 166162697 66160784 265847722 488619366 17202857 398232065 602776733 582808895 293455461 849513484 926419952 751854425 332833951 531966172 916743170 309134850 623848210 907880164 180517292 236812678 540366563 908191435 983004024 535147508 90152192 697560588 540849535 668886211 568226564 431817818 594160809 509924525 821704222 618682120 356580900 685760520 302311091 429216359 175810853 240769022 82122858 573414561 355283932 591987430 381469248 280094515 201133235 963293409 716061549 768045214 608013352 651801967 753030372 443885176 423013624 846437817 709236851 897314167 847729713 101382488 638128547 122408994 742720211 563587477 295729136 390980877 744112626 866110059 44899680 848119146 828816122 943298162 186086176 979743261 991991939 247263353 617120448 149087301 352005635 861241455 628784013 958582392 781133275 472578457 711275827 167729136 918821357 368928717 395848594 372466271 138875175 123954930 452383021 18493443 341077344 156948005 827615469 397718285 836620271 56871919 762866207 379030116 929666923 978980233 104700426 801646748 795673187 797542854 59313254 611633995 856765596 987916034 389441052 963345897 618271346 899331622 728926716 73167841 105215009 473216452 145004855 524504953 326785696 605412883 320188959 205718682 106489058 285162200 359512513 786701726 688422486 612160878 812799528 11125713 571384309 561654231 572163836 319678139 289875846 425540615 260818415 97590793 215967395 688985894 522688105 764056492 253468332 291360160 24353741 759793119 425887895 174246609 468761042 70287132 24083829 292929805 686229866 68950210 480048073 193886609 911704020 384912052 836947143 362335664 11377685 705561013 425030247 185433571 190760867 426615488 16749014 783469422 695806800 465999683 981474635 166556833 779236554 331195728 292257730 112080009 831039908 967348617 566198101 629870741 726781852 420689078 421703874 501471901 39736636 319944932 906083173 789555407 414014512 168907643 738819117 771893881 476912346 168151083 853047067 31663210 659704054 399242589 750962267 208190874 952917862 971897365 364433472 190574843 352193509 593950811 266090764 896993123 503702167 275512420 564689913 779648836 452791078 152098367 97342563 845672543 56265231 185782421 966074640 374080264 712492934 993070599 219280693 674673629 461809616 491588264 189633980 810713815 160789946 901359242 841360777 734036837 291250481 951151773 527698484 329162319 601508674 98160072 123367919 940157156 913320264 830234526 9824157 155765128 755193122 218455250 914143831 970199508 462192828 67988833 831698648 26929546 828623077 562288272 394971502 165648621 515111116 892207764 342466436 936813673 980302771 490670556 190894145 306479796 65855288 332005044 551411419 131197091 192287385 500842173 918250233 128329837 733971217 436638363 40964467 422080191 879085735 504230661 485309501 388742867 643163513 579634346 856340261 524821054 343515107 410855434 400702139 559286787 274480862 138571809 182475074 496906372 549213870 79563150 346064033 422029632 477308896 374141957 987692794 441326591 515477853 205543759 40004625 858580061 812642847 725998430 578612027 99100784 894499755 217916469 713335095 823414172 274816434 580201635 728871452 798869215 868662922 116892939 156355438 663238707 926946503 946662513 402630786 688655441 263817571 471253 31252899 442981409 983384649 477446457 640461596 614786266 25150907 435531945 502497091 378776011 312882656 983497954 586925682 375127992 412178819 33649883 158492660 997572530 734615555 963216798 727940944 13236238 38016461 307346700 910865690 940505022 520829614 959279601 918449199 459665495 97792277 36451079 333513173 173029464 6446119 417255667 727779829 404355201 42509096 54108833 767194850 999765615 625346358 113953766 191991213 965269441 249707521 786990886 682892130 130347867 765753302 81493288 532907011 342971364 26211112 428184043 874357043 50190637 39865479 761593954 430714634 554492455 785299725 518339428 691922574 857700737 956466327 389985632 498506154 364919916 783413634 31208582 964145800 360608402 449534530 407328678 802467443 391655645 370570938 334345459 196374745 113623323 353093467 787979391 296428524 68493997 711001900 227711200 556274460 518145841 450112234 297995870 745360639 400433029 416439945 853263735 428237847 799280101 703880825 911858079 287473215 316592241 554818280 691429215 76981421 705926238 868011572 104669906 513490700 320550358 957971978 235064430 657737002 296664720 352422507 228423825 748749570 611255995 521647022 183561455 155168666 589648877 800834194 160462333 131239306 244017930 838053355 444711033 994297120 659091808 594372197 669095341 983230536 49540503 801136532 630421052 523979029 182705286 907599069 683837435 463641250 148141950 334116217 922672727 558727445 258001620 596413691 415177529 474040780 548464992 722483317 423749320 174858326 545354607 671865875 808538398 214205894 983510159 69319518 120748638 596483110 561716887 695739299 497204176 16828282 52310135 635477958 740938731 252292535 205174152 377442702 510445627 55621251 20067309 662531583 170319581 814800165 177704176 422390572 189826755 779200346 890230060 620344027 386506655 210664230 937059046 589712507 756276858 520468499 721319433 464903255 992881579 837371327 878587865 237313202 237663007 405215502 270975343 549604540 406918212 499125259 140555417 689812153 803962257 633007315 204323272 328875971 438597936 686165931 463053056 405622269 553700963 342651569 147795568 97585580 514468126 44880554 384321750 473156660 884874478 827300719 383616350 398480000 820211413 601483379 82955609 257278249 989681207 765797585 366400333 415363531 749495547 149256328 105798684 106846651 243405075 8091128 605677045 892950024 248771978 917811171 482906233 330666161 739296099 44932267 729161875 344419459 689838628 70737786 63663250 135247930 557284358 177474882 306092967 419109180 314831434 209032934 866454643 62572034 227662934 310497737 235770615 544959666 168456099 848185753 788557434 726967581 687495147 566066968 129779952 472607905 243148517 62092317 390910098 344299692 93096216 992826656 18032100 24665410 539107137 170721038 433213728 617116120 236499631 66800668 495881071 67535887 210628889 344569350 258474504 833921113 654811612 651947345 80206087 652106721 410311766 674925741 605222354 372860605 901887038 739591179 374586873 761807836 994665495 650796079 997831802 926507250 588172836 906025619 602303559 236724597 472432426 917523273 199883846 356496473 439027703 592868554 73147703 207092467 374481829 888287292 133069712 976640425 200235471 550112612 278986525 399328943 664409615 14582251 200150045 458068499 355246472 983490237 112587812 538064414 115379402 78250550 319944933 689673886 576364128 608382782 595012238 737334795 855105135 188357363 347832435 678261889 223695753 476166057 692517116 317871113 937017330 375952353 71650775 595760658 929843880 458885792 208148858 767150522 20319605 572338971 945470082 95585602 212826403 248494577 918073775 55937364 411551948 952673454 454431395 693819740 100032683 251275988 580870396 592542704 895482047 400626014 816772031 666202579 615591495 894254863 862523865 699592758 437799897 624936609 772766916 318787383 244306801 521964110 807510696 326684330 20139908 770905734 174598550 494643854 411647960 590079850 584878785 611002583 666850946 46426132 956622105 278896814 43680498 15375912 205780227 847994050 399564608 291393608 111048161 379494330 298969581 480173483 910630013 912441301 259041538 224950515 450461839 277983771 29374599 168371776 314469950 232745636 769590974 45500894 224864770 930531195 710453003 544058498 62650159 992842270 538497798 894773129 711431563 108937193 596201713 457698486 421273205 660947506 592597541 614664060 430611559 489034786 338940077 68772455 172939315 571102540 527632126 554840894 15622474 53484941 994656563 550466471 832673539 691293344 411724514 958334648 855724577 941437621 742044132 978226643 316751480 577073502 991139195 599506531 601588115 934916230 288008916 368186754 826603491 392112502 68427953 426840910 846298745 140659194 916283075 119310973 993144028 739236807 879797948 999738028 284735893 640971002 17008777 757105142 190291667 950919371 1042683 396032324 571554022 871357007 211992977 656212025 62117551 600203028 14534684 61391929 223742745 542234843 226329793 222165504 873921450 273531045 740401525 433750172 673275633 663255778 235146275 856003804 895763884 304657011 441102655 196717310 93697068 500772786 164787127 345752880 991805371 442498615 648238443 931656708 88850890 86210823 867079326 534591183 202093997 396130878 990502976 767245217 424778162 611893425 951753942 565950120 290731841 237933910 324410756 656662413 622940038 58768828 587378391 114810976 230168120 823944298 999235 521733723 382742289 428050895 481020192 294402220 531126740 169749508 983901643 359044677 19342309 631165363 644324681 536112881 80306987 461624187 113173149 290633497 499902432 651903884 662518435 487786723 187858791 511118892 79439609 687013 825428342 22745860 801623685 520117352 617232685 258611238 889616457 710219111 347339195 666101245 317374556 718697992 280186912 455035017 624162768 24267165 939549588 607415782 206013057 423295900 912325990 357675533 727400202 528661758 449609094 696133493 735475502 737160567 442819536 149042090 889109649 530677091 558845911 116397367 721820164 906539452 192204579 287106466 827104435 508049396 31817650 89916344 535124768 65301008 44717163 736481967 916136946 409582407 308233991 745794423 684242021 767195517 559496253 749490155 459604600 156067368 346495409 316382194 393004809 527506623 692071712 850860490 983728435 171529275 952103095 429700501 878385638 627444607 250234615 213175090 751857609 339026293 216265952 921867535 714971421 224827788 872686612 6009869 456476260 834688627 428895954 819713055 861091853 551710499 35641278 440792538 453467435 667789509 82056701 155294953 188258347 256045616 311868140 180591924 530529392 217898736 602254371 425872848 856484553 8107202 5233353 408140148 804605185 207578579 417392843 984725342 317678622 798565229 772445068 743150772 60360612 409659249 370385994 648907465 725807546 186808728 166424157 404189234 486617971 156366410 297777618 901920223 291267483 836753742 619519902 822241368 164519496 229876984 536598963 647639901 40695402 562272188 196344894 636880618 48133135 642452221 827684421 807310425 693799607 283157649 244982357 194906127 951916489 5938719 64378462 72986081 11108107 832365452 717371059 802476736 223535287 624914999 972646987 112504620 943764674 599625051 947492841 281419094 816757685 296785898 606749632 786610644 828166412 481442446 137797301 401469559 243786631 471742151 297484444 787868483 191940845 793597290 199915269 4986192 768179944 523745330 568580841 901173562 838511540 751863699 49923056 871993134 592072618 324298000 851187915 643277390 69033115 951020615 869229813 155406643 146779587 822603184 490927074 350003151 741200486 576853315 486423443 93271975 113054383 197091602 268842029 70537445 759503739 860299628 782043814 339040724 74023627 765929911 730792179 803418742 247284960 152025761 586162181 912336732 56023457 786248379 651317755 100119800 641073165 970950818 496342485 974697666 651573137 721886375 731218916 618657434 40017171 737139689 293774489 201291254 618604870 147341429 10593510 679288436 423023621 74767126 656507572 411574105 273610956 84833900 549558291 182793512 306357754 974486587 551636047 492168175 504331838 222647151 183238626 509697797 732375446 348387127 521757905 34207725 340918788 597609808 600983696 115922640 180997922 338775277 341007 490510061 466217943 327807743 964203985 540271003 976556754 524008003 315954515 297805353 849046697 972660086 534817398 242088724 19722946 417818671 709777610 207339784 356850259 563656247 963456588 862265567 170676413 862992910 235433750 65487931 102421989 39048844 889748886 380344427 739217197 534549250 59904125 885071781 644656611 319554356 55172473 866155206 190719248 678469665 653825533 498539720 820387034 293172558 711601093 748552712 329023650 827699642 756417786 994077113 883243433 114906063 860495028 819405360 234097241 706458718 317941050 915914338 89251962 320604925 182404554 159535856 804573528 399232440 964502461 548964514 487590511 270405745 560195897 802263383 209959557 323806761 885488980 812379480 632333762 132793673 377948612 168727770 636523832 720483157 207839207 984478719 269064166 813755288 271936751 343288661 241510829 140782558 574720393 891681652 229794657 782962175 882784992 724322485 155217578 60830388 158974378 182435737 411850225 776449542 215485833 798141018 564486917 624442128 604401578 656625152 628057594 968719209 554547740 541793081 851196658 766692379 20355508 168721606 197467319 553658907 971910613 337700795 562833164 353722436 223757871 729284677 501531389 141986973 158210233 518406439 198230648 852830705 936629744 915674178 91503059 91949019 639178865 537992168 415327371 310618344 158198393 342157766 639296076 574064168 449721523 490055081 218887485 422908163 113576602 72109696 72654440 94119557 321435211 880157951 176916385 497354631 604210419 990472892 120369254 431705936 635309883 628113436 490972065 525955569 492871257 52298755 24284308 510649561 206298350 908792562 943758648 231144126 163674447 42148016 638828086 892422209 640770592 57336121 705958281 612992037 142904388 365148150 433768389 579609996 825115926 727326802 154241402 335166473 139924327 875422231 814203487 110284227 810228007 60281760 278974185 904225815 825159078 252454142 676084864 954029860 85457944 835144988 767260584 912852627 643105781 352775661 365171198 492088875 113811148 215132525 377119804 197775346 178797671 932277154 320887723 568418894 482753743 734795626 115753603 554476572 448902516 856234358 157943447 515895664 805771495 129405318 361334583 143243434 616739791 111004510 907234397 121770422 464626309 149664804 997398191 17607563 685235484 12251552 794116354 541014226 6395826 105914275 545153583 226444949 331521131 922326203 112899176 380412075 850675338 54809771 351683359 525773721 821756592 444219302 645668166 822588969 388852447 395986730 966112471 751407686 599794072 272253612 681751389 134433985 211985394 925966033 834908277 962834700 484471933 240157880 480559114 883947048 291132437 396752167 981691370 510988992 301584366 993802473 997800684 896365970 934360031 151340890 682414854 911130116 760443827 910237619 326206301 342613772 214424921 392173096 523521071 575098115 727030494 619405507 812261984 193360225 10401602 201971789 457143671 141293755 89939 366607077 969732858 714067437 586307344 892546137 54355687 60727528 525635250 96576215 477916608 571232755 101485878 984538705 513199476 37988103 435563004 795252877 686660983 405529369 41567077 868554122 724931910 931412770 807225033 56994889 808790341 203290298 300612842 644582689 981233686 909535429 970062499 47974935 345875441 864095872 153170201 349002308 737004032 954759697 742101712 626240698 99883307 688790076 455541500 183797258 544786147 970297655 757063447 979149457 916177691 708440961 351990737 248260810 121266418 69378920 871074440 654293161 762811946 904861205 815024270 537001287 980530212 710913613 553722295 447888124 808014203 376227048 393870164 653587509 42677223 383593550 941145471 667246633 294068251 770676567 425626989 272881744 41708005 836438922 222928253 500869826 532737296 946847313 708402491 518145515 720986898 370889924 880846966 923342345 951878770 764129678 395702612 285328193 465862756 310961265 904182212 805409470 726254030 459113166 717160724 216820328 767725739 574048302 260440216 291802962 706561804 847328415 726684518 187197595 499388688 334856413 813030989 234341507 858238339 224921091 59921242 411300555 521843172 627280901 437678539 662804425 94736011 341014175 933743890 205464956 654351833 608177029 192745409 248210934 663401311 845848785 290323316 147484913 891925184 406068151 265164212 618997924 789909133 259406652 719704039 85885454 148517469 71985924 8171661 975803949 154862324 46110931 790050378 272036159 472469211 731012070 675189144 280449644 796958541 319135007 93840508 633048237 571418867 625977084 348816823 34122705 263858797 640175882 490668150 331979051 247093730 639437438 772668505 236189015 291761829 959689707 853847991 82665944 514478557 499200461 719413615 277955818 59934853 347086478 888881041 824806891 325102909 965038214 368022686 417147326 513215128 224009586 899349400 298058710 619450431 298829811 948432020 583922449 845025719 969394057 511892735 189009581 476177316 452539819 160925529 919732090 428467134 150270433 168684057 545852139 49134986 43692985 438549643 762020573 207807180 465248204 895393322 684368770 622590964 784785588 779142280 932875344 363581794 84398618 76040161 715615993 899134526 236036662 206405771 889971037 862111914 849711506 333336609 312738815 508366033 862990865 573695980 249013303 894718964 729802319 471441711 294088411 542138176 144887459 718962006 464969628 182281114 81087109 630326863 318610849 902610818 590878592 263949920 761496740 602435949 263987345 577251946 63742961 971069462 990106852 299184191 443497882 534680435 993842387 551346350 656245933 645996057 184491040 290615731 798447464 899435002 861596233 465449326 422419120 134041820 613873959 880327580 30206056 104226120 476524443 82961015 23639863 428175474 69952824 130458402 298943407 24335686 952203932 41489148 807536455 667017410 600077888 284216519 691627641 976734103 530557139 167813846 544575736 645076878 960130923 339638318 243779875 288138429 730093139 277939038 212357001 809813174 264098726 745946693 535377686 907843949 720376723 539235384 679586357 280439561 216827067 54832833 621606781 888174475 647720319 147762811 167002247 263476863 741915520 770747767 342948483 100302471 840958063 33872598 44279876 311443142 778678969 30619980 281543957 70129977 269659889 862971406 158427481 77210196 484292250 889480902 236712110 311291612 992683359 258901143 553001215 979867472 870996472 390797999 347057092 215584727 110870604 776628220 571236426 706890030 766971298 640060896 84026883 399021074 874878578 72738056 578680755 945823247 59384940 773217131 233508224 33615861 185063356 861570815 347580839 770047922 438257449 817151204 478968245 577229249 653227919 285348497 930237795 183445955 733471471 35393892 357285960 161705044 721037358 92485455 31681053 996989792 101254611 598631060 877315823 816264084 74425246 181299737 84714075 730252206 106995087 382029802 411468722 309578706 967912243 650806058 251795714 991807926 575394193 330974654 781960699 885922260 265096041 977462813 394318427 575866141 634719584 568613499 157797941 838449937 587688220 978372252 275054745 444743841 872028551 976975506 987308868 208184272 316182961 203821651 516681392 924878537 976553794 185332828 335439301 931533510 483884969 636317083 493409722 864226018 752635197 823297419 127172912 144008284 437980676 198178934 795346003 229288795 142591773 564006551 851396249 189868539 901676448 237929090 481582872 142279948 880364929 226084885 136806092 963344857 111577268 528891568 169969360 387269252 831270374 480193281 487067506 373133362 390705611 308218596 76015461 782412138 619315618 1693677 889863169 611655460 845169763 489333247 900686853 318957158 38472217 944439794 995081517 317655268 322487319 597835322 600779647 358377761 592502282 298986985 707272832 381782351 823257853 886140551 225317656 250481217 345911125 190949584 670462017 825338540 757202487 603686866 778996268 333080277 217244849 314353028 561940042 266501688 305123936 520246447 556606862 444885745 998469208 584559796 256339681 555029218 460694406 829246627 757536366 299644605 265396184 233244025 838454447 747591305 780648925 832545920 347409936 762554169 390165404 44575855 553451267 70413744 343648161 123722493 793010016 538737114 333721221 706704385 698420601 680162544 656731547 589802083 946715244 648250149 796335437 966695517 393435501 36559884 875638358 302642454 596887128 734068847 228798295 22637265 51328109 506615670 771522153 113465886 503449120 635705649 663420027 452985391 465732950 962949409 412587045 791821343 43392369 220783396 138469485 48753081 215790001 482352407 365119631 53975157 990432997 843707964 408938917 828299749 379455550 307946507 714840910 969702920 154664784 52210135 321380951 181490205 130790612 903727139 48314706 629362203 224781124 584385160 782942461 204456836 984592621 285556900 852115899 671895931 699049940 901408528 132131567 714084425 517529530 550072199 418297467 30681699 644582141 42239047 535028458 719295053 593273060 599150342 259747568 956701469 632644293 473739134 470917167 953403184 823733439 415637284 470997703 571667834 451451259 321776283 72504818 453852941 949242019 981014469 973354440 737061202 793447073 684995089 393705603 693343055 32861555 571208518 548438280 700736284 571063838 945020622 19733857 402187065 879312032 702259960 414307719 144049854 99579443 792533677 94688520 934290593 461871607 932299473 121298100 222500200 261085449 159711824 171661073 311624238 887205137 699542912 200361534 70988384 390987108 468410081 479529508 438554801 733862477 799529756 478016000 227325508 8551158 791094653 88693911 263638910 856966094 613081548 387498075 918363108 921441207 539679697 466100744 884715063 678242537 536747262 331705972 395333841 294922377 759072288 546210893 765826850 571102257 449774407 260642365 149751106 162996736 45863594 899434202 932102565 105430283 563072276 579482816 551843507 369171241 538235748 873940132 839994810 176775738 275271439 576816491 870136371 636682892 902806697 963564180 228902345 197127044 879850079 721335014 796090894 331845196 848146788 293429099 761465363 551986324 508871687 922700133 470170043 159770189 133304450 595023993 612848511 121848003 412079787 358050452 224980586 78716707 87521391 500741270 343555902 132410459 439448208 172778495 474014685 235726642 216443312 797320253 995434109 32273112 29441934 499597539 155891716 842316080 621285445 445583913 670711778 540414502 119387821 476702019 136972100 957246507 264654291 886671046 208031180 96668557 440301631 994950500 393782431 971563309 565668048 48322523 643807106 991299902 850094689 155519434 710294058 841069795 956538191 913169452 323301835 17335078 697845120 849741904 118730210 654782141 105913697 223309798 260890487 526749740 272777474 333449150 26849238 207339838 297997020 646765876 634652902 321203807 420095144 690492358 415896707 81661626 912349338 824477667 459165922 624772233 177335500 799032101 965996295 208642586 130445627 260127096 137061811 495370152 480061305 905878384 791878457 471605400 350362726 709363308 890589152 440888417 613999229 803857941 244620732 605749161 337861574 152141015 798520689 457214499 712280500 128413572 257044829 962682344 119968833 949481774 830216080 346648420 962301548 208431955 724282015 701058762 421852848 545428649 452292130 136833416 303656647 620469759 451174780 904252656 133070225 697122172 415923146 187264910 760345724 391327256 139088386 519465167 293653288 924181818 277771741 526021034 182235180 563424735 233142914 956946049 763294382 66525449 355980386 110334093 369626986 409789376 958953515 589704648 27572448 60155632 187485724 247272512 867045279 593616574 324959073 235622254 401600949 431337155 644598898 554728430 190603423 252425656 949185624 974745511 870021038 978863473 679342660 604318533 228562955 189135633 774832245 896007704 259208443 916873050 436186612 828359193 319719950 941454350 858194908 116157610 613200041 226030982 404760543 327012016 152037057 243827608 83453311 724006996 173352284 523767990 955847797 268644354 883606370 630834717 790060635 232483762 561920375 298073769 777414002 251226757 283552482 795437042 97671192 296215217 911428964 83802528 231336982 228705934 381743159 862130746 727563401 955784914 847194007 133777265 14137870 413858640 809647346 903394037 904455063 63867985 821682952 547957162 463666196 836683077 739024713 167217652 298136024 125485366 163020332 127734416 425237231 5832687 550905687 57432931 913161387 379336795 759231703 116920234 854965966 234291867 92696335 739679095 514938862 35954890 73972586 763461542 55928186 686887825 62497043 490335966 575731125 540804184 506704356 910864427 850724156 715747728 704992851 958780754 722580852 617031952 705580182 194285919 638265169 655547181 710977318 294373877 904880479 423733831 83085856 816202340 649816888 229491221 369793357 40150271 345068772 487846681 436945672 246024196 984317405 317909041 89682979 178667199 754155066 385486750 10398145 960572284 543743773 633823290 101780658 811351350 193990088 114411032 593873290 734676027 984140001 408963521 489496898 525225950 72741187 47187267 495676046 256674355 545635063 13831728 88519682 176000792 519051251 394126910 928270839 207720035 63376779 82130951 202080149 410555797 829048268 766529290 70153542 108815147 390008446 714098561 118819869 529293832 39525788 119066224 160799325 502477562 797547178 3776529 539910564 758471991 160713689 45638927 921085937 488528011 999650078 511329438 214081979 655024587 87450930 702162647 223355369 795490650 431428160 510269572 723950175 312185494 800533404 472845975 333372095 877760347 276026276 600830241 68438907 664269578 384129181 331268508 75454346 45515680 842694676 460140160 413806350 265642246 112807108 276877685 884476733 327388358 372251758 9527268 131161171 749161888 912635687 993962753 231359008 903110132 452558028 979286507 55291134 232552039 661608005 339834410 945147817 887694672 229149568 140883641 17180158 164911536 107396137 336403538 71723085 793941618 544659295 383112626 723290443 990113721 207282478 450008012 370762166 780952228 760019559 662945040 177252660 661047382 822864179 969609047 474924464 159821235 497754808 562366662 186645674 805373374 597653176 748154565 705222783 545941837 802003404 425154125 793034809 648521378 36535822 572273195 575949413 245372924 887782234 363929973 494352139 64484867 105252811 82327751 16834284 658122184 619716629 670855442 183297885 773357256 787124817 117252529 722410098 879294343 982455555 259722592 888174848 325739848 495446642 978174475 773759443 495499938 19955356 292200618 847984171 806107124 956907404 463545241 318654545 265134367 20972029 761424819 742659365 15373309 939019554 132754664 41697000 476070864 497733923 657460855 704380776 735931055 407864891 196556827 609208407 931013113 254218021 567545460 173683315 474877560 280286741 867236123 160893492 48118386 869134792 884911984 517743432 859624740 92076845 676806563 333040122 293494512 746317456 275646139 888717710 869718047 442839817 468035746 555475944 839933969 284923638 583745292 750296980 426802074 450715144 978174218 565572335 440994929 268029894 657698755 947562373 686911373 451280525 574477991 240048067 842492873 694816783 828181771 874479943 798202779 19304207 360144383 567028650 967523218 293615698 316884819 831162296 242034587 305759993 455027132 704134785 389059261 909404401 202487272 647203679 888975170 19669600 114218031 786097702 661928768 97626565 153388751 745576019 572697094 895146151 164757334 550817099 180149947 701699573 237218124 28970561 583350114 366628025 486392985 777017953 113333720 680473950 874016933 599904316 581151895 895727243 646645172 642334505 501113129 798475869 260865144 140736671 866474284 246178301 463441729 255626397 130412930 99785518 751224190 678150740 506123053 899184866 449234730 378180124 80853289 692401071 704948038 827991958 807488637 183333329 708188521 746946866 129157648 480000883 988437517 947620222 823402373 758693599 939026324 903744080 70069764 488431066 842883069 119741255 229122118 3752228 614325762 951055338 561535139 220060218 131884911 755432848 562330006 413900310 628634942 428751082 382076014 637446719 710758801 668774045 818362472 526977412 802436989 322695923 971820493 696335563 667475433 923678722 298482769 521282617 372345829 652366226 358993421 386899328 788006587 199789880 371870043 18575152 425641107 632031263 75316489 395573346 131161372 89602219 734440922 935909420 22019205 451514145 478750499 645368012 112855474 696429057 213190984 612148443 417637351 637154920 927339662 348675891 873484236 574615579 739583479 868086999 12814330 891562829 510347630 732849001 606054575 890379234 95365261 899365596 849314226 351097880 422326840 562704906 54619618 702074846 242676441 805609270 427126636 887527790 203847173 964249279 219557653 620222779 599192491 858159970 175456143 569271760 571853881 541193085 11195895 447922236 354497019 891551144 27367384 343593846 622197611 287808624 439624974 481566879 44241812 539285772 165374238 689472773 88551775 371234201 749583755 525048522 649160227 79101344 931536912 650048110 59767293 402022028 62689471 933035278 205152676 550331778 881046608 916497528 282285203 284850456 752415071 30705747 273167578 490993220 299225230 646627757 130001365 599442298 829575631 17890463 346678827 751593811 616808296 738696874 4551698 139494957 395211393 280855977 641270322 374631747 7683955 91091297 504199809 798695158 914200761 391655611 982182702 740204733 174601879 669639052 546239842 76250923 122577525 791595147 805474482 772729477 464556227 801253610 169582132 786639490 777225157 455850872 942835420 331085316 98912367 302693724 326925661 358374607 416146304 107705276 837113688 590254006 880545824 523898555 841235745 62386893 248758804 534157368 391544066 486552594 996333426 669221637 167091685 436864374 586182489 710422290 700380357 823783187 903914918 930280160 339601643 741002108 64033213 272932553 933793532 597901740 891402405 425364514 406258611 716863239 716185589 533635660 792493347 57482827 813505506 228484928 436788933 977650258 209304984 265663947 564482508 274475003 105655479 159789365 641788278 630587318 723444430 38294971 225834864 522158514 566238443 43702445 73361975 33833309 587219154 506241925 300550056 110917401 673671074 93679687 133977 512896523 186742183 456156654 806050432 531330332 569007208 642824041 595791956 325131831 396089236 85126164 735707847 789143830 713177446 102334802 387470775 587318747 147797224 365644222 114533510 848353059 821700604 130307897 363392978 464415184 467729213 40016731 39369114 906271179 532271862 528805733 458220144 121309385 264192531 678532213 848445713 14835626 55381124 178281823 598484419 782256806 81456007 683405059 810908354 642652759 82627386 5144637 742882500 832404373 567325247 14693524 997500100 555612536 737646063 204437271 259761394 369887981 959966705 224994879 636565355 244872151 408455744 863216172 455177193 614104540 719385953 989326425 443212448 859132354 81489386 100608443 143175227 253777061 707863120 373332936 246647909 173535778 213352017 847199150 845064890 830774737 39180809 360079194 295096777 26044342 515256756 270799027 708189889 342189488 643845358 903985376 526623093 819415828 699443885 262513775 388203942 863001203 876286470 318876723 903783150 875324027 916373065 59513235 654220064 159937565 926441023 736437141 3310609 136200119 250129477 450825568 904517290 576437191 860816960 582149244 794791183 787476800 549090615 217676596 983216868 967519907 974757733 944408076 208966538 784798784 561498685 158295294 888387030 641156435 867294542 475676424 553839570 376904535 913188668 2051682 931585984 344539525 130786735 938271111 442001994 648015503 37935254 88376470 973265830 424410512 486909517 460128401 117143263 577125046 758300118 541689431 581453590 507625763 203486097 874809352 820995789 807830552 575830608 14697319 200893463 540646537 227245455 43747451 137495966 627707579 779517725 99252749 463816311 868990509 869924204 555649342 132593598 719793169 616496471 632551408 136070966 270741897 189877266 591682819 428708850 321491979 550294535 894908091 889036334 133019118 152940362 159944768 575908255 839133577 618095266 55721652 146951957 906058997 789871513 854914505 230130816 407871319 205671064 337608817 547740390 920751096 784203451 310127266 507567985 130246306 793780297 11387145 356027 938336805 217808631 228585227 575808735 767524513 476506285 675324541 852759172 851625712 114331681 781010323 360623928 778639927 150188793 717526227 328341704 575697950 869292950 111949982 477214540 612329538 400917253 199414367 528818678 556470933 661022299 809515302 919811805 819761310 786516659 800785960 302719673 595861228 635613081 465436240 100411339 823865953 437186565 323537954 555900549 119399700 864147232 743345680 584557267 542080736 477433185 625073142 721663595 484795207 324877434 314121921 489109336 208912445 469872928 98727242 221646267 716310718 87152669 318941033 336111534 757484923 999918371 806253307 266309470 610434573 678712799 849010837 68080947 472330189 910082990 999223948 306826962 490445014 845407761 77504164 380128028 867311410 916902707 634753248 508521136 178263666 121761418 7409714 465508075 999258452 206767097 514949393 660811202 857603289 392041790 646807573 104032342 964029498 749702085 960976377 248517196 611412902 957710865 486752020 587597763 94821525 374837211 960465971 412708964 995583317 533364132 107358442 724660293 195380232 499481004 964975809 961116296 640778603 759205470 938858263 638497309 911551406 925141103 539969601 21643517 885534671 210298335 433578313 109372137 722766492 785430048 437843779 755057279 900437718 505104945 476020537 101947766 292034393 281259388 75848334 912523750 329636495 293106282 228084131 261456630 439481021 699898490 745620300 165956956 692535675 986809657 400312748 90269040 594838582 230521378 671087639 904233727 172598407 932147399 386177185 931884769 317080764 314136805 789109468 973099575 785580152 874058989 326646966 79314052 609416852 523641625 527503443 886033140 434260900 937822311 878935887 553394311 191975800 797239040 356925295 63500204 288184994 43593806 897270208 465454944 303137675 239775077 746845779 213217467 171062600 413839433 647108768 176766564 750860138 8023160 132130397 861005400 909505910 816710714 81452368 639921676 308518005 133299475 451254318 965832464 951933314 401944235 223443224 677923152 892761971 986713438 450595607 474656539 775119010 868913415 599917444 99151059 275198397 748672348 256052291 357515971 657138950 217444265 770272148 146834880 741872777 25045942 491337319 328091598 408722056 366643483 655235990 81001470 223195735 35090816 205757984 45573537 826663123 631221488 845943296 9770672 524810872 945318574 564607098 204903931 742331126 358074056 672321360 527929683 387127099 130797635 136119751 699097062 217432395 789200844 506987753 285351854 605188110 132073562 662038765 495025756 159320177 154063704 508029524 311922553 886311840 244357164 200687964 791870651 320556078 98741255 598412232 425374507 267695620 806463500 66026335 49919139 944142603 550602390 393364468 914955893 513036585 25844759 206471887 856783136 209080407 976018772 632481784 128920198 197189363 897808136 271064495 178902785 632727776 180710204 684718789 122957976 474491249 837283357 230422657 760200017 404771260 553973655 296932991 141960534 395053219 850104683 784411 261667443 674499321 992547603 873256448 139978201 73952697 106598080 204383362 976867560 836856799 270815006 924396886 453376093 587815836 952539648 891923273 987759644 235862130 610817769 759636927 770547452 730114767 8718232 731372814 56220572 977513951 165475074 156939360 264981264 155856882 559402344 676541596 663955200 404029295 953118315 15126195 346831508 928089805 537243050 804970740 993532265 904317050 787862246 809036107 520069921 36101423 655985944 984730665 663695074 149532274 697142428 374496518 395460930 79731351 685413952 129695083 834613091 869404737 171615224 870134381 229422896 88227354 913529012 742247991 224595395 494448817 638068369 83416836 21770048 788389272 124552033 313899826 513961457 148086268 405600387 891137993 689549378 232331181 347815828 660653864 772936481 473936128 983000895 498865246 310568270 996767045 715075429 95994791 803290636 179530001 575072305 147902577 513105200 540264674 824874059 741094361 559173646 204960695 427481981 704978122 373138106 32947612 63704693 847435678 534803172 819144337 745022606 81406052 794550793 178356058 842608408 306055340 222011491 170885005 557352671 225231929 252604849 401306715 588656269 721405613 55969242 988657008 85043627 909840541 72485962 321119600 492956117 964097051 566277358 316478720 634538107 869047906 451826132 282908412 713755352 990994728 13263721 10162161 780429923 703990943 896431514 540074433 294514788 711307965 475166157 867342522 187720191 917755635 746783500 930438912 684112190 15544146 954053041 233511415 455535062 727706067 709124509 424820897 609514504 381345093 813198945 300881226 33804893 296875592 58270356 516625063 522400161 61871856 699858289 382455539 916758449 737701016 355731458 497641702 143015854 453557426 477266056 453459909 604939449 831682282 902622716 873157691 498487555 238165917 979971332 966519283 472623078 896650571 524469678 134953563 215836487 667153801 674625740 915060067 389521838 651337902 126434508 118029419 242687957 35509921 981109876 3154773 148551723 794897871 43560512 17844014 667198241 602567421 143967685 963768223 692063938 803124195 596465081 493458788 961550730 636041217 836697588 827321880 872210663 843707370 593532978 245591940 918912288 277688865 204532559 40992460 340553676 334782237 278012855 404207879 134850180 687605077 292454488 692875308 636883336 143311089 238669651 477040986 46456804 714319420 488808996 900785303 149659162 179282105 166259110 249625041 920973342 156627578 892652241 88322894 667208067 903789577 534363209 398424068 651304643 973198069 152717177 419562545 251367591 641318481 687114754 940605894 257300806 673778440 52902126 228125591 181568900 338635342 730931334 478796334 456108394 105532486 95638162 5633296 681594269 537227729 183403335 359859939 373023427 335512099 297846955 360508881 512967721 228387619 848602004 327130227 548400694 661851194 293753940 855479635 862042823 569144116 938573451 74815718 985094091 318138631 515017488 894819944 138761547 344317079 657877973 60731812 683837147 573599139 636419105 997403766 908372746 988907699 568272315 664712045 197467342 298317739 463880436 132555326 329837207 39170103 748541390 767868486 395033486 448364449 781110684 984920069 764149109 11744076 383685786 746789578 586510816 768418581 400090380 854515825 825545404 56044281 947732285 123968558 110630321 762912949 613146635 832413747 68189254 296010839 437687527 97260224 586149247 289397094 717933231 815961218 920941753 11247391 464700797 829371568 614751653 372987468 685016327 552809178 62955650 24335464 713797893 448187221 921714769 306895546 756857798 311437278 284392134 876638618 324457392 611688057 618270848 842492968 329227497 88455653 194123991 856809657 453009387 668484533 20553183 892783091 927965480 685837240 301031871 188091091 212339024 828691675 284538644 304447765 915056082 101336443 193686754 696546856 370019835 938304988 857559038 414283152 245579504 658605956 353947839 596800983 432433700 333842518 353571504 521838303 35267547 952109173 368323172 31659849 160706377 776469395 765812747 126802153 193118700 419681818 440328152 933808749 687582792 130062509 873062752 875726906 49697096 821194243 647502263 461772118 892314938 434638505 213202138 600024340 529314702 572675058 902581920 228052157 97210656 478529638 982621764 536422033 896493729 912488238 987319517 147275205 907149930 504250614 122392250 910462727 15218089 748850307 783255852 735175054 43690083 156712255 648009813 366257598 58214149 116505551 828016401 413286706 482881874 508736855 233313852 276027525 916714225 812126508 809707398 196793304 143758417 579520770 89356808 86565263 890998364 971403107 79939463 511269157 36104354 354864622 931464548 777721255 459219668 901093788 594617078 171853869 688589121 108172522 97973248 951846431 582601879 309409650 928344591 360058515 3330965 49815112 168402097 986039666 937470578 388157258 381272581 358112644 669744716 261711526 198536074 946053179 851696709 366715997 193915521 887774079 152107521 376914994 434723261 800948115 674552585 96443583 963436013 226038205 285028706 298282601 346937309 90290702 776597005 515105851 836546635 481694712 524686382 979429135 205528134 742323272 471935620 321471453 899766369 500229148 216256455 170137889 355733399 951054294 326322136 568707981 221491398 976875903 726151061 588448222 550450645 246632498 640388620 109969563 462880455 399293185 877724013 963811051 906944429 734952705 56929184 21475109 371051349 707144982 627634121 892887214 481318947 570800809 445264947 814665507 758844443 189276559 628330613 574672040 178966408 429382031 80700791 636636926 511298830 266030116 207937802 250964120 105272437 838265787 783728255 217406117 848917584 734745454 651280555 805251355 500291114 493542008 239186775 832208051 170920058 822640429 735457186 916146117 325813191 584721880 770671408 915317842 165818849 171049274 616627687 183980635 991621228 904665699 258831106 170810028 571243651 682574152 960270965 789767947 799336997 609463801 839661910 468846302 742216846 926624553 399058813 14814985 724141011 454058026 655914068 771890110 182729261 582798211 906663992 192133663 875163068 752667132 104185374 670221974 892650648 810347708 100958228 90761257 483744050 864671269 179490631 322869152 339900508 239612839 692673622 980883738 509976840 835889051 464518290 424306794 419491923 376380130 332644019 568788458 447819609 269455410 926946041 882441123 172599857 987175870 710949209 90154512 504430706 536310891 712059276 228326108 463468179 273875325 297782004 717587270 77487528 13780438 574879335 273520630 238330531 855589870 700204120 26845451 209451 377918147 347541262 687853356 816166658 108258123 228909408 461271688 97289987 353809172 468333155 702614419 27190350 887715706 809208765 553824137 539673892 18555768 379367354 553227727 30049701 171291603 605553377 380336768 167974591 192252123 7906402 222072959 15471782 392785578 959675583 811768716 932357733 55441058 728636750 31186601 206220778 78119883 274061467 555246719 664717831 637323629 19656743 356672799 979709161 205051801 699688755 822757476 999802737 783081371 904976563 604878703 651267218 147176415 97280581 25809502 692872480 264780866 739812630 819638758 210215117 502507654 238644187 110099676 726969989 394530449 497930620 743267286 913514278 800104736 914195793 214078863 647647501 854682531 66447493 88304607 722944363 89623522 683333204 518566570 339463736 615361122 314624270 554307739 567258621 73243192 820057343 387663752 387879256 677488320 264113895 844466865 144940373 271444930 124738765 134947300 146655417 335773615 17752265 309273537 136088287 733216574 563177403 700851941 279631612 113269261 50443879 910091056 672090150 80900392 829751449 627427493 859898989 154086960 984607907 253186689 656100461 363136580 425254724 116283325 520332556 358943032 311143727 944866091 161608413 819476452 842716173 580960566 171846927 581405291 800632054 62585282 3302859 635884865 561168726 349010831 81844654 30880023 571920787 180356481 533085804 354687563 776242106 904403687 269325652 22253957 746506031 229052044 669336804 481346485 631681565 955742647 151079081 7560440 732562709 345589556 844060628 140298470 761174093 119932209 366240698 419750126 769232132 267828099 305733579 351080334 107018506 254414232 254528339 637232694 806332802 350509683 952265238 815787695 618719815 317989663 331643964 842123083 795342468 805613438 905454339 735158705 45041205 431479953 425309986 655444058 848488516 230066987 691071274 179782219 862424537 28997436 420258409 280366229 59064354 24768095 14189462 828695259 640632991 141221500 724479822 244277449 475187026 525974263 126599658 937204344 686465958 589446471 705914249 825053725 788649482 590834723 312861019 791386373 625873809 174159854 277307970 375132017 30142558 400555450 703048061 866829683 388939027 252480674 454192022 213384238 532567705 955998126 654863055 876948814 555946715 469721222 169062947 330108410 19076836 189572284 520605013 334236912 89985870 557793719 675186202 427567407 69313324 630325977 159806752 694070745 611204876 507098311 889181417 175455167 489111344 317516023 355556055 731547027 235150432 75134885 479319622 702178640 582681015 796475590 926542525 601429959 65022670 998627525 904661566 71578446 966015946 562648957 251840942 612802333 99230876 777868111 486234861 939266280 754319494 82407505 59680427 271146614 485685568 391913315 513378696 653878783 447388948 480369238 37037029 768058185 756036894 338411548 504693105 569297531 568961680 239708140 489840349 32770407 28047655 844120638 565748646 871380662 646659924 893248638 146474455 996409148 53719109 754461122 284440601 926762069 826061960 844523070 118900488 300195651 813781780 92174874 742633606 303030992 265178786 418956775 378871312 437096875 813350292 790585512 975078566 146443440 103367984 506286570 459309240 699923981 16249844 72345615 657190352 273926471 514564291 183823848 983289299 915981928 675627033 89227892 537158439 108291086 690639375 903502448 328653053 110355929 928809858 401947056 69187791 904917408 69284078 902632466 690882357 764794967 265997259 178165115 832236899 812280220 853437255 675010201 972592341 634214331 798012121 638687370 547442381 32894935 562409377 585558959 67574392 721042276 556567626 411384437 739984390 801191922 894259484 490587469 343821495 570342015 461472 267098709 885010863 470551124 698197098 148046055 317556249 65471657 605392449 399949689 866247667 594297465 481182215 140170681 442420670 709669945 826255024 314548865 146114767 316109744 175019246 237475479 447179295 618183298 535565621 806790083 644240235 360312495 625570611 45254865 682603241 24882807 139280403 700037704 966576287 750342746 79766260 395463301 782188664 621214143 622805233 559385937 351574838 948732473 511249930 790104803 856036282 527279244 787805783 652003950 888008568 141079399 957589557 416439837 421829836 813782069 25203816 147493100 103390310 926841507 21638649 279583309 636971400 400856666 802227042 296414053 951961711 613724676 3090263 1780850 662936376 804708596 238817962 184017292 926904561 724760385 912895901 721154086 212152595 729297094 282098046 779683619 75421417 652136739 488324502 941215546 520922198 901260807 624362787 93828425 15887429 7833017 373397402 862463345 370431501 827129297 714217067 38640017 975229929 599083423 868665615 848962829 709677314 106107148 405476081 230438050 720428161 489394456 109260706 716146275 541207214 549863506 712039344 446603844 144055713 656352909 194068064 916512143 808096835 373750446 272066359 267786478 778069009 34491606 331131295 654229441 282987012 576967464 17287918 103534631 76379172 439738384 412130312 812866333 729106160 764298917 719095440 894000086 112950308 481626980 941412987 759981456 951770542 517034452 699026154 896375488 6616308 935380178 578638570 384736432 533355395 847668651 673371329 167907572 834461559 239723981 821039763 454970479 683689784 255497885 125258434 423755030 873283787 42330782 870017661 182580510 479968054 772141520 921964836 936299533 236048749 650807000 518519300 757780164 206584508 468415029 879059467 426281618 3633389 140733229 977552136 484481841 136542416 200414805 297432205 812108312 124724206 439225630 940949353 987649820 672469245 780819851 296681658 216079439 15228447 242470155 779516635 265617364 941124947 336096575 232524300 743480120 890433434 331872484 738049737 440532595 514352786 663918529 295665122 945684521 184833000 976147421 462120976 412907160 554153296 903997059 762992141 76916518 909356860 67208996 5576463 16193749 896558754 271705788 566114005 838505354 46930221 79192266 767258938 811493719 535816266 443142119 703650246 389506498 233891686 627219219 456494318 560217742 661752762 982651496 537150560 351266535 261066374 226870190 37439858 995267845 444189758 32350363 707527903 762387915 928143590 38163026 404441960 795087246 358558699 919381769 192241244 791011491 682681500 787156501 658773571 270677976 643688493 422350388 73353644 469816985 158060957 343657488 153153840 225100817 985822063 862656818 217064627 297572705 628802588 767717257 752305457 880568341 243153881 87123614 959185968 377709598 838363961 387663052 665564143 516649252 145333117 992217367 548080945 894284959 824488507 497179837 861121437 286816525 75053056 939766111 999771610 21167486 110980638 581868643 339793676 744394902 109407481 528325796 652530649 129807774 846676369 1207862 864324377 532534952 907164096 735169635 736842804 388359666 414438072 100521232 518927000 824995907 579655916 304998134 633352165 457746882 31005466 722916190 173861836 303445628 425638278 848452897 614700032 807484654 821842259 160241653 347292857 160462042 411022370 164256509 457281991 441887787 990156705 590773946 430710335 552648644 159843120 820678641 288004842 446946621 162402642 198277748 733128221 803558329 851813611 584626010 45852022 35582133 993085494 87161504 264819965 871684789 568154491 85954953 96199214 710517039 559198252 954923293 24290309 969491639 491849304 100226720 534192984 597467220 58097355 120040217 218620078 159353506 694486896 62550579 968710809 770697604 451611557 147329563 238054350 256338487 771277112 935586340 331979856 170223170 350482097 931341028 90867533 378018587 212005598 974208395 44982397 280105303 904098444 606842261 856302677 614678497 273424393 689629242 306217589 108831886 415101489 769660298 249334985 846349854 285311991 728973650 291682471 249990288 65430461 260520710 313928773 69487917 215575392 850189878 86505414 939169962 143017844 350226665 226129021 485008041 150374193 235863907 207750027 141368158 457312943 731578726 522314679 970158403 773356059 805386266 197714714 206544714 226589174 780589933 409561879 76048968 950454042 382633003 898023126 360308396 311003269 487469318 54801894 652206396 161744366 521752832 968859154 401674308 981049404 598807670 389276972 865957543 943522195 880782129 814077999 676312659 682105428 958098851 589679016 762581503 803641843 220814653 405432679 586522435 849921140 90601161 609362408 394379575 479159300 353648941 979849944 581444205 102236253 422289762 133389556 436750198 381750606 552498514 291532891 23634785 723542617 687609945 843809765 653742263 66711538 267039674 625382648 669143323 285433358 7157599 858187055 350845061 65058597 61488255 389438377 433709986 567525158 909805271 920040816 797085052 123935858 878152904 216886641 758087209 272666258 21281877 295911829 845224198 387915703 885489821 271910207 950946050 541701672 993923865 931039559 913001806 422324913 242930804 849991336 431478123 838223704 234283364 472473383 818340244 287864102 966925451 437299086 394211761 259796287 835902856 710453471 830250871 819792923 7558731 837078865 54906536 636951350 440872344 618676932 956992596 274325303 727563730 330966297 775889755 791943006 957300795 366519276 700053737 431038817 310768421 901184613 52224881 146518273 616558584 385738225 967753574 432749156 225387858 782938843 964122881 953574207 38261495 914782827 407444213 119648359 201213443 455002389 663700991 795704636 800927888 710011273 125074167 441556760 900423817 633829356 480336203 944842877 48873149 422471449 391075006 179747384 390359388 541814108 481360655 765219314 663438277 37621332 912306970 546081758 581942264 979642781 250460744 948650008 204175857 479732996 569911945 716247786 507438183 539673399 124143651 30530081 873301115 960437276 743734785 791815240 813559071 247200569 241028207 765642599 529473981 258649973 39817575 451881049 395710938 849720853 346403172 113811757 378254899 843911591 173094620 791495294 910666298 640445804 897661804 346790240 757771216 44018109 200544394 795977648 845190655 237005212 36885940 511001933 26666794 930998338 34748378 885692936 88612130 353960225 163096326 62134520 503772437 762695441 753730308 737450983 583452606 889364698 119375061 263802187 860351068 500069722 653217366 910816836 490947809 22215870 529673266 809509766 953713356 452747580 317237340 104056133 50322177 922872052 501826850 158239624 912480098 763715689 300830725 219147936 652803446 202426616 413758257 580510495 725754169 965051856 689015286 99062463 673694955 473396802 893691598 17011806 689332261 74639244 787975839 432247466 150222174 79051967 334668498 260148871 442795151 253092197 899333044 160768304 54813203 114671969 527286673 684678862 520707422 979783162 423492765 766040891 722448587 854169248 349859330 455290046 248712985 55630295 762158752 886404956 662170845 103291202 637479901 721511700 299725041 123073954 319099458 183539778 213847830 918406809 750419628 933749215 377884068 970575334 497637100 239443943 111180580 925185458 370201654 799169719 530980666 29266715 672284229 808652673 711429090 808663082 76842222 109069118 439982852 136469582 482382032 916978429 80079482 89608449 505593812 337203817 606037401 951782758 939515529 932319008 714619427 394146359 354797571 2205824 92496200 746610085 227084821 891999922 599508924 981649717 51191436 430634352 827172901 138288858 25850536 708064347 957180586 495787594 83411688 260211196 532688163 784947215 558503840 783825368 462622371 212493789 952726881 709740859 549596165 97519058 705935824 75937068 842402661 705624426 651033029 890702212 240656178 997707350 305379133 925082483 952163918 303066705 878386909 6194918 893820170 407103977 557014920 151537129 431160434 539110856 635648922 581992845 668497338 584555483 548833120 700456094 612667183 383471620 53746512 356914299 486226836 201786578 394453593 684433992 305541649 593358001 638272789 765257245 932917925 282207610 746788412 836919491 773825549 232934793 605769271 569197438 504080553 331046721 172682579 37809210 438996849 568386715 882753084 320754093 963817291 259066376 873906319 231226452 520967244 340400827 318291791 861347847 834388176 182222356 599402334 13086373 471376509 472519045 638317557 746256587 404245335 126568995 917221069 167926683 654381182 29289750 633900441 340116056 645536046 41776211 65502520 652176978 17920168 168275284 564824735 434627071 189562102 858585961 426964036 718086107 39975729 786274386 589413415 155239421 907086684 718231288 718228115 237879481 499328960 668556200 733611397 450343430 942209760 284368715 327346188 388014375 420353013 254652892 554705290 911791499 621688900 758594043 785936663 273541432 353586047 61663595 633005407 925869026 993543293 256622253 217499578 336061425 650776055 445813299 836798819 492391144 669587405 821046116 597359880 47835999 140431089 430834074 142036134 282398418 921922926 100637031 306073829 373608382 889855436 230546170 627198483 312845619 383062355 667911736 338614071 807589684 883255258 333587004 17109103 958784197 441184726 713961430 676136430 198403108 580681677 250249204 603050636 467419819 810849207 828165134 557169731 225461705 512273695 676930844 963206863 297659111 652032212 317803302 784461827 203235989 722332424 16665158 569606196 375892045 39634246 701236951 509466718 185026170 375069445 524659614 984316045 660857684 822593074 707827470 413048380 474633246 71447956 20573958 730278079 286913257 874016534 813258152 850709414 84974957 845431421 482136575 1177388 5549486 251020473 210822339 41777044 513241151 328053457 944003069 184567588 990906115 570807138 814643428 246042313 112520798 441210864 29006030 806333381 724153040 874833261 216418799 971192854 478090753 524987642 258200991 183802215 676266248 941762503 974559167 920836480 311238239 998432268 921279496 768683816 828603076 76663144 755802268 462035784 199137540 432477314 591611182 729708670 37846765 639216961 651917470 85725463 607885054 826391842 416250233 749058889 565316120 750543329 916781902 586404118 852804724 682954788 542293974 304028109 52467469 194613947 469404069 252515372 62299617 279429150 540478950 81306657 13506675 250961672 454102826 130200882 55416057 95417604 978704026 138760986 861816735 232288214 556486964 240320204 644816174 210971019 677154172 744223121 492808186 297785409 242695482 424981985 8707583 663976783 377392933 604328495 125377744 626218393 525892527 937448535 543331117 239241053 913418970 79147139 949938689 135065456 845898740 17584517 857418083 9939692 998362977 886150027 886040134 331947437 982098025 833712924 554065619 516876953 475663643 240521767 632041537 760472063 973624648 421675507 842672846 454372611 988591886 81268900 246352831 61875727 564480513 545850446 760754085 661377933 628685448 773504084 700830380 502467603 848171403 537716644 653070197 340766777 344355265 345771455 398558728 27918468 33618318 586016982 380295176 359913322 479284965 541740060 133719923 573603942 732408295 654530835 719640903 261711471 575716615 763900287 25976883 573801480 481675234 165957310 111284205 959358020 988109424 949676218 954288495 802053981 140498441 218052533 345233282 37445263 777015791 366081060 488547749 326578374 808821390 655551753 185112099 997449202 415692636 687854082 186122674 756087071 339731258 542316242 459424329 238589223 660597742 55220749 341457965 966047300 665241208 304264289 628088235 463372314 613648096 538399731 342910553 411052679 603088445 214951016 147533331 495334173 201513140 71823249 738664262 388616333 11606309 996479203 515731221 523696939 760634134 907486869 567643678 261501628 522074014 39202506 694785535 427098731 892177395 450651211 930451254 211617031 54796369 287347653 779111721 969132582 703135187 683148358 788365386 741235198 783955206 412400291 758236626 559899091 485858959 215909989 741571852 146520440 631208933 31651554 546194541 594898454 936362318 879691934 973495006 321484803 893910825 255093573 409911459 444559194 101253257 505594836 221600707 187774294 895648210 629848112 333676062 618259141 90738473 640227295 397637792 713157651 704040621 582354757 207759022 189299193 102600551 306924495 899500039 665302177 22189545 117989654 70031327 666191732 387400592 788516252 99177139 614873627 97990625 865261864 90293488 39364957 945135203 165721566 432684403 35055547 87614388 528804529 766660640 157288785 468740370 581776080 967284120 90059442 198069262 685524839 11765432 472118940 67255797 237073381 789678915 243370590 463148566 602574926 583058880 957447687 103435208 286926409 767028807 465700199 163241914 472034311 113219424 147340493 583407663 239064765 497241580 368593455 149924869 543962614 737247846 238245840 296631093 525109349 743550422 470747106 296729038 872143216 116592298 146433664 37787919 867510641 482354567 726308773 293117541 912257326 523374244 137322683 939945974 17591667 849012054 286505724 676526566 78120875 155167803 451177387 383535363 985003519 628997116 222530211 347044106 48955169 830499834 467394029 721729320 167605787 430096683 74821862 387599931 525386426 772433126 606557900 176169262 348213927 202957807 555446818 839157093 151022427 723391425 286240273 777939091 873592003 219909656 575784422 216672610 839647248 69490923 112853703 466313544 297055719 875815180 749069069 635776794 918993225 422063654 37451279 711956404 508879916 660984271 687284991 159975460 516563037 756802463 11025043 548368258 877311395 710791461 701149354 51845334 517094806 987339549 299422135 617412434 852502295 708825059 996437074 414743933 939794477 435646871 122640511 718867572 12737395 376893921 414821439 540214415 279994914 422679929 849929318 130534695 786671503 557592036 685839274 840569926 256375692 769128269 489725650 738739907 184621260 304290248 899182791 663252664 431693144 360940064 797263270 844827833 287150520 65558729 375919101 643802706 742441462 548129605 324197030 362155909 52517152 738777170 98143869 994027166 205942841 80059448 949064784 790402691 382776947 557029812 33140692 590150226 311985040 673557559 853882075 858695895 400324953 773640928 43572390 441884298 10246077 915511587 940792195 246818089 298560252 516654628 371371564 227371665 794628914 617724811 440506155 323909612 805120527 867355208 744959646 41539434 294178533 529570548 340044769 393904463 99965273 191222831 813896041 58790900 85292110 748495678 897979907 596957866 260903830 795994919 238600581 473545697 491660643 827921057 839240136 687494262 446337780 136447567 851283847 658642577 233946454 552705582 757563054 751515959 273315165 708752421 118292526 360392785 588264951 120480279 493944514 9728037 933418779 690698458 785802301 862509545 347460339 763038151 204367164 857805489 581526136 292589795 1766106 812964207 762443547 589380460 684895514 226934477 690621179 429806373 636156173 223479014 773900670 855754526 285605076 260265973 659950011 761474464 864188345 439004500 966501726 464110241 812990632 494607018 664989831 804968486 124529849 209309162 5422387 307268872 531920261 23583609 92805574 148661094 975041635 256679819 354242071 121354281 875073742 792053199 472058367 717611295 177191811 991455345 457734138 106739847 205586994 273017922 416956720 491518543 995695592 572717936 905558427 665052332 307675843 557524905 806612909 678036897 369440580 676975030 783382784 716442105 797877232 136680651 253535655 324583674 457806682 716911349 31169526 764797662 500181699 649429131 502755483 126879162 884000646 40861508 680800411 654795363 841654754 476199872 230914431 857838083 668576168 731620923 763866676 666717045 501717531 22370541 405862944 330163862 296230179 276768529 161231323 8829206 550673108 50784168 780031688 351061948 437205585 157381119 518126706 245067783 719080230 61634329 555363996 788168690 607506166 140605597 568009013 503899951 288911638 972856776 302287601 266590556 437034084 914021865 872052397 198767451 705816690 208240582 389288071 729384510 269597442 962681341 242199810 651272815 749841402 36775169 250808432 960613501 813003064 737111703 597147559 2860821 619644886 144076671 169290126 927300064 502393808 59268787 711065330 850178385 195405593 402833456 270776485 1615704 352197129 931208458 676278590 795718880 780533779 743302326 972648459 685414046 581446671 509209331 426767798 215930502 909921527 382907285 412654264 69948061 111243417 206619650 280833851 5646801 578106060 422011018 885779357 574224159 186759997 608109349 149418867 402707362 814179610 35821827 93092975 596371925 358936367 768839734 379498354 82198017 308754455 696237329 170982709 870707912 937894732 532834610 809538845 542358342 768729042 844200541 434336691 122645181 925568346 467124824 894514478 706103044 95277472 282764687 140198127 424945861 632517935 679749849 676196719 377959209 994190254 971028959 864046274 395568618 996646104 829010918 647337614 583511244 560780929 780681616 412065151 68590725 504524108 412257095 228065298 727443463 370080876 893400258 179434763 839946633 381707080 797601877 10363338 937902859 576890165 334049403 881449604 226181119 373375346 932575494 458863557 678844633 462814012 752344667 754662062 9065667 437576646 741545415 102717735 809038819 431685765 947075133 414586187 769981292 138994395 719975350 624533457 248680100 958507725 834682751 877929644 330186326 109518011 972310915 989121472 919496778 79853356 297747477 443886448 45257232 533494960 676137185 562793953 305025103 443705924 32081831 717115860 555825730 412748293 222375585 785219745 376890307 187382984 93349998 742625957 536824111 634692565 635136558 59488906 3770107 526260708 668991024 347866672 452060904 130394152 760535931 761937101 66013307 713838293 986436099 64266410 755172618 487507620 664792692 665097647 778706009 800007759 884953643 383789408 9329895 511234196 4288973 589516555 762421449 492641371 45837695 608894357 621278660 877993447 151246900 405636532 368384772 153184083 173284994 490641362 300920892 388854733 403843092 229763142 792268968 962966535 872066177 819669818 560022218 201042067 911603941 824874860 241264770 91730463 86708014 753835200 470242868 373482068 257119137 879312532 79661086 565161987 478835681 314217152 60327978 282597385 441738142 616999819 127559533 159394768 357312610 715553890 474303974 435738377 636464031 376632414 866897161 649501259 362365182 79869424 403129329 847729494 498856939 918616903 729604993 696753630 785974924 10954473 327519374 892952984 25083090 29329096 496196186 877895223 754151864 137407580 614658019 902503951 266916187 329469381 843816756 387651934 757447769 787021439 78290264 357713288 528041009 744000213 616973342 496075731 746998191 737403799 505653154 200114580 596317666 569096857 262854668 797047251 97549189 800177366 300773321 815659144 700800795 832806199 722922233 388843372 676805678 333800689 390717279 657725024 11131513 406524706 631069873 788411436 305441287 754908069 13588651 35785133 909732179 951124121 218168151 149170350 585836123 68618362 235075257 595430022 102649767 998485151 600298163 20809691 644233280 743559948 731314217 94872185 118272263 674478052 772188370 148910891 724664241 436014545 869654408 172726088 738967658 201330962 520930169 576240738 21658976 274714817 284023474 510200737 195302273 278940685 741124772 466610799 908186580 487188163 592113662 559355190 704947687 355136365 676708292 230558288 604877632 354090251 974459021 116349435 229015612 930877126 409415620 817898215 977119376 393502057 835385604 298866771 696258817 353444967 897236370 597022473 554662826 934097877 858938781 940811548 135086197 785581777 451289437 912544925 358735252 812812300 83711673 131573521 206514315 461551425 525678619 679474932 686187084 27408339 436156791 459945808 240811673 746294260 199134761 496474694 360757114 833966925 636373068 685848149 276117540 60558357 141434662 322500853 812847709 306501277 206190332 27239218 662110362 500146595 916909799 115527158 409339400 511180540 413921165 521800997 351818799 30620598 819809530 455234866 345642144 880898251 679551707 648554098 138206026 289717216 430527967 596788181 990277134 381558901 26017738 69369938 413368779 206229068 735505150 154766814 30913820 349177231 142118586 33883439 245237759 945099155 92059382 953785763 665927979 100018646 935273141 370079220 757181696 610749655 978968221 286627862 711235964 412498238 123870650 265504580 848629880 171782097 158749261 306557312 183767718 729911401 76813274 511049506 226453811 872614504 13964745 635855518 776013483 132049818 630651427 369399413 62958475 491901331 125388316 449729744 161579587 647762846 972157050 706748516 567919416 864899840 721076291 733849530 452078550 604071436 440082433 871008898 487439892 255780289 648780549 267168226 121228998 332205647 205180664 312596754 572604785 715017549 971365429 399667236 96467376 413534811 224351646 884176403 724305566 97018515 62171082 588361254 569749580 998555621 157547594 926386616 176643386 1359918 773778797 70948357 939833727 178038969 604745147 387465295 20697102 453575118 447789126 453804330 757884767 634991898 998766372 72412897 211734996 230264216 600283287 685668108 22678753 361368828 446281263 295781491 80667598 305476466 289878107 522932318 572973515 207803420 700000290 78792658 300282772 625094957 178172417 40023 237725435 151224093 78570459 250589596 36965032 927693313 679432666 152759702 555531105 190159319 984100930 473281164 35417632 118004048 427588319 785341825 727530826 429734526 604278938 38646421 208553959 839794128 159682390 627435460 405161598 781531024 317132792 48045973 254969147 356698047 43445901 22116892 343309872 283160191 44349721 110080358 470520031 16440202 250730102 19238808 449053020 512597723 500661209 335348294 199170969 400411207 27667258 640943348 5008731 176441187 820138437 581309049 53625038 447552730 517792801 880984966 937134684 707003677 470049478 615416377 832112430 967257566 698448760 199047051 828134003 754632754 323941248 470892229 25464265 198114706 848818658 562228808 869292768 413165730 345181217 21453592 35808698 439080134 306694049 768506727 930131522 650167818 556794097 136632148 839835534 220121413 312183004 504689253 782966201 137318000 587423433 466648073 929405220 222896650 647290405 135866483 646072633 45167191 550662843 35934571 286844764 876046686 170647268 367562841 34472559 494889545 886614953 181333266 557230001 443124504 129950159 845116347 606087850 833291966 440601868 476640602 934250271 916529504 60622432 750878436 112534916 894735687 501875832 726341984 180505078 23831569 556969976 906777888 102853123 396669844 213701494 78650702 157782368 941234534 850822375 414650333 271839385 950759809 665805527 964863890 203853759 11390918 568227337 372832519 504506311 762130034 211795281 606076571 540145231 846601999 738404134 182856191 144093724 270824390 635106167 938753632 827431681 55341241 416398055 181164287 593463486 528533184 807526266 330177220 867330242 554005336 657922676 95478424 68951492 511451481 37923888 554557018 123188667 593824394 318489402 363865098 66192221 578735727 972135303 7672756 633240323 96208889 852655376 922012525 708948766 663065910 295506612 828066401 116631936 599779127 680816737 801963419 448431601 677940430 842189326 664221908 810046101 657143096 861964024 45700726 472301695 354912012 258880216 575140199 266570850 934406980 8083118 547601025 575581030 501236974 328869754 517162132 577588639 200258529 768399107 365655659 504142174 626883887 397531134 274077279 172235295 452144190 675499731 202622366 924462379 718170080 316529472 542574807 833323829 74338879 189306714 195636173 983932327 116779582 859680760 109785421 666449303 612361765 516077213 956208116 346020113 310812477 299326067 837780303 908483123 400356589 497173662 896637068 267339847 157246765 997269713 891708962 29640488 777934176 766922962 575208347 885687862 412840345 917426618 9711975 1241886 86061662 112734309 481191069 889370904 408029832 288788533 223980749 68944703 57779364 776575573 21878714 832654596 586657886 787783625 677928068 876890432 45377457 974393700 209513148 277104299 716726309 198644943 309505946 197055590 455908232 225206655 913490855 72173705 427267365 974673338 13409309 697101584 263011246 168837477 731013951 137026916 462146048 272225159 356725232 766509875 114670470 836871777 557937328 885550048 535197063 252690064 760206537 927763872 870533248 660543322 156289045 103639114 621687559 702313783 416328629 54203058 190426814 744281090 278227474 824599268 149044958 62208000 729974579 863359928 908568557 858159073 664152186 903734595 488965911 766892640 381105793 252321690 517737753 889446956 999448025 355974708 774669958 129437237 897632437 473720921 914051955 465248475 375289450 769103773 555365115 157723671 597338920 861400665 786479327 613311817 235068840 76236311 386727238 510048666 888766667 297655592 699719461 820828543 158080429 564253945 406853977 912330581 652658525 805698241 64768135 907854483 551968481 919894134 993123218 904174012 121239698 49352679 729213302 147594964 759406453 850318675 436561228 206601811 105390579 170632847 909395128 287484483 926522109 764073814 837999563 444660941 125484191 940715716 326419873 664605825 161822808 962834760 258241900 803915757 863035097 873638368 534263110 50996716 802075837 960280465 907255689 362964404 928368540 914757203 72371744 116284054 804675659 903301525 992819074 935034390 177188887 331100051 711034191 116179577 514679206 330508879 279898078 843270300 159741809 319172301 439909637 418927602 282267561 275384197 592246133 522712376 58220209 435914682 727516155 485967412 728799870 31501811 705781938 965649460 986404231 562709029 848857077 803591003 189739535 726511994 865498239 920569602 837926360 284575314 411139402 415726411 495653270 701749905 285654910 264976661 401749547 908895039 61935943 431761876 423518497 103481067 63371538 63264661 485746935 148273795 515537529 948351335 531782867 601907061 987074488 400494838 825823582 412219994 821663485 663934204 533394893 713858277 735816585 609047767 578315160 673640895 447199168 954611970 741642300 665046328 16286324 767620599 149649016 446589718 949789733 332021563 191480736 890300712 122889333 308066565 539263926 594156113 742675890 990097323 709537646 504397871 141675075 380025955 396463088 448993913 872694010 519086110 233525476 125841929 657506945 871131151 6416062 40895673 308856085 224212535 244856614 32258149 247610808 925955708 814202335 666758123 517302023 274483128 703502376 628632731 75055332 981707828 258612631 346059487 761585187 788196091 287980492 774435179 181725136 321878257 511469707 871854152 187473601 222353623 791124876 196635496 133275627 917819636 216821552 651711176 342928782 983666062 262814193 555009601 62276525 303869774 360997776 60177446 387828545 638526613 531588619 777676160 791887501 473766 130028356 201218087 152264781 744107722 677720519 823722118 339591917 322454204 698898197 951265407 233672825 142246570 12702277 445648742 215688710 943385001 867612177 748536251 693656131 491887055 408106898 849103293 398063127 429507047 762162937 859701424 780938184 739094034 78095929 242563196 920311924 481573986 591281799 302434818 649020799 690261788 460555428 32071871 664061118 139290947 555478396 55768147 507794542 173551598 793851740 392285642 779850806 189490770 124990188 485870602 492719821 116686374 696502731 204468379 401147013 740981975 324281976 894428324 67693056 770897019 462840009 262752504 410555935 20603003 425760654 463171277 607301177 284534321 339089061 513048636 621713662 624249194 368338238 370961153 979459724 997690818 79464694 153299890 630575351 326335553 45886005 334905734 460124084 916032171 192859506 409570396 778530974 980866348 9511718 844205903 309775469 712130485 115339816 353515485 398780129 225175217 496083146 716324243 904884395 516694260 612191610 196999528 168779860 612205157 395044205 834411361 843791223 929622402 87772484 648982624 193129300 398727826 233562580 898086418 342439961 401800017 421249739 370041247 110500526 409674813 314935338 839861357 635564268 256159456 144084455 941007189 274703400 283318055 224762638 792097405 550468214 766416958 260086844 555623651 256787572 719833218 686631297 367987637 656427583 496969112 213526205 113493890 475633451 109945079 336194659 585274933 771042555 109190576 198606749 339292652 66194560 598986460 59026745 344553835 449102708 149105574 284167029 143530871 433672990 136431976 154282228 260052976 212119113 18748006 16182473 573934037 387836250 29221195 126302599 224857978 814779567 603176790 102076128 460647357 646810026 939281038 161847530 234351341 31310047 380570451 542195838 757091014 569845199 399652233 889880533 201048861 721620454 44772817 512302533 694402809 404352299 701420038 827250004 856172364 287967380 212894373 59182640 369350633 563051442 499370864 475917506 351582149 923814421 142134086 274032836 106095603 441156870 930873814 42041650 626231764 755821147 381221174 880349296 236729343 483392490 488959119 495943345 112867930 226082379 105432629 62155322 857616841 580371374 159762076 830678461 933100286 865774561 705921760 37375180 938844916 294821735 158545206 958485182 156604077 10431572 270778342 371973271 575037833 869774061 560812899 207308212 591916754 752675631 391934751 601251859 403456875 698409972 309245320 626244695 458760147 395899231 453164850 71244248 636483184 853003833 656420807 667988224 861869539 839855041 205745347 89996944 439756588 153921666 430693120 209898249 499986087 487825649 52571571 475144884 270558953 18047318 359686455 422688344 865922621 813770799 863022640 38754322 981252845 873230733 111117458 236004484 168220781 874651030 423336588 498654682 711856274 17154004 201303088 847716035 333510974 965402988 869636180 300729231 840811068 751332785 242071341 340492671 950824626 253012768 340801275 887901332 416088287 24669376 580178379 963471955 420144406 674882766 59621723 66542414 961552868 655106711 987024434 953685781 856468195 490367600 68719478 109933446 987550508 514873061 911460687 280746572 702864205 642925956 708620001 568237712 797820120 700760970 472058235 587088247 11043657 922389686 263488801 868122719 887572247 885374886 70079378 557576800 14370842 653133310 14065848 764908235 76584438 455149891 875096758 820300202 741415445 845995824 720553235 187019817 511637319 626189197 925538238 350207529 620842044 2551964 467195786 888675767 484120037 684210920 480935235 411614970 330083824 205683345 543780043 625162065 765695383 758264733 34050632 510161805 420601312 425343940 236867272 165832862 864081775 77175060 509003598 261814175 286010261 377561828 240988393 744030431 133339778 433971143 279939243 754074889 145712809 888444039 66992257 370244345 178764877 397982877 217273323 581255366 391832152 563857389 847585353 908565108 17065811 83354353 421731898 714546435 173887720 806998180 943785119 436435578 288655865 608638112 416836733 441428122 988532200 862662646 464608952 32022738 418983920 798405048 398516576 235241265 664026509 239055772 647052976 654638645 672748663 503747059 415323551 828339826 645882851 390478221 579852771 369447226 971171882 77139442 285010474 940158191 182159166 62974584 903621446 702033198 767175987 740711112 496854780 666837916 673505506 411232301 784836493 920864882 767243324 278877102 828431896 327616742 211505692 589065212 704071400 878476651 42574649 437348748 6791225 503605081 494832796 43150394 452038386 747854986 721749884 276860731 859195133 584430692 67100940 17270954 497856608 98569069 347722031 456589093 510629038 73282994 530691326 516972065 663633850 227741368 257333223 13206756 158224285 490786737 687305048 686535255 179935758 481900059 994333339 20277679 377648622 425776092 865077507 209949866 212294257 2370007 311927682 832107425 17625678 406386329 415432222 222271752 23526780 439003779 332427202 950201749 373869273 161094985 271372424 66600968 834990748 8531613 643739030 688989827 790035293 550497200 646973787 741856013 55521333 198676238 588925713 138530262 767658931 545885469 777198370 630688981 956915694 191861818 806157561 470062652 658305422 234946320 348827330 714075382 847101288 896194364 615301824 680856030 106224528 476786152 241062160 557986976 833233698 840537928 484552633 105628857 926633464 774241447 814410504 582867466 644056657 298866403 41453733 24930381 981602636 240525547 177777500 864217022 658239995 922731740 141538944 285056805 879373088 557828207 4608345 711481339 342403619 451677015 506427710 501008517 588732941 239242628 563582759 556472584 246588562 248495851 805374805 909376292 198703408 479780379 130549082 787661036 637346613 957945800 158980441 845338374 885946031 363255247 207435818 822440086 253848853 3706581 263756665 460870088 300065264 594419547 731682534 558910762 938177699 455587158 286170422 200658242 115853297 275304667 362389794 94788027 178099079 861687158 802699693 979394102 637567809 4318672 104753451 5778511 708907471 104953159 937928974 963865248 599803573 908376051 276702681 867797095 796105002 494729000 328186788 587447366 890288091 668650374 668793350 782175506 656082971 407732011 221637928 135048416 599680942 462277966 719347428 965207323 980107772 52642597 352117677 739031303 676770272 296584951 593807907 880691182 633048447 579915018 808934474 422104518 828839505 776998169 672710835 803762067 885146029 843127352 772905824 905521069 552224339 481307629 958024778 598138254 318411697 591611984 429248638 372360466 773290725 466911827 825921633 425164587 956691904 354555626 978291163 506892996 285930346 296346937 804005927 109345298 326090808 142984558 84143834 497832927 274931499 785328980 706413821 839022503 800407220 675337496 455923824 631179214 508431993 730709886 839460653 371961467 920834444 100060828 979353616 537782928 688217066 936658562 82737213 614696034 58058394 553836200 734651112 181431914 734106079 599676312 673399746 705425166 493105776 429810297 688301012 83393540 435995806 357703408 317773059 508115062 555071575 359331196 144943329 761187543 716847093 350148181 209564890 147458188 924304911 6148559 476888016 970140967 927620912 937973819 924887334 320800498 657420813 160271065 802522337 690824732 22460658 245033745 293420129 738736852 784388867 25217184 956720088 824146952 639377845 661656982 597372538 193703832 862273395 575246007 189727206 79189103 309883722 850621710 113127979 116406633 584262849 206479096 647524809 330420448 362466856 146023016 593599985 304022512 941534462 906613580 49406615 361782293 163706516 741118402 642360951 710869160 53900731 268928682 295331784 322281185 855318949 933501656 270061434 242190546 108232131 944600850 194547016 632796693 372847388 132894713 563084286 200620687 202160531 223599035 839280772 309371047 129580113 859619611 109367091 78525826 217762726 211413017 399699528 706127740 274274885 866754074 603140841 297100004 790718236 294866974 478270957 62377818 796353797 404632674 694288853 235776779 134270499 629031212 937325595 715138567 639153539 812613614 305994938 709371824 368416916 860677994 62017065 816340465 994529039 817407022 254857033 410883979 69405063 337343067 978558352 120804588 324136239 25609115 233275239 822952209 173146998 128034321 604106278 363575211 904917365 379765226 343221928 638703821 208158216 707637568 938622773 360573084 336061585 906231166 610383082 468862673 164759562 756770517 493553990 459483963 180220115 93415933 85642260 640148582 907788864 161275576 439648026 687665169 876139316 814110499 781419504 480330398 934262136 758762433 955957785 721508267 967246710 875617163 198922101 649967132 134095681 294797293 501587833 266222144 91194804 283224571 393623477 754545424 781397414 508490712 651472672 699107328 61564236 686032309 677284855 985926927 453566783 116988311 458113414 688021506 408928291 417382499 323117861 504056970 552506633 630886666 671519569 827922198 147481731 71595281 85712907 259304304 953408449 74215962 389227324 880546433 769647307 540423960 426039040 693667407 528514742 812027126 765802810 437771447 74252941 48681940 858138602 120164858 841446174 5482008 131594099 916327001 681612194 472702647 234954392 169422787 456572863 477012944 939845026 629283404 875917751 258977783 841610032 607511624 835849233 64055815 878241101 66856101 562580508 57794813 613392363 974820183 852148000 924034215 997717252 965661356 707232071 569671049 445535132 81399106 30762659 744382145 927712345 326052110 706018046 831097547 958550957 711112481 690581439 837962261 827805094 456164156 528296805 379181374 156385039 755007320 162860230 346461639 687787568 200752060 425220880 287870811 275879588 79345501 730222807 31883892 422783501 498155401 460104283 692090511 122280117 857918565 628565131 14193316 366575943 170924055 211579734 528823641 673635282 173678997 390844551 377418548 661076216 176822349 963967029 768802993 692230113 974423960 174312287 538022937 962504486 136018987 724833499 414647430 886858425 533680795 936641531 884261544 112340770 701712904 878615604 740449566 358154366 172506592 938422261 657946826 909790002 586283104 30359185 559855521 584028376 510618211 406168060 542535611 430557672 744275165 225720368 258519547 443137013 493456755 642188760 29192299 790189923 488606089 763925161 653889745 356161771 211520755 583059312 83727400 545224401 991576788 125319933 907935080 854412934 848267288 283406524 785504095 225000031 62324152 437844110 802334556 586876648 446301724 508138805 711850653 564161054 776360196 307485408 801680148 912376898 57031655 717649261 590989292 901561986 839637180 733386050 471032311 580954555 629512814 706130571 672194885 593092867 623386783 681854063 311959358 119996605 313601910 896835069 636088379 240823277 738907925 960827160 564846394 977167017 48101220 564153765 38672618 548420416 241456424 418743307 575177562 187269818 843799938 581821322 831642031 244719216 967178619 789873838 155005154 828472703 513544897 995807351 715136089 933592864 308342870 377496945 187779855 851263298 982658576 493381582 481412019 917200404 562996452 934632069 328858162 947125033 198399139 600074581 913600915 600122771 702560188 317891519 240680502 117811290 875991155 849712258 115218335 65195974 211893315 974674107 550829233 695006412 930102342 452252007 400835691 99496378 93505209 153691225 949709822 965135893 879685695 578339237 468075067 140854891 795172959 8771111 45696528 445711734 729241384 908586612 982571812 482814407 127236460 373532909 810139535 512008432 347800207 288049491 763754853 84530310 421782113 530370096 474014742 484005228 167693976 447773134 737364431 744074722 404981000 516019540 875491588 366502116 621947895 202148288 793922549 799092884 809654585 304266819 278899750 484368102 105260721 156608477 892099040 820915683 522728337 984435321 327313901 926770712 550771224 792064939 91391298 735783280 244166352 122308247 950472160 960846607 893836455 512555914 565823747 577013425 169998172 531790822 177321295 801844126 682388824 730082101 714666572 748936514 239240099 242424528 770546390 871928684 390708081 298357947 591709616 718966464 519649681 948233061 213018619 909936311 468946419 941873415 912620342 822223032 1795180 564345270 666740605 630276608 310105389 164547923 552416831 804112289 684430957 436829077 434936984 170506767 199710996 397743785 5988329 237689645 667510433 644878527 617523817 389381264 250719847 351133904 48231523 968694536 562472637 580257023 431505101 581605038 655921991 885388960 901620131 210717688 467546931 538944021 421071806 268602039 278766133 461438516 663343033 213881988 567916763 710556602 238524785 239357249 78317466 617626194 30802147 92106183 99963031 942819978 152426795 569269115 792900284 260231777 549237556 786031270 502159307 861749750 544683144 279161772 283460772 600342488 457073940 11975591 439891909 459665788 974300160 388825158 186233860 347895790 269248370 8615216 303256505 145159550 109529655 342568460 966004679 139865120 318220536 97312101 326492236 41568643 303703094 280692022 947246953 183422766 397164583 458217165 841889195 656464985 727283447 790469458 423965575 399050273 68262473 789104813 411037543 866148954 820759475 990995774 554785221 113354908 794813825 308076061 90754592 212500954 756541523 725352624 369124510 983726932 915468795 378577428 74564978 276397228 793218268 258567649 625082598 541563209 830535699 701480130 419977951 38768725 626672745 207447464 44299146 324740717 610161146 706935163 747017347 713437291 560878464 836464515 859824244 899109070 254077125 956447839 849381794 955749876 436948719 614518510 354935803 351309040 761644204 745382728 616746488 350294877 329003915 798205311 252584238 993656299 832134976 551323243 335628526 308119919 229579682 810235946 646824607 861965682 836641830 216165521 969003296 931876652 594417248 924348371 370847674 988830953 39599822 197330088 701653202 594843228 860608205 852008201 78535621 334130040 641762396 131122773 545314031 746572255 467462152 182078303 659788468 320383670 596108149 279655430 295549778 102686227 154026538 588609457 274005152 536276373 346431240 799257071 627518544 230408669 888715397 565908162 898526986 123672985 288397405 78062816 531072296 598724457 821537769 418605824 500475446 143841962 598054708 589351941 601954305 47407824 77510189 343627970 557563742 389763973 89305431 906301093 855649680 313131402 339243073 603201953 408241525 564519336 262906574 9597856 832355618 248037350 184381875 556688355 706805028 670462552 445877941 623435895 377057467 22131352 651725652 429311840 953383145 186041744 826197142 16061279 207281351 738884592 428752252 258381333 300534220 260437717 252800058 313379149 632299733 471741504 885017980 84347532 316170223 677124946 993879534 228611587 66795853 99194278 387930419 290686180 325609068 888199512 366847362 483086705 13623921 780499918 549483959 493190232 122008799 780559311 805495480 673118957 849001813 984688642 569662114 171347433 938202348 49997761 25176663 523099607 914027328 726002791 629844170 90188193 344012971 642171806 573542016 756949245 649870998 952816469 582271776 223635395 379089683 252902021 394841049 713714 745350476 622814602 153974969 706418420 879173422 372959956 514363217 727933680 220644108 978395097 229013258 22344487 117683240 516597168 888664579 631069706 488849866 137705564 722506098 278819673 628112175 930490985 46664194 346590973 37558541 574095831 526422313 692740339 745560696 146532226 597954398 131171672 748145197 978100326 512406060 851604465 494333754 3896002 150290197 890596226 995776855 776071329 399006460 597972506 491185750 603611680 29673884 946325582 607062886 587268176 742204492 860683431 127384786 69841851 980732126 281996756 43424643 484020811 709839458 945298495 177181233 575150891 353817486 691550200 993747393 279180294 510894058 275341452 20062511 512703192 553778644 750659040 857263572 569153704 527135249 564839563 134282396 691355555 361915998 899128554 767398885 631328629 380578673 440950241 664320558 404962059 522713380 217851781 676370740 881042709 644540161 842635139 798088050 613604917 634402718 923653772 783607352 723313866 216350873 601759133 20736589 430274656 290263124 967721096 977343252 279069748 846380448 580909962 467383505 203079633 573871680 357416422 639211317 836231148 318101977 675596047 343724782 367571453 968542894 440035798 286349936 183571547 525021410 654036031 747078599 559331363 713653334 712029579 649111713 597619708 479642280 519678499 876448128 743011798 968771477 20070967 780489635 907550859 362435408 69985221 322294117 732533694 638681175 856832348 644612114 235528965 267962691 988926524 843582392 123362143 708074156 604133435 309255937 734492346 772329381 204757756 445324887 642345563 213609781 469141449 548216621 282522023 366064711 69508218 325427020 589408924 106837444 377084233 62533112 35455686 485739354 260289388 850252426 569497392 911497627 455820396 424236028 735927784 46707437 461144223 10229330 804614907 382397322 185880245 667880925 410058446 859751067 366333322 392571651 18853445 103484854 867532686 524693849 327863209 143805967 546037015 759228435 518130818 827218764 977170634 50269966 123783574 319183031 104544677 269883132 352943185 552576410 413936359 282319213 825935052 394881920 632462294 131969246 758530897 294892695 727526765 945299243 669420771 4826461 554103597 995296725 986031221 431431267 141193439 938043568 477362589 532829914 580935529 256889122 436875803 929041254 233350500 572259144 699861873 514478493 982413717 434496789 916540492 72007002 13179424 55116773 846412890 307546275 173829912 704500009 693565728 578423351 738176411 559833156 184031027 738633035 809885338 128949750 40591273 63358106 138868531 82051618 203034772 78503697 361381337 30762255 833379483 741894121 827620896 985695945 544683572 537535115 214124603 179491332 339429815 840697201 162245424 804330096 358884352 226457099 719496162 869544013 551183580 23208221 905417746 570395327 268334947 191818948 686519476 942357815 456865182 460962350 394607257 148686065 337635305 313640540 590748939 89735725 543538222 83370478 662244004 636010172 158909978 591811348 127985257 755538100 151228323 612409433 658459394 940288387 132311073 270172692 247752138 356412247 365773590 740815045 681672190 593813155 452283186 645472966 901440137 458256035 622115658 507175878 625333583 971874131 742404406 232979369 947001655 533934423 458154644 638700808 134947838 585690297 643587231 756282695 63409820 160922956 336171503 345251495 260320001 86319789 506006675 859901789 97634699 56649235 813362673 869662734 478306356 697082756 781464210 701743209 517745406 683412398 480711736 27234995 443926066 33424920 419895008 657908825 47700220 103967119 410163333 400468879 934930838 614500500 748765669 637730766 299673028 521089007 854726123 990351785 423054759 614288558 717899433 787531723 82015580 904698412 579876669 52042837 698881322 33479305 570972033 307246560 214846601 621091085 627944625 696201821 885277744 900389269 49850363 421232959 883964760 55462991 366369225 984837428 709135057 206410556 7136823 741286774 292153261 271769203 796591562 266260029 139007900 512986619 875797560 247773705 671332723 762337276 439626611 296797277 458971144 911406631 525372614 932220602 405037717 868241686 729749539 388935900 876522245 990928049 494235440 869847777 589915667 953862558 220040893 352295146 362479695 183629541 67441774 405143 762229164 924391094 694656523 287049064 186602753 714205241 456722324 294762520 840143110 696641662 850315196 964896292 432356413 620623882 685793381 992277518 798917706 464842683 754850859 3022349 736052638 773278698 99090142 627996008 977419156 875061064 996546267 256025210 11811327 406948097 42046840 917441429 815045685 632048470 9149148 833016517 314287478 274014160 477657853 272630149 554403164 777180350 309167212 900856489 93418274 679063815 161518631 812410080 945415133 153789787 376865078 693962642 65760102 897811593 238870236 554612540 711229224 908396663 652762377 384078203 19243164 28671378 902942276 523661333 65891474 129696738 793144061 275673879 295679321 637562952 595952225 118375270 101607654 628982883 849182986 934339416 322513144 206164426 829833966 589870885 310288207 547456814 843460415 608386901 691408520 425429562 563839924 571466066 940553550 689242947 7205873 716809332 307181341 827343104 858541700 729306061 588981340 182774384 515939182 79143154 610434925 696873750 229443091 122103650 391772551 900031751 573053694 72985207 569056415 805911458 414404067 481984795 925702623 981182968 908985268 76598625 69094549 701201733 812110175 88014768 282027738 562361382 968119301 651972269 339227210 385978951 835500694 194409873 325819040 146195392 978641085 865169258 117057404 76183770 225169676 498243761 257876278 123140334 160229106 791761963 860088320 854704255 270182120 34520275 7153304 494150222 438946314 652384205 914299905 537876393 172349954 653845673 710279487 392624205 161850706 416511263 920436194 415643991 191411336 307398097 55375724 426388152 668156721 565747011 800992301 1202915 324068683 364907044 690018186 250512751 488188274 249899403 967142623 754161911 970564752 429844117 908595115 539982609 503965356 212994219 793079837 310824149 298929218 796074851 260923062 665019527 181274460 82322205 156363941 477585752 330725079 686376647 394747098 564391975 759580171 627596519 394513168 670330123 690492912 360514810 730131892 229808023 364081099 750476846 280061465 505507740 365413053 757343796 565003353 336159461 182430075 727283699 861121031 78259425 454383081 376819792 897890175 479754670 718629468 276000186 133091568 894619716 174722265 25969175 736958425 281124161 694011102 420486583 916701465 358070307 28793771 967201899 805158031 810907163 490827981 254346462 18898066 553321767 825329845 336788184 202869247 401729533 158334272 539003083 513498413 562169587 473348882 618365214 231024986 278807067 805828181 539494842 460796396 685572190 733154668 951920581 946550206 737789651 781733027 308379340 835653986 123320129 969924996 879124073 139760636 979286624 416271819 442702690 619527067 76197373 874579600 580023848 762632932 190819442 867859523 435589714 49842029 27107875 455180884 186327777 903399651 286260774 174721845 529781415 328355639 921433301 750646394 968040143 717949556 30896462 727004526 989769562 75476247 555587496 37992954 366391716 221399725 655545042 73757879 814045445 830467694 254842276 383218491 963938211 571054659 116626758 365582876 292512194 86955291 621871408 162094932 934375938 634912652 57719578 761054600 951145826 183500668 365102392 234512574 596347406 290916500 599202934 219569318 126507584 868097293 191078428 276240855 732924788 58969511 965161760 996561584 730273593 289555083 801421126 841759129 128884472 125286124 216673889 230026831 268173210 692684365 234298995 373010021 878358895 476265446 651319909 697768311 373218888 984166468 852707035 385871084 881466300 618064294 622735536 776118747 802114613 173314240 751274698 74459312 65625764 171995997 483077509 568722957 769930395 581829037 174278370 107788324 73470386 183422884 232852562 864063892 714776547 951892074 669221276 4513374 394732096 446838982 195937746 580813148 584013728 858108047 823231240 794938031 421360291 527134599 561901633 428544646 60463594 76836077 851038989 933792237 165018310 75988170 654777219 703755415 884903641 675259958 392345885 175390149 950046261 752495665 54273789 933296466 738205225 781319926 564011365 116038370 611556867 867712585 116621006 177865565 723724582 14231766 427241403 361970032 359974042 750967820 283223090 599003283 623043936 165721245 613535310 330462655 323357230 239908929 879552121 428336900 650591004 186293478 904085215 866929118 507611454 439818079 333402723 343617943 339064985 831757505 461496400 59925502 663476603 433055436 86554706 931648749 437050608 89604661 898344623 497308036 716551445 586272804 455531325 581222250 278952212 527500466 397409410 471991620 914217122 76536054 1202866 692183199 160472100 304520289 386189968 197323310 990703076 790821353 370643603 8884930 616036148 487261643 412087808 996686830 121822542 699728008 965932200 179817421 570249652 738694712 645204773 153086940 70541347 172551662 208822785 70502915 906944656 188193469 890663871 889529740 563223135 149862356 277854580 563000670 302856066 378363712 285225363 192904575 368647122 253810065 399189914 376523846 123047793 396110694 42222865 572903251 64164412 244961533 559227874 576664592 748444825 712617611 127610249 76157558 599925083 457402180 80867177 578035414 562904877 337773574 285798459 855340448 522207012 262706457 375504539 92891231 722258019 867027253 198930887 726908305 837407695 961444713 318438512 202627578 334798163 164277103 531076423 56062516 756011615 376813209 607787817 739939356 934905980 603411333 829774150 553811734 290723585 459831768 428528388 272605199 105292238 766900425 324176143 434563245 892589737 966986055 764030424 432375691 528688312 350553071 529950458 154375679 488125788 896036030 777724971 554295961 824880398 33756112 176226749 584906206 210320802 730428812 8686299 580041102 337532310 89961050 781280804 219507139 415014540 503812033 889176520 723754401 451266494 797342577 597510754 371984534 360705371 198113943 144805179 159428957 295416558 540316906 735838751 751462881 981887054 736366548 803520015 173578854 430333532 160251132 822276474 144808481 490145113 471985219 979955330 433116820 746535506 297130333 340428480 687232616 780186271 396231995 251034037 894585644 377857183 287651586 489752706 287334781 195443615 648453138 63340546 609088702 680784032 160854932 582823600 274277538 431533996 257957959 703780376 292206202 858592108 979524985 159738928 860410377 114595184 947721637 826643790 765663679 633845076 813246091 195597291 573263208 227230812 175295857 357020529 100424978 996990981 69035430 239906149 575101015 305718450 914254894 68942505 314120135 478624236 278742954 454033151 381316727 541398317 696583916 472774335 651993283 369404144 251653964 387657625 430967993 271217383 779335840 46987796 118726271 942919972 544973881 665101091 518442611 494455434 260817445 711005445 459406692 72334779 310972294 818751443 480538624 586448232 797184226 187146100 349859406 190461857 424798449 298526880 558686911 684011518 409128289 990847588 673151465 753033823 113666681 212207462 803028999 805865851 292227817 195755505 465408545 321080234 955669628 820027463 147122693 280458037 889438535 869478836 547461581 505824554 856905159 81232894 865891727 429133197 564574237 997423273 966940379 850628149 764255535 430783494 445531804 726713900 272653269 992376203 168793417 725376448 965743875 292531549 376006370 979148525 417389296 252250913 422535209 458270742 98888878 765254421 512698662 940704484 561543869 971262544 872680464 258248510 106818716 809750499 246458606 110549381 509963843 596339766 20365976 942930250 165210327 578289149 855167720 826230896 919550624 713138653 438883031 454127019 153137814 97332655 419801221 82979255 803369822 957955419 788557103 888509995 887978415 259655932 936523371 469781667 947241453 170140136 311829804 17049024 560348029 304007453 440981327 241264725 365789455 898820004 793569331 524087091 106000115 491097711 832161494 651689006 950464611 4095752 755886743 313338300 195110867 649328218 56524443 900274287 390032785 6360984 832129683 186010245 362326404 371704398 714396779 435382874 599030701 655117734 572836974 326751808 707959169 52402496 405406587 909320863 844438752 687622711 674215571 43247986 546994472 230715179 607793078 960984272 939835672 912538647 856599064 980998295 559486695 546515555 651829228 85893425 380114185 599823384 720265579 339221692 855010589 435280721 184472973 847031001 947556272 654541889 879556413 641213899 333703285 92553750 453610552 921915539 473674411 955584122 79618433 41462945 669180567 51030162 789341288 905502311 167536933 909525851 779625959 980742860 225497353 937980648 694471425 796308852 63948998 711845717 172194487 367843501 694087250 396016590 923905819 565275973 808309648 300476526 466146682 628551703 727721154 257431285 504259055 302022070 136854919 885079200 320175420 839467663 823309315 119340870 958631410 94821965 193281805 492528938 552804485 355282035 103717001 847750771 698630144 729066975 402263526 147588760 412519580 54673437 682448542 907491364 534466091 949615866 239025478 23283999 460580643 351231888 236643094 892464736 100343012 57931047 92200102 462528394 83797296 85986676 162294977 466483336 124576511 700819699 397222129 430392402 69269904 373579019 207859556 502229407 366948268 823031948 965093728 935943204 850195122 305867060 948178522 729143649 723544076 265441432 8962595 317154945 68584855 542673284 882675526 700767608 210597707 60134305 237780643 735237704 108118243 701679772 306147805 804008979 461922027 740778914 761384024 646609862 299161339 343468557 544204571 266437784 733943523 985184187 482025435 502506210 859842472 807131444 557366000 206618442 654850639 77127180 748581565 607150099 86157889 689742454 44264651 321042184 485786721 500378673 125837933 333587475 637091697 727744474 760557221 505895190 905651695 725235564 831339593 549079546 123660437 176210094 558535934 690182226 43770991 693889719 569716086 281915939 189554239 878677514 511268645 644878234 652315239 330796133 262641211 610517053 353685562 467729110 22950429 928737385 856385307 795749252 111169845 166245827 17166631 719620182 541649433 104927993 219231273 269134298 833986754 442650409 569551140 459105917 416924685 278274920 368547897 169520102 229223786 271688431 723474945 890737487 617194142 64436544 394043617 973322116 880700476 94076159 109123572 821061834 260750432 130726740 640220940 930728901 825583037 773462125 430723106 655245168 855480221 717933996 573555807 414516809 586770521 481402533 855632025 303285829 729412656 449260157 407312603 622375482 906505654 47706597 208715280 78639245 866963834 19559031 543166941 880647425 189052475 545755731 248043689 709502060 504865520 496600036 321069973 382756556 72128802 962279504 510443555 579876597 412448865 536216524 635421338 331244616 41553679 226728666 259467995 654642258 524565621 399095673 649112569 984687443 136490376 84609636 231078197 629973845 751221990 312491720 373358276 121369319 707057891 311888821 785958559 878294928 110286539 177159886 151047977 623078800 421671331 66975788 734954248 32854163 629710991 845992389 261315329 474719575 17947604 900097708 318927830 14245082 378898022 288364478 766361729 88142665 426669898 883934800 600233207 836442214 227714315 818489771 523906101 388608553 409152752 770130638 75911413 879964841 741190711 234693543 723804014 914929211 691845104 113311921 437254947 563437919 939511014 907276308 723689673 48096725 406510646 768694583 394449580 255431004 297839453 136214500 581352019 188291667 71281373 443616325 572613743 387559261 543023334 350642932 100182468 442894201 362580122 870321505 562294159 549671660 939065654 66076310 57825268 228784600 621719442 363930604 798551892 724678266 88213607 787671279 215925611 237469760 472726906 998542384 728677005 136542259 106629737 821499187 260307938 643035595 262962770 250369388 97632706 384539389 787603314 734153248 666365111 795574154 971808702 844202491 420486762 3041662 836795299 653147166 144516171 724383784 169589307 324999156 21434798 115324502 134962753 668956013 831504335 94309216 200208254 50496119 724876404 270943470 621130416 791648810 977040961 547468996 660844053 864296250 742578453 756996104 771610895 473007295 607480442 395409364 134282496 965161869 674721177 429703106 866416250 204189546 690528485 911735968 539179862 940777384 590612913 168575841 333549970 918936159 460537030 371703857 746527031 222674119 810012865 371293341 293993464 888180374 712693366 544987314 537822533 292674907 931289539 444918111 596536899 268923457 78459456 642083409 930762538 409437063 229806976 176593795 94789937 43277717 861751357 78714892 662038894 693231922 247532571 775349679 229075237 375722603 947079269 257772349 962929193 731313970 421361677 199848314 565473646 186206460 479788034 828600147 409638688 694257370 797708465 17740667 827604800 548266065 131406390 15728634 868811487 561584347 551874370 754753387 340318685 161390502 995235858 99844288 558532256 380334122 776427064 297798313 220517249 589739491 891702964 980615234 793174448 161285397 207381982 148357259 113427464 667787670 152400102 154279936 871003362 13979329 26430942 396943521 575092315 679646503 979505328 297196047 902440198 706976245 664425812 700662878 288297739 278601459 196681391 720637370 328035845 186238629 234909372 432206442 269449109 539319293 143191542 478568803 471332744 82759550 118721928 517238630 312650444 688816359 812394207 771343824 324953144 885556287 9128444 193725022 573615857 56010723 198169685 249686497 998529918 9982425 763376759 687874501 913161641 330871364 166719316 987279854 117022168 452542787 10747743 550984122 604601149 604113180 994544014 363864364 973577046 271511731 128325376 372647199 456953834 213382952 742383698 768995595 54463956 751687040 449079743 639339119 30385122 822961101 202975526 364944638 965369272 682271337 83746012 807350436 47410995 956270861 751204792 152657132 667671253 975263568 816774691 598589369 635488939 786182873 617621562 295011254 674722701 3872556 483890885 469129948 314396464 243488945 957964869 923472689 454945366 627291762 166063321 607374142 350373894 707034675 757788542 980645084 778094881 514443651 311676850 561973563 853905500 199503124 25576955 837850242 553401935 149091492 729517990 104952409 100135043 625005274 777849620 681614825 183326201 170267316 647234401 396586730 772269581 178769512 671982250 140112055 449336674 171375556 113858138 379294863 873805624 493380825 929115054 963195606 1609927 470649484 199036148 557430440 879447751 13754998 550062947 722921669 57757094 495762445 633819526 114931728 479825804 384885228 599858358 543973561 400283074 778289830 632092973 421201791 45160059 281214252 787661593 622912169 610387430 165356971 84272380 141768359 950163391 840308053 26862155 831295239 432159108 639939009 553655369 301272045 261365428 440513194 138447843 153450530 726929110 218606842 166471867 706972689 173642272 790082262 272553248 134183577 516132390 45934274 583323197 633045814 35551979 942449785 457690400 929571635 612432362 442186886 691850951 823672504 513206732 423542700 364283759 862803033 657007058 472062282 184519470 886261240 93408193 401091875 463202872 439237780 434210919 855187298 845387915 685652841 947674903 918197163 176874823 383959050 379983564 250509136 723477928 962728122 818154872 744260203 947828613 662616835 255273206 200583100 451359343 708440330 484231151 706405025 218459900 283124458 906496359 39702425 553246254 337463695 635451108 901956064 565865719 862430063 193475334 398908471 384778317 388890913 78540384 539832383 140748431 261331250 546036189 64341208 863522839 348486016 271451527 335593667 785478895 589560732 280468829 546470293 491501385 635482554 479315163 68779030 20595710 723957480 96049687 427743641 17884625 935782175 176989417 442523194 621828358 764617030 691401396 242752461 475343601 622465519 26748379 370144964 953330489 622514623 89357472 406455046 921930464 137386101 183703561 763582646 630322250 21949644 151952231 775933768 291021478 458262865 456287752 533510730 205530917 124618080 598163519 307278364 20594211 667708721 99752897 881566157 706811480 43258349 44293117 347514438 771106547 669034981 435557907 827654233 661975145 694391337 378376665 311364184 983349358 595211662 3109833 407685431 369924703 926617459 499663663 281262482 106986097 348891957 611621110 268220278 582968427 391999960 648399482 65708445 671595228 546792640 178764926 476374926 966778770 591121219 493496414 719447400 762391373 211051546 387834511 851672004 757640138 264607881 57071019 442012487 665904402 234555469 662231762 157727432 784937474 672879067 84246067 4033737 27598166 931093196 610715448 930204532 328456215 924988315 899129003 536385857 44507436 639718651 490385326 63940784 735883401 323466330 5744504 323971933 584141127 574072479 728899994 288221307 260924096 266873828 522291438 935712537 280761918 785839981 438599669 894652653 757650249 197539893 672919620 544777566 128191550 401959433 574930927 596071821 657906416 164364048 25263519 839897564 170711811 288930682 858185621 572788616 764110966 260947581 206002418 619237300 93218685 550041932 493880431 343617850 62634556 769507370 148049494 208455247 102488224 992268703 268590839 382132543 679844731 115314579 61748012 356746524 376332494 185340430 417160424 599660277 963800760 707043593 659070596 295993913 371556056 82819059 960821206 22950760 691618749 639613561 755227310 396377653 337607713 91477011 721623211 911315248 55003898 967029117 21758761 447003718 142417095 769922430 565545720 49982951 428145284 704059562 288692047 398138056 10842028 481122057 899598402 457933383 858010412 429868526 736122255 500466476 460808629 267276529 771922431 664420792 166802408 497014725 132493420 385821656 358916785 892116608 605791536 272686806 42955800 574995795 664442219 927780019 486179424 265854987 529793799 67338645 716969986 73323847 149623292 232113976 562419811 154665337 893580780 972869516 61376452 564493140 875832223 718671341 673572640 151420129 464524315 874758762 571218809 599552293 283241894 984874757 210821830 114342877 687639582 250732856 718158669 55301206 280385779 221324847 708379930 848983483 643679725 663013188 764897422 788496761 613341885 292174317 23391903 173821091 330616970 28321995 449934126 158840142 890242077 302389050 376521627 94011781 950635661 823217535 584797710 403527023 352809095 690189616 236929918 196143903 879036953 102843248 240986818 122076189 934375782 447141071 191693286 703470395 540572186 436345981 686716676 196293561 540448991 36251785 140543639 572451337 732382501 920466590 326764276 698193821 376034722 49921993 859833909 979575048 688751772 801077457 38941857 733639394 934634637 785866277 614928660 994731364 511246173 563504858 608639308 892888409 669105420 721933442 592381382 987906522 915832714 201892274 454102488 257016090 400675633 772272410 586217296 275976551 810662797 457622950 208900387 769688603 691657590 998857703 311299733 30967410 79226409 19382127 602097755 761868571 875341882 411138587 895730716 225656058 112365546 213558501 37867931 853486846 191785763 207824228 692613942 402738946 833326693 127796303 701083252 791542971 976248667 245791686 847842818 253584174 485495157 28570572 746206309 116368982 311378401 298211070 207804812 275869732 268509097 627457828 339815779 184983188 20712227 123869786 769891171 94596443 680399951 267372966 769033591 819463833 199609509 889027312 116608860 85616534 264309170 194725358 663064756 409612306 576234983 774629063 473744829 609164542 609419229 288444522 629945721 87314297 158382621 809570688 368490968 92150880 763050546 740644299 165342060 425980208 155052044 29854666 746055007 747160270 947788626 99400005 546496072 499022158 875537941 507845119 15244622 231575722 908469897 123766066 321721973 158133907 926487791 894643115 452462155 12512399 587122187 181147375 318250394 509814685 798619142 164070472 589991570 784832180 970922708 959119703 403861943 401822671 920568759 466608153 969310174 380928217 318769966 19422713 930733259 83225408 203532596 720265674 149462609 210998307 518911623 488117686 865927508 223541671 217648410 988510758 49277406 684427728 355055147 432769375 527197206 897177784 581664297 158688081 759494729 645994665 461301768 454560968 722431903 247036454 358148176 611401987 878379673 863318968 378492426 616584053 768669149 169027077 636346455 474502514 296334218 685045705 663450317 694286448 24706019 43091383 901153516 780617470 318747158 624151429 54074907 257072042 881418486 175378408 439349027 868874908 637131353 442513260 370545425 289930634 121277070 166286602 288268304 58197905 248753098 270289592 954361702 96366445 978682264 783242225 85678924 659947982 162625286 364620880 102273730 202743868 924686295 779014026 674066176 962444328 985333859 267401440 912754023 644043929 989677451 737257605 667738837 559199581 754112565 477893818 543870767 381548702 119530146 134889312 996143969 732383878 443374781 73485334 978265073 612188296 494302991 704136601 599371506 143312192 887057343 639220065 181105735 62048942 416894733 969348792 484419394 370211826 636828220 664877875 134748168 143017873 105036365 401035733 39881108 74977992 815337163 781187893 235922620 279582929 382198699 200108996 355610580 157538253 889484581 901345018 659931055 180002907 484247139 826075867 276920689 48446099 574813384 990770791 44664754 961034813 806969144 442877301 242315297 118731660 298994676 594805270 26294922 621441541 4046750 98923689 202838926 383408827 329012105 159259432 9047764 133417520 234949464 532250066 829190498 251042441 138529673 134234665 182731598 43141228 733340804 240004980 956797079 627372501 451392517 819643039 966948314 110470653 147808790 986964 74766776 18888512 542088404 927610340 715527174 79043770 358958107 975922916 425876354 622848084 559944042 515208527 178614304 427189526 865730970 646203840 874413064 187594544 971897757 592792859 169672204 745561362 256595354 513838501 912586117 821876929 331548242 688369416 295484460 399266425 951385583 554526964 970762445 162174816 911517749 488526134 992734691 193343084 110277741 779015372 740492617 81701711 311872409 115363415 155797012 427324505 989397368 300010788 387853517 206430578 218040278 33527442 620243992 599337750 72763695 472635874 925323599 432272523 500513576 157847749 600066270 385443253 637353664 971225933 829376224 136074345 762880920 667927743 106951191 524572553 487226500 542100234 541468023 183916637 284535985 115130387 114620496 88622133 951941622 859269216 664658794 498182658 627072257 639248665 435438208 687697608 896330153 991023235 951576305 647073593 85890577 955495844 45419644 243015851 9712366 849762733 614727702 351681684 931418097 439151339 382334872 572721468 15803999 317680268 631250360 562296448 523034588 283788527 410669016 142283147 132893959 253390678 195618127 905624566 489824122 284982706 580943120 99337692 336606228 520028696 904227978 775731739 903591025 52269853 99756548 24853355 532934719 977102843 164452139 428850291 344769684 789548621 1742834 734091678 507240159 614273656 350346705 129232530 84018632 413490579 136259801 391840620 512736240 27999964 490973706 737797171 145038543 137864850 487444174 221716400 104653689 595530148 141023273 995990951 333539314 829027151 657655038 315024548 384889257 285148231 836676489 976555205 949711083 325381045 161119461 162869247 219231220 749527776 744246753 179314779 228615939 601256110 632847375 590543056 516788503 185348726 252824989 652375617 352281112 995649344 301399744 392905413 680709577 172833706 166014398 773820273 139826916 455594370 61476842 281608775 589068057 782535496 427722448 162706979 119385747 52928766 772721431 741515639 817138060 878392354 695694746 561249625 304191868 442452393 14839557 84621238 27730686 92511724 702376090 96689541 173812639 607080060 989532441 386261100 929719174 547321368 256424848 730897957 599830173 432071430 917701569 298880331 65274213 916358252 701245920 76053016 268687448 186586885 151375214 183336377 268728023 446391606 104181907 141686757 176664454 970656770 473946932 6520928 400388437 148923395 601339928 602362974 21430893 603282336 562900648 185843708 470678285 644809072 604141640 537013056 80152694 822923638 727662782 806739795 963134331 874411816 462483010 370007151 902044480 605301846 345031485 11768688 55534146 238739402 503623453 49867388 802622627 401791304 115056775 336357440 509167260 978525730 860173064 607138941 91361006 301839561 356856300 811707359 275056910 723732275 137726009 330119901 503347014 492755358 209132261 430465109 306105058 790649377 71175363 307394570 985069181 240376216 603077128 362879730 748472405 229736481 594320607 808287955 89263044 828810406 433095203 35280801 727422535 670544521 596605362 237277103 531853799 978320741 53391835 388281189 351918361 666386840 695750453 19405599 664960800 166690388 299884488 950023397 924158922 941981954 325594840 746111720 201796712 25787080 190350958 324354552 948348923 586539134 281692883 97474928 428632639 710156656 784653481 270484013 429591846 314480731 294271615 473491787 209818005 485865463 18102870 603339259 863531337 940543572 440651257 772065676 174931181 472457617 760390991 786664919 384258566 233062882 674070130 481830440 949158016 329125557 937924376 184477191 288324554 638781499 171670674 943706309 984519650 394990512 621249936 352883011 727929966 796635778 159607984 97966125 885733840 57952284 872254457 847790609 458255493 82512719 367915444 860877206 422021352 740345903 62356441 261208473 941588940 519797098 253693051 163690087 262862737 170355184 435206097 113971785 526371184 177023285 487521439 790630394 448188739 932691972 516299799 505280390 837143464 586162299 229412811 95665208 710779265 997195038 364713507 539423917 751169269 892626918 415177286 70264697 299174720 891906926 500694086 539597114 825355070 289921141 36519082 7350114 299513073 834977219 519016339 742711901 752489816 801815371 501871512 341452626 455225707 638334863 955335366 179810070 504103710 236872803 796041255 863026177 330434878 425189424 557949729 769989334 675007983 538372844 411542706 655180534 25007142 586019608 979980534 720992473 645938698 689431257 816686794 182093402 443570038 103739976 632563691 497458297 603612624 107339927 861911821 545355841 977918625 950275886 220883510 109494726 791444968 523773751 576685436 88127761 462823876 191025642 272865009 149117770 987917863 465366998 581761114 484040806 627415990 81011383 451715976 514608270 904543611 99661384 403318176 58654578 70236603 316155254 972443949 438352962 315750451 8097995 600867153 493554050 965632096 56488619 810956829 877584402 91502892 816337211 323610864 511704831 129967937 519257009 892875641 892809985 987373293 48126592 447889548 559730973 438373509 974385395 599320724 259040719 327698299 643129179 68583656 46636926 173654938 102606418 540279772 31533801 577541337 159974281 30197960 998363259 830273781 946944853 409531429 209609958 366624545 93192888 982144306 885379979 165759008 812232395 676814368 441036594 925276093 137659743 901170915 569121489 629512189 286979082 184758577 289014704 56846006 21816471 484090456 582063286 533447857 86502200 902698490 946151210 213348390 408680653 429597426 303206240 65124881 629471098 357110994 580249234 548192799 686657579 233524350 801528074 460070160 582728012 923701161 963499908 688910071 647793152 635998830 912293651 686246143 418375903 213703378 85353122 661719553 709179936 272618267 538305510 716754194 830172560 403112641 154055459 346194564 894554249 827389586 775738614 493688117 183413614 977035144 314125704 605012902 911627922 927571559 651176494 399750879 526769790 80911781 259759783 866782864 668188003 413166570 165219052 854715744 205155616 271661963 619364961 909387525 696225957 752775624 152964115 149375995 4647974 411799022 606375233 996385666 722475521 98927052 514848597 911644354 530033233 845528716 956529594 257819543 242144618 236171022 807117077 347026576 246348572 807190080 89591304 862344288 486264239 388011622 500369502 242195121 711277587 564265985 919813474 666502435 180362063 896313750 294108964 941742393 29818239 551598581 364479191 575819610 285614328 515216792 509770126 960514166 740340458 351905996 705885070 383343945 489234144 379708207 670719506 376585008 74429396 926208264 359692100 191148280 275485143 482022258 936789120 914652587 240589699 579794709 586052101 11478708 322955191 843169155 839690251 20101356 55793123 594136395 345190356 260912877 76058664 806547920 334619165 592017962 869615453 643055377 508041102 19924738 168924838 290331793 389629006 455451038 527079595 520746843 967797878 814857075 925686321 401596875 669751796 135082949 408232782 466832501 592411680 607313657 521680276 868077040 260864310 187246509 512560647 564959557 885214825 108889842 947757682 911340419 109189711 211357266 638067172 814276358 742504121 726701356 700336960 263840320 240532649 68292603 850307206 12165546 74975282 847936219 494524410 593203106 483752955 184656953 674680778 27432783 311390144 2004270 97650565 460805594 707145720 69875485 774177381 671786970 808493015 276458825 737639198 403583010 449285521 777446677 92063700 812157874 709015309 601576000 438911413 306373386 606738179 718585546 597178472 804033852 840720079 444064991 665167720 34876664 838386696 424073177 677794161 463875690 239758097 904436359 154200990 698723194 617056995 183831590 998148186 5182789 307722608 711321932 80030914 881815041 180673830 877718739 289825183 357234897 710024506 844833994 436982971 808588302 437618597 249238172 625920631 177593621 877067281 497677948 15130184 529593669 128436554 914865309 860927261 546931943 938559552 129534263 709544142 904463301 354674837 497799267 109380757 634343884 99420855 470490282 772472743 4770431 513776222 293860411 18787150 980448740 429266207 225974533 11937915 500873505 413196728 613768206 789235139 926528046 629236176 689121701 968052549 58000190 683962587 381305937 820265770 629923352 183221 952522018 571814138 390069966 178120489 165139518 740069427 917340111 510979033 145606293 622643939 984888725 611767694 776232557 838930608 365789292 763443109 743596436 211443688 21413517 796322357 262304305 152302123 959537917 398188503 723160315 917603743 141118273 713359788 782021319 743517437 227658053 165975282 492060228 671758458 437260978 868570108 116327312 526576470 280983496 898137561 899213554 994734874 10839974 528619197 546337913 401679155 767680288 257099073 678352657 242370695 723698280 775006783 515785493 801772035 858958787 30566396 201075760 754458275 162570583 310491214 156798598 77235707 882115296 931998054 102321127 589776323 347954788 84777152 815404258 200821377 108737549 63027970 579606950 122978207 222819126 530549941 950624282 815460741 951909467 95783779 274330311 455460460 585931474 273912539 11869540 740276848 746119457 386026776 298912867 739399545 167275584 712651663 676000714 882589459 380027586 333298120 437706783 877324011 24907383 429900748 46016682 764365760 302863840 31522591 608193870 62847997 731989996 117314496 818265658 425971489 558790230 368473928 239262727 346018372 190314217 7296658 688698074 169755757 127930640 663970076 488158178 673216969 950759218 155223706 966512896 703455656 998847423 188716814 701620797 987358069 169627061 3023645 397817058 58007750 468231831 223914934 924390259 80901176 362734378 781945654 353685519 760284410 238452984 222106433 374866596 894991229 402813173 210425206 765228315 334943214 403842215 175455957 710119805 562788138 284071031 348041046 435694891 959472314 783419020 36850920 536116591 22656885 452344581 434842526 362267901 340034626 350081600 950033789 66674494 193097438 140034974 952761363 118687203 356736279 175812313 844869901 33153556 560972746 485143874 784584184 56003972 55468847 130927079 371183561 82705962 627374669 225952005 632836134 334162550 271886976 205173337 749395284 326552787 846784074 590497668 433424988 208449484 698683319 239124471 414824056 375860441 942331718 382317964 671756437 428436075 439572424 437988916 787713601 425807798 626926155 942897333 68711135 520327544 550158294 869350412 229819265 747780489 128184598 35379106 876201840 750240684 785273999 770284783 383043825 354745479 184018228 834118045 689593868 9285418 521203109 271885508 4186813 921522511 450139857 908211119 157846803 230238539 74160811 390584769 40117299 961200608 517069414 367009908 842386805 152554693 730513336 319786544 574308248 712199823 977648179 752858100 858076905 502365271 602605541 154554941 889087406 563064090 329343387 861890167 581099774 835388652 42212013 863753460 759405047 743335706 904853516 293518040 141911227 809229513 848960218 238842877 707364242 660015855 645735186 460872488 159806324 125948885 392541503 921296787 194758906 817963973 375325909 752009789 283749563 887203267 831868995 991065562 737099460 967003986 667420995 330537666 914851045 553619742 190646993 505929320 67743090 220193599 609024471 901812476 738207897 868516304 260319919 751080281 451315373 300052016 871856333 189225958 895242730 384845320 220986086 583661346 753992336 859231089 953293705 615699112 306926202 858230741 406759851 933412639 647995346 749738387 90638164 463419362 245836339 285184523 53789969 433652967 259683286 395505753 573854417 629760305 238130414 699834932 972979367 782271209 36778637 109747783 79492923 146691712 452099809 393224743 295698305 904494545 145465602 15762728 289162493 436306132 967297433 420705890 170101717 393838286 752747141 230887461 708652691 403337852 559149668 172053419 911325405 143729467 387617368 39619124 696456188 755520959 126223588 567725636 834984396 204401692 486500166 553436475 512105707 450490485 813703548 348001547 282254310 562402542 263150228 497560791 117148325 919610556 993625009 316998711 15851541 517298592 894603143 102919585 825864494 705102052 510127579 630442740 651246625 213949155 957474839 559440750 2297703 515396026 333192659 953093566 34019939 768625104 565772630 905755468 485072339 252597343 508607038 267359076 973448229 530824176 481642104 219290102 713302139 637797351 941387657 266539591 43917379 181043791 251913526 730508692 922262899 134798141 848523811 682958404 986746860 194485616 91201886 585231701 411725475 190403757 930243278 536811071 292231615 414537709 437249660 785829873 58233355 854012986 846527689 442812160 994106672 263796087 174730920 303975480 767937073 243420007 81581744 729749077 325838791 517452537 214305246 898255712 675508914 790786363 365640035 575590101 892449246 162735988 786065821 821844363 567579313 900861213 282036142 486022076 844465149 53744680 31403511 250615442 932761907 982672404 88406137 66764982 107574371 70523133 487901655 316594538 577485440 71440434 34980301 602480310 695717884 450910317 294386725 667388821 418368165 255492347 95254134 52338787 564005990 960826357 539479668 15861065 234091623 824082804 686385599 513306263 335481428 145522858 179871324 232595914 995523587 560194807 186313655 415152253 337108744 327279450 118132167 390636755 418115524 288833686 662485973 20319571 389337616 983077390 170178920 186493681 264661964 50158824 66196342 469979819 902555449 209707166 92596149 329516505 33738141 678264475 515802530 386078394 997617655 265467838 542320515 27522638 294375218 744065960 553645198 726744480 195107989 960278271 218092218 746396716 171408525 982935463 120292848 549878221 397416387 932341482 130595656 684296184 489157361 200137559 671001767 47813179 140332390 784471577 265033066 649947421 852894046 224798911 397342382 357816095 665570660 149159974 278706982 882445413 405491102 603855616 2963200 403896499 916541416 224273390 225415312 323374389 702770979 846583642 916826883 340714636 142796537 405708204 436890974 973422676 296307110 882666848 378872489 960296433 543658165 549599301 137315337 681448889 393535692 328692180 973984537 219518154 558093598 182242421 691468895 543820571 84113095 17421147 52432774 351133925 61763369 161307548 157106495 203219916 364943053 936041125 157996831 857902333 149719481 665296614 263592003 166994382 847748493 13079623 570740985 698584297 595516661 807599615 486038495 755351922 877623065 350348213 905121541 398648460 311122037 661796305 362586571 994061010 197790493 771176247 865105097 800739315 217816306 249687643 695464990 429584191 506615246 885912344 469928146 20895209 689275675 433992128 629572959 346695103 863061867 466041789 430051836 22247922 450110000 694665131 330688817 529502419 643538158 103917108 426269195 29543091 306937580 44777956 567502866 648261416 624759428 869313211 978509581 811946814 804467984 549649625 170349511 398533773 199096183 227560851 265373405 952860765 719990205 711488789 592670724 55635174 665316120 327138912 877868015 453432972 712006431 899550159 603176036 615051528 13905187 181475278 127866309 847171336 692644450 783696078 594045184 609888033 478759552 879998302 124667119 213644790 626447635 601091648 268610406 365758889 130911892 18636673 301538032 724076388 774798122 440393500 160322318 2709003 87270351 920383942 575687737 436553454 812119599 56369079 502871458 418593128 807571985 700992140 670542613 219352829 470575559 570998248 856484926 690400015 972464608 775250169 746095707 227086294 138191058 419299795 717677234 6416990 689354952 387231184 270104635 648976759 566008025 871630101 266817724 624999359 329301732 699240336 395299630 740929346 959098390 153146160 442393507 506613706 445020378 479564959 639506507 891647376 130842116 823078606 483490584 176461587 89681726 152135364 217234982 985816971 764885325 544388105 321098910 541322272 489167147 495718121 14441698 556094097 516187192 280087759 886570510 612932037 719762218 746240164 597857329 781135660 851283766 293989111 913447988 29712936 673614332 917880727 304629472 921601351 98867763 30851625 270723589 840384942 568849926 156327662 543754774 493351588 790218717 796436956 686587450 73904709 820223929 581839611 796585803 348021586 518336993 887500861 360096018 68875811 925425987 888849338 612555047 826321919 343935588 688694373 361880927 314924264 131242757 517701622 210117878 892631557 553437558 514501078 779511048 19837549 391105653 843014134 51287475 722685055 722737692 918165909 299280260 883955853 398483038 666322822 877023844 279867176 276738043 835221350 851445362 314795848 803970481 687668078 950868716 4944031 930388493 993649378 419366779 475087514 611979066 198687549 274025980 852578349 742055330 909965095 267778688 993373218 861277877 62886104 312924961 376473756 862475505 589492879 129303228 553808276 980761583 501754343 154049824 773697370 676054699 870992357 540856198 614119303 621913415 890216499 277539823 304348661 975540918 85913844 211154471 116576406 591523212 271897347 844268747 858987532 364795632 838774007 385223760 346869294 962307606 947324468 271171405 5373293 494014069 56404690 774141178 940246985 611440039 302566459 716992594 467706391 211146040 736072242 3268764 174494276 340544078 202371679 401387839 867993706 30976406 428333159 695095207 173734638 175887082 354355177 215163649 224669243 455824875 690918270 972021524 429736023 247517581 961444458 24806013 990635742 716528839 739825701 46910087 966153621 123396827 494915689 431059054 698383112 585265172 119542363 441100387 522639122 621930263 619156792 691856978 356333040 187585476 939507901 554871565 824887689 611626212 502846278 261633103 857878530 544512403 286025115 449088374 962069507 743243585 253405679 976046128 458980571 496951403 784537831 347742145 175138161 800080710 60796148 918761633 375378870 615134517 657668885 122745302 387981623 547614143 697681444 897145647 253152609 113506255 678740857 288291555 442175998 971347435 822950817 235862021 537907617 994755199 897258949 879968620 538485662 548638058 36595557 527612791 579825397 166126397 795957082 624106759 966273894 117279369 186941269 487663052 933870130 703974824 755639267 516635289 247277094 889623862 56460652 179836971 330705482 280551722 872742767 741290550 358132043 369351533 135031004 216104233 454929350 101173903 82109108 499197939 513767773 357759244 777265857 626736156 414351241 600788342 65174721 1461336 433134805 343872081 904888829 388420675 408760245 117948786 962713562 335903665 733709068 211833249 732721112 588887928 932955198 264256448 729549020 280590608 892839706 83393136 411001311 17369539 863180997 952562993 163476519 337052668 706522436 765316932 360292741 254831888 208296005 383888199 358848707 855215198 149617119 233030991 412005412 978489909 327531094 416249439 521735948 871507497 446833378 659536616 273805358 131681151 469657376 971775617 777235841 474230188 863290040 429309746 2510928 746211608 795301898 778070087 130877810 125794783 494716999 424705320 970890431 212856687 417273894 177628741 200014473 929570590 281941301 168525304 182184005 796011195 800344753 964897622 38890747 396783933 436336515 547015488 968918523 463667924 351552864 89074603 106941937 611757753 707162133 952789075 485994081 312026391 801677791 633039155 362197669 814548965 642650263 241791468 844147638 753593409 594152152 635184687 92770234 920131810 518574445 443200300 579014001 58239756 522416997 306627140 338434776 84905141 929360556 832210013 797404958 142280002 210159923 933351511 862136518 271793684 641356870 42071213 357716019 188341696 883917424 144699086 97769023 437793737 110316667 861713734 120783754 381723853 608009842 655902009 887944051 639787469 790954637 542825328 643249228 322996130 302908387 726934143 926363255 122512952 895506125 766964457 499437512 514968720 224859963 231132363 359094138 529538502 438288054 508657331 757582230 51830127 87758379 354324653 294153145 118247035 164231316 127403711 523046871 547240211 571513040 432146939 513344102 125474593 259095495 246722690 908114303 550531850 816656472 617963761 319187316 291420211 683599064 413968526 753375194 705541581 656323654 955202948 190881303 399511842 780742898 176131119 979001850 503171736 158899891 670414612 622695923 544550561 712246534 676224441 153231611 801707720 620409357 111123537 577705910 831908501 509555593 517097615 62745320 831113864 405941874 155767285 763017184 210426296 245370829 457932787 461210779 145235303 682001676 935117747 778846838 431309808 19945056 510228720 25801510 171616069 324270463 990282938 208123815 783629118 730899794 345355411 531428277 723266603 680354933 669672701 792601637 405660434 959352916 642881229 208142153 419537137 230344098 965589917 268992901 875452946 955620980 228437481 824965777 778998957 810854832 729496253 18821858 465209809 419020742 397017817 614190699 93604124 146632994 91589384 407179954 944836056 453341714 477893009 645252345 374357709 837419340 953401842 760794664 180631164 910271191 919249718 580532344 949338107 292449746 693752863 546453051 574661363 438313634 60794825 471142181 343955618 114464199 208857108 14268481 799018685 967850188 804989810 444003894 200298829 350002964 461033199 787145490 662951668 185447645 466331473 177910515 705302704 68491696 93263881 68984687 345581730 180917423 942668640 764438632 14049433 851250945 613063728 178941986 503076294 966225799 366518906 670068000 277257686 269622586 886347334 214954851 701238666 558662734 175167843 249409161 14715759 379420821 579632003 938619716 22333744 825143452 931686201 753752863 682871039 522469606 43391965 349209209 719079702 966249917 324613899 384105162 369251225 927753404 249510510 967463792 70833843 416880597 988891347 660813931 794811520 955505234 647456985 475807903 647078191 801836028 921825005 945551440 459294183 634706921 719380355 751781243 438454954 534880671 203996687 428185671 84632355 485984258 283836233 373920835 950459044 197656854 570513330 797585856 839826252 395051056 705567311 846017248 296518657 239805802 966859129 47895128 591674812 661821712 357962478 501926571 951299871 715119487 362484726 64170401 59996168 980703318 176079340 730447364 475633810 209135051 833112704 412866150 608571074 619869360 872846842 611571013 450187412 5768279 331646949 971441104 434281306 694033965 168144157 104887585 620593566 623760382 858441528 35369381 394579679 683025889 179683479 443334817 910291539 529923268 224651125 977008663 914665954 234802504 499225222 51286552 965261281 383129973 147407807 164520118 543984397 23187811 198335066 749866294 365898740 62137339 518578036 993409441 933753640 797661739 374276794 397398352 667026836 560839607 639472830 962355191 914014363 305442319 532852847 905871430 483157592 700446029 243939074 821640383 989123602 583535353 483611411 186354736 873903309 596576674 154091439 994771836 220239342 94126587 715496417 375389137 806848158 596261298 114560385 566453967 562118458 783678473 95952439 969851003 477797539 791383984 578884040 571606272 860754889 861913872 151177858 148262627 720472286 756270660 889468863 997741734 447303815 231294526 587180761 523578584 820199791 818367477 133570925 786218515 894761932 566108957 907597653 728431933 289306479 302572761 846308667 45984580 681511294 417703828 784126194 435427316 34692352 371560620 595595014 189384857 512689834 805672858 67586944 793008037 58278293 790265474 134778181 25101530 576443470 477424412 250698308 443524912 629583627 783699157 513315485 390500077 70588634 361337748 486190340 349831287 585697424 756751207 528778791 272235916 319923508 6568295 343930004 648056469 320532324 755159655 554605215 414071306 249593814 903517013 502440541 399797198 693683411 67949395 10974029 101868765 344970762 212168005 162641011 779499548 453834226 695876467 859133638 383608606 107026005 440064441 830778355 926713592 441106094 707757537 776956166 135893650 978785053 626033134 533010329 172402601 710798790 224073384 811517862 154252804 737063049 680759403 630635030 469979519 117009287 145080261 582943408 328019488 105068187 135431951 477140295 833132779 849638521 935788621 361619295 497578231 761870791 758425544 822779133 479438404 187387306 744506019 473947509 476507339 814764002 348989216 681042128 736504949 457430912 74051746 122391433 698466290 913610795 339452344 241343843 137944510 982378424 698359677 380562963 334678151 331505180 321322053 474292701 223818498 75064188 141827981 503187683 24233179 73477405 52455417 639959386 447388124 978693295 849126120 545614349 831249319 263653477 308526364 154944244 423865754 158752814 397226367 185206119 249965170 573003757 338117327 645808390 234592493 648167929 511529227 964824829 641715465 74808230 676953103 601929926 154954505 511526827 381912114 710618238 481091578 910121582 741790145 884437590 35952034 753195879 773665753 618181015 538529893 6024870 342105903 928420152 804989800 815853143 490003124 506420906 735510350 679911881 173813191 104235921 836461352 223993380 507526767 973248027 555926902 666634554 391443749 725468113 187123303 360422949 653220661 304256790 187861399 131412336 483853407 608019003 609804784 516390028 255965657 343720390 252112708 273889309 701156769 674207254 654009027 578676032 289026273 413207906 224909812 386767918 465345826 375887190 619584183 416851341 852811440 717342444 450595172 864366828 419007645 644367812 581502039 990433522 77994864 866346725 893743704 471389842 699941752 968255814 695878942 171755179 966361757 236274306 604412915 33507907 821546339 287409334 877044512 184606018 887660415 135472549 501026695 77965320 350453676 178312731 952979645 953076202 669298289 886413003 98199240 297438908 901237760 21073997 890396926 366281038 383805485 662650310 674926590 611656506 100758645 821853762 844893948 315915418 710234644 655610896 585593615 76569213 871206427 862835360 734866230 214735055 876255619 884228124 318379318 579502532 503921595 90976633 256151958 833614646 945479208 885510914 600133604 66382365 310510893 32553764 297913983 455239549 338692737 511858872 530630689 504671850 944119044 745952579 232818919 827169692 108198337 161386617 887271372 902100628 103887797 666183265 553213727 910096785 831605203 31521914 399812185 503188878 830680290 470603472 387504772 564859775 810365371 386015575 83369182 661073078 153859977 31566862 574425245 192666016 333687634 843513356 797727408 334028753 723885596 161601010 731511875 817598467 312377388 850219803 989261764 130106511 516943952 812452261 830712719 971043166 420890214 344181821 795902740 255014850 922770237 870485207 57970060 822227389 545070184 667829101 183006590 571561424 598500629 562060454 269525363 255726837 755442937 288916457 137603937 582075049 769521290 549783145 923544275 185521872 17517111 838402093 879663064 271325885 211035165 967155158 659136403 727447300 633927919 461205220 549392481 292032111 777879981 937037430 689734530 873340479 167715951 809170331 66873079 623023673 207045265 267351932 999129174 691616307 723884943 862028322 603954289 910486450 59448010 737299728 875681935 700512545 583890638 115684081 314039449 862841177 511637844 140142894 910789853 510416253 121785395 590381663 709495938 602271645 540384965 988297951 134991337 421191253 589197320 957960373 786411648 318153174 489086118 474605913 201683889 638853726 558174172 473724213 143121586 718768789 20730080 275365718 673445049 170878955 88900776 979530484 587775971 344443451 731296168 787719806 942753858 56280060 128518964 505967031 835822630 974239312 210027700 517809927 788997201 575027151 89506297 505657340 538627296 739214906 138161988 95580182 783863784 65443380 850402250 376705891 680838971 305953745 14782452 420055874 252622950 63093854 332965289 475517341 924416835 352907243 802413175 584673544 174611813 577101844 205770564 158095559 273519336 509508525 725426301 63817046 574674312 723136188 676718923 617501558 91496094 573649897 749712155 493720083 688003576 309758740 462447645 701745047 767868318 634127797 885692300 210845003 400795397 262599365 714918116 121703807 403959539 275582005 74215255 82945830 501878185 705982766 144166219 441758633 651336039 927195440 111889033 220799798 64225517 188272442 351504078 456707954 57721211 196803134 55405167 777387867 521475575 261908337 537736964 460726317 638812428 847328522 417376547 24051674 846015308 124246230 375200848 316731988 547182938 941449519 557428986 423063005 682003595 999195496 142354652 126138537 245021616 442070956 116445742 746525218 411953778 245715279 21186902 123918362 216507199 825478655 590921271 953310258 61491926 102744251 181039502 968234443 339137327 614841700 121522727 290825518 193622054 162889465 280214113 752584601 31542536 262229007 831791715 628477768 608773126 235490827 887541762 277725031 311850255 747345148 969033968 345222269 734082639 728664369 68983007 736201838 622682429 685216899 22386164 576224389 217874240 998154169 818964998 592723763 990786264 215410912 273473386 669173317 656850385 536106785 203792482 707949776 692254922 573714674 101884539 871310136 223314307 282906644 377796080 485279876 679483581 404210663 704710416 420824098 687290996 82950856 239973438 131634132 732895361 92381922 289380644 722093539 576766853 972338587 743144736 157669523 436013405 472906894 467847755 803106738 881092139 802754349 534271328 829559731 546427706 408218717 566533644 22353271 725582909 332941050 118720209 142595469 176493818 213590471 920834431 372050918 137285523 846105032 975245262 774251081 578835815 744725708 829130359 144850580 130384778 954127933 208873388 93105056 751462081 698150306 658437717 801351196 745006460 174023434 320660 949682265 195578976 825757735 741275003 927850736 876886542 658212286 849249106 106271427 946131425 453204241 147885404 672907165 585386283 2018530 641308891 689784211 636064775 439614610 269414958 522871428 148910323 550819990 27857516 137018814 63603998 70419041 369590643 259581569 930048530 664276863 583893439 72416985 707869591 843169098 391760859 619349074 978463869 414348996 624401687 560736890 358044227 311193002 940197605 80559549 473789088 134939451 459518971 23415650 420234332 443256354 763512934 830797053 994654295 847765392 84855201 890763966 556526104 460401038 653748924 334918638 492838079 887496947 893802252 14610703 696976817 116522405 147502043 389474282 65515579 20781481 512522221 63053398 498114204 782252981 88935289 393352026 995922870 566093659 185369994 487185319 806961093 911287093 997974319 839166844 60342167 251870866 672494457 594278513 693555726 228091716 648823503 62328727 790944617 912878939 811422522 562259281 475471031 677831441 353297906 340463302 757700814 411189176 373433574 262237900 857865425 832418929 532050102 551773645 469033024 469595665 558038843 999837808 166047712 825434883 462216876 592394073 248420522 180715737 114777485 475140539 134128096 308057076 239189019 879848935 249216605 880664166 154256335 621122961 291215002 232408397 128962470 529605 681214452 109142629 725469962 757852260 332149647 749833460 44576612 815581946 387022260 65579936 188227101 880009995 205303727 1932861 845762567 843874669 522149754 817065696 105881091 51510982 82367018 848116502 937221861 101234860 683218662 518507562 955801799 227752316 480643570 899841773 112905136 622045570 287069678 639614591 74037992 253078342 1849947 376152157 76281610 910234732 131504577 354843573 38668004 27053598 24000310 703602301 133362748 421586686 566557837 495395528 981844275 264040996 739934149 446932379 219494669 336409747 831743065 290292393 907293152 216484143 989705530 794591075 586129560 272462536 586955912 385303206 4774865 462038209 456978403 58384502 405556136 244622152 183065937 179695374 804756261 401281919 684460124 231826807 834066015 179060550 56514414 563170547 452834339 712368062 915829888 637625088 821918972 804772968 299883200 457539572 893671174 485045876 566531446 145435920 684574513 560459740 488801715 233075277 957330666 283137450 102257351 589589311 777250473 410660483 982461144 829305590 584831110 136872848 816395655 314849526 833220632 47207377 880484022 254702385 420649285 522236152 537637032 909794415 595669316 875958291 745906120 764280110 273528751 328274066 507422339 119469817 435778256 20583618 202820024 363589814 872544917 696307721 41978169 829001467 12851090 714334419 165219321 105888021 185901524 527856593 874409143 951121992 970904898 933891261 67856754 71637658 230385913 487982204 75644234 122496618 175709636 479370589 546681020 736896819 913845543 617417061 707418485 284329032 425903993 651152223 554742349 995073968 532509134 569147324 43379427 911515238 41771903 650121576 223506780 608700008 649152060 823322867 294897412 235607225 205362671 349680977 330995394 44045288 749934700 500525200 673469013 304594769 908859723 622545499 560190651 720866398 883040260 401646203 418077243 895402987 169347326 217336246 947177786 557551157 285735056 588677540 554757179 48242742 992069113 536534047 157745844 561964686 472584541 909899078 221785831 88335302 282903686 280103218 220848565 894072548 336000988 526065943 286187472 702531315 705168479 299155086 356529990 889722358 954633843 241055652 751454061 166140677 149221085 796898698 548279370 420135363 950202923 994504221 122748173 108974802 355771092 772467352 473059810 695823352 443069773 192945885 316865650 864945036 576815057 258380783 367329248 994380401 894543613 680377523 943777888 205903928 842333542 895060897 269446789 919701813 900716164 33314313 730267013 986690948 54254574 744439378 100252641 107034234 784132768 734916663 347552354 942040889 420092038 581992857 232824959 988110157 60582134 92303550 686790471 463812867 309398407 361626829 183455610 833568101 333774964 533363479 552113887 30799175 497846744 695257228 142920453 495279978 892783585 826411357 998355875 778385954 383650483 472733750 506052280 369745535 557008255 519939063 730899750 584024983 442683204 285153413 981665543 973287907 933487196 927207844 826647863 365647140 460898603 312318444 710300526 922152523 366590091 667918940 29365020 385704365 306534869 777333681 100343831 945604851 128067963 43472916 757946461 798696667 795475019 429203841 843312558 686467232 236228540 882002312 940068961 203211191 305647619 969123738 323185243 547036238 855440005 284850901 371907005 129055591 622598255 898254642 844016546 805052128 520996294 731379416 692883645 604517049 715226442 269739770 901835345 123561838 509926632 415310502 256594652 766293918 601940504 871298529 930979559 9275866 912205174 22709438 391525200 89345532 313192936 993205395 203048364 286818959 398267047 773797589 286521194 662465745 768274576 920475902 433692317 626268045 492212110 866842111 593925235 971988286 856142010 629473470 610487387 34970045 323689074 761421109 364053936 998849218 263036102 475594093 160303540 274859965 492090174 941173930 171615863 392096915 369685015 448243232 232956833 767346406 632508418 207087008 569711221 956269555 184828493 771850708 836886698 938312189 991722055 116750620 831589713 560057179 307244826 490909541 713338044 387518039 564892079 919330996 390435414 387777638 219426698 527201425 157697062 117210858 420967747 526019594 943601423 714926096 209160954 400054377 545015773 975804118 36513350 984830889 538957250 762392157 705541256 840859021 601474275 266556744 874018850 442282166 887116741 56312507 991881040 774698557 463268032 294936692 791732916 164313086 71964072 350589545 816590186 20739474 39619673 793988209 493307777 394596712 346182397 686574988 23556982 872582495 69895787 166529447 202481268 721857327 560796952 760367632 781971319 993065930 883360547 464130689 596986558 449424061 919987571 66484020 874205810 181135730 147594677 334231839 113834379 793961595 369488303 207448844 491193725 643052329 4115326 93854315 607690983 720938247 781972084 253125754 659175536 241885700 263482835 656954921 337199995 991650278 514558159 295012330 199637524 908778519 642451083 645174240 890567738 179388585 419803496 755577519 695817666 429992127 23999983 176494252 740868208 548236751 934413174 217163722 872562479 74757194 381254982 601848865 723784005 291972974 811225356 535000534 480077015 887040257 667638313 21192860 652228208 728380263 929059326 369822280 711998659 918273289 469563436 545483528 610992767 259819648 101297948 810522688 594299380 331300011 703464159 234872764 592608335 77239374 91064806 657815110 19642124 954041801 217627805 84813151 601226611 459108319 452207698 93034763 875047558 911231819 208519476 626219207 229119086 92907577 677021473 784612448 854192491 831743480 433076914 515196511 290983615 539088298 844198971 141700644 137559564 413517087 757491622 137841715 242640564 574639779 558949581 753530850 537781622 637689125 811917087 30443103 191894243 118668172 935296583 570109078 680900380 453486905 137097991 974233590 491525414 155047028 116171430 578210778 596155952 960190026 262604827 49619087 170856332 848745736 956494843 274853331 378418811 340467519 104371477 751332134 460445506 843473469 509831079 830032039 376360499 524048826 794059045 395630197 690148713 689937366 313403530 924072681 637410451 206844864 670657801 962903817 658222226 88387547 72524642 319467598 826958983 588525615 464611121 432661714 359406511 547997323 702281160 206670687 21398236 113984623 840455136 448754970 688453588 20741057 495806943 979043654 42692185 655522086 966561887 916722367 115048546 351001725 709826218 893794758 782896404 704410896 570125597 634993508 613926295 673915374 365836129 376337626 241642946 71043944 680376950 144881191 839106060 645069800 869424943 151799197 874114940 990083908 550608325 21631639 515448718 577433330 162758855 28115265 61336549 130961018 549603561 793019235 324292552 342006656 383871984 128474535 972522856 337540118 704633423 103035798 285498370 652727165 384678522 519042471 263887526 149204581 544231183 981428276 808000954 278040947 585353417 391080669 939043157 380498255 453416961 205773646 904114165 502278169 43253629 710092047 964380664 604684175 661395917 365967274 402411498 315521472 264937859 63915713 851419211 310962479 762972083 123854797 909503321 45830416 505987761 744292738 465278235 586088786 414510141 259761397 409829959 948576146 801671468 592802201 604909984 130990983 115523608 743615688 552543826 151373438 567448995 430834436 545827567 748945993 444211512 763181576 697380532 702234239 781778188 620711765 556101540 937988161 98248107 562623026 899438895 377172030 354623614 367169128 878302103 579262111 790420188 72915336 162244689 713423683 522600562 585397487 933921890 367452495 241502817 976667089 137064236 537532133 312626121 787887309 110285390 422620010 974959486 384642063 281244759 635884271 336368001 486221943 871105054 327697935 85170333 839352917 297806660 746300021 950093728 968448802 57696914 84226195 145710516 635251434 356436566 174094475 899436199 898192679 378399918 446393001 717973762 843356004 175363907 227958295 215193719 210202616 580940980 119394332 93820866 967784597 101149316 617049686 745291467 445190785 811480388 290530379 361364097 225959528 173222873 694115937 204806646 631664269 951548031 88785801 97670264 802895734 509086645 121847088 820384532 840762045 415408068 792755327 601717599 775294926 865662904 833210233 239161641 604139968 345670169 112985769 991952935 412718414 332550062 670229870 808211005 599374434 989575454 140609443 694238684 245778182 722191190 152555729 971556369 575877406 179556186 474580697 328888310 490617217 229184751 631140109 741617596 811785686 48285354 692097003 225234867 556819030 644740265 348393919 397383475 265331173 529848531 301895500 327529520 619556578 326396445 11470612 28764955 549661958 1384256 130543475 569745030 615929673 38417803 977981240 737804528 242367723 794221399 819052588 72891683 665081857 38135820 221242506 702109485 436832130 812134972 568459658 761262967 276470639 419497856 260999708 746370987 818785623 791955697 309808814 815104283 895147075 626644196 181558359 204440111 325911118 428870572 400730443 563765043 373838693 651554186 570501884 648278787 88337285 823326355 131303392 491815682 14803896 61261792 173315395 288243640 176487628 921727142 575931867 821422882 130658369 697428217 61876245 316333385 184973905 788737239 106133575 104876139 171708484 257382467 599334103 826928195 936127658 434823443 458999696 632102368 102121535 632741684 27514713 417126331 535919308 153909180 3732466 431606848 116806334 23741498 58860302 457260227 108344029 334121381 57536793 128515623 536715543 676975110 148038560 17700589 198395484 124936683 178641580 480822179 583426268 297499497 470103304 677359520 82845622 753720197 318687952 427899595 35176081 572639564 972816166 624170601 127918244 182619447 417830922 644797246 131287793 403251438 898912551 505783237 409012893 20578116 506735876 509332307 487572620 428721783 129394504 629828810 700317550 111220508 204228644 451317572 964263101 292334051 95521622 375985151 425234497 61906250 605284021 771889707 924784145 417545252 837329319 984782689 856298551 974518024 514814913 381968232 660353007 562598036 60961991 837375977 95678860 127796027 512645157 361269177 668639649 873900020 581124527 797399916 485015391 748506087 805885132 271794797 603742793 59520070 42683756 727416831 182673417 160794015 724324547 988838110 584157681 520833378 304532424 485359914 528595971 328196430 434966330 372537672 181762771 86421004 81435049 959075707 227066296 980227324 883346285 898837740 863581657 419804632 688390256 256589625 13742693 808195469 836744791 608248382 934236584 632654979 258927686 462552164 440329977 214593103 702251102 90210241 269079614 273562200 317617700 840399023 434032753 28505758 179858807 167927471 207962757 9317254 27792278 445984719 782658144 542299295 466567925 283398163 193845897 452860677 633619569 681682111 178335554 84416177 990613608 85317544 119278529 888880333 876647843 1522778 281442087 501065742 235011106 526615792 169807043 398417580 25655623 767571178 687483006 274955779 51321605 860266636 531109469 694765166 263692305 892073293 683567859 21060277 91836061 676714150 410375832 436192020 754219194 333652500 297590539 884560537 216649895 879747835 636491420 858345517 380936267 797378983 706390115 428955839 789658012 133071206 65876721 903110741 836883516 684548052 356833954 879312902 604595772 905332885 829595082 570296678 924046192 1472286 871270440 789128308 773718505 687379915 255029568 81084939 139621492 264421218 671696091 603954139 653168764 60071819 536843263 106362586 205690952 968526179 378670453 514438480 839662948 455496083 354391536 151373640 257500987 915881846 899021398 780346965 972997164 164312007 301857274 974390181 754120691 482237037 727386269 817246831 152409008 332237706 563874946 302772102 720046902 950059181 945593630 754042748 517096401 966468733 758466319 627434388 190694723 864178061 840611679 324739694 158367378 795922856 497572137 259567101 297295723 319740800 651783943 256261941 225476265 125418074 227439398 963887373 335404567 342943050 923132536 210937942 560706946 491451605 735679465 797927337 120959929 21051170 970516255 475532661 645038391 736074392 824919886 4131595 705805301 577217938 670691526 445258061 350883233 176359016 662807479 148112087 35075564 495463426 186901528 850167038 232786264 979818482 180050071 635480502 160138242 431560412 887025494 906915602 10962490 365934410 848609391 379052231 814787383 537391702 962593292 56737266 882935257 834068793 347543691 613306436 770799999 277610075 474529541 269756441 464968505 968478639 539188276 42392119 315222795 407198564 368892491 635118305 335035329 902979439 752303154 407519152 913741339 122053976 801966120 149447792 689700355 45702823 777286719 842620251 5547967 760331976 853356211 977740279 497430964 231342145 303555577 619023237 472501768 188613967 316549372 699603455 135057927 484283649 620045038 473685019 271277929 242232246 519261368 415732569 380550591 933067537 617562096 502807398 647258699 608943239 193468299 137098103 849464772 280281720 485346891 800447514 220669855 620909923 256006289 970747563 647962838 354296487 238927131 713043068 50631746 2360914 294245320 698249877 149274410 334210970 19298300 214516481 233617573 963302985 174517579 345406205 41184319 76939468 984880122 49622933 353382668 498321297 446406152 234761912 882866776 408502799 87432028 673380304 695702611 167299545 856831856 819656208 357425298 980845270 439919072 508354749 147366842 492161020 173605335 439260605 847531731 143282018 754382319 743382686 619098160 974782995 723171993 54062714 728875961 173485735 384290357 453496432 5968006 484815164 977437133 992629264 374809551 871193848 959978518 55290278 403208871 992825681 99167601 369150513 35164853 522154676 412812199 266551565 244464121 543647724 697788431 742864750 739996032 994280276 795445934 696091933 441071693 168664114 231560483 142971048 446153365 323845785 281134884 456807025 427171699 420922685 387894479 780402899 349500289 804171874 233722597 650241849 865530516 442287040 657899891 681475228 168854941 762455107 998837735 259772803 655199419 217783927 792133639 394994174 202624431 73434105 244127938 618823127 982360881 614584363 76449503 454461765 441867708 83649751 466665260 134804302 949016858 385363448 130953377 893326907 518185742 53986062 50260029 216338532 461727791 619361846 539817007 10253376 253944069 401616326 373711579 626892829 32135600 292140020 120972732 57145836 959782378 613389108 956507883 832772590 280920543 558860740 436466137 916392810 922371864 714345695 650378334 844674264 265069788 240426602 860163464 206566757 543435646 250754179 893920203 484419940 931787220 675725760 801960513 686948417 251098142 523225995 686728185 425363299 845419082 410493011 706397674 819087982 49759295 578869091 675099139 474087507 987473459 152241177 371706714 781412613 498048405 928625786 572126711 987609205 978853121 690113731 792711648 48228133 22005993 985177322 799417362 946724989 984672810 217870861 799889117 960788171 417877096 914025034 322501640 623404040 617285405 507403977 628379401 278751631 466804054 547926017 763750098 315223541 806119442 284559845 14284889 819555111 29426637 5885229 826765858 821859768 691585099 750804698 814461617 66705530 569478886 671503387 615450826 526614487 524464813 361982837 908475437 961804619 423936216 485694400 903581539 97627469 701136353 953694729 745539447 261253712 414936955 642526819 250892954 907096638 341140959 488974661 563450059 935502934 260634973 260547997 667782922 526280033 533406215 996062589 190199563 320831791 884975509 722083644 825206597 863881757 846981757 680976962 137693327 85008095 511334658 560363346 477955640 13009654 897215203 372738322 942114583 276310047 68748690 101526691 69072340 492316460 65664463 378638063 529393657 46527191 360450179 941251512 263223654 196213741 302648377 554094638 442158777 211347617 31654388 967144548 849379110 146525670 405670206 703456630 294091380 763479100 473144328 459341698 469461911 58433349 780019591 821307264 160920349 978913038 7179348 904057385 522693315 51374879 539802075 539190015 628553836 296332435 236063637 15621732 180657735 458527161 302295284 321482723 293971511 340945761 348258251 403847370 643284160 449399361 679692283 74550062 845756909 369219611 122306071 279419664 578548813 679032918 856775569 371050034 335897157 930747029 265190944 932613580 217780615 447820413 828747595 975130508 996299478 801918244 730770585 767819767 151516242 799536127 99355659 598762195 908354281 490690411 61701938 329639621 499466645 525274126 742278544 535881007 15001928 209128955 311912088 765844225 701687766 939937814 181318875 874040253 319803319 826935275 686693538 635496047 226657704 791863296 436832713 858841073 260461723 949977573 828938147 972511003 262971910 515053414 300239655 879607785 259519084 855176246 901398177 211565305 825625968 485797416 266566939 127325280 532700428 494683443 764214946 254154835 385956777 482417055 181254020 331426727 345540417 812324028 881615580 793720418 9852796 661720807 35981215 437641432 2221512 273405301 903906249 178594872 212019395 439867329 320708826 884547383 551909240 189367519 815860009 850349549 792590198 884513727 215447859 245704703 226380511 10479137 689936843 282949762 336338577 904884519 285099910 797611943 938721449 23544675 683279845 738238224 683706533 643217369 298653530 964003451 31652067 919167080 145933467 152883847 842846362 17774847 114727099 380110893 777099947 186283453 68172643 113689315 468942049 913887266 391103956 818702661 697927132 837243872 998308562 338881964 636757993 308465509 934028487 296254457 543014314 4228883 628758153 270771596 822621522 822009593 106210539 689353843 836461538 902159615 221237362 319955600 238974985 746248771 825524507 455365969 198685532 343430839 720508207 240616639 11302636 79769082 252721197 33964037 991761897 27202399 514211141 668118135 108188336 323585751 473575111 42820760 761441741 744709268 75805032 354187702 192824866 260128209 785519058 261679998 981381832 39656781 944672837 717219796 590862640 927935282 158118062 238869740 46413196 275370282 877323784 854890585 848618148 865588522 808006804 37435508 321047079 631315275 221176788 873436441 928883637 217773794 511501912 323833324 442515104 104011391 796680428 996547377 322577900 228123228 139161115 685132931 225762675 471321477 396439093 391164803 13719194 620004 939777897 145027574 142561232 848600853 426294342 295676641 506878511 304413837 833516191 380327175 141194468 643649117 561749844 688140901 53298350 59291363 151899044 512667158 554883937 481894081 814264897 27271170 218672063 231321225 5619864 318668275 507288225 552330209 503379504 689443637 250088091 851147661 495985491 988776917 318687241 464024399 869500535 271364173 999729891 115789417 378742643 113964258 577985271 792970497 647318449 125080792 13074873 34961740 340730990 965125193 438367943 718052444 188178275 427821280 581467117 108576661 372695620 553472603 61542792 855760324 189055766 52942090 316831764 113089767 653614726 633911994 945004380 529116329 253668740 819996583 847183395 821937999 934995384 250575615 950468983 322190918 962317831 919558181 895864932 881814047 472523309 64758267 582642027 81213215 767002637 767508952 971542270 768985301 788659886 29412488 940303626 517377928 656451829 378110331 542193688 917547033 591422968 272088457 977339300 530695307 238085164 501765388 110624565 850879197 135935789 92614755 36484545 405717863 524814966 269579564 802159298 846948821 330914186 679391144 102370400 307958919 10311378 487964953 255843277 801260204 548153496 444390475 358247419 653460877 193945786 619940701 599811100 139162521 270115104 316908647 46595107 905780498 809707999 558513822 807734212 467140396 895385916 867304309 825011352 311842016 503776843 120409058 327030716 613868548 41317874 585245412 121478725 800279888 240389845 406493941 90336611 684531743 190081510 247589124 755867045 129183453 784795443 529251647 784539783 939797578 454541898 937818705 963815466 811442809 851791081 831592050 744803122 466815991 780687991 434840014 794967246 236487133 295577093 18975660 111427058 532104718 688506277 967454422 449732331 98968386 697270474 833959859 45908845 194012053 4235433 611437058 568684974 753331711 140934275 176413965 184661769 137560094 795962108 202236502 201863275 794304015 809473024 628614225 260712948 536748133 406644931 18380913 453215938 196107837 253302519 838080484 260551325 737667002 959071781 862504010 635005970 21738665 919743072 222769387 472898362 452580820 20437836 518019353 343580593 124725810 913345710 907893691 765692915 138024401 58937695 374681575 303903657 212250287 780468046 976516265 122778415 926878329 702517929 686927315 420644113 207964869 764036313 408521240 164469806 723368673 601618570 250034713 28890416 93566341 155916503 323552558 767990834 450977706 611466381 883532833 629808449 657471956 390975710 210417143 303714213 505004973 303722769 31867065 497614668 931226832 946916257 910973122 297920371 573391203 762566617 394098630 521939716 658974835 252655512 600818501 712711497 508082631 738516464 35958185 187850488 103287304 795176694 7592362 540476382 432964342 46232051 772882346 708253895 969011084 737123813 345071813 23194050 554208324 833805015 150689358 205868197 697864092 107446243 523625761 891243208 357572194 247355002 121674798 355953798 808967512 524947003 988416687 457039574 806965979 900936041 467390041 493285844 722729325 154960436 402281500 837857985 161560528 818365679 522126934 332544977 208756503 156612241 288155149 244377759 24918640 685885257 973397349 706740448 776934417 781051328 701414124 637146199 808786640 878573431 127358208 326063958 667457721 553144971 312392952 203158898 466166750 676390947 339671026 96439691 973458402 348830739 572614009 957709132 131142786 52444042 963315943 353072834 182768424 430828128 417864755 587954715 138080868 142708348 485986418 548984102 282732641 62998354 43555909 997770037 342035873 137222240 366586700 846526530 190298277 333755646 291340509 32078434 431907761 701741747 867838702 765785976 770303740 588449239 861108160 593917095 955571845 568602199 912910646 603964927 803633981 915417640 542979950 759765201 86229293 976243048 266085508 252701096 505123533 963022989 854313816 168243736 848601728 201313423 256429806 411287062 211870445 587785942 75732528 859045125 467108710 261439678 705520760 435020754 784742486 972261993 810355909 911546561 796617470 219581510 891194425 496545643 659619719 998897144 434093520 377124341 365291055 756047207 966362951 654577567 569681500 262147017 687114899 551115522 787249450 713602354 137218427 84410224 547718110 889662729 479822431 171683030 337683869 472055221 846584392 813390902 765016503 439295858 301702291 315774539 18407296 539360110 930411611 926404697 649097454 374788508 843606291 448874705 775614983 882346443 924159948 569565159 690244321 959626440 680218559 734369091 159048898 424339682 280402066 839708334 571334930 45576884 873341874 485631991 381541137 756311825 681840630 845488577 528981556 484461590 470335589 577288174 788145966 170747322 353327765 860750902 541466483 211958459 407987788 207925270 97952948 191682315 139444693 914032774 885720857 305406810 580607180 48909239 668442750 102877492 82111717 843596732 279095819 825466831 28954475 272089252 724294257 155117984 537231411 416319640 542464798 631910693 700967581 747070717 514912424 142235159 846887710 493005840 989827801 725322394 847970781 878395740 773392203 752555583 944046693 14671850 18638933 800541681 962354478 257652672 414953894 440042409 514691502 249430002 108515228 236671207 186470767 484900730 448827884 595590222 190953292 720789488 735241166 884081760 983341908 123422855 385879824 245906464 772787453 5764781 849419012 841456923 889481015 504995216 779308124 919029890 499234969 99648301 861030167 488921982 206871183 903224662 535143490 385533119 879208497 391051392 867703517 570525478 126955142 573529176 256955469 115394211 323539576 401701720 369738759 789871515 542543422 933140318 91052098 233404479 700708515 113381320 886920519 410263554 873097226 233283779 933343736 652260499 278473578 925465712 661999401 807222396 885856665 704060140 765573239 808860816 610810995 673996107 304823028 922005894 860748419 731820589 676327375 146344583 191566418 962123151 792441584 508534895 917686482 288511886 796494731 214317159 176678553 826880819 139216835 939874936 852068343 490572476 196136504 648793741 273008998 374064079 598131418 88816406 476570271 638537661 974359406 143764677 201514213 616477670 787786576 528298820 58867367 759278302 334186879 463379136 212012140 753251993 627941472 536402898 112382253 779885593 587337353 496328084 455200597 600794727 490577716 150563639 198592428 133409700 767639532 987202400 262353074 435600610 761191376 834858297 481301729 768878991 229911114 963807107 564546148 98677864 119046383 863995049 600730520 900880653 179814621 12520880 23863098 437003943 894808929 926983523 582719969 477819103 354899037 118920550 265676587 139692173 889269764 262582985 561506540 56398118 421008984 521338885 856349704 310076754 819765454 776915399 456915683 237628236 541607222 222347744 667385102 413780848 672529455 437770914 310134914 863138006 746592060 557730371 586541840 935946704 203995749 4046826 49737408 296131969 558797186 941443608 640172288 215642402 899907098 882685582 681328793 931975650 482684642 172203709 480080450 692714309 343850638 698378509 163995853 732709435 641379219 111333295 424701084 109445439 547203421 782064663 743373462 533372603 227311912 317353573 415279708 92718651 482574100 170972712 308036613 475408316 729030012 289332255 763333227 681922796 119779410 446175685 9376820 415798748 744013575 261259499 328418349 454012099 471378746 728658029 362114090 171802017 340021123 441296568 490503476 141575284 806266319 938312046 288114685 169155847 549216445 309124723 28768463 701722829 128006322 423265185 679238174 567942312 79995391 175236694 450179544 426789675 234685842 503531292 994796292 197881296 795950429 984615420 360815129 998376960 405657742 236767033 869415763 240762738 264093371 257564631 680650097 691800784 123907306 888889510 213247605 190392024 728069184 76255764 850797009 451592619 681321121 374835670 491636364 135360861 108296742 12660510 599360713 232314660 42496487 430111620 822856605 671869221 870959893 840973368 364817825 397720287 849927329 562765774 256450790 80158763 890290657 780867771 520524532 283895581 192167876 625051685 271127909 123779087 973731667 206704858 157602418 786441775 784440668 257809182 174603937 363021604 170562820 149099453 971101507 455893693 513272476 940478712 778209226 404784366 565289187 952394607 77469561 878967103 993389033 192179054 992673441 27370564 123141711 851587429 753608552 887827899 222179391 976338157 105660800 687712332 950922380 458821921 258631726 39029664 279813936 538391906 469327720 231368415 512147272 215724985 365652375 626644434 397739939 959824259 764899109 872928510 565359558 443560571 553817724 424143097 906401028 348248540 373391142 840272962 239383138 750330151 414370748 342715575 971199973 326108292 161582506 517309518 846432547 93267809 143136085 151485806 607787198 182696574 947272280 951109553 279177982 139034800 602148131 855457398 505834620 171931947 572930334 560196599 402882862 12126793 715831174 307890676 97629568 410562492 164187073 610977427 272774668 619082067 309059138 798471526 329789331 816448862 608159903 503371793 254997043 927019122 328269941 872814374 480320050 561936284 49154320 317649495 208939383 213940900 130511425 414135437 122800098 895650382 84915979 6660144 953233795 712983326 532031193 460097432 447685617 762610630 912048707 685712996 481973359 11609630 661398565 125572098 176328265 795699130 512906833 515994223 778617748 955116868 434779922 81224449 63433179 715976525 252074586 349625994 51678816 599594752 565744503 815583669 148920230 587950747 955959921 10877023 772561478 269951685 269800851 471491728 775868991 41630185 62845862 230380521 747089267 239355755 735720454 814200843 124588584 912481353 730734729 342238307 117921199 105512691 335809945 384808804 821968173 121159343 325683392 800610801 888136750 196144201 386770451 229176980 314809481 230249184 632739179 28070761 986926093 709707731 824045569 735131535 216348239 481423931 535775124 738706245 407709382 468657949 947588930 468998338 529341914 453185319 603823062 554915887 502835037 525600668 204329137 822319992 558308885 573067312 838574438 934799657 75968090 32673940 459769630 254368703 404785063 213040950 984460539 145479881 489584788 389440656 431892925 721274134 84477279 475108649 439470120 814575864 865651645 647269855 263799979 213841310 618084139 200955391 876111229 596659160 769544126 101313652 26396350 128837611 156337859 824188642 43753112 858586890 708492996 785826453 448875319 312108807 310204043 388002178 361826222 967618277 934901267 78372211 16461700 317286767 224740901 224651295 420652229 66442224 303515187 748093492 32460852 134733212 865958943 842396283 506358351 910820324 894471227 839426005 882292498 189504672 816237178 708404665 312289792 472749379 423774378 79854020 705828930 705702738 71835224 259463193 314383009 187254482 520337126 144900336 30977695 865416254 943399184 984246849 125460980 104821853 766493504 760523306 51040255 884246327 494454281 38458549 779714839 370366821 216029444 882638742 212933297 50587695 464238223 190617192 791870697 431237027 325811696 482868749 48579802 255511585 312066602 384146081 369353008 2143304 666511077 381885345 150769367 81518987 145709421 522630870 430522289 579190552 299373496 929138802 307161690 475611168 728540105 5079370 727363349 264127230 160977230 963400085 333404821 94980113 45373095 55761357 793239842 629364657 869379410 422650652 551681820 658407904 78079657 3711054 896967035 698835318 706004961 401256796 272334639 85261334 833781087 773334978 542532548 892828510 461872696 368591822 728104227 226266800 813163690 580008667 877735472 371505950 383425362 112541085 883332700 65331957 801916730 314212410 791277065 236907194 211636707 278640731 137936933 873809107 196800291 294632563 856711868 373394906 597182293 419601460 119358533 41927995 868659103 725971540 153547569 709472 342618570 252508736 485061597 31817437 790128705 616471884 772556698 831240457 740129053 635140491 36957491 915153602 522287053 240088303 388754320 27232738 615858165 641070541 257536853 166599379 834083303 794888150 866469415 5691992 406651483 557241097 402944925 475614172 245824463 377079954 611075505 167523185 45836723 894678789 606337431 696112486 582736694 626133980 927035912 509502955 600910042 232257848 514684133 745514722 190579574 79537654 469982390 344306824 26936002 872395728 167869812 649704725 666211997 236680434 661472589 127131889 260985639 790045410 466247399 666650462 75787634 528045086 34027896 444906237 996425857 971471272 110015487 236048818 20272810 983319205 921210225 313425994 798176135 890990910 635930984 454200508 30425910 518645774 786903585 98885743 664498462 899621455 591486235 927882687 96226002 1748601 312753983 406795663 418181380 503780460 775746727 153915377 385570999 757916659 203090416 625179052 594810539 367972678 418004893 5482132 887970758 450706379 935238081 269867478 129327515 290209460 751107657 427825384 85108102 319836979 584512086 188415343 162215201 139382883 515348056 785857912 400821672 308488588 257250766 222591532 82385986 527139982 131249760 314711805 590187053 225968508 392981982 458878784 525825583 196107796 548548342 961012421 770884357 516245111 164861408 111206171 847980171 72226395 410704298 566251948 38462612 707939275 350208041 94712544 124880675 841206832 978345266 4634805 209833288 321613850 606385675 143833788 172076899 337666939 704544083 906568283 323968344 112865573 794681327 568048600 58543380 173257971 902308182 731257556 274321065 675347591 214662581 443937570 627802552 794980178 41321672 403955160 968754333 676458185 525963595 900929287 718714372 211024834 613310966 301932026 915390296 386702277 637446763 774631442 961470597 547535684 174306039 493938301 559589710 827452835 345382376 814939494 795873587 346607534 19850912 478140021 746045573 174439901 235504483 400237282 118003785 289511045 595400340 518946997 492261287 460346540 601829334 270476810 578849833 662528553 179056245 329820395 348536371 39562205 742383473 156955904 839889822 76458861 122662338 317465807 523744138 591284729 758229124 860952495 664438743 199281057 686818570 722786958 633067620 895620232 485588723 731871650 433305591 795101813 870233347 48862787 364147286 275795708 281852714 102680828 304828453 390278290 684410772 588556776 235658744 224266059 792829580 171574591 898405364 413877316 442363559 999435850 574787901 226443042 990896438 858399334 823548232 600801877 468247982 267800549 497633755 307601910 454541979 374851683 423027319 154192271 795803426 297412488 205529139 737153238 81546250 571915370 430058266 38015114 186632728 466818305 845446328 522232259 388332969 624954370 370760918 617333176 205107872 877527081 952716711 444700837 195759782 590077848 397862538 937580019 286847869 275792713 491343290 581461674 29175845 967732716 161882793 43622370 20532144 912477643 551033954 812395388 998124714 472773409 988794051 818053285 405937758 331287626 518478368 677426800 522770916 401126126 762208556 991197567 53031314 31543832 739573677 553805125 55026234 703051597 225569965 837386195 369120103 763054572 962225658 236070536 33948009 144683534 904610946 899629697 674490014 132392939 761888487 799914178 322953998 530809774 953476545 670631727 286920509 575420777 264371391 959353761 120026305 799509666 478900647 378810807 55901636 120473089 341670466 438194568 985938277 411911593 30337632 911831404 545392548 691417204 391132670 874100568 440395698 443363162 941870454 821885465 236442494 244323220 416487151 549252625 442343844 137488262 547252501 333734998 909048795 398775394 492569850 8544472 465025609 421528804 991473037 605083013 925361383 926783907 267803897 535283190 831914472 983925591 172785793 349682701 445557069 525432860 581713099 896791281 676208240 535277029 89619256 671037155 171811525 864168205 383974270 901469427 188907326 283175555 937732707 290011588 641014185 136780816 50410205 15586004 262401824 739837723 296429596 720745037 732490009 601230286 363308306 969931996 727180924 639268262 839739108 744367799 256039079 134138297 941794332 284253234 185512070 399170120 193673398 618657409 976449757 189940819 248253747 280981400 420427872 358414843 705404290 534777302 646344794 281673617 413382904 196579130 219170842 520740789 356922857 442443983 138311792 490065854 488652865 182160519 735058886 677508725 895762611 995351922 449392132 450426914 789452137 604439598 115498833 799226934 660523760 379494971 206906647 835340160 231378881 989344368 45184972 166289280 332466417 561861130 894740854 37252078 112325119 25946713 342748669 582793867 234082449 634031685 862080933 606747343 324660476 147837092 688101977 338379697 988406663 134600947 105000518 353068892 911439464 139756531 721508086 685735096 369627098 576116922 387429013 424924624 175289330 624869970 335183418 303636621 839290929 778162445 867384269 734400364 965886039 786103765 328737537 714805613 663151286 613472303 732794826 604221030 803225236 140992800 850137545 622460709 346224129 778786695 829639341 595486244 117494581 884671671 224637234 278055084 132963230 460827536 200521394 843749954 309211175 632596188 224880326 780824711 763697880 646169104 183885551 231013950 509267831 636083256 800186337 819299668 411245848 263383067 578701156 579383784 129692257 776752403 806042816 613510980 71074090 199768328 637005996 817973294 974317872 248022392 959690627 319130389 29093167 512513084 701430309 199013201 476029581 951872655 373262347 197293112 230324992 282551397 234045755 146284267 655433549 674186450 450984275 19112353 243795502 355078420 182854587 354798952 659015224 917332337 664895758 804582153 625260505 736265200 856457254 171994378 565554160 377000731 431463526 824170230 793894012 831481984 456587003 50797646 576117248 136389306 894450203 549154780 589837579 651677951 494446869 678377476 437475286 215844147 478825385 582537235 135055859 218468746 670098166 205664346 772794730 148654072 592750564 920889067 909426118 670607575 279859936 165671332 441731762 255961949 400024499 423610425 165227323 740307761 321649872 852089904 144412793 616803422 845750970 604458939 322101308 413034552 259470638 302981672 45741911 449523382 591911637 235875134 428319210 624988982 782920456 736081768 841709381 176355174 970695953 220433159 674734524 539791431 203027331 36559428 294528879 574827983 503298537 162798130 351562137 2983635 345205918 848692688 222152615 854032723 399591795 671452320 204264659 593532013 697437849 990605666 804133804 401873090 702023056 217243220 782661329 541814803 742927745 436193043 721098975 610155440 556754360 92960316 12765872 660554613 365858106 677411459 136479692 824062242 62386392 20332825 98151056 9559150 879411471 963026631 485027421 861260721 569268965 346060267 805131734 294966952 561666277 915789781 110177539 581721230 119161973 737914664 98553347 718522221 243414883 197517762 269812993 510703347 154354473 122155198 823079451 151443693 15694676 591047685 367273312 630044413 175726293 51779404 635533871 477647060 737581248 685183954 672572190 470379427 982553055 356060385 730755255 361088391 388218958 529353266 647097320 696884554 838793217 905489814 251255473 721660882 328000500 692697676 266038891 867414343 998599457 594024430 477101416 731127543 373232403 578795040 46552135 71926460 969616133 897573759 828603108 163461002 790872501 41107867 10157453 938255322 405378978 631484607 309219418 307637935 779694972 795899262 795745178 667903831 511251175 435729135 447212140 767014508 987031369 193031391 526511495 512820564 997711660 215427059 718660319 429171272 756351885 145878988 565295400 668631835 536805925 184133133 730167213 874260030 10265053 286067531 318981427 167133278 344690213 803208526 659683644 603182736 199731565 533497937 63661632 268344245 649138635 833876283 964973086 787601796 225339832 782675467 627602484 196011971 609243419 685812138 416286307 811145395 435123247 716666567 864838678 673871953 191423629 34889846 667344232 442357231 965723828 918926241 495390749 19737253 969762783 169982655 943048542 204252976 136976333 977356571 909964671 350050458 208069979 157917339 795847581 893072869 135055665 277256050 290331523 939515781 148123620 50014363 244057613 613202748 188699020 222955839 25633619 941443882 943343026 204476380 865857554 726119171 715239022 762146975 29146263 988627726 822265012 64385747 291328290 84238973 404868019 333869930 265893780 68832902 390628617 286955487 690305942 804902924 274865211 52417361 214580011 954563169 685507069 674351309 849131549 543681800 21986366 229360120 951156233 903498419 250661015 453207187 949166695 610420374 185064253 785755701 545061416 164747529 842844849 304687009 73104480 238158735 852082307 400660794 415113415 459539493 619862622 595522195 443292643 76426178 199112057 96088089 397318121 680003341 353829041 394236828 517625029 939364844 718850244 558052016 598700669 954529996 462584008 97516154 652009487 791357992 833225166 74724617 266021532 993371799 924183275 78932669 574034673 166439568 879293223 830646446 441482065 193537190 163785831 34776377 405497664 629926498 805508453 949804917 137097923 949541410 994617018 195064331 40214395 320040915 69936206 413784576 349305055 952269374 422072247 599667468 782044190 655471187 166771640 330884848 995751434 870970453 537845943 865587025 530421294 289287919 82264659 754651731 248514680 62719825 247408641 4720765 337939859 112459521 811348927 971915633 955063399 714834130 892863341 580068367 704208227 563253383 590251124 658276031 2871485 504505025 868344011 899136058 839049527 901111458 984526037 531163952 941827968 221963486 607479216 272051948 466499401 947976086 206985757 97602780 262765783 403522671 494745028 921566311 546244287 469154681 704300544 593155452 238406385 679588130 576254749 541961728 386085186 901564793 872826704 393538689 577272524 258659197 806264570 488322063 921253125 347499931 624232702 917641520 486126484 605147820 188946459 238928297 617863375 185670083 300368794 385837378 583615510 426536152 619988851 885273417 515611835 940454550 15694435 626116043 53876422 625296752 862106685 13400155 674249710 200291827 967512943 293521347 819671812 253635972 38173461 216979589 663759447 26069582 161490474 770750561 131532126 398335549 382781763 979754505 418139718 598017513 29156303 438733416 334611286 665780944 659451848 699387279 713570721 577168203 408348632 275648695 997384188 116702404 274943524 140914379 407007554 324118660 897260643 974776367 87241848 736592935 40350252 189422254 600210636 841097072 517385535 293404112 333201914 370353353 413679891 826432471 213064672 978246435 389809941 87949181 298637019 955419238 560990451 408796820 957976743 289279849 699723912 177544164 957371773 160794774 707804022 184214670 185063021 365070225 546541704 577798708 912710417 992390808 385347405 703983237 697561018 186237694 790998664 262752582 113834959 466605129 227741344 904397770 79959472 276689091 959079662 376538092 427090399 995020818 592139139 133617610 873789472 798765545 207893008 365343032 671164210 289212361 171666 586216377 633797073 194457320 563030173 393304772 765962067 89677776 476163028 765357796 786022020 775399749 591672464 1481744 683505535 877668801 735336633 221281959 315878121 980981543 277124938 342406161 452474703 703921457 212444847 707611477 269880826 775535608 975766309 556840214 840374736 940281674 392641992 319581022 666323221 367499981 617442194 680896635 901107198 333267639 576213088 365302069 52389276 840429326 906580120 953065779 13396665 494515607 740921748 915922353 667361215 25338532 29169096 393651772 482499166 472272755 296965918 835931877 180736091 70054027 805812015 587643894 713108989 8886946 507305728 424002103 159767491 825276228 796197123 352716290 251995266 252177619 869412525 104958219 112891915 56133115 614408198 120854474 312516563 511580371 748572111 497562176 794190832 411872878 730965913 624150615 417066310 900640133 573903982 679937190 330518249 783316109 645252829 300125195 824711941 972030655 674161796 593713251 555993735 146918595 109131033 45216907 907547989 515202146 97590412 220641452 603676591 985410003 982433294 380196422 872280237 872334833 799789443 312955451 9621408 107270387 504388064 851143289 927240606 283097995 612914312 106365642 628146139 566593042 864212908 248954706 152655185 221207458 625120047 708463484 162573609 829722679 630077050 975433291 313012729 648027960 535165611 401964784 880768835 644752942 906062252 52714784 629804220 725200931 538359811 844100235 4881057 643045117 910619218 603424944 984408215 901765782 942809361 521508445 616975680 559271422 262524504 410887306 91870616 194483090 313032624 77493757 124685630 237767185 61904752 603634982 225707144 699161366 770236539 796563278 965880801 948697422 939234379 16832589 441917130 367283451 465261682 605704661 880890248 760865044 159531937 100663270 427983242 533494788 753481539 737001281 912795027 502173008 946613851 986028613 3908401 38211691 635930006 963441052 524300155 442926373 229825828 966960140 289143283 590288790 397806107 98631659 93546521 23197322 484900063 20049376 639752516 470478337 848551050 943915521 957516105 24587276 234409492 484524645 621549424 540251940 726835446 684379510 757256495 448449078 504593404 302670388 89596892 760148680 223248858 818188909 5981858 758011884 185043108 340749205 704029892 934532655 763583961 454842894 617378011 574486711 670131786 36144723 268219589 193136776 610396913 600189710 532983098 217442097 665452272 929326437 122943298 942527769 585925645 697387764 658560263 227424481 910912145 369731217 706641146 329147408 950213633 585740619 627513389 935628551 217723240 313291586 830469779 185035047 983001814 415317355 53312322 50963679 952549169 109953177 452074213 703580592 76286164 341382888 373576552 666118830 255067225 773498036 205581443 799492200 47441450 988306063 638060522 957152266 611140236 80701278 171691141 100137599 939573809 99030873 62802949 688146268 965316096 121938214 543314081 395592092 292490238 568621181 364315965 737174513 342321741 440884629 61734073 278784411 326560920 174918492 201574463 743286189 625070709 268325219 63583899 930077952 255328577 6037800 149941981 260640597 392621507 860639536 113010387 367872001 75779853 913958953 239627885 297727751 512717037 268041014 889511072 875861827 967584219 807380456 708553979 593950693 720758005 396059210 168055903 197694663 851357752 49522453 606332679 524220917 521226626 508083981 171854650 13315415 229105720 339827101 889552707 377134872 595123951 889664877 614686166 815956458 908448688 2361517 264062302 301498377 226809718 268150848 402325630 406933937 885679840 122053773 470037742 570152935 24709119 455237243 12515868 39832314 319802816 729200308 221779178 236235890 465753527 71807219 484117238 155267254 232789621 388987491 879024611 515314710 934993090 637127774 956340816 242602423 360720048 109165071 937407558 270448479 550494311 906413270 97707108 713830005 804290672 861650188 373741169 637099707 357803608 121134848 962434129 532804416 471935987 492420481 409612462 846731555 48133804 406740535 19634451 74599659 123915146 168553369 83471347 227290459 501431626 643301476 467661716 967110075 495537242 336141638 40799182 555998996 131864520 88832142 718246201 315566354 239731883 380066964 386714230 226695234 835298311 112022037 31336326 139231974 524080798 460814246 966721122 505374104 592712789 200745499 223642174 86810961 310637688 223111752 907522522 524970168 350169847 188579889 749736004 155354176 298450377 930471221 109956654 544929786 735416093 638721073 568360552 824289996 329945794 868276468 175484512 157882149 604141643 496221039 360986271 114052104 621704008 294010626 432821234 765320159 190524398 941848040 752969480 604154813 533577260 367539666 529783805 114047996 311756664 210478714 104999924 862054531 91621377 266037266 276185277 793426144 708828710 220934371 9244477 769240947 813848688 912018874 226200442 677230958 893945515 405093763 824492721 492964096 399170583 306094204 613840664 389362070 79870367 611589020 596509942 985994997 540159268 630151473 299762383 956047840 736413616 612467743 625366407 56022285 42463105 401609807 662574225 27405820 257026623 159407812 834517168 874656328 31395975 653706748 410247892 702036129 327997104 29709431 338290445 675681802 354837830 861115747 386933649 960863335 236163370 929385375 48395415 8035976 573810203 571724024 899131982 245230998 129852110 654397474 335893540 650677296 26360271 808888231 225446327 363878832 979110851 253552629 767436207 871498851 393471205 252806067 796060460 631149407 467072414 80608236 42606354 80099780 835602535 349745293 134435675 67142302 379462774 987043179 219903627 982666010 685621952 831931196 359229315 230232796 172416862 204918982 61919297 308266907 853219040 933242168 500439335 127429719 124230018 216295949 160574989 963174644 988995985 799339837 765530510 214003493 81370845 336386311 941400025 838298701 492387021 390279775 341898238 140737814 760556056 837670259 284970481 53508633 54189411 186357310 154383790 876560105 252280215 844667553 913059073 70898312 447112840 828784227 85816281 398262764 809733074 193801597 665541611 837135448 83352393 125665035 795638183 634981280 769195355 36133805 755020287 543099658 868592620 345756548 143478275 73613948 708912613 524756753 380144473 982361913 538689796 942050075 661355994 190312109 55550608 607930977 736748868 757590689 968981796 745579967 727540721 419922808 621487791 380001569 15127166 918711663 498318594 24798817 738322439 16799778 47040541 640282971 458624378 495912877 186062109 655479113 444045463 602087303 772621356 861053320 804967901 662903071 153426617 354435773 889047255 205949614 450439982 416084714 665925749 365975083 296441017 451127442 235864141 826343833 144488449 432536230 552982146 949054431 275909410 103284848 208332742 585995380 729810252 585761031 967574928 602047677 74790653 825550639 818456607 113639329 287717717 742985427 379125781 23236170 329581223 896101173 847804136 979576580 436064716 331940213 469065439 26420425 665674738 877791383 45685705 738135851 534961402 566378194 178273051 6821749 95670946 156222024 978910477 212337439 363305389 868366855 739081456 704663266 126400959 607888693 479368437 976029137 251985892 879519433 995232133 841417702 351020181 904502285 631722469 373715011 130914286 407163638 91234698 560817633 760302744 163779947 725013903 652303829 483022779 391379454 700968970 563394320 18674659 17980152 145876722 80711294 516001643 249957406 246821217 97846477 875864371 734906662 102943654 35718910 125479119 214402841 767996288 891752139 703793556 942207789 849470220 41374391 31537780 32356799 94021600 943665094 649805639 73058071 769910176 542968492 347312031 201907583 663913462 761687138 651058836 953139217 645102422 990922655 985635036 444675233 553575901 260998943 710230313 279627667 8475962 701516787 829454723 47359973 141529373 958148581 136855757 398684037 62950916 514664549 909807333 166892150 207006497 241820360 809132383 469244143 772002050 867793486 87251905 905486119 765714927 23917837 541731398 825067393 508160441 485979579 728935293 520459690 105647518 487594213 729779256 835399105 376248047 249213446 260544910 141198493 6158484 314602613 121649831 102709882 68543413 81368817 956046620 902250903 293605119 352108552 589963720 968547268 599523223 438847000 967733600 895945057 891064193 7079775 323609150 652397133 309387310 219677847 880447518 726996639 284494511 541406797 109628980 423520962 909876688 531020248 972398339 804039427 816572716 264264561 153396611 43708752 834224117 322415365 21637827 168507377 233572174 733558884 892189142 805549863 593099156 566518344 145264406 853668135 100619223 44515657 475453172 515523243 552700429 811623496 104586905 131798858 274410200 418196858 503697122 162836420 366228143 489389529 740333005 390613605 365506578 335019114 499465830 790926507 700795320 92199679 837236802 898876569 398116587 86758215 300465978 361402282 584873938 218720089 738498126 177967513 438288370 325171229 960940848 889568187 729606727 59984217 747893886 139405148 436194512 970914047 966044110 768550998 554671384 667232391 762099850 251504362 916863229 351119502 198894715 183570227 315426646 152805544 451550563 108832343 98071288 123120283 273493479 677544006 586469839 699613297 504290699 533061844 639782042 415674994 233758900 222359439 660890685 849570911 964470079 753036684 501974340 179295622 159667817 656767070 440053395 963017112 192940382 437343842 749412278 639950719 576608221 397756625 765366981 344141609 980730090 396137629 91932291 470230998 916666316 18803929 924314992 477484245 544151215 273836182 564335793 253826777 356318556 872220864 603548261 53321635 35972809 703256099 659280605 244630806 94377284 42532607 113157085 932314204 685157527 892790273 273414381 686522992 938855739 871179604 371945616 469434045 252954244 127436188 316223959 359214715 30354145 951613866 581888753 675454024 654469645 867526104 437031029 430193122 192172803 453118431 450285040 898559376 834386881 254723105 767842499 184140349 970256212 861667307 127735634 755279039 313224910 276206414 180022628 68843539 373054945 482938060 488295196 108115926 935321916 575398947 656892483 566510421 927697909 880657086 312551878 271749108 506054392 669394137 996462275 894844828 559479937 561711312 647947911 669170681 966018662 512229713 368575373 441338747 844453889 896816121 921632585 829946393 632007312 57090488 526017481 164922905 490811547 220264868 453877489 774429771 564447206 815396997 691333112 63433192 24912478 207595862 542157998 648262320 49290512 487050982 237141702 505044168 607142872 266127277 49696700 632673398 553578659 903032405 13963475 306077145 448695809 58504678 286084445 857422242 543993854 421130559 598279570 695227495 846234551 479100819 720741177 176217063 417960329 888592101 912490813 167289852 317442447 668001748 577669123 754523371 175139030 655177841 354189236 697088881 60167312 148515571 844885606 758811887 886868784 622563784 331552964 162748420 57108683 423874588 512279080 700696425 59865578 133211545 963609590 48537113 194047713 234798403 793590999 917487693 479004674 396324151 129107537 438980232 253485360 573430147 735074934 99868340 866490316 787372228 632094674 519577372 987552613 227467086 101720345 281777715 593171693 945785702 49476945 490793406 620292347 983495463 568911666 798724315 561172837 739914829 264808690 597573415 803589701 976133877 619188115 375273362 648085261 985334898 123172607 456074291 933102314 900887854 179128418 142895261 264689217 631520103 252302477 772203139 619360355 772479564 643390104 894796054 348908836 956130221 918136250 525399904 406342881 304711963 111448453 787025442 435498472 744857081 102000588 46081258 331978856 184523676 295410259 533658950 247330881 552242201 729826560 357920680 831103876 935671854 174853236 420033073 317664917 291653788 687545524 247037611 891335650 931777661 951474939 213822831 953435722 487002598 494211567 334306000 644227290 408324117 892716675 764356875 691803189 294920084 306218498 290452412 804246679 896388688 680481233 19790311 144532294 537208519 590700384 610151723 513078971 362717306 857901667 206499669 420141040 381499821 940092466 356326416 332139970 198151130 549975426 21806479 401561871 362737037 683300862 93849173 694536808 735885908 174514640 388191310 996719389 700264680 978046388 994905844 973936926 943175435 821893828 462430389 45822701 243144535 759400415 666023988 964425249 972341599 65893374 162271347 779088309 42185065 17167455 296961115 435411983 525795504 762176234 338880105 85820666 939554554 668238365 411111048 635620947 191932983 669723436 325519833 157665157 473681656 488350193 608222492 243274248 343069040 834637577 136773622 904206018 173889486 492571160 678359996 576429555 60277936 715818020 481396021 439621268 505853808 809950714 984893009 110305309 388005968 601899970 59849581 8740967 79969208 974906406 233958671 761180425 629547210 13737272 93808895 279596493 736427704 757063359 752914899 226554487 969752974 208948117 644750800 787257060 137402846 934444774 220397309 41656136 749278439 132525332 634568895 482597711 681345709 331612965 13325609 655603180 146535405 2719326 359512637 562890012 657838902 637957166 837934267 212534861 581599321 487125604 233562995 602469270 512346227 270800040 947422148 504767090 111341619 357681372 164697117 140797805 207796063 404649647 427717968 998378088 674630410 333924297 98772215 759109726 894033563 438383772 845460597 572051823 743996135 923245778 247976763 858470795 296058148 613767842 556270767 910327213 792736988 884499819 193244822 235215183 16509000 61866218 465172348 173011946 202962867 793986778 34398759 326991049 909066482 664128851 103211602 898142100 593259160 682914773 339196646 774603418 706621706 483784028 207354537 906974234 442551977 454616262 209640438 304294960 412884572 249499002 605632946 413463362 570244974 857541139 413534187 117677335 154443353 944277728 771794191 111099281 614022945 743488602 835267038 966873611 936507210 191879294 452572655 401953911 424529315 2974298 914880473 924535569 413056926 138978298 922558432 488319331 655222590 32191817 258258029 239637743 571635395 19418767 175898823 930494847 259757425 622614641 499826633 124827479 392937833 719317159 385352352 447581040 166508179 729266497 836211249 993824757 409092220 487756926 349556243 489520195 49182019 56822780 441003611 390870774 338511182 447611032 668477702 654706391 758264517 597379268 216402893 23641890 804154148 794108097 327840073 853735010 467328539 223942174 424232196 497216651 820634357 473030083 495144852 779645702 423736287 365044793 108983441 602534145 86375453 257003239 442775156 495348336 928730334 26277514 713590014 794746520 755171328 444896091 237102391 181502115 474630941 880316293 201700692 784456349 324743379 197370423 362410823 582463465 18255928 642000820 683223365 940468143 988723408 866881515 102325844 941322731 906567527 954873579 870566421 446654945 343473535 204324316 257160377 522591707 540207047 378076135 394371395 226683778 266246338 777198882 247621476 240258279 944803456 824008765 983594854 446599261 715597214 48013449 565066748 290417575 450362512 965469836 386320622 129495994 612705730 193625728 957827660 390620220 899452007 618774959 283315545 729272884 929402437 87075824 700583783 991445010 534415739 831000661 114486293 907676941 778302940 752166164 737341659 578711543 716758154 468364172 223124523 959747077 82779254 312200109 921057012 40992882 562862122 379261217 472878251 796330764 205712099 905933923 723218064 241832526 356318479 979691485 562025994 998991011 32944736 775611739 184725648 88535069 178304731 726679802 692730767 138015826 18991146 304372172 954705518 587150313 57463109 976744198 107125571 36905631 949075624 799198274 642255124 349783942 930415829 284396011 500266796 802696642 542982335 488600791 915537682 117689700 645860096 159884035 673153126 824355309 613760346 887031653 654187114 641894550 846388920 472267661 305060674 298612365 841736371 505827350 24113569 181252290 765419079 832706911 854539616 617891186 224454910 673897756 949990290 289020144 576380641 786332905 307914056 671680405 419636776 233742785 409469489 408462623 710945849 486896099 75262631 639410516 690537861 843772689 345007665 964958653 471125574 411962116 947094026 451767014 75752397 272090579 187146197 594313667 835943138 155707450 223314519 37777334 952832936 426790139 482778426 980771533 488831643 849609876 522091745 454988155 764538895 284138539 568855972 174105679 979146216 25852682 4332505 62319045 273313644 85195000 5674241 286034077 813426626 635514430 675507487 808525899 159655764 311993287 311124464 103526927 818034192 832366589 641205043 524537106 213693305 506352738 184364310 176662536 574622139 673179291 848196959 452187290 116870750 137706084 380384283 89937835 193871957 360463625 644427010 173807994 744184840 664009084 525934311 196980695 335135817 704093643 979500599 580288182 673465631 870018401 276131558 997533907 553638873 438262111 169398184 824349986 606012674 128659095 174941036 577651130 561290344 587459069 16109463 180434892 19206493 205392225 614088881 620369700 507189349 699426098 854293238 540209431 658569709 808183053 350338120 457235815 464597987 370064316 57404018 858783023 400303624 523914167 94231053 776935601 816874166 272273333 56953994 381087090 150023327 315223104 694696911 282990530 533324002 114965378 120605881 615232402 48242996 490302913 8157636 51633338 989170364 401002162 765967611 891909266 93085880 439645728 78222580 753936146 424710088 819143870 441694626 277347799 171512318 302789163 834940980 164217535 866653242 592751684 155141362 781565592 391869483 271934751 868440786 856415552 467003426 846928160 181041766 195731209 767145488 896107811 827786629 362390927 7074109 821576494 820276968 119632005 261128938 26774464 740876026 833825783 84382436 723700290 366908355 822225562 562998162 245707957 613249352 226183753 734157624 762787944 927292793 131172154 448465621 940763744 285641175 124606886 819081496 181579728 179158462 363517464 227036170 112712185 997852728 476817322 340531542 246767839 736144100 539828478 567211766 85898073 800648409 56853005 191625076 526346980 39756684 677696802 927113031 556198254 872119833 58067471 969506005 278392051 597952425 690305663 391473170 17185213 779704213 790862063 391968 351180116 86456094 838008601 73120978 568039822 611298350 916388192 614492287 247654091 814147359 462909754 593110327 249636392 394575478 305128831 217923187 700785058 293619997 143607844 653603443 987726863 502607852 634902310 357539628 548350174 319349195 20898669 838690352 981969434 208819078 930774660 231135619 455026723 546591559 560334115 325869892 565128452 988720688 322329709 455905105 124932265 545927829 550713769 607667200 873478696 25124571 963149949 49179274 878379461 297407227 178965468 109115419 335416302 64677563 335029718 196384307 926023237 990732203 536004316 508027975 585463222 363767635 48313595 192526330 5395662 704172834 905066907 31808401 471606799 274506957 798054009 449573148 535113584 295314825 541055255 667211169 347734270 770855227 362025836 255311109 621298770 438610913 49158238 808450365 581812486 278591286 624014253 40378769 761499764 356476289 545496077 405515503 418241612 895311126 419945095 395514903 642743941 957017718 17048000 986928992 703961480 112401572 322215079 593480551 953864492 940158042 567986296 60810413 98523352 682200645 753220934 71163950 974125932 613274707 805667173 165765675 484681004 213088260 609532379 746354836 518844533 774105342 709110703 865971190 441976630 752877799 627030115 491699110 295071868 627169991 349582079 638674874 787450864 889568384 473724979 362237197 155148461 581054020 638519321 381834513 867416527 408391692 357701329 609832197 946130812 993127315 294081207 19942689 76088707 236973565 662417321 819802186 256852662 998460 689935072 932708580 760499628 751679759 231237252 161530418 752611487 332066751 727687643 142646439 582787429 15364792 611508555 479026460 644256046 363081011 890768768 511334480 442536937 243062806 24690557 35868945 472068570 681090312 833418514 647737635 806876553 974376428 188965989 492457831 542832905 360695364 342201486 368508704 668007020 348470462 278164101 957130663 217814279 51839778 523331564 737869811 372825629 802584115 42480851 441376829 578990993 525568347 323598904 901607922 848301330 247931849 614878873 766741658 752165218 435568130 754290233 559319330 527298543 453471985 301943353 299425324 505852215 348149226 310663259 922918078 976395199 26851925 378800445 925701750 709721894 711882176 957442742 876277279 138286370 214485446 373057304 188042941 903159366 393249399 943417725 449238604 660458544 194725944 487921119 323592714 799316220 500869033 258926251 598085452 471053715 920994895 384789619 238610109 760038381 186624174 130478780 806809586 802945490 589132817 572345181 495809554 26582232 708598147 881684455 877954345 761041401 622236291 11075253 761424685 796119335 679132056 893484646 491730605 867918770 360009694 656783998 534833020 546574347 712386550 205669582 681837838 697086066 186097799 815810719 900743964 839436651 227147155 869473082 363699231 46046576 222720499 276711214 79525914 352636780 545832917 199757049 275025203 369734844 545035305 855662737 811213133 776980340 434835231 368824988 495554543 641267291 782074839 878866425 317510259 243166848 22534862 667576394 257428495 922457454 519015770 848127178 185125906 702597906 977041918 941281166 432558754 209441727 560058208 316308281 262508828 629554163 735528705 453925478 319092224 508108003 340588282 324762733 192122257 950148121 176193033 631716158 248416268 176572467 144701491 818957335 635677378 807296020 179116928 626136413 611294307 869757704 309200556 833868410 752443943 120733966 233040632 209328629 437984809 965815254 529488865 644600323 227723811 582282180 436691788 105345189 558952791 561406388 327310242 926398507 730690224 253821729 621797183 10711788 767279765 449553407 940571295 305362217 942882420 990401541 578992204 578646299 846144450 361610007 344645795 828077881 752893045 918786136 87948029 126707982 682616425 964238411 100078761 359390406 738760155 814246299 224578373 994802972 135058555 140961177 838128186 890325675 254217843 927916259 431781763 89453454 353774161 774402914 779285513 278596735 882939729 281729633 780717897 254119338 550603538 160543786 837524885 992459641 478969613 788647500 393755647 905518778 894005671 766165233 400931669 149855437 757600839 385247967 232261387 9325552 524990087 106088050 15553716 174491669 711050896 656520845 875094406 350326538 86921882 441887634 80823981 56785505 995871609 465419200 529812952 389730820 773195850 436717896 336556121 60309587 124383366 714766238 570457577 951148827 240057324 842838192 694243285 491865208 921793781 55495795 613936699 999403473 198735584 290766405 86501970 606793026 189684799 391307410 24706240 189749608 355425724 79729657 660477740 995205049 832901495 444935252 310527607 318548685 48287117 576872877 57531405 725014777 946994623 321795279 501152834 738158307 890726740 830819717 614361002 499125405 750220866 485955682 345523926 679930071 231345727 231653560 140716132 691994388 882389155 705449406 245805632 385070942 212231757 619083290 690941759 322930401 739942889 715754560 534873207 393073346 18447952 487541311 119351169 604982864 686734940 721232098 890099542 495319148 921080264 520639191 436614740 763975268 207755389 229861858 675996566 607646405 295696543 832907558 641444121 906620767 192284855 923171200 289003208 877739986 554366391 656366001 534332992 582290860 651863483 514978254 593106241 786506798 197157153 348094582 147042825 315865156 83498048 336004264 433341107 325542020 853416894 79201720 723242530 706858310 52381383 899256181 612906594 286992562 551996894 655185410 641096432 778458729 881896228 165331653 370974669 334376532 248325907 705684433 950071796 916339132 113966756 851824180 364877570 744520063 406278588 561062635 66391024 247320489 603695912 507254642 627601697 394022913 426717745 99586339 250171719 378195829 360754316 539584579 184085964 809894052 38697958 883321805 898319025 390504253 567955399 490892644 350009785 112350425 670161141 582789038 487355697 648155041 710075320 690221634 549414879 894198198 110167606 189894547 578919602 338404033 621587564 305174527 901962522 63689875 339681014 800424679 577726545 15420267 94625310 634423969 304441922 364379229 491006862 120434445 327483411 859457714 823308247 876569984 11900399 824619551 801721967 284796861 930252243 415814945 989380674 542087553 550859717 287791820 452316557 720236994 108798065 891327427 289505406 992138700 521940310 831291840 758864013 855987435 147905962 548572427 131132781 815066509 893026160 712983326 54333531 634857977 792707781 967782990 988037604 910828513 775931655 345495144 668053988 831204691 238651371 372244840 725175165 400737423 610671044 379260454 641231368 98493417 952851306 871845758 774852615 590178537 310859903 238583131 180458326 25045964 271553124 309327379 96738623 229832828 936340966 83863882 751433319 462917469 567986701 390042393 292780632 530500749 393108424 209741673 99663112 367745445 870416788 529847711 957904297 562141825 979789816 613669348 113227523 874175987 584634478 614738325 976573017 195489608 273166118 476603012 416344345 316982178 715773696 79453684 275209521 903420505 133465613 252721341 949546020 503187321 699222770 765550043 864753397 208809659 640928396 453144457 974607362 67171806 996819692 754888794 304205020 838401996 211607235 86347914 686202563 548283450 995061361 685268638 398220444 211439710 115567773 926718702 844353271 535982113 695180262 257597774 899064706 654381160 5962152 798497297 866135802 355187648 887997389 568677889 178945691 469747 586192258 879049264 840024894 300113446 783589028 77779250 37572192 583361896 88698570 375344670 644609241 248591952 108038729 215573755 770926105 744842277 342308553 310610253 295450495 24718490 220253260 337965341 100167622 564080211 986277489 883619075 541504874 876023138 605444572 252017584 963840954 479045946 118505970 954648845 5250619 83913691 912932443 155509337 978491856 423904565 427824923 958917762 635125730 778608773 93489927 328757417 343929043 516650438 238366058 609164252 349779245 266676521 606350621 785209443 103820802 811076490 313669841 788938601 534558309 210042956 865730394 373002478 463223291 257735003 967654142 126365656 259746370 338872188 958071711 711244947 206162723 808490603 8660750 467376523 192684616 716816229 167711743 474654881 888092225 830333747 187670225 542922917 645308498 948769852 156775903 38430262 210241813 570970568 157778424 797737315 256344742 211940062 161213015 640318367 794749801 765139500 635437321 205129633 821410483 609599712 433746039 672597145 174142544 54262978 861292472 262822946 339377803 362699778 43389344 951759146 120878190 679631665 840360152 645251623 207559603 886860463 485994696 924141761 926308692 783510516 258609211 7691647 948210565 549812246 981370506 667142193 997391404 56061864 813627411 453933477 982254754 174143159 817214130 122851102 464725246 347859034 780953393 359854656 549239213 723097275 714346565 198505265 616702159 532105848 753261017 670320698 188105218 553498075 364628916 257424322 170106851 48797287 749576264 992016289 703429652 640344622 922886295 264634041 147812446 335917817 415954403 7069681 157157692 733848061 551603304 390130501 506391696 85484450 805925519 582628808 854981015 931483212 745944406 226068145 506709540 804845803 541071066 356810239 218394388 137253627 811546945 544609834 942839518 120817555 197331659 524018422 45803037 361191376 381744419 748206482 882502291 360129718 598290040 899405321 744358541 926788918 255091863 502832310 603212342 97987991 772317264 560440650 407813950 181507209 776076174 214381838 809032650 58170640 222347369 361511972 328251882 63841295 798385247 406730948 498386833 44569198 672799016 909215656 948454677 133346203 219205667 837398578 919134390 780500111 661567316 292130386 395507987 972902261 554145224 510609671 471250929 380058103 148260962 958973963 540918853 635735372 77828087 619098296 838763593 842490756 623865634 718319924 574495108 392541037 74474472 839370933 341094931 99732419 779037360 98787824 886421498 239794197 232815116 10765309 85960248 83673844 22724358 134380082 971628062 174010668 458605476 692152837 20639976 452493629 957744047 155959281 843786947 781953384 396321047 866107448 111904708 651052229 136775574 794840193 827175238 724941416 643801262 781416409 150901310 716015912 641512963 501766150 41178225 581700024 889101933 106259257 743247863 386644022 561437650 7882975 883276800 190452164 566237483 101508370 472816895 664306731 367743089 707814259 390254860 632459509 83497036 530839354 266179567 898456884 528642655 843270626 163928466 418614540 810497531 781986527 454804228 492693110 906418000 416054460 292421667 133026806 844957560 964070513 316758616 991730635 159019715 744056076 555381615 659763993 190984170 982988937 835713864 559585557 588748020 641422095 273361419 265372031 569636718 364318425 129044044 116931566 962872369 471197122 908811448 194764021 362675202 532753308 540069092 319226545 416295679 441954540 167740741 209858077 313992706 873968295 286868786 961706705 510968988 705551730 704411835 593791617 765137428 475836293 800861430 197943859 865582711 558988786 266817897 544811747 430182713 413898480 279620728 438770503 399946953 963317903 111977285 348980957 296102621 555664716 293447713 554218488 719513174 142830138 221133027 376501110 801334187 388529311 672743198 426335037 403901799 846189707 350513572 918883614 813803039 634381473 62539982 189264448 175732191 43050285 241980373 576358974 447192386 122677157 341954260 604577857 578108603 225822900 657812352 332543333 507680892 977866206 687626270 751287535 32046187 947122092 217561854 827114237 773607100 566331619 631084309 491964259 50034261 214525373 587609051 372596808 864628634 915729028 206255788 103340624 823627675 475326993 662711930 198670133 804396720 486280425 935773029 993810740 567463404 82547818 800186747 5137103 42449247 802179262 387548584 655649326 101257601 158263550 704924954 405244072 672202755 109174563 265206046 507671498 574742482 358076725 23581965 246629533 330993034 14221404 562016124 709068588 896025156 406179057 986620859 384171759 57136155 876735433 480834009 720049446 418465898 620909739 240925165 514249969 81354064 737220264 950167460 905740373 634988582 338196321 94189168 512603374 768497218 836789466 431681844 596722318 634639079 735288139 464963436 953840373 189521133 34843306 937646170 951463813 610323104 860880941 148442785 448745817 295920066 858575008 496123592 578320547 500227501 771352838 231819738 446323420 45022606 804551091 509728663 990616117 365477491 2058679 400527947 6923890 10938116 83111917 363156804 46463500 933922156 153281183 255443800 898445580 790872055 511786724 10626536 13828211 570517919 732434512 557408067 597524123 929157501 567582238 269941466 700731541 230988611 261668640 938992763 418731511 689006472 493158338 564187104 105408343 411144877 614654636 974899208 185863843 307048645 245429184 380771973 451802592 753309312 470965339 536366894 714113150 882053206 137150985 227894846 892488939 240565042 180225252 852637887 23869185 860434688 63180822 287799722 462988346 939145893 71435194 353961519 451283823 866374671 317021838 694822390 521422949 653059152 227625720 679779517 115561963 350427676 689096836 340725201 845451546 689479458 967718169 927129871 440266748 26542402 801627286 171089164 242752949 898036455 332184632 241762667 415979846 899800274 665139220 536500459 941485069 67161531 494201564 972532961 259492051 936339945 215127002 641771861 803057753 883660402 892448234 362263722 20662594 768840111 65879351 644701643 323376659 327469531 936848065 654463511 662187845 341148260 450813264 212533802 654830633 142411601 453477222 896242182 455891590 436605159 388372805 891240787 218716966 592576743 741221071 515209502 890570647 248301913 84451348 50560968 490156547 611328778 200199408 707533537 388908349 906971970 777003701 423292813 981068633 85309815 804671573 176217043 837653890 977044442 86736409 741686358 155665758 437203755 76153550 862431624 225993343 755809563 488185650 611477128 780067030 592913220 822298079 139699917 139109194 527775808 504355700 355655922 818876079 721907871 891024030 715241228 293852387 724657900 575693671 588522579 996416006 846494111 919106199 240349829 713635053 928227028 95390033 709725249 210369072 265603263 29986603 941261899 162100973 988269297 276579730 777114669 381649398 746072704 691474482 614154289 312671531 217036954 733983072 683525011 834087479 992643009 810066923 209451293 21651603 565064326 697576168 9367901 926923618 403791091 281137749 760124067 692902742 768727870 17251371 233204846 562523933 844069006 426286781 273339774 786685168 149066231 563332828 305161810 644106288 760966678 400916222 516587168 947170101 398561787 316286309 694617699 87733517 622581320 494194571 437388708 806687004 921096393 281951778 340346876 708679913 814182794 832324569 810330491 407414784 251864939 39717273 626157559 630380303 684259694 584883831 233844953 875457094 117522472 204800298 501134880 100366768 565621114 499470237 123498693 198810383 238903236 377962988 351385578 189410982 257737988 500798723 980730984 822863536 3603619 400313988 968336423 889227501 164641842 438159218 546067560 16426228 169925033 929336791 462698411 540531728 46756368 36123814 249065989 33327369 401450248 382736909 847442008 582387336 156833960 583155849 610698061 513624845 377195939 641946702 286675494 676233513 613842465 540149730 803038692 831964861 26804211 213659282 85289116 32172454 519780918 819865638 358345625 478135346 67039377 607767959 22626805 143663430 736513605 579344479 430456742 703329240 638835920 105627132 511636265 715759614 660688111 998756363 213178096 966492097 487977538 259880855 9587756 125724189 682314115 56901485 397327856 419922162 627398854 830290710 651793408 621031354 410399408 326989026 442417159 384634702 490286124 730545786 152160123 605067484 905290259 778052884 735039062 966413431 990550623 557190772 745808465 448271128 436707966 56302409 125877632 247518826 123181080 689363013 803556760 789776614 406237875 760795292 219887734 213371684 896452851 341678993 59385462 185245019 748764695 632918628 469193 114482646 631809518 623753952 376810203 374885321 361316822 353734659 582533722 409818669 326745770 56807630 17853749 239562484 428474014 661578600 507736818 751531819 145677850 992252193 737894533 528631737 448690998 145110450 140758567 396846525 657903054 900021240 799582344 433737888 805366762 621672057 103013142 393226680 377236780 277831654 88431970 914160130 183486525 433094604 967195357 440890355 172120643 372417491 842650460 724497272 391958840 745734527 919399381 146621611 739591388 809800554 173222931 658027349 514062697 350840122 11475967 786333233 404958445 892760044 725178349 260623596 412947418 160403672 528653333 555222657 347953417 658629343 374682340 584823615 331230269 498613981 16313329 42513836 36950079 164454201 399493801 211011561 816309991 259514654 859777790 454304185 535085871 792373090 955808067 805927316 747633360 846051995 900688445 249912545 663895061 285268496 717573076 392890880 155325098 756568582 968233505 131209337 101896062 616023034 450360519 114836910 514370333 133519847 295752518 823071791 44825701 505994615 609157902 897964213 982596524 987681582 587156463 202088282 718621840 164233469 254819349 865495814 7770054 338250569 813927053 676003736 770782482 977087146 487595017 769792421 803364937 771628834 354645333 85948994 16729593 648834836 810686912 994699138 126371932 783487591 501168861 816840436 7308710 598118761 864859825 689110299 949364713 584412413 942101324 65466367 267729007 57707579 168043520 546825858 834051138 435360516 522152106 965651960 99391462 14322525 228990319 306973821 526732401 510103706 859823078 230843379 671234810 581904582 752113826 107649705 674032101 658776671 44155370 310481421 265928373 703043540 193612493 140738324 17551928 900035502 425227924 541457105 983683598 928852398 730008614 864792500 277091852 581000853 193846166 86415386 852181438 468601421 50936657 426477633 461355082 29545707 995900404 445880326 933927123 789832243 334356911 472676337 807717738 903268297 479578200 396426631 953327695 60017139 739022733 171229830 305016472 643523976 449688965 809658253 364142048 825462216 633026976 787795378 163640 748007347 156272136 504515199 80732777 232614643 873739205 115641348 48495470 133811986 511718852 423984932 262500293 458094975 950514935 760055536 935498490 227843457 634015588 148855311 331777207 824668365 297651285 406123577 591263974 667830674 792047088 804987676 823712526 258028947 102535006 613239844 41206006 379761016 531778907 872802150 770877306 425344383 223670006 117856790 210428127 642109921 800146607 331519983 645880876 434031045 668233121 882311011 972906576 535534562 684236155 600095161 645318339 493631220 731484650 383333076 142067508 774444219 978702308 861184535 476980662 409199216 341188942 243763065 92855759 39271789 10796795 90413987 747107501 846757520 186849999 869691775 640286579 22133824 585373228 331991235 861859761 296867815 813767430 920258543 642804066 437368347 587330564 123458952 168939678 214364453 548780086 35973295 731755405 979204745 424671918 862346911 337587870 789192122 2233376 472647284 355550153 300055698 601424795 630479939 399253536 250290382 498438464 692894519 795168481 350270213 315397727 671467229 296985471 708090550 635088905 180738000 956544239 631282919 599180334 943268569 633562535 251888518 267368545 931535305 501228716 479621193 518394092 34958772 605845208 179208724 291745727 705088807 15946545 360814493 576380202 225061777 995010674 481389495 68362512 713085980 882625834 716517649 404710371 622288382 609705093 107402352 455296870 280302044 832202199 996646122 168856438 146984251 442883069 592326639 184524788 27620898 422019124 83300993 751325527 332453548 416238747 640760981 535775757 848632311 723944963 697564227 713354219 242229821 219560336 582535480 575011915 111765476 109152433 535831188 138075850 49545829 781463255 358737736 835288678 656976491 221852418 517597411 977353879 67274816 968463318 789717973 485583029 251031755 385750966 113176486 485413925 668154478 899851410 800497465 490223978 639772276 174820194 284697741 37655593 550689302 427597665 491426160 477116968 362840807 778617009 561052592 705318554 996336887 956546591 852667405 662051023 750050925 542130072 824630624 752741803 873078324 484395158 875925504 16496319 341989090 845357672 336609397 40453501 386012142 509185974 467995272 205421020 150660187 423052521 993340854 749206634 881821968 121714112 175892835 866619350 969374743 577091822 127777437 501608658 147554043 235926011 206999216 954451080 182181232 974016513 791402705 21647073 181515974 68958224 67922002 699186700 169047593 253303071 600390242 782768191 917109823 361759728 850541097 11199067 159158923 720789294 288653348 256723634 82525433 51463280 416520490 783452597 429312158 792356448 366266081 202157186 107981169 873699243 737915774 456814023 520891605 485696694 378028811 970227501 794762357 948420498 981304091 558851833 65300421 131954916 596059321 839732399 934314916 122455559 715483973 450640044 267423064 657953597 278536947 979207176 538065029 566253102 254509276 530237697 102269719 381837248 397616873 632954367 104756716 247859599 554707231 291927801 862199148 624553390 469193089 253665595 332474846 853723419 774365350 599079391 750031017 993320852 115783080 140679679 884803728 767884505 48719754 697962759 642919395 764073147 402724680 774318040 854480344 883167812 30385401 868985976 765275592 760434157 922102947 460660292 817544126 272317885 759136830 366126470 506964430 733992987 695421409 297891182 148771890 853943976 569763437 677508212 485742961 834357273 541433016 589953208 128995112 654726645 713109387 156734902 631445511 419760817 101135989 938103966 182871607 950913600 849409196 653712113 873308957 286490393 949921869 15538570 25259432 599607922 804205519 591697125 175770179 891609122 592268704 810915689 982855410 62064865 93547652 771696869 604380442 90852930 621202410 985445227 99751532 169835160 49760020 894900533 473991115 770476659 103688016 310268538 830431247 809896330 654937110 77446515 870486112 836698297 229977593 64997557 293261034 302921169 77012687 492666233 555559601 199792111 142852329 366563440 762049972 593994641 214137506 683642428 987606003 537272136 21820453 977641990 198997833 572044664 923211535 812164592 382359712 723165802 287129276 419086409 185578922 632253028 168694119 760971308 792878106 332699763 854752735 807560108 546178350 681857639 117069948 613137414 575379810 930470223 913831340 414255232 139668498 38213310 396622256 705675640 395985094 949981571 769657007 856559936 290984760 369372538 122789275 342088354 806263017 984113098 335745847 329416324 235370316 246165350 151116210 754409862 764698598 902485792 727221747 160553586 641461734 520556368 380786779 840145305 206349928 631308848 181456066 136035570 40858340 801406499 212423322 359815617 693442687 640519401 861645528 374807979 208944248 982913672 408559951 731790293 977242903 368208991 127259906 94740161 709394303 706200143 606579157 739553638 821840979 133203010 649908444 99911594 839445891 349139862 19453966 675883002 557815893 834091118 906346705 943211488 905367265 982536652 44507299 358053715 18454952 70489471 441383046 724695150 83205546 335823351 276972318 35511545 387958047 692512131 175986114 476380832 844798852 799870173 425583018 386776412 98033583 161633972 604397653 14546862 884945363 366125393 276111587 845057995 430460487 53344240 980632683 1586204 937869167 982129565 336897278 111028665 918048795 920127597 370393903 545789253 826304493 216043834 426572613 329584915 982735109 29286417 325778431 400630003 516183482 43771746 495311637 419876328 827846025 733836216 33362971 410224362 304945923 991649370 669628010 468043611 421617023 153842425 12454352 100569505 100446810 625357156 239806258 895667400 504531793 762409022 814357498 876333722 333142391 176540449 983356868 599659991 195495678 635310700 801678923 900092993 62217826 381839338 448009761 161179526 866262720 809017204 270199961 990044581 530075053 216100833 22500017 535790328 766077756 429017533 988148235 953687608 340164216 463255651 473766674 992101917 328066618 935513582 770540042 933487230 864532508 491928946 634848961 858903867 262307933 346611075 304618725 392280951 578278694 339115572 298251876 974116893 246223592 656809672 745100823 347414755 959210076 284771838 662147011 342530651 935473511 315662261 868541640 871184974 105516072 830175143 525898185 825298947 725042459 464147698 42226189 608185061 521179047 225958372 838727143 565739529 934864049 297098753 36200770 927259983 61126161 778191564 238594077 618611715 636747536 22563858 532784240 113854499 494835366 198832910 97093684 519530616 367872482 445730916 180566738 479312918 157375192 173464058 967821737 86712159 570765967 507001726 985706701 433153729 406864666 919522190 848306824 577555762 771184527 423843785 287323278 86251433 324385630 984943041 708489305 621562266 789444692 204017689 76321126 60185571 371296693 482268247 968588988 15894717 133903243 666785470 838488394 466804373 20502365 138522083 136370911 759734111 199232091 605070239 738029724 132195437 155558463 138514286 87795062 139871046 971465898 513744990 258421782 375201599 791085759 446441103 57833494 201441826 806996606 501434347 698678961 399047818 191983098 432337506 49597582 78904116 37945923 359619210 353251005 511559641 910215698 285649332 726997084 32268237 672621732 139602623 685058657 670380523 281689937 23753610 56678102 247801725 979608928 778059535 312136541 860720895 614845837 446628813 995785994 883987785 652706782 268251662 134694785 672927677 477784521 856212042 271008477 279227332 916283225 617740946 79436223 36142897 568927392 240583127 858440833 549463459 734096610 200390142 226591017 487160305 19161386 362891442 243497920 533457858 962086139 739566509 702338917 741340595 91017237 405601722 794653004 956928566 730942040 169231402 160379223 523423421 203484416 780078837 353612170 705529308 468369814 380214754 462183902 567950054 368071250 144919081 987934975 796427375 6785779 985417176 924759541 239922082 544521313 807470149 786322376 19333038 796432624 781296247 308774716 421849706 742957588 958863046 196717556 765734446 225329857 961227169 826668989 915163323 200768453 360290896 131683251 357625235 660071537 7233546 412439160 535572830 412886831 98265586 725878029 430939200 142464899 818744023 66230336 594300973 526355977 867500155 236659236 671077135 404025120 775485892 472373309 81045019 410929884 577567236 544605322 154264540 480391329 474985786 156733385 857983787 990100721 65149319 612496044 683680305 293861782 974212130 393904053 157591315 564320676 541298383 669969033 405134690 368949858 637697983 305852882 935134216 381450560 564090691 767587179 14198298 693169288 976017232 976696581 387148864 374034763 690356705 929703825 154982111 111425439 403293252 347587853 622186154 732522159 925942062 887927225 82544829 646389187 893572362 651994515 506545116 260885940 31726147 325027427 641806456 513112429 469881778 633718435 655375188 89473948 841722817 972703651 204029174 586686395 18627849 916393889 414947663 641015101 771278990 739990350 210699964 862794663 362798237 411437245 478113530 801679051 528796779 124718425 837401745 53717890 122098470 264339806 305625205 202172628 395010690 236560008 435729556 952947423 897832967 621112976 592934052 617427366 698304347 772414253 57650214 395750652 820668610 574184318 204941573 197572121 639895447 155940443 434075695 998530422 993240865 176487729 670559119 802021273 863879370 678156653 817645246 699346675 516988112 642316876 95125699 769208314 177253480 262203179 690309659 860938835 951911782 11851897 127538288 426627829 514609559 436390147 947441960 877412039 126748155 501132564 775696849 861907997 670314929 525780682 939681656 113492514 649969001 373012819 714157527 144766832 426100099 238994349 745874827 489541223 370373057 825931558 365730657 472929689 750637405 896476830 366596930 762221754 245648342 186779334 868638217 766409461 984560446 255543146 263807169 573945313 126795081 99736995 340682280 728448058 988084842 751674167 330095523 66455900 821774198 832464217 40671537 972016312 377849498 826290592 400273274 941663118 75893434 374661626 34838166 239861084 377005147 959671172 626401208 99792739 490739579 547001347 261602496 744134816 794301818 346498566 329346855 399411317 657971391 818195664 180861731 740581571 611041177 430348853 669500826 168690659 162561514 394004225 89733003 315807973 957540255 307244201 882917310 763849351 850066605 556038725 445104383 405486194 934170830 634435311 374669409 947023029 455306580 324090366 453730189 918310334 701912784 297866415 866925803 9065620 546485310 67829928 237573141 590210418 48491045 476631427 138823679 366535480 490499403 430837401 731762972 307931750 210091509 560824646 4993099 244335356 507282696 380793681 753489147 459727681 929826608 419970709 912328428 747591329 72867694 476424344 309701264 716873814 185270369 441221019 791213472 726735029 143641323 618147153 135252683 878005800 173712606 502576073 315957208 84510644 103034063 794523115 437816042 597335995 623486876 476815248 460121485 18798136 927446901 186081863 645656498 438771477 195065077 161386088 137569947 256461493 719599918 265264790 23214532 862741421 852399270 482937374 958476879 599597833 890821844 824712814 536091430 895426511 628944619 919606248 552618271 998538005 630399772 468079238 868687188 921137620 920644438 30392580 15033436 151783661 131787467 710767265 79633232 250453428 763064071 878664790 72570943 725738554 977347767 881054489 120988423 148393662 789292397 263313562 515604390 995177702 821094820 728975821 88781452 477016214 148273896 850356327 249274011 953731797 784546846 935576944 425539451 762207210 724164000 909788988 264668219 207486459 372543603 633032017 112423906 815582291 518054318 861920677 937188192 659866582 119004786 501299262 116331333 753952433 393715824 319018605 656410480 263767994 90866324 136702010 18800066 99163916 578335751 31875442 606404964 709466197 696973989 277852277 893213527 325642552 968466656 53768395 440215818 967408566 370138653 570390668 432028916 856163519 503141705 656009905 644960035 797736844 356786476 666939426 643009425 596581568 110251363 403185743 257389817 60547903 626331850 148561302 408859597 60255983 683374930 762171271 468953536 921206060 270139320 569135220 109652064 591753430 25358521 827568140 124928721 79764644 834535845 149007391 736258139 164623654 273598575 652821478 342555871 480874345 109096361 155975642 275805992 298042156 80274273 471371629 721236381 526726687 969557881 891040807 694015017 311782780 82303127 778772900 504875994 124914775 2099182 696554900 435191637 219554140 315821578 854700462 815460575 281129294 698292652 388020924 529906667 945084561 802296386 954990496 100171222 309783426 312390714 310326314 512053538 545233463 703664625 278297625 64858777 30879517 452556659 563784476 3560170 887551583 440601552 733328298 192241643 123903679 325112325 947808166 286552961 71892936 409437392 987336389 153148629 548717421 290022850 884339345 683150970 137715423 701703075 487831459 187696975 783358013 419157807 646819464 859939674 664941269 322586024 774387623 467485073 772270900 955001836 414503567 951510327 325889275 472285686 775155807 455841357 288273475 637516477 468585782 388441304 294960389 746861812 469008143 342873886 960868780 668084110 14148652 413919207 325132538 133347892 966277628 35817576 634167456 475606508 661055866 272142904 499079393 166771028 499957430 880249844 942380815 662449545 588312221 97924474 783887652 907501330 552576881 12780796 637790723 734318058 413051083 842763899 299506004 500081316 412388833 758032006 751230966 28648665 672524729 206147484 539624522 875907368 584558077 123550263 301794000 459505906 988253269 977659321 272203296 853144720 628442894 15965010 483946375 41425462 554540158 306261123 590883391 841641629 675925909 119950663 703752513 200909483 408290935 761189052 717357451 830077951 597611800 630264959 482738587 134986054 598151699 543294902 547257992 231691171 832743367 407049348 86133678 391147702 893083942 565019820 608802467 624073332 626370093 616096335 764921846 643066175 78457020 374828454 344681329 27539415 912757556 89257422 643638290 486766821 815888322 955168094 402820180 613582503 25092196 966091843 387901835 760748140 409447576 692307689 344255314 909834170 342993641 287211689 146373471 128644389 274340097 582964058 908321510 375279426 238457289 349587300 607227633 489106320 535710146 362579829 873252547 181314176 977528433 876873658 375859672 158559586 471234143 522787520 633849716 727689097 499970889 920143134 369225363 507620632 631959642 210078544 49401613 582789722 78938925 425198016 858927706 30607279 660038566 552201559 394783112 634411950 665292364 346600713 702203874 59489546 570789973 29473326 387987230 725331073 636442165 784492968 576856119 685081783 384529081 885864730 294695482 245605024 933551026 572671881 913315688 395481569 541958172 808419536 98213289 413086654 481170037 87085971 31696005 19523864 391995049 943822295 102392412 323531983 595592339 640021572 125833346 120369425 682970715 765097165 311946448 411361123 525939398 692231086 829930487 259256499 660352792 937090731 350063652 109948307 585650952 326610212 881922805 280674075 676700851 665620555 861050568 543913183 198142326 244126738 296972566 748490649 735783492 307771694 769099945 513913085 980145509 650301858 330637544 158135224 258805541 92648457 244299357 668132831 744805099 385046714 578990517 24165831 954665436 256317267 169271681 311491866 561317744 615374944 192965684 243853525 621719587 515819266 952278164 777929595 314673381 274587477 891065190 778115714 749847317 864134660 364202868 483164283 77032541 572975124 155579627 62882604 745896403 486936765 358483694 42025889 495549902 650974473 320688721 114277214 163206678 750014656 250832079 458538075 256672313 655270536 349069028 821062492 588006855 414736285 97142872 314181993 119101640 800898924 483138029 662917790 945017749 130105135 130944879 504632679 117124612 604571202 898137968 627736140 260288592 604332844 33500002 152094058 713771411 608582661 934790947 639450966 269591047 257731341 733354932 173137420 583974278 981987459 913586217 922719631 326628377 866727749 954537462 71394535 216644038 770090451 824758877 205193245 63196722 470096893 692151230 724954386 552548836 487788339 131199443 180401012 426157358 738601404 921535194 150373234 959670117 426666129 679511669 878223862 111888901 15868181 174930468 362372319 511547690 34713635 527676207 243597028 167513268 586084799 764829514 455107846 29576398 558291097 559361721 447566991 173203759 893556156 650522744 141379892 844385897 111047428 691127924 314562155 366339763 547001001 573470854 969722141 994723854 161725780 37098461 85290791 620133839 770331796 157318853 823205924 368649680 615747946 99916198 431823956 9393172 916250085 978970481 17826546 720417481 409755070 142311860 184499947 55388291 193416781 291736502 327593354 666861635 977995458 954130745 541640313 337530952 484447063 224399495 114953317 18829180 34405848 884801791 862864411 367332941 373745838 831728428 418675444 71623862 787684951 507869829 290819806 386841272 242852987 396229348 749358038 973478536 968587783 836910554 463520846 168749726 485816107 66604459 257991791 990035091 483367298 13000982 725141409 607082658 352104192 161708414 940519659 808389132 736138289 326711330 108828239 296894421 850478441 40820858 442075359 124426004 732033092 678762046 663264820 541560213 764007415 859431867 892960253 469185362 598543827 467687752 319060509 498496621 664455327 884038571 401537131 580111450 967481511 420231107 9786784 947485894 869355466 911428316 468874068 529738993 263360702 476844897 457283252 676383386 607033228 116339483 791694964 557514314 303382996 809894532 894324417 718017094 909761525 650416990 830569877 330590777 239215592 480147662 998353336 153263453 560697070 402399997 986950445 398495795 387180917 464466425 894328280 223157631 570801212 584407683 482829659 758662986 842729944 280212645 164203761 551993128 816328871 439821327 757116026 85795303 3729862 657521982 92095695 46441242 328414721 631638246 326161156 14907608 910285052 743395460 639616441 187130719 100370586 347182718 114313187 530348026 596209619 163921343 381868069 707704050 317894805 6804637 143792417 325540622 463035296 929122128 651595358 709125907 409548241 799039470 302508543 232292371 629153972 844236981 413522166 709173440 826757040 13486663 569577377 317544752 670104156 26805987 997795948 428633518 176439240 648382232 175230858 966831332 280902587 775606373 382319934 263867999 610074122 698147918 999230009 870042471 596967656 453211787 174649964 363845203 831563133 735789672 484108217 403599110 342317032 196771384 309557032 455824014 440103524 894051035 249100104 846906815 220710847 763228623 711182460 371219593 724112193 867007256 532925199 159178195 188139645 718227881 424196704 104581428 362899372 312735086 950293888 351288476 323972893 912287944 726364169 995422468 556484540 117511586 328454819 754799780 25384174 320864508 231743974 840752046 683491980 30045907 461370153 760152534 360378152 773228164 839608772 945322424 2933209 857583720 213484632 137535610 417239265 773987738 815039769 544468984 823577980 824136847 436800919 684920507 450651100 620334307 170208079 751869643 10952574 918507785 892214818 654737388 886272554 341300327 582898518 143791423 360056900 535341875 142549304 108475 25809628 363473619 762952859 620919264 926629083 191196986 908897892 107011373 880819084 925904195 216361629 925093920 50628999 438619347 64673264 850305752 80246774 365781893 888878058 938437094 923709374 913921060 825058911 225193425 326524899 83826863 265910151 971775802 150357038 493297661 512121972 702007612 59381720 30271911 159992216 180215247 960175340 693199736 518407481 126179490 431897144 432120768 984573536 517159880 264137125 224920034 18253566 127357611 525092859 656188395 844231142 617096141 886183776 504728389 832021557 652081788 408579091 200357853 333295898 383380213 863489668 574290502 271456654 64771117 666949775 659105418 415220896 150097191 990694544 820571657 980832397 855404365 655922497 854540355 193799353 608881040 825655260 669121330 182727932 115659338 429995384 408361006 314231133 71306747 355013631 950225821 855525948 951813953 835575912 903960506 146622919 414583523 883096969 592398936 559699491 378492525 473480774 404551971 619556095 463615353 655003606 255957325 210767725 634582705 473496840 833675533 562865135 797976960 512994141 355612669 375920950 112978046 40917034 146163673 675461157 577045232 971631917 990166984 929330767 590453954 690674525 82828966 304755740 521446621 783679274 731213320 450235507 292385510 271517271 381158863 611870649 96370522 792397447 367509328 46141190 951991821 715018999 512078587 844516081 212510497 164462037 895237000 917994766 179042316 156004821 908400401 967518413 950397457 398700529 166362140 203947014 451349500 677526998 684956709 218243546 622624719 200078222 748935981 954676336 717170972 606501853 70148145 890874079 233074809 910641302 506265045 819739160 681193952 314153396 699658635 962868690 651371751 524518404 25101393 424785426 396228529 468645407 996202953 994322464 417051422 606534503 707643933 553802778 477176154 340528347 770717698 910763749 60192824 286861091 166355 185943821 251472839 884021349 664687506 617122038 214402634 621108821 466890802 669305302 996359743 639662855 894717982 533904178 35938374 173367993 740393781 460907626 956076869 916064553 435174683 305078170 19688281 711805386 190217831 12559925 145044929 748181897 736477935 48909137 147249678 973445148 864678713 236769217 379808557 497164111 309465126 614350417 186850057 333000944 950417205 292693029 485237425 397145025 468369216 391470058 96846953 865819694 374694371 216179317 941978480 357287011 909531165 800245277 270769463 17175173 227288318 558534317 552939547 307441169 231384162 431591353 26977875 244236875 643675317 772098637 305758210 449856164 705018817 183953470 251686519 99135811 190278524 798889706 71338618 38739131 386336951 927173589 235919686 223729652 170737122 456449114 553479295 393911844 578781943 867947655 806863751 414918255 811428608 171062025 638669299 220237525 983446563 973247130 674688722 953036571 781261366 89829899 538078986 668831581 352092696 382599571 835608522 831366754 244989061 845507777 539112390 534377606 394348324 585295906 481523478 519722967 336074828 289250257 897482279 287134686 473335693 234350647 945974762 461381739 277818819 424103136 813087545 570732476 751896207 895954050 344024923 503601822 999768534 552686829 853993935 165284061 395268621 165180106 498959059 33902602 803944958 909410740 834591088 86482512 646895129 302456285 672789731 647394048 263142520 181927580 177000177 807354718 142524525 395231264 674348928 181839044 112408403 90637273 837972082 347437833 338525374 43170294 955569687 968794919 533355512 915607420 104572901 73116107 279514243 227761213 766119726 677270967 379119647 934575445 650165224 175360933 782548467 352816194 262058863 67581956 685636991 416642048 327351322 153422800 946077967 817424706 739496608 389397952 820859820 414354441 343708746 239037466 347020164 839442835 394027571 231877085 686335174 87746242 488129678 886422028 742519205 832225989 450956760 110686546 567891020 782955254 327607815 695911305 406873173 941296958 892429973 662835 114114064 300141630 276614421 890316191 379180793 534979990 140242047 466505728 990131393 436230882 820133361 797543309 731088419 9750464 318220530 133315820 482273643 405405879 189111797 695576999 772244614 915467473 854237686 826119490 473539085 468003617 339754740 833639273 770617512 275016594 387836858 321110180 193852388 283491591 797417834 832805754 918281723 763485806 501603181 499702439 802213106 687801008 371827598 447585037 68031321 48281305 861838620 504133343 38973822 234732881 18797929 199865429 678716647 310104361 758974734 555248210 536500902 768335673 139853762 411282966 866761165 891178580 546825518 376654546 343734475 692544114 921251663 639755935 545158705 445648330 22579695 641375380 665390985 411443654 976458636 759812267 154445710 211997436 255002799 123595173 581956446 569444791 597508598 26342927 936211818 632099895 843813479 593346565 176483133 192238322 529232542 874455862 64590198 202213045 55371667 883574954 614663344 425098718 804342856 833659677 709145301 582101929 106427929 140576703 971234054 118788608 820449364 309832270 371889666 408672739 443724093 300018921 681179175 416067907 514749282 275262924 557753058 300270259 168379417 720448246 413457028 420286014 547263742 982873468 635108651 919626899 201102504 317200290 561496386 916511985 905481376 94844168 332762554 239986573 326419361 611905537 247492173 315475088 362465602 896865992 34255358 447798504 201960639 95394013 49055727 740221727 831982418 836053704 656604862 208313221 642286455 948173969 140420771 855053674 518520138 815904113 134634194 572058227 418721002 988392820 249573704 176077199 443106841 187052255 972029165 846464845 696834191 300482400 44635940 739195293 273143057 265299892 755996373 413892255 265536239 619869475 86736120 592669809 824990578 958277830 200981352 751504304 772526474 876713680 121925035 256482074 55259794 207589921 918006941 584995461 168036840 131057292 320316580 206839747 487449109 935029779 903267699 789518853 643237536 653869682 361953056 405048630 36715719 633909309 818682291 948442602 912334698 790516553 571097354 110923738 230918838 175113153 985605435 577041190 257690494 255885310 263117532 835005366 209816665 150084898 12698839 195193241 29600176 432570636 636005650 596780879 638489862 963909172 831489721 706348253 23509696 357921299 729656213 776697651 223046014 221148697 763054983 321445971 212450060 965351677 483327040 895610668 882621577 103449273 866620665 861413027 740427582 950089837 879363788 961269193 228441525 666568188 776868642 458804526 746580292 137641629 313193471 679009932 356530910 899921246 364953 682336828 484463258 820299567 556357235 479085721 130294257 495917831 470450312 233299527 377389978 413542810 243458656 444714471 484491651 928125541 388189567 185061505 987133391 318113168 646719537 34872725 513465923 952417865 611238092 600782697 721150646 48977204 815367532 213009723 339310626 996538182 696498081 565842052 761758855 362864433 160113880 197520573 753398193 779747793 399699732 313966571 464738273 816243930 86704252 495162788 508884379 926990399 19040391 699679770 330742704 962556232 151975413 780851802 172462505 810188771 526005056 521875766 169601543 928744160 918962403 415110246 307273763 102160942 106165356 504617409 780228616 671003144 412066859 150017206 953547509 721546670 751643505 14130485 768712219 610296364 577114358 906035915 531529799 434947909 554004131 363830810 303698506 435898442 342180214 6436056 694164956 54085839 233681278 571169579 925186070 763646214 634888883 94599516 676089067 87631711 943432337 751634426 426380863 144598486 3858350 506900341 83312279 797242364 77881901 535041942 967768043 373789620 410079330 869472069 334897071 392016067 689810260 960599671 990259755 414683478 253845665 60458044 823971459 436639497 902426611 937199017 188483317 198773606 773306119 461555643 830326609 549595834 280209214 330656847 441162310 516560511 648069017 469808042 191467006 676511031 820260873 749173514 407785758 541343005 176510412 782155622 354485378 83412674 856590857 519121250 98243934 627694581 93722208 211501064 411358411 452953181 886004094 544073463 785911559 659484860 465251620 401610852 284514809 486119540 548222593 338258348 331790669 424414367 407536441 597537108 173598424 881048761 231400162 418988201 599051613 979895446 840953369 206803478 951324402 765540313 741105293 924757672 22067498 426379895 680321213 796071246 936921990 714777778 488352842 801184161 362894687 677520145 628918926 468160415 510143864 825057840 168310148 509007726 912207304 519592296 193177453 519180731 574338514 485592934 506589669 236661167 371148284 564288409 733098190 735549948 291966287 802320177 675738592 210464690 617453342 191700130 179472478 501439729 370920821 719970869 114028456 660494523 793813119 805070881 677182266 2743971 322932920 588452749 848640981 811700102 290446714 389641667 781212287 572436549 238701057 833386324 220673249 803139156 987095766 600230736 785116325 142041757 947113496 75974250 373415384 962342616 325929123 220600251 680548965 365171488 166834497 258902381 907678699 680387261 708195514 315165554 249703900 88696001 807420317 21452017 816596902 252996223 491485581 593126356 220147085 814401750 784636225 216061316 410940258 359382591 92534587 353424061 542050428 330201643 638300758 756336208 129111200 856800563 278893510 899227383 896177788 613612179 398176265 416390661 121996048 41543792 998892495 648095609 898616456 870768492 439807285 522751837 261153818 147928764 853749170 628017309 420993557 231283495 850372172 929695039 898272586 477583129 44513925 856779378 256970472 532472160 137385446 729043821 573418483 811469022 574408887 149508775 803149646 104015751 317922917 844058234 272490565 447038877 429099920 520852161 701968073 51934325 260170478 566750608 121253821 743215789 327054553 86885441 223490738 937216407 904950360 913963200 32338937 236128520 17379785 166354024 134454165 776576682 227876116 546934126 199200044 244923306 31150440 520091986 366972141 182293869 501459443 572521529 530900968 525550633 314054136 888071668 192157477 142510166 944911958 943211967 541364592 380166069 841646895 765935578 666879842 195133995 263792428 601961218 732498062 853308738 878104765 721901841 203544963 889134774 791851384 445690672 83625788 491572073 301425083 719246102 184041725 611302471 561613273 186058710 22568681 829859425 143383155 622155877 396929202 358049506 707379449 298109390 670647901 415821869 35622815 607756022 4752168 232491430 668312874 739861697 347990242 342992538 418159656 923746773 101884683 951777781 115181613 412977884 788556508 51980062 462040104 169367807 542355131 588637349 777732172 985854002 707240179 872986300 81553054 176400063 836185795 87932703 105629089 324249922 95995915 727897405 255733420 446593687 938957906 541873257 376227814 271486223 278806501 995496447 685837190 162698624 55059915 611462395 827638697 246598757 392501666 83680095 841755826 264517978 834130879 164572841 116363473 285047068 7513489 669537573 44475276 447985519 764335038 181268457 24530887 416929339 859793769 132302610 67690023 964989969 617329822 930057014 353854030 894387592 215765269 317713383 882334028 787119228 469421917 449024048 973531368 211791728 745586254 515283977 670869705 690778420 775316977 239048363 131326045 353904223 151224639 104270855 584504387 241056024 710405378 448342382 169575851 250644558 609433964 638705719 687180064 669387434 374434334 203519197 288485885 446869413 211247921 257193093 336552161 90301669 980187728 617933450 412770002 956955905 209559837 870385655 862210996 76177593 54219171 424969960 984027548 647615086 925183324 269109616 994655654 210803355 669660962 575526750 266926833 900049093 745625080 835849320 58862337 186810625 680481385 560182376 111703443 30906314 687415759 292825696 155166870 327603131 738469624 420078559 669873346 928028032 504083512 557284891 547974619 587769142 303949327 468758897 283293862 735251112 631869732 915471802 11967517 498269295 158397464 448310697 510147750 569987731 46998201 548972100 453287570 357862432 361262334 716457865 13228328 39213051 621254043 730573580 850799235 320137623 82391884 697788030 433111078 784133414 589882028 159632783 344501879 967770332 65482527 94633533 586303230 440474445 116857076 70268860 561089646 514588862 434586260 925278755 423775879 424568370 440639504 565664066 789491746 645929362 955111164 555808692 460447178 286115318 614700463 952139121 889370587 539500525 201300160 19007282 196068231 295628571 668562758 156928556 685447259 463643787 789884783 28462178 221538392 234075501 332758039 569301826 250568324 782079620 429748041 738931392 719886909 812710803 168034309 582815841 929663696 745523111 502427805 23148611 158050870 503400761 608811785 725539806 968781122 731375277 750446307 938148811 106250119 611647697 874725731 234097599 763027215 73659787 623152560 747833419 239836369 311257156 972076183 118843033 420797396 164119424 516093970 633262472 348523653 552192793 757665464 648335004 150394803 111352722 933432512 162845142 977124911 825781849 685396443 604784080 331816956 653970282 5100791 176595421 642079637 516930346 229304843 702231716 466080077 40406942 720672620 894075478 689004938 139029129 286063605 704558395 512568223 947945554 466008166 658932725 19931485 957228775 739067803 717903104 741258973 286715651 928277028 297224590 533149175 10359275 197119948 464507778 234443289 318555317 373599072 347926220 860841208 477317439 145902651 828131466 100453054 210035647 408488023 900049733 734763552 899359585 854701556 800065987 851431668 80989199 566555748 791003540 55873092 64542944 807115065 748584559 766797626 122064600 368035367 959088820 71949425 885496925 734260321 200161970 331049758 527497701 917240359 893221345 748167165 328427836 246107650 130050706 928460932 270235613 812828759 806513176 458988325 403949640 282231877 88530102 851767403 257082529 949571914 102778079 723677134 565462604 537311244 567677737 499529365 521191937 18692487 116106303 593445411 944441074 988929911 603029687 511421422 108975557 568810192 832421231 72560830 724118276 406989138 164286026 24558524 789937909 840643325 74012617 733005009 714787048 341211234 165802534 323791927 128631098 179377088 712741615 972813465 510833558 666747215 32253473 270054199 832948751 144741063 183197088 968509231 316053615 932156132 260211328 894065711 467427549 796297361 228561652 599423984 347122934 238644624 785070426 334915654 719812276 343578349 851511421 465401582 117950163 516553811 155176208 423395906 316471897 62989308 599922606 605061280 147014278 800742448 343404903 962064096 345425624 969794421 968485896 766550568 718653467 858256203 957579518 556884802 38442685 777105280 157424952 610010249 349945396 694098404 740363859 85616816 820308536 739333295 36023104 114389570 182738899 363290659 956527978 218428639 133747478 236590348 453424308 822668106 500780047 841795637 917535919 635813940 961777024 288611289 774056487 621511792 988953248 941016019 956351073 908050175 33337816 684037515 655406427 513126515 884106246 217661921 876050565 970735671 953201004 821901357 583529211 681804251 694383886 405708749 617223675 599315783 629479539 790573802 334088258 615538357 300213727 789862541 658118579 63324217 171588265 701184907 388970790 759221615 250339356 422613559 885907974 882646700 180112282 943156924 589318093 902287048 853051886 253913594 442143737 496800426 658702881 696303311 219874251 726333639 212432053 149107232 526198862 686857853 944637779 461971205 422671018 132085642 741680272 422618550 625280106 425282112 830717773 325727337 937647804 423589049 164437739 16878247 489623142 895255765 988263428 106790821 51550658 175601111 374294125 847173569 978661006 985958043 585651472 683376235 860853381 568226337 777879090 83256404 822795187 776240726 412330252 116976717 60532605 387736393 844860016 113355852 213239298 793103100 110737341 355614989 748823330 148224457 976477881 975464876 722737738 310338179 520251647 645081538 85544431 366741860 293343724 550270013 484175470 660540555 680186939 408642010 284575503 479976282 750526671 149127247 189977348 763829516 553217402 984918777 365803807 500470792 495962525 26901880 758539463 58814295 122887471 566211465 501886850 343722889 422072185 704503302 494824649 190373795 942163658 473680197 473272288 979138598 59523708 481734868 357141999 688408117 210719470 350356022 715739776 20794037 780931458 941579739 370256839 908761197 410180149 404554962 793138441 188833565 502659315 880090452 36918404 447936694 323113443 626236391 632970605 891281663 426883767 912363764 933697665 559160210 649660123 987521455 710452531 542132404 854474003 950544905 887662292 146486170 342096327 567645547 996066660 492515088 265677679 282277401 256193772 779149883 692400690 828976477 734824094 834492048 657324104 794621939 731900701 482444095 299058056 734771588 574642318 54069305 921837206 689688991 659684199 212551298 591453261 143900645 633219516 359613574 275343034 138323151 796365248 902477918 607561803 472004367 739536660 233506246 734685492 414034230 914481742 541288280 38775244 580460172 696894555 568858393 508870794 890299372 403609543 236619952 655761770 285581974 429983484 920769824 119626698 193453621 215535527 390425460 149613793 488068897 741928517 754798029 796398148 473670693 392160469 211012163 925493980 60361696 104256090 760524524 980429611 409894933 660020565 792675777 482138053 497199496 35868701 109446906 780096609 216870883 884791032 475394290 482076888 455808808 880036803 275301407 670366797 794064793 100705144 755344793 21938063 721746937 973000875 480296011 121515580 405377865 888538635 94379799 589307005 581929464 808547658 241351548 798875112 94497735 270516671 83674194 957508442 955457077 840147808 786429094 145598591 339176404 940001596 24850949 576941695 175419027 710879831 294286108 8742100 942089914 664306619 406923202 382213337 433092830 273572849 844980125 364290890 194881978 674321275 702815739 84126561 709734405 798714011 150529974 342801905 752822134 9192244 270769898 554701530 986826299 489252164 377619615 893076103 389594215 955400260 745000239 907228101 363800214 223436072 109227313 717976826 931611860 852377245 196377295 666432057 715851866 289702632 734971770 372153993 45496560 133189464 977024262 372481402 117285211 415382203 578280348 475961065 939046118 786856648 714840622 970724892 708471696 525666227 61914787 501643549 401577365 41408363 138053868 966862416 294934249 883701999 201443372 472067597 617960057 885354867 217495149 392214327 236856942 108886728 222046619 23786677 224929022 983148306 834743034 821601246 96507652 139017081 14678167 91887891 692053029 528609217 449441443 878896759 704317207 268159637 289775475 531188183 694394944 212589321 877485770 796459718 440026542 190842782 533798869 725282900 806669325 340996496 752753350 241114660 361699620 695934224 487428221 393837818 568318242 497292052 374164419 252611169 758141675 328388571 946343672 722327784 739522627 42304495 543990107 822258325 917846961 489299293 19005840 44275243 230805712 583991293 786424739 785782698 381535089 582943768 246670666 1405411 8175975 887845164 730270215 321096557 415286023 911091998 634124225 656050673 866735914 315050059 768212912 530581179 847817797 111957524 890002867 723737293 422018160 840580837 146891520 472726860 199111353 815656116 468332567 59279024 923655799 498545300 223314395 95954693 534879163 873590936 247928135 892447873 614500477 442655848 680771083 725142380 167748282 875232815 402568663 17616474 707733662 94570534 301900284 77792483 391754192 319657476 118381262 785591100 189518427 661138794 369150092 521839983 581488973 507334860 554234345 507140725 364882798 890608247 74725025 784226585 682739512 707312252 73392985 212490648 999258732 261665256 652983313 323734258 847779547 696380587 200204851 147540197 998133028 355053773 369198560 138554601 887763891 132698863 23854992 183343604 448302916 670440848 352731406 248116022 728738133 883453799 755343838 668162175 523704080 842015641 27433063 280486187 543534361 804059270 291011296 324596408 242393094 174094691 339336253 561887630 316908325 968047717 990029997 488945684 553936625 757270756 553533330 983204661 179127533 394875638 350409120 730255533 158093250 853686074 33004805 125129279 165072414 849952723 271305027 238731254 705611054 935578840 330917470 189439210 817297810 168379178 393395972 188224622 56043570 160946511 891327512 552713501 132739461 922616893 400489936 643918122 379537682 162261871 479834416 858565862 201320504 517468599 486893351 385393875 619497678 783466502 299036803 778587138 224106261 446772345 695969951 607420621 641327363 759116231 749934289 689375694 102837429 241828243 512152244 566864421 138095131 815425691 644837512 188092010 194387237 857545086 602798874 95965372 266431582 883365049 137775275 791579258 542356260 642080315 330047628 399771447 836821996 824393236 802260737 713541345 464809381 165515955 587887131 424487816 430580110 598831146 637230538 967042653 26661100 190857781 393079701 963808154 481442321 170045623 605870014 168008884 507881762 746708750 590750028 428659611 712304825 823427331 231925080 282150343 511478895 462256790 837728476 896721044 846140057 23357462 374930236 758347929 162976288 81250736 571603089 396412174 37754689 722772194 112915321 972625402 338170226 446620462 761956040 578143321 437281982 529255380 414826484 518572962 929898358 36055003 272465059 516190003 307480833 659361884 635388202 820588081 95079102 137682234 478676745 468659133 360369227 237800421 351217634 375065627 827991178 278917298 919419954 101322240 323105551 636013393 687399422 721058944 984861026 501333510 707030638 703968246 503018328 244039471 871990091 357718159 45551914 642222803 761594666 401024231 252289322 295046252 70735222 984881542 171687820 755051313 505856879 106762054 912198195 776418499 257590774 929109350 59357384 810878407 375940973 196682905 772263663 642282629 213556456 264384091 61257795 355302084 562827309 901635703 402845827 718149396 115620801 785515966 240533367 796082084 796900844 85300508 941278255 93000846 280133906 394608400 785416840 252990546 872547322 253576377 552633504 48431558 247966582 706241761 773818256 542178236 126123356 28729308 475960348 90700213 657683155 547812376 666726874 768956742 326940227 857529624 656204530 200860175 986645727 239874087 833494262 385133523 291138 617445030 285248079 113491071 936393188 71066711 325250606 99175403 706060958 103107282 256917966 120734088 168221819 174554078 678858424 547976672 977731131 253065110 981115331 393486510 827373672 378896800 914930739 226365023 250023646 157470348 808238999 247972470 184561235 853185809 266196150 777266714 421279566 37283535 923327764 498603994 121157977 54849920 145962166 530782841 879772658 791114740 742716756 757423064 588430276 226028326 363379920 985775491 494829151 992921861 242394263 295524564 533431726 549788258 83871777 427741472 592930147 598049635 948417397 589762577 674986361 903887906 674823995 315820357 667340535 743898427 162675730 513006716 338703446 845231755 369981651 301526882 4842333 136996906 351168394 351881044 790375400 491881272 260285199 404002469 604277793 198815157 937687435 653320894 694305656 438515938 422785889 353620506 193513507 911281751 787264374 651048685 450752486 934591209 488951742 902846555 412562456 895537587 946691616 140162897 754010551 789557600 53732790 640094932 778752090 979402084 734991669 468752047 545643483 523015615 460663329 419218364 119876324 905100120 272351102 284031303 426036380 822289195 761598759 436141619 744784956 878457102 688850591 929748167 548072396 709613822 386304598 748532374 867169679 916864996 826918228 222471092 574773476 686178112 8047829 535658934 310862641 980726578 381002736 960973412 141158941 467419197 730307417 668602186 747203017 647205429 707131266 235757814 194126421 236447597 344164384 624466907 779669842 419668455 546483374 704765334 487550124 482585699 647237655 831586920 951177417 917211797 955920721 616709748 465074317 78530873 869638306 647434123 953878527 244042060 848439929 496673060 37611446 959908113 104194501 955841115 62843343 497795660 923482634 845095589 316506164 621973109 916735124 885699462 600503133 796441004 55406888 897443838 181945209 17311501 715693731 594756480 447668414 494634638 439102822 737553942 469799730 178831120 371549085 180331143 985766210 487702458 787738698 861230151 713746141 844656557 686651878 803242761 159044868 656086238 550206582 802338321 777769239 796393641 886094305 533379558 388011809 425451181 665486599 274910087 843076775 235880759 445154717 857464936 413720199 936060935 365335754 942213527 198485236 176376096 443027618 625053564 636975593 11106366 34508019 853978981 117330330 549800514 609946908 615896505 274180668 734511927 281548822 240937309 946964718 194955983 870554987 151563548 74230255 706563617 382040667 853515874 522558322 894274053 971485711 851830851 769365101 345871221 939918526 779199712 183625039 99532241 369842127 191931720 393246950 408855536 775043976 399712544 862474780 449414938 915494714 561313022 747206801 578144592 819076620 643207825 576730872 916528037 313922474 19209969 13800495 790871138 231091081 991522554 807898424 608238153 628371878 762144586 488501265 473509722 349839968 135971531 109354472 328235033 543009731 230352068 329714332 381561806 685760503 325297685 804621381 37999244 111514634 910868470 326131534 460786684 573322066 675584731 760488389 678451227 195916755 239906109 787629617 904646674 357261876 88914371 21875264 208718913 606527769 13540443 73997029 600054412 814300587 465708793 865861471 397616035 545247567 31020693 307262291 546121086 273964054 326612741 51173996 206101956 663602253 106060068 294147247 350971312 507764492 609753645 761685952 167730781 410674102 459910945 144150769 228841074 996535841 471987931 910670105 902223818 147197715 991938297 78045208 640065880 534663591 503842093 460645062 890543825 434148276 234892988 420329339 533785372 387847016 707339921 589436905 114768961 790250370 744348261 362041160 591377910 935068544 712533937 366816510 58131571 119502347 154761228 66143228 95047377 723035446 35582172 804204216 427526023 762925813 918960461 158421272 715217395 338206854 333022122 687245904 448351918 629413866 43568887 289062546 507295716 308166044 27298194 301837787 537406820 954696090 890270123 553792557 43742940 255930105 150448299 881437718 29527379 988468625 497515266 592020734 925085333 834551195 107225158 884175357 117517627 15083463 627458736 73611879 982785163 318017942 263397212 854480039 502205283 915964522 797655321 794069850 801431466 657347416 860466245 771357436 626836243 114893836 465454879 811149908 27121629 474967407 470098730 442030323 795855926 88711368 490965009 824615725 480090900 147430825 293598273 399668356 548790237 218130458 571170897 439061308 731714499 210578026 687415309 343234455 934571759 862282133 152571267 484451032 905438374 418040544 425955918 722571806 712261392 233243149 226471679 466986315 443721695 986440160 848778305 897605849 564976982 718035685 101760085 982557344 986713480 571850043 91604884 965548929 623714220 480321915 885669768 491645695 563467070 944423247 543470087 223374117 384188224 213017101 209557823 601395016 338048143 273568961 820420074 219529169 147460047 138956206 859561302 225783889 107588893 113949754 824463416 81431247 286446901 129716246 809630741 924640251 419226913 558403472 75763519 67104967 495523028 459047561 724363732 66279365 829712536 220540090 670010260 793473289 693735218 663202811 311189526 820427223 66239531 303834969 506385430 239014309 757443146 174945370 153801856 992889612 262633550 929080973 172691011 680790643 863473972 471596304 445030969 810773176 930868241 672230518 637184287 605520968 374084001 636699295 660364916 77633476 914297931 55688516 838064478 669753612 411352218 886628610 412142600 657571499 131984781 804793050 637394151 262813784 470031075 378538744 694097847 466883068 972519635 508439857 152496842 300273369 132574075 949560124 530792452 29553307 553833739 291148049 499135669 483034554 446760635 383873029 559440001 887502128 414038919 665791713 677082395 212721836 830291671 429977170 228359995 117870660 908047700 759344326 514659891 965976874 916560768 197515395 151988882 381844192 975207124 829592251 544802141 22008975 966865350 745104279 623112265 83891765 221829762 27771920 301408119 742329619 259936377 612476904 843043041 665543297 323105375 963821171 198389028 324775904 755430201 202984097 319159046 478803278 551623926 786937691 741863899 667845252 99347586 78489853 235569226 440100347 551849126 836228215 216099601 731937682 680861795 826604987 769563205 372500007 619733314 457794650 630684452 295856584 538992075 784800216 401302426 17129101 15105609 696742029 468055129 565396135 49090986 110859746 679333338 628366908 526417612 544228002 293358061 143915918 11016540 278703339 182980084 40522145 960159465 316511084 259486192 350091726 381349938 303858213 686504738 701068136 313118242 369259260 704275699 883367537 65127529 685104779 594941930 833984248 256727243 396718869 795950471 988988535 618581501 297672367 945570858 191702057 762181053 784131227 789990767 426608364 818814249 113474897 2957283 405933729 859545486 568923879 888713568 452337338 596379459 189939585 350436087 978114833 209980984 454567126 460483490 678798955 988407831 838414291 377460723 361838585 552863109 346766628 97489597 336347654 164584303 77224069 582083451 700791449 169259243 348792734 312992002 233100837 575595053 245932223 848639062 547976247 29819061 671854483 464230554 944991125 826048287 692128466 20641525 614797309 692704132 961255099 16166621 44199047 207506343 157553525 228279948 808006032 255789667 100676385 952460735 945134664 24725188 486570251 147833682 947755622 545116083 124466678 312929483 458722165 374498377 822795846 67051729 597517824 765394981 788729668 321071756 975069428 874788761 7770547 699798159 138191206 731208058 434843406 101077028 103066420 463978999 287476304 103252128 80436205 878798725 263460081 943023799 312238305 333447199 730858850 458039648 721696519 968973635 956335137 321619099 112984171 656764795 769302655 602862678 73422720 784971680 175209596 770229292 776466730 153431259 901712103 510868989 429962781 787834120 740230815 518343265 677114008 251266944 695816662 776377436 690365602 190917037 685910049 801928564 493815097 66687066 415795394 123769538 344129994 976216884 829294653 845421956 473040961 334627120 39726386 714066420 251437757 489731757 328864562 341453319 6815887 737179985 52423491 143439642 340366498 603279176 253019017 928956725 827602976 194111557 559301914 114502944 453854989 623243532 324743662 561924899 589551677 476928759 738959163 354412065 607766385 718494844 413956870 200941271 127780577 527735434 404136358 111978604 403924713 501233681 602868472 248643462 335978606 879764289 773673543 292594141 988749389 545158775 104650919 276321830 774020755 73934884 259235659 399104834 295031149 471907142 270265238 66527127 872795258 121809632 375894069 192090442 48370410 709517706 623197481 59836414 154682995 100438393 14995345 547511393 168418448 952717362 613693972 503177045 242978220 962389310 291063414 523064659 46642546 564565993 695019902 104014678 692343149 627932254 788414031 472520581 35234162 431425185 129835712 696950173 690783874 285651841 890591802 474240816 715141436 723936460 901225973 416153141 345747597 450641648 338635436 763247998 602994260 327925148 384354612 369817943 104626474 486693585 631144827 464343785 524667998 68946860 223265003 557950010 392147071 715919601 185931639 993242977 439539679 358138706 582543497 949194516 261864213 138598200 31977436 807908204 883197444 978600370 811445042 119530503 258173453 881051626 651739777 79776460 869194194 79929993 554701800 350203120 525748844 315870580 594083750 564460941 234571672 94566704 234370071 653721321 763278993 432098440 158324954 930644378 132308094 221634419 632421530 747347285 13976117 269375763 233961816 508491578 905183964 36402755 75070594 338353777 390542355 914208603 53118711 940796430 814227325 337165461 70465418 738686609 222009768 474045961 735404960 376031840 333972259 28425707 814555319 144307026 349382320 791740526 711076962 446004109 754308951 801867375 674317306 189997615 286922725 355765415 837835433 605439809 21216379 302880460 127111622 983763127 681564224 801228667 998914099 402632269 943331463 1566293 914350399 175598270 603843740 95946310 650907632 574363699 269854551 208862685 843505558 707340691 116909829 940734366 235648915 390240717 960916635 496773096 983041466 16222611 412816968 591732488 201609012 10195960 549442173 391693010 570653535 684241462 111556520 807126838 372102008 949617294 194793369 703411407 279334832 517310861 402684449 307232349 131193886 999910659 856293321 174822424 533830113 237138937 644957832 430471255 706724213 878098223 385327499 530273580 333059379 111779004 493458762 12003688 526974402 574328308 379719007 896604541 480250594 703632649 525892795 770560587 771448917 436979665 74208714 528710621 931310457 222913879 365426751 585955952 928669497 648757677 749368094 952012193 3566522 788037421 793821856 852532164 553040986 73631215 221369460 40820562 246254463 215494426 783768901 708167974 306421195 940457267 723272132 479041729 912322011 179223148 30950770 827805263 412275416 18402024 321623384 773171871 687419025 500542754 833441568 847765920 588293358 627324838 912220251 817300104 919771613 889598187 81825314 4767861 102604213 689400682 678959843 707118434 122760562 944893599 121219619 158080862 686117302 2939152 101511252 507809178 78440090 439688018 499129090 992719207 110947320 677173788 823759055 146354778 546323253 4143452 796601264 462340923 520225902 473373449 512199843 577334420 624639144 594467935 892180964 355943254 408361262 192581304 406891234 997595539 401490714 658897785 196375765 441823782 982702453 437459106 178778903 705466627 985360598 617008470 344497581 160961408 381174136 637727805 569648937 772399355 732270486 287892258 471691925 757792149 260371486 910238016 88999826 240220748 657132983 538217695 939672056 35787912 918685685 308513796 957348666 649151069 793456103 382009728 113896350 554991629 931443895 834383231 489724825 194684159 605503083 411566119 866237006 197236914 453583774 197004995 570994537 685851349 783437034 46184707 610623064 802500008 830316950 372988475 282714250 561444954 468366587 439631224 346487665 247989676 910502415 266228004 67669993 150258416 604005013 892954158 227959633 660365738 984414272 333855034 735061454 526555864 439067364 776418794 380005708 923720964 356385254 8272735 847946922 652774818 197413070 936159796 828250476 419777351 829593113 895598665 303334652 830537724 193196096 497620097 301912171 233488960 714072576 907314689 403964483 234957478 544128632 89146140 57893652 428976143 230464037 471384050 224111662 88662915 156647548 644182238 387596050 38692857 92537226 988829279 382610613 554053704 751604479 234917985 904462200 433749906 967748885 210413813 468057277 536290702 802997869 759450511 841141152 483048109 813896953 40373544 945185985 615900893 705377438 88626108 502040977 97515173 610447323 111962538 359070952 975442186 402364751 129688052 941359716 414269737 56642767 229570544 971420413 298515170 284885552 339602715 608508371 198420741 836436303 54429553 796567026 465713485 510501450 484356502 781210827 57317129 934720611 231818361 137431856 733560852 414345830 557374811 254151021 331773061 873246664 450691089 200962579 99923391 114478148 847135907 527685633 871304589 942288404 668567664 316606842 957867161 369557258 540075119 265694795 834885041 59710800 239770746 645516004 645141540 707466146 813174217 258843383 547498706 595329560 883718307 589734513 735678111 801006364 604968344 935860244 706520012 296616960 182333107 762367420 285806683 149342538 222215664 70464300 496512078 426768295 642555888 685601235 258565738 646517059 376341222 153633200 729241069 484442423 310437377 105597708 579814589 171894870 940250934 620588149 836111930 875935747 124220566 269889942 410714480 147691017 579942065 507985879 65252637 140659949 486130413 923077657 448476060 935619612 167381588 750638389 822626731 449424137 137704887 132711019 616874958 560844901 144299182 33405466 812591855 458372207 56450547 233906799 238533125 685545926 831786645 307314698 158036893 417394856 537313682 23269197 829046676 637115603 509339472 625830007 231491608 919415903 414122750 825228444 406074319 419591885 450304910 968904389 329040170 816865361 487404208 90408633 623095851 14479361 661658718 370158756 347625095 99273159 302258185 776999437 278108269 699568854 758950340 868013137 612256537 918815868 832917783 409240778 976447955 615865141 349931707 520222323 175378230 967340705 50737194 305308677 783118890 106159566 233236679 942958514 485651111 387133829 62451968 898110799 120908542 401412443 920312149 173914468 997111701 398653271 53434448 154101485 727418296 950700886 622930971 490388977 320319660 240558650 71971269 474384221 613715583 160925024 260778735 718191058 783719972 963964304 895504748 841559499 293746252 716276520 23411907 44062762 463842886 573048238 747218933 488838912 920855212 402002500 779170491 543525962 707717214 906050444 460104964 687870670 805143541 217140987 197761830 455622116 784134764 996929416 930852693 797282957 715963719 129098571 456648525 830701127 941685554 250250319 878714952 704117190 621239719 361768674 35409195 345883381 366631964 551743988 886275722 816456026 806790733 960633926 992242040 316826748 440567989 801821984 505362763 667365171 216207709 695726600 14820386 347295688 282359055 248248883 554607166 914407522 824466893 428661179 109362957 566946508 317957721 846685314 164674922 115482810 309483182 947047370 344696719 97057795 335828089 245703514 291923119 275731439 626140501 678544929 397930724 867664297 119060412 438727560 415543186 553963665 599518903 899402981 389331101 499158489 938806377 756646971 742688822 778006878 754971305 295007515 39923496 524278903 295556105 734285520 236647606 472252660 778495652 709449063 902794346 427569185 592480678 451258431 65723179 804370523 152473479 955370836 617439451 156992974 824648840 122084364 307937768 203405209 556395327 291450826 810474642 628722813 703344073 562217339 818712529 519343165 942243811 262042477 506619203 894568985 104514523 883487921 281319066 106624564 129149708 451297512 961406417 538011421 754219807 986883579 776337979 58522133 823726158 181500424 899585896 331517794 406464289 173534814 675837387 726629944 604744860 103585613 355915758 150489791 275596802 81541157 112965281 283027669 420973598 825131239 533616379 737258699 342500677 238021149 122916923 426630034 103786275 544620181 641725994 673033680 445869305 8947039 767507264 135232460 853038208 335975128 417671971 101009426 296130691 218488793 978713431 269384898 75734764 570194496 51547628 121951491 55236386 895195337 961841295 860757462 284088551 308908494 707134921 90808609 94048840 927782440 737911368 539962031 880806317 355419076 269253339 5265451 5005708 97342381 181934126 183596940 209843876 408270960 673590313 510322658 715365353 508343502 994084383 291717283 588370265 690765585 883320623 404576891 53554716 903475006 679475847 995024503 637210613 672854916 707573409 186800411 221077481 773317694 497887476 380864298 97935711 835352458 657314290 968600726 326183091 784374263 984239180 329018062 491980958 274042507 817355426 729936749 959869449 373302330 354515585 589428391 365274187 691811409 290657117 340363175 117591574 96513041 133752898 945105753 89085002 123502788 321920066 427684047 379319823 702926256 535884423 167508577 360538222 824693453 427367631 396573887 904582271 198352506 87079100 30422498 663738560 797555505 625343928 305530079 455476429 454801716 560987086 499174719 355070224 262454082 467258584 191182138 574712107 832496491 869671034 171731892 558114746 59171312 633832042 867529104 528412856 972041568 177320244 101556399 139185110 709131966 134464007 387251108 806246184 870585520 919232383 591050775 643405830 107827102 722815472 861582068 52070631 925548463 886387048 439800852 492016817 310964192 551271727 653529159 192885555 880550294 939700234 696535517 391316230 812855943 64061419 915795497 612191174 573421130 46972340 726592287 958944549 962488188 219526678 628517568 538330170 348745224 441492262 147740366 673302132 69547151 439865074 438552787 263178756 830924631 781905559 507831595 159030017 709162448 965048851 384325025 189988437 878132646 917200801 689669859 235229222 68776679 503484635 926154174 180073517 36707687 461036598 426037495 710417217 489439983 122417733 798868742 232471191 904315584 443322006 653180250 980231374 958615958 831683461 886162969 651867749 41049046 848018097 981735282 213330121 23179208 186891837 311549648 351386634 821959772 104443837 42635288 897312778 716239259 887367507 270356671 329873842 567423611 13011938 947596544 514461400 714101654 24179804 972132696 618553794 949146105 579436746 192334997 190387233 255537298 43224420 142932056 387150087 887911642 974655804 819944111 312739808 442778216 854447466 78927868 270998577 471030375 6129246 442088689 233976478 297822761 989087515 532056324 155931372 106321636 4928635 978613378 422789405 911685447 600784968 692549430 438757957 821283388 793039413 911798451 651068553 701753493 694782710 117726666 356539706 283850497 268697958 701305077 861404589 395032951 346386277 683221039 698593277 120332287 175125921 580409972 46829260 908985708 451712575 769267288 150163251 270851040 9480761 937349605 798121617 338522741 616813368 976069127 876287796 48649191 950314712 869366884 999343894 283187116 913292918 407479218 595336305 188487091 167542701 14030936 122452888 193593147 27279162 776790364 366706177 155699683 569853232 143428512 418740580 881877094 829018779 787898551 850202062 238392610 95430774 185826938 4927157 551510352 619210341 588620972 89673790 961495363 501881946 287284503 23803468 784122896 577168007 31947892 503064190 128939600 879017824 615775420 780563566 47522301 155107001 541445481 765726049 222450829 821690212 75557616 100689982 355747468 29680588 932017599 93507307 154586569 359586481 928512880 959991589 426509828 519772929 111458575 755243081 786553321 333559239 734893361 797814805 691229567 219822597 17966004 552874250 325322550 100755497 176492374 708934502 835094698 507600668 806168524 967183570 212474505 319280606 475320842 328876486 656904143 537665856 386460562 503606388 819589921 451631466 591490492 774061572 747255223 278884572 413457465 658551160 918088173 705692498 293363908 140542402 712032035 479522293 168519818 65337717 908980143 565086239 84624623 441421128 394782859 54909426 4607257 466406498 462630055 535511587 789631309 35422250 843365792 135370674 716374717 246335173 435695450 166459078 527129777 595740496 889015085 21743672 764295834 824373490 399200203 794071539 51744829 928942916 839946346 641188811 660752186 690549215 987135510 37765495 378497818 795137011 981945945 57460927 279160410 900195045 413085494 914817117 707991526 540336378 205101617 372594423 245551681 737900351 778358479 463980685 915784530 405655860 350736612 573890727 618581756 904304218 458915969 240582500 285647057 784323658 450659093 189879231 582236802 679212012 605747865 848846753 556107309 500261795 976984885 637005036 216418813 455802137 244311924 242194818 452997540 255005396 494618301 87708186 453111353 779915029 316482065 663315360 239105313 617943877 317876887 2000797 441295229 465760487 223336059 734281190 578766853 846649127 727375428 730525948 955323021 233860785 79403185 735422445 774069484 459078229 477744622 964656626 245922934 241744011 114363826 532173181 967951844 36154238 705202683 575403588 575581076 96312666 725674511 201552107 404963651 613941612 528457604 888472281 823975461 889727670 365228717 234287088 90512185 991366995 987043209 688898722 577323188 850692908 300803509 97103868 324670221 525258006 165548971 499811161 415161107 51515121 308594217 234385916 578982366 695005935 250007560 412123454 692539373 717740413 98119601 985100758 521544146 372947370 770216059 678188383 285405490 345296562 51443749 308787666 853622028 564887590 72492075 953866005 324718837 13786279 208388348 988379544 167835485 8033404 926656462 452870475 402650367 844335693 47711517 333090618 122351994 988760792 267017167 673655355 595069889 923094897 61689283 624182777 715783567 241468729 209472210 561053591 474060248 634936440 506403571 96037849 643622577 650202666 250859256 182527312 940841033 998675122 190673477 877804701 633821229 753069660 946294864 567448106 978259556 260707383 861922890 201885619 679731638 682430891 261958762 738224635 469505387 477089419 787745430 542790284 651538948 700454951 153607726 601529514 541591973 575763441 455795582 842087643 591256841 633061242 147190881 423703544 562417382 3092505 237874244 496225869 899625077 338443258 268177980 713500390 695353615 11926770 860045602 223270801 686597631 850080909 403686550 63502542 273407026 34782850 465027073 413651879 865398041 125819185 742035855 72927660 578110296 21738588 684164047 84966868 841763446 110658570 302644146 521280515 413152896 486610944 351202963 619357066 160948586 787746042 132477635 202013141 577266484 998207033 649662017 910690249 776938612 497880067 885800255 524931415 468347988 657210788 821946198 324754662 199396505 159896469 921997139 301282052 992962879 816421829 902625196 631776386 819131649 881838418 986650325 126013730 509952545 184901008 163557914 586633067 429029020 359205980 895411798 418535776 528514420 885117633 704471356 107780374 218400698 327443636 198129461 381640861 7046599 651976906 842728454 567620413 779252090 354096921 579785511 608882879 388004805 606260046 685601046 170345316 747017514 191784636 812491905 147879915 710410160 694025232 649586213 496543726 626289847 334541854 531391773 467585332 504331221 213741898 828974681 349370815 445910166 717788983 77514593 585519820 382856014 218394905 485094840 854337249 169731703 841198007 135508842 262862000 539258449 731460156 991497980 336333130 720985328 546010132 332170169 741466900 299568120 227286371 806833952 789856555 198778722 221404561 441293858 285316539 203902125 795321336 898668352 413601028 927832037 785924891 663498304 908611670 286879450 39083433 151018521 135015367 320300818 781221050 787519206 228802876 680143202 391115381 817998185 556495071 16643421 199500024 443303296 516050319 989699018 636287938 663798095 510887459 907408363 581782082 556622519 2944770 640064161 215461764 673336613 378488327 122658801 499395334 104329257 534178064 251260612 616390504 176178369 128494145 813982343 692456930 830566493 491521758 479933120 432498760 973516794 601682884 680249505 448872399 392489115 246750383 627954993 187552804 930242095 893195661 661953256 109782587 507763753 791877625 864975227 746200982 922974635 48813735 986207309 615561598 442513364 131841656 743303634 556695302 982306409 397917554 306932006 371590609 80533559 812801270 698126971 37156260 295220568 934291515 135262637 271865611 987693748 563919052 917515880 233093718 55944934 887083200 616233537 341798846 26214650 202389886 349309348 368815040 298567318 791206803 373714184 716777493 608158544 577980887 462217034 33272316 716446017 243062842 736555060 294607639 322040262 306822325 243734152 830865794 97506725 236569200 949663599 217789630 766865421 197202254 168288573 609229519 226102631 833975785 183496232 249936686 115726094 586910258 602033562 19971817 764952849 738783220 777445056 563528687 268420715 867688256 353983649 226954154 246709207 156279785 203492546 55154206 974654772 911467135 688039101 857915816 765964965 239488126 537821504 248835972 531663866 842561362 994225719 963506969 319306912 473628402 365965902 939189007 828311180 604035745 596385158 277060639 153710380 738263240 954586242 797925705 658181808 283454870 112962945 356706689 944855998 354921608 408459523 566292521 68249714 51713111 751823355 67400938 774099689 729181948 682603606 192475940 286782212 586402214 279724408 121739929 895820451 865418554 542155667 377809094 523207539 388800010 486841423 615676632 4554709 696736360 391084203 441330728 45455410 588578303 912800016 452127708 49170744 307748384 529605039 501326265 13615645 524045873 717372626 844125860 197521353 798478573 555357438 403932649 657572339 175314983 386965291 100033920 602458888 8746580 712114168 916311287 77765364 707867901 29787418 624363811 241785694 44849410 814134390 309895075 185553196 636244355 213891131 543732769 409507456 120607266 985564792 815046472 210561459 282887438 66381359 679030752 484963868 102318686 885762596 783708861 592444116 259166984 594653919 106178363 553134465 730865781 352114204 885547136 24437527 548482327 976875935 217110344 56945619 689202902 68605635 702837734 889849126 478954992 305746848 22808949 87141668 942834883 471941918 968947754 260610967 611995830 335897072 851914063 630849629 309462006 565803317 136953145 955311195 818039091 958650475 789451100 4483571 410671678 793724093 162439516 122105699 439306581 831854684 395442014 464170729 2915173 943563769 163569682 39295845 831747119 645597125 714052209 212367794 626218279 435442800 36356375 192698520 200274819 403542974 622389268 930376207 204857246 602792377 695116886 154911727 781391980 316822225 60295969 81194674 873826902 154638255 843414268 698722916 95702131 915958128 550440686 743180501 690114373 79364789 235714224 82479252 756068408 933951583 562291478 969941619 420195062 308078144 338408253 464610732 127950593 156620790 534004606 849064989 49593004 26279647 508986524 451474448 108643923 474426511 246227029 312517923 311022985 683598384 787526295 840002820 865104045 549215634 347059131 387890462 75871605 666620130 518714890 967828705 9518355 532721147 612249770 908789035 260764973 700880616 443361839 626975583 400908682 400393124 746690205 326850594 741324471 707055960 60401171 794848729 567322704 630271571 569669100 818920811 920443747 167571261 758931366 517600397 47822009 867760112 581256646 602195946 40907531 235823328 510662339 649646291 882658996 890922524 184096579 587457729 858080863 489554327 647880633 794404613 537499853 62457377 797654927 351798273 584485573 567165816 858437787 642947564 631411843 33161040 656309499 490112310 654658413 907279485 362230479 383997753 778134817 657079748 421005890 610398100 208644332 628261051 833962605 618303201 767979453 607710476 776154456 782819808 566025456 734657500 768327183 665645489 541006585 802173044 487770008 913564772 197349695 188647657 226976089 275013597 383596357 476388655 114832784 285760549 642836153 8022186 403017198 164112736 467369047 170949100 895528679 674632463 666892205 767883902 198654171 839977781 542803713 808314673 488398403 669118497 885546028 704430281 682833980 267709848 266418118 917710631 644949721 955471096 961385764 405618086 628185051 338077472 43657748 154241129 360365091 141368052 735449799 746808794 104514787 622714546 144631197 685624091 502629575 127281045 135162032 454682458 977890187 141750266 303959538 871142141 586096321 866136086 996063909 635817940 270287820 950238806 445036344 577872405 733171201 836820171 177540827 967525745 944214664 125142560 369616926 365371090 733727839 390497963 286870706 103716621 174394095 187741945 73831107 317436944 426789239 536388212 431100973 695132509 91559531 253226797 327983870 922235025 854614461 740580750 491877732 465449368 225985408 676444915 894924311 478447126 6507602 492738046 415790588 392720417 21557077 546609402 825922680 143644604 655383196 394186101 117198489 132226320 928072338 982876960 854119301 908750090 907507879 580090846 575962835 437470674 845452778 135465126 267820113 58126876 789477838 232264093 627708316 235687786 525908964 818999314 441698507 302552843 112499764 228589554 678494651 936738995 794571373 97561032 254573358 199888153 25245457 783368859 679120170 334114581 145479393 986626282 711085956 535693474 323748013 25170761 395665176 409824728 218951074 463150809 783118903 455702859 610448661 706502190 722547882 516560541 134792462 208405708 344471687 207623473 983023071 554386703 649227759 612316594 824677414 508977676 247545754 720999019 222812500 899487318 416916903 105910318 755432708 535038052 295895417 864803276 643145112 980727294 477027851 278886849 534522637 234052304 519727405 262442319 128197992 126266987 481206061 683688141 765533860 592821649 98051909 380994053 162758631 294891777 535055066 789189549 174530308 997247236 238214165 976140886 997867535 196160978 289687811 644817138 461824126 412511848 735801806 871868510 42873346 715929808 874778153 66724636 957711738 13192764 60996708 374286824 182704482 829712860 668429169 967975002 205456640 245988060 549389200 291274516 836114041 355344689 56525578 90322583 825060195 993214336 447817136 20501936 65778599 219301147 714801869 912834171 362249656 600895124 578394734 456341593 749942053 943664815 462672799 914437298 712841296 484596057 685150668 945190422 598688795 652827786 47079732 633369336 333220583 521112139 339670636 394510435 572324083 881577771 950621968 659679755 606471468 177122925 564435652 441853467 911928055 787286623 386469159 201837353 238096211 116968228 264450891 253509050 254495282 12693462 884924224 421029142 160996618 653961896 369829621 800086626 116619893 729930359 117151337 424489353 961613591 882490755 718689435 47503317 554871729 102127225 15659909 580920853 706431981 384002845 101718443 340509896 841554266 653644851 909992747 289650697 648076037 307614795 372864075 550421631 783714916 589720038 875819993 587775235 131981515 975789648 429076539 373745732 479024848 325997834 894873120 477036956 604299551 106156370 168583592 566233688 199459886 544150357 667466332 241565693 476089273 998885355 171185128 615923084 440281441 906756743 835245863 920041887 710898111 513900986 688082289 393781662 936036177 255182468 819945048 94556955 593534470 785074102 632951962 314238641 900903337 505447058 716507630 975317180 978903481 53828935 858436798 150237185 407459867 488254730 936535644 80052781 231608496 378413845 814657803 272289412 922856061 573170737 374940577 84160695 281656910 528503643 656372144 248162210 290313785 124452251 651701236 883084818 146979665 612549064 826719089 531020011 793872371 739072329 121009146 312462113 854322391 773258506 113119586 339087039 443476551 920779241 651880456 205751020 571999891 29519174 631270891 29673092 224884755 861226904 733318611 857774989 182539455 872233566 168041692 428448066 149258208 528650318 204232874 95567691 378922401 673796589 321331540 450382767 26418044 205005443 663926428 882595174 197512875 999748427 143052994 70322940 865821220 228676532 754202585 130301635 999241002 831544432 523476483 527783834 387273938 577849942 461430936 342567151 390687787 376554876 95662958 225761345 278717880 549691452 530800304 558776687 456522863 131288196 258069847 698005426 876827977 348159477 321159978 506905324 741838973 540586927 503653669 33514427 947515382 961967083 312489070 450377272 252405347 871634855 586466047 668121830 108738279 890353323 305777036 260175479 862480679 494433449 636426088 331148237 969318264 288035012 444899594 681740764 764133012 615130296 904250336 346373369 95730430 840322612 909191473 818714222 350530869 411741658 857121259 778052649 592714954 393370469 119942948 70870931 779792386 647988582 317007993 875029242 924553014 878470026 879671653 161289606 909792086 248238967 392168498 918300065 788841068 654855974 244810388 8945404 553649597 395663255 257770138 290092754 251555393 930314669 346213594 351375860 230406371 461687006 782897523 455810576 916204599 194414021 620227310 1273661 424527159 939600947 627300010 298453345 969526705 29306978 590123645 356181763 398869416 686474996 582436123 487276549 699979948 388859910 224770545 242692689 417863051 59742129 297907516 444372345 949968089 985835805 890475839 322600174 500961169 39578500 398660762 534260820 440648452 543786590 398666799 372528884 45826213 75004614 453547755 434576822 96868777 380043316 957324171 597607633 188853419 975242344 123167564 236194880 445137365 344527315 466928125 694261002 689242863 184733414 292426766 593043298 130863209 219901602 272807951 451865520 505208134 838673778 963164128 788844543 51052193 457552946 203492127 936737387 940955272 250565894 606508673 946586453 173816842 619362959 462875353 603706111 954420895 507176558 423361753 629677678 323604594 985625016 198879286 126579192 673863970 354477714 721908107 624151520 368750392 958264440 555283852 175861036 612481488 609822972 171134545 559715649 158138168 166646453 770510652 36780395 743058979 901982903 287200943 318997304 240698326 878506897 732483601 661136821 442755034 379856482 808209376 367038904 179161752 923233300 116312570 805581632 522221157 608414403 827103133 660435759 802141186 568622229 336744536 336092556 755390224 636083087 342819233 642346558 652958312 635890677 118482465 902945895 851123822 865255031 622385493 545540548 593859842 181282 493747849 201850664 143197879 106754143 766229202 79008337 280770361 167898923 889196391 467796432 223299037 525736635 967723070 416987078 677702261 767126681 773244084 917720853 58355173 554554858 301439772 232592053 311948113 784524259 10002279 889559585 744876258 136287914 609809748 17959939 937109825 817907640 211293568 783819197 237900686 70883832 934808501 152808304 639350917 7493063 974065979 587822372 956334689 475793721 228777270 929521444 723507624 40975448 311864692 6964873 741712116 843542447 889062698 963935625 182627993 766683232 496485889 843361005 367756991 571427937 552904285 803468087 951659893 248383892 235908502 896439025 779945765 833469458 938833173 418848719 860568729 83047144 751390527 248546678 609047938 9056672 326925581 880746713 829798108 1555847 285871723 151343372 298374730 185580587 850416763 19352924 184713418 36223502 683758206 358964579 166006306 783279565 401382631 118507073 203284466 347572055 20369119 163676410 261286686 515635483 33491503 63986627 278891284 375725997 670812498 128176294 632212655 109015383 3144603 906107147 348678398 778091042 474385005 899188456 686313051 357842770 745133040 908192149 505066707 268404527 483488546 560755114 861739246 395749068 58221943 463036957 102266575 333824236 816195590 692451226 284353585 281757285 493125462 305315096 542047898 569421494 669405969 67550689 467348872 396370600 549674121 491114501 521084168 188900963 163208846 626238171 419302794 997099167 212666844 488444999 417458908 827765580 432886025 979622951 791347357 138106097 360108248 403964645 89624786 932589329 669395212 927989575 155844863 158571996 475794552 13831277 704388868 184735593 18068524 947197811 69924558 801900390 684855965 602621620 461571248 953908382 324930250 308847079 151627323 337095535 407288776 249759069 713929289 722953885 931724923 405832672 844656446 970733232 469731724 413595728 539036699 671995048 464848917 899133030 760239233 83629553 568643551 146335779 692267158 283506646 611538663 741751836 279551297 618291438 210215818 965887317 84933153 362190938 382590422 801565314 454091953 413099578 864466182 792377504 566503997 329667972 960468701 944451224 53529379 2827118 407666944 68101506 317032109 473592708 623209805 877516002 672704456 35783996 642049339 514139283 723521394 96186629 988707463 897256892 562918671 522489420 199576011 599220717 156292965 368855155 801783721 872311140 124675693 300728511 746732568 813842518 156668562 352169640 601764854 290494700 489081700 509641556 883000146 12292809 922074605 803216422 37727197 614988682 574048353 790551173 958511978 900077891 648318002 170602906 123956478 781663024 379913900 602121436 199019741 301414038 779117953 630073021 86858696 266251031 463374970 684880975 282256743 103685195 375012983 702850814 962261371 580559470 211079917 170572773 213269007 940543263 798701066 282745184 633278627 232214374 875575055 961957808 895789669 848140814 38466417 201964088 746676129 702124237 180158039 34636458 955518348 661341361 490974908 514561487 22123777 25741923 66053150 543921035 260386257 167075641 544332382 850361978 633131214 670955436 942278931 917416932 303108726 654502447 967950597 310627613 892308234 926752935 129155647 345319613 467396766 784408449 1683822 682024835 381762351 373680323 838322902 182962512 211823312 76928925 984400387 108779780 509888585 828602046 865414358 263355074 896732696 822840975 295366729 161047678 16777086 584763258 703624873 519334430 148133767 636617129 705774414 930966043 50443548 578949666 946793006 776865301 67745801 442612106 647631930 410258839 371920987 489466344 362853623 600108923 652901170 401004077 602463980 976728037 756271457 521843845 318376031 697995879 650612584 730799737 757115983 273175431 349951494 283006248 233685799 745120783 267330000 102844476 815905569 780488587 417122685 334023236 653443930 265496734 144718318 2125207 826066792 560191613 264904200 25412211 672312662 477326089 494825357 700175656 706571847 474194766 457799537 559138116 516398238 855639454 52186722 175282507 23378042 895222413 949216001 612195237 824514774 734002431 260450156 686045656 583353614 34373335 993789885 981317835 946620155 28261320 395990365 444016492 90863042 384531256 159079152 477902050 311494428 928518682 505073838 856386613 103860141 265901788 576267144 828560337 744715238 168742731 194358244 195397794 722685821 713574534 619241018 727895097 362115470 146667212 599080382 185015567 730145404 899028795 721667309 924347875 655570696 906486777 275633574 765536298 674040617 290579731 760601517 886922710 698266912 203706087 919444716 1408660 390605938 862501750 583827395 487093285 113625266 442642372 864040977 431290025 366184327 888133007 280164360 289275858 141584561 506677396 697267386 37951403 198331761 328152963 791420019 260631325 314627986 449319354 806160591 91218516 538561516 70577798 109847014 121016704 89283095 534154677 506376021 343083700 780086982 352190412 220231470 892589925 259139016 927281305 578291651 268242014 735774766 895520515 753336543 979439491 370283917 275200743 464012211 599095853 124801222 136164301 784892711 86569640 684103837 888200329 840293967 338206993 469858381 4108825 912091504 37906964 790053844 471460791 80066859 388500236 501731067 840847618 865661715 908675336 56557226 698430144 68681035 741563415 866566069 26581729 429258168 961830162 363732766 29331585 738470185 201935552 684971823 352465391 292837351 309576261 843416906 422283738 221606558 321384983 166127645 143300151 716842422 738815144 787211550 491739936 603110281 311026260 859642485 465449115 610200509 929215750 60897150 816764193 40758994 620786668 126205166 5148659 221099390 54825946 555059086 648606664 507090733 20606882 188984564 993526327 232670332 759537085 824045307 924548074 761785068 240932876 621955894 274875291 130296383 126421218 861123329 253704389 633250546 458146702 648664699 108946293 416331274 20187057 408509965 795800487 112394539 675113290 462908574 4884249 264098848 177849779 195496582 655372252 874856758 916420689 262556671 731459426 844450092 342901911 652685589 631124342 701684403 753270144 536345954 857772404 830912698 525611337 739463828 885932860 875541447 476471212 42095180 765251075 333348484 690317774 404045047 367920314 983042712 411930285 898702048 750447942 228872536 363084987 698016522 339114111 271985070 962286330 763902145 382085333 143227238 456349569 261958394 523087358 579167748 541379103 360498664 770867544 281519526 240280278 896374590 591288229 141514138 511838058 312636012 275515364 606681160 167767367 672820455 724402343 94125863 442900648 101455265 578060402 954284615 887848187 82992974 671225421 262686845 155031980 208648472 68583122 462822032 798763325 798214588 971023965 611078623 32148772 617150551 90778512 984135282 916549815 553808732 233751600 164971829 955981369 590122500 350363246 905958873 106447948 948790300 725390524 537605085 421806847 25978125 462142025 464771991 284152156 329438098 285602536 418551686 482183237 433801462 540050895 242346730 155961494 729861850 805780130 381942276 156991191 985958837 389237869 982538735 288835004 538455794 919377795 718806086 855796115 258057233 585412930 387740254 43036457 987206005 397711939 307174849 777778860 875203324 233903781 904583189 991606524 928466444 898465075 946338222 659021457 128614348 937949589 274682387 241586139 983812074 738661803 822962944 103714827 508965361 227661052 632776273 188342256 931208110 772909601 901894798 173709052 491100164 887480313 703923163 134635489 623665796 720642557 873588068 116797203 220918444 130782430 144219671 709090564 907337233 450888041 917084207 562186088 417470195 949055511 818801305 993965782 144630231 927170909 481158992 72352705 121649263 643717408 356571448 910137723 380564074 992830467 657830778 121655881 169692554 835691690 898774650 349543303 969964062 945423930 102903853 6076020 395637468 824676528 890778740 594863601 764201922 311168919 949597090 182175490 237136440 148129324 402644155 52639001 24748684 147768010 256884621 138052095 133290516 770828247 638076534 430109534 544474024 197506842 34267420 260012155 906255032 364504070 134812181 847929506 998938010 814570209 129434529 639627851 784341780 436118031 493592907 593152684 316684219 427093057 73671029 861875961 862503338 593244278 225881521 592058985 173771535 963302758 718998 301470996 878015287 42674545 658336260 891345141 90284158 829087705 635248978 623307727 849799878 648866149 571011441 877675400 18805436 866992971 919208529 904864180 644066862 170733176 892446309 508821119 891240219 595714449 159012023 185398783 116162447 690729405 391142972 961710845 68360104 422049778 431197790 17975289 923673435 952576742 209625948 726021460 335911771 449822738 16719284 891802353 977438155 96330180 390607135 904096425 338358070 153951410 90043470 905606363 243538262 269377896 444902854 743825549 894069809 815014760 23728715 746805162 825866776 705103949 747718141 441602543 945341102 574712621 33894391 316633045 616764911 518547899 638378286 284534052 371582576 492900597 492611899 340130101 794423980 74998941 935914701 646654286 350507717 364005402 686956150 893343316 497868992 516370077 31157770 772115632 571569899 481182838 368298974 506380849 922459860 947431678 533158194 105998992 78384038 281373503 933223023 328734654 889316500 671877994 757014883 340575027 551251828 125437620 915647008 935111100 944786311 137138146 258480177 942625077 810510938 493136730 419795296 233309817 733792437 406984652 750041526 157150336 461552642 903867665 709422539 438140530 271847930 546202975 424465322 808321405 786802714 776854926 891304765 887539332 535958538 513975540 144718538 177576899 9270491 209412145 398424408 157827909 980439688 966549904 24719209 565644233 757800026 800811419 606427634 424353607 581313149 85770137 472033337 701815852 231784040 753053893 479152267 531984390 857338406 245726996 944134071 100852635 424074726 479254016 347368113 809531899 748102323 243232481 526748202 767830918 165405941 386132258 858470861 372657896 798082561 38337410 609198186 400601986 487717632 719126835 87412337 962752940 839870829 471171908 170500546 482506031 348781828 749687225 609398601 789779603 234934443 766448531 787301995 259640728 575194675 381159682 701239467 959604174 102335552 98686564 850858090 202698123 207707851 74792422 30526049 551818007 441188759 321194163 696751382 790230712 367821176 177583053 522410493 315924172 907567401 498544073 292968734 520039876 837852467 556345020 255596143 199578915 65215324 283709348 563222234 504172568 304750272 652844700 772167774 837346762 1986364 998735492 127819467 980172959 280705918 747164592 569241432 717481714 18175975 292447402 720399831 925889544 838469081 630487520 951554722 989872884 757248902 16366987 685360309 314265970 196121245 716565003 835551071 460189402 580346463 326106114 934504152 696998501 258133614 498512215 904522765 440172658 271478971 633277724 355339383 851224257 545884660 757360833 127748237 974462183 309928103 908933171 154488750 778372400 25699525 864410595 320764993 593065154 519442491 6549977 477183611 770383041 421600524 603310465 735941216 874164467 287025474 320458707 213592768 207336175 448513249 778987990 190372535 387064594 607266217 490260955 199191731 350966193 289186843 106493711 657255127 277441834 396269676 597208119 975747070 46185053 278693539 632082827 550587151 546279027 580352552 638119200 416910013 311442723 246059128 292614468 886783006 367855328 860652899 398130372 831246671 339667012 402669647 399785048 729473198 877776189 14771990 819250379 861892493 19742943 810489923 135397980 352827285 157235838 320566504 258602164 272571923 6388616 945995879 948854228 643853086 806084526 663322497 144049382 754174153 815301762 774176424 945362663 277162927 979237938 855388220 373875376 345984397 210661282 672117813 324031252 784551447 524948610 12350865 134220244 505677856 369445865 934097723 563292000 698411031 11934263 431718791 279327142 811650685 322712907 947694746 539446381 826605763 711656825 496268641 744637871 150512075 28715456 860918585 354538147 300109896 783152477 960719995 860358904 343474124 324614771 405606689 500975532 169643115 804574556 645924478 593318603 949429090 491007426 407828243 668138429 568260247 691959183 779587320 64668822 683555896 578661410 366323534 556146158 211313546 199194927 254788144 140563038 804207729 197470228 735342928 446426764 415916181 162320350 669033950 76313642 405585449 881743306 539682777 64218604 680915002 509173541 498343473 93895284 963925172 320125028 556365553 548613105 783601073 657282575 412255459 473213737 754679550 926157881 914574825 106340545 253270415 299233706 67030841 681166301 902324612 978566679 839076567 237884541 546203782 405115238 706851740 781251264 402975195 439458868 553589591 593455009 25891139 846286955 525816445 469255903 14427216 730764771 782469228 472521354 768835799 803818737 951445601 323254359 369623546 396812173 890325220 974248771 321375412 434118677 931209161 655395293 665177711 19601882 232320912 583632851 693804926 560139067 559002123 815292475 756869125 974791334 699485681 101737067 151922210 103102083 81247734 419222782 603454674 398820253 421061578 982765804 296737966 905570079 689099813 726685785 805667456 406967432 952223442 565551206 49477005 867363789 438555858 392387163 237078556 480717334 642927683 244697190 913276260 636661872 723582748 100376417 394536017 589877158 652260184 781007414 96506162 774761340 816078053 327501092 318188849 912499991 718691916 169990484 894492900 190208823 680215257 635250290 1686861 176896606 422493444 621382325 842503777 447677370 466168338 12309156 783040200 188508730 469536194 943939399 329316083 686128813 665162094 114797931 753379237 380784512 105461381 893572592 780036781 290431548 821629688 51947535 301673600 430064634 3846013 364465373 840916159 641651792 337652081 102270754 157388769 625716589 659954713 121005106 465019891 357119320 69635419 325678042 818505589 780157828 698266761 70693235 157494062 414596046 218555849 27824284 326036396 89243527 500131228 964375198 634991475 673462596 567725455 21571853 330870063 157456672 824702322 919475768 544155089 145558771 392669278 958513455 304532980 327051379 667314040 98070815 670617815 896838389 771219326 134038590 173883105 526013973 18016356 26893029 723388353 503551741 453463037 827134953 535606909 509400571 266408520 75593298 198110743 437909385 652769652 588258220 403070274 735275747 205795219 861986441 280339 149255331 492955237 879170242 574545021 138861663 901290902 199479906 331876064 552175281 241837578 575462866 105816116 998503259 927896880 101163028 742131092 458750798 338314341 392284184 469605064 147849534 185522234 490313089 575736241 764965311 257959154 5560288 956945625 246758008 822639210 502979100 911672699 782351703 542834789 23158514 531987825 433954453 513374683 980550751 109657061 636995077 69784542 807166934 650911381 355952635 69008389 530024380 316687091 453928664 952706835 178669055 995797985 70158615 381132170 269084763 487724212 536590105 998937937 754351425 470963985 426063947 878763787 691265284 513775368 203160491 685637199 441348433 471540974 528972463 130303209 504603073 954389762 44022418 335095376 96264040 281437817 600732067 602442785 952202476 528636060 101772664 134170605 667767346 612751163 697420914 144417608 340393133 678439809 728496413 915701302 28210953 366565134 529880184 579535544 315713627 287853286 76494006 996957087 168097697 232353342 752646902 889050690 904148143 702218196 504735491 642968891 286784604 802583054 101900031 768004627 119925094 923805672 281602026 594102754 776903289 3121740 907541497 533580357 885731523 10491042 930732338 92564194 431256344 452591836 10148657 464413862 234592512 531194704 997195713 351209959 313540985 581362581 653305943 406561291 547801125 262138152 674239449 972365778 761321842 169816451 589835407 659192158 745337322 43249939 993140475 833623722 120497206 421106576 259105010 252104679 363732592 166585099 516559668 932586997 448261329 694111781 82938314 12086713 944904240 709094366 101335750 597899854 352438193 852449069 376835932 77568097 657705153 883629304 978248909 474103410 56589175 545955321 98697395 823054229 321924763 253409615 679165052 960566278 466722436 223591550 247445083 131391585 5652895 398075575 493513776 401089958 25633254 802219952 293295797 320706394 796465617 92639958 381029332 662023055 611764044 518947590 284215590 462999681 612998714 482655090 449110633 696878712 480533572 283294543 954961309 640464864 733006812 156429350 775713957 918152123 463588968 257049306 479630314 116443213 907428545 611539350 955250877 378867209 240048813 83275230 492090130 642871827 357794618 88287922 77808477 315093095 31590748 767210654 710170291 523000379 797970194 350833966 852668397 919897860 804255356 336872863 93797173 909856520 942075588 518178284 213936467 438686182 689342857 779689582 473169884 722656242 536318317 132439074 90070353 395383241 968313483 453296259 528870989 578065084 487415398 997156842 196586291 523576934 600464929 965177395 660281183 721064867 395737882 877844158 765222282 212722480 497424200 74360107 365551240 675283565 557868689 795156567 934792185 176886962 358567563 833102160 981903379 887874197 986557085 767423837 540153801 574724482 812456607 48316056 151031672 753918974 744732882 333429424 80993478 910430742 181658086 644814324 701466050 96282192 661688715 589463483 949146565 400943986 532077221 915800808 936187650 185639429 311571697 166087486 58711271 113946674 519660956 83476728 757632413 874101597 471909542 789782234 649686373 646478099 388658002 423967541 757070939 291341473 208604524 500541810 234247153 86939692 2181206 154228386 427322227 181138459 772197390 548695613 688350800 237697062 729806739 785027550 275390963 542399384 303637222 926376990 391985626 803487113 374489417 92694671 536455897 766250582 653687567 893466447 827887901 436133773 446112642 558627656 455266712 933518320 702428372 10290792 222525034 259068840 580514547 987011624 949063689 976211445 115759871 192062554 288614307 36814755 996287067 315396148 435693308 80728315 329366864 4407317 720286591 725269601 731230668 79130999 364413864 752600299 638212001 901251370 608994784 556907225 386742808 615563940 565606144 730721565 809230907 316113424 896476278 630324706 404481138 203685822 713669221 653066792 313940571 77850373 821191703 971362818 231639293 75057346 434810195 117983067 947825423 649321669 895182082 953269892 347793699 929707441 636944600 641865451 239780390 460277233 592646215 447683521 593149036 489385217 910741044 224737970 836481033 706432636 48792930 475714797 762864352 703365089 418077756 355811741 102737480 25878502 321885255 478589920 604507746 125349687 902455896 40565660 822313882 280423887 4489942 418342479 247206416 19791305 837910824 645757870 323854065 407287773 905619515 789920416 408205607 428165173 956982568 649617805 561090019 15936928 276130111 177060737 980539724 222355405 188088336 286205234 229345452 130125906 361985557 198897853 662816114 229190364 163953688 300474130 607468404 599012303 687201756 194693903 568004674 758653597 239140986 696383890 948507743 207945205 551118581 419610917 527996589 340913879 686405393 885705021 493472895 560426840 402872948 121069182 344780081 197409543 375782238 551401312 887448516 748318513 685110632 449515403 42864912 52688326 395994606 78573275 376647298 688062810 789196521 246773416 915630651 557178370 253573329 254544947 238190154 607939303 39596845 858156584 537778169 821676065 632675525 443188357 669921240 636865652 82011919 536316247 131570507 909645322 340826068 433997670 215042004 117058791 206687303 847685478 832886857 430098973 781121285 251092426 588391013 736436563 460126710 734552245 623874426 194629997 37629470 540264672 375314257 59709679 223721877 503192173 943141044 402396835 366520692 989248175 921615563 503636968 911584597 819280379 869368040 88243582 323826143 61508308 374656806 121752113 789004666 13041106 477178675 404822871 6483675 129336936 176455949 331271016 663049637 881483200 811050825 814203795 546951847 142561989 798733222 630485827 78982846 820418720 577519832 666028183 556096945 495341541 549367399 866600744 375292385 680425977 773293208 406207316 529352535 37802987 275205077 548264584 564148504 51675417 797431509 390164442 898548384 585043781 700568357 561878365 709371425 744748247 971803117 440689787 140752131 832674005 822047256 314825370 274960312 826754349 372342958 297725746 420477210 903718550 457483542 69823914 276512331 944866589 709838314 233304912 879036205 275655973 467533300 75447037 197138455 521335602 5708876 598307362 988035823 901325972 841711891 421796566 696497384 561335516 597214953 194375181 998756427 48494714 664425605 753274221 421569540 183180425 562067184 651427643 856133582 676316800 52195824 227338660 573028715 317101823 249643902 541735831 38651067 942049633 948693750 419548429 111547587 97626579 938384666 760685521 843769108 92423547 357771436 366468820 596163181 706271786 545699766 445735221 418284703 798230119 189931350 321469532 894514739 830839123 826329582 649834060 360205358 483410730 845329754 756036102 566027478 306550997 831372741 191276147 902753220 260175428 104712801 29122046 172175595 294125652 158272638 641417756 683623296 129121159 202779902 935470207 853410380 747340501 105780149 166368461 894730089 942120849 251703816 997547466 649759912 728852886 891473717 889399511 362634660 85784620 158136564 850645193 177697874 935750622 264530170 976747517 585788243 916819749 182059535 211891627 15836635 909906814 170503382 650466603 527788101 277742690 872913797 258372521 93175676 629995914 608715245 197767339 155999906 21673918 851737940 112154045 21011813 924653577 63676178 562486428 764316366 282538873 697266478 750818021 532954267 94693749 192747555 247440450 416346855 510920562 807030260 481620073 633503505 677809485 704240037 360781874 146701273 399272928 625221046 665291722 489707814 994779005 55798464 691707797 482929349 252583749 101529131 304441653 150139069 36444912 471984223 260102039 504119531 737161828 571289104 967510596 406717435 908808397 963580023 321392909 971489870 341450042 747580742 966357068 164537529 926524227 758363613 458287808 459607280 807372119 521256706 126664978 161359683 724211074 375490162 390424330 449054047 497130191 290073200 880843343 724242601 503723386 128988381 25200126 28912969 347228026 481677008 859894187 481196299 991927755 820137226 601708624 691989160 251465113 29266436 119844786 742465392 175481 903003401 675362601 81612906 433936851 915664275 731715190 494372132 756802812 272302812 143138017 293812906 913294151 334102202 259706389 96655242 542768948 623363836 841243154 423196742 291174814 324174788 159724816 957715632 172061637 274098070 665462334 331698751 18088438 781875119 317391555 403189165 96175278 51425563 491197427 125915734 601383467 407032803 403761089 451042168 365363489 965137841 870515793 397710815 103114787 195858508 222073061 744928693 463436981 160225292 55224627 983697277 177320155 5450280 572682090 821623220 864745176 205266957 970847282 947542986 882896567 144915248 421992063 727839446 270899005 605089539 113020579 35465067 734415447 357931644 312087221 44990951 580573589 812086001 982650272 214741445 767526013 59724428 19650668 960979639 446552116 847975922 792085664 895587361 292363142 629522932 508856406 175130159 825109768 302962684 966500106 182822265 426884688 608955595 206070588 39234666 73824497 809464082 672349410 677629622 832485094 432155714 246065118 576117649 990116593 2265811 919353681 967726273 284781891 548123115 608012257 886676103 57505388 153440699 35611525 783315873 675276757 115640783 108252611 545886954 957342459 779520635 764565722 551770919 370595434 824878128 913081271 645749224 51778253 293581725 752098405 835604764 921029744 315366875 712747714 143905899 89416546 630646189 581098551 808609819 376940521 971526038 137058907 980161281 895329764 720121676 145035126 640608819 469905565 252944174 248836491 780161609 60629286 188744587 641613113 234902753 444168019 130822749 650625705 11030134 25120802 360779999 435939427 493304384 584654346 537140750 373113984 583455477 719224060 39838374 701526845 748893659 492273654 247822425 604615878 291527478 962808654 130334380 8803054 83812374 355322094 452538426 720656601 122253339 137363223 662539815 188384210 884185646 620041506 860390998 173762002 72821891 367569845 228819928 944457543 160360036 54843672 730884706 663379312 380186895 146562167 183904274 395687846 590579241 375972849 556139518 343243464 255627465 866795377 476350347 477377070 349719637 54634714 209147391 256092391 688733639 144597473 433550193 210928124 923988076 80345565 977421877 453368910 65533574 517951828 357632328 772469864 101883387 408289913 261223472 862539001 166215847 694316647 269502203 223105648 905605462 676892511 427329739 187285743 144853007 555992598 827871050 889784254 322183645 666212062 283877273 125743003 752893394 408626207 352864074 930484765 28272924 642986846 920185658 534564613 895595830 471793596 806233217 933333013 59079190 295644830 571944896 735311412 405119640 376110713 584109131 990785003 293051728 401038449 227997544 82532897 623302472 159019152 251544124 173397983 359988592 876374988 384271914 594054154 1834445 670793076 737263828 715470059 645447447 31698885 614705927 229601835 778463417 894256552 877903139 490441447 129155838 122983094 808232717 253909681 191307773 655564611 812262246 833853497 112238400 74103693 673143281 255404897 386132178 489805787 311640820 278595210 628557164 976833192 38060153 751075725 295420756 662115012 292051795 404857489 362881862 674121538 178031564 626354461 422784914 134380062 120951023 791280707 246359598 931117052 560090690 574440127 290177021 932535431 825049815 903668751 503597569 776437361 798728582 810312424 687645182 834603527 156949906 944131632 737377569 879280594 927026276 236481576 910555953 172125922 363440622 966957059 938104987 475247426 600305271 347062809 40241478 569163654 341393361 259101862 782327126 710356558 301461909 226063931 323029959 462594256 56578328 489263445 312823633 622501536 22375535 521582444 793321330 277960242 883211109 665489219 769013917 490997282 866336089 339399771 676546935 202435367 855519629 997664693 392759412 16118185 780211904 337492216 106010521 117652540 579693199 433147397 841895937 660925490 195198859 63585045 430452384 748509128 561435009 833824937 710886241 994249500 355043700 239286912 99627550 481583984 329751296 388729028 437060070 294453008 119840230 41078184 922543823 450644642 387270832 847220285 155439717 212693544 351186776 392920865 655550021 200178533 103901360 727314263 853758741 354091504 110317310 714712639 69072452 298078935 358293141 96382863 593224795 608999903 96080257 45287799 15649635 739154839 431974509 331593880 680272531 322198150 89861127 131449187 330969773 664782340 298828935 60962032 327837757 781366689 999752746 686522196 291119440 504851538 884622458 812954453 419177766 474409586 347267040 882855776 711334598 36621069 330921924 893525166 280923098 295709602 174856037 672469595 698071548 990406334 677941395 983023316 279422197 820463269 753450282 161962508 47828702 629343148 493738344 719817575 759856143 9269399 83913942 49850401 146115848 721865527 736263181 423203092 618760482 772581569 593370513 995639121 959500688 67243652 60785879 958441601 562562602 842980173 440350008 164938523 678326998 573220505 805063316 578677946 718930329 458700953 575068970 458782116 297761605 856206918 936847015 812596034 637324760 318879462 576060962 144605862 747935348 852240341 631661826 158586071 64999669 979159458 902582129 496073990 267642887 237943651 92696633 479365651 653206844 45310138 811981909 509551230 436143188 865903884 126236399 286155212 285338152 490602555 697919398 601356090 67723500 303080321 719977131 786160921 847269510 805375353 170303913 332709066 677268173 82080105 309588242 468681127 473235538 314937518 393516932 47629152 393248210 742960107 205070095 524727096 511255925 70509900 945803619 512737772 426734928 201555585 53898352 844495951 513450757 509112085 444943651 647470579 699387416 505061727 322839148 862803158 868543821 858651107 142020218 806466812 505876410 480300805 918641394 411796468 214203541 240713019 872136163 195188112 598681924 27759613 504502881 285317939 522342186 858770408 974642190 659209715 864087568 770837653 868249493 619202871 795638323 869932853 132227924 641962457 847906290 116092723 910403338 282386978 833321129 618891619 884380574 377671799 363517513 234772958 807208839 11991325 704026253 556535749 746396249 755299150 724327043 395380413 938030189 956429021 876427143 553483047 137348694 921039307 518204515 210413588 671236374 56690565 123863799 905706032 798327528 84015859 744317943 227952327 369695687 413752805 15960992 711862831 984183216 781764266 615877480 754289833 878462274 495156131 285108791 983427939 743515592 409898131 228046716 457594088 713029991 784748160 998680554 115969148 739637054 35259531 403587335 735249956 467855940 521700969 519617302 629351193 214608087 3209642 708621926 460632464 947851303 250976967 43374964 888842368 867711085 297039181 398648144 843205843 242237717 760931673 666075069 610334008 452975950 86500430 157553658 273953811 617878367 556421788 157441357 668741938 17363323 180590230 525889454 606041218 853757383 674549596 166300178 953093166 986273442 277869472 357687801 677808275 615487045 575243830 794734994 879937723 88818358 59247864 109414595 2141481 399746996 754421421 479301145 52678711 482918590 850830884 487485922 454587856 720943268 537418206 866724393 965831282 725699698 642112413 117035924 572149187 523973069 909956216 677869204 380407308 399487803 63752982 418665647 533630476 17691545 699583899 391730564 774126201 614015039 386549264 405948161 975215444 725436380 474722252 675725068 996572928 808507613 642610442 356186430 260031835 735064199 365147137 836111066 694920443 301543984 591495062 502248876 744021942 737709257 787643793 961892805 414949106 480368466 856046945 276280256 603905079 974654986 285371437 553143935 682380105 44247570 556490685 926128107 571963029 866317218 707519787 923176209 274493447 424968362 375128049 887702795 491672955 962902492 388843429 288847435 438768427 961349108 959857516 493607048 318332538 484102724 506707234 492863692 743418182 158735715 984181497 971692219 418342888 316059811 575332466 419241331 724432926 754455752 491585244 127035135 312614095 998674337 465289825 473673457 497835713 127573909 886877735 559090672 218690492 864804119 551814331 972481731 401829837 556364127 172620617 671896709 220876798 849643348 34412809 722411658 821397375 840242057 803885691 242168344 660273068 556958803 242731640 559293798 931443311 665386584 103920541 522665748 666703386 89166052 302711966 458083291 408752531 89877968 751801662 974591724 265845497 589238061 207496660 679457668 23303753 199813943 551499845 550203067 137748417 998942685 564090320 558173667 97943141 78003443 495534624 250637075 292210627 818848834 715730699 556315507 126448579 849710118 270646523 145194042 416911706 202132918 673558367 427340741 746782767 179905960 223078812 233932165 394248137 584902859 530309079 483834531 284653187 617759555 268859847 282299732 723391810 998485431 11883497 484856575 968392831 590913852 360070013 500814792 58109805 120858823 327555627 781212604 585749275 744813399 885856867 759512429 349841472 88364282 73660081 799553793 380087502 516642319 167370134 414192521 373656968 541951030 974828211 760419290 210212770 408255156 170529725 687187472 974620944 244302161 384672751 917780567 654136271 235657282 646252273 897452074 973596984 983480165 273524031 188268244 288677057 725169192 149017428 840122670 978730149 267436239 720372597 21633502 829127935 414847810 711049372 96885490 744517841 676427517 350833069 581026919 140413717 89026215 988941583 228215673 295529868 620258956 862491193 26938926 823221976 956796814 620656213 420538890 871137138 434729893 515457513 164007525 729507326 332292275 722107693 484272848 79387788 76303794 242475572 748184785 246699546 555756368 590038765 581962845 420993899 623828258 116877102 784263116 342982935 336876702 743844785 479425025 38154456 586186592 343954569 644302054 265987895 301105032 360474910 233043059 397220284 969899236 918324200 562396934 339843762 122238515 585497208 447687108 933842725 635209560 849061952 551851990 239669670 537556564 158261343 234438275 214344571 873574199 14336460 769028768 557314617 554150302 452657931 70242110 322475749 479897104 773821314 422276429 591540910 650724678 378588581 160884421 630271594 721397040 140122045 201361747 589930486 566642994 987241307 615600063 453368339 23380718 81252728 862282513 722622975 663263176 836410300 879535932 802055773 524511966 123044179 484428640 280693119 480486835 207826550 710056151 446185508 703223358 104211117 525101649 811184545 160607615 898500688 196834740 304654718 764207431 27909627 399936092 337692595 360996087 491483125 462571876 529160618 574942499 868979313 753528974 886182619 308003169 792356272 208901182 96495342 158528793 703333236 425888688 872261019 927128283 489712681 541477429 449456446 311662572 473238922 359652445 95088771 75893085 327587588 660862839 355664939 311368165 879112772 557278338 282359115 868736745 470513563 57537579 703012337 119221146 348294255 578701358 51908915 701963641 496381715 119997173 346072566 992774105 34213632 69674399 554795309 546684794 155431157 7928329 274933524 306696771 598829640 559875156 455371001 454092931 777874585 780451366 655107750 293479078 309165556 304836360 931722360 76014951 459558961 471301573 62019022 669449891 178860965 864513729 538555366 537939590 578276478 303424996 562049750 747325381 971922081 207355989 664296562 866226177 828096743 85656487 366286275 372279049 397491280 891642073 331060054 983486868 697307707 825055961 496358919 345561915 43722878 984904268 489862148 553586995 46146439 418974815 679833854 512268668 871411844 773699212 395265638 117371414 974848994 336696393 205883445 859988780 828711460 936255413 569084978 974243242 124375930 262165591 967338225 10640869 37972188 787916248 137927193 56582116 547987195 753821563 672900830 50553724 533490784 150068811 299099311 376003260 968039499 515916569 805399037 391948323 208323110 760022792 326797609 627831639 6865208 74297497 299164130 828915368 867511514 887274212 852518525 937497906 455073285 722530961 172165177 222089675 847266137 371528485 827119211 427108273 550294008 785695685 200040486 869411239 874304030 263002437 95586539 750502736 77951244 245693790 945907356 177937433 857861443 454305508 89234824 143443262 902268528 867167882 622301487 954450604 539595765 413638968 286842975 135737221 860114174 133169731 971503811 151078993 199654935 23542201 878256184 735466738 323860954 433187074 739775094 917772926 830657271 680286697 712597369 711178330 753906486 267056230 231063268 134373675 889494857 746691982 234481208 547950243 866546096 718520630 143079070 787289383 845409191 427056675 679991533 722359811 69113985 12013749 101576812 973673436 648258037 466644927 202055729 682977431 826722071 640415134 267141833 883711367 80569870 782851155 906465065 259619177 865471248 377677250 839444197 671675182 574738363 776634784 922093507 234994246 736413281 566153743 966314439 343951406 44627441 263084583 850509416 317296767 756202649 339448009 873729048 675866776 560946046 914062003 862339132 78813400 34531873 87387860 922475895 150441819 601288065 423795623 401342818 144427837 643995062 603794276 733906728 642497635 13704139 411669031 931118287 655493645 68408819 184727208 275425145 994976444 472259407 858547125 281650567 848143308 561199398 117404305 266199332 53345066 828200847 836084734 527825511 72441369 208550869 974496813 440333764 632685811 110507881 196414360 310451805 816382346 861411787 689489900 997525295 767704224 93874400 247006764 964288240 255119780 23107959 759619498 165321989 225063934 608872712 669423555 215563793 630392935 346210769 627845045 173371559 724000877 522531138 594339803 850156907 594750906 27452977 218657165 654190010 774158999 833795693 838571994 645186595 144060479 415490067 871136304 364586813 186550823 747381739 581490128 574552195 43288986 800931443 298243406 406232080 157475271 55737978 798944856 149897886 734164173 849672542 794696572 609897699 660465308 194432444 497422073 205682334 591557907 590219518 118089201 996983018 427266860 892716997 625158255 387899772 482922606 523313223 243215574 119904091 613423128 43983112 344861789 506355952 911063518 697321954 612619823 8569757 549637104 734721953 327372230 584679717 644521873 844109771 591703409 478599891 26140804 563537599 618623198 256589575 796249850 468282909 179198104 289368331 52711008 828017389 938585973 691965080 69308266 608612837 924113510 646873276 196767031 410980425 713534756 758559855 412435946 285697165 190455481 966772955 347230040 834409998 60476449 52390791 29283409 762037656 340441963 531481166 245844175 786217959 278622054 362585729 172245406 729205323 677881616 47147141 579382855 324758997 540285913 637530540 551513374 121681218 684773498 424919049 990040776 950584935 959215643 282693870 20450598 728534574 426437878 645413597 340154163 276829479 643189594 602360369 131168192 45788297 968428561 434775850 338316227 279444280 239435673 836446020 91837396 708120402 924196922 30934521 376034502 121495319 790225871 636953849 584413104 393907327 70982388 709412565 814002529 908362804 276142221 372666177 677922245 917945696 28931772 778132254 392816698 244936678 274212895 312989532 804382902 451601173 811831070 488017191 187921055 197834211 184616099 644100678 77171193 99213211 614202666 810945385 195705407 928501190 314085034 687441204 756817035 960457799 198604900 559252868 955219347 957392567 641949963 815665422 194164135 713413646 506244405 175926875 475446216 476187457 115650829 156594097 157726913 270314792 716657530 955834649 706757114 358700220 332736567 849059519 254927417 690794627 526205896 377684673 557123090 919769724 502606246 686069341 763515814 455805931 680194434 912727715 398031168 208133998 130728674 158151333 514915680 60445748 235063983 164515496 251660922 111218260 845133741 321387652 964962690 548931304 355135705 887307129 943920961 243954806 696530935 239251916 579039409 390307503 502235499 5633751 442819990 885667677 448018134 276878140 966622483 868105133 907981351 851910887 388960012 481260814 719709071 818709172 806217786 430642972 458103378 614448756 591769537 226310101 196694406 303268912 102117806 781406313 661977983 804364685 113361564 696723100 601655521 436477331 645534513 231127581 246782176 589687727 943268901 947823757 739066490 393328074 807206180 706869236 103946539 843189016 221045199 640552102 288307349 858447732 321856947 121552341 48480787 146839940 184441519 465116150 168497480 529242129 429111128 272221695 995832949 350824489 172540302 932383299 876585517 36353700 919067273 300999231 962367301 935217804 625796092 210005355 402983741 538551706 526555197 228274694 516161833 503795248 958362225 271086643 815490972 758993955 434729132 129545953 707987515 487160199 558544960 93095059 954486023 626269008 75873182 616145354 574400772 32449039 431585343 464183769 471298051 394820164 17375735 822695931 577853893 332787478 543749517 867883148 582629661 412786880 678232025 995351339 493174292 195967327 425264705 699206974 138300025 353093149 298115398 857100552 235721814 664493313 917068568 137646092 124283300 686264484 131457104 718535872 988058233 76412243 262365035 214495090 935693415 713566251 273776853 237260513 708699904 742669046 724179974 9764787 565968899 243530638 464908423 793950129 739663501 287798894 880255006 637045565 909810708 460538882 73121856 182899691 202207906 284400448 987504781 823213954 446306799 448775497 889634136 513406730 792978646 216596995 327166337 688239762 60557182 772098576 132013046 614839884 384315469 444043925 964215822 479044294 36616007 734864829 535640742 34745850 621281963 798206840 759480353 241187157 494561276 827228450 598924439 216922831 436561106 359511364 541354337 831292835 693445884 661005664 25582096 607731592 411262177 228728185 129177055 506728929 529557005 275343249 663788706 255394763 814143743 279956766 956192730 463172161 854224663 951815585 454462471 484899689 540163901 757984855 543650871 205294281 218386240 22278783 101180934 356472135 612996993 154682175 183867579 966795000 50785585 666362310 872353426 747603584 547774856 554590708 95589697 146628374 843110404 191493848 904033425 949979057 859156293 529319526 762039674 614972914 342379757 834196118 271948681 881912398 753682806 348496785 72080161 577947955 78256984 735905551 93035399 463494620 201595428 167726607 205511776 23399237 928226605 285058423 855254959 108439511 703633749 143914964 281931077 516447310 403751092 215079826 89399183 437255443 497648366 707534975 574242966 88900149 774467429 316453696 6417990 811592979 902274917 310487728 286338713 426516275 568523536 427767435 840070266 341247191 268224359 967861131 310435142 913891207 266064479 161679601 164025827 665926741 158919317 431016619 658954351 538681048 971744009 513295051 535986835 759497918 904057981 95352415 96510738 514050203 526836626 449345495 841942341 552188748 802778770 161967475 809887792 220802687 794208937 963941223 159681120 562722618 950704595 838046269 229010396 697680335 740106 428304606 400169298 503488657 891748503 676505916 533175387 84044033 23932215 688830814 911191043 721602884 617665963 29135656 332938242 137496852 134029798 554257601 778881472 946467500 862559944 758332632 903607087 537701712 465409076 337347692 945930784 934657802 810533056 605582421 807302625 493772065 415647539 381539760 390460598 749069059 74583545 960974788 984458366 99668357 53153556 137390173 541304447 462143703 824546334 253465896 292722650 484882666 502131547 126151935 681965346 197319647 737320344 437395639 401040421 123425246 337040837 210212995 94463368 442388134 157805854 37304602 967210637 639676135 802182439 800799171 225015061 382631052 912381598 803820524 137449415 274327101 628043724 125800358 56802893 561695714 524188527 146246784 812425633 928120045 819413096 884328033 362519814 805270349 112709034 603231005 744240886 770395670 776249651 345270653 605205399 622775788 140482665 984438043 435759602 395994067 593095809 399512746 706442429 761472788 441661715 249690491 626800631 792036061 529463478 710828578 185060594 380330799 391014138 75879786 541372713 595706103 127945268 995791298 185320291 541839871 335523162 573712489 702588294 342656253 368576471 824570350 710113118 198367274 544018601 940872192 232137283 211746829 714083349 223164100 794301242 429118072 968233217 658573233 323152308 307667804 588340710 639290114 531660249 45002646 492988080 495035997 331831639 632659109 833476288 131299116 753437325 682159928 787968588 739532685 532056539 980050922 957747414 748274683 681072801 547033224 322025633 942412616 822187788 592040408 975127069 196212694 64251326 980236205 288247696 781331012 957047874 799348834 184115313 804793230 63417536 562380545 129702138 517769699 389455528 754777245 109992055 14932237 950523352 912999433 96810869 168840145 89792943 52005057 174059944 366346161 527740147 650228502 371538650 676727467 740627968 917620443 808720195 577879824 111876270 20200366 607114453 308182726 537763297 741822800 588018245 929651859 995708803 840179978 691824714 539668927 913379897 290329636 636211988 70150174 198246387 401102525 519658454 905560984 237471906 640065443 627713664 463840962 64932036 41360357 78530001 140318165 840800353 828756519 272410783 785524513 985912378 637065411 156361704 466135081 513691383 332048740 303977357 564592100 175221472 487381768 803519932 138951518 408841664 753699349 464987731 463614795 763793501 811643608 49091883 612504861 484325035 347911313 762519082 756549083 51029829 891811268 767784888 697386599 301125896 639232749 69249097 389285824 296015516 703454655 97066439 46671167 429931496 199224600 731491428 426096190 946619960 54435092 720855670 822493718 534470815 469598678 714534023 831888314 182086523 86721672 982008097 159454200 890307426 386901056 77606157 554455793 421659806 808929194 195923616 829920392 569699045 507625808 327588080 538199673 607583368 283413903 499746704 484516945 466036696 630447055 840087204 914940700 665942050 558734780 340314907 851253429 513420865 592638128 158104891 517138519 296461341 247547004 816218632 190654882 413172565 96100429 36539388 888615412 103062199 876285560 129408179 902388539 799727246 272951569 89004556 189360392 579788126 268554371 355363233 734692719 682725449 352801899 148942251 248488657 547195120 733212184 502155433 125595725 814339324 78569630 99337428 219598023 211336206 49957023 749604571 785724730 994360639 580045685 217075083 880449619 464012899 984609010 684152462 624984057 313216795 343167918 582304259 914484540 197215343 815723853 470436855 412185707 178574968 653972389 71552359 746370711 3332376 221916654 378694030 241270368 856823505 422150649 792301442 87990909 996911322 661716630 116259869 714652837 684961389 921974843 3957605 857862765 779854432 339061248 314877294 993374967 409253170 671610816 418269026 876856738 991037601 54858587 836147948 181820543 894345476 742150850 944265354 630497848 245240333 949590165 181818307 766013272 583107146 677227065 535891594 366646863 825878765 391783604 500623192 669861858 830218499 618767530 448465009 369770748 107336917 605381694 699753033 26151651 163656708 782937782 346713184 77871314 626647508 835308141 259439583 184126082 160760404 403678701 60393515 746381038 166460987 414499527 927490446 590483156 552830052 579593459 751085279 978710245 144807154 56624234 506935968 261037544 629740203 573941852 31800186 218691634 992773109 700413320 693756133 285646106 831219749 646207570 370677882 278722863 16658233 611288605 663249937 961259483 870686970 59934123 848004218 20172040 81214490 944396967 939463010 939522240 786120680 950340184 332010085 52924000 559213228 798829695 939201362 375019131 900490305 600169070 882500718 138228886 349098430 894635204 507472718 174714673 786688826 276067993 983321781 171486084 848551742 32797444 260654009 454615915 13782842 275470823 354397084 141745546 360849118 16481189 777645363 206536749 811240671 749702936 910442899 706102444 55060571 301980737 974238337 75937845 899047306 264147766 572914410 158404256 273903876 745143635 222036018 69035610 945311668 925512010 16140290 284619371 605538309 612669410 162345671 979952251 446389756 876501707 75721797 49876998 590370218 822478129 861668424 383718726 618187037 259739435 70950774 195892101 75178043 237362058 521291368 538217549 654840988 193995791 638726460 35788895 881398272 995136705 949591298 90227033 366636897 143006517 495855785 867569614 503470583 129593661 65457619 218960954 362523872 539532762 774086006 905932014 762009772 947006117 907904368 990374831 113571271 278598441 986407010 955472410 529950154 326121959 906859165 32233371 472385483 255800197 138528656 676407307 692598048 3729612 509344805 873284071 489910421 820285124 244833482 387839700 486681592 698263821 326700088 637861145 212562552 616518228 413654870 928622249 975504412 490895031 211639465 915665347 213929862 327443604 426372172 261704895 102368322 196629362 848394180 263311754 188626841 823887480 347087391 657847327 438344618 257172156 244011484 13173081 246150102 678029054 19314639 125768906 927486182 915352599 697926959 624244536 358266521 762446265 832612646 397701069 616045339 627793403 921916243 551924191 966116120 289505966 339656123 782078657 499804558 176633661 303637868 65260948 724727309 183533022 287444386 771442410 24814969 988940673 805187324 856913398 527255921 90578671 308121962 566295584 764222483 688704131 126271551 544169372 491666439 918741442 635513926 565971029 481604491 943907771 397032734 769027824 44079424 334790541 697762303 505397547 356510380 698322067 424027618 739074662 180609709 644108719 396798555 680150687 878369465 80992053 539378221 67459204 378281191 635504342 358544424 323417136 352154679 828822722 213376861 254565054 764026480 916776633 708891972 689587558 684529179 603443059 797946045 155394396 626403939 216798006 165867225 674922725 94739682 420225195 992286118 201454543 585708128 739436037 928571431 912193280 603296429 837897876 587771464 597935857 820494805 668658312 198169916 209965345 29101380 608004830 360424389 8443791 823139451 937678781 705043752 507165771 388484930 942755991 695306395 341812710 398922841 408203875 460529922 92800359 395967711 908673634 652236291 536376167 759400077 296617704 750052020 901626007 274688259 593568910 794131085 144574110 791579725 577905826 979526686 66406794 363092035 922900302 664022394 851902753 361572509 471988023 353694278 113306638 350763710 533164293 807306132 751871717 206024533 283935015 813432241 361075643 570470779 985365746 832557781 567720861 959068574 543317199 523480990 319154089 613361724 96553176 202518316 226194688 692102773 167493036 182022123 597743338 767218569 423510094 978835211 285533291 576690025 52449451 788963277 128631546 127817438 551084225 829068499 751475309 834348905 605685171 261346533 386928220 957357749 471344436 925049201 986675689 569058161 483832056 964433131 938885331 88974671 582082107 754152666 730710994 985546431 530944354 251638241 677736382 93978205 273511209 638052869 685703301 508667749 726348288 293931994 826732874 491592167 692636119 219139918 263801589 469376411 603641479 419522747 699177264 92858092 276591984 526272018 437019305 467581655 352820214 196963913 13865276 911022401 699734591 259392168 239955699 770887399 800563134 76660134 730860102 160047886 938195459 898839293 448012760 160264416 688266379 775024896 589870652 622242286 148316407 377645422 832543653 383689532 4310105 916244403 498037540 750357374 425564283 784093631 669983538 807471567 553488599 118193890 513447316 263896420 777414556 331874842 723138445 492935149 889425690 257887015 24844628 798134790 883426894 424274802 951733515 28034037 890579251 553961737 705510441 891251963 559240009 974072233 689029932 598068231 565377227 334484974 177246879 952979070 659167100 266615474 449016321 672595288 481997140 76762070 112993534 670285918 515275904 642316244 37700301 620284022 30507599 714406468 660507613 495519137 278346155 991818172 896575912 806770928 975123134 531569174 320689383 381283350 145168365 633605770 844740135 628962071 753221394 832637520 332277775 438233298 331807488 187757243 467244069 14698690 783617243 167512364 211261541 257696800 35327013 289040060 737053651 600874512 176034952 758061652 600967034 97065268 275263023 176043320 312142392 641012011 923107335 308864265 420298410 459905569 71979083 301913834 844473810 457803651 937524509 484667725 152176356 600087499 670068720 274141591 326382613 275387793 307055495 957661361 900085615 948832463 378204616 395131303 129497018 17984303 507790956 922374408 718203338 492378985 749866612 660846456 879891910 776874187 201972647 149113053 434804032 469984121 301665520 3361668 591302083 668962679 783474705 301036713 178821680 758820554 582483140 782472248 689021185 501599139 125723068 873225946 237518498 203116936 422277284 533932620 14500326 610488240 511094997 806286331 427874771 639187099 37200332 69596440 403509758 926797873 661099183 539552269 968355943 939315884 473060790 412434064 542143967 153759205 789509313 973653296 10029600 687117397 184599371 518328350 188725824 562167037 8715652 480512956 62993816 923616098 485272115 115324173 4865518 982231061 312739299 851326162 538645457 405847716 298958309 597982416 453359677 671697852 677488550 157579353 286530962 748983394 228359856 56994101 678997634 743273564 794054481 663640869 490566569 789270261 642605 352078209 304676230 642206258 167019885 840056638 503731735 41091390 506639438 543035718 481121404 357402166 18285330 326893623 650079637 570121372 11089141 931798320 644990733 319498392 311411432 591105667 82301811 717262968 410108832 39127190 966950504 588883934 8647163 53822726 977707288 783574005 687945772 480332864 484463471 849560559 716745592 290324540 532430129 515104925 405535608 525047098 372372366 785701754 337122821 352925206 814274374 617826819 150652231 264469275 788536705 594769552 912336623 788803001 547350891 352949080 521668443 985845030 507248763 800905995 946181066 189858108 471055702 610330185 747723416 763671851 466419978 238514008 630068394 250944000 523749942 566991973 158034330 750196151 610678696 509914429 145993689 237362223 77071240 595938530 547410039 585160253 534806133 558196683 291341504 698401051 324259804 190314470 907128100 167294184 592087636 640421174 946625668 423515944 883246045 943651857 861084153 500898551 106641002 176900625 843192634 336287041 933509523 275688675 578784815 189498435 191565340 337417587 53701591 74824313 933735673 235992113 372494683 7959558 378613403 194718036 667561408 643111479 644586195 729577015 956676128 908700714 694073977 24369524 246720321 825950814 655809600 706940509 624818964 954517715 734976070 182517676 380642264 935689056 403295132 642109289 54454858 12469252 371291095 377338985 163790413 220803784 128352835 526979473 283302161 504680986 686230348 390734665 912199520 273635842 925207102 701484446 35175235 872536179 41872843 319109998 717644944 721758023 757813665 370063737 275262827 667635160 850572545 562236343 818890476 84626300 461192050 404299283 324809619 832033229 498188792 628160730 603970277 935843186 275790203 120599377 226377866 651717386 669657548 969893846 394993803 946779565 294986667 940294758 649476351 350890218 288607375 903962588 440288464 5367503 426138319 242829987 268489370 354621163 680428973 125569532 193170170 391233571 381278423 82354842 414465700 936200408 56750861 536383854 155009047 936751941 267285992 394266628 149025360 991325689 381507242 370491953 255024493 911579010 628766531 682368429 86767307 468597281 186232508 767459767 597517791 129929241 745566318 578840146 102029670 907196196 103625773 900557121 142923782 263014720 118278682 903774751 169146938 873548428 837748560 942832430 821063545 375286042 388032537 346464284 853799567 398534468 320402435 624702482 324981999 10807998 813736286 896782331 127902700 290171141 458577380 304466259 712880417 382978462 621522117 193226602 8555921 16198045 124535881 27318060 756335517 822033374 323170936 178925291 475167611 748679512 211703031 359486298 533772263 305885831 528102787 15329293 931027571 849168931 764003236 472831192 920335570 336599099 381437345 327359036 987526771 946506839 378634593 586085355 784462469 58886528 426832300 88991476 997910824 181261396 692859127 671332634 759597943 157289765 764773003 688735117 993580923 150511631 431015614 39337074 163550074 148902690 8820131 717284795 262440010 746458276 181028952 516249072 287663235 11201220 76528615 933420725 963510271 631714720 673567571 467533180 832593405 707099285 813986726 764962151 129313399 462871090 762963662 109371402 883690272 295276284 249012840 230700970 864560480 610048459 22903708 187612521 137720535 463633073 16805575 817763384 681576208 782702488 293879719 348780001 111861277 620076714 535381411 262130394 285441115 117280379 363343219 91369768 261021097 681743350 439425219 721753628 932119830 46477556 590693524 794536341 801732312 5642940 813260983 534435478 657857192 373102973 805461868 247727637 719962181 967866026 670686609 529900096 778901192 480423241 88782762 272134068 308627326 103608159 139703995 305031878 816562497 259176239 549928569 458596538 899286017 728725515 409694409 363318507 82709939 477148638 418712380 77964677 939381169 51148679 818436168 374269947 230142086 695651473 693814119 641921763 306666874 742728098 695012891 273304715 332357188 921983404 796742709 659348854 298202977 83268478 329454447 798286173 148576002 707697409 34071441 383370388 622035367 800084875 483442520 222641878 480886587 766250920 207514499 818499506 683851638 421467791 743682642 433825654 888909120 492309403 327124194 310166295 603403929 159416407 689365945 714943338 163363391 89474187 272005477 359678445 981154739 862458146 795344203 651049699 230075701 264411756 434159925 290680738 124612324 790299694 863670752 630422565 135442999 122058290 497218795 93840884 202819963 107591833 417483394 784679974 955438614 203230284 532651313 566470198 603436604 149845597 133409227 874124541 248081040 329541094 642534935 629343234 972239537 279326490 274733018 191052820 306878576 163859364 724258065 714906686 365953152 730924580 216044550 526897309 706038125 598832219 830744852 857605035 290676917 787791418 811765108 802274917 395933189 807913889 371096918 16648398 299465136 14010611 454944658 279268153 768011164 768285172 508677845 242037434 163823644 433400641 984414507 190288275 143776270 643015672 766986530 745885171 114063859 183104275 479659070 154056786 102478756 332751481 878799320 238016164 695216816 282607279 547153732 74350917 51912858 440357047 711134702 342606822 816441525 318870480 637240523 594662500 166018256 661686333 426412028 841914039 728465814 164651923 132935996 752633686 824421692 571251372 381413942 466840588 606063631 33519349 421192777 235916348 149313931 871581566 243355590 679041135 761314280 815656659 804409601 247903848 95225075 562208022 556851500 85873617 640431876 530342189 934963106 381733373 713742289 325442888 22705511 769150326 74366254 256144741 266466700 276202998 599130595 376871301 789361252 622340273 973989968 859762796 269391553 415129870 442232566 749881859 206175218 67762928 461612254 386155632 739648157 363408075 469527801 456540970 202857058 952304524 175104965 63371170 536990812 70652736 502516346 212459348 426182591 683921765 281631096 910333939 814206428 401906475 196742175 246526563 7536575 412475476 365033371 696716424 737094330 125191357 72656893 294435571 916721161 647573353 622835129 577790586 596900855 338597699 767123923 629450842 20623939 609675685 618709771 131757351 842386944 77212420 179679431 627908050 490866879 251017634 354260276 588702412 264955281 620410041 412147235 436199897 195137035 284016930 782077540 723104982 956248639 562408129 394857524 922461356 540053488 195194260 460307989 190007492 189035752 351878421 599914720 610775414 575878265 421193269 228109685 831027131 768247272 650496294 816591161 688490925 506515412 921986175 51696271 384916337 168960042 349423565 982985096 313575812 184632225 960183131 285724324 169074105 105650270 176068379 622021549 729329818 752599042 370684154 768396092 130090005 273871153 579763566 566936777 508857105 400825363 811019672 147212362 630355022 351263526 609428789 906643109 692839548 123199869 773703971 812505803 482254555 407206720 655835775 344959426 387500290 413531882 269506992 518120384 175928770 227769695 485166061 232672404 78513884 486361972 475006174 483466604 544021705 732206747 442628722 618673531 309385679 622371231 986536654 513180928 401759047 931839813 21984511 303542860 480952114 485174422 800331395 48575048 149631436 888193400 275696673 827361638 578535646 165942511 694473291 442302786 214548836 402404818 943017685 669336501 65271804 555391482 922912079 939774833 563397151 207395741 242091594 561254839 902929061 970081841 90547607 235771955 375401580 755615788 390152966 519472066 243121582 173264297 247246639 933673343 248665228 932195513 42138348 419169902 202713419 580450350 199921649 426652842 32973923 633856345 564691652 140099145 479286430 126167278 747257845 395363148 962559499 746621269 316771748 905603791 855976817 499686203 304258505 485512915 260951277 297060194 348246746 974117692 819759072 126567037 768761655 487912705 657208033 286246437 785288977 894875332 966325524 519798887 608564717 178800867 170113304 199687782 330357283 160886278 717190258 776225614 462744228 79601745 351461832 571421743 827758702 842710939 778909324 761499142 611962436 996987212 852729150 231430656 370055235 94076139 392846959 798969943 463018609 508193732 978974239 142402464 614365067 712183000 779578779 424467887 848794052 483671976 345852481 838226653 574664798 392990915 798393741 127094261 349293632 875733653 543137530 937196543 531070618 123811615 792968771 462340870 71927269 58483280 443404211 340460283 728988122 447632075 268290897 657660137 450288352 467486337 32040907 253619245 614585601 698254315 631194184 16341448 133455735 539775654 523500720 755179947 219907592 39150482 965784829 564838097 37702229 280802952 567322769 13321620 193390317 647298218 601076890 268921740 324069088 583472799 806220757 444852690 692493200 694634124 793979273 463721616 945550446 172620215 477209869 980450356 550581212 93025541 128860224 929494911 44231304 223776754 10356584 596987193 161108860 697480759 298850749 99898217 324089618 306319310 41890847 491492616 505937014 445265810 109962780 473676105 385341264 35460325 994808884 792172201 908171325 333643696 751090041 27322227 933418641 541779673 198787454 896152578 666913860 247701637 521218361 4117730 917153280 546394122 456306840 441505161 487915113 185141660 335971096 689838140 762883094 224655181 935349082 207878522 776139907 343035525 353757650 243849072 829315001 769451231 63361603 503590477 960333699 514591542 544830042 122813206 948717656 796104762 459371947 992354796 507024776 71188023 73707264 208601609 152867312 923829875 409731586 55196837 214236441 325105519 379661658 607418073 980932273 175375216 570235554 710057995 32913153 429026714 530868198 425616591 175322206 829650588 349059713 578130235 865634873 688568696 429804599 552732155 661095338 677808457 746592763 605631274 812080261 27273479 697461437 491673726 569189268 739789006 410822465 782876471 113619253 238974323 456122038 374931911 137488196 815723557 800437822 100253070 339448052 553989996 290174827 700356732 404871875 646024675 878096686 948180189 161884109 202166624 75477806 764255160 823459768 792359076 723584326 970652975 298229746 238288203 563263745 259955342 199403546 777989004 535844892 911833954 546126873 619713693 674558704 122829649 943293936 605217485 643672117 521110181 733287663 606493009 792166891 803190364 681867188 330823405 641316511 302339433 483823661 696685566 689421558 104732321 940406467 794266020 68162282 140039332 327422049 694504800 846922015 47651360 518251016 88152760 925101884 435463455 131054755 897732668 530019460 379994681 793509469 962450483 535465896 426911077 775808592 558369172 19471561 181666087 231315839 465783181 163382291 196107160 354626983 530091538 686000526 210040829 165101834 796961931 788236281 195314469 381547577 856690678 197785294 498012181 396448898 750719219 570601630 601070800 736470028 536377577 717638812 951114365 538869375 575423965 340586246 355052447 160064298 839169001 574521599 365355970 519361746 203471160 255660407 959529097 24208510 524741119 996091238 318360914 575191808 745550884 201979372 712732430 914295895 826215720 491456484 524999389 810312826 68721183 570197181 237427797 198695457 579726555 453302780 956525000 746368875 535607263 578337579 584095179 140828475 628897424 527823888 446950132 765695752 803351450 646528520 445412733 337689550 875956012 262044251 620253131 472758123 262852609 966351282 128501801 648847670 816173119 417826298 410648174 222824217 642884030 454325024 845582655 218989775 803138651 76100147 595959024 13686316 268239646 56860093 170160632 466926259 706092113 350366668 221272037 903498971 28276361 816959753 536505263 740372087 836881235 342179180 613194182 55469307 318434259 316813293 2594861 671669371 672732040 657059406 901762221 181023913 595278309 826953479 856235725 945289246 810572722 347112337 967459639 902575433 693125968 762535797 948184743 394372303 357022420 296932084 712277586 392484477 141218232 637576951 312968046 28849727 457873712 893020391 469728724 27154901 433912768 265908060 484684424 96407238 579602850 750528087 837383119 317483848 527221744 530389056 110752697 987613195 581226298 172829398 777063606 288720829 666853190 595400364 433932106 998410206 417259377 444460174 218229989 24975077 620718904 335599540 982464901 993713909 386821050 197909860 345076060 444613787 966167641 348438014 781450353 596694708 711824432 690305393 714133734 397349000 185532743 602170416 319679152 613074035 62094429 169276317 166459118 565406902 389470116 958363059 56164394 129641660 776043102 14450643 349434055 265173137 4179860 491098143 236369235 838189267 457544560 593786502 874010623 673581587 822373070 582953583 711729043 392422068 923767706 757508574 50852408 645569598 124865045 866414113 165451780 192460169 324948749 972670064 448678593 270506221 163111046 26327316 492547867 437013855 572439835 19415606 789793475 7235918 117418804 441817362 465114638 101595762 525644991 846071066 638180316 917373549 861672227 77700954 326442723 286207416 820822174 609790625 667667099 405611775 389625004 911427250 712324426 482642501 630719175 452571226 178108360 884942750 886038292 578413472 375144266 855644514 534285267 702966317 262967244 532671566 979909814 657489602 37626718 284772042 510558387 882254274 675447896 137326414 939556970 474687276 775934975 328174204 509636758 759752411 349717218 90431601 436168012 537813719 571157967 491765249 180606762 269937657 260595519 528365189 343655118 404409050 255885014 631063824 228170997 391001774 872696722 333063678 689396827 329053051 722716723 306704799 231317953 634063994 667543326 779856840 631095378 656858356 708983880 872274063 143283145 762449044 741367369 893167817 137464825 444677542 323982585 494814466 232103089 329806037 976468563 573734254 694112108 428708949 7692194 712532809 28135835 943299696 127141476 212685930 223041385 597862292 925946790 916559073 252980749 394806200 647546902 64297676 984123486 722419619 53942315 763325118 772603954 398430321 274441069 469553515 242730109 783568419 110546341 472990037 977514056 775483896 595310198 710887955 557581076 402376846 668053267 958856803 641578907 185628386 265389319 294290074 213572635 896945608 589721358 591770612 886046772 616068042 994180725 168997552 570050381 215703507 405250478 266983743 260820739 865234748 732181005 637047675 644153280 570865379 993682848 424163510 869722318 673185356 34043354 81120514 484732424 360309078 358751440 588141054 629626909 202959402 381954566 624996338 297016732 70723938 4193474 634384076 956978808 126660621 213584568 785837208 412021038 827053053 333045225 995106560 128268787 402380008 674750181 920437456 879249105 781620795 890540221 19656966 853832734 280097450 532450793 402816635 634639833 542397616 150466570 187785373 354354744 950765870 142406294 225790662 655035682 562732988 742856552 528414338 92802300 652225280 492736848 443880741 511678781 612519376 345589861 957378689 648994655 149745728 156245142 68526424 662128405 311281984 348980980 218753414 207731162 937528606 433733330 371065821 587454881 238991126 903387887 529647997 848642589 510112753 590967883 587157436 455566323 692711933 756289314 35821818 878840952 563826123 492435461 775926045 900631425 979600189 473607894 954954387 63940369 666177413 568150146 54399696 8546595 667239528 111463695 808215412 297934070 61797482 622888791 68054334 855249327 907981611 726156223 14177522 245473261 277989804 460248063 575390940 459757836 736349575 116790238 685347070 538348162 245608624 450972318 112876032 746889165 269161044 395022099 117255280 979232961 710487392 479453945 393234026 518519333 929435632 248756444 236391201 271641218 946026662 605247043 983149394 739741838 543279229 692964407 312399390 629857293 459330852 601741250 285712778 871048599 905370199 758798487 215730415 847522995 870907877 178836496 746920321 8838231 362540443 182139778 598375604 122251262 428858890 41840015 559279956 566266181 285913819 719520070 834634990 584826542 636064378 15909614 736312354 955631156 267079452 42111100 673367318 100507671 95710000 51434075 773597771 394740499 320000533 782682833 583943659 541145073 94013192 849792179 585588401 626782610 472718583 453062587 901210729 532998444 914728497 625445438 971472432 430751583 275885617 166764878 223262581 155012162 150441984 738650017 514525603 122473017 634070712 567565935 192852596 910759478 371104841 517002516 321910118 782694007 644348000 971804647 693096588 620606944 340364279 203639637 411713801 507642332 76834094 366064156 173731939 381614785 518601400 390815910 916144120 7593686 628658959 771305773 817444951 729371582 639162633 544249595 822666365 576004391 159379948 880776674 329904808 974081559 279287181 870487443 684396551 898755556 798480868 911636125 11303227 680816718 879917941 545697187 405468044 162243736 914406838 272727079 675628997 452147775 371149078 515014036 745561469 555840186 606867889 11765795 661847151 491988008 249256370 199559657 319144682 80633832 661938638 883845618 845870726 71391780 971706832 841655753 466375463 356731503 514063164 938268203 25843281 644503702 429330013 976866298 485206274 882762420 592299862 247868141 373831893 292632473 995464351 312513948 390318366 753469589 586728142 218205793 995384997 953932720 15345142 825358312 863947261 641312949 422332719 408739502 54769490 783899630 873047865 624736327 174402495 935301034 162680348 332078451 171625948 305739383 266299626 615196855 215383974 359157010 627570492 835122220 943662783 250952412 938891411 686940187 324128917 314525585 954292961 249997926 926131312 134458788 470989243 326234036 184499172 485993962 297105579 418177371 197446985 572602361 935425565 80910742 261110181 594326809 353605114 373307096 474882719 767093259 847932490 344304986 923905542 186794087 482555101 90775777 721360839 748442037 288168794 566061739 662736522 40734033 605110810 166914934 122721192 722909903 743173119 917131239 554211805 519013015 559910947 429027920 863890447 858954237 972581595 181936202 384314575 127751754 229492957 230436018 707347909 880149917 276106787 142346922 367740172 312916722 22265767 333538719 305527035 402595907 924618800 62798764 586365338 395410998 502650037 664273741 447051250 216366731 436824738 238214861 500611361 7048743 390909398 404043956 907745087 822636931 410683591 780993858 676517434 253289230 866955169 783331387 259426312 903772903 38419455 144715865 594973633 421002735 203345668 24858853 749846064 391188745 658082541 873102646 815416350 822453275 395417878 59017528 258144412 451637655 525831082 873752184 284646864 289707200 554139135 709056946 702898365 944604526 758600993 886739031 209374116 494308644 434316461 462423565 799606472 621497120 678123801 744066652 73589530 50869309 470710073 28974154 635056992 529041940 268980553 761864774 727957279 604929180 638958559 61754539 866052399 300662822 296374075 914718807 844432052 820911846 747999741 9650816 435983913 257846245 726302381 614746130 907208725 354257154 690460563 935481540 681021634 641140200 126890729 741364503 203221568 819870825 473086298 298704121 13804334 22880006 683534222 325819526 813020935 378513904 509542891 685274953 210803862 126985046 101293780 800881375 97877769 975218448 815484567 986735224 371631499 135303515 685764217 473134392 10014605 448367903 909818838 116392028 37829551 403227612 476740572 390485205 247221239 96589543 127314100 121456129 459645891 779979517 230764669 941200348 267739890 597399899 694526482 259729519 39652260 743946951 284755287 5607762 834146240 407260292 327776001 552535009 410924681 26708150 345429735 41452839 839959253 288651482 770296884 972279509 160132710 352716427 84600864 557304477 880516725 873844220 245228622 225143323 851135581 899733118 962174007 761172537 775512189 569320350 245433080 862082350 241349012 222285154 294296432 900968777 271029871 596175629 323744182 983987109 303458403 888105478 371869451 44594924 346859963 283366895 264582651 628650661 969804904 923613452 651129873 511468333 930974192 982838871 48674209 493284347 819932635 262034908 328661235 257744397 556049160 371257373 528746482 550163150 24381502 902786726 505787951 827359938 198831170 345122698 122105128 707768128 564991620 62138825 383590408 3776102 114143419 151889171 484193342 711128135 396753236 738728041 105980609 331005265 431668654 651532387 649666792 581515090 593232359 441242858 981370879 637991365 737663168 801627700 519849908 757859092 30446118 536075856 237164190 519449572 58508330 913025165 532013209 414729734 566378921 66650749 679158337 348220449 133232124 709551961 202085457 503424458 54447389 917609118 152239173 880122536 305367138 428945446 19816317 978955496 856317302 351435242 203137031 342382294 548085267 43009555 649736723 971429374 581379780 619396196 295712221 758793368 317491879 278173247 103224909 414324543 613708365 66382735 613847089 725436337 876179901 858800424 519238078 708245040 608617902 522649149 902717897 924948087 644040202 843943686 758422940 264817045 90308142 590955966 194875201 92090844 649483331 217341048 420533440 268885508 142517824 623332541 160182462 220323080 941082387 737484752 846814223 544954266 583652404 456261169 252200105 109423345 281448588 197372870 586532892 572257998 342542060 567815057 418622734 264745639 293862949 355308292 262347948 101585551 645376993 406843975 161925424 405830712 317533490 825645542 625890655 324354669 40689634 620300894 188495689 49515310 754575970 667014927 682221159 969938286 159216323 332092104 484834099 280358051 285209948 189203687 258521797 417851562 263644269 410645081 728681812 833086163 567123514 242484706 500629169 219647249 540260974 308977684 934721980 175857973 562126173 592561867 238852950 92909493 69445099 380690918 340541198 631697637 235244303 794389679 532170792 343529325 81276245 459873189 711383869 122459841 998395789 693696075 230416409 899702927 771361228 11172168 87558168 729565482 672685166 59287073 801437889 36707192 882020410 512949148 747284779 941773809 661135987 631040265 437489108 399721160 10798208 877009095 830688462 317839656 835081128 128792931 764400773 381260581 89007995 162727861 204981867 708425068 355627846 220301260 552109002 305609598 687910921 293574097 64479201 62539875 780842409 913880856 537426532 214448856 536193013 196785036 79557919 167203045 517641677 380645389 515924389 237346986 394743134 462526586 122366735 870276434 897884745 214918876 632280300 673637407 7150540 211519004 270043798 387928109 884235023 10641700 687640692 820853840 477811469 6505598 399153993 692839094 305010792 214721432 982424461 462588933 117022053 978739100 603783885 507234883 31969157 471862591 496028076 275732631 488342949 461775519 557441241 31052863 567361258 717197940 56614490 314057224 846561450 990226440 638530520 395211023 126589678 583126572 318086989 450352113 606259984 213446805 490429874 990293994 652891027 388308728 920684933 651999773 440525017 541410415 673800471 593801682 232154002 621436845 835889271 955444132 822335184 724433444 450535083 990456462 675402671 490906211 864962761 965116879 123251573 275030325 765909059 320822476 146270558 824146552 438861754 604123438 878083589 637063240 205644141 550027619 815816053 362467857 478704625 861604778 305288990 632572483 910992158 651237271 560072378 514714747 481849338 682980554 662027255 88759603 130451523 433524152 802301797 620813822 451980999 198288261 486097044 87856867 471320922 495717266 159056627 735255848 811510286 981412807 339437962 757611623 116989605 162658790 832975934 763062032 619662461 622972548 577328838 38656302 45889901 659609838 447478983 23270068 607501211 311546694 492322525 616819614 525248241 363604473 99643688 758593959 935932761 664249247 218607386 12766082 365763372 152153825 250302133 621282219 518362234 361894720 998114496 904480196 971519678 703335722 569825758 304151030 952390967 418122827 474423422 946528223 943024913 159836086 257374270 335017404 530754613 621982249 328307607 770010885 554039832 578047670 272038882 902930145 464521551 236349989 715700403 924040247 148769961 256663672 777017303 77161227 29225712 340156241 389982064 801576174 13358232 238958991 572159609 226645055 891936138 81639946 371195829 280392277 386493786 385329940 367805634 530239135 883892074 684811549 921956135 512423112 542230747 902893114 461126050 272878461 561847753 379825997 379617809 645768472 392373790 134093106 793492536 687766216 422082406 341320580 965291667 527583281 662838449 149044672 469413823 654098360 270451204 619899964 122111623 895190082 324249587 160540778 978480329 354583485 636498077 891530692 599719474 348708165 843002700 606349619 879656686 516981735 979805311 327740973 227310115 960284193 298269386 314482716 917126148 992990550 951088348 566998281 821041284 918662094 365304364 717681642 77294403 313066173 341238282 421492768 655972270 636355092 779474137 450084293 338249454 132721772 760098276 204911696 285797610 140630178 399135199 542528215 638858192 999427623 696285029 657682909 359169706 858548693 898563415 499498030 990900054 947286880 141513710 833118647 680432841 58653180 780407605 815100159 226617673 518514626 612863378 916991830 346804119 996549298 948958810 440819743 836750248 824688182 260168537 251558085 987400121 165732738 334801604 760776265 234916778 931902540 952844197 45754669 526930782 955626073 365641106 441388770 744047968 807749054 340992242 197254462 34421945 801015544 390496550 83733707 174113739 313580936 926984364 789491493 275164357 148998902 743896579 923327165 289657540 18488786 272109553 886116619 494799857 170882544 318825761 493331574 664208901 258933553 864277470 267202783 127965409 255805468 108198656 14323564 424167271 292671212 315439731 378992918 208064148 63600811 796292927 567348741 317149625 826484149 845286513 768465189 987510639 206170622 612301025 305278983 779358562 889548882 454830640 940969319 852534778 14199555 975578525 790157081 200209074 366456098 179621687 955681365 382689606 603727403 535615624 527547865 390426912 585569037 496215497 789259316 104667951 559726302 197585023 475710009 332811298 810681964 1857421 144280684 33811973 782290144 784251331 29693654 837210193 802730752 90346612 344790160 962188321 392791140 277190670 477947813 723403698 431560344 670908874 139432736 77914945 599944455 832338850 713135691 672323977 652435518 374262145 68655795 430000199 542484376 902048514 437272144 573153451 689211522 291092275 312190820 715316059 501376726 908221972 863714670 583388792 393457143 588359537 92361854 816670032 719277669 76341854 779375888 879755983 213463860 910197167 450536985 432630352 497730524 687680817 818379980 610436145 858604939 567608065 574948631 591075247 875083896 584115917 419476462 245172717 953594430 27191534 788159699 865051680 55759915 433212577 890970118 10923585 665079092 550137521 385323560 59921751 547392855 299271541 2001142 555267462 888918407 178137560 326140548 601192884 817612445 390438673 304476228 798549137 678165091 669785302 689252188 984616612 350812754 574143279 170821211 54609518 116498762 342106687 100820431 528634309 878940193 490780167 785641608 884657405 243350424 135452086 513641749 45898208 611530844 386295371 746356320 133473034 303985760 751087440 417542413 962191590 555135209 688496157 127100298 740050484 492763081 345100030 337920910 662074597 795421315 635186178 173605026 886449788 759976474 333493047 525222283 196917098 473879778 834696798 800350609 383361214 124308150 453909336 816229981 655540748 486787445 879320090 18676902 148644467 123501190 203632212 211490467 380725851 354523370 866897663 605747575 412054366 267388715 587855836 829931711 428799840 587246777 689373547 205598228 136943530 23047325 327035269 616369046 162332787 754216823 459425396 962673533 994012706 581239491 457969471 796113651 877566808 856179945 719291509 728015787 678738290 398383908 896074128 275904810 995055130 760055429 637467737 515150064 18597659 758839827 577137449 619780551 254054180 156547305 396673922 356117995 814664576 345717808 654954161 208621237 298518776 216511387 778440206 888564422 48711653 733091146 472780246 35738846 842242869 637228627 724284152 338480212 869182581 162542240 684733101 687593533 766667010 819000109 151770165 951590869 261171462 165111038 155455133 182471174 749048511 926222553 464447965 160262520 333944033 795824667 940818246 485196260 628760379 505542762 572501120 780297364 204814337 477932990 712486981 129589343 769315436 477606023 437815018 827886433 682680082 36891316 379811205 448726398 328318689 779558136 818928037 286754146 82524018 613302787 496816420 940885718 503291806 507098879 523125712 792115307 978323235 495370606 193991811 40867934 100620835 863144147 911461877 269146235 43464788 249108990 717391218 773420197 753096743 925481258 630807120 53805191 156027812 848363308 398629845 156458706 188364362 566003563 955700299 198683942 354729965 594722068 103753240 931801325 473310453 291934980 827175296 683289736 690856462 840479807 909175873 243293108 723649185 77581414 740618446 396835271 414549777 342912842 171545585 903242878 502754115 196328529 871566169 509625517 410970985 430123011 473746178 243586765 247518587 967375241 841426905 89911367 950780029 560701263 336495162 120592003 34804144 516268247 433460889 815414585 260316608 856916294 454062430 164523394 864441728 925935280 15039168 382387676 522456680 339285136 135213626 965286380 945294957 874847960 1720926 816675741 220659162 957635777 387999065 993545715 2739327 612911414 908404196 582710625 679849075 408425591 983211987 731423480 228055634 91605538 583116554 902711240 931178039 650769854 162520669 150281482 794940306 680585035 994511283 406439340 232960271 140076220 880068144 939814368 253473593 10698707 764937824 591375346 805606759 723779836 983121329 657233281 224167493 834613883 653825130 619236870 218901713 337890876 434222433 128585123 901421391 418201186 227681509 342646656 298073028 863491180 342899444 201048026 431049575 751345088 655339108 758915737 427178819 403629522 689524315 622163570 634112427 661527712 992950824 729332118 400587696 998786237 782687159 394621994 563700971 148327895 579880490 644197681 286328479 356349169 122580657 898789515 779031110 102839878 605080368 4034722 700990798 73740926 633107900 989909512 256918427 824555124 425647436 885098359 297530228 238681707 8719629 188906475 418068454 929597865 963080829 471738187 159611621 310063389 646549807 342370630 52882664 761347382 474306280 960795933 481130783 789583594 991968266 413340664 333584829 331832433 200059231 288004850 747239223 601109143 653262030 614202106 555125715 195293653 342061003 52624132 999545209 198725477 195965988 543939562 928490686 536928081 226709319 621496592 261640198 638822391 231863752 868158041 530882669 473114258 540046234 316452573 718860796 225186277 615377441 534870185 546948637 231394779 45728199 230514653 654527659 111506635 133739849 550123971 421459869 23956008 42072396 634700581 545274817 745242125 458869078 213049619 459944790 195339630 440764335 882154477 345776323 451057317 449735782 456070114 332188400 963771459 908455301 587721918 131375999 271684764 856684039 36182742 898696062 20914839 793082010 711814357 72261541 667311966 20218213 901396912 48714849 4199111 119512732 672404059 241636901 728736990 740153308 528135417 573561952 358333456 301533429 529587400 939363798 24467690 453409931 930178905 924424977 210952461 682978241 697510073 654598822 39040105 167930108 503410016 750550892 811051026 556602373 774081816 741227156 444264377 43087808 731074990 309340463 971602248 756352227 631702323 629733580 873495883 763890842 750815220 396260193 776560018 706486091 699915852 409970357 286541390 27907976 964009580 117272685 870821327 572809563 544536053 718816872 819730275 590784785 920555052 565913771 446094638 717080206 38680454 661771922 364736401 554827978 330565638 437601814 359411232 251049182 327711464 285530457 517869696 142109226 782886715 401553033 899187181 621089677 833901455 736534133 951500236 105302908 977885246 444694005 636299978 9798748 809535871 386343723 727769260 106867976 497313873 79451754 649012486 975737875 212245964 371063983 129587731 175334971 253121619 307933354 785461297 823443821 263425064 161387605 568177449 861584903 774439898 826607120 293763944 17707696 744529187 143918420 314988493 154905212 625216506 895485094 766298145 744315958 708414923 507434387 317777982 538744917 92390531 922688592 811468145 27662177 485430948 406125784 623295050 765794342 528419084 54456806 43669897 822835109 214822573 277375103 8520401 141063900 336372909 64199988 281790891 311640261 660677700 705857559 515811955 904608560 123434012 828823251 77161989 212276390 937228651 990592214 877828825 345281278 55881806 496697565 899345976 520587520 330258921 574024086 498362889 412836052 366283837 533351219 815148191 433965178 356695167 199111268 225926855 85899877 227820922 613946008 497833798 527459114 73189116 479437847 596722857 954033269 12461792 433035998 47444063 470204438 783271974 838975292 616212660 379614651 70490892 45004119 793246650 203150764 60308378 68751289 904977009 200060562 941373074 789077725 292657892 298676925 588409815 749550389 542523316 571642495 488751265 281674637 457234216 312985838 598655361 286009904 305128371 139364751 527687713 650345316 415884307 133883551 261503496 935029658 429562372 769817811 372985742 907339207 883401767 557400802 546219987 532287115 360888373 93519017 35064117 662755878 721363332 366202038 626252594 432361905 291123002 569882317 153214525 374122402 477020126 897762107 781841090 123657817 158371663 222695814 216120468 477311909 481104471 220613640 84386421 794064045 716452592 438549213 482766031 832961137 494943950 20154658 592579033 919902007 447359594 972104550 105548853 515545694 504511364 798810945 374473921 927539998 613680911 863848281 792035732 314194435 797837509 771779868 237192964 137731182 334999437 44721890 8001143 910093951 675011673 195457071 790187170 606514706 809591204 247293137 196810996 164889300 471625897 212766663 486115929 524045786 341552955 30691729 669927030 278684918 702328561 764009051 534783065 180319459 997223720 221318682 818621967 711547057 602325203 92834235 598853665 642634009 65813359 696891261 356360727 638818934 385814830 213770149 182927290 459660051 800091978 759044 623845680 587590046 158134590 374903260 948802916 397395901 872840455 556785885 415108456 868071795 646490041 771521135 634868037 629272303 763280803 966866775 54064497 877538872 981261022 132067431 287886592 227045162 102848010 991775355 137084640 838237052 534691901 300704907 45588781 48333014 698266357 39554308 932340057 122277554 597153863 118309745 787682679 338288900 490196198 245415761 327888846 180294822 428353476 198503036 663638822 423410198 464926224 667979534 270697485 963036641 195619821 944918444 721281509 355375548 187481704 17501293 846685895 840896977 110252608 810171899 704871601 467604406 84122444 625209232 810352293 107235883 533134585 187219791 577657342 829860255 873239248 400884333 32209271 674824722 348928829 703092019 726454559 55518624 871846025 580329460 856308400 125908486 239215944 660252580 514256819 244064400 807923058 323969664 126768426 1006457 689789102 137875618 937574856 365504054 417190109 700718340 449613078 779041965 628216506 371861656 796862848 356385409 958165243 724568191 638190361 378761666 787818386 62953356 356042966 250354646 564423353 482039954 98726685 436891178 943025425 299397856 220951822 688923623 517863399 503376153 848574506 393956547 245302156 36612529 405066688 752239528 808522319 309708363 884355523 996583174 468130748 568502643 576709737 307065063 87399152 762045505 474577253 867032618 812472439 103653428 606880032 777620346 124159510 386687300 455986369 688313872 170181476 692458832 167580329 786284970 913954504 285041607 500213155 817827267 996518217 951756627 438258465 274665091 471183633 768056034 80189454 227521338 335481990 18391975 909094411 177115130 905704019 338384046 876451148 269586497 854549016 328224683 836420443 101619892 258768842 447694582 395697956 281505690 326614572 193291091 52116507 671971535 412549317 56072211 365203584 527595444 834439051 849046537 542849557 182486864 883408713 449857155 838984179 269960885 698743391 738890897 480973905 883027697 539816876 793294100 730946981 811452668 962410525 530588712 733284221 329867066 992230491 990146158 785251215 101870121 239701225 656608000 367983732 553894600 310805985 570172510 522561016 727272812 868827425 160714142 119176016 950795800 598899127 250191082 454191581 257471654 780753258 441057430 590565325 987853935 737371304 362974081 492956975 830137643 493433692 712442189 20661313 868962663 2905511 558140072 190143811 192118992 917193844 137008129 110461684 283045905 694193000 885378246 550836664 189287117 169994210 988421905 980174130 381251250 394545975 816541230 993453605 676704473 637215969 391471001 82581486 180886380 337098558 19715054 697221929 55379587 627953269 76833940 705130156 783899669 748279139 790837222 517840615 773664093 616800297 275190207 839995821 549202412 825935548 949678617 329269327 622784402 653627125 382008566 865847649 858276378 386373621 66613043 120326772 917171415 631859499 210609226 898844994 356037565 122855526 530861781 924211497 683354678 760651885 737904256 436617189 878796918 697485182 3846986 391864095 954381333 987075139 520699606 311753517 653016668 816821883 335888248 977819288 900830308 917768488 179810874 957112975 960522118 497736652 347394255 822567430 79798603 531079030 490856259 280520908 458039355 267919069 765095348 800786610 876376121 364401873 28719710 67467853 892345449 338740211 38834638 862560407 220065768 440016301 464066351 483233336 775879637 841523163 395694028 53439906 199583904 888280236 294594723 466802315 652013585 867599516 802252272 765671666 916995308 940839913 188313853 63071840 747953640 303217254 462388161 818622006 690824222 372728388 342673868 828528495 393027760 670443648 983715293 428566800 113168025 632487913 775132069 897395131 510323296 844913396 602971670 9344941 201557063 402132899 484306553 504861062 622612299 643584028 187156578 119640104 800262229 110575542 669519633 966928634 857666617 36580481 326881555 977152020 991978091 26150197 498451395 821637954 809785845 970505305 187040155 133887004 533384356 886894519 774320958 315147578 565076022 664466216 984525198 343331862 828560673 753460038 994350428 422820406 687784882 701748491 139661937 78921766 486424183 203167236 50959639 978649012 375323825 722286223 118039084 584118561 316400055 505934078 392710296 370162779 343808171 614465108 909483321 612387257 241829166 600496383 711176029 588992983 139849318 279373024 24978890 845525134 365626465 974859624 930812698 611725706 26862709 14254821 387520336 326408465 782091961 280647962 357758902 595711892 424380175 289414604 184738186 516336620 806218765 807489780 924036487 872628097 624644501 309242527 584123889 572035225 3071482 150529091 456182754 258603606 889506890 422996258 487327299 155069092 750441432 440946664 227403459 369942452 442842873 584848821 358572378 342837812 62574160 44389121 432344741 167226471 413786067 963331521 18513395 671269752 282661719 422777073 780607201 4212875 512815146 62601172 243752056 188284170 549426997 743345273 824121502 813393205 28358710 402344216 690654279 263972003 337748205 443218245 294392840 724288684 622322965 390340998 317285482 326388848 254697681 292773939 836717877 397463128 725520275 189053812 516228076 882295323 662398796 507342331 521512478 86989093 307627500 347459089 998668074 820050321 912517750 383225025 532918180 57479622 660250678 606466239 291363850 687641074 125037226 357559730 576982266 667643901 961046157 287660397 490780668 394479715 779660016 191735557 322530810 850261410 357723482 74141976 234530207 994390158 131351172 829198248 110511233 911388334 773221708 142263066 448920450 936400039 871476062 924812332 234268723 163109944 266341580 735147208 352246507 761731038 360470855 322957725 542816661 507305557 347238407 328762914 367663010 388591731 406479324 826371812 482735254 375651340 358148866 273192024 193963289 426986201 209947727 805402468 666227077 519385221 358730506 836067669 927483996 763276359 1138003 591682164 904835195 627495145 74396379 690710016 485787557 193411741 417976595 34403838 10080996 857878977 437652484 879486138 823705635 205477278 567700928 77496612 460354450 54931697 921291456 488945422 280467395 283392651 980667535 298895260 301191764 765659422 700510885 639042072 699283264 128003829 749539488 776131499 553261115 477992516 838609398 886532059 605715174 355711677 325265665 37723954 332839384 807339755 675031713 133692304 684391090 960189000 234983549 887174345 833587656 809446134 863505748 189727213 998890980 495517013 160230359 960899759 638532931 468517238 479222753 862837984 914943339 139899568 111169987 243037147 796651364 882651673 915232043 82560695 452253071 450436832 250164994 932594149 840587782 422309437 178072097 505816772 105992085 944636790 21433530 631613501 333281529 49883456 45574550 565991580 794698354 149290059 348735819 92363136 850778164 338536790 883442467 797647593 993134130 245760818 415535463 743479953 205370948 200992443 931986262 232050653 179303411 99814635 955782974 136848719 816951423 339232147 856922323 936028949 275114703 350688520 999082478 895579868 655447613 537589151 954974331 80343217 593900025 814473283 191923491 416121014 478965380 692107568 578940962 926698251 530252464 722815119 712099292 86954468 595656711 612117854 1798662 835045836 820602676 158689319 981481042 456563058 801331422 984445541 539689685 820020303 781039075 294532426 170060655 949122749 169264266 121357325 81327201 159521778 220403557 914257624 363037972 189617248 104007584 188154390 834264256 540146570 107087515 861897611 513991183 889094644 267194774 557275744 84589623 901562968 75963398 572812344 624642597 66679358 695597103 454820726 235643606 698623270 209649222 623923173 843020189 486850729 393819045 212586435 208224518 186008499 958015485 10903698 357403028 309419985 818645345 214902824 724399881 230237652 337875119 43055413 979136337 261346181 630669279 303101211 301478284 713215718 501922697 936439875 519820397 862743703 407356309 562349305 980529982 48749536 333657528 838829401 10910301 312589773 376042601 213425251 862467764 391888733 506506791 616915882 627146315 329158229 374164339 493891179 255381112 706862746 916932293 147510546 801220411 794296871 997501016 878610885 856778402 959381752 77262646 528751785 739087745 987075028 516303819 404074610 961025763 486369705 156345723 505625972 359853913 583432013 560006027 311309025 795201725 831114776 364583910 301879460 950727868 140925047 856895236 389897281 963609740 685824472 325619713 697848242 16056267 684081996 49561895 480842125 482197463 329118482 133093127 365090870 15229034 128664598 551358948 308896911 118961781 744286749 20992784 708132475 541911218 369474060 283685068 956646090 944733494 57676321 67294485 793152487 9765471 413301820 140230875 700238166 340208625 557459620 556545964 337902653 115402473 414168970 69681205 173676003 868677572 424053024 364291481 876727716 914477648 446422646 503892649 625857276 608348733 546173292 312348452 571141998 232646917 234072187 101614478 986727159 683979299 401907330 901196603 979534288 790038383 208233999 746781735 378826494 437683862 458879470 440548766 203956513 631561745 217980832 92269140 333091871 558285390 187528584 674292344 639046076 876837704 765052816 838380541 729508726 545988167 204953056 542374578 213872532 1011183 776774143 327396512 669384636 391897461 572162370 245573337 238724949 443331717 748368472 734724948 699864503 134475107 400479930 488058684 326693818 575006458 429761036 6645060 840441066 518673487 76357795 41474143 208105697 516790085 406989595 907792997 335077607 686758879 793121974 488474220 330917996 882563005 51488375 639965102 221366580 996129970 64381979 875748373 242383197 892992161 502343070 577956963 386785167 831753473 388507141 650636766 185813408 505226301 340614355 793249395 609833299 716774163 355074243 72797308 606047077 241775846 444349064 728011896 610595583 846028317 872260512 908991853 801058000 793372353 22304109 495629999 203484562 934172523 34807898 315960536 540717242 252331103 212206505 102392892 591096204 220699072 529427416 481043750 546463479 937769518 146719588 105401903 515969313 378646061 117811825 715596831 255611476 998438585 917035360 538105228 797998200 393476793 152103459 383674179 501434417 534362438 568567688 856089581 596241820 622686785 622125701 77056818 60379415 197979074 710169908 236615940 448401195 691506498 837698700 64869929 23703329 964783770 161915471 52438875 669713666 487131071 59787315 552934027 594955327 491927528 598158330 941613131 263450940 522596443 289800446 380078567 330550210 966555944 1835350 884642647 704331260 651360178 334375857 914679243 509762214 219921288 973824999 613744024 363007875 546546469 232468176 523819033 176024002 286930439 580857795 80109671 108973905 195084451 741011755 984461806 574216855 560893268 491415773 656316347 832569246 89885832 225709960 232550818 275007298 524365036 999122131 256756992 756434881 963140570 293837234 837179607 523894751 411295346 527046640 643735502 970684693 928008348 123713307 470820889 285944835 997121531 382213826 505592192 176023765 931255562 489392191 374030834 238769311 941685314 513139361 98249308 450865257 351253599 600461478 405937409 660094778 380456356 671200962 858847418 407110484 37017841 426252790 105565969 248176564 157790634 336783915 867185201 749892766 190601321 23627808 616391675 192803779 936704890 474091004 617964676 23471473 486837699 471860299 674746146 55282671 911465779 288640862 795970870 531587992 514415742 157261230 4300377 235048553 59890743 686214587 610616943 605824709 276467517 556654434 662053540 250969202 267278254 626852259 342881447 333970980 779056059 591644640 636289352 322853453 334347415 4081017 849613017 62160048 731721643 540517142 190865463 213684887 420541167 42307966 752719498 59225083 876089758 604241862 245609405 197229478 974715175 551388724 789382026 239344575 683911095 279070021 610841106 596887210 566568669 640138051 388299178 586636542 169567387 62066830 30922482 793704640 929906201 708956885 130072060 105202237 652699956 902828469 257395042 725365554 207815314 16107357 273549075 822331766 638280018 913174286 941617336 127623238 509800428 156294781 355747805 341225739 291428522 673854664 435168183 798159334 258167831 167906342 456339828 363995259 631665199 525911375 213721235 573970794 733132266 586486270 848186455 86026510 317552706 872078027 291015315 589307301 44914753 800968057 913434200 112808870 120148213 1563059 123538983 466737441 503220493 596724752 721944940 768213470 254992867 530299750 13899681 532467987 138326214 947633633 408187573 388978831 841774248 407894460 904639737 312875507 842785405 211834644 658786509 520766544 637949272 142336546 989665805 388858825 351543195 398539627 898637853 537910147 52710884 912456391 590457430 332528065 777345089 914133777 671338142 38940247 269098434 80356283 333004257 85980318 819279035 995122256 364266014 463291690 985071092 856099422 168494761 119410838 550008965 807870407 136893431 763505567 545903508 402023417 871191741 677513637 972136663 93924905 475257163 184334945 479855382 656565142 317047026 616889321 250039127 348626237 86111645 873060965 629122447 225585862 77600319 974908856 933734945 507696968 291083062 281863771 250422998 871286117 109314685 52058562 964268674 573354350 773110922 861608608 932424810 707317917 900780789 101340270 469990651 152593951 249559939 252443061 765369681 608308095 121926773 665222379 971379749 252709816 561781095 2406048 996223294 346545570 948894269 531804623 587653391 818391292 6564884 252040643 283483085 736965307 443147090 561239321 821087951 720580792 910730635 276801056 291935096 487353066 449155857 586379452 748094331 715662208 839804983 9411168 208032230 25400498 925096993 169768441 606224246 976564073 60732507 343744671 556595602 970924419 681034239 182617898 318780541 766689842 290663278 156939356 750326232 921411352 212562283 516980209 736480843 823690797 483745951 215272983 632920297 758350152 2859390 958129899 891683415 670158689 646985378 599729120 375031298 661960918 636183808 38050942 935604695 928857787 948958926 695850502 756146945 360616053 529484978 311149427 824107859 345909638 701101834 342589052 564950597 7344387 759678513 882770832 978902002 54488544 673559003 200802468 873173821 476468053 49892177 317266744 155979952 962144513 189165702 280902056 395381508 47518262 127861097 204939986 294943040 604307463 838372321 283787735 80586399 725770968 744902956 53143334 273824811 797352082 417137877 443895055 702047628 214737930 985906704 823269458 218165695 591236117 12744888 733808636 358937172 778579497 47751145 827203688 616399584 552331095 404081672 88735833 705962281 830903668 480299401 29544080 416845495 832317386 958128239 514243659 245243709 346507130 629673347 318286537 447340600 189321964 998102479 966727598 364764603 540701808 157854436 539144910 846322453 545274037 223987712 231803634 292408794 901338824 651395159 588623701 482321156 382599577 290098658 594081075 601733924 136901154 744478317 434428806 614467644 138984980 699986551 395214235 839538094 837071101 650671236 486751489 611957260 44462651 82820925 984310789 338195968 489374419 846748529 229513076 551253573 681790282 683227643 304267505 499476855 780542749 816429998 22054973 453443172 740959494 638957126 89764139 359515798 746304618 515500852 172673405 282205982 329094752 737139194 421099069 112943521 24824265 867653128 402806604 591974549 325094105 720192474 851299862 40275759 336126235 574417137 383122821 583087495 920342431 125397386 350318858 564383447 254713803 81197488 221498503 167164444 568924967 755508149 301168547 977583605 172673440 402237551 163296825 241553548 260981933 175664851 296683495 25605367 964022535 774309255 552124071 484300174 509028430 506657758 231377032 964191100 945670175 132426967 151544113 555847422 356163848 825208446 2505806 258860138 644919043 612748788 183233248 297762267 281135083 155013789 811202686 268250504 988779441 988853547 743023795 997855305 443006303 327217347 989830293 709097683 16088919 24785028 373728090 713016020 229831682 6622347 624853827 296890969 79787246 508424510 4473957 587481647 139288215 539727536 357596897 505086577 162587039 636423190 22429901 471480433 537672761 801596292 858077097 117500427 812791412 362959295 382989300 455740191 634447913 787909291 483038816 30619312 135343006 745536136 30179891 226183339 45154674 842495009 276492436 824725286 857334609 268301935 330006308 393089177 558066642 305887370 131466653 492202293 222116953 911665143 955022631 125367286 788426612 992490780 235313767 662245135 801259143 589592418 769569844 801690588 152271563 180907052 286038592 424127215 979292407 226330873 489983596 610536192 651212383 560352731 518922093 768733857 658618357 414493079 154383762 552199083 485935484 237620970 337130412 401773507 586601196 242203200 144788411 397562475 962497529 7056454 223643867 178387000 22866777 905959448 370811247 107698608 708875338 848067056 929585872 23041215 375785015 386054456 289641599 82800084 702801231 290875471 918381219 166754242 31811618 464376224 865133226 453483196 857953354 292844125 89985046 522989402 494509639 214989366 798763743 121452613 910783046 760950387 20874976 481800096 303212639 800669519 502950278 128690559 895288586 397243781 597690698 476815445 921526614 224923684 738714877 333683905 938606869 416382005 331871270 822824331 720294948 989304056 457241311 459456613 523252077 511710122 349485670 192983080 458169621 702125680 343635951 213419223 450337705 765421770 727598686 533916585 503067671 989621610 643376533 243723014 803805012 924350880 184084340 825725103 940538964 708976837 113217939 663863619 77143176 786049480 582074044 717453100 814110377 400993711 969058520 68620913 296418313 832207504 199210286 778886017 574192140 677620506 306612301 604457975 68765784 473667429 602146330 30319768 209904358 701402366 458165102 247771853 638279163 871573334 396656987 471432102 22193709 88507494 174481335 974120726 427010988 840622096 77503109 184700693 416794032 617709919 35656043 306844748 564834242 985234206 482773989 615742774 475146666 110402214 896716900 741386127 997778870 301139581 73002414 225142548 925241002 192519778 492187521 748886651 961213463 651100762 716895580 601311727 857425237 205817928 819651291 944563954 274875507 558454526 238868987 948657046 500362231 754859938 974857667 559846802 151085451 265560144 784482160 805700544 705314946 273582651 808114621 521565569 140061670 539115653 324551460 338720966 339284951 930532489 610580417 636577160 676926544 126411143 17925550 11084787 158152909 698823791 873142986 912072558 69856857 132416525 974833084 968797683 715846013 205699838 685063986 580903070 116651468 9788252 387942562 941289102 304325454 379594398 674564410 396474598 35938225 106412691 383777279 179049026 331777039 919548708 577395300 474379490 38483892 282842540 986194538 158048317 292803369 483777452 665040101 143131660 68380476 693645167 763108555 898236131 473228626 637609962 871824508 456010688 62088858 521111909 273337140 46281946 397430482 535385015 33542388 41802663 869802500 339940903 525206022 29948776 541052218 624247401 820366806 527293276 367747060 504174924 581508154 89088428 595514361 102856153 639020252 270159610 196298491 503657694 418259862 488527649 255111400 113873324 749510649 349536969 142209516 935495985 31513107 753543810 130161932 681633390 281864649 225917426 203747195 51644796 396688659 123784843 24803732 236924558 486277847 649086907 29351183 931586107 276457708 382904003 564499916 401513319 171187823 565152118 890029958 351346660 88809090 888635603 594307152 476026131 711337617 10061673 890639802 140872869 556318624 110415597 497485728 347309901 541268758 33205347 726436315 189475073 114330230 179567342 75430120 9454482 840072485 681435321 330490478 97187642 396689077 726982711 413748813 683057298 521569282 768634499 878157212 159421804 972886360 847027206 795935246 835961444 532219466 271580898 397888601 880304322 912609536 930637672 570161415 15697309 606302688 767095336 230348913 264207694 272187019 467543645 801171675 123131733 465154870 765608447 653145509 298653056 382756354 380053625 566387412 891131704 464946195 111208209 631178518 162705751 825504889 840771379 204270493 540127731 224017075 396485769 420796825 130319706 63564918 801552061 345407908 101189466 781056198 14568475 472491485 767506100 240800882 232908187 504388389 236236214 223854985 60739697 676092895 534989011 201856883 420161949 642674335 848179603 870018615 725833333 308586486 599018625 232686993 174077711 746525617 269221893 707744862 415856338 655643619 702461436 860361077 342810361 271612766 343653174 760211381 838296307 481223796 904231119 500347302 791517568 358606112 833166116 942274044 158504015 632129746 866550322 637510359 754818669 688535358 440750883 57693114 863145904 134814869 773182537 49401608 639230131 642161932 374640325 108812955 726936721 325972706 9613632 667333190 864446484 203098162 403441175 248157916 538199272 223978217 379153884 321247475 775361690 570034339 562108203 375130851 950349420 776745445 912947911 628527070 293799159 797235267 916865147 474557863 164851994 510125575 707212284 720013454 518715244 407404181 727177785 745967003 672645384 718488117 970596353 163729428 782688879 308131998 449204970 230841952 393683374 183813344 40100350 38845489 369794721 526290385 270436194 940745283 686321414 926625359 388771286 738669569 142073070 632376105 749281086 113119112 193795096 846255943 817153414 496035547 709676808 690598656 314664998 980539766 19668567 713586948 809927976 551094060 353742433 756208790 497027199 928797963 261440654 721755769 71433375 368682882 195520152 133132827 126580586 466576113 349442321 206628823 601306766 217484857 781022664 220442500 315442675 383405347 472929557 640663804 232921512 79237965 560240252 723631088 967392487 852690758 478871594 174404333 641783996 581480501 964256829 499135135 647256495 777027548 230793396 142785016 257237306 866636926 848620721 533728564 639467521 776968003 376650299 547229338 571453377 43379217 243223757 948756380 984197301 307307896 219239056 357306134 366145317 316320362 192045940 979521864 892316571 893377776 545238573 537048524 915068230 490977787 703278651 819081553 430160502 2544367 980490175 644462176 352045645 521912375 151798685 644062830 929112961 320099493 66081169 935000697 64313903 158897892 833243863 954234416 526678820 385622894 940451684 483166159 190982423 350536547 361401727 387497798 292990690 868189695 161698265 8165054 406661016 895551442 896677391 423366048 658972895 82568566 104396226 4106825 139318161 755943593 27382620 324356087 423895785 447726646 373879970 971922467 970403472 623378609 838104053 815355604 778158447 228782819 51938573 986056770 617025800 528674088 669984030 578104229 573076466 683469219 993047413 764266215 67407863 19489563 877361852 864253403 713682535 73415770 889326257 1031022 472250868 481268584 864762871 787736953 427442879 952125517 570385179 493535480 731737923 823722552 427968394 615807534 13777512 295186983 60294650 265126015 830353267 426813829 276079547 136873052 588460140 132410973 61959528 178804717 412509290 569112746 805231141 783354367 190380550 234926169 236426420 780601733 613035352 679033402 865909410 568576035 23249605 59607495 312612855 151840908 80390800 456206916 655239303 574169946 336239828 160551951 493999095 916214633 521428816 513278745 110960380 694739708 857059112 501371859 787298815 618914855 902346188 454305748 180389694 38561100 676578070 834383860 436290956 439130641 856242577 609964007 635975252 996332521 205561401 953797883 497068029 532965583 188013263 349390189 730506879 674985374 678165835 208422825 639926906 380453507 892917766 658591353 376547137 13730519 789610083 703021712 897083643 670355326 537274430 92655447 787364716 579691199 637657650 78172479 825860212 373869201 79286947 396081709 488256454 339077374 392166665 473367873 794204296 554936569 556951099 519039391 425065830 463936976 903416469 11700823 6916198 975095406 509850556 228003599 677353620 587615906 882010512 150374392 683355806 32243381 665897520 420431953 458350164 911879423 160054649 492174690 230024552 290184196 530987668 317058891 822963709 93197675 600360565 758373736 834125219 220516906 712362970 582066361 287450629 756947471 288568318 823879079 243552026 181076978 75668779 820590501 813041461 239665773 676817806 757090284 222001560 196197919 814324833 470655673 444444417 553377306 377427431 69716167 184729878 615917388 857014476 510924939 220841016 742871576 368033778 85907709 610297323 440459050 334353093 221313618 513216640 633759093 573059031 859853965 49529364 10137806 19031903 569699957 695575417 546786269 748098780 606605916 871823461 295621513 443843500 462046386 474336508 800731376 134501605 286565779 13317531 32144149 8791736 841251925 92664527 247020534 69627090 429105051 432573999 675971631 490582189 20374611 797163383 886574194 313968097 190708935 278122854 175834396 360078472 92701849 684972493 480790610 305537799 457414663 619866829 487779767 23422038 730629680 760608147 562821867 802700240 403873641 30016607 521428937 923283427 518001172 173926432 864494476 19428026 252202225 605393617 978182684 704368661 68729602 240517071 633765553 626572306 308005856 877189719 757875531 626113316 900937519 505996426 150154393 236755786 760000941 281958364 904112325 601814860 249562136 432760378 966109914 152813912 58188889 422658031 631113571 935934578 872886491 509852567 17860730 946172538 374279968 117720319 385169210 728790547 190228670 155625087 989407642 14098042 480006922 825868878 279519515 226860754 523474152 1174985 552708909 449187787 820290223 816504269 41776855 790120033 406510159 479398642 501158788 563331487 138983189 400278902 814755237 965497028 946645661 400682632 962697692 659771680 211346397 716728441 866207945 787088906 999136208 652355404 223866271 856762267 405471279 947756453 413496848 828035267 983071345 175313897 884874945 903240375 79757568 448455519 777531280 511309999 117293797 513495595 898808984 13918489 271421717 771983730 285911648 469660278 980069437 929890398 966457481 943974770 207559199 776901599 442636874 805945160 189969309 45513685 752643362 448454366 95467539 946716478 176963913 756752740 282033092 10522739 246028876 839283512 138698360 100456984 678227940 849974179 745951549 298599022 352521679 444645066 495985302 424066748 772729537 252100722 682395719 877493518 920751801 510608725 641518153 940167650 134094307 992001214 819216749 824130814 824736270 567942600 554047128 580422277 200349397 359002847 454751191 196471799 897171808 275509233 10452279 234973552 288951050 717331877 353338998 888407946 370763147 74107602 374205636 463001615 461069474 234452118 95958281 832823815 759238423 643431590 995156511 53017928 150748201 968221762 673435216 603643832 318713902 402960428 64973478 937484287 330586385 930906755 299343817 597631907 309625187 889482176 913909549 951244881 657250830 131631201 580037601 917598926 469848171 457302625 37135440 23743748 580102102 475303286 229567719 8558968 568066937 320800431 141315775 782437972 81615287 769953668 209106246 4428415 687786836 89667622 834502647 52064077 36297916 935458556 596853779 734652195 735785228 553899530 731539110 613005610 322388014 483958248 993960130 503437961 450319746 613988086 735469018 164978813 236372920 930351988 463267661 419205836 374108967 963036752 413725329 29868404 56218661 265912495 731539979 163561842 672817961 870862591 239218005 681957976 116012294 619189156 432479980 687541447 691882451 814906071 865128554 135969507 937012849 246728080 368616758 550272860 333212944 416624589 776991662 218507549 258607436 678824163 840409346 530606633 703253806 664653136 547896375 355909215 275822925 769303901 343444381 358963158 882901371 981300036 347195121 577169656 286451221 732069988 373190736 626268875 496657386 70006397 597548385 376631608 704207429 752282541 590684442 46449269 348439695 165475460 517634071 875691275 711086407 796148218 157781924 47387622 172686147 335815765 356363877 546103761 213359802 361220528 278416397 598656594 18576549 269879945 393683404 585561303 531306735 230335861 298723710 185659325 552707421 330849341 909563879 132691601 348514558 103309719 100704409 580328782 746448238 652992991 11738667 854773879 683239765 308007133 290183516 632339352 600660232 510205559 22938695 522579053 232437131 385064984 59953506 809923726 618819662 663195168 171141962 170326126 765542295 336960757 514752689 550717319 942141315 438481991 321060046 804140922 566528553 714635671 426765903 975621553 867208704 984868878 921032650 943025020 134670369 888105749 186897994 905900528 387634308 621338699 253647605 887387787 367908501 36437635 103946353 860883993 834033365 185574437 19147500 47575946 817895303 791491659 75308470 507502236 782157344 530252115 273614565 243769947 352953615 12953768 361455406 16119288 457226812 532465448 904707971 993582097 663298848 866246656 818751278 999104478 82515989 641863434 618034928 971140155 212558732 803059860 455572027 594331988 709961444 767154566 695239381 284750756 447999938 696853949 396647536 356408953 296503423 184635320 968389273 919395777 410754251 942094647 516845214 736280686 687437583 736227528 334641490 690682703 43095662 282160544 896988099 981498136 522989290 325429624 360414981 150422235 459998379 330986034 523381239 695525891 757039196 171172604 519135198 957273115 65445831 242371857 813902014 659759705 168041531 168739482 856539154 972348891 220268286 337445977 501894980 853071683 703997487 352264663 108900719 745122939 224330136 980952071 220283084 686431103 559984629 958785659 866641681 559627239 107530371 296758453 275938156 100469391 702173874 746403562 270148881 134779882 736474626 110275216 399617046 622204493 176461864 851153932 86508149 850020673 114103050 967239253 747501559 502763212 949326940 597010250 337600905 951202125 145197100 666658766 399342522 453135691 578713734 102144486 231503206 564295878 646795927 652030973 208131230 799220725 770245580 168228803 164234429 389698451 550905168 647059356 462376266 364063973 152880563 780966100 501631052 483207019 603232140 51132816 475917665 704329437 154764956 405413422 90370366 442515624 423816781 541887500 224224280 820502255 332170558 60436665 89899552 243464277 534576586 846609323 868188241 289123488 111662704 68955348 420082859 222054764 89233428 486820967 577315189 781499827 373504905 118638695 557546711 828206059 169784479 947558336 698005297 606454745 515023564 125772496 83899518 267277913 959770503 991063343 133999082 791822693 860287304 179771856 590296150 535399180 742074925 466743972 866520459 11484866 149145192 347852699 789261026 507043557 535866989 743121193 111810793 817525879 907824366 194330767 297659000 78518200 986665715 270443172 553759870 767421644 889391995 236171836 894760132 682551927 827385778 727897942 893618379 529032144 801103991 832675898 15632035 31424407 680661818 184827718 237399075 366118205 120830227 43965402 386228203 731095712 516175726 311401720 943661978 128352630 537225464 200533408 844158281 372663157 681670581 113467355 109748109 309776592 899688311 638787048 513687274 101358324 283262284 95826061 716284239 783614458 795491876 613805281 973550208 529772948 833924474 160503040 906835679 308432271 641839148 912637952 48075276 565670381 57815078 629605540 213615840 729530500 43334123 701658305 302605123 783833800 425957304 47730124 769709099 957895818 898005759 479428636 174826405 440880516 108059533 903274049 504800395 593163078 915206259 977186061 783668353 32892000 14458914 255823696 594149459 601648369 317144969 37290831 839163178 308717997 869381628 291632741 54258042 618857549 656742212 769629817 935307125 786687214 344838087 495850885 447529414 406533137 657431946 51662257 923978311 775260651 673884351 846547429 552003913 32150031 462930946 267473726 81861313 173273557 244714459 750843959 109093112 969888979 83622414 213517774 48749391 435680030 374230358 801944070 806494015 632323771 724637394 850849810 646742289 35892910 539543452 434048901 107185436 63344750 219219676 146239712 278913317 26027683 890361703 33777156 371942906 223676031 95076018 474871244 811187024 906268995 917592666 539482041 866252829 205751539 639068898 657969362 484664637 220056489 127314442 610467488 972482404 5084663 642964494 199325654 812869207 7407552 183422159 804935178 667160309 2488797 578240229 826699668 849166602 453956187 970360789 131563875 73313664 408976603 228700258 948778529 733558506 393207819 296385533 628505243 497506986 842982322 865367212 797891692 225449458 500340848 797228535 411689985 829484831 418024770 173583302 514954096 648676135 563912129 567073298 119716588 659031888 350650613 336519199 953472142 7108478 201381915 201318335 763860456 501512088 248654197 498222226 311472772 503568218 659113892 224000928 454981760 562397821 293589985 587288464 133226203 878213931 399311409 110997866 337268998 202717121 614949548 719612032 522737835 893230819 697594273 750094353 551220928 482515249 567947592 584466346 512757573 725590738 354439922 554199908 714221032 909715018 538208176 203367135 900187102 855929584 898845668 683793282 383507733 449892103 834839098 708989750 817970751 414917046 956268518 388310257 522077540 266040129 517042385 935455209 8934665 343373188 934893974 858555123 894659499 183319299 367162639 201505194 564442905 24247101 686448993 527819566 931950968 549134027 738451227 747928904 336822928 320239679 376034815 602919172 897863137 897228811 350928401 509719359 429812912 812697618 939941296 820203078 281176955 61211675 919978312 182998273 133303469 440546956 815206442 56331232 615107042 238434315 702696397 633656245 578392653 771157186 32580147 523636558 566151742 251644099 607406045 414207033 304661338 145638439 648219347 181178318 418291473 932672891 265487173 321604023 590149889 881910295 27339801 756962670 685088261 490763387 86599322 407903408 924184864 481685298 947115770 319628811 637618125 344256301 235025342 850387931 409756417 243967797 234860806 514083234 585972424 30317744 538472740 626470654 952525615 465837341 289421666 720516503 352032186 537350126 704984371 611854591 176683656 387396823 605179457 170376077 985694924 242811230 512459553 75436035 509221418 406987213 556707529 519109704 49641 46304418 264765311 285022361 958872642 207377182 256153529 357354124 396956762 167835035 905131700 405826719 297459424 989735138 840150513 382688585 724646812 230561471 627956859 112498350 74723459 792155830 586435697 165390109 207797993 866846568 362323462 786955541 3951259 810086392 748575084 879883899 139462245 904934350 296133290 817543327 152778167 176235906 780900631 450869467 415127861 36063262 756676820 261741992 719549762 453083522 706765481 549695585 254517887 824965756 952307047 865319184 563939661 217690824 864409788 381154557 479520146 939411625 305019602 886696119 535376996 309116780 89965608 493304213 753744152 295619741 180696066 926698739 984835207 623302607 563067838 564717390 907450499 767407843 813004426 520622951 472953715 672167886 722787309 860607979 60336980 560956616 892946414 645658308 457018763 317290376 45904025 480375510 887269363 611815900 772448391 382339672 157740144 379150763 490547136 505458984 368856693 469828779 365120853 402541889 661058320 133384742 957218066 807909873 2915061 421322054 422569047 301322357 113620425 805795229 844334607 218403376 515594146 855813335 363550620 921197003 645886351 299307599 594622015 466923281 605462829 176063343 186073777 408049105 165177336 659844971 537131432 712705184 449478621 791994469 257371831 572675015 231781643 182215973 940894412 96221196 339180744 744349620 249360476 297682968 635912144 872440686 610557498 292314542 937787518 150861057 349323322 925532382 363180212 251021676 332560788 675296083 606932357 413690609 597358054 419507665 714433285 603065613 802346334 542041125 506986095 83228325 557532038 645056556 931907419 312299980 407038842 257368550 573776078 418512959 397739073 290522320 890255674 854560050 170299045 353696218 162546760 215418865 608757396 714713499 438580233 16698687 499889084 569308898 274617284 479625754 710707314 726057119 593003724 203139121 903654597 349148382 287260761 870642824 965680136 548607067 472858931 703877203 903327638 238230994 755694648 428385750 603039338 658057971 87702123 110550221 273584597 814580586 214290416 92191632 724510850 347384349 615716468 100444663 478074583 456726804 325825097 525882791 504354993 374201035 229381481 167663725 907533921 65865410 897132536 757856999 599801395 131424927 255679789 880588110 821847469 914318749 167227064 156721507 975938796 407569747 732417367 207488469 741198471 767273835 340179989 854360388 587448098 935241715 610265829 307539503 404881162 898821891 749313636 511354468 488375172 700927110 660860363 460047561 443271922 107922752 904088399 440703462 755737215 830993903 295585160 700420980 416963142 333383305 690782701 370290442 253923747 326024632 250873297 393067037 571903797 575082489 342478442 798186637 410994382 486375143 5572103 307929685 441586077 854973202 353135667 349793907 486153132 831158863 781802396 414377747 163985203 451344859 850423784 443292146 730818313 219627570 183178039 189540547 553739446 630077401 328397529 868291056 110445649 247340117 804351742 546954773 858030968 612687699 935090456 674228454 982376659 4774454 912989338 482472039 716306506 839948604 151095502 357381971 485476462 899599857 148265434 354882390 872238846 469787436 973752552 484338488 928302868 866238027 417098426 850516980 639435295 416258376 183172879 741247608 952767412 203448564 481243956 967819807 125728441 569145949 763849521 63793936 186810533 773597173 431494922 471389080 175910703 739967322 394429886 339337913 442358946 608866240 986603414 3780107 752670279 535617953 102977805 489813905 479517763 576770147 161812024 275136265 511183206 2831755 399505319 668613933 425165633 979104772 559459344 188129618 981685798 342118211 313622301 671511945 101596484 299076270 616640575 639309339 961096298 210776717 110725048 200607686 613065979 690182777 357598574 301857667 65382389 109177121 699761224 7858744 979459337 64764043 422208014 187775689 661701862 80106097 687186710 719670194 940490632 386151733 601733802 356922291 808943626 488806873 969425277 396120647 834168613 28803949 449791805 721102183 104250364 636933438 921234551 461615652 798101476 585048593 194027368 407571996 605550877 486486169 279968805 933080697 487076042 37240539 958421379 872749000 662994896 584624410 982337236 221402739 672694693 562059648 942877820 604786628 161411134 434639592 834513278 128163976 409965077 572933528 148743158 635114894 929028512 986965676 255207983 903910053 962609445 385541873 285260362 782449789 163930457 721610539 507215545 131404230 995473004 572052447 935829180 294228049 793709915 434796097 310596423 805801629 776267738 572413602 771068874 646315239 468385397 672825149 297960103 115611964 35323943 184539433 845408646 262721576 311183205 735195505 244668110 459682439 28529724 840750087 157304721 824815153 303629600 729983813 453781729 835009264 76333725 517335993 805642050 164678294 855821953 693579283 924369626 572437699 171238194 733430783 111149159 993690605 821361517 372648571 177459054 138894717 530592840 523738014 489334966 450880382 511212497 908337876 198873455 762087442 752499145 643788786 894739055 735825964 499399506 668484579 130286990 396562466 118563169 153574311 540856579 335737060 702773970 671702274 157903824 73771353 679448212 217237503 447425188 222840138 590660867 191647898 665509457 727194293 190494386 737070066 768903083 771720046 615842278 115084987 914397162 304255315 117712552 595124656 926022828 595112970 890395397 200108815 573703124 244255845 570691688 691934288 409280843 774836260 784476746 904467043 33745042 76245180 790060150 502213859 310836928 430997796 721248821 271954484 779515670 482693476 997809300 159015019 840560869 787849885 718034890 920116702 80956510 708772190 655047032 304037429 802467880 867240717 862326653 68046942 20404415 724457938 65168630 898433477 273643824 894963556 299314094 51415141 533535251 654504275 485858891 234490978 131216568 569260933 690420437 550435237 651981082 895952259 495201379 845553545 433728977 24114184 82131284 266099012 765860673 873849825 58090507 161400275 423406411 320456237 522640491 548951748 6771256 492856479 422516247 719867596 787014839 709492549 281565048 275363834 951292000 420930434 572313830 267640968 70914789 133595133 974957159 830926862 200077349 811977970 289983733 573917340 383353947 192843049 789566773 630906417 957955046 588763873 754601324 600307280 918984672 243343993 530412385 782747034 113323530 764529097 321591758 596665651 142338212 200728425 923345919 562101892 808531295 848497845 602070733 59622721 865654233 719923270 838131666 184168899 664146462 867577541 282118938 415481477 712228424 510978647 97277093 734506561 664321498 12378676 469854981 311291391 507693136 535936372 924463995 93682657 20143448 428287090 660763017 449350775 487316740 551568305 549321760 622799214 35619856 993278172 141485805 998313241 856527396 602509290 75497523 168325899 914839680 856754611 587354369 291569381 509816774 675592693 51941571 108256210 927120940 797986020 734696028 726897042 279571262 530683768 337994910 102468070 728028983 972885265 166236778 860078888 451803053 986234559 571084897 573225933 614034776 271871426 53580429 568076994 589271608 456094710 574007364 508402325 764766973 178096890 207903217 510676183 441092474 928960658 204570290 171595759 238697209 465192799 35261829 820206760 893947623 50342157 929648144 536843622 653749010 897456076 13879551 304557152 234570685 338563736 138806998 888223910 852545527 897621929 317791116 225072897 576199081 807343334 781270120 584447688 908569011 712555871 740533631 434232490 769619181 408613582 681515499 124372947 136092889 27425138 819696408 88363750 330082399 571592480 712061265 689541251 778254917 371678775 855668776 454288238 210452630 877536335 432099707 334931214 458653101 594418895 110736903 961959791 416722347 935104427 366244490 569721833 796341425 56931445 699466558 161887400 167630319 922674849 202150603 336944973 151007022 248664483 437629214 969327425 136043915 352693866 898117522 894565277 158797903 625799412 820521262 569198760 32241597 915157198 576056895 29494799 70360159 9889889 526296747 661752533 390906978 761923558 622679598 407683021 397531409 920463203 365791524 463628346 224391026 660674862 374113300 129479914 859425725 616751100 252137358 712531182 499623011 813248331 678120917 303617741 163680658 907386358 812484735 181860352 440140989 238407156 450903278 998540680 251216222 3664693 522172455 406061308 429612212 381883378 870261953 74937159 169417498 263090421 529161917 355513292 774796664 374189404 545853163 222104511 167289369 127749601 76348509 838008602 117041841 576562934 896333336 636661843 243479924 710030477 315221978 326842425 114471836 98949049 721690753 443807735 268205682 520940712 762248505 191400606 513415419 541589238 871223973 592191699 680958910 705295350 919904589 787079873 667742020 975263280 946112863 159609984 43712372 794187100 779816532 592238177 721078951 390333777 938350913 479794620 480741474 751533032 813543245 124352442 337336437 667737110 918709090 30623816 177033008 743859004 392726209 877500889 948834030 814091867 795820728 414954455 281070524 325891497 424776897 219584701 155644747 751061055 963195341 168549635 429058496 705633864 966342127 733222631 153641516 475190062 712317082 265376644 738764832 262880785 49167602 185817457 230877252 858411035 192967826 370826857 92810376 477775888 397979340 115999928 251087578 544222680 939073014 718587286 572875332 379998299 473296409 142496107 769589703 784300293 834147744 780532964 17176114 111404415 672707057 35103967 409800092 60356668 295697872 568681124 331409883 161828442 843611982 896481327 810728140 627723572 453729064 476358597 866695172 263250047 683760968 105042175 785982091 645569878 925009812 830315280 641162700 156237582 829826233 550901615 190702966 541894808 307601900 927400465 294756840 68652649 988289563 66678673 322639391 324228865 361882673 699234478 843353068 885673959 522917022 440914429 819788870 474588714 866240605 85377379 491830075 792231082 362875806 917118159 665642927 750764118 707343924 219562337 752683471 286715298 534277187 409132304 260964773 727173756 6950228 500986710 154227752 236419912 669798303 25308558 485841185 472393465 496882292 435769742 662280807 37225677 992117021 513490306 858124992 882177095 686133728 627126738 326028395 691266299 370766609 215660732 732482805 30919098 407508076 609168369 556946179 780498018 210076125 845684051 703842195 353951341 478419595 357684319 425317420 86693095 714396624 459005320 53014091 424643172 610804010 38637183 685324281 523525906 275675459 949317875 988976735 154862957 648054302 438918249 367168091 303528374 623757040 577484614 167495556 946249786 928873577 533455665 576805627 664823527 512354618 876174413 392748253 852547508 341323271 252509661 317164791 986856072 544689489 202190696 429333970 382340922 142574640 166768243 625115423 381330170 164468224 65757223 479622678 526557848 215665443 488990840 444434052 304362112 687973936 162578825 753960839 92941924 575933424 870955093 988963928 388054376 338271685 848412289 554249471 380801678 105021887 691784935 365976757 985965872 868878805 808648266 109716111 854172566 264845321 836746478 982583294 134341345 962694882 802259640 858113758 747649706 155621711 267245660 104133477 227136156 202174949 282035724 8953107 328657199 54393834 274109102 545587020 674028964 956497707 774358557 196835153 735019684 99094021 920186465 266073063 177688046 518603663 489038461 250595224 835197681 508153225 87953608 427539239 98284466 502728738 85292832 384682565 678065254 359763567 598221427 913438112 539020014 159062275 467402712 883837292 49319718 157956744 662492110 970200311 750198873 443987912 631364462 446818854 905899544 938984021 476049849 439144201 652977024 756233793 677791163 233126902 469891160 536408681 297732297 579248888 209616029 901747294 220857262 749965263 842571734 18962522 278650379 550218376 574978113 445310112 931355502 910710579 560573996 939075268 781137480 4644592 6420983 945965355 8008931 764980106 94855978 994160850 912768217 889764015 995047022 158828153 93805246 929241414 664001658 380081571 311787008 200234982 50016373 747753754 606900217 874554720 564135936 384598121 981981123 700929583 892441613 946623911 440426252 390726449 697841741 484648055 164586673 170057797 912461283 688548746 142817005 169012329 64580612 799002380 343035581 627255459 289334107 955493568 290664932 400019460 151966466 186011625 694307872 674697351 160704781 742432741 842898996 662991338 796169483 716369550 686340089 691746970 875180363 472758896 184033474 941356428 103166042 798883814 656122070 521195863 153095772 666595532 855798574 49467547 612328887 778226895 117240313 562063657 665635616 514750931 622235530 940950746 790075761 521597042 338558096 29458858 407180697 86007676 627039302 306013747 694760269 626682237 508616638 11473800 869323622 356948958 342942228 550380277 466076090 532978509 847818538 234872949 76523274 1198038 62158899 848332198 778804569 340651 52183724 599704877 769744580 809121349 14518107 886897559 594775963 640652618 745352167 731070277 34382203 238444976 916688864 928322288 945573417 452946814 397691088 964829065 485630385 300225262 364405990 940667260 812141222 760919164 469892441 563804398 29348162 234997490 364357112 60638398 409018982 487025808 26999202 49251312 864983263 529152472 904403881 620974191 650568338 928552433 992640049 457642766 135935254 315899821 2342680 15216073 932119933 478825216 159236220 370822793 866027705 488788588 41852826 113555498 597992844 42826513 9083628 478997255 341738541 153801960 17821955 339959565 800332914 60758159 508572595 638175792 21936000 556498594 521831191 507719652 54487669 383569352 798740222 321832321 933941305 758815266 902496578 274605401 10492073 156561339 584910838 161654092 683444627 156743337 489821066 105907947 893473937 856944511 621052060 89873390 337795445 581088341 539929382 852325174 561867736 950864560 380308829 533311017 758492909 80066032 876785870 907627485 980514842 866134055 845375635 682393701 766077651 360110261 563023073 930305635 187786133 880772100 82220132 368954401 154266796 579101836 540740948 426505845 507406311 917985276 310149521 690331771 472490297 95857492 452728121 556630535 986691173 691115608 84069591 860431764 636449206 552399803 439313313 563780284 623175522 625189400 70223316 171642764 701073444 304095708 582863073 635863304 419643693 712492666 911063092 775651101 359788597 365339954 82636416 651646579 940772268 414344487 263620808 890308216 878270399 124238056 850790119 724894689 161697207 83988180 458883390 401276255 572409420 558342478 217837816 598695626 189971078 248785835 140449293 210654062 744902981 448196838 15789085 267593858 372839654 619513121 864502918 19421365 210580886 885404966 902023153 64038691 1169062 467198924 582368611 900849172 139665075 968250196 363108460 188883971 88165372 689759108 672285234 887160543 237398700 206466079 421596028 376077 748877755 474965208 44203674 8971788 350956827 759902876 835222668 318322540 316663472 46582616 349413794 415129535 514812344 879304184 698515003 474450508 503871314 241567105 531677775 916796790 506584911 719871998 555861625 429018285 512438634 939613896 436029452 76117884 79619518 319402982 174737044 524180955 645291377 156881917 249860010 47577037 2928064 833166023 378241432 747650492 70754894 573935775 566221889 934543175 189545899 720215659 828276604 748283459 87700005 840714395 352504347 98986383 998295314 658907828 212818221 563024688 465407936 626518058 503768654 981899924 1792806 81273386 15056847 982144124 777907251 547103738 808431755 9413279 482430299 656140152 189234311 929840789 304180494 773580042 665543459 863553851 283565569 885451771 646720681 816994635 292859955 9710245 952000587 484925534 322414365 535735393 164070485 917365855 321683719 799283027 745189952 72394619 850687919 362827794 334255450 810313356 203356723 843918475 163631158 942742089 168758551 348662401 888756297 691713947 488232071 605638764 496440082 969664021 347552108 960290535 687178718 353634862 297034588 557527805 629313395 862227038 960945200 691431665 254575567 570998144 850296121 502591034 306356943 821292661 56370015 629115518 37923322 926180377 195371631 430765287 947873483 975416600 392540252 175176135 527575142 858001724 945327465 988020247 779195104 952801175 784917512 423595916 737827692 250805320 160902228 96213471 692074839 86411201 297905853 36472889 509804022 495046302 870409673 136831764 796477367 174700070 675130632 608167207 797252281 573228186 170670975 943912923 650354634 429065322 841717348 566514713 789490256 39577638 639889359 711375316 132056146 552206872 239626093 529843592 651068515 675204200 499822118 542064151 137739619 233682161 372615482 427874189 53837209 365876164 767629586 881287406 186745213 728135870 240846553 523416945 191482117 189107466 656513753 154775286 923341657 834112836 154092396 975287539 119941093 182552794 69380016 609859451 78051305 405382328 72993554 500173777 951419003 97657821 373166923 325969031 239605474 3175082 157901364 942212323 551297649 757633304 554552202 566295199 52501475 120622214 536480417 109136885 15131786 803249523 483755432 527906632 999631102 272654811 633099130 103408794 8321089 504946220 852746305 189437908 27575712 710883408 196648869 598016477 445835694 773518642 468646967 163742507 337569745 868257512 369018430 83123583 236114081 311322278 792756969 93454972 930674672 225557873 783470548 380902389 234737466 383517411 643889751 947011898 969302508 649770321 223550008 566975326 258613245 870841092 210971627 308416116 306254616 51745077 436509157 265211297 949803331 70280279 523877475 964900359 508769090 586299868 616034197 810514811 401295120 101323345 153156764 241193794 29482226 311569969 366723369 477425392 586040503 877008464 948658755 687500293 107883572 253410684 157391218 100807124 4920194 902532229 151277262 315539236 717005917 268487149 573599734 770103999 139452583 881302622 4364325 556644980 647896741 955590271 138017379 682036584 83191000 852097862 275088671 107717571 745564402 614054022 977349658 520566379 442831888 386011096 108002446 877855466 790805040 436438303 453200046 353571703 334814405 536340486 137441905 159933580 884608456 484910138 313374303 185674620 912405927 742375425 697614835 943551604 15946162 991582108 869305529 271357372 417047001 871624894 58452041 313082031 932153523 154045928 335819968 563880616 307375261 668273055 975304455 650690620 296882985 494471301 974950610 489120904 439055565 853779576 217531224 45071126 150620221 451872891 881858883 330966866 212483438 184471418 238660223 938414758 728641954 942978723 440781253 897607778 965289389 668607700 10821022 264196271 230336332 463355866 890379642 367883469 518347443 995864485 166482207 705333499 683445270 209869491 852558005 816450693 859757893 101609381 296502662 564011700 394465113 66035120 550819989 885849529 648525865 738178254 5660323 11415300 890263470 399807631 398788663 282642537 45125253 134386859 263219683 12171855 959443898 701327493 281116424 92300642 325480861 377388646 722404220 229665315 486336032 179585991 975199712 377956606 985296980 873441536 967665116 687703080 39705047 585539277 720443612 241483395 282218174 86565827 5731855 339979292 937619122 812680167 284139165 461616787 905522064 123139293 506118071 72503076 607728025 92449973 998641722 667074988 732533336 769296862 409501902 867129732 969049203 850349847 860864569 419241047 792988560 188997432 819349934 590451499 657534861 346001381 238316739 838642544 625622245 602152158 149654861 907316515 111047993 561952560 707306016 869761303 967863435 344767916 589635923 505705656 47601574 106980761 515014053 316307141 115587133 363437123 871458832 343340211 773253261 757948957 881412261 902927530 566841450 143150787 928784153 500803166 701808046 730467484 40514210 201089677 458788474 635428723 633159364 253302444 44949017 37403823 152620524 978732418 182577618 38544603 160973665 415176919 412844647 84932621 355576967 101464093 270679793 915097895 748359768 549742634 895803190 445867434 123311004 833549806 861879682 726412432 547675042 360580244 912274129 781857627 512216677 392614491 307774236 584664478 921070764 387819841 311856715 740867543 991919346 501723909 427788669 994498004 127253181 533152136 797531564 662963775 762768957 880295662 940851254 354682189 742977575 665106453 185390511 562039656 170998927 687611201 487339507 586190024 240822028 771325619 272671002 922008604 252701725 157989535 271661553 259108847 896331581 530747660 472803248 264111217 40895327 389780671 229935027 568371197 12900343 708038298 28474842 637332571 854562831 96391359 360921974 94317722 543970351 197646012 792387902 236808496 914721747 374135254 300784465 957596634 658325358 154002484 183286543 31574867 78044394 859807384 170460619 384244109 636487135 449085434 14393781 758886399 776625061 62825529 694526151 757081276 117679781 587504789 266293892 540393950 983301229 71518404 136417008 969788967 608863059 683618947 63962498 162516598 468421476 604157978 186521582 41688911 200829063 935960460 602547734 744621165 640520985 605177091 328679759 517067486 767092825 401834314 686157993 912199216 709037271 328396980 823640091 984271029 718793485 368609718 295582310 796623311 806661472 645055039 525373881 174081318 542366540 9437774 772715301 55684196 776076003 403403942 899737422 84525452 497753517 291717636 777387564 79328581 497201538 600614162 764199895 231257889 62335386 725965329 547679157 756736729 425665673 209519395 833845043 312378713 138474031 58356753 484676351 829297552 650556453 678570547 884733632 323819786 838019754 8363881 372965510 188009999 582141094 749286270 598902023 667724456 93873481 524956440 761770312 184120824 140777610 558856752 57169080 35005376 836792734 711777644 814113848 912169548 75963981 769553930 11211460 20453398 748414654 610529509 564142918 477076247 273511292 688861924 635879334 606924216 398915006 538959971 51916032 261801445 991349784 777513696 762767487 774740875 759391787 915064998 606924318 473317230 18965805 381829866 711407695 446156570 972700462 643316148 508212043 77678616 603919063 391815763 66776762 863247879 635370622 425434346 204296179 749523189 65352742 996008523 303439159 658615188 620270378 240370565 120936443 383807529 570711337 966382612 595648645 274026101 224968042 76308005 400192114 980493296 880199476 785662124 428350128 422572635 804332101 3257312 78110632 238280319 680147909 293500137 50083251 902256746 759681374 565254348 290887256 376274001 386465251 317911896 520907121 337663598 949626081 116898781 783048895 201438663 817627249 202965976 17090819 769609947 146328769 622325486 457860656 284261022 628985819 540289640 616013113 453916795 595935166 705965719 37242628 302653356 763367832 685842447 319109644 442254286 886015971 143464165 27653509 777555763 638911563 912715926 827106734 65160248 689911119 937843201 218196470 967679277 567341663 584752020 677223650 633336641 944454572 661531457 273643084 544743710 15155686 6627903 455112345 267160882 315985298 325207463 92145291 202462387 350600241 177467597 739109850 765632 546090325 553630267 807461636 870401755 662937489 872348700 718850216 24352255 596704505 437589550 209819279 987122044 439721982 564744842 530383020 958241736 637019468 710132446 259218351 789118143 671092459 485064404 761188131 890270947 490422888 499726668 530848467 222940266 735632846 278005954 558999785 287439412 787315100 342112680 998347653 189669766 116431884 598742 170183059 218900066 500268516 756786700 928685591 890952742 777281490 413757774 126039980 796205447 203973556 559913123 421694395 730206830 77819971 704680926 294634702 119561122 131315217 191485812 544860027 280064281 313966791 156442638 507340537 861085495 104585814 844532601 643337711 865496147 905345020 207287559 709462559 241173019 625240548 173881840 632141052 506711541 641866706 831624473 256655653 90439973 129515705 634054004 55770600 175002095 61783598 385200494 669306020 374627998 248730251 468518904 245167925 542789620 869779163 961022273 6764782 876109626 945484901 748258840 149139642 792531138 732960009 920300266 273105369 410392969 265588075 943229851 749789771 64463751 646308492 919840916 534448490 201329988 63943977 528552415 779412471 179219873 894268952 881622021 15397312 850447560 44329937 784179171 187448173 614036961 305885744 180620224 721262191 383929988 224587395 732942529 480375438 168745589 811014181 711182003 160756811 429142010 858880544 171688230 920574316 35770312 561768042 140407834 797353249 333432219 292297041 35305918 494789986 14450297 987733289 618344844 44115278 333215327 938141940 335647715 417198887 515997357 55956980 647397099 343145987 554448991 279984295 679169262 469297415 490623982 16965788 688755234 412096717 736491681 365496456 268351306 941225187 320010134 572680277 129453318 869094584 544701512 609864071 518150942 498888212 493809397 31679257 382512241 452531193 404171862 26300514 72643155 996428075 545423544 789975770 36663479 260654020 209263797 15582744 579967020 284898311 750083043 251184707 676496025 949799772 167354869 294372777 403387968 711610546 499029683 783674638 728030003 491163274 741971834 496351767 487294149 753762679 833769649 601750608 974079015 847547991 411055226 878312275 28670975 155036390 655275747 840626620 648733706 813758255 648318864 801594268 667364999 241404034 574506560 621877775 844530718 637206825 329443569 914198694 458430263 348629034 583310303 685207725 436422182 601278431 573778873 192131651 436263469 691651458 467561397 837980417 635380224 72937458 44320135 194081395 539377794 319687978 801529362 675122162 680713551 182762540 511306888 369784060 770379816 643582443 718758898 532207737 268761613 292900658 254373033 675617285 873330844 964065141 759319226 263556965 820857098 420539654 363812433 525032924 224637416 105746731 815773379 320601163 268139359 919436512 552399500 138719627 617427160 672933718 146112412 108376118 424207135 247028710 708694381 299196955 146217795 443070942 105394966 567172990 730812914 419927635 290260979 628945060 317424789 651233429 935438736 96559134 847596211 490718177 517971829 974867155 55807781 134175191 365948645 913689350 176322550 133323195 193535094 956241227 448621790 389659749 438649388 705016751 219537948 761161709 857215338 135566863 867278303 934275515 915782660 199258227 682988433 402610228 725136313 529468694 464980438 85502435 798039581 732206423 521320836 557034937 23795659 418149065 830123187 952827676 177114386 177546433 269157928 567395383 299664057 306108722 473582420 264308367 819747764 271665307 453396040 763860271 886233327 935677603 503446477 230188313 284112551 658021652 878532145 803088624 523943280 820479423 931083476 599490212 590442196 912132223 239270092 850058946 391323759 30272977 280973448 350262156 268094229 328803513 530093628 362451419 312183149 707809353 346973287 866624360 866343045 498162027 340524568 841492619 972271577 218263119 790185145 907991618 476138026 999151556 545541185 93390147 302500988 689738621 590558040 157300024 526306413 31779781 748149407 902773436 379772387 896228735 699581134 184475316 883489002 761177451 184062138 229074680 265023276 643023273 584705086 534215958 969424521 355934226 587469728 360951579 535144347 840548106 182769813 290553364 27795642 90511821 517483246 393132250 317043604 879369451 542943121 168811822 278664376 385673099 871437540 974253953 230695773 887204805 640695984 951515198 309973459 159200360 421005892 639289363 987516539 795289276 74179515 115503252 444965347 122368413 80963090 128566258 894845922 575237359 204422738 591296189 159668192 437012242 355161651 427494905 504874716 135652098 214913401 887305249 660487552 482889583 868085431 236341636 141744511 427877384 61133812 661085961 296869403 138232406 712840509 776668606 923803829 840785398 253875790 998351868 442481652 696821264 317014910 139688697 410999906 559907380 643453428 532576576 870964973 193363393 135240417 452586506 825526450 60518052 73335021 101991528 309243144 328863635 24090585 835872241 639115554 734962726 754376453 143321228 494955479 6625881 233834620 592590812 882330094 760601532 794301893 268721223 975483919 146103782 611391717 337801678 538553526 528268627 125774414 240143918 447732781 121343210 592777225 766644680 475523001 407021791 389602452 892914569 520879035 351838541 450089512 927299467 155243187 309348607 142742492 391582913 710848948 239682238 841810153 672746562 289687989 101551401 864912340 809181695 16194495 20670834 673019803 771808296 551915364 458364435 256851011 942811662 491363879 826601251 536289169 223679251 767620832 301989380 519153252 266145573 172489160 260974197 725230132 534545912 224503157 206083034 638476368 771318610 869862610 28129388 143794505 778532135 191612637 811747433 263988595 843473721 182694216 686528626 483547269 62669783 71656090 293783646 93943358 334633437 681414122 583439982 201876770 808656724 978982208 188344092 973710688 750200088 932217063 970847769 854429182 187154535 639447268 881100492 839291513 217155057 356044546 655640714 525492699 433833611 255186865 70486940 558355327 170872744 387786782 749638635 661509464 942410698 437767541 884786510 525504279 699490375 688289207 116959115 20289524 119191748 419925151 984196743 866061523 744531047 900033767 985287353 938167799 162083685 636179101 18043625 358573208 427763474 305469936 900283501 842984345 163705811 85026306 531942593 932646223 147410479 949509396 75022214 432794454 454009247 811765799 622387231 252724487 40383542 909396906 939788703 602680239 879993984 521753006 317102956 619618930 868845183 754831933 36944686 882547478 248029907 716713689 304103732 973617912 770325991 174887348 791157700 499288701 958461880 254170677 346905295 694598306 587858763 792863519 790726283 435803247 797913271 678225861 494035147 434736032 84238021 883942301 947284913 705317363 706427443 902229167 117667634 25564696 186094986 244046952 613321825 50470465 90448319 615833620 92836429 647798045 879487635 815666233 419408211 913494661 222543779 133504803 97725552 256640162 625528469 91927035 178842444 307881798 636100603 343536254 498193639 549684346 656512774 492094144 359877895 644827088 26965405 141696286 271636677 977649297 867776966 336068024 76194835 233816070 642391692 332202692 532723341 548623456 347743318 927078575 761723735 961630465 333179076 152661367 807319530 221089157 74446265 356475572 990459139 917608175 778970003 191815487 39322177 157133410 869332430 463544983 91072377 218729391 216433861 974229959 967367956 532762357 259512119 460968296 629864519 453505691 533233734 507140024 384928028 483554927 665908527 68153042 3749658 872453570 922033163 861118045 291107192 389306332 62191932 987498721 496639401 372541641 467380086 566871824 676428180 748089604 568808194 353972697 582934519 982956424 381548245 349585206 624599515 450510557 343182514 836320323 487130934 316229785 981514020 761947620 448542179 93384368 279089946 4828808 854497321 187378451 882848553 934605247 682830814 626722975 564362671 27652592 18497014 721277094 299274107 835945408 855106639 450860021 481059350 707489296 313086480 159419753 461586632 230686911 607791202 270890041 600418303 884326985 435971758 392747416 559860913 364648013 394904458 685945347 36680419 111710088 41254984 143905866 281025005 252512482 648631321 461268506 830911549 447694554 530662412 72291907 814253731 730841366 757234128 646589822 145836674 351044865 100373531 581592094 885026995 614140059 167147634 791301904 750538482 262883409 352153174 932547717 251639400 167514533 862445756 698535659 245098160 353854436 738310960 128768969 717519421 809700477 329878563 438072349 349292532 656942420 328620894 120205926 471826783 269644578 940714586 183782944 140876259 848791819 193433670 252611249 330879603 369340829 227375137 901215765 630067130 891228674 645563677 724154748 205945663 741488398 556364816 292098209 712987262 432376548 99120554 423405603 90341044 406832677 364269236 603447968 710054576 665173623 928268759 944303492 886281834 780059692 597561697 898456926 99600180 2430625 519723532 34750028 357831846 588664948 416564143 308130676 106267226 247852439 81183386 622422434 875977463 407008893 826473509 429385161 615018521 428441170 432012606 723326976 832618830 901207237 49234605 145191155 896359133 755984543 98434181 108364198 466395902 70538579 164185033 851945451 829198943 567946497 478323050 712654503 681673831 149410277 925048778 194182601 928053219 207282603 96827627 611129233 992991121 18202316 354640769 174453093 555224565 751830445 931348898 426782287 386801533 49231794 562229011 350818362 600483352 891767000 670691358 586412907 587157791 126954158 799172077 204976384 976361790 308568230 91057984 213470975 549700357 904506358 906188985 822597917 965775042 612971039 656384222 271187471 485877862 61166490 949557339 190926271 428993700 752653711 767873256 441355828 686052710 134487829 308547636 113353403 854799333 440873459 428275528 68657211 396141123 912987142 788700961 998645708 864718059 46958798 842744905 529134593 346728938 502409198 784839176 1037990 242974113 343884412 901683120 42194155 130911862 854985027 110952925 448241650 12926022 93942624 949029411 86287719 645486304 739723131 479694885 6315471 398312780 573892082 24289877 982234788 492689070 332297291 263903371 307759565 935824880 385545523 568292054 75783278 958214865 92336018 527920848 345344149 837636454 230864286 426718097 775006666 745418981 104308991 258427656 542252144 208124052 710040514 272790595 632270346 785957608 300259735 14692953 319347974 767723792 252932270 63277534 563058737 190313039 904885072 495370722 382359675 595386689 449544031 989253038 958131267 708136474 667794718 785159044 624713789 474417065 154860385 130612629 195709086 480149022 81120324 210972645 154481232 395486356 386405969 720163167 830082208 993247838 432949518 917129139 960649542 873983875 608465067 91269128 335675966 829172235 953079006 392228234 805841559 887354205 767147300 41928968 896740819 239135014 380238919 338438576 125058095 412750504 416856933 436410868 628630712 441145566 847098187 299320692 41814864 916702447 640237902 6940809 235572772 529804356 227657122 708876873 557406466 162699976 297361890 598869317 29737310 600970567 431716696 157843672 471740932 533754788 651850850 196404305 894015648 573649388 78400880 455959573 562650552 558164277 89356837 9250083 916191059 267620103 473149181 560750153 690272165 697563628 174714874 985383645 484324356 257165578 663831704 521996335 383027027 729830506 583843767 641208666 579198651 901006309 565429966 695210713 76491011 753758839 714666772 189297413 373481098 759261027 749731606 318022386 720932094 278765747 16776272 51668811 88986359 780268436 916536301 139719622 38675826 972349060 389848330 592018861 69779570 72659171 646538542 638527877 101169856 304312201 676522634 117545525 9831484 365327044 871540440 538043665 77152054 763812945 540080098 786915839 651244563 790641940 400900408 76596069 471273708 379281363 898958333 815519181 275197960 351732383 736361284 277725197 62638075 246474831 450663562 740318742 857880075 363722614 773016775 709668263 641029354 136656384 547036703 643529237 295092087 767235866 401684241 115944044 461230689 433406494 729640189 639814212 154700229 309979382 738210581 482860402 402600108 957507947 539567707 582441908 248172507 937563600 843446470 191753578 131227566 159153430 643028767 899079734 387931372 886162896 41933292 552966414 504595246 25658325 922940882 859548421 656170255 718950858 899387851 8591118 524837036 36913155 830368507 598311873 412976728 167671992 756279387 811029454 82613026 724731201 877301418 287488161 49244813 653248884 793304281 192415747 828810306 42208736 319584695 792748336 346308955 786431874 188727893 587290499 326433734 684456722 290058787 193332487 503630489 193924385 258114032 62581055 261890724 746683247 364573665 101352863 278586791 497284047 440058626 708025944 355214733 319431210 82775611 620967258 55167252 894637666 296736675 438261740 442709029 693302163 56799223 576309770 876825582 168234603 967455289 191997085 446863599 38639703 97152700 445387143 964122966 680176052 389267814 7442866 391106374 432813451 543824235 646625994 266412256 191081579 377446097 417405157 836278222 890489786 49685049 110585680 309215948 455904055 358336418 321854488 58785204 804480724 273540993 811337533 697953200 341804449 195985013 825673071 923325922 603361896 735146798 607905210 929655904 947369084 586672756 279587484 323549497 754581496 734256519 390181471 278510522 805583550 197201445 491756170 504338988 365427772 976560887 168715284 209587850 925447688 20976809 985260978 416634344 898428844 207417494 214958010 515357868 480674438 787745364 999094594 374708208 695979909 381036038 968752287 748909105 175969199 637188571 344009417 503376111 584705262 786292901 642491959 485508679 482616077 22747722 764118300 925643332 653881524 432946101 156472877 109487792 419501024 908370607 691220928 572579031 228305721 41464753 867521670 145066954 257448628 941711824 196341298 610922160 352746614 630439862 315464013 626557996 272878598 450884710 575002858 268848460 52641912 230362080 978095510 895951310 709060903 444261928 851582812 588969397 227864109 940896630 869916518 145514293 870327546 763460722 33064712 896109408 570103552 227146632 433588202 401014425 865940626 400050200 841092306 901093008 548845743 381779232 201471210 579096647 176161673 710933360 457608380 330853801 480679202 470126438 574468737 408887305 123732760 972651934 546015255 869443337 319723225 756497164 569975743 549763195 793328355 446683428 60436177 464216737 315403325 3054815 377457588 74269818 590009374 756202484 339753728 888732361 527745812 975568316 894899012 989443127 358606222 562706622 206206894 369996015 138099989 936977277 391615658 779572954 906424919 647668542 99872455 391006113 887419422 413582867 454600289 404804847 141060651 878451963 23345411 629765893 646490118 259684430 672772327 934997346 669166544 833613046 146096588 982185299 815529258 397699063 976637486 349373127 47689799 183477674 176385361 184753688 872187675 766337308 280070273 686461569 430192584 300215462 624277569 729622049 296700971 944342541 994844910 983355407 101699667 421206984 923291178 860599487 986313580 166527577 342789447 659025564 906927411 493162859 550627077 821068957 586111078 204354097 918429116 511170606 609939422 202024733 508178561 669088062 840645518 727284999 731452829 890935772 964757038 968766035 595264341 266033982 703266118 243270856 901258664 383677736 848807039 597029991 850428908 475460643 227247773 669620013 314903226 710336105 499380014 776228044 667272763 292721393 779668396 262811522 646534072 740251252 3992950 371393298 646707875 955900609 696430502 539453623 285836537 659956233 547567034 487716421 159840272 449490786 357492851 608931180 767941505 508567172 511253973 205701736 333126789 764151518 829809532 56812036 433536231 956386765 314211246 671189269 508108263 492182582 269825380 703528114 143829570 138495266 799852430 308917639 646412704 360092374 419058421 424021410 135821500 207045860 650237500 550072271 767979362 689757273 58564052 110367614 959750970 299792097 670802185 974341243 464208500 952677450 829674013 445466782 709271065 780586881 677900723 364939665 892349723 282988328 826980043 410818825 613798766 51316173 881489376 424461330 287458465 403277465 709881473 699373129 933149887 845178814 141382252 758956100 806335796 873563879 102814750 916898202 3512366 277200446 971114767 573901868 376537245 184132690 209649968 736600464 406524946 402628026 211974091 783098632 589848422 242567560 252212955 139364810 227861668 988161549 343345245 220158425 447103123 551871485 949695469 745307267 205416040 962178601 800284896 860520173 204405431 587856837 325472668 224793669 649250137 26249554 707965282 472438675 421849437 924473405 433488471 902942914 635607113 704882437 624670821 313936743 282537681 404540971 284477746 992983587 232384261 268548720 51898267 924822861 449639879 990056219 171867212 826583626 899530689 381773301 132852452 704236818 605587476 678523817 999909257 889316574 611679078 544228946 767073792 44832279 861107847 829558517 324521504 911794462 923850954 956446336 958041079 465391082 508864892 893733716 868789205 257733204 710727052 673123495 342644633 340408080 549136911 502732861 780827041 960838078 532864880 736851052 228310929 719630305 305351400 576778199 748317133 94903885 480681753 746174902 631260958 557683637 147237515 804082990 936499669 605215720 416260824 11614821 543532490 625920097 14622037 779843748 439825299 181641469 704155273 284094317 677114949 243867067 509466381 825465172 379440051 557290599 112900246 893436790 843175721 218424076 849561969 568902118 697858168 229405567 475749002 238034104 222942958 537425764 928555804 829446299 670707792 543958160 820339840 533594329 908115248 521932190 702384987 131012931 48206742 843567478 851914526 99881943 743958520 973574293 4676919 947513742 827781098 926109302 232047694 656914306 898683601 627229100 9447520 510561658 726349128 877799857 573442916 438065414 935911522 164012580 644905159 168732780 973886371 334375440 124575129 79625639 7061338 701458034 549520030 772493502 578042783 789242996 881147022 198116800 756136793 576071518 775467176 877283602 555896639 43096741 59696661 313500085 60205055 992512703 175624897 396173924 776386929 36353082 304945898 431929903 795696171 878963851 682297512 226947561 765699431 339757752 594122384 826431887 438234903 958339780 976170997 292561036 228200416 146291923 638461178 534052525 89225585 488369498 222555347 449093496 279906137 368538575 949119420 524674359 916438893 108400015 724646681 311045569 440975132 833074768 990475143 232327440 954508100 560931885 835248153 327562852 160195610 271004578 733237898 739416733 538331239 518040650 897982763 802146605 550067167 197647257 657056967 1993140 596225116 129028578 161783730 490142980 217500809 855570134 841724462 68701459 761894481 332314143 610920840 126133930 465783518 620452935 736213000 575516051 5643874 19786474 57628591 563370517 263288271 560067528 858526505 768863453 228367928 222032875 765556976 90967830 67074515 634099588 928097309 821933642 603865751 888566098 374647061 422591419 363654326 510259062 379490111 298845470 600358001 176236979 447303619 490336957 791822864 874152138 548855508 246944423 42448361 272123857 379743043 151659041 788788871 261034262 316650006 965780598 622107248 927858289 989971878 633117097 494312623 335011823 507528331 315563023 474360453 335549618 915206920 474261846 111846085 841235595 967420106 930774776 640584529 622011538 739312114 743076411 146245666 256603778 538490337 285026255 320322553 836233984 605435076 875249 352666263 369706366 511177702 898375420 38394082 961276124 666929763 335844676 939731837 194714429 398199964 975734612 823305497 381985345 377536184 334158622 396166523 596517870 724966279 493022827 636739742 708744732 931186874 700315279 789975009 842348812 475740550 58304008 648010608 625075706 985944331 833421287 370161998 122079884 806113679 984300809 532634008 961315554 136220115 476432558 831785652 226109667 635057531 476668492 531923444 580608746 533394006 619137329 412401278 4596001 972242148 27544536 253485697 968380452 357830383 801527035 336595895 200860945 432522616 827296082 95548990 789600350 613983932 356113918 490878187 490186640 755692835 979143815 382249696 844516965 356361965 368346609 342318450 350537452 604576732 646582486 448536817 576170354 188639047 970625174 950586695 975989773 439104562 714669742 512067189 748744798 387575322 405318769 276280907 75972232 986914027 664923614 2489927 380120195 479925476 111504809 849758651 593166427 451333856 283442271 943375375 933636732 254541393 832919516 807160904 238976879 810787727 92500800 778786234 123550723 979908585 136656338 964759500 353062726 837686181 974804032 68716704 298008957 129683109 872899350 736973627 426010393 915063823 424874648 528709507 278897258 512081499 241140662 916708010 734821298 8206776 148985730 985316303 762871581 562265581 642902385 956096309 973216068 884557785 866186407 139645220 922967762 294397083 772134699 947681076 823954457 988581532 708063172 44281892 25903422 588572661 369051117 267616435 866970095 620347729 782215830 382709577 73581957 487128067 644626530 342125092 960082666 676492209 756722519 547181621 944822544 260182063 604647860 928175001 304525665 59460270 473340839 14196203 269496773 148576652 616571727 527977693 50828912 581374884 618164581 572270237 173729342 115686946 696501626 398117754 158405029 26212427 96764049 827112458 345742740 118481780 514072763 104155659 906111619 926388516 407853106 415481782 469598232 923719266 667482127 980641074 16489455 20946056 488048498 972663839 54974026 810580354 284350908 988706676 44922394 125698727 685148286 132590026 121926967 859110624 490502532 13574170 369855860 652279638 468470444 828549786 723709730 392289955 440337729 739180110 878054083 113252651 84266043 747214837 717940213 672324620 426627750 135251227 226751846 1341904 467417269 315321681 621812363 201848700 148910999 354867257 367426685 686824023 339564520 848319656 492736236 656120616 338735342 267191244 310234472 413039319 29938183 261570183 770942551 441812013 452193536 623230802 442419186 145425383 622278040 467903555 897390483 126570712 888189051 634739048 887765570 339178285 780863472 844175316 391072067 637449691 364008785 937618690 358654602 562480984 366579444 79582805 781476557 345766149 17608481 331714807 119806947 54028714 239397079 824936228 14215860 691957019 582016662 236480603 226050165 579358431 418616309 722935129 299147158 974658497 979502712 237962334 31940365 627312725 272914413 115309812 128538115 363679915 891725521 927932491 137503459 591392978 195087829 415467362 918116304 554392931 487744429 393151749 481409840 96144401 50598204 95981899 356803382 134091730 884972014 678546193 862359294 862569408 298218043 650664641 504061935 399927683 808604199 470587615 24170595 764703034 442075248 339047045 510904742 617728447 866056095 220201947 523798776 187406679 186407376 263393037 710909234 203397814 689400170 471617080 910113403 652263548 777643534 688612200 148440033 933202927 157325329 884456349 738735080 277374281 108931762 423223161 439002177 210884489 682959659 795874780 581993745 966999027 392113909 866447262 224532375 138583226 929372645 809053084 933671503 910611616 302438292 179761585 906781062 780263196 175580540 133001106 869546963 161813208 281333948 676780936 179554958 740687604 793067325 21686076 80778128 841107987 210975843 946878516 694137602 391580675 912349477 712664082 710891848 840861305 257134896 829159889 339300785 701259296 987708298 770876127 526821099 853791575 293112357 63051462 255634584 513255713 190665281 794326573 105949192 759437099 821127758 95113776 654414537 171523751 735342445 688974049 653773597 191570893 901243888 103202267 850915252 186315832 604509768 282888748 218900467 604860968 776196140 191454686 178427462 598693799 162110281 562761038 262255957 606084935 78571433 113289709 842327234 442366556 131595677 79170213 919009427 216114827 411221141 415981602 148986842 76716396 313561378 62492721 608341723 459099825 637231479 21741392 196210491 656222869 288890166 657731287 433125861 571972770 22447352 716967707 911717556 43173736 991440592 557350352 398673506 100835921 655253423 901949205 160228703 2407433 529238328 668896224 17218210 491201075 105276186 157818465 994492956 749114301 128360377 571959138 699029960 383358387 674638820 859816422 781663802 284630474 458462667 419644677 448948078 93432030 52201698 806385439 411327047 739407874 151400641 120459690 798150838 575483309 438289273 822371093 22392440 354170656 159979245 594305085 139150813 408447243 992668266 457015975 259609913 502239965 376264808 613375546 568773816 637685853 561687309 950520594 334783508 409368169 273699782 880840825 130495455 781633458 120360165 370399870 279134397 725372864 800700131 204053195 145911953 340521337 337733086 98031065 483337469 629494165 661278525 38524956 880646858 840374568 900787494 62994084 296762430 605079101 451998812 962846531 904306082 398667448 65197068 874765582 889980212 649138127 947148830 778117186 540694868 885181773 782950361 884486408 986010234 89105305 170649373 852642435 508797703 542305497 310026489 832787146 124727486 378846648 650254396 757102320 662671320 883505501 549534206 961469865 142344408 765762571 192659252 366744020 306059053 273543509 661188464 575327690 396325829 848731855 672352194 740151030 154758834 487862836 274828589 313204891 748843813 676476494 724181035 338414465 157099963 809490492 713482562 360100908 708126827 338474311 2980955 128625625 23634050 511073503 188215554 723059273 830783416 689021420 379049048 735857273 895958627 337280401 620500675 117964425 622164551 582997620 78513389 416542739 132977538 123726705 674036227 253312083 870802151 830218323 183836736 229598708 424954921 813492245 66552552 681359897 368084912 338421111 195041589 926617131 62268112 151815997 902463625 709816648 995716857 125850894 803498800 394692579 421933423 452657328 935593629 782749254 161179576 995913371 347441492 787587147 730409572 103104039 332007472 530934117 662808939 22371597 649835378 174617514 361430033 56094249 755611794 220745736 173798098 927938269 860192088 415743215 95841240 671688877 24329892 564941522 785015306 707133646 34696450 377801830 467131338 214179441 83121987 923036961 382669467 500050744 675336738 548314455 113157315 194668504 315186273 77717945 644257753 863445602 25408062 351518811 718952718 233199052 415843838 627673965 629662471 887499918 66994527 695374964 689313717 180274567 136660266 150655554 469681495 604291008 827335216 909811444 869756219 11078066 415480225 803445299 350295827 1830336 661641385 236735610 477257856 271448473 393164263 688819654 601431842 163842097 745247142 971271610 180205166 32161819 661495588 489592601 510215157 387815783 83018333 113124904 256889022 413732862 759298940 291627756 57218104 313623136 407329011 810618142 235377184 35417289 877522866 733728164 925684428 450106271 893514672 22974759 741115573 311378524 441071318 441928736 304264917 164019704 898044446 806075653 343829840 540441366 130331734 931424387 354691627 473593950 891638159 952433168 144055363 44986581 414395374 747789053 157357121 202394364 751208207 113793521 540531575 203481129 361614469 511924963 699201247 599510987 32190048 747683491 270730998 301014176 891886736 362012523 475464059 876163423 372207342 888376367 369186294 573554431 54038495 713863510 522917895 467308083 914420805 267546133 556832455 428040300 64609954 219098877 428382158 126821776 245302464 481614076 936500806 5741982 554846268 234961591 702613127 630560872 425920846 582983354 455816717 896531815 732173541 871216930 553890206 271631596 585103617 741305838 672885366 322964013 922977576 216762433 111394609 183662242 972055534 518378160 834556685 121182901 581881011 10017852 836338436 596211595 86799624 643552790 380560487 334182170 477877717 203563800 596902203 829262986 465451115 865074951 35278415 59821583 315258826 621928332 455308916 74887198 563353166 645649627 391226668 613221189 460522602 537750117 347682932 911774697 347185363 652086536 557182485 557403240 638395234 999283451 683361169 248387724 700883319 945784008 483317224 106799551 63859768 266886856 570591908 367655750 198731229 557624793 891177346 787243349 70390772 230086631 631605934 67077176 245020589 85324352 378914899 591562756 392914595 322186665 931023435 338312556 965069592 953653564 673000086 960950812 666588175 545772754 576894596 801267980 880956966 709504586 651723196 775276842 854883183 812813507 470995163 259470567 755355977 299783723 514726635 456096874 655020773 107653341 620316164 265832813 43443206 301998904 305415920 190218002 450588756 935201004 438378785 251815376 600776471 596478603 849846730 727079053 250316190 88081264 326687198 108110086 162197565 718111168 275269390 67439889 562725378 736498049 730342021 1671880 647086361 69729231 6226331 509325970 724686156 414707838 480027792 365640182 454472447 35690194 735381418 750473125 421549680 643653831 796356081 899586668 59294733 596531335 268931004 213146259 945893840 96583966 37721993 847059943 265293034 348528313 248630374 25771301 562761892 879281198 60467550 343146292 831083563 574456092 704434401 950489698 686884014 124475818 162105388 717950153 381096849 975239977 794428401 707898526 674748041 147064400 737889118 190128498 358847634 552541305 438417258 921850148 585947578 8366759 712843139 947380569 120509616 859872486 161583697 188369180 195719243 180338741 791847190 747679785 121866197 206928273 205592400 374415108 343830059 942068871 11028255 45152460 766699046 716254836 50625459 887166383 808934099 465022240 526717833 294803944 79644406 930178058 492738962 895062446 569721515 784133006 3665501 623941854 538816311 855613525 878891258 954815808 471476887 813035776 59200106 787471824 449691389 467633600 668666242 506213534 118450439 620756798 983351536 702075859 170085716 168183873 236300484 92795965 2875488 697238290 255819750 514512820 416694525 375827879 720915074 769643674 811904501 811044542 238577756 580894758 320335714 968976624 145997751 170070671 26890778 682675607 861937620 425881896 164198845 667559866 570481617 54926067 610797800 869731696 858216903 690874205 968608238 545669141 94641340 68954999 376657191 517737196 15879140 583230311 479401394 635751177 161840205 717436552 267897594 31316953 81526485 438386183 130056883 513494302 304652309 856997773 206598142 640478451 191133699 441939175 634064135 440913829 551519399 195224169 333298744 723074278 637534444 615609391 628533908 915744593 563400237 437456030 543218271 485683963 984625514 675218576 315833597 601374036 179745879 586846724 251459873 116073505 759533638 537603708 769462556 590893936 925915985 342044795 791517678 164124161 423038831 288964611 183478583 300703967 613252701 487835542 592883338 981481151 375572950 346963771 474964514 990522651 700094614 713783322 784516945 980384917 227887303 403137734 255159556 248086839 210705531 879787863 237002254 745187034 248951500 36149771 591303311 71449018 685890951 705343273 970695484 529560835 462013707 776355677 628094855 966420567 247434245 134112515 670250828 516161807 980877989 114360332 486049070 788602126 134021479 275291077 563558532 232373462 370108818 735128643 527673215 190877570 147533016 10865084 96296699 368549940 483684132 348413498 373414257 650369230 366097445 775439326 920897494 579342950 881651327 844818765 420721431 43459470 559875508 72469620 275360553 513442230 734718450 818540319 106402975 80883921 427514249 654049854 650055756 760011552 108084705 238722298 995153375 215909763 221439470 229312962 675419316 365331437 579391309 965639927 900130417 824523078 916743333 689881523 477367908 233184179 822164322 948734234 932736703 160259470 173587034 721796169 246196839 112338363 542006192 939422682 174231958 843010572 477807266 910097580 526098800 446261426 744892177 731669368 250249354 448217763 60991299 451500352 435100912 864126012 826690038 48525821 842041990 616051634 548864025 401074105 875530720 162019110 987852645 687464779 842723339 22121782 101523921 241393537 79337968 197560782 803914226 748892616 835811903 771874982 69460697 622048478 937307686 126841490 999563827 501362487 965269737 947131619 903600236 60050557 852318879 69348431 248315526 246664488 734293544 542209280 572794748 275828069 909540895 275610650 292859471 296125582 891594929 448978353 774279183 16069032 839178570 922363265 483660628 641579044 961874308 415706647 977092502 574919882 780727216 195895266 130796967 912022484 173341377 797438860 190920053 85818957 375781779 316844592 761009824 586364058 580789690 963991192 691869647 103572720 385783174 703325089 947832736 739814235 134472898 741148728 138760894 355329583 107655700 543086182 842248481 731346259 816199107 99449139 996275086 364369614 221109599 43601122 106682037 830932599 6469677 167286190 543837660 649191259 277597034 328234488 120045125 969567015 307788387 145833766 366746292 115779799 585897751 420196233 66109509 989163950 871988317 393800695 795773720 819136718 969715873 786702634 140340508 119837176 926724774 246543537 226751743 480959199 848698827 975712251 399555413 396194942 520157454 69844611 841992191 705370661 29055672 265126860 137372945 727246062 238223282 282719348 98473943 206363873 650986950 476621751 648937172 573796473 324446167 503724691 895070404 772201689 221410944 457133572 700737635 663069086 837284659 469298980 563197718 904612620 656345635 929569920 55313753 247570100 636670708 728188215 613460616 449528111 901877510 287127358 494616045 867949051 894122268 246547272 920371649 163900462 137294986 996935786 341318760 557844718 937805547 589614799 834493587 936154507 98952794 703706728 513395170 236318222 372622367 207330179 814162572 716534390 852187563 819083272 265529475 309359428 18540638 90203442 662897537 379016615 225793464 40427168 987218504 231244107 249896713 585784872 760703437 779701115 160055772 233026165 862988706 853883703 272166292 602118098 596086742 518174164 713517329 491719890 263394733 221133644 219584944 83001873 392716677 88635873 731448544 795998012 232073523 928796023 252485632 972167033 483025841 836447693 254132793 871244631 618798340 974374752 292403329 336475287 292201518 104515757 26029514 90237700 860615819 592495763 453311282 367481242 365341745 505407407 832947170 450148951 15238778 831845469 890470472 60874851 334498545 825683472 159217562 398611889 36318171 650670433 899470869 31262615 968850079 1709704 826630255 311435747 131444475 409889605 573274771 874639886 350943147 532129736 144316814 354790021 202938557 837902740 369260908 425885649 798161631 840197746 873819596 577270540 849628265 427047111 359162042 281887390 463899556 592529316 58532953 762141462 198108432 505582855 31719901 866669525 49011556 36038886 768844491 115736194 773142394 719844280 259293676 999875279 803173094 843269352 666998643 742568523 177305083 545308459 563209972 870510875 646005576 71239006 73723462 188055558 728966381 886901302 746153653 922014822 667449920 350822831 257940740 607840382 95932409 897019019 25966397 857751007 64558573 404824259 975062483 942854499 73388225 67273682 501851207 248260441 396827268 734045264 267343709 621925566 664155493 884076138 151693597 728637101 106795989 923066835 640607377 956728190 958178224 544149058 737577285 872521203 892969230 348862576 619357237 865750323 701063113 863476425 100536490 663562425 812693989 424911708 441228792 448399539 410514446 514695198 878467812 175383207 888065296 856838348 171548343 211081597 401081899 328685214 23452854 735335893 82019606 960439272 633572935 145722614 914760758 618108653 485070770 925238560 150535761 835389761 574531296 153659518 118096114 842343568 873530894 505987912 577196214 372618631 478667160 475173191 726650688 781302126 81200931 419271588 159611937 344949940 108915779 732462692 746582424 698868822 18043890 830617759 697320095 352955693 20284063 168710539 459895927 84955747 699819944 94108603 287797475 358063937 45734046 775493070 656109365 83372546 494615494 533551802 231841229 315322193 791425875 764503337 911981440 349352301 379854484 593858044 520747470 197616653 623693106 751017993 488541501 815772048 45855745 437017995 57874930 3313412 390184723 904935506 980249224 122731692 863571493 435287720 819583052 970399974 245195400 194459604 150211287 802002254 899734164 239289685 610565403 817046647 438476482 804847862 120841212 141961912 301226059 49738768 357893251 560819914 475653386 818386955 529120256 265597736 663517764 766331465 885921671 428886490 335202632 421212667 210980817 543282287 517074851 608635587 634169982 735735258 916384569 720180966 645806635 581782303 430639529 805901806 68108479 909072418 878954421 728343127 101459853 521825229 854791790 566732737 969319197 135359197 319500332 291719381 362933986 959122967 711375447 339706347 108865290 700851857 878678568 58994531 988132671 712357120 536777814 936231596 396228275 854294354 270612447 883193110 844202153 895826916 348129916 580502074 180651241 409828543 875436836 916366037 51595731 382313712 838986877 975429956 988822001 4026423 478223920 578258341 745867003 280538938 166292450 891419058 459611038 96664932 668325648 941409362 623931909 624653428 568775139 535026809 732647179 500362584 632888807 329097 317435395 745413373 982366818 218859963 681862535 101675895 518868535 165741801 381116919 982439873 680813357 608851000 692845684 125130540 498095605 578460349 184562119 768848966 9036040 849098482 131642049 141099787 625849937 254559230 576657235 24229171 72396467 810749647 258530680 972700922 974376634 403468085 301833986 620923307 821822111 152900643 603107679 57556263 924511624 868095384 602711218 860314844 937303808 233061178 676134215 854516857 317220717 633736913 11057917 444052539 480530215 657559510 407485132 309664057 638652447 113912541 487359965 583466832 11479238 585085413 649981651 940005780 371258856 899626642 954460283 501685708 617478177 909337292 378628561 904191295 589339571 623296246 350932628 965024412 250100561 306770396 118577338 321052820 223566206 506892907 923778252 515468490 713703291 954118782 963227779 31648101 160587501 476792329 358395387 411558604 321694325 778088904 604762232 378682187 125012516 557420220 975953915 942127398 257972069 507776001 377623528 367857116 419376241 574598644 760168114 884499385 176784244 818632072 420282187 498939131 38299060 250463453 62610686 327572220 795707285 962180963 25619206 992346790 393669904 536576896 933219314 879102119 649975188 249778327 354321315 504058937 549853333 804848213 70835722 699290938 134457045 914525147 859995461 222681417 712252583 741206798 837008870 539112833 340373292 206383832 726912745 345505111 160458607 573777129 987868964 312663330 479592912 381479639 626998033 419954049 587368184 942915639 806077725 490063893 224897255 961331584 881458018 715053701 551509572 378138601 79937840 451606258 822043718 683989122 245581543 537704650 74301857 903760927 123929914 880004000 752690285 260617989 805101994 884407893 744882521 956986061 960905488 599556823 377415362 830258063 248515894 734392665 281465296 839243538 103810225 121049379 635142475 376848313 444707918 204514021 266845779 705459517 800111282 635026548 951709691 802521243 120392824 68227548 951041281 779873370 649335073 585044350 324725817 722590519 499000840 714087720 615253582 187301951 541507431 401464376 80826628 156632824 490998023 876314768 801784365 361528472 15509493 892127947 636875881 789623807 538398165 573687808 220465794 273884214 776419009 107878376 100756618 267854306 171578249 623614294 61796209 110439078 232336640 150932694 268614799 565740759 845036290 421111324 846303716 401708641 852191371 311831742 398778486 230506929 787852199 985209001 961663343 869604102 989756203 73436473 943381879 178893145 770825525 260741225 417846265 597414826 635612855 459645788 729695882 36508386 982172093 914938422 186011617 20053099 552409876 154756363 793053327 151771698 298909077 384178352 161204520 871694048 804769171 476115763 749343414 21269951 967934247 58404963 142774698 179101791 675287449 16567507 838509156 593851919 621952622 418185215 137164353 405665398 916371821 291455703 494909419 276684905 906329874 688383353 596945972 428191764 84151357 494787326 968641575 120624953 517766392 581248679 17029106 695173119 29154845 241188857 799265364 817647804 490891006 316287940 611722252 471555563 65402856 832435868 248183208 695901976 789861494 335493907 795413536 51634349 642176939 638963727 228701472 914112927 882231451 375835670 760470603 83167215 501800271 344243458 127335437 249636913 168854863 847363142 6083073 975757291 559952396 265487038 103525002 719398885 989854590 228675331 403766246 497287129 315826472 18513122 657266822 887576966 836202167 67982670 51460340 401236012 845866684 39316370 938656881 389754417 267197930 53469456 306299420 367642990 106365775 465839686 999847656 158480016 509550387 559641974 539913268 989362683 712006515 799238748 947860888 801286023 812458470 481776635 247281956 142514817 506546109 786074419 960463867 322876434 451613578 193706524 228609216 178159653 950681026 881311698 328443849 320185982 602047831 434974307 257707124 794302247 98663854 744558157 298604170 552010879 106874674 600282832 591245050 823145430 194638865 755181639 208353741 979950634 64309204 80276743 820019835 210485286 41795678 254799308 294165480 10394188 122520743 130295894 315637264 739170277 431251601 429702600 160402061 480057047 102692330 23859485 318371068 729164575 689105514 824054807 114829091 233946621 494335485 177847833 861770543 847758324 380589776 28915795 630929392 785836861 820494868 777905339 500848106 336030343 287785600 698762659 850384051 163802586 104546518 448541343 785802346 182067192 556811720 239226752 795761823 365668251 872888836 21291634 580370219 938820114 52242009 60132176 838523194 751112363 212018303 457087249 991745739 621414945 620730960 276349601 783489076 414381312 759584075 646491565 738079053 591184166 395812432 779686758 986836898 409042435 575053017 386034350 552328370 8124823 940003893 48170548 989420485 654416089 546255293 515757142 871205255 35435071 857374020 205748713 530346229 416735082 76706430 404317415 387521117 979788679 319789151 16625907 725270185 954976215 616820839 726249306 636267967 861081418 165400529 243823155 280241216 288653724 348813534 740058752 962179257 765389818 494481981 747088212 540246889 669702546 181780171 136362240 105735160 266692543 987090929 975921579 785262779 371452604 826063730 768436417 971674690 374135171 637597424 539828904 989050843 970371587 702309188 235647321 481743034 677561643 19650262 301744611 74470115 210529424 110991275 303913364 895241374 159622394 142774319 275116001 735434506 928132701 227999871 139322995 839869932 198137943 991814942 692653955 439580444 602287693 98736953 970953831 111641449 887526714 289813277 437439019 869498810 285780098 71539433 154297068 136676964 507626189 129820031 756422662 859343356 469574438 590334038 555770523 543315599 488510018 679455112 909532699 74167705 565168649 806366844 377740087 785400460 27539465 592341272 858812341 991189398 787240936 595746134 370838242 572128269 313282928 613953958 803780241 886836660 272720055 818083869 633752259 901448086 926202938 54146075 825175003 935766867 791852266 372190559 166593799 145943081 282845872 668444923 247925354 550817391 74117326 366695989 526717939 391136225 181315428 769822210 341507548 137134565 280837546 983017018 982470724 125841368 50771588 583506094 986738659 622147753 256140369 197049425 357455041 159052884 432386311 451265664 332620476 100104639 98229307 563887884 549118475 251012289 234394268 811104889 837525945 828250726 225167992 667515034 961356523 131271745 789717627 408478595 675017476 277864530 401730309 399516927 823858640 56137258 491139406 577900765 730426438 208729817 58846066 944272161 466326361 472566803 541401368 506605415 567952993 771396912 545376117 325780709 815239294 488894235 710778241 216209384 791490956 288685589 552241684 599797490 819769893 524472479 983907239 642740891 718708923 795803233 831629790 707992017 910945710 468287308 745215915 624739049 914033448 113920855 534968595 508989511 128878005 40148136 950153426 143108371 272804231 149898156 998649172 440520543 797367664 60815371 764560279 322830355 310828097 575599763 529368801 820654822 581160529 796004250 705607028 770371801 72959740 24182573 740765748 104023316 990399112 731790075 794835720 70081640 185622326 113935418 678525333 42193437 60896026 718788388 157043225 386909344 89803533 506001141 119565244 909864407 188880765 413735513 137612115 196118568 1218585 190799409 695199119 675406833 339707551 205506454 907302745 220750742 938361754 955993689 544465814 946277672 979341002 445409193 854597192 873791865 362282160 646695405 353328715 172043735 64004674 865201877 324068335 754854599 641841446 475569053 350747246 796737333 447513886 930053433 371382694 584516208 111136931 825123487 955582139 63100671 828368837 213045526 217176819 805770040 660485082 165420947 698568255 775837400 249522815 341865805 15687484 41487204 509772061 234073217 508204260 695816706 348219082 304104470 337417649 27683416 302442996 80639190 297041011 515723969 372180228 4787115 124170966 652653741 714937225 801798162 879229995 902771196 45645834 365262143 656851498 491519275 736535111 860828181 303579176 956531992 973699526 809910239 516892304 901973684 186660580 991315194 500955287 996686671 344333346 756741546 31574247 320630209 260261439 231627325 577889422 723640441 674154832 365745196 922571271 29500320 57384735 452603338 275009424 846787782 777579712 983274639 802013599 523149434 450586947 351399252 280230942 429447574 696187164 907131783 20181752 68971805 806469970 485556372 867315934 984731098 386439624 483748314 12779377 806751863 569105788 759644918 899320171 503876229 69245570 484712304 517784622 27471059 442747089 158007666 466534238 204480392 889293907 520213774 368194919 24816068 462568768 361809230 350080734 510552204 796335153 211965628 435642837 279368439 880202728 267522795 937548578 750566416 382923520 452245870 305759520 767308047 75314099 684849218 835712352 240310917 367944683 330042995 884832227 868469314 679838818 528336605 325334150 787542774 646129771 696420849 912146429 467086020 961085459 551658244 141503376 368114627 950687220 516817900 198167173 646081289 623294448 654928859 571893012 405364172 742326283 981098799 679483630 293521797 838946990 74244329 296290237 158878918 531279108 177043475 945002645 460720706 259036356 336454871 462863216 108950053 173386246 135891110 582899782 185198417 364543083 765663284 216402321 935763279 679669359 117179605 351449185 504692093 759121078 189634262 102848847 949072917 138480013 942755603 17203227 675720018 168978678 611961855 615731681 770385003 371988638 650624647 762314101 316139823 650365862 720974131 50123002 976222008 174521215 399815800 283011710 714260696 95001230 957794358 940077016 199147489 279320025 455562129 876081417 777267786 885022017 505819973 629264060 418241597 616396406 338224707 639630016 532149705 490772622 124750158 217486409 470571003 744423986 419994534 654955182 251862155 414376118 311204983 154258578 556539594 417753744 726895168 778233131 804750812 360905911 266651518 136284344 73043934 341489702 13761380 789097344 420892738 822161718 336955612 865143299 255595435 474918383 692797346 239855436 446772425 626019056 418313587 884902959 149797327 676312099 854062994 851740612 478888704 634964757 225849030 418283475 431750978 100349844 466369774 434527815 261024206 578012068 975530269 778483540 259351169 54584008 545554383 789704429 213256722 433967634 346212378 500701777 387332051 305534409 302038522 794945592 524380091 99819276 363479344 568639720 911438681 441527599 885677359 122260182 585747782 893429730 177338654 853405555 703151580 899462088 917559069 777364960 827244021 362162785 965301238 989906860 410395291 616471745 173335981 936878926 239899689 646425382 722343893 263420703 914416730 993689571 728264389 869590755 916280941 851941408 65645744 502205934 618466070 273709180 757448523 756408881 543001422 536726041 599170022 684942749 784828475 48120526 979761621 215446015 420684463 719211186 25557007 504669466 233461397 7364664 413155270 504554258 919757703 567798534 370174729 266686955 901492737 885593620 175560608 879986201 815764961 891189828 928341147 405505831 865524765 166493262 788976271 545676873 362090796 547121805 293525493 188729335 326127957 864342976 58525256 853418498 856700849 383798274 866262585 339005051 558857289 596392571 200487032 374690429 812344982 117246423 373202935 919421499 418100670 857370016 817871731 129027544 413188487 112466811 436829552 942960452 398181310 937474913 443199910 598751481 384415568 622919574 716519612 48390592 36638300 988983204 109147589 794532613 752350654 448873551 834736115 397483525 665994921 907666731 351606583 237632657 727808151 569227060 423251306 55542557 518222001 793138569 27013863 287286204 612989626 151405639 489537723 953888474 249343301 627756446 460912000 483000073 857464648 270064662 475743978 157567157 582148087 95514994 446545803 937429578 127317117 195311896 561923600 964870646 659820649 548510133 255205124 100506336 954287085 17831589 424828803 852773023 454029409 756793734 979982218 946642311 229823205 376269622 899505167 78614451 290922032 712457821 399230777 684308511 242976961 722730612 199013578 899632607 699970583 360096640 343401233 226126334 464687411 972758883 131791554 2643039 267402987 987052858 376527079 268245583 247696579 511922018 655488776 665184392 44599113 864397892 888749437 315137757 975144823 84952265 924976242 266038103 450454853 561512332 996105007 921696261 910864770 936516072 612417093 567753163 84825391 33618328 665981054 217136939 187393156 534871440 598909100 658964935 912963504 958389657 978635722 321677571 11930139 160071048 369406007 249975737 452137132 438232792 731216717 617229233 498131098 470450220 35861196 650934771 682037218 148301674 578857632 284039939 433614177 298120997 276719774 761882770 720568887 889044102 641298548 154998752 313115389 8783575 867181207 695523251 201732726 186531863 158032316 705674199 253240249 290009124 907257504 405092681 342742953 757919696 655184593 977872750 700612045 802955159 77146945 665276000 771544097 623718938 100052854 913244426 695783314 854267175 644664246 162876247 480777159 435804497 770055332 410425214 403817012 465934421 224267326 72830968 666547092 834878376 351362458 934042417 977709656 568688589 566445882 118525757 291663013 493973158 537443206 614518589 553888164 39026613 662585877 820601273 822090132 201546854 239913486 759725634 363112727 362444190 566528923 129466831 564137623 623523533 722599801 823827320 59647617 416808756 284370211 159856886 626573261 460267354 630288790 388251552 675630650 576384391 918358439 688907558 554321979 127430663 131281938 174379434 440829382 678948572 545870274 778611522 289122976 678570029 986874972 48918073 846781004 634091739 885667729 445345231 220370405 618341120 349221873 215305122 42260493 382466242 541900122 213781205 423983269 910869544 375561444 262276655 781177077 68704078 908143499 427286835 913996235 425837233 16386732 562701439 981598825 807705660 525408542 860179687 113870922 654607900 405969944 459659297 629837125 554010446 732700100 987215029 828647814 779589024 978326402 676099749 456617586 426616230 670012657 605951538 771177058 778089195 24914047 4554257 664540892 262271686 817414157 134686487 265490385 740657558 297095811 145777471 889290644 331101863 249044846 836916870 467733683 812560678 843302059 285611355 953633663 881534853 280453729 667328799 529876608 47157193 667928119 824877654 260249334 337621524 278266269 632602756 238665368 522110712 228725979 200207875 376533667 971355196 825263360 516482117 412422147 951639065 763698847 865515618 217178017 633331062 111643941 442890869 958223625 494182023 158290428 382325674 196038440 592415527 740997482 121664502 809599088 556827578 415594992 321636729 693538448 598046587 453063574 477735976 544417042 636003000 556659993 985898913 701164436 387030457 140796452 191227251 402486905 580544122 778479731 587113508 947283761 506772039 601412650 945836824 978102203 688405950 727454657 673629560 212558709 153137228 836902218 609890285 925110532 232958682 487312364 420828346 917061635 338834698 601393982 140392159 785089114 596927041 597554432 887530313 807374544 621745071 530932108 877090032 824584441 417721821 524453266 580010117 1289640 577305414 859855152 435307927 130468600 63459642 788641431 547273909 881665419 26825134 226572978 13255789 802176605 669539826 289168396 600848043 248903816 499768877 143480301 901384919 593359361 197743165 601374252 633168277 393670407 350227211 270689063 132342342 280069961 394327446 645618057 971679928 902969802 714768602 72381852 425934540 441528901 552130067 998954798 908299013 736214222 567350050 38632528 627735200 986706616 590560601 267597570 786380515 939992009 604003354 677992535 862367940 756890588 307164382 184876169 108328943 525333982 715290902 449214839 369953159 266629400 839921081 450354126 918611784 510463321 655119548 393848282 61819484 276380010 639943118 875289392 793526890 872071852 177342324 654481067 640255087 121310720 237388969 761391465 721412320 82404883 517820503 592650407 394402462 977874981 678682319 35105531 347023662 764805002 432917710 812303599 908430764 401539716 349281698 495594215 516098341 580966809 981810222 265875679 604961924 681221836 765248725 369086278 808236460 858289212 733401325 819841538 419220128 891032980 686760259 134127089 708298652 508781040 720588703 504629453 220686866 451543969 361781344 138876776 932852790 817235790 455934595 386704427 946078820 642900254 195579714 234627080 424357891 864771930 621194061 116737361 485307493 167180246 253914190 314885053 27874722 457993908 838203217 903402484 501049383 72511004 709104699 620640345 687061749 158413737 878340456 141117934 813552773 751570131 36641281 307550199 380323233 19243865 45311332 664792702 100139166 632062803 61450576 51305251 648239352 132356020 985644160 955551580 792893514 663839253 923958649 800359003 309025300 140565206 643447379 442858779 541779006 809677068 454068891 435072834 841464146 700554607 609964864 296755949 646849334 390088095 398782243 225932982 329952640 778894583 746263078 395038846 419389956 340038860 829878931 779594850 339057979 902614910 530609137 271319261 402405723 746465426 424497446 591051992 785230653 796739880 945636753 930151233 589730861 51997613 292851195 17936293 597257710 364749015 18802825 393686182 880415098 160205078 585365990 212451764 808634712 921619652 430243291 788399391 467500384 630292985 760261003 264238556 88651572 196111189 43494771 8124425 812149613 514205809 462907389 168243101 426182191 75616690 173122923 590316115 391232533 820360672 84467297 654902928 357648065 840061215 849534695 515848425 6434919 601301794 663422508 298342438 507546211 843489507 775832381 333557955 876008520 846804118 319175659 51447704 725129058 435041474 475630496 283310701 372048763 89118918 263484390 574920245 751969508 726233964 597461265 194035027 334624223 955366768 118939597 384602702 755026700 734532093 593278917 769126799 836278937 367996332 754859283 193189364 620674273 478686577 189228947 956124861 876127890 839520429 962900476 506218373 366503112 207651019 330619852 656769036 14529479 785815074 537921784 442547950 369441884 442988464 457891313 608083365 778754868 971795757 990317152 39236252 223672996 262787108 941649233 636160987 136172672 339274281 562793833 651595934 761284371 167723130 327017975 237931633 677148156 923918648 87341008 770287430 62251470 425528797 689840760 829781978 58876581 684930963 142111909 408977185 258483236 44339898 437592295 922984547 400274788 172542852 393890656 409862014 792277971 638086459 386411029 132734764 725432903 823132327 637887824 1638255 526160770 77531736 970046903 786852214 468157570 509167805 947257007 672058143 566158250 702354949 460773305 56808793 952727250 124594382 295280360 559474058 966319628 941883200 597299168 811879980 51994978 821604286 717022087 500382719 560641437 872458992 250789805 637491009 659118890 174703656 466084024 550534940 292497587 390215971 884752692 596270574 712857813 164421282 91362211 888848326 807173101 568411031 103041134 949436546 762133766 924366210 936650664 62274909 260747492 72359474 274508415 864069370 349192459 320668056 42691710 135145966 311232290 672618433 726717934 86142537 166482078 214863621 471638465 771635025 434306487 405529531 685195239 633922247 186793385 417131502 373503885 315122425 674400628 75151243 314618737 156431090 666557370 72375823 816606229 823755567 218782851 714104434 241508907 564356999 809652708 403529728 428797530 944440821 170999353 633098978 934055293 68380963 824348357 645558899 910497621 465576864 223589089 958504611 995989586 476839091 224546731 258751800 502176159 863328155 660766113 72483933 122419732 491115410 360108866 931182738 403385882 334517501 289487018 859462240 190253058 234503245 934606266 149015111 184225485 196043065 502997047 179492808 161409788 325142595 678629507 500600579 673320990 620412872 122329519 638259060 476389667 769865575 335853314 299098935 522805152 143594065 806555350 41536028 630466316 426788734 424661965 897229895 220334165 394192528 807168064 370595798 283166284 718465980 84589623 325442936 495034043 328198684 270208303 951381358 766152432 516254553 216692502 88983634 222970611 631002855 618930620 607486000 206030447 442774836 729642788 991608087 577802089 460382796 970758571 964152182 972992759 310536561 458605515 868129482 840241363 655524915 427113393 593626295 552845342 317150445 903600132 7681986 833055140 892788959 227030056 794888563 222934392 563484516 748821216 461608832 754283571 449745788 159732465 131582453 93760245 189404644 302726365 123822380 16163493 36483855 260951613 591202001 840229755 225797111 897041010 924139443 414964344 676929418 900955521 345619865 172210113 361852734 780450652 117329975 387687922 724473424 347471600 297242174 895148419 778556291 799119508 803088624 836852207 381319004 982183755 224729126 145510332 603482871 578578180 974692495 506344156 917153231 144406022 402260918 177699459 268550528 639601484 145889425 23758914 8545303 368454220 443602233 25262861 953804606 88225872 279638299 489224736 568766572 939180311 858723325 64491619 934617449 281576938 924774184 503627828 35158950 304605800 411054286 234409409 634004657 56992695 434746383 49972927 499385815 212550852 224989465 453871569 414610811 364025146 269324877 306010227 80212455 923012733 555875442 955136414 490663949 103966058 768229174 720279454 796727890 579606678 154598054 297398787 608049240 245958150 186057977 187817400 95700888 468526394 224341471 475127270 307124698 432496529 933663313 596493564 167747780 633668739 75712601 565107623 581851217 112010844 561948901 713861208 842421280 468856145 634731186 298951556 749962324 377953633 355078985 802293622 660696917 558261237 976960553 916955329 700764131 890556399 67153677 661133757 582895725 596875442 229105987 689178352 73851901 61942419 992246038 661239339 801611971 762906665 106389434 669701536 813930561 472467561 274187332 431252742 78379486 402494859 114518852 906375638 749807 738302867 766110099 885005140 460504939 394264456 319988828 462779495 679393412 402672797 837887668 919195164 636445860 297890520 635429282 980988583 608804280 602914490 329506312 57171703 671852567 100358177 31004628 267421559 865042591 12913926 430116254 667249456 302062502 977953028 115724177 39288244 193778229 782207468 196196239 122022798 163617602 303559338 365544477 743880778 215680669 706234256 590763241 429456119 298725240 575312901 351875149 240280383 541440798 324341913 372379400 49285197 734152243 591549477 642447335 21856279 698659774 886083098 693652871 587622858 646911350 47498679 870419022 96577347 819495000 598432097 385999452 555780084 734799752 511616575 696793578 551834480 545466939 922374568 452136957 247767117 934116637 784376018 529205210 333336565 573334593 602076137 837936290 106264013 755811933 50896900 997261369 169287415 994948510 23582760 700366375 661229708 236058881 149038647 953557008 132475451 106471088 941377393 569603758 716377499 907591729 119521156 440055367 523006249 740628930 544992879 13306426 946738406 475548752 59112576 754588678 114031730 692485891 23249010 673889850 239838627 616203191 373395970 384640446 353065796 931253949 296995987 929901185 518081129 530404180 773826348 696729806 561202759 574095468 134968572 554435751 476311785 17635740 226999344 386235124 988329633 466428580 824240339 29869776 928286284 998629151 136623640 809810487 633357308 416149083 272091142 276058608 511845119 944055923 816485002 708508502 758992170 9397418 53863569 497370521 244847201 876703094 148825268 478853798 765370930 438811064 399273898 201698911 883344054 155792863 151165943 845205666 351669286 750738589 919532127 827348437 590284546 95195195 597225793 162944000 596728074 619661243 992478508 580112854 108326849 831227730 577882006 969770866 766962328 848969693 675342736 256606281 729158437 993074490 420221458 879486734 23302487 434390562 677274563 434517857 266993016 107229636 31118043 971815258 427018744 827044372 890765489 613058979 418793818 157482822 274627512 388957227 381069550 105947740 866033275 405526494 139867605 629423456 572083446 109057002 519829813 227484559 727110444 558411391 468322681 184073049 643732366 834927702 739302497 306353842 471168035 456369197 144287682 367445214 703268442 267973240 828321864 446632918 346332105 224055888 538448342 482639026 898021472 234736654 435470673 256774358 927624184 892959098 34740309 571652569 472727905 241946966 365890386 41947469 22008413 368266187 689266857 611240732 265451535 371855908 927368580 481314087 443257880 594234253 115633418 141986277 255843755 530241287 323801065 181389660 205533287 245175887 875568657 968923605 946416171 128786355 658191616 785934156 74418352 664236139 65977171 397573467 451133408 721444569 314871252 238951026 654340282 65499340 621897261 630919442 134666554 383439270 931886099 492551473 252802947 152044648 254787504 897190789 933640970 424440347 356209295 502631726 176975044 624747113 924629764 644747346 897885184 798821315 484751 421531291 996912630 629160009 719260650 176876617 94560810 779162931 781871428 661725802 467675432 609763688 861678787 991646318 209958368 5146749 791841292 580421350 120250954 706607526 453526730 869055679 834597557 690726281 817305434 471151875 782604787 713793909 185218337 111087974 772005404 648271673 39306483 624866265 311528912 52014051 218218797 331605208 300189472 779882655 978395166 604188078 244300450 478091522 80265363 515262715 948289143 780825200 612150629 416439885 366469184 816389451 787778385 718860455 690929561 800871784 529159901 678503275 910977279 694623643 997304878 393832897 224032216 424558136 696921461 788036454 952946605 254208552 397197288 740551868 929296485 859018430 76811630 484116219 645635443 508212193 60504371 404317019 563237618 187251502 716237701 628236607 665787892 949989066 645340306 667611604 176323194 837002556 316876303 590614087 137855931 656424338 87347834 800652558 182722881 725466517 195104152 975263269 533573120 511094316 409623502 264356956 776427345 469523907 83592989 172600142 886161786 38802136 250810520 790838472 939916038 394280634 485796469 85274849 278637238 421358724 347095444 657716144 118062697 988768952 464763829 923692117 463063348 811425160 364978308 618940010 514864243 141933440 426617476 379581633 721975991 193762047 229243570 134467562 924584952 783654687 894103596 451626340 43790556 834790829 331842469 271752567 870066286 775925498 639004277 35364614 755266333 911005137 284256251 729222815 13213967 674124403 99231374 490373533 861187292 167363474 974956240 544577511 843888977 34687447 26381035 468139597 58164323 284458147 171191935 598194820 533715744 620736074 585037920 537387584 459826416 485788087 75923292 288092892 742664852 455614909 328462146 536983621 369493817 81846558 328759747 73030970 977203347 583874496 667617577 914479237 118090639 230852286 902694714 569097454 615647023 244309022 775486027 67927294 247179640 724099843 637850563 714186542 322401260 658973185 353725841 177789092 383619212 904725115 927453667 898057475 701935707 952160291 495822897 335276021 814600061 842523696 971723092 159905665 976902627 103067701 164181296 301860066 467836658 369471346 353963241 400814248 725045901 47334231 285405176 812001067 48062597 364898115 137537435 724447722 42619974 962578619 653873279 254775028 380746605 613622929 981373456 287855858 884110878 106763605 540310925 322021581 890832281 73916774 991355919 379010204 100381574 898222818 970521974 166730827 302008865 679544531 955353618 263343587 253046226 319971163 397040900 13342456 470491644 22620786 818639718 47752207 296733160 679486600 637921369 420172638 164607032 66513349 390352968 922845050 531317841 604801748 461862135 219893615 124719868 879080789 417130169 525076263 640224610 508539885 561628491 907319069 945808016 334974937 932659597 342660927 402298777 404039825 345902534 161997612 991623859 798323956 374393694 228291428 849352124 745349210 324647469 277618458 542865935 834951044 699683486 369168282 418846855 91491321 365094883 717563157 493777412 790303479 902721433 617772298 361123846 349922739 675928475 719537182 533096653 46550911 249753469 838950973 566437574 121890724 32357057 857393914 688365391 118891149 186790141 704596069 685346065 938500814 593400083 478782775 900669044 311677562 468797421 775271983 321324083 28739800 94712035 378374215 414485493 128592346 543140627 380550089 694257788 574237551 890730368 953478882 182482214 472085681 586408284 919078209 639104299 543486063 208743725 158398932 109371129 890917556 504125362 94282786 300536827 851938203 453705875 210036021 907102600 757480583 784247551 424390450 108652652 141767636 180100631 153771576 349712614 664620668 850328880 818204010 74888239 984097225 974692586 603952436 277774151 342180449 762545139 348215979 251304830 771506980 740224285 840245665 166214470 30449186 571171893 337033478 337901531 175327183 924047423 790316244 653589506 361884507 57820390 618252655 777146080 789271148 769720057 218050044 256513456 296862745 651925489 21275305 615560691 96683149 295565623 564999771 981919504 533855244 445492165 919501288 775119619 335123861 913120460 994545738 694370716 253854106 158820295 175262090 122581695 258614984 814573485 327270591 969732390 111321267 352271972 181754402 427567210 629112554 930432843 31619309 721416957 572544505 351784005 268412784 286088781 450848705 76756263 399724220 540409644 744219247 30210048 811685550 608045812 538622627 35636596 300993034 287449219 643219533 672897026 584445041 776338984 24783650 343804023 573370277 262903319 81956644 877586175 89241706 477471513 551686797 506801781 740677881 747920643 562298839 404738517 639045210 835644894 555596805 646652827 39552443 908878809 711208099 379599761 278530621 727431420 912414151 559704587 863763402 842603205 873499428 577282257 233800030 664579326 999842914 576006769 220461494 410937714 575596785 49940774 821954172 178857001 976168021 546829201 264643081 10313632 668551342 146066018 188076271 808894539 684442332 971602441 233046781 69437458 181809755 760440373 83781120 512530983 263673187 97837654 116426573 830387833 324676819 933777377 484698260 969871988 652370757 708330671 574072222 204194258 57615018 271925248 217965798 152887757 624811270 927577237 145240098 754614297 708949555 163184032 797307006 122725661 149310595 272016772 387948586 98361397 746524803 623212478 694803113 381891141 258016612 546563693 562108032 9003911 401585231 169118999 948495340 156081629 579294015 911880277 382243068 993415546 414552647 559326724 838378220 440751810 829004807 74066531 582259467 538390024 954150012 99869815 834655359 848361433 187295101 242165815 805131956 721486323 925707463 566556455 526303405 324048966 806665168 148420770 284763485 949523533 483741770 189115829 480856546 900381472 822980053 380476370 578135046 932922659 571207675 709483472 151536434 261170937 578244404 698669303 413479415 335650654 203315013 476027882 387455569 817423501 550192487 391210879 374758466 531620030 345403791 380983866 342976688 862121134 744242288 943203839 649427348 911859879 100442536 125934805 91403863 266974679 325042262 124350625 595033596 262350372 641402760 118424613 971535314 558080707 732749691 711715504 825341488 259710066 152705835 182876505 598491971 620296874 479119406 233641905 684564466 992255950 556651999 76138022 765801523 744506009 276060912 870730558 492219127 108056824 393105183 973479385 609503106 147672353 648427812 427318527 4207433 262580960 944681552 355890759 859762361 537752661 722409081 513971301 783432843 815303196 423863271 336704506 342564170 122538671 289168772 178236149 160276168 167437341 260687149 795534149 236226792 663555617 184018784 258652156 750348817 851432855 242885585 289212494 180111821 899103074 46624961 512750560 446180694 258628307 764828289 180075802 316857907 112795148 184635640 905539693 293612391 457017703 478210967 774523653 424367996 627808879 974803828 616559700 785366665 933514341 868803174 916605188 649946138 617205317 896704550 93510807 959501047 571677062 211589601 762617973 617455860 144650617 602087475 138366422 865866258 402361395 714584211 986690450 609720964 807653277 323150098 68988406 279708144 508144529 816303222 583446277 989365132 103978168 542701362 1507747 124912595 408651718 418893311 560004561 231485931 229754965 188844665 959055077 745474779 278592315 943038577 586284404 815167870 857355314 235986911 48555221 608505296 919094824 833489297 641057912 92633526 96866426 737772014 247448236 849843863 360826920 943730949 755541045 204522997 104277529 404606765 87607767 110620486 765868899 962899901 624412457 505420186 676154172 68237422 956541728 432461509 733612733 71104766 293598529 856620395 410100499 800615975 538859236 748679458 283587783 707457170 88729262 334478116 537998996 772670882 733339713 815265266 334957356 753472643 14510067 712889890 458821781 87350412 329503876 145409449 926852742 894880731 240617497 867884686 189460104 179984102 518205172 34143983 513142458 517947788 932856860 269493378 20458207 223048225 293996881 338052349 710915637 104826697 157065350 404396884 883251431 926633317 110156378 250122487 38439956 509479200 240700309 726971325 633254588 553318006 107929715 165068528 110552457 317110357 898758958 126991910 429551837 206571682 690806649 919197683 82395808 247853980 117086895 834313076 530524838 169556898 783563213 438289845 674919253 525508080 925167788 333505565 418050211 921021353 739759366 763535332 513780179 891550776 770562022 900683921 850576406 292421455 642322078 283286204 720493103 550329889 647056761 398582517 102491547 89151719 397158038 335193278 439584571 632526601 163645181 808616569 219528663 551406312 89928960 613478487 352246733 754565340 811803106 373752241 630234066 518446851 895784172 936516028 857285757 92115632 914465482 20783420 440448148 779023037 770615223 900925747 583637573 350263157 855601054 244248029 372236758 380278448 736374396 741143351 947671759 69402606 696787552 710701189 256532308 604508026 242937975 191510922 98093936 505174276 382338983 985151446 758143396 451029738 443147377 882594535 517734051 793784763 163410422 764107497 839064333 147799314 436251510 130464409 610711863 68832014 252651491 495754809 170605259 858639828 509254489 495554328 116391012 535925205 9830455 839468721 976053972 251137541 865592476 209119577 341583350 756559306 43381220 103322162 831180529 723118605 605107928 53849567 484837868 608446780 210566526 765030976 571733415 164548202 833463927 14475642 494206248 791232734 587136506 123747195 358471884 445786225 87961116 278274432 375108808 747491882 765886408 635823599 211301470 332399770 73985823 239209208 475349724 404877060 582231063 654446367 20949979 865679475 552124367 944282954 875479549 92272778 867614849 976057468 593834776 798354058 775315349 795150026 214524559 650060159 390522968 418006100 197530927 603254054 102193857 389370354 944697594 754147754 315134552 781311513 545475068 836640020 808611593 904222538 261206520 599447342 976195668 572490156 53166810 270461120 972111727 60804444 245365557 983703689 126447603 96112523 926863223 72924154 649202292 764998568 90681103 504286152 367312839 658069875 266283111 106263902 465985783 232778652 725083590 575072704 63784650 632548709 919765535 661930648 207277741 210426371 312930450 732505917 305554247 607033356 583379940 526441117 61118773 674321631 27149170 359942062 980179796 632081867 401259280 661806019 459039108 153482646 65878977 858269055 454281785 778996344 364646472 142532384 585630587 665364534 343538333 51069243 26121406 672330487 405697809 168191304 360892854 293103924 137111424 87094497 468741268 325723589 112198275 849512809 394019350 626817633 457354638 391832128 691776936 214150901 352032953 631659428 378891547 241746025 493697763 593910938 943068838 514051039 171227412 177342725 281196494 831383890 228105275 971782271 21599646 404167319 593069431 116705637 100735130 813355049 118301429 177240519 704035926 738240599 774835168 894537790 55011095 915994124 975688363 404186279 398653203 396853229 682718292 184270930 984328630 850275528 593132513 955497889 318050441 333069839 192328135 55715404 707490245 831422228 605165798 796275268 693593579 404711849 79043745 625260622 676388327 758696348 790401179 500445697 947169565 870365086 744919612 910501398 264374234 67822369 620517588 386617370 375929054 387382046 620905755 106486360 88440451 856108394 50309397 661075254 5165477 371016005 7233378 757305699 916004865 714394821 225476609 318818968 879676634 744429807 120184487 926435199 782689234 4142219 402580058 515922955 777280585 469482251 650671370 406869529 340141204 779206568 273846300 595112999 142104849 25158888 464387532 483155567 801368781 231754299 851201024 792951107 244779801 119917394 164098058 628956521 968733993 889500171 135984812 993170447 41165103 347038889 217520899 390625991 356465947 212446248 427707282 58951660 932007657 586402788 474046418 955300075 532163501 852621498 91655141 978007109 289200473 420390854 296320756 180120203 722704265 639209482 485371664 862754790 431880077 709586176 4247712 929673366 504046704 378359669 273482054 448686027 859061516 158067930 126831896 211757163 806533081 78084207 203554903 578854391 957326056 163682200 261018333 682981089 889811287 392785994 277610948 929908553 431787763 207438584 70464183 709250306 183449331 823339080 645052266 892191971 456087696 464320531 670990557 217484007 703129450 443369658 153801588 702347658 997047498 618507936 997339671 35184601 974982433 996318588 249109965 871934580 298130978 674217746 13465500 182102678 11624162 69316811 750317185 433381607 275202377 895821562 971030196 372792436 27017128 554293118 475274310 311851391 653236228 538000761 665604469 813358385 590806702 438676768 331119015 388813875 714381238 203776287 13340450 911510848 654320640 531351466 575280002 155677504 35421144 556299399 37849476 633920156 673873831 221175222 254017670 292091787 188544535 40089871 453025811 934914476 737804267 183966078 498151791 804656671 816305694 594356341 789233712 879726273 151731430 949620825 482461177 75510382 915634655 990808505 275113776 756283727 580482210 822400627 84852693 405304239 332760799 497496013 105965012 378518195 235791013 669561519 945611763 335107156 921843441 972669017 649328303 539955209 681830492 318979491 33108750 522224674 752280149 619313732 201135793 44599369 930485385 411370052 865184648 21899058 311750316 913404885 404249499 540655410 898056683 469630315 734209305 472183149 60639429 956756542 480597235 889778992 103006110 298217557 133524153 526198099 953935771 681463866 313177593 750033189 199551737 38523343 6356689 383634308 568545695 252640587 808428767 535375678 406103377 200816275 433233292 984735647 663831178 663302035 843505681 606958750 279233959 192394168 896491220 91467483 580159274 892134677 591188272 977418675 660833559 668196569 428517153 517923832 905853411 861436658 668668241 498307396 314178099 217465347 114915518 410250756 366748616 860319244 270345738 883513951 137601854 232472384 294085147 356466510 277121918 707963053 273517735 441894068 931664304 572247691 999611656 379611945 60891021 290777261 445262809 231891477 721929605 842388607 432396940 991501414 632510108 232317651 845271258 634933479 364392214 753170025 488796223 401596328 423015261 20585134 31790347 645783308 283315241 738795491 27424927 591528582 673362075 534576701 590696364 127413283 660503414 128344867 221700046 648457796 171751804 258156827 325394332 216128805 388986165 194835051 941089750 552388530 264080815 719259831 631598980 672732909 544662241 751200484 818221164 206523804 111105124 942937546 73236686 901153335 309807539 130740782 617164019 554741991 626165240 840164206 131702851 869390996 872687597 12609124 519146499 676521899 141421919 885360441 558143317 875381423 805521926 321753854 825188194 336129373 770405409 632662084 548798260 993586515 218718237 114219827 228780955 931169122 683604245 620230275 867396454 446871724 474895425 960576968 264756899 8392028 696459085 522702604 129878161 372111774 276078857 119915728 44046894 654109774 874086471 508724128 596498889 789418390 556716317 833324335 54984586 376481030 238490076 330797697 498723857 48304726 540833015 147639429 471123454 468790714 809579958 738273543 140885172 124469633 673810424 566829676 509951118 774505846 566011861 669268698 433309578 587662098 743838958 932685655 63858568 440744907 925049795 126827363 94886154 34983424 170170490 110144887 635964102 336008643 282872195 878036986 478069597 747218022 827041185 336416922 622583759 948117679 948242028 530580519 828613575 630274347 351925540 716163335 164734770 732958620 294685721 741696694 4820720 516622857 101552772 145073480 713277566 510612837 8555127 206430510 673447619 94509926 760728001 425118392 743178579 315261478 485947991 180586231 654576472 708044717 846335032 262282438 791213379 680908177 996112611 320225393 660273290 621536256 347735091 237931205 732005739 243081210 131136877 404671086 449672212 20451426 206973785 699587855 985374323 82987890 928900770 577677763 301280269 866850412 41368360 749870078 795537283 720885803 520856411 305056336 94602869 313728807 629855812 173801266 202150562 412166542 717454616 231244377 333234945 602018022 581734414 200409467 793568921 856710957 204455169 98804374 276119928 32432311 452415757 608592956 595885808 896496426 470042685 111255432 971774831 454841153 359166319 833736811 375897298 535365311 181462047 184999976 12335690 192248722 781509643 455294630 166754027 93572799 483747559 466930103 168835078 819797835 98602855 800672030 416877398 24676103 269826799 322933559 756428755 208419794 92597934 88744544 51990676 265613501 294847339 119511498 591272127 429878457 381421520 775029775 752390722 504379656 389622245 223209434 477909307 573099777 908363129 864531717 460293590 188786938 492627130 180893657 510298133 194051614 390240914 222870722 619155703 139998529 651340697 576293478 827647652 574711819 106135475 651990475 622589601 648478164 87703554 953498488 783558865 745016255 173748475 504493682 408431250 114845085 972231617 605745216 707099763 139418433 421699286 310564064 420301616 814383274 591553451 926145266 156675955 804272124 690331813 937652328 47971808 156369122 568968163 693102062 573697513 419641407 852154429 221158537 490232495 474988402 345362590 922581576 766234312 201927121 147522903 230323068 109892353 163485506 313086985 186149603 419230582 242909397 221525258 208158451 720631920 469892555 56712231 279798851 117278382 971923949 907457037 741198423 141694030 378499291 669769404 436892716 345020483 490836367 147622409 674513915 492870713 181464947 190839944 466298416 511769302 669185709 184725393 401801084 749049447 847417608 84231922 468254137 510483780 583061981 567357290 511595273 703168859 721141660 661042516 337038707 475203123 806013061 874946009 259859890 551703014 564066441 28051297 560563167 60784892 327212807 102074147 220083988 276830168 148490753 478385215 708302853 336437071 180004522 168296037 544755189 454862400 999275406 901832713 379780244 165229027 804451063 654282000 553533556 750435847 841485823 339893446 550737045 191458844 599488214 965612137 750558391 543100135 687922276 854224535 310636806 529821612 6482325 876075951 194839357 623156249 317105051 505400353 458777403 710536088 415173721 243011538 175413947 175312368 436197123 535700850 965874503 829664422 866294088 71901139 256276261 738824157 581955261 667621419 544587622 854122107 965171860 995464714 672556281 399604465 287521981 449484716 928180856 53419129 635519350 625802671 899157344 885987848 705130011 206182005 988228563 995985649 48550620 440237488 203953943 856935405 806486188 433597776 81314966 118300907 581519098 343106930 557489992 304583202 948336604 822320098 38375894 386514287 203958996 359017420 780563883 99457683 654982796 207192550 574848500 458124876 107035959 764797753 978028806 617336427 978021293 925937432 76772572 873831876 778298951 178756661 374640155 355410195 839224656 686344370 171535737 527443702 70599783 781324370 312979264 838679927 954253059 111102062 603733971 16576357 276519258 868797845 319856549 288414961 777666604 388832980 191268365 781785317 229782153 954187615 546397153 735565610 907733393 974184915 146737960 682940913 567366796 980592157 230693036 285818551 895426100 130005164 145110622 774487513 415680981 351434324 947450227 348881007 506371220 497809666 249741316 747093845 453416866 606781901 180616376 257627832 801442887 892170327 370864488 569640693 945313560 639560053 989806988 446570391 772487600 889415802 36647932 739153242 698441074 12459273 654719075 806230009 33124207 145069574 515721709 937242294 781946704 237369455 470873522 635204883 879781927 543246542 781827178 781123988 223825902 980447338 898101689 245124238 779481364 665565879 336411002 114661299 63797079 195685628 627127566 728728049 405795667 721696585 760329252 897183625 463296225 159866929 885357641 371363604 149474898 866443408 796391603 622401760 216359482 569887230 435647471 371651702 705673280 437470419 548022765 380407485 216392981 793326783 424851159 932235411 996641131 152101783 928848206 41891451 385819733 108425647 301616398 173625525 921821944 896840350 48717120 855556137 825919046 47540318 789625543 131592016 29529729 934422586 465914785 668663791 506322434 569555302 376148998 700396372 136936674 78349537 377254529 890386855 670222834 439746945 168652337 771535115 74991557 297419604 990257001 234027340 770817902 898591423 874943794 885433773 351828907 433873817 538865041 687890369 666220693 195091357 383653883 267100940 582837850 430524016 984987934 191964834 482545921 811650342 769484640 586629364 187906177 835751927 30490658 99108178 118336762 539533667 75826810 630921549 61366589 328193215 860588874 814608577 824078199 976484838 811505032 968287280 663813813 515566308 513223119 901547457 975249319 442651220 116264757 210453675 526811154 639063433 216567232 80056201 790509917 643606388 913725738 365870056 413261956 175648340 145787009 457004435 91799663 758689832 50207692 206941341 295363428 246608848 479039835 48708969 495915153 364091650 289572167 664767312 177242955 572178616 62024621 364672141 454820077 134144732 272819763 675014468 26422375 194090522 452950598 86086782 63391748 751830497 749530517 954517844 471493088 911046608 946338859 469018883 245203514 270744133 393883483 657407235 843495092 898073674 607810831 604208176 101949968 257086685 308283510 431610789 525769461 108302584 659868809 24648741 103067011 358614308 266232837 128005494 236048846 208030786 551326737 779753730 475229079 803717900 970790164 517337856 826613401 99780252 464661546 180649943 756838073 131858885 526225889 929207388 469157272 469795416 211861225 259234892 339205806 446662477 457938768 109775907 541861971 605545951 588468784 321113316 436886367 537297555 892137851 158066175 338633618 83688426 932071511 479761853 11430410 345637633 110297600 908495883 996166423 24575620 706648353 571348356 191622449 820072309 133516024 441859393 972812714 594543110 592011261 934325601 148749015 64822913 547385428 996459979 501806591 837955749 419139845 147493284 976354376 453362016 752155806 630765130 937615240 168911243 808124204 402143946 230649882 852514952 11153925 108199149 174676354 728634837 120567957 873265861 517330777 644851193 380442210 115151343 141700331 717716408 149126638 730895965 369848387 315918914 870375057 298559511 338826720 732516922 37464315 368158063 568008385 511897364 118688852 20965917 13604685 106495776 586134106 451656290 719535222 858918657 67101044 479152335 772009691 895482576 624008555 727449926 757773408 512306316 229900644 290771731 912742571 961187961 575519627 237074029 870635979 380267582 181994981 623203971 379745764 787946924 169321550 360216458 773897062 782359161 289880471 811579409 348520560 689224276 382051467 324550193 193965998 685140740 240854836 499464900 295406289 417337046 508821944 774944530 630862083 863812824 550951757 923996167 120575002 37420674 471668649 229967332 769876159 36278629 886447928 317527385 379917327 249126127 782433754 82221572 586222235 67896822 165573963 458786427 479683405 394740326 268730569 237289286 276917183 779517133 780931440 675229051 320303862 614111016 158067331 768865890 914323095 409330879 192781569 647544585 71216187 347370390 974320289 253206522 392473953 398552534 654575487 836361714 790612084 415337049 166381166 458105488 486112526 427545446 126266507 603320726 197556887 867821026 380461317 68597485 198629006 824778389 527547501 683894619 930865587 478201250 539248278 496986151 544671018 795458479 726994664 437899179 447020156 941770898 102138169 753920933 977954968 221045323 865317014 801357709 830414697 280413862 106592342 606341554 846325594 130800715 803670951 640656045 793711279 9493190 180194032 751236833 230511711 394290777 826185238 496401937 737212881 869506953 979660481 59120419 331879634 965115381 433875280 428453503 423259525 696056803 104383102 860306347 654849700 409567721 596686142 849487234 750278363 409173599 398309226 283337460 715097745 882621642 261823105 876642708 456439795 475701786 473189794 749024079 948756302 330466673 868080758 312952847 971483798 632340985 418450786 404893563 714857041 889220747 102329823 530842878 455360626 679457645 401584539 215910852 857998154 68414775 452368080 25020294 928736320 761036905 497417128 991336246 385335121 740952007 13955889 689369869 408216851 368146768 227383150 18166801 583894418 577632983 938138285 808861746 557992450 317444997 921523239 832206016 441997864 663780549 731002957 874777215 192399941 135248725 37708110 280792125 347665589 598521692 210733032 964065792 884023758 390689632 931214374 277555689 64893084 980864598 397250013 308495549 5825133 791070502 755736866 517678896 75516796 300155763 364381867 399206592 868372317 71040939 983711816 643386172 682320003 98316044 870622886 811262355 167674490 915523585 744911551 312477814 14307610 389126835 926927566 847335923 159937267 606511417 135752988 568559828 534063827 292931573 683628630 752675972 26126943 925251895 529277711 252340498 614263235 986053158 854169444 713241504 242813378 762069153 762630886 322024198 476072310 3562217 671149952 658682799 650165433 757411992 482374960 673448078 997538885 109845026 580478904 414908650 564302982 773545842 231927770 170599625 903314971 803670967 333380013 652369062 391814734 666112368 254396971 22048591 631404014 88676268 529620371 752424533 34356682 61673551 778651225 336283797 523554726 271690435 530114885 572180806 191511233 815395311 456715344 168129361 361707608 976796369 642562941 211203876 134779475 687452499 797875035 958442967 498416317 357229833 415831993 403046091 476904973 16013531 524487951 816509100 788101844 759034873 706619500 745380709 10721042 753319705 90803016 370853595 850010352 558683399 934840406 555990928 843212026 410780476 64791887 222197430 761926239 956070101 826923365 511771126 460363442 689104867 510558077 74001909 673010286 26736954 53245702 665082029 78804794 574365217 115734634 522670583 325335281 221139200 650019002 400896034 811538529 31254666 430207434 87968604 622437741 951409937 990971386 661067568 851499923 143176432 587563757 538983827 726948157 651573459 834213294 37633569 490137375 605045343 486099168 196414424 387264981 424404918 777936166 98517418 588518537 776900619 929225704 150257767 641422683 337135634 710614725 990198468 846092855 62529195 860451314 192159406 495124719 495408829 305868468 809924204 769332212 617602712 146856041 988215555 118411816 701239357 738613133 738709558 832531769 27476341 503942027 945539221 24745630 718535576 747412350 458292208 662102393 442005152 300361166 384502032 884024245 514265576 798006053 222170839 865397392 528778781 716417447 184552358 171745479 266623007 806112997 996536493 295827169 690260634 370143271 475454480 578545408 201107650 169565750 69530852 15763851 866088216 486208345 789078318 778207108 933052530 189722011 211753403 879344720 143372132 387642926 61369752 891058950 873661247 694484838 180198874 830486227 242676973 605683170 468617219 160764597 406860211 960561412 318548784 959649238 932704628 791674633 855442683 201786502 254614409 856263473 549625123 75851977 75798008 897514513 31781373 621988016 384560444 296893522 573760183 490381614 449305569 389374936 261728941 601001884 42873513 400675053 697271631 837588805 684721514 984873127 361314833 114623669 401117864 254940902 387100365 896199690 621767862 169772871 838689556 457445351 397342988 225828974 277892271 40872819 885960363 707439799 434596581 348996010 945451434 591781075 909147686 524734938 128351772 531910747 810907306 678155202 682903413 506471249 558962737 33265740 460310166 105839454 588842265 676534783 921300100 34690196 181076203 294102265 120900052 503141241 604912498 475451371 469196423 101848731 51664039 830569898 878826427 218519076 134163484 756237543 65441134 334255750 821387513 579091773 33254211 449537618 626030531 269341507 764398122 932111260 634519998 270174127 889891004 948808542 408019678 794923014 744146617 585951284 843887185 614167810 797846834 469325020 608416672 971396771 541009001 7062793 498183566 111267764 922458551 768793684 557007793 411559621 126183007 354596518 624081730 882388186 583910781 238761626 145933478 931904255 403420136 275191511 377294957 173887492 361179608 404214191 17504102 624557288 357033863 853192567 527261002 862635258 206583150 876941267 72497692 645969863 302710950 550760739 672333351 195502685 832053585 254588032 422667077 456707042 998961876 111300539 761750010 961256547 64275887 373644758 146615769 780160941 729503208 503011991 947298862 270638832 456440477 311469782 442848974 871643557 381209287 518092738 628396805 270116015 534126457 494436595 291076320 283134124 534522901 633507037 180895940 381458045 544587441 154437329 990636085 97554165 93017919 917176149 239725775 916039397 764110043 409901112 201959868 504137062 520551614 978173808 285826718 42510412 903099645 817314383 528179557 142139635 684182240 722149972 71896174 75666490 385953350 168490264 852554796 382794611 158661976 616022822 736417299 982998175 354810447 787571486 58695572 696612355 774459485 732905445 543945870 577717498 987957732 88160495 791113038 451169454 518318968 570909998 10463980 976478173 60899642 964504225 43120350 657490393 60600647 820836314 841194366 34043133 17839726 986477082 879768077 950855895 155221735 681907055 524467200 921547704 183468408 63734654 476831711 239313473 571875100 141825479 356929078 210066415 865400674 880138668 986959988 295569093 366352389 844919317 505917753 931894130 617152111 259274113 420340679 819498412 800975821 92311000 727592652 429109809 23336368 246230525 405491360 792679650 15135692 708072953 971991928 458308234 955550002 622309006 103710363 437715862 807986406 8881179 953224211 422007660 738112587 628027411 419498425 766676747 672370627 954840568 742918547 829763916 365200358 749526297 177702008 943426195 355714259 34512186 101829649 309953514 372198394 516993945 483139025 107307729 373510462 982620336 872819776 67708300 779727485 284777516 27442039 389296808 549238602 185309573 8984691 420286101 853211280 521563812 377580881 701780621 788773015 849173680 138315564 286928620 369662846 410793435 950967370 106901702 234630223 450101933 68228541 663711364 421649725 749948186 290126589 736537081 627665755 173802015 560827234 351877516 454354083 563796171 736451532 736345697 276645356 448919023 243323967 425548750 428502163 915166158 12374676 465202472 535818805 564625036 901112624 811191419 781768002 418703557 207345650 609860186 387893562 611294435 995264247 840089188 25101357 565482382 471921535 993225034 328625310 163880 442429609 671979778 88288622 226682245 652790514 643324434 254914621 39684297 147778105 83760262 227475839 92431511 742316470 881550500 48924026 464009830 681757350 685668624 697063499 484346298 966789939 384213817 39604916 489063210 405757153 198913283 724812490 654301999 452463472 650460733 305211540 303636422 747584515 246504220 567159644 421276114 37828229 802888679 66500039 550738327 610572898 403350394 945852819 293212329 980175442 347574571 343672927 523400975 793410150 237377008 479680203 679398660 117186926 464197443 999089595 584580026 334115391 580622001 600263373 552522568 897654190 651297916 345501641 775219307 497495206 115913240 123812012 590766877 190467279 685157788 534941994 472494074 268406966 198135750 554762471 895865021 313717597 62214723 845363274 288835606 799983695 657855669 547313907 793515117 29191333 473047873 553879120 51368914 735775212 939070404 435688860 152512716 368093022 513751762 161734787 303438876 693041926 921261804 651661420 63215278 463164624 17045442 850344015 476161456 357035552 663271876 260058308 487842245 741238526 638684413 567912199 913130789 129667853 167584739 243702905 617734209 876525838 606291792 811284105 812293086 82150441 771908807 896121023 330390502 5259291 83766783 123528257 594088723 515316052 430092519 426700298 255432104 115374540 147622928 337641405 669901127 222400616 465292246 78242735 411429067 762066755 921862698 411326447 215373180 769891233 248096588 569869122 865355466 270321310 754272184 516485855 245827271 263425618 812522887 120303729 784568111 574543394 971555320 931390198 680994066 344849802 720012347 613986759 922010708 285320433 582337527 877999302 189254570 2810570 949060639 188960892 766655337 722495241 207727773 895143429 674103024 423101356 323152991 905602532 317137635 785019234 496635149 798577298 430771971 799864055 473236996 302714353 815091628 883290554 698387585 834007907 13664667 450584656 550495120 458342597 966792081 174240458 691105476 101038824 866694210 434464538 523379545 314797808 550606290 115654176 530497544 776090451 769026914 996674364 181873955 276434974 644981344 238014720 259408399 767445419 332395419 976437613 874908253 181982219 310627356 246827727 628349462 954107707 488048674 399794618 551832860 275766034 413954734 343152172 142938118 432442008 818449530 6186136 977723863 19406315 861884119 149556021 215928245 403391073 515759513 952573985 229014979 491136299 516399147 66286949 928472827 7179857 433451085 581018989 102501675 944140245 545604114 20223297 389201328 493568460 770759627 791325289 378457707 277414008 700171780 252744880 811324354 28960237 459177021 275582343 888442354 962107469 255393545 488713912 844108036 911001663 463468160 262306480 478989637 373507991 476917328 317568630 219854661 962903728 661696058 388230682 480459444 911201935 507692747 934644225 545396390 740257214 404397420 897143819 385610425 763921105 532653079 714614663 450896262 73369305 825026245 477187330 199204843 583812190 479039542 273111838 147809104 663438773 494760355 261950266 254400854 679169511 35570337 626733553 687748412 145415416 27352724 981539025 427163716 16414579 967861815 447731578 994898275 66001643 956665158 687865989 179578895 603693576 916780746 471723407 134393982 20315884 175671726 852589860 330933288 100403562 583678906 373344782 130676317 535104375 675135519 475319836 709012664 970148921 484041362 455726071 37733489 660867853 931666771 665260786 486202092 994408229 301170606 229259448 371657618 704971706 603391471 623205866 992385292 925585870 542876457 1726701 255729486 525325743 930860945 545117933 478391491 10008368 995423609 211023668 17705560 624234276 789419417 511730911 455503583 657312961 514467372 347344826 627983068 830722878 521273395 446906457 855636360 767501629 156109767 586054091 96970911 246780735 610210103 816838043 179092140 337896869 622713365 654594000 996282551 132291664 342891482 32481655 255229569 693744241 280534566 755407372 569446210 192065481 772851817 10350242 94042383 476329000 982755069 621341700 92826407 25463829 546994437 283502837 732763819 92774175 522095312 297147943 282879755 62186595 524734374 64932152 280967039 971369130 55236732 312628434 755001012 177557760 519160551 233445564 306823483 477860854 50579422 898720679 63044335 785041322 407506365 959430293 364843639 435076180 987487054 803292002 817205720 835987174 55649879 457219921 851400242 304598161 721560997 625757149 423396666 677401358 103408332 694874055 701040020 928351420 318159092 89469485 470016485 760349406 757135930 367028154 138283046 627284434 634328285 242691094 824933192 252604771 12679242 629715574 680080111 426360559 798886950 145778078 337932858 630930642 14488856 329981684 851802526 575234941 488519835 82400022 443746697 93889270 48579150 805911969 967311627 326457039 850893364 554898560 735553193 184946040 982035129 421151912 704240728 823949549 282362159 635903557 54680176 443986653 651471651 800078966 840977991 941338268 462180252 914014922 225966582 747676791 510559410 308315652 361255039 553154662 438704198 715448489 53301035 2108692 932412444 622523736 516021331 593031402 876195583 428764308 632515251 253631960 986763783 464432185 333555690 491558092 211482856 63556019 644084320 865036557 179544142 163411913 468751631 942153593 838239567 252381786 852746314 109688685 261893488 617282002 317335122 639966317 987858722 60864 516460178 119054088 917844788 514110489 989235667 263215612 121008630 172633555 38230286 367691762 880908529 287676664 780624512 979187737 897134267 949016515 622710627 287997178 89522885 524373105 901475157 410298689 474939801 571160649 398580425 717994797 881898532 863675203 704588284 328724273 161702113 793564657 934423845 335554871 911373920 476646347 308015815 544189050 7900378 755355011 614205890 95372020 591563281 473644734 271435350 522504309 908753318 697006498 91936212 291226629 399654320 414087840 764616854 249388379 529546101 565920180 524964761 239771807 823365419 116273965 782024076 375628929 642014134 583469741 875125218 189002702 79923974 460284728 599255187 16607345 194738583 845662307 949753268 141642152 633716764 95771220 138350597 95263140 765412035 427091267 580115251 862028916 248145831 758244353 601592749 275120381 621214692 890962807 60228696 725962050 489527111 792867961 710958161 677198861 938757035 772925073 7487161 78725722 905341341 394858442 909711010 14954165 994395515 876323120 77674907 961887643 435084586 135529765 929829455 690175527 80580771 128127919 739546373 23797516 811584866 468943745 175897056 46587599 460414591 991558491 158409348 213247254 183352071 780180724 700764132 727613073 712407654 101994572 688201523 85619676 131725099 617035975 798614863 505064017 66238167 728436988 628412432 840793909 658336637 6952018 680160153 998671562 913641927 317367280 977455279 734312692 92520261 260741174 139647549 195328385 122755565 144277598 504720645 657042713 974553454 576847566 270175214 492944722 481612063 96346188 931110893 882422753 621478616 643813291 658638816 772745543 691871300 269673271 933667036 96364086 689343808 628208050 809198619 952144386 605004968 623035840 333030402 510421763 152163296 377966392 313184258 522998956 990181247 742173523 943112745 74936869 426429353 23491035 950499947 82959405 433675224 514485568 421684848 766077222 742888641 391678703 865280695 43794216 980694614 450574757 501243721 84790171 333028628 79954476 191943678 445264858 568871990 478451256 692393722 654381204 571683194 248720800 659745481 224933202 557253382 100518100 75801723 939573250 116089446 419059855 419810278 529848992 173451544 401488999 437429077 354055285 288312481 561928925 966345621 953945310 500910848 915436381 933920284 221968930 347980751 287715713 443480043 414267156 424628550 52636538 939401482 506455352 491805915 992591629 135655688 196824732 681169714 990336876 781031009 208648292 839067472 446072570 500858152 484749500 658669919 491672445 92073231 82004514 484032154 325880835 168017041 524888916 381569092 301700628 674594784 599628273 256261157 275022867 48529215 65439938 715507591 776680986 679193497 530313913 26519156 681022275 241006045 482524173 628893252 67953368 612563601 913047807 537132000 296495000 458695523 999939516 652864748 882751861 537000098 952043116 727070075 21772427 237846492 684105908 409499197 588414527 478725686 922263668 687815553 551305298 976687107 339881265 227296856 228640059 607892168 645443272 61524353 878371440 477432819 200979520 830815530 874267895 613453284 495346251 555058010 189331438 374795508 145795466 358654863 360911084 612208087 897531777 961643015 990654953 521805138 513294509 482108349 499849094 361250857 85562956 342537280 382896430 389847865 293718054 555845706 636242614 746785559 663559608 352101476 193135974 196965779 987081421 916706028 352278452 280674506 406747551 594043621 835516663 785212055 648335858 154377344 680984579 347454244 751628293 576381715 558553487 957466368 19021004 689769422 518716197 165018380 13856032 10006698 481360634 727869596 838066022 767237662 901946667 742925183 755229685 474018460 113643512 550008857 353592810 255434028 296486816 985980372 38527663 200559615 57708067 729271313 741746759 946055727 333959037 190988860 394001174 828510618 869191011 47707569 985747164 75666018 370116052 359395586 653206832 192386990 353356184 819079499 837718196 103820688 657780209 200036710 107196915 649586066 605014420 815724280 916958346 45968617 570146630 295240891 758586397 809426362 171495640 434292489 569004795 917203704 146587542 231639970 512143824 519214816 175305022 911741980 956864033 968726849 337026233 729396408 161947133 65686069 690421752 393982432 823943576 26002201 274154304 497753298 619305971 803986977 846851625 638538980 557657604 243530450 156974070 689007589 662357542 951044246 92226848 89444137 80403080 998036916 119124868 83249814 33599239 346851725 678578731 324509521 160142909 429168356 160834104 739107031 48936955 947628217 35446865 92699856 617831835 442874350 681958606 777573331 187373304 987254574 214201555 906856237 534220913 852716310 960612640 572291728 911142746 415776495 469092979 229621236 483890083 301358544 662526174 858672744 258551821 723390758 513827300 406271663 521018307 387591417 250943888 129244844 900166411 83364827 856124466 703162878 364996650 226975296 20598966 654173723 981321357 221220923 657857714 801881664 264549942 991067402 361235451 185898518 228811070 435731399 927660183 556885281 932415112 893749289 728619507 95315852 615556263 143498059 590432963 521111481 165427964 912043023 316493394 727901605 648025436 236104647 318477866 114035273 732019590 48686499 141770184 883944895 679305429 147988159 837569178 609915865 80782505 460872893 668293463 357853174 204972212 364893963 841293754 107178721 569198485 499940780 750964956 318596662 564919253 447217556 351867578 259525771 789707363 340288234 632489682 686239139 531453033 422945552 754116419 510315865 681319287 578121617 558649392 635181806 332972445 523052700 740978899 390878184 418759321 236527188 725270671 534908404 967105678 209938749 745172167 567614215 342723653 903371938 836003546 411157764 359470889 356122735 408993850 716460503 326121273 709404421 563491965 910991543 526045871 376950262 990078257 232300460 927842708 152687495 488841605 623746262 580194066 129260960 153742310 450502801 683907643 605316103 674786238 76794116 215062581 294708245 47131567 84134483 360975758 750927823 884014269 268884771 250423051 588820298 599215366 959960287 138053936 542482303 193479273 956164351 28552635 209336523 434016006 275596819 763540704 651659602 948818061 336458408 41763285 401687736 857547801 324921364 175297126 163096645 407649463 955477207 651079303 245530700 437591055 399605262 462230975 461091625 284001767 820428517 504148837 684737700 544928421 383663905 690263206 467189130 508717316 806574567 63620006 356267224 18594154 953102660 149033051 289922209 920127749 954333056 823832273 366206529 992386401 394506255 489413869 197389838 78115318 647619541 13979666 384472590 430197428 484317392 881077588 921485137 617804441 809759332 229138075 428612667 8209154 198539302 337821452 72602478 147763265 184507192 597752685 262049926 990212186 272961488 379978381 155577052 11885360 412449902 926266935 589444346 999514326 155695208 810665187 309217271 299431274 515570437 377890068 833837581 582160742 468719611 322783443 431899266 885405480 50185458 804159999 429537700 236790701 577883707 773423919 231921216 542634250 731106939 64412360 683148544 23663220 824322028 600603885 460774370 336857130 87438439 179882536 837137747 883719779 126913674 249860174 719406085 638893202 730210335 680725338 895936589 279414095 527934952 747298798 947736221 108649672 852102301 37863523 884237001 978363154 871102177 47480418 912480116 316176888 809099076 252705920 550691042 664441966 585676277 734991161 272795753 850418196 268340298 429885894 899552266 237037577 860058574 348267939 31182066 277957794 982425416 646440153 859830261 432338931 800794345 380676305 262378472 194251169 6455363 879014672 217877139 397918756 915969454 120070072 337858730 278921866 258653177 177180924 660443803 434913868 709061560 187671101 117080213 644671341 45049551 776913028 573173519 284506757 178930961 231233903 50121318 752621933 573045250 88426920 514045953 319159309 837950478 173079212 891397988 980746911 697370558 920043455 414381817 584172583 38947645 2361975 467458088 694029664 721770990 123452707 642586128 171609031 193943498 881807377 319749051 474452921 57264882 489354335 268823688 468556265 829711943 783383245 469544458 680693498 750520733 268684489 969727190 99873534 642164807 457350919 363998323 937606316 643942372 135174191 394826425 268069020 26248140 813864715 612952274 473353603 817121840 134963259 237522956 461947236 135792948 987125084 176187338 553000028 919529451 581593392 701025107 938264590 646099038 556223837 394515932 752134608 339124186 627224998 139964468 319045171 68313771 913748457 846273624 953789835 820169679 827450291 75335091 116588589 773650105 296305500 87399173 918776853 359116253 991432054 491473832 870882774 919633054 43693689 814847941 299939138 490526074 276120761 304374715 784673265 819405179 227804842 201755956 114976459 403659692 324174047 202381091 428457406 687347853 396029784 201145751 146664897 82854978 905924022 522704458 453771959 138660779 421488315 735911664 852369756 591068738 514634270 608023614 93480391 389789893 946761501 939109228 79370426 314801761 480710545 615617557 982126448 375971482 886561139 830747693 615528345 926724310 329202637 16588802 249897515 731500398 146904467 887070911 762263608 84322942 585406694 766466289 915221418 608196791 558016394 593785063 329819118 482279844 417884885 538452980 845147967 316401293 368539464 545170518 329591460 94742030 565945142 40160668 972871330 617088442 755559362 61520253 173247099 65430686 85366978 14072506 256059097 198774090 745984328 951592380 78989421 402732319 539404538 799903220 481325143 962803962 362980582 913239645 844664377 36005793 626022121 396328461 645873522 851461900 688885142 235725309 875299601 304263582 404997343 329074416 610365657 801994951 591806459 208358925 691563208 559212672 825660215 659509679 203998715 759707607 562208192 908621746 191918262 164428856 548252479 908930238 292198700 729801213 54099552 102186952 412622764 765983756 319223184 569858047 460785431 534496679 172131418 215894297 607864933 496396329 23539930 950688287 922781376 736924350 400611655 579678539 636813117 358170798 348371563 49185647 271697105 524514644 729761719 403023263 965293642 473584015 270687719 724343823 877909203 418027783 707979678 152871094 573164150 205568608 229741997 312362882 988926629 303841916 648630449 596247959 801625869 181128219 856180731 790719190 789931900 88978525 718361269 436538969 276357077 683513616 628569559 21202426 713176348 668714029 139946669 326887202 285874952 68387633 906661324 473719635 340961275 226137136 726482643 211196814 38739694 110305488 28159493 36903073 345308951 377585996 836721183 44305063 231828472 172397966 50689698 434192333 679184250 901690840 844574906 270492434 683381107 595735965 724598829 726394885 2860212 849482085 142704391 805894954 300449429 910522909 400576421 165716827 724127100 950926611 488286712 409774245 370661050 189420733 437773753 61202261 991109307 550999809 468691232 800180436 388065095 837582126 115230935 890069905 232542566 19484178 561217791 219528468 668735917 514808629 167675532 110184363 860425064 181429737 286298776 96518707 221281079 611202253 79390792 859765872 274169984 923051143 864340688 679311084 489148051 600537117 807381038 992407293 513881810 176900968 119543789 606813081 338806030 839096149 676014968 990526763 373703119 403919721 563173404 339100408 832162721 206076703 226548937 910247913 351184758 604788726 480936311 766197984 753076133 140608633 380300257 265732348 823548493 242063007 167821495 489333474 766245903 974371029 887345569 485300148 682063732 978231227 417245954 592261816 156462854 930407189 157311453 748762131 178522912 858978574 706608810 172232258 354747103 832608247 852182034 861926771 140327401 665474862 513215401 188158782 858514692 650275945 426215261 387193972 229629442 509564838 27050085 880061214 485520243 525057861 578486360 655385772 329562672 583574560 88514207 346363837 169351205 528220915 643691549 773093122 7407039 172317364 294019655 245035126 294397448 825345872 499519585 782838468 219779836 550569330 622301806 791247543 77437841 205486645 642063340 247670360 188292080 356517506 823273297 656838695 929008802 585836030 842397955 934971137 479156808 680425657 355846338 563512683 582593509 554895504 465172788 732503288 353195447 452171547 104759419 345367065 56588128 301346218 601376658 156426816 127851407 690367064 770201310 537283799 725381263 757502166 531374646 60675588 466684850 737535937 533334499 919696608 645967519 328475410 167330650 228357365 899166016 920964951 503735923 159343540 553096688 471020526 737345732 28302583 616602048 578217932 373321718 949226810 361670130 898102042 286654773 807215578 718209431 45633215 413803579 802836680 895104368 453300488 388039630 836623710 575618591 608115361 998413560 549424157 645274111 687031621 861392373 31457772 688313944 16145175 237212360 604349742 155892246 178052980 498570306 862121789 536271978 197014262 880107088 430824047 258149350 734457316 194216663 911431783 315040970 330214345 386395438 114235458 670732032 186246603 635667672 411292284 398396618 733255531 737598510 115517078 270691578 757236918 58074772 222868079 642282406 120674831 749642607 88265571 684804717 494743248 164430285 141595242 832312851 554918363 547148612 199460754 974172280 722954391 510575484 823658104 763488744 343964194 932779911 785273156 405534003 757112495 532048091 11502842 511861215 303545160 279212432 362912379 337804645 869381524 656060114 530329181 43444616 22949163 610557970 275623511 784864902 232467920 562801640 851602163 141926327 861026924 883351480 220183247 461532825 601773765 485568300 224964006 979904478 241760674 275420662 717088851 871909820 442128551 789512233 288760822 737545630 552832196 339713092 220017851 703593649 531518559 88694310 887961955 142485322 350344167 486768844 355130453 187063428 749318458 295364662 530309939 141983607 732191691 560191752 960791201 918024180 219042059 855176805 249358035 290234998 402678967 461505058 670447234 122028432 322037408 252760754 884712649 489675163 726391802 28583064 70327910 324903468 222589614 38751496 93675372 954701777 22717122 103951214 176241276 30766621 319339991 990152808 381480172 650803868 617842578 972090355 697952097 805577477 430647645 544931235 84140998 423655716 391820001 620961932 689528617 307317821 376940913 40405722 352074474 837652867 878202264 105688864 935334076 39402892 940283370 386664202 517537559 406263304 246323655 506419323 395172982 174307462 867001787 352898822 607483834 133145794 360231033 741621954 577752642 40242461 539906180 354063812 211166943 722043962 599739655 800430412 524676552 685151537 146217437 777983801 996152646 34818728 246088816 53188577 865790430 926887934 663605735 520013096 909623436 103962606 31799981 73984495 805831144 151096966 282316380 508870244 785979703 393316144 467370380 871729324 568080511 685525118 19820293 828484625 630965860 128789105 602307097 18098414 2606475 897569944 389957086 346850449 158819470 476296006 755301469 394905331 969885123 809961332 341692576 738112835 422382663 37025617 976550224 780212449 944277629 276243089 751605317 219095555 634643158 858173030 480587084 587142286 175505350 794148552 756834005 109798220 896124087 693780439 384821129 378829338 535276215 797375443 511185439 105508096 423403917 960766808 119009923 115777042 601672106 774311967 187330028 440319348 717558704 108987191 699245799 182550863 527328355 209530819 639596287 105564436 353441976 683046165 722506691 262626431 858835192 90667774 617313586 648549702 808642352 823964488 284579197 373532908 260973750 168944279 569308295 181542404 930021014 753315026 999562423 16825944 30381462 969296522 796687858 224955473 863678023 64699018 753245113 281764554 985443498 961856904 406788948 612847085 416968553 223655151 322649395 869361274 946415451 754421123 27920051 605539577 226912487 745642629 201908314 526341886 254590636 567964018 89657351 153189742 478247525 941635046 902305182 750583108 124322003 979110163 620561193 800232089 920098288 227532649 849615160 158412502 31429394 815646733 340724123 195864685 620842117 320871650 570703510 570269924 44805291 841743803 650617373 912062537 505954101 954364940 2694419 985329544 770507707 242651200 723220017 174144431 319068910 24688739 336097918 484081959 68315286 936275342 601037834 686614885 377353429 752045386 928498612 87525731 395480106 964739461 849778575 257746998 481843512 400766715 438776826 618089906 773401251 946481084 165472576 56799406 465185056 854166176 461352899 505183680 792720680 343806221 442332085 707175895 813368951 127129617 715517548 680733852 354915085 370519895 641095899 109714269 677640499 75215501 172899854 797659805 30987772 587632896 764297828 600814520 769401308 676539956 500377683 274275874 179987437 961550811 596048384 804286144 602837286 101845243 598892731 301218944 858590838 749960654 738303260 79160151 666583881 793200329 92845811 825478424 264591823 822577838 202805208 65405149 221757641 92635971 322738800 885318971 732647789 700511907 508078510 144442916 589595019 202890204 952033650 831799198 926038262 702351944 875586242 979709104 244161802 169624555 191545365 452635456 565658062 454371796 421760940 339270235 852525785 776691153 782584232 641660837 218574773 88483671 192502577 547478335 906722501 918378759 181449146 95316394 774512464 404960380 426592504 756574208 217022462 765762307 544641300 539947562 566788462 240532232 202533397 277847118 533671201 726312174 988745858 590401262 39695220 705364246 644519915 715978396 604471396 723818941 834808652 185986620 964482127 501189117 69537831 837818486 565966107 921523351 89502608 899703438 524650776 894366501 99449804 131924663 200547762 263606855 789472431 587411123 62155979 822565700 70727012 889556373 388971204 676755896 796550378 373545707 758808068 480209979 119614546 940828266 48900888 133705655 467682476 9410255 28502045 335193083 695341956 530966491 120066332 266635915 192325552 869729122 798615418 850124202 148097659 27764227 362163986 123462976 437912736 107270133 196703941 417464753 615664594 517312680 934785585 504043158 206789248 891352754 430429413 927937220 548594353 469875507 528458625 941947390 262720243 35916020 647846452 634320519 428547982 147057239 820834184 203359905 69239811 16802156 544367131 281297540 970591150 966868666 43073903 884130737 420080981 324947830 765268480 458279365 854901041 605699489 165469806 85704427 284282092 988713245 817000873 252247381 709506883 135606444 851057444 483022508 312012945 311540708 254491747 946083126 532024391 799924396 756411176 728256947 768054312 463160792 126520855 241785845 296823364 909440703 506834864 994162500 34192419 827019478 375274998 725718872 541641540 466468893 733735639 456835495 688887788 635406591 615020121 720400705 770360303 940453185 387583203 949212882 233928394 123640093 797540949 806490789 969388973 692639990 556910214 554020254 42762650 331498229 914057915 956996667 641451652 597106492 21534796 609980630 593066495 95153753 304919186 650065105 310822864 63508862 754347665 356485248 216273200 26776001 111738254 681513587 834446059 304996768 62273613 19950832 406853995 903953348 435236461 152385939 181172733 620405580 203843476 33283740 504566873 497235649 332235679 236602817 409962877 656138672 162863112 443828628 116751920 82586441 702565486 528621722 447834843 153603444 537817867 753674611 753213360 156792759 348729714 416609236 25208629 130872540 64502114 493454820 841707504 714450760 631968780 843080329 352432515 779716660 374702088 818138093 620463023 842355972 268378056 876726037 954510175 866320194 395993757 769595727 980449735 658611330 31372408 240423344 973064331 143282351 369193438 51790630 934013064 184084679 643928772 211439182 65266643 185388829 911421742 285703240 347121692 193802185 60755310 646303825 838856125 628912073 337937307 679671858 603595832 632596355 991554952 533003467 926622413 344120135 357232536 471488166 789569996 354275371 832646008 195455055 579298504 931814939 465891115 514318415 94042532 315953095 257197968 814836164 953659374 538263290 79975694 878488272 155865099 543824846 292049873 114410230 31945462 891722549 753419408 627232263 21556698 747364792 454805337 503496480 874993739 924818333 448930584 27010683 128299872 835806354 293675237 531358547 778822337 426478008 251378762 700226059 629251549 404266596 259130826 435325591 63794382 236473426 376874806 920649079 983000805 727695116 842809425 804301883 279007599 363887774 226521225 112972945 890314234 693933150 67935974 355674114 708929950 404721898 795027225 634538922 135751602 865861821 277674431 902528851 354968306 731900143 208571700 625497291 596456189 30326985 233534251 775742798 919967526 655694271 385616519 510879579 636023216 284409782 357165530 829050285 959311483 279308654 696150637 939971706 839989173 883108924 400240249 108006654 800229027 277113182 634749819 101859604 337578035 954907104 348862272 108686328 955445231 582499938 911844029 179203129 31917065 194221617 781699441 8683580 238495989 19034250 724791135 770832569 19979954 646101035 870643743 897948308 72811470 686511554 699141297 942179087 807597914 804618331 623497454 196980286 10899963 455223747 466263171 796434406 486862892 243978948 335376011 859526008 911544706 326573981 136778786 340415884 152766567 234885923 844506785 928219216 502581974 788676798 585404194 695619994 933021420 66100766 447239099 685412315 961260595 596751807 561047464 610125916 675768668 562149646 185312974 127136980 433708928 478818351 419299059 22217064 46021773 164563719 137248706 752421717 863249869 923197664 284595209 339947779 378363621 694045725 596560462 637186600 523771226 810028320 793869828 915753256 804618183 293978374 428767769 654371859 733690755 578035320 876030022 559415738 695585544 564562808 170293779 115426412 871549529 294455697 425632766 839643057 411516656 470760846 735309613 644636695 594092435 75824992 603991925 716715831 831756474 575775463 232394539 687608504 593997361 938138115 702140376 309481144 376472361 759138576 114483302 150304231 826561485 847431660 98310509 418154675 970920882 84926284 909009460 203228714 504985682 351757028 253591375 552766387 98354259 400598430 816575849 705798297 822854593 523572090 705284267 480870513 325232936 431075874 835984731 743354350 569569011 911075421 766245741 681393705 64677286 792759237 393129737 635729416 532924281 400582460 881191316 72155135 143993461 112681737 137137980 789929207 83442391 86202024 673589408 684567715 231929928 673288582 249342972 718735894 734831283 954251447 642479832 668148205 759306623 792153318 353717526 99472707 796637755 369760996 585971500 984918791 756330065 560764011 909709790 335686094 920380441 261597052 469540432 848667570 441864445 405508493 393975297 244906485 471979809 526046160 90655759 111435623 30682536 464607356 274287070 8601897 267045694 588078733 885447707 33831249 944000608 631716771 227395783 882438580 395263727 240274623 132853137 262532173 643342270 441233041 761868218 142518872 404468735 781408656 498359728 268939502 660957364 121904720 315684025 370165496 66326194 837551539 739524618 880779770 431594915 441591947 941916215 109424553 163876857 573535753 481101612 355829684 368329305 942352178 294729285 162717127 847171992 495405320 535115281 307163119 641534224 733493933 2163415 576998462 482949416 780396142 478532994 18767374 876755311 86759350 698646685 472745584 872573926 475106085 563078008 810655210 717238569 525896623 570594442 242834181 351041529 337680456 49718341 798640916 208869628 679284154 780015376 381552261 90776733 992365248 560983452 591765648 213752243 423957773 866763681 134459032 204066339 406457883 97520678 172689074 42997770 816448658 689730829 85881836 344414384 685203420 549053530 28710572 553547312 208533290 239915418 699782650 938759465 54235000 634716394 63469794 531348809 281873141 839135235 92458629 518904828 687177243 376542322 730730970 496058590 810137708 617129157 182710328 387974971 475147242 19543270 355528882 335534115 390361914 140111196 566996632 659938269 760900402 285915905 354583849 269221298 736056889 869815476 552841394 292549659 74466976 912821046 813641192 424790713 685244868 1400104 720418479 869969154 57926273 53672773 444298054 61325256 573227153 83306081 266807885 162776956 511508557 119062950 56818986 19445858 743156820 215277011 956010364 209019524 517230179 789939093 836877869 133126610 806591180 709572565 319174824 732398104 889450729 811238168 295239950 663047945 372538050 674507340 841040483 98773334 832419550 918253333 54658316 538535133 767260202 10791610 695240390 444558131 341215830 176776909 540957664 144353291 427357069 751305950 171972988 789154320 590698270 879751422 542741930 150893286 693009040 664417406 631630976 678772907 895351157 359366186 137111394 399341762 623431699 583126072 129855470 23243296 500419301 647173675 765983972 75923153 334784113 559311576 500623921 309443521 123992423 822844848 417098953 765512896 290556936 432185591 491575166 492560367 649788555 219506086 485190744 228667391 49448639 97950547 158767852 3405215 581296755 803003060 608857285 632811151 318358847 225751402 651851535 252076768 970034359 417773414 432724893 382308554 863268420 95497220 702489761 76094587 311553653 9205119 618924160 324624242 329126450 350851390 47891273 35755383 698928477 468906408 56144038 288333361 565218579 149669528 60424320 521972850 189121415 778543108 580751861 916996609 835250357 217358771 880125732 957108804 501150930 576717210 548132789 686374753 619246316 844245530 387472144 728462741 803495685 45030393 883583459 673074766 912375991 378341795 63863573 273081762 199182419 618469140 698403760 181717273 553874554 111014720 752586342 52881237 209830123 674403522 688368053 723310624 768649556 873488967 307159698 153561884 757043043 142939901 564309963 900604065 748929624 283011288 533585794 44571224 390046831 496039032 711448199 23405068 301740859 254932453 236888688 78881780 889146866 210611002 464041585 899282658 138524987 455382274 509196077 560684430 973075248 485711219 978737799 907421771 360452321 896457173 877143821 555917277 125914931 322726598 372018589 950178406 231886286 813948739 77645234 593227823 973578192 562400671 888220075 492268517 806295867 438847569 173570831 879494257 877820828 828681996 538415709 286320258 489069378 83327477 504806255 921982264 877352066 876455816 726046732 69144594 198353822 392090159 225474391 644821947 931945242 581894417 626625469 504044476 766276514 594379709 751681242 550402756 37139596 141232228 843059766 904527979 648795644 886994381 705077542 453679336 260944270 411636774 98610715 888671457 88997538 987050975 234028321 723452234 179481556 166815557 507959506 557650787 245507208 39721523 505611777 828707763 413995537 817274974 799298231 510736179 727137720 415270741 932151439 569960240 191452373 712379754 185807892 53445863 547209979 145952851 146674427 666047732 780885132 523784469 685271994 920038502 411020954 40736297 389049169 200602137 252828447 977791757 960559230 693562331 384513705 767827516 195836870 202168113 307839262 194101999 18453320 740822973 617706646 668162363 100301060 390943124 680181990 538739973 671006132 710286516 564341049 52681566 872301515 177530957 230849587 211658021 947921014 213736475 754248923 938490055 698968744 548777282 259797292 607640454 501864280 340233250 121513122 958670193 167853879 564849156 91359302 37401339 374869560 88841724 938070189 904177466 407611913 524838982 656845232 875238345 237349973 184245674 699670065 424248648 393646048 188262736 945747542 882147322 963110672 839079899 808217651 521885398 661563615 964159792 203252773 181261494 982115471 166007601 557678151 76385989 663312220 45759281 637049941 756143823 634270616 949254614 213799762 104801690 425816180 456940227 557779647 963454050 251121742 164427665 948795501 302622819 651074735 920151917 388945147 274992596 324581236 522883565 307812674 690908076 286610025 436902616 186732783 199596674 689172293 273346862 975573000 666910187 877128423 323981665 432042565 258486070 229614974 101496340 997217907 114407138 606728350 137229531 442353008 789764120 487903953 246392049 312030331 316958779 942293132 662699244 224717484 593589836 823475768 422303737 40560770 738018092 306833905 748386365 991693863 942170994 8916932 763959483 663851498 817331560 710619386 865150865 670377648 622386269 835394543 588786987 926011259 583780306 377745807 435657470 184302210 590031814 299281714 177062825 412298110 722333258 511231979 662061486 773326336 817581428 21088076 971895565 897629646 718968651 400342625 195961311 181435445 582193968 299082403 925388781 270563629 457759087 405345380 888974191 487285079 252627856 593278540 195169267 637256514 557387322 559291889 20877470 656263721 554716697 849678078 459611369 6253989 344310945 823189344 687825113 81563643 496518077 882505244 893943466 516783602 463727167 427192956 801931546 534257080 944399945 89409167 148571973 29664209 237532024 298259279 146902038 588341864 902717962 901286317 49466848 361204112 426578734 512115382 379801689 129059366 122681096 586612675 770247766 229689015 506098168 540128969 917548886 816361827 820584012 431680973 621988633 164900294 545535477 616763618 102710285 415458380 976429164 182477461 254498072 933892981 776046922 126788980 62785693 715707127 951931555 226962144 142627076 84346572 690065992 550311379 539783052 613382486 691972687 782136132 195454303 900808273 924664518 733095062 85078530 74921796 269635625 89249969 687712971 869266492 620704791 220152747 334779328 3872223 581620241 477837782 872441788 12225791 263397911 472063942 7499092 508861692 557266097 168286617 261915620 262530485 852176973 770612391 199471764 491947040 375144875 893777524 430913644 247016788 451823724 950175223 250151802 463399575 575978864 439193298 131995927 397136343 243080184 752442058 38786248 287800919 465816291 406966993 904256727 565329214 858620970 73007202 368076577 632181325 823087597 361633035 136551569 221106809 905987442 604845773 676058248 592729168 90459643 412486788 909421869 161557441 169896378 7232214 59979235 920650124 305849987 488077714 990458740 581372152 443979597 334685238 438398690 529602003 747597504 700596154 996627816 241933028 816348216 886871863 551469416 706643465 37884011 950295956 411886301 106633671 297980317 136458665 67738749 598644741 487317055 756071985 82656251 189458221 855882642 785843461 442578036 665320716 287473474 786466141 313869776 857329513 452110784 612991591 8232491 332548007 279416433 764371829 682875519 672754340 893927500 911744289 661440500 184328779 448677809 869205739 1541144 865788805 449996299 785952517 562783251 162766767 17497035 572267399 702495996 509464150 640162450 234586742 668771351 526621222 701407902 897740738 928902176 773516560 631950362 378740699 690781356 811288845 90266209 536298534 459804586 315774403 147955537 881083882 210875205 839122449 293638266 12745169 977938026 927832019 417023730 879403035 197177100 960774697 400961826 44981666 414821917 611337636 868271536 99524875 746040735 548291727 56490205 905045115 354411013 422766426 252546151 417660330 392269775 570659396 368903160 997705529 521395534 900516470 830080307 273894848 97775312 257667111 207674742 536596017 445168180 372411875 893953324 425044057 354051821 585563716 32271556 667539647 669214678 956644009 887514899 680554988 82297011 874005167 530137836 750618015 617687852 393827258 159327284 173290103 614846143 909886224 622349214 451320946 785761649 112126074 135530792 623228683 399062683 843490199 938845266 985902594 729426484 310278984 534411585 642060362 429174488 804221033 215713383 648959046 176450467 861261791 741674888 57890462 217520060 850485174 877343321 696250521 105031021 440420908 833324457 307804370 587060407 415862592 276146849 111800418 463498189 295903337 327329276 490818011 174930405 282520400 514064337 380816346 848732292 432612709 423447605 933911750 737186544 402076321 384718463 137874732 614901502 246212403 120438993 848660714 620234614 522224569 894210554 551612058 214585805 692174814 779918088 713948908 147763246 765712072 732497851 154525564 825819745 771455338 467683303 889527084 395680836 54694347 669315012 392759316 880403304 697808406 56116624 176522362 571159124 816126840 181945360 804181534 512512376 585855419 904463252 224167521 384013184 397415829 681993413 458062789 185058135 620697770 347398320 318949873 278175651 746263775 741866008 786322550 659841659 39499232 532718368 64861503 844446977 792529788 639279503 991961050 500713728 745946289 404713680 239291795 545381544 579303646 758487662 292743708 53670350 161883664 705266996 271200627 965453076 610904013 644846044 577424292 277431431 10550463 185759272 624485675 813926749 883701872 971333213 154039878 452060018 662992425 753533336 371146155 298768459 430215023 774478782 348676649 635588587 351961589 316045960 870960097 74609725 506759833 166903906 522029731 508075429 307298702 187479604 147615290 509936653 694108186 484898965 589739553 626872188 87844394 310491620 315432109 315187158 783825006 576590922 708250135 1049808 490803530 487894493 820114421 767575982 787960066 244933818 707225893 717381167 212528919 626671597 217374583 459420345 833388689 583923494 608122889 811239568 975129229 738887015 325067840 637828967 651216002 527858838 622483975 476777407 791541617 103766595 773606310 139128020 853584369 389975787 334338628 261617160 633970793 870433428 766515068 417129344 989179692 462540376 193361435 104142680 763434041 562852489 145698019 228421571 961464221 576016167 138860533 507462665 725905265 270830797 469305209 177025720 419701766 491295846 372451578 222492947 467172803 932992115 266367778 53155140 58813479 372744799 326033179 400835300 436320551 555320852 385445536 893571594 631163386 272859311 816064994 540757310 972054635 977426360 483975687 71690075 920307271 423578594 547067471 125959646 887725440 720631751 563490 373754753 430617815 693091684 746004666 89250050 936183824 3583551 809129388 383468793 644485774 697131132 235605689 327139938 897437052 548944245 254163301 934518286 42701671 48804323 970692244 919159323 572054582 527703778 896604045 638913810 562737472 133270391 550038031 715836638 686441882 389010937 612271504 235094402 956271324 9060802 2401277 181807358 934343094 921811744 452332065 722673165 772357907 587126705 684471935 510229190 343527596 963189189 736699094 827271291 524377638 448279881 182673529 108113937 982299428 912899310 538756305 48413354 981514273 614150593 110187840 102082625 52393723 197344368 254227073 63497080 368543649 86861587 410331672 313584273 907666995 484797266 29196131 73807751 86260595 906120247 848426652 866517975 559155828 72523656 168228932 208851230 286519895 696260794 42614718 242569478 423567315 682223576 666593800 527172228 501098094 953937152 503689230 447454677 279327891 251851428 521382110 620550398 870304253 337789094 676964825 583444890 327228280 839710580 799842863 530716234 786712123 625321321 860744847 825003063 605598955 742830394 770069189 105270654 701941251 790523623 294690993 808412338 506717136 96920580 798763994 456702489 59222890 566229720 616657289 612254410 106964293 63058692 308619909 416225115 73767752 986553164 442842769 428621875 2354974 932388668 801452570 825527972 696267329 629071066 812754874 442664094 411063568 327864805 143332012 629459335 479983632 515766107 24470609 330262280 308242901 812280043 615267177 14737042 774111460 279592731 178354129 127314356 826749243 684703051 580454910 554253894 70936193 34692131 305124907 130392946 117948559 958419140 209224642 621148547 608541666 35962332 600222163 844061367 626469468 377483589 143615678 421790911 594317170 319036539 238930743 579679388 358568897 649564483 723343501 597305325 185330925 586138124 79610708 205628705 709143113 327407447 770418484 201577795 678293866 987381292 822979202 799365249 733914412 806243506 645553773 951528009 92286821 128913443 102912386 806378013 965657725 914131393 772475010 436436604 565575204 298275373 301388428 782791536 723526953 114323209 394496369 762057081 652451206 699399743 620265611 28519965 585317593 637248310 686990966 723354326 63167451 856093456 162744400 777729012 821734061 455056863 695342161 22625447 522312939 228161000 995815167 975142357 281201470 948416569 233053074 710052421 924919998 882210428 723826548 921805825 747856683 444014546 20016990 632660703 899699530 955946918 159730871 704321125 662947599 554880555 528432412 293572398 725379505 798543250 155423310 870558927 190298732 4656879 362322489 114955239 354289027 911632145 766777521 622825934 79577854 156011527 845176320 235886152 387170706 329124534 366358007 975788937 654594074 681191291 495718310 149152937 891782556 983178716 911222656 432646123 824977689 890295944 177167122 354319841 103855538 463387923 734072185 267519680 531778930 867276202 65159663 408583876 952665157 919482872 516111948 571411324 298628067 458295662 45910785 920811286 1340416 307260239 12260579 409901961 348583526 559364928 248652769 960919803 355927548 139461063 603168855 322585804 501644193 317008794 915011149 873064058 37450676 71180539 201491319 429912665 507799952 716096978 130515502 371182682 916350476 178896980 932247716 135563408 18992986 599331749 800362405 613194024 634379418 325516257 180549210 290396039 411819826 652871231 805795466 649475892 698940708 233400575 349052741 862532019 466307086 790503751 722597661 111950871 578561924 620942036 363018771 768205091 218084051 260402819 861957056 631664926 780757049 827636979 841699997 92679021 87879645 580496355 359339673 702849192 237824570 846253283 571626999 55897673 544262815 773771722 722429912 471567386 184499055 196911210 948319711 183578457 850507400 791674976 360235393 582204380 511096149 712160629 795957479 296222228 709731002 804588686 421320709 686453079 795285434 687319434 236400103 620292603 730028342 995965584 736923579 480004742 327456119 576845269 461471088 62625947 82693463 895049619 182128261 352936504 855578874 805610738 623950416 408175282 595024226 295374211 778730544 426018531 720716233 132152055 842435027 468951502 733464631 652932214 335222143 607220905 205010870 570282164 658893655 451318626 827393789 467051374 643012254 149574811 947116470 818060667 628898032 180823325 572309927 948830075 713106771 854255004 892364072 784220686 60525887 429968599 717926318 276282967 759090565 888827270 408488873 825245818 681860953 870673013 125676365 656903375 539230953 625347748 846710471 893620400 456348165 101616268 697957471 901002343 523615480 981191804 504054243 555651094 634408175 897279820 47000147 36480716 82194970 456599896 7673385 515375074 462365164 566506319 738468471 896956124 553346678 120771615 91252622 144613502 620206615 890532175 697883127 62328256 543982089 969001559 848883928 382274214 493849496 226584499 659410375 928650900 179168052 484699578 784361936 174920409 938417976 719247531 53076154 996434565 70245604 276150225 914602988 269235577 367703556 993721558 942444357 520057243 855610281 380635571 399622745 399550216 314853766 638927522 726026978 23689803 972269390 681615875 794982594 692053207 605196844 997924995 365838968 651552637 328721054 445612092 87623375 600455615 569014511 497984470 777815393 865834676 345257030 552030125 30843 103464536 159280211 490204415 444841014 780808486 595039014 557676075 319389949 701957388 249059903 918664037 543430291 190761456 468748869 722561054 107855439 515364428 495841235 893471792 528962167 729373978 911286349 852016064 937603823 404944064 486951876 908009756 765748636 709419634 982183846 965486944 10606020 421984262 404082734 673524672 280280310 645464481 816085675 394079037 70084134 299939155 969812905 80855071 876220698 439835666 941589762 577890622 181357525 603907113 396260483 765125388 389328260 183800838 929707255 187593664 774397265 678303001 333383670 64277588 256015559 418341230 690984034 355063692 950446749 651748807 520683734 78056678 306944275 709274702 907799604 644559381 148011265 962290238 376024257 967658055 211976119 780408453 827022210 970629573 545146478 611040005 391647976 964731306 823142725 383229486 589478604 397966468 802509324 934190990 251874768 900564492 930694787 812237204 427854721 386048615 34227608 16591759 849576546 757063278 905474954 308512172 454051089 110659537 453247060 637387092 456565216 867531830 862490955 389362187 304446271 529929346 654780486 849764222 374473004 165312038 139467637 305869024 553388645 305915427 982083856 405102280 286438562 57351960 113134984 998286229 804360246 214911097 237279237 730819117 953293034 329495006 915471833 591058037 893921262 826884958 93637240 646346218 752263130 971878135 927011435 766288538 569124405 272172865 758230754 413306133 771074530 715721936 992864747 544702498 409039118 912311916 663229347 259086386 146585047 155417683 910603233 840315664 487787506 592256406 607597775 4347279 543983541 387463846 867727475 346455374 355128592 592650688 892844570 679697272 614775963 506888907 541690793 58048164 656433383 418008085 654390220 898802552 465287791 198743506 261895351 830294793 225658966 298074246 101886682 334347882 80680099 432264727 484358803 622725378 969185435 278410902 265472977 164824904 463813236 758665962 182133380 423544929 21163173 117207815 699876367 333511023 354063778 702966685 634742937 348907045 743082962 65316782 274240576 5437171 58797134 836082350 575352839 674991677 745379856 862060633 951363510 387436201 396991924 494432262 64707078 88749727 381870452 587160284 240528398 48956304 586694129 415489741 538714519 259924917 511358324 635672601 796763061 598789070 797457716 651964080 745077975 167982067 906149447 477327721 771685322 232156787 169420339 153130199 596299864 971848032 8555074 542480412 485324271 242463725 604555808 878121547 816888526 630967511 232295634 692908366 409567608 642995546 38506603 921622957 237567299 551696758 935307399 245751070 727857698 210524682 41609743 973877942 410398862 893831523 192653055 673104775 531635516 128497045 461719990 830637785 690023457 229228901 753282520 309526162 210510131 51462208 625265347 375791376 319542013 321199697 542880571 467024453 751580613 199810563 998162534 178583319 785808809 792368152 570563074 31533061 502203313 891496444 305898428 737718533 194895625 808554930 492424493 202288974 46814146 20918848 363438327 664381800 274632859 636832622 618746989 419844941 641432782 811515632 289849846 901662827 537663150 676108210 802259046 238167799 37254407 547417351 270000788 822748974 357765207 551740212 565102079 469720889 556718769 774385913 609740044 168564468 792680629 118476247 962797412 653907584 918679419 105798878 44822378 534126304 698915782 23962987 870095526 689761685 659628915 73709163 453890913 109584274 697995940 56087693 910173364 385066349 492349808 408749390 479211031 590478302 943465680 318683018 860654836 819130061 350916238 67394599 570869369 66521653 197566516 611679764 123406917 844725611 403749594 762368868 882184613 409998139 666307287 868947512 813519257 574977259 315263807 786174621 363165850 436654659 28348383 202883283 543955701 135466666 486305136 997410117 32435660 650326826 756277282 444298524 70301636 335795465 107190921 947260090 317186548 538904446 138677447 591371444 244235652 592872515 226732236 481760780 511372527 200133521 506008417 344736220 822507157 348732365 979524353 285520882 840393901 922390242 89627849 853118617 911048349 536569692 934754831 807119694 274456146 908105743 405106087 717960905 955941916 415970964 883884217 613325628 976749546 357844408 757976196 761304642 882563178 999356522 744913025 910858775 383161399 622683718 47495668 391206781 75654632 546626469 402326029 272869657 234468125 534309307 310287237 626434522 611795476 812569937 216697006 533389579 950882875 752671945 148981966 77288149 778526696 846078577 601707669 493502856 231061981 233079100 450530603 925497721 682254068 34400991 900575682 757095152 250100325 797615524 200452393 895377412 290471511 340661086 935509883 887443108 112758107 177077999 416315082 1390341 413424098 851565240 452692887 497617475 172277429 320428911 740712860 529613186 201504347 174129891 567068012 267389656 522426968 769837987 633506233 329622646 436392016 923051249 429790471 896541436 600948227 595307859 51818745 744070620 668545127 312461251 216877683 505306060 184596928 165387853 942575622 500874928 454201089 543921858 677131031 352068688 181790646 868108305 502177508 301762864 984029652 18700906 973031521 227448672 375738713 99709454 693361050 666690677 719128497 991470999 28798217 823487622 919684911 341090214 313034774 420464487 638621812 262344036 207362143 135837829 164020385 435783055 224186529 327333679 830625775 53035151 765514859 729392527 154133942 480228733 900924857 443381157 758939195 535575187 301021935 89674206 784098459 327823035 424814198 69565137 58333896 939417381 3977316 327556063 954988021 650917355 251152808 459124603 181871370 905418491 611447261 647570550 706223591 442412125 894647646 705604876 760105647 792074434 461166723 627284002 324056752 230363150 665200986 835932378 568602497 119715805 360670658 487418336 881036664 417034596 296130792 295183480 66003530 226841603 884983460 425590224 569753986 395721065 584261623 770132389 295358940 168490554 121496627 112160978 627848878 843304913 604482707 721857309 186142726 3615852 952865948 470068396 622846202 675130290 876256736 772754722 949949152 238696449 64810050 312677687 724720358 544325887 521377771 977567822 219759502 309648064 218332424 958226658 263284050 848773817 66340102 691690218 702777765 455187048 150557970 23328543 849131312 946236067 698468400 220076599 145616069 134544830 705314393 769391694 464720651 631402757 779440448 646796803 382997210 6557968 864864751 74712194 341629526 652592203 660138142 438059610 238107015 767388488 219291648 785298392 553202560 730247018 809423909 979337434 170289358 188259465 852789946 573885276 362296426 838295982 982038551 892362625 560709277 323942496 727614290 306943680 644067803 82395301 89145898 248343044 272363690 650950264 941199956 147365866 992527224 191826976 821846801 611527715 62264395 876436692 227561210 440261725 499193995 403650905 140369248 911137086 584827652 735462420 118485182 127851271 518783066 285008286 164487742 686773789 269880637 59756524 788757918 731689219 657202712 952458392 197755443 562280663 509627824 462443655 443291427 264039711 395768127 154929523 714978971 359783203 77084313 281077354 426030205 601394994 511815226 162817744 983904702 71061261 954808188 55968204 788474765 344944725 240502790 708872993 830160330 363512978 371971537 665791088 401654418 892706944 473158499 487692300 167346374 561657974 97299615 61854932 369377003 41607528 188624580 129671986 552198858 495267693 640066983 25814057 16154744 464977235 328817805 277155568 441139518 861722411 175588891 552182434 343318742 526859130 536255106 160312600 511143416 708674696 275885016 269613658 579604263 299416920 670435641 175893604 427919487 559458132 639434875 517532162 790450875 620257909 931664426 941695251 484279429 745983131 383665190 88028767 867003317 885115804 603574759 648029079 12311675 442848226 656307614 733574229 425694170 65692739 4287006 607136120 612845817 275297538 363101510 21009411 958377726 727917921 169355718 836668593 202414628 154150792 89720477 384125171 339435158 460076202 660407261 503712727 712578635 730171831 225904029 716090943 189630807 862150286 534784671 35654119 437310842 576281420 425276936 253105685 231988065 403372223 958531154 87426444 587931959 137371180 372714339 425309290 361808062 769847908 691602874 551848662 111827567 780638595 529423851 825677902 535477406 362067049 67628353 981765261 832788268 656024149 224329147 726864361 967139382 193744833 631735958 67997623 664818787 938460667 869487289 770104575 683017014 769310191 689668248 604129107 192885656 703545451 388068880 432887130 795066593 262249263 726316324 274958882 830162631 344519967 66804074 66531042 746014616 479533577 304922232 821631345 475388757 555096679 864062806 64733828 754879801 92898275 229242091 116867723 767067260 974671906 120985124 492790053 999786870 913692893 465761564 958887136 763388829 314805210 758976977 647780178 523204454 934038996 341361317 403081126 832729053 427448802 356271355 330788503 967020646 222098011 373149924 331695895 736984710 679341463 415186105 372752931 930382921 787720346 44306348 197981480 863800834 712016458 20572519 637659052 243480251 521668429 742187411 318265735 106489499 781439466 843052763 757104416 295308906 997448262 742150457 259025392 406773273 987735809 729468375 403730445 101729283 355353761 297785704 520574142 501075994 299186029 354956620 125604231 164899131 28843385 640301419 396926659 494815655 789377503 20195496 896753102 789746704 22581975 705745313 617233552 610052406 199130388 236345972 841801110 338408174 384168161 661178923 865397731 464398666 736736723 12643803 859501825 825203218 937541331 700023367 372566566 927808217 405340255 901881332 177974075 237408293 823051465 760765805 694357820 885487077 847256550 92386249 7183658 418836779 697864709 198117955 317984257 408543449 199669296 823927128 317661174 373586103 188607339 750438863 544048315 607014932 992082819 711809073 80988903 106300977 858279686 821951012 182117605 564042907 157821507 632469491 640789927 571522396 510434308 551816631 538743792 99137123 821303398 876658456 35203551 162812499 148790578 330133784 885894031 961079710 79899245 70128403 612918987 825825838 928527509 46641708 210157665 190467643 557742693 116002988 541669694 626539617 190803213 104238909 326840139 110928602 372593225 665121701 818597489 821749569 434474962 142999070 796686811 913957516 358803286 77451705 71864749 944521081 370100340 886328918 27235980 79820187 25988592 899779883 891597142 386630304 620378859 161822484 839800199 558420602 691421325 205761677 210546966 82066939 458102335 765816607 148702310 735612155 377366346 693281290 539925277 845397291 337535478 564359308 555343313 225254337 703794008 578465776 51211009 97164266 104246036 798023215 880747493 308667691 182679103 336295983 874852400 514356828 371895339 149628997 339457737 286973740 356968319 969161523 673649693 701064261 520595916 612966006 178328802 406879027 513552469 432720445 200622812 192554352 37218954 763088919 617316251 196121682 682966862 605091199 32855717 596912981 915442682 499985704 543586168 556781930 987403026 984626405 754971553 611283948 563668821 603623132 416721046 294593283 1358902 196474375 565233110 91802654 527953483 896066848 798582925 517534152 576742160 814590584 439225149 934754530 504486490 540922160 263260811 166604839 147555319 94512667 396483327 73820962 648126139 516688082 605825463 187370052 970941287 494147566 859990200 365055035 787257258 793658529 857729020 601298958 619569283 541015601 498116725 164754550 82468324 474137506 947518813 296966592 589145257 369660469 952727402 578299457 470207448 657742670 750777647 753716429 29955196 817056374 621525458 550825762 263682535 707869591 14991709 721438000 732428282 779389955 568787803 239772542 783806176 872104312 503142903 333523189 86644191 989463428 602102487 41992691 816195742 612880809 587283619 666637787 215797421 409266303 909599506 161758700 157179120 516113201 542318881 30016140 460976617 992122155 315720612 143370791 586008484 706713596 16500489 378480696 519278139 153101003 494577580 562075707 139237158 745877297 407143392 527498027 155269006 736985042 167475103 293549756 355800273 902976858 538835399 661495072 934535523 138225317 909639575 523885423 697387403 48127865 241263748 596420850 295165770 38338048 689337146 181391182 663185503 692405842 52800187 117336730 770808427 386857921 466774171 779901727 683930794 393147476 3901487 539510147 433532453 713296783 977067778 614842472 472224321 808796912 496568333 711489294 290458199 35944145 41419000 718776308 994612129 296743840 720199935 285232866 152747787 867361994 796957173 306025595 880933308 182994890 657230901 471202422 319813448 817344153 490904800 644999797 408340758 178032850 78003129 625937413 304188295 828694923 573194704 119334596 48376204 752161268 85094476 303320166 660774696 804215251 795848620 419334451 755073425 810383340 640702101 796746847 99737522 714695128 594520460 277120974 798167024 210100889 335614874 916995216 740104748 941313571 474581428 716333640 603592020 507842097 463549897 392106385 605078713 864108479 467673862 823457680 564442723 779110416 841535608 666208092 758587961 306404547 897282016 241457907 575875081 153546787 770909535 146157369 934422972 590787074 833812890 978173492 747419512 483824068 442311306 618311947 29025014 363768194 114900711 167164816 407324815 551009466 391039440 453122818 316388900 980336248 212317967 174333883 340578797 128471993 920333174 811976339 912554577 150721401 904003361 540675043 562173752 257868987 987435699 665187148 210440861 592437473 67064184 415335447 799769516 164289841 301005254 450402515 443405006 470763285 542510304 749576501 485415304 796811169 678731898 998859648 367692224 724580550 776323859 831209127 421427609 945343682 601487338 30469029 977727755 796409830 401209442 651060079 144830129 513947154 301521318 498715015 294121231 17945125 316414365 797091963 450736099 422335233 381076340 856100017 550926680 544936744 488540995 338968811 294370039 263054323 255137519 352128635 2149482 35792814 863618187 910303994 590682779 225915596 545212799 17754514 738563263 827625954 84280791 946353863 227500174 659876110 112670170 665768057 211315728 154240886 137956192 552632261 893417935 492855227 395296008 171035935 52851653 758957001 823015486 336659322 799303776 853747124 652518242 311294111 471289458 49138558 156581166 499165633 98092120 807482037 399012582 776022002 544966415 943902895 16702409 571799472 508424782 990650220 484343282 631703960 128652614 824168182 628850080 499296641 953763641 412726662 464433543 444252130 841654596 675222861 749547009 859194880 751774926 933540731 469293425 667572423 219565000 647018272 478355615 923657891 758267945 439289014 946026305 311241451 506044330 481820798 652098442 541821092 184650177 825560554 236687333 192256740 728296346 768088734 856154612 403135193 74183325 868999227 529196288 683458241 401843132 835330399 628297659 283613779 383322431 91165264 894640606 207250375 837098791 346151121 189334684 391053465 585024925 483592223 710215441 245330395 671610060 70961051 699970508 370776930 768017457 303779144 791768261 26787093 672722807 578855144 724478918 774915545 578164384 441214104 240619302 464652970 176881605 917298878 760891054 168799276 915322664 340800201 111002654 106589346 263821530 732703287 205838850 486763632 863011072 439840359 349134057 453466996 174369446 158889907 585520330 668686674 959963535 729584357 735800005 880335006 55423000 602622540 356005131 245248081 233871617 662668335 385738975 789733426 457618947 292141412 720139919 559922670 746640289 343094569 954949261 270143783 607951913 992181411 240997013 606639397 212457675 839333820 803747256 796946518 254591301 982988642 586938610 35055024 827626590 966321440 815103519 205246979 154899902 326777684 414536987 101130558 811295437 151891906 294197763 426417900 990706884 813330869 533320037 5222244 77777240 473755842 780061613 613310589 285736984 366032311 910740398 65269624 931004743 495875223 471659340 300075506 645385833 352949091 657333119 199373270 175641674 785418927 576456229 156295700 189559888 397659826 389398924 462282958 201754757 925482913 581360468 485328931 235402281 161916357 137057305 434260600 60326833 958125703 105837948 869510832 679915297 735953802 201703999 135187122 963383233 59761633 762926749 130516856 641982361 567027154 791394389 883160687 920743408 235890375 240372219 585413541 476540365 255906729 439080227 695632181 694133764 699870063 250666997 156949217 57231174 75804969 250001056 601944430 998851361 912642893 348146320 159916531 444666727 673823244 422148392 679241680 94684131 931135636 570581547 635290344 398770799 966363188 769432736 155550540 680588792 880005977 416028401 858159428 669792987 248928712 949368592 657861801 307140343 288643985 113268306 668283199 497217893 456153166 495249678 616792463 328481108 31623643 49851551 606736065 538700257 859235326 868187005 244762197 713433959 188888591 451490725 88568169 274750160 352812518 311650136 867373420 537037202 613915259 229620934 786943142 277974141 188082835 906081424 862094570 270946905 362155283 534741753 459188389 414082832 327961056 611875729 186745974 681662587 965432373 13152780 319067690 467351060 840727007 218626435 997886775 791208966 662920070 132004054 208315317 808359701 309559267 184063338 461921388 535974761 974314143 800572805 972987632 8969199 699579486 200439438 196660453 750936621 525210267 715103806 621547111 418701212 305529642 787565997 953891292 291375298 262941801 22101430 630519332 64633161 513551392 960560463 106621091 480339146 110925577 889255318 102064676 909164896 149076464 542654023 880108958 998784403 499041899 554515808 59646469 352594194 238934549 387132796 508635590 927617476 769793275 843339672 446611361 754710285 593210266 928912031 102691533 195888581 862646151 108485491 933500919 584885444 10603010 847258787 299806611 736432519 712559202 149731900 549299806 205238648 485963472 672418635 904062880 539757205 311995549 363309007 812498014 157784176 560676795 23666199 855569538 981868668 732888662 236131348 811496725 683425786 449599551 452913537 52435434 289980411 252795152 894140916 582796237 702896243 124518118 94980281 921939844 862235675 635441666 265935205 249508818 793443718 114325109 416755109 584591015 335366955 558101482 444316806 251294764 129126399 792248149 887948355 35615395 1002531 695308613 209678323 558386651 23139487 975076731 967721423 720125258 71284232 393282600 732079751 171370578 653204660 979337119 4419737 644710393 737009127 191258606 240820965 489249657 501096013 811363417 43431926 821297574 663002220 916395146 347284351 79730134 153024709 16573569 405392125 534771369 198090446 714849719 84063157 787550326 609200998 236907373 364384748 28498972 787049805 983611726 858807912 373611312 913628469 102827955 701361660 109981942 420460841 584383296 473575737 186678080 32711189 604852854 219613445 465914808 473257981 427685440 484788900 792617841 509728539 446473827 844507445 9810667 100067191 387802556 499211842 357932648 5727670 891577396 722926804 685881726 338889369 809278741 982321081 441149402 249939669 67643169 447388565 538227803 705772713 746199584 327266596 984287695 168205660 501774250 100846152 619614748 281738686 138753084 564900135 641291381 718035191 939988757 247919006 70563526 663835755 397213291 218705329 670174212 964162831 194309493 53642515 460267502 949934178 844315656 214611470 471239409 822939253 918596642 96450298 228309748 624709942 112921383 453251476 551667499 511610272 879480832 456231770 226650107 581720969 660484539 506793313 524828117 227718693 137499532 379198218 379490829 774745530 725622824 783067192 354486015 763595223 256246067 349806622 1068471 29582932 794759587 581451640 946319247 953204451 712417919 6471441 662539626 121053916 210378506 860069293 856086095 918180313 117999150 440484194 980710167 445625096 464494369 262524575 141159083 270232906 523924642 771135490 423461350 486489442 638056389 831461780 510038459 88160548 944257702 737256759 214876546 688131837 672808927 503461783 299126476 891658377 727537754 681238082 601978396 549670593 171489944 239740459 95898656 572956465 308202924 817854982 990343844 792441396 448221372 401852669 336149441 548899558 551493655 133654796 868418654 183482751 452172076 919793939 958169886 836067321 374870034 422585422 545412604 454120580 165374081 298837148 229654866 243641100 903804953 829943957 377141641 824521195 575818108 333624701 292720126 985803955 581269294 716356855 465837086 345955350 245129465 15959301 316786435 509231775 166127655 531763954 35396652 546906797 895770144 635988555 85087936 672509529 468890777 218437308 615482719 894491933 395189323 520398987 105333197 770339154 170565707 583072314 46722627 687136496 395538721 323293433 861134140 970411027 68849113 891519463 367036046 133030120 915544483 374904344 735345403 908962090 283679167 442387094 65121217 957789082 358217804 439226766 916697224 705388436 256612769 681792991 428907716 738119247 304888478 9115765 207147691 259518571 384546083 747795979 133756183 848715072 974632211 293087980 321941627 62553041 729170851 652482129 322176023 842651316 534631683 348027456 377647528 674736449 108732764 588629535 224326968 329756050 256850058 502579092 386459752 152332394 323993383 781548364 505775104 185594588 296745485 79107635 908590798 253784668 990638454 506049702 56519640 674342873 38810390 665417984 258634523 842153897 383985006 184570159 931244937 781577918 631553900 548149412 503921889 126493473 605805115 818943170 429685501 972877012 55576860 651953289 489573675 491874654 896018779 440539171 995188054 419501876 478161482 540862116 724607580 686024714 164728246 734495246 591867893 283815560 922762797 335530248 294469527 880540987 936766367 597789445 419647053 930844259 712098576 171828664 65460183 398281016 285145524 736168568 720620371 1571385 476529123 628737512 177632418 254927706 64406353 682392741 719504019 276622947 479556864 640393405 534536754 198364985 638024292 300926171 3906901 440172004 721813593 345302740 798201073 756835857 48323734 382547936 157775721 527678750 651012424 466531584 492447233 263428263 581866447 776291095 749419986 845962029 118983745 255067967 485057250 225305945 943125094 739763574 669045152 744410975 9083955 912451180 407662623 744748372 349660610 277531079 706622566 994073845 128038095 285130041 72862057 247023021 515881553 863844411 708036478 955393695 46749602 847581379 27987521 465607800 240112474 128440673 445420436 633377784 337320566 500425792 41131479 660085020 931641937 248760035 747419517 117858775 784339220 579619285 737007399 301930287 655912692 556878938 549557720 5125512 39202703 516101994 565071253 979948456 233441268 929309939 850829554 885151843 177349941 858196444 990813478 146631085 181697767 922940309 266075679 882155882 165223182 51550460 624514963 251141035 111569810 249895597 377061060 72863965 192065129 957846706 768429171 458152423 976938912 63528711 615546854 628654848 233581183 231826908 944125902 806421772 361610284 679855434 564282052 857517105 668038374 592660918 535607589 266179514 525942507 405781261 776605175 908499104 388692776 604702182 171003497 585566867 846835783 585290274 661673199 287858250 815988674 481325206 306935707 72389104 206421620 144239129 869170864 799357780 44215011 470751280 789728375 153602804 642118734 113808028 914758578 133321385 915014176 109488776 189190967 844561823 672193439 722451607 671061468 119505743 950151149 717839865 276783252 386732306 448856065 11804920 390756088 834146658 845745318 734927953 470487541 461433685 819337861 525096364 807981138 394743914 205736296 495965936 916693568 194248287 291262527 634511726 323660478 429086886 589701569 493077890 256264880 207331434 881450278 97463864 413962612 919167248 333916515 208605741 736931135 199917942 789193011 710068720 912958813 57674638 369394082 15060995 116939129 952026512 773021341 94687084 357725816 845696904 697044962 996425495 697538728 664778059 117066362 113673616 99527096 22696696 988551338 526179707 585015299 144200719 554758856 227346715 572543806 404701846 563624539 864687812 153661934 706383561 770481358 952413034 18044133 666934316 460684956 507678242 602861885 988957929 412522472 179232927 911532860 970799530 809680970 357525087 69595472 352274595 149396007 513006546 481970021 500801377 905630657 480230004 611564460 696944903 284623660 75104113 108029853 191662811 370686734 60454192 532493963 426978891 950974300 442067375 73408349 59015864 380220145 361142563 565593853 699985288 62312848 222124189 585257280 18213749 748697030 934190258 142031921 288367228 907075474 738034687 194779208 478637106 6257195 932406410 22924407 451874933 278868388 552471735 361779601 266599159 107217185 900700541 63065300 587016546 417253787 300998357 581442517 495439194 134883422 29671568 173871241 585158817 511106666 839311882 998040536 74395519 662914281 532973954 375385564 582008259 944737258 120381785 905381236 678464431 659824938 883769851 234792942 845678696 52122226 368872369 685329590 816143611 969210038 276674813 465684811 499373884 436872803 75927213 769609107 892039601 430218181 347208293 603199730 38385836 138395229 992415520 585658587 899787547 189084153 900944419 593884683 573887718 708851288 707396379 373006362 571677707 335534698 90587287 428402658 750850781 666895623 716381168 571374172 720178848 997303571 722809055 305179976 439854627 218906105 179364693 437005125 467413682 537029039 398699700 837703168 657184553 402181863 11807102 391033541 605056314 763018657 77746731 508670961 25228 657981717 106451738 467287394 275318511 184230655 794639744 66236768 296170819 642249548 677537758 884562885 762689972 715962558 935319042 712531853 953013507 350435675 12667251 914316837 894399608 589828899 331931482 660477643 964830247 749763321 394998993 186639990 870256981 76209850 238556952 357608370 522781711 107688613 5709438 860044835 563933069 114222877 533088052 83659263 438215465 658634737 67606646 538801209 897066437 176789734 645891339 959414712 504946615 431306540 703821524 555111948 97736548 961227649 563435116 629184299 369979598 451615629 562548247 641771645 602447136 972076754 298044866 753325915 292395756 645915988 884405890 576807038 494414637 794391737 216879563 148736386 155615293 214298128 369455447 940281166 485423811 236308750 481056860 163836831 840091893 810534732 347509186 42407271 270965058 820811709 17312399 246136789 861698653 395872972 252833725 461426006 298018134 821035213 733470647 435599217 608963615 590223495 323129560 980761944 219271037 324203223 992639158 477294473 491455033 13166510 357276965 886672092 539130682 572142605 660829274 528094163 875291302 32674057 216858273 196448255 379813719 849165237 137233561 180729494 980851125 298648453 348566371 468598118 884156839 473901459 625400087 446788278 701223279 120027385 462444098 181202997 839203351 706453541 986924841 168606280 532572559 377329559 733337991 374523822 348338578 503237544 700058660 622649135 330957975 91958122 399447427 127607264 107349057 595508101 560547561 389168009 139280173 47041010 876344868 36077255 75114988 12623679 783851260 537172036 591887581 796549619 345828057 313786595 815611610 98790841 586183434 985525262 308160504 540848481 883204002 19824837 195402546 735118357 184621327 468752441 259333598 428733750 977004750 615449634 576450635 596126063 939117084 259592017 819752102 564365079 476389177 499043409 369548490 56488705 438721565 435866198 952553984 739073642 567060585 270912147 970045333 565812127 982129445 629447731 479259244 67170356 53324834 965062046 594236545 151812041 628234665 979566821 307505319 374194954 751931983 43784870 663619822 700104551 604824969 404824044 25468683 658597461 523988735 461308265 377575821 275800698 768901621 682928600 460986848 930613203 494912182 335860393 706113589 105829661 611461036 165871171 45441967 191461027 453083801 221218660 186005518 476874388 509178795 637835681 789223747 971410965 197751493 405635249 629225740 831840274 398098256 703383312 462274337 908040957 847321655 841784576 949209264 413519907 526899171 607501357 4099615 306578456 148672378 957381337 700284777 45247243 941994693 959200313 117217236 713682718 723987748 931025036 564099019 418845299 714869564 541807741 940146515 164401145 474768532 844061031 683391722 982425580 203328537 317148697 585850317 638744472 370583464 181338733 163557265 821105284 454622787 57864057 299009184 519334389 797487544 415579271 861741009 881096729 950429219 748164482 440265703 383286577 619763671 8111884 175820319 446115152 608630646 673621940 498236301 110739309 991353900 762669747 917422805 814263760 66413953 420249618 183575535 479338710 450447553 583090196 616374197 359113921 323341696 696328146 387578231 697041990 366689298 482294796 488110278 507191840 471508647 263451154 373942296 25575513 831732176 25885739 369131211 960164960 66566404 223947710 504740518 305382193 980367141 327273683 526451340 236330267 235615413 35405953 371180267 126420317 555443052 4454534 997014777 59169334 360281762 329449964 402371946 173173517 129195201 669873562 14260422 843719873 801012487 456910408 248397970 874974035 537135669 242319542 419231876 408136997 318331540 320727227 168747871 467858471 115403985 327832779 70678252 669403055 880007349 661944975 718214705 530828148 800397270 283431531 371409552 83000522 631514102 642875755 886679258 871956636 434437430 723943729 555406796 926806431 238317350 8017123 697251848 265799421 618371981 717122228 334761544 663747270 482061268 646172283 651701618 715304629 821714282 100168952 603186455 418545148 800504519 527561007 871191612 646968265 738305236 222615992 891755132 615108937 648569559 725073027 852406081 82009906 177452029 132304985 968305004 552626579 405334709 613115370 816083169 488336477 758242391 28066080 936473982 104120685 779461468 954295816 80734820 116434666 232226032 383651052 136996220 431109454 524723694 907235432 15194049 820820891 412351208 847459516 318575714 95331571 903735504 489136407 949939507 372020602 963422959 515825903 523093745 775701742 454800460 682297820 3108524 225406842 418763157 286143801 847870053 228949914 637780141 630887687 987537385 959427799 476347923 509461584 249485288 679390180 857593462 726889015 981047384 434483241 703742736 803181056 391687100 962901700 878432593 864309784 720980148 789934793 439211991 646208278 538536290 797983883 484731033 655924521 105973906 145273676 82194404 156346095 440873440 315166122 547560390 987437443 983903882 123638438 732230320 406052730 494618193 898890390 6131265 490310970 391775238 905637692 925532115 860734729 338186942 52558487 795806930 633639784 695144190 923107888 426210879 219647042 260868158 637121134 913804355 184231455 765579227 650946833 621565025 890932843 784860435 912786619 81912544 847445822 925535494 11763919 293504255 58619438 622501858 456337377 405833247 147420917 603921053 733081505 39384777 218625501 773406424 638755191 642626914 389435554 483404186 854978542 793418371 784873410 217708128 664066952 302108976 125284076 555916133 155322340 584587211 990571475 475566856 531809181 39077928 240708011 87567714 782390654 257804932 157611334 647291227 164282405 964483705 665886739 348329473 488640624 741559049 550501166 869263623 355458327 933471286 251466434 894851069 585193088 77303717 725759280 589026291 735249124 741201958 4666613 440964534 352122367 416068121 971061136 796220766 44576201 848886526 222135954 446640267 952866891 215288353 478235574 350997158 92954180 897111701 615485144 936257077 504129641 412786221 278685038 853152233 131111261 735004578 940896209 148358561 370114260 77078590 304195806 222230172 231256018 71686177 489042137 885321885 975748618 735072395 869408179 555649313 879613368 421345718 709386175 823587381 346163091 358910598 703203692 23578292 109801443 49117429 859219855 960080348 526373921 400715088 407616114 478737059 642408646 37293294 484332122 171422893 313124889 971122683 186675309 818705813 919259713 707201992 289739140 58301119 620976205 226916090 456625710 159702243 13399296 371972054 435215242 796121871 366011678 841984230 30684942 698542256 320471193 818607516 198474176 736458085 700520757 814882438 718380872 713510895 821352459 311613161 751495505 676834519 934873558 285690974 732210242 371718379 718252933 766315196 303206022 272492840 685515687 853552273 24289054 820096304 186381749 863953985 244723742 961083511 912894206 30682353 307704524 257584286 91884344 416925089 448278741 360662657 785698524 107426962 985166058 81443052 697521288 794989202 561470232 794016181 377609270 587652761 70569651 594423924 769784019 340374061 911562081 931729081 686116117 673437287 506195140 851787439 564320554 515525364 247276886 64252469 19230468 517929408 367344129 515682522 206458561 652194571 526744021 405112006 278585136 254621219 400755362 772093562 79906913 350076604 955128494 518393412 323374454 479950270 45187362 397083521 200291293 892042827 693943830 51931499 341130685 750043093 297545559 650296022 256344387 27052474 108704642 21493776 64408161 233738273 925144021 596814228 230294361 841749651 73062764 15876715 318342371 816683658 508919949 451707728 822937685 387973024 682037541 266830096 741972817 54649645 991513967 278830695 406823839 563634454 880230623 709781012 533148906 738907542 151796484 82936419 605740916 686531297 398626009 11554525 914262848 521294240 225344930 101538365 51973279 543473044 948270641 402180642 120674452 530377905 901582534 176664904 320979187 859592587 305047997 155158616 878018644 980453241 302765970 315559362 425231737 709888938 775025226 471426389 421522913 606377764 276731478 375782466 291798220 478741914 291353947 430816201 708336892 798889008 698374515 817753732 872434150 125183686 228028416 886714680 219128820 716459310 918784872 408232638 338980559 915583005 608058361 863070881 424704857 946930959 134478869 758015424 368167571 196428676 471567265 44679153 612893657 88047194 609553920 505445576 987497985 932476077 199076418 799128387 807444012 466896044 846938173 400782576 533705730 83519734 680973988 71488489 807353372 444722688 703298602 868202304 725030978 437469627 342002743 740320220 97281941 332508893 850795930 344447273 911511480 439781707 241802584 765222731 949904679 22583019 473639976 812111988 906072929 466862945 842233076 265267638 710699529 751070293 896660499 301411946 147156035 54238630 961454471 465949307 668077451 363136188 870234179 481034695 658267188 849491463 976401476 178045522 132291280 743976292 588900571 808514019 980575281 656611816 893738654 861120655 935284728 842953801 148286940 910629135 690582162 583265325 692352989 287151746 975947472 438977702 173109498 384085869 863475756 42363747 559682512 740715512 842095861 768482640 790894143 823107247 95661491 89472957 447784219 24120050 353051913 438845427 407205670 955142512 968222536 51780978 202622809 820435187 366787168 688417361 262014664 409949141 182929702 148652079 184969782 932208695 714489854 977631223 517796214 844807620 348445673 75613323 941070609 4038856 97895752 228895464 38716989 507121985 990464530 710222348 130392000 138214129 676189414 804150257 414570355 347588449 668396679 739670089 963264248 910200740 147640095 213815820 633358904 701916660 715621937 857153599 633526351 422113122 495083103 957902726 624311630 539418220 994111732 466817277 703006550 833834277 721897199 108937886 638879078 567777336 456630425 58018757 827620990 674354551 792714873 462754878 41109470 483348659 797986824 710446608 509858241 685228538 132572079 866982981 601453323 647160803 30375829 942992414 398169034 620894379 621239173 991094546 544609994 912451020 824397036 157517538 920273387 129015839 907648270 847794554 428272561 602732145 849993638 528870155 83900444 973998471 418307664 974367003 582918974 420269573 592576422 578456083 419990274 870780134 262844318 783181180 481585239 63306800 51770561 395327413 403888030 309601937 566201450 134964005 123721459 964278160 677290505 84021935 523029358 136116260 877868114 972185547 243707227 307729406 113885360 766327960 446018658 646025440 973374772 310945824 501413286 972436500 841178470 812672270 141082566 932358377 466669027 382986621 328314178 21078066 556382328 575445037 318796169 155793274 929297809 517812839 788385657 20023942 625785078 793325021 792369185 388557698 236102361 910415647 372105132 123086774 495742839 824484873 784964988 694638152 576191947 991320266 537915471 751435733 529405653 761946310 814487453 330029399 632714234 911988333 103401253 278526655 375088865 251052093 365648653 252729906 350453485 913079008 133089596 346176709 670085350 464474103 491327472 677403774 941528650 551637918 274427937 787696646 964405609 482633212 5036216 668608620 389605152 574833951 724162200 94019534 826867175 123494283 580788457 603029576 932862056 270097624 443692162 313494087 55131893 90793668 995325277 397549431 744657127 523303136 660344519 281316423 445695676 939247905 220065410 594141892 491920457 59100889 97676163 307743978 978577113 477534777 622413682 149619190 363326083 363636836 750840690 10918028 655823788 641688086 147033175 352572403 16009332 214827208 950949487 724185824 339107672 123741879 690178952 915115071 902126978 151540300 58480271 25362888 417471316 683766766 436506322 646245830 504906776 104966323 221013529 204843957 808879488 51275545 708612669 190011229 428018769 494209198 858386016 366774311 828445723 488785235 96089284 179582076 793978587 604489638 693713761 761210875 356497535 975389769 540796216 378599160 50337544 518749102 726037461 539850841 235160840 844041436 978413474 934265878 135744475 160026228 461382779 212598547 14111670 330058130 178000472 471015511 762386841 568594964 377476431 947539638 224774533 396588881 604229524 472899977 184517814 31906848 412006981 221205529 170051064 869621199 173996176 932387023 742559721 520602265 905818360 106818522 25919794 501488471 323781871 154682420 139486202 644252616 548888279 849670422 44363854 610939817 68977666 112135303 309192219 684396704 482969003 288261693 967367237 306771405 620331416 251305554 561992647 267166822 80053722 145156710 531450107 907019941 729599901 751171892 590439677 721618610 375615141 728239770 30135387 733643616 465486669 887708200 613904249 822563743 286955795 255235098 721254537 807162277 555159449 139348740 605953389 247650759 559996377 842075130 167017870 88137606 993366594 629947215 338433510 681321281 208618091 172926011 374705457 901022685 251684283 719480279 378378016 571490276 360675987 876088685 189985786 735737882 19036230 850583716 486499869 969424372 581197759 999431787 214531728 880502847 663044915 521227439 387427972 171379467 585692313 769863060 817672352 513240220 165773597 369151083 659112403 914443265 4719115 871026929 294778393 511398054 548097689 144737385 181826480 644999632 890992365 225489455 45757357 301216525 30482124 575687532 613991291 370146690 678030267 212145179 391544478 996487167 792108661 390354749 404026303 36510499 206439690 934237442 496592736 892966871 23818804 658456289 723244811 403922492 967090654 801280322 470481645 674846439 640958362 713696695 744091637 756652524 661964553 459578335 35928867 591403050 85950239 497451260 685058775 361090448 572324430 621294950 591025263 718109339 578583000 181137304 909683954 991847498 737422503 508720899 720842700 672705061 637744978 615651861 744466889 435489033 273334565 373004983 632759274 4906756 695129828 623299902 280285412 577244508 365218594 278511941 511163857 411016558 109161921 904790689 990583004 149189388 410010102 700661403 162517036 751052178 111371713 508412737 27222765 971886952 616345853 953555264 239482966 918218539 794824637 833839237 647276668 353076577 826632526 130271575 251549050 315786945 20975239 933893627 69930327 267531475 445276660 515844058 562616718 724326934 385407506 518172553 666705543 69039338 478925931 21927742 595688246 947002933 207051461 468260778 917423831 455750452 705284830 654686878 468445063 477034482 691868101 997224398 812641358 883795306 303600023 770121673 30175288 551380816 311255243 235795784 705197316 838179016 937844971 108367806 371223664 579810909 917925286 106321880 35921189 771324510 643135159 209020662 335256659 845284959 68605477 941080096 511524647 829254572 666336837 589942821 946302900 128018574 1825108 631314409 64634944 112886035 709179475 805352191 170695070 631757715 814887254 787730627 805036642 941537746 319166169 248296486 820131906 314032429 189506332 948382433 730202750 704237538 129437048 706556350 794781575 323103729 405204633 518140887 930496795 249292381 662814047 199090147 97313660 526424419 892817328 611423818 114078787 828234244 883048385 130207633 779260742 196299346 708045254 593671763 6998457 817288584 909603820 773446920 696078135 650907976 542957479 212606711 385044137 599183364 720368028 94748321 322816519 274321249 133917214 905382355 81135244 499558484 849926676 561937585 292616971 410081905 510694032 43966848 21085562 251976127 869809727 214883578 321134448 596121754 197040359 370172841 789857950 134641601 14834906 257523598 811204341 363073193 472860458 742313064 249578931 802105288 21913606 321848573 990076772 654897506 879361163 824714114 784423010 834672284 488200101 508018976 62010870 558823736 285670032 458243592 652194905 598599430 68644468 32211778 560107131 730510808 872920101 14630816 772406735 95661548 226163412 164432948 455871706 30275456 180060330 912301639 562148204 87136968 688934442 346903021 797809026 236380349 64029262 51174473 957684269 274221987 376421921 878566830 853584689 988930793 427485958 544866493 804476107 325569088 59166880 165365192 237200268 960145220 493629681 452452663 54312965 137987451 407882091 605780153 341142820 249903419 885205162 44918048 399587985 377923124 432110365 638866267 769334806 996956348 421704295 327904490 348863559 91288483 916106773 66156524 712916784 911711194 804646461 236454726 938953077 660800896 450384710 904413711 878345719 267839949 8324575 373463670 213224958 568263261 280507187 238086362 982274832 695922790 406513352 683728763 20808088 818620913 853455425 227681459 820195759 727220316 625543770 942346416 230747636 1230384 375410805 710144901 34125858 222115580 207478444 60421574 455177399 427081644 759598157 845512870 371022913 852550909 48720702 606856742 472755055 210684357 238596819 496064855 365701852 964109246 343271029 418693302 746542584 513841400 862723549 325975620 417050286 964068104 901677911 458876090 65904068 848847186 803990549 84568252 167602797 819356960 349425917 156156654 688871026 937105204 724712013 613159415 369878738 34161878 356177760 288588449 106674132 754868844 221436281 434815184 633445867 983542722 652242039 764516851 669401860 641304215 745502332 977182898 22539732 346206316 217184835 495529016 935237579 188390759 21243990 945365033 31111667 261334630 325474568 816754540 6611280 109852769 20394908 491894187 408176510 48051228 103850923 154018274 669540484 992118937 73364759 94973018 55861437 623798816 390637368 684117391 80684710 189668946 986787724 635007380 142323817 748111131 588620208 446014998 444178275 194967837 116302529 675017212 991281772 976047028 374158938 682553729 91213736 82937993 993446322 674674251 373499165 183423219 550184399 693408709 763566815 181631259 628792160 180221138 292172453 312316462 705712645 621600083 957114505 981250218 972850711 50416062 515893168 261648560 681646848 409296481 691108573 505811989 920290136 414404922 701901397 213068831 688757616 627025780 165929891 192474187 526717868 718927425 54983481 966318141 503203281 784480718 366980107 856296598 188837273 619547427 102372301 301844925 909713133 164992017 140801706 283075344 101340192 959828316 26104679 346787268 83849366 596180843 734115837 809134157 876310804 191446546 807214818 233434225 589133942 699346986 793929688 227057810 163784037 89910682 815344414 98231275 436227610 53877146 782064139 159102613 578609061 665769964 479059827 701006202 317916442 120352663 232330907 144280568 932557501 623718519 256602161 783319564 23656612 901130248 586531178 277536729 137462862 403923463 12716334 848667438 129110628 577849428 847181809 621119965 817481539 845364454 456898303 74163783 927359228 378228137 459008154 110979272 201884286 236931641 520274877 870129699 725945505 793294722 797232884 846775010 857166747 673026345 597876193 924376935 461371964 74170169 100685365 203100438 491833992 150287194 58960811 396310519 587605476 953512638 977097715 745450161 21524234 949343809 746533043 376258948 991163849 688635721 653423202 294993071 233921282 6110755 301555070 476256123 726761572 240444356 237607131 943712764 966585900 738271481 592345663 228559885 589308444 151842219 234912713 797202399 929001907 269813399 763452783 363099187 725443556 952764093 336175414 230929940 60197877 683353103 802618852 948787246 38171931 960911106 865649159 546403320 599555572 560316102 536559661 61207541 66642448 375152224 437636174 302117933 890168958 888767967 526911645 905961902 38470520 841502805 102938348 506872273 693994646 483021936 437398955 279677247 591211077 766541345 939371528 771763700 207345213 938031336 33263747 618235247 159478786 546172571 330769897 681328242 236743967 161357323 512413478 883996195 819897582 102258484 21798753 152496869 256137472 868600525 385162306 438711456 140421269 745583776 379230288 116983534 358135854 520724737 218962463 742991971 242024541 593220458 39911212 802476295 427297073 841001576 278250611 639425712 172361051 468628911 143630078 445838874 641675124 592790187 557297328 974205687 570817864 291066122 334000441 382305224 575154227 322575874 76335730 899262688 83699465 526469836 900485331 496488600 734414358 734825827 77263400 38135844 127229476 875278712 76620535 943048050 800093865 324298919 520257167 687428698 714395 407563504 273009581 868923035 234880214 974134192 781746043 54112716 776776552 480845240 911997272 660187886 718037907 255499731 576835001 575814784 896229100 446081825 524758231 409362086 754322824 461074656 282569590 134171651 865305429 157941075 994166968 390391609 335338419 180047333 506760918 930227888 378756329 18800361 739541441 155812078 217786651 119708979 786204525 43740906 159974200 487584455 474912768 40077146 136188071 413754997 199082533 647588403 567261582 324864984 468158901 256062889 414682096 800786297 43186132 805685787 701916301 450092112 809253851 442887340 114402317 270731481 883192938 477183614 959877455 520121937 137761470 491369256 510619154 620803114 383751697 116112343 742285078 104833268 218536675 199918038 156045023 58686212 325390097 810488970 125456653 64312987 563715099 725666417 655810009 927714259 587858153 315774194 277766394 301497014 284960937 961142951 512974563 298070688 496306895 881088682 296043695 23596839 351318418 813065773 393547068 688909668 304440211 782298370 884911543 52524540 922167886 103180748 666027237 297243346 32311818 12777440 91125159 73726418 399098817 572089157 762738831 584340730 718465652 673469852 538822565 898233496 564315926 4805561 419212003 891274088 914741806 528109571 350349627 424701570 285625328 852257283 402914432 878638798 701164493 67932817 290540012 775727334 569869165 106313407 270704541 629825602 983770376 605488006 158576141 640960869 23905139 241559312 288320573 494812987 126609103 636274169 738904563 303020299 718728510 636985474 266620139 450540157 658457640 415019802 688126703 849836685 467209880 769353946 838868216 870843934 31820752 854892046 763094072 920103775 470075386 721114902 102916152 872155835 281800378 94698532 105543773 185357210 953992617 507365626 453904269 484746540 998235153 764951649 276504972 774893183 861176656 483382842 29815002 21183728 417828486 626822360 35143722 284986909 894105814 275495462 639641331 243856430 618837529 653480178 131515449 277372423 374383662 346814857 21047984 851975047 109799864 798766546 5437782 278191534 152328635 84022341 543498190 42831763 944704333 236804901 240398733 376788583 511762563 669495000 977885247 509592772 29324873 123783737 472633778 614369738 573094946 925639822 281662437 190740200 934981738 907400312 841746877 35902276 754956965 98536219 284512293 416616586 958877152 526854669 68306449 18320272 571835496 456100502 369621653 536159994 334518124 934842797 655588676 254664174 726531221 982753314 775329682 22171095 592879385 599112947 520185453 807495771 523222518 290211917 888234381 220332851 541555654 484142490 874541266 650723383 593403220 203861799 36217918 567267575 165209278 250587868 675472070 821345581 997458125 372342858 682209275 150669584 354987676 928995986 736408256 509751465 127808433 435952282 545806969 971367152 49271351 310753030 460157256 864450517 86496573 84407307 209079782 517907509 809735679 167925023 245618787 785417864 953782067 912346599 677194681 910199575 772579621 70785776 509318728 166494198 356610908 46128190 489811918 113304105 960877751 494333946 806045702 425711719 514645096 789600149 203410971 8723594 737072440 94855296 864818871 743185455 319760621 98611539 419590801 49262496 831819116 536669877 366891601 551930703 236083144 307619261 500817890 283090230 568185097 752996185 514158933 699484381 990044650 909517420 876103746 465137093 323622465 331916616 6370534 72018579 905650987 528778796 773836333 542460844 843816391 256162129 459747031 304603232 821855484 8317403 821734017 779717827 271193015 921980047 215661015 414717992 993651431 201260461 429340577 709648590 115975527 422012224 971976876 203301012 64017355 900096369 2716983 271325592 5303068 331749865 587444911 744149610 347232991 126485559 847468620 508250448 334118406 231206468 44341903 716003957 999036041 430084056 272525212 492528582 394019419 609064197 195864654 781339117 637033844 641200239 849899061 400549259 156826728 888803480 635975843 182214699 815305265 825724762 783334487 933690839 142036004 705460063 450975846 867492226 234803506 778055117 817163415 727686330 356238060 393296280 449435181 299958247 765172849 954304066 814691788 899372033 542051465 209596153 989468987 459273122 959470680 238922693 214165117 294140627 247626477 431145152 664826994 736060732 899097750 545236570 938791757 271236483 543378309 468948202 657406808 113059530 574440252 602743349 434701724 361402197 751593166 858260345 44753168 123522781 271864581 399060467 369938047 408632238 109185437 580927786 533345994 19785113 352256005 976647672 831876683 162389844 52796794 580660066 664977796 238178462 168786479 929675458 409188275 264230443 648567585 522391452 47950931 445189772 698998089 670523627 270639534 420681970 87452921 41167332 503822033 246510876 176607719 48392645 635221492 276433351 646546545 88885323 128598721 265636055 334113015 897321448 9320822 173619075 113658351 555681801 33529140 182493269 512637783 421967890 817552132 576271503 151895806 660666891 892822917 891586114 719723061 397477349 36225676 869113815 339831803 77320898 441638198 575205223 760548969 730554298 515156560 770684276 401254280 970559148 54295731 155947465 958384879 250140465 915898096 239805603 515800434 91333035 332699865 145491116 519447716 686764934 393260857 992513564 361194200 291063925 452441752 260456430 648981825 854305546 104633770 921955714 310683450 147202686 56758000 399718972 902481609 208022178 634730025 491009194 566819127 525013934 285944087 877668972 341328839 987581295 614180052 763799655 317058746 224222656 951556025 194177672 98445616 773418971 851421625 362430465 448159318 585452869 26248294 962553893 151201741 89341874 225115530 765731174 166191803 84105829 969722486 621294203 516864650 231556890 353658212 5658761 33660642 626257844 737026646 36784114 261395614 721160622 347871959 929889609 840042 594525511 338776373 983544252 745677862 497079644 487504540 902878606 170626056 502877604 230922243 535872093 277247352 943262792 203107445 111168131 381914618 754580540 132699251 705435903 675719229 306292535 208114596 685547845 539871829 397519171 184015539 267113021 424063656 775472307 541858505 143706237 480700773 261154579 630870497 22868541 485177109 350870274 604908720 249064849 910765163 338043723 437513006 78332402 249665843 994714999 755709237 814220890 659615461 865582110 566942597 59945215 656053928 128591371 248344010 532687980 728253295 417805522 756303712 504421434 55942955 968832940 535757098 361498809 178953751 702505642 55890148 889185298 602088721 9652639 604631999 767571084 765441255 761793690 832797295 141422239 521317761 600442244 233485293 109179325 987384768 639702796 275857444 145771720 922506114 43669974 128427610 193917760 514616519 831964947 917027444 546864871 869794807 930522671 998891895 775859961 797530010 401650401 529973290 996967794 449501312 922996728 274138908 93412520 703930490 442101940 925651477 796286655 925358150 63382401 435726678 26250043 791198022 146409887 510822651 718227571 837652396 528220839 366066246 472958135 437845542 317256468 747552008 522065774 683642822 926673761 192369677 943002690 191132332 692836273 436759262 552098151 173318155 103423411 983518962 419768868 60385012 996351867 180150461 782610563 430938654 98580210 329465710 366759458 447940097 6627433 876237224 382838990 843963549 17521596 996726199 773937866 799196767 929484169 399795345 465196760 186253539 870605692 774312291 238145476 53506820 118202400 372474210 855932193 714909364 465118298 965380892 375068787 52179854 236299255 281241001 113990440 69820366 616210521 759527687 769493329 548916313 573340929 439436930 767204955 752290200 248248670 367149003 811223861 847501049 855868725 399648356 28922526 514632333 404023468 844698202 750018860 947976206 263557143 10121741 208257762 413487866 318362696 887544834 37455615 365786276 191082398 130790072 499911435 912455203 685281277 607171497 269555391 859278112 636844755 12023963 920448667 876484317 375363523 735596742 514959421 165922256 833955858 846575924 978963181 928084819 808616041 879536483 474434597 406910060 520876608 882637400 999323699 219010687 796095977 937348971 458145594 935700705 152875765 489093292 402894655 175910202 460061581 427242500 530546439 928775689 620974137 324089426 393952157 611397421 686659416 245029883 381686272 363480418 257481958 187453949 327892742 196591089 66282816 22437846 303549611 331982210 976615706 547861932 310842685 144798187 204778010 933056529 100102419 705803216 772185643 568848070 949957993 199793710 185849388 618038712 959847315 353195997 585562652 872201322 31586834 759170979 752634180 799060915 595318007 186041773 646721113 919287222 707725924 372369748 975558162 688441261 325074858 86648511 559511332 136820619 365416856 736711143 335122398 613434822 858563363 261028200 242370410 926898278 220728865 725757140 213037803 598981357 571735083 361847540 770221259 307802441 212109268 612591064 460484553 339480836 487315077 289806518 61117207 457628995 130882439 86168010 430554081 78101266 998828725 109663931 614580976 799000428 948704548 278636416 706253910 925111918 665949619 985596113 269785557 606095434 156304346 19193847 910998713 808972762 57292190 776846894 861823037 53898032 755668482 30540310 345414451 899708223 574867860 926745131 453210115 950969425 555559736 908632355 714353250 431026382 730856813 932234382 93930009 9252288 191592775 659950213 837233411 505515901 97826713 559821247 345697183 636718063 503260000 569997800 127197529 490797713 189872833 990832351 810814817 156092288 635232530 136998234 644567927 980025337 170228509 151258443 318718570 498234289 328693182 197039240 650301039 651374621 367277464 942677692 78421810 720952968 31340011 413344739 675193737 23742381 704863000 475492984 484281129 210427588 434782907 433257799 816376536 814112427 3482823 680789884 530176795 858199009 62948458 119108300 346520282 384716458 53618987 234665212 814889331 508262860 158873938 272600741 387714824 345926078 983261385 667526816 976265872 380199901 166307690 235970725 106020607 106153836 835158296 881921788 67997634 406797833 367985066 395089309 435848864 697570513 593201496 547004500 665845604 967172270 985968667 836122586 329257111 155056865 202649566 672428673 883907756 232744221 33862646 638992219 428105029 286457111 116360763 58176117 930816858 351715780 143120078 29836319 547215949 856682244 512130889 995790880 64596709 703918655 244409415 107867343 34465499 511494477 366762003 806204337 106021325 232500662 167807447 247149122 725308798 288098947 694591213 127806346 123630704 530532067 750051681 781911103 369722862 124844973 305937057 676605510 374749326 250263936 345624882 140441120 928774091 577469796 833328041 982042447 591578149 150435510 693442511 487567125 45128368 864107713 759360807 660246628 715726418 852932300 539680415 103351503 772463725 907668044 149445803 987980935 852983832 488511061 519132747 453349445 477200375 26236034 56300171 573967673 669208406 624329407 371347339 129554249 192557143 42201015 85066072 524684150 399370110 238122838 606838254 737523145 566072420 364517090 474685278 144075700 478426696 951669898 390287239 97495105 654458161 229570918 49911654 94567348 341926497 882854392 70537110 914166774 318302527 85361003 646996464 408903088 236045001 204214720 221531445 197547975 986923953 293597402 311081196 397758491 852184454 573148516 737762651 985230613 961686976 352739949 367895729 958120231 201050178 66221666 334863555 200047104 903084033 93774986 61128425 683037315 274946088 451838813 723287200 239784997 779288234 748735506 519733890 614708005 306131316 776682146 449861430 239537895 8204663 394296496 987378484 682665302 908982707 493347144 590364222 231235450 277653791 109784862 525426553 165571915 509343670 227026031 362451751 931914255 903506030 51743730 741047926 940314211 421384290 308708049 514804749 751925773 371850935 312755325 941825182 69932085 419353983 942087752 514009736 582022593 431596537 499046053 800191748 406249713 17138235 16171096 110850589 493660891 497976641 457141759 117187609 848624096 263793295 33558328 236340198 527902504 807206692 727246957 392870454 184635069 868923314 408842138 653392598 245954671 914605293 631854942 403312997 366994189 411874621 483781241 951031511 551446085 581012921 1592302 906372200 348978014 57566310 903864644 656203703 424917579 145598325 687879813 877852425 408775909 14899690 589962147 812255294 131507766 370253581 651024069 736805283 887017169 442539315 671436162 883003013 345727923 872721738 111742747 541073766 451924053 736480727 55126045 741200095 858272837 512689259 605650973 94667308 720740938 564220616 28082073 569073602 45708099 29562627 286669801 396440171 823197115 932020874 201298958 320087666 586399428 223161607 797006182 169824624 19210892 533656969 882074891 754779113 448491392 247884219 665293942 700162972 298590316 461358983 227837587 81912614 463920776 14247715 56664576 97240926 271025208 567707344 221766536 593573667 817384470 73096215 772775790 294593588 80552894 952580727 611351302 886542459 908966031 875964188 48326823 242014214 277491930 135772887 28461020 180399070 737231067 696159863 47475667 407602820 617326380 859655760 747475078 832968326 154838988 565094115 130026495 782616232 818048690 722820095 265754191 741789278 316714548 330389454 549773502 515298796 684732029 436690532 385036750 13414578 300492395 919366920 151319550 653968891 230950434 576705237 535862108 290970215 739767810 768040556 59375372 283407671 804183127 851514723 739009347 529848931 427265209 789344464 601784086 916713920 859570450 398129395 823162842 105823800 918105375 957943148 571257246 17832944 483525736 32582061 151578214 669415003 917489624 861245841 900525966 825530551 29119978 665179170 210927019 136974954 824557233 223304450 622248974 312372184 707178147 976236730 483713962 919315008 410505405 948115499 808458766 632009335 474374839 496388372 404653734 384334626 832178340 184984194 765613726 829373246 435024956 307623082 90702101 953562498 346819536 3692577 485550397 55143611 686254138 787524050 389315169 699659098 844915018 835679438 410809898 324524733 215094869 395894488 408611541 975183261 835254344 280463442 542352187 75974145 60397773 440868120 409574808 525810255 464715505 665191429 49003784 151646240 67681264 129341934 243621632 545034697 727258657 902830949 58690745 357297100 738396101 346761122 779414002 392795340 551985303 993450515 633466426 231651820 638512126 726199698 416244046 313119435 813874180 573879589 870977345 111158524 955266746 715162277 945205958 560391537 407181612 244463792 143230251 776537061 306951400 739070493 508330766 500873807 892841318 774610274 616627828 48957630 915683030 445688652 4400279 313653693 374076776 317726662 307939194 242134352 392789297 183690579 668114104 810217990 854253068 611051326 96921007 809935320 948815243 502961041 713647519 546107176 355525760 423384953 748081376 426263865 283886003 85629801 960664988 370569706 147063321 949750578 40662617 787031185 142064584 415047789 528259682 804131856 311759928 119821508 678150901 945648625 976326669 645549816 744950173 512080443 14924806 324503321 403975789 523007857 954642100 123401646 372958671 164424736 643410022 612164429 498241639 791600514 628863747 994943469 962447547 728092445 362054567 580594715 895394408 290839133 289592864 665717314 82965653 527714429 111384537 376768585 516360346 165921014 52256525 245805144 911902384 522761040 731762793 672039306 274203897 134764188 51516180 497579085 801179893 793820436 280411040 549255343 974552328 455983679 789848676 411219459 45625159 931536384 446555680 251925177 533676796 956234606 895714209 168336633 274659834 527066783 443207655 593870029 901909014 138391587 760960195 528614200 92781116 561918430 846616624 33704858 725675252 919067839 137247446 735322658 27389160 541606920 709279299 390070638 560660883 510527239 202320112 145702269 146083162 696080345 655046344 668078176 806524335 698356934 652479789 384852117 969078359 276052062 47771434 953649391 146038274 988988146 919037079 485745450 348671474 560875264 99270466 494880902 460507216 450728370 887009583 571628859 870948085 355257599 741219542 355636652 845386710 748538986 324703698 494166764 858084902 29975547 754110514 635045551 319487974 776462338 639420297 459878912 401740689 101100687 15192881 890584421 909146104 723312843 160052652 852249180 625946190 48744044 992305419 245065608 309135478 637022421 266431653 495619787 985632451 375713030 911650476 382165555 822178568 459365175 607528002 528576596 377733158 295450941 853971878 207738045 714906624 200530367 92767899 70487881 769885307 842000207 626075509 554743130 614243432 410261012 448255944 423397187 940254247 858145929 530610231 694691869 560863992 199572754 926957460 755142694 296571729 116386347 336722661 112382603 409584462 236612036 310323859 414608971 474835042 326127001 752925311 385270725 918145799 361520509 179617618 758057707 63140706 458630687 393574428 811684915 180758800 872951387 234347628 324166875 135293332 928183595 916018188 722170684 825359982 751825131 293382212 225178084 657431799 412935756 727070604 574124906 856124543 332486747 949673015 743215483 421456588 504277007 69019404 546610260 557613951 921161617 380755904 684314798 398832631 194021844 589781550 46900518 202872118 976435999 89528358 616571188 810187502 555815483 727382372 793110812 359415036 92007106 450547859 149418318 628864401 844446054 484882926 360076948 456641731 833372070 419870413 221342901 128092318 443860554 846384335 643907746 169398038 589542244 610402962 330635184 507085066 990394416 569692450 256764869 26995704 529912310 778064475 150963599 170280052 442609694 269630423 952407986 401656475 592002424 489433197 17357963 886990345 481873272 512219636 277338786 708047256 874777631 435402509 756051427 633812997 358231927 102664105 621592816 746597521 896772083 626923822 276811406 795603586 452012680 406399604 286940840 188105584 224333551 886293330 661736956 885673734 519332292 131550008 962735686 724771096 101871360 761068678 553853334 815444219 706129116 473483450 329495628 11833326 411490151 489136764 43293902 77495785 24470652 719778764 982038529 236910723 231522240 87317774 518168196 802913167 162754627 148940030 116585295 988900532 546925447 954909473 846496785 994896667 834018197 745112045 104648997 640010343 143550107 436647287 977521570 847564111 427137990 78893931 206544488 508560511 595132913 637907127 103134598 440833720 711524841 128021907 342901236 741994945 277837029 427135186 743874766 16226709 721409859 567812057 840666527 710682694 473446432 405133544 537649291 557607732 659015646 736387390 604478606 496888992 543569874 745709273 624156438 389313801 880190324 145544096 608406137 981016995 809753329 325300568 105514765 116622951 578673540 859819932 247639362 761917266 400436762 917794149 43501199 996162846 644541327 601736133 921831599 75783623 85163300 919782467 466244717 194748247 927168132 547737810 94382187 500438537 127829783 281882510 745638686 95804627 364121302 22850340 133982811 641096102 360611097 469739152 18352230 990428801 798102690 863417757 306364524 352423157 556473804 734903634 43017712 644306351 819152089 365420754 761641094 797543512 623446794 788838213 685629705 312367464 302145855 185306296 923584940 179362304 252005984 701684165 618895311 67220782 933272152 533940740 429653907 323461253 463141708 983936932 22982410 31839719 510038124 770884509 660784030 298826404 826352064 978149535 750610361 263621586 280138327 349369091 943626879 430962029 6037553 101442427 77174162 680582113 222258028 215633710 176090650 913823458 187053748 999066487 745352245 448478258 283932986 217972067 226010798 824682243 942908659 237890751 685664115 319745889 621972902 189943070 733008304 889411243 912306834 353232064 85615167 224431895 146548201 261989321 794930154 294647022 725202021 794186100 62980405 506089550 217434571 348554444 344324280 716583069 702181480 459541330 343673891 245419460 75596375 79477332 681339151 762786584 652335011 421538023 237557818 565103728 447060966 273127340 37262503 925200956 315904724 421853828 959997420 879843909 354414072 529976020 621427404 781898273 838061703 190907686 481096771 381352956 123148189 984112587 414867676 643255070 329781688 996798106 196659500 249665244 890670420 869685476 940303148 284581623 388934723 631580930 400952874 576668840 997053840 182407778 853754232 826112456 913526489 684047898 106252770 756921832 781096884 295032866 540640790 476613860 587514528 203423855 531846540 400790180 12913898 220944726 979744053 794282389 607956960 698759862 850820464 553575896 573014959 239783524 858310458 328260658 976254102 336082410 297510787 276155245 208010738 35102768 227899892 750327333 951923751 159942613 20153910 943303318 612864288 125491692 844507861 23724038 669375951 793154235 923355395 153296325 746346792 822218419 587162358 269033373 939402418 843850428 648270776 188647142 769834275 294528560 317096005 42130582 219787451 552200863 182010175 812845341 792541627 234614833 12585199 284940260 366044591 634940531 307407856 88580413 119663918 806838468 113462799 838301967 707109178 520676946 910930553 329533494 919954143 349605439 338275417 5058915 240721178 376192687 571351943 687551091 934829252 66902564 758125687 624195895 501428262 513667491 780513233 259274661 646118094 797792762 623638529 333565095 573610341 684908196 320956220 575094718 370647173 893036301 975951401 117158871 29628442 78650339 42019509 600998432 61453808 747376888 692628061 327144341 712745724 51517979 920922305 969863995 878158137 402580509 171441298 741000620 374214703 666158713 740186418 327987531 477618597 268308389 410327693 792352193 372453484 68476335 755716201 162735554 348070928 482057434 652172042 605773039 850798559 365875188 663728285 697497000 154266839 60515656 257839857 17616877 671195591 873040493 761646952 28531939 703156014 388736106 895352950 926749992 231269349 858324947 79125289 326886557 291900751 988426171 983686302 894976947 56343481 88846858 491547278 814596367 948321241 937753529 742161936 105464755 269760924 123359455 956440559 850009238 180123682 866569142 965647518 248148015 937054965 658905022 98330946 837672944 922406261 64724172 293874652 70033457 90727606 273258648 129632800 492928347 430329839 708819823 107324708 481500022 714854949 4532533 561528312 351645340 535960429 873152500 575353482 898522149 893131346 706552441 139362632 284998674 64056295 429138776 602747349 428712186 711277727 529017617 617857690 207958221 730911169 306065249 518262057 725142279 159931372 427291450 901636459 608182788 109100647 638001742 898802364 445573072 675976530 384312606 615986340 179102 689131876 552281159 598874426 313275279 646300888 955000457 181459877 834530387 447793594 315391812 582341077 345535782 621380282 439302878 23696142 247444517 95844046 979697485 943844836 800388039 238218735 199148037 302908079 83724552 252395139 383731963 326934174 893357403 752719583 966597547 588396077 276040267 788083239 138789914 38485649 991440670 512606689 571907375 370778519 333162477 226056413 285548015 306452710 7886698 436275187 83376751 486844867 856283529 819045024 760947107 618178451 515670043 793304995 798768102 116361349 648163709 957275993 423136795 768649479 133131963 824664356 170593971 451311988 111052114 142698461 432510251 734166218 712443087 377177504 416658930 315024736 813551068 968794602 173124891 203788028 473997005 740572045 272045018 760903941 270762567 685155575 252875152 936803938 279963961 486654162 476356719 568208159 723376237 169496531 717522224 515784961 881654016 168085562 934418998 689168798 556892808 79019900 288473977 616854257 537072627 769581001 307043918 127510404 931486293 617125272 221430719 891184727 665126004 172503206 4919303 400207273 687199246 918052783 856973376 691009695 172423874 189466281 815677540 787197549 622207736 985879118 807591950 560597931 441514400 572421466 824320688 566125589 319084012 480507165 108935673 250148707 377266161 897959374 251446315 784462507 629858975 647898403 509202165 595815962 735094026 61660422 908734522 352579503 530975160 766267779 339595867 931334467 598116533 283844507 118247511 451567602 858891085 31473109 265976686 424924265 877476131 14350395 780237257 558575005 369434419 587850465 638124113 252129030 106142299 776728557 86298381 994882231 772381491 485743682 493574403 345881277 563201016 190820918 364243731 263724176 156271565 201731392 770643667 305604532 633361128 517972580 755389613 608353931 510715265 868280783 852620057 365051692 693478735 827286080 774659190 163539036 916026134 884891699 811057732 534583951 766287525 625355381 467843621 477710808 879447273 425189596 497574877 339325682 107149872 724666426 137056510 809401880 84139988 636700414 643968732 423067383 723591188 806265387 176325115 192511716 526485360 552740052 211871020 875714244 793994817 294014444 186274991 581385611 151012267 509538362 288125998 711111573 638127867 294622903 707078076 819534166 268546572 430697301 667534934 438070821 311012553 274246927 449218538 941059242 530129743 902482130 506425245 764252759 381474313 229343843 726095540 871124893 122652080 82822120 434923057 743574432 444919252 338169560 730392881 220587078 940895552 912827675 149042202 686313108 145719761 759206664 302677385 921016591 137971098 469092676 5851437 127588903 964177599 813724971 295311698 379061532 408783078 257666167 684749607 476127799 181247027 9517367 183923430 666317543 775969604 941830298 816386744 244138320 585536785 509636415 787741672 34958015 884519024 316000861 850913995 938268538 25121673 942072914 173444736 18379277 831727779 32370746 500548214 249313495 687522841 872113138 397239908 184376328 703832205 205042870 225889878 298714601 765960400 696535256 566802086 271130960 32094268 144124306 602991227 9393588 637790762 810048639 376832706 682929000 983905400 89644413 348065084 428398136 100928197 584990704 74271688 682819814 938085292 574904823 648049706 268170804 407083205 632946925 59518040 44805983 223762767 854872646 33334563 555186149 752428470 845399401 881975728 844803702 117744210 469329420 193652599 136072766 150322897 131235672 583146595 717345843 157040717 664361215 390179414 972000256 455323247 37477286 966469201 494864191 666276230 154536385 878005899 989242224 322273572 857904350 692198651 729428956 508025342 635547039 207726802 795777333 107465024 887131866 541433403 91703226 445536236 898401897 157764796 822928692 483022035 630495468 1739575 852562683 755331402 29902006 185817065 840808397 807381963 563277687 38766907 468142619 402175480 940625781 96586085 690069554 920403822 355801153 614448706 41784454 801487606 446314774 234489515 109717926 225321723 476956135 287913604 242190173 498408791 871266947 355441305 228081465 366161192 312425132 903832270 172360357 801895968 770922086 851808284 768949353 639614590 87053604 426132339 87894066 591716541 312734338 887772543 624320177 105998522 650807722 601116203 822975030 843745180 401437032 970688111 146922624 149609099 115520228 760104678 224522060 697250116 825240172 791727096 613172980 941597520 53579990 108263371 944821465 616357517 148359558 219879980 111774658 635094603 98178721 106064927 552089225 859078222 464276415 218511601 821142123 962101478 966020125 562140052 579263372 747083179 834666414 199043974 169477404 55744907 15527652 336801276 251874778 297316585 471996810 723808760 960558165 121507167 524638217 866043842 64328229 86781702 365914003 48739150 654437015 963558303 857521595 247117760 211987159 648937966 633521062 707189881 531086847 624596806 77542595 834549618 236021175 101712409 213531973 764958744 72158004 330218161 928677167 135016025 108936687 861085161 512013437 441679990 338507351 637895939 384488157 997433460 974312105 117524826 753750148 102087629 526108907 552312127 125385091 385256713 948924526 36789564 510546270 237138279 508707928 858087013 509064835 690967441 134681170 167295629 846056283 517928921 329038577 191056103 486995839 79844328 548122568 293433027 148046393 268706483 186729031 996816318 56018581 681208201 187884073 702545252 956624384 658514876 813600781 196895555 559509989 322769780 718081069 122338172 274860260 808633926 653763631 624697390 796915619 620063942 945897301 436778859 445227190 574652109 893989534 740315919 887282291 903033516 782131936 745460662 564888370 3711498 827629128 205771722 803065441 893129743 416682435 951678812 120109383 447062120 20504983 184261928 16995874 200702861 910196197 102742279 259061323 943848277 155574047 526980195 273608413 956358692 561713899 568534407 439328130 157339732 467905554 600634544 189564550 710670107 679172354 668333637 779475193 90059592 843966734 570415933 145051543 978810613 777265238 143898006 449456323 430214760 63783882 939582149 635262467 458753321 493379616 807425362 219374098 50962437 28945647 579100544 55688047 200225118 718817426 208318290 688049018 535572041 177178144 478415739 975519398 817922205 283016308 828644612 282905629 993403237 688139394 932873549 339881472 503864261 589179014 19128851 988201345 929043647 501890363 406586232 617907690 633846394 180102162 74677407 849168931 404471687 284140711 172056011 382134638 882440800 683575952 515040980 422422363 223901235 831136389 384631536 218535854 181698957 875374079 856649394 696377192 873255969 819645719 60958539 952671666 972107599 654471033 324271795 573287490 352361308 889939590 16806007 980672199 408268279 411516628 10367742 721198319 930178586 468194572 980264102 994642649 663082871 259925060 272532556 82212063 505951250 282279572 123445025 725133500 635493363 893090282 625012374 867574788 641641552 529753329 563632050 274130092 652896872 464932924 241491506 515141301 860863845 501958691 428134197 400632097 874746163 207988837 235990027 493436090 943969397 917063150 397844078 386254749 336429815 261876289 717807883 807927536 184035888 102547900 209394961 202968617 803498943 279305233 439743617 819540379 847556414 122877324 694964898 53559409 124867279 497461474 505243649 273041526 610220601 897759952 96200830 418036446 655736510 581313541 251599963 744022429 469431042 312275381 544833088 308234540 477204561 284033279 576347534 815106856 163626644 872071979 103000008 501203385 440881630 259704131 239100682 458067928 194549608 569485863 663431491 748904265 726376160 865905527 783359670 184001390 993257701 724840471 5100808 869270818 546289371 675490782 662126814 371840942 112401304 148049392 282556615 208845383 313607913 958321762 723743453 440130488 706295812 219478144 88746540 552688604 594948453 557603129 966055908 908601408 195039719 478315899 845549973 543082585 129861050 230886631 626093540 785667393 130073375 573990307 400319535 850497766 35384630 689557744 295446686 598904009 638401048 221716538 41201358 913413598 174587732 341622418 397134054 657290107 984278248 177014252 205772370 676557347 961356864 167808593 958377620 245898313 430150751 299333814 43532471 498442077 330279156 569846873 632163189 544212460 421757411 364786891 206701830 36761478 616426686 970917029 307133346 934119803 297605751 709440251 433515156 420437196 500138202 412665258 895011524 236807079 466725520 407500645 977175733 763252720 245845510 104778508 431644752 448210823 950580914 916182761 600142799 823065041 725779252 278463231 852021217 938521179 588915091 965907261 499089416 202529565 82225086 55914806 10320502 11214201 607501335 693116198 114163131 74534770 277617722 698775458 32555837 169485575 912550207 309088850 915934874 687626407 622029491 108869383 811498669 304893882 834207956 862099063 145702099 115548041 970213986 742086167 62245242 880391654 869945357 726411358 241529942 669865443 159324546 554219431 361168033 259659389 328751022 564430495 49293035 315028195 892549117 488063578 787602830 950854940 400953676 244727957 507018059 539937612 956831926 886863822 183227390 371476531 615894424 206481621 452721356 45979374 681621189 574762718 966275547 413671954 447577617 288921321 335623231 87218199 595600435 537388374 243298922 838344202 555814558 417820130 703691324 603233208 613408389 227019087 97290775 20558185 118727728 971533960 765893593 366952336 29055214 866124210 986138502 588124696 742779075 621282961 651754115 225126386 225778831 510459983 169125433 500239460 53546300 250793437 982820785 865472727 658110612 990615523 430417778 591929307 957671102 510452364 188958308 687694161 249784568 302762218 304095835 348974019 83390944 985628070 194735341 606319375 131585028 675404910 822594173 574095550 690904585 65404510 117950572 987057811 858574799 701802449 222429256 895862268 93219740 533150544 336991582 867001241 321315040 572898848 726148158 886609230 39069078 984145044 746645034 318860708 53731128 856291438 940316479 672328405 388508102 428541129 729546778 228219157 625220637 765230559 479763963 457476691 479560424 638668523 571209669 863709106 429622916 609399969 832867309 745153427 147925289 594568327 966684138 338304924 83795019 79143465 429527427 630422077 914721062 165253276 581902818 933719971 769789365 854560111 494655051 179378392 453727419 549358199 573598978 916645159 815570770 430977462 404635001 298435399 843695998 88159279 466579003 88042137 394386465 683898928 834313713 439357342 961477356 253895211 404376601 825383960 319369254 508687728 427268574 269388287 372826822 680208462 773377090 435306471 531778406 461808471 180299692 536491663 128415312 483736317 246948215 386745719 584294862 49565584 255694730 881378620 898604898 905443670 859021714 158680832 959641472 948233044 244640104 584205842 685370991 874024252 381119424 217475717 402095162 939808202 973882855 611968696 191435219 446826093 310595278 13198130 317445244 374380444 104271938 633302998 496327613 872628420 300745221 891722320 171912747 621864459 342943083 683557911 761504727 86695786 18681848 476717413 320235157 785540314 200695889 307080648 128055267 623019223 204229425 897671367 639275939 866529804 672941497 824455401 431470252 474872914 514453501 535823420 678936602 648096041 109286607 147479259 363868106 829014416 302878120 87377177 809519807 584799287 972086521 716366595 570940004 210731245 760391400 321515523 389089906 858241368 720708171 36563387 598930610 782672289 419341651 548429989 194675073 861421255 101232421 245392369 721056240 307751956 512636217 365738444 692693471 237008899 49408751 928184904 255582701 874029486 204231740 64585714 830730377 374503453 63888537 122943353 638764683 991753130 227295719 143905986 272233198 364930848 820157083 80404985 905862237 984678958 590380881 705475591 52778169 405669041 883471522 147145958 263721226 595065135 818087634 311696501 460593796 795077066 959735738 978284960 904514386 463326432 332451679 751346117 448128167 507230169 933559481 826044670 781347407 860980345 392018829 384258010 750583962 859812098 355715663 340029789 280254198 502364469 493318092 630034080 808833799 783956958 462953489 44474224 727287144 413883022 763217200 870826945 742978407 976245769 957330768 295713519 558233345 541481905 687124115 529314668 961879390 785477004 69095381 645717514 404518541 848701153 401953977 37925343 455801496 263523696 546293748 903381174 293769803 42826940 250033119 505223275 212081908 747380243 980414703 855117807 257794842 726899490 188173370 555464971 867079590 309982230 922086463 436494774 771881349 422423990 941202637 522428701 503609423 861547216 788588757 903520361 813951248 877079231 706711061 760757014 72051069 989226265 541684265 955991743 14803452 640702194 221104092 572280180 727213624 630705846 737598842 224782488 518755602 146677013 352054630 134948768 334843586 85874835 290170697 886659203 929019966 235100816 374929722 654597365 50767119 696148813 928608522 190025052 944420421 635365506 685929397 788267895 332445655 739603850 685816778 154045313 461984787 955696868 952330448 235322244 834086891 853715162 207796496 341226507 872479570 208991523 833628901 848024727 111136006 907162808 538145953 840340177 908523955 951394938 830718593 701250565 964831555 235621198 591140932 976110352 14420682 131775395 54823172 28291624 631944430 316382640 510309360 404410093 714397228 667452525 479412187 788257379 768190148 766332790 235507327 71540962 556193300 179222008 5687229 561381458 215207604 400415656 737184168 47762935 440796047 585288486 585396823 894083667 649814875 531812131 406984892 779137660 472668358 770604728 279158828 18100775 3417543 225230410 107588629 972800775 834371410 682949085 583233083 525444909 987165191 682025360 763036552 416490879 742241891 994726505 697748968 65178643 887597535 786726905 141381135 201983301 291877067 316719750 558796719 350327136 790644120 725434305 365831747 858002742 398062643 523581637 875735091 829833206 583661820 395533873 692456326 394365913 696533351 422410894 375787199 99792624 473310817 24824973 456387780 103062127 629467725 610686055 684484639 771521762 113609542 765027051 237280381 520615538 393721196 856254835 293258438 518027743 324885964 680031107 445274871 745003046 917818673 943572852 311956322 68924683 19722254 490658207 847339646 409905036 167306586 174261735 653444954 597256499 37262131 532008229 52194673 355239700 10399264 222318236 351274507 184061141 315741905 406696859 369887290 44514687 921648872 398187066 792431387 447091916 906962307 872420132 325253906 566395181 397424946 992314526 814236169 744996067 244360528 648911011 396820574 570407988 961494566 432539196 786241617 899739886 896416276 215396741 964541888 463334251 965223523 502324058 953636183 164762651 899937891 24348749 389152821 499078206 795337787 789905804 930044750 831954744 198661513 112362599 968898913 699391624 428688155 202040650 985000582 370277874 212143257 174772137 474100244 974520913 44240904 122512550 182736146 60188634 178648075 990968369 581642134 128100369 622239274 834529915 659983503 43726877 857708613 598722420 190771872 920654621 426059353 54577179 513340676 971523435 516003303 276257157 531838364 600752299 908946588 330226443 76517585 833673548 643248352 983257962 325813617 229580437 718224442 788300404 583883884 70082162 331312449 288924991 181540018 322787089 265248969 249764429 556301029 934072485 74574188 674763677 132179476 369408073 37735775 75021810 31997437 208528134 266347790 814210981 315199797 680350446 958790564 951376113 152471582 613954390 47501278 106307793 51966345 239667762 889356666 211345890 846321691 394783781 576074974 589028703 699011274 684891674 832397189 624640971 397690626 18185231 604367444 54486166 600995382 316995825 76611843 37750705 385382413 880589300 766790156 4319601 657498374 229976846 355420043 410125196 803961863 393649071 500797309 519891941 67819445 539327021 155555093 60834731 214035401 985845576 925641468 403610956 732149682 170043184 762213705 226244763 69951384 201348452 951511711 953577327 257591022 758100953 315738378 779444098 653093095 927353563 831063693 399686359 98306103 286140714 112804687 97254290 45876657 150899102 832509320 225488391 514536411 36706948 693009052 349660981 720708043 247964081 202695101 735155126 369435123 725817416 768884350 806380335 320117390 303293873 427082848 366831327 363805589 469098444 416602453 541939817 461990814 939624160 284133533 465828878 749855432 929611855 728073637 592599946 603493438 231706541 524129523 383683451 281773113 362052522 739038011 718773580 326091037 554125301 29404667 755883351 984799484 629702106 353064664 22766687 517853431 345055147 352793054 772524765 164414827 873554175 418947856 338769274 685932467 299592667 658074674 780863923 265487204 833158834 289967226 304680686 824634122 990272507 246743892 177256167 240337926 754393553 690260902 663891957 378078308 671410922 430441471 810620050 271819850 509343628 339647599 587437639 379619225 373302637 922879537 76569224 700920759 817317575 486765755 498809722 891137369 11234861 189397223 483050727 709495534 231227667 583803373 839628166 612705701 795031585 138025217 493485042 736844069 169943193 197530044 678643607 661590736 791050368 318451595 325240228 819271180 54971966 713024774 132823493 392398977 514886443 781696033 882842763 759439638 961915293 727595180 602211523 38899734 265443805 522725103 823686460 188245514 200462434 459731608 25614854 475180763 101494406 132059537 733747894 390791027 780422498 836941167 690661453 981395857 485895501 255394490 199334221 607544242 990694267 515362535 197908108 995345108 894628066 832191255 593805693 276383394 466816790 112545321 589672301 809004776 535975603 608900117 213260528 407600684 588727427 891973714 894167345 702218519 820069765 595608791 328242756 121042218 844348014 844485389 652796167 284995735 453734661 479915487 849919626 163532140 52949131 839038761 668117598 290395348 249241947 744040199 94617696 788199761 13838195 453662565 612339866 70801415 725874190 161236642 78732617 985519119 690754201 334537305 228777607 911874604 703620856 621662313 119861130 958672530 58023349 478482822 629993980 486182091 679022951 964123981 615903730 101549374 622572850 845680933 4595966 895843318 884428365 873112441 523264414 444938202 746349438 219288635 364884723 603401497 639845340 827214205 26329429 360247579 722769104 652788600 206192765 755022542 37095108 12755347 523540414 540087305 194359600 502108085 907299813 631827810 442240283 67576286 462086460 173520138 651777118 796479110 517487341 106305112 987619088 439579945 959031977 401435132 372801749 281781160 518815986 474378130 533889393 117593780 513788899 673056189 660341718 446763463 502745523 807930828 687554065 623696614 669561843 424528146 520082283 513525515 601034495 232534721 619785022 858894418 243169355 412202690 952286919 855160545 880554165 767323758 16032183 912497743 708857478 638982022 198994624 637898773 267902729 168817445 378378470 810429008 518143088 257503430 729274628 755523300 248821779 987583048 990913142 964083138 292626099 354194080 991085238 558755085 759656815 19732674 614227665 895808031 682233265 247583396 936278800 849507237 840018575 493447879 961106685 236755102 208982486 550479574 165115259 375990041 379443146 841753285 219116903 221668104 790160655 116749763 433842344 584059069 369728858 124964540 928647897 450229056 957691886 504471110 285831155 598135764 57115700 80643464 244372461 987464538 594762416 217704373 340202456 224030947 8487700 116579176 310496075 250443671 512425633 972415586 99057833 842202340 253259006 16153464 810580959 153430374 482814135 192606447 528000403 910717044 873456690 312014052 700708143 956793072 712767074 63043083 731177020 955024056 769423934 372632475 159096423 701177063 69874572 893146022 507103570 709235727 697560781 106376053 416471894 202266972 18201211 577148191 880995367 768324690 25424967 618145421 819572327 63200102 347773132 453286311 84312920 226193867 26842063 901807450 714825683 428347814 495368163 461165125 138561312 243536917 324464550 231990734 876349244 976876676 515175219 373402868 710164087 980189914 526078194 401296750 809692232 438565085 220924068 690147575 624963314 588991947 640170867 466843422 858199654 405638621 263437420 322000218 581205253 724883757 929128142 553855867 713565253 695124981 62298924 164074816 206119315 841692384 90467899 433712246 985691247 339696117 795238399 666428518 509092910 802573287 321339554 418694221 398204234 67133840 446955439 174414155 596179248 532290891 828088148 179011925 64662901 476367823 3476610 459638799 680517619 244812898 409585240 172655363 16511640 554935349 627819888 751979780 724647217 765978639 346154749 971795226 125309284 649749458 531556855 20672669 280778362 500677950 289554047 520647061 571719579 820666399 51521741 276877599 440436422 844669408 441323443 613785900 604034400 130947246 677888184 604370258 774341367 19579750 275956505 145337397 804972300 731328012 229024729 722656569 469675853 552898690 706932242 27085100 897257037 729987613 914725256 945423859 767243748 168693849 831105433 740639015 480127108 272153464 816114632 132004983 433659593 774920338 26677327 672791631 184428170 836933128 198115609 622156678 299002650 538645718 507984497 441296582 992366384 360876816 215164692 699433754 616793500 245883510 882539771 712538881 676889138 477579628 171387353 781082005 200906595 860772468 379666864 350329240 936476308 39252072 702919846 88959700 662162976 224977335 84108103 673815229 939175811 597830241 742690011 866669396 897338795 477619361 409940255 19697622 737001997 799012110 643991407 177701621 119169208 312444807 141573456 121598298 276542987 621085407 776766334 262466076 90719432 729717662 67203350 156698022 514028844 332480875 723473436 487581200 352152635 537233323 365123767 366619112 606375097 622280543 578828708 789865305 102279070 20992590 540347981 224428118 308217286 798143022 663773534 695595300 890285302 190573076 74874610 576133132 731644906 593039290 992095901 491345278 585039836 286137181 63049453 857975240 995946805 701929078 353295701 875043092 12192227 6387361 412063950 471415297 233734675 350015886 871067124 631025853 764443874 200734291 884659413 603733069 825397534 993353418 972557919 243892756 523072182 853417639 824472829 982691754 205183065 155264084 415832512 450847814 509346080 76941906 823808846 111628290 305977373 752416729 35017784 911376813 337075639 12595370 380975749 560202348 509467259 841519485 345857760 179324784 618967809 210021651 30774276 466951552 998909512 722661510 724514871 107970529 879149151 983046185 258504185 640989817 595415141 955820974 251385177 880229532 824520931 324338188 158399170 978038240 365408901 287766650 673680743 363909908 359693000 421399000 236913040 374201686 268131136 438727974 621418707 718208259 297533240 35702322 491615147 528803580 51267317 684003975 438555248 52052765 570982474 907775095 332612798 888185128 69089788 972922621 204669292 164892322 625069828 855150683 669391636 547163361 79545360 962907865 202111457 594080874 894233917 776699348 265393581 362187257 792893002 229816071 263759580 515331284 778461861 847997577 654006250 346774366 962188171 99901493 896287867 234234337 314903494 926297708 104986900 614607865 84591789 678966846 647651005 271556272 845729679 852548554 908436719 411691781 572184904 87191682 865799839 897163931 652520961 332161300 712924568 384072117 758733220 695793873 346534288 980857714 700028718 797626482 273940001 832537135 785039133 259641209 548654040 486049752 932906632 513499645 862149636 246706072 858982232 456158944 944079719 454250971 632617 585153374 895224250 429075347 795295474 477123184 767742063 346674193 448289280 311841890 597131302 679500520 921402242 495493791 662936381 183031752 852708638 72532805 406501272 670495796 603588298 184892473 22987852 673123908 490372852 359573993 610820559 885632611 512224162 744049476 337901152 499054115 758479515 592917845 643506226 347550958 911585621 632747927 93429466 193412720 751541201 366700257 59449164 589341373 740711871 753593865 386468663 924737793 280871937 183237423 65129684 495425536 451196810 383835319 612244878 481412442 228166041 705467770 776645803 955990146 842336067 909369198 167741487 126839876 701964955 80506019 29343202 370120369 7878633 93780880 157044210 167412613 86621049 668371824 807996376 421133103 546334269 584656930 875526501 77141675 655952249 665170062 862907476 665815329 971849745 396221338 87799816 111850363 183195938 675655963 381044079 638002415 442065439 291656422 588364654 619247901 126216957 413664307 492412388 806246180 855699505 704484080 45388193 677423803 974414123 417384273 329025990 529694621 139120551 882863606 872210946 727642289 42817354 511210202 410581583 754082962 321067746 214949264 530124585 296330463 357368700 756784586 601522669 499331731 293607329 288056090 550591672 189841517 331828531 827699739 172784343 151174684 300723177 178349908 488725422 630541889 354160067 121057960 599780466 720660476 632901347 57770181 434174361 933307526 361164091 51969592 446876616 296330297 169187899 726039525 509643726 738939980 746107397 897419409 662755964 237410666 174111159 438260306 486755871 396764721 139510631 936748573 155365509 858942414 641269273 134520673 522814663 484997618 330704453 969180779 168226952 946170752 657875173 866379058 612381929 614276835 856303230 868955237 839695891 546672590 580682949 186074327 733814340 458780135 593910254 395751091 326596463 242017730 195690304 833675561 471124269 886679848 769231530 380561442 710917658 914779379 153360627 65061521 808974207 435441678 897239002 337968413 68562118 439851472 300833473 990656149 787870421 417924289 740709685 476411086 530762523 973369046 143801807 54220278 695312823 387885974 944581001 385329617 335416039 33400111 891851728 666573724 309755387 218270106 524774900 687616277 922885374 155910923 450884832 67616171 452781854 22940331 228162440 210858191 974149662 488188298 696268332 21882511 950454687 974301189 254605185 476474651 594503115 993894284 2021231 168289954 422162680 523757003 420420570 599918051 87364122 863558497 960991066 815515997 704162080 881175801 972599417 825395047 763288313 729179601 984974886 443536085 79210812 6708550 563235592 115060761 983637428 600142284 646793815 558531629 743378675 444969089 22094769 309597057 688481531 447751696 540557696 189903764 302050545 683517427 426819227 383299947 638628427 520850834 70568314 184479345 10742407 460705648 975574299 943076280 998566997 830361372 813007592 936998775 596517769 418734294 780926986 325128225 551098767 649207336 910255681 497216348 259395386 911363852 699624504 255839433 66040891 415807545 976753059 832628552 270508989 52771412 595100601 34998580 303142852 2278307 980455866 152151880 517142675 856703699 745904887 807048408 661207995 924999918 637027890 463034030 301035247 483305502 923009506 23575 739755144 111662370 169262322 114901102 339542557 31705769 696568473 771847217 518344170 874025335 687416974 324712898 37382091 743704072 853673629 510979473 561254208 629062510 959450401 647065604 102094115 584138681 625098118 654801106 262824030 275048645 205534131 606800100 78691437 403333355 438470047 259377867 343242812 388859115 416363665 701739279 968879268 254507817 634881179 10003901 228284699 97140913 22244836 800632554 731385374 609518128 502489392 619004319 70533613 763919883 588360768 900141507 248177159 799830976 148470487 483612459 100054741 552659503 375511881 186556584 206542572 934541896 764750558 640184558 770138092 110250616 373129481 372973896 480950286 82100377 510514708 573350218 900499644 82978616 635211557 783556088 869846260 317792589 325726242 365778651 118743523 255097984 316879852 274292924 319180400 638096616 122040957 950264880 536177787 803029766 692629575 746145920 391474568 489768448 12521667 982584858 3444874 286264530 826553829 24994616 667093060 283749720 370255820 624807942 745171072 921044634 697805999 109862218 180929138 444209890 387603832 994523557 874064660 208467890 518630700 553991349 182258739 893907380 648121504 591446646 427857537 86485188 337953704 88943222 937570828 581739787 546301408 453391635 908252259 782266566 944013651 951110432 333460047 35963854 732965742 462078926 817005747 419378547 766702438 996531937 795434869 90947239 359277291 527417610 758489009 638566935 206013934 927952243 188097483 264408872 242749936 58645507 861945713 320738746 230171353 665620944 510765497 919906093 164741642 531824964 644012392 640459240 535220288 415375655 382920617 939233761 358274736 785716424 584798156 454345522 23371649 885454464 241033009 863172379 186319295 34869649 839350971 771802527 480186030 558535266 558913029 676893772 250298586 343078528 132813077 137725868 980229776 819094773 486277949 98064664 101964981 666806099 374580594 414286866 679264631 18874826 167111178 284772464 874769792 137046914 460321857 572410596 285742213 983626347 506575390 241971101 978934767 45227543 910371859 422799834 531093810 113620965 229929287 144109989 446946931 673392335 559894504 892546894 262975893 559438647 958678893 647622397 103203503 372998758 760121970 534918793 13213547 504827081 777980810 4103739 246234703 82793625 767785524 968764901 564080018 791326578 294912525 572369890 617855694 353237949 860739390 817649939 82927703 662842862 244877259 264428009 465848161 293091410 84776714 187881205 697290323 875563243 758284145 627370618 216250654 771678714 628541587 83543485 375840668 807746090 653968083 210151026 555798119 532613891 874303534 639835754 160115530 182008999 927265573 497924060 457872553 259151824 948623722 462014837 142503658 949132908 249244139 719591730 384945850 602314853 600888568 80940819 605634153 199596059 865540829 881983003 330789871 968085801 864608538 789464739 144479499 897976935 336196316 35865054 789503543 860270484 15480425 425622513 115228626 680419940 449882364 609843929 524643222 180728054 145315960 332804029 21829372 344753857 116634256 674709016 782499676 954365590 255604903 193057201 668709659 708449163 831413767 937643108 391596990 65241155 38521259 232763726 829008410 968903947 290633813 37750337 678938129 124507514 630306930 415877504 608772900 441947662 495056902 567434866 894347630 770335807 402420891 576696556 846165797 411826908 349791467 602043679 949443819 658440771 172146682 741017055 905223659 858206503 808759022 834756297 486080559 905424853 699496430 772393855 161975315 633914182 288015330 171960455 507974596 32745636 892226423 716662984 237409256 178154578 954210097 92229418 156931840 599365840 341089267 871152697 346662965 612342063 148769517 701245484 306845031 973192010 988792040 443512672 691049260 478363865 269360648 582787989 665013052 124700120 996093234 757457654 984672410 455397947 930522459 254201698 532661055 734087922 251712401 208205670 853075831 8037295 945573089 113521677 873092061 558370965 533657573 956811139 878220569 977631745 530427578 744289655 439331132 856465556 378156742 226684780 658400440 710199815 141721817 113062912 303919731 208580196 811869153 764172019 618000847 547506040 933609530 633001950 789362874 886483182 746340522 453002124 914627652 610306969 941274508 989865850 333172612 783729045 245319639 547611828 54237495 494932864 20785637 313027368 899891454 49046986 53633794 282038315 89140968 886580469 866311332 826091439 95414731 940619570 436895446 500691622 968453734 434934535 832758924 680126556 876177404 76621075 423477546 685914331 669308523 79216783 440480674 614767752 888150079 368296383 854484784 74616941 72040508 432894925 478405855 880582650 199176585 250755116 442461213 202912908 778478061 71532869 628223862 616305712 508240701 967845149 145998257 141089248 666011860 70042589 890154811 360339078 206512332 616971900 615242371 312211749 714384178 798711601 630966417 457132123 823878528 568978919 872885553 633633705 325767173 39989652 732816149 598310064 389315381 957356659 643335563 216824907 679857894 197777980 923151101 634587560 466828157 300232796 385754311 605747996 169412360 991300136 158604903 232153848 335521807 249023346 272469989 531350006 492407894 830681426 338461327 241839285 953740299 398314263 896999804 50038299 45469037 305489724 778061883 272059344 208526093 820551856 966820443 12389172 901790742 458337193 144378579 129075486 607164908 189991255 128380246 550823859 813257353 896693337 832276002 923183866 288032768 400063166 21640885 629382128 15681917 60900393 957581488 35264717 139575718 524009097 87220752 941695949 50772874 742898223 970504114 366849106 110992746 348609238 27933610 475153936 778849355 117954535 70019868 345980264 613570365 194812617 639327028 944643455 298144504 254492488 90434210 962926867 630545256 252384023 921412932 948754404 35381516 175304617 395069601 470989744 656718725 364769269 159387759 613722110 465230142 298516852 692112941 255601904 279441447 208738307 298675001 335724087 631765578 665033407 686708818 438392456 283205113 5054659 458395493 70499699 176217530 659313989 421147855 110128185 955205046 104317107 208390100 803061248 181235444 583414496 423445147 995836511 450622706 609949139 610596951 766945022 890353840 199894000 556559969 590611727 755644066 899891165 540692591 374489863 266215496 925456528 320989290 663209037 100658305 862078358 536487471 30376154 657800349 373295859 790470164 153835148 392381204 662894412 541049218 609326241 286953115 53029348 404219842 219469514 420689194 484199056 825338660 738634602 137032068 461892129 572436342 824497808 868322458 238452636 759868443 407977450 177617780 943741674 109955705 57720742 866069615 68420774 336614124 712151695 906780540 545835870 33757079 216013694 202028617 892933636 390873902 85303567 348815686 544449359 966611510 331774418 894345852 765343936 846227948 839193289 101134209 851848360 34551619 478179350 603734246 349615215 749960798 615719550 64813889 724692865 299948542 508857578 38619414 114691383 95754343 341382393 827248653 518338697 291817193 542163606 943705011 516778888 54067113 559779693 968987473 570277424 52816380 10777167 380802143 791313914 471598087 668259145 450102096 937651684 395857359 624374683 16028052 798545240 285885080 999649617 486299124 136474727 107386644 902958395 398153164 598812572 83941035 270759901 782585511 503094893 440929728 675378763 916273155 993241122 792219802 953267997 25108279 548815540 394862820 204976449 274199674 315049171 854034136 302706844 364403349 406035431 303660948 370303631 770356457 774883646 431420507 654874372 344559511 162729450 141129514 935606207 50920470 691325198 365417464 503739258 414744143 33400508 508151756 930519181 447244120 629013160 86206310 376192787 249809766 912960328 828094029 769713100 764525317 361939834 443647257 904236275 831894531 303908376 895359309 198495466 918383213 107745191 571386917 214648980 384564212 254334326 820022464 963684116 458948952 797703317 10140180 319880009 550526272 647583566 85384260 253901254 706024775 630475507 980064133 413263283 845281244 83837866 381176291 370527515 956110374 85527558 925008918 560277908 671787141 633519833 626316052 661574315 32665328 654913740 63108564 420506271 633512950 767174189 956942813 651386041 261860046 979864100 149618352 440690470 892877698 793721082 900026030 443747073 796969659 604904884 544706078 563719102 354676805 723231132 556589031 811810789 72749660 806675820 769864292 547958843 679981750 595973549 20072645 817076570 369704368 200931912 222178714 130415891 863471181 882690337 966012614 578979262 261731789 713630026 638514762 541258519 803126088 636786549 495833596 34642018 863374013 575845185 571253490 81912317 476446613 811058203 893119817 796340039 694910828 571283766 73521041 348339130 240617777 240928877 148165187 231994273 980821975 90191122 735054359 566646847 143366237 550923622 551161887 140956581 25314083 55310968 23878172 916005593 691201610 873457947 681560248 409535364 502081513 818101550 815552434 626508497 161471945 522939900 325452859 501806902 623219949 54262939 195392152 516101885 31342745 358375091 750821570 85721719 631237289 792831942 595894009 126729119 4484607 535926096 393150256 911688133 940986061 938523854 92649499 381223598 194048353 377040893 776361464 693470123 128729139 944080096 40878581 496335894 381358804 586425239 519178232 462595124 805196844 496374141 189988768 885117213 876550863 528730668 574819461 30387643 37763907 254858322 630347691 272219238 460500064 674610842 933839542 757641353 576597324 910593883 712530999 103369534 939762561 37979285 196022893 942806664 977393673 576421716 871686084 752625466 620439746 658023155 93057053 46109552 537531820 199395966 153198126 594259005 618828378 799777563 194245859 194330979 616075056 441388110 604060180 51677813 773773806 56298433 640189112 411224731 46162857 400722397 240925743 926467871 724116601 655324236 483743571 702541849 394355072 552512566 596025701 887005340 844339259 88519397 444625548 591702927 4190007 60909645 822239463 513758093 91348676 243314686 741598349 603111272 89506618 300046674 637783601 67492912 342879429 39453856 467297771 124528620 253145661 234557692 657794067 129361969 864512874 146785916 313032118 192684882 176420690 990239413 16222913 998068530 457202433 49289866 277072608 156464543 415609129 313463554 893876828 885226908 804543318 985361276 670221267 534888670 879431526 506827353 199032444 562594788 755204163 319170187 915868164 970151666 375719884 942522837 865201704 271537919 99511494 788017718 399828820 233763682 22633227 399922770 565675109 582685750 977515922 617735268 880213457 940749666 789034089 102180386 979861978 903988942 581249688 440941692 712144588 759876925 109896557 468113456 832815429 186071439 912867793 419285805 432637899 957215218 366952316 508742371 171601846 394882433 372533702 487414335 63741679 292956970 55461909 525526421 340649635 361014810 703560377 352623915 851707931 382316155 481459717 198655340 993707604 637333638 851336567 98612987 957151596 218748724 59802764 793077308 545399800 148818191 986279175 670387985 218477083 438913950 529819300 468023845 189984687 492100360 926494855 719618464 670146267 176960676 488620958 565225693 428134847 204109777 633021911 735576647 503114597 791331340 376921707 877840397 921869126 475849356 107173618 621611468 374082058 698188753 433559989 131065615 625638059 487778948 515443101 718774700 547702468 109192092 674363195 956382132 613635279 760070453 999308320 792007863 89729888 346392653 342690968 404150816 546781234 323321885 53228618 857472860 293216511 237551619 323369961 106117322 394108011 93131576 883932004 457892728 879882921 48589776 169740633 562919105 136363913 769524044 436664036 568488059 51851483 707966670 555649595 831465957 171044717 416666240 217742658 167715119 946292196 654119875 494920936 500649160 309403121 39612340 411560846 926748514 821707213 769698827 190507348 226542468 750620336 744349445 338274039 321868501 509935042 756616828 195871188 193062907 293576985 570492397 912866168 592457472 282917949 659227819 752137007 32233974 74099623 35576340 766149256 975484938 62675037 958478832 377696061 313170186 673249025 616265717 837863306 112711273 646362546 877504412 990430723 681427706 40769137 541118869 959288331 421180398 555016100 496607846 789021874 319489826 769107925 771176795 641973533 566986305 687822816 76233906 656968291 891531450 51623543 924380787 51041067 919615389 113597515 768068326 620132442 227851338 631384881 222654901 242268396 986238454 174392438 336144420 129688899 886786712 126638199 961098122 804882085 303575702 781131062 697518320 645357953 714113785 914601980 973424612 871161179 265452574 186644661 667946619 502516123 481750850 28581697 482429410 511900123 243509151 668000649 170800187 883619760 284779919 659317533 490503808 348685591 324030948 450627629 872528967 126619437 177999131 386041847 268168864 618861519 815084957 176134792 837909871 962879388 967723923 868834119 947234182 738478164 105633989 893923787 273502534 148717502 941590851 766933336 904262092 997072490 78024394 233369674 847716169 220615430 237344360 453919866 104310562 87745508 692539587 876864420 256928818 949123568 932653200 961566938 514602739 268212014 797591439 148502378 190924579 768499258 430684726 279151811 234295465 186242289 797710658 574769445 607319936 855476069 155922223 943176883 511581444 10187602 425366659 799874427 657874188 758536255 110532369 275969922 859135633 490246706 264132865 348313310 712293574 194054097 141859168 502979133 870653635 856723295 476326514 982781266 719754456 824616803 521750980 681186271 782023349 786520484 178320361 530224444 314242231 836479757 480155283 442696336 286346328 542849730 718555717 983960457 667510299 105991239 639746007 449440697 74072860 830526861 560452885 847673574 163408931 666365961 620441299 936166122 240510701 33835323 809510567 300063560 994939092 575220160 149273448 169508472 162571743 899515721 617331678 493146478 949556985 486266626 916347677 712457832 353636171 904573138 480358873 383062551 166750280 776584231 387566259 375950236 733104490 593138322 571208063 853169384 570126679 685596211 507548804 225182122 894075864 783285077 261321699 494441088 899648559 521713415 350416890 753479567 589510873 120856564 998592113 764202300 172702344 120168892 83459909 210055758 356074610 551465335 116907433 302100989 592509184 419257094 992786712 595046495 492290501 322981192 86541081 356821410 313176729 962833387 892238407 412350135 663402936 946508805 700741269 927236727 207483123 576073081 832348086 815949839 465802396 627305336 595010780 705767457 937081666 323264698 343002238 436788159 244037353 691963680 356959235 630127401 718092332 417510943 590024483 121442807 632712814 205219501 200582651 725597012 557237885 394717787 211366839 943438485 657813888 934322532 42102425 614643515 48090042 400848642 745064112 326443348 908940465 712427154 197339804 903257468 495300222 268155092 9950398 745896560 954880623 209380802 798416918 787039295 596628457 888393508 419118875 356102383 576649936 423319918 822222631 903579642 640683326 956612973 992401766 3780581 47340555 524089106 246929466 605473899 549821239 360826839 550776523 482724835 226240481 160146948 237892529 576159244 353920456 465594382 336813416 385660864 884579214 329852051 290392289 995519437 555261109 907253889 552162347 188662424 299163086 384278756 104752699 285092293 380284381 972652118 647924991 508089101 948118149 974128076 568385793 965734935 211583724 944822014 991756522 326128876 662272959 369978407 741192980 146709511 976683577 678137696 96080032 602359586 138964682 192877211 476572540 548417387 953059997 984109773 278170286 798017745 811632209 446008670 796496219 830365177 264532951 211690931 727408325 742095053 259386446 266275277 244563975 477391961 994507556 759748896 503814576 166383405 310143852 176020253 762192233 580059198 157897178 562177575 51539842 441558051 369452268 398544743 38627179 197720401 341766720 472663523 354489228 913597151 57057703 380066912 397775941 487723943 444735509 490974974 375065641 75658046 755810258 781329128 831359130 973509851 577289513 798571945 472582402 58289151 694913462 211965437 447316236 907449753 6150278 753253626 814414586 618499933 900696803 594526711 190325824 145080496 837053949 498211202 496903990 429689687 865787351 512179640 973690182 433885264 270228621 69555965 739587269 169514567 892908395 549871941 93222556 49905014 593370206 856667552 230804616 347516185 382637168 497292036 333258167 581596435 995785650 564933885 608294389 928958918 186861786 972556665 86488078 739066055 708098032 726033094 549370918 182181233 306446856 190395213 31602206 811755758 109636549 814732446 333795866 662278350 629371116 334472392 719025661 111731937 56116138 96786018 659819594 74610538 565429052 983725081 314416549 495902922 448124037 178382747 292926780 887291792 997573739 482066744 676495684 994534473 858016453 805890864 477994788 923054079 408401353 838623851 45311034 37917945 84161041 370009219 772581081 841147357 26790468 506099592 526790847 303631420 510480895 631258552 705040687 905060949 865968721 357219991 403239376 943239308 921747023 632473934 581452227 835632750 597856272 352385240 611675308 309275350 416877576 829437129 555798851 778644800 862734434 319396019 797479314 47911685 202487053 762570418 925517851 949990346 17063175 522180264 149616294 626950529 177468599 757552199 166669196 120868877 195627419 53242133 817337501 318445402 457296863 696363364 464207782 524968766 149077825 454229069 899730678 968541739 873553794 668473245 913216662 641169623 681822875 687450313 275884319 141045081 756955516 952156392 354924463 7103731 148987736 660769751 647622787 153008472 369774707 889521171 29088713 542684406 494406189 8147901 548534820 85266032 76379114 954592404 815060671 71200811 25815610 703301502 506811530 662690084 478163636 445719649 441020798 691324858 42229261 806961557 201584519 659841607 344967350 521676654 941389610 505774926 491631848 175169175 68662608 147145540 420108665 674779888 733315271 47347181 200414473 213017505 21960281 746320942 509962949 49605616 748614702 77802197 804231169 79484431 107250044 809719353 968136989 282077214 592776259 422701008 933890764 320982590 504494044 247506354 169333785 610965827 326645900 977912117 70351035 686992019 169848632 932375212 970325945 606451734 375019409 57083008 59629418 116846841 842049230 382515457 766520790 465430505 824428073 535160133 963085439 130268625 719415849 439775658 693504016 737983388 567334546 346667508 124339640 28355164 940232274 613803144 6648104 693338821 123099323 409134007 881838879 413750355 26678739 114473519 191845597 793027032 665944719 565282953 4761430 42392692 503808114 704203502 380466007 174750134 782501241 879347114 799387592 766254906 189346819 347521384 750190827 35952579 903078103 983981139 64276409 805735044 199075457 773378145 672626773 248504983 976020184 162721210 492805096 883408801 533958276 855086767 185258535 111827507 477724918 141460932 104220339 338113223 175875141 760233955 498060535 506836573 673122817 383411574 79215248 1530086 275952308 634521631 177291773 883611868 681973323 254117657 865394897 18711291 124707724 57430757 833514041 675126735 383722184 504411342 885992926 113407533 273162262 116961926 535165019 613932042 878231907 992740209 738571291 573445944 510704141 409273342 614582266 583758194 133968744 340842000 254405920 253291652 667133397 336306388 250621058 57405984 118725849 130531381 644941628 73895034 4605012 288806574 422880582 418712461 825730095 938730481 678090404 443948985 823765851 741959772 716752852 144023137 704490085 77004538 389541970 866362092 550149157 943310170 958020699 321324270 53901840 254964334 343604460 532013586 359419375 804983759 710671629 30262609 124949913 668491588 747396036 337315154 970586708 399849638 544407371 271683671 518628244 873486169 165255269 225093367 956045640 92773929 551441671 539982056 941600209 509685240 62952423 64553530 743236745 870118037 371873265 924921247 449608104 350227886 735834549 553576980 744114532 411810468 570763529 172187112 683918444 86723455 84073752 523368112 458399095 229699575 864266871 431459729 789884786 551207529 107497122 965352623 363648736 104460688 236634209 143129298 952904463 388175726 562993253 524147531 378355499 538396389 174893026 845640054 704949129 26796444 678014440 169480958 448708677 751598699 130857118 612923540 385594766 771700786 433645476 607208717 592663334 265137027 450768771 122480885 785491678 495672058 708035814 262053084 960016612 692116870 332848550 362407180 684032974 877675028 361364828 415131468 117214267 278115201 547871919 846026534 97776685 858944668 46253844 569472687 789378905 612868923 777822535 673740188 567812564 311829265 491185021 768153203 252528739 222671179 499791182 998568363 734004380 858186801 681791750 796805280 122838870 248943531 340118310 908688732 788571144 649794184 628580651 564134598 818567286 748168655 827148002 234595803 852639968 527225935 881970090 583331003 817300327 90689296 976926373 616633105 426238261 752691834 941642862 184729721 923203799 462814978 388127476 613018574 766700974 613637691 308832641 518157283 218877596 246494081 722392797 858667780 276748198 308537882 398513347 742102317 717772409 112827718 152717338 551020716 458573665 555844621 938722210 740756976 113656529 646928096 909176903 375159179 444384340 386324510 772225376 209137159 527732756 598259692 257049587 712895603 927811678 822052278 652976065 715498619 826238155 432305706 327245825 833345336 402494676 603768794 377306196 991934293 738481673 875692899 834600088 958884548 665193017 217583536 230721169 15570912 196570155 231177015 858841898 148581275 63160258 428802544 247457321 387539182 410381696 309731919 416315576 88961665 303437212 395360756 636652690 246619553 86219725 691268369 294949199 376479740 506757916 604614458 32956884 529408939 506760400 197357076 110243379 513079931 642052247 91907947 674926900 992678148 262336888 81408676 168026803 641302605 242030542 695316125 312401341 396371587 773274602 503416945 803157657 236460047 565832219 859726492 874000459 822302327 471288677 591896552 685688714 936161639 855301133 276836506 560343650 921534250 912889884 296903193 354387799 311896424 343835644 256897211 233268265 554587946 152831354 390519460 871533094 766866200 493613031 89871516 525241804 547690446 642988653 537787244 174785716 215702952 774273042 789397946 657527928 557387229 208305111 466443205 469840433 336920981 506450628 912535352 540066127 973213901 941888715 436518942 625426702 879182465 308836157 105409642 704158539 168055392 413095934 985557467 659159285 839864839 667779314 269219099 202650325 672912785 820371032 964169044 115148155 468210968 138924641 681949231 748549922 662599011 514793809 464587887 650156564 209304006 968355279 353298746 990677492 196667771 136919008 504111539 353517187 564558922 544143770 361507643 718031243 580839964 546345295 216811534 427364649 596432193 124886419 552539081 966587157 636748326 721893685 995746260 103602478 568607468 645963895 513863321 279873478 597164107 240339301 360366960 214937627 555434197 181358428 456240904 923798519 301622887 259778479 487828304 740706464 118034684 300748040 671262599 561345962 637783013 898163998 395546801 933920687 968132694 950523172 808721759 559755039 934081269 171401592 368291687 997866464 666276526 542359896 906837161 328116723 429023955 631319672 817061568 35565789 664752148 931616659 870662503 788743875 863607818 554184419 848657007 295237716 426115900 65009034 89206157 204598174 52017140 652478080 972797438 800238299 159219248 801992663 246646546 231039481 642528646 95875843 697929479 347773801 48831674 323748099 121862929 284735191 985803570 869215068 345219213 440436781 181726014 506877496 437245795 128861224 247355401 674951137 981738274 318414954 296921209 905374885 403772111 717076263 134083339 859207369 380176405 54890150 477436322 456731972 135614528 543058316 901242418 577966354 552510078 688438638 976729706 694319294 693785595 520338429 771607823 869301174 677368470 503083636 683892306 288884048 115947412 296324221 352813379 315141933 923073834 150710678 137900794 870080218 160494869 608548129 107393965 567371707 50010708 912216723 855726243 167169887 304415025 213408691 658031451 692938084 358852512 638098248 712718642 887624815 370678908 409973243 227268866 478458810 248164766 704429189 703680120 801924211 160767342 195272104 66921593 987567932 128623188 995005648 269478292 781192563 912470842 366153432 588159251 534839856 784917176 165072436 299726342 298212133 570528423 321777479 391325750 940590228 96283894 186644403 578118943 747986333 548768128 55575672 500419937 378171842 278834608 377542269 413834201 878389630 33439032 477340892 198694881 702804491 386211426 368129473 633241560 66677000 111181281 180169683 673824287 490894547 427540422 788998675 927124258 594798385 913547070 210054387 25665941 646431415 640823690 325779670 144329168 909980333 928064628 924855683 865034220 537643642 364763382 73208587 500654415 507661411 23879654 71414299 662826352 692554578 732058623 410246502 975468482 477519419 482484904 188222928 296342299 293896813 758287037 467162075 770517108 971818343 628989686 340972713 712562292 84793807 938354030 647582095 880726790 437369719 75900599 256873466 189672999 165410528 733366791 199724470 805539978 20677887 94336125 247362993 661170858 83430113 866403523 748265575 901238687 992826255 215776934 777530585 267308156 7579498 180930803 293770394 816952780 546251001 423909788 813687868 905824463 716473116 537651380 298563863 728321012 499800341 777678806 741077270 884887672 604369622 795505956 274718297 767250351 978284928 514008261 412757165 653382207 647876475 37498497 92839139 859472719 207136600 42437426 416801359 75503691 68079027 609937757 545190711 329941590 813404674 355768734 86522121 84292074 49442510 113808706 60589523 985111582 410666261 991503355 128553716 190441651 85353756 50616102 110068301 524652226 46844328 445011216 337213589 328513720 541764238 40692514 481963463 222844640 943652354 903776685 571013571 419012677 768049523 239431173 605851382 818535144 216472718 741887549 889436884 270003327 156204160 147336282 663420945 756417694 710909609 263588190 491726947 413687739 105201030 693541970 134954762 770234659 419911088 632341407 747178356 424197404 833082692 934245563 633924143 18776912 926900332 134241932 835463871 438364986 598182756 238404740 960616087 823241118 319981512 180689705 162490684 838863669 398269365 227074193 51235659 158243386 986041024 187039565 26837813 423170434 21756505 310243855 404643398 630546794 437420499 868453648 278444815 495938543 378606854 865463584 615663688 296234866 800709594 473867945 976423037 780070124 44816862 106685262 454816709 104853561 586421062 478346725 796435752 999093993 571838904 948886939 295055472 8173731 151579683 656119995 606321169 267170486 574216007 913727389 717207872 689086538 434723109 992728363 677959283 83822051 305573668 930913544 826805505 131317802 258491169 995005872 325553902 330325339 255496077 170166493 389008805 677695864 140899995 609268716 525617430 774987035 24643053 510557440 175924680 883654303 196596537 201326056 921231916 771958420 527402241 730458508 810907118 633969861 229394384 626521558 820304104 761557513 997067197 713198765 839377171 85815547 498584626 517120593 363079950 399514492 107931670 230692631 461135441 352661114 495766020 12362938 919278750 369805042 411420893 861784439 434105903 271597154 381196216 170832953 834987112 559653640 590760433 21467731 206812040 998706650 192744640 558280268 83645266 617709270 825252220 790714016 684698588 355030756 930384350 301584802 50209378 413079049 290792506 725166946 698757809 564378102 658624780 968805599 761314917 580751402 661806990 43900343 820536221 31357846 915293555 160156827 729632868 995444653 448608550 429356757 403149690 342601799 887282438 471469631 685825394 651844555 621713636 939947302 621471832 125760174 621029302 295151509 566855987 307826814 516546452 217747742 91434021 156396294 42958928 578863296 58047268 778639458 523582344 246907291 766261429 739156877 329424287 175300834 498911947 780595215 575391605 7267216 641684306 184161690 875793150 207886814 472211625 160209218 343250483 557365496 939953354 434042796 317345504 687767389 631226690 892353506 341018377 427728295 504497769 363237461 165206775 268140677 560213965 339866624 204243036 526191964 406127749 430403322 100147660 698048867 853060534 815837069 907769332 430691184 880449884 185230848 916001267 140936048 814485188 987077752 854900617 425146194 469681172 104658555 295058867 748446090 626878473 326402094 332785558 588176294 888439454 862935532 12953128 583020567 586439171 380929613 477189174 303066919 357362160 28406568 304218906 138287536 397014833 83037338 975803335 596847612 580161123 95728212 21891248 613251173 318486358 38231557 908088957 943860526 795549969 470018339 688521033 617728929 539796249 933308039 735565567 917476281 14593993 421953014 701703652 632327638 98807851 344219080 617867588 43255918 526583023 127239530 90676033 983161091 559757380 566729150 648867124 375901809 602054591 259812439 635477482 784986203 578839618 368849905 354984568 373246898 234902914 199281284 493694117 854960773 154731011 645635199 813593908 374085356 640649847 762463676 322123706 991133233 900170561 942063507 606360873 320802589 92763908 860117836 537102729 765564332 683645702 655943298 479907247 816946731 301425268 556193766 222316536 40339358 147549978 947926785 864143389 884587271 837315069 63257542 536102735 708927430 157659420 671387548 764794176 380513655 593275361 395803551 936828946 293875291 919720083 21420335 969135387 735235867 175092013 923581645 892311123 450210410 994040544 653980805 75442888 441865662 488026028 845090375 97874038 750141813 516811335 641258817 734523997 481614415 750245244 47598399 462758728 470185974 283193081 230936310 947693413 643578244 599994033 42932131 911664572 845345486 557325288 359445559 73467036 610591345 208628676 556743718 432235283 251750107 678893415 533151827 10057075 378398273 439044905 750468350 346334167 801083124 646707093 135209553 262539845 450625935 239706449 990739453 325124238 148419776 256603675 753180783 690303892 576299312 460907454 91225000 486290026 539268842 572118481 894056382 722598865 486048859 828291512 121040057 44452045 305020568 978695438 240170812 918853220 77487375 376163796 878514048 503204440 903254011 413160484 465717349 760253901 702681770 995339579 957569999 573571057 647408738 671362528 634239822 605432673 696550675 105035679 585547278 240883312 402626892 452563268 50658121 490297398 575257241 443024637 285581606 797035597 533079504 232706990 935344199 735056032 982884159 453259579 634637642 359561567 234113044 303254508 143496753 96497114 604993416 520555303 676157889 749838901 364378073 496634989 68937249 949989337 934795308 494217663 894306198 195807915 840223243 419867087 408375916 602893990 941589786 136391226 745526567 611836050 57064224 415598042 717101547 511197050 648368264 583193440 28251891 654681379 799244087 949177155 959110092 195929656 624710258 701785180 790565834 247014949 873785152 226146222 378326309 18672197 706591639 921135153 786900641 235738866 363890940 973867391 879819372 266041881 13662939 111737608 36837448 704611824 670795476 571918903 59556509 64488577 187966203 8676859 994938927 164309834 359355664 240629724 976085236 107863687 746496599 360339728 137302942 3678068 919599938 913909950 981973219 565916730 984663314 583285987 302538199 522378566 321554902 175202488 786946541 501872964 25807603 767109897 606930215 267030835 636364649 558499878 476715846 938345614 978734624 769541081 637957624 586877234 690189912 204148001 89198885 887436561 804002311 61541246 904333931 481956422 809704365 168974945 456307744 310880692 944167200 410340678 123147014 4701983 305483633 104690646 555822194 215229257 816156419 56198978 3705167 714146851 99403042 419241760 177800470 392326756 99308667 407532861 888186838 687182413 93828443 979654625 654872894 230283214 844344380 889974698 557257015 474919019 961291799 265842041 280117921 69908113 54868352 650670479 198172993 469266807 768175448 574673952 626861 159495959 237314406 808388281 704567650 985394423 236058779 92866376 430631078 354318573 848194023 276241117 315696628 326422065 463576549 591439096 141408649 792185039 33579372 619778146 111592366 141861719 458381084 138343054 549338138 38334962 471078591 892949360 983948695 63292950 902772391 880029317 697778312 189069369 671171985 852338511 800835127 603487302 913981360 678133083 183962797 724246260 379765262 572864188 417786337 563008893 443230097 739470522 560588071 553918523 891941068 252066376 332985839 30438572 692456604 927991316 618293352 888654884 902968077 628569504 175955216 131564849 990463950 141664289 133306032 763080257 976374333 591556268 54803730 965996548 286870891 455859209 243650287 954947965 112523968 290842496 133818413 181194440 189979737 53433858 778093336 276890121 213650977 458508226 572569948 909469898 684915050 299310159 574889296 251092121 346571212 268992907 721609278 537027156 841454749 568323948 537540464 408094454 517586828 822389681 465505847 811733746 726862774 942217461 550346932 999955397 578883165 560661844 740846296 41171531 879983694 175505925 272969221 470953765 111201245 193340308 937688091 304384814 36785568 569990548 450877650 344497402 911598324 24298423 674029929 501414666 171713176 357684648 86846173 492021716 850742737 425778781 938597382 769324693 248871102 779953264 143352670 155077442 900780079 562065200 485794839 89886122 94018606 222495232 969835296 444951629 96506208 591578560 517725168 590223251 586487477 101717951 817599164 828168399 224217159 352998742 331513355 97214933 94382637 454616597 714603924 697814232 478784563 230780963 153813527 157213292 260087700 331783901 684212624 208354491 141339655 724138263 356603002 110803508 195745085 212649189 269340540 632725597 359646944 992589708 130647427 633718171 661535125 316329319 571323763 50372444 870506291 220193904 78138802 719752180 504126572 661811374 969003451 723847292 567768769 496428020 173006156 774320798 456708613 669823324 821571822 966416333 208249363 532051084 64979020 215044226 792905207 468021320 441622152 705334542 423655190 936897906 650452872 509227199 769883827 151753763 225334839 296207651 958570443 330153139 169578908 273085301 416164744 860414095 777930891 925629752 518406588 140559894 963859876 337840612 285240964 643917175 770874668 543115443 11313458 821584401 391365189 468230140 975720229 111756167 861509783 292769104 948195684 838760610 277055743 55896384 577456304 196841824 961915263 90431476 289649327 870436777 332378246 760648790 470368661 467022127 408488076 441649881 813494076 258814843 104210514 237684202 352507744 533735455 647166181 486378978 856694350 178929767 231627983 197632756 667222871 882226817 254556620 195705394 854718460 699198460 797537466 312699417 741455206 343330049 188388965 557452561 390762269 524547502 244308498 990276885 371916930 814525900 366599707 322551732 673992369 424081947 124287556 153932267 732647827 187035616 623594269 807355871 859022247 50765244 863698824 220431779 413604292 498319354 620473646 993414442 706972559 151720782 355135682 761236148 62249003 264676311 452241681 348290087 163406076 687574209 600202065 927719175 881668920 20243531 334110906 251936795 786657103 78029743 652114126 872492384 935666740 101769395 124906730 382627467 139348543 78180279 254857536 106714883 841165684 111550112 643103698 658924706 492339836 597264829 655756655 17508666 11698462 428362120 956072427 13077387 807917046 553310063 32594328 143514873 755992688 336723507 526026582 213976954 946062005 510815917 569019472 545910031 241527886 379582262 274746959 496917164 435534159 743708653 478847701 136283195 888823378 870073794 471313229 577014099 97814168 286962609 307535618 378286251 11999989 275834741 71247344 825367063 988908403 792490886 969493367 623585125 229875457 854552609 496616003 785698963 448351172 609383737 140543676 395550351 782781939 637451358 838176602 283415364 497788297 139630369 425944448 68758258 494491470 677171555 676620663 570064849 169582461 882005793 906698821 649203541 327185308 853348924 724277538 963795709 322632582 526371391 926654099 399792901 122385761 910478990 647357808 420736654 799691509 899169275 426007235 510719306 79988740 606659571 924017639 742400155 575707203 248233646 350849838 583686481 699037516 643146252 378626547 349722811 896921491 603665552 749921102 908394050 17171136 893111765 360927248 138688 736954277 776215428 624206238 796907899 62475233 590583893 617268207 327208343 829691919 877996645 850395594 41270653 568229136 614479264 782035603 545127956 638306668 766544088 71942514 996806392 882450786 689437201 773467130 584705267 987032323 882798221 960269813 951318531 713623758 90783822 202158970 576268833 16348345 532227562 832867037 576362789 883899981 322711894 156602401 210186779 345841546 298151644 43970276 77654319 568061580 588238549 353801333 364987618 692440383 544016944 597064581 965663761 841620725 776982737 38824700 37363208 72045113 609655388 788786531 369945084 465945420 693578051 359364086 787902158 838057353 705642811 485044950 318160901 854734725 193510473 813264907 663547090 899456008 201595041 492112069 418572265 361591138 382270958 285951442 523819189 793087265 236800380 720574427 624668621 530167685 452194959 187482297 232975587 492212757 944489486 650778874 466531653 416667446 317523910 512107614 361990521 336718609 943264369 896467171 694363786 756187409 632930015 424519871 219567447 658785763 920502720 395204713 481095924 594392659 757760764 58743460 249730297 203228178 149276390 496506270 673770423 937535272 881912006 182718771 264742611 870047642 585112197 446268664 841579695 755885797 621561089 207983133 49963688 502562408 53305584 965876262 659649388 759216922 208276299 125489004 100209928 424260456 428660034 984274777 485437432 120066097 321392743 156078143 757355748 609318366 810914330 23927147 593513875 487710849 883893905 366806277 60229402 208660555 954079215 943541530 345298036 388981905 976970976 189129687 141872178 245560748 344446750 74872925 238933197 75417797 813606651 291124945 492028949 230312679 454193122 39481849 727124952 978769920 962022584 530930341 328616614 729768463 133305585 202164806 658132057 59104107 707795275 648490907 986702215 277402124 486530854 145121628 690794781 851911674 184156177 265393838 512741742 149696250 48795070 298858062 501640935 248912828 102452222 49882420 363873823 546663711 520056688 879567731 631836380 547433269 191404748 53666808 515962299 93755993 318920411 478127474 273841120 354407126 709060624 505211708 329432286 422821959 619831524 51457369 883776342 21770803 838809773 833371118 161312168 9790344 594847396 435466913 749780052 624166344 984562769 683207746 962591435 917862456 803280035 648191021 697207700 542076990 261422090 9203258 239159403 245552320 230919779 156172986 35198060 323372866 258055360 642270473 367769450 748672288 467169985 367121574 48342755 7617654 308413783 888523946 262226979 671148992 551325141 3520687 507928396 873716482 995978774 672311729 560438095 57350297 320002182 770515112 875100035 160101961 442094759 191830107 354549986 800213289 987898333 400854186 778939112 663943159 232617482 563839737 263972585 315630053 679694348 562991977 889909783 569910785 390517785 441470255 387737902 609190436 157806581 370857234 122959891 406423674 760398863 579769104 508105429 888757982 994407681 486357307 766902562 647136926 546536106 795277806 974410354 281455094 698507064 821326279 431793634 171122178 862734862 730429778 237185713 939201564 799660946 327147062 147128356 329057453 321507292 652969909 620382416 357006099 420109205 396763740 686569712 787880849 783559067 292286129 416676676 658864944 173387767 542475677 523634190 772536630 435247975 935778432 993917341 895120855 52478027 357112194 867783855 862709919 162257146 963438095 828501766 482129513 364774474 552872481 615883690 614383735 60770524 958602077 848097507 596331799 33535686 61785 813283963 822959478 339855813 504535275 166724817 378956965 835189743 179383463 38407051 100132797 319147870 568997184 607440340 257439882 644255428 697734432 300466300 878431487 696493591 684696979 848148598 278803651 16312289 646116379 303521536 214635453 834230959 695494043 526089703 936056588 727133428 861004381 231652661 395846250 664975167 608291737 794579953 92049811 68323739 937055418 80772089 125804846 799487461 460185484 951233705 454210967 134592709 441137072 544837249 332174024 82317251 435641225 624883360 921651388 533240043 871314196 757619719 947152291 574755781 24603513 210001804 246345865 369428844 450855946 233680506 786817363 870464971 296983742 494336097 61160431 219727774 726753974 908194479 911195402 554366107 633147926 311580777 414968432 939945502 740680787 140112817 654871636 935180912 500791300 899128805 292239437 917474623 805919878 644031221 592828311 314295214 697194028 470197022 260745924 705412018 443976611 621551698 982250016 835360885 946699266 160753278 668159822 197102317 934626205 724985829 349221534 391448638 519759858 108726817 717463827 139249538 928758796 403293134 570354994 403397844 386089362 298077233 587844043 793861896 23462632 763022155 419937655 238319976 486700510 282763377 947962276 940829677 283140510 543650560 806543719 244130240 878497334 383180973 955755855 446293627 878789552 254713275 378429747 767908476 769065415 867970074 820649032 877291644 984630645 987913382 895526303 93685853 71994245 537461188 341068289 494497519 393332416 404242301 586332152 283657564 412804892 364863146 107618801 204762197 982500498 657336572 941863819 456246177 665880767 484153008 104672402 952616655 986388802 128288086 928493761 263920160 807863441 14429572 87931683 120001543 337493982 781644708 787767831 662695933 76850645 346117132 857886951 193817065 740056986 463300349 91138645 396913775 910622117 927995946 475048164 287694092 513608051 637079831 692628401 470060781 475351745 301545908 894651898 747103710 138827507 860468423 622431107 239072019 828249258 117105539 432446423 102764424 636142901 10570930 253641192 926735305 632285290 402621119 644705210 676272072 531158693 908122414 19658945 569161111 248647802 188152733 203873757 853853736 678192353 48815004 243751591 678885881 11385500 576845648 206191720 135193890 289124351 551640415 823303559 857009205 725648709 201986484 745586977 792198580 847910242 361457099 801090360 449860319 714727216 962329980 767970386 955838054 31039155 234189263 602724548 166352567 200356263 18667519 433546970 372373115 620274588 588471749 252260487 132501804 124201235 45154976 525077681 278777269 659473889 306672851 538951403 707019828 199434102 46445843 157747424 403731162 794450154 213235737 678921357 323463776 181793749 96289574 31780970 410401998 431149065 718441917 888122045 167370191 530123516 999260722 403475054 495979226 35177942 401074108 398199378 575189058 693136193 365928713 782725035 789008733 393736418 315187553 951870466 190549967 961904949 622578416 465592012 724607314 200406427 350829141 655725817 137069646 192239734 256546846 393672840 142119534 265161187 699529966 835391457 572310569 368383508 287093147 127602984 744604310 156371682 976512701 211031415 997304989 937936806 772546661 161291344 624298681 418991757 90530409 854958941 521043402 73676536 556184598 665426477 490493847 214170828 922060141 705147156 148854918 689104827 718058306 599131137 662889153 290470189 494228636 86746412 48901910 786513393 974001382 767273947 391199743 492757633 19409081 953329789 481441867 575869289 496207875 159647872 872684576 970613905 87914743 828634096 910503790 463553520 923784260 256112769 529187158 378445236 6270983 566949535 51276599 681793411 839148567 163924547 895531175 915642272 660426559 966827355 10091372 653158567 387684952 541461477 309199091 726462654 998829097 966428620 36059848 466421034 391518262 624827672 216919195 568590479 849370227 84862578 429623037 980597857 10921593 397692161 542061123 64268143 189631552 188991736 521457656 680238121 860851765 267411691 366501404 711692683 781792131 869659824 863135212 894977222 203013094 826593621 523663493 457027912 529345890 22994758 66711918 454944182 403676092 62173893 116567704 393176641 298423215 677874429 302584287 691681184 183547259 573023963 687914628 652895264 755499187 220561097 849242028 469104509 516125300 644040711 480246656 506142496 740383273 416487139 734961860 182822731 556090731 814995999 767612319 616701090 629199969 360818821 241369651 627056133 856359291 502331872 575772063 168571853 363563710 888584491 968763413 678057631 965031069 328949014 428535623 646034408 483505420 876873539 85871398 501126131 599957927 138443977 425134356 649337021 671550618 267928885 639118371 944342891 397397794 217263408 210048263 478001496 325865606 351282370 292542408 826394584 235582663 677874342 463139026 235790655 586275086 214271268 438606083 794364748 37345067 897950085 196796019 283143493 863743481 145515978 494073224 194701130 719276847 341891131 993032248 773412300 578784747 424968286 985365792 377754389 928529288 48208108 359319904 180656364 12486180 12172469 778336183 628250704 737588858 721643329 666098916 971263926 268947416 414517631 985751971 911798069 800973816 985682026 974267271 812267117 958932134 80045624 931392471 792085118 113457840 565043020 940639728 52744031 854109367 517470276 400620441 265823816 497318718 478204978 921543670 513296963 924381168 402248124 192836414 908938850 446743096 686566647 992006744 161670548 298160699 609970619 929555437 914571949 729539076 856899244 496022078 68583895 248879172 878096853 115292330 316443529 210871523 322312914 766552421 614081878 988221518 53211159 94966751 319940797 715980749 310287413 508209718 149074677 388459749 868586502 189176836 545195814 349413787 987516728 884169155 309755106 351547771 961788645 257880273 165709551 417453070 53222434 377412499 829663710 970526617 33433455 116377261 849711566 532905950 605719900 601783836 196941664 651708875 53033832 279824305 341507280 568382415 84838491 766060102 926805328 455824594 523650142 508357852 168422958 291681190 45861172 540027276 781054731 96529153 17962070 223660313 795185809 706626846 576513770 593684851 410865638 672187230 19709421 809368975 903040238 236354163 435634892 390032987 812545753 865365519 162382213 508441937 128471186 714079072 893095975 973111753 466115040 722500344 391938101 189267500 526396258 400484769 411878779 463828825 395185410 698202729 13184394 725699386 37111660 277748161 472632799 972125165 657959367 929690719 412197496 502883085 34270090 244611958 974561141 111013703 660599030 373748765 750088055 397887108 982033147 244806580 272992511 668320652 681779416 181292510 627809071 993845496 763121929 550976418 733580304 413903978 713795754 388911997 232363035 594540065 505490397 490234826 795663743 976224910 295143680 816721135 96226502 609965839 454506433 909772483 907569751 781350610 687702874 734449524 499007954 495339887 812186063 86701150 661829712 315096350 745559276 494689308 649885136 600799282 959148528 783176574 695089492 786272240 507277920 839045832 669821789 881415675 451711410 41876036 607519893 77835422 426324385 21214239 597146665 142736568 501386971 181431878 803279941 854601167 73892784 776568913 496350789 568756640 236659752 501564407 911768662 948172478 408362897 676678625 627310424 120820461 743800882 303425340 861825307 325105348 708731015 979475388 909183162 560772760 723313573 481268399 222961300 686371558 34878494 22259081 678729741 892128658 396115569 825982352 333245882 468737400 849739267 683768525 774119193 886924938 192708276 296967762 276529794 395115949 95184700 201178103 99234225 637919632 106357614 993909258 168393610 224867345 474725114 666091944 191698556 807311006 65055598 171220404 108964182 932015853 697390060 589990860 401510704 580117907 391913648 928523511 224580567 377434412 545837038 103402475 600168400 42519678 315187854 119961315 721045428 942027871 56159953 504671027 821931391 827891209 19916486 906611781 906160464 543089365 219389461 143845784 939659340 226009796 551358347 611270409 240859683 900660914 887488080 963455725 559713478 698832641 839202092 780221654 150461358 742153798 18740391 610039068 625320984 422036609 268530540 733656798 516128321 469068022 57294843 964752298 364144465 833332937 898730104 227097893 829483556 198720805 932973474 6594807 608372266 493659161 37335811 12026946 585216623 438213232 441939275 536837113 949446082 749394242 759745103 340010609 580281117 403272865 471924700 21306504 520742381 237085626 900802203 810857952 474525551 565623066 641513668 214233643 338902643 694913476 741357695 262631231 118640101 297675056 876149674 351617015 88435096 488704487 267571906 580528488 417860041 669514965 10887717 760196811 65530470 154821416 977029359 668675713 878380203 831325564 14686480 904945628 135963755 802524903 770210706 349959803 251297430 864265949 813013043 45451235 294127359 312644186 118466764 41024013 853648018 626381417 245099209 279274676 334528732 858386614 867673858 911122470 558816644 170107275 201891670 725540756 246973854 607689003 690969985 210328289 784893757 544766379 249492093 384144825 378877307 38908784 430370533 690150071 942807821 200133453 61388395 849297922 905046576 153460670 664110314 380863206 392798901 281680398 701463535 496615765 746454759 884627912 502540979 655181922 437702878 420212589 10206741 555165545 548803416 647844825 842391539 262927342 951741006 138744887 608423418 208825489 648731878 872775617 789415707 39660021 148508009 882351642 329038033 856713417 861392796 293031701 53733594 997256465 644795192 69964060 477755629 442838224 856937621 20090889 657175670 404531526 231804404 224661661 363125423 544516257 383485437 116996218 300418618 720677669 437948035 178184947 476855669 887942253 18469973 3202390 173806720 196614568 943907312 315599462 410279298 184810236 218839495 362018526 188052649 518640241 97355518 622350776 980554371 918121242 624939041 783118962 427602377 120612839 381030174 872572673 404013001 401348366 65070585 523698054 783960777 376964005 943328379 52164122 269062008 651151065 952530025 760162996 547833552 31415947 78077811 475754629 641835076 997545303 531177707 651970384 975521949 695948288 885059288 737722039 82732758 129490729 971737105 886444501 564890187 786802735 392570857 582151216 161527514 365963033 930794916 729333625 650710126 958073035 159669540 894767707 626490450 838424510 334608145 807544344 310178623 608079934 270644705 295852654 458626019 860276090 721678897 297013629 726091 107191509 445075854 634811072 156348086 774347727 376515455 962377739 30614406 476196698 300099862 881698698 396329891 96058270 332959076 220865788 507809363 850471430 176583836 251944149 966982892 546558226 423216785 84372453 791933379 146297513 37893648 374599843 139615931 891801746 293776997 763389806 626006699 486803643 429113097 134092910 403135523 353976092 732211479 989679081 273592689 816328786 32451069 394417281 115707408 420730180 316266347 189788000 500744741 883826101 81260019 817912959 332835141 843131861 28717583 905119461 487137919 552921140 204095161 254497569 859230338 960510491 845606815 587148352 496224985 744016808 326210167 732404446 808313964 279140210 319171993 172795958 633347889 718717513 63541693 233826215 706160561 362598929 358598139 761489722 434635884 91819942 644307231 261521096 463798543 481453185 691069217 509059917 532252596 614966329 592481739 517471518 805007058 548696558 52729125 479182498 157947144 62371286 427498485 202244778 850029541 831549831 255192310 969703068 712322894 211542780 150062617 892163819 597895634 355662686 386854710 124383451 290631675 287836046 293519630 109876443 709574224 554820115 999010484 442163820 689852544 786502376 617574217 355778935 640054997 753765841 625146909 778984660 667290902 785930809 126026181 61016487 983868332 861542025 557714968 757360097 11008878 317098564 108758111 860888689 765774593 133768469 516179043 914265431 629881735 932482865 393344729 717463543 678362763 625600141 352052642 329561751 157652349 737774521 670292406 250622160 889718065 478370628 785231047 508398840 299044495 711295565 392139137 639196765 196180134 974822724 117832702 165069163 40160718 593472341 768474902 304855246 417619476 210569582 621593197 448816506 848465989 313545775 355432124 225055682 930031926 814662446 55127451 633034032 254952653 695206555 762854591 371468051 362447408 423002830 504315287 798883525 659292316 58883653 903386575 466627870 975991885 951955785 449033166 165931761 87692234 980427480 559051160 227073952 90593073 852771481 9317962 679935362 493175805 498223430 610726101 47149682 816508861 33177907 647999939 659861573 660172845 804306693 108395791 40417177 599872958 385394936 395819272 927128928 366554021 363750151 540436817 256197440 677796778 368304131 711453532 920668382 478899018 624962844 718053628 501409324 710045254 865332919 414002249 966129923 365992775 34526752 146663459 499612213 833439286 583104534 968184472 256829604 843260444 838267480 133218384 887329007 96566027 939677377 854052871 985500464 539458393 965704560 73787239 436306328 130628455 286491580 214505368 135615612 878231537 198133691 416609756 213600418 430359577 37795544 539613415 181503247 78719837 670877766 830670281 925656288 37882973 271160875 887650557 99553979 199145087 548678105 840180514 63651868 615358197 298159158 686121599 962823235 568448500 411445251 218227516 876579157 708834724 940757074 318392183 247583579 661943101 237716819 625277562 619493600 479821362 625322909 214683996 700831021 800943626 955939386 365006512 711454319 834396976 537313861 565711770 833785134 482693759 768329889 654482683 809697129 308688728 91147149 659019263 897760490 923195415 348604784 282389403 348646058 56086904 869436617 253250383 509326179 631558026 466638868 251148889 154935576 392998266 676971498 825223044 532280851 824748461 240791887 817134890 501820190 537583018 170645728 501797533 868460716 353462704 443756244 341549039 691463294 729884235 93325395 176419402 503029173 59919863 796104117 401922704 108966089 545730746 528622815 450560094 291686763 813360507 856388816 578527019 954963739 285314699 288322327 787905673 743538002 147202034 357735230 829039856 677094004 35010269 845403526 720702560 605584122 84635295 321957748 278877923 549702558 885805118 418837849 648853307 856643049 196197104 188368434 674223781 719939903 801288698 904818707 109622637 705226701 591892783 370418069 446318284 578071925 552995934 308759752 342134094 452322091 292033966 70958300 19690423 229487010 481238771 533702512 701636964 160229493 582254799 176627043 70098509 973722252 571349046 694055130 664463462 294059591 216802536 733285911 362138760 169198316 107451477 426586611 397349463 32329995 405513702 654326503 743163638 939150643 757721443 204993915 538012631 251576826 326998470 443791318 903892483 195963142 170436149 512478451 748494460 440986583 670811364 457152116 209587173 655401961 855877799 396735171 45431800 577970875 178485370 740636855 261506795 953179041 167455970 60392278 39272687 749965009 483184170 85234764 265444116 293784489 158778538 743687488 90950654 741743111 605225077 206714043 708987904 165553919 209105028 697268313 490758924 148386217 21867652 693962901 466939865 883401143 800500307 480152314 45139696 409727291 957728003 307274990 189188634 604889715 226776342 247093675 714838540 405813997 532355007 526933950 525126377 125653423 633298867 372639652 371174261 324605734 323854360 996895467 852855983 734407221 150242480 113397087 992810222 587536765 545507598 480588001 855738260 185828817 328231939 402951271 590276063 769287403 207740846 138820992 554719597 304484346 253127947 70315269 278171995 991958488 514986348 412784569 542866513 781728634 586529686 812144202 580853902 386238490 665402040 433205275 686922843 160296358 316811476 676980196 782323518 993831407 246328968 591988308 22122674 752763046 20901709 975088561 25746895 174614879 645913294 874081730 561105992 403364862 11732583 881530521 242483699 455835153 944374278 244399896 523687611 682572602 96873016 116136398 18149349 33995998 726665613 50930786 589958655 463443961 199074996 316114345 97535321 517203437 659308191 499098421 715800011 60407123 853726797 423518059 137315076 786846796 741065595 851726010 155205115 242819194 43337365 595786815 515468918 793937599 123757157 102317589 662391660 873901208 914991040 778438872 963383107 566121828 172628350 693125705 709305301 437969591 674665415 807194718 703811422 323123471 652270375 273951952 199251497 945527234 844380774 300006443 736448082 874160883 955104252 681571155 188941574 236796219 876592674 424672084 318534205 576831828 241692036 283844425 935450587 581969697 370909666 837280094 682023553 207146748 782046567 647606904 315687182 455044080 594685270 431249956 913639929 710645495 288963027 204677499 707169744 718765109 763398986 297880617 304228527 243262786 372354876 956665101 438986196 314923849 888374845 923641913 62290481 765542032 786609813 299091850 320271993 584510825 236742020 133444229 617819238 360799010 125473798 282606966 520157499 216826648 76717568 189260220 281728212 975482988 144509579 799389345 716199960 811363281 380993058 750379612 671534165 63486320 565856012 797552325 916621977 748512953 272628038 938275748 255553208 43418129 787624404 135824513 823240165 961873681 373139059 29223335 920908629 920993061 746583156 591904996 978424932 368806802 758602990 841815515 668498040 308222295 748310216 610956542 841816739 192567937 77998369 643024144 133324196 755612258 834537923 480622937 953447153 714584984 259830103 356800020 10604360 947064302 741428123 586755699 551819790 903610293 812332997 693537329 304399765 31007766 100282650 608403376 867314896 903632016 427769774 844818693 663975329 143892076 897279916 88667638 662026447 52865115 945037794 792183208 291853980 325068034 502527363 564446996 636322291 748448169 812102314 639665240 702145662 492320063 417696833 379159089 594907077 735757669 547552171 533747015 199427724 744710031 848360928 944557651 181034723 299102962 473767735 582082271 534309531 4901807 222036809 976414032 704176001 135838917 931793900 410983895 818013893 954578857 443293855 710990115 826417096 288611875 278127676 422058126 867254387 314296413 598219377 135289834 235810543 487916281 33405586 155306745 448282166 836378809 305031831 91906251 314483099 68487838 970484205 340302235 402061912 55833970 627608692 315729112 231058865 649509164 436600779 660046002 185556697 329456233 465433611 723613275 62619770 149634016 800906168 113939048 845136005 256378357 258009333 520479690 91093614 869389230 261159396 952044615 296340074 783878266 397007431 491695292 706980514 171124251 458807154 664002063 471704121 831043982 361628056 104984994 188739549 113255743 732096340 931502046 401879350 211410770 200583008 499537633 287209115 127345365 218542406 859828893 498152973 758745904 370357926 878432263 964589308 603530616 900691162 910420524 459202413 412640826 733522496 748086567 172558122 860469755 366808643 411632546 981238426 799027320 827726642 616226628 567308084 46250503 302605170 505563050 273580561 540849954 703787705 75722347 823069499 216157794 812169029 187794544 949380080 888553537 607745025 511178855 940192596 100504538 228030103 737415495 761492168 992878980 53242408 669270560 813664388 752490753 674035744 42669766 557842715 177415238 431757684 292746548 844489147 834543508 131336928 306976792 740436487 353811936 835360009 658045833 105798665 560663361 82251459 81262293 835271434 566443624 863344946 403045256 932231584 789916850 921082254 787638056 692389961 164987976 443231016 301531907 649870993 953568108 763142872 389614408 503385770 300237198 796449246 409509668 535828282 315868067 530328259 818795471 939137118 849969379 646068682 584123037 77295723 935383534 297719284 182648331 875803824 384952934 63459296 774746508 919098988 260654257 773089437 114967843 345534709 128004319 144286309 549342769 354072576 33665907 585313618 612137677 687857701 763272039 352418043 338003356 584719719 673593593 835264053 1370980 560279036 114244708 825985204 890505832 71070748 442243500 511933602 357521823 222062978 636134842 644848766 610529957 551408076 890859898 10830910 975544493 30403667 557917158 383288086 503253810 24637030 137548965 368722685 987079918 881566333 353224718 505624897 81604166 878752736 469875238 349310827 171580871 347822649 137985493 976122099 851226121 127486697 136635716 382968378 636689410 904769731 268535526 722947017 964740317 997242887 385212133 792779133 220629790 391832005 519624726 125151635 340173120 72703128 916977995 743340596 401284011 729702497 787526374 571291456 468927856 554929402 552355486 213118535 844538586 108812029 634835595 442166788 910220844 466943991 325038284 287460442 859630697 782513066 734590719 227187597 925681082 418041992 78110194 273144604 591559170 246268571 322277728 45845201 792084347 241785355 243449850 516659858 628725117 482654271 223186695 300538286 610994304 652767202 898080452 282612331 26600852 84642984 756351121 64605039 245880005 803650928 940776493 968107713 579684692 697857168 981823155 89012337 844372165 364055126 902063942 682970221 570686575 945156407 367123277 28734721 327940116 70032912 407061728 298447496 354261124 281583931 248813849 743812954 455889090 74383528 289666482 690291028 187259197 551267959 54077453 356835362 814534792 343541024 151780681 477781146 664751031 132359856 339698683 763380396 722097686 964250450 89716914 202478427 801890266 209761881 125930994 191222199 416283267 156765981 957826357 848029478 253985741 345648509 213356315 475808706 267960205 229268611 714703251 902801271 553460124 903003541 130534183 567890116 86639282 261623702 146062831 862573216 530139219 612805963 762763202 959601919 432330726 862212675 172853882 426215126 640892099 964666921 254495783 327209029 977324561 797040272 393250527 82123734 890032135 619649734 319472672 407327202 791798015 453518433 547749588 291035061 669167667 209211620 275631649 698139243 175246131 344592192 937322325 90497401 185021473 463222606 514745789 359321643 511674092 799117776 59519609 794327231 925531097 471390537 766629731 7456407 813982152 300440450 97263870 600236597 12027520 191470295 107745278 334004995 682157995 571967510 735720791 116239421 116219299 543390449 272277954 118418483 36323782 672089968 715032890 869390423 577622175 437137898 179922742 663685065 951391685 217328324 852161256 162834137 182350099 170421792 69075073 601358932 388253580 745673264 1632133 640979871 12680015 871822706 529516378 947308247 68756566 791976393 466659530 372073126 479669546 743777654 872571989 856593699 355527168 752783382 473776387 922065588 442477447 395786643 799755201 141190586 732107302 692928084 386481592 306490105 53966695 83525037 115297294 816253555 767721734 880470598 1035247 474947750 802879093 606893224 949329850 392147227 292260278 294107548 543169881 24855631 434191649 532025867 818799818 351911771 508203436 635439710 262207087 80584988 305644366 694497349 698213941 677648842 474162199 857209192 827506255 41894202 358004349 735113326 215194869 437656418 940155443 270108732 85831923 335771416 884188513 111265108 284219107 651716578 425299178 622542703 747662607 332972760 570773884 60249921 748530801 417361513 374132541 194537431 712957979 686155791 131534441 476302861 105557005 243658261 496545554 784348455 599671645 962779109 33110068 753244089 961775932 553533317 47945617 641576228 665501721 843482636 649990686 9991982 909832691 955642935 666214113 266515420 732283871 327695987 944619921 241274144 988135636 836675677 189818354 77177210 705297938 931966053 649276342 930293791 982036727 678954049 528456247 873855499 357445492 435401506 424528846 691275813 689376633 953135009 221133442 735781415 952692782 355754049 910342216 619221219 508961036 336071502 685526873 7095428 772789557 882289461 731439348 399626755 427708663 296977264 35156523 374217149 648486539 419529302 606053046 311938967 381746932 608137100 541482637 515322648 350482453 374867608 357237879 998703775 339543870 679792717 2071068 660994799 56792370 426938794 764049316 607390210 835469501 124218198 531395230 621546527 222788670 68109903 752446548 380951439 770182466 195857616 477070733 864909286 556664437 74930267 951790489 411056107 681932220 288011087 334548883 603489970 363149973 743235487 400739107 837583457 462629615 271002927 250016052 404592259 280354774 33087526 224077329 947550880 280897477 60868196 89422925 199425866 570126527 503381567 729448141 532049682 433169167 993163097 845728859 240224769 82063832 389573409 444596762 203952803 289096422 128759035 583874843 575189455 121413 650407626 544216504 747086764 881718384 751265047 855597075 482080730 330234601 755542953 787759591 714683429 20630080 662043198 261170213 858585079 49343811 549612189 340282748 810041627 243457360 56089389 694534168 771037624 330230551 653903155 91841446 135218849 76317714 341312890 633419156 875160860 996159100 148864556 58409200 50987395 561455313 40135927 571729959 922243908 850385446 341588761 469462381 308811139 761023270 780096950 236766833 810261616 99587244 678658031 713227995 912086108 504355136 747165684 788713630 317342877 529429865 9036685 217153546 791419592 457869667 918118069 794002647 921044121 757446490 95385464 74322570 152740532 673588308 857808557 844132362 510314643 236488862 309994519 970132362 743469968 804248030 177723464 977065750 938205017 225019870 771759832 185538992 798192891 776033332 969260576 440827584 653278627 499983894 517496346 735386244 885131123 852725191 149403844 640809009 304134470 54582662 683902898 863025334 832744655 952367825 68963631 298873052 725396959 9579816 336181488 759940431 651517783 520967186 902845142 437305120 6126795 247425906 266049367 433169449 580389361 976349223 35693817 363244336 159128123 5206500 837901202 929355697 751784526 418964090 555575066 50907519 316629642 725082505 863836171 391790294 707044575 127290630 559265188 878055564 981682960 552271046 471857517 310561268 815180009 442872104 471039271 420951413 139713507 765213764 409735859 570443900 640779146 964843574 416304529 139119268 475120466 676869834 588976547 207174839 163141745 384613066 689771802 781296293 107155656 248794970 424820403 806542214 218382146 392739830 456129985 773369328 635301142 91845601 814408938 204703721 428959237 78954022 616881163 297485260 782295576 600740843 710664858 429192569 549896263 144228867 590444602 134902475 995780696 25639072 394889838 853902475 906955921 458499745 153017578 64240658 772581463 986582086 665083942 925302357 966769308 958793558 447462455 647411443 520162302 441725847 102396904 636946213 651483925 344496317 212856546 585436871 77350434 799121609 634743929 536020609 214731613 538868148 590192765 872635186 970228996 483277901 283028191 807896665 849919034 333799726 755865783 911987430 852533168 862470965 468186772 531693518 700179538 550193480 486088854 54952665 442000597 572025030 311017689 485565372 555150557 753825357 698716725 170055862 558108202 361165274 541001390 522028039 981140404 693585679 248440239 30382026 599764053 851814485 157034048 561260786 229292400 21106436 782987387 866563636 600253680 199691566 668685910 531002838 323293413 903415062 656951136 935893924 661818972 953781689 256773715 698447877 332181744 868280226 35259699 828089745 610769850 168342890 931626010 80762235 209285810 633266157 307188869 380389614 907070460 317264593 799609504 630107662 6156941 364285299 434524836 846636386 360023890 407428649 724475380 856758307 867633750 10325262 365382949 289935539 536727980 853497415 99732939 636300587 827273840 302883386 224686946 91891025 676965571 240533283 389263865 167296069 473952991 333325527 525261002 856576568 434818215 728898712 116199014 215775623 201189414 32846850 469018699 888966315 618482218 522607201 255794036 928259325 49490033 615884763 26852407 305106480 493535321 877585796 56500356 888462801 622543855 265175562 439847823 960789930 788447832 773253739 716933353 121114960 547853717 91854393 5619609 582050706 57481128 635144552 944283271 351592699 582316158 488584692 444476425 378578777 212121807 676979312 662640474 819419574 533184349 840802579 851782277 95593859 250077231 398927334 239942403 814015571 969344329 512771327 626657247 954802003 317972166 569841781 729526542 260601925 884052542 558888398 624570671 804175668 888653744 1420244 724308698 581840645 962088033 506444463 733628701 251256366 152216604 181383203 948319407 356496189 704627318 518115074 836018720 386054750 807317618 329121951 951527796 196416306 231701275 207836590 227084208 373158559 752359003 697755448 175377484 36442875 814131781 964254541 683289443 938672117 489706988 695511133 303969767 437733705 516737708 32308213 360271869 929327579 452110377 466458163 115962551 536596096 746103754 728643890 943292367 158925678 427691691 777266077 255771791 101527208 636006184 554161935 322502516 855678082 678487032 166301213 609340854 797802625 614854803 945199099 965731321 278859873 139808046 450957979 23441786 467245647 255725285 458386825 671890295 756858135 731453346 793664026 955207751 375518971 806380586 589583425 801329543 351586710 343013288 865464087 152087691 775931011 888183289 908578732 358337032 621597532 677529086 859393227 873669517 506762136 650093708 845626116 830160709 441371198 408415769 128168606 742075061 327749114 522608734 198839168 669378851 868627665 55714837 984100965 670911110 782156340 36794592 563978562 490051188 824934369 381767913 569760214 281812267 81485746 635799596 447070495 299028419 18280422 30771623 215645438 759833527 276258662 868763631 652842189 817106793 972370392 78237509 335686073 805168165 95746229 620321494 352009481 580840855 51358678 554894048 868362072 972371151 527360223 79279027 875965818 87066499 910446465 427892334 24518203 181589754 305955756 268026785 459710145 44716277 856890950 970201009 629177520 616709862 742409158 958539975 732230975 49538854 850647795 707460120 435042926 129456914 714831068 970995203 330827915 495284399 897737167 560114080 695933540 669605183 372623516 287183037 729321816 215061587 256835012 824014318 875861532 863498918 832320182 760153910 177366147 124607933 494178673 74558676 777905367 829165377 600685037 988547354 878977673 811778225 324589555 507614396 182544105 114516688 194276017 396075813 443358610 503984415 812590508 668337576 722212069 843300797 404989725 82226864 871372727 995252011 858662324 259293572 660406620 881983640 249691034 192598425 186044534 672632324 116478985 281702566 935871684 206250671 930403734 531799609 910493484 961470188 459154228 761497904 970428642 541463796 809723838 142781549 624887974 426093958 929619499 717909169 311762338 137292749 733926173 620216802 166705383 778638589 102502311 24622799 632465883 10075956 619994454 193127306 365943973 331380229 821172564 217332946 556785011 799805828 752252929 342951066 438668085 964285393 229370334 443597341 368577689 790155740 567621090 622983820 559380274 53924382 787181006 751323115 655197633 968535080 493595050 564697740 932411799 878727118 773319986 6584455 775067543 758831713 594935413 456220481 330813990 719864754 508255814 606200745 953888258 388041281 583981361 487751946 92338087 558001224 414659835 260923413 427679390 61359838 918847861 720820973 174565956 930658592 426653591 541553529 570237309 370757266 296220010 555292154 399716218 720297677 310610006 543558609 555374036 928190665 636461564 109240186 41815232 461443357 185193244 534942651 107078102 402362809 871673291 541435581 127303243 970849513 515955893 782181050 87773717 74902819 386968713 893714736 145168007 966318791 18773292 598183698 758046008 706650683 593246829 269221948 776646354 834780554 67281886 141261111 785406009 350553607 326099955 841476552 671771047 942823979 384412700 101950713 591853047 587264153 485984705 971793399 714017200 834522634 418258416 857231417 259337427 4650135 160335750 981572343 644453411 219816199 733555097 255841018 41777232 970610373 745991795 701603290 646545307 214544827 110793649 905836145 866247905 913936664 601921266 815826559 506759407 225805983 177072178 581471855 565000844 25380865 855613865 245422063 37906087 138105060 675818743 430908294 479231874 938742826 778952850 434738292 563837890 707462465 509373327 890633164 599140266 382389492 967406081 625328961 958277877 268582534 691975377 860588703 54421339 718347269 374622623 366703801 777573321 590435008 54742925 66042903 662611585 425063729 284013148 803296676 592965108 239672880 9448441 449845569 928850174 293369745 605023625 999368049 912039937 633800339 350843949 469419013 601930094 678764672 395103763 557335182 639349321 22575104 349589213 769347865 648261716 703001008 757758399 23337049 345151723 781365152 726632208 337711505 39627580 886563361 53943762 428905046 207144262 250753768 827065424 479952064 250981894 171269092 108197157 176150142 148221539 97079100 445996808 854506746 218325820 412739583 414493070 349571522 851181298 925803187 300104573 6646981 562694734 125276838 391815775 409072134 43914877 480480228 353387209 140729171 922810745 471024032 288852162 548240091 154510642 16626239 927511477 578489428 872872734 185851866 262738806 301537744 959431029 782950976 528469542 502485941 644762243 281208188 397318755 971608527 687838001 430430994 713276882 813849425 680401611 443096492 563154171 62795862 735918406 918596934 769112580 616308345 654996550 382602418 35037014 602936352 20114763 551114129 640497385 835834454 267290970 9938498 964091821 699109682 394201979 113073322 599959044 236947854 79521406 223926680 807686087 713754156 157579779 239479096 732799994 992998238 657074129 453578207 293996107 687408918 241067477 778384095 221219771 671064706 214645623 628293461 957597403 652959862 1243115 972043810 976340356 107232792 868513628 333922820 585029117 968284813 174746894 322428897 535087126 213774401 711053298 999577803 422948017 799992349 807830917 240118726 284018471 651161499 21721195 698619379 566677601 250915907 372495035 135320225 361179901 653454965 765436583 949097941 225488538 61536796 205131033 107814851 122983440 353812975 300304307 748125117 854885010 377839391 337469407 943093610 954039222 31322176 778813361 934919799 949379907 47893085 361674057 794459674 92301092 419162393 773850315 665024441 508627299 806671066 357307074 742939204 780853201 857377382 559155291 813089539 255449889 931369041 811722506 56471715 836453891 306845179 155891787 583760760 644046604 939759236 779287286 283727138 172654082 660612175 15773142 269803582 250290323 932758035 724770619 603061942 503073543 913110739 693232809 757338026 498042278 119972661 215507917 52745334 526918792 125265023 583271735 797596320 493809596 878277686 987352813 874442451 526742331 875711624 342667088 816791294 255196174 630820418 684076666 171833986 506383891 175429424 756357472 342229753 518061420 500595018 219393679 439912048 660752833 441175800 448433274 409473399 398101423 892126270 558487969 815957182 209949039 968372304 763744970 568714184 42041108 77708239 52057754 1128728 333254021 741233798 280937852 462085229 680926863 241299691 127401914 572783426 885002544 509503566 869802677 811447283 873419341 49710883 36985816 264895364 857423947 650839862 438727253 300475693 240602590 609235817 714401568 261284323 416010064 372302113 577933674 963204104 896289828 857471803 994196751 468688103 755644685 315225803 998097827 913248542 383256185 170872502 248617573 487229731 908664644 27189904 996986961 549344810 682156825 59538253 178052886 491320266 621674354 793001745 970806352 195152298 121071072 760760917 446340897 440520578 899371347 468457827 923356 706231611 464935483 417856519 432841620 686317143 688520388 551605113 328810837 840656691 772590527 21305753 768686384 471468076 909578311 4827851 376034776 690789949 282718653 189613517 563980756 762432193 470049728 944307323 598797386 495699471 33636782 597048814 513337597 726614169 771012139 388773688 429819790 471738935 945664470 918224431 8543916 605876127 415789563 570298660 411426088 266095032 815002351 225410614 952885900 854265504 160774051 444600777 461541023 541025682 378826674 74576345 127267238 582119524 924952886 829646949 293391750 916810062 413817866 820706331 650896318 135351730 49794058 775729996 377150024 687094191 386105503 121299271 411111811 497521243 581014979 934932147 984066404 633128717 309146013 55569469 464898326 771191933 517705724 137673808 989911536 896177023 719797709 690598969 535296622 943875701 320847830 456466178 507353268 666258572 779871519 345146207 11472216 542347060 518773862 987585973 250659483 812715444 927375974 194416404 323212854 327939945 267252773 439803872 135331358 484533197 912736512 903288843 878742476 549670255 731537146 19701156 781837765 536648751 21991087 810162707 991464392 669640747 103651308 982871503 291157936 209690487 676309275 268136224 287089531 856239066 617200119 462006761 748438924 385651111 433199025 631699182 148362057 202930028 193139823 267829662 923518336 34926795 613603482 43162546 677240412 440936613 688473308 245797049 926982854 618893544 643988739 291986927 186804034 483657137 756101154 858971202 125010104 4008513 542457021 532724511 315493051 783877275 565384982 173980504 317797419 999106324 802787089 194612223 241612654 225322241 257804272 397688110 200564960 785025146 563983512 499033629 993022702 495270664 389481328 393030467 659661680 385839365 907840795 44409090 58375961 972083062 224061915 694641008 524226476 849069674 152239704 275330328 556189233 237400136 998927411 651469865 281235965 102214060 360631797 726984475 133812079 419305752 268724354 624385098 840196603 444824231 347322841 177351349 717000483 682607222 469032101 588440830 725406715 281307562 906498127 703863514 478343298 118590813 907766132 735935599 876608213 870809194 971239311 86417014 983798793 282174255 666811887 321369314 41590348 55357530 715322712 566534491 729085191 512335136 76630539 927894074 153091427 157426344 226812935 297956629 184838451 755231170 882957517 516935353 50697770 790529464 732029245 856710337 595056418 998517458 306754594 167449062 914251081 490681517 780861393 583176675 599693876 441554575 967183208 502433274 997846902 694966057 249101340 47623690 515512012 444059507 440748201 12047974 712681646 597633684 84135814 216498923 665294030 236159337 266545386 714143090 585741291 222751787 447618752 606800319 542509883 679579127 45876822 275037410 964794998 461247182 468440492 326469117 578572106 514299247 412385000 102382944 230699148 488678328 500782644 977207799 292611728 895757408 142121840 233419757 568309070 823404893 439895031 638558020 871019840 192491491 602811798 207111719 899484429 600395788 800475396 618797288 996709785 650940945 648106342 760436110 78955012 997461221 96979205 850631773 874020840 760134879 206885357 535176590 866952879 728266119 172595595 667943306 144370003 638009324 868324736 558281904 591424109 867469177 745481473 570720819 412521276 281189945 866353144 737684914 503212575 564161008 423765491 601372202 561073590 589586568 407917102 543579923 959176643 748517297 571231095 419889403 523638928 40248915 221768143 605035627 657003959 717076018 630542200 447216947 661893930 663942313 661107893 929931625 984576752 542641050 616322969 98110668 173197039 220053148 857448943 778490454 717177687 362692693 318561706 453064468 578187676 57560899 950213420 88800703 589377645 811964511 834834722 879515425 73339425 944585035 474908564 223974536 353313636 160793881 443809923 616793728 451110399 691004622 324258503 848469360 482644962 283318994 746046012 897021837 490316454 199666665 365904840 633117402 944936299 549551816 310057031 778264729 710375254 842643732 8453585 887874297 561099147 209018698 968440084 659784743 517983868 759210620 82218976 554132307 864230075 46445942 43550050 542863696 907266494 987127865 717131113 679268928 940639169 486565496 681203384 28891674 969260954 670450220 178621972 45655926 662599211 563635699 31074692 35105587 131486848 508565330 255429109 789601080 13882645 947896697 537423431 824768448 556234108 941552246 536539139 259319207 73698071 246298251 914000731 473122786 252791519 918131823 394559165 698280545 631270610 642975849 261112404 8562794 669176073 935524841 307518879 631266261 666189852 192669429 556428844 364502894 167932608 477457369 825442888 974737522 952161307 71873547 735713954 631189848 40278018 308807638 269809779 966547342 433397776 361260855 658163172 481023227 330599820 396173928 511320277 399948796 66170842 789820191 590609860 951601239 235593034 836005587 682719867 813630836 962591682 215369097 159801625 934000704 991786777 531065742 176831141 792436261 463208742 285904561 995198738 14424615 158465032 851917930 497923653 333889000 494756646 909978793 835505450 230266986 638827924 581089737 92310281 349857528 721394663 108283294 600982468 834380179 44048861 888020748 66084747 218434493 120676257 925818814 6012248 252489871 701630268 883566460 557820748 576992328 474102762 304406144 825368239 729634356 938197092 48554387 52800290 395257976 798728019 901489955 708418726 922558477 340654150 127853758 586342972 114174688 11821743 726415083 746241625 167509830 834950520 696395076 85308067 523782057 283259722 491061599 943406877 448566388 733654367 595295896 889556510 392950937 687510557 992947164 105420739 842200344 433694199 113449531 380067846 393076981 79896162 137749055 833373237 306272010 517338329 534839533 882732857 404122776 924072673 605523084 107886381 101889906 111069018 787420398 44482772 218981759 841157811 784777393 360777415 789934285 128350800 242411095 718935979 571346450 863830251 93186797 831798262 246911917 101854707 974070036 520177190 916979726 394715653 961040618 108837792 247609246 858732878 915453451 435402028 409042156 439411837 806668479 526125840 411032376 151175310 434977419 612789431 85928811 882861969 773744405 780807586 773484925 433276690 536440710 762927356 932557820 517526330 699564513 932182556 789896733 189045274 375793126 266630566 629584748 734553717 333299081 694489572 162756486 595854308 182526356 303809984 262032575 560520635 370857245 917934340 529812167 505963761 857860956 358060465 357071879 394901138 429913059 940686758 245107180 912732370 73004363 162938270 803109494 167864307 697572755 299363409 511370210 816296290 936451876 561674089 572150767 800537728 154965808 99632621 515732475 883045160 140584892 638872150 328368518 452764316 97207637 986405636 265459068 871909758 236987109 155838127 69058110 801219996 28671396 214808573 94172008 689132073 701452116 321664552 80967560 640417279 66969192 257626629 740185633 345152377 416918074 966117601 887283080 60855392 719426184 293423519 225480194 859963361 494163581 384167958 299641180 537493295 240289072 930438025 773098036 329371966 379101232 298599255 129021020 381613666 290493646 476010511 207016412 934645853 156150081 637790056 322470353 947958051 832821403 87062453 265464035 11736396 444907656 281546751 653001040 632765470 221228746 82560047 277139239 909290274 105468572 247911149 540361996 897369901 230372896 548490413 590355401 562241279 211461352 339327526 11049325 476044547 256303509 589183264 519693349 842410288 79818566 874592786 902963290 116881179 354895821 573122808 729394063 193851469 249721864 493739145 39427199 590460104 524229956 333431718 138878986 237071052 539828985 924199221 507733165 577090227 168751432 690387449 337842666 320165532 4689295 191874552 569283703 118697996 722786092 426311978 299202811 634609804 436979809 302936608 570932973 189466283 124191328 604730541 955561971 248192075 969900472 932243857 667029107 781354783 220371939 562582438 493280215 714583914 539724671 114976618 931835976 582825864 427703294 927336108 28171868 704899756 513564282 236485488 499070614 299861517 287048196 265511214 278212772 569725179 599992004 109968749 230664624 400197654 738874705 155904872 862951431 715299577 668037433 671801228 36202450 498048831 708073729 978143189 535589927 939683437 593301197 392238769 531158587 748983986 363640995 913893085 860493217 848533309 892738120 131730774 241067640 654300985 374426548 52824799 528808500 576088096 793282467 390704930 624214339 38362691 875294378 791274499 179659711 400790381 373310575 826948089 563170320 192848407 321972974 680438371 675894385 73558553 3541087 469013024 902777087 571495247 272269202 627486383 32840098 926032216 509631065 357694878 395664120 712114041 962312310 607879880 83641092 553621738 195189767 714707082 445632909 65257614 488192751 27521174 35021581 507157923 908265859 91884412 351988403 809947110 153280069 963639271 189750904 361546907 574528950 71976644 351561800 196983366 328121427 603678102 904935866 752620483 14070171 339337674 41327991 181029774 661540213 318405271 592428432 654574330 949188722 113933412 386256959 915348311 540430832 494131195 416383517 252333418 852290601 375913204 421068779 604456115 871704961 612452135 239090065 781878294 985865350 773831590 261436945 431582711 564580123 671597204 700567373 825700019 572575728 962710076 244810463 992653386 477621420 688661712 457585190 141409130 455143967 386052600 245691111 98332497 201366959 639080865 281023420 430472501 893632823 154096221 346853430 664665828 552112901 416693465 211961747 191983273 947411954 573046656 491388840 909176905 305745189 724201909 990564264 21370199 317964884 744476993 617752913 315683327 545113496 478055367 298227956 50271987 163984986 144429769 314617469 850764568 978167328 458830816 700803638 925348508 530993782 730063677 404508069 807468533 148756051 440884969 777607858 322004163 152843664 241988999 997599608 576088154 898283982 182068861 600275806 544127733 37040388 168955599 189524967 226438898 899499735 157966357 876937869 948865439 504235772 763251226 878362987 57076593 447218554 838666043 130976349 574654165 668164084 800995484 699978167 249875699 719417062 8702788 793460939 275326840 559857474 636074059 497938124 206186998 233877251 36506119 884088857 108093736 325289297 103356949 124388063 875509487 304832570 608716987 140510162 926543215 478815605 837975924 579660050 43803215 5704360 286036012 4821427 438059041 786620 69378233 642606727 99912184 890424736 908600223 255278696 561066204 260435266 903523213 723952336 80616482 524067945 783446616 241605888 962645711 669589398 976486675 240607521 770563926 658608065 174982187 346766445 787953175 947839977 98117258 787450792 901107634 191412091 487462754 937163607 997886079 465599241 501307675 825789819 873858890 148645483 734099176 609408716 653018904 749441615 282881710 754070208 627486051 836549236 218621437 984070350 411496528 389948032 922620167 967064234 217636107 728945788 222927844 606425933 991930289 894701921 663590904 485603830 998082191 401415476 622181305 952859065 519630934 602834597 795210413 854053891 678729615 542158544 142435926 165860928 710880206 456022163 334443515 849119957 421689250 429400628 559546171 680179266 574496179 11169883 222060631 241267155 863446660 821529974 381254363 641537023 188035594 155092347 452938573 594929117 969103257 60916929 780758330 849264687 926311077 979251739 391541585 669209810 317044155 937865651 619309626 973591125 975632606 246168735 908687847 288707297 430109817 128354518 356224174 768637798 210854548 69644288 935375272 388947713 512323025 973028238 329698836 627921711 912230198 930279959 257031943 297902096 994344622 148011553 644475969 361954826 93175616 394465058 169298778 940243702 90495760 505239760 545374153 609142230 57990323 862335295 334910541 786434443 738396292 119910187 597453074 526911745 474840727 333990895 189334665 95087379 723289828 344699875 774370394 94971765 313387842 465864567 531848515 537610792 14850729 949417064 453546297 279519681 727447311 337496450 83826904 662824844 290875558 157652488 566244508 326739483 417138559 836107746 199619329 666847952 105339836 742895505 212324796 966276547 828049270 504194282 858212708 420897156 363211704 375953253 64039466 841525223 403746930 36640103 100482964 122387463 374202013 827833533 348602200 839351593 625029847 645879353 965401590 58005349 667756058 764363833 391200632 556975964 316037560 560082298 15449739 856974518 163868099 68677238 58542811 757529214 369073183 814222010 759870753 569723669 62786365 113039869 443133261 48972786 420803468 590868999 776132592 112368651 944254416 297983343 176324883 38260035 478556190 315661333 853463065 591805517 355173282 250631484 122712537 978174913 612987382 39762402 170665585 622347733 319272550 452966879 553796545 592305413 985442432 790360904 521241142 358801444 963231347 25371326 60641321 966362916 273519522 620998712 234669163 747226732 844035013 224612185 176101317 315886003 238233784 31024019 142350047 718312620 856129705 964105382 427167889 216280785 967087280 106937103 114603234 56311480 42279943 841115010 744455924 6983826 567081460 497526843 235566180 380497243 920097573 226035054 603491796 913349192 572369884 995307611 333242280 663867759 608752772 363108498 564144981 976223402 435214680 948872125 145399364 750516396 746135172 604512105 336348306 695292435 148171459 951495503 333881656 838573247 266184603 723984223 768619287 726703824 664626983 396727103 376140189 419489156 304735114 900475325 380258813 157209706 595224279 961682674 859710903 715308201 34846287 97479643 372133281 553899038 430832172 641048542 455468300 943702209 719249968 412747779 764661120 175199397 233805228 513090126 998539778 553248134 32811652 411124491 769620260 441910000 799162463 491271940 127689712 233232196 320357288 825562456 488951477 188622304 530259117 616254933 770979010 179402100 89997306 790296182 969392325 342412790 411775314 881363814 875842469 647871248 45932408 354399827 796907175 93747589 834304648 697962804 225946526 890866021 836670231 456840875 872159768 391112636 317086722 7936085 922592072 29369898 981750822 693863689 414228720 522270546 956353199 9483927 173011028 660872869 209645623 580727458 589399825 129786768 301183818 626451488 236404436 453994427 479727884 606158529 333048653 119860736 954436591 459226713 258368014 349955923 380280528 111131337 308105880 666255749 449068110 130298848 878166852 730217959 230591345 650888932 809975510 816569546 237696293 435556474 738820146 927717018 727108097 87165668 796905708 502927945 656119750 40279812 645722420 799922781 404323333 885822651 8531894 75525919 405071010 133947841 747311154 94075544 498353729 988821723 512230388 2484431 921779673 960126370 849115931 291937731 415156740 426812351 220805613 634093669 749960414 650855019 917646462 691417627 374442820 666626927 71954744 716750243 511002449 747827357 523242298 175110272 814892810 528618862 449708412 863106062 494253918 439060428 506171301 983544775 921202726 804139007 314553242 513037445 611686938 896242585 881427327 517831465 185894126 491656444 752167549 761333756 272668235 286088569 568256976 324977602 812697787 396251011 936918090 286049491 78887318 617103848 691821489 120771419 840773150 989592806 92287300 76856007 527492228 835929190 229312683 330231595 24092563 852444488 334053525 690196004 981539936 30148690 942314731 671331445 332952533 557343430 872163809 316584996 216772926 95830506 42690096 264093865 498785116 726470875 419436833 729326458 441900838 333077045 191308855 622741289 860691288 641004079 559647135 381730325 269184108 782771410 839676317 228623950 522975568 937504493 269614870 899728853 422879548 883233939 506969667 894397100 432258002 928272990 873601621 76641261 145288948 938790807 461965163 648726056 769210 762743181 741592297 985896846 680631210 918548064 244820317 969730248 828816596 350440047 33076323 785330949 792372854 379754372 37827431 407908255 824197051 185871957 226487590 309912463 426663799 549374407 811172413 517885381 210999786 184117289 133725127 742860427 45934973 954384309 112142804 356703986 963877491 965935560 48360792 401552599 627206482 725500789 578487205 738889124 677200959 556327434 195032765 845546656 329299989 849256107 406866069 316776058 153689336 336240136 993669105 337584873 748572045 66781225 890335562 123854204 209573832 487073369 63684751 572415293 744694856 12089581 434813957 162777429 181600618 312059665 413776457 844622287 101581593 131765119 811793289 590477682 213639496 404043073 605172273 249029409 643585045 136923591 88233732 639513880 436014027 358245254 189126046 454881852 59911508 774532838 754222202 79514198 703001438 882236747 126131476 681834096 151466380 288534423 185364695 778432830 885257619 417385716 177409823 564501360 458589757 872388033 383736268 77905230 431699193 456693726 193067982 732238452 807688424 229123016 664286957 131625056 89434695 902469447 654054937 799288058 115855091 542874634 694772808 313589266 547146854 834662328 79413978 622961592 35077277 404016169 833199321 595157871 588615368 986605841 823953000 384804123 910358342 596606558 446301465 2797300 335608326 841428073 406074485 473874296 37502645 703857955 362863494 833723160 67219866 983820190 308424353 734942301 859615159 639296754 305116551 398085230 936469479 994704040 73417009 171177932 741191805 146563148 999361728 108615782 78238861 880372934 731534320 536068521 174991486 366253414 229011959 84219269 78720621 561003506 586183179 804744742 128265355 725064198 895654295 421755128 211168880 187866458 682285066 989555440 693946095 959557144 19644301 723603895 470505487 421175555 433153961 850266420 942202709 28017342 55650038 434513483 873293100 528749290 958841714 431359499 706077447 555279617 824838682 362052665 920450325 808421058 105170368 913666724 973380136 932944310 872795105 236208726 347649796 301677557 721983152 362223109 172903070 182071237 789350918 286863931 757308039 629567038 22090500 589371981 312916398 844227609 848583830 400768892 781943944 219171968 727321053 814278105 297102542 921155448 10622656 31042029 406753873 761202449 890071024 476759988 394588407 606332136 407165373 831020645 460459239 835978600 34171891 402659123 803265502 523967558 57747917 895527210 830103872 283680674 124044552 703303545 555045195 851533370 36889259 376831000 473327730 153219229 165584033 301172772 141523232 378097973 112423221 483929288 698649649 415733825 62048050 475161874 731232837 566037483 952783563 869478581 834836234 847132565 727941879 457397007 538863616 681977814 646164890 917067551 657814126 80367588 12628482 663935126 176422853 166237984 621404904 435665293 215954811 88688965 129122979 825547426 725790673 560817591 979657743 534913801 370194241 677688757 439954022 393694700 142842431 454869645 826119952 892492055 645453025 213330786 734032899 121930316 104974175 185992415 922133360 691666644 80637964 542955535 428182531 487344367 436640771 454419914 752074414 10152299 829601829 370935307 327313188 417445920 302334156 486597071 511068060 582102212 535860357 516585562 110818296 853453854 205935300 499671804 863915516 920356162 721318959 943616759 955528317 169108973 566006469 684839103 613121778 433106403 871314125 164951107 758201577 857941 740487944 466949432 857732693 919567522 242756346 512371441 562654426 690165138 598403240 427352432 75832010 231439792 111213769 179058412 119858312 197163388 277415240 68860978 180822460 108297339 936625905 402047733 286312762 341067067 37812002 252518953 284719442 119985123 709827883 45335528 33795976 87911413 334942472 750405598 508251172 845541525 133897145 180999003 90547509 308610364 576542377 536607032 730545516 353823127 717790705 136248752 473424920 536016865 627604384 639450946 502463343 551502674 847559893 851823155 795866826 570467433 97964943 789481677 900204407 52123576 44729272 158374613 201908244 993809847 237342301 995694887 598724311 217180426 81898442 801989015 178217456 857391520 546298736 47863170 805431629 280482407 421909521 51349557 717695281 820998753 170845751 737961784 410974656 444472360 132072354 890541320 335010492 144914007 876596774 1395883 376132039 436200938 272716554 736951716 809404370 235222021 771687137 728562650 669920591 351267702 184784217 875541985 37064517 893678577 476230052 302082095 126801927 224140939 92461227 930103475 869792198 937190288 221779815 188974680 657540208 756636563 519454222 581373266 587680079 380225012 609736500 263189623 949596260 619880776 219650167 447369571 471602276 823991435 773884511 714978828 861051820 549126900 337983350 574658065 43393605 346070434 733098666 623358908 422479529 766495934 226820017 142199585 317889164 591842802 787960392 252715450 714203892 99695692 31093884 648001376 408554423 105788674 185456346 55099672 810837536 711229845 991926397 168366569 37230850 836239050 115759403 482193868 280280594 936652025 652968815 39781781 251037417 730544013 594451176 234432034 284801626 309090970 873827235 774276695 245196516 749624993 744249365 809120471 926944937 15751082 1618232 144832113 713779328 124774236 316221110 389848087 399407523 499099295 823329270 813437074 246979912 75123574 248864714 332079696 354124400 118940702 857862824 396728691 153375245 312166948 6904370 997825057 692083259 305732751 496894828 740460277 59955025 686916717 380154052 565247948 49689786 510855689 861613459 249030106 7800361 483117474 653168915 289625538 900351156 762051241 994281102 900992509 574250478 768944463 235914244 532751390 415170893 70551522 232885398 857015697 856702552 779401745 289733926 582390134 160625358 672140511 690551147 9090702 440331550 304338989 434988220 453936208 275683827 436808000 848040137 907710313 372914567 238998035 28356 724217319 484255485 484878966 685266319 462074562 874925998 406906572 386113340 421994875 688029188 89580497 536253495 42926899 398698807 512601765 328082695 609462838 386604545 952183997 986755543 85695694 30858418 234229510 30124916 391418460 100222321 844557388 74908163 454716732 541747480 974884695 56650634 204719150 472131344 589300125 481894186 662370741 585579292 573089512 532857079 847994767 455305292 849664314 743948675 240143433 78363450 948900024 342557552 480982974 604899881 519557782 24550623 948005552 870584101 146030617 228628599 736189822 926301026 662668043 907014723 402802836 976097632 316433869 553588690 894938422 491933998 879831642 757597172 40575274 806994210 13268139 946958993 662453288 612863265 817831222 355771402 397225804 769898013 482429865 17694859 488139627 365069539 174061859 399093750 907436383 849241831 413450034 930112842 166921894 376990141 707652660 243840742 34561796 237739479 763890615 619063519 460354620 317176275 543229035 784503795 286556120 949950867 145495353 961323142 916389273 315654595 719651144 846727907 985600611 423358091 101877096 899590922 248422264 525635200 152047752 635425733 5933206 636011916 808545880 208226425 398466115 949153270 94728465 321637177 285020569 949515451 359591821 295024860 783285667 989288205 71691586 957426034 716175049 879027010 620173584 478973067 689375349 276996886 129549824 925665663 150179798 891833579 967507794 293761738 682735523 771598486 236091549 828493994 510999135 651876702 246736064 215736568 253537058 23600266 45737616 5836250 94309560 604299219 833043936 196495228 890727718 421347018 794345598 916316194 454764935 393880186 950502073 469803412 750662391 99714556 76977744 146534205 480432927 919977202 57369826 444914525 502688590 384193179 806108271 703403759 492832944 111772147 159676771 228048489 65947681 412382991 633864153 658159859 907302408 520432802 46091895 410022797 587887639 130150385 577574530 758967574 85457699 730690831 664554817 265599107 143369485 569907286 136389534 333946181 710396647 298867625 542573585 75523018 744019478 773403257 117283223 706238551 252717190 588277901 455277648 682749754 591467824 9603856 144031508 940368877 914687252 164575513 372445608 2114983 478623152 339163612 908771149 342553041 91895708 138342513 79364152 707432861 672231730 567967968 343643779 389866543 231243357 14038757 283063258 666368748 624578426 100385670 429068107 134882939 390081541 301761383 986325303 529776947 493515687 95424402 254459257 628928048 384478840 128251544 740727935 67147196 732089421 392452237 688119382 582259930 722093857 784428544 961270546 685650933 66468078 351538297 275898162 298610483 714309299 272507133 549354673 89114615 357281156 440726891 644136352 714055815 104822195 826940295 256703343 392992273 898836842 13537257 768277348 437544396 822639468 235277025 960745109 413967260 245251195 38932208 433035898 437356733 750331283 206877040 636162069 436426909 528603951 122625638 916670485 183984627 924581281 683108478 509781873 827397978 640126892 165818592 720498104 504341569 609785863 756285734 408946404 517552131 964302229 139562068 376190944 501930308 452564432 947178962 968367361 468277138 580501516 323188195 259186294 519656773 285666860 624607606 605912007 387622079 243109386 988966319 744106763 997568560 266378668 485294913 618053745 468909953 723528710 589448676 563729861 311001602 666642388 901767686 398193102 28509608 543019720 892702458 436703569 182905083 779430869 593523203 800884510 616295915 536172144 579160906 601387370 960174265 949603739 399475569 133986690 740735326 550632462 624653849 518397046 153523833 204925974 40940940 559851205 852188773 618525457 581094842 387906119 92530529 831264342 293366156 91795193 542111657 852058318 779805483 231980100 696784161 137550350 107918490 866686537 52653009 170017774 60686284 132888319 73059104 701512814 924458477 920123200 450615230 649586225 687519049 744668176 383440337 176187763 883177897 921070701 758448979 280388875 565746881 321771092 135298894 27905212 526736248 623621064 699841063 741883484 899947118 757331998 664425161 25241411 87035029 884318864 14474654 785706483 129409943 180141844 901530819 952351557 636660329 371090857 756732492 334989744 53407744 569059412 305982738 468111187 574372589 521176449 244397874 753182248 382684076 324720628 719591945 158265846 68361857 392380240 223867913 204116163 482865566 7062043 568138613 427671799 874880018 985744267 630952814 423487443 642613580 648463635 782772851 528970904 913958073 610029341 308582780 526117961 48534162 181410401 355958676 853610024 377018682 917304743 429792074 383760357 15508479 35109342 474690627 951040351 17072497 190152430 755921763 464615425 526909512 908984377 600979916 562921988 889566310 263523172 774112105 210612847 711682513 878382042 5404064 462051447 678552889 115037113 119325400 21515760 685162678 231319020 379501952 228892326 918119168 763580203 870213603 313020190 708315405 368107601 649447695 34022132 283961273 708056451 390832429 316129880 260683820 459348139 617623959 61545719 639173114 221753167 333672689 638819291 738480072 48788085 465763787 86085367 280695959 175737842 282549229 364588828 330774939 36731477 154813284 672154125 960924655 942561806 243437465 710431038 468824427 685809109 595314831 230605139 619665829 911740454 770412097 686743927 453037720 627018546 348670522 579110429 644291025 875749709 344234819 655837031 920231874 574692670 973876406 774893566 429897707 865022721 236809577 125356128 274414744 862446283 15159019 664030825 130857554 158373742 557015294 945203694 514507601 51049660 843476398 379943396 610093500 300889857 255312079 697168054 819112917 624914704 192243688 658474839 345022314 918621622 837634884 567186283 499971967 723673673 150231370 270947698 992343100 127895945 422395015 87194359 809703182 336130255 654752038 497210473 370904551 496100527 398293564 712061501 117620767 801619689 459091226 27017363 70358865 905152752 708876304 995403661 989881398 976703055 740056091 998803945 317066248 682396051 830435882 227617813 83788626 860439698 585042815 513789160 821745669 275106304 626634797 836027130 972217492 724181945 271119599 604798815 385326856 16353430 280919511 23360788 69470511 923059832 554834832 354737422 307928251 376329802 639145552 924416660 325589556 677005023 184022558 136256471 432885357 747157221 758376247 646837720 151707653 716036541 668194188 321218260 24851336 691927857 889727057 602833421 835509207 416311020 834102005 262432891 442007765 532189416 158923291 467627914 132707675 940330934 471343464 314325593 194821179 242408848 896870125 453634918 272130464 111222645 320886082 556087351 645237751 335604155 631782439 681351126 218314702 521205565 842514400 420010478 753622499 943390353 462328375 210852455 907216165 531360417 49239625 750099918 297249594 15897494 627554301 138696976 768366279 670217952 916801638 89854651 967879288 870195566 144450279 643680955 49819059 574184142 785634866 162057643 968364094 235343818 833572848 934531857 715775807 493225318 942162073 644857662 803626127 656898215 222160670 357957780 369725775 416967326 985523340 789682135 369677267 77621578 300640741 968431246 284765979 903341646 142691012 94542043 461053442 286141395 357047523 75953533 444314580 760973903 562007080 711017372 171122350 628697136 179439954 947399535 297931675 414961124 93216599 999868267 710793758 54437081 296970338 590348553 938426359 488212064 876078293 851292584 244158656 575655939 472429017 146791739 742203144 596256003 812675615 591783693 998586701 726875009 242189524 875370176 829018103 305203415 448820087 101340273 60608074 18910808 919915366 305592470 297550975 476125288 614781788 804180144 203711598 21070607 150163627 688310733 364181729 999017153 143867524 93056254 181532777 2589065 916341598 755017727 552363051 720327382 675410004 553332419 871772158 330395343 285641626 833944566 199455932 921714697 122764402 986916602 19571194 90387235 212011203 788071509 34329634 159244900 593603512 754520982 297692855 224048005 308671771 807065790 358318555 84142582 76522000 844562193 900597568 792844509 967802310 788772220 246514388 107047319 49172383 414968586 376472571 234060559 236009640 404552924 517805828 391044989 180259902 341461631 789410745 387869177 619054321 480431699 970438600 396609255 973434256 62615909 342279866 106041882 374110236 46522440 150208126 668064564 428482330 606887820 205090855 281994559 794354623 333914882 718120176 632480360 820640023 419238216 331401903 368767031 637602886 936404323 903968340 685795821 34449734 916557900 868191047 140208210 29821414 556628567 138340013 545793100 962905435 552145240 32841380 195189898 643140782 923524387 567591450 631686966 699887415 86639234 79866823 561086781 882783679 756068105 339667274 38805210 835802499 913259822 335273549 32444626 778809567 599020534 99352380 425414479 437548928 975079441 300495556 687368464 905918542 414186007 660772478 918361994 240216796 393390595 913858070 210742072 825408704 318274114 457567812 541251637 515610888 248763164 109937985 962298412 858038057 43565487 569016874 205145380 270520664 829376194 494027142 976669551 616505094 428686620 219321624 707448690 322843002 939736525 616946043 655966363 445094308 839765011 297528812 490405476 193695797 822437587 236840270 893335688 818779848 454828274 392374037 728979663 641512526 256387289 131977139 480296759 537513475 261763140 492493285 593778271 817485016 150605286 436918655 428291705 769322421 268978625 685648619 320721897 274234935 788522257 506992777 360045781 287426919 38884318 723932885 498747898 410842181 737676616 285158653 643505162 623102833 149574186 247161716 318005503 657728852 941812679 654319045 64431021 298242938 608996456 283078112 782164151 888454865 341494476 131654985 659509516 369674898 813776777 997811024 619597391 905889026 204267406 894829868 378038513 813866667 508671172 218790305 557355053 765568289 131252964 967293 299951630 67052856 330181355 586494342 892365529 635523077 701417416 49243325 212530717 89014597 474546333 608214589 994801007 139606118 458177965 595526247 498245624 588501913 214988905 593584786 710738146 346887442 48985822 946137221 638496744 151185459 284138104 597001888 802655431 647592916 919494983 46271401 643019927 469033107 178860186 104482190 153491741 537786742 974684863 791213799 504390328 181511493 585477046 659534563 39820099 863390448 325026656 840900979 589172149 812372191 183449482 11267506 568603498 285498047 242189617 977271673 165496377 251663297 550830923 938626772 437099089 389625922 756191277 649993157 680137295 757728452 962960970 280782788 482795870 903023304 743956559 407650939 307041615 632115620 482916964 119760144 976983567 385146740 132939502 844833819 277896721 689351357 579286272 372418173 144510495 402900397 724061647 532134058 673848315 991506740 617329963 961461399 236897344 230408551 853977743 188508937 20244790 731717856 786073339 597637718 339850452 119654987 211376829 233891444 357192516 109872178 995662338 688111720 668071031 510367368 379360439 202252343 821360989 419918990 698064824 391919363 30048479 380635439 362649715 172382875 81561538 992227267 236117189 55206063 364947500 287339343 946041528 464749210 414372013 586569857 469687525 412958539 708890637 353805075 943081357 799592296 212302004 178246794 92167604 848264859 992772794 395561826 23308877 924206306 178617467 277859253 657960346 917314837 94370371 860583085 553913412 713505077 821999401 565255815 424686820 746672951 409352399 544807607 787565866 876587229 772330866 152613746 562701662 887713233 927927637 412496749 412058607 533520253 154872620 393466614 952386244 976784358 352254585 740017250 224557503 919509499 522101861 519231264 969011719 887447362 432144202 298401871 406460973 29591040 258821773 883375152 617410126 826339964 556597288 541005742 665094086 32087934 102423197 203967546 947336268 965153214 325462261 993632732 105572171 790662127 950128406 851423282 193062614 862388605 511411732 920452975 80593045 946126360 771305403 769906164 535239238 992999948 892253813 352566368 784765023 291322959 688276711 484835547 124563859 412309329 933327980 848704295 895806612 407314885 85060764 145186812 608128038 622036069 940157638 908174868 9979967 957488361 973302248 730531366 44931600 886959657 467223014 924937985 963470806 172061727 35337923 726214935 916821345 694106141 806126456 996226788 137739861 242648265 162438365 285805573 703520678 369915765 178173303 64142115 634714263 328438729 221711515 708595668 700936924 521790524 907074513 453049599 167367299 657782821 566985278 468779934 315770138 777978094 474484875 989658877 511632371 10422044 26531950 834035979 844907914 147672030 639057257 83686754 636876534 756120837 351055335 961309311 72534489 231372949 263055439 713892360 518095993 295336130 622439284 867592428 443527959 405125010 373609512 869333997 768240334 189427863 151894716 354075518 103134877 280277023 745751782 663532351 823584628 303255609 158531520 236088770 777158029 799570909 532818329 805657542 554822871 151312265 647411618 112359568 670047491 153813278 450652139 226096092 701903414 336202212 624046555 75850298 5931261 596153640 715576937 7725949 274907532 955316547 954623211 794325226 522555145 965299576 710761166 849158540 963482851 442521423 222881818 794239990 95684236 762885412 719477294 722158169 383735963 28340706 713322614 779760342 803853450 874272486 90405616 393707059 349332230 366427704 115613694 102065221 544450138 234323391 230772439 312968404 678420095 370799362 987281725 812723136 292327493 267810276 673342630 885481017 502885439 824309273 109293208 117280320 610687774 845189492 16011245 954839763 879181523 853327180 262755261 426652799 383063143 865372510 742513562 569818176 308486639 673812821 817974038 190350097 108359462 466928365 981552782 63659841 188502804 109472053 492283041 60189864 970389533 958007162 830738940 923524908 948662455 278101559 234745959 617557649 400737147 390656867 698247106 733853194 643390133 208134510 927728312 881010664 245175609 646183909 304777884 250811649 818524392 832461888 163468671 663044199 820125071 134872005 589354408 767692318 344335247 369571487 371985165 513338076 763895987 379083121 378487014 924681367 443979521 810178696 327056808 235892208 343241316 736238437 305783744 164091760 536436582 63183456 816272781 610449340 207034451 812624743 87000036 186375355 505811066 289106373 686819879 10634106 391147381 13628766 815014569 170140689 371298817 556892596 650188025 802567768 135558253 708522511 971841752 662454187 602723763 87680844 600539621 229885826 893624761 708718461 811525534 601082000 567204020 443597741 922450295 334743601 402958143 76567737 2804969 982735490 18485597 124901901 906145764 874016124 135852257 98714704 970190349 127139712 511070360 822634751 626307907 498018410 411718681 73966737 910475097 23724716 400947084 995981687 826596333 46341198 904907983 787977502 984730118 635999526 194447069 784128626 230518782 718139522 940674947 372966991 741944283 984950272 617873760 58284265 234526916 352529571 111917780 842552363 193864708 180474654 602445 673563461 273458342 868355766 924034058 846860355 799725447 855743166 388676902 479968320 147207388 215131246 915958346 654307625 345697413 80729714 564924237 382382746 335858762 899494013 190627999 557306376 887389460 842754692 474034940 680352201 558749388 968284642 888764212 884260158 620220305 895980447 441105860 193949083 475328889 458918491 759550178 511202757 886109241 778134146 258594590 125737582 489527520 438453547 961665771 38829739 515714891 77916160 18858028 249055826 580826605 816816842 806368109 337651095 140260238 529243037 709046745 279509180 891549621 427575257 571883580 887398080 941045397 759333998 427233030 580477343 522255758 557496804 76984730 525125707 203046829 265105714 664370610 879156455 696634868 846492609 566134369 906239533 827603785 526543223 370376514 766702420 835680686 229968743 320764539 174150632 921365598 222369645 36332298 509504538 9838841 585355766 81416754 175486119 689745083 911931745 399789312 173995870 981336288 780857543 553604213 814519664 578344864 353927072 845499335 402138141 196841741 928924711 831103818 684288230 149213397 476184768 964580073 871866653 774383124 145235245 250623910 676925584 105881252 392593535 100626652 781206538 242079379 386046327 543076175 39240689 109772847 686713426 332488843 223676107 22986044 355027753 505297409 176791312 186098297 459734017 100751731 976598630 403240948 807870479 787403658 127518272 814080124 26322049 995371108 584849671 186737917 233937717 464664428 761345748 598992753 657434254 642952917 852506451 615961177 3762973 991297680 466250790 770204325 446167935 478297728 656461784 40746396 8084490 972004715 942377173 150334709 613405495 896000100 973443251 741546595 351596734 671432008 676979641 348733777 949665232 774503744 867171051 265114284 812693534 544527285 732110301 591361768 612984236 191130449 7096357 750439375 416780585 792199604 965841749 83889657 730792413 713476814 759654273 602785078 110896050 187532247 784941230 626895514 936692463 511181725 693337439 374496950 520101923 897268932 340370864 299511286 457366143 645106482 520640787 905770601 656841565 977790721 801747990 740322210 94680198 477811571 720421926 626880588 440905411 113665993 432804888 28246797 416141589 355754451 459682154 41805509 279409109 516543567 759356400 965912810 779756425 574476278 651030312 72210917 605747803 861633227 35099491 576441378 845190652 515611339 160559487 446975748 960422396 296511974 943203558 318822017 538259753 96475649 55265276 305670947 85078872 731067754 706660932 596919536 878161145 714102981 213135070 503318487 392991216 181448615 515472437 67325496 667803267 228191352 515268072 357560624 859349198 458160475 64350825 532096067 669650790 989123077 287461221 725185580 953394692 98698010 422883047 196651995 975724991 414150127 80320340 694543112 165915513 309979868 42918619 669842673 267139798 149736348 754218725 189609577 478767017 433572199 720754285 178565122 157363879 857710706 198256702 266377384 653443853 502402159 355106038 621928217 802611908 281380295 415215524 678051289 515090969 556957874 608707700 502417555 569716926 185216119 976127053 718873477 144794723 617937190 640230805 666671829 542926985 165104072 405989091 78396118 498910804 971247607 727697408 898020963 822145470 633364267 506432701 959485053 972928532 383674196 805124389 295174428 517563089 792134221 218416988 137285390 762324626 877074749 953736123 565380159 254504431 705616410 295110117 747155617 435218676 67128004 913316258 632557036 384325759 845642536 36490928 224830428 196003989 622894741 570969428 12539133 905831713 948020999 344335709 541017208 9380110 910201727 726221251 405214049 785944592 761901037 806647253 848938978 176847565 816606807 262700843 463592991 966020163 297763802 132515125 488098073 861165706 684612674 7563967 276185788 939042977 38829574 762314066 372698382 772546193 16022083 127520424 457860399 507658683 491652751 938427954 480459348 650972535 617852076 312523148 509187789 2453543 806448175 893504038 168189441 441829550 905247939 356565995 789408762 826850306 382886121 292923936 936705504 910465270 11971942 784434428 354603648 260786209 136153735 98178033 343620515 416151379 221830340 748670848 137539231 471136109 143956950 39720341 337093155 972433449 477805887 183750215 462830980 414561930 808075557 19136398 690746649 556287924 690845942 629542561 206314927 911955325 981802864 555607940 162245870 315533851 417646715 10399434 325576306 147764833 163185069 501666448 141763721 29777357 119675536 502413283 581114106 837525766 55579940 741231126 215114533 106443197 691445600 419798881 587218129 239910987 81838659 48750577 302970773 77264542 9633801 258490081 190500991 47030232 265033009 597925763 155878276 719525725 222409076 496468732 814605353 267309654 173913776 581437079 772766935 687424374 793573293 244685492 187359299 69255160 87408443 771074197 291863010 785275487 494663795 234757770 862021459 280656277 603496598 291840848 303101439 846505213 933211792 18810844 165111965 801077583 220443989 839541245 851400756 81021695 67332331 349432913 669756493 654673711 460911588 395405349 181940169 212467552 661645088 300844926 948479097 234941297 150376544 745582516 650267193 261160512 534122953 474684032 288783728 855142233 626869521 718943273 711147161 960929470 482242292 505944809 609269375 977518528 576613995 265173581 541058570 590503151 453162787 676883293 112889741 122786074 58970374 864021682 910280261 598598214 565763596 2465861 805549360 806040537 827621935 844280874 31467676 499760235 829361500 86212662 494970306 610432467 885239800 134119223 200060676 170308288 703659057 95967154 444918714 254519416 2707198 849528997 447388644 946425517 463643958 584360180 363432546 974450221 4551624 50454627 746720385 751555992 417112278 843962064 570396929 986524499 216836657 740987180 911952046 731888384 848592178 817144688 87412878 132180466 142126204 735325991 643144063 163777993 395167288 113161698 373853468 466064878 597118767 229350304 43220381 380379342 809154885 721019635 776850209 949849364 699637906 222165068 919538069 705911178 919788743 600710472 547585240 617789103 728041726 29248894 985158844 232423383 216819741 577823204 986913890 937368014 252697613 53092580 238648128 329249596 355345575 860819377 814436842 90109096 316414782 835152050 303315520 965081314 569045135 118303580 547911293 575672994 562484865 969552073 778679164 930102316 989199381 266718628 687566442 126010883 843121365 7296169 288087766 639544945 319840675 618810949 542834511 199075761 986536355 399306209 296003522 64982045 130528930 942537196 599035298 773259549 958475848 623693742 706536634 224682401 513840351 637458911 472903644 142122702 350413532 385081047 720205458 328755418 291653410 544011809 331862018 316369298 522293131 601043171 815378130 615356456 708212754 726590861 206530420 818384620 736480359 229848247 202306666 276708684 497550923 656293500 397703722 629075401 862336289 385198803 196814490 690596662 824467369 441530644 266095927 548816446 127343312 174762752 774220804 687332474 540757218 747081820 630450042 39001700 860252449 140420829 49711048 814059137 738513802 667601045 226841538 854143757 384320553 30437793 897067133 318960562 782192805 145284578 111544872 944464951 364910237 46083275 396804195 420910521 627490792 476498328 659032439 803034092 435137914 188500608 190822035 351937745 713189839 685549895 556907230 424520033 612853700 44429225 493700634 730583259 933199417 330376550 766836610 445583105 363654414 168478688 878703671 4660369 132403422 486842630 560827975 294037293 211754659 799577784 17345545 739575319 114658704 14005376 708539886 181296109 377766333 437257768 819501575 442681388 281303688 927716993 622716481 922154374 512078272 901082164 152560080 496105767 280862828 488309472 428361051 819261289 697260692 789827294 3284210 941311007 264631812 927218024 259170861 718844283 327437463 830675204 750257142 60390194 952364543 479187337 624151784 798783074 323633230 736573535 802336554 295163033 773199697 810225547 81348135 595685934 882768355 990896607 834126337 345136547 951294082 584442457 21047983 968676771 282111602 242736793 781938700 392285320 558849315 306676725 772704621 227871787 178071870 863054459 476884036 727459108 857756896 914400487 491898517 167683807 148106226 942899738 118101049 632149293 965950059 941087056 904738460 256653288 72643351 935661134 673148174 310746978 887510315 602442138 890174787 599069082 683553334 981056747 748818189 504110021 97672919 405972502 256339171 464071534 911407940 759625514 430041760 330109787 900814609 934898538 646367291 549276827 969016260 895438365 418950136 738060806 133532 302334374 884685219 640220116 531651374 245277762 959540846 757888685 444749995 926629034 846698150 972083447 667414908 842309573 810661767 975379946 176754508 546934494 797144526 993784071 6167384 433965780 891598627 333749022 143198119 439392359 355036834 849463619 587114738 184255387 818930578 391464063 883663557 436837022 872897281 356962843 280481426 380332453 685455254 994526212 208256236 939584553 636706397 899716727 541105191 904129172 181123673 616074883 806842538 406101903 121971862 601375029 392870723 68280634 974435014 221418733 334510375 476540774 676954639 460047179 183670311 998396245 511238957 612085410 108836517 337369875 829545437 513893774 499536851 737574051 89679000 87467026 718637188 326428551 597580355 177661006 249617132 71516478 68192493 772264793 844693487 389003046 726173160 914222995 8383923 430699696 148412603 235046158 882484356 996214716 604518631 29674467 883200195 478374531 436161457 22764072 261646003 981342919 27989404 968379695 479396837 571117339 858772184 187347577 819074480 842962143 191482173 808818113 77869407 389626721 971354649 12623030 577265270 901671440 140679024 606939150 359474292 760761862 252904555 24931679 927918849 987836983 666882209 477657144 397274522 138644002 599033487 651672799 466933288 573319908 940922674 452769790 225763672 419328547 698137267 787159375 484001343 390782830 7850155 591688148 271864351 520365584 52270382 182000502 140700497 141258394 325016643 937027371 241831024 182887859 219795298 341568558 693540821 193977579 930336706 520015047 316802359 898537210 444309672 228134980 585097890 430315098 826769729 823995785 315163119 937810958 952069564 5129694 785486591 341576677 48239392 676960328 358493649 712413415 20979498 103852495 887010674 229439796 39578582 348910198 189545898 166193878 229333521 96550181 21957498 290161776 215376933 324669814 281873964 862733060 442180445 516443240 403817058 445360933 61934480 475170524 815620269 640015385 613559654 156189141 457626463 159534970 341543430 320640766 12195168 614264521 852417520 863689299 8627324 440884790 433287150 101954803 555649076 561357721 249339537 46626035 808559855 987822205 66665623 877028868 601496857 58567417 293428963 889065436 303509608 862577736 394244042 599117126 255744990 641226033 156525921 460052209 359693749 556289739 536393590 145788058 687883234 707095971 571674093 958949123 607031579 58148734 433226930 574945864 593661717 90751881 241601705 692157037 160748331 268493033 521686887 327942787 879482506 394442409 362837569 74440578 493547686 959308663 960261919 617213572 721266297 466821032 834175210 914848338 352355567 354295905 142603088 59117086 875678555 518710191 705449428 106234785 933174061 550154617 732632479 559458671 570742354 899437655 835616351 519545813 158975477 592901088 637600193 711735221 805451158 949756156 699980500 300804739 579625090 292109916 365137106 927514977 331483029 680764309 79415991 998464469 954674034 797455137 378908092 913273942 829740683 437561063 862300100 301510714 897031480 154023938 747372187 213102517 991290834 428036145 767921496 546100504 883605524 468621868 946570105 133097090 763221410 190358643 758148390 963334648 570636633 340208221 254282865 512240397 611826503 909801847 60032296 487125275 424629651 940263507 976663634 512976508 845956961 480198429 948255733 169585111 877518642 353294730 90476652 873290124 207708168 529700201 314352107 666031685 930318935 536890954 535668425 68044232 737751280 937801959 500411202 681204654 173943291 425972874 175243438 853232546 375489804 999587942 64037633 687633312 311487716 781920905 301219534 94082141 418002683 719055978 924862089 317789334 736601692 876559757 873746255 521177347 508898180 753197823 974726953 796795809 753454998 989048194 362311987 439430013 305769216 528953445 358970923 693353008 663750896 491467055 163936270 829877627 983248972 595074635 820487530 876107286 476170531 816901779 871104409 180106553 803576758 601667482 220245532 18551650 408753694 158922225 683629049 397058110 775726201 367799808 881316964 527946497 282210339 12182482 411308578 413146968 480022993 374070860 174175145 408539121 952762204 653299046 687503131 838645802 224803404 95552940 138932595 919268278 901273268 798385526 849682558 436341260 746053938 646255994 136573807 822359945 254743560 475997364 883062300 293109901 570594438 936629535 451613306 451430986 650413952 962450374 857025810 98871508 245541035 737155677 927871765 979251784 515285066 223892026 53391136 401508710 927036809 488075654 567603906 538390411 503377634 845044039 733214786 475172710 347565940 956324782 487347859 90659382 221610819 212300352 677569554 492591925 719322149 973445882 676529457 656590552 946056130 968416380 475956284 435277184 906683711 991293369 182414863 565425772 385149886 712488161 163950153 750690550 654723351 498431046 852753228 776786920 841122308 335527429 330411050 172863121 738121525 423942412 499170612 745126834 515010373 783501986 833953428 844784336 119158309 664081507 855085491 253211244 221040113 984457823 848212058 648679195 342322203 579025303 885495531 681281093 131501761 155645773 509259208 701530171 562881328 500012324 560967916 800189324 972868498 523121516 570804126 523156712 615986901 567296053 400557695 849286255 426072416 19928157 844560632 34581601 268816494 453931859 578868177 714448865 487927919 624920564 664675330 119589703 93124719 88372917 579414138 495004952 382927225 937134890 659937547 191267745 955281830 523334232 795347266 626284465 329199096 921930316 384977870 604023520 564114733 277015461 666810577 627871376 726941592 861900559 619338959 676817262 932259561 266801054 470163362 161569152 969094805 875572880 414372137 530928427 188896669 608367223 57112097 538601616 526639102 7926838 615270179 341809080 71978713 534810219 630276397 927005527 421373232 872707312 651423486 705272857 579329215 504591215 257950220 332257765 976751583 847170320 693087782 822354567 870088900 883165742 725087684 192837190 607160852 486152083 228176527 331310621 40117826 528605258 790300773 266246948 17668865 899730679 989782519 301376706 672408936 43016044 722652471 56196699 857778218 179787857 418854110 202661430 221030606 433452081 997966441 837940350 466905954 659332410 577101166 697457878 927387546 563717864 265226361 767036772 899884779 409244508 503814057 600907843 424752777 290547350 85579341 474282095 168864054 577230760 444031348 478981073 277170817 935601533 588790392 269717254 402927345 545326196 852633735 180754370 722869941 293292228 475975310 793482994 373203556 594530138 755893265 420061877 988498245 683627337 224285893 111350879 525614410 446798415 244216640 259377789 829834573 47359035 640058968 133920197 380416821 682621099 470976284 728554496 896141930 49143906 363728303 839598445 213494465 170325149 131602448 363013421 153697571 12732434 285520409 157855789 780888530 963334958 384809776 412633207 727885386 792258547 230583280 586180882 842466348 429573815 316026096 451681561 702389374 915997971 499957909 986310744 635061461 742769653 930814215 717097917 33546916 104673895 105685363 41073724 239260463 346913739 927455208 161854096 116878035 328363174 264431717 977208873 324826996 101147899 242700263 459965898 41867733 924542886 769416004 708845529 45854692 93660130 629328070 442095206 347404741 790557770 20067140 319377134 623057744 131904853 411694555 571844770 608443996 474852097 215669009 642325836 925920241 299740528 845253099 478033349 357975959 101624572 577783055 63880551 907312563 303999977 463433652 401358730 796505162 181362166 849245132 565071819 54197630 682202119 57353584 38010347 950031444 471328699 281762192 675204488 539473081 240803751 485387978 367647193 58947330 496877679 853108523 547445677 141527231 519230582 75600326 865598861 732982236 82447131 747111385 753337696 613374183 580348447 798554745 352616879 171046075 547627403 513682471 520620184 201201552 491404160 913147186 22766303 685149808 769164190 580601913 675801879 59417915 529757950 784904684 408235909 365840329 931006572 220692737 190633738 550853630 196391446 828727354 904199943 813398074 981705124 622128670 466914207 55277410 38802004 102911704 997865065 979292019 690775799 696175105 796750985 132088889 104200788 879369799 587880604 545655496 828778723 812644791 441000758 423963420 239921529 120234736 88223478 812588887 659410950 181145995 139952270 356851012 674732024 515144140 851419725 108777822 526437924 882197115 79720488 483858772 363589792 566606957 928353418 220514969 638298841 251136459 552706373 114307545 42279382 560020756 4749155 850309989 19911192 960607769 481903314 997906036 866877237 708442105 571760312 612208154 914440512 818846184 359824600 27516441 412331756 4697390 737115454 92659444 88884729 60453216 669156412 176545258 215371447 860968051 366778500 810274841 522637766 475649453 55045822 743473531 849507849 56425058 70545821 624880228 706113143 887572254 694347070 206642640 313482670 988852531 774286307 533533389 28550199 297830523 692359212 233969512 945379075 585920868 915113138 533750486 438374992 928208571 663021046 53662941 156564430 439182148 565844308 961369734 225642503 201533007 441513402 640845358 638204157 390486663 799108503 373622166 477918039 386061017 320445524 301232833 7776303 413353885 927270023 566152305 524615772 29677696 176687399 492853844 69434814 932594117 305833676 85981793 500123154 262906626 722988664 483335407 54203361 643292978 169956234 651894418 654480819 100437941 32536520 651748867 517623228 344873874 959798280 882830990 351232319 693799109 137980255 372580217 377225644 948568365 891216290 861387999 661563315 707163171 777704221 205360469 333681382 769076431 944749203 180819076 824142413 163466577 576172590 141691800 281530 280915409 673796854 325408682 112205754 924775933 963082586 151008143 251275968 238611975 981345945 343318828 200077507 750559921 585560444 670975645 459205563 883367146 858952688 930029673 655660265 255800011 462809132 917598168 936779959 241612610 512007413 738810709 393942832 194432744 513573192 604361413 489401428 478994114 443085222 379588289 198756014 79331552 900678603 60657335 555247554 420909414 398287528 110695093 25769945 908783149 776038825 167489984 868224411 510185320 305520781 695503549 475889510 81445755 365153812 169637992 697743029 484021897 784922706 491742008 316463448 793490975 545694565 9850035 916856209 26675307 486732601 324523479 664749955 795528017 175636090 271825591 201915633 445936566 799076146 795163795 225251116 851693016 29970997 515050614 442695371 642991084 124637590 533578731 348580857 58684652 429029600 55444239 873048016 570905506 582197472 408793986 946270319 98333638 217802501 730072773 649226637 115089098 959401476 735076680 281227767 654927772 404505315 463747107 309535570 485638161 736546716 932925754 652424071 87190952 464027440 961534810 987065932 341925509 164061144 408095792 97313515 87668121 293566556 124592726 445043552 985618268 80544923 358772693 391683957 477025835 385621874 365460901 828614461 243256886 288927894 664136146 633465972 915923483 29079303 622627224 319698815 625674 432070242 271196903 218049625 408264127 899704723 107103633 277733855 10143769 680658834 967882674 504783746 380617888 619739364 497889031 630975738 173235186 769521191 272409831 329274590 40260989 259648388 548981837 483474562 152383315 348391733 870422921 506060583 636391069 48989184 806646856 421655065 893904325 47853349 42537065 630323401 263318290 134227033 44807851 41251992 192432493 881599567 870630123 800486780 722780082 61332197 340552709 35267249 758172338 589169990 902180958 775544553 424542069 178498661 137948660 144161710 606528825 207252904 147708356 84382888 403683426 85069497 450189053 11830688 315924481 455778409 359584128 715694978 835176028 437872693 382653580 544364115 187580334 79807540 587111108 346145713 745432579 961130206 723186468 640036185 890956193 525523376 623580411 840214950 779140053 334061337 567663300 969489607 967497092 661352922 593929326 462502952 96389279 155241039 988394283 787011415 694852538 117003755 405726870 390011109 648749198 888787202 869505975 657682951 467674648 115161561 114239854 473126472 339649034 350752921 845028074 678530191 769955958 791663559 918398719 977190550 5247260 217220322 799961064 243828886 214379228 278246681 544795283 18498400 453243507 753983289 366487685 471856562 96144024 310725568 956497050 423958696 136760999 909678350 48809787 200322439 159809994 848785427 906414451 254365190 603609518 570065100 117347193 955155601 915785433 871552720 559559852 907799241 554574280 920343862 889729010 973991778 997295428 637196380 716944912 594672381 930448589 446990398 439521877 435388598 97951184 777418553 898716682 980619723 259353074 615641959 644816143 153313286 268224639 519425215 58192278 666737766 136846408 946437048 797291195 431907403 177656038 638362054 390892750 593537524 491032054 759710802 334993685 653862612 299047248 85028689 535141057 761650176 366961863 488381577 425521740 641284328 442794229 675971028 515666536 49220264 868301942 797700131 695474076 270303663 930089051 147557224 434861473 498486446 168595503 347765825 728628793 659468443 834377965 65483942 105111281 623883858 947438710 371058391 581133340 658865380 76425259 107530819 77939578 879411712 378281602 938267277 96275153 182331096 989707326 626830315 652390200 428524764 174620057 211256574 466008450 569187565 184325994 639842318 470715392 558315027 805961637 616185132 634381629 846376249 21550398 711861669 370794317 568358992 623571754 281117892 633022865 740353237 260723725 330936449 681409056 696328131 752207704 458827421 903808078 580220257 758399766 663510118 895814123 694178123 197684791 705112918 294337783 738901653 271049945 368272773 91493783 636399894 403266228 819065399 9298206 162236289 229821625 222578904 972361560 983061248 229950412 315396406 541948739 850379409 953513105 159706979 5187255 166754431 32371448 987077288 208265117 269035279 865038440 859081171 155640466 226636727 112976809 927862930 442842995 115950851 415842603 831645865 82119890 935234101 378251523 306300439 97237532 315843693 64290581 649898828 889302267 655160613 854900124 2270568 602879694 315402146 172334881 405810133 548460346 136349016 377494234 751831638 177389246 977971606 695021049 659917969 63747772 571532049 365956700 470043537 172791293 32946455 556619231 821929483 779014339 298449212 222129356 321688709 601941692 145287077 662882893 811275498 190300811 394023913 128689138 174966302 843190096 849359284 925822606 820214890 239940108 914130098 431071651 502566708 819554588 483916637 375707018 77880186 219151479 761404420 457811027 435725793 931104031 287172315 767133525 365196881 63583136 837864185 883641458 976287198 629830020 381759881 622266061 886513373 444151944 276813811 817296037 384262534 906709508 775421596 446240127 777038332 220530795 895391868 173922279 805464850 730958938 340062519 609678502 549653279 233988635 531588964 52055500 623878827 287190500 664053534 480324819 576355499 220715915 652327648 881812366 917524319 83585250 977166700 294661760 491990453 456622413 240119646 262101725 704550730 505201573 330130486 477725965 212144564 579413313 326870547 918451783 604221195 183190748 852962768 59597629 429009686 941741769 578848560 648423871 908611035 480463655 259922648 664466824 182637880 90093076 31238885 156169780 665962302 597329364 331390033 258405593 106393418 238988246 96325817 146125317 397870819 139036230 304094491 33715416 358445308 188010717 670030989 175687995 982149196 542953124 88249869 252226827 636594004 647101580 882458631 306270780 475237929 834061937 608860236 100480262 898026594 691711525 861184844 885355312 441091049 672738907 566516390 708599586 722023749 451218751 521583667 41735514 154364589 203174521 771426353 440517400 590968422 374039891 397679518 467844152 534727882 512727730 473475791 196707873 62129120 278981974 684432467 955129386 138609886 524136368 968126893 563480743 280350931 936810111 662500521 810409772 915227992 458520951 439331797 264346869 58942613 59067490 396600302 88242439 238061054 832296923 590739310 46099494 191110285 494449023 196895149 354191396 343777830 647460413 638171852 320580432 878299146 405685239 464293110 920251119 921052625 292622788 183350792 761463509 339207176 129546555 772131481 624942671 471550618 345469465 912836329 189080705 532208492 193276488 307574423 524450803 779990641 37580278 827602772 78443898 44992852 465490830 9783027 702041822 90406022 9662142 986119670 785464671 471005234 875045663 897515927 518637985 494244388 182837813 619953553 636848288 328595501 45700921 631802512 28280971 202207898 781116584 45992652 933703168 815307590 403343503 916222896 527891436 792568912 370413305 183255646 996836874 832130924 940657858 921331155 467444802 308083168 835638273 559085585 648315571 50290269 757250947 927877344 556476497 479269433 340952652 297706039 400082744 499780747 103897465 603238252 988210805 752488656 372931676 547632692 284838589 341983231 616047715 185030069 665964091 905662617 449689142 375347680 186636004 970050484 390574543 878325731 993742892 87706982 565990650 135985103 570200096 761557150 524269924 438221953 996104064 121236035 799466244 96963531 145089468 878439135 648172106 595967183 504253993 373094217 773118713 753642608 624983079 117487532 763997869 454493173 80644324 877161327 228850592 991539162 616378071 774079195 406615839 60562918 421609970 40197478 195676107 524237045 803212135 527119610 691863430 904935919 520524669 26192001 619269227 943441423 64577524 164814802 3743894 751691092 206978083 4319619 263725201 786588273 373907070 400132850 739072506 519453914 247033173 836638507 374618056 621379284 627737620 910217041 417835469 123095195 38141575 783291269 786597528 461904695 945654685 116626212 767562393 724039834 541392088 807983219 68351233 222520890 634747199 577158830 527045084 427023252 519584359 56591431 321487699 71518705 321063014 22305911 794094980 493693694 553325036 134621474 581101255 500017940 225415374 937964973 479434182 367999454 765063983 994569805 266778118 337889074 101127916 15720555 227104094 109558165 842739634 10269159 413331114 663839353 375808534 277298671 579260358 802804579 18041909 368392195 82358727 717386190 918345793 187677103 531887312 119477390 204834235 32761799 171468171 499913267 45993983 787546923 332497990 406717411 813634445 705904948 527547554 896859964 158293088 993922410 916096616 622411829 375265871 240586541 46139761 260209135 317552958 997077802 332092250 805843783 489317997 95167080 471239565 419971206 588354504 550066419 328757835 34411355 157021887 863137997 408399702 535582829 960209384 501844486 539055602 151240506 431778051 556100368 674768658 341880205 189474644 157635258 591876951 35503933 814006116 499010797 231514762 815877614 757706702 26221518 144800809 915893520 277187926 124239970 634281632 674469244 399259088 854134756 609103797 519918828 801164260 160366664 742445107 247550756 422264843 476513722 979305463 911837827 794962451 719590678 191439704 516981864 181209376 469821103 487058198 984441101 504350744 968490777 169482195 815314659 251924967 829612842 831037878 293058219 37304338 1130480 611548489 438092024 316666768 107066134 265934254 824865992 216280404 766757373 989627791 674618939 287007823 938433920 71884162 499732344 904410380 935290386 142540667 37216277 688338185 441946049 537396151 382700817 884431236 47500843 825547457 966192778 738321405 28452726 100873838 263672678 382074147 168725492 912789713 372157879 735024404 546060156 358980903 775566142 210070482 544130709 481316444 473222642 378979144 420010969 94781840 602345737 136624133 660400572 211113097 638148014 61107087 335197108 554064689 325102207 186569107 748056663 538365865 345208246 578015521 682849927 305624460 588716851 548066866 142604084 846951898 28877276 520385554 111840981 923476193 761807569 947390514 962753141 600235458 464761096 617347886 823354103 807114361 866786992 41234209 770358480 234457440 551421211 333384145 619085134 145726161 96467214 661427262 703127773 180113900 181781699 222065365 145019177 256138013 312174774 638604658 585122418 258827075 293419006 138694810 109148265 899796273 128989130 828147914 800171939 460182149 827294731 789632450 270125021 270928712 55114608 842227391 23012256 419649957 657537606 942944528 306623785 84574772 214855568 68384959 706059886 14454198 380953139 142134996 489927239 450022023 14273404 506446082 822461376 218378646 647854881 27845206 405751424 223546606 180472898 41951441 653604130 502929706 994330052 484465625 792996121 252447738 137254866 954720042 592763712 502182144 126667833 976342024 851945952 977549262 831167990 782166556 732829072 857548485 482436968 50854382 236715423 32926136 708663292 26835935 792514132 879128244 636712179 332199430 971994399 563760415 695515879 767547887 716250381 352330792 251333128 316440222 818312305 822275570 502989813 161064843 413178460 146932252 436050250 980436989 147507319 634930171 38273685 670702172 266773798 632140401 704236649 170810420 399182550 8348528 940764950 11015935 407380594 375087377 8363855 786941877 480052805 41180045 937173951 365584261 983187459 926874435 681273670 867464066 644876954 651782017 416662645 612046612 123088973 684968206 723927995 775561254 827593822 374646960 758233519 481638405 547010922 655434304 521153992 73034791 439723773 689607408 685566559 848847389 809213227 812619657 10705093 702184471 845654491 406240142 405172092 137425908 646843602 503961060 215524684 491338770 746150954 122292827 969060395 508974088 504912832 229306617 58991498 665679832 73966411 540021432 278168723 267769777 997955002 334513642 492979287 883553667 851908809 164213768 65668100 186798401 788332587 654589394 627092825 235822455 595195987 941702217 311836131 609518411 252598222 908901708 840267651 792739343 314680634 182511512 586108762 922944007 355755392 653771869 427249772 343775671 647322962 969175385 899986235 366711211 850540388 383749503 999839211 19838472 44044838 365864997 767042033 218005239 561904722 111261792 276634796 213964133 601427146 936508461 731964043 648378927 874919959 431492998 32775470 755538873 933110910 873285430 869809792 982373203 144561484 501084537 565516403 307951166 249014206 810232272 867836949 971824535 633820820 701221411 553154384 592372223 914607798 454831098 98693709 278535436 534830747 293817986 506450693 733116660 593983768 194661843 240115803 698443867 858920473 930531087 918788721 62580398 623512159 133728917 921692608 936401661 944919647 531033370 392296255 278051231 738142228 403481110 62295324 75601681 743349166 488921643 348410995 272060659 850861883 969790626 503008067 214836581 278690507 28031785 601128266 334287673 63885171 809197844 59620170 862911091 749623731 360238391 980591041 807631424 869852349 603146887 118446599 957434208 404784150 203356141 452770744 864009985 232070393 362289507 507219836 368555344 182120186 259958889 994482669 782736128 120481575 870673939 151205142 501420666 452983907 255401879 410781751 989451434 809970355 53735750 279680701 831284586 431614472 721285108 315193511 374204145 28744436 106102588 553358427 671177220 120597245 607882132 507342488 362421110 566132250 35751913 192627564 598235194 417541134 302649573 849835785 650173864 756470538 39520498 760937084 538580440 657181555 409021986 336190456 475118249 937025119 611120360 414023687 497437405 432772796 200818151 691227646 182891702 876065917 747762860 714668439 529948475 18562706 490490638 829573271 99551748 102372470 753052293 49067968 503425827 536370881 142422957 638724345 587100094 946659037 869399581 838414747 670886670 883847485 938076157 390849822 249174789 664702206 807153132 639685933 784244423 270304589 409518902 732938176 2414768 504427914 372502229 678528046 578222678 419129301 535248420 947680080 466909574 58971520 999878389 838093176 989288699 82455920 244064984 561213112 342385087 782446940 186277684 364929895 976766209 186584673 400783305 206295485 668555009 624358220 201911834 420578740 72499667 82527738 165675905 808078011 444579283 759385168 182148379 326954640 690763458 933677385 780925609 818405736 30230081 299840579 700143978 265914086 12481350 890585842 226866876 679173467 580213231 401301838 901530596 871990263 456788373 199144098 586150986 737838268 378007546 522752778 199139241 609269524 79268941 839229548 639698824 922754558 663319598 973799313 781986559 105300168 325244568 875447040 930517384 142818625 681331146 83737487 840021195 151973110 336723481 814572578 766676425 13392748 907555616 618405596 205268217 907997962 416267695 20702099 647026810 350179695 788820507 315978469 719820270 765017098 107855100 773884437 321101920 866661085 673083774 622398946 322635705 724601759 765350919 578571261 1861826 574759891 105898499 285729463 833614875 172971344 735458354 302350516 307242262 292907519 832277965 113141023 372409751 798732002 533270074 480621297 953004960 915676030 207870405 134250780 155314966 129264841 346843421 229882658 942868967 694484622 921078038 94038834 214838904 562742258 340256067 830190246 904614247 122795634 245177507 714794090 242183781 636191135 964221793 387995082 352801949 999022474 906803158 147838609 915550234 144884476 551778054 662950468 442882275 627406633 663392619 138416762 961144514 350820349 452655061 943426195 737613281 401484684 12202831 154961314 635617968 114572817 112959988 493106891 803289941 412902966 144599069 506063277 484345159 219731166 991600246 833449567 912290592 789149105 472742675 732408198 736388819 799177721 230865701 890551171 778944530 43994055 464436805 573586017 233673024 771862319 556069643 308741439 803145326 485587446 984395367 803610023 603712073 283417123 78427056 964948800 635066477 171160907 890300238 585036838 120884083 217414842 851166376 862236915 938721019 962491762 155920172 92579453 791078985 508071799 968943468 946507811 818833852 519731712 596630398 174374008 301482451 119780095 204850081 738544829 538562562 46874089 511728285 934010589 493102955 997042441 191392675 871084204 968227642 304018972 963522513 326912327 916110239 59155992 836431435 550976488 150377466 838410139 407209863 630454113 583254684 296311562 187361360 433279302 500600872 370714791 519575384 695122660 67849917 776565751 709804248 41279396 111997106 895846509 700668877 455558765 228657274 171601798 361120202 395800314 164864293 649020632 114488528 569249061 390067029 212193720 988271163 265922943 882357492 907369391 711545450 182326667 557470677 138859653 399316747 820835048 471697135 60507357 777410806 95635474 258435074 39972331 64944811 883209025 549384195 619699544 151524724 143279819 590399447 398482696 381260595 975408490 983914285 108664877 248217071 150708658 520614787 95807569 78898746 972556267 749281941 105745267 158319408 29620844 570910793 862766405 673187769 541216316 805378392 644974863 114814402 499428829 960789194 707650073 134932944 335572402 384808596 529781259 860271583 210290913 453432258 562107029 114233159 71074895 164639319 966897555 964507301 930520844 994141394 81533214 680625700 747977295 304480249 926537614 406001527 574432080 363574031 264822170 721129381 55757984 975431028 264524384 678631515 763788583 892428104 351945224 168122625 12019618 351968051 217650515 72857735 945937665 581640733 105557759 237042230 202898222 701995886 138032368 841985794 446922538 530076670 864871942 153540263 881338634 56996972 320078553 123049121 134391206 116309971 447163485 449432995 433649597 951042742 687763575 758387273 759281537 334943912 601011807 635842293 654697670 879618307 10160000 657445401 149857721 587698654 728946178 63002043 615899131 970246654 259885907 382353181 93056126 762643648 978064993 182783764 284050741 342963705 311602601 266479644 814307199 635361797 973077871 997381774 466568350 569334231 200788216 743846407 561426847 748347627 652647472 736464121 26848880 661714323 466626382 539187344 429357748 604108179 144691245 308054153 230630104 107408063 381252896 522124059 424259435 756081741 630747992 515246586 273716054 738622036 438931648 197204482 203957559 881277455 307616132 180659173 251004888 468031456 31606945 6725456 120590291 923212204 527119202 21895123 14842637 570879679 654183049 471751696 135011556 15813882 873697512 942619887 182481507 790983928 436456979 158471384 635211704 408372607 715993252 420055767 943388790 882374912 145599637 565783832 752905612 766855034 571322985 642968421 773440437 33994615 577455389 452437095 596009944 545097989 29872241 704429941 785103496 47901796 677930117 276052974 49132340 647071267 622529636 502546455 706954117 78651590 226722314 715439675 246913719 634302450 216351532 737173673 643418528 230993451 994291482 347414580 28136803 863843730 837513235 210106953 948217646 761180743 356041397 623096651 180095077 391925888 271844587 679020549 546087046 349088676 471824200 589103543 755607939 74206496 580449082 887840558 271787027 150348441 213499106 398431574 711760202 432031697 936464482 333428587 609216705 995536246 898182542 188526909 848807370 809218583 266541207 456295112 611749377 175890528 954982528 862013529 68192889 686821224 44704871 458010048 773119403 266557948 872878497 963028496 74788842 184294239 397301697 711335355 494933493 568567704 681407073 180874476 815312361 587066792 722117069 811181308 891603829 41067085 725498279 961495837 378820646 660048411 753799299 121245937 961096859 47115576 698347255 238150601 772783425 501096115 868429980 175260850 444487521 449332654 408138613 589751257 535553783 33005519 567470618 212253701 821751661 743845388 446948623 641527366 173897071 292292726 857254980 474774452 577572690 473606686 509908975 777633953 698611392 748620641 404726542 979821874 307464259 468792812 443141745 83747770 429662195 639992290 624075030 658789238 798104659 800666421 675180837 970752666 734568733 164731823 810839579 57310283 10947527 889963008 149457758 527029624 88643893 574559430 841946032 126881395 783430490 372961645 390111982 506387877 952618220 782840265 348823667 801921058 841641108 524193839 511021870 896687081 267687723 212236763 283283136 382510715 906031408 84957587 521227307 691194362 278804116 334560907 194718265 264367171 77871840 599568754 432980273 107543964 60823528 228144572 353507757 529677664 914681149 295512232 682965973 790866836 594736038 721763900 417351085 299884293 129073898 890682681 692162888 518410357 870106489 160791892 809115205 912263780 674704164 208763338 118637265 506493921 298471581 437767539 838738832 44692199 147146099 127061174 687435810 95885960 7027686 327955445 693564741 991058923 722717365 811554999 9620670 162137828 789746208 482894538 694788683 920621507 781973797 170036468 672901962 902176600 499986206 594860354 489843844 927413700 209624666 876070235 953059532 703477427 531287349 997709737 515510552 940313862 246951102 428171017 521684756 707739667 111427815 808759944 32591772 231879577 630565024 321221822 100542755 260682836 444103185 967226954 560551943 801489350 199313642 706726420 90238710 520091099 680540593 641731589 90395298 401902979 842970510 80437517 198313407 439573684 691337346 496269084 396730662 427702551 596236632 710214676 343788814 439576733 258484703 70585299 444796277 805152280 100943389 997143964 924421472 688410440 356780024 188865952 340924102 936628814 437760238 261390016 826583050 490685603 85512899 41885186 680592267 47295244 351381928 620574220 337343978 42950266 488448264 335492093 862419095 391457285 798019884 881812393 653848137 538362555 535578209 63128899 610242133 936399649 437484491 560324571 421219855 130322919 669522974 127009380 657217417 893113655 671946416 735181510 760388579 251468079 590827955 553446067 12157250 92188669 884293192 204660754 568689906 232960841 834959768 857889182 898003996 397829269 27285737 339721215 581793941 355456686 571038067 476349618 866745178 762622900 727896302 105566402 939142179 582872689 504249089 426869259 557874288 582318162 341706988 999820364 817038018 744863081 466253425 210885851 406454749 62409555 436431106 137499273 724180739 479153500 845981535 393917968 266829980 627713789 282202906 19966374 999220265 323120353 553617251 583945248 329228267 502812258 480348101 157497762 958171791 48564877 343136347 933227726 47930357 614066969 204441261 544103620 234973768 800878771 437547787 307260160 737581190 499230416 678857623 612500439 35093085 370099753 127734814 964786024 910338615 724038392 614414580 799897387 698570634 501649214 122316585 42121081 789839722 905223967 959510160 651809292 224719642 415435200 391982575 509201603 444171297 311399864 777260720 855413804 352707844 45258689 611012459 393594541 286122432 783062629 278328460 246133324 426619474 583249119 837775766 534668218 674763534 921550259 490568305 489551628 598832670 144104409 353026406 252590924 499093144 368935879 461672731 578579398 772030953 390143234 783111993 830897503 174220563 482541285 345446127 76476523 421314985 709073060 208306865 487841567 664265704 414829429 367632850 31571318 151856584 335429076 192720786 227016698 188640410 973215387 67541798 349721261 871414693 20850152 791465866 246887912 950784094 377946226 401986799 399158855 830055828 689206060 848691124 816040750 691320166 924262371 553200407 627167790 314564357 633296450 678425504 717471976 510936168 140057372 227780996 531755140 123349745 57673630 129283390 423580206 675607031 175909420 455701189 857999348 503880371 893069950 71161581 722298032 953456346 125985330 75597113 505449891 509483476 302580726 165564888 17463062 201086044 921052559 660469589 67975210 371490057 553837972 841405034 319933852 634172312 175210696 724366542 540568640 970173045 152319634 718859568 445399355 621446314 142203407 496193093 398593013 558546819 7153212 464300618 992452756 527083725 2780156 846996104 440809218 650457612 459768415 375855576 549519617 430979562 75034810 810947037 974622655 656321561 131260465 416836062 381842056 994751706 617425512 575176343 472743164 756543173 468327831 729617529 88916706 568000449 230550044 369062183 50119550 155356300 170794286 695492824 888065880 14378421 383296794 16964700 334543448 245646337 132241442 939521110 368161186 477743835 850626859 153683978 653017653 674459011 682382483 700143646 33152408 888280774 137325277 713831452 691741874 690492454 425264865 699087914 722525580 918367778 374049379 199581740 197076959 784474776 207613149 573015768 680205570 747521278 54957715 2720872 318108334 98341251 350860 460469135 602339019 710797717 8977264 595901083 175838938 602181504 39391523 815530312 731409877 224809343 868596052 35229412 731715779 333427398 886207217 180238640 153100533 381063933 629363943 273013392 858988685 786420504 684558472 462801483 624049877 548352604 238897531 787495051 828508045 623075991 446786145 759852384 925792359 968545965 647257985 511855247 482478489 97296689 696427067 163205475 195941610 94568581 679825260 366956068 201585834 570519620 972054609 994502502 694948033 723372476 601738668 855164925 189085642 871351345 64963304 991701866 743926532 844778817 997132994 588406001 615420741 453641789 787481256 358739561 480683414 532891074 347353251 382788711 793519718 357156134 192590333 220703913 764923024 33646523 209738381 362765512 588278675 115114625 822622952 650207363 192914377 724220197 249539080 846994229 222809966 740708241 624174161 170437072 663720337 639607628 810528748 974288010 476960222 224355790 458877734 858914861 722911984 697255884 191826198 298969767 194888765 447146090 537793809 464198322 642027693 55738628 667022760 93807689 851822828 811013592 769568479 224969644 458833005 964029714 707479721 365667581 454677862 115930163 895799279 387808148 960539621 745023698 447048472 347353356 445178296 872881389 488299720 781108338 313137096 114980980 763365355 935245744 808859269 468956983 551782797 505202714 458600249 649439983 692229328 759910211 226228962 893973542 629854024 402237227 421251440 213941406 30540061 330898383 410077286 731671460 190021741 842263262 941812344 88200069 316583699 76147871 448254493 902240656 582754404 293219547 590276769 524718802 152284701 460825974 436354075 862609267 69527047 517862514 666397584 857605275 797539627 245210575 970150324 298200886 468673852 801675033 459414179 205511138 961128642 734819941 780951048 628761335 481473803 474997512 470186600 325973921 758934477 826421334 141830672 736084840 614263114 833863341 34621354 977725386 278977353 615363003 957114814 237875779 244060906 674496456 607594427 920018030 482005783 580081351 278058901 206420257 483869469 66206847 681160487 968845792 356166908 766489228 279281931 899545670 767239141 586924536 518817612 797455515 846459294 240646366 309583883 282391276 369910478 253550968 100944388 989325633 638700285 373267737 217807750 225339022 373306847 509735754 440084622 350287872 362613497 463978198 757533387 491832757 958826524 253483073 670439667 672818588 797699808 238287139 921902822 959909627 246095713 699220501 184873058 548026581 426793093 36267501 953089585 902472879 447917001 591248943 30889332 3993767 658605338 997147845 862652929 841712608 483778172 759037297 300768856 696084705 436343181 964196428 396855690 372560034 28454463 512162955 668873494 869930098 706019338 928466942 119986485 135081292 973873125 300389213 441957839 375638525 369443308 853088188 662596682 449387656 550581928 202464673 848593205 897463346 617662095 986334453 3319345 865362134 606351437 591261748 71684641 246357001 935350743 218943328 855471750 470408617 567545450 752924908 386799930 378084923 405100921 426089899 678480240 612666939 156829637 819146768 677713790 814844261 1782081 610986761 495440253 405255632 792038822 74530271 361752145 307790519 507607988 451752130 414187973 696327928 687224599 77894447 761981656 205873982 556759882 89235687 479697905 548631895 836235806 241603663 613937667 299797473 697193187 214841321 710076711 759649228 954794106 393800958 670383432 520722635 646174460 889063935 159296523 842782706 974112892 519353782 738814605 460964600 237563178 259909816 388522710 172056104 393745917 404119610 726256825 190057126 94024548 216094489 892595185 955167297 111111881 370814481 451862322 823100417 886854064 510171882 80303711 819707605 570869601 133616076 811932072 33328874 622575244 593060166 839365572 429335271 127080013 514352133 839416252 862017086 73639681 725394296 482071864 394110614 748245098 473454597 393752988 448117577 982102721 747623888 4268118 892520083 8061546 20536558 282568492 478136119 823360403 630456794 533709209 573563860 745771065 338598543 122616005 750223018 726120952 94179392 396454628 381240681 371611329 282074977 858344245 880873160 970037211 799454017 104098851 984578358 297690221 623269958 656650672 683210842 785000131 68988354 307262090 186960937 477599667 864788863 300565925 118080169 759366339 317302408 381418283 602171955 145412635 172985187 652989646 782338316 946492616 374563738 675986828 741180776 271294836 671418742 178399805 914729890 479733623 618881834 469275455 365565785 402903629 697115907 27581767 297305138 857512723 444329473 288282150 663202458 823881431 923779751 230632084 911028594 257251452 268455327 420204453 145068361 966258977 514181665 695611365 342211648 421362862 443091623 327147849 34372491 310132158 318355333 749878268 654863196 42552166 407047489 300128959 372629845 26082934 255034621 64529147 797804696 473572912 166153426 633867853 376203585 834233143 578320912 755654450 65600256 191468264 362947348 141403990 372622457 315269265 534423780 828689771 85086716 628529776 107610758 407823139 434607669 103012264 820276839 219151830 617176797 834531629 27991426 177833902 652511699 536497787 981569179 95573358 510576662 649684589 956178219 496989548 186397045 546446102 741573343 741671998 826169580 801543338 256788377 787649896 676232745 951689941 987306671 274117724 750463156 96344764 35903953 285213847 764266894 492689185 274588159 729725659 390143875 749565315 211439325 163321187 916077796 497402915 538714810 674756100 309425952 263035670 83314874 730225723 975469100 389008934 67584277 300027235 488012582 430853235 433384015 533857330 155775184 430694275 313743865 277345894 853384683 870042986 916644370 289607460 518288203 878885524 167703484 817988210 933918816 403245500 337248994 331223367 680867598 219786095 110193004 881169521 426973203 299344135 479484105 41688575 542239382 544751240 897310863 482455745 268942333 648903973 367651468 316735359 495591104 72422946 563782366 491324416 585402095 233898943 821474899 829003085 366673387 755451872 6678127 327924639 209934441 816724535 832903245 823949767 233328462 546165627 711362866 646341554 416031773 729939162 343019910 899666358 824350869 674081707 468683106 491635637 988635927 526904696 154774051 286060287 969948646 569042683 613225441 147419398 652726519 845912620 742162550 900270974 895512778 335030232 866374402 260679229 207777921 285056536 575863411 184345773 235090635 813192394 297561405 67710092 33789120 470489830 149605678 527960682 731035658 672153577 101572501 871114890 104238540 165778959 883934293 343721308 974505914 899081753 44843304 181462162 326256801 310921209 218253054 24057612 840058169 769367666 799516035 789148530 118404689 374146492 838188682 608762218 780520776 179881986 332442233 599683526 461309616 978964480 463468135 544764608 51018474 406004527 511680780 138631483 697811721 520461989 519531679 748017285 46423333 499835469 290106280 470132293 403785744 223990266 175713557 37562485 118574632 971062378 519419807 796318415 711422391 738165815 293104846 642168527 919572406 230670579 626142889 154745431 913697858 756916813 826493321 376772198 110919020 420425417 402027289 694218484 202266712 539154062 169714015 548534441 8281016 21120547 750932166 242908379 91223500 169225896 416948327 764817095 924243330 238775126 97133241 377158929 740707137 442501014 216719768 70732166 87717133 991109025 930437581 477719951 485613714 12253122 267655187 300069429 735992038 672372157 409998096 915752141 124044468 721497116 402465034 242904777 573930428 660931103 202868963 228910125 672792855 663268406 543329636 543672096 933941966 495136209 188694003 462012052 564277851 415169262 322367096 567808065 287405096 247175382 289573852 309889043 296794633 726200712 958304093 682582625 100561013 476817493 983956363 859985244 298002251 474377218 945210073 808831804 44203122 319717316 21643251 275022567 782312191 705807229 982380026 470209210 26868732 796286669 695482724 451277176 475687735 784369631 19286248 52411386 528158012 515322880 189010965 170458523 380176983 842085501 2365961 240854143 511618001 709251523 971789018 42790324 935276163 909034793 770335767 650087582 899709108 128292094 19990222 79705146 944025776 489524236 305931912 79159 558208086 477196625 731210757 901699818 276044429 158416689 283058397 106868137 229274550 202967021 731662326 114185642 631765623 765686245 996902748 148852140 990593436 514102578 170955583 277685083 84589930 430015419 217390698 687077585 866995385 192905767 950402670 928847343 873726927 614954647 769366841 748324985 435367820 342780179 396290029 659595238 895027417 85543081 434564841 220144643 724154809 951271886 869208726 826555258 454609791 214003876 103802798 105593467 70136125 832464692 372097252 205413493 843774505 645060391 945808632 695903844 847339290 214390930 286390387 161788911 362198231 426545582 822729626 563766129 648476340 34381581 33320475 71444291 631405798 582633917 38040548 325662826 735312953 976014722 649902173 286545463 143998913 201614838 900809403 173073934 100430840 156084039 324194105 546673269 147856165 692048166 882629621 722338389 320887573 201905918 231091622 181346701 283809477 925939345 281228954 131426493 728288352 549590746 201637432 226254416 440326313 897400742 673938193 971665391 136699665 141221252 655559915 487350627 699286238 251562929 809773830 623844658 608599067 910033345 735232707 446063362 136158424 601592625 24883364 645318040 581298272 562185037 682425065 493375825 281576222 168659719 216338572 607787819 813020285 351709209 459761921 41250668 66590891 928582911 222702664 97951662 307810920 793728907 180997156 640791339 96419328 709206331 306088869 396324869 30721302 505061987 336574277 960974674 249395826 134831226 212538819 197217528 714450813 347271482 347681828 153328880 469988247 399305198 385072385 73368442 510245493 150677593 391571934 991359832 301046152 684382447 133812472 438967009 589616146 114063272 200542267 798459047 482655180 972940014 69829848 304912217 118248355 971332529 286048786 192420445 329854350 348889001 661269794 689718541 515693151 682353837 535836102 873051018 230618349 520545356 350747187 459809064 765992661 826932824 514749681 915304340 782973091 795479195 361003703 406021690 684332880 148168915 155592976 625649574 49233594 456156692 721212889 367746064 415665317 31004626 504632549 726022312 483763934 394528525 267523991 825253151 176282118 172922745 186204756 499298982 673459111 858162232 490879172 754296247 984777832 943340965 611788681 522221641 350065289 941766121 548304259 816483150 388598446 504055331 347397501 455960651 785699739 537630964 156784371 610682454 593774940 505621848 144047468 741847195 522676675 285636492 177501745 377272412 462385560 927549279 25365957 976986179 165882580 710940867 14512934 302756629 542946981 816346531 503963413 771047168 279826503 95801114 358953764 62163058 561378822 254498625 762746139 453993685 136382303 634031934 236694065 247423927 669720331 643603735 168912220 122297396 482678933 40795472 501845557 988124878 644991538 464958828 202150021 5824773 124662117 462007091 994610672 230613065 243636842 251153244 385514197 239372838 317688585 583936642 53157396 975406195 302980477 331578235 230548092 473952402 606824955 444350854 943795730 560206387 647585898 402951219 843473786 19956040 434588210 556042022 311196850 44138975 590678782 877500201 597373606 118029638 592477317 935311900 492425056 264332171 739235325 754469511 78305385 835377368 903276293 490997345 542746377 885487788 862371902 715558468 882461807 563348444 966920042 894627778 285017118 748944629 189919400 549601238 266891364 18066070 216979982 315088308 23334859 909714316 619726939 807896215 337443116 800031442 745963902 180516761 227476825 601105256 852360908 836251695 256459938 204127811 668831541 833754614 380316222 961008342 271389146 341613408 943717186 83012056 305885435 348135170 527132376 170110874 401612769 74632080 456172620 116287969 429042142 398489717 568556543 938221662 593589151 146195294 771351374 707946098 825286555 845227863 795630025 617331924 921936690 504906642 987876537 254351015 789227332 121471339 661289487 688010123 965240912 379952100 341350332 400997127 498081266 112138643 538677509 682038025 742102433 859521409 783722581 332467539 756574348 970943636 639864444 692147938 546083113 402552116 135376305 521516423 543071878 390450822 351017504 153278632 46579860 762828000 696947522 868512385 698374444 311569658 907509380 76415727 815921848 217747666 830799712 539553852 363153007 448836890 612319976 57286690 546576956 607234318 292329600 377096763 687956359 736932109 136088276 817975896 677729018 645095970 743267020 362054911 91552990 482418731 844320860 704236925 5243926 418177717 410257502 574496462 574868488 690810876 407268674 469487364 163146180 431148228 290927055 61003041 933838783 848863063 940638955 234674111 560475182 525294892 494476318 10425600 564454404 619402123 764803248 261563382 986211268 181891508 740076047 775357257 9342599 772389282 625954060 518073125 725052087 165985138 713153294 876254039 709162339 280510009 460077623 392339113 558536188 576401092 759320789 252909167 509824240 409560168 196053660 432024620 521157578 469011970 607160768 29125565 787014086 845535299 514340617 63315518 481902362 648947800 246955813 784088725 954496885 671041433 530020971 344922320 879432464 664874208 369157337 45424315 619777389 531645323 691198007 764090300 373914140 231485051 329328431 737402542 222613109 679433813 914841869 444006534 834641210 953612063 980805972 301216691 566324666 694393333 744092626 653907367 518600751 14943361 520564139 408287510 830491357 726844391 831578856 228433575 699178480 524390823 867269246 899791700 309857205 143260940 763060651 211924979 720380230 616025429 682123568 961177756 13494101 169966489 495505678 94770251 186770298 333248429 750256081 299220992 39184954 501441219 142149852 337251240 622960415 89367432 186578277 938408089 437142845 151879068 328545149 660305779 195005333 552834792 722053360 167771306 219822391 201911224 122990594 339258553 297505819 980824574 553640733 672259305 482793595 380716635 124111303 683618117 41423220 284822392 502502727 551405495 642032270 334893442 406535320 672424984 738400198 902620786 867471039 21724701 77849743 22184067 237832718 442261790 650173317 906644274 368719817 157232218 605067819 736876187 440960719 473936482 462077243 55849481 23206604 309141984 984770637 92445601 567122193 843030388 181836105 566477125 810035106 386723197 804578526 491331708 136920452 93234519 435876544 933473524 154129466 288553301 894171460 496672804 145202592 686092148 248704856 123118552 247818995 673516766 88222617 881040649 607725298 924977927 839945406 204477247 352505710 141405240 630982682 190352602 678325946 81304281 56380073 174416422 947198683 821401480 42816422 49296333 558473280 721760657 181849041 749219966 892795862 125644749 898840854 208943768 48103906 261460239 676973980 452705403 508230210 472213734 604784622 228035284 127182788 102887729 238179650 359377787 106464645 846470998 882313628 952988784 483404381 537043983 373720096 890860792 193612662 353778530 83679465 522608946 370933414 504959289 697336340 754530083 390959847 251564623 384939340 930494968 978969945 71901309 55004227 21693753 644355257 317009109 226068408 673055767 799617930 15080670 117145340 874361293 521289865 998012649 350880450 63414573 229656938 693077886 712122056 648464470 365321636 258155233 167151997 19788686 790995862 576126442 469519243 659513705 34160270 578690018 476092909 898308926 447012764 441922961 137341058 469826419 409756515 791756436 706807553 654382191 241245592 862393573 274344115 564326729 890826838 238903488 709045925 113335399 450824270 225844743 722609192 12823436 425147381 593025211 895208654 981255030 848132674 934682945 484424628 325337605 172403672 69592594 980892410 452793783 614904291 433309942 141975666 171410069 181233374 157338759 226189553 297943860 532877621 756604116 613296232 707636932 229748694 825199149 24664335 876438965 331076094 629519572 39837719 700791603 485833333 753175832 251991321 524432187 595282773 274440534 810812915 887537646 598575386 842011240 532932824 362966137 333517269 252307024 412435097 929774354 872980904 296864289 585374418 108763970 12014476 116631085 845794052 883283763 675807582 118623017 180167183 568943647 262437510 970872717 100730174 246342149 110154631 242154662 796868898 688268478 847896212 460947510 854423751 433677320 459156043 811582486 716043923 878385388 528320585 508966087 862504282 918119868 105028484 710126607 459232841 823024740 122843569 421266812 330946513 52134325 966364168 334504932 834351868 5022337 561850700 511983132 562265619 606817539 213244179 801117478 382137380 392391358 791271660 278877985 302525383 243444357 576744931 291785829 490632384 374983703 369544768 154426684 928344329 506289660 105728814 433062258 438638516 352379334 314298260 611049855 405201148 398460459 143604766 167715082 79906485 186516516 374733141 792077906 769011973 472942064 438725460 160623929 740419319 576180744 276940561 972833141 495923711 586279099 222233947 211501998 85158820 184335247 544380648 712146271 458868356 449747893 275899721 542760188 257927767 72459029 224721733 320658270 175812892 899323122 627126874 601019484 847648238 215157501 620597313 226993464 277890462 238679478 83213309 819440066 812529318 536829128 137728134 37297892 753074582 216026389 969587045 535654980 195015029 723044164 141520841 251665491 998304925 574433421 45826360 934813730 851209468 390051533 955467389 225462049 695853370 22755799 386880729 606617244 200476299 258916982 830930039 305993382 676272715 310355114 169788949 354461978 855168862 337061316 992376891 930720437 398953802 352645099 243089923 23604720 485690807 177770570 416345127 473257160 909961755 516595260 25409781 477940810 464136808 989035293 75093003 31817973 571696942 498005704 904571661 395661590 964673005 445835914 942183661 944922193 883940816 704479501 679909564 381380326 889038521 939058415 558130951 844575315 98575894 349056477 921500802 487189083 443342797 505086464 868606022 334983387 48358549 462252292 825264277 960757446 804179236 257451227 396677857 97518890 95262264 402062058 56359366 302182782 900973944 211963509 136507048 722564266 688465107 442143771 983519821 788055008 161620275 985558566 772775524 360157890 905689785 405710805 147879026 727932744 285894932 470774064 313997551 604384750 593166851 601106900 546305362 513223167 936220355 779557796 969779445 128201773 873730617 85813653 200795809 596108035 650436003 244068509 782364460 863982852 7277221 262545304 928828239 898907570 128145207 416250338 316303979 56762343 545709112 50282857 431993263 806245166 652317676 308512457 698869611 650299648 292928648 758529660 336704813 96494618 248538002 48298287 837992857 636751087 830928298 795911870 725161251 223596069 794663410 605233785 997644369 556898078 399207434 927872412 45819404 806853021 584465365 412836160 252605551 94478968 900959691 138073457 969691622 585802798 606533980 94887293 538333540 662377075 732040383 952830498 211993082 247626559 597544829 605595439 539695669 206700566 740559820 454372689 229759342 178913495 695218536 788786714 711133875 148151365 319463848 921636502 508681494 763978961 929422343 793909624 510713292 411416015 470739556 850176452 400660416 363959872 266088127 855559637 291073840 695348136 231343199 191950525 543449540 771226958 467040230 531420869 124951282 817165149 288928028 388342029 760648744 746133843 969547254 243687758 986788096 234244004 561385491 54331399 695951829 599243195 373934325 541890511 733892411 379930204 964770953 320570167 523658509 470338110 22902197 599545197 923875816 968764628 473774107 252900254 905707359 19988461 83873869 266291829 97033460 14510421 731390014 411727064 736868529 681880252 704681469 848239488 433277851 988355268 114132449 770838632 826266088 605931457 275027396 518968105 306904807 860506776 128046426 433884343 258422552 323863879 729939066 740346520 343636853 222381669 536667484 145343279 570765112 805933446 560350701 851486496 679553711 131968254 836719901 69367097 612421895 555756246 285129563 214912531 940900662 709107397 483088742 455404991 941107310 303965894 429427758 894283216 860783262 347115706 11430893 51445774 113687826 864481039 93793245 380954298 16996996 365178429 435904993 701798595 445279407 668311615 721682763 444760192 687167747 168191593 36935011 70057526 772067212 262487444 5632243 527579815 966788390 533227527 724840678 39942149 36121033 75295073 993075695 642088583 372204548 458485505 43804787 326544992 615391828 870233921 671597801 775623853 994457790 713955756 356975255 60772514 800463218 366095295 752467691 802928794 381324244 510884153 264470811 682920790 939495399 725355092 816502349 295049142 689485156 393346578 935036027 610246873 773981381 661770226 751366575 237219192 699006718 883266074 654183558 951944009 692385479 786265162 872272043 915067657 189863316 456935026 975130311 150987778 915548304 1822919 965110093 115416203 469172941 530373583 54217400 767781582 224114199 395549321 584029672 270532923 972698696 54606855 633923608 524762469 472337379 832995123 324022840 736208939 874499866 768511372 190885267 594275864 50905108 636905545 714532554 400497275 830548918 84129393 155000424 46674765 747098001 506967180 931461907 155799477 308083165 887301398 106138784 280006215 755723976 209732706 494573327 50053974 642361258 681680736 811518453 910736077 41366528 2723746 643263864 53671636 826927923 5850578 763226447 544618619 888025512 759632838 50665013 423597437 734008644 456304747 577355896 993349586 154109181 319214418 663235827 148389224 528536571 874593423 384746166 332346280 595262994 174685017 502216306 924023337 985361629 290444586 267387763 248665966 93034417 401201473 749809491 319702854 445906889 405503489 514420783 610846746 432576431 98041773 239964570 220824910 864161039 822304528 512168868 155056265 158006341 63460324 115626189 643700175 276956795 796359981 616855845 933038269 775760380 973005980 316228509 675963862 340890026 844436712 544712969 598604091 405020179 766054047 120938207 882790179 273603336 149560290 722963003 318217407 579297082 734866612 682944315 120323453 687682139 22595695 389036408 269912907 225561249 467382536 495761643 339068112 498854163 812855314 684704868 489535521 790010265 774807121 296620607 946261833 306731821 288177591 825627637 668699913 243400222 380862243 725091476 138158197 594558152 732810679 864973170 347131943 951866094 793925190 878682252 503308449 506996040 329192003 985902022 836269653 807230410 501056401 69563791 413703747 813064752 57486338 358930045 74801532 665421983 445238690 993820414 299095617 806430036 24107533 918992867 26667689 119230637 565195437 959378515 7881028 78162162 448405988 787977674 275257753 651713281 959289329 139818669 439159281 419363423 688181091 532933686 157706235 417854979 543718962 959650909 665496350 339851368 726296727 699736516 465203183 836274209 491919768 859743690 235911543 910333812 787816226 613943938 759658556 880466304 892740657 612231546 812592682 109341672 3568146 359033205 224991364 578535182 500664260 609431573 672089114 903937901 133481283 192899870 443705348 662261311 893776186 384008565 867717439 440967005 152053314 83828821 526630779 386361894 348685854 891057362 303737374 631501314 13779601 103282581 95542145 963034824 416951723 559138919 134628811 264254598 206136311 994345307 502305398 49432301 411378988 997251502 814493616 173554574 44630235 546938055 309043411 856034613 598363627 660091706 996700892 471242363 337506545 242350911 226368110 525467970 40955696 722549659 795842174 26773980 507949963 360671630 781243493 104834103 524193947 583083490 13814634 400498039 462392545 528235632 949636692 197510805 810161802 196962069 609710545 887720299 397303185 399873299 192808862 72781048 943995896 818655679 920017394 720564120 261972324 941182924 394178871 640439448 568919581 128165365 765167812 44114999 358647622 778188135 200075812 360402052 984409465 835123671 107562720 38051949 590294358 760808369 961375789 430906886 413260429 449444602 592394605 368195164 154590806 369901549 470155878 896692490 946012537 208505565 22982386 240736593 564819955 24167253 839298709 279776625 611775973 259901180 474013384 867431022 915665595 182566201 645331705 773786558 262776154 159717217 704304950 916446252 439058023 61283734 721358580 933421277 539760090 591831109 712176819 14133202 694051486 445087413 845490505 102421453 241318570 110116948 921218117 981712499 880560051 14903926 247161130 689764345 475031415 459666811 814222310 858856987 724073193 580520053 622575987 214022203 275309833 61484290 644480716 72222702 634952504 290188360 209194099 659677754 280131710 560997444 726313864 256500368 909295012 142554487 695092724 220110231 474559074 427061006 896667759 840061812 702015670 483541484 649554363 565286179 99966984 891050561 191674467 222931343 319034565 570811009 821454677 249288733 698578722 472053169 374164610 724461628 548019586 172416829 871038185 570544798 149534848 723212940 617939333 59974046 174741520 626097179 626329767 622702867 433339745 688399571 904137640 930071248 502015555 656016225 566619557 211328407 879862518 242078512 708784694 240234894 581265914 820791469 911988927 569912489 427822643 121404745 780248523 107085807 700011878 394339491 519015821 950638143 696319807 284459494 312227149 954145147 700318411 646438124 955744845 895736794 856013245 172226663 341334491 885127055 389789137 719875201 794439942 582775380 221158788 470331010 586307633 39105495 87192165 499758518 642575 951730673 344058299 462205510 579229020 955512280 490992175 226422753 163633101 728282049 198152030 177129703 442194214 837912054 899072865 591628767 41857004 260465118 466820745 991182039 622538892 171164634 148834308 778803323 855005178 256258267 262942552 903308040 336223895 964260420 855997141 822946713 192332174 368490584 482511897 19234127 117009439 59430109 27310085 438164437 777524313 379106327 969932916 207506213 212109719 29212387 313256787 261190236 228994142 713419887 838267671 31261136 906675873 661192491 463644772 195984715 961026046 624634293 617180647 386586549 326165807 37509833 4747390 979634854 362142408 543570004 767842799 921681909 877475288 19459296 859974710 73336823 223409224 821200741 665013796 340561770 186247607 320030269 114276163 563758130 957460482 654386795 958618176 436393769 558932940 830936092 568435583 697763677 959008627 594871982 587771068 310327376 618195686 808253582 162016476 897757841 441012814 723055970 574077670 838288835 32026968 594286629 100642564 446805205 174915829 779024104 234551020 473158671 891036954 577421668 335457861 76327723 553216938 260322199 663356892 939888630 300039488 154934115 372647274 14698223 453636602 622332681 923663355 825438606 726576346 101966956 735246727 52134522 517162978 359115015 670197098 675602078 281456047 129887073 894224416 707616467 672194274 805237076 526459911 272447866 425509096 293758585 40924170 136216422 963337032 734565276 50583358 391764907 263487871 569594781 14844515 780583750 2430374 767457479 704172289 719874174 665002618 682153520 830848323 196756059 107912373 454589234 465830720 775446253 56659689 66040753 660978913 675107604 946787101 237562538 884748280 626613329 993137446 31781866 117530515 199475558 857179122 799611945 893938882 237970670 260469687 527020779 992118940 924281778 259488761 533273935 449154366 881340815 214119299 855455577 900924299 212440600 778680574 23073108 914618822 874633454 935127672 594670668 223800568 115893771 592903781 95872141 42562477 813255924 761278947 188276750 858822929 140309979 890689189 436851182 155017454 170192067 588087090 83055920 19858822 620723333 880342676 647556966 315711701 857619277 601099412 503476240 405935147 136260196 655071624 434931333 992307769 251553193 649141419 126802738 520017877 451770675 920203316 453782476 843323920 780526507 164133213 134448473 298264318 238639276 134499074 578614940 420500441 249856723 958826523 616900852 22176183 717000285 259511898 537761936 156025512 496567279 714634586 627601044 358258234 97818459 116495602 763554019 963816776 237532730 316787281 745309209 134757540 175523133 546053626 783384306 120667666 901473751 922252213 497428434 745462196 260773828 715085859 860866579 785999021 183555412 243737867 458827175 130025093 333460412 16629015 710424739 871960141 809912622 157067576 342243748 336368497 498825115 12231319 653047603 76292223 30662782 84661651 333399497 886904648 307801741 396292852 940554991 566296726 289472453 882771678 111938288 692009637 167023039 804390504 928072367 749868130 744669211 159403730 489672006 107556284 281871391 245484198 613501487 709690214 909694964 932439637 768282307 91833399 451940653 509212309 436887352 994859207 390922126 512416519 66006113 23568942 256993902 287104999 14684613 339222749 822382273 403514763 975059338 42464707 4955494 960117374 381600219 540063455 213300531 114904809 349205264 974024972 721272616 651796619 428155835 680987468 90575145 338505809 82024505 821569161 85053503 793924193 590217038 455304079 728278386 572908742 726577588 418282135 1069782 426341291 491434531 698540059 437105793 580933073 816936932 955579525 916567000 789329571 996688487 921448422 48819869 952555235 258001716 289471887 29700755 613427819 273958510 951941471 735781956 856077784 87366132 744848234 621395845 479519492 99584409 295649828 878140544 739481093 542587713 399447517 499174622 501520647 26089462 620892880 84096160 158148672 839999883 384259745 143590068 517754728 949132472 495446662 625386315 698308335 198112862 100480269 214528453 683630224 628347560 596930911 751967430 506196511 999192264 529166529 696111792 683320008 231756310 542482197 860797487 811970525 717154157 959388555 906909290 582820947 918592820 436355431 465554939 430847324 65502483 414211506 350306710 170635462 259936218 962100670 287701545 581870347 380971822 909144274 95749158 957952794 616423155 886318309 592163519 530809590 823783546 639487091 516827230 132557208 284227317 810270531 224549343 558527661 937918725 186827995 526135072 731292560 835108587 69723286 751522516 357473760 810607548 457850840 990038255 811899215 695611248 665425174 357221157 205789143 434665150 216711160 68158005 435177687 361459410 893836038 287175727 517611104 558977120 708217512 744044064 290828499 440582501 628534989 613863256 315248333 27898652 747134512 461790662 364633822 126264937 970484325 161017939 200943337 446992793 880662095 817615754 520745714 804720577 964438621 543933529 406919991 203483996 43002396 352436038 175792048 242022439 172406605 533613489 375073487 381256528 85262167 482213474 259878065 966877900 663029454 743642852 38601438 834596076 194231423 36018839 561984813 210054711 522224458 942754942 729513978 980352742 30976241 526719605 239677872 667598404 574056414 90747956 838438809 315676834 84846011 740417193 251992969 953506842 426401074 912688107 557991636 479772965 253024809 473885453 630527673 511138037 729900889 482072400 159173666 44486494 721489644 800814880 871117970 335673820 465829361 897052464 498415276 487271195 225108922 469974494 297525614 638825508 290185200 684671248 883274026 908651888 805562960 811608186 575664297 875744609 554842495 701501454 71128570 939246975 463353227 326713021 592370712 780907777 932487893 823349403 832557973 675938110 1767072 817014881 396707736 137855741 641915096 596042027 613812020 86770788 22312101 421320260 489393846 645422068 196155466 447785729 164789080 459622100 962607954 417316123 683692775 382638725 839793019 860744525 802439278 949140415 753146590 293637881 357845706 78830300 176613628 496726051 976852553 910632213 895500524 464878086 501980410 484632186 536654274 361308819 320160896 265959376 368745892 998389267 626401788 967208950 40023205 63280845 969142478 114324442 886041432 173630131 954258317 738758468 112375736 669156652 358459350 664056707 769539937 637845288 671595482 807155944 59117139 136112930 740400324 515917758 608415774 520697822 595984662 418611734 865299077 469806583 221080927 25461499 917344721 999809199 480498489 353517179 438173767 635670052 681589597 97260529 144007837 983972114 793669350 443155658 544818156 556279495 976406070 907726317 976776255 867501996 956494237 2214281 832408350 365229605 952188978 182735682 448939296 566507415 668026255 48061479 133747757 621233584 489033962 599416158 408276052 408508263 324871794 895299137 186118447 288320859 958366888 842984366 841056155 330106670 585785250 175069454 532501403 823797193 292625443 873248182 992311608 246554012 897302570 512634310 103878152 876646279 452354281 623672840 326230388 929343389 398818802 90199775 814453727 920501208 521935317 765155441 87093429 216816932 870955883 407331362 384200493 963646577 851672482 674705565 809960391 54400752 505594259 831585232 314775026 969513795 323322045 150451136 473085404 790701139 701332088 982059148 405211849 369799172 185052876 471655138 558878017 528394901 544260908 765268300 998989625 129906721 95247551 880764211 988505434 204690368 218824650 324306231 769030434 236627736 344206406 778303358 35015760 148223112 238778247 308706089 840680816 806179707 481896451 144761397 962547139 702881787 345902687 281304332 516850140 963645925 590784620 812620632 562996921 866331191 914724361 13971499 582928148 762562416 388949998 93560284 379858773 249565365 923873796 958750208 973987188 448043476 976862299 505019759 319567836 335020123 629969961 244722940 686724667 75705244 823345279 209095741 442382195 815326635 135322695 517620530 389454027 85271227 332351486 111410670 631497506 736074571 663126364 315191926 740272653 182708067 592362694 776275195 122272641 881968073 722242607 2540139 782056295 802233092 204001437 142386131 246523357 858104439 462997072 872276662 272443742 400842252 920491415 334916344 189995747 248445504 634110243 196143070 75982795 32455971 194586122 75436701 523840060 708973269 261518885 812715522 333705739 274964158 993890679 465263686 274250420 364973853 948326350 248274320 645759074 991561718 615370140 534219651 9862745 772766948 407719870 901173000 922374574 549099816 253061657 574315440 329652939 40535795 467186137 871727859 424517349 606833660 149019177 101795821 951572463 430713642 325187252 20287812 306267173 866834211 631653259 772418967 152080936 279027035 369968682 606717208 711945005 337993079 373127923 459773000 958539198 678055742 686071096 878398445 13427638 717453286 61441175 797011612 694723317 258996277 227850631 984419018 422477166 668221949 644154028 659764585 432533060 253664161 535891896 809782791 680093150 581250783 381368452 822997025 198365127 292570028 613172517 522877907 971322309 439662858 342599907 360952743 496227523 529778537 12391564 855747086 552291629 269956418 999055608 533927682 442492996 470668869 927715008 373863026 323624810 716047633 315815558 742116909 581164541 396794112 201177969 221046455 537208675 871946688 176923755 622430174 667781595 905543488 881880959 75204431 609289367 170177833 518490404 457162001 652486683 526095654 678949993 720706562 186161586 887184129 821048321 15044187 403256494 861808535 196211878 579079561 419767029 256272772 450700284 427680195 911033366 218644157 263505721 274201296 304545463 125880188 119564143 896174202 968097446 114472092 426504212 432032401 501125345 414478357 314856519 367936981 79528608 190758696 359151880 704534590 278082567 406686246 872715335 312923877 522186799 667839390 195512970 622634556 446391914 31671284 807043086 570416294 933125007 361502985 683409211 429414938 424905148 550247896 179275705 680526806 105272079 188416969 214293115 308198565 36403757 57782501 931407625 53970659 707509131 674827452 946112371 113745260 703544766 197137635 489546282 617347042 831825156 876133269 851966229 889494272 790786852 653659335 257965697 990742445 243464600 432999285 643861280 544666098 688972199 412471668 264446127 617598161 50134824 255402274 476634804 217555260 816119356 561933934 206306682 930311641 604871272 318249907 608094387 768972842 651655577 456721574 771689158 296162213 870756001 938760845 911232930 532686469 103750011 763424676 297939900 353151306 295158391 177431500 987782075 844174107 94078298 453882815 127160332 186757676 313457999 521985438 852532687 816975072 727480856 553538074 45041572 533270731 382454566 834132639 530375547 642578543 377598350 447679217 585336659 24533254 237525202 472464819 411413759 611437253 410749896 832270696 592398620 24566537 157080625 406502876 974909592 839519759 554697230 873724406 695998640 425739041 624575749 131423962 186426367 206764834 415833653 876799002 30348182 639696026 308146917 702433856 577744839 742910841 264448411 751304629 544762598 111687016 894705622 681316220 492437036 849881538 679442815 247350841 869481215 945347205 173191213 550092649 162649232 333578591 547430720 200092668 90326794 80987905 978168663 301906689 365715772 973785634 954347533 259263562 401014322 954318666 520836220 667263526 143761969 291393342 613845636 526520450 274360179 975464641 807551 286362294 714514243 819477559 863649085 249146870 878073934 416990064 291821814 23084313 66992808 658519926 30656021 124625722 31886383 189591798 340946801 378979657 834792734 785051015 310428548 183976936 950034055 728270839 881174712 583959104 84465006 187649654 487659123 188932697 963417902 320683925 966034567 55904310 709101198 228186814 271975219 718163936 330138584 131435053 977827983 734396121 805911897 576386977 432455593 335131300 422922234 457438976 317138842 809051978 413318531 125925601 365101516 248037625 524313792 427275505 502918065 666613378 299758864 219860819 13608398 21004724 787374487 276792822 235199082 46423809 63627168 818138124 982252459 541970895 733597633 548782665 874632495 653970768 318091868 504680486 247743084 182135542 701142904 231291729 130920257 854946335 69813591 278975521 909300114 135371631 370956252 430911663 108895253 201995161 596879396 260978864 223942581 793446009 496440186 642079378 657637685 367580454 768404828 880254126 579193200 216286044 268220205 266696256 738815984 825561218 129430058 454616563 609736876 597738100 409225941 988812478 422567193 812949831 601332387 530007839 9309114 148151942 636889990 789514444 650666320 7964423 899468726 681166122 596216253 641749995 366578736 556233446 86190940 123725082 451773476 680714627 418025814 379393942 33450942 345415918 916704520 864559303 61290651 2510971 558592328 176525160 93115337 241786558 322913604 737407663 470066272 974442416 372493761 84170105 45860544 227519642 627435810 474302672 906743494 671885292 396338236 209284176 361195920 824349142 538597078 736569949 126430651 630794893 201609931 830109435 635791934 115292214 336120940 854146552 966370047 591845793 937878709 69143488 167990996 263671351 196986436 239515985 816129742 436479340 665200705 73982832 545848882 992378696 643541311 491584863 618077859 909129004 482042184 251889223 80899281 562790311 248938811 699835136 914519540 870378081 307097667 898234632 315913 130239974 64318856 502322482 172146881 433304615 57632899 289204036 192098574 940206181 758046168 481488866 823126871 779742925 453335359 87843855 115526886 69741242 815207580 303320359 372435248 549791819 729944520 112477765 429024564 565787574 990205598 52065422 450340283 110345005 329380930 135785168 436265899 3682637 657346465 813206392 205857345 213936118 258022430 516195746 197453914 896633079 810574607 101162544 653741613 207858786 975809130 987289085 448737939 433159209 119122023 256893569 784374243 705883216 775468899 209754590 712404083 943356403 226143599 288458968 16677582 273410614 498288206 133747041 238689096 575931621 599471247 380932881 215631574 242507689 484562453 542392703 226041011 467436035 111539227 172025317 95294241 632915425 911605720 890839593 308982449 141836482 522822019 39964265 14592411 478716200 677511625 573927415 922644718 605939060 797168243 314821069 74462470 180010733 929641576 458466540 786860640 631558595 54985321 317235318 259356713 790836625 751547845 438863212 241334775 927541180 790750949 514745213 471661016 633096818 329474797 384416660 69986045 200682143 813001128 769064684 717428990 824090506 77727497 150596401 935993217 406718395 608791803 199058671 373867980 234023245 814763008 441003608 701584760 234122568 405087660 7931221 350355213 259268477 816263048 607269869 243514535 382309166 365669888 15492579 305887236 568222005 163398970 152886857 270740374 676410004 5156003 67848369 238823756 208459608 593443526 572432445 126077384 423534062 130735088 881725139 897976738 17936811 316640907 531857915 429977047 328321078 636555002 110651977 468678919 548022902 866559411 287411641 660001321 496172425 728666911 555112910 280460429 306086432 524177745 186462260 980287651 429950864 647112662 471289866 501614257 765246875 854939466 616362158 617087465 922033735 914315083 508239945 11798766 494357473 596878351 824707099 146670538 168330890 486827510 241681564 403600312 517323827 621221670 363602637 19891189 305883040 220644441 975719775 391186358 804664756 866428749 765534580 363943662 551571692 286192667 417420248 640533186 623916945 764561558 822976961 917226607 70390097 538901130 514264608 538471609 264375709 131394285 763211066 779305741 473283153 630890539 519193052 205945246 549120266 469873308 458917706 806435290 995605399 833664069 757728411 955925930 416956546 873669931 141448707 792784485 341365919 602140900 14668616 810512760 885605923 809938703 632825311 761696696 813096829 953819892 514788330 736282369 450071543 636025862 480037817 991694798 849352411 69097771 509195935 363811742 243943653 248016977 394606843 634721094 307179705 186414624 646292056 651908405 964113195 120995398 132443761 609162413 200924252 594762029 331549850 437828006 718547771 727730138 13510190 727927762 527628478 63041951 91537926 949404454 528400222 206525801 539076124 186606684 898124316 676658799 958341993 550230329 486945968 418017850 385851248 984594344 271069171 325751688 474132257 521831312 58169920 839570810 412567716 165723254 900369306 867081638 622395420 550662064 197812278 941802755 37451379 366723187 439453628 200461027 912008339 761476963 111745129 540342178 16123273 428734832 247043005 20537793 304634353 559696327 349233388 649156130 563635587 379584524 145136880 194737447 837843936 518267972 310639767 110372920 982960699 743864537 923256839 407021577 652529539 174749984 899952003 919281554 431910138 223142076 756706097 644219594 764712230 35503130 987953418 359237956 184371596 408781356 612286100 627114822 721198870 110270936 900308119 205129195 679159656 779520385 83535882 121390456 638664331 826064341 557628459 864674496 114550414 835184450 825115829 12603437 338028749 960390237 929006840 782996431 185919874 222133892 787711341 955272179 337151004 195822123 465493103 668819287 165568208 152431703 709506938 190175805 865114979 854743467 981319518 607461464 951661192 11243387 132713 164021836 404976394 781202849 142267111 335058084 999907090 741172913 737502383 347265856 669435359 655176062 241090273 583870232 7731447 613980291 845596704 354171525 450714794 259871190 753021855 749963553 334589744 496906850 583785126 913257118 690075910 907404600 75022244 522796717 928094960 594997114 441206406 400353942 566246719 655223941 164581064 186161066 87394567 537881451 37740575 604291728 618185175 612749207 294752406 728380601 755596232 184699609 667524286 464759350 732396543 121054102 325409505 458666791 68804607 430779101 567572504 64688160 716475543 320115697 181408571 485823082 950881877 453820398 534061354 796785134 524024567 832299417 703301891 821741423 65504992 195547923 618375373 271395727 281587991 687381579 147122689 883320829 50267659 301175216 51436398 217912500 840877668 840657288 664741236 689954211 88383984 958707884 985156690 581825388 485003706 467478727 317476176 643410675 164122981 279197124 778579117 526443652 234540459 38579849 527255121 655609204 777596753 107367954 735640724 743026938 208550877 51467205 288428505 10807531 663891741 225568339 920835451 139115907 547081083 474737331 428564111 476130395 260261028 372459319 924530821 349854271 921248465 640478721 880267184 949814330 735354707 44319239 318802704 745890626 474254482 264582431 38380547 974132685 693559624 976326664 220646171 521725993 875961044 58455399 886187378 855948092 71209458 71260961 325492107 912884632 303288317 488072722 343217797 796890603 664845099 821356801 58255293 429056600 912789550 734763983 185956388 881425093 461988109 708278011 352493963 298520326 6980367 257755570 482892316 537533801 479972239 165958298 42992136 448851279 269087668 218634060 119555254 899853715 830646159 348318913 614098137 812013251 432231755 539050067 8007153 842143278 683650049 269333601 32348213 878719416 72086624 475448307 294831358 998879741 909806464 840061486 789269765 818854583 365531414 525029511 770591954 53292196 548879209 455658458 453512674 359892761 183877167 41760756 912981685 336946415 262631279 773972566 654036058 723938627 33845141 748402234 182761613 653635761 601773602 754315586 147537709 235948001 209348047 289840686 261876444 247380430 40284746 836268116 152114846 269811881 704201816 354565569 366373624 611270970 542475266 792035928 318897467 605866862 785426996 49979812 200564293 845591506 444224790 903173848 47011796 964658236 610499688 435692443 206436167 419058404 124959125 325742463 464192200 894129462 537753017 539991983 674849870 383444835 654085870 656644960 333982954 991470606 667959304 366940461 288264955 556768211 302847725 648535173 254924928 41171422 936521175 994162809 482972002 135331781 380309303 46836555 910648251 249119853 621917208 639127432 13965035 189885352 831743016 293247075 309548003 898221885 519666703 663875735 890286919 102275670 752792998 909878379 257778820 144579559 189237742 775901743 989691718 822096586 496546878 806942221 733887754 881579808 291251946 667865881 935586765 972614775 604540105 660107621 919856968 179753919 152122654 156467970 708093574 14992924 729780160 28595430 559736978 119343458 995297515 13870249 300577798 898627453 755303142 562825719 122409017 374381488 671301784 795178355 165885332 29868585 312687986 863815230 763589775 131121969 8171158 128649360 281871537 572143967 850555281 303186206 51429319 799294744 777949323 665537533 145018359 404747201 456896716 338619701 987834913 212118745 41882883 12999811 871154297 888349557 529560334 314948812 869789734 565278337 198811463 548314669 589213596 31347155 436011235 108199310 29085703 33180402 362586092 360952195 110824078 174887634 187156122 861192386 191430980 725198169 895611825 981909802 859722842 140812500 124874327 970577661 872290096 930849269 182974243 416272548 347535859 514848744 581104535 62835778 601886126 572052566 914773800 189409304 184028250 276980182 595869432 684880929 116186029 793089143 225546586 158436610 463409306 604618373 23624890 934686714 276610347 68205352 363929826 588243031 388527377 428807938 757010842 721692518 711477803 786012141 887972478 138159664 414955945 72872092 93285264 579022726 386224770 399620147 693239137 189379103 886146856 20067447 608221493 787673037 584421312 515430199 557833144 79225470 499353192 173351704 754708846 766785872 511559866 319975885 524431822 522127704 3685270 453698481 938693630 302555366 749111014 136480409 995228560 792775773 816775473 1322352 494513753 595738169 396758467 229610267 601320889 124266228 927798304 645730236 867704970 844321513 935893415 649972704 652700473 359906881 790752061 341945344 884721321 355855501 28571986 499508053 211477713 350002763 893436859 15783998 300893784 376147168 349195266 917344004 805538894 365575489 521960985 962135465 630464278 64603647 747494265 54578331 254472717 737010301 959746371 991568315 364470955 881212234 79305596 305238979 454702557 835334454 452152542 672283240 267428228 716030425 816895329 696249727 338414755 813371231 679025932 446616873 514918098 808857258 167846640 755171761 304821806 639957125 269499497 975863276 957855154 731691186 648708237 156668720 6353044 969973997 652043574 369376081 60948570 673860231 758555155 267272340 297350504 708051175 778247638 230122289 924889244 620243806 31912433 388822556 930222243 81565223 191300473 682967765 438509009 853093204 611508925 451307363 252756100 254268423 954842673 326761478 589929550 520453871 684239296 382080304 646909394 371280558 906875243 701282478 603490529 982413889 468948040 243249689 428384688 615042181 389710252 713894980 283653342 875506247 740261507 73894749 388319779 889708636 607371394 28860230 483732960 219855903 47239641 734620065 759313788 420454023 899890723 698488307 368639863 924634535 106322007 875326061 647360180 884060811 82495063 19049643 722247296 350286652 784289000 775682980 169925812 893086569 748266015 605276394 521527798 617806274 999342460 315810323 672515746 800355167 91731191 485007701 663619861 718818698 801518355 412177051 947670652 967642956 747922188 644856800 774657337 61323192 417365913 760654690 245779641 924847675 918098755 235983804 274873324 492377599 347878143 324670333 830931443 92877560 181919177 485825328 667190651 420496002 231453805 742501612 562627954 132909414 906936029 770775391 588810151 504998151 487877466 112012824 436943330 790278654 936952985 438772329 110356157 48739008 204969535 442123706 645282524 67317763 37204655 191673422 915868682 654415286 437104216 796495443 304074603 13152657 595719120 98953676 565616929 814765575 316124446 119365791 744075256 351384795 374271591 265527819 413103554 382909471 63785138 952148915 202775116 837340858 918164889 20912325 705943179 986941023 253157029 412922253 805532884 786963665 553743932 592928031 51517584 619979224 683999163 354188801 173215827 911214182 812902260 315506032 631418466 121103348 241634037 836165983 36903300 271524313 500605698 152125766 268749757 959056167 258027314 286782240 999118047 427093180 387319095 525769047 465006440 251972798 404572876 533271516 504913461 975377331 343483868 210065575 213601454 259825610 439721007 550500512 143121662 907843176 966624269 15737104 960119087 80730342 639402304 66290703 309221328 673458242 879829194 909386268 102196134 235458374 21289650 968957572 952003082 622352505 610469893 773805449 956532509 363179585 744493280 795315285 996916976 450695429 43388484 969787045 575395610 429635502 657050074 83584130 858296350 987216723 407493471 756204985 912065068 123213515 255361541 503529809 770207272 432589699 820366237 25405254 333501245 622359428 174929773 127992447 495809072 450667467 72943104 529052059 489584960 620096996 618775352 994882102 47143288 965350199 684422485 240629913 91930526 824215839 880074336 765113643 416568963 717914088 167075921 409248850 404212726 55207734 213788905 585929977 677502240 145191310 592758916 982668541 970791219 803394582 999765373 964802783 795505083 552488150 957659046 443913714 371503959 170836307 999599626 639347729 403485072 323274623 263643600 132889542 708216802 6569170 187137132 23833854 318082983 442589961 841136813 306098458 217576213 66574428 592554554 289454215 959753146 877517604 830414893 531823409 349401585 178294438 994122457 887012203 655370533 677808657 280849566 921510583 283712424 329253625 244252763 118537870 283695411 371157971 937506342 204561718 828491877 478418869 247060216 456911818 813257946 770932652 432280882 667246100 676539791 444366803 172889638 188192408 297339719 43027484 981988338 488440126 128364084 179752231 261582934 703302917 924581640 843619228 284955406 732369297 527648123 689961122 747548669 763024483 244099467 628249231 268221156 926406871 80032813 384506556 86233763 212285418 655678711 144528092 929453668 807431775 441188842 592783793 502241253 861866709 986703194 534884339 901392544 386138827 30196628 132690707 596651373 983515397 530919214 509800437 845054241 83944130 109366866 134065055 674399127 23201340 303040475 130379723 822527666 627157008 467465385 363839702 424749406 621759448 851013762 786480882 831771246 680613668 324625665 886516184 919936364 979238215 761564506 651771178 341063450 978227472 207937867 540818268 267944638 557853806 773467843 95775127 753399267 953067013 300102197 503053815 486916482 428098189 844579046 424413295 963307476 74902733 102747153 416331912 14740254 386147888 404823454 492791471 988985894 67565108 77365264 535198262 760789157 120166418 167698088 681326298 991959369 58994689 566270870 424528847 805578446 845425793 440068518 405089253 133384797 811097576 101241858 451059777 384168308 657186121 407208836 585519807 382829420 607268489 271533850 56474083 153996112 409278931 670737083 908255287 41142915 763844671 708660723 237721656 613841103 522467581 478763256 934798706 819532864 488250560 481215032 813728436 556207880 205281816 199490827 625111660 337057983 689582578 210010190 394078150 413090697 300920316 872138012 790582947 682780232 789161348 390208123 814229537 715137406 533507564 174570315 611184359 631578994 749134949 66456154 752068476 491580406 483404969 175741614 454741161 315932734 531407668 670616038 371713284 79716245 552400775 423607503 686297603 481259946 419797784 548497968 646350304 245547224 545416415 909252624 949185798 906443230 475307036 574520464 606217720 663413072 451527302 933766166 730790507 697200826 822541723 87571365 869072145 584266521 177722238 907018351 544429722 825806866 364687410 302362752 124432290 493582322 129496368 553341205 348674521 705915750 157887390 548787660 780487250 921251650 64619759 570540126 729180726 165902021 598419227 977916441 86673869 166377195 478271507 947110358 712365356 754654234 474993647 575171525 95833687 598375011 944498422 610247952 397248343 111509306 295627719 514873023 956314288 691155285 507089525 638499420 645559643 290814737 247331249 596482886 58261898 208023097 899026612 2902971 432732035 61320569 85469915 225136620 327769996 765010644 847361276 577171959 489479916 702536383 799574718 584296622 411925446 422681686 923173707 203782387 241923112 290696922 33133775 509917916 575011111 701820432 557992670 550424865 128970030 208569101 18929812 444097813 134167126 193664580 252067938 103297891 163141797 673179705 13470587 270363737 466469274 738135144 851268459 361750954 443152593 609336731 508159534 963007463 294641535 732760881 256967729 70667050 248549443 695351441 759899393 440397309 413729689 949618172 461139085 860007399 803159575 83321115 635705971 622437224 112056749 199426983 327759303 307396915 895973815 29700313 447699584 724053503 327015766 953752392 205115935 219416413 255853885 147104137 304589080 136750291 19644581 222706669 147744186 593683602 645718353 839892102 620326773 460787950 546606189 349717129 992382856 528178612 84550980 203404099 277468939 517180631 816597501 587238614 96623784 866895550 780148132 332667527 699505183 749662889 816852154 750761567 377328320 947738193 930559790 180818718 529759374 449933138 78463791 118518578 432073745 198238810 703009778 411324024 317434273 296583681 871280250 542507766 367508423 682688200 137541316 708769164 167436787 984499109 880381647 567924756 427839216 704646338 8824494 187457676 546807619 444290751 908171962 977965950 369663724 867700435 872963520 68165489 408594053 287969710 711635711 183176758 197747621 731779440 17653917 868029896 801717217 194550494 372916350 282615118 474073310 708735427 187525559 50139577 269780175 742038240 630913074 708245095 9190577 562138124 78245052 488823986 412839528 731425431 591420432 329514967 878230789 196005238 109237660 517116813 105325781 354651182 9549575 508550486 348453487 251895957 243721254 31404964 425896993 326995241 306852642 57883646 669453766 416043739 288135120 839193823 101719882 845891987 954677950 59872723 648445079 44936777 163404867 970833174 502947683 329003640 867506570 391091758 431360324 780331402 194918231 158246083 315695131 731153473 433402102 565111286 947522141 899185720 413677918 345539959 68728384 629704765 541772500 800975525 122135859 891310534 627067121 381013162 731420606 245147783 569895270 858832747 939374369 261130097 50226197 20464262 173048762 284993835 266509724 615713481 765254572 673857851 741090297 162225518 209121090 36317264 832244868 213768848 989909196 744845790 43053962 827097902 162147209 381385876 984480183 539285228 670879771 5043346 608648588 866068259 240380578 192946612 552947155 329835031 778514920 433876559 182950509 427732035 662226169 137358333 23160227 265013096 860622767 944125378 296728320 889931326 134836463 784201731 168876967 667318593 194711819 234051027 384528755 320140721 600779620 498341800 173923283 232230370 3063276 196203359 291324419 79748723 314148547 629690968 198357228 866345035 790587768 44474202 709672794 327886716 745148906 726020276 479922969 916174440 195281301 323416796 208055062 894884871 286081457 604491553 301169331 785480356 892317742 873119117 208091348 294649274 469462835 701727894 684980534 248912481 320519860 282360992 38781682 175071556 270199587 648611436 125878485 278866416 875843283 521455074 403282199 534660406 7345352 904248122 472180423 865979920 172409100 916292714 506333138 943592735 753969372 51158751 471839971 690727397 243329129 555753659 555426937 254274333 853507425 308730771 366362254 193945092 481921318 580225741 784887339 506603520 416673959 312761617 456253089 408852982 744900006 716875233 566053344 99607544 884567115 8385700 51977463 284536469 712167194 203324829 350602257 80574296 542172057 478324688 493210936 190653625 379866850 742372994 57580390 825772386 397660334 344831913 507325090 273743711 895251232 165446046 384455660 821699425 538209171 161314909 585440585 671417306 715840275 271625115 487237398 858591332 568295791 510289431 702994559 302464420 991375604 263360109 498264991 475087442 694748575 992440796 254614291 165608234 648715598 942944206 29972019 34100472 475464789 237614587 345368249 548306742 949315204 627333127 897454469 311457107 850754104 378152061 972676657 302722923 633067333 146758871 311169193 638890600 231543789 941631475 658119547 953060795 822922761 819335350 743320672 156794355 64327769 435183338 782892331 832842012 362072742 727722917 396754005 670462507 277616378 487447549 732648293 190013171 679460126 899449784 516540816 842508427 721015464 14184306 514690429 685922580 303601733 548000313 647057095 715167474 254676573 377820332 387515742 778698819 158989059 11613020 442642658 325177172 703012662 5491293 180931141 746321490 644618781 397201201 678661717 322779990 101037991 831193345 81598744 558732541 995125896 667652633 875923534 187350339 510653995 569398067 438159199 630405234 323814513 362378104 943224710 26847730 888916514 393347751 887590569 936831099 348937789 575363113 199071674 909909103 428000799 389824246 835385073 280492313 219010245 70139182 306022446 302926288 20505006 21852729 227171935 856577026 21959130 664428106 305344157 773255842 552403188 240439650 424583301 161404059 678550773 252440756 237869848 531063736 622269776 305113170 487174345 971949703 510518662 893907558 675743456 727711996 968623072 382725170 896826727 651888275 953289508 32584269 661676821 191531412 667120911 804746927 257400607 119965063 305264645 352512896 224313402 346324450 530577901 701475427 699495023 132879341 997723307 382935812 425127370 138213229 903599642 953042201 305956733 653481442 799111887 292016598 67198586 769789256 97968729 490293612 650310943 564355829 751536650 24137149 979882097 373368457 486287725 344336840 320017954 464086441 809894202 170877862 820057395 796572263 297427769 564643487 271971068 742450396 619121672 130546233 778847799 59674853 772687792 56939762 9605519 653834280 72888584 490898317 983046847 736526877 18300873 471103010 679864286 176970845 682954239 425489552 105960202 726788094 907959934 105942271 97612294 573642654 397044124 145737738 780288638 499676245 557057597 887954593 274269009 590891873 49645895 646931552 649914477 628487332 298185441 588152540 953278432 61304901 301730566 232938899 465770373 711890674 279970770 27633913 414038639 48362590 304639078 808224899 428645278 635643377 675754421 89134600 274305512 113890251 133095482 317140739 117025622 599077157 734076272 66166316 714628387 265104056 529479496 384837743 450729779 367721206 515004220 991553617 452714191 390826400 647172568 222421814 359403816 584265171 362460863 379348877 801655010 56014355 55033597 931504032 663010380 134526117 80123751 534360438 732776 179207581 266686577 903549556 651466852 946799327 673901228 556535168 869097195 831157134 397748013 309304679 245518340 99216992 465168431 299235314 942267780 233419727 529607277 278136591 240493236 136695278 638927565 970602694 932834667 20745836 869129568 814581520 194646530 512782055 314022632 60614728 475909707 311739357 836391833 634014831 200554222 219514861 763918297 719681622 434696060 821148709 944911430 311167459 171193665 757932645 295373791 822979464 373772481 246592671 442483153 558150495 317938126 985297618 587344834 698927762 512309476 544381943 682315040 114773037 409564574 686368595 296002736 711994187 864586951 857962641 696341530 930649346 448773518 554598351 204205994 837969350 147817517 771225740 959277011 787544874 496045395 397557734 989069462 193319407 652105773 738266786 75189616 112280621 138097881 483302568 269708517 653008891 406350438 606115567 945506606 772789378 679833894 482631172 727163510 256435621 606620205 100554976 930238561 988134741 499479815 327741779 163001339 963742010 655513354 655897967 251150431 226628232 384659109 939532490 679163383 702314172 920650121 648848222 270441690 527753702 367876339 627137615 685032872 349243731 707554418 222955399 652027526 634105145 791878639 841340153 290735895 457115363 723703348 78354891 555158219 959544113 327512549 132784437 299532183 74647119 62830061 541709281 837288440 245712253 561285996 257398822 550889840 430622668 779385580 210184450 312393915 436854278 19448346 917284616 565698587 816936164 540193968 827610672 275749835 420833722 379391015 757230651 720030201 958698537 56094154 877124159 759346039 759119241 490535268 575312339 303286464 856064422 458790151 962532821 956658775 233498620 930664471 352717824 724126016 715380351 222155863 807143840 770457625 378807724 60125578 299934921 173583865 135405839 830405401 153355524 976570652 183863645 219544594 494931533 534289251 183831192 915673834 622090406 143051279 264081683 818069961 9067289 847385062 211816968 958137861 453099531 407122638 871572949 204278187 588865176 229043397 658725112 895878561 200818301 712062185 235413134 904206194 959737340 219998655 354904644 240698501 667158450 224365305 910442474 21124770 239913977 786926840 480153946 824174874 843007143 680759585 666696203 383286167 475083075 989499681 484556788 558398749 362491923 856360602 467951882 326616951 134935338 356648416 447691113 195994203 329365681 363841371 893107696 656424662 258340464 146454525 620632499 67459600 104729701 586034872 387663776 751347957 925660362 598088562 828155063 758582486 111377390 678762923 207185909 938998634 972223125 10808460 771356276 635848399 493261084 824750706 990883575 108797483 573356039 929008273 42548527 860736051 682548380 370007849 433008960 65487621 310850300 472732650 936238521 874286125 969269798 460943009 111361367 35246863 268424078 638001527 447215873 541154984 160646748 458062424 821413459 407032149 975604743 138691734 525911194 347912516 968652240 439423018 694616167 978494276 512705614 429569671 362327760 480275384 770434072 214374350 286182486 526131923 133295922 620904550 492671088 337749635 989642974 69309291 50791819 6807784 897838247 772190563 164668769 161306808 925332001 320449630 923224547 519626056 18349881 701310391 842116155 708952392 714857608 149693364 744014830 419789376 371660161 462987668 606044866 715526777 141692798 935466643 116833160 534540274 398006822 445593325 401785781 342077904 887655929 771323897 688633997 597378491 535153200 416835239 778725341 979088549 970756394 961624994 472556925 861881446 618399264 477770787 521288604 7398780 348192534 221303128 503671837 742078673 714937698 127151034 20127734 229605419 812224603 750358193 262252144 735805103 595898165 64299212 347578190 26481995 273520206 644983348 109314436 963226339 200382371 185430584 431185724 804809543 406259778 991413290 246291657 373492037 342901161 466644345 746920191 866462139 981414285 378355417 820230780 858625053 504108745 994376981 850154120 694885979 543123208 173627606 439004267 128227654 60282494 106095274 413267056 732590809 537837660 143771821 33328112 648236955 545779254 379558140 39210978 383940283 862479409 341930954 843836082 452934909 356034682 173446028 6368483 73851494 46422978 767888471 323130535 298052925 551286624 13286381 532786937 42722718 421029823 827108047 410140049 891370899 328693927 159168219 372469089 869057213 825165299 652013143 37427353 587189690 76616200 860449707 255512218 934936166 296099907 965144945 313097361 103484504 919544045 143237085 328810982 348824252 96689083 143701535 979510067 668994023 743969592 577826039 909762040 220019741 659533537 627696629 730079132 296464018 798396451 950426939 933107492 6186136 541985752 520912024 721884361 465432556 460413827 600588553 396696974 776181598 683770658 342469259 812678342 954436098 710583174 158385651 794388266 271436755 10877829 901815109 467652033 883712030 850713781 902291514 178072912 179133678 540865431 997884501 315726749 699568995 609672980 877735261 12351344 509604074 118000944 842764829 863622524 604578570 726702969 721028993 752961179 869356243 254973213 638580328 444130910 405856069 5561015 99734524 602889139 116982635 981046997 901359641 852605487 774887868 831147258 203995529 688339539 513793767 385120179 747714112 322555302 952303850 984479339 847379405 524499343 348990604 676902928 600172378 181574396 259941491 586012039 821119297 991159933 258258677 733558406 97721417 59976041 792335214 926737588 232018564 592724817 799453455 336493059 707370052 296045153 734291906 791273395 899527862 101092887 738370824 995037656 12275679 304008949 335862433 456636580 284216941 48443764 187486291 929818800 694509275 937635570 106787079 521808767 948155772 35777963 531694628 193587695 112510575 312444656 41347352 143758504 518014234 379773567 224777729 481437895 63097680 615286900 170642748 146002196 851622905 829392966 133710813 678377601 278578846 836678766 40655136 253132592 401184107 706389678 388626933 986492272 304106128 675615351 30569593 178187594 677812538 769107066 454845337 905331572 38384818 799635654 479281464 407748373 775657315 626352961 961173168 350681103 579868190 973740862 801844641 523229787 82603031 397318622 139789709 136001475 704735880 701564815 224327114 800869357 963893123 219158938 446632108 690261702 623362165 71509990 665594933 166707847 422779273 749606641 892208767 539907249 772073201 319457868 578359567 223324747 775336080 822405465 781753422 205828860 976247797 617886429 592791669 94647057 755982046 383836375 132273141 967694312 259284728 325875432 993263453 345986251 995746892 976779872 375774210 181208583 992132549 461707262 292414983 895979105 64491231 938353822 700470322 317417580 370550435 331251054 855290035 26801577 646906060 812539160 742275912 115941328 695211040 102485117 572340229 151543939 426179477 447717736 951943860 393326226 482702637 80953334 855123521 848444778 721656869 740293715 730415736 674520062 728984398 133280921 913798084 838294785 217395787 227061656 231248259 53097985 409473978 499229735 289794757 644843041 590839580 606111766 192923595 426442215 564554433 908025257 495540494 86497338 962700593 311412663 913381467 481586628 552112260 800215858 111873324 414115009 260549633 415652457 811765307 814764313 238109556 577347744 681693564 865601664 983671448 696118770 593689856 674132992 388421475 65686930 506154262 706688191 830109292 632418420 217335311 399091617 658574955 479749786 607021726 927379021 914026317 105575270 142227087 40874450 758421455 432055465 239070588 695150943 859647174 374703100 198302725 482116704 677066613 513578013 262455100 724115514 702084669 721128951 21203420 887404958 747773768 338155354 306013792 623185445 597445325 183311725 36188764 991653709 929429456 27938783 48727515 932812647 613774886 146846169 820359286 882064677 584406577 653997180 407678551 580142747 265005511 685921586 480616135 686420291 221259378 417316791 587703736 6952895 270890482 6331175 935190262 475201541 447859834 243864940 229994412 115032027 787349079 795524005 361894553 248991983 739757381 473701657 529807830 739463283 527002351 99311760 240736696 659592217 824525653 418970998 368291339 763338324 590674603 773464526 964497807 328043030 756078113 152203066 847951041 317177139 817173255 686369941 178182611 718304888 690419450 38364408 219407681 946878943 102541469 992408913 756243427 137315305 525313261 306658298 175078778 414699456 373347048 682473243 10033858 682939715 666698642 101666806 744417106 185754670 59769506 660973123 918698928 553795747 849017060 937190196 127319254 651911427 456675884 44896199 235794882 453245174 497561212 67056329 988563638 207266304 938383145 792523105 175555977 857945210 15260270 219433395 10485772 765009865 789097367 449892490 333127714 488005678 540791107 83171016 239063960 419099979 150801656 525675231 672693569 970107642 872488358 204339050 35870732 567799237 678832201 260777984 94994436 574779881 791712607 511257093 255735843 666538417 260249772 497693310 414906206 460509217 272423051 86745349 78256835 194272861 736702903 484964644 174957818 677028002 225782378 348161758 841907355 990802811 382591820 721871099 5427496 801369455 311073737 943156635 260388393 528160838 343983628 746280782 235341774 358562408 26405873 602572800 290360158 260855277 606754744 990023592 595776365 610082859 923043510 740537964 371972609 770072303 291671416 216532781 17785453 221970572 682185046 588807991 885989971 987454981 651139089 748726741 814917672 613743359 97750986 505893431 122386183 636763875 410806142 997546886 44819354 641104310 690132304 307699799 249350819 224620893 755816271 330386476 823434670 679849709 882135557 449219432 301785449 596629663 895392809 510572492 536418865 685644475 872483424 671571011 459568234 973921181 21107539 384856747 459602691 890788952 314000874 706484751 627099564 661840045 754612336 717219267 342792583 820097432 764518853 555531701 799001071 228705250 526548030 416630062 392665110 982034293 824338903 753890672 442444168 70332786 105371984 1332779 66262218 899403101 670934466 402666620 919701764 630570740 835276924 594514298 806116329 169625223 720490825 279714919 686160740 547163595 603195599 616667183 750886206 288594147 500027874 795519094 430055953 309648462 74404952 693655095 250890435 234815926 369298690 780035265 165054156 933502475 494473204 465929515 373685179 669492837 711968483 338441347 4907815 756309474 595998576 525886851 864185166 130964149 322898014 867512606 335444123 961806967 988358337 558113651 360414346 47075134 929495116 667637450 717270324 151539935 958153613 583783766 773538012 895534822 267001757 930745113 871908576 376545848 217224630 115634203 189361079 773828701 718307146 329238769 939754658 123512316 817592743 447115163 238791201 140595916 415226215 174496354 490640969 223126031 197362500 708439797 950732896 875846710 572096962 204838959 834581499 298638956 506261054 590284990 62977334 588443232 670487044 766109876 814283792 593452918 869090527 251518966 377243954 800172801 357634268 860053093 180291480 966192516 474467515 380430242 741286649 44736413 395256321 409295334 723924633 791027594 296485728 870644121 584201983 406107171 863337907 217134782 652511483 105422744 628987575 626453143 62866700 801971030 408235861 59994336 416935778 359993767 852586632 881523197 486463173 332035360 439683996 385442989 643305703 21020633 86942241 741730324 354478166 779255740 478018092 333523531 258092904 77973415 739999791 83597557 109754330 43415630 103235208 615751975 717977836 48997890 656686186 953608480 712536923 229787065 383672482 243669893 600016894 192209627 130458949 824711324 517727997 712793672 279091771 316786477 809750283 710720311 701082539 137354142 324620554 915643657 239305975 558863129 65093340 511982557 523300226 170135877 727058281 380617276 867719029 449025446 956210068 776462076 736509254 493414201 814179146 117440908 55443146 547563776 683939229 79735720 602732644 265228065 727325731 725744797 789033898 526502829 693984694 379229057 898729260 87420013 908056122 78740275 705344433 286574455 624539756 338804542 992492188 677906815 346781668 237520311 935587958 28958777 448263497 60910136 34792627 455603382 995314010 501195001 141515862 522268905 744970347 942485114 240691992 235416408 780857472 312139457 832571913 645348891 362922083 631431942 529946836 53592234 805374301 170981343 816289931 234875866 633082879 145570025 123602244 388469275 751749612 776160949 555102599 807187897 105880371 489778693 631740156 900806687 41165525 70255528 465368985 522701503 851856117 22861298 110745494 564743182 296467225 856522105 828069037 513250720 345434997 510331753 670281054 796709275 73668537 564301597 618162552 14811150 776158528 788887210 668553588 712274157 375546274 777048082 981123201 385320029 893406114 13051211 603231290 338468369 319477839 377637793 688635702 473478734 891447152 773798662 322641858 756298857 76414808 949194200 633939544 557896978 222418458 399285061 412196883 832151274 984340935 455524304 834760364 233730181 256136877 682733536 591563120 329092426 939737806 253621673 525958172 559503760 568774808 618640068 875896041 434534322 734806474 622804329 989859207 274192604 960535001 115493656 448539471 414950000 848965138 279621181 55675460 84190182 743887774 491388155 439800233 935197756 114498345 243947339 607991029 159588076 81286496 307302483 460556541 544900272 200185397 613974368 590492724 673063415 991073242 851293273 670109909 198682749 971861905 160371751 407976430 647106968 5943575 984223423 232916840 351701123 144350454 756120831 676182989 238690006 517898900 93546118 881017881 471714001 153981544 916308504 844524808 425448224 561252883 192952128 739822188 414725580 799832681 687616096 905870220 7076114 921076756 523805460 748948186 277647109 219226014 386722146 969589100 386238362 306097987 497659037 444775941 429994771 633118547 861062071 453185449 696056125 70211030 466992999 335549220 214581324 949539666 902953537 117518995 277196250 463043877 498842386 241447484 228171588 460839970 465013625 962648449 719602500 298466041 9881814 509069917 202715706 263665682 547258795 862964755 206842693 55059186 576252943 296065779 423373778 180235443 707310192 524196482 504486876 102843579 935535833 87486819 876506046 918188517 182041439 923400422 38172395 747363684 884737948 134126860 13208140 977633839 870342621 974874161 178766419 563058789 377589338 380633122 201210756 998512529 476832944 900073048 251751842 213707297 372899608 116290926 602335701 417699317 256035764 662242000 398255467 100232201 345341399 693384605 849421923 245105323 708018674 625122932 3683776 192800190 49422717 707064452 216130401 561557860 617960557 835153698 195171410 934462528 142400756 254702233 138076977 81232524 733182408 705762671 681914894 223479744 309022982 248317414 511864010 775308360 491058332 242487168 856352829 471287806 67876095 156259378 855046182 925079401 223292008 679168978 197793839 306514346 410062545 524947728 710017695 453413718 933155693 713932429 204138003 169963442 273885680 467936913 479958724 679162422 764803572 311259270 824838647 882114418 750287801 399600816 760709100 208481680 558061709 69506845 854817137 689109106 715741676 940300331 915324668 922945550 680649510 843776276 606360371 691869310 673651017 260245304 279022596 145529164 718242554 859002018 180859979 90280219 102732127 884469259 284529825 413906646 837447618 605694533 421249340 856357931 282355799 477410603 636874211 686867212 689407507 113798872 628339803 336984647 228758775 618387155 291517769 981041385 206476730 608417467 68869058 556516542 511489328 710565739 494701219 765774492 164486009 624771408 874648887 763707276 405607032 525862535 780509590 254956718 941541706 664267332 239085658 420026825 264968427 497340980 370112282 950755116 270262317 228403183 901580991 600354319 284406900 812896444 715804124 155931836 923497450 200903587 353831849 194632303 730521992 798012032 210456460 869362071 826643009 252352179 755832030 4162770 20041425 865167077 212983940 726866592 885128918 488024119 734723484 381661926 705920808 664228137 998501248 877368334 498646564 825139361 554225830 100863934 557395495 813089647 860511185 893184987 985424225 261942879 472479339 346032220 301871674 558774922 369110675 596924941 31393271 398052121 103652797 366195633 204796652 359498723 558418154 507362302 731117978 731237244 968505457 496349253 527571921 19915822 377034336 553222896 348948880 134551225 428576906 630311989 902159852 410659557 798897035 522430288 651042189 662213802 225245798 888323574 240643928 565893540 871893967 337656632 555651118 657222511 253290200 536301942 951047457 524844620 292509418 815242705 558564482 278956179 793731587 527723794 323739695 990392525 768015732 39244342 457522653 368167518 613711968 902668650 399859102 481229620 305340172 341695774 407879361 831356891 284518509 359141730 326407054 918330818 821118751 201707867 90684588 560166678 791128858 545323538 996206621 533283810 943623254 511482741 635903750 128874436 474942726 545454743 749394992 970580405 162003369 19039725 937237745 332573396 237953619 624704541 201312352 900847959 423458492 456324700 842261777 602416121 106624949 821855171 958002054 25350232 910914783 42766620 776038857 778842099 717272776 227798885 127876050 956166950 118446861 913839598 248154807 371572337 104496940 963522172 100323422 125326620 773089770 624106565 692590257 699250720 297106643 347617020 98795305 341865402 7652664 875682847 826873913 585200629 838908519 495402052 9001720 558849968 304901158 877930831 872187326 311843309 10176200 989814397 440368871 242277723 31340644 543575809 866656605 761985401 948291466 459213806 459303864 124280388 883182674 90383037 852648553 824693679 669116203 137542962 219616412 412963122 462954681 317826878 434196773 455920141 348766213 649214796 760367482 18029701 222692207 660367111 372046428 394710372 493943396 592106761 828746681 622590007 777330906 700962490 167512902 677877305 799433770 215835412 741415543 255897004 191490101 399031895 311352059 411500001 905042301 19824961 977291178 536919618 765770361 402686059 187178986 95880664 957959763 526342582 221337144 481694882 815911060 213531031 33927704 535749856 228249416 860948438 931964115 73779728 284294278 588131919 551027095 137269799 215540580 248036734 356521339 230504865 210238740 609266108 725026842 458071907 798495808 260862214 96707468 20095408 831575589 864187306 233303285 644847436 825677777 167042180 607809474 377598109 730469161 697394759 775283907 376786320 370749857 600306286 752085851 699274985 835632393 935702093 777264797 977566930 760370949 602239923 406009864 141315706 986993004 236645583 547823299 155111639 265714269 713076256 649455473 493620893 10467810 600815631 214388458 412325033 246268400 558256384 114330591 704789649 796260402 646814058 51880432 768286525 478365764 341303221 164998366 156169703 503171683 379873719 508627567 467513467 541327821 382751126 593677395 672942667 773864412 166761384 467551532 387316424 670269211 938638080 993787792 456579249 922073396 594229352 597545254 275159882 29410067 181485224 851612561 571198707 363750519 509850294 195653642 825110540 214816958 859605325 228728951 389748402 914912589 867706146 192772215 377032403 593016046 365718315 15731764 273343548 44989797 62796342 439106206 518113818 517211610 509584710 253227697 280773787 368273413 701975315 977670194 284972040 597998446 157063315 288545507 707295564 406865267 98262573 197539684 792258154 368244440 344503033 502444952 724483833 296266862 918806727 638043539 646028 484618336 812212132 804955386 674855102 919576875 252334125 379458105 266576014 127001966 514374634 701279975 164736491 520079864 557162105 674115207 968066305 976304357 802015754 455848182 116245878 242387386 155417152 661492134 825474100 225199908 868711332 695762166 686664811 653363244 634442797 579682065 156470748 946985725 480511239 905996676 646900523 699907027 878306113 764085482 896776771 364196439 540848884 179480494 644472888 439996796 982210143 515534208 307409646 305149657 344159245 25013634 947153125 739088123 148065493 495879109 293797520 369187979 276981992 233352851 966879857 507632269 378417031 146807401 502622035 361808294 156469008 123747784 208675563 470396547 718559556 511490861 397515683 274719150 688984495 276126977 406019858 184309069 993686900 48940826 286877218 767985015 645957191 123224982 88344593 119569634 924906364 264408822 722028781 235050196 616252841 729748811 762623486 277563176 551199290 536049724 547401101 887475672 284107812 819830035 15414232 470469718 562237971 391861030 447239656 765513326 4305163 822947521 274937850 18051027 179926428 828179347 563066094 610206649 974397936 101867674 950592947 272183114 115964952 98028784 699569013 452675896 968027019 608619916 708588146 370859521 403496685 857609713 178280334 32904101 691212443 426893618 180586942 138896219 92052573 792283410 35174855 83873199 687962907 944192690 205292048 58456964 215681699 758102355 851483303 676141082 939681139 861077599 464982424 756717774 897630604 143841643 152624673 599643669 548257509 257883487 249784796 496567931 190500033 184525089 453918253 489446508 309765592 584202517 920011038 856990269 963073814 98597093 649142342 768385909 923312017 422426798 537967496 242749746 225711416 390463612 375343606 156805193 89113546 470441167 560094000 789277356 16445733 629149172 897123584 173415090 111182675 910891682 465578382 992608807 826563858 314841457 446924084 297178682 928209375 25497542 335094276 422551510 243070185 647662536 944663891 32923379 571766610 22388132 349158368 846293207 831132326 946813074 845215646 845630443 572124428 488679284 832600498 578046437 390647630 488952679 662583265 397756875 536307732 203573033 358350853 176667302 187814956 605408697 295260939 565769376 330280652 514892636 597925109 834026069 459338451 848307161 411222384 149526903 698784931 451064229 252785676 574234285 266806753 588704266 196781878 904470646 285255533 194962597 889772319 764034295 545037561 990621578 496138355 220276562 976342270 453095600 496892037 911088871 567275970 742055242 757081425 488394048 861772075 689733713 401818745 57747524 443280391 819595293 933631339 39467730 881018992 106267866 526150533 62674536 541732866 649490201 509498936 181267218 523523064 548068464 440788716 658390227 799060444 956418077 554433981 744166979 541611800 701861278 329763265 879343519 458657925 465911242 553472251 844660865 322083760 175945724 355125963 177175779 32591264 776050377 921619051 450378482 623351762 113046851 543868303 623544530 554325074 891088373 294192043 364449967 848001065 183549600 567762043 727581661 942153870 764145860 105946670 431266810 182571509 872003527 454150878 94213017 454568754 502696296 701688780 1221717 193649962 272602898 60829770 292013031 19370464 340056501 950829400 341567942 359432985 849788455 954754401 202466518 144712851 256177689 395693021 267648921 625332444 54671471 900023301 683074306 545359276 806519467 362217625 336731165 936223894 816798710 707634625 365144119 80460655 787023037 929850106 477234187 218983527 695981585 256988125 951628678 24537712 363138223 215995679 787304400 162410366 376494869 607917716 784789881 246978315 832383733 474256655 739831423 146442252 771277244 414331846 633698006 118217968 220995269 732985659 369731614 464926716 838533002 110880921 939757050 442865315 352345359 340188780 599542485 347836308 551685064 518288933 11131444 862787298 393760940 37484212 191528323 416877257 136755401 531190309 400304569 836759654 155526611 841286075 838310279 760457509 314320491 205163704 189315019 513655044 43082094 203494358 147458122 492655766 345425322 250700429 489412542 90866255 669554849 125628126 101288599 706190593 489264238 283457415 389531295 848206526 424809054 913730261 85676004 158836045 440164860 960823651 206684235 811740901 27003962 764967398 856452929 970753799 31902411 92162764 513596439 546733434 662999903 67303686 816608322 791003473 155925624 701204677 516298014 904699517 142712738 672660832 854164562 562925721 586629312 16738515 632949621 881546300 80864125 92223944 760648748 825325709 103946124 940423073 120756036 837528005 901381344 783160115 757523280 216730658 328122820 792833669 126226935 418201001 750520661 813825857 133604822 330233198 891712151 330801871 206647277 898741802 587680833 355457589 584470738 980548454 994487714 45954514 340247266 353639786 624871852 633888803 874747292 210638434 349046951 90493680 500256688 337125052 589071695 594698948 85014944 912487790 570084859 587477051 258384449 30213979 174689468 339260194 51249493 258084017 130651018 44519493 21018711 579585866 987981922 263494023 627335097 820732404 960479218 292505839 135589161 325796200 334248964 784384566 300644304 500511219 735905979 312242617 169745784 81284555 135309108 347778361 563503044 687859043 842868482 406337763 61209781 687609336 787786372 372119829 683048410 160525393 924381100 568150351 281033949 772273705 266954096 626734751 10828399 4879020 64502606 469998994 854462466 853125955 741882879 705656436 968318221 850385914 632497656 124528861 337373322 945751599 646359073 311625737 855865754 611913840 142583267 956251602 47680931 810710667 573652147 326443890 933414590 714185169 121904476 860380033 299530857 689006003 450129962 98930910 82311454 581720393 237220866 535557027 930093499 735830128 173086738 551065036 720065783 167481419 414937648 68541268 288093396 989878735 618014718 43025344 913344925 787999025 481868994 299801549 466066014 552636890 421311070 108758396 48365041 299323746 834979157 58692026 96684744 113611812 857912926 276834010 428017030 76486755 447529263 450817004 651930986 148828378 194108224 534048883 615911895 449417846 364240477 31716656 437956183 164903500 990598179 936812737 823150695 59765777 826645640 971474805 720810992 39178968 209981633 775957265 139907979 296331963 210168700 861623360 573638494 736557002 6492902 308473065 409885544 242952731 740563301 765162480 788200839 942851459 153611777 176201776 517288856 949215748 550100871 20982057 611060661 629372512 797330488 556801042 344573861 966921635 100499067 476494427 218236032 622375524 984288557 332178634 176251985 478735425 70119842 784891053 749400470 774893472 276941155 801452419 140662040 799968059 221406592 121443113 370903434 217758577 646102785 48611760 650428378 554087122 258655192 98921765 105951640 12125342 620431287 199698704 615998470 374312156 402765970 503878390 325808293 457467770 461722854 925047406 781735098 530971760 208133232 53227811 384400583 768522193 889382307 235793099 806177305 315950487 745678098 375018561 273413180 673063717 201967831 148110978 457161740 547962294 105899324 32524864 971937651 612790802 301242308 231667131 386037064 724896147 152363567 44421002 878106275 706537105 39919591 351833477 410522454 133314129 446910975 549297587 234226477 899161363 374613045 798731068 898463334 758848982 845338708 366368291 801703019 907759861 673448645 498106299 26767735 885776764 314052625 21762002 279643676 27569980 680591273 225675515 785990215 510611567 621412093 73232185 920653572 729434202 178092269 415089936 725633908 406054595 981823885 434646503 118621999 182825210 433467320 683187476 737675099 716773251 710666764 494860516 78707362 419040631 923551233 191060488 209188315 623203661 802749197 366671990 406972262 376433172 940954499 278731114 829804211 108658355 509507203 648864485 786570415 493189457 478042210 679156337 157114283 737926927 509701045 446558222 639210310 967506904 269949684 426099884 465739433 71189841 833999839 471013814 181529719 469403520 989917106 905447156 360574520 116230826 344519619 448708365 421419694 760306813 926843460 956390730 25347857 588831722 801852815 414767630 666303794 80902186 996344765 484996822 364482392 629793736 374738089 141210929 291969775 602696419 163006357 787491861 947839650 55080549 66503010 796288803 167542758 942155127 287136956 92201091 17928543 941592347 328375845 792699095 896245484 436493778 65449382 168889575 717933413 125729574 688659802 364847694 848954116 251766107 882135823 53046399 659608352 379019743 114947003 323705859 180913089 7009965 64627318 893408310 597871197 216772010 283856985 527168291 688871322 757152292 664953428 68042721 483399814 500582162 630558890 432916789 959155630 676714981 889877687 381369032 845849436 313802252 855540371 335815959 150032755 182290933 960707910 50335438 201974418 861903055 352836438 471793798 956885847 100052557 812230150 101131091 793679520 324565301 41661300 701322665 515395637 484675949 873107260 468674140 87927009 408451532 547800387 863833888 659513322 995665886 379608255 962127266 311332178 383606989 725807003 888702356 976362779 840248933 247346117 986017969 46275097 914905184 850322806 894809785 718508264 748450076 21041951 196725358 212084772 277876310 737407477 104076932 923574610 799856107 346458342 634952193 235495008 370419880 694715896 686595746 753379717 167596376 380061153 300379228 817702048 948252117 512093932 898018894 402935265 518960182 793778025 897980682 537475508 136760776 838408410 135706414 882332640 738376642 359147854 961727350 259169834 124770286 396641925 883687730 915351546 27188693 334467624 529367040 547949332 481797146 887995353 428138618 718502217 151709781 979934104 61458862 468631241 168766091 49097009 246319240 921756680 507140441 975580579 642408351 88707520 401196967 294352059 462091989 286492447 274052608 124078596 764281764 387299462 749784530 873468960 484992260 918427144 952122490 757151455 860009830 945714765 672928898 358075029 723478121 380237147 596582038 399931982 806104964 689833006 52475926 502450635 771361170 606195121 539589272 762165754 894735651 253190985 808185525 106422175 329742672 903821214 693167684 253425295 640866490 628547563 39324985 580337052 244442362 261376145 110504538 422435865 882506904 491011592 466548028 16221608 165246190 898263242 117485852 825222811 909166145 763191704 953345388 434260510 836637917 529851593 236069520 15330831 92650054 700521803 93218150 533210966 625677292 736106103 116653796 963887462 769665039 979641027 198975687 790945471 741074999 101632047 480127251 574110354 298655859 912006666 743201558 373615640 25800401 217299426 2693907 298938227 240851140 518634380 643792567 958116465 963836742 17737806 263987329 83640963 441739127 137684926 105949021 901214807 931600063 835447623 296074985 671490634 908228452 604166479 965393342 537390543 570465132 234362176 498708480 685406416 806455273 42484672 518583007 707766507 523065581 525131374 615967209 736998238 35219423 75625707 197319476 237910022 182870726 748943347 712771028 869338949 982230423 725298386 964884299 749601045 263336767 25096768 501430657 125921956 232332311 664143090 218462913 188752726 840626442 139644757 474914563 637814982 619713216 715226544 787902466 675222903 360851601 510121417 63734346 647965444 504388998 159210041 354017665 835275416 493628877 521989721 308898768 182514136 111615868 994273638 493442446 5083319 969695184 731967890 852325864 172738343 844484272 602765902 312550229 393472885 633845906 319052954 455328994 472685427 333301126 727007295 95284010 561193043 203908911 41403745 457475103 150806837 219426299 3959887 401749443 627949864 947196386 236579713 511530437 973922176 533161114 468686485 350266377 787466407 854814170 718328107 129164894 89925824 545556693 572832678 940359131 397651405 644489394 11922925 702556551 286349751 145754893 13336647 381101469 456960525 302315887 113871147 756819967 645967842 363923117 532211286 437968665 610358028 290487819 280191123 19882992 777151622 998072245 90764457 105396169 540822226 567562785 289605442 13414303 781464672 827616660 793247156 263588634 484711121 459876352 725105437 734040509 359677053 263528512 465508239 853758383 858338759 612741600 471158717 149627217 752619756 776914253 381287182 239351730 302587072 700548950 682739982 845848720 517286053 466930410 635818868 708634024 779822259 554453694 748045083 604330501 838678576 694649995 618316067 285632422 742345321 978811705 687371643 229350832 505002273 932156688 529759712 759062009 578803467 729997963 868134944 592772667 459218189 405692121 199110675 94247702 744507592 754198221 758455802 589200615 274551426 406153123 936487461 736782222 863522323 792238023 156625351 829324804 690020297 193518977 482361435 202979662 605979702 971099061 217964453 832458824 384483508 486574131 247632248 631623572 150420750 432543999 449525049 818273478 935281209 34046091 43117150 408611578 241075432 657727657 169032425 35088947 86076582 115162411 670990475 824448536 513349306 781523456 607798766 214543232 731702712 914062784 590120838 394726303 76590401 212837225 66015886 869057406 989355306 187271155 454842410 767695843 488275104 784518453 480951018 716402872 239473540 860880440 371891086 453736757 117672498 922883141 936878593 449022197 245070987 769998008 848514695 968989103 232872565 763030393 655201372 673404235 243472832 776220879 820038094 176856197 169413292 576898035 366656313 849004012 239968683 971394485 327030005 938628540 827458061 200454891 913098916 387189256 521604713 436608707 200815412 661406701 753164908 154078434 500730566 621766690 27206730 461508511 110582985 673052397 489076999 617605383 375690476 728909744 305067650 634600135 808496609 353784383 68567495 361181583 280789704 438255904 789851530 303283441 70067023 775011478 904220087 188118821 891665429 555585366 132840673 801281889 653260302 845179945 6650789 71473855 300927918 416793208 214147058 588395343 843875562 952528087 33337560 379121102 555772395 88296088 50445727 169330259 44870072 337994869 559943603 888776272 901487108 662983351 131626376 921597045 820651253 522824465 141031629 3128242 871552712 147286374 691008675 446972963 829281634 243536908 232242346 139042690 623623153 514527031 328836368 556025357 184681091 50622707 880653551 250811235 555465278 831130639 931820969 84634190 390849506 319485093 753668604 938468984 3441406 18312174 455282353 607711750 168359056 548999990 144161509 527684834 538061425 965614644 890113881 808215089 58963975 488112580 767081854 176005205 742360507 898325468 673159253 693290255 77567311 382667067 304527174 562312714 945668239 226838512 190312844 902831658 381872972 426168824 520132490 440555615 273590341 541125403 662719705 376725395 347566905 416429577 15263473 366765393 953432871 304302384 734974460 428646782 173852271 973089276 256779922 471011736 184608364 498544518 308199204 935295715 964943084 510120054 466097751 891460428 342264706 169166221 30767013 635125784 235262981 37184208 488665434 461875339 385384469 791554692 706928089 223126235 919325092 32052359 521280427 460747678 190981842 122990072 31892008 186168659 85797548 751606735 149745941 62916054 611300409 869687731 841724913 981233049 644821852 640405634 417072860 648612364 420132495 801982542 142955723 999939746 774642404 545290358 733653260 499221570 254756520 743509561 301618262 757014370 271979633 326759733 62301993 711900836 897930330 667328666 324538966 60994966 87979246 977535443 957926065 641592938 821170395 354609354 73957440 310556149 138100760 747187180 129503551 3084615 737371153 394800892 26699906 722753754 479137236 983295892 138819759 940724205 947619451 698035498 678324380 923144797 887196379 433976776 450412220 140440153 328270109 316630817 61642550 612922824 629472151 82185934 828241667 971746753 705162272 501349301 52341239 163371774 211343590 731101458 546749783 565434380 240984750 420161859 863238866 712181624 248647484 190946650 57550989 434946873 728386540 118707964 671127070 854065991 597494560 165493075 746555159 366596603 261580332 411561769 881631826 368577407 950481884 98010580 949582082 821213025 791327412 424747347 754922293 101842244 925099405 426023837 531981550 165339408 246408316 394091247 175517569 910844364 572299517 892145876 485115625 143350051 962768551 515528035 232614232 840011427 300307313 181288517 537159530 151800384 312513046 75630840 893647397 959562332 261556611 450396982 15248416 704850645 288635930 459573412 242835976 143135675 487456699 126476418 973483641 654593599 759022473 702288388 355656815 931849120 296054038 126973384 21050375 919374508 567966888 586443926 140661663 791377755 782753231 192438108 761846105 701097288 222141160 628678667 26585830 188705944 815040531 707128178 396183084 194943251 80825890 958593419 40737536 673005614 927299932 861223408 458307340 983853104 651613893 126876101 929023438 112245468 799661949 654900533 531247783 500888557 910382070 852652661 483450712 184994584 289066196 793011600 241018212 479323685 991449707 74472989 547413732 400130523 320856827 226193358 84796828 586562420 671358305 553806244 673624856 334848079 960743639 194776205 917660607 568503551 189182725 704350080 119410218 244682070 552992070 631049050 142743424 440105954 891709564 385231471 911601998 516803869 720424158 943990145 839573858 989267595 802542507 311996483 488818136 683025189 41930425 872508145 946623530 232023329 290826913 89921332 921966498 447463380 380775976 312870777 609959746 965486047 769946988 806498379 206577078 580160684 53407333 970115992 308268845 575376628 598999288 559186704 556769555 763840040 635006621 98186876 895886091 270201086 721986130 305035827 947224096 990432985 248998561 762960261 843005834 853526375 894844289 47986615 375938526 409337958 454407226 75065035 135418474 389017859 488256974 212448966 739637980 57830694 66422947 566013769 374037671 503264358 157832290 477496043 243855004 529212524 29631018 662494936 62320555 786737772 470610769 772733997 776242723 255975588 479815909 564484716 365739582 953369791 354460819 71685294 796516534 480989670 646623753 4278078 664882074 975958391 774506717 622442825 753677669 860978491 27767962 761866938 413694990 490423996 754815263 964226179 625849750 515394489 77028658 852831565 471534938 717454588 212605729 901313769 820273008 647124687 331754820 144248850 289631254 236581467 974792253 902694041 369652952 751982028 627428833 368444266 619242084 717909417 476234527 678089008 556637284 829423599 271024506 782791897 602339777 163381608 183526302 684048739 994043569 633658276 664372276 992002571 764003430 434187339 939465736 870871469 447609094 410725909 830823516 918107775 350614701 94470903 15938968 527064549 164667654 306979043 659213087 348695718 316272950 734332960 403963406 181135082 339893762 904571175 774989060 667972458 945554660 853620246 925179471 587268987 567386693 673402022 722667266 180769558 928004379 945352061 238556999 435527572 794270505 49661903 649622150 789931224 286328664 812097159 842961670 963719158 243791720 758671045 736936828 648253509 894179404 839838680 930467080 718971517 108271794 225286108 577035277 700871258 649789956 204575364 73450422 176997192 453994527 731841884 494953669 833600080 97102111 228580000 391000774 485628081 962418386 160431064 410650461 542579367 628253347 207525864 248953873 805417024 266066186 61026795 566553974 479861168 318099403 440322694 55436699 590030181 411422875 426004146 352467670 423784841 556218532 900069128 173980806 192902560 437222743 679760869 783978383 279740972 806881600 64366039 120331838 326034038 820278156 437811599 312646778 762103865 679220222 421126930 529692462 110547093 6377200 593108830 925665753 769497998 228710199 618610586 591758431 993971495 250691477 928729532 294491147 102882572 976309401 750608270 973436339 790728753 6875479 523851496 479853487 355548362 203594327 546316001 39689684 814385374 345975225 499886322 63559097 712709453 932463684 687214956 515821218 90614667 702552042 385604456 77791979 121885311 710741764 628554970 716077672 344204145 889375862 739539902 275358818 185678569 299025966 61990849 109702335 360837430 203166358 170202573 698275804 225596345 831141131 110114700 980280333 374979263 831819274 822012668 820965793 349858037 144735507 443664824 540000951 669887852 468811990 947700031 935338118 292303526 443820029 517282189 181364773 698592642 417258726 882093824 936027791 156156878 127324973 618585755 289566341 511414595 407236738 529304966 21716930 101635212 394431175 929901719 833161272 685891541 430127013 721638070 801707799 318260425 694075451 352440922 333521098 998586420 818643826 703508151 36218366 708207260 329824538 679505914 21786639 710143623 563726854 19001949 512160368 939993260 709848473 857022699 553301872 230616634 960569191 529578792 897174487 251275659 203697969 657138753 350267270 730162208 236755021 336522901 424703626 67868778 729457568 8082070 739443562 389806161 167405319 330886123 307523593 97769721 448891060 568423905 444227250 877856801 253799009 949537461 423724696 686665480 652263352 569077998 557028765 174508705 939079642 706553890 37778208 651304103 139971023 768347557 175932515 691348504 31411266 291012791 84130591 632718818 906260058 802214053 396873398 13190247 571613950 43431345 144753649 36759339 415978236 441930499 309776507 9666790 558653743 199240365 740292195 361896632 383741518 198353389 178099463 823069125 979797363 552858344 553866764 519484395 237707072 465942226 520183655 22445343 987378891 412517426 402252624 243359805 844524602 418103100 251962759 917133178 734831812 44713432 589332130 576011614 896341939 858813102 270726673 447932205 161994095 768909585 560802344 418415046 851668386 278705072 479319691 78837890 196691027 767311527 82896982 108096068 669910937 104872251 576630098 999991011 835217260 393483134 892134593 693085109 882592408 498980918 681285981 265415907 139886224 855087311 406920212 391270127 204435261 214795308 650287277 938288262 777322418 506604928 311496301 109579990 805475388 306491262 835115807 234832216 700498832 702122040 490719231 293546048 175030413 136890338 450361590 212143913 106569432 73793050 375748979 714202104 114822331 700688725 539537826 846603242 921800606 624953625 714875003 302530814 331311011 359893838 860887469 555188736 788450290 876159044 521077328 933067353 993790644 515536358 300594301 944773356 915571457 425985550 630298531 957638514 838947594 383306408 217024826 473857667 507951836 458567134 614169831 495704543 758341549 405031525 965665048 973644163 426233995 90830984 425507666 740310916 107156477 802567202 329531423 687346624 188946265 434648318 615567471 283732869 468007749 503558110 262879106 873514671 72974526 832863808 911813195 50064092 778834962 263470238 440189007 898592861 424469052 904101308 831853255 521033118 162590068 895675573 612405253 279879930 115359114 320833778 957353255 879236525 219628946 196126507 486771996 136249029 585164137 856486636 644873379 64323550 789124760 249064923 527906574 435719062 902307825 114215503 266235919 630538693 81030665 782209970 594702795 944015085 787023453 518975318 170227670 926232006 134768281 630398138 316240054 293940976 918762329 770477565 645138102 354369793 999154584 47362422 917425878 29195179 856934976 44724633 181652215 997394520 321670261 393532163 557617744 449629101 509401469 360521861 546448508 149728701 988662920 497248688 528689271 286273266 451982469 499902573 723373619 534804994 953057622 607647877 437634223 946161082 876818710 870801297 744625842 508645506 561972386 34233769 282089166 382567363 371471777 9502661 52383511 282902309 287198524 315454554 857116502 990308269 505578828 859233646 486687347 1367744 8009937 646288374 834142388 345615301 172033359 905925386 411415840 76281598 268039547 207186581 655625196 381046137 195923765 973056553 789667654 643827879 145441767 508740002 91031521 918933985 16769138 633790447 383686893 791312850 539382560 870211334 553230886 667001735 129798908 963057767 174865484 521438345 798862109 927370807 892226979 108268393 393192614 574367345 393721262 313581297 500205819 152330301 859765316 549427712 644922110 217271060 329433976 72715176 323388839 462996298 707646953 280199782 825907545 811432238 37595366 18050956 708486992 892018365 510790454 418781433 341558201 380277827 102906803 533538348 175728657 485545130 446610485 47573143 950912214 29401748 541181906 677059606 946213831 678438162 969061193 231490611 992005549 100266684 107316235 149338453 881411365 852660304 384713693 394407239 111259125 924779997 553131097 340799148 82761669 884059641 917809388 551542208 341492377 527278073 536309573 839446020 614973117 811260380 255974516 185978194 677378332 838600553 186794986 850240544 703906937 393701448 607916038 589821361 190371934 531489808 511830089 223307981 882681155 263427240 43475241 480270019 195969095 960973328 495402135 693311391 504553079 283548902 572882944 101477963 185489596 292695840 762495517 940223439 326600238 909126108 362151593 403582233 113430951 412607427 341337290 509229417 372938554 628069595 904490220 255719776 843629254 574338810 329734745 996520082 511049625 301870051 807395221 206258980 322422490 821274537 623508922 471277062 559410116 240539589 311904539 300125486 62700496 877325240 459071636 171182822 196828802 659233833 9174967 606127323 975854831 83629306 193310745 949665837 451705571 108455637 39310339 151856515 302939879 899355206 328318721 625922789 269854910 692655810 549927938 958066684 508314280 895664165 540892578 106454889 398413169 449600181 894638666 788442670 309262535 278317927 456073290 870065546 357631264 87930322 341270384 372904502 417100245 910043413 469781236 269154557 276601906 983783698 455774824 561857081 229336521 858684441 527962086 35605629 955643915 60764259 833093348 521208268 926623167 715471587 514020720 932541268 782362396 971721132 592477422 842186170 265014582 995427532 948521480 674426387 26321701 922333997 262262361 66560041 407217443 108824966 440492362 88306493 720203206 624535172 914170890 305753952 54769089 398522207 664165915 620302329 344389947 832154898 26500124 223861779 451082552 504231244 610885985 972606008 525136629 880740043 525973178 857612599 751115332 346170592 30412725 228829137 578373039 22588313 816457124 527495447 964516298 787287708 66956064 107714483 213273602 575050950 832577511 704436176 869514204 271302797 574571878 707337123 976677826 44020867 609305657 50177360 555702169 896100428 702448342 835945687 591809696 752521445 865990892 952158252 398050979 559127275 256682534 134421602 526465825 797102261 457060782 8981243 164935598 10853230 375637845 140913804 783533713 866122959 512157291 690636019 76255962 419508179 552641021 730839666 330672368 921761881 171109915 558018484 403229818 55516896 843164471 355281287 499631594 149249697 206445316 775396233 578391196 94669337 360837807 389642277 559837920 71798661 24652739 306723386 589835106 315708566 507526586 240340758 711689228 879065056 451093532 552907559 463052689 471580402 109247095 665610350 727361078 68002376 818832831 487319961 613543142 44860392 620764936 144462402 26221060 70874626 651979071 698877784 617524099 101888660 39433256 140771444 905593033 13220167 361959738 117929304 240132455 27116343 867469513 699821279 567975200 43691642 804202082 280401541 662527328 876585342 703520217 500862954 875769192 200124939 170478436 687929469 56494160 947744116 343175435 693591781 842659891 197883588 860455637 462935695 316091708 431372988 481976299 216000186 563962944 87803291 584339133 797866239 116531318 334564278 779334340 691622829 333016970 462144998 736691586 652990203 504786210 727118572 724613457 175982628 982681731 813628415 852607226 802521761 473049207 239550837 361264733 735949278 596166310 671829697 27592678 796184749 295562872 669335729 192805728 198777403 719076201 767686294 591507574 298968831 122562452 321315634 204872324 544194445 798465535 365864507 929860472 534055374 725840108 709537566 62307471 532921566 473251390 84534731 911359083 284072535 493827847 105372790 878769809 647059092 936108954 90610328 86420084 481098218 693891958 965963973 767706214 571147135 9581517 772821948 786910233 201276813 43496111 494815485 761836886 840960751 317650949 417914967 841187002 242765482 877210520 477701820 310597150 126005773 21606195 715299665 899429060 392505250 619913502 439051154 963141931 242040571 187770431 134435149 922952671 694539553 932241813 847863850 316211945 527819714 225113696 303487287 511903337 374836372 230423075 324620595 712991327 86784621 379414564 270831307 89578874 182579356 155749153 202052799 236120900 910969443 22747430 869596263 591041564 877025002 770437748 984661086 532319549 478187959 33414026 793082854 520904860 779311127 44317411 885851292 218132365 784478125 43361367 667751743 572845017 836138965 228452156 756629608 870493889 282100340 217720579 15845831 735594545 896282765 179557219 741911492 477457750 166823410 438718393 756440933 925110877 634937367 432942434 346188988 247965812 584551393 254384926 220887658 45927561 782478963 615060505 620385211 856290972 754588868 148200882 598176564 73750458 239163597 404703714 314233647 337135884 998983809 74714944 472828402 766004010 781395843 33427524 255325158 659047604 901200210 19281214 612231128 820862324 820609210 297284141 436460272 869755610 741696358 675071665 931539137 532931178 145008678 745426355 337372234 255253180 61265296 176901184 911490842 344543080 161448166 171099899 877675764 98172063 894627222 578386240 378397818 642681198 344403818 486525472 121414577 392979546 405381755 672447009 861689278 233400157 52345161 310891911 346399283 665868521 28959799 697093690 230491962 456042973 930360416 442655274 221623879 99501959 315329161 819912321 351555271 335307254 322386067 268556428 241154286 35791844 332265766 253719077 856559638 549842748 651674506 119117617 946659857 119589550 508526487 354433494 760854116 33678704 699182605 961923535 719131998 195118747 849820107 20011548 393730978 639350151 758330165 882146597 821265069 87952137 756713493 231048524 675740326 746030850 761931316 974812394 152010774 972894436 323419989 82570732 906668296 111178874 371207992 267307844 318058390 829524566 992231158 33431144 38183912 251223854 929562544 109862462 378538790 267285372 547538202 399282205 832359233 946246752 323833936 871271419 229139862 13978369 183698910 505686496 659724260 194696009 462952499 62689946 879797465 663150186 79378663 724486089 4510896 487693947 455988191 220257326 831005091 926881100 32172662 210909916 109942294 290150234 411484156 192635187 74003323 438000858 250937938 284428869 742958989 712444162 431248045 150777825 383445784 511508818 285420013 357064046 555479971 251085453 923967599 453327976 227600859 831318490 489370377 936526040 736000881 718279740 938393494 127815960 544324493 589313886 629516296 631160424 379619893 97110614 511614006 861065474 469733768 953406190 836934823 238375469 99839172 434821658 229517643 390286165 10132371 891181142 518342867 155648994 833121586 909385236 979911275 621185172 830030021 180628617 386190031 206261564 542321959 546451051 362187001 445752105 169478343 498512848 949136934 755377557 13005361 204727865 690433292 441100684 348295906 775794562 129093541 197863616 792432012 246320651 465282872 770538350 174366999 56505497 379025820 467469834 147869331 640136183 196854286 102666876 781177968 882849488 127988357 447279192 237700448 570318883 671972791 981631071 382035226 7465901 430045398 259904551 464566600 918412154 16527294 506085159 275883885 559664676 467713944 577963530 731759909 975233077 475235248 739092104 809771195 381649995 519004752 223847457 720942184 864274940 623226187 983897769 475392717 194469685 481611267 42749423 955639079 86029002 91195644 930596695 644397410 513738752 864215153 372097275 138422212 760596192 238376580 75073790 259771744 465306362 664858355 359747398 576770426 522341626 851404741 921463508 759899017 84836649 934998861 931842849 117977302 966879595 929661884 824661540 986223383 591433713 774148910 780114844 235400218 392631619 818002245 948989238 143264376 946618621 945886215 516355406 101597227 498612518 565466056 347719067 33879789 976762575 121550403 267274249 667283216 272071047 226969554 219843660 117756499 92716865 220190679 427410958 305584112 328397888 815206620 458770595 448682275 689926846 662633869 442006779 228554138 689470727 183621263 322708414 885909081 80681114 594701099 348462870 402046254 940904998 425418521 615491952 542299521 684613129 99416803 481523645 286900690 960010538 398248996 19571994 85410732 364285123 344417343 652041646 243888624 548777536 653936937 197871023 81421406 53138419 349991090 95076397 629771379 806071451 861169471 47482976 976389855 996035658 91805561 644247820 37931073 39324890 270588460 819557996 240785357 678395273 357122441 159466623 2699616 191741690 60525110 440834094 355800036 413077950 277680325 589279095 715663515 139330004 403865567 781865717 458945388 87005148 667790921 865096374 554331802 966310044 176117188 7931193 475862325 960016908 57582394 584655255 800491765 615322743 521335982 839416289 474226042 189990799 420709520 602804925 365244037 71882768 582655346 940591588 164577347 841549483 308357537 749702933 101278807 196747307 769057470 694922267 222966349 117241011 976526474 755366180 626368914 287214032 141551384 707669547 212065128 560472028 10768082 293376311 979359925 872911947 440471333 37619266 664135396 749200329 421153359 405467376 905044188 422953311 490794697 298650574 245218749 233658522 237839582 350000340 78898833 175251310 371556022 891739181 740441494 508543986 619666616 147262730 146611135 550034644 698648808 194324153 746965471 302877578 205182096 262517114 634066832 84359511 32614488 588866539 303751475 345897210 861930160 856166085 422060103 448001604 61952427 44584806 257340770 128220221 345352316 437186824 575551545 453472835 949371593 834494668 129049925 39083379 560781128 328179311 337855787 26505430 213939184 353726603 211966229 655508878 465198091 296192138 600925899 251020899 229393384 985978378 59266325 851292019 79700882 927655161 589201144 970718231 180845323 353378654 215002187 21991833 247244310 698507011 901116144 606968173 257751950 632170500 528363739 927768203 993285262 854933945 825689175 156207440 589866120 12834100 325989198 418351972 555027979 74258661 754606015 25422961 933807080 186446536 483669023 916343080 492033377 915416835 947499527 49492973 644779366 956078198 610446545 846156230 552743957 281297768 131668516 383608453 768049361 70127403 952794565 233979677 19843953 733176838 484834983 696378351 686992317 531651549 611231633 772057429 149441022 763234376 143314673 319345618 302839933 771396262 997458111 349603870 33227999 561040917 38770597 325188446 323631031 936216708 930576578 376789609 2460574 847011593 82961901 314369787 908614961 668531529 683933937 193313221 171224507 301687850 181178364 438833063 834820423 605348745 729882442 233755854 487188929 669204347 893569294 191920137 713016293 972212598 527835801 901008670 833387256 360355795 251173630 529784176 650344222 621795666 659802907 640136726 656558854 137643742 489709009 44725486 227245576 372265335 878653084 129894082 922024743 828127168 585437147 746474592 978758474 733337524 760969823 803624296 302496577 648905357 13693521 721827216 905314437 56925211 130076360 285219024 643987053 360341926 225494412 634516891 715222360 74669257 369816517 464752016 394996546 254973120 458600921 382362637 580480266 312161923 757998307 3037604 113345952 617263689 111208582 316479994 977169391 32853151 658390367 993394346 913428630 848043565 962500445 80015166 886692242 342077644 445015861 35616927 536504199 488263886 747739458 204767759 13129277 278168044 508667593 458830045 760077329 822241964 784910346 853750034 584543179 460890914 885402915 709301087 659817935 424102752 9576947 107341067 207864301 375959607 470614905 321390373 635286956 372541515 906701894 12529686 57887205 294719801 757427854 32191766 881035379 982760676 173153378 827245922 72412792 82599324 132701708 170589087 562981517 486406627 783697137 953928405 357310062 868023717 40742755 853094272 632471335 914905756 844113334 59545354 345853644 573331316 264740631 13166422 885467382 138241280 392670473 672305367 633920708 591712946 275983262 246096753 907997987 818692799 820989911 217292273 530561720 780899992 515159704 808975305 810285948 222121267 869135001 615135928 951661381 474368938 175773633 629285040 709360943 279834083 244071837 733779753 566183596 381101788 970002452 410283986 932498407 619688836 208662077 259523796 852485953 684295339 195424656 219748854 454216323 535715318 198116887 899877589 878563407 718960253 766631808 202955545 271413666 781900248 959208430 451293953 195689537 728184112 929392213 473431996 405071816 977463898 716527818 560356580 530740795 963776813 558403851 704352223 491214520 160654933 846524777 940379893 654204777 885837633 921297691 989697986 932724876 664017191 643546403 288071224 614113160 342606609 407963450 14152730 332595757 635282831 984234231 433808013 691783769 989025638 682855276 809629538 20561666 16716565 921213077 361907574 784359850 601522299 851208192 502797160 723267351 844020521 638095053 457634424 718524141 748745733 947179552 651122154 34567636 394091236 17331987 719478790 205407436 393039751 298621554 690473968 258894085 732505219 249702714 685241941 236955362 201324766 339666495 806184232 711055513 229694502 294915147 869271077 463737502 581590013 466581114 92392415 538218799 561409737 101311234 298322041 735758551 872042656 378269379 25416851 804527554 619745588 365794169 329818747 139165991 119736419 538166061 508163426 268628819 69427059 42325578 793475025 920646361 983034140 417581406 322503141 220819067 380807722 681655442 880915546 656854925 66253480 708849456 759555659 822380119 354618725 212436946 714968223 15448713 615188290 777454193 976605177 824198405 343168047 540508621 450161452 717285014 453658664 979883370 438542961 144796438 739464808 735079275 814734701 344114000 218733262 622584940 433904206 875107450 796990076 158515786 502787873 71629797 201346215 61245124 866633712 358365841 772883539 277754902 947484691 270867049 541209623 523257401 256214083 995087496 184695942 466848266 86393550 975479455 684333950 740024501 403591774 663475268 981028442 314010637 859292699 863198597 807073861 275361534 866094376 708829901 25535990 378019174 28832499 498239000 462557762 282851415 396487490 201930872 341357173 102286555 579268912 168912951 864088183 284040182 820829276 591636679 305628788 552183271 856453045 717198483 955551395 837278111 540844909 88662104 457937037 76024731 551980183 153893773 628592122 962303482 124464151 728385801 600199560 503567090 620353543 935402811 350747472 526576137 938957932 94605088 120314942 996524133 630573104 490598684 110010235 846034801 983216832 284011767 652040262 856865456 126435269 744570412 239225533 170009249 387893158 659621044 367533513 333306892 935772820 494343088 507679530 660538183 972677773 925990349 218121395 514348016 80901941 699503065 292673272 158671329 764875366 371583085 245645107 491642146 671967309 928489620 474568123 22479225 235592233 35943436 881118601 67678701 327565380 762385088 887354861 90394822 92727125 707430854 74583975 343092534 768928342 966037785 576656097 575948339 424006959 838402633 402888221 449283850 650430419 139952737 169552595 659304739 184756821 391087297 98758940 654961232 178520283 333169550 535916806 46901700 141807581 689641328 141001105 614822516 694175109 182485050 915302770 186337139 206672228 860131581 864748416 515881887 310506907 260501024 769760434 869707127 678292608 575308444 541363547 644354884 737621069 847188104 31049525 899786021 386071977 344063501 57156223 496403205 257986368 903223866 982346451 752198205 977631089 453521509 364917658 781074968 418757952 447265190 388746449 685000162 527410251 780394323 139779606 343133439 503758049 356537759 149797575 668217132 753653567 149346408 253214523 989625791 549871330 318261950 354534590 435458462 389798462 71328494 767722114 482978209 782078625 633802311 259583507 985880163 372487141 285184745 307786905 57794390 153139768 550449708 192650108 393339664 155640574 489870828 242617562 94295296 649837119 772425171 738176726 495687479 935549437 219259158 519253947 65101764 937453793 622295779 839768260 448696674 856640811 429259305 524269032 496237083 876051594 235795143 849701879 392497395 110070353 399130523 201546655 794471904 33331714 162349676 708085774 677718401 900461190 439460305 714920736 480672811 325245459 804016228 126728901 334890743 500887804 633021348 198724392 561556656 521966999 38515804 418103467 932216693 757960088 302430453 40587289 805002815 383904052 490465494 807444593 704035465 88694612 204522573 232039888 174938885 390679673 200248232 935787627 387251870 892120541 770021771 824231724 498543614 884542389 881508921 334817684 998594073 245177167 143154946 910049043 448136715 218760251 270990481 118449308 721953436 789343522 448262586 32666403 439967342 581056381 264512471 865752231 445708962 153219239 310477546 282424368 346939429 985994403 228593595 874877446 354911128 772233892 561489525 653763101 549213981 308540408 263245228 965613834 992237989 311792238 907134478 737480354 137275721 141249742 438146976 872215710 258528071 328931589 356734148 329886832 154328010 487177674 317043732 380923286 688870718 86306627 253783056 126852421 360510444 278923418 677684806 525991754 687880479 811612632 679366541 467037274 995733649 74393894 749006171 811646729 559708652 302989007 245250036 195276725 879322711 339482631 290627321 52190417 516020204 590932782 160146788 87737103 64382814 300552474 736781011 8242399 815108288 715659736 859286672 58532743 310505992 977322033 511715693 257439043 409593964 491243380 611464164 122083586 73370043 113186232 774311160 727784614 62796010 644453446 542801985 987758611 420944181 934303338 971326749 991567081 272442499 700927342 394141590 716009008 321594306 665820083 849270594 719345058 123203134 506663491 142595966 513579774 220432948 297408627 228421171 135269290 5605956 490279102 426334789 869588007 287068553 337730420 347953757 378783628 553203289 712156364 527973085 663629598 276489637 321137721 723487361 111756277 199171876 739908649 574549991 345612582 393583345 748854836 430069054 729002375 315483560 836210280 684663664 984103460 348256968 98256555 713525815 56220380 471235962 964996682 516999170 849484456 603521094 481130882 193222850 476675644 493866706 650220274 990121918 58728850 227325578 921608223 514124952 138353785 90215172 468734881 208643806 951553018 920201710 825835423 683079965 853832773 18247579 248371532 72569082 983430268 796926461 865372107 309492145 494838138 777773625 304222154 706463483 971179768 926487351 850373687 346428205 173116526 231837684 172209099 880380616 700453124 406318740 805744211 650158097 382170615 343708589 440911267 814028536 394596555 865073068 3323298 37732474 983000635 654633314 949426156 296658513 874059033 153606123 995291743 742905468 240976379 283713705 749789986 164424204 458426181 806400604 947853563 684865120 538888045 114586513 676032656 339564790 493034110 51909136 837284831 372181598 398986050 543182805 517616387 858641370 895300140 185896997 658424473 888094308 471083491 28474390 839475237 274109778 353753059 225193813 710048550 705156873 999554700 209985969 938235199 127581284 680536583 152173993 580229456 27276855 912718426 352191951 636542434 280151309 406389726 927324465 967402972 859027601 117602932 848042221 559305924 760254232 490538045 654871114 955087666 445312976 805108695 661482932 9811517 610645323 764215650 670484235 294849667 262988048 145463147 397933916 331738071 502680275 69503135 595770499 248978315 648576739 665284590 567971520 743552733 248780278 237309085 877694406 428176987 296691103 132705410 353617444 735837243 858896186 485861645 156286443 704027124 198727282 215204915 668257119 258775445 22812019 959346927 5334761 571287131 834439965 126261176 452799948 423282489 872534419 817343300 818104321 255229974 364976033 838283439 924959863 237796078 636470111 532695493 918082298 803939304 687289560 61709930 592455937 276024121 548688051 994585277 284163448 972297366 719318345 459511925 609903510 297981764 345482299 853432625 432315027 681320204 748576996 743258390 732689882 12431024 774207491 280532714 366187833 64486095 653228119 974946492 579793857 654438275 895568350 399971087 949662205 714861098 726233054 983601438 172263600 507093733 518684719 490718167 445763726 583300393 67512367 845381773 830631785 915396836 681481170 707272551 404232309 719017426 487011039 844581354 228436738 498473341 129699174 40527834 678258372 466899345 560928025 245904342 107187774 826485070 370453781 78834750 1635224 742960143 849930971 609067304 307366030 409439323 41216614 76519774 77289265 575663362 614383507 930472292 164740523 139256908 82446715 194676950 180862161 147300813 704353817 385183343 492596750 735605669 706661328 933649241 875051367 759668390 943953563 170736976 67526317 499859002 867462528 794286125 314553140 364989505 319889257 573824316 485148084 353764216 424841697 448587314 710518893 670640148 512292037 781439521 979675206 912577284 320821909 621129868 580928485 312068497 844785274 112268889 324959299 146251981 358675686 821613202 324468473 509666976 741235731 643076807 937964883 529486103 499121107 433470678 764927667 984951327 173681656 820037707 860191728 911576597 476205439 388967434 379367750 242985305 548078019 271362935 220324046 533500203 87562856 201828016 793068359 926064798 113118423 986533996 349935241 34631324 263810809 173261205 653668588 723719305 253832375 285855530 725730510 956527023 90748548 392801299 159294012 337089070 201328678 143238374 911927758 214306174 568641424 897626823 698992963 769489366 649775262 47312425 792163488 608817708 886162255 752810978 573018974 27521930 321018538 603413795 903939988 368195525 36720531 717044063 614517312 938895771 778818004 466686387 958274451 319248694 757448921 508943549 301353498 955582436 568582267 341986722 719989137 668037904 566015242 360652019 280618112 888695978 40690477 625732099 257334122 452920809 851513738 410355505 337900028 593882102 855409720 5612663 397949541 676893830 494992195 276261043 327349431 867952696 891086884 78070519 449620607 621261823 989733430 836009709 490990425 723612144 970010714 92347566 517560647 284081983 42589458 995714405 225502959 499636089 112042288 528423075 565122217 550405658 337322201 880326660 615519629 197244009 455629941 843893792 580029199 568098962 984627989 188895459 85174660 69648606 326850964 895630234 971567014 374845162 479443204 896059213 335009763 229731765 40799862 466679239 755424362 592762258 899594161 908381592 374194865 565678198 336498505 873332515 800659757 176497081 756226583 826816768 388497145 519436981 211034471 853601115 309727710 987428821 35934692 822756890 318949565 35390495 170683442 957512028 828087194 448698060 96109621 492097209 72886803 658764752 351267548 780147239 930699964 846419817 479585052 945799645 922581438 708203973 997394266 973682406 222443283 921526120 695913370 209978866 453822695 492887131 854703944 141587679 897359425 363313157 211419934 584757309 774397911 914911992 777907303 365969908 253931059 987581362 165294690 144034845 409350910 920707453 366368152 811169326 226606415 574761906 529297183 296246207 988068009 499412779 354638402 748472154 817105985 475003857 704243822 473689212 821870100 751902764 742060455 582909669 141865172 105862965 206596925 207364846 588916328 786128997 380984530 618889055 566333469 792034877 205293969 738520578 489945136 990318658 116512076 155018659 117671528 447037670 622738002 619063100 181437726 700690164 819472611 133501693 729940499 604601076 36231313 989180590 505075169 111611869 609329146 704027317 552360305 634041704 231326338 659700376 372433493 480218184 636837765 102769683 939500807 357313309 607992307 604741376 903073158 638555818 568366271 960620337 320986429 239008571 221657016 122031852 128541501 928159353 485875960 101109519 600837769 584334277 54393225 988980518 973520505 931045541 773656873 601276467 919800766 629409047 957346056 922652543 864458677 390266169 909986615 913281054 594784898 909773559 40632626 439054724 912713506 890101749 240759699 241531032 956317273 758602403 687009884 967528753 392320200 739966472 456822246 966327575 681418224 23538866 560385582 715745772 916722645 686653234 888123345 864506935 127215286 859273698 599261801 855735745 460290672 661372839 658982832 163016707 353266952 566532115 321830750 781432426 858566518 274362959 520975848 823232694 310190524 823696760 241086423 546851599 867764063 122119678 285411404 315293574 674338697 291921983 517140463 824432074 258131626 114621922 851620575 186161538 331737455 122567798 779234204 264603645 788551278 314663426 206936194 74672893 743417624 201113435 363374876 949003807 508241708 63889127 160716599 453089971 228196502 32137599 607726355 801607666 363010292 183881456 309294979 632067174 879813903 214952386 712547735 88882671 120357814 297315745 526603256 815324743 901452702 363621483 630380531 471846127 550577140 341625278 118265912 606004784 157959810 907020040 35457252 30362658 819837070 432247602 417782219 63171302 288215766 636528386 744478919 340262340 979693259 599987506 985705769 60591596 848420473 994570198 423068249 986442512 968723325 229309852 297163929 12938233 928294994 119513460 71427480 915934557 282667090 782664887 104548028 53198960 410531428 286708785 44458000 595704525 637403155 291468593 550601127 772082386 234507927 97516382 48417201 366673849 537765290 74522647 127871119 630132092 531093727 978766586 739711754 231366670 920507489 117924904 447709928 624050661 545874815 824417923 793930979 311964276 775142690 889492845 368295338 937769680 902135887 447861227 25256480 897745502 372886792 761950919 80725767 750724455 869338839 822447839 533728016 940878713 53403316 492631786 830967414 176159558 241323916 727272379 869872953 422269261 482341673 593145774 985963219 543320948 136813829 573872889 856074629 313155357 546980712 122985881 174528670 224906415 988942237 132674093 511775585 128965887 574321558 546483776 311775651 213657782 599354756 546265973 347491459 366873727 644138145 123797487 198916984 297244956 542565921 488199134 869652377 994136395 782581774 392399908 268579970 156387876 715904494 430480900 665502406 148013409 999008642 790197984 623889165 413408244 778041294 953006976 138595485 245322662 679684839 683051586 637043385 319133009 789024598 446320336 931843377 367411738 905772920 691485672 286382298 614849945 219962791 357509442 547187390 241204821 731258959 998696005 655529829 967800459 998160986 65959638 63564641 734528251 242046197 865077319 881533773 240734928 261096787 696095232 712238238 960491573 662418000 811905653 712833964 389338332 12117420 383363480 65145322 551736746 986521037 740709222 226574579 604912026 286844076 135157031 460490150 142498392 235615552 984900276 481832030 375482736 524721585 487192938 190445176 558700695 547560400 420784456 495102183 238115667 821140739 669646029 358283939 402632986 505661902 977023709 289418857 148834179 597906496 567422154 594815937 435957036 765442450 621281605 240493351 137373002 104248557 141697788 913717945 709584695 271313953 964336932 174023166 559508706 549090005 504916556 620247230 417958721 714113453 940235768 767234241 284005634 339239650 308302619 194884257 830819855 474256516 42053822 795687372 411858735 453807289 587865095 739858410 380937652 717350892 815921562 418555730 275553647 866399128 384391078 134525209 775433410 133349448 510779582 815020814 221770409 712294624 874800946 914404091 802913585 495392575 157297531 868683536 304556662 130157133 573261687 34008076 530599350 526627936 403736785 572026307 547485282 267087323 185100506 649645587 531097439 969427062 652262682 397735644 660814416 223650081 987908703 759376749 405603050 815619941 765018798 484089786 171563877 565104491 876915237 824255284 186668403 291875485 993866630 248060015 595825333 206760552 425978671 643943378 492223937 678540052 268865194 256459500 484790844 714541852 220274528 246559348 833394137 281907587 212663532 231238462 208165355 769702254 314674877 862178400 140898956 195670063 762942721 996645563 142982764 591173820 224239204 273063972 743426059 232399275 204729071 26856076 474651279 315728586 726760182 152191354 812808693 404320396 359998704 189272290 960841084 32275493 551605850 29691829 801455743 171938145 561338981 981555130 157455417 109338983 469503486 272624215 70620960 187809056 682422884 923899504 742179078 599419695 655774785 235160092 650687796 405467559 638704043 799881936 744299527 248315806 549111053 139075955 348355519 512775625 290068600 461014065 837772589 282102101 526940494 31001199 208640626 299231513 734852022 647653490 393517240 360874923 946580464 308589825 767515341 883302531 148335096 804200597 895265622 95707317 122455472 234266675 294180870 273852415 355514194 92100539 330760840 810483560 666058596 98179996 85443648 321822700 414193090 308517912 111186557 910533350 739896568 149738501 356782879 257886126 106455554 328338754 873137545 915544350 981659011 508413413 677165750 263125530 220027858 927097585 770016180 723964849 719048846 280767187 203498947 358232410 16108992 700083143 381969437 439544019 29929250 59110035 157237269 535264202 706963218 713293716 134157373 420317271 642444882 187647465 9045911 460409293 443330764 144572429 641980446 821315752 333091395 325953937 112888894 137812120 850575652 326469563 553094928 749942556 996673551 601142161 274144359 339364219 415021976 291120719 503163860 98870932 373799532 151233817 796333478 633377366 734535564 79292209 871979799 546790348 984332129 335894903 93421324 745987378 512142547 76861062 689328434 415335500 293894179 656978404 945983259 9052058 825066788 53913425 974003195 708639530 911973273 572942390 447364825 361004710 935376639 342178657 878985251 750882313 289735836 235451420 176071674 197072115 297755022 307883219 568147003 568556802 644503332 452876741 442049583 335439921 367035423 320068443 46986766 786788608 101476515 176011977 255001822 169136725 135051976 12721350 797099294 705806871 66963110 564368318 272150071 853111169 559823697 179452626 300468529 20679278 413650643 826464878 529887496 966034391 581740714 842537779 121748240 268687279 120983620 389837040 103036570 352910849 192241536 715112936 883988692 939669334 181766009 506472176 766762869 9492295 387517414 81404677 171677155 609653153 50263716 324796918 252212018 361518829 192741511 609714470 790152688 612460103 471897998 9548508 571455804 12884372 200750392 431947158 702227635 336634041 943947188 768991229 46227006 372098816 964967679 525264532 693415579 218821543 77680948 784517387 465998878 541209656 209101277 663569922 629698218 661153732 907574743 704647754 768091740 287630355 757327561 470919288 513502957 310174618 488194963 244834405 919296450 504589642 193653328 90978193 36077581 594607116 496545384 984006017 4070023 190451206 123555413 608382311 994728087 330995550 960690555 190018463 317098047 612682930 522559422 800976629 263493093 501801275 261548058 453573533 444136918 469360600 577538620 458232599 340818272 157306409 211530378 279541328 422237945 12682629 471186550 380182437 610114733 719756071 521290662 111221507 136395649 196599017 839315629 576797629 492396287 111815001 684960231 739689592 706436370 739505480 560294503 420064239 758965998 867777136 798198207 412594091 581188299 365274050 360848955 900838804 485529145 822835771 427115273 443617031 698253333 661098448 740291480 202512795 900761992 793433679 960125298 667254920 156837370 334420732 67590260 506919732 520068217 609868919 994124718 552193818 465836740 382678344 883285409 196631667 586681351 781001807 395992413 224581776 931692549 362440372 583813007 426201578 399766597 882127808 329956790 276948357 469032997 232232143 53112516 120268206 602088153 786461233 63607239 538330268 651413227 275700350 580537689 368168348 576424630 232428228 325738753 530184887 425565615 90246896 685707568 795828551 119607867 109039968 142801136 414851951 916598023 381704039 18671668 758293268 955408562 831329163 320504202 53731926 54190184 113457511 250314593 879282500 341187094 949849128 655877656 972927686 837122348 183037036 265864497 832730777 413588310 202286083 254109216 390035467 16946818 23352441 295706367 178964066 608349896 898557599 121801150 768721827 802256278 712328523 895448133 338146665 113146006 445730730 775806895 302850006 743761392 258905248 450477031 214406055 727073071 180254560 431152073 106220872 955263720 604067141 274171970 866673317 615782408 94150099 731963273 660471370 320388994 441224944 594798369 750785879 194976351 465080382 982488700 530132392 777736464 75358543 545817052 138929024 138300832 413242321 463287218 567331525 56356216 386570876 430593730 793822898 881794564 781223990 168830601 870159742 932129741 994728534 342765292 312957735 418029108 635280268 625980967 270115072 354170680 504898108 996259133 261136632 296089335 82306734 429882042 683536207 629233909 9600627 772907848 34101266 165860849 116638055 857084248 721677057 180410130 884080794 618847456 958146151 191301581 985975074 357534485 477839573 539068745 867927435 506909284 147777780 96877011 681890129 909291524 744147069 869730191 112889118 258493200 535897404 761855527 899733889 107706724 261626077 62049843 361112272 518636858 32277798 799407233 907086592 135535147 293202769 778288963 914235059 132358144 702585748 936619542 640375300 207256767 941687757 689207945 532593659 967331799 270311417 756439175 516891167 110264353 279806196 416702821 185022661 378305592 982103914 534468634 53043515 870889689 142038384 508411132 723155193 655497189 842045973 15356507 305340997 35441557 958590740 329282595 418346963 890651128 606746140 364970762 369040859 610654503 3908930 842881607 913812255 228651844 804386711 959283624 148563474 449291785 954473530 599889084 424632390 9425537 112740730 159638952 215754340 704213418 764483367 731981976 83394817 912006672 790148014 152392665 106563741 709374255 477692143 58940625 672294956 764073342 605251086 550980464 924991539 147778479 872116751 177302369 363346153 210998614 316555481 58530445 179653649 941148136 681557663 231002810 993507835 713769712 465242125 939057341 320590644 746611418 527295575 953636713 120170572 472214110 759276067 308966288 605301321 917883427 399259907 617344375 655236190 799265315 564508021 652868518 514617262 844167519 845238276 780196419 441071791 893623239 448767864 521092222 964556180 514599338 397240236 834523999 174539140 860085619 38422481 737916038 371854866 959212391 417607244 445660986 886571829 987525061 364446944 34616812 77760248 820364676 178961888 639067300 974267894 671110716 640200185 934312132 552443747 390881709 528230800 140595855 150761898 994270071 291378136 277539912 500638462 628649189 574772497 372482363 535060142 458198400 812420307 756781660 484956998 643411231 178509715 859095720 722868202 910673158 862510880 211946924 612319276 342508328 956514290 920766361 700383039 122350598 719924217 547450875 720974011 592659036 332128908 738765816 533005563 368907089 586103115 597312174 578568182 867950146 225444525 702837328 643111133 444562946 196593815 840219435 427574775 518634869 223863751 813538645 104594525 109140711 735496121 87856840 907652618 523298384 740771582 971363114 6287443 371298590 749869424 63129202 39820975 623691467 555199544 641350012 692182968 516098725 387489671 387475293 198771165 200930185 599322048 310968461 894227512 666488356 135265460 598919232 416647231 602985629 212429565 494693302 260083461 408811565 146809222 55517089 749853782 85128551 197311812 60537654 47842490 557622453 781664698 649579106 602126794 709061774 718437870 40714423 405637404 494268896 378883009 491119399 352760492 979550964 15522938 90324255 664733183 968631083 152831335 959642547 740905275 964895620 780883110 161212120 396020038 417359643 927325083 766153302 816848454 686606808 432419795 963493755 479047117 520558182 423146408 569200241 817630570 135322047 528214315 936984027 650751968 943978099 975741080 688073773 410600286 540026340 261085294 753044781 200919339 228653198 637033419 802796098 684207934 528712673 983496809 235617283 307949784 893047101 324986050 961334978 974942943 426480124 848510270 660061766 120545717 355896882 579943286 523102057 301443141 461086293 385227300 100779993 374777367 869192314 569860633 10824513 870996611 868166918 590851159 984665445 90188573 9620326 528550101 49460584 980732250 648739350 626834987 143183907 655228060 601220726 923420972 44130438 360348313 174265436 386820898 817248039 779309548 250174793 821836805 900513501 381535728 477680858 808008969 971647911 362259298 109199618 777276241 382812569 444483018 438844277 209356177 110584263 878266235 971203866 675005500 998782491 367851432 91624753 779407387 310582696 621763462 901170015 735765459 240448426 371900660 399733756 320748419 659899086 975316000 358305287 295460163 309201579 235670158 640960392 952194396 518051467 642166852 640033548 472937708 773651921 662066800 453134749 185729594 24812661 826185706 226914082 610819894 11699038 342814331 807044040 32799860 547893915 723544648 497956884 996743168 463533218 921941223 623886808 441565218 486211251 201324427 889979916 991646775 402228585 612958339 94746189 524897753 764037797 888893503 299131590 270068818 537826615 475075141 408935222 29545134 400236115 13441584 529743789 887092757 896004578 685283758 658194794 745906187 100208401 179243664 579901652 968282811 153857999 890312508 469314111 508780905 341323957 484553318 716907598 405446925 312668566 254653303 589151675 523579538 489789942 649899610 188874676 311179543 271620654 215784398 623976777 623628939 259173480 266977661 957019304 899265112 810623840 996741997 442519876 633165195 538932955 719154068 735229060 41456987 144204481 982626627 282888482 590257305 770649335 140878136 960886241 778705007 244278212 326627387 871189098 922587941 321865424 972624393 573963346 311946275 315816287 160127744 577999456 765453851 174295531 779018406 231298557 3224362 359856510 155768788 931340693 520110921 206276326 92073878 344805897 103081286 336719950 860843949 377254418 87679459 59017301 441378816 571396989 570252381 374946718 653059942 100151863 562566465 885135228 209016496 973943834 550029895 297467342 189163660 95273660 855917964 934124311 575837592 192171108 549552158 447976548 678279887 214050839 54604227 132365395 462843627 146343658 767655102 208467243 510032799 914998782 726604843 996404647 518398477 91296978 62908549 856072414 488850992 173735889 501343362 895263958 32810316 124743866 49829758 522065928 88195957 628611276 206025912 316712594 470004708 432156890 106657055 58792546 142970744 656668071 427833147 976720105 62154498 982644741 133281991 450363954 137421926 814312540 644243281 554171399 897216485 176095689 777023093 252400084 822967668 233631749 422844939 521300406 941941338 821485010 556609974 199868202 720769719 692086978 98646928 953411175 670531304 100792774 731970358 506762697 244237906 17065799 961590548 794574432 446641719 6021221 90430538 826082276 735256057 727436158 350523190 370792457 658001776 412258767 182487994 897833466 674112308 666215832 103389788 210675534 612385560 324028597 429346289 811966989 933876934 21666485 271675624 903922813 910674036 246218100 526398441 883759827 228240497 608706369 105310867 888522384 371799469 238695034 148275463 271985909 187520436 998307666 255619178 644110271 586694213 754667646 718870910 811961405 607011835 143479943 617639532 10747403 342001404 443548385 663347098 989602844 406208022 823521712 770151305 623744085 783245023 555771602 343528123 698896682 173198874 136539961 336388784 926297586 534672328 359039565 551267838 621366502 452362315 589392699 123383186 196449008 240238480 848564339 386141468 834731875 688163645 645210448 821001792 711797176 684802668 174686852 734364348 100578812 858728044 790827367 180024718 107093238 739345548 233805722 306863176 908365402 394092571 770751598 637513713 169157455 59963716 406570376 473461514 623895630 627591197 730657234 340214815 212643096 40094305 394221362 364089579 684760902 417534548 179149526 111968469 92862319 31285136 447516170 854384777 691333108 694480150 26572119 660827016 107958003 361765721 549058396 229700513 595499793 337826536 928115501 218888751 423141891 669196416 219705029 260918995 925987335 937899919 868580907 837292711 500671345 177441372 626755928 164418678 952389479 477557041 339591526 428731059 646871066 453507636 809071889 134739675 324941077 288761795 378832462 658145276 543824401 528837874 722846444 174184756 742279469 130162524 145312469 719730251 929613185 614877497 237214095 112912125 775091102 393182172 977323082 224647138 673028791 829112634 581683385 3999905 884722297 486303634 69033430 293046922 548595735 568572879 833875775 558825255 506613541 351592888 526185970 882584451 623827547 987392927 688843748 102432225 822449427 297381892 154124425 287531894 811872377 257850350 784944351 422986051 357025433 865041089 143231771 824624698 741232111 484342983 813351771 867619823 14287631 940184864 927992012 684487497 657952770 156058554 670527921 362270795 948332578 60057528 566094544 725631086 245739742 713699924 769862613 615505521 236832056 545751399 328122583 641479561 698035816 256300336 771558672 842195159 780294811 909628081 883061823 547074481 160634922 813663313 9631294 877207037 413838642 885291661 199189054 851652221 442577650 305192627 210336761 159274682 315479610 524937983 256947056 192072408 375491536 360446769 946410328 668483955 818321222 487024938 64199576 174619404 99119910 539559283 795268366 387132172 827689392 2249935 384861691 959536725 981050328 705151887 171985659 753484779 247714014 841712911 244517505 997741983 303597582 530265217 967033178 879778494 318143430 399852232 988445155 115292035 111762512 627092929 701015006 584783733 167413301 381833092 521800656 455335249 408162755 301007513 563054031 719401867 994112489 739439438 648271205 478815081 95980183 113648589 121526820 818516808 847981047 198663577 79198364 980263443 49202683 701299727 736427649 660610812 496119590 667105510 303031453 519822071 719403294 54767324 659207359 26084594 115273386 224245012 951292156 402822236 939972792 214700426 150984763 204073569 739147699 436910283 562100743 780543420 212629532 312381406 240635891 768903642 32138712 364243384 33908570 618677500 250272179 515509537 403645199 486486554 826102478 103386163 824276983 547058140 817332929 906577906 336695519 416234767 146402594 362498773 251984439 210169713 933942796 770024990 346969407 179003999 911999831 551035631 109232214 386374254 345788829 453394372 567692718 599638287 307240011 896122590 39447017 112013024 45010928 304047862 911715550 357102719 525909266 918294068 496329292 314453428 146950444 790156583 150949449 299740138 769435080 718415716 468045604 960008099 375985662 323991100 626696233 662236542 468884854 210197037 749453682 920098718 482822779 473814458 495067690 373132284 834780393 445618718 852477012 715736244 597126137 858952177 143291944 904817506 822837711 665550842 5493916 283926048 341058203 310432703 820277124 598986060 62858389 702153266 754868177 321390428 113823238 383402194 886071777 243709812 278707054 87625505 176591947 181380489 971451414 492863177 530303029 140328810 43213567 179771056 245504437 992255334 733870140 982736356 706683218 741985499 785085296 344312534 430394431 207641607 501060535 745525402 949400272 552838167 639281388 649083927 126210813 209603409 106170353 376208911 761170433 629429898 698938528 759961257 135405356 967096407 939423674 762195315 944129084 127294924 255012350 430122066 29855889 26712927 386094816 535612560 143165200 405986946 367669207 320309063 294445262 902875634 864752185 957093923 315514736 546686450 773104056 529584640 903431381 783322361 591142682 978639456 623427433 511502596 791647427 967135761 25985059 172749535 861050989 847960042 337388551 553156436 596694772 648184157 683634521 989409923 475314616 13169920 572427797 872298811 835961841 497902626 159180694 391036637 281365075 15951555 186795035 721292957 770658709 178273582 886874600 594966972 677938726 695532440 555415931 27676357 952570810 31007708 883502945 24009741 813270635 776997569 7877652 901021434 437414759 676534776 17374694 278664535 607320742 513558092 923466688 66219493 171280830 889856897 324342659 571735141 760205546 139269230 194923314 777374851 490748280 719261215 717301210 154534421 83028732 9581039 230830302 639199879 699791555 33445974 973379091 525125298 427593912 677307324 372408337 51470086 86980602 905414675 640331671 829122310 191548681 343312683 219545839 655292112 927723041 360229249 133929894 39604990 9055166 848730016 646462345 70742972 524952811 2395056 299805709 571747120 184065615 35753215 346619555 909018024 65945891 274752277 45162459 244608937 361057307 348244885 445430025 755464799 577067985 826474737 5128506 480474010 60244338 725965579 378086233 589250094 68124550 890245242 327959260 339016161 489545699 175372830 535812930 236220385 787037007 313064455 237146254 129923079 361056241 567155061 956297899 607309997 520213479 837822423 497910518 902837213 529074983 835358407 191263674 68397560 308344889 972387496 12766121 366279149 892217706 522570483 801651224 151310175 827034576 527118279 689693057 687369233 307094425 397903277 126845301 805851738 784925829 244093550 358409959 527107596 945592687 895072490 754328577 71638026 722185937 775218689 898357614 986332230 127491604 18772258 939140207 634604202 977840196 761855387 996168210 468378870 809775852 954505380 648022708 660673602 68325655 321650598 678835363 596882423 639080891 72444279 160078519 467099514 930609432 770347671 253755027 100197139 771819910 833218824 24375630 254329718 769053571 770267901 952000409 847558231 267828960 694074854 848238410 825187754 320996499 5411970 569726503 180009718 980436054 678232728 215006195 504983327 938796629 943755772 402776556 531617628 669322052 236689332 992447388 435329434 270682270 995821550 740571785 182378654 536373144 640996512 83310116 893465745 577306769 44042442 183365258 854255171 657909550 987332216 720105774 766437600 557572612 138813126 96422241 252801194 872326345 347630975 597499311 447324624 435143577 60449603 310379184 625711010 844719683 772420831 957220865 569040457 859281819 228577264 167045245 89569665 82580790 518443374 532942848 768876971 58359701 557521473 779320893 508815885 959676733 860905055 462036198 632845015 278866397 803669204 753351616 549720170 232580760 49725120 829675921 528980325 299070162 423386539 815352319 675434371 864543680 74526211 31649545 78991949 382183860 685176553 182885141 665086472 682996256 304603833 455040603 619158789 713728375 661877878 549190944 796215129 78797419 860559865 465742581 342463354 324171284 277133080 246969089 527299037 717554845 401861291 398657359 61092948 724628110 479464316 876934028 833623686 203562675 119239330 888319382 928121076 686073302 55014485 894577515 952895731 918415424 939399503 418515076 659733012 574244977 320254457 215784676 918527721 905738431 469331954 807137503 845628690 659784527 362710954 446957201 522622586 371851848 593762069 634267467 699374173 181392298 210810684 498631340 763826300 333675714 842118318 560321341 372241826 167953702 788224563 951478896 952252978 554349436 799133761 337406814 506991688 858449185 430774220 104207219 469612831 194927329 108654941 512975143 315740225 202750601 935547882 310618130 370745406 301210957 104152159 269501945 420067797 175273308 681443489 634052475 30366373 898797817 41134805 882404386 247833915 485314127 988713365 781722433 626046183 752758132 367242524 734908315 75459736 627432729 930223175 754550575 92883465 270987425 762851009 640520958 773016895 234789825 447658567 91160666 938527500 464436697 850586780 619369658 44747961 854042400 129800636 384791499 682758400 766094286 367704287 117622467 914001007 686733159 684678639 38641388 630926889 580468602 261382004 853019296 509069417 133372031 827926623 367785144 283686864 379236634 624364232 198080431 712599525 638073110 744600042 358965466 34129705 613597452 639736524 848871154 377183695 513499199 676446178 877265482 498275062 964634697 748279891 344914929 548332908 328279401 335529910 413048364 649253482 555670465 235401985 129008174 203064493 257257602 236693701 647973325 857195916 429641811 705610043 662623122 766036538 861496989 557535671 819885846 930864099 208728439 860480716 518113590 393933226 333793995 106175691 197643528 755588132 742693231 616051015 598408083 343713085 277804311 581178226 509032674 855574260 743820491 54234690 914127160 436007734 196214864 511062203 984363870 544200646 997568398 994361746 643980430 836333941 548359160 509044373 399402673 878494788 91987683 195875851 560353363 701291477 103037382 686527195 896482191 138146086 313872159 560737354 356700990 874564765 292670094 285111786 562258752 907304584 113267274 669041149 346820540 109525470 12501458 856186156 81243021 389123904 762353352 379551583 507686861 333201217 436423682 209980249 724732611 864369937 240715630 516908816 73144616 64862971 998150142 362398429 540327706 807223525 158699837 290158737 379259316 420804222 620898046 822559038 313777275 186657526 806068830 987645694 94290784 734041785 434030732 893523698 482440410 38903612 682981201 208733768 922761282 927718550 922722915 363890741 917669763 166478320 655598416 260719810 431336073 453807449 271198237 555130760 678884074 621872640 927389268 289303398 777745987 99033553 184775800 715085125 755529274 912091030 641697073 993243585 180331056 936062350 199399516 446760481 699360539 605371672 641949277 247622144 633131487 573583867 729479172 922640910 575471399 370564434 255791098 242181454 952123217 754971047 207012942 761166959 15127743 950421004 267718701 445910258 23545279 67064662 442722580 778660385 231352246 458524162 433597062 311919913 488473892 338285409 307062856 759660087 942276745 100111357 633344772 100067149 537275616 818809798 106084734 61107099 942848377 930755874 650843408 360970960 105941510 936104011 325666755 577756553 173436294 93524694 940285886 519206614 632808573 76341909 578816596 561939410 724669744 682339613 299397065 550798291 514100439 950223479 686259500 761984320 303395837 823081206 754027689 849188447 149834258 142449998 733483484 788793745 350316625 525833955 843940595 781873829 600463085 426398998 830402327 293280855 518335452 738392556 205008101 760285765 518392106 188668594 432896639 726431705 129867518 889782643 810937554 60013841 765660682 27761398 583789103 534494774 767851067 505402922 526766362 579000975 215381138 463427227 508419266 184037569 757981847 600937925 52885264 142846106 623453943 767550736 542612702 561187320 113293392 626540955 89146111 395584896 39462128 459955129 160324898 308411985 914073639 305450456 654625479 335637987 957484274 937154376 359214598 891503280 321541243 399333437 294175065 327962019 344521679 657298754 564269320 816160085 554241250 331369496 616572282 935456246 40512809 430949398 706672843 35776134 941178838 387162524 513028778 443394019 651266346 986637672 10862232 740128764 584375433 126894253 561126489 203173120 966998672 754523009 189990479 639831753 822796412 323515357 701832462 995294152 883078105 107246015 843652376 743711856 137370199 69088245 133618392 664453820 496441488 826279135 710355754 812079392 384863574 342126237 446815616 947798744 605216287 969392131 157842238 123230221 184641892 428103559 410483352 151049382 440335160 772349287 241407745 428908769 426623516 639702203 687322479 969237676 472702825 188557046 909641934 448596251 228387871 746708947 356004571 83374973 374234825 511561638 821350164 467843337 906431132 256433388 183508238 663958429 891796182 933997826 832343178 51052608 324209059 505238382 452462770 320521391 81549267 824360443 413492502 717408287 474059477 369527188 61881919 911812480 385610347 381747746 160400584 49117744 443928065 48153059 602391520 155950520 43019495 156736893 453414855 779562556 759345519 605979599 531313133 230648663 592142371 865878508 860612163 946031545 190174643 993681249 638707507 25946482 168742818 430345783 642168204 288004925 361242462 986803200 697686313 807054520 45638027 720475645 152712184 317008390 872910856 95437903 244519831 426410940 235318538 751331956 204421483 974136866 444897424 94582513 273572654 29876178 178642629 457269432 146062715 13914629 307403654 983032556 863480065 994768023 569679766 423713774 79703026 371930708 552146563 135278575 550995526 65300825 479217441 845105846 832129055 936998731 982462150 922647094 867455326 288005192 738046249 628751735 993763107 563879263 710544011 620016346 59299348 501729633 216247125 840785530 837987178 88065992 6866200 771592681 577207313 489140316 714131514 967268183 599601259 276755273 943321993 734189803 377876155 314533823 387239178 892026652 43452430 689315398 520507080 886586304 779724030 777414955 718076099 158605094 715267434 516316713 407514698 450935054 515004853 720561399 709196209 69463315 376690188 268913959 367656803 359169035 439745004 639096511 685700707 530745629 276819610 860297082 949756052 448234294 249749470 998838374 599915887 967849448 986114504 548818810 773777622 903164790 638943805 52967920 86825471 309637405 818681875 867344564 741068274 668662864 33415157 840376966 289569055 281960776 101037800 374179602 957408787 490883386 874400376 908642232 332846415 190945356 70598172 430875287 834909471 230912971 854495752 252727991 586755909 666449581 29566843 930916491 218697663 442232085 254970979 879912844 320683897 45882806 39207792 667845307 564850149 370083257 703419697 437171392 514737514 668976837 172740153 123990613 475086388 780233287 646738691 445005252 278439465 231728899 305937299 180370874 541603321 813522849 852132091 989995943 554768242 704673556 989197665 554585924 984377675 909491242 289151540 614916932 401930568 584802425 737010008 800393488 573456338 778777120 346994403 728628726 903466994 843219466 876908392 837306266 806652495 263453387 456907202 188257115 54309514 780002846 150278541 508548815 154742335 147127849 992180469 443324519 420128875 107471089 705004273 739890914 742251942 581040190 733355612 686984608 897041512 985859460 829662292 259821824 773905698 365402387 804480238 928025988 284510983 469491136 166043378 602698128 724823168 147659875 288063912 845745040 507360797 791457450 219428265 499670962 996629253 802224198 652662735 719885404 561479549 437574187 199703097 721613166 803532559 239488268 585676133 804671992 814598510 272525103 105643096 927452991 989582428 926509452 100647252 960442306 271919351 609596696 268251820 843400355 414389376 40096141 76228878 658208513 555907848 34822831 531445578 957506182 26461523 366736909 83597825 848624350 807341024 254322896 944304244 294120356 220118830 780609003 398164058 260889011 416633247 754783648 974305233 508660522 568158763 368585341 717854768 94187237 794819506 104875492 580333435 134772 619964295 519593340 936713116 638117985 308166248 104441830 117715273 546135764 756101773 118727662 372321215 209726545 564841284 448182252 595232103 129906370 659280216 22904703 31366425 921245789 684862581 474625412 27235166 924160615 723601913 870651830 303935224 679871851 198615204 878530572 713578435 882635540 994884759 562567175 917065678 124366892 987657394 4711984 899440617 568657356 529954328 725243454 661927450 343629483 380446831 991632244 912834669 713903007 407295776 933321910 513038859 46796300 277597293 40184053 53434501 602208520 633000173 357358773 559501915 559532721 376182362 879091411 235842329 932656769 542704414 18946518 23036860 88134892 124783013 899065441 10879649 799781278 524058352 457987647 758354225 376299362 908990617 87245940 715298392 293821713 595874750 708571720 558039591 722742431 652260270 20341966 893505733 660387649 586205820 478167556 63364580 810438893 551573259 41497934 974786201 283010500 248968232 763068673 332466938 857732113 76696541 741825184 261948818 22840242 385652866 552141178 867101696 272682260 66813310 107707755 508322984 485126641 245284455 704602144 880412426 929879206 53200434 840605225 644060770 160073782 707911115 658080157 58116215 818204346 47256244 78852829 916985961 340360785 472086635 468571883 61493132 956676652 152234726 639922787 638065671 14735011 840284324 499413881 252123922 909483922 586615977 80078091 897945360 290125654 968842201 236945540 886152034 437241279 430465046 320611849 791018448 823090449 438515191 975004800 877152787 980678325 42104453 282037547 107032849 807155686 764280507 651073353 923494170 281466315 845880861 382356951 265552722 126852303 942530929 158537452 297216740 540890073 6733820 670098641 371483374 121551342 864349488 86958971 715455318 769610819 955110506 112950975 315073186 401310333 90998113 390847110 144372447 568787624 971670528 65022935 355992846 344291335 673789541 856780308 869701480 806668396 435091626 242523829 898333666 37132324 738566020 526884059 624580938 716993714 605435410 120812878 91616778 706065031 638272917 188340461 829659687 607052043 676825744 761879731 984274747 100541191 95522046 269678171 492225828 671502288 235559912 695580060 483829943 960631714 258492449 91184798 972867550 598471708 754481120 664818383 915320568 486911799 400493556 596593503 957263945 691180727 804626989 784755172 106604162 592255290 798016276 771351193 274807371 94927136 562720302 460164713 198124438 173951701 314001540 264469684 358500510 535161531 287242068 488079641 34706378 603918635 995262573 786479099 62193543 71795787 384894348 418535994 72514743 160847226 340116853 634599121 318512056 83948314 407818270 167108525 857796948 33843804 566921129 311884639 122858795 983089319 506590266 757429278 769111332 559530229 103260887 121397581 953798833 477748610 550878072 173248315 245074313 393824072 52703124 732039959 346790882 321582557 23365933 11593185 686993414 585509908 223679519 505097236 743095986 30137381 1030949 763524489 33503350 530220273 235050885 706297972 414508347 303912653 474838528 60936710 324407371 354085255 861501113 633527524 315984822 156098829 733198413 586441356 840699654 961515012 149704312 656382790 588871066 107567090 648626695 441503296 768389164 149700908 827884001 124202299 140728492 104328120 131448051 545998106 841071430 259211011 534426548 434236145 129475116 175776897 991427118 575170570 436814855 82149738 753602773 118449115 280543728 833583731 109863577 241584468 824181549 986243783 985231685 826717131 435498843 82101223 309095685 160715050 441142842 663716362 294874677 790329438 773597433 916408970 578869364 306032255 258635517 929099390 62265276 898311818 691728070 342781194 800216799 900723349 327442535 5861185 93413232 48821612 386127203 420463798 698347087 432334042 652488478 126825256 132565629 121087804 470016625 946906637 192824393 848267517 488904550 533157427 50046828 715648278 388058993 785235978 954535812 46915285 340329767 711102453 303070359 223741756 538035158 414944969 346867333 194229664 722491392 767164930 34172222 513717179 367483341 187257370 530020944 428136671 615264728 47765390 762718350 94372411 157602932 227289685 140435519 848293098 315541089 319097050 949796417 980623956 982758380 151646441 902751231 227611734 187071884 365363777 55710635 741313413 135914021 386481145 293275781 932018675 529680368 490724524 723794750 316067031 864062655 605454973 636273114 509675152 224491006 971280745 504849174 580509292 308151748 765407399 948193586 203636522 12096037 355014964 354955652 143220834 996306570 33617999 126466905 971251553 25354969 904768436 296714902 640123660 102792262 918227602 443114994 784706791 850007227 771750829 911193188 613674917 852407706 526781115 985268783 755100625 715654989 728991595 659875942 986981990 871610556 34447170 253424629 329308456 46674902 493658873 965082632 792301548 449266508 715651701 338345479 940444989 400139683 409328094 97620968 700509740 604435454 819757499 110813295 225629910 590426861 390958669 395024309 654538789 328835070 383461083 827865552 555001444 598020857 55345775 496892000 627115342 839622316 11235038 526891209 652089438 764972630 140041201 888215731 850611195 22441968 305989773 613470153 742298448 703207821 426207611 409327490 793518150 84067860 23813066 293492602 607431558 320963556 565817516 196891014 364379521 76077197 419916093 37065099 137230344 874653442 793427412 678923026 871980120 681502489 935312942 111084285 94235070 969701729 814820635 342367388 362159540 253325870 829791225 599167300 28827685 686551015 98897232 686016877 193239648 53429911 47892565 99005406 941280482 815544372 948164404 923990726 601387910 337994366 740819531 644682476 547697387 459581708 651126653 156943196 617543484 713332613 525792565 167894333 290192 535287888 592120326 832511733 711818302 861161997 460857341 503865970 121827274 140620538 918982269 193643618 67902291 332130803 771590375 280657303 245680387 981851753 939443541 344626165 797508708 202264812 223720335 215698933 448015897 557938941 591984250 456839387 125749522 679995035 103031930 696326142 498753881 6694907 545231838 820803566 116962227 735337753 69862605 152802291 346226759 6772113 744660210 142309038 584421991 480079669 596957237 48114092 854664139 117939618 270818701 533075809 285950930 465337520 926298223 404845474 187845121 267223018 372178254 542574814 779993005 640329365 824387134 554218268 110987373 989566345 568130854 647935957 123984034 852110387 558365574 816898131 932048742 502760365 529469500 990499900 605403514 984182448 885567846 599055634 739631074 980821983 743742814 46505390 997152794 474521987 596435435 661906712 140698554 600977390 140408271 262571349 705638950 328016460 328314877 496252680 497156391 214284253 483028762 68372548 730606574 241841984 698623655 317293340 661267864 921596790 771745228 983585298 471254404 138632586 197856358 781091134 610536083 862729860 751767584 871982284 808124514 103844764 678030282 224973008 834190425 435865661 652993001 316982230 720540645 83171534 517961266 918218600 745743481 407683763 529305396 165330392 321643550 908438098 218924238 375623315 845046016 657448535 421129891 712545321 911867336 98916366 903599288 631769276 641440993 967394120 133771354 192527330 109655288 400533156 229805148 702463800 258394687 862099185 529590518 292165177 110379181 540880230 461916409 959192325 156076729 551407947 266460276 838093638 901139359 657441823 610490217 854870842 359777959 533643433 68731846 34765183 18885401 608324033 915518191 392122265 903108816 561300820 209152879 868212387 676355663 645561415 755572942 592013054 300487979 118946588 632251512 662353810 549986997 726894356 340187980 136303037 692512976 375278751 532817798 278821883 469887836 688779433 92567187 612278623 636641841 537631145 908910210 681617274 777968128 827347774 242484095 296043860 876947077 654829005 621848291 350591161 874364191 356954468 874996976 177902945 655268370 811057665 506721195 565821029 817527352 442730330 566105539 562909711 958242032 316149485 149052684 846453435 598410251 237090753 455181462 416268259 884324140 528016113 636345948 867554870 339262007 906089515 117572538 425298665 356917717 334621092 989740892 44630650 472287691 788976019 897040261 837500098 79190872 133695058 144100638 996408484 151296372 90715019 768257186 440513916 938649264 305563891 347660048 400066611 827689156 218968462 15774382 260038489 694861809 990254821 630783724 981617571 939510038 544647126 880438465 79817565 725012852 610403942 104296899 552067276 962325929 749910804 276104262 114191942 456005713 36082216 254663195 501041046 737975757 319138529 674682246 709605801 32398777 193372078 144450428 330458452 152000989 914457631 4734848 214846082 772073273 339242859 374087564 872779789 486731363 570438666 308819322 130493962 874131658 493576796 921422511 296556827 172657057 902415623 353133441 165345251 593235005 609134241 328545350 848696729 101714353 486455062 821673301 965094866 812342992 373975825 905500518 17724040 465861939 971440725 186531470 339514378 704749292 208755109 718859306 761114674 811505970 866584477 979241714 524895051 615208871 657880472 35806744 865778556 990934836 416176770 15319637 184458060 536305702 121280904 474929542 636574697 31241106 697361757 34666617 196779660 609382179 48178852 558751820 620811967 989372350 514595830 731466715 286845967 28737334 55810223 151524500 200438300 279439493 52918355 229534579 310107407 226130915 42898772 816689274 928482914 863603537 845062531 97334156 856417601 570518377 34893087 830504521 276272266 337899530 58126894 842180184 998171402 549383202 981734159 515514042 551063984 854273125 133374311 131594453 233269021 965263848 119467557 653202464 666794449 984026823 297336250 926499199 973198721 73649981 845141376 915110190 512698763 80409260 328361340 366149672 4787408 704025293 244502465 975990921 35871196 857062170 633529856 62059979 818624405 44327715 418202812 600172976 85678949 695412712 363283386 517091174 171354861 216445873 528575741 760599471 35374870 84143753 114041351 991746652 753457246 450886212 695286010 898820348 789172332 279077632 726737961 814388094 555939060 117765010 486839125 513238255 435390460 27545242 601241086 733910017 101858412 485035789 401566714 996321889 5977738 522831874 56389771 542886591 988957439 181139415 705556712 396661154 533549087 517524508 600459167 623541127 120510852 167511011 82044061 116395736 498478625 42585864 974970033 952958044 323608191 10202394 653429825 116909850 671056574 501063966 471184632 602206463 163349804 930654032 981209026 371933114 509637657 453275795 970632841 484820397 127588252 940968213 13684297 365411750 501276341 537481733 602592118 155102874 555903292 632305924 704505968 865703550 929287409 403811687 621926985 686533826 767144095 658750772 547505003 458845617 539360254 529819982 868470161 744954660 407116602 109694122 997589330 585439342 638869272 394188991 416225393 120932615 711140130 514270355 385844203 578575842 737385320 298509477 721506168 17154145 775872213 640074284 719526824 618481573 622129995 192962451 486254450 371583496 648300695 299063283 44346406 21745287 684144177 632855747 961476993 351755608 534012149 914318358 936103286 519603818 662140245 451952748 926785922 834618832 822421770 46018551 576133395 39462232 65391003 445604202 523070375 535772914 544714744 82482487 259185807 840255532 353757622 866794945 281727892 820023 120295043 337200645 642640647 38267300 831910335 552404261 593505109 656987849 636549952 886456144 165202585 910692159 70226050 409543606 184655739 134223455 910274741 588330479 89825787 263456415 770556539 143076578 613801080 685103410 102059223 978540647 890376585 218346322 550051156 729851607 401652749 422213730 409331690 820746716 848682655 745830088 302626481 241575434 75157848 591940023 98284285 247857736 712905393 340125620 206480482 12088656 747885872 30019575 474022859 209083648 827656958 310797871 361957687 715269294 881904441 179445581 587925394 407540725 947008687 191052894 72485626 912308827 269743439 539634987 576875798 613040073 56533944 490786234 698284078 250965698 813084873 784853105 116114524 709529031 621533678 406820229 6930717 223199003 373033931 976331181 497977060 445722238 900174766 110068629 226828504 659215985 761010960 493312585 293419584 780093369 791363838 316930969 126791398 717338153 216131163 226179660 624847029 520199619 661198093 592484542 232349638 459409348 965703683 983147725 163707657 516888025 967747168 60519200 268925826 799434290 883648487 336897963 848420675 152274184 656349805 860636945 873519011 919648386 29229524 237348762 817928207 935642148 983431627 11006483 381594686 251418678 800760544 317847068 656914390 188343270 314602826 717696429 231538008 688016544 906787479 498004078 742185445 577867108 535917717 570378443 565595718 550537481 739380770 807838006 166733715 29891663 56650664 219368560 452502304 596120383 4734751 68099242 814299666 331388726 320430419 20178719 638585970 390353189 571613337 126450712 961181640 705420151 603830567 66824869 760785521 161499449 416436108 369568837 223566219 499203839 466460531 617489147 685109032 100327314 693612134 798078079 312209135 788184244 177940096 60274932 406607181 10462557 718909715 557918713 814065523 568563078 837246181 899250033 680956677 141551030 277388792 437074472 323718600 536797577 286070913 887819383 531983490 493322643 54142897 501688047 16678815 303732881 165864539 766366805 380146157 918153635 309779941 116634056 628972995 417599452 271311978 675822956 950483330 97532332 537581187 144076124 902417883 351455097 459535931 965636884 185030561 871638500 111965879 959086970 378154965 438282250 991024771 765681176 141896467 311749209 148916157 430481146 449712216 613531687 753710629 739718466 276380558 362343719 847162181 722398319 874538334 227074527 827789332 621980469 346490402 921148381 445871147 157886392 421087056 321393090 324078273 873589660 137323095 640149512 821110576 669456284 32661954 685199117 875562792 214116362 54885545 751450101 210139364 596214264 504825223 912508632 566984064 312216398 21762237 999232065 645304974 283663457 942909593 743653445 986795122 313189354 202634546 341597064 323506743 808130128 864509527 933564606 257900446 28369394 475693093 536843583 440955783 994187336 545290601 529197660 270992921 432725026 508441339 460182198 39923260 926106835 206950068 65504040 850884777 698716226 851934549 144138620 99316130 127145853 152173771 82121828 757107170 544564215 12108545 726004588 521336494 37461412 62291298 113782480 639631618 532672634 22811818 123357153 369356002 788253840 702838905 603881430 103158972 206853697 398058613 249657008 846160632 33500308 160619833 219259988 386544554 966409165 302129340 948446163 664364121 718076624 953284614 25738852 683892694 696081076 39229702 40378204 510991395 913166736 470141587 147789888 675142318 603174957 705686408 171044948 325727503 838024669 996018329 315315608 867729212 871744600 331655892 14051815 789995116 399072597 532568954 372391521 909850170 900866842 870471408 470775154 881639240 112958416 684997517 437425908 464830300 679015733 558923682 535773891 628430262 248943452 911402661 818235504 650371549 311990952 10341876 435451356 598323266 559552386 509869401 346210256 11486881 84278296 325877312 224793976 478335390 144041350 524160720 410824002 809263098 248942661 13046826 130949214 667294198 140849269 284829302 915140925 577482493 533340812 648064813 873376749 568318558 375677963 701840589 537751415 81450767 235765708 570837160 586411885 261346645 289663013 171852387 380773392 884355563 445587642 322898328 539203875 311434699 166354455 181976860 165949099 379301080 600920525 894973516 49379848 742891501 39044678 851187327 422685169 550011486 963047120 902851786 678405702 337257904 74154311 245445755 179483375 634037263 672387565 955140131 81317222 193416687 236264977 424513169 643144896 367519444 138478742 334396328 470375399 442703344 514344181 489454055 51688314 291164811 231474993 290322267 211892092 108999773 77724210 612345050 93290591 403162011 395296633 568071456 734434294 794029749 168778742 567301146 929317575 537872525 874780912 490584723 353960199 828186896 319885939 343114547 593110235 824608872 319946724 673157685 104499081 993441433 187081501 537520817 611449576 302063749 635737971 355757162 476394725 169245596 398085086 36417710 721511246 590656645 638222883 521526970 711765376 658099854 104683925 383620978 183057658 166091102 481506259 136903729 693219963 986635093 130650822 330737430 242932135 103788225 484109661 580367608 903037607 802479324 660988866 183861241 371683717 69154816 333565186 801461940 452382860 567331416 498240534 192695787 698084838 260294224 996938569 43964002 454868277 159148557 726849805 669998440 157648948 874587394 346682117 373687439 528080988 548474080 851634425 806673005 640025986 209241370 37076312 369221576 6622861 998574628 45608658 542719110 596437277 386276377 292840858 926051406 710721669 977848908 814558767 702593507 363015486 913280952 17803446 670603059 482747223 390958164 547606778 750278518 579721832 704015462 862979043 857947139 574681354 510094490 786753117 839903858 351392051 304077977 664827430 523084276 622786181 234938643 514898094 611573960 123921748 782068021 82545552 827864565 159753064 115700585 128188434 551773096 111897948 344549586 383198768 16862974 262079820 877882235 346825432 874034894 345000261 878990688 498611942 363001064 480630519 43611656 218587666 824404285 19076542 345991605 303425935 801479632 221776844 942080905 340005490 590434381 69047345 945217400 568059510 624302763 550066065 744031127 637835535 253740574 215733781 252449178 800970117 723657077 791614330 359477918 614441449 283891162 388952835 954903150 232182855 551950352 306306110 468469705 810102482 221294161 65422018 903762923 120332748 556327264 96617726 619164076 486547336 632645361 490506135 535141842 475146473 504936265 352799912 398045454 597764460 262542160 423971355 730739812 136858501 788744093 692400801 596985827 765626543 989771935 417894804 482352456 30906841 250502971 892430253 643488766 908030697 930778609 970554177 349654005 721193437 770218308 557552063 662192249 368893664 509016576 349014312 909396901 384497760 971236078 148776047 54593522 875151362 478389157 240761310 882220833 893817595 662460308 510111410 324646333 217998111 802840022 279257186 182073068 750085741 247736444 854948944 980307888 106046293 161152654 317209651 727134054 623272444 646528140 127758906 770495510 644252543 371446990 684810004 494781130 521962154 33911361 691663157 388883334 103973710 135967595 887283671 493506148 439879663 6412022 845086236 3142157 432257576 123817317 900433154 711902696 708824807 162518768 129513273 728062687 417507577 496566723 426688568 469753815 695197293 723825939 468528287 367172448 593976240 126190880 625342548 11547284 668218820 121987658 916332831 125803703 256674483 794856550 647291052 437947427 491549865 547160725 655116116 346846275 771405219 832577086 359684654 783723095 671432392 159121127 669747614 140436592 684540560 730487973 523271446 708460062 678323060 521755981 664601184 291995426 875321109 482398709 480371509 167453850 349892890 69630178 999582890 160062962 196007464 404807859 121878189 181718477 831052307 802888833 893172475 391150440 103036396 571474234 450145806 463247968 875160415 811076667 771176360 635726836 464275052 826050637 947477216 601939235 809992242 661558609 812402108 950093230 937486764 202240174 664219446 870751740 498220910 877324819 218838224 914124793 819527959 897527081 489026847 819280950 489021079 702423088 323384963 385608257 795472113 239098033 822075489 490889282 134693828 768960852 749038698 684650878 648802192 650262004 825371550 733278979 311485879 639132319 717281834 365399373 916299892 567676399 373126540 574937772 159458290 325000376 229052836 395541412 621741230 121701697 117182204 68257985 501506172 832672902 883777695 315957489 683966537 794130452 166887319 189092948 608598914 619990754 112754041 659160809 390942135 464678817 414603076 365880287 372152174 671566016 852147049 429282309 590507967 210374373 740774134 670287757 703803040 823615706 763707988 862556021 475158836 168478945 518848334 974066900 253266761 479599178 763930741 337401220 489477333 751056197 751599278 814015674 664255768 231453860 401346594 460801805 590329359 618836831 76957042 846659626 622147321 928368421 340050433 280209263 400850007 965511240 344071609 833957746 344896231 868152818 586839969 588483200 876248964 702540173 887797439 838018614 907380145 763249900 696785289 422146244 46833239 864325710 400975745 27441431 347042031 836911082 88193364 938441402 396962145 836259953 713353411 197689859 269514768 243964247 762391375 823246364 550773657 796086546 126007444 550436657 111891845 755225088 706467335 78127052 771056561 149712338 821874687 727292332 800374026 849489654 957318256 429562310 39100756 643947629 850415074 108842995 687582613 719966796 147226737 690291551 881698734 708788487 962840121 842394178 568541950 354892171 503632125 688273648 3082830 241397178 300074046 16055443 687099993 758444519 324926660 205006085 629222127 477284991 255413387 498720207 859091312 181358406 142990702 145570724 260644162 279597821 792538162 555244595 231932879 141465646 974002800 545170492 659634074 600596834 438297869 141967743 128366455 564012004 660354030 862252431 994301426 199674851 990258961 182703823 487720405 494563001 23627275 630344098 25659712 111864245 764509894 373822646 43014564 166873212 626325072 33290162 622202659 659431336 609703430 929910546 534287964 430033879 630182007 287407929 88884025 76147237 613278900 979950146 98295834 103876812 55185467 827491510 67448068 251129770 785086035 31505884 458650862 723746594 848039175 229921245 325376285 180610862 75450176 489893955 861541736 718490577 352929707 363932764 796632306 557878372 504284180 600498854 803327050 438458109 549820723 538145023 183970101 343995680 976693444 15027621 136992862 600780749 875857988 559164828 320032271 460321159 565701776 778316090 551915521 274707445 124562734 479189811 734609457 918961431 694627559 914254736 419092117 515815752 760523805 770632230 283708966 422223558 675160625 858562736 481169236 177344850 989287486 80480709 262251162 339569162 565332218 423471430 321270854 96327253 935222003 233972765 843686736 260947467 142026743 616243713 775855885 607937377 602682558 933063009 605102930 498856877 519972142 129096099 724539390 621972246 73858522 425888178 494482395 309802123 331461373 629183559 743045996 530532876 735350699 180725121 813227040 421125500 849027033 374619792 735017256 301870863 443717055 705467372 428825416 456255198 160955492 115657899 65624562 858593652 274310616 624567083 289735491 50259557 547603548 655034455 401632681 138861495 692420641 152455488 597087204 427905404 807795799 519361552 854207072 899628512 960270183 33282308 954474921 136990350 15209484 792263555 849428067 655037189 803885069 687293166 836472554 973495737 711349925 864233187 853435623 886912990 606089434 304891355 259514356 927359022 746179597 635625947 566186296 6406142 34777515 860637804 68241128 82298488 368717837 127843189 803352623 260902662 44324586 779802685 453529810 890518315 514667108 142822053 548793323 454405065 127561484 476194358 957750916 709689669 751792671 147479949 180630516 853211407 541187609 50804293 456880104 242129692 434428189 954974153 384844290 506914326 834350692 109779045 238176164 730827779 460556809 18188375 871537418 249366025 402271102 998153948 895571692 471773886 405141664 93619400 888106825 196441346 14848707 250381114 200389957 300744676 30053183 486167424 729824551 125153375 521354338 63612757 75311422 577658647 832046251 78540931 314033729 94022374 783525872 931584305 778879949 364311273 739416378 298492551 144543832 467512850 417166239 13269564 127807322 341460696 136288829 627696267 722622268 27170287 833995927 512441837 168129735 191211071 879266981 64053659 987339007 533641161 476196495 379320669 89314710 352753478 326135458 890389399 700372130 712867740 900305782 96437411 547424837 697880437 687941935 819273957 478181877 373498027 81729850 183246353 21792661 111860332 902973802 754255399 623892356 271810470 927248585 163591419 573209769 302325209 964438464 572873574 769345818 93339647 440477271 281729561 356689469 812683184 396004282 603737592 548586920 564851563 171234808 405564490 706995754 764692703 156101061 134928029 412886297 239508685 97933925 704474203 374385380 748810943 840449547 378858651 424762077 81778784 932356784 471837014 937654702 279108130 589942213 297880355 989707644 243751455 407227382 193113230 631511479 578518712 839369857 751509809 845719485 871574929 369125093 377915232 464256394 517784982 733949805 793886321 906631273 844631242 574941685 799302020 704180436 405124226 538318386 964072546 917822014 904514116 223023152 957679454 654780764 102143922 411685223 356936684 201759254 866597208 17362670 78319696 392861204 189941830 238983107 273461806 690512123 792899157 865598846 478647662 329561049 432363310 144511859 93538993 282600499 299769506 135372240 39927290 444245131 664415398 290562991 50596585 460018027 507059109 438224867 619591492 965614880 546883039 799999961 682033379 83136065 174536938 838106037 395167895 333158775 320780525 256844609 259830930 231128324 830097925 257346299 511525684 236259283 587679680 540120302 880693531 217230 437568882 367528903 802016456 297034591 453217420 388729520 610974689 943066146 803216157 720841249 746895651 331652676 22295300 39329374 896743846 154849537 213594793 518625085 371811811 303136939 228443027 732941699 367802255 827372913 850454614 901746245 281198953 947469787 926414156 110165114 600580270 816056064 494459473 306940022 656949175 848730843 767004349 373088202 110406247 479634807 713509992 401401562 754646202 171586798 600404199 279593309 884076902 94703969 740210815 432767469 115057352 347588423 451013498 79442496 305306969 264318346 888035636 259435661 914984817 771923447 244293285 670399612 819740833 916118591 609484998 14387685 632084579 605633862 439476724 366852992 378786412 731062424 196626415 527258075 960132849 585514631 191478088 946426581 746395033 409275494 900796804 960340920 435809735 481135538 73272890 373988111 160170751 118804094 922105767 203450383 257653409 114476061 257278790 553449127 663098351 141993847 823612994 38782462 268234279 724064087 792667315 488143452 909860474 493322816 179569394 197970170 633436278 548799101 922409751 575142552 138449005 55159025 199896511 504981998 712460662 835679993 904472508 712838821 295785602 460341160 530598616 528743379 87171748 265300534 448147899 792560292 647428136 165671521 479080579 764252267 418712818 568029348 964736250 829654717 394984145 471449808 827610466 456961138 609920586 783258775 156810733 738647046 864444836 274484001 130192664 438965696 472245525 848172706 419490639 19506877 475114097 911037299 724471600 545608806 715571512 574047949 379318669 162033768 781694500 365103638 529775747 362224108 827385730 658347562 712766340 52427419 24439658 21739064 902332317 866144352 232737919 589241283 816953051 39902154 417070783 601345697 23057376 620427629 731033877 37564424 802259006 896277134 184156396 767029014 250840297 563559535 790758167 534085349 888887323 614753266 417076291 521352715 919773357 236608600 134775537 139124203 16908800 315381349 533075152 728132973 734513268 190646917 317761468 58877647 959750075 909341628 998669199 949765103 278222062 289913900 894973104 366531369 721880859 302437123 123903798 406102242 956575293 336761300 764744096 797859904 313566390 783900570 579595290 119973149 654413372 281409422 926492623 530035098 983956474 894921380 27526769 729715695 382202657 312595027 850826912 904766208 387273202 709817440 845314392 847343665 777009914 69717236 276962275 225039023 442994501 510352749 382435154 866435430 447034566 924132967 36278069 869560315 727617011 36306543 175203022 650356781 524103773 191944253 377317277 448572141 238520874 464285537 2158382 182784795 533219942 763117142 428111166 150440092 616652270 994348018 415047297 230747965 347487485 463054628 245110088 331158235 661094507 551278040 79426194 298602156 708549007 235761855 929696168 667714369 143680653 813377564 645923467 703200999 121659991 682641710 470476285 110661907 395273512 321542383 229966267 584574879 325029692 678875533 270786387 308034338 548444374 727187790 156852760 401612074 350399872 548870401 226697234 189932931 136034669 119877404 488525993 877609378 810183333 969112172 170435325 821373840 828480031 696936838 901541563 599349326 774015938 291525577 554677474 141064278 85883924 100184190 174046557 120536356 628521669 33584861 167992555 966494342 4735258 553391504 117326872 101071490 945917717 845535496 423012696 19038113 339586810 586615507 194076435 448704181 778581399 460010029 332924815 773278178 905332810 671062642 377634313 911268194 144670292 346501216 777915314 310333970 766661072 49356338 95604140 544045511 924433569 690730767 973719964 78341736 346331745 373322541 24579529 296303548 928399873 110534508 362676549 170482064 955923089 895342317 878263381 253440957 618333593 431858038 316936082 278250153 483664288 227630474 902010534 907036811 81911336 955857849 944451602 45406253 53420997 732800185 779995474 789466584 333935686 954214932 987036035 826606267 375244270 642250471 117808935 278754362 282269636 961682743 453652866 949976808 561911895 100029635 732550768 356825539 951988801 842186797 335576299 933677499 554414773 297623564 855334178 263870289 755164710 424070519 195798934 984512165 534683596 865375391 948432352 770218979 891005202 312912806 455594508 270287757 588587131 404805812 348067841 936737299 824373563 482850645 715791300 682839903 804179177 472381155 959907538 896575912 220708254 122322631 166572599 170833124 740377175 339983956 690074417 610525823 412177139 718151781 135590016 31881846 909180009 658165966 60949359 661650909 406217087 76463098 410113718 324758017 665975919 713398472 657967092 981968971 894377324 433756722 296125555 650266128 957922014 74801411 565271508 899145113 629745557 268564579 945984080 129042747 593415879 763114766 577291197 613801035 231366495 996845396 871919376 503585022 459270638 727460713 357371615 41865011 654132564 877048424 315164402 9766943 501951256 605415315 737227466 160631141 615104600 847395795 624392504 812347857 703222664 290761285 929186355 163354793 21048810 506880505 472490754 49129920 489715690 380508078 485424385 331331423 293135415 917831047 350981636 167612889 289196706 315445603 705866357 444558945 629071177 521753689 694824872 503886866 524507314 626647604 475940638 409066416 136792420 926324995 156197474 326038789 340756450 323334867 549192732 806347868 177706655 175724479 545877408 136915327 887902766 493707391 391748012 417620106 367139811 755300054 44412501 114411576 228838054 619842286 39326069 84057299 126065138 462243600 27699962 765128220 570375524 141364194 248939869 323079989 414771747 477328361 133401762 873811160 977322498 709364956 124335574 445976477 447326695 185260675 838924923 60791534 339135397 247376643 808390169 3019732 182970453 819682542 593285700 651498831 658468277 839040194 966061241 763008491 469724106 143253429 958009912 410651193 218602408 324165065 83894562 615053359 641764873 748709000 659906680 252776038 170409646 552377722 634271402 420535506 940805224 123188755 651137035 418077902 135117926 349340931 403100227 838420810 841664228 667297998 539458994 387409989 357984964 136120222 991307980 850327958 82724906 23610193 379596289 904460589 41673974 383783268 810200579 672852900 176334703 505541796 532266368 269174163 911960734 107399682 527021690 81341263 113612345 367141147 880200087 211535598 286080875 347534876 208953568 572006668 424784032 62764235 679565566 917840148 481193140 470872687 151249375 877132186 881275731 261767889 835964238 849044440 914492548 936389160 830700028 166531299 660102070 814011266 612704219 147493317 965188159 371599571 330614349 978015117 423195930 27873990 375709059 819175828 965807047 403328677 2611088 882870471 230971795 348019126 881251691 249167545 398924471 170245904 401333123 521128535 668678078 529390305 214354089 675884618 393217510 310314759 862859859 68178782 873845001 585339914 312345894 156086113 745304645 692236331 554677464 341815220 290489491 799917020 650443816 353547941 919031651 229649797 758640884 717910546 193484409 679419141 88122615 585625993 537974297 206378701 211699123 606329802 549646999 762169039 130453113 144103640 106545873 44692685 989381512 924415235 238570548 283842162 239327038 365366084 48718282 731351857 605160118 882980299 734856860 624088135 208519072 79423264 733099158 126335578 747692918 750425585 37970656 164619809 758933476 386592128 752698439 982416325 337615040 708857447 14874683 643981434 116956351 881208477 505865237 633406052 69644854 857991127 997171262 172915359 723102232 399962845 879347233 973909553 929147812 868434320 938499913 564301110 111884023 740766814 839850895 553579856 213750900 201837756 127949075 315240964 775387221 937983036 545476068 280050694 76530586 995777995 424753783 332973330 792611212 970078167 209404536 56115111 369609483 753741282 631262463 794323532 805561534 842618923 877584654 379886884 870986836 717653621 828179806 344865143 147770860 962975567 857769096 267159437 436294974 509241138 15693321 335199847 825046501 989077931 71798953 363508181 910894789 699946628 354095178 511360061 188249242 710847769 214017819 399971480 925916727 395332932 233727386 675409896 5889618 293242960 847833704 677099392 217838892 932592107 650213913 642336757 938854497 432647402 815428585 379179797 404421415 305510931 988091115 53113599 365495223 502064209 565396452 341190429 782857829 67391952 771486956 415582608 161201 437194910 254833371 423066443 688535405 683466709 703192194 766515420 916704822 345947419 527758522 482134401 896189533 331777137 717506796 209323851 279721431 655952607 717389074 676213756 466836469 639277560 716355884 580821066 469357663 511926086 365727872 808884878 539784879 763927098 961708981 865271031 432688994 788782910 74457473 86341678 208623775 380253883 174524160 147838485 402137296 573316423 735370611 309251276 303859344 760785522 825511887 581398968 166359711 218938652 92738044 662427557 945408833 253987740 915558071 457360358 191854708 600131072 432875546 723412166 241234831 873451552 161839396 489873557 716353175 807963240 493046438 432712598 146309831 173543453 597840328 690734035 831934847 593227606 521368325 866683544 871122029 81852619 592602438 202978637 583691220 319182784 738797808 623251587 624989074 317295449 931549766 175580486 213545795 197680959 154560174 479683166 823970845 109554357 713686289 305570664 703516596 658839632 286928842 827344566 773389355 786898337 167508596 596151380 782149497 56581819 728048512 58239567 596947390 678953661 201070140 469337091 278477322 581394963 156154778 546942531 670243601 834412741 649800307 930592965 337733219 831591411 892039554 250704249 912190994 968520381 512652456 129571036 252491964 196206810 221704548 163417524 734861395 164682270 665324089 197121878 434399423 216952916 531441281 718177470 28637091 5952170 144536439 951637903 976011892 610719408 107290767 92188843 985875523 875881061 9409340 610073482 738815307 93238044 347609608 715760757 703904793 165690284 257775097 633658984 348150278 241146170 613065856 826405021 700180343 515423861 674335059 152258709 223848156 633837292 812145165 123260008 396810226 263309182 616333 709995566 92416332 376352235 91567315 167818969 633892557 835761737 792786209 788144924 150532963 126069801 216288225 287552966 356472536 41380055 25387334 162247408 712218595 820316801 123087349 589441457 171726801 543890494 266279384 390680337 447297395 857421175 920225455 381116140 196439452 940757412 310231143 411933448 100647256 712459499 840686734 646419655 518155901 810892477 790289474 928513399 148175834 104796411 908725074 279178444 719982131 862179143 176711359 487853416 341083854 63303751 19678294 584036215 215632550 225048627 939689419 317384994 348677947 812221947 97895714 134636179 251280909 298156886 314039842 749447603 141728944 538124010 54548018 283685943 737471042 72649235 64751025 54227506 890797284 376303869 348969182 941851806 384804593 412669390 835518689 558702772 241107825 836499296 267909888 66807566 960280035 203990527 107554524 647028262 452760333 774067717 770336035 178587575 721920670 678872330 650469997 271142645 816144232 756446264 738280959 35669046 456198945 621987144 701573910 425483198 421987992 179771653 392242383 264182514 5232381 485043074 515803414 195150137 241892993 912727885 461714112 344172760 245117647 156142122 252254421 345741093 17294569 290621570 568157935 349790959 129032067 886922821 772301051 188707766 94911135 296681298 854086394 650183717 323240167 107512598 160157156 519341781 262414410 772831373 627002226 130325618 651933454 120394790 494349368 848344434 208137252 308637813 905093025 174905663 517931186 781671433 440297729 715186080 781846643 247494098 546413112 796523618 327184171 406853705 719691942 289971979 757854641 765964501 387945633 844239100 567584591 257085294 449856817 584131970 629146090 274316346 929077428 298279401 540124760 147694823 245617071 669371749 345377750 45503150 778020132 532493512 422323064 617862825 778385747 105323506 802469926 764508178 460378463 854944164 381754347 17082861 122644747 357318376 128564091 969440690 675277162 829818968 553698123 227840671 786341393 621420467 367207405 18109141 428235663 578596999 175764471 948878889 130249060 428069703 644827855 163692514 297170885 867313670 501854091 342120690 866095651 49775211 897747417 404040262 583065715 896200337 439342601 524444615 186381812 214555895 392758806 305943099 941321587 484017967 250851966 923556389 534863297 22185178 602185535 769818974 728940633 241510695 213474847 7220771 444426593 967326363 123809199 501837561 136142885 674929973 774495381 565126071 583842860 237348572 220711056 101686212 742812832 80000868 678011628 893662899 625681578 629703570 325768007 209044358 498401266 444358674 321520564 133154079 707744455 347761306 234990374 479547197 514713007 574184658 260643346 94837750 806143529 326655732 285727667 13006025 661543402 50764345 241216199 666985150 650920277 48445272 148962089 564791312 883505721 744592854 464314662 671116982 525579585 499350936 185441033 492663622 686985517 326995563 683495119 550821975 124409222 989691790 965301249 665378634 18399246 942700228 521924029 870287466 821444535 856252285 916263728 31077408 735701608 80726668 757982553 568986246 893670135 726529513 804069940 304745187 22895405 232435304 492454718 418413216 940733235 315134330 80955837 257678217 938068355 454388589 229184419 901148165 643720896 480805938 406173569 701434321 265508362 501853342 974923711 869453249 206765342 418698666 149803051 811884281 371838773 609347230 122380671 644796229 143817741 81613443 660711118 968274968 709465607 372496996 100256232 443251624 406173406 490772692 75197930 82650972 845102767 77332966 819473535 456834825 733518609 467692158 212448830 538580228 904299 778351907 191927167 725306997 272526425 399331899 127139460 986684777 727810491 649280559 442997359 353560946 219162325 225746125 288239450 282167684 425104570 99319371 590542684 936339316 434710070 450280664 434368597 406514917 991586020 73544378 531225642 734945376 719144177 141795825 2677398 260650509 358295542 792638815 612297231 987094418 827383186 529335550 26788827 722470769 940984640 51864306 904269686 268186091 574660711 715592102 812136057 484087043 135165270 205452909 733680639 749067372 796321221 263272826 727031749 678889276 212608333 439201502 904265680 399477764 468783996 712245689 422164762 305192503 798888459 251005740 976574353 852418347 379313730 48898637 114928340 967432845 391117350 796729240 474753535 208438669 574777834 695992720 997800831 730857300 92178218 426128080 383466059 952422567 40252908 368079643 951463099 779204694 175031132 812552013 563951593 289821254 521867219 728049948 820483776 143419110 637854988 263191004 630215921 653626964 417444967 901715346 903397381 852620756 818250649 673677908 260041266 447736821 204024878 710275105 812542032 305072912 857085834 754993527 130825317 93637080 381842360 594066974 260213213 599229845 641509383 602815301 776708104 498061844 929008789 80481930 640145924 912078993 677723947 426886171 404045334 520220207 347369543 639100210 454364533 54947492 659882678 986454366 152486552 394111778 815930429 547373262 471857745 20164350 338244783 148667527 385105240 199635584 879409737 79284052 574250139 542054126 66085117 444678878 33636892 69801862 543566443 363293014 969826045 328617897 888732458 448704104 126743801 194082419 449279520 905080294 188613646 693902704 209268656 998021223 995996901 338729840 170152068 311270165 563683413 38755143 220081769 632955525 84872615 216608782 433776402 235661034 902709073 612812702 111666932 390492725 588078188 201725047 880010460 906475107 114200708 538147293 966251566 374961410 542475562 138606235 683852505 135969118 883912230 586000204 478584256 684788112 635712636 542494662 129053026 227074576 174845901 932023881 160052000 869083965 491904646 708191638 668768395 164776630 777868279 728372965 140487917 289785079 671677415 952157482 504706310 329803678 151354737 328047216 518978565 596393418 890770777 800559002 497642024 810163456 389885665 165192799 600451068 886954445 765749584 134164424 245027993 76703042 779044924 696367553 782609736 411007902 889483516 900417310 237901181 390346559 651492593 548180461 838221207 992955374 587546995 406793181 856551010 873540493 716651668 817401285 789863865 87182964 528008292 688471404 325191880 708277601 552845857 502205601 485379040 742175716 885986808 199159811 872991566 409532987 536527362 630596879 629721546 65385068 461713764 282525686 333929017 942894471 855116727 411577239 727085207 479162032 66305996 722235313 654603242 74238798 660098281 378977207 143899155 745021285 252936439 208722850 475463519 52019320 767384549 422170330 278332725 459363271 425515514 688264172 138715658 498889615 861193004 769614794 415791841 474854763 387089331 399626248 991473104 97340316 150706981 701411357 380984896 856370003 663189701 456459562 751307510 601916033 757883562 740700882 893886550 516800455 520548845 527390088 626050758 696073100 306838373 259692665 512650452 485182437 45140762 127707663 672277891 751035093 647021546 84309315 141606170 804242486 664958860 213203455 639270508 403074367 21363201 837860886 679446535 624904895 197596365 158176240 485725658 555513581 654078899 388482173 230297133 167554110 268059794 525879128 905148981 765395293 689117703 504695949 749760455 876570459 370983403 342213591 934807663 846343246 512187925 175662120 711100746 406125876 21679774 651308412 215242936 932198096 608431780 130744156 138719845 599258961 427509113 641361182 356208042 717067612 884517382 560078804 835936510 451884777 593560442 183105292 665466233 927588722 558181010 390625443 409483038 874268108 22379235 467179917 390480832 355055128 40034698 238068811 399517037 148532882 275389100 756150814 940135831 871978993 574827253 990206948 624119027 840325694 22910249 295280124 483527649 238029313 813238404 218119185 41207407 651836871 296618978 52291819 775715774 482564805 353616665 524908559 544669270 400116795 910823016 433475771 554641653 19143339 302772495 44130940 837472951 636748240 585988721 569185683 371193448 157035771 915727988 843555951 510722231 80964323 863720498 800827455 24929182 854177048 216720657 555490988 661849761 713274327 226904430 738201209 471909604 167797719 72411701 665459023 376159446 434228658 136565712 52712287 183331483 437600513 60661323 965196657 812211815 968297420 556179049 88352115 93402085 703933776 159736455 403243931 759635288 212981885 230571044 526220362 214378227 952951471 572428726 347903685 563976008 779780683 433371293 924225260 562173076 62614803 188160496 359263168 995569224 805800953 350208796 321304167 242856311 499943160 6140175 227100575 632154022 473026123 982608959 747229275 234183545 921174159 315399371 981638680 911782540 811251476 573727910 60925721 21444837 329309848 584748077 717230430 193020370 143021123 276934187 169995151 649561286 146251565 662562548 273215480 904147901 879172039 368419382 13101345 357478466 781219464 176409785 770609298 925014634 393561372 382715860 773962356 491082069 812314269 872896106 205814950 728292780 368925300 498900828 265839747 435884238 307405285 16356375 256726891 90010630 120480847 328803628 989870657 145374072 289409561 504231906 960104521 732931002 661724632 713051209 490826783 943918375 180551650 955745849 405075348 410371001 74648899 509746422 29670375 835816682 621547390 114070404 16039380 137573403 180942194 483092300 529575974 63781871 735437164 160342639 471201738 492141810 548513079 148937276 424999757 638448274 119313182 568404082 55217812 188257166 5158909 672625860 602591419 899547387 579639489 57180311 713942073 622051322 441809945 278130487 18349430 882056704 62544379 589580756 895958079 683494862 45513102 447476014 886714156 934463569 554617357 900470013 421833834 724856936 215434758 32866056 216387960 654173914 152662611 922679679 137252434 156476072 231710909 710432083 67901229 96682325 27681108 875994981 762195614 888463862 152784016 837921525 263004065 672696397 147158911 449776275 189208967 401412056 812731340 930641738 38078277 900325788 184520847 142707095 921027917 148667529 994840804 195221315 455926591 677113148 416465714 734656392 186471778 844112650 466162324 278271437 342989329 672810296 391289175 27346385 356280674 138116587 560824879 869572017 161850965 798809871 502360945 251629658 242440059 404445251 290283753 728464405 347731281 587091556 88341520 82952479 343612360 104159619 129365005 294187912 104760405 911934116 492159100 162101832 860279655 536746279 308795183 879545528 644672318 426626449 721851395 794866155 522899101 828002196 886382322 919934212 701514297 197153686 583313804 584658315 88721395 650465809 820538150 133460234 586053094 713953725 769192036 210910123 645676250 230400466 256762441 619792678 356812737 704506909 999568629 627566077 602416068 240784357 120859900 854769613 256222190 115600292 75954284 438806254 69687465 737208680 990849389 81485127 406951701 334614446 203972013 369078025 407551915 695420566 80413041 904490048 401532191 525525953 12447505 41705319 451531391 860081926 147707132 875094328 948741014 292102510 57918584 663243958 927648800 444682136 771297427 493669471 770354464 502457578 989045744 173500946 61081428 518051783 444246241 43802393 392609162 819253692 623737025 59462231 60752449 532581328 153999182 745688671 252619814 817590625 446873873 19432370 277795706 467853984 533807292 736803714 865950274 964734043 621863117 87604529 158927599 270843004 200580414 278075417 315148745 339166342 552740359 950181254 496865532 289171640 375410551 528340269 630729905 453287336 334296660 436674350 489330107 366978989 353616456 785854081 687122241 284578621 894257347 881118473 603136780 62748743 994563807 541017540 151865850 203326416 378600452 86572473 506821433 187254446 828129058 796812489 699188111 744497432 893952009 894287801 292445295 152533684 769227712 805996374 228321720 404153091 58569046 550408167 258587571 445595959 93854503 803483134 497336841 155200584 541081137 569201057 514454777 717701555 211440254 507844347 631020166 265205402 274544468 488042916 485936730 875163153 905252744 433134940 326068687 657678214 489826991 557425629 598706170 319764589 58744055 680555851 370405035 378880268 417753163 725072647 725506456 326197393 804644964 913956707 204190773 753278304 673133314 450439479 51596486 966915218 173546343 619699842 860233611 237973671 983843446 711758420 287295251 140856474 897375896 522640399 251644742 454140737 867308078 396914648 94576 379949027 582151816 840843081 964290302 612311227 121556921 111224452 960214982 832881759 768313199 558623521 57877327 541945616 573945884 32710579 915266085 962943071 267026810 422793002 526517618 783672852 211495901 514568629 58287236 398405086 684022484 742798531 842607244 30175172 793361183 145318623 178699059 693430410 943709337 999185588 5185167 29641105 657960855 423579635 812965218 441738927 890891150 913506449 933541147 498531861 350780553 266125599 647022966 423260333 108484430 91168123 691624244 231336255 510954417 134287435 517459427 569200753 666068242 14892209 732317892 65531538 821315355 813556231 833555132 961734838 146986 300485774 773804721 52590 659719951 732485265 588966150 859305829 400636366 504131080 527571810 472451662 383003647 355128390 646045056 727962161 254660782 434712080 996545194 530773850 516537765 179541241 191266239 735038394 459482914 722432514 554983373 612377035 903263753 431665919 138408045 571582580 965934787 724514306 175460099 544043837 642264212 590839197 904990040 166335491 524059632 856097761 367807390 49975650 561361190 518867733 110296649 48714818 772816792 122341091 232991931 142017767 172359120 416549868 825875152 364477898 11301982 270333994 246878566 331492969 334050784 501909867 520823692 341155102 930541606 310039167 362363900 49765544 155239257 622630724 367538047 529222099 575186730 210516086 41449057 732863558 711267190 236283129 600823877 86951845 287683670 302077635 424815576 130011246 657717896 880652238 22976408 707092124 547920432 162471021 234689066 498001548 999997502 374555639 891517908 688575414 80089073 938919562 210663878 467684161 838087422 279237994 999244766 880331759 232609373 840233136 244100045 910879906 341153134 452520711 251953008 738255334 117439365 864990113 289256489 133544521 811774710 697455783 787908514 665807632 286395446 606062121 151258556 136290249 43907203 173585410 10757538 230818615 198830762 296120202 79862226 635090711 853985679 477788377 330070935 397566189 16270632 840414895 781659847 771601715 906989623 823653929 380118971 507812298 293542519 322005953 234084883 247745276 602981922 110799202 133743731 170088295 473169297 522469096 994134759 979015610 185734420 19219134 498466369 401897092 315944370 3682404 120847581 354126939 943550492 402474242 968194163 147514828 17613764 340459028 51878177 548604474 219996696 474301246 694706442 225183063 636209085 937200456 777062920 206885057 178458146 803532237 755485141 809778055 546320188 101844891 582827875 284385054 939522837 382338360 363774695 953481681 743399128 859987904 750069715 435792389 485769824 381519431 201080646 844391005 405991786 110245718 630209563 208347518 243470639 889827357 816477905 743980287 201297679 836540217 258850877 710286674 195029635 851159594 639419188 471619962 899719779 120533680 402751053 353557688 312447621 77855684 746798036 291554893 423295849 564087955 274088541 678542329 423267617 207368283 928949630 597433388 631193180 545219054 596938697 441801010 831317821 147580889 636863333 328132233 596594515 699379933 990073404 567537167 21964867 814626918 844419750 951883356 659530550 100853561 634038251 581041368 956647558 170543355 288924399 481711879 219487673 353734380 757364387 226215301 69767426 593326637 550537141 476688764 300898653 39018362 893767509 528137152 302066236 256901325 957069735 482886354 59841017 968176347 36834559 733809468 604595917 773164055 720796058 868631861 371449736 246038802 508515019 961226558 752486901 524939987 319687514 914395740 825559122 203733529 344483116 562825229 332728307 249616450 576111874 833236822 231882576 644476514 929075379 83609268 311277447 651107420 370205433 13848765 867607661 262328885 80461456 649626384 375673105 556505194 951636773 123016903 26978558 21345512 471275074 301183185 695259884 104928243 12730469 11263759 103773218 844359199 954115815 303624625 19461132 692282813 754974250 133016792 55717602 554978178 752764282 36799121 371585441 240761032 949161013 334598930 469751586 610020918 500293112 374556643 633517752 250030043 192883762 707364622 975909002 664872704 983989326 816091081 620528674 644378334 997556045 270533022 610778666 782630460 909726621 215597504 417267578 206211727 811440410 888509619 983993077 479955334 401781976 207994227 502625671 814478211 988645369 527179234 268208818 85167939 913876321 728124371 436761759 358951509 892386588 474590768 595426079 508729240 813962491 410523660 995435418 884386528 433993375 922427199 39091792 67478575 420949194 130554073 635867174 594361067 786898074 492496523 735356730 666507152 480138369 863068098 186417484 69530629 832331230 44420299 261642713 966268279 465183805 202528936 190403787 603513440 320427820 970687870 382150559 445611479 172892329 465202595 600258670 258157301 888806745 147964732 241287543 481415604 739197192 623152145 831154888 921524311 525641140 187169705 572811918 549161325 511276842 744924701 372478877 671759726 946860540 926901973 797272355 593397982 932097950 101758157 851906126 483487794 360804865 857799006 796038062 76228252 667405475 381185044 716087292 675341725 796214402 512960187 302395140 965747096 863613809 207199602 922711143 873248357 642971461 409834879 378341825 161417792 691239169 339931424 848391832 314802835 167893591 528780800 214719726 894516484 198594997 327874528 692743162 931812939 664400052 963509786 966936290 161807897 837822124 310948160 668163376 587084573 76152572 520722950 249110443 294253403 326388649 51103312 763864046 157360577 830499260 780411670 292387727 27836718 735035037 483819335 36069755 443656814 371848166 224123886 701839116 595474070 675917459 260417196 401918528 380250846 379546530 157943610 774335389 475379425 294036908 54518528 396354589 618966764 533050819 408597926 929757312 797131878 196127895 93129142 439669543 825390310 510490246 974766960 972097620 904413100 961329192 449720380 233800139 300297924 580813541 171064205 760799457 839681998 193307482 872665862 488269785 554158352 865632393 951214935 454316700 383699716 667164622 823069051 750841172 608324539 228005515 375823332 351646092 37178451 543119726 80270818 287286546 107802311 155124031 572105982 455477622 352551334 954130977 605424086 981103470 381300072 576070032 953913836 563720956 486048921 291906641 304717847 731974139 11170240 248078606 593379661 731870073 151870147 376884718 257078322 258759725 755856454 46709194 833211587 791076207 10925289 936658240 521715035 343040563 355102067 139553601 828498300 979483755 862073669 36994553 981604748 523579710 486069706 124622074 795260050 38735929 634691165 375710082 598814982 2360535 692315763 785554118 302873498 844086689 178022300 739338515 892275724 479138951 807018373 740496513 96709576 506189925 939553559 782755125 705503246 612986868 449522836 851883265 65498208 808583908 695309699 32087368 208556384 514186573 484022495 83158182 872468402 120650878 812788258 345819273 916081610 992230419 222867883 837080218 814283190 924015762 484690697 110393591 870632636 854873000 414813815 155020191 541149171 488611390 925778969 862940295 954235513 539084772 748374582 289709167 532142793 551960793 102553632 812648849 365343551 299215501 849577626 530182418 936913731 315693190 444370242 326853454 668540551 584073516 636500935 59701781 244952390 76748034 440663431 842401940 586329359 659631840 705072102 804975833 561481833 901035696 347008421 122091667 943458303 293381332 700412390 299767644 599286723 176825299 245868693 370661632 800255473 291577369 780420092 84094795 229781002 585737189 983171299 79262228 889732543 745208292 316701714 354248228 206077581 683752360 601569720 123642351 269595174 129068247 288252421 988032944 432608670 95454237 308864158 252977398 146377893 433612301 21704048 501660382 318661805 663080265 204775905 112172446 728325433 501731670 532875466 180550811 344537010 645127380 924066758 787239673 295317231 359308841 878514788 230548293 738061270 348441931 81645906 621100502 316969208 107604440 385863891 364424346 422168455 858742859 391073714 155526181 474233003 655138711 817137159 663094894 305596711 692427198 69291664 677177878 453637431 250477924 225151076 840130240 699451109 36680459 264022699 305519789 898537978 382011167 777273051 707373332 33306675 535774417 625875087 423971507 195019315 654864033 888354002 962275282 28154208 766892787 881056449 117632682 133583818 595238912 630509680 518812954 421660238 535052300 774307101 572818629 226191323 358307227 432915648 968243633 813817034 83550691 70153199 805904385 882513380 608898244 23391346 136983817 713311279 828510404 209972802 768465132 719986651 154216974 729793311 956542750 482561463 199803689 795068175 208947673 285763956 570254561 433183510 573932381 896621754 799990062 623718430 924580494 516306069 539577656 50048845 940547642 97501505 585199413 522095258 612960220 45133737 946499320 852492225 456417087 151904801 132530940 62852415 81850754 56002711 417043902 123767554 537373606 654005527 243169862 512994545 763884394 671812429 9253940 78129069 945125394 405192796 990789446 561715611 786031985 899782186 661397461 433367124 491379884 266567329 518626738 846311444 581762126 806093897 588873017 227247667 728833612 28043246 959073659 311860014 64147288 621282928 967177222 694612430 348282865 866230930 347376332 594847577 597724070 376223794 64542775 808284715 254479674 180754890 178606897 317693055 281288952 296866334 534921433 435914447 465937074 507163990 297990296 760104473 243592840 308561459 173159484 525132618 884773625 122082265 86125916 556413054 460632034 959250750 519362074 225539729 985682651 473058170 8934729 97909638 190207213 506130339 265426138 924074558 38782988 520230707 666102773 132176888 194422881 801540248 279474540 377962964 671773034 519140936 60445856 787680468 94844038 802588255 725621988 955288229 471546392 854453478 924049597 712637465 533344341 712552954 585495881 338679744 165721240 69769338 885117592 456851056 796353645 953454847 379635339 497261700 109007126 169006795 912357850 158278953 110413559 221531986 499891341 970886877 847831715 307838990 853342181 574981032 260135887 733193223 375382422 648763884 24395433 256911299 774241898 487051699 293038140 386189968 391345776 794391209 414160679 15327207 771097522 86574625 221765043 405003126 901251424 887692974 710411820 491246777 24190331 40609950 94159675 273565301 86448057 240749063 16095161 625586702 829476054 416125583 948558328 31999700 73629040 257661579 472555477 807557542 624994303 702796963 523861067 173826392 913016041 991622496 681813277 149036739 556894199 205165315 990332215 74898416 161385585 604903034 835226620 345960054 712205825 292584924 913773239 563743772 458068760 747949827 856995638 775243444 495385838 182252851 777057366 393774164 562762340 85103889 163774092 259604851 799132382 685550421 904683874 690026830 238518680 374583013 869634623 558523172 737301255 30959288 265688562 177411293 538755251 623067043 816674924 807154801 9365405 737604944 566868614 437121845 788384893 218090897 150669144 788227513 346913152 420533270 271057403 853916019 228328530 614980106 706872484 351064689 632923791 488286698 298796318 148018948 600052497 780547002 234470200 561444434 93001387 465350847 280659010 328149013 747008428 964219926 727462285 359439761 553390517 62748382 291466123 973296514 424221627 736863779 199891822 697948730 100578723 56317914 240052338 806268331 240354163 903494771 226066542 115435961 878754376 627418078 780721363 791312428 151275591 628678909 767218384 757413745 37950527 856340893 276546775 654697187 153592625 56182032 103367012 801242663 448475499 65081762 92487776 336855194 322043024 730285915 669200101 254659727 428251150 313670379 229645268 499396478 399684261 918582653 65209064 68097286 766473811 542937990 494775859 548807407 601185126 862806070 853877696 703779192 327130301 441130559 190175797 634547202 155359653 920981065 877142908 197983724 316492159 960321543 23156758 436939308 878650158 267583855 393245800 429059506 308095684 273651242 25863597 885228363 725105865 779185503 368592446 942712841 192883702 780558047 658671533 264003896 428172057 345150860 359572873 216428967 541523543 239829007 336748493 682056652 94161703 286102328 4256692 768033864 532916901 281302604 37444550 121642895 250680978 520688653 294023652 184060084 591822065 188299153 947336709 776576457 304069947 457802403 792511420 508156678 108543729 957873038 843374855 31305673 927402622 250467369 557574149 537365595 530853321 898523068 187235805 821515685 395654167 919879480 157107422 106511784 759185025 114310834 283822084 712430856 437629756 883280954 180167952 516196360 369064890 202280834 726925339 359492273 609969555 943257727 709022645 3099745 77333107 785982437 709017666 704666121 42244226 524587473 654048699 65067540 7776060 478399381 160744251 375880771 708922182 774426859 105460371 134666028 844867605 166461553 966131582 490204706 48176604 873282886 239687215 208277398 431305135 591800614 585939354 651715154 132289445 230974749 315766999 843701132 337129148 380546060 833002443 441854872 227754805 898010394 897720112 463958483 134228850 613134337 664382877 70221810 832874042 167121593 424016674 2770242 403681704 354888656 614053214 358130899 288301351 971315482 447544624 193388460 621753063 804681025 194611615 587286583 375957256 747293875 240320489 289076542 475675483 424942313 631787667 400638317 939649017 854451069 292006799 678063850 378942364 396005882 810848367 654598740 925342894 901684443 916732236 213687734 763794793 489829 826604637 455179350 87784872 854647023 349313723 485893669 113972227 776870101 627376033 862996577 876426731 669490665 139696932 301461186 293039767 203750429 133350716 454081530 923721143 524953597 633703756 852359890 835116668 687971195 575199689 820594350 709794183 892522531 687854939 482297527 115254026 141686269 26753594 319554098 922620587 860044409 316578405 957784558 260931460 351213868 609066317 939829242 805154989 95621862 797089214 623391513 526180981 254870077 617213626 163997731 206470908 381024824 379592663 235842559 18554303 515247147 42116729 503964284 777691552 69092588 923514919 686496797 226358885 161947786 428338078 520407544 633243380 705379673 877198358 29670294 799311859 159395410 416292549 179842401 144728011 451526997 211973446 721890871 619135521 967652249 463754226 14441710 914972956 909234500 38930801 577835612 16597883 372306086 537517006 764244282 607466252 572008942 830005739 987850618 57069654 264519043 560549715 957341835 314943432 675316530 30384651 139420894 122046439 891996647 762283731 484088178 314629080 784173086 768060515 359598216 155001825 413793564 98408548 383151189 938616574 211739113 179270843 850667502 494234299 697112643 509243008 954559770 718351827 570732049 111587988 553033969 475134146 637754912 656623941 730231529 235113175 647121866 111236429 667451332 473597179 957382954 44477830 709737563 537341943 525009867 842597736 440710012 181225438 75876549 408952846 757397086 964879508 501858748 221902530 390247140 749590367 946187544 136555299 160810148 567933986 290005197 62910866 498980300 612204482 434151660 479527855 23376240 441698123 235523270 916920029 499229820 911855080 994592611 506599781 879571906 121575905 93310306 253198361 54352873 870256062 99935527 256754253 279824321 987764522 386104321 332329723 178295300 323049450 401783753 382966707 119967888 813135227 871022900 967273552 889232968 762450454 562306612 853081932 85125574 946442624 871184702 488537212 783836817 744091138 371661020 143732519 956331522 925802016 318081269 528465316 105094264 472316906 164406694 161687166 924128544 526804041 147222980 685701297 826499525 37973184 7732433 718414841 201962146 349257790 614308940 262767996 146522286 559486816 931606827 929586584 915749807 623570546 42799281 58747845 411966005 232180308 966313567 683019345 647317286 154178827 900061470 942915800 898458681 703150020 268189097 987949422 956725251 927033953 688223143 143411120 777947368 585794291 840872253 21363022 69505001 907569866 287852293 565722764 103153580 112421733 548091441 249705554 721111178 915399441 9517460 523190348 138672971 749946451 2652607 115153180 87531774 68345434 3191657 24686133 568869 336925904 292766041 819903043 576528134 822692635 325718246 944722166 124895545 7352728 728343452 828920076 549301876 699711826 245249408 670923189 630440786 103779381 566208904 849942288 446432323 141999700 57908041 563887121 944300320 998523471 566545302 22934973 606878488 489001439 658802985 671523923 59266816 910972531 812161980 444238029 310473087 921902393 757783649 629625012 641002409 132156262 534170837 896878268 686076049 143949357 581791879 43400702 694828322 982903772 59099403 401561564 545377297 291481498 620194325 32273718 651294414 765521406 163336624 334404985 783524908 131098339 820623220 431452399 522303206 556884832 766440955 65886589 817466721 117102920 179069495 814217972 710924826 226632444 231381902 975461543 619304969 145703120 628835087 863778289 943135888 680428048 825268725 494766510 655481055 910079076 659262714 271928186 314529348 983217759 603038364 627691753 155226151 568907003 580999537 413665764 945094925 18415107 432512195 668534508 72747682 50923251 766530300 478742047 21908933 767984475 942578446 783623858 51966850 396671639 462769263 225641837 186016591 360994212 424082438 911320503 871715899 6629059 838128622 939817481 229428618 731874421 433939422 562742133 419260403 317979189 846701850 699645973 13819588 591744638 44276946 171728947 122530535 49475467 281458789 747497766 367236737 80477455 949360915 98465134 22044424 805608132 606047452 284150517 985064878 539084164 992840477 939409850 178296979 498940385 44461079 967478765 215234765 662831496 198674099 635891599 223609932 116612481 73048699 886931331 295027149 690788863 57358013 734678549 610059777 419487409 613965862 993641892 691343523 351588641 525709061 717376365 964347365 614909365 71994442 62660049 541919812 784240814 814605354 97676089 74724303 566814190 528344606 491879027 283485181 590971673 188634619 928984967 993644264 334579439 306998154 845417921 147763749 368202938 443649724 804974614 516518408 96563661 531991284 411579538 527095706 124715455 320131321 172012430 3483488 56301860 677475289 160810340 799702449 96321945 812671926 237238189 184156445 451971951 396364850 627294174 702861557 624269396 431149841 873051918 710229503 725019468 379051316 532421329 752517779 593357734 245642286 556574076 857686067 73308231 523200169 30155066 688331164 156375082 46725677 224264698 484226116 159701155 823982085 632042978 470614396 43725742 524651892 824396799 803681403 631164094 830465674 713044634 655131968 199048322 62769320 758816724 881134177 278829845 505351127 432695966 315555687 213771959 772899139 346000027 559113509 991181435 614843219 749303761 937769339 257033324 873634906 80221875 500303414 888577749 637391730 928126382 892043349 137219895 835751829 505203107 182782169 637578152 922390338 168306656 21228842 196848368 953860825 30866321 650600300 98061247 418110872 905467988 819885527 451091587 587602000 18966294 261421304 708600587 265431939 115219541 137228726 189559231 27444532 858391027 428503061 172880578 888101447 991837284 751636714 520970400 608165165 557034279 807872975 850411924 625627599 672084483 147502143 592463860 535293178 455017567 711295406 193065790 466393762 508648464 605773178 681276948 63892644 690717337 754150683 110726891 446272322 123412227 829070569 247994596 373619664 519115753 25973492 913196367 144623384 921591192 351661858 339739438 260620916 664367704 73862532 284748018 284782813 869890834 91844454 812814652 202323773 488899506 415411586 45277955 793846093 620734186 136186752 845244829 811018783 140479436 12161817 922594009 112435634 940580059 914406466 716625354 799433965 865637720 910030916 738023087 747264965 379055647 664866341 126539644 895109838 680627258 746340300 999228173 505843259 967339447 233992484 171033375 759563885 945746139 611002715 269139685 526958035 850216626 881684107 820031153 806155513 174603122 618596134 767527646 998452074 851257846 23119097 498738808 722292926 942618263 671139444 229024675 274793845 449641036 53166833 780903007 141783304 751877522 68231490 996094302 778044312 475280413 849708312 617996866 607997215 66880257 41129881 890868631 175394318 827828108 348115545 520580557 51892942 123575510 986561253 49655661 231533400 498976604 835897815 345138565 746714654 216689349 655452875 112090817 478275304 783069136 936956569 987094978 279726764 749881374 652777721 558239774 748461432 17066999 959427546 963157216 690721022 338667449 803502357 664761906 933865009 471933724 785159588 756115668 526839668 352955391 296176194 509420365 190518695 368024574 74055453 642291898 93449925 793094654 531234632 486485220 334297432 854292170 833080731 918484082 404611368 402556981 261288330 54662188 743058071 564655406 916033581 451764810 542031049 713139235 657106109 739713779 71906905 989143155 69115480 310666898 276658923 152428391 3091428 967309297 58435273 806223857 487396710 75343273 814102149 585346656 43760954 47152837 182537098 392401140 443497662 207227933 584336642 923420134 737855494 38303062 646140005 703669736 987941782 528892376 131394564 868744504 962267051 433893234 715971594 850532894 279887285 344826983 749467054 285834853 686748542 310442286 563005410 982952792 284804870 390389287 595424913 680448428 113662314 790285687 847123080 924734945 591343563 34109768 686341912 2835899 603807069 818040681 745166576 255967703 509795170 979642876 70910074 312366802 180022415 713964076 105767500 305370201 612315271 81831035 392359189 218779184 565157091 679222276 756747838 94858419 59034569 953438990 237225938 201117829 301445033 272242442 50761932 534030506 753553002 198857057 996158947 784012026 819510277 74449295 679178603 916133062 444406654 661439554 266884453 331603338 88039376 367586693 562504650 967023444 386931605 352292712 122736391 91391433 762296674 437736057 59809190 272301776 818901029 993401905 30441450 383161010 293764402 235756555 427965071 910623887 755768401 560611988 90824387 543852893 981409162 128849659 967177576 193833390 90254831 510704085 718112584 146946236 834965918 113300843 550301633 227826653 273551947 23162468 153685926 222562032 342233929 965241004 393542218 884423685 831110345 986325046 874486522 887371607 563540378 509809696 579345566 244482755 697959644 37853933 461621704 118078292 165644937 730766747 719622634 962188679 523452853 687879864 862974920 799216860 802780887 640099793 564154808 415395791 547380813 638801597 762133620 310255482 87995654 896081185 322049438 21266119 463693781 337732244 403029750 824063848 639423224 534291885 231049348 618892427 569786435 202024871 177037962 682735105 776957735 798970914 559759014 81481255 122782158 867797741 196272724 358402135 570713904 334586637 498842054 309345820 904644294 793619569 760375249 354139030 52893163 98098135 425394276 940069750 319405129 118355079 306568947 313907113 163153330 906414636 410860365 367969109 385365519 78353415 435796698 796266642 864098553 867565503 964451668 552937699 183279957 423657114 113363287 322746502 93900373 683284845 95925326 104502466 388781029 654213272 850545954 721706057 110380998 49006569 92437963 82216592 775261304 653992736 706762909 360138430 52962439 517661582 852215732 620399380 767120037 274061467 96580554 614802342 722670917 508102022 980635796 370995133 150061187 125973735 300450869 934557721 785379253 239346874 157570716 610962009 953161691 6930037 457988408 711105113 684810707 553456178 500586315 889095213 40659067 773308393 130053766 553823624 118905300 55255607 697487874 716030465 915416645 349964776 624103060 904917487 394655871 138399822 587720892 552397439 477843595 601303322 106209327 879683760 246217725 31987188 529351012 195756746 625601846 333389297 595252646 660211057 488359109 133269574 251208390 753882229 950007232 781023266 262777459 881750017 440826431 35921610 123085372 92575874 218903732 12224207 553684516 932250559 66200990 482868001 98706037 261277333 538591018 437949155 593766320 759913708 738669255 941609914 149013354 934592569 582114207 79269290 776102075 473080820 598946742 955024855 678026771 498716953 591588920 643612834 446998256 328621027 177980176 221332245 154208801 281041279 552586940 740491094 995659673 301558606 805767162 443725316 425314073 949887600 170750315 995013390 301503589 538044418 777799274 275030346 169274808 597467098 912672537 53648335 777241626 274725697 888692236 947549879 209980084 746827558 907587443 152582031 775177361 250846305 738717043 622206070 135972036 570601139 363851522 247866914 692179763 841275323 592634723 641041749 562802378 202279850 800343676 115613692 224242167 238510773 382156314 541695154 780137010 271213892 719045726 755312536 723768463 278232690 398274771 150065670 418842040 163055235 22021513 348039603 10232358 803340060 564458854 902238682 725624036 540017877 528613496 645792968 692164702 111070505 961747019 319282755 150445774 674564895 603338755 107969978 574116163 752310307 857055544 636425759 636006839 219468643 187887841 836110280 293007798 30538485 669301165 960757788 24694184 773733984 779329523 331965129 676447116 53257823 52123668 732757442 576845596 19748803 801997878 772618234 26570924 539729292 701453129 208818071 891486132 44794833 133656626 668297279 773251208 405046581 547886865 171198765 336844667 355423577 831566465 509077865 999131402 181343873 153140915 628899520 125013432 62740258 1356085 362471117 857909567 424673662 230107850 981323186 298429755 150670952 386309027 746775595 291819846 524506397 116349260 190100375 520832962 371013507 908369148 331592514 676347485 974470324 349189623 984552239 205020988 170562017 21351968 546740438 114685574 228707639 605842480 124410073 596420160 595462175 206818312 731684598 847160211 856579796 303895552 856296406 753606340 328507984 501718396 338072681 44626048 875543895 405921879 746048150 294987491 93315057 503161779 645652991 26979998 355584244 918880672 746753452 256030575 767968775 714157104 410832154 448231210 298919736 538985751 858681155 780043470 6662716 834029115 843599284 403501006 137793397 840429782 982808927 121704972 181334330 783257062 470927434 757277745 64153335 696020911 489021876 944215398 849024019 25651983 102536592 43997061 626991705 866013128 61699980 717352935 583018824 571692049 4632099 155618357 198523977 559161525 380833211 821275382 567349792 151179168 569855139 312539088 728335306 548494270 673594950 381665414 508464503 187207247 336588779 129607600 571048552 616975211 259567724 899324358 962751559 289708543 165634919 620130970 763805683 197872368 650089414 503039461 866830912 798289047 455657790 663410491 709705742 111595766 484833371 632499540 638797475 725743334 206076938 352566778 85769880 529550243 541450941 153217315 659939111 819563352 206115713 297418009 232830194 451968474 759492698 356114402 246956490 522918963 70035996 860116649 709159273 883312439 732556483 386727841 249393810 741652132 487226413 995980322 354762422 733120050 629232729 861547769 570591844 89086897 892546245 481071198 520335797 665576028 885694439 226075926 275894687 387056302 196434672 869063360 614132272 33576436 796135964 617135205 994016784 171120819 721383942 842136379 970907031 599361762 419485139 49120433 936284051 538809114 800102453 720771193 968227685 575306816 505684306 598443967 180630260 525793948 226349387 267732150 380878310 350160160 196424660 630266428 38244228 345377969 17627583 826464693 247370426 572327670 936562104 606987307 3801959 647828253 834477809 447067518 241639560 485167720 817347741 636037741 648989731 184100089 736405678 997071241 787865382 628583692 582869068 569270278 320780053 60550861 280335182 125262501 633673892 447906551 945752936 42466390 551191791 18795198 614614465 668949092 760039804 15123239 137027723 686776053 467599125 867037994 705251135 486264024 159169256 428870146 408514148 121089443 894249198 544858916 826910100 369046103 247649527 868853202 799298730 935953724 979816220 174462480 297573415 271629933 535249790 739066241 216104892 111594653 113365953 682784993 460644291 70262527 112504964 993429421 599415910 649346600 517447869 101064360 520422407 472375384 842159959 865977514 589459314 832329087 342321164 933954772 6906338 620588096 6309778 581932836 972454739 299739725 983625373 661861069 283323334 17013687 830216656 58075361 545966648 297009511 477145507 660974841 749986899 143290055 499684427 931698576 744718323 285565560 572548923 640246836 228147763 939917626 557068513 552386759 411887034 92216023 698150486 883250441 561298095 821383703 834025840 485781342 39365729 907964732 275048463 694817360 291329704 484656910 67057087 285277338 496975589 464939674 161910834 655819700 184016272 947584426 797788084 631276574 8730353 75124048 192656708 162604873 835668386 879308077 286932983 935891720 757201549 167356018 570174685 898888103 725195203 902757600 251344446 137840543 111979416 501157413 563803209 805669779 712930949 543078940 689046843 356785116 747396272 165627979 2894487 929212402 475991365 899619121 344962852 106717682 452632956 809027036 372397937 489015313 595384796 858477300 240598386 6338150 710924141 737842249 248024799 540737658 580895124 226641445 46458493 522499872 261882240 793979409 969685936 77707808 661400705 831982468 168995268 386095532 38991107 952409245 133100811 495173423 339371282 27296528 11384427 639716104 881470109 253188319 297650149 67866787 386418027 552588067 323009321 450738255 343751550 456511633 282353491 566048242 644610035 924905232 693538791 629219097 900036194 684173222 106412043 85471137 250403434 703708284 708582232 460515690 220660708 617245020 361402850 950223389 962618687 57091146 863685202 803643544 162627308 363761039 844846615 776159283 122149172 494993697 459309662 783292800 606516883 164274420 333550402 449661550 26964388 321165252 630925529 850256302 968580922 999840414 899680161 231325201 155731990 549532698 166133556 670691164 134971617 290444240 151309736 614009946 524247611 216376930 908444536 459294697 226378872 17990939 956786705 817855885 385021957 373865965 61874194 99161626 961420184 464307972 78507617 493864901 509079141 171921098 626517818 566238503 585579923 392253314 798722048 149046022 915978826 768949598 977968200 24728325 800270068 567847778 697692356 833664821 543203085 94453734 907128645 238247881 124391953 247306812 365685681 677008925 811058533 545606071 595497095 297101962 530789426 299068283 467815996 114328989 818124571 270032450 518018918 970655528 724469275 184767221 835857163 635684219 541403301 515765378 890170361 853289470 648973655 429460371 569270439 945365252 248607835 65318418 322214398 705317113 34605027 503046396 359911914 889695691 739645319 511594502 306741816 255498110 623490469 340690370 674159015 759781031 670676291 171706682 603220145 638831099 122807446 435914383 343902967 257148916 893066533 883840905 370472692 523267739 552732858 860607747 836180133 539891850 363180440 652100325 226161114 185170634 482117825 431578673 559160257 341900022 466673334 786347902 441364309 674483364 166897716 753313872 153895437 90242888 406512753 91358863 789703961 430485622 371338590 708942737 65053702 856932509 286001267 306429828 983505912 213772023 240378489 281510058 240921257 594959490 201059697 626136529 836906635 354904798 885533388 896154453 942718489 962486014 610207607 377632150 382480718 786535683 578073334 482938979 325948330 832741523 534039693 205251683 810499706 797641489 339966122 395425630 818223079 984179474 377491192 470538748 441421300 581231295 109187440 729737396 47032899 34356468 526635486 506642076 882724405 769064164 143843642 865170029 807911566 100356245 348724235 951497955 5935928 782717093 694016461 736378982 41346661 818641158 652899543 985467819 207891406 231559799 669908588 755196281 321126287 68777881 147739819 552578652 945050124 650689890 873198272 145841685 304665436 757422492 994301297 754303914 445066680 406374149 419030187 938814116 809854897 424592279 33380082 678460394 216116640 178874399 891053631 822445326 667892210 169019977 520850314 529313378 821474307 813906065 377745491 265237441 37999562 387192179 717446179 380779870 17598621 761860288 871924519 373045812 257644445 945833346 437586241 764002589 643300982 966840231 2413860 829479373 460361883 365951487 516695637 992359931 593120598 92953054 15506536 999602312 936423829 564031688 813820146 564286085 514827304 121299884 111217430 992168688 33067688 300999605 453708440 270598678 982964812 22029231 167697019 633696236 488957231 793001116 45998463 258509844 374889275 183393145 155498249 440892915 644594925 77514963 91121503 177617209 295135641 430008082 523693858 414471333 678326528 970703979 154549696 297104184 69857379 288532579 841233949 421189532 223618957 967047941 707588274 341935379 814098189 191180679 389936571 886255914 283670703 994250393 622097908 932730091 91582456 403008931 364496026 761995879 266895986 680337700 343883442 411658819 48600584 694603939 639185947 213882759 293553397 582974440 92878447 706419602 776410462 398926799 962204236 694285295 634642477 459531442 790358475 687591138 549356995 439017562 895092112 490762269 689328061 141540551 182632715 943797538 527896533 19383041 632337489 930352503 97290219 467653335 14036475 905472231 853278716 62890868 134001419 270268252 389672875 159686114 92064486 895239945 80164649 331732664 744220962 449240269 74156610 36777626 856147512 929149661 361918528 688749780 378614225 135816991 594323756 572214508 780189783 85788753 928589291 232846560 654513077 724000964 683845334 698234265 131732537 455888534 264730525 990876646 79625131 373919765 897263280 766711127 879495830 714087877 367761910 37702286 115829014 863378838 998908420 496315600 85527043 169262791 205737802 208751686 885140171 693455496 415503667 438017540 912839462 846889840 602049953 940133254 52850844 329960018 961731121 591656371 8319938 182635488 315371500 24822932 939947013 712335711 208635756 572223740 555042223 335465532 114036006 434172398 212715126 997435087 613488806 851042623 791504002 49039504 872828104 942651163 859163644 469205163 996518674 183140027 498021506 416894714 551208984 790983709 545801676 277287893 547053491 567982093 759373830 922316213 539220551 25000720 425202479 467522286 601276015 829741058 764529329 115420212 861197372 543639620 564595387 885191484 471897857 255739838 838304594 468178702 629051734 228583262 33946599 985134395 928226271 885611157 471295731 769868571 886204887 655602034 289904909 618389003 745303919 858567371 832744756 439919914 111791616 815904378 22776248 822077324 989307412 35692180 254254630 129333783 973421909 869442666 197431868 790769884 676214329 76497825 189250489 434241033 946475412 790773664 184129776 433622704 804561275 505893918 210063461 456587512 144022865 636737734 529362092 794228912 266826693 229624022 505590309 294877701 85228572 883558240 412240564 479782187 828135648 561242786 483176867 917203546 415161144 362897652 775078178 422631567 580427320 19362686 28117831 553225924 489210740 376071444 666520844 326498512 476794888 543658337 718868668 738229465 199414364 401532703 398753501 155496930 769845268 622977577 43986295 626108306 24424927 844309522 285278148 176873569 753979330 236565678 523913215 614520104 448827254 412507609 932299085 547762132 976910604 481340437 203938964 99727640 456504058 896921244 980696306 446809035 880122963 360844378 940493968 705469346 288843706 989908185 369561184 581028387 856006484 566404207 122175078 819145676 194968750 439172114 423460539 405200983 837641798 259084703 951687320 742867821 505405928 330327261 331690865 627279788 267032527 958933676 796609325 740219525 622390155 210400548 709068070 568540273 583724115 149510217 537631488 341055134 923433638 275255406 574653642 409629600 357904235 916273189 516262379 821446374 1179027 586201414 54352267 155746561 549245799 232444712 143489617 576965880 826904343 949688571 858303931 730230610 982267423 433297281 199387652 433565159 226418651 52664803 606818115 519359955 696879718 96022230 43541501 85742859 311697586 237706889 178843497 578125486 854131664 330467680 185991493 567768066 656021723 623969803 739472416 494361062 326067090 904584466 680771100 402451932 634642607 708459627 35564240 898064361 539969332 173994973 617564100 235666142 14825422 12597573 325122966 933576102 288724232 162611 622217622 531397681 949744611 380334300 445412458 635272824 653850775 368694211 179452227 551708880 268578743 744987000 541124939 520740361 525353193 252865469 81074198 989386464 89470346 235479995 33808997 575048129 174708912 478594850 246897004 894164084 174765105 984538723 394066346 870658265 245354706 890743940 702755871 282495135 960729260 50536887 831092455 804729246 200120938 218175317 877027022 33494193 264433934 837912267 568268321 258424196 552563211 855618890 546101972 559572335 30835555 311981872 544131521 11134600 217396554 842766305 273584282 489089806 153340840 752278805 602474783 177350225 272865227 82921224 63298163 658008188 297819851 607518629 238069688 277689691 511708933 120163958 676307722 338244442 892225502 753222428 452832893 945036157 436659448 528679583 29125862 128663543 568438282 671122619 962073051 126788034 188873370 595895304 560373806 110298280 24516316 451020088 466495452 672405177 575095497 355112112 287472282 258035968 923975353 637070081 589277129 827029444 337242679 688833783 508080384 134914149 455725538 133419252 347008088 966413308 609947971 86395459 776473112 987579812 93765735 400589998 632105243 561569481 585596834 682537825 739719601 62003016 308083022 95830799 567327826 34994753 353505065 708651519 628350421 182673652 170081390 525042712 53372556 366613326 260814064 408319604 698577222 501367801 980505743 974278480 277742176 359094505 395001876 838208505 992406812 13798554 61722203 445460150 768154673 260019132 262469151 490539439 290099615 22760490 812304802 593340116 483164677 970633268 968468118 404308744 636223517 172562805 911189912 537003906 247277027 652493612 705028995 450421738 153588756 150478787 632606527 992686960 954411426 896381085 683644540 268059835 544551396 208758567 600379871 641239151 181788190 803409140 86280673 509447605 138520523 886983887 969365606 956389403 820418079 722234227 888196316 792798877 588850031 851045641 133856503 839492907 764206318 441966303 941485846 451994916 422324137 326489128 148455870 584261115 706030024 44820281 17907473 682068431 694662022 707418352 168430991 123724642 204621816 619864912 697985449 706905528 574165568 2238212 960664280 573344439 30446942 761768633 629942589 679200496 450894656 896206047 498171882 692377138 404393870 843562685 687001603 429089058 430352485 312683955 102835047 837600601 947567277 141780294 812561008 232004384 428031834 272638740 180767881 656646017 794034045 607957009 827396216 492410500 638980750 148807945 463634721 52164241 216674244 123997273 471701312 724118212 511384832 337698181 155841130 542195052 999841043 835307101 380894122 236888963 413253995 839460632 492345903 2907483 378279996 502707452 342194826 190927308 265395730 107171962 588407508 696948795 98608325 538965958 954761406 454398076 78176198 450322789 686503515 129524871 384757967 622181556 724470537 886527832 660805038 128792629 938786199 692327207 550896240 189993570 839476583 573905361 327696911 252909556 604101720 134538091 169018079 42348666 269783457 933803732 902737850 83519191 34036417 776500068 803123007 433311155 971412154 676705036 327052946 374490328 651644943 571219915 870162540 485747833 695338554 504289162 117669955 516182559 533842360 526648530 851431428 824799411 842314841 520668251 682845680 20998133 83571719 638409456 31725095 216972488 607595714 96337679 128392839 670633480 644786595 477266446 573608069 501384492 646975709 74222994 898791948 278859157 992584309 673431221 777398970 401887533 786692167 627725719 711992575 685145056 987743660 569984538 370446888 549665552 750720520 60490220 890438686 722639916 396642855 615143727 889365090 42883961 17128709 723050976 776584455 167055827 456429182 622631943 490172660 370138236 647556540 62682229 891980202 344197161 234383071 907270905 280086709 474706901 817153968 611448140 613140417 368290491 560694202 31788598 818264827 223478293 841822190 704375970 640376541 752533268 395613578 732840657 974164250 138209810 877189911 234803539 674852310 195570687 885121417 507022989 977574717 412045418 148796707 702903510 19031040 659424281 459737182 346558957 76235740 858360705 393485888 350991792 657660147 343993397 175617758 633998581 18067291 327734227 326427464 755943148 8206439 500107716 976318059 794897704 989403330 912862117 928087287 412261814 854105130 445871449 28481951 854025973 95212079 194943032 944121505 776045974 468209040 263632674 246874269 119985349 553949777 175061038 546930705 142886204 269397966 623799161 271177391 19146962 440771155 906754785 602307079 588027500 283039547 386986304 396333377 577392281 222393738 963991344 795324680 641632297 846066464 325120512 975724523 543459239 386715510 938526274 976030278 696421648 661538552 384254594 330265782 237726799 951593716 682510274 322620871 125879612 50686673 715906872 745421796 54863080 362708554 455947818 620956873 85443228 605057687 65178456 72928989 594548342 992407328 510770326 552773580 22839848 760711923 530118901 418481750 755056296 385333683 122191171 912088630 92690774 506774901 178113122 231420409 262432864 896577130 871382029 206443112 39142506 725017400 86368667 949206411 291093050 533315144 997419790 84346795 891791844 882227739 382315737 148837225 923189015 947498151 74050692 92186385 959519587 763756140 672939640 948353308 276963170 963910006 954874701 946838704 787170892 520357707 731383605 334653443 336169749 961647671 487228604 437375389 675591950 104285302 772970525 605084476 153785651 190397667 115318685 73604849 932510749 637615464 141720926 96891647 44268203 736879469 750467208 140226791 549524358 101090381 581369213 473238652 461183388 345887300 237954967 581770200 14514004 92848456 476235556 501220301 568800072 206057314 836356266 326616903 787001330 897669454 75004217 585645089 419330521 191584350 547182992 14139756 828136427 382330793 182886171 534717641 358568433 816068754 32584289 761565836 344451735 250096039 898744149 490691943 372961614 296253929 1604480 630371606 213902933 875710163 935749150 699211363 501916772 231382945 817073581 896481557 740623987 83440861 72660295 442631217 510402051 112798297 44708508 724088874 369768986 680824676 197800690 412524955 234509693 287623514 328112425 804380759 447603117 429458539 399282063 253690014 632935838 110965409 40526849 39831755 705012543 975687964 24161079 42590365 664244444 353001840 652064121 985900764 926444778 245514809 858755000 745589856 516682798 749271008 785375387 900228346 146197732 492640733 29866397 250142023 475945655 402277644 360081207 582251389 583955651 102783453 21082881 455180047 383737776 833943318 281863213 452075035 443606441 844454027 200033599 166218473 378473282 642094943 914990613 831136830 797504250 518222756 340124250 42375983 209527279 877531162 838437371 407845304 714568354 48925029 771422234 680448796 979659853 526767558 257562195 445512652 27773488 878511641 674846462 702936078 406337553 13863355 31277291 694774954 273344553 621817963 685387276 667654125 345448566 636627989 406388503 821680449 917426291 659497949 680230885 122447200 816315968 986053743 348474063 949175940 228262338 370299494 267231791 692857954 598670438 507588052 988459469 918826991 324456613 98738455 104371439 311225258 278875129 244786932 198297884 241785908 694136428 426307173 564859196 556652527 945369384 974837453 262617217 925888089 932184831 351916640 981360341 425142653 787529417 985558069 324287488 620710877 485744345 466483282 738839426 730505698 643022782 471127510 970585611 485642010 316013141 513093570 273370272 534286288 869382797 941829174 352885307 726971246 631151592 368213501 178511991 509366122 812688304 123153757 894160483 938802834 542445730 368427390 658430305 921845935 142090458 918910746 121659695 323917109 708866704 153314185 269922256 892451028 38614678 360670711 356878574 32555462 452580283 382109878 190739170 559143981 427103216 565886801 980643723 459221405 413089640 579735344 608348521 221916008 822319960 813583897 700824684 616467699 547763267 303922469 879531272 792998154 482991801 207427088 904529470 655510940 219661325 266363472 150811847 982093169 152959921 941682502 241312478 113918045 529802554 322305942 368917488 369379666 485150980 363179678 349669243 921625105 587145175 298028130 955385193 466399243 943255968 498814491 894353034 495442635 221519269 797694990 384940174 300450310 956789897 309912328 417110557 125139943 578761913 96273651 716774379 779613914 694314949 193318817 837831882 286027912 198469771 536112528 184889064 24857630 612471250 456228659 814193135 743980724 61563297 653548996 102803979 165523152 928277182 8880717 236866855 11090132 940923784 66244596 368689892 411217868 882110614 276962035 226814481 147631326 50750017 405876461 970794538 986676987 259095300 977028275 169018929 423644041 821300864 143537309 908487331 100283478 845245422 116319330 256495206 149504476 547844455 857698107 916793671 385604008 252902194 797417300 928728303 720806401 24608436 955256476 947088198 369715260 262383657 993262725 560378525 557138175 499235183 652585255 985546895 986171486 187415324 466464487 164378963 748787809 810933859 479715893 98847259 929176111 385191615 547047104 591711696 806028917 243574907 594473068 878454890 264822369 951018980 158386507 781344848 179751275 31570088 324739397 100431851 3436235 438769926 279595997 11306355 691956343 728540472 731826727 267852095 33853235 128222180 872587940 650611593 634127496 981093677 644247596 408095431 143719172 612313721 130791938 559173542 5251274 954165571 491777918 209308878 604689919 266632585 504070432 629203913 261606425 634353165 74700898 663258843 543998755 537826432 161495197 34529863 422604797 335962183 508063359 784578540 434668975 164823281 577357262 300279053 54965905 872400200 826964849 6498222 769726642 641399764 488144092 346886165 216998916 329701562 972191382 392359726 986957126 631480976 364984746 286088267 172842809 26518852 283659478 596293763 624426709 425554150 874059794 902010655 99940246 620260563 605015413 514151746 24485036 301551707 411462576 898633039 560109301 641623596 620202035 511665047 140744627 494008105 994464073 700505178 816355164 475652481 190690934 829151549 219910874 80570013 308134427 921162598 395392545 618408512 432964738 8730266 546328917 323548747 278749254 628027589 474377398 944570679 137873048 868912580 594398787 785320488 498758623 256026062 949925105 914856678 268066396 956435774 535590209 159877778 631972609 29621036 670870627 512438775 212311315 7101430 379077743 312814209 31840761 199662032 857092717 990781097 308955654 86178833 406604421 539380276 99867164 607761930 326458198 903908519 921030978 62665644 262996469 492926629 631125322 949482720 874069009 308225191 426763617 997082318 722461042 367680421 552709833 980989811 729568337 114597526 401581987 373965520 995042048 256665881 614229438 488399683 196971696 48988580 79151582 59326366 786502616 512448244 582306485 607758705 56634699 636425100 993135373 798045499 163313228 687333484 981555696 417748163 966591982 522942279 141504151 200297384 922484634 421694454 562358910 32464125 262434591 806047338 410218183 296680028 96179865 972267673 964005441 210855977 559422949 282566151 96164485 266527459 207322508 831790449 526098118 965186251 171755157 859832056 935957634 149421037 287927996 954446910 842575717 344458379 970762812 171398427 226723402 650435159 105728687 531500946 711705184 572963777 754858729 953369988 567971128 70911784 488452898 838877688 265699058 915646404 745920563 427407948 779110791 252116304 677367975 362412517 957850918 113165901 338975047 391561268 15123850 478760726 347633732 921615225 823143134 913136260 782572049 978661999 28302764 427937829 738875354 976466396 492439521 291625524 115834245 489773800 583429448 501340698 826384791 268131845 428265408 526956884 780750313 699037482 540947892 376481145 241428367 221591105 470247111 666405980 41753490 21722513 202723902 46805328 440775160 608077918 56843318 391360449 340653899 570603302 736404229 885757984 251570114 466200498 526334140 146436204 132499455 758960407 753995171 567334977 277100034 117489799 130639929 347259100 189773806 31004528 413035697 801422433 564026533 708990857 668670148 559849352 542083556 961367786 980062031 201760115 775828237 447385516 366667698 755389916 868105049 659969251 266698893 792804388 868437830 596232666 481316966 362707505 843253287 658596552 378292363 659075017 932650077 81290895 609780563 509534857 279386388 56105769 409135981 486988515 477162560 303734879 836875340 517784633 706605712 313203831 17885882 223111205 446085048 399570579 986323168 740066100 721707359 855758514 770943911 345785506 882755255 230058863 296276812 183774375 71229737 653303846 546219116 207313394 487875001 701454480 388836739 731598583 320040694 517375565 502236129 289733042 377194345 881686937 725149988 214651751 661213176 774942164 113387457 94356559 520657754 601707241 297238461 52496750 386674968 383232113 977068202 205371470 300956826 946622363 603081231 988718952 263254976 780737066 632494085 25746165 182054460 866330141 948391149 75058016 202866060 812049381 736224433 349726622 936530151 517852801 380714997 501021269 88017376 769332997 859180823 631733166 331493500 947029490 949167417 803621633 91364168 316894810 944867991 278337544 152286480 967299986 977547246 181001236 2372066 548742016 358135634 961640731 597468504 113835783 365595122 87978589 636836289 782524871 585944933 599038671 898773060 771471331 144928535 835275383 46774347 554987759 131061517 293071475 751462082 144782199 477254622 934303901 202180690 55022247 398609341 303305102 686591045 161090222 707229225 76046569 215358350 126245084 264314991 164783219 729599138 277328939 677160824 91188797 38565123 542608080 453986547 541673682 297941647 598776897 259590587 200563005 85704366 355271635 748143432 99402876 38723566 914954500 298413619 373587898 787345508 702469678 236947654 291477718 673507893 590451940 1259509 50681930 756444839 691564727 243103929 421900277 191478586 885870669 357346219 730573237 525118203 604853635 641652709 372960435 562972276 108198060 637450504 721748453 897534904 172697055 410962226 971513166 262454733 857071379 978510534 926617210 331306118 651294087 800022544 816264614 888169115 461456300 132552318 396109062 443109053 199125179 645974873 397035114 243529428 72862448 439931493 853374856 862357977 392550686 981245902 76344700 916642537 369692578 497222221 309746711 953548471 706989593 570109349 901544894 539904350 143692190 587114866 454263258 397116378 722613884 547002373 178500327 779070153 436797300 324854175 257795707 731180227 340094717 539194330 957109038 200379372 258288694 929538895 790384758 337420973 391961476 146153306 887660534 832214828 637435043 924603867 638117113 305747712 843652089 53634875 640401406 885425847 33839501 870545957 657856536 410356619 524070244 585174298 209576308 443325515 371553792 603401537 926302688 412536593 447815982 945682595 534776434 469858650 857643187 855018276 333445575 254338089 298553269 701027972 660209481 669208145 378271560 502937058 73385006 829873397 302984608 573982295 860210291 20008912 399089038 229573069 164281430 424422203 72942986 721205793 86234076 56763725 880659474 501995081 646532501 790764979 316641215 693787636 695034143 458352052 573184051 99116334 622728948 44070496 642393635 519417792 643698226 418437408 83667825 693923862 905142016 472995746 366048843 863260586 605638154 30853709 653450707 423753953 511169059 85313736 905636932 699130205 46305 954868234 636618607 523008211 127449669 900726765 900015333 502508272 350398287 627969757 8872785 655718763 445326980 255338697 693098199 964969111 393339904 951675558 695211405 148522211 13697525 200119142 652112632 938724671 236671120 168916967 849099444 597042310 999939094 96279150 699129564 146241120 99075486 437046411 394440292 647474364 820749807 188149689 612657700 164631977 878697096 960813570 176875744 328891663 849021039 390388455 707821785 457719374 864064525 918446058 611060139 959579055 660364278 112175361 261102051 476426369 164239047 578788366 148963380 632030642 527943655 401613867 718950800 211385891 273398556 557994137 684803145 330896077 769038272 274101146 137975483 650040360 259699874 119430471 256895426 600333317 321249347 139037744 198123803 458991988 526610072 5775297 761190053 25715784 788977408 380321846 542872657 341973733 683117818 368525954 43640702 641080098 481941988 405210571 852133581 513313325 348850478 829814788 463895207 921726327 576344299 459310024 312079595 633568679 571045949 682751520 694778873 739937936 432116704 754253622 579584772 553000027 572163615 450056042 995323185 204524846 549183748 738715768 638523188 57283247 358792569 409155968 310583299 770088000 809025472 377800180 562089307 769363781 900881048 133328184 942669311 257117240 571366272 440365206 847423179 764987709 793647511 328279825 750788339 652623697 937897181 265115311 563483044 64288323 227375729 677845584 55986207 970624868 577299268 342868301 798215625 194058988 360979087 215345929 184798358 483244777 111083735 678317874 909948847 979863918 633329655 132178877 450944500 708241967 974222087 477340836 945819133 439736632 588073395 463656571 256370016 600627109 926690237 387414422 616144896 729418341 979640665 154401724 894277876 33949891 45532044 639123222 852710166 909056814 350266826 977450438 908892997 30033137 424125705 678861224 695622429 457025092 565325745 462368165 407070372 499906286 211399105 730473855 552019155 908075700 590129535 405856908 35541326 574673744 535781796 578526661 769903960 465660336 271425505 692929124 749807343 268782332 814959407 733898767 865207744 850863051 115153749 318500862 489706148 609155197 52213720 765823044 997507868 864746053 543629112 127498504 78977779 506311167 962011446 357832745 493676834 199467757 852911059 974371971 956919186 613676087 650683064 325055662 505409869 322471384 798685741 631308892 997422545 501603237 473223623 7280373 570308150 589291339 435212148 704135547 574969844 950153079 934888393 417883744 845820477 456176599 534100818 878290434 106911047 942604695 224120308 632078015 922321029 153617572 842528970 291645199 367866956 849103300 133150239 651629927 346297767 737463560 702772690 690793802 676801548 619600998 724815312 83163362 746953854 899220778 521369363 640496291 265441946 917506632 32150011 623600784 533738507 173635538 840072476 716791848 105132574 507009717 30356215 987266866 483079366 138878902 177110352 214003279 311292223 242852855 995328213 817980643 551287734 743740714 359178757 521540261 481131579 972188721 995596527 100777847 600333634 859778043 446108233 446798794 62093804 531728953 83765005 123624895 705987673 515002619 207140329 35497252 1012200 890988665 133453232 344037238 167714901 281428421 212333014 541389834 190766532 225680623 737719995 729828369 729853903 845835410 349862976 629996397 465547620 862200761 720501508 47381641 464004924 906823059 121067446 263309490 965179029 666085388 682176030 941405551 42330748 146272759 868855637 298610865 479748537 140062884 524713823 725292658 473799308 522018257 883150751 142042875 318589760 719934579 17089618 992824263 995956787 532188358 995413223 213227519 834210749 525667521 481787881 118626947 535706449 180849048 669186981 253493569 718235171 111139490 333330400 940326234 903394874 70729832 291298720 787020269 140554079 353413402 357805957 919775709 262023016 247551423 57478740 940804481 330243040 670698806 80438032 796244635 935958354 800326575 228267577 166326453 343762117 675722324 680454670 362527085 444817006 554926239 502296825 141216552 90189724 803112600 197392935 297055549 983249647 65805235 739225147 532103975 611210976 976873410 541017917 562636304 279205532 656468996 632489101 825584587 910909432 147682137 92763060 95831908 898227811 255380086 948547711 258274739 486555219 888514722 158601780 892106153 776726101 819092343 869852571 63890558 288986236 790590012 24970233 469532948 414734857 72822221 625109242 592551980 76125517 988548564 556115925 128393136 761132261 193815731 900230346 622436599 986890619 536461403 287406733 884792072 860361947 90195354 661187837 860815031 875035354 67202060 120258822 630737646 939773346 849829571 339199842 497333407 632527764 818131691 639283662 879962178 442782798 504604747 601690760 865614503 709747541 237593551 918910412 273764211 367064760 793250981 623143107 290817437 807932559 694481832 477917729 304414798 47638145 318159715 197493997 833216985 32863967 215858822 866640202 350537880 723246006 121726840 810911937 15023517 23490562 762723895 675925895 2486980 681308261 522001263 33806008 380029772 959563478 462540840 636600023 549017872 595634568 977272605 675698824 519057849 76740736 744736266 836936933 348903876 654510995 152838881 870847522 403097139 918318420 968282599 418641409 853344803 853520968 515944775 808414200 12764911 681899087 670458714 634254477 254469259 769567631 563623128 183654588 276971962 908368469 771640068 243224942 594245890 808130677 689839481 540093293 532124921 720376455 60175139 463434807 631280276 593690678 231869002 800540937 628737845 98728322 962128357 958416855 296091626 541495517 573762822 835930450 334645272 112953745 556218880 605043928 935489956 761177975 219623185 356676538 528479186 828696577 229327888 509742566 672921621 524789081 964230147 482489845 429226251 168193060 577779747 785584155 584672732 621867823 922358213 365287202 236262604 801401446 659314447 396364 412495840 218848013 613082691 33245839 771455513 716291410 955442570 226413572 602216515 831913737 384734011 692560906 866020598 526734154 802258016 452631186 176036548 75162819 728092986 181479524 984455470 247313424 415547881 850834474 149194205 753450052 55193065 582378852 407866984 152436376 253861981 31745706 158881513 280630148 438094517 344800447 4544276 858720748 187467784 708614655 9091772 93447858 912121963 420553399 400897068 672142506 371657231 54937461 279397584 878138066 625477015 128525564 399421664 80581335 777166942 690193178 260974062 75425177 901965827 318574064 606298875 339706161 322896134 405722684 583315871 307738087 40193594 172935519 956560430 372913594 421092176 145653705 484248185 989580222 503464602 700052961 976212026 716890866 9705165 716002287 973229796 132550884 798351855 442411272 362366452 453637393 836709432 917596368 987538079 927082660 396595401 735221348 553218741 487615048 149821054 589426031 875035433 605906528 161203726 619431420 827410923 266147796 268954759 652526616 137630875 163269912 967762482 468407734 692060833 282416045 511318143 398164355 208746376 550141512 133923733 198280378 931025622 452047902 60561646 465406058 761435320 644667592 642008349 843165067 1002132 994512386 404319698 757931100 988545439 927603160 416646667 753809790 921943789 378241398 906895260 561699293 610064627 643234476 65402900 376697165 510808701 186996322 257517701 5804753 123744290 574232200 601958417 125264681 530278599 710384433 301066015 317465157 524639665 320482577 914219663 969685014 447138346 572583530 463488806 188620707 138257975 626520403 810463918 674084317 269125933 124118994 50894861 549897541 290238435 402451650 460322272 636010189 707744467 978017908 586989913 513050792 344651587 946495672 156952068 253435263 342742216 439328927 906929727 856053231 502235960 231608783 425681219 503202211 467761513 306458224 409043668 8169233 190464244 747049123 822636938 483890013 127277527 84263114 37476237 564190813 501036111 405665231 271937412 199875185 965715655 466695028 266479423 541421436 936841447 51360827 387326322 618775194 291488566 920781836 30643202 545514366 40310324 548019304 516747676 58358454 535800193 136913232 589552574 915881203 151267002 940856276 350176659 126245189 955519447 641667856 194754665 901480003 283584514 311790759 600076389 450491351 537259300 787608768 604060054 908404654 433322242 389653059 377256289 849297742 459601969 504278215 588299712 18653894 786484176 987097603 479332166 752458923 162142429 209924358 640303722 851274996 857504299 855233922 320803039 267790370 214373195 962226913 555218620 494982498 865774052 60920131 22379499 479463057 99294208 945355013 206376102 7162641 385085753 662390537 66638699 685467124 106055841 421581155 439088698 40814577 123685064 22360149 535081458 161300326 899796831 347007431 820111185 876921130 128851067 907883430 194976502 19323145 4247312 54751985 937279704 273283776 904406292 276906658 27306864 211263802 950080720 13642339 169670588 213639985 710658864 508991718 570108561 261528594 919955972 847548129 603865852 67216111 725543525 709783944 253539308 762867821 224655620 895512549 342814818 790797402 469010091 763827654 937415387 104031210 787653701 875854123 930363101 652513259 514586628 532461942 523039147 279843464 851374496 1997066 16831858 179963095 730646527 129143055 226590053 818790859 389745285 862717657 197149142 43923534 545463191 235606276 703063589 763241075 145666841 469675797 983170955 367074555 843850549 851229446 275268433 100994969 437834233 559121596 898343884 769840872 92212762 673117357 222974451 446181849 202672256 819990002 612106859 920251591 171770608 544260420 909333274 134714969 378344475 385854019 133077580 703134737 218777788 893608051 818338057 902232420 386756530 82436465 232553026 465474441 735705463 574640832 298866084 394569847 854442376 260206013 244181466 170741244 786417933 25822356 675766103 889485797 762943943 811897170 388806703 716883189 401236552 576032135 181648144 731100331 214693086 721418249 359799235 853206482 128584442 426476983 392024157 358915738 46353538 306988573 995205283 185614650 2182054 333926332 45092603 912954181 21474068 388473080 670920986 465344581 400636404 626359519 794940542 55983735 805624793 438161457 919716672 57242961 39512640 359209988 293775949 627062962 746977742 988865266 18074173 224228252 737901377 196114236 905819704 209876230 526814899 506399511 683889344 194881280 606028363 890444920 958715968 321922646 110770991 715910001 756118578 44465113 35389865 318268507 832532523 543709190 299289425 968475147 888739583 532679778 951084588 932223057 984573981 967652908 593473033 617330384 480865138 910304951 684530223 68969504 302307319 749218833 95869170 992769161 56188847 820927266 581075334 394901185 503416405 901789323 24797649 119154213 178381521 882043461 323506862 150192974 97222368 684440610 228955428 130569315 973375659 326094711 675756138 57878205 487924099 471369745 153609613 424431137 566608152 773126492 66019588 274979736 757391018 652522498 243600886 41820841 310700001 758553578 58287818 399768918 864206587 400683838 548070252 293293342 805235185 305972881 22829449 693115752 503831971 393037691 472027280 455545224 354528133 52469553 143013260 663409822 662546190 608324320 83698683 74907358 988438812 876303472 71407709 313600192 779829151 434059407 5502275 841165802 316639600 617337039 950913973 501855634 986133310 315332247 727688518 165127906 947683159 368272767 697666494 252780484 916117527 380651998 257321332 488280515 511757008 817690308 680777090 315838169 853243986 238287550 121286339 846047419 12576497 873148319 796012474 779668063 576322738 952182666 919802625 754826527 437528161 786881616 153198593 480911806 77102226 578845203 796857683 455550286 104019018 85973296 690915441 66557934 214414278 74190751 375783658 756100405 734707078 806710649 33553286 274494081 493767137 471508440 648514208 607641654 239390040 233854716 595224181 767116182 449622114 165511741 323317526 392172100 159165482 133837112 995180923 563224576 968805023 431625503 746194757 846226269 144027449 866495220 563250668 941422130 267267515 523969429 931276484 567543988 18355096 910895890 504002164 893267559 803894631 466454549 559350099 418670429 897491178 612527998 532322488 479670199 854933177 529140308 86179059 345144470 21629091 652256796 317978062 315851902 609590106 480487283 565254107 759665723 215408682 940344609 341995106 587311573 561483958 839080788 218501444 831938166 237992398 843304975 53809338 768658087 342001859 642558457 603482005 761111317 977180 240967099 534242903 12916766 579392611 371691164 797197696 639105630 659704931 71899385 893334891 8728566 574301848 399437259 153518496 677942508 479675544 698454362 484778447 521814844 329304042 185245443 809473749 501992887 679277541 204670797 394844038 724384817 474366156 903818052 526744267 732097537 580307689 146730830 16282832 429420283 639423779 276699208 833534002 507118976 274945333 89369688 21782971 807797925 34697886 216412217 84296381 552290144 679545248 654717727 781846744 952247873 116680787 202833557 358971879 620551822 295440162 647903952 630974478 704113770 281920640 941446426 768050446 849625960 229770960 865904853 707787056 463502443 880695441 565763087 545882263 613169454 255381299 151283695 318852360 98508365 438431695 887376104 59408053 13883632 302693557 346269785 696897775 11963550 769463641 974550457 482649983 60225497 784720127 738527632 740696995 304377786 290485368 705821 352992014 554537627 210185396 982356542 361564862 658851074 470988439 216593262 483591687 689448945 898761184 436875065 393305992 175130083 44864894 331153067 647957773 963495363 703012259 611647544 944841732 90916625 620061757 166373089 294006327 824311090 759797789 284412272 29829024 505487931 19223603 389847074 506193583 843721890 501412422 370876764 608023005 218389707 562217048 993527018 136283472 490554037 400330770 264305231 780339359 963513466 954431553 68258158 49984047 314985803 721505884 153409131 470973889 536645502 868477856 246547114 681484678 25525175 763194287 997740921 889111926 664134730 132263276 373999277 993537215 86415274 148225648 506966133 907143670 574370644 871019582 865470449 182283515 698469001 754918338 731287635 622900946 499550117 402773139 520147619 918593630 428310156 380759662 948806741 486271308 702319516 453120505 322306521 78805515 597356191 86313035 802771406 198078919 5830041 953193856 555425817 880028481 797807402 151755085 125853326 222553673 943330772 603331691 785951473 632538649 777185737 436212115 66339239 26353961 149239812 659605047 551421624 871806730 179848228 970105581 20082000 12002630 449793015 567464549 681323977 686241266 262535788 566262520 301636593 439630170 810540533 664623154 168154312 691469525 407157615 317546813 455579313 138205034 87073220 514078378 22013265 668295585 307450230 273883140 156790814 188701835 369425523 198966845 129548967 213293962 733458543 182018753 347883543 246111747 483278806 169991806 606228491 213946974 699310412 10488965 413547894 355056732 415371666 775986973 488653294 257502305 186761075 528500179 508207218 460151021 820037155 888659304 875209632 814186509 471183805 583553942 623665636 867960220 372737214 249841498 568181730 151390127 478025346 435546768 546918836 737589963 791180638 68422202 375257128 535759469 593365202 708660345 323247521 426268204 288628903 674983983 23151656 590889075 987128825 72402892 161878065 744419382 984101483 414697469 517607701 448529722 618836001 974963681 391644402 138223225 829841514 482070325 655311235 477612923 544089419 77507083 3424620 458012086 18236800 154631047 254144656 18199432 28645580 61191619 270701708 465224157 72819182 941564028 282060201 227981641 460035796 25421737 658916828 665348293 596100820 74161892 857507687 408713746 749917388 105893930 981081211 912809211 846117832 56451346 933438267 531446221 957237348 503787333 417213326 801913282 493805762 542585964 229452256 990193641 821106596 128448625 965541007 315726966 4583422 868584743 464595785 410869676 734029400 196792189 284970188 834337754 323381996 7889477 498837816 320205266 449860907 152688309 716118881 933779672 356512459 429090654 488665936 951660454 235118374 841857217 194114393 766986965 309866743 220137597 55513521 487379540 149479104 917869698 35591261 345454012 352661235 454668416 325890960 313733136 638071415 388832466 571250634 740359554 485504135 374556517 547089521 89068301 510239303 263180453 979016419 592741111 952761803 800963875 39491115 539993838 794632934 526341713 926298159 500246923 982067333 272804274 343692533 331663668 388841104 36331010 319365540 208441442 847761418 107588063 551308546 691032413 144593333 371528322 935710076 678782493 978667384 377193356 902079374 857045172 141148032 581243440 999106625 966349365 302347856 141289269 667359240 865551665 872300130 920595949 509767336 273265076 981202541 662265018 685647704 635739297 886124213 689755675 503332170 642503343 835265138 588021090 420809319 923905329 892098766 980342426 228779129 601883638 637338262 460670430 69516292 35943420 482202335 427068241 969754595 961873787 38658578 611414114 354954654 70786213 902242154 288077592 780897478 193560574 79266623 660911473 630964564 930507881 842691348 13396284 646451685 116678228 337729438 714403773 81746758 209032830 185614871 591084350 101442558 700372441 428864449 315729885 764641050 348371198 744649053 462036042 910639959 801761734 650166496 373842576 345455040 374956998 892353384 712827029 826195555 516569763 362246719 781599560 279956179 30163466 28006373 643380950 840354694 10622256 288671241 120649949 746042385 601551621 277251692 204114443 687130922 310020032 767269182 254468002 655821869 97760712 515834035 831439373 122392091 934248726 509598339 241149095 967572525 767055863 987088840 200849983 866622860 381736637 287198558 56513420 843871572 471931927 29908256 835952716 162725856 220603789 925075693 949192902 677580787 359008741 750752392 444203929 847176405 465287736 220192466 834903255 490990934 576637663 126457086 355204836 391464733 983189336 982653934 706949053 125838391 789592092 814169243 975686290 55598117 628810192 341804337 392107839 487743682 144651427 65640817 883709861 964425477 493702729 534245000 416828918 817316227 921361318 838711007 58575277 874825923 305205774 443561767 576751879 430415557 307071947 164942835 542730853 652123083 521759930 557062764 943437495 205517334 336067104 389997292 65948507 158685900 653924181 278372062 993295632 266314564 474492917 713826179 477063929 104542327 607117558 423876870 745331967 251764498 83767802 670436446 67433721 889474883 900751116 746431620 984993716 972076266 518900032 311393601 384253853 339929085 576050371 582970600 131684881 721515707 695738293 420627500 373508359 35873543 407640000 427345998 922824179 228432865 14946625 575908619 803685267 776707490 584706217 215586966 118802390 466134862 403775854 385863690 446259755 108566528 761619670 284058053 263212591 718348008 568357003 543859346 600959684 86420483 166866470 864809753 235358104 142965199 693971492 679550917 770255044 427582521 936014912 867009154 400028969 237297234 970143802 136667983 200293602 4711579 695842078 753513398 559730621 699257744 845820970 422853479 119150101 546617257 893664195 276485248 477419168 328510144 140953527 775895362 894897528 973940322 924229155 496047107 556559839 378164201 362913291 291458798 85265529 368782016 749527880 441366768 293251041 924367928 615648028 777917191 887887373 506100989 30493749 894424032 826101389 495313668 5899154 396827179 74648015 283878066 587862961 994959292 956767461 81058987 876783185 341755661 724721903 844343207 564539173 638275659 193269568 486909007 157798202 445595464 413006646 419722624 516735049 137442301 418229073 498271674 161553646 855683067 544789502 815428909 174152291 280903287 727062950 833320221 13737571 837566190 105249067 249547117 945541990 828929238 62745546 710145540 131247329 462727584 352650753 305550074 646905087 347280781 702952273 823568192 190957771 713999593 387401865 185533001 969663624 326602722 807598402 955680255 108069854 379007500 104359329 825115048 368418538 570334548 563104940 230250896 777443542 655335101 231498902 744721858 241743352 139366033 188294636 661389641 534303911 582290936 652191890 760623767 881769274 380598224 252650867 528989604 634012872 90766635 267368607 600777003 120937025 244658949 308935804 457880348 243704063 221844234 331618143 874528363 247805888 153873188 91014891 555169889 857855981 970025023 56237267 931978981 489219783 650912118 422405948 12764194 545200193 386475264 154820889 211198329 310543091 728593259 370999301 98321736 867644917 386378470 450183119 676325423 765303366 205386551 994078952 332607290 397569835 434451557 913506809 992253746 764121799 364148970 832207471 962043013 882536088 415889226 836731890 646627803 917109647 539817796 116634690 220694002 449015532 724776085 752203474 697135209 505834217 607543469 794571491 959051173 630791407 790035894 631781432 482281684 390498484 254665899 751164206 395172718 891224960 154263574 145182146 449442493 273850943 263769122 261328356 281156681 522484223 74333215 107914834 956320006 590130869 375684720 400684210 646536574 520075972 259305966 246449861 531722772 327565752 896041563 151194662 638739681 736049432 276816319 144036410 194639488 523952855 344370997 257193620 274381834 85120393 851787649 858202385 400504330 12694914 604629412 983224283 607073021 857535072 464656895 635464201 945506435 302998392 855737412 668729769 937070828 20103213 803170661 733589529 320548921 160880670 875980903 396182923 284362481 775740891 932114660 932855814 557303355 407283076 92032768 823654513 909235074 702640970 954347956 918981720 879159244 982560768 698299336 932656505 443324093 944760836 295014004 768778918 611808546 393347935 166393099 630711773 24082720 612073130 15690227 101041319 736845725 252332568 540098635 637912957 424809613 768835602 278988131 702893534 617166394 440850549 190152355 847847786 451081082 380617544 19937350 454725255 603454097 776136430 847749861 197265956 960713807 157970400 795518615 240651681 661009866 793174404 939415984 578507440 495282002 199977831 142287415 561620024 688593994 231412405 654579956 632664925 632562578 161616302 907323015 503361183 150747579 618660291 618530445 240389518 34571537 30629701 32427973 570546662 239447859 304346353 881082831 531355321 578374129 841050174 643507959 583823554 549879802 115655874 659574388 694818765 565791048 610161363 189472105 814338601 412075130 290715294 118301542 27629480 115659522 756496772 345660107 138155654 919406044 954370165 84835087 824671146 509639065 227422286 404804059 723824532 816564516 852324137 703006739 427320044 751357255 38749715 412333032 441938052 699732984 582387567 179463702 640332516 897781875 828586101 188370611 490743366 826006517 620290094 824966369 749479704 811206560 807491725 717565443 836754937 482862431 384362101 768949313 702355738 264682680 549940728 201664849 628178478 551480391 582722728 40194118 597023042 26244393 620523255 847440288 742528630 929343492 379859472 379566563 60149304 627135430 155933399 641073345 79980143 188813648 204891367 409704850 789649543 299592772 598546249 102053558 39248631 951866953 740277680 665047119 248499401 258431658 135622523 374682856 632738985 719858621 88782484 103166842 914798866 420104133 155408963 811610998 319081169 176367054 619199772 750988135 844220290 506377338 116287771 978115230 892360101 51007536 129032879 941717531 12550034 806462897 703678928 350676248 697385950 924682499 371806568 117634916 489437113 819311476 174695038 551724174 921121149 415137386 778295354 196915960 677532464 95920480 158728843 743644706 57429468 99490639 97181156 222326245 967755995 246739484 111397048 299885285 338193751 347577343 898773213 551372514 935338417 808772457 31641758 889326188 819763798 687611219 227274492 998156044 747107424 171981743 430287764 781391589 872014145 495319826 62573724 59337623 139771540 712466878 878083783 589014772 314474938 812843016 807327987 663354612 677782879 189704090 269093661 762529364 346088680 618391206 52718673 196332162 142503210 858342774 817629782 425851550 79844093 852793328 358652369 192268788 686382574 1743161 433303528 713622778 841537536 846611642 801487174 707080091 932249302 182177129 71194744 74828617 731746132 403861519 137834666 537472860 328653968 156872421 522364910 283570348 263079544 165570316 567055768 848785783 540503720 96791596 669716207 928186392 490282793 478907940 221415874 742380317 462705132 667236765 108221940 991825091 283452467 763752371 801106197 749722648 524757192 223754983 930879374 124618081 503999450 517559146 286071636 827254362 112167662 830753605 136159588 373962080 172918721 125691171 563396197 965797926 255670049 995297239 39465376 229322119 704461030 487300613 319865096 518218690 761053013 972288885 131398170 492707256 97957600 120820041 780793069 924562952 952898595 451587708 652479042 469019484 952157210 349881211 143760706 697304250 612239067 270777109 260868494 899109455 159346198 883040083 255623809 63879782 921055010 266814930 551986413 860119521 689337322 323171159 763334566 832209936 752057325 77736119 193399585 223611734 166244845 225447564 640948532 131247909 410904629 763121858 260789885 400484914 21737865 137073534 320285522 692475237 941134772 673159477 533430558 346671763 607067487 962113219 78688481 240815145 15100631 225805910 882035737 906635826 559631933 523667021 731069854 111967290 252229507 52077850 688299129 59807585 253002360 339397060 202381827 840745298 775988300 982576545 701523951 471666091 945908765 730535680 195764820 937122024 121860553 312399821 261587930 425593476 898350619 333078817 533166540 489751263 980365227 238229025 94181238 845641094 916425694 105934545 311162431 942809043 272487093 521945701 646414793 289813309 641983466 70119713 947509775 743653586 257374802 941362334 548382861 461712600 97245910 589948951 440419219 297354022 227453720 399138755 467745530 478252969 362880368 59290152 560884393 17985407 803774084 813246621 862269586 815650700 328685490 659089307 33130309 178611359 274286420 360687240 367677476 229028494 213749078 182907234 28688305 304169439 118504209 364975232 343896879 512656610 70304003 956041550 395471854 28982086 399557983 340083090 548980131 242007435 91089476 423890641 195996293 438106729 588449671 640320294 570138366 917332061 167339036 892060413 267284756 303088520 565121049 689121333 526633860 79919370 432108886 371653994 588922487 738341264 286054891 31067677 690294585 49582753 244506147 605080620 630591026 65813660 413230008 198785458 248921219 62075877 989969926 141842696 810334263 8693715 537017551 842178259 926091557 708400759 285233227 728356802 842397845 774635199 507930171 953538751 187168836 603547309 19537528 588605014 544364903 726357651 141607903 762966542 381217765 741034992 33480014 661211289 762104964 364779002 140971396 313280574 644604580 392492567 70351450 279232111 189173501 565201630 234275977 269799130 638703763 367131286 609437624 178217786 482069053 268928721 458909297 707563679 630667187 44213619 201307133 350267463 273135932 938228139 794042880 793157026 852568449 440819233 185674151 530070483 858555557 880848920 30481283 136656327 216343043 677912890 921758841 864114614 220419043 126972122 498937372 892639238 305064255 379705441 57444526 732794367 452030093 701141744 45165700 811394919 592597972 618193385 768148310 674277056 518696095 928762202 591592146 254252814 866225458 967116401 543594541 674051627 823705105 499360504 732902244 891920621 979800393 399175999 279731945 105784089 5859421 698755852 156466821 591019845 821499965 633263526 621896470 412189798 744199895 371634654 792376455 460430366 343387999 112578122 865153382 504374972 425897403 941106851 879173041 243553153 746766691 509949859 978790869 601940372 609977689 394039861 491331030 88178013 366822196 331108970 65138547 165404422 430393481 217573155 740545265 895878526 466692528 427865423 512657039 220798860 559993098 37468355 138760590 108477910 698280138 232890098 906511728 177509366 808936822 50984443 681318725 419118580 391017211 901914941 194404064 27463394 146631398 397945714 203658895 499551845 262269323 121188171 787984799 378281564 282316206 349489359 39154013 48659571 18971800 945608600 48944522 243424380 433388850 253532494 519948307 64030697 743448124 253708719 76418867 706491621 297594950 613750169 42368671 708596381 37610347 760662465 455747484 86438408 502989540 706528141 413052938 481996005 771764951 444487587 599427995 821355539 379451422 395633065 836776103 787870650 920350346 559542485 232344803 11463329 796810392 472510701 436523309 270104958 672125891 817062650 639265095 874179404 434774430 186061869 284862668 166227964 774344935 761388435 239680651 730141265 78982868 447210450 797491214 626622363 716378193 287701111 898025189 656804782 629950673 214256604 360039377 118039009 772770925 181055580 243459860 685966335 102321402 156305177 690481753 866386933 836347799 566480722 647153813 970890449 137519159 244411871 494634544 859793263 799254891 519000341 619246995 163541596 128096208 930946608 228529179 592919476 646131023 470515895 331875287 528344956 11615070 92742194 842117396 7426851 855775696 584112862 316260204 707197086 195066011 180055345 25811217 621737490 617083314 805582042 422935239 553112251 909372894 294400843 558615867 336970023 538671707 774497195 800289797 603592682 549783915 736404994 767756384 149239260 202960125 108400577 637118922 215467412 889801835 411203616 936889225 90652174 544506935 520527504 731867657 678912620 793718276 481625130 352020037 353810936 377336576 300054639 24588802 314035372 51975217 419792716 943664618 53806485 644880626 611668917 747968099 347967329 92456521 635563780 587435407 725164254 25576692 518066722 490794814 407958282 943366562 494624291 557216596 693615561 879000055 493122116 967979395 223736084 414704598 319231232 163563713 887254491 106743710 812379089 98733685 579530692 715200085 939852083 401762252 441717744 766930446 831793035 280983866 138455754 806079962 34094140 658445458 907123657 189670203 490463345 590342371 650355632 973870307 361897075 254845156 90099535 854742768 55500885 11663441 319627979 610245437 225878553 54805126 503469863 741526484 196159458 505935054 276907449 686207888 579655619 968849829 673749092 766187332 77612523 776590064 264233172 842520969 668817978 960840749 802145269 941713284 864889741 70455086 243686427 751291342 857642371 177345604 549479830 911479173 498242744 196689707 324133511 320042335 647571847 688359337 136382958 725687716 91096584 303454524 563043120 693512290 538890370 294240489 699524814 9195732 853840701 77559369 111908780 439694703 25088847 119818438 920289733 702543151 202708930 823662040 624878000 486445785 248250208 102672994 709914011 437118398 148554599 170051147 78130577 401794052 959675572 772583631 79458421 356597993 484992188 775462472 65833818 832963354 83138185 479559042 720685711 655373408 34431852 206372018 19719656 837802318 901983161 336387622 535065483 524685656 518497095 35592900 206318248 680623919 345822701 539593027 659119515 378723518 29382684 730210775 420378358 341172772 447856160 276384141 441270182 75630838 901024864 927015396 419528485 307983289 869460408 235343930 152894776 786148860 746564161 255586647 88088170 232740376 862112915 625308827 674142877 957531872 447553824 815184999 343073809 936845353 646588935 482123856 77857735 97428274 653354562 184719219 289618250 466270864 563644507 338350884 840725104 251146922 832763014 597525134 596213433 805733375 504293083 10176632 201992204 270708354 161678259 254221104 470522625 131460037 542512516 409465364 337815394 192540993 10751247 904007266 735782463 687264678 112222842 791012667 943706236 671665212 484712796 596646766 396957224 202719363 410085 571404149 584868808 260575691 274057891 410357227 770662894 197585513 143895032 759230224 43899614 409014752 961611736 189146303 231217955 798774088 800865419 952874716 237881479 77177776 921009302 57304423 394502131 91256655 219586021 414200152 165910705 362676982 405171364 187991376 764033771 202188511 358072277 9248262 894345297 833222928 551835578 356736101 980572980 8261688 582998634 330651966 143116248 149511722 803675008 113068538 818893754 644504486 439879407 820313923 128905532 815591080 108224812 101558476 111980733 90341856 766939324 730947493 360098763 471268139 612450869 722538650 655748650 600042820 599878108 93936206 827244042 808134450 136989200 957089569 639662514 523648876 866617543 918428302 358444013 28192838 519312453 905618457 222474702 614169571 327238699 496271648 849584781 994335966 764380011 737520994 678158385 870044235 303937702 713852572 706425027 709588697 406950582 539074817 304837906 684643790 113805046 115213205 7872080 54688514 344513181 103588256 106080021 632266437 838535385 279505765 442481467 116223080 450336630 467381209 586386945 547076879 736693504 742304885 356386850 121805027 990931887 361658858 899135856 100582081 148361138 883190961 511553852 601731122 482446502 922690211 473330684 246900885 97030449 697071863 302257655 497727510 954456265 641167574 959642882 750239662 258289809 436145409 31892453 61947565 50614104 736811904 617384014 249097980 274061814 541283843 272431414 228809065 340067542 725824053 488514718 469891375 819173381 224817048 284259484 95845879 898531503 60671550 597383082 368405848 53773439 942521897 440365504 73181320 31409649 545872574 25689223 328305716 252842325 886623645 554501020 268602520 124968604 638117263 709291115 580279817 659182067 230333400 482547381 149144831 517686504 698762835 909423566 844558238 619362187 762499385 617986671 879438010 949561015 63341125 383637481 182631570 687392477 28479387 916783020 457462015 133078839 875112359 323778517 961536782 783279389 475831463 312097363 414006797 328408032 450013437 716896942 260401182 518340860 368184901 604825395 23206518 398882901 130737520 2002393 118276566 208915206 404060596 773479917 617012721 184513375 742742907 973186557 931627431 669214638 261434845 519811277 716792361 181513232 673466516 377193261 300930692 763500235 392746765 745477323 338067854 439590609 486143936 594757982 315065490 863981681 609066037 427042061 92793655 148273688 650893360 122163734 687895577 758801053 934879825 455716087 998046756 71774630 685101866 223859432 851282108 262797512 244823900 407056839 352571827 419177129 538617619 444221143 229141683 18820264 825466686 866605553 105247837 903964652 718747861 979313672 79012825 208638851 974592252 633412277 21588847 797265770 383058420 56310164 645724494 652804016 386227629 80716056 363672243 800166556 539095231 272279658 155805335 601585931 965917900 817423712 100611608 866532439 787508384 718096043 189396987 69482024 402021339 548202731 736152396 985602363 655070770 283226270 538442849 291950715 179169841 682477118 421774715 716671228 790347429 418762298 515550165 684059478 225601706 368313874 553927243 105417845 158624984 976593435 245836724 912206585 231583039 896540580 587528864 157325323 760289560 275699374 289396119 128624823 450610668 788339196 984374662 454029555 116092565 984449993 168001647 882512405 890565082 690206039 9368398 34753488 357892750 608394350 80246704 907579028 681224677 792565150 33768088 380662594 797347822 221346487 834660354 813467359 569727650 501287049 597485520 833641352 973721498 899452239 352509702 923034119 137160443 450516075 265507815 30909189 415378216 34852539 267944839 9140879 584812441 205822823 851705027 321728718 512440005 35216962 520761172 312285142 368335608 509180778 665290481 669862280 761195523 179656476 145088811 614725218 158120272 749850691 478400421 979654498 570090232 834981078 177438208 859281528 202165788 438069641 565665386 942971305 666940789 577184255 861312802 494594427 87701839 688861020 537722042 796287368 837340769 988380365 612802579 177587187 614975870 778162383 639561588 874433991 502551309 760902641 550272643 590004321 269293595 396728196 583603208 799138106 341653547 247800985 467435502 49995034 628196785 454453087 426694915 575480004 187912199 599476225 584143343 849409929 673781610 34400281 89647073 504885159 652697606 804899288 35242213 411234351 158976737 296515051 587024727 800933497 803348210 211245868 404623098 716401380 630310672 997476387 836915136 654872976 830263661 72193330 857040648 267723499 656538545 783466326 934693917 745378942 547066531 261416419 680576111 583845179 795282165 804983538 155280811 812471055 798317536 370404760 955936876 806269103 150576123 892303042 650849233 14406681 11569224 438861319 676731341 944509807 980074718 279036573 750225177 797997242 351962293 32594320 846534929 37883202 576704276 783210225 817707457 333503005 163032485 580410043 536008550 108913063 509008750 876040331 208545994 724185795 106497468 959435759 580106713 363337467 612799315 440786437 530595138 205760770 248154433 434507971 991744927 685925872 71064614 342010483 820882103 579530929 141803834 188801060 529136990 199473657 732817166 310212326 576794651 668866678 996031241 986195051 983804361 10180863 709562141 858139578 636930020 826499920 838043305 119831147 72072848 118735709 723705915 915276883 589494034 226293470 20194527 43982844 112806501 183972602 765523615 415946037 726293726 207441298 655594252 626016711 320259512 909374840 573334265 874620407 427084141 851255120 318979911 842703987 595164724 430420209 218644640 789270504 781326695 702217793 749039353 608770596 844562048 749934337 624559180 229098648 812775733 71527890 420877125 327405282 913283885 768910261 874804780 776532442 780113113 292367022 134562082 916166300 50177234 85433165 226724048 884002266 729452914 783850910 880025925 543898037 874871729 2166973 817406433 489175208 290492171 99102116 384152343 55685879 980334035 266702571 506684447 242258914 586906574 798381002 924258652 717123264 907312744 558276789 349019599 217501833 366231891 123567506 4941034 551344330 972005468 619559678 966440343 383418674 116809198 587992893 66866043 783110354 325580228 38020746 823915107 489827404 167275304 888041759 913358528 759848887 10527947 701785011 296761655 277523739 622565225 236056770 467290213 958125215 389567603 627651934 878663667 183266811 36901472 623080171 548642563 614836559 741178443 109382567 860385522 456200502 14192679 37899735 515478091 22816771 905203201 559842458 15454575 64037195 524304342 606802134 885345615 616233978 295914669 721499546 829419219 86231188 7650556 976770347 197240496 336059472 834249041 765342583 927724539 108134827 527087071 941417835 607890448 783141377 105231960 194685254 415244627 451845874 885621734 861465587 602341191 999099936 108400001 967841991 756947769 981607673 987295855 812439139 502916570 755932765 178884221 341277176 960092476 324848925 382792981 722522587 656292233 955719204 445324660 876364727 260445225 436262534 557104986 716248664 67352379 104020607 713291237 127027986 333650949 471195058 846514361 787241753 384864922 348689386 127131705 735590176 935202141 374836904 811377609 140439171 362952122 83628630 835083313 880602702 163586308 779216544 144425559 885961262 585596605 475293866 605652832 11001658 443718631 829794991 457966654 282744958 480888512 437511952 484863960 160911133 621453707 58802115 52244165 865005274 910837934 480259416 55807401 635328058 296114615 177487433 917023058 83884437 554920475 395657223 782280650 359654639 547947735 114878586 436386518 215631727 102487077 414917244 745001963 126204677 674743235 752990133 100189647 664128018 45035844 629431532 624732473 789019614 766695987 917883847 560117721 63782247 913893302 248562361 538657083 333317978 131119807 135825590 729005267 793195312 943032468 567735453 701405331 400087524 827295963 465973010 572503705 605582433 729227922 513558620 922024482 357029014 698659627 981137621 137917583 926609855 275108100 986171303 651795100 24246738 44358936 522422079 594452940 242805693 899569604 754103143 632818078 52706513 344697690 887582445 569910074 902779092 400235510 589558254 738099014 901317258 130235604 588005366 494115225 53481645 447835217 695484218 323042147 280864258 909098735 399983436 320129233 635836808 338232973 709459552 160740806 644008202 213222211 808332653 714891857 806058989 565910056 131226431 347798529 450816685 732418040 84569244 129565236 465192740 370705751 832906956 403842517 667277051 553545267 300306700 376408405 382817327 536839970 244551777 525420209 132271949 588612394 957870997 922507203 605089006 401909641 814079324 743101322 839303771 556822792 474209978 453739316 987406941 610551782 248478099 275120382 85543286 266630697 33292456 131283185 530206473 258414713 481294402 987672168 500868329 21271504 55699435 656025833 760461817 992632445 966769 932434342 578522045 365376157 251259911 207351871 554655105 324565179 513780860 869219880 554408609 384405062 654048053 978740997 96208721 925788344 48378990 82282459 469406483 802907901 420535210 336347647 389823863 489268687 118431383 74289 128614665 189906796 359843291 275802630 905929360 477670014 669734861 619365495 395139901 289828864 505185969 545400633 64864788 546513960 489352902 358943865 978095101 578217623 93111989 625354170 20377981 226348512 158316610 539878521 629458025 397472443 506483487 995143391 26373013 230109580 41805923 166750340 558914676 277528406 721661871 669301946 767327593 716910802 146203605 954761148 462365506 269013492 308063940 700836716 336692208 843371057 426471830 53207651 223968340 555071445 200066519 178638075 116634009 852343127 194394378 76463932 743374080 184644347 723334821 648113562 464451150 250156141 252739031 141788110 914198991 278426390 203994796 270128364 52103788 369090768 131369188 13515689 453474849 997029593 224741909 122630271 13588768 756915999 264753638 676350559 213902669 122693684 866934681 155179626 925146834 439311487 749356649 397972504 575361449 83773071 49471885 454050568 474054484 159272582 443122304 200236057 62032877 608969841 958630469 624984454 353078377 283977580 237800478 177391515 302416679 804977545 984142364 219640713 207395730 637049096 264787674 229062357 863721517 313185328 175187717 181462206 305224099 78635695 694489405 985548647 552913475 436913807 235898669 974847385 552759049 398313875 297427745 891245528 202966986 815185871 359945293 666487591 692003760 395306442 661018281 161440383 956178203 347709946 783857366 533448980 418465898 495975869 671188055 798428922 834893180 629337384 44930953 562465829 288531545 105330155 265252731 105215390 359931755 638673449 885177563 822063235 684735171 918756967 940052510 434925538 13473104 940496527 757175087 369063053 687541811 319652443 53344985 686287427 173333559 323318361 324734502 812591963 22533894 528072483 745933967 12215435 454134791 114626053 827479042 14878028 665170223 268706427 664450007 425741656 9999301 785226514 747980891 545540973 388235016 97740140 315950913 830608540 267242599 330651095 758095928 794541607 139425905 76523874 664111678 308485612 608329435 143232191 13144707 642890245 598028970 25546116 295245728 389865847 812409494 348570936 872430547 610127226 337456402 554334846 463744061 969819886 84734875 463063127 998030225 545836352 704423292 802173981 756121135 993975648 838532707 438913767 984549216 647531596 928490262 621915126 459647380 343409960 262277529 453467265 394510186 294567587 932602094 794760170 903146715 540633230 900968684 221720012 923941365 608651246 360879033 959889417 115443247 975530152 820157935 962997455 717753843 168295781 639890349 291094101 165202544 971787449 346718856 428379520 96346759 499289258 531382446 848462309 658257480 861052342 955283283 354628924 289268553 845803541 897665188 130814728 880138684 831057058 963759641 492292146 427216503 650439867 338892623 371345119 809879388 608427042 729738792 857911588 607159806 706334227 822949659 477934598 271874703 454280767 260029039 24333810 147111972 879931220 613117034 871409026 195874029 206924090 564295114 947302647 671534566 471542939 482183110 230723003 630029409 981816123 708279527 610446189 411866032 37728182 824008217 72004037 740683506 741384280 194478598 797654436 325183102 810599841 479736583 92405865 711705192 742210759 962786634 634808262 826840092 701368979 69874893 362392045 805118403 62587738 140754227 581227974 777290959 9910679 842141754 265188018 471984930 855487397 531201017 725157834 414565903 910677094 896308446 129672522 958469394 494356938 767677366 905700386 198246642 667309637 344422750 321377299 793169119 117676552 802578081 36874362 230318585 71297132 167927295 59261733 230707217 722411229 421395562 777472099 626210226 578315726 94853512 637074815 569569040 28532330 84824764 966449781 909470688 331927980 852550334 277420672 615022499 968597448 68850593 698952990 532695976 220752697 119174077 720792467 168730115 399285777 117569936 896439856 624723349 975539035 77652620 38534433 613064143 205273226 941377028 739774376 142836398 556567566 593718146 957138422 40705210 982568548 69623916 301378448 294983336 427462062 21903277 804510998 273811765 670789263 562102763 861871464 152218251 331695248 895932902 607787998 631843294 171397863 266189861 312292473 444860326 39848989 55002577 851779574 334377572 146251298 436709574 792520289 179135380 866524388 354710548 795440975 348288185 24882887 734338922 49425786 398835853 37054081 257851841 18882946 808094686 955067052 584158361 480996028 76255970 891423923 601021951 998557514 278827178 178597407 90175457 702043361 620150461 650983445 179764631 671386928 518072742 560502471 357895186 68478511 423843827 728009176 560694409 822598904 637352359 233549123 56724120 263849448 371630189 195824086 629858665 962459249 225767767 622824204 703079769 518732565 681350018 913248854 710610505 150858882 831691277 916620108 110158737 525164340 531296747 172019695 474491320 152992399 54538048 991266821 912692733 719078110 28869339 709173222 365538404 886272567 318787775 368102141 599065707 809551289 702486573 99779302 487633178 168241400 573605985 524236757 281528648 32881045 151091434 201124013 481067160 558798573 186527426 722247831 400647928 261117158 875292638 104479976 372426945 441743790 282691594 767129746 219513386 641575127 84745480 427930875 518594148 400001830 961710410 311061600 926791608 705112823 939263272 602072729 626948914 639460867 325327979 604541648 612026277 706368464 971892620 456281723 991974232 153989544 359555710 449712453 911849292 418560575 22368237 871963138 793933763 281860324 604979017 288784891 761869378 938756900 232245103 62973031 324834369 569820977 789114643 112922493 650354552 501019077 459620339 432417430 773639337 97722984 494999385 550605013 935768708 253636764 329730785 394421625 157630597 828834825 973785786 810121747 499396447 903478725 500463762 785499505 618608590 361303534 727694865 572283077 348106133 271568518 479691234 306735692 734869788 763493646 510384070 214735160 531433680 456201313 219048842 853135861 97173566 306381126 933876240 327234231 26104065 339097697 903926540 455057737 950793565 602420860 91823097 761619489 519497044 747146912 214821955 78316994 292955911 806869668 177967115 162307749 697568298 484860527 167393039 944195927 9462128 425837965 927986166 696204184 448903339 347178174 866862410 284345049 572872017 883411354 472991678 425532907 595139645 995188923 134922904 468344429 639915110 756069923 397311128 929582529 237169534 798454377 228938628 36568244 429930744 508125698 599168957 286317824 863628185 840111493 47660760 372739506 800379284 215515503 142416202 338826184 320653350 987553760 318703125 988740290 918966928 400710775 5846751 374049831 989907134 556079494 56956671 427794504 943228206 901833945 540032811 890961473 998883449 347417450 812740422 433418777 114236229 230821566 280871514 530672312 474683490 562611894 603431040 757292238 202930577 370108537 862519433 776102397 809881806 289235517 997020107 801935324 193663456 726180787 108246828 37126828 540962305 563580141 648304491 807175235 95265884 501688252 620239235 62430909 151159679 616230218 186064600 521929561 584124772 682535946 953000532 998528579 270124844 176367761 848607278 958604736 217616830 328845883 362632359 962449491 869425723 745358278 459311744 860719062 887086382 269560407 543728129 915248908 455934119 364147590 220965293 477048261 715665429 45132986 471786629 170016786 751227914 558372970 557120563 673188637 50867695 272595510 327456359 684597320 18383507 571841036 380901501 639234204 209296202 417385767 817676519 265906467 934385951 908276115 162981845 323097151 446486951 39877105 125374246 628948853 370945442 416638107 442380208 925899157 298098228 686594571 460287732 335232144 242879984 465184083 906982920 124334743 154948337 901383904 900989472 998192012 739397994 948443155 314703025 105662963 401372121 139780312 339436899 358544251 746769758 559619791 385325290 180151039 501044333 916979872 494705712 35819415 78452706 274650600 441883919 505289715 610873298 309035510 354740207 514334715 316653697 553753667 742278954 939455752 590495219 742931175 399702732 911810908 151032273 828361939 687356157 346360554 306696039 385145632 741223845 955566638 674775052 386266701 589712461 453161903 584143703 100560211 41620352 669266216 496177444 46820833 131420379 707606651 480686946 501292188 211133455 758881850 632614199 186545747 944086738 74927381 467272 426592175 264144431 959752031 333858540 744452689 921249086 893849671 752835103 561406122 82730573 869451920 660379053 776969948 305631727 86845655 756542712 472412257 96219908 506915489 332802740 682554495 408236789 283687806 652625777 171737389 585357149 709182224 829766335 139747512 951230200 48680529 495904109 128827622 877358918 152983376 534734956 936045643 203496818 789451160 970078899 439329054 723556177 822029647 40513223 313319155 80493835 413632378 835900749 188829300 837386976 636445950 316248652 673184530 921978189 999792842 652362946 347246902 715088285 363281848 60268797 50468284 997943298 433554265 227940944 427764634 305225004 664791247 252886674 220965304 32290203 879951078 290082970 239200087 836629317 987541492 179015981 228689556 337352887 842014457 51053058 526750950 525701170 545355256 599935734 939545819 500851194 686166226 417602412 555236093 222252229 966963042 788903956 94477976 736228906 291335338 935079900 684425144 499891014 681288857 780479525 932634011 618509539 950696615 866966151 371006903 574962526 6592358 398347835 563055575 991599772 141250338 374621097 192926560 386804236 962930575 308384474 948336515 31821525 166689205 445655742 194220197 430778944 765028054 972099064 540602928 648616999 839572045 345171966 326769406 542862356 379108931 337524215 312441514 139771721 294070919 369431735 429704544 265237761 535760463 562605240 589677376 630469687 396077699 604988046 519684196 580994913 744040583 813868080 230166786 858096662 671663370 772968178 154134603 263407132 494222277 303428816 856244148 433140424 38095237 245233760 505874527 931211979 988100171 627792201 528826712 359992151 171449065 174193747 803362919 158819015 403905943 508728662 529834199 143147483 385191945 272180551 440680764 391312950 172240936 860087341 939717621 882487436 589121252 122428585 234017063 206029824 200946302 878956137 979336180 91213118 595241079 404302650 189611909 157233194 489741565 58447105 53623637 787187698 688614690 483910422 393022100 413644123 161965811 251011616 705514372 225103700 434568268 101452582 894244064 628589140 618761926 191406305 75683555 679627502 833372064 640685051 603368762 183133062 263006244 810791374 130481237 458921030 432441970 956401615 213834494 973835668 819850594 740778698 440411536 795234534 63080221 714555555 174767136 699799185 894208547 882958507 229226788 852462960 205620462 137969133 553351992 343524624 928455764 797837619 869104741 634370957 443107785 371636000 656340277 251482880 583430528 248832223 59748703 631516109 4036060 68362057 233141631 29088662 726420462 98393388 795816504 367037194 636990020 225499822 656356756 65961216 608121618 866386656 20472075 804812634 328009307 426186893 951437341 879362821 533750386 509782951 8730386 290625532 911024353 205038129 634973439 345515407 559929169 997219871 231003244 294641353 129410090 602336138 350578975 867576665 411812277 315892162 220812733 466111984 605315551 627780821 726477135 667136003 248782601 259419931 407399074 283027641 184702480 907755568 231602055 604979489 8199579 612527729 898427125 105915705 891728151 480370236 357230579 47033009 494822911 924403379 266745978 475210564 625904031 965335659 825800324 264615334 509894375 222605660 58108712 634757510 36382416 486663249 733434462 608107559 540510928 969705789 789762459 731680455 104900068 399203736 936829526 728069720 127613290 921002496 841068795 521667296 633933100 45818293 701900906 339858902 905399261 86643361 264026656 790006103 856940505 583227112 463363859 910564557 912098913 327923032 545529565 672458775 119811496 675444284 269258053 555187401 89865467 586900163 758065515 581121997 233208015 13699419 726743099 638274204 359445149 511934866 265378900 770065048 844139283 307091340 365369 38348909 12123583 677970429 913836311 310375221 28032143 707276889 493161119 726177757 660674046 895515277 181236046 745447578 948779696 898130917 345850691 311625451 473870201 591440388 845176184 84148706 720849133 460680238 104577024 513802103 422029369 267054445 481346377 350221482 901250341 161337860 764930698 292329418 274690642 575993235 144924728 346442405 283871401 219760006 692470612 278817776 752839462 874131633 179081490 760377263 734194698 810918635 697091060 431728364 777897087 810467697 188541657 395331711 772016829 230283861 953282709 79902195 787808336 19819703 513015137 593004655 653711435 710871401 4324613 901302901 95975898 845413658 663131119 296122250 291782664 390604482 619287044 989185075 502912382 180149346 781421764 37751301 904469859 37844127 60686473 832624211 997919162 453108833 44714870 228589274 743648892 679847954 844679761 852926558 658934923 696207026 324221496 922375486 306587797 996621687 591792207 919404214 740655232 603840422 205082615 309725852 280819433 847465414 494388008 119767944 790661304 269929319 525625138 39493111 398820875 136688285 412616450 309555546 175337834 933341856 348727253 323669382 79272859 744332414 142734875 63635408 149745485 421981562 422846741 315918141 220635214 303479703 649703500 871304538 695950994 150478598 119987247 330146231 889949427 965912206 515203341 905078750 357977963 87702802 265932214 844891972 244481446 703039089 371072623 64876750 876631194 409053142 941305892 696716758 928966887 418486296 94598769 408971742 860758447 351404910 901636624 601059792 225455250 639019831 643802911 5187697 491579678 619793413 916788841 43788821 711929760 328168114 967547575 485023088 342254702 317438542 839946865 129473940 70680480 147730612 317191415 296155600 439536935 434977548 170681950 416939526 161453146 640545892 390022757 810077025 249733090 103045011 349102535 800734962 694240566 211697791 903607641 196798570 258751699 370790626 201904598 16789133 806234689 467594884 325839508 294509698 844418503 264195335 938112373 119610085 495498876 149376165 442981220 738977315 338538894 474870940 11606812 410239652 851673770 54295185 18293716 413899663 512586634 105166219 492114941 811361386 321841571 935211800 821427140 205010858 911680934 373653189 401432803 351705236 20897945 690339828 609505672 170131736 663634669 291634253 291326268 421450047 733729105 925349192 952102459 697752365 993588670 192737778 896467924 319508528 655113241 686901148 301778995 679737362 840262661 679844924 42970374 562960732 863877930 894145758 481973767 494783022 11318676 150788255 925244656 304767731 927796190 25068196 239445819 984186916 167642708 470100643 643959765 244742979 434905245 26112963 956698260 953437665 525868242 791754670 268173485 315298485 129999052 5843024 894836301 324923129 256372703 997023206 970293995 726110361 240184810 782422034 625682137 893753243 817937549 245928068 694088033 573873112 817886593 609741808 576152102 954850480 586072986 837338831 419200592 695822496 117028051 554460883 57548798 347045157 880608456 48378337 705016221 769595836 708632717 28876822 882029633 182848177 805713273 345052710 937762474 727687207 601436649 861894638 191987643 160567093 715932612 772769802 522260893 244702280 624680359 652639977 133536937 917758260 645149394 930792129 313382290 548036140 326303106 139243967 811149425 213832680 821944683 12201389 594950206 470974209 785733436 427251577 648599471 777095909 218027327 501410017 1887629 977083301 606138177 685941866 206566792 138658176 37094762 106607346 495199584 33239527 45185749 756859691 509955053 616581396 976219131 822595161 166468736 689080302 940943804 454589370 871718494 390044695 62383103 464998736 520769996 899509236 557147870 422699048 636017442 194483044 341349241 719865051 481389838 73559598 765949486 616533852 918486828 156060705 47940158 164662141 622984094 737876850 651026540 535604394 951849808 826679568 779827934 902565640 177949072 146627218 451027172 447258190 963082248 454265066 454211717 864051120 261863747 835051564 878408022 196633571 235978396 389816658 32666033 554287530 344381744 385989054 301793812 964103218 64834317 339624616 477371029 251026051 579048412 797754006 820038939 465039052 668592441 200444159 101871400 228729572 334903925 477841789 372440698 755473609 827079193 679215119 139112657 340192990 73474214 712683888 45235730 7264932 659727657 166015823 258137327 685181885 984254194 660278730 856943211 28733493 505963097 562484114 299195119 259588024 814956345 278384882 615407634 886843672 94183745 142704313 503170708 342573772 862092118 10531984 232843258 931724668 588646817 877872740 487798797 299316511 518588142 283450663 32280474 708801290 504602547 378441009 108115694 458582250 205234311 323429638 278816676 728959559 381591708 255257481 8220762 876943890 665343911 358317742 627051235 330764958 649236089 964627567 211913145 781412042 272544144 826003144 499398452 536172358 915941681 96297807 248019510 562309639 861419868 445655211 651499765 868560808 52229687 757707390 198863128 191646630 474710613 788650296 151158626 138027349 475854755 718927313 841254045 703231427 396115267 944372969 88414766 239824725 25189914 475520665 594994252 227261073 402105256 960871885 719209838 807399126 907325513 814100767 403714786 605769409 761875353 615789777 499001384 306907906 458218161 813827680 810869877 826672084 330483501 620579836 13890387 385018299 903888332 363613962 75886484 691411097 738688435 328886814 483700188 960045033 917887182 111338101 319614706 782942809 273337615 516121364 284836915 510003306 598277605 438221706 179861887 373650961 661666551 368971764 390808646 466437790 24339981 713289138 941066375 504989286 730638546 697403426 445238422 749899986 230910155 846674561 773410693 794781191 726472820 167374919 726220235 278615883 75333175 3623788 903721464 262682318 750384032 432921586 435829742 168011486 244777433 561816807 827036547 783473744 821664094 982663426 977404491 27501910 259480822 298008385 930224822 966237816 154709150 402919164 122936246 745806017 598422260 147394859 964889173 202308087 880974979 665212138 849218305 301263950 950204706 714730652 323303055 932751909 748825243 246163911 278294291 202610773 717900609 181891032 186210910 493779374 87757318 364950662 514455846 296542083 936995836 540999891 561380770 644287603 240949200 542863597 384560243 706986612 704951442 519461509 34679537 576950454 476732585 618750935 438822140 953506795 779462841 255933331 838967317 550523925 249300756 802824577 69157992 633025267 360236335 419064511 756020326 824395804 754495527 421911568 690376531 173257399 729696275 80313319 562506455 939960639 602043420 285472991 458097220 18891279 518791048 447368545 607706643 399187374 145061797 294732030 980857377 164181248 431294605 279744788 978291638 24727871 638958945 749190894 161956723 927100242 947065846 594263969 928825224 54319093 137555956 766258047 744016343 528784679 314015417 605854475 949626907 804157663 619398162 537210449 415864558 472169040 549582900 981832958 272709730 156974511 934412340 155021463 189532804 804927794 219506387 929032239 862789461 866445784 155056626 972251100 572512284 576396023 750880352 644560149 911778941 822889532 921247553 81534036 580380302 573081360 150870849 309501485 122474587 409152935 581057176 311038095 278079617 350838122 838944103 939814117 601295227 215458299 409074483 398684930 150201996 220775747 326578047 345078913 692147289 4149661 400275558 531026879 199094287 985886525 534727335 815738583 265095217 698652347 428058841 595882181 791935945 878450693 402310066 601427862 199603125 735392561 343173260 938299222 38344558 326250867 652953625 85507404 524663000 571742087 531179327 772328910 130408630 560883654 73190374 339327542 714288926 710190603 265664188 39403412 319687178 952198006 347502324 552175363 151995399 801727486 567939026 545031903 569658749 16354746 525300680 186111229 425147368 287288063 160560866 146379258 340157332 594292726 8717494 831614551 121547595 616964564 798508163 640496074 586755811 754081021 263087525 289949314 455126620 903217754 186372857 45165629 308806045 820480935 328472007 990585976 152475451 610533689 536342025 789197441 683352721 975572125 839960616 263342639 330851045 482617902 638921287 278329348 578611973 269732289 600006335 620220832 785942558 85493095 676687226 465051675 402968344 573395090 822859986 752977472 163894 838112179 114715682 752650142 559619939 695776744 8067276 236330054 613528244 825758623 430115183 514414961 98552216 239536470 853661339 875770008 654302953 12153294 441159794 73848896 452915099 355556299 421799860 68914972 196336759 66541319 160679289 648991673 572857031 161702967 794468023 695837765 675629056 277134201 46469000 703819348 867188971 248172439 560898743 21121756 610031411 573773524 930496606 187571978 217781562 456463166 163656813 417484648 27723049 667460107 389757515 305515527 694905298 517414488 954830455 221272715 984978139 544199033 602251362 84052824 562762438 82811536 763652924 620798961 292627560 988990968 927407525 260640575 978736750 762653795 70057778 888656824 566644826 608121656 169593432 171571109 424693358 338307908 436470016 311164206 896378502 763580139 806410051 642225259 43301836 997687719 849137627 980258459 704167648 882635765 223183864 211340115 538256826 698694375 942074092 475103113 142830162 699452582 630683727 773072040 723545771 36806492 114254790 744444482 783223975 267348877 760808957 842639603 422647346 197150186 689091246 61984483 267611433 573236641 403185060 612997596 743433754 483360833 207779553 589051590 146897192 951396030 884576652 901034363 592672772 922675722 10801461 429656629 255767856 180102815 271751064 356966224 372598263 472909206 373838561 709632071 784220822 973524223 603028850 658075402 186446265 313395509 885334631 655371656 30760708 156349284 993754045 806784272 182618900 247471264 684071214 664697516 865910081 808170096 681982081 711833158 345189551 886751626 941214178 175641401 603502540 32653574 139206861 89419345 57758830 265519968 453917767 478740284 684106471 245627165 401886362 370569679 453496165 400037670 62743856 610070931 816435272 518075688 824465833 819855899 371996575 215782881 273304957 830785643 740799696 591084400 856188820 780064598 977499513 954860712 660949252 792578088 319865950 923770832 765674981 492675193 585097002 73565248 15716178 858968567 871620042 469371224 653183708 163656320 850353465 353123590 819974529 955154617 882028562 313649326 536046234 746035905 494811437 311474558 774471195 598878245 608773523 771021879 5398169 845007711 865362204 838498427 885636177 453814264 681096910 952992160 548706163 792536099 255152381 33191826 588195008 73543324 456323544 834109805 812561658 530045222 978185357 636101972 261635357 397614985 560784596 423731987 822709697 72949447 192041283 111517836 185895853 646405959 605383432 303739259 863732254 337021891 33073381 346631279 582437288 162377015 41832088 40737267 82450755 666756207 472223443 232948503 308613383 40388379 176297470 878237503 232382977 380735752 237250493 167092916 674508821 910031394 463001457 74950593 743643569 98030016 73344681 230924789 508004585 76494742 429943255 665683614 27083868 236378843 985567547 426043888 446654241 788174274 552731202 445473975 969327562 613101730 368967441 966683994 798594962 211885839 859102950 882594355 722950950 946582868 924129103 707619146 451158770 137539169 954565221 8832159 841742815 134842494 115340550 245527147 982991197 14469798 657924094 590095271 699137558 458411563 537079559 965431811 380053340 200983606 359418556 615273548 200412949 814094394 545068869 272871046 926342457 73540408 817027698 774699392 450728857 16989457 172173337 224878816 398753122 160101993 981596487 444774309 72439601 7453619 522869513 305460391 307251757 781493883 456268922 517738725 402389142 315690768 717337943 741380539 246735325 511182410 830733288 164545460 157790841 206270263 53982593 830589990 803386460 13059238 984553356 241630978 720433146 45821752 17666745 509987945 741526089 433465965 885494118 875382397 941739962 238200927 908018005 107812885 638306589 982936606 114954747 788170594 508855501 492660150 288194647 111014334 177191720 780723970 474163318 752465145 181958431 812017681 112866232 815725829 203400554 95970149 11324889 945960559 729485255 897999117 782413413 66372762 27470912 640363183 668332799 862530162 874570167 57420810 657370860 561264264 541430810 846958695 136677985 671417518 606500862 90568526 626575761 150367062 832324856 47460076 428016658 670809740 741603687 869202324 176766940 971477875 131291593 338280873 527062984 819750817 96463247 230556255 513475972 899020220 793641362 900230713 468455831 13053005 244842830 105001794 715575216 498305824 837773349 581508373 778837564 88577293 643478696 965729689 523916730 691386508 681534023 449427266 882145325 724530592 691781495 733685285 387075508 984426016 26538304 391229226 385547800 105186598 368340973 755493518 786557127 222353478 865124552 378650587 891758466 828077633 916739517 751713779 932652869 695821585 29818395 228651954 676014784 53481210 160219736 887404538 417750381 998597878 786945006 392830689 758760641 76804133 95774418 202577526 131720169 971024745 247288808 792404714 121771087 560157509 911456732 629081072 138840820 119512667 460571747 640403529 820976629 348266857 747933816 428610233 428761173 149518931 662579556 95524393 252307104 790920084 439099290 71609290 621608802 626895635 70157021 928706873 281381196 470045786 41795242 599518690 596615223 800535885 914428456 359302109 288314363 357543764 355651998 298168781 881239137 237485946 607045565 600925396 360245048 332901181 295044607 7185681 610987951 671096521 66056496 317874765 128571586 507961346 301921666 710028017 434096506 937151371 275126050 681187896 632185838 572176454 197393356 6447858 48618412 290251118 800705924 740370650 527055965 163725965 847205014 29785160 41904069 223793873 83306619 404622151 797558188 462738211 872667721 659510224 52301941 753660312 188861705 692223296 572866552 519479335 672991526 101882466 316915396 593696685 69668498 282523894 347797563 815897400 125916918 380779169 510361563 488720669 963564083 303932693 971540885 585662413 310016239 643368531 976592620 346978972 558030776 879522518 22397899 682091173 652677692 566503675 670958882 306832627 277825123 228661203 524145328 506342257 817679361 324112203 490649897 751907222 28577353 133595051 444658252 805276834 234570190 242334781 848029369 638463679 867046103 998277195 758004317 133723064 363492511 47088906 138501479 373510480 137613078 197665644 629817203 797275656 990836805 964614491 175081478 692085004 556207572 290780615 152988667 140291458 381421783 588506760 258285367 3838351 871577978 618770458 582408765 699315438 938404504 866491541 796993629 575203807 81521475 982592716 584342185 957165581 223304621 278913163 503143918 130102375 417611410 755563011 263454424 573220323 533486453 531998459 761977357 142985842 112744081 530628194 850210549 60327168 440562866 475904881 819102118 230195428 91691051 642498753 660183595 656058748 208076206 803574242 8425454 779157115 690586299 832459932 94206072 500902802 315060160 558854754 168746567 324190275 130251281 651680253 247249119 328841754 392819895 889910981 367663394 601642386 122630312 748254388 797644276 286583866 412938880 38629589 848558342 957180843 13761940 143477741 614851855 656805743 889296293 450913298 856067249 214395688 558297429 986082070 885832560 90049624 95986304 153756631 901432173 420961544 36709884 879820148 652183573 54981364 903048208 664290579 21715655 99785766 918162846 817129018 568078491 130158316 857200796 165137996 112048732 50769558 170045943 53032159 631941660 457868281 401782394 398883716 721913202 457744999 12818158 115713401 528587251 897877634 855734883 214503240 98192298 292568653 652489256 708347294 423116583 15330135 101065517 922462216 892302815 962148842 790626236 671658569 782038944 475574818 210764656 540016627 906196766 493851988 647192668 3402180 309511637 818507358 179292289 496723602 568416060 923103119 439728198 637279841 745582023 65392966 229142921 385263594 310446179 424567418 762823058 59532258 452414010 676000866 948751771 554532838 650420742 823572653 64886146 179476347 124364255 158316200 525122839 759315675 212087551 112939046 748394679 13540210 700989091 793834380 402297050 635749727 464534131 137860914 43579342 680996695 426480564 116998430 480972844 449516750 949778933 43728171 684655715 745504216 760037295 491900004 214428641 485365541 431902793 669329723 556816417 649690153 281800067 899969965 767155012 488778814 573981355 473618252 666711397 314985658 621452688 752310369 656424171 161354175 490524251 336985002 419359376 187725091 929122463 840566873 198592125 756803808 239054439 397276660 358389343 200482503 615257629 900383824 253729662 265018903 29814688 486633322 545254648 293585538 529081931 870977210 884229827 615078880 756854183 144430568 93217946 257302943 659735909 649948765 736376239 526006961 345384660 83196211 93943693 23084353 245473165 32443563 821741076 188288796 803909791 435832593 633876953 916893250 444627730 423533056 332473274 794154542 748789859 830932030 224373019 515648217 689123099 26653997 938360227 617504393 131388410 296870147 588249243 612591750 733899008 627256931 925184134 140886893 156008050 256420245 709493547 702162487 325584045 707398200 618059201 404692738 902865677 137329215 320468432 916344491 897138287 731730039 865735236 187997189 552854639 467068994 289939329 524143472 290362266 832550248 18931730 329856235 912936845 819075823 128686723 624549634 506421885 688962881 331926859 444752742 749652348 157870392 860135516 305173783 168467191 414559620 619109531 60860122 367544479 634858319 822099194 157386436 881352309 596655301 604910994 30144504 4384560 441721501 941994339 876608771 527118223 315984401 741135600 46102705 953108611 246993145 991421118 699445510 457218395 687876455 78578479 430239241 544022956 835818773 363636575 982241281 679870982 609355927 893384901 762802096 627500658 249248224 358223557 759562898 436824883 881247539 788565312 955742316 697853084 681511074 475404442 967136539 704127299 161495185 264403714 146287018 343998261 235304017 168957670 266226126 303805773 79066712 910520586 706737681 550864111 301977558 71582725 30042777 160559308 248766251 276848043 509174562 851837723 734973405 465729270 545787945 549113079 40652372 592421641 994447995 700060704 589592482 614530651 315506074 731774637 873553346 144828167 59901413 147576053 470056287 342001553 420808431 270622603 282356867 585143452 19049628 17304427 262454239 863575857 956759595 134656712 189340681 188681326 91470283 648846093 758095464 498973046 947562259 989940399 321634973 442118047 59578317 381126810 575709267 309635041 206068634 951269929 29530080 916470028 681441548 685745267 385672466 495585548 639475800 59400488 108511753 721161908 675576245 686732403 46340560 873726813 846217924 138586597 52100511 447527522 306611865 779773142 241782917 116958225 650029303 17507889 803445460 553655250 768192573 145916304 687525906 58111966 383644096 499862611 500965989 739972367 739412150 673242484 485798199 128774081 824729196 985524455 472788769 381387706 61917307 416217202 999161751 532221245 235181464 880064091 329285840 297269359 965443795 211724978 611022711 559017939 357230010 924966850 863270816 619205585 266532340 376423717 998643786 968759478 907143764 875430536 369174226 826182995 192822671 857602280 757483805 870183406 417932093 346395003 281951371 166241843 744812646 338782787 352528983 246073559 563774162 276768151 971943407 531668232 894871412 878793502 714623393 752167713 101072282 380112060 999446981 904412217 235397847 565893155 109837472 31015530 647881968 519366858 806039825 254689959 542817952 502714972 533784584 144854589 754883866 961843506 739437812 566721860 344843347 668734081 457450196 972659573 912437884 29106615 669838499 407913441 386103229 158665353 58646656 588153040 197551840 320836543 816958145 475502966 949955637 408191484 758660592 418208831 845547890 869922099 436184691 403684812 316246605 338808470 324831717 50384949 681448481 751120194 617809447 897866026 390383624 932345212 378927088 688239614 228619126 285337837 997612630 752846184 858742641 238083708 44437828 595698743 205529995 656174939 377899042 589617053 712802935 883350677 331392741 648004270 804084885 664441405 183401243 241457921 365521883 714234918 445438291 925421864 680282052 948356755 765325820 270818161 7764082 431578811 438697620 786727637 527013147 935070826 408922216 139485524 627199640 106520605 216442025 48697806 938629753 946926117 194088146 466954577 766354861 918888428 58936378 952986313 459834165 948512701 760505006 105112587 324044763 564421228 402514154 75686976 934186979 133535027 959167411 589590189 338890583 517275963 423222957 769017585 737286029 86641879 496561170 516799023 155224964 486441407 152152159 808386018 966989941 357218384 978077813 764929212 908555313 534559067 352449883 431551809 536346124 90669520 14200616 386319514 681250238 646942719 29337074 852938462 56950493 586491192 353434849 704004807 531348597 173452723 324838952 748322628 374240723 132046165 282199230 506212362 131108589 120352376 751907243 251677041 856563679 750489255 456497518 37221974 88667480 758089517 215851884 306518818 232536429 233431435 525671508 965367929 853805278 662923934 723380456 785798013 819712281 692136635 649609756 744201547 921471349 330931443 834215498 456388787 304101309 814551131 253346139 811948988 654901805 670254343 817575564 751449381 405171535 607535948 549726507 83382744 980016463 965474173 601692418 574378433 987187717 842413972 936018650 315621172 644550701 235887895 843518907 309617664 798228429 361576745 295383434 318819936 984201429 883277289 789194256 19312015 14987694 575368540 713707717 94713187 147354882 223708908 257991984 954384545 195622396 318661004 609571283 138548285 718842848 673885672 445810640 337798486 849645550 680525098 492860069 948157677 639235211 579623033 264504785 383421769 887128273 826085789 409410671 27982747 767495105 822049296 496429987 5985809 510802375 723732615 315539859 266215956 557368283 599351503 874708870 448582299 702325320 244181474 672697124 472346456 299014355 455301873 385898906 823368369 819572201 34771593 177524227 630229536 889786230 957825877 51992564 109532001 451251722 164144662 804211572 67342559 871469461 776412161 683315117 836422344 389709838 549173111 909720629 953716464 713548523 900586076 880586166 405568744 948876551 435718535 230366874 478844970 643709470 356785709 48035633 963657122 766482262 646211891 664357389 362886275 779566517 518803768 923955121 672311426 398310589 566529383 556592286 322328747 444006767 788656153 410619969 228174300 355939239 17864642 327425226 642563044 336878577 336212952 707658199 893534329 845245594 32447819 946900970 222317322 325575778 689847421 130419313 253107775 6767650 310824776 165842038 840781642 193448379 192658167 603613915 354659140 978964971 243395762 821417735 29013423 436425766 368550529 198309853 440859130 974139975 373867436 500027401 454087847 413552227 114522228 380700493 258699889 568575084 729938643 575757294 630587820 966133607 530185387 44414476 394963231 657305120 412060713 273273680 859507919 496524646 35356155 775390256 274988339 575684595 763231254 721745342 80571799 69993197 978024114 106645690 158210279 866607689 892517130 911253944 170792847 763930930 503497446 613270697 737649237 686370252 400474494 404938352 371740664 95178001 800246858 818426078 351381142 23161019 271703068 863023421 1043222 990805766 37518707 260029160 870429350 555475471 296826439 309641919 364033681 527218821 96896668 246285761 991226540 294702113 448655293 729151524 132401124 238239735 466286898 816316583 418504124 82671410 643587378 249128427 541622553 240587283 796483372 407171831 200865941 483355493 961104380 871017998 585769286 808002410 267192674 484886882 494817789 362825199 812788377 846841895 581832632 664902865 686446670 401877681 97292208 293099382 962120501 12461893 545198510 326072645 848285267 514321586 702748816 489854331 402509500 187209338 156480381 975139440 308513112 361243371 60563037 796810076 945228345 211403374 423121732 182755347 407690113 756113391 344385311 712246766 866085752 651315468 130675749 694232622 656149460 684530537 798687896 273620808 948890034 867270319 297164345 130368053 988084180 605613386 195818435 72691209 930982286 799312141 172385448 475671290 490167131 383914533 330137627 44378971 813968245 232216029 271201802 75449860 95099108 460996092 595924867 746793173 188996670 986051621 401615990 614739810 597147774 617152469 567618077 279917237 613603745 610660677 655524479 453243023 23789326 10305494 121849291 777331220 417534807 989503485 909708194 844306638 399598688 957007563 366039050 963956050 776134765 711229170 562147125 774026776 16657149 27376497 564907900 11549533 851114857 677195254 4937242 209272333 884306327 934159427 250211174 858797918 821572350 446428408 490981482 434130450 380837300 462654699 828192121 352065118 293850290 936053269 595198868 548864613 168746827 698843479 601041640 648657937 534728586 357595905 580570709 125886650 92015814 918776911 398564123 590824448 888255510 121992643 798629104 585442942 602044470 901071196 828005159 947351288 994091889 549213348 981765989 621211551 212834988 959955161 195716795 649482218 689708418 721266704 831563195 825306612 378934284 21457324 378852803 407888010 902537106 957884052 579859292 297041912 926738781 839428497 887129938 134428949 642316231 611247690 899582035 36712643 759726753 253057444 938969311 569401382 751082749 559374757 26016091 639801199 78025688 105784252 412447056 772641904 989594522 737754162 375555106 904473303 909704469 234495422 81672234 268847210 78766917 71573006 133139165 118191755 703308596 578332858 215118694 607369511 717995593 483819711 214590762 984947517 313142536 750362252 419308769 918356749 256704217 965217212 756418804 911365893 371718498 244615173 514388196 679403333 164490390 307909611 38930792 68129137 99286390 762171754 895197670 646000888 647865457 434375073 925959548 163908488 711445364 275390574 815274865 84653168 51483959 294839151 974167334 836237489 212727355 445719665 767737307 418550254 346728101 551178790 508670568 723920619 523252973 353457576 274145070 794797519 697489418 55506242 481046512 469637723 307981993 693101759 320115340 417592301 167910592 504718697 9539199 100480049 52777298 520760211 456724166 798423899 927214930 103677948 49659805 4885126 245750368 716220095 628047924 655687945 283992079 89597232 619624970 660130109 196920386 583949424 541731861 447572064 457005628 610011126 576876415 766991427 839223095 415669405 577428318 876038009 660390775 63880155 862988534 170290695 165792160 884540364 447960686 98965822 361770376 51854378 722729794 297618485 337199450 357127084 153126922 591318677 139474922 479964938 714627064 444322322 999504055 496631760 514486614 63873949 376787266 620211707 141576940 545423253 798852861 387708098 599405252 109600314 733067402 360783586 373014562 931713732 825962557 754297076 602433062 829353752 782172439 8576307 675787968 958484427 138866758 151058088 653977519 170949502 641927404 396722417 542046703 578987387 212994898 305967512 117789409 925897675 193344679 514938890 189410958 692194784 756756420 473292915 432652278 335500299 304563911 179940564 49927355 403522 754911100 778844137 888575560 940847715 551032281 662374887 625259389 345323790 118484201 472615909 658924055 957762220 202149311 747417018 410868977 695011216 442541212 488187952 676365844 229249044 524475304 795149181 579120557 680179226 41249719 837696509 368613710 319485610 229195474 954871870 359090695 443127387 220855358 134855430 362201462 925612813 818511984 603572980 528663201 659975051 474114916 262562955 502383578 890034265 490709306 601746827 468912173 865217171 454999405 982070921 928499524 80025195 98766941 399977381 501113667 294335986 752262012 129098513 400040336 1816838 217568139 918971037 322876544 876031667 156337993 592303497 134745781 286039113 745654598 857683707 471707839 196783820 782583704 344972191 154423900 51223662 784446316 65075546 581394603 115782306 462453573 479581675 967406940 174933869 993025394 45051780 178617893 956224186 824995448 204055896 729436291 115198757 971621543 25029257 422791641 288184588 708809726 252937761 223581169 778853291 29991278 362454805 584681950 904974960 760280898 578217862 955089288 154558279 344586870 337333817 639739791 307144122 153167711 864549 643983173 914437186 713782980 6147062 509312550 207191894 678169617 537013623 243970823 377097761 409254053 802881117 519424810 834586713 419345187 488190165 209591616 300974114 583896412 548609062 805178409 508435156 336885552 700800759 793005415 403729675 239107183 683553250 263274354 498839902 60692461 397226020 558944898 768695651 46978776 126029750 197639239 737186087 23632181 33011244 209188981 726600632 953369326 645608339 391122083 150203027 650660443 495499649 353937475 501539297 582841079 612689343 481935430 221473692 574459753 277856553 559574566 452089009 3546598 469086442 31309312 922456381 574915083 152257888 181478860 108567659 139993300 473398462 305742509 754159623 254068612 894495245 42536448 377471796 689598970 732498969 432054218 396504960 27457738 899146599 214461957 135454860 335508890 62640443 204672394 411045068 891100985 438790587 793318623 669845451 622009559 71813787 774069694 842493953 304784977 414305684 730747580 651324676 300771165 77985753 880035944 63407621 54293258 985050175 874210185 107966362 8687706 657865038 492859030 810055513 431008340 518185229 275980688 232274682 444653621 487599605 684191933 277365698 207459082 721385056 927645641 354692732 902491772 848890894 16447408 7571169 807139045 162648290 521841340 885502361 824275527 288359112 974613257 150006877 774711739 631952425 881343516 423428830 452229962 412006375 996744485 913156989 690066942 304765506 784565458 340373502 152245625 971986482 553788248 323996272 473365443 354415941 303284769 620664215 635268962 397378810 504660788 995142656 230848909 699704911 673499291 195500511 679593398 807002445 265399121 604647552 226593940 864758409 7564438 975371613 461904820 647577279 365980759 554606336 700468900 541377151 877348057 934521855 998637915 918818729 142809670 67602695 613776188 900181295 5778073 275949960 447663623 479062723 491861413 579667265 194079225 893792021 779802226 610346468 603926120 957743886 662060590 797447260 142034052 551538585 34869525 887565064 936879329 315470909 904627505 705570457 180362094 334998268 459372525 600425698 785965975 434784709 125208241 519845159 768821970 793289230 729857808 387105598 945231859 412655128 22897339 832105234 569292772 153285016 772440986 593483434 780128856 631292245 770235778 294727670 247321187 619404477 392459658 107276543 914351587 829287541 796511669 714171647 165729626 451324964 184918705 83258629 730177472 32677741 332019933 915727290 240159208 530458422 143550752 39459273 225815665 714887771 298156964 926762793 201483088 339531640 14997379 743916537 419600362 453285784 502827989 907792242 936152933 391622975 109162020 263156923 750435948 800609304 808353932 423615605 757857425 503680384 571699833 961747253 705297305 827077912 702111151 506223027 177641704 862084371 773896976 299499576 598529924 735765271 658440691 259954570 430368869 813273115 248568612 221570629 429727976 47889796 967537045 308039343 42683624 767782831 478833202 960730713 902354059 962510892 119953669 446228307 515622097 100659763 183006063 235877045 994181791 644907062 33190713 961013923 100578481 116468009 490340360 823188305 991250362 395084436 240295252 948897107 632983235 929721182 687334440 944557104 760708709 643884603 150868438 739491422 375171994 32626163 143219083 351703288 870184948 243921437 411229569 147928710 815382100 130621281 952371200 976505506 106214659 558528947 971943016 783062519 932495243 598148428 63553687 424515826 297540095 129404835 546912160 662293155 663618842 271978684 902818966 831478708 614199045 187166523 922276417 257475274 872152416 313877067 932419887 997163271 987632464 257085532 566731942 39568567 717690429 944449822 902080226 66909220 222719517 204881705 275015394 232108244 751278651 756112109 919284136 448341852 907564590 975661309 967773362 728133957 639978413 899913105 11355895 6213901 95619519 765537587 535968450 345935586 948491113 504322053 718631266 299446961 209291594 841477299 202523187 617934153 510767243 525561317 450085510 87837031 956452767 953465954 62610701 576629291 119087059 185202316 290163833 218729983 266848560 830668842 684195711 941924369 143603831 404548876 56373939 964616027 121196599 44226905 426472994 95738570 369743219 99766700 30207298 529796192 955522094 36572222 322450623 641302842 913628620 338150973 5294460 456196600 310441158 632590557 353817103 263615682 600968520 197907710 949608638 338607992 332939483 107627934 354920259 166169714 703196288 700390352 50509309 298640907 709368086 189248532 564056598 720784746 459577287 79476864 965008105 156021303 913049944 318018461 892675936 5131576 798690438 858462960 39819647 673167085 387637776 399970993 631566396 79049378 67032591 135273854 319734453 152804634 307226332 988016437 266252645 492245459 962280099 423339546 871401001 763455407 571908819 752918894 296089040 492248911 394911003 218501342 803870560 752524250 197286109 991885577 665641276 165313841 550163476 390984302 614437310 76887016 903630019 504277441 701225137 741581123 494218833 361603435 603824009 280281418 300030319 966741114 411566575 570515762 596766604 74972837 170722634 631128890 187850491 14511162 296659290 719603156 436518330 754444262 503917254 51031458 666311214 755281962 28598078 546649327 556736504 738733499 331982748 515333607 260543048 10249508 619944884 666971954 358460563 870474697 294379102 74377085 949232197 51992358 389749947 500878159 91850076 475663755 405927711 778354599 924175395 477593574 510819029 159837128 349391758 97412851 19734718 735711364 171871720 548771244 253108814 675996574 594291175 435784432 902251203 344339473 46533539 210339473 142826558 458645324 123931986 795240759 960391498 236349417 589614439 355643864 543789097 979577557 640458243 51706531 430171218 579620929 407024961 908631198 252562531 219606438 800293140 702046019 246107737 572075546 21018562 341681858 321666643 655319427 740051817 349982127 109650394 642915107 979500140 636532579 622964126 4536058 53045810 431893338 46797134 806946391 179845786 327964989 560211660 983220284 599047113 67945190 857063769 627147938 5980769 452576970 170600903 915517712 892986126 723089982 290475719 980162929 7368049 169796896 913023526 277224605 218486493 18947706 308524932 131444425 950372144 229963610 999234186 745755631 123626353 136581193 412787929 139976585 827020842 800446254 327380648 923753198 855443253 799353854 515314854 668742880 974593833 97792337 463477945 499400506 573579776 119442870 78426874 978563672 611302368 105202791 989485325 602092643 271618520 945927792 572956251 517764577 251716655 909729519 466170730 669601843 288835065 380495586 341549198 921115183 246122877 586364339 19340334 342131261 184230519 270958368 191755951 295750641 609230992 652376392 308855267 918324765 7712799 438138768 20850191 265794371 995051130 451074866 232574269 581262406 379810937 549964958 357656229 572803174 355187313 278983526 925784356 18474804 627370962 59828752 20404758 127551650 777521538 540450945 18593830 372211853 974331429 52579323 621966422 614563078 76561237 215924424 40126421 298339254 94495175 369819570 551104859 211018518 191361368 469596688 42592886 682581280 474116387 59219747 86410219 436577843 308878410 361184828 323058228 120292915 338402953 685555588 751851619 561947886 237148122 641459974 859147632 404864710 517126882 994122284 513599968 825020753 532852802 487087670 112848213 504671457 11634756 670193384 289205838 52251707 376277751 293189288 498645502 998480511 141812837 119737918 487627783 686351285 736757301 397238075 636555143 456203355 518041262 203052959 847930603 43791940 512123236 777172492 762997869 181104529 309992097 961850075 882824214 69651610 17525056 966146481 634860867 42370330 637951104 447702203 834566731 396898380 993268963 749092293 463571891 292683041 372596771 424368839 239916233 207691640 560772165 547794443 252955176 819381716 908017400 709177189 823581615 87521056 84688225 566006763 788380860 813800636 622301359 679469013 554943140 94388012 927696017 736322432 775719351 825425061 111550875 574557146 641421794 802116322 567775384 321712187 248005375 273396604 381891074 800649841 392721180 586113205 538046678 25023978 201258714 447579433 708603172 534051214 109362726 935216435 589576667 104366658 823776996 989490846 315686995 510402713 847786652 860097531 181949765 546750785 333129003 319736915 364738835 133139063 816145716 892770838 566951584 780058597 249168044 763808494 290221481 192419218 677559087 814321631 698321324 747830087 371405775 728378738 437970243 721324291 175878558 677300900 991220546 940956548 461050642 401785078 122097124 903268177 220117154 32403162 185819642 59955715 277713120 528032703 791654437 783972366 514014341 157767386 263538109 742261856 877379698 62755829 387638422 915810487 550333788 637070709 271608843 544163884 498437401 58021836 88356059 584582428 770629950 358323153 575093342 127172337 399372768 78891455 87318028 816079765 771279651 686319804 731691005 51876075 721813872 552417764 671053697 989357070 536213486 637049493 561463043 83133244 675288857 112105385 950944075 975143189 156848307 441951832 682922609 411761120 205618980 977382841 155781244 178829102 746985139 295786589 509041189 228240671 97260854 985886725 108299924 578149457 567900880 114504073 838112935 230130873 397144146 949242342 201035364 521020005 355179395 220558997 964292856 32728256 182880623 9891953 149654169 772344009 211798327 848729849 225342336 174791586 763288241 650369814 257059630 51663854 86727426 657287728 300158613 678754146 315242103 293708068 653674562 458022868 902914321 2490988 619863123 809275636 870860346 24465166 56467873 975196762 899698175 797955919 108448371 838918450 548428982 84594907 232594466 162899080 736837706 481894253 299639868 605096025 725152071 971073522 727021617 818160177 373667736 238173632 199236089 530585205 650779831 986407538 397970180 958466589 250889051 736372291 756348912 686235873 862657630 163810304 89662194 804354941 550376861 853323678 424546582 326244350 481512292 897079716 733802840 283101990 782568661 837545862 705902334 245720315 414811648 114734188 103054321 290994984 874636707 96368308 447605355 911729579 607712074 357891671 325046662 267446045 243063611 553916037 862001664 269728990 862003314 188436661 255460935 22811050 65197041 24649210 699323492 279516840 249032203 556268729 904876170 840650705 979110245 586749559 77000581 364089491 388509841 787811317 246791316 442396971 835208026 788302676 20260146 605032871 972348835 859655233 771175112 383768866 764791632 582459321 658334107 299637885 477537123 623080501 956391046 100683668 351107355 411366827 334470992 469915860 266124786 915064095 960347769 953450619 722481963 45797139 815693801 585264382 2552413 615940539 836347324 164478064 849280779 197170717 782157561 536007026 662018888 20170375 110896802 470422227 710589680 821732268 606545539 754546435 669810274 874398089 305083434 798207443 335244912 920598099 375656730 541055825 504838940 416396466 497097966 814746989 328673620 110097163 438626361 725039371 101100337 362008754 208907227 967680611 773108033 471028771 759696539 677870522 202926546 252479864 215482155 371069656 841527839 325066384 796142644 150121255 734118770 506379332 351511678 140629634 996081474 770970097 232695321 830597178 354199678 566160569 293701213 326588686 549586617 758003285 738058729 461474533 546468372 650445378 329797653 338804657 710035471 889136793 22608360 882520907 746482135 512011079 95137408 649212963 720030122 156690745 188546679 544780357 288673174 981700217 350507207 415455217 538991626 198502972 202635983 548831899 591187531 38347199 346543061 217201080 686698172 824774612 565192463 652258572 137604860 852598990 721741977 56890153 697156396 906596591 578795359 211710859 789601420 720199374 427626386 257958862 138207120 443091030 654040355 726378425 632948355 880823158 119562760 592686612 778396239 66229590 159814220 480818150 224565105 232668504 728820541 64329685 437408154 934728368 663355272 728719793 482335428 188411333 550316159 420234433 147111353 503371006 746601931 63004237 221000574 24916965 717542614 725723413 61398464 971915353 821353133 886504980 573390123 67889054 657341287 241242547 784048908 929260089 971777354 186387510 9858514 898415755 41129059 428731431 844920647 236454623 788530552 993559008 805253637 769887038 853857717 204057261 85763641 253479073 874083408 813143675 531883186 687394595 25574842 826526649 845341436 493065148 628041339 550591609 530862082 534946677 451115809 780775561 529690709 598485396 406447626 518770045 910574794 746570322 642591275 348032088 692668672 714767029 186932698 98159637 50279499 92254364 671178596 688310747 138070779 364982490 767699905 118479368 135963672 42691637 286050867 856011251 501965697 604693942 378759672 666932677 111079993 344591213 489093400 511405957 432785719 595317588 932730212 843354420 864258373 824447724 988590799 926067944 190937866 980571437 572395693 389447781 151211584 261341620 421175982 647463516 430143107 186205587 403839662 593071465 132320374 596636197 832046914 708844754 204738185 511073620 795388995 592662483 902825047 649641874 296854834 428561328 61059539 717570501 629636433 62200043 906456245 268872850 303633768 92783032 728194869 117231531 388829784 581751670 566068863 412278561 343973995 885467018 791352251 132307878 550749795 836651780 71095590 441362555 135741501 439698987 984906555 396719754 509902921 219866012 979660412 236479696 781193538 466872648 577206763 763905406 243480095 239758544 672245171 208844342 651731595 258876954 748720272 222358278 987926388 569424839 305125352 981801863 720662527 483166655 310148171 137615557 689529197 918832471 574895532 902070543 543933439 156473968 149178437 157464427 262737604 412427547 338969711 306775760 388434389 100332259 901234530 35027206 919012297 269902897 921180670 528878289 408421933 240042042 82069129 346014299 704279582 566423870 23898665 493201415 629330998 342614892 457770759 741419568 671749119 475073447 789554390 856504394 291428292 656701359 406881186 492363739 51387627 85050942 809858419 384384576 83738558 365918645 333583179 386428355 881985253 142637606 942739594 252783710 870520252 202190837 614168115 173417407 964405900 342346510 436218688 611911574 756593666 304101855 605003605 644175362 420353529 211008976 799813261 787995938 11984739 305957985 200420984 751480595 78210361 98742765 189220913 700026969 470322475 387708392 68243066 789128136 790719723 763825398 473580226 208981536 532550000 662581826 62081003 421115554 520179437 687735131 459596418 883993894 17924208 983542111 196930023 734325793 964920850 735251583 319130854 434296246 91738482 458907960 473265968 428648718 129926917 288987408 530966950 874643810 763111642 40054398 279795153 407134989 501753204 824816516 52402006 877946341 326380432 27404409 36683738 885828366 630781309 725996455 106095171 169926689 865715328 47036328 996493865 294559535 660801018 657662289 472013915 36416474 336702587 56481838 592731735 446994013 910656799 781033664 125246860 801045250 254887359 828374798 287801020 919342947 473965522 392125952 351655801 941731241 88723257 129093275 218364165 118281032 527713987 223307160 868995662 77111108 731327156 701337857 408439206 797156897 908777180 927827832 829272694 854334651 308038553 249766055 168052046 342018870 967211441 661098314 919003021 322098059 479037911 538045308 524584489 237039212 708182129 867227408 153873709 831626293 597902856 112261470 290130208 414439152 205875091 956994269 783741808 246814881 230203129 576922949 844299788 654608755 788969573 148962261 457710223 502039683 788752734 814833885 348306806 79813212 793346432 488874374 951502333 91422442 809617545 281793345 944042488 362018288 351498078 85339292 589877449 88237917 51851751 400599191 238766153 462070603 866637991 952165033 629865828 127713674 655821540 242224409 187399815 886144942 423571721 213637790 353167862 838334679 244228766 564373206 457182882 605681715 232609908 395315282 205131399 839276417 541148462 519952204 290054423 193889902 454456044 456200037 369802867 264905817 586245561 903167965 452693763 661531937 19855347 386685962 88911496 879816165 877116474 441184021 206733919 236170235 91014443 824459840 821329933 377818460 774266997 734842345 240226738 516404998 796021746 107372632 740746416 244881034 40219497 426534640 823161340 903020892 990452904 606948981 515674209 724320477 850292813 333476503 300755515 434691801 409473821 934055293 726953929 243116405 195384380 79705411 229436171 551479397 260692621 693499134 337435801 919584931 4950639 441647514 452512733 565123928 418651105 405810752 188815946 353583025 315111795 291167611 228638595 121775770 149564634 412746010 824717235 507701241 47320292 292923750 613285036 865431179 638344394 94348172 370840963 359657663 194442289 690284138 864148440 879574244 951431767 11877379 967639942 827279565 899744839 829289709 178170356 409182706 444664692 857110732 754852744 919547926 224530024 17822478 110851371 504993274 656288202 746090227 961891210 506854755 90676097 500842162 964443534 333457043 424897248 655838886 381060852 980702270 403641472 755587792 239213052 834991432 342892663 996966966 871756023 835565300 611346989 630744316 288897818 444022565 346551803 783046470 360402540 149453979 229838313 134616882 547142568 921430578 24943225 688778038 329725026 346348876 792165093 54740777 595530688 321043041 415007096 268546328 453611880 331243629 915385378 474264636 340565956 838027531 234672749 834491617 256006233 748938499 593179852 598434352 23821116 372141749 274202022 973378001 65412279 367315865 547346671 335384402 180818740 624560012 944818129 956740083 174212835 829038888 392893547 386027166 573443176 621266588 618834161 73947471 792401477 109664545 675895203 911728437 230018344 246960180 601105514 66707044 656148661 889143025 437977378 815797034 381274030 414616530 172555647 651585202 525760173 324146427 670932989 895392966 779262866 651756932 217201561 318953291 309134458 302349149 77946288 637896810 342857636 970197488 260577399 741546934 72732448 903524225 310452557 525994297 889966381 911537290 265160624 769954375 401641265 989506274 187434615 524829772 644287919 369826879 846023493 612020086 740545503 901559752 836605374 182348552 72365686 959166252 473591014 496389260 860737108 397800913 287733726 646429196 516724931 387255868 966347621 986096474 850111010 142366333 53077974 864044862 871742112 48151710 830047861 319464951 102263374 733051841 709236081 814591861 764357036 934727563 461566788 366644510 542530790 801456840 291044398 435332126 328491633 902155235 393420304 628439204 901777671 124147616 292242348 347860364 732034769 387040645 613553150 166012305 103876750 153674296 468691230 51157481 220197228 818533471 38246341 566565296 603078753 771211804 660219447 343168436 379672016 415822448 228442922 755847002 913601111 876610609 759418995 489898110 80758625 865237488 591805254 412231385 79015871 891554804 102736798 813366075 327592336 340254471 535669112 550062387 122467244 704406630 922074046 605301983 56356477 188677871 911112467 925167793 839415897 685681657 10084220 76700460 578677268 187771435 372746433 782496264 225149323 541437465 152595323 85116512 137204240 509564580 837727401 189444609 240638448 976231431 210108357 486646945 172899500 521502442 488100341 813486417 948095226 248505509 56763989 968931416 295943419 423644957 191710292 998217044 590628327 679238759 961669807 260712278 898859524 466607756 466332528 440562311 518461762 26443491 179304171 77441925 694005463 331117748 160185792 768512081 584889079 84753172 817257259 822569729 225554173 643574966 989343109 635669260 85901571 587375826 469638613 18886938 688529405 606258360 585074458 442887395 218459279 417029550 551453855 320337822 539605464 665350764 110636520 613124667 441002623 955832423 599312153 929469569 494116714 701696517 92475032 797269908 202691812 790356546 367840988 334552750 760103689 413463108 547392827 933347471 17757749 196540094 24658248 856326842 414623613 766371968 680236149 460482828 190913588 890670783 556582934 202017547 771985800 287703082 637647322 506376147 725021446 819467233 787248345 909736945 34836857 824909490 937546456 351321251 471360237 819987653 884594621 404303741 880073987 899757065 695393156 483594358 341030630 411195665 572966347 419195973 938621519 866156867 166680754 667132317 204777696 183548772 584693428 67828580 465529520 76852667 479202589 690838008 616383581 833305794 282774605 501822287 367220097 830942729 920471989 543489125 314528396 586792654 800231037 102450028 685165904 345027083 839480081 109625881 239574714 916632288 987760392 513579921 819725338 926946438 631569505 869879272 550076487 309594629 84551523 479751053 390894116 92393615 999944621 632725183 979525396 93018188 304108912 366558997 810565215 460974022 570481781 345491461 656772797 730066714 972959512 643286114 400076038 648122944 895110702 369002687 655918065 439198934 495679709 260330619 253240863 43169537 391069059 691875811 838572217 321749839 482946608 626916893 947758454 514659551 78264928 773208094 683492897 159470330 691270919 544607939 772712752 819242727 986140269 961913907 127383505 225433980 551921857 310050792 201805942 976593162 560566306 258646973 356927594 658550204 18486804 384735361 887932308 635431117 945802616 365478836 161582423 535858699 913961790 963728683 4599830 71316105 977847384 466921826 415872252 967699717 782043436 281705265 691737403 986004882 271114394 855137741 384125882 487712419 420334437 28177638 869103921 112993337 601617 540646179 508369188 90823747 48982889 15533840 472410790 927886582 859262384 818440388 352194012 880055408 515363578 206070836 405879396 381216574 697371343 913764493 582678909 400305141 268629478 112343780 807244240 405501115 573833073 83699121 824110195 810122865 995320777 925508416 441221530 259420443 287428162 852386972 641852257 549875674 982202257 419646411 561966816 2506925 183171160 335658729 621145513 147004946 356182333 266706416 169190891 433005400 147554706 119511704 916032293 745249065 689689427 451126713 37609241 577397961 806153039 64841579 153153466 948315872 329333140 499840638 923367970 626480538 62824462 135395732 35598557 800990367 530309067 435375882 322339234 404962745 270929062 486895821 20710851 384862921 805870525 591762954 323133516 511375929 186111357 639762426 811117288 985921343 507706418 863779236 683878061 510801989 394692153 79713034 318042926 570643917 542585050 5789028 18165767 350797367 782689662 957381903 461672779 523083003 968424082 112271603 110712696 934178895 640105262 365112840 703271871 659439919 873401847 793423040 312550180 200026620 950958500 132716282 175546494 506242477 813315225 252798701 512204874 357946590 196613251 467987972 117187970 937083012 632664736 458032280 38356893 584019783 372268308 835837545 107747283 383037202 710617887 413870367 357289702 604450448 564084770 759150629 376016952 569631666 619762151 405824881 97917050 263351371 960646828 829034218 586031165 158969666 81689806 763401176 84648239 74041708 44560991 624968794 871346219 77976200 301581729 272328199 996663303 571998821 203092210 462344033 303661722 620472646 960344535 602441463 716816286 486308179 719445799 580038742 617311823 643920390 169003928 753962962 514050766 387423845 481880468 991197136 276831847 199602167 442159619 261643626 360869211 62842574 212347145 381592992 479690839 617878986 605294551 697250121 612879906 64115740 245682110 428771711 994482283 246938022 814860673 582708123 297018557 908783212 556771531 683198053 394773414 822458035 694599252 158050779 889296574 109530956 639934130 958268792 665220581 700006367 718665583 761637753 863582845 402585929 941848048 905365749 158881446 660443807 760987151 649760179 492976024 927143832 804013573 1575819 824844162 641615007 638803556 600210981 807940354 887486505 262445746 41932507 246711346 729413028 32963254 187103474 231733267 534218994 387466438 201843685 673173271 154880981 673403351 987276370 129770461 725396164 373753286 671279429 791604156 853412734 509232799 293315881 102591306 864165781 215885029 274368435 929028092 244805916 218735612 120782139 83356735 592773959 75464584 774496297 826530348 790115362 622254579 711275776 550925433 701580345 531980578 549593764 205460632 282652747 655264620 59452560 599775610 493895960 873542086 734705760 494976419 613569038 525763695 502868174 629370907 56665178 678240154 800813730 819181024 718041652 722968239 530773125 100580201 716732656 237053769 365724138 997884230 658339578 720803137 748469963 679208983 532358859 199640063 97037579 61267699 565166685 513859671 729467738 702325681 154735433 765659353 988943823 970384292 863095133 724839281 596195584 909531710 750879389 288118051 635313568 607109144 808308701 330796777 128887408 561965794 234096532 476875481 9973518 428638603 497836708 587592672 468543053 433064960 158285953 265368664 931585562 397763102 929716733 777506377 998031378 175715648 660664202 116172578 235347332 139652355 610531225 187538473 222162802 838572819 962828897 258472114 886118294 46429387 291529727 999957388 408453988 154464577 372514670 926319762 143526934 159958162 180693775 281021617 74640607 689325326 408272126 321816095 432858548 229223549 273000622 666989289 792770636 752239517 751438 602759228 711783697 941253659 387625861 276939604 976157995 127556350 948188437 917445748 588136865 933258464 670569000 44453713 967658832 363000147 673621706 583352998 478780347 303406348 25325554 783164092 733031216 664067194 957437769 840263967 492962567 159844385 727870612 847631657 897859491 298557344 620764497 605007937 872472472 872132758 574586436 162473427 52955458 425851739 493827783 954924659 699083889 439424445 914291231 387265601 772951975 178261743 366344748 808551667 265018957 637231456 272629667 721239420 311225609 920767626 904592552 113424387 272122197 950376772 384970725 163533811 360756271 963788730 531092512 536154534 348941105 835782923 630024084 296658329 848477097 24683581 315213946 491850860 652139336 274792077 972990097 745570947 549310901 949995646 10823868 847923062 70098864 162322126 754884659 50144333 718430045 611742823 35698420 144906703 254972162 505830441 627009397 790070816 619811692 793100956 252312492 288636666 72061060 350138002 488205869 191199812 306590925 992752119 534155524 860579787 410591578 744548174 902281084 213423987 563235248 744688840 69216740 537741342 643009423 384336568 394047780 531929276 143030668 865818302 157101017 799000768 200654167 436251501 222503511 725349657 706373753 757577919 266493961 254103245 569594099 879461679 581150943 297924389 460516354 782121202 527244804 148121627 471502991 226034818 835995103 179814763 398289669 553206576 801464816 879110708 202084823 120455190 391769923 558640848 734134893 891438342 898388936 663307258 451650406 16799075 806097225 69124891 924687675 666618102 676711657 251036741 640777201 173868260 207095145 488730682 19788342 346593086 815348276 158416997 191578586 405195145 60965335 704917210 960602477 810211247 748510865 941286666 874089018 998979875 173037438 887053365 866140777 171724856 828680581 644087516 544229675 257377384 726459518 6857501 862640258 832317163 667091496 39975821 165972533 149729377 669447133 228202587 875711767 891210566 649171097 928729767 957122567 808603840 234358704 144860318 39350704 751993065 519108562 147726962 187313845 382400158 959498429 331582364 409307578 530197082 622627793 908229971 7274688 863871327 322286623 864669543 457388609 88823863 823834535 351330781 800320922 374934228 912625681 631778778 315210192 199159377 355566044 973007643 734058109 683685538 88897565 654842881 488166665 887715456 933045156 167244643 958154772 978749676 698573801 493251708 311898611 984188851 513280694 68107228 646972508 425560809 540469105 633297416 653765581 239297095 376587030 743450470 47037786 608942670 810695392 915140343 996070018 585515745 754482325 22255361 875497746 302938238 879317456 695639873 701591776 419959892 988527241 115281113 742936488 859489667 507971514 650649954 807852482 902155544 237602684 302957874 364039335 300437488 462451099 672928465 493727687 584229319 38316267 111923420 119293760 553721543 590565258 749029635 59170831 705445248 704513823 762236030 118215176 975402782 247976130 152219787 88817486 682674881 238975092 512903980 989226366 651199775 75106549 959435584 561206039 149275068 849340716 958070310 605810817 954159281 89637080 182473246 714849482 954264428 997204893 502671505 166755318 211831122 917150 702760835 109499169 490246669 213725542 456875342 304374771 551151029 207866461 963023126 158889313 646648037 862908804 45875695 219508316 312084524 505372794 152393511 109221211 900341404 414966187 251166003 861109757 365460851 345135588 62875941 519631424 283489512 457096835 989436981 495272479 292601103 120860217 249596716 642694538 303612945 199521704 766903347 24251237 818994517 267354978 209503184 7705285 925373988 113236390 857975245 49297946 827254778 160284800 227088692 88811242 355749428 178990132 102553620 545161989 453475024 24564868 318539625 654209858 730934657 313457630 32387564 454182826 229780888 832041719 490161121 991235978 601615146 510149256 470377566 301152010 775080008 595628501 51030223 762219000 78717186 478483096 301157523 904730429 478102549 897795377 128370551 583705513 683744297 386912986 11773413 19042264 334319586 412760923 543889767 44569773 937055979 128280343 623968096 316750343 50180507 588053422 64916175 306307477 973336270 350192091 958884456 945426966 234002782 887845149 118894222 848176560 28038179 265309803 443630357 353223659 530502059 200083881 397997899 284230656 780703470 814852284 450902624 353005012 493963976 187576076 230476609 444026236 580133381 874329569 368233955 757442177 852437887 949800044 440720437 33416763 725407949 865317254 817524334 347697689 316767451 680422727 256864110 197511884 71624676 974631757 741259083 347038799 595376353 263430067 642050931 372370443 89839774 158424885 783394868 308681324 990582834 274332620 126112292 76431600 399505654 810135561 625108810 197490416 311724319 955282265 900762809 221734738 765127499 11354533 135021880 929736632 956835745 803978686 634841088 18152215 523314519 998100340 528406588 419700404 54307540 494007719 958026432 854373183 670937368 77698197 930454469 933985819 629431723 82637727 51253070 183898318 214959327 931065522 892649137 543936444 598929475 890609468 602252911 164939706 909346782 798566558 235841179 613423275 399524153 764799655 738239108 460490776 636985039 137978881 799122137 765079309 531467927 496021399 660929579 362555306 627167391 277129511 133005864 993850014 880466768 244203848 403013676 209970975 78735501 110351803 925401451 165052410 687013907 572813320 453949302 631927288 601040618 767319664 680320166 361000780 575083070 624786641 338747884 382944909 590197776 354783881 341535784 396497646 61076796 782785920 76956755 882505406 917945323 720742801 420394416 558844931 495336304 826854547 205394264 836296558 597641041 653045508 160996069 708065240 329658440 611533348 296680084 772966225 385853821 198827985 127973919 25371510 81063419 833204719 985017831 832936727 747040469 991960226 575287317 167266780 982310201 330530837 611369384 371558612 429440121 534194487 651843750 765115460 51897300 570598547 491768695 53352219 597833958 773163868 572892121 428714701 802775714 806891919 98339808 980278636 928092707 587956168 576114776 342212718 11717251 791643623 614734117 356217434 38928251 408710112 881791622 90215362 182322189 988622730 865300068 389987615 399171355 499561540 546901235 814231016 886791123 682485794 465680956 547818152 733233112 389523221 889157784 859417630 729181512 100825446 866499090 477576645 450977948 712084680 17223062 776445498 445590781 286345947 624450975 852976684 645696478 187176636 625917448 258122128 305564305 518590903 532850742 59582662 880599923 930192288 22633031 296230843 44084612 150671316 265347547 496660595 329804929 28260916 520289045 664825987 116682207 540553618 168390041 717061517 977078096 640678844 60020570 434699415 262866836 57355932 729369563 452023854 527986280 499764040 500720704 954996055 680599889 154389574 324432698 781940465 207136800 732831621 417885740 722906884 664767730 336257114 103689782 715213937 878490513 619251868 145381556 692036729 872694334 291630228 545158112 952518514 504478092 989078282 945649685 775442645 583494442 151092793 816310179 717326571 956647401 911309665 188181120 214455007 349153355 997411468 96917045 884462618 757943718 636462539 313112923 53622538 971212580 842366071 964191368 324406620 120951840 280768219 474546506 575377648 406510073 372928276 727934349 682493239 71812500 784146288 939212803 876252164 962713033 903944907 258899170 907234272 311660207 173096967 332909086 600103579 107650512 459857083 916789477 672071480 63359140 994835964 712841994 866324593 551290952 553245110 132754411 885170728 887634758 188058186 37071924 639074256 295363946 126100157 165531741 414068181 383403617 417739298 354421810 993125046 735047119 494656808 951631070 737233588 741005497 959463265 541313789 982173263 361282438 895049304 792683404 663697039 851642110 980004788 58456813 222524970 464959455 850389647 880695754 862462804 162596038 663345008 29476316 768987608 495564792 177942898 727282116 94838862 594216196 929393630 161921930 995186025 77258999 364685144 937613901 453435601 458654768 867661243 922633107 478683467 328476471 661581300 304659000 778901143 215278121 407580155 100171455 115062345 434821864 228580548 399636482 853418301 45716008 343016980 726468769 321566569 897511152 158247006 400669365 222435183 493305811 18691256 937368832 842195453 248867177 652575830 466873150 172327944 229383851 463062925 536158065 418845292 467102882 980219285 433471682 449222011 364768416 804027522 858825577 529829815 13585180 687561224 966512782 513575506 951797933 794170501 986786393 369102625 549443644 248737801 892335652 697212980 317523706 396761852 365531522 232731704 661792013 182802643 53039866 541300640 340265538 386241653 435196348 438960949 769775630 43258394 956807622 627199699 342032365 969573760 430077903 16126732 131357094 935136671 873581923 733863963 613697705 886370623 895136230 586457714 972449357 668114725 295022299 238245234 914087162 614593246 80385617 641283799 284060614 884494815 830621544 26689292 354590765 719427389 930676814 2431332 465494176 390927490 101909222 796648926 70446720 841448472 470156882 458592142 278450593 5296810 943782248 271470680 340604828 31489103 740811276 892645805 648659065 20582864 322107373 853485576 744925450 587281912 841166654 400073966 624046298 294199411 534909330 657244382 72211431 328843966 422364775 658722427 447328908 917840952 282858925 126232824 567348805 966306194 420457320 574137064 557452637 1116013 302982410 762265699 418617624 642614979 440938290 564623770 741953711 848587596 709034217 120053619 126084585 94252110 528146800 951126410 64948411 678218693 91204801 392135516 909034791 26202838 581386539 939844350 557001348 897647390 460376982 907699711 550812514 742028061 463466966 973529336 293252552 249762600 509883742 514039471 145786030 781588205 95576180 83210690 900704286 876273985 353434355 225735769 345235641 976687196 14013048 185663274 676187687 908259419 643185626 395622116 785210124 1406605 441606963 305476187 487468765 600651777 475280822 448271591 234441669 842449257 719410101 203344047 339307668 814118214 773514153 91632009 259020139 5442987 2422082 28351500 323085333 69681181 863305975 192897641 602169677 241888223 440503627 999090523 732460847 567450008 731490893 549014066 650683062 586252126 702209126 843655255 445414359 881174282 866980980 209325947 36183522 828037825 420896379 979263935 198372808 890705347 894470300 977115164 484262212 700905862 171805547 984904890 677891596 563200038 335874824 21985577 647247346 326726155 738719777 450592131 466681954 82160633 667799782 484484099 587274672 925277247 963419439 800511315 323079863 645013890 583812683 499735489 629447495 290474918 18231567 444247896 453787242 620787374 456934884 766335559 905987390 880614375 139119932 663327294 52911150 916605765 506112995 725943552 977085068 340690078 978248697 628646362 718728428 348735298 751841807 658301587 498403474 843431688 851048211 433846669 689519039 480640937 303315345 63903306 661601252 777045290 66255628 345720408 686499578 227916992 932171634 615526750 719172655 881332415 927748706 306319906 161909065 817820769 248437583 46011645 522567657 358756782 39158749 393236458 76516942 641901861 661284525 712631590 3470558 571594647 87436012 990761429 234836695 318056045 491145265 583790808 96675442 977078481 581315524 66569155 708442180 210390898 143093674 435659164 58590997 232047717 305997993 450180386 496271714 841222942 964265012 609961930 177005287 121946642 631314817 679047216 387761560 426838844 719509722 270872273 965422413 273576512 320373721 974718011 30379473 597367572 854602074 453565452 986892338 41462875 490277539 137807217 71710271 793146493 593546060 197211496 819943414 598782275 350399838 709997418 100022390 519687393 153220014 725867215 499835630 748768926 938576814 62540622 761367415 540722779 854778909 344357271 116067789 811038352 558575570 698226104 403937448 192897736 964550565 795485855 369245285 815672386 590479100 735644948 535642497 214883983 789879033 693897356 74210949 995922317 173141937 634712826 576800468 781561117 772364506 46499755 81096917 526979882 440992290 166453013 734647770 292889404 70103716 229400317 846399164 433186279 981285591 937543045 17568809 372063015 468251163 550557396 958109167 870023452 405534216 991632792 880941898 572616660 625443339 468051621 920291564 401285626 151358061 526305523 616798366 109725030 771957385 933763716 333784255 519498465 589655776 448862923 7676194 626654940 182443329 561508075 214050688 308962139 514244681 102304885 12791427 762819071 624025136 892852669 824361210 272110564 208544246 790246437 294326398 364450694 843205234 819036332 587178513 782147799 706601815 513179196 587819806 76391678 405607660 198554517 980131233 597034804 125750852 755554073 194529331 147979949 742047953 8542814 511238012 455003974 327124842 911998257 305892810 779000214 540554425 586707276 43573185 11793051 483739863 696315256 517341366 782564677 778448734 776115802 335027218 602483868 622619819 62147202 180968922 755765233 827353643 509085909 754702183 131644335 874720536 280875098 813971091 497613879 531810196 563360184 197912599 464564669 164037812 749600616 130075277 258733070 863029997 416798983 930474733 536337865 765091547 259110278 418963291 821060243 885424326 7487058 973120893 81281014 646675562 334688198 859268258 704225962 197188736 2670785 586159338 28565799 456820460 50172239 630001446 44764899 502466926 167817615 815880877 798961348 490300868 873697087 383018611 867160952 250949231 366167857 152212642 310920820 974194800 565030229 830004483 163210197 89853358 301265155 548720417 671673663 913175637 5328740 672042907 545211421 150664635 402206641 930458539 69199845 232946498 972055948 693360741 793664675 294425891 268544385 319393647 923091125 548078970 735386543 462363746 422627955 622947756 777797752 16672391 579769316 273930459 993107611 414126154 319897891 122546414 277875243 479640051 524006753 106105097 601663337 516387046 543345684 603663544 411471373 62150198 89165386 505775751 883530667 30639467 873095066 787505559 133406636 902990923 121715048 453536145 371121550 214959783 652466689 234611304 450663102 187564657 324072338 752456601 292530534 580843212 388855411 928817294 837793717 611152910 994795426 271753904 554744332 911275878 749433909 788346067 614810787 409834236 336410491 451489982 381050014 491292703 687108587 425401845 696205054 932559288 391232945 652703609 252020051 645540768 878354392 396950562 710700751 563399231 931033738 32374237 941663248 238931761 532765235 651312399 983797762 622313298 699802564 996166484 583483275 52298867 44477047 493864217 246054071 659585938 786865045 366495690 611944536 201744763 899887342 871446341 603299302 909208242 304461976 306907535 96213730 3017079 48499412 928528466 223684580 775512346 583213151 308122441 822715512 677349368 193850339 352424193 622503109 177970467 592959791 597050189 157589292 874987789 356716331 798702079 995916643 710658462 900035939 751400574 92093061 285007210 419645868 642598603 430322004 271180201 855333646 15545446 379493019 435096613 967057389 513848188 357032498 177226211 792014080 494241424 165826611 258346723 352364839 341008018 560961775 825777475 438952295 281694141 679712730 969483466 425735476 779098754 378769814 111361145 984418762 273128004 722585816 269157489 241187019 351008718 251983163 148770611 991791928 503441897 769498179 308458745 570154950 849797644 267270134 695275954 292733361 893434667 171098162 803608859 875053534 844796353 125781094 142549622 665005447 571282038 822478581 839863017 868937019 179293595 931147863 55006337 442749597 272106247 47687348 676968387 517322018 355547147 769557031 610017660 614775626 980554420 266368919 459023865 814509431 618826979 570859363 559517748 368344305 527860592 238676681 359181146 261186393 499009792 800218465 267605017 618732659 982540160 779711853 619236209 972458935 425685824 607184156 728926448 923094736 322678744 488900174 618104097 405581319 940278122 348998616 68275326 132832351 591367268 580154411 605659756 755178035 612273960 27768941 244425825 827974998 219379870 884273352 332442655 417249235 622068336 449244686 656770097 788130928 650467809 530232033 892099416 460090991 564012328 238444734 895946701 810519816 380427461 661619661 990754618 113669880 706264004 965460431 714029321 497268593 168669732 644110403 24350346 855646125 487387585 111171706 776571358 32289681 510416357 248776807 227847842 935170226 115699618 29726801 723433992 91521089 997343504 122437572 181090911 381556812 708724760 513839919 574682363 345986360 73051077 648866127 638477494 660813570 61377465 17814843 64811519 943568522 317515689 487491023 592406595 141634792 633291193 984110249 335790995 978300224 301115758 904751743 486094321 580939797 329160841 434980817 612995628 323785977 920683242 366602717 623418610 381311890 445294362 916992467 876352233 915741595 366339505 220235966 812027142 249363429 188767555 797261059 660944146 405896122 866936163 12875763 548899122 69041746 194087126 218598333 137723921 585555474 185251608 496029886 748500281 560297410 578060293 922624610 992360648 251481351 528347631 823776593 733773677 59777180 396266825 797697008 598201200 997961484 860829721 266117623 973505142 273419375 926926732 797438222 64228195 596399891 315657026 211868665 344806314 231846417 406211464 695138006 438528983 106487207 625035908 579326242 577547244 309940001 129405917 769022347 990240664 814009729 365953169 238417769 153408151 821161186 213739797 348543837 215045520 707409806 38287483 771350567 897841707 211939562 625704792 40836755 348724632 299624754 573382977 345536086 209036003 602109281 655167606 175763692 384667181 247006299 128830028 711638704 720003855 647731885 254416468 75070638 46732399 504437191 32680017 214779385 384618426 784385163 917291306 375047527 823190088 316571269 197335598 680145155 964157483 185561749 61029892 493778766 259205823 90205437 284059516 22034783 478883234 613887954 296301540 890644651 184888845 972787264 890518003 289956290 388814103 749507561 533876313 717137361 577251580 894484486 436653915 492843422 188513557 608360692 338235488 661714151 657616723 50469881 794058408 184885458 622952095 545069944 439905582 678495951 652764227 383678354 29122531 985368734 846510305 100666325 311530652 470911745 48131271 479531380 468176171 863038965 272392855 635189696 851528013 990685480 342518012 976274306 168640999 32033004 158936867 729107182 897652819 92337158 887170742 409861576 790670048 256886005 718214456 528339780 431824052 628142742 365202805 167459687 775061210 525031182 120481342 52256959 629839108 639785773 797477169 389404337 72726268 495646656 466511165 515532264 646423479 916850199 429355318 967107418 944397537 712139615 995708733 619425034 349207760 780813579 98862849 400228358 784937847 572345908 4893601 475111153 201376143 999457368 530005120 837442337 453973361 381824181 703433078 250956659 995163051 914240192 354629199 594003827 821411063 968014926 374636113 592486971 546507339 992671008 173443851 23103849 297531425 697162494 548683787 233399533 361682579 581003910 273361506 902911499 104166837 261192217 716444360 63278575 913007351 443026403 287417096 744447604 611817609 922681282 679058912 215884399 591834342 658846304 763513579 345129904 377730373 658343533 444858240 223631392 738988165 646037415 597543656 476478695 566699123 684914103 208544716 281026868 453867091 774390925 242765846 720580398 810502063 391000451 572453624 850137642 85216292 203916467 783044831 679114052 742024159 623787841 834041567 840404477 225551383 593573304 469434195 409053501 938706366 339300505 165690468 369727555 212071719 164585735 819053695 669377544 689383405 102509774 718557274 147380825 818502527 264008547 501344810 122433268 217090254 635540545 404769665 71433874 821116979 399096533 312485359 976993292 801198230 518944167 508193420 795043827 986414474 513246863 209390058 49537292 341852539 356648201 495459739 302912349 776905540 872219759 501358137 689055426 225502973 260688522 959608028 989053253 580255786 659770618 189871526 598192325 425971906 514522560 793386459 337659791 514513899 433990608 300600659 916162955 818623341 590737152 941216350 127266815 122114442 988534111 408697874 228932430 680756556 274479230 247365024 251468337 333409228 271552305 950850019 712514127 242307283 655767069 590647978 360328315 728811018 507442350 897464574 269702903 404662156 22475407 512004915 605552058 630800313 396466950 400037787 697275144 953705670 653866757 416648181 59843682 619014834 717607905 438661082 108291514 179023703 609772384 258230619 923089644 659177525 815349988 86046567 911799557 125678516 147265671 827091981 593969653 12847109 119822495 563436257 788681671 289634163 653609872 300954010 376694240 981276256 676996233 491555897 246292936 199278688 917108651 76928385 167558068 335546098 865801003 492390460 663826223 687212144 848495541 288058612 128578607 801708 431165668 122102208 814370930 170397762 691159557 739766326 561411517 238667213 739857785 857302549 193626863 180365716 978073190 627936945 948969255 698586602 761681383 425559757 211057067 621792740 367723397 971287943 549369167 754235243 474295096 898818472 891566448 859006539 91136028 165662985 447932584 407393145 345249405 908693514 975659563 686712107 178103821 615202311 155075365 97512577 100361527 851946690 962346199 106284416 85517656 19439267 338706715 893029404 200786125 394699985 864820049 244030477 716683762 237029960 383410775 676537068 693022417 293928459 47550711 996239279 476539519 899309502 237034768 183070517 77188767 150574283 285824084 441263354 963205013 238437945 521239087 191150001 400585716 242065848 315309673 246417410 768482649 481609668 846749228 571196246 228813899 486018250 5192241 999082588 392702923 616738897 539436830 571229613 108840142 260511454 214220733 396800068 68532852 530759332 861010252 213166827 449740401 408727800 951186505 630422208 430426010 326609527 31313159 484696638 745934142 483088036 179144636 816046627 495011520 573006931 922460931 6329486 673367675 193802569 113153704 742307101 848207350 178814894 876261223 650206582 426976037 612957074 93811407 413960867 761892179 711813493 273480879 409516854 42299246 513619264 467847280 367259705 311393000 304027824 465041093 612725428 964111868 942975139 797235398 485674489 71010323 927344358 389451132 551474351 162979705 875392614 790817920 655802268 595933093 674515413 590084800 707713697 56378267 167081620 941217602 904843241 191242054 236670478 193052563 826676495 522224210 850190911 334709315 346533602 194918663 949660448 446305183 872534273 919909882 897148783 524585919 706881094 241488192 631363535 213378724 831531628 206794169 265284014 214905746 547930692 146564083 862852086 194210271 356676628 579475672 633850661 82745404 994278182 342428193 531705745 830216635 842663571 38939795 734704855 739988956 911444435 621184234 159601750 353799561 684596562 120288516 195826335 930232438 879690797 511593731 28253075 596830136 994666349 827720301 812568155 209034587 667621430 23830975 459421466 704846480 974354417 567432122 250094627 503352681 492330116 361057540 799602526 402398715 122527246 747909832 57563268 283944704 904335598 385494199 89215966 515132541 832551545 283705493 237542835 41706563 631438999 643640320 216152994 503348972 630461575 331472101 638320757 47424849 393977279 98975874 441431609 403864288 386481203 167781098 849345493 507679162 37412114 683470695 932040212 372780920 835497384 89165622 469253387 453281971 756902717 626149589 591865954 721149311 679813871 246383425 706809861 655783619 532184144 524003058 767059268 71327742 508766116 695341485 94366959 49270804 923071697 755144792 983537683 295248313 977354493 556711519 575570679 577247019 206400546 176380133 750879162 150399182 311038357 351595618 816290105 348905560 144784223 961060468 655019491 364705130 934673343 520196770 957675967 70586794 652748921 953202763 321453505 438895308 808359949 443391573 971962827 780406531 63156237 566247372 960698131 801544464 997266538 177158455 660369089 865474946 63669620 344652384 704825080 353462739 512153660 792307912 899118919 429587649 580830943 820782206 664270735 790412652 923996426 558140331 547692523 211970621 124744884 728576300 141176333 355109620 954446511 985781252 818194835 507345993 340013995 208268607 312567832 116005214 760750737 629570904 319413109 703706134 290601908 155943750 242403035 236074350 804437825 361157012 272406827 351886055 990113852 753235176 628959120 586247732 12195896 742625884 729550732 530959618 734878523 521120623 3652172 397547642 753314073 757422779 429555123 292332779 911568882 711219829 957102156 509382520 779161576 161783309 496561448 209607467 905773786 330845820 159494633 711197972 71018198 756303398 17683343 839368575 267581961 801267864 181314694 381167535 641244518 544768720 284335923 268329813 95707904 53737275 859033973 655464980 646457069 266215519 419639597 591372138 829396278 804712827 737937747 59054553 998487277 602948231 238459993 433445130 785311756 920736841 798131084 986865535 666975418 577795331 952589223 819548831 674016546 913606177 323493981 434832934 898889694 53738761 130633290 453606493 494992521 146679886 367809372 293652918 450578920 675209530 871815038 104803981 470728922 614602630 827309427 272750879 664807035 939373443 879311207 634011572 319706555 374226924 528551903 934758502 733061661 760866148 302258555 256031524 178856507 737218179 340707380 322613826 414192420 478472821 275609496 978764484 341201032 803887959 780327912 192358120 566775525 753605438 652992733 816530955 642040561 23186323 566359945 39831879 618358267 616572532 864327063 899332216 119506788 888953769 44783385 695632031 683436869 339324775 254982018 906224933 755336992 467727092 950270746 591715122 95225713 389006293 378116367 372823775 322111235 38664749 512731482 727064658 886761012 748141221 156187311 573348036 971969215 383082458 719963183 913873164 454880210 822142787 680393386 840197213 786770863 487388151 294712978 427615559 960539878 271201679 132367159 614551874 927103862 553894940 696536772 65824740 415126281 592123932 130428032 456555125 50206958 911995444 826305408 732749617 247927068 49266888 143174709 854795189 187002152 687378775 153296887 587529468 83783857 987416823 799823280 591756444 176112027 961048055 872594608 62622830 833213171 65749092 999235312 913850446 328923586 486528786 627793829 401633915 243685784 325769952 808027749 74141198 532816362 873620134 106714884 697187963 594632208 995417929 924485024 4634715 378419581 940462747 922248710 725936246 579676876 988568248 864363819 100588616 914266624 809875291 481233819 147715432 953467428 777080894 217967314 865081759 21118715 658871754 882563512 250565614 992582460 529446079 375989748 899346991 469361582 697716625 524327823 276054210 928227859 797514908 703441291 767190876 691622134 144113573 450198464 313820794 768448709 901361204 354395543 46788102 506412413 588951157 744654370 141842671 501909246 514753991 312887040 29623654 36402935 909560351 1400019 586527790 502139830 178222403 627531491 292304921 280359701 904215390 637259530 823747531 774692087 359157556 691226095 902519239 698840528 975693858 377475452 895691858 955305890 107228112 409310990 92967923 710983140 377153271 920904116 165736859 872299640 84061775 232993198 858914320 574792227 888210137 998087356 261203638 982435569 540909533 874364782 148231528 974042187 398390910 372966768 598123668 34476588 234014320 838696908 495593276 333202367 972501318 825459431 329644867 685749670 866659859 279349566 32970072 641850356 575930964 587189428 332737778 273120172 13363777 229008868 169284562 200107263 54268903 528848165 189818875 188517591 825006483 214394423 677483130 808807897 762805139 989539859 396772194 411578012 715368326 222007059 398076552 434593962 609570148 834524610 244284134 218580303 667115519 126516862 441290466 930939067 328957294 766036443 533692167 172341231 563032435 660907796 897567939 47700676 206895989 226136547 241610691 519309630 980154890 818543166 974110565 523692026 562578711 624626552 740145962 884635728 991032612 868667842 991592162 869057952 706258119 929270301 151476275 318283990 345068831 829479592 47748121 765070063 607412223 857520571 37277365 350155900 671213887 863214711 175043789 426940618 375915565 232353370 777238844 956710947 31413258 149796868 810595521 223945548 36672585 293345850 13893809 360746552 740063546 365411402 774924565 244558397 620785259 882417548 774105487 624575911 914526110 814787809 319024090 96235160 969966555 251823498 849629843 623900506 61237379 884157013 634403514 574559290 903287421 276347933 910718405 498777742 178968765 88013735 129494210 203358281 898103915 608660251 794384738 816225393 145287115 256937974 957694050 881083516 163765158 308363591 696302115 834878948 398525613 164525341 390319273 845720087 269031800 784061737 898621406 465587501 249368276 277905428 61831984 655803374 444835455 577797847 703334505 953567883 677644756 483394556 12916234 775767305 518108776 139066007 117644327 374132575 195708136 882229071 909327799 590493977 120196169 34630443 502861819 452644970 153289578 485272851 982814438 831018064 379937348 304392459 355931075 564695256 937496326 206312064 960255228 715939447 316952099 14436274 402498640 69305788 395316672 318440797 953586510 419581556 962124964 514111798 30850031 274510392 629903222 224135932 711844223 363879977 764384969 578156769 104145022 312278564 617096607 858390340 703751737 880093452 642126179 348603576 837337928 37089141 983196088 159228460 820971550 313882461 661159729 26831374 664513159 212858266 673433490 619226190 753866069 22506542 846934598 359716253 168460310 332816110 567807868 139322540 338860923 253739667 300110830 616956448 581031648 751149273 392793631 919689546 893766489 574894499 632135981 137453042 243710715 722612181 131467090 660181269 957231221 671918463 781920744 879994604 140162141 827758088 494715137 654165535 219535447 316485425 402057082 514667332 921173503 219215514 502652074 239935095 177383409 170054127 127911526 965433572 753288242 797961532 203428516 526898311 128184202 566973971 982025029 668010038 528812417 379861323 686745247 148022836 902841533 806275975 963229896 713780932 997540786 759442464 935148797 889307059 699247946 696208612 719174513 736418588 970535279 660497079 185535796 959867241 587884468 591613855 80419599 705743353 206056448 66942027 763559284 54697761 121163664 512284470 567336556 350690159 65475887 794436991 755441202 573901784 485714861 650301824 821874977 865578568 672435761 162344300 362106711 555925411 930644125 313819308 496696858 736296995 983662045 597258129 641969433 13427493 567796636 136940997 463017412 719696429 676304541 316620857 387035397 487546260 26877860 972357163 281170749 273868295 43771389 648879471 973115167 164175886 248040800 473074365 481501940 643402263 404760632 75300461 619303646 758673743 466171213 459656954 868833001 970598101 656462554 173765210 455651069 648844969 803227804 501982602 509107481 273291328 150814567 30528947 316890414 265705788 41667712 909762496 869485674 133690400 187803134 634464031 687645618 726970302 655095929 55356349 379640551 377433257 177135311 212600661 960756960 631483054 8609222 796838599 521462475 895819781 744659566 802573939 855196272 50695783 434080496 183520970 269234958 30284436 232680209 918588024 932006369 844010830 653262121 534618757 144413885 646868915 920375692 692694170 650485301 564528613 266905789 202144380 753276739 864766729 693420776 482041082 548118960 875517719 209527026 307998152 68569963 603608516 230575498 589560119 433742278 771187898 686948487 828111086 980977754 609431146 467207166 446741458 589589630 712274087 477801255 952404025 363851086 939800097 61549531 925995784 743868441 951324391 916627580 278406508 29742735 853777256 739130356 301625100 112087716 52512018 214664340 279549385 862455947 771866228 950529759 320901515 84089187 5663447 465256365 763837771 62384213 765890814 892374127 835512627 541606882 180234774 35597601 773074974 144589081 886376846 979136029 853835803 513054958 867124058 338802448 171820404 677289102 989601993 160576190 64701132 227994242 44245618 611783630 118232994 196169565 825743758 895070037 527536853 339086605 201655696 275114920 67472469 881162389 181816206 8344056 383228726 644118979 606090969 717046123 510538454 141473139 349623825 593172665 673333064 225968366 781111426 634661548 135760871 42793872 290298005 413157095 210730711 130374868 940406114 247663161 736910615 20095916 326966088 357864465 323797738 338174349 591264851 800214429 68440049 743337154 754246566 732008244 883903670 376427234 222816279 878495217 78271449 338965456 714808987 694001057 222504711 132781367 650444146 793156937 762684100 817641075 690432858 102503086 267972892 334299520 813052805 542171979 314967858 82372911 986569774 239101619 368582547 177721609 456823378 740677433 358455508 26534169 142671496 288130075 557119579 664902278 190718665 739761788 304655543 207776205 914472032 686303656 182145111 196093574 964370249 459706975 226162850 45600126 361106057 468722944 514546643 997468120 1323120 69454818 877260147 956578192 594161935 566175793 406027559 820148195 719280860 985360484 791913406 74671811 594257254 711214589 908216341 427917199 970338828 434178583 912372895 778685000 656068704 859063483 217876563 751006039 711080418 293738271 793946977 131954834 893089735 67677949 409989643 96299985 903783969 20986792 501298028 922555130 981730512 64177451 952596609 616709036 849842703 24980907 440450301 71898065 520452890 169374702 545825026 996979427 625201278 568281389 187789178 948974082 151259737 876724436 484517847 264945690 921322524 697562941 756622040 693694027 750182126 460001225 56652261 874787991 912510400 758841683 941686247 769608899 180137375 597475618 680739968 402120749 844492188 276249344 189512131 348171302 112058686 651164142 727767151 175797964 783958050 218884125 563874980 117671607 918962571 438080044 693209471 74857082 882785268 562809691 540087896 907832391 920647584 43998186 740696717 833156545 375180764 62982805 100499740 276005309 877291147 538822711 388889479 872674055 563377136 109391348 857739209 547556112 718193120 616218382 66147707 625532205 57918019 861282020 911528860 662836143 242411725 962321903 837177339 868813526 921067456 749378176 171523953 267040583 330961667 720880384 976930259 691872603 340780685 199264785 873347309 908371876 619405455 705610777 630911179 755080174 643398215 467528778 43650066 794107776 712315843 327059692 718523215 434688003 405485800 896858199 676298336 749092375 772543728 399793787 127163715 354359439 876588279 755859365 13545069 392551939 705346012 648155567 764072751 929559821 787969291 172854490 236163287 629833330 686387055 62667854 999752678 949763260 557588044 43349378 728927594 418865913 241883085 287085894 480240427 182397709 160454064 782208382 983098918 663662126 99003767 102721433 251811328 267080929 464865272 445443536 755444319 662242367 427914315 289175906 468134858 524970908 158009460 544443174 269826961 713434292 187086232 148289842 955807192 143925844 450536986 474033620 915474054 907328324 149860892 30689454 393381473 592664945 323605995 570922816 287889481 379336003 659078424 607017726 82235566 658820112 657665220 799850829 538901797 567974728 570522884 515755641 216411717 983490457 818356280 460900779 449081922 160160580 352725145 269394314 490338876 108660653 639060677 875811667 649284341 589036804 343095819 216355092 453506822 80021942 940192090 591600171 878883256 913548399 348226307 981903909 149163827 612361359 319483921 852263692 551403775 561234838 422692478 29904983 758713570 776689149 489206963 365547108 132503659 589031589 775168138 498712068 839652641 508588535 188839999 689244823 719147320 110341267 921099207 694894709 930056024 511910548 997451352 553227867 182642882 88928741 698616362 63970999 134759054 924739666 131098025 822836010 681256546 208764785 653371825 644466847 329953784 655846882 461375190 887660483 928935221 951736034 227085257 387111769 807913100 776534612 640030691 356372936 311007733 871647042 524362280 19409213 944513790 512342319 424080462 403421875 261157049 371503109 932329003 453746230 547414458 957254949 225941552 662528167 750018096 330419937 22590886 526745535 53773025 798365366 23773796 404021500 297755835 18482680 134931879 688792108 384060669 756113943 623640237 71776845 591870053 755859138 212714519 596427345 409642450 209955570 49729094 666939700 905474172 411312072 280497765 589326445 252600537 809292833 776460759 179942417 463331088 968024890 359448799 551903459 257427651 821839136 329675901 949724857 887975075 116544599 38023154 926280070 355872094 579159955 551454742 813523723 986632203 508413436 112792541 608987833 950447234 226141630 493093315 868457385 886889743 686038755 98188648 196367716 91300181 671032126 370430027 950176 630910612 733034725 537046008 187754569 162077828 803342107 328595388 487232437 986779165 882528554 286249233 419699251 691981734 243233277 403894821 60553208 712929373 346155631 559045231 364112089 440149416 785258642 398761524 63723625 153931845 295311042 952328892 52304172 762110995 258797320 17800064 221489991 394255003 994302204 577026553 805178941 112737938 661203096 168151388 407287146 560933935 743341880 806440378 829413333 230619777 617215471 407172904 224152057 92528822 285481526 31400142 585651063 465428348 77459564 993263475 934648370 59831239 462157406 240428145 39351080 105393746 241391634 552444815 968287619 653899666 383124907 682014927 142952143 26310907 559097428 616616607 449853449 173287711 95829607 104827121 432152170 502702515 310352927 786051850 37969483 494087089 834785296 777952534 974449339 428216765 45296226 23448863 904640844 901702209 657584657 586065952 205871347 337810109 54714584 502825465 901549456 413277876 778662586 37299342 733027707 835067932 853607983 824610896 589898023 655307000 848960132 265755622 854216050 889252287 431849028 288918772 912340702 504911108 113051800 204094514 35257814 397419309 851080821 511860806 498095390 11667886 206482955 294006151 335965627 71883551 770705789 476109716 832004981 300770763 988874946 265516616 279934533 577401880 610008028 892556737 282930702 283448349 792144698 397554880 44578088 711694997 995381307 664900854 536277446 232106843 94740098 318513441 41551418 774378117 452476548 552097601 931616593 902780482 956743315 447477884 709818325 840257596 26268628 653459573 503610035 111660140 403940465 919357784 842344329 271547981 338977891 943804691 359296980 426018211 717381773 218992658 333693371 278637000 600261644 877848847 670042177 769133012 936975139 958527220 278509208 340169124 173379304 694663494 21057168 918029992 584928816 538402093 765214465 952586384 383183094 567386023 6367372 422327599 6566966 365161211 321672269 790224854 290968847 868201564 218588424 661204413 466417162 360660580 375072947 997883762 143661118 562930359 479910111 329993650 857613266 36467092 966778829 872250574 607315687 543293327 822720529 497877775 736739989 315060632 314255248 301288706 226798462 122135300 674609940 739953021 764527400 319122249 553131821 328411733 630467912 959702408 818527390 880200474 285986419 951249909 388675172 850787011 493360063 218570501 722159699 108091945 683980157 664212964 537610738 242508757 626160064 313226218 826348228 727784511 384548212 839416147 845506638 82707675 760258525 480553294 613696872 261916220 488447043 194171221 983184162 581885658 751128043 434511063 602821732 7473400 418204278 794945502 78655008 706828829 254492469 26027249 94364200 820969980 845073267 547484833 583949540 548743825 618127823 53321932 490697244 865500276 840893722 34763114 752256845 819075317 819031364 858762484 362226473 229088152 867379609 117276486 196614637 194070490 644106973 422538236 962805376 30296380 196335680 742591837 446966611 204427275 860838850 708390815 813652834 97315208 950985221 994601814 18309742 986915158 403181556 429988994 441024326 406153306 305040224 677386926 575932362 554541752 486613934 167839064 885363145 858051344 816289947 926827191 458327296 956400101 557611377 705548822 31863737 83982321 642341787 900086022 273155181 448638502 713655107 31301524 809387116 205483311 753435903 890763614 538960727 113231865 11465643 553425958 715969562 457778767 684979650 595929423 603492521 875872848 661942708 533444340 973711033 726506847 859546710 669558625 360409294 610143286 535295812 247713035 735097964 652431898 7953604 97138386 250404019 560208381 647046664 943741322 221814655 791779398 432034530 393627692 126633874 513438147 275929048 476964323 398300149 831413629 948093243 533558360 943690595 224565619 642055458 761404507 156960713 625707641 374930853 137819934 447475340 597349952 285450300 72709223 28305042 771508940 370286852 239795341 309389121 754697363 305983546 720802588 824616066 378771856 376310775 196213886 418859478 112921658 383297602 693995719 529958027 89699533 916258971 446829759 950600065 612921375 671575019 984743577 397190785 104423713 74425556 627371187 969977537 607783042 800872461 698385626 325268731 771929853 591230856 163987005 285343791 54948278 613878938 248494643 954449804 603346607 258814343 226029400 727121428 654371879 726740092 410012225 419408409 406984382 666936883 499458728 689147292 322475094 36988183 656373481 467509965 202412239 673563617 348898749 393175585 900795431 393440420 576254517 262652223 168693925 96309828 64489452 390354564 859326237 149870768 720595503 177243354 859045685 220067341 423967827 773622344 331051657 15626906 553206443 191852923 730411127 297271436 833014300 128428573 312287223 911590942 654740382 577817604 75361256 353478961 314896253 399205075 746963232 643011153 670951818 153447835 419186859 347887974 400913060 178054651 791915145 105280836 2619572 733631541 32505749 283890948 780060008 473848940 370986077 784072279 80517419 147266557 587318190 948730941 28322319 800616877 175703149 27122348 264304920 468910895 990925743 910163361 519920907 871890541 290532713 257046004 917318023 87167570 379939300 198769157 614352621 141907488 261640410 328246139 715876176 642375893 496915125 843917777 980508130 169133221 605091813 898858981 885933018 63564027 957000213 736830288 557842202 391867341 996276190 846462332 487296426 618035451 130200049 810443642 485848835 521725842 375172587 425522042 889029633 381908632 793046055 625590461 48554219 728518378 158448127 552741412 288633440 110976958 553933842 717216129 501534565 22617867 169820881 681557795 304617679 571197284 206117851 723195107 999833654 552690313 100716706 882338372 500901915 474919763 246020380 980652287 840048250 41747936 381048883 508856663 506256598 749432702 229908399 202079854 767236253 872015636 816034487 851241715 957664126 141900972 795141297 570888731 242707806 449750054 392184467 795441449 905562913 673892402 864601601 760153770 883636128 382289534 597122451 790242429 637288604 6375062 857314460 492552657 649564212 37735012 648066502 354211164 650466233 817194735 908785530 966594135 611709158 94246181 527730466 350585272 555490014 533353505 193369656 856057426 897716394 144667370 45663977 923395367 99637136 74283895 362159650 618986822 992597250 608671653 35924203 463866080 108167677 6525430 39627727 150351169 612005169 593551792 766780751 313391827 531815646 148002223 165156259 924131115 207206506 900176743 597096928 982030158 744732492 481886714 997359270 744793069 755927370 414970431 378410607 63691099 958717967 731605186 425434555 942546680 949388472 196736469 364902525 929500810 851953715 4270424 419557544 120578330 59866133 851002890 938508160 794417561 759226617 522338355 439150920 188743372 262157969 568592344 349871112 372158548 105441550 306534445 454751915 99813305 762891408 732186846 243735628 72526765 341232472 645345355 388702262 995916957 772830674 146829644 921354043 552190923 2889072 308715758 383998932 641556924 132713831 564985685 331281873 244737994 243611232 922367677 290109898 371684338 246797143 692295817 792240404 304393900 566561212 604389535 562239263 688246026 507938492 449736974 968562883 663032241 322105717 978335862 972134039 498651659 575122088 224654106 960686567 927344189 411929496 14877043 436179150 55460082 254968351 986605200 827245349 579981703 584888981 86808983 304394534 696309479 887212385 310801530 318343992 384865217 439100827 761736873 504974311 455545083 917499350 55000165 680911199 588881613 972198877 505519772 229533880 882795343 489455229 695690135 641167105 238564712 750184043 569298509 222441379 253056775 408573908 161657030 368929855 217487060 656058423 26567312 276771917 964077109 249645043 42808084 886350755 987868795 925038924 884345201 590612545 492039081 944512200 910624498 258252292 184289382 387643970 745655991 198731912 910627004 654686530 298391872 618185086 523221249 110259163 541965187 11178846 960396863 560034646 850129775 611741325 424631359 120719152 84838134 172383104 646921688 812550826 780709724 31861438 67355175 386737675 601616489 174660299 252537095 179936695 287216859 713974517 268173856 972434066 465466883 782826473 378670376 940570539 741226834 714810832 319216244 38660229 54816765 586849852 325048480 578284538 447627837 770731634 458754141 913921563 33972004 452012292 933134578 432815610 248128824 480439697 607670527 487691297 629719375 262797353 828744932 333396405 743263589 483693162 332727452 670633946 318001316 379058111 429336371 862289983 244451474 628372422 703480110 133363974 476636802 853471642 466413552 279714302 404792168 720540439 301573944 740369881 168545046 752232688 78616402 502295027 533706645 908776297 616341945 843796993 350217874 290939895 199330300 927953079 9387274 214604504 541269128 847674680 689017983 952075346 458795587 119772853 243227731 645978977 587473146 235236355 775147119 759071777 224572423 18388857 8496362 435320956 566590883 825953546 256068115 863303080 585597679 278860169 199969707 596946096 786152415 304059739 777820706 814534138 427819867 258311099 283984606 11067375 417334129 260828311 708969579 956168200 104708767 672732624 449230324 860849165 888723690 218996669 706499158 672723692 633276557 516152686 947992299 291899986 42861376 585805533 715975972 849406482 958410577 497084697 288452738 178771424 683089766 252639629 192654859 238247487 333855812 490900675 873555096 846989265 728933440 382932631 401769688 144617350 469157605 577538788 730305220 851325345 477238896 504207523 311218542 21252478 19586252 586278519 567290695 150746821 671605387 684658106 738802845 271056363 563067505 973570758 780503669 307932864 368687031 109373091 268645247 927647533 398884343 126790218 272397814 408594590 471391779 52946935 736119357 368986058 317923360 536640885 65392077 457972300 520290540 374422292 368685153 514447053 947950567 838588082 116779892 346453575 752880710 964337585 292550959 507288893 237477073 338365425 310633330 55143364 454414148 387594187 119997134 854818666 126943571 552301948 245024283 840522127 646988813 945968117 523166979 328806412 717079181 88193693 918778821 688260762 374056937 309342592 173804057 123737717 768469137 693308538 15482261 924400470 646398561 790162668 280910920 706400116 64372368 525382038 536302533 262054112 247807426 29196156 555652721 809696419 650042523 449670411 564987948 924943877 161375119 245434437 221226820 46483796 615609097 253492313 867368447 548323806 552731000 990053718 114555149 998395700 532425931 429692706 856964199 539720073 7392774 52217382 609045852 116379004 612139206 955495630 458572929 637556352 243112063 736157004 495485769 437916139 862311038 541396670 234264793 144185329 130784852 820808454 978860745 323827480 936358075 403513185 405407605 9986731 284139542 510952478 558983780 272003204 737736818 770413283 131850018 414334611 753223054 376988215 244948025 211322648 391048107 146930407 41095431 703126873 469888852 518159033 955166836 683049086 742473068 796387365 835850331 714489691 315058233 989959645 573449374 819037328 445068664 490680688 985199361 390851753 806779402 570286653 890784845 27820710 543034689 160310660 153501554 192331357 523802889 42311647 834525950 849415010 492237249 105245617 839525032 522141490 551607415 643814810 453535291 699293449 475140705 436605654 121241378 289097815 529372256 18987988 570173667 328953549 594972532 508490166 204290525 992101186 469878875 51990655 22280417 524432054 763343353 92525572 278166354 739690359 939962933 800324568 979372122 225369035 833298582 468283409 90088357 834735859 338325457 792195771 723641615 869182810 589353391 361966341 657242188 782421877 730560058 71537573 938901898 375887516 525690129 340722900 481577173 13852814 969482124 930565383 129332736 693142701 339695820 221595073 698578188 532154093 262093196 95383886 305918679 194778221 175852903 830992583 312929913 15459007 11110862 286170262 400525820 573518166 258303261 797120282 106017955 450338724 173392061 605623798 265272457 673466345 850011739 90360216 232760713 58150395 31298805 144143102 461102362 942679218 618698652 675291544 503420414 141313139 457572042 881668598 251001451 858247274 743467199 434364239 400097506 248542877 683036770 173328363 755887165 917037390 77290109 372569364 723579347 14315115 215432908 292954307 23300735 861159345 609953085 633559771 698278306 68745871 411673660 323120429 140085847 71586633 766840934 24917575 763628086 961008136 165752826 398184161 681118438 430598562 910504004 184147881 837363292 932440016 769333408 864605061 964166635 317070093 922059123 537374387 665241083 854981886 984078144 950583786 554642209 708936604 365359024 791849373 548168647 43433861 793085014 387375910 45232940 501634800 354586269 575001190 659635764 501582292 72350242 99230022 699229113 977410116 206805808 320312105 335911897 717160759 878354057 421607045 328511877 188754710 588740549 278183187 931510967 977134903 297354597 171190771 504696801 219232025 351655899 698732678 353188849 798881229 664552287 459945883 330276266 693307928 464282604 696640911 61153103 503596766 377181333 555713135 893193125 301314401 857077742 384310676 429118551 757703703 647456929 835458244 787954183 108474218 635804648 704250118 402112892 637537959 90394826 591195596 834330843 3855051 509638284 933643514 144185846 246674436 507633564 995073015 676980385 30248840 155914514 339180276 483644118 901462409 116871058 142688247 63481625 128853649 951737815 92136033 72034161 885187136 726704534 821668445 589497702 810782744 510122574 521429617 953865527 57378669 787896460 521105207 896006122 427559350 35600178 705948539 240487770 360041188 644463752 211472003 324749199 385299346 895183926 376752017 191456084 242420304 392361428 326754557 739784692 46511642 920681588 753375005 152621751 313558367 171265496 895311513 606968383 702945730 987128503 253347255 150282868 313056618 954187892 496592576 807508926 986754695 560038529 611642656 977968011 620309833 455919132 566415972 868780609 568112175 630511662 96100556 618816088 869464364 460418455 387430670 87681589 901571885 935134969 390879714 383588309 52712635 855438664 108841309 263486926 514567566 787382023 843365383 469053815 864383316 834206744 437057021 733143046 803410887 270406178 938410750 161887053 611409534 129943808 913747025 793724649 907463399 804289539 212314140 430332766 199222473 359335568 869006304 581034917 254014029 570404661 467685 799742618 666558113 124951269 844462667 439895428 564717970 756445419 279873258 684575026 644855241 501491512 331500352 876480156 260038704 730912715 822863354 709392577 898189202 492418951 310144367 945656727 951100467 546316132 80552277 892273799 18386948 617530862 575203560 409226591 124992695 202821961 54217534 872899410 230398566 599726810 469409929 446016589 431532202 522456094 583152885 159879182 855971455 998915755 369051585 824078172 585828587 614618254 671601229 706403445 152202419 642428457 318618697 242299542 197163393 517138179 547239858 816034576 892962882 411992166 270524389 64169355 457960426 127292909 229736744 142767640 844551350 668566061 549807885 761429309 95777336 974881758 10139629 835579802 573305204 517982746 56752918 917531438 568103000 65654399 907998188 356218 605826058 970132956 630617038 129095660 765693595 840803388 404660855 420097645 759537958 971786932 363147649 833348332 925648717 910831501 421475222 341751065 539117927 260465190 386987122 315011852 755565733 132232749 97685917 564535807 67803909 624130023 639098414 433441318 931137760 43659071 174243361 424973254 544713291 895787934 299579841 211391621 202127190 544654444 964191777 623750830 262401863 205151939 184195064 229863666 97165989 292299353 602049832 133924051 537476312 710969453 358071892 894851043 193667755 116056795 840419506 520568724 82007061 20233411 598767621 575733234 107049450 227095238 804026632 853705148 171570699 863231513 379022531 427042632 182209560 776923414 437495859 330013047 398591850 419336339 670429501 521563265 409935615 181753557 813708519 816705487 745965571 225162453 163381328 224050368 229676550 78701869 165103461 146441941 954204999 763686084 932303731 128447064 291568887 854372054 329780210 76316531 64297286 48604183 961976064 41051446 321912251 543372258 9303947 971816527 293814897 782289714 78377663 125851275 430804634 857483589 364135792 54229213 354472569 342486416 398490503 867655938 106786272 973923528 137967735 410550888 498818593 438694677 747634089 115361668 624089085 899465642 280482247 388376451 194459115 485850498 205975825 280877587 680334711 234511458 827501691 16403925 758784330 539445694 128804457 478211763 927283921 924635915 672248662 21177312 368605077 893381372 62726503 999887567 855031450 620212784 804982476 448076696 749231911 31286923 271028370 845861802 872484693 995759465 2006664 199758438 387653722 724465610 879869514 768669348 883078459 423831197 180579428 543345705 456414434 785835657 519154006 539372294 900467288 27496741 255995065 359332514 439259818 65868950 149467281 472400424 160480840 66686594 905979377 946095796 43767046 621862023 344869380 547385284 799600195 784996458 931177122 807507268 860262979 483209575 516565853 442169428 825740185 156920749 232582118 839458889 605532612 489786407 315756831 181685287 337112337 352195131 711652458 762879271 782812560 767516183 686455808 44993649 631166375 776019667 695231888 162159815 364491761 75351733 261710312 601530617 206414827 423114073 33681047 357730194 437408119 515861359 947528523 935828119 881515637 545557135 6772350 586908545 312653180 221936588 302661241 704158546 729507915 190650250 584500725 557578678 216506555 784212876 116956001 667721479 281739123 688451349 218259897 404888120 828554309 269250098 699431928 957423375 716535247 567007497 851514719 162023680 141727093 890515955 87464394 990451230 956598718 494517838 481358204 763836423 905590088 506884269 681767872 504746987 107074807 552760871 20493697 628805917 989730092 631905250 487865204 281889739 675040673 840785487 157568212 906520529 365912770 465862887 216012613 230266659 298168806 268423505 346019267 452993076 143239455 902125237 954570209 66280942 819271540 452292857 629094157 755735129 493416491 668061790 553872890 340794637 28193846 670306817 315874728 609117171 489867923 953777188 294452637 418835655 474915603 852003989 36698906 163491836 991666522 542962191 921885909 45324156 638729991 828703169 163375289 130994029 175773117 923279327 620884514 249263596 492203972 324445730 341314977 503712470 358622587 818607399 582864625 536702159 129985054 630196549 858882732 948497108 337948902 736549422 710773513 856619380 768786846 77330340 107794446 557706982 355845411 763081183 869857675 417946864 902220187 623988563 616815859 508235652 900842716 35645681 688332032 999948654 771326587 366206486 5852320 711044377 785173140 102569128 702192395 328284141 582044182 72276119 830147705 244154405 560547580 677667444 126924787 897296279 699070844 731050160 887862595 774927146 301653259 353811392 548234714 705819061 113461850 20259083 80995047 238963020 288213021 829123916 267677146 963399713 324944356 662144175 690689041 80353516 746288810 168088476 19056905 798371398 587880949 721435573 585226761 339356116 374842455 232503251 272723960 563505103 311074560 330392191 914266266 462738850 590283938 592713610 9205325 745906432 398008828 252092866 142725004 473035331 898041863 855070553 199444699 837217009 603987517 366803407 411653407 133384812 836624304 574793694 562085645 630113492 300415692 140995854 271263178 235224062 595548843 684327997 108563415 5072219 814040203 983958345 750944888 774935260 16528993 231600044 265773128 299050773 597841477 745272525 673558542 124846388 126046069 622191398 355621810 6032455 183930233 57599111 720137507 34491278 453550591 682389024 597649615 428517917 309433519 848320905 916548292 390863302 588737305 909309642 493142508 530894855 34058973 825620356 840571518 712575101 588580291 35529078 517077637 87611772 209088312 605145245 424609008 170192011 189400226 177152786 978651990 593870045 429408154 970522978 839432595 919376549 495285266 329445484 805302936 227957883 6443756 315876106 619306482 712192787 869901288 636034845 780279166 137560645 896409391 952576836 470052155 861953624 559029543 697372016 304625451 410665082 704537602 722429325 807725404 95194949 16480416 384917773 372073021 605398445 849037039 210893235 420052554 443206311 824427389 347634675 525420987 320247079 90456276 690749823 22518303 467834428 184928252 986268137 927830431 248694208 426354065 263545911 6682618 519391027 91118970 800397094 297432966 318762587 630940794 833572561 50870107 472115426 686597555 86986149 92203260 673818640 836122232 836867101 484614327 289634492 73724170 899840982 548389195 645962959 829999433 428009649 168081961 406251066 247829567 465488764 200600873 488827753 350484362 728888078 355974625 101388457 800509668 602342419 46091534 318287410 613952030 724680367 546092081 73235201 857825832 158519600 440913330 952446146 716317070 39194343 899779795 383153646 641247627 470263508 928332857 281873837 245235470 230010389 509827055 702193421 839220115 246154149 283257423 888602556 486000353 248397325 314314395 989975909 463582614 525358746 607812058 896223703 556447052 551666814 567387265 689220317 161182547 422604771 592981004 191044750 227829431 519257091 300179665 743970228 47583438 183902841 893909142 469883662 750141439 881183239 915656420 754880402 686488375 845646315 411475522 93031657 528529594 207647876 129854071 814054791 603292832 908592412 138507974 19364864 672058337 716806924 43272835 59607211 809558830 345631178 822620177 965272583 483620590 133264079 434863304 912106245 70694547 442089524 622484151 602360594 443976619 612760474 372027838 549151719 27653298 96981944 627332996 168988968 328923520 167899971 527191063 87055383 123254078 220140846 21042232 164141671 253290739 292287355 619184714 894865900 348377820 692084357 688867526 478303480 649473470 771135723 335886020 949962391 333609597 761580536 445832427 516012776 998470956 544642749 809338230 988569711 811847189 711483751 665384162 772900118 503899255 497028017 86716044 747821676 921692439 935482295 832473980 230177451 390024332 458116159 556955064 203128426 123830594 712710344 657083818 209949112 894145014 912472693 500728900 64418919 125881063 388163284 704231376 97293134 637446046 200871274 83298843 109878576 570348530 310725529 813899061 465989523 120170013 243002224 626040803 764558097 948280327 540074525 610382953 372427958 359272564 667197031 424691336 642107918 958679054 688395779 344025712 102053106 128862164 108062536 919533851 557967422 145908749 856468408 197355078 970068140 443071382 869687127 813104346 502656350 356936131 966261070 723676644 320222029 561977335 634568993 644139408 450572798 16251119 85240940 259400059 638856649 756267570 306422893 508929997 320520276 28459321 826868901 343976820 800170648 105082616 23594668 720681283 665466974 365195438 328502124 967536662 164485832 977082582 941422741 746833269 839915331 393772166 947937811 261702006 51901199 105840821 953720731 675394908 346960580 543200493 436384999 220960329 18920888 757716903 542877993 104320261 225225975 503685400 757486206 698115686 153299188 319685434 736165624 712040370 358440678 56498541 802388681 795305553 295097576 392159000 757443017 476984936 55463787 301614555 475609138 987022531 134662738 369939975 14129339 331070437 219193259 770677577 625858915 841699339 409430627 655135480 707820847 311154997 2153673 577310301 132024900 890424810 816948849 467445893 344609033 734204914 604890015 648940275 775463217 108158347 99475090 896280775 287144279 910318307 715610294 760106279 67959655 325357295 399305120 751208597 921693457 519639207 70249885 338819578 408590125 516474328 691812592 804311237 973422538 646230337 352501457 348854131 836124333 429534183 664917786 480935246 315047168 597874857 405971922 412499609 83666040 353266982 922092306 451672748 983756706 486720109 612689299 179775185 579989105 870320350 594929441 200152304 22796087 878453698 997660312 322251838 898432072 294971523 76595112 723743780 449028004 81455989 386334646 433225440 651940035 29994793 211182395 664327519 918992294 368024663 42494008 59755076 842794062 827430885 898202768 731343765 322798426 800431823 715886095 138250645 576490038 474495950 26804022 502265313 734292374 61848113 501053858 873992105 972588317 381176043 358087663 675145507 703438349 221443136 264212653 922188958 495140816 437950376 606613771 528769632 132960750 780306152 674369894 844122556 200524269 10092514 928448773 252731305 465802312 437533866 90481009 680467351 165891170 504330351 75142733 382229891 162363083 396677987 609661672 643145103 223777055 237477506 362354867 21403004 635397474 469179433 365407705 52085346 44882784 155034320 222492012 413693268 492659497 380060778 46583136 912380727 405253940 596883762 241500769 539930980 619664343 231538452 165474412 719535941 151468030 226469028 933950822 314011750 837804627 62602137 749110691 30428072 449519547 846612403 107069495 522753608 835384121 304817219 58788964 51700606 141112472 885758616 161880402 827510695 880332984 950937863 615554333 882748554 269782649 249143033 591501542 408699280 544563866 89504082 92990252 904836670 438335370 395998026 636394789 294959574 472517062 840162026 713492132 220181054 483550210 820092419 696905447 48632144 902561626 906896969 163694814 993649010 314383665 860676349 641689 78233592 858949333 807991160 150822206 788117757 77722889 718474888 598374670 415936953 190958626 341026821 165416936 335410858 546432956 534809671 106406234 277142061 665074431 605863329 874566115 569328467 422549642 988885617 793418831 752984864 910579940 269910160 873129411 219362727 885648536 541360833 955411293 873348205 269073655 161972062 917583082 776638124 915525502 450019551 410345213 235604676 744608681 225441376 374726400 70124812 116334377 813595191 701029181 106568711 525633819 640371612 510340991 759838818 526076084 63806637 426757457 606204556 889997103 372969441 527106164 860129584 110865731 14385633 460837467 445209523 513702560 273251869 435770553 600195813 784071425 941287777 455261044 941582324 893417944 333359117 297383538 99317774 767141038 690415763 17965804 697960958 152189424 128865573 842263098 602811557 497095506 671326443 521227047 500770949 719382124 553818835 255687075 892766758 456511604 695273234 331913730 803333018 86790889 685106464 793148778 186467835 499383908 996116570 621771113 996402386 73791040 465435668 196216671 470994829 910858183 868639949 507718671 618095002 120848427 759958457 756949674 254665803 988652289 42147855 831090547 728771611 253178378 944386062 681746713 273630534 42149717 443390443 944976811 941811573 835235706 624121236 299896436 536871734 635566238 208042592 621877015 298165555 115374984 38842316 952613780 727838688 960112029 504560905 340057588 115847069 302594705 307661139 116833421 2317131 585234459 416234645 147868751 827315886 474521787 327044932 347945446 769385208 577892058 525664090 11560019 513373652 727549735 815057855 556287557 797342192 180959969 495780719 602902231 931660881 51134104 236175540 524881803 60220087 854598072 766959419 268975716 757426182 749739973 286739768 275123373 721829040 91682246 15211928 625911477 218124334 685476408 201971537 68516815 489559037 198721233 259005270 144541652 661919612 440546283 75108833 500488242 688423000 937322881 827742584 182216680 697655048 876431386 154954306 225925077 17388947 200335455 336801299 59595078 25557500 413005771 392616323 733347071 939435931 445403814 523083992 135293728 707551495 743608463 796404660 835264771 896769973 930466198 340284177 205628177 84935208 529859660 467688138 463203203 10186308 766010058 641285017 457914536 104603639 472850119 297622770 639980089 484008786 652175974 793293588 985924927 188218705 562686908 266173739 421572545 603281779 425134404 902265205 308745530 562769689 187862681 798324398 751687814 993219142 887679743 887326585 473790151 323769958 805432184 912109234 398758892 832667718 321638907 178194385 913386787 383966179 667132095 678511915 50470916 81670807 926298823 775481491 359008432 908357906 488451943 910844496 857283684 420764571 437051576 953335331 257710556 89012292 95928121 118068674 404536248 995019611 520792 750676208 569483795 380150051 495876142 996551440 391573537 672093842 534477822 694790915 873166549 236974826 382331193 677975454 505192275 36987027 360120591 24822681 858182643 468066993 453884868 707175435 78021270 23561697 241548180 528579846 406912459 187479731 806669390 529725076 441807710 775110767 257280729 214196750 847802618 123110741 715801457 667136031 881967390 911516629 945977771 602616208 189311467 413835167 374521203 371169991 139208631 154836938 909281215 522973311 452952166 782702944 661658164 217732979 700867008 878182679 276343499 326439091 843865359 106311220 555277395 390054395 737796398 321296412 484444130 608028977 689082636 699455433 707078262 415314319 751899255 510821267 357219028 466023545 806869381 56678953 242383188 142596419 864525802 410230086 348962378 798500626 461278810 459051167 702452716 839152081 221573946 584370497 169109556 102173202 817712499 6417277 764505186 89817741 924261756 692447226 48083446 788487922 982553515 678735256 379210553 49321676 374929268 241411054 983741818 111574111 190619660 191464965 624182890 216692698 937206147 448897763 261103863 872633816 659290908 123418272 478753921 868547077 314610400 530500577 827304102 753949883 232464327 590728310 793584278 515733153 408689479 663970785 360645066 932321193 873444004 408182825 617749379 322888282 195469078 20651836 187082145 719387637 361938044 754979131 783499612 790063127 465214205 266268470 638688193 995936743 181846322 948622647 906266715 496449950 565804479 653412853 142700367 235665839 277301004 474176995 321995019 688843354 4191715 977529217 613009310 753353276 439679724 880842142 70591471 173804264 44843548 233649603 756122653 800452588 583615975 446427053 823169338 169698704 42365206 296251800 364670348 279857816 945745438 348700712 123564204 606197901 71767434 943961672 913165436 262744229 246787980 601535088 770683333 374327396 856802046 724354544 333390772 707939063 516402131 365665807 790134922 22500720 93093447 617329818 610997047 327636784 227422735 691969709 828147876 308003581 777753422 200215598 502760486 43641425 738755530 621757142 604770811 147872017 757474369 889967126 921745303 889152821 477959033 171359497 878259952 632103972 544504054 319828413 645102905 414404756 137774648 645387186 847332044 818711064 658601668 413935190 188880701 357099841 324473553 649202459 137975744 820503476 946560355 952589817 815357188 5248420 505735673 58297101 813164723 782702867 984740797 770233002 554428534 363885669 462186365 589932451 806136989 349265695 961578854 700215032 709817199 346487329 70224294 487452561 406886239 379106278 635129514 419539847 269364919 928190068 274934596 58257244 974382632 601991566 843220241 293870856 86797657 955759785 290802724 867179317 645871512 998403361 987424184 792412821 438039595 847841161 290527734 557522211 81598825 192545535 310340414 742967678 310212472 947769009 544037072 945440851 315049185 251612942 885072463 713836982 74713817 398830835 475338386 187826220 331217880 19692627 964992632 609031623 187056342 742403930 22699913 587746849 988774745 757933303 347947170 610259044 980027005 29611070 348540006 884063745 178119276 540628972 339222015 666052489 882077455 722931969 867846622 897208100 247851596 208240280 841889094 236082558 490403550 547789678 29331985 486225985 48918997 503127579 552407817 339297010 82101717 185608775 624412630 349751904 932970950 207458379 169064765 744262490 463480951 751332504 141518295 82068949 172081053 49101617 434673543 242210982 124605671 80864650 735760937 750176373 863433851 234823297 783793776 813685541 1738094 267280166 799374918 727670113 230887363 40576392 923525114 163066731 647242995 770900660 974439963 588128626 778561575 161229321 641904562 837681711 152238924 720162963 859863654 113999230 469192318 749483303 254547373 987228487 180130717 915077361 959693224 481394884 565299611 230876762 207441460 284250273 290249702 689875078 806969778 911510222 188026596 868377636 341380444 567206787 529738420 883284458 192147360 428053386 482865750 130773725 840780074 141269132 480633313 296140844 699284993 451971258 185021100 662202579 104719766 592979231 273792358 116553311 512876771 374485158 332941327 898552559 990476232 764797920 738088836 236725479 597474435 757329919 859699131 119043950 933953153 723397209 739849036 763499054 694064891 543596498 313409531 658618820 768742920 508045249 77177809 822391975 370871207 261026431 849598432 215571987 422652371 346141525 914114261 713960734 670365759 422042880 772807623 467350266 225838437 964102143 319971413 360353250 828600119 905983633 515331076 874950448 65916440 909092861 761869335 151870793 443059373 281949898 934244507 274506905 129943269 745336448 563065386 536530570 818686498 21036437 11807605 462319200 841966346 989787083 331217593 570801689 194770091 159539110 330517901 732766899 963484028 564791527 727873811 487954547 541306513 95470454 974182901 266405560 295625758 18159279 241028936 953345167 9782479 335337756 185517382 993484953 909373353 502154506 747110197 537365922 425250081 149703006 794794909 10046619 549219153 640759841 953246996 424981536 662117690 504124298 480442053 115345295 814177694 965961801 340507502 800524650 774836330 766767771 498900405 497014608 547556367 283534671 772566760 68511714 673604903 943999721 363867430 772124718 311327727 729189731 308508396 756489496 804209371 922091235 569687875 323798172 91822628 432650873 833642189 317345049 807355269 941327901 808758332 376657177 623345397 299002888 559900543 582433468 36113695 555655644 766839544 685921225 83651300 205975481 887843938 246916320 659522274 269103009 913227415 945985757 703826275 83176558 236471488 265442152 365100429 869018248 73303649 1076552 240647443 45393743 181927214 987562012 616020126 578575294 774827791 249902409 881320921 835786240 710591530 524217562 694605958 415890905 850836328 935037372 76034077 94543869 721992047 831643078 83921413 612425449 59128881 756896636 579879848 351498224 157157189 134238837 676467981 138399682 955283487 285154720 892570324 391524304 963020786 264772159 586123279 4844965 489132335 783181753 118212019 850515218 875063013 571379310 313398712 919410068 944278847 450315761 466447562 673661821 2625774 169244863 50106621 35992476 916645858 407355918 211698574 599588629 335629299 649516621 722047566 906466405 229863972 207227531 597624167 429802408 965489770 528095641 590303713 976382213 602917586 521148367 169398509 968373445 276844688 432750578 938602675 325211059 713784982 172480437 903186512 636269803 228541937 786590125 678920466 711348726 573159399 776151782 295163956 861910996 348899299 831339519 657247516 803549969 477724854 940561045 594781879 334831054 526966055 887181582 138552755 40391098 366749764 432794230 963006289 635180005 120638945 442996734 127895951 476571686 738590973 785431071 737075740 595614570 471213981 400679415 273519733 820095998 912901584 917109086 343953959 599362240 533102578 596413572 64587124 214517351 92394714 939486422 294632204 918022336 719773273 298787229 646606113 41386936 416679298 911869686 71675170 928814728 141725205 839379403 404963797 128818775 550010524 87141419 688967234 295223723 875002816 25858969 859451207 201576278 713299991 11722758 651089991 198985862 702722113 96450015 628792087 585029387 807126527 785560326 914464754 388425335 182520682 926200411 649769743 599342363 584596866 605395 357582378 62695763 162659617 513451661 611753311 183278505 172513067 168148079 210241301 177019328 942053019 249667295 536478901 274094623 947686850 91561991 132002736 185286855 995794049 460575451 345498514 727368445 108181356 5927845 81682220 592804930 535925870 311494324 886384217 149904722 987436906 630871495 169377493 851413813 136189980 946206528 375674303 303387141 854518935 399776377 890591509 291301135 582891161 300676080 644566359 877558625 281740188 466241111 441781440 11206295 957885342 538680406 213151496 280295378 549912236 750778665 300624073 904825974 83176402 844355749 275294341 407579692 833989445 450418659 577954845 322631098 810730476 22252459 988629818 956510673 656890121 634609259 120784215 677998473 378687963 155303404 212410323 188955 256559840 451842341 545278150 969954635 270548347 31252177 958263579 955537997 855460853 443932485 164024770 61467580 400111340 761248164 485845750 949777189 175692642 906727623 766162748 554736772 806832530 358408232 631760634 155002498 438979331 592828497 973274502 751182562 42873720 26928884 608967824 187885449 948254776 639055097 910966188 457037333 193136782 818611342 269358271 549221926 662339620 678827655 567014075 609274179 440028113 247099592 570068790 580498731 81169196 513354686 210176833 722618874 554890648 668884767 98583875 357169616 481678373 960817169 236075681 731816438 7065223 989322156 975601616 537695936 537889556 79454674 970954877 63626682 77176590 342211335 912410666 484440133 580315083 56066826 925656854 439256899 889443140 995509606 231067788 192643744 644557571 159250002 18290299 815616576 464132074 988850365 387456377 710909903 30146939 217569680 43469908 483210957 364655913 323772201 956247554 929461297 549593555 86032362 70584185 115091872 403544431 653574369 219470243 888673159 625125016 808194177 999552344 139574378 518306946 318021718 531479219 353945658 494394108 630440285 441412629 800841316 267423120 532307453 622220149 382393510 791418289 881513971 997288116 490203871 703928989 163356837 247540873 653177619 591362331 876783368 975629098 820477753 480564903 170149376 618220927 875805783 891286613 472349860 786232043 85634872 44309880 558721188 547621597 861057169 740740828 592304798 532528943 833618881 358114416 699640473 854557142 252756849 457323735 321433742 511845997 12475796 539306294 261847620 121588032 773038684 721291313 30771010 280060210 447575794 242624615 693432599 819861302 489599619 887905480 839949357 932207330 170849504 250608819 182860319 7773144 406855547 309640081 311112276 408253756 409576864 681534224 133973608 300290899 103625480 684487079 213680714 588908379 485557627 708483181 90488906 861261959 749048149 675616921 43524294 855313855 726492030 42620478 108733278 83531337 556555060 793365043 412910594 532751798 599171577 297404517 400369144 100879902 913384654 423049864 334539964 724542029 792949 613346445 365696407 770241272 926081254 393860087 424431735 333697464 612218281 967046863 284292227 943772711 495807625 120124886 556492417 204363090 499521402 744833047 82503717 562736444 794363874 816245421 717605427 48508666 605302030 198107830 590824718 581699374 360427330 916722823 941560720 135712162 907790712 945467687 131440622 972019400 936235952 300635965 156313076 381272834 712000012 225591100 346027583 526298400 621046104 856700451 852374176 246796470 257563506 787012278 6647843 982922635 146990696 150593097 297765949 40367895 983507728 777630187 528824183 634776664 755903583 553694330 553344467 642407206 402029834 279610518 472037732 677037197 418783682 930778841 612331207 584179194 796024244 492442282 371064544 224649047 142377715 855004063 420877031 838758853 735492449 26874401 823226965 666432609 849673159 426494173 745741293 612643603 538574449 971273432 128499869 831290734 275089647 129820155 997657044 630778858 220550191 18463946 743373057 790045235 396512441 500132241 190767892 88136153 639385531 587650713 39218444 337726658 548247389 972068291 258193803 614418614 980188937 153641789 374989171 950445741 527961558 387592903 292274752 260648259 23749495 419668824 133616007 366445482 669745339 413271161 944382260 392691456 405798290 642856854 389929482 378430869 44469971 521181727 109413309 864924799 803000703 540469954 482115071 16738363 591796495 566201855 209300431 736989502 190796772 98505604 80670358 590023612 698851066 640201059 622324072 340323839 928648504 197871576 428157893 938033220 298829268 275362098 210081475 951390582 983088527 196933963 286364783 156973928 560512905 415792587 86310714 423127738 489455972 353757633 874884368 943347610 851799322 385875973 940138657 675862198 454713353 836959895 475512012 373398545 735478765 107706051 208156660 316078297 657269604 202079981 512714174 754522010 776762656 461362908 594084159 267622675 768038437 740416625 533205105 672160386 705862059 492633421 30986414 837976345 117200737 673182750 294250523 407056995 565633057 772391973 919957479 786891656 491888677 662526301 436494838 726242258 883744814 833249036 313110459 628818432 929790194 711803763 149892445 796825035 528067775 143988336 730177937 746984034 459059815 208913168 480121171 651822885 120648678 355960731 17941242 172372287 781806997 385399989 257515660 929120712 709213711 795501767 52729943 274096677 164507450 906955214 492345515 150891458 225947652 369342285 772430571 67560490 975371376 166683581 703951782 754749703 982984814 663133045 919497112 711737518 878482017 271038774 939271373 125635134 846979941 500379842 886896272 158520535 221313816 769159998 146524918 209398558 751865537 521206440 428788121 98026297 303674845 701089960 222203076 567080089 568072405 718239153 953706657 715838789 430268602 694079064 306653577 634301593 60474826 180991384 905768932 277978763 417254718 845843531 252323814 850292798 512552459 663890073 257168653 661742550 374425239 646837434 44826430 990666430 330444797 776943294 862065342 135673482 210400164 400338291 448046061 893098815 441686773 335385872 151173747 463117196 227232667 534199696 411529222 835426034 948799278 298099138 239692316 214596494 913882829 6542565 10837036 73266541 786905658 925962674 882085053 237510606 688295705 467023836 313881164 948938772 46087386 600692710 235597257 143132404 821932209 825112920 264365381 773162238 634770662 426123564 711187381 192584579 628136633 36349022 824061851 260828930 911140044 570392286 230482456 265622094 342684175 614337360 772470077 230905175 622923745 900241891 665083680 661914386 151974418 49109052 689241187 292699776 482648827 843123652 592666348 316613363 2383625 980875122 398448460 623295921 731298182 148355134 709793258 48562199 758231721 21575630 567617699 943891293 582139087 272782200 570138244 360614193 343188467 811306843 208028524 930213720 488363968 847592895 818513542 860440362 82392738 885904070 691873454 746317066 349868793 489681186 223095840 46631744 243128263 761436600 612069478 593727098 742943439 144329394 612631392 735158777 984981973 37467813 407091992 311815732 742936554 335696409 842033286 958139182 376433230 244921244 977000230 302746657 303418383 136617843 245701866 487163613 568961325 769941883 845219974 906693711 837422747 522625068 668221991 299216611 337401754 201917801 797166550 589157781 994574879 783007799 78678409 882523872 438817978 409768876 929697423 280867784 457149966 62431903 538938965 442916327 293971502 22494802 610566649 80252561 260804083 680289153 310826015 651681131 496931708 298814109 581082929 248598704 268379540 223369791 470600518 924407259 892913798 938651315 216744462 181258937 798759592 581714921 490884 257071053 152716816 295742283 373740669 244611983 288865458 768749860 609606833 614360868 692290693 118647467 567225294 527444729 958127119 813460380 388962703 762701282 678452666 714088568 483951952 713838626 705774299 418859712 678495029 924208169 445065287 845828504 438124527 218276166 806801198 621322422 392345287 339067306 756449528 77399636 998634455 274124444 826354633 39120759 593394277 408888191 272317491 931709786 855525579 514840469 886097520 343502179 520177377 919254930 879735771 228906035 818484344 440543840 12542484 410600836 803890382 273699131 917939188 44042975 123922305 309366419 468352409 669000726 921684047 296414370 472029786 391687582 992557446 342917394 69542678 819048636 833173968 861296056 140223015 716402511 859382334 392341962 547486716 271480138 230345657 855973248 689043660 524399276 35534926 174824151 893172048 216047715 599199569 179456185 172018596 578301628 888904143 243261813 342662971 620096623 621915633 617292507 686807303 93390323 946465756 227128972 654230439 748597204 208359754 679812875 754827384 263435121 140044190 383311669 479322778 225248907 198727060 860202035 835413422 364013375 875873291 50090287 813543943 434348927 259346552 915111093 197952390 765316702 528620326 812273253 843339582 197623436 829713994 829094071 836331809 313475114 317682387 74418628 246668131 363209639 324366243 215847911 406821591 736115485 933484054 576182213 783583139 465511773 184322624 568482935 330754201 41406614 112546128 512635798 381419258 942587917 784523414 684411727 16226103 881488416 799211469 13084204 36777982 933195586 471104580 981308638 310950773 46755389 658432263 628152679 242887719 28090283 391941494 833219966 790698449 233770635 32956015 663093685 655896130 821734239 715530949 331092569 136649399 260108995 110466469 702776389 396803489 312640258 606031674 980759439 896551353 722581130 832599220 234479433 673793667 920072486 762595836 517002203 534684563 98993564 246989983 381997534 603057056 853951739 169784868 71199048 77417066 720014683 398268260 90798786 178816097 943881178 787330863 276351781 94149452 368147444 279551018 688215404 860450331 349856794 46740311 145021325 615129997 69854337 209134414 882701066 849726391 420241013 6727164 460216520 775656105 537756240 598720343 99301320 588477393 340222140 229001596 322795340 873814979 259069683 490298820 89430747 185596607 92733201 249905870 874262054 256480207 190133892 795738258 536922019 86281412 61712523 880751869 627781484 995367884 858724243 925608055 387210973 695628666 797180892 351670094 721170371 808552770 559698060 685892641 750194585 629109343 460658564 15842827 375099458 112462121 458671886 876671082 546961805 926962237 683102269 351998539 743817027 29276983 605789823 710480728 314020076 331409148 887621303 828521081 465267496 553212446 961921040 26543929 210482749 980454591 645469576 621874556 816281999 805724828 427723514 756374043 5201631 437421948 69475274 38124068 716101998 398158115 186050338 486709308 7935885 506811476 423824421 473379353 167533572 10716698 879316654 546846287 74890352 122984904 755915528 472352019 660201178 800379893 674639502 35646343 154191826 26550018 576064424 922632132 598937363 215672275 549784198 576410637 480716429 595548267 545582692 373945297 164488339 887098323 519319569 989041735 950350674 641761736 311538676 617344789 141335452 584631072 550088545 270689606 861481760 662720708 276367861 736234091 272295402 470560518 642119681 360795112 622984485 682820557 598800569 383534040 475146862 870420172 666305883 384830609 164537612 174862641 967684056 22760204 968686358 727021419 564055845 652249829 811484384 566939563 978600601 751122881 421693949 65283007 790216257 439739322 611553226 399375289 445392740 937934112 393234487 585528445 409104619 318795387 656178523 118273175 993112177 68207935 526303498 65538502 982046791 188753185 719438098 636445997 167690407 103426671 813644954 2281879 346228340 542785939 333111815 769513314 151724920 933478201 217236537 195498865 916917453 254504292 474682026 692182525 573880293 203149303 434663203 606677583 573029472 821389944 541077872 225331869 38834751 326018898 12129962 66836945 554009979 395042485 38068770 141017889 913763475 470149475 572684097 523566027 437118806 468742359 326913689 431557052 608603870 134092931 225221854 182381346 878140798 522049152 773674034 728585960 426966669 882979900 938124243 970674758 629801878 607221263 165756321 526156499 642882752 550065908 670084851 471683901 837511858 658032416 771356583 8277571 766613838 312649448 493290703 218834557 314861530 767951022 245002312 849643818 864544980 343634440 35888222 163614331 614626949 254780464 987759271 369851342 28254556 335636872 700609950 679393971 10493002 488124463 723144231 178995840 60685997 248542395 606214224 847375164 901646306 418038516 136498662 653693209 3584709 794263317 708108878 475762651 265224204 92549481 450724857 837730565 575314415 871898383 618940057 915793831 994459861 484611083 326643362 86067423 921080337 951187011 488962006 485932168 678157319 307400506 471677083 682328416 931764420 67939268 919568292 984367224 839219352 967610900 52520187 449155858 789855695 244555091 964123945 696057446 8589427 69018352 458636000 239902435 651348531 503935946 798303995 765540270 326889305 510837338 958955414 529777007 865058132 724901493 711463296 495589864 382897124 832221526 973114291 824042837 911042492 122540830 967916288 76674558 7202175 84656725 855330718 859995693 961754351 836638186 410156114 67496860 760368525 105288582 812995815 114203799 791054586 377559185 783976175 824751761 87372982 356844899 680895266 796651451 459607847 158538664 122197361 691862652 80461047 632110426 161898826 290576342 345964583 451226964 608622404 415612158 27698541 761530668 763764860 759608202 299377295 494635859 988852052 972784533 120357717 977437557 824569820 770197754 192693722 605967216 871355895 775008081 802118744 933725775 144329010 163567098 425837797 471214331 420071172 248747616 818803833 758864851 476197280 877412799 487175264 222093737 916729064 468662833 286161837 426890027 135077364 614721796 131324293 10242563 668869707 173617611 775115678 194217338 347918281 847556550 694678781 115670432 185374748 302086889 368147931 487597424 47387112 320936927 120127500 288815830 987427540 534282417 116839977 609726777 46707379 644920164 424339572 61765133 161214144 769024330 495862697 201576570 877948143 263701665 540750915 561765370 610570536 308837120 152764125 312295264 640139282 730984079 200575452 809430963 119527763 40181115 417869032 307963665 553580530 698524770 902292951 479390149 596206507 342961228 279778137 732302023 20418566 699404527 427393389 369263727 740229242 843266665 22336417 724204850 774245758 972100417 470115394 715316881 471916035 972170929 403087095 210265070 469963343 12996324 859589150 272342233 118015423 42263042 699995525 556450159 919117564 3738001 33492557 196851578 965746144 995260360 66920204 694069350 97056187 41369485 851099801 253635775 166948136 302116638 233806452 224214137 921086959 183136994 812530090 723507843 661328002 281298697 227941688 409035048 930397726 874290343 895538049 590135026 69511296 637422269 878410115 672501487 730524610 535530884 785393368 638231156 389917144 115773875 777412155 11825440 291289430 566865132 886351321 94373361 158938078 592739390 532005884 381233348 858494026 484841132 940617909 465859442 780063533 464653261 275177672 244975443 32956485 543242438 923424948 12150616 912843135 113215058 489702451 968281669 780718063 798534577 581026208 290467542 369683912 462984081 2050011 545797305 765747431 479440986 376310245 421449324 649518776 944432041 905096294 56168680 448457784 324918982 695592773 666622260 24544285 765741874 295678738 429768958 382502168 976249100 905998838 649398147 662550970 157668155 707812096 862051420 821688945 618893542 667514659 981675088 525742647 292802323 65840597 613854622 955653650 148262599 855003708 880536021 58311973 311348200 803630104 642050415 911929110 512141941 540906825 805747682 523793376 276166261 873081341 657663713 101262330 46658321 189571279 703460542 416166253 353705531 236154261 174285222 824679991 609223276 882119813 500822643 207356015 450049435 481864965 985185006 756743068 574476461 889771873 12028782 313132403 864791574 910105706 88139593 376977670 480194008 124310978 114398942 309668504 487780140 738193709 38641407 588872307 52693443 451260374 420430261 879019658 246069581 889518767 855884136 336732303 589672753 241445842 134740939 463492463 637902985 688139724 156355471 482914837 899258357 904734800 113358566 740635432 402670293 343611734 899211342 979069662 994893394 499313667 148140479 218398495 205919648 984804255 102517471 559762043 184615189 659251930 659374765 580947537 110354443 253266181 190599922 863608951 903319802 918594336 407884994 693169831 442042518 422401354 47022871 970044512 358382302 295195462 258374012 893218093 127763673 646887347 333989756 628653766 401815711 740591084 985278760 351094533 159252089 194866787 257205025 238211755 493128036 501320918 536223345 982932668 220058205 719542739 280655599 977313376 642303358 765229095 803628253 316534633 830827473 179189508 600979303 319873271 505043210 579433227 702682478 25345134 858500209 462778813 689950514 719332100 830756483 684223927 898447150 467296498 197067487 476407631 863870221 650376753 768223830 871777190 278917350 361111433 238984619 447169915 663710806 613337884 781357134 480143323 63867526 31494943 320315404 705834166 981192766 998253444 154588710 236537158 814202169 643398358 316967238 119519887 132137728 552734091 608160613 640898406 998953594 194436678 415529845 135129441 597058011 855498749 447793459 626226627 23897067 8374182 411082588 465596692 475619503 388521785 700126504 68541572 969488204 654674448 52822364 838413446 697933007 68591926 169800777 428917244 767088835 960755213 72555800 204758640 252210613 502912220 134264211 490886017 613794775 763908216 578094072 414091750 469412313 703068105 16741662 424389709 129552149 381704319 853510299 262484939 297007739 966634279 542422688 168335779 780058119 164829929 73710969 342391469 900314303 125661206 714547033 203928425 948841393 202785043 796186755 158159368 442883772 460825523 417587866 323307250 470539419 648220585 976069631 725589220 64215733 571273455 126579776 249957820 247373298 218761149 98808528 545822797 303968193 906287534 106919881 603770132 734852398 709416839 582651689 557747084 540858003 138409506 226501573 793247052 410577872 837123391 98426038 949234605 496643220 848169924 581952729 796431670 587455301 341094613 22287992 302357720 174739041 318921781 9536422 356160410 592836274 861949696 574545488 712243575 537089059 380728017 842909745 964818723 213313962 888456903 529747320 699754955 173369177 625746454 528453042 592909476 95069092 976800455 61130900 479362579 722562196 473171847 23643985 924237510 115084358 608273066 198551836 322317798 166917294 325221228 527081368 50089779 612224971 146712488 272128322 714345100 786767583 217091298 644837838 350216637 998564551 109802261 802667296 133502699 24504616 875581761 699625329 216885828 567203735 655661936 818058466 141933571 693305773 836343349 789505188 603459192 913449016 215256035 244348737 585012387 488609404 617719610 898189370 207251563 362101262 671986306 212076288 294441332 281705599 261158294 686713593 674169204 210456874 807453833 405678547 774698193 278003341 128728314 539649428 976255339 818629781 302982598 81693995 482114503 544239365 630842409 80195150 237718497 921343210 340931104 276504991 254916816 601037989 599091204 862729937 420623821 762943233 247303508 699554798 606319020 881036981 601642676 3567944 907514137 842715729 66363591 628336076 267961116 726734014 584582887 2020480 777895606 588093264 208108263 517827962 8940503 59817672 700698542 127778846 739009836 299176494 477644666 7983269 762679845 989670853 732107161 93723865 478945169 423000463 358893348 516288903 210095516 296310750 412697930 891194722 745488622 421658358 160729894 263201918 65725136 367578650 980983228 547294313 775439712 517423902 753682889 402779899 313572019 766924543 787732089 466624548 333279420 398468185 581386269 720870223 897114419 300288546 376600335 847879363 163771489 738423534 557417556 182677898 636525268 986332304 34256013 766192911 273889571 744727987 388341808 106230357 155015957 989855677 914698547 13557084 13526222 429849049 461289734 876846406 147768127 159702887 908290395 914356730 577522421 180823946 448455501 900758367 643567276 667370938 967478246 262761288 196272994 642177169 761443520 489922653 718310834 414236106 531053229 182596788 401449845 55001383 763721376 155168302 666774884 286500292 689746176 454127437 39681074 660223778 445862362 281178308 236535231 933628923 657149019 169946795 766107947 834248327 185675966 327063371 599530400 130442605 367976999 91651290 104852919 803803586 980581406 981076605 637676388 164831488 406120775 945623284 127468560 451441785 200445234 114213001 506134208 615497495 732250198 935948895 401909766 188741052 171549334 752144348 378339425 600229324 856959997 848198793 887880630 463402501 547337153 454545653 165314828 857689202 287492806 16874515 968015338 60047054 858236418 771123483 747911080 901095331 664494538 69605448 815580266 304503083 565194542 773876308 369186586 867684942 867230076 676485546 95745416 343068637 682237360 505424179 468943075 257092945 755333026 491817786 155691134 428333285 670904705 656209836 824033165 318914019 670465276 516004237 910705263 468522311 86932775 459017383 403455527 634475894 140330581 28274444 437273579 334856393 296756645 55732160 88975030 191120805 897396293 446036481 275048744 893503302 926748122 463464021 701761024 796388662 516363871 922657519 506402495 95085347 903404686 770972766 729081186 134963139 528071102 242278294 931008585 313961160 679593272 941886033 402603045 913119073 871923053 946355993 968700881 603647509 348533585 589130103 839797605 884739199 673811707 926657647 835742297 690942611 454940238 231412713 833734689 473408621 144848015 349234354 157830024 443943460 508167182 756187537 409300214 678799309 355061729 632655870 331264566 806439082 61644915 457071124 320908834 482939024 891971301 970757551 977068260 822025341 519121498 305235936 409065610 430606286 796431061 782969197 371816046 842649836 831781793 538273551 193257252 528558445 111502362 596647390 99645890 761074216 348277847 46172218 476139839 812548098 805463163 36291320 65158114 418106843 489391658 438389227 794390687 246912653 630309445 84965412 13749412 804977163 129655645 108255247 122376731 822395950 358451148 443635954 833406220 837311968 463901054 66367892 485296501 21587007 188908044 722254707 877089196 372863984 270117813 521796663 577413828 320507277 545897900 448645077 576503439 58059179 146216199 870226116 474833556 92830606 741514204 720311302 396114086 719546910 420786436 946221840 386345638 465167206 630401239 574834737 285985719 23148432 198093281 160326905 417799193 357628650 56173626 938180339 343154175 905389540 281468196 370910593 628324278 914364906 910942877 975464658 932970251 971236549 158432038 356952029 79291072 182250320 673266256 436841948 630897529 622592273 80641597 547657867 468497819 252739823 911572873 283446089 52336741 750772880 420128199 330018083 965591760 543496448 802032056 771138504 973439589 399432624 857587342 477089953 789248318 911603970 979536586 893818171 912118011 702925270 963655554 878462222 762806883 988216035 761751893 384525082 149820315 328285395 216422239 582799784 421304179 229244428 266893952 416472966 705163953 979043895 786581885 840484155 502787171 784417340 3564376 553236182 532555170 906294912 861861405 391314717 236223914 686040346 3045235 770088938 681930663 885122195 49298713 655380708 808281684 117398162 40473342 651666899 283251823 386655560 741611821 475941583 297498907 778941986 343433934 318230456 758240992 287825736 62632328 112326385 921201740 112791078 565022936 759545928 523831671 251338936 683625853 415261140 545585076 110113004 911309219 833508812 766970072 501639804 333717446 395208 860808748 915550833 124993492 406659936 726973518 313898823 982149279 903560807 987190531 983354785 378902958 75077983 104225713 507262766 681586238 959522230 856071453 499576010 411192641 329714300 984732292 130726059 280810131 89918292 492080123 855561856 45407760 245659518 70881384 555673465 471932712 860821942 925182236 80146283 509378783 404535947 829327559 958653879 265835824 632958830 284282730 707025239 200927001 99600476 129164348 508988980 109884958 925464610 360015844 732635633 559119951 62659390 949689484 232934179 889044977 616976380 44182086 929034854 311742683 405612324 178013350 526913388 781896629 509456661 527385245 630446967 242669720 937994634 465602599 502945172 276040677 577559800 351983485 882525865 934359164 521247119 980496182 665628224 531674958 316091933 410326263 227195600 598197674 730133795 335171722 451749725 931388631 621791208 379602331 334117500 50026435 176367145 267636311 173767125 657101601 43887841 380262856 954227864 62886024 510291198 700155599 377657165 316912101 837076434 173112041 861045112 32107592 735990527 673260505 115331887 148886823 437113226 471945570 790730045 590604299 612381168 680866795 634323214 437792928 678742453 271373351 59762032 40683437 655741016 752757878 774655860 108055661 349771896 243131016 650858003 237426825 640750552 460654969 566418316 513426737 170853331 749813277 106378971 396385878 113008568 604907950 925025862 300868407 608001484 483183979 488300532 717488038 592399158 610159371 406941425 203043872 329994342 692930356 898514628 115247928 97460351 648497585 842063491 258397359 937378765 204862783 752777600 935044199 20941380 251861886 551467019 848719148 845485529 252219272 992908678 226672770 683905267 22208397 826572166 608425016 743223146 440201107 919549775 670881082 593078970 847021803 402432548 531962342 981982768 183730853 915674750 742860427 302531899 279116401 57797911 58817457 389843868 26865096 936604810 368490869 58539172 612789893 145761126 123036607 317833462 126811284 296610469 241201675 244106929 166959023 948974142 202195945 458567330 961879859 383436042 612755772 270248841 863866026 714133976 561469391 830313686 135220592 905359387 473368195 315128323 814637678 673932431 951915631 18345223 237982329 37376960 719835782 525929032 951949180 740074992 212694221 710420001 790642747 361996560 926634384 651449247 716655449 813627580 333789752 315544572 521936965 820009810 811961150 447801917 702156101 209427246 920219991 890571434 564857212 756630101 763839400 902035357 168272073 41145789 131734198 961648753 896741852 215770006 337595526 576875846 716004970 14339439 145574528 468192099 446595329 690087905 260370401 324623155 691245222 205502580 359937779 83313989 839971698 922174187 522744677 797105723 466045943 760043717 749810121 591917366 684964266 672466379 854273688 120762705 731170971 220504113 345955217 775617417 680074372 833140540 776309498 81239155 294523670 964122664 983238973 610009102 228257813 850627487 730699267 645197029 741689286 613688137 252479072 891854418 376450600 822478634 109782524 614709056 626836085 57867169 631762308 533767105 623016851 308187779 933443340 90512135 95591440 123717187 244459722 502018497 802858553 910826036 580521607 762015086 504830159 104451336 125767637 443837650 765144273 427821185 816442734 430596607 287756961 834898083 357527987 362177323 260719457 457891635 265643020 175863536 216042164 547387630 332788582 826687882 770590009 474872530 173211186 818103868 455818520 66187679 721986728 861459162 684085621 237210044 324412148 910467602 89869281 178888619 497393987 460301043 787560885 371552188 757723686 966763285 284857496 481735872 16628360 249465344 176215162 168930366 296664147 988091557 206505820 353308657 867734671 888354968 925068544 880000565 178743266 45283374 702385955 32251937 413448751 138084430 581034496 188247865 334765532 188889018 46485054 966266117 134870697 686363037 387890943 753524290 498881296 377801640 172413204 317614611 399667227 340626243 259879340 984157306 199100146 749873868 390686030 453691650 651349427 741669195 108978116 936854463 242206989 150920372 509355515 740236380 29234240 193808005 502513775 828634693 53351754 455714637 602050577 629120526 406006470 107451359 772387039 713414562 634242924 797794407 512339280 34575358 693251011 806266488 255630799 839752680 382127126 260223083 736679897 531222986 564044651 160218075 162538735 808111825 808066055 368908765 324246904 979572145 109355307 840156846 662766548 120924128 370448135 559076140 405613339 506977765 472898620 878449237 60916245 431544116 629832610 956434055 656959139 214879252 571097457 902891616 372019374 767751308 832849100 759204797 883841338 531939860 569383696 944290893 57729936 596100606 373572899 784914276 553838693 590310630 671012278 926918099 423188640 595704785 117752526 403495022 514032704 368390237 759659814 48436892 573679068 538596088 718951746 468275596 868243698 648343137 437075177 832194622 501766217 594803365 37982782 373738638 967380275 776872881 178024089 728208838 868207088 913299512 44217090 316557890 830368616 402889281 920451613 219879460 925452321 771685863 797429510 280702752 988636827 149841473 373733522 317935851 3858771 138750568 943285987 252603307 386649769 983332132 114769861 690039678 494859333 298153590 870404152 704594431 568372256 495729075 341027736 56273764 739603984 447289609 267806527 143703126 561339980 954140981 353037934 373014843 103470000 836961930 362152202 852910718 898126223 479955706 291326647 517225417 305782741 930509251 221690763 315396914 546822729 691044035 576993082 985677169 652679812 894499152 325949800 443969966 611308739 761262469 581980123 661647537 972612039 388964263 443833830 456122862 998652169 757432471 680468615 935513697 785677807 872194417 17814005 836558816 438839399 657445064 16386544 8912496 235193433 226131628 26330087 646094381 413767622 586995275 542291744 702410360 135078064 600102459 28295785 113682735 697932910 260437492 641600261 253813596 575743139 855217584 438270800 462166987 978625075 659932038 174335494 707314517 397617203 764404825 190012230 403833050 512196381 345467267 220783208 572935922 30898760 802559272 968319787 648873093 176179342 111782191 717884173 930189186 918699664 400707515 974207975 73986040 763541741 160321680 644195594 323290089 607088026 540100592 290166872 665541557 754602619 826973848 15108756 333953340 562432802 544286425 382418265 524341654 895653690 554498394 36614341 923755512 389433396 915183980 969793835 22622099 163591830 565876913 990708539 991140496 311093268 216751255 820386981 550945255 586223640 918611669 579170533 741205992 226472826 430307525 937508839 330606522 728257866 691896355 587748515 545361234 234256024 963895629 253000238 102889021 982413062 82381864 495167932 131541840 480230628 314780427 247280227 909201425 377843523 529732712 138185751 428505526 56441132 809372518 368284610 767206979 393045305 723577225 137131897 981022116 469164301 428146777 714921756 687800024 48725745 562120461 523168554 197552353 707326943 61302640 804829869 845188403 256472363 347593097 494578705 704718281 513464160 999771571 845068414 259417625 274214573 116756379 643101951 431646220 663691902 244668962 155439488 845412956 350163997 17689889 683040193 407274552 464837700 868166920 255393609 234053034 587831632 242981345 646431877 766990476 248238233 13741051 342702721 186168926 922712953 928099168 201514425 5983813 390775336 218031331 523131219 93594192 589222697 780235942 758316053 90948078 562136828 821346223 216521590 406165957 875843759 682410263 134098611 910778620 221951742 550883634 149570277 624411782 703184400 273948246 357704749 285222646 399578543 865954060 415668050 414356894 533467143 883555343 962213498 999702226 811794935 113785290 982714818 503960462 207405539 667684284 774240075 903160491 413691381 939175496 646176647 471531759 966118370 421641947 877864177 721385183 231745533 571628367 152786502 579976191 66584560 448705931 711617867 860041834 88936216 99954521 257953424 574025525 274997003 391209575 979045762 488419951 760453652 155961738 533592272 472197536 443825045 415620045 85649134 701795940 59969332 780995384 247353750 948289417 718060248 278334116 976358670 711775789 887493874 384901463 8507215 465139345 966144950 9512646 375259651 667414608 551567138 847874222 360538038 144063441 822640863 485573302 12582646 961285668 221456514 462777118 560723041 568268088 874783101 91730578 437446910 7833210 14245715 550750996 126844799 276278000 216646742 423288966 773217833 932869823 987205175 711090361 893492386 478694756 908727686 705466924 225394452 692805969 674426688 227820518 116486374 498872739 519719636 793097963 227277129 656314126 267274177 550583075 634807340 321728563 12395779 679952309 602427306 151164444 726497780 111914659 771050107 447047169 621560775 768248228 756496515 620363536 487250668 647877033 314862985 409541214 628148956 396486881 23241882 432469405 645236884 73172474 863909747 827503902 537359129 943909299 575197733 951303158 288188083 493382138 857609272 153624676 861642220 529815873 719444242 287836176 697926497 465901636 303420110 890741406 340073276 856383921 573423650 93548951 330940857 267545327 527042704 827932981 973205091 952704318 739528168 196646713 661414672 994276616 152031902 108392566 554102324 279081463 33143221 639423799 391783251 232069382 99859733 321854251 587100518 599182880 15642908 647274994 93081207 442907307 452324866 515261384 610959747 481136636 728505968 810573467 622905802 619377698 372122410 427021754 887234612 404083829 118533530 952323119 170156071 133457515 698008015 534050961 248263975 624714441 847285166 723000924 465179898 235697047 220657560 486409958 267285049 185983783 604872441 752532652 328475597 71710875 454649487 506613981 575323405 606017971 714296329 364549518 930797313 144638183 571681150 102956115 871047648 689023499 32427502 332872317 676890927 444467322 901713619 139185754 618290583 413981291 296208030 212193682 779598243 687196702 956171477 946776038 48910474 862958260 565067821 983304316 680241348 764708499 418892149 235810854 447015743 892800103 595544613 388201517 303853571 724213038 769361294 337627701 453319243 114186382 431827844 219096718 712278729 369680781 837422512 866617854 934459259 745545667 35400039 713908269 800334252 597251884 106041210 365142994 119519709 601093973 322320210 532960986 336467374 642699797 770029710 565228068 945491175 650799564 819063297 486770984 441279603 984013291 289885710 867482390 71685419 579292053 974016736 412927351 986190210 116029817 362233871 287416795 70080660 893042628 95428879 315661558 273179727 505070797 73092752 424583229 597239579 210167286 72696239 222016674 391626909 844878605 162525411 350921349 386868184 20831204 732210849 630762498 831540744 592747300 567176206 178661799 296078922 501266521 85837393 151883238 856323052 824701531 58532934 927305523 255458741 621585273 952870949 462524955 366995527 679184430 67080403 788422436 670947626 157982284 546284603 93927529 582736460 678250426 25895579 843220624 813983983 441574322 319591617 849645182 570989391 949291219 309646977 690330758 201936777 428639137 952554655 335225087 863439749 93722151 159959383 628765461 185386170 328060236 258080689 402727540 910882675 494501640 793723317 10679790 665420439 243800431 966773736 130670547 975146047 755528847 631210735 53173867 901913981 610764891 827143673 445633346 846015888 639106187 284535646 161148074 170174046 153807676 956064074 700981900 341608471 632364087 622285064 218690730 142197924 889461311 273518582 80793676 388353295 833507009 764311932 52068830 431217331 49138238 851495760 705572265 40946431 494968254 767140999 103427473 730921390 101511058 960208163 590879808 791071041 257923132 555459768 750290335 163663815 155911809 608556999 724964316 99485966 643578676 754963576 725548637 431147497 708869160 303052958 918614718 406484449 74950455 678776663 423861439 806321645 736101296 583642129 346208037 327243056 36230375 128381699 9923881 701398940 151299974 902399238 229222160 89532537 798419296 247488205 656816981 740815099 639772357 271544002 472331477 753907591 120630565 363542173 2275091 735877988 730331403 20704470 82284968 543141319 54983140 999874324 404075151 262120890 835348990 245652849 5290301 696990931 776552987 815712839 475637421 364248912 809074168 232107883 884854479 992213563 79181192 310290647 179598465 18343619 183771879 597974924 611287250 893869175 243984647 225697291 386499048 499029893 928573683 782933343 496132719 262189776 476790112 721601983 725933102 506942587 762843031 767196948 667091270 76497580 806774415 239658461 471607458 745440175 202312277 649283391 526462895 167407552 244630653 20456322 900447138 637975493 300516187 139698503 754490366 294791133 629624441 785724168 33386058 767040666 45489460 145203722 618155322 845209559 853937610 304574250 861361943 451165525 777867418 786885567 243526686 168558303 66302930 483914724 483838063 415737188 214096965 954326941 364912550 158267524 393127379 230407450 496379942 126897825 23153021 454748511 917701678 353873188 43380243 670894693 210778256 560031160 416137452 587728088 562756943 877276887 956762899 847360923 794224692 462389068 797366127 121144289 156969227 389851254 341866246 710457620 532774883 43671482 527766119 59629160 327999420 109262245 170783426 507503267 759596322 336899437 670341313 369697632 948957188 463860035 587082791 503681677 954433651 737050475 254618801 69683979 254351303 150708053 434898384 645316124 955614085 2423441 949964760 880491251 767988404 952606197 721359508 406913189 677384850 790480156 97632379 489098993 610680735 98875409 327048751 976024811 402537675 407119342 798417257 925705450 610180087 831376094 457584952 955100658 969216941 344009297 695515207 391359829 707958528 767365860 353512295 951746639 638280859 496042552 699603566 716795943 354463932 517831298 531692319 604788889 220531104 235420605 382622424 650004829 550795468 312403661 707099478 612651239 443634932 350074508 535517973 73159538 741383810 411100654 711173652 174113937 666635220 814161459 316489071 264062340 915275570 431889086 597288060 189436539 570568444 259707904 96318641 908634004 649660720 665608767 134248301 39804124 348819856 262384997 805814822 288483451 178605321 895768044 33213001 442128286 714703460 323993859 284830854 259608967 84828986 1283570 625525427 240981401 935771168 246733105 549813803 17637933 504425240 616527414 760097301 388381992 831889208 652217280 466548387 564467144 251504585 559549274 975272669 905254727 85619429 532579022 562412469 278489559 573491867 129259277 247444504 452771081 720240827 54822480 972142832 472947803 465631156 399142107 914024160 35867238 751408482 765139195 26294371 686227713 721811988 871772607 97286754 804761512 190991328 440336362 375716522 933617031 966067191 776849040 673949416 629388602 53648175 897924202 284230075 831269639 248343037 569974217 96974651 941856462 307644061 895358504 2890688 655874649 476936928 689040539 294421042 65008328 382353508 278721171 668082033 26837517 787630131 107302714 818412061 96600403 918430615 202456078 262781823 606802909 356639912 461335007 280971358 458606669 777990513 570036262 580139973 779078138 434934719 331659338 364538639 953498779 128915759 729001396 876812733 342021197 760690934 441259142 963522070 884564199 81231310 822324976 247424215 600169213 275210067 846225408 12427523 84437141 507764590 920891196 749153435 997132844 53066698 103813920 929595159 591425272 686938046 275690722 229120184 232727130 422553182 446152647 615263025 197803909 797654786 884418531 897221420 314600706 465301359 928821148 88641779 201572798 866663617 43421140 768561169 916129282 610716212 616018436 688720341 108229572 255740392 774194702 158291594 272712743 736938819 68963860 459704345 222349972 570185691 865742132 324031221 642478041 489333271 807459820 270085990 790641203 521163326 962424638 434650283 710444289 733777739 176746338 827276547 969659192 358697143 10519276 248953654 327020150 29472167 464271100 77242282 536494242 302659966 950833152 796042973 718974906 743743504 403420711 386150792 188028894 632368373 360182737 361534148 801289990 760237237 384180851 269093894 607068411 518663579 411619358 923452015 175464155 886675314 2734 482405711 638007681 139501277 570901808 682301026 804689425 493009195 960307127 629873536 586403643 877234241 599706724 19819480 653586918 427941883 839973718 952224335 915942386 24712355 524389755 848898312 518176761 279335246 502196453 681732264 361306798 203632685 85474337 968001116 677617877 761061942 498331081 922611740 422001727 350275315 768834693 106648336 533967445 995014250 63262473 42119141 575627808 201404403 180835729 385085497 733624649 986260003 214794038 205052699 577284185 502760974 368749477 620881183 626369238 29911497 951111115 196761523 296639544 578387314 405217639 56428167 776029638 358868197 442342629 543775782 952865710 762577874 176374678 930722704 874627334 312755583 256885097 946503208 623398603 103689658 72257226 660051096 670441642 302736771 891681856 764226704 964128654 279321665 908940702 523065707 217770087 450960297 838927826 578281144 868011156 436417817 768153730 984119054 744747488 935244623 610939668 627867251 805277937 699664022 759428138 766788784 958026450 213587097 444845148 447430238 861462912 543871082 281372609 529400498 152454105 259781344 804613463 504661394 266282417 428568955 398861801 923393539 376759137 54113084 798379727 605351266 492409062 111570638 124557938 693918101 817871202 705597905 836666999 124803199 417270259 214817878 310008044 674361234 605925633 492376440 959260328 733041610 945760907 471124031 708785269 766754940 541827564 969003678 598374075 198145402 967731298 833727173 661373873 646952159 755265563 386988000 464371215 345183715 552780896 473548188 941277463 791681185 593363207 609215088 466988905 614782667 819558136 684600563 841239779 48176034 829082592 693358647 870989930 490884592 322739392 854157985 365851650 535047194 167469736 525678171 37342616 969865555 140928640 144345497 395569892 791963423 93396551 917728682 864606245 243925347 221399912 694954705 395012693 543521405 206877044 693223093 462008040 386838384 131794622 297168271 739531207 818585279 534533958 474242470 48682195 359027030 148850780 319826143 649893608 171858027 708538150 126511752 962440454 291934402 955443805 892938876 155504834 25054993 360882824 981796993 700154012 156258640 1191648 667380300 714209969 28380914 277213873 713435436 794607084 836552357 114047788 782056341 792266564 410168342 538492254 791801974 648344311 826301178 628394778 487168297 536009835 708726875 481116079 672175114 540926273 212811310 115851027 591884614 730571213 249515754 6777821 142563545 779020476 262809081 677066506 151793977 201707378 596440100 736853918 856446805 824953163 597374386 323389848 607931276 676287470 336976896 340968395 794493174 635551777 683717396 511429558 263151827 31959159 851079507 771111166 705691818 923153002 431726607 502319691 892922290 570527372 422022521 974785468 796779639 917319580 496980583 119669457 669092061 241594868 558599707 252151009 776311546 963414111 848179531 781691619 244969740 660670455 721520581 651695489 272125460 269556978 415987525 76417524 97397961 258383569 33553659 567750678 86670543 850725189 97636702 846046413 780098862 471071697 859853898 549084011 404427216 612095264 563326980 615837798 183628891 645219130 25257194 152735747 509838368 87316534 785276941 996787265 220394855 124579957 639155778 402947074 188925325 112112789 409002442 214655609 734871334 40352676 864568844 596270814 240874144 719314828 899057545 394484797 963520666 557339605 867080120 884914776 637215871 439624713 462385415 149945300 951019434 567601071 35155521 649394968 508325924 926302317 968559390 69311091 406610033 707494029 817382717 592847788 1258689 61046953 522473407 61280962 221666241 483143360 940392008 326082045 818541602 448793336 29876606 214273599 641803779 520093378 107158607 626304742 87119190 406151718 755449950 902041164 517843585 859257126 109870113 713501689 829958020 228164790 284327872 613530329 568568802 912601014 283019695 731630172 851612333 517118873 329700078 403115507 568609899 345271473 616361505 71764907 688730033 539587817 784070938 312683912 809384099 964505475 219632551 507184040 481344861 917419452 962264398 420411440 725437868 288500152 173039031 498018464 907502509 711271470 162942317 177182966 256583041 402053508 19911578 794358875 238396408 583209856 426349497 430084972 914181488 756311577 485391568 402190619 846076982 691350903 505225981 709743437 633165309 424106011 863095128 980546666 130607496 850969865 202565423 250852648 742297552 162958487 7445257 535692878 618483046 866295619 415672321 28881640 126919 944147513 22955222 733598352 724359983 606510870 910886795 512863037 568769566 88572736 471962182 786687485 924894696 177662019 235444631 964422889 81242770 271746653 927113906 582795378 334816809 156337106 479758678 375141562 375351928 716577913 733071616 805418415 472926966 623995114 240793122 197925524 308873725 312977050 309383800 995018067 310030289 691518709 27284611 498621842 116998455 5429058 978666340 171678217 161228529 184192781 43175831 326956365 905597266 642977188 422213473 593301229 757419573 873894698 606712942 864062274 844955582 456536083 398366605 14755154 341617340 658945600 683157059 824115664 889438611 808875703 224131362 38814448 551344728 857751549 964445729 418503917 908768217 506046873 393834268 322077910 257724520 582148817 828348480 287810701 734182520 203991988 297058700 383942098 368638770 10677668 625677721 611361425 218682702 810421300 113197177 766516076 313738926 510082827 50059948 490092210 185291256 392454308 157575143 532515072 868569619 729628948 651202118 409172272 110751023 867499190 408692777 57591658 109081333 96576794 514743550 246283654 668966526 962826315 552617504 132914190 556378623 973074509 211817250 583589114 625641152 974185677 821611932 306944448 611389832 213462378 612948534 154992312 139892108 669772702 517447679 788815483 127707642 675863071 374413684 377529593 276965602 597542587 236023801 8713883 627897821 435453473 434545496 895411442 5039505 861532935 709535004 881919537 314540729 647252376 487178912 506305169 80183192 897804461 924999556 478034551 446709789 366673255 198529828 79444611 599432975 211498440 66805596 260790362 808875991 980620666 370365012 952479993 656633229 718636332 50208914 302880179 80477851 821400403 788956509 533018335 226697275 750706351 198909347 644977468 964489616 719260571 611832809 935234821 648522429 292194587 601637675 963354918 356845164 598169072 833712595 362636221 568979632 263031247 359642794 82226848 727038893 978180373 576202767 367124854 771512855 336661669 282865718 962943417 711935384 226729367 900904947 642705678 794654134 93000471 122708307 165236943 225127473 464290293 135009912 963004500 14786674 367112610 675948405 386918029 155163757 325314239 713106497 899334257 799352253 745247766 983320984 362372712 651371646 433532207 99669726 960091797 229818904 766787714 360023414 7568025 440440801 480274815 544198886 780538211 713891150 56960254 37837426 534597190 320577158 989800056 296913703 176444768 138146997 203482969 642202285 139669971 206158552 166402302 505023890 642159987 8406955 716337285 487653824 981650334 377528194 822353835 344830745 241662530 437140487 291487344 654073240 112861171 408551465 696793050 970939809 853241209 865983859 887324720 251687171 119959730 716536893 860990061 170224546 211675857 641221477 788367985 675267608 655474108 665373627 147009727 807566801 14567293 161272519 746351888 463046495 922464448 943438462 461053595 124941500 166983693 323625332 670732352 171607846 924508560 122877982 267586062 223269556 927840327 583146272 440209221 426746896 588736421 344832172 412370242 756486286 164113851 757164954 362339194 942295512 495110066 100370877 861993455 639738384 881225679 615648106 456828697 127002893 121879173 507640873 760735442 604674072 957162274 545054127 853511985 862085044 297720267 408877376 754758475 200633782 244749167 135481071 837961568 845920382 494858301 478363591 729227206 914807676 635330024 378390305 542848212 673915985 453779042 28836334 448289517 105385960 853256161 40670870 289297324 836208248 526443001 825507117 354782897 145993360 449092315 378621119 499974451 302816450 517535728 389666622 611927099 915381477 638291227 985652386 671354287 731088812 958061984 270713197 647007523 438766048 112891051 158110226 395814361 692270826 717097001 273540217 746402726 179722887 182285026 591040293 307938966 232531746 109009066 46114644 601768097 745192244 141961457 54652312 273642289 468243899 462362526 935009356 241217301 62516544 420447399 957001650 510429834 452152286 73839566 324251198 276475566 566678743 363760735 478068168 546503910 154441488 281839093 317954727 616054100 236028455 801991396 996837547 509949898 972175285 597810297 488333933 769482857 376892338 608195340 271869822 46282066 905795070 710105359 703384077 223255619 759308410 251495580 617035475 571931229 373873586 233293911 716025278 536183287 361611154 819817723 648134924 352832460 286012664 249454685 335617642 961720943 679375548 246457990 379062124 709085571 178174283 271855284 938458327 75751758 386754054 795750347 819543087 951615460 301153835 762388408 476601603 505738182 415515726 460739583 756812411 52189655 522713542 462742067 14677277 615285628 311263950 849973264 794907013 965837175 704711120 591656329 272137836 456897307 462053852 233586951 313076832 961856440 724088972 175980246 439121291 780428497 64626575 433433607 708682861 974099329 282809077 813320668 212199586 722585896 660611077 215851015 433817999 345530132 82773922 835916021 108280732 637629252 402217510 112416839 665615452 927516355 982053567 499676344 615582899 988241807 70980867 808409159 326583033 278954571 703022061 348841762 410944158 306005452 883536718 730771923 236588276 334965318 731568729 487876966 699194297 290437205 601453215 101880046 174024274 245514434 753867555 560311012 600923628 428573614 86752115 784444293 454366316 534693145 686393857 616702253 56389007 129471842 972142858 194840785 541661111 312405803 180470456 256174636 47215758 515913949 121012996 776450328 808111461 722390921 669319544 41213537 480593952 882391870 435700556 140554736 206709422 197215618 945241161 245508775 826559138 650202391 688654184 443354010 960582034 525976832 468368081 806359116 390860641 528079959 322636462 280531707 617422447 15141793 894260924 361070648 743276567 912305451 905401518 855375485 997575908 799653336 502602865 526882844 885676788 134382562 845983318 536609457 768376068 752279833 698889121 209821800 169195828 354951695 748714946 964335562 139332167 644551590 211611785 774743162 367772353 575405340 110565975 579645682 118172892 993217028 361482471 237094084 877763197 497912465 751152682 592590402 759982591 821043440 43234631 781064004 791576673 188109180 614193066 685582994 383917914 405522086 456336544 810768644 398724153 188758375 40892835 720004390 197261382 423172911 7187745 407029145 206244544 903312468 347448840 912318853 330022058 160487604 147362857 763440879 297644839 726886461 109450756 470111337 742359322 692722365 448728136 509230094 871119357 316728567 872019646 644303523 948693949 62615613 623584153 479020797 532664743 726592197 747796297 213260611 554697131 539910262 858187073 244058607 596209511 164872753 98640085 166290742 135334260 148590067 448486822 353905137 671267086 879869485 686825788 937554622 180606196 839131402 588899979 903221444 551936665 646241003 859291368 349918294 4186868 428028654 687254335 197951251 838101632 257433502 464706889 586741128 29858115 305611787 88331319 273993759 628562845 564661399 828488695 429788260 908834044 285905325 391755815 343446582 238637324 553179595 677623409 152208812 941175867 897990849 483860634 803637267 540886130 375979834 732683161 907489275 304017988 737786002 516901192 83944891 843917227 134497270 682508268 587882037 512126909 38338791 289190539 873470351 483757056 519754348 754023146 76765545 904346906 323713220 494925232 875699348 279058854 139947751 941739359 110694017 898787970 681656800 399777968 440432608 678399848 720782103 988850118 293311044 252251403 586948746 440422955 290964972 540722027 354588966 128644133 347463070 855166754 546276387 947481652 898379597 333727157 227514901 629363025 349160496 523162899 475859317 390158213 415850445 697322086 358986012 411552051 587016159 684001064 432248059 229252054 129510460 540283929 636999572 222643095 297696058 734195664 624821670 713732330 390778741 65909018 438775003 134973635 21293373 970466330 844092301 498170473 95410173 940679866 773360484 487612334 893671040 839947212 121003710 192737233 710289513 193703234 405196575 894108865 213701359 428378155 556846073 215453693 95598692 285131684 379978175 64963838 140729416 945176827 795972908 462090083 906192608 364365521 396519212 344918615 723089471 684945187 195289291 602800962 755358100 724404704 92780712 574793409 884604264 284363928 925936098 376933720 927636388 519854344 73200114 88273841 691362442 122063972 880562146 671145750 263419537 222055354 180766205 253513396 720563657 79022652 228021164 768253970 564147962 29277092 971736578 929715531 447677582 266300492 461964199 787416778 617919012 794932416 468746056 987026926 752500460 229119488 303430993 41286715 723936276 282536784 804791570 114522880 66943249 433359074 417955888 585293790 65130489 714758345 715292585 707928119 241374912 359252672 245253062 310989973 946099471 810379855 705243483 568230297 234681367 172965229 403161858 73994207 186047509 160300633 554216988 399280557 651934204 309355428 178864514 577431027 264776794 879141925 662006493 379904739 549246245 203681060 269586189 354040914 35442062 545722102 910946627 129316283 702215225 799868584 997096305 880820100 832933807 924595980 427984790 505188641 269615673 295823834 53791485 704007019 787142940 581330912 523260008 720353283 245046516 453901416 266420142 2857718 533548097 143883773 487301247 188429746 548722400 852911387 418515359 981454634 670756612 911333039 663775557 444375210 794451235 822760171 875848392 129494083 871817751 111179400 579345344 196437698 642570009 188268593 217626127 916759926 981790334 493330127 653272103 890349265 501154556 352548878 960809021 203046003 699419772 583367677 16777653 416627922 581577071 369703203 860187754 33543194 714525582 586390475 689334785 677834161 699488019 402647702 592652939 494488253 582211291 934623634 545441414 651983125 56696786 809778710 815794375 990947409 282941686 359837474 501817316 708437168 21571017 227447562 278263910 532640072 18222952 977329908 744383819 258665725 756151320 52939588 137214900 372181488 636797190 273042942 265589518 621540234 580787996 438197910 874189906 612759488 88627458 237756863 262125244 718755415 917881950 263153933 739182208 13811678 484983250 229889434 242770509 796815225 95511589 433765815 794482656 835127932 384521008 329953358 601037501 118629675 856854839 927841565 935841319 488662891 353655082 722667774 744483449 476107899 431848244 286214945 472539962 853915110 981910656 746537421 71084241 131978701 414932934 846087567 204723116 76349415 317573627 746299108 410365352 723108992 676872294 827862913 303395645 881207789 496761712 41479053 893640885 799511406 890960286 18513005 211075804 216372686 478089743 207836909 279551625 589158447 71487659 152829985 636756406 270787479 959435791 165681881 558619049 135231097 572939317 71200056 344243650 764438103 425631056 297160927 340880493 803155713 858518503 768635881 560102323 14712666 936062529 34273645 111905030 150318802 235335247 716747579 209914578 342803405 664416243 207898214 571465243 999110279 271196968 856071421 988778434 90337850 954863988 382950346 578410790 261771375 268036545 234990545 440181057 396655013 426492662 707912328 16275571 274112192 619561820 953534272 705948821 946314648 579291994 664922556 967709890 889985318 584494040 871646360 178960665 782253838 914354922 340702670 506809221 483068726 353086402 481840858 798761809 719539650 127197253 384616931 96874242 1524130 724006570 999703874 951140364 660484129 954579719 860231010 40562574 59157519 436539754 434646833 741157151 766135482 713108360 390595512 505774666 292821990 276796029 640549183 410416190 114191811 87219497 585602776 398565083 337543633 535145119 241137777 489473757 60977887 21863843 420866797 367325797 320519002 135818256 727103366 452208512 629672700 41587122 314167693 432778332 131282602 150163311 62862705 499132681 228889630 601462091 224599730 278767600 108374008 116405413 499431717 678146552 475034592 234867792 585928808 669354753 277656155 707046418 716409277 369432366 687413083 559505000 771028718 181285536 233223217 309057570 159462346 966690983 653985589 713551066 712705398 171134135 39783885 668204678 110335090 693324231 130158828 605785665 288834308 973933928 613455719 636327927 742316441 966655531 401030283 25056662 696988711 743843578 27276615 908602383 848942391 225804931 291049563 852678607 645337850 493991838 47886693 560144845 711224202 75333532 323633088 701008850 718107975 560575767 50736103 667485004 492336375 733393893 396495110 380261764 873263170 537530353 946508982 620911482 441148271 467558074 323763336 785901594 259559548 604416234 918499608 889422511 547421990 197364455 701358506 433186129 585382097 281430911 296683235 124372596 363825700 916019887 909618954 757449829 610772431 974181770 660061807 142440645 581284123 693886619 158119135 86763735 89561600 642609790 792070077 442351456 877195386 527307308 118518967 733803436 963211886 280263508 961755945 120219714 558188510 897571369 946928222 109863499 63598619 200346750 806388286 846708195 479166893 943422663 238829736 474008581 904846859 445227144 606676583 895262411 518990092 564298400 181388295 522811855 432949887 891549610 280285803 894867887 334453652 949340865 981715240 296486620 991683968 719149445 881105457 281169896 319632628 773887783 321271823 729508848 844174798 285746507 712721558 998667446 913397878 422935151 783582660 649416504 482029493 852718920 526895016 224112458 220636579 341163359 763033550 778504290 697397385 345409257 581753015 554908431 815083801 195890490 38344291 522979963 77291602 504782599 846764914 830338327 676320639 113812353 159494742 979073175 395114175 985319698 838610663 795275978 605002352 177799058 483836925 324099453 963772996 397943792 274817995 694396286 980599085 314855905 720558361 538049143 196687680 858048155 509137672 656011177 538851210 180975874 892617995 326082659 408557086 491395863 729979430 741766633 966343542 905669150 392895517 78820511 357589336 466096487 207136496 202369859 159239686 673629094 642869547 965537692 743750056 44965473 777701927 900987532 682968733 626526521 365771552 320385907 790999700 553223101 546871649 887804178 135518115 414831751 782338817 325840880 605152770 64955554 527878850 642640826 170011656 36679099 783985759 265351745 246336027 731331163 682524603 285178756 937340366 393530890 125344435 497265973 68996224 264584912 169482339 634584797 480963388 959451640 418068517 934864993 53436628 647638481 612623036 70774195 461023002 907923308 627708544 811780603 438095794 567022905 502248249 857686552 142890693 630750489 184701485 144050858 659771893 880772822 796724220 123181996 36831471 213868910 697192318 406914728 630058670 410332301 868803497 691333106 382580806 33223056 745352882 139298035 632456973 286206082 277573464 407875719 870390943 455201131 870487963 166087709 164931862 840363991 83569863 674620384 965039092 565380284 363033133 488981958 770266281 33956335 42733115 625265025 59608918 338837519 765045126 572780444 102348632 95824056 292747340 340179771 334890058 535773263 594659403 326909189 567514262 10396718 927808610 207846616 603283772 58266667 71280215 669134694 256965902 50392282 316287999 677406456 745974692 114466674 971161427 861536798 690477635 991824771 56076143 412475731 786471027 293879467 992125690 20229678 112806328 435976331 570973738 40369541 866549334 530165929 338698604 994325851 750656913 894139777 763279563 96549632 377291896 399640512 338341417 88858058 819051877 664157597 972874942 753644984 950489530 892313757 220380944 842141701 489971897 5748486 985885796 693340626 133199960 279429087 647534345 927301148 894811910 35894000 286728197 207276921 330451140 857543700 326469338 950732451 26055906 116216533 548853157 346364090 753434996 742938739 140872268 91161431 114247900 855519597 316985811 872372841 226167682 45148501 244588366 596974249 404788994 433921577 501264398 869948946 654613294 414646773 799957789 919348425 955217554 54606207 354635801 812075166 663849930 100650860 876092314 369743655 534078855 133968236 942065940 209954401 506488166 505093471 996482620 201034889 604088209 322819621 519149314 514995775 523883077 671322246 500611593 100331745 405620197 132567911 985050145 558528979 516107936 970971459 976023525 467354271 862886806 682664730 890551469 436453496 734667155 919187225 32207619 691840026 569518040 747464556 192237382 565370139 522911536 435074959 721704009 841838489 344203713 965023482 30269932 649955650 612017670 303856174 468506748 981372864 75493330 332519729 683142050 115675825 917661226 148607630 452321630 214314956 78027079 576767176 436614706 31790450 92051577 915525215 874901869 131787443 890265280 430185430 653969309 370236379 270096386 838684104 311546194 187195110 133293157 722487269 508708346 68317762 509483814 701121893 601300506 778213664 653157602 508037684 21765029 303712175 733494501 152065938 254808451 234069443 127498180 513775572 117575779 74015421 209215421 158256125 777402485 656478772 780596073 820592257 75942102 846380456 37432355 643441332 154493584 188045363 853605885 218936679 597601463 130160000 587591819 382303893 897352219 647046407 298577899 387976369 434772155 702957832 608619987 702068878 1344022 35062143 324073614 448709554 766928056 400462316 426414535 590643735 126295867 406110276 221473529 388353317 555681021 901679813 642280939 364911310 98178308 423910841 982416910 137899902 573590056 797526206 242446407 961032746 627762268 534550708 990101922 199133579 958577103 945171426 42707937 63991285 790903275 723244495 260990079 553726146 367810445 708008711 666291663 434864768 990405547 340308355 557613185 44070721 507062000 151358134 661403866 657516883 282464393 446714992 315562791 18010980 239577774 788301089 277996276 361396245 315070233 108609145 462761249 255177352 557492691 574480074 119879083 740894972 590541692 670772866 124767423 531660532 220146694 459950801 643552220 124317150 761568760 20855782 780017095 267110925 514762956 98955017 695466932 37971716 406419672 188525325 846332895 119492078 73689611 114303869 893483681 769815540 33080124 924156288 78140509 59517806 553492553 634733559 247250406 610511668 525722759 497857036 744563153 152986922 988780952 909778824 236995497 10641168 959710575 845980002 466940158 332170603 186488588 467741491 568407485 322282222 798313295 156579661 705421638 136154054 430168235 860180241 632725075 835600339 163793611 802794537 31825655 824746220 496797797 810416752 886382418 574369208 794461920 749565809 247993375 827295037 556177251 209725800 737854711 37224065 640193752 669843868 720430268 14800753 976357065 616655984 139640624 621346838 236686048 291410023 926062624 133156013 115655093 461783698 467418020 817411091 113640222 593693953 85087073 581444319 386257791 276478691 426092984 351207740 688714146 740464197 734819461 195385298 934014724 199815597 233870177 544595253 407119512 911997649 250832469 471101187 107368385 881085706 384322413 592017034 940220873 685336721 132847052 603380382 531137091 267469868 430346365 484870264 152842817 611355526 75887483 408239370 927404610 716239889 757273890 188915166 513996434 526393970 489725900 162107089 139848561 944229483 616657187 135699434 61700876 36064375 958244723 97110087 482907740 411335164 874545225 992344213 514371840 842435872 868896726 368386799 630374251 237012084 496228825 599951000 649511406 330771930 532766414 83186284 688556413 253266597 619285099 811565891 133034240 343482844 621376430 821867086 565641545 197225051 856856991 963504612 478234317 18515800 819213056 514731865 194953491 577358688 557649486 237455040 208538349 893865852 874897538 382884417 338556577 953167524 332355708 322206043 130083086 887324224 288055093 740276488 734757770 582518577 765193974 24199591 20343142 669053519 119539432 751007613 587771335 561854881 956831737 850678515 587194283 260728622 195226533 601548991 445693321 560526441 383817249 160531278 926937101 294466601 446162215 303481309 922853643 69978679 758439998 172959026 359755931 816840580 24025567 103348937 397860378 785581431 241693781 298826478 655681136 577805665 407959131 312061483 739393205 374641940 894783236 902549855 938019103 972073525 631076748 637642746 547296567 213029913 87108526 360506662 989200276 190460919 412957424 975118133 463651719 367611202 284442431 819347343 501696241 444989804 798945695 653019270 616639639 586359529 193284377 967037156 209428517 278863011 623817568 624516875 510166667 880286841 444999465 189421932 548031840 429898680 929104994 565478104 398242835 851680599 207879826 934278622 383389942 54884267 519746793 375498862 476646504 110832850 578086865 974573895 625370854 543086326 316599131 914452112 980858046 309131123 389342884 856104110 965555863 354827279 955972573 508588484 979124149 683240657 641060175 390589433 596231610 583421703 989413502 201117658 427111479 518777890 894374775 358945538 133711859 337803723 332354855 128911192 594947363 534118734 257140679 257042101 625997659 394292381 668245017 992402797 317341706 81067980 8763632 859640377 356670015 388973062 526483368 102510129 648681195 941478641 17272609 341834150 986071119 293775293 512955474 738823487 588560632 614010079 624827581 796079914 366215880 96549010 106560467 611180314 674252174 164818466 294124142 361647203 893035038 105181508 524209189 557966799 476145164 273470904 721200493 105339607 672344791 711025307 485602902 72015231 567827770 429353658 177467722 556847590 107154111 882770800 88175594 143325804 226282343 479192365 727010138 214605490 344913579 999925641 351368826 711489114 212585294 870467468 998223484 336112688 989062629 440539334 267105115 931666060 748827042 517991472 32000541 801174384 263962567 911175968 145090566 92959714 619445311 204577132 227554814 579751813 690046405 250089011 425077576 852440553 460713556 484781653 670236906 687653771 367781454 661677539 531657405 413627662 867119611 457579005 752683667 921585322 42905443 922629887 196789848 264878752 472342153 484936768 621348871 300892558 470765813 976877756 555682420 160191811 995257701 407741567 286353547 921742689 795131506 624257041 810378507 512810857 147146127 47184256 653566765 729851886 238100538 371497989 621257559 783686229 958934743 263334939 157527500 983057569 339709469 117882914 713849284 663741918 915006355 385609874 172517324 283709175 865736779 621333377 161177039 20991841 678833287 834843668 988683955 430433628 94429531 499148625 226965806 451962529 414751275 40596141 681368390 653067293 504539059 518309282 426520124 540779424 47929105 136797253 791604706 599979809 571814699 320518138 542814497 198850496 928815121 244926641 174174495 353650981 749136027 663211099 14668882 27787239 920812645 606624463 71545274 218520926 697419431 285139068 609036524 119641496 887422378 332109767 708828199 793277223 723715988 577499981 904735690 756946521 552214248 866431961 753103157 492364153 653993408 858450471 956302623 156046471 635228303 297896651 799334707 934109321 431937511 134552545 871398180 141074249 879060407 242980126 979749842 980250897 661027543 926431936 936665652 744503367 911264107 758369222 557683994 724799881 978916040 954246003 339968446 1129999 29923348 112536343 554161331 792042055 293126264 159728572 833341031 638604865 935944810 762212043 508365294 599526146 808098622 634760511 811352916 689640533 313010792 598222375 882955394 416761331 221448792 429126269 346850146 397369271 259717591 813574421 521051438 895328003 477408722 559475894 599241680 337053499 950341023 350726520 807362643 839306087 644381661 583008215 199690581 375930671 255972438 589438498 298407459 605765002 11511405 359105130 318176683 560262511 646183373 990082313 143196470 910595058 548550586 301318040 80537413 636075357 241963881 495928516 489341948 724756949 980797292 787037487 985079420 968766820 195529456 37228668 496730995 654579238 542123035 432326331 581195962 934959214 464510327 904762857 223741346 797375902 654745937 611314088 497462089 724078946 576362496 377063484 600516980 268855091 747638721 46704536 297673247 49375068 116779365 128797171 322626736 216136879 971892154 99267369 415358920 477935682 671169497 702196968 197450544 535199981 144815436 297237383 676749385 113442707 283943501 320972230 530712853 138855818 500130050 420830796 16500192 956783234 628092994 319960602 825427452 529740800 754762070 137735446 193207860 850583598 896137632 994625486 928495660 982272526 503760258 935126466 966172884 359991356 875324369 487779450 614207820 140557714 796577696 954511950 717023444 121884764 738966757 672621792 120212907 544882677 321219694 770822553 235065244 205019144 771593329 352136584 836924829 138811001 888743497 547162888 996671628 592398233 513215540 708892241 951128723 24419879 597737592 550742498 513353209 603035865 90037994 808419867 736781100 452318003 471327268 198354834 347354594 571827048 790092154 723597046 214540784 429287825 243570534 805467742 219145512 323972026 124422772 664109525 139692536 637544106 176733635 449043440 600987756 642474754 36348453 102349943 27274332 595878882 821817190 329117561 719989474 359192436 233122045 622993195 760627400 106763933 529042506 465989945 445669014 582272149 608070019 906138687 47748793 912653116 696330668 435231664 490392152 763731421 127955433 562646301 244287424 633343476 22382450 732319112 567378263 864610752 149019134 904287975 408882859 46863867 90034576 655548745 320187764 587536817 302312153 508898544 377034802 12669450 328449829 70070677 521751055 821456268 283008606 332405122 334376731 520547228 919038578 505512643 697089185 868233573 167684704 905000190 927518006 828085946 467575791 7700739 576725151 469266699 87464340 703572321 778458729 223594208 965505363 837894701 168694440 519522068 427506348 189280473 4156301 17340387 161825847 448449876 257778894 851162600 128459865 632717345 324972732 64081284 42315115 691610080 866912378 298034595 58011243 74909505 908101249 381072437 166673339 248820790 78597175 254369028 480058489 690535662 713809556 558305415 272368795 933748106 606683906 471330016 955854072 193833417 109339966 841290659 54406350 644445012 570043105 894736144 405604116 427820242 38305334 977906846 479018577 122900772 440514180 244538905 866267686 553964294 514828654 129204453 701948125 407217487 122432706 417354282 842139320 776781050 444255383 363686587 893513897 244715055 942875138 41540738 11651274 299966248 276001505 767964665 63483937 718295408 695776004 834399130 310724338 98621731 307156725 31429940 156041323 720132025 264529139 53062759 541045540 742598137 664758973 811291729 905159232 107934130 364810147 306008942 177107640 471407097 500777214 221374446 432972661 843351667 326329744 528646931 647683876 441044461 888783353 867154194 56418385 421621672 534588897 450419446 843775472 922221089 752623566 34662723 369709470 51802201 779286005 86667942 158997540 701217433 723953562 544871299 674995996 776422866 100109855 148731187 910373903 239399795 171267339 574137546 522347149 416077124 824189951 191865556 393560261 646859638 485549342 584729067 197170289 767472609 53798929 807592663 325948286 738468739 488900431 11613477 628765617 353251816 984602818 980020546 411747405 536775824 542464642 701385115 961781954 724713377 371376553 88484643 249556547 549665160 688015312 851670153 106431269 697516458 585993550 189759090 959998379 366495737 240359282 691637431 219889775 98142612 270038227 801195683 6929063 754743715 506864953 722316809 224787666 199978091 717072856 343676528 961298780 669651402 955668451 161248761 536927993 147314413 132789888 861958087 935792858 714050321 255499685 286110990 447121664 643203312 134169018 372615616 312287277 285646644 850123845 373304579 975197390 703090398 671707096 813096680 169809788 327908961 383509379 814410047 789175527 599072323 753007230 871843417 704784320 652045313 762281637 76840217 312366271 768918000 980926722 697517557 187826350 109443633 116167402 55036661 975781686 961160461 717459863 101888833 392068073 485277989 103088524 830767393 331145635 67486260 890518749 881587419 658180848 870700224 303122622 19001370 205110692 955448916 426230127 790163771 267070422 402559914 272432401 124337808 790108354 639428026 204140654 686787411 814032117 867416721 534440440 39134223 740371567 424022668 73412411 797816388 83036400 663605483 347194392 327663010 86124917 403563583 512835234 186103589 896175623 454241018 363440098 224552048 111429544 551126101 267264167 937214118 56973013 133567442 522603660 259809287 835117494 266520330 782770612 643394182 648439823 594791147 747540139 598639204 486659640 858408692 772426782 337878986 556748832 253568080 67792470 379639730 597793246 144039207 170634035 948338021 689596012 660949668 538887551 210750998 448787694 455723676 347245307 61121856 899972433 897442264 944861612 524199761 136500158 530541479 807337559 442552705 828770106 243632301 735243969 316926045 289679171 261037203 193463161 739495744 640356641 615677422 216939887 422615253 362481307 87751739 927723382 946995407 309294965 283173697 882474152 618998162 868933764 91488129 597462292 979956033 944295059 93981057 583295871 290381362 347555729 250123940 825527290 247751571 773600422 987205295 35137656 917061183 446392602 730637759 620090150 529272728 377203855 428304435 578085643 790796915 82343879 19460471 113527479 764718390 858458283 356941079 293601829 268310578 44797225 594973867 87373015 678998746 244849604 219216376 821445025 563419388 489703367 290365133 886759071 560605980 881409941 975348260 23850884 839952304 363525816 338616408 151854941 844939883 501915851 487129529 904292343 971406665 892236305 295975011 206781885 793562598 298869134 156457368 732819731 667909414 374162331 881278022 589803815 686791793 359091869 813379908 959721662 388186077 562411955 814318515 270217232 402675342 522546188 618472933 664263137 651696446 561920459 433201067 105318463 256347562 205606828 840743070 974188923 826459086 700296829 11987816 151432475 504323083 347139495 151839401 494685367 482369204 688429510 471663212 350515466 793410896 315088409 966305462 325736946 594017751 762627407 615475791 58762801 868672138 767553567 126122503 384082740 202389108 631526109 852136711 906364693 986049983 763347471 974460980 221475717 247383356 131979565 475290044 373419790 641038779 27285461 655014165 276779338 28585503 60241267 187088699 401313980 240714619 381848926 908009685 314651046 736759102 334346795 241438288 118505877 491062931 131255622 485295024 613062847 854241678 171134483 660178612 623705344 24044422 979952101 894434338 26215905 995452314 684813359 127699094 771479269 568519955 872584953 447043916 327108807 201901691 409673287 888151730 480779391 698472193 877565507 707058621 933916164 680641553 97215110 365509169 759796478 434772769 257887238 283410308 215591001 238804648 442776924 721846706 533994048 193204082 826798162 625579970 373468750 822055438 5592669 824691105 649501467 373768576 83396506 861025636 278939184 777177163 703680687 491446935 183235941 836224759 666907135 684144586 109725395 81502089 393767375 364699747 312545531 270661912 685016040 112205776 238108061 57819314 655980138 781880882 225369357 324316735 829175196 441819430 385256966 712447005 766719363 919536691 514464253 552034528 564325013 509340863 360004480 222575730 390109785 713812910 141130803 112420446 288756470 766764525 171381035 454716745 700983493 227276698 482686298 603733981 85907737 607198925 959191048 395280768 996417264 580063334 405595182 254812430 184798126 925288408 423733128 734115911 856667199 877607605 37319456 956710960 369272197 65942192 13145616 122750167 549114745 28181142 447328079 691517438 10582032 275547683 607119998 910342519 748344739 420925773 299201861 695533349 862569902 498275964 85441992 261216633 646025513 465337501 575715855 892982121 611029701 452147480 967643697 990397775 461972291 405588232 37717288 947952437 39767245 50609272 449746020 80799501 854358410 835153244 446818933 393158654 800068232 891190796 160013181 322651623 108483848 882802706 584059121 627222681 540395867 369906472 18464391 947941254 849140078 82142529 708590645 625934027 446806785 233345892 788358870 395312718 981123997 32178045 685577139 659727403 872671045 660146908 997720677 282097387 414369577 872047488 415870278 190810928 554292992 82467698 450127874 964486042 921506022 575248511 594371988 572000307 385081886 677899439 395268276 561093347 999559588 984950920 144126361 306394616 258918170 439864944 494300849 695855179 146707666 686436721 648509312 54493499 890225292 698425300 585829581 520621192 325761936 483742204 51953483 789634768 85370980 910138144 234561376 184895091 724126487 8315757 781314611 62880552 662192819 543745488 58570502 435371271 582410703 648736611 593754476 315305551 494510048 969806276 914140958 242105008 689169742 463738565 235195384 235496944 990571724 237450527 297963695 127000136 771538131 148428079 767738817 780186011 154955095 975238593 627412807 281758733 165590017 699643036 139969329 399815005 274308570 292560558 450013479 997167749 762579480 666298302 191668022 884106638 364507374 665512848 934785756 700586212 650735960 396713886 369499982 836059146 114103477 92238485 851556067 836189817 984293375 733836917 337181730 925407857 965166482 998802289 69423425 786108251 770167868 749272439 250414225 539709598 978210959 734909540 740127053 121714968 15075898 811726455 981359083 21530083 80794789 869390099 536912845 56129551 384128783 618618911 182106620 69005883 551093900 951803513 476297789 693464712 836153673 429672059 719652691 548576583 178502840 86056817 150296977 23935851 77299306 628705685 893329432 152809823 290050427 915004727 83101693 925288604 724853060 399188512 995625987 394793988 182570688 2850949 124560169 147888105 524969054 295996278 297287415 227677698 652836300 20121822 606443979 310884489 420496946 654482449 521272672 388700835 961509513 3882634 45746116 608454344 482130902 690706956 880606699 740897136 716575441 323851210 359274769 216701926 971633556 217775921 985881239 817562906 438987438 957271613 483957020 314354975 917630883 966904439 937450571 575305132 20848129 67708736 869576512 552575487 144002690 376344248 711764647 35431082 703980608 445869884 81171862 195231628 836960588 34082318 494579258 837079273 855780860 216757451 723519465 190447269 518728488 639819732 134424075 732052479 983517020 683514419 37355375 209508039 743795463 605980357 826459473 20247262 814338954 896855532 873671642 49714227 54459133 485789293 538735874 611083 190252310 803439036 981128778 562507877 261406127 407145191 220721219 468978223 608613533 851091900 899632798 465193036 5331726 20467025 780404773 192587490 632365469 956364339 524572877 367266830 861276732 779800268 787717093 891099730 27194113 262262301 84209686 534882927 687219853 889598459 922673966 264765610 565466781 933357073 291240984 559520674 524635002 525843130 310284013 367944606 866250500 780218454 509264781 245731365 327632000 735203659 716172496 788245597 465875896 721280583 890050800 940763548 18031996 911705452 380247127 772175574 957546928 948929909 36080657 831558965 739934979 414938298 697859540 29282839 173565473 132643685 971987846 135561979 799568755 739585754 651343334 644096511 958970915 723061897 694383885 198868863 266942556 461868478 422127930 678313606 125383919 283145897 506544551 964301534 96735450 128077185 728711658 131882581 385864196 110839228 110517074 157486960 317580828 414410238 37997144 776544293 465186414 39972188 645364784 431946609 52541648 130893734 604192585 215323723 800748701 439011266 904735986 465819846 972008013 89860561 525488279 640632131 867984388 768864703 707672409 530283805 24096986 918661448 647455042 966745378 54965440 300612703 170409704 186970019 757279526 704459073 511582383 349591406 597102242 852279496 165940848 735251758 425742392 534047877 710730159 131576726 834097448 60070778 804190621 545156091 458212287 332895604 916989433 989153992 733658039 255241226 390569495 619180369 706630938 79713446 263125135 998839832 388206686 547402645 471365200 360733899 745219227 549145975 39872326 97894250 397540083 796804250 869943927 725807313 924567546 469250868 94124141 530623829 78768393 772972712 245175500 585768123 722336779 842249385 381238633 906368767 842525625 395148518 678525421 932804754 249018978 503012778 984217771 678606908 508044349 800335689 838264440 375381060 905763098 123758730 76457826 599129544 178569931 347414756 257238288 434556310 52634903 175554325 55532920 6295676 663473057 323847404 6079364 757158510 273746475 413912003 505147233 972313683 189672324 13378750 812707235 111261583 358089970 816291817 586973725 776105990 768193695 566102144 323996119 76083701 217106136 996391619 850394054 811398277 968781078 744971925 487782647 71170974 813763662 338624211 393173262 736798744 251619473 808304051 649811161 939341967 384971033 595073756 238074348 33656637 561670224 181458497 922890204 641205316 266888629 52781107 523269068 212910430 619789120 822404597 619412317 191906462 653125159 107995793 439577330 502100940 711861162 943839464 394395562 654316774 818467285 448020821 282293206 457978539 13282668 867033235 461840567 591416101 793123434 581389425 590591548 846619463 289284828 930843799 394173780 362761637 219343536 73586955 743972993 484824785 678709740 536237187 287734567 371789703 15421048 256109851 269050571 324922115 905762133 800894716 735437107 468479763 282091200 216452817 703729023 59759846 798464308 401774221 475119816 744870403 330769123 302295996 782143578 432253046 902331176 327631571 671999129 357097321 407008134 497289046 99365806 4226944 775211623 718352658 620988058 571754315 830450445 16306685 753208109 312195444 29693892 867137749 487784503 206311447 94943817 182197407 388302168 238955015 789206652 297768211 330665462 399274982 795588823 543019554 186079060 311754328 292149817 684707966 524779876 345380798 719202010 568964645 228330851 23075758 237580193 195478539 579173487 522991603 650236881 764854867 924540554 481107204 307603610 979807361 369236183 694518371 377052728 416294813 225494747 1847321 344795536 915555456 282378784 98673875 634308590 205331785 165961743 47011290 491023101 359708258 685363610 119599356 245167891 424813402 235925099 646153204 149271704 226620166 78146234 732190149 649648050 838241742 222020733 355787689 970786821 523203169 829610462 214220163 880184868 828267704 809711256 848989977 723753916 834933706 264920175 940059472 484236630 719142651 240164143 863385095 273060806 831940075 72284667 231958504 895003151 630311946 261211444 836296045 784838967 428578676 723486817 42273628 649699611 216644583 935704121 374651875 594050826 860499226 196497281 395508087 561616260 740774049 630196791 579108215 758589774 773379579 666508174 193789847 552972052 457709980 144553655 804740440 928672972 838498928 693430587 892554902 642561796 952012110 618835275 819485939 543858395 315062846 220181267 279442295 720238585 606353577 735496467 692576668 272089729 702328310 836670471 912509548 704877052 832051892 353371881 311372302 109592996 448688598 239873685 15152949 239845264 572681676 420277345 640379789 226126681 918569652 625480655 216976213 523105294 735851014 801185893 90484857 656984235 694815570 623029948 873833587 202952002 228181080 105799894 226157693 878188224 718558573 107260281 343843829 242074261 621822428 38604746 219810616 761755792 187540558 759480408 850386483 999213673 89710585 682050216 858701437 680588374 456385289 108693920 819351766 951994135 469807569 837643177 393588611 653478850 882682108 708124429 935645525 357894902 870325934 538777308 730454322 675648898 697146247 236321843 699546509 94538625 116451164 32511783 876739098 886102357 277693842 629597522 193292412 917672972 703457519 768674423 833128206 633154886 49344150 449370871 396858168 830084662 903288811 113859348 920656244 371005500 270602880 851526848 58693920 277075263 402924209 3411809 411849824 703766489 305392506 813634391 387159283 973316072 599056930 434537977 398785865 445581239 159571728 930700277 666084449 804148311 413300273 678974374 212639741 520994616 258087724 50953122 843732573 380306042 862697302 913598105 969279925 913604686 287967801 523477294 830999269 517351111 835307801 510688056 291259104 640668920 691597327 919452969 665547242 598107338 548009584 13161617 527778257 838580004 786617789 21245623 915685885 606291005 757537539 290690257 251102888 790320241 905601971 353897096 315835475 578904855 717687040 691886705 813435353 818351729 667111022 470366970 274304597 849595933 716017708 400072421 105364951 607167239 571350876 555217765 58595649 287642927 635402421 815598941 972614619 689176975 535884272 543057984 933958052 62676862 664066655 267201607 248594570 438750412 434656616 357173339 500118598 541514184 709485034 496811632 527161598 271648273 457747376 55042537 486129363 853854951 318725660 656502196 841843424 500308662 333314755 823894954 276230562 131756624 780286084 933334228 460128198 837632569 563211578 219308848 519090699 271088604 687182247 675133220 290964083 913996360 601412058 680754113 51786372 899658122 422137175 265412055 543068213 806536529 980089882 24420945 756505057 626109920 670896375 982570609 549453698 349048105 793600840 181094981 745898081 480947614 623566532 548844085 942227686 649686665 45620364 179842953 551833516 349143780 98293636 244199783 644363692 199850986 736289987 763369799 29861866 853074609 79565176 813788445 212143875 925605038 976486025 942839494 285822547 129640344 869361434 690134995 312444808 969580053 178566940 592674193 998699162 566428216 677808491 505289919 36046711 803909379 753219173 921969633 679124622 752273164 310109275 506282927 220827049 529061317 608199558 70650047 87796872 967079762 190950393 491362298 522767815 941576225 636407038 978602679 59684841 578332334 642443301 237003597 539320363 543600030 666125705 657185517 140066942 998731687 580254530 848198829 226887310 823694160 583075461 264163213 571855747 251934055 408870828 983506040 602374459 265793468 517651423 957024752 14592361 527669983 831834947 141882877 638700880 168396169 612297600 980942355 70965617 345590453 885846998 95724733 689110350 148863825 466393208 14965098 764663800 525146516 342990144 483123077 435998545 982953075 960006727 65718960 951412747 271645576 580493489 285563237 695419566 228713371 418057384 29910840 680862134 451904225 362817943 529085742 811919560 206191829 43245238 331933575 834299043 596012362 540406093 576847553 262551608 78259316 585566549 354991022 83997031 49405696 652640356 219166749 444754418 584615879 507115497 790594019 117140363 176298147 442131027 696572329 255892625 741637009 172143920 431167515 283964896 341894597 786415477 604894307 884588542 334550665 486119434 181280604 23018169 921747016 474616748 792479992 639669524 837577568 122589052 367627230 619621085 629966618 78974508 705723081 154538549 704591868 986964864 127051424 935216446 335868940 664845092 819483441 195497992 61692619 27263494 674544463 764549569 991615167 349782903 842827621 954292477 462108081 21992460 961500334 4406891 328176121 359844637 880479981 69754691 663153535 435754489 835261190 13932601 507126673 740200167 202254245 304248701 275742213 561057356 699870896 766139616 433663391 691755225 751746390 677690845 853632798 146926693 992919521 303605155 575522051 441330161 278956198 196394718 326704186 614791410 682448622 417413777 909665736 992479740 415130531 426761334 956174434 178505590 265232474 154406111 481673875 76695468 726270162 684825237 263286963 620569830 98627484 367179365 37737366 816470405 418120944 177151596 449345200 516903646 118782108 226823649 359633360 712496987 690794685 698726133 683617955 469244974 690230393 318860689 672081856 675152328 314099611 77922337 481585465 565716000 778898368 572342216 858559681 804272312 723345347 814257309 239319051 747837540 852615043 134074362 43214343 233890823 661290427 396936300 452927885 676977997 459890536 541756403 747348155 833000205 184984030 596361935 270147936 913973964 556168060 280157157 66665004 654241446 474490469 309179271 242135435 857703473 122169110 946468681 986493154 832341497 412413497 936804826 442942187 695704813 731523710 378024196 96679409 508318571 466574129 157482879 860063024 686519824 397522074 435498443 782617696 651210730 938280979 348792229 450107841 549485549 872962621 194766970 158021697 307675210 768220549 836823992 146422542 899267816 466003649 616763412 557132985 900472931 811845004 369238031 902473864 784059849 84915655 874338063 981472114 50221524 471487997 341289594 265590878 50230196 479045199 972187072 989428864 105512623 695125566 899515864 238276146 352279939 72340890 62007364 108846755 105333743 466663597 835549269 77961602 670221425 904802723 760627740 376799281 787783901 307368034 355079707 939637076 66215784 575181047 966483861 325879994 139159816 515268456 488518333 762215562 301607822 110494943 304841275 990641832 903368502 907899194 517774258 680589222 281429356 733098150 7381970 78085151 308671793 479517154 371495516 60328620 547130562 256789218 607278541 573953076 732253114 100530681 867480731 465147109 515845415 543550678 493743308 612679629 16296643 360867352 414380362 364180217 602195651 787836787 88422730 314353877 197423088 679962366 915457449 519325944 457504146 535275281 941704395 778652997 216769399 210402017 301345127 40574309 995541601 16404101 739636363 432753355 687871641 806643136 168179614 439429559 227463498 283394795 564924500 470490675 103654203 672314470 831991378 101930447 752300750 689296961 727869767 436798394 879086161 977462931 421705319 588279801 595745158 945583668 395016829 903801573 934854799 499650200 758453854 92397437 662382066 655377124 395910684 710409255 475098129 710766581 418851569 101578028 580754349 666783982 552911205 422789227 698600232 457345505 848644254 665119641 69296498 127187874 658379788 556910468 401255576 842870441 297026354 274664581 520324823 877797973 636896275 540999640 626012441 662142689 717355072 536083710 587829336 795598199 75854872 149796024 111047174 88896543 60614899 481984046 35636319 253233326 673733056 21527843 361893836 752966222 55719746 134125722 531324653 494705668 487485627 328932965 191106282 805002144 733231175 947037473 565217987 992625512 871214884 221274260 284951430 137570017 118639770 971728869 41174667 355175027 188713281 121045327 63267440 100032099 902698588 176696009 387216193 761793024 395006360 539382481 508885933 675645185 626842800 841673097 52633752 401960852 670741210 890714685 6410280 991958353 183977815 183631919 830524806 252579021 431488819 10927329 335041958 278129597 531825245 126022414 748146493 334091742 971945499 86975975 612083059 270926451 855173904 392717367 732434585 786145118 575012621 607290830 115745396 58427637 114761454 62758650 406016888 665147855 19485025 28817907 982291067 221199093 776995783 167904544 580051321 283103848 685928320 550394028 42856003 170595297 905452116 34012137 147801110 223511378 943129595 708309594 621339157 584967442 836542372 66027631 27155876 645370364 74585327 413882322 588056214 457849809 95596117 520794526 495032885 156385254 890772390 638151404 135181210 671264603 685322885 877875934 32214999 683596437 203495864 660737641 182689275 538375454 705942805 595729827 734784384 589059133 145351562 734369124 23065846 371366852 885192941 297330364 939249962 993089332 627946503 973767528 753536013 395853232 195979450 29058661 413468339 206503042 390575636 660309199 861770767 671350077 794868911 168466632 981012343 529669481 723512731 842092864 955220226 978587379 271483463 174337143 396294888 674606928 940805581 631689844 997027854 706778299 958055491 647139235 513285706 609467752 182364973 128895066 921260581 261910722 670157800 885316581 417980288 863385040 649146809 194084042 815253758 689470034 920645101 149329610 124055333 477659828 562463754 553085372 398987402 390035841 732631838 520990044 8245790 888826089 350208907 631337200 839951096 992568459 305318419 64837224 541216851 830290351 439019868 807805537 415188910 287579100 454220910 426924937 166406398 291072242 880187689 767191314 656467682 108158447 202473482 893296684 948028488 827160287 872161208 614261310 281852023 212785227 219480405 827177215 192238743 134891067 958030859 903151524 500509228 854565682 551940599 636897558 775604461 410514123 187886579 433489420 474464627 540778319 315973540 29923121 309632540 384714147 144372009 442321412 721481545 939998963 414652949 277365688 185817420 364935806 839781293 68391516 110945162 573093848 632868645 425519229 246877228 611103401 148971722 276913926 692811000 92945176 281710794 643243800 325295068 439040216 970351595 118390679 51886323 10801189 622904167 503098002 590176590 596754982 376194705 560812122 70587876 961727888 212460497 260803348 81328796 147709553 443159261 957784104 355579444 691532679 248239616 81185822 131370257 228016912 491132690 997331244 702620204 241519055 296462390 437345409 564277528 239421546 284299217 874807330 480347277 847733108 721036151 470710342 313133304 424511445 303702976 290285087 138651561 312782987 928532375 791505014 929429854 304584748 497509805 524249304 416422663 574952525 679664162 437074824 785417009 224091592 360350434 491463688 329465017 318245166 479390471 109498239 668800939 872532849 485423725 764862933 674446558 183987579 800063531 272625618 206871529 802998296 379275618 242084168 775129459 296778952 155474577 266598404 946350926 841670775 379584764 890236768 491658981 659316212 433023161 182883888 776778023 662640584 554621496 984025843 390530502 294807304 973100184 82618690 570946355 489054848 845594106 643147124 238129455 774309353 806747888 849445523 663138376 249611038 740158296 595564679 278767038 758604624 583867782 203013780 698354383 303373258 684854901 65011983 877979191 934010699 289583514 601852249 713390567 380159681 571969814 878092447 28772717 271242097 990816420 825778625 195756136 585209915 414163821 536716685 671156507 142161608 438150952 621867725 145354137 617279705 913333639 154371421 825559669 795743961 772670653 776783311 854758244 133439055 966986313 520021243 601548731 328540008 353199262 897530452 956719644 602742054 151844415 263426495 751287063 964021970 6085417 930070580 873942692 159247016 676393674 681021311 617977114 817668750 375266183 721545382 238953331 4739714 499174360 825417030 389439406 204798682 262726893 856352636 146309384 77574510 639044811 82420955 517137987 733494743 226982532 332987539 953961257 849724671 389040651 204716246 544823854 698339531 376955303 649753449 522501548 306127196 145228457 3711293 396927797 244433761 304192412 360642401 355830219 474270312 877934568 240328415 11867391 883955000 816499174 556161920 393096626 709633696 600935311 134600280 503077839 99037034 901707119 583217196 411561358 404903841 593344438 538648757 116610825 50666450 411811184 374248052 496719314 46057337 956170068 542665367 789146037 58032919 400093098 42741810 650436055 995698857 155226409 587466623 727066750 679808810 505272666 525693523 260415532 280043576 413754252 811755215 408098970 563354753 132664297 406912132 850680526 333154898 516909358 801747670 32384537 431399947 373625859 374535107 850341513 902432127 106187142 131987802 166115594 137150438 704574148 321802104 814172686 611843214 572277985 11320479 157469692 376754141 400312183 321448703 931227747 328523805 556577462 477533264 468134142 667959123 631908911 952209853 266380981 137208197 819940867 812770125 17330301 165967759 445904469 95752922 130265715 231788319 482740422 553230185 128301956 349143352 273073843 107696143 686939344 174186668 354657798 660692462 400054333 35060821 397276746 199472879 875660222 562264217 404029622 208078477 860546628 806012815 884202131 25346742 969478399 28862064 82974318 70951227 635476449 205526073 117707748 316603996 821088789 634179910 482897867 408817499 736022569 905637819 480300604 380430559 670784106 745913520 850173476 363018738 202917399 861272002 333837450 670253036 743105534 129653535 746416401 120013797 666032189 869114059 352945358 541264432 87281944 818288511 190609029 573128057 585986123 876133798 155166524 850258601 936378688 471632250 12617540 935037006 180519630 101250101 370593925 599990348 896000574 218055963 161842161 909921631 220102065 652864163 707438667 237358583 124816602 402026719 919799794 217954546 634395638 603466635 665647984 477656075 375344178 305731984 903824857 26471892 606223082 578318636 945914727 792135089 409944687 203407985 592243790 639045423 458513403 420540061 622687978 870569337 315050543 731737920 44535227 962716521 214121044 439004159 174614240 981666030 173570566 310795430 836803083 150070697 102088047 876306959 323816604 403098683 550653585 939869446 274264086 582399348 273391916 538488700 832860036 636437897 711868712 917203535 80121042 588637865 105709509 975845040 85252393 896565598 657368130 731712711 145421817 425335399 305517495 107399584 345004327 265751862 942861089 327578435 303276974 700170030 968537945 360815977 131881693 533846795 817695092 230799304 233375808 846863358 857169116 819832929 658992928 593471279 78447370 359664575 543316033 296331237 535864665 349738283 330364147 341343624 810166630 44981998 88619660 228253881 227860589 760447160 225552569 837724856 981575070 164845215 729086876 130502564 734759574 254932838 886002265 947186329 37154536 416790211 375796924 598368044 2652718 594195471 669821576 486871965 863585736 783176438 58465068 188832768 266033377 757778497 584448287 766139715 281974149 307728940 353589333 810619957 933840588 875905676 152191164 173948185 643724093 418982113 678117819 910947023 561914538 12080332 106146731 176853796 595926310 438550782 605923577 448008635 839210933 638847102 290485623 66808431 178036772 692053592 394027262 616594164 415562905 591516917 680759109 452880609 386622105 904821004 466677683 859724090 662634751 820582486 74741337 786375748 815187567 968563903 687442756 375820753 926129702 6897837 331437466 680377506 522344657 665032576 462218929 218527621 390781600 648114077 937805877 619039472 591776457 761534954 374584601 827807793 35852566 308365042 568937819 860680291 433404629 239983907 811717689 313045139 216624864 277781423 869954232 145208737 186494606 863202318 542781461 377930236 463657638 677804361 50990142 567492009 142044542 765468342 424205139 357682987 853406066 127059524 112105630 470336040 509994573 930576682 530933177 106385978 293054160 303040837 772740882 642179717 243842044 29184968 777434945 313394610 905237748 587248063 619234350 922306948 516350791 797736034 65952298 688495599 877427837 157117575 101625558 427050543 830312731 245859378 581082524 720561954 346052883 803290050 17566543 646804642 280425630 816453963 329497620 89907649 880830904 831042440 962177632 912629035 47652002 412821732 405318842 641547139 388100981 994225550 279588684 393808952 409196064 600354716 4238735 291326840 382857702 43806620 31233516 460888204 551843189 95335682 287178948 83215776 189388368 112975160 557827771 28799229 332813886 271833579 191870254 303897083 491507452 297708619 832780563 975678881 334649303 218557652 698045256 458163714 258779256 381534779 842218087 977527481 314657130 157703840 184324389 786490499 435656034 659289174 215485204 507896197 94670475 741562658 637795808 653187263 896663472 15610748 705460516 307785559 138954727 1429157 645398844 615031782 89110153 723152562 555238781 205304166 267331775 649160344 97310921 501192399 722367242 11048487 887800273 24994664 365963583 816606571 130189224 950255940 972207606 83125518 704400180 386189305 663649362 285814016 339204246 429489247 877838082 246097003 327133579 188785819 909764404 495256172 142259620 410505841 467956200 969784109 182012707 980578582 997275758 520065557 778852870 463678920 504395909 344546134 982394920 560793283 375813095 125360132 501953202 152893523 420669912 508235539 131060494 816811380 470270579 12511165 42151638 863960195 882667336 553206982 934613698 102984892 431119821 395864036 583559302 864490700 994369689 279912398 687897881 673297871 182635477 960781455 498434102 774507598 644037429 259583352 810670276 8743451 650182241 969067857 216072116 181580290 855552154 263899066 804571241 495485084 176092758 951396572 48905705 68259642 938393665 871546216 987276415 661935366 862213412 898169582 79374944 575854774 686901137 339655733 353471941 41919697 339935812 374309816 457030398 62577518 250033274 124876644 223849431 194992189 822527399 253370574 951337793 133147443 439438828 125467426 577795640 807777701 986072847 277191333 23760892 11650645 580495343 491849014 884785831 805543692 453080524 652316012 353764035 225730007 163555260 567760543 334892297 807350161 568102300 971586424 448172343 68387273 321932362 585818179 125098853 463726158 764779237 552349118 80744312 967285566 410645985 701337171 488959119 343092565 31990283 844108365 396303808 486098616 80968324 653403002 960776581 445628194 45791849 458270885 985137382 898276539 914387348 478664942 24159420 289806337 578690306 725433177 57916574 318976448 266212319 561101730 100031287 357726482 323239076 727245640 417064476 475720540 926239171 871732774 431444179 822554738 6248940 326587616 819253477 449530409 445995633 455715135 525989564 800842599 429957117 20016773 654896149 408065790 950214311 631895094 454951274 411296446 139882850 364992485 843348256 888953568 341628612 205355357 516532261 674820374 129333016 168087827 80088737 34389150 151496226 267776379 531875170 500373365 659223219 602114436 344582584 357194994 45713571 366622082 150231568 769147183 631126544 766414282 443249419 804007880 243253301 992165664 836689464 217422830 529967665 400960603 142750438 345575404 474490788 83121520 297181463 465278696 137648186 179770824 194294392 710717116 934433375 663137588 841879596 928058179 418319427 739792829 523822700 376675006 802214876 413450938 89908544 646614793 884734356 569953700 678468802 266979059 984248848 870628769 942128482 138974885 283903875 393220014 303087668 765278259 488273229 206262698 497642705 862656183 92870802 568911295 976754610 578358305 244698121 27795271 124227505 682952492 746154379 590657974 152141703 333568838 443577401 437230735 336273209 787112510 624820091 187413855 249838189 344836995 777386344 110161656 893123103 657267316 964849962 690031874 901409890 157631282 466577928 487726681 173422942 88865929 398625714 828289869 435444777 645686540 442155727 259088872 307253550 82865996 945487764 756522520 361325482 640297648 709894503 435311478 733917126 183856982 622420987 912668417 475079562 480348625 300992528 832497655 257151939 408941017 494456428 334212654 843396551 352892800 154752353 220370012 225052703 999467006 817315535 685661600 952479581 586653018 728943021 175467209 332139574 955640823 421107866 781578894 16358603 413735534 377013702 337225586 529965944 568639284 284248178 778527094 559494033 67649597 644465240 391434517 885972735 905756127 614006542 454019869 321678389 417001782 676182824 758237581 54354089 166160473 23292746 625740852 557647478 341077976 866879176 96254908 116257230 413469036 911759272 965522351 761479192 605795393 610095888 415205782 611866025 421291720 945350780 423236939 562573447 633707199 488341690 901642561 511118691 313427714 305348856 697784319 428025024 713532476 762520389 840949802 286936874 685188859 666162926 433749391 241293446 821796748 406526745 515034185 892169382 765596121 805115276 652190360 706151559 156614753 393834796 185677343 638666316 815974903 95219871 102285834 798458243 840857355 755663807 202018877 763370092 666488135 726821567 444996101 813928516 335812155 422240479 788873648 34958425 456095543 337528199 752388105 199945870 633305669 748862183 247321894 99330138 525578910 697828461 692865065 2263568 52428797 118335931 814148899 54755358 865430756 93135269 766127085 238055361 2985446 844671486 929395702 244995671 758502967 345508880 446644915 634797560 124501691 769433179 161364696 146438460 988767277 16224043 362580315 869106501 411501484 583700112 682647492 389314942 8663660 589391575 5341377 879915040 314898437 966057067 657628560 461386292 603221576 883879216 608935314 755017582 880202610 751120493 965369459 839549086 399210800 562176853 179243406 815515223 133482599 828377899 970515555 428765152 44095731 44822325 521260368 759037933 330028395 294935304 478948700 869209260 206109524 901101478 293095536 807017989 260328336 129130557 401613723 517369743 84839986 356857633 173974029 796636391 440500925 127159270 209855972 40568955 97875724 228224090 626436252 546220047 988531426 105757907 103269011 44278949 946619925 378163735 936834393 837828113 977453940 82673428 747773840 316109406 479564044 460093066 485442061 933782918 870493558 443091352 836415388 31527949 789568847 269646099 670734562 198841714 924276925 522530320 173133502 399649737 564865877 634860738 771854630 83471892 800146177 889426293 598531200 668572949 386425132 179219976 183495537 471444079 204324938 546733037 287829967 684508603 481681706 443731935 415196111 192449496 666176311 63172673 592307139 375427510 814580071 645582757 859543950 180296050 231600023 370595914 167445020 653298140 402236497 449987055 820264356 530436117 956118594 506866863 60202545 776891181 810600176 524442798 588137578 112700908 287938691 435257141 665074071 583886044 909028374 424984265 406088932 914440754 640026417 214737279 753157750 268670309 298896469 580965613 183409546 99904205 107223877 964048258 785412162 374296793 270577615 841994488 74062559 621664581 233095703 855541026 286460182 426894558 609244344 99841769 927598294 11597409 836670897 594781107 73642685 805887518 305609121 567259423 383951327 954307098 828064640 998151102 10041547 76778340 801454002 578768492 16501060 915067579 351803998 972913892 410337003 843944330 52754325 691227607 592214122 136896408 720479275 793899859 37258198 738406810 932902493 908251387 842926886 806630515 893728538 154326067 750089388 314236664 879952917 130970321 349573726 314870703 159034724 37087479 466565542 44026765 63563602 780498625 175845296 999177804 474970987 771387562 426675822 793305476 876465136 722018438 246027800 703490099 692953149 81022975 884071850 372716812 304170791 982067707 851069172 814336033 878216576 474923771 872564128 708047878 965919697 790666208 593493417 571031895 679388976 114843181 25109200 124186301 861074026 863618668 677196059 359537357 833876657 703475300 114183329 187694364 360730174 164143485 263703472 710495348 114270034 886337203 993800902 808689909 988803189 28666879 369876344 212527337 620585 801336514 258294347 714773386 796169236 991460619 773185452 670535663 782984632 728115190 22286350 260185183 883946796 931407749 309788049 353385050 306343008 546846615 600440888 136971783 341509815 569789117 748580928 956982194 254191519 672167151 84959625 188829443 92517675 986335998 833031589 538731943 272331207 793418799 863379445 849296968 651052731 511100244 862470703 819146778 306437343 312313054 178153048 6457798 870517098 742268760 797155219 125634240 464225990 69326726 327205876 200873901 495569913 380127729 532391942 840324643 752150991 16097485 224371125 121182099 55322546 885405166 950149661 51275443 338302339 281980180 396181030 265174671 353295791 167992835 664910723 626549144 361045075 93048749 826406139 304173173 723989261 361139977 999110813 362563190 646248618 244244577 699113305 616691445 84292650 56733436 382661891 546970 93349364 313595091 477545692 364349443 348816204 748844362 705483280 210872401 628667102 10924235 601452787 239814811 976785665 302845860 171514957 588319073 564065504 454901149 290446145 832912435 192205614 893498966 363898466 314584799 393577466 548113253 875103969 540957400 882989502 660471411 220255433 396034536 387800177 106909648 254356998 744049933 723459829 551090818 20798374 932479499 915622043 658335848 726510038 696187050 717369315 819716394 286094697 620100070 785525592 473772520 734078983 287714853 23511786 503352364 558930945 206138636 983950413 798567056 591877119 77714469 403487922 755756184 775644553 256361843 950071121 581814827 754841177 192802914 249442423 29051273 201708662 373364945 840994699 553950639 250651454 443192363 204510181 444562884 481236019 780092178 128695870 512105063 876688140 122556986 119087616 989722670 52129912 393744632 192738363 270570225 231362628 309365486 178323401 953318059 910114061 574965024 352090385 767259979 644496099 538092626 486697496 114973951 653811330 181009768 906368717 467079713 851826094 91489320 576769086 656783684 701762109 205092673 986089764 168957033 418013254 832412201 776879633 564616594 311780337 619173494 829230489 471880859 111869455 411863059 780995685 579525689 49796914 462248552 537665759 468199864 295304422 933139095 248529878 351659571 620817808 351822373 803025762 791779388 289397353 372204111 254843695 653455578 176014689 522320523 450783253 77298954 512801769 67794002 488653248 257977803 751324482 980645909 772132656 376712277 303285747 170708919 440158899 212402758 247566912 712743231 946979660 121906606 448824438 117517903 112877063 57950831 249513271 104342987 217512938 414477558 31502887 365705512 592684650 606184936 809497615 502443398 462381557 254583027 678024008 912136766 621046908 858082240 297355396 867586976 339958349 369398511 754508655 34873985 215252858 96360673 158273701 239092139 988634967 507550132 579414814 84866362 347876068 613950927 701986493 898577932 574302925 576358072 635467488 849326935 236929439 985974640 334529562 536441648 43187492 794526554 658259941 238508684 228710134 537026407 3775723 277058310 30910509 433146950 588563522 564989112 504217989 514598497 552557200 593054781 715502656 667326328 202041477 309420571 162860336 538187169 653675989 902802396 346358792 524667724 507989807 115194485 423178891 638455085 888726464 868215278 533269134 178038142 101151134 758545948 118704820 667350566 978455626 664281405 991170308 320432434 660190197 338365142 945061861 542965248 420775541 350748469 755353118 689266818 19988646 159283510 403470294 596056412 892810069 54262525 548816611 568634478 909223758 244297594 633674196 158751494 526904779 40126919 369895573 501345537 138709900 27933881 722718409 827621988 460348358 34006129 946644930 895425605 711065682 14498192 755886122 628601403 652238508 137117195 392874535 836679721 251292991 930413796 353299791 406916031 956478094 671988703 442266255 895490839 904132460 631702403 198051669 844252170 625757349 643036603 925032821 718414222 262729269 714513498 183586553 501782540 462942384 17733368 809719062 527786654 152398771 147423998 214947300 940704187 503635181 585094938 733312720 213401286 488924121 639021224 435806331 76106375 874521863 511730293 345612667 203478918 894115946 58092218 925152438 911005956 382204822 752621532 987064312 607902531 16485195 860894710 688945108 745036292 928424371 244662124 295707962 827511996 354278879 917046589 851560190 235031770 720215398 509847566 763328712 22022059 884146533 111384874 102944545 206213994 923716453 287797898 340906171 861440404 74864245 159889074 6752437 144132570 951448705 396841905 508758426 914191008 119204698 577765702 169678298 10539994 190979420 675598378 484059066 420745737 325990756 574937438 126036737 57737250 863072482 763019975 948571108 242776709 552298461 246354798 716687839 861391312 612873279 300981852 101173930 449528860 734538641 340776023 352341514 317734479 149341711 376352615 67367065 130772854 720645492 273415137 287157807 448744395 150454622 922094246 624759655 408541826 674936514 738481900 182338574 800783637 791003990 120742284 835413011 689654575 676819390 446080504 639695670 942485149 439186705 888854995 364775547 73479194 275272591 175275513 981846507 57408933 98487090 161094351 858851253 735490025 641814090 652932872 868586306 698583885 521960861 639554901 498567042 358380155 893381415 465902269 743911033 132972263 484485244 263809721 445594200 258299480 823174726 341243303 273845347 544031540 68786748 810551648 993375830 405341756 528906300 296079367 35197683 418585692 214012104 950118350 490450827 394933635 528822116 963954472 677704211 384288404 161820506 347603785 865729113 795691747 808893123 635465258 537198402 679621377 86819905 7900574 485633486 438245557 314029386 93765845 862642295 382408890 207962513 277773265 189269954 476076206 826206538 477066159 965687567 842863399 502737453 99519298 598601079 561777680 333171528 70399952 170551974 761722016 924685814 892717121 953374267 39016505 79060182 725553877 792230789 200513124 557772466 544293015 152889103 696341799 249023371 720027083 11870205 471291519 588421176 481538859 121170202 888178331 100691518 19526679 108147118 605716450 206551253 212493124 429619265 807967305 788910771 325856530 125245585 19376153 140524210 161122298 867555208 269739850 15695217 277008703 996517056 744642549 98278239 304947625 295233826 804229572 154934848 889322627 5610824 505508508 764752352 336907878 619492515 530101147 178220390 817448915 764797194 75354112 746703336 196064494 785749958 98740831 464074147 867605656 58236452 496340093 878241379 697354501 500826541 422407630 838072970 691595348 398684607 969520279 958596502 481639305 703095619 143205141 278157101 393335295 137776346 65877416 831122869 35593750 477758531 926699685 94040951 74183462 829988893 56748433 35751930 775948871 525387845 787474268 225907758 735279836 89569792 188180101 475335409 780265161 981557685 165702503 283555795 337524534 402878185 264050396 660036433 24236904 790685442 236693754 827690569 186496314 470576906 352451862 129640478 3369911 887881113 572735359 889012312 460074981 402257064 997968918 160663019 745173043 579864918 112257562 868875793 754564021 312999148 382160412 415367423 685614896 576443848 508959118 76941142 687993919 736675752 11840812 44484335 611803893 729594043 831805109 642139060 767670794 899625927 77149185 787545684 733135745 691248861 669083392 507146044 271613842 17949027 362566854 767243539 982304104 88492402 24603680 65370094 445549343 517149000 729581758 556669480 705682993 209063300 707901859 400977178 72449592 137706666 844397721 523107135 743577136 701195577 592837188 139358181 618581018 736364660 753093080 695664609 651255809 47670574 708615404 274749365 264194357 789471624 166713225 732324639 493184230 316333961 584187838 291639198 491540338 272986890 562496954 472664910 36264051 592110068 539960461 983180184 809418962 461421153 68793191 316015465 203079531 765843026 274039055 901028450 232905464 274549509 66933320 566839193 662977233 147710557 822718045 184225570 39275041 230346706 197766903 809396261 247969929 713424587 170453798 592210972 164718364 262563602 576898861 338102648 542648571 630072681 727592082 593501571 87092707 982328739 352083188 612609841 710971721 170939379 171789490 947917373 474757683 427826055 608707193 913066013 827746095 516108866 626726049 165294467 116598682 801309808 587865496 983158258 832054293 321894545 710064054 599555003 178320133 295351293 740518919 590510624 196944729 975410299 944518581 644521814 879503258 442001879 358666833 213364848 211968162 209359050 733679244 840658189 899754596 250868344 589708820 966394025 582975102 555089751 697730763 568180482 815017156 844864530 922159132 669060623 836057986 648958026 398651584 624775633 337928851 131119316 27496024 414438101 726686808 646711802 286498441 353411421 988545478 363707822 231183981 389952994 124761884 461572692 18999121 812924017 195753809 87128379 435880584 759844512 380612239 743892440 1879437 332493718 527295173 345791436 490928763 124017831 460925704 287146021 82846145 113577779 745351488 935500552 43545035 13831184 706636135 388308851 529908740 35502319 664158980 421569107 335216070 392659150 682475073 828056872 610788640 628844650 150030335 333274167 102907467 376792616 961088251 741717746 21831607 745218132 736467848 539363031 884464695 760773360 335625220 274101072 375716056 823296387 128796439 57350401 121660203 118720494 70573642 250273238 594371779 598994243 725668013 879212921 292080262 482256344 553720999 324182701 835325623 18117226 524694744 978962912 228429112 59877203 638994923 780487111 890453977 471948993 485591820 70170491 460032126 906084350 182893336 740404420 446000264 184029804 666290801 62627622 177439639 515225591 817151964 96689415 570737245 112553432 479553364 516741182 918712820 741313746 849045165 507895610 586804752 389541342 550572261 107168928 471644288 341311551 325499577 283668776 106712130 595869467 412610429 705940147 50155622 927397310 873582884 275303469 845168785 322548209 793860105 334677153 188906380 431535470 919608994 356572911 338427292 404225914 168869195 312513355 186987850 287554787 437579303 108627816 719892511 720399871 668890095 695174776 755995830 271008502 482638940 797538951 628287928 83381053 233554807 267884890 405874 382184299 334569782 840219409 637201758 759640707 354291448 279532419 317078226 637024253 210364408 571565057 242447585 337364415 293056194 187954675 922646861 409980617 270031689 476229281 138231466 47767048 773028455 355778610 422748866 204965740 104779836 953861310 264774299 747755388 290453008 746250137 730377865 506299265 258370462 331396914 954873735 207016483 235187185 321541125 564229873 427483595 202644120 402236240 887466053 376942609 589072772 590130091 458184008 426543548 713140422 563026107 383296676 629639668 724947981 867925207 475138369 783396641 52432117 612292327 805314621 23359382 345262840 539715210 39376 981604336 646407428 575426849 435725960 522695730 388639443 683737868 91917980 642154116 936179402 182647171 21410103 447418003 676834164 767075773 89965925 60936402 261157951 64499106 61470317 866231295 487746299 315569584 797042075 42991104 768434945 139878796 931298510 380765527 123393675 34688262 408795576 129002364 643336587 624287519 347741201 932250095 819808814 906495154 535581452 401270901 889562004 715008127 98411697 896061101 325320133 149756477 187832051 16161447 929350614 165859730 868855904 944364900 904708680 728080627 546555296 601796533 281586838 562561188 935323878 67961077 65600402 590557580 648192899 671270643 222557216 804345700 61769260 283768221 307072345 275374297 329249579 349781707 383618625 388316424 487068241 770134805 124786733 1575590 928966649 408048980 932875866 649282486 596269574 404202523 292674910 141923595 740213800 527991649 899461200 864674022 194828545 260677083 629299156 861762079 144943024 290971387 23274364 77648638 189146166 366912297 101434417 787167241 406191358 14581460 858240766 428099248 874948753 779268856 628975414 937439688 318327065 513013721 642955614 71720852 194039700 314458980 967415222 32211758 470171189 563907338 610902384 287935304 382190907 319994503 705794217 614357914 101589556 576428672 263357235 860846681 955209855 322439509 387183089 925964804 82334852 156035800 311055118 772940993 781876434 508536614 6609364 454060650 186837032 343033928 18827384 17047200 206668233 430007525 798861988 862118870 879519037 412358439 276458196 33566917 140882803 347649626 38109713 738931527 155170824 71260828 67496269 332390698 692672860 739375449 776151431 850574849 881913594 991053535 778625413 777273363 715071497 519469064 788400154 846693543 266804715 136350858 590036910 276611025 444595163 599101861 829796840 551567908 174131232 532825793 998367457 352043393 869773852 548826764 523978763 966957184 870514656 147864462 9206018 509267080 457235724 449605691 915917686 539982119 23331737 729514862 951256876 679988899 950891360 450120729 891504381 747952892 409627526 293898905 7510164 200242151 42376542 744970109 450587350 748045901 56546345 831796208 848625938 119595682 454959624 735369670 623441374 290170325 251577271 195051876 986952856 614896715 30824222 636342878 20737797 597568161 679086158 159409836 443820340 797585718 862132716 619307671 154848178 9095998 365305234 56552403 674184900 459833615 349100828 668854968 722571005 701900472 544180102 138564886 754836166 570754487 238121546 569764130 988158050 674009964 579790709 57688229 806566068 449993008 282226744 484845625 592483082 212591639 960410034 851510595 698551395 292698842 208918394 696182893 578637081 263173848 174453829 254254893 223548448 331162530 214370724 810832690 469294634 702764602 73554231 118948833 996816164 719602219 72557748 139309719 784002779 711406610 639648767 104538979 328255472 200374921 207369936 117003699 775531751 817384059 880321843 753266925 135773849 632562465 333745348 176738267 286198259 957335474 761556134 633532148 450506300 645117765 703289759 365656537 125368668 32752804 983578797 433757444 961697812 384375209 325795868 342141966 657425730 907737619 432222363 919167097 31184836 345410366 967138833 94345728 480700298 172371076 787268617 329312898 955219051 339842848 556909724 829404722 778475113 511670166 181843282 926390797 382734511 955845339 628763222 702079085 461621517 225881576 198723059 791608070 266685760 273344172 199791033 630174049 770822699 573728707 794203451 352578742 70737538 712136353 66168597 998100827 979476149 549977789 608557164 858602989 808672502 333837235 349235448 55952341 474640747 214482383 535638366 377720139 615259401 933813318 581523361 545057805 226488136 229467295 828130611 24341874 71053135 909714506 919339310 999213035 99222275 854679037 287300843 471977758 295039672 746610964 76490195 987661902 851289527 370162952 553364720 364398551 609252408 959374029 369697542 134105400 382779884 193401511 502457516 65439513 161461990 47295844 406453569 609589211 502149749 508579288 294853888 418882035 83922477 542377424 867577011 181904159 832062631 491263044 381386336 604407731 71836685 571808053 593050327 434286312 855396503 28155853 568899990 857559137 460309925 661848494 951738978 924663544 394888952 384515895 806733153 931004100 419969624 646465429 684922228 735470692 905487265 444598538 837427049 298713526 860952258 419189617 338086834 585915283 246408163 393542073 829567161 690084626 267954978 620523538 458085643 12208936 761429078 379330741 769826971 275622388 634413759 885848603 77615392 461258075 637415893 176742804 660796336 675270085 834165931 367729580 10035540 711434619 263330506 252854131 450808209 264842496 957085499 802912175 282659905 800496345 230795663 987216369 284825421 618438527 824885970 602228562 65180948 892484957 474927459 173428000 545709649 850308609 330413562 774630224 750865419 919478666 278984220 448738976 808824991 722061013 168665810 626623172 173421612 607371572 185688722 783879909 734941705 352039818 31013415 678807316 563604909 709497931 20615220 804825244 111631551 444486697 522094403 238386822 194531197 310603951 331062648 983934439 596130543 590073864 221351187 959098105 251026240 520392687 719255142 450436998 574430662 939808617 363188018 777044599 472865509 71036876 844763689 576076253 199005396 154942015 178181236 813621401 532562871 858345322 671155305 987343474 565303861 67772407 874558055 958806254 617148361 164594749 380857251 873546304 823152898 398520341 720207649 87490865 722686953 985698143 506082640 855002812 779912286 257231742 805723617 185532218 822573053 531885072 966677018 772906003 372287041 330521223 53840849 455979141 55480057 577530956 52964732 126587770 783915678 352740377 88679890 256972600 388853658 848613137 263713178 217528091 64784844 106108763 663517131 959637097 444393186 771338838 742073086 817945169 870738392 90208082 5743575 573039146 701452724 590217765 886198117 346635858 343708678 291637769 483709617 129496564 511439305 709594708 501245318 665183993 385688083 792847173 429640607 754916574 503698571 744099820 834920173 692901822 784210908 942877275 858381988 978560614 320578555 444592025 912078255 459713893 260712871 737298024 622628031 672050198 869796881 770704233 533526475 277015073 35103069 617953902 193411584 778229987 337557801 913972033 831137709 353892862 445762686 85173725 150579173 258248037 604371011 596638573 733568864 649143731 303184582 979221934 474738579 234713780 693643123 493348759 883170105 638629650 443555143 302196788 700554509 956778822 640707922 774242777 483629822 689733544 123591098 428062150 805568429 370384117 788898262 555339687 149956544 977704711 264522230 903924088 451674332 376162659 529681392 242835711 176488514 537419668 299189339 528981740 545883917 626929833 506812599 444770311 962280965 146668577 666535126 104335596 696321480 481024532 847567846 543457059 223713953 511833395 326669603 850070340 124628853 194483567 116462 334677861 310486052 875024673 954254185 512744104 352216371 360050933 194139953 476970904 126776953 932961301 296662874 273329124 493790285 214559648 935678242 288490707 301519624 591848620 962328183 699370425 369041791 865247024 319971713 632750494 944981694 278943566 536046493 793526236 767460675 753981627 342418638 404552840 485550581 731399583 141920499 567007240 571597842 538392676 493441116 690157876 50615387 880861400 293457874 260522278 525774947 711518605 942819071 321354540 385773264 961850515 525955320 831820821 415506087 459793670 507511426 356585276 370462028 62007596 278368937 38476348 137559229 864534647 61128058 231945666 330919864 77718637 832525740 159211327 930168467 727282212 426802597 864095750 325655533 506035851 326368762 891425610 890915859 637139723 989826528 730412035 679600404 539013439 635400816 402212444 41885357 442383286 316179757 13126798 343187107 593068990 16000038 992837518 792211349 804607938 120060532 543922715 177468350 225888816 884226132 85904412 860205050 587626333 846785089 887204536 345871765 922778642 273539118 995019257 441143490 598845921 619754426 324381227 788401527 529529649 711121212 246010564 963121315 905862661 137908601 101201788 61487963 267839425 341128324 210186604 291264413 147278507 971564558 97085013 590920625 346836643 489760850 606539494 762446333 647169615 534630174 760156729 432101513 59695513 743320490 166756549 544321720 694507359 641430262 869546606 869838168 59541940 279416456 470846586 530806449 222768783 714106161 334315007 536903387 122581034 128542427 992732535 458865910 363245588 855544584 757470825 446768926 477155607 746370342 13378200 249273177 796742305 399126518 527590357 231064813 631711058 226751892 319866916 29058093 191378876 622711957 744407161 942524916 47986823 319588641 208041542 457230991 127695855 13160118 231144175 923863786 881037660 142120927 800574675 951081981 664620850 202300018 769826662 563508507 537468303 392783627 530357309 784018152 346358343 652252266 656409610 826773013 555993953 780832557 783377836 953428571 256721705 750687336 723976821 273382006 873517146 368173252 123259820 707830892 673730672 512374873 562754870 891472036 367404185 37679732 548999113 625979024 919886919 74890062 455950195 781951062 698160828 896295065 157448107 793301509 315232617 627294810 391274049 296499614 602268818 61969678 532464039 530016388 46370725 654306905 356917023 234772979 337274769 626965072 6363502 963259343 762284855 424337869 616176938 535339473 883929076 899550279 606146097 715722717 326417053 200042404 816078651 986591704 121363716 132512964 280911454 288240744 567618325 439745383 308343957 844149801 156681731 76397800 212042818 884104306 606131428 480727189 8394847 876965644 588987579 445445571 299410117 821737973 398939156 726484565 287761972 138688102 457131191 339399936 648957653 853474717 972879469 392053147 656078682 377438354 654069988 930421391 294843848 725179983 795807563 808143773 180254447 79158808 234384916 844656225 38986055 284331375 292754940 225922424 543887372 833779478 626323754 286140586 677448465 83589708 714858063 877429412 240370453 104972226 717307303 8746967 398079445 596564907 56877103 189856720 343662349 419896262 113279794 999145842 198399009 717124993 564874597 804897357 183224999 34709889 862203914 158477173 256756153 810455012 443936381 647813401 39892048 755556774 987188867 759400616 176834365 895738821 269026272 51803697 986203374 467479100 707492978 383957567 971478278 270978072 722406326 518326256 662566977 380969719 68740254 199022965 687370878 825404530 697798748 258414393 22971356 470323249 19152364 151363355 336282163 95303563 693922814 271228449 464837307 899794112 100136466 49319523 982045308 553946744 492439215 106553879 575724456 665176357 6258493 999904171 99498990 665248413 343972687 511133698 479275130 631796636 284653989 85606084 362872918 955359493 660582324 680401312 982885613 883620603 712017368 402555170 607548585 555551603 155785914 108841214 783855656 613152967 296744434 684633483 254067414 23393107 785193422 981089859 223885191 945258748 944830784 655376564 196293279 783693128 160447839 352842131 584919633 766325283 874180451 585719932 526136215 579066489 924176030 499660997 40556997 540423237 159523545 253658306 753050217 111483790 155623367 485286965 45358833 527243946 401330066 324386090 908842467 430395516 452813569 278289572 400509059 713958329 150423060 988760946 939861077 401551284 233448572 637424767 323157271 325889322 278255236 675359547 312010191 515207589 264378284 550711813 28445571 615757245 176396278 911952796 774245821 190420692 882613483 410125590 46857047 353269429 422950603 489560574 131019420 736690444 180256268 314772861 746231922 531883334 684463851 233066752 102711741 219329060 886130965 997169970 971457744 955698035 170800134 732151863 32176818 134251503 106963456 369661669 747497839 176826013 986532488 245453284 319021947 618886128 130605932 38034271 871648749 317618168 950217830 459932819 120695582 76681666 735171920 165996648 531125881 374158861 343009861 215064578 562422397 111731682 159074520 600031532 729040094 791562921 914818949 478236687 230457448 958248311 242074044 413436046 724987521 520560678 952278541 283264002 182539162 658575176 426312247 649411898 962492792 13058929 716519660 830716176 920559618 818053482 9126958 365755603 700852522 702534091 148807964 764729817 509001936 916104271 325057825 609939153 397798181 861059117 763264524 111772324 879525769 167505456 410979905 868439153 336804638 986077750 376691262 171009776 527780189 354980645 923228901 654510038 856355917 596169005 343488618 846080009 135205683 421514766 941128577 761144309 602902603 683908948 127591587 294775124 911191438 221409711 64645858 948313007 477642352 833137362 584407034 281146860 948988457 916317523 59242168 921839897 909022698 669096974 315478166 149350863 614407046 846648276 940031381 120071306 759827862 700210516 395551426 419626755 643521134 281439923 175039077 563561436 361944312 65171399 839715025 526484279 307182617 800471250 186103846 835656828 713858649 328552388 437528458 555968177 694503184 506834432 439184557 265993592 535759296 174310783 314950567 563276229 167969187 132798976 679696437 114846705 448526557 127565327 213205685 177195919 458509680 112842163 556257239 525903994 656675749 742127711 46815930 795486268 898384206 376982771 99345747 916975723 398514406 290572433 248800245 86223401 799421938 262562375 972814847 89883740 679630247 506821516 591881361 887437003 300259768 471895030 287754425 171114606 212207695 796349979 855526586 492948570 31147115 203453614 238654028 249456525 760972367 34470887 751344585 269394008 994496375 935214978 209263885 652961173 17998515 817164558 903225918 732353058 283604448 121257877 716663704 108741963 376064914 729169891 47275346 360160675 554243538 819274468 715136 681247812 553486112 511562189 242900810 174716601 487231900 19866967 15908476 312650404 468182225 542576522 102780006 271441178 575301700 700317145 197448756 316730544 68201336 506834465 185124589 567350246 445578262 312273190 459260721 298706474 351065680 962267784 995269998 406304052 553549955 403455702 471405279 600830648 661549775 631366556 155224593 900677765 547403246 390030197 566992263 582626276 687260045 482632546 174009819 100911826 68067059 522677887 46061553 803221376 697052425 405375503 767502963 717919454 237424564 801757166 697500218 996464684 350194157 259936883 64329364 287397996 614336701 858649571 171233230 288717533 641794478 571631777 46151250 50341844 895477661 823302058 210255567 583231308 183843585 552270756 457890042 866664828 864109556 393604764 928654227 43340176 437491587 357023469 818273370 153114248 433797216 764119917 952639447 38394961 20251999 123887096 64377393 146098549 478680585 12986236 725599119 29895439 116550751 986162349 465764268 119817562 259684794 414074624 583297464 38773174 871201676 933488561 759502525 784474734 814291145 57544087 571405 362358461 487656369 862776353 195977014 164257852 94223665 683655383 327075868 316919081 915413274 324340020 850028183 664137173 842459262 936191428 708274995 786287085 966333358 438135846 146810666 359703376 724551017 980537304 441402367 95149775 8537824 183673533 685079480 306465436 481472110 681663023 100196117 586906249 889163453 144897958 641685123 535352435 192915607 764770167 775925535 232965408 722560441 310614496 457770004 11743421 988831767 651241455 281252416 859026165 71217584 485769211 600076218 824159911 355482080 176397694 504797366 780663209 678597895 304015724 48930723 955215788 825385676 72172103 314974202 154930494 8721900 840691167 420038830 406937934 8890475 10593999 896751429 995773264 226029042 580511416 970458915 928477613 260746298 540615832 920074420 494919692 507919770 94276981 875244809 71843520 629487205 253675794 349334341 680108538 687285232 871143056 455462788 143865577 900594410 513690460 228711600 870980367 20518 295385368 935711057 206087792 775104564 204771098 859191291 567641109 88828689 465704080 40782278 902411271 987551572 895666375 333706817 324824044 81723146 185481054 33947291 602155789 145023603 399625397 534070634 186455277 845159308 777030361 572831646 373382556 265644590 525557955 577217564 709254282 876141973 711811632 889649023 279558034 436488997 101170088 990241603 272587822 185041657 52831751 907070249 199184309 379899817 970314859 545927580 451664353 262725264 179943579 557525422 763673804 159642966 475595463 309244553 275624722 63569666 857974094 875692721 982749563 763697920 851975150 327880392 464772 378748789 351132523 360596010 431091523 898467398 56085023 31538937 550949383 491693572 292650680 75415398 866850807 999516166 216186032 169519240 255818104 252251272 303397674 562046923 103585916 689965104 631913723 849781403 578315000 661138104 895064713 461726575 737646537 552525502 321240748 261417941 771002329 151891557 284459721 911135456 268430217 53846186 875112819 956000967 655601651 333902013 805618273 360243206 997812413 742236233 758021069 584087073 288469210 149266394 347547712 677687997 602189831 118555154 216028463 642940640 292318110 180615469 160649837 953915074 340875474 505473659 18329342 131456683 154153087 9122124 364115989 856012542 435671792 722530298 522689950 753152735 370336563 616135855 595716735 207346201 441933480 366731844 984803446 510178087 214739452 617728115 664305382 494064577 13102359 319223275 545983978 839480237 797083961 828287260 342944383 971867365 99223464 24945425 91467574 256927962 940180983 829027159 755375957 64077463 438907014 79142528 197139998 7223971 233511987 304261811 677129772 477903313 52075224 303362124 340587188 713231971 939809215 569730309 114297311 980383017 460375722 84800392 506955131 166189826 161529894 613787838 628830023 448637361 269119131 84333775 319482126 992166346 591295965 641474211 742798795 896433739 153853825 721574762 410973335 341300157 75769222 270999505 271803747 807870881 991485643 535812961 300832442 954941966 136028831 638671942 535030707 445535925 104216718 65011089 362009643 451985794 541066444 965141779 278460710 715701919 656823651 83285331 119534943 282127023 487176428 745446518 123762870 779965953 717243739 606595006 69651790 725598853 999685137 333206880 822297945 704141361 916496048 322343504 169074610 546287153 59515441 303063651 647181938 596780242 667673587 326369740 267779365 917361565 908448253 163192373 158121305 727007352 504543244 501217067 700849000 929532515 154213045 73746718 901115614 801131094 364756372 584140677 446274002 612171241 281887174 929537105 860909872 881062869 908976755 680160661 80674864 430332864 430654669 402096450 222210625 831994256 537549364 90382756 469515383 357891263 345056370 62870743 413265499 309301695 844009244 74276773 46303170 794110539 941355325 366933622 656814962 305655063 83421511 42587369 262734327 345751465 172556030 845082206 529521658 225517821 982927558 427916731 111564637 892771269 713804096 150011773 665060885 781434236 103229214 842182541 729309365 499937991 5878872 903242838 744864394 323801432 452845044 980101814 84562228 152354091 41496830 309009480 829158877 594389631 913155804 474800038 80609190 341273216 136321812 259753367 10026531 198040334 852196390 729051856 749770829 996758964 326458020 7931032 570099346 977151446 713068642 434416642 99943714 323484263 46459891 517067501 278734909 994335470 49846310 508888255 103674585 860853191 836518479 281900312 500329121 264580586 353397832 529480252 625688954 506615108 146259714 703481185 106942726 919907283 629139898 138271051 809640364 515784563 583996319 203790267 610209335 670070660 138499352 200669872 274734875 422509407 574684604 310562402 980318341 148944797 31814825 383133350 22587320 646824788 484300870 486117334 356661679 714252098 422077269 856561185 248947304 616293289 261601783 180371320 713795214 278897749 317396125 278280265 787399807 143715910 550740500 769633013 342926190 104670343 495442743 559505797 579486731 623721286 428523605 980460855 818254843 429907607 741616335 727266419 118300213 606459751 108672670 762555339 957730505 409336806 825202946 371757448 516389048 37225427 709306641 149201367 231039688 563885708 540854031 748000708 195852046 107125244 276441565 984952719 761878 298009536 506297977 364610237 68359469 829271025 166673449 441309428 432948775 112432102 82504107 853068019 34076423 19225645 331699256 380067811 614631706 560392481 372979086 234502919 378059964 599629070 24482437 585091270 617988223 63774623 902133456 915401659 384137080 135053299 403782064 966313563 967094117 768365511 63816631 857579446 688804156 417271123 22576853 115094576 621638962 570104332 842966083 202940821 97885260 420304991 953656727 88083453 58681891 115063840 514363453 828559116 627756058 859801340 845002628 24630594 598544357 721193576 614403434 187615694 307325959 463089422 192197355 674718519 603697234 763522279 802344469 762319690 644014242 920351312 200908446 655933187 407914506 620716692 126519473 251718445 467443831 935380538 590346667 419154047 578554880 254920015 306312182 807416582 150619271 809755218 519057051 746185415 636228854 256853398 507541340 467069904 959411992 376902210 874858989 304017029 269450777 461519714 790364478 461516211 984980477 256508733 425754497 780379848 268284051 950788099 986488894 54600303 176990496 42215965 455106592 585775961 734554282 361201133 84244086 345568577 371105613 292076454 204735831 605084565 495139289 983992629 930211271 462240581 314722538 666935100 525630007 536875847 446963242 338747093 767389524 601579201 820472758 579965240 688739380 179554618 352580655 684925400 136981520 563071654 746827951 860892839 160246153 905295956 885121764 874264968 604625144 377195561 415838020 55015015 897118793 695207762 986557523 262877442 262222143 651866402 453686118 5932662 822863008 993231074 850820444 168684962 818673060 598160085 553672907 53802426 60094669 159391008 556983671 406018842 644045221 547610922 36917347 164890095 203448887 357995786 998444332 405885881 550138169 972547574 819129609 24311339 929002463 287195465 759662547 696114470 435350442 337687662 653472166 603567832 82824037 337524379 118826750 995340063 209880335 514319235 669402886 431786176 839080109 55801143 543990660 89587796 698288791 452294182 727741323 855909028 200428617 635923231 173354441 887556671 353184209 1513369 275191829 810912534 699621449 580670654 69934572 729281704 124362092 690372445 928862531 444457075 621783401 433653200 407517839 681020383 9713456 558928458 117516567 316738605 250036920 566269213 837884572 221815386 549004244 196160098 371454798 432341523 618233934 781857374 916814669 883027534 101714269 252526896 939682571 304806283 618693592 740499309 474415790 30617259 533855424 214864578 407157282 702265269 998333477 478605901 876483573 517493617 587013802 528378107 656991469 342613195 241252430 170724879 508982715 596904178 259865017 755650104 675571893 455314693 932660068 722137662 943308331 254818132 302106708 836866469 874751980 295215824 134271984 63603441 922281339 191923257 174863835 406169921 617914733 477725712 736796187 657530804 436445192 581864831 629473659 142140789 349066956 313173806 409113303 846227166 751875297 420358918 526297223 723472643 123011836 126143881 897964184 698032441 408528996 390206657 654120478 659998546 814568772 990051029 339905373 35378356 682416355 658251512 492972948 359719225 305880868 53501667 615650642 574294044 26959176 584841404 401123106 960044194 958689520 947051992 425778332 172163398 488053317 951341445 960689970 824021980 339587631 45948157 862522875 856431001 917338064 910645028 794911754 596347081 996789307 163449974 104769092 434516538 169975568 499714344 46815803 893653601 751943915 220929184 776351208 769542903 975668704 625138113 335811855 714064290 173971479 415625301 985224338 622833903 638151355 44120825 909242055 361946953 280412405 271937483 69147596 352738438 763810422 969057879 67834804 177386662 186914542 159222648 652698559 779352884 416018653 92007038 290536680 844603860 91970851 865890237 981588332 66210594 232621541 167665928 357201817 592567167 764402744 720882278 658493323 859811544 243014509 606142682 592315898 41772522 317035912 527361270 912342706 290132392 752477851 513977745 210243264 526786330 219024194 178813054 48761797 507463609 843465826 748562322 965948252 392624081 298387797 794059718 759068152 762039153 694652401 802801210 359721478 902121744 54261928 819917613 565019019 847210999 776232107 124825595 637168579 376993147 996428611 739947566 57142788 143090816 923994191 360767829 990003987 634323265 946176689 558101315 140825982 389174514 329679026 860708782 250139752 253951218 935809044 319419027 90137582 713911558 29886846 954068020 990513839 563295824 486783787 540969970 632054527 171650516 189702119 903984923 803833443 41428510 495776242 344596513 321029261 56218134 415602704 56098410 32322270 245217925 104979465 19675737 359063646 399340298 616855125 36156491 918338160 18765723 703123225 592859017 875009151 760635464 905225086 876265446 336030057 904809320 496800133 585982124 302196206 688017380 343782387 126042676 474068991 340530110 235099004 355581838 780729641 321244236 780832385 282983655 756424986 597648218 735034018 289273626 43730048 519083030 512145063 975266777 485565221 238493272 21046070 685814409 432193127 78272176 745978628 646806486 846402430 664698771 66675401 366579999 973193468 107931313 655182131 985634835 105664728 969730536 83050847 550932133 932791873 990065929 119945420 885781099 848093324 143343115 33565953 212808427 792772277 337461055 437924461 598843515 19316789 307542592 593342583 949259864 559542691 57834973 3249510 379605294 539250809 493187641 203194491 513532312 72787582 915409645 97623142 911314308 935342737 313712273 395859889 987459548 512738287 741768398 871241957 988697876 795090679 384970822 193926526 853922576 40158865 664405189 898047599 902441338 816923393 213792534 512598896 520146933 177818413 584847252 297677235 575081110 581709007 303874491 804893217 81109888 422761988 178336530 193333563 955651173 629258890 828847089 701732283 284957715 277680433 133660366 356726852 627063141 951815199 255554726 595923147 597267449 801211632 656048287 831351284 100032901 938595786 867036940 740757467 458809911 710360715 334354654 183249218 342714051 761892825 733255169 735767524 293360335 744697993 471230284 791017490 127923937 935243666 109823371 455445639 21326857 113207701 301248472 295751715 215134320 205217914 792019503 715630623 996752572 935226649 499586379 455529060 425247813 865624561 825399467 197337194 361173967 311990475 908618146 761179296 182832049 645015074 94410828 598875238 729618361 297231099 359193737 598843264 222994088 352941328 19390035 755505737 953675183 523461392 188539646 286259198 580478779 521334366 298564250 985029781 933083263 316713505 130788835 689832115 348418642 839726237 421458834 26848062 366211289 313486650 329692824 662037548 981920458 779751219 276152909 559182426 276458384 882070043 981984038 628811436 279515769 671114982 256363261 986706305 879013230 827463741 593155799 288005055 908499439 902386260 226828075 789238473 348223042 319007527 30490566 717844858 210368983 500020800 724114178 548063827 244880253 709422983 133367484 51487298 450751413 234097407 628601224 347923026 984497096 703089877 902215927 748525203 27537450 278406924 3210099 53230653 874530918 392668743 120563230 602684610 962841540 625972956 855867606 577532874 164293081 185718416 981199807 713684795 251439910 438649448 367209933 989476700 773739046 97880584 492758812 428871952 815177638 36556718 397198614 4950994 112171132 444744963 689950273 845208476 450560474 154089079 995096174 880424859 91028716 377030936 989940797 507737060 229985167 69542442 470107324 569664871 18106305 966418888 75466388 224214863 386677360 666117346 651610941 697851391 190717378 26740503 47068924 335493838 314184848 440004507 566607665 182401496 101646161 367629860 35731174 508429823 225933808 939179686 658701505 969910370 152568887 162550024 479207769 75571393 451592958 418291423 746544838 276120734 183821326 899600472 264752618 175885812 313855457 377804884 931774250 512063881 380947002 837216786 790297602 809352595 130857375 513077922 561223833 623879573 193203721 100151120 514543005 46827196 561069332 799447645 329640598 17309485 479864519 685709325 505482119 13830704 209389736 546604689 946768013 855147570 921107230 512608821 99855609 990492498 140211512 60739825 495219958 642435141 965901347 976907974 386881358 949624329 243870741 547407408 846277192 188663602 178401630 328881000 798439364 169256743 146904839 934922775 242383999 911646303 843184248 148799582 305168708 432532070 688393765 42393060 590198513 490321982 379935758 250096119 750212846 992574511 846643655 276211405 219841993 589214530 16317460 75980807 987365105 502573836 735438845 724566453 639061423 62216843 957953989 75459336 838481870 855122613 463141353 998205388 977370817 65950810 709070719 359476739 148578875 156532964 283705077 37372383 683752034 679806204 181368110 304318453 862234368 780365277 334825689 873455232 760086089 637443973 46321981 401902480 337456358 16693803 941786766 933746035 962568119 369278387 152204353 146333686 741652978 696706653 562834227 29474789 744621316 858781102 281266228 156022131 204519564 426949122 256479881 308062206 563427900 396446643 668514775 945132363 622378761 559365653 811804622 278440278 401989670 32249519 724991525 292555410 809007492 591913803 805448167 646173212 685573200 368495038 920748059 599115291 706761503 76688988 909178193 532346816 121160410 396854514 729352861 380361564 16204231 421982829 244302729 420032179 220746319 597224666 407894268 602047994 397776704 343789129 327267102 46329626 326149872 382281612 102932816 134802321 434005365 999142700 839355393 553972142 832737357 732451736 755515440 217515855 186346176 950983569 600235421 289119456 327780021 435831432 380309456 740296285 18191280 834102081 892985108 44615114 946265992 247849420 223118380 290750686 481094424 355338757 681653451 872846225 884496831 382651202 635334878 88751767 948304509 368444958 800157608 860178650 662825027 323547790 160751832 719707758 366865928 518550437 418986998 895642980 303685131 876195064 43640553 324574929 497470815 63759469 690289017 548287798 517382523 102890637 102119328 720856752 261372284 590836284 611614691 521972782 372586536 180034029 933695639 688179307 137103766 229892262 154265984 475620057 50864986 146355857 361661865 8449965 25046825 40053107 818311028 557209298 979353662 375749122 743097802 415552368 662984985 447337249 214989359 77807171 760574088 338967803 465623607 836618039 276179220 34180223 252453390 476499120 568703860 745420764 775152607 724964914 359793414 235505411 738105870 218097006 802566302 314695067 440485468 546145122 259933850 998441231 335110379 454404280 821280314 532061258 481666946 142181742 856025906 955811502 235122163 962538441 56245940 223388966 289563486 389218308 879046472 485897171 983372966 194124270 450196549 316160600 254605315 689125165 547749842 644053126 353497982 508694280 46368277 715843587 562681894 649113140 796577246 208742371 541230534 363386855 600673117 134226363 952307729 92818890 872421878 336453807 361343231 715032842 864219914 544985552 746342663 108954203 408455300 867530465 320492899 57204175 760578155 161393618 230792636 981903938 884431011 238809725 335864090 765773068 466886763 563508103 614317771 219317583 350966103 544860571 748939003 715579480 912787698 737556032 102256559 1839075 856391945 778397395 153702109 435311035 323257501 875726204 891967857 220575722 769878630 516756303 785264666 780363550 682940053 140156474 673705544 460179706 252965825 109378871 61222883 513177787 124997627 579987240 974996282 659693717 888641147 226744438 193917155 831089737 726763366 289094720 130212272 334508301 124927803 583160483 744854498 161942748 671881929 995342678 133211396 974833314 242655687 55972854 578022282 816742559 543142393 371727017 239683858 83485437 488597811 911686652 589458617 515965864 483883069 748095217 119376818 839918669 559745163 454106731 479569291 965360148 402288648 241162010 450525558 65943040 507473717 27037835 597468716 87214347 504528435 117448315 964430770 402045609 537641476 92318513 591309266 474837912 864746827 141827052 575036920 244303508 198076390 555003355 327211704 163571975 320644692 484170505 235720649 690988474 143358493 710836750 795641330 949253360 574953224 802557487 104065561 344455142 26306876 833617391 697234045 738469832 189475565 807671316 789459117 258921048 798405682 471495015 15389363 775290779 701099039 750229116 704389095 517545580 270471069 417079391 664688702 670548314 861314527 19720353 757271260 661308555 574469056 430326220 302861342 338435513 627735997 854567968 943848122 66427582 156481759 319622046 203495425 422039230 73291049 834860560 39991136 525499302 763646092 586049573 306037137 898674280 50638238 746541645 875389516 133549496 897203827 44929205 909841069 101445546 615941044 940628916 241163048 448021375 866709957 163111781 680934601 467938171 815441529 481901965 391857455 717882685 499610637 22166429 452464527 439696925 545624811 866371312 35015275 173701437 209693893 455130265 876667730 695082139 145369837 675843077 93640796 264279129 934024211 211727657 770385285 684426094 336707963 315918976 514285699 710795702 2862596 254740668 107606784 995419212 450880007 609383531 498122596 908748982 565372630 854141008 797119154 245252532 91950508 502299167 448631956 583274862 826943931 722581165 522635496 58020952 191014343 716138615 441444955 562403359 928166900 466356787 652838058 115807525 726891565 651709534 900510192 647681219 801208578 557899689 415915692 915801053 377249230 316996620 790820008 624343755 116274970 791772259 291441586 809443157 721836330 663337837 836698550 875194380 948199262 259750171 124365534 167064357 870529987 162700258 133865332 879761941 733886002 751953196 211541986 698686051 323739915 12805036 889154253 284144800 735447498 166743260 469846147 570629851 915472248 223781619 311636928 874215964 79714694 890592414 197318140 974574011 705262075 943068832 877250899 141754229 94745491 503352508 666812956 8524951 936654934 553651799 307120647 288803132 127757933 294726011 723640256 71068637 283945496 618088759 526622398 758225467 369998680 670623929 48644036 173356789 77434605 559203375 513286578 865031757 543792903 107613176 704061795 52016603 214811835 146648113 712916838 543258379 983825702 650434082 923489113 955067132 109185395 126253011 5286353 32207007 203212942 219354094 468438143 958631790 616831078 950621041 302078510 732691832 835578000 400762177 646161566 195435557 787716578 296134921 620593435 45757140 580596145 708516036 380906078 493504934 689248440 564108822 761896972 349336019 75891863 308467718 734774176 425985490 960021049 616371647 769898718 307189799 118193470 495552252 639123610 710509979 290274066 578332138 555725952 466381856 782542882 220227433 858840033 211890469 805729181 2669420 773134410 701223264 388838277 335732803 316489054 363182219 467889865 590651806 697127639 611352218 93725 717322445 275006606 840644440 876122578 320573778 221184979 235225942 981440232 799596781 300857876 128757096 480198229 331322555 596312541 233055081 663992848 427964420 138412485 409394608 311660942 189878557 189210723 148399859 498320394 224746184 208795602 594148376 289303103 746762417 356600729 776121878 116829356 249213616 15747807 478823558 102948966 782803595 685758188 212446973 923715408 493572021 62103665 705120493 154392860 967177508 202802764 62683011 579952680 698152096 749665036 213544084 812100699 911147145 662948519 548147193 614082141 795686378 523647681 451573841 753697983 238094090 214479299 431204100 243944439 554770198 610137120 14893573 560014092 348833687 254520199 714547357 14668485 329730753 499864290 966157103 300469350 181294908 760513040 796658314 242140018 545960189 764825335 188605461 695155829 306769123 486274175 993741559 767504103 734991197 637621084 410838328 491600434 159314961 115412117 467724750 299213978 214538689 840727815 205679103 8435211 580763977 980121370 815737772 455629710 702649648 855476636 635043924 345771932 63307505 469712806 587025744 668091795 228957502 114215731 414195576 366982796 181173588 240357068 593686451 528204442 494046733 714567841 544866473 568059545 828401661 329683581 856092082 228204488 9483233 974266677 394839566 471803372 89379578 937416537 625294276 849599681 546092145 562986885 351798504 458881936 246952148 314087310 419764202 792260779 55693816 878163659 178395734 518807633 831030777 120720181 981356513 654254885 828024541 227778711 142989329 41812969 52132359 687314234 452171010 946751533 249880811 465289243 489122113 681101307 41754174 304246029 852236737 707566059 267335689 465948976 414989982 32308851 693127470 417041793 468349804 981719088 594332988 392206462 43101172 685280557 612615680 874777494 125205647 480034341 542578550 370507810 614880483 417021940 761449272 122065284 803010745 708850259 892888626 433994313 124334684 350938088 484324301 559932569 742949048 466037319 214562417 570562653 732660369 458842073 871511126 1107528 107287562 448903098 145875958 203367452 68121226 708463296 331936029 473870155 631943307 425336814 249953361 981357451 579350654 370605464 762774705 692479106 349358635 747697619 119957467 8897323 748031785 488162972 573107841 489859849 615289795 897940601 235277470 26771993 547115488 101734437 539681355 26151667 339801407 347097600 645005772 953471659 901360472 321361740 926423412 891097259 208344060 227327698 350082731 598996746 379279030 195121233 834144909 762080081 101902195 467951864 770325046 690645526 523290546 96880741 456960714 995916899 44470697 666584908 219763956 268670866 593814826 464340306 174012124 850478680 289910054 259349812 549246955 948242458 753156305 582639050 888426372 909660888 134091676 44749694 449765574 405645256 588290242 639708264 687787569 207840032 628975597 141331939 155043205 916446087 199082143 687000625 254695094 88141280 565158336 951962200 816555466 450624775 388764031 806085296 501998074 879761177 199349701 662274375 194560481 567048425 577212591 316737931 27091376 946258465 290508551 770920777 391183503 422202964 974301026 510955963 181521131 717979652 591107091 131144689 919915104 138883969 552730375 302880526 525251262 47994665 223355665 110229514 435764521 298200300 284908277 770198155 736142033 578441599 582768107 143390387 27952311 731387900 275291863 429710825 164522906 154041915 331516032 275952086 470205712 232220303 232971880 588167274 921941737 840242682 113897879 915442357 637048213 466353842 132256867 268570311 660181524 291171934 712459324 31992923 631856467 689948216 171588622 766330046 310957445 494065614 819042452 582657235 808585386 882940028 133162253 847382021 580869244 778465257 722767734 950501069 436436709 481951277 192007645 811599626 885158141 341244084 626037754 358392229 466531060 75145157 702636552 678070076 282130999 107665683 15744495 182514025 940558838 955237933 688737823 571477346 48666336 23597800 936689079 898908851 592947193 193320724 342635147 590182408 479411470 805751049 220249202 983727789 399426541 380369166 229850895 385162353 918434399 617728390 730666383 716015738 211457499 798167145 244457206 374818490 371294935 198829995 864972101 491703386 820169820 572479740 967754150 750419043 712596938 995939083 89148334 246665259 520011667 337889014 460359067 228808702 240640707 780997507 489474410 526712917 407028735 787430368 184045208 96463159 174258102 833069979 909040160 729110418 183506771 983618452 447558061 391801010 65582615 436183694 241624438 986822919 704621473 109397762 627371612 303437403 854234359 269801512 224323216 779573291 767379071 839641322 638940011 204037286 176552668 636336803 531243922 862426920 275012751 567706919 103579917 782168041 992457077 72533920 364035708 463197727 16074621 773229922 153814443 312019384 678136465 438512078 672782361 687995116 606258272 745300467 764916940 995193681 747084405 551318244 139720969 515645671 553418998 551298063 201220908 718344244 284350443 958098652 824060400 588399463 215354161 684379064 918073326 407598985 629841666 840988580 612335637 791570021 526014199 337921559 207385161 615306913 277651245 242523588 795975046 207271921 116154484 894727612 474400360 714889911 952264815 592343522 180122079 630848924 134341655 798768674 978437554 342490075 440758628 733498257 984087778 633292733 513597442 673710694 302941113 773398244 489718861 537206549 74340673 769451642 696387106 531032897 588798851 231770720 327544228 693456467 980855031 516113910 220668388 134774126 323798730 517178342 102130605 882408143 944880181 622684819 491454706 714675789 267505409 263959859 207351806 790669662 69071935 835933682 793573210 74952233 534900471 193519181 931703093 886558246 482554696 463296986 640781272 16574939 276080963 873712029 855289285 119562572 852652466 234843832 974307310 643841505 54874426 345741643 689399536 381397816 937669861 958238460 865017611 754089885 710759938 797706647 976679725 650144916 489658323 587362677 854166786 633095230 366999643 170251129 136467719 564835887 648143322 876288116 456506653 319220287 668304518 276377742 431582696 75829130 615218089 680068365 249233665 39649015 865613424 440010237 874114244 924612138 914088634 36673970 713652082 972414580 3901680 858773524 837132904 302742105 330799065 900487968 297393581 22952936 11034487 739309521 55584149 944301385 672607366 21042088 16537497 372228868 905108885 27061878 399198612 381301693 367395535 472338820 17838613 813954254 293436694 371641863 164284202 224167896 880155702 937916549 930303472 302544815 476817644 196969577 974301731 51865417 416779515 896159850 232486141 747130877 710598570 970071534 15883695 695105820 591463874 753050855 671896772 557166836 537881460 363895289 744645383 112524717 228387853 652039160 510532011 697531839 934234892 325381549 909905467 857779110 926039365 588967605 438354541 882098544 702244028 975089353 246958939 505541389 873009150 268656746 327659449 331832252 826496088 655369704 225249201 243390599 873983161 499458345 310748587 856009199 639042518 946766528 701063656 252686065 888835297 502152769 676953846 189733512 377012234 481742992 80591247 792237661 892173060 970595303 812127816 75090355 923146468 95400153 31250510 676084277 132510743 655527164 279380873 708400824 543166168 583881648 294669413 429403846 136402299 102377535 747640153 872585046 332152559 893160755 72473823 311585146 955010407 650503180 537766556 51332434 288188563 96065020 356650450 417058850 65652725 836027777 795543876 83678165 426804184 224784726 316002317 84582200 334008812 741293470 450416314 688824856 134477981 235028387 4779957 683766404 163566764 859195644 139410250 992060983 534219901 195176926 740087891 448420159 449218656 688453588 307743529 450630625 386937517 23880371 409719949 334137889 744304893 921666255 580559143 466613309 349322983 79120482 984782276 221506973 937121430 288218394 164243148 548004880 561405164 259710206 555365444 196898851 558396873 481432696 530487829 878803789 478910376 988298498 37424818 784953055 852295056 17937966 114739951 655843334 549420447 366685565 667940558 106371298 2289842 840488972 210084311 694948787 225378268 937927773 109526432 616653286 40127241 501940888 542788487 167120982 806630705 633828746 82130938 469236781 519929816 451403626 762159236 477318442 837849620 51985666 52777791 521193711 638561467 940268610 690355144 118573265 726682931 323009494 859008135 747522151 230096103 840938457 391477258 806479002 497792381 418126339 321640626 904200803 437411734 226097201 94131117 531162478 226912622 251091101 687021545 309224998 952678578 628717201 570951274 707943671 927960870 99885060 274915341 185716749 989011079 54044433 580695815 17004377 473802939 872962991 822467805 353122567 414141716 388601446 564491020 683020028 254741482 582660829 122159500 876398123 542570390 239738239 262758749 91895608 788180822 185204547 108727383 296076536 584174630 90377204 656670993 529123649 873734874 645431278 262542158 925844895 190644796 962710360 177807380 295408460 375646386 324805422 633251495 573303637 273736456 962568921 735381571 551234166 946117854 778898756 86882610 832458892 340272194 585996488 903877565 308063733 410666451 443323 301598396 705699204 397052222 934114633 448187741 91420063 189992 544716561 195399786 248319269 580587054 862426881 511396052 243113156 398344308 961089604 238626770 47718438 49058890 341029402 432969187 741486899 782524898 955704614 597443196 320867173 268487089 470353893 697935684 915414614 785214272 698097529 69556765 233741969 508419781 579128189 41939514 514686872 204644889 20515799 989234570 264216156 370580019 238724124 541769322 719470162 692008381 956424082 24983979 396779303 280659888 789521435 746657829 903480925 483334938 339984202 109668706 419982597 44766710 535280953 900389575 433813456 78033013 552775895 108954998 104541820 850574249 639830570 149704456 460484050 43265469 201737738 380901633 708478978 235435302 264265603 654797463 311769462 917089379 22610207 820686278 3062201 51369247 793360823 860296533 354192950 615755596 312922974 53616389 55547766 406117084 377065383 568064406 207275525 993659897 187931903 826404779 343690420 590252854 113981078 384429883 770518292 493915244 377669201 954227725 935421054 447411511 156003119 239608373 3326092 727064645 794985208 385474330 322281003 100081892 728877983 606857786 196772377 303087516 279261839 833941042 712246694 353806198 433647676 201706930 741655322 741921125 242084384 705024406 388872109 680446066 831124509 793209072 687744806 576141167 871699508 635768950 863201007 627606656 654287780 939436638 446040187 457094535 43331625 107447290 202651656 325664483 315862686 519000835 928845791 425303243 791665161 199923130 445723668 282385469 384770716 907641565 455584491 178158348 365092529 995501005 935361756 989145074 109167229 12602041 108681782 253749328 657543924 953934762 208871215 645518350 478498856 796917395 482024070 686902452 271634398 734722407 656757941 658203821 224078018 260097619 200389588 513513513 197106987 433717777 479696296 698558433 957691346 790953174 228134879 471940990 178363781 839351751 892908676 544104890 184089901 573729471 810910021 606872392 957120458 407834761 834298613 363968286 837986788 268332719 715189967 447630541 886427236 638785716 967091182 150496295 958596392 166236894 531784258 657154062 964045898 709117906 525098403 628536226 516760350 854053490 810203509 689394795 863346382 252344994 553125060 498341047 217947033 778229688 801002433 395331187 787226233 361102762 684636457 474349428 933055665 244336613 67654660 973291426 671002712 117115215 620381793 463058468 841651422 304437432 913468831 475972822 614241731 568097322 94219676 295079572 245064933 774432353 669741250 133385 977691522 465020110 938082514 985406775 28065326 330773859 898726700 197761118 986027159 62354985 634733941 918724025 918927281 89798026 892761328 931696051 14085752 494045620 658004527 273977969 200298011 231711749 871553586 496138536 958948712 947317112 578296679 342016657 744660320 72957045 72269602 881416055 388257645 716424981 928860475 293393932 261312532 375845597 26041117 756150673 883591143 391275866 827766955 518247705 532906698 573437201 433606619 799142277 768750536 729461388 432308106 839906223 543560624 940249253 593203678 597261922 770999288 419722668 359585542 155258826 535172712 529762193 428799395 518662751 171009442 220404702 586770912 321985060 699560616 930949771 355768793 322056696 996173424 221706870 823131141 567609608 875850907 429859328 241203914 361305879 559025785 239856567 251049849 227650825 437892492 710991157 740103778 525772287 422942970 196443989 140920416 685776540 523240679 376565935 281746275 371846913 978774086 350218811 940223703 551951041 879151211 791577184 359815365 91330549 374733597 374912640 562036799 22156776 434537644 471116053 161471633 947270171 309798613 410241829 458484476 294738137 69703719 621574543 277136951 116099722 837649456 625822258 56984331 53780127 133417708 120034135 863298670 353446886 589537957 983532158 77653326 325858829 383633539 999817910 269559244 567827547 19341471 357095732 334422112 504091254 114153138 153048311 738179380 752734628 283860439 482072786 427432729 761854614 158844281 181132925 711688078 307490258 448905418 762263191 178900655 333836353 977140742 752161122 849791821 516625017 804391319 861299415 687343641 702882138 837111299 662974722 651622964 654045992 26076234 576342496 956872376 906313119 910886030 135387180 324195494 826423464 254594373 764162799 435307505 609658734 737600175 794029481 112076605 971157694 364802158 408801789 411561850 213526468 519470497 981065379 587114438 286304195 182834191 874658198 315811719 259428571 718191098 793912382 445389769 724492001 643528114 868816575 101250697 411275347 298269856 419413687 387671224 229071750 815486145 192842314 907369923 921832138 807248495 201366250 295660103 739692955 948407880 903407526 170478771 993625075 61539596 22396815 277963926 533499977 20361385 897658991 688066914 357992005 406920259 307943408 849558396 143664733 170658605 3470630 1271362 212475699 277720620 149740695 844692070 381670581 547097515 560777090 881814660 128426247 733738988 697884012 97052637 52995654 972368542 459660996 948992703 960364290 876467253 616651022 847857797 210493943 142533672 38845591 528902754 282636640 317114363 417228659 242746013 590846035 25358327 455873515 263585859 103430553 927996806 526790443 422964994 413826423 29147952 918209704 794450293 568215568 143469491 843236905 5370782 526810691 21837042 340870041 680252899 385042354 843309090 553415735 466717188 125005602 922470876 512990850 627749029 587601040 182355222 809501212 404838954 554074312 796236644 989851911 146000912 699955077 567951926 568445313 13788614 885824811 58003750 149007687 103836189 950551820 612597072 824342001 479627963 312941538 111991591 856453245 485081689 848065490 842146464 199966328 506492830 880704057 23804399 361722393 571435804 926234293 234447403 979585479 199233386 307384582 699653420 409089817 329096303 884786865 951148360 409252601 969554731 746605537 853898753 306995693 7776774 610881805 339693931 178181757 503433446 234840495 967062438 847162782 43511231 247408796 576717546 347308354 23183632 602060827 110174716 733351319 270954575 706925153 70647761 589774916 824695745 671772776 169761390 383444419 31239772 586202705 83374352 479479897 842436658 667997629 522566079 529126341 944644569 387246002 844345509 631439460 935525266 747479210 346108511 747672347 447821564 621426497 854505142 536101904 205064766 901562365 855947717 492694767 89615705 510628635 729912662 992061656 834799767 322220808 32940207 194545096 376779291 206547970 502524928 888292087 949885838 457538483 695261492 329476086 408377425 680887640 641277212 42583866 876426737 724154908 205158041 115519068 729860523 928626647 459710063 28676027 52548036 386217870 753056450 889832657 845236950 148580706 359770629 156583871 129366254 369892682 133005235 813260882 509284692 838494589 183954030 691406286 117329638 207233870 497865692 590166395 881845662 408234287 738123029 785138807 419948419 779858674 14831265 598671367 435997054 43213866 374155946 424934674 244078200 822637668 787095245 776007159 248511332 18004396 139216629 620753176 839996127 480819688 755120338 815356905 336395921 362858847 557521572 249026821 69633158 943440405 358054281 423372738 750392306 150232273 3763906 527615110 122170199 343120413 559510066 520298651 76974398 171925814 107146243 840959995 233386638 553377223 154005115 363293367 104442849 515558895 223598145 3737869 357255226 573271969 96013121 963451429 214206518 628412903 369085653 138276343 835366732 22739679 920973099 582556478 358736100 768167432 569176672 970341593 892480079 173963741 219764048 408838555 990916493 497457319 14041901 387912534 459487142 605146223 155053020 579670500 149128554 405819744 409074228 988937941 813174661 276202908 938189793 114835666 383496468 588812566 938089228 98401480 997080722 798575614 121123243 531220312 80545639 168024986 776028616 408281612 633192517 811774721 62231436 215190055 151168519 838467393 187390514 579071735 109606249 435677833 772244821 282266722 548303217 136397837 223213373 401162538 204635426 588524963 596123338 863607927 144209971 669551014 627353558 37843585 44347750 44009559 298066240 397424922 964464333 560879558 29908804 564820244 165346549 43664110 392209221 801029154 186040759 627724073 472566864 507147164 779509771 827270288 517307173 336686557 736794360 204102 783805625 113393805 75407118 276221554 191731099 733348944 300696947 461944181 359991679 542757043 542815100 902979444 866301745 145422943 663766649 900818386 363177979 286905293 286179810 623795979 430150144 487420541 94597905 765281740 249855659 73292303 595471950 949049553 979654299 69219818 707020502 727239758 696679540 60468399 414859658 562449552 619641017 943104977 694010453 35685709 936362499 33568491 474573102 842300200 268574558 183874181 508580258 845846596 913068946 737975458 402400642 597293463 880572015 81674038 579286732 332439987 171819639 318987379 566552824 108359273 949083925 604181681 392612741 231780473 181069011 674344114 316773371 832852227 593930323 633973266 773646345 885567200 135081426 844547917 535247448 691941186 413381136 573942201 57636251 901557365 898308816 557053379 340899621 481726852 613209311 397843647 240966522 521983573 302830343 544783970 578585239 671430404 358615591 976110422 690108282 187548933 364588052 844866953 421510416 48500740 761391438 744805333 709029439 476711776 659965403 291284225 19835538 466413483 3560880 819726371 279628443 754637976 842261664 480054390 687765735 321050663 627242779 252595562 228090717 892187807 791832318 900546459 179478575 35528374 836541413 63551900 109147713 455807350 520884518 198992563 388030246 317786607 443171916 718350683 906884862 407411689 132802601 89530588 621233831 624845691 694002542 903227502 21453957 630457741 326100628 502793767 295800382 390842949 641557321 923641822 103760364 625523472 65607019 943445211 509296603 681420626 901574895 648827763 219995475 985713954 615740321 794857402 202471301 857666554 382268312 187120183 873518081 553996544 293092224 349227724 300111091 738269981 653338609 329692936 451390712 238876425 235033582 485462314 81929021 50333855 515266292 161243979 958633644 845196120 479645870 203977669 618103835 454163840 481387894 17333825 426097284 948487313 805454554 784509100 207738512 737889472 616170597 854134665 739976032 708082848 201540116 708889021 523002768 931413312 667045895 758243337 471061032 716709339 234722514 221151647 594993762 479738173 584223959 276097324 858740090 58436488 996723146 136782759 894460801 39529570 284996040 808754043 227507134 648564033 193540908 15928318 78071331 981857811 637489079 998900195 841972493 635221997 932220839 591886799 92433945 297147953 716322243 149809548 246264442 835029398 798265304 546266947 862471042 808147352 550799363 754452720 463886244 370192843 804443050 837858134 838220484 601088858 717652674 782275145 909356795 235549949 478507553 228013100 101216698 166454011 782558475 347020630 156222471 320974811 309050536 738688880 92636275 463674764 963778857 270408222 317688715 710681651 570752757 146578674 985911223 730832985 602954173 403466887 872891682 329283129 503312934 424428749 638302891 366545060 181821880 234257466 252335418 415535400 219773728 522005787 353037640 899100982 87355746 868969516 854845655 695921877 404533286 692589707 89564142 29929973 796365931 666780226 909609256 925804754 837573652 562941987 303779201 349749526 422205810 808239635 733222948 892750488 347613101 15814739 525386113 760124193 418947666 189583398 391146026 597252786 592214932 63809041 560514685 818902290 273511620 741022855 209926388 934000579 989697702 673393003 748832447 408800636 77258498 695443500 129966706 907478148 560766013 126921045 830682363 755334634 731282270 930021601 5566055 327050831 478052104 529315439 754546082 408123435 435287599 55148134 725043471 514771800 423070401 18222200 524964245 422072235 722673814 651391314 82143579 818218950 379601995 891599715 130037939 393194943 633728427 149589555 368659481 834658329 956765882 62805034 677890455 73799010 62038798 192127490 377535778 577126311 50433416 243850598 996829697 126335937 836777414 220006237 663265339 814852270 806640434 336264716 206297373 128960294 828505202 502359816 994742664 310521556 705319620 913559828 231430583 109187947 632414155 315206608 627729870 46543035 303427691 804105480 155694285 699511648 477641000 122763962 537524647 734355183 555732472 462296702 581970309 909812396 388398462 219248907 626849135 517754048 663650622 912708051 380841054 239693365 135090357 652466324 986346394 723656280 72690195 416635374 430767625 594925571 653931930 68170209 343149593 951087447 198217286 658756041 844680456 102163353 928194080 44899157 12112537 674185381 794604175 776150344 661255204 778941572 571323992 222183448 850462602 534414216 557873872 762024345 810395809 642318092 883512676 233859276 55573991 177909727 486364814 939079472 702845314 177596905 54248279 94645064 134066149 420562448 754644308 131786285 959822413 534680220 322869880 868216215 483687094 156349256 296353366 57949195 563496274 836909953 985789615 105876287 307726197 59175038 800033750 607573278 588979393 15637554 268212047 483734283 18543805 882729489 736122493 174321810 508699686 866524218 781532536 154592073 746910515 109324788 84962160 116570878 736695644 262806563 663792579 723120101 416551438 832898543 10711059 500524560 84305514 907069073 849571115 985875432 224578376 714786491 559004624 394893149 702180673 340420926 825479161 803435934 410268926 725043416 797479215 565944377 269473508 351148630 700808815 855102212 910971805 651910035 2626779 301128292 251162518 167293939 591444752 97951423 492485697 32877438 330962352 147252527 370349568 125690763 801671941 785671317 828466238 632985230 542810856 960924487 656389624 135782076 246555066 138153114 796911190 295805058 510338843 654314230 368501248 668131722 929791503 198026943 165849407 705714769 971128490 563389514 808927376 824890839 107685280 744025685 404453974 263253125 863578654 978366427 101226640 302887430 366944545 915715178 245860649 175220325 68868948 597510933 362912996 636227769 586758290 860531160 482261481 560190799 442040680 253506925 737009765 297039376 377974352 454208069 563224702 670798275 697762173 472052560 330069888 797686937 668731013 411704040 802524243 371778101 243390650 776816182 839020898 423751844 411726608 337573936 836373724 114679602 635985780 828630925 786285121 234688130 520531650 949386146 540576822 254535575 989592055 702613579 715858499 722418283 935127208 458434274 695842868 102376245 378518716 214839068 420511310 201907532 153883434 114527377 881608296 564792086 866842334 870967913 321813215 352668314 840979758 886681727 713473859 889072597 944932811 663184309 479825313 528993315 431826195 776496160 525191658 875742371 844487670 712416575 277165482 847714218 535169263 340265537 836320854 412174438 524686726 236918123 568297145 539609185 832567966 108615166 12500520 193487601 409793736 283499754 850624392 645881764 582770874 724810481 385674125 346096099 958051283 593664426 759748830 502388013 142471685 116923981 871302210 692220310 662571754 367421285 503192363 740402465 512155766 657333091 521644566 17490866 577819745 920127306 274371154 20602566 709787059 398586356 898430542 660907190 951025655 870085381 355421377 377277541 115953000 221253616 983538148 143795006 229619494 330043893 790913771 451833892 793124386 430411058 287988385 134448481 87442796 650599640 509281005 197263940 748369823 484302491 821932163 854495155 289676910 837799343 240845782 933952102 726097965 641554991 942666340 239729496 750999524 225950480 624716375 440399302 540960518 890312169 121512595 125723680 675093830 526910731 104755131 990460750 695774771 756276925 290850458 667647807 224979423 798202568 794128504 400642194 666284123 659323192 618261797 454953015 183337642 900524250 623590100 448591594 952609384 857262887 482842678 308561474 78481525 804280900 899775724 68845714 645856284 342972135 620358518 81115768 947724854 797568234 218507326 506091159 630611028 696091585 645669394 747549659 185135149 941703837 64562596 957974156 725568348 629631973 850407595 980587710 199337954 614263621 656552868 476151413 609770803 773030865 845115153 332351817 786500350 886108468 575724463 20377758 25578269 492405955 585061256 309288787 531666623 38059731 914570489 461106707 109855274 105327487 768420654 406050253 834747891 519523841 363919004 965718227 726195395 326573206 423413739 447817282 144468372 447503198 730779244 935319347 440008546 452698653 404710007 110473812 906815883 292867316 52325042 30766311 306191543 387385065 843732939 965899069 554726163 147136458 469277161 198257476 633799625 774958835 387197637 809859769 57902532 902453532 339803542 213146270 549120760 565652513 854142854 832625884 69447421 845928164 464872685 765179999 671771181 258373587 292987699 363439735 916674127 259529804 151122715 623728311 410549455 706727581 42237308 864853781 772572871 875033725 287286668 376306050 615883993 351263817 973804975 767141312 187592703 183114206 683690092 703880952 381867687 28944506 720428644 729465782 320764283 654044839 725254013 474399153 920353047 130547515 857943662 102724116 798214982 419462886 921222365 612436017 517734223 577826953 46156676 151305101 52845645 637117520 113009299 706474084 584005371 838035065 490659633 246036034 765815149 788740932 557916357 559414248 879235269 875613047 920731725 890417275 3525541 544309416 244506778 363314348 85573419 429652568 578648446 412343196 946543700 388272929 999689186 492316272 77871831 886609410 977309819 829970238 961394115 818192766 124446231 871582307 314314457 389451612 990601837 10519137 981129255 394946074 12284613 45424926 303795272 293469481 742279384 859533926 39676044 908188982 610627763 472794332 180904362 455511327 47348082 105262163 674383753 216294998 827778323 853365080 3551941 116232804 847445956 746950676 260924665 310492842 138188006 129995105 733082747 217476547 511843536 137616347 159913841 853167032 984890508 155481096 690312314 657835154 667722011 66979019 239093890 133592287 393772535 822666279 218895036 1046561 869562489 372219531 7913236 412227095 807459639 40395809 199462232 529032869 33571233 370857375 715982764 706780399 225118768 254573532 770292377 862008391 497642895 575291849 816528548 272273386 84014402 930700739 670619376 721568794 438678343 947242275 122863988 381094483 215853060 223706196 521050480 601759710 470548630 691877183 59466842 16643970 149453133 443330934 736784996 635584476 817448449 906996327 585351403 528365645 717177958 262450834 889375184 27857236 409514834 356053203 947586925 985213681 467117505 301846565 625397771 696487608 540380670 8758747 578278923 999334113 494068605 558648347 871702567 84174453 834117083 865202577 371566036 213724256 66429376 721481794 581720574 134748643 576203837 68384846 990136525 378152278 601707258 263546828 718459684 117229386 97554831 465748277 561929482 196210429 884157948 400427811 356778638 999598562 169150857 13640555 471238990 816817099 941978179 506163064 785706093 353677272 384165822 401685812 23334955 312705533 95599671 490411874 328002015 657712938 793595586 533874270 519313799 202567439 603741757 543638564 95688457 970869119 669654428 838007974 75272501 81531053 278815089 841056478 138419655 491966907 773696162 368906893 252489194 503767191 365773302 769419817 19565650 895488620 193284771 216821095 829267239 406157239 995107701 132808229 988095268 119553991 636836310 120508047 255326476 511412032 906823032 213624375 398727600 424256553 560817217 82703298 437233302 404029028 555182738 136260641 481597265 664964802 103451822 888058803 750759736 917055311 707006943 677740821 815175694 407616343 635412212 746246145 73885453 842950540 51026655 266119305 673018197 491591251 937295450 358282121 562607018 265478655 496732308 41808553 498922203 718703866 240297313 611182556 881549092 685437429 155894029 759587406 472589135 693911402 73879355 930796261 272441797 474373972 68321691 408887271 884063965 353008450 804922122 414922937 22968285 371427670 934415924 157352967 530930472 674356521 979508996 116423548 30224741 712691977 755656961 373930964 567664084 802677700 898754390 128937504 412236877 170160981 582320764 254716886 371922352 588003021 907120844 694250028 642096184 681667654 533955790 940461213 477373896 318717714 776971931 463046564 584298211 377510201 210276064 588115476 399059002 102112330 113730096 346577263 694947207 288154507 596350780 479389248 788004836 217700247 925580655 517938825 831426642 618623817 661963317 854930208 609577634 589412814 885012165 466742641 440344291 705545987 620192432 669250591 902661788 43431400 907298573 394017764 149040509 336851160 106775041 627533709 521306140 956511055 62003455 63883264 522516071 162210937 324524306 236788635 68033912 94641491 64605356 986777708 707900594 343528433 863276851 503250420 139358098 510387932 861466957 950576572 883563881 489420853 522128084 946915374 327948254 464585478 883926294 664870098 122430216 392923054 215791580 969718408 111172479 34618456 111580588 745072495 777050087 568042971 619687154 68735184 682014799 445368905 345693684 132844352 802639213 3623016 685976289 108917684 376449444 775419293 772746572 577442954 486254294 654249915 940680500 373487059 307314161 38035336 276363403 388585137 678706208 88011006 873278026 124278874 128164599 167371216 894257767 918881579 976892407 83312458 795788369 366782106 795251805 689516993 235466643 637758994 765999177 976828837 817898769 362886405 528282295 311762087 14429896 563859972 469798636 138776909 527007782 100684156 299172180 881075140 247792901 947483069 177808203 106037437 511780076 48458739 556577001 232408814 459042711 640945555 460762365 614905696 761387899 276640312 952148386 143617295 240651363 977700552 539294706 56399216 64023316 923798178 747369722 478929026 259430215 161943971 106599883 308471592 174137170 132362678 543961837 18795138 751560747 117880035 178825316 589658179 45201954 700381150 785561051 497039193 780576081 452503372 871010106 575661050 222733123 451195633 23367723 358787761 382851622 581817846 726807239 605605980 869447578 847595384 129893585 456677048 608975228 191396738 47336152 942513138 208664153 368086453 859905922 180032434 38728549 180679889 445391648 108199001 542398695 69919667 743398444 909267244 584917652 840305691 604573385 344613575 360093089 456137055 799657678 232691753 618150194 74776452 425549344 159364344 936844261 461592600 662787933 717947185 764048478 736705045 756214184 995946078 101172498 643646070 408167234 891278449 591215690 475966836 603343748 859169115 5487282 345075880 844726679 597427344 875628564 472385509 938834726 109954456 888738448 859132291 109483474 713284237 102760974 945705372 502773127 282931328 851830397 149844208 645202529 472349837 346707049 556526804 851869798 63130242 650387880 243522996 531544873 121684001 747728658 599233159 477721059 606644946 986773514 193606077 712850964 36917278 251354688 456103580 322480790 746483428 351135961 845155134 154305627 600826903 279017863 461650224 793462157 649650519 155068280 510729946 652795135 665716377 61598036 130578641 705524920 24371646 70109092 90409294 294961684 55853816 341850998 626528305 435346936 860926159 754477820 857776657 325099629 666659691 809090557 828129822 585548069 681792927 55170828 56345126 350603551 183028162 777033450 751316248 529204325 466992564 231648863 546895729 615569278 319542288 565025263 484142428 553509431 356134338 619955989 716325384 249245150 351730463 855176947 846594461 758240188 460371295 286472646 905299356 14017194 905764694 925700057 160446014 590025888 285068344 809095738 547337861 936204594 519635412 579256067 548724904 273847068 21443276 776070500 539798593 600855235 658310000 836177622 51010385 326414350 771627913 354512430 840429183 790418969 265910809 575261431 880823145 496711636 343652698 810279724 680577769 321392425 434860183 638356125 865744557 264337986 488416654 973563934 234961034 596825491 476587429 567593009 75592232 916985399 443092838 623118627 519421025 230024152 906805511 906871529 87658115 495299904 35141138 533184135 45123922 704174408 224682290 373986237 927313502 846360999 901872632 895283091 709631971 467726130 717611931 108897038 581650905 818049129 40154507 819350749 423891029 467929098 330762824 55363696 840503046 716428971 406893114 315278940 747953150 596820584 655997302 383299804 768191598 981125828 332938982 40393248 390058489 819647998 840290256 692773421 802972171 767188228 293868818 775788133 733473714 190183889 272162777 974387240 821892574 30612692 740063632 348137640 872116506 744477544 410811948 360685996 992580287 784534328 525503817 96670465 851971843 921369751 125615375 719785990 963289665 347005879 258514257 429910856 180982635 325255372 483757490 670787790 345553952 980451458 721210837 328585208 63980709 564280790 202832773 881356405 790202249 352395236 349727331 539251126 792453224 508183908 156805575 305061778 113273883 409518719 139694927 892420485 968120084 151414763 278907993 514200331 144352637 322001829 30308993 537391975 315174517 444677686 862648306 498701114 888448441 823486038 162365877 12644620 756807392 830528334 195733224 695354905 988878100 363095111 204433708 62295065 334668477 233302934 524116790 365459163 235672851 405448160 646941536 182489898 620856519 213359516 229019071 669458691 570018736 567863796 961913724 384945440 71498184 782068325 279506635 156394048 906347434 750587437 151108913 553682923 376670242 524028658 561019358 692424030 544987711 211322989 65597227 201350058 966563222 560954895 528109010 151169343 88756035 364490212 16392309 39451614 348738911 672491817 742440976 337092180 194835780 771307415 330929537 612709920 168034234 38532644 74472149 690066022 830565355 417183446 432154377 656453788 478094607 312374019 635863325 296774737 59121803 444035823 574370681 30327110 32069135 981160204 667550454 390301198 588804686 646057221 112397507 689331545 490057016 534430349 415076357 691224103 556893881 193023585 150611792 94928920 291209159 606921546 675484873 947183633 281207732 612685541 875179397 902571248 340869164 422604916 820191873 495680689 940431644 608041087 457125383 262023098 739754098 389203538 797889477 453936331 429165898 802015118 56577264 162367843 187137152 372224535 910930219 198851977 307379398 848066210 428470479 537556549 396878436 584364987 249405341 362307465 755162437 695870912 45208494 193316272 578932707 784889028 436343315 177970853 787194797 848469146 559624261 835555329 430496248 710473863 165134159 435246000 546488411 635826979 274454311 873000371 639530549 154023513 116106654 537183814 779902326 535435252 240119694 156182700 731448958 2296219 493740224 199585178 916013415 576407210 101805087 749343240 240585416 233558325 151218033 38319634 743049801 817535620 47935265 808596752 912099261 47584962 469877835 72002737 754863532 508934261 900761096 281882988 868243706 812026650 998019929 847717495 490031121 952005621 997711944 225093669 447851253 997440281 14398275 442325095 326761012 439291129 303616669 400930502 949488081 348111229 802769265 220768557 783307138 581810519 511860461 750524296 305912781 852390838 891114501 500472981 154034321 147010702 567424126 416589777 338662237 52751400 768131040 80985120 359136384 739173850 730112454 547247638 939744046 564932033 847859077 400688714 401432278 410763552 882161679 413512274 640290126 463583323 144352068 516344328 26305190 646215215 303853059 129585297 767772293 81800648 278217265 602542113 181578646 564917787 534673669 601891694 872858911 757565403 91487057 991266451 715616643 801391536 905191832 210503059 192396569 98091697 627802349 969182327 953872510 793486923 703421948 756201110 298799614 395477707 450952859 593553164 270457680 873407787 156744777 512006504 758418805 84817369 198504617 739720981 283575705 358348658 422622682 616574165 451594053 28562312 132094215 388031916 347061897 339100323 37581175 118327703 322066486 978585701 781205573 944861903 607853698 516170070 655187053 81513615 805583240 197179596 624656012 143291838 666731864 823450286 444720638 613256239 937307659 955313045 302936991 954993426 571999564 963743744 286669798 525428214 665177396 742963811 590771590 778349726 599019308 102803796 583431707 30069059 480565240 257083270 452547578 440542408 123016824 650022058 878501667 91628613 714680441 429096989 117261114 191962968 903692860 696982533 663059862 948128862 630185897 543985923 753470916 275679199 20141292 994100682 714057222 26954676 372509048 964860307 285090647 388965987 20577137 786587710 197352372 867722694 298463283 147937910 666629717 383677462 674891097 750685329 98342738 970666680 460625260 447817856 478052723 602226455 162504721 605401870 508113046 854527636 281401513 651334265 952620490 630504031 463164333 753078852 856215372 246122058 682936637 752675241 151700759 831844359 523142244 642321098 380369773 165902886 858946477 2173873 44366733 30433157 67340804 759992158 678225059 520974203 770084281 688806575 959034229 399092326 47039838 696458935 404363389 29212959 413511104 430241620 595210685 883101894 497221620 624316084 721510659 220037571 746771775 486106693 579122284 820006542 552620969 136104747 934871528 536341290 277354217 626342633 383194932 471769535 109795439 520022399 155926504 841739251 792190513 122838014 130435769 749501007 742105253 487831916 188929347 692200058 564493977 452983036 576080090 900722215 669864403 719506142 342043646 540425297 35226469 601595701 102170165 640811171 363931103 669849317 465084480 4297227 431819141 964857726 311078735 495586796 278270088 177920163 770681011 349124166 295661649 660703897 813060205 757818458 312893270 30634964 94719857 210230947 854093784 797007035 662430068 989619597 529777873 943554800 148142464 314309580 333475311 156592822 643385568 710976077 849732264 203584508 968402075 220775550 111130421 864962875 452576404 980238422 202285385 509067607 565896326 421650206 375775714 441594000 790646073 891553255 706636887 413932756 615536805 703805446 815913897 22920088 951623581 936514335 262023655 274581391 881783905 54687177 394957910 281635432 545460378 555787609 859717686 83139193 308878705 492469244 985386401 78230518 126138432 715571454 158592328 603340610 742312064 654805276 832015151 770598260 327301191 420000740 376228261 19758346 488070040 21410784 893823106 852418012 537373330 931230646 763785419 170623615 303844621 927212578 153011904 785309529 843682668 747253593 90942894 200697627 685830133 884251905 450977895 869834440 785922836 537032603 343151461 15559652 998664951 470217017 730087067 496631997 361424802 729065937 729700598 634146982 737303562 511209093 479599234 515700268 571978674 324663777 112698404 206299196 775986652 869774395 273657772 328711192 427850039 875649362 351192852 117766988 950690492 590764931 269705545 287136173 512980191 252185191 668269358 664088444 619987113 989036969 28701643 83799462 779956070 874803754 780983858 370540748 275286535 819487321 68864048 560031509 149405846 77952871 773075020 49332652 729764120 420509181 962606399 482541887 434772947 196365160 390993360 415142627 205018408 735818858 804982083 718175469 679673571 843378661 670058155 181189913 393685235 3761670 41350475 414682022 646624905 885022776 415971422 648955581 255125304 575861421 268868231 330818850 678394881 128998962 51179788 259298011 252807169 449519883 498806705 111478472 3225685 949036880 327935430 623520937 784828977 943769604 386240636 496946 816378899 891410274 809697863 804977532 892970137 131491201 782238830 722206340 824285449 699599067 791064200 710505222 187216638 463078392 978838499 751960167 572515985 608098922 465087192 159929426 555594791 320628528 693816954 849210091 731420078 612649818 951818234 772850225 471777072 786806493 234931244 174094124 559624519 491682897 968499955 814238084 908663673 408004427 992226740 215446014 581093389 636999575 767835793 507083129 353113259 603695833 484235384 127466824 736840528 536215299 370422537 216050376 161684367 582206135 742070094 576454564 125465882 217151586 843434166 485538007 79880561 215914065 365273019 421208279 774984071 633684199 201018951 584501789 728970317 361990235 826840635 540617935 432622094 233506702 632104941 114112237 58418380 426171226 64461252 257426494 521954101 793493376 613273488 96143274 87028754 527047986 982696699 131902053 59116740 433076378 478072333 21233063 172314941 740241864 579951711 37625963 186204468 737167225 791823053 445492633 262911415 582303261 804449875 650272365 203697559 204626656 11944159 18523754 707237623 704062444 261101053 876717076 975444077 86884417 455102069 681471169 779013617 104401049 849150155 697973607 354639757 849069996 690501768 181024082 969085864 240342763 48567318 397555808 663285445 775479187 661093622 389685111 111074566 250591559 307856791 632348406 475498498 611420789 708196946 154749658 123896777 48125316 490712901 23750544 534272202 797331073 217387913 421198315 361820291 746150242 794248045 606201906 811203510 242864339 406157801 808400598 540178651 359566072 850029040 252047313 593836898 477753944 244138637 965709510 470566465 898856136 397700790 713338667 386168184 308447574 790328571 760777438 150643850 162431462 422042575 255138736 348215432 106973516 281193536 213315132 981965295 557024043 841179219 719989194 861757973 821557666 133707528 599788573 708315978 85460147 408975326 863108801 23234332 266131916 616624917 854113757 837045749 117638926 798248840 578281222 915502297 908019560 116918426 941261164 429625063 13712549 813915099 386451242 451894425 17715390 868907182 10778151 491181669 666005455 612107119 216570718 350591702 915071835 590596166 508705285 530129018 904828536 376183383 271544749 123165020 462980902 667401638 586909007 430978036 249940293 857849781 546829307 61075528 549331763 226351519 495814306 219833816 783163058 4817355 810211153 809628253 342718763 20720082 513534418 53499009 865431531 841118796 988801282 952848452 929854488 76748289 665335804 329930815 494772499 689165761 40558743 637443220 859486450 790911578 856589656 675341363 252051249 818536961 897916675 760304188 947860531 11244079 912636272 424577214 585056804 935179341 787206858 916912172 330890308 68100410 404237613 235620049 190535539 64345021 731906197 44764481 133425811 339370795 796771462 102407234 770188313 849754633 639305503 305903501 147126259 672664707 173987685 677486297 200477032 854265088 766186906 331534676 416207665 23327740 237801704 135748857 291451992 96238837 255468244 778010026 803445717 111630485 456733150 168117936 759312107 863649980 372527866 960454292 496374975 770068319 871175465 895320137 692597829 394601506 256751428 605701263 219329921 515666227 747827778 563869600 444170140 3179993 91836294 846461664 163939739 479503296 904995451 972980280 948310358 805707346 399730535 680686607 669474268 680244455 459007039 115631881 103704509 822095698 539578647 112983004 268497046 293714029 265754096 513463494 959093714 142139753 842283508 14994590 390176408 899050953 443809616 573052309 384247766 260961955 549044499 799780664 30310862 772322387 56063992 858618543 932623879 967363268 652750184 52642730 78485954 976514973 511118874 88562128 299517867 460852594 847225010 154413548 454517993 995464929 423721407 912211149 730428226 557342957 683626066 799982716 729826122 641333196 332746633 75552582 852832299 497701131 592399083 605998459 746138960 595737870 453276417 894895157 324756718 145217048 260485425 58689907 487732628 582082369 887536849 721552521 124151504 992031653 100711918 832338280 497353435 120428235 933780387 559555378 222754461 627868094 107361885 952671965 543225245 793560865 888764267 849914579 420418805 649723560 260306768 990454507 848664392 613808261 380782474 696513660 455369180 160818917 735099640 613748597 62518060 296623412 946201219 790110302 422000123 468213068 511434776 46600146 399115697 238385403 595871012 495740801 244448317 637203764 856127083 171963458 320032964 989695726 735362897 220456211 141822610 916426587 610833113 15343909 270130444 402173404 222146458 499239499 652474190 694869378 454449750 86780836 980446387 540622837 477393698 431012391 409159055 403554040 44503846 106910276 191410252 858691679 698059744 870184442 118229295 764384946 802541040 438768028 526920953 471837283 50865793 327701482 552226091 861682232 528112257 690980617 388072876 563901414 453593133 23169782 139760726 174991902 368365962 158932525 543904370 20547634 529117189 821039170 405705215 7536116 5396957 961610256 716625505 293474757 222934496 747413725 201703459 125223999 260694306 402765406 67655933 333527900 869790374 777480056 88287039 505855794 414233505 592575331 665395260 871555219 228582061 903713735 330139500 520928777 428756942 971202275 532396461 787737146 774646585 397791922 885426026 409664005 307615946 570898557 424882673 269184687 759952595 654062841 521728129 295953552 821674401 772258142 603845954 912431489 547873703 964990428 751102953 725722453 843878744 253973561 336979334 217255567 439759648 635398624 313621641 339700984 606295189 307806945 818657733 198392945 956388851 675355155 909041627 68273542 67100503 916533115 706698104 823261885 650753574 401510650 329833441 882487539 999124411 973562473 563411951 872586486 538596050 248122238 48805677 67577869 676928706 33503574 846073137 594866178 885897304 640499750 749310408 527125945 695307027 423330928 869987649 771924130 60254379 953538013 958216771 107919502 621560661 254679453 58377042 69784153 56769696 344709920 643001983 459297511 400623156 697018559 417790738 467383450 2817970 415343010 945380126 399436063 873836792 980990109 180389273 993271063 207983657 816919699 189485386 385665974 238045216 21921153 442705945 642205552 27663664 707420395 249933960 378986527 310930647 881757242 170603915 711523299 787758587 866916638 912594172 371524139 40286976 170279674 210926447 763362773 822876554 279546583 923810711 831336420 76646676 332650872 360173891 800602744 442843003 182312900 723492689 650402469 974127817 570782830 669463690 78822225 729334334 646916384 29078708 254240781 80243572 610096270 28535530 980728159 21657488 50474887 565782306 696247082 130561879 693667600 188119087 328224671 392065535 648260983 522963329 711516951 817418288 585603973 906733679 647003363 433073189 898486472 670086357 118539356 271661694 450288157 38573617 361531525 805383175 619880762 613326386 428592586 145534039 444030838 715851573 249027474 750247205 232571973 108116010 758130519 754007238 697432598 63098791 371386271 134373762 673629680 800068846 32989537 206119821 389520285 134161588 555078528 458660937 552357276 550128262 467840270 505744308 810713161 11063728 352937896 741388632 21997309 368703622 714278596 832693503 145588808 16863455 651774993 246511486 419424055 810303332 410722885 58051727 140278530 467280161 248977445 954967757 419160371 496345008 477339551 868200913 442132185 351306423 895497083 476670523 71742235 501235355 942483802 727537362 344271922 485839057 614665563 350355172 579143017 752811106 475364713 864322642 325335523 280967153 616069370 954359916 612986120 788979053 539194375 479730795 142825177 884553746 512631597 513633378 470222923 994897727 130517811 169484320 174525321 632398784 79455052 268347015 69410558 742493358 609376340 338437395 42065689 826827334 233067592 513408610 53846658 197682181 390836645 373082118 972064480 496148675 6638627 264310384 634918661 799802087 15457298 469046144 911038490 922039859 220823051 472779597 204943384 530590149 476625629 7718117 123515856 403739333 384657391 339599671 59837007 756731123 121625894 255605014 365234374 116229644 162824638 194060564 427118054 761660612 472148456 643314479 41265229 942007768 612499264 853257373 588556195 525701710 901059886 597099539 276701947 565273745 355900252 738398433 55613428 30001756 798221022 680010147 759289303 382673781 52425180 918628813 262080689 112296461 996687606 824203382 544852337 753906406 138617415 95140998 192421455 978941230 79375465 169143218 351773290 612834034 320681337 249417074 729071876 205996231 899054660 715125992 294926847 914110004 842282427 954404825 829942943 723150566 608436080 414805686 937796179 495885228 852624540 804273531 330354369 370893169 828733880 898170507 815769644 437768473 233407832 703439397 322965432 110477024 319120770 742364429 139995952 179249361 373137901 743361189 634617603 50902481 69781351 8132607 572615483 455446229 692465523 576378425 873286012 155441427 276696774 548049117 230205041 348211379 144222829 675129145 890485990 418086095 496994578 958895955 301807301 922508314 308199157 387236739 302929961 819573570 806718724 979379956 525371820 421355324 94706820 9771043 399873101 487812832 562947152 105661149 572347922 128118363 766646065 804364463 201073678 929864713 694622568 318754966 88395626 90985775 616321643 342063231 29239431 771845759 779033884 762618965 514995134 626054151 301760421 214858810 938867448 240104492 851563266 341304611 279031843 33869903 235031168 349850675 905998243 527227047 913251282 536615827 372379501 270081840 12826745 131705751 435753681 416349208 39310682 271428519 835873378 400739025 740163199 889039061 227082298 232754437 556937719 257618196 277602065 791717707 59289717 743805977 963450380 530714756 780919327 904251387 687862602 795118642 243160286 715777721 537891191 154399361 24092832 291700305 162956849 340547418 949439278 154329702 432728755 88440395 884883301 942342257 553569379 635905252 628876563 257893701 364101146 196895870 110668351 121802445 19213134 538790856 42188729 836851837 559067679 409776216 309694808 750339232 811850708 912916006 411073345 69076146 665257574 867774669 276482970 658906904 960646944 465276821 48082082 140184888 765374114 451643710 303791206 153045318 81555881 4127475 172161477 481182761 878460683 451830817 624477009 558609643 660937154 261542528 365472887 475477742 932766461 668066052 266132364 782296135 747797741 681960819 913503686 91525503 808484042 186096346 859033790 937202646 370666371 578224215 215387615 765591952 413799300 632297311 867926923 792746628 427209571 508566095 975473610 763150785 996573244 470642649 471513209 883441424 611944757 130902411 479186143 471679424 413245672 52857803 34545434 500543801 234271955 913849960 268690511 627691603 696024020 33950300 813134217 209660900 401133377 251903439 147233964 950561578 920932738 309595198 812506871 75289654 354156624 760735333 789302976 866300688 465759193 281457327 763993168 721743522 32612526 567675234 999280858 842372562 240438197 411656921 992898908 559774905 122966258 411458988 683825325 204764008 903492203 554981494 312581243 708359148 916582446 674179122 780346367 285498841 768883714 407595014 235841272 969852064 919952238 132698096 332241390 62501403 755646698 279517344 146100214 355996701 647557018 140592321 519620491 654037121 843797176 808890044 414881608 21483171 380834123 97432535 59223884 677516423 81846359 21696823 959165795 913081880 902600720 744336664 266830427 452792967 422280343 760090399 612211722 543187404 404133355 772834619 872270551 382484693 856677059 385752514 766451072 219442476 611310594 535700204 468226901 670682164 742031270 322743127 945977932 935940163 233192538 551986706 742838811 660742268 714652238 147035760 640297742 192695023 134294948 777106760 897613391 871725229 343506822 14649253 940619705 373235705 925162065 292053749 918462772 271484525 522088531 924544311 987048860 140957929 333320618 914119428 248321807 285553521 909843482 10634427 438686262 176471739 157795818 831403767 366898932 903443562 693511474 646197454 54355620 606719820 142458446 683374736 366153553 886290984 602600364 521179085 290355390 707579302 378154607 606800656 292032438 891295197 84634801 490871178 586548201 723170931 742898062 365939014 137287953 475712380 607298742 106836558 710214932 811613834 417021974 269688470 781183338 342383624 813241865 631330079 734793882 741626331 629248381 797231874 625921628 63270238 710724472 471245739 642193014 411915904 876932175 812497609 779786006 798691402 821453907 132225576 378638494 917592942 826827887 959647512 944482795 441755810 633957577 750164249 181395166 852641294 659448348 564632092 700618002 24182426 735946666 996879749 25144897 431724361 469632338 331348813 661312334 241609784 541190826 784290891 806239747 261720820 180551735 48051064 741022908 989714929 837742660 723167884 915640104 287341973 207816419 437625291 761926535 549587678 128647922 809734797 943780371 411757147 149855247 879182051 979810741 56267800 695602368 635433978 56154066 712096719 535472731 472606359 731221119 475111554 135898278 735066675 835153916 954214082 976958604 276174622 594838423 217395100 743688513 806059640 956979561 723482811 791077360 409279005 806172595 91350465 845923144 519013659 944119205 933409385 650525485 229138369 827145737 682950620 543025440 204418953 156629188 178480534 114834184 853944737 703518993 788637761 526703779 108157406 237128399 616527361 933891409 810465741 447833323 483124956 111834701 717473047 619425063 421492823 794996083 411666977 734061752 145853980 179080094 886363348 275197079 782938723 979788923 316880496 400425128 992822496 881308950 577894990 391218870 773012843 456949606 604140991 628298268 54800513 542525810 259519637 436170029 192394323 744711443 372909692 97890860 544150860 804523772 982601041 950366671 993062595 454297033 624960480 121675500 504041108 282029052 83252708 530122768 903252226 408963451 593358422 941208940 536571199 976316880 909668606 716452365 220148570 402460964 604869936 614827079 635395532 967333774 13084633 796090549 304547467 89877251 938390637 484797309 417095249 621804421 928341219 834388060 591691606 348490526 296295356 757880257 604292095 570344741 750697651 431337399 588847335 262827632 390473816 998636667 331949249 310105759 761100056 647787156 239911821 901957762 942714521 90083220 840026142 869484948 921972728 698576191 407325072 142696882 637001197 960647682 893657977 390192154 643642604 449548402 22478923 108018356 362645595 288707689 560283130 177732342 970108095 975552294 808448694 478270629 410658382 244924377 168379251 962634582 968717258 584973373 105141674 814251471 939475522 290005854 341808732 728952830 73035576 374408083 910737366 405460820 82287937 441653785 299017834 112029329 911586393 634839069 907185954 420347285 829026065 15665575 467831573 667904806 323942328 707021661 662397609 741850961 293077841 784783404 461666479 673881217 510639628 820524273 582636516 220970699 860124005 45935844 804827116 255355197 588610238 66690839 216748180 422729848 119043041 963404686 531454844 509258361 529890073 506200725 817775491 646536669 458731651 503177871 373660038 8970924 295036359 636655377 762682947 747669530 691944768 517936753 707411624 314191316 173578433 864211439 835750630 865373822 512892386 449705183 736859398 375026203 564565552 805359937 183391942 963333060 285580350 65483990 780546266 251176700 212504790 638988636 126905315 465814119 891825937 696948194 467179053 491404122 800903875 286659313 563086929 33606978 289391273 450914953 474904235 431150060 35756138 155501112 912293377 698529233 279645582 274442537 255149490 254960592 844831580 105501354 951499862 740771363 575603006 385474054 489977411 693264087 481211228 414480039 891144249 72059615 962717059 830353327 453844409 35613466 514557340 444548861 639034174 813979995 483323526 654747885 842280618 185572455 39696014 70575091 135512180 941955183 930383393 516939228 362883129 123459910 209186556 19343660 845727167 50747660 748467987 24957510 150450967 179223306 898001625 709465856 857536887 152546864 2024731 544664745 449900501 84522693 706054044 150387478 721995537 15728117 947225315 50979978 937437241 463569387 764893444 863687361 377591349 647127898 970894758 801817690 50688478 511544900 287158891 176698334 517731788 247014170 219172143 512879031 97092239 858433924 551373842 359825256 150998409 486817723 714600434 270348081 850306477 951176167 845865849 399175664 573909960 375028509 730605514 268397855 416839586 162350223 184193224 953619270 26187547 171935699 652654084 203633793 847683142 870945670 516700053 706238742 925554585 863279494 116431344 649420699 918615590 137087755 226755000 679648344 947808887 659304109 717681551 475056194 640293389 993327865 686717747 813285123 280780745 901277462 137204614 39778667 18476916 592961584 152727105 977923457 116026747 744500907 694590328 463619297 889393015 479185303 19244995 752861654 999323823 210029448 243084190 594989954 778524247 775850327 361052997 843077003 771399823 642609840 908216168 950587690 765691550 848267943 329403791 627562167 413208096 948952211 198477960 917903978 452169831 615893467 216279120 654125395 724601027 684817050 743378771 808213926 573881478 4889492 880310060 523714826 748967122 69645182 878844582 990851775 820535092 5119547 671787611 669460086 332505856 415331514 369504679 437134450 236648461 173342183 906444154 986306465 593176632 909149278 994808405 275767173 57552535 177628599 127907056 45730702 371776826 930664041 965191544 474761465 328198275 409376466 924911302 650423514 586769720 784481313 351359889 935061951 666130217 802635251 356669548 477550157 786323639 147863927 154882986 292896702 282947990 62714399 733800558 241808643 120996251 64344647 575757720 811459926 163097933 166555258 414853774 280008049 191324303 478766126 500154457 282205765 576163573 455885698 110701277 402604183 439135484 184344607 179955624 943097144 212983657 33096632 753653235 872388629 755418477 685783115 989156605 813539059 88715100 38510133 657250673 491474413 106896590 1293563 726459445 264406349 695316515 48590468 774933156 253332125 893895589 200851129 853539221 587483246 437789462 633499011 346727275 776290084 600795197 915641077 475397532 200862419 697180243 602101920 968678141 868063920 507031371 905237479 131110909 425520659 427100527 313689129 512789823 717449812 290411853 596726661 128096515 728288248 609131719 584603867 221969292 111906609 545467596 59569892 297358907 21644387 439680157 942221227 764856797 241815863 124725820 651872076 82914647 465434302 417249595 651952589 873712282 399114470 673332727 952033312 169959637 736235657 329831746 503516514 386133785 872221917 500856273 967170121 304946259 308931603 128219509 315817925 8754812 352652587 54086498 632233041 897779096 749732481 918240027 177753788 148354630 435305887 983137264 369516643 910163328 710331576 17791423 208712825 48606140 923775331 580573673 397526428 222839966 687141837 751585081 665603972 968291521 494758761 771593997 988068073 793025159 304553063 498305674 261192046 425872457 63074874 115193541 579193575 49025194 530688841 241402924 822585628 340203826 8212311 916710330 88734959 368288222 776164547 52083185 496896305 124523499 95307128 997178585 112495415 905711518 941858694 373977314 522766409 923541654 412169609 75418571 951954261 207586182 923068132 540525377 460414992 801133172 787521566 570164409 403635037 975702629 397638576 509086770 288029207 363945541 203119800 418494780 275270101 470671683 585446620 174084916 969041531 962869981 479258423 624762076 217865865 444547958 921419387 352810388 516355804 780218362 401275752 158525936 985698181 416273195 526643475 179810422 306132828 279713884 178034140 577460064 959617169 137930729 443623591 595017389 181303198 199954385 605930604 804984986 630592998 585015231 269051036 303551332 180078086 56753491 382694742 42582278 931541451 782452682 150946510 847027706 499012661 550849502 9560981 759997109 289542220 103308742 421002230 535228085 551778625 622277773 556844383 108108563 735610741 494459121 296526063 158587477 98687424 195402965 145745995 831146452 814673472 805803092 205253571 974376229 570747411 85727319 707440045 636174223 872764804 386064448 121270267 141864162 742706432 930615062 704341903 59409342 731495648 282189939 105174443 113503373 633880737 771506774 627790091 514583763 783134164 7927588 787916130 270495872 83170054 893904775 572965374 525101942 184351754 131633660 443470185 693926875 202084439 336333113 464563814 33485137 284823199 321633237 993646003 184060912 674722673 926721397 529517289 521371790 329901228 59363304 949869135 578889973 473581862 300216594 349528815 91133860 132783496 775387135 752161624 786332112 305487432 368374454 92780270 365143601 418593473 869289407 925311216 42545289 312186581 695319468 292392749 381942005 548848276 628058237 690042924 384499321 900524846 115866039 547418008 517894715 606165918 20190446 4218809 969669159 153941761 67740377 629588175 746356165 582896769 393940383 902105735 460469546 380519994 415433137 845150368 384440680 406539047 252423009 620873346 843439005 460682583 997747115 190617139 967780323 43665795 802089840 783213634 913307098 643272850 55223396 739660148 504123553 474437712 597745907 14397976 79836403 361379066 988677440 960295847 255872106 48148314 96238352 114571276 170663614 382494701 324398584 826572346 142007697 266512564 718163875 740202333 43172251 416819279 835787147 644090648 453613153 282679815 968992622 195151201 323667442 450577330 147605090 719114648 756579002 544941268 832097335 654820011 48725348 124898773 55856957 138213058 297999144 481839352 885977689 918805287 458087104 663566145 508000898 721952712 599715897 828416723 728765518 340971951 468564559 66249508 492665945 18820380 723952694 443154111 108068006 231626825 674886076 112001252 657417497 758814794 568059857 259499958 546258929 498455635 438825058 167637045 429218174 529817246 64257533 597387845 36203287 466703490 223628142 983717715 740332505 355788765 266167995 561769201 840730949 101416593 889379113 935388761 611062883 556494780 976823707 147838046 195350493 599642949 343731758 420931292 689483937 934535536 908160057 970738814 581748549 700343381 121246764 862368484 583127408 987289322 969132410 723199233 256025067 35493468 603800177 788754397 548215417 992553230 328969206 388597650 42179126 491834430 297906280 722397005 176573831 830761841 530871114 473064786 72855542 248894579 530737026 580741902 359728402 961344043 953563591 198489513 975811204 508139743 411287467 238627339 929885231 40906947 235493473 553349269 585213949 560049834 308785312 321259263 875204598 273518152 11682642 376717342 764242404 999043757 466481155 829082912 439835768 200372243 828221978 552099347 153970990 568038886 319410891 984267465 625208342 197996393 711931253 747903751 695443863 521491879 696101379 291496700 579466643 226132053 174150435 961295759 943850832 139103073 984466689 227163684 977738211 313848214 589371275 922979511 811946301 234704395 489399046 12762421 197979194 312483961 530382373 454079756 806722108 261222046 67672229 55514883 697794169 498985481 704693031 344164826 178432479 730591687 374568949 483038805 801097966 897701580 105343288 858471273 961633508 812355871 535741324 477293572 353963183 306669376 929694149 862854586 346577095 177061743 974278157 732316677 856887786 774055969 264107185 689070375 302700704 637193643 542000051 68146249 96023955 191900755 841879105 343333608 51815707 753960881 583057225 870689112 163109345 470935155 62256499 808427898 535535611 586688119 5377708 742414152 38583437 423478915 902441531 66770941 351616339 567638231 973808111 918777420 115768658 692530728 301060315 913761160 746667741 238117401 617273954 774018901 176381387 931012294 323559680 947112393 563728072 627322779 236849565 469712829 589328425 937692930 703591295 175313952 214799909 374304187 318569010 389684054 22379324 357341157 412324747 70429474 282571477 391721053 55118552 895961962 515187132 912705943 960460455 882871813 306326313 992850755 93662601 128751520 629815526 431735517 813714075 740688997 799837473 345364248 775584252 36047288 914593766 352603934 495513642 141323824 607085873 109827904 437901304 183192832 924044562 861514997 298163058 151875106 644239310 496305036 249486243 511083050 737836326 679162847 988982742 324601046 413026598 919594328 23232952 506557534 583114733 372255982 809809033 564122752 961385353 834446138 241627746 81001690 487577898 765477123 230153605 831526140 147574665 670087585 341587455 251821029 247408066 920114017 98911949 446187351 944609837 656975324 146732350 766116414 654604052 224276101 757240834 967671419 290227567 239979632 766951048 802690518 33433427 889742047 515985930 765934143 258788758 27676181 41027076 918561251 640919785 415930193 882910810 555016299 141041349 971828894 148776152 87892111 698738542 474302713 243648524 540421343 929394771 924791561 788918257 186156052 868710446 326358839 102003936 390590381 927300361 437669385 66174835 502306064 870433295 595023455 501267026 846353662 774650969 621181482 932743021 411517912 6888486 215965990 486742495 760206641 156639340 77291846 148077749 710513554 512477708 432013276 343100575 801830826 424198896 191459035 219188347 43581873 374322790 984822481 735619037 993240919 443352570 525968222 475955673 254370841 85216939 105748163 315392383 74031152 168864629 728072905 465450999 77979075 175738982 592103322 636558369 674142086 967252259 663636728 307867466 206739980 513590290 38019970 210244892 17910180 865938882 836341065 50204001 327935463 391099978 381849960 674195992 983253707 701873021 400444230 208757826 575063637 843247725 326671941 676883662 392959093 578794324 944982574 504399579 655572948 153808177 817561333 504225571 461383580 272784096 793047015 374897396 991637090 671661755 142052459 104547682 612956678 683153698 210540528 461366547 814366546 500722529 74669345 487550763 166104193 691967659 271459753 652848176 192035594 871607505 746178495 598822671 447496859 421271609 420693407 786566690 42234578 840395271 50118107 137887916 451964040 202836434 704652433 349788815 824080771 36591877 812888217 238267147 699887328 356822468 254593241 338624563 447541902 17181744 441410286 658679563 32164520 42009461 643341642 803068907 835251380 90727940 216514251 229554429 231817458 152809548 19549983 725457923 506244391 507250929 753319988 533193024 281698191 770715744 344003038 235554046 768683972 920916354 766390430 337444949 266682942 177438213 256022221 264323571 748466897 192582309 99508091 258629234 283461489 14393369 289480146 936213355 174355305 913406340 524837462 767411943 790805907 364287912 236380280 463508402 901678347 421548941 544254139 612492977 845544262 887627766 347837864 150176307 64220148 508103062 257339544 770797975 999263554 217539319 444566172 167148922 164733303 382615332 698098958 112390188 408891924 131229398 494454439 925370096 580373973 592989371 812164884 600192394 457478031 349475453 850601836 605074130 275343776 754319681 454864686 163908341 133292372 89147436 160702811 156948112 932477189 928568125 327844783 840819517 262693082 914069150 121607663 763531633 775369056 407996130 6587116 829680496 91690520 791672993 163854289 394496189 641054219 604536986 116339035 725522511 738194204 977187640 986854527 667436946 172700612 881839944 136501469 531708443 209092667 594253534 46817326 211407781 265005445 412676932 112565090 384021485 835118427 803402590 792998630 764467882 457317486 238202601 440453988 531786824 895133461 325681570 262909779 881566101 712709844 420834417 126485058 418745333 387684332 347961655 896681096 115915472 175146754 320810084 549622604 98197914 682588727 454345016 441121170 260798187 948819207 848214204 295174031 95094531 961092135 398236199 855680082 501943284 282588990 125570861 418447297 676273360 897777998 803475732 593676752 35947712 154935489 575174727 741576099 403845944 115542053 690483691 60904089 266781425 820208738 71274828 252335665 764095787 588472732 296750143 683162481 771893253 655518565 605708278 960794928 472080919 151441211 56242039 240110087 269542562 91813895 283303825 790242473 243967910 176296909 32006232 161428864 851800932 648259551 705490368 896334706 456697641 405260373 450191275 484020763 254804765 904008082 252493603 362155593 465468127 332436668 877394844 451401914 371938365 719025865 71599374 181257127 176113524 740973412 272392535 67824614 880059300 14965379 61633348 626390099 101022813 525103334 967589377 940258884 461182241 906505365 751278662 969213177 964546515 948198478 682378585 413010545 917065174 431217691 206539380 225329449 365182915 437778047 401598013 999369592 872726503 113767167 2558215 669654159 778347299 475055669 490392131 97384237 45435648 908921048 188798469 609888475 535168232 577942551 12358219 389677595 942335947 439910438 838760705 627995384 804242499 768827930 839544017 597265342 254393271 413954235 382623406 229119114 531624023 304575656 918244901 258548972 994098972 147490054 980742902 829072237 538823422 489230616 32314 917445012 418153753 502617948 824539503 194547468 111143688 982305526 97111629 750454078 981775108 794128662 983989871 425701050 339053993 323054634 777592180 124363389 850375372 58622029 327564088 484716089 600844815 589466324 365503081 657626638 778221845 308022359 553375427 980126279 775433838 475736976 536767260 519584196 781634855 695570034 105326260 986408713 731375083 809090759 748943657 973732545 947210626 767369942 929303167 2647420 717038351 990818410 938589697 852545824 779094433 636074257 140265943 488557022 594826024 790110943 695568175 253004653 341597731 3957282 468687563 485572836 941338786 76007438 162366817 693002196 651595369 67780351 636676983 13805087 609623052 18545661 882692866 839477975 21796335 873667009 142146929 805050589 383849080 236240400 85621533 730881037 733158968 767283418 937096468 4887883 337802996 219019327 672230161 181637300 279671200 789962858 711384161 186872024 721747390 851334264 897430227 143682148 17428208 508722600 764943318 410626241 803694572 635719000 810879524 405545920 758487771 983056980 240201562 869043696 481279820 308855635 515269963 847618232 882963783 388346731 648145350 93381942 495016381 626161333 568562565 519207814 272229448 523738632 883803769 342513814 141216897 807415109 465188158 496051972 591806383 584958701 940338572 66140823 28020503 269538168 883757995 291023898 605070826 991023876 278371671 563290253 936124179 560670664 908211741 980720621 326595727 825043238 103848632 655642303 659163021 791988058 778084519 726458336 595519497 904529649 642713162 462122856 895317193 287109989 183396244 494274943 788733382 101678551 986684379 24182700 757588218 255679512 691642258 874646004 367001296 645771766 883008999 321952174 149510122 652382562 778418169 687075565 877142289 708578314 699205111 992233 769977646 843320789 695773532 56474154 322055173 647021529 180488574 421982015 83704192 953420096 70929223 28649888 115804731 402843792 354537713 185577766 351356657 551855798 498852462 906601972 782845947 993588596 237477737 244723987 795684822 848102301 451770460 516501628 471961748 611021123 85747319 512017139 738563019 433382665 988455689 64686314 870874852 293522235 917322428 484806636 39805266 147620645 108501722 504555257 489768830 295108423 845399165 723533137 235266260 498615099 929318406 905448975 193380913 100891617 344369307 178199499 84915622 921320231 433998342 484887556 214346087 464600928 214229960 320096786 795360398 693273132 877136276 421483626 705343958 399316046 579367871 335307781 392846075 239984631 276779247 909671661 398962951 526024056 584662078 930846907 149927664 774981587 934683180 17897919 836728802 823591491 152021926 65593907 577790232 119305390 890413497 130386042 857661666 467691872 700295829 528666209 40987928 364210152 568433371 657088579 105714407 631005380 917694754 318539889 526608857 319516214 63686000 292319094 311407003 326140970 100387326 167543503 161385338 749973038 345267546 96262978 102924785 229171760 428995098 374605926 38457997 956774553 304339658 680321749 959079281 198992460 863044784 798307959 77420972 985031106 877285729 186134856 552291836 907703954 508236328 343707472 271664264 446910543 969031205 2851473 818158879 411798235 879936591 305891129 199989029 17272652 956884451 531279000 263713832 578312264 240236458 279617066 975879915 889309805 707038886 285631006 777225989 451725039 559002260 361542973 880355341 669307790 389909358 188367929 625057780 18587565 138629826 359159450 254609722 409958354 743976239 938921835 906740265 629501966 234898621 802171229 537994535 264761145 665059141 877307171 120922029 942439402 199869738 635454879 419250176 307953415 811619502 678127656 274176115 715896721 159652826 290771425 764643397 730706893 893926098 841952149 906902137 157047362 811906091 19175302 184374790 438389969 448670701 380796218 760213116 825802633 86921721 197953784 469321959 557566465 350322758 117494701 761427471 940868503 512819989 946380139 985091925 50138035 370744147 69277584 766947994 681425649 289886938 330274017 948825376 609715349 336809431 438839404 646920953 789631219 251968000 764277268 571467398 283315292 235510608 468502082 839806639 958923090 186258131 518662514 631415403 353359898 616602396 64549278 210358859 643994053 815825718 372177718 273974213 476061377 4601548 615573352 566270313 81306761 65494472 682202805 299978737 203842820 270610561 781778558 12403794 327414078 855994366 917590573 53608811 843106078 743952104 641866486 279702086 798669644 159831521 600527300 652019828 985199512 967414652 15941718 982526678 367894062 231776318 637994862 931617973 567248355 592910999 189272560 436364644 866435393 380051965 530563693 672460226 10348969 508637408 939951310 917082266 144067429 115244231 904020179 111995214 949963644 86725485 435675308 366729539 991658196 378830400 209385312 453702137 459824163 465503651 774077673 477187475 111770809 42332451 876304834 587594007 682904295 301305248 236899488 668535973 780224249 548697157 984771199 35762945 33674937 472012711 251676780 615091197 66202260 582893315 698130590 42899851 431439692 335485037 62361527 255403685 329065309 907995529 920817761 836081308 996195205 789577389 8221993 367435657 896704789 633489434 843157972 852105193 291154317 39417489 195359896 200159600 724896243 154808 189130615 291368599 456513418 744212817 80412811 251994106 143751488 250734976 661061158 546345887 322506648 827677593 593939082 270806787 690134508 425190571 886698476 828856899 400391561 517504946 30338605 157153414 318217825 593196126 18581949 821026105 245081439 547295122 502769938 82259435 589809696 729534244 157262600 415930807 870998912 948811960 181572613 909064713 478516185 465898638 837746262 11848282 29256620 974240556 148518287 871818976 47424 562293431 359449371 795930290 789067057 576210037 377862434 483015522 834332981 155672411 318118325 517205245 119232644 742570899 693353423 123710135 839201847 835103043 951588538 894892382 23044338 57775660 575157878 332782882 243316949 954830393 588704875 406967015 944659468 269425359 746034987 218099921 317235309 794004343 326150109 689782493 175403326 408820830 382480219 692324796 888710913 155015987 118053518 888459893 526779981 142553555 924388488 264888185 804930602 392944899 838642777 999094305 885282536 817229507 593253251 774635757 919806358 210250167 385024093 827038757 14925647 125723238 609785494 922026645 477625480 672326409 61314278 258036222 322673963 825280 443363295 667827426 378942766 913796845 358899871 619698302 524841524 429775768 10062980 959720630 685924153 645557389 697948857 785166409 25747909 345584632 687589353 914290052 92697212 23701522 824844775 418148713 101779722 976187233 214387293 251520645 750553833 875521885 726123335 158697744 533348600 973800213 377928478 375819830 939772018 989594810 397764079 198220474 569910159 637319365 257074007 799797469 58825993 241261792 313695587 803658992 661147252 321622923 109675639 333972674 861815115 539266632 844744540 878069985 605477750 551057947 216803834 170079953 222432900 722335161 496550555 262701114 848022120 321011939 166793348 739927500 450846167 652449212 94401696 218850870 360747464 864224542 33174498 641144626 917607670 951468505 614630623 301618142 664444500 625836663 778465342 467858904 123245015 45455560 103916913 439042674 290171705 728479790 986872438 972203753 949607234 164167331 755750390 891339734 936551779 545397340 939005291 716230829 723568780 967836303 948048710 859970452 879767847 248362448 315701906 521473640 838197106 956901351 349745669 410379312 315308720 889013867 417474709 423038402 415981330 749602025 359200608 790522352 65989956 466863186 200305517 520692864 493523211 945251511 296842873 182778683 735753168 565687571 25279520 892247102 614978944 958437685 491075574 460641198 818750498 705468678 687652250 520082958 668496286 578907329 815920807 80523485 46496406 408225306 180615505 376422506 92852481 241856742 22899188 20624826 614214732 693333797 340410674 850978856 561236816 683987997 628679288 753589133 651942339 598865818 702232643 47604812 660252614 131435787 839520405 449154377 479556894 685031195 871315258 80486239 281261678 935715692 273573114 21498855 669054094 73371142 162104584 956533262 348400503 826408409 100809834 293289603 218605574 438387712 607480327 707045629 876603715 824892733 499381676 858734497 607348918 265427113 668863231 277034187 193029061 649702060 114733696 521474379 841363953 714744301 588907226 757850430 643975950 114735861 514298704 365108217 985841046 851875103 147927784 253162131 231514273 629939426 918745823 976506227 252526163 601427517 870159514 130120901 507323334 389606034 298127821 476533403 441138455 632917275 817233922 902283318 183433333 466064172 164378636 951150810 705899959 510385104 308219185 401521339 382763406 695794206 581024044 264072112 640586152 570637055 805429331 799743491 603193868 648470751 920705137 557431168 560107910 104803578 981650764 884283437 566419347 486440588 123001593 429758539 81147445 602817487 670255200 81436053 655481306 493742063 207791173 489180476 178472506 534825326 588486779 495343300 16500846 658996218 66586432 441099942 378863224 48294971 245002054 349328155 950220985 244629769 680007461 985127661 347377036 73750424 440662557 595924464 230237737 923330236 300771049 491024972 838151312 520137863 237333814 457930128 796143253 930606389 625205089 428347583 703042049 214686030 90896260 55561774 780042906 147297444 594762859 150079502 51687757 597801932 478669589 404023774 6844426 262436002 193143425 252547524 38378613 338923217 399024841 582388279 576281667 111483164 790430028 131576631 640411392 573382651 25867889 866670140 463780274 32880587 185807268 393206470 802780057 906480202 275090990 29924847 535870863 983478935 667201859 983207905 639843303 437360997 166404223 904072024 569982898 841940508 163193674 535450985 375290260 993442366 260137123 86062230 701283018 338925286 579125025 843997181 802783601 265688390 761479909 301439872 915607567 780950640 61356193 92730194 633138681 807247364 670689749 311357962 315072693 437391402 377014390 238889323 954836512 124741697 27282891 774375935 932281261 728970005 835318325 632700661 363485050 817226228 922352444 182725916 767255796 610263688 906615444 19267191 667969396 437997890 126541957 528956808 927912758 407754930 275126434 647133583 97679637 223170662 883223728 81876834 651104488 776248452 955709636 378639459 177594753 19626780 386394177 484380523 294041509 70787896 469184895 646154349 26227037 612451174 464720282 436141412 26135286 899375511 4849979 259540995 223713195 342979531 976808811 809806369 837295497 1671240 168342048 809328154 475160639 292298900 916741454 592599063 236353083 677937928 510437717 667090838 402721612 11632783 664642314 539363499 821076699 784610184 854822903 17851695 199129576 744045886 959386749 368607412 307462311 938241886 505872159 490495107 297810414 50759506 947441501 869871633 617866236 437099843 265367506 533884661 10230910 813630213 340269516 394357051 939845010 479692854 294394713 376491467 824739032 653193931 104632192 683965006 831687372 694319935 633305007 325043390 639677413 547915900 797871840 394757948 334386978 333596953 72957440 228727646 118531582 508891813 316314751 696869303 449278687 827831437 960228301 760822805 115912396 128708274 582884419 613243547 355591475 786675543 389786903 774985301 342654784 173238232 161578934 85223597 200187623 416598477 532571229 847674972 444229434 11551867 91007879 212877312 738910327 214136285 897516463 783482741 144838786 379233538 858020536 322896849 311739869 996701858 512981026 79982277 219330833 716236392 450671647 869913747 382163553 137774607 51228704 941358956 401646836 462152760 651444582 936182958 706535647 947536984 796514042 654589741 614660953 482920704 197644313 169932551 126244528 381461579 648197441 874168792 383868583 617473968 603509286 628331880 459079231 473863565 244039968 385197545 783904389 951715385 77009686 761702414 101904450 161622013 159990013 667982029 881973725 926911061 296895262 162305847 928066334 335432890 621031061 64092630 290958921 855501400 586410504 84110538 540971000 448943000 70474930 221046447 228248944 797482547 768827427 178832371 352159735 480174457 327699506 810279768 750260252 690939509 83688724 496432761 717119823 164854402 372733778 816575175 913966103 861079695 16785943 36457697 63049404 507649726 228991486 299998916 780686189 582760990 954295404 549391125 161081271 693897166 865263313 772396399 165928555 396306875 134107472 778238655 733358137 818046153 426230063 555332526 111808049 385720943 864302427 178067838 827569912 686757147 221286430 935857554 518638690 426803728 165724501 404651037 277822020 500563806 765752785 660136240 901052432 575588762 886613467 360650910 738751779 546897141 963367803 929995013 837026872 373115781 521718427 592743458 517672702 604517508 627262094 697009743 287429315 825693480 56292891 245429758 259619655 162278613 407218229 594002448 200741906 635258426 392570290 713672865 709890717 793032480 455851379 259131423 53095185 135074810 173837279 296017437 584190868 189586520 664840219 409688040 895783054 897582640 669179760 620451622 838380100 987446317 228072927 883907663 272118677 589471271 915320445 976762830 571393328 532895351 232267100 446163021 529967334 677182119 232029347 345584042 695935660 926208497 263515597 319057806 63234860 481243326 426970846 688494229 411309532 998522101 915464518 742433866 732240247 542287846 320726034 297241064 784169466 671247173 876493790 545792003 911924918 819945845 10551863 401937062 415183011 506314117 57663780 560273867 52658124 656198208 705396828 71265252 901901541 363480947 919985128 729141439 552308793 23914206 750145213 874804414 455768374 19668234 8246135 906231803 28383433 760679584 683834142 686799094 894264758 973652187 41190758 924396456 999963812 980146663 513246289 811857151 719797192 894626399 512953253 176853210 988957264 349016541 153451533 890781667 532990620 602265510 796193970 930024870 34019235 53964062 308936759 699157484 874630767 270576313 786069594 399814120 445954405 726213162 522757350 207246264 545277913 4337477 802131474 691524399 764739740 287153861 48120003 364537438 940062557 327338947 509751947 759376694 261884304 105257403 887414894 968460224 40284940 524992792 20327378 333517239 595175200 712677216 334445643 28876027 936449510 279301332 275857772 703991768 439198637 895206166 710742765 977739621 974320093 918388137 303402155 283812765 895353156 784497443 295044745 908494028 458681516 128427850 589967746 284941950 505452994 733778248 93422191 233482854 807311198 241309292 874793265 39560808 624234515 935017044 100285062 378419929 268659342 933413282 230347849 831131707 545504589 736752537 741056861 622999158 833297346 496474713 7473616 139553530 429820898 21401828 537058159 302170655 67948005 72411259 939462767 722595389 294804066 403944799 451447131 505823819 205676491 382113199 445658079 601412664 736080996 873003333 985897313 829056932 856134042 621630593 287328130 55140571 834844864 338623991 668657156 713093682 225685015 563830707 114897842 506251568 529747286 621789536 74771272 653729409 238610445 356431465 554218037 754086678 8855685 789601875 449395278 413532213 756967820 325583301 91563677 399710838 11673575 18291873 232515080 293346306 140046104 889700151 850415499 255523094 857162093 79232787 596881353 518735997 977483723 601996962 178456366 72366676 486935677 847450186 207565472 454439277 563054148 543018781 243157358 291084968 571306462 882317462 681452363 281823372 149012881 379009726 47054771 596137754 375301640 20614874 192149699 164962080 33181419 755053722 6540674 544866660 283783988 378565432 149756618 840663304 142326023 630448577 778309167 819714115 335792562 768246122 242316436 488531082 67351513 15030181 954200043 37484881 626687075 205861404 686670581 421664099 545364594 452161479 957195516 305784082 882225438 896977904 496837420 779325151 262275291 892076884 149266848 601871298 977733428 830466852 678032191 479352588 201053781 820558557 348287852 835381410 485774762 516718733 45768145 214449898 716573366 995196083 479277443 555572821 249251923 629757775 332594315 565540483 690049167 650065763 327691756 340251561 983122009 972880534 480520176 218598934 55476666 754442769 932495150 353692737 673090529 704539591 200221017 384441074 449940527 262894144 695830762 247556842 483836213 731573398 33252737 759185462 90345242 811342664 404217251 835511700 772986140 45824450 762402414 751424107 887775498 134735377 745868720 3661976 838120318 380826278 905112294 309411449 901931053 743685713 108771345 351724848 75086080 343033816 925913940 300259344 716325673 514805497 426651715 52965051 832006327 656167700 457291129 915703111 279062805 953944650 962948615 310461607 687340612 788909379 612871476 306913393 745102861 639332447 237280439 141783208 856153851 598629466 722528102 979774432 166411515 21176570 248880659 49003426 293265090 120402814 224479896 136180583 895723184 623355101 164014103 476205024 213112346 874276690 413819565 385551569 823930196 81191800 841869429 187874128 251220146 509693397 10365457 47062413 400394671 148175783 698595967 734406175 584114184 121145229 709525472 413585677 526647484 986389958 572723914 527088468 479554428 418505318 683027209 61181447 381547297 673691967 845395535 711755989 802369460 817521644 389326955 308133381 33090875 218282996 186958316 406749236 881822924 815168769 704837557 694185758 326093270 700905832 720326410 428030421 238403909 848148570 18852190 584609514 892237893 115466717 896319354 587785307 217619900 802482086 814251543 856037861 325245173 63284550 134238844 420708094 105758042 766999037 697256892 952969846 245999415 951325813 912223225 584372644 718381018 699985898 144456192 533261681 209229334 960423412 24496434 130928743 890426011 267244055 389610493 637673479 625141440 563138817 486762303 501134953 473716316 556194071 50833410 206545551 723000732 906716916 420132115 311380517 407419652 538996801 196393035 98660328 453945242 997631192 878064448 838846986 649430536 731493362 597031980 912967820 749032721 178943170 587969353 871073740 561464901 29621938 506940149 525808430 232467015 390024862 699085814 685188145 987884393 543209575 109212687 676491523 623066618 183255231 808433818 413566593 598029697 776382664 457746016 394022218 674115077 997915161 40288105 918619877 5985814 196302483 91412634 216128872 733953573 858284296 137342460 657139995 563894468 881287293 565617675 110565728 355424245 224778968 396263005 447728349 891545746 694505732 722060102 968232417 820059716 251990278 592795289 323415908 641716514 772996606 739649625 210653106 724440624 951150099 965577665 202966497 587088052 850881445 443357396 108999252 61780310 244618331 849936271 328937273 693545157 428929209 15621019 870797048 371096056 695960737 85021947 967622292 22571189 848765144 895007530 892864905 656097467 559137870 1183049 230505147 523875529 608874711 563670485 12170337 4546359 64827540 943745900 62003971 865117647 88761972 171152810 848081400 96467578 733496125 61003373 724245667 220386758 574540420 970939006 265285204 406938122 829744250 914606817 647250959 145244081 291558927 395826 679353846 249637111 545150704 620774250 414747987 102336599 178475381 688960757 91784744 556006706 986478274 224483850 326034486 944016297 265835409 817582082 932517143 158527691 877896273 366469808 928090606 644083806 467404997 448570149 577659141 620540211 99072599 403309324 622452081 153965052 600084670 706092528 309412582 13453090 687255093 31786657 999253991 727066356 716684287 446306949 272583343 463366272 30085973 41488037 303200367 323945064 841822650 275900552 285548514 546533827 212382912 584965434 17124428 224803750 940911251 790579784 950224222 867357811 921786491 969102341 944881099 964593272 817141570 723539194 283353147 738942824 902470127 707209704 644906790 656862198 987174214 27568675 482526631 952880894 389067907 103211517 225774549 846317494 4050751 955843412 625030375 333059498 584340432 470968304 509938384 813312013 12615958 319806653 959406774 920570600 963718698 837019021 887291737 315309134 60606119 267640536 237324058 204032663 264147466 738515744 858549691 773066108 474739746 979564322 654885327 906410603 69133634 726179282 960367163 331177318 322542189 57368420 533201812 722610939 940530234 495600831 247498663 923563752 427597343 54938538 33786295 988423804 381721543 784468408 128508087 375329965 253449900 501866661 891194163 678250062 879227887 286995056 711016248 926192756 886932636 466288785 353836500 431726004 450017314 262942436 357212632 739801856 457345971 786182176 988446241 60368798 387788892 799789201 813591508 161885286 447610570 738496674 26582383 418530933 923340577 404110020 643912672 469611977 717156614 665672977 340609698 808507522 123746511 328593330 8873928 603327450 479915035 655522972 859190933 585470454 590452286 593846938 664122646 104799430 32456379 892057014 634706031 156512821 449115495 800202152 722948024 872527603 416836729 974932391 162056766 373366987 485876183 527185174 283514119 315841964 289627929 741889223 326800631 448533992 512404668 948957438 929700045 864790471 183681936 146958296 464749795 974988364 818625405 921350466 222770514 960304353 728538135 674890745 490563262 743757054 280022765 929189229 970056711 584966789 407450330 216023513 335922033 575360097 437817271 593142245 32553125 386995313 226992064 850756992 938782003 132729102 596096017 751793406 748971625 342927607 314004313 422613818 291018097 190481360 369459684 39673439 298270449 52266233 40240687 946624416 551309108 173486669 373810847 386285210 249549616 317182286 250884956 567661586 176361165 383206391 335514279 284079678 933217695 680268398 244486377 800896907 637383348 201850219 245653726 914395485 802576646 684066380 454965062 681110982 171889077 608498390 734241840 566232274 10919433 63319381 777511046 376606284 857711994 330546392 596232072 471234017 819008845 304494655 992686468 83749320 507027895 677293947 822677905 473024270 876427856 355154249 656545902 304810427 933146155 663030707 37104104 585310947 215870078 348876601 817265529 921312091 908649872 165825410 539703984 8194659 314977034 993068324 747903277 779932286 951179659 510355928 154683085 306772659 414446398 386555664 508728558 303051691 221325612 841852325 469140989 410684027 317551265 714259828 616284592 222277738 14834947 544258493 58571525 359239720 61274781 812646432 917238198 626483233 15905371 266794055 93933306 308470261 436848540 348087996 777821862 658646700 192886626 508388585 283576231 953786003 582966780 81824481 365325143 972353598 505174085 934673773 517093917 146813609 143077631 95381356 917663914 383431709 320413523 500414194 307120115 168993509 810308643 711762123 615424632 725398331 593692052 622587179 647881858 877728194 769739093 234018406 653835474 149515301 592014392 490375472 933405988 424147786 559443262 307216164 864122625 460271965 781822693 481393109 539814939 254147176 844329469 131692992 521769161 139891926 679425835 32560386 436272153 634003261 662006236 229238817 827398772 988511676 507123260 324913777 888482459 13630817 707584633 786240609 419906240 929658903 35734214 601260208 259086074 684718421 472295055 601393429 373638847 868076953 904210983 277036695 335974636 89355879 892426176 352417462 807185371 205324857 778621960 678658682 455997530 754532063 149815865 916527381 408200993 818399442 536598180 337033328 342983782 677467086 22841243 440029762 104278673 546246897 96018319 865524618 369489858 818216803 362957921 143656823 568775026 638201434 101260809 646035759 692926265 69180188 106049622 376287157 279726530 79199035 789001433 453315633 199658098 426680621 165337335 648410785 981518814 551872610 563400976 990087159 462299289 557060448 447525295 513315936 667699540 372559254 73276426 785088796 767892552 560647289 162449068 175775737 759603960 782939354 663450461 478131586 489729286 384598982 253231996 146448777 506492337 219230908 186693461 18503356 218427012 246678652 667654536 202572989 667364983 993537994 719565860 674526955 858885650 10447884 260785457 102728011 19458550 191960286 899562607 215991013 729994369 946333986 92096762 789199054 268864532 119566871 66534298 37627741 203307338 772629818 614836480 510201030 848349257 696310230 587680536 559288369 576465028 584083480 908101399 672621588 903736730 889096902 434706141 560752374 128510442 939046799 555793364 274946784 291759325 931951561 952502778 441268216 156872629 370139658 765244345 611905844 801074419 873966241 694453722 209596216 137132963 412085847 100740911 609964201 788437395 717594914 984361833 474946923 157172457 765467274 687337431 436496188 618097898 589898352 817480092 819653604 194669188 154127229 527195848 531474409 600441010 524838520 394789279 180051406 301511149 818369624 251292334 266236079 95160141 560079688 631176244 532630449 413390708 791334217 59700937 829935569 283802787 441645693 406926332 259624634 650144444 346219425 943173250 837397815 460712678 39189039 971547651 798873498 860469654 375209604 871723333 917467307 181854607 394299642 839184468 748116824 477758746 652507189 669569833 505110429 104535991 101186814 267759612 112911303 255660285 997030665 760537947 335700683 109680901 973375430 512526931 145024554 902064093 816950596 835853271 604122481 396666390 574406127 415513320 464385457 611630412 362350022 785184165 782146463 480030621 890089999 974592516 976337159 231514223 644694423 335659367 988043598 442836860 383443285 735819391 244324398 463644299 767382333 842682883 971271064 193454397 277964545 46863164 438533983 904779570 663692675 88717359 786455498 411737684 963346125 148596851 382638515 241684726 484050448 900109612 818579993 557237661 126785600 99033906 923281749 939212386 997200553 560516456 480307986 611968441 795656966 620708115 971308776 648893392 80445103 223380333 582609297 486424297 379905574 920738602 940514762 915017834 92856833 439034160 249243544 122480592 328657067 566597469 629388752 414438979 489255802 604119533 493818174 92726572 620144410 263307773 985705106 330015872 792128966 33258613 926958029 707763993 818034268 755075417 488137471 764682277 215709947 350300059 609797504 672743726 693471774 718139416 799129589 499861468 915035121 981959885 62903831 292748862 163678273 412917168 390748515 266011084 237836467 187066695 997694175 897132888 378298302 23657329 683792250 635581938 397921264 547162369 141796861 956030266 640619973 504844085 698719954 884541940 465271302 8973443 213203599 200586902 867305073 971868453 404419228 655852395 951575763 625005114 730530737 711390929 849824400 926033354 772905717 256381895 302326944 493181525 124536037 581421686 128543873 369782907 474260223 683028717 744958943 276149238 740648914 447284302 418137266 677256845 306690848 738914292 75226020 606706136 476105965 436998121 423580323 587801038 23428851 403327831 976319413 819204391 901294763 25270945 525208221 422885203 359862719 978034254 362655450 765512737 209185143 186030782 569367755 254003409 8963123 187465219 122381524 511884223 254989072 222668207 297227279 816697131 440192680 423517600 833302518 897012782 790330548 459275693 663153080 641455974 553932859 867907099 828700857 914210243 92997707 751635713 589797405 553644658 932398102 820628013 782468163 683934222 120678124 843984141 984204442 880413327 128659819 761414269 493471012 825885868 560081216 503171253 920622440 136254783 939510856 662994791 583355758 380899204 80764364 353979234 838847039 903965394 697331639 346834685 961261600 743329138 287032585 173779755 196618976 334740860 684926554 511449390 10230863 364918198 771590513 165298070 649990989 893986840 10650137 918987880 981599781 175084416 723743308 749212954 492497663 962643495 343554699 790573938 989575731 584340193 82111252 152782743 795642950 940136256 958952910 759180624 120287656 692717189 754559350 29459756 235182802 942672175 654288560 712211737 967537668 965707086 464843518 698243272 137640215 382211992 808830865 198518783 551350392 529506578 114857095 412117536 884019881 425661259 935609548 229065571 327697239 621988237 788805806 5146628 179926566 157244614 303342340 906369248 561657275 924902647 214648191 564783150 44327249 700492825 213369431 325747476 333148316 377540186 352017120 625191860 140280271 850459284 944739776 721784553 25637401 71471681 611101123 732359821 22560030 66455655 613676012 535090877 312039910 799857014 597988666 102213924 99941508 221477390 364801207 307773199 561865212 830582904 998945667 989152012 766244492 439881868 228392741 485096108 351065585 193251733 100373384 532014989 451663790 189936079 346925168 746358270 49103773 859846464 539732646 293203282 473541623 605602141 831866829 261198040 990011188 419299791 796995589 171418176 156501732 595979563 719314252 610211755 304611675 372455683 605418510 820270774 879301488 750250472 421435733 936768739 131443057 711823337 700586817 488390133 350346623 473210115 63383573 128324582 612194495 506811570 97275517 889089501 845134171 542453689 417708001 66922043 966120763 982246009 981142385 766736176 105988138 225287716 740402666 728643324 892434517 114309215 110288765 611382862 226054179 762668013 692135253 747327443 564825786 54094985 908112686 775048035 212054499 321000631 143557424 232181713 490412462 306523949 850940508 473448236 786309301 95366333 698026020 702618811 4037492 577757513 723474228 132335922 597208969 681623072 581421648 710145651 359823937 869160438 581444804 220644719 188305136 249965966 867292220 98912770 91567987 675489782 435735448 816571541 607730317 24424556 453421946 188006424 861237571 213292640 804522946 867926297 569196406 708573994 789480745 893492885 445194253 326859945 955638868 979468172 856326895 964376254 253096317 655821506 469359241 834578505 36592561 506237289 936521174 274208408 321722154 277568107 837097427 471046790 654752283 206901737 632494644 216176759 152469461 490034350 57364645 570250819 151242458 289035647 67287029 633735266 961230828 178184741 194269925 181817991 178611379 399430763 150749313 597702489 459569245 829280434 865853741 71455316 740928765 719260074 613973103 709589553 360110901 555257036 674398089 100905366 275520254 890693480 913401445 246812096 785850580 53764451 156451114 586387574 972030753 661729695 467656843 718899531 366965639 554069770 879655082 233630755 551130554 188134589 210173553 54133187 76778018 955393965 973781708 202617039 900369976 216992273 21813670 803377970 78969688 442102440 100936730 56288857 52053406 530641499 846553332 427457895 777038472 980513793 208490077 896897839 786345419 83544125 442735766 769221725 160511767 432936537 297120316 956340430 677543227 307137753 594591590 817861442 120811109 72862725 89974094 227341690 668642475 547731249 319149402 427802666 67426303 888780070 82794176 777714541 991333685 6331483 116742735 466715092 452650517 854406514 729121530 518941590 17401981 801030717 23227471 323331113 740521631 893406957 532931547 552588948 398565882 602941639 547069783 339130237 743685043 709204880 646038221 477274467 404482044 693500583 876950997 372126189 231354516 365251112 375334090 765410660 964468896 986737741 35205569 160296801 337205146 377268919 930632669 140697133 53679160 776302858 768969137 922858283 852960378 560905515 425126109 511244677 48146313 176097786 714033695 131171640 431617527 688310430 504779845 663870031 518827311 550922573 129211651 884520741 756768338 545909854 843568276 617710560 87060898 629875159 346037940 695919005 320526750 28560701 552295784 452291555 43603928 982835290 333406847 991161927 25265800 900242817 635211268 952564332 211108035 413848091 275984703 448506316 545994756 835827228 133054253 587896226 562306629 298905173 816170252 604424752 492918514 226756421 306204541 934040189 15950240 877862985 531085385 223021611 829459286 632271159 21105393 443551675 580044977 206716835 104486930 749967802 859015904 789921651 248444080 833145304 525087718 399588256 285592732 362327638 190707790 352592707 364466558 229177013 208566111 637238102 767945800 331048129 385505458 857508628 951749187 102313409 396736152 873135888 659450227 312982240 874073533 497765604 267459310 929392307 673332343 988139799 843788429 423320708 924734029 638927529 714966003 749544569 549364049 843263830 136945967 940506521 661699647 304073658 33247175 417343396 993400226 108468399 450334523 294340576 126224065 865122918 696355307 474939377 784767487 415473193 250879146 592212860 413360227 561047966 935647315 233166567 535166001 259354121 130922313 663564278 683204449 283385748 544561430 444179113 847499376 741391184 832753380 118846942 301993753 420219438 933122096 443430313 191556393 812538011 866559109 838156724 503996673 895226770 647220688 366417293 419737149 72227374 145247996 664168898 9717881 667108282 372171522 49490260 984726792 173611907 761909191 930434097 220216353 459880990 61542539 555076218 248823975 79074445 868342869 462280432 99783233 679644922 845724780 193492614 874189216 647072305 645260629 16299825 472012547 194086107 393546710 883086697 243156286 933938848 305479073 760772204 972007068 524364430 887458164 958954558 31783495 79428403 762664908 723283507 905164556 97810255 830115382 282595679 407244010 835886336 439427437 255266707 368928812 383851632 69799933 213115237 888108279 828856990 170559083 298592191 46219864 148792182 134426824 650182626 472590322 690154536 202868256 110060000 738558933 330645348 595350135 819380110 5249174 904481846 306306617 232263602 338559645 762094961 353150950 723657064 10159369 183099671 888910096 313159218 200773330 839809769 906914676 643813548 351945266 542464388 6421230 299010090 767310086 511470773 359429074 576276456 588630664 303996818 31387406 714979291 373371757 20333238 732816409 766450940 481611772 545320055 471103783 735401940 31096804 539942480 410333441 44569294 500416625 567887755 902026057 790628943 556969579 687748116 629567965 301260413 745425570 205095771 160503117 921874764 670777736 291063936 926984268 673656984 897671785 882375506 823969701 665515491 170181904 351967300 816181517 28827826 518229215 450166851 673723491 796872595 758983780 397099795 765506331 904557503 386681442 618323261 672926178 428685040 385458967 840553917 375384678 851284460 224789741 363507184 171830705 596842366 764632224 327646585 781668845 544044059 822251836 729625214 560206508 231834749 858581345 299654110 336722778 447405545 80698778 286287494 723381228 483309359 573441378 864026639 140027531 627865752 122123654 494394645 478829025 661492029 434250694 107308911 389760086 668880343 92012355 373008577 229151345 131477368 415056461 959161505 440526137 346582428 187157700 591678841 589389758 41277648 216210461 268329132 41544763 883017920 443434162 446947546 398370138 15280696 557525426 317171032 462234852 581409042 990542807 12613455 696967200 825370675 230489995 117383036 496073054 324677089 402739535 884366555 868082530 13432340 136063078 191458674 972662179 33109237 3917916 519243612 137511809 54602052 590218268 499721056 830175516 73685560 518901733 671087057 744816310 724784191 676591168 614203539 309298794 885220300 258817270 625691206 856776313 422617245 664575788 733050502 701426834 194168474 562096812 943130791 605032656 405182343 778077102 891315645 795887031 588187134 690163387 442320204 729093764 910720381 950862166 669085930 583770270 774304453 932863283 170128776 288751486 187267752 268816473 394346079 339848622 636415573 349373695 844838571 426216550 738604996 241597454 833903064 147716058 742976393 108160887 722224925 978268350 121241305 923703438 864057003 39801004 482034630 805963434 21787619 504638570 130784250 972601619 875082645 833223097 815630592 176848880 164931188 422095293 134764893 971118663 562078312 288425363 14496605 377675984 176360193 75157169 2894646 32634998 157345307 528146510 300022933 279826331 312799878 909513662 655696523 331664352 465941716 491498234 338744863 622266646 26931394 772325418 301872054 485864273 247700971 632115370 614761079 607495675 908667079 598640454 558682407 388180749 214069075 294199805 256358019 469355435 191125061 330716323 481392392 201796175 834142997 89751709 924846595 815978589 802809326 792904306 182608322 42285432 723255870 476899534 972971678 649796123 305434641 650801602 90184755 611483162 10988716 412017349 818774687 876820444 505675194 928121283 965501813 271841930 298751213 142192928 333063691 523878295 721404136 5347486 613927929 389545966 795129165 629766187 242808123 912351568 37490855 562457077 444605429 815715498 212767272 532084918 451307623 149973252 677174995 530442040 104375860 263157538 810375138 651661147 518880155 7384437 832873832 46418088 864502932 785829420 140386832 703321610 597514713 121031480 809509843 119050056 719453367 744988401 500987868 601404880 403566132 401226192 990474318 129845004 197255491 664825819 960973957 74493319 216700364 62809286 198157771 463944376 358115831 202815567 231890853 91118673 112211293 265534693 202366778 573170654 235308851 545288928 645148823 622590270 585117221 182168762 812974682 963095851 497042371 770405630 566005977 378755479 713165160 901428131 222764234 328378621 383646234 969713882 498930254 180972499 279422716 566538918 730928169 334910316 437310996 300493179 710359213 442446912 731675431 579823050 624439345 940290541 569391372 201150240 300874366 472957943 11735190 624103921 388622935 300014336 979435968 636044351 861428283 409488733 720700014 152642072 285936082 60082482 633946762 110712750 215461517 991476001 264063356 989940549 409070167 717720751 200102279 255975104 125678552 820017085 374382638 748376057 943382954 923699296 540257513 63653200 624686863 141081439 22444541 857682028 964785010 983357841 706750503 529000553 5964535 797076819 272987279 748774865 79195300 264433124 79707241 287613560 669730302 275197890 567759238 55113771 600788660 742897018 403850724 33713346 175022500 507748090 304903479 689400692 292764585 567336081 559700310 991791647 25966726 543424697 619839583 362875050 870530439 9727221 127597437 572353660 178405200 29602724 162657914 997298113 186557747 669943530 118040919 253589749 451292318 334984857 713450115 551971358 543022181 686082968 647731138 908989200 853387451 73849069 799265258 824603955 270200788 333815264 317005110 707212088 180646720 648355502 248565169 578611534 91495889 740180745 823158991 263021330 898978727 138414696 644281613 770040238 630806876 256626797 690566009 488384319 765776074 979084251 786523865 589529950 684927092 246741067 175828228 573989607 385331281 575639680 685640217 9917784 841061974 951986171 632987596 912051444 260819544 624921572 302495194 532816415 62066813 856294740 442378450 755093931 636767390 304817956 901161681 174150495 279574035 289283350 857384756 210118866 274551675 313513915 583214813 48527227 753721603 169373523 415152101 536266086 753690437 125000185 107736421 485674779 719099715 514246409 985524879 355402324 741207752 45098313 441952284 956861787 558820357 419627013 570171280 643305532 829300649 644607601 578120060 753020240 575454585 706049352 231832232 163537408 338811402 601364277 870384356 455177084 905352752 239683978 413605845 935102220 134991521 815486666 719224363 203373575 73528431 753248442 467345227 249078919 102487384 982956330 447639246 142791645 903035657 322441519 735136308 43248384 633775767 258682670 707868557 851020396 186056002 610843211 634908765 271046024 662117719 960529958 755686969 602885047 467731641 599693178 93059860 236027855 189016936 980320602 286627979 239298824 730329125 618062763 550185340 108799653 957603697 688779861 908554916 50178023 803584179 529921434 998934516 584776801 702738416 730290482 330264092 449853965 903430023 459689981 121153445 696546300 352841744 806372093 388445025 930436396 807610570 127663410 15276099 747754999 869382911 393619087 545157107 205127113 774578322 390059596 607371334 774734554 272480469 317064605 8186556 228206462 944686449 547203414 194611654 503291940 491793208 422286739 780001776 638580838 149012153 923847022 716573822 57303868 856261465 911013853 333988143 720480728 928082405 892791727 173389545 534703676 440557433 564275039 462074972 349723849 229934518 854296289 687479823 347287831 65952781 400324249 258664151 20792481 569525704 331938525 472320895 297227901 821847855 40404261 595332515 446367725 693586663 336908248 150549073 732832966 858838732 788577316 702341073 575037309 624890738 937705799 503822338 758479642 329575226 124099428 78424033 611138699 79107567 976924137 501482055 608031461 235090591 397780880 470527901 531995816 731435723 95251458 45955747 409580539 655236940 349905063 230826096 38343420 621210654 17398648 263721643 791623304 794284463 575703189 95476655 200189746 833093862 609975362 687499240 955158039 557377185 386679995 730639968 416722775 355137304 303400244 977202554 759778989 301899921 1763227 289187546 283097747 853238876 162170490 957742568 748462408 908936463 802094175 512931383 627821529 470570514 733741806 267694538 279280730 593386590 21806812 784941416 762656044 461090153 137985783 144670801 254914806 396560797 926181783 140638881 998688535 524505007 822589454 356230080 767182590 214435344 903955707 945903035 533449502 456088540 622370048 350117293 65083760 283624401 795274746 651004819 349643063 421519867 192855625 283384226 199524305 198864751 508034602 250623050 212357029 324288766 107721114 228198928 302862127 179843235 795492784 28914755 679009418 986043684 24780664 172249974 500084529 939808546 701719434 168730908 983914908 81462066 943814798 341271917 126591603 805517527 333826918 258744301 938405414 529985060 933482372 768473581 86678098 313411764 753665000 215204728 327661349 697552959 226742071 228599322 849779565 973957845 935912711 636573381 37151657 445525064 227912732 150558590 722456242 90092492 134584191 750273448 984898908 104155598 669055391 379604763 519714264 135449477 830926922 651564234 814151573 309605567 179712010 990376328 447482821 172391103 336117514 864164351 620760645 613046662 180708335 894413541 99432758 821954446 939349897 50081248 856986856 293311061 789981336 518896887 321752028 956267292 682623843 743203812 3116092 146975945 828313627 463938257 979491860 861079512 238730516 293058829 119164881 713907634 193865097 507871655 216600303 996204040 174674385 464706735 155851580 817838202 283578832 878739439 861434884 833416203 462841602 995774544 221358324 544591964 898132728 407095884 58518327 518691195 858265131 387947882 5895996 555175986 729797396 212149917 883020303 854110667 892698952 802944371 869167797 178821700 590901746 470412397 48684411 942142460 664281991 944360184 440070622 793526833 579274004 805525302 627390541 394696325 563071504 801147766 608683228 282964802 593003205 985328107 524249992 807749777 911694988 819148764 434041227 407116138 533620967 421950683 640247770 784561088 324873724 344732872 114070830 361532813 425445610 64417327 876028341 224505744 783593064 663266467 456026546 532772600 612534724 498603407 200738475 269790893 192911828 418228341 687310339 206026741 712527986 172979970 291728112 206704731 366721149 739017006 828458473 11274248 790334855 487228529 641779272 249204427 894766300 707975989 800709942 967984015 147659497 302933566 944249922 326926 306666260 47975413 194794749 28127606 613358343 138730256 883636104 791885458 630767613 58267194 728320518 991922983 255542090 435500284 788855210 492130531 871094654 513274808 526035906 244762107 785312875 497226409 94022904 379657042 842863940 884301898 553500489 909314765 213693294 420824114 397289468 637165401 165192540 746521774 9697237 791223923 926604315 411062691 615763381 282368047 677115000 21029853 842026858 265244549 709437579 408132663 37125988 238228134 640398887 465826909 755997326 393542257 588490513 98168130 148780737 292804333 94497740 354812288 753843338 196670134 247390488 489764421 249616462 733982446 820942451 259487411 241706075 862965983 168827821 850164698 321020311 237267043 840909598 707522723 870288439 739109352 398753399 247747941 980191712 351813019 134810595 634097910 751623352 572156972 171341497 404049365 615713004 474936285 957703356 548320027 916829444 519184662 595105981 544590437 3992192 816392283 53495989 81019442 53656303 272167943 494334646 6300486 916553448 480405762 524909752 384692870 166449727 219834450 679321995 764520780 383723118 44648976 501504601 917645446 932681173 523125710 451179010 768067122 62353117 793292229 461929965 397210406 321871039 79936338 7829546 462380310 608432047 915968836 803470040 888236376 730752684 98650571 8672966 69700280 311356468 240300044 722867913 891913235 59969595 565999822 275973461 861428923 305465660 590669905 806864409 117930625 319159026 378342007 384972477 74442975 668054760 933092428 564149813 458549498 703179202 656251265 818769256 62424670 968712611 589425057 418367044 615966146 174888339 99974935 660331738 338029010 749294685 317205079 738908243 85104415 440843124 640790277 756693708 894917500 685658635 898590891 879077131 361070582 168400244 210524658 192276235 299734060 673818279 744217783 388049755 37085321 355102647 814386771 713025422 800586602 847855825 194088852 74137797 615870919 369606101 881673797 564414146 238844455 381848998 34122173 369414178 442171494 931808619 722744741 280545137 74058758 499183129 103734944 600571683 763641078 234608382 132985405 24948421 568578931 838183272 50746983 379450105 979923035 76865739 511407584 583375399 836902532 297537323 870354676 797789873 680833677 866022769 89577746 545307662 338553211 851498643 203095963 737313574 653903640 771449896 658269658 35396417 755534774 586588166 562282802 106753275 687405517 208626824 451750535 147513285 282302356 921855008 405660772 570704516 50050295 791169509 28227751 717520623 786845917 808205328 988438334 433506150 999831438 270182707 688962355 14382246 383377811 646136952 298715734 331951582 174496920 29000209 204162829 621121830 597685221 492230578 734984279 146210357 446000316 1983309 892127099 482450119 209862414 34293817 585406322 230147087 166639112 316200640 218969660 110329879 838012959 950479682 488467588 848649978 956247526 652403787 8418799 738826282 97808640 958722803 601089765 937833054 917123129 709525952 887884044 428949370 404972402 339252110 899663688 574148370 472540676 748178089 427062484 179072103 167328754 781688110 437241083 538857914 413416932 597522804 97735430 636691028 106897282 217921879 61210354 353186728 40906720 851159499 731332145 809185939 328531836 980296030 983273562 878261573 181821568 173114049 906847637 184975708 877915041 399803344 407857653 129602890 834489403 568249897 727908705 445978024 500669369 464380226 563803959 207863070 495488615 517876398 535499064 655854078 545461368 260481853 897358161 868284241 604711444 416394705 724652888 662171543 912626520 312484079 152372297 882510076 743394157 155711050 99086354 935779037 526744470 509949970 3914938 260684231 929164902 786364675 192845581 82356332 99894637 890411853 943912601 277500093 604042471 976661027 269028121 758190 935913220 856172563 986387306 546866930 734404313 762382909 608632010 953581 602083970 794975739 867730666 876883843 431430311 811580300 761408259 485102193 19108125 383702541 408569232 689329975 104314667 454955529 409561266 731313959 197581538 926593509 590105857 976293053 782384059 960018293 478599228 267051650 970835332 138571402 827952082 166333471 419516759 456591603 109954781 734138504 712371732 19167550 838318502 940802491 571522881 498900089 299312154 207383713 642428400 923103376 114282766 492527959 210692031 30822064 780836702 497429913 57743585 934982116 650690638 753726732 739748318 132359099 590133615 74792854 346154601 227006640 924501603 874220440 21260677 756719381 939943167 501182114 375694230 861869587 864345838 746511621 708515879 265399993 781064658 484414221 906023949 40230461 957743868 319029098 826433187 698553295 70188839 249257524 518120387 88955187 965749422 675271030 876059140 573298110 699599056 663153900 348835015 730852867 864008819 706769069 11220277 851262656 579483204 458073302 960939382 498063154 483886403 11363330 233382771 242837512 320175364 658518150 624632824 782587112 826267297 524746720 24752350 544477295 184431020 440734587 431871470 75671875 335532341 732295250 803310378 588706968 975549263 831332491 250882579 484938213 282631361 772870290 229156937 587048978 621785296 686501943 342775664 993267632 759289091 592077526 320471703 958527737 28147909 637046463 981145884 580634154 720689517 929535082 11974375 538111499 890666334 750236242 501539217 914022733 80290544 588593074 231020951 677636644 409851599 311473055 664207580 497209563 885997886 788704736 171273167 641077848 868275260 198443787 736927524 51365471 812787295 363810984 525410898 712003590 356799070 418034904 493910117 336313340 440240766 417328167 526978213 270395369 377243207 576317447 590616215 394374039 76840748 398130952 958683772 706234940 278614198 752072597 896268589 20056076 857571224 862869086 438529083 817408499 703516713 105664322 52980429 18379926 172676262 552557418 520378234 546139899 31032237 4098413 9018101 274986710 27313176 204781743 588421178 822926068 392660906 318340651 781368397 20835242 687886858 824897034 89061472 129675342 495803086 78141288 949118574 683375810 202011356 104338537 900959117 649925737 157712532 70461465 49521115 443908510 638531946 470834961 187899443 792480481 627257140 653508312 8305463 992261057 604352396 204675865 416777879 625167833 191138362 329913364 973959254 740752293 825871107 485106839 359457145 824493528 657913523 228159804 842497574 88499591 271128537 677327626 696318047 634836689 166697576 584332152 944152609 836510893 645525189 806926498 780030780 662357663 42653205 183340878 329280442 830393630 998627992 75666958 744392148 723239942 376996140 118634803 484412011 434310401 186945071 452714924 973513601 412374726 495697994 225218372 238400528 624512947 265337507 766387244 157430096 344581641 189136320 267518842 589550475 679165978 563245905 897808635 343207285 38605339 364546408 930972471 311737528 46749162 976071155 120220801 73786659 852487398 924440227 481234233 807509816 893696495 367671115 249243652 529489230 265267038 351301183 619922499 35928881 457939282 530483386 772231584 548516145 133217967 741146793 639444041 127588501 582723594 428192177 453053607 713210644 287105000 36506560 246587028 518144745 329070539 619148338 924566782 334023666 255834971 403343293 506214324 291430463 628089739 954381339 488445636 74044843 385955886 377849352 509530624 198458729 972827329 822431167 410814884 721347433 631190146 960379342 691044997 367826208 246175446 589913527 831247974 893076501 430380516 987496146 19489417 802040084 779863645 897646438 394587832 821511866 612194575 114531870 635633179 512776619 55470429 814257101 40629370 80490980 271116913 766011281 899879959 538815624 701120350 571971665 422804627 778877392 810821068 622691617 800715070 956669832 163253543 966594431 138427859 580256213 814503846 946988629 685556604 527535423 933253515 548468455 922168081 766586837 942549685 28961410 163599433 702730458 587023534 801929297 99902663 12879700 149976660 456707652 540533991 613962778 128835456 123027460 111334642 697495413 182181019 207064160 243623522 456333845 599462816 277307018 281021660 183990621 707331524 285553123 899455094 411262254 935371943 520620354 800704521 456601229 921353782 771863236 93880042 718349266 449278676 497940463 373691011 246710251 579242876 253417127 388703892 455683170 501473041 251870350 601045674 581740573 220544650 381830436 234710285 747998164 581158328 84484853 763574183 651687555 722773274 346473140 475949926 179757759 315162893 923451893 37490502 363983939 837351487 982467984 373120146 389602530 982564992 825046897 68224322 86319564 107334405 409557121 846021780 127962820 619408073 351674078 926658584 872887627 44642933 868355293 816102573 57874627 150257738 828034020 328011527 626513301 860794702 210699466 767579172 456768272 671742043 869809397 816590027 884840364 573182039 539363012 588484761 689620236 551837664 769672753 696566446 388550013 28690683 15596699 924939762 154288961 417148637 261376375 624098052 284239632 284271204 949274215 501820744 57162555 557891194 659257897 707554603 114509793 267385859 960483431 701033338 859917223 18716294 409542684 87062300 134427825 643502161 908972376 844426689 60548438 685069381 334858886 182487498 756862299 539465839 736507648 788001443 720874285 180364632 392314961 873678913 283098365 614209310 961623739 291329991 286100116 618938854 723103172 100278420 52205760 660593188 268915003 826474981 278350733 721377807 311284587 549367871 455368249 526447965 518069140 104843984 980897924 758552527 236428849 195009772 797883642 418564237 66031159 892137901 576735770 825710162 361129115 97400500 620394797 484368879 444681414 384229289 931559736 647794949 289717405 847002391 84822087 376263166 826698567 507316167 792528801 33069247 587203586 196968430 216018380 575006704 71066157 5836557 161697757 21112709 51068255 724618406 522950823 662883465 120435799 489664910 8452946 249335974 925931588 341649392 288661775 719632249 113625323 208689019 246771756 242464608 481171314 222512155 535381988 267190764 128918300 333769993 882770779 114769544 393251736 683036947 545187723 728991756 745333096 223510014 965368605 964957038 819054009 852908004 379971853 801898717 225254964 513583407 624327587 368487764 933088979 374849756 659064517 751851660 53679490 59961799 594555554 924571163 80819326 72240097 547513243 113980018 339878541 574988124 248155483 289195846 884322568 598667335 185422957 162908965 563608661 341801512 664633663 276390446 37146808 771573945 223165326 654854136 728064790 847123555 956630432 65135879 724898253 487677012 772872191 611794816 687362356 536581774 927561261 665882141 952807953 293960796 590704910 89593270 667421959 373459436 128519659 171665803 463521379 346149790 93680710 65685625 887750210 570873347 438563705 80662881 254041976 873759843 108695625 781585086 204269270 404567620 720129262 212267196 121883601 678244336 389355798 996352847 104172903 246836193 996140596 312641199 509146415 680447955 935863494 698814918 213001447 38108932 164906182 127698560 97843251 745662877 573681180 33050233 660304293 165072582 691570151 687949934 733624604 38176913 288457498 924503507 254489104 673657962 921892544 940019846 56455942 728810119 96259976 875551819 500082958 142836529 840011567 908514624 597309026 962630801 882972853 515974834 52641542 555420414 111678536 161899396 540507864 245327332 480546981 492124436 901519890 502834576 686281336 698400809 158143838 195481548 724608117 170119077 450197934 269323905 888505170 690594118 656811662 884679355 925027836 874276475 730092940 29585822 979391885 29891891 618920882 803173784 294826469 479747451 128389794 523613773 39516027 414158524 574779708 239737637 528885797 331269557 169510107 185944957 192360114 687871097 528999411 662692484 890989950 540230351 534725046 646724723 467860173 854743728 204116225 842772315 143505688 809807785 302518341 619892857 233078536 965710882 907736006 859894398 417138994 762726859 577638774 556670951 557008771 44025225 935837412 621532782 606722665 313753116 816338536 684683156 44906010 228413709 457145201 809062874 704300720 762856068 947349061 337258238 746501794 23377670 392271143 985889819 659868500 760631733 940666229 472951733 560008272 163297123 94240478 177432569 643595805 413156367 274200344 459424102 980461426 608011570 182232678 693088407 89093596 912680855 730558159 770558324 303146210 40612067 204663480 84092004 598851171 225397326 773493944 192745603 593829924 73422310 520140213 678911308 385864394 952597502 801732065 501660377 510842558 308984183 704817420 955716508 592050967 209981515 547150898 539365873 174092560 30660252 104476664 778307270 285399938 717364255 958242135 802157216 230596392 700207106 504323911 377611427 949949307 598920191 635645726 54298844 3385183 24940002 380046289 294896556 695776489 827606548 310714291 640144025 848696674 897235227 448376720 627028510 944603373 892446939 910821069 436865991 660398226 889332124 469486465 386522146 424375559 69078386 621759061 664672572 167976112 769043624 177424605 250948114 46330005 791935799 957642176 817056484 714062879 621781708 925511730 413093853 354750838 168499039 165874301 713100911 491084249 268786327 770978896 340112807 52687389 898279881 889563141 11950791 371123659 217501603 90814504 567616871 287191229 46962412 155696273 790291683 507023865 888639317 698293199 934826392 409139508 553636103 237747510 352728867 961490671 617908942 510227385 548407161 514498730 372968488 284310931 94583346 930779737 562892609 111673661 678531800 942828946 608743475 832488844 920510265 533243384 489090525 493739901 954750439 862556595 185028941 553338227 491960471 377499611 536622626 779674989 175836753 698387657 176363099 683441393 998568649 415317213 733206044 495263196 11176603 334242114 528425519 128671957 477740351 929336470 69404475 473677582 1201533 627490900 821311401 143190844 464378702 682927518 662693355 138724072 49661261 646681638 526027166 384450515 388818779 972216108 540654929 710939763 602213330 855070852 478507606 108255300 627678902 148780489 107997348 329488688 888190208 620856872 119799289 700813272 113390157 209707954 299143810 776412797 385674025 205643298 837257856 246296959 218418343 104289071 968019543 684586154 931456434 480175550 176231711 170083549 63306900 453678768 894491267 743560839 675913878 189232924 571324260 819238754 702350636 785874812 847285043 970572758 291327663 31442985 786576799 991908999 744696623 676507809 707889843 268691931 669513929 919186612 196294054 369194081 668061900 280067804 124906330 481038911 309312292 797529539 667652133 961271205 379362033 409661129 649859884 762121648 781726507 60745124 342910648 456615898 88601865 573904508 127123622 140587501 468752955 238359996 381832474 773628177 330577927 634760447 383122678 98684032 760074205 423986667 413944633 795207145 640636586 368384258 645892795 864696494 661968428 971364967 422242732 909187874 119103174 759078458 320171376 432486968 380889037 207156560 218506222 600738718 815591301 962052821 633729728 535932131 812331514 468348942 454801459 108567415 692742555 102960978 98129736 302126463 561942958 648821091 588921457 754059369 290067455 866277270 784057055 354839597 282038327 398311980 793999726 289150952 972601109 526595680 864365311 210454025 332823243 773769687 324761167 446963569 86363582 687070360 738894133 62779433 386186686 791883552 950289369 236319531 879618019 288831675 506913591 686563468 449211852 400631736 383282054 870534390 128021332 327175851 673191438 24830103 164692697 748272172 411040015 380356675 378710467 113560329 184571324 447335129 230272483 937098417 774574541 660450283 700300045 750878061 370189293 561871225 507627858 504866872 100347473 474214652 656342624 32906229 797957330 552034534 535814549 593077955 223561729 366398852 885533161 951231952 285376755 371513346 832863979 652810139 675509749 838614436 170109908 591388471 535958480 767739303 564527126 467490374 706077779 242600346 56445245 689288359 768777752 867113129 845576078 862486349 213503012 740591760 905924205 268716464 975018299 910534152 279167892 325966376 146068572 542802433 35570401 342808508 108740829 319802313 278880809 105239751 161524617 961969986 764360496 725637080 612591287 649458033 561572289 275189434 991093527 984366038 680730042 872794100 833808855 71369027 582934634 821550901 349044180 687486118 274057508 596587822 600077878 455727930 953613120 165438024 368184997 902727961 859185714 709587961 326814328 431267800 101593976 816774449 84695815 949685975 786962180 743935137 825988855 255069943 688989285 18729180 793200026 813825851 78403479 794378702 637509537 104021398 307273750 233664881 104369575 942845924 36224788 947804090 679512513 231946142 444488894 241105631 532271012 278241257 710186309 623290333 42357026 343072916 8243056 509624164 972558063 807122485 58966856 326738769 103276248 290753207 446358432 4288150 628108202 569510129 504022861 641939584 360685699 815816743 496966474 177273745 789304840 316499081 896579445 301157583 164834897 558829804 482583340 64591043 869785215 201529462 799798428 444692612 742564467 240925887 86330415 840575720 417499544 519085855 466647623 559151857 671319255 343473863 787022081 138653160 18814543 251790287 281333271 520991207 379155758 68074558 524995008 957289305 148090562 861205907 104151074 318809728 870946720 236654421 17667086 306731403 993820971 660336867 239379833 839452988 38451024 272834183 764104078 279304563 717745346 967973303 668324787 922206709 724983365 923377284 97019589 953807775 491273288 133066074 681884180 57617677 657393830 551806191 302221128 167407678 944219701 51607473 115605402 384256167 62745969 170169027 763827453 360814521 69171330 328577090 299270338 385325755 60358142 107225369 903130155 207716534 637437332 497178780 606106935 121307193 322925167 45299734 88575260 535541667 583572228 177273133 663457600 565337769 303959741 214796536 732054594 610717624 649949622 476083896 691830127 892854842 809792065 414765283 826950146 406963725 412729097 640681653 656800710 476113521 843736117 746726191 829275263 783095556 849265865 980610917 480699553 203980841 489476711 664276901 516930971 238010354 962956150 416617482 783279903 123639765 700133573 676017964 86780910 987521457 435584393 317965570 294222708 5439356 208742626 836249177 807390055 754871253 839170882 7118465 306087616 608442916 133099021 161121249 873885233 583813569 609138810 302678200 225119778 173018402 923700905 215430314 97272096 738022694 116572718 138296038 318592131 732020025 591205874 324326157 173969939 743383042 283550472 726570644 680517240 454687443 266565941 570635313 471752089 690812380 21635060 442110607 492714262 471174371 964039146 4795005 711462627 462425686 253647687 390056290 905441586 975247830 295054577 486435890 177007538 985647518 955751709 243589467 432810758 236135118 140194814 323764212 715708069 655277862 325261403 711455979 972409692 418653430 226049030 245203026 572685398 189320477 535606242 868205909 735572153 692140401 942637835 174098564 955919354 895192315 950124833 125669239 137163633 979382954 525904201 913450921 379089107 408660463 21002433 836373326 287250560 444157142 497985794 7361085 397058164 275227285 412519070 497993344 439304651 959279480 915003492 405090010 624217533 277042060 401294711 548454134 65207624 858810550 581875152 502413953 436330882 747618791 489000557 853648916 877573965 776479557 63360225 829977132 648651186 832786258 444042367 751843583 330187529 502612749 350923272 638734974 160549092 389863190 867717287 112419794 812927779 277179321 368344141 917166729 561329307 702953231 979260411 501099542 37562724 885325105 253747275 783753329 747551851 502409418 212838161 589699874 36194405 353241936 546595496 112948495 838059651 417433161 140768992 784873048 886754985 975955969 433885930 119600505 93096320 508675322 787404245 337769931 401474960 171598880 970939067 304239818 849696941 878904544 831649089 512923263 459586001 506950745 247489276 153491311 17859507 436021701 554318935 554652459 483855095 323217317 119293145 58314868 980829675 809715264 997867172 33050345 591917023 865529334 441326373 3233728 193990656 838039329 511458351 295307061 268676957 411255894 170891715 548992909 915911502 719218004 334983900 151126663 370569871 181142440 811029505 648847800 479624041 208752745 60806946 347805670 562855153 642724637 715787034 589290764 963563509 7219442 290730469 187446583 125831253 269071357 865556595 446548061 825122998 344937393 161314633 284951610 889363352 399905147 766779179 842307225 507266043 201280128 746323611 793665093 293544950 81068644 152805156 513268314 158275949 553092533 615553688 94809913 683257795 815555060 83244180 237342326 991956443 83205298 531329875 15225184 99498778 617184440 610953811 314318612 734529521 653747868 162877787 622429150 266940658 795766909 752899447 768291678 677271150 383918730 268532209 428397133 813123306 185769570 560272927 989575747 880192752 98892469 120495493 729704748 993193649 41721397 561224613 467762578 939471059 636760400 29514883 699058690 105556592 740999657 827981918 565576590 136042792 473772826 839648689 316034480 443015353 256254563 10137170 176458829 604364137 698285259 768340909 59730532 382295777 181834904 184532835 458984166 976793727 612377884 209672256 415914823 548710603 698536216 78849041 587080726 821007327 341887250 156953559 406127559 238473157 610905856 725033868 609417930 421722021 991849410 875125322 735036989 152570481 739632792 153166075 759271182 120248693 136682330 116926292 715930625 388186487 647061012 319143627 257639621 661389506 402350410 213980325 254344705 241790013 451913271 96953325 333045480 442758225 384194843 571075701 572422339 112897998 190786182 806965374 354730089 976769201 872918577 438298711 82819086 426814776 737333593 463025430 843935845 440268887 850384397 56786487 142965566 944733341 37866902 660479881 2996734 670589621 311115020 843525532 850280235 454749577 763342929 763183754 551157166 716531887 352488197 539676849 201670207 893133958 256195020 713423000 283608888 689201745 814564956 899453752 856705117 655782695 906759010 373413620 26460606 423784605 959117389 815561522 284295085 105150119 524168223 111056434 521461733 54207198 378721337 473396378 120733556 722963985 305549220 914351170 709598825 229493092 234076581 551265023 187912437 566741989 581920932 945978230 624274077 208922073 367728594 353200468 172218408 34867181 919889116 896569061 608162283 686891591 858340151 145382737 638895889 439710431 10425651 668429809 808818026 598402482 581843828 949317054 367481298 252532235 943124404 273579419 289649298 916156004 705574533 142004599 73547072 789679609 93285936 102687101 976001973 709584837 21793499 451984439 263987478 382537230 669994212 574981461 98379429 651836012 248034081 510465277 219732646 668951361 531625529 46259118 233733531 847998708 525299575 943911528 435444971 508172043 230833347 450285109 446474140 1352127 390461724 474150311 654855779 619943083 962313811 746439564 207863832 690131333 576574204 736181917 424289018 503167411 949506869 276284043 737484567 608282083 849012315 811911030 164112931 140219455 487613746 750889143 359950785 660926329 343025529 699562821 901743097 627110656 294564999 145079945 984258711 990486819 130931881 993338059 850896130 365084076 647770905 108516872 946660575 548344636 290022619 189957058 720298647 356819428 492525247 156683976 17987216 716649785 718904741 443680021 11311455 283363232 926418671 971944812 885597370 737152929 741485809 49240264 794230675 463937381 486980883 517419169 835648370 639234844 901061507 86426721 289587692 952536640 293940318 403789019 479307317 103645249 806787202 598121859 569764623 299853359 662586875 416095578 762742916 1586696 117664706 717058795 921953931 252788598 12658876 514760654 210447914 103816295 198467881 661322329 242834142 489638744 417928235 917972949 509915157 601984068 396630324 459152277 464816534 365544007 980301603 206493235 420276611 244021678 286596468 783186063 167545826 162463867 428141608 467385774 801262278 680928018 772573530 422547329 697615383 758539865 9566531 255171143 51301335 206782030 952462434 879364655 48957048 52113506 134270905 92746180 673333168 567776670 142072218 709581316 9504887 436178081 129497597 159004256 172983005 465867216 785710880 937309514 651639302 487916677 485915527 441261271 537581100 575218217 848296877 186479625 991916980 717177446 234752245 89652708 806751211 823847709 640763080 143039646 573485467 968144053 577405550 559734152 710761467 654067159 84809792 412903562 315176843 583280109 240549073 348278664 224079238 785126903 165181565 374233091 145123797 280855342 436549999 808714837 378307035 450454485 687430515 623566072 6387950 539410119 49286486 591136229 951314544 597845849 62680101 640320422 21156129 922234063 699810544 261084204 194696415 125903881 464751034 666976650 828832018 421052263 248619291 711778455 216936448 249791164 670671332 849702987 510464932 516234584 802569576 609221507 168532729 99413427 436985427 615611241 791150141 504538068 116945895 607428950 819997436 416273450 604484062 320271310 275817081 366043910 203134819 872327823 3882380 958989264 148969277 982940818 400405252 136411683 957159852 262934797 574216512 157864864 256099494 947172198 786874014 200295043 222626111 991601759 346040207 983627012 842272390 410971244 799835627 555131687 617710960 267632068 826968712 154099451 848243424 75443691 789321098 505337312 38128983 381777754 201866636 540846467 309003787 438857326 94099850 957391960 480844448 187915324 398585436 12045757 25032177 210037041 778096921 540674092 643144222 259670808 160817672 967358578 608581987 828328316 361981192 71828353 209232849 622030061 269770042 554883684 173193381 22408254 493178109 366374443 689053128 639725926 714431948 569434242 881749270 127188877 132395392 161490524 276566776 780343195 91857238 557797849 395839900 139087584 66143820 648676595 472863687 710750751 386958202 716458952 516591185 449595868 556619899 632344180 957176012 62576154 940270625 676262789 156683501 137027466 439767300 609914228 53921835 213666817 472233707 704847029 936009540 342402501 617125539 947743637 259129569 652819222 477113849 274842891 756731123 675282081 245478395 439566487 787530195 635081496 598774797 531939407 266184306 360157559 542884388 957968978 312527651 866758467 114937803 987526023 551529287 535514552 462364172 722114095 296962251 604564291 905707115 227881632 846314169 670061142 939813679 495992158 453842391 234548317 136915343 413111717 969941665 280323779 932077001 699292345 882923225 902339414 633266917 908652599 263007754 413622943 853632852 662729799 605602091 781444219 514957875 449510814 557594544 184194862 528724129 877988245 689958303 75838553 433027070 665965578 820078476 606623425 413856208 206682380 570705947 530521103 85435095 350529371 187598347 535096935 153993405 19529106 746564745 741544687 296776203 80139679 294241288 486088476 504920956 419251812 61527057 185982649 509021848 622362212 388517926 908082854 363948699 179242342 397900822 697467337 795959943 961587077 98715533 684843290 968765764 892534315 952269884 553503217 124079412 349911649 433272211 980160874 971707770 291776726 96141500 813073595 136754002 118489261 272245059 327130101 424034762 798274449 96199486 740048553 47870624 924057883 767747914 533420745 618948528 831245072 765896167 613889337 493617685 132245533 629442734 920995810 795963855 846288605 54658369 944691234 374343152 159478573 140370467 389896877 793023056 595660202 329980802 209022846 649644832 285116625 332625330 405300425 768027722 996197266 647296440 224457555 728095169 254142071 635705459 796403455 148627165 411726809 332064676 54975661 399290107 247235382 515756867 415429601 74283303 128730366 720476514 866818923 714567180 629935923 334258367 757659848 588161096 305741836 421844957 804682879 398403564 668503569 611480188 212232565 928484386 864479972 171437562 110800054 702362301 283564783 192251040 601980134 14524487 310253810 913375095 81031109 515898054 111139882 467083354 869671750 580917822 998125097 537042756 717506764 883325040 73398608 396570949 269276725 903410479 223641190 683499144 362917820 818293139 102142019 887029076 729412587 122677217 573529644 464522003 608332374 207286497 468996016 217187418 516604644 31811562 973598302 936758197 235604761 330827696 410639885 955304961 548761256 310249427 153634828 878468009 659986487 300687997 192352409 226396675 333456825 799655118 893770980 238452922 698824309 806932818 81300854 761583596 286993733 904431563 222444110 911960259 886408692 131946517 576676283 441412610 726855307 936325236 93826826 738556941 84479565 87799951 277869280 259925369 381332722 58746469 299959850 562336377 13602546 381646658 520510364 623607748 701043953 340849286 340468721 134024801 139121611 807584560 864170154 97602656 677269375 357358527 63342925 654239716 361655487 997706353 848025126 913515357 180314439 444313261 958382447 817191781 759717924 365591552 118781508 115173132 483900898 554304014 588925485 257809639 864851882 410131125 713051405 998543057 329481535 754741536 445918808 561126869 784783182 49263814 489982965 277483408 10166765 29653424 277239582 403595900 497717361 834088500 512767008 466485971 419340930 195360031 335405068 609289233 573475146 344567525 937095618 30978835 861093820 445086992 388433444 258167491 264318606 836156973 94659999 681150397 386875909 717682670 682548511 675721011 480105231 738671205 405183178 771252070 450724249 956008257 747140713 114726310 72961524 826675434 950102218 457462798 343216708 345021867 801746430 896189306 473082696 516019483 846738970 149810263 247025362 618483543 396814313 835720819 88118234 575627112 930463108 237247893 525466256 518750831 225036285 495479109 940415223 890215832 217884603 31361246 882633367 446347184 396087651 525462819 981685068 661342885 601238399 733198134 117227962 787455507 977075151 441589406 674395774 313995002 479336960 389559924 784057165 914175518 697001411 66083622 92975962 756629788 611291277 942955466 390508490 885579580 978565393 22890609 193309248 518263216 153025403 973856276 857023816 105553780 855150009 347354942 900878121 612597221 660684198 191980089 983719283 218100895 152427248 888849969 699579468 842404808 27709261 4022490 136336983 541857253 878113263 664691046 794953296 725104014 966756754 925939765 259045797 458391162 939573858 341597320 695222342 57589796 929644936 760551931 274250532 750589057 547429107 9543596 868951156 383603432 630791718 803912436 37790761 402280787 593518060 969979104 83200178 228522935 347155901 735697908 878296592 776254097 132548780 863763391 956437450 418024453 310603758 295715399 645299903 753404787 314195498 394888592 320275863 784358435 393689676 293701590 505431905 703166473 480448000 198291689 459333462 808588335 961983196 755042461 352426232 239467256 665455701 602905019 607535737 40629715 929123747 994873524 582189877 446927577 376314009 740905202 518002507 771225278 884763506 680656850 638598190 869852080 164084596 954716537 412098752 865604931 176559045 905602330 403607745 521830197 51094524 324027585 974298559 969610510 120815125 174659404 23079870 557477315 341731467 602295496 127142911 477755353 516769758 729274874 663623588 760740147 782889841 931472075 102640241 133332847 30254537 868724264 33218618 250595819 366082538 41824227 730466405 499709228 440623099 333044131 729978998 979573150 718630226 111357846 882636985 208316240 428849685 983022279 308773132 562385441 47262670 476095005 290156291 163380598 941083435 101571702 609548874 431066106 375388815 232474845 325149673 152662762 420057485 465503667 347546880 991916150 652641322 670656778 438078846 257743428 33987197 216624399 849998697 264281262 497833532 124272453 977690417 197954694 227471687 283285969 590329385 485383895 22952083 273356307 33201600 686953169 740070031 439677415 688494656 265532299 672536321 219455535 171824225 881133682 795568289 228147173 148822244 564127830 34726467 920022558 169366585 823082435 400969496 71211846 145240221 538979955 861153641 77281205 948024185 279823499 957340406 537685684 493318896 662718761 548233760 980959030 517685686 743102443 960624776 372550410 20586869 46488621 803788205 822160632 534731766 905026696 743578717 7337860 385485022 9135415 572862368 662882772 260412339 912059331 578068515 469759130 936423565 635335809 855188708 833106879 242822741 695506235 644337112 46855268 319874823 697638911 566611635 319535316 489803510 679899750 153613171 283403122 682770981 203274023 751163128 156180158 208758152 781452583 210289561 236511119 802977079 338158483 859583380 488537973 756763457 393926068 236685823 177315575 667179749 334346050 391099918 64466947 642290318 27424702 513328842 682732235 944142637 579485588 995149169 25735291 14942469 320596615 445020086 98484800 571239071 343863531 188634655 188105729 747968380 46341990 852713807 874111514 952822918 15056514 951795590 167434478 71747853 281377987 639240548 914392416 867513069 895947456 833311759 191943947 117170320 185688601 701807578 217833882 126234378 569537886 722532812 711876265 115865448 71029831 864184147 937476202 523346246 658538230 304983738 350723825 989895240 410197852 996404875 563415623 33786758 804493791 782841733 315710583 274810422 574289036 530237345 471323505 859790487 311168740 35400147 503374283 200130403 186294447 791151149 308173789 569827677 415571950 267119407 295381145 471794359 685695896 747259210 53058359 783315999 53704548 977282416 899939133 728374263 231557861 523725489 900663785 491770064 284358959 577571082 459847586 471485186 504019790 972773243 114341581 511083356 159032806 762212967 894998246 896696793 970518814 386353826 52678377 354560051 46231922 7578558 920875097 15806862 251688054 512611827 391112553 640283239 236782800 404577083 750203982 365206144 94953521 534896048 812703078 628621097 175597763 870326215 386748072 914851838 677274730 978025363 225874292 993319997 539229118 993271179 857730397 859329504 221927502 118300063 550477291 240657905 384129743 533936735 741570289 694863690 600487031 366245705 932424669 679160050 755636272 394755461 845275432 862087388 540698475 371594467 977509123 166370234 938646453 834934056 888070768 251319674 749447734 202158923 293677517 289278526 669315246 984159366 465928219 777749738 688390777 32824194 190016685 360978411 401017325 278115096 267921902 57023121 893237166 243407849 729088636 447443779 711590345 131029271 398979271 989418954 866352613 214732681 700057117 403581566 424507627 116654866 558635661 3767475 631285789 99333964 781038781 573239471 474354089 297899751 941597267 482274357 702282978 363593794 319719007 368060907 480972703 662967807 509696523 612278116 142998592 506964441 877511574 961552270 47255572 640229779 401019183 413891598 187505686 138805365 547855713 627140077 151919598 920378786 547467057 338504103 998080045 414813880 581768299 903181046 1913494 230722843 115219659 147208120 253194330 277992341 29048109 104076486 639236297 733772452 55749631 213476939 441603779 100993418 812118808 29116976 217816736 608250398 778966523 934647155 981440215 830253886 566836292 700561392 774810372 707290439 483904806 922190629 405042260 324070620 760898132 414264793 932665899 268553656 241008180 630557723 616695100 920061996 779661963 766840010 79885078 169285126 238889285 246574692 991811866 765092316 392121628 28069039 610931096 26480770 982806914 182737661 899656167 794177395 809747996 538731634 224398451 354242105 933265168 862805962 809024780 622572629 722971607 836118076 931870221 435413887 792922861 777702367 817163853 738114563 640264300 110519826 491264962 716012697 238870201 386788250 481991996 117782998 261473131 519493260 901353818 714023366 452253441 772533762 804458093 860288657 863610512 125826378 188802456 122843104 768284392 278072430 419850302 254952963 383312369 982679813 296589223 496723016 288902900 982152214 199550410 87972152 649371691 761960544 363755733 857480937 258280815 363573583 235241838 458858678 646712061 542207403 39245230 450235269 100730757 636918117 606457079 292231886 805007197 325988713 286467599 745918239 121310548 448612311 931515250 371259043 839040861 899668435 990081956 408678895 468270694 605921119 466503814 972264163 95405285 486464222 782373598 823954807 571333081 669190603 589430708 740654996 196884420 598012603 811982598 362935181 125821433 768538694 121867878 606790434 988713485 370600860 290921975 314763969 435264254 821302132 556373165 566154750 170432289 566354067 601718317 569371271 635551935 755857666 834975331 663190225 864128661 265196375 831874767 169979130 3382678 341115033 955598973 239706858 981186666 361059619 217886078 767012046 412668675 190878577 992077225 840753696 981741018 433847611 364189616 198444485 987632215 937463042 377090478 544636497 142096035 928343895 692165839 88419339 598505975 189747607 659597159 817339690 108848939 95204004 568382513 290180923 488804731 423127013 659610900 111358893 334785895 891735290 706460333 503721017 73891449 90651327 441903373 485516076 198043596 594611773 81158729 146877872 159160799 132400089 64658744 956427854 447249221 626832335 900625401 406210472 349468381 549150218 370703966 908548243 981464957 384851808 285844047 350361651 634656302 354559481 733351129 617625524 967185943 361609180 802074868 399544027 206623236 31140036 668174315 986452517 83946479 230361773 711132382 54039932 256227742 621706692 193427932 683574791 585935739 199283787 459555473 246610238 757663750 833471977 794297802 115103439 93838029 514906838 819700978 465032986 589193945 79068067 183271204 655289676 869674773 919587239 383535790 750893037 184848581 114965801 962002228 848528462 434402043 116280559 462048422 435823282 484980055 826092524 89723888 233356115 242060706 816707712 63250825 287289223 417914403 356704869 754754763 690023729 304850253 988367615 668584756 353336285 920630410 236839037 976138209 200446153 471878491 134083975 628411130 944522450 235760178 794547247 198948023 944916622 101549023 51784513 821677445 945904569 904981065 4525642 147297187 588772433 511671068 208912021 784517394 424175382 685525489 633186531 242544378 290090430 206900765 155332912 977812892 154283162 890968178 332589761 229064946 907059998 935291915 40861159 304169170 996035754 209546580 25700512 905927938 416144097 19274337 323435314 293558067 398701864 575344106 963003063 146186477 170639311 552622425 902057443 260622686 348619924 14258915 354999864 721390175 927015957 601399313 647439445 148093333 573527257 428270966 328187768 8342498 263216080 249754915 53764231 598003491 450491223 455847245 283314486 525900953 764471201 759422561 67164481 301387235 432228634 627340717 861536996 537459631 858251019 335957639 376126208 855489968 939368446 430500646 256627973 905629311 728664582 346433293 195102012 364207496 27818315 573383263 318908241 815514807 860227773 713799276 529814549 684527371 91767734 566891482 144062935 607879875 182952309 719302022 638457354 434692834 367069938 409462516 217909856 971908317 944052780 145483624 250834903 874042537 970836048 889949469 208158683 852773620 283199145 985996076 360333338 109995851 616194358 785261641 522917337 465136838 716520970 573825747 266512537 709301736 818048141 497581826 966051929 914722943 222063270 365800974 154420455 256306216 575634046 891617676 185954927 631135056 960243278 715428985 907768117 530231490 86422400 705851095 329294652 710733837 77323179 939338579 866282673 604530540 704354574 522941388 214617722 65981852 578148263 29168445 833885543 307127012 10355617 965398889 471035100 545751963 66937111 420916953 800616015 207581022 729602309 334465285 529454147 36341996 659779492 854001347 252378548 729731619 787597759 603163099 499965746 881877502 712253272 292713686 281214350 21111244 527035508 550499859 81611455 388692736 924426145 304844482 397511742 747137719 168622106 625886348 597979778 983554053 676982400 984394139 532574008 579677801 110653235 221263024 410649546 907316187 195884990 724026372 129058 271501169 561448801 524256566 920962235 906224405 472483485 503006408 546010569 610247398 277268925 974525770 361935356 110246561 306907620 380752713 186110346 239610369 536072568 359327630 315472428 551096769 468617434 617808401 361782520 15128847 574439920 12022988 798854439 646547884 783537468 390247631 813186201 806202265 608183738 822649559 427061224 281067373 16160068 268424847 387483299 161246836 365428745 770445995 975075370 269076662 374859711 610755265 676529327 730502406 561056153 807149264 857058828 53275027 920464223 746389482 674881581 72296741 453742182 473203356 969783738 514571484 120934376 955633299 187723188 55531337 401159692 890924801 820967925 503796720 279123219 105332496 812955970 852611537 224256782 385898620 62642862 715045727 313332915 96845866 436716839 929919923 71161013 937527019 559297450 891505700 99578072 717374024 503481007 755469009 25437651 848465084 702317459 353468276 501610641 288771336 86990810 357406100 45594413 62294935 230837543 746529767 307474621 865713371 897130617 454672176 774775227 332238916 841077672 831669489 515103102 936106260 254846051 48853834 860366208 667573330 53636567 469777404 992986844 399498544 827435460 919289860 822800564 719489499 987430196 942991810 755794056 327760935 161957961 713203280 999489620 32775029 702447680 119323472 502586095 213998500 313869537 392632608 167525338 96183075 412807990 230773197 105563466 310929239 518944608 767373597 128008285 75602701 850545730 128572562 586553691 816762987 393582123 831061353 854553134 116114979 682035085 680676731 982375355 349899336 573053977 522460499 679421587 599081219 700127511 701826444 152428138 213231296 88378582 649530544 346609963 94239345 581975861 575012659 790285615 507903302 624518731 520298705 712323581 925063316 875519723 60900122 754860097 356463440 977190775 892446876 474010562 97422658 73858104 886017154 797366708 162625392 464221771 836825877 735428990 473582795 321714175 521144719 842017399 577820447 556662128 539027473 541939789 925650962 310475027 652458931 44693921 51322147 462273794 705448572 1288070 785659638 982599637 720463074 620229739 426602335 31678225 363958280 651463011 436201498 602747212 411593156 175702370 290217687 180321362 706347569 9918961 873428022 189027363 785242558 283340578 793662268 364527253 983925898 156948185 835771845 235007086 897205876 576630870 976494264 51273620 450605751 103225021 167626635 615850457 252555748 241539434 745888724 608133570 369927363 196398981 608724277 455968771 207350091 172982642 231139897 57116834 515786683 957474653 60140274 278381688 934849047 931399202 478535675 567157453 109975795 214390302 13715063 730984703 372776099 244218614 491178439 627944549 299619487 564692250 342289318 929772745 186849770 388879582 304383347 19041864 904484862 853439002 818041954 258810152 16114468 972466361 384559508 683726331 721119754 323341675 229241166 666322506 754596035 637837061 40929722 8419652 295999499 365966290 259031624 866530830 936179846 630864564 95607951 969136153 171440525 125851010 216676179 463616108 140063000 556470616 747456346 590326300 85474906 113318739 434938675 55654553 331080491 36262630 597494393 810967741 765235683 607277277 860166393 881251820 82658720 95641312 879975978 595537703 902063321 997671445 93197821 321361039 212921315 812881719 291630299 877554077 103076802 373334619 336017013 586239433 144143344 796023507 390829102 236595259 336508554 908270941 778870698 31312229 193438509 264784653 732572440 629491244 863733841 245694798 536601193 700253757 266283878 745794650 660651566 865777682 535166185 677768944 803509573 161463517 264244063 54779463 367395094 870368224 954178598 863781130 814183234 855824368 836475411 917106661 104624696 538023942 426497636 923088182 351398871 391925850 374205814 996583769 829719452 60996239 7333709 486868089 750168508 396655184 859124540 66398203 988927814 741392263 16258335 233281230 240487366 115253723 918466382 390892147 152986854 754036368 369072684 672863779 588168446 75985142 397549822 100098074 913658853 265976573 230042458 999703592 315540792 451890930 754045969 624469997 435054518 254036078 695642804 265461353 331675541 618418325 627530362 924493833 866106591 229656016 532429462 110614290 188802020 438497087 393236463 503949417 992516573 571762193 56451930 593951674 93821557 324203758 441962258 106000893 405525171 431722801 650058640 845760697 780090587 316413313 687251280 155107761 283193221 201414804 928950546 74743820 930796870 833433328 661876372 158258907 159404537 590843976 451699778 362434713 30920028 213304425 946965008 673973984 10825741 740298187 265166801 863836666 389579258 252818259 373182378 890808504 14712930 714447192 648862943 527415036 967569296 6199447 945486628 717742628 337916387 139728294 83972053 288543643 204508349 597887660 915844966 318593207 168445421 275422403 46422748 920592777 925053289 194805609 288657370 286506929 127133006 272379024 568995537 400789598 482242434 866379989 110395861 677196276 211405075 97751188 849059093 853677856 213381984 676090931 878190445 606693510 53156153 899311799 271414586 96622862 270879337 95950356 460726201 211839801 235761267 317580885 176966133 939174003 8652717 198904738 674651710 124136844 606138257 765310030 142424294 161135596 878091938 19417162 490879857 870498671 838262039 10348409 476232083 25271873 345738502 19790068 150304662 337032556 454100492 534977132 502327027 700846111 372800893 795000789 308082658 181724458 362173557 501073305 81996657 373903981 998468122 430422185 422872220 741524388 403802466 932344723 64571629 496358863 634764136 107198787 945117951 582015658 310233458 706503059 781811387 97908568 944108694 981324184 473192277 248126333 564197531 238625618 87060798 94007588 243697322 263163840 121527020 937258310 359656955 22506933 670155773 898603489 75776542 814421331 417882561 309086865 262449949 12354923 642541223 807118133 958871530 196595529 766056190 960142796 114278069 185795060 757891723 760990352 550168911 817349372 120271010 934561471 557149978 874548443 209912975 978113324 534933378 682796382 821319295 116383771 800979931 961406013 890510165 348301045 174242119 951199927 666389569 247028803 628312935 376310787 822539182 615311655 460259045 531735722 402524398 75837594 572782980 723830039 456499627 841757581 162214267 130494714 899549936 664503939 435080500 779544557 308104727 517141344 45268156 158293983 487346915 536611912 581735836 203430014 994792781 88529743 672662574 649623340 24377864 991183352 356751790 940802324 225349388 331676343 694447322 760494337 872909988 36069275 376108972 238875574 283980994 631132828 911650681 335177251 761396881 549662738 943888702 505775092 975876715 442259586 46087374 795722757 436416992 411178740 506408639 967811802 984279651 591895585 862567413 901486868 55479306 252854876 593348134 559908712 430953525 911555784 575276001 743995619 772345774 177700263 765352272 794996077 790108003 64910234 59742083 427123743 423301287 457945017 971918691 899078388 627375367 649978005 89559399 442211303 98177969 588487316 480537161 175706884 477714916 775133460 933318175 811347254 32225146 919257105 683170397 625330701 987837668 474876409 865617764 861171992 993442495 930418345 96897383 97301140 743096427 286819170 12202937 714210164 188937125 347134871 650998578 848144996 617049753 919476650 717337858 640150649 847368833 719278252 304429950 343725940 876942158 351107869 581330879 296337390 310460031 411461200 799774413 748210912 868038339 405674821 681095841 286466339 178039693 16434280 955059233 680996911 51137266 749206848 708648480 879136382 243644003 347911578 751740299 674948450 548025545 124595298 394277195 760928398 388239721 536089878 338891648 241282000 259194215 449461470 771357233 313192701 459822178 292833814 998901035 12052336 188099921 11540871 840713724 766526005 428249133 929564608 686841685 248496322 612954477 517973684 473126983 405191708 957315863 387290621 474673423 803084219 785571349 129707251 197872751 798898088 649530388 172800178 230700381 544342259 665268351 87814485 786311192 49054378 536205469 460335708 652540665 243411491 801832857 99523510 983877338 175040060 305888419 805396264 189838287 322670241 555576906 716421263 128902206 418068049 773016029 336745750 632095360 379988106 140722600 614538859 283055794 705929701 787650142 808417946 142647521 831995393 745982940 802719995 515315175 836990226 8964813 109555000 596013418 446567091 766306134 308422635 961241973 734879215 27500614 538019327 374351021 308581718 884577467 378552110 556275889 822204914 894357476 94035063 450371514 297769884 792682818 980812347 711385080 730518610 703633311 481150848 193645211 543946052 107785987 400875121 933450844 510925445 935141236 463209717 532741919 20163400 995884440 431975702 440148127 443941103 789295486 728258231 399064270 917991381 840458149 527207518 182436509 494704102 243131698 552394240 840971529 702080983 503570475 455753653 786664316 509443612 783509572 439060857 60190833 24231525 100301806 856150322 805262609 127943439 465022861 967338942 524855080 44036725 800920181 309865442 63859715 176323368 578565592 899926891 706599056 612251201 601899767 829111487 570843623 778012692 438944564 887206113 147974098 395624936 484994350 172325452 402817938 661143994 572806943 834218552 556685516 749291288 282664084 574310010 717149659 534086708 98095834 316783610 742462772 519288128 124950606 574501924 120854535 742802420 112833960 623646994 329733707 744967232 472192330 434925570 692265574 49450548 815181301 703149043 601667727 466537632 429680231 189531553 53953184 970274182 939346866 943964560 635667300 299588957 898602747 464968467 914836686 965140794 766008403 189577375 355007844 678749393 63706484 64961162 635210960 407103414 190359826 601587948 847563515 712226758 98070142 183262781 393723827 607463077 424035306 446662828 690947937 442955447 322595053 875863400 562026942 625204742 812124887 256962655 392861979 768499854 259065678 72662063 262064196 866539025 359236398 278701236 672257076 943880906 915673486 954788259 626683479 150038083 118072435 568783238 534825675 505717667 464392812 83555083 110984876 600955481 586943396 442335175 652688936 516232423 762898985 404010126 740759825 948422425 261295248 183737920 777654877 719171230 838894870 419867282 106581899 22774957 64426148 338188332 883479624 696188774 237501268 311677895 569606479 544757212 116103565 182907108 584438737 517489530 722415107 602208757 595532418 55514222 129320168 487411789 172645799 92927558 834318478 282677951 2094661 496361791 379461139 869042602 972625838 15149431 995760580 772233194 609123036 654318013 859634887 109960745 15588734 212635760 442224224 800755253 831793307 921908724 930332833 794104344 554238925 808377737 483992012 154261786 576495041 48546840 12939096 423290256 193777095 255711633 510221817 426655855 812151511 839657205 284853651 785096593 74007113 694497683 263170331 345884827 222860351 213589680 937806332 520337708 588821845 996197741 56818501 732863461 964646019 287933597 766690355 430812458 258881584 864462794 11023632 142231171 984369458 172260544 835152196 313118351 546838577 652582255 801535497 2008699 935659597 495703535 364066955 483685033 436951914 673344696 551842847 893270145 341952906 908749996 982167373 390640270 302290168 833514683 8032001 171508155 691918703 859790961 337880611 149210362 886590238 156658577 88788445 80503782 69450033 329007464 780208000 845248390 974713114 331154567 194456984 241715907 818985203 429356488 314568832 702728006 154176786 543893121 188974588 266398049 205619584 431187543 790066464 308569784 392091892 545883614 571516006 980013229 734054778 557745454 119685565 811786550 673002451 351003913 473333250 295642942 458981048 501565181 876520496 447332894 833702745 698542913 862612540 245718918 553695105 310449295 686703369 330040466 543366311 148171749 432117547 308243693 98214166 469728327 517490733 562232614 783278646 582442106 911542052 431335086 124356020 617081830 685078976 503183222 859077482 871462578 572794926 48603644 59459686 775992900 225609462 163369608 568813327 880672850 371001086 100816685 868315481 310606015 563314111 428325251 98842203 100671276 704632867 644056669 108939829 976293950 729848907 178007402 561887911 83459829 568420226 965828332 31672348 437776288 869787218 791653880 623017250 104137113 873943046 495409585 412541024 208368670 343541885 164984666 542138907 540686517 811981963 216867486 737678282 991899755 670036458 442566936 530997037 876770022 599231921 38094043 302679937 101813902 518215441 324990955 966530633 278244430 553352634 232475171 687815614 927122792 251024449 435501975 972827215 776953247 608315695 998701292 927979496 168037334 314951549 977681892 60416742 222925571 625894005 105453194 201772224 193777627 332769929 276679306 308260106 410475408 72006013 48611938 998075632 46844272 64465433 20200277 684722048 514333130 876612699 934997438 39052727 478811733 694226098 833023126 757880502 307763145 816052288 666842432 272016649 136240389 898694003 32360091 560069745 981097433 448407647 121635748 541692878 97444247 95020565 321011990 335392255 214756244 270590867 77631013 803899046 757788040 876947409 929563761 553854201 147353029 451650650 969639853 553216126 149295897 183040991 773004349 319553050 955719067 526461718 670111886 672393141 345256757 321929243 274251060 220559053 715588336 349022038 559391228 208741762 495627594 367088902 565056807 568221817 673619886 779742861 327173614 15246735 664509271 395573502 567196822 3360861 224635607 698817499 477008240 576030923 267084697 685463456 714217801 782687374 931601243 56617741 596594302 354379037 407506603 178109974 131268841 74054362 70620885 564063235 672034910 714691076 527811447 47536343 380513496 557966228 459724184 660780970 256906537 857479938 914895649 620616040 100933871 879455102 54746021 947138663 239200908 186157562 686714406 774533587 516714530 604945458 424854347 439681242 673788304 609140960 810320554 116031259 185508590 115469208 193323740 338656355 994949716 962284958 286751667 647079299 978993074 770989727 330634900 843228024 867205567 474742273 879439110 545127140 282522165 963478351 565264422 606465518 577768472 625391659 392716010 410760269 406992351 666998987 158400695 261531521 301264301 331168250 796890247 740296714 230744932 826788672 675203490 19302243 848382093 511476109 409319289 268109834 965533174 743218035 982005223 22983619 326390507 542748671 344533153 631606750 812573968 350862764 276697207 436261063 584796481 342581940 749684293 421887695 546865677 894798428 998708021 704024866 180580819 501740979 952768797 764941076 260408769 911687100 393128944 889995585 182766519 416811043 926892182 714680014 349591629 283692120 242905131 79045122 520977724 589745304 720802365 864559568 529455060 597824040 594005031 84123119 112500639 710804626 679494141 623726419 135047765 132091667 905963561 218574584 901217198 653743314 849262367 231373418 364350468 187499308 607206057 817894060 960946078 216368525 822878147 806792321 390777689 480629088 881797300 857731567 968572210 533121576 525315237 399335426 711415679 450147756 989881880 145443472 830476058 403113003 895126313 537124613 280986677 736624843 783069249 495731430 771422931 765560393 767598423 671837932 407445591 484175182 726167964 763909107 316635674 641706387 229591406 488929619 484465578 536278131 256400408 521435908 47471513 671201421 376718746 751856912 5305366 644702613 605277199 952363378 210296269 146699995 741248246 735650690 32468504 106129105 119545495 126682246 62607964 372483466 286244112 358224643 234472652 975667155 557045704 755050679 158389101 686329287 630433835 80389355 487064562 812913421 143805819 108114370 487923246 40733249 533540926 39037377 855404809 660791033 919265668 502148721 893859477 957628295 527383924 142252401 563274693 507890700 226404377 303655658 504526133 801619915 28233675 379021930 465222894 573651452 139245807 592837083 982892451 764017286 578207257 922799149 862168138 433972925 545263425 929449605 234686871 981379654 244931520 293568496 653012559 671602051 744314754 295867130 548026884 579960820 261071020 820997508 700214094 770845955 59467014 357577705 624797374 6257100 346718913 881613007 602455445 479655716 145222125 558340991 230051072 542420857 628059572 722706289 3115732 254027565 711921890 82862234 121510055 996905956 575752620 583413482 193527082 232187934 856758528 721724062 371298238 793894813 342630147 780908509 906377850 159766215 708040549 449712708 228754843 128191435 747127951 231228574 480814365 489809731 60913520 109804145 631977961 808912123 835923707 917485533 650125566 81114074 280728069 486603381 742627600 29327202 884692229 1199023 13530829 40364781 381071050 767081954 858072988 614902318 66029240 755236811 940031812 218149072 274571991 72940704 642519893 813179475 696793496 233302360 262410082 128672060 404960140 53358337 639445110 39416670 652644226 426163853 851120270 202450401 550661731 517673058 624788463 839912503 742810369 63595178 847505167 20494423 435246055 640943070 733787039 23011518 303670747 507362998 345491389 842931930 80846536 348413976 180927989 396276814 929395291 181852667 220414561 82160848 303420610 113011425 323515740 311111463 433814231 131327827 165011820 696541131 181175755 791679030 185455600 192159893 390541273 391659607 92458378 527876355 722293464 802558090 805119557 915787826 494258299 484366936 659592196 687512104 922702920 795554027 104681365 750702717 585476979 75808134 587485565 830307354 962626487 20247901 171732632 989681689 109250483 216937677 155555630 607636163 438502499 893495870 762454732 789067433 405022488 682297236 292550978 712252425 974938628 634016039 25286529 830722281 780981666 741283035 199602718 350095897 325343070 466823407 499689481 786864468 677683396 809219077 394281676 795872059 145655080 941346288 66324644 474385651 107320297 84045497 560230622 4053937 810998825 978798798 777352047 324497273 198671248 870110877 201976440 260657365 708951563 908916463 142660714 978751407 789180236 478688958 107366588 990677008 891616800 699711765 285147119 356005602 147026594 274604931 102751389 908505080 430628754 238524618 151395850 18719571 464375593 323073070 653209802 513148487 190947152 510706884 897392784 258339004 768606272 413353893 597819648 611772519 214976648 878142406 777759770 778567238 299872259 724444661 677175739 620742233 636923250 492728621 507296505 54136471 762629974 906999793 381126458 117772940 78924564 684378921 209349825 218262995 524582824 680290446 25125344 590394533 693599836 362218861 918736088 348712039 948224634 168840636 509639161 311211561 460770204 806578025 247950909 77842533 308911608 152936643 790421820 270697819 844188634 538839060 742892728 702310292 487473216 154319822 904075859 756133000 939133570 641330250 278474846 979796580 703722248 572895295 549813827 536963676 700601907 368070204 290306492 27465461 380852175 591268129 877580745 550951456 276518022 467268885 345580552 958311188 2580211 553237691 388375885 879762355 362296453 556951627 843167862 355203702 252112901 579142027 962853349 438547001 537328579 57241655 177995118 822928401 850754076 101203948 807781903 768751213 514601573 664937257 94620725 870216246 35546180 875740100 125855720 336577172 246368913 291547840 793351916 407683782 20988571 513125492 459117532 867527661 933777690 602688906 160175915 708661335 513224042 790903001 259582789 30921563 256980530 713797772 23072717 183853911 29632822 623646596 356979026 857611054 30936637 708872197 440564375 754766405 198723614 994605329 368499411 897345721 169201939 901423389 156739122 145223443 884883615 33732803 74137225 310546109 929866318 301510606 544528129 487141005 835970891 210249838 515300605 54888754 55082992 739637113 582945548 898568271 271563207 806053483 683132069 297403984 587634235 158523326 69246810 46474019 907126704 776334090 214279884 811186518 288937038 212234286 40169156 927573737 487401996 887101590 87759836 458228424 933414743 534217737 786437937 757744010 539642614 331840547 370191514 198386219 215339946 339681215 75153930 936672483 500286710 139950353 596214037 86929800 320816510 263348348 909096819 901010850 220192262 435513727 159775987 969097325 76076847 773721176 931044973 849709571 106476546 102474543 437916403 974116316 196714734 103717672 534390367 792207755 247809941 482641467 576830960 29823190 985043256 680394257 386020176 79912497 759790311 938619329 227036531 186113092 646089281 603738455 607312428 642294815 990348201 343673660 655710481 26473871 234236758 1344034 290245445 363879723 97109945 577156707 873668820 59881387 453248248 951701649 154852158 11831131 571790546 425084962 987959793 336627421 789030592 405068770 211959018 421555629 545693587 384503021 185037768 352386275 368304027 34115214 677687387 267990233 477817898 322501907 227167487 469345711 939507038 947700859 991753483 315291353 791457486 574750554 937695139 97006909 719604348 83501062 820132186 922106142 331312471 641116053 15223241 151479362 211442545 720151002 312713424 470223444 496242555 666433888 322300720 905896665 30129572 30644120 160872865 896084040 957947735 694354755 435292803 645979021 514051641 858527176 532028112 287018586 834139709 748122136 435582018 83325590 359888020 546808710 454513146 563184613 39984527 187824065 146346433 340030780 73391190 55451396 380910705 564205197 624567815 933229804 502598606 66756244 729180967 651491660 543743233 795120516 774573913 501782332 775472600 567575627 567878723 138335117 765642984 544275194 740416159 26430763 990313845 586415209 774121114 168932945 723508559 22305248 408915291 841198576 585969479 330917662 696251713 492509894 96592852 442759185 979494706 120029937 549247340 918534530 247146838 516157614 80063877 775736747 724535113 150550090 416516979 789253776 260435298 236559618 14336414 236633266 345677187 51621715 974566093 202051967 725766060 812927470 20986297 525482123 916505925 379001683 679292058 583046560 644700012 144643333 540678150 441664062 749078278 642942111 733803865 815909945 457767429 433247425 868356788 703344344 964887186 847827263 427903372 987422918 135102461 161936331 176349160 202716416 280733692 171085248 100176351 996039007 900593923 510711188 905506836 957756467 853271817 934226381 14047451 374321159 369485092 78971863 658301970 540610356 435825275 103077205 93275472 333358476 315288876 790490484 448974166 909931316 564898982 613946514 873737810 788672601 459799186 175587573 955724385 727523054 507670871 367855042 277115097 524008391 685946513 131765643 185612277 255835368 386185630 940703973 716523951 196013838 415148926 47759221 126422368 832147836 995861232 873917133 760989258 224186444 606121649 165380557 712113042 326510636 496751586 526051544 847325715 569054617 219912094 353865408 568381478 191089414 796721780 351513051 209589714 184231966 551785413 119333649 690427475 339715929 339692747 307424702 246033103 838247707 109419501 206207189 247000227 127862500 482427707 257814355 127209183 168039204 781837957 677561126 306395333 937124083 233259106 576789136 410808552 344860821 834496914 395811382 896089449 766945202 308641197 668667775 338351510 848760451 131219792 709629999 411426284 460543017 104226374 249186953 572271648 255997500 975843541 61777455 993733718 600000456 482066012 134237120 536830900 988219621 916479300 312070035 247745343 861375596 85335519 534998842 89517794 507023114 280058888 207471989 979143791 717619541 905156142 400223966 237177380 974846959 901268256 235213746 99828049 214301118 115687230 408856686 47081104 684940322 801463752 264211898 835266945 408486935 192453249 503175747 60808213 837767518 439389718 74384021 561381551 347131514 475001605 703629478 54386200 169703018 651691446 504524882 854807921 627888667 259966242 183659092 57223197 471760011 702212159 188651997 615243521 450609352 25617960 482914467 857627726 660982731 576686591 782113852 739780331 431546151 321787700 324103575 763221352 447390182 46714325 846389302 609273998 996658297 586903465 771661951 58500733 191703511 274686382 136729112 908358670 160556085 957170435 801582592 28507642 724261512 968069982 53275413 188163197 183011404 255900779 530276157 441557129 634094002 420247883 36490749 80191885 262791687 351485150 645401363 935610569 851178155 325189520 440533685 205352410 574852378 816676572 941263249 618592132 445309790 837508687 634269238 670324681 604455155 602628396 639942683 363626406 121602070 46456658 601448589 605157623 451875652 139886693 946803461 144867590 972802920 224888433 546919511 4787589 851631021 252623794 622470503 854409535 918328387 492590064 427759386 114596662 76329700 427989786 937298179 270525253 183021282 14442993 65456288 74955713 58426514 965324492 477892367 835853753 757133008 42585008 803609432 116693764 554060698 872035014 900078109 314734353 778314393 583086165 782213353 286356072 488236732 71144606 268175666 578175723 308765400 954589017 562944022 47126769 244543036 380602291 351072588 238616360 243855720 699967417 458449131 112071619 730637566 616186213 484572950 57394664 67156252 529019814 743905949 283369946 236747817 745480887 797299963 696682307 880681168 713580852 911310652 221217534 8367176 210816422 246382492 784669339 658890526 162503570 321993195 83562811 905465776 437550988 531759530 274882714 376243557 551510383 29683297 261094067 702044708 505268798 77519311 874423709 464767491 810395704 169086549 512627532 171001793 318925839 430420977 699572023 293155349 44944514 838687619 901333017 517287251 894637075 137386348 516935659 518242178 301174493 751276979 197113584 452624715 66703761 455275842 392149656 716822470 130934601 816997167 946481417 202570378 683780685 231636054 69051655 488514771 721838553 555836866 919324111 357935823 332417065 300643919 396089883 511251175 387671017 647939275 644035724 869250747 144483319 840367931 116840848 709964518 938527584 738552408 882865131 421258048 458539818 301321335 671743696 705373741 983464698 89226038 647538659 962428418 634161342 95699475 211888229 399595174 620069967 84976991 172250659 281045871 818939490 128905614 568448461 56968122 433803112 803117415 917617300 568249503 286833973 487467952 67474128 44079123 127039735 705980941 634385396 524936924 329108999 137444492 965733716 570718702 508024708 525984410 621246490 862222891 491756602 514433150 519864832 307908593 708296177 211128847 690455166 848929172 735957975 447554214 930571717 883087322 708013720 375484561 77013897 591270809 787064652 726927831 618069648 319880294 43667370 783190637 414318289 614441818 715394577 585083445 200667226 21477794 374213898 638438745 131187337 415849799 553655484 263810907 250720301 91473392 719774579 754048468 466653369 507871059 871475724 322270729 943349476 995281319 986666130 824307924 846352289 471701555 834117593 769299306 282851538 570786955 230518409 676860949 793935683 738136375 19257490 616745275 125356887 590598766 849518643 344572177 82569895 456598059 446272323 303644844 274569530 700565607 882812389 884859553 248297814 126800507 564730556 626878972 485477967 984198862 499895299 661515746 581292426 158521381 751669331 409538177 242922982 417728087 464246469 225013557 151345423 414838340 537638282 999035761 649305380 906532473 64149259 849000153 94635914 543235150 945903864 827093840 484301389 674459959 127316868 656797902 437405397 124658074 696892957 163474757 302445924 363461296 530955247 944497776 733119911 809473396 688452980 934360505 953687146 104904126 459238156 496648840 31007889 469412021 896537609 337114911 372552621 436664546 27709676 959970319 908318918 798096278 912818327 707236857 181503153 334604793 66647021 821256946 337852662 900408334 212405250 866666918 370044801 339501346 821396134 472278759 780850304 661610214 313761917 894098014 201784034 535562643 179724842 395437384 483162878 789692567 362864598 422524807 381946775 30365703 167358986 355432606 417405959 144930958 975844686 384997746 841769557 627453435 304856950 61223983 713657638 267489751 115867116 788376971 769434930 619411830 971171250 382483233 443702435 574148757 642250001 235737537 246453996 219218741 440472402 989108422 690505894 180863442 791312531 546212895 914356417 831613062 570286168 486382488 307534029 253873474 180743375 756882724 547221023 402582181 76259100 167156838 721447739 315459871 80228398 852646784 992208087 804101610 996470832 109882812 37374603 567101872 121246403 661641691 335038147 56155098 519122554 935292681 553344290 281772371 670461548 645322081 635499409 173921942 920200154 737983044 929442753 631886432 201610029 439853194 551409304 449919021 362890334 967882126 59436830 742359902 188041005 19702557 136723218 754783832 427762760 861242863 684706842 916589930 847000501 341071818 801758404 261438553 73969391 292050590 338970883 710280990 999272637 60928727 766080482 174512992 782261646 678481932 781243511 988426714 701572853 650409447 797942355 508922107 884053282 526215787 769740092 165402987 113822469 506465536 700056172 940441928 263792518 519593650 704810318 418602312 725930091 875970990 414347392 686793458 721676957 684156341 424864747 349577137 459198826 637787696 672385270 373657204 16788636 853312859 649098570 373985211 559733765 181340266 492824812 934957125 194031130 716023184 836042149 1760233 871250375 943547372 258355282 516704454 674472719 529860031 785691663 856506925 951069877 452683712 581687479 267204593 270350998 564987184 816118031 386955684 678650711 783428271 79831134 982778968 322745532 742182669 287875912 388303153 723065182 249137983 822689658 610433707 223848375 859189605 149332980 117520883 382715982 641061148 566462191 1678416 191262946 719554124 913091372 825682792 869980353 531649404 306292809 514438090 202686062 196653101 504964280 175969272 502716652 887653089 443715261 896046966 703746262 255271242 661255351 698805286 606419718 952280805 730946391 328896645 93624872 353687562 871699267 24900189 562643572 619364579 537630715 398363182 228947825 68503921 650502729 171112837 990599315 494784538 125237329 634902430 106482118 553172712 25755337 772788234 629280208 342646153 841604007 779324867 112477036 283739839 126409825 228684955 107633952 237676919 34493449 894916905 138619686 662642114 511897088 80019068 343908472 371174684 80706736 934464434 550687877 774594842 33260936 471037979 423239842 167951227 180382283 525023197 838304703 909732335 629904288 2129774 868451553 200901370 167631113 995353218 91622258 61226751 939507616 810467960 955316897 913986666 426133452 524138955 874887097 130928796 679494094 337543198 881658301 151625320 786862537 540723119 95912113 351718139 58142969 548869410 55798249 76191098 213932835 766295291 678986204 586790542 265983413 804953954 678199500 912134479 344299725 661388702 557522591 287524227 452201032 581488836 126678074 466794926 440304939 397892977 931687026 681569128 194250414 581251635 697893954 708518057 98289519 309148500 867382792 897375534 597269334 657027674 247869548 673550196 514938377 192703726 382064574 264059995 585280559 735403985 302083825 382947850 783183875 881856069 103720309 495729833 235818804 608431283 251914428 664099657 562853127 914184015 807995002 547407201 334849886 601758081 13108013 575924765 495557074 738983829 852076035 78038862 279262052 818450579 379796799 955982390 16906213 522502041 460775350 216233170 486075889 112944307 761445827 638055370 824678245 354458046 769095582 798850788 111088638 690890646 326725982 258350911 330244953 575924817 886383657 467924814 105554897 466534372 934705952 810987652 83352117 557925435 502732214 164211171 301811345 317168331 318159619 384281062 157181259 455332966 54946615 137883355 802045694 584296785 364928166 541941120 472905455 929645081 995650748 635155698 394336667 535886258 591531519 549694496 566397553 327362876 460411673 814747887 188015285 531339259 983879409 165719526 68788252 891721869 226999107 471654546 777879415 728760015 313830033 816195763 816095971 81506024 910603818 803149960 410597601 993374731 996970891 961185557 635809670 232850435 54084318 670365717 54228235 223018927 278978560 546447595 416310598 820017582 58192478 323515890 769992731 55808050 337037806 942006788 826818212 545838326 126223519 920491736 564601947 30978109 521294342 701336626 280401514 667732613 653343702 274454067 244040436 866144233 503294706 464110134 594444202 560455220 147151490 738152554 154852906 797744443 315956146 408212569 747168750 131568168 337428650 285767309 640685894 768146080 153743117 10657017 132838801 427876398 15909331 774943399 185112043 200523716 306854604 581078565 862090635 145188209 541898739 306581643 395819575 262526692 577619676 625898438 496532267 945909439 872573997 678363972 160142395 415779642 311262651 837747960 822432902 391529833 341060589 438782145 130098344 343988881 53562789 545170244 593977951 587592379 584446108 247858564 282595023 606225801 36536069 695751283 605520356 285231270 623446804 675526207 473523255 247586982 294672996 474767245 233553895 418689647 987481511 365405676 251365583 176873886 588763347 190771118 229233898 821504243 717287986 402431353 421891284 228320442 472541137 798150010 91603442 955984389 239013509 537484676 461519008 700549513 779609816 894427032 290254299 513284273 782094419 511714126 744283469 252718678 510810076 638050624 734996535 28337574 444587221 678712203 284031290 679134609 210163258 466562728 840910545 623457629 770966769 683564797 184712127 464352956 414614035 801947275 969665767 374322426 52690980 74625145 866560960 268501456 47517235 398682051 277570467 535893455 513997729 831272207 797535817 324856057 953920340 205867722 399926505 942171007 414299756 963951216 517096498 279209748 366135873 977740275 779007940 239183432 756686399 715923067 71587572 37941927 772099774 395713409 549793383 585140732 669075876 487418941 404588298 925323937 725572618 934906354 490115243 430668590 906841092 777753257 830995505 145244322 901534186 540414483 290533277 463627619 677507220 678494453 331463801 125776913 500266558 322460348 498112138 844836903 743788460 964058794 885142155 839840956 260253650 7626402 381516660 411822114 984910907 614834758 665859265 927972130 881853290 38206145 283463575 376192972 482999865 334277558 646386812 651152596 320378264 525811081 118611247 995902014 513717207 999802850 564267783 107480685 98988300 656447958 318336081 182670128 682674910 869061097 492721224 19978259 629301050 900376962 625643033 594592033 840118976 135980612 817230242 536084503 724411568 397453305 518534646 967652319 772117465 818378047 980980162 474356721 295155793 491441775 471541204 789197213 501595216 297276009 919523145 462947530 857166339 360548693 145074786 727766389 517777650 177997478 284346622 736493693 159121745 549852424 520752647 890020847 901293411 998589797 626515337 420038094 218484357 140863371 903984836 226944864 598096293 639558237 373397525 655357519 673400347 393695951 196388856 397043000 887560757 246298118 216362443 866658583 750358262 16495535 123318762 987700598 154189543 997353739 655657656 760588155 256603728 301984987 943276891 449911765 632321504 756408205 272534801 143313560 142490318 672177641 128311829 510347357 462996962 74605497 3990728 380993657 68891446 642623924 362048167 169653686 987043280 101674045 70914462 704029345 775513082 380654721 319032311 836990337 818260168 932816314 620446133 346910279 290951356 75132075 483399973 699980856 852418086 786671983 676372027 359738037 290987334 366996438 281059873 686009984 513935405 737846254 229145900 799461659 918863680 755196980 787917794 977008010 957103331 713314236 153863798 968643986 411381818 936898303 360673860 63013780 790632695 911886393 179771949 507401203 734378708 767882760 906114873 516556840 708661433 83771054 57909723 925331512 610706980 222978238 171193506 166716124 660577426 97573683 5824145 696056211 506702419 594492721 977193708 720059364 36014031 210049026 79863595 444083028 169731669 848824213 741845078 475890120 264687444 645208489 621006592 937871350 686972224 838712411 54989105 391630417 100661352 949951781 13385585 453301847 583482886 580594603 611662663 880744344 911153183 216209834 351979214 846737806 822321594 33677875 520951952 392294301 52193475 428642915 33846694 489800682 794310157 716071647 174653414 450351467 276153779 785946159 940027744 80871123 987856590 254342810 870205501 622152798 261087350 94678058 777990589 695143061 942195012 485879060 830240991 62357875 528382901 334423960 45593237 146884237 684074470 456659107 586507898 147803771 744184057 551148133 655197116 403133883 767679861 124199635 114414133 611085821 33485128 26655710 897586345 428242286 93207741 79505807 717374239 541700234 93536490 343214750 189467862 540040478 197516122 575378150 115762036 216408030 842589722 676253798 422443809 173840944 833112523 205452652 287900381 804285760 161795524 384322426 229505698 393863100 358565872 315934925 662470950 723987177 518283242 596239996 211718669 743435191 715509887 513598174 464328319 345743689 839985501 403556865 460240693 922475363 933939091 683025591 735210967 546089236 476785246 968555068 590896775 861389092 344982998 170438646 793892171 153012557 207408733 491896717 241538787 926050581 346150881 474398389 607100545 464702295 181597726 811967057 204410802 888405170 817122169 49925945 274996002 18864103 929053506 274157358 662961307 569524296 753379387 4064306 237763364 422656122 976943991 441683110 833844487 235104753 533105308 552574385 689924932 857763811 816952681 404018966 107661654 445497692 504257887 359050189 480621777 596137764 482446054 229876069 586167613 847368413 594178778 743867280 411183047 115770134 987119179 818898581 196203373 197617049 458362759 636241467 608302089 301664701 359333093 284041282 318559733 972689321 830018427 768361215 601054486 763000195 250266860 580632547 810034521 793515497 525877029 558827059 407800756 604870389 252599919 362802274 216344196 563664454 364903031 92461586 725663708 768787388 2947301 513101231 239616926 345137063 974863056 242088302 515826240 99759602 848682263 11258656 492852480 996919317 263946352 158887408 314022110 908938239 790976189 796392248 765137753 59010120 880892551 136385370 537918071 668423121 639061587 455828365 548822571 930710440 999703545 600407491 202702685 245617464 378154611 205785148 57675528 70856700 736637816 187189880 223894383 979830292 104421122 894567801 919048938 633819971 691884074 757815012 895075962 528262217 656701415 797010544 960859619 755423498 709714262 11878608 172207696 939977331 418852820 178398552 322529565 747246281 703080217 194702493 354853977 972935411 16296279 753333527 816885242 176573008 112662326 203087540 3014116 146708921 686672974 523732833 103916769 144120275 992778558 336495720 220394866 716574854 427287042 2703470 274779475 662326325 69067610 636373528 846887369 226570424 890673077 223260036 403273892 362246800 576830724 943443436 417727543 86189289 159738869 29254505 122718173 26413724 421770158 425100626 374523959 105249942 129925438 386909375 614804169 364874108 959089081 15881907 600992571 261633121 870561505 777092360 34756623 635739962 106486 525652810 520771460 636721316 56023780 454125052 161703406 409316431 566847260 672609150 59789820 147523867 306875125 462088961 616660894 833402427 20450950 838335694 453683698 904840915 848450697 194941914 61776683 404394144 959809515 41778734 222518151 893339929 985329443 219788177 772058250 920327883 341800840 15057051 206656087 473556416 951552566 253795804 394910740 604887994 583438688 485551425 289443723 88831356 782925418 271055530 558719361 836602405 921772479 745632788 390714598 677382543 248247884 980937628 109112788 439274825 67576932 641524589 29414890 777194862 686389313 975982548 743387008 929177440 235163022 881406080 392578268 607766218 287159232 448086971 779593168 359245790 589510619 907071892 321272479 808962719 413773796 997150680 981012677 587004044 426261042 259574120 961351403 14831218 333878888 931818104 526230125 855728298 707294690 123186814 135045959 711158764 298717132 775297143 494228810 229280978 741397947 336588726 204284419 656321582 244577989 968418743 974311458 735231756 27035927 246445306 367310485 344441413 293677291 460703761 971219282 318599410 200894148 193706877 26172558 630874177 472265164 245161838 685519192 727237745 35286222 157797208 196082269 203269010 437624834 206616521 396983397 11086241 874185156 156296922 710164422 485649888 452192937 539979590 930560221 386686532 797527287 519236168 276667234 94727180 538690069 743752952 662158162 118055494 88264285 473271671 755580083 95594769 809278648 396745231 716593653 339356578 345311763 539292347 802372944 654473203 630540544 529063265 500395900 552679980 62020599 580832866 544869733 25352228 550181679 521775170 329291209 39112984 744681468 854810906 162539450 30978979 155026136 784770611 586794989 374321343 677780611 281976242 855162067 137131154 741021558 978041120 738570432 938038103 181862211 389078700 192680036 499486013 194425181 731716535 402691400 3190770 679156630 785437289 220278248 897457245 797510265 204624487 107620998 55771323 165488519 959162174 725722028 90673667 114340783 955182922 376841142 289126461 499824308 70169055 576440047 899695899 911117007 358196479 489593020 604396388 800827855 283895542 499554880 574536176 4233864 50264627 340193258 927131261 8811298 136066000 480292992 434847761 570674299 377576559 822651920 467943520 779697539 136637517 737118057 142411652 61781494 178354030 710281566 141265858 932005578 733320436 247155137 343546367 81649626 559084631 539600170 895466686 819214933 972217509 688807782 537201564 435077244 717570018 854347802 721572347 346878984 962173065 336950837 723411693 777518226 878111152 585582427 335445266 171930969 495617200 494819071 409946771 182675560 53507373 399353458 227301623 444407263 50527693 584698750 964894516 897057302 122777093 558474834 529423222 690538117 149732628 342960204 837524003 437987684 321780124 844866020 187210733 585396420 981691759 769890577 419425049 640681310 316040732 504050376 520224398 655251668 795265273 357360179 454075843 606504070 911289779 496944117 409865698 594889292 809230114 221720360 214719381 658906330 47773191 852754636 93666218 761160253 865924847 740422269 857823492 442340335 268191143 943336560 442433909 658338754 418209034 515933095 784627601 510929904 310101385 313809063 356968563 573686407 860383368 142043409 94460165 742350239 232657986 346076837 578474297 222017038 540659536 908143174 573148783 561433766 451370017 877771043 375115631 345574616 282774732 44068825 201306618 954211519 272840997 302936937 629617805 224937264 152688621 165225615 14649603 132005248 228271514 132538560 554943867 534159419 447185358 670438957 571722426 801552766 791976564 769722474 583795607 864274150 488323156 442118760 84363072 918895279 710489846 975547462 504537191 222191288 862353378 859737803 750173231 175083608 842906706 123822429 641405625 857985123 56735790 707174388 967777455 15756604 330609801 527757275 435170445 60904006 453148587 174675934 654768814 768439711 479649167 993358396 754244353 774701659 705111924 233893215 466631543 94476285 271063521 855554183 363582063 868150896 602576111 3800019 366800916 90176640 71369882 977014124 514428919 70456815 107290036 642198348 597012444 660931168 937760587 138434128 327027037 180665537 144825939 369925784 551679903 982546329 790621436 601211218 365266704 650026229 318879342 772510356 545479321 732523387 674529344 22180945 993345527 281230055 634172230 608745496 530117443 945510635 379236243 399995977 214871494 353310935 593474120 156571029 927534381 470244369 160840889 381529788 326040469 842803443 157398275 280505385 207199292 740276226 259275106 136287800 609432271 918490428 267114794 753451744 728092863 102197519 857595876 694093730 867558035 483281089 818867874 674093013 134337982 211429924 159768207 10012151 863734175 44801014 269026218 829972423 803593679 705229164 418202171 82361593 853164977 271496099 374449110 554279269 445318381 995298223 119001655 73648520 749385249 142936128 641322799 809623704 869371108 819158184 895127362 764383672 225278708 186573515 389164742 452840451 633241014 865973171 340780617 68951885 492713246 862144736 493329029 299990231 915477365 34547265 613162980 306881123 605185348 636805977 706857776 414000134 121002210 899180515 565364766 157010205 208616614 83977330 70049204 639338548 415172293 229914826 413803098 168672940 473987234 334515550 787812911 596861084 631388900 705439781 436615300 447623439 407441749 68494263 544295470 723123804 159284287 740347720 60984340 528249491 374526350 231719298 647899329 216242592 113943595 194243665 847956640 79307481 257655737 735534543 457052987 848590193 289151163 833118496 740501291 146491702 56731 282451282 503553364 996946312 134828454 973837554 275761538 9536101 822767420 96141156 418143236 807878819 233689686 581306303 603178682 499402087 886981495 55409953 705077888 546179998 907615041 573528513 376514526 811277583 814018956 692195101 279534350 733431288 626710093 332261967 232301567 42581504 798633913 766895481 852185403 38797167 113167294 618570416 536358733 480051894 485375621 330823724 879280665 255074230 154812530 978411382 574277726 456338279 393986846 363724529 159373424 975574364 996359807 441149265 11691809 66387898 207029513 873497140 214479044 429661897 773028713 487589738 557343138 310155371 180649374 108761676 514224262 34248704 318647296 685050336 220935976 273743445 436931425 668712848 705584015 132665562 590601407 258904391 638228747 245342535 249453975 987366491 158198095 49768676 610744567 877075118 105877569 621458072 338249833 980684283 837759461 979114991 464990163 915982111 66759776 776922013 333249911 997325559 914084050 340595461 198536051 758007204 794457426 696000437 579665137 551331528 769911148 166254232 20014440 513203961 603646666 270430102 998070966 150163875 916369777 926284274 522602392 853555743 990069939 847301514 337053400 888263098 4871415 153395279 898336947 250262525 588469207 900672327 313738697 823743308 827312684 550509600 893708466 563243856 279070530 657914612 266736624 189319988 956558692 593847166 346145259 961611398 397689394 6271401 138234391 679088757 398099217 259565938 131692446 468217409 255601930 475531038 684555008 809910377 382774752 197492693 551559368 380811066 764896055 359070033 686270930 16616785 717247106 777782907 622997929 152960095 135724640 343421388 47402078 837282130 275921534 721056029 803305742 766301001 219375029 675975052 928993734 726346037 459337377 983012100 384803724 956387416 280551272 662498705 802047328 637410400 320915229 351548590 323138134 788310575 884382513 419633349 194734707 698052649 130418592 343671006 808756974 751760107 320196505 933721951 803053185 338236455 193716922 168248783 952639322 612643675 479252342 194072212 336600571 663831859 503159718 455633474 596170281 901724566 624704273 149608197 979463541 830469488 717444671 18981969 318358771 521357677 589598156 841956295 430145820 405063857 94774370 472127843 831707777 291798654 50944907 348499330 776309215 422678958 416704611 747873729 551113960 874627729 633249089 611984367 499753504 678375867 959357791 304238323 60274795 59750723 496742716 268389026 187264889 768169454 476540788 182018615 810233628 881384000 481851990 194573446 36067415 550497840 265219345 328983785 582922763 895753730 780938992 276852257 119275607 792436640 729185161 548019792 122794696 943308954 389472443 427783132 248128456 288676977 955818740 140559333 473013024 755355263 950236493 204935410 283751973 60570117 616724023 82292 776197720 745255418 565060262 920146826 241941402 283355354 806625997 823322844 755577866 260175763 476256073 972914430 639233525 276814870 919557771 69759524 893382650 260404500 141372053 419701063 935379245 174914490 667590412 563168326 283907454 334489035 944799146 808123433 666246667 469520596 169469799 944209887 582712768 817969085 324606587 860968743 787861376 732906624 874284701 592797220 944020145 174874418 58097971 814186627 734171898 597987331 165151395 18275557 847099477 785811001 577864861 353569443 859745603 897913951 349442135 267095347 778173918 888409810 616149704 899943864 129922647 890943219 947136927 109351154 281047592 209639782 749289975 978042392 485169304 41746016 272499213 915278232 536995830 537697156 375296549 42983278 545714568 915565451 656196512 236220129 919218476 142081603 390400112 718535055 499051245 989443889 137975383 39420446 969972994 721856687 198746164 498463265 619967649 540657074 18832062 64138765 730624852 506757571 434050605 334397241 485799041 853744078 248432000 533705480 851733141 523002600 36006697 355669247 335801052 369840039 240638066 896510551 321641495 697213057 50488325 505643532 469729248 283432080 892817568 157972877 161928465 219742151 411016521 235484229 646694890 158014222 699708557 786765589 519334523 995029511 589311283 108267743 57759132 274476563 164983923 1889833 961761918 244415456 920122676 637253029 619303552 579587976 834039848 432164608 419646375 871976553 985690950 47847811 960154118 477260546 502926085 348251573 830705837 756099227 105697479 997593489 37792143 451077879 582167329 345230929 310606974 81522417 442586288 698681508 408857287 578984 151769994 927387453 65421374 235070337 412634549 195126538 216007172 77523848 799063930 378738911 252213762 447325734 674317400 143837188 637161905 542601795 234328136 385602089 186820626 918494271 948386310 25123565 931566124 906770600 103822819 520625851 365777703 785318671 515819249 866226634 280672638 824482955 841945028 80817116 826142520 807063158 633559170 367694594 186946486 322752342 766532993 987402038 420062126 157679301 495570301 890976415 131287304 694974910 778468465 979189154 544770674 967933978 99609965 105824439 564938752 286217859 640131532 230501383 934062966 871259636 312635155 80673906 763257310 878777905 742491405 353494021 259507592 535340486 671980511 163956732 861176941 705236442 876392282 523294280 622942766 576648105 282485200 801576139 416112760 733218534 991754642 37196367 114666881 598132428 190905378 182501669 159787556 867182687 204758886 822901432 929136147 935839291 356813177 186134970 629848224 21885548 731858070 674732592 587860271 898957747 788014845 268615553 558784479 130549483 263975540 716344407 119717428 371152886 219135336 563748658 869656349 454710124 261107177 514324466 407834851 922198913 738005570 523027544 342155866 388481544 384457693 277271830 69369184 264377934 998140059 305628950 921716105 150896071 985602473 580831012 278538898 674983598 70170356 951516638 29638639 431383666 868868569 827375197 64017019 928886314 691680763 517247638 765809108 675720485 591621138 608623672 210340569 127268797 619911858 96301468 209724332 758325253 337613066 91206386 385039541 106496551 690233534 200023484 98268401 115780185 11783834 967854701 334452644 587041101 278135263 578058729 725667055 823340173 397455303 25872491 215346012 400518551 860256213 856708779 716585300 444456150 661593713 3429455 861561919 495129190 916126189 420390096 887855526 283362331 582414744 27489835 419154577 460166880 126777909 580329823 751702538 179790071 991501990 288432727 401428399 564290074 673722071 974693962 27756450 281332318 833561811 730931110 448925543 212461904 304967511 73127298 285440337 464746257 654988373 937825377 236722267 949712362 876179574 667159744 521470391 653398947 91331715 155817598 419879570 949331425 87001319 431480264 194835405 549909317 488024951 206871849 341014508 325793607 121626323 3359506 117826666 963613925 393060732 891666940 900626421 534803508 958080745 825251861 357314954 984338866 311243995 515981665 796802869 895817865 162700042 867256540 768942263 882015279 234367595 785646872 77880114 885057774 9236192 222297430 424241423 999543506 287520379 70250196 368185150 189151446 733091739 846904233 578757058 323826300 865993871 104763645 715068488 68934322 427904531 113247956 702830233 487371086 93178130 410259238 441854094 148756433 287734747 987191390 421250751 546305407 290223831 635978672 575112535 378719845 422610718 118204928 868123976 243634395 204471617 263801032 772299616 623906655 319476467 804145000 946079177 415549946 986136234 869794845 77312677 332618783 409592937 314435910 449920447 509121106 968176805 122074423 545806906 834390158 786555130 398997153 696189766 534309535 256692378 644225726 85156663 992374318 49011959 382206493 972288170 172688118 169580672 65982340 486852333 421362910 609486969 213800922 372955956 41157492 101150826 107677057 424965865 880153836 498733590 185465166 602992225 144190646 86494439 738920573 830941119 97567386 485783787 80779979 714122801 611307814 789437451 200946505 178228768 636973395 932692886 507677835 86511986 567642877 145186231 303866904 781803614 91025684 19229805 134035710 501257086 326881658 89128079 222439675 535253058 448478147 5175547 867391521 164272248 111748083 245019797 658446756 545715349 773013321 372279652 980574441 945521588 280290388 477797183 453431214 576656045 184661063 100395578 585813009 541993753 519680739 814111511 428469856 375187859 762978036 687472827 602184447 632942345 33300455 290558046 917783135 155364956 918598772 672000278 629946215 239524938 533209273 779741973 934550367 299452906 726628345 114342270 356316934 635402804 836626271 988874370 325202748 196229619 548636509 879819738 653229118 187924375 27390842 557926455 190205241 209011493 269429449 185112747 196263898 684410934 752120325 274049409 555509395 687331203 439181735 331975805 433488237 306712093 990644012 800506691 642810891 810264856 378400987 893202950 240068628 286605 901300083 397290441 897359604 518928142 33475624 948004774 303402672 748037623 926540798 48831954 658208581 67417522 181390685 136746514 686513034 818585816 78638536 208639701 745178994 103348828 49325055 536285888 698695870 196864799 170656988 974879298 700908337 717928554 923766418 826392269 975094693 815253454 486113418 191018316 113478010 184368685 255098945 875249602 216102328 468508523 481066099 510520799 667860817 899838997 153127405 751627950 125963693 468958812 634541711 561404663 696883824 452186026 820154841 514857220 41397920 886774440 709037553 174146728 113457067 136231890 699768866 478409633 798901633 782546520 118322656 550338781 999651446 913283773 177155515 984012927 537406430 873849565 853584817 64115150 177707684 300675152 91046624 233516498 977157166 791601679 743481428 322064443 450273291 27233830 825289665 737726187 207313231 570768092 547010779 806272977 515499271 664716200 795127832 662907450 369086776 348814412 945036893 72031095 981101649 770952644 56540742 7704300 475044616 525408173 96329003 770256934 604643350 903369539 860279318 494942337 870598565 702609286 588017389 547520303 237135052 991019876 328132750 795584940 119982912 819176751 234566054 743359250 512832220 495636742 412162033 226167455 365927576 342675881 213697546 818753095 991068903 47317203 147433691 594055208 337325168 621529057 148434878 236909129 943290479 815691875 866603992 914774833 582010400 239904962 474493942 296730837 314969748 96045747 845550816 107423452 86270170 132540223 233533420 894733917 732105873 915051397 60456657 902572239 405895186 514668952 440595444 963146045 324338567 72198148 938553184 647274256 41185361 369577159 688416793 798951102 344212888 589778990 550329824 192119728 982606147 499454826 17924379 348437246 681048926 889158243 193116510 245921744 884428328 16216538 741181733 718940337 984222450 791222201 750974839 773250212 910502117 290738982 195748608 910890548 861332308 659851044 579173654 773179087 63438307 921583925 896029009 868253740 423740480 649799020 404014461 869913271 175982658 29948134 236987341 741088965 372914163 59760349 986099538 221744655 481264843 939289448 545200475 126611899 677383698 45784067 476303959 17713212 39815269 3657290 152220415 966062012 493832531 358460197 450178476 270658328 545239201 889128187 959510294 150045171 571183257 635200051 692169671 742849528 578952651 192681146 369519854 292115358 726642375 2503810 269051074 361853492 8448212 811012468 607365802 564703128 445341220 49267112 598198009 62458371 408262103 3807353 892026881 421075939 114910468 75168046 766132587 604700120 187144014 189625652 893148969 646411353 941093281 133998340 849300756 421722401 769849053 583597853 841286196 530065039 158791823 174668129 128200036 285413328 872463776 248455795 982223135 418072928 919481878 947054742 60057115 705404064 950762089 680951579 535291330 528113151 737485532 171207376 133900425 93843713 643911853 220657774 438306274 119967500 225170707 276542360 216175559 319773104 996358371 34529522 85188844 761249711 82640866 623417835 46175796 939265504 192566193 718084124 827158113 156598577 876445939 616149978 299685896 818288898 438322030 35761547 590030776 669131535 206666616 614484154 871824222 236774552 333774725 287823401 978990362 266847743 844151642 970134322 838470329 539848163 29334631 465173269 211419134 452391584 259680210 206048282 806187102 340515056 493964167 508320223 26242884 727274211 906561925 99707802 605805231 971630169 273335274 77055208 493164067 96330616 970101513 582281369 958779965 771350849 462015300 522688497 483868768 762261699 26523764 529765066 221411766 219548512 760641338 9271797 281265046 546231353 577752470 734698200 15377548 714030628 103406244 182010009 693950371 624364560 87059152 786080532 368310789 852633311 80393645 821851652 511787283 641054149 802214234 938110368 217230624 345547833 775500130 133324210 731542527 544636024 628404893 597939606 208008244 233265003 299091385 114865080 813200011 602219534 44249605 222567856 516326716 670492075 882751800 717489063 981526511 981552576 188602353 151807408 187625789 514012289 731682482 503634143 995634462 77440825 878622353 281747537 767585349 62964944 570443660 648723751 890868343 323622078 146744536 534149394 476713389 45893033 819184162 202597220 705722049 181952980 217105389 808014018 140795963 803433846 132687332 55406600 386463952 873353464 378389105 891961754 224401810 717638250 290659489 253397070 617756956 146626473 317066745 427110067 53527256 523313169 896677900 187302879 574547879 727983812 945893549 410242241 936439486 866462734 996857913 759660505 895663089 855867160 551798198 772152212 278408200 678931022 87210580 447215437 432939382 975412671 484407750 902069522 617256259 440180371 307726740 662912416 471365217 821070805 979930463 528817496 169562511 161805402 487698367 759498990 281362559 986421707 433384181 184310809 304556982 574114320 10420302 556513971 841020757 40094006 264782277 826077973 852261933 189947752 748370567 508680326 839913021 192788773 366108302 202332924 189373495 696249000 391805104 718730677 748800038 807418850 820590032 846167062 893048014 576163279 221783025 25944366 774873160 983140918 316251058 5898922 956636948 931901969 341669837 824429186 524387304 221508990 264209992 351830343 496379032 610340494 868365046 34959030 251765699 449437418 545048396 378493726 253960876 493206986 685896262 738011586 140413920 120664627 594460132 882719606 417543569 582672744 548402256 768297026 183810246 520814526 425219423 463789644 700185885 440471197 177477997 912746910 982410410 213184975 750122242 476758889 778091339 995779043 698146206 498244122 454485827 227366612 587190938 557659617 972399819 746949610 633281994 646039398 981287545 836773616 635145505 792671509 338351393 484712166 723469580 999588921 558600490 316647196 97411366 237713833 670929016 559056112 382976196 168914972 157202325 925815753 896643255 811300089 815680811 714019438 533288475 971834723 876495420 622928979 163456033 559838247 214291021 297013971 409717412 696219519 213417248 857441189 499035179 509133175 78568120 396093000 43720801 409199802 539919812 43984062 666230793 381276957 591786999 592412174 14433576 736644137 778047711 442352186 56486630 974235452 477480698 186196565 511153875 889071365 876828980 653359423 232490463 369306170 612984879 173730889 672142 402663633 320967264 572157214 750032767 250281916 257708894 799679291 985519651 869976555 796909604 181842580 650578506 863993126 1992126 775982177 609336712 683394351 207193965 189630863 174195482 731457239 444947877 717179261 984277106 795059407 737106391 976685061 397504946 83497881 362666823 526538983 515502826 127921820 398591286 33553080 494774814 282705038 214868501 232203017 939486110 70892132 22807536 694403136 263692407 956769061 796847170 240657521 450908623 751269404 688726625 71184259 874574903 987832307 888055720 827112476 474672804 577123714 177461555 176744243 95370523 522753627 48347714 357976599 218091461 450907930 853497105 57104837 348573048 247139241 260809322 950793319 52915436 900150219 227358999 479645052 801734814 957710052 923944715 163362876 417066263 969537795 944595691 984611216 947327781 565903953 133468867 461802986 423097937 102362762 671401917 598223005 391605849 998552454 552907842 614531441 626518538 263450894 727262743 984637478 359749708 285516372 679011744 980992436 621794548 967388082 880636788 488612495 217893579 201645847 987505329 188557962 243354313 751229731 608784510 116458295 711942174 323494726 424191902 807751274 239565719 500400470 585302977 74073596 818271749 247815080 955014693 465062607 955455848 835798743 18375173 259379932 573098204 794802 508131800 857045127 126640028 275978971 919830431 294825826 464393036 35375502 465977452 635506387 153890036 573718833 345946757 309203434 636346381 462262712 573759837 610657337 873009503 788062634 827885664 810625214 771910276 346486594 492217823 215905315 870499335 57779360 290338485 31831487 184894983 934648044 115527516 598399235 302923674 685965081 93772596 170998988 486717825 387406564 458817388 55226537 112765691 44810859 160351647 700622056 842447683 756728234 839085928 302141392 538664711 642561791 236424837 176003905 403138619 387196300 390802051 222792504 692867219 982380995 18160777 73891049 954098434 336893729 4271599 166765278 293447158 171429725 40967678 617579 324528643 625282768 204782051 974182498 343792005 367905672 741481412 164187257 389136295 459304319 623706563 285493161 305850580 659758404 439219613 215052377 490847914 247740613 265036820 879477281 258248552 134481397 976124833 448446785 256425244 727701688 239950577 714989754 981689575 523081973 649110326 791556825 941130976 373780897 145319292 343722278 673853925 838570687 546528477 950314282 610033020 337555918 312860848 661504638 155109777 180363736 980654474 838984944 968468873 338607540 359760937 802089482 484370077 80988806 906456449 988227742 543174934 617869442 916919181 491479668 168494826 394921381 526786000 965963391 672902495 816365109 115534413 923674767 685496375 425288057 612928227 739821168 694355906 763124047 908095758 426022079 326468541 64946298 288699014 35202635 920096047 698838940 123740033 543615576 656281618 571560037 520783929 472155064 417506231 716560846 624075942 205061835 378925217 419861789 782526625 661965919 628650045 672917381 832275404 555921306 62651507 760244937 496371775 538583363 757676103 69426101 584656455 113625280 727080090 870692551 326266573 335037302 581671946 365541167 482831950 92372142 445961641 334292336 622901880 26713255 833785136 235201356 616826216 685160554 471585909 132414215 131073181 893299954 502713506 359576151 742883615 95867869 251826081 628166121 560220670 547394619 749037271 978370827 241420685 425306722 753628074 434651184 100852426 910930169 870620473 283401489 3027282 465206828 159716101 487782396 61063151 761161116 127762581 906587041 751074416 157716698 452160193 252443927 266575743 43332732 523241020 71181662 724475417 365065843 421924545 476760224 900750687 469716078 932007564 245883457 946733078 587390559 432825981 763838305 52912029 792725030 222630934 913402032 552597771 562058107 238220054 778003033 253516626 909980963 428134932 152498201 587914201 725603379 442523457 18699095 674187003 522421930 267088586 274618937 711502458 232143912 913881784 965264699 565038094 440728365 778743721 344891678 936933687 57524891 947142872 749026977 171795348 576337290 564463228 371127642 321595598 279640851 779674143 804862147 294793949 123975215 267719603 950942864 653385750 89475199 110527126 242305816 8761324 615357324 722594500 400187027 647079682 361073789 198448915 185153799 180375225 495421607 676508556 3862477 789149533 137962166 927274847 227608550 650251786 144242281 207014042 643482767 351905655 151905463 640544521 570854688 105827017 559216894 275482700 914197298 757431154 876461140 699579658 105892204 143135374 735485539 256643840 633824272 396899407 995293413 599384738 276079719 813189835 467691915 396655205 413112331 484252625 860467812 79750911 118345331 963885278 134569516 833669040 208797734 603220040 452246993 836123630 470295944 939730295 164485208 272272639 397180603 301734988 478962136 388177638 292553741 853197763 248635234 843168516 397674144 847694862 607671360 625759341 851900557 751201703 339256328 96300429 768804051 931700378 406229706 133428657 162836417 561032172 797889694 559609379 567053810 401764219 35540047 44112914 197383657 249465323 263421927 398157962 190489525 254177581 894576101 227900927 933230366 937441899 32361332 293295016 172719760 634960043 924857405 885824272 825151705 174032970 842371669 821348516 590425193 675474879 137145629 489261944 32512222 322669996 468218513 815173236 754167952 752437061 636608117 272308866 487199952 894782115 498114619 705785921 384395537 59818893 65896779 747720600 989232772 561527066 800463582 142176596 303119133 412779440 758140735 228181604 984177621 823140989 993112141 813227017 675813736 529499096 651563872 235152203 800770497 922896672 203604585 902613188 841216653 930156203 752674908 608473001 394593717 343741303 318832930 849827357 996129559 615005784 673604129 359934677 809854227 407100583 794732762 741228740 513277981 247580723 901123799 79296161 472602314 189534140 809933569 431184487 493190379 98286456 801510100 904448817 964807188 397394602 372236952 830856557 737464179 757668423 132433258 829257591 758427074 383863038 291355664 399178314 24407995 237653727 625184057 972379427 459256687 800510015 778713390 370266120 817231437 277346472 183535283 227166018 539946001 251416899 992453334 448012580 107155446 169664166 764425675 50641380 383342486 904695020 532573424 81044734 382899203 944855466 49415787 171358251 417476116 914138912 341975468 30914459 979362897 856879879 964127584 79390053 460186705 448361794 991553786 793366275 848880015 624193901 667466288 568748027 115642271 62633340 246927387 359682599 416638793 653170336 254535557 168182770 366964288 866884391 457179084 691500430 173516458 486402025 885144864 41083700 564984094 989019345 101350202 678112100 496117460 66663607 26548803 309258156 702765723 417050956 395829082 687945402 415760332 688753269 317964385 84252863 519482876 675433773 68880145 234500835 641222683 128917872 317414543 171474791 847147818 281910378 445087306 933750177 130763783 84270850 677430538 671284542 454799079 632173000 672302474 782045889 54945796 361409474 140025613 122092778 875504829 172542793 210057230 702239775 96362607 193767798 512362944 859377420 749292770 214399110 768081802 201374533 514217104 88986065 417846998 634486387 620450617 86948792 203731122 673457162 247998737 653786058 187385525 742029492 594922994 949445086 856876300 776395382 656049750 81879373 443292527 176587313 184092799 890316831 918210275 577630358 228898156 890700035 588714389 339790626 961168746 620979572 26808415 994153096 444841451 693033397 937365704 612521110 621495129 434844802 31277041 856789293 884034234 776077681 812151770 565195230 863847099 221117644 551647619 632151807 339298976 938216561 396404489 23392643 352274022 29134304 702188785 550503788 554649401 984554140 36790998 514768379 148580883 805527927 797750845 339465034 480418236 887809608 733772557 361250984 948280732 132042680 597117716 67253921 606002348 381329744 874630430 972273232 372590149 717726345 354321362 759399200 526728133 684181339 666158107 294721255 650654782 150101427 856007008 59575072 967071546 225259519 865129879 340351414 979147689 315837703 484119178 458318627 89354486 846538976 456259350 232428388 223333873 188303623 634287845 168289030 153722821 464643831 519172933 726877710 94884842 33317101 435844954 547469887 111458409 909613307 213675557 788633231 915074908 208196081 55280110 114484992 277508398 117518091 865904774 19272290 109982985 95988564 352031139 886832629 90130954 377542689 210817138 256513945 258183901 607262561 267920006 574754282 52707108 151859103 725109234 251769792 934107934 650082513 526173468 958846559 287703518 21219433 728027317 614386783 2366019 789291071 398164988 302712407 48567474 589128037 385718313 333333320 335322362 744831799 866517209 726671739 177377792 336012908 283096377 102877617 267926663 303708775 617138635 518440780 787961538 523565888 184829146 319648722 270695727 650140540 196788183 175888022 867603123 140720924 99304122 104648985 669071705 957314908 216218994 852700013 379674640 167335661 139682089 767643307 695167761 361371277 325754750 253344688 279370269 937881752 283289685 628010516 564623509 811643960 402326868 406005305 981107309 810265204 975680453 32020968 426642567 816193587 181726828 832512385 30042656 208134075 375269733 109792329 515770881 187164253 943781147 473449539 866472856 880274549 476537810 240626123 928204666 662203282 199467666 704918695 59381348 828701110 965079289 589004142 675271844 930523325 614380598 38636093 431424440 318919302 503332221 500923739 862032453 473927358 345161801 737617590 247065248 174694639 551528249 953555818 984334584 698364716 221561706 815040418 482533701 682065212 433737868 284564525 226152869 926657764 62118609 366992867 206775574 103324083 985167308 835604485 236737963 536438410 357858245 901700553 517968013 700622985 855802627 765074358 328181234 347648512 366482714 926161403 610505351 571150669 110439505 240708265 225291832 66289697 791301253 168538705 437630558 384075022 675596715 542622245 217618574 249782749 41086674 109063417 209138884 854308974 547498509 550602584 529583414 458786174 437571461 707288133 212563612 548071306 475061794 111212365 965298615 585006150 981060287 690100031 640316513 760011234 491748008 901510804 659702558 496455861 410245976 186615882 170239422 401759493 382799718 541703223 582912876 868484443 57952898 363154508 445302032 908695361 888801686 201443917 921753724 289902150 402383506 393696532 803097253 540902545 219467423 775689320 411590565 834237041 254441152 45079668 505041413 710335082 361837936 233882216 131218415 410046640 618066758 432675659 451738027 960099404 985580353 898559118 265888192 422041696 709864316 820449651 321273001 373567267 524762789 878081327 300982924 716907602 926757252 638542210 80702880 774642208 273743633 302999730 221175875 242034062 586611051 72577485 421674676 152284016 280850105 97873354 73577300 124573723 887098893 349416047 97865133 647314455 496005541 629431379 172260100 83219223 547284341 151824188 839341001 470505027 480317976 711146707 391979853 952720779 724555221 810971040 126849043 117085831 244678178 249928498 961922688 954306306 811728550 25568843 524366197 68051869 860116001 727821710 985041178 913969846 669613175 711019834 6312209 65916689 788379678 878855114 446349150 387085322 499210158 356845822 642108454 420964849 965751795 744351324 284381846 685632360 761052853 626537422 306245885 513715697 135529425 746409489 457509237 490311557 865511070 297791011 364378188 982236521 832753484 281535147 188583171 365341295 111458753 274045514 342843653 107706116 130303790 176712070 951964185 562284842 951769922 705365782 650813887 109786181 213309581 30674999 597677340 682443853 88046213 713347207 215809200 470321632 675460761 490382182 536573736 395197281 276476166 31084751 560571000 978670334 34106736 236174273 890728545 67959936 298132055 500177951 774238428 788121884 886272907 870160601 798230793 658982978 433937462 496052072 307566005 54285342 647253777 600727332 928856175 21723473 855242510 239753586 808024228 259777624 77086914 65259286 609419434 990839943 507205555 295191517 576818981 715784981 684827511 130912158 854796137 545356045 521235142 485162641 728578809 122690856 768118787 487401424 654183156 86728742 327398745 484170890 223138807 841311200 391096608 883158441 103579254 799397256 493943072 396574727 922591631 318564137 160287046 137916492 606357960 846683130 170907693 34703613 981608596 19153687 7796252 775821457 737399659 471280751 757233763 430775880 817241214 364094135 947359602 464339015 690633875 535972485 451252806 917300745 809298144 962816083 997645318 177229441 410071748 194929822 909829708 945456053 666294594 487411983 2993433 942905514 76377744 937086570 915589938 276566414 489323720 348180430 322730923 353257876 187909753 16888883 908578160 633917562 869959228 941543153 131682470 399769443 598649980 930401061 845447935 779161621 792081141 833819399 412605417 887665650 741764473 205144213 318351880 960642459 37773850 238320955 199340480 559389899 672578679 72322553 388115690 633808160 677652226 65854146 160472986 838212842 992932842 187070640 754399821 79346951 63946936 453650411 109702049 932051728 255626043 499116671 371267906 919285285 186307543 601962872 488004816 600478044 586517526 741961619 751656607 917454717 963009982 359878613 684239069 269388543 799859720 774355933 334152506 228591639 752713477 815843688 703048842 787331168 994379954 214913974 184719974 589320743 619008985 95642320 689723807 810277462 780697497 58433885 869191205 425387362 904483170 157443351 858022603 925872393 535568257 262488133 895394820 499447173 810017296 602648219 772171324 198053106 658873653 715467576 456499429 722254189 894461046 846251456 424565620 708642750 903593435 785034924 755852195 599828885 103788089 142366083 749348022 946703399 523712161 508685620 700055781 659890627 144075634 876216282 634328702 219735487 448227909 23724335 944914162 56214146 143976734 92935081 75908856 727431389 655595538 17284849 17984185 834142527 227621472 543050173 510921045 330094277 892484387 811530450 449153454 335256490 329189511 865394411 254883633 338859685 732953163 542901526 96342532 882824167 465606317 490051774 723968037 57191788 758369467 30745592 647302249 389508120 381204865 79055235 369290649 972519980 626968977 408939657 586786533 887176227 124180055 132119174 734892796 455299524 461666851 14286324 609747439 628609267 291333780 950905829 518463280 110282485 488813293 830122218 151637776 811052104 469632968 984611895 619938731 524734995 306572281 296277799 398755414 126126793 794724935 20719443 3612398 612662573 554688992 425983150 797910120 949927982 229061896 351699582 228234810 752871429 88321217 615266698 34479932 399453409 861398257 555256066 723867964 33573083 900893263 625316377 867059961 977263167 357394181 212892790 534482687 329988113 549169018 770412233 122187020 643823504 629455340 6946141 830748656 776285170 50953287 167871992 837435882 505830406 562355391 771576677 235051929 6641011 697077811 234836873 322811931 360505452 614637990 101677121 722107670 738053622 977243542 191895290 77741453 383134046 98621274 23568493 454376208 122770571 428296284 44964386 549154077 483110325 546123864 82360512 380253417 802143788 402603986 359818403 602209134 196861983 48827678 305274834 224181920 459045748 450007094 249342441 25765346 647344685 624413969 170513166 480647426 518214454 219935637 187650188 599330112 652170215 471535498 806392889 615038218 578337222 145037006 962353257 92062469 810696976 337493586 983933973 397293607 201704463 685506709 751018501 993950263 507407814 613176913 690880606 690730504 348747297 821886691 62313518 72244751 357916117 867048957 14306081 105931013 730908269 627915180 787228304 130932526 704282839 138475362 60694662 791139457 700179571 952799258 497475379 806079866 11676953 419729137 45871659 165523405 531362907 251257750 477195154 521096167 758865583 921637942 92276411 695189344 37747522 676034092 257546529 350308636 926301475 788081176 176924833 652759163 715546681 992514141 32876125 972804078 290736335 50313466 943131709 306785031 809327206 13707649 415893047 135363027 976998710 811581403 238261159 487386342 926704267 424355452 953155350 788512244 361561227 159042886 82267656 452805604 192765880 110834476 932645950 998238412 64092419 481599292 236536938 462196605 121472946 928320200 807899618 53455211 532562091 405969364 474498850 547077291 636106880 429629768 809441136 174292876 824467311 886184905 941275183 26339945 723625082 85012870 187968382 389087275 612009550 46605847 795112749 39396621 248059054 308655018 429898694 426833706 382862630 77700275 962375048 921564462 759741647 149707187 325049756 738437133 930282215 367394259 581162271 875156296 333623949 568408974 138128894 100686586 880922835 355249550 560013033 763148132 538242403 597073281 168780417 657570401 9303904 326258873 897932862 721655880 459024908 78253731 130799091 18140477 819709061 780390801 879747582 207836915 688288307 10827001 802492471 438063532 324694861 573949183 127834974 486236422 198533654 122166269 16293316 252996483 202062362 902846555 962098308 575612556 749035698 981439904 110149357 57774837 593827649 539094277 368817408 579283343 216207216 34013349 517640131 800729584 525304442 660664616 346647319 795153596 640076605 388245797 244450133 9498951 964146894 76249244 821952597 806604160 668600585 708966888 565685626 290044800 744486680 889480452 321259669 347538980 334777062 471247681 420580858 539337299 4668675 956408821 113921325 595077673 771470558 909802961 722474546 100222006 411109082 629352551 210668816 625672551 302183088 883014403 727720163 992785496 749659370 572085019 616727992 312199428 757126717 188560408 750630977 292805353 885804082 795813148 986105419 350264737 976763773 767021494 960828203 590194249 586905448 266423089 668741912 150020027 34227315 921828154 59492028 140872861 179648640 790174900 279845649 769216944 469494433 76388585 349803489 671467181 736777348 435828484 826319818 156184629 557804136 857288697 267758338 519048651 874492621 219375107 649894725 855565730 168478387 180770305 716409938 867775200 292157687 906266326 851212493 550438972 271791633 123590204 77779113 274318741 782476546 49523777 63698069 89981103 397937177 955504207 847556958 512197101 907340464 799568018 24035664 502955650 598125946 740466863 906200991 357447432 537877525 846325211 93170651 720778698 518204261 444440084 334152190 69130897 497665104 31171291 790738670 270207469 691904421 254251800 893759306 53831127 498641960 726686800 88701630 305821753 489794422 439681667 7564364 899934105 698432463 905318376 867703407 636343352 379252045 194241563 558403083 628550423 30537584 102949681 663508083 340115832 696380898 177364834 560134177 401544391 536279211 284530695 911525466 986369164 718938566 95584885 815382863 951106599 126827302 353405833 135427065 449710597 653821659 779698872 822823854 951969769 238479236 918645663 173353402 693819396 470063853 502943936 860188480 669007266 41004885 124099875 281081407 565507746 546953216 853252329 47072535 873744599 683456481 741636889 680633865 661415598 953138556 926640470 457981441 450220066 639286559 75638928 843736046 202140902 983249767 593407413 659850209 939026846 129425874 394478122 493866965 10749270 95815053 96394691 403336035 676769253 632391484 353572571 578726346 279129241 751575304 370494683 133192998 365043379 749364644 848725473 600689840 48230140 153134673 690798579 702318967 849378513 579845284 570669651 564317149 860776807 373636598 384282550 826719804 875134066 789684764 493250751 583942155 293604506 715025580 44657515 234194667 680812068 568260410 302008892 6562592 181265306 632557662 806423404 294504791 685393508 278190675 273536387 61711927 90972150 8184995 223021555 253450694 604584598 871848377 359968176 497859520 581234048 568598976 274359446 71864012 920544283 218504232 666828367 864138763 871780712 116451068 86200442 303953312 533755674 122314168 217468867 570401292 199324260 811978103 15518200 654814186 731426394 813143659 669270949 324797376 664389009 602954644 769297069 195337979 286951828 396539055 178303717 114779859 480676353 235299476 577416191 689275607 968582520 277215188 894436381 268146944 328678548 890768175 769093792 733224513 399741615 120472881 562022950 5587860 751101641 82442923 836588932 611818002 641835499 784900479 475661530 34857609 397684646 360709212 517612744 782032524 15534695 117433381 540721061 166116464 919118283 828347211 657115054 859701104 10961566 463849428 582073129 210821705 509653277 869076602 379423671 706098821 981703775 886447391 657446934 272752760 905992700 133899115 560740006 305950351 605712205 686634562 282201644 446798530 385281364 72644996 349555436 96908137 318904442 348424706 368072119 90638959 381085881 153110471 593634112 553816469 670574242 939058921 882849897 326708761 488931472 915778687 280096607 325711460 547658965 844408368 225421954 673057969 926477637 167648814 730824226 236778396 164146764 89667228 112675221 728865818 679176757 409282828 433459557 330875360 76941466 75526519 400263778 892466283 11072832 834518017 187174679 158390277 468556379 630352947 761016094 502290912 39643828 832892421 858482565 60766651 346834335 415328451 643551963 96649164 690521357 704756648 757840141 852276059 731880263 859894447 44627508 286356718 355554648 344278242 858229 248787534 403209403 731843335 89122853 527374693 580061554 891388019 24970579 577887660 853017333 215515217 652237213 354295692 743498051 188089558 71068445 909049198 504706041 784180651 29582655 438326167 745921790 567961667 423535743 252364254 617017225 734556005 212002424 447527917 541866920 283273225 85478773 140739524 658787582 486781942 923361884 834991802 873676461 559621029 580506359 188225057 864367087 431455541 298684034 305385771 65749622 10638942 500213007 31820839 359068906 259844817 396208080 230074458 558720120 777020042 362527165 215144930 788853684 788021577 918846439 649102178 592975939 918336678 393862235 56643031 717471002 889720719 738979584 257254322 526043937 23219327 809769209 991131091 727518194 294200118 920043539 738657399 595838451 862882363 821624791 638250229 805347657 780825027 1268658 811731546 578841871 159467874 517320179 760500505 667819031 149938745 28783241 879610185 662462513 637486291 914224582 809070254 965916306 600739382 537759898 576995440 622765567 636106443 216290530 79121667 523525034 898101397 43788080 317872615 890287464 838956634 669756432 305326999 374519662 145078530 621531461 955982863 9720082 415377110 25804144 909903507 187672937 233955094 127089885 847581552 599544653 586744177 18765654 826178246 60357566 207523927 576241979 612053431 74687448 967022249 761537734 150142651 438149362 757606111 643037120 741118990 952822615 952295705 232396406 745956031 446502410 602450891 180824415 13231096 391654039 421536204 315740952 971573424 970392037 542923988 892992798 927961753 279289014 170488342 232946743 650538151 736143967 542470457 968606419 605622394 18996419 788658747 857333607 11570465 114878653 397722308 602161946 800127890 580105176 861916637 282899522 643330979 806576229 913127878 198910659 968648810 52511441 155175501 513682601 737383285 913771339 497249787 397787167 166499669 306678266 426308301 490885586 580331161 252115428 221840467 353498422 454805485 461213682 66237194 944256972 681470815 530463756 424989244 631771256 119359221 110740825 62847564 360651110 938452960 917831600 255771018 131065494 819702070 665210809 923074026 535649153 701275728 401743878 161690913 385257764 438128349 465949870 120564451 195964260 679833475 953279367 783496840 632527234 610848112 17560290 366971747 632082052 734818654 362648987 638882489 246902173 623061637 870590395 752095252 90357313 281283368 72510677 274669260 835252301 407610677 847591324 955057579 773745784 871074448 235531160 904653276 33897697 97644608 240838417 788094628 950202002 183033664 763021500 398747854 50859877 201206708 703350873 862069315 979717441 940937888 307433746 544675866 447516467 341743256 596147592 868210432 534547618 614660459 557114596 834217474 337002519 770431630 99671176 222371457 271412962 806188582 515715087 108410789 252250593 423086069 774330125 869273765 140739501 668588187 859822139 433789102 800391544 483480009 981295367 892013639 263193100 335378091 619767034 47711626 728210511 311792192 912066843 824889481 805233463 234904999 7905346 317945883 448106613 558737592 998561752 503581557 99254807 981616296 274586164 519515429 560114133 556741293 984407355 247384350 854331563 552320109 890469762 273617802 173223258 249032152 578767173 684348539 368536899 355048437 202344992 855061787 266310299 721916650 555233940 12003814 390323476 711632769 439995298 209068691 941696530 981532049 950913850 702694870 762701812 18787736 664505010 190436377 727513249 795449600 606532312 292385551 931886084 368035359 854530207 954938698 572519268 914275809 51997139 675140833 123447820 623094929 861495665 81624951 986666943 29285936 550901496 107068583 37300629 638399937 483563438 973393504 959258749 143947212 379893757 346363020 15991493 323871986 800559345 715201463 425693604 913406728 527050996 252154296 989998939 255492647 7887214 826137077 136675792 615038991 924095902 963457571 597516614 160950849 913069675 904231445 20849925 916856275 990076325 968359827 745745630 941201005 382513698 148807649 676209712 985770251 606691205 183023513 690201236 319437024 226717057 339607962 304666606 673904014 650191572 814286874 214839962 647352165 372839842 895403697 953755611 514387093 935462183 558079946 146865768 536384701 794684476 847320296 771009737 537521669 508256269 718505337 581952138 432494078 401037368 163272935 305467538 97326447 623270880 924908125 871701388 154088482 996807017 936905222 708486398 179163480 193768935 745012566 241303680 854010487 707852026 721905431 869513188 236382597 41038559 538949095 459364197 710729137 881395993 945187829 787115765 544913520 27033369 588668539 483921852 582429038 909276859 797641428 16763134 67777274 996491509 425035676 585498226 846561177 59421074 660369082 31415204 688408596 788999339 76525049 681495032 258765356 165828414 658092610 608899450 404309634 209547106 263679826 679957506 15401281 926126664 90255939 669278810 607374509 946816669 496458401 743069173 688979171 342761563 905049566 819167444 561328275 175329071 861864961 369850332 990570604 113383643 671388581 234936500 4435695 625211568 344950576 131180711 141234221 666808617 735204283 88506726 391118751 241596 205063219 256564254 105209294 960944105 229261647 71727831 529199034 761049606 107853103 616710975 752378901 793286483 698459702 731544466 117934000 322508824 776673327 742278177 557804719 898335968 419905141 814404818 373666127 81036223 48530942 726938540 574163849 597886474 907242867 584498226 847171839 314626423 591800876 294582806 389621269 988102820 338458206 430243391 930355658 553864745 38555053 92729948 57189493 384287010 557492072 585972428 624462358 746043674 194078915 521385766 525858596 670135882 847339040 68980781 141604101 211785639 930690448 785980402 762325143 66911547 454723356 569730609 430415464 340770267 789253642 598393977 27190330 172252063 150407963 665088457 391790616 92648663 942122047 673801799 811863670 223598828 591944716 82205354 630502441 967010037 756620009 370940425 428586117 720840564 107385131 50444236 771834262 99088480 411209028 167573189 851364462 714795864 615418363 907139838 251026588 632350712 527776743 784623917 578943080 160331474 457425622 309040160 942206068 503201655 905068681 306307396 648956909 350708173 578240114 131159985 53954832 665431856 707024530 70505948 316519287 608358122 120223238 730082054 473492384 895761378 720146553 627785681 452694255 415039093 672106877 306057514 772453776 660575603 708136120 782088318 582562318 791200575 231271201 747103850 307321137 987634378 668044471 333661016 779061076 351074461 238117851 295590525 752644550 481010064 268840550 48074400 364881762 546214896 865521928 498830558 58678806 437823729 571425856 422967778 99702341 411033261 14301498 333243072 77448763 248755191 659861556 304414370 28739203 998203557 216283059 34687534 549534825 559384848 721885047 275510631 98398824 488856686 316692754 867751546 401926575 57981869 641305669 662721516 953931176 931969350 283961402 485033714 321661177 91449207 729397136 553738988 796700767 885232173 856035875 896617140 967953100 163139646 677064276 467525202 630749476 493834916 16400129 987187424 125704213 138662415 824694759 781267039 941906051 835787264 443939858 592718800 45218237 202454500 171476941 284661920 46371384 134624980 944191994 271705649 322770299 64246526 841440408 74603495 299339501 460170700 134345892 257826786 581421603 87795355 333860206 364096629 614361906 137447051 775579201 807536433 489509820 597876828 128187421 991142724 677218269 286886800 8568625 556956978 772845271 38118506 763915145 316315251 97553380 757789430 580818514 730031350 217250666 939314385 972154532 642898825 858787271 231939168 227483827 29537510 45789396 759069819 305792943 299632935 422419561 750081460 494694248 203051265 913950715 681561707 60473429 584670046 227839081 79208884 681721011 598334203 177290213 757414050 936673397 463351044 13751097 935644500 897602525 887658921 382260904 181599926 829580649 679507942 138393400 308400268 381998070 969491662 697057034 513903487 557527670 821935397 550470317 573190440 324450621 179027878 434790240 540878164 143382434 615844055 391594102 81037887 983694501 296090487 240039069 401027387 869100379 68742536 172210582 291115043 473355424 814669623 176566744 872199721 672137926 81133516 245793917 668955671 307007311 329225764 686184406 848649553 52737143 935850421 978320921 872231392 75284410 405434660 669581396 784725142 870103222 502647318 915921053 458073837 112696830 237652220 608350351 890743871 543712913 410472454 233637808 917232903 964920992 977322465 253481572 920279221 976240305 173976211 586486710 516919631 786494916 172249578 503784101 784659602 852335397 290155687 940574974 306562837 567095775 412073121 770055084 963891583 595947618 24980030 416959178 653330214 180415126 368187860 213754315 119142361 702517426 52033372 29084823 208245213 208687915 712620873 138625191 850565635 9562570 20089522 554906498 144375059 299755633 131691260 790078000 109913678 391112057 304678094 97952605 151615887 874059671 608360741 43234994 848343510 378406705 476391360 89303660 289523092 753220720 159518799 433048922 44717886 611799725 809137547 426737712 345804108 637553880 595470308 32794488 35503014 256100838 152462536 294457646 804924320 203092352 43382775 398592378 375254667 440710095 66122761 174040241 854233727 401891461 21496411 948342355 128781650 460109010 253978012 448041771 203632498 11468181 731509773 216825920 875330078 148169957 800958890 939512830 577076600 263262277 760644941 524655283 535371381 101637477 98804692 332112941 543746568 64474727 356906173 674152928 349455460 123512412 709310651 122077206 224762735 185496327 144486378 915935986 734530878 730623607 297377927 370914096 176496633 526011776 39625671 878715072 854273089 986417007 691360082 447507041 746790166 990930795 580009022 314662054 336788369 883715807 612166014 427967788 34417478 755385109 153478222 66492392 994989404 781880159 271112998 141217264 682239095 184547783 32905799 943334050 214685974 981034933 844387277 710480670 158263952 345241913 218515454 897603270 846754866 801508672 64981414 553875578 24362481 106520372 921052095 152707772 617100820 434891833 162983569 506567155 859235205 333502917 302012194 157166977 14268255 205836081 518869984 376836923 507036713 339415984 941697664 518987267 734673191 51643073 179307928 516869957 352252876 598000522 552469932 241117029 736212853 22878628 73410122 757800560 490557591 266297277 556046736 697958612 477663981 654101790 905532498 177015768 623556069 844893176 354304969 881156897 525431298 74440804 443401770 455839074 803916481 238102481 569970297 189051684 327283066 269735480 301201482 423051929 617171979 369843142 332609708 19216739 133141364 994108642 654382488 249946932 515484800 456343091 855367571 829534123 13131005 465417928 823243416 144525761 433618757 449012085 824504667 645185878 90774340 615132921 850899438 472583732 10547658 587223485 929060560 112121181 886824896 356252312 360514075 951886436 498887570 579891601 951033515 583970154 28829299 972559207 507077334 603327797 909129314 687326629 508831909 266104019 424067111 23983738 808475586 896311734 906367312 684592786 729923084 608079080 566698063 383919711 282912480 206725074 576518891 341120317 551849648 879031390 865370207 850414111 497992115 791700792 380195165 577599830 429637264 48575447 829277914 448860101 121908645 798567649 462073557 2173628 2350240 287917625 979134074 157945937 930958007 751618824 815680144 325691794 334785248 417424804 766317431 356749168 878303965 655354059 52500525 18912917 812829259 124294767 656902204 185322505 551688139 991583520 666112179 758022694 939087293 631526317 448567606 933359555 84822620 981138911 770927033 363905662 813019555 162340048 381447474 462086729 627201997 466559846 179510294 759956340 823396694 806270479 548435242 870633587 727602822 927826334 400302249 76041373 124373811 17776717 342405829 603549252 603769109 826367143 979990696 322032610 784104564 271182199 868226630 205927442 116299779 601570129 58090828 442587516 172135876 293001762 505011970 855727753 514906780 670631207 596491473 722125659 95328571 909651902 870398559 28694843 866678913 184624415 267290541 839971661 488339767 445722791 546278106 70605617 862553611 277017931 784567527 435835313 222884355 930834261 249492071 423702284 109899540 643433294 6213288 81845436 522019065 591148061 971208181 201459844 461615003 811120420 106111333 407303944 845985490 194021135 580683904 66093291 352441227 253802520 645795010 814373142 522224907 23760491 147092712 89067834 704055895 111292564 766225602 850063996 992345776 391934166 991573908 920606284 241814234 614873447 865036835 52423547 293724556 77314038 935113424 568286150 552706779 196822893 540542071 53958741 821646305 588587889 266349642 220210032 418065419 108054818 750620120 607009010 66867973 334422709 239680295 423330058 998232586 218304526 868886540 384895457 537126592 914829098 888673752 269333405 441529502 926207710 656399508 937060800 559566749 179389032 474134731 205028482 173780526 649291612 314359453 10531 871997951 859039562 491823339 226569182 298150152 996979843 290540939 891617237 917881316 282210981 929746023 893335107 600438528 852007626 293777925 925749685 737692487 831873708 232377429 567873755 243858685 147501230 353081496 434437366 180989481 477334260 391875417 830035790 735041640 566112511 157604979 970927433 854810630 598547979 152727782 135668230 642357279 615727217 239894292 539181219 931916430 926008922 500855102 958091655 190356153 557997190 834512798 649891487 720352511 326329114 307495255 697325422 677266082 555424078 747721928 564070908 962976746 557426952 633282982 679043374 747193301 637304797 940464550 176438749 350033573 792546911 671766445 270617182 885268352 803446883 298030651 332860151 626077468 4592977 811737302 641730008 401944660 112774759 916180177 501550638 891162747 909250830 67592073 937578539 746292717 398927226 789431834 830435330 723823161 565735344 471016261 570164308 425679276 213465329 655338703 954288876 262502040 855121331 776756033 11783945 261835938 426505540 858773975 544193946 332661672 858235161 568331143 491549387 683755635 756190175 8966575 312022919 113447104 354452929 109422549 455546572 434341841 534833635 33587223 285532340 899101123 111660059 444986830 544289394 718831599 205740334 117221663 906777070 674223385 289760081 214812759 931428691 984981319 571128790 367793217 46301683 750156428 210739933 1126631 356659336 315950181 342819454 992585243 741294515 47247251 407651304 221732452 295448554 15763616 748787125 857297196 621769763 547801707 919974813 303324095 480915243 320812318 636577920 377979087 144938189 855398942 846031281 59196500 718726142 427643628 588649055 847277310 915851953 653544084 796628828 323157886 793056837 66594777 719545660 41102676 293291671 550070167 168492791 220749768 3381193 922277664 243270859 899220593 577208574 721372353 846696276 56840211 725539835 98952185 664175366 212070271 633148153 417908259 574582165 447813918 463678543 214719190 276781414 611504631 735504100 4516880 701223688 251192000 486958488 780246694 998022558 125111651 205084479 950408261 314895592 234321884 947098242 37955573 553716066 877152481 388449369 55809177 461115933 756182223 424036457 119818684 175179623 649961378 214850623 536940050 145399109 23975516 677408098 320133047 91130795 912546173 93374620 883949333 474438200 232216600 541045493 338795237 675840559 854625642 803158515 109046754 896154280 412247904 507149420 932437047 8576684 841305782 488034351 232422560 237521600 364123653 51234386 209406377 251009312 843259253 744005656 749658392 365335099 128581243 404274909 510434888 784186980 751519390 148064496 9057579 432421382 192121982 884112984 829616996 25524584 826294273 851602211 954172401 35311815 367560702 606605211 377574012 734860385 742333786 680830559 874793230 618994315 562954158 116361712 948357847 229019617 479625172 260109539 769515551 61869784 956131173 813705701 746591192 42294603 575332741 885465908 449264307 647649879 82932463 964841763 949054425 283545209 78270128 348177876 311380540 898474090 784072143 364178637 900670249 643056110 610489480 360078755 234442359 607734110 145641986 472732518 450559679 620280864 245783279 805334933 631787099 131246082 970428376 170248452 271374497 405036550 809443550 967394067 240059497 772667892 673330969 465012820 934959987 256388611 219473189 247727537 383001874 161460869 706314329 571893958 924230868 291741167 705638633 954924055 311886252 386973639 136397308 953748460 275001772 169524894 985575478 322613854 344769699 653815833 42831202 794022400 779043365 481920437 946646553 424691836 498352218 417238616 314527582 260474063 969807388 690783130 388119107 493239653 812375796 256042874 484673920 521289996 961278853 776250493 118029064 518215323 122232309 504781831 969670402 304857718 335186673 402422774 421771119 935402662 874155695 795906884 258716805 549730051 146531784 379511231 942570329 163868728 214014460 129425717 507716567 82988652 864610251 865451934 733992451 22366019 56366633 438425729 887104311 248836011 651605391 541647655 585444158 737104378 103329021 769883730 296326471 776810474 828471731 357907955 440668199 407343097 530916943 859472255 58131864 677083284 474073434 899113061 629026318 700753240 805327931 795953784 930931822 179948554 714522302 36866456 299471609 995748149 616333194 159108867 523796367 153179459 732664129 906470174 848141353 324752663 774264430 835385167 631170908 833440668 946483316 969653745 726406491 236162511 593802573 628071747 305502293 835927554 362755391 504313501 867018340 401303512 599301004 941277021 970146851 600420390 832496009 906872182 155581799 501497785 51967816 177843731 791159906 633462980 679801155 444105902 585610289 203508504 448314386 507362809 349925107 121420159 42137262 1718198 327296637 883337365 296562065 803455329 792661223 837267303 719817561 3236667 473253921 38181207 657364177 569323271 203391870 116363833 806475838 623775086 57963555 16573539 731708032 585337919 14107261 102523251 508581428 424964568 840650995 433736027 134650278 646378960 290591054 876158826 190338528 901779708 663552675 327950965 862437861 193089422 671548173 795404000 758150444 892672516 107167829 340842936 280467698 723861306 673400177 639490305 340845047 93031949 24470822 49872271 958239820 399156571 7529139 702924405 172220835 781581033 905819330 831367918 109353522 499042297 509278150 273007551 638122981 632105564 197270782 903680284 846844241 292094125 961123500 372872424 43207455 289277689 428314556 284558510 728626987 428370405 811371574 11400767 848922801 123529384 183189058 595678528 942105933 250402251 430894557 455983968 361685239 283356078 797670136 691203059 437475784 390819896 609955904 728296999 996159880 697174359 134833818 736733625 742848921 663688787 64869126 948776007 100131391 829767405 106641067 793616837 133382262 614283410 323569681 139620405 181295818 635709191 647502858 444221762 544947421 675987866 911521974 550713434 680602671 849736859 221746652 65532318 947319827 443125958 414587836 316503788 603554145 447192953 156499299 980187918 925542362 644963510 818034771 337813098 123279387 508965734 755485280 753060166 485980453 566073142 686280744 344957368 405364395 871973607 33064443 169411805 241307157 496529003 315792625 718625797 242474996 155988415 340799280 907256712 653216459 557489108 892750875 155564053 270733533 750060617 144552175 435399129 384486785 85338938 570654884 740127725 221371115 465796303 516951078 826699396 32313582 573235932 389631204 3990504 590718630 347519072 751524678 419865669 452511424 939130423 178778309 409038390 745220584 867431299 577351318 822033549 663375625 87352850 315126454 604044796 704917426 954708449 18477173 483790755 892865934 867408447 219352179 735170142 483585806 699330461 207602703 945921348 285444199 435391411 728275111 783979643 159569552 664434773 474446613 989574378 15637038 14980184 302487044 691829036 403679614 508528773 899441426 529280328 814010731 672822166 893962523 751723982 354392117 449795140 657375981 638445894 66448159 436366112 319661642 870337203 453577603 801776312 158099324 144675881 569215776 703952562 210195034 882404514 941574454 561159477 875270031 467193795 346501567 318114546 544610802 456208898 359969211 619934937 844334283 472966197 325622161 967105581 888581811 760237301 785741312 247363613 137991287 585834008 182311718 545513796 625073828 309623328 173501287 378785946 353023289 655617913 985770167 291638843 982527436 653271716 357805020 501438045 251538436 106969238 502004382 392474568 852618910 882715579 802120663 413041889 942050979 873103557 499981669 915171756 845294980 572377315 729827426 651705916 803769756 296065217 592421365 750787209 381044254 462594574 285168921 949112671 769114896 639710857 951027169 681497051 403753170 632436783 300865999 523151681 374136831 725473892 203414194 617002144 281254243 31949675 703231193 116067519 153213941 828790043 507011878 123588476 661195213 888157474 880521561 31890533 226157014 619311093 820928308 326814280 199445941 207130806 492765786 281929297 250639739 650004968 843169861 347304343 887389462 818343544 750176216 34895196 634449480 489900565 704796371 293676424 79077709 100216870 430648590 621866922 88782159 546998842 404948714 226128341 174409556 469428072 308167870 445806413 112151925 339305514 411425797 381058245 547343847 109743488 19290603 730805686 682651771 332465861 210819941 643368397 513543257 873839355 9459436 189503460 538635876 952533602 801777683 382309592 50615119 407989695 174814705 649941470 812134227 891087826 64353991 994448965 694759169 559160049 772908931 410214517 300259394 1493825 322711412 108809160 816274811 679433821 134798273 424181541 914337421 70427635 308907192 675848306 505965136 300519765 487445589 425679505 62439126 810516406 599329724 132580908 851976309 37290574 881196363 56856799 31022624 401430399 192657247 132270731 426427620 119736505 389806712 274619618 84884857 54484857 543999345 159420028 484062600 288353355 335841214 571074518 290504766 710772889 121104844 659989543 821362534 967623770 572190800 85342356 971758321 743965473 897547404 638962329 529999512 96504802 851073445 451525433 117893761 412232112 253904384 470250000 685112068 710556501 790842451 838304576 505777243 394661833 96249087 593003584 991844562 128566628 884705230 888138290 533274615 67425204 970533765 286980370 13147785 153493143 603946008 633630964 358655181 638861835 747252187 436534662 984330882 254385852 963500836 776347873 906882490 9386406 47416898 548963476 342855206 304884849 956834322 235062267 725772183 658688203 818631721 270349777 321716261 687584088 568494475 384257629 199272864 62687691 205696968 968300568 100018946 492010696 950170842 608309023 765178182 999996803 776598845 930716194 593501072 18458737 715589065 231158410 627650574 661274718 153166889 365579941 524718485 454447261 607899708 453408527 431604624 924641335 103333145 287947364 544280766 98611961 712923695 311362643 240461246 321527467 182894635 123424949 244252134 83660312 842713580 202385615 361061336 914190002 413704271 804804685 572524251 626394261 830848590 302455699 307966284 117192398 353212362 167250776 330572861 775486770 761553432 408521076 159584080 628795867 127320702 397171556 732150257 844177389 594697917 144580464 28993363 949579577 989517750 216481891 39596899 743782929 383461637 532295758 125757351 839281707 406355014 420883491 880617571 769483972 566696675 389823298 468039100 988408417 874660190 757079528 651541149 424581507 342960468 122256714 17042177 82415306 296030387 772838438 36717999 799135527 978444857 386997537 767121631 380480286 127124709 966680764 399031099 820520406 158715167 53197663 73399571 596487271 756465630 773991237 347560204 384302440 523752201 296182126 810560855 562691252 498400673 999989611 790622191 831609841 358007320 85334428 688444987 23783277 710553295 248069012 611039932 252351486 853840335 648153757 108238291 770320901 407667854 636552387 762689970 687500241 184555623 108349148 741017031 944075057 433931020 129881865 62145476 583332726 248501251 4973376 930255560 194650772 150509090 537789791 555479042 868583179 1256954 638917818 466945775 725315677 598427212 101600262 95120029 738789361 768131726 313062711 707873188 264932406 100757711 14166646 996148219 570002614 922072339 513267894 579261433 226438311 891803389 23752429 397501432 148481147 491146915 658430876 811735787 269308204 950683466 909741563 478117920 651178374 900438853 200376246 867931794 778631943 152238234 5748512 224012118 124132840 545005978 929430025 593611665 79926153 47107577 203061265 214610025 708835986 217028494 460209505 901920378 815028049 962205745 473789754 24156683 688068034 579051453 126342531 437341273 919194692 456740498 219728982 421828251 167306737 130294611 939876493 336750870 309354387 115387698 939841643 591604989 73314059 369053863 627277902 366341855 902340778 905704391 582936309 444935104 741367459 997337923 473191189 934725933 346613181 633302219 795863988 931394361 463781299 64103361 499133162 215028718 982527774 635480457 124559374 605926571 570138917 700281398 741217519 541838716 663685999 701168777 87795279 670596639 72255430 80491276 784827723 806036253 718989213 101600274 56767708 96973924 796335828 53582425 408879519 161135435 544988491 571531870 427701677 323900137 455010163 243905596 200558800 260124321 797090298 475935137 642189705 131774108 638050105 963650679 945883054 319857435 759240334 394744693 876130441 961146192 538338743 127355122 214364409 829049144 992970200 736509446 243716111 720428830 911699808 129447168 31169678 91317694 874556641 918612029 686747036 673049653 493997430 660642665 979850688 790745735 450875604 435822675 84764455 980670174 687565399 580180274 779895239 604368657 811583139 658186285 745904190 519089564 219139921 16923660 828390122 951939204 384752533 684955213 688859932 751641657 892681095 380239388 908959903 68405506 450144193 881130295 444278319 868893583 932864497 654512656 872573983 243509020 399824860 60770061 54212806 899449379 348330076 350527912 831219757 715668320 815080977 180982999 942281480 454589889 825599931 130869414 692578309 56607592 183035241 724731081 566903769 562773760 165954840 687229147 248484380 859035 27361597 809881077 74337238 794720088 341702931 948351302 419749332 889186843 993315542 251362487 207285002 620110838 110287248 972570899 56686139 243659287 698224670 973757108 334888472 921227102 582444103 120634395 512436644 611821333 823653535 539141931 636183053 289543309 115908550 851857264 690301036 420605066 194460433 364592317 466933079 23016833 335801896 341275230 513700772 489923451 5178396 301408730 873533084 124061994 503484356 542162719 294367704 963602563 975266618 919391278 23822226 665665152 88177876 602614003 517135120 157903113 253718919 345722290 270548630 416640423 801343874 598016777 408294722 778446037 453558737 22082882 137729378 839923515 399440452 266782984 270692109 723198142 841966129 266132441 101336447 611725280 475462700 477982716 975222748 247769267 770911915 99871371 28873047 197997719 986351511 340145650 80396802 612788336 306718808 869240951 28405299 737739824 654343007 508813705 294395659 227933107 660275167 557291595 513338758 901408132 696067922 983138330 804180115 689331973 392415638 151871366 856383935 334435848 732785036 579916933 682386588 103385527 968336736 522573079 274548051 982432425 128795823 908515281 126435950 952326525 661281663 449727997 856151860 863688127 972225362 254448877 537700444 189908492 469049878 143192263 467045587 186724281 472969526 527087081 486105154 137091455 259512260 192651679 997066436 510607439 472901111 405076011 271622607 678262834 617224440 286910768 274308086 238771251 805922207 316348565 120126972 852505435 893472613 849922626 23519094 418890722 19437234 400126411 831501436 851471597 41051262 522123748 378892107 84783106 66229244 117325668 299803057 335177998 848270260 203481373 121249258 316640754 331111587 150300133 776890624 323745358 228846698 785297690 973271081 359224625 680717863 861067258 498951405 443325820 350918588 673103835 463715220 228799057 80423638 530977227 670240859 65758659 449472093 257364498 491590440 137934757 331965621 567796642 633163815 24014447 360735993 288422025 602934671 980951883 394452879 229315938 593329722 472039947 12857030 438607798 536536796 382465254 327538717 577903389 495483407 954347712 364233882 448572570 139723038 498167134 458043403 77840861 225790276 179459532 501626088 293059219 26959481 547942814 896414227 379424631 636900630 443264406 362035795 640641381 736724349 129751571 552177214 729474254 516045903 641435340 789433688 91717138 999141649 712733802 823910668 246371001 900563551 401196749 702132856 101315978 560883403 272397273 441940609 69489601 599955495 359784550 23405336 637208633 981725582 990615628 434941679 669643652 745327666 164519070 626540772 363316580 527748919 325297682 186869843 440654306 247196949 768964505 897964767 379830859 147434964 931098807 142010110 648777114 135855940 101978671 411971202 511265192 305715709 222960221 219070615 989612708 562317832 927467315 601802727 979295987 655540526 973175325 545543074 582627864 492953325 802001289 136590328 760136261 97432296 77506330 114039941 424980422 751346371 131936043 929431774 673714193 410080701 110663836 515721180 969092706 295441703 907090897 284469677 431234427 26562793 642153941 202426035 84567673 342728117 482502722 806498559 41738479 193082283 971895746 623538780 229575242 442177448 382827768 685878483 996288603 669467163 536029986 820578760 897724646 785069106 720109136 753806259 855818758 88076370 587296519 346645942 840622008 328141745 767515312 299944613 429492206 983332831 644265514 608618191 355451112 726817573 256647553 184345911 502487763 17970220 816857987 181935331 631640910 607073059 375081433 214010911 517921181 867914216 969429262 704124277 431963977 679532048 874769099 128230257 203959678 802829969 758619680 466864570 882368864 885898582 631889003 567328537 845394501 184394149 426305266 991784692 170871358 603779340 859887916 651860069 501828006 718426755 255313156 431546485 918755498 396100518 489656956 913769885 966179980 97931870 535920926 338106603 982607897 869773069 168721053 625434714 753334354 406569273 41608827 883826215 70263509 679781939 114274378 153455821 931755614 904451512 943136669 148402593 695727699 77499303 627700069 138512054 598979314 210177710 208962844 852696814 107783374 743531375 472075360 661420326 749101112 696686826 314282918 341815601 827927358 184128405 994769273 20575149 608508110 343029763 495403167 44135066 425360370 161080938 631044520 300656318 77887531 899471102 741958110 410016119 335149823 382818454 349010503 584393409 319591588 197737455 513336568 261727507 477798118 140187845 322435186 964134217 445375475 836698458 162323082 295063778 876779939 542264242 340193460 593985318 336730954 889320549 562680244 916066524 889400970 465171926 305001444 179469880 48182028 58108596 38114725 585016267 156554564 560656109 435336493 23903559 694765431 493120621 267153103 214804458 168667258 861543975 595413266 467689628 704143710 928505570 869951571 16850303 842481897 571910901 714381963 529120302 738455264 245660004 622134441 999797620 856709963 340708860 251869778 889422896 468642331 344135804 453309245 847771764 452745996 856712034 517407927 808265608 766700492 460697230 888531028 898904857 250833274 373619548 493333678 845454008 343908248 303671048 44231573 175984224 263347542 921969581 317308233 527619645 443418382 607363303 401505772 218618426 102677276 827985637 687771285 813096589 786702875 974148979 767694220 789089031 793861994 534494245 528844459 218680956 798820155 865413533 52387483 275321331 795673472 162476453 772070246 579770420 18909641 856366062 579575323 606843258 241576709 12337204 803891570 776920413 626234547 883229311 669830906 24705560 322956893 434490021 523650581 263792382 17207893 788253996 662466810 268411631 525140447 896665181 439890397 112137004 998084638 456768525 199022858 534783964 345829891 621427672 356685789 161188612 899258966 838097926 674041020 206006397 962821441 736551526 841798615 97554071 271993604 644854308 168384985 872192124 251030431 827309951 18228096 899948712 489063822 724549111 863641751 991101764 507630866 247991356 372352823 403823419 556468446 40038251 510211764 152713780 181749274 285384062 750192656 564090380 698861202 985519109 528170739 961695744 689700560 882567942 445242316 925643130 868609221 952740034 699452268 926620922 495817485 83411221 499579033 404822472 206916580 977982792 219078650 660040617 506402911 148403348 812378841 271281255 473906401 813523229 127160442 24938547 937068231 420304236 949794067 392087252 308283686 143322812 626714571 553513384 335427994 568104498 956417120 885274734 69250114 663126092 689872045 797510174 504410910 962732294 892557795 709473274 512519107 116518316 767524299 291935394 436624568 768128073 503239221 89129529 809655823 255271127 71344180 404861430 846198037 779040842 362579856 550396953 913291021 128178190 52262744 373184491 35311980 790240890 407132204 919739813 833654061 997647241 667238898 171374343 771433030 601295941 776532397 653833249 530005036 437964981 307058109 98106337 930820388 992481914 167430085 823747990 528781359 793930318 627759082 180925861 356171876 202019588 76809397 634281358 197662508 534850238 567932015 929361569 534787816 461487561 865862575 47464532 252813114 261509545 13993964 955396229 811155895 308160751 931317362 264639612 470313919 708370500 114274005 409978823 554736730 788236098 437780248 9116693 50215322 504094039 31914213 520677665 928862759 918676392 604554105 982249970 878964023 296795491 690557243 305693873 715328376 25644312 226500579 955451278 67818000 77219251 544955450 407154092 81486506 93258105 911751150 269438758 187539829 295669913 627488617 285005080 158106595 480110935 434576667 571726166 108327387 408556836 476201991 21570816 258687701 840102788 740342232 710353295 411609636 287286546 875400918 474505314 485679626 711976911 618234338 651817878 306440634 304096745 284537014 352206623 70726567 767502823 545171364 653618264 217712901 768609201 529011394 446690389 911821850 881123840 462471797 79498123 830204165 13140508 451165099 364517556 946694634 373769419 196630016 482855558 876607133 56076798 152393952 798875924 22007126 319523342 147253907 739735715 707682022 394114779 659533731 752486179 829825796 11314330 2220603 657616508 68282876 160384744 419885243 451262032 173043364 448370847 414369107 934627586 480053743 755813112 725484960 394033605 586740459 261993323 173401816 972733889 245481450 422504950 862745771 533645484 114037665 985617822 712820321 910960847 188744146 548933513 677118895 845201795 740196910 173499029 674139513 100022659 452428427 528291792 518930959 520160825 135223222 623241433 579345548 448604326 630096196 822209290 169370813 256760338 328831298 627879704 261844160 567942384 363338803 408791027 965271724 895954483 976221015 858400723 611853036 297905060 735874945 223249404 896350060 921283974 70978649 339384194 865559159 472101602 692625822 887780425 690937470 836638477 661870493 498095215 171409423 877856430 332529894 748997759 176911121 798898619 981598077 119967885 62654663 567693896 584578321 174005902 289809433 694221772 303445837 981920335 531643413 928355779 621220516 20872317 445370534 698320018 197488029 16486581 586586329 431130501 256748171 161293143 880384136 441134907 55564031 416022686 152813397 421476312 589705123 68242077 393675038 904183851 404442988 861342610 722303678 534674229 559434752 145006378 158779350 854955345 918768951 420309644 719323396 138155593 970389119 834731015 635451094 925378651 643099378 404886700 299267673 461541097 218518587 594796002 49982025 121281102 855946056 39101719 253124276 589228719 948191907 730184808 761930175 556239593 437263449 292893607 835194652 380259318 653943836 738215076 215248209 866816069 183256552 16572935 927361537 49562218 360149606 51483320 198003862 291954757 926291999 82159742 895308352 337834884 728615233 617384790 596928504 144889421 748247042 775495090 590301347 82918937 429997264 466934159 511924331 519278039 875647970 931854199 996154192 654918095 670604058 31206667 246448213 888910404 732159778 810312778 703796997 322058104 971753051 161578781 52077368 995752932 317181613 314666961 773582472 305598937 233303424 917467744 891455604 718505503 346776401 667567413 117388552 532027874 391814830 59098145 649696010 321290500 824761943 480150787 576893504 846149677 133099585 210275918 913302240 88739154 500233599 435907444 750487922 994893390 622312286 649501051 880808032 311701991 600277700 164430745 359651548 812179199 246753611 397901858 301340431 779887677 225492119 277123716 637038322 828680663 342555661 984598958 291908903 521442638 79668413 129523699 901142677 205364632 938577422 709583567 69890591 657495539 339431169 660914405 20404556 634633760 819021152 507715689 691697179 586806954 202119750 215938958 181633562 794642013 2243624 870240237 96183426 653332441 421343375 932875886 404443851 863938012 140298097 728599469 538493516 67432306 923960427 102976560 6230469 124697590 253874518 608060833 184328811 114421061 989145419 176871100 50901840 694018152 995813028 333046798 453983452 276365591 858000898 93617518 680447463 19422184 934543320 820803149 730190046 647046422 865588344 772596539 886768285 370927426 867563085 716285502 648347516 321243238 379568830 424684373 366132156 247126121 301076273 169358184 748489603 246761339 730450664 292392689 304034056 761495237 51079189 188729337 196544642 994647081 341534035 875941365 99563250 937183911 784541386 148071321 678772354 213567995 136519845 130885730 815969058 63077164 740599942 586263687 564575881 518943526 925638582 707560488 107218683 749571973 652064239 504701312 623883225 469623871 436963037 317505701 14220138 122364529 415061087 565800408 839105199 174555974 135166049 80793520 230719610 125145068 978365017 542782056 50664056 903756611 779272398 97321766 808358617 748382486 583172788 678414328 869974042 324930927 147710347 481235959 820786670 20721403 943056934 261686224 129383075 380776280 667994095 479480343 628302584 439441660 891217767 320043421 186129887 257112785 139475577 414861489 192131673 468115193 469477734 26274951 258301357 635799680 397369284 888358443 882176915 710272488 30316285 880663390 550308477 595309915 179043371 452368613 628948827 709552133 263795629 2619466 599845159 69204702 216041102 785254782 966166354 691538740 299658372 732371539 67685574 729690396 886592127 176738604 636150306 330110743 837436280 176145934 609292149 453816857 216524669 317779507 807635622 22209750 813635595 26797245 783960636 762407469 373209273 272603063 487146995 600054007 354533282 455595287 947404445 509527122 423161246 13138164 265497675 762899822 254290271 659683082 615990386 742000175 934751253 246926904 51544259 584899250 53217188 438526629 403359237 670985080 176268836 453428855 921884821 614123073 972025561 621408431 131152608 198483378 355598092 66782513 785873072 613793937 970669124 839071 940393255 295048385 75270276 745438536 596801427 499626277 576983474 601499141 226851201 300723097 776069284 725041496 686628440 361002945 979191078 498385833 253621063 164870283 773611535 105702611 508169783 178684852 52338637 585234975 240742810 180796503 874563106 339297844 569442334 626450321 395648404 242132676 350250930 528330841 395755941 613077685 544470741 53364819 413926816 542299933 950991662 268062132 378292020 688814812 901209389 271469030 565614578 824063872 447304170 790408818 71750854 675306699 372985318 320494160 295105966 526775519 731963561 863032614 652990083 746966241 309099509 161614656 292185662 869101469 404249266 746264298 622395129 835626367 300241300 493736750 191373327 526601814 939073549 531473307 786632475 915962301 700791227 388924030 844098079 451446582 705196465 652147366 107927240 926777446 459566402 820891600 824113760 101774099 782052304 521661712 802547220 709745447 960983508 49151354 40797858 518297012 549353884 595439869 847649151 193608820 628017147 565736624 127129791 991156620 750612923 112064617 327968610 113144717 843934433 249172979 697634525 640879456 537720607 175589199 451745563 545244909 295480765 966317151 694323215 497758140 896637447 845921878 392170048 320282002 768309486 535816001 202193100 583374888 49022279 633979112 485630166 623007805 137213584 78110016 139542682 621026213 619669489 129979614 623346380 883499408 970817650 732718557 115699987 793262997 706805756 31856852 874191338 441610955 647803922 927125277 703467078 650763082 96202581 877254622 387125572 244653891 167909263 47750270 646295180 52470690 146911792 851217874 690606241 28986097 700791038 446128462 630731182 711479371 460227390 77012691 453517122 254164263 417840723 903570536 966117085 578329810 551771556 405068340 174479796 973594039 407988364 417808393 152189902 896318671 94015505 319468627 80253717 587419682 557786531 834102652 799185010 180073904 511706374 893938184 636475070 57954946 247576868 41791159 669815236 427348393 106974392 933242972 934936542 684793645 685179576 35615896 132258222 224117101 982091734 985143781 845997667 812069845 282111685 260919801 871901006 188800990 221201699 906682801 703252515 637692229 237974681 180708991 603883257 253171727 106048780 174880077 69588543 588133726 370606380 852620523 607177546 205866043 905083965 960254569 551830811 121964812 156730355 901251044 816527468 332214781 92297251 543345946 28198618 665165044 140842818 964054027 936680524 458633599 780419782 582854597 44849725 235778981 446518898 60745526 606353245 736185264 955128070 17676255 560963141 458568005 53513166 624898630 154303108 460810249 883578834 47438308 697834855 54039453 119006361 599011657 64594692 214950181 749571236 941340268 659772589 861420622 143567840 906438019 434383533 722446524 907794385 388960781 702982730 373094863 274735611 702715855 467574796 100204353 159861486 115711462 440693862 579583183 245864350 968996359 392240637 963299205 876500189 136279940 202167776 106471002 16419828 555454814 998496733 141972929 262755500 854958413 119961549 170874785 246941839 700886918 140515224 92718251 142092253 232700155 407718445 447155316 525938829 909828256 627330637 246949438 306695181 405676615 381862907 209663329 667981074 919662935 943465790 43537722 539237994 629302105 49372641 340493859 6783744 977368875 107485593 815432752 187262100 663395673 135292600 9590576 324867248 369260035 944906827 951800996 842999813 796361835 610498015 744316774 914149932 966202740 691476656 892223455 181038076 213959804 79176326 629804102 621471577 366549227 829551015 199764254 251768259 713783395 758658364 803682976 74085938 1431872 773027007 537486490 973626806 624336802 361349678 492928631 203556462 430118211 410655762 889354849 121166284 492212086 566980385 865620995 280724020 647471301 262585150 618751525 916865128 896435967 978603722 789980283 304643446 402528598 697339846 164240928 908795088 424173500 915987635 496858947 866985375 418109663 188967301 610165777 450066302 120782866 9142133 652843354 388850203 945738512 119474638 818382579 106046326 943966099 421497640 276222749 589334894 834819428 652339794 882025007 904912982 395110859 577830268 25559729 25284450 407360859 521677522 866081794 383157814 51702645 670494007 751236423 963724225 957835393 858171590 496345502 334682850 974513075 642938615 318823346 97185896 772245684 642322391 451688094 933600823 199085233 433835417 724240055 201564302 647364797 661659884 135804163 754157806 961687493 815557022 913224747 827900263 575199115 617893236 939473214 859684909 507334249 46550451 486795185 522088290 373820466 860542767 214109354 858137782 2055544 922875868 115413596 688767109 23245148 736009313 689768944 643659428 198004747 318592532 940644133 50858451 548392219 981469994 875573034 952049235 46855466 433095882 300345208 744764764 788933648 544790891 607173667 545531946 910587312 642803490 285340522 199742225 419496937 833931322 998256111 424039053 299406219 304783309 548763557 29791352 463258605 428044355 758319325 975108382 616007854 728997845 140167648 807761504 184201076 17948845 344802905 856954727 519253569 801025317 22535278 261323111 356961906 588086585 392483089 305914963 423024874 451304579 978585506 830826042 315578485 354243381 323565347 132151711 570571692 678462965 583754407 964150319 801556858 767421745 966225972 313434633 351741834 484226864 126891987 526035200 59683936 956354374 719458770 196186635 181581837 746946014 90995095 559876523 518841873 345662271 163740977 673166810 115478192 150526698 729386116 8155844 941782234 194338458 935581970 880653040 47922108 707422807 204679622 133074644 901265497 102209991 493697463 737029477 285083753 440358884 604432134 156531839 479777727 843353469 381932729 686697919 73386145 885657860 503983933 896664222 488080108 434386641 608641505 485377070 107380122 546888027 905330281 728937512 45020950 895053903 343193089 44920630 618743875 735021431 855405157 263113298 120013258 134818517 74544466 934034379 614750655 232722488 324536078 664739237 503124923 135809454 991834127 190761978 334345680 143352443 863928513 326944694 298639104 391335132 931882552 527467605 624152732 968229773 607827363 838722926 922341524 48877230 560102999 446972325 150191428 750616905 544460219 199148520 400013453 310091338 733281814 380808317 399021491 883375166 488254952 322772091 349949845 592388250 600514636 518247960 631499703 419392110 361361629 250604176 980084276 329770200 155011246 830375483 383003515 9588103 228598684 704164254 764348893 222404179 892850133 283701471 127571600 331595590 317036446 890518383 244575439 785537131 768966491 12763616 657687043 97534512 769425261 628284087 740422962 247655229 782896365 428586824 763867510 858490927 977138213 400416761 530420375 740462066 556499238 351190819 877648047 422149372 175444955 463944501 142216339 506195828 140805742 315722757 169798617 82331396 929315893 153974593 277955387 648518162 932952509 304949500 865665962 381478035 738889426 821031721 878060552 966230390 223300030 625947338 261870650 862321319 543333103 168379748 383334162 273172583 403632078 695351581 820815030 321226776 546808819 622768074 382632320 521091186 862457708 138471193 244208647 633675488 981700170 318103860 147779791 880073165 247573413 29548219 867914651 326546597 588602548 133577018 664797274 467885310 336539110 420705376 514364117 705349154 762952103 684092246 448238348 342631886 69919809 87844859 46930793 601926402 358062736 720424706 176442003 83250985 660393323 125413831 722154513 965558687 789397251 721584012 658732628 87762320 683507346 582349774 430059755 318223665 296095468 637393340 317381275 578877904 444869104 51303264 371772936 141389798 999463033 299182871 786835942 222992329 134675056 623884472 679619220 936053003 496033742 976395182 4622358 962583988 389266098 423717892 533327464 189674518 343246491 194405700 364718400 560131774 301471524 349582278 398303908 362987289 947357171 475276755 931186441 102524374 408043804 668169366 206218086 684931554 34050073 701055832 573759903 213329240 995535326 979192947 995956491 174410956 209200653 694414781 933508107 53792941 188922277 444473060 285541396 168654168 650452571 35814273 301117724 172501483 5373552 619321374 730606590 445621983 950290525 152589408 159764636 509790799 104412858 707944216 646173014 33249147 402911828 27375728 686982189 627887614 843442241 740954140 172725092 959124512 131785278 952545112 120568663 839501597 333055333 556254378 364341416 58604254 174762114 741496845 282785619 141809442 66307715 430048159 999437677 454726053 783744162 860724823 654105222 655267038 589186833 297015728 347126273 843792162 835515426 567694312 749505099 750317732 878331318 95945633 984774392 926396204 340540696 507010868 90622067 542356669 295466205 308330766 114215650 395522112 144605844 946946138 558560873 231974843 122636876 830098967 152229604 467512030 44965514 855394538 344452632 442393930 588265240 937575209 494059104 39428802 542418160 385772204 538354157 3111292 549576925 89121239 692064485 450469977 204447243 523474163 602855310 52174121 567896498 580071874 4554156 665340220 97477396 453637750 466572985 366264168 253430616 877103216 90289207 14067296 955169333 635401630 595018030 20774981 363946233 488475343 504628812 281606733 321694455 928775427 102423245 114171949 51613455 54287845 122275336 847603429 726018318 653139012 200118326 827426390 99299804 401252458 202102233 589578432 416057222 988182281 331060927 311528872 739949109 225473294 871786143 806269868 278857230 476576836 322984156 981890771 929879910 464142029 424204274 465840001 726092591 620076244 13699807 241415566 810301009 433737236 724406068 643269588 92226146 165093644 872912894 289206727 64086102 828316774 263779367 4725560 827851833 168301462 676331098 877103441 113896535 809213177 819494565 773877723 290892096 804571299 392816209 392812566 510029279 430989201 60807622 778855051 687672758 686585604 141688447 778344978 457597397 959677907 51440503 213606227 857955366 734419427 272504807 488725987 421387428 408363411 263353284 425730564 170426723 146165061 993506994 185190406 58170588 800402130 48342350 507412147 956130522 994451930 769562961 101132078 66891210 60664637 868396332 258899187 283729449 854763118 711505948 51255231 214563315 600957899 519367048 27244836 32141166 744088164 923368463 713757214 14978780 427199212 819206803 390467087 273242538 901670998 554044907 14294912 450146777 44228826 74910641 699066283 279424717 252461501 746812389 894804317 271428611 263451170 300640889 652205311 724325131 925326436 748709600 726885403 811545685 516570303 706873913 786601412 551095475 439839659 437202293 788145719 728822149 688746704 970988453 178218493 727990368 352123694 890379437 314331135 514079562 383607263 972960827 466595028 297426727 35658531 881185159 529937963 124694610 640017631 156730737 146719861 358711912 127021831 366795656 649350668 517992564 131419664 274155499 509870252 658531602 800198468 830469264 913970308 974737907 896691904 156559707 448406082 362207069 580736479 303829066 86188797 162922431 832019300 549356109 734385052 534735155 725697519 432775067 986704926 2907368 606042729 645344325 406801790 673840368 222431921 585899265 888210494 921996529 205165518 544128812 795150848 400821273 819872966 49727361 178770990 906232924 621541251 951431544 617078288 529271732 671534728 969433788 277729939 8492202 408068488 980776011 179590914 359336371 192701787 274954676 863935074 864465775 774173758 202341398 997225379 579929996 278065306 796886683 799226248 273112893 635889130 925987098 869727172 247126343 123112188 334297461 90823790 449207080 14649630 763464499 568996027 334682207 361099239 909927395 712653650 977620111 27390399 568278889 465118274 616944706 923595126 454549247 468592034 702929690 85118094 432461399 627132722 266546740 195446251 589647529 630525569 110016642 785632208 74307427 416293165 586220278 634689765 989769042 934670047 830151935 410673156 354981605 979203458 768349936 465949384 872712878 529134582 321902534 169877420 695391033 457973252 506765560 930306780 183125733 881539079 744474087 86983876 414115355 821850451 959748917 544525449 808703638 867205114 376590547 133867595 638050050 575422139 681228241 803051492 332139311 926399906 3811018 721115876 96744039 834810954 622928946 442664490 518637307 314763253 674744094 337030039 162143003 699398159 64523650 550554445 671001142 915056613 710835463 932207549 569728510 33402926 264261527 854811741 84013741 764860121 824353284 161110961 448239583 439178441 700717971 195055172 402786920 134086815 459904315 762463673 844532802 499482343 510698943 744788640 412330796 624623445 380799325 988000693 628137534 193710238 681799294 478841684 727074286 244180874 802381882 99923889 257933793 917174746 369665073 352223459 896629221 848030185 470955877 33037252 75567957 837219532 512359095 124165542 475040764 506057922 49175045 793917736 72808358 800336699 942612119 208716400 688206700 389678299 604155216 739193835 727749274 240211921 368966394 960591054 620241649 882289842 406193973 390300679 646287739 744920386 101045673 260979501 218579051 605782657 796295325 105698739 286256744 747957555 964690345 598695831 459026265 417839810 884715315 247198543 358465437 67142861 898793623 977305994 61658749 210223856 882845009 973929001 926897859 681168414 529378013 444780169 578038680 730717813 839696119 8448585 635329553 459936280 377220205 980166067 389198036 920259672 749905227 9786776 37469663 315535726 256687540 596382862 74155231 531868686 51289969 439181290 186221438 182028540 620118510 104085378 389428035 695877350 14319802 588233913 174100588 415435595 137189228 359165692 464070406 598086018 479269397 234668623 570386897 502207455 778954935 833064834 745816024 440324145 728040114 260270466 648943096 975346050 371229965 817132398 637819915 133979884 10518526 905781935 271746483 871541688 489040018 612177663 784019837 959799920 672286706 727057832 77161423 12946548 963890166 443483554 342742959 997679621 815695662 546380497 375074104 896634184 609590879 649812514 879924350 369592449 374015275 252837451 446216342 150745776 423015684 26392730 504271357 590166551 685075271 809223016 744550428 474600587 45632199 29011567 796112255 830746195 481692564 86811134 55464716 10751564 548422111 826264702 643206288 12458461 977755108 493509840 150947025 751727704 137259505 17064496 561887889 24435710 598304712 918049676 823210390 235340581 389163043 466149133 793000500 273419138 265306901 692543840 174502712 871752066 699868856 28923121 252632704 564113786 312181280 242766617 616622952 743275518 160719567 204887315 498122223 663622969 341434602 56892421 876019733 991469911 607864518 264017801 608274192 985696820 217507782 521083624 698632443 968807269 84354321 557084495 258931898 341513617 900365319 9575551 734001799 865810891 13806744 486129740 80145862 276563312 526343432 370670026 26880684 845191362 564070821 935806476 984803974 183765513 586108480 234599546 674440659 526560640 332968384 216404379 48758708 652086623 509979661 284641440 12063922 464154096 504307338 244388596 322001847 406676148 304130330 626790788 135885887 447322331 67103968 724029703 105623614 488160211 377284859 47433719 330137643 309639840 737547418 508877715 872090481 461451786 149147430 938536440 361489275 522570967 924592859 834255186 581264054 520701704 925376722 781212381 353919025 775965184 332333725 148947381 215535353 886251923 188124187 33155282 297014340 117298753 49107247 11024304 797477086 709923249 941710237 250936534 975235679 471606161 85571802 997473798 637640183 665089842 538956849 675153410 465004481 240609965 534449525 941339149 532843417 852087713 919318504 919032793 146759843 22620226 135303353 838925083 167614590 954887940 145074899 892198902 496819070 57064753 699427224 45261324 812395753 594684568 874085205 736182981 498321684 20025331 784471090 833050397 291244363 674991390 944643550 618949120 931803887 56270880 402884690 254661113 587952572 424893819 497181646 789175296 449687537 802621856 269979267 520649795 822020982 253890819 32233692 310757099 54979086 552733575 943466141 884553976 610800591 143164333 580150853 627568227 3051205 724875370 270916652 898353745 58688269 534820992 854397825 896570635 258937056 612753274 516779483 780333359 723550762 273310271 404211480 401172407 280485865 538961195 982353122 454993741 713830344 800428041 19155721 664882964 708513821 665785808 62629758 665174491 667761911 906473162 696526995 96477385 724844065 50129618 628692180 868003554 674462347 965231748 415045307 618200938 863822187 206838828 117056911 334476884 181130533 881139461 106539434 949525436 588322880 719573391 18591153 924547418 634084399 386724047 13259176 912284591 281381607 992565940 620003837 199817086 525621259 287646693 16256818 599408964 329404180 64152966 58829268 941543825 203040484 982191931 239039928 120867884 120187047 962554562 200641764 459821247 424753601 270428118 902603714 761616084 718066856 945064719 41912958 891225962 264909391 102499979 321642931 505770047 677180001 143058327 994630897 497975193 573952660 241646080 167185707 9408688 390774915 974143858 3412219 958128030 42311295 726483472 244508417 264784129 317697459 849128999 528716199 230562921 348284789 985719458 109083235 602822454 291612037 356422589 422441298 621076854 104701059 943824311 635592373 172408442 383448994 45441598 788317198 420036151 518246134 34853088 56590108 49621681 250750290 285135899 491754477 739712432 36641183 276606048 338230486 848083657 179167439 582623176 205073461 500856148 822864763 176588270 119010676 830558678 918620533 907572345 291540359 219616918 805053836 377931666 623227874 985466565 272773103 462576788 446858625 416975417 250193337 607113784 758638482 539522347 684508267 451806800 347386319 66052933 401237631 346334429 450879043 240548714 450915090 943190320 593517089 437484238 91931644 65296497 883538543 176061121 789328971 753297780 561270410 622271484 394893245 80840005 122535532 305261054 874451970 981243534 24597630 162341094 495524453 473145895 506313429 6156322 720857540 923251834 966466471 839451538 507092041 842486534 782149838 222724625 286363025 95808581 721378757 74495608 145104934 798575954 903048921 78525492 950965465 304743714 992813949 180619367 808328743 383421399 976468698 781791861 382607360 559448526 312642573 388009311 376941790 726763883 964233559 42545512 45765490 154056861 26542842 896224458 480208874 956143358 173327986 164432812 754056593 452683887 886167045 116084846 21655071 829202362 211029267 185067451 635193525 808828688 942323000 999999319 59511090 470143108 610656600 819224987 961769223 396868994 50050402 874690511 460044005 361705151 599194052 872797987 176712368 380379741 45458002 829603836 534927539 375850438 191888356 257698923 504171591 466337168 403606237 515471551 756477603 125601698 59148407 232663259 871625671 591426033 773981669 361475091 440165215 210411816 498023699 588573124 857780951 158101482 134379053 757084025 601916227 589860367 439501004 896324069 665338411 409816992 591567597 644963593 55365445 932547884 370080916 351607316 469120559 807903151 628256959 663365289 46786378 334676852 689296071 43635019 789606407 41412108 668653342 846152245 773293109 472478665 694854578 12055187 259022586 169437756 49188169 797104134 38571460 946777001 265490137 705309695 609563150 74812859 763064868 107652715 146062203 961140339 294297183 299210330 369953111 938933517 827054188 663812393 69764214 189046737 434202974 598561186 466698451 670174180 122251872 920401219 926625260 634594691 55962473 175135823 710132515 962497698 184639366 620835607 191735354 389101699 749449079 371018388 202724715 522220887 810993773 171906782 524342315 143747257 790852197 521549488 21449123 790114051 544367022 216855726 758353134 469171085 521866280 677021038 182598841 915806299 90188098 555512965 139690274 248381083 207991998 233484327 759117687 974230701 228029273 205321658 366751445 446504993 136263502 414601913 601526256 122905684 311693801 248655467 453162437 182170228 57152503 36745242 552888019 424275146 459331977 613735811 360457392 638706018 990307805 518999235 395432942 523946728 240251603 952176540 58146348 662381341 322697319 172448796 735627969 449989717 325607453 437032090 84666276 823920209 518737723 391639285 993332914 738338162 270798344 196781356 682094066 27634331 107592486 622202436 487160990 958904593 413097954 797140055 741008223 733974178 349466139 978866188 866449065 725999783 267356618 867228501 977408133 907682018 857457649 578918497 920268166 397695782 9445557 422240848 433112212 330473364 122262520 368218038 151315561 868945918 714602039 413076116 162580163 980539705 397903654 455135951 781538107 236075111 184504379 968431414 424176361 801511915 169151772 945310598 562149080 159248155 538840111 525741369 7178049 114982724 731323305 9361960 209874502 788047001 911246143 456204637 366681695 949625369 453598467 312133075 112634573 389947582 988791610 341425039 195493070 66009214 443638312 247867217 559782502 79728730 633024834 972810183 676053544 314445045 389356050 691445582 214898722 744604470 424781898 912207140 607119095 174428614 694185181 184740293 635145589 325704038 156956787 349275594 646031315 607047293 997471839 858428275 79277472 7041121 670315192 124294704 49661055 178722731 445967092 628146694 601229990 320172782 725741188 370906708 818105040 662520378 724962739 781916636 90049262 14450257 742586243 111973010 767996580 865370689 447212965 227079047 509403107 819249143 328827647 566117014 204491960 525021163 435017376 63729984 698360547 497626173 18309155 804456179 558734081 778218184 448395054 368360458 37303102 393513769 454337712 863118974 249330604 456176983 370727962 845350802 535049165 799707160 953696433 958237283 871634567 349151362 746026668 973133715 475063255 761227087 439798586 177422237 182514413 368592825 678563161 6812568 439369560 253998532 625012826 281531091 387459661 151837332 107721256 118177732 441945075 232770997 965188446 432223993 183672084 707275875 821666438 79836678 885048807 616599410 826180968 61892196 258851137 670114324 173481861 990571449 852757764 540042977 8227726 368858553 501812881 240423108 885658711 832136430 829190003 216490062 711417761 586458050 576944565 55734015 934028230 474941675 181073670 962287216 374931097 693120432 648329508 973314400 621006504 530945043 950967360 581338947 384353337 161866990 539287930 486071245 35966080 491994705 478345870 235272200 364675876 205716817 955651269 6223246 103933516 490071438 594845263 290003571 999787919 874695615 784354164 116417447 713791146 359250126 543904365 445505085 95686697 736665793 992315258 245294929 218174813 834891217 198488754 12425547 927315371 86470902 378073053 46181690 195281864 487077110 828500114 570095645 898841928 94520608 886202632 681189270 80067039 454375421 645186319 533228888 250699242 308104886 721405112 846809935 213984569 452361549 460296646 596683502 706593449 359121993 44233352 66978366 37170509 471082816 751432718 604046671 44501774 530794335 709945388 780305740 810438641 836525888 431629857 500522909 51920314 298729913 308432880 3597450 976442795 12218517 186349647 368709248 258593025 784450663 814253333 992449393 104677440 502394775 192247334 580829645 78639672 237577384 221268933 156657881 963316793 39890158 633369247 990395015 719714347 897788018 372418243 934525870 697399857 801002516 774506144 466597066 635844125 168030704 79547817 666887496 50755157 585278355 34651364 966454075 695722773 386589593 916494827 218916517 744221545 540461615 525445103 311400597 203033157 282393438 718589908 883360755 962133607 778407848 508524895 362776358 323934320 770483704 632946287 295046155 128925983 435499172 762986065 610451942 956061476 149063547 13233097 882835139 994800333 734657630 811308350 559081432 814132259 437128692 288281226 769647637 880481439 367827224 929785078 186263617 51550715 657582881 858701439 689774143 86905628 136121096 345180599 102545203 368877304 229471152 253028217 540351926 35394544 647512530 634233653 82118569 713283946 30367165 950519205 737084308 338537400 616710961 578467392 153873671 730411146 43339334 192146390 731902859 285657954 887824240 966404835 257350904 723175239 976080325 920822866 625225953 6345424 582746519 130552410 535841399 259077910 804292021 621210963 14054173 632971049 457820800 359873974 202147340 498507423 987561233 121812901 679085667 109308641 774941057 273845420 105477667 438204117 658304785 270837477 496114843 386533788 548663332 359712959 657906875 237296129 904649155 327317136 850891379 770066017 879514037 193972407 883421358 544610473 836689068 952947920 931997539 399385052 717469705 654141460 612038905 527141979 140799952 562297282 743172313 635560296 393183614 970891586 942359717 85784988 162758611 258297622 615266194 431310584 295545166 578969003 537434809 179538346 613861272 861052557 910953974 456934946 447827050 534643760 293108158 187858863 306006158 10511328 196449198 655221397 944187947 123682856 252098424 175420763 195021035 745553324 527488057 519009142 169984034 978548347 202585713 740660662 789028058 391939806 839722400 263141525 446063048 119356046 888334767 937166962 988380891 13766537 176537421 914053224 911832731 384499094 817128692 830966191 173348057 145835758 973216721 872210617 247193937 49981636 952739629 841545923 552598953 884794937 649704043 365088967 848279470 540216084 155667219 641745574 687729783 46864633 254475807 847258413 149442623 442330872 410470733 206314006 797252246 529685676 364143169 626258174 133203240 785379143 639924592 218663733 769769808 704023032 507767346 62642454 616098735 595290257 210693356 288755999 745932680 563065256 819341472 720149964 814723947 704535498 48114477 578697748 950224784 469161081 645363647 751411685 854547221 600295408 928829158 692794465 720676250 463291496 944446034 694219158 279596691 992316371 529418428 906560935 864724439 154872981 324860928 979203665 529821460 975347848 445222579 966325653 314121584 804775186 231519317 331542184 189957915 445674158 329631093 866576953 135328435 814730401 658064020 334618086 557258459 272686975 224426951 515199647 648996070 297057455 570106152 348959380 15205417 665001 183445269 175944400 887150520 600755696 583076007 542807985 80786481 787671343 212033655 186052399 65070559 237415409 232550387 979460231 67194719 750089822 540908535 95006024 980633802 8368421 510684304 323305799 240244520 59442860 271952181 65183993 835347951 843352260 768885374 977175230 149734036 189644902 826906654 788794527 92741142 921168784 171504540 26058678 603046383 782604192 813058499 541377747 39105601 305989280 588430279 683699742 605060286 736062282 886476814 368624570 74040522 189528382 348818370 154207496 340525840 662013517 854317970 475325108 692751668 110737332 203087840 860745563 299581507 231546936 152439838 160706689 579856975 58589522 540618091 875092727 54375591 246608924 526504695 545497584 586353133 573855301 134573726 90065794 503382523 795005401 193154552 663092609 560793177 726951904 246466434 96603669 113858994 779821382 719858267 640106442 326262676 839513799 881367653 689917698 311746674 218359498 279854285 811203129 276645639 71911965 77075723 62442796 730374278 967688854 730093308 129145228 46201820 414552996 483686340 819135926 593201989 971376820 136971283 473950284 993625312 5833030 443921167 511203583 646443862 13767516 975223899 194747868 805000357 975002624 909978143 869252660 921280851 94206507 874500457 774459400 772715494 319779852 608147016 44864774 119096725 649698747 705565183 267879591 773724012 72610937 448972127 154463105 803964887 894168413 461649912 950791792 312094679 315752927 809601283 815506323 804790516 983655511 397129432 628903011 853906594 492148737 204562981 646417941 552966801 316552631 803817424 264782460 976186436 942455433 610725152 236653599 456506933 67051603 737364842 298336141 787734408 985033674 606949432 456045640 756497573 154534116 586947604 150500857 402147028 373880209 702838374 440209458 895996007 959413475 457130403 84202791 396373675 215826511 737797102 66779004 651608285 603914214 402779503 991183782 144896674 428809797 119755562 8649978 261959601 624722309 820258638 846184396 618249239 547704817 33398148 245463735 473792395 940939172 272024927 255101034 480602988 938647963 24565728 399324578 495524176 265907553 970929596 556280345 407347479 660731493 749524035 120078906 700182078 670804305 707521397 388752250 875468488 249697441 142446752 94651480 227279703 159498200 579547103 73287763 953884616 239749161 856054986 237391336 874054853 388077763 288810908 440839195 550285714 484815460 256482503 29165942 916759019 997803430 897668103 524147956 130576079 800099508 188889878 310449431 261363432 179572103 881941753 493210484 791941940 941798988 684655773 744843225 540012836 117771256 702827035 247005964 195871929 351112149 93561022 928037384 794620676 865241171 381988331 144219971 842096251 162115948 509977178 940793857 646049159 74912320 792669909 35124776 5960918 805688198 315284774 446940128 807612817 548195356 729454675 316769335 727723770 442585174 782395882 81193006 760067556 406960922 34605768 680187066 129037735 452000100 461041779 466634467 168647431 788655698 278109998 454518587 195949885 558863296 961475860 334817588 568574406 229328383 639329766 24985274 263474742 846072995 292046752 698780508 958746651 288819044 318868993 871241108 394163294 40634102 803470508 614316242 873867800 163983418 703105965 893449353 527773920 755117803 277256533 423150474 180207623 978140514 343519123 867087939 761127571 174568053 676887741 777263934 585421411 527016884 425469439 510118225 840961790 38674667 82864029 794998001 151461120 907179693 874201397 496880248 899886115 925879516 999324706 414676260 163058377 471333543 882048919 997282308 620760511 769883456 865359108 399865025 278472703 128727998 111377938 401086075 908361988 643612282 625870153 38968333 190730879 17089404 544385254 754584370 682224694 63375207 835157987 900529626 651159075 862962034 584363699 168630576 217176733 656410620 519151481 901745892 25908734 535060163 347726985 327968830 905199569 572756833 110287188 662518284 247643058 657780689 696460999 73197782 584580177 770771864 935018140 817115680 342086985 722510467 398878634 439489198 724675149 174073096 966543186 176853748 518832724 925864318 977404915 763253528 117109343 813424957 330532229 659387623 210711085 851974183 518529705 226165441 515925994 499523280 676234722 165642245 607760337 796914867 528837411 53954078 703890733 387535280 932804003 838677338 599402124 161778894 728398805 813694752 324830514 528320264 912710842 203892412 288390050 372267434 948040634 89599915 173224526 176351254 839958960 450030712 502466694 101600313 218487755 287492163 517920780 113904773 837517554 531922185 778685360 964213784 560610715 270041123 98000488 118397788 904816990 396071615 711223097 506608692 859872961 373854817 959943226 379736536 269586342 455550302 410886797 758607536 436772337 415390433 186878803 43536480 635596248 983907005 997508084 757743267 912662423 987848577 754287591 612667851 38676883 410744928 629871361 719591504 353529586 249761503 772249459 692959835 367427404 403780830 85531540 414117658 712818207 751556319 757890340 1371611 928229511 658635680 999490822 487457368 835839658 33838365 391832591 983929598 289393809 345391341 707884542 416930960 858891735 563496160 226631664 735035614 150433414 970650755 693832081 135707067 66045370 464967252 262449659 833984948 49497926 996863911 321180611 337602394 912756967 624382175 466871303 993722584 240400953 736219822 827595385 462082100 477942237 497885265 156760660 881962406 367251416 127002028 313282619 195592559 247663531 524494378 610232683 264820593 596325984 196175919 840137873 947906755 139361321 568470023 184716065 294071683 737328847 916197213 3592770 169913984 392084680 454914785 675467515 352319780 608480009 706497922 789493076 447209260 795548346 559307831 323036515 2713084 736926649 318233268 295980796 607486798 553264530 979852202 701378794 109907387 71885675 457662609 881769829 391068777 679538924 713624815 807226105 173171497 71512186 885365930 41966269 923164275 437481962 656415897 687655822 490721893 641679189 921034707 968782801 233506363 791005588 532927017 40426233 971044161 181539762 634884322 77382141 425922910 400929873 291972366 799051372 367852259 870918390 981389193 213717654 368428337 751682451 60363862 719023697 342575297 648503789 866969837 714694279 46536497 595791876 851532017 45532521 278003216 209775748 774907190 529538339 790045568 201404927 100969078 484807224 49360949 980013856 129271041 590854724 888338306 511765228 610514326 328870587 325458589 432290723 362235494 533581184 335985900 987706422 215235200 468808590 1635216 823541980 659714513 887079333 557210022 426317059 725331239 219262807 363832038 358529550 503769927 383811103 264104829 691195681 86538266 44227823 180950075 662711434 973235530 130129281 991675303 380449961 809899988 465599758 785061373 937795081 861008747 132634943 830552070 949444767 988051284 280895127 410891703 537538576 994180266 558054572 177004890 368345983 666703522 253650074 105241367 235099536 308569117 627236416 54602221 178181934 318538282 601093817 998153383 455681601 232440846 284085205 596090765 662739513 733613175 583727846 880519994 716472499 185221796 732507158 584398951 742529189 366456266 803245559 478053240 440154414 847737164 224544024 308603627 852319329 751696602 888317671 912551080 242319417 89829481 684461675 972659360 833283109 671887333 53182098 372096689 158436187 903109408 349413720 403824862 124594721 461331769 196188665 350114407 885053902 710835952 438105952 403544361 504415454 530076804 866707680 285601051 160914620 8581396 876848979 789446019 819984653 502166718 671541995 717795279 787101059 977309503 826874600 307741467 680255138 473462532 607911877 309116997 765263247 166844993 66423875 628368212 532967241 194062187 862606109 789413526 725836904 595346323 643737856 264127681 354064845 272691091 754691526 218598382 432231651 971916622 234787855 130178256 666562733 557766542 128154750 355185108 691398961 752948658 457935208 874937019 688453981 341770699 8624029 981397536 912163176 133178394 261553071 13980352 820053306 328801396 805655021 335108081 115126856 751084602 167260561 946453319 592558788 612108791 858650588 350100263 430944150 515830301 36131321 748574857 55961799 784309414 604950090 6499853 370650732 350396016 298139920 681561386 155161746 942773857 892025445 903301330 581704459 608906240 188270343 771403392 12161462 485971232 917061361 853507804 379544576 198355957 99995304 205617424 704563137 506436767 850498646 469439594 712574418 606868615 759212750 1442360 110900508 548179236 968094694 431432672 41225675 622632081 36778572 830506180 286101802 803018326 954437953 248548295 743582839 650617403 107425508 202227998 690775374 856374988 621216136 993888392 805642224 935508747 854697327 278005833 863322114 868842146 756448287 711147160 904518237 306788736 172483916 309273337 576899059 78804481 575342149 124362583 312478269 123391386 54526756 470296666 420230767 411908533 51963293 161032123 172046002 235080849 393387644 835668263 439567982 936781801 421079978 834950756 629872252 202378813 693363942 887413080 106136207 86007000 528059078 376213232 830765012 877028835 218095006 551998307 289445761 815724256 438131559 210612458 555534761 605486899 865803644 119132138 999684959 954650203 196012485 518348223 787227498 631881892 861788530 227320446 591038218 690861595 373140462 850984041 455782771 789989771 198650111 35180794 25253275 711504557 181552624 1385800 17004806 138975078 991704628 587560310 617944031 151804528 592298852 596174588 130117880 759988921 575842617 725688785 391551854 126222509 593505010 961832220 408599000 85713659 467369284 747999331 299361899 463236774 844284407 943205422 251330899 782632957 441906317 589113431 830651738 273101424 997800179 139086183 41128626 725722582 711603078 547421947 330746112 667529857 172174023 13027872 562774252 414943119 312197287 751996043 547257060 615027355 264060612 357563100 213578829 481286567 805071019 531952616 797200131 799561385 712486408 797897341 19716982 315192744 832029488 472932458 300409459 9372290 995321489 287977014 517084938 126875240 136968470 63017092 811888790 600601812 893201730 184113008 7592496 216496073 910805057 100829063 720036075 861775712 863467562 379803666 656790899 541357443 635160598 433372692 673991979 642248688 284015123 139002516 348301121 86897033 76902199 875409073 203840898 73922866 920597579 403038142 550169017 852374161 841943877 946972575 673100533 156980745 737884630 450386718 915405706 746793713 936417822 194790897 898951646 836446907 610253238 448957060 491197788 260058506 567653302 430561372 831964332 714386030 48573757 791876651 201807747 937829024 381930418 862862889 20517618 553379532 478118477 537741708 374262649 119470089 789198847 93907351 440721127 409814705 566457201 732202869 411395059 648036887 666847140 409959253 939285208 133277512 744514313 456503285 14056937 570976967 825914357 514352420 293053413 438824345 832649912 698806878 643527342 819735413 808629787 262958861 979267968 543156456 442246049 983532828 758319815 751503892 420776137 40781294 393521682 325837103 282635746 61322663 136808713 689244794 20791889 937406578 906905318 498190388 20664750 879542531 224313772 768536354 636609999 169945121 808694002 611010269 117204215 651647218 771584846 156819061 584757968 195233949 458334309 738793685 403590932 918644739 211056818 852189153 243859028 316403656 766077531 809944338 493250444 507451941 103751880 376802266 114405180 343189148 855063567 420021779 635764856 314596626 44945 897025711 486028793 472421455 134254241 413909848 891948035 826561231 661079434 800557185 874304091 582733261 660231486 831241651 772598099 643057181 364094527 826667917 50033387 29552198 201420939 885197932 100436023 39053097 343559800 443218254 454910253 777622004 657591994 525856811 270945751 835840363 489993743 952888637 758993602 289292362 237958228 293082501 157918756 736596198 573873979 421608570 933288728 25259228 876201564 348497604 12823121 897841269 33139227 508971526 551336969 690513534 797700384 541078185 219382171 46721584 85742088 35268368 14687311 706836524 247569682 821065721 788996567 76046590 691533282 896058534 260286146 933833410 104502375 358493494 358582287 908028242 875310884 477424243 709555944 62301514 363357545 689653004 659795703 619342234 201884419 539688461 833084793 468263306 944836857 938320217 334310566 464305234 934464288 600739435 193365305 457634046 670934388 378691106 451651959 274139840 804928110 425175192 885470454 370900413 143927536 607591348 498510570 833567040 817374247 558347859 193417320 689128443 264105237 566483389 193873855 796780958 581532619 773966090 814713042 877015008 809887777 573724953 151018214 556391820 846410954 221592604 598521764 219862009 984347732 881732642 383350413 245073946 2471759 20585140 224179701 788750231 319237286 347349813 479740049 12444996 804295273 102915779 357376529 136170623 734070254 880140113 415490767 576111069 969581781 95743323 219435512 595222018 7791819 517499905 557668826 726413882 305361730 162859595 92409607 914661352 756133242 819436309 512147777 617616197 10103893 100530191 731358366 78712713 998745883 670055091 813304083 141308886 729135614 156999640 1112033 832335416 53782845 875169384 302297896 712582859 541593364 155917867 162046852 754138924 717779718 865557095 766441567 937402566 391922839 899978378 264242370 688712465 637352904 515368672 315582296 227406721 811133586 989104913 477694000 124709535 691779633 669094609 816541753 943772437 368195411 695640932 917091394 791104432 95648551 847733625 677574079 536608307 8615783 465384257 929130887 876935401 839883501 621770250 337710124 491498719 763300138 796516243 796790753 572683475 533500001 476378250 96470953 345766066 360472254 668123834 818041045 694885528 891785892 499617373 917885367 475327806 276469794 633236979 241341205 616635127 304816068 863728791 60310259 273176439 531790474 29845567 752080410 178801790 594668446 323452511 94717618 203237581 545566740 415418399 721621306 997763346 237542029 885109938 271631890 851267231 501374806 337745795 616090935 1330927 250620813 540903983 821393297 560049802 446912769 209338662 938240659 903522912 646665072 907318886 48811682 527668555 929855959 152508446 881778864 621476466 397618849 234839428 974575084 614882619 633295176 232050702 186174702 322362455 311721791 367021471 826457694 133411981 681316185 719585133 776978095 52526830 817267651 205854334 923826025 883618458 552943394 569984473 330592424 772527281 942695487 352961551 90961677 756962256 361235539 84528970 316506491 266683793 459518369 767891863 585946221 941701380 900458924 390565296 851226276 512418167 677270911 904314695 565088729 90463408 362280156 734138402 792424358 330704229 651883050 476048923 988807582 356574007 503356861 60189643 891000647 823194449 560476486 236786380 537652868 171512259 778225938 296758969 451471163 164954926 375095248 744918297 565859584 382426355 694958164 435607208 800367595 171648405 175477774 716076740 112942951 268652473 351843013 718562733 836264239 677472605 329396498 529807201 129033909 51209394 434804481 779913625 658145568 869364101 835206789 80543704 189203033 121502430 294993946 417189708 221659403 596227779 986533887 77953138 624514346 152769997 61279278 576160999 737629088 158892541 922482147 605140270 375002419 517810099 451705464 338161113 387507908 444832875 726619825 899621277 431054418 825551945 545452230 641701921 901664424 748847226 136223524 876684277 893640676 394957992 719751112 312425006 462878801 546063262 304729732 941781744 368994996 144374204 814744865 587452283 109894568 158469182 7716975 718011113 200877779 131279758 252302668 643990232 807496615 47793511 65633641 152028670 526261877 638908116 831276332 260396849 624162754 525209928 996592226 674198781 122723811 9567239 829394671 519372645 122022625 732480672 620622540 62019632 968464414 793959162 186357362 272129007 245223228 707846632 514655575 386210734 715990627 10777271 775486418 819336673 858236010 652475337 579779648 779011392 498388893 94340193 605060026 233098525 508275225 69213949 368477736 149648317 420606836 624777314 174357783 179189635 561726477 452231360 799342220 21348249 803692185 990864662 59512653 350172453 224154267 400988352 726271265 243398556 338670622 515283419 574549576 342211054 655412619 339202893 230895186 637206508 605715101 502020918 488852081 521025120 155826977 474241534 541148217 783668824 944304187 23416007 505352329 285418575 993812931 980076576 712299528 578757289 273701878 531385727 65678052 95944022 322524992 390980176 952033062 341034120 870734173 902515415 561751382 443632462 331354578 45217110 212431716 621842389 853597790 13474248 119931283 78475485 682635160 309227611 588050035 995211806 621555352 971057294 934963013 223638897 790896830 397020930 715222264 270320370 812835952 498035281 968283695 818005451 8241143 25274727 671266072 360182323 756002872 193598000 206173065 253030595 702269163 248617589 150831351 465380694 200112169 244096180 560497845 972173455 377440691 853260817 118974351 446846185 503054980 819545892 333873523 427148304 294022529 447755550 73697832 587857462 499029143 793957260 38540826 981758144 684682475 6902203 809304411 77058126 409096472 550860561 409223991 428270950 611559646 67015559 508453743 916767037 957072802 67766410 790961043 393579696 331537356 485228872 315127519 352102927 479244988 293647568 509317951 182089117 69339140 622743877 312462003 810628926 33765936 937694881 484349611 428650748 57804953 896337549 557032527 422559605 989478901 337048430 21904999 841935291 653593687 43406658 189037942 181879278 319967012 37143196 865457564 645962255 90236357 790811767 793104073 175275786 736335900 723248721 831609990 789583571 171652631 773643002 376171704 836333435 529326158 435245575 653385390 904556170 290226494 861028795 754456268 199118883 318695499 745341926 808895267 257225659 870653540 986681084 489613458 604800485 808647284 466083477 346346424 143713085 301617987 382655139 314288494 384191657 112131659 574939237 352099046 642635545 255302569 972612066 686754932 318450127 23803163 440885823 451354019 482807111 236094822 167123265 402756522 637798323 443684621 981198770 432445565 888964684 700425875 753717908 750298318 887681056 952931160 405977217 973352049 205813139 418165257 375002350 735168806 17226469 235626967 547242011 568839100 486940716 962023459 536669283 387537218 865457711 905981709 388016568 755773528 663272 940112335 807477198 897003399 515904728 318374209 995796378 352959430 970577133 7824406 566851760 587053434 331927415 155079449 403039358 313302272 28696405 190073852 635374454 283780017 72477031 280669282 902236325 870098461 303029601 317128876 821103782 756348694 54742837 376484277 286619175 703048540 258447837 406895298 630055191 75674450 252390537 577678220 106789150 942775980 587237756 372153346 106261627 162623750 608171748 605798559 886346982 792361455 520539485 389259986 508012510 290658876 955387819 510629063 818161744 570105846 865692930 818876459 92154272 224143305 704788960 947935428 986725404 555830661 407565012 71693068 202941037 754934872 27055009 460419216 228800087 181079995 869309277 948817017 9840095 357145847 940564504 294473764 49146354 213251873 214593672 244260158 107054517 28757431 706181150 902819228 151434007 959422613 713581715 985347755 135610149 505723288 320078848 123027098 925701483 421214616 574887359 731110130 211959805 759624218 955935528 292008041 113577163 80554778 362200040 932528352 875180134 604158815 628325868 670932438 972153110 638192429 245674043 217801317 151088803 137400843 601155602 818940648 947421514 978257465 600269430 341577198 211858680 200511443 190428191 97478843 252386387 200612455 264881946 645377213 539332795 775248434 137139449 416465420 450807802 203265158 713491261 975229214 502449899 733532288 820890707 128270673 707188088 188566202 232459608 945270673 861252728 277956338 438819235 138688820 907097651 115655599 885398519 401366134 453657768 832780879 550163559 356456592 723301805 525215803 575081860 175232039 217491933 950348264 970932190 640587542 904767021 392845323 243309879 210216735 371733766 812602110 962263325 240984086 652189579 20502895 491002207 69514333 806060319 152251076 656977122 67318663 377433355 671836369 339097752 563615205 774005024 474924752 582321564 938217319 303289936 327900550 561118586 813543716 118389361 217788685 931431046 615888477 143536889 11053348 102620307 625563021 148776015 523132129 399127653 192558923 754589099 641371981 215284153 652005550 157198328 814562053 25699487 525619225 320144759 259830 154479701 833145197 361132152 479171038 305472801 515963704 624847473 169616711 948104325 519166802 45732992 150688181 699336539 987693614 548070770 449386351 711001797 470242443 281550916 767315862 18771716 916458150 474108054 142290257 899030714 182182266 301405261 914469188 954039290 340361589 91364977 748887150 314332552 901229998 632542244 946426293 401028386 42626236 845030078 804875587 296062127 294048731 337595297 25085552 394680013 710058257 246890110 601712137 566149513 284953968 293721293 292225617 51413636 309813196 321038129 443243599 631048305 236267744 221106055 933334668 996853682 899833862 821586289 990081986 202898362 141177202 155599936 282631647 873329118 143747518 849752479 426175092 499099722 302192061 6859649 643498606 391944334 376817446 65726783 911986434 174071819 141960488 611426714 509129740 663941560 89173008 714338811 96329563 172840341 599830215 746951718 810253211 156940029 518681678 747404637 117632494 765615838 846935072 98495762 117280664 464215290 56218562 738741535 205415144 497398693 842348160 829622693 950336949 411372454 758972409 988511990 772713830 931374704 346431488 500704903 162945016 664083804 660553210 84278640 815164462 381584259 760299661 150281394 793509736 908266498 128479895 680773062 430495075 590877879 349933872 805662717 20018996 218151781 229633596 698786197 573368564 574735117 682617622 323289170 21390208 185151379 632317433 83584484 6008094 966447466 113192781 371566571 285740941 392020686 199627852 354760603 695966443 887437711 341479263 605051945 617356465 587448178 374023524 686815545 481362810 912449659 259217326 984038657 526098708 999155921 212587991 559976546 174781493 33037685 927701956 635612414 59395269 435258405 529599541 688108208 364002560 98332806 160586685 239924296 279028347 207783500 125730897 542987540 830392069 405106599 576381905 325230250 163932284 43462012 420629431 473329191 161672046 727061719 406327341 513509670 920999558 113946229 31136313 92738285 148126709 772695569 134774399 930966417 225612207 645098531 40247505 318418988 571173544 547207772 948945558 480594491 120213369 163857585 325791598 172427817 211461159 772632771 375225478 358577781 317428576 930236991 272812209 345397090 154667735 260038361 763138356 468942453 139431114 438455022 136463446 938037230 774745369 13362764 793849075 203530151 471514891 95118830 467883332 945832959 416819299 268377840 108170770 731811812 667954101 418597368 768857445 425840738 407291606 585743709 196031581 294974279 605423990 724543885 764991781 434583238 612711379 510752223 282966821 10668484 313887047 777070906 328043579 167613115 592116075 398191582 687941743 415430649 67811004 644411992 51477294 112091734 747096764 692606417 851313804 560489060 157076618 772895450 440646169 761614819 970704724 82647426 836593653 771494490 79570405 810178407 221591988 490005647 661820752 503042625 630940839 935699779 219289617 185784379 709096810 946710140 102408338 801551471 423288128 482486283 224923231 147270576 57059639 694544935 179448354 957651323 96542006 47783420 687761926 703929961 715890211 369516946 196021000 601741701 729776040 703861065 417828837 920539732 81128931 780010143 214080384 624620950 207025044 709986023 74397509 286413903 447117148 925336673 36565484 333374976 155734397 844200035 774369501 167392534 121388921 954942101 113214904 563815823 32662208 303644521 57952174 635433002 71912496 945537587 48256776 697904409 145065015 58835332 679216310 988927388 835080263 388931734 376971826 630567071 280146631 922838013 675141324 556975385 39634771 733306787 383529415 363901122 318539973 857524282 533020278 433109798 483716488 15612087 424816892 85117959 888233523 265594952 404131076 911157933 510403065 201554226 932488779 319067841 412957970 126977549 879370846 122197792 180099451 393399545 88858231 6343251 131992087 549503880 572569341 586456047 438964858 290845140 905726321 115439926 646591649 118601055 123638796 685171150 643193317 579804338 952163442 284281364 865535704 284224064 995614337 7470046 740545440 570926531 911611653 174866118 340844459 995951525 227237554 287191146 352817673 920890767 631524175 395821000 713419610 305598761 933226694 7360458 252758749 475900633 276305486 680771731 536625319 219552871 160712791 666725269 897754715 20245951 618831385 444314752 250754985 646099371 224936197 468847613 81046164 250941692 548353131 770217730 26416951 776521286 258672 684474450 560587069 567686018 162416628 756138959 143140922 693667122 531393323 790195675 88277268 675317693 842795531 814716114 603436943 34244470 223885642 428317687 233076313 618880443 718943142 653865381 594967469 621059582 444131224 793575115 542252971 514809874 14070157 932786458 935647286 316228421 280606386 350504915 516925614 257465027 152890358 762566641 293272995 509552666 296748588 329860070 928558937 606242514 287268897 13479247 837563175 12811752 595233891 353490597 370276036 461759659 232376270 54016522 833748370 311733762 782017746 789159899 868616686 541571439 348130751 659654549 706460755 656632153 671093046 36284095 321222185 666556986 529099057 440134061 342849445 166765474 947181516 560036021 121210451 408463441 489535927 604787749 176811200 412572552 75247136 749427518 224416603 582706132 514943198 751538055 565533076 37067557 79889904 871968920 322422073 521491415 252197262 251913885 580951703 998341468 433037025 312195765 540170285 963859502 270244323 956040391 243379101 205324941 143705506 768406601 210183240 57187173 693042208 723879913 140129267 817620408 481178608 851341101 486041389 747781799 604411463 946749733 1433509 190621038 806204985 223533184 319633903 265657346 172162070 191135313 802244823 688914149 362180819 473384165 680611786 603291880 782530325 166799846 135544345 415622535 612071641 743978503 358706859 893553202 784221366 206520137 583139774 410616865 924805672 781610339 677612934 733778874 612949674 341470097 991356190 37798542 663752368 256040088 48069084 395407785 782255625 225203332 549080337 992962203 357600493 568491427 70102689 950568224 111455920 417068791 854797907 321749818 72333723 801575330 811719246 994642461 794253211 119812350 112089213 403737073 361591947 673008963 65723866 229172533 803657411 137459161 497468880 471930601 625597564 458324462 472812565 400218000 102424962 559777105 34311674 291106026 325321094 160721054 873556263 768856123 556152301 761961540 924369738 167009420 262609660 911467161 733775388 308015674 651253901 381325713 786023154 751480054 242816499 1407978 915853245 683622567 544421833 373801867 673731101 468869430 619603329 712567182 562164920 779531518 908735995 454521638 379315371 367412724 317916612 174287971 752083761 44360691 848386747 997405313 458280942 316475767 521345268 670722036 286391845 980755309 797560156 117566770 161095004 103976655 989026993 867613762 141519517 844371206 472031277 949787169 284536412 195438204 471731824 336161265 550027417 36673838 749587624 355374124 654008286 802905639 181141224 477681918 359557247 423210593 473756088 650239110 772408476 212135053 359018926 239253452 480243406 241476047 992292638 116064527 939558385 496905424 278533464 910687464 279928645 686452960 581712507 43621627 879003374 150591516 505386828 267777175 51825437 552381349 189980847 162819329 33379600 729839322 133560822 394766040 425053060 616973888 22781236 54537591 637533234 265149857 708156300 766561004 764158093 172207715 733715598 808419605 156180336 166754168 310653759 958030361 798702040 937171994 732905301 292510542 237072272 580760911 316005147 585288489 461555279 763254669 809357546 752036093 411513115 433935402 827254234 818889059 234270124 559220804 584036978 711965100 924170996 932236199 103173555 107409200 810094532 118190901 630994379 823611519 121339852 119733274 496934787 54926084 768245100 861487941 362964571 752770313 744279626 810371568 543180674 130852096 24111060 278545459 72312317 809053218 715078702 998072139 601227160 564072036 713841753 274714459 27518027 93457213 251412025 240882544 372489946 383893434 183947154 498517829 425746020 350103695 407806610 294625807 694582762 691505905 386898903 432779254 450159041 156399702 280083122 718492413 222931509 523735566 296650021 555168642 735028564 406516119 730102434 343645789 842691986 389589855 498395852 171340336 32272306 453554026 681902126 817328688 344019452 263129122 247688173 897730911 937288881 707055828 68864309 640212239 715496016 917167553 305179418 643656209 273118768 674153584 896096842 406476073 62270043 912957991 853779162 81395044 794120396 75582031 952420867 955913328 996538410 109967310 833260324 432949784 683966352 267055630 988070443 80343766 321952931 786845259 936212489 158278022 174084230 742981584 791839037 469690721 296082336 123113651 592314399 893438979 544772838 715659891 141324392 544700789 636458538 719356456 955857142 925063442 398976341 138704422 538372243 12444643 211711020 511977438 175888576 896389837 742645255 227065945 636114921 546643060 200349024 925028403 780378790 426190737 883137532 431194761 477713262 722889042 802616772 550985242 290252559 189130729 739663892 693820118 561773403 605938642 297147027 412133938 327527243 144820758 694629411 502222640 810222617 389435144 62813106 289893284 975769655 686771666 291659021 708761968 330341210 819432326 110019144 816337332 68176362 378439536 337442933 72382811 138753226 945380593 878872781 182490821 216080987 996251462 886184216 674292579 679185485 937050763 82836117 930200490 109809340 66874431 656283635 802388681 29901170 609734371 126262618 313226943 769564255 803964010 775498709 111205394 320984483 4830796 618282708 171211289 776111834 302971969 284167332 993977234 354642455 710263609 466647546 827598930 711543798 519209289 370687915 297074619 126288028 580238087 110239837 558325599 802326938 170905707 624419783 764572499 554276675 132307174 411070872 943495682 740590576 573973952 459013 340227869 114477127 463339077 535250041 175288101 787666159 627934243 150011354 416475127 534401110 633518007 554330896 938530775 513073098 158929374 944880429 43702808 187770523 653742314 819447851 661940242 302469881 157051910 812003914 512094964 171178354 937412193 157695846 731895361 606779750 551301196 667998792 873179362 725172113 964289315 396941750 263598577 65079744 586155845 75310014 538817435 139943072 652911132 888785992 633512252 606495310 291926091 210123406 169757531 969788930 46821382 606621610 59694434 134094858 413004936 709005816 821982936 171885732 376517527 629754932 801756285 512540615 226192252 256568676 838460973 689240010 851911383 372966251 779096123 153053364 77887383 732971839 323329209 991581909 962599861 433263383 359908824 964203976 269795325 541920072 141970776 186556031 10233867 154131650 187449329 135460915 693662677 485091076 949223279 419336463 947944469 286240792 96296706 836558289 831855799 553233197 867733342 223657823 41772254 855840044 322814908 137388860 952444632 435624797 741571503 184680367 290329950 730220592 333860840 756013175 655130994 942812132 471575337 52338173 281641825 917471125 968078626 430872389 149171441 319121942 235476773 640651196 445242512 654309453 227689512 111721028 527495279 639825341 728839626 336664952 419830744 603988365 76562617 340931051 783180853 477786005 462768057 396803654 236466349 914016926 8395730 241329297 943866338 992740240 698984228 707173835 792718013 266167631 542781466 266024263 723782798 838775535 838324899 583709548 234698625 715260718 600472578 175194987 683845495 185348557 77722140 927411581 223475285 864888922 902528973 173127739 609109043 549722654 596590131 967127891 56328207 892556231 611562885 446961071 707509272 272410357 748858620 687087381 656260908 741830125 8629878 719901767 451734469 116942484 106837502 69392504 865264472 900045382 671298377 461161865 961432824 194453226 725678411 33308027 46224586 981896521 516380847 918094106 267181745 104253113 887955641 90199024 370088966 58968258 408828078 594737995 604155806 342415764 425645143 368860665 51828656 107652153 17689822 538044642 285075977 13681998 993466903 103116937 243537777 24530349 997763349 192866551 328141414 522545050 426589261 103064241 932559104 667103385 931206392 198869117 381353463 491665518 807697279 118502357 808713590 525255359 666455674 549623359 767505487 604517471 741675291 793771735 972114677 527302347 265623872 824370114 943938894 129559129 100126810 119834946 93223887 67520282 806452765 254926288 545637784 552031541 662818081 806601608 160414709 266978153 160388063 593167855 561123754 203445437 773396480 423579211 35192865 929855932 597540073 58179685 493143546 645085509 220418999 445075591 711124757 763495450 583520993 113229461 404406043 705154303 164956200 587681883 37483580 318938720 303672895 197825355 974092016 93324128 130546279 145175050 481202699 980389299 152076733 745235971 759155424 475970826 954995608 443491156 900561700 288927338 134922252 314586454 872025095 157557548 636912952 313107636 105995868 56209808 535153125 939245346 589748691 139509441 705688447 252367583 103554276 415104412 810289941 853823848 559928527 418249612 404953155 538048894 169555792 545896890 630469361 168502640 593415095 876970906 129848813 671983893 101002242 478361962 450441506 759659607 601709908 937066154 518638809 437767304 652839744 600351917 572017931 481869772 533190542 726412899 244288145 109202736 250188377 313270298 57131487 274017888 356249096 349041762 834227685 600110873 702218841 661307470 365054693 332818642 550264542 568167736 465048668 183174765 382960898 662975175 677835509 993830524 513710191 565257690 779564852 741237429 230239610 858749931 17609955 428056392 329337371 45176643 998069021 534564910 408680764 294686665 157587823 195467653 383754697 209934279 914189417 403093655 947604889 650585891 914728924 370131819 991361360 566147840 669259783 31804136 140180134 71924864 394684054 527583201 240366007 215858818 221655397 987801805 332457754 149997157 855673093 155944324 400175056 383311310 599779610 486080000 589310767 499849938 434974434 315447918 920770233 477356608 908763320 937183921 86365412 192205332 475411237 779141530 454677446 725327523 141609492 13046372 500975794 484230326 957603518 661892943 416350787 637278290 564157570 234033804 869522258 415210210 128063536 462338678 38933895 431668187 143109852 989911160 153272421 138735229 669862048 61159062 803056784 809398662 809667585 869220361 842781158 30446458 37897542 591515940 82342573 336002112 234784954 364607418 517923268 459925520 566896789 789384413 904969983 800763846 287270326 700603367 816844464 550938435 640859619 389123096 355362603 792429380 24885337 880954417 388481876 484885676 147700898 813811432 647720591 911048837 300856485 33835371 261027635 709440594 255092356 736072833 662300662 750400799 426028132 359663412 556262011 63949616 734078384 531948112 202072299 877421153 95733997 396843337 290636499 371263042 669608674 589244876 950688905 113100310 167457344 480547010 187707735 794949753 867220644 851346884 175181433 581020317 933536726 404705724 135980367 76038510 474003745 460472833 156314307 622352042 680743082 340986483 295313014 763184574 861866956 532149963 553923219 750197374 259004278 866018912 879677586 291442022 719371772 427787113 571534189 531240421 256223005 66891832 485298366 285691666 775492568 616475398 599507173 390982169 830034301 676138527 12794892 868407477 663381655 577632440 244799923 174789791 877738821 42501215 299346969 804012490 54645348 826765078 942826678 684802086 530292560 583723792 428955404 871253141 326644635 96551657 759318830 244047626 8205011 518810732 212496644 434102145 29223672 626075311 195574649 685078320 162937542 664527816 379825758 708763853 204974846 856903510 35637900 129337269 623992015 695009235 262291081 418720484 589288050 541900176 878186515 83756208 232100480 597465159 943164252 523877569 44116343 201635857 138376398 74108232 793524338 63317786 727083361 565676068 386354882 12912775 519116102 797135735 97846333 921380476 853393287 762917340 578599101 452037269 846020712 392369369 512382225 79566746 567370424 422046314 134639382 138504067 208194793 786959465 191349757 80141893 959565198 647187250 414932153 988177037 243592205 149122956 116628940 82109466 472301691 32084507 177778344 794614660 741145087 900311148 434602037 81162670 120852361 515443118 666310394 981538974 535855048 610682633 798657097 712049926 749905897 967318360 958193027 745682545 604991060 778753060 966036155 49434231 699595395 777037949 333417396 881818781 153087901 646960113 848116869 765750382 230904979 780338350 985523306 500864988 797389127 345159579 905412763 332400902 506617906 389008082 10180698 515361368 174365608 887643470 335226882 665425891 417252338 592631134 446851540 719216436 264231368 250730909 616580722 584654909 574543525 360597845 208297659 139083187 850040832 989591000 736789712 576030635 130012798 838528148 530404666 959860724 551971555 14190518 219720223 754473898 122406922 280313007 564134225 915507607 960287730 738739404 3017178 202739910 217887750 929008352 625376759 583496467 631014372 792990103 539073198 393307792 153975297 578378839 857326120 517254982 766224052 629496624 182941203 134676770 925720962 708121937 566482896 390081906 704113412 500487908 750601349 205246268 562993198 700013793 96588525 436319180 383516861 309968183 912465621 657665324 538470743 96423970 782488220 149828089 185176161 79624270 304114517 179999093 638685275 111241001 290377700 815167286 123269629 42547926 472966601 797310773 463993911 23847888 587631542 102228996 343139577 690379020 188684299 611799589 892078802 74912888 782836620 823506285 871527398 116294678 421272458 729898986 655161601 327177954 818070766 492077244 925354657 922921394 541975667 188176553 678432537 260066535 391984290 387951411 763810146 552863013 176992950 913178034 385893408 829797221 940718520 152461142 503129352 525329636 610060254 504565012 268409530 681366893 863093466 453397457 550363633 22057381 645549639 228010814 824791293 237588860 204898399 643936321 851666625 306184921 633619787 766116825 909438594 46003552 332034712 117083916 428072237 711853288 154240742 94559252 39607883 7704551 291341910 527056069 604944942 839327361 351125688 119571627 943219288 407045417 405342411 981049560 670802051 712362819 49209874 765469677 895341087 610276877 597537150 42807904 987624792 384867174 169884036 724712100 36410376 35020521 308040581 744085231 870352352 404641135 668291447 418725623 179839837 858246924 527910428 495386175 224953376 538110033 496097064 344076721 546654243 779806896 859567869 173703442 896791460 412645273 594491971 752414008 974227753 699638851 950666412 436548290 412742273 989687958 739996288 863508325 151741251 16906502 840093706 148680270 975496118 817698552 159587953 228179043 340264860 36163420 570988270 753673891 989076310 194908002 827178910 210623218 122094417 152861340 466972502 47466671 965514760 753719998 544231276 99801990 102324032 406429265 14310039 256380662 928580462 509172985 177025847 328994332 753399878 343307045 326763111 423542670 888214319 506554035 224784427 94414803 966608 828384845 338609606 331667120 751521077 282455173 273738409 676334293 192771173 257251161 523635701 713501298 584410502 842864334 913274606 153475636 425214713 614744469 416146966 797746398 597264152 720081514 723392094 727923819 987448034 999182448 934206284 169890131 826642449 651980756 824658286 797193761 470520494 904615929 620838031 930303306 206900972 516111929 295937192 975763857 478849906 129324544 694284085 373794296 464908371 609822543 893348134 95309220 160212862 726507285 184481211 701670694 396422302 352290857 61723782 173193804 277725028 271997356 593689661 188475427 240924653 570469374 694061073 493681452 108330088 562642931 270486902 483964018 501811492 995573082 533154827 901532040 226521019 323315057 829897841 865103077 45595767 678428415 645755323 929709197 550849594 985874929 614241781 868847785 631736771 4140891 571644221 760385978 909490388 997164799 805727501 986372388 732845424 545030281 580951559 531071820 818705919 516364537 11871945 158938967 876015401 239516737 875436084 841279449 425009608 44259129 937181810 813621489 67449337 396237487 315722406 932591366 176406863 636764186 941622886 336840202 461035465 841620365 517647497 994934118 764239161 447506674 377729067 138638023 477137358 681773362 813493047 627858078 344367938 373377079 660403058 663711139 485410877 508081135 431619440 391887625 520888994 278724861 919127811 375932082 542531489 101755380 709587154 266093174 832209796 835939886 383584842 553644021 376952220 309689412 901869579 269557207 727075744 51880510 527543081 668148551 394661003 352780002 128646797 857676263 991326105 414591322 543594799 48177350 835395856 144827671 913604348 648135106 374201040 842861759 539113528 268225675 972519941 710077578 509107953 927524445 129201928 229637911 158580843 822405581 271930106 135542497 137154352 869424694 404105804 24768822 39089791 631611763 960081774 229435800 364581512 611456599 346896415 766064782 69426231 983871298 16353182 617293038 81060344 494992309 393059881 31554551 319021284 323513382 621134626 996226758 995045211 39188593 412257303 88393604 392126608 390989956 80774623 868884198 36097172 501599337 499518703 504793093 839804034 977188899 31392096 427046727 306169040 435243181 418663294 580098732 592543246 247639069 444210170 637865996 284178206 73138258 331043825 675942369 958251434 374689248 394858923 843229955 951963611 848456943 348566103 791482179 564695171 690245152 849687378 579172988 875608745 732281640 608850277 701174249 272249398 503543031 555719227 705227391 281214228 48457184 776869064 474795793 125362067 791774736 204878811 803711186 444941564 435952819 13224766 415595783 785371671 863945048 787404774 284760715 507211655 752050460 186217380 504167720 847368191 414707009 999074815 414782675 201106454 665041273 798351475 484899947 179886880 147899912 529922571 173210344 463118011 5660023 680961468 797673198 955064725 475600415 866497047 466426008 208047981 657229773 36260084 619671959 955825226 489747353 194652570 645745749 170185704 933193539 281191785 707069348 264858166 747746686 761314186 857154829 232598847 668901529 525120463 285573618 441635066 854174033 902571362 934386092 420796628 12749224 829159997 808540295 944444785 726217969 111856903 390547179 551815829 568985528 995533510 686799353 581501974 536522201 538413517 383364146 22013 244348304 520359541 10032537 845611898 252429650 740720996 671943395 616908338 178098229 242516014 533839330 352471543 316259444 256171416 758136453 600729679 459995471 204993576 255551088 56505710 880455010 483446894 138960787 377679501 140626020 150398079 121564637 217285322 95293979 703045943 457988150 937008012 131194701 686562238 693708112 27938033 608666497 423004715 668866602 310782651 836089758 203136730 999570832 312942192 341596647 170338604 51215598 367724433 771256129 272095042 422840939 899071187 94297179 507452748 493801118 968191895 498348828 698266633 41089828 893714013 299735747 465638960 931733518 453396391 838175597 558201705 589228310 509219117 419148142 82444781 225991548 195132310 296206537 572932150 503089180 542238855 398386275 435230273 81661216 304021746 599160476 154162518 328235891 77694473 546066304 578712730 317598062 228727662 506599158 390668615 360332715 720825713 699528147 452536983 83976155 319630324 228607654 150583738 702628564 351650164 982303700 553461345 958269653 15335261 189186025 277223219 933691925 820227549 712189846 177399179 570453200 483259308 571586111 573108026 250807640 84531516 832462108 544317038 696262487 287850741 445748137 253561309 198827790 337420506 506561722 266277398 707596992 556047221 419254192 155492369 781230863 281494253 357026682 75428049 250469038 953636504 417346143 586358768 650929757 313603658 34153677 244431053 98894384 475395862 415970156 66249428 501806967 876560364 423543206 973201197 980222090 930836150 36205927 969176128 581070897 582320950 447184423 435208922 132842851 848051181 246902826 744778708 24256378 584832679 46632759 34142508 36007882 903024742 704866014 146561989 7725308 222443744 543193796 740336747 795710509 961420950 960272359 968488061 2159637 223452865 684202329 326539377 379842459 77374525 850248726 178319910 487759674 435289232 917280791 544025560 114085769 326344510 931137656 259447613 757504036 999258937 705955759 444382949 411220145 65898452 34383878 517711265 499651322 464337459 430012136 990000256 751618459 338244963 912690929 914413151 300722647 291376466 990451441 589848733 210822917 263723293 600519619 931325052 433170024 635167124 559630303 815251642 108496499 102715027 942115087 598008360 927570314 709201378 973897572 151526768 893145303 123335838 192888142 47324903 936080179 139107489 127166055 409622594 824340725 981267286 379036416 956344907 992196030 973769993 903214258 684164013 943219401 999832110 750056449 800970974 80074139 509158910 225955391 714877654 186841506 973673427 527041169 872618311 611382208 513416032 185317058 847779071 672280881 514636247 746832666 75452857 124783592 213987666 340517473 46488513 168258116 852066164 368399205 981844527 13715025 812857038 319652654 191320890 406446247 182589439 138412720 76249657 892979953 555707512 917279813 721448177 957028303 203719079 519703244 760781815 115216648 353803721 68130244 336100972 92997048 31220104 225662051 760285706 517451700 510652972 501975718 443454462 912866377 158272271 888212000 860456470 649392612 136795519 334768171 144511123 570150372 967908788 575934888 865811713 346823846 68545797 412893138 428804732 923884263 363388800 93991071 168192393 55279734 45641336 644280601 911006003 949887119 257881481 40932853 956713502 859794034 795242747 289357415 449207571 7996595 542638322 263453251 801004971 236449551 204083288 818400267 441874642 828938186 926174520 828099992 189892162 923939341 571680808 604804657 210784717 23190790 534645934 723609343 614377616 319833727 227208222 556156967 105089404 61125928 925528697 227449449 684948187 499363887 561044621 236227592 310144239 416323100 349711677 186304107 652445238 63875190 97637666 464319804 751172945 143751377 153584609 340416610 191895303 152391931 569395832 902214781 64903709 484184659 180771758 548015322 275545968 730105450 35786552 120578056 722435632 864442467 606154147 933397458 600304929 540498753 441495192 862226561 646904508 425636238 307646537 766729270 899966831 921576172 11006113 68265189 494843695 66141366 503500843 778165565 399906828 33817518 582429932 376272221 743792395 463826882 942311292 936857917 240698532 128549947 568588945 468701832 473082728 530328976 408922513 6340808 766508258 759783449 954761522 600563143 64624057 92094141 36355791 329472331 650857139 225186860 405468770 554596345 318368713 629034060 821822146 528970801 118929377 562124107 373160777 67180575 860808226 901544974 227387959 101193389 950653501 849435531 81008974 72770829 339588300 874394889 11033082 876424674 4774174 675700181 822001389 791589001 675912318 202007960 419101325 999003385 820587565 397911687 848419728 792452852 418493946 201348332 783301272 142420649 118616069 2232668 376615052 60736507 455029561 263793483 412463492 485165106 484053427 314400239 965969963 583582313 146036831 808588382 412238544 380180081 735562479 106832404 727385573 886296093 196940630 676424508 530557349 528094541 397234291 899348555 211351823 953687809 215399542 173771436 684620815 360189258 223265367 775460762 898923896 726194863 434826169 798233804 680506286 516908840 36493250 685472658 864263457 891020754 533416064 508734481 463112832 717744411 272033313 259400311 748678665 914926988 59762395 316123984 132200719 496537680 724526225 124064489 409196253 632787378 417866410 606373918 248051620 243094256 426315845 337697962 509099338 990935333 282991977 925964017 483689880 749985829 884579098 311184703 841495533 648655227 153766676 201521763 486445988 777102379 652209756 111805473 174345837 770675911 409995397 288540620 130002772 640346096 624537192 603920745 191636238 227142595 220774912 144608987 381008419 900470191 298348201 680244058 699454296 593361384 652459034 350426822 36446582 141990575 908690542 160966632 104616928 820538153 702964611 588055930 807219957 718983014 392300346 674278212 600602916 498054607 618046830 98878112 738255258 853429747 928790506 338996926 310904384 12254967 683482754 259532728 591575391 668992591 327186311 70543760 337203183 247363707 674989056 824527364 606852246 132263107 50716032 456733218 432957749 533010344 664195476 488225001 45336647 680013052 958997842 988329517 123063643 161735271 237144690 254290857 525201040 599790242 646939940 421439280 40820414 971776853 365196641 257156517 211051381 601932224 902329592 352490830 971418308 714647247 599861281 627041972 127542701 847685205 121354889 415608346 929781536 392107967 335702501 41474392 122620687 137387694 847783390 817938207 872140390 246993449 97171603 191367505 362914166 254225012 517778939 402430920 964566381 710515197 993897391 89285970 54469844 614338813 178991924 561238647 214805364 712646002 367939669 713690232 815144531 221829787 636397892 860317417 770938705 714740390 812960757 220125840 244537022 220113647 772217636 537703435 818601311 412291671 157347479 224097614 688337913 982025681 194224460 286231427 543292516 194983361 2433999 695953147 544087216 975169842 286252869 775535378 709130241 117530256 206610491 654564823 764362277 780312826 671184903 118457551 545558392 920214701 967194992 297079417 368959906 838866836 410918698 578776356 151832282 261524714 707622332 729014126 417830206 902830140 793880983 363779147 469612205 146123586 722202306 118934244 233274272 947581617 178901889 642631863 59966210 344903191 958447370 365725393 837069877 415740598 808655701 794991397 660807373 311121298 4896285 452883702 64446099 999273905 620365160 360848719 899164822 280296119 199391228 351296431 355219156 478537298 531199848 221492020 629522556 753402346 163962835 958133687 675616110 422053837 9779609 869650051 346851152 907838092 477616904 836514601 425599476 240311613 580316339 324694346 160956762 722593144 94305759 741072267 246019088 417693574 221136647 469471308 488140174 330161036 347856248 883689042 345415331 445002847 16945116 285742309 590331281 615530420 753790079 849660686 797865276 228938971 786717624 2260583 715818492 457000907 546573162 900892918 621609567 771223468 715373762 208837180 909290098 434989940 391865804 840362150 459031196 686862987 377229420 726245916 388907183 774925675 803206986 33056387 420803666 654477081 903317981 355299448 76525245 383796080 67782921 551682069 974194195 521059986 107961862 378604848 304321733 908212111 558143171 876186690 675353299 996056173 566473488 888653463 308424886 925420520 220587019 656540122 632993381 914640665 511632149 563310477 378421574 903018115 740610885 666565600 992015779 847647290 476052121 153593312 650527918 633910765 58012076 355902729 264361864 892417156 535363022 939453407 872831869 576942452 296812737 390910154 561261128 993927877 9790785 14348413 61768965 747870605 148627923 732414582 355580084 915842584 151553291 265269764 352770172 398516909 205113967 687001722 419127194 693969085 768636171 621366835 333941160 744126218 173980509 496487170 372681012 745854218 55293120 28386490 136709461 565526751 756089854 26518464 239999421 139828820 976618354 324160982 922423479 205799629 783329727 344263604 412667786 652533603 776306760 844908233 628378171 20092272 790472660 679716609 83812712 641654378 443947397 244749150 291017504 200464488 829532493 671943616 960953016 789290133 129907306 755858196 804297677 882009152 981332862 893308098 182841819 992833147 559609970 212782393 841657710 702440228 829468096 107079451 227970068 408166710 718898914 138954096 923781349 894518313 721305097 924067332 936833301 292514079 632407228 916645153 184092015 521755652 289567477 101386502 704204045 83126765 527034031 357908655 156257063 955245544 155298818 96173453 498799566 666721921 900622066 331747934 456321634 497868631 990229939 88383719 516286036 437574544 471869575 675224842 316642920 788637751 89324717 447811186 474114795 359318977 154638422 843233395 282861748 203543463 769915825 437098319 75469629 720386251 281953203 278780034 45667165 329535735 857233382 240928290 34767779 971480502 798423566 388571871 136978310 144406511 817969060 757366022 811791858 934076835 930997701 118393597 756051027 753355012 136634054 424846815 290271345 997814013 873193577 323711055 82837822 824985521 932165063 955139008 329796139 133968733 75521383 659731344 459719359 160704326 760390823 874140079 340569025 130891897 508666751 806897983 770898611 211567314 120505571 155940773 334630629 491312207 272618312 803458932 151050227 90658117 604216782 46340178 778879335 530361991 528809928 338930687 360589786 684879815 788699124 274762989 698212532 935872973 613295162 871244301 232392212 858541838 405497094 544989610 928693965 742665366 963900941 3975639 863111942 882171646 647230053 754683317 924823263 594216941 676630051 945743241 515866552 503971959 626731347 61473912 547554382 355868208 256818734 547574853 484325353 65593090 746935038 669391661 367878975 466702222 478332211 715596741 161374102 859624840 752109206 236867691 393568561 884762595 632036311 497717467 187605706 354077138 715719554 843610437 565817252 357959784 160341836 822698412 851963253 866338886 372612706 40448793 573712682 485807547 992752055 285165287 186623739 302796158 155551241 657007893 399885748 308538142 892750179 117627049 711009087 790381595 10177082 655594456 320210190 493187871 132533059 229601300 106204157 160385219 20027775 869775658 948648525 74771726 83321230 208573807 707514659 613924468 405456287 858930960 936906948 187756011 793917988 945939965 667242268 948979056 939739570 755326488 477290477 712019008 815687126 782599133 882480124 103999048 535140615 862926152 893798952 934888641 616209195 539164915 242941250 710291305 752434204 919512243 614546860 425807155 39075306 912927668 408386696 555929411 898009020 183672195 573851133 976248367 224549446 984528547 906911448 631324383 964632485 69510215 211002442 969091370 295217303 395727674 250888618 819370762 18568460 350300103 691544320 934361750 79616340 1007087 72276107 988269870 911782528 805168531 870780678 335501442 438500030 918772226 614224903 649554838 778996729 60941723 353182243 382744172 579410337 633631332 478922080 778389631 388803061 772592089 148763464 637388754 813260620 911447786 441811056 281404903 971350281 767133922 996411801 38014869 893499434 941551569 162220494 528993288 617890775 911456588 319918606 529053455 661703991 531579552 642726296 637646963 634165651 607123547 227323477 611502509 719744645 251784207 269384460 990067688 261593132 833729653 687379874 333560594 97218332 34472584 515871505 614709605 114449265 696731086 226565671 1269197 242730383 496182467 824783920 216225146 728125441 904606671 457876218 39134230 918137288 826719727 922946909 512241120 76699933 420928835 648959042 701549129 201880442 290534350 438428243 516566139 102648724 791573286 585980931 409966672 390661406 690118047 649546215 340146499 695391340 411791157 162545999 654650755 1249837 778086099 612581461 743375851 562151312 133519134 670900010 414480087 117611764 949214685 704369984 952207437 593320107 713652450 638982669 751690376 250272393 194407696 106239509 415006319 331875581 996700382 558335523 755839054 100766135 258802053 155547984 452578067 422001360 107435866 30115973 830320417 842918243 750045949 770196273 583246745 834477391 310526435 555098031 639380133 493038845 690420093 195621389 233651271 651770051 720585876 2219147 613538114 77093118 583711324 694359398 97945854 116970788 178143106 250435216 695504892 222579396 70094884 681133671 476844879 719878219 329474228 349042638 282834074 995829911 264991403 873487909 553730866 891787890 312984781 314893393 644638532 818212970 258575523 248038298 637472138 267688213 258805024 468603892 889527644 396358149 191120615 513780918 304616022 248127049 42029957 796797677 561013522 258667888 698991265 191301956 966814694 724106611 716968497 846716491 693249031 104504854 314077612 468472164 38876136 543341114 34426335 154175505 115995985 541612950 767006378 223082018 463695888 72155969 131672544 23297115 828969176 943129837 617964780 480288984 81771652 62053617 226179078 386594946 358099426 964606040 449337918 790386616 975729628 926156450 504836442 382716462 790827142 381673704 985717636 24589906 658028327 370765412 837899453 80404168 482390646 35609970 719686383 754685624 519147866 382661563 556671824 993991623 604487134 794638102 558873295 765987929 620733675 712427045 380614261 541916379 264803908 949246337 580222157 237439976 823600165 607121559 32070267 317792810 801805980 521268989 441487942 673079836 437290526 42066874 118409302 773208625 514832618 665867253 394638896 869712896 214933265 888776406 178860260 258714573 190866046 601981870 240081097 263071966 76732705 544643414 439535723 961921708 277044304 136818805 191754419 871624256 446035376 400885818 396450653 279743669 683005434 319875999 123332262 765982743 626211808 787578812 105642738 448133184 638141241 765174676 21471211 336378563 204735146 690845189 677038670 485359516 692041003 935286899 614028101 487107112 585818258 892468852 173706595 680646855 73373428 331361076 644955251 817454272 867440223 391350208 327681635 53370270 860026353 225078925 323480702 594068175 252055790 403928551 400363242 299120006 858769981 414656079 849826919 603221527 638280869 36858887 419363166 199112715 598195680 284484844 889837422 705278654 507095983 950387724 535813280 960417607 810815295 829249038 85442535 939842247 271423645 992496720 605200846 13425132 966650409 19838806 507551220 191160994 290142010 472167629 532599152 834025676 9118933 869942598 742323063 315671635 310410746 396178043 130034647 910888328 417725199 363425666 551344516 576230978 321451154 31591268 231707095 885232426 584276965 347657617 207212188 428107385 118822180 130287090 721566075 587649076 690632512 142659948 592248191 931060214 696410353 407901492 393850338 625889458 994228707 153811011 72567555 959444880 607964058 477104774 83165344 715589506 605619025 813672262 464824060 836245249 931834763 561035607 299927688 278151550 955522114 472113490 262617720 440507313 42226355 423828993 891512841 274888991 32156092 321282830 444026467 529482847 920025526 379625588 652740723 466769466 816026860 592505729 168439279 376363431 903815473 915035617 28951034 884831714 729475586 751890150 114768202 478399304 117039052 31751276 423861729 723856646 201727284 36224882 331240010 197649126 894377378 750948411 969145742 214474919 407419384 66824778 62526027 327580312 82027967 380384344 996220929 405446033 868513249 755664726 336426776 852789937 289163929 116778154 170843599 643810194 871256140 968449026 853506012 301508852 770659357 265460027 344812701 197937893 53803017 997849844 429808690 253372688 182810904 637366352 175963519 70475028 302488734 903274401 374852278 504616704 195883337 128805934 107332744 856594265 75800729 910079871 854463998 285780038 711081592 614073663 464186874 836526807 810783359 137584060 100214260 875965653 301719733 652584886 195666339 66331299 104044270 784214811 873461976 599186456 933207202 274830143 560840597 303571343 539409074 907794130 614248106 659235798 998148292 678845821 411880029 903767369 212085414 272092730 937027804 492018432 796243789 853273022 675646336 523876849 189700801 301014171 434453518 189743809 687277979 413010599 536503081 861122110 268001238 171874824 499566152 28408993 908324588 559300845 550985167 781390779 702319123 298460119 658775617 13960808 69101136 591750224 355838990 709086401 737384333 505768874 772497976 485267243 515623776 586821555 187997162 329568044 717850057 428634630 679872846 584797253 418728953 714108393 588590134 296870739 191625339 93606958 446117004 767663749 357478955 635497773 834360126 830350474 303860428 895771869 45261617 986335938 819748526 738082341 224155595 789386819 250171535 496329503 716294049 891780030 422203749 77456447 373741953 134642875 544639350 962989820 626715214 367501584 81771798 230955609 874123297 906553544 78645984 668427203 928281972 601543080 76449669 414945338 269325224 382569423 786204011 818924927 150254185 792894688 48619724 359522296 891020901 281711842 789238968 885132180 376262265 65304872 156943620 926030808 125297638 589749654 136046642 19446837 876969706 166706312 768821327 600402136 234370847 607005704 592188020 894996182 736111161 520115489 608428892 820992437 805375338 180454207 653924303 671070422 779296951 327062831 617631014 434168594 436888763 337477686 216074149 743495511 800534437 398666439 582627006 256936814 235273383 960136051 33330202 232905829 131222581 447272227 433253374 701643808 188174389 242737511 308460981 745481948 445684908 738725593 628749166 639555643 307930949 838220040 874025591 66859135 337307564 965743050 568090666 417658450 724154129 194526618 793544171 596079123 532921515 359223904 786954519 133685889 777007284 597819506 62018461 465652408 637150588 917161025 255283311 471257520 745081190 703170008 164948607 325257236 249967055 85992782 516558309 781261382 149983613 519677841 736999158 847540784 178532469 872729064 116577279 876291404 701363807 275223836 307949997 509556576 706882581 760521759 206989741 123242676 774478027 743114682 308658353 6500340 271828288 773369939 197571924 374072549 987037541 231072554 718323727 790439937 900361243 554353308 761025262 42296967 22817443 30554438 706330657 7720221 729125890 435308890 73948481 715997538 57247969 345175127 557959263 619751570 756801967 48349161 515793359 208106555 556479515 44009031 371649540 650777737 111859714 835885358 274836085 785343002 355125535 144461478 164048646 567753201 840110175 423121872 931675670 452769282 772549643 720513607 452059117 172258615 468532379 991279506 824806374 590256910 822522976 321540087 180013602 372073544 289484904 134737989 832732803 715803981 671942883 180359953 994762198 484771011 479705602 603377404 932046682 499811756 872359339 600824622 889000631 306117104 127735880 922935416 774785185 815868187 887453618 567946962 183111980 790324108 898240500 365494060 35920817 384294516 814681513 256293130 662423896 505686163 214709840 858624793 659947864 470699112 614229671 107376940 845952512 767508386 947820562 410749974 651124869 985815471 819222445 651350316 227291721 41873744 779196158 444180346 529795335 966023487 613547906 377795691 996527188 2208019 930449990 226282992 318311623 316971473 506594338 445614192 681465493 496269009 163515087 435777852 831082052 8593529 652484574 955581534 518981141 205013054 533318079 776808210 746970839 781417198 72899615 177637232 618378839 247553757 289447826 270415324 989563865 185604478 357911267 616327772 812413358 87785157 662896760 228898219 673463133 220524597 463183121 445328846 687981758 374115113 917045586 290856458 934220791 148137677 63376032 785244030 851040050 299946712 10586416 948781630 736182946 730536030 641139633 580892476 672711689 563516489 705887531 724661659 13414019 433055023 27138221 546939421 829882487 252301606 666953689 768751431 243722499 559251619 160611369 964657988 940442547 836963607 716986572 307363525 278326430 335726547 819875778 147548398 859993603 977590064 559554714 487976892 18190560 31868364 963061334 956069382 624134243 813749746 43895123 218883918 723975810 974094810 946486881 466942082 47449677 683833779 749467485 140943089 173104793 421332932 949763819 167451493 438110338 845071513 571755447 655816417 446109227 500498979 207872354 244961082 312654704 334284247 331517696 579889084 601527328 452700106 162362113 870325762 697240284 728898801 56449909 560887106 875762015 944020415 468426463 126079972 328679825 269172775 689571039 257312784 255927690 357988664 688926306 161782852 834151744 7003921 623738182 457892361 60238981 296390978 638939470 909859814 75860920 443862838 443706411 591938268 886176453 991478907 704871677 290030534 267093571 663615160 415631879 136503917 909838114 670041531 242151879 885485922 295329214 748014120 721113302 937745879 689449231 420235808 404257034 927130040 409944879 526447000 664458548 847995146 372210581 874031013 362957286 135463241 232648184 432366659 144998641 839762741 486200071 370086247 970095248 247994990 627335456 353388435 560109637 448643958 146236459 146438500 603255477 917401954 138068426 496683808 435026229 307178092 46075201 7769196 282015329 729888983 180289921 710413880 906217134 834653754 998398413 420117470 126639621 476034763 158816438 98597979 131200142 805203747 736248117 585420905 545660740 738179415 943662931 812452290 978340512 133515379 212415710 937546557 573074023 699868310 217831502 674997484 562380466 458729031 156799677 544979866 418829461 310697140 595216822 444506396 438133172 462633827 921647995 579703644 9439038 614798147 838350691 553818974 449472668 211722233 277082841 619299973 479329551 332407199 511712323 112270448 544320214 316058601 703745163 360471964 962004862 898758739 338871998 521521333 763193243 443880971 301579786 501523079 420015226 548466706 565922225 31599863 213430623 960699462 370559817 944483357 22716721 296284769 785264808 441641330 623628542 912952222 291332973 100704607 341858413 570556395 138472889 250384692 439920611 492636845 669862438 132915056 557200976 973308148 273781405 505882206 509405785 28536876 775956225 883877747 285238438 795848188 799139910 273359836 918868228 26369769 415590460 801210873 63442431 3574151 548055871 946183744 555987106 799729560 584906807 488030332 465497318 673124769 999859893 905966938 401250866 205949627 290748799 263622237 307792409 1435756 368801521 744164810 33873697 764269720 75319850 243976525 626421281 293956873 192872839 19780314 81237874 687245773 115196476 29696593 16032527 821424854 960363801 58411590 319271890 280400928 555371921 990264329 832852845 793102002 406779346 188129952 541052698 500305163 328812257 453050331 360539348 967535027 203764712 894345134 150886256 936319523 311186245 337518143 285163829 205918362 197312834 997122528 561477346 137673989 985435788 368307888 519996751 268439423 897619191 338071182 387149226 922075683 335979607 740549702 605266058 287662769 462811434 950268971 954866554 485578820 170901500 843355143 260741721 283878336 323549743 979135411 815923973 293438358 351272400 871012639 476928823 521605180 347104914 709114031 272565926 345487196 7472653 197097817 794990363 217368356 772783165 461123470 927314049 684920915 549903501 100385394 589529505 683922044 212607394 20687469 363147453 699251197 776595393 687407836 564092206 435402814 797519116 883626655 514879081 714433136 854699369 731294767 715790622 49040785 268239566 478976995 52456182 615101471 163416499 744310246 889056256 106141983 219005789 628993036 171158587 246704337 831636364 242878397 882221019 327116989 300893348 141289903 865941010 511973326 524284123 568597765 285881778 390113680 170188112 832605452 103433291 998043637 196049008 820207084 908026239 709684270 928966612 597608676 815991871 956345412 543085387 553979425 688561153 822793591 112712586 879720671 726716350 420964226 208737343 193138980 700484753 27717220 906934575 800430290 583096075 905666649 309692113 996723207 304206265 389534984 98669444 769342264 958807036 10361351 791355045 588560837 771526197 970164870 3921795 624637076 404181411 754491237 191430600 975157103 275532389 285130592 742271336 64268869 306801437 246083638 408292088 821280263 153615223 821349687 340422324 935713166 836628712 423802129 991870224 823252162 227191327 279786182 152222639 750888076 735504427 332073152 283188355 211576190 12798735 939411763 925378009 947591546 140769168 525243989 56757592 126075464 229970292 713609338 294485491 898832995 435243466 602233032 623078238 392244970 387666270 994807336 217494962 29314971 162249205 3984367 941906504 460691957 76009245 834761499 822869646 350733723 971088926 652366740 803131341 403040575 686771830 168242801 940796678 634009637 95732839 838806725 995653590 321511306 355443877 867672757 488867819 256211342 545512468 137449559 970691996 746568119 849749985 345020339 953500577 709155045 394934252 519850514 509857025 55266211 650637990 572038793 558379083 449760750 558692037 185759571 496962122 837967883 790691369 650538305 229413841 525466646 254793786 863488799 595385400 255074572 277726665 966149572 197863366 98639747 381199746 260759000 337383062 181732259 1154129 144767297 852532892 516358594 19094394 827888561 768282110 85203768 269859985 112474460 919580844 722136469 307715035 428779319 729772080 749522579 886291157 445021735 858162702 389844233 335943884 223402661 930611081 755376056 595963451 677270481 795341550 169037584 418205268 3887137 938206599 40123057 143498756 800203978 692580303 142473531 47378955 829097728 695007381 895443202 975658347 308314079 988154925 716588845 643051843 99666370 50959734 462451708 166813441 332315146 368662496 732991869 183222012 106219186 537437799 87755731 73197331 50933843 238970096 956695329 555656926 401998932 148842197 245109555 87259438 68280326 507765432 997831362 473399046 293137998 849462345 602469048 352562545 979746798 204524057 904748570 301864395 651870283 138554238 838040446 638702352 198380193 756315847 314516872 181564157 388410048 949061147 794444071 965416201 368452138 184629099 145126964 195408081 974412459 962279831 771523603 491765773 311936431 616015063 176976604 208823968 74330418 199972435 586793835 838955724 274061103 666483729 683414650 649192641 581023532 961063285 754096418 199582808 928663496 72972395 407127401 818787756 249036885 492669314 313065985 276257273 553385488 202835942 741946393 505427747 567707310 747367508 5625828 435772418 938695170 538856061 216936123 182052139 839586216 728272538 287031578 51937342 189014503 987799432 188138224 227395053 213215756 838553121 378742897 553431474 331331387 650046014 341332899 321657775 497506807 584027412 127377351 192577371 890872553 543688115 319250622 116282422 248588502 241868262 872297725 164168622 440846500 303168818 537336499 917624068 980895821 171380655 778404641 15498532 429023967 789713125 623426058 738511500 303204134 826943197 547486270 661146140 742366411 188611587 442480333 74225161 237431380 377031972 255991674 141443247 62123457 551754005 630743389 798211202 617360675 191992337 972702269 647425106 314084617 976967294 609068653 964763799 338028190 979964597 35836355 209181124 45495987 172053090 900455681 752822951 811964541 419418620 420178540 914165461 418722836 296785235 550531862 377827031 589283866 525834420 458987269 139800363 405539219 526262194 595324652 557407096 966619187 151316595 201516554 38232971 955390275 822619596 657653179 550632213 332013657 945616146 659411128 830413081 589946704 419395032 581529187 960004814 932660819 831231462 742061355 547425832 521920762 852184622 314873351 768708344 755313971 946306947 453107428 702407972 43215408 216024617 869822694 10845091 630314443 461621110 684104448 181417944 709133235 146767203 384065004 934457115 570480306 420100637 593558889 905744841 773035108 505557711 409546076 440962343 808156871 794075756 294571921 224348463 988868996 265292156 78696865 952112389 442054856 5122642 49184590 227045075 510586176 816340567 245953869 668871887 238966875 389445409 866630292 731794444 536863960 840749700 414228391 191807053 199917868 967411378 513659284 482119774 166631909 444648204 218885761 322785832 567731131 751734175 570307035 316487432 575184605 762858535 800752836 198392006 959719545 301322347 498039814 292438181 121184187 698904505 760868419 181689377 83866435 300345389 359327882 149514975 253684957 97888096 577487850 712216559 244369579 96334003 17071140 760580462 623782323 316497603 692973237 722007394 604300732 162106912 72006573 591829218 424493760 589892346 374610496 255549315 131891076 424035002 260321992 66888413 227754535 556026775 340090403 297940302 67128942 419374207 886755346 330527546 907012435 832199844 975476773 440085721 760591694 992731954 100362054 413260569 283778228 432678555 412958564 451418956 981865666 867866600 848827441 752589682 800475164 194654944 784745744 993539243 129481604 52267975 40044276 583572796 401540508 667080920 611972713 562469187 179692192 496019488 939577961 643697728 542057948 635830989 588848304 471802222 63938278 769425695 797512356 365605393 126714907 575477796 103537536 882451430 212728233 616167439 601106832 496428436 692440146 880658341 337650710 4643906 700383756 170251351 758216740 534412865 528160714 413420244 103234780 468219494 13067694 449294064 367321214 492232098 615992507 58974091 296794953 64033498 613506025 342137626 25716083 841258160 664904550 301162097 165734603 638849262 698527892 616078615 474781248 575821764 963259021 739724032 85846641 370143044 967769634 587545333 479284771 837705015 959024658 91325768 93280484 47028898 380561139 578355230 597307809 54479283 836595048 475088695 792815800 383579914 176280559 59839731 492747277 389541676 433581060 299684173 356024415 453298141 844953592 275996966 718166315 702191222 865895028 830378840 977357221 756901692 15569923 931732223 614945935 58885631 781255721 117325175 668140885 560626532 771876327 794010372 237253672 228350363 307475966 355825331 708042546 1409076 360147797 645008855 460464075 400132697 299896296 263025476 266124278 642594714 852339085 124420550 444560489 832584704 302346131 557764735 195764737 902103234 520814388 120906331 41063969 787305062 154438731 509937542 509049202 991188325 966485274 901955266 328635707 846130400 549148350 405725357 382378406 61264141 435384749 124919326 773350748 106344428 624812525 72524079 826513397 459525376 775826720 374899188 243580886 33772690 175948352 36594014 229772909 259377772 618597101 199231700 45932723 536333325 970659248 440060989 996556219 302059267 754272446 926792684 172422153 648604773 656558499 674048228 652032494 790211536 432961025 137594176 342942914 399743567 520783295 503004684 85214228 879342078 664911691 313064856 760841087 620413343 524472528 319240472 246641204 307874263 97801614 216660343 352943429 307949961 150361345 166625995 870695452 909069256 37964626 49555081 243545939 245327502 343361903 533030076 564662431 960925499 845190998 237937874 867271132 625853233 572633420 338800023 877807661 981913968 692960491 915551816 783618133 234707555 326339903 750065513 598624287 30413909 607747880 232209112 143084889 109129999 38164861 463028682 355310778 93854465 318880347 192492640 421449700 257360654 587207564 758904143 958092210 501799466 322054881 964509208 646282694 711854933 31427803 953234095 278466052 749881337 267984849 580039284 356289493 82637216 600513056 469085680 973110717 4580622 19581289 228179387 121311727 291817251 635445058 77136233 362087074 193827038 170538462 83258797 563015351 768317038 182859185 935936732 654834039 245042663 847035834 536311707 899898472 596837973 759648898 637889793 723836136 388274184 945311731 43368413 559514818 719068902 108973049 552537213 88302930 548291611 579305893 827220309 129818344 514252933 708191479 166067383 125283088 971622972 779395344 263318487 780863912 7655360 598466603 632406886 855570209 708043271 743004978 60592330 317866514 240815969 179647293 891434473 162998422 479946448 130990627 838484067 899393300 654296036 241901128 515532370 717719107 560723365 626788149 604597056 683597068 807136322 240391472 634466360 452283917 529720146 346925297 117959335 230784855 554865973 498743945 44528546 456075831 42458394 622510765 852945565 60942816 91127005 259704131 502732127 199916586 814154001 636977040 773583998 126379941 797958890 224477059 137041201 459834370 884052458 509248805 628373537 653369010 455227698 466579188 977628182 624578722 963600996 272996945 289152498 584171057 754157742 881440404 564518301 166450726 582253794 475640596 270015313 547295374 503676937 242064402 756529696 710805775 570636344 781736877 803599520 819367836 269542818 257802225 592355534 542964443 743479455 169561549 981033210 67417710 111272705 373938266 290516948 770276736 598373367 888612825 866919501 212658676 414693550 20914969 931304628 239831430 149072602 843739621 697705647 112716795 903767815 850099477 983234357 693618106 384258813 377731775 670761100 959423822 449826413 341877234 157040714 370354766 432032286 771659765 394489826 553512737 341356353 206085989 769499386 321957469 622549260 230554390 134475765 693712885 685899630 23991170 5510583 225608487 120705563 818799019 244511151 233975773 216438849 810591157 492760673 710996810 869118653 21861550 376548373 120455058 448933870 365134164 414840855 413572590 281332868 380351291 136945931 950380138 477429290 242108041 175823726 684462854 121948549 435172368 904111041 157382700 459002311 638432569 887862290 926246092 548495987 281253050 226560275 376477808 209772695 509779319 308879444 892992234 380784393 26836214 912890125 700390031 909477350 487164344 863917290 74092064 189725412 784592337 121104348 85894418 860643214 232943701 460076392 399066930 176906280 231686860 438731929 51032561 891009014 150751953 999301349 138205617 746166051 327225651 154663235 65238580 36640835 65341328 655443067 385404478 345547603 102767742 764170745 793839488 300109543 409981072 965285628 95474728 993828648 805323542 165821391 597670794 818967682 591135381 864088343 974597950 632063119 500672873 351427788 47361699 441612980 621394375 520288013 225402023 829012333 772931345 368235203 250388883 103892643 203172425 625809875 466884041 869115116 962191151 642122982 334684430 755548633 963157237 297444806 668914033 533150071 89373604 655349250 754757283 786780788 2338051 401457401 991024599 288654921 728690854 86134007 549911094 152944781 485532789 497930957 37456794 685437109 356991511 314629871 694308960 611771211 171697834 711706867 10005080 549969594 376245166 384789517 761139774 880784232 506419870 93042370 811309030 797977364 462137638 425755353 813902142 924048905 290479742 817233959 171950647 248041570 462479063 73307200 630844954 21790657 687279485 936706824 299017315 57412667 149475961 34158766 228486373 777616024 81808786 156833129 347158083 705112478 44214300 448977298 519588763 651527440 422020089 322397755 998379347 586138659 666808562 892002765 802806797 837883079 401415553 548115 133863446 333151132 965946012 2913568 555472909 296989403 995847495 567892670 560693438 712288646 575389297 500685429 996775491 157653259 932635862 727971540 259574782 500893742 565140186 21938408 97009734 934215265 376596307 208428361 850255815 178233736 428109128 127478897 80599927 939958001 969950553 758701089 127015746 82801736 112808126 629021096 102651241 103304777 188097496 543648049 718513857 278333856 233788786 107169433 685820462 423100578 152289575 444595549 850083858 931192993 443706241 159611650 295572175 456920146 885469153 765228731 699874691 93872371 296548039 279863210 693759169 756368036 275811686 767342957 304226628 712969707 815105228 30532652 570047571 943134251 215035912 330440737 458301048 760409506 439983647 370047439 622024748 607674666 340624774 592211897 668389820 25971094 233161480 508396968 655253358 319425352 54856124 525627794 777222872 827169067 248093840 480116708 498361477 691843345 601623168 418536926 791670711 58737312 514357231 504262931 139805864 636590592 895502867 968670586 372735729 552274058 87960974 26254774 79106080 426464060 347953436 491054366 278781947 384426802 600260441 157534004 605238530 672440992 678728516 137363866 272213244 278515765 217297007 860100710 244160684 493042611 833239524 618879177 655214690 635587290 716394104 527308922 821484538 416913615 72706704 136768897 478179007 772103749 838630464 748227997 223751313 7907920 629757427 504253813 165381287 584889082 702487379 878346082 689411233 468641747 978426619 351262159 794680936 476259531 946981301 982020071 91303690 900904996 393886369 113961273 797800521 423306490 316327836 949728490 678750870 825253980 303745393 11632604 104020328 608492125 252445385 436959418 785241431 501649652 39026942 55398054 848620456 611177486 269887593 177942975 708142886 691149035 832822514 520019052 923918618 726523183 168844695 122814059 132695984 988473158 574857860 169730929 120279765 332438814 418114973 209374099 592902175 592296189 311162513 808740612 452688638 58388775 308723051 145326266 270517132 58538436 993626848 182238120 4621686 463328679 207508993 237069494 668611578 820720456 444463776 984518036 793285327 278794159 969664079 676630683 37276993 166639662 861642987 136470652 534976899 995962303 656787013 819845409 182380268 607940758 617119704 472154131 516423359 621125949 281943467 702246139 98863886 728207019 452193256 319897639 602865703 795244998 869433723 843897199 209123509 484924096 530574883 565347896 156927678 458653195 303857506 115196708 699014409 8621582 457925647 742275705 129396256 727555689 623077843 731288118 533313539 298369957 969195377 353002324 611831879 242654383 678429855 552038845 586074038 79941331 873451123 455029527 445804485 130819220 999382960 704972172 97141161 586868631 780075932 654500441 819990290 123153937 714364436 227047792 582300565 2959798 779088465 693986945 628740489 93234290 807115855 966563680 714439050 159448888 702090712 250214247 16892235 378611944 451386633 296417436 514528362 441680647 705477280 351987690 444740572 128169843 801318868 291433829 402537569 594553157 997896413 169894077 190715299 466548036 717293215 883380994 935389611 665919887 531630701 985978738 220339471 522089931 91444481 251958629 593775528 159291 382278182 618090964 953382844 849820508 955094806 522348081 225042045 11500062 632703948 643052638 276194013 533626203 120698239 155325002 387369574 305969621 447502945 874557901 637266280 145895832 560328146 26681015 211946577 278369561 249654083 238237570 892263516 400850810 775815874 440348706 66266104 629106740 224142582 618353961 139361563 300009005 252017448 392188062 360652689 557593175 20412240 303169362 10029902 355238587 183284455 57648710 508744143 256197311 358459593 966897558 936515893 507604147 236765011 214518550 847740653 166320994 508276463 334710002 350043871 148308551 11543496 340849196 463530302 965512776 111411781 639690473 504847655 613958038 461810479 556116917 214407746 321666064 343592243 24293818 557052271 644092361 514243771 891269341 544430309 914816807 559874265 635498729 552506974 465033140 94231683 932418163 979587353 65723741 129968128 527309728 486858012 668960316 967202775 978931617 732105349 341683599 304794574 880287444 238386846 496238703 264599626 764138206 86683088 530234318 452057073 239284688 423709633 856252785 845176536 697429264 684535570 466527607 322568113 520588644 685196830 461921241 51697840 443276518 400170794 587969010 634689545 335940216 232839227 479768808 781597037 2145065 977908974 809131200 879497974 803843250 821981965 246402929 222914396 154453908 676810089 653645420 792393554 17966525 909527476 433320652 331167414 606626608 806487377 970097649 382771910 570916674 245879019 212223088 660271127 168341491 208793708 271290491 160749968 936627875 930781339 11574697 628840772 298744452 90519198 978155544 627793584 117201692 767047269 385662232 619983167 498448072 789019616 274054292 334235426 513477247 935585931 669577749 610069950 439034939 141870414 832414385 792308448 953444547 88737296 210831609 979260702 307051311 458585903 512951733 945896213 899739834 444902260 473158862 738528421 990940155 194983677 455800304 546781652 816651422 221049401 492998104 812609305 88553531 409976079 335380988 262209441 198558073 277554639 594619030 896512843 619852413 877482697 54853037 859161456 892430075 45010801 723407317 151313867 767944827 552422442 764891488 83505397 159747432 12408486 208547005 647967587 28891454 412268513 330423902 406005507 602886776 96308510 38452618 195930488 992665409 169788718 736283840 975453395 263941517 436518304 733992069 625546185 486849820 964856183 971656786 805747945 823029148 139343459 190569773 617424907 131645005 34761447 527622099 222142966 984412091 475464311 326991236 743363349 219462010 332550105 268985634 84771432 486779345 119228292 793634664 221166499 947910253 218046489 584503862 590933707 337812951 912657288 761473951 19509361 473573468 120427983 413297918 201669941 99233513 596661543 610744304 149870423 682313962 731669060 75651902 505416039 194169144 745431535 640646589 3645509 959059311 793848677 933623170 281149999 812961391 314438628 645977200 353086598 423919186 531254569 752650704 70388784 465387231 577107678 377109396 325940038 210998811 582621707 658937053 646227924 853127831 83091291 849739204 514160330 251061123 805547239 383944728 669150872 273462785 166595180 265411277 839892465 997966827 811853623 644526379 436257782 669816361 624602629 749686840 205760629 418293785 761885882 677875008 45889853 313824201 86013207 641416786 557005695 559255265 553777985 776534842 808442938 410362107 756930752 878353563 194291464 824122094 105931436 249997943 98444777 143720422 280450089 457353639 97313042 984724938 530965508 769133145 842526114 561519379 104137006 24454110 379047369 830886037 198085027 583199748 313134536 125585514 178974270 930423117 80104724 625474883 922909643 964688952 802168343 291941192 96746534 352280932 64449830 284813332 33573664 603214160 254222695 497960012 348462938 882445867 570718529 148754284 124641468 208194218 827733935 882817788 481279179 517322718 790477918 470123208 186708316 664331452 183322025 477697060 290731161 86077442 864831687 493624126 693056136 898716925 213657152 347767249 84074777 956201509 440646988 486063054 163585144 483736891 45514036 44987283 964534258 828330213 657964291 115771161 218769984 37458300 473935087 114427948 808929977 375119388 758575738 573568213 743293555 577717405 667569768 951592040 913407583 687068537 860741782 16921685 315749730 135753101 679127521 799870496 135552225 637813454 716934234 603943024 363980112 158668277 801480646 531298489 710268228 294456845 69992188 207226144 779924128 455121438 235791121 465485677 99227662 737564817 940860349 29821835 274292135 665497828 984476560 382429140 145088638 901303420 442155680 785294458 287493315 165080614 513837327 605835529 480587333 100258741 107332412 141655244 501463659 110729818 312238618 250295267 185920544 417396598 483544030 13566955 441098170 17393800 6648361 86391402 655967356 30940671 665160304 625821057 143553838 465311223 745891500 875086408 855968305 365553298 178031006 612704112 913810300 132373684 573300926 164387155 185250524 892584842 389481639 940233595 679496519 601796120 40508344 467396725 767628063 479484873 784577261 578388613 334398701 108202501 727458168 391331835 611045766 121641467 951752966 251347016 810131242 385895197 774451249 471170078 897699458 298537497 367930779 560980538 315344081 473728765 635772534 823946169 314671023 413610183 780106974 932007295 814078146 826859216 380483148 820815564 492168857 850112509 400510405 159787075 52143893 44675060 938128317 956846050 731022734 908868520 138295196 780932277 837266891 800259115 133554343 489077424 110983827 780263264 26156375 402643297 948242145 217947802 953100741 854277499 193021213 257085884 606722428 734345416 169782 544274959 894996200 723364058 671958345 238957441 304232314 86541818 259831909 230552904 381765322 402240374 956210243 432951534 933778192 784362652 415347869 114642760 132210824 433184711 770304825 146713869 265397967 772502050 158062408 862473350 461928327 292193195 589363836 302363930 943146901 657166112 998007729 766865656 60212066 484162177 195170160 994066845 383227858 412196735 775364525 965554622 516533484 376199665 533047806 894283661 926232020 338512894 831544772 779939279 244080828 455156600 712163457 427604056 975747387 690801963 720196781 346904338 467035856 487940932 141348769 898610411 333184281 445071141 154201911 699911435 398477549 881341208 768235550 343495383 938845551 785696152 889983976 690854741 299054017 879206503 749398872 870748648 372869202 407529570 838132612 836839316 431320453 629885339 797455482 827784663 574192977 33715448 13037615 326251437 767392679 966678020 588975661 352902887 72640980 50718510 889460113 266839203 338157720 650284209 323059789 663640989 698033473 118093454 97882521 215656148 352762056 837556285 490797843 771644094 771868649 214342022 855170548 944346650 771198968 299152772 928639401 198398686 823740985 447426387 539940273 716090833 657015969 263427401 527265124 268251170 290313203 249485738 398884813 499250933 504101491 174222164 183062135 139491200 330124885 893687685 748952305 436437790 362529546 110245315 309741935 107831827 899908111 532567515 858408763 37221306 263867388 707150386 704352755 187945806 194980805 115319917 915370806 804663629 340616489 695190962 275247400 128358038 589396839 650639895 515045767 636144530 631995042 363613405 762813284 709623986 86476121 298122068 947828805 985030246 36856882 475852181 434349980 432640761 268854416 784931705 998087381 859768600 395682524 395340431 809282736 425631887 770417200 376424111 964367060 917030173 681551446 786514641 91441640 211389941 255745770 304379882 225134143 23533130 353710683 289168484 484034567 747239036 57306815 285745707 669760921 495186659 693023820 483922963 807868122 968237809 925312845 224406565 496261339 511275596 760805688 213085983 834704927 792697645 87766654 516689839 947637864 689884272 991628855 834478251 175641910 485058434 661856259 645091770 296603987 774993478 105579387 319543071 430571524 164896558 185048738 152146086 441727269 181363341 246258960 235679824 47605267 858051075 912094535 268132145 10336272 20500312 455646891 365175810 16305377 555279747 280154963 46234563 822693335 96228901 750181425 788677758 602880542 111266807 117393876 625459696 304590703 804094866 32123313 706768599 388020861 758669359 29354054 925629344 940375596 596992607 708798992 943571949 512114850 951905601 573534900 827342416 590661138 850702032 516889382 982235512 285205820 419146460 221788925 314986175 462051010 766538989 829166771 409653729 280595876 749221367 329730167 428854388 362048215 288528225 730692733 904385979 602604600 224133493 404202024 47914777 511842591 963903969 2566702 759652696 717520457 404629192 289029626 416008125 154122241 158091915 586126813 948414686 253937159 542776181 760118584 816700641 288174364 844302930 923217574 411862439 837252624 712510447 244206376 140612251 991991335 924992495 491991315 761219754 332392802 235163618 395092415 401877848 921867027 478393796 405716462 516984922 326982375 761456006 105052043 408145805 436345647 552938545 79939465 585785199 93099991 99222929 419589073 755259815 849479995 790915137 278239556 178348027 630033448 380083935 519255475 466279026 707340273 38850503 254107628 578936609 493829899 5439644 665213059 203808632 822827193 319207439 263676105 483909227 524872978 329462938 6152811 988215593 687475015 274538856 78259436 67455986 34719387 726279033 610072054 937704214 898823297 123630045 212879828 733130553 417595878 38625080 656295637 676328026 798896067 921668656 516680480 880998766 485438405 132463585 942126656 286302978 264466843 622445219 608938219 109235801 575129621 356467427 126545615 488826082 394382488 627687976 569681935 472908190 112930597 504577509 560134735 365930698 701594855 642644994 904077088 996582261 461990913 931944959 248502980 247559865 965824580 381576428 399057795 997954463 283302339 560450376 217853216 180361000 137034374 217940836 735884741 762057029 823188946 659422529 591959801 961738741 459081106 826516258 564517881 464217218 382156916 175119136 581679124 819059761 551913705 555476112 77501595 970841383 12872992 373306694 464075372 865343836 189318533 203053671 152578660 407794741 783071046 719178932 159883849 593798214 703817225 954616630 601082592 638035341 194211083 658653641 890285136 98483656 322050040 1961180 141618610 326969626 486550507 53116191 36598247 641438453 834674455 621055979 248641433 629022538 129617874 599014651 639086856 100356618 789380851 583976564 69602414 120404385 931612745 262703803 734681513 573482486 768017115 165539461 106866531 831151860 235865095 338013826 956115075 461162382 501135144 474089569 650379942 612740845 803368587 586843919 389506022 170967781 292996791 568847875 852157818 994783205 653366996 408949124 115200456 880488249 738860228 698982235 339067098 547964749 583044007 871406811 662972574 406578053 738620600 851574924 844200369 905448070 863447822 325907800 206331460 704872958 41183210 503675228 849038007 559745232 989015780 440698796 713798296 914387539 336374734 141680904 258966328 649767225 295356300 171495455 190333 57737288 152740876 646585982 115040848 180437887 857675530 946750525 881709392 449420247 254734979 645777494 328843665 673851298 323558714 757311658 754293126 918491786 88879533 919105794 774394383 796948579 689547501 682080992 690535789 729930895 679440872 732627550 814956259 426610077 779182458 210223522 836040162 659588136 702184556 326539231 216669644 209949973 735944145 186931858 38955902 42971136 690932079 56317178 280317545 140036126 510908379 197126248 223474940 944744085 116627924 720047915 185153358 363206667 164822596 782972425 803133245 31569965 731872586 790915193 222486075 297693616 56010613 454879419 888520993 509508501 989077384 918375396 223053473 399430572 746492401 396131011 815349743 909350271 849173655 36377087 100006552 28731691 843702287 25130085 531529769 584766226 295116341 260098848 897234980 803691151 79107200 853184199 903197214 751095472 248511418 955810310 551816353 987644527 510309503 824388494 436867324 576082134 98466082 512555732 218740931 451071682 407939959 671742386 829247160 488337009 671680253 870808205 552269792 709479503 479407740 18958683 891119194 695847268 448565193 885695919 819199694 261374292 714242684 830189431 37393272 492560621 570594338 736891970 63475619 487597125 162075632 824471830 695901251 183457290 725877761 324050271 903276834 582799190 820126409 647017490 524206304 775546796 932084259 707629003 837291292 759989239 39623291 637081666 123463386 9727402 63192876 106458611 183296004 606621916 914453264 886153456 325958587 742693250 515064752 348895274 704418749 497806120 986017507 217349720 394259439 350806674 205482938 260836443 594756608 149284058 193766579 58517004 441137190 350674556 364286505 356344655 723521763 648416728 70887156 915109277 824563674 107183868 893516037 961086722 893428491 740370514 102466040 273658972 349276639 884233178 988862091 580389975 264390716 432306684 725909865 698985072 290905800 484311935 720012685 187460629 645940275 770513396 960097625 309198258 6015957 389606537 228592384 894877931 836878316 137188670 392177792 455915161 477599787 642605612 964590521 66683496 555543167 187455306 723959637 649806258 603559132 408755499 779961483 84726677 431027879 767911980 614976707 140167940 82653543 214623428 961350068 316740552 225912316 920466970 373465708 410464498 686675280 96847840 285494082 967386364 888872528 97670243 61011485 766752835 843441832 172322804 44403087 296810617 424588577 633522636 656276834 222233722 372306079 879496195 487798115 465208630 138682129 541002138 781198315 622334959 382660352 949340643 546811617 134722636 699182056 945721 148187889 468238000 72920250 191495426 903803437 241423233 512547518 881287504 496389953 765112750 41148931 307889154 641776477 509045593 142731384 835483751 928436660 465934437 823427835 80386065 608053556 945919694 123415903 170696328 912366279 38167851 81746353 604203084 522640496 934437408 535405033 895961772 500503821 46517832 585238284 653158871 302392896 312541552 709897453 147298402 995069847 328829542 222691285 339565095 560156951 710541993 755440863 761773084 338870914 874434229 806016311 119805763 736959433 827626724 998121419 288089860 520573622 440396696 960557560 464545613 239086027 324350819 109510310 123550041 568223938 665469881 662731376 851293181 856432184 350892096 525455990 824972204 381552045 477282075 907170821 72846891 519335825 63594061 329033226 355090599 361014015 542571230 373072790 423084766 248921798 704599278 427252426 286332947 422527300 735713903 187235731 763379125 143415167 492530418 71433035 666640600 53843549 48360472 763860111 647331372 60677304 520938871 8541116 154929415 279907845 994930072 20759153 568123595 204183966 877890866 50261162 195695074 311640745 192229162 542328852 542173483 786422424 106979430 734712615 764128366 678173793 161498946 188707298 510887677 225516298 46058349 473875682 562419168 302995401 124070225 469675215 665759623 939939930 538301077 529301432 157675500 103712516 112431141 810545215 963694395 584003326 690654195 389233103 434409525 362555330 541509364 125085460 58263287 234826395 426074113 319783507 305178430 340077430 892130117 962087053 226468993 851087617 596016068 150196300 66225951 876954617 348792350 633293575 151420131 3522369 202484378 235327080 286141950 204632270 897379582 963534287 123117096 510767349 534855263 634719109 764451854 573152819 75884518 832407306 838418071 971275419 585205152 534656151 524302679 385112802 705122984 244350228 891987865 357483106 495307885 486363603 150720004 779821270 969208396 996716401 171942219 914093898 398329145 736792799 259293570 935021644 91144160 340624697 881369885 919326477 614271694 230973772 928470772 805792218 70150720 289886908 221276181 70232761 59997170 931410557 593168383 320645455 908167523 698048818 158496829 63116248 79355454 394886420 172312332 254619383 137098238 763784199 929235262 86861015 683297975 973818172 574295912 925505699 520464034 219821283 724357681 622923693 879598168 22854044 835100794 950881285 916369830 418162351 979170095 437096822 751027416 253438118 726000923 132450087 271657530 491683003 537086417 192897765 327964311 35889826 552630791 469788475 73572554 739712929 813784747 338880490 478123858 152780437 666910753 363981243 495046858 333608266 762604198 469311068 315066031 54824124 385864036 824934982 810534133 166015575 30923294 863586243 128945255 200292628 681002256 23125359 484051395 785751082 95318965 831390196 677186328 337347556 521031625 243709742 836724390 601172901 146843492 972434414 217660971 677481154 565824816 259349521 447147011 612827140 679386156 278865947 467620361 353529779 667902714 441130428 584535844 612937107 107711613 621552865 525486622 845656917 412347515 553439354 430549618 426466499 512397246 882097279 844075553 1458429 680837695 543763661 146273321 360823402 157536963 306014819 781717260 287614420 875486889 62608680 249469938 500138658 579969966 691528751 966580864 575905173 477528652 693213990 402120838 129500501 815560989 622630063 81431717 524211557 967271510 975203265 51681452 655203269 916766744 630335459 705116422 75783640 758750620 532751416 734951406 581241760 682487162 406942637 148811523 778828664 102352640 815728586 716980730 771681682 627375975 546959465 440516099 713931482 885513147 551233062 765320333 335584477 607911261 585800352 437604405 833957322 571075381 973569363 35053239 121436346 705992762 154406832 616960261 579104299 342428859 639751138 751661949 141643379 129980975 615692050 732124718 488610631 789288607 442147052 678337018 6713175 762735561 438901470 893628454 971837550 59156710 400746253 562377960 824222427 141811152 799841058 489514798 897002223 69550361 915269495 731254876 586129142 520943525 403257222 202966769 821432865 731812632 713216617 942894713 754852519 924449696 819627639 493632400 634565007 10574473 776889576 899211060 752603493 394149209 795114319 782212012 337103973 940131327 701836704 350105283 554310880 824609877 804754962 493443724 441005921 530097878 329486613 481480346 888148245 539588687 372168417 444307980 401919820 342726381 934237481 677501910 899956350 968283567 913929259 388854236 948007551 68363214 79967012 36109064 924208909 518013518 23944928 319906642 282005576 293340080 762689324 496837594 397323050 493185526 826593369 428580738 512050159 976927250 814719689 602303531 273479852 43704913 478357387 660379939 338242651 478420871 319122549 155769686 346572440 995776976 945421269 433396604 134492727 292917368 516792545 324123105 194817649 931458235 381903060 703680744 251252478 411170540 240511714 359976597 37894804 494885409 434644372 273300553 986562463 698218528 874918487 568591734 120930182 719021235 782483728 806920124 302584694 252827751 304823472 998944275 297070000 752374917 989328162 6532400 120926224 887755410 469951499 395073400 418830337 45819096 203009526 661120100 940937205 914717483 491457519 605766862 417000386 579727296 94923219 413878942 608636494 76560875 772910248 243189961 76971802 232705224 714239128 856348525 877324498 418052887 725495138 40450395 696541957 939751466 624296267 150303202 47731008 608466813 869587103 334032867 492238008 303046172 711974242 493651777 859880732 21841033 833331420 434505694 877130720 762323006 952488298 788658186 945308389 235373485 992964611 237172263 725326241 762928275 335684044 324916599 909882821 339833095 769771268 408273601 330020155 82732504 575124808 935007769 394566887 687940338 779126618 12048241 324984716 398714871 392731320 576475654 575391733 859701280 958815408 943173096 606507063 432373066 773660108 954549525 628627752 79767374 55484306 304475402 84119459 34898996 938147972 662753351 277090854 167509989 155493754 768253935 609287846 551303387 85232351 638852556 146305886 507963626 773352775 11447337 393962857 701024545 408400151 108780893 544287445 567495802 424279943 630602338 707469959 826805259 991472895 107089887 38797477 762453274 997643584 782064709 132956290 199572943 393163699 33351013 637292194 510642032 821726013 161748461 828313869 35608277 650926812 592791279 168890816 703861473 509473383 948409218 602526031 686274808 800226727 683622026 304453409 573136688 190216935 259375250 849687579 33565621 622413457 995877377 104952175 681536177 759124293 304026504 863005276 588892774 121857606 257612358 786510784 285784776 149087941 147833419 31878824 775581061 882547339 114324552 375672320 963317820 281176327 938259912 676802087 427307878 731699720 435320251 121763509 816379888 9047734 348775917 909590225 528035952 988468699 105342669 14737695 320487821 494186485 57560882 385725470 298781124 150971512 778592725 902588161 241612336 914389723 322136501 270355097 470425386 800500127 39072808 534790658 926095083 138335126 118349900 215879905 738953740 603519610 538228181 162626088 714837533 167134607 844481065 154788952 757829755 111854266 698048268 12909342 987832260 384834184 8058407 625612715 151542341 155205793 990735212 876213031 948814948 733372765 807132024 145398014 3851595 637464172 551245279 489247737 854365533 243303448 465880860 287230421 263219007 565849044 975042394 354365844 428285681 417114587 935223465 143622369 462778231 615984015 737931923 462569681 692670892 960601151 2748984 470857920 114973652 356126501 170022358 847374100 919627602 887252063 958438859 425560545 122088777 946433444 696546917 845566994 172437175 591875594 474198408 330431289 376482622 623555523 114777691 501647290 573323526 251281358 691307887 676264574 344450278 969726069 140908000 835473837 549665369 48127199 865723708 34626996 989349982 478581204 38619642 439489978 107337033 989730535 51811025 354215934 405850265 538001106 40010241 956045172 939730945 411445476 932160502 968453099 894903753 173135120 729431834 475593427 379255803 546722655 780364502 476557114 969514001 877882481 211529481 962745353 577789599 202406972 765819299 131105917 274408304 49008839 32658736 654582131 601208871 140552483 140073537 737702578 851896902 99892224 626048619 766727783 258023022 934140219 37696881 171525873 553211816 477808835 40857290 81357587 492727899 678447702 623963266 409575442 669026898 830806114 431972393 621951411 712389325 279735193 933773578 633326086 604531856 636593023 685739511 79864564 329758752 267943979 220629212 519055811 193486341 617345711 558564149 20479103 428246385 677974267 31528278 608208782 404866329 548008166 751549471 166039889 444345873 739596053 761785837 101653617 214898822 465347104 723682115 688170892 558780778 592970775 893962016 691429046 59277488 955911842 290863682 299448113 50576461 211576456 121789129 773052219 566039354 786970854 666301936 40015318 771403481 125428662 164795685 896005705 326410190 991467760 359211252 802191698 295214548 29387969 664804078 41000550 493076852 684642945 381263630 335603254 298220468 161456027 822067062 687167794 353461096 183679336 432402428 611590631 871000698 118168184 451814647 409134049 976024698 63357407 988673971 318386058 423101135 160225750 385344083 784102668 604161564 328900958 666400390 742000091 487895645 458720696 334824051 80625370 365715187 649660157 323854871 709470602 486184803 950864844 221885086 258395324 863757679 956403347 494275918 299641039 86645318 297515020 905664414 854534979 518645956 169732115 992616887 832353670 739257546 890707587 377676714 311269243 793397418 657578131 486211432 994511371 373138323 160875858 578905150 306393208 827098138 415962821 854285025 709705431 226760684 995677170 566591341 890275853 778625314 672001670 822971733 984086712 482890481 373039832 238812335 885569971 722859028 313963132 277560049 806968271 811478883 173903887 702694059 606762484 675137619 289984404 72527686 964703658 146962123 895619406 629279519 607456750 893894542 720349234 263379227 153139521 866876747 115135136 61573985 449283225 87725911 293315803 803704717 978191615 391398772 223687785 554181897 719313749 730387111 459366703 663462645 876012349 708523467 366017849 107083708 528734854 520289667 651678716 640957334 425647994 247637513 397326822 337841450 38589491 716647039 978236355 211103650 433665369 384514702 213468923 794245394 490736594 583705795 906779119 455480745 874654197 249532747 689054125 821026355 322934117 879850806 578808590 205850063 884791795 549766162 765229926 632121778 528768530 794294878 936960646 973065146 687220649 804580871 477982495 963709659 670281079 299532017 857720495 594774405 35578153 629107810 285032010 935879672 460034622 752810743 858662926 52083309 58957511 628210533 675768770 762362613 420611469 668022536 955221877 594561201 887771126 124176526 177270026 419080483 111897951 529080456 802204399 262946111 768869814 424755451 534970001 804076763 777347531 461141024 108695991 512333163 133860962 289974944 42761682 782385540 427465060 616198688 941246209 122066630 623703379 330503372 471231383 294868500 274368982 313967174 967982440 700460864 434975431 3995275 593835356 202378671 675698099 371741801 722700628 161741731 146202998 672201419 773740928 819426971 854326357 737733296 283962813 59337031 651404108 285906459 272729432 721001654 377511523 440982590 634865352 284801291 285627803 483718162 646126825 891769111 909547662 306787878 550780622 392508506 490210644 119551071 24200782 690788242 333655538 986650496 813143863 714263325 991470439 371320251 171859525 48799606 648605860 923939950 898238054 903841091 822329419 938580469 174112199 222316470 300591747 687455468 446178946 75668295 825113373 995767086 120041703 289610125 91000265 347969802 744958181 862448876 53716427 560970414 899582329 803663335 226543214 367611764 883040532 965628142 305029814 976680670 754305322 764578650 491728665 952210516 121331823 247144408 603231458 688065433 996473707 668848092 723681607 910781832 483966203 909528261 630965929 603791296 801230083 301947202 213773181 673131857 636269460 65828913 10891829 70075271 168398580 45803005 907043278 880180908 417507486 859719990 299444574 875674330 311544553 331382884 537538149 802708957 128192293 560444355 45040139 625863336 996599577 842780624 931630729 763404406 132768181 922259174 903241495 848451441 713475398 878923511 85669684 114510060 268629915 360594680 922057863 428881161 454053457 795777092 957342323 132415210 715887395 903277875 537742871 584199529 626980768 97820892 45784860 953883247 626731985 316124785 426881066 14268657 935537036 623876157 347705725 52880583 305874786 18005766 768349881 117453173 378748790 522036005 648377613 867035845 81724403 240001284 625114281 383119412 816227764 73874489 542398513 607439820 506942717 534610926 286707174 579948963 825930764 847052468 593632095 799284750 876672514 912732626 693282970 102230721 872673511 843311721 995275260 393682295 763295881 808232442 916512707 983708475 28598084 303297774 115802730 985538736 84882443 113594167 155966288 829892987 919980746 163968211 729603056 29026259 210746343 201931551 11143454 237721556 899462724 921897833 146133332 127321007 450901529 925549368 256610043 924508990 143716601 553170754 508750473 322972645 768172281 513251880 648011528 854239691 279515729 40926522 704006608 661876059 957884075 927748801 60326954 550592139 340976351 43914530 721209269 658333829 161561454 796382359 720933374 960698688 292378434 464491887 987121425 160419482 792081947 264843931 857489860 967623295 978126285 445441785 207582955 993337421 770302642 382484583 967343672 345382753 41452839 759168319 127486105 624348758 584681866 778190366 16853034 732904920 96521896 182129978 200155873 812893558 739832563 423364326 605674001 745908074 285322974 394931780 34964635 803229357 265706486 907827365 487597635 28856403 639952107 299032770 170496069 50198422 462007891 324314215 329365661 931691833 895316306 438355390 105123187 521036341 978155508 679140810 443383514 24548474 116084361 625137522 954686255 372879315 38081463 78728925 837507490 342378798 797433059 47207094 276615546 487089022 605763045 6696218 911475805 128938876 690956216 129463701 810808758 460428149 232547038 467014669 877752352 983920723 960432322 745948127 162943772 819305040 193007488 314658257 526208189 4174791 162327905 388904259 435494550 892653410 146320671 230494375 291254116 585510840 157503970 970713672 520033973 890555350 689151432 468081529 182983911 197490225 832626658 251516382 813298062 809033819 871551554 265738748 387836825 568078755 609256830 922169217 496404521 444265101 819416713 15920999 165953979 112234914 419220579 531079568 371173489 813460674 171167088 909931383 490762912 73387920 395082487 784925371 312503289 31794312 870482802 183501028 587078716 201977534 804986518 462353865 371039767 417274230 374204710 246544232 550476820 992547526 393563308 665476532 529244006 623524762 94085833 655889933 750628969 781204828 485717808 63781848 917074497 387086625 673114939 790040772 830183126 482006365 819034252 33015315 843341829 519342904 669303102 839627281 553495195 983673820 806613339 105003474 865995638 362558308 735791733 845633907 819333782 74845260 302163791 701806138 772748272 305877199 882583456 2295626 771169449 744669654 944745271 699398807 979313986 973146322 158469792 841851882 491168530 814235262 658778190 509173273 887867759 764538685 852585289 275340548 911985141 917056804 687954410 40910561 559600260 541967247 905799231 872248581 527532334 204804601 66179323 252274543 800307094 317992649 718635747 72768925 700031159 467756193 13665001 460000154 917575706 694036426 564503958 621645773 76743425 963366760 303414407 208268954 305411316 350259393 740158151 329000323 230815824 242102691 683317282 245847933 768349127 19944236 911927552 346003738 797853805 288629284 855932463 990307463 579095494 984297970 397994032 110130792 338608153 828089879 678468883 249279724 773151404 843286571 114855535 136529262 475267465 513571454 963905139 66082193 453693677 259908685 838891114 581047522 840250123 198958275 386264764 23971758 547347593 589033755 799316264 132555293 295997118 149274768 933694720 527111355 443751057 876085908 937691120 608016520 364902166 466978845 433933037 592774770 292630546 516662895 917360762 577349759 191198674 506400683 610348502 881124150 471183805 323753214 525798176 946249426 142089933 507881910 368332017 849513291 41804912 17713868 488849710 79008667 452630037 418569863 451436284 720165704 53413129 354660528 3417498 630983218 112623042 244927852 174846068 700941987 190628059 761484061 776911105 263362431 159878881 443422543 923190043 706542391 386205671 298007011 876960430 738108151 851579206 672140416 308167388 130442886 376360723 673938843 431137746 719900323 726386003 682174982 589346945 926020665 51518312 627815518 896589524 35085835 377018938 274974992 486473240 528016998 964466443 508057692 699998853 828007515 486826210 635034963 88888223 545968726 350088947 345176781 213135643 502398109 148954723 480208446 496841273 85218302 637758280 777164982 297490061 430872923 814545279 481525489 248772223 488634001 299278578 595697421 917855360 909518017 48925293 222601701 620376157 89796310 183349575 740814911 45170550 350487808 540973921 502945427 943411750 459997900 907434043 467031542 63213304 172769886 911804965 823858654 814823660 775666821 505473873 102271170 809814395 631667054 955450679 166570514 815276704 73734149 665716466 421554559 751854892 451417528 904516725 906530592 151113770 775817195 632971544 390107334 83887964 632072125 156718493 880036477 385381366 897116054 500749731 362148051 593908106 761817141 133373723 350924103 408973261 24534588 262178035 391647830 649529655 213063672 438438468 413528742 84971024 491282483 504456551 281471294 3919611 523792161 195909019 989224358 508522374 536596339 380873928 915326947 494039211 533033068 785568568 347805884 275400551 13969849 479623782 635315879 606410801 621396596 780613360 268320372 904572788 719206089 943701195 73291034 668879895 318745392 24385693 88845521 570013037 68688815 994141206 171995934 235101773 270144708 631476195 353623236 804188832 981190342 213734493 373079496 501399872 234226628 857020229 768231338 550820324 370372403 86729356 73879628 280019777 288960736 708267574 493834483 613548006 316658646 964835884 324378293 472632770 885092993 441426876 150665013 258703408 997851781 67960098 109502973 452203221 475621724 538737270 980032773 622383591 812902798 648942571 936427454 828360323 679178378 794928931 974648804 878740413 14179140 41683004 325802379 7480270 761876504 568071544 183873257 474069578 982550730 973320010 77548965 164210024 273535951 859329096 960864821 487615450 153655531 138709323 514387235 776897196 765224072 284785216 346377514 682374509 206153064 806566522 74070429 774775525 528631948 231839102 644231504 798204703 351000510 142071463 444866854 692665188 294092848 456644017 667480749 840436183 528302572 634283752 86849417 950859136 926042409 514960100 838715072 79901084 256999021 353047601 975961237 488831533 345337656 207145667 925840520 42095148 129106350 48424198 460456251 662897940 316462331 375667042 171458228 948481023 738787283 552416585 744108927 677812587 768790621 385549929 445033775 143859967 398319747 23851287 390194934 398871869 301174998 990860535 422507030 540423339 573699764 925924697 412100029 663780233 407363973 96911371 767175696 322778630 876344309 434555383 725528518 761082988 123475803 927259699 724842729 716552620 295593999 982208751 805618804 26101604 695858969 564734475 640709411 849824205 499299973 589753534 62359409 301805818 461270924 332481476 227650138 205871396 675696627 930418499 612098110 920712557 123816773 445650021 426941536 856013596 647946106 901728230 895078656 635828121 789882104 223509494 89802541 275652343 111810505 393213820 519490896 316372413 212439285 620885828 559809390 114265219 804774926 944592242 359768773 836524686 716947497 875114059 308217741 625634469 640664614 522745732 371489110 242483544 613034801 169059343 344146775 441749754 123575498 370268432 338422778 348711378 189851628 434154136 686219161 578622160 352792410 233632693 571293067 318940748 329444208 710425015 746325372 858516964 496921987 628181729 728604902 177256742 835565066 924683560 50391353 184711664 543263508 933522129 709023272 301153137 200893767 86327711 60802453 664332793 448060136 958785022 989397280 412621688 453273649 384797083 523980012 463284752 337826827 738124788 141695699 895150762 124688980 212393260 780979160 210797444 324948533 360603680 580517421 595563247 157071546 323660601 292079021 234523779 7346106 651551286 27729379 770898720 711205793 136730391 326553735 241457474 608260827 406232469 570721065 743216300 943318117 36210718 106704540 652562201 133154454 324839656 676770745 781113231 224137910 61300022 737215325 632084664 52647096 994954918 525941412 813055695 468004763 767896552 494230200 637759018 900304744 779635665 382102912 499566869 868063008 765770315 559830887 142370164 927600506 542972795 165329386 820073990 600168207 670883347 71114115 903431986 518768183 4777988 191772001 909588673 547322297 561352341 915372444 915343381 946745889 992879486 978456742 768038371 308444454 910028295 263787410 838282326 367364667 149989563 966829120 922820844 655577896 767787592 680010 656761320 616389498 912282934 397974866 595958423 44740536 745304277 69226971 761761847 707146004 192087167 599918842 627915516 999118709 601613172 251309982 519387382 633005962 36096892 326735840 134870733 783781452 734859823 201248275 704073668 512438142 653577984 375535775 114689430 934508315 882364261 370790797 498431177 322834861 988128432 48543118 493632541 702928984 556820777 204531848 443764872 791216319 524705930 174264596 948534545 992724903 439787102 887597049 54897115 860292261 41179879 75126777 137621199 996489384 979627686 860270323 191123524 175003303 950887176 12795363 351101905 6034310 993525605 778271606 17556994 434229752 881455746 799666626 89745530 779518834 887105192 258178923 756875753 902795695 474511168 325783060 940201058 753260650 772236943 810981414 325817605 131885832 592026234 867179738 776785128 815299693 372326287 288301312 360807849 454078762 363587525 547324746 515909919 170773213 851581403 909518515 733836274 18729097 456178750 580420537 6763089 111872799 976308127 862009821 567041308 499224371 628850222 656631144 677903697 576169705 682540931 370182518 963961442 262713800 605778637 152866614 711051125 861251742 681426354 292911028 58486342 105480720 806713019 67077398 825905528 404303642 606690994 225234776 482429473 691859885 379565469 299943478 931747250 506586765 570297368 618334928 822214214 124952610 900894601 238360594 309027456 786791923 901380663 950889033 726984378 246870687 508590365 378247058 511044164 849506678 937062630 989857114 124716429 449154239 81242886 43852106 580506996 641361472 22406553 605985611 750094157 834945453 944309703 943363603 383791576 422436910 645362945 137365690 724332881 34944129 159446367 80758774 248153427 699852754 390914189 284691150 562727375 296235716 434520053 341867769 686894869 377354767 819624796 969858645 67966249 243038754 433081432 642816409 167197308 53433791 155699979 691058130 17733794 315638086 544745655 570869308 191827303 178166904 574343605 145040295 450707029 743440962 281241075 568704888 654279647 536067730 518587903 446459605 773142801 193387753 331681790 135694139 396503812 576983787 644877424 805242758 934961986 370183748 249680175 961816033 589017195 858088731 403088394 440753566 23589549 406664516 945004933 662468302 494186423 932100548 100705053 446944201 472890660 109979679 965560926 722530114 975278380 895855395 59557830 333113059 685463506 519522084 862290316 216447964 410202894 908885826 706112488 387408713 492542849 700307823 305287598 968202842 743043370 543594330 210973160 615229182 335209974 829972402 655686370 927578186 193484023 105304706 476599294 642894944 950106250 151338179 985682840 365906012 268525320 301102762 699571169 154891470 125489407 318339120 949180924 186333065 210322551 608981000 74519306 907623581 512105973 237562937 899977929 972742738 374749074 480685134 409506277 487609314 943478829 225348535 912783569 771321261 419584221 94001385 736052702 896436265 642212308 82343125 964027677 420482619 632031009 618460130 730723751 753899116 206943016 551741084 971624616 970923759 306222817 378803922 362365446 429807307 186402230 379391046 126787419 437331186 445951588 963744888 294119912 870502310 520652977 576460070 914274729 190297807 990948393 833385120 989463028 208893852 839130731 360304614 534935617 486416648 246807601 442391358 281783276 722906393 819453632 693887132 600181325 326251763 376178026 745672494 673725789 895990975 18881940 591093640 894439582 152344688 85236898 11751570 12893121 484732496 175814179 649413671 226581916 433641425 791177349 587430452 623059793 742341828 95824555 803054950 384295971 814493795 487053963 982186716 924102664 310604596 55017082 252559718 596163130 39791825 287636874 680631166 23989705 520510221 443623343 684769052 367029008 471411569 45328784 215852822 736513801 306116966 797644107 50901263 347230210 152334704 54088445 299952723 348913490 538421487 635612255 369164976 742931686 314076694 515683811 201901457 576282410 617734545 538732369 45287580 169611485 187962335 728604440 463241661 803853281 60007279 92304089 852109898 429458575 433453974 548153863 594327832 800335733 28374357 849070477 159849479 938968361 678940729 712147872 281894234 341965546 75642975 566626980 42707369 195522079 744940180 285082854 47790384 445736987 749447832 98312258 995217184 783003753 440630007 750756805 775010477 458584939 277204018 612608021 337397144 517173850 625463739 547176055 919724267 705412828 979550071 632729362 704076866 136600782 769462860 552259952 475278579 428430633 507913308 666804436 786336348 950704048 112642292 365786170 216366574 243178587 65905500 823164158 282443955 180710102 43733888 384957565 943796577 594816560 87969678 640424967 41843364 567030373 378178196 921803466 537130095 13461843 599707097 729975846 437697605 448592353 292521689 216358140 689055428 550116982 495296666 45773663 229653705 293261935 96448347 162108989 882088626 827374049 672987170 820066317 951890178 876708316 890952976 467086085 769695528 64688887 283381088 991278320 333270820 344230091 143369093 168315178 572892871 129014082 191044813 25317302 55615541 185176199 234223586 933919511 203535724 479098335 71054031 507481563 775327134 444320997 383374810 657079580 396024167 398846509 248887106 240552669 971833592 744020040 926051391 362151029 646425355 988900638 106187044 32861606 575783125 924756754 551474564 518673241 54785369 976296380 274060264 393988105 70158634 432571806 128215538 809227223 599516091 996817677 661188619 809534915 563174262 394144484 59934878 886303379 489192149 893792035 85321438 405738452 731331578 909683541 33411544 447028754 103614261 408174431 540242710 28659557 306373609 45875667 79316781 570073329 22974651 783864326 143951081 385037466 637915089 582506883 945714024 107526321 684103937 662072360 451956051 245008617 498274100 159835069 844449864 584319822 817898899 28232564 86896471 299098683 570504656 262349870 432490638 771976039 275736557 786171868 501296171 553937187 568164149 759700994 273417144 142886194 916734009 712963577 102677091 336834647 357538517 464976111 228629475 863314611 386432754 423801604 848168549 131178718 956687076 387075820 706799723 954432144 791176858 279069026 697385267 289501240 38084503 73963943 598991524 61238395 828597601 382868671 267016980 825747784 349861448 163740081 801280188 759715860 73465799 531397725 12119167 183700335 141973546 816063362 325599441 711484466 91419203 71759196 806900836 29572726 371894827 998626596 351476820 421114564 931178445 331031395 562400217 369149565 679754436 818864809 448770800 496438584 90632091 700433945 336113387 586025516 507278825 82857603 236060610 645212598 516603181 817567793 149080429 48614808 750562087 936021148 705813145 183780812 405310073 430126423 460765624 903347929 938681071 880983446 509437233 494983030 101267254 1682099 483268868 999792164 649538215 57124636 766918042 597420678 467480558 794896948 829610349 992526257 967196976 816490584 338827604 341037280 278496956 645266586 320740590 463678085 750863605 392699339 424772474 328548514 807925533 641788373 909701200 259851515 994412713 396535161 65583117 472836348 582670961 415920579 693118194 194956868 248733054 10721635 431763095 325495525 171090108 457464379 946184461 491535747 287694380 347164460 669652689 14945242 393867523 259297854 886753315 49719252 784903469 561022145 447569998 315779171 834145615 109719550 656265466 432445477 513150331 288786499 768833883 864107692 28767105 128001470 748217517 147980743 85919783 16527373 446944317 988347744 365608121 338386299 895935480 280853995 105515056 753776728 18703857 915255487 812515555 475737538 46870220 330638698 58503302 652506510 284690213 892745001 818302142 336254082 754570151 473595107 985495195 404394713 777840312 274826847 873298083 163093336 965158827 915199721 306518673 116017068 866369396 329252597 686179248 855838453 781202980 319318301 704524299 51285155 810140803 391016673 11508185 515200902 853182651 750235732 828359959 916342126 962628527 787115688 37147836 145346644 438356623 613364999 964292486 482310800 399107241 24982804 52983376 638262678 805571897 918519728 813638834 434196668 892451923 428524977 996913797 448069117 908362477 552560671 928917114 675237218 456329242 855726112 402634011 409876221 725259803 838212715 558582481 711472756 108353289 279640368 712018638 784262305 598590838 678178286 848565860 946830500 470086461 777817654 854953018 428436947 740904538 30423576 720953417 350941853 46541354 532450459 616127898 185079535 475951249 86040186 572944924 464668475 22676467 138823302 311189908 553895418 654589038 700932368 426308588 12726236 750585370 841807581 178827274 275735268 922843941 823413027 821635648 848943102 280170277 498633693 294182733 543947496 168509435 941533346 104657233 65769852 850800010 436499038 694818137 540056615 887755649 645681593 504447384 569777472 975033283 948566082 48594362 469210188 676858005 26726705 793908135 35836351 480767216 511222566 512041915 824486 940807644 523121740 411939874 398912652 650272800 424463849 302644492 716219545 427201077 204954836 347617982 174267886 687604937 982995980 564811573 799357406 871722952 229268705 946101609 29638965 944281360 660639014 426226473 111988117 25820995 937121078 793520850 289005280 8016878 681682469 713193810 252452614 198785682 838282428 582290370 687295830 290306869 895911372 512776256 955210579 389147908 708951602 716887213 323165176 898622491 434325618 709603578 110319382 462740908 48621877 350652561 143616476 279593343 222543219 226985468 745243542 353140421 710811729 359778428 169864276 404056867 833509940 173529179 258845497 51617251 337361004 198271153 948441176 606984498 266920753 447774191 985975867 616036525 107707049 964916046 46120018 545820448 419462522 519821012 808658518 803511365 62846724 8959352 510428282 427305777 968223300 225147934 502127377 466231869 255068571 976264385 214440511 31138212 552711241 586881837 746185411 336723014 67186885 641356935 591826189 688656356 818505117 236935 258013492 979966478 204017293 580619039 108555610 179213835 645595723 822091895 145308253 10365922 388960610 12791480 279872653 507622561 671927519 686942274 314796639 787047562 317908089 973315930 496579905 575251842 794695453 677501606 797352419 729571124 832889054 391339040 167846839 711736798 170565485 608321094 617695262 90026692 196776032 572489795 940562034 349941548 448267202 984313201 594158968 387440863 17427133 206961176 637661632 857281023 880346025 149413126 611975668 767764980 521564584 565937067 743863500 634601756 17465567 444512533 6557391 944710796 920139679 370279486 142516095 662313191 477997995 545278585 775281892 403793407 744839711 305767653 794932405 757326353 717617452 375910308 11687873 284247974 392458344 135478264 944081794 686198674 405214312 890195193 455207801 159781243 86050791 699260863 821439408 320817390 744500151 49353378 279546994 364322760 412735290 203899097 284607465 450931313 456807997 639659425 476308308 327153271 964497566 785441041 298473250 830307501 309428743 604255197 46801420 543310060 683021248 630092365 595786008 513578829 197167496 442001654 428902116 836904681 262090161 569318886 993124377 399816989 622080293 195121266 377947887 602359211 438905969 106480587 929225745 497939090 566821384 881043359 735708605 477600393 817814483 366778106 43537767 553854998 624749817 472444450 796484982 502547862 162233376 319998285 574433479 439368405 285518788 578298820 27125027 462498904 197110375 701203220 114800030 527730009 850527413 399264044 806012239 189701300 776747870 802261491 310805966 620068148 10083607 901193926 709463771 959193272 879490575 905277743 437101458 866211958 415788067 921071437 890884128 781868970 988090616 302465397 697622911 222118236 692873021 335347397 971830477 954533901 57306504 524314841 738042145 332035462 776435132 100511064 930798890 1111099 339929760 850576679 591678706 535886197 179589696 338915432 930294671 154223568 355424908 380316444 349996488 661578149 262875935 936487078 233403847 186477811 151796904 228686325 761450590 115653555 851885868 283880252 383255359 141300847 676995731 142529345 377782331 334690418 867631614 135354156 753781861 666364149 920894460 532614549 32950502 246144713 747095550 600107946 536819977 177657713 116862145 109012327 827094753 770713245 964911394 418616853 151181964 668214253 19363070 994959737 246259377 825417951 878976428 609067451 719513347 87663780 493576143 418447841 437191024 992707395 479233060 141875996 278425538 717134215 82327866 270068194 907672433 339921030 315216061 598634973 845246150 858233827 539374 774932220 577499493 676521312 711819225 900749026 955236284 715426708 943970949 42424523 118992456 536258805 130542877 414598432 857517933 770431895 948202704 305811382 644828680 591033437 674375596 404884563 114731419 708161075 176516755 834450892 727976730 61172027 779992352 440790651 317429604 663849424 498859329 401122106 89430320 531442453 844505773 845261911 749526743 127362102 234486752 797039015 425013636 493582079 818589519 811411000 696971612 502917200 203358519 237659006 937712000 253776893 817429457 855982426 159180589 882466555 101230067 800253035 346757677 122614594 301381352 431494093 213928056 320824027 91918510 490745009 332312642 23887661 172084185 835388874 12746537 181052070 831357989 265394327 677714333 520633536 253327740 668474546 560184620 592523952 958602581 162543354 237957473 743571155 730969976 154557687 843724689 867825357 870444999 418025936 140842725 572034407 336948435 101244213 700966387 976475740 605026660 534470181 652970847 850925948 693379625 706701786 12944147 309479334 437492044 258360767 440708490 9781715 932834494 829151176 717536381 21597654 867120423 471248706 224615149 958087011 616373464 886095007 401266284 911720846 672450472 341734577 11501908 677472790 34214144 385110488 147178524 346937701 182892258 705025176 508705800 685329662 568830531 177709897 452116673 459315636 44982049 393067525 735554566 325991897 867035112 654150802 18669039 122283782 837825189 360805227 757688898 59655374 841840981 652047433 840437623 539853016 268362596 761185321 751289687 831644499 3872040 980721011 319605607 269641256 457909830 365734353 544812353 650644758 13633283 973766088 423819368 683601478 979837767 310245320 18150076 428263028 62345966 744356267 825017040 517737574 728274230 12038346 716976398 112286931 144216066 204817819 598345228 399956188 755606185 74985812 440848182 279654714 968809039 356917340 105083535 571548693 747366069 670943786 840721860 398487211 792083319 217863516 512443500 809497305 329599289 442613595 988619943 307130260 10316314 777617937 94333803 726729684 789603747 560961809 602374580 131321064 881142332 320155261 135133970 820648270 854208203 453960333 439852053 681278320 845066348 729096157 297357658 334202013 672628635 790377616 514752789 593762731 674209465 5312330 56089979 101139089 655440419 611494464 298976263 556900878 450106869 280309869 743784410 992775923 579720472 216706885 951776178 289779536 481293680 934628870 942185256 636616838 337002519 171557503 850684951 813226830 932701770 862116157 709011277 417519358 959222984 101338809 632744535 770231738 274278571 254895415 886112389 287439684 820991847 255622147 816821755 675237350 675643961 358853027 900477433 813366059 830875545 180263773 599585461 602402588 651248819 215047058 79535034 146612207 160732643 348205460 802299276 87164677 177609757 474196150 591952687 483556113 3819245 603283100 275377891 541994660 155550006 772443656 73188107 896751589 52588641 124108030 334732791 100656892 326399800 295309932 926659948 252187988 924191209 92914782 340430761 295313554 610342313 457253730 928815999 367754011 711063859 135254669 133337779 643179764 833079543 757669781 772341921 91425087 13645713 922226897 344502901 421568168 609492174 172839067 604585465 905665700 285048685 255859458 413718757 27086125 965169658 170156008 409556714 220936976 53367500 565526829 774010759 659664893 936670504 692828270 897912590 474466583 288075222 409688671 314323339 780993190 126252007 773267589 993878863 914221766 99527548 747043458 926815921 240633228 951147156 324944265 975205194 777119145 806159255 665375903 930013419 237238180 1152811 529143889 300750416 502831884 775163804 716606504 707051089 986557336 663809953 125798683 389274277 882240610 824110152 505096099 688115967 25359230 47502799 788017790 845102138 234312889 23171702 458083447 206851556 556176659 168181798 325616712 690599099 786356815 48887909 423041141 906685478 30514573 517491087 25122296 360101538 535106213 469319276 561078002 65907121 257591184 779288434 940050530 988354598 959850395 542390114 934634575 248934804 893612479 381467188 549418827 880460374 501824659 437096686 75890229 202993553 224198312 80568140 284993924 170965121 733916002 319628098 570293195 393201876 640793825 656518313 643962117 967356550 901820472 586157645 443588756 273458225 437007914 474346899 22327880 229648025 636380784 845533449 465108873 579535696 131100489 207275748 981045641 277588471 436930694 48028343 950811915 733870587 536381874 495182793 286126588 163191683 561858412 676310278 630170510 652958575 702119919 552543856 831733696 639155115 32343067 587888670 637630224 953055716 638721894 528294239 727961915 282394334 987155214 831991759 727837744 896019731 757089525 774903228 984485587 446938619 871018214 202968399 425738416 646902804 257768089 809333743 345070655 963685863 857862035 915994179 786586221 783374168 39081307 98962746 64088302 451088671 490324455 696311140 252379987 398332817 928356829 169602883 549004006 207162159 764295971 420593696 98058796 240442857 614655009 622022101 827424038 104935599 960215197 697791831 726405537 75129653 625768067 789203614 793452380 447911302 582472164 372482658 963327525 110444736 913204752 498260345 90820991 871523214 108406182 444806932 896461738 765527485 124213742 975933932 518947612 948376752 837072210 90449219 747868344 172165733 480261939 836496475 630203000 152596477 847494877 549868447 773874937 818708652 65790959 582761081 837070884 795452684 642782739 52148709 32640643 499807598 770233520 184670566 611404461 705962984 643876094 496597579 941191828 270824150 479578084 180506018 616233889 571567517 749490186 46231396 311922428 325582607 84374706 108145159 306328774 741413137 201046459 243230223 872337068 435723179 921470671 980863815 638723420 31527145 33922207 276833254 229280307 406692859 668965797 995429277 919949551 801883079 912446231 632379944 3931404 599582855 465478407 315753907 45972693 608761941 792652315 142331070 996347369 356177076 802047581 132336490 245351636 895266999 371174722 256690349 924588773 961314261 2651494 956095835 534595515 424504305 404585118 605628483 888599625 60627741 6247351 999960903 491943029 261514740 693977571 787374857 130209089 513921924 424058276 29252666 518566111 182861445 213691676 546530481 513683002 198231721 93528896 627883848 102303440 412524509 336483635 699131191 783144489 490105070 914527755 129957415 259644139 977982164 667021245 383556232 74673958 178606930 254114343 44419741 947573821 9496456 460073848 992236495 491985451 789217056 301144721 438536909 865167417 258529543 310655097 791563702 743671369 230312096 337692435 362918780 866953493 826320133 897087214 93126254 216137486 173599852 390701734 23127206 384282673 10246574 804866373 790351067 620656222 588916219 50392495 887512257 93845906 40228831 446627989 969710864 867740546 806701368 654859158 562480390 6434029 254578938 869565651 39145862 662754610 839290687 96794886 287541255 597606789 986375613 975858860 860868100 809680601 867896879 191214313 284751401 573432480 166607667 837924473 821765244 448526124 93070991 386047176 822099498 608937895 753506615 772415699 480085248 803260306 113170869 703739948 954704721 815624521 269147258 18038466 427131254 978878482 90726187 486706287 918707782 333419044 604753521 670923992 187047405 290802108 375249059 826634730 84602504 341900324 691718974 899544422 693662754 619764300 710025830 388640832 665827421 484974636 359338428 909858589 475566703 135103858 721690009 467921189 235634117 118073120 438851111 538809979 447089553 519664378 459965585 876184501 773019872 465393085 672892986 125042399 175154844 750220245 563698283 36981069 184715703 377556849 810245791 313454211 65003614 153170390 587083341 189661504 900731926 453052734 438608940 12311138 190168597 799535399 281871393 740258954 411224257 270108496 580948082 313390421 956834852 610941289 515532161 35386134 631070200 862154329 236561684 228099765 302220028 240764085 788526381 46640024 798685135 44270330 678004939 324958691 2490148 896319996 262610404 49814032 587112130 839510775 841700273 401122717 745247145 91837129 974454581 545873426 235147826 739296244 36576505 976577638 564927475 29473711 703886876 833323554 201511193 568366893 207922197 591650021 836503705 953499136 157914787 930017927 588325519 724628175 126975242 833170664 694452921 754201407 221584567 409383702 66103533 945474789 504114127 889891354 380121882 481293759 585765334 161252800 552331782 539117357 150330403 245186607 830421102 704927261 518611432 885839333 798085464 263289782 822212268 101767559 664883680 838391346 529586620 922311207 762734499 464955159 99945591 482198514 746748329 779899725 255845995 646614821 21504198 165389340 732984929 969418834 575881609 556841539 668804204 281373954 985350492 728470876 374456174 438429680 235046899 504642241 582253723 961779840 619961330 543637713 633289602 223293130 828778693 546043444 257049385 56299819 898739534 770650553 314991836 1379741 368509240 260505169 160918575 905630527 278219669 381399154 731295626 836208533 431960038 215322121 131157064 709828841 447737681 625033211 341232645 556184010 277426607 465515853 462927908 654963597 381393956 504767877 911454643 48955524 471672321 241004119 866221101 250076068 552110388 63895603 662300807 503529357 553167669 847369837 547571170 658207214 995003420 263877164 3743800 157124962 259812798 707149641 351992921 85888045 269384791 501295783 704107716 557577438 571481490 584923132 618768676 464847349 610879852 666763819 404661703 855219210 686762679 947798013 727698279 851756088 972579468 799065136 959198053 417740272 961818846 988619425 229900638 678290845 196907679 240041821 914507254 683417419 287516609 827410682 632130310 36991029 584457290 780673642 892439187 829630256 386524268 316108970 525500325 4230716 569966390 186171288 699139961 818440201 32708807 899179721 753895416 575645792 791776620 204101708 729299322 341703352 641514655 40607570 248224946 840241065 87780746 16664982 469221081 938286893 307762163 457574306 920440660 564970306 407868279 742658036 496323336 955658259 705769017 167395675 121806547 569274021 621721757 362592507 448146565 64975764 905398392 946164564 257371153 905492113 614428179 835982723 660262062 220296614 930036218 403625861 278661633 3215276 466033791 541043094 244714172 471925324 191362506 282534549 467832712 963969621 621167834 332336586 849673422 453710241 334367681 593905587 795258784 994334402 579726409 207114875 127317878 796705911 427776725 242112964 371199281 180517200 18508819 174042426 155515742 661337248 879453879 721852948 760740963 756827023 679636089 82626238 435582321 102994736 958867898 84814647 783402995 743802097 116751361 474490366 427917808 499847479 472290822 36496297 692491841 74091631 25315097 864301410 180627714 883367431 462394558 273717432 668557846 647070115 270541066 757498152 540498437 119765057 765151625 60358172 780199329 915416508 300395986 303361157 947254479 286357093 531788827 93691995 649025943 486691846 926290636 332534055 218449057 469166242 898439287 199149863 644177442 224280464 950444829 883544317 585448784 346226372 279975422 680896658 99698398 556387917 9946652 743941256 697402194 394387016 407121164 118783686 501090792 910494236 69811954 722593385 356127714 676263351 792302376 673384185 96861742 695055156 208813920 690587311 326400477 41554488 583776118 542834386 340419344 463174044 475250527 245720138 349588916 832196333 767293979 531439763 335918943 462816390 408020474 49188689 479001209 442680647 86651547 339398084 72978402 584204254 517605818 648294977 679902356 525381533 289005684 796619553 395373178 173914271 742189990 175014807 177828842 257736214 505476840 14654096 45639691 813686965 643957102 131969093 71852072 720390973 18002303 381184357 708036279 465893096 326916714 261353823 937525362 880144138 191383851 992717801 94688584 684485460 771498723 32824881 565030263 353871354 484911903 890611279 316598139 747319467 935002820 636410155 719260642 757710345 164646967 418002149 155723174 831212713 656774705 669220561 991743347 739630555 84225850 130100321 406792114 83852342 768136017 447056794 462030044 857026627 874152701 139316113 465373602 509938186 703750971 860865874 645280871 59505006 985442077 411817628 38997272 694417340 440476650 655116657 23520096 75186786 350569197 734559860 741930291 957606100 995191047 115288879 503756259 635628993 802825065 647568450 569216421 759184930 46376600 958127971 480046879 740734336 866966736 991979920 411180071 466194627 624766376 935070678 117862379 680790233 721645670 62804492 722889095 186583786 925425211 509564036 359209711 221665894 281391879 559962035 960052427 840334926 853957245 621493237 159995260 390479488 111522599 457805359 184594552 424299240 956125890 534177160 505704521 998729584 697365555 802863853 986839703 92748835 322685656 865209586 563437688 118026351 611474700 41544152 129034568 758405489 861969417 484010204 302087804 778559218 852163667 75164528 941777997 516174965 790303248 64307144 375956204 248907395 67482510 54601582 127045522 229975773 889646079 999477942 462124178 349068935 647996617 748882843 321414650 781274916 690173129 475954694 260291119 288718380 203830559 915110323 651828966 832894564 111329443 924880558 618590517 611675623 391390663 843227713 308036900 871850407 769868108 814079716 112043190 851588346 36254655 248090444 369666999 915002727 412761615 74163741 506702660 988936814 750390797 805317021 631080797 534912829 977126144 270980826 647564301 159015881 875465996 80197167 181301659 620661920 901664076 552505196 450586055 949044856 631668416 489739857 50841976 442816642 992053803 17022731 470267183 336347778 887232348 800374859 918359428 644155757 40677159 753095032 312651089 700628155 575332364 409441614 479396739 397044631 872124158 838049223 768182478 581834377 451154215 522220531 45823771 821712440 109016342 635808629 646143464 998985746 873332493 301955454 565886437 858772676 315044195 32495200 47416823 908411243 526721740 348858754 37203912 204407650 927182755 992436017 180499117 774935401 737513036 643102460 45660460 429152431 854382603 521005937 368598014 369532037 913125905 156177078 426763375 541694602 399575397 970391042 330724899 426503203 826230261 546232078 674168110 199556410 342609163 690923847 28332471 924980794 735814259 618425841 203756129 400624985 932366839 785038606 328162477 694044480 924209612 868745524 95561643 437571899 707718723 407619319 951553861 296945241 840752966 165507474 26575622 512756074 677290813 881719076 114389071 639493068 75372369 464802074 280182728 170954481 697213418 560402092 560742349 986218922 923465331 500249793 120088878 786075505 704359460 930129016 184813471 840257869 196510247 193912353 569404071 924082469 771035711 812566604 253552747 136291914 257005815 662806601 760613001 440579058 384404699 404287083 127755362 403204512 90337997 589443866 367951037 113776589 568448613 815891413 907597961 206837419 291138849 416139751 966860885 836595809 274999657 975919618 390517956 855345224 265113536 884152691 695454497 190910003 348862854 934708229 573382990 874880327 489872085 410691483 292229039 822732312 567282997 379273177 561797224 784388695 486395944 483553830 925685454 558734164 255249535 375264164 899366457 960472917 74781045 795098382 825305896 879735949 224595860 149312482 760091231 645919963 236017293 957703806 998911870 243473605 571772841 108122969 663106151 255049630 414269727 528508399 43011544 387797185 901979493 512028606 992977170 559846276 704521266 714124918 506620146 468393290 703666666 612763734 454825059 851543791 196520415 10888783 464288084 394932793 704912665 735712005 680162486 351639217 963522742 424459080 725825471 157410084 825025217 432556156 293373110 6741848 272108377 547905242 328286234 155235517 174768171 327428592 544369746 631560948 565873821 832231881 860334429 420842748 339642923 597934550 904058603 835257439 328007924 29861779 966341588 162208047 553314459 107290587 773157404 954803460 944528737 329724276 137412659 233216974 869926688 29726770 405926194 116919750 866337804 922900044 373770450 695882798 99009912 367655973 104875844 801946651 50760795 481633502 608026858 455455636 546499727 564023459 417251411 125394873 737684850 937574525 87014505 858230465 594910086 531363279 30581862 68428167 611499363 500108636 545127110 951808681 550088553 358412085 988723283 714805597 350465206 782008183 780898693 338385723 985460454 255850374 341558832 925544832 360046816 781237416 388618957 569381175 869919042 88726827 511239253 910392754 563656636 262487674 845710402 42959736 796850456 722863281 761351163 807976133 286933006 839472953 626807692 900394715 578598725 364162497 413597677 915619671 347472055 564329816 451992051 95906889 798269485 768394069 392931318 57489860 685512939 593019542 926509514 656494401 453242304 534063847 171300652 843271090 516716412 796267712 675240772 606199151 764390572 184189059 252624473 257801288 933992529 218410497 267219108 307506012 161952365 444760115 184468379 675369420 629607072 429623537 913958422 87079161 530642119 662090921 172305700 387906096 232667499 436040621 622149339 366003440 835323300 622320884 45241505 789145935 629641405 295293483 223141596 728897258 487544616 552793731 64953676 61226392 810709230 123883699 741157847 183997140 64095424 730377602 872577813 138622080 673295199 300236344 898986529 388309300 97911352 693553071 431982157 75496650 738455776 512211134 266956745 894332749 213980883 889439789 192116124 726977115 818266632 666658394 998352531 122590696 679494022 324249298 533159928 75568921 680014224 513579664 690142940 146719635 44845951 883897352 917097292 546896667 262731257 476217046 273196526 985687210 220356100 98342820 386269824 727912767 235621154 155971417 895314080 904324835 781049186 279944048 824124894 756597824 377147663 229340270 34273007 628999651 88325047 875674785 878741853 776286550 513295144 665504556 729483459 345943231 433038112 123375146 943860739 289986096 941046806 781180076 645530758 164559630 132510465 975110580 500460098 346497572 352239383 871094851 85381695 651608883 189106976 917907417 778439615 945425692 679675639 170323746 968750546 365158358 868877470 898408768 456774836 827736479 295146266 552278948 934024466 340267858 488734747 277003301 257795390 30477032 525077829 549906642 106955099 75362453 449260952 781040873 221109488 142154621 712959063 233542918 890238874 763543838 549487409 687703843 303024895 775481995 439150088 446846426 306779347 685047017 413057125 464078924 204979213 500521227 681878143 786363897 709867400 13574309 93403156 89278076 94728129 857521212 227916018 140486059 797760968 978291566 831323610 840698988 9753474 405663441 481831490 612899893 501951136 801879506 417510234 528164534 406153312 967888118 433240816 757463084 980273347 501524293 135701462 672683580 236359971 790939940 676421392 201334029 285384462 991783748 931897719 877386846 672584809 895739518 88111710 595204 815268779 514800558 25200643 443656941 637560961 380857782 840609786 179101422 502390143 962325650 915551210 214103932 750529294 800591971 961507986 449745101 818637100 151836092 802481170 958102935 436546689 909699818 911442299 795228757 43422952 348122273 914563344 52137307 662116939 410537686 295176547 755822916 638907191 381436854 536440200 759777464 722558384 970556880 438256927 157690759 771182111 937028435 913980743 255489582 77759335 456152618 393563137 451281860 724603608 199153468 761587872 565710462 790697519 924705198 268249353 875916550 736798528 509495023 205972287 404896898 358154382 325034956 569429578 222036503 773976234 248284881 27556827 452192297 538969475 7410894 284365801 127167385 717399462 706448889 980791919 703298108 130094866 797425288 507209698 442677821 706845105 60702152 391194661 469751097 747761507 572245440 727661034 370978723 628772774 803182670 199009961 986744609 558993012 54689817 663274560 229629474 452723490 277118600 325806218 578721632 284050367 493553871 473881412 315907079 607804996 401103053 453931714 14139051 804454422 328106840 496110533 867443724 459353961 426323951 368591208 69401220 129457945 775374729 96852720 201308796 11293318 539699820 149375380 186526119 649732244 505347504 917675888 448974584 205144501 962437894 278390694 368183845 750428585 352265027 951344038 71190157 335718199 925348469 226724700 687896978 183280277 254213495 292346149 963544556 877834905 180436380 59916002 544939182 121640474 251332060 762248515 624237016 280084038 338027012 9279930 417212894 545628318 898546055 584308152 721179226 68787993 962943517 821814381 111771833 566398632 149844446 331689450 887738762 900689994 811279446 524704900 852084492 955099011 412071093 28500775 986810833 456961657 254656433 758728555 488434316 668035092 999845662 872616653 335343749 578534087 983197730 557784665 648766796 165404646 494223555 593700808 439360489 646174119 852168825 869654183 603283073 436432485 203023577 394095960 654728750 338772504 223378620 473152276 278868505 241152030 148738155 72123519 463297479 442529109 615492746 744485850 234691676 47074724 956420006 522933535 874751381 988212051 87910847 353236282 68200221 475930421 806632571 280859773 926517849 413448451 397335125 986892647 938617121 939888965 917681438 286368727 502935986 982685182 539273168 528030650 268051168 959177381 988957121 983891032 665816564 464345450 461461703 942881617 991165916 752524266 688697239 593043518 468402708 900077867 226891825 672409284 292213299 885731076 636995703 317830134 843923034 221893487 924673593 940154781 69655260 93308083 783262428 156873666 522420803 486226857 714101513 90307845 559939528 137965762 652476085 488497740 405366837 885641629 421689940 112333120 618894581 671122174 52514131 514771819 841603586 925154361 606604292 890352579 592406817 342769922 782795716 958238581 434934167 721023056 762316048 6033530 505803278 635398080 765374892 775990638 403624969 888419909 839290127 122643802 792636591 995034727 703959088 104305337 799341045 123058882 607950929 982539593 942769 441073405 627187209 748267311 939978882 649401006 701583500 983019238 866986245 269144953 989428322 561755748 423815531 399496438 42453195 558014069 44935348 610414521 372309025 49358121 613216120 541181886 93332220 422411960 998831284 32154199 206323419 418627781 202652269 310643110 448142923 725563542 372794295 97765804 687920 614563322 802102833 399284379 242090044 595174234 453230382 643279774 398355255 795597915 683284538 850332663 144920121 918628879 654692836 535277225 805491715 973559201 360048615 976949240 720941753 809556852 570490267 490617399 660483600 425370190 50028828 55547612 868587786 50404618 303394994 167079224 623221521 625901918 138804328 853365126 652133320 83337329 401653219 235320570 647395763 485850596 698872160 143181156 837124261 805337480 776827809 485121228 565860280 462705660 249119976 419226989 282535183 170933089 997850962 334319327 184424200 709648250 47129130 394851564 559578773 981594799 360455073 497148119 198205905 272314096 549563966 928386978 303151962 584566759 364561707 83017779 74074280 863435459 532590795 809989856 158004533 173588195 785626303 963799422 625368559 528695054 297707461 543984143 385133182 473561940 74742459 266412263 37646905 487741086 419827749 882123183 834787259 423964622 945963984 982133062 624395889 176071228 406776416 467630464 472092037 920278986 338009455 191854242 221938031 424599876 317421937 356154369 573215857 584629158 298855803 332930167 620203235 129508454 150174724 114117671 37066749 194285916 165231863 45082416 550403031 232469691 744318591 679263675 59225350 562252183 567800935 801284362 325901445 904071605 877567402 577014741 871231981 87165851 21034298 51558130 557280735 230806734 826476985 571906389 651613513 480627412 732193455 957523575 714695618 840959528 436156932 941828740 620662455 883955223 705220851 293488854 447509227 527989690 427710835 122120616 146532566 585229341 121308161 415289612 123024111 833185771 870774441 505623585 310870239 80742154 790996140 256075573 99226243 764028495 216592238 23098054 353065197 238304907 639008119 548607662 765813063 686359434 555398041 330393271 664697590 233843261 606637999 549953435 937030300 541226313 725080601 732312770 698808022 474209739 517705034 94031779 185325510 592173784 118976567 429019913 301850584 195721227 766433481 588606726 34682455 441819556 914674899 2991809 278564950 563249642 147226896 342928530 659977535 907929722 680199022 798992148 621155062 565887989 713694792 400587915 503108432 266530154 541455466 325045920 405984605 303438335 73724395 19501531 973739743 933008317 377209396 651234646 139174494 34770649 665531378 349119646 732466247 672650785 899467542 647598469 851953615 389009993 655730804 440418250 149797957 242210576 805689211 594936956 172075865 904182830 685521520 327650035 421196622 554746087 783303667 317182553 514694034 394213657 723467936 385407789 549881306 270216859 53386358 853415480 850865391 468076195 782060789 19903706 479728100 588129957 282437539 798435124 22321006 860851324 572217728 13146569 367026444 279380675 340448281 121379210 20119675 292745914 230921205 331625083 661841882 503141604 382191582 460045052 774369628 716406470 74600259 182844761 420197746 838870323 732617185 79555575 43202399 940277159 40401081 594923567 62888742 811906273 131028743 533851048 680076701 714858935 70081614 791149834 843191150 928755545 988791632 185708042 149091939 244167167 600519466 335629722 402662864 936443296 391120263 331104107 980106349 186695481 613325836 148600918 47784369 816054813 505456496 20885428 59758099 767992330 912645455 36072564 343311203 899260576 618451576 29585772 121980710 203193034 130598969 442771402 608878869 581247038 456527114 24880645 679612603 915729206 719746060 673387850 742249571 559491204 806479896 308179003 763559462 131035228 809534910 153234057 471937084 176677524 209603268 575462548 494992727 956838304 60566266 609792606 946479257 654719614 888844620 374312185 424886018 203820334 56586490 751543623 262440177 657842052 979201420 302273544 748220565 17491093 98846393 750505062 344943927 111838638 50501872 329892446 283953517 709334182 941248397 26791971 526770148 605329512 243352944 503213446 682243013 504178936 836123526 819232150 113004756 356835280 782810686 637897489 610914753 427217803 580191494 351911125 571453771 628003554 21067967 508005952 793078549 618409348 766363543 376216793 493249021 792406890 185444232 129629922 627062963 350241359 885699587 970882442 802007243 211704350 664978361 538675261 489497107 453703688 606321439 750729061 661357580 40028096 723155379 312637002 874246795 515796679 339955739 937203964 316591216 553749762 522760244 820901014 51519716 144813396 807597739 705605587 954160890 128029704 498112590 711428527 676695705 101895058 970613244 461062969 117600026 574479565 106850897 136648841 680957563 343009196 570942425 612073941 239892409 254367268 235273856 855025554 210879152 437621984 429529952 945616124 726329273 850768068 934877756 810309485 709286778 204958719 778252373 578912931 53386331 133849871 351784548 632228153 178873587 85875419 130941163 536536311 868631237 758514031 281139825 400832634 50534888 721762990 434930114 788178902 789245381 781548588 159647831 378045505 710603460 723723423 962065439 496629740 161588297 48619493 998993275 370327150 49556784 225649754 662420963 283378060 988165758 224654058 157518775 273858758 921563450 796828043 236298716 725892348 934229335 145621166 653519519 83376950 418819958 541029078 974155317 892781385 170437866 776259496 670735656 849855426 485098406 435512758 20449576 251624318 448993079 138571215 790333017 4959372 931156750 556150949 615684822 637053115 773605654 810169250 763426205 717700535 278303052 277225568 784920963 817150845 981044379 229462299 865159013 518497079 528417395 594513881 500532052 109537148 119315230 563959680 646371724 895942030 319897238 893193207 563690889 4157479 462752058 898264366 543834284 417117998 133591657 209994690 137961032 388572451 591667746 970380709 921596816 860756774 870466795 589408400 281238737 381575478 780513010 632862526 376985926 995283793 483357739 756776779 503503653 38611691 864073878 908807241 165325498 876206375 633310434 669817946 241644179 955310857 47025240 193397371 505602961 819774492 690476712 123774795 450656423 659478408 132280768 756030747 60376189 107727132 854855341 455966229 358556144 623591207 603980243 402943696 675885199 981681345 63858301 172494580 423696172 915302248 49280286 888630429 708000714 21159158 710588202 599556710 836820303 196076476 134950120 699227124 656504490 913795290 290184778 3289117 908213538 245266709 777877276 1328729 805178995 123419411 362819787 706965623 806331906 750362476 58945616 453687959 269382826 372225248 858663595 751940890 599354040 550811371 770071409 587512852 69676908 884997218 298978173 794710649 941039580 759653512 579977054 184661859 366778320 569262358 541228385 11819113 792111973 107940971 434759510 437122714 361522233 810646411 399135422 493037 498805116 716108535 242517338 569470034 880667920 651742166 556725191 679977545 440160854 793354957 915090323 940108538 634392775 344255477 573540760 355547550 379783174 172444335 87942729 877727505 676771282 353791091 371663379 341923424 410763036 227152831 853244321 588965593 909296720 90818883 495276721 92486162 261739310 164476589 932897722 930257333 866081995 923045785 488486853 687914012 863243904 477104565 227322488 399895026 357682383 231019028 13622192 249423840 298814660 333455427 597072133 95447990 94288736 11525556 881246452 258177065 602940236 680241678 589897002 669066547 777252062 26680965 956649652 450798836 50386906 548821580 106124063 112994423 164442916 901948923 863646848 657414721 887162152 704954916 502780964 828126627 384435644 720809861 495151699 790942453 102708145 812946792 352840914 917139113 310239585 554804687 278523017 918874903 301258785 846241081 447893051 122948993 139823066 883503804 967390960 178055874 248229365 471811259 242612346 25340713 398591671 831515736 323970885 172115351 277057826 829612609 885082858 561661605 182479371 267171524 537159583 792225397 10603267 206220844 222722949 207599427 914260746 242485824 147093521 284371242 924216673 935186544 206771639 998134437 932258958 772246252 66092280 712103104 482643858 877088513 68748241 632957117 806846934 328444997 890301122 810844658 521053694 935548043 164537336 754431855 465612677 88590676 470522055 441633896 104894013 514532296 801629234 64071834 986733764 639609199 763175243 678967175 718896986 358859746 670839791 361282976 744777648 394996357 907049087 934742801 318699949 40135910 968784468 943105999 116195862 784604688 918119279 807133488 377850186 142121224 481670782 794575915 869148408 495099589 830717851 495521370 853920643 117905815 55147717 737901083 218767619 363185506 20310250 432496110 698378314 320585766 860441587 840506870 192068010 995309013 288497602 807738573 38316361 456424132 24025298 962879059 29810375 691319949 952023001 452425462 253494294 439479064 782370034 924439871 211634674 972533354 313129772 236262869 715902076 380806474 62043367 149444679 773793889 438862534 987150140 864629870 261027818 421750633 585240010 861837176 868995101 881539709 20884651 747712426 622459001 593552952 750596763 844540361 819599809 433127211 768006532 809577061 164075518 565362766 487584736 855053977 936776663 866507625 328026314 98340152 459018189 547535470 529136048 371108726 130410152 118367628 448612457 661186542 459154894 949336839 202000643 512850644 401116463 509244328 231421503 628995664 43227333 659234493 997801587 399358893 502819025 130554984 375575662 482125767 638063435 176588320 174021980 944009181 203246848 271946964 755070624 175584506 105844453 214753614 687118642 752119341 187940982 216444040 24905833 371119734 826994754 417048954 310279516 354952809 316459007 507167991 875120630 59222797 412788545 337654228 361879624 373483781 680269204 71554782 478615260 894254506 839347653 74873706 175395572 113444326 678258828 64711436 491030691 262208816 599847463 799915051 855054135 503760965 952727573 236969345 366634332 961191702 809685180 192328331 282850787 252780509 688760212 840197815 901178439 861201662 605459453 63108049 36084887 532046201 846328280 283036580 629719907 753227842 696078237 743758830 487881538 896588258 224092621 97975479 35597990 550867274 893264630 423722906 370143218 732660397 220286908 977056676 777849418 169060793 291534815 356305282 256860891 525586768 287592489 771529378 680271294 70945239 938808064 84285677 244485264 215544004 748018194 564349997 357765406 545424618 966892137 418178957 394388123 585104550 787291805 845342849 101961981 506123701 529327051 570945772 241592153 844206063 790642481 412275976 782907328 962812302 323137011 813126977 418647739 77372114 398277195 972727502 929211037 365014525 626812411 63048156 964860371 914890810 50541816 855675019 111778608 272712726 313440269 873324361 533532812 96303051 308888714 158776547 572985637 19156801 629227184 947658008 167256876 311627785 535966564 251100835 812035787 307575961 710901553 939646106 879345026 627612620 367832798 673418443 865225992 339996674 970260805 656278094 154091049 840857853 16802689 245355957 998988382 76767321 287296350 933558978 743099576 658996044 692432480 707905086 49554490 987292805 753717708 174501409 318433703 596146066 301038037 739495416 290451032 678485589 962021675 882597363 597488389 944428865 93639221 442759382 544872001 876811885 404529587 886520828 326017112 669316163 858360757 74865458 279980542 572781767 302074823 331564342 54192824 943580602 687567730 932280856 358573894 432769992 490549188 49644551 140161618 494417334 827491090 383173708 323168289 519769351 909275691 957682174 189532466 261006253 73480038 641914579 24536576 105696928 144567402 708200435 3083847 240110132 982302235 955507201 14188681 190881929 216266698 350603576 373805312 822005636 325686482 916283252 485111848 848323395 2547611 800090912 689029134 192536618 979417665 477000871 30872648 381404484 865307864 33456745 836974296 800570498 656614707 288746411 472152820 258861955 948762431 760707688 567316633 832742471 276523771 864420722 266418515 825766619 553246537 617455281 951590108 327459278 962450813 143008551 372232971 926745359 449151639 640686350 31314719 161583912 855125777 556107919 464611070 115621404 821178713 697170679 656022689 754201336 75888286 295061422 328761106 640625624 272335277 510516264 970272200 525663138 922058551 319126391 985102537 885541538 956339060 515084320 60734512 775531472 280419051 631774109 202730726 311485420 384266903 370221734 719545493 744927718 45076092 172240780 407600189 424169864 972969348 437076191 854448911 410119298 670933252 646663957 167409733 664717634 642099145 1268329 922544480 928074650 285314555 33574850 901933083 881678724 658092475 286560382 186959531 125273102 235983701 907418637 153196063 766897773 803082220 310159251 124091885 511049118 693126472 848530827 990528242 232708820 728105018 368657489 383434588 247722994 873104703 413566180 766883698 916709313 253469430 942869338 497829278 108633782 370177672 5852392 52192295 258513259 182972546 848767493 954401139 745657650 964607190 860437429 709429607 896859701 750735129 526442674 554132080 625303300 433590240 311049228 887634325 103720035 538753825 888895313 872794795 493733109 891965042 969276930 601983590 217451343 457209014 983851239 358811689 721946605 621525515 758768950 43512859 89630694 522522234 106149306 946356205 777829836 761248856 828343483 622528486 468857514 76408910 127227871 113754831 624864305 754180281 465140146 23089373 33370786 361348379 632214391 864591654 827203436 619555869 658299462 222626312 736368463 26705285 167734913 116779682 712294388 630060033 195013858 937503854 155341761 628732967 299915793 390400600 342114580 766075511 922438904 658779685 550806640 587636601 136808999 843787696 582138815 827581758 228297230 221849045 836803354 978254462 159605951 819616166 35123187 825961605 145374855 677196906 297639854 181324106 504718136 534408208 430801301 993634861 475358787 329777820 82420567 584275835 864616876 327432863 444951335 344381336 933592565 660594795 110594652 578358993 35604678 134759606 814003109 711501413 512455559 869746381 540072289 535449943 37030343 500614775 864022448 776265629 809775179 111332188 42433070 939939541 131036500 309827876 518377733 282186481 218727894 113506168 366784733 469451921 251662973 464591994 245221264 473356141 515550969 189187342 82661260 864972863 276369954 806708085 265462279 604673486 656913423 274297230 705933396 8879267 514062622 390037202 28543511 456308459 767640179 980020003 745315856 334574863 195156838 613362033 6031405 339721868 992310435 406996792 538895477 157973862 967112562 833586416 940482996 109396853 185721113 273963237 204040560 564639556 344318226 902628222 898650109 246340557 113941309 682339804 668569266 522455715 601748782 120748086 276356227 357435599 612055308 714771948 746467529 203864969 291512311 205983000 774756688 152843763 566080207 487549620 747245582 275214069 359868406 945783765 354489488 936337674 625689487 650852867 647987068 338578777 613499164 655102349 852691715 403647686 926547057 697168853 662855797 550948367 495051162 941805747 790065645 621741356 380008225 762405153 785725642 710431770 295849041 423025014 184675094 771741270 885018542 613816721 453744913 994320029 137376385 618928623 350202825 817982639 52774442 648845928 379637033 462118768 635046613 587438157 295149606 158201913 171153350 346004953 785788079 921928210 713154066 281181205 583480248 411268734 967250045 673487431 417026063 124411643 652891978 82652735 912251696 436021166 308757848 314939390 640539492 759539767 916327121 626827420 803330312 991417804 753274009 724225943 532110173 713100852 43955992 577964801 270116270 543828333 873689532 827629986 395892904 119665626 451539041 45971510 708904360 344442583 863496924 316987412 633851340 169744522 709208905 385987052 943323956 794245671 638964856 570254996 448230342 23704830 679766399 764327943 770243443 837413456 506761424 86355576 574632133 639257739 491495660 429815652 815693180 796334665 739039746 814218409 171483209 981137184 18731042 725161085 221867673 204514319 288628756 205829622 420106487 273313312 653484474 396377465 968771472 21761053 500104115 268281635 882428063 193687892 934616771 876376760 444192528 459953971 743597584 370729360 765438715 142665022 560679490 847777951 616988767 255348394 233505740 317131557 122958306 527964793 729819454 409589283 548617158 663863000 951636697 161400293 783093251 135838251 46294286 745811144 565807755 18821957 904485627 547349011 178303093 522794464 991018875 896693075 788412923 760182473 528685669 50035600 607753531 548977040 867104463 99459620 476692920 631161606 92824166 635252808 873606048 276467692 418297523 752155753 827512479 152451055 947012148 732327641 425137984 531140524 957151405 567143312 440397228 793001318 694682260 757229554 17927192 471608346 813374087 668757580 433214561 81916726 554364111 186039471 154424658 818702039 177542387 620027435 666249182 468001987 946540642 967190669 800647976 638019988 280522457 568858343 616811067 995653516 522147574 929307088 19750927 922651791 368485257 949683820 828476898 337697757 695089596 448875372 649773660 366085021 554501585 106876202 768723708 565221328 143289590 505813718 671876731 483480883 218850626 188547783 594834914 572380407 102860316 284516379 974312748 834768437 2488469 62025790 753721641 241265117 120112055 985115523 304691716 169849225 433642902 374577091 657957471 590799327 601969334 523704687 484472208 544731109 415132274 18646533 477321164 443774291 558624169 542516130 766640571 114569585 127431351 641669478 452987556 565705881 354362314 378025876 547350457 970723196 451728255 155530830 172963518 445317750 291025057 60458015 502208558 774133157 35080020 112285504 967762455 300293791 897693202 898849527 527713041 209369244 139803896 601270221 985354475 536115165 588516549 247858175 7656757 853102889 904310025 443363802 150912839 781796902 44165646 822937600 438158545 602400830 528473743 358985077 527061568 870375352 41102560 952023023 990835774 179778990 944240953 815933074 980171259 273099032 999079799 410218916 465931364 474240722 406241744 134205443 625359529 888815184 420546935 180202493 599341297 173590029 104952538 841784671 582632860 810819029 550567601 235945754 743225271 359607515 481034689 744049940 26112813 93058200 412766203 15072181 193314999 879721293 473736350 895659343 604298254 886700724 854875000 872208638 718726989 350321123 268205565 507255138 815839855 971370771 903010183 240054368 843692935 348641670 846315428 315752477 161535585 39173903 277104748 817807847 331994616 108803391 1056135 341971900 430190091 597737432 923147477 572962916 71509787 582246389 945703482 307587946 658126613 492359425 552924663 295380255 869357245 508352473 536436924 457800733 10100486 748017780 749138190 192816103 571663796 713748386 555428500 515179500 446918889 870445775 754574484 442117636 331052369 279176825 822265277 174531425 272796848 709457784 68536273 383977649 289234332 584847664 37621149 711400919 174246816 907723550 822075596 881554280 30642824 614396847 578635948 894361585 543794012 729758202 9790839 149738708 382162625 431916005 863411281 701428078 128237803 64595522 417204365 874933113 931278761 424748961 263940649 940081388 305686573 953676366 162200744 328650924 197897166 527444504 159315423 581138917 303209758 623203171 453561014 22204317 973204209 950378360 28434156 800918882 258346561 958168850 623656260 475055285 502088819 520392531 222277400 542517481 835185051 105209011 450917684 530167890 169828237 206866138 412340902 647089103 222578664 123456260 478874269 759158898 440299092 630507886 966326174 952560890 228738204 633177661 498308591 913707322 33339901 345039120 621063397 745168536 603397802 932727755 493186537 656743616 682949025 198338471 579846392 211100015 287280194 217040000 567129725 356226026 211435211 382040463 911540199 696409517 13383233 882573706 295753053 767066009 996207998 638926826 263669332 24040470 962038214 897332563 756051009 777749976 407355778 693973986 366801192 915218236 826204222 638758941 449536379 447590732 870383234 772281065 267753867 14064901 296505560 208392179 707405403 688213818 150812805 325316024 485166857 668561692 680592051 989172364 453817842 934467232 332754201 799202116 1424272 941624170 448151120 512429902 824622047 824872055 357311730 793290453 950548476 404250629 204468790 844404470 363452428 884121898 154410039 220253862 100716424 306342611 580237930 49580964 166023826 323605183 502350649 102529332 363717261 580874429 755524761 51786930 583200542 532561615 466741864 433307754 975035660 309589310 199984425 947316846 121290827 534902026 156382740 252462980 47962529 30952219 813631373 687228768 595282991 25852796 148406074 774346614 814245878 961533413 811758757 62077370 876540150 481466291 642433098 197793362 971103555 615642922 230230177 87838539 913769353 257898143 84668463 838156194 212285631 348462269 935719220 7690071 767277192 649372778 603070597 774135994 628690603 139529727 313382096 602488827 516131310 407418113 802161626 343395582 963164132 561017924 162260465 567738225 400753075 528467602 495979544 636961858 111492767 660461485 219420103 802837596 442828956 147557491 515559530 669898150 377490428 46373900 371663730 664675184 646463692 265106181 654189403 104114136 625601706 345989087 148116923 964313752 707183440 386072123 428025094 270608389 40931667 205493653 261954364 925068691 64019328 29143051 477287371 807388762 845238396 892589708 917259787 139488304 745754989 634667516 727279074 728423842 475587121 230588911 322079142 933770811 409652358 496179726 285993875 474092439 662303868 894150628 794977482 373958827 656444466 444246597 592381403 564500046 43245046 64132771 398527562 930566244 192619793 205169030 839974698 778768241 261633003 316266629 841923528 520330889 124824962 803414905 462187201 401067254 220596885 953912256 796091066 937208478 484186529 390982996 275948055 631360691 31992253 503642263 122063937 92657298 407571663 98898461 11441301 574591374 114095394 808380099 512314146 284378011 219498585 729403686 632050091 263333436 918988209 164697877 348595042 814228945 184536913 204235627 898544053 99721852 894391239 304730255 659242984 144895144 38866422 149050945 668831203 608000432 657339255 58915659 734226977 261852034 759162625 679256302 893615957 925295541 430791562 59738693 145933751 474961705 357385828 278235766 934605267 952206872 181110239 340977071 375796487 518527592 803031882 793773128 15216871 910274369 347524712 963132822 180747704 833233949 487371958 608205589 422731036 544477358 873503550 245721042 535648466 702953634 354848912 801610044 82189985 678337257 631377828 995698491 43810701 878374178 452372300 417239295 627966029 862976679 873898946 328229158 777032025 936838048 433775514 612241820 261713228 330009770 99706973 110186776 751822521 63914468 575017168 442070840 304483849 61148636 488760722 886980949 901542748 803749708 907469532 272217635 307016401 908121071 854245855 886145661 199518695 344513832 936977038 515497314 5729949 983666351 271488937 189996325 529873649 177227790 570149530 723287317 529501103 18389393 717404902 24817634 685388313 745034874 898662095 116994217 605053041 397650217 191461179 7322195 597504967 41397224 184300175 913287327 568672624 627168164 698630820 448851608 555330202 80940825 60701830 949905961 439369340 862892133 931777794 332523184 15918051 343384329 518843882 879574251 987698928 421790883 762618882 76990824 716172635 120161414 434647623 104118293 450698612 822441079 446164871 633969684 851812136 337100984 51120325 210916461 511074060 874066518 181548079 185531335 495683242 621269791 866998207 573184740 349892049 899889616 566975426 160059115 319088400 751494639 538485197 29621183 135484552 316972823 772511312 685841474 400350575 239225102 455087330 87002918 113971104 898013867 596383679 962924079 24935185 103819849 852355912 651191997 151993143 388421153 820666415 744992082 475909850 75270447 50734680 813586165 798750478 652552331 962062032 498231732 839181425 611432959 832146095 256029446 317555298 388767421 145332386 59296376 800020597 511014661 239056040 335797743 502143170 396348769 368186941 676401737 818827874 978832058 775745354 370404388 451398624 215433317 642830016 929513947 712961329 30173724 886615992 96518027 124150940 687292625 709366575 970876785 467946894 510689469 107332459 87245708 721077581 720495036 836170814 6190659 358235121 443604812 94314780 236080137 741914174 211769604 755989061 473048642 747762476 383766926 812352087 185628509 583218399 816702182 223313797 161067661 807188700 849377276 180559148 488783858 809185483 535636213 180795576 671009135 189231813 253529648 730905323 71359259 629123774 967445333 697824959 9167628 965477523 42712624 273270199 640067966 430816186 247885866 626273259 692966460 916009506 871307499 532631741 975144147 298434752 796750134 206077430 946669585 259881592 216835008 457289639 116599299 734347230 16963487 892454052 837394270 873307615 247465091 349492800 874585654 112653015 70059553 210890887 23786723 35996543 454010182 197293781 508916769 932567221 162438781 582542367 344397209 221673152 494523809 523324681 860629314 337324810 877519252 588571694 919361171 480088887 733211150 4112836 507877807 448071119 107518812 983394860 608979796 67379953 979644405 474023116 819911089 576008826 581908092 662920010 614926599 744764648 420811713 957223062 275437403 641575111 689758533 82721661 794274924 948428490 920186322 101457361 392668253 54730344 135552794 987728316 390476039 914970938 465452109 510851275 447393606 434935937 769188388 326868919 530307218 175281520 532224425 811078360 733543724 837112931 735612846 586045763 592735343 212311294 552658513 241269713 652976603 280400950 162237386 934086002 314381469 12170549 495719524 381561343 618701655 919509670 760327265 540322601 249131284 755251844 249726918 599565190 294717681 523726022 640898327 602504249 70453244 664297236 207656055 677216512 549194795 154839689 90834559 300362791 777344579 53107720 409052443 963523617 806172344 844968913 769103466 13918844 236936297 376912869 118138595 195880931 297757473 530303987 466959156 162747954 396534335 699387037 838593655 19112605 482457991 968132370 442414098 357179545 899013681 21340169 597197026 304560296 516202549 67637091 851289471 211892709 333052265 114403869 974729449 452119103 12860129 646110595 623065664 241668575 27829641 677374496 124009750 301631074 909501367 359732652 68346370 694347771 357221428 521036842 744100649 935031882 740908374 122369897 309437177 384957113 176477916 420193454 739187423 173726094 335399367 617628928 332867976 289380259 653740882 143011896 903965629 23065630 777007381 172874634 523521590 327292288 707225832 279300073 892851464 614670604 657875327 651748215 322872975 502567880 850867433 195927090 869845508 499697518 718105866 613373992 733210617 303292889 386984136 855717253 48626783 454214522 857802725 836715589 810908702 832410204 29217122 861948137 591755095 366959661 624798395 996112019 997011874 84570620 540368818 667259577 841545888 132280153 773728519 223549261 869117867 832647555 296164582 43345073 879725166 375891755 129311839 628508583 168047807 63116430 117240618 252172306 455931970 222344455 807927158 823450386 171129082 393705898 24857434 7795288 261039992 953824526 664556900 972867645 297405585 207942935 608699702 760968940 888022596 393443704 510651507 784139030 287856953 230414319 514694318 506888153 117530576 436565632 213438031 482675474 637419422 576636765 713023845 879217442 553844805 7225601 653128806 553200471 950502397 560183373 327776510 162465670 211882447 231597472 22148159 974321084 153598101 264359534 76784882 683034286 396312707 826247155 77555695 859899821 275181114 557425917 134729906 58913070 19968357 597248421 510227951 38563510 261473662 497735717 36974261 3616724 931171150 375238165 168038129 159960425 236763583 451716427 909903537 819112696 327703007 593099400 556408583 29416596 169350855 983463534 567599456 365870749 150544652 726043903 798569501 315420240 142288578 440992927 940137878 64689217 46877499 196392890 578569165 911854233 943889514 233286313 667050244 478835389 722663451 530695659 610181985 996786482 240458810 67646017 165460750 62771167 948081370 421619897 565603537 435152382 627646069 243222440 532040443 4495569 48688308 363837977 226697422 918819282 54742787 872014688 24422155 13469102 285256349 554865700 497602825 774822988 520280400 824684512 175380460 980891567 482934371 747256252 34125495 482619459 424722690 211963245 648819130 49741208 736711079 854509119 185703192 620059720 274510467 66058970 774470846 682678106 687830090 394762387 871415365 838771262 534200556 432817567 101942811 861812200 451334343 777961636 181146225 164522344 145265590 595653357 306939542 359347727 789781897 108476975 59616678 398254742 871374417 682449743 526840074 901761808 305891326 138517845 270722420 712326399 405765837 58003225 98186706 638507919 90186941 687212064 498557022 101931699 341899530 612120800 393763332 874412842 69488499 815596904 40729483 481284517 289919878 750386439 908779515 886501026 703773398 658495062 290411046 791852763 944806340 892660997 352402872 765616447 707604209 784098615 430855351 214563116 909631628 426977290 715687878 142958147 859291003 548683316 444910635 903433583 724555051 636631381 533121269 855023422 93419457 796398687 684808637 522103591 778118331 572338043 548394647 489879298 428309120 820376738 653830546 658284208 698764667 124931254 276367615 559625773 139678868 985841012 880382135 753180523 467566628 449792009 223262851 78952137 682049310 623660818 822516253 683343374 754112148 933879058 417322715 762460472 988132144 608156410 663536660 497365854 634872261 961364806 629764875 523091831 94326054 789247803 845107143 791210883 746621201 585065333 462703455 148558530 425665123 453170419 269455908 666553155 26691395 981361772 418984352 503562309 580110652 133663528 606592165 982518344 206825022 801965311 821038905 477039834 388025989 217557585 895168290 133074036 136372339 846352696 260524806 475371888 536924111 969211016 284539117 105276528 70430558 721715157 955189935 961927168 41407707 955705618 11671539 937199249 387940831 595111607 19222429 253212708 931745139 155399091 769508288 760836213 94040535 465916642 47851843 167241433 457765203 355400560 299077293 146625124 151177971 925309525 809647760 253125152 233442826 252564817 187643453 997072196 267308416 888397736 675653765 231171814 261069157 1850129 726625461 10940621 683231859 556223172 677410928 284201527 951788327 842112724 371334497 474246448 183629885 983919432 192412044 34026046 970329771 806874575 653439230 158516688 545606765 856805022 778868676 801844670 463213046 605313774 805750624 593140472 659732084 485081372 371570054 996003776 680946353 140246428 766883755 916239647 868040042 449603829 822947126 419287407 936243288 21552760 489385737 547676290 84404435 888293265 750017499 893144512 920752390 241188502 843538517 701744465 848578003 841137338 492089658 260078574 528584328 953759393 194406048 388968672 604500785 641544612 873145498 135812738 724664592 105748698 952619618 463111395 194983278 943133059 886700034 183618241 65208598 299055454 963349244 99408835 322503354 198618219 656918953 840346135 938139644 82908602 337480006 98877570 263142222 544706372 432930070 889560175 572495125 957001438 67549990 195300289 648495045 554383587 584389505 458580387 82412715 873576936 720209379 993188688 704175900 836759623 901418005 232852245 549827957 421841140 292062461 983831839 77073448 327899551 537397124 404917921 997306326 252720426 701104173 233691874 226251853 190538652 961047970 95695910 778171190 19836469 218815386 485462708 320678833 698451697 894788427 952233812 650909636 422373198 802598553 200728680 307262803 405625819 329147018 72285197 842993916 56768000 889484128 504952409 370530248 199825748 878800337 840344526 889981711 641985109 281805238 456537787 349218111 517846089 903948400 187495531 923102595 364762597 126376364 173302352 142021698 986794128 148014736 528945029 601979447 655367233 160859676 976099962 336874054 24582249 529362521 145113345 173409957 457574750 460020338 282050592 882666853 290350489 470616855 335052985 425843184 259871492 678496319 490909549 466938845 378103591 19632895 610031582 327930270 274823156 807826576 409396459 480733304 753256940 750173207 857800361 730508034 273710933 669981044 444481201 94530148 41159969 772786504 511867460 783799164 292770684 363674975 770347208 740163605 785277560 514059692 116441135 77161273 38037002 82190512 363286809 877236199 862908593 122031153 638132979 600521096 989389268 114611838 390731694 535633843 861962867 208976041 976215022 975934585 620274675 833305751 742985285 188949975 304681397 942640028 82763995 477592339 780450193 619705561 369676891 831109454 671218275 978427021 236314029 674512655 37591375 943128688 647627585 860666766 353575829 460364211 448137847 203106038 240042969 259878521 822806422 737359645 726755333 568080463 691174928 3501515 668857451 685868784 296747368 366240936 246060585 365893439 267565657 738926535 750329092 904484035 773954314 626360163 256268673 991385252 559694720 365472973 452157871 419354843 139399564 209221507 818648211 828211847 53869783 453195600 919395413 69319716 257725365 133048885 112543308 475260563 259570519 75771394 814834784 956257321 788755464 562345786 188312962 99759721 337198301 106464098 202891638 352027790 744359629 33912217 728274012 957868505 231437561 709872451 835925252 817230120 581612936 868843374 121318861 829706648 47577303 342382812 607749900 143812736 922672877 432802299 380661527 970729487 987546456 249791154 591788376 496248336 627234878 909145362 806961947 61060401 186106600 121896961 750949190 128056520 222727820 839539689 190805581 228047969 431122490 721590850 166556798 402515682 364869447 855195984 499840735 370779562 11792442 213449108 842188767 368916242 33437446 989065655 541082861 963107871 384668443 454417418 277635153 452042958 377229682 35710126 264024767 438130074 63529974 130211519 606967078 297026049 81056145 851767967 428135715 336880092 406603672 123506648 752840651 831111287 220170501 949385353 449000245 92922747 16692217 868991827 391958671 454045138 960499730 849047168 955760537 110274823 939095604 717276577 509067401 646728416 88513478 546442227 142742468 645662072 53777500 867277593 356638931 440794586 227918685 922585525 525572888 256991979 128640196 128965586 344484686 703052218 643267182 512469439 128016856 664104975 917322030 192857754 816076305 995475355 335965292 422979786 592191298 658865640 756586734 995626659 802253162 817428366 449824387 727837614 721329009 98584314 52585408 552663848 736291694 897063345 113405214 381489517 649521715 928540083 663336258 922857431 718218140 853730484 676863048 417633458 473679124 725309504 255952808 305938257 221679026 320051638 169184597 132429119 205911233 272262666 621589509 868527822 312719381 923646171 31700631 632115631 388439730 869131373 908888314 288307725 596522372 886356267 862637102 265757697 401224286 232015534 571495866 916483084 443014582 960352231 991821890 579691619 159943846 193493543 801112215 474862718 811893664 632264032 901974427 612120118 517852661 502326095 746090874 253959512 708763064 999262186 809932201 993695116 485092317 373383012 497154671 662246206 720932091 289269640 775180697 32399451 511664293 826487730 33363387 139145623 482296247 255004791 982748299 405105497 814196818 972379029 142247321 620454994 3650124 195531385 440576548 597925544 163459308 384309302 392957046 696441255 776751794 468295391 503592127 169489904 903390957 122129658 55332273 990039376 755888992 579575584 705710952 107778221 735403634 645278957 118693970 213454001 21258334 421165806 146503937 258280280 945440598 937384015 198555217 171595896 597264377 596067976 388243050 275992747 441091311 600558349 69057263 379054677 229381954 714081435 191139518 452650053 427116534 828376892 901277875 646958056 497715828 250111349 667863677 505683710 536338981 574205952 258392248 558668265 664811388 401116913 758671082 800494857 225063589 819122339 986540088 686688485 423477047 311128660 236667282 390934828 700106822 227507217 201810973 680310611 325482739 563224581 196413066 378980774 46218239 420304749 791094786 656772503 489966616 372325629 357095009 63820843 802302839 328227978 228628851 533751044 445919537 666035972 509236389 111118272 934557177 526663069 764122169 487842318 540063240 937551756 399144555 887729420 328814480 230756898 762280382 105206403 508523955 567976542 760807364 291052862 305136976 153245919 823791021 462237575 716438405 367120615 24293947 235893839 41210201 836696165 144948596 724450046 246900894 977336296 5228732 703478343 408803398 521889424 769727181 333251043 555927106 869707162 952706467 225957794 69662667 495100235 806743225 264169923 333120388 485095497 596694452 276266021 202036238 45735819 662624499 665900813 674187757 861756376 265150911 416379825 383997312 743341565 593862706 904153520 361517875 225920262 234716865 35423982 327806064 137826195 364317569 885776207 103963391 242961668 476497729 971010640 771515631 472968621 675438137 709957214 5276379 850183256 638775555 327293167 147028247 49074523 742262427 363573330 334489848 558744381 442139240 380887517 209815436 23622785 662653550 710838657 984746566 520606622 863469285 209175589 870414088 939689417 790824559 285665702 252645942 103902270 556128903 961210975 805351471 292343864 903636672 955712830 819146984 97092881 2724432 139672517 779830675 759609602 118616726 519060066 803703290 432536875 276580248 327695895 474116216 522136225 799014178 300269699 320636892 520273835 786477465 827555291 403136997 769266363 911721185 279888010 3505687 163012559 197307700 372527078 578147038 94832482 157732970 492342005 746367323 120302936 511013378 5624407 586007669 229649251 38272017 596357522 710861340 747655597 998318152 477917700 275421638 226018255 762043985 684147249 901419881 360440898 777940309 386988654 238810005 118670031 962365770 193557298 830098175 425650298 134603044 241498993 426724619 125021456 201495149 715367196 304464884 804466777 957121166 367887348 606075102 400731287 918901924 401663627 681926975 132863597 575739854 333247036 876869228 544495858 867224223 755455931 745261844 623052876 666091318 491280262 406303429 705559934 155795885 898139626 890722051 289753145 641311762 190783673 355375184 397391218 874427697 629634109 515927831 110838029 19292398 115435785 94027413 878807117 171776831 804279795 964319557 252073776 834070688 678759302 629665161 791087011 985496640 93318690 864933585 510835899 348987725 540802774 834662730 257362745 454364018 679501888 612782476 838438485 907046298 160048826 944959903 840233467 375563218 66245970 518419320 8316909 470783029 332069996 387033786 15916232 418478936 409317289 843436730 904758316 465587381 66442194 405570204 429101314 818959969 264747498 378033195 519836869 643387384 686644116 318305716 553947552 75946192 257258413 193977269 698201855 350454060 507933005 191355723 165835337 362112599 38554737 253344488 299436336 361841354 536504339 898085701 907208513 21294943 634606411 357620309 145569798 57325791 513911278 348341199 191143261 573640458 816662435 802802184 671882811 243004196 992421406 876093980 999063096 861681763 357506225 298495913 258750322 157397330 991272721 736134125 212523030 419741929 720573383 467787536 991340113 465202757 943603640 201284681 107689885 943168788 150045993 920914045 686220990 494289578 306438502 590604611 538536572 341785667 456844104 383247614 384226446 853073906 916174033 883535098 207453634 368199396 856447329 371754817 32270240 518802706 330709276 803990484 418285131 343034632 956642557 243832138 923688507 840458188 601795526 791903583 37280125 150923440 422089644 909964564 329586535 74338328 301576608 898753167 662317967 456750109 649476990 734201032 76304729 603170927 839913146 502935517 484034888 128527295 100661363 71902584 94545640 73255243 549558616 372579074 4240350 286733071 344611453 428814384 811038794 662937210 906568871 813232204 721821865 424989951 600574169 446504298 476637177 879607867 298183773 412600962 460014217 98961988 29570870 409929130 57514064 998799822 723847827 668477335 896362710 441151683 748063827 12033281 725465906 512524169 717169704 886503278 578573215 952420528 46873266 300561285 991938826 126821224 724878629 126679704 733971076 377271107 929108318 473062313 863429623 872074601 86151609 18864614 940769236 895177339 184066872 839253478 778839129 145646753 530834342 267437530 678153873 497826977 795728373 243121783 223129127 580790428 495095204 248626677 671773386 347437871 476614428 812806660 647593797 536450023 248318311 839533279 735064057 418553623 744782952 694243359 586654284 543404935 287424681 615429604 608902902 165563410 245632766 397886692 806296476 360006781 355710050 900934617 771512472 808230471 912335757 485143028 686251192 774390949 137887230 108997578 760304817 550985217 372131577 298176560 677012014 953159917 759283455 15027852 615166609 218747776 265847462 766788475 69296046 449966054 698529959 887334415 250995936 875092665 983148483 439077508 616695330 153132366 93524018 992815988 947877634 457586711 455708311 62995706 305672453 247822163 668951804 845705309 183392743 463801702 641043274 440776465 566760561 613506475 206769561 917745979 766267544 945205957 640304899 916167461 559257939 439763325 679764907 154640433 367967832 19185198 557026508 923474332 701675077 131846362 501549280 87503469 478006929 264791838 624424544 836180344 370771836 794085136 317962801 827976279 225638394 948770338 816875213 651272202 76440963 386543029 545117968 329331474 30120106 288298274 708098132 44550891 858608825 108122373 25921521 617691873 399115738 181003697 754106687 53405343 937448383 43679386 117154020 427130143 827181965 654962137 760737631 399515204 435624104 591502730 66082176 963945075 339562367 853608237 58790746 122326687 755893361 297650644 858631961 898325790 549358212 881832146 125125990 454630378 952719948 370189581 812560764 687525499 560761510 483839028 160748189 567684606 884046686 963212695 754806457 673560388 74777421 748121910 25187745 205731917 396136288 540237161 148745590 16144555 333967783 892532148 332151821 352551193 712621116 680752057 895128607 576046242 405578591 431253695 192742107 994477118 401451389 887370744 113775641 151866493 556606986 457150554 875224673 875286600 259148500 173731082 182035913 74947644 441665795 336316772 982949897 117057548 157421249 853952135 147658432 198845460 150926580 57700637 679656269 116154423 968541182 150558957 543821903 531851132 757105522 254230297 107218601 893157808 242685292 76340650 210705186 544189398 167803822 902353881 336167790 314794518 49557842 335116034 468938911 591653249 654749833 867290232 518214138 525966190 117749200 844011389 458531877 581353521 727004098 430060825 537405700 744946167 732735262 775475479 321813290 805117755 232949193 132786036 323913825 473613924 664395477 978119918 440182012 539434045 456067233 221425395 219861354 310705342 667076139 325163203 882676814 301274857 581398779 379860057 418921714 153035462 742344508 590273983 973510488 88488401 231598665 407283592 639257707 993848320 392250503 316655160 801860744 200446532 915983468 316689144 503744825 31758452 913960173 97944934 451425188 589074662 569426300 928817917 214225816 320852097 101930152 763491716 159700774 42779255 506501519 338775215 995863674 949811808 714295257 860726825 394901133 886840140 567947111 305501974 860351067 810137510 997100418 427668905 952589629 547049921 134953527 119762851 622321961 583797304 686792662 24375497 259659101 432345679 892653957 585364806 47222398 989385030 447338926 593081763 86345355 496428913 38576981 362084158 13942928 860007016 188553955 769599474 506285589 286349275 369215758 82837797 717970544 512823721 784147546 54955137 775323230 503846121 115138232 175317423 781209629 41310076 661846407 38957616 221022636 518740994 64933280 528772226 164416670 968489596 201541638 865201105 888553893 508557163 144361750 386510085 267328964 931134837 436150306 614367473 975417306 849370399 361097334 874348334 207439472 723998212 876053517 828563912 230290726 210721561 829244452 263138609 980060888 535895667 416587518 779148280 619434557 264703016 149526629 658327894 160840823 500801446 180974389 964612072 114181552 649217509 367731595 348413592 672524856 174277045 775810064 215674280 437476854 952182757 997624876 724678548 42177555 364890071 439746099 947719444 890427626 179117109 993377429 806146320 903905134 121932546 433686065 913379163 493137228 166998191 15535060 818527487 714446793 649793800 244191855 83052994 131923734 449909345 924550941 62659958 878954225 938324626 339438012 751232446 796990226 414871042 360176683 947617748 536675036 596540845 852252895 976683575 78524217 781177479 457556421 725874794 315352907 502787568 979028996 784459249 353252161 317211841 649091924 917867485 706010896 76132407 237822957 322085017 109473851 176362126 189944349 193435766 721536519 386970334 684956727 32915584 880197773 722383827 415047742 469027313 561388379 464337849 60669404 193814392 133552682 521065835 29902407 372280560 181516549 259894825 750553829 902763804 208733751 363564031 243931940 469379109 92630391 653143666 417828719 400334795 581783852 363133677 428023616 655987215 346779319 733571618 911038620 379175554 314156892 138254392 322108388 517954751 238725084 395270321 527062305 271551965 143638489 562923499 265838957 380050290 598234202 978846062 279602751 610886210 888168717 416627499 464522311 491709894 194568717 354310986 57003910 216893609 632463302 972947741 383526783 764568925 222041807 822205216 433581394 792709532 529174637 165496493 942964481 110693338 722007315 927179104 533744911 596567858 327330844 782797593 325456201 573889640 662192125 997957089 318554412 99297350 590209013 283957787 264506679 849733806 198674066 444236293 456433484 729615803 372907576 393253619 301215314 621296744 207850996 214651298 851125598 462660860 132683056 858500821 342261297 688097335 770260717 378651504 90185176 383253327 242387353 48511989 6702249 902290531 106241797 705207348 838356393 536813487 342471967 164346871 806296990 660995530 912862590 342707493 885428248 291393709 472075019 711426363 340235522 441724271 146079529 695655592 819628917 696309627 456429403 307237295 371000848 520513264 36080206 878748308 552515115 937276745 971884098 28589090 58412469 122520695 446497595 502967569 431194272 411397482 700127034 896619167 705592097 842903452 901906085 357219295 143389912 830494527 672599738 626680017 689261334 277945476 492134633 298137558 16087533 427142904 751030184 903538674 20712050 694991133 472226763 292709151 208939989 200977315 516216831 612426516 466049228 860508122 112491652 471985320 590595742 466778406 446165704 454194112 111632909 658582314 831794101 441849244 342665281 276776711 458844119 688832521 779619298 467581735 67982180 791349651 237799139 240572664 868494167 197244942 885872328 351905483 608589882 548407657 85854767 879782938 47323999 127288091 154434796 942357958 899126521 912582265 238945325 546634201 332270189 70437268 528134549 155709201 236935522 77513358 339986434 331178166 499622393 868911719 900018426 584477165 994823856 238457955 768232550 737066354 218704273 334767702 844037660 515860170 689535199 451827902 487858518 46205337 302716577 589316088 142687427 788387145 755166729 888404381 776966819 19976575 508540823 176344721 704567907 278103240 978125956 715558723 928493526 356474965 78550522 145350639 392214024 959367677 220690514 773527411 742678234 900731820 326140619 769185269 275106799 246144298 966487076 947113718 352248125 58276786 592702980 348916651 44565952 789497691 619556449 195179265 544601131 497801014 642232369 354120926 197864964 271697375 604486700 718919199 916485976 198801631 910255699 599442133 885031592 14175787 744283922 937305599 748671842 999625144 886678387 825891864 89746804 781609744 23550615 387325055 197324582 62942208 332140220 353460453 100101837 840658064 49397490 328574599 828462685 240190453 984389229 9580662 926362022 76592703 681668852 832570190 157721607 705697581 778582803 990211707 843580210 343053822 149923928 110767315 800785078 142977155 827084146 209613467 183408873 560800314 725619912 536785697 396520995 350514836 158398092 105331809 803282211 184262956 9285786 220749378 992848878 906905273 5527149 575943085 714193581 819269307 148506849 893189508 452337288 216235921 552754545 322792713 853117001 974206342 107454900 578553624 701756235 938519905 175178961 849896003 971838818 911128157 65758962 792341678 333795922 301122106 500437415 460498340 477490296 31007534 425212928 926325070 504036210 78418673 525973192 797637274 435705024 711742464 408096094 924008741 711629734 375321441 622963601 251463871 637313161 317158278 797881446 77239671 395456238 750908313 958727769 758528481 633602115 567610195 417528468 610352806 70349342 213479014 62548121 206052318 903512512 712546051 106653124 646352792 888815371 223571750 992764849 836258380 765959088 655684941 63968642 915906803 242858575 37035327 588647451 188587463 601361922 401353321 288719324 577590093 350247074 683572806 936503273 932409568 20186060 915277392 119647950 51491600 394885541 292042904 471485872 973017241 344118794 485922933 240413807 329916835 976973918 199885200 515406550 550193662 259919686 886053753 834083591 658699735 912147276 744200080 976304879 511267548 290002100 45527957 742166715 797205806 630909944 600618953 229643334 267444276 881662799 67162685 887236051 27920456 993269846 300623466 423554408 320085226 581782835 974237652 566320317 913897926 643185069 651298822 448325767 823739271 897905254 163581452 103964183 343618720 537258602 885383279 339263926 947645087 432837343 120617219 22118221 493841110 219834908 245443564 823326811 517959091 990575691 170087490 182875179 274754945 773209477 156528886 707964859 252318853 279381379 906292332 183732297 947432837 473496223 665320278 810452267 400453594 528281386 125679313 948231716 185094494 452550010 489600956 241112996 306431309 630612162 563134081 626243514 710206047 627111565 79222558 71832885 871552773 857991065 563135392 534425328 570163157 248618714 217304942 271388524 271589987 656681122 207030589 362783856 71616699 894396104 708880691 90936610 858317061 269577242 740311153 401015250 899855861 460097990 784251258 511575430 491641059 699834099 505262278 788877493 806419656 600097881 320605052 470831394 543874100 361807029 753266317 773767562 264275263 314409680 465578820 417468956 727569036 542134844 805707087 514779169 183659636 911832297 42320218 959828908 218691590 890163029 199651083 328925013 587897308 18876065 251817634 732419759 792228774 155680665 1520972 925226444 539790997 739475323 365658679 697889163 396283801 659250768 220367145 601792605 665874884 12489709 921550456 247669723 521873341 932375469 630478149 844010462 811949914 295853633 27880433 446848994 796067244 507002694 803175153 756707798 691530382 856103355 524475610 799214641 353696827 188802098 930607679 440838386 566604907 543373500 69713627 832364349 499569294 209664451 403987210 851637404 207770339 560465093 186226273 963056251 910220542 662546530 768436607 894106847 859182488 333735534 944487983 488357057 610420737 625430394 255159806 832016955 284436526 853018270 836584329 605269165 339568294 964322210 2026680 430163180 171895263 57341998 53654005 392213262 160334191 714993326 565074760 878341030 964579827 257850779 818083032 21862735 799131397 965529116 298882490 364659950 292154766 299294996 480701610 998677611 626225147 748891432 761408302 985233992 91680904 702019703 180706027 359680953 864890600 36806629 595735258 672319671 118748348 233257975 3892843 113308947 771271950 791374567 470563978 274204917 132262573 990141216 466061176 938193162 237945410 672019792 769478237 638675506 886055278 709537770 966190372 178219023 838530429 741624988 479537425 573198370 843834017 847388949 663049019 748472501 783778059 311165896 329249031 104382052 106982177 87656479 906098162 346425882 276183229 819137201 408872956 907490467 485395976 23235260 360705160 889233865 893211971 947738482 86932730 751226716 656260688 805247644 85237789 610705079 825633 2802190 825261855 314265164 915268094 886913172 773277917 807823636 814798022 254626032 338251884 900115987 12436888 28721023 226520403 374644742 833610204 864966093 686755369 708830833 438062260 662955314 178602644 442901223 271853125 768715590 943173760 635712331 949916638 934523186 230982253 308359122 384126160 229524824 201701660 999746898 910281228 560900143 781552133 111235717 235326513 926620826 401875987 460153948 263687465 789958318 942243814 885114238 477890440 210605656 325254027 697444787 661867115 416351795 11096909 557223116 223867250 377170790 302188981 404477998 723010813 565722509 798709536 258946947 145032173 334259908 737860254 648247663 422181494 171682247 972838811 983328221 728302882 672752773 12477021 423035973 222329210 490590134 832295366 576766422 856985291 900434281 314910430 80830642 790327962 480009899 659056245 515368168 463334947 966399771 967565009 356511857 175767969 925966098 91346821 508036424 116684824 169969575 765221446 99977753 312236130 342845876 647923070 979709721 795594410 796912798 555039131 708298050 66181779 617885036 917149405 169728166 754202188 52796618 47617321 412403017 443984421 547708880 528932418 143523855 640584797 145866558 949031974 51143068 575085653 223337077 289456101 812433191 847766280 323466439 834697432 577255663 51972739 819199152 705631727 149513310 119947362 994676523 474597152 771442117 88362014 290366320 107888232 860868721 186971885 972521998 11248771 727614764 979419908 221923415 62145765 379935838 619983744 126021376 306556095 492226547 997511093 639621133 176791270 178622912 669182264 556345018 363708661 250272866 477567007 89778634 373950308 392565294 869739072 21518101 55328592 107131556 794531899 35784086 537970256 484863387 265794145 633451317 5640991 763742474 683052054 576080133 735565624 720449065 808612977 572213347 202169448 556363594 725008055 600820161 838739951 509756601 648158856 202026224 303050481 940416378 220907107 704592621 129703316 891899372 217308378 400937022 735655163 992112227 77840850 177276148 264358216 395324972 537238354 495955427 584405605 890066349 856787341 283980544 376575281 498922073 796143113 751255819 549638724 962083760 149592174 251901863 765670185 624349841 324292174 393123020 153555842 945572072 446260394 504100162 938835673 785863045 367865158 830817127 748345490 695929746 826400327 720801276 538496944 258866452 683306339 612454314 165542776 847284431 520336088 780071813 466473726 820818126 430701695 975218482 165462510 997404852 118396451 857102629 82802312 64145450 187462605 242752713 884303408 762631490 324347600 270800104 182468250 624743673 947066398 347874376 413627880 389439886 393057934 850406536 977687788 57809888 484492498 362814622 87991874 540944841 202666524 31090043 488744774 456063897 622582461 935264708 607071821 805976769 338312447 737376904 471758912 876061982 902887778 924080287 581507580 698111362 159102896 858792099 460701626 22455365 669637614 716116101 60934597 968017593 515956156 773359072 699533841 272659920 41513586 520678595 32156985 231843722 964485608 798275295 697088479 14701400 566609629 505239069 549395833 929151014 124862748 813100089 150361869 918462461 153739183 4738275 402081105 2295662 273545179 411212811 280616281 951360312 148700497 540973970 657763207 945405047 277388670 616400939 362863851 449891994 516363440 71515011 461858747 684805520 649408741 138573208 490566443 597367751 266662604 109936470 908897529 369774888 334289060 654211047 295150688 502015853 643684564 172895942 569514741 223528661 202199865 183928581 184647962 392906766 365864585 871447782 437205540 407856016 536110418 698989800 876947493 507262680 256447212 404035496 342678731 879047233 872659057 344283678 697702167 720349301 505382818 593088817 711457055 284319685 362687299 351787732 906298913 992332537 618876637 616097947 34655966 104502458 331456015 265611384 145714357 482703628 276376869 57045403 246203258 217345205 13156951 949856684 123571352 194592926 241802721 264406433 521937452 850853682 823079983 521404790 915192594 561858785 543672566 488857734 985943482 933320609 165852377 584813199 782770113 760516844 143453541 853751084 747455529 732659519 200092923 270753050 848004611 918072668 878579766 445716226 978330982 987550314 792813751 431318320 524782823 558727837 836003977 723175735 171791851 535039522 451984541 210461816 500647917 588672614 685082515 71268725 677464168 414541654 217318195 17661618 88479688 763220953 218959058 954304788 20286445 697429647 693549654 602323816 73830646 359056286 553125996 927005468 121469965 962139065 309462674 458019077 130045233 668053363 80628753 785114409 680422338 719112226 676798614 724476100 141963638 505967775 451552238 369587070 832108414 987422328 139098385 842202655 281585573 360277538 209391600 396164122 665581978 764497827 449543707 473658500 327679537 323974049 332068162 317524936 521529391 536609158 679580668 144768006 411208400 3093823 843963407 239014377 563165078 491035540 235788971 178466433 257928726 82840900 928410757 596555130 586501224 292209392 429762181 311605503 850140077 567742170 310639686 758184534 636401828 216898406 225843317 807119972 792018028 773482472 273950195 535448626 198005764 894518309 193715619 347372547 512150632 396264586 712052089 620838068 587643266 438038265 514174279 4847578 838333957 790907332 302282295 634003066 897680912 281905358 706471864 657323073 237467082 651714000 482321834 19777397 254709637 774073764 698164938 45283597 499310513 185321826 917513158 983232586 122389405 236527066 585594101 32754010 165439843 31478350 707523320 201826823 140195410 39594814 614364856 676952194 527821409 833292273 182153366 142644122 152188042 832759519 625729019 121360411 724382158 489203156 870982050 677857753 634691065 716762546 866228870 293558809 482357034 955852229 327190169 101270514 461266014 21178078 528343527 295351085 599766996 779008570 244033264 633333280 263799199 831668621 154414912 74954557 206564958 277923859 179559997 852995622 204890139 574187337 502225050 208149821 790906256 616075902 167284260 236779206 792108548 78799442 206217560 186294998 998014382 307232989 394085068 641757631 226891044 771260225 936187109 345020843 168188711 991195807 857192431 66186013 832751705 924935415 86337102 258301295 881889058 522504335 871554018 611286772 364402962 405676048 122262604 731182514 824759923 387156512 201002833 332567289 209048914 181922322 625321162 5396111 576430746 851759200 467259584 599494786 477329444 683100273 473998022 185539935 465904330 282603543 208165721 762701516 252770518 956946744 603222621 533148192 123057106 423193165 918009884 991170649 857225733 114846882 57231621 215735340 550494571 322891689 400545028 271732193 212934139 445529582 424195130 318225953 682741529 969304013 496497927 383369525 568765278 299774599 385752847 990924049 617089280 871097145 879698039 766857551 93013694 231316202 478119151 674623334 52790404 390239374 76139230 732084865 528334954 94787364 446203848 416117014 139189150 725618329 732488391 311504837 749958094 617277668 256599116 59123809 936095661 953975632 962350983 820772071 431439501 858213031 371164876 291681450 2661179 664471616 320111305 901203654 475650217 501157326 123372787 781274673 84077440 882488551 736031638 577987939 336357503 633320035 217002456 461111246 30620350 688784139 338025101 455428746 565749162 965110289 348338663 838863458 958188970 798387768 202984361 650135042 430301902 704684660 593466645 344144946 734482521 591648604 42326111 351485554 191440394 58013669 414628304 552120855 113356462 705352087 375710528 627998997 43208353 490622521 932791247 705202400 941249453 630599484 201457400 660285959 933284852 864447500 960365969 389641658 763327750 542459959 320073448 896987983 747861701 540317919 311285153 175659991 62866160 562607817 773169741 444291950 718041292 21406545 876724950 123449000 676449755 449710102 561147184 735362742 114217307 774186179 717198639 904973633 458094459 387780283 458890753 82857912 803620080 234763279 626220411 817656574 826690822 55999076 591399812 979009111 207348747 826914688 345701103 985819068 218760669 708198671 393486919 553405460 409387301 530786342 349174480 17383725 582636734 188968708 132703211 969217441 839330367 180743868 321452928 204102449 995032829 391182068 367157956 774645921 895052273 576265393 360686709 727723983 71508696 206775907 876087640 100092006 11619623 647853664 111995705 579703426 945290933 802764959 750418684 489944049 731983210 179817192 688838224 671215200 623270769 292552999 159007749 56614582 670235921 600410489 279332684 100408360 546095182 69480952 813239101 121549389 386521338 970673496 497932434 979051983 553951769 473768758 221816056 106966360 557791076 282998215 951574826 682108271 386754178 677224415 916725274 922641062 808963315 66845560 335296869 805704901 150786689 7381938 552142728 509044336 943010215 391325780 611289026 987311449 842750412 560921215 371427050 668200325 221272181 657788154 645319867 563968765 207383732 952932885 497073629 472109270 116027119 451964614 473997406 657008261 18137332 989342599 40981884 75178095 890378675 903962097 662280891 249702378 182677039 639124268 861495243 442450044 518115535 702100567 507327402 961234879 538789537 384448016 468537551 175984731 167450653 489087815 597425043 50233042 115042277 893082066 925625117 149901569 783917160 10097754 133761459 78461943 452535830 175139674 138926230 535079267 75854346 671599699 975770263 677274976 431493774 991953631 716237872 219405162 179645322 297131089 778138049 133085414 386217716 384504758 717210932 401696699 348064629 388190702 478012338 811337669 378360975 717180169 826761208 802477694 312258864 677396911 282913815 686765543 49572164 860558381 698132127 659139310 608502295 414894769 136197310 396057841 182910644 638493456 323647680 558874474 704005556 335023708 309846211 884658188 18446374 455077651 888949869 912744075 47560371 78030086 670221289 165253313 961798002 150069584 402768894 782087105 185974929 670910663 67722723 902383600 873081742 759081813 939895472 641717281 405022651 588298463 416210292 30283728 122462080 882997970 467178291 633976087 138394512 453362716 835468643 673851364 392670166 699335222 411989939 786631775 106947219 234110724 581478681 282337231 256360081 739210720 677751721 863724663 249311035 300612827 566918321 597725993 311987919 635585293 653103935 658119838 100519623 442736733 356790724 497330361 617182495 483140438 883236088 774454718 162065565 340463701 151621456 159121778 263192522 276921001 244440466 976411529 127565276 108527305 132867568 210605143 356455959 230968930 294550975 537536283 821029146 749786287 734349034 347096449 15221661 859766184 538943408 491921115 986009172 961039441 842816749 364790152 821148650 422590102 6888703 109967749 60423629 70120106 644556795 948056968 584319286 580893615 694456338 527760739 423509544 172919838 979350097 378162607 929911083 921453648 56122317 90607088 243695112 861913330 996128124 441545836 700767781 53351676 989789819 679103753 787645451 350581628 361509867 216589112 956087784 893008317 647143842 975170059 583922060 2460771 989884847 507635597 410386750 672266122 812432214 182699588 561509770 44984643 60761065 311021393 507973586 895528230 549967251 338738641 352514132 478091543 461913369 581893622 716563635 509533266 502596750 443419533 768829456 396293094 818697860 297815886 414032952 699740315 410955875 288174127 492390195 247903593 333645850 981192656 569802531 469166146 327385066 222246772 892005186 116435762 281637465 492207261 925994410 255191661 622516472 679548530 780514682 492405959 615763434 13840936 403487714 241589561 743923417 474622454 590387572 28100453 45183156 106706419 294604101 498380349 601622974 250013367 543362134 256173875 791564623 416086539 468322308 13872575 768055602 249067405 255087348 554846198 323243572 255345503 223392545 413152810 446044979 959146728 25259295 721645289 630483261 764435957 489883923 993949535 373888644 541807990 786802187 26334070 685859188 1524907 119381770 696247263 700743341 672439705 862080568 621633270 356914153 399059075 284598261 945557815 735618523 931133752 169092408 796213775 585652211 115935437 865824351 172452250 88261342 330962998 650223626 489916036 79861356 459473180 280749445 306896404 366326993 531116702 31449720 504590774 594295993 465576494 587243966 215986624 577133704 836339717 188176406 774583414 818257248 247419453 169104398 446246669 341874914 757167623 631088689 891962881 77764143 512711763 649343126 489753362 820029036 957947681 337895342 310241975 853215590 810378650 142235824 136638255 296368902 676698424 877395653 268333627 557894407 493812933 871177186 828487579 553013712 999191721 187352156 997333809 547871411 49651573 969008780 516578351 571016724 413954227 851608861 916869069 951370613 164466524 403142729 451447242 974150234 663247525 179003966 101299347 520270640 165164694 547466405 187976423 410835207 220668670 744989894 967669986 837868441 39618186 202686464 406561927 436174572 899078311 46658434 389650408 657301869 463842206 872745357 294727857 143064912 878303178 417156769 519820654 589849310 717276757 82565933 394874572 896852061 597718755 573127032 55432470 105014029 635516939 501232203 624330882 225122958 768637333 495132398 73516528 281047049 537034906 132955870 33873065 38319143 486367569 631083872 437324545 590293503 682443140 873514277 437492641 185002541 454803019 467504684 322054273 749449361 735057862 145534518 89832631 707327038 330111477 386678140 175657088 615057161 746451069 14006170 269182353 638780864 753976514 75997392 461584613 897503525 804934006 468240602 649086294 652181793 760439540 450037955 108299728 4682434 52370715 963701264 16815770 546655050 819131475 513724065 368253102 485770863 393051347 721206862 159501163 593703122 524146942 440132971 849989249 457204323 268758169 364981828 109207023 571111457 403564280 446787078 889379023 843066205 500317001 733071213 998636232 170345126 782589919 933852233 903937366 908234941 520380300 864047314 967741314 852830038 804532698 355938849 89333909 42064403 173925537 176999822 497257943 628615413 773021258 109853122 241542804 609117567 265859890 795696470 855461327 808566190 54797761 94628440 85926314 437791427 234847809 579965508 179550244 614585907 426176840 553500030 149915647 207573137 172392231 468496723 432181821 254855681 784193707 305252971 857810623 260364197 508486317 61014999 24032735 681116510 928043132 32504604 425563639 98379805 337808681 410202712 690818564 797281018 559934584 3400318 22110545 638406754 776048925 974672993 935437854 851847174 544256952 736092727 914347984 704211850 110170341 865386008 179333068 238332509 933805915 284727861 907862703 556165615 358811706 948273463 397800468 92972985 762844559 4299460 22202761 193376952 86030294 720125889 133366268 386663142 832254563 603419535 984907165 74014020 38216573 350924412 636629438 228592543 22473936 618488808 455800695 373911154 888099962 924174267 365803981 579096794 587425132 148756580 978349193 951438335 277074399 91717307 715936601 696594587 50184711 396286594 670360931 354257407 623215305 859347391 528463720 262435665 396180797 158855549 544750547 990833223 12998618 204200684 722070299 539201249 446487830 819049383 799087001 1501730 883381054 380288214 511922689 580725710 924154072 939428176 192333504 643216546 226085648 798350809 809994066 38221158 464446740 607341793 417886831 860219119 34306085 119875929 251262845 696665884 314033364 600001813 400433605 631150427 306299937 884548770 57969294 975199199 590128437 965680112 856496414 802336545 347160975 684188839 504250766 642178188 228482139 527618413 804588303 115269671 219345414 637539780 770882797 734956096 446789956 692726637 598601970 402878713 621824117 842105454 184322219 355088911 379427118 508338808 405477825 585075852 852139610 946845555 706175292 641809619 271927887 434324456 923019674 880554484 610300369 693792420 235274753 421088455 851664538 7278934 762311662 100456234 816694248 796676563 532907303 717011725 79225637 99563699 263698568 325888168 657934451 939537868 152666174 969553884 304467325 227072558 474394801 889617555 451110536 453752291 874566221 310215433 104176099 154317361 990487099 98554755 279685378 32248744 687381306 977364378 527826226 498719000 832794819 31068771 590127495 993366164 716140348 404081678 189486023 848438154 925697763 474556464 50248637 15864811 26577998 108509737 762260544 969026308 744678240 503943401 186858666 289920403 178858896 576285776 413437250 163757997 286879388 393533805 699639756 163246365 24881738 48086434 934023143 225321826 947506832 748945518 997996982 839730832 426954772 9979511 162304719 226368371 64683504 777708791 644802143 580837139 290011145 609694736 530545221 160405951 710740365 360488307 25516548 866605468 929767482 576323563 719834211 776509867 368355827 640532348 914516617 219148136 585012163 741590751 498105143 327838403 688590781 512096105 900322561 529400881 577391126 958056929 188010874 64028556 747218092 377457978 75204073 715017715 900257205 440876543 351420447 437719305 945310600 65727138 479017327 787289189 58489542 570648521 519567330 41635533 297082971 762498075 562020609 678863488 189468360 738308232 17298037 470659776 135212931 196993159 734955624 513324565 704273357 891374864 858745367 747713286 734503439 994920140 760529284 106657198 696805811 721006763 499983826 499880650 33139495 650793449 641991686 458693368 363244643 459184830 333280291 87144105 334253423 527054178 985141014 621124805 23090869 623050210 223820836 216941010 828379889 958912848 591038480 731520576 80861822 403552975 248925991 503694026 778753634 864547151 501597129 247381697 479097730 292539823 743701098 4692633 845231445 30185159 328647127 866398687 576605056 530873083 118164854 61491600 869271646 529207902 620867119 162435190 424329184 332743309 104765242 323416620 291778708 821740213 37648713 732501789 516580302 491540226 875237511 378553189 462190091 330354088 418017389 182038622 167171748 226537888 478884323 605391674 838857266 618789710 857870210 815899181 360572034 46652819 116510232 455323121 44407941 334660876 852689578 632199339 665724842 586926776 331462362 575155720 124244695 893266669 881759905 233177847 418050354 592235965 598733099 429471490 618362244 316836531 512901101 177141859 34718641 385746840 392666353 257758490 598432663 55579482 256938533 941156489 749876360 170528924 952700831 444598843 512216321 82428460 896965937 406466595 326993611 527095903 136414386 937583479 583217221 586704940 739780784 477722967 760521918 585720570 465150668 112584038 880624547 182896070 470494335 326739021 518739459 406994469 958365077 18384138 188127944 4359520 472146642 595553206 674358648 325254806 361782333 53363152 904547850 777638675 818252591 632703903 487560112 282933248 137952435 873743546 798400244 468414735 754641228 749005708 765589321 793871160 311579060 714816761 447600773 540663459 364069670 457996890 780410162 987776348 871631750 959808282 248541444 917511029 352978686 313424253 202959747 354111265 471607023 31724579 791602207 586707399 271983689 932775909 609137782 841665800 853602411 135563681 266747564 675169330 2069316 438690700 858815495 837881392 535220027 515634771 800844753 190948934 13547430 113878686 833705758 846364756 781746158 807752410 708975187 57101674 605477291 44950493 75000418 99962926 488909808 729754337 794259131 890017436 629077185 671324023 584210501 641396181 449881115 308852195 853098872 505783708 285520945 39503851 422707284 350544552 908489028 905064722 43921485 450028054 855474740 715102801 874158376 637381290 109177831 318876128 127350804 439164254 976215929 866904316 533533462 172431137 745293252 211091789 559072462 764662522 992814128 264485193 137487815 10368139 549873058 193906443 776492680 646537911 677151797 898232659 705327227 581627144 929495783 21609156 30128517 78793016 970154475 461237736 867625312 367778726 722112999 361907958 781846533 993124341 742939525 196303379 262502578 728811236 399742970 17173462 959133876 626079094 601243443 18652031 216873145 995605389 309291620 619007896 934753468 37758557 384229358 20747991 952082840 380517149 461595431 752897499 268066477 893050869 837757865 239397393 237976172 701701833 426722646 202972635 769505039 871479788 860283141 838190784 101688422 325750247 627540848 197241411 418231851 621785570 632692024 276259006 100671503 884072206 331229582 251388770 503006355 469308655 438633167 582019299 551065644 529912680 109806600 665896390 807543975 263069116 301067734 698522808 684344837 16089491 848521824 84216777 412766554 78339904 457259342 856625779 376754599 867199006 295630620 74206665 669705857 428948539 860628197 677840266 93850983 245823803 823853349 663035706 321994019 268955184 670931452 712193988 175308881 579903879 810336274 416082483 553844775 661026238 187752591 812883041 551395280 338234205 616348895 199096584 755856713 272664163 636791381 612587965 883496913 954455366 104108984 165447396 673806736 243568469 465763645 121407605 269549957 479335824 830875709 958597063 884862143 462786655 698878903 179023929 205146900 183153487 18175062 388940095 410857339 638684078 298161875 88287046 625594006 185368525 388247284 768450265 775167899 818063596 598043611 847578108 235420567 779185901 350567416 395468969 230999534 20071588 447100333 197344803 189647297 409731093 935890810 268275596 142675673 854559955 214614647 335247243 561876522 889270588 620156632 816906255 469522426 168404110 728520741 758027095 378075451 991942683 970133215 514494948 583773959 796971875 904932799 705341786 667703463 791879704 358240978 861832730 789051367 74126459 989800274 296291178 512642472 953297737 72933735 600699336 183223311 768831686 621159976 919707817 262665445 214933323 327964030 970418543 884057820 525320835 897708021 531678906 963443781 837763724 487220373 611351258 159145794 657024714 659316143 408332859 95394840 372752348 116016343 797979879 244477568 378775729 6685947 371592063 995464815 151381664 14251397 732133383 230765752 128169250 815383761 570630818 415538898 237155203 326698259 958977012 334767993 343856007 661198176 40112150 957298232 972370146 178698499 185583472 261117091 23829178 262411568 947519345 234066074 7501713 433806244 310758950 28729636 763479791 517254342 26362935 249438938 526942 229180013 948438251 265495654 281182569 779046534 435204898 749995002 305735767 60686372 680672348 957119759 711737499 954445608 407370984 421094038 803849499 963735505 147696021 211724572 890202767 27451745 193722658 313910775 55879676 44415733 16021112 721283643 327201130 281666548 15910188 616077989 681785667 755135771 479797172 74477451 541614313 872823580 675836184 142504138 131487917 211371548 980827112 156815312 279374488 420256815 326397365 622809807 526970564 309888222 996219194 111870980 419880758 372490387 553326157 457625068 422655993 331588533 537752446 343832629 696927904 979807105 853367289 649206914 89079446 789543386 366619050 758386456 390567890 278844878 581717294 639299028 177699806 909775869 58036153 186113697 835221140 266571272 207895597 650051208 822134861 61520388 882939286 571973125 28039246 810637995 358208956 253672015 748226830 565652588 233643306 759102614 226325864 463195621 330537475 367508157 852020320 375000893 200390964 199271822 264396592 618779416 774341577 941676574 324850916 999221451 96227394 727499736 220787645 195621747 644500833 381920119 839724210 382176747 362863701 347834051 555633444 657835783 39083378 70347263 823652094 485950463 559522585 227913393 373322194 348592581 448085234 802743894 673648743 367737273 771829759 71325530 631168954 88212337 781166284 125319317 595432100 671077466 518860017 717003305 784718874 44247974 387123699 117545895 219120942 28917073 643259627 884606786 524533588 817241494 829621839 191861711 870094538 738263759 967933187 489189026 103231377 215429650 664343692 83686233 750364370 163925428 375870047 881255710 585206598 923329021 647431696 28764589 131051873 698245408 825107511 557876839 6238683 763565250 661721545 258230584 577052360 209146028 197549629 663146250 46905620 716810614 679939960 249381591 306109224 462695623 887807705 575247112 528553571 727305840 421950030 866625923 657984459 597500550 467857400 176436867 344651175 513784208 901627470 488681321 46738549 508065061 974735815 679074127 234789628 509789979 482885709 509438040 312454521 987518918 679346559 846171966 819117521 440797366 651865571 237953266 189771712 563283897 867001127 810600154 122859938 51656655 234995177 124888222 12043687 381440058 936454614 786821962 886453873 319191588 173654299 453408324 17928704 100466815 586191063 911482405 197982343 82995491 358644789 448952791 329983668 166812050 284239197 602830353 952963083 558895338 254612726 155460069 127563897 59778508 547162844 968587949 160939205 120866596 577804 951754665 623459470 126229298 841786538 734532054 324404016 264787117 435790547 308673701 547057919 431993657 64308873 344104345 231311205 127261286 976541540 153122328 882189367 28540240 60157107 213710712 516437276 925595080 142896690 422493931 727086400 587538049 889845987 559345171 460037619 620145265 229632893 941962625 191367347 522353961 301171591 280030507 262809851 12375354 583214958 761161020 321656309 428528681 620125249 600553995 558737026 321916168 982315896 634567682 744109590 979812691 349548770 410359800 891651501 624442500 463544216 238068718 268543580 236284333 346411817 13132902 204783901 255011773 890141535 528867468 357950547 391644548 178089997 247983672 169401014 452410632 923415082 754230583 814041987 154805616 42052293 698615304 623932735 665518782 273160272 793773132 609768747 654642561 691957634 588542628 13880248 506985409 610202047 791018546 949833684 921658213 87545609 805848403 656583508 258471176 850965745 202574085 369032483 803237443 623644358 688201572 592726871 388896725 587471740 30351951 110504013 777118665 569269599 921146543 783829722 464463322 765891665 218141027 191056235 815379359 204412902 290572593 688815485 962769813 619940187 957236848 760343261 876950386 852172060 294423773 507985497 185553056 802673535 579650270 636563315 757914989 271151206 838876273 523418778 887914164 768180517 704130235 10469647 320308944 941932293 875363210 711580442 141905037 524023190 601966386 120918424 17165309 699980947 701471171 791030566 713660653 877094463 916289334 478272981 875276879 874119359 849250850 213361282 956265050 698556657 611658409 839726793 552696539 394478334 306421465 388711696 325126406 957823241 110241545 413787442 659815939 858392155 780139067 589304034 581528145 40946400 939155623 241860539 726801898 913387781 628516624 92692779 17711685 400347169 847819653 574506024 2165059 852329131 168007874 507972331 818067705 499835283 483547879 81885754 957949662 584342708 496486050 722262507 360232312 391600717 486222130 409084134 300590266 457380038 246468205 379959618 77505030 349324313 752719749 237405458 358397242 215346983 841080488 950295893 876015106 394818858 343055706 91729917 694837172 672062791 444398822 184657830 891622890 926122040 766472918 199994814 788377994 241112938 866690805 118151622 804696267 908750284 151832680 381432122 272925030 756079416 566636874 687359644 677109642 867894897 671022920 426100371 283660222 559045087 219503292 587520329 488964824 310152994 711934879 313890330 465504900 469156901 9062331 78224780 388330700 285976921 604321385 3542656 774598291 960908695 271660933 966914339 263339528 645989681 45723656 400648940 638164342 439795102 693501318 488652557 418943475 491146748 483199834 845385226 471268122 597020388 127200521 826783092 199971374 507769917 392975316 774505924 889303273 149568407 785968061 587696714 933721375 413755683 788143991 113293006 191505458 301494950 843345127 950589379 856781454 239549005 740773793 225070785 586326533 16170162 716575901 543185812 306357294 201639167 398347057 239352212 820072734 926235144 868684655 843496449 811369270 460672784 65200785 413526530 498141564 675060414 363787970 809994658 854840121 412895601 265678461 564114095 746038484 888393370 114946046 547731955 529293028 735423766 810406385 71517783 806623694 808099456 122676725 717243855 999015291 820139066 734285888 315677176 117789030 947734818 647068464 253013993 767928102 183336657 720103530 485450268 645111625 768436819 753238751 877896539 535500254 413268009 312569828 301225037 245938801 967653322 963533510 338889623 473088208 452866440 429127201 314843292 1722869 105216200 431200072 1015864 129028604 995754354 882390439 1553651 54890119 306120146 481366639 757412682 994742769 752688703 860130208 306085009 243525061 235511106 57401522 143694657 770860006 3670194 60573842 806713483 970591558 665803011 61397116 806550562 722218674 454951167 387110788 721969536 765272933 599248455 581562754 300888375 624776996 826700654 921961773 154981838 203105271 282991571 620208364 572938351 582487322 103401608 113200008 456673121 646503605 737606922 804566845 94856041 621598816 703980885 293399568 498712056 673772229 649738062 735073758 740892543 675344781 625483326 506241469 69307150 34242510 722645222 592361680 857822521 932811036 142000176 803560776 932481109 113454219 173665859 680219325 382817357 33845201 170988688 176925365 22326940 472141989 495546700 386003333 689700469 750622859 182738888 84962127 917954935 450791176 1677782 997796787 921635572 567990564 381151352 527998664 425424644 490170470 895830053 995087063 467364674 110202229 760978423 996066051 738112027 580355263 494898720 385904097 279997909 143951485 622255785 219538969 229534595 66705385 927412505 559354786 636893590 885919338 609863112 163546495 129773739 705402239 317197596 436350722 689873230 254201556 658199624 653207453 221321535 582232636 673084051 88604108 705115174 223594651 978771705 825104476 1662875 867950604 408512704 894002540 677851379 452912448 783908013 666792928 889330132 158789104 383910783 578941100 29859057 703830301 967543938 37672781 719632027 567236619 815236847 954616877 296392426 994115714 238767858 374675205 24945475 242481372 696366461 753218621 813606006 861207924 379089912 629858656 201447137 379696610 403422487 90512177 490559701 49183652 260004915 227253904 434405852 887426117 1571439 224977858 481564631 768642660 241539467 394619344 410140450 280581059 870101355 760952992 763481134 992323734 923018558 663361266 597585167 172413900 265453828 690682946 384718671 620325551 236582742 119397918 780682738 163085221 781426835 344159798 535747580 794565572 771025446 887615964 456144622 826990033 899772416 246159734 335421652 523331163 447765837 695727123 304394103 989212848 11195947 374445010 973254668 820795792 205021817 189948928 347330048 149994185 875398374 941490695 856641829 941107305 816178215 11805767 344223331 307621139 617042088 952524875 168582320 897405201 807625450 790551605 348495521 31872457 9618561 287931719 469850721 58928282 464525224 3110670 41285924 876776720 318769168 998089855 883808538 528366677 106026732 257608430 255749828 590319870 776735731 784957905 968066955 785082538 768266923 787997392 354401968 869573998 327910127 628054778 206191492 110070587 387580158 477153225 2154089 979502296 366301047 269772710 749472935 339106721 74481444 509272498 932964409 871312343 292622517 333035035 614307234 140120982 564217781 635658754 41921183 731143151 343020952 609740401 633393710 269656407 265545732 615070745 54567461 697551558 109487045 290763661 252280719 524925016 472664102 375429338 429621148 590625843 995881320 828790875 966822196 260729627 593855916 543933299 567933920 510472756 149926441 694981864 432680603 956842228 626314986 51130157 621434535 168767155 786805039 509204543 318137240 403289006 488231821 512023394 563225361 647835523 86566421 360829717 45414424 618675047 231696760 967228501 537709723 939194060 544020585 200856049 153333582 978964435 645219571 183603179 992125346 125749191 536883445 562002374 263223941 549955394 722119457 590251731 523578848 572474253 969954849 365695169 528327224 458201304 248495601 157345545 613475485 716595995 329542066 555680500 796732703 252582699 652464577 483221974 226660760 840276353 151398172 373513470 148193802 944987756 492945478 258404969 569271776 75364124 670275583 801195424 895162777 31737248 375819331 26334059 510600189 993023468 530128358 271825899 517007570 792712264 574800875 382421454 477323412 3856251 423238416 824929355 204341377 500330806 543778143 828172713 635874241 593382413 389509865 105397454 797642253 884897769 701096501 494370131 679195429 382476519 273564887 153615284 637791414 388670554 559585276 894376863 909538883 635011917 468700403 160832028 586452082 932309005 258691089 554883681 32278622 750386100 452899826 417475169 991822821 862299188 355211537 157035875 355884745 80534054 947993068 745891425 58685584 317081407 301530398 405962933 241732272 234969107 236229967 324572071 178450853 272177587 168903703 729765955 764891489 531996260 555492510 338548951 322651091 800860455 539672382 636210858 168581973 112758630 484226533 169447657 856593982 427299509 57086234 948153746 674622959 1285018 344394958 595374890 297141056 188712059 583429838 489043748 128655238 578218861 331218020 866113634 623462441 267217153 824187957 685855031 710297712 108781001 478548493 16731776 972665034 340132578 712490256 606699434 196778161 706667861 574065116 24896950 599118633 734230832 861444101 66171533 139084207 680009495 590811552 473533816 546194025 357188922 576595748 757860169 194645274 151851238 810045117 89383862 85651754 206379632 324346122 380037460 702698354 802538086 582573460 120308812 450580550 267731766 78362736 722452404 686410696 119945089 186982110 96749617 418189434 38211147 650504315 344297918 26681338 51101719 29431044 999000464 250731492 350872663 325419714 904614616 117002148 884973776 999129123 495758063 441209429 945826034 901786979 990688439 588968353 28530268 354064989 267386000 865253723 812210335 905981597 735393661 984462461 596475196 504982701 338135639 490827081 356683987 283064400 35659499 315939829 869933043 138732959 368925672 873613138 212627742 658145352 962278281 3751388 620342572 675093405 75728530 276366204 896603475 74381639 988380058 906530659 52915508 547864651 470680383 40003668 575394758 258280070 474796938 480013067 815247374 208266065 431721104 52883679 682745853 500124232 692620913 180573323 216520676 563086606 401196008 673367222 93954934 824090018 76646447 80840116 849082328 952882633 591472648 300853549 751585443 455485044 197121511 385971411 808395507 699589972 414580822 567610726 621479109 148858055 262616030 841298874 311179526 82526509 899995403 994827963 371443267 280258149 648483357 659930976 518791664 354276137 614510566 666354445 874773145 799646691 802767322 825148029 674655049 56875250 798129300 203372160 780191177 441552475 576050022 969460266 341145075 447419054 216333856 574419899 64842281 812466777 429448367 985266876 267678548 319865483 392376654 21847205 547163083 373274508 25627320 448522550 781940196 697158903 950653052 208575470 840703494 573019818 256764163 676208559 644288196 579010558 401751573 267394290 912528046 750594280 834252244 715005576 441882264 643953407 788051995 31240537 179583893 628808091 667901295 438131872 998514955 361122327 390337287 8575643 701120388 386509434 485426185 775084839 16869755 192102093 468464757 564347568 62492052 512909158 652622346 780212796 79239094 680160633 261935785 907619634 674358024 943285546 264184088 728750768 747959439 451324077 888406503 604737742 818393549 211293832 469741300 723456587 62467275 251926023 810356230 52691309 197485156 98281840 691612583 568394565 432612835 275298829 427596960 600147862 311090891 545708315 63165322 521707971 981089849 233190014 95149885 376917431 638409351 328723682 792262263 855490843 541579815 700200539 22703964 689693861 700343223 969184400 483234684 542689275 799293923 191979523 26650539 836821785 603004512 434471186 340520453 993818222 178028787 532929367 135471739 992107730 519889646 276740861 745732986 83047090 35901545 204551904 512612193 818254188 143053523 284601239 333833569 358365451 441338493 994817217 976290292 602314359 489614269 616257252 150403434 32036276 472094534 352127217 790667797 905931632 87073404 243466872 736185984 433128048 201486225 30086971 539050544 613327878 791160766 4329849 108523516 888687096 13960152 639690292 521318842 997728254 994826859 799541843 385296044 642589085 569380038 113702553 561709364 999575500 160824767 34963432 79380010 716920506 260095156 92948919 999235642 241338225 89455143 192318243 851421661 935043253 729024368 665023274 994317939 565274931 650890381 124387417 347276104 888012418 895421948 267335558 359368760 713640010 192299569 549016302 225386732 806165935 199530887 139138502 907102602 491110421 197630643 872186852 571156091 948911185 462209319 170480113 107399651 257606351 9069750 870618519 396273250 710564342 39409197 211106743 13524306 825475811 71497706 60498323 391872814 989174562 597994756 940687205 920755107 291375041 84052298 492086175 750528194 201319168 198938750 960875549 493239869 628737663 358736268 488072373 317029569 322072803 153763465 577989607 998141334 607974418 172739517 373026894 414116727 274678481 755326921 450794107 567389852 572570327 62089684 570524383 985655326 28901860 452392807 93526323 764657483 806861916 905457686 91618827 505932714 393591977 40159319 336558096 250258841 122183767 91717962 136578072 894579987 954174141 949027040 738405617 395629700 780435415 480891279 185369690 831676400 136501025 753293750 792823669 932731936 275198342 709170869 956792077 404605927 142432706 765452069 542830938 229394914 906292160 570538113 610709586 803416092 571303727 386433937 736288366 125592036 929057527 704463887 283626773 722211964 910343735 802261334 22463425 631325478 905557914 994756794 991945883 539172903 713759123 836337465 356167268 852471798 383821581 217075117 495677041 669661567 230752306 49426230 346882419 472715813 392709140 870568367 912731013 962463455 801589553 81043845 139668261 404423200 534088746 469060859 318498516 775680752 190837430 818734142 156170121 690091521 597914863 863146337 158778551 167168698 262914092 177475333 273666584 490280141 879094644 725051700 811191769 955642734 425289815 472881314 412426134 342165733 38064865 672963933 933946340 407087258 320665850 744971683 516360824 367352812 343801835 651699628 374126919 949933242 514772506 156772993 754559142 813152897 296143140 394683650 169473836 254287874 904498734 923078895 185658197 141772776 305529799 615385594 874212843 386374981 294285715 352462824 650359604 156266006 29831125 652003928 19436900 745177102 156976384 107984295 982692885 449581851 67084060 565761055 459613527 768502253 491140342 567680553 654021849 971895110 880094358 798672607 577652187 372538261 88144451 839622978 120475317 743592544 678883824 828769371 250199144 453156176 175021429 403661984 512736726 640976884 633536587 698648156 908977179 31466577 615457702 435038615 689433562 891215364 278609554 242925776 261054795 280090892 736093819 681923498 349514005 490005877 892817662 960931324 806761312 283794438 328616943 810786850 421507026 498326986 623799889 702636649 312287910 834797186 394097179 460804159 366406764 918330896 436637383 808505595 720998481 426090467 925570643 71676965 340013615 865769087 252529514 197261740 655401595 195590284 125861241 892139778 937120158 637902544 101747243 739645777 426059584 558708911 344282387 580275527 191092220 931300699 236257841 697941802 980366062 8625090 700424186 237850688 634903444 594878854 312304362 899987816 380326243 4389352 533811206 413317389 586661364 314767310 169358457 812298366 303925487 448655846 537231857 394786397 678320094 91271201 250781080 238494506 591015415 122276626 263941243 848494144 361060656 773126547 938291001 189236391 612657858 297997696 931318636 591439031 148445854 105810898 995658819 825553682 654993834 893891796 437029032 818154436 796567227 136340267 303561239 39722005 924909732 768937981 575429784 582997335 869907921 244271038 686610684 177468 659631967 109055596 197268443 637281112 341811882 996156554 429977783 297157922 635447260 409713746 575015037 842980327 850516604 721695064 817673519 615767574 947177467 160229503 767182557 272313029 408769631 124392773 445202337 194767893 691450239 190850352 882785164 151972698 892686658 566579572 185133851 893623730 219013119 325015193 505833011 709456222 467043206 393742905 381678653 563211017 275235310 196129970 794348759 568492222 654447440 201533142 706562000 155666494 453692912 882528066 993775695 511603239 473419162 254027164 913924924 368607149 308056744 926391539 291333561 631538357 472123599 613725449 372851427 554257701 284370611 194247037 162172059 558692388 233053374 157085475 878758078 522100103 196185511 205080112 885374844 479608169 429209420 29453269 342018581 701833053 163065703 414677293 862621293 986322586 968204124 621528186 148175639 435268449 875557560 628146293 790307590 932083462 863011334 126080197 986281258 460303576 524146018 601494501 33264208 980592528 399589812 579227161 527226189 635851567 368112749 733744583 546588180 792093751 400217265 528106729 539760978 319354092 789461944 248276890 639442389 581610401 854501031 759143088 121614141 118291620 866677169 339093546 163159268 471950322 743530497 802802827 253191664 151730789 293111688 573848324 195891584 271192200 681276029 751931733 420348438 518497480 434091445 879795630 835398848 486197188 26460373 643021664 612439608 949476936 770123926 232685171 212053214 395227861 896586219 626284209 211800240 847589396 932621197 222433781 899646083 58076396 141286440 201239692 88355420 864319394 840620303 114197055 791269342 878657664 761789970 919353003 649848862 16015794 62260940 65096421 64099576 429689422 307591124 572107169 804728463 552231294 194770610 869996826 189515036 4257153 250499710 374839031 153641406 51478118 156152557 816399996 880701468 992072757 384182526 522624114 924811289 930214615 921446791 35849343 548794768 658991249 821614118 404718329 234211571 949957895 362149250 586048679 353395907 307880607 927112463 134854583 796736779 463611414 771144162 629735982 936541006 864637715 902559106 468959551 199499988 203077193 432604754 655489489 679431397 432649488 17042184 223439239 569564488 580570667 168372365 151880101 538180043 165702798 95892095 444054278 219837026 550510833 341417868 624080260 165169648 339279728 29962788 397464657 459142533 257083521 275401980 774029082 149564083 343156467 377590467 597442962 108212000 67247990 601641558 380446255 482546485 430598151 817707911 306397882 395189591 260314842 722595739 850529931 108958471 908818455 81911921 922788323 230722213 183367101 623069919 444687517 42307022 874126087 539380237 283346265 727428027 944626952 750158583 590481808 395216175 240171131 219816249 402257207 170079739 155940028 491779501 443701578 204348107 665731140 100762970 978640440 398905761 864288177 434680833 285266533 559124492 343704168 880938596 91517577 102401776 365532411 941617042 719695899 492216504 53116212 73001110 674935217 762861814 356940309 753933798 668987209 497545200 338988462 553674049 580885802 208425371 873680322 659687000 89164763 547676349 933548383 79512729 277038657 626559502 198507098 20737004 172554512 821844390 979541267 611024582 341350953 331996055 549114135 827503038 604934966 991182836 337738173 401610810 614534610 306479113 796772710 148762184 372622998 755958085 695580657 739962301 66396810 973520495 701057978 68658416 620446739 173414446 224743025 221925334 137265533 539451712 823903163 313050077 673006807 40471008 653962131 259536891 404119175 188932166 927288407 172075209 791743210 110361741 541379058 934903418 355853046 951329173 698378945 333691940 398137366 349358594 953313655 980382802 674269165 441407275 652883929 109193052 767821916 649091590 262198858 476433039 613889165 819790192 903966524 74724153 45703827 202684732 558364581 537999070 867030140 174176164 779663263 706326402 328273906 24232379 35923997 999588186 611021597 520799203 19885721 501971956 826849668 351492062 466123374 255381966 724280707 176569945 695121615 519305323 717925543 785411741 363380739 407513736 438715568 712469332 956571788 4172279 424803632 828053426 453160487 503978069 996964085 166579466 27407205 298126531 866392159 162832386 792901617 640555941 169550195 975759074 193237294 611014336 995864280 627739386 27494434 662672706 361116832 973822905 340851797 228215987 469029039 691282374 282644660 546869934 931858890 779942354 919712466 760575867 888463349 939286155 343058613 492157149 452897178 918175434 458842739 174584580 723412867 762592688 576112311 820627468 833130605 785333202 697715811 371714441 910227505 332047851 466155461 140062099 339756070 836470 975008501 844932342 999066807 447931342 194368016 394614184 889596476 801745396 682730021 470141121 122910151 26628113 860699130 183673052 11094529 900148025 876655780 818407556 806413472 934193343 948496105 571777503 155545398 307345410 32225147 870305712 8751932 294469587 744607038 700264803 726329961 101902748 993610137 897286078 548495518 575074001 826033713 515597533 904992730 374455522 113177952 758521596 594002041 163317013 903090539 199249113 551495024 351750503 45657642 388862750 835126606 806516705 310494840 463104946 40461747 795219476 948706360 940552383 415190600 278225858 339415004 163960267 28067475 195417334 713112739 893995893 366618974 70027971 237009652 740232415 26610434 961095170 720737144 52778927 293757817 616739095 129143935 522532342 133830508 200285759 202076802 369535454 725324365 680131733 928963568 832486029 945444918 471477548 223268452 89009696 772360775 808488095 350106941 829599601 92031255 669457840 746670917 784086896 516475029 224224442 900356586 308623464 95067990 403530601 902386777 972117895 912247979 680959404 955136737 108031630 256247055 917045662 177612962 616772284 83957046 928387517 813361263 522107164 998368658 871280316 523975867 323834289 136962238 293306497 231190512 676580228 377889276 160004215 623261635 307269496 191597403 780707095 521420201 773055048 558523160 521684315 200825459 901960308 198270197 334116837 830414597 675376370 5669186 5713261 925485042 907173635 562227177 13002456 937152774 513315249 974473900 824601806 742423189 191927301 331994171 53592989 807213052 165624422 647557254 643688959 261189859 630157904 330425660 851847156 662438564 204191457 83790616 843915157 947162211 643828627 509983425 482812325 533662184 297464021 606834180 779802550 766356633 492452300 166286332 143593704 455004756 270262249 372886527 35090335 5678461 819589420 557984085 127184285 281207202 573758521 803982317 632985723 490697384 51250973 329716090 534292595 557400907 341091758 289377181 79683635 632248465 873510648 742025344 764626716 148352946 525261323 714951917 345533176 766265583 132670156 694778872 931610969 43878723 362981367 328439484 186249614 501199491 733870877 594469122 481630842 880644425 39417193 825146844 739264979 309849227 700846159 820799800 271717566 498050271 455349332 918199898 755223985 379305234 990100982 434850578 774760554 884441989 818124252 429507999 800284125 594579196 258774247 680047265 898357744 902390744 950648193 741575845 257859499 79094666 870291701 430707295 195113093 400467810 856744813 244255224 698296538 759259198 985550856 436305540 618315492 339063837 577965295 797224610 241918762 988017449 595211445 132571735 866473499 923326213 441904903 533332760 853082083 672986630 902062990 942455450 401867043 603108868 523491459 578448052 312542598 898121391 571913917 282422209 977941276 931720028 539340393 596080981 175316595 151610381 281845114 775301939 749815641 183971460 792163465 771610151 723964294 490591389 522200522 348489243 197876651 476670787 891737281 267414676 596076100 121404615 232873856 798506511 437391324 368550158 651985080 297881919 917899703 122526075 752791913 354789747 706797590 212832840 220530447 498512114 43362413 553477207 475135890 835924692 945597698 364769432 942050090 283946651 609077809 993166666 636090270 335467408 836606645 631280657 95073602 701246775 776944583 970714977 935791906 148339149 904914825 370124448 655297352 86613494 408325598 584844111 433742392 484674107 243766608 161588595 549448369 303783043 593694795 211286148 319750172 95665968 605674495 234621584 323344325 645227120 612915102 404793585 934717337 521176864 263748281 17789892 212986943 719579287 331097947 193789381 587938858 27586884 250389703 802712273 236180093 960060586 36664457 654051135 839127197 333255238 986225246 681581509 799523402 375102201 729743772 456911094 817907354 932932635 353778336 666999016 111017369 791205533 676267139 526245254 21297589 365596060 544876123 633984908 375229352 147267 268898028 351855204 947909696 23054148 715660669 77665587 997471046 664108208 819897866 877610836 659156570 727366773 598806358 361568142 351367609 341805454 930304151 525568548 266748931 684389391 278270629 159900683 242039043 610802948 678074369 193984818 729448132 193762364 812173150 125554333 989122681 800348369 132608091 466638858 992453207 196375242 907076473 201926798 358295307 643297944 631536512 200933267 560668393 474609199 528823937 111416943 201365280 282659440 112329049 576068301 816231679 502458217 97922643 451494810 998664260 181557097 826005771 230299440 89302757 753098237 132150840 728707657 28355203 878735176 161954105 506279025 960012203 837441657 155354254 114089456 262170105 903500275 353719229 338467156 269176778 624875014 281010156 497035093 434078246 418334212 536057381 127284981 79082776 963696331 746434847 400180261 897181844 296954167 344285314 303042049 415610716 482004107 122491641 170886862 63231363 351977265 161086887 586397452 59679374 79266598 882439059 768812622 528600513 973672418 735220065 942072446 863321926 372055010 586999787 23171654 422812643 79908631 735910835 874862674 811505401 747213250 501425840 645392044 568448112 101582957 322957226 489201398 790241387 648387497 880043209 887572023 667420021 365991561 171251461 50044153 918367374 856262845 633053257 362447207 178768903 876759422 69864877 181768055 520728455 738438657 551690280 972824581 807137975 962155454 480308156 864579198 368791998 498065626 480946912 256235211 909944623 686990178 389523556 443711852 524563028 952409095 933803294 872492725 738012726 357462222 607961425 622547049 334240712 870365755 374690935 125534099 26502358 206199468 947856056 70426419 410354896 548036766 457984788 748104811 560764123 317847940 215916447 493419386 746139514 918487763 182820256 212997241 694496263 806855760 643270679 670650927 160394064 314520414 991989128 473209535 789139202 590702549 980748283 389607363 733080774 264366304 793282487 522810572 143886676 85654738 276664614 58430529 95324166 14260348 370363061 945536949 362899746 666303243 86994353 625207373 522663088 122832519 661271352 137329365 791932905 570375018 555639611 437024050 614782571 21253223 433204253 643198747 856976470 83876817 417023495 509743200 722959834 235175911 382460318 389501030 874914546 459350247 666909521 499673175 448515347 468880293 226173879 499089102 85623354 482105699 611610795 964442394 381294 923967904 472257052 920567112 156864899 822492071 230766316 217867251 171923693 929645314 201058375 107040700 772258918 531426926 228761254 372175982 504448886 915901187 229691856 828523530 508085743 880779795 903953010 919511579 444065678 745818897 461638238 992528636 835316249 569608380 690020376 824538541 591871949 663540904 481335820 172847693 116507062 965600394 435537820 822713356 556143153 293518180 204794266 578188199 885555340 883406369 813591650 828330356 53035238 635091481 56263559 562919172 810118296 648034706 414536491 878724620 348117016 470183098 762675050 23583608 410476538 845947719 411499359 322349553 932113959 269501638 919093350 544765644 175124641 771561371 339574944 767767055 382731274 19231038 178129836 498213137 396540903 342976845 246702591 9237434 601163023 516876175 4388977 383551347 426378330 87948981 840595683 413902429 610649315 551575055 879937204 177309691 71206147 954787001 706077515 226014639 983842607 263319151 88368676 661054664 381187520 665771126 473700509 170948004 815462108 71359845 197713127 763379725 7617504 53432809 488598510 128143092 433679951 498549676 476801674 87865036 343133183 38361611 628342419 988723733 686066650 158666705 290473076 83602865 732822227 365165788 234729737 281632753 717672709 357433091 169711653 546409021 781921601 823438566 977436858 462395078 53532150 728329988 380587856 93672038 982879655 740940597 977434215 926877321 928212427 685678587 580258185 93789306 408099409 962828873 720378991 49654036 977332214 769917116 908891178 70858222 600885060 322997377 199407189 263975637 658017862 765477875 654005697 69300208 953266166 803060362 275621649 655978496 422406995 511507856 674049584 77586363 797728763 890675320 221842271 604613934 647567615 282136380 889488606 580435640 129872606 556925508 609877969 729606766 999392467 507343295 843128226 636363710 998936599 103494004 20405055 389721450 730360798 238492885 918706294 334189425 821425269 21801739 251643551 41142512 265605572 114434477 366678631 871015339 940850410 847870342 830638353 625394380 215263527 998167797 823162346 41911957 185641442 525197933 174030300 502435430 28766966 535353819 405718546 394986535 298416266 198072183 103060323 459279499 570699740 559555770 749380097 805187459 148642826 598212034 443499515 550152795 510654511 212521522 427748492 171160451 821496283 612793703 657179070 697943162 757233782 334039911 406749385 892542632 827466853 162600469 128995387 375868601 945112947 814907456 38551368 55147113 701337845 607501411 777683840 982799284 981027773 213060641 54335048 999296276 987861289 662053424 431387574 64048808 886554472 439217483 566003856 184335903 792403888 651902108 737085012 43646245 344304099 181125111 952796036 617940625 580151863 871996105 680664058 339801401 837302408 810217132 598427307 186156053 741555640 704709021 296577568 198107180 109833729 483752080 512663690 612905411 627454135 754799182 309748130 294138185 935393050 780506049 852474846 236646094 310020695 62343941 248156908 490914888 599594388 966160914 868016993 69451341 866171910 447640325 690605917 876632570 931385719 97396603 518434564 780698341 533240916 595479317 820851584 58514436 843810314 490945735 156933020 335709143 237718390 790584394 575502842 905128888 800790681 978802918 880582768 795338576 40681134 988806482 70122721 54440672 267734397 776812495 562036047 277731146 687281344 565084329 948839192 889951360 456798065 652782923 155297318 422608384 197568927 488161197 481171236 653878733 897409000 398181489 242191984 978544099 74921525 86046710 276378593 967409580 426602466 162859594 251141015 604063368 80726856 557814040 322473694 434217104 597938904 470609245 268542017 920349303 784966797 699293808 570069114 718299259 476811967 452763458 297560857 689690887 368556056 42799949 25369545 745453353 748914469 436317950 187085988 494663046 308639896 724974133 529523887 304713269 833353006 751435901 235149260 360676491 917989490 200385161 495204014 894463406 633023636 370185017 480111073 232970431 103551369 268170275 761682938 14193347 94849678 91032946 245477982 210906270 261329482 954006962 350507834 363034810 450058598 49851793 925413145 446079195 375808237 563213344 959894443 177725601 362523930 703762290 963726632 408555854 541770737 440386015 686486776 393656702 316613260 869975811 455416844 877531720 128328650 614915535 859685449 539210167 27110948 58734306 771062508 916163408 949098148 378408837 41380896 917024133 278086717 691505361 108212279 382241466 134277080 913097108 71616600 740131912 733573734 315500664 637057803 414978978 589501294 389821387 772819953 939570013 136448829 737921789 985751065 89174837 875162501 640583855 612389530 372919684 992281805 83043060 878447241 599805520 48854597 371022688 860634953 901250823 427384421 307133735 429965339 432022402 918298564 650675472 568423777 947744369 217389298 36238143 79160777 938100794 356972022 115978370 403172927 388986676 452652444 799794121 87957212 930609173 248613504 987374316 174168578 646718748 593708082 177564029 611689760 54227400 609411436 613571973 346190772 98100193 891312455 942095997 634223911 668437938 775017745 344476046 908150673 544634207 46235568 811842439 938659859 41764469 517840503 697448012 602011334 684036314 416990646 49539729 299842702 72456111 575596594 742241637 914787617 264916388 592110580 705668217 992820409 283906119 765752845 544978056 935945194 532293963 267303535 941317339 790486584 324609794 420014379 983486721 695553135 186101850 878409378 819106011 348719322 677076398 154457455 368281439 825406071 240562759 589537470 416402355 919339553 947754584 49495812 943359036 731457633 211545214 769633491 625267620 87524247 669707958 11287104 904464242 50578061 234045437 419998422 729967046 53087593 678901118 194461518 653278342 484013795 472922690 829915145 678932907 183962858 506722108 856098061 389690202 143058645 618685868 745405010 360934972 832171437 210834500 938061777 865116045 263913292 81720899 151057195 689133480 466074697 77110991 450029177 892506069 255074495 535109814 561400781 96230043 623261094 368870880 567611300 509518041 703003350 212295314 475948376 739370665 976188706 917966009 443697394 326456496 286709853 913706781 754116630 589361378 479978225 423001675 886178670 941395694 254883380 235118566 535279190 414881250 130058154 344851116 582003051 186824737 40682936 778840460 539223394 978791253 344690324 756637962 894385577 530332888 808496651 772892540 580928952 590620605 157283465 203123286 106779767 48028130 588011443 646970548 5578907 261417438 969548655 10689901 353396203 716931023 37076283 935325742 399285404 849073513 89053121 602264452 564684242 313633285 603988842 151258861 351656936 994957031 398997965 831917801 65643213 780481760 568687607 971117893 205231327 918338275 866004731 669194847 474335474 251261220 329021866 756223029 167857906 209409201 220173596 606887799 9062426 674810702 51406353 875237238 178931878 569761041 326995874 125864207 173392083 553962508 557851072 260509844 97177526 24741472 106429902 909827984 730460825 446067473 452380806 50838211 518116022 361042002 459273571 60981394 604346514 795974433 770790622 892084613 115347528 2162611 466841231 375330207 196806040 677945741 308680365 562083946 796183237 949483770 482452305 185243259 568190012 547981274 869738485 115720799 447822426 335797526 717383648 409120875 440896365 382460387 112456080 683669539 594727087 142073229 801411428 585239355 451601397 571356447 133212038 446042131 58864203 334346842 697412102 305836148 836793042 335686873 782726373 356533896 692546999 594704856 984034302 440086427 422517315 944904236 222594141 296944895 579846926 470997752 840387058 929490505 741122582 381703669 447386552 626425882 328773446 470322456 313551607 706430454 323621009 378902648 499282212 29144483 845397049 650677853 395881422 619631053 151706295 442833447 927104185 624106142 215063423 75186777 865551427 66459805 912176912 400481256 594480798 806791206 849546847 358165121 980002153 995875278 246785337 504650150 796483073 710308742 364356531 571980463 992059634 315729216 763331801 673249627 451095511 456843890 337341397 164140802 985156855 848374379 162157375 159269949 187195406 663383142 86073622 205064435 464025530 312628330 648457866 654802796 287801815 515787039 349657105 667188209 68741640 490962020 980040981 616844312 131697972 97187539 716786342 71449432 691228042 75192115 389199516 74966035 503803276 405312551 155126381 613455854 891710660 115337691 705972100 633089352 214861891 540801573 207239595 365558158 907325936 756242394 321532011 488122346 601358921 548415432 179939606 519007021 89974212 190228001 539113002 732682897 775337511 338425453 250774903 26472631 587531253 915519134 965203104 171086432 160521216 639536784 868098690 676681475 698909898 647720450 509933460 236856932 45219412 432085853 712621162 217176205 590698369 786185216 828414203 429469977 668133175 177751849 42088330 364179861 413307169 191385923 794612848 812706991 868392742 877934469 898203359 871078426 477024145 494237030 300981724 60430830 32686372 85591555 400569434 963552808 324110591 577797193 703267104 68080843 10908191 659836806 801305184 732833898 613457871 617112413 908385816 762698511 834026347 895156613 291156438 893019453 577729157 585521741 612670782 192519587 369396119 360867251 788535303 276298025 551105411 833516197 477019279 373037216 329865623 886369954 692688076 379633722 574440150 919290673 998977352 886082658 531225077 956420549 346253458 339328594 46132606 705389449 285908927 678912904 646869679 154463070 584090312 739513292 795495050 738780173 27510872 448199495 466233721 193088074 826093945 962147320 247310625 630434832 401474664 932525324 54180978 196384126 717841073 510282285 310983556 690785551 387378178 160705872 651021268 928295494 167449256 562162356 859981024 852806092 993111379 330173845 665734265 345896255 330349736 352529118 292876299 519431971 728739324 884573123 794354189 171011333 193919435 463040201 567556616 275189208 155911008 767565111 469674247 90647756 389325071 572019195 608008192 254119904 927012316 845374014 296578676 81457965 986119635 888899812 270372123 17049833 5583672 604923334 385413672 508885148 699710072 740237529 698597592 404962586 857125727 507891549 36870812 332827012 314453954 147464967 960213603 989346874 205722770 441216925 799278263 426179313 684098501 114086022 57800509 490477918 649639359 365513651 535067023 426686129 55921407 225656509 903086800 995447860 681455358 48673997 164047249 393187979 723206106 47119324 267288334 22011155 724089560 192668623 478514035 843168467 339027834 357794904 334560492 91282875 35611358 488809427 77599393 319663397 716873972 379108459 494759010 872817679 879176981 177844372 242478813 659654154 198906929 461642031 324868777 498304001 753461944 832297995 655097392 23915769 404704981 767254959 646576898 822979267 537804683 705132578 508874823 497677267 209627017 820983896 433115104 327385338 400381914 89178406 5347851 923848609 207695583 300320657 507050104 918759942 842101145 981429783 339068236 914311113 138356829 12980884 277117471 24140108 4667436 129046013 522922831 115844934 375982743 399947736 597534401 80632069 610332929 53583893 677346393 140079867 927804977 64941418 421526366 711570835 506047121 127639506 263932245 124883435 9676351 231268036 812507825 839597627 11019559 231706914 319392815 760844026 695051021 727057230 447220931 591047084 348520479 832627262 124591436 166395382 236741951 149854117 400992231 398757773 544272836 829631434 413231237 261774095 203858279 939325271 455930281 247662250 700412790 154657427 540854852 446185836 254296965 832021281 197359775 858713200 340085632 864471061 310880698 311354679 868653701 936479620 332748311 941391044 19138095 59919896 685188801 349954805 116175979 718464036 159036678 364428655 11815275 682284623 940740775 346349015 570137164 398359741 148885068 870576451 329774985 352997308 692551957 456867237 365318773 337217640 611609456 858821839 337683180 937456479 602933447 68187004 782197185 179655782 672954028 382700204 75964601 804078172 998489497 993949531 470081356 568712274 544084823 330701534 652935973 817043901 162680748 541389915 276835659 171074491 955689857 500763202 536732439 168666511 97801533 957591221 953594147 752494553 223145519 557477597 687866201 873958704 830762448 193947841 991519395 987677287 3866450 391282439 274538397 196951106 313626769 765202954 485588674 975760508 613677319 936305095 662418905 746476291 454839171 204475097 865661738 931589583 330069833 34249966 534451641 192636214 914637658 270401232 352565049 675327455 652043500 471882473 47126672 65456240 114071453 276432153 907285622 324339220 523907703 543573850 744567293 676189818 461942364 896516081 366273386 658851217 935814194 318209805 894059633 410525532 335932816 842041835 864172426 966732246 905290206 446294501 127727585 411300967 727254928 198178987 372594988 974729945 908136008 486585322 808572650 922401068 218098168 906525814 58040366 108515671 353786497 727088410 520886813 327860453 432364684 327265263 118141425 781184498 872279074 460653002 662074762 982047104 171877404 859880769 9256844 969719607 261403386 224870995 413976043 69424066 799539268 223603278 284590518 108422845 297202428 637552169 212973222 32706065 10359996 353954770 103139564 381934585 561479036 328225293 864441879 502229573 511498134 215701659 265002561 652474545 874840950 310222794 746514468 819061406 516359872 806999172 529446307 525870411 155666761 744062508 433412965 227551396 429534790 977628395 69819250 229984454 196224561 866502393 354572223 441356502 371195027 696700485 897801103 170693807 657933388 613586085 958440567 644875104 57914027 7557256 374315440 705758815 400673810 380095192 817720281 643468453 664654404 251634718 829944814 655024967 860918138 602166919 648740657 628121867 664747555 445496468 334986211 34062261 173507524 263666624 897565020 95485991 14300014 617585011 854050411 692612658 409117119 679366439 656518290 582860231 309448233 715191482 417754240 494338907 872562377 286781561 393331784 761654056 145284797 574805155 751623170 539704427 569437562 644120048 425223854 118612190 619453655 683866273 342331399 862200517 824257 311030488 418235472 487981533 2346743 392668733 472947437 798697500 970378943 841126151 290385279 599120087 442643971 695883819 440624697 956167431 563978989 758019459 26684525 42650770 984550591 461999972 705233366 2349813 858761585 215130631 751997306 650069130 494690241 973858094 189191872 197683800 71157449 512511447 796450772 836246021 33634437 965034209 528986993 477756366 222630521 115652399 359609147 267730545 18660392 126012768 669737546 611834829 902660733 526010116 625264250 755400520 99388175 502659447 456081683 759759552 658747445 574229532 374755314 578142093 929117534 900105620 627517567 989569015 470192119 751657940 233541280 544441891 259770175 563505983 956833475 541143079 834398484 776042313 604856934 355098228 880325459 278366426 830830024 236864228 985420560 361892049 113033553 934961511 415903563 100218554 894757314 414184198 638200206 530308772 900793805 348213198 856874620 156417239 311185400 982150539 156688625 386078980 941571229 118674577 19209926 767687408 682180017 343687944 859284043 866621620 59870278 302366520 865520172 555309661 485307815 710150650 431154267 519448088 733544059 95450580 431454219 485319444 370880542 596408267 845874317 530809430 101748957 857717092 539313179 599743430 819333559 103862042 738323637 395725664 429520712 66440790 562887763 993812707 40362044 227890178 230976612 741014689 441973367 793830029 361739041 754451521 86030526 684405046 36581425 52506241 961231387 406715182 572943894 56747498 538787608 216832004 742455632 995663008 361989781 440765340 516554843 201222878 153778870 337618560 108640448 461429409 583609550 643853241 867128582 28724775 878691386 881142007 661978216 912217219 392932662 10084762 176422431 970611290 318474893 97768726 599056792 661103727 293531180 915704242 886563166 570845255 981822781 437924433 490572230 829778667 277781953 558249947 22784279 96963191 327142700 794757453 131425419 259785850 362137902 616182105 751558874 780826949 592406199 483962963 668255805 876748528 592845907 394903557 35610877 444125464 444150230 583614653 806408766 105476836 356060434 777354132 412022921 287566098 12471408 878388584 160791005 450687862 716435970 649956089 478271993 709820049 448961749 967727381 550668004 321353912 700247311 767375858 433274079 719271867 203955924 672065978 775672980 843945309 338025528 57794134 978723180 94645462 792289895 399142327 4463922 603979919 45049019 98729392 133987827 253093155 542462613 245141274 159632923 318789519 328254797 157845845 48997175 279639443 847290134 591020776 430033045 740372319 112339451 603940096 27724087 119485600 560163992 88276632 825899910 694780123 241037177 28195753 544320651 866728553 123285277 669525564 118386884 564913937 470508718 868675751 540498863 162272552 767863319 151752758 181076987 834748048 956787930 848083438 805352891 488419830 347048800 926821050 604647033 781714615 233621801 818749570 899556533 521463123 526617902 575574228 620558724 773522302 326208407 156932940 261947088 903516186 33495839 166847715 40751187 299816746 640139319 871171735 734653574 133556021 948966667 313708418 813048024 384812682 651952688 64541884 718104321 169924314 353380211 10232102 867145180 317500511 710594141 144078070 180758650 594605024 925777365 183965795 76735493 733474013 87695817 172160869 879356488 734623648 825079066 176581942 546591927 742625986 966550970 571820849 545718912 518913607 501151676 64138176 841337373 650464233 994729735 122414820 701845204 259430863 393711390 976361417 936808958 586323719 18174309 643270454 524028277 150080598 937035872 771770880 993481939 317948777 477767844 238644561 366447685 12961587 624840881 672325924 990994508 563715594 152572780 399111577 347019065 166001435 483758471 735696347 691889126 547820166 905244440 884129880 758821989 348045370 170347575 208974436 856406108 258506125 245182738 486150494 307252316 776062122 888031872 710829703 397743936 32674004 698614813 353462447 777894842 631320292 462663881 174988996 54103324 545734692 529236467 859392880 51691796 511714607 856746156 362233736 942781177 291767538 780927263 963886788 851840171 191056822 119197895 881566001 628554447 104766573 536195015 623936109 917547391 112922705 195045695 296505673 750813313 684764347 304593310 232384918 635738233 574442080 131388855 689349111 878615460 494806245 123060982 29454600 427963786 758866169 502552273 584076927 854393315 787272831 516860325 771289882 349441199 505692378 963848983 926444609 394964054 814398328 646215209 690898541 764871863 986062120 650068529 550751493 197965670 427104152 29609990 912076633 909977738 696650565 595797876 969392217 884035084 225066426 94431083 114612872 294779872 335685041 832470326 399182780 906022422 521846250 552852138 519942827 504543632 718071474 533780359 582954414 685919236 128824236 815358560 849067680 86411016 848841090 904741770 994269032 831541267 146818043 104287902 343097616 611232600 210034713 765454492 119950604 940682232 914472907 314499243 728598153 724649466 683497816 286643083 934612559 606212670 300665718 258905577 779535327 719472552 952849720 42797181 752961740 697568913 503255810 270532962 417226631 684676801 450925905 197903933 464183349 463582715 69308110 240018271 781568265 617381806 823162448 738305962 461324555 338338484 450247891 462572129 512852971 331907586 665047581 60321986 436064892 754707124 929933542 350891372 290849555 346648333 901194392 779680796 205452973 931885982 529820516 66458075 900358402 248767524 445915455 588228785 100960737 862707342 436566664 980774440 489611032 696302402 893985014 753773456 492702697 142944525 931120385 869958448 193941054 627194539 970811005 995274848 504700163 742004701 419661221 723151104 925494343 362583138 813852306 77673966 83576811 926503435 139740306 46831511 757250162 179456509 173227284 405831151 677384589 971427551 814226643 450369253 999118245 192598074 348747357 412696367 515928706 393999603 537684641 483563216 138051157 224537150 422460404 569494684 742809476 530145681 469403922 15601485 286656000 290202992 591114871 101114455 813962339 596972874 836058323 125556540 448831105 240578146 670708089 434142952 264668654 811579990 51712094 761307661 76021731 479704723 869353628 882777056 907561095 744003666 347238390 276779502 146959351 230743985 606062522 834899033 862268838 316169073 142669467 5509375 848755932 447411529 311032758 877351423 239703801 716447141 909161941 286082572 214611429 406023622 613993351 62836782 720633021 938327671 125422079 426083108 915350188 866080392 236668666 673668761 72010392 968918660 851756642 673054409 694332303 232900468 339370854 509705486 743698721 666494105 821022231 341400279 871778904 696899404 96415471 463502650 41761752 336904284 823975559 793063371 90627193 57209389 134060191 856131878 413951425 960080286 873956127 58764706 299052059 672217128 19794625 95899252 679198167 804541596 829157759 129376914 533174038 768164562 654787221 599447554 26638109 414904398 594691596 191398070 943839422 259472150 777088454 270917355 192515725 231355852 680591923 71601956 312708824 944447374 768361707 65962862 160819335 812225562 537653481 348542721 605213081 817808947 471739106 907832659 356320276 944549567 669648046 444409282 764803284 767674875 490727862 266801341 178556119 813971275 246626398 347084757 483889046 844536282 312657899 76265920 84957877 163470993 946431448 881155457 652502832 131357424 585478344 576515624 478006191 582629747 904675607 988555548 273057510 843122929 778459738 844484373 837568764 334633197 308046966 694396396 498879452 682438096 822469780 288633924 80067055 303724336 97720257 753529084 664497853 271343639 806880464 946430671 566823590 543630911 501341023 678778411 288013668 75332408 854608580 509859232 458425674 152504389 613966703 730861683 591593093 462157860 669101673 465359335 612241588 741231934 696548978 200220908 273730068 238368440 808243817 487140412 545076986 142866118 123142884 544698089 368056485 503672776 400519557 391269217 293020327 265864573 756681837 843551410 465773224 589287956 629538361 37524489 249521989 63731773 217899075 125376685 187352051 727229758 800370079 723021223 733362252 663844150 134079267 144878045 903507475 90801636 14455755 74931141 333120395 575174095 206130955 793601308 50185623 860562071 562613358 29062003 79781727 55626377 364489447 441562645 683940650 308807354 875522889 770197910 944911987 514129928 599551701 540325127 640373264 89049330 461465382 163822998 993332845 478201245 175660152 71855817 694823482 930340036 707738983 874743288 29652720 268211031 468378113 912080912 556478557 35764156 995998971 39716991 219251753 450600931 964547901 49709961 799002711 970723726 375366551 465296189 318206858 155342793 907629893 1058010 676713366 39621255 815816939 424865248 235079217 694768705 155710959 729290275 272098129 684543351 863776594 347125143 979602581 382100299 659759803 158728395 806461487 931255459 325561276 562941203 934768869 958631449 15742453 850269780 820027815 702731835 827242672 680671819 282500993 107746806 862818060 250256741 970928788 427835878 914477983 618390998 152844034 433279390 909880930 793733948 276881007 801269297 355602135 309827255 496838366 420374122 815959691 520599681 913125026 394749682 869188201 42053166 109728571 703973582 182429608 622964602 925110593 141223084 159699267 358860252 505623510 58664014 886645226 341259761 579497905 316948844 734155413 810186532 241322633 934369614 960436954 531941987 916712937 710954923 68933035 201216708 197059349 737178572 418784794 341199586 919772258 314837500 548153486 188202408 879073862 822853100 615839587 3892825 792950040 500736836 98764980 324936747 342632393 959121488 123764916 366364224 973295983 287738925 938174021 51369483 784133377 78240048 952804267 563009247 337353415 365698391 972653848 694924435 302918351 35807791 104710401 864388466 95610344 388762936 846786766 534937252 323811856 147486428 924657651 529902840 719266282 928316647 922613272 3091492 88663826 18195123 321212283 650912778 961095238 47896633 564726908 486495502 625941719 902967117 874146184 229032919 156128996 667190504 162985875 644540817 806532346 342509191 742656057 615235402 59980603 896311713 350770712 997323094 932368400 718810927 407677598 998016280 669452121 197386920 599842781 394617005 906738502 145640351 718588292 102639400 509268476 533400942 426436828 75131969 368235479 193643169 620323818 954990120 92249813 214612939 825844854 322298100 544467686 83359984 436803860 733686262 134784367 976311434 968800793 370489058 494356795 249382208 9115836 753405171 282582446 275085121 316520290 611173767 638972137 774582095 56272301 932450653 620506769 510889799 716788353 224318692 253390396 56208010 894604536 298213118 601993073 298360077 547925089 138877258 402819516 346705116 13310290 620762690 395764399 55835077 839300491 685903148 277766390 796325053 882727678 527938849 96181556 294213494 880923338 182556382 432557556 888594121 160559626 801109241 889205016 928409120 174320424 259875002 426824924 117340764 305286452 599573051 251489048 155406245 957412877 169351822 285047067 31555417 174693455 423397105 47872630 842049795 784526428 924945275 817850520 541456154 54458727 637996654 795797236 242937218 870867714 207956431 391837370 928727984 145762965 233162190 583309855 48540884 626203935 780494429 739277402 193864073 36086579 675341864 922602189 936726489 292517978 349968274 761531167 692412360 798304532 57406677 916640539 446822157 421076970 477980807 431644246 302099790 445187466 661412053 399026433 921492241 978687973 402934671 422742573 116852427 150092918 128105409 278551962 757992560 321922783 553836141 341093618 773839752 753820897 407902521 294085460 895378140 119388985 526217405 93278131 519901210 40236590 779685624 493003211 111166369 751811830 229602516 477690415 464935786 775534609 161098692 848851831 579441808 153933209 235545159 715983567 861575950 854096329 144607376 82212026 668989165 654203408 362445512 803614254 267231682 227215045 272035793 495094476 860800406 907800166 514762362 544748538 784183536 392440084 287678937 888014544 126755019 722879719 252991342 156235356 506826563 226346816 387482684 225266230 487284845 833085896 176737295 484838828 854386433 472120276 304577282 126009290 936746190 892119528 582675180 446726701 756284434 671925406 577572644 404075995 585066442 314143131 265551122 221091537 97712548 343257805 113308732 441953151 774128409 372169695 331845235 684258804 196699156 434630998 768848735 540216955 675388931 758179899 461769109 199479007 251940205 518972986 360148988 61275815 231633859 820333033 98255858 728014678 212178850 339001541 276083269 874400327 615798509 786008566 792428521 940141423 868299937 66262976 182931554 469553246 319725559 892022663 754819840 507044874 876334989 486270789 327082549 981989505 702427887 909415294 265889580 575131101 53976317 606316681 781103463 194605238 424864853 384849136 687281102 796201035 418961473 823309920 351006642 903326308 271818311 274267101 59930254 111098790 472574087 176380197 447357182 278191618 181896201 211132639 841285175 737102061 326047501 840573457 393018284 266288781 367922485 654630293 761652969 456284206 970586674 388621366 305940771 363305512 158884801 353413659 658417152 771580798 859208190 648378947 605271159 663315914 346459234 512427496 416334829 681156853 576554773 849558769 571478549 754083324 266636602 402463361 935020972 988122921 365159507 443858237 237930774 288271669 403916578 998214142 788957491 407078093 313275280 305013006 978898242 472971246 490538404 855068618 556666163 942677039 868062770 231483397 344972580 364795544 13027038 816042569 952401074 677870086 628520175 153357774 279820986 282891823 400469827 189563611 795900768 150639050 928953104 365248371 127991078 148156089 975586372 261645024 227946274 803894194 40728135 460952269 877184372 699567770 437626117 733174081 101288977 923389033 14882102 462621041 345536930 126510478 730966371 713904363 12128263 584642065 174071618 660064898 814473354 276360862 11145120 833461852 881081779 98701087 482511065 191351989 313384454 406498377 427825732 474740985 459879692 759814673 378639224 246377442 333251083 912090174 639725246 766104338 344577204 215572896 712659430 708706016 184858727 54042533 577791199 311244858 718207924 240101133 413338053 908423638 392721609 433461848 451684712 90271875 975342405 491421377 43638918 763332786 638401078 452535995 137907601 774872163 424450141 143490401 568044354 422804872 215318718 919996911 628781152 793985511 187520977 333916461 21591086 578161692 868524491 216768802 335897930 954189103 445595999 126147145 287394273 406635127 254979506 577476383 163105872 27625190 914332684 826213802 791916047 735652285 302049133 900000597 450179801 377196814 900211736 987191679 524483765 185614073 118696052 508696569 27351339 984757803 811975676 176380570 305288260 715591271 199284805 866751410 826943224 101941555 312422088 817254264 156249949 739042488 39579145 528389675 122038893 454468774 180025122 896733325 625721649 142140526 624167095 988287600 345683075 680413886 227535609 68961640 810922270 367133111 905311513 493532034 878567522 358795993 745543832 74112603 106689417 105813199 639891143 504613065 925498208 860341268 59915874 162067383 513059131 83613034 219317129 944984468 398989585 423758214 339644500 868944692 398130134 413115450 261962697 217050973 676056400 395887292 10844110 684179007 899030604 120326049 421786979 652772244 466846787 543629984 252811317 221509055 590091584 782511310 537921489 608322215 273872111 322577726 646320610 256871610 729046242 318590412 716242247 419806286 483234260 984859811 552156857 197900260 883348574 521198961 727944130 767687916 517678620 404836553 874507096 141959397 424844386 239293646 157334331 644933988 783365103 906281093 409899120 198415045 988812702 263077571 812211288 512258445 945413810 816785601 592872716 808176227 967435079 81400450 90044643 98253845 136146606 964391417 859582348 810511884 60965577 410032216 384442170 67951889 367864564 522891738 268830392 384702507 238805621 367391865 114264016 783212357 535085745 546486349 399600634 103428371 83790921 587819093 409032828 280228237 307539669 353933281 327664687 457499559 568934875 590398211 43051805 501156358 903523896 332783465 509245373 390101482 306091599 655049506 96671105 358091001 86650014 651594298 912777430 151989196 688857717 3803946 496302181 789746840 539429233 684603064 436312780 80844037 15776826 691991841 939887517 516890243 928817125 372368842 765426243 524894280 938681859 432273942 199773671 627971722 790399157 200455307 666312818 794948038 630213776 509661857 600950863 68216404 220736960 549351457 235058188 635511263 675468811 12259577 151645769 1003847 693140872 553337941 731546483 956467365 622483450 322012113 598491869 591315673 751032160 497087499 217045219 731108393 161359098 252877393 9486824 358770684 656505076 470939365 24143194 726753557 464004879 803456395 447339031 888848345 612229629 66852480 375146558 929000759 790659305 95042809 259786729 537416714 469322642 494621303 226068914 324843174 863574958 748573035 94729779 810911162 182336947 414268229 814112792 933873215 822913349 552155656 223784457 288747652 215497260 907713151 932031832 699220520 352921180 889219169 80330829 414223110 162425474 288789303 606660251 901282766 673537752 520000240 684694951 992443914 529133086 544179138 679347285 790152627 392888983 815541781 454156426 746645521 903017129 346822231 130194748 413010914 333139683 739656018 334536545 384020098 907608552 159529200 856067915 865828504 702301307 526594584 49813865 796124211 735665634 47507014 532614861 557534763 494993680 735166418 929670406 758684783 503647719 421112397 231710759 370964029 458811723 700178429 676864465 787683399 60660014 792696539 32664084 11258854 87988572 881631573 958089638 531311847 733350137 383011833 382818245 855297060 596526948 434755149 735877030 480693297 311461777 437310301 209966418 957793041 756430997 660072555 364912827 311345012 595041028 390467229 180599805 296598643 893591992 86726057 437813879 656559984 107216347 436235856 935138915 471485728 948576263 437410932 344436046 510403513 309606869 167114413 682264855 65676488 679117570 754232905 379307841 788692421 816918092 320800994 144079878 862970104 404644263 214691710 301546968 710341030 819313928 123695704 258981735 728014771 200975772 650402304 810240326 127352088 937765322 356291694 306944831 545578732 870062316 486727311 883578698 109634683 240923429 236610862 14457071 757403760 284194051 754059035 780898774 814497580 534747888 178909146 168697109 531835340 357005431 275433048 686880595 710215859 840894714 165124994 859592363 953622600 826741111 455341667 254667622 10069994 207550534 977788813 208934431 800414687 521547019 180002271 897268920 857531604 763765425 590220269 333328643 919239453 334606223 693809914 339692284 980686234 877979663 729410564 563664799 157250306 131618738 48337945 665441175 769658999 927186161 490872162 698704016 908544906 187654529 832540494 477296995 855548461 241085115 67475942 697696764 586496324 356380186 620719591 710619326 97049275 398644573 915293931 998436881 716984178 707071777 193172464 385739143 46223428 748320046 25855618 310632234 740688602 92454384 299708734 824882618 147631506 118694425 36141698 7551967 120297306 982728881 424950822 619587887 833333969 53014242 559114298 324418475 576607255 195661345 918734343 462727745 850359836 634952197 976408957 174276457 556335004 464308849 965364490 984933611 652290203 464566456 279415031 792850881 789372603 902762811 387196186 150074384 914918985 194183263 845054511 944226194 335726314 997231756 238129007 5397094 311184683 187738030 723569453 266581128 23832377 987165030 870747197 793491463 726071974 563566114 412881118 824883921 496276628 492063690 301822477 949163476 405782113 214734360 133147612 506884039 563021074 387497380 596322701 394101779 170625677 373416733 108052932 282991322 811592761 929812792 226055562 634185072 202437332 971208770 238587152 956924508 911090529 642783551 804206091 563859953 481198479 746040943 767183721 607029536 610316317 207257602 676034761 204172130 23462289 206741937 526320695 678750758 245556746 804763173 913338652 366242931 640451832 816792623 266095630 335018756 896643385 478426002 190212449 939048014 957364262 835984124 195321769 981844087 733092302 750389438 440937944 685995038 942967282 519951101 271364167 73945719 956816254 835665898 410905821 5262635 934250787 342238341 328409321 590418609 223652291 480693135 247728298 228472690 973318432 571996330 455798110 292857249 389772849 786548516 377615735 318385293 2878695 360287375 982325390 570267262 120499754 521129933 809583051 177143904 150128042 641121761 663148965 378562142 775589047 689201430 382752764 126600057 750674513 897252245 874900401 862639470 815294210 773604674 753991793 858214856 299823232 107847749 181186798 86125189 248356765 927891369 811851065 983000223 815482911 587625332 627294496 568966728 192831801 122917451 404599608 33923126 559234805 556665256 524545184 318255013 100423915 292372883 735227112 886200309 954715571 183645359 109040485 743984378 607412486 937583888 407027269 990386403 83304513 367502667 688137631 577668078 526839497 258899427 753977443 261242068 957016808 67826256 382413923 464225141 910856028 667100261 852521968 763967197 729032838 230711178 359360862 959163754 340639997 847473639 441634869 162159980 289781903 461830579 51380480 354436841 831350781 752480738 7721672 997564446 907632523 965881353 890134494 49606909 383759347 402404152 467868449 574608081 283470142 895105520 318642506 30607868 255683084 580358321 994257502 319568381 691322645 344724891 111304465 558636028 580534158 891539615 469510862 457367300 438950553 924314735 22649497 224039837 326910194 416034502 152144784 512431599 512913883 153646704 490978651 560417465 157989538 188752186 353176729 661583150 914786716 912473384 805086204 613530948 463190410 157713631 996551210 799703690 354221059 570450479 627438416 965948903 913957643 362102289 339421519 930974221 632857705 730092545 670625539 731536261 251557756 457856526 54444243 130110751 433944235 223536102 439960698 522025020 159390054 289898002 226698724 509881882 476546236 957518452 522550097 534754924 806213286 657269980 355519174 151010073 863436 523936887 214073200 107041854 837972363 950370193 60387222 199114291 80407441 844692003 372007421 482823035 888920510 346928205 744989206 756071680 221518163 481681027 500173182 440288215 440932532 322957428 240395966 11009699 189582194 93886392 169957434 124289789 135277050 990260153 687448795 8563068 471824315 648108809 379237751 678029822 106968934 571353532 476755178 280765598 520838311 894540276 428484671 438861488 902060711 26790073 492330309 742624735 979158185 433915461 167061512 653400661 298885344 427371108 746743866 327317805 932148600 849382169 247421538 341285170 781975335 794743394 190520108 148188353 993695425 588616439 170772445 324148440 105467510 524271278 843008552 73235288 861608798 942381858 477132922 226221149 456574708 913806260 145263639 505712489 240066056 783546412 841610074 146911694 513993020 833523349 632579119 696967901 390461205 206085339 160811636 752052198 781779885 22436239 740699185 535549033 789337675 645604630 623212746 119119387 521390566 598339024 974127047 413478777 432027098 949832578 388065172 42674661 876046251 770411494 386338622 20411689 520972871 825340671 423306859 63732222 668869373 251649531 303487648 308278578 479339747 431115658 57616793 567032964 668979279 7275715 684745041 737706995 347975417 913506336 584199969 895113435 78381911 672478687 795234682 911162372 224000242 800383628 340686786 372693007 398112772 490206136 915424529 426068989 745090309 615431816 363326205 733402003 779876471 442149476 771856739 93350447 603582985 352024649 765885975 841173440 949625002 782642481 722056905 276629913 893755907 293581639 804124185 313813028 258779774 646498711 351573605 152666146 277757468 975124202 599861259 638622967 379742587 113041033 263100803 586957267 988218353 214991597 450386969 397775095 174546058 737872381 449834774 68997304 988055984 565883665 132288607 245650671 925149470 17149629 481919836 337967869 487060887 424613622 491626824 273706755 1417537 685366321 294802021 806149035 155144112 295013968 355420268 193880597 203880063 187635634 941647199 541310523 294830594 549165882 951660939 826587594 412908283 20108613 134016223 781549147 49155120 549247404 152226578 163326357 81485477 363445740 145706554 876998074 173910394 902127191 150345888 17234942 362558478 459576902 377660254 398789652 699291020 959983328 717043424 494046799 757148235 667904118 967280508 69117028 77293256 50325877 187075198 452517421 289783456 786240807 975983449 538576925 899400477 625990820 990893053 353814156 423419067 115207144 297184807 884952863 565144409 994077211 880105311 356376807 206484367 853364118 930159307 104366166 888145413 852609176 826671327 492596542 371059500 374085368 196621266 946853921 827969466 658167967 269616701 230947867 146913581 919331052 47498771 840949226 354912947 642607993 673382410 848606166 79717345 73693465 156579270 193872466 517944485 485982823 97601164 96357597 682103955 270647791 87763737 483610437 508903151 708625981 167294313 97445024 645466399 81078657 886628590 451676348 832892325 181226766 586813172 200673809 518615762 241149246 52535065 583155473 243741721 858693776 912991705 121854374 405144677 607799123 990113875 381664305 29488733 277442184 910067066 195407036 857441115 332700608 501742414 55399921 967704425 346824932 754319279 230487124 19967250 113284590 337447051 323837304 755229537 573644147 412533856 867602440 338168918 22785373 513738361 272625512 954800441 156784713 499868330 22173205 357875798 716818752 226300214 608943287 136120752 726519038 789523198 606483558 631295811 971997645 290528909 442026384 365436315 611324956 772057594 209522871 575786935 973948861 690038732 213584034 300357783 119517974 902869540 377603664 388405363 425801316 521974461 194897127 960820018 129203338 435916036 328450243 813378871 642830950 343299933 487534443 194905906 667549757 125216304 516120369 456309744 219371338 76344979 83956281 705124122 812579420 226078532 186181249 169672373 272023154 17802974 801866933 86372955 800182577 752569160 996743571 875074019 389309762 60120429 609773800 657228663 84072958 801623342 731396944 643244439 280921241 722175717 876080334 782007194 434610311 826471124 980589748 921488528 137362965 909050784 563277349 770709371 187869130 284638634 716155526 414144929 13794485 128694683 689056785 684770452 955049608 184603296 940616850 440249640 503223109 845190983 937546682 640671474 606997003 186448566 971863188 197863683 956921806 296572016 775998504 201762897 124504823 877561235 291043918 314932146 383091597 691000995 383639945 781680157 965984535 616941474 408622860 752240490 909645099 290995999 806724661 637881720 828918213 195175315 341959066 673685055 224569694 412193055 641557342 889643524 48241318 906452407 603287450 309555947 2384989 777566678 920339496 697559096 836257856 585098622 258106581 982560479 825036816 953823631 248053264 387765253 296091102 464464383 93996078 322402840 332606387 253833530 215853398 18842819 604590490 828433421 779737066 54129785 603178051 25871025 997922156 884259503 187508194 619356317 259843763 848112571 57887077 450973960 28041900 944152324 859757643 734185137 462817676 868398116 513852466 471492583 860732591 851717211 736793075 666313276 433314693 716349462 866670760 576148643 63231532 364439222 346948091 341840529 331912235 933077278 710643322 617035731 960330391 655263788 636574141 924592183 756536833 808827609 58670820 609352779 919925019 222155263 47773505 771936685 556639111 980674871 214439349 411686648 351130286 142295889 386863077 368132144 881097490 296466437 65379273 41046802 928766510 184774795 76444729 883677237 95745848 255095480 886510570 304210760 981423887 238610522 613592949 363260697 223300003 341545232 907105517 567763014 825579039 80918245 358187663 896989398 710997579 204452674 280076830 694367624 889326917 494863467 503949881 325688927 680541204 202461117 543261066 433609561 473777358 207201693 725390952 598348547 280033626 178534413 492982347 857707558 251619463 877242101 698094471 543888361 353367892 714729872 960154382 733444209 495810476 91310640 700538843 830901760 716371038 850117899 372545189 665929979 431804440 984155431 48348284 95044799 931239021 238506214 610844965 399878557 835283677 529048379 706650493 284100 974383837 658255298 250254774 233315834 585463567 941573205 102610986 891145419 452887346 185490502 455101350 733281665 628480252 778580089 669932153 379857929 34121872 909345832 30958051 779828746 10404327 521859089 594718429 733874779 40267566 70944682 933703940 596352203 166717600 169461802 884668077 456301791 605467019 956308079 889489451 539387453 574669728 260490509 809082419 910627522 290214602 813329935 538673758 390567786 863632615 566534370 740573022 153229553 237177765 965403493 160074875 861849136 728290720 874540428 426809740 152158435 26210470 444023889 334046551 33572646 389086443 480491564 293464289 807052196 585579741 666717290 305864260 939523525 662336735 605226469 617078616 711614885 640715198 263187531 112937718 326960541 536678316 345169882 869518111 437534902 868329313 539518754 694224111 411132948 826874221 225950294 505673953 690532369 751181623 188116526 839451979 174064852 746382782 907329927 713273509 658497721 148808213 252526212 369422335 723224244 627285730 460279085 89890798 200312622 918377810 258589824 502752047 282009438 242808552 457097173 548849731 657804521 453961957 488406890 628035697 433483542 767175656 481807395 977284470 981011385 526209444 454362081 312682062 914558788 150028203 391667999 318120066 362795948 125852215 384661524 350699174 162527043 858258950 593665949 244973282 9742240 645736555 170957752 140149660 613631005 281027873 328565479 256875164 525273149 556647106 845976026 985421470 86588352 554433931 331785027 161113184 838766941 553822413 209070218 3975957 827930035 713862975 37863317 722572445 785335115 753584825 822573692 356138408 629304794 264612951 517581664 760467886 672964157 10502590 548056800 424495872 815948692 835038228 791666705 545529147 537844048 779405369 524493697 691474275 294234325 161558189 212802314 112291379 466889976 720646804 449278208 495061426 302298753 100377930 438721079 825127408 194386545 310646492 348959260 596393189 90911488 788054958 624247298 801910586 468106827 979360139 769307756 565448877 371663136 950657992 990907131 811483345 404054933 569082644 369568061 753147028 992981915 618750198 102831553 706908746 760607386 121389281 843677477 274291906 556823632 328299898 520275622 973736232 424083270 77469357 826017817 411761758 511767492 365415932 881945267 329510651 603314652 710596262 389878796 904154125 935778102 496235344 203082853 435987988 801104302 296216706 885045047 818510759 2159241 904056017 695022328 42452546 175920180 578779690 236733368 346542873 372660553 253223567 82830543 609575663 287396123 933493980 489142802 568029752 252404729 38415827 288345133 822623889 870677073 464254373 416690805 790761438 363051982 274297223 35146991 357005257 512673921 9762554 843417951 220191181 945783374 254208633 825601756 138534946 598975744 830181954 972627164 444430201 598930308 672547100 422153332 301965536 549752297 840706474 588113321 967435501 910972527 489095814 511099258 933658602 740203161 367973551 598320411 844555206 698672553 137648541 136234729 85251431 794981895 942418258 686557397 82494033 489315847 948758985 818390152 71172977 417893160 57330082 440015537 796465142 893450805 657420166 721091579 488660453 277908588 148829618 890827077 112742396 157253097 180901758 998591125 284701184 149159477 483766771 479864137 122779285 204524240 878741848 176089570 571203873 339541150 273892008 766172508 746311761 905875982 698626388 407033686 782361979 955479634 36819416 813844086 646781278 606795309 148436419 53214405 273621905 856402382 556363865 815977384 287015065 394948297 934803545 119814411 286766963 32180619 305338557 163027317 671946721 489124349 892351533 211243307 81714353 985750583 470209247 401957641 658984212 747075405 367379807 538372320 991465377 757150254 671585602 362032357 43317778 563806776 681504103 314085261 667463154 387955373 924774216 138838324 709713463 663875559 575860245 752604317 255445076 706017591 419787765 759634655 307487146 283747451 16544018 903508749 15388299 629102111 653112444 702294874 191100420 993871473 855004773 261319958 769417074 147196739 873773438 485925160 308426919 362643557 573297245 9890563 597158428 823315201 218575560 833107824 97567110 858466226 706236711 683851468 603799950 159726260 770642228 455876444 299456098 576746395 800840844 183920003 483194165 275013844 889366093 484315366 730002589 245733776 829005994 488959395 157097298 592354527 566650821 140980226 747390882 761609242 417177149 65804877 164676121 130503556 117334499 485170781 836347140 7398948 665404093 737740856 172326108 75459324 26150967 59881996 902293223 669137596 570410174 489908811 872991348 519657118 830528671 252726045 680316400 32362149 759431865 748770532 73933542 122250482 197833613 31639865 730836731 192251454 236583517 769029793 895351726 344966647 592814719 482939671 413959341 792231173 87319532 745561536 9887612 243506042 833320045 235009149 902291267 324333220 983153504 210634460 396367928 635561587 716251356 59943927 588792417 273281736 592722096 964670784 383229134 92857837 358599267 42774110 364754725 348756680 301868449 27033547 587319618 513397660 844575959 553572395 874674917 939595312 609479254 963322223 124266601 380034657 743604776 907580802 81880396 587279954 119348306 754523220 8070568 117642342 917595145 100567417 247499640 267330878 615857340 213963714 725228335 465875216 758656066 52869136 472869431 957796284 677647097 738419965 723491040 716259008 428746433 953346149 236169991 306386982 345466881 229439514 152728887 270528413 307520135 804143426 818679838 240535117 695057704 121401083 84660712 903311032 218284850 915737709 410529712 973306996 736622948 93774320 71841995 877289686 85434020 658268604 642291710 168455756 595490009 606795929 935132678 382965184 461343822 550498080 903173897 532379040 153524434 893879040 770979399 240006782 580148874 79561321 678167181 660348938 103017042 664995755 990280015 12416323 100943738 701219942 321860208 731389940 498138499 963402314 836923123 287578908 669805226 321532186 741478569 18366518 228245616 739134650 744671186 94815565 383864640 41418123 268042021 573988313 868808185 213221543 261286491 244368528 952342568 890487784 126188136 324816820 57526279 916916232 269910357 393029259 310936928 121563334 870319509 156321357 540534275 365027380 761570657 64807981 427544374 413623987 629573159 811318524 694280531 555608943 902224177 899694506 621569358 95185535 479839214 509921180 377327412 191845599 740931540 904727705 342478795 514915305 151948286 400947759 655426038 895741741 868657511 937802284 217939490 59973211 34796530 752905829 239433692 849911322 247661928 656356474 501171830 770958830 11328620 779216988 144559824 25938884 738315268 463324644 455650071 511833454 38034468 701854843 108900094 847222185 19524432 250784839 358481454 208258640 660967907 195724270 847869876 246808259 964923364 412047707 428953467 952612750 420561614 81878050 598239483 353036051 899850224 801037972 508583069 741249626 920465915 459868228 744485253 975610573 666124896 354482457 68984756 442918527 527930359 719651395 990558396 693243016 437425496 740191046 703761643 283554964 754902506 991468324 973437871 797390554 330355120 767397511 554275165 412127845 897171096 497787430 687409337 554177515 645794434 737439867 541860890 713574445 300356602 34839859 208347011 874535863 377594344 479557032 890740011 320064807 104670916 283388762 901918084 731418021 377714450 998135095 847982660 616744663 745244683 953869384 181095504 570349382 525759279 857435325 162769488 936688739 763792903 262088972 585217435 152287141 158653649 827325285 930636462 182957727 480511955 994733714 423959067 236624065 158159493 594666074 671234463 648906179 667076724 236584398 382832010 477429723 505273706 997196828 8806322 231228478 501444990 967356640 243402923 565992568 200433906 518165817 311901929 601615128 496938010 590885393 847610476 832121641 928192173 982990342 183318936 54483782 273326471 101759022 211095355 657133339 384403607 948242528 473908087 231984505 282339024 545646827 554577158 183631392 938719254 317309219 416869120 679481440 186637665 726871772 291852678 712727753 381783835 927065641 847529181 149609369 692238622 395259661 812706061 358882023 577615703 617210794 782250564 342812182 128278023 459528379 66155318 329592447 536206925 379531573 487764530 11824879 402088963 813156426 434885183 572787055 322610711 279513454 378918152 390102470 932674256 815897263 594864359 242522667 635450692 452887758 61634168 637707461 738580417 910689498 458685203 26809531 991161829 552017662 730483769 27554793 536746104 808551359 180800368 905709133 525464061 227177421 211484080 323981746 613071575 617367280 222305659 270506457 366779274 384169782 419345151 971847202 499207925 525572364 525181246 126192097 22138253 126979972 651750125 629822269 990384866 496813354 509504286 703762327 882264889 190992671 734427854 682512978 644156902 485500407 616303398 875993808 57436744 262265077 131728600 693324546 470433960 828523588 722960038 488446678 398779018 693077217 993297332 234543706 365408762 858373487 403313350 92617861 493724724 746258166 442139610 843802893 641045853 638109071 192166935 980613994 824014230 555115692 453044741 54647922 143951974 275200421 433826391 437089282 22815453 838892240 960703353 888118388 244439233 245562767 663708537 959071174 59894491 353368200 419896029 542345711 286051831 442089339 602020395 273924837 580641895 232471950 186185287 665858603 185190490 725339867 463710612 767831923 684400693 853921953 371146283 289744976 288221153 93639346 324471117 837753678 64356715 848004889 985008027 583983126 819756259 8778363 192115775 211767352 943369118 697811161 194363856 833887515 814772562 836467586 600057140 592991079 810421173 28579456 368064478 367760072 946927162 940515807 347222018 436946605 279962584 171755865 496677950 290696551 39053603 903471025 72511276 890448859 22571608 697304271 146216571 955851416 600146850 273528434 212750518 537953572 133069053 131453954 609008668 503837199 134210383 58221159 593356000 131615727 422797221 482968505 414524082 632383195 28517294 194647994 880534583 290917471 685597107 314183475 697881010 160751152 630863443 930759772 100392276 693622781 405363872 844119444 908829037 822934804 492651396 839178442 370315877 647548425 414475933 363630570 452579506 586064482 171098682 652263156 543298144 681888616 936688180 316507047 324588461 772526678 56116993 372350038 382440098 413940003 560611441 713302053 377604766 174349469 426536775 81478033 413237685 350273569 56666286 31272145 811344734 358550839 678213732 390083661 628338079 378052607 411142645 526761322 265847434 652640550 396842357 810996967 91358516 24632942 871518473 656274191 962656277 544922355 737498647 717320472 945930870 249709603 65310034 901047703 313488235 117219734 859387846 378340101 800527607 133401309 817597233 954335241 109043890 736031320 580319789 624691821 513493768 624389072 223958781 847028795 400923239 391181310 822504501 248486797 187762600 90787103 189968058 191930478 519658442 555817074 795159146 97657216 298078511 153018573 701722183 950294192 572753261 342580521 441967409 111244965 738955608 441696243 981260890 406234075 180915858 190374434 354667070 228639054 168437236 460794984 691636249 732898654 482793417 314418699 984519827 212636714 904570104 493139123 60484113 353182514 899083217 277966634 288189723 859400628 574030147 434681617 386238900 649971086 982975868 51935897 363394532 738903952 687101637 124772685 446565395 666313605 672239269 879857653 176397982 231215607 384928067 320098899 962433328 183449619 909643764 963987798 323174914 162009294 79172968 534566192 111587144 810773545 239370993 340251456 558399740 146229837 819885717 222231572 725397093 374212879 988765696 458934715 923015166 642525637 50919980 134902980 252142257 885409974 574350317 992340676 864698909 322808311 642745837 719245210 312908138 103809345 323405727 976573248 536481786 180585634 42984005 940506817 757718141 762320345 835706364 649166568 970776727 920130787 701110868 978582408 107802788 840382254 188179411 556604496 92326158 11300152 398876548 778882548 862601393 30632157 562640751 542986070 810150028 758231181 594861750 153487320 421633088 320391515 396233129 294942927 910357990 419213842 419896028 724700100 598186812 981230664 61069922 686678533 601562415 198047095 501021247 156579897 795421898 46843501 758993760 546581798 436499649 150893691 309309900 804392540 354814642 218775527 612524533 769668485 597622402 694168815 7907801 333342647 353702861 898551047 763779603 676052260 54748320 711231794 925500233 765214529 755577457 670589993 224294219 349557136 15825894 535678348 137485771 464662227 907101836 915477626 377684360 622378353 588311336 180222944 413998714 565598770 372665934 254356196 640690467 626057749 62259300 554934275 345923415 520827160 580645601 589924447 580724251 357031521 634958065 470482489 10877012 507737864 578484261 145644875 900441087 923575906 474929776 393643747 459920324 227300210 638451711 657363612 474936567 129834006 511666201 25408376 249460425 170232004 250360650 780683360 223660506 234457058 623831199 722200081 828200621 761922927 818623462 491870852 342036141 761050967 762180524 507267383 897368039 11287633 273640337 924412697 785904146 432168518 233489952 925848650 420278917 910302129 604042512 936291574 898899920 345025705 173939525 533298030 601280 660874914 462502384 322894281 512255824 486092175 966040469 4653722 257888410 229055845 218282401 192178929 175908570 878324915 486513300 964980159 520867517 310269770 988663325 559984906 79781194 362884951 26319506 827328979 266752866 983706436 269015162 827879819 995234504 131478071 438057351 923748356 865364556 800106771 166409552 523827776 46959918 543883635 914779658 916041811 464520805 912059088 452696165 513795252 114854978 655329168 689217059 646564502 711020225 154896179 287049665 465408061 281250927 466338759 657491449 608984802 352077226 143483652 495285841 821579153 684234220 541245643 311917950 393422185 32404886 81141113 548404565 342578168 692818769 862068347 857648096 601163850 994302101 621774211 277637632 378861357 214515951 605518104 15746828 383709232 495574478 357896854 406640092 630630416 951213742 506508251 269921138 656400416 134352224 311457310 931690959 95481667 903684488 39319549 658702443 263480820 745056053 420493108 750469385 853716809 942914959 141706697 723691367 424399185 998922935 411343547 73077251 707949374 865892940 523049206 340997468 505623602 562892012 279665150 317310962 198167719 564230431 60478611 763693206 539770520 49420567 916080393 423688494 133882930 833679043 437883017 645548165 156626808 388226665 795094892 753010942 479546016 792530920 272413526 621990792 333179456 662940261 674195749 203636835 91627698 920507973 820068114 981303124 32421754 972859688 608751151 252222647 591720665 760075209 389984004 544454295 711196083 861566201 508582256 959471988 814231104 975503579 869976961 666372640 220579205 69107486 921410915 596772845 522691399 476056565 943243700 424825055 423578948 821775338 246812759 962220824 126597446 317510144 796945163 92185910 707101936 667167616 533277594 576306280 153195524 208048246 932214354 727860516 297140959 987423242 313871729 580502841 81744207 553675526 309968999 316320728 84148135 995120198 115578287 709214738 738919730 280308080 78291976 127670703 28913091 961873737 935076592 517528743 740954076 870528561 394083948 870902237 797470030 707163490 293273024 246676041 412115501 233799230 835794002 591006494 35825064 247425021 733016030 747948324 192620238 57700580 407552365 750130554 706974343 673033378 379495007 346492025 105942927 40996551 130713949 68076274 109180257 477913496 231821914 145416461 113138957 481093782 31649544 917615215 123324146 157580378 605791295 584519854 528616661 217450112 769415366 252479714 846697861 473546747 647523350 924742964 350937225 284169666 831041192 138330684 922884125 452675411 737740283 932153804 28164919 410271732 998448742 799799066 170811413 406969313 169284947 367551287 276564588 910628542 856943123 628254897 434834254 568046914 205894629 676773862 867203085 44784819 388610834 789354553 211465311 310104669 522718563 794397290 292585736 682471194 746442270 833485442 941847227 231942579 957187894 783275440 524070060 435976859 344647216 624230057 763302189 116639843 770962018 957515795 382701556 751586224 981866597 878096447 994525088 789216885 606123197 217592828 856778277 846347331 646818532 500426266 919249786 833442104 329878616 133160869 268444526 360370236 762599074 914686391 259198880 624272357 830718691 483531203 564115411 557614919 807994813 567487500 618656032 805496220 364153096 11939436 929640473 753794784 777161136 342155585 813745146 946546646 981323772 433735774 340994142 149532735 299367009 812390467 8980171 815573608 2532367 218929378 950893037 249672598 75673129 477116262 916390568 256903743 898340818 214018351 795197756 360250393 340919958 50624956 4943240 574961523 206453888 400752628 483739617 801810422 424790921 882997001 496971929 749229317 914473995 158078697 453847340 781552317 478257167 906158745 422580458 850575602 478212075 471050722 997037182 600120775 735236147 535561423 119343887 152791949 153933184 599421865 609574694 601490864 516357643 261768135 806375097 102060625 462058899 333033288 983405843 78454197 10825384 238713491 634502161 91281934 145494752 423060247 919594046 664964561 878926192 703640124 540019801 753911746 716502258 931634376 650202791 814681605 377660313 22278320 586610449 377213398 985420192 845058814 952114417 154744383 250273679 32074621 302857240 61760626 766737946 424155619 489588838 376142396 467098599 937733995 347131614 953059990 600291725 313286040 467689099 662876422 248566224 192660691 996114248 324469470 729480104 268153272 939885205 487256353 74947906 736390873 14361917 657133190 995256883 429083241 805788048 242930264 758623940 912359468 35046222 262162888 236235869 202723544 598990024 170877169 766814850 399218140 236837430 28894038 533039994 688997035 375044726 598081217 644420717 321783792 899331367 943002698 947562681 561831793 818003824 476938308 793952170 906647384 61823151 202157026 625345371 105242791 268117090 796550723 839552216 948319247 512027796 787998460 812664935 43617084 642188540 538550368 349436032 655868042 778177876 855006341 917451947 298445322 947088896 273300132 309119402 440271377 55320279 510364653 326360687 787912850 393788705 476177222 635667631 924263417 438105065 722580297 387486807 620927105 731469878 790393065 858036774 100158666 871615074 143369731 399059895 632438134 421045438 304162497 722816888 391593830 596639258 807798274 221515013 610216124 836755636 965866241 286975650 280494017 364062424 853488576 741857785 150233639 810188466 667744082 767904935 844868318 469985662 461482534 111911651 703464904 637927320 66467130 133098388 442225055 895618252 742923295 661020949 171658894 843994562 767098372 762835852 76622146 247342533 725316681 703620986 488176553 821511041 645639599 250804760 124937632 416619554 344088961 448275990 656490986 865490379 892654006 873754206 328695948 677265218 976634719 964180432 315414703 451637244 271494661 446224787 626119193 534190380 655356047 609605811 742229906 172648266 386656958 848330271 750155122 874681743 71690992 387895028 250243976 31148624 385635034 564439738 171545467 762908863 594592778 963233579 171393580 252561375 591510276 440944473 39505878 521661303 338131313 819120634 779384601 52481486 793379415 523907907 54540348 671200591 873497415 397432397 102617660 764952441 669577456 179660942 243490492 694203926 443781803 160085904 46169025 643615988 748985353 356975112 789477133 946565468 150227465 303958352 235789245 927981064 845021984 584961329 863697775 528238321 120029328 390489968 531425569 322266611 727183563 803162505 434444895 609438759 365273096 998446978 820406795 68100629 627211370 704510252 434512536 67368782 473761691 246669763 573081556 256714931 706726702 148732290 755540566 377913658 856360620 688242184 161297679 287497164 154211148 936501931 138966354 8308742 515393193 754443685 830148643 726601258 439339100 289840999 338478959 526699596 599413091 987903108 965047003 931017741 489635491 458771474 978108684 305007990 959636990 835539798 880709695 693039131 562992973 788921916 141184300 259023861 132678404 793833874 152143708 29582256 143096815 214281702 967147632 772428796 684737955 800978596 987995143 894623856 318972864 556718047 976543666 950607346 573292831 380627103 675232329 948129287 976188515 530603561 733630005 272706859 649254307 512521403 83044657 854823045 827770180 877743370 608663956 820213840 976779301 486925023 284584006 846812925 449645346 946560547 14082698 183212934 620920331 965544432 576079342 454591182 848629098 47498170 816487622 783528480 417715969 850378447 104539664 212768187 125015512 84065744 811014605 44311967 786533130 423182346 995486301 477605437 15455983 789144066 489047646 758777983 265686297 608376040 658089820 4279631 855486300 967364540 928193033 850577302 516575809 59064772 735617976 601093246 740775760 212378157 908383247 422678259 333883769 830916912 92547845 471904399 732163893 463683592 411105244 906193905 304054527 643055927 864504736 532601076 682034084 879476014 50898494 879816193 6494363 596690814 190701855 959659559 875817984 858521173 312508239 983623567 154683663 14681539 857312711 635746814 699916732 599489030 66822826 60832656 822579886 147896350 744739845 33314791 722482931 221614515 80126338 570593888 991145544 346285805 540983540 418370393 755732126 803335949 620438353 145823482 532490623 59063892 903170192 210865991 793869107 576652284 709793928 705751984 56950970 516267900 510352748 76490819 104703587 182560677 456671260 686579234 393575666 646420656 226726321 256320156 910636144 473607337 577023286 89551099 602365549 87066684 58055454 970710745 233480602 539779667 746087037 236825182 299191278 136029217 335497001 581591980 636878372 995378091 567397765 419679498 84550474 798581861 232587061 246912246 862047087 226057110 305104573 636267732 955870757 881064778 95092614 908915511 540933415 754200832 374164639 539950211 591018275 95150188 97934904 826950423 108520641 609089335 877813138 948964137 165197734 357227141 747762130 516517470 368720552 291940041 773812956 774718120 977321625 584489959 247147467 140955030 647419652 905513520 285188834 377850067 881748173 839500494 21977329 267433386 872750000 425570994 522453222 225639608 506767826 514993459 267991590 40739118 208779032 981877584 454844506 400062635 505695615 277364848 31766935 948839756 305254566 165343675 716545589 94113251 216705175 629897540 6239582 504704874 856072248 377524061 43790167 571523438 420485916 469232719 605932767 564119766 793618297 255078146 938106358 725186730 779329567 815976249 992450452 197348267 931073620 836351780 438010085 212168691 35758155 588551725 569049397 700776333 809472719 399751358 178746289 834991672 18751469 265839998 986998030 111874173 729630272 37320250 10078918 149053275 670119852 531863006 986649113 28533673 993013164 36190176 178259508 952186182 380457182 912875469 589353545 241748380 571472068 861024254 778822487 130246701 973610063 123808026 617045915 377046866 577865016 906447196 74390937 520509006 291151183 941602331 943378566 277488361 950972086 196991453 50124793 161239915 349898556 204207542 47603881 632534691 442826069 99135394 343633399 309423714 948201598 507584073 287898089 232342510 249548580 509955091 606187942 96832135 367339176 724751546 981388100 310194781 983999617 69246628 107028510 273848059 710477972 6189111 452468073 593477228 54587542 700305963 839460310 261406465 957132416 341513810 684632523 775169590 575004861 828844786 995820920 120422730 458423682 456083304 214907036 772350316 319850424 334242025 549809031 12990237 804433879 619519217 855350784 509078260 882302340 262164147 704045125 340203235 564690063 685249552 307636133 411768678 255356097 295917614 700657970 493878832 448598686 677023382 924970838 803592560 278845821 860929095 805155379 475253798 824477352 994358789 681615946 213046003 829343070 344649168 979646168 80908893 227181948 215368630 375297768 377088522 436743345 248779954 628370823 761982151 407215032 656833250 188530952 290716483 769617446 788282355 642924321 202345470 257138703 466057556 535264557 555223900 506085393 726422371 518891220 641940448 141249801 762853951 319212351 302243562 344799179 954724797 698834424 138812733 546925962 243253489 481190479 877331682 104920582 680193934 817310671 302954137 571182197 498867296 53439691 178703278 791569297 484795277 726161893 831300382 802735661 606042317 449389447 435495259 503352858 243036264 641874450 163992160 578669552 136622107 347420472 251546171 369846971 666208458 828288863 981015063 323587635 547187102 376093218 400628760 530159068 783801213 584334052 919376972 631116435 384796962 60035692 511000591 144389892 981344346 295075065 440409541 365464086 810707489 961921990 209019782 784128362 188185216 226719335 457974467 391328341 768675660 91469482 31852203 687217310 924356741 852924766 812600591 925341901 808781720 207412193 442324775 478889445 963579118 535569479 840312364 736271513 514479914 192053499 962460834 371203305 52471904 757460190 520248830 118263812 85461434 866592717 196247489 388017187 531771098 927951169 353817636 538655517 421234775 27814671 202981443 638038949 580495825 23422877 992897988 479231506 402839479 770100269 732745872 493923692 421900341 32855958 854145826 776069460 550353316 391607638 494347096 50737854 862414670 900767343 181531467 176677752 656596659 942825625 956033326 971401242 52542334 45384489 233501146 435175210 200327708 951600160 97985575 156769982 743473395 90184792 17746042 939580670 960303332 822095726 606245464 458724410 798061013 387314404 650573366 799790312 825720923 642373457 269207292 248227217 52282053 218576805 995338495 17058366 338768908 36373525 387631769 738161350 538210330 308278805 141593313 799276078 483113942 539487603 282004124 181404468 568264400 395556748 618119135 981924214 38920513 956193208 363207470 522447804 51591776 818000440 151954359 565060884 364466708 3659622 102587597 313183411 574018201 631172412 755833790 167151398 336706226 54326044 393317470 947691149 614573500 174942415 466476146 345835724 838441985 780788339 869633722 661965598 363716721 677007473 848792959 678272983 101213305 965056078 632608263 200227647 186414499 67594996 260500387 302077210 573255810 669534090 322385636 895051122 383406528 112056609 763613262 511039531 203567066 516272089 413000529 800266611 699078996 265162145 516664560 777179546 52054261 982925150 630175001 95801346 837651389 84772839 779049860 437053763 53384861 971435712 705558101 997522675 283153397 483766553 257583550 540629467 226762168 777471834 656388860 685896992 455158626 50852109 210372131 913093021 734784194 17916722 835015530 846431575 980596485 518895480 499460876 742960808 243492211 427874553 382383065 455518040 734034373 564822037 408972045 523017999 453657252 401247060 968854415 136735104 359587975 745486646 979972950 205413250 887546791 201038287 728403111 764384065 92370179 407034545 332809876 112164262 142944892 673607293 145241908 795911365 269104203 856892423 955190098 563991921 50081216 488433521 610455364 633814747 981398282 378063145 125056559 10139010 29815278 697722545 704529664 885735930 419198569 79462263 185596564 639391121 804158561 388147010 396004556 28870759 965129729 11780133 998743323 520517645 870025869 154727638 695310287 856135661 802377182 2130277 249583402 383304597 229546926 628703098 297725155 565609938 51701989 407460517 631959382 97656328 166204704 227350960 456827694 844580689 755193078 415103736 288049241 471402483 93525367 570505349 649323314 775852026 709143411 654392964 973774946 10289930 231146945 63769652 306731802 182093447 34285751 848319136 62295090 63077764 722299443 407987313 895483846 231683648 316994652 129457615 9331415 71103793 126371734 47607167 548011165 728035443 333559128 387906782 538382029 33113135 659695043 213846257 948871809 699631681 250285290 623116988 29306465 278941370 862185716 559118774 845501397 367916751 410923299 833442573 930931520 50851935 301386550 799620530 797266843 527708491 150974513 174775911 602735202 20378885 691838787 593476950 605588448 283138928 773119032 623391962 920009261 127695080 376833316 372883167 159000253 586390415 266602338 809635502 367049769 114297193 317203956 80572152 54885211 251471228 52578667 928913409 980709684 443424284 678974046 683495559 312531418 790789858 463021426 477616427 123108914 736225305 645720293 971375611 201488785 106468064 372941415 424582192 871667487 775319103 295822893 776959398 54674473 195693803 21825535 363257317 198190782 146327875 330617128 37414358 864566035 575284955 218962055 772848662 312601929 468294956 309203444 22188374 150319924 708938545 837620725 709145766 805043523 195016681 784035931 490334280 670333166 271293661 390152731 554219408 592636399 819459238 515100896 141734369 881116167 162792478 113795983 644904292 540324510 493803863 612796714 676291676 580584583 51490397 605180867 733744116 652924855 846852333 565161339 375723585 252026773 373217620 725974954 204777634 975588701 174067446 566732144 81686254 214174124 557280020 296757840 735574079 212375434 474225702 13825486 942817714 870815531 209894773 541342504 278305258 805681301 236444184 190500260 240450370 287254373 957530618 791838258 660464001 179023851 636549259 188436112 216334051 445688501 662596518 860610924 464058471 315784778 783719875 523592038 314837318 962157998 950301975 106429171 970495927 714025425 945719562 220328810 111098321 486278044 612735828 542675403 175244486 924123890 100956781 279158069 542685639 853636934 356591597 617430898 257676069 114926517 267948345 247497372 848060086 596643919 249499084 914971873 471320547 836858477 687703550 833519603 599699842 667756321 844313318 524765190 149096345 679715338 340069198 278747025 378345653 38323938 621601989 149900607 732400285 915131270 94343396 535084231 925944626 254103255 388260934 408506847 778745368 287035253 709417619 591905195 176566389 380224692 783442330 125578402 85726050 531365133 884748805 26829405 956200916 825434597 544267901 436866913 275177486 784621024 470056997 512438506 466294290 209439676 823992756 184355408 529426825 656788235 773164947 95140033 668431332 915565734 150633026 26118479 866258998 943747649 73852672 919209700 192487845 265307216 507624067 18554720 709285143 618934570 995435676 711504368 257652187 593525798 455547308 835107887 533368513 410366528 937706404 781656075 930184848 244036897 62253348 624328842 808910927 802469868 626505619 342776042 319515247 530627339 374898717 104561020 759624100 164970027 918511151 575371244 34358845 749757930 671722752 788354015 749734848 221146092 50562228 81270688 744781225 875383702 448227442 727482285 374361889 52582188 428620712 646011197 34634038 642120113 314161280 822728360 267984040 94730222 189471270 821088724 937387875 535692538 537995648 328369429 265883307 220190798 837133685 196878136 328100286 920453151 483786057 471024309 662604484 543096351 583165421 729516347 410479232 450014137 703598742 310208618 756005123 172594730 816799585 984832305 355272809 397710103 770913844 714848311 550111977 804456664 313300649 71074436 737786227 739100358 777281553 450223600 7431360 521834698 19752428 665362614 691635428 23247411 802454336 412740111 741183418 720714472 241158370 542385689 52160395 579486724 470330376 324992267 516478502 954027274 174063675 525124090 828278821 257854870 798486928 382011499 893173732 694306511 495465881 739380217 782426278 496079970 189006496 954073377 558584493 685317903 403890188 717864705 652872983 621974497 545026211 739131302 16750214 96813557 217971222 478214898 707109632 405658554 642102066 955679693 191377119 907202584 98711777 228625101 413681849 123991899 73619527 533169268 741104585 469404450 342171828 175260969 188744787 172707851 89307451 791360983 817169753 800313036 626281430 815975774 230716563 510737250 719680164 83506210 329904526 686155536 420831745 987893841 90025303 662871700 92736758 693572871 798910341 89594379 436960168 170622868 574558617 890003556 134427737 972072314 487891938 681059910 293789466 279177510 498854880 501363084 315207476 533716187 692629904 766786629 869866483 46039516 30101267 778496712 180359845 246790990 638850613 125042753 234484433 255754162 987582529 271419249 493369959 25442799 261600110 265132043 475171372 891224517 184864743 278895710 222525021 673242163 965945400 225554719 338122960 404569790 528968276 601548501 429186259 867078553 768008713 284914165 204773350 962792613 961256247 503467761 160414263 832119128 480868576 982664771 443713117 706284717 378524194 698505380 615357259 41631492 28822144 183606381 260179644 710633704 896231794 153901089 669925201 762911956 822158081 586173036 173393647 388653054 467823544 394724421 105425264 368021157 224447327 937916704 409628311 426468215 249288180 410276637 544544278 799063436 160230258 781817576 47850981 29328 101089042 455565901 945259704 383542748 875575516 120189321 573705846 49642416 360025302 782131582 322333424 159358191 236223886 137882452 649431023 891086008 267703010 207986433 125016592 383669676 224250482 654641618 615779924 504858058 584715203 973298553 792803714 796708550 287893825 240837957 393022011 878901681 419087265 519833814 228095145 500047534 605945064 771684710 814573775 618594289 970984409 344789245 169683338 819873169 875161337 17344276 482890098 425621511 146599133 363048870 964442954 485981495 951021711 423668987 803946429 973903826 34061456 213456332 674599256 926019757 217603358 412561826 774359985 16544410 499853005 315450475 557102861 715551138 765683614 210242774 985698436 781680053 895539250 835044314 660756354 765624424 345450817 856049566 8384635 153196360 164460886 829053534 290536076 70714382 99119722 311779760 416542853 991049246 829194756 664408799 656608190 313934112 794570909 520275482 855611475 55659902 897036308 505034534 851309427 826326916 197187433 412469334 52955066 817952083 609639328 886064486 409348032 38662969 772669098 843414080 429738537 711453679 686078095 15769718 736772175 99013002 924568874 494814986 327460435 413498742 752619744 83419985 450296643 466048081 827520190 216648323 116688265 703230572 507278531 734589227 215123921 176657369 660611600 291013152 819839731 563276651 584368148 816492269 606759212 280464008 847683774 832600454 926369060 57041076 633197118 210252963 248812593 531347101 87300871 588770 654237955 699237897 181553689 559888708 271644251 394999307 125119014 59939158 856934824 612470315 80357517 199788434 140915820 57800703 31001615 723384009 584919092 682229463 558607813 120672628 134708959 573063789 920575628 408178914 716566574 550980296 692773721 2719692 50643032 65019607 804033243 462142274 39881628 331536474 92094596 21320307 720178186 492091056 943594089 743476996 81558500 711194420 967684716 416143928 775506435 791805340 658748030 286665081 668109862 778317594 695151252 666178971 872087519 339778925 211216755 283837485 828911810 740539843 220748175 776929901 958460470 486777700 990671630 196854154 53349813 913906093 89679060 541137058 8424152 529208148 697205433 806134013 78414725 695303112 231717119 559735956 463892930 524081405 744918780 367433766 992451905 741444882 119546398 604838304 544691861 954070389 606552541 710516910 244759154 384410518 85901250 921965848 319489675 515705707 668124617 33462442 606877029 149045618 523985851 388455896 505171532 647833396 878742852 662354110 241425664 204250262 755407900 53267228 913729279 672864311 935386162 957049456 116442691 769527622 851816401 488644945 26391444 527040182 112836355 847168787 439137505 57550440 609284315 39967525 236286795 123476099 862767529 792638564 924315599 744351481 91030895 276020485 566061876 677937284 196835642 606154542 628708182 871591114 899568775 93968350 394718551 109518443 72177572 197316452 248719518 324501882 973681355 516682203 302400998 322040289 745016336 454328756 909768702 714458528 2703965 601501158 160323984 805744193 703032139 738166556 871053140 761940443 541827203 398249386 717500950 49083812 457677088 50253114 833129549 44843978 185044873 180591787 581925355 822567649 265251372 72280231 497028401 394223352 131881597 59446183 369980947 69197985 155371355 465991263 911522676 590843932 617779017 360643336 515353785 419688006 815914266 627831834 665774261 254875568 35777176 51180106 310465201 287786566 145544610 744800933 48028268 861713820 549883984 257753748 609799416 358106088 373056717 220191773 737543498 958018016 600319417 880096908 716407955 113834736 948957438 788959208 606052842 297419491 250205389 49528132 533386541 367242601 398845487 934220003 995378928 356511966 516985142 888228457 614097859 756808240 872264880 751010476 101512713 800890933 790202421 630020738 304162114 251027963 677481536 771993093 58889383 382997634 145907727 293987625 656711568 614861916 202584133 784154928 860999419 980013035 193077830 546545063 454978541 438934268 425557956 605235801 249002900 609295439 748033439 582346081 852063364 163685896 743565624 111357430 261823872 192632106 385781027 52592862 119923945 866965427 826318956 31827958 788499574 267488961 432541243 352983447 423103132 73374243 303884948 195989342 578605735 330884072 922005458 127876155 252064078 752785906 622839430 909683503 258487679 713575103 892995329 847265669 774976116 287339407 407435171 125259522 374732054 464865662 202659047 792807929 17434924 841172478 885549217 648974513 878544151 528514680 242717251 157003466 673653769 135253842 700134550 257830793 186120698 223181134 52385613 136530431 697106411 701287311 2615472 483387225 595622614 9303169 562062555 777256832 355037226 560870692 546678577 534071104 738745413 688966145 577942707 108970668 195425247 388939264 330383979 522751549 586623435 125672809 44962647 669412080 898893314 148203790 694275053 380748690 20779211 290946253 66397449 922838277 409662500 3014413 126447098 21349065 701605480 223913326 256165649 736720679 443322902 387230249 365147343 170084368 548191985 769208116 560107694 668057064 574786659 370278022 15909018 437082066 474245637 166862051 982425017 989133686 374660652 301183687 790841074 463493221 608308851 186671867 49215761 793062211 706826306 524907441 10875590 672658008 284143957 999066839 396693672 233610764 939725445 90001227 631919856 289007588 366275041 924720305 176239786 381636602 447223668 223551709 374753919 530292347 31988515 110256878 983018418 606888802 21695972 483155426 655391957 917469319 453680867 758442079 789380001 126457123 435208245 751305460 808740023 811348898 405248374 300773598 330052172 793433187 56264906 798947732 279830510 404877242 789227063 974048686 747121015 593863846 324619602 962336581 52046392 884025695 483307374 794543444 641256692 93079828 849516550 46841997 292288735 91022171 853529610 36660406 892774380 25776207 643469332 621049145 543083524 192943533 677556789 53661026 334975704 808644169 875950598 197432551 258310327 62589210 79553161 781739860 284317455 335922859 830340502 777857896 655730916 888870294 39124611 244305886 589565483 767241832 965505822 399518970 107707110 410923722 749065209 566226652 19370724 960648879 222727933 561217342 312587612 539377554 700764185 608714858 578486192 790146453 294208391 518804262 83527376 557049569 534148427 825339354 31229495 121479918 488954509 394952157 917191025 245039403 931056257 716333851 300629026 214967466 542937099 977635006 623540547 904328174 605912702 78730255 5217875 641539984 550490434 640224426 463684851 756490647 583995194 580597690 143272256 188335985 109435403 971736938 197636106 270247040 214956150 974447267 978554985 524159230 3391753 919075180 946945873 682138937 309131193 975455113 83601455 211321855 792888394 365243697 273079464 510498251 690810438 304904165 804082640 107520995 497684545 258089351 669328789 38205951 543335038 75449913 613071854 627529913 53978709 196120465 463951042 953993643 546910317 788949766 116346137 959440723 293440565 276501106 298213159 221183483 198362470 41503660 723178026 229479701 195221847 54696077 376838356 95983955 856325154 816621016 764481955 612176900 352738339 575503745 441585372 812224078 795027921 240872749 670624769 902072641 182139309 682807887 931550794 828181350 163894563 891242580 674332119 525295703 155738614 126804444 428805023 389253201 760106542 631461918 1461072 983561812 961424041 860336833 843156664 16889062 469296075 706213024 494794688 888906146 829596601 761034879 202053330 305099861 620242337 962605661 820772743 209003063 44307867 649629346 432549454 129324132 865234285 504169062 287475211 110833832 433364309 854056247 109892035 871819667 743586653 567305994 447670872 841782346 360211955 165920481 475988780 15228544 15673587 691495284 712958727 368821676 10207287 310585660 467104959 177893225 810882173 902834019 75196997 61112677 92444011 633576462 549014269 428030431 976037213 509753308 704225506 252345776 951924230 474258761 937937057 110147995 794926675 154211105 505813412 122238634 471846035 485375630 602414610 554502955 710937275 390295564 727983729 143213643 7555762 952233713 126581735 4204335 684514213 311830806 994994629 241234677 405438179 717561641 966180550 416059582 932453621 226314317 863586399 394727384 613416161 349908547 861580363 278582700 565643542 641371139 689717419 870415455 733672997 523055788 569668185 642205122 511421900 99308161 279416772 331518882 764275266 86853883 157879220 159374723 314404189 863003960 398837509 946496961 810732948 740767359 457378746 20529371 543941987 612669598 707850980 160328013 425911623 316501211 816760038 512205838 3664367 541766944 844758486 128545631 838408653 353125243 115787759 987131347 509750027 391692434 563945396 121953015 421358299 501809721 896159732 289441806 810538803 237672353 484019618 587386765 901845750 466082813 695887923 257913874 255363352 337610405 271343920 644032420 617638510 397145650 701742371 690200856 322991068 650150771 239315661 55871346 132496398 619219472 727429738 631467055 281290463 137871837 545694397 437813077 823136666 877452247 159409428 278435462 549905273 498691814 745515408 754355016 848805624 375596925 527781848 358780870 710352453 107737904 835357131 294831214 633632317 394392608 770600990 702803926 382937070 114931482 246970547 880573728 688541735 660152576 971078395 520026937 490182004 630049138 509473609 766825378 156483307 637516958 25043621 657501999 538491024 99610625 545795024 144468682 681337739 683833652 266328936 925088037 940018535 289362865 420472537 99818407 891829883 802923542 817843692 364024412 751049019 472607295 705248175 536572675 973160974 606307427 456950573 831761193 320476678 429363401 991102118 605457972 442510911 972172618 818415083 828278117 365379969 313389258 575491134 736244984 987479964 708065132 66362166 181407419 443025908 666158214 95670536 42898691 81232085 628726831 259801244 105338701 146353805 995583663 850191075 130599661 590691685 616201395 274334003 85121548 900179449 463027693 974875148 56079447 866187674 966572081 680682180 429940799 349506841 730256320 63607466 125970668 518068837 705414136 414171778 723988254 823732026 995303316 132544315 510437612 663869529 908683662 952247917 964664190 232631904 622975776 27189352 549018372 556513931 14219518 109509493 71154196 897255967 854231446 30496378 369896577 623480860 891235 924474966 23161682 676694637 641278236 845512351 879655813 523603403 923226906 65672786 406936805 141580872 738748510 396231725 711466776 863256718 856062083 650765057 79124896 642489088 365979033 796483845 750346973 376939753 128522838 557758174 793477808 334786795 199123340 915363726 136505161 603493897 953664051 277737133 136377174 118087456 7984849 272919097 898589033 389112661 515943282 170956891 237672878 952102606 326464017 287178449 733917157 527084545 363906754 130364203 672245597 545476401 773025537 893521410 129928304 392303429 483893845 475650024 883608592 604307377 898868019 711339396 872875918 200468222 811728040 377811153 511172652 415387836 211698698 261690538 477061712 524292297 946361077 842282087 112525430 52760389 504026446 197358173 425211609 66082964 624733389 186963887 350746953 983663466 325902665 691175398 808207041 527771346 278396252 467118784 153723666 528217137 423298747 225885872 878300544 139366515 554715151 167947879 313801188 181186576 878417582 625615098 967054590 390681320 885957036 566713675 416329190 172184996 185711777 606411737 149961232 318980863 876851675 689604126 635738121 841266063 487224727 234452598 635223833 517937608 129765269 165001578 474497910 363104963 867123708 682307123 583755754 913941495 513851688 949383558 203162321 803855656 349872579 214378643 531666222 112316367 905480479 585973849 917127818 567597151 465917597 981278888 78099389 43857140 23048114 246731862 174470226 950223212 204430912 782986829 56040818 462516489 80076994 113384202 61636602 745238119 548910757 60391652 416767650 605217090 428827047 873298166 591571987 188661728 790444502 267009022 661793064 751978202 33336371 719981642 724302001 904802111 50386697 313970498 170183215 755569966 227956005 673713327 57099866 822082583 724291507 627880299 765402553 265611634 881702446 685212817 242663457 988059002 139799018 54676504 425055087 341571477 201164319 535176360 703546455 648874588 287965799 675392385 478086321 188691088 857594333 555535122 160097543 459077992 405414324 496277567 102421696 264170490 484357291 388721274 374726331 238572291 376439482 569748114 322782652 67448386 909891046 268214384 411867783 873057578 251078917 936429201 144216354 444217491 735924338 542194977 281500390 18214552 230593833 82732624 613064963 202358119 269576538 254214354 592626828 11536145 477545023 831844087 363352298 193296589 439394795 623431647 441191365 121205272 737231790 210551360 750063394 115932875 357037073 308831104 645166117 139854531 365624785 955833480 181676691 365035872 440681675 457610718 166789953 199777081 400901303 938853867 265349448 53610632 14812202 825937493 481096935 742000885 407114445 841109638 687319021 688752593 611947902 883647163 9849986 15823418 99667058 219155204 526873037 279095781 23709566 729146507 461234558 105883457 159560352 385966458 188922685 593182171 13294200 501493341 281920577 981031739 200527009 927936686 956870177 267783408 698289086 350841883 190448168 517656013 493354139 711682517 60675458 593640436 921442912 68815246 847424687 29781875 244475881 473169804 15266145 397990951 687754671 679922735 132820268 64547260 258733392 57256380 316172589 954574347 294665929 932298116 772342239 648080771 752314065 743457395 175027855 27128155 246704635 18958903 274427621 666801465 102944336 85497046 289754522 636407545 6578613 491319102 53108400 267528950 743553975 843152144 397906520 756869423 545730512 505835016 203445175 61137239 339719821 656132063 478282085 450278985 842805421 162174785 85770245 559220266 280986316 279561907 164323146 91193526 367061361 679557864 817784242 384991033 26442780 992954045 626787338 240132023 437077357 64979237 575075352 595802349 35768583 20458815 753679936 100447336 937919710 63467842 500628485 8650123 409919007 81509891 217430335 388922999 119679182 860342003 77049180 79259022 44741410 296964411 109166016 769343775 739465775 260211978 285414382 544837403 77621000 224849516 610205901 383361810 12268976 220297165 828958787 861006306 787257967 641778926 154242547 504797742 269089564 91786787 118796953 933558459 468369314 380936829 410220841 675709892 705965813 664195647 748648328 75386520 944338383 787092214 818169452 107854629 145101666 827839006 717053136 590642282 465323330 182311638 602726323 585471558 92394022 445265135 944411663 256852365 559512179 926611028 391036512 720016836 435376490 975533588 824534674 21271167 658127045 158631725 73901973 560041966 982623045 171938153 162104906 217784473 190717724 636901881 564003609 759783438 602116881 262624907 172558043 810461242 833845564 687898042 577032184 147829540 59388506 294550611 723132410 813666954 177824901 394213995 550364320 125822034 275560142 650977439 978780332 802449900 295486639 774611043 985290172 361364299 531331349 886303213 240571735 111210331 681757738 759515280 523252185 497978167 898029541 647892352 990190432 82211859 816557541 683449244 499620773 892375175 354009749 620024585 722372290 980853473 543585526 381953711 749558292 985190439 503200422 616201584 285241745 134039663 394260858 748576625 613369525 701742698 142155114 98481561 757196267 540200960 754348469 449782018 758064483 848123448 896841072 467376174 839231674 109796762 857811762 238847808 720967095 857592806 749571645 854291606 768425122 33209689 430573203 922660206 495354451 939296665 293778182 799040887 659504071 347744943 156441028 304774453 79026103 686742683 551233891 650504021 545792697 619563509 218111299 561841636 862327970 570263118 448426206 31960498 100331995 708177257 25364229 201172683 699247771 167056924 844363221 838365016 808392209 78786793 810713608 714220290 454024921 58132097 493890191 282860455 977334395 168130816 84794193 8632643 18401392 329992716 550458224 563289959 580780426 234096861 567442867 77320581 293440356 492628049 872944201 535827955 101862843 262713881 658216439 877891993 481218591 106187726 802925047 170223113 94474546 277307685 465773762 867268246 377651442 927547714 21835829 47260013 767322291 514544454 564106395 351703610 651514147 194904291 713220632 507486121 259657843 269330566 78700382 374120628 525058077 212243200 510607249 608787253 214125559 478951163 640388387 539969267 557804351 774562914 514086493 175154847 991417065 722820043 257957141 675987749 634434058 348908670 463780526 504180718 656055891 573308957 857852772 961302077 684812777 851200147 309183922 988615443 709255742 309590714 964856659 518993034 981455281 36469061 245113366 110882327 917565863 154330322 151685457 454635069 759103239 537808883 877270711 350268766 930166681 376601860 737040098 317864478 416181662 952920818 58217439 146331690 685916706 276733344 210877463 985589443 977392275 190432326 935650359 945751542 368947164 642269381 933093219 889411140 260122692 573033593 320900561 215296038 649559039 484373509 106427259 46519337 923499384 612534368 104637149 917084050 919830458 604511432 944408080 799117103 809393611 327996943 28447974 228538092 303167231 557996673 260522296 593439086 10576723 275488653 882816473 138561510 489437570 408248155 917244648 228258109 676598097 727333625 677363280 228455453 116112094 103046818 923976467 990117423 141812636 494704883 440983306 123193766 330870948 654375382 139979970 621264541 994195583 105585179 421617379 203286507 490707176 90428436 527567737 657524523 330490810 881770116 903424112 344568041 31087429 896826543 143742856 642332455 232311172 449184170 841770593 919638149 816922853 152914411 923279216 626938724 730623374 292776586 604489628 856720153 334262951 180972119 486883847 497732151 902999346 788924121 740834639 786001790 687347619 490838413 605592110 286324380 360579531 431285699 550633465 202582107 263618550 587667726 333438626 237809739 242249117 204449985 776987631 992071325 373848918 34313781 704079117 786638413 446326522 792043851 955366897 832329513 503951275 467047130 36240953 240602275 375588269 840671005 796771277 782812019 971109429 464874497 224298691 928363751 299225736 734906591 955786134 826892950 313294905 159332894 450301735 928878811 877199465 507103830 534230921 37815737 941034192 384069263 436284483 900368075 470048122 649211366 135417196 427602385 889537277 354854060 232055246 894915129 327167479 283475503 694975559 557947325 123129014 865744562 798171576 68253689 890410525 156876195 380030315 709714868 873473149 544564267 472080492 332015853 479615849 339907369 776793052 963531972 158008290 349199638 313046996 893782685 643178049 794393667 416520457 433158187 988265298 867265054 689288718 793437778 142011192 327621062 828264866 539202196 412139717 83234358 644136823 575029301 616874984 172815159 825997398 488187847 640735576 317649920 150048920 619025719 139769399 754404738 349628158 381795468 647929326 755710849 872623576 996486414 346378733 270343652 273148408 170986144 65173416 247094973 47618244 777863766 306419591 783778478 980720286 879745543 417744969 566954109 962369589 111861518 866187382 93172339 797063801 8693779 942889308 799231873 87696340 161555099 485777549 525567909 12192742 927212330 999537372 238251306 641039156 34498856 662302044 176790162 503454996 866311193 266101719 598012217 815555085 472540864 973088369 529797910 434075185 52059884 923863210 595643504 401781089 279087303 467029792 627750907 308979969 988890784 709698744 13607055 612306630 514793485 74237824 360415723 347486718 600158762 822875503 443808138 36671638 169028859 981026569 535988583 91757845 259418534 731089130 902998643 551212051 482298031 52897794 151474294 280596750 788739633 331058735 797868824 755590332 130517405 914619140 128904893 752284850 886544174 240318971 398774206 301562060 312427469 602736160 23238560 721043954 923507237 907247623 630465149 102242504 639483700 554755127 292870835 482096473 452492839 595168344 902529857 854442640 798977943 494525295 89320648 15525601 590772097 439838349 476723218 292161288 975137199 162852337 285611141 715642699 878716772 513307845 430406816 49970171 412120490 122696042 822366799 631318231 753345943 127696935 792646306 718669219 297216835 345376730 205096583 832508106 424224596 825415073 772461362 238125158 566031369 788972605 296124743 453145723 469455717 813693588 626215856 951881210 751293811 710504075 700257530 887927868 574420313 673979349 734182596 547220300 101983511 599468797 172173779 200120194 411453337 336253221 5053523 382633514 449416409 480931229 59755243 114603448 614545685 388402898 604860270 5510028 570386098 841729738 121423555 885375728 16927066 512631142 567642125 492120178 20092517 629725814 724154692 277301019 121714266 614107667 54182126 593687058 91536376 205619012 132702663 886475044 240322050 461018134 525571453 205475943 277052203 274846277 580219038 829837636 474504016 680296011 54513832 112680534 395089420 208429250 919830995 550260575 57745136 371292512 953605114 357882416 105493520 213664578 620038481 424000777 607897860 498265494 829740412 106543999 795175453 232271998 190909498 310627823 944185461 817610481 528134618 586603657 923751991 510192945 598144117 849515704 76345121 632552698 746256640 988497123 582250122 639157968 671771546 961881618 935435657 490663779 458930522 825830905 481538789 556569390 909959510 225546418 500814469 387718693 999314681 114690140 125636911 391181709 274362233 476867805 624606340 760796407 150791092 6675713 394551232 947228532 189317871 747210698 785336634 377447091 878121901 891737979 286897739 506436543 319547166 16138279 977361896 352175572 960037380 869434886 976363705 386643123 417707852 240235462 970474111 258615433 270671465 542425661 510735126 214654736 613013026 105724057 491996315 912947339 81688808 136907527 975765178 652663888 102921239 661077176 319282118 416475410 633561013 728778988 968994657 743943921 135750868 486475189 670750337 677019884 87023467 996757696 394126398 682952876 172644554 66965766 154883667 272209683 372377979 357245232 768180586 601771414 883871868 131926573 1041498 337647266 824363875 508030930 432206059 469206954 382165534 106761586 16447609 256635617 218185135 389772992 220163086 360633141 327675059 125301193 45596154 504523538 127995710 368962683 853511198 891205474 293553514 739454798 241326074 349096729 312029180 547816067 889562450 37635235 435823755 178193036 698070478 153892450 265706978 865916115 622996146 914126143 37219106 932783644 90526535 666084928 595422489 840444356 421618831 229090858 326515362 124851611 297619063 218906084 797279804 858792323 915045545 324758207 679090282 337572518 978241239 378094950 351708300 432351490 728659095 42030266 339383618 862692361 932473335 454368650 905324424 94579793 975624475 278699840 601456181 90066070 938600739 125093881 680257393 164428527 712959171 840739733 123334492 186261370 474445810 646994260 460473258 257804450 716965053 766993333 427020456 989585059 398726126 609657236 865935529 802986232 168318583 734172374 802795094 79887600 198819677 635984804 666561066 650025621 844586173 939347984 606672593 802745941 672962858 338947511 696090966 858081683 580953189 472157697 596177785 207944240 258667141 352399475 329347433 908368484 879054531 916869281 335552355 972809320 54346956 564855515 774674505 690031737 594702629 999812770 121038247 272599690 886692131 626199660 889537552 921537928 33568351 395390169 253654252 313762587 341387559 896470305 932343744 232005651 635049164 169212037 78135019 232524860 287182177 355582757 760738355 188251573 87145648 788476012 930033171 692588138 690913606 383033902 72333984 390109056 135879714 34618166 652181896 75090411 653617220 36600724 761409451 297924556 231340025 75276876 817763164 501534380 869391153 572502719 317710334 205190395 665589160 913119434 860778085 611694049 856785510 619977142 658862288 737668866 642972497 940494935 260058152 445063841 18770938 858986332 327379616 261845996 973264892 120135413 475181607 742336177 409708016 941593021 940868413 727040209 514939993 892773643 100067248 810210099 349549820 92867693 965815491 576614050 944717983 178776177 815094548 455478760 682266496 418706080 383511099 245012487 279346218 529013561 336737473 428098234 626635124 368954098 749463761 140270485 28268011 156847343 46288556 880101458 301225659 98914666 124915701 222074325 806859782 393901316 976881433 548464084 95044947 327687554 365214373 459440081 329331472 668213552 98003777 720363109 511564724 160194781 601204643 126776334 791611051 88025381 142875550 215333642 75805521 708406979 426133103 906410206 902624678 37837308 995669258 847258476 370582407 701773865 447908490 7732402 501603556 681529397 422323563 255789924 627580045 770194685 599377509 622117588 986241180 933009942 109281241 68688345 824286965 602986380 236499607 245616850 798300262 706314844 957363618 89923874 772068145 888513798 931303731 859838953 93976729 294764867 556010553 849757276 286068239 82490368 339110408 926623235 836854082 556495614 687396744 967364055 669259219 250573187 249657334 702280055 539697398 396642396 401367437 743202479 957926781 13354101 688441704 731906911 757008037 547929729 126509131 36873934 707241633 670073877 346922884 996636781 343023136 132615284 742762191 770315582 571634832 575281689 101883615 357084691 90428743 708743917 194501138 296823766 628583880 195113481 267986879 458977415 155855253 993763065 45005841 60978385 363098377 778688899 295535573 896601327 200261178 568461123 298348963 28137026 884308131 712824794 477834001 511799463 60336262 600425277 133375699 440662912 398680340 222444868 843992533 517690252 983412203 970985770 675317490 530873056 684695938 69742216 218808080 528676782 484973010 456319735 327412459 558744296 727636605 901156081 696449676 492722300 401187357 10191308 166683292 486307784 705309196 345136790 412848892 904200561 695540915 974206360 675916704 344099945 766088733 780972812 34469444 251700146 850072782 739093119 733317834 101041255 561274844 691459260 3019509 277423616 891068369 476752276 33351741 217730944 32089334 169321466 177283159 330930179 833808355 400554605 834451813 839746170 769215601 766287545 529494747 666442846 341718785 695725413 865475111 290700326 51502472 893157961 236701107 262913972 254968002 207282999 497862577 451283274 753633487 932513468 885617380 150639721 463568380 393502347 545971646 431121592 819159153 845925626 837958585 71213752 916113707 634128918 570938576 729842515 826241383 856484977 798231182 28814109 582529835 637091042 604740226 950211983 197302198 154853933 491435456 291741556 252398020 970140389 536635781 921898232 648062447 971572245 962105212 816750225 559168456 254453906 503266534 534225387 862257496 539784322 601657651 503881344 3891239 386809214 157640 568686928 672199829 437970517 282172312 36583914 301968621 273498636 121613157 645476754 893449023 564891342 533682098 907888018 317930781 482231453 933536664 178804144 420198131 588332113 28146647 583596001 59866838 904872997 952571227 129807687 186683100 705471061 376020713 143946544 636998060 838148543 203374441 845675747 874056054 484422233 421796636 943871316 821488576 207544342 827913164 784855070 188424005 642464839 56141964 677936873 686145433 8340218 741545845 791873735 104333905 829000733 648507070 675844058 283815355 682552155 492755931 683197571 695226432 331613961 941449417 564186858 502070240 755252129 895971227 683704054 811002878 130937009 581168409 801828258 64810334 540090882 404353960 805289055 988804616 413387664 207291555 887980417 539910383 646335380 457102740 927783797 199433843 829206219 709312382 795705460 249779047 884219019 848854505 83541056 885282346 696364480 896006521 941904019 228629574 920690896 972734882 59519507 850765684 18983015 979646360 764717112 41262636 598420158 488072001 475290155 392544188 405352063 926768111 695150704 908187508 436686443 446550278 721510128 334958364 965044985 388514722 515343480 196702519 177841048 716940579 919308181 946547969 217343162 209816078 743512159 242803883 999675238 71530330 728032063 158332239 105331645 865722040 81773711 918908136 216577364 94900917 698783192 458795685 356684128 688861130 335327349 138378579 756718882 166051114 751173450 97508757 448630060 814806056 343215825 791736872 247220744 719514228 698085018 408593315 588420205 677415861 499194324 737224209 56001749 598123747 464103428 733285797 862288412 167102677 490499035 779346200 752515560 163051175 164597197 352873748 259223793 494612594 818998094 843241500 771948988 832619111 937465515 18444431 154587152 374618387 873266670 467730169 33277470 987769993 596654434 609488797 547968611 629184941 323771942 796048478 954774176 11506647 191501264 220462312 795325414 528897657 605940800 274953472 412103061 497909951 661267959 132634472 765623398 232148137 61133726 681606550 519693087 935287871 620849076 600225728 785003381 627100802 153556069 259964548 645052468 135355296 922034825 325202439 909312954 168649690 636149818 744463448 197181304 287371572 497538651 125282211 890292038 671530682 659803156 384107712 271335410 79297041 10821321 848742902 555451507 868062835 248772148 396315537 488272719 59958826 261577611 897410051 913411408 262243096 608475322 701087587 206862886 361485993 159231067 668413176 85459121 613836948 455394789 570091117 825879610 553441145 498807995 991125956 487302943 135651528 200476818 944760835 751497077 258187316 418901958 369964238 431964109 676926889 480089602 313641204 494304312 911295879 547252536 696522050 350668177 340215265 951697724 871914492 271191020 941701441 941019787 738477435 352030609 389466240 491456534 340466439 404002585 205230498 841588984 17630399 893405217 677876320 627645872 977076816 694096207 719353681 990898892 303835619 403001778 919749398 709714568 63585382 891704180 909210543 108740112 414132555 85178383 614252763 948395100 516777126 277109641 682635645 759413028 216084722 643940312 5353377 314211829 412496815 655129101 988552698 177299979 524640235 533380870 923046191 372289705 431041273 543698553 868855091 220255121 445205729 707485645 48900143 494195506 985699504 679128264 387243575 657551046 397117898 806329102 201829167 95860321 832022408 126323546 844345038 660080284 716027618 319292423 932685049 154616015 23516001 953400366 99870169 835881725 500690494 711383489 709473108 300284676 454748341 174184479 657245148 43308390 517695489 277014229 253938385 148116812 975317721 853212363 303752746 274148701 786771675 815060030 808144701 38204051 602381411 757391071 187100530 17839990 399824783 949648498 558892589 764130114 704650599 459072046 260288469 279474944 880471435 32664852 114097924 749050257 757161652 317804723 875978354 325537698 584406079 295426721 60383774 569489177 957708654 822946488 670275349 527738622 527373825 169557964 542085801 479521341 698454467 969395201 273579137 267213581 586301301 446246615 816011380 138361559 240511030 140502977 932541673 678377586 977886674 787535149 723779424 253053999 191035663 692958903 240897561 582039997 180924688 172259016 748275950 374875893 445041230 714241663 339209191 27106961 29758101 932558730 257233197 982138302 832875222 375838932 821917834 408401309 575324131 387270584 465096240 299264606 29531155 348693236 420958402 362238915 122263799 848403289 314363243 16568801 561371261 236908024 282943054 112750963 586021581 316140140 997540701 324764651 632223944 893407853 392719931 494674808 146266482 833334114 347005992 322001670 193059401 345040578 612013529 849950816 63726715 80020953 794429141 105948723 544520197 21798082 878806107 759987519 93341682 427324407 855456999 814050042 201564519 906569122 71330318 660431252 447740239 960794018 787542418 478172956 949888124 142458581 515022897 262605753 692541900 761002078 61402345 598850180 598598775 329028191 817106966 525915993 782124311 70834949 926364303 15115307 822290825 377699082 289967571 133286641 489163539 38085823 208125237 293557460 82782530 66305550 715082216 988167333 52900253 994824926 988744329 876214193 673224671 300019496 854706234 4778875 438540215 831416239 491929800 693783023 81855076 648219113 637299083 919342766 612024646 781708696 615784139 611274370 544825289 284958411 465089451 974830848 57164171 907029066 772263522 62685976 760083510 713768072 69089118 403023172 777062771 920816613 234416646 830636841 849937605 268122264 851971367 12234350 201691617 250471503 215487876 220630409 741918140 39845521 565751408 67189751 744627836 205110784 600418269 178085969 210020619 152761828 192470071 977838793 282480045 880095544 497444817 59173909 601887318 357783241 752819391 19461272 420226812 903232908 125612962 5324596 787564665 430050878 102536549 525377246 343858693 334696414 74432379 55301355 805692104 810060572 979244022 516418508 836930135 250170019 658286768 460154208 548959223 949222206 650481276 11516039 32062585 546485229 43216703 888724985 765420710 428954679 823185006 565068856 366931558 940386050 383692927 250872710 281611664 542072887 918228023 665326041 17176820 421821505 366304791 680259889 963453619 491842607 956355648 538319974 215181214 413997532 592069773 671303926 862327357 645226231 506810033 191862033 842226519 865099589 574068167 937175815 581555215 684296281 187176151 760999933 639659580 563738497 45393830 502546824 269536522 212671727 808382080 664943712 402715975 665675023 105198912 811613943 109720309 185298160 449556213 706236754 615836957 886723801 629948965 3852424 239666625 125668454 662468039 112573353 35325856 110463916 95163764 445025374 843911849 382387384 874021321 572357437 53229843 354588354 333578826 942849459 915322522 45323177 660845137 858461987 545488687 445416531 686730732 78533316 90125416 910042338 346167050 434572959 620249173 55318100 195884781 159423319 800246075 238111061 854875730 344399129 257492880 862017024 932389801 750302393 711706429 312197405 796668786 420183152 198960328 734989937 217455558 570739500 945472376 372096417 28411917 411292332 67539835 399132330 404499392 430332412 549989493 260923884 645917475 378229953 610175236 489610452 616827269 731593856 349519264 627707071 127556797 903350245 596738247 839110297 270708148 304802763 388221475 625252120 83895707 705777026 14535097 56778745 639745090 863051621 21830077 887834288 269957054 392065018 308136233 770965835 604684580 853652273 987193955 397874290 684515272 410721079 903880166 171600899 657742157 263828570 999315349 403539947 102452809 659362496 761518725 15888030 605366223 45563250 190352911 354898778 18591813 230149646 913123517 755230788 862389250 721529804 568960239 675451847 969270018 178879259 472432129 706545525 708983920 355372009 780951133 529102247 336553515 828507160 249052025 305893366 173495616 356828863 945151521 969389806 135606693 735917577 793466707 598845559 809762557 239939857 859938243 297305950 588716621 263715444 103385172 536566706 614248485 15527132 283719062 827611367 110778544 786276722 9506184 837075277 300258925 455698286 267418675 860152863 782835603 547398168 332391105 239975981 575106366 708644318 495052084 579029312 169791818 690954046 756873726 21687866 804294156 63670578 359708868 855953316 217048837 201417085 695113613 152328281 643142320 51011424 151102585 612475567 558085296 823908066 300294531 784183261 545919421 657621456 151874525 231272619 171119982 113151028 481207231 718792121 332489906 791205978 154148255 144775937 644274110 714745746 347122412 449277111 526125022 813088782 499825879 131266813 995817795 142924108 326768746 530213255 601043326 94840354 270912942 553495779 950076086 504044852 636247222 590486563 530471904 310388836 466574536 152085003 25843235 387305826 254365779 482897052 852332654 784164190 143698918 33975892 126616874 905858589 479127113 437820248 655940618 225399907 903741479 263915741 898080297 880845462 608746886 325327034 872000782 679025993 893823405 230741456 625165354 939264493 325609474 878792162 184974252 520632197 519204760 18183817 343786079 263160979 380490883 172473875 312675718 226904884 487719464 433270334 3937742 764783625 124382381 593579757 780897427 326169997 861604989 913445697 220378440 669608001 985172613 112549292 62585831 824732271 174629972 489663799 502346017 874167233 142251352 811976124 907852877 355765149 861888455 970370103 599981409 506125507 491787598 691041043 760512741 345488867 239556119 461332369 618490092 914893747 894401240 677470171 410163657 357509174 437894850 370867144 575188201 603680423 60081693 508888108 698974645 850879158 130432670 952277990 405614118 438461217 749712886 311489858 464257280 760847166 794526506 884817061 588865021 730872053 205656106 646150018 585426713 726080408 30886238 916633461 84562070 686923413 330636032 314872387 216395309 771312180 845739051 783479151 716605796 922833447 9169924 235051535 560280813 481789394 760198563 528456294 133027735 601371453 855140548 579928088 481718411 39703331 490037793 868207268 675636484 5867153 265179487 616361282 78417367 119985794 153907639 319447912 574939785 943788427 770890465 807677776 985559194 661226759 687146187 754444579 428654627 450451790 578566183 479701964 650608675 40653503 688012886 286258070 316385991 568143650 252484434 349132374 527649769 593125325 590909677 920931896 479115105 599922517 687900413 222053575 854206410 853873813 119128188 225634053 899940890 788268483 204245078 797672758 652193700 809938315 962005809 977068214 857667376 582373909 512300944 204553541 182802341 715726345 725087335 222899200 353799543 293208743 947782534 196983498 417268126 364085782 928770864 962740196 447148683 760904085 821952425 865719556 183022413 73145429 670692627 533224644 8478755 207886356 324968723 792186114 145363121 903141282 982825362 353581484 815357787 344519357 684604076 4280479 4089169 248798239 697502968 172912580 770352495 649913823 208501134 973789579 597896555 251476273 36090115 730446736 96804779 708804057 789184220 651367737 234076124 767946529 392360371 173200701 841975012 434200308 139422635 822715975 87426742 261292729 669169279 812797338 635900495 459653292 957544748 1559113 308495098 745191 655051709 436462006 453249892 165697886 915544994 794056406 658432715 960341934 52365682 162722233 398053023 621816775 267602137 550090239 787011340 358261560 530214399 910571044 504900895 613335002 459347092 714525725 486426660 281969256 238882589 215213385 137448942 730621849 466488108 392954329 494229161 18171980 288215056 831738177 615121726 507466666 576816287 529250454 861549332 918786168 60888386 631963647 535010697 913609979 537719504 264079377 940873917 798449767 110531285 828596412 146009346 254011048 969319430 349944850 912578979 753603728 456636977 58938123 69124725 810781869 667202581 227779445 20139168 636284068 193017873 758064851 449674444 758033654 81527824 433118081 903348255 62085495 359601293 990562495 659403448 505305308 13922504 39127835 761480656 797350424 771139361 613095136 624359153 155673317 598689231 518660482 34491740 496137870 726981275 422616550 187680215 336458028 568747911 606102086 546922352 25172914 128541914 902391185 431584098 535018225 37045542 49078135 529335315 340696627 573150825 689820778 348433574 391766643 352203742 352340448 597617937 393107253 498977865 673474611 734144457 279943489 756203995 365174507 758164879 548868940 595820440 619514330 629420308 249740528 597355585 16127716 521855969 421537313 57884423 137157943 593743083 852890534 786449837 834337207 954446810 204809010 589603154 976839440 898427606 826547992 852589322 740939298 405502701 99054981 628454922 737409420 37254857 158073429 144614897 877389282 357276513 263195585 813683969 43741994 132777033 216792043 123750114 791131563 1395981 375152866 182013273 89669709 400317970 493765430 187773644 316503137 512799035 243590361 394498478 163262664 496540664 941396434 139196987 491649465 687568054 896157744 476959586 758701735 299611184 516240344 606529153 800449866 722822666 798540833 737805006 241774082 479020471 612904627 445481053 455853899 336444023 298193050 827702401 558419962 20421574 278741787 889444856 434591634 785500431 280625394 338294863 91892456 735408050 859079197 18002094 825548849 985600616 28138070 678085758 783663998 721237707 318548695 721785106 263807435 720628287 287971213 607978906 980540416 355920800 649071233 344310507 452908986 604948797 5241676 604203385 653001799 207162187 327979653 855126174 493110046 470172158 279719532 842141600 629524909 102993638 624996153 967157571 93058720 761609215 604674775 790638420 384479761 130127125 4782651 962468299 514768230 149227536 563965658 631483924 820786263 798542380 779260776 759131251 531019120 439726174 210566139 267244613 77594089 938222066 780089373 94984703 453314581 568396600 570110505 938586565 673294826 721222978 266168714 493575536 699601379 361162644 968791886 24454689 297273286 639379370 345138926 369511195 893319214 720110791 611334670 622633628 728136217 443828290 597171236 324445357 924055163 773210929 757489274 171475442 597601141 469783203 523406961 340283826 620875582 698234201 769554515 853308941 646909200 974771981 359785765 254117810 944413322 696132654 307737613 350245308 174016086 678414538 463873200 560179871 526269254 605955020 670728036 833769346 93237496 820667155 336861542 658852729 412221427 666407266 134285718 330094599 308579359 240324999 940358155 354824489 656756621 234098695 534300230 927384211 527785728 408775645 602520534 424466210 797694300 236043255 121459453 766309213 713680786 993883621 75220636 880532407 154241488 199170119 289048054 529517032 28662069 468627831 332485596 447584982 231704217 570929075 594906460 403046062 367324772 353483519 767629575 310802085 481464644 976216574 187654031 44051282 752667648 355123118 392366082 7803347 582198822 58559188 860966214 248112681 966300488 297189033 97209313 623390370 656035853 1828309 328017901 786063102 828165455 381977624 968537852 649508231 410399946 270040013 863243493 882082277 464819376 277726027 902331723 409834131 304018923 400017664 368225917 101743638 353000751 801014568 224367144 514961104 840649420 648834524 99444905 444458005 266188319 121990724 610573635 186744869 39320349 128724678 936880803 901160474 825414480 454871681 536570156 160940436 90054008 705287785 178039149 444953468 840394871 525143148 201641804 455627656 469310057 942083384 203609508 465423238 100567584 292106925 140235035 565725282 765358647 255618931 173841072 522532029 713090304 612957302 772013375 597956023 416546919 562563678 325318874 712126187 628915346 201328110 679046580 108832855 92699802 684342140 661579048 274683023 672404868 956994584 421692317 101311942 138173573 226661945 46959865 739024711 62365847 344619578 690880759 492541197 640259717 976771820 857388983 744936977 245313521 326206242 874710029 762116273 680963640 406563377 546912900 375400907 39091549 455366200 109135049 724308352 977409164 663937922 230692543 985265676 745768700 11381825 189938435 903741315 577712713 3835550 246092900 220330096 297201162 617230454 336152283 282416126 652523263 629667807 502891422 154958622 512049466 149477615 807265947 923925440 45810597 226708693 881314024 581046613 697288153 372636392 332701383 369898631 941530734 59321233 230258247 375056257 339641340 62058343 975565008 143250522 571737689 53876926 188696422 392083864 674662226 237334844 372894485 254573471 309401366 143188603 443785515 661018262 753569976 574771326 167594214 38339681 360683513 678235421 138135417 66223023 69703763 674684642 456491033 23272972 905062397 843223170 891586634 23155769 130044893 122274028 607704622 934090058 401008368 38067224 895765536 955083904 353162864 95555958 758656550 295555413 369640705 549516491 470707334 474678623 413016924 95901418 308499747 512420343 152042937 647490635 90551480 777875412 624982497 126301079 566415765 96089126 412737018 178556101 826460650 214184615 451400636 117452426 184043218 968094805 576523332 648344588 70295867 456504828 747354489 556618986 972740851 118815878 565974269 785710621 488723635 396192588 135100249 850182079 150586779 206644013 768798282 327418923 76775809 154230288 726214725 320196773 187493685 809990951 628674460 78499256 969276496 389519581 263167077 458737385 87325359 967129817 524091893 173322636 253675422 29728906 410357711 717122925 820844685 535291079 181932430 585244670 989220837 164978935 352954345 382718821 25486642 54781177 721025554 699362613 688764286 354690194 287282322 519494464 992170842 499912342 602312001 940637065 732563277 285218158 245630985 750318956 596885859 602082157 602190934 526547033 723636085 4917680 751974413 76556888 976270332 948860737 17007588 272900356 287988606 882567483 775114202 837222418 13260981 923818010 866884265 885771673 40125710 426510973 573168406 356619658 137527813 999606849 295296184 15408186 813865835 82658384 125607963 686379484 544026904 95936553 228379286 438048778 529350074 907123189 735482617 436974556 190382191 143267940 740551131 698866737 571046674 570705811 393969566 467115462 280766347 957038343 706470387 393392777 696514191 420946848 912166663 632269467 13102565 452850460 824362014 79783993 990207301 570791854 550501287 659899532 989374259 27811901 135919761 175182838 267950335 651683729 866274070 999314353 233691977 871737866 471939886 674775656 373777823 377953696 820479475 698865290 215655477 714870772 463422391 153511302 882641165 855439191 576835416 516170014 826303086 316233815 784273438 139933913 942812536 842005721 464999889 43422267 271702330 447227857 781752882 766198206 660323921 289540882 857135066 476007138 79573909 589211846 745124412 377667592 540458241 605143573 190259077 496056329 433851595 509273415 835468126 944197119 962119360 517230889 728282369 930943332 745831784 797647924 742079686 441395500 589518906 958869917 23599709 152022643 59375193 57575426 251054806 484168745 831432642 71302415 413449843 983851295 45747176 720620482 727084514 877082718 538842218 40376802 715540258 841306836 617670543 941270303 196142872 576182050 667869654 782291892 793263322 545296484 665584333 227135628 147460064 913182307 301912787 127562193 452569114 581891339 558146219 41663618 376392990 7358637 758342070 921777153 955841632 401482036 898872109 153001121 598850413 157842330 361386932 447548786 67191526 567247260 749976129 933236102 210415159 52517700 559153596 172333231 48742773 651691953 539469830 718413848 811617337 151688313 642713410 737079571 626569145 704611863 676238498 412285820 991444856 738516529 490357719 924661282 156721706 852089751 343040410 464028630 15799006 886228700 189782378 223603649 992258939 323154110 121823483 997116527 999957886 308676078 597331652 673046 100498918 242892606 59920452 856272598 201384930 952538221 288244671 519850611 353642295 857339741 651118505 680600031 627601492 758136294 910363200 128259903 36432137 999627087 909961978 470252372 566652669 622220841 474194565 669539504 414203653 736487241 225915992 825494274 162762498 589779455 802572939 889462788 734076719 515972054 3306236 212050513 476773355 296651034 873589792 282332092 341573257 614987898 271514322 428761780 82183783 60278246 37255916 797002766 585192994 256080210 958270892 152877882 815912967 55208081 228038946 597406206 640150030 811797155 451347590 778625926 567736143 689668622 3240023 994888277 64882824 549401060 22099313 947886080 681290521 70254942 742212200 371221095 518767627 361366333 263721206 408509273 644148798 792414620 937969510 160027391 925455811 273214137 826601187 549529177 87785624 618112222 901001941 335681035 701560345 721874429 25100603 553450968 288252040 475570431 406916016 768485260 753585746 521129760 309800955 119116524 664724219 411387831 185971636 923501669 489628077 101946880 474958257 761617222 767348079 708440194 430627478 698304516 499295409 87335043 5560075 656098288 9451748 323442407 761213878 375990799 509255832 805023848 518846691 143212114 705520074 952404336 827427371 348177644 94662825 888810481 536417652 652709370 971376860 471871792 323711 223794348 128789495 200311789 825598076 795553962 390053037 577517748 744749785 96820000 629388620 879857992 634521751 144651341 576049905 196691072 215611020 369723814 293333752 890193511 489119888 771495013 96930418 119895529 857822001 48199334 291218290 140863501 603375592 388267776 996261254 132676945 747165673 156005186 387506307 688991450 777366530 238912184 652293231 40266960 369987692 513884049 371446175 690103624 905854121 874191759 567604939 339406170 327546995 458510905 171983704 191746313 108394039 141952648 520216678 725480096 942965029 385460448 552320668 355133795 188141395 986338893 79641768 463395505 639879073 67200735 632880686 283746443 827600539 356721602 212713274 340094476 850082987 276561952 408720440 132932504 481133074 983806663 261508193 205202592 51664055 772919819 524271285 823273229 654080418 56541299 833532768 500961498 183584453 448038668 373038317 332455492 522688131 18994369 88340668 55556161 867160333 384868554 242225305 232162835 147114460 672408402 144460284 422860720 553479083 760723346 348476009 808935186 805007435 609861619 591952212 293439804 123571032 486558632 580574463 281567155 110367901 643556451 758873255 429951344 166870626 798644834 358463145 990714613 513776981 16729368 414452560 926924100 722225545 917360211 48413233 251877019 637228574 797215031 270951248 90138430 980243828 187820941 579851739 441724985 505878459 322295575 842951930 924838926 614766453 579782556 858383816 586434122 447431298 671010318 559372714 204109957 551392384 144572250 983089646 916309526 124437702 145209024 778824055 243439645 238962690 271269501 687026080 516719986 675190716 317412779 219628769 264068133 674583043 339851666 768335211 585495930 69318423 33547463 985852804 780264729 371826694 541746328 92850847 716002760 757998688 831425225 367743832 135232599 854518436 788388514 88640342 884396723 600667920 546896326 700335353 546613305 588810565 201785030 611743597 880896726 722034667 756051747 843815355 897916133 527707059 437957286 315096253 157796310 435603064 193810763 190326679 231615827 25369526 726066703 328188598 339201357 188379446 687207922 910341729 414880736 412660168 754081709 721069451 241975231 691964201 573594528 805208923 724622457 644406727 114029920 877665979 919482562 40130978 22724099 150591960 532313788 389645707 206766417 454867459 746361457 262546361 94965057 329947412 714160355 456358229 753655455 899823557 945747859 473677391 794754480 256580099 700149221 873918646 87411284 619281770 851328023 115778297 626984368 635917395 810392179 505355076 452548767 79755512 753165566 169630976 316992041 665996164 690497667 38017707 71450678 430318152 361520089 182783838 860801974 447861020 207224123 616040502 629504824 525654177 615796050 79181212 901903696 368702809 480336842 962098758 178510651 58636168 308476147 901926041 480552615 563323992 778358457 562728083 194794580 415967266 641673374 779613927 372082434 237049674 925250094 987386602 928160741 550822278 585282130 418170996 322374078 35686916 163521719 907188176 19245212 54398996 723873114 670354924 964977433 81344856 139600022 540230993 124079972 451069960 950404177 322050693 270761354 131475715 721397968 835451007 425618247 33522984 799178260 732595977 613092869 274834191 388263 122855348 904676697 384462972 634328426 942450797 42561688 173841870 187971969 423593988 729211224 315695490 421136335 6152318 426912896 546189365 658991914 238554069 56602325 124838130 662301813 420004610 645371126 144271075 901383051 760276659 563574593 912219601 16266145 267823292 130930851 468064086 976078055 663458580 551387600 33425760 926444845 370557375 471361197 306624600 662426102 260603347 408364945 574054097 320499104 880270021 214650051 254688236 380753539 215876512 87881294 500798865 244189571 205008650 963558903 339938181 631460026 135926529 531172043 112295150 573361727 752258658 363576499 235758127 428917445 835723653 212445818 601046646 937480218 900648337 408784341 631808847 256242722 835041683 187082574 986104761 626127545 525579310 979959049 658015745 126058489 265582687 702777094 374203515 277320980 600756696 608177520 488054693 523585186 34475632 999158324 207574706 922561075 708341551 366006471 638489810 458725084 71157671 235900613 418617314 681424842 579152277 874448204 255759485 733044749 789012565 17536964 285113180 656829869 976029811 436045908 35694382 929720834 424221778 454878305 631778385 451016127 208017882 878282371 59096749 232944080 927585669 117941 708600106 210173572 791850014 273729514 853585959 132646340 544573775 531958339 557198949 202395384 631133220 75806353 482102578 132349891 516938197 281626929 156213818 192294964 194706069 700778449 738513817 256115709 157361226 291868554 761981925 142207514 874674710 297146950 195380022 729296914 131517179 233907086 786575790 485129241 223011397 841350466 880643499 559333418 80093347 272085902 149480909 40503260 432737417 476204466 532975877 590460923 645845754 982565523 861188423 244491377 589862703 277159812 889913628 156033621 174496031 972807497 172826720 869196629 172617637 296124171 364314914 11854006 410157837 96165850 116079353 296945727 421015847 421678543 508432532 973029179 770926688 960097577 851685901 33437845 897973631 725232047 369312892 104463831 449698856 685241313 137508544 702222795 220464541 916993266 407539646 295003455 147950450 735021734 703416025 232864473 184127135 466726466 273565205 543803679 195842284 35529916 137897410 453573840 979991588 356643376 787510584 574257853 55009834 891843219 109347221 990250157 127956995 904892235 308982925 367261855 991223426 373710457 625739858 823922642 482336893 571030947 331785412 263477040 583221913 31541280 938237711 638063944 956914621 725152072 911351610 390290966 151725611 613282220 581361868 19570279 615962110 633508102 908919608 8173429 924984783 560505679 808842215 589736344 787347252 76241450 264175949 67699054 315581798 129064909 844034585 52808612 982040055 362292302 821221236 375057939 169385918 347253529 588403335 855871269 191727180 101559596 797869683 552452155 683782806 748797517 623852152 791862009 861046427 906042930 166858616 954890560 24171911 47267887 884679569 181098156 701806505 461265772 611617857 194188200 587638867 842016741 384569716 780275277 914031972 769821284 846520481 731567114 333510494 404195101 58117298 569915870 240193260 619818098 147894292 474768818 474947359 436838318 137899983 279837826 772982154 858191229 338282707 630426663 834005774 236790643 904705621 85589749 438809547 247843459 652233822 594672506 428075095 302397057 476213121 995370628 938342092 960160853 346116188 285383277 432997917 555520916 723814024 237605249 240382770 579506615 254149714 729193640 688569248 259819009 77046492 195873014 397208172 729469483 152501912 411639650 770531622 62804469 762255716 204588127 726481814 451534333 533081330 875090211 306545226 67983295 422104133 740370510 499451471 92191630 190756679 372609207 71905074 785007924 14779522 608757746 759312210 477958793 408813870 982827155 464008858 577076090 494429850 955191242 55802575 851196022 105220296 433858740 120964182 942916926 180595978 791681113 54740987 543647993 575883382 521445863 198244174 720907228 263562610 925270702 256805346 231590810 200811986 144395589 840179375 346543115 643670887 653601938 740198637 614319538 675475885 61101524 26606968 106262125 176948984 682589874 484520779 647105282 693703023 998346198 60948004 633042475 621335180 373161418 630528307 522904718 333845915 785327320 196277601 591904300 209354363 769526675 935602538 712792186 936756482 667742147 766623650 934664923 713615429 792960811 924704009 595845688 445806835 44685618 331038571 69367414 990511960 978998271 69495056 555830364 471369595 724174978 174915558 612439015 308636842 653470303 113375946 37924392 438431673 544432369 21008754 475076968 167515167 800493222 369220749 670291350 311042978 951110162 603731045 148011220 690955309 501881758 75071577 189984556 921054927 490159508 621646483 637486204 395313888 617491392 713159187 598112719 177416908 228580840 298484541 124376046 217137285 36957570 728546563 550831189 66804854 937435188 231228672 884580340 172830738 961198917 341625067 387184812 274253644 300383613 531105912 560788171 175878787 26345312 934936757 736775542 378479905 570009917 925283433 818303448 821321161 183635504 843392780 98702296 890854287 478861350 570791239 518576828 251598601 985146620 639884025 702394879 457636805 166258051 992912939 598081517 769764652 422766234 983933545 562092224 722163612 838503206 979232978 68988904 749071856 20515589 355026010 563003836 279388468 494261466 169489092 88510793 104617395 271450700 986319409 53275500 274429583 585819425 962858503 195027368 669496609 934498381 857674692 43306998 86449767 662355288 289726384 634761669 168220206 900566426 447455190 277559559 304739306 186727976 409057209 608411823 420930014 484767158 35355297 440967027 497235312 186545165 751100463 382106460 411392365 43624284 544999613 393926170 29756864 851971295 353335381 228303995 846825784 153485601 534686222 688459048 166553384 196914353 106553994 506814569 855972059 413693977 570600584 540701373 666995029 897276303 762646567 74118257 459527922 34202619 476096176 721260953 56754086 888767763 511394626 112813289 57327917 754534540 824482549 245680911 856300015 248864438 512094555 724306420 399283510 566752393 137933633 845326568 667787524 662364795 807722062 265918972 599842509 749292709 664269747 69203282 446803836 82212214 924846633 237819053 947952699 216872443 361519601 120264612 329831664 786361355 397616951 352964304 611419180 104234807 376584564 947205089 202076656 560143167 964477926 274542174 242582923 268280783 699023389 476238645 18957835 950143562 610370285 738218934 17360349 660109045 153032618 425015320 795203387 559630940 251908973 709696637 311366912 502868216 939139565 544263100 208837121 824509832 461124230 693546368 422495265 402409881 302996573 160047659 348145284 301105498 418268248 48116054 773786461 658866121 299437198 114877071 23545478 655973498 300897115 456139965 841287383 83124117 984725706 842527208 682941578 97776771 66035686 439878687 922118065 504571915 312066615 973493189 518199046 299348461 840758096 409480181 36631191 249694241 239012718 824957765 508552495 924849932 333083864 646898023 494352090 12524313 695979897 562673565 982653755 833675811 897342101 413271247 371109420 878818236 568309566 680299910 801828476 107249024 381520619 217539615 120974144 756738686 383324291 193192756 398105523 580265596 456998515 51195786 101703185 852965900 605444914 478521479 46610959 152632073 475203098 194705710 523640944 647986250 282100652 505114787 924013830 173530959 661206269 584549458 739442021 130068023 655185727 944298780 671218861 467193696 375429461 867295102 926532981 509874878 124479593 159498167 930277810 627566590 762406384 319662375 897869840 227511935 909131746 592462209 341559201 990900134 610365949 681398910 14312775 873535861 448209798 396274006 387488149 972778058 971632665 620899562 325549007 233916020 564610007 383885686 738716840 437227631 89788234 690757882 205916968 509021256 597806859 366163040 184496887 66590504 263054450 761843755 793753460 304178092 977249190 356445504 119706330 392839264 427398480 754336592 298522577 304694278 626132894 731475731 291150815 386903610 57199154 652879203 660884946 427924125 18911058 475379559 392733848 843209307 164895664 927365267 251101167 559063306 60318578 726629414 421758996 634508298 603327729 236118487 889888308 501410924 363840911 527582148 263418975 912202618 594643084 8030102 710551979 900127162 124101598 788923744 53275520 675277210 159807305 419121120 384863159 597722062 380969253 215924504 352022307 119613127 983965329 228791224 677457189 500008928 300836930 483018423 64600194 287919496 805570907 309675508 422661543 307116707 751157125 815197438 154084658 101784005 921288497 488534157 771860704 542375061 736333232 839994631 243370997 542835927 640203451 950233731 770136925 76108892 24305233 952786292 869117683 831692927 248777033 877315570 458797631 753740107 556511872 81008370 830323821 584978063 966668984 58442988 519383207 86768606 52983060 347279951 493092373 55180917 741826133 828366051 456660730 301252259 887951296 175383831 735986469 209472749 804368954 884965100 485994444 384618672 240104622 998722408 729865834 842483526 465820229 8795928 319159419 549435630 831149598 965866315 84857134 672914193 843513360 901118103 935785000 826361080 414822600 53613333 89012126 779656601 284602839 968878978 760827720 906174582 701149461 975577894 38470262 233342627 345939507 721344190 138356806 675391536 520839314 451345614 390332733 363827436 740571968 935513361 566301764 292339177 917388004 527044213 484296978 641203983 381965774 948307594 223612489 34391728 243747529 967003390 191477919 117902352 448466501 855353853 815312369 554274276 808420802 365562255 346682907 570183715 365430068 359405315 666341648 501028640 700885470 549176298 928570179 135715615 378971377 203165871 630108516 77278898 709128669 153278482 800560911 12418301 111320796 472631942 268411620 294769282 569170796 205892816 548393888 420208832 166367193 504937626 805856483 278016462 417778624 900392239 861955113 113645376 826496603 976445083 193169518 888692184 811872988 355810690 598394492 22205055 171373451 836603651 195931421 39940717 867836510 519838380 831231009 887871678 117085578 54313388 934844268 417150372 782202726 757559564 432050301 598852882 151072741 278609444 915537388 482004392 692685863 856837872 299766173 564888957 888643277 440603317 282269120 337503498 991355040 397891433 903844945 815756276 226741792 121040413 460745307 48398130 55110812 84146639 115608355 500687245 543770821 511714881 326675412 918049909 759137490 120028501 916017524 213600557 802924693 357073564 236944475 986506773 927667181 968718604 868227400 992421641 866331097 270304396 668064863 657052826 392111871 644832889 924917145 436281914 871023828 802279145 812065367 13830066 890152782 959314709 811460420 821677426 625803429 574319901 405953351 748197701 388156727 426271790 523910544 685425181 239404777 709229294 735623150 890051975 953313537 787229046 467935611 883368092 196498288 226584125 839831556 808691900 428442356 361145875 439883650 497046732 935749617 296942453 924202614 650809591 174488416 859871506 320305884 459763771 82053870 493545588 151833116 941958094 261674413 387288246 466950091 471685402 955838039 322175592 886023563 424873419 21694311 309603632 202690544 293578699 939247771 792229912 2075577 147978362 249676572 755128169 795733915 736166932 702221868 846819606 300500871 564476179 23123649 762229441 292503621 468680039 716030989 262074210 408344910 386923511 11967841 239966840 356302788 817794102 927144343 420174193 803730786 277133306 880813182 208023679 603240395 475628194 879037746 391341975 586876209 219207383 600706914 815313669 380222871 319329506 430340182 890416215 156470717 37869271 130520788 151010074 168883046 400572195 887311979 473385332 252779155 884589319 285367108 907376812 131831473 697352310 704311564 958660835 898681720 329442153 381858561 341908560 743288558 364202801 65116068 637750015 680498067 468620648 726293804 298714543 86044004 683196951 791114713 278879291 587156638 450880557 213590506 333825422 279553297 879979724 467096052 681377866 872047358 690956158 388737778 859453847 309730395 962424481 639510834 224097392 670579827 611230188 689806451 573426527 847487028 695432924 918368404 459621736 179633313 990561323 575056059 400473151 689668190 533198628 214450046 217358790 909639663 16345283 270934525 654436708 968104295 810425033 168122577 364725373 400534790 940015261 165908949 437496686 623565246 732529536 89302850 583876492 383391660 631250958 532059625 253423760 102491026 389162817 425405668 756571953 252099946 517593147 34383141 922898759 175707232 597912804 343020463 417923047 491086463 833291349 513140140 334711767 107876250 712667339 395983488 324415706 159066736 235839759 583474876 382657493 465752045 586579184 65131785 504531084 715597751 372721411 762420071 113610899 939505850 939405341 103477974 202709623 945886934 524295019 406099770 370625083 88989752 574702065 157095946 443030005 781796115 166568230 93314677 802307704 955633910 73791157 833921411 970034567 964283379 931231886 521350166 531194404 858875721 428662711 770208457 725661760 603670985 934861251 412385504 53318095 607304627 953549376 448280857 209386667 286177529 616219865 41480929 554864771 729936469 143889978 413488606 676468741 914622592 736665794 844322167 252518608 788141861 768125805 381541796 118992005 280663758 711226149 294409300 48355057 770989649 929703523 160034971 471985245 865077926 615845163 272132884 910019482 748239965 992944225 534105225 563887927 918251910 832679134 244639518 738963182 771186030 51011489 524469125 518792302 168964726 588127189 987667721 932839220 721139872 857393849 251210083 961576548 851960260 797828712 590230968 646492651 321705845 155454242 252315827 363385026 620229201 544867851 884221411 792936451 669781743 492686179 792155993 218492651 366672029 493401077 437174853 743042914 617540532 596904250 786559802 577218541 439234628 54962933 790770108 568045129 373633372 675961194 82966335 508778170 135094242 214489616 274312719 994913574 253600401 629540415 183673508 68697198 234261948 304761195 674298785 509581634 13061132 360077678 785753897 558471825 791304488 647139389 860672772 718341105 492934267 723081967 633194562 840450497 585827593 686793140 961955196 311560456 296941383 68434869 367540433 340433536 949639706 201317221 958247804 425824954 418725113 653657976 642011768 375128740 173251324 450200012 949512663 696432799 165281135 782298917 442601917 677781933 607005626 577549146 804976983 980433318 496424165 221801368 485631919 414305622 647229082 723367056 388401173 493042896 256260138 260983702 658381496 4769391 88410740 708492433 507512976 128442563 719538064 514796062 111183924 884811265 48937402 565371490 10829712 800802008 988988979 842575304 195810306 545111953 590982237 81604611 153523567 200155854 372108842 779989215 104390892 683327395 879397895 223461306 236985157 505552798 244908548 213474840 472303892 872204945 532516234 245236023 580997823 682531860 736906162 375260585 678692820 779662617 14469286 971549881 164793974 188097989 33205716 579198043 932325388 617829873 389507900 402141870 940208644 215999883 604959720 707460414 794143241 359225961 195212090 611880991 475116165 583103114 419175633 40863618 461800706 548698015 373460515 464089105 183821431 416861108 194805544 293421025 12677870 85153118 908656995 69519709 104176239 771928028 593954124 501709864 592640948 23259101 846326851 962197097 920886494 464838825 574243983 844204075 107023550 437913795 594586011 699352089 573792363 973168792 884851444 323434122 719411756 780673314 737795210 156379419 257601961 2932087 443892244 945185086 972641018 493138424 951371296 104246487 815206225 827105972 300627874 858994703 602472492 497991596 905165178 854898177 54586280 982971005 105270721 362462052 548378203 259140678 763890312 714728997 509510423 632609297 397798636 547495226 666993014 346912728 675489052 49529624 609640795 582749891 394719727 333979729 850620052 78873461 30493555 492996867 606213657 909615366 92781952 740580004 14789258 123819325 967364761 402518423 676576679 562185990 801067516 152423796 363290630 114105256 751785163 749787257 759512238 63128128 852476394 364269188 928031718 52833751 437538763 753987377 58357344 520353027 718464803 231332180 367002332 964230096 804344565 683198998 400215046 435456896 884232084 43673027 198617074 191951680 522574271 476137365 174202078 722711041 363603492 292341829 237869374 853343276 274539385 792346841 281292165 305778864 340594590 282692472 894504597 316382092 541524534 277380102 764263686 262597531 491872558 582268759 134409528 722426440 748764028 614852556 494865618 493131514 13703536 955567047 180576325 991118996 454203070 725608292 882654930 43606987 180515855 705428833 845432112 693911825 976362049 408126260 470244671 273504868 409505739 420169915 647852668 230568596 21395004 255923978 61369436 614759871 950199045 15739740 933455927 263927944 706114424 489999458 799571234 375904387 144946584 1502881 989307609 723677863 910912407 887691586 645252766 868770499 327098487 229227054 328911573 883958928 587837867 28939569 87752719 608044019 652810917 170026716 968713997 652209694 71790886 981783289 959815036 879436542 87835925 69521527 757238835 767196853 783146839 545100597 500465367 571600997 83836181 495612620 450408188 373443298 658529224 954034048 787070038 199135589 122016404 672174226 951487283 414622955 674111834 798778313 12677319 730608309 654163841 467997716 944104056 145539821 381080838 931289225 289268632 843886451 274887046 645663054 254246301 936970082 685968726 419207977 233498107 756611529 142062673 608140641 153793787 899197557 103680937 472764204 461831071 470790097 396806282 862948678 970574848 207359664 237744412 764629748 830746446 948424497 901186998 596919229 667642943 799592851 601942848 55156874 461693598 393604482 694175100 687072450 509863465 654791967 454792079 301447291 531286497 457083796 513249900 749085534 808192344 593448499 733126596 589494063 647756956 823627955 626398880 119821999 649723558 486514445 679242536 200707688 993233594 171860010 802586378 373654792 289017575 841360214 97636313 27952884 988579423 839855979 290978102 455936880 84061683 181694071 285386312 372227248 852359052 548055196 215626088 943176626 708266085 216113936 676482441 444435567 552951928 680022947 228563954 102388670 130150520 109549538 197806028 762507895 201412611 291478368 162093762 290484800 214233392 536094446 213287663 661752276 26694328 388817801 984867402 85055174 883536640 438617279 130579547 994921885 875462064 9568501 931731999 37792175 765197549 684979420 706510836 920077768 807983038 10593080 698281530 397305856 857570541 33739174 373482466 830593204 820448556 798238711 275526177 714994944 516550611 74379429 773229218 46335486 866122859 373493694 150297833 971622731 71965198 311455121 567377591 531522627 219707856 348395726 770926077 83778608 863108551 965172211 824319537 321077904 320122118 354124890 22484858 964488952 557259958 152592456 791147904 467497373 12460880 448875 920523077 239642504 397176678 425123859 522524110 977101203 978697412 870113246 982393063 162346694 620408573 992981206 568850228 105304046 649504771 166514172 178199087 689731866 607650638 786728363 139592941 785654318 812640290 511485579 697919032 465068382 811110039 647161345 211668125 989543438 242372744 838082149 733174800 709650562 169788000 721725998 934381189 923731969 147130518 7293205 403775724 447833644 573197813 314742572 794376004 77263002 250668144 212885651 786163588 327839303 229051417 418151910 566854663 444613860 831355013 269204487 605433931 596114310 322731792 417674441 563621471 725107195 436559159 481183934 727834261 116660115 242782408 821763424 156744751 73177472 802826189 776841058 154433552 366368178 785960517 221254340 54283413 244067671 324861116 339669378 953740720 615549719 282780560 767543287 987120369 966372253 49635476 584130812 526872017 601728900 700716508 264104948 41438084 637755847 490793358 143030338 295454075 533255163 753222238 996780118 698120010 378792246 767625021 500438934 599292265 87979835 910738660 566368823 980398258 430887400 883580680 472452345 458787278 245401118 121012880 343261806 517945575 979464787 99740465 245424818 61451213 509714254 175646884 399038807 923604310 728036839 191396155 843253652 106675789 559207625 296668881 889405596 615410581 26212254 649735321 133824644 694380935 702524427 680331784 878701085 167572964 806245863 358730303 565015433 64777204 936930183 967600319 670645596 8425499 985524210 360936872 701390229 428765317 29780560 760352511 701396712 856825428 243091754 969948957 847790687 460227322 494272140 720459058 892693513 285967393 604479353 483292677 324339691 589402936 577432719 20498911 104558177 904894402 741893497 364199765 89220554 451072977 131066895 336149809 821055818 606793043 110107209 257642918 651637117 703200711 866714814 983609601 192857569 608833398 625665574 840480880 575841797 210883073 874008501 608572316 774478387 210746743 408758858 194342678 200206154 29523617 779872424 444104859 815076773 184084170 454927662 58433061 137427461 400148650 976078822 842611194 745685937 453959335 77632485 288053345 494455247 113415207 544071332 680263376 980002824 344348001 79962304 110153919 825442901 13223769 152027325 407130631 85527528 900155444 132552692 600684060 295193832 553683281 579384496 764708593 704241579 51396816 791982042 571050626 317326752 842952692 834124711 929827695 811736969 781741417 181554018 832615946 651566303 279511874 450455738 311315654 181316579 510358272 180954861 305236808 242496840 981654426 299322182 394604138 57937714 285055091 938460699 230029912 565399196 367239049 368435797 561808887 288160138 71780731 846191745 214701767 402243412 500842732 308340763 874084994 182979893 464617203 766185276 503506135 764463547 596737449 992831173 601520894 975276583 903217338 498611530 316247281 775267055 138784463 912491368 122136891 342288586 417931146 90387357 497861007 341821325 344033710 771033500 229752166 645753422 333815535 358995324 173972431 771214130 906849269 46334319 263645388 981781039 752630477 102169872 50286197 961450378 322759098 801164682 387709662 582329924 282485969 585664157 485438399 195566990 729937590 84194696 611222125 742712037 695348160 904569633 227636520 452681206 856376393 908042444 697015505 26939581 941064651 506113677 342636473 516885039 90368072 735469807 205396965 996484606 926960633 977295128 982713135 790214723 491497086 209083371 176250341 687273181 426367628 912723932 534817377 519698769 829083911 137506770 318580672 643514766 941826556 510333766 615336164 66746641 972802570 945503650 234006815 832953011 329484195 535598113 386917312 76983007 920996282 117459000 623643025 623589409 683737799 960984181 970702525 567655406 508801086 538584139 900407834 151869180 400796421 395258745 168679666 858265211 311598308 567634244 968279051 429014158 33057419 616087378 924329068 843066438 793522325 140644957 331601890 797205846 869494234 511571402 906964001 425956529 315555183 452843563 705384858 841641315 470610990 729817336 584670743 270023085 144573461 304480691 952392586 57683604 50919289 912040632 451244827 67864862 829258262 876380565 276713421 471913257 734992583 608486417 724598662 192799377 101858571 161298451 250633305 751420961 749072363 709962031 882842044 734546727 291240162 604223672 696738828 63600662 482094802 68927342 986175293 544920931 252320976 945790144 967619260 770637714 900488037 545913438 961453814 302460380 330408679 636725024 220663803 569313061 622276979 238753195 571983209 509663730 601780284 689980254 476175047 213479447 555719315 950293793 637576138 577030256 192146553 49702716 381936472 152713936 625896686 917054684 600476850 240683486 64013219 547517666 968251427 752286263 350578846 861529520 733293705 577428101 165522576 762791344 813317077 648718514 142569583 138540438 875541267 482810181 136165177 861762299 155841380 309052596 961282723 205260934 691757315 36762920 105816287 878531416 658470714 577984221 53081477 217055691 68015243 20598157 550657105 65662758 437645657 115343003 541402619 491817405 242248500 275202550 271605033 864100387 338010477 474408566 828404095 919899934 132668618 975279729 671312515 607202550 230432751 764624245 668446167 725694045 685188329 695571669 24079162 864041089 413044593 299031823 123677503 460711514 929988154 812976898 398831794 443648699 997387840 492315870 486886685 123478038 466465611 591548834 20376632 828159282 689493049 186149519 640657304 931668591 958336784 816409422 87908536 870543893 35997380 257186540 596848169 739293912 591732881 405196538 586927493 551543970 160229170 849858210 867876686 756318099 322315631 305091553 642030587 406844416 556896555 686885209 179293973 219825672 462351478 626249804 740472601 643298778 670109411 945532709 637831097 992528914 462363893 845491759 547190554 577570755 189552699 185519937 163188104 256981327 195540634 627989015 583659175 109001499 709306583 870182602 581765890 680275411 816457676 859165274 628324745 913458650 788695925 809283508 913623369 931601486 920579244 273013905 175824648 619404511 232439825 324987769 946182128 20542513 192906229 104226565 174129168 738680723 497290504 671838679 197386828 872431483 451949427 317084417 330495796 274642402 427451631 313752206 978108202 291555799 947574504 175052075 588300688 902377961 24434990 256983519 391955672 682768493 257203939 486027734 155094949 455224209 571553248 929848935 211622726 609165969 501827486 143480096 739764576 730198441 636554871 819009288 421607213 123012078 938543919 147754555 854820462 59252038 642988493 821665079 227831488 925231423 385432266 143204809 541852301 882520236 998424012 417841263 439034844 692130878 597867263 383553336 616173649 648848733 517408863 875113684 586036480 964215932 727843323 157395780 298056104 456500864 795165909 803501469 361423207 625968217 362456132 133496892 117569591 49228418 272951622 661385637 484243327 836945848 413399673 44728893 337672449 852780297 876662737 4064873 741743810 889482805 380312427 376831380 429949048 61479921 60522532 161387343 164290970 54823105 172028213 997542722 636865367 446936047 128999061 801455836 651593477 747149480 564475638 699173916 258806848 981299277 697784547 484859882 666754453 969502777 291084695 135106648 457986642 44908603 167477176 43701853 567434524 464290884 378279191 886349157 61358516 972270285 666911896 439981831 508276993 519166936 822803396 962870145 177137326 511258321 656251097 162037179 649849115 562299061 521706149 792864699 895084109 619263316 571601803 172251205 675908726 685651345 916758705 577501133 346017300 377556781 731269936 42842144 84829985 182867244 663370290 619954994 23032357 226773825 554825061 332296212 423310710 23476083 384077328 873267833 992809061 624995183 171030443 283127832 510006344 442152940 564420675 355261777 227575798 306752399 738265824 603068779 776203660 266675941 76552490 805421748 87432097 709819007 53083205 810748559 360098268 19693466 594534152 971591736 930834439 51703854 733982742 116616237 650837599 821136828 582183761 310270176 168292187 962025304 239347723 575811984 225184762 174996320 808453818 539455546 532132703 487331459 14112793 618137284 747102832 464504234 484412302 501472096 60133168 316090411 199456675 765078689 594808722 801284332 131286376 221439596 304733019 101029498 598358566 264107622 708426161 645471450 910074930 340992522 669076074 361731384 338400695 417585171 982844116 591945011 965329147 691096606 588317880 866030270 657776222 529913735 308014730 411579906 321000411 907293965 873164266 63390965 603077806 994462410 548007584 796291927 122113393 306472776 125992705 488846151 590320174 169185448 798458686 223561835 505683268 39291002 202137717 268512557 910420826 674062507 662419278 659385168 835564034 931707596 352870963 847894556 36780234 151657238 629713737 471448157 615351995 605592334 682622096 562867107 340215712 168014904 551184545 306688646 717807831 863401944 902407181 257517617 360390943 318081876 131018733 668509790 467793615 693691876 848203274 196334298 615498366 165898558 844493208 171451049 979219830 584207339 203555252 447029347 688982354 48685917 781394027 714598637 991427891 673744183 161548371 977229934 249621606 536957523 220205905 156774365 499586502 325108078 439138444 426444875 463180449 642910257 3147798 959942494 719239355 149102570 858109888 145867442 697532764 166853306 718014154 243890101 231446996 909824408 876133473 184939790 754993783 846359267 861190903 340748663 404806540 241753869 440491415 430881121 344716490 52099624 465937353 17316960 715083190 861798323 604049178 382609797 471340671 9764562 785372651 669554048 29571009 560200700 55934755 852581166 854698091 80015803 545168066 439023343 774236802 553206246 323624955 466994022 572007010 819874614 455150699 778337077 612235949 283501781 589717273 36631793 658702644 686158196 863610714 221745021 520359004 703611547 878350705 614301035 655074178 580710646 900078471 211645147 951336470 257890803 914187345 438553425 789774981 994776738 138875946 488501812 731408597 579084815 244198961 653410274 599494728 369997980 892127379 982512121 323574240 706326660 26364164 199106480 405859383 624957149 667084691 972984642 624829089 262819652 721319866 93626952 891107318 355544728 584724233 875474833 658165145 808445847 131005607 70376206 447031244 241876317 901613480 535693208 323014210 608126230 348336621 867888963 872401128 953095265 359023101 342504747 674686631 608395858 39231612 746884142 266243671 858412151 710954858 300565679 995504047 738426250 147562737 908186137 678715794 822685220 306590773 756335959 608984738 125551415 603219880 417491912 574660833 443862177 941596912 946246461 183840294 997142690 613130725 815974684 19946059 564282601 545566884 797025771 580900760 61577339 259953364 19626293 130410724 157288238 533882916 247797711 429605596 612003647 626335786 119773246 123005110 430082633 566696384 804791275 876747554 821211655 69155084 384429109 571050737 439741827 934833371 447614193 454601628 196238618 749268718 745230729 709410238 706360543 979016780 706298754 951572658 417604982 140176822 879948834 233041581 71811036 331616173 296500035 62223642 905944595 822049164 515179466 475517109 919759122 22174917 612094125 268878463 833988313 409314670 483411260 607561686 495767249 634421034 511728918 47549334 990583228 791737698 84983273 266284035 579477789 731255048 493107284 260691686 203362610 743393825 329836853 232616313 309582701 249705640 893553999 416635527 644294457 53673231 393076920 589677661 910298077 310521062 799919822 708041805 797107857 858834111 410348071 271297056 146780491 800940135 269623280 858982179 594765803 342615263 73243584 783823203 378638242 417419696 681972489 345313859 878920524 84881375 319465942 646364651 708231536 382968801 72601565 625565984 376708758 198507622 335686205 765536732 92334689 15512588 951959751 335887620 377301847 81902821 161733848 508506852 606591618 160324481 652796643 778230154 167474486 335283044 611561372 511279034 360952455 609786766 456086067 679288780 434556052 923379635 63205019 23912184 323101234 164977388 687107751 166831508 843175869 699221492 795297646 798093071 581545898 15312481 220210480 22339159 535600936 409349744 868661318 371093376 79126861 868571844 561079907 5212177 288840833 311065807 88217873 226384007 748654026 298484892 632816017 302822404 449909026 454199660 354896552 450470746 6678813 141885211 495931904 563817815 127124792 28568364 27393039 575603565 941727940 339687126 783150728 757330338 769824096 575486010 484956346 258086274 546135244 993660402 284480552 431686268 950043167 452991599 791818993 861207402 918632607 150080576 837989723 178894850 230746508 947749779 460278278 280012525 478706661 76391283 525394469 975479930 380350187 975589612 725046474 236804517 57875062 573929725 959188170 109655164 881647584 855094975 454837519 13096419 522311477 442943136 791596159 940213221 830700155 329859746 293336735 963934470 884696363 306283193 878936844 953943773 190933077 22836607 278121682 87407441 633182904 512470183 235660232 753000589 519844379 671152734 199232279 65636781 898054804 700156902 264868205 268809500 398846397 133738972 574781121 858969990 106121725 173967328 773272651 751623489 612871782 17802116 941770914 726087902 254059829 543227918 964192461 763693512 998287094 5522718 557725980 833345184 152166755 89076577 73476636 735366089 31825046 739925632 966798200 796471765 407555269 542786038 80340669 315658733 46864020 801561534 852901657 101271231 882917195 31150832 687483741 458040647 718123162 722425967 934931190 786875349 432613277 88172218 532337884 531167690 378843780 297024703 176276872 513793333 97826609 14202549 33517095 850060307 455937996 865381019 820591637 63001434 481658871 219016935 425283373 224720388 989154299 808898976 704786419 725722504 249517807 835393977 117523119 866326874 802098061 299289832 362837345 397539884 796379015 282231565 157713993 968836060 389664092 325739242 138348898 449455894 205181837 687186365 329554057 302338746 821317777 287708427 513575030 941483094 456737392 829363151 2957881 855109396 173012419 887641260 647896376 39494909 536870152 239794229 856607031 836355325 806049035 753766092 177853288 844636623 448470229 79424515 374732820 750615171 80664049 230542417 390543315 730287038 624057426 683509938 327713272 403835764 871280964 830959319 733895779 280714898 692050497 618586148 944837561 348290877 812835502 302608169 956062839 925019841 659874642 288386800 860909707 624956663 140516003 81951617 67070505 607647651 659895040 132024289 434027974 446208901 893306155 720350134 770897311 246972157 928778594 258167699 602063778 427355367 416780703 388123365 314464953 434345310 703054860 396677024 198956590 142956561 83825957 632108761 20673905 923892621 68788537 996041314 927075666 332155764 847530901 310819845 771325700 469327623 986579632 583918722 750147034 684760926 691608117 250062584 325859155 870192515 593946162 192074928 927361369 645725649 393137434 582982181 776282856 672159367 602264425 594869072 460844922 775899302 559335247 573535416 604050304 654374433 617892881 612085015 801838893 438239801 244262362 322518532 468763096 752837279 879316185 712462778 391536164 134913851 28244403 265910877 678576659 461142180 689665751 238017554 421530379 602544884 742742018 268749418 214283566 516836833 657332160 75650909 932810633 637573005 309153576 143509140 292483759 481138016 948579098 505482954 499626170 295199182 205266441 523901298 620900341 459983962 816178642 657605405 832599010 884973021 663198809 682580626 767474415 406195628 724508877 423210689 757067291 718589984 260792060 747744413 624051188 829894229 339436572 310893860 500844476 679211301 172496379 235016091 955295542 24398731 376478332 999050787 101502552 151807060 242564132 332552146 131548518 88650506 488496238 496374669 689127704 385262345 331796855 297374983 695055199 698235352 100110736 749693134 14369741 792022481 665480000 847308496 268730588 536459792 371262206 516040542 206390404 541016492 827940242 432031381 758206309 915293833 75029301 914184345 744168592 285856539 941177810 336329030 770361181 33184204 693728304 115544275 714296740 272728554 275553633 954119232 639994151 423883840 9761512 641352286 479755598 172495712 255077598 64961681 619707001 229407616 156928307 44441612 313644352 652600440 619230835 134710667 707198996 678788671 988417015 961550523 344049104 924383169 578787524 658410841 952539691 286905556 814611690 97843232 963930373 261238036 117683379 328115171 516515154 593425609 673091034 765837299 101808940 408866650 598156964 216238663 634848034 499221393 661345242 809648210 29525165 315644798 814415483 349797362 577701163 147423823 490355102 383005578 844728882 509554817 915559683 531463666 528550343 281035609 928324531 797276406 759887227 919502059 865093660 580377377 86304921 724375472 723877461 491144711 673264795 791957353 67669702 592841487 900233852 549438574 194131597 197696204 899927919 330411344 801806804 989524585 301670442 490865277 959359545 558672603 84767450 783557585 925940534 992635994 796196492 615051198 960831107 90729148 532120492 718863865 655302419 411856957 424008969 110715092 285495814 85182289 940040636 834564850 433132369 107701060 368573397 341270044 121222680 73657153 660084941 772671448 178189431 61087456 344012980 640472376 133190528 811095782 757631891 813823590 127998031 757530468 27320317 938693509 224927024 762971303 124452585 475808866 821344922 863392873 266103271 894911332 932142959 653324216 557993380 396833604 867250587 86574357 545847234 733057120 552257106 989892676 923769275 903285683 528960187 222242964 170678528 166851472 34402894 970984952 582544216 187182894 480947265 324392080 735418898 276768442 984145006 453471284 891528874 594970161 687405232 435857936 879237318 293689450 514946297 203476820 413241043 405780148 999210347 606761439 466930078 698667463 480162756 22127403 76457877 832417924 896090790 427439295 907590739 367084165 375990034 573788775 69732272 346545617 104904627 801227230 421153718 145432350 338063195 442949982 910792405 212259062 825550461 75735578 831880579 968423356 610204638 817897354 461003512 746984459 322402317 666564032 429576532 997765280 929796486 767499825 920638473 971758826 254830280 545956594 221045400 393464212 147612777 11962573 212741425 775421083 567017009 193409652 237353832 82334778 520758766 141867106 28403657 838826567 675602050 98126234 357842223 508955112 684166915 839549662 43702398 529547885 731856505 919501371 407593551 958241754 924508771 527506163 518219564 351500630 398049373 500875251 810087697 604759570 623509686 634506412 771261910 979651298 236328960 37331558 879982242 41849912 906128318 665850356 790656051 720869509 208123102 726041136 285061234 230231288 628009070 957169072 446715311 343399978 902099548 386877679 337432378 808706339 49802666 279539319 365497337 851443213 213606094 79298143 525955847 618663767 40845551 301248441 449910760 15701691 40500446 621993000 386059108 352771158 409123017 582310551 61421241 178348028 947113468 79667955 357211903 747704609 593658906 145806573 409250578 340154183 160065108 812676951 108685742 212689356 28851623 279786705 773431118 312050629 394314578 185992213 605131696 139266534 750261496 738769585 479957507 531206446 612065065 817813528 636935165 628339493 101053456 887133854 400127222 876543161 839202448 885270666 658457639 723099169 784869422 257504018 798884181 992839284 990603260 161157570 950382156 406420667 70618802 477636872 395390830 654483562 922816832 668471460 374521611 677711257 691021747 833115756 174068104 400750922 952657592 297888510 935871632 653157384 391729531 258061609 611595613 392227049 178361773 983174836 844765390 598070162 690963396 536624503 310995794 593876164 199588242 257157213 926480624 380332653 519943793 288812189 228878341 41171309 113821620 833908012 396557901 556492059 176363820 146444420 184791062 526594419 482145573 168152955 861308718 949635890 868451662 287702297 788572841 255666895 473272 133292423 590183175 487082154 713695175 318131337 38697295 454608815 655277430 354614129 434979217 134572398 737641730 344543799 948340715 320516785 604166633 782155169 612143458 559565369 250539227 543475912 703378229 73341876 147954432 223591338 488129411 897282675 778531584 310130798 257532958 604379709 574687505 890560515 874198751 260901418 551647846 624454041 741954948 486728880 163556718 246928722 274335986 293225289 628980208 154104794 147619968 902399194 571719707 83789796 502326492 120852648 786446728 82363420 817166416 307989905 704286997 81621972 885547460 163495023 189110860 997834252 869847730 141991581 846407414 381694557 672599559 299680501 606968550 300075105 528272095 788460342 523696801 9093524 441365728 130631281 47998973 623919612 790416399 550045533 588689409 494512617 871950310 642734911 30374208 52528830 543850502 964291935 674278187 196413923 5810435 876102067 627707520 619364760 46016828 179249806 426397041 264888575 159325299 245125739 147048553 948351910 173019795 127487778 998017786 884352343 382369589 862592690 486894991 156878820 109013976 232890000 354425205 931492175 25064344 14708612 270922256 512818126 247817837 403163893 309412524 88291427 162463203 677427669 741158857 119792687 437030765 861118641 317877541 325500322 930994807 234767603 257024077 427033511 886732371 69083724 11007708 539524552 167451132 986848168 493220724 377374266 894609327 804166369 32580398 154066363 623045674 231591583 287773828 232380491 44963681 344254092 855993076 105347935 221715425 529673864 206141587 385735532 483659240 990394576 80997785 414654555 599133887 406644234 949014652 505413702 8393758 457747746 494615365 896938438 35690177 364244077 467611125 876346972 295676052 529513456 770459396 804175206 349595425 775947404 439236944 46089053 737406246 840063074 406921165 600595536 227264419 769796450 961352480 801676249 493325305 774678160 791783940 295658585 156647957 900035124 423598213 199867240 516698073 546080665 617062282 630531409 134566244 529960811 226276052 917505600 803323969 222950799 589043622 101106294 149867083 882161861 274187575 298870396 756015989 886684660 88798322 369438689 208407113 842175076 479410310 774858166 10965428 891221277 800977113 997551832 30621661 941793511 338890100 520780699 86891341 499073085 122309881 562589839 147757493 504518031 759015450 259758178 518931990 493728963 617260383 90618194 862609576 453012524 260385796 896079526 948852591 76374264 682241987 222453566 596588981 317255289 599592438 765318322 501453646 7938129 996245879 167382972 279442774 337267995 706642776 189356446 514146799 113013836 376407153 710295544 492519644 896563370 804336016 139485028 164961811 907162428 287864232 75302724 788483247 746979166 502688594 514975390 204002817 17956644 684450247 79901367 375764965 335626046 309705854 742797381 809919436 809530787 439518972 11624070 967656780 499282827 648004739 543750864 669626869 39210137 586831328 559195059 970234747 757526431 180027568 317330604 350693488 384093513 918695354 469555742 715498031 798483432 224821701 836747602 628857486 628380765 438773225 612072815 82520182 945411820 956459405 958329955 439325913 974277318 530485033 657309361 462015885 498388453 600854073 897050781 725523163 845359052 893171620 128085192 358486068 835031325 258675722 353205545 859836950 913333989 977751219 901782293 703373045 729500159 657426956 167540563 615840733 592576608 243215886 537438040 850101420 984533269 185281860 12172913 342196045 501831874 664550134 311454913 778354227 972381122 14812761 419933561 242477795 464977064 934054596 239156990 755586481 581049975 600593913 701145005 596625638 293637086 416571894 39277489 412264882 133641001 183164349 658407230 882478080 625092893 896930594 555570276 186639987 556009822 955028825 578564388 680777431 650001008 697966969 862247296 297292091 339938716 962770711 301844796 641333803 260926005 617676220 194029175 361660424 946033401 495291524 919875051 283535577 909225701 901810565 723644053 880511068 857582299 138635102 760817526 534120089 619381367 271753971 334677883 553947716 972881718 999298017 324212990 289093407 414234789 594638802 500592755 431294374 701846920 655507305 45069186 177214022 683635933 449196573 936939002 789038412 188925299 976157751 777301522 496545377 295451372 467501190 428803468 118348685 474918547 280627162 828866367 908637222 40711554 297806549 197352775 199049914 602640919 352000127 349219315 945386651 499895209 648676245 705373340 955650308 156584250 77110607 665978653 833429778 491079998 415241215 254051710 457901199 487852480 59561965 352869946 960160875 967957904 808048356 995227890 819965330 277567709 146548434 62726421 722727740 422670851 837447862 694724970 842110283 876400152 108684109 490661600 225659935 871749630 660927270 661103398 969064734 995489454 435587651 505996374 664453867 783918260 44565038 855785368 861839431 639271400 724013521 597114022 500597316 428518680 403345485 442556851 181469469 283010342 256023743 9685024 691458105 404806955 986942476 378580723 676833158 398657127 103599368 684667140 693186889 442356336 898041290 927047830 158903430 462908754 787197482 473565517 812409896 272590184 458090984 842260552 69126606 671844781 455120025 722043635 882393078 999239505 153508946 342228101 432696807 537175367 344715632 950866141 294984073 358643803 128659318 206309558 855196967 704208699 510515188 892768252 883064528 755583530 889092633 32670303 776423115 969909163 462552148 799385997 271884377 431233740 817505673 325045314 683126610 216095101 280220923 393759132 196708962 547501026 678065584 544908105 673537055 960984977 391572051 504532059 328168856 890220046 952966258 529639604 8788554 2068370 708855143 252760836 173580705 337286869 141668775 403737814 477575649 866301598 296393878 976267716 375217712 918251020 127197503 757921960 342185519 330193396 449402054 67931898 539185298 348514257 623818942 509574034 517204137 465717080 448186726 356624438 115425647 725882051 437182586 83846040 452665502 329106747 724320610 606492401 166424292 188696594 282163216 925809305 798760516 16864163 345668177 95267009 828673601 342056143 446081719 60435674 705790443 824654943 8560467 166705253 508661435 492384331 557391791 666161177 401486297 41049194 561494863 139346882 673348422 148438864 301092190 965255574 94730665 200530003 542388967 501387538 788983444 129312709 676606906 179144334 965921057 258183660 489925227 678887159 699408230 699775256 456069358 940837374 441665760 703828481 21108550 974359826 303463988 152224123 617633791 278537633 902328941 374429139 495188221 816481360 484217751 330404705 326374550 876423707 864175974 407738288 724991412 17969612 820694906 708463606 914050988 641766418 485835992 723621058 401401368 857639313 185686688 107811110 958206229 161814121 215645301 833917072 494890274 843187266 444246041 602501180 838519294 919922290 84812682 402734824 749601140 678371418 625114243 806809580 966518741 5829288 780593435 560183820 737905481 382185882 134288021 657736054 290394647 746424675 233101164 924583187 640921077 918972063 276977749 76984413 804592938 221571608 395467956 598925832 674296628 461083483 562099334 862743996 371573270 143982477 749193344 83636899 907900523 726879497 150628312 865112961 585117055 888175281 102891200 603244917 472773704 100044839 916666955 850728538 791174156 313982747 590621902 80225961 132265903 93052283 21482670 282734346 112349701 370721214 193599908 199886209 602418403 445784684 495266270 371651897 345271800 83892382 319496640 228235974 198216893 266226031 724596822 924255815 772240888 866860609 917749744 887412362 799315603 461006259 333930322 313636946 427940859 69758068 327256238 229798889 766114107 774892815 477556758 691179074 622605066 323465505 538275445 190094673 763549930 565555578 517259259 92752832 538093734 429440926 591922479 876228947 825523078 247946731 346082206 468533373 244704334 980848954 410386424 236256078 802302480 726238 937734422 819182595 674025448 625610515 446844423 760880444 546479801 832609544 134914527 907298257 787011864 920643637 376052912 172529821 747534607 342556138 78025288 895275538 481101754 961880474 279869158 81095318 359219507 196391187 987662204 516456097 911019897 709398060 89414132 637781823 171426036 212789186 391550474 111580431 794862308 633737495 238816718 674192476 633763965 944473916 593598772 813136246 184924881 595013565 780660791 134688270 390130630 185887635 951908014 660308401 348517778 507115354 740386983 549888852 40102336 25295548 918748157 42083682 108697697 556822066 854377652 786894469 695209611 926017587 999080492 55404056 471150852 895099200 253126454 273673622 531508316 349513414 198344499 82259315 632742560 35301248 452048575 207901965 68409494 979427124 885674180 403153489 891103113 661499960 147651154 308988433 22177803 693070898 547158266 415838652 642162870 182376200 398909103 26839400 207028954 759162551 25020801 520684478 506105330 337377729 519815840 545583953 161589955 65240964 741498775 779340558 552271873 423451911 850464324 394243740 906948873 240619193 243737330 497479811 189721029 550562504 583895379 815246005 384006068 356218960 96216541 957481876 296283847 929987599 506339171 936874073 856621780 505837772 373941714 335826871 211767342 54445008 547909013 234897796 766207760 894901357 402359383 455774839 130229634 767772214 514205891 690265076 851223685 940917342 652309121 111535289 722253190 562783629 572640546 830744331 142147965 856781333 87293953 441752566 175169695 963463969 887983354 582360489 456203816 49032407 854434477 10634055 724938149 377510518 736363753 796430790 379091803 93528913 870333239 577275821 429325358 481254346 635503364 910467790 384097004 309987248 393341089 340627146 107568479 436074108 384694167 155839425 659950319 443320328 868215895 62246335 393397475 503609757 606620798 125069685 929350575 577023648 917377973 102663368 220863404 989493304 262742027 965293850 383085231 642448806 911133710 73958632 265246004 898953613 539795342 833117813 572369184 592840146 507353340 443574667 778480782 363609230 117315734 593197156 587831053 749004669 781054232 940162876 884951857 152010464 214426327 865401380 107964857 565618458 932506522 748529762 406632385 565108276 776335336 179620802 419815945 756523953 280235259 831514095 337549078 353980029 66616803 154232498 664470702 13871408 804542302 269489032 313012052 461963690 298929542 180065211 707820817 805989784 338591683 905153972 819603134 416293093 500944209 698353388 6404454 288633875 261222006 329561668 800213906 380625739 654632822 393905907 104543024 971691591 496062792 970149165 968093618 508909451 992768810 97812946 190878731 212939166 488381798 334008915 429341985 553138753 400508502 356949510 583025660 279721948 151535103 741959313 851575978 578012510 317432452 517960486 719247110 639852701 703405245 338188017 503353380 396306968 449991099 122698280 925771621 732175011 405575997 136225521 323199611 164467889 738115888 217592006 811807943 282019628 304737906 285194881 401163772 591902504 397533510 619594213 16564886 360664093 44934266 112694300 487686371 274080328 800110335 839780941 987108084 441586213 783326760 406697349 758888638 934049624 933755306 464888388 912528971 531045634 426497810 790159200 918318660 4940905 702215589 920453410 241743660 397133802 9132995 981012615 216084373 579363592 265241346 721400383 610194440 639397309 397680197 831828001 255949402 282274308 528531915 12044224 991523295 189525244 100798656 110870759 851209684 736680484 97353973 899538559 766420688 719824070 695688812 447993561 751439606 803925497 969788038 456522497 20239045 140468401 155137639 380641331 46991204 835399806 920669254 870353604 415449068 311355080 638840905 745188476 537023735 400254756 523831623 74115456 570595512 312911378 875553208 659540276 88759471 265761121 582887514 787888650 702935439 397701384 628126838 52838374 523622574 992256565 27255717 249397564 375036513 702273434 819852884 323485155 682560510 989323509 455879281 925957414 755581356 415354575 182516746 985505179 537185203 130591693 994119686 85131734 442042676 505641816 77753439 955620014 191455786 224088165 343596917 72006829 812227008 482308107 893576270 869716982 565202473 362424427 14262131 898862778 935371180 907769361 789223735 484185123 777584340 65593810 998512874 730206639 8734215 721873307 96547087 561896401 932069755 592526383 552335291 685984915 325217535 256250187 485353576 856623258 372712956 141893275 733276873 254918617 987152949 680151509 822828607 62522957 709761440 77109998 990014852 220128759 497272796 751785147 884921542 118235310 167889529 433769956 530295074 57184050 988116757 519923988 666379863 395030419 630701743 147902629 139353276 916389178 632012665 504872168 826693541 542834699 704778678 842288036 478544476 336248351 935046364 112507107 179799549 703719619 975693469 148024128 54027773 397443808 673604257 2840204 23958623 981887850 312080555 331366623 637479370 852422037 730546577 283275994 719269562 219896950 690449522 780970106 237619052 529857079 980798662 344574513 883913755 44389901 897914750 821824239 784351946 672367544 621800845 347774582 839382706 429464937 491446324 665158710 908997073 828651951 497459884 264816761 875872156 955638525 826608346 399121007 711533214 930604663 814818496 842480201 122896831 213355466 32548542 649802945 804382428 444989894 181408888 355497843 123778752 676032099 288865634 575746742 902852837 262294983 938852695 751915033 312407103 230428062 766674787 895016976 77467891 508896959 994443579 130634317 460307431 915812580 370362159 261746143 412261373 529526289 97162922 207930460 17085039 612135472 587531261 199847992 857961683 609732963 753632417 827954513 88108621 15138893 210539073 167215744 798046825 41845367 841700668 547867560 821671389 10934261 321872624 458054910 575165723 30422295 214772832 930556896 662720993 365309348 733266386 85169688 301816795 519155580 12057429 492363808 541257570 308146038 529805105 237131183 452487554 825953112 847013060 951828096 394260382 359127226 80412047 487598429 52900557 719748853 169732433 86624881 993817243 412703475 199177371 840820142 107122710 880958141 744819151 279395276 653290594 678993791 221361822 379567679 207699910 395611244 329607056 136647283 82563438 690278607 481235718 669711001 415678994 101116946 813981970 232004438 215766142 453290944 621858558 146307590 704296192 833638348 239062175 697585474 46512322 540986016 706048026 349287718 681067813 28958540 713228474 238792395 70401226 402506112 21821230 532840043 971508462 505996049 346154798 208957211 870530233 886897594 594094117 75600941 763370049 79170046 784420890 627332635 954228541 928779264 501177212 786414555 379230032 354898418 716802449 88311462 993038473 671841073 691531484 39492818 943517467 660154595 238018478 206171723 433412803 875681586 965893785 582088796 5429322 273281562 175988011 244321927 509207731 40625103 149699771 4112065 914559816 677034530 27483689 578107866 491181767 474759643 59294706 32504438 957305369 773501909 871148414 860974104 146429855 953268574 590957436 552119856 243318705 179960402 827925698 659862675 912158178 401906579 953872732 252530629 202440962 168231354 148467741 736230773 498437144 700367868 147291487 882298595 14208832 501465229 11347192 523492706 477970179 696736118 169565039 804983852 992018158 713446004 634791862 254150925 532428603 867876213 526053133 269788781 717579690 14946997 551466995 313580189 789339947 469348687 197570297 717071345 523213830 965859800 438112413 797287893 129556810 507530528 350003643 732010184 113529064 328043473 959073844 603636755 329649776 435588233 180347765 188191575 490056263 356000802 674585930 764814961 522940449 464710901 638571021 698969788 101508122 154099103 302957697 337946379 208819837 881328255 515070434 101413905 252935563 456310019 225669563 803259142 739584741 455965452 805030159 470501745 669171123 354272074 463597173 725218869 769472722 895823883 956551850 833199543 43223941 651308702 201323473 147040921 771093825 516983050 366774636 139376272 717553281 99549808 783297917 558371574 420359732 544027034 624829720 939496384 383717428 274417516 34528178 35135452 411870081 687075414 503903104 217752929 318159947 334572332 96427244 426586323 882264521 347181080 980587203 62835639 274973408 121754538 121290545 293877605 225790731 970892322 602107895 83968906 228414578 407443423 711175230 789001214 66777342 648157968 923298943 78352064 164730611 380941816 522142564 358693767 14705746 899228870 568752634 937711999 393520795 908938351 735336989 902069325 957021897 388226506 136082494 334398519 856152904 746681446 918100389 539583504 341790899 854612537 265432654 974787400 221953741 187321346 619260527 81310733 233702715 794897500 120044426 482386894 329796169 786781 809846503 579661586 315444181 318744451 146352627 998164163 316166468 522807057 508735999 940230227 396783049 193151548 300567247 41667755 407524145 376669007 462837571 51030615 225003533 630291146 504375605 263601566 149565863 126700015 100243802 641578445 12165765 779980110 372507275 709107871 519712640 140413697 674526459 298240457 8471808 684989738 178011691 122405089 421160061 459657905 720831842 888380475 771183069 175239339 191388916 182808307 258664615 980963276 846326796 496889544 588460367 649597905 153294293 759437226 68148515 717657843 499722970 571551845 103817839 676278425 978170084 647721919 621545918 665235871 696613329 553883937 397668212 32158611 375051441 660791131 451057052 320484580 204113351 770680282 283267775 354196082 720235209 592569533 658091370 777168279 825877532 298651037 934363592 364066855 862027308 234142297 246953355 401487641 73624550 903695053 677228422 527822286 816213279 552079038 974052207 865384966 662146920 111306831 277012578 954036928 181140460 184797359 836405184 701943976 737059560 749091640 293109479 887942521 281766882 293037395 276698779 604219561 370837868 744757169 874300404 275525074 856584019 613360689 176322596 943878865 761557026 125653846 330437994 301398317 774630041 567761183 988414817 436585890 488893478 621668200 656331624 840419162 133187958 217031382 405271413 952901925 558435915 927702322 623103376 416098981 383003623 736654001 721048123 858793369 275323064 64936084 218032375 906746235 911298116 804601854 824900617 309666470 278651713 483692235 855837966 190609300 425795635 729502871 242523541 654324364 168515020 292441476 284747530 793929676 651440539 874327851 935006264 740897369 210182839 49742483 75279339 319241845 592238609 63931712 214573377 202368221 175207021 717671198 949791253 648679045 8457882 913240389 38511043 249069664 412796985 748927975 874686015 551583988 87979457 815940356 891501902 483553419 237695361 934231311 296583569 740830041 199882690 680756478 37958432 552773171 315170897 6367710 639899936 368661020 337422162 163257918 547606434 618139843 881393630 902599725 495675856 454190438 714692971 157931910 533975007 107859427 6214803 803296491 691892115 111044477 551417015 557877094 619591632 883257981 586277164 125609844 324680670 399071850 978923128 548395037 739363893 401646123 863178678 554256792 835705148 164802307 653610886 566879476 748787826 961884564 64318495 603214816 198071191 768429766 272977603 77376457 787731361 465126715 696132807 172676098 222058713 142066000 853924149 182372172 366683401 586894809 82952576 197366118 33326911 581104902 567109222 757735115 802226940 971163616 944928438 818490413 585850585 656049909 143194157 840095181 53458801 458701994 433967641 972697999 857928852 785812297 170869648 457554262 351423132 237603517 937083866 865697682 309983193 147874748 990528590 677524573 955188749 654936556 993974451 353356976 286135201 173360665 170649535 548118959 727171133 371964680 793972950 98513015 446268481 476092937 637362985 65934527 713750269 3508851 998452528 509759471 853603921 808076694 874524118 512066263 576368504 372950858 961602118 770012244 583986239 389435566 312973307 405967002 865486125 658014895 752870563 683014963 585933150 648339479 105838977 683259083 99087270 993350258 768616639 122345679 591671160 305214195 194385033 38943176 86569212 359601496 471277624 933853901 521259094 173673677 325360525 695354345 621451514 118493871 491395834 177409472 893930031 249144721 995422634 377543907 577106938 588353487 887590768 908475478 881378398 705398940 781228744 417777544 635637616 595738738 325481587 413235070 486819505 473224975 864521214 487199417 612688148 160178881 619935717 183843987 903483199 240770523 950444739 173796353 49883204 295895443 508410472 58008097 939125849 583919181 805361274 527546067 573636655 888631789 352633645 675819695 455479827 107459695 950647129 817721102 727199889 698171344 250953282 38783111 760011538 452279564 922135536 648229446 71909583 480507331 938470093 523740328 818459651 721217065 387811709 373805281 110818853 751227388 993985698 81737398 414693483 197673113 953954387 657867067 33671139 598111216 629531343 320483122 626158081 943544648 740851482 428540356 434140905 107132688 762559800 418473685 105371667 445157786 577461745 445030907 436879828 189984546 566014103 153041416 740015087 703467510 917867075 131999605 46930086 3638422 181463702 549116997 405944425 870409363 588796110 181891937 136702734 692937905 869921054 999518707 541597630 785211145 345328587 824705065 547900931 26974053 755065813 377740659 800826809 327507868 394320148 240251318 830623300 546021940 605305062 540076738 861655646 576344000 414327149 540566936 426164937 249173660 335428645 474881955 738589868 522794770 681469280 33966446 73449588 149853162 655609541 523696392 644142530 910219584 807029681 399097915 526773823 460465000 510763312 154506383 482474815 78193296 220642602 106551271 697662073 484581420 998165503 288773069 438113507 310676358 766568854 728972472 625437456 974658359 9677976 284100064 29996933 292327426 993791749 900864007 203287968 551780529 323954278 739688344 47703335 796310302 386142565 559807581 834155733 983101381 543437653 621911484 68690355 730857221 17137720 290996191 14103588 881495660 784749386 882636959 210104795 883863740 934164263 838433266 675971947 30886393 310616680 719579284 442661769 842276944 291527548 342238313 398981199 655449432 839364874 872094924 897547338 152988804 569355150 558410321 396205694 802133440 187744580 737328355 188936053 868091854 768817026 601891941 780431434 883320337 284011339 730603789 40684556 574709513 502725049 820216984 887053775 168556561 605778014 198231377 706809388 420967359 98726380 67112227 888548620 358103777 645334416 38044893 23827339 972637185 37549353 305715719 67339668 672594186 475980150 782415166 442457016 704152765 957817944 944980898 479011953 141244934 168965531 841648565 563019713 522069078 158665892 703088706 179601943 681819999 303786946 796497710 858015661 409795527 481868629 399935994 248475693 536463812 791279737 605528997 266967827 811301821 778432698 597195433 903260337 615106608 460841562 684558531 571898947 652817865 586320072 437436770 439481277 651320972 575618897 63075827 108645394 234881822 527327343 899948849 116295200 51599818 5821334 877013277 756682063 763170862 917192078 346856721 394444061 87496930 844209807 62811616 135443143 477840188 819769661 829472599 639039106 748948029 287044123 406752736 759918739 567437174 87307063 718971385 998213576 234073236 424720463 151877573 268707311 713059126 953749823 651236869 685329126 157272077 923457394 926239356 750227773 918604743 695174668 979277365 438753384 41022414 24251170 323075763 480312701 546266418 500539033 641888581 824220378 388048048 441200519 810683296 570335583 490025900 832616182 500099999 409297661 666743901 92358409 207630420 441461492 872752615 833253115 273926954 353509768 68996601 768552136 83618965 493337387 282572040 409202783 364565307 938357853 16420582 369771068 190896710 188691594 255773858 95124733 834951565 733712529 650268873 318712318 760434957 275967327 834535872 256450980 973330127 761472562 944709820 785952936 853375689 54172552 579958292 557027179 621718143 801569392 497511972 122535887 451820032 819557653 964387581 628864843 816649507 582744703 120857265 113523010 370929269 752469371 401332058 477313686 623922426 252664182 257335559 984186 319490665 218777682 520178025 419976589 245549762 363102411 775343575 188530640 598777318 808875665 937139311 103739063 171017660 432665634 689201723 555392359 896067039 193430207 244886403 300326473 155212982 98064885 136333940 24874592 703314433 31851780 449958248 446115956 819861905 349402373 423134292 795427169 387806173 470748910 117162582 14201004 371303723 192877561 261611689 349478378 344759445 497397615 790850991 213620906 148524503 683491499 982447580 119353314 180794292 955125048 652355680 4691486 649662063 187974640 816904069 733132057 814728811 656937510 838622562 488324649 701196893 255226373 303078022 642941511 24335191 491858744 346792862 912512397 468531800 808890088 563143294 680357414 390384148 584365256 967775820 860883414 793727995 750770666 474870232 396301461 706008855 76393631 108506860 750463455 733853875 450017226 846047832 98736803 228930440 449301253 454391499 340917153 965431877 713911530 231609105 598250099 263147922 98987250 87204833 32193584 200613270 522523142 863304273 716821389 646905465 705556683 404991381 677148887 883523166 743542709 359462701 743512034 423733540 676604152 814103241 496276399 60204859 382784874 936510914 75332844 116950301 446326191 823693712 511134761 961936609 563946339 199454005 641363247 889381272 719665783 830317908 750838068 884322947 286825417 511105916 784113317 367950876 166399884 619325037 224644641 946849976 61195466 766121584 508165911 993096802 153038114 605170202 344537392 690316536 244419551 145705904 747425451 205333865 150865829 182275995 997201793 385161128 822125159 429866359 404231004 508526359 121260706 726170547 528998545 968491440 777340147 486854206 888462530 897985467 940707328 73809437 810360233 438932763 968631686 572366757 458906398 79346383 264809442 743289651 537646037 500811196 929361554 828060946 260772054 18363191 425662015 766913971 761766444 579096350 75582841 922063176 848424187 468865467 613954349 892342850 479017779 890731231 320951536 845689183 297987017 815142471 751963015 646671984 997668538 864967800 546184557 742071132 729676330 684099948 388685273 849968858 152669958 230077306 841559404 149878802 279451021 352031999 519835633 566512869 79900969 587247826 856928842 229543094 855014545 159102636 945268640 771181089 138885303 518724141 570271863 528870593 763354910 581405688 235064557 619078653 702528661 526831932 925579325 559771659 336368351 474166797 602014651 94915806 499312125 655215636 559710345 419141835 888940542 155457687 775125572 979417721 72079350 852934589 144605960 586928574 971876398 875877686 138732413 846869824 704093172 428496776 78621197 731714343 948142754 70059999 854306919 631984496 113394609 897112893 706508899 116171787 867806749 106092823 299888099 143910051 808385554 650837943 410443687 104902005 637469165 916862912 527654717 327673511 287674962 167121077 296938427 577507851 992034675 707917599 382553948 757604533 585045832 467722124 875884036 781943275 409805163 793978247 162889904 118030346 92937848 16401010 50208093 140859558 711269832 899753258 225787416 655538564 362557348 986391204 184875568 369496609 237024141 295163426 756183542 458076068 492766805 569213290 563520225 556264039 437596174 129713736 549654629 537771145 957609515 987169489 645782268 261759391 835348616 349475330 879264200 360201167 829360348 309352435 892371027 748179328 527149547 184432429 519098359 745035723 874820580 944188449 330737226 321109737 601495522 635954943 625674434 621024194 185636130 997407605 219668103 473270502 702969914 316176329 18095694 895936149 916006917 472356895 321599333 838260876 414911851 179511421 415707950 635088087 713587405 794497815 27356496 384884689 937525427 202425760 39134184 94988609 436435706 187374411 609840294 488051410 43962676 592609444 408915747 225224218 758785839 134639771 867500711 775845281 87520247 319092012 386667475 640689918 958325836 179426531 296175465 13487605 703292983 662614854 28300452 488022947 657837509 575854876 739231648 202230857 618193765 373843856 664755719 424230423 503114877 421042918 877602891 350370217 385423121 624584673 675531426 593195690 829633570 156907151 588614330 257990412 806613274 870967486 331916546 503271037 212989981 336062856 521197117 752785594 451176302 682101006 379949787 703715431 57209960 808824411 209545411 786884838 139430312 359585122 164985796 498037934 867899737 845464623 357267805 433873045 333472066 689789779 767963342 396754811 22588229 871915249 350175451 41553546 138132413 381208167 548556878 737264004 39889033 894547162 532175776 758009438 38468122 687071279 56194123 671632181 889591055 210473914 814809743 719272641 66964834 494435850 400137069 606529596 575835045 341182133 218784961 589845977 517748103 356453761 926451485 598417087 845375876 119721274 430511439 56234204 314647622 224949225 601364987 739133934 85939293 48366237 103897161 477791994 32469750 617947799 961010131 76246359 787119723 612061233 641615321 641024087 767989399 914935127 956263379 354607004 791365847 568287774 526203514 756814614 976038667 477895923 546283876 470501514 458958790 30940382 885107195 841925068 580767465 754809597 947602524 456224866 54641207 86351071 484818869 306843352 110143288 653838458 478785983 132784090 436656913 546896817 918699073 484659469 219367983 838967529 513998850 380739793 43587583 705829141 356906255 945300437 441895492 566646224 353903252 679621578 540441909 402736422 391274465 524409744 213134639 204713255 397258321 158884023 612785792 874492829 17545728 700231120 24157774 791300523 555406852 883140677 557605745 967300595 364269958 555668745 612390873 656067506 867739189 320780055 76839645 733336892 45512072 637834770 612892362 777894977 286524790 837955552 724030231 241097982 814369929 321933033 151079488 700491138 486232991 741077969 67970883 544725780 989838440 737688295 381677631 171143033 115847515 213207098 122519394 265302197 717943308 294582069 338311009 343199583 947154764 646218376 756388613 259949894 372810724 250630427 829250244 346067550 452892805 560495434 500108191 271450207 709837815 754115957 837322600 397116271 505823665 379233074 497211820 333880689 483027737 258550895 155122792 578043205 868459845 802057192 133982208 661945434 718682471 147350177 582920551 223949428 336971255 713648719 859360004 79074865 167288595 149669512 149212248 624718871 710057570 641684967 929989972 173132418 83165499 168916391 920885698 241528171 707344966 672250770 501537066 494816782 485829765 912247337 223133462 880454395 843497732 590433748 469585529 818875772 866851391 424947056 865035555 206811876 686394532 366143503 276175108 737392320 478397640 298841167 895184552 952703607 50573247 829500062 564103663 759507461 129214595 435835525 549469614 426554190 772303563 696658089 918677199 452648419 882002689 94916428 901433740 871813838 948838774 550493008 135048090 955556337 945705135 106225207 293056179 736141246 943315040 202424256 483023402 877550500 11406851 62471251 522472434 311437749 495637069 639266063 475729718 459943176 390463174 302204661 926020017 439111692 160789910 225755348 427010286 842787787 983671524 267202226 372171292 138361802 748817273 703007957 457560198 118537469 959257779 499825682 694206096 458500240 757292736 242658180 859075577 962395456 662685910 551241983 442306161 509908094 946647085 687856690 201063881 240270442 186535362 409013524 710927171 192760110 903433917 780236215 658038744 756074027 724035976 111982842 802436866 781146817 720537750 316796918 111983872 940175226 893091775 972527728 482495413 562089212 913529414 488696530 408955254 904500030 944638157 105829293 987469512 459415488 494890179 254278970 375045557 935240152 784574161 980218072 328098419 622752322 470640935 106080820 82552847 665840270 784683665 440541336 868518660 740786842 927394808 135533173 103610451 933622740 494952818 732376292 589153027 90159653 70805529 23395446 480390373 305422014 681031994 187549897 856741127 596900409 277334356 137540761 951453300 513050750 151089654 364017965 313864537 401783687 543749666 628906531 4862714 986393445 435940311 54902504 931418886 480055478 839371530 653746847 825632006 49058169 879248330 345581595 132104822 468452754 409612271 287002572 182495865 701051404 77286522 383994080 743273575 750865668 907480654 817328334 802587247 579381548 485037165 231543741 976199818 138968172 39919673 266857526 219229748 86385291 924018048 850493390 347666907 327927263 199199785 527999870 342322300 550527843 719769921 499007737 187692115 313647289 275110960 156363672 854908596 119951539 925661643 298451051 766333544 31166869 588395054 972917538 789604503 379032298 783547467 962566242 193859179 457654639 538083023 287571915 932425526 705475339 837454256 808246375 629401820 873857246 131276910 270864486 609331221 618381180 15867009 520074015 306812924 750084197 999116908 677453224 322889437 100321857 31126088 736211383 507117874 825333149 540405584 879978256 561712587 531817131 49921897 73052282 34779201 484334050 636533749 284835243 520298334 610595887 648452384 150229312 969319605 842760905 559618397 420853604 599426847 722648523 240930903 792050368 735775079 877699858 609275165 269851335 838801950 134667367 347858344 59884078 115249704 198919852 323074802 766161770 840837093 829153886 123940341 24083556 722787010 315903688 872091555 573903236 638578238 16334311 993924854 296581024 64236578 737834612 998069612 429981454 513711272 818526010 465070819 685820843 445165088 355845762 229660796 725118630 608594294 658026591 300522346 132206927 180486326 670471607 70028296 706442993 971315165 538673045 431117267 800898420 100560660 691483723 653997945 786350312 185195149 621016339 366543089 739012685 318122498 294361100 29089509 646446354 481515230 955575069 625016560 931836407 993222264 701651912 553972904 634753273 533881144 16991129 16708991 211163079 339106752 674740476 360078692 927165401 33580796 76227078 3461769 297107300 384092608 982367746 844847191 552919712 410723217 799600231 691734059 234372142 919807698 782915713 646514826 37651876 585558552 870305046 931095780 477519051 13481078 286725950 451113487 246703224 433520953 515884418 125263011 274127326 502375381 745635359 468544391 919418753 575108700 705071027 46975632 732178323 971488937 724767398 206625065 130885377 489955626 379330420 806927830 721636966 271862830 344379745 164696340 845993991 218336700 245901022 978134105 217094693 807923611 575581172 212582422 575691512 731481025 516612295 690205098 927977256 167940919 833318574 151428274 123480457 431169698 891758538 818178864 269310129 653025397 939013882 794706108 781758230 343036806 933721856 373262296 430894158 731562893 206035566 68708953 746252817 183385631 799575670 361975763 72274977 395302022 822147250 444983863 451380475 649050580 478173737 697478174 219188161 600996918 151030360 597419214 522830341 422641181 21132934 960053885 868291260 388643041 755362179 527644186 232103968 700475419 681641630 818274657 724058243 895889783 705691899 5719163 102870079 813297146 664403963 349058853 883849307 826851666 564214781 332938694 941239143 616057358 482074445 767721372 863817184 466013453 738527652 492397209 871297797 352646361 607998096 385685172 406105068 903480881 109858873 207221088 881342051 844667539 691771230 909358950 834135464 353543081 389347086 436530127 977053364 851010645 673922487 753474036 175589623 897517302 397803759 80604948 289235749 943861880 887869112 625797905 647618440 159659863 730306304 866806846 346612855 746589212 527652137 219648347 551489464 517455054 374889086 914580940 66545997 157215311 655532811 720480984 566389237 263055232 454179365 110899237 326565851 482614693 919484203 837437760 451945625 55473149 796283368 296078437 283421864 366089069 112755639 122169534 117154300 381079304 907057666 40756896 247517814 495138277 815886593 902860662 733688231 481997000 940452156 59801161 206954370 536416118 554692762 857168986 820316735 487403459 103696138 409577202 335631256 382053322 559141782 768381991 46429630 69143278 476152724 642690989 181148429 19899272 429476396 953990603 759924722 568176844 948734919 146081767 99924202 608775107 416235200 433757677 44608132 475958142 974769849 998424157 406995407 997974087 130570495 599340737 743690596 776605444 850237808 782986000 235299566 569758272 46607549 680164517 511874598 53881824 840369809 262431128 227088544 886749083 539504429 670106380 649316158 783627809 44236494 737326674 576794026 904845599 90921934 833140562 325490914 26497937 987433727 762902491 608289403 762712692 153471193 671278328 466755815 356319915 156939717 597754780 785926078 638513577 7437295 200375114 180017208 251774696 74392436 304224700 571029112 302310019 963653876 31369402 306657470 188516598 161332018 561275763 481126907 620497374 220718949 873271067 895067690 473259606 868819646 84549355 514025327 610130633 957442944 244699148 730660305 787114339 300531167 787233427 57982204 51148061 853519966 764429791 805496247 117984913 866826935 917309502 609300844 237768579 265649671 874752512 513802468 467132201 362500949 229241709 736868092 521062453 654267993 34232467 977601242 356653920 128577731 376147659 380812152 741680309 378601909 384203345 953928375 882468677 800479338 761418325 383702626 35583464 239209547 52877038 46418537 216612802 885581218 366112839 353869799 323017265 752592575 904697598 626312975 332725749 331687896 875653366 612220566 140159625 393800164 151247186 327866283 775956631 714917482 286204176 469715136 988950711 372077900 801747730 450567828 7332649 167936267 83026948 813379434 636616067 983928459 802728687 531507178 121981689 544264217 67314458 139223451 659562872 509401111 297708771 798831716 191170946 273781353 945119215 568542480 748079581 13611532 505113809 290157316 621340075 427195069 795809093 215185817 487725417 644100311 413651954 592745373 470589294 397569825 483313452 607012950 10395755 954958914 918521007 45389656 688652107 547125369 720591449 260069073 918618662 354037065 174764328 447227540 807467341 966505317 347096237 180747159 5701749 483752096 219961684 104580539 432441508 844522672 245620232 39363998 562324179 426564397 148419124 892365041 106960879 205008423 909346736 245181496 586272187 390456457 248876509 352450727 487539220 186331246 690830192 296726161 980636406 839724642 517431431 518394300 231483761 864795511 568332131 194709576 3496081 73014533 23130950 550047685 389553318 660305255 531434085 557816706 15158899 581875221 707385322 578771710 415271421 152467361 295770664 939692823 817779768 345345995 602138557 425553605 774663430 822685440 539111023 825859978 318869336 556270904 396803510 906468938 738806316 360428822 962094052 856173039 479503992 509145664 353696377 115706225 916842490 120402395 498528311 207308196 89332780 566150832 677497123 500287100 633583551 731902195 487755136 783789124 914198368 80708234 318311000 446310887 420421227 234202672 167134440 866374580 113415032 781576067 576114478 453779439 909977494 892076468 255222496 515278651 342428127 219961768 635138378 790454333 730484224 950257587 872025808 608526323 525742257 246340786 613009024 329139844 545782959 677722029 637465613 631908064 588899355 981592845 570244630 208897653 370654807 721994724 67924750 150811813 795309598 582752573 21493406 326399858 895645909 94131013 924143265 380954915 293858065 511424296 487388575 654194766 241325381 779745542 317135665 677953959 100811833 883610010 711061421 252206490 791983333 414137371 638640718 98736442 264547214 807848298 351814618 173901130 695323353 166173960 189887606 683787509 437254631 898078429 986358377 30756864 480558967 143190521 7211994 614272109 65039725 285212608 577118168 800423987 757183469 373160664 125243131 645112794 661068314 77948321 884832340 189627908 496256895 464639467 382041180 500844311 871553797 116859086 620707158 458388128 154731755 251147450 290827233 620490667 161077426 470214520 570512151 989539989 663088628 625318692 572545653 403649420 236114325 929844718 100323422 804540759 388455390 874659326 228283874 133977236 879523698 203427272 653009199 109946778 147043400 848694652 883665025 119172975 301179979 862652172 471506732 276143896 82329075 748088454 59961984 228009678 486621480 958156563 973461769 910494814 663507051 401887343 59542283 804764912 332411822 806022729 17717260 532688031 35598749 283268050 292312625 124319079 996985086 947454110 776100294 487492383 93113279 23608849 716718101 798473541 787506021 274412174 122746305 962889106 541513779 385252361 938629214 139866726 214972957 176302060 472591718 553431430 18340650 528986163 851677414 337375195 643049699 883908448 977112271 684030987 9842763 809922399 859474733 553460962 393969227 794032793 384162452 518079405 922576235 390528281 447372854 929069498 445356479 805234588 106579977 994324807 656176248 927783871 996174968 273218463 120884569 632578136 795522640 426303961 115489537 601844199 786608474 911084792 26804944 680298968 405678710 550470283 175413002 932262661 492104525 548413241 99558015 855057767 9309051 213878060 447370410 986554810 60711243 198009716 654978321 112084230 879544068 586040678 309921806 108272002 604585548 195832076 541671360 597066904 25250032 926757433 382074007 684036565 754843723 770794594 925262978 658725235 308432006 217324725 571274451 190530182 363194190 381789979 163112730 112035814 237547877 437118439 536831250 406896941 201828626 395352732 534996732 13770524 209786568 523662094 137343480 115677364 449873528 513935776 160718148 988615334 175830700 793889048 158500092 773723737 327921799 380015885 791485037 714562399 220228464 695764950 845634401 722148386 426529269 543988769 89534702 290191583 88641632 510207213 784304566 610788209 779627786 784514957 591021347 124954163 147341812 509666643 854302786 413021181 784128410 564826454 533232339 557475646 56398435 715130002 730852340 332402713 121750006 193350868 397153358 673998188 597775824 891503297 109600631 418615760 491518998 929867174 926458906 71683758 870384787 449409693 769910385 28696727 835816774 984249241 182937737 462203938 736241814 857963498 13383528 381110044 17986795 319529886 141119391 655053856 649169669 99964693 849209206 185480121 708324915 76059219 528494078 530570121 483844839 134915732 361287209 47107699 485563313 735861534 407379259 91845192 368789036 212692078 766341062 136250963 821924973 194417376 136757261 634761920 976872436 881853732 166527571 806119074 846623357 143518150 628853462 336177208 966822105 365050967 240393427 796564145 125418141 450970145 673860332 822670673 262758623 227601230 437693134 268206402 671360749 329635032 219129043 604167689 645788063 139753792 630283874 353434015 281943662 61719769 203356616 780818239 583788920 637854663 745763473 743104956 162301664 82404833 164550796 828066760 499377560 909536583 516723075 807259672 509793804 643798451 607631541 717860906 245958071 804684363 421279551 989992992 996029513 632334391 590801795 417861974 291767569 898084360 257738792 567320055 158437698 889117540 581012916 791082776 965670514 591125915 693239281 365066520 375276858 567582739 812412341 844044057 38335006 767258002 239869662 266206796 682534510 34244169 854775511 246938482 120617547 344667780 967504560 998362872 194555033 983161253 426710999 883339719 506206473 769616984 765032984 249140851 219042992 246688043 606552545 156784486 382698596 287841369 39269034 383507374 815978319 862884452 4186794 703804934 374097292 13246814 915359006 290323567 893152724 111878820 715513695 435305118 207818311 508013882 793350403 289199174 478636268 192727574 970636006 924139214 656478748 574571889 290132858 620455761 979849008 366626287 376056040 34796979 677248701 330524472 602754452 827976472 845180777 144148439 322462015 472673257 932494763 104306995 111058921 70805613 680749888 207510893 753682774 126449277 684690135 657778586 611346477 106696245 954394671 464554230 754003270 931872126 193639779 653292327 772245903 703553158 837289418 722034602 364960452 451697058 146892163 532265168 615577518 765803230 403972718 729964778 822209770 153734931 19491439 885934077 914802576 200516187 350846437 728699655 895954429 636745032 362929811 509299592 73430227 367288270 841534023 944872648 161371642 719619791 442297589 276023397 626878856 111403232 122396793 251092054 912118457 576104669 919971242 882237208 444029127 316328069 341730862 983113811 458069406 712574098 497566404 442018791 778889922 25768249 718676212 567017830 506270685 599116033 101224120 279427500 738510388 389278635 847488094 446414650 703648435 238667766 160915432 132506736 621924020 662797536 476424216 279087920 87679588 415133880 463654050 120427551 874897146 775828705 878395750 257810692 875173076 402000976 354771505 908779899 469852907 300161216 716011287 244553773 13598547 465721720 119749931 981153900 808991122 320228684 41953086 221488029 393875267 822853787 612270178 514987412 264044184 683967210 592345563 956722754 607654400 706093185 520066413 879606037 273258915 288866715 408688240 775677367 882442048 374150228 354677068 393513178 687507700 402604472 788374298 138705739 350374688 656549348 514684927 714817429 203396476 423838266 55653194 158786047 198034482 389240337 333965412 957593453 75907573 504829421 429350519 667529153 261188753 246548930 354584522 935237868 661765094 242225499 33074296 343846028 99310949 518711532 515016644 167596333 165141398 142789912 53471041 181732650 581415394 354205487 387236449 607955827 901314645 199932825 949167000 991807588 245044099 318510407 712049530 782818407 530504874 940060430 450878056 329680564 243323914 234302704 780747590 260946235 692847455 871762209 390299659 211878183 108369863 323483292 614157192 284785041 202089757 265297802 86263142 697482311 344832142 396508562 406039495 997018666 758071709 599149288 775312828 846255257 919967116 224012846 254364881 555845247 644972335 115584779 300361086 182331931 542460796 631354603 989652522 183236196 632125294 989524378 952746070 384166557 441880357 543697065 422431601 778708238 951311035 696397587 851439191 261734285 22610087 231296788 998876110 77875263 523953561 579674684 831374761 198757587 24312042 158678695 128071717 420807272 213963099 553644701 327497235 572832158 383910970 465829984 448915515 712665576 507174136 164266558 184994101 821429815 11633765 809562298 819017914 759622557 48790423 119590297 701616038 348108622 796668801 357126557 764138174 166413976 799362285 610505090 266412607 796539426 936329286 697412544 542893339 456510900 551782803 938390857 492740851 864760469 265471115 287299283 168464531 991264229 206759791 211354884 144916950 856571680 106661870 470372351 768666402 208603004 180595396 593788788 598530052 324850029 729870633 843702677 700916353 121660531 101938998 381048380 497260803 464068847 893566824 191246149 942540746 585302704 557426224 643850490 710975762 716580677 867994889 424737208 137768815 7973267 460439758 91055127 775180240 544642878 893918062 11089313 512790043 223021871 468936883 662664544 757359542 555198926 79602922 215505562 25048710 910461414 646263060 925489754 787735324 368098294 655915439 458179709 468986523 421032661 867609297 63901945 565226753 849251989 332309233 610738864 683024227 171679943 428186737 29490166 346426733 325977159 298331608 330058370 8697909 384058779 518325745 765400420 529516291 31107203 629743538 45179115 640890763 956948295 826883572 540212804 397472807 866453889 840559434 879301754 907822506 858912258 347092636 408942587 401206599 276135935 852798715 1736366 298028809 709383850 960215035 507430579 914706823 492555053 413167201 499605202 913993934 640057345 913084229 942967375 596096994 238171653 273431531 334954458 594147178 376184373 23226550 192043694 843503348 809579636 814170877 305950334 628156262 773307349 812895604 8218395 478935532 23698988 560285055 794999375 233809325 442415426 372913782 88796933 540797584 464425211 220521014 674715000 652586392 215325873 88432880 494273775 48183005 801099340 125605342 33621564 585504225 855910463 16875105 60284998 289700085 322129342 272058385 476847681 697360237 356707118 833320261 287660785 738924567 593798670 286152168 914387217 375402912 869018295 789441439 992012754 257339061 697665692 597821241 996628446 563710637 479934725 938630668 118698080 331884034 484095425 119803634 567167086 997370658 5192485 670135630 474908218 570628625 629860950 963822686 147411889 273132823 886332786 626640121 396677547 667522801 617310757 519016183 114291156 62116025 363715432 238535217 455347006 811190952 885110557 749456705 667683956 921206709 124661634 961265622 864227681 116257237 513226979 656523718 765695546 97899702 591370862 481985868 83576435 250521900 38640534 744840617 182256918 149573742 37750849 953166764 875744768 628355523 762848136 955205046 350500895 347805471 217264220 330803761 855189023 243504713 934691111 411125792 676170332 933905587 121249787 265185359 807322429 456046752 617647401 429289897 288016087 561309437 763253234 189783915 78289622 161328936 894413888 872013381 724704650 703566280 687037141 815459750 145029591 318322660 831240550 470348318 236893508 372865341 527759910 365494217 340618123 347395594 201280780 443252480 675601658 702116272 1507062 714693333 929043821 955722453 676799361 855260426 100466642 231345206 297323362 506012438 848960113 968727039 639199859 34176686 63174137 363540054 358411946 848615456 207630697 44930832 80730278 855405011 263478289 266113011 151559171 424333609 720079068 948911956 470192851 483677557 495396043 875996961 831720980 587758275 405485483 197925944 567900414 438286516 689585483 582605939 590384848 171006878 100166884 882113055 323542218 814411006 337518109 714464946 755841058 336639487 988731600 842585052 431307612 237373448 481220208 753760828 788952678 300037592 762065499 781428517 435305558 904951675 412030642 17843252 211902550 905082796 556200499 40020030 836377326 302987758 501372264 913728368 708434788 575734588 788362862 551026421 201469016 582563342 778876897 145394003 915135152 880790866 127214353 807218437 84359692 739182198 319276026 684440060 647608899 565119098 27776910 720502400 852938636 93658995 60478412 422259196 658259708 191241801 306222394 436129102 787459601 631437843 717134618 363803116 43028442 43469373 678236746 795267130 669491527 478487303 369398271 972133763 147077693 235802716 440312689 335335188 861474001 889682597 524756416 119388270 202724092 404972698 247764172 688953991 183452794 23879595 582673701 748746989 381304892 451305734 529309165 242793140 466332446 614700886 251407479 561547960 94715551 480188680 256528873 851886012 513628233 319211526 622743270 534618122 919552342 940057200 806200135 26755614 838637306 926863312 542327284 213734580 809634012 933479304 269611866 47913985 594716653 245875178 882599090 809929056 431781932 679648950 674411532 804299127 278386300 744539125 567175000 852260877 221802459 414732916 415392187 494527231 856680624 886865034 726381510 468501900 810384007 890412268 153038234 281625847 762318706 633955546 947273740 341683783 754178333 334278608 323729730 493182757 873084354 378147795 38029645 765893371 988348583 146627470 880271920 730901938 451458808 570418617 768655771 706021693 353238651 411182507 803312815 649496337 260732227 396757852 227257134 926868098 426976569 292892982 123935210 673959880 253670471 53621 797678782 742390953 748823025 602581605 37620678 115187669 883337496 441430757 904671608 30867887 781934619 419056310 665733271 703408086 728429648 964702065 761436823 528416215 525962152 651104765 982567271 931151723 81826557 605413686 583542296 960828791 60479101 892627167 17911423 249484567 165267129 510548937 948852016 434494932 625598414 591630702 59902570 416555466 193093456 774616809 493133593 648246878 304558413 733694529 200286127 164855389 211372641 771579247 682946299 802566758 298017952 618130444 837609684 284683265 397903826 248471553 70270795 569484229 675663832 334765492 194605848 393609681 383695054 100819885 716355372 326620289 996598395 661031036 451686833 757639360 72346396 893257621 693215534 566971685 218064343 310072870 342014055 4361458 621668207 927106669 327916547 516167345 252623555 835817418 302879351 879452231 379696960 947686239 528784739 399437326 674489368 760250585 150286966 530376750 478483144 701799756 145636288 617177110 829874588 953842612 367358706 705234653 274560254 312361003 192358093 510603354 103393650 557478357 99852250 337324250 946694299 633991404 187757097 896852160 241345834 675876278 441316760 781372192 161804296 316349497 372357972 809527934 875747246 494998088 443798472 510493716 667792976 708409381 260752279 731946592 861308007 700479022 115497375 327827759 389625791 160454451 594287680 497265809 657345015 998795235 331983385 974727627 995834335 291277460 338437401 653327723 37295623 432752413 493704608 877568676 168901875 342379799 117108324 666721765 428489954 486094593 570125010 63901151 873269141 97061224 816747153 717003068 843557542 557542422 237604589 711024932 481933497 791916475 512885779 498879469 368217147 725189513 157747330 859616671 330078467 494858713 346136884 455558285 461615088 396960211 580774640 178349072 744971915 111621582 383023188 821832716 481612505 545453043 982305665 777025598 386663293 253093957 371403643 72140144 481764360 85583860 30476135 280767588 749712854 987510327 247958821 212962554 176389056 844003719 154872437 771545585 160881497 458331482 176994433 53711771 429660379 160927854 270148743 818225285 382846149 202210624 643881495 652468579 56868345 58138020 604353165 722284862 640091662 934815358 73142847 254510564 227001998 779620389 257126899 472341406 492256172 36394543 490650578 711414960 50600950 556878055 635321876 533016929 693744023 737018013 592610037 190274629 571182186 525909310 120395076 892532192 58074168 591235333 984946826 616698104 123257021 975092907 864317693 348524645 470461425 670581256 714809341 509035298 313107160 870969615 451814932 920062945 784424346 970017818 882548520 707204047 890337956 87908150 417231968 661404991 617916897 992747479 563290866 281084969 718043793 134599628 49720631 578916492 1616477 969702437 78237645 815227092 196185610 571637275 737871960 338738019 943063080 342236431 30030605 564492545 399877324 769791307 924371338 371096150 178128839 513106611 611545004 692611542 891875869 798557150 525209193 588703529 297600369 656329851 117164700 44656653 465511817 877802284 752650386 200936014 44929054 819768992 522537797 785560220 753418110 855302127 813098031 623749344 202952040 320817770 195690000 374050139 782576355 888060309 189780945 880165429 401450358 410884686 355251793 355822139 456567322 751948393 809028756 321106985 435342322 58257492 90831477 101794522 11022233 556598357 469905975 305413181 570708826 267925272 450784466 263095019 714953027 155493121 605408795 544570454 23805301 306850393 93206858 83468683 973748199 885024700 922838765 256709888 780084121 917997422 361756623 590690241 393853224 832063503 597898128 289024353 672621514 542719013 974045271 269042216 484306115 110136828 920231639 679878035 574145765 101992993 453028700 330718434 964396894 419312505 537282286 431451075 273319367 647098067 711667277 287631080 228998006 923339058 845842886 335556564 121845264 122365363 53605976 184030695 586518595 837196989 556373494 714430124 714510360 894921916 576530693 445265697 75799761 495957440 955837732 352791424 445032106 920467749 784153786 791591994 341805311 83917291 39060357 556903934 391690692 150748747 424170138 944878635 8505867 129844389 193519112 776465859 535072800 735453491 390117637 91373902 641110238 470483382 115387596 127101172 737311291 630736355 562044890 722233312 719527588 840819630 772464649 361861106 317787892 14512912 433802031 590797416 57441166 662162755 786886015 53462199 229451180 434469664 657933381 227403777 872129648 30558515 278747497 435825580 668686398 213841500 575340652 691072708 987885014 182804914 959112592 451639574 593487213 394784045 320620221 26639166 675008719 15278269 462177646 671642920 417140493 518862190 143307029 695420371 880749441 344819683 452015537 265950457 567960150 729476199 224011672 869906875 30758970 946387138 541385208 577589046 235387601 917127519 478988298 387012101 717334578 885852421 271850615 867951905 272776143 687431099 495281545 270058155 930156941 679901316 135353423 157101944 104033832 699589216 747348980 721122217 387648053 41564476 584135141 938020752 745855637 843220812 194863301 114901969 746214109 641969596 404432304 860457147 162677528 762959538 906691734 538771806 447524283 838324325 763553181 809190550 658945740 775453731 225311932 413715248 767162099 182174104 898138647 50785201 410032057 983441570 28544434 184400362 878869801 894700208 444213192 174214748 568306225 602088231 63491021 548697073 524867392 793845636 169152990 508604904 479582436 158444848 998786610 62297128 808264114 144842744 792909821 121075325 149731175 125353071 61823088 206342306 44419589 218910504 249862087 611882900 621008550 935007511 111270547 324508739 631463380 479927515 420925435 802797771 549936767 902120801 792082813 937505325 987958066 644924677 532971804 46702026 249112319 743172549 828972199 383868835 24122567 501721748 801567008 35562264 714523895 742424565 114079875 506486180 161799532 512137872 389332138 95290763 784646133 278812004 307649828 374264000 924801511 174645616 541540796 986749464 417227521 160755066 994275036 873440656 325149782 730274279 136518253 228713866 412711685 589063562 914523560 236370687 368685242 950863224 921407127 422614641 131335395 584196951 78288190 750086201 509944751 349279666 929323798 347562607 838155045 93232770 559142520 468697831 739098588 835035135 173984553 354479256 414556561 621505493 885378245 316638023 208268613 73412911 767570233 256058805 780909758 683227408 413247261 222185222 706013910 325251894 359327004 122642251 288962723 186116642 530091293 106027927 38682376 218895091 857688026 322393732 476797568 320516874 992612945 750109247 793993341 418273745 756357731 420613672 327656936 222644887 119811674 475874550 214992230 29880334 372857472 891186902 337826010 211541831 250654534 912364237 847843763 922923699 604743890 172227775 532304402 161888012 997580481 802432502 571362211 715369152 885210393 753563838 620459590 414551176 78119997 533849124 115686357 196122390 947056473 186679436 824892690 406260092 42842105 577123479 221985162 262493086 278641541 81258355 515449691 447018693 550575035 91600756 801957335 850174983 969547365 748302155 373708443 397260974 278941194 522585592 701434364 359357528 644056639 226796701 746948305 997864821 785558868 647655221 45705049 507223501 432082703 747655202 76511529 789829083 70949335 911713383 348889269 488212553 438082990 256142155 49828577 290956992 116427590 96212171 267893759 914341346 807380771 684699308 296545784 244521346 480721401 735912027 856472777 406037609 433808229 585665443 437227936 288101701 35246974 871739479 648386636 570978217 642509157 860028449 972080329 572192275 718121524 510247147 809179443 54584265 749553914 622858831 339488735 223387359 983637810 454198825 69283908 140466745 680451055 456619304 135489804 365959144 644072209 166056457 317725574 483880037 264592858 172741657 797953911 968327860 45917851 889869113 175278388 448279449 831185627 870293041 990430079 943430339 769199463 854229478 411945032 73700665 981976391 571848241 159351620 353667082 977499455 36865898 968573053 250770547 677810569 74503578 902620500 578438395 953163441 310187679 223530994 217860082 361228630 818930582 397452612 957167985 387050843 446907360 529826796 902658311 225150579 994026684 73604205 854716927 752294625 535382333 110490525 821013816 405063736 818006889 996000723 438276851 607079957 820469421 246163204 677596868 320395881 453894795 240114533 11164446 833949012 542621230 230702664 650658908 970146229 712180096 159478898 523500267 391773074 961589070 778500114 333478164 731237237 977074933 150529737 575678193 219254402 722992022 2009054 516559833 338235263 932027194 575989008 775667531 695712130 908458494 65784014 241092427 838286498 689430243 804811503 805490643 242921802 502126853 71482976 737292659 432253994 621808956 677442542 838033806 648439529 752378332 887414071 119477709 395859188 938782116 772279539 259299365 190234842 98183011 54590454 393830759 927384524 236829952 455622829 161298394 829239242 360524137 388821714 443584257 842757656 413959042 278052397 147700226 781038333 560719688 200883972 319161988 849949664 501808853 891696561 861197461 722222603 304195675 252824729 999615226 106665569 577616496 321652159 570247999 821132231 281885540 199457903 178794349 627758671 538951905 450546798 96520345 759981408 201500813 762836501 552271757 229826451 164684110 18795152 929682838 282628244 81311591 229269687 969031623 80780278 176869236 691629313 652419490 896853299 862781894 633240891 883111817 278155813 564930516 582138172 427530505 486953063 939616802 796036987 424717540 355673000 42429726 676763720 947425907 362914521 772066362 635921764 374146492 249096942 147519317 381919609 17070435 83972113 615507213 596202103 993190899 252057307 947160489 239160447 780815409 554544621 6016344 896820281 63968341 6569871 537561151 573429628 812366820 267269634 878985318 539153491 101590787 634916607 216899410 819626761 694746673 381665827 167927146 538601419 794691582 892003709 881882429 393296570 316606216 441832412 447968761 408587903 88248337 864573208 501851341 691674246 810467647 112455925 630665440 873546460 538191532 886927364 726251255 918575727 532850378 743923882 871519798 464294218 996231850 715426721 801151934 151379413 837852128 744338870 56521942 250923398 447108706 571846992 803308456 547093963 134272409 153830620 196605616 232900533 229173545 531885571 887202631 595072182 833593588 591100814 167514665 291238667 428227322 679655484 628645881 10187879 261065692 346685066 620154577 453717526 325074113 102833553 92921298 508991506 918637824 963730959 546746983 451384527 333648393 592135957 645403707 915139113 481074190 762162008 512966663 763098905 107088247 166673468 227308099 519217419 998573182 17101011 375929724 322008509 760864505 789425936 110133782 314184074 109974299 331109040 271124022 177321684 784136045 468481699 529137310 174891624 589000820 583032853 926862812 442231861 789925350 967823545 355680677 105654086 19633381 134404720 939530792 304608819 492846449 171614354 232497657 141916717 110204561 701872148 411445109 202535309 389669357 254219914 232921046 940551474 488869201 1106042 103860502 291386341 499419633 233872322 561362705 80037552 92665330 678435997 887613152 364744974 965608252 745747120 686703675 599258765 105911579 464250265 345439020 629348810 417831415 680147713 906243763 3232963 101432580 930880354 365783538 98068862 225087670 288561553 952151916 487802819 91757464 447055708 758054837 387222265 438540737 267443749 695734199 52210357 760863674 141111241 681994078 623203432 261573 370579608 338898694 203236371 567251757 93795089 176267085 553613894 891225981 121307732 380208711 934465138 814014597 774021408 830849045 992560707 329475704 481846929 206860955 193064222 550811259 995376390 993498170 833542633 429918778 194192446 370615670 842675492 581848101 388528195 547879050 474710927 815350433 223755664 326133389 683327517 978221998 186015535 790698983 36268816 769194182 354724001 877237551 516372547 783505784 990788163 370498661 535015188 966057452 460273374 604436610 402833095 373138851 294085089 853457103 794513823 666363064 814149189 469483099 754349972 385727934 887934880 452490789 598403723 970442359 634535253 105110368 937156880 681790191 986031168 409461931 750978780 302327968 624267956 409543742 547082357 92314701 841043444 34143160 91680138 803720151 202891286 242977388 291712494 479580055 870304464 113225007 411404428 467110167 930558564 798367677 936641592 982612375 711116129 467034054 760822483 408285682 382950266 153985808 415465715 188653836 32437901 894747672 66435968 838575867 877918707 467570 346483498 710997652 709633927 221206295 908648287 763136481 875116625 411119049 558030244 98809231 586883195 954587397 846313462 340586802 418714199 487840339 327840272 721507781 566327872 841701502 987698929 503354018 718919189 153643214 882036700 510899215 386713738 655369929 78853669 201956110 431284881 393608912 316807869 480562333 501482863 475615643 505718119 983829739 29590208 207702555 818321688 585947221 570636981 349862541 34680766 708324007 936344104 502007996 237216324 471185759 637668962 82352890 425004820 408944642 752276870 859239283 639014003 404893963 14623045 700703140 932729062 780913316 220202422 832833088 959024856 486442178 102167576 649929926 400015457 146936353 180459508 112913044 777270815 581490960 576193103 205426991 167663978 885937591 616755060 221565512 833692052 120654002 582260373 707421458 651773541 575564164 574645765 340359310 892951016 901957743 493762374 332469884 152001108 607239359 763962249 447852400 787824548 794086610 806273985 402077882 835368465 9555956 962656357 272457359 386001633 947254991 724842491 111194934 371142119 700580653 248431712 765670041 239873792 583998226 190678951 51657294 513537494 307847205 352468960 360596236 602020265 795169772 345503444 439029062 347830536 463903950 664690914 714597822 336638500 425281897 521888225 311678407 858254510 136020200 203743206 81078837 238770853 614988575 378817437 548454644 490685587 148507562 639436729 849587948 161696243 650781347 255774878 609545930 336620181 814596205 7649375 359984724 283835212 275635224 226275089 813112627 287135774 973331095 661134639 208461355 510474067 296736038 885285371 825000559 971289760 900842599 184105551 901396020 919416606 21617218 756022823 357907370 178085953 385744630 238817405 25232917 316392659 862450544 565625983 823193906 449214838 671684752 663932786 659003016 376181467 25104752 436870022 970734895 723645457 623040554 725798800 601153787 752035011 402657511 122464264 810712457 789055278 426209965 315924582 657250807 552463832 284344770 451216187 664182899 308987439 388345999 96584655 931192718 670494103 537180282 42975478 829390291 96834075 939945037 31354429 636950808 510620015 966136917 71211292 670596067 211627367 319561415 539072686 599187781 295520168 232060903 723431913 115030475 755799761 946542166 18361377 206806824 632035287 264060039 931680292 845258336 602610784 455952581 219903976 662571715 388711957 212972473 720300969 478729978 572590939 512171884 238655676 685434687 907301473 553143082 181759548 931180180 796137553 922978749 817321069 827656399 65787184 733433 980451946 339749943 384864920 148978467 159907327 153636143 696854181 835745574 30650497 955282019 969779460 786393512 783864417 205061733 477840615 242429658 625594366 230253149 126978948 179334840 8060774 876290863 153486652 148269251 877545018 905604269 985652777 427594631 878190934 747056208 145122922 811342025 996362849 162611265 67153081 868290439 546256956 953645997 181329729 908690053 551392447 960385234 616034618 477876593 636543014 524437244 445053841 941629459 261180114 720180275 512795914 23068207 283651505 963701480 351099660 748276860 563648605 294035538 888740456 514475657 452424154 735635334 645031074 672940323 733277384 382628128 854388779 208256523 717732083 94075830 694204541 523731647 113436898 988949634 310579417 310893281 819171122 107380536 318637522 374985080 410728730 602925440 89215939 472261331 729078353 154894 175743667 416003166 801700778 539564730 578108062 77919088 897185009 721289473 513319218 3089758 553880448 597385374 881774718 983716046 680131096 260084919 356987262 880692398 434641781 661908259 934870187 627879113 36547493 866907893 834005660 925382494 261889210 806741735 847194260 933932116 586103429 60427690 317240291 326683373 353756400 24611946 408617538 46452668 152085691 965548192 146086159 339792783 722246405 864620558 910289589 166036524 233763986 306666545 894253796 471774505 675271349 157232497 790832898 622891578 216845770 634404021 177152180 214378580 174161578 857980935 647552867 284892162 957090340 68903077 951360875 257040220 777199927 455527660 867824087 119689195 15922862 180839457 40940763 442995219 870451540 56514965 310904509 199306112 110815309 866867818 292685061 951139534 79371310 425305701 657916293 93026654 820355504 798307621 794535294 287652790 998095020 21103336 135218655 284481593 192327920 439119581 131913944 828793449 813377399 457884078 156789412 308727150 329964274 194447720 637898301 277707833 438920601 676631362 274936437 388171018 253114631 955494090 256730689 110060403 404810175 665872852 69917468 61472433 671445372 900620627 759805095 730458545 966417576 191988418 512404593 883211176 888309608 439836448 63225042 231134620 56321821 9771745 125488946 539424412 579126305 939389006 46378278 818803111 529683598 487481296 305729707 792086915 299637313 304723931 362436372 590156963 281515728 770986352 275090131 749823096 811302938 216836741 560511880 979977630 527543390 307839410 46303321 764721081 730073934 283690127 455184106 302179297 44448037 622697479 930651090 451899458 461463326 507251469 637021285 481685831 349598582 402104251 708854282 655468947 557118641 551420095 64854919 583543623 775080328 255761106 807278167 239356225 489687942 957122260 545023945 879303245 5220027 484541653 214127117 130557142 628898085 449374269 671233526 677180184 175889030 604465607 942090292 662397990 839666446 824142660 13480916 622647289 784355868 380642199 430424977 385919764 79029338 552235043 634115218 294925897 689029848 19537098 882676344 884262996 536057766 988626913 51865143 522353197 686072682 33429189 838448083 962544268 327190604 387114029 287125006 15273241 172274573 598192746 565400101 354274250 869104399 732199842 423754111 206258708 651567653 773234346 635172565 160380863 725739318 94865477 575299565 79946231 356410560 558896254 145438921 704499579 360832268 147948208 767601407 49142480 511961195 286352499 76295591 242320320 800290436 906295118 241775956 489943292 319542747 543222976 821941297 910872020 825154052 484092932 502391670 820703400 574782207 235934325 887291257 463362342 779284727 493005679 134181527 292591643 200868530 573102366 774688126 257394580 702241327 344350570 753769054 221746087 352055604 33116800 773246278 32290788 265492458 62262788 142763809 400703758 881115227 438932353 920267812 433941473 564748510 534094929 774401397 628183180 338266861 428457098 133689715 131418145 331671252 887342621 852864495 604811291 888953602 586971065 765841510 496426436 889021459 107195683 763297499 289800664 1004873 583860553 623863030 352528515 734901927 422775436 168356080 543573572 991257095 713706204 909559894 709161026 167617962 820475014 819156634 985931229 63500389 812850420 149590076 101322043 354075751 355402820 282022451 198340260 244926312 175034748 427949712 564307096 789983800 618464854 351286826 341635382 630270744 260724271 361235048 85923932 961994315 966762970 976689057 635160653 773651995 143942306 347869399 386971449 822801727 402720423 409261401 775417240 611823881 340701191 345080754 768837937 444209300 31403546 361644087 878992124 114149486 238887389 154814744 956397695 20227073 142412005 894027929 737103820 705934329 734951818 595827887 931065481 828303335 356261836 822069055 422564350 209588869 746941013 875594832 670059501 270487850 179697485 951407466 583880460 990834330 737651826 854938895 735129035 885593412 99101388 781131890 813238611 16063093 824510422 798939520 854760868 91182996 919030396 416924025 576214905 289930577 388113372 714099287 270896846 648913428 483728132 229253761 943268361 208181560 996648498 876217725 380496703 535307989 228922959 122389709 23661831 217243770 978319765 573037647 146168209 629164566 24533307 521706874 642077575 100656012 357522297 239613378 595575088 796184024 159859874 524495405 608937919 101809476 102858760 430140538 427980765 725037662 352512043 29808032 754581807 649450382 278338674 378200731 311026405 961344221 909869322 321129869 211620068 149832816 680100121 861075651 977844614 722057390 662559168 391376215 478564932 442833455 783579007 504784504 182252568 734672974 124272192 232574586 724373579 405532120 563973785 226504899 29328944 686073219 316330712 833548744 380174082 272190475 178423440 143375972 748231569 468319517 642297978 819976341 291585727 61359629 377830096 34764150 747228558 655716731 582820563 840038004 648285930 173052127 520468529 455093801 738620869 249774275 998196293 468871300 935407972 274021030 691384850 772188366 793189265 884318261 936478225 893321435 904224263 101917885 747036356 440192810 308422633 176314514 280288310 446005292 742698500 865594698 474256699 299264816 94024516 169754951 289416929 557245500 995000105 940458518 528577371 249189843 410969980 813658861 975018872 855072335 701987125 983707609 346060522 962467179 781825250 202023394 420756463 628272356 358697376 466032781 525089337 269339056 586527743 864431422 126518158 869021257 578860308 255223642 575262291 594443098 232390634 138840564 329555227 47522597 260927408 786196202 459204954 719739253 796568130 841436590 85373983 292468006 108458033 88589613 465465695 758334746 346283440 999503158 97848071 646705030 69382994 279702836 463597296 258482589 54664949 906403506 711523953 967868172 107683498 926931492 335257255 396686396 948712762 117163220 758349589 877599892 981782683 196736260 704279959 144750048 385076185 481757865 287923075 586004709 169982266 486499229 733367902 631599086 197649663 49981809 920805849 636723029 667180703 617016902 514539922 281408369 217268446 390413170 102980344 873575456 841745043 37274364 672714350 532683978 515613664 146285802 338174222 620479693 428646390 110564314 64110329 256341809 96039770 943625326 502817586 346881637 622383020 625841619 383676336 89193972 422073812 936293696 346251174 52066001 65924820 169697284 231818201 281252917 277964911 693615300 915489927 509197262 12011263 96974897 270621658 562528234 169891803 914988415 139568525 238262949 233008054 749180586 157884992 451371169 847161102 791350314 91130362 749533424 11728511 95798939 888407429 117170149 210131252 885600399 931985442 185833487 981891811 292583145 618721386 936443373 984244729 384055833 159540209 506906076 147092724 208893436 767869866 860067154 475119053 885932390 943900115 33097898 322121068 676682445 257589901 806641378 17375224 33992560 10424034 468047051 333227122 321526196 9568559 977003879 55460333 389428657 196157651 693929678 162254937 44288688 65375269 201110138 786915506 235977894 215025750 696366227 269477697 30422537 446774725 945254320 858990119 740305086 822094077 991590415 45439513 868272887 183127902 465408731 56617697 764867952 721313603 731792870 389385742 88032691 34986653 739808976 415575692 391913865 927316211 595508134 165077306 419561616 254019218 100452402 364786089 679324093 195111008 163383803 792861837 991237340 185577890 949962512 780674880 387331493 20054164 272913322 872762402 658214836 513566641 90331520 878101031 194414453 647466453 907653894 535870663 427679340 140610048 756561006 234865003 942069258 285956806 158258362 957803660 488026975 648408877 263721153 786813102 272682238 197232359 495414471 996628683 675191948 451976431 951955881 357519063 527439593 99812628 940276303 518456440 245291662 980671166 218626718 877306104 769067134 389229917 715236639 585680357 167526991 422582004 982299555 737147342 242457143 521760320 962269261 510468844 541354975 686918956 53623008 238176717 314945203 924369401 205653737 494163895 285006942 89782374 304376176 883490896 383361690 436941882 133005955 377480004 510820028 986584050 215566584 249170967 19600350 208083477 594298010 25330890 506797286 150786004 283729846 550887728 296676687 65850521 215519396 38248827 102122685 811804317 235711131 238504377 547888126 104558734 504820051 314131976 902363607 878912800 693010011 669449058 66869514 647833759 856476733 429015178 303485658 589619610 925040831 432338388 311755963 771201608 241651255 371386993 182843599 303875943 994945690 725611131 331816375 82833415 852287060 285539770 621020950 842133702 737818830 158370047 683999743 171070731 95533126 541618041 239684764 655406619 818599867 896388619 757934161 884577822 971270076 412553282 632479590 972202414 773088714 418329713 318318784 988708165 313654169 569428713 592352837 219251795 64858510 564538689 703448277 704298196 402386685 645776041 672209751 730337835 791199300 125569175 601033766 562750315 404235731 333393892 130921633 540464730 550560683 5455708 810632897 460518488 92606042 806200500 656483592 872545855 41245045 715120690 834331862 692041520 431780949 149039828 627649566 708844977 895978024 421601239 646628735 50566184 642207020 458762375 173126994 731128398 32142302 587106150 529975382 73789520 660621635 620546611 766376697 288543053 451405053 7724247 740968439 342046901 99588385 479176258 40244650 181629870 469557734 401237485 475628890 90996210 446848454 429409373 376267741 674547567 229346985 707422176 336600340 437042808 773090942 367480520 785689622 382258946 602073194 829627109 360231697 906539816 334021800 230476643 493010153 597852238 947451936 805109095 267272121 679882277 498305377 186405299 127304727 252908113 510884499 156242407 440863415 223043920 618034292 372464600 666972506 566020855 185504470 489530324 359281728 633500258 824063693 142159886 355524814 332277095 766466494 684181265 896286494 518621828 907167520 144512449 252347046 835147207 131018630 647665446 343762522 571791448 167324809 979834657 848255150 888486049 848192872 383785825 623929535 926585638 740665038 471942222 818123121 825961341 340897081 458821135 364203279 594364873 491592190 589190684 68920688 547735351 423390282 617604059 557594951 354141513 542117223 13748815 543265074 783324216 116524734 19061139 785284426 813983890 341961093 766558346 575019167 883922068 930783538 361792710 234026881 634546898 287720868 997405944 715081164 970266668 793740287 454794465 237618656 286673193 63993941 331234901 270480872 72329896 113187741 389930245 259486569 321248608 497744615 81341240 24486156 885814169 547151356 69596015 3012375 317203577 98841514 144707765 373218721 990574312 812474676 545923065 716946116 797165870 4166271 429481130 516209348 558133025 365490574 602453502 789509815 961589199 772027625 652514036 746489116 546394742 722676423 805814022 709226550 277714097 128497912 565458334 238977154 640420344 206377132 567728412 964307051 251732855 139555365 167226650 276372203 916244736 179164423 407977472 147761261 354202607 597810372 216736726 288404394 347781564 889394539 988222347 682625851 620257394 828087713 750319963 589739177 373944468 438319428 449858602 14648842 782861441 385434607 13489255 534043037 794628418 782396302 114813406 113886437 812419772 137895842 786761367 267472478 541279727 969944176 381264544 740361917 850462199 76970723 762402808 913797087 877702943 221421423 925318308 10777581 842900420 943356179 662946520 330629402 192229371 858120632 462176625 336063426 265457950 796959493 703108598 630468580 771443134 900089871 829936652 578542421 271273089 208090196 617147620 711070449 102264186 178841296 155430897 498273613 398025534 252657282 835646028 793550398 73162847 386345656 935526211 354183476 893826805 541016411 26733873 694389252 291474034 313700165 48785685 610378769 163221290 216473618 433335550 447415961 617251452 665198710 687991456 861932654 98189409 57198366 228793883 46002779 325365663 381151532 50242889 102991176 19707167 582511288 838072341 603271176 844513229 389659495 835934265 746995955 569428373 15791196 11207416 921941973 900826500 636054934 728243571 347517213 151119966 401058784 392652312 391157565 159136884 265106343 21347317 985912905 281252057 460561269 541789378 555347384 293669743 786099210 100231171 852660338 213652660 384884960 242225007 329586315 277512723 907794590 68944164 32480522 374142595 872309997 822243287 853020483 316461900 855097127 43398377 407354169 384844337 400560264 128476499 893012527 341599033 882715019 103086610 161392969 6043424 884703790 270101487 869920229 613907428 254435106 408985811 849583324 232966006 527379298 911982156 116603336 841496873 960072028 618558874 964639637 920967633 349817307 23404163 908128820 247753374 488937688 722556635 109897355 220398091 555456015 539978297 778615258 508867662 573765862 473792378 194460868 620694487 601233143 6145659 492666887 405034017 943511118 511469430 354328361 197537502 921419987 116722765 88588896 106655214 634813738 972546286 832774570 136729116 136599207 691134968 15678659 711715789 109994372 349087890 881269588 221220689 346529710 187147032 255650498 234223810 178504256 30521439 896556229 687524496 41860459 363287783 312183068 586209903 132471967 921472530 4168519 840481002 833757637 938451331 942654303 280414747 64137684 288803195 320651193 842982152 584106617 861300684 741469918 805486999 323638082 440904429 961886863 351693725 110390252 731144764 591122889 687109094 350493122 635348788 727052541 525642607 738010745 246309779 819965482 150928305 494581493 461285855 670476546 642626659 624905183 888579352 515934615 696780190 803528163 205327327 16477455 144013135 901060642 477233504 95198906 807231906 885385452 806872100 934439919 620202737 849031644 314470512 21167508 855362532 84161366 908107646 926709482 385385758 437034193 294192185 356217860 174136474 737131891 58552290 330744342 136457867 23886559 409980346 556434397 125397124 905974723 667950426 249687228 895410433 196050964 357152260 145877296 156632806 560148117 981452895 80468036 982065471 528117984 650079501 864210437 327068020 588127481 78673466 440169869 945757026 917330857 899839524 765168323 50980503 355177938 126500916 694560959 289642391 48935546 969559818 729126674 70813742 656696428 362402070 583965621 108013006 329922648 32650055 343865454 687172536 640156185 79725864 306689970 777058619 361386891 804058144 782988537 345620946 656785926 566444124 743849279 872774851 32475968 374944270 882150209 54729586 335354219 980602816 360302558 304056656 736232622 75082258 611439513 506984308 480946398 463336330 392614144 384450604 795682712 765050954 638423777 305770666 716918818 474092933 655595051 267177839 342091844 354865277 376970313 398300411 784222267 529071473 555722546 213010644 440054443 169452617 490937854 541180047 473662228 338735850 266809861 533208633 553239345 229374527 209296419 629359154 708826231 368410790 727923699 286688660 822940058 813313803 136761694 48467050 626201574 569056927 808084499 729851163 801417633 834320549 589668725 622400483 3454561 560330348 621077254 484903290 112517347 338511673 370374393 593736507 651611376 859004030 788162271 955955415 326641369 821492628 913552569 25377567 41380882 589565947 403504665 895945250 19855655 501489970 930806443 177905106 604817863 354905285 356738640 91238277 57470777 729294721 437494478 830249565 468425710 665497517 589905157 537511232 789004822 139069259 818318935 136286380 164478574 54825170 903760878 76580785 910400853 466270453 838413553 144693960 39338378 5600001 614686627 29688788 499650897 815431115 771456555 973706595 976327677 123576067 31442687 489032015 821286647 36593877 837015944 952176623 577648557 267976201 21583275 669776640 57742644 706108431 750588649 217131240 588715160 545304439 794364221 111905071 277515439 253105976 996619390 542674128 915021686 537122360 191410993 439846548 303920684 788398715 248652620 199370933 936427463 511096953 980432255 162941328 25897567 565725168 527615858 778186605 473280104 880195243 6798443 782585342 89587849 20660868 200542451 166321690 461869465 121489470 752843462 652234976 814874672 494984830 316662049 238954315 49059628 187594713 157613826 670031900 188652586 132070947 718086901 938395157 866223612 376652770 866108259 415666052 531295714 141082642 902477375 225588983 116519903 867829832 251083929 732626192 928688594 444717614 955560979 765274852 338273430 633044164 608754538 182030031 131835283 664787626 192038323 185306322 647263610 451949115 98481783 305848086 779902901 454012008 223729971 335165105 330271994 547511906 213903257 73040928 961619304 503139555 424812049 162575339 976684312 433035908 992448359 177456177 282642608 772085466 7875100 504204933 722807122 34963163 48798856 64110569 117848017 28099424 438786525 649905013 912512243 775349128 88581711 462175600 650923129 219543983 445032589 274109675 650222026 401448559 251825898 561945562 847702680 411746574 560557190 218608798 979775395 625447834 650690618 534858361 62303894 652615592 624029681 189162230 306166359 539538517 185421729 408766162 199588907 883571011 827912611 880469309 429231934 738461947 372381693 912832661 413069027 335368976 400321136 204034976 280351533 662913125 271355416 135651218 780337761 522173757 147892730 57629249 635849411 21955878 25551308 653725956 722984439 974024476 349165520 386821655 810585985 194978428 25889694 630592787 164022481 827378949 563097730 871463328 172602603 913992377 695805490 685983997 769732632 16672695 691867443 335975672 701878298 233357658 638276512 909785547 185446373 867495572 385673333 62461209 113201547 754331417 757986943 223504019 283671924 544788988 296082789 250634538 157523009 51392408 351524761 574380312 427988146 702610908 828950112 350777307 134834907 737842324 320977654 793597732 230419741 153962672 699459045 211813990 442275443 662841548 749816917 568499622 846056361 199776718 932850012 793941670 260263153 686208382 264085472 829411760 601304272 630389166 985987332 908658039 308775761 332014673 207773852 648379717 384797277 783285613 4416427 937967987 197417100 951215543 557338927 204888440 987048699 477631219 870520157 454050451 708525856 857791033 296552216 909225564 390601990 769403404 685750810 476364089 686504166 69289166 774217867 961213525 615357936 713267235 871622764 290765689 908772885 755036115 79387362 149811263 298017042 433265969 775759158 51929670 661123598 731059460 394271546 372152985 61006591 20281891 386278036 753837019 689136092 131188648 114457286 675979722 221913075 468201140 926483088 435605043 659565951 339697032 704011756 244687005 600068985 975706523 638883854 361739704 635995398 379232818 251545490 590590066 33900925 137922609 809211957 341278539 463233046 582871085 600593261 674591194 441637374 499689075 839516531 44526141 488080146 716807972 261500486 248975623 662322522 133280293 63623166 90715832 41306424 794009106 19561677 496336777 433275019 536639067 690071370 726940720 465777871 918470581 722357916 355898915 973182824 675553919 505218912 794323806 371153875 739500480 503251646 844599964 973715795 844643801 211730533 253580490 349756043 54896505 203773723 869031114 707332366 941262946 414429013 771287630 482378894 571604696 197514551 433022471 515999478 5722996 107176340 791050498 904128734 693881708 122273411 157339152 364760161 454050397 407155877 364486839 22914921 772180222 831624065 817379953 673388373 721320897 703660132 787365411 574541802 344559256 592627539 921960299 609674206 860740986 130185002 791307396 312178523 107212412 772687210 909739638 573701168 680338307 203056010 289983751 711089473 901106505 935390422 185639988 890239601 36313494 510944973 440007544 587975322 613044920 326053767 683330454 938839162 652184489 139826781 17228549 680822975 870503838 828194548 584080811 130520230 63162941 472672315 133004948 334743208 676507251 757972193 423694281 272251829 589555940 552664205 722286408 800904721 876816379 32307022 799405096 889680729 156951079 306601493 651954417 669271447 35226770 54811062 983745903 362406644 879783823 432432066 392276720 901919142 395257534 608709687 126715186 312328946 540991040 63465048 387130202 326051914 807095561 129051439 737776096 449516862 276714191 555846561 825805072 651984640 876758916 459005017 647495375 322703311 242434337 485741568 672560282 547981278 726244348 350670013 777030284 961692125 828765914 25489000 422709225 534094916 501139849 145100775 80997224 139108962 484291232 49075115 665489165 760718226 79419571 330380537 431115170 457831540 782990234 726529950 691105449 335245471 509702698 852500331 455708688 861369426 217712236 782468426 990695663 673553870 912752804 540331972 898518297 295649583 91134011 979757782 189701462 387450910 281163045 677514151 822406081 889760603 210538194 68400609 20909151 253017166 103321823 333836600 877585715 550567959 636632417 700178047 831694229 885981112 165547791 911296738 499149710 484697807 284135774 126997222 73138005 238584219 577335488 858043785 643892253 614091569 242567340 204336049 778021870 907856673 361696000 389342365 861458785 72416619 214635015 906588033 683449736 39438277 92905221 769431878 915627265 79284440 658346195 139530759 199200651 173648614 310980076 237552039 833548805 355321697 74841823 669450473 546872627 692748034 133754499 710519596 483305048 975849496 740897469 520540680 128509190 747504998 160700249 220409015 594501100 355506843 940614517 312834463 489028904 881262339 814446718 918026323 425860069 558471418 913812194 568440293 926626059 741249686 817078902 740409858 738263989 158633239 633570979 436791210 434655748 119198798 342103798 805099819 704603221 820016519 301354695 716259050 437081906 778047118 854573395 510064933 596410203 204581752 529687915 862353959 974508301 543872680 580867444 384981394 496755589 663665595 539813594 577551673 810921575 95408616 75193115 631270444 974766490 358714250 945649438 389650787 73123887 400092575 361395414 423613483 648174321 281607044 482005406 149802870 667845855 726989876 849824753 47757705 827963227 615154984 855816533 310222061 823891985 517131064 534916034 905742398 888976371 40850828 510257274 335564771 788504778 426830448 205964031 899109569 78835602 215975538 802987289 989987193 351875137 905862370 145437293 534151965 904043592 202625654 967706758 845125866 587003605 333825755 738901299 73585820 737412715 426055484 106574680 580796543 654474517 9426671 77258538 681730222 722178838 746132105 16373718 1564853 420769348 321601434 277412864 479414192 427461072 537693766 401931007 548477924 360666791 16977422 397419954 470396272 19426331 187588435 143063796 706958914 850011572 481984410 926913134 673362591 171003278 25113417 857027115 859368938 498383512 258136834 466185794 255315218 555332680 464659789 519485081 453932857 376929010 103467435 534029600 563344282 776925611 667417439 176090838 623572644 340595041 137880188 237989327 833794059 799004867 601733457 687087250 271071104 572325249 727019355 817781148 52252394 259636469 18192222 878086416 4432885 419609323 569800594 964772761 838730038 790875430 110540102 514830650 842916137 21886495 261471517 114769340 500985423 685409383 567426995 40390732 860977076 367782064 64164954 625031142 589296342 395499840 257326033 511174446 26018601 645849793 187307612 428698670 581417758 994191482 450077941 378969474 648700087 804130794 436287777 694555188 815537140 625684509 254516982 552529764 731137237 130093711 130295820 302416089 39726666 272980796 352321702 551549404 156638607 114544845 411559849 385871350 939262028 817945483 867855667 201881599 177633170 182028814 861543176 113067278 62452926 979747779 156852280 455688674 996303515 523263171 7936951 348888737 650417062 756687237 971513868 60144892 998231667 917871031 234262190 609151696 870278506 875840049 140222284 650540912 72808243 845292143 712313790 400665103 122972068 917849731 669898500 500606881 335857310 243781533 334146769 884594044 347887613 371882347 784702727 133875085 252087497 739517675 835748958 967046577 577008155 511472043 550575282 437673021 160489321 332802700 281011502 386825778 67141968 248690500 717754720 572356243 969288798 958439143 990982955 719059339 923182360 781840560 38748968 165897883 454312576 986092380 235400894 2935425 328851591 508447020 327953657 464448313 867956971 347360928 465492987 66609863 293220294 255843180 784797821 326889829 491011853 824095370 401423926 759387969 317818513 549764406 464556965 515874416 801630485 468548908 515295590 905748006 780368219 580922487 758717301 217611758 630635277 773009851 528123734 441223362 145143340 892096709 20408138 145876166 770042174 698424655 170957692 87222121 150647832 339484301 266473913 372196915 70740612 589468198 69472510 635625784 633820326 982705658 848301748 907172041 697528798 629182576 477519901 157147953 944094082 820948375 460661039 417711363 458348538 839713711 345678202 944698073 385922584 923831506 509552811 722943632 577100529 445914735 50354125 976108630 245401281 968421009 925199319 6460144 681694093 408033139 892532017 131285199 87278514 683807308 39799240 469999414 614578844 108623042 211283848 865402382 601150969 622790216 179656786 689865952 548177613 328205765 228315270 730012127 796128606 213704393 470699661 263661234 460051469 869471067 266929169 831689097 473994538 387434999 469779308 969111152 131325446 681938408 413777533 427764321 472788547 549426860 497074485 499774071 610480887 439947701 842557091 447467246 28083009 581862730 228882928 350859934 421267055 661597321 16643743 868068310 893719741 129841737 300769967 453481016 619115790 534666650 928432452 211971982 287043691 451470591 202259198 376187823 886625956 580065336 262608283 598720098 864030813 516649678 535095520 180755710 344191396 848552925 653428595 406591765 962152776 388806502 820975341 822342106 468917122 824402803 931221542 673224759 724456363 390339099 488226468 411677783 636423010 732742793 654972633 480932720 374961132 387136944 604043119 310206461 172182386 595588354 750081116 105834577 578190400 623911970 226366712 844395333 208320584 551809065 115925398 566814477 850707606 155944578 372341036 124637019 849388233 761588257 418684476 675725884 364221861 69257195 160295863 175835769 259508074 271718686 792811389 407121422 6589918 312844583 383603625 1820095 851716054 819166289 782175595 224554113 559687473 401788459 11541348 199621658 591369116 787847140 554600662 97424984 173396583 703088498 26813292 118449822 972983292 695900156 611151130 512023360 465447789 927111784 719400858 736118670 3949269 872607623 261999475 757864561 591144612 895941766 954954058 75713369 631493376 866241692 672760208 546472943 549237489 269952172 626853037 520120069 94549118 77934426 971083536 635411424 181996361 867602371 428463330 379722795 908265020 410370479 69493178 286617407 326166350 316196064 924755669 55027203 814016376 532957304 524918062 768445725 107687390 7632797 329526441 951875111 326818780 769976052 846765713 917984067 404415799 312061107 810011203 574265675 251501345 913210161 385176653 654455244 116425163 805608352 676078525 594691586 89012564 298249679 688202385 114306696 390377940 295044052 722081577 682832298 995781272 482156059 128325785 975922178 940696300 505891979 373236991 992181257 898942537 495669942 460334138 531133360 326465157 951898702 61388495 255898823 671014109 360245812 200244196 978761450 838487182 331117357 319408288 784768510 349646239 204534545 305863001 158455325 632602918 152787267 333588142 9967310 606863237 770269866 285851562 964356631 523609081 264824431 685963488 431192290 285137370 481182842 438804555 70155210 691689192 654344677 84408552 620772187 945911563 25153038 882142442 686219638 65068789 682477747 6466304 435861641 848048233 573243360 659369533 910832768 831243703 364546073 7764647 189259427 657371123 905751087 800404943 206847128 769870139 893342202 147831790 998575969 390047073 698410504 605627174 693568955 645018581 701486833 786846240 815290390 802283723 500428527 423084632 454154705 438328324 362574649 912998937 758252699 260132830 884932267 690697537 357519077 521322546 58101840 588094438 148231852 434704555 488688417 876035346 140018045 634763233 886674559 111375925 669908735 598408405 854839271 32071463 307251981 68459796 164280641 181452699 524481462 766503065 231800548 431445094 339890401 379588768 948784285 202913535 887431390 66031924 407950914 500810196 493342231 825807868 421714525 194638133 113329176 77568659 338881092 326008820 152538645 355035956 526978581 516460529 618309058 568923529 167210157 628743814 448976267 246476368 930342495 821924034 41383563 218869427 1359621 877110193 305423391 461514950 307205503 93387846 243596185 630443074 871746154 786974064 901479886 339661671 490947288 138484200 144510324 826978389 485778538 277851758 299521235 421745063 976759202 844300369 340719605 927599960 259052508 621018328 602339771 460992057 239347747 57174245 83585477 263952544 661293222 939368808 103297980 187512115 302111702 166550226 624072007 192973781 11548239 890963045 681193013 496384059 796931217 634956953 81789949 349454532 19645932 727684000 419534877 364409686 862374309 282600699 432979276 483215866 635571668 423444464 263188171 469290749 932354698 495960841 514450052 459318443 276739891 307600397 468032545 331235762 679244915 141298377 777737744 756605564 876853657 315863601 96511083 210490429 591523687 358637315 404876124 164114103 454792506 481493037 89734087 742878452 913592377 655518323 995146575 418699620 804769453 590783841 75122532 558633185 396967521 373088597 605052581 121975628 702773128 410743192 697280525 87378548 414319331 590203367 150994368 759244370 779017497 612540018 936483734 678216822 785226007 439783525 99864933 562022830 923385399 959872059 629887100 603055708 301050551 834536393 517396293 685690550 64215082 447934544 260209087 602012794 409969624 143349304 866536158 696431036 44333700 956238889 390741738 836779911 847133629 188106757 825289753 497938257 242247294 722420008 69040308 631671514 257858180 503895837 777057349 291377495 538045176 458251547 910116193 466997684 737352674 682489354 460631134 916766267 991660830 7878034 721355636 364432921 339691958 558169359 635717097 346038573 251148657 391705264 798631834 235366825 133873322 735018276 750370955 272882205 394975505 352661563 626120574 538020443 281968518 350962187 172275702 487323954 319795343 373517646 928541387 896691652 595139587 305356460 220250892 478822048 32570965 149872841 911423643 83038286 434573762 850017583 564915226 556758320 597312400 827299163 627313206 909344882 486658778 51498203 928470274 463877708 571255650 523689742 109427982 837822459 982577037 39275186 597488885 179067374 980948139 799794296 390794111 857632611 504090203 52607243 693462941 163632280 802618048 724887368 302503432 866842105 845979120 326919199 620830296 208475088 333424655 654348156 85392047 485550361 650281587 369800970 739162474 655095377 550392247 270267280 167383387 337645318 224711216 182635034 713210619 923053615 664111407 763118302 93585867 254273772 101659427 505150053 554761494 74338044 557257691 245243071 105070449 278152886 853694483 222988688 527787443 217165411 986414519 254008836 949928137 141689685 962279475 384345647 528761787 469917194 218644334 351547240 33389971 882862591 76888557 572569096 14508848 750730667 621897251 946627449 286099367 644498166 596542238 741806688 800656494 850116918 577285488 855603050 170089159 768266669 178931946 78807714 745251726 42055912 257832837 106824325 439267963 613813635 633445044 585826402 360949029 760191985 500168166 38871252 797819984 628857183 174896091 802821681 909128407 999107455 602633343 815207372 375013563 797217355 526288789 876422481 18453080 164406147 454062782 922515540 815257764 109005697 497628854 506328985 434577236 610872872 764932811 736977494 181413817 401725695 642394034 196441421 67138543 767190026 265653688 527062334 517419050 907514826 106197480 156697286 968682168 495154178 834646917 199020995 456587140 525477565 214680586 37677966 738832739 704270905 657865897 435622945 645365627 77110420 17432320 760005454 40020011 880194201 15003858 594384883 570126760 515244426 607300741 233612374 790557895 370050964 590275008 593389256 922803863 956887458 664422442 772772240 707323617 892938612 401933374 739237463 969936672 915625197 743223367 259660555 442086364 394338839 142740910 570727566 728206193 309063574 874493526 339619439 394407841 666865066 661961088 935260711 994031095 311055045 942091893 49235729 458617708 563621476 241844710 760093284 629219126 460968996 497747747 285263434 183619311 461237452 142477854 894128647 827047308 272801038 15883623 705445689 364167610 777737194 285086080 977410064 979744230 586233956 454510704 401794764 2368629 780854589 260919349 364207170 907920685 837785015 56066414 801804376 394869454 903492143 646164090 965618493 803085719 354366442 468108549 677083168 566643327 158323767 646312153 590424697 571161690 675714792 498775467 941140669 412352185 497118061 959996732 362383255 170920393 562242684 734721608 529340653 363144052 880501598 46147811 499905069 824417007 644075880 103991792 286065743 753657189 512969808 553676845 719246234 350259278 388115007 510544523 351339665 460371196 341455525 685365687 569819541 397090203 949048421 527573354 269551985 448959431 648410930 88984813 701114554 603460598 947934850 265028070 775715735 490276577 393552019 709010386 460658413 437469409 907394468 24832784 409934485 953118540 909045600 160410353 576596244 555480098 593700697 429063770 111468664 653557963 905553420 211238829 409542619 276889437 429939724 805432002 71720270 320128585 66472354 41254478 519746263 540555673 123516802 471532721 231671884 110444043 694954633 831467043 992617739 665464576 722712659 647699524 389037542 113125524 371630613 483261551 621631740 29779331 421194727 432585911 826454419 20164160 324847712 642222933 564856253 510114498 35885487 384541075 13537623 628719236 947490629 659785893 380375734 741979351 228353902 264311535 773440026 893649055 539110538 344790167 19301336 626055910 763953133 482035950 488466963 118743353 462279311 59899923 997297965 584059586 242591038 41789341 682157157 298443439 246773524 456737347 83788341 698770324 115194255 370027914 48477821 617282939 235481089 293320389 273988217 517957596 19560831 131353399 445447017 143057353 14050101 238377638 468827314 330473567 80047831 477597307 237474989 281235272 565689165 838874927 278236300 989230427 23634115 947361300 753931305 343221375 337635803 169706535 945324729 724658103 710770810 126534039 582117898 927526240 68791913 824654610 263998724 381236516 461753537 232217386 421458802 793902931 598362523 85588828 140926329 928552695 181430878 832605467 955605961 749996898 336916363 791214171 542057861 875751133 962044581 719238407 179925443 454305806 492903039 226891933 542496322 317969888 936526165 186325511 238505058 773079058 243966507 285601861 992313049 72573322 736078843 254962511 448964283 386912021 703382473 803895629 168030710 636604406 720762915 710086553 89954835 483917407 766398768 230253330 598107706 517969893 776789660 953356714 845687707 897016230 339293706 751508905 516972820 257734077 651442900 47302988 319758322 762973171 231907752 548640496 416689486 927093297 86678008 908799146 67773550 85648194 586749029 229159707 788194824 67012850 350822274 584069148 842153037 890422965 622222663 236843976 623281729 920934678 837828187 467765376 400764832 971163651 739373856 889535747 865043768 397878414 729733416 526666177 654161543 341561360 87812428 143857132 792191352 640275490 90713629 684136490 949860422 107013321 611909671 928646482 7611623 414365474 310029685 959748412 513931306 119939451 586221434 333874818 794919962 433019182 759205456 967371312 502518717 602265208 15068217 862629814 226509069 460934117 389633261 269896034 476213632 689781330 374852098 762380819 533763075 387326225 858004693 160056412 797685274 280992958 896033248 312384904 456320716 359056404 178608080 930097992 482330130 454064433 186439792 35829882 824547097 118254052 925158296 936025254 983391412 185367716 236166484 116988450 804473281 147868463 630068162 91799992 570343398 941048759 964364506 590947036 585113797 249323857 209688829 743611004 893670662 390623324 837454438 767777475 650787132 636317128 569939905 237988894 272742878 926139195 168637420 437248436 967220505 240459362 590993780 638594553 84538088 715314508 479942543 27384460 11385221 663156394 318973447 400976231 511951362 558049895 89832763 12518427 539930835 667880451 509449143 539681195 465693374 723441232 885254542 437633708 270252031 607467020 732183632 419053221 812695870 641328495 675179290 425814977 215943933 574462425 277318990 835522233 59035539 595424157 903205398 70413786 592529757 727518526 591110618 952013647 665519352 166354365 453001319 687059206 775780769 607116005 428574623 13711199 48580542 194767526 425336113 527392590 767095920 529476856 74951973 450247707 160664501 204645005 92053990 625337361 861095014 499611459 886795569 879365463 948934703 374895736 337107797 822056862 295931224 602772001 994312646 912689786 439787588 943703695 96184151 67065372 12615 105770808 504185417 68760954 254591746 751831344 592142310 33700499 969217859 639550559 255451197 49692363 128675720 684077824 763874915 345619028 866953972 237443043 678906672 713595828 801119727 531929979 741914265 121275716 594287919 329295745 375817787 813095854 814959655 129412063 357582462 485128677 318088045 703738695 470057552 544763704 616428714 35897996 841356947 806759466 715788379 534461448 877714992 973243029 989663064 511957229 85761829 401726382 101857092 169456181 39629635 758388194 417743371 219643441 781315610 826630780 814457516 208127258 720856785 591468073 467148151 25783160 351037761 55844576 992218 833032438 455323003 341195725 95259644 774383835 612530498 699194211 20128445 556792399 75270170 283328288 284554811 105480526 879461478 796656529 969585233 983238775 96662809 443899361 88056174 763412188 497850123 125917745 2412765 136591718 254115296 773839994 88489928 402727464 938082481 469532556 428989519 884401072 484043790 212584079 4427908 297947357 545956540 930469777 311090739 228670670 308613654 504375451 350182001 933682069 196657380 433225545 627460635 989828241 105379863 65219363 73464619 328919612 78753932 54520473 154405824 345363328 353566922 483239128 882755779 337421838 72235507 366777167 303264828 28701150 236259141 499062380 79358636 933199777 801070863 485769047 940162601 764040818 542377958 638781763 351714853 550472445 376046934 581443426 882135192 415691999 410014313 492020205 64336807 309861738 538118131 159246015 243130920 523653203 18258790 111417381 519927232 748533336 93869759 745666752 280940060 413144327 390522301 855249331 340204233 196778591 494916470 583945556 494165033 839602158 435822811 875311715 299676423 613663327 842096691 207787620 500568815 300060845 729739371 582659813 273785363 235151343 230578034 545866675 241603207 650170626 71749238 127238053 823089955 967317087 981981070 38141840 524203245 432615317 895792617 644613374 760081079 611360599 743936771 613072731 466814773 407975759 473537997 432161346 910576589 70258583 468843649 242671401 741104727 845596290 248708031 50558235 887882542 677858874 31179796 622232230 719624204 297457042 569242268 55881144 515058298 289989509 622219006 943116388 896645341 561480166 998626341 489240744 889331792 832889602 565564885 853767942 570766135 971555000 250345068 600406433 296547739 811623418 11952192 780151385 319021682 275098361 703563626 600958609 521070371 705976592 443777074 940962191 668715639 960669868 5384387 54771864 849015572 154095386 113584844 674967579 202221816 525670837 237796715 40140429 111483221 436925422 236324290 287771098 721903876 390936623 565380785 350528592 686762401 836602868 788710774 216135411 199846603 706974776 755197233 515541996 845255984 737323081 342230002 889777383 113884450 64370241 606391495 471400767 545073896 269050778 343790860 627236349 201249285 121931414 510159480 806878093 435827483 956992371 411936584 916512121 587844318 173305525 257001691 200390323 736495329 893227233 508849694 58621360 110745792 34333337 594882140 99823559 397482909 800689637 635788541 671459534 96832118 24370147 997255258 164872342 688170695 721912721 418281250 274595338 179038960 279500206 741367063 832892824 897158813 790412599 79614003 851619264 699416263 454133076 732453170 94658960 735309098 613836357 690456138 904582420 627443565 188208566 347522727 502976919 585930172 104854691 177640425 288382039 689763135 157790858 515663423 641475080 47247333 114140870 769237732 413195713 71489506 406389251 789144726 72295148 689596816 512166521 621644816 516613746 192659118 292697912 891418926 612127808 843466737 1913808 286625535 283267547 925263718 327339405 607295804 246850181 533727355 370787199 520886841 743445947 552492929 548053531 166403286 153157795 428211140 318816552 223342240 129588143 810086338 526694916 825772765 895096817 685959881 103740689 287312186 888389073 41253137 122175672 87203902 596858495 945112594 215971857 476809983 307125939 277833122 547673921 393940068 983428947 990214160 840067737 822958728 495553032 317045843 824031628 15653801 658373405 705282369 634984006 879391079 95000683 35104190 526883680 133379674 231227987 204367288 537391631 368448870 523851306 995137356 378010647 706713043 480545276 938541509 312259207 852213376 799837230 484269334 58372620 205572260 476459987 872188584 855608949 708848979 248491426 899009526 811626022 548718285 601729617 353632756 129932966 446389024 859921344 376647654 688140289 50676474 890085391 518459884 557042318 964475441 479244125 209264254 703662979 461826267 367814577 324099659 206704333 84674979 37755388 372222998 794743576 315837944 835252027 273725730 515393010 306684155 954433456 876515684 905261505 863882859 174566025 116501611 761102001 948211079 662464531 821172370 846209863 258888227 619616856 15577317 652296587 892968572 712360462 100078202 276805476 611372260 448591782 514378202 577480311 527236583 648284140 150556839 254230442 945590498 3526751 511091706 189036195 554389424 73454639 753885689 965934948 330592928 178685213 419241722 134206812 452575958 376572147 799413978 442744259 464949773 380267453 702006474 809157993 563742367 620120372 960910403 328094011 885973832 216097082 778559761 621555474 696662090 568642799 612306268 376794558 882968637 345302750 76288376 722321 723252080 387988509 406225403 845262455 297476609 900273790 883569986 660458542 110364168 509295146 576313425 351799916 908515526 875568533 240652530 690532094 242408090 884340147 196423893 552252995 626343859 510050994 765578381 442271914 926899452 268214523 126430297 129289352 23325341 353461655 294399165 348157147 446896738 226954551 554828195 697675685 987789369 7370344 775872585 45722737 301784363 762937487 152320804 202459038 738879804 39036815 482993366 911726860 668132933 234699976 381185116 862779425 950657316 799574891 641876871 912888302 486659713 487329363 654410924 41596535 118770886 42978758 106622343 301055985 88240489 801722349 188702506 722529515 449562431 627713525 942430872 757766152 272873276 330207022 187371009 734874267 622612913 64982217 900960501 396913760 140021761 57649327 209164946 864925054 391939146 253664310 938884708 843705563 830354888 819989188 517125861 598561118 550803052 901130219 908102593 999300293 578208294 936000303 83676974 857310547 122164058 512263336 589667114 321954602 930378794 612528042 913602056 159706204 854400054 564464806 34525564 534040550 717186575 12545610 121962128 411749817 241983212 338165003 33326070 223231260 658125846 196456961 797586611 603075136 718493131 148239157 209291342 158142552 697682304 316446834 751503720 416275057 542665179 450567840 58821444 206932913 724422133 904967016 28261494 191638005 223801763 729516347 529692118 404604562 242001918 10188505 478095823 135062648 740517892 865886710 993479615 41975839 984020152 339563289 444988150 993756839 499247835 813230661 295520708 485457324 658519793 782246694 925436327 830231972 650170600 399709352 78174504 320161468 670430513 522560569 508866762 986199951 840064430 922805450 30292170 552811543 646823932 576817212 431627771 867033121 142776547 861734202 461945718 323718272 18889380 628729282 934542936 525949596 136780052 123742166 353466693 230681469 820630238 253651875 415193177 502563929 132153235 507936659 422724973 183225946 273043733 195890661 309516478 869702327 708931703 239218705 828148779 396337735 134837142 74902941 390514333 590089319 647847329 294022277 70900956 482072855 934638487 157333028 519379755 933826885 921446608 567228006 445311817 137711021 722759715 880951111 977340658 623935788 639663895 252712148 324201864 739643085 311160538 828312821 474264054 110144997 312519872 470086985 480591202 24302494 418494485 484064346 868193866 92848294 688626515 128787496 820932769 354441574 217999425 507221767 21681756 850340570 305612078 217447297 115737036 551051135 686090145 669194279 982746185 186814709 76662569 466466664 147688154 163381748 218476481 236775457 11733028 961163529 566319513 355355493 705269618 359510294 384396706 703652101 696535272 134886674 421693086 823452739 621564468 139467463 597908128 198013819 111409496 800938757 918582784 876432836 759956969 851328796 112621211 649132838 254745467 648385907 723087151 28061674 646532008 860476407 90900771 799238593 370421656 755600967 305576580 156920204 76199028 907155301 72011068 43017005 48082481 939141897 153370491 87880768 664257481 907506466 254935386 457376327 676040007 257615805 586813792 155049983 620456209 202526778 710606770 853629244 877442320 399223929 369419325 329433732 937940891 515679656 126239592 891943696 663596366 556324294 936316170 797561185 243131324 493389521 670532234 490952640 155272181 872538212 107252884 418684722 715698774 67392327 411816553 565136305 439569630 159139320 183066943 324982304 313038331 395704897 593857883 594974279 862804176 322378748 719254667 393045747 131119730 498959440 740092510 282469072 565108949 159951825 795195703 987250365 554761641 651678042 17961703 878788571 340165196 646673086 754512188 487130365 660412133 565526457 537738225 817488324 422293255 937633970 51301108 642309842 74741689 767795649 24838586 669307428 194772995 634358908 773843413 879076844 282153084 88060244 337333222 251973592 510401679 553078553 917297068 970109056 395767805 725518794 391465098 163445768 145178965 355087004 443057223 674816878 514220411 939849490 324043672 682200638 696863587 783843963 322628879 77930443 158549444 708158255 426567064 748502794 109379026 969689459 189374197 375712858 563159556 827762644 635695059 492928708 579233784 960832928 360557874 675679702 497733609 210422898 101536037 53758523 829609061 642614469 129514471 795057970 642889245 865953313 106534667 31558593 475546184 973993049 28526159 886739354 122575255 526370753 946821760 779841387 581530257 631547905 180978239 625452369 653581436 872179291 805820557 284440848 138705654 184495613 337420750 720593121 566314637 85084139 447748096 98601630 768839103 947989302 906389266 917493296 77956394 616055838 722983129 683004481 894110976 948820652 480322724 973518648 283463614 388977782 58116741 908216996 240497275 456839103 287747660 458449340 951924142 706132363 697813050 712867820 363855304 176609379 111605027 849242230 872859876 189497511 734792288 602040142 359709100 760207304 495165156 305616048 766063230 200610799 45596829 599513746 218197339 849635209 847820082 937099142 9931454 855603125 204297554 707283851 94009168 122713269 4801501 258537350 645078597 500669219 567152302 946744707 747644133 304030731 502465454 212822246 555868890 603642402 803988368 615327579 5297781 132367361 786083910 107766754 248055569 226446552 21633575 48150058 673531796 503483008 911438667 523144447 15841324 284787652 258462364 458982993 573922179 816762685 414097359 505043136 324741176 384241967 722033045 725131331 882759182 151613426 716997839 412472192 367915710 596551844 898371767 846546899 452341030 81018840 142810617 728438151 606669950 359066024 514658765 83057086 533103580 610770798 925319432 137649280 899011452 384991672 377568514 676686915 730016820 87844122 121017462 399755854 668149861 944531682 735769477 198211408 997726985 169332529 543561737 984999874 961905044 259395726 631859480 894669679 685401153 111687017 510438799 162011727 769425080 363364355 889066743 901239977 733453717 704221453 164656569 343168838 43304546 664440617 112252094 510906121 527043095 773599938 25855999 843360446 773914244 740391724 531772102 78042886 29994260 742461581 963678392 450266627 968747098 261881888 831438820 217084669 841385103 431281508 613168693 944995886 663000145 283746434 508693438 63284612 330253676 180237299 61357454 442108539 501490197 17828346 853827650 868745236 844043706 847087035 117946949 883064290 158229754 431978060 712860404 83892714 120716776 356276062 368340415 251521844 961793801 914718377 149539004 20882976 583653824 969887494 79162980 193584038 379750865 124512260 120994404 434803374 497686598 314711080 398963134 991260375 717807664 979216759 713277184 914858306 305690816 978386316 753594351 846765596 415029041 385584782 574788591 962442406 692181342 828539282 888552484 114899794 794710766 25458381 76600996 113747855 418724226 183593782 505884683 424636855 590762312 32496879 70715344 838777982 677929130 269065078 257154152 152078887 863614300 182357349 741143764 273374101 224663992 256674831 461945856 620708653 708826626 581772196 176556896 421172488 803036038 941535409 922300951 498531000 847088357 714894202 767546522 338254625 937138709 964398091 158832844 553700283 66503494 148550110 374750161 569732997 854493496 95263372 716500652 958904027 238443930 540234791 202508728 465589082 357858937 221223828 94046137 790755199 94212947 488032270 496336733 222425798 51772809 157091718 825913977 54304573 277455126 248901141 991809217 301055857 66837180 891324631 789586815 624403375 708704394 618486685 897801501 828023285 146999559 407298266 57479854 132649047 750108462 816752014 709029049 989015489 937502027 315220250 402692545 953511518 840480578 807648991 872361559 812096758 232133054 27739241 536282507 470580219 272717126 392766218 964206251 164246490 724480290 783708841 122004574 528310736 388742741 519848973 26525135 895452266 73468520 303573061 867679440 102317388 79670546 669174392 445907428 540719698 102493556 707510266 455692624 244746404 396193591 430238615 934058382 288275320 738091643 259285195 862013259 641772591 410059678 553013455 160471744 540113628 239723433 824274038 663737611 535418626 852331111 890169189 523441081 113852141 112103690 479797832 808104472 345137803 371137155 632068075 945211245 680570760 317781031 478247980 804740449 809907597 698610996 949880707 56352522 289833552 257383945 18328167 814124226 412311918 820300973 519404252 895903144 608338624 16274914 80401727 584840484 533031022 301607554 757361794 242746305 817611116 38774393 928550763 396568987 768363322 574954498 194503909 440906000 598818532 516083951 309204589 105263254 933752924 789873356 582330908 473353609 554431013 463555662 405328018 299577922 551011832 958631113 661059551 883290608 832369203 273453649 539579180 977258816 375766794 53038750 483871414 19156368 914345407 532916197 471291951 742222413 401069969 548300987 819072680 399343086 726199308 230868147 554304721 178925440 43968908 518415805 208673587 771868230 549349962 594940527 981322638 889917818 790705518 502092805 845583321 801800654 789781632 418202734 834435612 223914743 246827865 386754693 539583875 323957039 970081866 434922190 638454790 355941662 631645934 624896904 772671544 503668621 381439230 778963572 686921917 931001499 223716392 506204628 63087946 594764685 263140892 408472175 942999536 307475607 398058559 146052673 19395257 420531082 560662940 293350813 782763091 223505140 649946248 8521146 980313690 372332978 744285920 240193484 323895878 299547596 455621329 989163307 59698450 169836951 816957610 305266914 454391317 488163280 323456341 646665337 454323295 358933663 229608596 583050558 902913530 469057998 485885100 913514480 408232804 75855468 390010369 369901604 309620597 754444586 33425293 765236182 679106944 113233854 444149613 410562344 448432731 810670419 31470852 838095620 707789048 187211423 691638792 210097460 647909609 794271983 434279808 116011927 904395905 416136813 770324509 99810843 955656066 130660112 840961752 47076248 447836514 536153821 611292944 359698116 906449227 578197449 456989942 771401362 265216887 897953112 422865919 816025327 775007524 349981110 876453925 594310140 765623872 32481399 660495753 955798806 807538819 870229979 213288435 600649362 695814965 705748151 875855066 965311650 462287725 971597530 89052714 750608103 113442526 698485318 97875608 676713763 689213121 949328408 982401463 259586375 935232751 72580126 74196470 679478882 61783943 585365011 105133297 23017413 799407223 669800320 590670452 469301021 244622788 178707486 749783968 966875050 758746264 819526727 468961587 126310490 560860976 196984005 663110281 652617143 894783971 96919302 235286918 630071761 800588423 868336347 909658186 365460314 30621976 463817162 99122550 745906657 350823862 44411582 96739274 987031624 889245428 237156119 554850119 851245710 284386176 167507425 552474165 292587057 636412052 247024533 484307123 627622386 612176600 153938177 899122053 475210321 259818531 530724002 141766986 309588951 553142312 994879153 151438464 800862563 575097295 757901554 331877007 353227149 423852001 23444362 144370360 427610497 489142407 48055097 62138130 37080556 916469225 199036395 216523871 969186876 501195283 313369165 875670033 736373911 940541843 475315801 612309119 596568609 103997913 192081336 565055499 925765530 446500109 404752692 820492583 231479443 733690475 75559530 499644690 409794863 701468336 120206889 824445408 747966949 174183247 270529397 964957986 110049161 516180065 52682644 869572474 645816526 536697529 702812412 404397630 230847811 911054826 962197919 326209859 324648237 595903523 392894059 418178847 522887051 722489400 349493907 593047798 772876584 733600332 914136634 312293942 406187076 307062956 951782264 490041232 560633216 348434832 488127898 570496909 481855739 727880979 652824556 183156864 504502982 345188616 266833958 96801960 171160754 855533050 897144791 307919079 638288867 798371081 54901302 621924800 117513130 12349688 645673885 391781691 439867760 584242394 320966416 24992630 387748324 215001872 708545809 631306511 766458138 75101813 934986878 144769128 736685716 961589808 546440285 286450887 34321471 87729397 430935995 74245382 6934529 93376029 921586587 304756663 145633404 27105855 152967206 56276139 16192635 661308452 504849971 511366141 974444820 258089856 15699853 717347701 281862892 730635712 862101329 964185089 157447937 184882976 594885996 392686896 337799994 536739748 836815275 416260328 548163197 471342600 567946052 541673111 336281863 149450945 890607699 205138878 290176874 211660956 872168723 857684934 872378474 452257543 738527379 827914506 315787957 650337377 831970443 342544017 950100489 56077917 379414822 155307105 521438689 432984674 863173632 878251827 841199350 405299394 573666937 136236112 247276670 983296281 943927476 710599048 690124061 863645468 436394275 666188003 834045970 926013744 868881671 65912865 727717676 250247821 566096049 424156374 525906917 875750254 545649773 436705901 751452633 167457191 19159197 831737021 136000901 440063030 959607237 309766443 635498417 879418251 634899029 292765588 947648080 507800041 745604230 1079448 532132932 735525072 300896600 302506303 534582109 267872918 855171818 95206149 909214302 191828922 694177890 3154995 266008530 809658641 480865910 3714649 66776951 300663803 323173418 459754284 358343171 243797694 715282899 278602008 873185439 929642513 101468011 34128687 473466615 701531590 386483651 129592338 319121921 908399445 118282080 574717332 839055885 275257844 594306785 958494855 6549156 670449899 268199984 175872596 590343322 567042968 546556396 833856478 933213847 110581812 320572366 952845382 946565871 793863565 651932248 188620154 624459061 725986628 443018303 336339099 720085569 185252261 967886129 360919581 993245341 346130555 943780574 98187673 824944453 732161318 254244179 906465773 874144304 265256652 473192009 329366707 774432289 114952746 269827802 155341324 993391166 972985543 728822324 177395336 4780747 26758617 629645776 446496263 207618944 367733076 853463952 247627144 108480971 329642500 906876198 258054196 920206343 541622917 493597611 744410219 402538794 311090767 348330024 156986564 723736093 938434403 584939235 381243997 724926497 890214914 90779737 793541532 506130994 860074068 196358538 783874650 755022385 238335799 63748189 855954915 639795723 59714725 931283009 257384859 832362636 28598682 688088056 535234330 71597768 835572129 126133704 988397976 212464695 704373282 426682310 702284199 920392964 583142471 93831142 93256500 858698239 414736778 197000525 352340631 94477018 330469670 627494538 823049874 400666831 436857792 354127371 728864679 331421850 423012985 390616210 953676719 414367214 386430693 526786309 625596307 247761758 504406496 438043344 27362451 366746879 107753883 606561107 369858600 681781429 634685932 216408985 428714397 979123039 467174114 298630165 196602973 798817487 185755498 855511617 37807334 786873271 716989943 846329426 40753645 428815298 544905769 436047532 187519926 178445877 911593670 240843640 169542745 372865639 287946595 96199128 911175750 79998077 621446240 469991840 735473073 741300886 134663289 145937129 959119168 432267435 639460058 340481809 597555055 68533154 97719118 892338543 334429860 69310867 358775183 749474579 186769834 34340151 427810223 372000368 769647268 818464816 720407433 133563443 96413874 260716513 661565225 382591774 357083882 681096317 838428251 494096788 234540679 596898409 601323416 996873930 175494742 734878 539791525 424801558 758952134 344163890 456957877 207450200 835979322 716164414 751439906 889384778 631474232 94202947 841207797 940803436 707556879 867080250 952330886 612342360 539908676 315999450 267665190 81316826 87301047 634473370 768985054 992122531 978380805 500805690 897108502 777343539 601917583 653224419 323245965 846196828 135514036 912433102 77704735 326021887 489921183 532298540 41675036 15128205 593963139 653397510 162198185 879754225 86321866 485864319 793434362 955446368 896461951 316522826 188922059 678226997 71012614 127063164 236336874 384461168 628672433 817835128 687235081 995516767 984886117 702404418 595355994 639727980 49049575 678098319 39872022 846289245 118363770 949699178 776160948 827361290 860421688 786467003 603561206 953543562 52579301 497847117 614689370 474095001 44810685 914896173 938506048 117366351 910192353 414256498 440593653 130817171 152796258 638500723 311157039 26460648 67016937 828491694 154612118 170554809 494444016 769226279 834663093 764879289 688125911 488026075 100327179 676540376 833923473 499559382 306061931 388949975 256829936 26276194 23348222 43452138 386113302 998763353 211190628 775575865 805475092 451839835 401908024 466058791 400710324 547208939 729573685 156404938 837239789 602829775 1722101 218809286 187691662 927907898 309693622 572863591 254286264 10042107 292820015 435720546 2514205 771817550 471558355 227798992 407515153 974273367 689640990 685840412 60500398 382136263 879177450 331279376 258192859 790203397 213784967 4287351 966156967 610638138 357120529 258727755 644220763 929018242 554843576 226281548 731540260 942145317 575875037 192180181 879437253 216206831 608218967 409975900 653772705 373820029 945627709 806465881 503402124 348720307 996855362 707442659 761582393 930673330 281497283 486819818 507190572 756182743 336450931 939137342 8053009 279771530 700004105 275971404 806123928 387648644 833761611 780801103 636675225 620033891 305827147 205247615 664608391 182077897 763316667 294017377 967339252 313594311 459971962 846075143 236287377 957549368 647115232 224110484 508822968 163858795 699163698 868364224 445721281 810534047 629063892 611131253 869022179 421393260 756363890 109921179 361286932 267026126 71786510 564115645 385057953 421662515 466063493 230075394 839133290 495982893 876577586 809150975 777972674 586179141 670568855 561893895 669784599 404399109 440101522 30332129 827564908 647398186 619364673 172804464 526659725 420184758 101961688 473053603 211834062 233732279 542022815 822814457 331909023 38596657 17486656 581676787 563733516 243212060 598894224 407816358 644308022 310047013 745060792 714535405 529160816 572619311 974616203 199274532 620140605 236391778 665148409 507314473 57230138 398540819 291914656 925896792 186580999 608513894 194361718 803581524 96060847 710725554 958508262 766187526 490308683 251661154 964563159 749428937 214765853 638703045 545107396 407552130 84536289 326485090 134900034 403249737 441418683 672154921 133670928 207017266 203780213 198231478 442583602 696351655 229831083 69786582 285989457 880018749 186398737 371768690 556755535 924785473 46321601 356377538 369297748 92560282 797083226 983019248 199937485 573084342 344139169 571056448 492056649 204621524 877617300 675417373 546994277 320635605 752852359 583515257 694074954 26289196 226445292 882967065 296342006 421208461 655112893 959769283 820493816 538013343 765299527 947589951 14892608 58225870 558772375 138889366 881520566 785753401 278193531 8390266 773898826 150230315 355343275 810324381 430610308 575193933 35573534 495807353 481104562 898726758 56058660 838868944 508573104 294292686 593645993 675323091 615295538 452804446 328564211 812547599 902876867 373297767 151028717 593172215 103867144 214953765 482958745 14311932 750450318 810102775 322444857 406116281 454525097 3557799 411687927 626653246 415382684 327463028 962492480 251280997 859432255 150745949 115392746 638909403 208326197 882308639 223947280 625117825 709000994 850110865 602557951 48766520 935173368 169106151 600810353 374164600 298882323 839346582 456347333 959215581 348669405 494770160 994798398 394227870 252686342 116368335 785167324 947825304 354505482 914525166 32416525 933740045 760169683 381528027 256496448 132295946 747587536 775149213 806731469 742712126 54319029 105028466 385364298 730367344 484779389 332246622 413929846 125121084 99688475 278245014 967745679 215763495 806786879 598372849 694995384 316855506 693617767 208630832 554331751 398150874 515302262 211378327 4657800 376353935 789652331 103753904 173381757 392643237 834272752 543165410 566354176 489173951 555925853 656258149 77888086 882710396 781346188 424613380 551944225 184532900 482076555 250871827 114542968 451642348 985019371 623666961 312128680 605369488 564745604 918032474 552137296 616393136 630964018 900863013 74507899 586635386 493735838 965345643 979012100 591961834 868934601 824376048 587469036 212520107 237854758 856937259 60297543 58339838 837075969 166819564 916352316 649640321 266846731 287262319 369793827 144097986 584175727 926056201 725375564 397114222 567157173 279192108 145211445 180098474 646294353 159397804 358680361 170495532 397555022 605236822 422429446 410302781 909720852 328801088 942442823 732890670 669104856 292445180 102749006 564268481 600660852 362567435 173226552 509744243 538014841 283958009 761321352 782357781 115311091 370131827 154883197 715871851 312845051 346819620 944353819 213643269 836611111 365327907 711583485 261282312 673718748 210661411 3003841 399512304 410647067 225727621 790044714 118828159 718517584 309371212 624199261 815800499 132251929 115141147 602814715 77631291 888155186 251919316 535805090 617261846 350669177 289340360 56226010 201693115 640185604 264245410 928678672 265331141 885310218 385341425 993756602 830736148 562052035 643232299 65355876 140541635 334466263 591741545 923523698 280588290 930446248 338235994 3375554 707012924 605902775 652319077 410636818 850442676 226821134 814636616 986353388 308673213 406523563 309836284 661365219 644830857 316977528 572095282 616509622 308656267 61756068 451275641 217589568 962401156 838461319 818275213 956307169 553036042 527234239 431247040 692613239 604908287 714765964 632319360 306618402 936346939 582045048 532053032 332222268 789856840 336880506 930279093 975354227 527885167 369089851 236001019 351254122 350028387 574571171 208078314 320620207 367059562 156466363 859216719 647338241 269525764 72197760 717894952 412892884 926409000 738499825 73680982 326511074 545537711 672961512 538839568 647332447 193307178 6155833 951071418 616370716 518118425 345873256 457687467 714239374 171900466 875897648 158099337 826448985 699836638 24241572 534582313 1266128 456791748 953299301 782423280 773366331 878814157 229861866 392341286 982079560 900773532 747001960 500598056 768996796 92380876 903480737 867475322 649006503 830553882 990566656 833195707 406328511 47219290 511141003 36621451 869560150 638780597 515211761 19711335 78127993 899806867 574238183 385394810 822677161 234356225 558571707 614833183 140543229 365104784 105915003 211501902 492999491 879162121 867058885 55082437 593165685 893819860 891678082 272094534 512767203 446737126 587705270 484882382 289607559 273956964 296969627 965598413 737023661 896607673 645638430 604603895 739464316 154979750 16227810 593399356 598076837 145555861 831937975 446357778 717451598 641949368 434088053 209887877 791778897 207354306 681269598 103856863 256871549 412799709 488913463 122266161 861435323 222461137 178433250 346145443 673389434 735289390 259098197 170674864 400883100 28878493 788282779 59766203 340737364 652195302 393617941 91070391 759561424 938824816 978047404 464019884 85383762 671161332 696487638 156787215 388821866 104124766 296699615 3810600 875026259 796851128 283682427 24342418 565044524 520032115 118342724 162228584 626703543 922231261 38393559 629335460 848969497 512945490 987397749 46400744 855000820 969370501 126894201 829662120 764076028 358506514 802602226 457885003 947962771 687875114 167293941 116947967 131340402 379056305 301389139 191955660 296407862 245203919 718606756 774854436 621053593 344777136 886611781 36864120 391511514 351636995 392003241 437214680 726239688 908828127 480814203 189004706 894965785 304153702 116474524 301451426 335010149 686211316 162885009 390667615 121914229 343264978 104365925 897485174 397194032 18527729 752039756 864601388 71265891 467528690 617068953 664617960 772583905 244001659 869925975 599600645 237554781 465452094 687505310 733721367 590535404 106014353 979046020 808650029 362088769 283179589 841737026 6793198 927345131 198898628 902584966 34174531 692736991 922722761 136682102 112342702 86475628 617266806 134329796 270320864 114324091 378530061 819483321 312354813 179321361 485795223 237970896 530980956 758196306 462259798 466464335 76261877 105243852 680191342 24729546 187884520 96257313 843926089 623219746 875017517 212524281 462421582 157852535 605608697 120345184 687205883 178111774 612339058 208410018 366376108 32794130 575154207 951908043 346983444 360417159 972495960 49489420 932124943 184116756 490254839 481220460 460518990 799896728 357459708 840839136 565019808 695667685 179890961 557165382 776209693 571667812 535869447 871927218 869381680 690653719 410780153 666766602 467278139 779237037 703413512 537592243 820301802 470609881 171142651 802633972 576371142 173499219 847597454 938960749 835284696 631702171 392675729 708731534 533403483 836697017 314239818 395285638 133700215 429156038 127520627 347422277 956900797 388945933 422877906 309905318 565766481 596415552 886268092 761416230 683321498 955541614 588904276 350891448 563824511 45068776 257030149 867257048 30207732 501087770 873509861 937093303 611356390 24231933 626516671 785044988 117183150 568356563 863731664 587660036 91485876 83933050 384702643 890434827 133035549 400866078 901188548 583144774 254360212 697897969 864948523 628118084 34494358 933082978 142158841 898816931 530905210 428062671 199683972 895672483 366296176 652074314 528857013 938211286 876313500 879723060 641032812 599735556 347017006 465704258 743080622 706239692 201912609 51564340 111067951 212240466 118985517 258772896 800029807 888486560 1661616 221956190 967777574 232562959 363455804 940523702 55544612 489766109 975077100 745665994 921033786 400127319 240940927 517157685 127771924 163860316 182625924 9674095 690781178 911410802 394351497 846114413 823727940 180873777 701546870 314870383 730414854 185483208 181899541 97404218 207536749 625523830 70532474 616028535 619071040 539370396 21090938 338347370 412176963 247030787 206533745 867204057 672662576 679292199 355442242 258597300 870179310 86218538 349011133 391801262 28954906 19168601 847861383 805727066 292419199 6353887 646246251 147549795 202711659 673058662 100101458 974747926 633705735 853092094 433876490 528073561 224981928 833751341 454430990 269680215 797943265 760625889 81210031 745573928 127322075 686163153 956388995 34514655 920872239 124248506 864646659 537870631 746887126 63303066 852945466 599385277 940487877 176543464 724224947 380435953 463321325 178496479 726866198 745168540 143398710 173924476 662638272 63325336 800719481 595518677 863526500 286641239 48613186 316033815 447988639 339599907 957784627 538429375 246876388 376762140 454062670 275958332 249547494 478957334 953536005 672003344 148807325 532379093 765256877 254033515 390292224 380811298 252474305 706653414 84513299 256945899 125235273 691032941 53231878 389871615 408983202 527101875 30493524 301122883 779906450 404564140 478474789 931965951 900661585 610463164 215507373 324664149 839485594 977317257 643840782 953050668 740427067 590360672 731917338 642267331 296657755 748453389 955105193 113605315 471704565 983321631 836412540 64519236 458674202 48015621 359055243 512568056 387317523 497103235 699723243 153523176 195131240 94371618 951509014 122178303 330250931 757977367 411405028 188757520 268817278 117914785 254447037 490443508 782228958 850121708 361676497 841017949 752223345 425209231 762532349 669773674 209903772 866479737 390708337 480314214 58911291 280221587 575384351 779131593 625905165 362171388 29820108 212500713 6279107 223603757 466829297 923306 205717418 329957390 599044818 146074311 502407417 390106996 629035586 427024804 88800381 914025931 986303814 280549711 861264225 557232678 139337392 786197652 242435350 488603189 221502920 602419903 930235367 358209751 136908628 641027896 721523531 600266983 907227667 722029495 265906329 114088167 798610864 113980335 187199473 234121925 37056502 587690856 363564690 395942209 138764735 439844305 816417610 297460694 397483898 734440303 126464404 995564457 580382178 263153478 548166825 57148870 875483921 456657236 435981823 394663635 765861230 993446166 420759716 547843532 457972844 624971792 152380162 602597111 485026482 298156977 176865794 168857714 380358167 459758750 637640528 740835899 728154957 31441235 679791853 938264033 299252873 324612311 351379608 686069799 971697916 235063833 833798680 492957308 361856046 314529715 131372743 584401380 362339033 113555967 266371407 189367316 127801034 397947501 926232378 252606608 726284367 345350314 902179710 753718729 950872279 190459090 198759457 332509088 600131098 978343362 942249390 961893004 806339735 922799553 940407150 378308458 741150833 881625703 914605516 962832074 428440018 248256081 112509864 19041591 248689829 627612463 277858488 368174570 75667832 14887340 694731407 862845964 482404184 400292913 81342011 864614084 344831135 495023341 553518024 614649104 801507224 71124367 498551952 133301233 793698351 286394670 345153318 107198318 904021953 314472909 254533138 343187090 32574632 535771899 492687400 24234572 797392160 293200971 664645950 246767918 898656893 421205276 854589609 984457133 909423863 534287897 524509998 737125722 236138144 173598390 60468173 564867632 874944044 195551405 17735348 92420304 411562014 773161485 103041686 303272261 271169219 531869607 353811050 871266840 33660530 98625148 426035425 727380988 143482767 512652767 367051723 462855590 35586732 400803596 325454725 22039747 788015290 552033054 13633683 775929352 280055570 874915416 522616659 406404894 415125010 721890028 811104684 980720015 834358467 989883001 216120863 118123042 642602981 600496540 290573318 673954480 290897640 817500281 98018182 724169705 702163127 100884304 787769408 460899384 294080559 49391505 234938399 630653868 89304776 63476141 726094765 153288457 404606525 334826991 780155523 912174016 953908823 593779990 585420717 737992911 307522380 721188522 782643700 646946322 784828586 236910024 434076744 768912856 862109043 281805127 61371277 949075506 921838316 356113152 411841739 14666358 244274814 663114525 711135543 94323256 385306838 371459280 323331136 239278343 821291551 691771883 573018471 302454584 380913886 741135244 601549980 864028294 474563202 461322957 582158190 553870243 443165523 675228704 395971797 962058830 397305737 886202142 721077193 501803724 284858572 641039668 449774449 623860263 497558906 134883638 205203568 7231453 341765116 186819228 803379214 680948108 423492260 355378015 955760531 462674707 285335778 454792401 91963451 959521976 549040134 104655101 503875597 566792402 59500547 859568784 572254561 595196872 900153769 296548537 612771988 966329863 13026679 289660866 182652809 306631007 720482120 982418485 200471376 997795927 564316423 930925354 635378511 845782499 250193429 738693145 283036621 951870227 172721991 735761417 765418442 334678717 505802023 429712890 609757842 949904057 410553494 452911652 151802962 236545487 346615773 653837250 798483181 758571239 124015688 361854556 531904860 657824019 281269459 661285886 946131362 714471358 796185251 207440272 773908421 458398767 582348332 117748931 256788513 280242381 858051679 783098968 157845144 536835620 879878716 230294772 344552781 266970842 689318583 393915501 432656875 895877107 883247847 219637369 213534081 997931012 803983734 383328642 898297052 174511691 382661609 194909954 73524606 789884704 809418530 79891339 608004593 165518949 343900857 736509062 153351607 746317733 918630308 13856281 435041712 644307661 494379046 342698935 952476613 233592250 146426968 608830055 303821586 315214459 584055588 725595637 264472510 780688854 342633368 139052317 478586635 292251376 473352935 997774430 816105451 655412406 637087422 326208043 152245781 985937541 266520393 343191766 255756822 635307753 306387686 100873891 500067962 900289558 502872706 954732746 418017076 742894869 23632951 800214015 716136628 520103092 487508368 37589499 81609134 673621720 629034411 525140062 422444450 759467025 426390220 51481840 985488005 182052115 227103276 462943784 712850686 172731001 152252424 860453731 114747399 311868896 748440322 564673110 687785254 846046570 740761169 444985857 602293302 147515459 843114193 624733725 769618068 365142207 960867591 907302222 274235634 859987142 995275733 288029751 55226789 76379879 281065268 589198211 755646825 598732516 302555482 589766293 128982985 340835670 447774056 608201929 389140035 838633024 659601393 932289969 593621776 967501624 27386697 909785772 395277974 554131596 478762432 311139414 364078570 279758083 366095810 352498683 736900599 840504094 270014099 625972828 620359022 592281639 371726602 780131443 754448039 415928915 901066769 188671798 392606719 317208702 498029918 454534511 757184919 609630616 205123815 23883863 169868798 915669979 402306267 478194023 521598527 764520522 193072005 977008977 732047132 188958006 103779282 768069095 333087574 275040228 320438321 882977916 981282615 772738294 161079745 646724986 72909573 681829788 678312230 401966919 443033347 476558639 515666932 48644793 241899108 728571594 505670635 957199471 318977519 816937173 882539653 72584529 152625411 553992321 812189899 744122919 144666847 346028624 902150568 470505744 834236898 224675179 697717352 618021880 939712974 552057744 310001934 827566484 786865862 548567277 129717493 19438042 91785514 64813114 540062452 714120030 607738368 130948574 355609071 569993883 906895809 815222506 46746564 463542277 660281806 956532306 868377355 152056029 675160772 686166413 482849655 519014211 420684095 217712317 560201328 263674929 128552792 495240988 966373740 468603446 947834688 273362692 252422533 830688561 356704130 8771962 182657593 360890059 714224665 491756255 70791787 90124235 322878912 463375820 64614042 595143855 877171662 972861374 507513708 367256400 433179562 187706846 283925567 646817015 261345047 388457660 988034532 114067200 573534492 698338811 792400876 484019443 232008127 512939709 249608249 955094662 83124691 434909130 183909107 515784873 210898871 594545713 628413786 255090633 298095378 708622198 906178085 135472948 636688676 410202717 73788845 748842072 211699686 253854229 993116669 356335071 437400628 703414073 871327963 117138933 726441732 211142199 923910754 643596365 247297165 786299802 712325386 176781255 415142326 672810753 508680233 896041500 607856668 878804394 954667205 727574620 917082070 949216810 893082131 859771197 954118731 839040679 595004469 721275888 455818543 407047346 725507329 730598334 474924721 313502732 369984634 654624522 598294744 680478653 695673344 938231363 526161618 430645256 206915258 154317388 68348223 602797135 599037600 586015968 907665627 976703310 117576890 837149583 552117779 963346795 879830445 166579241 541700659 587549475 156634552 52037156 12680362 119773887 782799551 320795995 688081004 262448603 617819918 905584111 771795006 362965603 87211740 841001886 955592734 72561662 889811856 132329906 495582955 881210817 114254510 807299808 389713049 32051885 350580584 411011041 671419031 895724452 525294160 95088457 29354836 132272859 756417917 353647265 313627463 831808620 563258395 879791201 105211385 613285215 785150745 324512758 442984067 384397224 532821452 363678875 977917502 580604295 599287097 675539146 935180896 889130821 92220086 449595738 661987829 732634429 271617874 927706638 769851487 61521509 202962112 850300689 894765144 149105999 623548178 63136858 767797705 703233718 303091920 415354423 347700798 631510931 975416815 127812987 946581644 701591015 805613647 466926340 159554022 829584065 203070658 174234844 531153516 525215826 285825138 784582736 368130373 985471508 569900217 949822054 536004675 171886498 976350555 215776586 836383946 917193329 748620492 853588174 942894819 173485675 913411339 722790814 509210809 1394644 299757537 807404872 304538812 473855855 810426674 429697058 313895691 96090697 460486717 969431941 668332883 98147301 265872422 816958807 791959038 104357777 545074589 209879643 65746344 458552834 659209926 7887884 547308618 997133038 907355756 934934371 975258853 518946583 987041249 102247718 26527760 494831424 138225101 201145230 35492387 343645312 567976568 41953439 675870959 637690104 859389097 670773300 378503097 487397647 114269208 294886399 484736014 54066540 179257513 479249191 41435411 960080277 127502749 123828259 968584393 885193122 744519789 576444050 410831288 208242899 439787128 355325962 419010925 667495346 346313276 238881885 792885776 950541747 866137939 954180092 198360898 824497365 347194302 880397006 897184121 971365961 787670044 773815251 165435178 79964641 788256428 737135705 262903427 985243993 804225937 961460550 990410391 897568717 819960169 446783407 16510605 126080229 358841483 560124539 452307298 508369824 838537979 977378434 177187906 948757689 766394918 76349290 142890907 136841227 856577842 859940581 877695363 555282002 676174350 659748367 764451192 951723745 710443927 734114900 979031671 393580914 102172702 585727259 407620085 900894374 735649439 604277158 939522402 355085871 850306256 123997767 165959370 261764029 635170118 345019744 127259952 988039110 157201675 738619428 94810239 719584948 288072635 386214644 697022565 927005730 563092417 109523092 602329676 797476059 501253333 119393914 27949345 864956241 917984543 752758225 351100671 209614569 988993881 871748007 265751527 560346891 568814819 674494419 293380355 543319041 278859920 350148334 816405285 119264081 168845772 589937342 171220084 126580713 991621500 406347621 830726778 556133460 47294281 347959121 857555279 241116023 425951943 206200974 842388818 398003930 632580774 549507858 132632111 661906183 958813561 256813923 957855157 551632756 474588690 361746999 177390644 153204238 57967537 516905263 22451354 985845402 48238326 32538485 136057619 694150331 737606303 829063573 245008479 274923280 720593722 830174972 742540210 214584790 21227120 920520057 463660050 346022532 755715663 28683842 781657468 118505795 464733798 831621178 340517844 207268230 203399036 47172907 288745025 521901993 146746787 817452455 790369518 680604863 206171186 547731195 777457658 967630785 803798727 7868770 352080502 294952202 202096747 258432580 53102678 284533191 741372956 194404240 595655138 173086578 235877499 570380429 270554554 319589750 87260223 614209448 383257367 618126382 804718375 704691337 766666060 136074851 911165392 107777166 617419128 864404891 933738381 623791868 433039782 329232070 690145213 801904512 644677186 323038688 547485814 586274147 737324856 332769758 350460403 367461168 605378683 429493510 352050891 227005195 266132648 781198415 668291896 234055358 928318354 993846069 175584103 980067655 4367659 659433911 832696740 896957989 126895164 105836922 589485371 950072706 907383574 90727594 856557662 747765509 10753599 205797395 353334143 492839187 98226091 669583128 651982832 456680337 866285526 160897181 433662041 666365256 274296127 79775131 647699471 803198070 893977011 790076087 868824179 719761903 759258285 406451549 253669326 856862169 540852548 364476649 72464424 811820897 232426418 888475551 690645190 734221922 470158661 257668374 515332251 497501875 859245944 744142504 946888485 311605038 718960684 599038297 22983845 393468461 351673550 371744820 814671433 766657057 175515292 539704316 38963953 620206336 713103378 183170211 695914500 597353169 825939533 189428612 329167933 778286222 41768897 714100530 997526706 94933630 397580104 118497108 255453207 582592197 840329391 740279434 802357764 368187121 312227356 201327205 367085772 139430119 192829251 309025642 71999621 18480495 293576679 775627206 409903901 313287473 588502082 577143171 762998193 751574496 447354217 823337026 515705122 754881807 414773689 468960973 561464199 813077762 974385352 528701377 401480938 95095004 392431116 830068139 693135436 786643100 978259039 979057240 403417233 208189318 94722693 989424906 115209004 105795555 478490575 794745868 474907048 548591906 136057369 862661322 294971780 984620747 771179528 784211287 598372423 895361364 40563309 378864216 422763739 973268907 348064900 859974872 825695809 932019522 889809612 23860609 948238611 801261793 662988727 186345117 998894006 438752406 913314900 686832962 973698222 931505662 251375695 201496071 654044876 923390373 726532267 707650288 386509361 586223027 947732778 958182094 850641960 971708454 597018858 480313982 743376502 364511219 368016930 711825506 166181518 30658366 110453834 683957143 740176648 976673778 705581186 213276704 938798923 266398261 304406785 457819806 592050050 663976444 565568651 848660114 488428642 281658700 273899189 187968269 872550073 892875407 77830556 301462707 357075242 421618308 153222895 501825593 94856779 548802440 86255805 362446485 600535492 691530634 272065751 260984176 793197736 346578166 280236220 323433596 787061404 249536172 445852097 429212335 529874109 377764977 820804650 839982722 714889900 895291838 631085123 438787693 949203347 427905113 615683617 37332053 482345223 280527703 723460234 19861389 52455884 814401600 111931189 250425886 750287412 866791392 981537714 188795517 975125790 512733860 336362683 558974796 159188890 556148769 27950329 124214539 856014011 84247682 630424827 760103900 303286445 327743882 357978951 699669873 368208083 928956756 707036468 934225167 237927474 911007827 168043375 910343498 912950756 813203159 942334952 937827923 688847039 976070868 419065772 983407450 190599424 553091247 295658242 355498818 841258485 515169146 580591134 401356660 247115800 59489684 251889538 631132516 703076103 689201511 362072408 6532600 493185788 506989944 555164122 681297265 926707151 318239602 310004085 302195639 341767417 870127082 477065821 753888167 771747209 190991216 660932279 463411058 667512762 767097695 172957138 878885715 978320594 256811091 479554703 845585329 334535743 556279281 48539732 184805411 880008349 904611087 634947585 310215807 511844029 184618475 563282891 423688373 150434988 301540984 790014713 615793926 221223789 984949478 452675472 67470791 579592842 303433710 454020215 348045735 269634491 975700571 957598078 366798329 56631631 390362545 122865590 893243957 585588382 173417104 491301188 697119631 39270377 343186015 11410408 317206414 810644965 258682295 316990956 467954316 388401609 84222362 122441650 769798747 106331120 14829324 688864576 966813888 252741487 17679961 716717168 536219492 547639334 246186742 499863125 18856842 719139593 384037439 717020237 282139858 799669498 534650718 71737946 855544405 585691587 695776638 904037809 882555527 865414918 283570389 422668804 823029390 267305301 183239618 853322683 480836239 246416476 970939893 489699150 906317202 790895842 583367562 508350318 443678453 267352730 454381404 610206623 413688555 765805090 289800899 589543984 223321538 233405077 715490149 200237693 939299418 169020928 79474977 108507182 310274325 735683525 323393614 563122640 172060791 856025520 681768024 554769285 101696683 478704223 494563254 782032613 633049044 560301781 378394968 307968698 452822374 568851321 352373687 717197060 229539529 319787135 357585790 736715680 223939403 844018035 833512992 440063498 770736946 110266746 986111784 175142492 553728632 869420994 337761425 259760487 154857439 533589727 566761405 948426988 436953358 259925839 229860744 971511488 641294183 635197948 137334722 74887713 267648231 289024295 877543526 467971824 442073994 490941507 326366881 657856628 827014309 821003032 83829620 760656816 667184384 147732770 13913679 186005269 42338825 503666628 166795424 34766827 397696998 234238480 806414055 921927791 185169826 484723447 141277185 32615327 935918033 449153255 645992843 142183971 305966269 704415682 749731119 114964850 114301700 748919570 127779690 651143175 737782170 328283049 278102644 507261236 208111063 167416184 214549865 708057151 314765262 325747156 206673775 710249948 896701550 563138571 273858078 275632546 301413712 328059066 907548204 515813708 876028603 26288806 340309526 101124838 512075832 812054471 57321346 761034885 918854035 314468792 545887585 836953769 247594572 685150358 292389129 109149066 327245385 493207149 755915543 736630474 814460431 285501566 342853796 653002917 580592777 941982476 59964656 793915655 982261497 320589938 754236514 922769759 424451235 358597569 463538145 837918951 781680386 485270015 175133080 819459643 551461700 522047423 852044829 300037854 814892678 514295169 593066437 871115920 805149626 808529438 10788759 835860656 619604519 465154535 890829434 293509049 462944266 19127256 706502956 733664183 309232902 473841600 500206443 206627549 505787910 711775219 384645331 680198269 504737067 354586915 533373419 337823127 861388136 958525015 122937806 587865167 163356514 434959320 290789206 764973719 902540096 220889000 838398488 6861679 395057916 386023412 27752082 422309073 887961481 143263129 112596442 475186895 105563285 585571781 322350186 399903784 414613493 569677061 880956182 805058225 125304948 981339516 498021857 437758583 305074665 641768819 360677037 210907036 146351674 101067151 305810378 856048575 456301820 379500700 563729318 674517499 886634261 698431937 291115730 764562537 645570702 502823870 13902777 531424869 698399690 530126727 886058406 787591714 61316646 311682310 968079880 38538994 255077280 428508234 76179669 361361075 867324989 82088560 876695167 484717030 604494230 129013165 167621180 503460101 227066318 876673098 264600696 571502709 66559857 239924406 23531277 200065893 813506051 245966910 942621024 376651689 161017399 844929512 910892887 539481870 941275975 11978176 187394181 864894842 274623598 606477179 816283464 766746793 174016590 884279003 708375127 45121564 847742138 284533424 655769024 359205037 518364931 554070875 16713008 209151514 167993770 92276047 334795103 281184041 823336040 691335717 629680571 333060446 913374650 466346100 179884175 914784817 193261660 733096659 827192939 946795475 825436882 889802653 822035020 247166587 790198630 617508645 970070541 28554980 467202665 539267305 923807216 875490687 668234974 719862909 133818923 494800125 661458642 488715583 78293253 33617883 853063392 591638944 160119730 403786223 997429607 664318821 628759234 315233674 855644734 459837448 112480250 711748465 488354925 640564047 280984751 240882736 547243410 626434413 530559261 401221993 111149305 407596879 152907882 79702305 215555254 939328390 321725826 757723939 945243499 604711947 738153302 846554332 40451555 487501226 661375400 180843656 134943025 682197399 250363622 580362443 779528213 435624845 981975457 653969170 347830711 20132952 472307041 625269771 61947206 18164190 484112880 293262417 75206432 889966831 962378443 715738862 292956470 457424803 574127819 935482029 106001251 184839547 264244749 442994422 409167698 295642462 884585822 427210364 206088939 107051235 272272006 114027533 990311676 583147896 33061508 365341775 754828288 591820339 844802241 869969664 628931830 338880619 546058407 769654920 755925573 667985607 788843805 495213593 641626573 722850879 293803170 933066249 741436667 769961994 585549124 357611381 104929721 297799948 208422207 277400224 52342685 790914873 231126767 31591752 202557889 978682823 463147676 121087498 782245944 733714968 645646533 79421744 80730750 227354768 189782622 804994287 131806485 152033784 657865647 748428303 401432759 390536527 383788163 247114972 713765241 512710464 40586085 587363212 251462590 188171811 523727838 30243118 466193379 509761552 615693701 592679910 16390329 499915318 496290821 682819674 536243797 804314245 317255667 959748653 267907823 342395628 541640376 841801767 587976672 155158632 463627355 256652686 732828355 436791952 238084483 650560837 597554419 915736043 491790962 709196233 423311925 804842633 705916472 563197886 536562943 684994698 385706921 551703294 855739586 249094340 213266245 123437575 967270416 276008438 367593539 786499250 228436499 257691375 8216353 908659261 139739631 754050729 44044893 127849955 799411945 378220719 170790510 849691484 685485388 319852683 875084227 904625819 163669856 291510664 631846316 747384618 812115754 684626204 658572495 470198597 849905162 400366712 349067007 605812886 859930968 860625780 967157933 840947626 659512861 942391347 536802296 895537925 166205823 101469237 695834354 441716063 260373459 586912703 427225685 239233428 153182475 672994158 658391256 497315831 628310506 156575332 993763680 161668864 810204822 457210372 470962567 654977563 548346492 97137092 152255288 52481395 215592533 475862335 700475387 314494911 736501145 754713995 698928238 51058748 456213796 280401934 735129076 16893648 680991455 609327821 315164019 321923488 801272072 307498852 884821825 981147934 772151205 725127651 919637107 411461834 1806726 703042377 147792844 415291932 219606573 480698851 713594773 520621594 434433016 837890666 463874640 827227458 808457257 939450225 957853529 237950427 615665560 251254574 599855339 364471135 791273919 519095228 720134074 773456359 391159253 912698538 226669519 665287667 142464977 382044317 896723186 41667813 423376402 745112202 810236972 928978515 201067245 729214618 852286251 661205836 456345165 89412346 50556202 655236399 159164877 794705973 539374239 59731360 175779305 136522041 990578516 107308739 175740441 795170140 813582328 22991013 165122525 421336202 214177457 830392018 962484936 840683278 50785219 68756966 211872740 727285394 284400461 136097525 887613325 357945929 534107514 574603191 474703559 783745864 452773154 271371678 635819414 191872590 591797541 889091413 179530091 287396160 847618441 164351178 140640607 277496778 834370152 882771050 375424918 240720419 638779515 549417036 791840146 395783329 642807906 266785329 457136202 176653561 82861536 481613450 340008694 192199753 437312929 475219974 704038443 855814158 199406997 64097408 431844353 294240128 4282299 431675737 629430398 959828642 88680470 904298461 537295778 662958612 706329884 815108225 696567717 488610995 522300155 529216270 872283691 459941007 512092952 474106827 102278352 395468397 232225468 192523893 747813308 979858049 179292658 688164570 389989234 700749112 213603172 604447321 474974935 283616847 895500009 552092800 935123529 343704724 333911732 42660624 263621900 587045758 759798326 370998488 617010022 49084178 577713793 615018756 384968068 882181446 605308507 487644832 457329434 800706926 865668915 302629605 273778068 312239616 954508674 51752840 681111176 291437957 326456745 488387629 145197009 54025697 589393901 345914417 84266830 726199104 771539260 590769041 850885563 64974726 313882282 713895995 249827129 497854682 75497388 231752934 891183660 905751125 276787256 604380779 465038092 685057001 338860519 655465735 704704845 586225817 745553408 24242680 952839052 875433714 743923607 522564272 700537731 605708557 364413992 613384223 459155791 450876350 240527709 76945891 184409186 942643076 652179832 343514912 841485391 791864937 564128172 962528319 11538328 813073924 80550955 538481736 712603486 819280920 785424522 922477900 564307067 213975125 977491258 889549336 172087399 962249318 110016343 550830405 544919980 66447335 174458850 319765325 199452233 151592804 671601814 234061064 92494846 8879441 596819864 991941821 443516014 215832945 580758729 170461828 352304393 595918365 920042758 315092233 595902733 978990062 582490610 168108110 755070557 59081941 598159445 743604200 383382585 969690884 159439485 292706998 954482026 386574496 40180433 120724693 208001788 175362548 613046877 867119201 145123912 725851866 432162132 694698763 248872506 608134723 605727935 665169468 590981036 406128431 401369186 288918361 477582444 701494 777884612 177717254 861574068 729822222 837931542 517393562 485355628 131326275 278167584 6787732 273946040 808032743 526128913 86567443 448376335 859160410 110620035 851992597 382777987 811655776 938049112 479098218 156093810 517132752 674024851 242888855 513448753 867375861 824280802 193129555 957340329 599522864 975162592 919704198 286294522 227191462 82536622 582866612 275471242 347658389 664384741 445422669 177166488 41380596 718812763 162739600 887959786 705842986 651199427 43952812 184271596 218410315 357784184 167035000 52261722 828688530 66051909 122465104 692565968 972870580 328857815 344738012 217073818 93918910 755037520 200433162 968181569 668470588 609653124 516369304 589680311 359418153 441179215 51657649 402468407 396162425 585544164 880048156 375145204 906414045 502094030 490684404 387151718 981949825 570056970 243442963 933012862 193837581 780651698 904679943 74134437 934580067 772883637 439748561 783410804 764964127 709433906 526613517 336908673 530721952 446733322 2521500 717013601 250299112 863856225 110794659 785295417 786756037 976337315 631674605 351479670 34159951 562180737 159839034 446529623 986983703 891704395 9627366 987652203 352393482 357624420 940388624 160245643 993143004 313576495 13383610 506221593 664454485 593276869 853096200 736546967 852122341 640368616 724674888 260575423 387940915 272499111 166064009 773428214 97202308 687295363 7005766 882874072 389395258 463325657 789018097 768727344 895726617 932833006 451846384 499554289 767053641 39915384 75283623 443706762 462233109 91277901 899570203 204647618 62115081 338897707 354616508 796196234 602869239 177961141 206039177 592723059 13212387 345978072 989402903 697155859 260087642 534180660 442894004 814381082 347421462 268213849 856221804 513826173 605786206 303747435 382911786 154059934 163717779 166498451 669602471 135759804 37208526 164377439 268891129 658326498 500059304 448158230 379037733 516277148 456587750 565974010 277831979 676427174 259285980 672994671 970678532 766445618 712779166 648897149 876163318 840547964 111676729 907554435 600353302 216434845 560159549 657926368 611549988 656849498 869735429 881128546 415162078 178927378 834827414 372973244 109945580 73117505 691061451 307205356 52504629 244120020 467524141 759514374 586169231 906234844 190285464 836311451 260108129 137908558 792077160 119937461 160607904 828832643 877709513 6596508 724584147 82848864 941269139 443964386 528209680 849369714 675548733 458836671 130183464 764611765 317651806 281801317 471615230 97603234 806067088 524421183 941194876 322251788 248653350 685704735 65399060 435784663 285472065 957317359 458229736 155878592 882026125 82881148 66979541 280487156 549589110 708533177 368375173 376119281 115145654 119989502 766866643 412384786 159018634 718261977 903709635 879733251 363159198 405534376 538130766 858880801 245582490 760674458 88720391 826643788 212851950 766402721 436642295 97732968 397719811 36926548 632482716 388865249 448263945 636880491 961533394 617417389 758170327 257293637 707268913 832998358 729381847 62854553 692222455 760187078 723657877 774165268 72236362 3001978 61288425 963534412 165321035 227360960 763946625 221196438 16399262 615123767 245315206 580453835 299283494 942718222 697235991 549843991 787520602 132524182 36786377 290454702 975010937 93567208 809106303 623386383 930090269 364410189 341537491 384431216 933702044 774114038 257973252 680922703 187670230 265151715 419259367 753854279 830559410 804085963 708852778 819604012 966175993 581516588 273614641 274770486 501051209 969725826 741656956 658710610 672937097 776547677 192838320 560244390 545328857 277332228 198151465 607850776 675714427 665635982 804689527 489108704 650252757 997958805 280148893 249076102 601655758 795319760 214189350 7927379 672853480 649396680 474054941 376049743 827281066 286479747 300117894 466088324 707319468 856293865 158689535 56016445 83219628 733244428 953725480 46209951 643506099 353051329 647486532 514701227 296752273 778523976 256388658 55638605 24654443 718912292 996295922 314907914 201301468 482140341 958690041 754756568 403486080 362920994 662097923 988313669 121955773 688047467 850501534 530748674 475455904 115499236 336650554 648298404 532315515 773877600 544128577 54982334 686313123 879128444 616851540 701863307 776971519 567243440 674734816 842653001 289220152 120224700 193511457 56744634 762648080 94431159 988072610 895446723 630578809 431338663 137530660 792619508 38976754 669589970 947752373 687248957 351086447 354611105 336115484 216804795 289653858 883547247 242478249 55069824 649202796 859976835 624260868 986390607 215330995 789419143 396386881 884340519 709140262 107001527 744206844 746541775 816722976 831630926 398240564 446575293 914804623 387810854 965141443 597091476 786814825 464504776 621315848 906799375 809886789 709898162 249332718 930090435 410858046 57602716 877835297 983412247 377657543 591504082 785031276 212090710 276790976 202584202 725560025 165167762 353655052 171911359 696019038 367421621 316743365 277516801 51330990 732707435 360322451 477973552 249079854 271324231 298365505 594072942 620134136 183691084 845040200 967240989 85687195 82423436 381117736 436922310 487930007 147813413 996742953 959849317 233782842 228025652 315457147 191556128 97931701 770227778 671201338 545042249 683579885 124479621 616876995 228545755 859405270 505421261 647156452 290658612 402076899 217692978 129629246 399957188 320481980 278277513 828514065 157369542 447619828 762454697 404517240 702088969 890847006 960399952 466005069 598864165 808856940 473019708 911885883 321329105 81851012 636135563 385588362 36645479 35475188 817350606 606866406 146172235 949942734 548332404 48246669 83820327 734762091 16746901 795345459 350773581 548182181 604936428 942320101 129197434 310860841 213144818 121547110 900553401 922627553 74788806 604145422 631913144 265115069 213544080 394237378 347572574 551319901 768822373 666066179 901142922 919809209 269388604 495020321 191193481 92448055 95508802 859548635 500270796 758541923 311634104 434612095 100943535 746872140 935792606 339915757 820804639 255312779 836057327 469011634 488748116 846554181 648241501 407896876 940814444 780099958 984712504 603497695 851153937 670329233 622116543 385633559 698327283 995233963 27985220 728728195 19098055 504814109 537469827 234118186 229158793 503705718 891029694 111350343 316695651 719728424 536204276 817031147 940916897 794384740 910356918 687181471 182801153 511144472 862468388 98968901 159665536 695401562 74161801 473720132 399881810 236396281 469852314 487195406 723971474 430134426 628508145 333036540 378090377 743759900 872924214 101536133 498823437 846140003 33612054 564567348 240674481 122546205 266939996 672076295 613847278 776360734 364184721 448305257 666736529 425733510 126702370 728542119 784972096 4904861 265017414 119535053 815893262 325536066 884578492 980362022 969409031 321987095 689417945 531474291 483006304 566407984 99163819 136216428 31514903 532730388 867870325 868441084 484600230 298955858 26285660 733587790 5601943 487763192 334354562 32053205 340134580 762429449 584235049 432662688 773662331 891241076 77489150 214328460 581419355 108864856 501739209 342436016 931676442 861008134 645621506 85721749 317819312 20218483 701488819 226778201 113147995 583830191 928359380 182813533 161585470 147200814 374495392 275577160 455164120 795667734 396936782 229499140 494421623 520358073 121660563 529948122 453110497 90578892 502049624 876415223 316031277 41695511 510030899 479441936 281766437 68187244 685805815 997052240 876069017 214050063 932973578 53938930 641148644 131297547 298830728 588584766 671734520 476913409 529472156 133111170 813302171 564212990 289277749 543459562 878357011 629138860 774329735 887357238 151173739 735362073 387472536 474410926 576864616 599331342 559460925 754811142 136745069 420808126 570154538 471042490 934760222 720934405 690557310 671179142 817766897 804193230 98352159 429229644 544294503 40662201 904786905 613263469 691587269 868376663 55191314 214649160 782564000 510263521 876453302 11610988 127511958 446515441 852117393 138417049 272646291 566403076 526081495 113452797 457749333 816429574 246628222 287896499 71344913 885733173 994261507 31854709 993752739 197095820 390188535 621524112 833977628 304512877 197104333 168907879 818899116 910197633 357189263 371373900 522449601 963789450 857405766 967107032 888933994 148037177 152155820 793460486 114772666 10909349 369664609 516942425 981155143 788660531 245196083 12805653 131182263 896107216 806388286 836514695 739708488 449310225 190310149 965238385 63082047 163906073 655895754 624948908 607089273 391795794 174513835 170681759 186218721 462743370 341566149 632556944 119730874 14825807 734551877 743057428 754674373 582198022 838725762 486521931 933317809 283719040 318904073 413548275 949275195 677620655 824082800 383716773 370469724 338935707 763646509 267981961 295587140 251588145 455961614 339627872 334672897 193564242 950257676 760923351 314937668 523519497 766657488 584639840 8721136 320431194 238932555 982179332 740464885 660589841 164988531 283682246 888673543 937324610 511160807 73918883 921504094 527781500 136659263 574855121 146365176 617506629 464584003 207320995 478904785 658004019 314315890 351442677 371681884 421957654 185559548 732448369 873331894 487622204 918372995 195362145 726214977 407436044 227623702 128396212 470850492 402997761 382921269 487727399 828865180 89549206 187976586 969802619 40396732 881921828 876790962 626289348 36974936 278414078 219280970 881564325 885526869 176201311 285368378 820130036 536570139 684179219 158062594 946528361 907114417 845837880 577485604 829760891 199630379 89241507 405884671 25815999 23454707 589799092 422223004 202942783 947240733 60712102 43527651 156428291 518528616 902358137 138330021 754762769 248418503 717984148 260280143 66577814 53980403 887094725 822932125 32981460 269022134 125763174 860372635 558865899 810750552 540150193 342798315 682018875 286619389 794256630 849046255 735683823 27286571 995526196 803015560 461317156 236004102 330128692 887061980 46962135 884594950 289637518 946379594 293482112 26810999 866769375 472770129 149156217 176199524 378478479 267248686 965080234 306300796 129014503 512939389 929913242 349402550 148122025 103994827 188570839 36752520 266571988 99813198 308558153 507346805 932496268 740771057 755532647 645442072 467473480 646594010 294334137 223470998 593259451 907081552 101756101 204432444 576989508 401769875 333919432 643026267 591010019 627014494 734710433 684069528 534355131 451471716 187277735 695547705 438861642 260583880 628162574 237087884 370356701 379575223 196145242 321900108 314835816 708632216 977887518 425149991 858805387 950676133 219843231 853152382 477313816 580142558 609674470 99629549 824893689 30665868 471442346 547112926 501138893 826248233 237616326 736193097 191237739 651876874 88168853 909437839 486640115 915488493 132861958 533922292 798884331 670590531 461866078 278569586 378424926 482400004 2595711 75017298 991289408 905953163 9926209 312896333 16427922 932731686 273453148 916828117 844693603 534036841 678767656 782315683 165820598 326945126 904332115 650914195 222301116 962162229 808936051 11177208 328012922 277314090 743932292 815631729 520748049 380289549 713530971 30439532 824932832 949464673 929898777 782743724 763529177 517666279 465466938 851102302 875049027 622555999 329572337 330678 79721680 183936240 59342404 445552161 771364022 464317811 518112645 777841293 746568622 245430294 888596209 286173823 108614963 6781237 301363789 200344191 766761033 805460878 668038451 238209806 831347449 672360970 452151617 569249931 512383544 711753616 842995749 372737090 7069570 870892458 462808619 801194735 973462958 346219796 376934983 188069051 991023979 491709323 405955014 609484028 560598671 474381440 732828937 820599532 956741407 233061783 99363948 535566093 328192602 111588638 919632183 12678944 232104895 887812116 220197516 613107786 106426315 806499312 587366717 40935079 559565969 176301716 338965766 921209886 759523104 247473250 494488856 99084073 21141815 795556319 222550335 435939201 324305062 574523879 13527598 722028738 329519298 947271679 659956136 834896615 612050022 884901057 173569631 995913810 208337264 897612746 955952391 18009582 20017427 822416083 265246844 664742189 977690403 938476330 433947763 508623464 167154094 19856728 147128090 366193312 366945938 410524163 952395458 367281950 247208106 623327978 279064587 928147662 176748914 851688213 215753661 610355871 38313010 591735389 855920636 626209713 398117011 29651416 260444369 571479080 575661677 459136311 868680550 294710591 953249760 305897198 953659621 243497298 112346310 179676487 494004246 903189919 228547188 40735601 888167406 24210630 829898403 541933379 543865686 703256202 852293611 109057879 219685372 92114921 729449080 449263074 119925676 289484328 776061634 600309949 456634092 497601185 217158485 40405068 226627083 416027634 414075405 775599706 298463580 256681847 742281447 852988165 614855330 247101625 243122481 655816044 901064294 230421564 393397716 641954330 818706295 390205205 990464289 798272580 210422943 770966517 699080198 373871265 591402305 484972281 179370074 663450439 956439414 892015991 499266508 13656152 660321453 271331670 395686311 96393366 730500300 726151047 758947804 686498619 975483406 525589872 329037474 499154429 46226976 315850030 980557906 54776449 465430968 581295468 719111552 341910039 634391023 821950836 534828317 105918061 631304097 646744854 761236084 617137954 553137302 161684713 867908530 227353344 581506049 671164307 39541512 444886691 748084238 159258150 630478106 385972567 500287262 325208233 989363642 453558594 963786932 646114343 520593033 726957969 799193283 604469904 670299832 863093473 37485949 120940426 241307803 933478947 813354310 648921954 697149983 782066631 607561296 35853839 536686898 883395788 81470367 193417782 161157976 126133681 602839441 117227699 861430025 631914238 728307301 875682638 383024775 395523083 276441547 454929501 913174739 633846671 918223700 662324845 559821078 882845715 891051805 81252191 816611508 220466935 897330967 837356654 49499286 245581352 571033301 527120485 725914151 635106773 955429851 854127712 868286032 694854884 157863268 651593979 235157695 203949130 31409960 164461328 209326814 410198830 141771181 468871987 55324109 136423031 552583491 737474611 299948236 872189390 846329281 522028284 255085700 924122793 183664081 963815868 367096395 395910559 329791243 983050777 753708390 805128869 312300529 377449999 89339623 923371703 55412382 59308439 567839511 166386300 271649142 769059729 564712812 878520530 909532674 854113261 327641515 73498532 63508490 854249415 495292319 208345729 119312190 505884924 471052534 440643858 751296212 738837149 151974941 892986050 154860984 971952707 348355943 451270373 461968248 51931007 705848590 745170629 932102178 1153206 80897338 451755011 929552570 934680640 390531438 885461964 425930901 475914153 546687790 309825988 480535501 55524422 302534127 902525113 913700214 734661695 607406430 723200690 280569922 887617227 744039302 14005109 852856952 73224402 330677029 644995636 836344207 90238196 669414129 313659940 299023128 329370392 653123529 421083707 584766407 978760785 336261541 332997175 372096379 719784674 656242452 149162618 94902149 143436895 953102527 566947301 766953746 830247509 953849533 251659598 43115289 679049563 567212974 354057291 952705485 206386604 250744572 26782253 947795397 985572769 246196778 82147054 456848390 135736678 220155995 345237771 2959079 663278956 644241433 278742514 752869477 220061550 178249246 789368110 594622538 33754746 632595590 333514516 553427761 847862420 602206522 235934127 70708005 115605159 59638067 523563284 618485082 152024125 740789968 334081269 52418537 451080545 394955416 26777761 457742282 100397021 799982369 759579730 268751550 626999904 962235913 46826647 8136118 317809565 221300681 297150417 283552007 39138963 797225366 151007014 292620519 858366607 352532411 207106515 949498673 657963855 170659596 768981026 959129531 652784764 200091677 480317940 70415599 370922675 268064710 322910808 721685763 443480400 820936801 119153233 232268032 607172533 591951815 117571486 348756149 960345457 68347165 184600104 694167587 285259170 935653277 747658717 556432569 705279107 900884239 232177213 115666347 306822200 817339600 493882727 804848814 316062604 983407 606302466 71465043 614101624 170020866 751121317 135994948 849246079 436585636 268536845 214985882 643977475 732926146 699373913 708953381 424889507 255916352 479750845 168424109 717569137 120621636 631633528 44343909 863178040 75060305 54605807 978764330 598632143 273057891 203605541 873389664 437712811 744176762 171356159 865683361 294623127 961047380 195343174 645125823 655998474 419200753 885415172 908498348 307902834 880496969 630775507 661642006 363254148 773108479 520992152 810658935 182583070 132920493 281942760 736989317 993319093 70314877 229799996 122121606 750182260 566024904 260580215 986241294 78144606 601913449 169904082 332431683 74836917 318829961 247156202 480247990 331574071 828531402 333799080 140704985 487283564 344129275 695557220 10458087 465653110 793561232 479576664 121840260 36946322 556892235 977626188 990353518 377360290 58483608 298039141 537592610 3965871 138840036 441029388 599756900 483699441 705730527 531502401 379078482 940945572 74248179 147152444 618533757 101838301 285752405 830538293 196724818 737803742 985539988 645538358 795621103 744580541 692044478 371521087 468238382 736371296 908444525 626425356 826749499 745543948 354583667 782778689 576967026 233232189 118568339 576983103 683040243 606862346 767685991 819414396 238515032 384889458 631850407 363016681 476975065 68890773 134856965 389339542 288558628 819695670 577427347 86100890 589278041 855233117 277202528 556283308 374446287 926689869 752306095 557788397 583821784 478828165 633221909 781653150 715858425 626327001 247158048 600951214 316693754 247445744 349821834 57919859 798886973 623443500 461668755 60100051 861611526 533635614 270351839 499500428 689981822 328743244 302587586 716061102 651923133 389967282 157235515 395351352 946403230 893505126 286835222 629713945 21703322 229711924 291506810 650924221 587129436 528500631 21791768 906193121 587525151 87474673 344172688 430471015 990320195 220961649 468587624 415745418 616919177 151451735 639346651 780839948 33675947 846254449 94641874 194742373 518893800 761922160 945676671 559139926 343003932 382222521 474334203 902582550 822748408 938393355 418437061 797047308 579083956 158455636 65596555 391027197 794014943 120599297 639763009 707465375 516983354 688044725 221712043 512395556 457086219 392129888 478194268 537276451 547655508 612554890 785368542 203919664 486238831 720999942 125598076 265964198 927807638 971719278 998439563 87896285 518175664 650133261 513091487 925668228 200228767 64143478 491028908 850115554 16953465 268467683 539734816 376143223 111973429 319168239 418929786 550594409 822603505 865575143 502668310 605012364 738878052 124746590 230358388 598300822 99711591 678076638 413685427 372714570 502597091 127353143 832008664 150703160 487195106 795477044 616562095 104364861 379305836 621004857 99459053 659804530 282174659 231651284 107427790 582248462 674720110 411292877 362840827 528857921 496605104 442944394 807085339 358321691 685565129 728094359 865793344 272477157 642263166 678536845 121012879 293663147 963646472 650493138 202350317 271613372 653095050 860781414 510886678 930436991 760000820 714501319 171127456 722854924 504988929 652888338 138474823 991447723 161948592 416881091 332481306 497137017 332265554 211965659 911382486 635891326 916226354 203692976 427246439 458583445 186723098 878031774 736721268 78439813 383689723 198644456 274319185 108644493 982960416 227428862 443415933 630277779 917167001 512273809 737207421 92872645 420332528 418509021 577237879 946262148 288422991 461001839 279954885 989558098 121340287 802323247 598029696 644654401 690488140 185536890 680539003 268445225 637756364 162774155 310882562 367574150 147373180 275290829 126194835 895951812 685507044 223670900 295046602 310553158 429776759 203190896 764415615 420316118 47613040 945132274 28322511 156404377 795841966 512983410 713627455 856742602 450155720 552244041 919762984 774700410 852723464 11729836 561928538 281348580 673511801 85262111 895909689 73325760 460809262 758589360 870139358 771628754 671633261 439167738 716300728 419557080 436462374 779908900 764015914 11148165 794368937 564274373 127793917 787958176 371788357 390314863 202640759 278529805 28072365 616736759 664492710 217879345 785804715 477230925 558506288 230772657 614376141 932644054 429666648 750955964 284681743 235153559 427663134 560027187 239708989 230240978 588203411 772409697 540039457 700974216 775022329 443838441 474956745 923154082 77268080 122546488 939630974 345895420 953986299 744856313 575175873 371800807 450454545 447986526 450775536 167978971 874211234 25266202 467525450 351928187 148375047 772627045 631923744 203822079 601980587 102599786 594576377 120713410 173459144 303785488 153776869 356063544 138041613 575628039 344856337 580119218 284845469 292182318 248686305 262590889 612955808 340395784 32783493 366964558 375073841 731660873 650081608 386508890 490648562 883789964 100749367 251228222 914060685 92850971 497887222 883113588 942157660 595575739 490488887 143286779 602863691 208920084 954420211 14218126 724763119 776900758 79403298 8971952 119748145 435686304 624965508 233722101 573427484 611991158 407030541 862356007 40772211 702503967 529344161 991326586 456784457 608883260 408539202 185385779 636587208 303561193 91120801 225992924 312225059 507921470 397046056 377154810 433312905 36799056 380290651 611723884 998416140 427274044 622856231 622004137 669544908 90475332 21964940 663252681 525012619 36029778 372976479 161354305 593837213 977737150 669538650 291903816 601558151 698751139 713023392 393114905 321299238 900933342 151273137 254450036 618657977 931670266 609733054 789794558 233021044 413107415 740345372 835495015 102729708 604029355 106594992 245753886 737155730 46830802 623706177 975343233 626100929 423373261 90733552 34959971 473668353 822812639 107921348 880244926 512427504 479429568 191797299 310806838 241657265 146453580 62193844 402511915 516304410 530844186 599613864 217269169 242863469 759419837 657585475 431393916 498819336 770484906 672364244 20944487 714891281 759392571 481056991 275783398 422935239 618934349 278263288 760092814 723432252 841655252 552787665 79095990 17085064 700438695 700289428 600013734 696735466 337071436 404582258 823343108 647887341 940399037 90637662 562172534 519626880 444293126 702693187 459592204 198466027 882441906 344606945 107621149 592857686 381690918 545587747 78771982 88986187 496761446 56145821 948225919 613372471 126754637 418507929 333566207 908687718 588251367 90974330 545010643 93650301 633329572 347219928 543138529 130482314 465199658 40275821 821848746 565289391 550822316 21803200 755264767 140765201 230930568 941602975 689101161 282170357 475571550 910676683 565887177 207954523 48588820 861111188 394453480 662991894 437507256 315229666 856393425 558314366 761035603 210655675 334633669 857852751 8655245 333024488 951185232 624216069 342285798 168766886 100454098 961992491 877369009 466755155 542221245 774527300 594104347 739196656 774687263 271054746 236809269 928510574 767769849 730502171 917761448 629393732 828298649 784604545 81453668 18976252 979338296 425685997 776795913 107525720 945942216 264917506 514578780 328261071 313862270 448816337 345578315 375796169 626158406 854107179 490415190 387979107 908115419 636204009 198585488 905515693 236728779 641188905 936925824 908703034 798901330 76780604 929770854 915221690 505359506 311020227 232697391 750272385 659215278 887694334 241656275 793470886 535285476 649130513 703370496 511640627 838927610 461660559 215111693 240013012 383574391 309410455 212682635 805013078 601287701 629472864 502025110 63558848 596844460 879951817 90072781 804721006 790274796 734063608 176553197 182887535 310735390 949656786 91651301 411458236 354972320 292188983 935405921 84486270 569604442 3636937 258472601 713430968 57847807 40530239 545762679 597031589 110481099 748978747 515458854 293255335 315815119 245369710 495429317 109772071 606660377 573678868 879041363 494531809 795076683 610280514 699795473 585202165 555987927 672436061 600562983 97029121 523477179 607560262 51651943 831543391 835631689 531607978 818637909 603298903 275082652 669085117 598836256 364146933 330912957 775003357 66592674 408900145 699934484 923842789 217753785 391472386 802961744 797510965 797494090 13785603 871235365 762621592 224610304 788729843 576129694 145010590 599282955 646283062 811660649 635963829 434466352 701447743 82861823 978682034 888665292 882257098 93790981 804174659 945160408 676512791 932974166 298902926 147610022 318904749 453324846 303487681 551662232 244184800 73378276 784563830 511787430 747395766 681807251 842651970 455639148 893349779 597812502 555079753 503267269 526808258 450367631 196268566 603165093 35092911 992572873 335284897 98933582 111779154 414317848 365095239 787715847 687760235 115065875 823593827 373834932 112132703 929982498 804818712 588235600 323267928 634137416 815061414 308434855 197025646 5748870 67486556 929620744 2824029 634004082 135922581 163502907 876991198 36501820 528555034 177187331 360786722 876248193 627125941 811482159 453326161 582302165 371287376 947368971 732284451 313077582 306406915 538185244 154183569 796240221 738947765 193998179 654855181 242749906 392606734 372590450 879507318 269003134 580218321 421415140 174814945 660425052 83151237 524853926 734479621 894968067 429730538 988634175 753392267 810188661 141591181 241722359 155271059 33164809 119990139 610840955 276977162 894216677 917037496 445900430 457416834 161025253 520095935 324966342 862579834 248362138 650695807 781890483 831978957 138646442 125233380 39243795 293397252 801618559 722160957 410928495 281023516 802604136 422405767 251493304 630386726 79738765 905852569 84839107 130744928 944842418 191148898 760779303 306625427 533769043 238358511 974711840 759506592 295217576 687406808 418451013 868250140 640792948 76544510 837789516 463858375 700275409 33192712 584710716 808828501 131811579 493643496 211496657 157893691 464839204 344701537 83222587 695972886 561513879 733213223 400222773 615087939 49354350 250270700 231255289 108382454 778674656 178968281 215571004 952002920 177197756 765722649 325497938 547669758 151000829 829271115 789864498 951110537 310360835 786557101 434883766 710704233 276356176 769859134 552335175 129647115 598460183 242620410 454918464 608903516 968100944 811219860 795366790 527921838 543821932 273909171 295680207 599409521 102804429 179997352 798565908 358363737 321672022 652328544 143287093 316201716 179104745 888887731 826801508 461138531 940135308 171883105 54728594 429627911 397308068 506787512 584260414 715176051 154257709 390160411 272400707 223009769 596207486 114422208 60722006 2166276 459297894 523929395 557550995 67897904 759756679 994803108 463213681 972115103 475455439 278388327 282083168 40471039 8349950 144018637 532583774 265475177 535774709 958320764 769936163 648176594 432056029 875242720 216742469 574105283 365713216 850166972 80154185 782803202 467072557 380989496 447493230 57614398 314001854 201638538 352815490 419002963 403133264 168647609 793442399 511561020 918564630 246661338 15784562 990762696 273941662 185185499 177296841 821680418 42244872 40519141 919736567 38587208 281453800 539741703 392133021 522311324 177159976 503938844 250240532 96294713 872302881 550516523 410701606 722111865 463765750 281583616 655394881 545091789 882162193 404792625 365333709 121785035 745916634 432619786 111963487 281599249 607945201 775601118 363703143 215586732 83559434 310739388 264665815 34858878 23066851 60902238 276745486 615564606 48670228 22374648 869214176 73204885 902263721 588666100 606406558 220409017 996602990 659876807 138718296 516556538 48276715 147489259 616878407 537563547 379998846 88209930 60635821 21627598 811183002 713778193 182643351 774168425 257724870 561229742 209625150 519715588 485334024 531931270 600938157 127210826 343954254 65712215 53839863 271729894 533594654 273381330 188869396 341585639 798462441 43676092 218184341 692039491 810916666 790358063 66708805 207952985 679856592 379274210 54655060 724211988 388913200 690558743 618398643 744985126 71495634 607602575 746032054 462407668 415836179 999498172 556336711 277224582 944059928 622384413 821791820 453007955 602035389 876911674 307488733 139656306 154152768 809526150 479743473 267907360 842640862 737170596 898256046 550999492 66282626 359849516 971868431 108389350 69721938 743473803 303842895 107606340 667893569 377897789 551300399 585068068 188622210 139609937 945325440 556157417 976186108 838790146 654279434 851801286 972391068 940756500 329091772 341677610 265052341 890644814 282982357 435409996 13573369 175852651 398069620 718928967 239172902 959493296 30404033 478555820 284749909 335905935 525077201 988242307 481861063 150404053 790895013 98608720 734343725 493265718 999587939 935983711 778026757 985258828 875906382 867863953 794558754 618306858 652440316 767552633 331233928 62430617 946374154 205521599 992509691 373289326 867225294 165780857 804272565 488042379 572856112 326615916 337396717 789033814 885891986 690128785 942779912 473919339 662472690 607240494 679671972 21750991 125705715 235054798 705027614 355578652 37862009 982826610 568880634 431265184 519545537 313826580 52129436 317686453 815402976 381650818 846570783 588913111 228478566 386591116 524531256 401208509 518325345 980445428 366527696 903221574 805349461 809766796 556544233 220495486 998048641 245890035 721453593 397063408 624341587 343896104 781138378 919163940 731650280 12569414 469024805 102165383 88147574 971326764 358465836 195426092 395566668 355416245 369594469 812989982 965992569 598358634 71474676 766922565 987231518 596626522 980530725 221189218 535770079 439005867 59940247 830432968 556722327 858078220 924100563 990070398 953394592 446396903 321592775 968245120 307037701 3658616 82448712 114774352 724900811 455360903 770198734 266894936 215490368 648072765 834815117 186341151 291698608 593158201 931685879 757938210 252841294 610100031 370519794 219733724 583693552 806171065 820770238 191101173 340529831 247110337 903384228 346978368 156286689 610633539 854422404 300343575 14497004 667154899 153278220 811031526 351115878 839750407 53427266 430510415 359966691 392614330 482694946 230085573 143661090 528066544 127274748 977474006 759115558 505368613 715456158 435216018 178230940 75104515 155125711 793571457 279129793 165792686 528622538 16061449 801248885 724418374 266415155 681170017 790703487 5631854 172216100 448230500 452315804 920949004 752262224 414486047 227574368 675508777 162115733 323844162 132454727 293156853 965690504 890295995 698051590 249079160 649411138 762987424 472675229 374231237 201501113 433221576 570280413 532771863 639342679 334789596 267586340 696952682 796408823 827872708 638335439 49138725 779229476 484325186 193839639 21915242 81920953 420070423 46234633 920062254 535732543 131664865 869911768 246088913 159469069 503649620 826249383 221162406 452194989 350958937 690421881 382523058 821494934 804389340 409008456 940495585 707719249 228042422 408130901 979821047 702424018 723031354 798123877 742649767 871331546 891933523 839078182 236201195 533038086 343064165 661721836 619205151 372566600 655724036 240825771 39334201 97297351 505521709 84050872 935114024 886555349 753201210 645447781 441905498 498531642 923413450 255322105 797603829 334079628 515798210 276465576 566176167 488005060 34279901 488317374 727948968 152753500 246929312 668120625 325919253 505487024 536481141 468990359 933058118 218554161 109197190 107456367 590529674 482662703 47365443 916785765 756463627 230546464 638220076 231232256 941346796 892499111 419666222 593871214 422250266 857881119 69868707 640562541 931730247 264123620 771566625 703628912 40036804 499831829 488691037 505213296 371374145 809490101 80804343 376154840 221942453 745509744 147345124 607154092 541248377 961652377 760834643 911612665 42469192 57442463 357029210 796557577 194319933 203649035 421313162 185180592 325862580 120322504 105350934 549550308 324827279 600036521 742525630 18407624 130610879 528574643 830054222 324343272 9434123 548291667 912520868 697881469 815247817 309437804 711520223 507051083 58309815 925411504 69763159 168576483 972022879 701708844 452704897 360666936 711487441 638045084 815713778 230624308 483274964 234517390 162915120 627202331 519953160 754910455 481993388 205607139 170262807 713414169 415784078 835242766 891519995 98754715 844493082 738890800 140805251 162478686 685797986 460414172 944611237 643935016 267778089 560050724 296479080 448057591 781955689 495991958 497936580 453703587 693765481 438201995 468747458 812011047 384001331 832307261 697225452 360896640 590958412 300309256 632315824 327492316 53867628 587828133 962879536 24149521 383906762 435060333 73997098 538404089 215978367 707700861 916831058 733521846 521126657 466058665 285472741 239771097 407707757 863963796 715796482 623347142 151532708 130615603 269325869 145132935 921805651 964696969 125269481 638549510 605150378 547714479 445023369 162988162 247478547 378057235 772917805 265553525 859012553 72265322 310907986 467554937 750125135 121621728 653784288 413014418 917458795 154262335 811065241 601808443 287974433 724072758 698408637 467855347 827619123 575446721 180428767 288236513 538701207 756314771 212203106 989865713 192455336 628955290 679473640 451516789 386484568 915220737 311193145 689931130 684551119 304101651 127841500 681841604 967311362 307602288 495215375 309422281 142035705 289811041 617220618 385983311 434985295 681618584 249277106 172844589 128995858 732117910 464893283 918001006 679078461 906993805 797982800 935340076 326532894 494217185 812417553 821298245 307253322 555027186 445714401 125005394 763473447 102616732 270649794 864674045 537402741 996041807 930103679 314162935 152285270 213604587 102061553 655901731 322093964 54861640 656484795 667040896 911052074 687790751 619345890 960491516 96109722 196362547 628494203 334528336 499733508 279114334 70313417 688738599 829644236 577397307 921594371 787976922 640519693 686342158 32075262 186287616 662881692 529572218 334643218 30807090 153345921 624217007 820172858 973878456 974235759 977642077 211612408 211411420 649910286 334350176 566832836 127276020 738741098 226147411 65756195 555544162 87090295 891614687 24198555 777837430 7993759 386836337 2379424 77331677 638834780 604332423 113702630 143251694 274988398 195780296 238557786 914020984 142934933 119640193 417130586 245138651 601968732 140056255 735532845 749177022 741821961 20262136 66624936 373439378 537250375 902219175 489032137 745708060 730724261 970036604 276280822 536278152 400836293 870462339 984768256 368930518 38793165 542220199 120859983 42452296 414839791 738692053 202099957 551148110 488798 789394669 631721074 359503872 156003685 888491542 188204936 809446159 800395530 666192908 577443595 969998700 650409558 3737842 303145213 863461081 101341229 351105088 907763683 411354031 293420523 563726917 966014243 653424653 553254711 328174245 671129308 850539901 955905380 982598953 71148535 273072393 226863606 32986712 76822767 505343997 754561966 538617049 562169930 608060639 345413947 706686921 794719706 112247306 324473260 443643827 58665463 478744936 752057490 325373601 430279171 471544098 274559141 743447932 469138371 342866096 461747696 908906891 931316821 956546789 959983928 414719702 299998281 11960337 647205496 741270677 781144400 509067320 322083455 646097474 416065907 128668541 82938427 152844418 866610547 969820995 464530207 489924295 319025410 31499552 21118673 300368144 32884465 637785340 132894419 779664204 288147334 492653405 415180104 484638360 802263310 248765331 240403662 579535447 552724852 167327757 924245763 65167103 759501031 341374661 480594278 869273132 733340983 715089946 114066079 806187850 242771077 78733822 959203731 989368169 338040370 489552448 279076863 533063014 528316819 808346273 985565963 358917885 754031943 796696736 204386988 252935760 488601280 473523583 381079426 822337738 2867714 254374090 186451907 235459395 98745490 274285185 529819014 976600156 770026617 714707072 272336284 410168776 542480681 209557826 722573928 833446826 979163232 457674754 969636047 240083136 333129275 912273125 266753344 316831240 165978400 676556428 791007615 809967436 406162535 746775676 925196421 754618195 620309537 790131208 710529476 720568541 640438035 733728124 721495888 702790934 72967477 354231366 777374872 350419243 121435232 302880375 440908018 753506111 462634153 473330020 500211170 136967361 860789280 230480091 493454675 238161455 449075140 147854299 801645564 521482080 452556168 545876677 886577974 469823521 387615008 481145196 513410870 229792851 150465293 502052073 961674182 257120534 517407629 908201607 644678359 557902264 81877700 855287846 970884512 257158627 546683562 651458883 573178445 386663119 343767865 197872335 811840321 556074956 5843045 701431617 184283688 248584468 767117000 453127038 951425511 887700361 589484960 719300517 280646058 112556553 931472409 550851954 87920724 313601403 983396657 726208606 874875317 19885958 215819369 280018088 705736103 261157921 779524378 239098425 192678892 3407733 553535576 968748537 37750508 472531825 907022657 51825317 316960503 458449070 33922021 819142265 182138424 202112599 841483943 36333561 647296238 177459840 821411327 943551094 884676775 982074403 453716412 784295757 938022677 621899172 927827652 831740729 429521298 999983278 546724473 46681006 708901054 589243281 264474492 7099990 517274329 421523973 447086268 499684386 925781727 657658059 866506186 543217894 394659527 109508774 328723764 558954954 828074954 326771104 188949401 653224536 395691038 704120116 956604054 414399207 134471860 880141943 685535871 351002204 215713051 500919625 749484966 169873377 89394504 231169582 960030434 464429336 355931452 978044427 213056935 967348903 314642049 598948976 889791530 838891503 457589674 347046744 97600252 615121372 637002697 953617256 556704465 439178129 360565963 956485260 508472890 909664621 577082345 940513889 311692366 401657420 799605151 179467863 301017703 468919293 340128259 114782262 128807493 442116537 800072227 623049501 364638658 712751496 617970576 783509297 186992017 482559840 718790376 974112165 619474073 579116913 299715344 612350806 809973926 232288296 656194457 19034589 893051341 891353997 431250253 716163535 849518573 353963171 212988910 737163896 526549500 722820884 439510821 252623975 180245947 313792401 802710810 481349077 618805725 705239967 652353074 397302063 651778151 488705779 872025123 510054818 401645521 654864883 357830072 975659227 450392672 494190249 784403576 999911514 830095343 203635536 223576699 946507419 702972474 359612863 832835752 619272207 99280102 71919252 772711015 426199287 435014667 57701950 330341761 409530381 154933181 289841841 192707749 850865470 74610523 308868924 146915940 216363685 729552127 75502567 277998450 614432961 784233720 61225473 795009189 852058332 468273885 642494050 727899919 244066131 625140023 307288737 64192272 214361642 306550819 741609122 287331260 83608649 402785094 678398229 991622156 677677190 304975280 541370024 988817204 615750823 235247908 666997520 611055943 226568289 902106222 580854021 792473398 317439080 434210275 507372447 815824926 733679586 823116840 912557788 652450806 640232620 704853409 172672565 52511111 114145419 91724139 994166806 888072571 148417809 929741471 23949095 505991472 826001705 458939951 582850329 340968194 742163959 888956135 252873558 53469264 751407717 160586362 427153640 11916037 667952821 507517430 773465112 464731417 789480071 520223502 42230869 769285751 889647213 334184662 529444219 42040785 266726725 831309739 882324965 489677706 774903460 15958391 346596263 927711544 952669256 317010624 628230126 511568665 389943101 236374510 953822525 19656340 255718857 44343885 509547205 897384127 552567683 907987694 118217023 104474043 657687814 323765091 483590824 628359776 25759902 509577399 682945794 395933398 255161418 827565131 185934194 548653191 262277697 551569981 215660016 855982885 663126418 729139139 805547315 660205094 344157885 611424566 595760021 808789457 72112275 129865155 523556947 231583825 666107502 70328837 365126077 985195679 28483729 852846721 663129333 4139013 948670645 546515622 408439872 841618091 47414043 801631368 544648371 780258998 27501087 298775384 275012677 293225643 381889842 471695862 915606214 893279567 674863696 505678430 553784101 104016451 335272045 981361642 255982556 633215174 16901068 6216381 903911525 371890518 407796553 25023833 800603500 897122839 194409342 282342391 614879314 748355618 745863222 24303241 856622357 603505622 457762476 614411883 709276635 684896317 767466370 997983340 212287947 289460338 579409530 967141417 854422658 674724008 749003009 103383422 503240090 739463698 750965061 15550275 713550624 925809393 19624915 134660276 86563952 769792565 202133242 81895268 111558831 671640017 215873645 348619415 523903002 421864295 960961186 483258583 391668978 227351893 881791493 341120370 917642418 327404430 489296680 536142344 376309709 256471906 659629630 958815149 132084953 502565888 37946786 968638429 585730844 618961895 588870775 263530131 834587783 355264711 988934887 890250919 723045270 47177179 594169935 225172830 348702805 827909352 920709987 715647683 919727700 516741734 367471088 442710624 961495657 215849805 974345507 719206127 499466847 429116295 329049814 374000187 270485759 715496237 641791676 302264134 312118879 963236317 192622628 406533758 481581673 883806977 37451623 734344488 870801289 228610957 924238739 259321946 604161860 600509177 851546487 41022066 732084976 88923689 428089889 395352992 492718802 827403913 918111563 463280149 356109145 518838597 784826750 437754992 115913974 406678469 489273676 320859950 393505046 124823845 272893575 641314340 26002505 193775520 727101089 387893196 547559063 650570817 750795882 532254225 906021783 942728070 407421413 247901440 922612627 277292628 23175068 964932050 196796375 900784280 825119413 611161889 481395507 791531455 250386904 995358814 929860810 405834869 250319938 383176032 732637919 541228154 130020242 208355318 933988714 13925943 222979582 196083404 975315894 488935706 345983544 671533927 391102281 54684760 177537564 24194191 538467885 808270195 788555594 357841725 329637636 987886077 514735182 139431919 35790236 978786877 266375273 738601826 827205368 388332296 436872826 658769923 264700890 879627049 835577761 433035426 482804171 682450155 762486953 170488765 990678874 676553153 688642432 488994788 106849224 514844214 534575049 294364705 766630007 548918612 410721938 861277959 99176653 176091491 194324236 48901948 267607415 854431517 441063784 535716659 597566444 583015367 167435041 523444861 542584322 887218986 414157087 667439890 800294429 120838546 184503043 977752268 798059931 404375122 993026042 793874161 993847655 874416925 335362346 538185847 850810808 321632942 275351665 572185769 915528051 230461632 850918181 222553966 531199346 866452210 928802998 69243884 719150893 688527762 532371740 516304074 136387321 242715813 26160758 952060987 917503069 249821590 881088716 770408 724103193 748214318 749471445 715956969 50820419 273269458 859002974 429590588 680999901 51372028 957608993 664018484 152408239 846693715 164172306 883358134 762778484 553424782 357065809 663302374 805924082 374895272 932353925 443166520 511553520 275937395 380183775 645127952 556116070 815515029 371912070 225955603 958209317 872158694 192613502 91768358 667892628 33874862 464669320 571077518 540003960 817184846 520619635 528276738 279590613 855976727 256726293 505169987 44972990 339888788 865969725 461304949 3290677 745638434 658455151 552856710 576401328 926129442 375092093 934787209 377659106 767576728 210690312 764048673 614741083 229222571 456382251 846088175 575978878 98614252 41148874 340739565 832316558 375361533 319598999 514478447 636363507 978002616 338738763 153961320 394800457 619698377 135783099 894703839 810721175 930813959 773008477 979626247 562729631 594383463 102143761 539101125 879894801 397764712 111751540 766513402 226688674 479713514 22706963 786945334 145035235 825309405 635726987 887332737 299675377 363354767 362648111 62534058 959766238 190583757 261167883 61273756 768190598 117107651 658089662 700178641 771093448 272732221 107687178 281679279 171055387 794561181 362176526 315636929 417214279 643077900 316352237 874350814 704768540 540947897 882717528 221478187 823041829 146548938 17602656 650295389 657786611 321647474 270260523 659338686 590172381 344213229 35330736 164803640 912790337 154696893 250799107 1356629 68734257 353488911 256859360 995923882 7752277 433843293 384629687 356051746 941923046 860989602 317741242 695185667 205847108 23447585 758059171 104575669 17209483 512423035 943434119 165378965 552847627 293947900 893332807 709255081 398364701 617700554 358019419 723311429 281206701 951255559 955238774 779899570 130816019 104156916 36038965 12043011 160613401 896394877 534294400 364596494 252658339 753123434 68870375 526298500 515425691 566758462 17659164 601432919 606901563 460492712 143993238 974538879 273009466 316646006 691183508 17373602 707955189 831103 126741776 820298728 951391191 946167289 820959265 150466485 352911648 704883108 913087290 264151026 987713062 663176443 228047624 535989614 94147150 176421418 138052263 215453249 562051103 72882277 610397382 117771925 989981426 756967881 173174685 701132661 189700636 18732872 426287768 598025041 407505851 672345780 156167461 357261218 804411748 50631318 234626204 665443952 872315102 455553050 551939200 393648080 174892120 204279586 885355275 352432020 173265999 538883617 84960203 537556865 126959538 221513036 183717113 759665784 389297167 163199115 224826013 280104359 189732337 84909620 893187619 454233166 783097861 587112293 443132631 973721705 28995978 147962845 503056068 968860840 994746939 976924192 843674741 879850530 613659021 857058001 898610203 494842906 680196839 530961698 326337715 74768620 456459290 819924403 907170081 565549795 875287827 176755497 630759680 44104786 639754294 905721195 713907020 842964232 578215349 781205253 471692226 495398931 411207579 995463284 512032946 918849433 231369313 125879764 94221441 107533276 833796958 813140982 447762371 204973248 935417128 869508331 725982094 224885479 710011506 178239831 10451299 170893046 912836010 130499890 917469755 287861838 224838466 205661956 485555246 608199521 858672200 94138007 141569112 256536253 19173352 234217565 672728077 587428775 9713909 804449289 229148820 670775378 578809573 766819038 468416756 983529924 531416468 388926144 943869729 873430389 852208484 828073918 786390582 295083390 76035807 236551623 600769790 819289243 209255816 840160967 918970800 344324362 385875219 851654325 450514468 235367654 18925345 157903170 766900689 195338266 783650160 45857143 95966654 449292246 181553221 689880263 956535114 813320336 311787970 17446248 852327587 689471730 863282812 101702076 435724494 211850138 956592618 18874974 616636143 318297690 469135613 11859194 923688612 718330553 755887562 981742469 618459198 378130838 267142351 159346137 980989064 248299076 831542754 629114592 739631704 882277546 148903345 297707016 789901600 797638398 712730553 33670305 782210434 141439975 696192565 653033465 543097926 623571614 613726069 512339323 939506354 891749625 567890087 941836615 123818555 516324091 167172366 7884490 686745050 135881027 723486396 946615401 756222566 964215165 545287262 942940319 530035374 716307387 938242177 282782252 729850523 556046137 904519900 497823110 925608947 413233164 9842143 824633565 722598139 278994662 290292134 102036454 395376472 58791399 6744980 967201171 815265563 430010728 117949551 990290857 732465347 328629422 276316281 772055031 421312310 790466048 153557631 941502487 873878408 348866978 77165148 425779192 747277773 543804453 573941394 73006645 708528911 718906338 682386820 206669873 28945018 521527830 640745189 420745104 967064506 608865246 741027485 30100588 677256313 551067103 356698355 42015944 62962171 858289427 808045714 504153852 215030197 959607488 537727839 77396812 685278109 141471655 969689600 100576281 839464009 126404038 537057494 51207042 662516210 943128229 576068221 739438877 68162258 856660300 989711941 362803358 766697879 303087010 377284588 359169989 10997614 288187366 879838144 981310239 93450857 333047993 44456792 628756217 578336406 238335892 65506068 176654828 484868094 336416369 716752003 51603691 76717732 770277581 929801954 685787399 772228153 309438038 206037724 862782382 781476434 217359742 495715570 771474441 169688181 862825380 524823547 267927532 385107253 379986833 567307288 80052820 12686448 902470919 96507035 658580171 632205245 687827701 239195670 206582241 653184507 665745276 751268344 682831995 245010124 798525560 190097735 120574503 653768406 515362936 577674981 660696124 412880101 598006320 645245462 104308779 734898409 253409296 631349492 565854474 774032562 886394233 893784649 814479274 927403662 38930314 772948665 139860352 586617822 887886680 982260819 177950220 362397720 167726891 447688986 33302408 345572892 577590352 488710797 860804968 537825822 858132700 292011581 294638018 359384968 607128131 76303759 503816930 774063006 257812908 606942619 374134305 308198342 747279204 259652960 581082945 495972363 659925492 834197575 512061121 681974238 40209968 747603134 359846186 247177166 362631073 284502429 70768718 182995813 15982509 967444075 503103235 217360084 844675165 773774901 638682229 292999308 697241553 193495606 67778091 864624667 850190388 687139243 519792656 802725481 340954547 15217787 625633207 290884769 731478883 743527881 135514056 248645658 278413841 452787896 417032994 796083656 257991362 702437279 147926451 569353613 526424327 337281181 559434096 554686491 625178167 527527595 940175541 740721196 328275191 446546342 313485198 182273464 129888798 933937049 536909307 460484643 922457545 138609157 983577580 878861538 340212420 441826844 120411639 486322972 354278849 768374752 478192966 505864018 48834340 28582769 217275724 148711506 780781359 130610259 711315089 488963711 837744503 673312596 385123492 709737937 931979259 602419527 440406906 735049972 301583912 887264002 74400101 491366294 70070285 625792131 992100156 342619990 851969058 337487676 854925896 894285665 135077581 953195419 614292621 8695895 621994952 181322246 771867225 449752494 750504990 691126873 675498780 52813806 226649363 615360196 662245317 434442465 965868276 626173743 732465141 688538562 171193527 776571207 955318252 91477089 837569650 662683790 886798670 412286369 965475773 484961424 937663793 940105008 263004237 204910717 986722064 86610966 65800398 236888696 500331566 960419072 508957867 530724505 433166799 455998262 972855336 837753729 662135358 290546010 393936932 504609647 936097354 297257478 571217699 534884663 967305144 493629681 647371736 927378605 852070162 854871540 395244662 540527862 223759957 883680543 127465607 942567447 761029688 603204786 979461131 477139491 695045196 68012902 824523895 336519310 146791426 556020747 226032834 333176468 410658068 516368436 994671722 826449582 343872970 923395265 684108380 853585213 554981829 609027344 489722455 535877799 29113220 688357209 737096335 11790689 564471403 408645501 774782610 2879735 943741308 239842869 369235115 37612221 102143585 58810123 410796886 870700729 179909051 716879669 561592495 119527021 228087230 693629393 628758961 400398765 166255547 869947948 664350594 910080714 806325480 192523323 717420183 720550424 869500436 199956030 743127169 646904264 602184777 882964611 481398982 966333804 622567632 788415124 743346729 807922763 84620704 195466945 944697985 786682425 959590539 163936785 205266318 930025075 525628604 875537329 323141699 475128090 24578929 917556849 240062376 610039393 682502357 241035196 866607889 357590487 8570863 32970903 254391266 510485056 427362811 912968247 862223583 183465174 301040156 171194724 789032131 891430145 780610899 304522680 452225761 627057791 523848742 825593726 184156575 417435013 692554268 56299805 511102000 602396961 125313686 51573804 694406010 406419497 632036651 102232593 208692367 449839399 895123136 584081044 63280019 104217201 220549630 439522787 10786422 324061345 195719482 28650990 289823637 990908842 486272300 131235916 515896111 117505461 417059721 144011047 641495190 233623046 507379112 88774866 954369399 481722594 54723859 206459495 719190506 434627772 78923684 402517280 441268073 403103135 846177707 803468066 663130120 210806189 186736838 918915204 490025515 674144356 967522465 859771414 432597204 683924688 220190088 305164713 739810017 871844791 104064872 1827610 160076287 899941186 865848853 728428123 931557223 302518416 635034828 986563791 697215615 376002746 463988749 926991829 956206681 664652945 488046577 291245596 692943935 107596111 575804723 298869753 121605080 293229399 752628891 105859981 680838522 458389112 133596542 693904144 971306795 367513970 467157143 336221571 544144966 312154962 515092227 945676847 833493227 248896720 973524886 307981764 914166558 148830916 569319237 719554785 182147380 760849161 2557159 771320363 111206867 515235620 636401814 428758783 26897708 129716882 958039676 67320798 422423527 132591290 662871238 382358237 843356042 501591319 911302353 434652994 493104150 830864604 285736734 280469167 326595161 100056762 956538379 135153343 766148836 529696182 55122033 585214981 372067489 443531963 220837752 716277176 900311665 2233022 350729039 63441629 520105536 596754843 611387063 27810180 758348075 966916204 349095686 527455960 682373016 530453543 996690279 674618306 566658773 361763366 574920801 218266295 85123559 774949160 108677609 552589296 170100994 845743452 434068129 24781370 858662118 794159530 340094266 75839181 658948336 482050762 872072815 949651432 970758448 202942801 934999881 142815845 757870341 328991056 432862043 77192804 195788564 467747788 504257499 367959601 64676935 434286843 105556584 803043042 395596249 999781276 723547744 393079560 692051598 749453696 484321348 626341708 151283907 51451331 957670689 894300986 691872458 855951543 344287794 412894421 668086147 214754195 396452723 372716092 454479835 255282064 831371801 653968846 336093744 673312773 573603567 279569784 731781626 707186869 471519329 844011493 843516759 743295147 246166327 768349362 924711566 706597699 171606150 208238011 466581658 889966117 966534179 938451669 821331993 322476545 145708633 149416912 863095599 874698405 749366155 561007953 788544713 882645590 138544374 190553940 93836468 375758721 509894455 405382329 790827578 295054029 442726612 479132954 454035543 176520093 52959386 190098032 404564369 289782970 292835001 708562965 95102078 967563779 482427956 345625724 431709399 921463446 342295465 771733345 975116190 776007809 335374723 843466640 582834830 430932864 927159501 801472957 246981169 221320176 619710127 384490304 37396462 695280311 695200344 649641478 103541912 335213274 915678014 932274663 641995676 149253899 689987209 393117958 671699767 447230188 443922927 784956713 404987523 985376067 378134114 769896040 698875395 34608379 765743102 750304211 989866165 421009951 956249464 559091769 730302088 152119770 72765074 505232084 991045699 627531088 128466960 417286194 674961414 99625426 947612743 229706509 750354847 215655075 285662660 236949300 67983260 331259484 372919758 882309353 126100327 266926035 625260209 640261350 464064756 888804199 663331594 82644223 973996545 603564059 315270939 558324109 29013616 454675258 342499573 841923207 783902889 384537191 804142065 630588081 362532510 240621857 860898888 87384912 797869376 689519370 212473474 516317803 576939607 193596770 39549765 229099236 470019501 725144492 882232696 429336368 493322666 884288953 66267899 678955453 428073763 495796796 408578338 331497247 569743093 688821333 841324098 629568050 881176745 684379730 737797983 708246309 742819629 21265074 966767587 49739771 231005668 218175445 700181805 388730116 44103735 467806143 552075332 935375239 206837283 40362818 859432326 216369020 872251081 977437214 116061518 142542693 129589566 544070373 237869131 270798267 77111578 39722863 764145970 769045918 541023357 475797080 333367389 703591554 32203104 867466603 604393725 828348821 296444784 993147067 226228072 80150780 833881038 703593082 746190028 295853689 947868963 792136709 163283879 855036628 416356848 391127816 318927613 317876240 364338809 771710599 613755823 378874819 693843513 600994004 632852316 209586415 913439804 627053875 423707687 75477133 36641388 929508216 797695883 366061791 534657847 353658342 324481363 439218013 613536804 719641590 272961379 103230831 140220197 420892459 614754834 579606383 755977169 278048302 357968756 688653587 862623213 788423379 214444331 697416742 94994225 334857932 143198314 757977846 543396919 20634572 221139613 302129911 554581409 322225452 685455220 586027382 758351344 842154856 753933369 91901037 100339901 735483859 162621017 594082155 95654823 849058357 433163426 693608073 958734099 638194901 623971833 176280309 400073913 630731023 461610744 751764046 226898871 676570131 450609109 936549470 618418951 919422087 31005941 351457762 931253191 619603836 801833382 995015199 867302514 316767923 797889704 592050882 933720870 866865226 575768549 60523652 817292751 791461825 305649075 257424951 842395265 83280806 17196050 606215248 915145695 167561744 825637509 535628913 57610978 119528180 149807695 87727718 318693668 946517731 423858825 633421630 830716252 600862264 416434835 167596542 225136270 453255309 201119550 648418338 777887750 196101944 76506847 122978460 935923502 962427933 946853435 101820684 337833772 42293291 232803474 536358934 618362915 600358751 206221795 578389118 21862153 662564218 291501189 499732606 659148562 673638672 899111085 399745902 429237423 936032801 704501270 149451874 106046869 942214480 28280901 68742741 134776397 178673598 508995757 581821549 440604750 893179186 171134764 139270963 1691017 912701868 748901713 875099970 585561869 299312945 49758444 760776358 574067247 172911057 67916779 715770850 868881069 91762045 186187777 255791716 253466415 627743288 168565721 491341705 456212227 24828569 9601686 401000174 28388532 726294181 529449051 318322097 909360490 102742597 239902131 88551169 429505508 317408634 99231885 844439071 774893123 984722988 79674894 42339714 483220493 8852174 767152658 47351730 233237597 939392307 567195135 68083765 722557015 322673909 666370441 351925508 246067335 332373786 574788437 972157261 631457600 302286821 105540602 8600978 608919424 193202070 534009421 746422856 202475222 256335932 471896839 140200267 65805482 865390444 847155048 65925103 341087139 270712815 947803209 503061159 495414016 462643398 792578792 977627119 254624039 440143363 618420702 423073322 745713245 296597915 674057683 616834760 736945461 446777926 464528891 222917011 915801712 488783783 97744825 181278837 977907167 674569648 847693287 525541040 754525082 688889146 391529549 731576623 710351592 613314979 206690547 510205074 262162035 809047318 22243710 678231742 618333011 66561524 683437924 311860469 64391438 466970249 50011375 212739108 748730170 281302314 300709585 88378673 453413365 109671413 698990690 914140261 450598689 648541831 981732134 444454001 140545916 798650165 696714077 711557627 108596858 811442281 212013932 464967556 356322208 535911352 245152287 503940604 24663736 612234276 698953505 309446330 487964799 225775599 291875603 575665909 100025015 637510056 800075688 488418809 730219098 111364509 64266520 594812852 600161984 130195437 260730263 135887927 528929491 915262137 832675861 738774483 724983632 694783792 463003489 676237053 792600491 330387291 573913948 620249253 619939951 273568026 533910142 269761826 252252719 732728280 619742999 880513179 950611699 503014410 910497050 97427178 988716507 242692150 872208384 847041964 934249159 337396843 447618641 533981451 466245912 97885459 112677882 874706808 515080445 870291697 62810268 358513287 397939541 812408545 358687126 837127996 116116101 97773117 619769491 785773111 949590469 900969039 311506942 995485606 564101751 606869833 2830853 734694839 238577490 710864157 304917249 855964841 231612932 809273740 444922691 926307912 440450045 819468532 305825258 668372630 229085539 210322939 438384058 979370182 100274817 594842221 558690664 866663952 922979831 887155620 345334372 910673728 402619384 638597440 884037474 456047531 100663530 160925535 966178856 841117076 835282957 156873401 611106120 958053018 445021468 471717345 759932689 619672849 955353127 199741235 17794977 107412220 146648421 41009104 138014365 750385169 986267081 780558902 547397157 333643095 798578537 710150445 368895798 92504833 501344594 93814992 305081597 428339949 535703204 727785483 217707101 350012842 97619194 775108768 336988791 262994660 363639083 53719599 276976455 501565978 429245675 583307016 93505395 966203757 573615031 870892960 863943457 915727746 857797352 545942827 542453977 841689847 402933418 845896104 834600668 148994686 415941548 576660840 890263560 616504815 239199673 383944951 433185227 191301766 652502960 228347971 39666425 352209204 112421295 309957146 698170852 769708816 931148617 239410589 925750314 327543545 584752440 574036509 342938816 195004641 3236079 775323712 363120039 653349750 603296386 157229785 141328865 955557202 880456887 756052989 101612483 763747352 77280592 546943509 729000303 567860569 401754039 15172977 653876751 651869977 448388733 434863726 768363026 344764524 709293456 361380418 951369051 633619924 442944690 158887311 766193342 823074599 242081773 110890778 710633092 448747833 135681499 325045254 315922736 449412829 917635108 443004594 968333131 517580417 434775062 717228330 967528491 609942672 595762882 673703879 234912324 224529231 822868211 530644664 335281358 834579027 559892363 398737471 270642449 269636561 378989296 980591668 92258246 218151748 169822532 375603299 606173803 817821202 897858088 532294057 41628614 463292059 111512220 100835758 983691766 785045702 787316472 913703596 259483680 243223681 698946298 368973547 426633313 414979370 391713649 912944674 165423288 643459892 875836898 65016189 335779939 345622201 332708020 601687563 836089815 765651728 635521086 257985995 288215299 109421130 315641495 592801199 786712033 82392870 169317593 427135116 962142662 426454297 754898240 260577944 752687156 6870122 859525415 26462209 885337899 432927867 391362889 114454390 551132786 763263259 541330029 580338533 47676833 418862433 543501123 901222222 217293144 567179969 164717356 766059268 86165649 215723833 572618677 195517774 558156122 540442164 602093680 34986233 270632969 740126182 800715292 65254161 953134044 919931911 12189166 878810094 532307037 813180521 265843444 225696202 285751051 771494573 855190795 494216041 365994293 469318849 964465384 546877277 772633097 799599321 428877552 454089068 377781109 428724249 876712768 798516804 67793232 962277336 82563984 843392619 897045163 552731923 929317908 818230293 763473028 552083437 734583474 449497297 232860644 564537759 262715984 449163578 187188040 737303390 48183778 76980237 74675998 544054056 455645649 533745598 438521919 670629999 332007772 656694342 160036505 555017261 600649522 38463543 241195539 709525804 791952972 744498340 892871203 699503978 187517639 134677182 659655340 872195565 499853811 68892991 933583400 731505452 60057974 757844176 75999519 228444560 348980663 52326643 19222932 432932597 94167058 47157260 571706602 396407762 891145002 582476445 799784933 722392260 159944959 952300785 601994175 106387045 859999628 207957726 665306476 682973568 619074712 219418099 99394478 884465192 671495938 464021728 590179909 695670924 122799718 991601040 118201032 375019311 443149313 667080663 650031393 690136570 453067904 755834294 527669841 574386688 629989394 760506384 856779124 110911049 372591630 800114647 480496724 273327057 315377671 329577998 652573664 321703941 929602529 139474759 282134684 920275321 954339138 67936463 331422279 34069272 216511352 675369580 851361256 992703925 114340920 342039055 919312653 174388685 824396749 306879283 395829482 964562141 482741195 304637214 465575411 524611430 35503635 537735739 291908924 983421464 885063994 54973862 981891110 881986649 96695997 245490874 284837467 775971450 196817938 735897440 844332778 568263017 977388736 408874152 429956499 359138013 960747708 197877483 823467127 764827312 462234574 107275894 278329652 519072047 187140202 745150481 826141082 992885920 361617242 342284861 133524669 161245378 377871526 77232417 835339345 692545870 515202810 832396758 514477949 924206575 677423511 431651828 308866613 597473051 175673696 387224775 286568333 922164054 107293131 244596344 975642612 511675759 171118242 748942732 767389558 855648418 307746845 756875203 68960588 213079599 786263126 320092235 602315423 137231210 22780230 821742042 263884802 433942935 850687315 966661946 182009145 711930539 389726142 801714222 352521753 19479593 884304933 59756619 596599337 551106311 820228142 387245666 390536652 320112626 767323770 870232866 794375818 698526905 886418410 167546451 917721407 853337668 132413064 238038785 56303466 550161009 293726344 678349518 216432876 508676258 461109511 523556617 921286208 196625428 4054764 189419246 60220456 915400235 97843073 138718815 84393316 631118667 790562473 840034788 477642846 307259101 381130538 94004279 408440188 535679724 132880120 152007352 681381803 942762827 373354249 780644696 231114262 968369090 942080944 934556383 97373292 166198778 924091978 88052438 169867989 298721077 174830073 652229483 978805398 411299013 764783593 17414426 441237942 208358357 627996094 210978650 218242472 522582863 128982391 603735989 221342204 35235303 452316455 305664704 800987119 7651385 136991918 39570218 446744862 902607137 618463032 721509110 584503629 363094269 388635505 533448851 435264903 914946896 260228654 660112324 247926238 806782221 108158198 210820065 61726180 237350536 387780580 301578711 62842682 366517743 652568372 192384610 435602024 100686566 482202440 239583100 73893806 13436913 196033756 924031487 320131809 901768544 385249544 523163001 752311020 738370786 202706342 162517032 818466534 764495823 161426900 110593085 459103290 600830853 717750546 254137264 416587708 738764270 775028402 8365883 730167214 963406445 977064025 812645173 763414600 247550395 611770823 388702052 838676295 285939252 320917588 697389300 425897675 982542371 931036600 24469693 140808342 937982468 962997296 655945025 644096528 822857281 890742191 156934879 864162217 368126254 778260100 903234142 19472522 772701161 137420291 308123478 973597397 352237755 270184380 225647412 465402809 265902963 483351849 226439263 104353510 244056443 950505544 575353793 467292809 804306430 655328398 211532964 246320589 953520863 527516134 55155673 416485702 100087563 53411054 162040738 974021341 916200290 938150143 334692866 276334811 401305890 704027550 300469078 745174833 757820107 106692151 535197473 146234118 244347908 322593504 904067863 442996234 741683757 667359938 203789500 442109753 914614670 911522904 353793977 169646324 301901982 575775565 90510453 626963000 468189721 19097570 498864808 933321462 245745851 417800058 523866965 635583134 480258667 24119388 732324251 835731352 734787563 310153786 771332755 298077395 622550278 382178581 878906884 906720893 643312234 952457290 894041271 310903462 745481813 236618443 241478854 407588477 285485942 853511676 308286072 210337431 70107893 385623068 728381001 622514447 788128612 510086397 86914309 181410711 330316544 741859974 705211022 986533518 638799045 35227173 891197232 325538824 428102145 770698554 818488425 236372866 440771436 628253482 451824811 50047983 279253816 493529987 697188112 674444860 77216175 14184218 748687190 84892913 702704597 427097886 367158772 936125178 588882215 326561475 340200356 992301116 723935935 919353403 402706940 614540342 241272045 853557588 321423662 935524231 83035120 301109583 435759415 827313939 76418760 982565424 770507007 279792525 864740477 664169998 385648396 88893209 89269653 185944071 8677676 604377368 446955821 785317146 142434747 775706324 114131691 897647523 902757427 293351821 882113962 146619636 644811879 759106569 561255976 603143424 774687052 723476007 866576114 395353022 272435057 67570221 404590620 502037801 791980363 148416090 252582381 159394432 888785442 128249124 739376215 596771477 98974763 681480095 909398738 429119390 720598444 158609896 974394300 902416800 85857238 70561178 952254170 980908912 463895324 629445121 322130899 938504923 537262962 669440257 353120858 28428958 964361642 288387580 318342736 547054726 199402182 197370489 317669275 811062725 393683522 277512932 413002189 909372407 471244162 577350559 769126752 442702345 800279293 933378742 608909091 988035506 380003410 818597764 300975954 836218958 330733502 835697683 896391293 528300560 607113636 525127822 254831774 31231966 17667102 259690147 560688970 216413769 210999941 426924383 78576511 679842173 298252810 156555808 731724807 829642338 716690732 433027454 247164868 673091116 386941465 911607789 739303323 162125138 521444355 969841945 950955243 872168114 786267936 152504277 536115385 767418068 495467721 529844618 670230089 877594831 115777524 764115199 457684817 797802936 804834980 87836353 476423398 225521617 410939473 84782149 167418876 700938303 757041982 372716655 564825008 412152406 438419318 276609879 697773431 52712306 539652042 181771044 302741907 320091943 178251959 906795597 923330711 114812238 421051755 934643128 827941713 44561402 794952428 224766633 136118782 202643763 437324851 118634694 687088740 847390643 990516648 934669064 258971514 693171654 898614016 448782788 30120231 797825532 357502730 20626832 701243291 872883047 333743020 845336127 337105356 369330638 969163211 363403873 417339407 144537444 874640382 762648010 602693885 562517780 917393285 609967941 389323546 525024322 801157851 580070037 750286047 689471263 441638243 306064930 111630721 700539080 75829669 220836253 846434718 777469452 564736942 434854951 315535164 140971753 441944132 522863218 906742735 75931155 454039448 69555155 506425791 913157753 700261820 670942348 351086824 5889503 185690190 556674082 376676627 412970000 703645527 469093052 405905070 895357342 418204167 192466841 932907370 18335695 555683852 583974493 492326955 134543774 114981153 342242989 571073927 282590116 340312345 590129679 442102309 458022828 145784882 714571539 283464692 77586234 503083900 748899261 75263682 733877016 255510871 883810329 967675170 933368132 985817801 142998651 205571431 820520016 545720750 453191534 894612200 364892924 256166050 120876635 540940203 190048835 455397034 692221030 818483363 409090815 616442665 272989133 392748637 205606907 703761380 732181026 963482445 148306935 841924978 57627572 963771485 471411251 684011839 129611200 197808723 392403102 927713432 401193733 197920056 277298214 787676635 486949831 986658419 722201271 858574522 454796619 387105736 164457883 125614574 233459475 311014646 838685477 566346348 632992706 265990599 521571124 747398068 163196080 747559078 207686470 79681376 901135657 299245141 220150229 357771982 402085156 956652152 917911153 535949027 806226574 755385321 381281275 862295657 588471315 467113934 906283985 77853835 728609930 111010715 88377678 210689852 527772705 371712681 968279445 515274055 327075282 71683646 687182870 867652414 525191322 500046962 579264838 979101850 232933095 801480390 566214082 649204604 700920387 138596013 381598648 62939232 778693362 854350757 462948339 875377221 382596028 481878015 331220446 205507524 43183568 633889809 90346986 841808629 670541305 907297373 964192972 813680564 497684404 676654458 527379414 733752317 419246649 296103549 536483129 168158937 861735162 52012701 302994075 861191780 437220452 950996606 600976454 997356748 482788003 186681805 250528627 721289346 464260684 308020878 833497232 591154378 687828741 101991610 526033694 79330101 390159654 246572128 850231828 713433352 222875199 474296064 574222649 974869645 116060138 864317915 365890040 587875672 929281849 939067826 31438452 782019572 644937319 766169325 866405270 304600393 88987077 909839094 197687180 151857404 221596699 208526379 797681513 148781379 275734048 534170173 938903653 199918485 339769459 454504604 122036441 154012616 160749952 565971122 409787579 506883533 525679689 723750134 36144281 260385311 393833952 453499420 648622682 951048925 113812880 211123293 697976746 700228548 892520450 583235304 953310188 729901914 543687562 317176021 26368906 656972165 462114798 986175172 294302993 550875686 436087126 93934921 982980743 187223336 921304529 710347941 415537656 106012725 557837467 374810325 229724111 290367794 615501505 1819105 519323001 525750822 746865364 917320445 884819382 790132315 344602265 249409105 53827125 331175466 279884084 276628214 869430047 314577476 243217853 578949117 656326444 950881331 402539682 509080316 994900207 258674754 183776910 107598382 696942183 970065295 742785717 911371612 858727456 879954466 452534701 255053343 911381848 955005260 365715031 740208575 846340883 295158180 877039654 181466460 336059502 383961726 121740290 126866170 789669294 979179122 95268787 6386074 681149549 543412796 524390501 52314775 919420018 165984356 826322514 873415478 144114232 252614878 625258295 828188591 831287812 303162170 977245971 773047159 514134050 32378797 395556697 830522620 807584496 891745361 80635861 823900594 919403015 99811352 489298806 726568672 788528702 47273060 792269251 189771159 199435417 865010527 431433502 420508701 341296976 397873814 104819282 381104961 757129718 758294788 927470328 961771732 58346575 765689393 746325999 916736191 943960194 234941436 70661207 259742043 35736248 464788321 680360857 71166391 871148531 283984255 724378894 800933672 811445693 654523303 155519279 987719245 136907446 278698122 110736229 131175262 177758470 739415737 604251272 572259649 324623884 481934734 4714800 659115172 352257821 151838993 79731308 6639642 244082105 293015377 195855982 311540595 266539940 966007535 851929025 201367362 689678784 485552731 176322366 631773895 230559682 352099945 675857009 800347320 513334406 594968939 996597288 726845523 254459589 317238095 587610085 629562715 438196270 556011460 538789385 724923377 742416378 603142096 345625056 822722384 892840739 321315392 113390565 942168698 759074857 18677952 619467685 94618750 356443725 294393254 919870107 470731587 533826475 960004794 138141676 614514052 472250743 983037998 157705636 925872887 690995437 871442032 517980045 27310429 446419000 886324029 394347748 994924832 592195780 725298140 890350083 270445397 483266671 812344919 949204993 978358056 612842998 408374752 680817055 621352851 779911665 287313928 469573313 257423219 663006956 491613469 828544656 309237520 431758397 298537415 802010272 619806649 156226322 889580064 222660682 838269774 880191585 722507674 179945137 153941125 358359224 69342457 563262237 148326384 239558929 496152431 472273408 30173059 394621699 3143057 403421280 919920063 467320554 493137604 927121955 856357743 875119674 150214059 821338286 807277648 729777240 683355378 704016486 566530968 422622407 129406886 560330878 777873111 980157177 911670027 444792385 318310415 595038743 161492387 613401679 628230321 106977318 772719675 25121846 482878843 49390247 521119729 371644010 184912516 699954972 158674467 964406922 400935601 474629687 4129833 945042704 544863882 946872379 104299746 382153121 62350626 182700680 131464611 268296488 542298545 560170913 161402180 269591582 886190748 830482397 286131932 375173310 476602395 716332885 161771129 365148803 450880020 220586195 490383957 805946115 559605677 798026933 964810904 127763126 225812565 106932775 50274902 74381370 67583517 334380241 501985064 937157760 755108991 159304119 659912695 110054720 870852890 165677827 808397203 470589225 816110594 621316212 785607094 95207497 723555328 808766986 956855567 435139254 734360713 718726751 856060714 625413144 562377237 435731447 997038783 103740871 264307942 214152280 391376788 841102056 442116463 849753865 657233721 740495243 402863410 719423475 758652515 96274033 513152955 990540762 604352261 524135958 869938312 159865660 117173947 87173775 366149826 83219123 676974836 62531519 448095358 319677953 787589987 690980260 889351627 437613511 873086287 907780054 976095299 465538417 284102123 906783951 219323702 597811362 451855666 418531612 982771117 691340325 198221397 350846744 323281253 913692298 158221304 544665672 862239658 961916555 126996371 287279086 709639533 274234701 657848734 715681453 593036670 493698034 960321317 509301629 872819413 174566703 274878938 506633455 42626109 745943510 262055979 745520723 118663985 123838214 131424822 248172243 245601370 473563473 33023966 306113977 713159825 747087623 57694946 980071327 791433592 331932859 956162019 645537000 220739720 58761019 678219098 894529016 634789566 41754924 625101785 448689538 232589476 230643949 126320241 917458570 144641539 574029516 586408164 269514236 251721304 188450182 902647289 809666186 624996425 409638594 515487780 747523349 357337940 168872927 637472749 405899597 490558335 181020517 505357772 215742932 421520843 701120531 22412057 707416413 759422634 962002832 532218214 926386734 405090993 277005493 122121452 931540921 731361938 319767623 486928249 277017302 485286680 210973216 674035848 503719856 245009106 906090597 758271819 683339188 924817624 459854188 706371292 754410053 285807657 446626041 735349393 945069396 585337640 477897035 763143636 199142879 121590069 501423624 407043044 397187957 858206606 709765125 408645804 859368422 859980531 704981475 183662600 521002500 713352348 771752617 737114812 537660214 299209930 901662710 570287260 425674342 489713615 280029279 984936693 128808661 853904530 109402818 135421990 232164602 116816435 885310619 583278889 126971600 701323316 107260506 589206595 543389438 90028997 715070491 944521190 619164575 568581939 752918225 207750828 5247999 309822201 936324493 524589737 731368050 458638035 24882245 969124787 30248856 639994765 266392792 685263658 851935911 180756319 592687688 274765025 122530263 968183390 174827846 249150084 704593770 419731232 497004754 999785893 785935990 312610335 540232604 528738931 981332669 456041172 998937571 560320041 169944138 338668246 244660178 441686181 762739932 487467404 56790418 664762968 400198702 87234665 692082702 447043481 20547962 265219573 72153328 364399789 748780610 502498080 522742284 865027498 803667652 22066158 609328479 761860684 250879230 689433449 292386875 369548060 340371815 305752166 263415178 814474004 927350498 714648456 795340826 545966820 267706347 946206933 926184794 133949341 438965709 44082694 560991928 500292813 971290789 161166078 356413478 96823474 519631207 871760506 984548282 106802030 460875413 348613199 699473757 382995155 37510038 134015459 905491038 227881431 623826842 656118574 263671136 367955127 597193073 329366969 128982817 405047152 245233681 785160526 867311613 416368026 66472129 89726943 969393528 246099559 600070423 261680159 378067174 805883754 596905707 96697453 473190777 124215691 243511364 834944258 350704000 413778313 111514878 231100795 576411814 68309565 358568276 842600734 784605499 27542647 696866313 649439821 90220178 780583649 593810339 772064834 837393205 705294552 80668472 204033226 738414454 742838146 924836993 716773582 178537867 348610256 848811935 102239184 686749642 253671119 622800102 987013794 871378539 39451326 568662796 668697314 201748368 750405946 943425740 132985208 951574007 955535119 935917899 574506704 444239326 746133466 631651326 463766979 428915210 50270681 928505107 86829785 623759063 834338070 5899792 206059877 610686016 821851822 457744033 404915724 761870000 377500472 308133699 841245392 427784975 338057253 127511835 734830034 999564446 666980702 417537259 99855086 393576717 39346148 108845860 933332333 303175668 502505358 245232974 318888743 789644934 195417772 458780994 395894038 654791928 405154319 2778685 236505202 839917613 300872281 54246797 971168524 660754738 989115172 989055534 150814597 594128570 771423139 751303086 693932500 491450027 509405427 675271498 739995811 69529585 369936981 736281237 940388525 740635926 298983586 479400789 806910610 329550502 898921033 918421470 987315374 859897294 175380652 446179191 428097957 269209500 407211196 951081230 58694722 480745646 293909564 985711698 22478066 363068412 739647551 810017077 597135281 698685782 649098998 557532089 943194740 632703735 861904478 12519395 168062725 401313020 721647922 278876022 525031460 221280653 48497893 792749271 946375261 36129451 244449818 31458664 326565356 917404112 387480839 466283599 703660139 305995877 163791035 504722054 448281465 700867032 321002526 79945157 863204303 526185295 710577609 48381485 928065173 752817061 954083612 773780613 639816844 979265610 251586591 768018477 28973557 110483023 653978222 311976564 367903938 920658463 44690919 196292410 911218303 542647434 338574365 580455622 589946992 757603154 377532525 622816013 794528684 366141697 3419881 753894560 338419758 355203447 722051749 278995537 806637357 148969679 727798717 488480011 913175250 266218587 462338709 283431512 804623198 391653240 126392041 566496618 307036919 799340070 410333160 602412343 340400083 347604175 968659381 13571623 716633001 811277927 638346227 682996680 344778490 227137686 938333755 333685021 989704456 358381458 607032896 937680369 432629252 40289561 603306328 156662007 424285343 927486463 144795965 216349097 771734118 256497974 947491148 227108651 605664600 754917119 54471225 105369124 277023815 880970020 609582871 900205885 905110459 789394108 57746979 15783407 374514246 434763458 874878047 800285486 350975951 571611839 473289673 276803472 279379049 336686289 646250026 856591224 779349060 35514820 158893151 358106908 579349742 688730045 188058933 186407195 169717559 72327341 949548143 267352161 215998441 922687293 322704648 448980063 547957454 602771801 349056735 580261179 996318437 427326231 891165840 719221901 721109627 666380324 666573576 507434652 550360790 562217132 346003088 142373178 817038876 1050504 260928899 20286784 656817201 490233051 218132268 655533738 910820688 730694311 618272050 740581943 692703812 262895332 306995920 844533290 393713751 872754776 874101019 236998948 341360161 878331830 668689258 732555259 215079118 545784358 414351860 166683533 305239546 150353964 392792524 712568172 170406221 822375224 186963236 840474566 406748966 353698726 861442209 882994424 765918023 852828647 678687452 514795463 549859462 998842452 843086857 681268222 554458196 645040667 643296940 90066870 35133874 87882856 770532141 250703308 415821790 488984275 966609217 793449376 827837969 823856470 46457458 616999531 132776132 216452228 220420063 136779843 466451827 290596382 153393790 201369258 988279711 748679192 650346656 378691116 601256521 4087227 401670039 985874273 481485774 686696150 293511802 364534749 949861305 833312505 163609206 85224052 462601380 108430524 462260073 692540697 690167033 125895781 239267268 837705839 683177889 647791712 557326439 404166224 115684232 111008707 276565600 634153177 419685350 616364359 846179961 608030987 708988037 114168874 679489767 352109256 435418405 629907181 204316464 80972465 494474210 124116882 991093951 808674472 201732171 879470139 19489658 77877707 692039098 159911066 724837925 597724057 394510712 478705418 552281093 548027622 922289825 866028706 642436478 375091043 677105180 85684173 950368531 893689937 123342649 578438172 737319310 166452879 517007895 562792794 934880123 83440610 411623946 376287225 653707816 899506833 61188256 838046102 487273711 277469306 67683319 953789910 963691754 94144832 84557322 76609763 918991572 498748994 910559541 183562270 184416963 572381572 574582298 646432531 403831205 43700071 350713154 483067218 142908963 977636348 81742734 111248720 172184405 314788580 492656537 676002402 324637605 565936853 615071717 429494642 96593807 617642158 492335933 228097329 824761208 178618495 384542072 964316306 519295184 289911300 502745904 298346534 447471329 843113436 447333645 315622886 896752476 642059229 225144797 147179859 355663576 6267615 723253612 928329361 335226897 286036493 673939656 590194382 481553847 330752371 164605862 775918602 210436624 795585595 864030889 820276163 498434734 229980800 511902567 609331224 585791575 98630853 555761095 480649174 867649362 186309763 628237556 871138192 943399859 73000969 945024428 28459620 848939537 971133395 28606403 151405117 49421931 864168925 655087786 203013503 701019957 847080242 42564694 410781568 221465910 280515182 37040279 672906380 769555688 934420063 456468652 985302052 735482064 130600866 66389179 81801097 920899041 652700679 653725748 526028104 114451895 828944612 674938933 577956621 896985863 498945072 212452585 604599721 587870157 661768246 101150151 79303177 165080893 605682474 722284701 818924940 640700934 80146949 567829821 493350827 806834235 454932155 545823648 727690807 49531691 92404239 988086128 45846183 246341602 240616507 109649567 383323527 4054714 283165439 274188640 762217960 105428543 515368994 562367268 582205130 753155566 258563741 737900722 101668303 109613980 21016266 233928757 496158875 305016106 155430957 820546397 358226330 57484838 392706333 842095710 202710305 578691976 470956117 272343425 510843287 403919804 772861857 383600553 429071547 604642433 575660748 222355833 993329710 554353669 497565971 792684615 49782101 38501345 630659009 579660672 78352063 485375173 69119105 307708053 683495572 472126356 298648849 890931853 184167918 507514367 612176741 663386077 333069957 852824840 396274067 824023841 930749302 193811924 785364948 538199392 138414329 118536914 800065487 251917254 106135092 137858246 440802870 803239491 124111361 709141898 281714650 398050789 402703715 71692797 795278081 221672285 357640980 899953595 842119099 392029188 205747874 555743058 296565070 162189059 718743549 485627483 725437898 506703572 142129425 904279186 209903711 265884212 731642758 445484972 403552537 713391713 74337598 72897025 322178123 595325387 255391829 568481345 933956321 617042684 495438552 882654988 124376989 132206738 393986922 975768228 779385 740904914 429896220 366848987 58484386 761197634 844416379 804721443 702659644 546866496 403579486 660417553 711996834 362204217 28312692 234142575 526850751 586714431 151534300 207192118 305222939 656328048 834071282 734768667 893738358 185373141 367322718 807420577 688581894 208897195 294953796 770608848 386440243 215969901 636711501 80797698 626480159 42598992 456397835 723550215 684104114 891650613 664242465 398213566 777298621 133839036 402200161 254024208 488431172 66652624 933755935 472348599 639251937 14629620 54572509 971191332 716061658 30788790 631578039 520029885 902602284 391569537 353909622 61623726 843782799 88450855 759792275 572841641 255713053 227756118 49119613 917442609 917459786 73375628 128172220 317448436 485087811 367191950 128762461 453776837 280585151 147697965 526803743 125337911 568744175 425756699 609500408 858271651 519209229 93328915 344103683 913422913 899652491 874364505 410742651 298141703 928584336 880250298 744497281 156982985 776436734 894780005 439627302 176631232 62187026 84210560 411267208 381682896 754643765 529877717 346282017 418065518 406006879 680445876 380994249 783330141 472654460 453618529 143678566 191220711 326147293 827416464 594152656 434861423 385828557 953676421 866893575 363542930 17301775 210034987 134715998 965969367 321966771 217429546 761704772 834187137 913051593 960649270 177863025 240317745 446303373 953162084 72384318 605338505 826437077 371801566 106976501 541201959 924391761 23097295 758586675 961885050 382985625 206649532 713653464 639925359 897758522 602547691 487568199 318655594 975859916 223615019 951729236 350447315 473667807 961810012 85758149 825313277 815599189 292833427 322041888 531910906 951953962 297291514 637561249 522723031 848092312 585754407 744236310 897712507 503814159 791224777 677506600 513583516 820008969 807564174 938988974 239494714 983459055 429337883 462945490 292458595 807663383 950474192 992438815 407388157 907071831 954167333 72708653 432792767 105215232 357799099 260384527 83027745 876533142 621300019 57075036 213405474 631914249 800142954 738761695 290886782 310667106 763467102 940008046 773126966 286095221 890925186 632482706 5014838 723830154 424857680 549956408 657176138 278986900 312308192 395736996 625917811 442071777 855178542 876393686 518212760 16824413 8428604 995961959 536202321 579688205 531302980 974573146 565428721 491108731 176700554 441179325 642313818 173238496 740670504 462300988 570516655 443024780 805209192 118528361 675263190 666755395 583883344 624054103 408540991 818402978 468905306 231159574 642727062 23191933 381936211 344202507 31123477 809855969 196164856 82942996 487655910 29131644 649149807 515178464 634753233 687716588 182782091 887803688 982796126 640482611 778271276 191479387 49758213 569271023 393891507 773662846 379870966 607060017 517361145 462516489 944121978 208193098 939235888 936535828 490359375 806276839 574005257 706504697 855578420 595489509 548706275 563651070 598456170 363478115 923901560 397449079 724283006 540659432 673656696 743427988 876001069 465993072 255101147 244506333 434984046 19303905 227146400 727579674 425413194 535417060 859742722 261371324 995571221 737682249 227741732 780704327 396472085 684762738 869648690 659625887 226739239 580582206 602260186 438099552 257853691 610622400 288903100 747283464 438930906 911680715 543747375 154070759 490259030 308132258 80579300 562231695 252256113 434801360 260354945 95709008 590131399 134371571 689667258 748296253 637927515 583324463 24557520 689523555 804168858 857719009 128740661 518247350 565878606 676409368 305050166 628373992 497815149 363026527 227054396 213422675 332846977 897235436 406924878 550221033 234914164 546951451 429846152 737633846 109100317 328955330 64045168 152022240 880190531 331792674 72127763 296914087 826889715 531897069 421832205 513049281 590054378 538019750 603654541 598944903 33342454 681405417 967444267 886500227 77464744 270533453 224769560 59490780 337163195 17087690 30359949 872012813 373648805 366713453 337498815 463138288 961520135 797856529 894673936 421066864 697061083 619472973 165613437 169426430 22542753 114461154 774155737 26108185 559537816 854736912 550562279 867976081 192487655 494489602 368041339 510575682 905494038 122259586 612307402 423213080 347067454 496941034 242197604 714153441 538854823 875173348 193150845 833900452 263451546 989399896 594301689 882601901 404107866 508374366 88090230 78958196 217581449 118375091 709268742 332918577 580403195 664840404 260853745 410215643 886730722 23423794 326788030 744689172 613896777 633055140 247410365 899967002 441978706 174043476 605905422 177773502 664348535 216084943 882930490 81010664 7141805 218450086 991969969 155538573 508848690 526548123 412380758 425183047 763244874 146259518 664934156 132288760 884821113 192262003 763352400 109694131 328433930 83674755 972754673 616886626 129177820 539624605 70476231 646610702 281140205 379768902 520498581 958925358 720563614 149167137 424292797 854404883 221836332 30443779 238727397 427089050 229461588 150367186 536287395 13414884 843871746 852937991 857248471 260516152 399379270 146367651 494527283 612103133 524044210 36095182 825446415 816326319 220946103 645967716 906385290 565177101 96641456 448070203 560034620 683246202 605528274 722167878 413391871 762701275 594116564 835390114 530994928 98213919 212199344 233900974 253080593 174576647 332127265 759898338 633977013 412657475 32799008 336834627 767142676 621473000 208266052 317881195 557261397 53066553 978945759 46968393 818144273 729760028 606994628 930557868 220269204 479230541 631028540 700434971 121775039 720704729 278262179 248366457 415179280 35583651 72027557 151723906 605610714 190523905 435934591 303905489 208453367 278295 252031617 215902971 123559575 28176485 683286743 607373920 186493518 196245100 198356480 579433080 724935276 711038050 504388152 810709620 266424164 140610668 511180880 635797275 791191732 922891388 293183026 586939469 144018925 773534020 407326255 313023621 554585284 935756988 2558243 502169030 534878055 293154388 292465913 630440513 88332410 789750942 723949785 578138082 538591740 947407085 549299620 451368695 736014123 579170272 779276556 881295184 453369171 474292643 687016246 623919601 541864207 140874216 679655639 879650087 465701197 374127781 950799065 7100703 65865504 402173326 615425313 914496134 796923764 812737939 659987748 800447855 523525103 514397648 986910356 658648052 994481257 974178260 490295563 470886883 299751269 319551389 560179061 948472947 222402975 937830237 915652036 152259699 979404019 831422207 915808412 170860820 864774148 19340254 73047967 319270050 185105696 877451946 832244160 783302955 503634895 271446430 399546812 293258900 682286168 839009066 140735069 272295811 886031758 777485769 784173343 697238832 81882151 870872904 767820735 430679917 288044567 658385946 314096149 754455948 749323848 51259141 152241808 517609990 330600944 29462492 272134403 156048730 679423552 176653189 105348781 339530185 253675154 749776954 112572251 302179618 297780445 58415826 494648945 343523794 742795911 245599507 13827371 140917193 971427190 234613312 81663459 366850977 369570978 730189207 545704154 313012497 842370415 974937700 283868091 196467398 984787086 167576077 352756569 812734564 886498533 578589194 369834288 740343913 202643072 220564349 426518654 921802128 79265415 874790177 407318117 524544379 326789263 352175135 174999241 637959879 62620544 26394839 277088122 827206726 621149202 729080598 246984897 479195206 338379973 4541573 30390719 838640854 816832013 845491951 793466886 283174211 725495816 963502138 45333006 424557414 752732314 994745238 26329267 612394914 436086976 320579114 789683897 687848821 157474914 171819219 736357608 161058267 803803070 51699816 832811366 972807730 540969460 819767926 779765062 761070671 644428571 607017192 274592861 764807578 707450502 899404404 640306256 485860140 872521926 454484698 53200094 872753817 819899085 850889667 165893020 95702160 304902445 471333575 228884162 581339652 980551292 615287584 616987951 841949585 283071718 704916982 725601514 462488461 362261711 488637476 614985962 720144531 845283186 644943535 863157301 566209276 714854306 118988201 606872177 959749812 319959368 256678340 885432323 742634353 650235849 669286517 893887904 348792946 92909833 826471295 122192139 543888995 285798752 37304802 880500014 810781015 986535977 638617839 379711189 167084086 224307099 852533260 880860691 926590511 513942376 658531193 300154216 331842170 527836654 724497283 557676744 4154228 256255609 427564605 672192656 466819619 141139465 798461543 161466488 181527793 935289376 742384872 640033148 727936247 725534127 882259164 915935377 766656354 648272484 536378254 716891728 560013905 480368674 458683719 406256050 116869397 339308794 883893858 767374150 133681295 40319800 547733696 688678480 659664706 518678488 986954156 218793282 116807092 92684113 106282193 782886930 919852305 631950970 820903631 658479858 299466358 543814196 700513798 260524499 775052626 886227672 857735386 557532633 443168241 358185575 14145166 760583391 457023918 325419227 897379088 669004155 205424014 544043132 969366720 4288344 845756303 789361316 746782681 102713607 329178866 200526109 322945384 645482115 44947813 723033192 562606336 253985859 415170823 507014442 509347798 384168759 936311570 32267712 936460580 505038416 310274178 576395422 313256370 134152784 594871461 219566424 620636969 587632987 186096831 955822483 324806642 553263054 301350044 297863380 289006995 879205666 419167372 328572345 470423529 982300784 3348421 837320389 802201418 690428837 243231071 653471117 511346638 985050390 590917357 108141419 973264117 375878578 299465338 893659740 235224965 161663068 923194717 451155519 736821953 4703715 237737028 544361063 305200507 420319429 4940188 818205739 94875347 506896833 584961389 235833933 167580197 319535980 419802290 434231395 823118625 144522277 408055476 259967732 945289747 670807984 846289089 336658102 840575343 999697515 7084252 423971652 537521273 978662845 959482244 933542797 745886390 259993180 358723827 833646742 632998735 413119367 590012338 219867147 458203774 614538544 592534720 716598061 681026407 687562228 651676596 979491263 494639816 502200849 944329070 694665645 624016771 958674264 819204169 777543878 362867260 721793309 69467825 835505133 758751270 676800741 405038791 877225804 431796160 254571182 479227224 941980264 705806811 975385718 973856663 480268223 698470950 77131811 776392737 462457455 828002028 153552598 638997027 799097055 642200578 490278926 95525211 62596211 121205368 936795866 172574228 791109600 5580777 270128215 406698488 215897437 76456365 348742585 513108088 691655589 717705405 74415659 488129048 707203193 411111679 614539788 520238129 708356056 223239611 75041760 892750654 889787993 290882252 410992755 459993494 460519689 775828921 231020778 654963082 387096894 257461781 781297337 203323937 701065831 549691139 49012520 685228314 836080432 282180092 27659495 847503239 478632893 966631584 296444403 626258761 945942676 311561168 261054592 470442714 2905988 342932581 543144294 394720485 759705021 234667173 529112462 888170017 668456464 839132797 953444184 735428073 552269990 837756897 294972455 747238962 780329614 320168367 951551547 121345619 160609795 296459443 249687110 602817828 756588196 199569884 577952700 741860584 638809960 98616038 627434199 885217993 170515807 994847317 163026749 701864073 581641734 51552606 993348516 549068050 68946292 635206970 321209551 122870454 657782793 702852024 756783279 919522828 188361886 327931498 811025495 568665030 738148691 336133990 72122443 640404525 344993210 291805769 304006401 316766823 27722193 553006893 167473168 299492287 296780454 632462188 947682473 742443342 281201422 441423038 644629931 181858673 534232120 527857916 283007436 633257905 84933393 903447222 728306068 846835438 326119921 55518788 898599715 931662414 673618872 908474240 260770944 642273766 859398403 893677468 119925888 884985229 478988511 468193673 28190389 448821032 202585271 968154749 178132141 553802913 783767695 142326123 190416367 165567253 626870475 555114628 523858845 757564158 445463834 78140826 458398562 20057775 741953297 365557622 937248483 40359073 67642649 137890530 332996175 301543249 945165557 356395067 590958511 559407447 372472825 752838256 611630902 169914932 709806595 485254053 339068875 906729756 898066040 473216576 390184038 459337933 161584419 618471793 84023296 774198128 744668870 422536952 992206492 842736941 257608178 304735535 469846915 509914963 490855100 214587098 412218598 834461740 405784942 718225096 893909432 931115540 420082202 26656492 641700459 574471066 818966433 138809514 385016294 958790834 228360811 97100892 179479633 235128414 249678268 201941514 953775066 424359208 770066829 725658887 891472428 931116553 553817356 996695433 629736224 692951780 302394849 9805835 592093358 738994232 457087304 286990553 963664959 827103277 862116078 454552762 680420054 431058226 788831808 470428571 435040958 444018332 630146368 792014480 781499371 88600859 737521816 502299358 698741073 8449351 471657192 976281980 570633091 773060661 130049777 69346166 272728425 468211489 582491582 82541578 935038362 884495901 648491902 404794348 209074929 386845423 940121669 6450967 846826521 886178396 542590669 716940908 968662655 80461944 553355648 770250568 500817283 819939843 957642752 431748049 56694939 791631298 662409421 909647609 642788290 121509122 314865303 261933459 982140114 849542745 450542026 310178699 789433517 507729962 763061977 355704256 496894396 906416017 690153111 401086841 80504398 10562531 170515868 979521734 603024993 838429768 833513019 549414539 441260539 714697056 656822943 933606202 526387221 25738698 761250473 776121239 306191047 553582055 136900809 539295391 502124477 445465391 599781160 247669991 542692711 771573074 659820348 298610609 624160950 638696312 504423582 202207718 149634584 850082591 445964241 86069856 741469296 455520045 10722570 190097950 442981799 435020532 806312196 380207621 825133045 315307269 651048012 413961611 65857415 263652287 582488495 15119127 343469249 960827069 364608262 688003276 924426594 233843219 618361472 885615751 502106974 956530400 29905965 20381473 16325638 514343207 768483204 602942704 778316390 937461776 736434972 656254445 606334094 309235337 713307855 943077688 91834188 99169998 797843059 350751886 71677381 232587493 465017082 267041898 414984818 269662942 684951084 28105595 191449380 393509447 195792833 683288852 574256676 444108186 343717894 290113793 948524061 685509476 145314753 394573014 489703193 657789664 361761597 637987205 869231964 761697937 846124173 839675291 163666941 749248175 459214760 983055455 315076205 992968110 272707953 526116479 511456954 565800139 785766665 905289811 685744512 815601082 648277223 993294454 788007933 146343630 445978380 612579065 675819967 923462119 156303663 824183660 797875140 672421980 718168254 143909360 318727831 295794739 443326866 998380237 643899694 363444863 126250480 214640957 106084795 893783029 961129445 340241785 137011681 366987046 338249215 574421340 248065862 949678712 440146379 654902210 658885004 260632334 409654788 193605637 136044662 582245699 801368256 631290167 220277292 143356243 675990279 580804606 388057138 360736598 561756317 412002480 758009196 246407869 285893001 62343776 729035822 157074934 824286838 808008152 978428704 522711327 638687100 975234090 251299950 732157313 457257488 29276207 306154595 888479573 921232442 855280010 460734043 903133202 36132735 164343726 763566965 911782369 363756923 699259832 235373371 729568992 837428934 568543665 826998885 788266656 250410340 588378881 190620054 613652181 355814786 20134872 182861259 75291174 274607077 199956199 531579956 854247829 65814032 540271668 627500743 170631916 962165735 856937848 582391662 418728362 735637127 643327828 977407155 947142026 790670357 15937965 126058946 199003219 438134542 703121852 643590686 494760481 883398131 172955137 129652155 839406940 803438975 966127170 755610940 930581140 777931291 808308450 191153876 265157762 688711615 127269157 326205594 715753612 342378575 177397159 755488663 132331226 959112418 661172486 671706548 507934602 251525125 171424057 739546211 285449800 776206971 921134872 236683812 174526094 187522161 843612820 904436722 214548858 213012290 704465413 293550166 272982905 325686197 256799732 230190880 408419167 667563701 564314889 112487702 144323717 100219928 130978410 650511050 625829718 480428877 623373250 552240182 657808795 861036347 457591475 793536937 208270897 438425564 267228895 482520992 771081837 722111852 587202319 448530227 664697624 657421419 496298210 663291307 470748851 664171837 719282868 694145108 884856484 280233184 563270591 57851442 321679737 363278125 276531327 54919325 453685816 406211687 660479793 948042221 431837517 649030324 560746610 298386631 465120520 603204807 596561271 262937458 106301552 529478726 173699169 355640580 376903739 526288525 358760304 614383174 674090979 736267544 170221652 100374929 220365856 126398310 945149200 616622240 594421638 240376930 366814525 85383982 944567897 578432955 478099307 965342665 83130055 151854124 572490794 631849146 735753368 574127983 925956300 209759770 913996738 552901142 459148456 708365122 790406510 318444277 566070634 776997605 510804066 142248025 898365444 586482102 275867909 547297190 923669219 607869257 93776773 109217284 934568901 835637210 679513728 491824455 581879166 69083618 986403556 863868215 265896341 577395175 676988022 56041332 533960838 351721304 97822519 900386659 774225853 707230561 939788419 78270611 265118789 685030782 404482146 2927195 2209844 301356293 131468445 774786062 428763668 777114033 139774690 377798119 975165263 634780268 832384147 148509068 38912016 924477689 759121590 739829121 298398108 345811024 952194501 99857777 822142412 748635995 392276641 141155113 307516739 435937515 981927641 15907039 191446689 644886123 608529893 989282561 40711917 393389775 439869465 474353481 416063616 53519116 470226563 936829459 888195879 454451778 638349122 390445271 349231029 536626022 333579651 133623337 36616283 589694033 151262949 307652086 88082973 959442636 805015227 566491444 756691089 802136088 655794986 779826822 299318409 988625232 752917831 550473697 477749998 812358317 844596633 73913619 179003083 783582414 140385710 5522584 97613193 935301024 144837843 252827728 409620598 861127845 51540068 23020462 15989207 315148866 422759543 454916310 523394350 641042685 504812927 979944136 730507971 523180174 767972089 545098566 423725936 531449961 769333819 883033232 51939957 417201120 534666849 967115089 485306646 10039050 249872686 78303579 267672384 968158725 369045055 509008785 311853001 748948268 115349675 588324351 557982724 929808348 781994338 992118256 254779864 476833108 876200477 299457883 88540194 255743294 330209910 266355000 504964561 411732932 787550897 705804775 200207360 875411441 262482789 835298314 675880130 634288966 459349947 947367250 522434730 787452883 625555614 760865773 318210153 141508763 248234784 356439605 414411746 848883643 942601987 803326201 640433048 531184021 655065784 841111012 339574232 20022165 894304026 298525328 87467249 449769689 130495043 432055716 932428412 101417776 688133626 454557875 476137722 288299062 37411248 842057481 375422093 831654140 808079678 461983346 743765624 505469686 923888675 975649218 15399946 122800190 367802086 852962922 827893302 131515826 506884761 856084781 580010008 349957622 564262365 31739590 74216094 27674186 599578649 650194783 536816 756464313 319053078 834326728 515462332 30763378 842129336 484988783 945716640 2224789 659053545 83340314 689006080 649225031 100560417 675216039 822106103 49818483 450527330 310486731 631114259 106061143 60805101 168392241 104685557 226677671 979788089 364181809 552170720 114218448 455475615 776372017 695301413 836631242 573321881 297666371 304360060 204157669 206869106 372628243 168984812 781408951 508489079 132267801 736179733 896159217 22825629 301865323 603172560 681236855 124869808 512168424 679144864 809182553 66270545 460553796 616658377 565921540 965485659 420140637 548656277 269475206 227276262 782569308 978496081 677388237 318962138 345806384 817999068 982990803 451378535 296557301 684963190 298829074 457698828 374793091 549057397 184181042 129220604 403046725 560830330 199860896 642234725 250940998 769371670 959171722 705916360 258526081 180867124 153546572 376627540 903608031 170406144 993483196 120369170 819720701 409346989 640986135 16257422 839036146 392700173 697527100 407938611 223947265 6613693 905412134 813921481 663092008 414849247 711907749 141653260 989975879 161086612 766759228 263458787 315939716 894673151 219981877 743247239 273347074 674302275 849596915 308354854 492350158 939636566 254199407 410355785 580073012 543038274 985114392 739248952 388072348 656526642 948758660 976833075 154765184 187793491 731481467 474567160 496079907 340979537 742566126 735791475 453012826 247550410 674859802 537129714 163248430 525957364 347079151 569689009 254496781 764131980 976476608 433049136 814470173 669426441 104719953 65034790 848576932 54778168 724189078 408547179 709767886 446382377 174557106 230188099 408631685 77128584 728270774 494425720 420692137 869341596 779367704 142660049 247672077 126813873 493523611 362731037 30025581 690353103 39874588 2525975 290240915 174493544 455251732 23658277 376649296 526363215 864993016 163827559 241286009 960191078 560222039 523856389 701294005 475112050 180655067 350158049 622048382 604085841 386124523 530896226 249992387 9203694 22520338 253367245 740033777 60449623 343276404 795066285 247464205 661176125 974814199 280385517 317646709 224703080 89638968 614098114 306801142 259461373 482463619 555569033 210600454 302142658 344763931 73356090 205207196 591724789 545071822 862945039 345056589 925390446 802059383 537458184 523336786 807991544 463541873 594403951 825490377 905895931 996684227 725208955 404156019 617090605 831623496 468683496 696318242 138587765 49192948 653167921 84687921 676863870 114069060 309538305 779661231 750029073 473715029 513838783 903490199 906791948 439900741 656330831 709030970 540927811 320724431 33863669 467070161 197907138 323276953 403349928 290952043 957529391 175000983 356706304 495593472 129424074 136197280 478354115 663409862 276896228 789058406 58264264 564141112 642090909 719468338 684080538 250895904 371163393 491693065 163118969 765993409 817337691 581993033 636416770 83551961 53762271 576409308 599440086 672253475 621200227 733415652 749206431 485671968 637109146 535150922 334660706 621792427 137485998 903334229 814013829 325407294 790113403 728072964 777939901 974956996 690927063 638819738 303315804 330074710 80465464 554704576 317041503 617536864 15711982 980762136 422210338 356124681 113928295 325656561 491382842 675101060 709320354 164593842 400005524 109817917 239106973 110591392 128828951 597753990 309027343 370454828 910364492 546020716 340665403 322687758 620656241 541020935 780764166 17379263 722182809 654422427 961244011 306628029 963180597 406429461 832527907 426407068 437465903 257211762 38944734 346166101 236561199 746729929 817268429 465112988 314056184 243419846 694234726 906013912 810044571 37749250 279398903 545338192 507505763 780542712 593641137 771955801 761063088 145155804 188251667 237484021 574749590 624721400 503421647 759111142 226291643 406066618 779104314 906975613 810531186 160355182 693112092 275661454 500960270 176144793 41411933 808859228 875583849 314046517 895450553 217545515 778660400 828341311 188530010 405919354 803597521 873042698 244661715 48833826 147387284 913529944 781891470 17604977 765732242 898922539 71559151 521856921 122090332 1497301 114309895 922108289 713501858 600105620 591158618 108648189 815976000 529393001 797927764 213248919 815790477 534742053 714952636 62412962 794796840 710473589 509741296 237740352 253438131 230699966 125497906 685169812 407782847 253422237 554552995 18184418 873118571 35616720 833069856 842051944 191337111 317721818 294802052 864313090 58101970 310083917 256589454 654633073 109187629 263058058 913904899 843614763 843497200 145176642 558336347 838732410 847138821 342131401 199647864 838947122 206676385 267794544 196548743 87992907 684085829 928024691 868329643 70169001 583560884 916160862 713819836 7818532 227628920 95164747 581206989 42694215 21980497 550712393 727757817 667233366 945535043 48858589 816381462 559120397 367665680 481263556 730707884 95968484 432053221 526395713 995665351 982716923 698110075 984297846 239056131 251018437 547351320 874003531 712368102 693084600 207886221 641837250 778059464 624842157 542385217 890570038 624540944 739184290 780963270 871694929 941399310 812451498 798435482 324526805 777148653 951712040 202968440 975462065 412744398 155541067 560257996 299812976 833782764 166059689 737325202 224206253 159473040 500926361 537273475 598387707 48479243 823627773 984763876 928237261 868505206 965467623 447568096 454922844 930798944 351992689 781152798 977327734 834566284 545337246 851667331 164039822 846562028 553857472 742884693 458853131 327783582 409503560 29255247 460122733 804900083 752243723 425430572 45025947 96560750 632464145 57775621 854661102 101490818 224276087 297200889 574786444 388976376 139702963 176630088 697802199 486374805 287604885 270511937 200927846 283727998 887553734 139947816 936755077 614886772 278536249 701466097 465102020 344704185 43075759 401959445 957369959 534514413 487763743 919981479 39217314 338641193 538897544 338420604 80212417 708543235 969037235 556326401 163709032 627825462 469953082 794009935 926641741 707441361 3276944 603567380 172477015 449205415 695252174 336673794 243507856 451989530 792756649 826524526 440867756 516157931 922577253 946417533 339988054 141755160 55440469 291945321 6755380 961518892 330654823 302273212 964340107 799728703 52982353 557686051 122065384 510889146 187482076 531820330 541747036 88855308 213918384 741427643 618760855 622168343 822138718 730937345 282112337 916596690 562615163 720876613 330319929 375827465 505211321 492134652 123396926 972189315 250616125 891353355 40971034 902119631 182666198 550434597 357495677 513972750 722292336 828720216 279601819 511436200 661038615 800698333 840676416 287224668 956137840 913680306 971601463 219207621 317308270 798926250 662597485 88030156 393555632 917815973 575498047 756640170 378747512 572648977 31606655 693773522 364527568 49425164 352204758 579847713 956452712 284094545 300640168 268074909 965467044 365646597 621819354 998302859 807481667 591549319 259028684 924885922 286704051 224570898 186065830 620029662 400426302 562939530 168483342 140150778 88214358 836672183 307721864 860885105 660560839 924892704 731790602 195452135 245538472 61298296 512514654 204844916 521893352 386326601 440952782 877962971 608117498 309994150 570759597 632843973 729688311 864468150 319673787 551429041 784323178 394487466 261150684 821040193 674274312 268772594 956237243 394415769 243613362 820532477 136421477 109847391 492157509 519394681 183548710 890724991 810083380 47780276 983749723 544619968 874151174 137985141 125044949 231255883 39324848 852940270 45321673 326708769 37196068 912776391 634347815 9359489 339052467 235410474 525886197 484499521 630326449 655860444 763249188 791701659 514204049 853477627 172431126 789210691 239398365 719726467 609737949 528955293 712201282 252437142 455878239 33200612 463419087 651531477 806264788 800381112 631175425 446217658 9868437 147623176 430513644 290099334 294721189 185640877 205007437 192587751 196713071 851783927 666567063 995647533 571832725 860078083 611757530 780311797 783376003 906848635 161374460 650572458 607554148 164585711 761805100 532289740 395747188 366923943 193682261 284123175 67377488 741649093 701397687 249844178 96794863 325867893 250854774 524831577 343895107 814900783 851834830 892753623 838991405 113052520 108537401 637281434 726108801 66169693 451450737 916235718 299585793 554595124 98596943 474956493 907702890 862726230 908542967 30036173 879423950 775670228 608835198 145561195 668534603 924667920 539505026 969140544 478262066 625971429 74351056 960820076 719803304 45903182 425127036 290598658 561676275 128070544 531890811 206145574 290393229 859533486 881776185 114367626 144510036 530249981 463181529 461165537 930084914 861165073 468433250 839771664 585350889 779881834 33126623 950292986 449774840 223730496 340634044 491985193 970608592 845300459 594901782 275362546 443083570 944558689 644104284 804323377 768846341 844162325 836632589 494743987 341813943 789508611 928450455 868204315 456142633 992104042 163099822 444233510 796210276 585820296 793636078 364266899 278920392 672990900 288448437 56631147 496854474 489223353 908673463 341162183 26746063 213958863 840717691 699609865 333835216 588146031 157851077 706563583 467716884 436896538 621641061 747477804 941862091 15491648 734166932 535536064 154174379 598327834 29976550 210438001 382017140 294725526 655264286 726182530 735841848 379171763 119259760 221082307 670152204 889884238 737318239 484533733 516888576 889061557 947326628 978137379 337471562 342611969 169367950 757026934 182427144 519004500 592993696 425744936 251944546 562234331 469511423 162742381 90086583 397181816 457448557 860098111 977830268 940360924 34015157 446001991 683115606 366070495 336752418 191785449 517388703 784626229 810046001 149299962 211267392 778025660 202689094 941903565 444813574 128980026 107712119 112080490 958706816 186390162 834761908 69497622 84859198 300469373 814374440 104259438 87775709 626186882 665892311 20959926 247451942 724969686 19424757 452882923 465625252 872623160 254073577 528678396 139143423 508655140 595954402 120135385 244140470 21414559 431709593 815816205 723332245 308024167 416988027 461458014 24921627 441776281 460301485 531966676 539098482 342188416 159707435 519877225 715311224 683996530 698239289 720848630 969490790 638650990 365716775 350027301 441564250 72748686 597268273 817548717 585917863 141351162 428406952 755294538 263754836 984038012 724104291 164645383 470982350 198738888 85572281 311319318 106273259 994761977 231466776 276615341 465002921 54839283 336992654 585925157 175323244 781587958 493146807 470233611 146763703 430593666 120034014 455162844 460118944 503678027 529533915 362987321 72231891 990573197 903926087 279342609 626719191 303051400 823359724 999631696 42324927 3171344 138605843 68232976 247638444 102022961 422703226 961838049 794287622 321068168 868599588 288806844 813280590 799810455 918376730 473667369 546472515 953386184 416483836 65807727 101217037 41123986 11830255 949961701 323585987 952339133 921165469 753424509 987841436 485567547 775828037 570974409 276141593 870759423 110979035 653059180 846370009 790089374 994709341 841995375 460146509 523426337 793761581 620944567 712819210 938186849 243318446 650094799 263015955 669310617 686403857 788995022 750426473 322654834 718994820 213949071 218459615 790765618 229932579 112895130 255474345 817129429 388109860 698604162 696880104 132743242 250934740 272566354 679875340 932376029 984796480 116711913 731739726 944044393 50010734 387227106 243887120 52849707 853283806 365549103 33066520 875991871 381658300 490755319 74408549 607028490 1090177 741558837 677760567 883978396 307380194 214459552 720106540 595106794 559497637 46978925 293866643 704483161 435452716 853498221 980570155 923104232 993314018 284263664 925773658 331702106 454405360 616238322 812663219 523344870 508885329 117117807 654952590 170060385 944496114 838399450 300259584 709156383 235317639 222586263 831219594 43075655 435125907 509339016 688845805 228482274 832313320 549426490 799131478 964426664 954194850 504855541 502865492 963720500 271878602 919121029 646213748 666489234 845744302 703542615 717626685 95615608 299595218 57726435 420121732 672287901 474288196 418124734 732451094 791957200 599542352 555444962 226781287 900305870 692059186 301575956 322285549 473394737 604679744 426952155 258603828 625435078 41511111 283233518 459564879 128914011 871524831 775443033 879059470 274569544 47313582 606684342 855588169 563540317 229428746 577181103 795204634 478833568 813636375 556843298 504086508 184667365 409704133 888114175 415519719 856848922 996957419 409986658 966099241 158955361 70714479 802620166 969813956 647220228 526272366 7715686 268983790 374636953 352944587 750488938 116409767 620433625 251092761 704190515 823788932 855842158 340242963 806923984 910763467 732493432 481461944 287423866 385363121 89788665 430738276 101470401 171781891 472160608 114143594 914451149 143401580 638728050 139909180 247539471 100683374 969322019 769851858 905995402 114520362 676672919 369292346 891429671 205505182 907073583 551247657 230350910 112649699 696267011 595572848 999173880 799140960 298227017 67310244 694868659 598934754 584276906 268318333 954986029 457490820 606108489 683216240 971275026 67704652 759883348 46217232 197789260 176171251 245233236 305210626 522819972 423760324 720910147 641022078 645914635 152332891 284566453 92967756 661838456 694374201 5135093 201238234 805868281 948891220 208737351 472104479 403257461 973264442 150735392 692209163 23078666 362439430 876537013 952187764 718530160 92053138 151790192 212759815 492678667 491898797 149644478 470676332 996329005 42413864 250680680 330118307 360074916 176091325 455834202 786065331 521272237 766326709 987178489 713522331 665163607 418319649 828729913 572692778 862481621 921125902 478405528 855229138 666220263 309649176 745144371 578005150 6176812 829172843 129373589 454226712 902240171 153960692 9382069 924668749 502306358 533791930 170775871 748121813 932713452 279797978 826023240 951082784 334109585 807634107 547794683 983073868 439977576 739625600 500739562 535535771 863928344 766333227 246228228 116895764 126853650 52694815 340814178 462538458 903799171 314785889 196251676 864613082 238309049 828418636 994865883 144292924 45201303 830067694 696521264 963081595 387371967 307402212 830131993 763056392 956704110 460388118 909968932 387243820 672260538 646023296 289344517 652257363 393012976 220965394 906981012 498343981 390182082 412580597 281239320 575705846 15984221 966310152 20994119 733304828 348275547 563081596 999755187 393089944 362218873 808823200 307183794 552753851 134889434 80353258 805538191 195000472 1604198 671289401 405983907 236611996 558257983 501840810 560010581 286951101 677901746 184246665 104403601 368929730 415816401 178576159 77176753 574837986 453587614 478289856 651037262 491612471 569265047 376992498 557498152 802815559 549915197 101427114 651799126 35314572 39127522 620013342 480085938 457174279 912083513 150472066 754389656 886543352 42340015 673915341 89074751 795720118 330222579 73970781 852139208 929409972 525864368 408398134 94965400 771519374 619647478 812087605 669418956 275319447 386741918 226860463 901360185 886055462 536959585 319033540 147344091 769906120 435477903 454825961 314564173 282510028 943117276 657094448 204905730 523617418 210015550 673430252 283411333 706425500 268393331 980081203 803396499 76734373 30277410 596202460 932264344 670053461 551951952 722636640 62101593 944165424 882855384 859043844 991777106 124232625 550008111 44557450 249081139 773441671 112716186 668455012 295146258 502208345 137209598 840788823 515993849 418830850 838848265 339054473 281394220 459338340 857814475 517487037 404525524 711387131 664484877 112741557 236962590 517104872 456120998 314521584 572558712 562837894 572055706 520907257 712942358 664959966 215863924 717186843 764667236 7132965 208344617 400951268 711452080 201314635 72263598 718989332 921095730 283951758 897610486 529216242 211966932 767562528 850723947 923331509 366560050 619703226 734470963 890760205 729654737 149620943 227772524 959702140 548848791 820481308 943946401 651305464 319022515 555712441 224681476 598527049 532421671 196264840 293537961 356781945 339626248 135068559 697583803 97449244 909678966 638757284 176854356 233309150 71050006 863110597 779837850 848473484 554306776 285744118 475281755 233191211 114069656 724662914 449239344 622936063 962594252 917907987 178429642 404883948 312018459 204837234 318874897 380649946 822704996 961054024 303996557 100703222 686191649 515063656 170712911 760584868 686602826 94890685 189960460 361689134 220427752 367586046 930406204 436043562 665814810 879314128 832634679 191307923 674525357 45548309 832732620 113526186 238976952 276745673 568320080 6837550 424151712 842797555 627588447 985837537 446636411 99706892 824950070 828107732 960823383 291173576 282543995 462451502 596479697 417912843 59245192 589577979 186438635 490882595 699600073 28846064 94457279 476688162 544369076 127501920 20297597 744822247 483191318 45982865 625196206 704286009 826240883 695314279 746542133 343723020 361859927 383498292 934680242 246649565 305237563 331494295 494716490 154324683 311925702 967363516 942220436 767334844 900299097 126724694 232470663 179257366 717583736 573622725 944363995 995612831 784535383 664826747 159794868 301852820 53413739 991417742 977952988 472261750 56490457 742231769 65159347 680176002 909882740 654770670 96999403 404761622 511137107 257479473 655719379 151733599 328983291 254502677 365872586 40543937 794415915 629245091 719871089 635659535 246504047 200807691 448048116 526407275 891185220 531034374 773828993 902633568 619364220 100471185 938553382 189093668 342848965 221304098 564762732 504484980 351888174 480287813 828766984 421423939 145829065 664230920 458149554 943174579 164558613 94230412 833445246 404868627 768253456 609207491 425092538 106260260 648843905 875261537 302762669 714589868 632941174 351575302 4808765 932682780 224456741 835170320 263661285 450382752 56718808 628980435 195094423 5520680 224166403 154798478 636302392 350998846 402870399 562561662 573482440 407884477 214534086 688557572 832044034 932819007 757801595 745708476 80289706 606874567 526984677 43363052 874195489 828814907 826563325 184893651 165659717 914494084 64805252 13042610 985891752 204596900 775484734 602552037 603151327 811148300 692123845 768506703 395410199 462262709 588685402 203131822 441879649 365509449 496911208 966921018 135313564 379498074 943016232 649817596 540411649 157437599 283892070 296115566 651371354 161145733 517995933 428981168 641030033 761826766 847885448 57573270 817262191 554133371 832286238 801419986 637748268 307621273 697748662 74842239 314959405 328097140 179953339 208363340 276227043 386516611 631738728 639220290 203108102 478962139 912694040 896319506 816835855 673878658 564352785 422458496 775560295 625693773 366162856 344588510 251418613 157075479 121586670 871699693 110135752 955089258 83904169 87205788 917247910 536299732 124838366 655915040 40711745 715171328 7268200 576464109 701429649 339134533 914213317 282159394 521087184 678228682 419559307 932010653 561787357 643623715 554574854 198658518 339761179 350162132 491131764 928759302 478589806 886506936 908754616 765325076 969087809 299272099 54252912 583047038 441644130 456859107 282021397 623599374 219251465 596821965 477092216 965184343 854136784 752081485 52869103 827772717 18150185 291731257 572297621 435183688 589589299 653350583 660119437 506831854 69672996 948850737 286840395 288547757 586019757 161616358 856828643 382905191 706991467 351124859 420993266 23105265 349011465 661267054 81276599 700690094 861155190 34728040 722458064 115058178 863642967 544100725 40717454 273462304 837956109 139964655 457353739 94213628 863296465 470824096 748288138 625080339 898858993 437598987 130531458 798340204 880322988 218584421 738871545 442534834 682186382 499862335 42577340 378276128 209711871 956247915 564591426 897583776 294169445 185160531 377858840 783210684 782930907 545184430 290640012 458330599 501722692 978507159 756175494 847120208 64099307 710467414 368339267 795463229 203786326 61853318 191690277 478939842 913805278 748720737 934119656 48097160 97429476 783584502 61386590 843046476 62183878 842093417 440759757 729377146 477301911 767076470 451397894 815129866 79127512 583284301 788302989 50618490 926144524 138897103 943720050 586484331 121288812 195460427 630631283 719439868 900090521 597355041 911303203 128947737 512216802 973965033 411097879 872678573 761593985 722013651 740348599 24595598 199294641 234194437 967247521 939495445 772270591 541335203 609143851 873331481 461088422 126610924 931719433 471380215 930093236 369351323 484001731 698966524 838646468 909864804 748064859 743059760 227460838 174826924 147045223 68361768 304694946 894036399 328629320 214220316 70340600 33240683 675233599 340987790 181403148 514196659 50524557 554186934 312282198 435023038 271925262 116599627 565137888 303106697 486483942 410667856 603064818 339994809 775215385 137287968 581060732 844781871 85835646 573067678 500451855 306204035 673761327 282962251 676196455 87115602 853850663 156937690 6925999 972417457 31546178 989692071 394231068 965076377 167153377 491843716 867977316 148645260 194002335 521384641 225962463 553725466 166007612 836024615 493852379 815294181 99677387 149745282 340448949 434527789 587776142 567967572 782849148 168008026 39684779 451699223 75441264 332119916 58957139 80068687 128209000 945927379 79407577 311376669 400267978 804191032 622590739 756373938 925452800 881209546 769621710 373796744 676350883 106934002 614942642 591728176 39983290 368605052 428449752 606196884 822023454 847888010 611805459 800799074 924243664 304109566 339544298 810541092 288039384 570691867 496697980 981720462 341265781 291840127 726629756 278356189 831353944 789885396 12254499 51802308 350746714 867361732 916001896 812454174 574937057 313959047 17984257 98537002 865724768 757725209 712974260 170915044 903057633 895878888 148435689 853564425 160718602 311700917 827540440 179785394 752924362 719251937 241389202 966682409 812821453 691919294 764196231 83268080 461834673 843821947 61183007 126557547 804468571 441313917 635638838 963387647 471542161 50081585 88295905 136868232 753834348 253092184 50043254 693649065 425077276 80329776 101239525 534167643 582569985 462361017 322373729 658049676 167153991 652492652 878698775 747584630 141705959 870067262 760203309 483768595 419557896 469133065 850950661 944635501 117307800 678700779 699569261 260093293 602064749 196749546 85702751 708263459 970368767 361409440 444618140 850689648 169287533 857952770 145657783 428805339 640444207 551825582 681812439 775661017 935395332 356758383 983317746 981502590 496995354 44028578 554602803 184339836 676370620 955476715 409479959 851765948 101910052 496576604 59600208 514579228 660493023 169296621 409231183 762922082 36924490 226694241 758836846 88573120 274847101 305290552 713413873 440101560 283097494 68167651 464349044 380468684 546111624 282516481 78747905 496259700 484747463 786033057 715598445 275189108 427785025 52246757 950066965 805338146 896535993 420588902 76833994 962711810 292496719 870981616 344614768 856387088 628739948 735963256 832609474 258505212 692821553 883933586 831414715 518747562 764171226 834717602 198940279 84130054 121186711 569382324 150240311 225370606 975429150 948246667 382754681 866553725 463083585 717197431 185441188 948507721 703091964 49279884 218352809 315772401 705235490 146261706 278447319 679656447 729282545 434582311 758366366 187440548 442260424 603471595 860692763 84079879 868531983 950102081 42824735 17978813 953319109 981503285 84733843 416959949 372092956 170703075 340917539 817749332 176355974 143504729 659846242 876228408 747105024 412794919 993393695 262603889 790102607 322442174 98848485 817182821 620311327 605534762 9823640 822027515 832744247 734316807 612186988 473856051 291074047 20718864 794037555 969526311 457814630 13332164 135122714 474899795 465650674 126494831 507781207 832454644 139184613 335302579 44749441 352785732 471787721 968519675 236260887 429676944 893674510 838464196 498514751 100287111 360221587 723662255 287700868 998027520 756332894 658450834 968815590 847602371 470576932 347054462 938308378 509320517 409311750 307647646 643118622 589898040 432992328 491750715 923137626 848966304 271832984 727916483 693550870 470139231 979256047 840409257 735351920 296827622 164676248 132219332 734128717 531185826 206852564 631045035 244400685 938378473 296745099 447377537 781434487 22090323 211824788 820652616 398213255 839615241 89720462 476094546 39616333 816111669 319888811 566025109 97595079 824190315 108526512 245819456 506597858 747546422 488240611 889247693 275166251 283931005 653673924 553083164 668916284 512347183 100999465 431469884 121651943 973199302 346329834 473948904 837181883 951075727 105713576 132687730 742296903 752349060 762908935 829740810 742684519 338329253 463847038 991866787 188912104 659553511 370922756 566296834 605022608 372004281 723345910 67061996 584142685 10747699 946383877 157593254 681245418 276886168 168428383 880288370 348797957 914149927 480605492 528520809 318025618 792935661 246656748 223639918 509280818 957299766 707270743 704582989 617234220 395697995 735409914 529992378 149133814 40729309 646247141 734993239 88230392 798914538 907266919 5658277 842178088 292864037 389364849 82529769 781027208 115058394 937663839 489518102 403017686 438021663 745401595 288695677 895777767 98599128 8325007 821604085 146228105 423622130 423119716 255325019 678778508 317376361 303873749 671587212 747185639 65076834 886742090 904797694 771242942 254218129 130368665 565790815 354421289 648571361 373859862 257398368 575716370 611491337 946922752 830682054 874262553 44406253 982492897 609086111 964455376 264771287 836186703 731616440 504279211 709234624 937459705 880949691 874433796 629103816 299709887 499542311 211651927 853224509 481103327 389454020 400358680 700847053 671101726 837692818 731291343 84612920 322039353 485664143 952847633 749370159 73144593 417103990 941400945 957771954 93642367 714867982 57131578 469068831 558075493 575145399 325892698 895979548 30477521 217111914 642037799 293125306 175838307 272805546 941904771 995377525 321542502 276864830 958499135 577953552 808490635 743615090 984411207 772944062 392209625 487356705 84243880 625500949 685651499 506750961 71013045 816272793 864782878 153407552 397067315 935282692 16853955 211888545 327332541 896109996 551102393 268363610 47125144 777723277 265269063 701642676 266691576 865015734 752271641 938440754 732782094 340150715 176918451 462341175 320277941 863304573 619472056 39098932 946266622 558576448 143079173 77027531 539842129 810109347 330654410 642496710 685015072 846433341 743953416 317535159 712057557 645334136 285731601 377235717 37449844 14334269 333163697 443970880 413055038 100685583 670448089 718532076 511719023 453633504 844092889 266801209 798019225 341703843 75382747 422728167 68550680 490255301 674882053 731997520 876758815 800509212 683927370 549136322 261701663 146467036 507361971 636906833 519668417 214622926 123112356 416388161 682383948 811355416 820195744 452822930 60923944 786581245 458088981 789716651 740328130 787781005 85549374 144240743 224587580 247553934 656105803 874295832 889366651 937101550 676887159 342497986 363110110 471081141 771967661 768076294 483356593 393071323 337628873 418598479 549543573 565397386 893083166 737608444 644481244 930728948 497023788 885031805 20521881 920621687 67082575 534687290 817245503 931630585 427167288 822329766 529612662 344886549 352492162 324777498 118814964 544978081 614775654 225831815 843697881 32803653 861770957 379672069 496675672 105644683 778936853 292256147 592424651 273722276 188267315 202581867 784027240 626674456 28746767 413838914 980418376 767698682 246665003 29410009 281078169 515275163 727130158 925484023 131073225 966100885 268399206 56266382 877411014 874087826 65049001 266924263 480417385 447482541 800278029 207623469 743670981 381874535 34306270 775566660 780024241 339496846 673477821 648589731 919244478 225152042 679575183 974345360 425404956 985674183 621904176 306836458 60175665 397093174 176395680 335465792 239594002 621499341 973709305 209144783 857725611 82991426 692980760 459391713 622442278 285959528 360041263 563510829 366302127 325459026 371632528 291408137 584855810 772867165 124582527 981340072 978114200 385884029 706146952 679760079 199170217 575306764 312265394 857248399 491836630 374034150 361364174 737852180 535623084 213433583 949659696 570981741 319457173 249003938 908424037 996321512 492937605 537513099 364627824 667673586 788402599 198149729 42767241 392948835 668143711 974747830 831117036 170664705 508651288 364757734 633458369 134039364 687119474 460188344 522041856 255198286 896218484 270171418 220460979 916361298 962897661 301629939 354134937 790788601 576623378 418908883 526883296 513801271 151966677 840580569 604367272 814616804 744542788 501274881 450228633 179089255 554312331 819969038 553328981 250114268 520217246 448234758 364471717 122614979 509347894 165180076 170352690 459769762 615927932 655922599 910548001 854211270 572447145 907249005 706917101 854692684 556500829 695174667 383555965 590183036 452831567 100321889 647860472 871378312 618930211 155220262 702984224 104421584 642947008 297914024 513786729 935279975 875332289 78312879 120150507 850478870 876905966 325379345 469959955 185970312 274997014 751552160 678298950 963605687 573614015 823741719 720921943 474306869 130597654 875565024 876396099 260604986 799987208 8059599 575324382 267791252 549534003 485766351 711223228 74338062 15273234 710460612 874399266 805903897 560487203 435336452 102410099 503062869 19257444 734144032 450308358 458899303 73113006 978527407 991655748 686142013 826830409 350085016 925017502 885695908 755291582 487462880 114429354 73995970 71211661 655570137 269724974 694634378 52426822 754036104 467607013 487577125 355231428 875631542 941375743 746351732 145855238 735827232 813036464 892342721 497830371 254681605 202588034 901973673 493364463 120080646 438125386 65885801 387198472 402813505 735143650 611531939 464298120 875010789 957732733 691907866 194212083 409975239 192660129 621501397 403545677 453531415 211660124 162396307 646857818 647599788 696149851 777573924 381144839 414845268 284672375 853932792 484482901 506471266 909364154 756658388 71124326 405757990 492678026 425914889 699563636 696326806 423786775 148697860 496644760 829213362 120392368 556708631 605139541 503444847 83575310 927197259 783393104 724333470 228556731 756940057 22207145 206858004 766510217 902529799 375774279 98099741 741623342 546018111 892295688 660649698 888688718 766422417 550632062 181091205 482873821 136633236 76252243 380986996 675859252 958249232 475778898 991358089 213440806 896001924 802089395 134434319 267983363 684869667 482257329 230380425 658638797 163060499 888279679 396486491 360763083 449605303 802306925 232466416 279402013 320468490 496737842 500851201 328407703 730563599 101870974 276689974 706964017 594953980 400224562 775074270 730074830 256582264 758050682 350909154 957708041 27487280 793853674 12732280 457396907 70098158 560424486 349111220 228768079 783435619 642689701 399136769 822008414 236565421 689029701 681712185 133791157 537282721 307073441 356563346 538470335 292212184 789532645 354058742 713971704 319142930 880600282 107134731 125274696 618473455 170244651 371125768 720699151 362193077 195058209 140541357 926574894 685981493 140598899 394837689 317441724 935981679 333001269 12088967 797746514 481655467 72541041 394698109 797799747 248102696 646580411 420082884 445383502 562471811 857863395 847110851 864855349 331498295 618931835 36159034 959416714 146737132 49652647 145077050 676120369 274252928 533364669 790697801 98145283 14575207 498139552 339264316 463543455 296738215 281182437 265018278 265812625 498252935 344734864 366242906 795793725 527316993 251468698 541131735 406485242 320452168 312397169 319595191 274196165 185302018 321528396 494833127 81336649 327805796 987681291 696622139 572860072 990277260 758021743 793137592 333131453 393792724 516217034 327042712 635008903 484433637 699705465 332231572 659099099 858387709 438815171 762177921 833616385 569873117 278533056 917345824 886929222 651129198 500487853 275867193 120118100 316021262 201070893 786430862 186743635 67297119 110472401 411478768 559338658 734558367 767349563 381918510 341181591 186615179 491834230 557849671 57660053 465272508 12183322 80529360 176194641 240125030 254234939 327672784 936811495 280428321 680282728 324302955 131109124 814539318 662817040 668959591 754399024 897617025 844023980 885158529 778775305 400942133 399595642 469939103 673375944 215386910 521461063 138152935 672518346 500640987 591075175 360022901 395977255 688914139 845904107 461195820 407142980 47462317 18404214 846862469 480952284 474251471 626062814 832814478 331240998 856674299 996940004 246655220 684769790 449864107 105178227 486461263 937689911 37528419 473471121 377852354 417200022 184663641 581048209 618224843 563313282 187964914 249987399 407219809 46891230 650622973 754925591 565036862 365182915 685448676 741628448 464180657 451741116 559732564 62972785 678219519 612056239 321591001 393300924 561388019 120152674 288870599 142151557 29280640 641477431 381131590 424655238 195380184 969654254 805746181 890383838 866118641 449023640 640770020 598979535 293287003 341585179 222250718 893865481 683981198 410008146 47267753 715879897 420995188 850141899 422063383 752486218 592686039 205370524 251046482 71563687 224957170 583946701 150198262 742305116 711192921 408062959 887411232 763143841 430736416 167240376 690518839 289582964 48268043 342975375 834746550 386182069 952233736 908044056 864080674 988982331 913468578 351931264 499231019 501579382 93242821 146474549 92217448 406105678 391467812 469840570 450708651 188018268 330942504 177759978 887285965 942920420 267234863 331642292 278008905 121678451 685046592 512713518 325877481 898396632 430316169 608756725 673688721 141621452 365753855 99251267 642421603 460086361 303087028 167729407 996620959 963313052 90855528 127722270 676603861 614171544 993264033 101401915 77305295 81568310 371475425 143048674 56432444 190925250 712713552 386668926 278107074 646602286 293521005 904715186 191656269 183840951 529813801 311363781 125732761 291398947 698584342 784740146 434884322 483827179 376695588 658166213 427421076 941325981 81992492 263243524 158088985 27382468 837896146 409712743 201906089 566614000 999888236 47486601 663530013 722066582 717981503 942863201 425811367 360342322 716071040 404630169 323261188 781958668 971352226 908236424 89985050 868593534 327117023 731457988 751394692 964021836 248615161 61256740 413987059 364767231 268756199 810220585 174861317 845534205 713227399 90222365 619281979 639473643 817173436 476023699 626134731 711695411 908581279 705053354 439077813 713898719 368244635 490122861 319940826 261986682 415674771 878921702 370819042 703086328 8061272 807406260 306561053 483966260 841044652 510811775 627443158 19137554 710644199 884380300 647558354 911528152 214191503 907656776 548818801 923193008 802986144 768728177 892574742 937119394 818551961 679423315 777446509 780392681 542311246 620523476 774968540 747219510 840940811 708661346 844180102 951667649 371510284 594430526 344276772 205900718 799756364 782152413 325546742 31458043 889320089 158312368 474538666 481466489 28665305 655476363 2925950 26145713 661318775 559201425 195447927 106076202 927357211 625086018 916657156 769077658 95689739 857622035 30463372 893249724 691293163 200313958 866099181 960039207 624932727 594303970 212987661 788212529 467627863 806372501 108634774 891365544 55661998 999558074 440480294 735485452 129556462 516884898 576331977 305413433 342674404 701097457 788659592 268865422 762802467 133535765 768216204 932256066 984161671 511258407 270079264 991649674 915848592 721093467 743304295 810446193 971835914 929565485 626857133 902106053 537655805 609382334 852410541 295753713 392826404 627397778 821142990 739848960 860696426 761265997 711791514 88858459 263715629 719743069 190231671 268774779 293833655 164899153 928175852 392875032 62253654 848886783 814396054 131599520 881564689 901420490 214671437 951330144 28088911 899353252 905808695 368096334 247166831 997804931 623873394 846391620 193359199 230978766 484119774 143324773 475133851 14639349 302357355 878748501 687256774 650669593 925754946 950416153 962154165 576950223 63807986 576977661 484173029 523931719 288475173 535301482 327625824 609420762 247736385 393023841 28081603 91261151 257192343 643934145 915414492 532749486 288599552 422584055 677141666 679608208 34520147 510873130 116277081 916423012 359632697 892086227 867584069 445749447 930119623 552276903 920794021 705669690 480159783 887240253 19906165 524632769 850695339 94432334 159526608 731514938 846961339 598665062 221835059 944489574 342325878 361031337 133373605 185563978 791027791 874152344 714674133 952986822 856970206 789056914 74044993 585848010 550432282 124066670 395443123 943603706 265315865 698249501 14669507 751639627 72719580 395616871 801834564 368590057 517266111 129202485 837699558 248395178 731445166 441252718 218863855 276871733 638019169 668202700 557611548 489202804 883062 750073090 640336606 500241320 226942749 115008780 985873233 82806687 770940010 362808083 939801534 270523971 229079671 105993941 506379794 758178394 733492639 618154091 918686991 860491605 821795584 75178749 896092414 618585363 845447124 431482968 274648093 686234256 798206598 265179327 858866006 13904510 106645465 527344574 925622147 769451139 77265576 336730298 856539834 698934075 966298622 744240553 458258163 476307006 26411259 486245339 295099585 908454850 685534898 978832863 226573494 925849245 247858688 371872674 134153678 546133960 820006556 368896625 265028551 950220128 395936862 187729536 278924500 400795908 694435423 493759722 631447242 264779962 436782224 929867324 672076025 549800311 898875893 979839476 693119278 124367101 193433375 335287386 95186820 835748233 183924254 644083459 24784499 1783791 904215336 596254253 996391200 832078679 247622741 947435567 833448338 350632208 261196679 825013710 151011745 828370867 864786536 292282332 282296397 529373954 412357831 280666353 974524766 105579606 685445045 591322466 857439195 746884637 443709180 909772801 656446344 619379680 509836355 956011946 665655307 709783161 840661161 864014243 60763385 237328256 73038354 662376337 882025136 745258089 513316237 974597676 960825736 59233227 180244541 848023185 964680829 356163231 674875855 675110531 921011516 139194503 586495996 421454732 912335131 609413950 871222921 688924946 408886234 45775413 80865873 399442734 776919740 513259646 708452406 151793779 34125776 136586971 675589414 576608316 476919586 115984592 61672838 94127890 337857790 926038962 597359151 403185941 753894824 475054869 647976972 365518374 592898799 18081060 882112462 808162230 542706386 526444718 458543384 46499050 213372246 110878444 54521646 67565772 165922441 712644191 766352062 329353289 419269798 777127164 965637693 374790165 638239125 996839681 549254209 349844271 845811193 811496181 379679420 347315336 723086877 949952614 837763991 10282384 794137697 864453511 635136688 33716728 259601345 581056254 705050236 892508588 996996312 6146257 640842908 13457930 740368557 251679468 944005745 749894297 9905889 295717041 32020371 815648495 342165855 570561187 982771046 263885194 769711708 669251304 117705942 833651758 218765867 902639855 982199993 730195074 348565011 365737089 426577575 521085245 817315724 94419969 510903917 521363225 161951622 758130214 468681201 947090414 23199040 814310259 926432077 561170315 891208981 16588323 922980606 740533321 380717019 359467867 83537899 991360938 909783435 60725263 344361442 278428625 975485822 515540353 288242523 126130441 211228446 608910121 31842669 18288346 559435644 142945315 10571090 852988648 593693819 15996291 581498498 847815905 782899378 147284688 956359158 852976288 458011391 549886126 272512903 344966830 689580889 533563364 963778141 448608948 851630092 832122672 865401665 156361607 728525659 8862835 605655210 260805069 447515816 784187206 77172121 20617109 383157783 224464307 478128252 156381338 669225768 608654006 2415462 550454882 389533826 610298397 446565635 194995544 694156463 974869593 211854175 993973529 274991128 147995635 861095598 905564038 127646225 657810219 656533947 267899077 443942408 14840262 271060552 297605228 200405918 53699177 819977690 499942793 942293703 797357586 240010040 117797444 895600606 577522016 565064023 997349952 15201324 113532231 8995695 265151318 843500805 672034005 224754418 528537725 781034595 98695193 868562476 448413665 512696469 574564991 785448527 494540177 97714114 174041600 764075651 773621114 508961329 368490455 557666531 352122446 490069818 683649805 653366162 225445249 337736418 997586810 673899578 409167043 289723969 23296773 195827555 399802043 599399078 612539767 804838104 172713165 12665236 734264764 454705313 121812468 156621776 662643328 445560395 808068713 768794024 336573627 248620051 335445463 668135076 72403688 488760513 614266114 534195514 93183665 773389520 809483406 651078880 759574802 423540415 564760770 772483950 524453795 759474350 383443394 931390654 92713758 907284604 707847725 150969557 458834301 490207220 813864118 100957660 660356883 125091729 926095774 87917543 929715793 833365392 95196307 972547284 999103188 17283074 754567412 550340283 207175085 464448511 541467120 464706569 910245542 373449452 361657065 225444772 644815405 530977263 157760645 539109804 197313353 398621982 438877274 800702145 845597951 5311452 252608020 120837637 200905188 215285132 310498550 418493377 265752372 514784332 574104817 188715141 607896337 901571803 639918662 216766855 579799976 146308820 22176662 251055284 741690855 79240950 117729806 565347202 433663435 213399911 304338184 346801370 564504243 720567642 242187348 54628787 593028520 119805885 187566552 716573430 91807958 950029871 461415920 727854902 555963673 756821338 947746592 453847550 382515820 636718679 279015887 775204119 767984091 781249553 935192006 225999414 309667181 135279983 754664404 813549906 590397446 759340078 650593515 872640126 688205058 553851031 138802039 922931395 629587536 219972674 586520218 790707212 181276475 429038290 529527819 495005815 83346328 752934679 359698406 287232975 289800440 669840606 69259616 1138058 974068510 828659549 406410778 559614789 849239488 342812319 417223557 816788063 601809483 48408232 106367239 927527600 569719094 8476157 926697798 201776626 740971485 276314068 403633422 583806584 528093081 466544541 917212509 739919747 902535962 682052676 118105257 293132882 104329025 676136584 13613534 212344239 929993727 769416195 627528536 349138943 187252634 563860255 466930328 657894290 74076301 661348641 158704540 618665420 280182628 300642673 694891146 386564181 152381341 322334332 679754274 109724653 762543991 786875279 341488527 985753105 591598422 211103076 849877841 550330115 483367282 519113786 931054408 474926994 193428005 925162312 420956639 612540129 447426919 234658520 45276411 652921971 887990581 116177755 602466176 348470581 684697750 3826456 729162172 987593032 356788000 450667533 20281057 686701175 273369301 426490823 945438009 155759044 617373638 552483451 337042838 829113395 369174103 901781005 181813437 693102378 41024240 88555505 317748026 496138672 237342517 453601087 987306382 696951367 459471074 452137043 790020642 250165506 155331626 337084334 360539366 164421556 356932721 114423889 996587743 238662835 857952452 343847474 779270096 750117617 554863885 620273039 491497673 562108504 534770716 355918447 374905942 72126184 984384641 605206705 372492905 519013291 714051809 486395603 167045921 772255338 51712430 524308541 400402942 890527146 402574926 649655341 827854672 551834703 952765824 399596534 922679090 357137546 401525593 498848094 669504669 622072070 142863646 139920230 272748317 953393399 724052800 77054244 397226003 623949238 879853214 871044272 592289046 606680885 560384280 330277483 960015239 494612294 136158497 366611460 468084981 152617518 72847926 269342342 10901300 776737060 303299976 681518839 404075383 645169115 653460406 20965512 377300545 986672693 929284898 515026008 633320866 561202835 6493254 19266312 639013246 894727329 956089875 644747863 11142527 873610783 2364469 943806472 725099184 367171967 745945835 876446134 410824640 422783923 184761042 486461093 275117044 409644044 444679139 987061260 596445912 537354201 236257589 570370151 313565912 917513443 35823567 15256668 757183323 317440612 840286390 812159730 307553457 805690938 707358973 256669131 902915326 453687186 269764736 989677237 898086042 492959534 201142345 632631941 598004034 250580359 769549071 375860443 273003399 882470858 106700281 863026614 261641508 759838232 153458252 951853552 398283927 368957098 189681400 104420323 840027357 238549715 342914883 537742038 135915707 402812872 480517400 97410465 293835223 92216417 651646698 569825736 9114046 67297044 77070270 901850420 937361456 407183146 354439904 611581648 49950926 728664905 99085105 991405929 278951695 912645653 209668681 314330577 475875666 672518119 802904530 992626203 179237380 741495318 263526114 655983910 621872364 10880078 153961341 793566091 10084536 265880654 325328211 68603801 640175101 377814095 620929952 31789694 310106444 477048716 74652287 40847139 800990977 409803201 592093756 12783384 464723993 862163268 382751067 469545649 396422501 907968090 536674598 146381367 387465216 551802957 752266557 87044989 477361731 406857336 914333044 421392582 590816823 819232744 802594151 795365281 636936707 104568087 258150248 119565954 147557626 415874552 403246172 883849506 130451155 692156755 43621975 496973551 969039424 219857079 854380063 528702049 275158474 233980404 365965387 815635364 749796895 366092681 429969895 420474429 349628874 274014025 39172286 167016119 396005707 408918650 238203541 795196142 679772317 319097542 697892185 621123022 498167187 593367465 16998178 811576705 811422535 849005940 281675608 697475736 851059084 878804557 584328699 698400765 121736995 895801874 96386847 931023405 574042976 978434768 903680329 82310697 986985315 33356590 642735088 509448785 538916994 792949758 109035523 889194024 642789185 588709608 452022682 300334449 98622191 497597243 553687284 952602858 156957789 949705213 866198781 748586122 662282679 492767391 582519315 334571416 451242155 491103944 298111419 94690162 216517396 619258407 272425767 386895745 818296156 234031008 362667024 870360921 108592521 411732682 730541946 661820364 77234460 512228 960687669 282500089 195577732 442770120 721774140 437129237 266763551 852068159 254707126 232180540 198595918 570819125 645288400 606452628 457587085 96833362 762910841 255241246 49313519 126242428 484625181 642398322 443308221 164076831 983948445 148474457 881297905 756680757 133272364 552801812 469346206 845117181 186226569 666955536 644044324 99069143 756245768 861425972 90093924 595753136 954876629 190361279 587844624 240789640 440025226 778336842 425184128 667814202 716564643 537846071 962749371 129888580 219225655 248566018 547470079 51913863 146386324 72809719 798079220 304332237 628475627 426851932 84294415 241332774 3653491 95623047 238263469 985390845 225181263 269506894 254699040 333472723 972914560 467218011 217643419 251920968 415932510 863277696 773277026 297483168 986771397 402735172 205104667 160541697 750972054 66454021 97382199 455565218 364291892 715324744 710830461 471674128 723967901 544354623 628599287 606204965 940026148 694294953 174887912 457257946 697521272 703668805 998176429 153537283 212165663 701806278 514645439 42514931 203054101 658778702 32889531 732903556 932441953 924992249 769094836 642514059 524539309 776962059 626709124 633509253 344499187 412145630 591365573 710117652 708835471 574331941 105153211 244436199 934890860 557906022 201841156 122598368 724423578 963058549 71178227 81649786 472952111 938951497 845483876 556432080 639276295 303121817 240905677 945890222 261291891 531395657 447137268 480471828 281478670 813209758 45679880 728740757 962524084 514440099 299763302 545843977 759737292 659049107 171427185 544653416 965269459 372434815 836833428 943551888 265045843 951214924 833961267 322323517 973697438 386087133 1173529 712034444 322301297 490713863 54199856 836465507 447169503 893467699 10343591 372206390 149406688 349694430 578248503 994978698 188248612 206337568 495229138 304628804 669191849 871998478 377769986 696381324 494679404 888255575 51925548 492785815 731033922 966437559 470661841 106650045 212204300 702321379 282866873 733962497 694340712 121024765 388775059 492273944 85056566 499160036 233375844 400229080 648510555 981968432 85059504 477994842 569126305 413370749 711142839 601885482 993788043 965099286 203322225 890316680 650675869 447208846 642875452 428513456 647163620 588928691 597148694 521957586 104288918 657380151 954529468 413777060 59583123 145359034 887835409 404433364 939630261 256956240 747614677 87604579 75651919 758298144 389790977 396924126 697578959 460251094 398972375 421316215 704038899 87308868 39787543 519900461 797729983 80457896 875919666 227311279 108270587 871772258 682875061 116285864 192577930 553288646 458901699 120751980 877660845 995219284 150667183 170909692 123775565 924712105 382423441 927725356 362893645 461243362 442213342 422308500 264564092 346058063 705309116 261969341 109002976 682804900 503303307 747793798 405538024 208479395 583560883 866832712 69552463 358881749 545530094 28362337 596698010 20253972 261517075 619593268 285373310 500072907 745410880 305944282 206764014 208084523 329641380 685063395 790964825 595125158 180222304 574481150 34374551 27066032 727194844 986828032 829193550 681833551 46185988 118298667 722346038 638716708 570528639 128393000 463838331 501367488 237360101 853633483 324043803 546152012 865758420 318553848 198101512 993610647 392481491 948353317 628801828 52053008 500568641 867348610 772529513 932789271 413000272 106519684 851057570 779767265 888798076 621122902 183811877 268583674 50026560 441509371 621293740 770047581 940502468 846026759 486258468 134153210 309907727 596229418 379251379 906605567 279808417 962361891 589814110 939045870 781781353 557631460 651647499 835180421 140245678 1991574 535004141 19072295 666105294 392950231 304001964 950333290 326307861 986296608 276553088 474488175 248589644 659146090 549680445 409015165 234374035 583373771 247550460 599765712 737733020 906213234 207418584 441768128 290541048 781205036 89089514 670845618 833229655 21910897 501025053 816048344 109492639 86262263 412739198 726277960 960187170 654250434 48805038 619214760 417713901 835811671 833100144 539386512 382624713 367488212 305153135 996903697 866139540 339041361 796040321 342396748 257511649 324216398 194328760 688690545 435015359 552180820 474771660 642756856 100085066 59502902 722512719 146537836 519114022 984366120 76115934 494218573 232397622 861602065 234941813 657989686 182621426 69830866 636386169 937870639 930014197 11258840 955721154 881617449 813695519 167433917 115158987 24697970 737613302 553011157 897829771 423534449 472014702 361047040 892450856 664194955 576798836 159824415 870192851 597936663 909792450 411103610 299645210 895481117 555610704 204314720 448463829 411934615 544326345 777826940 165551849 750160095 681419020 423142262 770888903 624790248 19810552 84973254 330422498 222264905 164004519 466871125 182455579 333210837 79994171 935864586 659220121 635349367 134837037 571747739 531064326 779177600 247483038 604192006 402469084 478503564 745190784 398246009 123390378 980690448 42862605 876605795 452139226 387239135 453918730 478685997 446361848 270330435 772045580 607423559 789107338 260741588 316439550 908734459 554006190 291703309 701680980 289237993 569680900 253446866 114842671 770125066 339449164 743784926 304679647 54724537 570293953 289160817 434376753 423515615 756386163 531903852 919510192 576084323 907105225 58704235 149709411 725486510 93203163 48433522 340515395 5279156 297423607 768047793 90899767 337735347 845962288 586377298 880292949 398949986 690885592 682812387 611484735 715527748 228922288 799605268 739876911 541726858 854159017 63708069 483943188 843131367 902407212 406298897 392789600 920257013 978746190 368630155 529673641 430023858 971078052 295633591 394300005 52728578 273245671 121617349 967421093 471425012 659246792 109513190 789389157 904531543 774083274 532955836 293363026 605959396 330215527 633148958 827833110 237628993 258163344 264920316 596727447 207749056 365699418 865983762 203552498 540960295 808451176 70417772 909085962 359855385 654715615 599787639 320988992 46491583 167917925 258647127 228448249 55557876 600527312 696111362 119507838 162140215 584738051 900686992 722252548 506807589 651049621 477560150 754046463 399565371 39833591 998684071 863474956 417887311 274063211 534965581 281876153 95414349 382585981 218377298 285214220 797398882 109527242 863184329 968595602 394783476 784286495 206123680 988524507 274079138 156604544 170008513 327497200 647478989 859389148 773402175 436828375 474028558 715191985 618219778 658035952 392730288 451666040 540306480 47587299 86485140 185118837 258229397 282742061 87517154 742801921 526920257 278627184 34707767 827959366 309533690 718631014 119681577 8747959 600938170 100505056 840855428 892024837 166131772 69161791 91228093 552243280 486003998 653902747 493432547 468519183 646721341 532901502 755605289 24088963 518093222 611285599 397083736 959846003 138538375 841110385 691644265 628467506 952458810 234043435 604683341 646333927 441780865 698984372 586636535 483377868 402918096 817250195 560031947 392938953 904844838 420102385 504103646 869866475 526148965 206304842 324523043 403242958 922829303 973349697 455947392 966631989 865464084 914049827 111507956 497549509 965800474 462622845 46601319 30754587 113792610 226353287 472645786 927450229 793977112 866533779 226881614 620505116 772808242 578940282 540055646 671704944 190765636 190883665 822591996 171110113 577013887 816736917 470492420 714787659 860391476 710300993 929718397 343249128 584795644 452661095 187848559 900922139 130293444 463799511 39023048 646267663 683277447 792409208 774204026 703562423 50026926 887253029 97527575 330951615 618856484 947523036 804081864 657396610 45765606 410387478 161924758 451189204 568395363 478036920 109766934 891250110 402804706 205809500 27757218 952951667 465847060 56353227 720093436 756671473 845033559 966879104 231306024 677016768 217245762 560870252 898217962 772321394 880701878 332134694 931927939 192893811 469380626 719046085 421015004 553131569 236087789 559712938 38368281 790510520 323249064 959838833 524552962 743975229 407272114 346693163 891951746 838686631 275667302 273179812 669229855 347669566 361102471 383923444 755439471 238629499 835248270 476335346 360645237 921169250 455346841 133498512 813215358 971002867 547537733 552471320 167443799 915648040 879382105 274012694 469494201 824052464 131930779 909160453 16710382 135180268 63252893 780517068 434241929 101511351 689141998 99754415 928047264 322938218 514548075 191596010 610882069 739477839 722420928 455236277 668725710 891273662 611352988 919258531 910581068 777376059 299451459 589202286 818980667 794519344 553030615 751842848 591928450 845176750 751055761 749138942 678900986 876132284 339847965 989173497 240489108 547584279 495193110 819630310 908396161 879170202 685844070 719120699 729775877 238550887 431200247 124022903 449944765 676444025 7425338 781028601 680365891 965679024 980202240 556949086 261302837 257436798 286850949 960636613 84681998 436607522 116449739 49966359 98857609 735832634 215602850 111996710 27909865 124197783 533095449 847809544 534432941 592594825 390128421 884646996 378131841 364446947 227744827 711416177 525289770 55994324 69295980 89542012 200714289 49787415 495844320 810567305 165822530 266190120 666675008 157901761 617808725 596188185 972497028 708694262 628999713 351499105 320047617 143504059 592434746 858698004 927774712 879477143 740837886 90460594 293635915 625404761 604053859 19113475 165204390 384285326 776276669 138663563 631665316 962117324 202044294 905588700 113967434 369350749 824934960 225166429 191725030 187501805 136395071 210380762 706329664 964724625 236105264 425739432 8799487 869494306 952243735 217426136 345669618 281210299 639607630 318114867 74156498 646782033 821770544 732132626 361327152 661266424 322520384 905335685 375000056 621426851 163598351 360470518 19242954 941865191 653046497 517077038 791324550 190669122 974174234 502878479 712926557 584347885 265122412 588557570 47777290 486979046 776849959 3524139 661215044 56231360 813407262 649173835 967756646 554390000 168184596 889267738 685223768 558257312 41474489 663136197 136112189 601398531 968769690 974641859 526251623 135150722 954708753 116332957 827239035 222414562 713714611 84204578 226014463 14917578 637054557 456167348 658966663 157535483 247684947 831662490 104586967 442654180 944284171 9553935 13014369 449095140 61787650 500691885 212713679 127920924 734879182 535256526 945904230 155380404 681642261 803195328 467595507 953905053 17408082 867673625 963653937 836224514 734160606 532381026 53115653 322074156 944237663 163040588 894589459 563772683 555212952 918363434 869580953 796107751 181282162 18744812 729375186 456406321 781304269 268311674 970959926 896027245 32838094 777455070 888209630 582956452 323438938 634141204 444890375 147941957 917042995 605108722 628059371 846939847 26549401 983320082 104107805 300643408 148052616 874993627 729196449 386680816 140788948 493067626 136748779 139178729 362949971 989214480 360173014 438668996 920197515 512911436 204455749 587339225 428891439 512064868 848355436 301421714 471438414 528783400 451788849 686709946 601471490 484231543 917235345 270080331 577507795 461701046 245134173 238360747 353490490 440660807 300460991 787913926 184710021 631320483 128204054 868417260 954376360 658353681 313967295 546199146 240606536 685263937 717782264 316770525 614952970 283012333 947184109 529775708 871977782 63507847 871015267 833287822 90842245 594552494 135106524 566989292 541988712 825156840 929207492 113319914 971636490 538898804 425270458 926550843 244514628 510530303 665681946 835743806 878812967 350490047 487623102 524167307 578502096 489756663 749079175 71688578 574505709 710829088 895879186 947519217 838203165 45221328 624834973 2910435 996520654 683509239 632172508 4911898 900403411 450535249 567605386 251004291 271986733 415763933 563213596 78322937 142395910 210950484 860154587 192413227 387674459 728180447 329498380 399704417 330239866 277186573 416574542 559695667 179372076 704927894 287117519 540260777 951335646 798436595 332762510 252293439 766779594 106505736 282460494 800939694 509211022 202278862 923862430 849836674 165359451 921335270 299217969 51663389 851783701 872249465 80036139 494956371 289608109 327157685 830669263 130389199 256309834 870315051 565542486 927125446 19620187 946597086 931234557 77507521 392227903 703301071 137682450 301020583 611690085 27206476 872377391 32426068 451520567 773273275 70312026 999904980 397001609 654224052 204488291 284245305 69286219 420706715 960787045 532743985 13266264 577688833 157805718 16300994 688924107 786360383 300632085 498889254 33852941 542677024 723119468 411019489 627328147 162033472 750535256 37767506 244456111 897494490 262952701 312951531 101308547 938547869 93073855 388736577 283338530 153213860 179863429 374006880 355582295 164046192 271998097 283974353 235411620 785920623 259747822 411297034 726314977 903250274 250774607 868029836 49494273 736406477 980357515 194427496 285144674 625629677 973485322 814432305 70010182 230071730 777841685 407944171 481456609 580503823 302089083 102390285 159910213 199806295 658841419 228866667 920332211 748224215 508339096 951875905 910881044 666133893 161697591 18092057 857543358 453152793 139955326 397515883 186551178 248186929 798044976 569651585 393234981 331340092 58761893 97062312 984923076 914608122 725752034 120971924 95993841 426560448 577964751 126756150 282166969 929509153 94391759 46121450 13927812 331131979 443929243 111807691 529412769 626781674 297062235 568390411 205696924 936070122 618317044 778477897 670165033 328856793 35901034 369550012 621392923 949489053 584250642 313264949 113566458 110184415 785048840 410692713 667619011 596971926 344321280 867519339 773323366 308891754 206231575 499959012 103860003 216350276 782395780 852151700 845482836 213259887 204795479 601820169 142318912 404197435 891382188 495262975 945131612 707419769 483224160 965839327 6457493 448421765 665279246 709610970 545669203 487182979 112073423 444748920 998299308 489831397 815175448 279826440 529504290 458723894 485225363 825924062 319752417 26361100 540129853 880748184 677320725 754687812 870105312 120302981 13363912 789358861 535901878 547036530 596651454 686191443 819450822 118945893 211783524 827184619 28601878 176994272 925943805 7858610 798123626 461548475 576251326 314137927 809634679 949053431 637589206 740763901 682112835 360735904 782262374 107921325 276567720 658621041 650763642 348067757 614885332 91764441 40449785 944396932 987655796 447292622 523444816 155437296 852338571 974845321 342700865 937096980 470552243 634135573 797738224 681832832 556488258 798909447 853961478 879503240 341122468 759375952 556505142 144787028 567223370 313606891 953144581 147490838 205747076 999624906 871681778 454943647 859816945 77119263 16958046 690194098 237951361 239867020 978666517 154871198 819140753 241989445 452440962 241573348 679397204 256970039 7366164 760987527 386571432 886054902 814468626 832651038 594166091 566489729 93487894 42263428 786677123 842558504 174936554 441575920 57876137 307401538 826801579 967012830 570090612 573843621 18351990 307290539 564482032 546430420 147255437 370346587 767341210 289643346 852911355 580760907 652288322 787358625 595087613 474628164 685991291 462848205 582135446 778979615 757778269 35152978 864496417 94615647 43184351 848055351 10124653 586305371 64652988 644766007 595874002 73746005 981196789 845620953 220727136 360668697 642068334 11092459 360385618 361294515 200659180 200043871 385094925 721031085 8719343 262133925 845737400 372142648 396615975 274437710 520000689 40495505 931302995 660815042 518012318 752190080 374588444 97192112 67474850 844189232 682865469 352910294 242250732 234390490 204369210 807868174 573089375 522086836 864730695 366859129 201347634 554874969 118593540 482346052 902734824 900691756 783929472 609935751 871017433 938840200 618742614 246426391 381652721 19039328 545230172 109015142 4186576 199636150 754958665 417184679 305367827 352507656 790098416 263400671 97729520 874478457 749741960 617742054 840890972 101334849 962086814 691572784 797477268 535216865 764088407 525144401 603674406 337469774 908045044 829695934 749418967 946696210 114288711 131922233 236030172 379353725 828629836 859213481 536322253 982714597 914494547 936891700 889985484 472682789 740748161 607085884 461511157 18028083 774868549 938513763 545677813 196568431 189233004 777182193 150045009 177354366 856836808 266970987 948090345 582407598 217269497 904378089 586050186 688611153 195990919 23105915 869676889 259183098 385798061 971510746 384825880 443343442 853957998 870528075 276559301 876032425 570470943 35263539 115395172 551383157 4288044 726382691 932565553 556164182 157348322 431343729 289171652 178111473 731373878 73598699 601467856 453913935 365571554 387368885 709634522 443599597 768082837 932731167 556552240 638005084 349732691 956501950 571876941 943544831 435796627 896427741 977520245 624907481 492325944 406497488 791832848 665669403 850189113 742335435 149323152 956145789 538795678 919911454 129283422 43821194 773401496 924897022 627702404 502308538 309417391 736228663 693474563 988048323 356815518 582433628 953084277 298257554 200785821 976994618 571546630 159997134 632808524 610935190 89004138 930728315 194840845 570171663 653871352 618459346 637902623 494352749 760629463 55898657 122358877 708796119 871755825 844864559 99631594 572750724 735394522 720473732 554454683 327057503 606443578 42982066 904860036 538890294 699412808 332994136 799720263 217642620 48919011 708338494 545979283 587686343 362102458 298502908 73285266 8365349 866346430 168598515 364136700 133372277 621006358 113346976 73828056 829491578 417038167 925103370 13446019 101424959 151850578 629560879 188917604 457971155 557296966 853276345 566868513 881992123 976055337 205739446 141302200 236668216 899663416 578862383 646553220 721991825 647235241 432471663 705675214 520867566 975077301 19725438 852388112 800444766 723042856 827211547 696747847 27463389 392840353 465688445 694004752 533414217 702130109 789114286 671736691 255339413 105412062 974039353 853161152 855032221 397460521 666719653 939464826 365661986 109432479 292015814 847558294 179637827 624655375 289449105 331712762 2961779 49599726 498249317 344700462 60463593 294517529 143582321 998300059 519170002 492985325 743056936 285505398 506014341 468766962 502193570 593638034 248596313 930872166 161041486 437166858 736120478 99073222 109078536 905478733 510054156 123607878 746776005 835230478 802392517 695601662 593280271 988878733 377081672 7543083 459159254 331494882 971499461 261728764 956463997 480626335 720433063 544289691 301213203 494773670 839360535 34318858 633983011 611327879 222999780 440762073 491196979 749272555 920184251 887647793 235695021 335627422 143030651 153485290 10998248 576149916 529555073 422445376 546135610 175340429 1548206 203321318 852461291 551402196 701755830 665970051 818884565 335719314 671868276 864270314 998843073 112219437 243431377 944501340 349398480 179619064 382184410 582895817 248579236 773429331 546481228 554894703 259461821 203942210 847998392 60249822 629345414 798746781 434334223 516988146 464479215 941861813 152913273 19724765 105412370 595369757 249624405 64892320 295255284 911349552 480269312 858548188 105230347 164680163 908587836 56427771 729523247 491261855 834440940 356745506 420062770 128311341 919229394 4224781 415718176 880533847 708170765 927074584 760870504 404168264 988399510 449854463 769400273 184003923 247758260 184939203 539394331 520467567 985230139 594631186 116414350 75106032 636545720 393987099 808439335 782160073 567713191 909485833 362002974 635585691 995506543 162522739 697868858 696455315 170417742 539254792 178197803 628321518 356372327 663403098 518793037 554222770 365709294 58218502 654755440 5965134 590704878 839937435 700074981 757803095 291492629 568209607 355244358 840704103 334791987 804250489 290111281 875299085 258377544 271243224 885461883 944092646 592216402 394804783 30481215 140654717 960409275 920071665 17704551 503232537 769048950 622630219 732037255 535321343 304214730 132363287 501253141 433415606 330592029 706010916 791324178 941713131 583297221 401740649 236780123 811981041 217569537 789864153 939599963 34972556 917723327 508077806 771512477 439326769 703019039 411146213 604384728 778714206 856660693 134581393 241133838 204334522 152922982 223962894 368555441 649154441 826453314 172119642 564828833 244495198 378221904 179039531 830742585 760673331 267411140 822727845 931660231 272381987 218693471 63604147 232883678 668446715 284826539 49681026 448470694 589081278 444834127 996537419 104836057 707653859 667462494 716730925 486022486 606837277 157525079 203583636 808932994 297633406 45092843 896914898 173137010 960105959 946822135 566480546 618331676 948587866 733823756 234324540 87552167 245634449 805537584 502844095 435770911 158246437 356176357 42659053 953591575 796182213 471762702 891738416 658861574 226586464 793107847 985424345 630790202 58328508 822580156 663059849 133690469 881378709 77100518 543192335 880038917 420547591 60035121 896967580 758624249 157950370 171062367 879305376 768799271 188583090 210521936 911748368 825832185 173404262 756975928 874339181 424825253 996249872 947411241 255949888 516760404 799220446 842803631 95011559 15177898 4147325 507742534 119335813 566872290 456182236 58158005 584935372 873688246 339891151 794222459 926467674 383483093 239863633 997859721 794909719 945591060 632508999 110439640 840656064 109989236 113529746 375097826 826713144 487235324 673813046 603923732 877559349 576347616 544066693 93815791 452943792 819634758 154571502 499999588 892105975 347599566 159806102 881574151 438737746 371336860 903062405 487118232 273345707 795266818 89499305 853540190 675782343 256504933 700218602 969951890 848326634 301627903 362200872 293880460 111782940 806297469 823582317 81181448 362602824 256549198 32090489 602676847 266064693 987128872 221420620 357397031 352320596 825262622 674915279 1191796 512925876 611442690 556920194 370710657 544538734 441014066 24476886 196029197 553139146 836324742 528203850 157109944 422532583 582137285 560728645 882217892 194349706 924164183 101811246 991593886 722374952 672107533 288412409 457603412 8806312 812940131 541203504 38494884 472784170 156135310 904394332 409927215 245806957 424766603 506250252 772118166 109566676 565567042 326213957 114408973 443651357 241810216 106713970 850212334 508599630 896742052 384674067 334279850 427432347 725188034 404335381 487308476 653361116 717796683 193450770 683261741 958948830 409879251 481118530 549892366 239181206 822886192 738083476 798943385 779011224 196192493 913532716 675983411 275555722 425912718 671961213 340394466 734104214 162248577 632765235 716760092 977292119 831404375 385281316 287976585 496321870 871606228 243960952 875661407 242293568 953366310 606901024 516225504 294074745 558608670 867600333 897849233 609343513 696402830 144540289 722134456 858223167 412203420 38364042 182621840 916987754 811296379 544552116 327358788 504124503 948064004 923152909 869996355 796700164 374503633 894068031 765286133 633979188 290509240 607933257 654516470 840001701 696933888 75155839 649830651 758336972 15864182 451281500 427065047 597716276 671895804 761251433 913190567 150833133 427653767 780341625 750190516 676910441 10371292 673721502 91662315 745963361 925058721 162275645 675550055 561535421 583197901 511582982 676669855 22680485 959770606 566677658 196227875 632208155 828735987 524030885 372763831 193131420 903949407 243771049 96938275 661235743 523412564 178046133 511477454 596165421 561353576 713874621 34570627 507552007 268680475 542867305 387971562 712145915 648457421 365658137 93312507 591358364 22270150 832292015 543360389 524732118 176254020 159696783 696933681 74733041 82543282 515781579 77537444 462446242 255178669 862385175 580994346 246528087 773369679 471672343 628906036 54307875 414974508 339759840 523670758 594643218 933238276 902362763 903000409 244321092 457452125 559367345 467132497 318961901 390394115 980758054 49460683 595734326 214636725 456110060 902339880 843718587 940381856 252881733 409484184 517896105 492055619 409549250 461323916 850567414 722865333 188018287 690385200 578585757 64698132 816836227 221206006 908840373 97851215 588817040 666666628 491727066 930288401 789724775 264190004 269415516 124381094 850071278 130478717 938266854 55713068 277233867 7664580 211837647 877936855 223659535 670907032 826661853 46461116 549235453 804273406 728346150 195643396 255636803 829739213 991899338 945743372 214208640 231598869 692812338 291776315 760819495 757596270 325718845 587205466 58207284 821612831 567982069 695585170 847916034 699180815 843074791 291639266 70930682 869115249 691429834 453385438 187742638 824711956 267086480 777472867 348958128 499532579 64612505 970371256 531204064 962651388 745737214 665511277 793889196 458613513 386167986 923087616 523683855 400262185 699375960 492014539 819478950 583694285 771609667 395235427 856875481 848561369 195104524 237529966 910836352 152595827 843394510 352089000 860749452 464261802 108875598 87340892 438549115 31979897 960325775 637313285 752302885 27409170 534543430 804467530 954197473 871398278 868099146 386765759 577790333 649411744 791923053 874933530 650587184 364998800 533162503 165132649 796762434 375898045 476881802 661530599 646953326 681147352 820600169 148449434 133382524 726164173 62561701 699543223 475760619 952186830 609779610 24611942 591043887 345496207 144881255 414374658 475658695 481387285 949131751 844303705 688293650 279169980 236088441 320560535 443507083 530359658 997640889 279076290 360757584 956523261 509835497 223991673 654414354 331862983 276093117 254575235 753135440 160477375 349136655 132083537 818565854 288673858 360653239 922146895 832567328 201864506 502916765 364263383 152655809 897668937 388699272 586719790 792940694 859367515 303086176 948440521 91937287 510760399 985995000 214109862 908550717 136284094 534611599 952921871 493734479 330460738 260431387 17935758 216588624 661573159 766270459 945873557 630554857 214921210 114660331 143768846 862957396 160035996 957897420 267143658 538394892 330506506 744907043 932391309 686933759 803666153 748575697 191328475 672154031 679878348 359948198 134515797 319259236 805199452 311615479 844052849 294577662 169440614 843299104 852242405 822159196 908522273 396898836 187563703 595006424 93030183 759583986 603609322 120705644 4103576 253684679 680264929 399377697 271050387 278805489 38887481 508338143 1349168 720565164 850626487 376393284 297978030 165464410 694049976 900242042 524413513 47418682 64916562 400062548 517592778 297030794 21983616 391623832 39046553 352024743 552315524 490230528 918225432 611076330 970120206 184950291 332286913 877358042 608512373 999810143 516382570 613039367 426057747 762644948 461378217 652031843 279186962 699125580 236512930 506848896 480445452 690235929 422270612 777716451 51102029 783362891 230226562 203612140 850291350 629879324 985343451 505891041 412638762 246904318 86812241 564062613 454481150 433410961 144233149 908047871 733393148 591338905 408715403 607417870 494650165 44917437 588907643 371730001 902383315 785337364 518715702 227719933 778132672 157202853 528332325 932584384 196595795 581053841 949003899 92244263 887171643 492811483 171411091 677224370 425173611 760732806 721495373 332196253 443363435 389348323 628652955 333179914 821107409 516631831 77541571 441936644 699765404 649469660 647364411 267648254 347396170 581475350 793419732 57310242 753020185 458678981 71156909 970236411 273467301 238671799 500793814 731006442 52378779 236316223 227803692 472268878 393713573 138703312 466537935 593117958 668110966 989699491 399615820 784470143 899305294 611514816 561722016 771888690 683276549 622518423 223023851 945099724 579681466 156394878 374928531 648868797 146037925 376395771 831045520 385238065 279966934 225641662 756538690 841940817 209185061 382370795 15603351 157666359 709112055 914285808 55168495 750155220 391107291 985410935 800057900 489522554 928573931 539034513 115710186 830423687 727545390 672771129 924116004 663067131 624391577 446184466 670803543 683845641 364114759 57230925 981058924 82526268 951680987 918910333 82162167 547007006 349260348 486596954 754537967 933597645 588885821 495413758 892340254 122846229 763690874 665990930 351196619 764110028 970727677 30015914 865416251 373719903 275312175 465189631 896136634 623480886 848254779 645578002 932179396 572390253 674646887 10106662 142399196 424890690 406757598 185704984 874440750 754554352 680545534 996888636 222059614 91853957 774863834 975638432 505472090 149971735 805706811 113536160 612996919 932161536 331004427 712310678 671393545 824843015 755889958 42170283 310345388 562585212 31745466 410918160 222534594 783272981 762103431 802038626 288657408 303054570 621601276 453486231 206464020 7171022 101865749 23195988 102143693 704777787 129007964 316002533 789692901 153783822 961229805 475476852 630603532 625655336 330996979 186469012 896283618 659790380 937085516 881857931 859425841 300187822 822437510 983508694 999524617 353659160 473199955 626546828 179155195 448549927 601334781 689855648 914889931 806928536 907201654 675868187 171818815 476341482 430693238 195847353 299264472 1840670 34675199 983209210 685029815 462726684 273567308 130047837 595578438 692161784 909929849 625614102 668016109 810515388 27717306 4025127 656465510 334426188 489882 123256652 611192683 195400807 192665288 231581982 375736696 506084400 398477581 72892153 204477352 368040007 705691125 560456813 250583049 69165359 809127359 966373638 893297070 786211726 424884342 398025666 173195286 726036130 534401761 645545558 264377342 131578335 983494978 175686638 676699739 450700810 727675031 977169364 122802402 612778138 963949261 860621660 498162242 433231562 625290844 657244808 257940805 945639838 348324848 531397514 887109121 808993646 538651104 228834458 682245689 688830296 789342842 650958788 613384364 299184643 277154180 650638926 559452675 472393410 171635054 173662444 410103599 751916827 544992668 733997469 511925025 445778781 328882930 821577751 578444557 681124050 568370276 904291670 367714306 280148213 230909816 721847004 778952222 826110896 914577219 612268809 670369427 173342507 602272460 22364927 944442391 991107553 330307828 966520931 44162860 471560113 759011289 591292162 468001906 295017899 880927160 192854198 477844553 986502604 678056632 391567608 127259265 235260220 251031310 84440044 11726607 109837587 506816624 254978744 923494352 363344529 681825760 115030560 437734616 434889058 311883206 653486532 967577683 288585125 868008499 547557331 406420212 415212646 575579810 55722726 25638470 327323800 750008155 827341555 299459078 97527576 962510709 554650266 911752685 992146082 354398740 497248862 381512040 927125724 906356111 90483044 360710744 490895424 897477606 112210724 897102640 200952624 88109369 28186690 271034400 352203138 337325540 932292012 654468242 32154904 677791205 289272222 980421159 986365781 27639848 544704242 472528719 795414436 995564134 24693154 920983905 771659888 873908610 8393606 582264297 673327258 749161395 899988202 271221301 691633497 683352939 867807558 107429697 748570495 539330260 929524839 645025979 705688260 316426947 236121044 918535504 996431928 740482389 1025557 772273210 892424404 461944804 374726298 490909997 876123248 830174956 196320995 189324096 844318869 862763510 717740214 88479312 807449514 831697089 286226140 515652324 282318173 278746756 734768726 319353407 994857903 32074693 900120839 142485107 810950949 599121995 416905881 628511305 750944665 782158271 836551753 817794838 265962638 522937240 27194912 214735379 646600331 492948457 751247823 612761457 545532398 308800916 777551970 851883548 600480333 68469888 188490557 692716615 621520205 666401551 848354046 732319810 128081215 769804363 749239720 135942514 139718301 771456398 489237953 315349031 789836408 804680620 307754901 273984652 526558979 910271305 495125835 65414169 911928475 343826809 638764172 162741177 986365228 334133250 115927266 381679194 404253942 621326740 292899814 653300812 156690172 577342924 997206198 802415760 224891652 236696136 474333150 762334043 966867755 724542004 452726782 799920471 928832606 779208711 107937880 54826740 412732312 508040136 631233490 43656233 779007668 194547570 92000845 343426713 355871044 272201608 518222112 966931676 873113716 401896351 535505231 620688817 444353218 156079752 488994477 852376886 780982674 217342208 71197528 627806244 442426267 174562159 629797097 3671296 902997257 869166224 176284254 21501754 396635953 321640390 699440709 193372969 186364525 540665716 242730574 608682100 509676130 525256539 747583625 708891206 992400882 448164397 226970002 907873236 990872036 586131586 327357559 120986575 428950017 566611556 260207126 609266081 75360438 467263344 482991339 773526390 189664975 330651159 172098158 694442443 369539583 59983428 272090071 13418384 384375911 626158205 835840539 600380245 200369644 337458137 752479465 353918767 756612296 934775062 298897728 506076768 408471067 524152633 243812129 342344930 445979230 399289954 425288000 303392115 265889371 77275590 32607591 300527406 158664238 92085249 261906638 954493850 285634452 804053861 407139464 817507322 684080183 321194099 597419114 431492938 494380434 453506032 79552071 52706809 867385604 116747158 759949839 79897203 608166338 818165356 981299960 109989069 559156441 108984029 374817717 142545525 313728592 416128546 356114055 851705244 818843413 287991863 80714964 97240887 897715725 154773373 848053394 956353696 201671860 480927740 99316229 575605352 121445040 125159505 620776823 540915745 423361077 438676132 616113735 911874989 249859859 359657874 818456778 710328131 692003409 243035709 602320544 371907807 21313859 33332848 848804277 272458814 44552051 806933526 502372758 80093891 122918533 469583765 329617326 370864316 516078528 908743486 645605671 838875468 33798940 257934230 354679531 601667068 649007961 614990256 425385489 346453490 562063593 328839931 578582146 363592503 124689994 555717455 241324200 969895444 640152836 255554704 463002363 378737263 417593317 668579235 420387392 178293628 561824095 678167801 405871531 874082660 317613251 414010129 901416476 580970680 420165901 504181705 860125545 455964968 753211632 124063314 44116392 481948457 140655664 229887526 423470386 460417035 730220183 50957749 893662720 788365232 539803315 879032502 781967294 218452037 736688992 270698220 8611019 181835077 106068945 171885814 703225076 782283624 205210723 695192981 691648684 644183038 843804378 728036072 150349336 673579844 171875998 66794888 310139520 888010814 240093597 744501072 90877992 863807168 989816567 929460195 172529044 577944744 244608780 369047078 205698991 985108805 727637412 1480080 392137772 936676766 142500183 672594309 172048599 801330135 447386906 613937891 330585060 873601570 448770489 284851929 801132804 197106544 217940466 554264572 616715337 338930154 549650841 844703883 234337863 79660479 614360387 955641602 286858777 570938242 424557614 200801666 598202033 232988358 333834776 683889189 902900648 115670317 881082189 286153567 711105070 55670832 204667424 838471542 907427778 406125472 632381986 795622996 840919170 889743644 727487125 804146947 128426958 143844422 64653073 775277763 746023812 266739349 75880664 910751026 809533137 460536708 546719624 769626361 931264306 601317324 943857919 64023864 904123760 633084026 290930082 995530179 599815189 700969933 890551323 857664252 839278299 560979731 221676423 906304301 776245455 590858136 536929252 476373998 359855877 442338312 268631661 320752055 185276953 697302031 807413109 64007171 689829031 657498265 107196826 571598042 679154747 303238837 140957949 144403948 38988418 222580775 941910228 196007658 219166594 894782468 152006148 509807894 480426824 140702677 387602667 558622391 131110862 991444779 268447519 274742111 235635383 811932792 877483985 258500468 867433394 591853773 468453021 117559418 526303087 871582301 926170637 136062291 105356525 775286741 645246610 4165369 217338926 791078366 890745738 294392793 848766655 989974445 754260835 42326254 615947304 255247581 356073947 870156160 526202900 779796327 726594914 491173321 573902259 272388331 202487937 344364536 617596840 722842828 823836135 219422885 213408483 249591877 830125836 301913316 828383591 296720781 872112943 197625323 56019206 626992467 502433619 992795611 77862876 943707823 384837745 649777209 827772192 920405606 613420015 172737959 532528692 99370010 613946810 648560409 903678906 451125602 563719723 226405127 915596289 518914846 122896611 874493426 343799067 961921742 714161227 943380714 816310588 667235839 162348346 547355097 553068608 476476891 601544682 664449397 939619931 832854399 155664913 940892515 534635301 845229740 718470724 603917286 181029827 536419245 602886269 80305273 828580580 562966528 903475297 173775271 762361549 765568971 81401265 561816875 553944124 253329443 458835055 767290219 264191872 88031214 754322500 665168014 852407708 827137143 544443786 88396832 387757845 788594758 4879302 381429787 733537974 172161171 844736351 898037927 342909341 386165175 604522189 601152295 319143083 710619334 887604558 229431452 727994856 671804766 804997485 1570444 370895863 54795775 725526164 440822744 166449314 333865397 629158230 991649432 225388989 249886388 623652590 615517332 819690784 3387317 613564479 486362457 385758467 84162256 25039518 647845797 845554785 339369289 6063884 297245689 151177026 810697678 435480149 644222779 245240842 377821800 474092419 428221608 651482219 880802724 18507910 372234502 851922139 307238148 381103818 173509860 912315366 401203905 90490016 703800605 245728352 59451099 502393518 399925147 346540851 962383891 383736233 150251743 977953763 327744187 950938670 587261389 506304612 326467082 593992203 818056061 181555719 148944785 906108564 642705587 455439508 484075868 229569777 15918765 321905107 934295982 363428914 655034160 428498295 428276073 622769976 548274435 971756296 684154636 836303495 856156230 396375093 992198882 34663831 495002257 595954039 839655168 218745712 182685974 301600687 858133615 10517303 867471 179915749 932574974 3209370 833954376 88740620 292817109 515723444 853530036 121415620 696071887 335008517 552709933 714876253 982247086 846015970 294692078 695697076 67362129 541364582 72835166 756404918 892796065 789743764 663297734 807151552 145101958 688402557 396251083 748130197 440387255 135657006 432493405 143942323 463398582 103615250 229464519 435380531 858485181 428655739 853356880 839953577 470460970 82164623 99008019 759428175 294986041 165526133 179886984 406104422 259178273 304470762 244449541 419327223 209132842 703365807 94992335 483411774 963286467 398095137 300441008 942795912 774667673 989644125 826013309 278690480 752671537 119877225 171604734 63071175 796237446 196548554 568615571 891309283 157812698 151152186 755047694 783743585 865933085 199439686 565138221 40021919 508526237 202191884 991316921 375873730 750887033 31335905 492744037 470675754 281305923 816715759 647789798 521263442 356263003 94512050 680772114 398566153 745823250 319994564 237853694 590007454 253772251 451819067 434410025 166359874 490597154 563115439 790781508 991599473 651187499 5675064 671068793 218843414 576325398 276447240 744973223 152082422 734959746 385296851 614038779 304679773 3166892 708833536 11554029 227837001 249869647 251326926 858714009 99259329 990561909 687960298 748160263 431567750 347815073 409015567 341419487 305864600 526616343 265460190 727792813 304576705 579165737 295320674 386130062 173646325 492761836 822762610 922398460 88046308 831116758 281962946 549776812 927857712 756757248 568762983 50280275 293762942 640146685 395379096 572672878 849553671 702848403 669861686 498715924 164081025 970041669 145765458 575093459 273117709 395903905 699942837 403833256 931989997 861649113 373966426 625253812 500414565 813641885 203220073 345819732 494821603 205220578 572432012 976338586 883411747 821382819 548110151 16360173 667447753 798814087 913920441 341186638 81090491 630300842 506849713 66323364 530775549 850432148 244358814 332490192 38677604 366466800 798674934 165511222 685255094 680120467 169623668 621692051 782663214 330895014 985044785 260359420 397494705 696741475 837280169 329939396 882767585 705391063 526803326 443484910 715677233 640637583 700816365 421426056 8326805 558883804 518279346 345671243 95440 297094125 230960871 861927364 478526324 352471686 126593310 389882140 535387837 831340047 615092644 707260732 393143524 941544045 508134085 960828976 690033589 557445105 207677655 827997547 925764367 237688121 597524914 72914116 736827119 255705245 200252892 566580950 827048448 992898678 307498073 951158778 916715620 53248737 101784816 641353491 319836916 802904681 442349951 527975418 880908268 903468441 823644981 476316460 955218754 924147329 872713764 857860806 499584595 624954584 206415007 671782323 764751350 263003068 403111173 287932943 812735736 317973830 250992417 434906532 15795413 672721811 922339858 872902288 536548877 536565246 314868949 572153466 697916198 563020382 473472619 585358899 883685397 465570262 446137537 513484155 45647481 382409638 925455031 15935784 182030185 814615700 254010974 578039618 273959662 336469252 349557089 263916347 911304319 638581518 56260618 668564107 67642391 754398962 221502481 481927058 658735920 905250585 790179014 326049346 668557644 605956688 625500971 209500968 643509583 963243136 296974452 490820189 256418693 64874424 429910176 617650224 851182188 958001739 993229652 879562642 323324317 562800732 934412578 626680083 947618380 819367297 448685787 543774996 534002770 24277347 966832068 91059167 871906150 637504417 623657753 744642400 739031686 60881565 170825229 262878962 621410253 263174026 368542271 542595311 92026424 606599691 934753733 351281779 168586373 718551194 360568704 690497726 946345520 813160793 116993713 637376424 496934484 516060818 354018106 928372642 514785875 477223179 257038285 100085932 890387127 174217998 229805809 958291634 479230228 732053357 481458167 106849563 805138041 68515374 824557919 923511341 722223442 486179230 506185475 12426713 134099278 512120786 402924739 879917555 835049474 557048440 726038609 750624915 502273506 232471407 85935772 953945268 739066932 619369727 105877026 678869048 780183295 443107656 66392951 256415418 168818636 724805175 895603201 364109396 378714634 176998006 590209680 500280434 802211322 49454521 874978303 497240738 673162085 266141892 546869588 706821054 157237428 827811029 712002742 885577069 823747275 757257617 838948127 818515122 949414706 358527753 817889189 413054269 814188091 78030482 822376114 918920862 791845710 666094836 789274673 929200387 982381879 99987343 357025062 857812575 890902705 93171675 448206625 355211932 473665893 264702928 827527438 582816958 700866946 713059496 950322095 469728895 455419319 194889767 578374087 262541639 184825133 471878735 983876076 393691422 680812222 89572920 871610899 916697873 770560612 314062662 784065607 167008022 577801804 588491721 766221774 411894077 662948032 57244748 455695358 918870962 543043033 464685484 745521399 234714353 501742001 555384499 256586285 593505535 525837723 559307645 576016151 788513538 349164971 470378003 43582501 300874083 178162703 170071765 994091179 919487883 905482322 857254408 217366681 958843378 311019917 53943292 975576603 735212459 309774423 919499313 270756636 767729969 998957084 79708856 965066521 709634776 556785004 118440287 508977088 116365638 384357697 830655759 458642861 672500546 626974076 155083849 275546770 8221285 141033666 332289676 306694030 104789628 550534856 740521950 96543932 274728161 661204523 630788662 359822383 553854215 401658332 550101066 448514763 233240705 928926111 458980757 113760297 384984413 552621244 121535466 480943461 778192644 936824327 654984559 140099235 472642537 882000463 27689723 420956194 839797577 700604702 107215961 280393383 430832495 607930504 17000391 77291664 310576962 737706279 424153804 395488366 506419116 191460417 388484954 183452820 388907316 137767616 733934905 727848181 346770347 861737286 28292419 692801768 362336030 536161720 334306286 753397664 61846772 194345642 381584645 657840103 782747362 826195628 59105186 32329933 214946960 867063849 519394175 12675091 976559900 339706783 386471619 243171196 630236625 78420037 362213991 380849468 644023999 851649928 976281737 812979422 919668683 94737242 810716174 703389903 125734499 512154845 545272590 143379215 708643894 837382132 782570048 79560006 95561561 886100834 378512163 401629835 741723795 195567749 17358395 735688282 845488977 541370848 614464519 582645775 697294624 958533158 885085467 486512599 289334569 721852579 124226287 552166571 923135705 201542098 662768439 763865737 706400404 457646366 464990068 387314159 113509191 349719817 419656708 859430230 364285177 719861415 48299513 59275285 503534567 564282479 613551288 20868963 694304674 11854664 191337028 789037776 826154125 426443026 707056617 877544728 104024941 946894542 600865517 300971085 493653275 161526696 540948501 554365662 821170189 646462088 521919254 389845006 62009762 914231229 801087109 924362965 412731855 363275992 576931621 319011737 822657238 275853277 44115527 112068501 378987912 798983063 724932003 463426626 30633335 455101046 779247667 756062397 838452059 968318453 533224808 594654016 8316164 770919092 502351654 368795716 18096053 490561600 269773851 704906378 511199776 604360410 764643698 276183009 300669404 426590350 44702378 545714911 365097316 306354960 477903077 85493718 419057272 322044649 357149082 649862959 757538495 929727304 962286181 486553850 728668092 754017824 584656995 375334710 504450716 919596447 558307128 953345544 973055425 446356155 603693761 112547596 731344339 86104442 29203014 356967937 314492990 374033351 713589339 67829215 73271252 348966072 532620476 759564431 234540748 767102327 558022955 446139319 187208721 981600246 215173091 473297205 558814350 953052501 567913130 932106636 313766508 697020562 56197473 986532354 786043796 188558542 677657295 590848912 968012022 296062597 950556113 825454159 770143186 837722854 675676654 728911034 728668288 333241859 817567352 508930983 789186741 826980394 909119435 62488201 508868471 125676535 939215845 284703691 307200079 86560576 741859393 142189532 773257216 326308882 748556478 865648051 388042590 245650337 179601779 676060268 197864362 975491589 572853988 845942092 650616511 274608218 690820622 358493740 257475217 21884954 21434532 711061025 976597856 792256267 627649246 523959825 374204298 861560065 622299075 880287259 397661481 234156901 248127083 763617084 83414731 438922851 376556587 881289632 485798240 142567455 517080620 151261619 922593836 309100267 926156032 458572878 685109925 396462713 157080261 543886529 355429953 366728139 496333857 255796615 525757417 113962246 243663881 170037823 133770645 564348921 780147207 33588472 438627942 42037674 627468727 491917757 723988100 217162685 8222862 47148271 476761577 932724844 210543880 703456589 749957155 398331778 782106492 448509929 790208859 724162328 911553058 709722982 777474855 756121703 215966321 578478154 212986353 687107916 217094874 793952021 707298575 553634790 827966088 114574689 137738406 339536609 937279020 869158061 901395179 39921327 790561849 825092802 428001619 921004370 621683102 448212733 58885063 790499393 462429453 278754461 473522770 172237764 216331734 311792320 297314618 958671823 972786705 617460921 268306653 849000519 680853002 681226136 977536928 483474291 324598198 528267184 415191534 566863241 141316888 396500918 460942387 284309934 447871567 524955305 590887617 971529376 191963299 231374433 353525056 558414258 542064806 995744770 803111949 615297338 57567300 51543780 880171449 428177950 556867457 455466673 824417117 738069249 148047993 513228625 14955517 101700693 295529889 969162303 730558322 21266301 348826985 199649632 948663663 928378597 132278432 466327377 625815841 870022612 494931732 605807678 383557791 834971898 619142847 981053258 233574852 941909203 662146516 890438894 498608847 206978980 165338978 324628112 15162453 905431348 596365657 555643029 349560 14480375 272226544 533938834 551049421 635068130 68256124 800689403 914767508 441732769 268652736 189617693 783379799 376732158 728326861 670404045 937311830 570081091 360471633 509793558 124984571 674652737 446121107 419831247 555284223 644689455 684297041 515311761 888236549 735073322 940863272 462169982 988567066 912027265 240341704 132893728 229349515 547083053 255584703 402383619 978683183 915560926 15015132 659455302 544604788 400690895 818783824 74830291 945363746 836823250 863710815 239035936 797809194 546114998 952775065 650023931 757855587 687816797 759900889 346606357 150123285 179813470 632679265 762242969 241203680 184064338 18337676 914262535 40179584 53225303 575280053 392965949 290947621 636014915 829144455 631981515 795665212 68697632 51100584 380512977 914652507 448710085 667643634 897336800 253890323 750510538 873740194 633268339 749735477 583237434 981376716 383084485 402304101 880298387 338874122 136463877 49986181 6252380 174869857 7370794 78961148 993682356 221101138 166250900 987461441 595799378 661571609 852214139 861554022 254209787 280578620 540595233 575144233 435439896 368400744 982306328 414814917 35790373 88842614 684811461 565259965 93699184 640363866 103636251 46823319 438916039 107181862 735780445 228467644 485421316 17102878 840188230 949819667 344229665 924731197 536178722 971824915 535921389 388967881 459133588 401693471 438655641 627478514 475257414 44966250 337330945 907719391 427000459 324961216 811649572 899887419 257483242 754547974 820051622 493964864 344268338 570849624 789998694 342109300 971246904 984588560 376139326 281171361 291005185 163912399 740656005 782178909 237706613 516109423 852436445 398447726 774705305 345922772 338782662 379302439 760939633 469082358 362722959 949705394 400178115 310781493 281294608 136699152 915354793 187233633 276556436 380285722 227726038 806327222 21030614 785764734 260983621 493126621 120030205 207551400 941182884 102332976 655498541 423500941 414911681 150822234 970693393 718712541 181536993 672807676 383659859 925608037 44857866 923705369 444143385 208381940 186532179 605354238 755929250 478322367 16646030 43914956 850190458 416508639 651992990 153768403 297434211 787595772 708365409 791747573 385078746 107637036 253335289 934785967 799499233 225352766 699023855 544938187 98024568 295298588 118712667 978876391 122450436 382658794 517068413 134783136 12543422 79140112 883054585 693484032 519184303 332050066 782877487 646084521 184678118 754635348 198347124 474750400 384513103 286202626 800986892 68039746 135282164 152126941 555375383 955490918 655944425 796025879 349579778 16735925 487637323 382500340 964331891 922824232 20474804 421168591 498157280 208210263 364689380 921381485 471625292 68870785 52759492 376084707 140341826 50532035 981949058 339424866 167431781 697114466 872917082 380205425 848089406 148285142 224858812 927521959 95404680 542105670 560613204 857486345 625076791 409166987 16355187 801123729 618251883 880165459 587896773 813312471 32230087 787946898 699567804 378239059 799330989 279073359 710566538 179818582 178219221 326945874 331012108 24823376 199200498 441407447 138096483 508959512 228600204 69801938 226995452 869077821 705750669 320156391 88263067 66904027 343365165 756634495 462403852 571058380 312772659 715871755 109919833 58188634 283137273 193461122 904812476 750596644 734938336 509430587 691961583 570621183 525436722 744678781 849188448 332389273 231748064 141924940 968037866 344286600 769713925 573793995 668619879 42541279 583124201 575420341 371410335 482948337 441905788 350814934 626429761 957644617 149763177 965818301 432649939 198339365 191644663 761410832 296836547 579408656 425587478 393379092 660413787 935323827 533057018 455766263 843067826 39706725 78710657 489506041 960063042 339661942 513535048 202213940 237083337 207770530 303019193 639444984 24392810 872487027 62495734 763974589 128355167 673840701 281314964 735917283 254366490 818424632 647383436 957929883 435547829 116251082 554385832 153266338 166216919 131729597 232281683 588061441 3114577 822625446 588037111 460491070 245096999 745584298 504576012 227585794 904305202 126198904 587282519 709927144 784521034 588897362 947466565 782271597 835001143 408746766 346439693 807769834 578615304 801419034 427346004 823872305 539446727 976644381 291947907 297804822 180305917 470890645 576287183 246824332 499584445 483749017 407340522 141129058 378516310 152222279 728047845 469998723 488585778 21013094 254221704 224535823 740007402 198236007 352972570 852988682 703273976 645775401 885339811 216409375 38138306 464939091 367780184 474966701 340430324 190785755 561633595 525893412 411330844 769271689 322846248 216193387 343711558 128413108 229471968 767851900 779300914 460982757 626462607 311506303 385891118 307245733 164023749 20907508 237202893 679616881 622104387 806566882 215027164 397101888 543256622 204812095 245757702 339307575 880735586 339431338 35444811 57064600 466442515 872629520 937305726 132097229 858936094 874426120 767466859 711612240 649942625 877807278 991606633 459825184 905984475 623133172 707646943 128098712 336971188 992806835 367367986 2418251 93398721 991247234 400470611 680193329 62842941 110745082 871605673 306260359 484556914 278678170 264460464 378023443 361887105 308413939 652587005 723264568 503484755 136560251 285118725 722268164 981161256 398604877 786049190 141459676 138313479 147751073 325342316 920553204 301082082 608230116 562600671 348876426 699000503 374252312 516281975 347168810 615103523 662207221 804775413 728345865 222708704 640149192 566069701 832068879 652857657 163478309 132099483 80543513 874556775 101100104 190749062 608919025 172826490 643193974 693656294 811839131 118322258 502457504 189553110 985800834 195263113 747727612 156867376 281071689 746748486 13229204 379071533 865321381 854223169 121876953 116606761 179215797 977804598 13541423 503764988 825664409 245603739 86739922 646298578 990135042 437710621 226647225 227931250 714764381 780608810 494226703 17800689 455253933 461461617 615033084 972943487 533490065 318754352 127163897 609926609 899566317 489968595 547591831 39521218 665165578 803949747 550107272 859788699 569535096 698811399 291053398 633241386 970417218 547192513 78179577 445640342 924420034 2324693 273462500 437995771 416621070 723310812 529114852 334515008 273647637 288196912 524528655 738436045 377392969 347237888 713687596 908358451 386712218 851052223 67519786 884325765 521186763 915457926 58080328 129063865 881500710 486914865 243659297 334194914 862927034 603213387 268805087 154874407 123489843 77771881 547607570 457082084 885489841 216742677 728635757 897070981 992567089 75181232 968875091 480932081 109802635 352011880 900623541 145464633 616476589 457041545 129719551 290824446 958532379 170517403 569948368 140885239 884647895 499157763 830170585 355119884 307841548 515238419 225297747 443729201 66267726 12182218 186562335 557043514 627703756 182684629 252934280 883176401 708999477 688151126 553540446 207810323 705914817 223841863 491336754 462862938 255979113 958880646 33470198 360140815 201269732 139954066 860298193 774031445 218386083 727733933 86872611 208542715 663311423 923124234 308043319 869787949 265123594 531988861 861598325 967512974 212391801 453598289 21644990 991201143 680933994 341335691 401953822 362905463 416000338 522115229 635493948 550033286 218010203 188031175 620097319 814913694 843209726 81510795 478748214 116109100 905862008 940434841 357021308 496234504 36280380 749090852 357229776 685979857 207319562 233749126 454953160 944514606 564457966 71816500 354119481 179788550 644145653 911202163 919811001 166096346 906494312 555424137 779308890 15700943 935822886 794695136 666480675 470182730 307789447 180514436 747964456 362959977 234849163 769870641 306616257 957885540 673632724 822916862 130764431 192583493 483805826 153019591 705066251 587783031 413052626 199054275 531507561 891141604 449095828 541316849 614758814 79936025 612246914 497393209 5581319 752462402 393887677 124080090 932275929 478237908 660443669 841089682 165876082 293954118 269138654 831272761 879997949 203209884 368237626 708064055 964531881 557610932 941295806 266840457 477089456 560508373 387989457 939318266 679774967 45940194 601487768 148621422 847601241 289696378 112020176 389132823 176609550 916805927 29315211 686034135 565746624 484873256 896242587 929786957 507057266 871929158 435103624 592909551 62531995 482792859 647808490 684706326 891237735 146808090 173152545 282298571 822708305 118815841 965407907 262553926 371413797 530088933 803451370 208615412 976296777 901258008 878329585 773622758 703959856 651012044 992614338 216001414 769164550 72499246 952210183 825374082 628461198 339652049 308906522 313635362 788215605 673727776 879751806 120314426 407027454 161115199 519904349 848763705 412281490 568148921 186390882 959856474 311049272 888905622 533454051 848010492 572723317 520187575 872929183 504852316 445305698 444176364 513051375 766415012 789553869 362019063 687216387 37292687 670675154 980974015 235114164 248045974 771055542 652390883 110796396 477353497 142218175 189882534 815066950 345024924 293466744 294161625 136510858 57705879 497628104 415440513 180309493 569020853 795310507 701098607 37785857 564256952 654805966 810277549 95278819 802456410 740409171 587641358 485930951 480585827 983840534 696941 39858806 218660134 685509918 144969561 870224392 921062155 725258276 972199113 952277704 945031248 68017742 536023519 239739993 672162084 540870276 402356995 825367612 266226410 358355715 474102273 613397278 711186088 255177522 585526348 177765326 794745251 327697922 230429634 393913424 857760417 670093109 404145049 84402152 541783877 419614821 719917059 406985953 962060471 957391004 224301413 405639411 686268742 780714695 452049631 296469423 173774055 994374064 419991198 473328243 140456780 779817204 603910119 904296629 352030853 784253963 650227177 883781832 278573497 525719467 22383948 216092583 433673381 393894950 975179412 387263950 868445557 544583633 944415076 806274719 428799061 833869069 614876151 748461706 320514556 606873863 803063789 834258238 288107259 224781114 939517498 409139285 646606664 159600610 487344610 64577710 363636204 513740764 242477021 1071832 732155726 583600695 543809917 638589059 389353070 305610449 235445244 654643165 797845650 8350001 55268247 549796189 832742307 735769820 138647228 256449233 857444148 56694120 167936590 281978933 821658979 871161799 691069722 519332152 923391132 418867490 97256180 795443269 263351297 472305592 463781574 575684617 196022823 838257328 620271097 179735483 191118528 983000194 933589803 324772798 23860052 466206803 210349255 518545902 905967108 621684704 387834900 780738611 804215009 580034288 109401548 50918609 769925700 536990968 782836352 728895221 827767689 578418691 164843854 627652646 806230111 152301878 464181846 145118808 1637290 647200039 266720165 417793318 285534008 342172287 547963228 977715077 710173681 118871775 68693019 494256323 256246668 725239804 534241558 811215161 456194674 66606466 252397764 407894120 170786235 33286126 498206213 68273271 776884150 76788212 952473779 735701944 176142723 912338876 393075729 316135416 898808623 292922255 827696980 300380033 630902384 864455556 956889869 763376514 648843233 388810453 300638299 58937190 829236555 421257350 782084693 934419976 326994864 993490508 528505669 222516018 601391335 503490092 904201184 533086290 316636352 67697714 361844141 814763939 836328846 815308260 775103543 614398446 182167808 708963357 761051737 286416460 616649421 909489273 206628257 997915984 114588090 650825223 260571236 72751267 936124129 983412620 184604766 254817852 141542682 579741150 792884016 514182446 339248987 127146277 221899582 137092462 381110376 901344545 338329213 319696789 245361649 419064496 422552063 356524917 322733152 743799279 860638501 485130894 5426255 73054099 361974255 645528585 847693124 64819610 5068933 947195390 619486552 309418517 755442002 813074827 496008124 294441693 924194155 95695155 145011975 478865047 620384038 605635269 980810926 719985836 355489226 648186331 709733344 533044266 148631535 494306566 316537227 468505981 549905420 545045450 263870302 389637438 149502187 164794781 922845993 55810285 724637244 551841066 943419683 327428493 511864319 948134229 324397123 287211912 617931521 151251001 655052961 885277851 359176199 457010718 99653963 461986260 951623339 526565553 962331793 503784354 197401270 562420990 943441359 912043904 891409445 32191958 789785225 301607184 566596303 947971501 32793781 410400510 571049801 187354858 546671932 489345326 57761540 703168646 301998755 112164880 462521062 79585284 763933850 913083996 475681951 337446263 664598018 394536820 115148446 960568548 246591537 713592317 249670655 368869183 619940774 328405309 162500675 453186932 919062370 619033573 521529025 367125814 76476265 281357312 314651192 956766048 866544865 699750420 988900243 331644576 48892284 38674251 450665410 916167196 101396808 656331535 765561094 544348609 333553775 208166251 688153530 104872920 119759646 18054961 347866077 288614193 942058299 478098126 94245359 476175705 863760941 116583775 349702623 414649513 336410435 73003526 714841594 574285717 211866834 660580861 374196297 715938788 578787458 805072825 413827479 356956024 1312573 920639029 613248325 996250216 193751813 866815858 850291663 803779378 141884545 38784781 359051695 279454743 22017829 536627515 113919414 539280687 468535399 917181010 183321521 392005535 68431510 833344094 121086423 829067296 4310690 695022965 196152130 817474669 766245185 738834312 92292430 33166725 116024802 391636344 472287326 143673166 99427747 511127286 146788457 577274069 59910420 148447010 355334813 80389227 607913524 813716127 910588619 739988246 829635145 798127523 472422773 532754244 431034602 431979734 132057595 600922560 659146141 513047687 735449727 257017819 74158558 489607041 411722221 520306364 50974836 437654180 898349686 616230110 628195424 575424401 709165418 383595203 390486145 998534442 190702544 159630318 879942353 43828793 581917767 593706237 548118843 291838118 424579319 146930607 321043558 420241219 389477985 579501283 733033244 957056198 549822751 754424101 400747206 264537141 420978242 186667406 834884269 549929237 46914646 189681970 924459825 631543663 490954386 660744201 853959804 989507201 190149121 686645805 241224561 125179021 200113624 73966261 984359098 379136427 842765843 343002946 590924179 277927398 240490380 346863596 534793213 616250637 216051815 65313673 482854628 26004209 313640809 38080036 464302677 296240220 703564586 641356607 208429077 76507912 103630757 967841047 154806722 354674304 644394449 544237737 340717865 946909803 498462046 495685637 796873475 113308667 557727381 474630991 901518801 724848007 288251626 597752035 772720602 749083023 79751499 627368842 985194569 465891295 959910594 202950957 164947150 390725518 774176373 870619712 430810457 997928652 242863084 719213510 528648717 400860798 252383236 739245392 313627371 699368107 148742323 104446981 791525793 316749975 894404145 315531595 448652336 803198762 588653885 370269064 575693036 14920820 335044152 17477194 493937762 891560608 754333530 342782154 399023902 514685620 75580559 933359528 298303917 947954296 849133428 471008545 820155757 673812810 766846656 62714717 330757790 905492117 722326719 482230082 417046686 380414946 857272054 6583903 950054285 73189062 652997029 318760517 225006317 550581472 161714940 639975247 378765360 963261901 37957153 753453178 541798051 448995911 978152748 481803882 851407223 640463614 826039243 107494497 116835120 680322520 7441096 378158904 682569324 253962928 681615836 625211555 459474608 469528223 141384136 163140144 196162134 137522427 855575398 944609891 561468523 144703049 749511821 72208777 447401100 751127898 724249782 964831866 422432784 68452136 417584614 199410907 289638136 642200688 236627203 250132381 435698108 822714259 434104828 887108064 108366272 791977742 164054484 774104458 212823068 602808751 308501272 151135225 830440733 785974619 10536403 329844031 227625579 710695725 596497362 63180536 605711914 975246251 135054064 823966114 479761883 43147063 738389920 992846357 280251782 800387954 547051079 291123052 528274161 787617636 207928358 187181031 194996286 115670993 834044497 952181349 903177756 661286952 790975701 461432146 457495922 876992230 389802536 373820082 248795786 238779891 239210295 730154370 520088978 142417505 995853800 582794516 873745264 980667190 238160104 748927169 668148760 927328324 419072244 930342968 507075291 289625838 559675982 190599632 397898348 46989462 803304633 88926693 185034995 587222250 12073507 669054683 647743840 392581536 644587981 166247594 939293505 627945607 200324141 846646859 534071303 661522222 367229489 134899532 126311241 278424062 482546846 673163055 297021562 433608458 252304086 276232321 959762970 70882509 404619263 661111021 443359554 670012413 51638582 979350513 243410997 532925565 466965553 213273161 403650139 864281544 786747191 745851829 928316058 59560188 182707673 899336253 458330831 428853755 472743123 559134210 813740816 692781845 141786763 762264795 523732521 381802836 561460969 186483432 333191742 96796081 494788887 325321310 475782308 574032076 146784926 853028942 493076926 639498510 197729117 28616193 422810346 263278780 358709978 457651410 694776838 802780194 208906187 748186896 3156211 757580663 968034566 467685880 434033768 958447713 65612886 830014074 53086938 737280483 908568049 587519713 487923732 727481072 284487173 687115284 223726743 423552913 132080307 662753954 940827403 41626849 40744402 981549153 654208528 918332593 381889035 595079345 428157660 924144618 539731605 441114859 943153109 280176905 752442652 274762919 190844388 729526231 265452540 686086110 71483493 604000524 728059084 98638572 982306842 481095670 771193454 360037992 786838188 765525445 431840691 334171708 36224180 888180978 208411402 203834156 967560877 227125875 164422626 847647782 493929106 476638520 334500154 751380444 765598619 511608330 446983582 275809017 653516999 937364926 536483087 286370376 807360534 334930510 182242404 30666932 833121400 784109491 673871050 225664374 494607808 47731732 909914721 763857493 312463373 446325735 703273044 151951535 469673187 357055944 18408576 98393507 463341980 776914151 253764868 51503822 857919428 154596058 364640640 3434768 832390334 308139986 764880397 470047108 290029320 230641176 37809368 887493600 840315901 607672186 632558615 183915471 348005460 983661311 769431300 312338349 781038011 20543321 266408252 989698568 937295484 814184932 117974138 966822498 867253204 10255024 135798445 261368422 866591923 355758125 398559799 484855695 981476992 751961082 40615436 438897927 992580916 482338205 497194954 28012720 107299979 430371502 276671824 224072994 504044883 974777746 822678404 515207197 491803806 144155880 352844153 909832107 35320986 157979492 968387562 572284106 338982345 348431035 66895743 663346966 597254155 490716253 102296209 953760769 88137238 1549576 38513434 307311257 332405616 316952727 16380439 485548089 47729482 744566944 766770511 669779762 279175067 140998928 749093649 434183165 876507727 259743386 397059139 967395388 561894480 27154943 418333815 703261583 49576773 709468258 81273801 186313459 794471517 71031675 396506957 639624490 653111429 179190639 978582097 246880226 11739065 491500360 217659390 495632320 100392782 403105836 443872301 163571904 768972774 54840200 646603516 751808347 569609402 56329534 358547320 617557803 674263897 47976474 446975436 232440341 354733004 164514910 660809216 491464707 696432320 668770643 612423136 253326213 581460793 106435238 614188072 154810817 62819637 360107418 107909449 86699272 472897056 962375641 218048430 615208330 930734518 654042921 85792342 581835592 442324543 66802608 81497219 513701609 830255672 611190780 704688475 881494542 273197977 643436234 507876993 61454461 307690328 430867193 604848458 492133842 130502114 229956171 498350974 95468247 356934308 80412648 272981702 739900900 356002368 612979941 416262918 466435703 476540560 212182215 169378550 426644678 927131478 47096447 717865772 79733273 241438651 554341421 691081321 645882335 842509793 12332474 84605861 650421375 65288194 905911869 138535791 520158444 553626666 542397447 116123886 351863073 168948819 998270468 310486313 391607425 936071640 720853760 10677831 953910790 869168125 775230401 798866146 648591029 705840301 934727577 685395577 287755479 733111157 433485114 808895856 793153133 9846964 756432078 190766149 610878377 552943851 860264875 597935012 653370209 836512144 320977369 576308174 477653958 856958936 262272771 593728192 242586837 262761145 942698363 982731457 663601809 405777341 764720664 723111801 540617042 692654791 771713421 648510271 568542067 684573184 909406017 540364218 112257481 687792349 817361959 248093293 992047568 210104224 10682258 577159889 921420431 680953348 656830331 489759433 956118307 635027380 113768203 551769419 886233604 664615707 502290478 779470549 9226109 920423709 498025798 167887395 146020530 891512890 339423121 469244493 821726117 9947832 910759821 72877270 115602768 999777594 859103015 335854739 297983704 753931477 682564213 243562993 866508422 192858165 667356309 962916838 79621452 247628253 320817886 615346838 161761479 47646645 284597034 515945638 303359880 913805595 956742673 663186816 141855135 509457081 867238850 453380368 636655423 68334836 820357688 450146476 699303874 662707345 201447062 282411981 396404306 417526214 105024022 736029397 558704681 848984307 807087960 718755522 373071164 128604340 450569880 202917736 354321290 413486393 527561288 679862442 346569157 912041833 679869997 325515274 685991983 991243464 348440008 913447002 400070953 539004977 729206147 406340520 748433469 849393177 235659925 906460180 251633986 417275996 284890563 902844972 990937913 354462122 12491085 389714427 860431809 947775901 906015287 83974011 66779196 510482401 814159440 440918507 82666272 547373484 237864000 77415645 273197796 914753503 639962918 929719663 485681146 120441596 617583086 786567188 161612323 322792843 579169534 50259020 221517218 338791572 362567679 669107281 894949848 949335882 41686821 223611848 14456602 73456989 105330 606546470 625421424 4943372 127658872 389722135 584177901 202621889 667387199 378761413 896005929 909743524 545306686 858095194 873666173 179176756 848581787 435986091 154292805 389546681 49357747 718559905 362872306 484842940 922710628 923230779 831611765 881133761 825892255 952752595 748404145 553375457 550384881 552149998 626160711 515016429 730105181 652958520 918075939 656178009 792932208 804223582 450302548 29307478 446801615 134391311 886429079 9945431 713094947 975884481 672032295 621738034 337955092 568010596 83853998 842009394 944401887 106519448 932888784 899477976 556645391 613190868 239146200 65084609 426220618 695642737 271995865 842092967 949782920 181209391 607463710 330475348 2192773 66472921 101747965 688818014 525450878 512450890 415135872 194013358 6948774 899082189 388365643 247830517 819529326 224096337 148984105 326193156 826719982 957946703 609270609 107288828 932759514 491053548 779481530 559302637 68214189 812771940 923046711 541851692 396169897 116668023 203371616 143373350 586773839 777925067 105573747 324134413 136149408 646471983 495844389 92641606 164071751 474736433 406492609 117670597 732585192 917841558 613573574 301069031 673966460 458902396 888415614 547430288 425570227 841206533 742644549 914690455 817345423 630552704 207982690 744172871 364375458 75353230 30806173 379335977 983409042 9156212 260329263 154236980 222932969 541310620 32017804 61116891 623588448 680926435 137835888 510444460 667543929 108719254 904015475 987160058 232642632 23150575 844372323 846218197 747433032 624617686 636290133 463982557 658419869 122086696 779796909 389055384 709200822 780239802 543468262 354580705 148401489 325698153 396068186 827629415 146843780 988481067 780382783 509386664 672494969 771084988 412081891 879619553 280343527 714265420 357576179 48663636 997116596 188775345 57274226 417396138 780655535 410157047 576171619 342076903 356198078 804055296 198986036 475152168 825292007 961348044 867014981 96039241 788405138 308669481 387481803 140912269 212770992 307662270 523609476 806755619 410950785 543176921 337222755 642888116 856210459 402715490 636265559 194255749 923316911 754903387 580766102 329320419 423161732 702643997 277953347 10745655 906253295 951037325 680915387 811652023 896244915 305213281 692963567 904949025 593078177 528694800 940055886 847793555 471762740 50517369 148310876 218982990 732203938 588357843 219758109 814135075 171010955 487962141 478223575 795804950 569565469 942726353 416248955 803469635 402100279 71601935 563876081 706199669 522561124 259759815 260840901 252779254 312726701 801080111 986271553 466286788 106237200 393913746 190310714 442860493 345532605 209284295 607867498 265973039 653206508 618698666 890322398 166015391 993577195 623189747 627134868 810157416 441788529 633986946 588667591 16304120 20902412 664855785 229705313 620922456 630785950 894776877 614467645 943716783 498178132 843240983 536120735 288873343 759762503 458875737 787674720 371960700 688426089 265673199 579341076 259305025 849877385 405668096 711886796 796054420 543339232 285673121 279287266 197038240 740314235 803729775 972163778 335776245 759393626 944454048 787955648 806166860 911262862 22071484 88705736 108401470 277990801 908153632 191251502 31153013 987896250 573208068 885697306 880099420 436030496 153173750 12432334 38587536 184873577 60885 586797735 189295074 346468681 336997342 573049090 41999047 564942068 731749160 939946429 333293303 980331492 314382670 75349444 368038699 655848052 192410587 411531241 905022341 752646864 699688718 120571783 572180786 919040720 265929354 270760878 138826513 202766154 462348389 902990134 925921436 473868964 391140427 420207583 603439595 585889322 423462366 130212265 627864122 102044803 201571223 441150787 142808656 51150559 704403154 983134433 106330688 485896148 71413341 175327456 704918679 214824735 244967357 665641804 449943167 541562259 671686829 675191381 910928464 788434887 840736817 193879065 105271037 191594310 248031472 969016456 576170236 795791848 479938963 17751579 388763538 152879711 775430728 951615350 197821358 91892315 890083147 903804484 920097171 297740314 605095180 117163143 862026549 234628379 855046592 726621428 60172793 307155609 165334736 901510502 141537586 217605731 688797211 83695533 631509560 731047330 424787955 410980694 804893901 484828040 714259623 804131205 704349024 962838826 966405629 8049519 858716311 504719469 827215737 566359716 286975034 500611350 875220538 414497262 485886995 644059097 89256188 323045008 488627084 448619521 962718581 102626875 21986226 411072978 227283449 874853914 786565503 892603705 776191588 941582379 895159360 935700406 952987038 296643783 268748785 81024627 54655650 534676638 712633556 416890988 861968063 792748122 772199954 661213903 903918108 457536920 155043301 982398680 926782303 754527316 71682688 342574795 798842216 983059087 715385814 697937229 823276050 475636922 63309360 499836515 523953059 541508518 319547113 320212325 377310041 472303983 650331855 638251011 695847384 185116117 482708672 233613170 162607721 580326808 712512475 241720462 762398087 947387092 393706437 154582890 652057601 752746743 939602500 994108666 658739818 364527701 430463785 732496001 506081880 250643762 421826015 600284552 251871755 594209370 1012306 385182717 622128201 346893155 25110267 721640411 105112043 514720829 210105482 680356314 254989778 164086382 586732534 162827443 1581229 632426782 192592459 848428207 653694335 869033929 461653738 66645840 294152680 902826712 656610363 219881873 602307599 208343786 111005590 718921971 50069837 505831167 275544712 338461374 107305802 455285365 591152668 587872631 543774582 269737948 962709599 100258406 780369937 841851951 306685621 323950189 425894393 158248923 177803891 844379034 662456984 149224726 362454135 719198190 328189754 380599824 975197521 307778133 798621957 487197636 362467954 437215764 650687931 145445630 262515576 569510030 553155050 381204801 218923436 190322154 401183083 516093393 812207087 190701224 165929486 215441528 7771771 79518151 460571523 224390550 134873110 968910782 144133515 780688220 913349095 764757528 977820862 965542377 385053339 721173771 107585222 615248725 695892070 466027279 902510968 396164428 508111670 387885815 752095290 350493575 662334336 405516890 314863456 398165516 722008550 993112892 814619166 722230561 714227467 109017501 97039258 443636040 335539157 944934617 431911758 368895663 21618478 18211103 315538995 953370192 780086369 833873134 816791272 45978333 802173808 290682098 962042778 377121873 834567884 631107669 994223383 564920730 201211392 545620502 145837331 778190994 577178658 771350813 739535349 718597340 509610666 933221936 376047186 909526887 117126024 241881054 908408062 918534196 62760633 518715223 283989313 645794639 151713219 718713239 457816271 268635387 949244241 272402590 256049670 529526343 941522061 392995487 627720583 147452280 788316986 291400185 582829439 963291613 72346156 825922418 66105555 811733053 965290440 20807226 117409975 107598859 966489989 676606445 330362683 165176883 929701174 238282440 683849571 757412601 605629967 14617093 170886182 2966648 470719402 160078861 147603784 768638289 681521914 745228197 696527775 185306001 132489094 408540419 997514706 205924740 3919995 114608416 35272027 133330444 398650466 272599232 812429429 656185483 10059384 797875577 894942039 987850732 268131922 28654870 328297238 506999751 493927186 245534426 648295800 129153655 720745991 279972946 49860753 832773758 509097676 470226722 186931498 26002541 177204482 565970616 4889890 387547590 800852181 215277346 616792772 34149591 293292815 702748957 955294675 532898399 567626020 454939625 65122050 73452082 443221137 922798646 954746308 81141614 412912406 245502276 750130411 759954846 622509158 843854603 830556393 251458596 607478700 470347745 184503553 859170671 51173027 912171180 16173163 428431782 160076270 617173918 344365939 463447948 734484071 177027943 674127333 85845650 900164465 248340925 746398771 597495034 191375978 545822052 832613030 167090866 686502131 481682761 28844015 520602866 909583919 807356952 142442765 982427926 366733940 494932508 253304465 64278947 320655447 144141007 189786188 816571879 649769615 961345697 231045468 219666734 793285653 117468857 583995767 536541462 665872660 41786803 855567361 83339368 557336721 875400013 677886116 605761966 332348239 19740009 367722947 332446721 881923269 512433932 432197676 997821796 939727714 441972727 528446761 661190436 979935906 263695736 268417352 838901850 992114176 965712287 32471124 578124036 648954083 800615518 389717249 213558429 643728705 567023660 862003547 265921500 544437709 556442906 270304022 26993660 794549295 972414735 790481245 586774752 506048519 621202355 437867319 347893307 894544959 692046912 417362867 727551007 432227507 490774518 479445755 26001918 280211738 124048121 607728353 892161230 47942208 505040248 677589658 191480348 902096326 335196850 706611813 13124834 255948877 914484581 659961945 499232757 129272829 223498636 585990518 593392697 766813456 524732810 129010130 355745389 770463111 769323839 102952280 269966094 592059040 575030815 856810467 183117333 940387462 937505244 1049081 830068491 210133131 941615823 188628190 755772512 789065584 314775039 899973941 713591425 378305501 206963583 532065535 710084327 553069409 997778541 471364716 503313538 871396695 137229934 35078164 593549822 354413484 336540550 885664342 931555153 53295077 758316243 354615018 457156880 73791091 569091079 29729517 101581535 452588250 771115424 15648756 435015800 382393080 249904890 327187444 755215906 175900545 924263447 907092355 575620781 588990428 441657429 990858099 904535663 39870316 797074067 639874732 414472526 177448913 265393462 553267788 453673773 940707286 958606074 434959156 866908624 576625850 371963564 617156520 321883634 461237018 547165337 523410134 476965537 93121464 25634981 91405857 161761 636864653 397027849 415595816 531733748 947580071 979761455 132412717 507514675 326847368 619493339 883026340 120082592 91021275 41622248 681299005 315435751 90999059 179090007 157820318 790231292 14042252 739250353 651741228 243230113 993139193 512544818 434095877 642348002 416998434 535714132 862274141 812052940 835999022 33099236 30487250 835896454 560619882 608892557 185477705 204741448 762023099 926305802 509645620 207386657 832719128 742878818 269505427 77207631 869448571 610016587 860097736 605897275 443426507 769000639 896990360 261319375 520306035 120491311 470114615 559545226 131915197 676782193 520391310 943186917 497959628 316341120 923577642 71345585 227130026 761099378 992312933 379797361 598459033 508328619 410782065 532152347 752468139 839756632 750535647 667951965 171745662 171920800 659907906 734823513 502981871 545515161 618249303 715932369 511981795 552975003 801648852 261053235 452943452 324819255 68003061 51951930 446681723 309654677 450611732 661060099 276740043 812838709 127361941 718763588 375148693 22851421 748313357 676290179 620115830 83714456 687809464 773717316 410040239 452931576 593720312 693085048 957531362 686298081 898760795 592093927 513928617 10359753 251278807 305325575 764231950 518540870 248013874 929135568 260175007 444313256 463626503 776317983 407205547 369763468 291075368 170433138 803115474 466226949 325382063 633775430 443204719 712055287 903031512 895704988 195231281 700337195 152323906 232185360 523650131 261707252 166414476 392726325 731182176 102485573 711922685 273530202 717947631 839672832 217485888 330692350 725994711 741536078 842518958 746827162 332168738 154035588 394451572 210826430 267343042 795142362 870899774 773553136 615696615 382191629 675083652 528868348 910784248 84100477 263688458 906952192 209720813 208733756 237343130 345812302 550351678 382759272 913235505 763349249 188130992 61470748 918955233 354028778 952271974 605244385 197265889 326986878 785478462 600869055 943460608 733395363 303886197 259550069 230715330 504275097 956055374 873288946 97942688 43803220 825774129 481282261 824023249 117719735 301862727 553640696 99168464 623203377 271079885 424553650 861947046 73648319 340966867 930543306 138218604 615812384 750988588 424358322 162606189 503141881 311738113 697514719 222349792 577177567 692002945 135623103 147618123 776371778 737074299 757128064 307974161 626816522 106377362 991683531 819356612 756159544 426447905 387874304 867603936 325989654 613555691 672305955 203806148 496799123 353391804 58578054 423139552 309292530 750368774 65586365 339430244 973917371 935447317 52233668 164332807 533959714 594850537 150399606 2387564 684257592 289275984 309074582 845430359 84570725 60791426 452048402 548813622 286880609 8997106 53064047 343044061 565946515 379153929 747602184 413618703 804139490 915817258 664667568 881169180 472447292 38410028 117693573 831678233 303786736 325268782 761731462 67791275 898528242 834110520 51289172 733144874 870450867 838237064 24271675 774098127 600606364 994657400 378356071 346478793 779329984 35891623 932502017 273573154 166567317 839494798 512259318 493528151 149611333 463332108 505223532 543827215 501991552 579828718 243015531 810065548 144053818 811672153 606370198 737116958 598519919 982711998 706818810 741465588 963569883 278594988 497990814 973585560 394477924 345970103 767425010 238152990 824522307 462840743 644978113 750302542 823025811 23575247 687959493 738363508 237739913 931552252 525682859 601811146 120068899 673111867 822376360 61458512 483540101 866738043 532534711 578150932 573514858 770889432 164380253 986913377 472207411 312148149 850945151 68968146 5459581 895982685 810586856 550007162 463596763 890677418 133870907 439503897 406202775 844334327 472646512 750609232 452213729 59482783 24255652 533733230 462402172 958146328 846373262 604250822 41962200 817553906 314961300 870838314 500465257 467632686 114806385 612226759 802589354 586249211 937459789 41606921 968616438 520059029 901238688 220541607 795612415 464759574 584442573 111284248 151133624 869749444 424785661 956349786 218571987 293157658 754882156 568189425 703997646 358787006 763964776 385299042 849678457 364475671 279123561 827048781 788660116 242495490 437549993 693178946 162716127 94211598 876113814 927502852 969665866 149694292 960668185 943542280 153744866 279847841 378529565 311101300 252009910 53219148 414449923 382062898 682600486 702630982 887717885 948083443 505995819 54418625 166644088 766179351 692394187 703820223 198375928 148469294 760736481 848147111 970041911 314136000 311877812 192372694 688456879 915676626 835392609 316549508 117457652 864667889 950293890 91468674 596529733 763860028 139481981 747052323 620923689 1454078 661331920 844240109 667766148 188749044 133582147 23403405 691472684 931792625 502094345 703721945 121572955 82491969 968172505 307425683 351332070 35253703 116616491 468820579 894386276 726200323 762060941 8340889 234325696 971580517 557610119 402643522 585519538 294173752 198528607 297585873 767170900 656655531 85317952 828747583 164201252 228387025 967020707 884665770 283876780 213689961 66368344 528525150 784812587 762394354 625539789 169642873 561524741 224502714 745561982 969343425 471604035 154300367 378371666 53576729 383043821 529517902 899275205 381763759 654717220 271216603 686912315 667772919 424156088 805781236 928483634 722778005 655018734 123138014 297470344 581037990 298987287 970367702 904640542 116683098 102646633 172917398 101802450 663540831 588183708 324165209 19798534 242317145 53357176 106090534 535478968 767623070 108300844 286602204 25454920 763239683 903736937 13699985 660629908 74545439 191084510 318919179 630431370 17713852 548607332 765032090 825525873 407793544 350349602 212369045 116006241 220792137 785052217 776238414 355242731 781412462 883209724 515870705 473676299 256765723 184796459 812994797 299929885 658920149 569053835 663250794 545620197 141687684 237085297 270264001 796492588 417954883 139024774 34823413 967660444 918022017 650520040 69704480 212278821 640749871 521511294 484571317 297122643 69591042 776175716 935649949 202590263 622588026 999636199 708021806 130569855 898089661 910539924 947757987 583771615 811166005 513169338 703114245 162343240 840681811 720878858 907244458 960731957 841058890 29913693 368631907 974817077 976419762 365520654 372846784 29651624 458241689 729534303 506269303 573407314 877357961 443569021 806016380 100664778 489440882 305441316 358166297 798707416 481454559 627533961 319925666 690947128 627668848 648986107 148795292 888557520 139920854 117776479 989474068 924633584 524822236 616276559 213811554 175414161 568232838 17719337 930916313 603089858 25607497 205731646 46454589 677480576 989966817 254807506 199616884 87425787 807935569 122598634 473777018 890212383 765727780 53653189 242713908 188034330 437195335 927168506 155982008 743846586 754575620 397237773 345035872 64545488 714715942 562662400 21537780 943677495 725346427 271409173 371745574 254362248 413810840 648814382 427982480 410265707 302342723 692332031 339626331 715257474 705739492 991414218 18921977 265559384 102272286 580186960 457925275 235596321 994360684 434128393 651384344 205024859 770919646 880584625 495020842 293433444 456888939 864363269 636076259 777335617 324895598 179520289 539279060 103187871 432332780 660273054 707398312 655387165 251430338 208923453 765152718 678167264 981833985 508199552 277889066 616987062 629102927 327586512 158259230 164998903 598112856 125286688 367555811 812516721 367786913 374244651 108770423 988080621 983346854 57360190 293572268 811207022 622132366 108634073 942291423 347823792 605104940 241063125 749319827 108262447 479740695 973503592 781980292 329162667 448501340 463083277 352085863 6227851 307421638 786941215 733263124 882873768 80763985 267185372 301216703 687039311 535575838 995491056 511394815 64652801 592450462 880406868 531668033 189859329 20199097 679775320 532780211 276772984 936073786 511525599 941231394 365064370 585578647 773299732 309819758 47599097 775445225 651198496 688870555 964018151 361802674 535899126 880302289 323268852 986938080 833425132 283034270 50122497 966972984 677693797 100144857 81857916 742097462 593523720 1784844 125561223 752376838 167757027 610980696 492329477 103483131 510060884 255270266 870250717 45491854 223989145 578204103 911563627 605666637 411368461 241593550 272985094 550914204 917347487 501056045 290294795 930336458 809834998 663759101 689876164 541987747 342487690 426112421 177897746 544651800 712527117 200736149 669216033 883214378 151735420 688998225 161435114 668915096 341547706 826181649 962109738 327484163 78508549 574175498 103473602 973772848 741525198 328055593 370561652 639425606 260062534 804919939 279215183 738801866 181508679 660847123 393871022 625525936 795507351 273622967 283684046 919396100 954745452 361159188 882578981 155315121 196899816 998823035 286929614 39421373 468849394 359097033 243944187 779285519 463089013 57837114 360931388 721687567 50999511 488199541 181687110 305187997 832973894 416369872 774072577 702574954 82582107 743218747 289647287 143614512 508879837 137390194 574153796 668014058 783314865 224384689 153162151 803829322 617174928 668278182 174573004 542123421 319009571 212445665 143816902 251015357 112872984 651557946 195418160 844763586 182872279 334328582 270991933 463614189 416440261 869076239 573323004 335840339 479595884 182768401 674351800 941284190 913639453 503763001 755554627 229367180 671713434 304981252 48418674 800845612 148999486 318068733 987813095 545592123 352636312 849985858 869293341 67792421 190453414 23926006 936506295 993005708 605090843 517562744 260959720 836355363 545565130 307016184 181404036 535330155 554202020 875457904 81076443 706167254 913058393 79587018 869972510 835947360 233245756 857637605 541555556 114259633 969849887 833232312 736202162 342733235 479279948 121843022 692162575 869959063 930612747 431631099 111388130 680418080 645823556 350973742 786957510 942440731 928227377 891461264 523429064 660363227 794721881 174927008 175053842 452490986 592948316 193471798 536841296 121620413 69049360 505941262 454652159 61492553 220089272 238645104 199993770 102579982 364668115 695169746 574502574 256782455 297482310 877752833 590512004 614913631 763909960 488963460 952973445 732207072 912866643 605134277 248355635 950457143 255046123 647162868 862517156 104314194 321479999 185922555 294606043 926226853 748579454 909805571 406739873 56025899 405678355 862418704 709430609 742901418 165846243 532712724 444289224 772354477 23707782 899692289 406681412 246469416 413725538 360957887 230810860 407838685 307370781 513941160 552531897 615350456 821324245 181248084 126792704 985526046 115508209 308675243 501782927 841277546 821695002 771577741 445085002 160701925 449162104 378507623 47064690 137196820 16012522 442912895 112777311 129537957 125484271 664776932 932787490 981693194 489393477 76210401 540573955 61008252 595537579 82247671 211036693 131389119 128028145 716544173 832800655 965419868 203238400 77449520 203126618 104459470 55450950 270527304 603163539 343507323 544682403 313830656 145323954 929326580 465193757 400377405 369256886 741132824 758659282 132918353 691569735 530420276 876242090 28921663 542768055 284459285 156408768 735391158 21614315 253494591 446435138 386423986 398083084 226786296 488318156 199984791 437401044 633594376 35910448 878821608 752848538 650371975 33997456 477241946 647705987 565404594 221615669 787765882 730739070 298536817 17469296 277739530 100634358 383548642 605656725 816741313 193761164 257298850 381236088 521626235 553266292 502370703 321991550 164002643 937946018 620613735 288537542 52181895 349101072 561633077 10052247 864310723 833026754 202066414 63272362 461551880 613220880 613494019 135315079 334627238 775717021 383404629 101255356 357996665 724084455 142041260 93448549 896343161 366382470 911257294 995274646 155459301 207900180 49693302 38764219 442873597 430279498 829853714 545760059 804841048 846749072 786547736 734383278 119608305 402076891 318494335 283651021 376370422 821425633 676719362 988825304 765015624 852829745 128033498 385744001 43211662 777976651 996780617 45474766 146744664 855376367 41538460 870648859 379518911 94416549 180505003 106103538 379131682 62324584 991016869 87911604 799850265 747324059 439526971 155832886 422610790 661415868 546284276 987095563 270969729 546500496 370705644 490782867 456375041 682990932 272034284 929716460 415739455 910783254 609655363 987774211 27875648 898255156 199546651 762112883 705729183 579716026 523150495 130983437 358254662 449991989 315127316 449518945 813543805 814259508 498208891 369269718 555406452 763244512 746135886 670946903 170890637 309574703 917172724 703288299 427354376 4957145 242135386 210608658 430120833 242571757 555878882 532597022 513174655 190686477 726509047 236639744 362862467 492809221 929945328 278069977 4456236 340399326 823977189 845520217 120198555 675078685 276591090 888511548 264919962 120757497 564537114 757922149 469050441 389658252 139592201 499450519 335154916 675526480 198132196 548937700 392128839 897028903 528688785 125982939 138446361 764531204 919573088 213865226 40499089 600152731 893259133 558187360 308792918 938879561 947160147 361635765 651626839 928150888 631770962 110857838 58338433 730000232 357872684 689117623 530752925 465487455 724331847 75798485 767331849 54596654 488400280 432617279 691171087 947095834 72842867 18873716 69230148 924181118 365703365 998185092 858842223 165806614 486773994 712039904 425116415 141212448 316748023 290805699 75679029 6502570 990286400 17920625 865176605 359346373 930260001 412539426 815674546 861099063 534789003 796962597 69863586 333064615 207519894 551865352 175011463 689737299 36434417 425226488 531879733 63186499 929910343 760500368 665448773 219767076 6927237 190089777 681086357 988554111 838166615 101712755 697951858 992773854 708105851 805832292 350886972 792716139 219646107 133829549 501347333 137562382 273022606 46816414 108143402 808178856 471833912 600065711 199648737 109028825 667403833 883689854 16878109 940836335 974337622 473444066 607071726 577572339 713203270 560705854 37439233 983830548 434732629 290370922 119708992 284072319 763727998 105786942 763964133 455745005 875690820 680917807 663150559 716402041 583574688 69795144 809122829 949553211 159411698 971204223 340778881 894146109 465675845 425315024 716620208 435351172 883017775 744867691 222312907 204609255 879471353 215931949 455220860 806209748 486465116 339303862 614803576 994363385 338160476 213602788 710334186 801832659 673903660 916200627 818294742 454986870 246163497 487628792 5939122 892412256 479105618 359125349 271705298 810746217 522617029 159208637 811488694 337701252 500903089 938752748 530541571 329849421 968827522 985576114 203120452 202425697 854138855 375686082 676973336 151766049 934742019 606395008 201330283 432963402 402319219 572208511 572348215 959235303 504226433 966000852 140901699 906042129 494467972 229185514 47087394 178307795 408099059 599444349 406335528 583975022 730128524 96462303 500640672 287497316 788246754 378912777 760731828 673852049 750278875 537355278 591969014 577917965 363527585 268828340 53096392 645377337 111267418 500489557 870214489 70693414 633497764 401129847 624634396 815907307 286481196 27428330 577551354 436060717 876915240 273481025 705581142 501322346 215651696 898782879 972385770 71030112 623483038 259154936 423185718 40157763 556142922 970415119 717300431 777489607 80541959 266768087 773883684 368593767 659832182 862202230 931019158 268471197 832624774 308855989 127323065 118530072 85942140 712225804 359763733 197879530 547286090 22502152 127682617 391705200 105988853 741239396 799081367 558125484 697150804 211644075 777616057 777551517 25864553 401451068 799754967 302845705 220809044 950943728 528507675 625298574 654275103 817597312 150426310 972023872 290151626 652469223 846388661 117154408 39625492 415237449 338816019 725318972 130053267 555177165 903734343 567662221 821261354 87864633 578148387 384228812 967067719 311967094 510256257 725983761 681381362 606882347 384042907 233583079 386893906 912378806 717247500 279909495 825330410 322151899 408455893 372141251 197509885 874785043 186688925 946281284 747535345 847606706 214999130 810509236 925272355 638522100 728765834 189118219 180328916 427454143 453063823 686057420 495362662 261970485 444957834 679375528 240480501 532173143 28522843 337425708 45023834 192097967 370737830 483241015 274854205 555147038 901598771 695786045 855078989 624326665 669291601 875584331 934141517 261924530 88208292 551738076 914055065 927306259 981754161 292545083 616594524 845268070 310881924 901901266 709226310 530262398 584429950 870492705 152057594 877803553 562599360 702669961 288797680 514515634 331510182 279613603 302114699 433398952 665878053 964309909 159621471 705867158 242821556 287599023 20210761 335775749 776850076 943461287 180266170 306992529 459840702 427112147 782110831 214607136 613114985 55520693 14288183 497351432 109015622 697670965 205144105 906796488 995243322 469982641 499799513 707082089 78626710 51179638 576142718 977323179 736349004 743080658 964420132 761953729 86089964 436233945 998044160 995963522 779138463 338103988 344369635 885273911 424361711 245229817 269381477 310900353 617335857 949981472 732270386 899212165 479098799 970568755 826443580 395573675 848954256 410634655 606465787 267173165 322207826 886002737 720574372 846761149 192836365 128739896 827640178 289242686 47812381 451225679 449945528 180740307 712106057 519620294 13132831 351824048 385257501 913481716 659732090 987819938 739768082 490324637 315845396 165894579 40989213 232230708 353914884 567436805 610908474 322763945 502797664 177041050 627463293 710758912 448066717 43414385 431200403 305850854 189679900 630033631 352965253 859222448 849459535 81704769 144662003 70385894 103468951 435026703 893211073 62074692 786711281 466722780 37982391 380783913 298449094 75413004 300088664 788972697 335179310 331486681 121488601 424547500 232891118 641989747 431791283 352337419 488295364 249497836 192981845 596865290 651678040 460986213 434837587 839462776 637947039 758022206 590733910 368592510 277344473 584723264 546835670 134438556 783788828 815189471 501744990 345201052 299657386 221032839 112293474 666753469 444353773 670619130 724332256 930317205 285493638 7712850 224581223 568468285 261745634 659062953 122723688 860491529 750335289 530165740 315000155 748485835 539038001 993969802 621456684 456328154 924580134 985157765 820510632 428749768 785081595 2233279 791370681 785703879 611601707 281541029 985104265 717712001 907219875 950926191 795450165 26257207 701844311 72113868 438111171 489216492 391407626 994088569 746675625 900681599 305903202 170777355 983897580 611969986 269863867 271036645 32828598 685285884 530632999 73102671 787576905 33518147 341585433 694217538 116545555 591876460 176755399 814852660 214813232 895501583 373046545 200969070 363686143 44788998 252438855 535632467 587871335 264008254 877459419 805333583 906891030 320249080 455849479 235310677 143231203 421061523 666272741 624600441 900856379 776393299 485900126 591310137 80353074 555715260 555707250 82579711 466178931 775962593 641882778 441053497 747723859 465864769 414083944 114888240 644740715 125922771 918515757 402356300 980293798 955620053 932627142 878413620 249969905 93227271 525689758 691269548 638973774 35072713 169364879 326382549 164418935 102224388 55270650 733937443 852340211 11538260 236600075 851428256 11083823 616447252 990504397 573242199 307253578 850316692 263136682 685872666 708010559 308395937 478859167 487333517 729652790 647332486 826805626 668640961 42976044 117120126 950600873 913535394 238680477 334341976 881179328 841920591 89337606 69651269 68764469 987531859 576057725 179549220 284521285 830184958 508745421 243362069 35050761 97271281 476294837 140950334 142931561 297389932 154137833 322692578 695906553 619742499 782034339 881205430 232549757 837409969 273916911 297977340 765311017 986149386 440490260 435234482 695850218 903700239 72677046 708869031 821217375 948861801 108384630 48853383 65306252 128408712 333513419 382411753 843494532 928846133 650828780 558035563 277031891 756318515 122737293 844455343 342051296 630267709 794621812 796064508 812380168 693630324 996985790 66241415 441346419 766074732 266379382 411084979 830207256 414370781 475148292 427368088 203342230 523842827 526176869 335256718 720059845 990306609 124074371 415614762 2386718 330036807 518684459 801070594 267233629 745671755 724555413 558852598 209143604 383747102 930872130 254329836 78036124 648089042 376072099 417958617 910375265 498380389 352525737 948763742 37488199 52637488 328425756 289768306 391235414 913782419 59366641 136111168 914810607 293767731 10043240 184113859 43183509 562154608 577537627 34247805 417347545 634514592 935001372 560513886 642985429 711478748 79856814 107037173 724252754 523385358 247995875 774518136 645479314 329949573 804313515 914441787 819892513 627862348 134868837 416699779 164842557 899902916 128461760 720962532 995325521 306056138 711830156 559416462 363896320 637737008 425805129 521278263 877672191 355893159 80429336 61899490 542043602 199467380 559600464 147603200 698489982 833517778 399375971 815115187 648892574 256967352 772645120 371333174 708097914 791095326 433189924 257679908 559338968 216969711 298746194 419033998 34035216 479960540 344591080 277840762 790369013 403491183 255137052 832965703 570172842 87138574 82772424 559839021 379405175 434490234 870992072 460917736 171355294 948582372 122886596 375652403 187157922 871589497 592543629 59465679 390766159 275269489 526973463 359981286 850470554 790142549 477286322 59127498 689364627 896579875 933719790 629340282 756521653 804477926 724102501 836309296 237524418 851630802 836806907 63693794 50826831 582110239 697735040 426959954 322384205 405723661 155641514 666349180 350803689 596234937 263879585 155014415 203555680 994576871 963726257 4834746 878931970 59033268 834684322 793095250 323300243 194334487 972341159 988598737 363880045 590961186 747950190 413927187 852121135 888167825 136696366 933777256 432912174 553489985 824436355 912346940 856679560 120285324 237406413 240773228 305420258 256497260 56384575 953897589 277418740 683646347 279692353 336725253 658061999 739522585 851728242 249635018 878883859 28069182 16578679 139306528 259117821 457155674 466038079 560567215 69132110 84301907 868209341 25063871 978948780 969388140 443412487 63197407 912197076 424652207 745584282 892540355 227458835 720968199 199680162 876679407 910647249 518963787 144344982 668746377 37184961 571281815 119571407 89812582 497214646 492859494 710360316 609051379 87837470 250987821 675459787 853110021 741591450 874923076 968901914 500928044 799357182 220919114 899611947 811952326 569316973 554067227 172102564 890147143 146118578 810151019 174260433 941542605 215871209 969599894 573292156 862712872 437994724 100290366 262021462 821039254 201229984 309132935 473485444 197371255 950095317 637331303 630321529 186069423 59916092 107493507 503163623 849987689 965787316 877448414 371796364 619272681 353378671 311192416 240354786 235870640 768460287 444407769 33653963 591239433 340510570 799621900 117503715 399820831 589131294 986916912 4151441 747512978 683137518 61313023 463483335 16251892 669527271 168279855 852840060 631030716 454297533 382766765 41404706 999575817 812958047 898268795 381453790 966710955 569006366 82491968 627981395 855632823 111790414 747197728 717533461 526764074 979967810 107855696 514142272 362809250 487725870 985984634 915883582 36402659 771682441 570966287 781768971 157846162 977800327 200238910 307092308 193709083 564982211 821058106 125626020 618569196 125719292 945459407 693411508 144318064 212775920 34079826 542095765 576147036 9951970 664195559 13987487 66828740 767655931 843091060 562448491 902805367 669962825 621775593 604272228 703064495 938579179 836890821 992305795 662786263 712168888 434516891 614110719 302195354 595941611 44180269 311807551 805967846 735428103 946172633 904913697 260777616 837874292 826747696 752182213 663403426 504292074 269011302 551338131 821558596 643356137 387163844 890158718 38857971 865455546 423004046 452188005 210336822 118429036 267781096 683731163 123196001 147517283 373262068 452349397 274986479 573657601 396897988 897055603 476825216 620249287 493990719 582422980 336386090 219165465 365789317 736526006 367038663 956202767 224198668 263314659 231674556 533441715 981507561 469319595 619415650 663724660 479578578 545710865 860863799 721494602 79584413 639769972 290372800 534787983 299515990 964040463 666218272 38846077 484474283 594336404 304172924 476545116 550008194 612261715 577824166 178465642 512037281 360917489 66537951 852899844 345464597 736228215 755538703 404104256 108747535 889951906 564946267 295537077 908244906 758177732 766681569 836525857 762687852 69041282 709668651 848158247 751608178 923210883 993450934 901817190 838371746 638731238 157844773 3618349 842850614 85267485 831112051 889430064 805587584 405095620 576278867 251160366 212297862 644770654 52769172 256268265 282251034 230962760 110199793 225031381 958835787 784907129 755688627 985560827 920788575 963224263 960880486 873920973 253897147 779794564 639872248 203879558 324451396 563923822 789345492 941366944 804411813 23024391 616116645 186167085 606195704 104389779 313792646 723856296 252942938 448924557 10531327 455559375 712862986 85736904 525011732 240613517 42300193 456910703 361218203 3430826 413145279 589608009 241492818 872020673 273429656 392128648 691041393 96584045 309747523 458232178 244550403 453934814 594687386 34488894 580374167 575164258 536203289 255608491 16921111 177932586 458063017 247053531 303907225 48098862 171018998 361424221 626694827 28036529 849510277 205577253 921854526 506640751 363641363 713722817 245705462 521264516 709014094 261719081 685791787 103774695 223488834 387995580 358672504 606190316 35683265 681131437 682622244 995214768 108849590 975424943 103991268 77661201 120659926 215632799 548454637 721400718 550969692 77410362 698739130 16957731 861288173 626241203 368801160 972832611 284481166 425207241 448483681 129948862 441555302 78995093 322759348 893606388 592395017 905561961 170771838 340565987 593674389 101853819 33961462 471386643 419504689 58217918 692511558 490835205 771780366 492406513 991447452 738668947 902371199 58562516 195997309 752576965 81374056 540284489 346216030 374060486 126335049 718112295 691962442 460171330 5954236 359908796 968062520 190341165 121949869 758165949 796806498 121369451 500395826 474500935 498858040 915873732 291927024 997370756 927033389 965369904 617652628 200347653 710484489 378687159 514184441 280199949 950644976 809350283 704681339 59649227 476013094 93016565 130411273 972711211 160739106 583047102 640617443 808885706 608171053 184641593 290141112 851087225 500857039 709322030 195607791 641688011 539366004 199652151 462665567 973213477 814598707 97159677 905221441 501015168 486200634 306987315 108618825 103510925 725649546 941882627 621882553 979193301 686963554 992398423 298798219 142118605 78363314 467671967 82763557 147290742 518151904 645697726 550699060 206135364 28877689 995951892 370931804 11501770 750231379 390103264 735643121 153129271 571895171 361817399 668515891 763284213 280209179 871169497 734491347 944120779 36627363 440337641 995891388 499709418 708145846 57385825 69506573 311768470 635419668 463200870 612935956 798098542 114326532 830316997 699856317 606105765 223993673 163136481 859799155 596986363 937943040 948776691 441410657 689973940 531919663 860358756 1821485 107282976 161788638 466246037 301662071 850027928 658541285 370773241 485014746 20356860 120236649 262184141 587293011 783811733 145299274 59522797 219566872 610589262 905159346 50836195 286097603 540679840 665979680 297792215 689642926 235949642 107579118 143417178 698620915 883593776 709944753 199610516 617828126 542362143 936391699 403377852 715542715 439487454 93044635 927039055 390720396 784557052 15424459 833293673 133676026 290641937 284427811 14172368 820350536 141610467 505287728 582858078 656088824 745222376 718668116 917418139 630381451 447126463 899324341 712877506 435764761 549140955 548041129 412567026 443309671 989382960 428419457 134113319 675260639 895279516 381788163 300729919 843762824 310363726 973858531 813696848 565039464 541775422 647787955 466838236 528359162 181797414 614479481 758471353 790786942 543730232 534331099 668136356 186377903 292983539 294552294 505191992 25144673 804028361 437031645 387579860 519923317 551669823 736725603 152296388 335130469 880065225 869930914 498867333 26002785 601530451 829214629 252841680 162140473 109192128 400198362 245322333 359196404 113903210 236091915 905189538 452428849 904429569 149617275 26974949 853073689 619327945 107044505 282936206 436560887 709937165 998404224 935880291 630498014 449520585 232651326 108046182 210109899 931252118 607807892 402723196 237904458 265584740 592594666 896260021 384241852 363641263 384227336 61891438 971316343 20461801 286926582 734199604 81353946 655196747 539089158 871985374 385025939 905500469 524066541 736122822 454907103 623055820 938127625 901341186 360277230 87373095 653227069 27706004 933714752 385141686 655348507 192379242 447197703 32939664 69728709 359570470 85050091 432698861 391300273 531237936 655068130 925319728 268089494 943141951 805410632 671360360 709738174 364739966 967389135 658346415 33451429 922587238 121885974 440817320 208716850 519383219 967725114 130873979 523859390 585743719 765178113 522095616 582519848 915542743 22179650 706953680 459255358 628381805 394484401 460856245 808913347 459560642 216827255 389960147 988946301 360556728 212435550 126482572 329455873 543354736 655611855 220073819 331140873 199925526 427324563 332336690 590699163 151102714 375428206 103929374 503021617 221232898 70638006 919931106 96481671 283228549 700747711 125550627 61934813 453252418 412829715 71294461 576130737 385105202 280214253 427177544 657735972 9542979 727008367 361238142 898479059 588652312 64875681 816672828 414211457 2867438 520515415 812565768 964257406 659485657 345250623 687804680 899199484 545987414 573702572 435209149 734022075 178453748 738395670 406689612 788560116 496723612 693796034 979955423 97957228 276546790 675292847 627925054 756504019 620631755 67589826 201889328 82448704 275256714 189526305 590601957 102104901 404952886 757911979 515763445 223462353 699082973 232936848 767660533 32519925 476421395 518182508 484239402 8656725 650367904 9987702 371244034 590638851 530525452 98506374 779607825 409411004 10154309 485116526 297229151 906330267 551962453 529783510 62988292 667475658 821406020 462406839 655945418 531324777 987352073 105265309 356863611 154735817 33145201 565776163 54345888 461456968 677930398 918592398 678059251 391300771 532823167 584986785 102031972 807606133 793859309 158032656 821420360 533844534 997739886 874977635 290895430 716852341 637540271 845006434 900851558 623428964 864595267 696963134 257544404 809627897 295395223 250277736 448432060 774492949 888063503 204726646 346034199 672754517 453191054 571067571 978498034 521145846 129456909 233788044 67716603 271899908 637946513 455884039 324482361 616026214 299267274 284268624 387414175 190296630 119381463 108443759 660520611 131170867 925591267 377454892 26575507 705445570 555545982 531082239 944398549 78667360 304717533 792481251 808544114 413587808 520751643 331055660 368362699 414262892 210623148 847078202 643306499 8656210 427433652 752863355 510966157 552780545 490642047 684218478 456091848 602793809 159866718 116330059 480452858 554335659 318862017 92136654 2368078 915645584 948554313 431055481 411920952 374557338 167310757 663372541 108254736 675200052 623323048 78155629 852195622 498008593 800083037 285728490 44299091 546936710 106090814 430677784 987773291 65994428 614984130 522133442 631921318 588708823 632266644 719132581 744613732 904459414 610050491 81691305 854362944 407435688 919146651 401864643 900529220 920633128 112955714 880180737 564249828 317963200 220541109 615457219 732051926 37878429 854807996 529956388 166159536 616626971 918279787 145864718 345778916 650813323 699751624 267655748 415487880 937824060 249373972 812847415 321630467 669696368 986394860 18235822 430039998 794797186 206998154 254891722 551065553 105633875 952250861 47820416 955624441 91485682 968126060 665327180 899185721 824836873 342797115 752460426 667848234 535886418 815553196 292909644 869471308 761585891 185102782 427261625 71689188 81494044 427343741 901983900 36955011 367218793 292408877 461206109 901157085 69564406 388356731 751841634 948119765 202268140 414198933 355857980 236942697 976992325 357566689 35608293 29665371 146771500 708764974 86386190 82140312 232585701 681340673 634956694 271712091 504857731 474568690 700453202 344143899 601706124 488875864 522252096 311568782 692185490 383039789 38232551 116612572 445727745 716724280 903429747 693942880 881324430 408312972 988058194 639617161 527014483 29816982 858112040 630021466 736256482 285516770 239382437 849988661 255089453 399545362 960382426 132043255 180528505 112681937 738063497 180663683 686383505 79942073 833457674 936313147 151329085 908758989 662357688 28325519 152119440 316707250 837021795 628715346 331440483 988824190 706260753 616751014 629557644 160028910 327548979 147750577 328973840 142767503 655834018 623369434 638261347 826354604 727801702 682619993 260360337 546636236 799557709 832074061 183304678 515657639 761022768 671249226 308064300 618391832 254227872 296008448 268350433 885305115 908815806 690838947 712299445 744993663 319431094 17003358 305752269 8939273 311413001 345441261 858411499 999654494 316019609 475224844 434337445 233103943 501111020 468138900 554518522 592234696 316747729 773365102 512249508 370775565 506070034 349077465 323804438 971222359 258547528 208043545 688101253 922193420 608796065 569127770 536123239 656360676 638816091 894678160 750026929 861979497 227029756 867368585 565847924 931714628 250357808 973011337 253216136 189265275 384188471 896440254 21622593 477511756 401146201 523932006 526664999 668047581 568956661 368063568 286052193 55947976 666397601 934318413 299878029 867314360 430439461 562570329 266489593 962955783 670140580 419545942 517695291 210513454 114750045 641863056 334299971 580647185 766740627 171459441 643108565 813137938 534702678 560131655 449834760 187865458 172912425 647584035 54635234 11503862 260467252 435448176 525314801 259519170 669823858 210414672 665469289 760507079 786342431 258113958 738425705 863386329 548675922 31037821 49005500 306458266 785330796 386696391 73959400 924321631 231224726 737746179 288714605 464740235 528952596 697111498 517156993 406098789 299600788 648911439 660334107 937544544 625197645 552420571 886151111 886793866 276965919 811994212 694685296 405078781 110677868 316589780 775698158 243576160 409074197 250479770 394650426 858039182 966709485 45995690 257217934 137291196 709144524 667548551 28571988 863314517 824509362 752702763 238532924 648010986 796391469 792822331 448899354 642747013 509177619 608138392 648375744 302845379 605064528 538686611 466072429 650670043 873700422 165650722 350468995 363360298 976041132 235294270 627821623 686844616 695260275 209928768 633766726 669052393 49253750 743116578 891495498 715729420 142042195 501636771 723640065 922582280 891107241 397473558 376628487 151094559 672378441 426096270 420062032 98622177 693372355 947582515 637922277 239192497 745182840 6367071 449157147 721567747 642972088 28983939 227290570 457677029 635178670 76435587 391550012 509873952 403180065 734556444 139431229 398427620 19148698 910723348 542548977 798896237 709684025 457679685 734232381 162209208 408761388 922671265 783558465 799958514 767271875 279217571 57642237 371185434 346420567 708141849 387983724 403761432 629647535 878254441 254272384 273544865 355352065 80628828 508939315 730548438 520754537 282072229 119875995 892954305 966357678 12106794 193623099 560884052 635983852 852780527 733995044 973276591 263943245 713227866 860321303 896446246 700949459 331551767 752367399 852492565 507684729 589029068 983239628 391465104 640023679 586271560 391323558 631467831 793823816 610510606 408646544 668896449 851785916 26760437 749277177 391703887 144992273 695671547 829313641 243957332 153081540 674512065 705960313 931915601 533055316 62682960 976754498 261056939 163157893 931756901 201677200 805039010 55709809 943638522 586463787 356695533 561163483 972474609 271444307 881210814 807268666 474181428 663854814 680577587 989797581 296705618 973259831 155004703 834185575 645913527 30003365 477034477 305086019 842525386 186347669 507824182 690672459 981236142 859117993 677199979 773229659 947170588 405761374 458593381 890806946 633978187 90217752 240592654 266459408 229098751 392358316 907726077 803377163 465595144 154736545 672355555 168238394 158120721 53687606 394223447 23952921 716432544 425262665 511216371 882882631 908454609 408734166 344642680 661789908 393223379 27269114 886613621 962814139 480912715 862187695 562634085 447719080 860603479 66251593 439508430 345006674 301289447 532837041 112788575 394216495 834840067 47419812 944333383 575876896 819223801 442495233 919589129 490680245 827608732 738458136 269903078 166501818 788410587 332634757 279072433 204606756 844645412 185227180 149082763 424484168 442115998 956523812 792854618 760620822 347963499 529314523 475100929 928291396 608632525 143153787 425514593 324067693 147602687 692332749 95762363 11869564 724640127 884957063 516074308 374128843 98101714 974732077 338994931 895860418 32922562 639039354 700850520 998994612 468169562 379061689 640239300 395047501 532071551 435302043 46852458 278593506 813034875 579726822 129367560 989264720 253537003 35322618 672418507 291111172 301712916 819000840 342793785 858189489 95594367 491196288 876913901 748943981 427190392 525053223 605035760 128753219 404044800 600438905 375030066 392990816 249129968 482658017 417797038 516371639 211008273 475778615 539455919 539327092 687648805 682556417 442010356 250335269 37383579 317018758 95840009 73824352 582716045 592448090 255084259 927982569 772200565 8471204 407659828 137928614 351753879 352577875 594374846 971837799 162658932 901853835 870466418 515220878 479538356 896852633 847930859 617863027 560478857 681006417 974331315 408146897 682222371 449132229 966714131 764179871 130138669 686322404 970886517 415761926 670002778 927234358 132625748 647491164 126666042 498407370 534539920 433951103 705212375 394059003 788972744 11204958 682401064 620663497 884287804 7146911 27841705 944201183 797632926 40264744 672733654 198053579 957097381 454966729 681753282 730279382 423214754 181480052 364168932 467773259 866656583 519046540 762720468 543543409 800502266 346968994 269202941 377137648 146092430 285110261 287209548 21562796 870285985 659824243 223860592 643006365 716721831 314456328 651840519 784244337 586405999 822603573 506874033 37888825 733555149 160490788 922003610 83013872 58889120 697623627 429967835 306812254 715637201 975404969 591786813 740793610 672984649 359748058 339896268 613625524 464552478 54882369 182317545 769933697 584682002 773399799 354305461 3085941 801370213 668822164 872363378 570305792 363149620 298945237 388058641 171586968 329759690 952543582 702640322 240238751 45837565 684472753 671461393 130451106 460631970 268274289 230477217 720689556 392745589 504639297 993565274 852273052 8346552 874078748 823721224 66557531 975979769 163205487 465955606 480008085 238045510 422283805 713339259 35696858 81592194 120865589 35861977 692474040 755596001 653131116 410682690 848444760 320794032 255647936 793169586 592834294 958585175 27931436 104324712 514957301 751311635 47627613 922138069 745816041 927937496 676230986 532117812 438101946 817034474 137615528 429763800 224508154 556922462 797242472 264190342 316273913 92419472 156794309 269018235 468281948 571652398 406251719 877619545 183444143 618282231 525779591 528742948 89653956 397041949 230918772 89056189 960600677 521484442 912124094 803591377 633569848 452944385 203301653 510313163 547348147 313417697 638913855 755758000 170246201 750791163 632413539 782744853 967732436 988416443 750212311 375647149 375663709 848788150 548938376 787024260 177115785 254377289 611245568 202323305 332748359 857152347 35363141 598084313 821999764 172994143 799448287 859306409 959877770 521526361 237288840 853737379 136651969 860994502 184358232 187889573 523330241 916899411 328192142 534259454 792044928 520704350 439017985 391285883 950366755 153725882 974488457 238595399 330099583 195276113 88012200 84759340 800712680 506604328 255791689 272792003 918543384 946213102 690811353 742647544 817444854 230223408 206428895 343624287 985386854 859331917 850029660 242964375 858616898 298036353 245017526 58781833 860774471 96710785 616354055 415511137 938998032 965449306 124305053 502468879 701456929 115248706 426343312 370803847 175337007 187371946 159599012 967719682 345773119 934398295 882787868 716698625 534444827 941163376 472394781 989406983 106540538 994910701 658502596 143475352 910372862 378948577 317359974 475057033 995055223 936302151 868557066 561960873 167100387 104704899 246090260 934240150 78675274 662882304 781689397 230778314 369291721 21243651 459283171 807143627 134479354 205383267 633586039 336591038 932930397 259541567 470660087 924235054 518550912 933426704 247511180 889966451 165014601 811681981 529428314 652650219 289233911 50467412 801809444 119193476 323476448 869083965 136266096 698846469 358113969 988761830 654613034 30435238 103875140 765941520 97971894 432830080 577485466 938316377 122586385 995969964 609165219 809495515 680440696 294046724 404234893 767719835 121046895 946041568 448420491 658629902 16124686 465278547 54831309 583275761 594725472 674282898 538403509 460427069 475354197 713920136 982896830 445739012 231550975 87974443 570632832 542366542 719150230 151992196 195152870 500223237 78454407 877571761 682453938 558594703 689434636 545893144 46045192 686799647 257164980 916586528 174097648 825039320 839123376 264287642 679169127 624786638 413681293 542151191 655556336 829850703 43714835 890896658 230706772 413039333 537167620 879746093 112497794 689311096 866663676 368802149 676591942 59723784 980166567 651956230 831759420 1187376 436488940 19834015 687665417 429923181 4204887 807620780 605617897 128991304 363357130 963251129 577905823 829629827 805377763 869597787 621691598 395410912 97104193 669628486 143960575 796518580 965491575 396698728 897977170 661292790 413254413 317318129 850461954 186592645 787942093 166906427 125763350 397905139 642152414 819999307 749716439 43666585 71326556 920867581 331657183 863191892 693797986 79060836 462018705 438857716 519432524 250830827 360302885 25693375 155375495 509268244 145614917 590951627 857772792 521110042 756005088 91835835 755633252 814054970 535036811 437090309 173231467 668979245 77479293 100638781 113003091 790695048 454390911 594495048 196695552 30474852 306572390 64497255 491259170 577357913 618410313 19910845 605586260 236065525 304292222 568444588 98529111 3648073 828007661 367977457 735158193 261541163 850013224 665334805 179706400 533549309 415859950 503138600 401750858 316441874 467597897 189680527 676401751 920254240 61451158 493616246 885224951 249587119 21025522 813142873 572835464 443243148 930654618 54816290 785158334 937982061 518565 537506282 151635122 597994523 274516905 688539112 347305021 695401071 732197239 909600568 474071548 686648727 496948200 935051550 303236774 725009086 21319916 376905721 106554530 166698167 94200507 280721176 142009544 16639950 922485552 378550553 98468614 237506839 95948012 998407073 726098113 864824274 976390093 631617994 358922113 257456617 623558824 589627373 729832299 810867146 584288346 386273957 292289755 566405489 481241518 447928312 126537067 129660952 987203238 348814048 657608466 706014970 804683313 746712201 537265200 935745780 322738853 627080434 897494140 647123426 812781324 96150440 679039073 628378668 594884624 976925029 381652997 669676019 249206484 294021184 82999765 759817497 670484125 407907296 177335000 163175535 819193396 102540339 682460136 58849354 986503726 720218814 52254872 711240550 394095925 575103877 566794417 608677813 86221168 884151508 986949220 667846039 907925931 832329519 75010604 87842053 221405640 98181823 432604635 911080994 929995893 328950060 229885424 916413017 70658633 792091680 537423406 456301249 386186153 665778067 138646755 709277177 187056952 888350086 978592915 542541285 638163273 425306183 458531153 100986492 483240522 588508219 712873307 53598853 154045074 275576480 61972210 642150483 762832047 437860619 548389073 502143504 66569919 458931927 671640859 346001366 88037575 604678338 602998900 209949392 339991663 692189044 262707038 76578984 546901239 841418719 99115673 336595999 109845752 43745896 980712863 740461272 966682690 905573175 971801129 435162434 405044342 677501048 885716005 519354600 290779209 619111517 236209027 437754748 485172586 843917682 696555347 440270980 50668502 784098603 358136298 138759117 331167547 31239204 760992975 399573151 220468895 244247892 389600332 298243839 383333006 717827765 487792860 775901356 821550421 524171355 100077705 694742061 417949894 47678377 498903743 698282545 430339619 433014671 662772034 627017607 192947832 136699714 467488420 615507508 992591873 127413481 387867047 181760770 423279323 751393346 588260563 753205652 354672266 343451837 441612267 514321590 469205895 420660011 280555318 1357698 346844705 668229972 772986074 299062204 336876425 122593159 665827908 770073521 520349595 497235918 172665196 119235865 632268916 712522579 856896288 221462677 767214838 36022314 324297715 420003495 350704838 562594831 201281271 20977689 25470773 681136708 974405693 252887575 231689161 276564438 772866587 310681095 805432654 414763626 877728297 149528645 694366867 514008167 884513565 378106976 475341562 998034030 410632180 770648430 753367520 68278831 984659164 795770754 747353004 664514584 865262595 546999868 815342265 664279244 253328795 907163062 848631161 706275805 731131361 995651124 343881417 557028565 458543160 144160230 40852439 821068618 478036795 603638681 403402995 908380097 165690628 816734779 619049480 615243611 391933263 702156349 167083964 484517846 583129228 548387484 279761231 323267728 554121905 799240068 404673936 369684879 919136235 655116712 684252295 235477026 400639276 963229871 571793758 405283694 24917712 373462098 657914149 766146123 358122069 747367514 420728618 921657054 364694104 400161674 335516493 709150131 78709360 106119189 585665809 777923525 305283286 537384039 540017701 138910653 956887991 492159765 43975119 944452873 559397505 100717961 610693722 606671694 667083733 243418406 826298804 324053925 719700500 541905478 276524461 12370854 770657502 983606768 521171914 98087137 88914943 220683333 772910131 882298629 918783442 931602405 285285968 240589766 544496201 300795112 668410584 636400963 236486407 672186352 49814499 138494700 628015258 388755909 499135141 334708982 822270901 519668339 94021546 424972186 636261240 721647082 521243854 7477876 822849413 685855762 823338280 314619199 848281520 78407852 656415982 308281562 439590717 307971542 214481133 844802926 437857857 244851864 295631151 796907580 595522057 614001272 756179535 745837547 71300410 80281426 781137474 233373045 684801865 82701091 827164118 894499799 583007913 247492215 338781040 559792910 641657039 665340902 60574756 120963871 88750917 313297013 624251031 632689491 766341310 219404949 346140762 675609170 169695476 899331445 764022205 876863047 194551380 724692657 371426022 339560130 127209678 156468137 743460464 870921557 328946090 83970583 61927926 911153014 524039281 431315778 139854411 219822296 219925039 862622099 48245044 730819442 869635175 237967757 911146047 279090129 193763209 249479181 193461758 883599961 393452080 247755761 32544327 615157485 287601937 776063855 109224264 758094154 500388626 896359676 613587920 682550903 359756149 182401919 437276249 634673685 94208187 276371724 130086673 283122174 891807438 710256618 477616540 112083122 250363760 67068384 198362920 311849097 142027402 284299041 956615145 890716688 199884576 510138286 881293834 84585610 970407813 489177076 543408492 237265331 576075654 344798302 465771535 375457819 429289895 38981167 322129127 197571964 946206002 917925419 145710314 814634738 427026646 910922892 595965188 250924475 431305252 180657469 941120619 534932940 885780607 484712 732966644 888493884 761844113 842105412 267017800 166742154 736103775 367592283 648321394 787385267 524962059 680458642 500200480 388739008 322031607 233801008 361942741 863354250 182927261 898625252 997241909 22449514 447736145 578054454 365485751 79853390 773135296 879253521 430777810 710410415 592175553 148904963 420482610 882357349 937201839 70555015 776024764 807257840 889419437 544711054 492677405 499363514 613544177 727302649 981801617 231758862 349740059 580403349 935156833 364306657 128955785 97053126 315525458 712024190 381752371 657203801 488534318 944218218 937961371 407800145 737661606 339140701 729274057 109472957 800223725 780264723 436156504 590387441 605056502 387032159 739012361 838960721 13643603 223788138 379039242 866971837 97639426 664323367 978074835 661149189 561054606 809384439 387236472 251002810 398435710 662210074 527845469 619202471 533657719 826241029 425498406 167159506 716549784 586213889 343986920 410682524 915051989 95368108 731906560 132871078 10581530 988995995 750069148 657147352 211340518 578473189 403264562 351227266 904406953 233255590 524717640 130215856 833984885 382952761 489689900 988447282 185353560 984274867 8595587 627816569 380254107 825597356 263720575 133194216 793423362 589749745 529859680 419493578 517051133 808855625 535139518 590229084 783796415 752761076 308349522 597363354 309417566 391569014 86194510 176912877 752579678 428414177 206380789 881173329 326680376 577131551 242115101 529669667 17083464 316791596 781068196 673490293 943057117 729017558 388400818 38919109 971646556 498207318 397825657 998824810 69718823 31517970 140390971 388374307 678134138 302802695 273693202 554499370 571309611 194922026 738913762 847392343 210443167 606318421 701485538 184824726 971195132 268308305 762701761 387178966 382282910 185302880 518556058 186689223 931258062 380016185 416038895 587790460 154246794 93073837 314211650 608169033 340880995 769737883 963159343 565965114 676163208 338980559 129790059 205457924 395006583 74832589 399489965 906390899 418257350 555691261 777727478 298354659 79340393 712303312 767070837 132540515 719345715 860339361 263359383 617490520 119549634 450722019 167573281 849028788 758983363 115214010 701480955 307057864 436541047 809511815 4864915 15861312 386832162 703882131 16605773 198413652 705425788 568085903 776542304 860720460 984923279 957940203 236322961 465136136 629337565 701898231 870331046 2633225 716105521 482153903 824624100 815123780 421688017 397712062 449764740 971434651 100891328 778204026 46057711 431795335 749071432 934227683 856532173 742653993 632396270 507601619 607312238 639393829 194106814 302656694 394995578 657837387 838785293 507907081 787616892 627100398 647455371 106332760 728091259 928644076 538286750 744180102 315157939 238843253 582562620 888882126 227436835 552751348 165540415 408181107 621907064 939598597 732175078 323073274 459400198 251527431 5307450 712145045 406597028 281813064 236837534 561231106 573910247 870346867 779259274 864813004 963371495 787260651 999456523 436018907 338753509 32140045 770498465 676623098 469508009 31790484 718458358 570090540 99003524 64014461 26249743 86190210 463359546 270189598 427028196 660546970 657122440 819848652 200813038 764567663 823689102 552993095 949506505 220101328 82902674 928734711 598615480 574636492 832977592 243136469 199681183 78887529 197901234 114012473 255549746 107634859 424746096 432744164 667813823 366507497 828766060 174031478 502213003 766398246 903592564 116157554 851796379 378368198 350595664 239993024 80614511 15914677 162872068 642305313 322463710 301577758 46675214 596143068 10586893 735065947 816324807 727810721 98955315 309342167 594329611 451878291 993192852 448645853 262341841 394975252 858891984 498697350 332019653 36314487 454832014 161675449 981185353 689167500 33391080 175897209 511535627 239612968 789840908 34145757 369729507 447669287 586636648 44572985 647457879 433182148 238153752 166890409 317944685 568358800 773488631 439748931 976288966 63105772 186585284 542933003 133782600 136771542 870114103 436139588 71125428 179519291 117580664 703604478 175755425 35894106 744816928 690892277 799274140 387818395 404281623 454560248 217329820 447214662 742098319 738285164 400527274 748344081 604428585 94651046 637655917 107775156 101910575 355946764 798428846 754415509 303751446 423814968 972251353 920041436 766671628 622259199 851314213 482096392 922011291 161780581 959647340 608776546 569821103 854394069 874968813 680640257 678477608 436175711 570003838 572774029 119764136 489595365 941253398 740113875 938448644 558426899 777999737 152349730 385431727 551291317 302244103 912903135 830715186 976514795 169058745 852105228 830782341 184099197 972056177 841318130 367711669 984100423 231025714 23703043 388666681 91192279 959013578 416377208 452853461 690972154 899325513 833764875 256966157 372075311 103880965 596640401 22665897 417208061 746817300 591631147 329848293 178761352 643498826 31940017 445712828 152377714 39504737 639340535 554594731 880045242 143826490 898575506 299158388 363459819 464485599 618940784 451083445 581548701 768281048 406137648 598282225 20291382 296048024 823898332 646121912 600423692 147635908 763923627 70023346 312048164 614858727 819505243 869273157 337818556 227153504 394279302 591124162 780816908 326056436 342925772 786491918 719220430 16966930 990353641 523878856 700281698 284919553 159201796 133892 91572246 844523983 626902665 560231164 118924838 28110053 604816786 888680423 995838954 466661903 522941702 741429011 993079165 198880994 545593557 168170107 3920951 166693358 821616610 781319576 708097509 651067222 613054700 436392542 237101598 6541315 865877151 249930624 86427778 873396461 35565694 433686666 208440042 438965423 746676319 899318466 438195890 378619881 64513251 637268573 508349124 387872650 115425335 872519782 6661640 534621267 426087089 836849825 296285879 768511077 430751045 836708287 393404224 223676078 946048030 377712715 798579521 125583385 242402172 78591272 165952405 950512737 863614179 417923708 827022166 130485945 110321010 941660397 524144757 262852620 837061039 90827213 126717977 496392153 98329198 572465853 36936853 752338317 699688551 457354608 296089870 291117156 937176482 667208182 462235567 929257262 83549262 983714561 91714766 766508847 455875068 840940506 218287823 140693254 549594224 226002470 703688863 85518758 32629405 742588690 810890436 992579574 331849708 919184325 932175088 316663794 231016240 923130837 577565605 28982888 209991724 302665267 346991054 698898605 895950451 496986103 548512135 66296437 594503966 151852793 993022960 362987901 840488737 502915372 826722549 12532407 152536685 389117233 11406260 504536371 612658027 590271215 346679619 968171788 737978041 405380190 226637782 673800299 633195817 188502154 782057870 99407921 971068847 734033235 406708701 384714285 562053418 356048419 577021480 744641251 900446142 557323347 262613981 659262945 387101793 554250646 408978973 29955773 286320767 534301561 797912274 549140246 782630837 411901892 788246123 87102964 294433982 802611865 172774489 232583780 114165474 692209336 72568553 77960262 793150483 595463677 359230328 136965125 444024812 193266137 803714059 384766623 451386394 127216944 18852294 845356069 366702126 478717872 697208160 296823027 174441312 932427874 229787708 173776023 198702259 549379888 737446935 994613294 538366388 102107800 100220772 322701427 599232449 690076337 4033456 675426464 622575086 637586931 199055983 596024047 321346106 527592792 198944260 155869804 248261528 758340069 515627574 492540430 144403509 515159629 397394000 366946233 522340505 123733960 656495976 536836432 913060176 488804991 621557612 602190361 198233537 874711188 14510281 548843463 768376552 989621999 726801534 890562525 151815415 221406754 64162295 609715396 533118617 818443532 593020533 595332176 218535611 712325504 489546737 407996167 253430127 193145256 755597129 137131844 200707885 795372216 870211599 809519137 687734474 779329730 583745693 246326575 427248785 98119183 791853813 358036189 671696769 841322143 277733012 235499747 771115600 590531744 989617595 136057886 122814427 897633299 526175817 61647286 635766376 843625404 893102308 992629029 428847642 14157519 772148245 153932976 722244799 548589729 350887275 244585434 311042532 783917990 430712155 219082416 608882054 624999706 701526200 600649953 44088627 832591806 565719268 612532827 65434746 997833307 341260593 645476260 836955929 332441393 970867410 81432298 587356737 321753453 20832197 679754159 875367899 6706546 789032753 657644979 153522385 741124648 870901929 949258292 572637589 632479655 487440100 253354295 670170573 273169951 47187529 123583766 962190735 520723676 28716573 743149149 503406047 600225555 465257851 628264858 392027026 518223464 522242958 236048083 939339841 155314558 584694789 669588961 772523688 543749861 280374052 886585598 821065367 192536954 317098217 443316929 898409306 164866420 758066528 362379361 310836022 479455775 452614010 278669910 791790498 41557873 642816776 474960957 936261937 334693163 163085387 296430326 456626570 798177555 902712608 613879724 216707573 382722472 415085326 305893745 838311975 576671942 356212105 631143722 538353224 177342113 510822048 315511705 960103259 37053096 826735194 813999980 71608930 537033062 598034192 546335807 904953747 64567428 347790866 747701526 29049656 347621497 405959110 49763389 400592059 741454354 181347402 139530815 488492883 293819704 998187904 842535039 601080240 672865692 543258703 368348029 136573000 357485734 754287687 187346552 964754555 885790653 175885688 483601439 609312573 626725683 597777660 388506309 937481445 28856296 130103401 190878470 407150704 37868732 692223979 832573324 378620643 534985469 649806203 901580025 447625230 679624093 40261005 534928086 685601763 387800809 693986286 415845614 59555864 784586543 238435617 985176995 209288112 507068188 157379105 163011488 188210143 307003609 618641944 208313077 888999100 285609866 326165396 424584736 733448900 580803987 479470852 969945135 34076477 670422338 721391648 548210850 542655921 234166084 676393483 920411801 688972681 607967169 345905130 699978517 272314695 11880093 677762669 907680981 9499281 180423676 241519071 321421101 693623293 190196653 128981455 360603849 807620664 415667914 269438947 71032212 64810594 442540468 625799471 867281661 963838954 650135433 689711156 61284476 274881351 892922856 765185685 400370770 289354013 809153822 19319536 418606553 753862279 657097888 444169858 187804319 168947840 510329597 879185732 9902877 621449397 257528716 516680070 196049781 708620678 815815298 458742900 388862115 580566395 358936708 816855201 61888626 920309758 92622783 763327060 620249648 870638017 641389513 138332903 459735895 152889815 985344282 318164792 597508439 994917728 975759659 58242909 39285873 817825371 658439681 663310454 455125971 454548573 592095767 118305800 855515258 802018622 147565110 409875964 969399561 577379972 162867901 19222585 125182551 91715538 415487884 584784691 87969199 592817667 683986547 89706729 788131530 332447992 389848282 276540505 332695847 693982943 503084607 923049436 452609286 383452560 289554808 281496333 980010326 189854956 539423554 420384260 67346372 568265456 230922679 485865298 339884165 990992409 300718261 82230343 598106484 348494796 956918035 521260387 94448498 995364866 485033449 627721813 90736997 819050348 337312695 904652471 877869017 248512888 152458763 948337637 312101251 89756919 516069257 277559161 650777116 391976152 226188284 477773404 23824730 529724257 385488387 263127108 349525387 697171611 530645612 983436298 934553591 57541061 87537876 198702862 949846948 302858429 946236841 799880619 535047749 145455915 427914593 809800121 167933183 163824804 942574067 693983418 699165782 904096248 813105148 471708998 682900986 454334570 204209431 110158236 570666289 556563531 987138254 8688714 886857066 428492412 151783652 575620142 795529587 693032432 76321370 710687137 123876430 229675912 422692409 230354200 410413525 624311474 267004791 756702854 420932795 70778837 240818752 120634422 10135642 180355299 664763562 587138752 375826593 384084887 100678452 504950158 675774027 52872051 948773521 690279981 59626428 283660768 671156354 511895190 390483731 402319983 343344314 374328455 479215296 822299561 389029895 23729580 532932775 727668756 461089233 23293936 175253795 375780345 753921945 122865647 295021035 928282934 712642130 517212573 656269657 72079915 93372020 217740608 821424580 186801843 642914793 336162013 302125463 204249216 820528959 948639056 205513126 126416378 58869520 657971015 336070864 604463398 884187358 664733979 41243240 659934239 997136320 587850830 724067610 95327410 883662003 140111120 270889020 182867661 705812954 449084618 881106833 273805640 881443149 974077799 788948290 696375873 97929915 114090822 207332696 717124891 123421309 258708132 418869628 563178952 253943732 48053315 857485873 60037384 288902334 356120226 954656339 298515384 815005312 945161390 805246074 650871136 931146811 540556942 872791638 203610927 611966684 905335483 274554122 607477322 558646821 274847760 184419742 183064184 87155785 873764704 795766315 553480366 234788277 131320039 876344121 725097318 222936184 787142013 816670485 954910030 876623815 894709248 298898391 707496368 837721048 265815018 126717763 193591168 274578705 23850683 723922413 660728653 13585290 753055556 104618665 40908016 891648741 947574413 215319286 428660086 204022979 478589939 634983042 800573837 968460810 468643464 727976399 697207947 34424593 521723365 211345424 542381661 786177107 86195052 806494670 25348518 727284729 724918088 672984337 248719925 966069242 607106844 739993801 724567369 942357758 363241033 124243478 619323869 491619740 979232873 316040788 798847718 276613638 601457879 55162009 243481147 520453895 586461526 426140963 619799378 334842065 479140968 266368737 57648273 456440266 458687232 20582578 930573536 713878888 124868480 947794004 573030348 602360550 736728111 577250586 138765783 134184972 137669673 71593875 360340305 533333745 160201298 419517509 623666494 264221080 32435531 814140899 384638581 451422491 326515122 424891756 637580947 708465867 986496065 415168253 157181010 390564739 556909700 244866361 426989215 542330956 443736253 760397762 159328135 707842270 855480690 622623800 891190036 158259099 337740778 290548113 774385582 918155567 451350572 989988053 318349312 242456320 523527114 315470755 133258947 15920953 993643133 219892541 738966362 276862113 42068790 827665753 242240250 537542283 666892160 547892644 692725614 219828182 423015750 168965003 212886074 732932495 658645685 359783574 977361901 777733096 830155901 81362692 635723280 882062416 872058551 399334846 1378614 100292756 261777976 147616127 517874436 217302287 809723167 411461884 625112313 665782483 138550231 232923692 388322288 496917125 628003701 973878841 183656392 846065320 590979170 726913 911739885 791034086 309767495 490099983 480503047 174822765 567033176 102746587 754723884 982374110 666932467 300254432 894467281 785137772 896366026 283867584 393161498 260389237 848645834 606671307 889337867 40386082 287535901 215579664 805921234 99200228 603510696 384916193 457858685 843618849 563595781 955177101 640367269 563188725 767206516 901561223 762299949 561732496 335043047 965545253 247596575 317758146 174951871 568705346 789683951 184625381 624687471 700219386 810887891 93766927 674207288 588587520 34461713 877467760 679479615 878733456 495110503 790501773 128377974 530316129 473837202 875918394 364151889 16539673 502132500 539336838 542598975 77981481 294787400 191530051 781695295 4652557 492565079 749741155 159711329 935632176 441520043 205330445 810816809 199546872 150507713 576783855 57739588 898458692 903166522 849641694 656119018 965680790 236240486 54144508 542099858 99726347 603545402 881989925 791432710 880814532 130373457 774177868 89660446 760249217 900226572 694556001 861868566 694909714 759321188 570184680 10528025 595327526 900832720 867278583 477447478 984604059 202954759 330445911 507547052 838223498 536085476 343261816 827724595 250386579 427092248 502161878 53003351 305845075 886389269 223849476 819532189 937921422 426242448 215471288 611652239 74166454 15519464 279445964 920419601 17223950 753528557 132009196 259988811 287761496 199777691 184845659 833043477 477463684 246160042 991518357 921277819 795098946 484418748 447654980 63330629 929803615 330758071 218077267 611827723 354258917 680194868 663229879 58316302 684755727 857976370 829810230 66201166 81759511 303114834 561386257 566937977 141152419 222109575 540342602 791892314 932336595 987582485 448871586 665126892 850723905 746993755 969633392 604658945 769648763 232319847 479288851 362889666 689998980 470519907 633689515 738093502 619798850 522225714 312360638 687622892 189750807 140469011 604605335 740572303 983145978 303132612 705679937 252855818 301633607 804919414 249376228 401382967 940234801 202300923 785368187 650465017 825088354 278222571 650903059 286638499 874118702 769503055 908716657 328804998 710176942 725888095 894646170 950631731 247960721 802891786 21477748 58913491 645519102 454363608 120584052 116767361 656700268 388323468 123227009 963244571 552339435 470753936 366935755 927669938 80518350 644616386 761836402 696167689 603454430 972712417 558614217 775496449 316314384 918676888 185072712 826413728 878037481 697420615 968907878 398328233 37507170 860434194 236137064 766709061 172546740 965584372 556058605 198336730 327275927 770983646 881338445 347680632 216660530 237984619 595066431 237793254 322691275 603336809 746411304 590231604 596196748 37638843 86773650 437135458 424173416 651785297 695404156 583031046 138270062 558508535 445641876 623554840 228854346 242666798 170161762 689590005 581136670 347614399 402338505 962441438 318753726 23507773 733478294 900597774 906037589 88604156 311135026 806749961 825701263 11533126 133005764 900036608 655262665 59202472 271674596 443945432 639580355 322910087 53369438 60543876 857441064 757989810 789544643 100128195 855078804 174573064 689323112 415406430 469192781 386943794 763552824 799260406 50255048 756643136 454251573 426841667 215365440 596841284 130824815 159655517 738445435 513829564 827990299 723514745 513394418 976616216 780028693 595176226 746126237 498558540 603132217 912741415 260470134 223966468 400337857 441052628 516596774 839556091 368477234 471313224 640197401 658139971 472759427 481880804 253220018 379019705 336563558 19966691 75308454 609535954 847661107 271621301 544075744 488943527 665252692 908818900 466338793 639998862 640956616 669837828 128668224 878101785 290726698 267527406 412948904 561103356 256782856 883965807 265900427 512796653 401556691 224914738 657191869 884156571 57329359 836869373 343216257 997667970 308783393 587685357 986787776 2471082 414651150 721846040 220644493 409407091 980082099 330693460 683680987 361266080 787996071 908193826 67298909 210562766 361176318 946201097 418335500 597283691 967567439 992430095 177051389 834472000 667749606 88040260 178725640 504112965 687982847 616748610 856538339 205863379 107845328 264388580 345534921 935599546 218961482 664641779 762774305 327331921 176770243 224572704 937902965 498734416 602963682 557762576 722397618 802194687 469826296 813144870 407061571 311634494 463838236 912277293 281549295 198813025 949077749 553031727 7859390 962142787 444918784 606684022 989927871 196920196 18617647 536233504 4186678 290887065 647272972 587678953 59854395 609201618 535185951 486371642 859173639 157094929 252288670 613749172 220349986 6283296 521510700 308677369 883593774 922374401 420074167 191987705 514019257 105666845 484456871 779718246 629484745 656214954 269317605 614732734 645426004 754315776 578507894 955807244 759395604 936804809 601819682 285083073 856870277 585079437 986824409 507638719 22024812 261740873 144471249 748650496 429754013 306056109 541162170 345222182 392561744 445955442 111881752 952948513 231863707 165618429 613860815 335996396 581142863 518787677 625210363 426120598 349919818 882025935 298849987 882317955 566081486 270874576 272251557 302615000 231536011 627328423 849941096 185767956 672753568 762524121 716068362 887322022 27244339 807413133 327135574 301453643 184105706 171244677 204069033 278239549 572417269 664204359 722069531 651718876 229261205 608007039 812930918 664821338 696385116 799721739 572830210 283386047 813863354 164567795 408418065 595065261 680642358 669083356 536338135 554548283 880802959 803972388 355394666 30760376 336656415 521691100 364802864 28407433 318606756 737317373 997931903 949048548 753552099 790834973 456605036 412352990 26452104 461118376 365024986 854834276 247070817 781459922 885951904 67054891 196385314 849750439 918127510 752292578 104266194 519396423 226322125 437725447 504707291 113683556 186978296 488187664 837102687 443604307 454202673 266945726 119899792 59023048 991203851 366482489 129259777 310598404 788891498 174877566 891644779 816318234 790156875 398784069 877986864 189189223 913685259 65519986 96993981 328907205 469019798 623117423 939079879 160959242 324692885 769279658 732360276 241750649 721065410 206908699 855889784 292092497 905028202 77956673 649197809 345454780 14919464 194981493 605927616 888036159 979103678 552159613 632841447 761290235 545248222 230822041 224624424 491131646 77006324 646885403 255594858 299833878 383291337 331709069 806134043 372960606 162643497 373876747 271073265 15528983 502735215 705823076 582003491 358902890 299831704 505521818 990407483 587071681 929252049 623207257 486391200 717450104 922857145 182084526 619344608 743283673 695829804 516277420 188893126 976946145 93354873 970800856 493475860 623733245 806063425 533806833 922922267 830987124 542309003 279762133 675782145 361069672 630756270 358638232 548893942 57972087 620695202 289923373 85736286 433666757 543113756 242799485 888251794 464549740 278402689 868808374 490453838 37829621 411810668 599656 516881043 187130254 21653006 144456431 962265310 964559790 550378898 744458761 414566186 433475822 567123037 61905588 358753690 553479204 137482484 621609725 642317065 798244687 238278901 582159221 989690670 894485578 960072450 655460757 763555679 414766443 825122718 709650740 406894217 614174671 826091557 780141894 370172616 910814165 623563244 874703876 406917855 246863893 674101836 635604261 868207115 421310819 964010859 992781960 276300718 477514654 194134913 947142076 897279743 175833709 200136108 379240595 682702252 823098046 8388502 929217801 690877557 26459837 494569758 686505782 869981850 539514178 847950037 88000007 677645230 534258535 200289976 228546067 552674621 172943941 137747016 661316557 562986983 411248277 213533437 752240585 875074158 833809721 558136977 189405820 235219505 94880447 779503746 544661907 458746436 646128963 842510684 184575932 369283306 775748357 554343654 327645554 805119969 514647750 736680175 736426329 456137515 316435162 390379755 235664003 523742149 450371904 230240705 833938692 297323078 193386475 579049979 286176442 590756298 342322084 343202348 503037337 247138580 687130932 732797879 690234085 492490414 627845809 767185591 665732607 545728124 41671123 182081154 697892859 82104434 736280007 599247260 319340080 393350164 281451634 116749032 523457943 225110702 491286002 570784873 433240809 388699225 614047763 953532874 56597003 630025422 67657277 201572556 353588294 131836753 96084789 468796142 322769764 411255532 267267202 134181800 419703171 655689022 3772992 742946831 928553968 882636062 792431800 132127874 567964524 341537950 187566700 858282173 113776266 513932974 891703417 125736375 61706872 197250231 980673555 252449700 745927492 356580945 755174846 55578949 159655949 475955526 469562540 57689654 963911855 346305366 690065063 466652215 743575349 781127809 640869953 110858014 123953383 920753826 42243117 43827043 855404796 689449742 970634173 756319339 717064188 7193044 488728350 828989917 135931002 277640250 127840742 454363203 154193423 488946879 841902627 835278146 396180357 204378437 191406839 16917235 168362845 978986752 456141355 672032831 256510956 446696298 555767606 355269201 760822164 13886228 769921157 761351590 248002878 56868229 93379996 551369963 338922398 535401042 868523572 424530369 781854726 914330725 483183543 144022451 19923267 504235127 833147064 653529311 161672384 668609133 341953808 831574511 349330278 516709853 973587937 988273759 748378575 669609154 834332645 59969091 210126151 425683192 153700653 972016716 934954528 339526981 916314495 575676959 932693581 506065972 653015720 982136546 520170548 804946450 143309999 969685163 71078369 259769154 705572404 220082941 569852555 443017226 858984011 535299609 229213296 474482619 401023228 343622488 597186665 754500877 362926336 402569077 164198948 833830456 512040661 125019549 931440787 600257529 819123658 841273421 964132386 399189503 949097530 815989615 407359111 400335561 974786797 387004541 6083185 677442762 575476048 915633644 57102403 650301839 493883776 672915267 600835865 993279042 640295019 60999357 521736376 742150132 939607152 762211459 770332591 138010996 128530660 639215951 226117725 142052338 750717241 833793491 511352405 432788975 533812979 131194527 455711952 238664906 518611773 215815122 64156876 207765874 681313867 69624065 592242485 743126905 153474651 840159633 651471687 518254204 955724391 544144778 19927639 455602669 682989441 955177951 811631269 834391005 471110859 754196234 945521350 330316449 613273277 762819251 852638314 791144882 877240381 587276342 962377268 403759460 729409553 503025024 349711495 259073840 198371260 916641580 17420034 213600431 768143832 155407217 408938317 901327670 51614546 818583734 17121200 135890740 560158449 646693641 659547013 466258236 57487788 718970883 827842517 327991120 779389451 945818839 18080848 711265508 555387330 418811487 235483721 752055629 377991193 697568691 693170120 747972228 740269422 12670360 56192315 850658332 408447301 517995765 737856189 857450544 435060368 980067588 580946646 387288214 826591360 385842894 411662083 655790646 66851124 330638340 224281184 314201310 758834705 145987654 811226730 23382854 532311942 44937772 622382060 196938162 299992206 818421741 539437644 659152678 675297147 115023010 493780249 352839588 408093739 97745866 276825547 502611906 735788628 609130399 478722960 151946435 857179164 906727460 199650103 926301416 765776396 730900975 748136056 239979211 520595198 909399793 513047415 123696999 346739865 610719371 482592212 276392998 389570687 28237114 82018766 134023078 263186153 890640745 217574583 570087274 965686111 812219813 383226824 730280014 134674509 192816615 684090552 319364397 384539993 395514941 555941582 475187343 538436150 586684837 367494738 199884641 582265974 999264497 966400713 521997977 781589975 719507367 347719939 370094433 390129352 970863859 734486207 915380627 897699831 18162235 757316932 536014453 237905372 398854733 372260888 589328047 516833846 253757104 144579490 173613719 980756903 256082659 734187417 350626269 639362018 949156490 167226244 607747970 590081309 729308931 621218240 314859055 822883825 48518745 90814143 898100538 670570161 455924719 855136395 326951986 835301875 236640652 122047778 96786687 755481910 673469115 620445901 777033028 336453910 417522977 400955933 983333280 829421889 8652410 79859393 120420659 846718177 46285559 871077219 107301276 945491066 118069222 347361204 637640130 179075132 236270898 983893472 99366682 993878051 301917568 398396064 637822740 869344868 734624365 293009930 356992069 521241231 952168264 460481158 131806728 373295562 62318636 999855181 693484396 37174178 833293251 231256795 301605125 221826875 575056606 604188556 446494791 427245943 329935763 339147889 387558025 678422836 223322117 903747329 558918069 984782831 511414322 440306882 798511282 970505308 389712006 970060775 912048751 835346970 875398784 838449766 205910993 625177778 958554749 881674549 529391816 132454216 534757363 938622164 76137806 826826639 618671620 798032876 281168198 681590033 894849316 31749830 980465323 721754837 768887632 366445366 296088351 8653366 970602235 60064914 843748452 166244624 194385514 311376806 264705885 789685786 9407093 86491131 601341659 744068216 372825795 206778281 4611579 96582084 164011959 822033255 884572512 478335156 422866182 837537032 908031712 484790783 315720152 199277854 985815929 615516278 19030476 415243904 867832730 513205075 905446278 453864522 724149827 226354710 891406948 159744362 885033284 574202215 533907176 669941863 205845474 264247686 419587730 859485404 429656174 641263743 194795711 392049892 634781449 12351214 509616654 51478361 133882344 182714660 534081542 346869701 997778468 760419219 544165543 302302367 33606316 603911308 968602929 446215041 753149643 633821007 257865991 490750891 451878482 227741125 702364613 282580878 159747206 386527115 782391569 379201751 320075454 18892036 450167137 229289784 767765445 391234522 567845172 353242603 883827785 91940895 551320318 428085062 103959314 260460808 915721179 552394958 27559612 701358525 9456587 872732271 617471762 228952604 614251637 464159043 503690844 966172550 715124541 561048385 97191513 2198724 443418326 566671188 179721113 309340897 950076121 233894755 749115060 756491936 383164915 97666701 734472779 497766838 757141456 483553942 354565781 231591667 88410998 972459999 54373492 611791551 557748110 161706619 958428238 926427211 685739135 686232276 856249327 829134349 834558845 273596976 952821514 14564408 699333149 375479599 540157508 584535409 191910893 22231592 195950869 396849179 855998165 623188128 274544487 449339459 385214087 421510746 173762725 625981810 808204902 925512679 104106517 350282216 433791562 649971059 581482545 715844801 69412311 117902180 289441767 56578023 832642971 858281273 899624263 241553264 911515118 824710405 330581823 38546681 134273439 731571057 22716541 523956436 475924714 456738848 65676285 258722252 530513220 498651108 161727600 346878322 757485402 233169861 868269030 917564929 372132616 568259503 906143449 585518094 858819777 486918278 860538182 177456341 961558186 802120957 704283343 203447555 181881704 20793622 961869423 494851316 144398767 721603275 863927315 757115013 680532502 834395246 238442907 399204505 575844760 470503256 435229015 783098574 639512659 720998840 884666650 688457119 518107470 78069201 690946174 192587661 980469397 426083887 823069910 216230247 802137132 656100489 248660602 848852687 281170854 289622359 934040748 61902848 189957313 802495010 229591945 396787108 23566408 746325553 392492591 384448294 370290126 458005868 848727218 138800101 800497883 508512990 850789969 340830941 625842820 982698945 480696060 951685190 671596263 669686683 75875801 224135357 759790554 395145626 305310079 996485336 141686801 496051971 949967792 641186303 837670909 285224889 372416218 786023185 243594718 447260049 989109675 995786264 90322894 100059338 612087288 835726669 959389879 519869549 609717325 896614681 457651992 486198599 670023649 310923214 137019959 177043840 136562972 501444470 150292006 951759719 274597524 708125213 872790534 364924107 765344994 958550339 246204312 371338134 818124023 250318777 699350590 509931432 71349438 827390632 8936108 164973287 929628221 669608807 195597765 91186395 438973519 247320653 506147012 126670944 260975011 306616815 550179386 88560101 996266995 792416812 82330224 271228218 335412393 412514598 322247070 461417926 994935778 265583667 789024515 708612230 962485249 722042352 451381057 546489235 427650535 486140290 419511767 321136517 575425197 194404476 505578191 659428912 454585737 885357938 154041793 807774434 753264362 45005441 976734113 59096514 14747699 858461831 156677078 828107448 181211826 231461900 163092528 718666698 554177850 211455595 350502916 619274987 471470576 884502432 188857828 687731494 540754512 269825377 431967929 788711269 921586116 992934016 867527942 776437737 926713694 923631836 793556684 365357846 302716689 146444979 226667874 239914554 984077295 405525739 172103639 825719168 979080100 907158478 919552601 289262713 897735738 64135663 250013774 370142446 634351288 255492061 692821782 903101312 895938624 127732401 49568762 572800856 400874227 196684041 432934252 919321716 17621951 762477418 90253638 857972049 828236251 483717284 295454953 366487700 122857305 856164503 565082635 869813644 518293001 508574815 40121663 63115542 34724721 709076103 404215586 19665685 984531038 344628019 238632761 765426333 587766279 85247957 320070592 840499488 389049337 558630641 520724603 233420433 880228191 270149444 458486491 818786970 616695999 343280753 910824287 359598558 714998573 374117472 516679016 811444595 627844014 607749074 289996116 429979631 402155893 25177702 814265958 316623678 208736645 683242582 55819752 737115482 437351095 925395038 718593681 33889135 101402063 767743984 560592558 315760180 946063351 918918772 374248598 869604149 681329514 297485707 278742567 468363103 470604368 175034410 16961308 360852430 721170432 343376018 645868985 839781143 786032662 502104112 657406369 624515137 658324345 326654357 703065798 373314182 196801150 920546371 489935026 586953767 572414140 874237062 497421573 763146367 590676174 415024125 282361086 689117922 239717795 809020024 392688270 243195907 724451957 77484902 458102189 15849634 498618803 48487889 300522561 201148382 875542581 31972215 283192710 513180129 476170122 533565626 83730645 562523957 262239458 105740847 270532345 710961406 151109439 30222876 620219886 160203360 875965141 300649592 180670812 912314511 775140465 277913064 87575156 675577141 103589527 749665336 380252406 357385540 790325063 544320441 54341279 964435691 780323226 613365794 460170275 759052876 653876105 870476913 143571206 629164598 382086263 440167208 953073829 301146014 31709516 405227875 228652568 90266169 171385052 190832742 272930562 929245933 443046632 779553089 594860132 684476278 790243586 150293748 706616484 990387870 865494587 901176773 126244522 817741812 937212989 463751039 137240984 644159833 805843854 596411865 492609234 733102649 472488866 946365916 192155817 168172309 497289647 559619674 169653263 561407603 662349589 324176382 778129878 463133894 89461925 83789799 597397317 781194753 945712389 293857524 683302523 159398092 865128441 155865279 946577319 531797593 915352367 757061817 498084294 714378585 340639467 246338887 635797576 855098242 199657029 434822279 258985517 886609013 355457429 813310217 99452684 795271569 545742198 430733141 34887737 76503682 949989559 133876040 479331523 679720335 860249772 928878401 274069583 126818995 364497134 632943089 114399512 357773606 677622066 697143517 693350766 371648698 423015482 432792063 450623718 512450371 815380515 512815049 501966516 969177271 450107138 664467325 819245113 472901012 915586270 980520968 327604239 278111417 384518315 344446311 487704780 828703431 833941835 47339835 732577155 911078942 601673035 24293269 367116023 196109826 894779875 313513104 696157361 991337719 131290464 446135906 368244060 151948611 513637454 775225511 717192135 687579550 106570016 682608835 93094393 681868160 198379876 291728252 816556260 755931125 359451935 455973533 642651892 622807563 892849026 37546209 223421717 890571771 232538224 807130321 561784963 501378867 13730230 688107265 999075032 684505715 587329532 52358106 131976176 686999871 499787630 109351640 1705652 200597318 885602468 772873143 323749446 999335290 468983313 184444666 961063101 694159671 502311793 486501537 93094830 103535889 420946065 633261452 898189973 72185755 315359660 743829189 11557081 106158012 896495901 468615679 117468016 639122455 654195889 875424053 894933075 809453031 429266074 933481959 175133608 701723395 385455463 502772743 68772726 130957763 708465032 519670418 392394656 735849115 257047976 389080163 525682557 1169746 852520612 570919021 974783592 431507159 847669616 572109892 811795972 666909258 617481382 35297638 430474758 463489090 471985419 191172961 114711071 875663292 813648872 791847621 228439786 244214004 860581353 186565881 567719894 671387320 62063293 427704726 697814202 297179292 263232674 398826399 763393949 245333786 412562776 926246608 245617463 980435025 209563436 279930940 639207170 346566652 493160164 34402963 137341160 465618217 525646488 679416548 832426119 48090359 963462480 126954144 674212642 2353384 192223458 184712333 976778881 154786003 182836690 701354231 494564075 327188983 213119747 928258555 296413149 343827160 477593636 916931294 384143614 732871478 992005461 583397946 709997002 543191856 509536488 453203745 389977946 905454902 979654498 456186033 907420108 897476069 183979562 878894678 434836996 446443260 571358803 401172052 502190761 637783078 969933047 889769448 552348748 108950939 241847635 452134005 181396209 199170308 626235351 698046363 5400222 341556247 67956506 981109171 681331771 69264452 106436160 784484818 448044408 600087382 432989254 387498613 211379171 766009790 386132609 12111869 277804132 44513891 809233218 851799760 62768817 494071914 351489704 70847271 21295672 444401770 930815506 239456411 777364522 509817472 28802141 517592088 929277897 961739308 486371672 22222536 715825518 800037275 818804303 297901701 93859485 486581585 754681112 405212975 703972520 163689734 648384697 729111427 978159266 771566942 320584982 402778699 253867242 250673869 849383490 144025143 488929758 145633292 558929479 322146312 715494699 172090936 377061274 37907310 373817456 297849245 293695248 263856364 344278666 102514263 600260831 567655172 719402536 810662793 495447860 962014488 225665921 128051841 781254602 241301766 801546743 910667679 293911582 416682554 598365487 920067878 922771092 196530264 141067901 922755876 714569132 214122520 481286666 359527782 830857859 401200186 46289695 4688889 474074556 116376953 374195495 689172972 333760340 901971072 14638352 366151153 695147437 685492936 353295153 748241149 701853513 291607620 270284231 986078915 538845581 330359412 243221540 725103306 964572796 934492178 264732121 686471635 877630927 875465467 402535406 45716028 571914180 495110455 727620992 11263002 524941360 440516075 159942326 453054372 189099019 220398377 20442890 276607957 854415216 746419567 649431224 795114061 799473875 538252919 501257951 129105252 237821227 448839892 326153167 178323673 528534522 802295614 339673142 165996876 896463103 263981994 226333772 810528051 455564073 655843616 349105004 694390639 756873835 177219838 644605680 915154607 41512240 136776754 65785216 140417731 468650708 307863640 236466489 585269903 790082010 184894383 791691095 277266645 88389759 292570811 754235498 325893099 709898877 914581880 441518176 202660012 310686958 401798357 43017093 767580192 893497023 634980023 296168664 515365031 645411097 530941397 566461476 596623190 86030552 523657423 108977243 74404355 934957912 750211449 553880419 802603880 192054078 996918383 969946392 762214786 451263638 232323514 634634833 773240081 445438271 270465200 965662310 787636982 953934443 878889059 102507479 573344107 231003752 578198598 719118255 902287815 506634061 141173253 307115054 396493709 131702165 785668248 944869471 908553928 51348564 229759268 119314869 109558739 5934303 944018284 164142754 974149353 931416811 523650347 152229823 275682028 573071103 141597310 960576731 323139473 449628969 993520561 308154321 144219850 79221648 919989672 903829734 414568374 807046816 851085410 241594848 802252476 959279999 532837265 36669975 620868194 799412721 233375777 956299985 374283220 491471235 416175002 572121396 575595449 979613727 673688733 959474189 689531678 110134893 947273043 668632605 461472739 206276949 746323440 634985864 489962914 44547360 899514969 564804475 207466991 694762432 569295502 135354816 678561053 384425955 840586863 22804375 950492542 75417729 326012763 832625196 287759044 645943791 298111497 555555478 402087459 951631438 187779369 324401944 950095223 40314816 660997898 906507336 925934990 593628947 846455282 420135275 973531829 821105408 651392081 734815388 992895400 385533086 71951227 139317733 992755525 468339446 465495308 230039514 70966405 811560231 133192351 373664543 413006053 527937294 770351464 259850067 558868717 331769758 56733894 645402003 286151023 568110004 193733192 963868905 603812222 345002400 193292148 201787286 801609326 252071078 511556997 437755806 842851079 673684868 435713108 227439351 351691168 444663710 611940220 456808874 993335698 287909030 914007962 227795222 579307758 816251444 476407070 148307491 229421491 808374431 829650042 589485364 811943993 896898849 946135531 394352177 105755471 991169066 814889760 279168981 307582782 541944303 191120112 760383382 693460421 148155432 155325775 260313282 590416633 373363375 288856526 314235558 857118983 606986415 433379466 606952328 348624976 614253718 371538609 568589723 41104557 773417975 478885624 88914104 478822298 573512155 141700738 596096057 25894509 366600479 673983350 316537133 138213193 74269544 193812439 20916053 116715219 909100150 896891973 2565392 347172132 32496315 18539837 471793890 817718751 859242993 313913062 222645068 705865228 590763618 333641615 598566890 597902044 862501461 104864772 233388380 320712021 28674068 751253134 246493585 716935082 279999362 189228829 319491215 300995851 887828192 31099391 123949437 690080884 630306000 792738458 478180053 146462512 904630657 839053394 195350671 758988679 314707199 408790781 544536043 894232416 641036716 716151162 305049335 437788936 363129794 463758509 280205646 263211158 469433153 183666758 547093733 61306558 669022116 176452422 216431655 244188101 103831710 967408018 531316180 316403030 453415837 47849258 913032412 826291314 853965031 668807499 866660466 587734397 575047195 318346287 818041686 930607570 682633227 252209921 977725326 341921767 259124749 779399546 201537032 909902054 228259080 628396735 614709697 735743300 436451794 225330969 273508035 177799918 108107256 308058687 849316145 424398871 776668214 37943213 847462450 143074882 922099844 983727593 483801247 925460856 837398516 302109450 452403726 249372236 471072744 156714704 658213096 173434495 272327518 161338866 976706467 479633001 913250856 74891927 143167212 959696434 664695331 369312531 938542223 819844941 302746583 748992490 101101035 98886759 546519496 797527118 674428568 972395961 294556494 282543873 238678221 244658709 470677052 684743601 853697015 845968710 495135159 330325824 707151365 304047812 610622460 144559059 63525163 724892065 342756208 699042663 696568077 835349984 383756702 222969361 819491667 262465870 740755974 621904974 114929028 848393477 514149195 930542534 7667613 926895665 88080700 67277886 192905146 127540089 184322223 726803665 1871900 999896550 961360904 56738581 855998355 145049375 919449729 486624355 462609394 187312940 346370236 919363845 199873569 252852615 951270020 131583551 230400649 132498239 951501562 10715860 830296946 811686647 518677779 570963660 244113933 473458426 38722961 471496527 285724021 702980618 585578103 572376523 255916968 507303424 554362756 465882807 311662802 165064100 377285452 54373424 557148855 497419111 17783285 240680602 922366115 887697467 554083415 832446629 547109394 175588171 298320598 765052300 380749338 183932303 818015448 803767619 743007499 232155459 228814032 468271112 629155975 432126964 139533044 288808429 674848811 469474153 577045635 698869492 713448073 462504093 324814106 402944121 791897617 573116167 752457255 120316207 521469578 207602411 1204531 575900647 9186267 120830680 699895536 736190548 531452940 398545175 576667835 268095786 436590584 876723821 849718224 914246583 855674466 984686415 277602067 295352765 656012210 925907084 667802713 639592544 159598123 718703832 686401317 846901544 723640242 675387906 183253389 704615178 805928316 432568681 855621603 527685061 844060516 292077496 185822210 123054974 475128355 561565322 478082537 530761709 494241394 369375108 176680104 457248751 314857157 279830131 612005818 788288285 55527409 171337742 66497801 423097114 497739895 715151093 268822319 996794301 894479077 63088938 807396494 147846807 216127675 328665800 92185598 321886246 801101805 89986273 348618785 239146787 238830404 443494913 279602114 237705329 485554915 154771028 43625399 170981487 605815521 515170476 347206014 904662343 270192995 719888961 897611666 402330578 717657342 27499216 394619248 567239153 419921832 979178285 241137993 766706440 479996954 570857837 150862332 868621318 944109412 807759055 983618054 919927514 127991669 448627520 534574741 908503132 256061802 823329081 287053997 268434767 91063574 80696997 974834853 67495594 321611244 658886022 203016738 963023088 345523795 166371403 14236475 541073334 846009441 442379192 868535425 492454158 813070367 404813919 98873862 104708002 912591053 201024325 339575622 313656945 318389376 466689936 174793896 280967605 328725685 725035581 460517644 347020313 146849866 24392765 156435274 500258593 808623343 339220009 686733980 910793660 677908106 398167783 536089767 20285586 49608178 306136467 930164345 520076592 193865802 39508964 395002015 69436057 391156331 390523333 950603470 472082538 580063336 843796948 316177524 892464897 128297771 646988747 39901288 597513079 847218912 154076833 687711204 464754085 770439429 583912070 233845113 343215239 274190782 507834374 604196137 831245331 618337824 974256296 83509109 870657808 194000232 381441422 229002000 852727737 845600673 514565853 704829730 836652251 683308499 145753165 486952622 487229544 393765087 376347473 874326224 57701957 979139460 961274270 925306026 150363039 243653077 389864924 905300358 558165103 692454357 109532513 768936095 758566323 354562528 314900648 500595969 902810655 488735594 858870824 603072496 926149341 749780656 382604376 934319940 257374468 233956849 524826964 821889111 356438319 775250645 202075252 802170678 891175987 684336535 339384933 553916706 823719923 749061878 271216136 464064182 465146048 196318440 684207956 808800583 292539538 882505623 504297638 379209690 740083242 898624453 649236260 720362271 789142669 60275073 583693194 798287980 42460027 78450383 252884937 287567545 891622748 120421037 790000678 87895757 758551243 372369308 595536614 652719965 173044126 646895515 657433828 552773642 103574742 116263989 391699021 680756974 682487080 28497631 925059046 860955438 739948399 554046400 4416351 148361903 339974067 258627999 971961098 616769874 157864754 278950308 56994461 411837497 673016568 538388229 175891017 755540548 311321418 668679375 549673004 921046866 907460944 203347543 842732248 786309212 127604577 873041222 644168571 413349066 272499140 53952644 770047377 405265366 885814007 313780004 187931318 134678212 724164881 59470476 120896209 646790003 112896504 679880960 951902297 877799164 336464469 246359383 107401829 823294224 594950579 99651443 206081838 580645404 321218615 573318519 381648908 756382524 461655981 652468141 911270239 925881789 783006064 272908026 599970051 3974858 65058035 645312191 300978140 569703375 884598926 461236391 825852508 677316499 194076822 303258668 3882946 265725064 646951530 478007410 541058779 25061201 536552527 709159329 699025392 934909423 260987774 684488819 338676441 9438039 490454952 69080057 711151042 530700780 885244487 40907650 96944969 225749920 495089887 704801756 981746664 109978951 640756885 574196350 592036573 815712564 383974449 904447625 936006187 709617066 164244508 536603575 834909463 176993986 216392961 372710642 816225017 149991702 468914876 376950092 150924043 293941779 460990754 782195683 796582948 667949606 9486400 810015209 296168046 149793298 398908129 692172531 137337613 955104426 901041049 763117151 203729127 733886600 315780491 416586026 536776645 828503209 397503133 664995497 732754255 638732255 815203094 884867145 359944521 113873350 614664672 199464282 384340088 735427096 573073974 715495742 682856909 591113477 643307910 802701555 180813517 616265279 608487161 765686750 88143883 159971861 55408614 753853085 221520629 566978409 358848824 324239782 581021676 446602736 837779012 816329048 991282713 431848750 85864746 435262827 68340989 580709143 913608287 798201875 595598669 313063424 618347084 242551937 269249003 611051792 275562643 628352274 108027794 722690399 788952459 633873117 923307728 705328674 254756165 765517643 319018638 787113583 691715152 281095170 375778614 846099480 9348613 505469690 652258776 940129918 701698058 567480879 878609335 783226832 594008497 220537738 106879897 6503478 852285887 136487221 962032187 710070271 544448738 528511154 17510107 758815415 950513245 357453550 555640761 61081375 237343452 769785773 903891022 863043779 48088247 641765578 388794989 415613801 251120864 242304423 806960558 340370300 88200451 942234882 398397391 972714661 718693737 976976645 739061239 347328396 506097909 739508682 960525314 211263426 117101068 776217138 588003755 699909755 325749115 505163544 459071763 33577918 352754043 79503930 390890205 5065995 658808257 81702754 733312035 124291802 250386784 794644008 547127186 245310392 104918914 12515879 440879180 339670575 169532752 679839816 648152512 876258953 380341169 173929037 402796304 733540101 704326401 315083094 331301106 553218439 337563434 702416322 187335159 778276967 817425731 941710545 392374402 254404350 967824583 546964034 529966675 719271810 717555399 498842542 488532163 328452879 106073519 292038181 961358848 424493999 773478040 167607114 172190372 700981334 431817857 715739115 899315141 505616926 669726855 684198359 528775281 774872882 748178673 103658978 180629709 733885118 546674227 456273665 194571989 497074013 737983798 383498392 824828954 657453859 638968668 259683329 904351125 353136490 556052247 461844690 193926376 495532670 139001111 846694829 912701038 488061306 634208379 335003596 957218211 211317187 349620743 598974285 283998339 616566537 276196074 668533588 363260174 694023392 203135502 116784739 118359837 470208267 605257326 987745935 654617418 861579035 906743372 694035261 384960737 90969804 635595278 74387911 156817912 455387866 393109648 114744210 132037812 828002438 861643780 367768056 19692486 911849333 909250437 860446489 477390060 724307903 163513102 522083114 358392798 890676448 861842975 436359372 539891398 776116279 488209499 79116411 28058926 624338817 802632679 690281479 27702311 576907293 518819362 300906154 33352189 587659853 579717703 414269560 867571125 981924363 701918019 461699894 921002530 169418653 662133801 210761407 320913824 418376598 462529882 629399114 315142527 893815962 272851297 953058647 34867349 984116413 45110712 186743918 956591996 508883198 557838373 87708175 110412011 754243726 814866680 345656404 957324713 980518622 315027822 987159135 774265983 8835643 972192175 581682161 262760526 719865101 144067630 141055267 721816427 262643730 678354305 534155668 212110273 19372203 386737403 876197535 712418121 266684789 844252454 682143092 281414680 260746036 870163561 79886866 212599785 184963946 115275792 464487579 582813962 48574792 874146551 293313506 620772963 72092957 813986257 550388560 862543265 567432551 623549327 102535930 183604996 145406343 129657432 965367572 649237516 701659430 264754823 566606505 896410606 261070386 835926686 350951825 302475007 926089731 818068148 826050911 29179186 521294102 149928790 21211393 40777499 495910310 2108910 337277831 89379276 542868343 138770667 538123563 47273276 108518898 777326134 933122450 124874709 392478052 150234335 633416206 636523698 740273481 628052482 373732635 11948156 216340896 456096632 15545875 958522527 218599215 906367534 58355556 334597015 912022042 286019900 668398345 230824351 749894520 308241857 572466771 412276984 536792663 811458235 716556065 386049741 864334998 382319534 55506065 858202616 960347755 932421746 7393328 255883998 120581565 419983729 390538269 536132883 692770727 472703050 152113379 612072305 254938154 948279291 676532896 694997331 33463275 407118895 755530971 297803640 317195047 747225342 37539743 588180210 590770467 97713233 910648373 593391710 483281043 526769590 526932015 945649425 515058170 196990505 827493554 550358032 925337266 555330048 75139832 826321247 318319133 731132960 273887331 89993720 294276869 836253695 154081965 143914599 782335886 754638588 984443575 941425972 821461645 806552637 407393568 84839939 205279136 15690608 871341040 136196856 602248868 388580398 654285389 748373990 453986886 332543955 126229183 686009904 358043992 834494411 754730007 646570823 425827303 764708984 281275459 853717260 672268871 862392228 73186110 379371131 210411863 122662856 183685528 54468198 613334016 404376061 655050346 704856516 370743406 735014456 432430279 210258839 995608169 766654370 412893002 278343336 806248463 987064017 778768663 681160911 14705761 325986896 1905666 745584452 64838510 681025735 264727965 40948810 50541653 139857227 251143669 475617201 377000236 424222216 646487817 70795273 373756289 141947747 640208721 278224249 872709282 820599002 966761768 860783291 13286753 239087291 525673531 94118763 215542611 694500522 829542910 254640992 709090039 123137660 471618611 74424454 408704508 593140214 639218150 304996527 362795746 227296998 342524237 811749944 797330602 335514128 965153596 355514854 511021383 427048407 972005583 58166925 907749492 432788050 788153338 692051748 814180704 297597916 316878486 803839521 241476557 603461389 918542300 179268741 766403645 278663180 391115574 49490514 620781598 753022684 285364170 568048367 394428951 450186466 378485211 971724265 936245254 983262904 940157011 494815127 244879173 280675603 572060552 287384576 551847962 586422890 679377863 783344877 40874781 37585947 236021662 602278280 404492244 669686339 230552042 619285488 199330398 202045390 545647546 3437577 131629336 78010515 947972657 255592562 568971847 801608926 248155198 970593699 265362438 899028203 8124385 113687628 246845505 173548279 39510607 485128070 877244426 858778251 985494379 37164965 413161906 428208777 964964901 395732314 484403327 542613016 346038154 233523336 372370238 661541258 606940296 22690723 653195970 72423135 981601660 631934995 147764107 56581029 830338133 440179655 759800978 135783526 93205136 113308435 771944728 238894643 976871972 904881273 620084342 529409222 119073204 973385364 746975226 354739424 186268471 264796802 323744815 555312343 491103286 654923080 831760998 502428600 881542000 697087338 143380824 397229870 823904432 770624617 265533898 225401893 527184294 759591687 208881651 719132434 592031064 580049023 254155347 134154780 206878881 40919053 965314403 279016626 252338633 470805953 252253834 416640985 467032894 564593999 787036942 550954155 982267646 906843202 416780234 291007170 662182063 315396559 549241591 41887264 244591593 778286007 860863567 826598747 784138858 536897529 451079751 203413818 610056900 844280255 767458710 882751885 597967603 919148504 306511374 538253630 175523778 416181973 781806840 268919241 279998270 186294690 327726916 257712466 29189867 631579949 63314803 567873169 572025843 191102931 858317744 574894907 228052803 828817613 299933597 261723985 876720630 457377938 506928973 41036335 346305040 112674391 609922110 605809844 796308763 330367086 512386141 328658435 337015887 456503303 513002318 239678637 414312876 844079138 756292898 96942107 443881076 873675560 485340377 709044775 357272975 423550537 50103582 669334986 473145965 699301706 489304961 851769 643248945 184055213 621780337 983666262 58056140 688825482 729984065 300721161 676144747 707260510 353839417 955119019 692065415 360575858 212414354 895160768 288153675 594833103 371974188 19211500 827320982 833475512 962428678 220102315 800797691 242320434 86186301 295280795 299466368 982886799 123269501 118155877 525456561 127938682 809124199 489675962 131668935 42317223 629547106 74707161 181880391 124755620 915540444 740927755 638371634 702588823 146379679 874485734 712023448 49578722 64331867 828490570 315679333 141420967 930904954 159636352 287046722 483328023 672203585 491482320 97717880 161110889 842435551 162665044 959658224 265405776 157810868 62032618 670544700 414105288 324595083 916515871 703377154 146862591 995264573 459848968 117768002 542696222 599666288 886792742 680957913 128809776 651286294 653846573 490931022 146357178 349857121 974964277 354927001 570512321 617351366 753128965 38685860 23395266 841396974 808677736 488077564 858247771 214281852 97069160 103330911 164349626 395670991 474346377 521725848 316889116 901821866 726793711 891917113 348949326 764040924 206985017 181373260 139661886 766190403 614643575 284550032 135207824 237581814 351740897 478729197 320291047 89986633 912525083 863422097 926751786 281986306 863880949 447602544 543342597 984500828 859751580 104307398 824247267 968963849 995552201 374316515 459858624 648101330 213609875 169580437 369608342 421171079 210464578 344881073 395205900 509619685 585404454 833165266 653272312 583175017 967371617 922744758 4773697 577795855 952977471 819093354 776268209 391084421 327787635 613948010 690458672 30609624 239885412 893351156 204391864 688791276 267819622 25481718 478762705 613783916 328874737 981597521 157510509 36210023 184931811 353558560 146634561 44389180 636811329 606587527 248787028 108942090 731943597 609391289 941487070 904755245 466393743 760139018 133131391 764939566 146419950 384953202 313122343 523283174 449382006 762542218 817085149 617553222 626322521 375766392 771832487 273720499 194979974 883297664 945168233 202813555 420631694 231418898 763639795 806910121 564026424 594261972 202867937 620052143 801831924 879273927 28208714 215627490 954441872 35416811 288457281 754673218 973722398 488475547 987036883 102328178 976716851 954639155 883236123 467309478 887994625 788293111 201358547 243231040 623176465 115353057 431980860 493456890 538341864 629228642 598187993 527978000 824093664 942765037 666616096 634182430 886964006 295473049 119536425 624340327 746901949 22980160 681018898 764987421 672618976 403733581 715976676 232861644 783227442 922700831 94122385 142901332 415295174 6467255 964072875 20446323 372789739 25628364 586795152 122760784 668340727 617915231 688715811 279441255 912657281 627445375 476126984 23137935 609778909 506700285 825824814 904879791 598300225 552664510 573191321 119340888 788104654 120843949 743474747 332341426 141763989 145223137 395260235 965058801 297191403 747128187 836240382 76207586 152777634 766728235 43110931 43982546 40487676 652888981 169526515 305116682 822324216 829118927 511408507 865500643 993510131 240457583 627437777 859283538 590088401 70967896 776798571 343252367 403000859 704357474 574854602 793954124 464596889 880941134 267958460 341421002 662338924 97599987 181538856 238927622 288823690 783507107 784108811 199745496 698183312 686007134 790203197 654518873 264430159 498758521 594569379 284203594 929261028 653913552 467971186 3553416 430030303 203410171 882893896 436850550 329176302 432786424 521866668 903849 407620088 236681142 167212447 945319002 667004334 708929037 324993790 534602635 253164600 571334394 484456185 3710618 694407044 86982056 673914766 989929574 93356075 506951842 957754320 981705837 532665123 994756597 780188977 251250503 639245773 874178675 112183987 441439542 347181603 883794411 57398376 632473002 974875675 949067165 785278041 540773343 339261618 895385761 415369969 520644476 466429189 575326093 898259163 544772522 745361213 756537739 104662414 963955688 464650350 749713255 815523068 775369744 655463310 751791068 955124200 809716389 920367018 797503297 573647394 261803957 627183198 757430911 34134468 276903254 413610173 941021432 645148120 410579740 840737374 546675975 888815853 903203778 958361876 866273341 373061196 767319912 618801647 958306602 526685585 14054445 356228028 967139248 863465606 672656243 40303579 513649845 992844168 981627207 592852237 527189405 492366580 528849888 40136925 618853843 173965892 905128823 465509033 626087914 918392617 323226846 545001259 768059387 704422663 173327175 781226731 767300325 554627442 823320335 566045963 652709863 643945635 251308692 502088889 44535110 20775150 628318317 52137455 683206565 507824438 88813200 846770272 807999037 519355461 263313243 767694781 719578241 70985428 91368956 459030687 252295640 954328549 458880076 55325628 488267514 670776151 217788289 339640809 76218382 449987802 515406089 730952543 783304433 827408679 726814504 504229883 507327283 102840033 966503144 64930951 233902392 500351282 626322075 197075401 195366832 55976910 995433513 264148829 87372484 724981418 461174813 185317736 147658231 678165819 469980434 197097600 997296299 892521991 670805525 581028065 231034560 542526647 815008898 212249431 360660887 935634419 400577520 331191418 64069535 80265963 169347740 946698984 698976955 726771439 520506183 301585785 558520082 417423418 909115456 985020212 393777285 909405802 705401309 97412782 737701225 76039927 717583410 706659925 25343675 348988419 303724163 707402844 147260874 584764239 601013128 325052068 609968441 69480268 857951846 708614908 990962734 595020088 474701486 890121778 377093427 256981378 688381437 493498778 174443485 941357982 617647172 645867718 703678459 223538824 489728675 558655267 494307466 174674642 845019639 962319559 228072299 248336546 616822731 519789567 305543947 934952397 912427752 995272999 184239887 549653459 116735196 173887024 461139272 165836603 312167312 234053013 369750984 727476201 933057156 464850516 506509209 168809569 204601563 717148478 27789540 110359492 653237406 693933437 664674665 376833536 40778842 347665438 241205727 90064030 191412740 85452067 26585822 870735592 70494819 230379233 26782845 53257649 914891953 748145934 62070091 884963613 392100593 660390251 360736389 231494194 996587942 531720212 972023298 306410431 635456449 122146459 299018537 297358530 781241062 618464442 437528107 363909104 167680619 48025963 44775646 750879729 843994703 139636031 184457484 299573168 997531067 198033371 720220961 423390208 573509381 86056421 54930299 462229075 548842269 198868246 351589902 993745978 964380368 111794477 225607200 305460837 700480826 405830477 691233838 826997633 190193831 760161137 183863055 987666541 847674207 345636868 236366765 237067731 252062016 514343568 830926175 989412894 340109862 991009125 835435309 141394074 768744726 148548082 156929191 732119632 413767036 215156871 478196051 436719991 758521590 187678188 539571646 450889177 490677293 855997955 619067162 237355334 554132493 149374116 694476961 709913987 168037266 670569182 181571113 670463402 135908634 339016407 216037954 545098797 367180697 513552963 27532885 842874655 827295719 753749904 596998990 289855471 999982847 419266724 671674826 260948309 530782702 528227956 979848358 589877045 440955123 415438055 777472160 966734535 838431543 656196602 221224079 271428275 996459247 36584864 649535098 512466276 5637364 391092976 180358453 251926885 647198758 527238048 618687135 91547500 233543193 583850254 214014244 185444089 291518261 756785418 972852442 160121080 456897924 882606357 967509161 171174556 361864930 41226861 415972234 443732953 108223646 403524400 714463392 559929197 967915699 106763477 622230802 144824411 763771771 82965310 430824962 380474504 293991748 34414899 743699802 766972810 322281529 135247907 453669563 820068026 831805332 391142714 63056257 596262579 817569450 695382571 772436464 756105416 675289132 968565577 593656604 958593611 274960459 327174118 924172440 922348787 135103700 796947280 484445366 107258674 440462476 413192941 122441541 964610650 401624176 650521279 41530694 849217926 700175031 818042629 756422336 781625229 169322432 556560222 791102698 619484352 433934058 408528090 403716383 897507795 733945006 950035067 913767184 713820295 485070620 934366580 399862209 692867836 369092068 708235329 355906997 638499541 610067313 377770381 517282787 307173472 966000452 653445152 447602028 748133738 569162903 346563931 921601702 833621654 728802879 20895817 908208385 811879494 546386750 309140069 163900301 43173644 262574524 252532903 711102580 48186883 29805368 46176655 81910758 524036017 812658363 179225331 537877005 479079312 323580927 340198921 191953135 828162672 963506399 110322527 339446839 916479417 144528545 769460898 798249334 748814764 92901691 486495161 624842708 209768044 25615412 221364262 370437073 25181019 912387857 418451946 971698742 740940940 742426335 674967630 989717173 95183757 691690717 827572731 180883262 878968399 868813800 90985491 285506859 760127223 727700436 666435642 579307045 767296545 803580055 505531662 607486234 543390898 404206124 364929493 553816548 192859052 175395265 340151944 948224298 766776855 645569077 206958840 200644375 317272035 382299663 814643035 861744497 26393944 225620895 922163089 127252838 450745428 767335032 875434952 858908607 880061113 160717299 334392750 113020637 730124523 19007334 410895082 923024394 763351369 210910416 84576191 529584780 339716433 158987110 613075317 376755681 159903170 206528320 921331307 882962585 358039025 844305869 625061772 387346132 994097052 477398675 791720463 20200252 246315118 905133 638583964 699017962 485877049 111220462 164727331 391708677 338480403 524280208 486733008 452788979 651202668 608349776 970071372 822823976 640998129 59057030 310019052 865047358 70870648 984513835 81249633 408535404 651805732 517852592 160552615 830090091 477020566 43463065 427906799 136112061 897977816 667997060 170930008 421471445 158931261 100762881 953780517 266623485 641817416 428257507 814743563 337737098 508187855 69906572 321887370 367010757 596967547 444442334 366638238 442238553 562652878 653837329 860124124 973174431 558941284 436439560 232965658 89527935 205577339 202979292 318046724 124214439 264793330 99149933 610566100 862719090 735985194 706911630 794681915 616094237 393426619 21469351 224840022 880516384 779242901 614611475 731418641 469905728 631194034 539343307 535519865 897466155 296339551 746462306 458914161 632192707 671910768 14903788 241299515 898783025 432300299 19825310 157914592 407784467 790853659 826327032 234423464 933428433 435185287 995166359 22653144 92548732 786799812 833876005 830906465 359449595 595749344 502692222 648784481 841179154 474201880 664878564 965061365 553524792 287611813 331488232 641298700 11569089 384702622 621873554 574904867 411238405 831129468 263160279 874127429 278035006 188112610 698489957 554423172 703786537 248332470 468574821 234763248 37197145 384735745 912538452 634748485 961109435 419405434 395832715 444710778 412925785 639220343 877644697 505952530 629509361 638233001 324650502 782590594 921645982 156977398 327094507 197915433 435593188 282718913 123883395 191111397 878892653 136517518 359833437 160784327 186904684 124439206 983748503 989641229 224575504 398537026 755862059 880956941 662731614 493038083 120518375 509301272 68221152 133687528 228054501 605642235 572026966 124918463 375406307 688266648 115796819 848846630 711316406 794415724 734182816 116975839 621603080 419940561 377402189 406418813 930914165 515629198 213376828 868622224 258578505 54707576 163919471 90484994 371756493 3914665 609911436 677469961 15439212 648034538 608713258 228632705 208858444 438038235 476911756 212633316 725096741 177243743 532266345 920289943 523458715 805939856 74934491 972379107 505953261 357743256 497011520 223633331 767137484 624805604 462952734 472123005 249823127 523928081 390900989 950478388 644914877 661464445 525994947 595883917 967575612 38290497 609615026 345706968 528796223 169770528 486339509 731059225 668425088 589175536 132199907 415085548 292778858 46680748 74514047 192738561 103008313 958960732 954273337 930987971 28340376 921452864 971653238 230166407 648545584 727633906 290972792 123122569 796271556 741983808 529429306 396177274 53340289 269173604 344186996 990517803 581910898 828094447 241066244 426545416 796985065 427980128 305010536 352130919 670606158 918215870 781890299 412743025 502004098 784328065 582716414 999078936 342680904 154004033 897509713 972148265 342198613 681603937 257824668 583849210 427495637 22399474 155364885 73593701 830436521 641673857 47009922 316611832 267297793 951656800 246434720 601962603 484528779 408253750 20586548 846712460 221614383 623418093 882353243 879824629 407118321 280273158 669286265 911265468 763781270 602447311 900172852 3421986 823536074 45425927 930299290 8203798 835665584 707622845 365326165 870636639 657922131 836581219 817086406 200619348 185167824 158408735 475442210 714501997 981388842 280946232 734659083 396450682 851566758 792777921 930303564 605555975 887626316 845801473 641992452 304894167 119775341 302243295 479354242 14328558 159316863 48753564 195329404 130048344 738492347 187761704 552995256 543188912 227966179 136380733 894425601 905169199 489192938 881538870 806502809 961294626 924390304 901759971 395938042 181667102 518126741 14372780 248215316 80327562 976209326 164106207 415338518 626497356 40055939 453182668 989784055 272190888 578257898 66365201 96430112 916819534 703777987 163085449 293369250 323251589 199550404 632457684 646156069 554218695 51819535 765999181 971240089 953501008 634378440 423073360 447299504 250882886 277334171 964931733 488928734 238196341 424464989 896184187 336918543 872103586 505732778 634937682 243441397 62887149 268390501 450477874 742820980 529080748 458348462 794117212 317763640 484793968 920373267 384692914 75141080 310653220 313758528 649076358 150089081 485236482 15885985 550143149 941579386 608418185 730890136 880551336 238742591 323471104 492596968 190951612 809788016 655786081 686051079 717724335 602487782 935028989 882439784 104341981 75982983 547175406 282778985 63671801 533075831 323310506 776405031 549523939 192979473 91066608 279993644 328264774 655778700 291238611 29673387 168211889 525140432 598388324 387774995 741506811 676379687 275870509 59693210 23246098 383708484 427444424 433258187 579514711 434491856 211058037 831685951 519068103 928259038 661250518 297446101 117552468 423881289 504406376 821092339 661083283 413872399 863130097 133269351 194597849 20033885 134189935 869741643 320223916 144148216 661326916 378529948 111935889 403090097 187211022 995172454 154128654 288193260 432277043 809472938 641380581 451182508 26047 223958445 645164110 613901945 631594194 400773282 561406397 804115421 61728492 388311793 386580085 219816960 840042492 720082427 916007965 707183114 310146639 741094343 799136179 443141553 899923621 400835638 297850032 527224879 791403844 822132492 383944807 507131634 222375318 531742899 875263637 217111282 127138046 77421870 473212736 64160728 399106434 382118539 989065771 452416206 684489409 5250235 298523502 239549543 301444800 987434598 853609831 823200124 176816921 455072283 232850155 415322622 97204122 158282406 681139892 216403389 81110121 998899604 757305933 826286606 62063210 916057661 66990653 89209036 733006570 839680936 462851673 998153423 650238601 712601666 322854304 281484045 855014453 358267079 150896901 581192918 566816734 782504694 38896566 349233080 829729200 879380684 865593025 109224251 657755107 204847382 461066919 791181936 116911955 157628043 149474227 410578631 171657765 724709003 128757795 267081301 652218955 633821352 490775949 172889537 814223396 526297357 991954247 813591114 845851032 222728188 717103152 284987773 334797389 653842056 783344575 848665982 595588543 231699209 593790466 976190722 628931623 841007343 568356686 106345977 276376855 299675019 26666199 887556481 839550807 97998954 468203710 262943815 473435029 850240537 540508937 178920889 183451653 803941467 734964358 946385709 66194890 394431952 890711994 676291139 104242879 190834379 769041844 914000550 410085143 146427290 564372675 560037981 381767980 734887608 109345279 429066791 6904064 27525849 647803580 219073684 384122631 220479490 535419634 3147205 479576072 793912516 549411534 356033825 789158464 949062050 489055953 170869767 660666928 796492758 627082982 518448454 951109189 812523595 729217181 850119984 199438760 651795524 655222595 207769292 761034987 693892043 906600640 189307105 981148918 535302889 36503343 622157472 321144438 870204217 730992431 792919108 875244222 457345946 251498094 362602293 682830030 561245651 687961993 938366933 758148064 514251639 304126158 149756176 277348383 991947219 717731586 607557427 148147804 860230027 614423716 170247861 373367215 100125171 633275433 977578725 46266442 321007968 899451287 807999207 753546305 895349174 128303625 664970578 977060831 197557616 396685824 28619518 622536206 25991498 639775952 749300867 699888680 526341457 427415936 405929968 888068567 698831025 557330563 579382824 693578576 734694972 749435923 336121955 360632273 242103677 695240998 375000912 145019242 702477676 99084987 686201819 842974113 474579030 977850764 4147237 395261339 146680761 418161310 956318108 352334841 557838221 521645972 809934819 941825626 111212226 883274193 435201725 110532372 306429403 574129335 193878840 495874179 448274711 549184887 165852848 778002968 715740783 982091148 82913744 968636242 202107913 596110956 334199657 489068166 107855935 730193717 635139420 978794360 189402843 875537997 924274120 740696896 737625103 200787368 987146141 31409336 109547839 653715035 342640203 851077003 161967289 290524556 736075271 609060712 964384228 163969186 326594827 950267994 288748638 290139410 263718444 465472777 259084247 966259394 574937500 386974192 556950724 832831121 996648898 162147380 800260765 548320181 895927460 518025919 437266964 619536122 581039237 920656448 711445429 839971358 705541852 716749419 858104829 981495133 791725373 152765963 87322269 726863134 769673032 481593628 682495327 639844978 85679670 969677521 325008425 325777594 967234689 86647213 238913115 330890299 753123751 747106414 749117375 836298061 281372370 526755689 794652560 155873220 286163089 270514657 998128664 349927679 195971259 547265787 43489122 707878130 475659150 696885070 279563720 313351133 764769570 378251457 623143197 283843548 292089162 934483493 228718702 500419813 16508454 669380293 490217429 984357104 930596181 590229086 940815248 671369539 633484594 176534762 614156205 849840578 416146225 52329951 396306931 30618213 643636198 288435131 63776064 997515667 698179518 322110352 438562268 475251781 440161351 826273406 787813298 315716557 119508858 287200380 318006689 545423172 890218142 48493386 238269359 757098155 902884936 977516644 714546823 346491973 602761937 429281160 931607118 781184775 423699247 641360676 872245815 545734116 101484242 664411660 92359808 973494354 658159407 901704829 3862470 430641101 642591974 34847605 381671941 430613923 472172505 900717126 268803830 51732516 284070028 560695142 901160548 686910965 720898924 557596965 394292798 349954808 786510542 766319981 106500575 629311916 388980344 285220028 594169599 837944650 718520126 639906817 28960204 849941825 91776279 996604838 886174659 73508616 464867399 132279852 226205201 933529393 638107402 750949309 835125696 21462632 938074337 399575648 814028132 479484502 484398186 951791417 408374949 985965754 39602046 162834631 938900868 920192879 242642868 124831137 19004367 52612301 623676176 743142069 236195775 105404192 169354819 662988911 306108044 408154812 560062611 252467787 947432079 56852310 147094458 721634831 419505846 913667392 297431669 22334203 136028427 450770206 925911882 555237898 848625518 709816776 779809491 303528857 266252038 495916965 855051249 745261497 826780171 773127663 293109254 483432819 163550033 510832400 337541923 806612912 822683254 154892591 183417143 503368663 363568967 121577034 819555018 39975482 693407044 717390680 62116060 451177816 499507554 458072930 944357500 278892318 86410312 979785569 385046082 298701712 27985011 627245775 753496110 236649708 179324846 946140512 940299972 190824987 820504160 866706149 706667450 606734882 930098901 419778792 11759579 320298624 778969682 902700551 689915221 612328217 956239066 384008228 910878451 490634620 58585473 139519633 757684518 435023465 360861005 121077592 589743956 72093199 117205665 37479268 335648157 875223217 380805811 602042118 220996052 418322564 494865570 628135752 535506069 170563430 545236360 975091971 149473270 952237250 85922778 955068353 130133166 627965786 418303820 452677330 495272965 55273263 438017646 675551822 124752886 850058595 762593709 867614963 962613189 421252300 527594593 981560001 632186029 181786203 290363488 219833110 422600616 730344465 586349393 266084310 640944227 894079705 110325973 904258968 950776761 952483949 427743182 623009028 353740232 937500996 285306602 121016514 404919969 60872548 992079299 496822057 43368469 164398842 446604706 278458469 119441826 986439490 798114344 210470863 575491911 434289781 601002992 970552923 469815048 430998314 277280048 375439103 691741558 375401174 616176973 923574865 911814790 490185264 910928767 611283014 559618346 795039434 662161530 334299214 360068889 949007806 602182540 987613700 469416208 817817759 759416441 141233711 68140707 499708740 201399724 222849680 282224807 972120139 123174751 252745335 43557711 496515883 569145612 411969427 203361090 123019038 823625830 311618563 682285460 429800008 365306979 412061325 793002076 176846327 471350608 458811324 705638860 65110791 427045153 560351959 272056836 171234242 343212095 125741447 861122902 478066513 750433733 909088745 376714216 318720672 684298738 734189821 734655769 717413205 447732844 28851005 630216445 318591814 430446649 448178999 751134705 382564560 974790617 2239942 976684041 38533668 426662259 886502103 672376229 242975830 544876904 203222351 508637001 459261518 118699752 615131709 382411057 979760626 877094467 879368140 243221349 323174612 548688158 758089039 966475426 248299309 516662285 814932055 975566296 803945739 719556758 353385135 213043312 440841086 330988623 129593061 176110231 233122404 530282668 930399199 301538405 698912084 75045157 98676176 124716172 32223160 613537836 612110966 29142900 855173367 676888877 240883090 677541774 17101567 806797054 260200718 316281959 289479767 761780737 864519906 516936861 50661891 774601655 547981325 303078646 804483713 245211980 671378898 903533242 622520741 337994498 91783531 963538687 159584623 7054961 299846696 257390966 238132097 406750044 88748280 496139216 197860635 851246181 725610146 89790390 874937250 964383753 742486899 822255398 838013499 767637006 258512190 22578706 860000019 399902295 299536225 324030669 906001944 851460723 332407377 659810433 261899941 358480486 529246206 109457096 109748029 50733105 10996590 910968427 679866363 171442453 358822837 872503571 135482268 660445702 812851104 129290839 719966784 437404664 454569661 663800131 569014078 281752296 488995151 472722094 216057617 654899713 438813339 481531153 678476090 550671500 703027695 68898205 286742824 460970568 387611404 373458948 516526053 56647906 662863010 282742958 585080393 285939047 498345589 637050739 146238922 170598559 256270419 262671871 405526906 177589792 419410539 210303252 617258214 281168109 251546050 14918160 196974519 403082194 298575043 659001374 604236951 664218681 598684907 366269809 482110140 642558446 642647962 444818049 81481484 621080353 588682953 925224975 870344652 874207035 889168829 803893510 289067332 888315421 396418234 535181912 402897670 745040606 792131208 611230281 902123936 975285476 779681218 756737322 611873963 982049812 284780222 800920513 612174729 162982351 15976205 89343414 372947219 529563436 146699522 795271491 729478795 118496879 966769907 371950527 93727188 335891425 252137188 839446545 984346861 285665387 535163783 898892746 278321067 54335253 168837546 241047152 587788132 598858832 921883451 492595916 773215904 945263976 689320597 508302809 543261617 283202835 131339174 206162631 758936691 659580810 418158234 170407100 765609048 559659818 132124891 165503340 635513586 740158645 230881836 25005732 748717982 721686239 648921224 517399466 427344234 73452469 180074652 211083760 265944405 490665150 727016887 390466319 784475561 156625458 725401697 15301421 992517894 148585994 843741472 581381549 58721384 673073171 590573120 370580427 406806052 614487577 953109093 44451266 461701618 934688546 583213650 112619755 787785760 956749596 182813076 347767005 166880340 351655658 316303370 628614440 849271248 388158351 470260773 471857201 124473206 894824325 306663203 932761294 815566475 216356475 699482163 791895137 247398194 789037725 668217977 810932015 114062917 1136577 489632789 207254484 566188999 773294963 884312012 389605033 30585184 132847643 465072359 901287379 323574339 950665793 216676898 581503464 613497473 824992317 753528039 451766599 998686939 297653190 399104609 177687447 317523572 960702688 423284309 997286238 882982065 83858471 304357491 429363798 726736812 729864965 285613306 119952844 482698768 741593676 237530164 415006857 63830920 204850748 653022503 965479008 420183686 594546240 63375330 694998676 401568473 817013622 717384387 803896535 687938868 752960783 494267508 974619038 996321882 643781950 289843064 809107550 894807194 418487947 404616431 619667647 717010293 178574675 738113516 247942200 422834728 7164304 168193013 419055025 762917225 279982383 975417125 673144440 877735509 902761279 995972793 93023943 324067194 254752826 709014861 444608433 691789146 147596222 237943450 412714013 25766921 83164595 813955767 970312648 793804183 505472060 163247972 979337693 317334594 103799629 809114537 960750808 507183573 696230567 195550939 151507312 197042098 671514094 220257038 958370178 415239311 612579606 264074881 308540251 552787443 183189005 524324851 652407483 110123624 330662274 845614604 700101847 23792099 196287583 60091677 318999139 202281740 391600724 967592951 349817972 819205063 476887906 250924059 606187590 674125153 173923371 828843731 7290554 618475883 233789663 700965782 174764462 126183216 712071610 555844803 34214984 823600292 939479620 39039307 65742636 964108762 338272674 687266684 747903513 373621784 99909145 596547487 98810411 597639253 632843170 185210235 329244112 575829480 393312794 204045070 415273192 595761718 964629221 138306876 305057226 585631966 395490411 315824612 865363405 843452132 646474638 700344098 814588696 694710072 754928541 140483541 730753768 626684579 93000639 820431349 829035254 798300993 237355140 650184212 839078716 476425168 456010932 448441369 930431454 710603998 243750994 624300108 552063714 208385357 172375001 465273369 857663278 503674196 220588137 543785691 375673946 542051719 750658696 241764190 172356014 84961743 479774256 160256146 5152138 563253799 150939205 915597541 940275078 30813952 710655491 273382858 491398664 896598044 431482033 624520853 110492935 327982318 177363887 637844038 218957306 341369615 325910935 672941450 570082823 354050998 591053519 627663431 401905846 315927145 731279801 19618168 507909516 691099157 398478053 985207063 235456611 63976041 945521865 824138760 462802509 31984527 494540507 2724184 690838812 615482473 269462176 162707083 432863251 142737542 213609188 394523904 211739927 991945970 506243799 478573709 930788004 914390582 586677728 526406250 891003316 393295330 685600253 175109203 467756486 162227022 293093528 865663467 18935827 559036440 185987067 220070075 342340578 545859951 521047741 313712176 473233148 895428162 430836344 212610847 831488301 522355354 365502174 862725218 743993277 711509462 253313982 320043811 462626494 64006226 336888849 284053278 625239447 719818070 141891408 890829484 591135812 97346607 432780901 666690053 189930216 868499630 288756794 760376117 320813222 296537240 24197525 155773260 129012208 689646416 478145919 280472028 943504558 519762635 396833153 479334047 956160341 247313843 945379507 734446511 556043517 479373358 134021797 969934019 284951694 146376442 253184304 760699457 460721392 422546047 452599985 298726955 353114160 70145693 847331352 347439033 378791177 918507812 905113898 471710838 782289596 178797782 220560313 34988073 703152575 88947848 418684652 352100284 455456127 853367473 844753736 260620863 151410863 897492049 676839224 832812818 862099458 766899667 504710952 243941483 697438926 37319068 503436215 449486448 355860606 920264530 28518538 795210633 73815830 76980557 333740761 313252937 840201714 147952557 884135498 871665957 323038372 591072592 149621215 655737064 471088784 684185652 85491509 893949534 632059942 781993616 784383620 954639877 870950932 501405333 736667203 578308441 630131214 6419461 687100613 11729809 633235175 201937492 281330426 239925284 859618694 380627517 645628453 879662796 257545094 681990875 621847043 157706143 767653988 159134511 939255267 894579911 313565027 576256020 982316392 766681372 146271972 296208152 47650368 231012627 64931963 660539686 370803301 514469216 948587147 819059984 298049504 406493617 406762113 42677610 871755934 454834405 610894639 159538538 649443013 84497993 968662503 64970512 415741317 424302085 218705948 964884063 59572405 920431248 533271148 545129107 954747554 10274624 121028254 434720884 850223644 469521278 39688540 296115163 446811540 399554464 102282857 162501085 195304619 409120313 645075039 242575269 554815339 657785634 855824581 297993067 372214688 499006357 353638986 875135706 3734728 679576892 663487748 522818154 267847891 952902805 869124230 725018493 167812794 61071512 722612604 782062159 492535875 389469099 402498998 449372327 441852266 55756734 460790534 173336175 120342298 610887596 965617024 496255592 824633365 679078091 809149958 865356452 949509187 559469317 965260706 854234609 542025622 278036462 723989814 344846238 325234559 872052246 971665343 608872008 916893928 8564527 4198904 317787707 37708769 621441337 807150118 728954297 514107780 757511897 573031735 838941243 722193925 973314266 818495337 993876073 42527320 167784231 167533743 309817817 678435013 752073007 321404072 916790793 547879513 220105534 707102836 940737690 404483883 661294742 703783311 626935510 269392239 878904915 52280238 470854882 805244110 498416721 997027880 462004776 821106866 751972983 421024403 269596902 87217865 421835135 700752188 556639106 778424873 742165247 300688126 270037804 960143132 126814175 660950518 486233490 122869093 401123456 127939262 31092423 44732061 559701541 710178966 864437483 234027324 454849498 207681267 377988155 799009876 547313530 395158949 728860 391838170 752079039 188091083 113094319 521851879 776705626 2097973 82947821 986999862 828780000 121028901 825904365 852052855 136568438 582125835 202761532 5563237 249463952 819327569 512964498 845657311 41986228 411681509 369942846 214180615 800534151 372186782 22404857 659085524 332839470 475925620 183508229 800004156 461627224 823564278 145631864 213111829 26961440 610213313 146803219 846313357 513087796 520193543 817854943 39883201 621571279 51682730 850406123 28814286 538374731 777849686 362897477 457491523 981998246 961650789 334554845 658611275 944212625 131860317 851986344 106191295 596017733 18954085 478652544 609583074 585951436 500585765 907869963 552876503 846045917 929998930 942042570 193193961 116500137 238360913 82213719 741974369 643576812 999967146 720242407 754343151 16190156 913594129 186770253 605255663 666913013 657287210 242256568 602139175 252880202 559801946 375255304 794688937 734357751 806638066 106044020 997985984 513889713 415795167 715021233 230905947 629371187 912280173 705735470 367730270 498076074 276344904 835760652 445063880 307875946 371340609 837168390 28478255 510645731 377193129 85450169 632876322 577106309 652978239 790982496 626085134 576551913 347754672 724095725 814172228 378509034 315392485 182329565 595315847 381166393 897171355 691032346 969515076 843208333 866340074 510221551 585872660 667185425 787039622 466968554 286957583 638649009 375751062 42516661 229765726 120559606 170545732 327096220 857792962 5779057 548466904 276791182 779129989 643865367 270241282 606995485 258397626 160755851 493668495 246880111 905469105 825146429 526431439 431449965 509910240 196537850 344824681 231561495 443967547 506267317 584861443 350211170 117860362 324801545 822285374 343568314 285150618 326835972 933854888 112408479 136976827 596148999 429758635 957416184 404693201 91372610 584886872 654651794 311439891 596928497 823142499 662012236 906009901 528223476 553150787 10207524 173982365 793989968 794848113 228815882 742711655 200045988 832399270 290539433 658494248 736362765 530463964 93033779 821529597 143595085 837223249 64077684 382742788 133534740 726369250 289821714 330767462 555947246 364763828 536144868 292119688 23220837 619111005 598276601 980190112 82984893 986277801 128031537 609199106 279478785 799382908 304822004 542083101 916300423 999476854 456589366 474708536 724684324 604167635 96252183 578528475 140605698 454805813 575779672 380312960 570473022 214703879 668118168 497837852 966962470 114143907 947934081 865372603 257862339 175609901 169219266 849847445 824524802 11062850 582173381 966283173 454806038 516707984 193295429 552559168 37148121 905985640 281506507 739319200 345583587 921434196 74505248 248915140 691214528 784397577 523139152 673318214 258725569 717238227 805569163 297728513 411153076 445147265 291169612 537466103 793527744 320516760 808748948 709507491 80526855 771049932 153865837 37969417 124580444 164684815 695885621 88078333 372275070 928568656 355609742 901358967 83821242 831698298 48544086 25389772 668021888 420772092 370787640 176079255 57592121 15584407 748589368 528317353 948147584 226333763 992509553 269435534 759021602 66648513 977532853 560918854 127646268 840266366 863774491 18788777 968224229 692521306 672703271 960488562 572659302 927359519 943177674 296760933 537138774 164060008 570488111 629806376 625835086 594222644 800207048 143888531 603590780 198089511 388070412 150468217 880907018 145945901 870593393 209293768 73372882 271770618 327225394 574698355 178418326 505162319 880691081 880846600 815460032 107320311 229810935 637148259 885533053 424681804 237513987 354467522 244752727 100904475 513002446 203192241 499017135 54916332 280678891 954480812 150037893 593028797 991615566 102709887 400466899 295106082 170471085 114323728 229340464 395248771 22248816 64969864 290919926 156848404 961446659 48717365 209095500 919684780 898972743 171273785 355538191 278682468 736318088 827901773 39832612 910714177 224297677 409730460 208442760 931734797 362778047 329697816 322446001 229595782 397592233 607324243 638509587 656475370 84173096 338765722 872657497 992375042 779619115 495194046 48948612 316385242 975854188 380461833 682950414 12164900 733389051 90109083 527836684 863622040 772908302 942860816 364528070 650110980 40915383 687078085 14417083 16757997 97336373 226554596 982482275 521473997 972255201 249711936 311418180 459481537 90413818 436956234 536628523 254074569 358237161 109777231 409940471 944286672 86138126 266182359 341331031 805192095 815934135 704299876 312756480 452467250 668057752 448187139 871616700 211329642 791870816 390263281 221058191 387178637 745798506 593032775 264484499 619226052 421317766 264576761 173618232 482989580 320043360 514340925 576092412 677979883 167764299 902006273 501312397 630004847 356927542 668169314 797083610 879416115 391901818 741183074 492688160 241505799 511198597 532634336 569679251 335145144 504448333 304035847 948214760 478855421 359057056 754026160 642247019 490097208 419984924 288103591 397509529 809814978 589768490 852968272 767573579 36188867 780474307 297383281 668932837 759560924 497045526 446712730 526041446 682558701 101899854 973243280 563417447 84024808 816961780 613191457 262592190 169358406 262111928 67577779 311970141 783052155 416899227 805179216 496582598 52388414 855972489 178246998 231238212 541690049 280220763 73115704 58038587 123437797 844934576 241344079 181625588 816833076 144060242 451343737 310673731 33864348 222917708 75345658 309506611 508194301 322232964 287652680 563152588 460217396 561284292 968946397 816461899 802668705 240824734 822335929 454927460 353879940 884177479 602312160 498289094 674179074 681830100 550376709 470949746 995513167 993011944 546384571 568031879 161950876 389638575 479883486 79946570 467340305 335086911 413950387 716357084 355394627 315166353 58545224 915222515 985696340 538362962 103107431 393637625 801265991 611815247 719716045 434373568 603757340 120700400 110409425 329691355 419607254 872889973 370840494 423757416 21325880 757038639 885517719 996284418 664179435 786446634 347457825 335613891 295442458 965834350 302604334 557859260 211351412 337742974 564220443 710329725 566685100 392040205 723319604 417783982 201558417 219803091 58932853 452157259 306153905 17605913 681406365 259740499 936324358 985009758 486945734 86435562 293051089 246558735 329692717 223244049 559111720 220843124 893627890 919233548 753109973 328426893 314937276 36797573 355264360 654867195 814159775 807824109 463329217 526417145 84410654 731588372 783665850 220005275 744754800 413107897 833181673 246763840 592023095 429644933 277976696 904165088 320215132 181636397 819247763 126746527 650379438 597255822 757747803 4166880 947650238 394759947 657730455 882395268 181704149 367957405 830354370 514504021 83567029 908454756 513962985 982241163 547852016 838789621 373472844 277780761 373287549 87947504 6420257 475898936 76600032 949925002 774907845 893907217 267737965 685525869 788875099 341322476 519995188 602136433 987383020 502274135 937288922 111545646 922600019 534165530 523613533 36629331 46711160 330733201 370993846 762218149 534325443 645692147 756047125 795495006 925225624 367740048 460651311 951684708 876539903 362769536 726810962 921677311 199422414 471526706 630565219 368178483 776322752 152050426 126406311 348870336 56062276 405788358 387101226 725833512 237401904 457073711 252262502 198888933 193921580 115952818 416355233 18586395 211146511 900401033 885056856 215763265 734505791 684271217 809117646 388574159 949853552 604360512 63341312 571037433 987445441 4244374 140857616 860692017 954953087 702622201 836020428 651077996 173651392 160473295 61258874 948380760 852903591 458017561 524121544 534337829 220706459 67722006 310911109 4788739 407247311 115091963 530561100 662777118 556785503 247656252 133358101 935661978 787540283 873767567 14888244 195804378 182022438 811395855 59867662 94602863 667689536 639361133 480006557 368046873 251489726 387448419 960231927 218691544 955072900 463115146 249893536 271452463 309806744 504630070 984635556 858702723 667781289 534488069 240691584 205377501 490741554 641768019 9547495 679692762 965125278 952079014 454074655 636037595 693915359 226967578 911673164 727978883 976879289 748140825 769833134 481377400 630791499 861463205 961888281 216896753 987790875 733390533 847865764 369924935 209407241 595354265 514199114 293042842 178379783 290502069 904299705 181246227 274066084 213904665 584305259 142268458 185365836 46727894 685700773 265735002 971250973 465880614 562663638 931099601 354296660 858314938 164894 873027437 868091283 405009845 303337825 34326963 533981609 247407598 687665207 279406440 509611921 271544161 409472209 962709565 119573123 492432273 357780407 50527109 660990179 683286709 615758793 273666661 809751764 392710048 598583470 409280409 641691126 20567864 838060243 849640328 438705507 193851412 878916696 440349085 624527828 163989643 111555538 378995542 939342936 638825341 95138292 274127583 984450866 937373692 314145017 812535079 381479074 200773095 683889339 809876490 98002777 308907554 435841448 638630637 826247653 680191845 850902919 981323400 685154873 976120595 455320194 397329845 902576376 956519392 751701175 359981449 537434858 39195966 907629730 724422014 112883005 6523277 190180769 599104500 571586273 886229867 489787377 403325204 532386307 576719116 835475008 410381685 875120073 51436199 192845780 320700809 448765341 517410211 181753179 150361603 24568667 854373368 316859605 592948852 101438022 107004760 739218506 89840902 399714522 274972220 463382448 309356251 235591808 25501923 401746053 649141975 827519759 261642411 568143233 142959203 639161634 402279819 453461353 135423332 582320819 733672449 239851767 579175472 878703564 259611698 32685721 709304981 930503567 305175476 832375001 445546966 434263588 994621903 675125816 471477259 959506282 83637523 941541036 699594830 962889761 57079311 600395024 818146739 608451995 879596698 455970949 604137197 401778147 258357396 902391673 220432451 475000837 779930151 723554428 130041772 57217117 906572490 276632795 540451290 864799859 109054198 302152541 825138243 379144848 104426901 392399789 663702011 941183524 309601051 967431787 534284443 285537843 502653214 340437950 398703251 524655464 973148774 731398676 572146080 133183315 467842102 952864450 625057031 338274142 748456372 557648164 690828156 391956708 846193341 946243085 270589965 488131159 978072712 489483239 548993257 600890129 365046345 860264559 38417485 555450166 466449474 366134192 980973154 756657903 365083805 180381105 192639289 847758665 281439882 750937587 151221387 59867515 441984944 501914033 665335899 221972609 736742679 987822064 585928473 621940030 807118662 772681476 365864695 469646719 88839968 976672781 521300547 764882255 576537719 753361519 299473047 793662442 570773362 990046763 448854418 905858778 542304465 60640887 934061880 456371421 931473761 742409901 417231154 77151742 929530141 359525516 575501038 162996556 206134745 190241088 731398307 33129358 5307482 826808326 398820991 395384317 865115710 430908706 279257841 71687792 510578633 944526891 91950030 602862502 120177134 825909866 549695770 558190418 839472408 267402185 583274043 184807777 914641725 622132431 603726292 875830392 957418997 794324275 720300018 169214096 491285124 372739309 669019559 817493040 146401828 910862993 556244417 846496799 621319278 198117202 369295036 373027846 339590578 454919943 979299560 746360224 875493299 710243368 420136054 126749022 402911386 206376518 827023117 187154481 655760984 227843222 955578930 389364407 136227226 381681392 386848988 993953372 446482544 686319266 391753543 6245166 674341125 283483510 96290686 470033756 152066688 860254707 743803486 749998734 84979983 759887132 473472764 784764015 402839207 848688631 480708690 966294949 791349112 657275459 348116746 935868098 847106988 608604837 55380219 514527473 984931137 550335906 957212876 439369648 643829466 890489415 542020679 80044988 988111421 437235384 544845609 391528485 750006915 452094661 357018260 873128764 403968554 263257717 581047194 171215419 381778535 569489971 877859436 845136198 268528675 724062670 369442428 985816226 672437709 294499181 253811051 350534467 549103531 667742562 906168838 680578124 107917760 69450593 491634396 938077097 791393609 286077905 616652571 332651786 492291081 291611156 445074805 440271009 161379864 5149188 65131074 187354015 957036296 855052006 697849202 474588585 496077357 454267418 63522977 263121293 87970723 908381086 442183125 874276648 818491107 704041699 300261238 750719919 571031519 441736282 185331907 514156090 768021727 460933992 842776780 415295127 118766981 6032314 794845415 473174705 3035650 805060978 498265649 526439353 92832350 450730640 433455649 289697409 629627518 772409397 846697311 228669613 677618052 179492271 330785199 686617338 848440407 116241092 470331610 677937137 15274288 457236817 945362085 570760031 882552858 948072463 699446823 1308105 756876048 34427217 577599090 395265389 795302458 370312351 354140424 982250178 517231722 462782605 165172717 69794517 18675289 176464789 717409754 468282522 903946355 322618300 198142453 420807010 811451677 398106254 873547251 585041389 813988194 985562643 444094361 787482758 113017806 647074747 694974208 620619913 762203401 692345936 437356003 830009517 905219366 10219966 402700089 418058096 72290632 9683579 971889685 251185622 794357123 316163683 995938967 141658925 419264776 521786533 473470556 63124982 184987537 282072341 374329831 524829285 766685691 466722504 283103255 218718335 116120187 1666842 931255171 323836472 583648203 219511526 587072335 710636055 114341422 792381398 378934877 580520364 758738285 932500859 669056419 499953427 81708435 38484776 751191399 731875452 640458359 831681315 974533042 31426973 869068779 846039478 257738481 467715959 222605717 790743793 729449523 696962430 811411394 41787505 936067497 117786418 859372024 312039821 32192172 295238660 418085272 873990214 701047163 546929652 130817601 361119256 293732425 685654442 958878824 200968159 890834603 147082359 540799762 625291738 949317635 184798248 850006511 27094389 823130025 480847740 156230068 868395250 547652663 14235925 339100455 361027120 936690589 930785294 408141311 632223170 571932212 584379380 459747562 459488589 366485682 526417679 520523870 355608703 320295261 471846848 575077865 158001258 357351322 953015731 450283090 981452803 920727292 448447506 775145761 301985301 471450971 926573730 170255534 790497040 868442467 385841985 71200613 664352660 864066908 43867299 677054713 833342946 511262507 714502425 837964704 316139664 838519597 335682855 900332480 430051992 948316886 659787854 989997332 217933185 251080039 746700479 910922688 668905060 726864891 560869020 450711589 531853710 892892454 644531213 21948914 949826845 88250229 453557276 769037138 481461646 262646455 717770241 923372211 227961412 245093042 480058726 465400259 674286383 489815831 191548842 10832429 752064659 605105357 849418474 313652084 44954699 133821228 592685842 615872238 152568626 442074724 564944188 799101828 166664928 197726049 668877787 771402567 830512798 710134682 426390503 772451842 97774116 261769756 853143948 505218755 580763267 905361959 946551677 624660442 440142701 857409859 17560951 27102201 390571997 967339563 278639951 145329182 819577921 866228633 682303115 974028527 135008519 386468575 455327239 318669683 623994661 91907722 441106115 927804129 699338834 401289268 70624731 906641541 988323839 618329228 520372926 994455495 736185532 860760388 827312457 810040070 2378297 206258231 77366096 263355906 332274066 117667492 933130485 58862796 933760532 418921314 882934467 247539560 314622654 671852467 136750624 807553902 219805858 677439395 370964848 866366849 190940343 194956748 554383097 752178314 295020886 30614248 475018886 8228783 410582892 941287900 762081627 239136817 101362236 30487353 226483090 674553163 22053485 864379786 290896776 413158596 465598872 260059854 971749717 349586692 965195035 822331523 288517515 53567057 789566589 102690246 872642166 906171831 192383524 182955164 478527953 268359013 415890925 816377784 947411656 204497881 960593242 243860659 904383789 529573145 442358221 486520257 925766446 554591573 515521518 908928598 353056765 509468091 236027913 39130996 572253881 52489648 633994265 960367799 807971329 207860607 380324446 780880810 860073315 953093117 73399586 169291188 26124080 61683947 1620118 477774865 146910026 778679479 662551070 361186207 107681176 341842672 350262588 692258420 549685659 914430522 992726640 632756083 870406219 534691120 122437515 470873777 873112709 219405653 186574002 874549435 758273214 98968076 284054631 759177743 578333896 845594143 897632901 12623678 203492490 858522423 580847129 219455086 348638284 601954289 398950939 261350716 346995668 170421181 750742418 747164325 536152316 193327267 94467458 205087879 817508199 601493191 774818237 448521178 651541010 632494421 83894320 313680929 87395173 110921581 173770726 880855184 923405758 274172461 682585201 659754229 693619960 64715032 405178993 91327165 183618419 40459941 383812775 79705919 399629790 221550985 813463148 371779135 688781098 979847085 257548829 890547055 664611577 793926285 67266304 605800660 122962079 176173210 73571617 402512105 577519613 9297087 304489811 661871086 210171797 826614039 384030483 899665356 286768845 851501694 244345624 414932669 965958161 806123724 31349220 458039886 912348842 603103291 4802951 242833415 867305440 883593372 662859779 622470535 696909693 349337615 789348734 83736252 219835338 922858816 935985127 167913012 401796772 614588020 852909038 574504762 229603954 229250341 342347542 5087567 484114773 454627476 886342966 640780642 542217100 860565077 848477842 171563512 189772396 439760637 568721809 500581044 6446318 190183044 339701489 261792649 838760680 816834052 97878351 709609704 627297683 500827660 208764515 856895435 282694391 350570733 237255030 109871169 337333922 482544970 965000135 94357134 83621088 746151568 98116460 165217144 833299465 900792990 180023199 742414842 274444965 810712638 331539278 993273222 72727320 744075994 644004944 664788607 566702797 604664985 436731257 578435803 865673865 797620596 431313038 439557651 339011785 19927546 969662669 733154000 623204476 673964154 327547577 186023038 765791426 216149908 710083792 685945545 535658036 637454702 832214738 932437686 549494383 6358123 814671194 390168259 980487902 570386995 114590918 692447099 823327200 315823383 392241181 45574405 613525943 901789893 701925198 836436532 73942947 224234498 843937866 543572377 321578736 964618831 840772333 913059004 656783464 117772329 143877395 321854227 469143713 256450051 338023254 73045720 402343156 408950178 854638983 771951647 625545827 777622602 494311795 670984211 919416403 210516667 358304520 16487025 297947118 930859082 882388496 300391082 275527890 929741493 472791714 445771246 402989380 157941928 414019318 867891066 979731887 559175605 690070841 911692608 816112488 94336788 701377079 213054135 582951086 290292922 242028426 527881305 646013513 175973801 159283881 513472115 556766239 411914993 578174165 736543029 8801164 273824263 343024449 641390323 184497448 261752978 492203535 561302996 9953486 405006994 564668923 301470349 27159800 986261100 266981013 825387369 641822910 258429706 317302603 737876679 806219300 831451718 992588654 737389805 459277042 589555677 720495507 723984401 209970291 863789543 812360990 609800578 217447715 131300786 758496045 589217233 678844696 518285596 550707012 549458329 603729464 116393918 492812005 98045581 957644778 683456828 972295608 33110749 537080111 144084188 717083986 206648464 405875189 891605617 24835027 478891296 830886389 682369309 872541849 845074582 923722209 932323180 675725471 957337127 492493428 742153728 42855735 211176313 577415579 512938942 499273650 833354475 934048991 499583438 932919558 353540281 420744192 920246952 202915548 988400046 655087265 421893510 481796544 824141961 354158496 896092520 402540104 781308233 713932853 360574838 190557791 774383381 406936186 21672443 316781787 742614129 184338775 166843420 148598992 563201490 473861120 75527482 353973898 250394699 883283061 513667436 577170875 873391259 590753743 922629613 95219200 298922929 326719590 906989771 727432046 554333843 158165762 304437176 498419747 766641539 208378941 444013305 566904200 937825409 910179462 81218629 157601893 435785808 724269084 887177273 564901958 301454007 361259815 930615482 800763904 459308335 126840500 726602133 726583958 395951244 908589057 104002073 895697227 717797088 747173108 873592365 282111214 223029976 442995744 238157584 437871524 531870064 134246885 531999856 545143729 224456174 530181691 926341015 4387344 198265312 800527106 297081260 557041644 812542952 492166483 119945320 241356689 74885884 847625630 638878192 20011940 593868108 728844751 247949832 213586323 34940766 554040881 884196622 908915055 111468980 68009909 718103707 500832971 3460193 829117204 882011065 113607595 861838501 846127672 547921697 305922099 106771263 639748417 188055238 914049598 124941374 635845092 412806142 557020491 794257588 201160885 355648486 920938178 858511559 239592718 179523059 263010790 642290405 743012688 791114719 85019665 449238288 446803412 867637631 119191748 951171499 477856598 956373706 81955721 591412042 355639010 455040272 382352563 315918210 472845566 445376958 617688373 491729341 15297927 506175046 544700679 308970134 982893092 125361269 880216478 515783526 84691314 990134275 511410795 609341119 327612982 266686859 274425246 274485526 714713333 35453896 86854338 125571362 48386482 54296643 57500263 24092366 250519510 620692474 822169969 723200055 15874309 333184093 996615319 570899141 930394080 793117043 298000947 958503028 642668990 432491611 62278384 233717430 166516349 149181655 975527781 951113848 375625272 582807977 112839999 586549770 431536758 221595587 982020342 729880825 48115902 732183331 598962218 738795522 917470234 607341557 147263047 504201239 565457346 705929605 317216285 345181103 945256326 743866217 754714795 194911603 233999438 766793328 377102226 987717843 610807797 669406177 438080309 683935205 810006294 533794569 660547380 344403015 16589745 392348512 949445749 785704782 482120960 370387937 250126647 569232064 39245499 338915825 809939625 707510735 72289332 50710713 312732850 371819438 757853196 141964117 608878827 753269416 483282874 342714108 316151644 140935582 39458219 219354403 718732626 981595666 940124609 694613599 452931587 379353012 21273263 647046085 902383720 24206941 706401912 196113075 297253459 926459350 761532784 921385441 157457706 918491783 325401758 586838712 384346108 521119598 977337714 518180749 898660159 595439279 693820545 303749851 289709541 653733044 926016555 951049258 532563260 842434293 606380185 724997490 525041504 368807637 539403002 529798345 170428486 968269139 432995213 487992058 1451440 207095495 670548645 725285955 15465975 654913143 683501005 940902076 613186903 669915721 180514604 902369442 698518452 605932991 165954691 919710508 667954780 853111452 23261136 284758144 377602422 908226638 5530796 622517946 521250188 912179666 138461821 903064559 530923935 216326971 773867893 905893410 856269843 36945011 893016885 659494422 995211057 793870288 658999907 4032171 941516917 677878584 274038380 570672129 194500752 351885100 202147532 951242910 669770035 634111548 346348439 424240240 763634493 165068463 891446460 427943172 496731471 443260512 470897651 405170489 63988903 963278670 36604910 792746307 712809398 592440287 534506821 692435802 674054334 407000678 757212618 553349559 927103850 950652317 843376608 778408041 814446862 48190634 968875012 405417025 986325761 818319736 794215509 204214671 852824551 709595103 406107571 102751157 747133868 678029080 538929833 547039097 404742439 618768619 242101309 69935123 977025981 879003234 799858279 536860484 931625670 436555550 327089904 419942066 402774973 189953520 504253427 196182166 834799407 836627209 269475064 352332826 377371978 576971778 822775180 784304640 785008229 862096964 879310308 808105713 749111226 255931742 676839965 713809384 54136692 105505970 468751804 289758656 365836282 916010929 751478227 446438470 164975887 66359456 68968139 266700677 244620750 872340266 676627273 96474115 590326282 999524186 667556408 173665930 485005781 312158995 289116861 814890510 760182946 833974709 921562576 649285333 213934262 854015460 930242277 292591821 68887628 815454257 274549440 574354643 522369124 67576181 105702990 188453684 933324064 21721482 474585494 191798183 985003057 197349630 724447642 39561498 751739114 822821923 71929545 830978702 170373308 176885838 403873456 841558086 893412573 950394784 822776445 260631381 680982258 745696736 470726064 273771409 571606981 50476240 841442642 795392205 474142909 211619261 385716940 869915892 22940497 768667236 535310072 638864523 50484540 395077027 170957047 603186792 701133399 119331314 542404401 684871765 183002454 348143930 270775082 897362155 71310689 534690344 229985447 421419842 610361247 789392977 544871237 733067704 759243257 334254998 353564957 246762446 135370242 27278726 262588398 503870498 378464693 13471241 264796025 498838636 113231760 602122399 736997310 603089039 999794746 738315227 685246350 95895910 408612335 33352162 306604659 593885619 490027859 216848228 419506188 929218555 115745143 409073861 65134645 923236174 930335127 377693227 182063986 513194385 573802552 976609182 202797596 107095186 94858548 261585726 858727494 654032765 469801276 419447653 714742257 615018407 212069575 131550358 919651478 742336468 273598502 532393694 893506436 559101211 620751250 609070187 146526772 71498476 438615364 161823102 502310734 472836483 430391125 372297882 448299265 914700065 805983271 540390131 664088937 815613149 380816863 979461884 822201095 554394051 606471894 940950934 657498803 145595566 691197524 230855842 933937831 645825852 560142771 687125171 310947408 732473399 289332370 313840772 859671649 374349576 278572723 579637633 568980692 946075024 278588162 169230039 468684720 800007650 678020654 690998100 381642772 988095216 286935546 325881648 974894479 213338352 611646096 928278292 484551571 800868912 670714665 829860729 612467994 843962346 38974479 404696949 485942564 59097326 105873726 996045956 610308422 251603651 617325403 337022999 525022235 171359424 704115696 510333265 215719026 562567387 728042796 814866743 499888456 793148307 963331974 710505357 477687360 115605233 354706295 718343949 583370418 121251037 319328828 462460049 142048097 572917989 786802440 696766552 824011585 144403087 903349930 93571245 896951699 599957078 767762584 540152459 362446997 900031528 146156134 873776527 86045840 540688759 923128932 216680993 964268215 133649543 798321917 268837182 885050615 716012012 543434587 495591191 864602421 41924132 590118472 443623126 738204349 678443818 746289015 828440189 373284932 443191313 967853036 340977206 594175110 299336856 580451841 972215056 146752440 113463338 194492254 629985546 320551233 926182936 49718536 335322986 289263348 430673171 866572172 346029361 393479991 950868460 779554348 753197036 35218161 349607010 328985825 448107030 345781491 578737979 664585359 315631318 278303834 673364286 887292281 519233360 189010897 804955393 434327848 119458494 891442825 390121881 327497329 734761631 547806637 112478633 137324571 970697944 975773755 599226876 619862 70731635 287878045 90728999 197264517 146312960 308509239 509695875 445280374 982434460 258517729 848332906 945578138 852033706 939269867 879507987 214568119 378578961 340387058 719592211 240546335 292591898 345715050 740957029 826201362 77342045 176535126 147473929 849845864 73514718 15234146 607907295 426076326 809678937 320123192 866275205 684333887 310364376 845431779 242673954 132122372 804849222 284245105 652062779 409556387 714052492 350660682 51636963 172003600 477758577 537741750 322601068 932690221 946801458 668501626 488703001 51904956 813416773 462371251 122303755 685957749 198194850 273909594 297211686 297924663 794582754 538581353 509130470 730662190 137351078 815160243 727186500 544499643 816666684 327034571 514683159 308532613 946301810 168498085 463896328 874795783 53222212 804251483 86026527 21094895 89281618 591915472 402883873 145189219 17204773 748740793 51544470 850891821 922652920 326239666 834722046 600282162 962422770 19385123 814564480 327940230 903108228 873871909 639902035 557363072 718014046 766269555 14980329 267270248 667092861 124269828 9434599 714890516 841067425 289844365 190081580 696163534 296898861 901681482 260532174 965006247 624186823 580453228 834768477 218177449 635499604 954899015 254809862 342224716 754365563 274138314 944672823 712500327 201982161 259203436 795458522 743460817 46135159 596509861 582323010 412591135 383399625 921402632 767164145 126649894 259352778 684404126 141078960 361341835 839622112 108471817 996893529 728597058 74232986 120189395 23940734 398224192 879647043 446812518 435686376 225368546 699676881 192029000 703736915 167993140 480479905 274674398 995567320 692495575 857066758 723125375 110108930 288628333 825456108 5845351 52830584 454718263 511039666 103243804 202542647 333216297 492042910 855077515 94321321 837539145 257396962 121973091 619014886 101255086 834907851 402121423 582251061 128836379 399299229 660348027 490107505 25259882 295202778 347956518 645863499 711032981 766653942 90979956 424410534 572455970 51385844 382442079 658249887 457872017 681009720 378305200 892622342 508468140 395665761 429477484 397445672 594673900 387701951 227145531 320205424 130217105 101712949 444753908 630809360 147902287 46336527 71395563 209539465 873241965 455055700 592481641 863700026 45040794 992980946 443190790 915430708 604595041 794090865 661279327 971515165 418295423 505219402 698964997 784479994 93090493 931233473 796751649 336891607 866772481 534584967 887856626 793432920 577482487 392788558 611459522 259146764 644997444 115377001 506714350 835145948 595812755 314852809 763614990 235457003 310294542 340608485 911136682 907297031 32681318 199655899 59213974 409344074 759578564 618372878 595464070 385760205 563148486 308504589 81002612 4645883 748442192 333732 138702131 239281232 915221875 520957125 637487169 678057569 688853912 291628560 758167353 991658695 312797537 735665937 430512252 763200864 875312292 627538403 29351732 405950794 772042864 109529617 994180564 385710708 815159337 142623558 873402632 532578760 65093558 145815351 249905735 809854951 243122216 335719198 309336909 11217791 650038479 806223389 376151902 361311666 405175790 571188909 958770535 316345758 406316253 909063578 124208504 268395522 410142614 586038154 378455401 249791176 156351743 757447182 894399800 155928308 27613056 457528252 91434398 301264115 538244727 962651682 177228327 14566430 249696324 231840141 605123912 503877406 675269482 118419866 207342635 333086790 452443894 597883172 373529993 714755408 213426344 873867758 486519437 382425720 380760555 529604816 209372132 495278493 686916054 398724604 961592813 13252 135812979 504011392 457801739 318316923 865147456 198309555 403555852 587270164 906594961 911928105 685235959 810531915 663475842 20889426 26906014 412119030 947321171 201336440 662620337 783718494 551940517 798207235 944773954 570898786 998827420 734561200 673478401 53541145 838354973 322415486 963487055 563099102 560803669 136136706 599416337 933991140 908835368 853560251 926975345 28816227 697145128 239214104 824264602 349727704 892073314 495025117 76372572 851657045 343324004 562431464 457615904 696805519 736710970 157849221 65407639 8949881 396912799 813430660 211862615 591772022 224265106 116832408 545016234 695661858 251599565 357319837 466214562 172594684 42974605 859555987 109931485 426378372 809252645 111093728 513671251 162655252 898981720 525648948 695167930 279431223 676775795 794920932 547183127 403558934 668800037 786636252 924713023 505348717 578670995 583943849 308370148 718560502 299823464 241632297 387800313 888049245 644761425 39853074 952343223 326521044 311315262 19314856 275403551 524213389 293260620 391940289 386917355 41103050 215878626 544322238 336880445 608021745 269916185 643487560 607071392 495554845 651416178 22214000 787303620 914214724 149561283 472581934 828955288 695928161 286555691 903679849 361141635 507338902 407626596 851647185 593819415 134410658 934179086 542173568 219063016 812754221 887762409 681735947 935310938 514216803 248876861 698444851 564780635 803213427 25013370 539958504 993307001 538161516 242530831 926580402 840143538 210293914 259498417 712772083 539065668 320549278 180489693 282676942 939258746 204474750 732987836 193201972 576418361 2526274 688039878 736304970 712224703 404909105 820852531 744695108 915835711 135489678 951551862 245904708 647430593 190405271 646680567 697119087 183897305 471111804 961658331 782111903 524383427 14460982 160542259 812953339 802013881 527573719 977100833 104992518 36094199 968981902 276239530 819176452 389832339 474054738 868829442 760095490 633232779 910713650 47583528 932458174 401273216 993520161 710333081 48131046 438011049 181947732 808830368 390543537 611561143 945257277 242611405 806219124 430594188 832961250 393659331 625155877 29917867 734436370 873317438 3942759 447748496 67183557 779463506 987764858 534829619 567989924 813954614 677832782 992950116 955808735 889313165 393220451 525814418 548437396 726201243 864727872 379678003 483867389 851481276 143358530 221040205 6717535 23284541 428692351 315921061 590681036 280063662 914545131 524602227 503395669 455240909 540125693 874352899 363625966 323650783 273164010 376391320 642262626 609768122 239941723 985321550 458632085 507827577 917358567 548618888 644260995 121184630 724021116 858536226 696490043 772446326 367267264 240768025 27360118 583793321 701214950 848314694 214616354 618430857 551822170 510435308 861130786 278353229 961099394 116578633 902398162 843342936 747748549 643136082 296626002 672421095 501289094 302383720 892492674 131250101 39918713 686957370 602021233 997326589 335279013 293862848 771856582 996656218 778174802 387310009 281849956 326903499 325645321 20756105 560666888 941878850 621134898 96323657 498846602 485373388 786732719 847155805 271805371 775000603 861672673 731105674 303850566 943107933 683817889 184132653 155986703 726377265 226197119 527692292 358178129 223709121 470436042 68499690 233680540 664493507 750839737 752207512 171264185 848957127 472063934 425914858 474505699 57520527 261316271 921788374 654446786 316884934 569458368 421663379 78354441 957770140 527731317 296442514 929201599 629219175 973000424 94515402 84758680 713352724 985114449 34092892 285937690 563248027 794179217 382542219 502466321 47794602 405643950 678339490 83316716 773899009 15101737 866335699 973701569 837949308 416750401 530598424 930284024 514707018 224184182 711976858 234898139 178269398 289104440 145891566 156649392 245287613 738704026 172006412 41391945 986864286 731630093 668291893 235147911 216867731 519006246 245273979 840851703 952663416 493662394 93061676 952102548 139146691 403995480 684410228 115317085 604846486 713246141 543020773 51365360 571930097 385878308 49694931 368153893 422287845 967718785 443629465 926561183 878715406 85549817 551590667 212818605 620806427 391859421 657831740 301223413 681281583 409033216 19824236 539181127 7459949 974059981 882024475 417716160 382548387 918982125 727439250 487006131 583950841 210953840 675024496 821516854 280172071 785644458 554578387 275491981 287623142 309320184 784176064 211963228 2258487 319229790 210198097 386970667 212168583 33044772 305554610 503086403 114335349 303105146 522900707 103987008 796791133 25083860 524793098 353779001 981398268 67833351 775215532 810861806 350348169 141134008 33520908 906116800 630195331 188412508 666779731 87489621 809958899 928818096 583679890 17828106 953482050 192747608 39548145 541422527 626143485 290419984 662884378 499157373 703605739 50407459 389885270 255137897 809389835 460712490 195513532 878398647 192574823 177276202 40416502 979477435 244293377 100703862 202397912 507671250 771340884 833483426 264433836 904826141 149026840 896941871 280497361 807546451 427796948 640912666 99766100 164431488 182568830 155138959 12271488 568986225 988811039 910769113 592425111 667210900 81926168 137799204 781405691 607827748 812028952 259043113 514044889 161915287 367034945 905835641 203908699 449010454 947944210 793672246 60542976 78048448 859439158 352080727 622863064 965061708 293127984 608821837 813140011 256363082 803845191 628832306 400005628 221504054 901040864 723040823 644971984 511004042 411570750 703491228 984572169 318545057 172817968 80837602 34905651 878038648 805937884 27681629 630847852 315138205 226195526 888664863 905919651 329597385 931943030 312200329 941368269 140993003 611011058 738661014 873945921 140430600 361993191 115971332 377270809 716064779 319919680 43802693 287671508 405101216 164607962 393981731 101650086 471810658 719066040 933088028 777348234 927169764 47535975 319160845 386607226 885988160 103309727 934787619 929769765 278954879 736389127 728791768 773843288 526128369 985792870 694606595 436059164 337233499 57174583 421161310 143498251 887982473 706772511 524440781 623445557 115383047 643611163 595305597 426988656 57352366 6535538 889608220 444289112 215592774 899122119 323161076 236569259 457087522 221198549 732889218 997065990 768808904 318213752 833378545 334294092 675794076 654346289 746065477 602676159 195604310 430134461 799502443 384980312 605658715 796892777 864389721 558973100 977518726 214716756 650297501 669658827 954755691 522409968 989723449 261875939 512349766 526055910 827625281 837342208 577511315 781736454 908802180 183133871 155591402 85717685 69408277 657496934 376921040 86835309 475836888 556330136 169620070 334611584 708503549 3406951 186386525 348640217 716027682 25521874 239629239 481518914 447886636 69440098 789179636 129998232 756095689 187976956 433886137 952440270 593276615 533927722 314178328 231491687 669544596 587235682 762865890 789080598 770858162 661335443 474939313 456172322 935719415 970518972 939118697 870044583 960753777 650408599 872748803 786334033 754471357 490860678 50323054 481766874 284626287 918212546 672961269 628123307 677415127 72481309 143615547 16346179 610043650 282305272 323008973 903621026 753444183 542298696 985939928 569518798 791439598 94701304 324324463 484346875 207318554 13791547 583207861 363873152 7654280 344486986 937728668 282535556 674649408 578984708 508836598 524686642 22407101 884982209 58035436 419580780 879319761 843469693 332465447 496953137 637163073 503423589 521188437 890233039 473722584 304411723 178000500 672417045 309486375 895901637 710388199 824295166 239730925 212343658 563011375 477849320 607533748 45474082 236951619 816113541 716471358 675039398 194468740 661581844 112190320 766028788 593479345 758024665 843444989 168215641 235818435 194954959 546309584 281614237 629212309 195245087 697597182 644335143 426659060 503889921 961154913 452530431 571476830 286037149 923461806 328132644 569313153 580452780 606091976 430028927 893487820 275851747 696310140 855189342 238207812 62753747 644492837 653773670 287559073 895520818 697342149 760778738 384835462 356715458 497554022 884934944 696284383 570115270 495427803 982048556 795327749 288586927 201583084 276014683 760479724 598811175 836270567 309544125 596660289 741335644 210364395 162692397 303572911 421510246 112839696 905106475 811588534 510600241 241450146 377503141 289734372 918116064 645182965 807504823 280306297 219425200 360051817 756582618 637777276 822810630 520724699 507238137 894336781 615537877 545652341 951046203 49111587 144313491 644942252 168406421 524607766 247659988 514286280 411894837 130843999 622166330 17547200 788648020 176451098 534187113 821832467 108237924 421117132 316374221 455882253 649863339 144976111 607202063 849630269 769397865 268981469 908356279 193087263 459534643 586899193 769978035 364477144 785525327 356209553 392213472 659786299 512941484 414568260 538277166 372586650 869213053 422434096 963462231 327437276 451365302 431462201 212434817 646569749 217992936 71393052 152742507 435636181 918551376 839510774 796100962 346895421 452959357 294346175 144317816 254574928 880177726 47590011 958636251 229992358 523160516 688047384 234875184 536234193 36616153 966293957 933741875 630807391 941571133 811888570 707695325 361771608 495940360 550574916 335665960 251412207 533038850 625681646 587152710 747015147 948363384 201557274 319981132 780113041 585502927 13776572 454380767 976737449 779610563 250867126 869871238 167998718 246283986 103043730 737417509 382631280 321634080 965794798 108530046 951870584 223770303 445530528 368371700 905347098 48164877 867021369 947507074 208049482 960266824 322884367 282482517 947504181 968146930 447099693 186138295 489621217 742383320 27474207 646873333 176113961 757796049 399947003 559745311 286400332 774719361 889463846 163280759 316329630 173708768 238774529 223532346 204256889 873447485 699549929 651255652 783603488 789193360 416550061 721017482 736850968 485927371 555713611 48535428 153721430 23722325 804819493 690395831 545895135 405104386 494618146 954833325 705772927 265571735 506620954 551078480 147375040 392395815 445612998 954146673 329416804 361892458 519348351 451108275 232634221 604884974 448111014 975267594 456109603 975873277 393021967 256384573 556062653 783929130 95273045 586393798 237123799 409975614 264519489 170335175 115280849 269263892 450330892 22136668 66532450 771112874 561232057 154089235 566637984 869535247 293311151 826116963 789320418 114856630 148507248 986072429 238794003 824761212 156074011 161518429 123698563 853300041 973260709 194441847 989741678 850500037 360217884 779534832 604898450 336877553 136647981 635648471 745389184 322899155 569213708 318528057 129400115 313750475 578737962 935487472 895338127 851316487 26218778 773882452 787462137 891371801 523613714 296654008 555902847 179705248 21499567 149564346 158087057 43006821 682842784 242986719 996080982 73627113 467032085 198846553 137738056 574081098 191123939 164948867 70111811 496653599 14790863 795609862 343123253 983108551 284693659 778839900 937174426 707149637 179023557 962360708 951973531 293044223 173591815 744844120 575540088 442268156 943151937 616387606 218596669 583401529 993089791 923053426 328342907 493166702 88869181 532984210 965298127 59673425 513229481 205495005 576282809 995365322 824162011 388095720 20794164 909347927 250098110 933669027 11221482 765489808 869759914 130284964 548109188 132445387 973243748 557459175 841073406 805689534 540276914 278267367 13053714 632291574 807238939 35432351 687738494 739973403 481178558 657138555 16567168 815737797 130298678 672992768 830096479 862642200 23269537 917499203 556662710 877077360 498510045 13140623 300966880 308253925 543132212 422868204 100323885 241281129 85198872 978294849 309038924 688423047 617414168 311570986 543719010 882829513 297374149 307852003 957709666 814432214 262590888 494840995 903452906 338549153 733538597 255977 828409087 361217649 771276420 801772257 127544929 334544384 254955919 615105523 766200959 387404553 849412805 687316208 865202946 427696194 803828279 481456395 44546241 833272667 728372450 163924745 538857689 774412569 115472010 837313738 63218998 90315388 358382507 870365324 163299816 943333190 663024594 875124941 274865723 62845258 445729109 750437475 284922275 867688540 8466740 328514976 653131395 853266108 168252863 796378547 992640005 473979666 917578297 243613905 737272171 366372516 286218287 683421889 535623908 485226658 288942323 274729488 73566880 149265391 687579247 753464527 414537784 317946412 150478835 387402014 699896240 394622542 67429357 72715823 592402277 489140427 843817543 516655657 401016850 167956552 926720328 396559436 434453142 636935947 350077949 311915408 503508574 224433587 598074876 346634514 366956570 622580260 603698719 715936121 110962321 711948033 455584560 997717308 392574534 104919459 860846525 544594049 201633772 926642991 462954909 123836675 380188303 917651126 589182637 368319098 154159177 473560772 408111246 217204239 314482554 424191329 199562251 761985210 359476207 828783062 346393072 748137344 49582608 835556315 597120593 622406372 912454647 711613559 203526242 766132166 619174605 946046343 824723693 12393248 486232679 501942621 936323479 177160474 365557650 744671265 615348690 105766632 23311775 496664703 451744864 43822551 535204389 953378547 913451597 508135523 902484968 53336595 492294593 397414094 58299413 319293689 111204770 773340903 965059412 637180228 663115574 716513364 456855354 611926015 685582675 676720251 904082518 636191400 164973080 886045069 118525212 180109807 492687489 658809336 503182225 865676045 802681773 247029507 645900761 579511844 468263492 523353059 650542392 184895818 831297437 87138913 409384568 786737674 762098637 493186293 114580879 929907157 214608934 383041854 107913114 424285639 84603414 341523358 964444174 521397841 161551836 786315613 83123527 951926629 627931005 493163893 981893156 143620137 591348685 625634390 952368430 509574614 477797134 1482772 591009874 644155065 152442732 166946783 91434288 643145029 551807851 293913559 208839172 364098432 217516764 611161586 847955968 227206254 667765047 172580854 443489334 650218670 68995150 427266566 976853693 380815922 330661428 364054108 664078843 110087198 554558033 486091261 55333485 301927469 550995352 183900753 665820073 588041367 729043687 911747373 973933396 646021809 869753056 284515163 299200058 859253232 194520645 177215227 309626320 504679072 273008446 696574073 787036771 455352279 184674425 768648959 787250522 142899949 993790693 538748210 855935711 937728498 284900184 123888437 416403369 491215318 140198311 979527546 252863871 286827761 282868599 315118285 872546399 480212413 398016805 672884184 383781036 632623509 261641474 323794870 767087382 926244476 145836136 829053269 794156381 540303602 978995308 515295909 276652576 283971840 973654330 842629005 918202902 671371185 212653863 426979239 773518617 427872438 70140958 731767556 336901664 681881463 885225468 111999390 411324936 736400113 783285207 863878796 51493603 3468794 946898132 127452695 983689959 265643801 131516065 643301696 630924880 11909277 819121371 801005838 107188741 894338449 553746230 384710647 319800309 135211207 997015311 32771056 298542352 184571971 768549738 810480457 555288889 850052331 776969375 534264650 849393317 833744102 408913391 178135840 580159907 410421631 8017340 674467006 733020705 366429544 420698487 883777365 159235769 455029807 582273598 761622794 913896305 237599691 526241403 809504345 914931727 299637774 957072821 9910413 486783334 610877104 993987683 111675356 160541683 540791374 431621079 249751707 27820732 192614219 644008712 495125031 98573708 709419483 380378682 90066513 781059253 704515222 221132692 748859655 301292702 176224383 564350129 891334259 740226920 590464573 536911582 820433790 399451581 389789726 445819526 861489875 371422244 268123896 197977801 181232975 206305634 897796080 892657051 208362183 22331663 981318506 836594498 562599649 259551819 105640651 209718479 568260296 458106288 92795097 621237918 770464795 27065720 102439827 402423319 290524362 409982198 720490737 389274018 458838680 483321927 819341987 193019338 149253081 293936057 467490888 110111008 357185126 924073276 204661464 727635321 997558204 757936553 391388657 279721054 623146795 710951614 851469364 549910463 260034396 538620553 105651111 629805933 161720470 801461731 284251131 219325379 921366555 490432798 550742758 33964803 218203576 529538242 186416837 382379885 9872006 347790752 344065722 783341727 632114011 465477016 693670517 775707137 331763330 413256416 739761150 262376431 16272360 810559578 817229519 430342024 715083510 75425604 93219254 881685572 925279494 616510757 959594950 354498157 94411238 372875005 61319752 523304657 793693347 260484166 97237699 108213570 849111703 244289658 605812870 460304326 867864122 97435328 346932815 350064074 970031012 237837364 155453330 72910447 56162259 462373230 237501248 853387088 209657813 259840744 307292458 449414452 603204425 502337749 949544318 147808393 240434829 609730740 52144691 135667371 358382295 790458439 597433969 753827803 28906888 652688878 687156318 439464241 864963067 537642222 895404282 14261686 182205073 563650151 759022564 16464766 544140523 422592008 349699861 455011833 69773362 870055890 15540553 72127005 778163813 142594771 412680858 875750234 776584870 743489880 609155670 617558235 755085412 254423932 526770606 437305041 327596555 372506454 470981663 904927626 857688298 558944754 547813196 290266876 629554547 862615875 985083012 59548588 901064654 4311870 775739813 166356022 210151499 629648376 68465658 18041761 712251045 694041499 671954559 538291395 881746780 910127917 981380791 449834803 621226336 9671858 804937296 952819300 139626661 419076060 790836547 866012270 545737941 870700398 875948619 622507636 893789624 939184479 89388197 860019954 457059037 84385332 48192828 609042455 383164444 365726357 73676789 871523850 447881272 3340079 516433908 742449219 774623286 70239756 686687249 561614381 514823979 58268460 278616097 763037650 75310564 252461988 462801853 391969920 873758006 388003722 65635885 675482371 88149282 475242068 110113748 531472815 873947761 282248979 831535312 954775828 915065354 345554295 470805828 568935325 595467789 180035099 444449273 198375162 669996076 981750754 363384154 667217948 260236119 301258068 129928105 770313796 486632708 736625243 126485274 162806068 772300190 492221343 934114303 713617039 738901142 466393521 744250026 891805555 319754044 797705585 858256679 484088135 770340765 593305357 508204986 267929493 372290006 83859992 880748905 289561532 6352493 544800077 766497862 861814788 557676898 39570950 889667410 915631354 837389438 692749505 435721462 70601652 246874885 70384223 6937958 895848422 606523200 104427784 879181271 843895182 128767870 58411914 464261761 575619292 160099071 380853423 838976069 59475536 179003529 339877633 117154724 477805055 673734187 177423127 176512549 276979871 478283277 943502147 988744419 70390907 169066774 101419824 665122591 626255327 273080012 372825438 627178766 407314832 150790517 705562059 976531521 615630162 386682696 70800432 269843573 661128060 534534778 456449756 258832861 563745827 731606755 718699131 514005325 914346629 986661908 966242005 216219944 826468793 291090494 962876188 731614122 738751316 782774697 989027242 547531653 169289362 950168108 602059821 187866493 353473298 45251059 718944552 560654263 49825695 411938397 25521000 511439442 259018556 908339737 463098883 363439305 437092407 660406531 723053618 561190455 747321305 709202884 351294345 808541022 787574222 515317191 891010357 397518736 688921219 959800127 189386962 562246627 863504953 897861638 678387926 188730984 737701705 196167804 515405964 345184231 881724190 626857776 408123994 217465145 768041045 352093894 259256225 968517175 202964500 666959549 594107354 136370994 597458999 843957436 431192518 31684015 974636232 174273107 965289124 478692334 271811559 913645151 985454217 653117966 485142661 572996878 434572769 957148488 471781673 985262744 243690361 340798141 86084468 324394130 627033491 934241989 994638931 64250100 47169941 692945105 644556243 153095320 722710453 238517155 717800783 704720532 579050655 914500565 556888186 184125420 914582333 184839980 541216299 655323378 50740655 903911700 728926869 760084873 153584640 509155661 669024014 575806785 85309994 911759112 585476116 790483174 913840178 266256210 196374382 80098244 268335141 686381748 831114056 913024732 35472509 6750404 12579907 582949066 52923722 190748948 462203065 937284871 342832337 306978578 61931056 974026861 435990476 200297899 917008090 979501865 578653785 173742883 347589692 465093625 542805099 219709076 78557087 21392530 126360886 105612895 54214067 871147758 649774586 964379084 757560422 771201121 81177976 28739409 10177267 988957286 258481083 143427862 551870507 853942207 820105764 567837073 113590129 184695504 415905006 449714937 742574561 655189682 300859446 886945152 10252043 115975379 649043039 462280387 148177342 109413851 726561125 741140467 301025404 146133548 626238429 579685191 742902624 204847102 769324253 552355590 373276484 572296834 157826169 822392717 556524757 879026340 766382732 361755817 786268425 426547924 139819497 375274597 13300143 975698397 982565153 580867468 556215028 993787920 186288219 444877327 754784074 489445000 23150826 168606573 128430431 845881687 503485582 207018665 468117585 375006483 396101426 113418431 43412475 19165024 836923150 65993453 766754376 778800877 869454447 292340097 193379273 376673811 202207445 865328794 142455086 686600714 485935301 874247437 74583609 204798332 640191404 253399847 693821859 568728729 494744966 548400601 254304867 667562727 289391102 940282211 875299113 306790809 545583759 695362957 385514481 352246934 466222140 434718091 374224452 98532184 56286617 428298718 141546542 221560094 17382388 776915393 304895253 70812424 865346293 136611233 960365929 115637024 547730125 845838184 743242337 600303174 982658363 695354638 677433299 596499976 42550236 58779351 350890389 953625426 941605982 136576892 333155416 71984999 76321552 640473466 654472559 539633791 210559563 539512775 980335380 926412528 580366711 950388652 318947990 597450290 483621974 155862965 386666495 542769820 147774655 276340411 912871811 968456694 612792447 733856611 448182484 318464231 474350215 612835283 568149846 786682483 120519181 21079462 786479084 620607946 425142983 313973506 491064202 196360610 117369698 231082628 764583322 317777759 43961696 7741128 727931454 882731992 440555968 962656375 41075078 579702445 109180040 585282994 236472758 153379684 51292116 446679454 109335626 301287685 977099972 791070158 202106304 449123581 69175044 775814495 214098077 685245401 395666400 280658669 951224402 433839779 491957858 310556655 132867675 889419873 816965579 354793886 795936126 880103184 625522771 874208168 87547119 684040178 463997623 910534038 952258047 860467782 594982947 567833090 680043347 583307021 826591773 313099643 354606379 290805326 572599965 873555672 529705843 531231813 73976477 726457348 897500853 174969361 355532488 376191808 935036625 790966486 940088177 17886861 467084993 215290808 802920008 331176542 26991903 948545350 357682107 94886198 592766664 682011716 434000236 704131730 713231802 69287895 69354527 800576414 784600484 452224608 913598459 726352379 454569557 773803562 624813921 637310980 630724089 791154487 926461886 551823908 654885648 491368086 673972136 919532394 238258935 9254425 241840202 564772548 869261790 415168575 345068432 167568800 7887299 310636904 741851133 193193379 799146244 597009441 394265938 34498959 270988059 91498091 453675659 540707394 743780431 53258473 625480068 251623038 941808788 224314693 344724298 962261732 875969122 856795653 694059107 628675704 356664374 597297601 294801698 205938387 926146381 46864932 811969506 342079209 696998525 814003094 815881969 963652365 215615630 292701133 978917102 58609631 43419400 73881014 388201735 344666625 930013187 319833679 447315660 607828167 876108112 853258119 869129255 234907500 683134533 242803358 157996345 38715974 125959701 563261914 211711525 507105235 574635373 305958266 430880867 191734193 274920066 60268691 13675688 915486495 821808509 852956717 705623063 370129981 873292355 761281625 6247050 373076860 612645544 514519841 907870083 115994437 235356 250817941 896978151 357377672 642977702 402763304 380818550 880792935 282245881 336907588 891334037 642243566 424914542 540261217 594135597 103509494 610486794 322894836 659366331 151398661 700291358 822828714 218027044 791641289 564676575 27164431 558901761 680395216 7888095 812559896 26609772 905082747 127587048 600230546 329521268 138346866 153502838 104219547 458432277 844061035 304565936 197481042 626405171 51832011 352476962 624628964 454655646 218256628 126819646 657491554 879908192 444441818 220011156 280583127 759570204 977117542 48028830 984005338 575874280 828163947 581398601 704069671 217984313 155375627 525292137 826225960 59860394 284072239 907670646 426727175 587699513 555596350 392199183 762006324 478004141 513260315 876611132 456683873 611875544 273005476 722999153 215292377 303351681 208589907 126374804 551249825 267846733 186666121 224005505 916786576 183554560 539771021 268555147 781816438 423700789 966483105 112342656 670701197 78293516 205677283 456725102 806147668 784626377 4563435 21343023 417548300 40312311 980308306 456257625 764811037 508521788 450500345 615578994 211833653 15761590 705226840 801264415 648654196 507554269 437150338 273403021 290874755 985569184 177255154 784681781 166106327 982964475 818165215 407381279 780893380 648063879 807596214 925872100 582358169 157934597 106752615 62515293 390156537 514689773 486481405 159082145 300959695 443856477 262619746 729769507 554126244 776552802 947870958 443660771 515690848 70029845 841359153 849729816 96581700 488440392 745484054 914979004 895621374 370069756 385197248 633413682 891905522 507989510 494815382 237007282 792952975 875264177 974359910 944685024 226254637 954114147 894596095 765982104 914075530 874071486 922223707 22732559 964466065 339409938 276152064 246077100 833169194 490731905 642355069 48640452 535208895 19707232 553872931 34533686 233645384 805542592 434397179 209214836 282351893 194804391 411403135 212937091 344382198 165391400 469150001 644025929 372543070 652558102 593556774 611450578 879866737 656913711 690101734 713604633 678350794 195911347 527994040 408593549 978803627 909589412 524580749 973130561 452446129 640918190 58693829 833059364 916432484 201293286 646689572 963287532 322610184 694389245 300355648 459148419 31741686 934937787 161613966 73122306 649088061 576484437 782604625 509492537 985363265 10307536 481705514 656292743 202654505 498985914 84398290 194281758 326997120 850357399 318280648 905498296 406384096 305604972 209180527 392891969 634953860 943925416 154559029 588089967 694628463 630053493 866762407 276232284 718066938 542126721 424953237 681253876 244709688 754226342 13477449 499554448 354321830 298561207 366207244 592050799 371092688 381221979 957716504 660552416 21240101 517161935 712008242 267357232 536323119 241820941 70074912 596424731 650273578 946908372 458392386 135493886 979357061 945252721 557462495 231268283 902935365 516323533 140552564 813184469 40458688 423977939 945616908 844883959 866296501 637149467 821944849 788999960 308112260 372791400 967200973 784849552 155314787 754683928 798714792 839337037 443628633 150513910 119682362 194299647 195664773 565323737 717626125 584372388 914482950 702264187 908224436 273212847 867721916 695045091 392433126 220453630 971071816 703773772 683897285 961008742 8604315 201828066 932048068 465660926 787640013 883000548 645179245 608610912 242331822 468014803 242854637 604612365 552869034 667071453 152240190 71673511 512645918 558875693 107380062 30930686 167824572 850490158 438436202 734907212 547741984 634950538 116760831 896142174 295489497 869211338 528438840 327470662 789907674 750791311 168888533 364832753 77738075 477948717 54295517 841317124 486310196 296942880 831635419 96797328 232907499 134870664 769329072 33823883 758441207 709458280 49733393 447689280 402860785 681445223 300524630 212705672 463488130 291930305 578167390 250798610 761259155 99063409 152607443 535131455 822499183 266363059 544014315 517663308 358119092 30560495 656559725 170430812 844268152 1583344 447417507 419558932 41104463 5512525 927938853 88776482 489533199 559676357 913137505 590582671 742922530 314869651 410778143 889282087 672393415 710644098 78399317 430250518 640849535 715976135 216887451 754422549 346085494 260670723 565815665 496576005 577634568 892824318 515740327 230140684 893915386 135647929 676541794 720991254 780288237 384102209 370156990 489808060 546905212 92392416 392574234 799468970 865052821 166135416 262143884 725305489 295721527 588044653 349503441 559809592 882610217 295035776 62755083 133347300 64548051 67772518 436752758 518688218 14252673 182939480 149133209 756898267 125665190 95072683 243861072 46058559 740325269 789995130 950861746 598855030 106582884 832758172 308215302 447804641 903163942 703307482 73838963 191373442 310117345 73112201 304866895 895497310 587138909 608287277 638259885 569829884 103644228 39921262 57124551 299106190 99913414 901587576 571840676 593273621 605136723 918225699 802730371 232667651 260526958 765936210 903040302 909876907 957780948 658503021 429440440 858364061 244570763 947745007 563810766 417510877 420642571 978296576 278352917 690945006 467212272 543787356 154763270 642920579 830739159 622037339 647220334 835302937 564979488 921472728 177006801 784805601 515293279 828854956 413258606 921281160 279592646 49184470 512274089 974524600 57810977 348616920 135985392 255054742 695674651 820567906 68220896 283517235 930248049 662476743 643689544 7539705 500990166 158944306 808622765 134485658 540740777 689303647 271609310 696006259 811360418 700632323 590194002 42616739 866271953 450686220 311777535 676000841 883616872 982714871 825483636 447742374 378471361 663331470 19075945 764127833 49061478 477930877 630061043 70931939 348234189 747214400 308850568 109263237 643821616 774243468 469226868 668310141 190989801 143682476 107608459 839090628 539729068 197906579 201685686 385982788 19807498 960131408 505241176 265182361 685424372 36053123 63699202 928535735 658404585 37291665 928621052 902339549 638786557 214033417 464465621 43838138 228489277 481030624 639031474 990956668 402214448 736742303 283095464 973950986 218521173 360495729 4254443 583028700 969709853 355770956 960668939 74056452 401135054 421919991 462130740 813321414 532548682 753848388 493200187 630567704 462671554 754851290 166018043 971595596 374012165 905438824 697055225 458957467 984485768 951944033 61194306 56918605 6762237 553249617 423806186 731484487 808808995 881522387 469977200 318419006 788596403 151968160 412655938 734582823 653337484 300223486 342206784 157067576 452099380 153429887 392806547 478316938 255105734 39471629 738000630 914064988 737738854 924516413 651386774 293136044 866361707 736006592 952773229 595005165 366404520 35240849 473345089 908141369 586405397 593727045 257663255 26680217 105020048 21068800 852425279 242887576 612249681 594858730 483111045 75208196 86765450 876655613 417261366 730692128 290457278 614507735 972646435 281466287 919131907 150356623 131130818 847114140 235174651 490302309 31237196 322010339 448877445 675640063 771216251 143747224 648520140 643852673 932014751 227556346 969423611 153495631 589434086 80184873 208712318 815705752 75165124 713608715 2517530 105163389 940794021 660797159 729510306 993837357 797439602 191633426 392622495 694491899 925902551 156266714 815818953 983145644 209454942 198052604 799020278 586942652 860811353 641378440 40726910 376174562 22826739 245692260 544083834 303298072 872862913 756902393 572974087 414563834 88954246 870058760 696653663 273961843 299999107 751226800 241676384 992413118 532253042 264970696 864174920 35089314 712000506 878649669 147895313 281832789 932728132 391988694 645123503 784129112 381029826 739995376 586859961 659064415 440753703 181825409 849695090 910426450 236505184 587087479 400665248 403916872 658458324 76677754 766578333 70271410 899767244 47988418 475645231 589428993 509873164 820829576 613538806 430669822 188580188 156099689 784695835 853636286 510274184 149307865 107344661 999822534 599693816 856567911 635212005 918349209 74535346 863047865 968788760 78302992 716991840 314742135 471376446 618632064 66832840 183753193 65923450 239495946 416606385 285194688 576003225 482630211 22418085 756665437 912410407 380674582 157403764 819278759 781303836 170714876 273560183 761988679 568696915 527482705 632484870 685507090 767518210 701433166 642801734 900657994 248765832 603653837 579624433 332789671 913405190 782996264 572836462 313902230 572319223 221277204 914644401 582263363 665126244 614569847 542387005 117980824 549430030 291167173 413710268 21669165 732392115 188034772 869258926 576439392 17120496 291925513 210606400 608857852 358666180 966149986 5576407 466230154 613076883 686449645 900479133 748910505 903407548 603419004 905179231 287663733 720612239 545081751 965540124 904706046 799444989 191061016 38024412 681166339 694236973 907878723 464093234 647301246 782038842 105941930 860572587 705553452 737115346 229999841 400025755 236554965 958861702 706097756 603191550 595182715 643749838 508810205 123217452 236737635 169949697 755237221 892057223 147618513 216481344 891274361 627089146 23765153 662346264 647278813 226389674 569849935 962630299 600150178 121415587 415150904 788378292 160125260 575260653 436627378 660977245 607611032 359728528 231812889 348508022 788313253 168488597 714445618 513947610 254831103 582507484 658659572 766923362 125473597 90303844 485466002 784528036 109351748 359015600 16114428 766643596 691016706 76552279 95907231 644162111 162442414 36589465 721318604 145462730 895287726 793519460 17102856 675908761 123597107 196312252 95892385 269062937 243399033 825448550 725678658 844369423 690267791 687863671 8793694 949236653 129534314 864056157 774806412 747802263 452196731 482187031 639099159 740037838 720608662 872715269 241057441 798989772 167226741 68858304 860245412 949252315 485328543 1352916 888171939 629527281 902760684 752288437 169772086 432058329 934245870 547182374 33794770 323367598 734403176 409184844 76086170 221514309 161924804 664130025 273965254 528531293 913691339 66820819 686888327 406385581 591935542 499722209 819681336 936551793 497556739 373679207 238274900 62824845 970807609 46878475 269394647 205347158 93774848 138009956 635945983 609648380 768362510 346469686 789119544 72622161 38126728 435026092 407398632 616865245 953638850 35771954 423176678 112582677 626522159 359062946 903281441 241858664 392574214 662655016 453818372 639021705 703639956 223642626 406016168 875015419 59917354 893828851 896397710 814395291 456273902 531576995 520972708 523719950 502132432 209495329 886835826 872721983 400080790 846888197 629581613 323130997 699048631 712219412 247472727 708631378 136235779 383445899 980352371 566064524 877629493 545071239 308370718 289244267 908421421 896108031 901814781 226124757 893221150 395764081 261592781 921514927 781384784 708192016 978462019 258522052 414087904 241867153 621722617 428015796 58425663 99201390 548760554 947465238 682538033 269014186 780832713 158776699 159730372 149569443 294684333 15835413 929898878 713104505 962589487 20881303 576628925 348547369 547894316 985566274 556405591 210358819 254793391 819456250 422013659 527485813 840273321 221130815 94541526 125174988 751641272 97981625 562053102 534786351 576018089 403618740 509061001 124883780 227289501 99158373 813002914 839073629 662713961 838947046 691847560 481571458 69126232 759365352 337897191 557683643 961303057 372756571 502081269 970775272 189103049 837648383 271026260 920907044 95908009 688120838 634292699 860300835 840127375 821158334 937672343 333636745 460995070 509477938 228106359 600168628 13022272 923099748 988910800 497431996 492644507 186714292 860917723 462186325 612505145 152003024 463985649 735058484 681027046 932117155 340567154 573929065 847517167 192051942 320438199 540658316 821708644 283229444 163995170 259640476 586501487 26735352 397624688 909369807 844872154 246626747 420575929 823641307 955597864 313512611 132300925 398543401 367963422 751189068 436533692 472810714 534145147 604975753 613213414 559207592 47716509 587653189 910504790 844652964 217260778 975045863 702327439 400684296 48300122 26984132 421581703 58560092 71492892 316234529 354918463 700454567 97345543 645499498 946626745 363994390 273182437 488401816 285151972 232937470 817229314 521188262 17760253 309084055 285554600 532290542 392664741 428198418 418143430 329454408 843303280 158525492 730333143 436044662 768742395 709422163 293042658 973571498 18058730 573360628 23836736 581746429 527832457 685656878 140082337 205976555 455709919 114283567 189960238 60747922 296963391 832983489 841382534 359356536 464409273 685917569 341186482 362583237 730244299 167556969 613727044 539177507 614362255 401264815 941980146 41179261 115845999 669508291 323039212 954499599 929510601 429031139 496823844 832820517 553734463 828976558 539575467 587344922 54199334 378058259 704496275 313617750 573130972 709743852 212817118 557618742 82421471 628650011 381104560 708282658 603636944 331568229 820509855 394691629 757168430 557339307 520142304 153713069 644437643 550846522 610227508 808706900 162887493 731684667 182093504 468891904 196593951 435443498 59273817 950573352 102367631 427361717 273869213 113195426 995514674 623007745 72668360 572754048 211853816 126384486 416127707 123268633 253490938 624577864 348926686 333202147 727112718 104926137 13644440 257724973 258971221 998349493 560439126 558083594 763177590 700944943 485050171 43684581 48579052 651091814 188182731 900894644 194868627 787013954 582488560 507906129 773080043 58981451 654892686 658205017 814719155 853989876 324205286 537942666 594141925 411780030 557874352 270200968 972167387 131105373 201109573 154102972 891342639 655330666 339336988 797673932 269600410 387419464 328563982 316789116 406299058 604270131 176475690 830015329 283071654 723864405 173219095 437561323 862312275 43791021 467604460 493994211 401916429 639472614 495034091 496421649 129191668 495442071 69111197 774107584 152024797 168668340 37180126 974304862 185069964 190031084 821603488 162361194 183898586 102033823 635665903 710170803 50180000 355277450 629446084 528553970 367783731 708927241 938286938 716074168 459168593 498226584 577640800 988334008 57430416 468690296 244714329 706982857 875684527 633374965 397821714 793759093 440292686 894041418 871061830 573483440 373933951 279773351 718793156 795301731 136805486 592689030 459178407 908253113 163250086 237892132 868408847 480726650 77764290 53902343 441443937 674339900 700998155 980569194 743235709 557581906 510551373 69531428 596096024 716241543 155708233 747640347 289255774 434539270 470220027 528017128 599064798 393936911 613726160 600551608 659872842 505482152 68530500 173736082 970580979 755713289 465679114 650488162 366383508 848071762 985132183 767719576 218023396 130629984 286891514 715005886 167135172 39883144 256481687 426296070 976170839 144319037 186092384 88924213 450601430 82646020 329083237 44889064 70940296 606107566 245107353 771674697 297291399 505845696 230202097 687112428 641896457 403144171 84627490 323200918 900992415 802963320 652485766 639121056 943301240 368790217 994614882 836141511 773109065 958062676 477061777 387174731 42996867 675777522 406154162 528308172 294770031 386855461 130017607 142961446 963985042 924349912 458471958 290109684 738790550 631764420 287216602 368814390 804372183 391569311 503948960 240354836 348873908 923036366 793682767 224225961 687768739 166560639 465771888 439234907 864536491 864195565 112270589 209487880 526382831 585392900 239078345 669405741 112570217 873135803 231453699 555145937 697369569 610419991 822443557 241772474 585904290 37428184 42470288 63148063 570005911 890550324 861885863 2758058 771747723 436238300 738642665 397161876 422669628 81073616 962252699 671930200 871304256 121073338 213304568 879527068 954796215 357107295 284061486 455283736 608854373 658407926 907963993 387934915 596965548 984400355 819701935 121646694 868996644 924582306 928567640 672889486 255657892 847802464 258702930 688938573 840488975 320024123 253816393 848420476 66682061 249913362 525594614 601531333 850854666 757696554 54019986 887064676 860188729 673607799 984950207 397194474 971823418 905560145 308677998 274007680 272110924 330092372 52523135 153466469 763218987 652384827 609710957 756485494 101826538 526559305 549243737 624651395 580689659 216063619 229995871 952617578 732762366 750610331 285673182 622014585 138991685 147022313 21148075 9701243 988346901 331917524 592731549 840745710 529044104 396383768 764076783 650655410 496707819 610664979 822269284 234944407 466356356 607311124 442002868 596525895 281448493 80377566 440734061 988489996 978500592 978043768 894811325 458482512 699580968 788780346 148497731 914066851 241260912 639655168 391750304 681710572 836275778 350150663 590924554 710682477 572003055 124121834 828262953 769722703 151514395 345598200 207075638 408428616 324893440 222330925 116661123 698985516 845715285 42281032 501730194 852223879 680216970 394315073 432768028 653605369 175722681 818393867 116818692 34719589 137349803 649251442 773373581 540491480 101397078 497671021 965235786 690980593 403889813 338948095 141216163 596463504 651037699 210590352 813697377 35246869 925984253 908779752 434451985 281029427 905295285 27336894 359124215 871259389 877197902 94541218 869437100 5201618 745617550 746440858 922668264 480443469 664799087 659415984 845281977 28759949 988162581 605554963 571425563 889713740 832725840 793452189 262217891 908974694 754708039 296539747 157411362 307571697 370353969 704139756 613713059 851624458 696952712 950737090 470092658 299518839 58557270 185525281 787682255 225731706 586899177 212457913 780406074 960444463 808450158 147611985 892404740 451607041 635352439 841447065 106145724 858890377 748393772 345029355 490376245 849828518 4276127 202442496 337688297 437588464 148542618 169276553 533967137 795935544 18998846 334614323 88495417 512209720 746960680 260702625 740585902 530836403 790367755 67530178 230692794 495726477 688909347 188671788 656945479 942427408 420163702 854528816 869983105 416222298 145238019 665034976 855504329 292512932 606862464 864716541 179240745 415555009 257260563 995806029 245766506 453074029 742729620 600749188 525589701 86546921 830554043 675606859 759190525 942917902 551805782 202312400 538921777 281701526 684875266 779013440 2276151 544549926 341063722 51940729 327554462 332995480 677774763 314120495 872213994 359532058 744603934 808937371 584604103 124512828 869494446 273222806 207434660 798586604 152268479 376783457 830044623 767959776 361568697 845269614 954092787 905415918 673284813 331362153 843987940 434223818 36245999 318855123 662457404 849223820 313890458 683931466 594396008 446988123 682618544 843769019 936198751 93161834 463955106 208401798 796865560 329208291 422634631 95070325 186957410 741593837 270788704 232292262 893129463 533243371 875107415 922868442 858927680 462067476 561312618 578319016 396268110 593504324 192973384 225366884 248206552 452850310 85184461 768281394 402666689 555126848 905381848 161333778 832106980 609018891 102737721 51169972 427025279 5559296 696097472 965891071 551730957 133066378 217981637 5886579 604802671 830288158 255993645 420603350 297176152 546912838 268735135 378787457 463939443 218357710 338480631 307352699 586716221 214495697 356640603 388159866 818342503 166206408 653685160 270487451 515088283 6453242 291853287 613588100 991128286 507594941 674256785 386515387 902830 414812607 88696892 547751162 459174847 716339645 86907439 777818187 262908431 827139353 250543122 355368305 506301458 805936474 549951222 379322976 780442457 325858477 633736113 11605202 306351034 884925082 420833489 914518533 734798864 340939971 256249923 802943101 390419214 629979635 344751868 807695005 78010235 450470117 969419752 474300916 780562515 12962239 140330595 738355597 33736910 343281255 385768120 919008259 654083199 709525170 425068290 275295074 1348880 46532996 156328933 524074185 448123589 741884382 157154710 4335542 218260737 351390865 11367965 879770680 52889169 515938313 475412335 53378659 417708559 84956811 681240869 942132352 685093754 18051814 328961222 481480193 512350657 397456379 193678565 118621954 335755269 540916510 414446587 491484846 671661489 998840054 915996541 944419608 434335882 737249416 178780714 887721927 238901235 985937181 31076315 874986841 517123401 207116692 511145575 501680786 790943219 195556161 58108198 384018042 744566206 99758729 561358871 659287311 990649532 527276736 439985854 697401819 614238627 188089512 992081871 165853820 836328049 346416350 974716024 613965816 34921861 32862596 913781983 443836597 981333198 304118041 68668817 183157336 659495337 6766873 772582223 8716073 126223828 162120378 641766132 982421484 69512843 53869404 815018102 299562597 322008977 103778912 714791657 146016111 3561981 102211648 36637246 559312743 85148563 844518809 854616209 476780546 360370179 982065817 683682622 391901053 713740317 466721499 118374682 741493326 190662505 674322541 946367352 97274584 94693614 796302569 306665054 819379279 463337699 728707673 946946431 330931971 612394931 119466404 66401117 524476754 57648362 135547433 429015450 547107981 334559849 230225492 561068454 598414178 932435690 40946574 877572974 496143321 418923541 682020617 762002928 775833318 296512882 581069700 286145385 251064490 698924067 549068970 650517670 880210611 183237041 426197122 767135290 838098109 271627669 701035406 279788223 38853819 268048615 795712939 881402423 515168130 685369838 836744567 142528613 837774170 988806223 388612896 129410446 83722358 564875281 608852749 459289624 379481864 278805042 908552080 13856460 275188300 504299451 208177994 826192409 347186412 884005629 580013972 237528845 961366773 154755185 495188430 672415077 386987705 483015383 806089182 599231578 957308742 288817224 239466287 692804307 587609664 936260470 944953859 631020058 535749677 546720480 807048457 927115871 703569796 340526440 728277522 150668652 152016238 666370675 574647337 290501526 255167220 487904194 743218113 770875142 763598846 285598387 975653476 293643113 864164028 292523161 927471103 716970517 782954769 24461726 36889753 215146400 471914599 727856154 755830583 546820950 548066297 650640515 251802421 429967320 585907307 742727844 668195758 903858739 493293297 405156424 321114783 335080660 495289108 878002858 985535075 284260001 146169511 470354520 413535619 797503515 943950376 131344328 599366 83091055 265391803 741564275 636005206 705730408 413119506 292748116 457132292 356908052 276867790 435131556 277929685 867657337 403055320 452442916 846120487 169531996 149722112 623415007 390768444 153691324 727890943 880390078 431190483 55620601 412139455 909012842 281453275 180875458 86601478 189053373 756734608 806090586 371221140 658949734 642356019 976175566 531745928 47854954 947238242 631301207 835172733 198633529 295519592 244618020 939236679 421135170 841512839 257120157 203225582 854526149 303529690 170625110 267078024 751783471 677775017 347969243 626337793 40028348 153016617 760311632 422638866 606222276 861406357 391777751 414409666 110257612 484425006 411600664 409614889 524506758 868336550 555795025 733723504 205555376 426495039 310218927 350099205 253927926 437137214 447313587 257335305 355794453 221093232 616150175 939972539 353826951 416665817 901846128 697839211 292680417 223842564 21290780 97092871 278864999 661334546 577637802 841299946 748217003 812271007 456343433 136464445 431915317 867383437 549842382 625363172 354799440 668738362 446357275 492114549 246898557 390777143 348628649 666372364 579538165 879529458 380019573 62609106 905048447 266474895 500511890 155122908 442869084 892276510 315625570 788870869 232070826 156211538 704414259 162026145 69572523 574050655 542915767 116144044 940275895 993777004 117755626 32365746 842799612 133182430 325556828 442932051 145867027 608854788 657010814 399528572 314064986 58451430 832973699 804908037 755365564 288668689 54446649 855899015 756181875 579420582 355696456 59163047 158091244 131944137 859315181 308878206 380443880 617732126 262362502 92157003 264217634 903983710 473956420 392645138 341603524 386850084 105043077 107783200 714413441 858818703 528720431 456233245 218687438 991405425 717778973 980964958 882284606 587514979 817426813 442268663 776957105 964712999 380974058 496839058 899009137 354051559 389828953 240864089 942966394 985482645 524883510 986594227 94692720 80061426 683848939 921122626 23574719 683252076 309971971 514883510 802195220 702897708 344173505 349589367 118641610 32909036 5734951 492039965 760387603 107798603 379427720 633699718 230078013 156076267 672064318 27492098 893476294 172916363 458499541 695607373 331965579 726946012 173805046 530269990 692678320 930054534 516233723 150781418 404683 219774554 597161612 789697258 493735612 994271022 710903840 924882697 223718242 600935045 446365857 455564197 271142746 191360440 561753644 238603221 820046923 902358890 609280983 110550467 624943889 597270461 155116211 50181775 679461058 146580756 879790852 518933862 720146636 520998441 138139206 810456577 830124247 525149716 879597777 598609440 755362173 960117054 206818895 783355155 181110005 494331793 868989664 353039760 982400080 389129463 551911475 777081589 763499612 705580786 853512026 937343347 404077748 918716776 365696958 131647049 482836286 991873094 749957104 930368029 332346798 747531315 581180771 993153707 31842243 627934122 461022254 863948395 524379664 541192013 820435184 312705757 307905865 440379155 145006945 649141519 394118995 660600770 278471408 375846254 323524877 989095641 860136353 228752064 608262611 786183940 109337986 664288818 163444144 385896163 158906986 524292384 171291232 183205693 723297608 680079835 558825865 831702898 293705970 131202953 767747982 487305160 509476983 285232904 864522114 129205465 805906002 10223371 440592951 956542582 974362187 330327862 371072147 144016773 921387122 654020774 980501755 806348739 36394913 785355864 109244565 200399796 495325872 44131718 190149175 691134647 617382070 27570384 672291740 516716040 702166370 368046745 640785699 336919034 645267524 130653494 329836388 224418381 838617680 810811395 497679419 761007776 972818329 155573034 387534149 923191471 785426159 514041518 580233112 736253744 774082700 173754424 815606914 823345989 281648427 257173977 645293192 714223734 156512318 993976075 730002786 169509620 297332866 185087636 197933900 466418549 669089332 612558069 131200459 550232522 13711256 657500588 485140401 701823317 914955369 680024534 909215276 238278115 663848682 838381366 564914961 225448611 293901341 225487785 465005273 706984281 525625200 453833063 596849226 851261220 721869394 157889383 299517209 751394751 432478207 112887740 56810699 725661368 150614301 662245106 592586716 824841196 771604515 796763651 309866850 160621914 77007719 990860291 965278412 243449375 438279602 810981459 883507525 514162035 690373809 359772018 932758999 670430820 510362974 974703827 47123651 655505577 735007580 933657634 17300717 533569549 394654202 190932100 741889609 397641184 422490241 394414736 536340773 466036150 682523715 362803609 130792879 614304293 839639335 743065035 308430058 264095346 873864638 59051872 636677539 938475515 192070625 113664818 95692876 534353290 10203422 848269006 385058707 557836920 800610482 159210061 610850268 808192196 99093060 174007796 124656842 661605622 524649094 838896911 805328174 624897593 38293640 767787203 567112217 202161495 902839105 267071063 308979090 967694449 773555613 177819265 594199698 421304863 340650897 493315187 747916467 715737795 334894304 136524237 569060014 450168508 139642828 513862468 584464383 824031017 931325621 83851420 12377265 868215420 755274403 826439412 287193487 959022732 27497609 759447365 195056975 345823413 230467330 506604941 944259529 455395784 789278445 494003193 107467724 376634250 9172647 328794051 748645353 970004568 41594309 288524693 449736157 122119110 967933754 111089035 672228022 235748716 759862195 363756119 515942169 411751079 978292413 12345962 869998492 25793865 826864569 710139421 458030441 399807892 359231609 916103734 664197134 498316220 154369166 811891893 969222691 933344102 254933817 559697326 373152678 894228459 964840140 507836462 894989093 437833539 731044563 11405235 876166725 838188820 937844600 93690068 165128498 377480175 973251573 194048787 881285881 346074258 800868481 910830453 813222790 923796932 641772884 527489061 986554819 762728150 452110662 210355467 863127467 898500912 518987839 185908895 744851421 413393552 658782899 351206737 548989702 751798841 66096381 171966593 809537347 220245001 652499112 459330892 942456699 443798436 226101513 669371086 438837035 734270617 620954194 465506463 521433086 354687316 427168497 939454289 240446889 774664138 830533572 395997497 441264789 297287007 590447947 149280539 392895552 213111432 139840340 919508765 261807734 372472455 227422804 517292184 352373844 457094284 117512185 496027951 799342810 25195040 989335533 804252599 274499622 33491356 90812604 782156052 27619297 856544689 884635594 680142155 614243416 258002151 616316238 503281191 471198349 213402744 644270253 947446019 677385529 805093705 213234151 241187735 837463247 974653045 958401526 957626982 586371891 150290436 62318591 730632406 926714711 850552595 309168048 722464 454788543 316292364 337703452 767860791 362205654 128060014 376029837 93192675 260521885 885741636 606691185 940679239 731930723 673556774 526934744 286452781 688110385 802993374 844907781 632018472 96082909 322324794 993799048 69864322 119432155 654419499 550697403 836075619 920805916 315705546 139436963 709461544 455840633 649560591 992264226 600502732 702730404 150328602 176746031 342218545 926932701 206691365 459805929 839927820 816904063 669590486 610007527 562371100 493250443 564031595 531381807 727692875 151080512 630181905 658050197 821926770 729489354 530163770 31542463 563021488 144733802 923887905 69664815 546681276 227696574 658196081 224071464 346774445 756084261 998068108 462124346 416325942 874553769 544107124 562727249 561650391 65106867 695024651 796174180 612422418 10239135 816787727 162856790 393321991 575501811 594877624 826614868 445396738 522732894 839108745 587981104 490028328 121945164 615410041 8165101 124402880 971458144 241448399 808971828 4747027 39567131 359444270 796937943 648828392 886198516 374549978 709415258 623310563 288382546 331724885 2688674 853291476 53196821 968432087 741808779 551730198 827397977 407001624 821427751 776050639 782376362 273764861 417627671 518405925 500800081 43171947 180890399 677736777 477144293 779496893 190109033 767162575 245742791 691498786 788326661 219367189 354428373 435170261 862940658 176817547 188129444 665116689 18838887 135903972 994977015 268031572 102983969 943904339 252235992 230822627 505997365 636250512 399784441 945204117 23402430 384630324 307985725 580124926 498818742 872186383 301460949 861141110 39496225 686836277 216597898 997030781 154923705 832326751 743822635 822347888 151406255 615378644 38940186 265733889 303482490 139281526 157654211 379639761 548451658 556648827 699640365 980800348 594872470 215218989 977748230 290760282 605663770 296960824 879483512 255157975 965473923 526057794 797760517 706569506 561355778 44462542 131610135 372945055 570276594 525350244 14787898 270576149 255716087 764728622 846535536 114041725 135921671 217221494 828090834 551558312 7670922 121404249 128966930 985003063 912642386 239900403 47643604 309700796 411853193 467812425 721599038 764743889 976919556 582789914 575585249 556436888 133729236 736757027 333910981 844231805 594334997 285459937 947841314 325815213 303967293 917298526 912836970 899020059 985751729 29992934 404304730 677840163 507765918 603002030 414752268 318577795 546704177 111442536 468830477 286258741 353470952 385619070 24675622 411515196 906855867 284943495 290409609 891895089 895537540 345295448 999768354 108822167 35703885 711944646 966172079 784594459 769224762 633500873 760476892 664809434 777357660 596699173 781964599 150782326 556059018 245157603 511861886 927587676 598145020 117772439 887499607 222720686 497786982 160074465 506790110 282014622 670070525 532144749 37926588 382422292 383362585 136141810 2135124 574458356 749176072 94699234 67183458 24330539 415064076 395690642 234613990 632700474 255762030 711399375 604384305 566149494 116467589 917678407 861111684 48310028 347154703 378428142 572640585 193251849 119612640 434624389 3903607 59869699 20877625 739236647 12627224 424869292 515297451 257190871 649004489 548560513 954768426 190922849 74544908 771010233 610314050 278205224 322682295 253116722 306993554 545050253 410783426 200600844 374651534 708105689 119815760 584029699 589914429 797411143 480019629 596570854 308816949 410585483 828581706 650554983 993560331 256908805 941372426 717947304 979961485 646692193 251883124 495802856 838964984 586972096 177664512 867550235 460484126 690865573 215278737 358419958 723315052 946846955 350379733 405631256 965065474 454645654 208101752 769010058 209516471 127609977 384212754 447939282 439568084 349282514 666814846 407337736 217276294 106863000 178915223 591513711 748027130 785395097 941824889 23136986 392842162 72308549 269960125 353679043 596765638 211359379 306991286 109652614 586830217 800905351 731675905 716219831 367372513 95842607 630717388 235756683 27922405 674558260 759404017 737096774 695735526 887499405 677742736 242109111 518633093 682118147 906697956 467430633 73841330 2162996 451784733 130309236 887837229 29527820 476647913 229458182 578372058 755955278 817475863 181564186 442598322 784240890 391930579 676440950 496459026 811339166 337238122 552334153 977302788 693836195 268935011 286485941 473880810 763045016 172910529 827232089 873966260 904261124 370789425 458614530 14086753 620304330 407418033 845102257 978800547 267113286 5625395 195113014 472545023 128100101 193710391 959802625 259519480 861386204 968684836 842602303 923341152 91000438 643431548 20736970 640684822 716957733 714572895 138548976 437356221 43602753 936184219 23042299 126532358 969892065 7388720 50120099 775226435 901145948 151857307 201362203 112242469 97732572 162891025 892836224 69293303 78073136 773049593 997020858 117819711 791579504 855896531 699797472 301773638 885426529 300619773 638391649 489388954 762424231 274628421 381944750 848902589 530339186 633273025 124660518 258116498 587757983 55914491 24909839 340733388 944893380 452054970 56049068 468974438 16420510 874833000 875888485 533196411 864640160 487468730 66081274 951603826 616255527 561669146 597924374 669999372 652899569 580299816 42585182 625124990 297873201 727218719 772721041 208700970 115215008 209628750 153169433 503655197 991171166 464076845 151752423 179285605 282111010 29119063 993701086 605116717 773643430 607681614 697891446 619950425 604193139 98868780 532333225 902526835 468492242 777859834 839184389 399144302 113365541 743402416 199947593 712724002 106732287 552261747 115945915 809490449 202316372 563354528 362868499 745172205 633889244 222097664 169237867 44719925 274628534 20307202 503609899 607716131 57864577 336269991 919725597 497964678 558502578 867857407 721330130 445570678 852484205 60970164 16598191 389179389 28914548 640266235 874405870 695579373 166017692 315807179 727708582 138750905 952180199 622470394 858599749 741294076 430722478 912906836 811658273 616087303 286171578 430605783 284169948 21260384 620219992 783965089 979596188 853164980 273007958 42110181 915320609 736909102 804895533 800782675 401876624 465499802 247919296 396048940 115264301 316339324 919374239 866752114 682305335 727114138 808123283 937734297 324545157 470345696 313117111 451514609 390773877 257986955 962930670 524723696 425029281 30833872 339179042 687374655 531369110 190256002 543623899 728732450 587800922 354185270 20669590 389674312 318170962 497645788 964448229 159589137 277544247 391550873 809202294 888837195 668070225 895778514 174137089 800827825 237705968 440031109 372943093 70539425 551188749 893046455 27375209 805089565 629916262 443414621 197575602 766956877 137285353 583620656 632633542 318858899 143841193 458728103 592513239 476027103 849582036 421302453 473343748 248365388 848479035 72832525 819574897 175029681 340305768 523032092 833711328 801295200 438129447 334952751 780679616 314963783 165691021 636009018 805453073 954524811 762746988 646975343 186682104 708233675 196666896 137650465 478154681 590755488 692107693 901065680 715417198 148484516 498796043 769575506 244665011 264084080 227359750 46553879 589552310 905871001 659297764 824028820 830646618 111381252 650425600 632893762 535941776 768067443 388444756 73407067 893241760 384565409 419126888 389692627 5793465 245746489 787414018 770409955 337579224 688707737 743180094 424200673 754024786 462814959 280272924 89124442 343169600 456107080 402849013 303965658 913098498 813121015 262631926 756991421 503759911 161473021 39022165 997192586 824187815 368131426 945951883 338786108 349936211 957673354 456934124 794905526 260750746 740311978 856538550 475135 443359907 788794717 639990821 741282975 480210210 891091071 218793049 336641270 844279381 114548794 779503885 812023785 142671561 154702863 329325673 642685523 807668416 559589878 75752562 845093099 998838449 573868804 68767558 843734830 308316117 360706773 380253905 696695711 905648942 35061676 319880861 281359447 923968713 893918041 306542224 377901119 115855587 809312243 622751478 254626964 339717041 405323349 11839090 835094971 816734356 658928210 202209157 937603017 978871731 850642464 729451875 24094757 232571077 744600741 750790865 610047482 317435309 947591539 737709279 803851528 495836544 361755292 386388806 304667978 218511111 844840063 685677331 77371076 13251890 309903958 706210126 262260665 244235098 418013080 197339227 161225124 237232435 700878040 220738989 883686540 989656061 856408448 764604079 702197037 526308278 125035699 741209650 567092464 78045008 848934764 911634160 327175789 835360437 340006296 979723126 854756155 224256722 550691853 905191997 674772557 137676405 765379709 158687113 873670768 105526155 647242519 71000847 608076848 727212915 635796888 395822823 132608991 29497314 683094172 525740423 218028856 916022047 372824683 45965867 658677501 948029493 194717855 589347073 861329630 38101365 129130249 458130319 763235108 278892670 525926665 132042819 782352824 193964923 721263771 533143523 142734277 793735674 533666087 958861529 54127423 800353180 778367132 649130781 321482465 318534975 197156329 637003026 25033129 745850268 101977553 959318485 250153662 247406172 102116807 261312412 711400028 256594161 350588648 858026402 363152831 30112037 990685166 115697124 853506196 2375394 751888305 952140357 498731087 963669321 896629909 33650495 358905040 309106987 66394965 222401108 541110983 610850470 963103743 183855654 612929313 669293830 263814939 388612339 996463091 83598251 618578768 905994683 260138799 735099097 746833925 889355032 608931563 658394104 131202456 236675900 677825813 666900850 225360663 105021321 613321395 166837734 701806697 894279153 685573935 476012284 914386494 78297462 710655813 807996249 346271357 303643586 204019103 356571647 591539877 793784835 122030313 195474718 515841510 326642648 40054177 112637546 680043316 857236339 690457250 20016557 200913884 313072799 835736323 91247166 272509752 361703214 54908123 461537509 684088997 93037131 926576811 998200038 471364902 907010603 985302017 217059345 261409123 764002278 733549750 484270180 514926076 790013965 487218633 892959625 862017782 561117715 829743457 241697166 980367169 347154520 74867719 187757129 528693600 916965752 22420720 404359692 641706270 7948784 429046794 643967599 198083804 494196306 535945738 906773340 550073915 859976647 220590750 39139986 576423491 638132630 346807219 639409554 266816170 579629971 982825781 845658059 689008848 491302331 946907362 648047301 903500464 672151116 344068547 262178787 26251728 421663931 580447480 351913460 345768646 38803890 721888600 845908626 135942450 933347983 257216902 809072890 945786630 58516530 324274331 279059902 136146434 866542737 627693409 602313497 163311631 517885697 53267268 732150000 334612102 246884249 412397014 379747842 69564652 444771468 75164378 115969120 54946873 929758924 120265350 639660970 837341656 973199107 672612744 428935368 566909000 669409442 160319657 458110228 340288447 733743468 231223314 787750196 217905917 169548443 74366113 289158441 14993547 636138220 186404897 218742022 733862307 911349818 962170438 18976296 984639655 564516191 901716452 429392547 541896725 658899869 122170989 342547912 936134990 764917662 186068489 449281805 456853808 223603268 160846167 251078228 62177509 746213966 499678571 379393016 56844897 702555500 806128286 503775887 844506538 18924564 137193434 839604224 226938559 713743857 416600896 413615767 580750422 428374318 620672218 751932682 356355242 777945077 678869865 522010144 756955802 335826813 911364163 598026940 147616769 608929846 160017115 555730343 278767211 658673290 897114081 268338111 437386578 898237153 469775481 776469441 43111653 194618043 208795375 173261628 786220102 114941840 568129173 773745352 730225599 29667565 508327295 684594246 235295315 43443813 76386927 497570542 63486069 465259397 181631431 549836912 223375723 455321326 57213058 947770427 517897014 146695118 355768188 238633838 173060394 317236011 918232679 129290927 908625690 619753826 605747133 243423091 518151235 565601777 434837550 821292012 498193265 697433480 521379447 237713466 185226230 627423876 502568065 444203127 276573818 81864664 379297820 562261101 507429003 852377445 489939994 927550050 587996686 676723933 96707611 754454000 733500256 425733310 856772937 257024444 935496369 786715480 310167277 517850343 793091691 396009194 63569530 290380924 900806485 16328685 849300660 773605298 800406182 333946307 577551792 981405310 133716766 800660191 844367903 983236279 542296506 363327873 451605175 189488633 72762207 916245468 317770966 465972084 153255416 984672875 953220234 629695741 275350624 105863477 30804430 1400867 730059779 679866912 649763425 465970634 222069222 53104893 421086108 463373707 646251133 874252305 576963532 422690485 169766980 565105218 139828482 140674659 613381161 818380757 430826744 794686655 81200321 790204492 409654731 691766658 357592261 171776973 187779627 935307157 223450832 295664132 155861934 931404577 799470147 973550853 343329830 611782238 840909292 464626825 127941152 459162198 823459169 382170743 50692087 71534708 43489353 953780427 207573930 224296028 885816605 202703506 40015139 766215727 727662190 931024936 586358789 791355922 199956185 782932564 726628904 806082614 451955282 738087759 756992782 453577858 175986513 948323677 234475864 203523208 201979900 986866197 640582452 647930868 688801025 826952375 674180929 163583255 603693190 744112124 156624856 599151128 436255532 609859574 387144734 241544821 846807931 413401180 4053606 794180954 322131325 742122349 736568617 758495329 894877612 961567155 932923025 169778208 828151844 346793439 945467023 959994882 446532849 527150651 696833811 285851055 800784663 92309602 366051516 122735125 361172144 213481949 840511266 537683584 891127179 152499068 52176038 101447383 972287790 782120748 398016428 525057894 885864183 571570142 196082070 147769674 835378939 716335719 646749280 758205743 987586205 186838312 91722661 554884716 547901477 907601246 455179566 193911281 384573175 109817248 196689220 133254600 94273825 544059728 85121200 536710578 289301795 763121770 883231366 174353455 977735213 855467801 448727843 631082676 489103469 790961722 81651554 188285561 801186084 228403020 107200241 704284267 11092443 728087279 747328503 278829201 942586998 240023221 75721075 768926592 577239213 409880895 308918190 425229815 285614999 325023813 954850512 208274925 556143769 590874794 750023226 5514718 483328657 380747207 704793675 474308152 638171413 278077030 435603297 433068711 727200953 650911024 246340738 839298798 305715365 687437608 91543944 65099075 115687039 171175877 592355660 326707368 461886303 616039780 278638750 667153453 972946751 367280162 833639655 192580509 121600000 56538889 632248249 540287767 690104947 326718631 995279922 640758552 830967380 926846056 796683144 48756528 869295556 179710442 775010321 57322078 570759798 168326072 699500661 814204647 209532885 313415297 898465171 654353214 493901460 784957452 962950039 737800316 362736886 154503049 745743854 134673490 797487595 722948869 859804332 463409722 253551150 118640490 434340825 771442099 609270441 311373224 232953609 6797346 44181255 60312792 322087793 25991631 473143805 94098070 417558830 27716688 873457816 397967287 259580089 687015943 568966866 18156595 900615471 157894391 949019198 80823574 228337332 545588371 110465294 517385498 582487248 688089952 773019841 742030275 110743720 765377783 426296088 915766327 540615047 185217319 461086818 957518109 735981087 833842752 862452309 24590363 535704038 210311101 774988839 342086176 724867901 149899082 856484146 902272451 234943177 160693999 949198230 10859844 339859663 976116799 708783870 344797562 488038506 221293595 719744093 742715735 863820482 136644369 563517663 420806985 459062998 130025611 571360599 812507559 197733288 1552439 797812763 638592466 305747952 979628623 955295057 648611728 854712036 981478703 449356709 847635477 442538239 612764014 302617185 685337781 332508351 806461763 629476488 15598309 170457271 333536728 969521758 424213511 389922725 115650132 627842749 201437762 933077609 428072732 17018918 785210061 300385417 302902025 993070362 687004449 263948101 202896858 379312794 48433946 80435569 811095860 960420039 870325091 637692801 329132494 74447636 508140808 784208203 274864695 978455496 133418557 710112726 386453928 713858757 440088948 862096975 656836107 927001422 865440993 825389679 88240308 297715950 949715429 320864250 150979559 234056648 18984655 112363902 563180154 874502457 593464766 823751238 869844890 471394646 293778260 417887490 312845605 189034000 458518008 601773737 895000317 386689638 822401394 2081298 751830427 654416682 990095399 787241705 689009510 463369831 800858104 767637416 466176083 223720929 771022025 136465091 681912728 308128076 413836748 188559899 499326861 139666937 395181928 767212644 336389921 665887829 718363952 249797946 722980585 762425160 23150062 837635445 992683336 386897643 29059714 215409887 715761860 197482132 966940555 479204485 677870679 642303934 382238867 183571996 666098705 350734631 708949069 597438900 609485736 272162097 903079315 280955704 830361860 386842084 732091778 207396302 122906699 170621026 532681312 450314302 468607549 985396810 288043240 335747625 330283228 373468724 335165447 194962930 218598622 791302392 78346997 15754501 652977524 124746106 930077240 169190073 972729802 753434383 978880876 64163845 62493237 432608547 599988719 964061453 570286929 46763481 57867734 60902453 822896042 637020306 383443180 300721759 652145884 172059573 418009259 70997474 664782909 195776768 91274975 457524010 74392006 806669426 627719793 889628699 679299868 389303017 69260473 154413162 562751250 681910384 305151651 172422253 643269751 117230691 818503282 70640914 708923576 199846317 387083214 421409556 224911328 819989612 554967919 429905058 363456755 865016278 974196783 586084693 745003533 375392207 416536455 198052405 192534182 581581229 793231335 478048948 847906359 577269406 538680702 323330628 103629293 300286347 930187164 811694505 316912901 160738454 12321698 478525335 468863670 983111363 560485296 642752051 409925601 493365419 166325834 926563197 314289492 625846161 831830243 238731900 741675272 203450018 482675010 464415009 360932296 498140121 158029089 832709933 578225742 348745668 848222800 227510560 306580265 164059044 549687630 846403727 769495082 449495676 375888919 155246457 729060200 485465083 771787832 738122469 807221156 673114959 295611625 712888311 472872520 92068282 733973295 794720809 556075611 849352065 869587879 342282258 745969205 995357230 701107939 5385621 154725694 941064211 178347547 490007560 395506220 611358367 14426531 488097527 586690788 785042251 612798667 871107849 696026468 681224814 700916826 677015024 100808271 33941303 208167413 825643000 999507214 253826765 490087656 473323053 530576127 538814860 419836582 641061052 743946882 129021965 503442765 596090376 341765001 416509433 448870203 286609851 659899318 292516525 615282242 697584954 912936157 118573033 566820403 3206538 866935744 497333458 650460854 463274031 187826506 826599908 378639218 915210557 595158348 128375792 677896716 643767871 95604269 929312813 387021928 635698952 356671455 386323581 673801532 498063843 663299365 894802220 244592441 501993365 802898787 588495824 39019359 833147749 313875755 90184691 229156688 46164169 400424307 259269706 292938057 151138993 452988202 478432417 97216219 800308845 298110604 538428459 988886900 677608114 921424074 953721628 588292101 307294676 785215144 510088310 331899753 753848009 667040182 466232394 875185145 857704218 115801056 313145049 381481265 10519672 4208296 460955555 271882434 27380861 555494455 120627749 796762945 31078079 957384665 782074038 958434872 866354467 140850744 940369594 802261196 554429063 465601027 23135690 281619195 5359646 327951650 118543240 530577227 393671191 343079906 932531982 44241829 512276997 962772399 442429193 842793825 575319179 784940050 87195322 405270758 273354754 385086375 79074331 58873185 151672499 986025114 961461806 142744418 911145553 700881434 246923314 764078110 766572816 851752232 119701895 149909392 42261747 114056595 26295562 103209059 514031453 345219035 289386952 865604267 874231609 970783232 881257731 767505003 961119871 358910709 59208095 429248243 703304764 70807183 250361315 843197470 584851603 904245852 197363077 322694836 356705977 504964527 325618982 526760772 253732497 535519454 69954999 174161358 318312237 554739286 976387540 456466564 608321307 958098685 893473873 13001399 49838005 883306153 182776115 86924225 496905838 872028346 634963124 981972087 200111025 608277812 246763975 390162980 515664388 436162071 821189946 919954612 31388622 582196007 272438446 371963976 793384516 340381134 532692282 645800207 940712574 733742292 400126694 299622404 560934149 562349014 235367528 919419506 36545054 36369647 876699102 587846208 610478796 459496275 319975275 577592458 642663105 816288061 396090318 23406086 536756092 630408560 325837382 458360099 133017479 260186592 52639446 583801641 108210122 191566510 446805342 615035547 878350456 78484355 894582884 757292248 954660888 519600113 542193534 622969982 524563525 521582462 723478783 310087044 151504336 254297765 404401309 378884306 246954195 169075105 911519099 593439538 572071935 3674352 810830588 526736252 282822355 287410372 579899752 348788188 434390186 218150103 761882182 788825655 128554754 622719834 477302720 792042665 849296188 750154831 962075205 192490856 704315722 37746006 183600071 638251810 820901383 799004782 854709156 818183434 974671141 819172440 106377869 172095785 846250539 852560935 421214148 38293027 299094687 279028337 615688030 784709053 604329205 997956403 632468317 256310528 691675402 562786152 159698552 644605910 224239464 891933631 120394643 520996704 986268463 728748227 73603892 570502362 90614747 593712540 552509068 155509217 379826165 228084176 73455792 999715131 922448303 449649870 828122342 261275955 890945968 277363158 686386798 893049897 555519065 756769273 26156653 499794460 767318371 85432329 846385369 550793879 882683761 590203374 837231085 490658561 380634667 852148420 424386714 357227553 968332665 166575090 50284456 908819176 363361479 604925536 172176131 860201424 329243993 552559309 791120402 846399905 9775481 819652177 357469570 649218587 308231247 929099250 798780632 449281495 992297645 222467894 15567718 395407940 605963996 757113344 670266511 175508567 870866181 619123509 238542967 259240464 963388554 948691296 308903014 411920058 527720920 651331889 205362714 802901450 802273134 234409630 909859336 919822903 407705513 822881227 361992264 449664461 294823970 679422071 49224595 40852407 434172365 180690331 271303443 419727687 877326723 162115294 369887114 791937796 859126514 670803828 186653204 790013281 968291393 181612276 763437930 677386233 184103732 64918387 601261491 108535864 685058857 879603817 702008031 280624966 206308401 561179308 428726452 795067604 51776199 302732090 421485961 98369357 282128766 819763456 597091438 340362664 95136266 768207386 879021230 416906723 919858525 65898723 571372352 22106772 8955611 326798902 739805365 991067521 267905417 363552455 839996095 102168520 638389046 305508954 693799590 380345790 43557167 994171050 398283912 793302051 193891126 669590863 62307083 190421649 13661793 759101288 92841763 119141393 384361452 526229799 844768483 655480104 394064715 192786514 788270979 849110858 285492904 713787895 614389250 25362608 260774430 176968957 269756308 575532828 660992207 432058433 303879104 974129557 333828143 100514062 766289220 722431692 455126621 87359039 961664277 70469704 844855922 905816565 109045641 495795944 660860941 488126885 899222831 947195229 444379814 320952093 374936879 559267587 20523556 891553477 322255979 194070584 386823616 527667428 818443008 62215566 636222177 767349048 662708821 833062764 89337437 785945311 895046029 509608581 396790464 851172629 939090654 490539372 321789889 938046885 635519603 300822257 926933051 100926728 164464700 432656811 84893063 666890839 450437978 423659279 273706483 833733549 262397814 368193915 3232817 477959982 50495320 201815323 455039012 467168705 27999079 331893619 910787608 360416763 611813769 171947753 828523185 485744252 477214345 311703937 528173619 321868854 596423390 390666333 894008477 208612818 824842196 378165946 672868399 418069735 947895863 235233274 814678303 350073721 347882392 926437936 325633629 511674085 64116566 514911348 14198446 184530747 851104158 316463869 350194649 334076026 900952556 271416660 848947969 291000232 705222910 271776794 422220816 966429380 956957847 614328262 437324219 107460523 587932958 351006672 282530391 402609285 807770513 234090938 758348634 66347598 938738169 596336098 123015911 798422934 459975551 782933324 766891477 848265701 163332226 565400238 912847213 971853103 208353233 50682714 308964893 812065861 644992225 141912836 557221219 231772944 351619864 306263633 515092385 198592189 375509583 229372039 702648483 962886627 366519794 263873246 161538116 743603658 963409049 509756679 750068619 700333705 734951447 64790807 843587857 729010239 371265825 434692183 715845244 113553307 22743677 26605202 569307555 264595175 763687843 287415220 321051931 906712547 784887673 233483622 166900351 527886514 935342377 787338647 776748910 362121375 611081593 456520532 381135478 541247338 809385518 578373118 635780183 954744452 219536639 820641015 680447888 818961363 961624227 985467507 62636866 235306989 964522671 670535142 600103204 747351852 365118296 375875982 757269856 701178034 421384119 841429369 820131864 829246066 351397431 192860836 297047880 8020261 92305525 725687915 781990024 654292699 949565864 409307371 507156582 268701092 471400511 429001661 616306144 851195471 865369377 294428504 839037278 787307608 872991565 491709711 591218289 856967934 472430621 730631447 764004957 247361567 749881220 937802105 899946350 828994794 536242635 813769718 33225989 576353073 435422345 982175585 25624120 891703552 370849186 588974615 471493724 397152682 642379330 722282184 532912542 531800352 215104014 810202673 798806669 545333326 46133232 377368472 469838448 477006190 530862668 554584754 831520451 706027931 422431777 577794025 437907195 18918813 653353097 670780393 756662527 653569229 551260469 572592013 142902195 955936200 472418399 525319397 365316856 75511824 648510298 742977810 364921835 243534802 798297461 135357770 56524313 867791996 153614779 219855304 544607633 676249640 600353894 203416412 412796154 317167998 828069000 303516024 301624956 590503037 955313382 136924139 330047317 655924849 262549591 741984949 555757585 623761894 805611233 114483868 876033258 121694173 255565856 826954009 16670625 2057286 626425836 874603682 666374705 272146979 720229313 517359383 242366199 347364717 505457307 257187355 915451726 21513808 615677062 891913467 753309923 886286465 932435034 379200655 143257760 534513118 965991797 594424437 500027607 227845889 111193343 607188691 76695525 89070356 388693973 607627191 950625054 109736008 808709658 79626901 419760835 437017074 86336711 370074204 653256060 819569516 65424160 504113731 553204483 769037720 619687153 837103552 560815701 219892862 978582097 492317078 832810101 393503608 762992276 478624134 457609640 764018431 147676277 408509440 945534783 202789644 898896576 954836108 250618789 261499930 149621558 148947142 290263500 101946082 884442204 249061527 913299832 626135335 95225211 574770995 816288208 84418916 478319083 541975710 24785608 614270503 617741965 430193875 603288742 354879873 562560911 972964470 543147840 400575118 321055307 402305593 7422112 17980466 960616943 58751356 343761318 887286372 732787660 681278901 285654622 269001828 759191747 597455630 692230931 867903775 531387759 379507996 355206539 744849021 212432445 269506227 842709270 60036296 769485618 45895293 72052847 631883050 836374507 742380081 897828721 19124379 961610893 313966689 428404626 80776894 667030829 678598613 762004681 19697872 610847315 746065470 347798072 67230594 327684766 263967053 421324457 600325893 421220314 947120971 843812377 354133996 643116853 676690542 161466941 416070321 182522283 103758354 166572586 390067435 444892865 238092270 216195253 332583017 614205736 979624240 857126577 289417853 113560986 625562584 441118158 601548403 83802849 805750578 878099915 83119093 505152313 180852272 961049327 278044479 479282486 679040602 564724542 514678670 347590399 586256165 897886994 487433668 986445644 1445605 512693543 863810702 523799427 945984621 348838005 592038455 645850635 166053236 559671600 141790460 803292832 500022748 69234709 402673000 460005329 381477510 624259023 575823306 313759824 753201769 934631700 777511502 935407263 957119226 554299668 273089421 810155868 650741727 863531292 821728754 555320839 628973052 453492527 715635492 194710025 827582609 107630675 298594274 402611797 416701351 55553302 930069355 692401989 747922054 193924821 772786931 637908034 730055123 729033451 233322756 371450700 340154212 562330307 39309710 199581933 688118413 288304439 559341682 189207840 430702494 621726073 965279653 119031417 940246152 757969782 831500529 284755615 368490619 560483447 313893810 660721642 722514750 322481512 569891470 953623748 569681639 443464879 959516501 650320328 708583216 436945071 718938634 86280875 717944686 887522904 323660286 226110941 631462469 245975058 568828186 8144473 845679877 286966239 351550241 975585698 329993639 342067499 55155633 898314239 29631214 439524019 78581507 377167997 937779296 28799410 583423790 557714429 608184080 447646803 689820412 908383905 263569754 253656230 324152819 974795399 603628218 383647793 241847648 342553954 174557922 326583455 363269542 47059702 805977857 497375344 308817900 101928679 373592690 205391997 662865677 180490573 983729151 334440539 800809966 624869515 435450975 552467130 755793629 684580714 453424309 838238754 186396643 774950373 145870722 79449896 302117699 208989879 547023159 893463403 274843156 288234402 149063684 589886950 387864237 884947060 500416777 417060370 420622992 109731943 495518646 600166793 441090213 921330480 878665037 352470601 314809694 584454780 157829730 516890296 86501696 588755166 217806645 614933545 24884868 649133451 551700800 910372284 337233269 232095880 152071569 210980653 966267063 695756065 147989683 894280155 933717310 87095679 953591401 749422211 679757437 710429367 187707080 894566906 831755777 579181477 141417351 642684705 582780663 413498313 759075621 309716206 923416020 217652074 953908270 580262896 736076535 849257959 172166698 56619446 568126886 159521573 407610116 890783959 197020925 86376608 578212149 884911354 566024374 780105369 517708607 711579946 204703857 700257998 244317356 966380995 160967535 351129310 355056132 931281355 297091425 285577434 750197262 900325726 352270838 69837351 574004259 776760714 93604045 351490779 87524199 174306323 311742329 414736202 37555533 777002809 98576190 314113778 279503225 975383822 593393752 205974244 453442905 687192956 688594730 897196556 372978894 942183075 8452214 194170814 320428260 763910059 440944562 861082161 550019086 418286475 472771744 397028646 958785729 86589749 560859529 980803701 341036481 732666650 446444762 248239527 37443199 16093076 38900562 528234546 625966349 917966144 554333409 113020164 370803878 63782031 908130369 776425664 847794926 697003925 424915587 787487866 273358443 395558483 509757137 827274128 115227214 463368719 53209500 467237741 177971315 99459814 471894756 890521636 749437474 457784826 757923868 687545830 164326758 228446650 574106476 581883387 462695647 125982769 341781094 401568347 852251247 915826800 584880537 762381612 405566361 648359865 416371271 228328095 176023695 744313466 511372336 270503395 619598742 321110201 272323561 65325402 896208012 420585596 366593962 967407894 341979854 176321431 17725669 93860462 242587190 842612110 829679171 421621021 514303803 127611507 400655758 330848339 203980704 690945586 310777211 768915779 470285691 203206302 307826350 82960001 232163804 77830899 860946704 312325885 715976401 687595256 214594855 726601778 488381171 674873832 97073316 269212801 975357544 134199024 622734799 552773058 888512324 336090863 480604998 106669179 294080843 505806456 596594269 222099686 694266499 237727901 698742865 732647348 295205815 262991187 830557096 717239693 495539619 128840398 740357328 983444318 804269750 43049590 773850377 329665743 25693036 838625558 64349057 662394670 906098360 888741470 615612560 719279351 193941384 789268609 777225406 777646274 581928869 241961759 137946513 465428222 240876934 10311898 356615901 213711490 572990019 242837978 157495699 105557683 28131509 594226370 173182756 746082565 618382142 582231846 897640330 11592285 466203498 252299821 595888747 895347570 190441453 95606749 635887112 219640923 941992982 474319282 228483385 356295903 904325818 974094572 465335291 775939230 502788229 693310819 877504173 906815674 552294588 696557412 804405876 53972058 843613521 74331790 701717199 346482404 254673171 253020489 280579735 690772860 430308194 243305153 595474575 434308236 754472855 846369595 79774838 530264738 839812702 349407857 205003462 537410829 158217843 46332860 286753660 840135127 453209499 129702615 539196084 142928882 690074609 478415598 653084015 917933608 998805939 465595321 139714632 42349863 427383946 360630685 620774227 948520512 107641265 836215879 51196305 345260456 524481337 783202102 729912580 440089606 939547608 786213718 966186630 382925396 203314966 674058665 791107461 99204389 998794457 770415087 533571630 63799199 327853857 812988249 87202537 817444860 490724364 254337121 628522717 792104116 533596915 56609743 507438451 587117929 920917925 265469644 846659602 414458804 615554913 247472649 278236662 910251887 997172806 843712000 523506001 363888248 203419049 855362719 512771570 102772800 757164509 362716986 591735907 135557950 896875307 83570309 311569675 616508688 529506092 732710479 329871289 260359035 356753456 850233041 11893877 860221344 58173794 81049110 522749175 448175637 654133130 334816159 85074010 163710074 347991643 354891762 353607164 593887575 951021904 233760993 231722072 717314482 479386131 521437945 318607711 261840108 915681019 941877303 175158556 142605543 977142022 505436654 328698008 909656475 593772812 804148743 843729669 584521343 411992282 96983552 796671211 209141773 670927586 699844106 794865058 506761481 869963119 459588789 415857794 699623262 271686132 134966035 213140731 74333746 276213021 74619967 471254610 129233783 346169167 938350936 547916841 402958608 408146017 892776788 37117587 245727266 228435925 762507276 69615555 666850426 181673487 656253265 915409 280519714 431397477 737975035 605698949 545915472 397474107 580309515 207804465 217934027 44736177 857421952 91559159 310017490 610576727 72778158 552926076 582538995 222366855 344363302 986869708 343955102 827385475 831427075 577595640 532984042 766973044 512673038 76634504 864644252 347556118 299937047 199288765 666934151 623137450 187823260 117933568 769575864 890155408 329981167 331749554 896878855 715938381 10772455 44604921 31476348 236967937 903600493 408962698 497436787 901665791 659553767 288896695 615775575 412841657 769626151 28447556 393861432 273578014 754263764 435778532 812339445 692568879 668048979 440522258 887428373 806732941 235940721 377836428 225726630 88840738 943826044 137840750 861123288 338646191 528715672 385844697 736221438 890352301 550462291 889495066 143452507 52672314 878846766 771390137 132647329 979453608 510026881 794102070 340141428 924178000 692301148 758408723 472357874 692049392 828160506 171152878 801132243 518761814 784704802 501775519 545985587 924823736 419338382 385108236 418815576 715367 269851150 555000525 15209455 495453945 633176582 924753975 590123611 652994092 908345119 472352749 517482325 223300668 972144488 286624319 619980367 39461698 479378039 959764864 906434201 45697050 776556498 725598773 496207706 280833210 628824740 165352353 101093169 482091171 405798265 471486491 703958033 194730133 152858564 91202466 884159111 464063649 688130994 897015596 583892362 711245762 203167385 790751617 802103408 253656512 334585075 308389558 165465230 439027194 415007349 548038994 696461896 811839607 917840723 269566808 681278444 874549223 266754436 389288410 876206939 762255912 430846641 573546273 47890045 223832951 299769171 693041123 819000196 306009611 592806859 880822403 851393574 791871453 71819376 304957896 134889445 456934718 728718089 384090433 487750887 131401222 300488910 748031589 343099727 789307550 65978128 566540418 546119482 357737680 37781692 390815039 668579314 592282566 526229461 356740201 67150299 805242643 227214537 829290410 380182271 729327185 61756894 202163684 52008202 617273308 894453775 530292335 186768741 821369705 616359610 835829893 23725001 180389883 357593731 978496856 550024369 589920699 726756493 748140520 388150302 917222622 52304117 498152128 306791811 52280922 694734718 341556231 472195170 109009868 578631810 276520665 517709516 966756749 766546667 271805108 394201172 822380165 619475722 388310490 424776045 612961659 168935641 116063489 299477819 138376726 437438019 786289872 730835170 485290865 790672909 309318321 293110337 801790232 168918781 474627713 107573659 979706268 739215433 404542127 271728399 277679467 676574581 903869327 955385203 414654047 549897270 799430115 872106880 501414526 110332890 911315173 136722621 598657763 68435954 676830012 711355038 155882577 537338760 808297579 151019218 495216852 130429050 783498099 37805215 26343321 212400893 915148757 459952767 95986694 983550597 189954467 644889646 964750822 171982932 284098542 283209871 777691356 255699204 508210201 633515072 627291770 265996532 683773052 435428294 477626012 751291892 180923922 199595228 124758347 193179312 574712595 13427331 768637721 748085643 707551536 88534116 848542042 190566155 642708981 934688125 748688184 389421683 460255775 379014777 392435419 177334821 858383219 801296625 382674798 100379492 818649945 689422830 437253016 408315949 790165202 449060221 5828167 63587707 792066326 715792433 378697363 417191967 709513253 503410742 521990976 368181012 269703389 27410947 813634244 157195177 36527070 404111583 567058001 136098975 47410148 118625168 772151243 460101986 816621409 167905042 536966945 858054812 565322496 293356019 952163958 810994587 577777723 618002489 301137785 695577903 522893411 802300972 225493976 963279012 332517093 410113534 470332832 441840539 196886925 727132914 598886803 122970891 852036231 411478125 571479025 495159894 919644713 517525604 671543125 339908344 132872205 840808350 314754981 123511055 226811946 108253146 479064545 493001442 599871082 863222286 83087941 356139551 819225414 891015288 248357394 682628935 414442346 371030445 63813663 173096647 181601996 563083573 171500318 545116246 714164729 889831861 262477543 528515558 757537159 220315777 282001728 720405999 656524580 493444318 219607713 609700267 888485178 199902114 975965784 636962004 566480672 190416024 974135318 107091527 520089938 1531336 765514577 536919205 973109644 751551559 433692091 146067191 750979363 114742207 406773760 456438834 756214043 417296057 800878984 629283385 351052978 69527831 197594067 477564436 305719173 606744542 988195487 617328204 517077965 148926152 875919245 299942210 692768106 674687802 596172981 631909982 61259240 557255139 55184870 680467293 873371728 698863644 895918834 623315018 997220572 506448597 333225922 891720026 288915811 431522795 839079998 351379187 95435562 419064464 337608642 568547403 533014336 412334762 970834106 576744456 716281119 31672810 957579708 507082535 880440708 402497878 342028312 33825903 392246244 864267935 158714012 767620039 338389749 265322432 848458741 280954600 325034326 696248541 35364762 266101098 85820375 520616520 803404785 619386883 199671579 85224474 471759152 963016813 613504129 781301101 867664709 991475291 909068827 379861711 347628254 205655536 182751828 503347948 739031390 169660742 456790767 986420130 974815651 652877091 981715760 30549707 688710126 395045742 475209959 741365282 755922185 218100914 223406009 889413150 104444362 868554067 745674958 822549810 687653424 536912791 906409901 686340543 502372342 796376044 276890729 650723422 982422968 391135703 703915432 210524178 531005295 832669165 287047605 554972702 274836453 443477346 724386361 148943115 884146450 43757334 872124103 973483109 576609060 47995029 617457720 61147997 66307443 176714862 98737152 855654018 904339840 183439522 388364874 181794607 717733165 648535655 630239408 893969386 253152729 507020416 825988118 607467142 335677222 167113223 24508285 80745668 545627008 285961649 942309433 776767130 866076948 431151667 783108748 462710555 612816198 509886301 927287848 62896212 888298808 90009749 654928001 17610735 839961783 466848146 31669024 177204809 110337621 979324447 923920242 577845667 703793115 874818437 375377156 521502784 923392172 174317564 574673708 229423372 791053791 670167461 536249085 565320506 663895631 457948337 203416973 709448436 383809264 386619675 721667414 862954769 217004729 203794854 245251501 490435211 900502329 190410518 153533808 930816003 687554570 726204761 295800323 667431522 138041909 614729914 653487129 704056398 651579649 458923557 253132539 829029900 11521101 699126503 774668259 675238644 142945797 827282893 395159875 753121322 164794030 51471758 167936487 728100124 241230211 124766561 904917820 746626917 890072350 33451812 769718814 278637416 583616381 728227289 675114932 519240222 4041594 521083446 897713276 14076204 141416121 178246733 591754375 192390685 496919463 798577354 579488778 343070872 299452016 772192971 121196938 894526072 794880794 99464995 871723001 529345391 644467838 719085327 481274861 815803316 460904738 512545192 852231818 263300907 438420350 978168008 984087047 97987044 701675796 535124050 481074312 984202234 484602626 644690852 525988529 945497935 518011352 831096399 715576716 47873270 658549972 356705223 734784651 120227898 881716273 21815979 162171324 625881901 249618797 880131587 132061585 525671284 583887642 330347812 893559951 874360308 859800260 571568968 406370170 444980132 200501464 24415874 519065621 215312633 927310888 932397290 782579148 232060513 574981407 272343314 349975763 274389761 407752009 296454740 84339177 895010247 75212412 810258654 121444385 22539708 876962307 754103594 78997053 955107100 901135695 220568478 851297088 190157839 793381160 601408065 552212401 532419090 486479422 994993174 593349841 732336151 961247605 612920973 49124721 277265433 356466185 603215415 653974255 651870596 253781112 70345912 249100520 578665990 447505924 531680814 566871425 861574000 999193426 971409574 967666374 904246945 726282367 217093815 984498198 559422498 251594166 118870754 889451480 513474434 633329435 120571354 570622782 992066412 702510802 706937268 88502385 147122014 254272193 499749976 801371682 455822819 337933639 281113180 973759625 624066433 229720105 507679955 229784996 59065995 468816230 515949502 153495325 260160715 611314815 399495181 90959587 44258416 914049113 205714634 836535312 363926801 751832302 550464642 923474434 436682396 161511597 16114303 194729489 921621262 120433979 791986268 152383891 152200345 153700144 124533956 19603674 684929539 132872778 6652952 44011190 430503157 807531232 546772207 878317512 400068446 37212135 512657060 368154245 795463328 611515371 434466929 425723440 142751318 475413554 241403556 941898228 856325475 463440742 240489834 597144754 555180707 884716300 411593971 477789286 119349848 636838218 636567359 458964266 541672654 231504052 73568959 224735833 920275871 572493476 73935805 666343555 162452886 680356902 212052025 912168801 989775534 616343191 357394659 450115764 303692787 920730080 932909290 415526852 878631323 484074174 561488482 55411009 191944355 750249176 814340705 322724904 251105099 87139074 989113010 777098822 838246700 275141798 922980523 115616269 626855264 403179855 396673718 285206939 992214770 580699463 103692408 98421049 330434464 130723205 256124032 553293283 7702886 628248590 425207727 563647983 800977058 155240414 240116450 103852671 188435064 712588809 432504565 47031775 23182208 738636670 759028378 9197484 91564683 660121353 59997257 667626418 592362794 860491189 916444043 301997278 853905904 850379053 801580055 464513719 665585951 843190756 232661486 591373117 315287916 58121671 802274921 330566131 625082562 544710640 589711497 576656828 649745699 823480154 128503949 96861943 512416265 247662686 289153174 687566298 611889526 97048487 596241950 665710224 269262342 278010770 945651891 732307411 35828309 128493219 636886506 694293702 954458641 915845873 24963650 180603472 8987024 384576228 218978262 11804687 989325546 502322049 941155682 855705260 791404733 451010829 633482111 16780596 817098605 512211949 635196992 355944216 155236240 730874455 677257313 881392861 140176571 895901218 370458666 224667320 497439946 705507316 676152589 977428152 178468495 927786900 330679891 683907289 973642588 134044679 207393576 634668657 884353188 143590038 824728852 602450486 730458113 815946502 515515350 908250031 813856300 920852891 849198456 231730493 732201264 726557666 729967610 890436763 905234898 631182336 772241195 497475143 155233175 518694645 26726493 574828849 692355525 607946084 730638268 431457864 422370332 662849248 284016902 440484383 76185444 974066950 572497074 921364823 338070003 270396394 402761043 134974008 363175263 849296995 738429512 506131741 377030840 87206584 641369429 393112589 162151059 428598698 536760287 18367136 214787636 695993008 89757944 302923870 908917070 316806172 808454583 847667152 790947872 596204837 822982895 973735413 167392541 982142660 426112282 413473348 399613656 939127544 598428140 709223456 992292555 769687593 830560810 353558343 820558220 117514524 813938381 278042644 473926284 215757971 540226914 972451053 765822594 788419067 243834298 527039607 36956925 961085783 111859028 930898381 352439096 605764805 784769793 527136275 977200866 654712492 727962199 73466671 274633562 12107044 952604221 636301428 474311543 408357735 345423091 721994984 167842067 989415407 479460090 187996408 350436460 303937370 709717088 242225046 211559424 147266028 915957272 33219372 64133447 513727955 486278198 73905200 983510706 164133727 190624800 446573431 402986670 961707115 639872308 232241897 562471057 659733439 584562867 381782433 446001631 522478065 937032331 676551400 152933341 55761672 243908061 140830745 27069717 392143363 259137290 759931950 2968439 559409734 830585327 908485155 754175593 99541090 960247987 317074256 909041797 53870506 855680533 77454063 115752607 573218333 6739825 847328163 499312906 808854160 879861595 821982207 395221771 789900487 875179140 174211880 965337657 499978708 888577998 709868250 524607129 274119292 875142665 813014035 605905239 969429123 428101657 786559657 132523614 744419308 795928254 731983108 592086446 657441309 949585369 277262789 206901824 33184444 150532400 212911579 144749950 859750493 525799906 103488318 625617908 268261548 536291200 148175538 771510475 824894361 574419571 912468818 826402413 689003445 211260833 655466421 406545364 394372413 279005120 157767739 974253346 745346592 227181780 24441760 66253176 612149107 798153091 488076779 150804378 847168017 391994551 826773288 523076359 191786481 482347874 870204903 450123312 206045921 831793391 13101269 856440183 176989679 266948087 475243411 201095050 536349691 566493089 770627978 863874461 719978755 410423721 29803371 261821047 986503073 835037892 70144511 137556561 142123213 57481586 43172779 208175054 186399451 206634598 15056212 628895822 714886221 625776239 956987487 866774734 120957240 484261295 423744815 411789440 198063712 707606338 657296546 416313984 652315233 404450583 822496697 538246468 691486432 878346564 420649078 967010790 728330097 192825301 531803127 748957945 574357833 813078928 440963220 854287419 599462099 993423990 538652518 872020975 106395757 615374496 984026822 478765601 109564535 155227013 441795442 253550218 313032762 31026588 951138432 275548584 548725455 334189360 799401022 789576258 408724613 942482537 826934600 523394996 784184405 224488502 846582492 10994907 432081124 357440522 418851568 370321693 302350031 175130713 284921396 37158329 429874407 481019303 15421157 497452032 153363343 809698425 80944827 195346433 203795308 101476884 68629646 164591120 900794103 627035427 193241187 362711515 6920639 519078573 59867149 656971298 520149278 332764495 371624768 654950248 963398396 924839675 218794004 686083260 928867428 525204 334142424 434163747 509811358 902832796 239767540 499110283 281724801 571440674 81765863 545665470 578775825 104503919 881882017 785202865 96301128 894810590 424847537 935484832 276403994 300760099 636978248 225978334 571795902 772692953 43435633 283631068 453817545 460528595 954685030 127578097 720943777 224371356 194521735 429221405 231336180 657653350 113243882 332310672 418626152 726278878 793925589 706295579 815544310 99767359 947617117 997236647 58485693 995620385 814580604 396710079 594401022 404096382 814850174 530593707 305225202 261147869 447347151 255133721 507804121 144051967 574817393 384024473 716813827 365013341 208091878 901246515 270482764 944190365 442360149 829886403 425190507 710734812 849987583 385466521 394402229 751635187 383410780 680981225 417402439 668858304 179454214 437246264 850356860 662412583 362250518 837502966 404229991 63734473 579086649 217946198 955867699 982601087 218990482 410689788 960115070 395399728 227847084 346073546 159687107 215252236 67826978 330263374 708517127 181627850 904338934 811425233 269641664 781330864 472796498 35951746 502317222 374852352 786906780 934239013 923272576 620456452 330790401 379355166 959971804 596897077 512261040 914749404 466163458 633860486 411362070 224783534 988393604 415461112 202090592 248315351 611630027 702459313 297892480 862882488 101539149 933487226 841236980 210601163 30649982 290661355 211754700 705285247 987723416 696101008 831564690 843308623 902008348 516529468 187325179 794478545 313867675 97577889 710315964 625286410 813535867 700719419 713384951 769111946 223943188 764456954 999182125 506158401 626868397 316964383 212750489 242249329 845723835 547778308 314984778 20890696 759548969 423105591 711226512 181103445 245080007 738141392 445289769 243134650 239250847 223599994 739172989 145800856 468492702 255135895 25646993 366953430 817117398 907845348 337977307 863463132 753378559 301806825 156967402 382466070 693947219 597732504 673533804 848993309 52195724 207259329 294585711 242924304 32157270 161514809 582305498 494093827 690950400 619572835 888494696 210898624 992090854 768873585 539082665 929330148 253795978 504905565 783116252 779497582 745238772 847155523 357716719 718045748 516255455 216572581 964380330 524901240 814380227 326467757 679574217 845359176 163111458 311641043 7699676 956556877 102632545 234451336 316481011 107820433 3279197 516664544 938703076 454827087 31468011 649920305 90956797 285879069 967222466 262703564 910739985 951487766 583998143 919630446 497352674 857028743 17139021 938824497 183566871 165000175 620941264 265911714 632629168 924583975 764273338 788824014 951028134 265541723 870665362 969912758 123866756 975392837 219692858 419991073 38818797 245392954 857839002 201168189 415671089 756520119 651307311 649698634 982893043 425035766 79227295 531359680 705916224 63306279 554920499 234944423 811534276 493668826 971010706 210876019 702883892 416545152 470991127 647664568 913678401 986286363 596085432 275259865 872511077 653866597 249435266 763418023 561588218 230514264 320415696 615183990 457995925 772404811 691974432 11475817 617606211 536480743 932606042 597060505 303334798 248011823 484248203 529202607 320352233 64899189 146092018 307071382 284069491 790264673 231132481 686836090 336771546 978557204 103257393 167248769 42976780 19039047 389107826 269853821 451630479 905152774 406263985 349003059 901401792 777069217 64401527 669141635 95266234 513694681 232132647 378821446 462673916 36602268 282987790 105496296 689313597 522164350 873216272 297821022 924660253 70860615 677415069 401569161 877524636 497638318 412834598 972682436 233802693 40322376 689839878 547930510 768251609 557314702 2828453 288453908 944742478 634101491 960312094 629095239 736172645 196388682 29957917 390306946 36284350 27859741 319352442 485997389 271322223 299410062 325478654 325824614 789200019 357594659 885321255 422987237 153972919 465481321 481279216 993740063 463631277 889479687 967961507 151409236 491385668 658244153 890670835 131765166 569017111 859677371 481607774 48205951 307567088 968812168 407145638 343421271 542514628 662358524 588131379 25805527 954152414 74308152 665172244 490592028 316963756 818062521 22086246 708131363 158383799 214833020 963218499 244485474 534635169 509307808 989964835 799186852 280670582 247785473 336499588 485300821 628635402 974191868 622031150 772771736 780381355 554624136 472131461 467708885 736170678 964597591 734942562 956783293 947495918 297566214 584995543 501860860 860989565 80811954 184382014 928118916 2573770 513831978 738612200 15428503 968239816 33956894 904589610 372394906 157622382 456260775 748979316 461523396 926934312 346999513 277470604 964085461 244789876 232774629 289894477 62631649 46989888 126768025 848511725 713255192 680482874 896480725 780968059 849012575 177107664 534334081 955030157 497951226 429761760 958761101 377243810 699541042 186475922 940044478 270017932 995301515 231497678 589077831 111740180 810395147 439335712 113196570 670397414 977157784 938615043 529736671 443086437 888403135 23072435 345200781 80167120 255733126 209244365 918171455 175276889 210372680 487879943 935979624 959315994 709455729 28064052 334427117 440649180 519563123 980640354 383669032 726772196 193280001 895597025 834532138 333216789 236640945 860262877 700081561 389052169 528088387 852936118 389184724 761146220 436857593 871068159 572458420 291117507 347200646 21064890 571094558 236362787 267878695 264653423 560742308 623992583 439845968 544145627 445593603 954489509 746938212 406069925 556666167 94341481 397558744 12093054 461774844 736922555 409931764 178518980 616792739 57740490 383130781 900822355 562622347 416661076 174568639 237028898 474007693 102461756 805604187 67832462 89426279 920245047 101260527 129613309 173639984 195511416 90833042 660840465 707781450 990666631 23117378 285745696 853572905 942598536 463569023 902625618 267919929 11837163 26450739 128481372 919585403 522763300 433829240 946087994 80507726 349000414 744462417 889249134 306865037 970758401 251594529 504597651 323280041 999426854 41922696 323991043 667232413 167038903 683994714 574176185 174599827 163097157 416039553 22546734 251025171 57415658 657658808 119946899 106681770 526630577 218838843 324939968 221615150 292677073 622472428 75489039 214705873 48132262 561985053 154609414 781416473 526766435 766711286 15222817 253894308 61592443 735692910 786263045 301765102 463020854 185959078 263149641 380132614 187840145 260974935 433695704 377718696 541312078 608052108 164272707 784704394 929102114 399539412 332225810 590866643 902902904 529217999 356029309 554365016 261633422 259351848 129626686 655087490 23638658 401634162 336765023 237539400 805133942 506984401 668258594 923475544 348790499 856080221 242106300 297996330 168669285 614982647 139396481 399225871 600848893 349032447 83339109 511340313 697980546 374301349 567902193 455947006 728349426 516150097 772939957 589987615 752233902 768580226 540826295 777926727 262338296 420358280 718361949 983128142 170947803 371981555 610430904 861077571 247403031 539668140 897719325 47478474 701472123 285337589 260827078 823411420 345076668 445457005 648743159 450027807 385901823 572502852 566897741 804064243 30586249 328537667 479996607 401487721 90937600 162069936 28503359 778809697 185014374 880764944 268810398 204194522 423177544 688417306 748835823 612779747 290934385 432286641 701081548 137046778 313222466 390726470 890165146 111182318 852922231 230615585 950186756 840523392 195792703 286270143 87047648 389257705 12279328 916246419 91579180 589622141 476906688 506034116 961851248 723232949 757444652 152700513 280904771 560391820 176328091 140375783 830092991 47806876 374381116 718529865 145126087 319640113 137864194 348617572 58853663 247785559 252342006 816964089 568715728 779445753 771770471 968102026 796297705 99226681 175040782 392385099 937461615 414738155 428549649 479332142 769642869 260420656 338289133 207431840 719043459 213925094 128334753 93334536 225700299 180883867 387472028 887285306 70530806 257488408 671053728 283977398 939759105 243211794 97029969 370651452 650786080 619639906 290167977 732568048 547033000 412932206 24513367 173907521 873766442 542308852 277667141 851867196 292163460 72800382 698901649 370718870 967908724 665683515 734081154 994598928 255820382 110971850 200691900 89794917 605975219 484785930 806463410 849172626 925626095 265792602 822043842 996069324 642335695 85626992 277966335 591547756 381672670 269616450 95690782 837868089 62173583 742081217 191995300 353143730 56323292 25201598 570417389 878310783 549808780 404103494 101786893 250639815 381022523 376128328 859146547 23893977 173808657 646780737 325491791 438348544 785285020 317966428 151544822 443551960 703799592 906245274 237374142 691730235 48179070 625042259 137907854 604345252 876408643 603057616 833856079 443095228 686209567 134573416 697426842 407359805 782494315 65223445 381737021 189590692 355809388 35909543 236061456 222555247 990801301 528829768 625556476 552577355 45436156 105738106 644483609 86778309 584039912 82427721 49397899 116816731 167233331 903243186 153152019 367417013 704507587 253607563 625677241 32536997 83931195 231338298 835102774 474898153 665435839 15605234 32100125 251321544 653993822 161890312 437269249 181898389 53671246 738991608 100103634 591926089 561378443 378977439 948049154 911908722 869081159 305373525 303999335 192322009 419925578 795146305 436741765 637740029 917813578 228308005 507832729 287287275 610401546 248334527 72692462 387221524 785839938 586063967 201990692 99344637 11835074 989382114 14453159 937942902 990712944 62968850 292158053 719903444 661606018 583906460 343803412 314268756 251016079 972833998 817649314 809258183 908600302 300990473 266418310 227009855 694564994 888714531 45872546 675772942 715947375 816115035 147698981 83691774 407300317 400772782 86223785 558608176 719156153 290257730 489496471 304002211 990680370 484353353 495338438 567242904 117136576 803078631 868591190 282629008 350536784 165095185 29760588 192220103 23783404 192719369 935710477 499407590 632896577 900292287 691214860 155888552 291397477 448786185 454329804 545745941 349069302 586636367 172729263 334950373 735706769 70792340 148173167 704512501 743625012 415310761 144917124 48263289 494861546 164382765 569224674 475301931 277034356 752543830 152896810 69199903 924123686 785766491 218066753 832751439 513743503 241630663 192923867 405559230 9669788 137101924 625848076 113270208 224853854 310299703 862126947 212957802 398285711 278263658 800438825 659260979 374221465 823561275 641733012 228189469 980046701 453989389 678917728 19164005 999769585 664812147 758320974 642883793 200582428 227009297 23906789 767546173 451805008 405495276 950749083 235052638 127832266 409316717 955215861 995392337 992666524 973123783 244295834 820502263 753212095 859297086 485050209 136556173 123665210 891286105 431920727 885991442 355124058 793176865 486221302 593383760 900411580 151483947 525609734 941580051 699655993 60971929 514614190 373624918 499926770 465371545 196727148 784870292 120449157 394673833 410826858 308611353 590026112 227755604 623460803 954674389 868321365 825527784 34836453 340661248 237403150 528954061 251814058 149416563 770952461 780707476 266725508 995361292 693408052 398179591 409434235 944800012 554361525 584493093 734881264 692731734 892082743 640716679 69040942 804590298 678930688 168556987 912228856 68695697 928708419 206499114 243670217 378089242 271611625 802429257 221383795 179571260 253439695 782392610 70048451 190457020 302902903 537008734 873636787 215780838 956072909 181036175 210929617 69587519 55878600 599817559 902207021 787969346 732354522 397682709 85215980 399500526 851592212 189991266 238328744 255501231 632994681 903485876 380618720 483148710 517325530 13882292 174185467 998010487 77819101 66375085 10157643 984278055 115626577 64353948 202015749 653796033 945166232 545905974 225427232 744573571 894276898 478432802 803449071 714445557 797296636 458881865 883694930 234317416 873018904 800203948 284841142 187807051 647727036 755671301 828495179 921178255 78536883 569236916 986769045 355193461 405863900 598572274 463912813 175325724 760059904 388350823 448217855 550028690 881867300 127109654 732240838 480878395 217672204 66107624 625403644 704841086 864191368 407515667 308721890 459129154 936376057 808723444 735289588 481882037 562491664 912733545 835813155 276333826 504298957 348764904 636353318 555551224 817834273 648537585 178504282 220889447 263970665 3387755 469953743 34227661 651827386 960512829 82751386 331285040 782482412 61566727 33884708 140538438 832519978 843503897 265860764 557657598 720906230 506357108 897501183 523747851 155782490 205325390 136678351 593397620 556158986 561443607 668391384 305960173 586213799 253623109 928196190 334614699 321299083 222040928 662810008 344318888 263305004 610298883 766786461 257924539 843092536 324831213 257951893 926636474 338993724 444602760 814769607 734054222 10527944 410831604 936378615 603059011 689002760 323436525 390293481 609377781 921494734 153841964 77992619 96014494 786948979 353963983 255739908 97210854 831969529 599060261 31014066 930648211 666521183 335550980 406848979 746015689 242386619 626552869 995921472 560821440 980945875 417869010 877383363 358411531 694188538 71247974 43307137 453041986 702234145 276333782 406151743 82770023 206961488 962524594 585726111 485089538 870688707 815123564 788118672 659023127 926910573 505597979 647408157 259094381 628335014 689066244 816249387 116298403 122510918 365910400 88561951 488622820 177162823 373436817 890257758 395699224 479739861 131945989 858380658 316220750 147501001 443303349 935173624 48283704 89007097 35272889 484209537 349099303 453793301 471698236 242224313 640505279 932271213 562968431 579766211 131288595 575883861 249268672 2874943 514320078 729635927 309864719 473677268 377174635 907499337 427720160 393172901 907753340 729873073 359708542 929901859 317097801 251384106 456399795 242932936 98232927 228578918 744439652 131801935 539520558 252282157 930019000 464335925 906598157 716922413 652399089 279782167 657612461 673317489 439660157 864358077 972425800 432549338 507730980 545766303 723240024 233462034 737222705 142597242 62818277 384177881 805014816 647267348 977714776 902222138 66417385 542971872 725369340 733219388 44565501 419013378 555591340 650210087 110753655 543235551 629520849 535951262 167843304 161252319 517958478 464582116 394791834 92398638 275741980 15235101 485653263 178972039 724828282 118534561 676287572 226291309 349108193 941824791 320703646 997271764 581042903 865816310 588404232 682233059 989636366 285187121 111164916 986200038 348875024 67439334 348397808 241077505 508110564 910505978 882089835 479982715 266849036 1880890 732917971 779223226 440082171 534100173 861876483 36200953 692631142 617568584 32988702 122140023 132767849 269022364 486845635 356041444 499515755 304507741 816867548 602439849 630392019 640966130 115169947 968551933 317828009 925726788 759724389 422092077 918868778 402887014 965456168 589604540 577281917 571926373 880995238 234842493 772431362 3635283 562789800 485851202 569742254 42750236 474639207 371462090 736622475 701526178 309559542 948317202 876830294 107138448 991106587 321484014 776930080 707342501 856023561 568615320 715124189 171417193 565162363 347355987 30626887 167890940 740824919 329045312 567762628 678535999 845434745 344012867 903749825 23764673 521234981 161608570 453125306 150370620 411951591 167221437 996693260 674086556 765414075 604399358 763259505 160632574 258287738 856731811 75816779 677551918 281574234 117556703 558451748 896655704 540118586 198224589 657924228 354961248 911204475 522953894 338721920 389390299 508332585 186898251 803317132 625157638 775064051 744997466 457188770 391439518 986217409 784085483 548635608 122794114 805697133 634470266 68013839 161914412 622346517 663834624 65234163 36578521 481255474 519338538 780297133 555537057 978067930 778635499 90134132 334172397 359168860 130995789 698066638 608730562 120892485 962934045 742244554 614062621 285109741 22441258 486076361 366225628 773144193 435682456 114004738 99340594 2253958 548813965 347612362 543009396 45272448 334804899 572431877 750540559 822542035 385565824 898206937 367994438 362084593 346423541 24290994 481531666 546995523 559776395 629961535 597054382 843562119 646080812 298430252 746918540 594755264 713716407 732416893 78577207 889847853 598980161 890448656 492787760 306478178 350601577 795524851 154954413 614883732 55608886 30490455 816385347 159474308 896699585 178047755 563572724 864924008 245756092 180707277 15056623 126881187 96674526 162220380 415433006 219094245 915025605 929903507 220320780 822196514 900616381 686974675 177489033 932819736 408161124 905563209 751983407 539033529 893489509 472495025 956325894 444385844 658956604 289224127 789773119 896449401 775071600 294514973 511444074 227575122 134470448 466280867 502366707 463954120 822447229 631274970 421091496 395143835 368613585 479113518 84791678 443935315 741204622 233525285 973532615 547830544 376695229 294361013 11145447 811326285 382582866 925036839 890300405 35388941 627055303 2989270 650803227 56535658 172858641 74308664 748523232 379666889 447016299 651164267 446997498 82290346 415308964 792247692 23619524 305470182 870224645 869020419 101007366 250103813 719373206 793855919 594841552 453552276 915609557 568983071 639178648 370022411 877906663 455775625 353297225 292796513 915782208 762392434 655567065 348515152 127987778 155821395 652102655 19967853 784645464 454932612 977887819 936228860 430312687 649001352 111363285 871548767 290222487 925811481 81682840 450351682 328396248 395489120 115273983 698238661 238980862 500628802 830769646 640817817 963590996 660486063 216534877 418482311 339720333 143968802 422165814 726926517 861814277 444890819 591464074 759457466 279971751 480836332 200629982 124482864 976204293 278769172 377169477 929816090 306465128 733796265 561214811 398532342 884366876 474869104 620954908 475843108 940809397 37505808 601374646 618055273 143159561 426153466 630293821 99884859 821218377 656065568 683293025 322112385 85431982 543429410 574426173 316623955 876525592 101606282 871124751 439293087 626411327 649223782 794105445 148217183 263723862 411116242 263353265 581643913 383683165 520541117 967561463 315690333 599477277 70972043 89597308 107716491 566921121 220020606 8205376 307712433 755046067 302889643 797262037 813292040 308196231 611775998 362543962 147989947 534408123 645534914 316183725 466258897 407260284 222069876 649812417 978216330 580145387 998071458 335864333 155977409 842973403 238879283 415228970 953180652 920915911 954961108 409998668 722734074 354034500 434064776 682973465 303689113 229149787 519279036 337932887 97025822 984016167 57334321 907125883 166434313 288239888 355338269 311247777 827678318 594201490 149444763 609863990 615860099 890178409 57999036 36050860 60717240 943059196 259676315 694080396 370727411 598862580 289271149 735346483 802552447 342014935 159516858 66741441 487667763 338584815 75325506 134628429 776136803 418353166 59903728 49560679 622850755 554935362 736469670 235240314 172448190 620536468 881499520 866849666 999174097 899165494 607866156 315535472 410212433 76619422 627300421 826632123 277009781 877161405 726164767 732512320 721458386 603729993 295748 266259203 608154099 309083974 96379156 213381001 945756085 624126141 21785425 950600753 594993297 331356475 827383524 973227633 228777007 500326839 926605374 375673323 477046448 895201876 480737642 497701462 768297973 921406291 422527063 21145284 873340916 954311211 490388175 992558773 918358002 748899467 834495676 545501959 684284323 153937930 864631236 899560551 341828614 138895110 434094438 692874611 394896601 748936886 748601659 714642652 684376611 405378948 872327048 896644080 487883664 500163232 831084597 255174694 787917682 679022897 617197754 296418510 664096491 81613161 833967141 100392111 593177677 218634695 873328661 390764354 103889472 763348712 300995120 95552223 580440745 110876048 178758311 344397468 240633074 362574442 397744457 150072731 508899979 727789948 868203893 406928509 191947897 213453383 883248334 910798947 701795467 279782702 427798934 424362756 310001077 533979180 719157488 132897630 761599370 846439969 929893842 285222853 984130997 619896194 838473822 53898206 208382453 836548041 684058700 778275164 147339942 588163204 908244728 757784424 233199666 434733445 701050285 594256572 60480353 685904103 581838939 994604769 344651300 372919356 824785188 480444205 832340294 170231957 800549124 482324675 609599176 952204424 460864780 506381757 992168688 270925552 725179989 380688789 236793189 565249509 963847800 237473084 22564805 656269956 253773500 620655754 650122711 997235497 702870238 80048598 509227197 487598371 450964725 681164179 958183694 428466819 257565275 668032100 387074098 531663255 343577199 674524943 333765480 179362884 169071115 569507205 400302260 338592046 290105884 906942625 856505719 840230823 945851708 779895854 74124092 636690931 751659335 151349327 246200120 334407514 867439951 97639914 765268637 324093869 685314635 384675682 155644864 86696645 589978271 213921962 314566976 728954477 302566981 305321611 526270326 372685751 874153367 196607068 221586223 914869914 701379068 116019008 484492599 852490503 329614436 125473957 757203841 617430100 461188748 468987569 692725592 580186140 17089309 915036595 959291480 299797856 728748148 564342990 527728098 805140943 493933869 326643431 47373808 13619386 967204049 526890937 955243170 970240070 169777000 724060087 221139591 351000580 201610612 390866581 41827806 111275679 248471843 49786923 708996208 146418207 612443584 147474438 545413712 880869249 12477600 624880674 434953055 921025556 869681479 115915385 908406423 325500491 181358854 14415477 644580182 188481878 672470108 510160829 119750049 640921430 705027674 263747587 544203384 222574255 413251609 762643955 112330848 951993716 498333111 568467858 536771438 550066509 126536028 991173389 21145270 362002877 169401682 988545220 518000776 317229337 12034250 516534956 782466128 880115157 327633741 831886084 630873026 681760143 420891751 134345109 484073324 167879374 472143652 25148861 831720078 336281892 108694000 228155906 599389204 510173396 620104564 692513033 623114794 927202049 991129920 164021232 668860688 591028035 254152184 208608953 568240814 448647623 525336484 912371405 421168269 14584119 569927607 85207321 62189924 648831525 198045096 721414923 261903268 885743783 6059909 275089063 675740299 969240843 436792935 756310143 291214311 711963267 555726208 290888280 661363281 409578914 449937484 904674890 184086957 846015653 619880751 637137620 43667368 293219543 787629173 747832065 317183485 647457896 71032794 424048184 432748388 935021333 381152306 635263253 979342724 803547121 52932300 320913924 886715178 59251233 18139361 416316464 424501127 617873048 176911370 40168362 907550353 961731997 438081820 174233931 297822410 314538481 951157681 30751071 567750315 960988500 332697412 658346396 979314171 401865615 439997416 371662657 716426897 472996670 24373794 515381048 516114470 849977272 245699240 187294630 806825212 661383136 646395393 957750650 431783474 33665333 418122623 395222011 592645885 148163145 919207908 195372183 526350130 859030237 130269335 505647681 729127713 872068673 493579714 741613866 694847270 63001687 7406167 142471255 231895465 522151089 600510621 302895758 265535681 496876303 152551873 100615793 503076826 806113398 677234201 493115221 885315470 45725655 435469170 918455348 574969926 207025168 337880930 468382780 791695894 134656668 148865439 571107168 611695264 836031750 857105022 486057370 455455584 987288266 263351049 690431532 508792762 771329190 413910071 754914916 4175660 509416499 999125343 13505435 296631173 468881191 130981551 575290442 636907464 198879708 91262708 495271402 812292091 457534128 889896637 876374874 208591085 379634513 562147702 664886470 897990918 641371916 915797793 391682626 457611019 255128632 662200128 88016269 830448868 569329233 636175823 776089879 580370009 328569867 21354922 650861759 306494491 617070465 900473670 363877771 418191159 823241553 686274599 269135420 969304353 536094362 462054471 465330699 375645282 297867283 843026399 276753097 473016758 954300805 990919934 88577428 160183610 52241508 621441177 454539784 693658977 949148122 941511847 924155998 21164657 38445568 464304381 390835712 308070504 856742947 985466865 167358427 135385955 967059825 230325365 996662132 713080022 861803492 381489199 279461660 322208324 527347716 354247818 399867314 538925587 860019867 758450945 167218651 273681339 200935885 188913277 606843648 590859220 287577609 372459038 436926437 308858768 968535793 93633104 256389681 823322634 261911677 677841346 61603075 681837099 773861758 920054741 375364934 431836433 229517586 876914429 747591596 510340976 247333194 604944954 131788825 490307226 839699194 711012045 237942972 834610427 912307440 519751876 243584477 478227876 528661951 309977376 940791884 981801972 449465942 751058552 933771343 601020292 610837173 200675385 918011817 50390262 404515324 952805642 271087428 114888773 255721333 578494665 553207983 521891819 318220703 769730480 254871324 753256191 520930906 812621370 956036294 505649694 823110624 788532225 675079168 116619231 223871055 94286214 924340216 695426923 319088034 217673691 499525632 93615593 344662210 316634533 431777951 491377243 225392904 207800621 807446642 59101915 637134965 134521504 513454302 15042870 554409599 692356115 326324969 155210608 278031871 237789988 604868341 109840514 232535175 526125694 99964301 531921 782076752 997599107 171411462 240940535 383250617 527426981 536723269 821300248 828184843 979491557 119198815 904371783 802908056 962136378 541469304 183263100 49414424 141870344 106521867 764316550 152530413 117660960 517472886 470853366 720859747 228099973 477455571 980882298 776125377 616363943 780659946 250597571 700731207 71945270 203826765 237626219 99033881 391787833 874994000 164650750 461512007 85622276 86060026 225901152 629347812 166161398 158758514 487679709 762481583 182016089 778073810 681821925 830161450 740941585 684315750 329391396 485846711 482434432 646322027 352798941 122747450 519507912 184368586 109193985 955611703 996657452 420731883 732939161 653312163 2893983 459455777 682170089 338502233 264325274 173674133 56882575 329258967 762027855 783305865 943395514 363129866 486146414 523330066 228138474 258572897 856834050 907036756 695765829 882203 685814826 304705964 755631500 335918188 563015873 84223826 698604121 680971633 420994180 204534331 480245923 86929422 774995675 871822552 847367126 672990598 888492162 281256197 721050555 587411178 56109719 644942529 387468006 752286013 897762199 26077006 260416479 181306009 961092425 976499156 955604297 57522802 383166372 623696910 54485676 846005914 96642300 497906388 845930394 954573179 869945080 85121959 840561510 160686076 766909127 127042231 337103521 659186386 277862918 484985536 838071941 6039980 94011258 106884720 610731387 739589283 20529943 480206125 864900004 392585523 765655398 291816531 775389047 3415311 558293919 401936156 388491869 966698350 108618843 705622437 336054528 916406161 6890416 329391568 915612403 41232044 213750399 801599307 814510420 175857272 760354138 602574833 26805291 735055120 45905477 474498850 110975761 122582632 20740902 203456893 241759028 117364685 856091321 794325643 105276975 803175770 519677968 58608966 193637925 894341055 417462521 970967252 485014112 480271035 653325334 676776601 115437374 184173743 504169901 186938888 742233625 855766875 266134978 354921328 608380527 39095413 329364587 723041479 367298544 82935232 325819112 569876301 169080850 158264159 30723782 796381116 121591098 987581089 50433005 241490974 526946517 959504885 924273519 896937375 98348691 773758619 653386689 567969359 27040707 510269916 539977064 214450255 843379569 191929328 941819083 633486495 544360567 104452175 764331012 257662205 782727469 461147106 977777507 259291029 737060986 482006412 774850949 427614770 583323301 952465589 48545921 922769834 527430170 843339414 54394466 298252014 901289107 873114795 371825222 952507146 510444901 997605293 435990033 222160298 719515963 934078738 581756420 995011376 654736975 897882215 803914654 587747451 490556288 988254229 501199444 590813298 196474879 648259860 813598538 79361748 193086042 269808682 542245905 295396722 220483918 254413445 774640773 335558260 975082289 489051872 277038877 972686545 489412139 930499285 751380431 212765361 145857618 275493454 205529585 989593560 997437367 875293921 382413149 911419742 511261269 872882963 171992535 731568561 28531681 802556853 362389819 598305465 890837365 881416984 388255668 931571554 192436664 157793211 910283493 317971976 275006501 279610160 228626844 889801831 493534467 301039741 520487824 183604249 514746615 489733372 263084485 900359046 570352883 151894602 226354041 557246070 867160564 323753063 807195205 775772566 646414619 475835874 376227435 172093137 754699707 726642765 783868005 253804906 314583286 475395833 587753748 139838880 710752627 254652989 970170018 971668385 394177832 600715540 30733492 20396201 700911922 498783688 406829154 955977664 559321721 720586031 568345679 614405873 45314612 791656999 487574671 536695725 887777776 410500131 961063331 640466094 290329493 32791080 824692902 236827949 520431417 168791992 448091943 571877871 259816008 659721353 783005720 458651277 105034879 274660771 781395 808911253 2037642 951815943 239715478 301530955 148522532 336518477 777756794 144325831 612224287 291473227 9712623 182165813 81296894 681418489 878786642 500455753 107000155 476913773 509701854 821955450 969189129 960852441 190971909 806995211 284602041 102836305 930183116 874880131 247573823 453283632 538891745 784030984 592194429 134032914 123016418 219882120 120003103 393747816 489361750 355375849 7289262 572309575 363678170 860428602 698462554 291891965 664209148 618396925 697995839 97245937 806926253 215153289 557033127 549314038 202218192 917233654 108273442 967924391 109569266 767142390 458601601 794583683 222868544 519707576 730921963 408594045 609818072 726134252 52937738 833391387 680633735 356755710 406155771 386251444 245510171 18194910 24158334 978621136 508456974 316339698 111580228 507627110 913229967 931875924 441747063 240944176 144720316 169197682 829491808 340830925 875701420 476457141 972135157 413933694 571389342 547234101 569138621 325491240 84987108 314632013 522640939 622501281 733066462 225251371 633946860 350879811 539144537 14386531 318567279 536370351 553933766 813353751 851593142 357856565 694607132 424420515 714226503 857281397 788319502 803348551 110066160 20362868 191525920 296490381 954654194 369981903 834587205 192531400 146420131 994448386 611554771 718540467 732437914 118851746 418841594 559921425 307765214 539341433 305037286 745212167 861800573 223389088 365843700 508470996 882111342 5669729 16183525 856460200 681650621 322150827 592492809 19710614 768952740 250012378 71330202 689877150 303932715 286748951 935651193 513482361 581525941 822515403 28962357 880293728 715981100 317423086 451373558 84243614 435571382 77393424 45388947 61780771 904736291 70077693 986922565 33569518 521797061 403469571 951824978 635950803 529342279 948136743 60440056 197475508 604094818 769594235 987090207 607198559 266384596 314197427 552678846 995821380 79119009 482068322 170285194 33647642 774410801 226831 603299745 435174151 102108391 342509396 330867548 129979292 364841378 817495324 78482213 164229591 630532602 208422890 517791393 325212953 862836133 237089576 121109504 883338983 113244332 171587274 167803711 215652298 743279918 771149710 56032094 927056133 296170327 476975428 889820848 426430709 964806195 9758472 201240119 698119217 388842825 875004548 614548967 669437866 67618387 121286131 214357188 966035485 688359339 466378736 348673802 914499778 135334955 920769679 412036580 711857248 730129739 737294979 262782948 542251003 46211165 8852108 840028041 251847158 510315869 661961620 501914219 749001319 674746188 227088545 527910584 512166639 356078033 107576673 692151440 349465164 187959670 689425404 727444294 341083995 611601761 612303330 435753058 308462539 163325318 988254017 27970271 725569453 874143802 467007538 622324630 388960191 657130439 312676164 563825722 635222130 521546257 898933267 797831295 429153000 351681351 301738138 440743391 128955277 630972749 410728733 719168522 615261196 806061717 932984636 570027973 745196241 469485407 430213205 863936927 136226074 660101954 937775077 271859237 908351786 386794303 774189350 943861651 77182393 639828476 936021786 703822384 988808021 136526825 623081629 319592084 511495447 538725909 623326864 927485784 602434596 172889675 101550391 572898745 215340117 530866307 258585005 144045337 200127458 33534885 327857358 570473000 489465395 492023718 775988779 767774777 333606583 6529373 950441327 180951686 88277521 548433029 373854474 133693370 216046681 452126809 624829273 438108143 445352357 954231993 752047342 930831528 381114379 549547354 366575571 841084550 830634745 229519491 869133321 401410376 858070855 376192663 735602469 728027487 687073986 101782302 923816993 689444016 438712623 577739544 364261010 422350949 863075124 293299821 760782743 218873811 72550111 109926024 845231526 462053415 632343746 665781931 849724285 384486368 211269030 230520555 931553608 97285804 40815792 567459610 893917110 594182245 211430031 396667784 58076860 377088493 586558482 229646001 637250657 119709484 70404738 265047160 947114140 387308747 557497439 72086645 531291778 267104189 227792050 364266130 876546640 783851697 742237208 161785189 820426983 776381944 313010337 143103321 513386658 121487282 137781961 432369273 831689791 583414009 522226827 648301379 547082054 15340126 393729385 666643677 549975885 880872155 687765573 358383300 338334132 147135622 866842825 102425003 533829629 596260698 284188327 135179134 613933176 635562058 792209093 965551893 472085604 209384817 702888615 195345587 361963173 648146620 798580558 160274854 867910565 642577016 715676307 633666103 537684602 964229418 398464832 650132777 589674757 432499389 940681350 725037503 116515496 29960953 132549728 334802802 799149122 354294711 897947316 716969701 693481637 461865236 262158614 73498846 116579149 822741335 780849547 954948738 193914410 743921229 285974752 820500503 881638475 897909634 230243660 964929226 697100404 547220230 397375730 348706550 86260131 167614914 629476163 649372542 701846110 961864131 151637424 966291787 999210993 491156264 564626536 5751652 736411727 211952307 687945631 937187710 860003172 124791732 511695619 779124328 668295779 303524773 506703996 507950194 132127627 22347214 387515283 562629473 570724924 436543023 349360181 151011776 349662618 178690843 296318952 582186023 12823427 56196014 351521317 40827354 360130899 902886718 251383832 234988182 155513327 847457950 197129292 284667219 415890740 396670634 807926909 749230417 197059973 106573221 930972297 428252029 433446102 185383903 238090955 102193390 319633428 442521711 609305372 450950477 836008793 1519631 932742944 88394002 481238714 462459494 38001347 913749217 304884503 508336199 467748390 851461359 569829599 353620480 160134226 222170940 138740496 315518675 300934584 458548336 810835219 286151794 811525163 179430550 759854710 110568252 658410681 234230442 351059504 842699106 692715811 725370632 869558864 852366728 912505939 870550185 24682119 508238021 325186446 536850760 29269175 37676043 508697046 686760466 892658294 945406867 334319413 978830226 755487219 811169970 110803646 11070896 145567377 39376873 328208453 508564683 880360907 673296280 69800211 201560996 66850444 811858039 592659971 300457869 493280418 280363225 453756655 403066911 280016359 689161473 136416297 961695908 584000966 390901995 907634409 950037233 402768478 588599373 336555556 320172095 889733169 786397623 67622193 97413105 59174620 303834541 153735787 167638826 516101759 471920213 920865549 735505146 836314733 246868867 613414428 750484378 836011478 516145257 210286968 572539573 764797703 945643342 704686373 320517731 886281096 700251881 184884137 334239790 213752351 602411029 39276568 324371074 26850635 987143640 830342324 656312623 464406807 506293 934815775 180133857 118994626 894782759 375817620 747599617 937657282 233120723 867244634 203448450 990028594 614949240 699433767 946393403 881889729 209583942 560826067 633799599 877052001 231192482 62408053 12518325 69447115 237541906 91381307 795413850 824106426 616707855 131059886 568071622 806743203 168965428 950624149 260859100 559707707 967410226 160898916 235677104 510977741 517781721 327037253 623785163 254618238 75495572 778585743 978417428 881199415 186594293 50227160 273371885 445243311 568814162 220661152 531391328 142642557 527761339 478626413 890278726 241544125 390020856 348111856 966296975 162945047 144845946 530919079 309087848 979144275 566523199 18040556 743085471 485742127 356923178 726161656 579371526 799948248 429936086 264973467 875338421 684563252 627174063 981307394 541617320 702111424 252616009 735956382 968547518 943501779 291085328 406713053 172904808 617613075 565432559 329628410 681486492 354411927 783250777 737999935 300783577 282355447 351487696 968462032 375972583 699482332 969682488 932479371 126597440 686001301 201643264 363047110 589106085 864240594 276329388 20367831 519652123 376297207 424776411 415151470 497734309 905968898 597180484 25744538 568009051 79112179 580919423 330681223 753508012 685838729 500156065 127510055 735083428 609978452 146828406 788923846 907878437 819813851 165658596 639352400 747424809 993456604 275444391 145769447 468974738 431118332 639738029 314529884 631083125 335254744 857234258 530684963 186390816 237330174 911238116 68790853 369022780 200974295 146340238 426726323 25789953 210618052 469973358 1409440 663575650 273196680 794890260 792919473 290364414 860317140 807577821 124319383 428035350 209046855 566532977 162421747 154547320 70615972 517672716 119294210 763160476 571374602 256256977 356198688 863390130 181582725 998460046 902247016 497699750 640180019 998000029 886808315 875110233 402170369 472184451 621110823 796183350 834012106 413793551 497756895 465674393 573061327 126175778 121909260 447600262 979026212 172469814 72352842 327793177 203422549 335466264 696100743 431826287 130255329 596798902 191466542 220026316 387962931 868736689 161477936 900569308 60914567 130511235 911714278 651547906 718529403 526661631 567911661 164991692 956284310 880491556 938596780 253733348 370500897 905681397 663301890 189740212 543765116 640609391 263860988 935509054 646754628 197673830 688997806 398085433 700314626 486397548 563713970 479960064 390876185 644026048 804134462 471128174 182329858 103576394 713071249 861128932 624618947 133508432 277906397 233414147 175460834 601842882 308886847 766422272 247896845 995569095 413597645 973321638 105823647 113518040 540365334 225203743 395636167 912062101 144401493 658293404 305929084 236850253 287144150 1142454 825142071 86067149 854212677 118098017 728227830 426044371 390421782 430858241 937927254 318288715 400910964 59320051 761330352 847521531 218318897 804239873 594767094 239060178 34746984 33762926 933032759 44249875 877554745 794576262 564788479 191939084 684554377 485712629 704533581 737219873 564408615 722331725 387627097 624326761 524137410 202684829 292641484 85720850 467598619 706173226 415431963 651085051 588656767 299241326 689503010 57846393 300517451 494360658 460290300 328855988 127280232 108643326 852063190 712685047 877147248 626122577 6436809 591909617 267318890 307301750 173934039 89931693 270768971 711940666 66434914 393824927 714015423 438651239 204600477 212574477 861150835 317845905 97835415 745955197 983255456 965824232 143462817 716828067 640865587 319821217 918695776 725441643 170643655 288915043 945054186 157882464 509123594 294803815 842023227 260919001 254849282 571383650 993730603 542616400 711754448 264122787 184737130 737471034 302249337 43570217 6539095 313421449 342897606 792878895 686650595 276829202 172020675 602774472 183857325 157778119 602139735 791419430 188319185 56207550 309862170 39720073 233276834 748641433 460710384 44439046 592758501 562015199 568676386 226520663 651780164 34138211 800857780 204538062 480985689 646876601 393767390 699201555 636901749 876333085 255029866 224841924 835553356 574293237 959421517 30946167 872734102 491613769 719158324 339193705 570475167 131223051 323560117 106997051 476516274 266301560 166074357 3938725 760814682 700063475 198675376 595849581 41783822 663523414 624166525 506226613 201620890 734537946 524878408 559073858 668847119 855427473 290785078 462025537 126819419 184172511 349443718 183881949 643415022 825905647 512931504 284939139 583729212 392066276 243956442 962723333 822118975 759388259 632728348 981939459 579767023 362625083 700638142 620243201 136521306 594386546 509355664 41614290 616860455 710280706 955474227 53043610 553923624 3789961 41864283 567937598 727614444 545438299 224614102 408840225 713572547 646751847 598004731 287974713 45695677 223226297 477437980 6772338 695937709 987255986 323764031 59612223 758363589 195577581 638403354 237808420 499273925 630439929 35411641 487812924 821757296 118824605 108384886 448829088 393642713 193735997 833646614 280116597 404672454 841068574 426809253 360725335 395882763 803300413 969951462 979725085 417754532 469434670 310397720 353501404 281643009 343052241 108710911 173470439 289894966 513913292 551023513 325878181 66760126 542401664 234480716 904076811 52389381 914154359 238142015 809486862 31913549 458307383 378500492 49125503 950764900 1138719 280261180 103626577 513599830 327770484 817617642 603574440 501608037 707357489 380123463 291996482 582219675 989823809 488574567 498977379 672424170 444340634 610630658 326418256 339413920 664342732 521370560 346079929 762069274 550884963 360982405 6370205 727403622 394789933 545355917 15572878 691575859 557876074 399180369 774546305 27968875 958987468 683303602 804109219 250019168 355937750 736734330 175540176 759401641 213694352 10611446 95029608 772183621 727662285 652658727 859279738 333345756 707017254 863517892 473056696 793566583 891605482 708150297 290079694 359584727 15299149 767513104 30663446 576605483 301406993 784315314 88019290 36120926 439953270 59491736 58465736 510767803 617210320 332974895 265460133 254734411 710526481 741314910 386405585 690144216 134754346 77871894 196706598 299130088 542808481 526525875 575731868 781609394 760599426 86569424 979759162 32949239 739124696 480169863 536135414 394863491 355058652 808832885 910413750 198739075 922719533 933257281 242604225 819004179 282398481 817659715 955267187 221620172 237420413 234381779 560638490 898416261 734224794 510414905 258060571 729937895 150490204 819658926 398600650 658859838 692202272 566261525 59565777 720883863 445131 664271152 170966903 470648169 800079706 754127892 493557894 297970555 596436362 428908563 234730229 532776412 682799948 395100910 350930735 239526463 195288289 274102493 384962664 45427390 88410617 216347234 869869725 855105204 446649510 516725703 479594924 52464088 346923684 919816332 562384877 463877238 826415928 695142276 653271635 927940527 777908810 561474026 679911033 385482453 715281007 607089040 779977595 237727201 567902327 378231305 128001651 119484537 7767805 348961876 568071632 506557930 255634653 79304147 625976906 639786314 385247060 615558653 854434662 471035967 389358398 352934803 878067684 670011164 718053030 355697121 870066328 604176751 864801849 15463198 217105904 529290615 539768320 967471601 958230205 697693657 559750342 465299816 129488632 760104325 299021355 684599157 426363563 93878662 652132642 71964782 408603550 730581581 867734234 627160163 756645192 351357303 907565837 474152937 672658199 773566737 704534306 455335989 595952184 585695009 440669879 333429267 174973254 818855539 237305649 229517635 824259284 504248811 617146815 384601889 292531552 604445982 165142094 725902088 899774034 47730882 549465558 525864959 296568341 723720688 218499358 320637259 157433032 118270204 360171812 523921710 193612711 319427244 195580810 199077339 430304830 146366792 97105820 525077511 678305696 301270363 294727363 825797638 176096131 768837269 604508445 798292986 44604141 123621957 893167007 788042432 484685172 41659048 442573975 300711624 261106527 760097009 456215430 278216270 779338212 28373399 287110394 519666727 208275922 595226761 51940520 879692868 361220169 823118225 382883203 569700414 227982851 462588054 964040938 45899269 453803422 419155851 23951144 561625896 645794182 774146207 109858763 83553970 401351727 449699738 987145819 101493652 775654704 246871934 437782516 580209263 490821274 132851116 814115154 541510212 542062139 195529703 660010654 508387968 43306012 305156753 686749402 202397577 347861209 435271014 751003970 917158014 567827 896186840 365358077 691037134 668261112 472196532 432991637 746543158 307006162 252808733 728515318 915676225 781315353 196398177 744355447 720524106 384590701 513921628 628409856 800612960 566883601 28253508 491461121 985894975 741901028 353372641 537060207 999445215 111946040 255691862 424075302 350812976 394493182 149669873 997600788 699104938 612766226 199264963 255451093 499236424 456272489 997850376 774312797 44188170 640563950 433367529 384024192 224580111 14035617 765662187 934050256 60783451 608330203 240347309 4352109 947654485 864969346 532777990 99760380 176833100 609144225 308520093 24870165 961020841 4129908 856692921 892069817 508632233 965341198 177477043 757823873 492109363 895536689 745384261 422094679 884431095 847768069 939028407 546010399 980725529 404938052 943706325 79794983 59968389 129200538 459732165 45369337 896139786 986397141 267261367 875241068 133608350 407934577 65193090 431441139 469285945 22206120 477610804 185125805 906613813 619186675 874517527 548031964 819710349 194484470 793821026 322358576 423263280 361483738 886140925 294115551 229043225 503070614 846162985 669578670 921027138 212998489 285227931 744015036 480150825 764555331 862010027 858989461 790747689 660251121 463940898 60606682 34565414 155848733 621933247 642180659 698575536 193778233 281235473 54221448 422688879 71837242 585174117 215803902 192042742 451459781 309438061 708405358 269488773 647852479 431945304 501610785 737899932 855626659 190971557 947618395 304443 993007016 418949049 220410381 19701265 784647299 795141087 253939308 622023333 582474811 500109465 878314596 398457603 599645913 702699927 95786845 390838036 552568828 340293919 905516416 224498832 922565971 619891187 393474998 343020530 756978997 930310352 492138217 131735935 209413786 492700240 254311673 918772769 366399425 332706690 674821722 760811580 678802661 624018205 804532682 850042394 203386936 946520927 787593026 498785937 737046252 356038147 713789427 329449469 342422078 423822626 8416822 536048772 768990092 475794250 819579289 548839963 716024177 220823733 44257354 29796984 674590094 35592166 930169703 858586774 565208921 769256770 968268804 735830325 309032597 58585346 465779282 728725143 711452483 813463172 284685582 998832126 984878045 442793131 638353853 353995259 635567382 922033783 80264106 205097184 975968788 618331021 105413543 669245854 866648189 982957535 290281433 379843213 951484234 519891872 705969349 937376057 940310301 696935599 657343384 286399270 870969503 69423033 425993172 346507764 883725724 674149778 350759325 317637786 585489814 440179837 920846483 368143741 394679338 525146461 224220669 925064428 638994059 76545959 730745269 910751983 988647896 927776963 958997166 983686682 509198397 310452910 355891153 134723397 741283437 189517125 485046492 987136782 634397704 22630013 475014606 811185465 567115909 811105792 506962796 673642254 160773068 662896998 88454971 567106935 273050170 204086483 646485065 724501750 734613556 613189805 969388627 783714989 227806600 778545981 179691483 665937619 80329176 348556667 42318394 839295371 874865878 854958962 283495817 199233189 285014795 191779599 100253780 736057552 378313442 886050995 444175580 845534324 938853533 185131717 361072475 116438371 964059986 824823092 793063197 863364568 406501300 474445093 214387567 446022281 110001032 369884285 590388592 993009316 85257239 975531159 708387750 553195134 194982389 472508371 893506457 28812530 781988156 122544412 737413158 343980783 790159961 837188762 735940863 525962807 281959557 519558920 7923070 957771835 841647777 725440552 888495006 346227562 511433910 477737077 581378640 856192072 466701604 258253578 630721212 31090034 584320028 86296994 45762646 287944588 135745592 166009481 908052868 177608295 754415565 447858611 500010154 206685107 90192569 186468516 505407495 102996512 703680200 611845718 215745111 954286951 29516581 243076576 497334395 851952715 722352284 215518084 108299761 259081527 632753175 544347887 168986280 297541155 615166891 369491214 59823951 619033014 717959959 660811354 335932038 756165351 779394052 607318306 415102096 519858373 256906633 239985770 784022805 529924601 472472315 735548789 66837776 823485423 420651286 169047819 645885142 40158250 382539718 37156669 916107796 175595433 245570784 784859226 915425833 174375092 742541589 822279843 237651088 167235291 471210547 681278141 613992051 344425050 474977532 369386489 871140587 803891473 208460576 388823905 902824389 403658471 909696087 974820575 96435155 864936619 717887448 54704622 363525793 709690873 625243031 702064791 965724391 239991036 829643283 518726731 85165868 741664524 26682312 315999571 704303802 820132064 70675426 354010166 637509511 14500822 469673001 71395366 512714858 262576311 237006674 364946956 5966926 315566611 719832445 75130991 682743536 96857135 551490391 342549504 147100666 218856892 977193049 25969771 684315681 937846816 941389817 990940096 718950606 25905643 341506009 235709226 922074294 354051405 805097943 166364169 580426076 982532492 509008519 413295607 88400891 133072469 596072576 401113400 571733921 765076836 792112889 794569382 330475057 576515454 634347365 250279952 594778888 402641224 133876726 704615678 803390327 959277826 405964536 224891125 39290917 828394861 917791516 19895143 578726452 850455496 428358105 980437452 927985803 784236161 451244115 630899415 786274160 294400309 357900678 423426885 737726328 470586952 942955381 573790852 254715592 43633972 759201156 794895298 533917116 268980440 613378462 642573518 505089150 492351137 479493457 590108905 52061401 807435285 93334750 718304853 176293239 635670671 478368847 690810596 469980717 610971872 1314393 449413554 149479723 379288720 757556025 807825947 232714629 686651680 565077394 42781738 415515398 686575279 643603053 660452161 414404510 220196295 398796641 283933717 422852766 15382867 435254579 645266932 669758829 209657383 747868257 469171839 995591458 140504381 755539888 212788967 369934188 872577196 599932053 575805083 190650021 400862780 552151693 859910905 203933263 668056571 81505111 253918894 401944551 144782049 793256504 211202496 788914573 426314880 756418442 838443564 214797250 99003982 944168177 466350083 250172785 212312576 923890065 224479831 260362972 480513206 420516083 123142273 782032918 9964998 178868976 965942185 780521241 854025185 851000379 752394772 178566340 962447680 400105576 252080285 155430918 903220341 229247455 797920641 772955433 521739696 128132747 100174209 20520155 311382582 664363189 144771556 317341246 431422923 900686389 892244656 443737464 886280481 405341511 414654066 797696992 246997755 126188473 341046948 21889135 404889202 193162021 858225910 69354973 535355010 359088500 832111062 886840754 802774493 769098548 822518104 957546325 596463469 253293185 374823352 567466289 427714277 425588416 191543655 692700750 904722151 40349570 275176624 772869132 83237029 202878404 284750246 594962070 318535578 725805650 982259488 477493848 341099374 476572064 833416295 529473110 105355544 210122113 823230060 670288071 931892200 745627893 459783713 177585684 345344767 588050343 547319327 468747839 351832483 526928150 971793929 618558132 914028353 505833892 488990314 952286687 389057632 222356200 245779964 338403858 888630855 316275688 809076455 494793229 360973411 879086740 269287846 182942411 233509348 932232679 313771205 807958114 621632990 40386516 252106744 242747980 443758087 905283316 923924485 39958173 912435136 516882239 714919727 646819208 3578433 982475543 718109877 251667549 400309122 298348246 993291380 63364837 823984606 585378115 285332627 271176332 263551177 440056400 147620034 762937339 116960954 231397512 163024220 423372715 344440555 461286772 781635714 146092002 73442438 321094251 759247102 602090032 984912249 706269315 416422782 495725189 445779549 60566079 793796814 243625838 280912083 214987560 180771269 151240271 596119987 503481725 97289561 347950771 167826986 103386329 822464496 900432216 458959905 953609642 181933365 116371572 890005721 608753751 980525299 742764223 903405342 881304791 521256183 665683736 520376335 689184008 44475585 37474527 637434114 142536670 494677638 358867980 842439123 252677826 446103051 771130238 20541654 228019357 622315165 791915355 739607922 974661674 241451392 520018314 110795199 12921883 509715139 575689713 165901705 776483301 243387980 839365089 88513401 915669863 176586787 270209839 419291057 121672588 378250909 221334906 946925716 282117751 686541853 187765363 10164359 521876952 135442905 562097600 862486445 249587437 637712125 880509000 504838051 222116821 42788945 47265693 247072889 917883351 440263715 72944706 264647261 391067834 114925507 188891273 4991519 801038403 568578361 168249034 295929232 86824291 768824518 994159067 2063137 72971854 520169867 866163835 18296499 389280983 897120858 896212363 286661842 263327105 861792216 650549468 672180749 249390920 128333219 476516337 988675567 62067481 508744140 150021566 935503686 188254835 745790689 871676995 168200472 482609918 833581014 680818180 53291709 608901556 108891191 105754605 383581277 850388102 419952895 765842494 597394615 623983924 225479571 283210601 486641376 266300689 292500120 810548241 698646765 572366286 425608262 479392204 38076533 988331422 6365106 662546482 192928846 162289322 825749864 457383642 632137436 51242680 952071251 979154231 793503899 638353535 584273728 206045784 248286051 798102635 176983063 190837246 36917710 596330316 869294496 456559402 177590467 576710142 252124147 788820341 150102148 194264687 935006483 284253352 577126685 269009998 181663829 891827061 789041116 716925551 395515583 906099121 29725532 610765939 381699465 624650160 635723013 997042156 47339352 758898079 328795751 31028013 871781463 484275428 932492466 90682429 520959492 953177471 697073712 594392733 782655272 153755388 616628601 644651911 345454249 425211821 338954303 787419725 611341159 567254925 762398741 880633490 932896158 430769890 911034650 147264353 819701216 483626303 538969523 105553222 771280148 996944628 692225453 666141511 76250649 215680310 675628739 712968002 437493251 617290931 756693223 821792543 743963885 396392475 417675603 765194914 104211456 620542365 143928717 161688871 899917095 897060277 833177147 520837199 48892229 72416108 320100843 786207795 37220696 375315810 432747334 806241360 291784600 407244233 525965650 167981453 138328881 264175601 283951390 827850390 404036960 446160608 280275132 341387668 150496920 856129933 40676572 978032298 237583553 50101796 258234463 227088184 77081066 772750754 201598156 149871245 610628210 895413582 934459214 26659190 555401913 34198769 261701395 61920491 621049504 836131934 923974137 899241765 765958237 8821358 454560678 302555515 382768887 806903727 160692623 725740516 868256346 920489869 280389942 272001587 691879754 152483184 199286748 275662415 868669312 930113464 280722025 710059701 851050320 882166646 73692623 867294709 634523627 892479842 164529357 711422089 430845824 957503175 272208812 846243511 433505670 542317980 220530682 621209324 716980152 284973159 61484474 970244154 660835322 349168578 547805075 84993275 943182486 628895951 399994007 979679947 818821734 97097077 540934111 146852844 603033065 49639345 380260956 165384365 403868711 130982908 744346033 477610376 210238621 999820221 785481322 137940606 258075847 312496574 152962290 778827172 940868014 92636745 656881551 273929575 452990339 976850049 130332804 120228137 487405713 811652284 894098538 702412016 837060446 58053575 944234125 459622111 827303373 163017228 253588848 731038948 222532216 668278731 981655115 701894979 433703054 846416571 299725798 816064300 337826965 789605960 396214003 863540107 208236286 624509792 236517150 435542878 405583664 739151368 734907229 550109952 276135455 26759569 435045793 811950876 8073803 804704229 952551406 397338039 751399067 815231304 321582245 846876232 690857598 880547275 492158417 587285758 110886304 997140113 804889247 691947663 804259335 693703627 201282195 56522 529935261 430017815 725525633 88655272 299497719 980849237 168378258 628836653 952028264 952372438 146863891 742535620 133720196 749257749 496099352 241302955 711509949 728403875 331463757 500724201 571595425 119902436 271354951 539933196 318935827 212789188 989166844 2763 338695000 154321993 767237174 179968105 167374520 210740241 573699626 420882354 990299948 603776014 253420122 375328018 533210098 334457572 521090417 454508011 347719789 131419927 739201601 321222416 985205575 360559589 813317194 880071729 704268582 377923043 607042691 795232191 344688539 442634784 480549854 581758527 229747649 705941150 520002084 354923969 539097568 436058401 112009788 317360155 27863238 172375918 246416236 610579453 241285191 888260464 917107966 86506995 13633617 33649915 483185580 230587360 191416572 41231229 70516230 472256658 143539509 4102372 99802476 820079901 761418504 824469692 59674874 261404859 438468729 473359197 521421638 289777467 751313641 662045318 628779275 715658452 513191876 791135192 33571706 622544278 958943564 284165847 509755467 352810524 80258069 216228738 895873264 767950086 518235761 154960839 371849441 21203743 639334676 271015879 541496575 440241078 28352125 696698657 840100080 485634890 901956725 742993765 206826924 445365168 138529695 211327682 731815995 193148442 986877341 296355267 593143506 234952238 757858129 104270250 124955080 744127044 208672468 864854177 104508055 501583409 850326321 929910315 208129826 210571380 539293042 299547269 456962644 219126760 46171586 849581884 507078233 704802244 609651584 14030397 384657024 796329078 973302163 704938552 328807373 930494941 419992543 394388915 750590435 312699738 896881779 439881304 774833413 589733668 698315787 834600706 278893980 670153370 527671480 421651634 778481644 887686088 858667447 464443012 816652471 571609635 190481233 890153714 653810455 234634100 6256397 261127109 759874907 955657562 78502318 893560085 145901663 446260882 905783574 178348024 324019774 313294794 98271638 813630849 97322485 797625165 729711424 146919915 137769022 121874286 286870658 404912653 719321457 248535599 986249025 16689382 43123269 577281308 648501766 962371527 33584226 119255361 425649863 890726797 544915639 274839286 248982384 199382444 152268746 984340247 470690680 743042076 651058487 608697706 173768593 463519201 145667840 230367827 956203382 150011479 958033907 992064443 342509814 796306256 524931600 122257343 970065955 138386365 460698540 604543202 665022214 145148277 811567224 958578738 717855886 761499100 41575905 541691599 522048116 105199534 623463403 429043952 227588753 43109898 88528405 251838546 578754152 930775423 848313274 72836428 68687897 933157241 342407833 367632106 328842717 888386027 790485821 336488568 799017153 290719361 401118771 812508226 572815768 474376776 960277685 441126437 955281839 921239308 964166149 132932290 767157213 625291439 729394273 157871189 478784779 881251142 69178317 558726707 56082308 246826913 772750315 810415362 30234097 724954844 4501250 823668314 558578560 28486661 12664557 817538199 873421989 394129172 869828671 3048440 943116995 374092508 514590878 922028477 810533829 736516144 247745375 370690647 205273414 45700008 606949816 211707406 860413631 886387948 20337488 463619962 920805365 698436272 672740001 90170135 194390813 42893891 141353292 172014512 136986244 337442763 414123180 226610893 426449050 501775158 54168589 125225296 123919905 641904736 803820269 150351667 6574445 856033395 167492508 638029301 580962359 924519834 779626410 961571053 523746833 24916966 55206048 396425100 493133706 678646775 207038926 892951312 168325777 679783104 839329114 407721865 850378420 486201985 390344941 849292210 39690932 490279938 628230346 571375280 327288749 204763824 904146005 735424143 602136704 426089025 350551461 149901798 989117814 76050883 946227165 440216328 284653314 871029484 882616374 262359467 363465401 254905769 828029312 273524860 946319452 666545685 908629878 779951753 563105098 196090283 491432557 931113347 507138673 218688380 278334151 269371313 176095760 112306224 259429507 314459272 859604957 645351301 625635740 971016814 629673238 341379904 56147873 268883719 925993963 675141418 739949858 980847784 141511587 727131103 448577319 460764272 221031529 622421744 73457053 262866146 318496827 529664172 473392637 722766015 701078551 855354977 17850008 374846450 379650904 801900028 358018816 940073528 566902973 310901083 914323698 63347145 974264250 661112163 161820672 676182509 479434090 100055955 557852676 221181734 393789479 9290911 111729821 273171544 161574515 510365832 56935819 350294260 430789743 804825641 374236244 275070141 472139765 121074150 130993628 184746970 846474563 387586443 779661893 47093508 865975369 333750974 405609890 641423235 376013883 250819319 11024118 817619954 899491588 699573085 408354766 935347464 912409394 766372219 672808965 159137958 316104732 3577256 260995603 239809010 513113123 137837520 554590301 373691679 405573396 98874327 578341441 668106593 724073888 392191249 326806062 242615425 364983086 347074216 900042738 309493268 559778939 116714547 132019601 822597731 694703295 85342532 846429137 881648128 414245965 261252624 306106433 854785003 642611959 854243432 340645619 303283105 57581010 912112495 620643492 259678742 388006681 538345679 307673224 883538573 155513702 949523938 884916341 827005434 254198518 35251669 897418694 903629938 334191649 506366964 395576862 98657086 994524364 358445660 189695421 641712216 951563553 688885717 500697858 49888267 974948706 686187126 582794973 868154629 429625971 67649587 983594639 501939435 420696962 937681341 186595677 725048219 916463429 728602677 185995849 151990276 157099264 369107601 696766431 41987624 723342390 39618118 964756670 569847255 423362565 701185016 670832646 230940997 238849166 584990241 962852782 383486497 644858567 158436819 73357912 791441856 597066069 104957354 369692932 225675456 239253260 891110569 709350141 286622884 537075222 334185218 44271280 478939960 485115566 317736609 757791679 901264660 878037285 382935886 899686676 634815610 806115902 304066927 493767432 151038840 134135593 898113985 681291831 980397555 921976555 18403549 503498301 633051534 124320944 708158846 830802414 31930712 202266714 333225210 309388748 931768433 727589712 811412171 510593554 385195759 81277383 321077608 795979132 276572284 871529369 291915107 330337515 381895164 63406343 976375997 877294198 59213411 13915832 647929412 779312992 837531560 805562757 141401878 804450683 155413629 831271999 604977862 457496400 847996002 731849559 255149830 188872145 753085379 493417507 710597231 773336850 207626543 431546433 584313353 746341044 298948195 898671281 48657860 972720111 739145986 299613013 609030587 454768093 914065328 428964810 919005204 783097410 461376158 340280997 15472907 744911803 420820286 937647026 906101598 235122715 891756679 430468222 7750458 531123842 562494984 136225335 74890340 662333275 452056794 714003481 27422624 873597729 96058085 175109821 814290708 383910678 740417312 657565781 230719617 535073493 453091862 335483055 373975121 312863768 848404907 102426833 422558310 73832820 805151027 9720982 784987353 503371966 362320624 206908351 12134331 302792938 582811790 768451639 725357052 151308112 391002280 975926138 330070893 399480931 634504746 379222879 525365768 556809129 934773573 906839178 104129173 417383615 932254260 87903735 640357016 242113632 614606821 175177443 855417399 139925549 867412533 467533059 729338746 867191925 955365403 567015808 287139884 353579109 801540269 599864110 124275297 918496545 359461123 483297786 666068321 14327710 746739461 522529539 521440242 467017453 33609323 588702124 33172077 671343620 761033738 702163998 645548615 199489495 933075622 589244313 570840668 507441103 242736432 322078747 598009694 386224182 5862734 386972785 375425902 790920812 834776987 989954516 36973201 671672351 305891509 357454133 961086887 180266324 457283964 348751057 862435026 91909877 755167392 531966775 39344292 605333795 393414805 108457897 10563614 257992447 930802335 982006377 67622287 750045657 31974067 904331156 611014209 55598203 475132040 479913949 606385354 890869502 897440055 400238654 92606484 726738337 42968642 548375118 664168550 618798234 942343890 330030578 345285549 323573742 593304595 656432508 507723407 990976110 84689868 603896806 651097064 987459959 534594053 194996862 259012579 827377872 494693268 974510946 770871721 453285997 864086136 253540218 204540569 401941941 786715191 581166555 649360439 440001277 380657390 815651468 267933301 369246883 909359087 488547753 102679975 293631572 559147430 218767390 389044230 697905339 587595172 123370467 356501463 196193310 732690052 572288411 606291258 471674573 956350525 319252465 867451656 636018571 160917863 912727848 139879203 523760338 242628619 757119421 13946138 562479328 204420789 112373974 427990417 258995540 712702684 22749231 315814047 476240330 900689282 114241866 552144229 101201332 622952952 389794591 313361717 492839589 630566771 583920291 818179468 335496162 636704839 926268336 435469610 228843591 634567794 233219578 257640191 804415865 965989364 922052232 407675909 385819018 9777400 749322959 560440425 184788095 264718244 184710689 898409706 51265136 595147131 152024133 361273913 700607519 548166441 400623494 105935230 784657327 255409056 790989564 141511588 199581567 747188443 715204240 859910989 642718494 488375559 134627128 216658729 495305769 8502360 860845855 547518613 272043551 915195406 518211437 282816856 55348513 697785022 819818438 370447159 866915910 832140293 789266542 168327590 826252788 55981719 319020545 480428816 300308152 910436617 980785071 519090151 721366765 446642893 303776076 629435391 968830568 837430775 413216271 289957246 55066793 192875679 391661262 953584936 684427821 968146592 136160989 514855185 130923102 482295658 618782281 655605170 687133834 555304196 24597785 454188965 562138019 276035331 868055326 628896588 736031462 858331446 279992678 570782327 638858930 13338866 839457987 209456902 54348475 631324313 36531147 990255531 39346718 843606674 728613508 979234357 273649061 656801972 322500200 977312960 366687953 923303959 743272265 69016325 28034169 226717049 56226865 524191084 770279687 636381978 694744017 971570664 51457306 128094540 13811767 826607157 269750609 750466801 169744175 444663227 377857073 252036696 876000343 143256087 396198905 498245395 14268156 62572631 151384851 697836619 484158980 662913447 175450731 83496941 391120530 175227965 159352238 351043829 863580518 533820226 938158257 405882847 743144954 332500424 9727884 380247399 857153466 339532650 420931292 272069179 422906496 413045665 889117040 310947174 874228621 358253110 639866624 260228061 655426287 557423825 656254990 175550931 408101648 491926134 661597949 626710367 663280920 60249096 667592960 753301168 373692582 466200373 536674747 704109489 207280885 977703326 888069058 172230528 257072707 522523559 831083105 419776540 785880765 650050022 863260655 126231546 302108625 784070922 322311670 24593965 726382077 632117233 521134587 865949609 640177 597498715 639952850 448933429 905898883 661295536 783465794 650093163 925591986 531144869 711212318 696204951 332212167 563703281 363631432 554989178 905762576 988265112 460669210 991627530 997550772 708439047 20544606 496939918 615450440 425313704 502369747 391823413 200249553 115074907 211677025 326162868 268122847 329291354 834599697 882025612 980074984 825786020 743218624 806557522 994769903 223630267 880215542 539010836 35258403 413070754 891219842 833149436 405858846 18768485 818544248 102833707 299117168 710325342 187757212 29840022 558277773 249565124 554565323 326118901 912607330 508460650 819611109 44479856 238695661 803461738 814462116 143666151 789834790 931192282 375300858 665898678 30100487 932429486 442408684 573671171 318429356 61834623 128177897 769907989 350138792 821340049 152497376 807627435 226430955 628869670 901731888 201931332 544695791 216057543 821434896 683052358 103535283 239945064 123931614 601572207 364157915 334597744 199179400 925717305 420341177 787013088 576477082 837424968 149354253 637653667 39316969 885249496 939267018 48244959 377824178 567044192 572164654 574447237 13410350 793384909 284716256 876136566 453771502 41551050 78610703 36795787 526149278 90223453 627386570 739460208 4338638 662382400 429393495 256133664 117677759 502408898 297059908 961681431 380706178 188337020 881929655 386230884 899967315 482758125 976214161 492461850 238756090 694599414 233430124 492604406 894229691 671261177 613266540 430666183 233153662 738760177 173727758 726300647 9974088 526057959 494142795 528693699 859332471 257289893 247167170 449269397 267327706 344692350 192723294 126275718 658066534 604044637 283365397 127617366 680390389 987003343 944111218 81414811 248569841 286017341 661705741 258423240 1718438 760005472 645431675 788325917 694104934 539194200 39347685 961877181 224555993 462067224 818197294 815170090 562908408 21186220 941905056 200494283 272516993 259379726 13311115 755760400 82271285 934465100 65996218 824531330 421909947 228483240 187992490 856641006 230570207 439815345 144443574 510015087 422093318 181834100 497713550 812086964 407386886 416263067 155862314 716225492 510504090 607865898 376748569 44825732 117564132 549395897 635685355 897555823 960865298 402984698 441373844 904396841 992325551 578633688 812423285 727758696 411090089 212707386 281111791 12974205 102341402 597681716 129450246 593263210 412885138 459221557 900823928 919325868 259849468 874209867 317384894 398102968 868476351 49519679 357896148 241691592 125288637 195350875 235656627 748699438 382478249 84234124 273224775 179836891 920010321 755420233 109010582 343508683 267884554 559268938 216914483 147345880 338854482 613224296 757177117 499910939 43861176 825166656 527766152 99615739 259890260 904697348 903421091 710622579 999688316 54250133 984764837 47653425 158746813 396925007 197881928 335631197 204178447 584148458 290429633 950200334 814799684 584056493 575574218 784053804 749928119 87205669 652828053 338596258 42381842 227310991 319348868 266912187 935866786 119357253 171562376 438808062 495375023 249046592 345410763 318194522 78133269 137657644 57395469 172024337 553347040 79718014 174138557 591671123 774973686 34660381 917012986 665813190 827221109 399871253 568476443 445506523 239932878 756318 439443848 803930847 765528760 382656748 999480554 960630901 920293456 644235059 399608069 538785004 644513554 62108766 424803005 425145930 613963093 469997492 54931199 671899223 498185044 238081925 666311570 766932818 415390735 828330156 931764963 634906892 962306730 104717665 108146628 355417927 893143404 614395026 374061052 708104098 109662059 570502705 697986589 178347491 784683828 839990935 521774616 707144580 410827458 273669353 480017052 554714243 942155079 807488034 414167377 717531182 399295060 255573982 175094257 426998398 962514596 910575680 690538029 29780223 586893630 764268921 289755975 86057166 748422475 762086595 543536344 641790656 258800515 244072944 906707320 895634405 166775208 74367368 513952256 652690907 652266451 663570505 937673810 903028023 532729279 195196413 891216897 487023119 501673700 395919396 686255193 311839730 306899139 759679429 777571203 875790908 477568141 305113662 908147235 363309413 208982554 625209946 37157041 262603307 531324842 126076738 721743414 407204684 492806126 200039469 508080933 513319857 762254368 499244948 476875150 263187510 265228828 823799289 96054346 24485290 597974286 525673392 543551675 165423789 268369913 232103505 596939988 653432694 523125282 296101925 492880155 285739549 696283187 891302077 370242727 503041463 370237148 799057420 837928133 728475774 626942366 773145810 607043956 80412547 358596875 424646188 588058061 988029360 779836961 211433772 522149591 254858377 81362146 633550975 299085320 817772078 695462582 567739620 692645879 201276598 366514278 267708492 236583849 855474633 788073929 802841620 4521107 480616093 736292042 462341572 688378539 403143263 587223861 392058020 33847238 650513536 264748779 835206637 77572477 681476831 172645152 158966418 179554053 489294502 298558930 419794428 732308739 692498842 18657441 251633527 438131097 879950799 169422118 206381923 687065860 724991870 44787964 288692765 370340088 681539781 91432459 266078821 563239766 81394469 971971428 547979516 739189737 558450976 523700428 92171984 538876698 327117778 530521222 591759265 565301205 138942992 553188134 726273581 33852861 895335041 446985027 300378904 214467875 687798736 705356116 141471426 552701489 386196351 554730148 467244956 727033982 949128280 907993821 341647182 837434732 588808222 669926661 223480529 808547810 649808826 910542467 553982131 254554440 422180623 949343845 842520251 708585867 771092330 98270388 611999941 282620843 913122484 541898934 405948859 860609598 342248283 734655331 807802013 209231890 358343769 215497255 121640770 691326886 108434993 614862303 739034881 735234081 554005625 728380864 298816379 382486724 581927205 284123843 618923530 552452865 236053844 768110801 598437072 88299048 172712227 941596354 639022483 813358514 488504262 671230897 225620189 73452828 372783508 103351726 526283238 859093244 255629181 739693543 910653031 123663579 243424481 179769802 388718765 892526738 922643132 41544464 521998466 572614182 927179128 741198242 372923073 726669146 912696282 935042157 464530438 319591738 811911696 204780762 248650481 730212187 745057609 90735553 443429521 580108866 776121328 409306986 26249777 468392472 672454210 542006595 971360097 242024507 403394799 230142736 131185628 512139720 761828658 638402912 808509985 516003117 94736391 261468860 488481633 318659063 500642818 805948680 990565599 79661379 276894346 867544802 348266549 674193719 974218322 295940309 740636039 185253457 113345817 451697137 473569802 34928995 159715516 467477714 310776500 187863660 119105418 843585862 441009166 63117207 360555979 18296166 807173084 389044008 925368286 781439930 617873553 209848556 811600872 312329148 787632430 916196330 604923802 412605599 658490278 887519270 934155072 906156174 40829961 170359377 368449295 289783005 631587216 518497755 675064827 631068486 441726344 501670785 547576737 704677320 880993703 389540667 999230210 703279480 420653592 212378749 649669601 310535900 498752917 639559604 452586687 56811790 933114390 690018969 362784077 156812228 711124933 158332923 884977971 53249265 485439582 203755381 389224425 46684698 855389752 780610112 878285990 159236348 672915153 458153293 354126432 317018067 192458423 869095818 237777467 448525800 670652988 138795111 537968027 616319298 389973478 381065451 51229506 601561623 586886817 376215176 991621376 242262342 944669457 184066800 140884694 288887715 390044038 951435209 525347773 700805503 791316123 700193802 775627973 834852375 232565647 817436454 118327847 613688878 770335867 713819043 175061674 835419546 198684530 694491363 665709723 946288686 161461382 789672675 177184522 226735821 661550826 82935068 739671972 699530746 944856494 358239631 367605227 813575902 84927914 830119810 201511425 272480711 66231145 448675504 35351603 369993571 744331131 62237654 601483730 511503267 659962482 59617399 517273302 106208833 957913288 821654690 53849733 923480179 174394267 192705122 271181898 286987925 159611711 904376974 454900565 795312986 279189665 448661333 167758507 794835281 968861418 67937382 953976061 12552438 854928990 111325853 962219840 942544564 497753235 125914839 74928619 780730914 827106908 805987333 362448088 735961472 111152494 531982765 688670148 499700769 414462920 516239616 930661612 496777654 282051107 73900167 691817807 87353985 430936042 524648740 734843667 560630588 346406242 521109471 914975671 552712187 804105237 388928409 890816715 988212885 376676906 951821168 659644916 705503213 717744093 605878493 835077841 916457605 268238183 30658901 590257593 499102053 14754444 17048090 99158704 998049630 648643965 322694475 252249203 419618865 691661017 396525547 167582776 278420568 757527621 495183948 70157805 320767537 100418670 184462485 453017705 666225753 580516600 445611637 651029799 847872298 621287617 446095432 492757720 831023009 887245588 536522446 595863581 826103992 145952419 682754252 870518460 1479669 453101672 964089634 599068703 551535057 663914945 559303377 667649445 410085629 613524544 3367947 657779855 805169441 623593835 118041963 291975432 330927510 336064888 628569745 590590653 94370001 891465160 291270464 327123962 396286596 819782563 646641717 67989829 932106010 812153023 903405406 177727350 611104497 606911542 919666719 60281635 944712380 825515603 211121947 129318439 532125061 428720223 88272054 567961651 740333283 747837224 908217083 999269669 961481073 769431918 411669335 168493500 106440986 22145407 479856995 615195531 679635859 382029352 147359961 907252726 934275616 473619549 972697011 267492007 527439913 112496764 118094976 876201909 763850871 92169703 232490363 722559394 51226153 125344349 588019867 952092861 728968317 908174916 993234133 614791155 283532726 797900110 602883404 539385379 814670697 666252184 285629335 939638844 453188984 237990444 229617234 802221497 926769212 712149590 189715743 566716544 440107484 514472862 591425345 786730042 767607950 601227534 672268745 667663743 491004837 565515297 100961088 173722173 451315425 218949094 112603327 222959778 4314323 704947817 564383252 800600966 298843911 15227390 663531986 574804349 930118114 1190833 53996824 245694213 260226051 847414240 74807494 231170188 936659721 713580217 72098843 65029325 996965722 961756407 400250554 648976594 475560243 399369367 307901537 764999896 379446928 959243542 486567778 226091199 329483341 280598140 237712923 322533150 511699899 266306043 622149774 874388072 152527349 735228516 84226628 695696241 620538685 240754199 341029787 436478829 705548375 767303533 34426370 202963629 626411789 965257607 925123306 864957548 372210630 37909324 622545779 456364411 834910165 558306641 296453559 608776196 99078407 943201518 936604334 259960557 267573002 469956812 193852463 597416977 793386698 421006860 866955268 526812039 95150925 353282624 642809258 30191592 587077172 821911936 696626240 723438985 704297203 928628139 862316112 335448205 164414184 129389359 735370388 262660094 901564326 424721879 519002311 357756159 438818227 37455552 866820591 396639500 136840703 910390496 528579236 355030148 576076989 885623828 93573773 433260933 167308285 812375487 351053936 973180447 814084807 316551594 15921146 95601446 992802445 284438632 868533946 754504687 858184856 32996822 107118242 471877783 977727712 108038621 202589760 756187486 73128741 934738157 508194876 596341020 188892039 732370798 143776925 419178776 516997512 886306532 235013799 877930961 930660007 963075073 508595068 57417311 323137871 729504143 116906438 841060553 725434654 243157317 109163770 839679879 630135655 990840369 912032110 140798845 291621942 267273853 422636204 555119336 226741379 396645001 667256949 292188525 220407716 659259039 300231309 701159111 746326524 838099294 378777009 331594930 217421941 32656500 346931996 394894487 558321675 848023786 557506638 59504416 501742549 899813342 745802133 18777643 162328555 918226698 453196562 146861616 895728690 979970330 321306694 957270410 907174249 668385641 286163967 5276199 829533925 975846962 834436106 379958143 781574343 315494945 919853254 680168908 323182635 36512764 316367250 211201468 73532608 952220611 947635067 323885778 494857190 927183416 369138797 666084173 409623490 184283793 631740292 657325315 827501257 149532290 682858299 251609972 815484177 467718986 355262334 782452316 444446427 240564890 109461174 141720859 334661466 510724228 540763612 660328763 891501727 168104634 186463971 622328167 93314943 302904628 61288131 461846003 475681262 663361313 843372036 300815949 78908637 918557002 814847032 185284601 14720057 403774737 413648541 503208023 5390009 962025900 488693380 34452308 615737047 822704365 711609699 817664437 556704524 865925198 836101771 432309547 480236929 932373980 756116017 210683612 837237600 527938496 404663025 461032210 192152208 740546998 14526218 327092877 173289688 46760387 242670125 145920790 615182273 190813806 83251826 7615746 68930824 508907394 101676911 538073553 692342002 602437709 718849769 504481734 465781178 541652731 200272813 302688994 339533339 27655350 889295157 312229017 495296586 18247741 925791453 710565934 26318403 755810449 509897593 35814078 892099545 522814601 734867237 781749639 367839528 740715986 818054843 422017327 252514497 513111369 266785447 108747948 813523923 266449151 756727583 542563126 154156592 171968257 279442863 715292862 237910007 851290802 168654251 550670455 559131824 964428338 193330772 393764728 96526874 558970254 930996923 972747641 183867310 372201721 677892276 391422615 558557285 557092517 766954945 408570015 494005384 311806650 407233123 426134473 861015875 600312475 301177355 721222700 470963718 145634334 69489196 589363964 107463770 973956164 279594382 836677061 92689007 273617422 421665453 318234454 682163268 367879079 175767358 118431181 158485058 313975736 684492165 825085788 482246370 340419020 948167000 427601491 992597078 303111189 846441612 886391281 881528352 315139995 745971642 895936417 125228671 165719500 938280725 989549217 692400000 998104386 99678684 61122703 534859658 194590119 369223428 490055040 389295744 899514060 555566808 242274891 670877012 265839882 823479246 369055568 182707991 350560794 344386902 185481916 675406092 101582455 468726935 151675961 423765366 673945043 942370876 762773331 553788836 163992851 317177994 754548959 698166623 508249125 253085692 295062328 470954977 563591182 663719558 572832900 954640099 724462406 921501343 659465680 876827604 632865986 403160665 325091667 21111351 162439964 79912975 240429383 289947104 499508468 94558615 232447424 407432321 302581154 663374310 836469562 142719741 54301176 657255786 176131764 851531212 711207121 477513760 26040808 593362263 818035390 436379489 191290053 907361644 300703001 560416664 816618367 512554146 537294006 328886571 584284266 556811904 104468963 497906363 248765420 307248503 307386420 75424163 763594143 591596028 779464342 99206152 587729411 875232908 212667411 502908262 881328871 815647344 229061169 481947145 285038550 34256688 772322575 217049643 379534671 617295313 34925466 279527728 775935154 497890684 539306821 574481155 869704430 282545136 589130131 697468395 982788859 783784390 477173483 992691733 711146840 853194045 603288637 547862851 371267058 814066083 969464863 439975886 861672553 929554211 115146160 237601365 884854781 919789971 524913827 950244193 239626860 326638732 730556221 959179083 535945068 545198048 150302957 694842642 966620308 726137109 879446577 370816428 243367267 290788192 662811742 246088520 837231661 760778518 256341230 813717661 65765765 217810770 545710826 119722110 664623627 90339296 119126987 7298728 48194806 289281336 141663989 95340598 26291171 239866345 895800292 967542618 35440129 198958967 531824687 275131949 387348210 706155811 642690059 522816905 985830775 471841399 23653697 248773142 101294733 733311409 931592628 225758537 528160270 834424187 168880371 449849239 183591112 576604876 547066497 810339929 227859458 114031482 374629440 100682583 822915109 672758633 139473816 916311109 668725873 210674893 738564265 973612822 254930231 842377647 475765750 717875916 660293425 669288287 207938416 584753569 620689871 177251455 534692731 594138055 837422119 453845878 325361995 786100545 180553284 307265726 776894877 256745461 503854958 263803959 607615521 305943461 69752110 987989862 6674213 588711681 452875546 840032657 688273952 451231627 225181032 705089060 409448755 728321300 911633119 370405532 179860713 416365730 224717466 456805604 690319382 424501045 409302828 933141069 666718547 926949258 798963880 330226456 326692782 903019103 699300529 429553322 859748154 500305503 587137828 138014496 177598134 552429903 165096768 377709194 125426918 357037995 287045110 42043985 900698870 332862462 461062376 836710807 897292394 383595806 219984923 904076538 485359567 240764499 397912121 753017542 342637457 524484540 846232507 688323670 209466040 489564619 760451947 107161047 391512817 79865911 809419209 132559091 29470507 727217436 10237807 414731885 769741395 128243726 778427098 689855450 120304453 486991943 700486761 423983846 943387021 43537747 301514164 240176290 507559679 812719317 894999290 960456373 201947590 223346275 535827946 540842314 666014033 990675212 617013332 777157330 57381093 37538156 625247853 145566912 36737811 963757613 7458722 628018420 578491876 428577028 254239237 530765239 622867575 385940532 725359210 244031267 139164771 452845046 983446857 95619155 975600894 359500098 546814326 46845647 560333618 483560876 328809193 653661991 10985346 392050605 617277217 414892315 235954200 309460727 773927426 802234161 772021782 297710004 424652263 348614268 297605567 559951546 962430636 442980334 435870403 50070599 194089828 946948450 263818139 584092851 673283614 352976685 59315805 678358159 518288613 791352432 131791589 834810045 728718430 225763047 535121638 393116680 555407770 110904272 713847186 221873321 953895471 309095216 602633929 820589499 660313824 612922549 140753125 55678073 666293762 549835596 94361852 326538510 503254245 205208353 511142572 722156354 540585303 791967686 270706426 222709490 315918899 94009659 722036195 588283909 766055810 197301459 669274013 59015920 371944595 63144121 646308645 554632032 392443924 647911302 290466294 405369913 362500717 172735709 34265593 315768929 922381591 178633598 589531463 588214064 428272460 424184008 608239896 501912814 997586895 152844709 680857477 546381943 215477339 59070063 179211116 105078074 450910692 152633407 219009231 9098982 724551963 412204234 185000159 352747758 620535868 520072567 937001455 808754277 872512718 890103468 746402135 13503848 553177163 391898070 429601219 689631488 419624866 610543863 728174740 606363493 123726374 580836198 209505804 349007337 410868818 52262851 204941305 999442249 367925258 893494701 307417236 656489773 831996114 651307088 477455263 717714018 441747301 620803294 570542631 835087748 829080064 36057211 557391360 583901741 601165691 93810022 883745700 199418938 238685232 700375047 847807731 424274522 220895154 352717832 559310236 384776352 355739254 792233340 727347176 645943231 763362430 369257942 436396396 359675740 506683622 225446885 427599648 215723889 487169963 179413983 5674437 371251302 583159941 930378130 916556056 964154155 62983507 626132741 945162085 295672154 761851533 922513054 474809913 587150621 517360089 56856432 131469672 186788286 616301892 171893488 988542031 329420505 494717838 699411395 374942516 950295172 503144935 37852256 958848817 259587006 351555685 570555951 208822295 879784320 730316621 328339247 271304444 85781400 938205645 917321649 152608452 682637595 41209094 794816660 821138397 334120246 818416773 48194521 947710651 54661117 136846679 77334276 617632623 281415707 856648306 398027563 545070020 197973450 919129872 728524427 639644061 951643270 427297565 466696555 920594898 310418390 284214882 906790655 992443303 145263481 867318678 60250202 109157026 516332 937609967 231425226 575448344 315309095 470026032 339101945 677105872 458152806 92842870 660248029 557005182 866822110 832539598 832625436 346610123 698723856 606962354 453992158 647614218 795563527 691168650 851677746 493155565 813321224 557900128 195724645 405435117 763996533 682693630 629620822 918308736 745063546 580207215 96579242 290823767 855309719 393329385 183675824 260980013 177253139 850725235 97791775 484069229 859592949 617886393 207116912 645409771 950020908 2230962 518934259 115453155 657785233 667570396 881815112 442801459 111628585 540303243 57140840 947668672 881573037 663099064 249473956 521381549 661182731 733596330 900734622 892700756 126164978 99286561 442448521 182663032 21415683 850220982 961394222 449787692 416264958 521054153 941637859 453492563 94426672 589091928 424573350 109924610 377392505 184131896 227554832 483767483 467524193 613356183 950754811 317618805 172117455 99815507 474027335 914099447 30532416 674310236 288604985 639321441 157831392 157317291 403030915 543519980 756618480 762137731 994469324 910804369 902395069 957968915 241318293 416020232 598950699 672648705 443133957 647406835 668568804 406415035 273770927 24208640 358720301 11856841 352900454 193419862 823992770 124882812 520751211 411611625 341838452 538282585 831585774 768464571 416132861 369143913 159522847 138613138 360937286 74244250 548970327 518188264 453611320 254613386 242932502 805701374 960611906 941507700 434102459 919159400 341785803 617991618 78262141 81787112 46717022 998149722 200472979 501381574 5917006 263196564 417579304 672568504 86778707 366488621 130569012 234171102 145803438 47311201 44550117 784341397 212993500 60480898 880461140 210533015 316179442 773108342 941679335 875718389 785990477 639980353 548317203 808291096 123675562 540478369 132309866 987449697 31336410 938928271 388393387 71265073 867808601 723080780 699943202 339154663 715784644 119630836 820183689 997528055 914327145 607192151 998538943 125084784 716298742 749042948 271799766 210578728 695620204 584517947 311364197 318906788 971099436 914996106 332851324 511075074 329505255 632844122 12320664 930004522 231905378 448888040 848422335 738931629 122310108 12613049 804777697 974420529 203653971 486440964 290294313 335166883 415965822 516528635 588117320 482635747 308678333 897908703 576092498 567410230 600761343 507982307 437424093 522542616 447713544 621734038 735462140 615918879 763971042 467419971 831506547 653907472 123411942 17890899 532245242 980395071 192399214 683055323 294660830 816645549 180738819 186766249 640443632 651438093 922516764 825971188 784514078 370688392 724169457 515600461 499270879 111275018 286873876 791010681 181271310 364982542 592190913 676927531 656288916 194651468 237408791 558199620 717673863 939704648 309272610 987159457 620103871 362901693 88987620 395471425 372709338 116031865 537926290 348796178 329590449 301837132 340542330 479345182 689304196 62785240 96909830 333275373 69291967 763387436 703313047 45288964 622333717 369159954 870181142 914652765 805278926 392463499 89474428 833267358 628628195 146029433 684697015 76743961 475829256 157429372 738695038 653065530 761124427 719651280 837753828 641365888 410593099 55005924 878280058 425923295 396820657 61761203 649246939 142198077 933530499 843032193 668199389 523956160 156377082 874583578 372081728 205023775 760179960 157876077 122850194 59612725 897732453 927781483 529939452 935170729 655915600 667562277 859642310 826003972 404871338 837236701 131177140 339499373 729075820 407147351 76246144 375012039 918747516 796643375 249794663 898005934 875521275 350434046 487659787 766942251 94235854 593170472 168488305 496394838 983064533 918383026 552232283 449246415 3455874 205397244 97652202 72837655 964681058 645895613 258839737 166147892 816479696 317484917 717559710 177660597 712667036 714834494 439774104 476344877 717734388 943312378 688463536 874773595 281327726 289987174 901870587 345328066 306592405 675800475 874641876 373585116 613487114 844956452 783350427 327943550 888913943 368582413 611025499 532550147 147211628 36160956 843410560 218550733 581560702 193926936 50357582 122971678 311769136 857820286 353092508 18159227 731940412 725465460 73507505 909759966 731197055 315184104 61089187 915054289 641125434 151311547 19698245 166818030 247767214 162671445 982723302 663005474 609956751 492288262 934818522 516277761 850434488 884770478 811024198 128042473 722495259 545712913 622331071 376925429 714502165 491386582 261601491 834796999 685914493 303760334 71397922 48056235 307993204 294934346 929947024 484783177 347970929 929347569 769459973 7219834 627048937 554085797 704889218 73059314 202938912 536406637 327358787 10592451 562560798 522085313 336775896 709940174 645721059 917827088 457514557 328911870 315211225 350212329 347887218 363301894 605424048 372610356 204104440 577803153 233256020 959523128 811817491 716077776 967880927 599706390 335414352 409670229 372795170 70465399 612474948 694988694 45912626 611420185 844432354 83987583 717185548 738118357 489924063 51159483 239797522 912380965 577544924 244950914 462741053 974630726 238269041 216782303 21585720 321183965 162338094 536449597 262316272 326772810 503727209 365169795 585329979 901609122 435299171 6365573 744751729 800877897 517434917 307042808 404552112 496429761 617264892 149295867 564153555 170273626 693658087 407369636 973556128 699481828 538432896 82699233 699024421 51473333 719877426 854177554 129032153 216508260 742510161 146603597 126192468 467669258 862221040 160397111 275011648 408352727 48977062 761003424 577925403 856900000 506261569 314737609 956221824 366066085 572771592 858432001 921254113 611329770 451171101 359278312 932979059 309243903 917368733 201362115 564840837 740486957 681003407 223547440 477505696 324467154 753794925 825752311 716308214 6449278 27658380 545963398 25956034 890846016 597299313 603203974 843305960 515491883 628075040 334867521 714772591 55194066 87526900 306667443 198247347 822680969 852991942 238414528 172335798 987216378 932927361 884626519 285740220 81444714 732931876 852758531 231522789 713845934 158270037 277800554 840190221 544686415 922026998 290465751 616154929 636428992 482908160 895065133 720620552 63606186 961634064 637410403 499200247 371690513 66406133 938252933 462918892 994966712 978427405 921474088 386419380 386848362 296521051 568774262 136491699 866262864 288661214 435596899 376705004 316953704 462601503 389525147 539792904 676864279 125610704 566345869 400829518 800829876 315232572 343148077 31071915 118229958 531777420 185280131 555039631 968724326 279487787 451998979 937051964 670792473 951994305 794384426 197013954 893517269 236523723 376750254 563649427 533057541 546768620 855010443 547005407 523347098 299651541 807724894 808996358 906097198 857499556 953980131 200502293 916687528 480294398 244503452 896168139 44355038 521964492 107077440 599107131 858258902 128520180 528499444 173656749 260307764 393395542 417585525 795305031 901553041 941166187 10028520 395556933 353690535 764321534 652569140 171265516 147878608 211653405 62388005 147573115 587024008 396651018 924264980 740205816 619302553 489098832 942089172 868889010 310604139 785934928 769370275 951093484 249256363 690706293 109045983 982004003 87669043 17994630 551333996 892657679 919654409 416381569 933795795 702307332 603192178 778296794 31676588 526991677 119173911 539771504 759430210 722473573 906946118 481125123 381027702 739506517 412217142 449186267 929092258 179757123 599673491 197268598 301978506 462792220 623563156 85663681 863826764 765361164 445172078 603896699 782196454 976468385 140886851 381712605 214432834 515619191 116337361 966260990 124761647 552854616 534412402 701724924 311595523 463917346 992261342 341950245 688825819 464380547 532287966 383159182 253256087 426532488 306707231 893342035 61343289 243409645 898254072 418496614 902068296 102233944 512245067 389650746 231825051 942896973 373858296 201883968 589913733 791148 373168172 368041868 233027464 148409617 87092138 75706708 745884624 397661117 926382010 566456239 418707194 7035353 565054676 806624146 889052226 331124116 615819021 209757980 116153276 615548821 399910021 568045472 131850675 175558964 186596446 469899910 607849678 664043467 918156890 562282537 964349760 759689374 962159401 472365903 499070005 363244018 944526337 720441849 987103918 523989344 635538667 375958437 517845648 563724436 966157903 566782305 724900507 51216691 699988774 295549769 56534341 292902111 558414800 702324919 813220509 929039936 300373592 991039473 877413854 313720480 359888095 797546691 164472016 363165887 642526996 981024257 933054484 837689642 511900541 974844525 647684630 172027144 180850859 502729194 787527836 566804523 967162825 768369587 663534839 281284399 434295719 212650458 364965327 814486159 608544234 31043363 995485246 815801682 357942143 938592884 295694580 20357669 999201215 254460476 40652313 847772790 817150706 40242580 62238233 110506969 628983638 989910937 122521676 928208265 831019986 362656455 60080310 640974027 342810432 659341411 419605901 350420334 277023027 466136265 779498796 527772312 252477590 676898378 77553977 566760111 362486555 687980109 960776915 493477588 452269066 927578564 210234816 97941136 538853919 917587751 615739170 335606002 78364187 567286975 918001985 135221379 532821733 338287402 588455078 604195854 220676396 822841419 416248160 452205212 50490368 134685514 243297459 478390679 374054833 402026290 397070918 963528985 100492355 38340739 984979056 849453228 775692905 256996911 485912753 696206271 961120374 903341786 459006790 271423455 142351351 152350333 731690999 22411310 602217110 69427605 478809177 243520440 842013797 504015275 985796282 926438969 966761327 947461045 485798695 182052323 628622724 788917126 304798015 465078623 497904786 412794619 550276513 17105199 506971672 338761293 169114832 24162709 347156323 250607653 285128678 238614445 642702205 479639830 738418416 695977659 241918913 368214850 310366204 145916425 876199561 340747007 803043666 691069366 514934458 288931347 485092744 214624945 162920952 980523947 877189596 5814449 373028952 33932103 63264401 943369295 392696264 3904355 741228599 308112311 221851088 812268003 186271758 377807578 529806922 940265280 249160002 346027946 832497194 211786977 67695426 697920444 657197654 521266507 285313739 163534308 382422061 576371641 631918348 70655703 804676176 143608833 530797871 91442626 129484194 667508008 778301770 576760907 752271820 133296067 312871916 375465987 565417930 71842053 578837049 959320775 962823981 549830888 81708156 867702502 230500026 125035706 263886279 451016635 156461012 751937038 766385483 65282208 49353988 86694553 125127124 692164510 471641360 602120008 585489298 521140306 778114357 652509342 347327903 856518342 450381711 637094855 947320348 284145631 23673431 809718934 868868198 821267323 158598186 456528749 788453980 473696396 509294059 352601402 110074339 285992356 791813337 834598640 656508585 325373480 440695049 937786008 701404343 752747187 389067230 262881402 788947064 50298383 759661650 894978815 655316239 558663780 284612496 854077145 648833912 744812897 693522950 523038298 535062639 372289695 863624491 882034443 201458106 304251401 289155633 684998566 489442050 369683084 553747650 80524684 151972297 212111243 660934639 656262273 460421812 147054083 650944124 901086071 676111271 913113975 134628493 511400845 966794512 536336792 277283216 879315828 943512349 533598394 278981702 474977114 603798529 150609464 434723926 809519551 341834990 57183996 30850371 373011361 913906250 754580627 919869765 475119570 933692887 364872143 591750996 665755916 546058167 490593559 399522697 328800049 483868419 582869809 938263046 52649628 472039213 746638977 666156740 451397599 346073132 38665364 355990588 777003121 74880758 963352897 156478457 197648212 487185505 306655807 184094360 178949973 446600295 210948286 808578987 925195725 785080934 609533788 857682098 271152950 928667418 127653555 803798571 708328052 12006711 259442528 136893859 648153138 502138050 744642456 941836137 608347974 833269937 473413967 558103945 650445093 404974435 237410321 825453398 55681969 862872808 333978877 815083448 29996592 323712099 407715193 684376031 837381039 546363495 907903125 545343671 442678510 646603783 800978137 834264390 230548571 224894215 371949592 764265530 443366133 967625108 424953171 321759981 727817638 623841820 532566407 3697681 911952199 184708757 917541263 289811839 950896514 486989938 133918416 52881914 984533910 369447782 781316359 495018414 255767013 940465083 309017173 768051404 256441343 645812668 207602384 118369586 102067761 132878461 213812627 803432960 946070780 657909070 583364640 598103990 186839750 570101988 208940831 982526278 799920054 128251160 529265189 671889050 52799797 195962168 531338476 517983552 482455661 941181236 862157783 503124739 101068809 214314920 982319269 99576187 902832508 761306810 421946435 848618560 465853098 573764664 276443580 298925688 338299254 600560696 728233811 266902793 229024406 251558150 89746622 227755643 483577089 651887805 457812863 867156589 344753915 481850280 315117366 366514908 300090457 752742465 336766223 134309964 909082420 789292078 398632639 461891726 800083204 616129035 372834695 109217623 287898964 13017368 647182746 252299720 725709590 289855506 344814620 904570446 3297642 382902349 427354641 976294074 718286016 457803574 683442153 106017277 314955480 946999204 362599184 319889526 681455238 465216818 205033833 106085802 493171277 142759153 308144547 532176804 900260811 641352397 434626062 808147153 547839914 30655745 14444671 502169804 821551216 244298210 95332219 965306269 276301827 564918758 807991282 117272089 856502216 710815732 584039564 791586421 490125752 508845584 851828342 581914744 142477819 813110582 380550082 363184472 320473156 182422548 421120535 675212946 448720113 286417911 669197663 737211899 846218532 501742555 415681627 903657962 933170271 567953600 573300519 916809943 85754830 130201416 974301107 612356673 900526143 964670432 570611582 821076021 254559885 544109308 358307261 937330235 73862165 184070403 880107166 275315416 950511723 712737830 886442720 83638347 526365372 485049452 806028256 748777354 902910508 144806173 825270399 743718523 914663289 162967045 952496863 233091780 117630365 482509801 602468114 745964515 829082198 113863147 17728617 330144520 686409875 80493087 404644075 4628142 684896279 935914526 818597796 861179027 551688356 175953887 781234699 239821418 282289173 902198184 288016072 524380425 663504664 957604754 752101704 621182716 361818310 333772284 606860405 937068701 367723749 912001734 393664142 470292249 905331779 902786470 61527539 664847658 984550342 635054740 844495491 569774348 723053842 791284602 247907273 317632605 127754568 905578163 101143903 462436821 559991505 850151759 444238951 272245045 824855972 191270977 639412260 703575413 790755915 21531508 578458106 980135692 350636462 477733661 45833534 835753368 433983550 846240301 688187406 149784792 70900453 709263984 201371176 872982527 219230953 559782530 21913803 531329051 663397725 108779533 250349882 723982476 243934664 621546401 496696913 536565096 458916950 923375001 584900393 96904123 910657184 621509629 280167474 945492505 324403250 127295132 495983298 252604302 925697545 347122811 341118904 132547157 354416294 418223667 752639070 307332735 160276532 34556762 561636888 107949161 96859184 411642199 200975714 672935161 502313181 84753829 799484914 559473733 518416945 751675444 656530750 218521549 187114591 988137655 288364289 968797668 561828770 957397488 287099375 883133350 162997739 793872942 590879145 916457465 129070583 530424071 214804916 98885430 78337183 264822146 438087568 728858152 447736887 908665428 997041280 990304333 160434095 842521198 558688752 850754642 510068283 852066121 931658254 111931558 29701188 801713510 740923977 234859619 80609815 102958204 180167670 401501383 233721379 919967718 411061744 909686713 925977730 375146472 64702357 423163195 866147195 151703294 7730392 90192652 286950971 949691133 239214671 300820860 481709477 801319062 420437926 849261851 29889412 619983287 767505492 777832104 648644607 996831163 610411463 940688255 99511952 288485153 699131149 977051453 954599745 64590288 216759969 937741285 477088791 473233464 422994668 568359705 668692453 880024237 715199613 94702873 978226804 638487456 43457492 76643493 73606332 633824822 124447277 446410075 809837375 745925210 415305969 19961309 194553007 938575619 519907543 965318934 573870132 831674148 492030341 290468671 291298263 853408682 24575804 508513271 989280298 153441077 345528489 614420433 711577928 294255045 827926628 24038757 102502443 110420660 761102135 772472717 977138238 139050499 605454706 286895631 366835709 3842513 836803591 193724473 410472913 923888214 844360533 773216990 91608739 702962112 750042116 722214320 560928362 622584367 770608501 883987923 101823544 710740931 171925841 781590525 146433172 226672259 802030614 792605929 684787781 128842157 718376927 487619965 999484957 988119122 747141836 409106298 256399103 479010423 264379105 990604494 89807407 821997676 804580956 897641810 283895351 886485882 950598407 431321768 231129210 869083533 726715577 56682093 888773775 455699735 38581591 212122587 180626549 849214918 427878346 551329706 569316614 471915629 432306530 501220632 749488806 540979142 485283574 569812773 693618983 663131406 659263173 104780181 967392218 837213587 700384871 322129429 881666347 114577405 524494147 129228671 68249716 924480531 483687756 930076800 469873649 674886580 894356352 821925442 419527506 259040010 486251518 260895516 482461147 685955814 447013859 103249668 294829689 713714769 571447864 171271096 543375858 466439371 394997343 59667277 109602894 231501481 946963843 42002232 972753292 114494034 268113680 317480590 437371500 597930645 627562797 19319291 533980191 203136678 873922556 226386206 659997077 8473330 931113297 236773240 935345186 584641514 894722839 407758402 555115446 865847275 68622087 696437474 449764630 91324571 779813528 570367618 532476948 573213173 898338381 680650787 27747862 730049316 516722280 432493069 738219408 794490889 739264231 651136886 734496475 785180764 15533283 770470948 728478949 29511113 930995099 396011010 733692204 792061546 925620410 141610494 167987211 545746853 231786194 360710953 231744127 25484673 468692210 509554938 367770828 371601381 488646769 456248587 676473837 481688683 471634576 279858152 22322356 550799969 384777233 849646529 415089226 560288814 616868370 494829644 713181448 972141508 525689622 596147526 238326871 291400185 988962665 960716317 942792699 327049374 898907776 50732845 485430293 814817717 487076870 268765089 699647674 485797496 663822233 646746880 755308843 681187642 202542709 958459546 512800327 825049928 718900991 307941208 121960240 600742013 103765399 431380159 553319775 935401035 994877616 634707949 398415455 329212377 209054467 947531711 438968920 961901773 407523629 710108862 598569222 803020676 855294331 90716305 836848810 840366314 790043265 663172090 551524221 343940683 365750081 67190995 730896025 682299289 711218209 431053405 118609020 287946835 598579719 397040247 251004312 767088107 659935689 778903966 402137546 880817933 565468124 530931935 671820702 752899383 678139340 784694789 692623848 339576141 350781381 67097311 975178509 736181406 54782740 155631293 362223055 621224731 773766151 671551258 4550213 462052598 164802479 496169321 440196554 450627119 247100407 477030579 71096900 562069105 884621911 852965892 952779547 526915034 908096292 353031163 740188542 983842955 909697289 712506842 979979611 816995691 500143433 564669513 314052753 120355836 845701041 576828629 331656099 772799878 465182783 399032629 850693577 29971207 445932217 140094005 999617275 218750870 272811421 681852794 315437561 567247842 704934369 376893281 515611338 981506171 354902520 188639617 145109401 900334944 958286036 143043532 247129337 753463795 885612205 675381425 176052728 131722616 163438876 56884192 862157408 701547860 122418003 911438588 705194854 399203855 909733339 8267400 90672359 901934384 481899055 270493050 297479085 353463964 611378920 287543389 238150679 837062270 683305372 297250790 216274307 442290409 63022825 197149162 527416944 433168911 461305837 860455417 814943009 686043968 65541528 786833156 413584452 116934296 346249045 66247356 269051731 358312886 975479240 138522059 6826918 778666890 538048403 939652839 448360586 615874714 227099367 777622637 166998620 649620117 313290319 68283585 452924864 739014033 763316809 597536021 583429176 499296597 926870531 3864550 527988946 668276219 953637759 61526288 730998297 218650389 530169738 182719164 228106316 193600190 388182241 741412482 685696062 157680948 638517246 389275284 70249255 133689344 850310314 267777385 24674329 998757386 871314123 861733024 477670134 879121089 18262301 784828109 424259182 978238200 296801817 683654819 532116798 627600525 739606118 155624387 996911563 361241276 130224593 331049678 49471343 341236069 922999166 797561498 858520376 787717053 839940254 286000784 136456168 241438590 656799542 904148724 393155659 791914158 518988008 856910092 198726785 233186028 424579787 836608121 26306097 96935266 905930985 93759813 764245767 64698790 675344418 565257032 255794531 544677587 456113665 355979144 590133851 951797653 969599543 119649744 960766060 398876660 68416063 531886069 53745369 227930248 77425142 649068180 305211361 738215727 464477753 372194980 674167213 131338024 776860306 233919891 530312635 846465167 263482324 798023968 969616862 716242777 798570158 148179801 306975569 35974503 497426821 254491376 554970558 908557156 123091542 410470498 191538737 567149123 824596016 499004701 921591200 211100412 984181489 594785361 845468817 309860387 173071324 424627931 883498632 787245362 688615823 662553332 593340003 260332934 897164430 558654625 566128970 292075605 121200756 83548397 787465574 60069283 273325655 187256284 753523604 692415319 833079594 323005290 369520697 699065115 941741023 751008743 178358198 987191272 412348127 97495343 264353283 706818789 531684194 377540196 776289434 970381226 614917113 396514311 18051882 24589431 459806358 49019338 822290594 963381872 501196580 116394820 517368973 421066784 580396951 259074862 878896563 641152760 824236080 773547736 322210671 82503110 197887831 334184510 464797053 938001122 780879495 932924646 628862072 570335220 264346697 559244491 623737826 13637200 322136040 217052337 69354797 87656208 52980028 922945922 36065466 4774612 137424362 63344357 366945630 530591617 943958801 594972786 430070471 218358279 310800803 921858122 736731072 663541467 863903887 547604358 220201591 273479751 521332955 369356974 910523477 613279138 648175962 104042368 648661687 986135111 554854651 259085916 121500874 276353959 356336362 474396336 966828486 886906452 751447647 323442679 252038834 514638998 470358956 752789265 396456345 698064840 812177491 962215194 850476027 961775906 612113990 931815377 830025022 403956788 506772581 791628577 197134570 193125275 537341953 12483793 75241866 850659672 408386973 925196493 793563760 468797343 917952701 912703767 84351128 128255082 162914785 506948065 354925174 363591334 311730330 693973767 711455650 74401338 224075364 834789953 552603516 831026001 701292074 278102833 630215575 216375641 797347358 868542368 578630387 336993431 225502295 607035228 404043853 726356551 566318085 175686986 702686069 389432739 823664510 689473515 421792645 548808497 62627704 476098303 664635874 896209426 308782731 420321396 3687610 271271660 287648102 132047500 535273179 531246798 692311971 748431788 558244408 138889957 764272413 708484139 314393507 761529452 649220575 538058727 732957199 652130340 726974140 483163575 654570582 741305539 503584750 482255227 365222709 730610050 364357389 232442960 871758180 555010980 590454296 579656337 302721972 135763483 522086086 174853245 974138320 294042165 960664871 167555202 753925987 811347257 115225854 477364736 761547550 861174662 497067465 733502754 166450545 20955707 388220869 325996241 887898041 903067574 727419804 571644135 102411841 773858380 498714438 423265447 233348210 511310292 983734293 480617104 411151499 272866887 811180619 988176946 835417379 76120379 332268250 497072539 267038914 907253439 445929979 806216611 37318671 641882319 231805684 193039549 337040131 207499607 577856375 580513642 560039188 412180405 316867366 253264106 554653202 858354581 151649470 284945207 317916197 595904553 247584257 463586104 377382259 309789588 182532151 383163560 861226333 223079277 655368884 343507092 735791151 462895109 301875330 88966428 772743775 645485925 215393832 799332683 500327186 385917289 416674178 282435746 565377747 163968552 42314041 325694876 364478438 222773792 825115457 559734708 28093580 190874873 483894597 490485894 281820677 913161653 751501565 211103786 432590687 90606506 419033846 49723650 890633298 316098774 459854159 141259826 590918576 903001731 309472745 52034935 654843424 792057876 926416317 813936198 853922514 425021930 445977631 721869342 432465865 871956117 624923469 19636430 704668705 204307481 832526273 531805690 535112417 487161325 897887369 351845164 57758068 623550111 683411505 129808398 524869200 709344186 296994713 602148508 465422513 829183433 408688776 40186412 761297079 27543598 420322592 908391797 424371034 726345069 90693330 151454249 610020557 314932224 758594645 427835494 24472886 882897534 846252268 962344785 485916053 729136642 860811553 685739079 938834635 477287775 994806766 321137629 380345165 560870288 385970543 436049808 622603404 664596810 463109532 334389392 35200676 755819629 269610971 976469745 808860835 623784562 161114392 38550806 696830783 552933283 88686472 801302889 429834445 663063660 265526879 499007915 571347343 279067779 419623923 902020055 15994 831906481 116685063 268367155 94360815 455976225 937311147 193530220 539962227 288150542 94192594 78870676 635779240 566049659 450971387 121990582 174303324 480528256 232669919 391698220 284025154 620850327 903937320 501214717 973217486 179378715 533149483 494087450 982089024 681475333 654731199 847006995 11746184 627966639 593225434 232274876 700438871 395525887 533010918 44427146 716038337 244231193 891806436 188557534 983596362 79800823 253531580 939524859 677731128 704076138 72212509 250442670 115504546 300383514 89478256 507250147 98679047 994220639 696567345 767290693 902227268 179452999 554008040 51308412 77544169 517476641 453676701 575930273 938905484 684247153 67279848 181494438 746509699 332247452 933107606 223197827 390022935 270485600 668458430 682419615 319373066 868202837 713382218 328697419 756523853 536745264 350732463 504370827 2285419 966504182 64540136 196481640 652577901 954851469 972637090 689940671 96038742 410220479 830738933 435107775 774907662 598894146 943814645 45234575 999867124 709935310 711205372 715634194 875083398 275535135 520592123 576127490 608825051 840646269 567246641 441783815 428394624 750986113 804607942 73826855 973674050 960952003 587757561 605758880 962155703 388264662 944710485 72334728 270624155 900005548 764018611 773480847 127206750 617117633 315200666 274197644 741796887 377931741 887446745 657555223 947790343 730040137 823374626 828988099 604110461 471991329 462642416 189608345 978641659 575359953 802029932 731737460 360811589 993149226 234119795 732693609 253489869 940862216 886361766 513304748 684926249 58293763 31658874 295152701 642938105 307836392 765962523 183595733 624498614 254913230 566958385 65544449 385906636 805788984 663359950 834041741 931281346 10663545 234987660 789678350 699548998 933110996 509719298 23118251 165679443 168159422 340341625 428308291 365690467 878889460 493899623 81961650 354133208 301126557 335887195 123481843 562280991 880179408 423674238 773628535 59308171 9849000 704577684 978894756 416302701 189531142 672697626 691427432 66841451 123398126 857616315 440370126 894530182 569334259 750070748 574401446 331814422 812111225 913187147 784460223 731758553 727016510 616022320 644585509 495039278 842912904 99240178 267025538 595964400 514598346 730816024 66017005 234797535 297011813 411395687 122807775 882420923 993361096 475287402 52301656 923120420 235319876 142371460 305193923 52254293 732555569 93600314 276340796 678924289 388037064 981614141 464957472 775974130 614513948 729891873 343551633 585568824 441711375 517207935 609112044 833988714 982024476 829369232 9837597 336312213 921140865 266940901 356418918 781798855 25402263 942248574 550170487 629103104 780655279 775330465 720702580 756022571 374885647 610723879 299240414 105602962 564152346 808279075 198056146 240139673 643013836 915200213 945781765 333285617 551961510 674202882 404035110 11386009 46154338 293351932 670843726 849974142 64882177 407825565 365111559 441579014 29844473 60166695 12724645 753256758 281705043 732977854 387752168 978275787 447924609 555595031 341748106 520727404 71540765 217869241 258983053 876825798 988597334 469772043 421381119 674055277 386264648 409601927 624674125 479467381 318348037 719008569 361157288 862674066 9063600 46506433 938470647 740880658 725358926 923926787 140127008 372398154 36496128 995950031 574516037 49060607 595815688 441831537 8630345 513821312 474253172 333280888 105535175 495359273 661931448 553772710 36052421 842375669 970994562 988051337 492589847 181913958 848095319 637545072 349892058 250568073 515074389 35162482 139534580 988743605 233139072 149155450 541619236 591879283 161800261 932531925 428754904 945111198 972498817 244385546 264397431 879644717 302040371 371796089 517223547 350641059 723532788 887535860 166080839 177213483 390779665 730218594 611300680 331262074 749925551 64805743 866976762 966211537 929863786 821426871 490792277 728330058 388466868 596860713 629176825 283786952 446651540 298071269 624955042 473314043 457487922 754041608 288331655 267008515 219247922 902242910 773546471 345604609 287914532 261038885 133154476 594193837 21266103 896176879 215183655 503373256 668964819 292429163 988148102 553498429 471709973 417089565 141590664 360679615 72287571 721737539 325215858 835831472 665111272 994318936 231883199 317343089 176528567 944291061 814133435 701846672 932049254 393453207 976676271 157705069 605518266 900724890 278633876 828604504 289202389 180901159 636010452 330294228 573513425 971791587 26733232 871758980 187394939 115361528 431873424 4622474 190713191 566659082 390081672 952736657 505280862 9373660 749010494 892773597 858137968 194911120 393662029 241949364 989471638 765058434 838042170 671969744 468194378 35434849 867215108 391817872 69369325 79176814 849971310 260275626 422065513 717261970 183368617 393279905 27769927 534243891 933473056 78923154 915798969 731086061 444717057 229145739 25906066 156087145 699321176 740924339 619141430 295608091 709974397 543876413 356581163 139885174 625291636 44933259 466794388 5104066 838859055 270356444 582952889 709621465 951004273 913014927 521757192 87078566 441817245 664210817 755517186 646662117 86296918 630010136 204155897 831445007 295871747 810908437 553905475 352341111 472413376 303075855 977592963 240567650 618561434 580483514 209864101 286603826 750758470 339029874 454526670 847257231 73804945 881038868 782387243 546276241 218339169 257656875 608179546 505667789 940870199 957774670 299270214 158236985 887945599 26411469 899272597 731264494 621264690 244335526 861451935 939167459 105753759 891637106 869582214 424150575 935720030 91247920 328456586 802177398 62081552 384699880 954464017 635206409 902851646 964838964 482027328 346569143 545369169 715483146 158609100 624537229 236338196 366804283 5118495 465973526 987563185 911063826 754785057 436911015 83518871 933380977 338942134 635118860 210011353 333661701 398490468 755639337 741054367 541351139 784204843 389052583 392847166 992897639 706962847 458412721 428298340 898586349 443340592 457732178 170090609 632259120 699418529 383121245 689808348 666158588 777824541 55169980 853960499 959559554 910533585 642976267 942939229 193376062 483658949 637857076 254225029 557122258 573384244 38629467 860362295 232691647 886765054 230195959 199142306 701877668 810549659 577161866 963949133 221481341 223467646 3102022 480213172 866839099 603940073 396304739 423932050 480691394 466727397 859055624 49107016 923429362 986479450 370582368 111689165 779340988 33842066 330823901 410204091 950134031 667855797 808626583 767003184 308257115 742499093 11728307 274953735 805419795 440630924 827098417 566074568 910428243 55013079 994067841 916441811 395642651 974899333 430293819 794388182 181607104 776314863 367212271 183878616 259852837 647820171 449746436 536539060 452944312 4073102 461646476 918431185 243227253 727602468 469255108 81774308 13611971 144780513 413202916 370357276 136255849 422813788 322025565 389157053 394981954 340109902 891938163 751539702 427464961 420154239 52744166 538080755 200849835 458286163 433263458 611743121 865946863 716405337 821252340 667958035 835973049 982890173 776618465 219307078 606770458 782603067 552433466 618545576 214300252 932316310 864318132 464683064 610993776 882140912 981842416 544478066 163938940 104913800 607693543 569065794 355037727 172492944 542714666 540507455 798298868 407161339 155590879 86789362 837628837 299703305 653713222 29002887 156800819 738377980 395053241 509587293 91830630 117813329 101530555 913562101 405003972 345634543 88492663 766125863 343829300 405750082 944370643 315190744 310331059 503627887 755520219 105117252 182543145 145816239 189150756 89432520 496355534 714601803 807187327 484130876 70633023 208094065 323248508 323049505 954661866 580966495 993174467 423724784 481339890 562970169 585582486 986806126 292065752 770819663 389987403 78194437 915810298 293137626 887189993 157010154 106007487 780250710 718104541 108545097 392066008 161811281 57935493 233102547 99766820 106881934 437853694 761639590 491304312 705023002 320802487 858578552 77576570 949621959 907362928 784912357 424718280 757985753 953168044 491321643 199612519 581971529 930896218 961223253 957607589 829008042 305029493 569406377 143817476 473648776 231827944 214347342 371908237 539711260 465873401 925171290 644189600 198708230 754384643 650920394 291332484 106662857 651255563 252401636 419613623 153097796 661933428 634035998 163786239 287307833 468148713 124082704 894290324 648773245 754686069 482215479 384988480 253517978 252797042 925108536 398066289 525595069 139552036 311702265 731276933 729187682 131035672 701736994 466316002 166935168 283422040 402409525 504636079 56680145 685792642 71570351 48805940 281490285 199921552 983021275 497562342 173181307 93951333 756868794 843930059 693956578 987241334 771742776 976701628 218440663 478473764 822916303 283556094 534255806 167013522 484755638 394304734 855887412 793310509 911821056 2370612 562892653 993989636 479187449 278753147 423207303 511531994 235705011 411652435 136959237 943961252 460260947 710690300 153231477 555475154 966304213 765121005 755465333 959927246 910989924 862647990 305296041 944130210 432987985 432640443 492113501 67513650 721898804 953176835 990319293 425363827 1176017 144348447 488577244 798450453 421255621 224192536 780770487 159971140 612919106 352264324 972896592 104298640 933713083 355631075 961879748 300977847 395207693 592848415 631886792 778522488 731243221 640418516 558777635 363092532 304547512 268669026 440645969 996706099 195022251 212935048 624717057 627683769 779901148 972097129 407816938 720463546 689796623 139626997 869089885 949658063 7300821 456397687 93298586 157702734 576571130 807559386 774650462 307431164 662775373 31538949 139909264 113815374 446144958 456997199 178024374 492430654 312808535 880636200 170908235 285290599 625132177 479707158 956088073 778378689 185186558 931155840 56078471 104451328 72264954 51799888 788391070 421204482 940241938 944198565 646116598 898310259 25321731 798235098 804586234 796318150 116025795 914032992 297575127 422840647 397489187 69534301 505031307 99227830 30602272 200153643 910060562 793023595 413458637 731086590 882141896 430229544 466596176 31788157 308077234 915091136 503188444 937481163 310487440 704250036 532399822 978950517 141369132 251056898 189497411 403492849 645504314 371427139 878933734 311589576 917902474 272690910 289145485 418081460 409909044 430295414 949489143 591858622 47810420 118254963 92669020 359489866 139706635 717379050 970918064 618197096 897462585 802026485 449266866 443499255 912140201 265218877 234297451 271774504 826747127 561867242 112592896 859366932 548010433 999645594 627051130 344751758 319492582 231481716 309044817 405661137 783156779 827750005 204209757 818825692 173144316 180019670 231844014 632083634 63480251 666420550 330927420 845779518 726962127 282857540 464253630 750428788 327551589 728642985 916274359 323115283 395079459 734903989 419130140 967270315 602375643 886800054 59322467 802034590 160924184 244583606 478312500 495461165 458587089 760182382 927902570 122156593 113556884 604306452 956974486 835873287 162884560 464471559 908426006 530189346 156720466 90078292 301349038 618043519 887396362 251642285 770663432 465695599 2679624 279399547 876975687 987091594 438217989 797551046 980194286 949153695 310606284 799897990 428606165 879275428 913595992 236608474 29273616 465947677 917570478 666735013 374384812 20749496 383403272 737837464 512341429 422581442 803542082 999807070 201549526 117447436 385945979 687724451 953170780 483740328 712275100 238084002 331547659 134729277 905925747 785728829 634223648 447727784 425995516 933456899 787323751 812419846 711532024 446158478 135223566 419235246 730842592 847689518 929501035 910051859 151722401 279683040 185904498 504371018 238641642 348355135 359584807 594007492 210855406 9674250 463738489 791188250 600510774 964508723 576270255 600611987 547884844 20889071 334138847 778838529 89595514 841162717 45847800 5896651 327971231 891963959 141505687 673351169 789925189 345164484 89809227 648811235 943482496 310512453 345278850 29646551 661227973 782161610 82792427 127954607 733048039 67022217 480546094 856222300 909442332 598417282 764683906 351550784 952955511 448542911 278392076 834881194 919543170 407088859 25250304 353138627 855646838 311268948 26319974 98159458 296770740 192915350 723527806 592320321 456963114 290202497 790639687 883169492 116774200 391740827 708284942 979606877 156747993 346466712 527276177 958089608 104406891 864396876 561670930 970271409 993788764 983799412 664480013 125733587 468564615 210232929 321066144 983125684 396859169 693226377 861763784 461772020 775409409 675506501 391165049 48586238 638891249 606755873 229324043 816745001 88450373 160244816 632613642 753440940 393384858 888637175 511420689 768447207 774546738 448805047 101626090 11991374 555664949 973715861 957752517 832480414 843127089 832181296 270556627 325958544 489460220 73187497 701912816 783646888 170867613 444271910 138960504 695215962 352604533 421503289 785064083 23181673 629617607 816758260 740367268 573202933 277324487 218367228 666303359 708555287 171825065 706664395 206948870 939509247 680744228 528955138 124833834 64981742 790998610 78627420 476750638 123985724 785725098 806335141 303361542 998448580 353462247 56177376 367532909 503822609 191086749 735448500 279400894 36487924 60643146 163474848 866041329 726331599 370279313 186533805 570240311 554089619 206117960 661062848 379607016 728048843 510750255 408067784 889417345 495965152 869781752 407254742 893280085 255365094 940673891 738972852 677865235 353578202 873905234 344321719 249632830 647361718 641217011 372509797 776245672 301422102 693968613 476646697 258511345 496121045 711113768 337192006 905209221 423784547 340712470 976902157 907500081 742615999 620548902 812841364 826829107 271924007 760394737 865393149 474462597 139875224 404036340 714832229 804589055 570031017 510339128 428511257 398390184 74770037 315373175 872411124 95998094 935694141 424764069 615394270 125802761 66354763 134407429 712861599 917629217 305778110 813435370 847467328 826158721 590609215 208404420 422749427 635144494 886401981 561387715 340945572 817376040 806879448 514033341 699901599 364981312 301302623 88705849 404700120 144451580 289867748 650274653 159241965 483530806 27028598 779728323 68911178 624601441 640941064 283042821 717115156 426264144 608369739 63116844 417795952 285136732 509820125 13003713 854568623 801656518 699928414 761018285 144007388 283277362 258976215 184184073 624126263 267845060 689609629 671303254 207124740 340510596 675234986 886107080 297252260 916828222 750606806 706109505 733306812 612185201 436814744 515466409 165850846 474686089 289525118 290142851 984664760 26695030 766845512 489345433 388524925 971662613 754297651 576145285 776389846 30595356 126885403 743925171 122756854 692846114 649110375 662337047 840710243 290484825 386103954 164274269 747362658 639523257 353740244 16395070 516884695 61468660 185730883 791547991 956197166 324316034 30790624 182809627 509817126 987966825 631921582 852437380 363288602 846061517 792438581 281750405 296050047 198920593 952654179 319781787 644887690 980296152 461495934 783272963 934320396 140238475 762240580 628276575 528087368 772535192 5691648 961626732 110142019 235276496 895744685 395389824 595368565 727006513 884454832 992127854 486235837 438699724 620769744 602966827 166017746 60385253 381410055 136493499 909601511 782256330 582418988 34930734 628780729 436527643 660163933 629480793 362008972 412405518 521014710 322685766 553326897 197772932 738635507 696901727 297336405 769392116 651271048 472511255 476250602 507016131 592091921 483954410 525026319 317406455 893374224 816425616 296428660 121268632 549655225 569900482 931301056 240734264 765610164 880134381 37115210 243441332 608252611 929211183 35910223 946189937 809274822 517462886 569053563 468530929 481685942 371114429 615870874 721719459 849482250 993556273 577013890 528683216 429212909 907576520 2791578 252199408 395955605 748862880 335750287 26224375 617148143 910066309 582959381 823023282 224508039 546733152 981908749 841480073 914278992 573025881 534021027 338811515 846814955 749610753 162753426 84881077 466125861 26208791 280051458 117990903 656068586 982009088 316284338 859865177 674861433 730026447 232962407 320388454 434783569 892049982 801500769 876425754 297934578 483712127 18935624 612035687 355642997 404137343 529864481 105896076 824925170 919586849 264300202 325240779 103648685 540398892 124169481 640013091 80393471 238143774 323106410 341433089 374577895 146254022 784787095 150598573 47926299 368115005 168939977 296372539 63957512 136193466 977167869 165053754 786252290 473372402 971805842 915129806 564474305 155468169 875355816 973357918 5841248 16241275 197614497 680358931 898936058 232986625 584924995 549389601 473391499 913654960 261850121 841888671 630344018 120504539 924290138 658845864 140197042 721167664 763831030 796966111 369299910 996964488 651657534 908856958 636209648 274734010 129571037 313123896 877056581 992671555 937415605 438789497 828369696 9751541 160699854 293343026 107325845 154563075 599485779 964910090 905157762 161311975 324411445 632130162 207399749 412689941 892683085 49149902 881464411 694993264 784325292 354650055 292566692 165110439 671958528 421793980 762064906 882821337 620758284 58079390 244262211 573773243 968523340 92174651 1354380 358913142 712081849 20801278 440331758 787906016 7569589 336487668 718415271 964258707 833224389 10916125 143949034 375497033 556975677 23987390 251230907 448422602 589270764 575320379 394852055 341994736 428664489 357064962 889179569 30589085 982807924 986286155 623003654 11821488 898879215 509400395 329281095 654830771 689683547 989905486 472320679 533577306 716185485 791797886 165941954 682370978 765031878 686272649 736141249 391237067 345321087 74082767 783809759 597541989 849285584 131208144 295686816 573835225 352954740 699428027 835468104 183057495 612736406 902102381 622226042 202235335 156379261 92002274 283786648 260844794 68586709 576846248 412296922 143163050 737386657 677167274 958104634 326265150 685438243 248311619 344273003 879185853 82743155 243953475 304585522 232052018 735569447 129247994 344396451 459053350 34474583 336675501 609935388 521904760 696627965 589839273 467789818 980959744 767170997 77483621 344160259 845837088 990731220 2810341 969126096 567780784 434313761 10281462 695895024 311201362 886497459 186904644 550019644 530573744 559873619 798853240 238535351 14563256 451100921 474939115 414177214 70094614 710592276 213397312 448077292 962998976 572795052 222300791 986690697 537842939 746215074 545479461 16134608 502033366 639140565 878366229 811200685 542838239 120519622 12392507 489356744 444648928 519505804 21606142 155048449 120613571 46183961 971857372 339895223 297844009 743032046 781264493 455371297 274924734 990091566 901658048 297271780 803650563 667768 884849931 173490338 271488166 828425291 624211979 623360746 846459669 966581193 556023826 700241664 930268153 502230097 502077384 827663058 865413127 228331273 990522330 512588481 559351797 774281561 919402429 840753841 698531228 195225301 585460921 806676750 503356122 871833689 923297044 239798469 251877140 69204557 18224706 679797620 963170517 611236668 782406759 314316684 196100438 357223631 402699564 553728694 146405882 186542682 449875830 755051041 209081683 225196968 760274865 587517062 891674764 839223501 237255324 41143894 543119816 770296237 683758243 213564161 442076671 689820478 527918317 129588651 150417815 300283817 858503924 622044168 436366667 854673841 234554209 728151982 484203246 427233645 894279825 777683411 56608758 174594999 136857438 575399782 170361276 831195958 606940002 56536713 611627820 607303234 117238598 536852485 978362569 179643821 525760508 687121523 676499404 601224963 271709766 524072646 314591628 572686814 702625644 806035813 639749470 477809337 286770879 96645219 899261818 88899027 341659101 791358958 616420195 171771541 348377954 320631435 103193599 608675444 974431868 202894706 658063092 947022532 953639159 519953236 646113439 737089314 792289208 95839554 242323798 857934977 412207097 271761330 739034163 346637248 2616871 702814243 536475251 110280033 425149944 363055131 343241125 626041694 940573734 972254911 354599232 510352413 534293427 292537107 12532484 60470842 509370957 272549716 221398548 255711083 506464041 383345066 64703299 648283270 415429316 67104067 641835678 17686382 7985784 236189411 537870719 946309022 746911516 255157193 301506526 802379452 241274157 300078960 892260935 530799863 292467323 632141485 330978758 504009858 60959060 998369180 351366708 350781113 743247644 168248552 392960248 724885577 264198439 844227678 468988787 417730051 273349832 857250288 685653347 401005480 18621781 12197779 247156271 451692489 522255354 635687398 594688495 176517837 446863024 828189783 641562794 234272306 357799564 952591807 354089404 730492284 953659645 90011555 791100095 804781470 273189667 540004449 437840470 242234549 331574961 348577007 429824230 470562843 757552656 452464477 643574827 96260732 547888504 298893606 739125913 139856091 993099928 118531850 896834257 438361466 11616066 617582270 342455354 372247586 763419481 269958009 990115685 841582144 581209902 784467964 8020477 524165163 730806997 869763226 643185827 284784821 329343158 341591504 357944831 115172194 562015741 698885989 50107600 919397379 313076845 122599814 674745456 252791619 276917455 280765955 846097606 575245143 356741373 87455208 280612551 417049201 594815297 391047356 116861281 596124168 93319937 625356028 430829146 747659780 175954315 389480152 888401660 882229922 117139463 899040399 304174334 930416043 228434072 675645411 824156059 547654597 813343643 707303043 377180182 298098160 874703776 777103475 38510223 251260342 311651818 699398195 458896545 130426256 112192159 893613615 746217317 46193579 63520071 393522169 864154005 422132637 79263978 737579872 736223769 76621016 891027554 98305524 512818002 100331239 858340963 964588570 184596447 797907509 829412785 790698235 834772031 434874126 829896530 41603664 327440169 657288815 179657917 257054116 23761112 847850340 341605557 402636682 812959532 661231499 622484356 86622769 764122111 456972594 501204255 820520892 64701605 874167016 825331698 560863524 275683998 221655304 466893152 187889194 752906973 730458857 206289040 139384897 399920824 497063843 481694932 53589628 302534628 982549930 840684874 717845067 186402961 977923848 879880007 901049538 128723844 15516603 575891116 212226458 965481464 612148810 950419819 58841914 829757903 978584030 634069407 579699341 252756752 845568683 243112453 527582626 237404665 385861062 867115712 143434685 993752112 846560367 166591441 64326332 439078200 35294900 75968608 132102271 471429751 164511513 463531191 436667297 846546984 943033137 295393376 633223004 619537848 363771131 458117867 169994090 475202987 387394530 890391737 697633468 511798105 229185395 413215956 106596750 832579686 756456455 811227090 40364403 860337395 883375982 472794276 639322690 424345691 545611824 142878293 382231827 479747442 283811958 362265823 972587929 395321169 107314355 966252219 221309753 443983121 604565650 691409620 620142862 251256223 182290690 150020523 239125652 926403814 751696952 965736236 109118013 791623716 971534537 528208401 899323350 503128683 564070767 271801057 718424723 751988168 785522768 488615155 563087635 75541025 665256531 887133761 368652013 436948488 604474237 806196835 848302320 558011351 910511485 745022630 606647645 983157091 612458740 295984271 619502252 719414007 590948858 944640787 894391888 585876232 144758266 938455472 492333438 535378344 696816803 576749887 260548930 529925157 265276908 376658405 323378796 697922860 664253331 542963160 734869878 13981832 477967481 109612085 51496145 14739048 844278732 153873918 559491013 231667119 169044014 330849448 958712377 48632482 450581495 208423688 709327216 109940680 683926438 536544406 988097731 728089994 470578858 316334280 163019213 343941801 721830024 467547243 495405960 652058623 76060230 457393121 327011548 505119908 247696910 572753529 256540207 207589569 166630067 933707743 737147335 549363992 238240168 662039451 278807093 291672807 955573212 609793303 307863646 303798886 865407292 381854823 972035550 295500216 664096224 105664955 408518359 976632951 377326977 607753819 191727956 952029177 138088163 967771095 455586495 435689074 65102698 49142963 827260948 807238725 562841970 626007075 82243783 196843507 810296508 733838377 837971232 54060101 934136212 799910175 279403745 279798636 777638071 123699364 196067170 459574888 857632899 590224555 249166398 814379028 586863969 833120053 675448442 590611974 98114284 525273776 14361990 37963267 632611344 539630878 144354882 675406046 598630077 674206989 180637388 268314157 456588244 702121407 59394915 361716596 796547913 57429778 389370605 171994476 684282115 636729771 764653306 164929035 205855132 538215020 668516750 572453228 861830951 855467201 876440342 369685282 233588877 887431933 838167851 568400049 686013897 711548260 507714257 807710763 178925547 448863762 423524829 418400740 417406030 319824822 558396280 30724130 215368907 374600320 755214773 112427143 9390607 3408930 209544723 895869921 371447118 705725404 616545551 306348774 464747635 424287593 960327843 491536442 269587267 918800923 707479057 797265486 871982524 835621324 809051393 25726139 226294488 204520302 650942656 351697121 527793146 489563429 936795711 541611503 544479645 987196349 211755947 544223655 818928085 639155430 967019748 71544951 357044675 934376032 595796095 19798659 842906710 489090900 990545198 706094881 969582248 966001918 474929731 896970376 314181378 838874896 886927403 348879444 999880797 368582090 958711059 360734182 606221764 107650157 455513588 504872151 224433786 208176006 91823515 689338777 641803781 507747469 784335992 141284150 160632122 480202735 103177509 252226865 163095720 902467545 312746252 255152702 903193348 328489002 573424511 295290145 758883393 268757247 623972905 347779098 682890956 282541487 290972722 361431105 676259620 261561527 942403892 246428206 597650385 704766352 614476725 95123837 27585588 700804650 396790091 479605267 299889854 530293291 294183928 738475650 946765658 556604612 404236508 469079540 395354210 448479023 29621370 424445753 11047608 493541455 184368826 648726671 458511750 600882022 372235890 326541166 408238452 404392478 545351435 952717011 24992442 720384334 622510567 887365121 620863083 367159241 999643816 773456886 454743920 132237544 259012667 249722965 24810891 539609159 213244428 929061051 768467156 177586560 445810641 993325587 662398992 136119362 687059525 667025893 119039502 892869191 526605130 618222493 632984808 831860654 983867578 955127921 522549100 913615564 974638789 1953744 869802790 609059567 879287045 313628569 476257628 874339400 527369004 13356020 865468257 281400340 864275384 398164960 264535357 954470023 620842833 720002043 356421859 653264351 961216076 796017537 938358208 837837283 726961048 787182355 255686001 767729889 933691516 316970964 504917501 597792934 924082672 400537058 629990793 602254664 299202208 921819726 839306200 754075555 477403899 537270497 237745995 570425932 714569663 339682723 105840344 819140467 351396094 88399622 250966181 89711834 395672617 218000926 653412891 621843947 2870606 657040359 23382414 423519782 371793693 329078476 599913503 617859441 166352061 542185145 866215879 166345703 431756722 35981831 604862739 242509553 233617387 837039232 658909672 573973223 856087115 493621221 949312908 697397351 609539860 289743190 165575069 314925906 718853561 839660753 325630930 709075014 999802401 385314779 422220900 459444625 700393310 666160951 824097385 952619720 618651486 963494438 616827364 371039340 998188579 824174116 262693641 424349386 869812893 915499383 541845968 282753201 266188631 35996818 580798411 31609222 782096218 976120712 512463434 823300893 380782390 169131938 595393633 145475233 344967313 823010343 786674561 972852199 357382437 493923396 230467033 219620510 716212937 812768618 743162404 120819929 232977476 884389272 657342404 557093634 569355016 308577473 796962524 275405888 555112492 639420442 859475392 295681282 233324489 639971845 951124362 813568266 815851315 615799464 254802031 993492935 195428269 825105236 663457398 926837114 303286664 260422058 355171073 374288492 670420811 285723618 103489876 153251250 875828721 256244025 298603430 99684974 472236058 230310101 46612110 401742705 345980046 178375746 530340673 456685547 461992710 618785053 807674921 316071568 440409578 579517361 95490979 903600833 530063127 53925772 951642280 623225629 314569134 611058331 130317427 131885038 25972277 250291155 753838005 851910691 396078556 447881158 746006549 239573748 594941701 219610774 222059572 370882113 982031700 203089937 846652884 529146915 906441267 73644552 67290855 631974301 925873746 256193948 12338436 153410870 849885035 834930370 140744856 647382008 494448918 857386567 95966362 703016230 299686919 494698777 236313480 32391683 497047185 757995706 152470694 580992279 356353343 703830860 169552765 335542777 948451830 913854811 691422884 668337101 172076898 272191187 642612351 529908535 943570949 881279927 139963275 620952953 840482542 503035124 177605537 464380039 306571899 678564751 64050031 302661245 210700578 112154688 922933104 324341724 360639416 769099541 365317784 301238388 50780330 227553336 313575475 444412462 312599830 445277209 927403948 690225483 492807390 90646147 850508352 566474265 620680187 933188506 73301279 244157787 46422957 397497305 183438635 131555297 130167544 884927665 322028884 267966645 522711378 751733732 276520627 991627314 324461808 742727539 666831754 620831503 32805187 256238735 903888468 99828891 742861104 47303943 47087041 769915766 127405396 750033052 721558537 882241841 543408347 249336054 985678867 413316698 288959107 707605327 439695720 287060921 54315612 183250413 212796751 794625241 612064483 96945928 406343875 618342746 636723209 892459548 939752468 420870487 420014992 223687080 703753661 465418354 643579625 963765931 851869148 859586471 56795599 933093629 926827607 298544790 688225761 858144121 679815638 855282038 522475424 701668870 216043997 767637540 552547933 625827299 979413027 19572754 928077907 392636989 253259497 422715828 477511901 236035282 804089926 771559818 239005446 948542219 283203244 129028525 202724734 277707689 28969500 889180847 102889410 391099450 938984877 728597441 603328778 712409583 840529984 23715738 772614643 299898837 341827946 542393758 411264178 124137394 379557837 353413550 73951091 582398184 293727119 355935504 330367900 920749372 52107197 321187880 799152319 482355869 714330109 304783648 618531625 672203988 628588207 880282522 576736139 777360495 965006733 286115990 145522734 838299425 572707679 632761361 689934685 571479040 535703564 934699357 713218506 632702837 931415875 721221783 466382107 817801458 41195121 620285601 318872005 374409671 757799486 846024543 175037067 851809274 54203163 538472713 472384003 681613925 904498650 168126157 628295036 607940976 656640193 416517984 7312496 556000856 622196232 539791080 175624222 892814245 125867771 556728557 981586139 37194715 932142183 737027353 658205043 156691362 37880948 319476954 249348462 491969951 949867302 783148818 211329880 197520491 124254769 74429998 698296486 259395579 531352661 735461612 116320603 167000738 916574374 540979441 686425548 179137410 94911106 161011412 484683981 642176709 382236484 420682783 304650728 436089877 102973622 491218895 199653321 616416881 65449637 482884725 182902165 397413180 688299703 297009671 229841804 267071576 373031942 537640738 489852724 984024464 531995317 142586028 503339302 229089272 566491756 91414956 81350344 620196340 432028834 850711911 540235675 342887500 364190532 912414000 750005119 483039761 749802602 100719839 664407556 25295215 567120842 227471942 243058189 563925140 470963723 32588671 452470169 297036598 436902314 165629658 544049818 524686347 738452911 347086268 14312274 625308510 248675718 390447212 564181971 922138023 482112191 478033725 926868553 251371860 287196729 993036484 511855152 724409279 208978885 806248652 948909550 21878925 8032024 676304892 344957294 676528343 159947494 290142613 815983204 155884640 265103420 406645382 386069696 822597418 513636529 850904148 201504882 892870622 471951369 438478918 931059313 145356840 884645364 746401742 20571137 64350438 252701821 775530288 823781543 181657353 924507319 650470511 342674447 528046511 124270926 644346562 29455552 578162689 983643266 913627814 697779652 243040795 110568734 5424558 977833553 10173811 680819508 308990341 510683925 735712654 779837545 446107876 32771733 405838851 115632144 398470484 73726785 738574732 613591163 372142354 913992125 111522862 51726934 894571100 711137120 942382531 743995210 410060157 182914583 156203139 917069902 757640679 186835433 211940428 684740738 646641583 664976517 962364935 921852278 342369578 108404286 483419087 972230863 185219468 633023797 441281985 411670275 340435591 668861799 702808511 144861628 257029187 391926734 87162473 678719863 632477135 377615995 332996979 410411993 73774064 892204842 499447557 240911164 730030963 609357248 905271858 699941613 209843266 782368794 967287536 768242800 9487496 761126170 665085937 263994617 901228340 129914439 313413663 273351558 660945512 322860159 818040190 356533026 668375861 774768963 429058283 774333934 788034692 177153448 96891583 378096086 674394843 75605986 371025189 383419715 568063443 187749797 64442659 26517611 330085681 438186561 723300034 705782154 235057497 592075356 398500657 556497018 645108755 528983134 135063322 501329450 269514839 146137137 563059608 361236894 534245878 135734633 301069798 853557753 237261995 108946373 68968168 708018648 355030992 882496288 522031513 439716160 174611827 450995489 799226939 396176761 471161325 205182313 500128992 444146117 781859304 446907754 572889044 680761942 699927320 16137411 198760175 357301700 600939243 946136488 461005199 136408297 413590903 592251429 754556425 775541325 576349889 580289861 710020798 788481048 579435833 810136194 470753101 267006986 464715291 10893852 412441058 439228651 741675217 165656568 190284977 103771278 113266639 704256712 260247040 192565396 965861776 809482548 602197226 908081223 869257093 912370116 803189434 823340728 502087519 137872021 990728448 14074465 105054610 115632020 784102564 567376367 772719383 482363594 957489969 40840468 874385983 556500030 238682845 189101181 85412959 462171389 534020079 394135227 715807409 816390145 399054314 731377279 816366207 84308453 494629667 905143166 432588470 449477698 424893304 838423197 865865586 626528273 247626740 653228765 586490234 45610614 887683157 983504146 945968617 746618534 106676229 132349533 296240035 613279918 242653343 246304458 671243836 179213814 471686081 503593835 361602955 3870371 198406133 97226279 469187214 143790116 779105218 299074542 794025186 42610167 142581828 946378422 211646692 65652735 241597844 61799001 562457799 67258944 944568914 441949399 155851061 122524156 956360852 108788274 116003676 825332881 682942299 903016372 849164411 905594980 731729323 210763006 279943797 231836221 697564539 598219370 519616083 190522744 503631139 465820071 575647817 368752683 201528127 223174817 45943862 524960184 898506818 941694873 304156854 9066507 121169539 343594761 252794336 590819631 484276424 131827045 546758639 105123006 652956241 351763000 650859971 398390169 444003754 492600221 573002335 473146657 612507595 665488136 374031086 890809991 708048232 367251856 888599831 506304273 940626730 555610792 637492220 718861069 225570882 250689596 233745074 145043663 492200046 29985316 866232417 736471840 314412279 773961365 61377840 215988634 61184147 725494893 85675851 332426738 36134086 29747022 671752768 142525476 506386329 814148851 242981406 657168685 182983172 839170386 510821922 947740106 345960688 275479446 676898302 752735048 786267227 600619502 2550170 500595275 877419259 622113914 736004519 615286085 505814310 257579275 511039198 663451549 828991177 898994390 598083019 392295582 89324101 54335837 743293752 367260301 412115048 899306092 751928472 26086747 104241737 692767144 834003516 525249668 971563631 151525926 877722601 994782293 727360463 515348620 842473236 517391218 393282012 668650809 16314932 55233847 502317514 311223270 485940568 284298959 615469327 477083282 134877726 721481447 773860561 907817238 963865239 237009031 526801858 605604604 620912699 636423687 478744395 875277658 347832403 657162618 811807759 431043767 981764026 488238519 711239438 683224796 534205835 332289785 948988471 633678013 580646682 439166776 551409885 234919535 769158646 398892422 806784048 851019759 604658413 269518586 772965666 760183233 534220694 866898007 989238599 881263862 697032018 585341998 564792575 789124398 451180414 338591555 685560316 302034140 983129178 155487984 837132364 939625180 523842986 448236074 665023969 102083256 716492917 217164425 270712447 241982879 957246238 839030960 13008252 857475384 777999103 662441955 98807167 415310785 274422181 421243383 927645312 448217855 433874055 881696125 427471476 158657179 609813642 492332164 392280160 579852995 899512184 194576162 399927056 688176367 946213141 220320188 884508678 805475504 923188155 341141521 882935206 486443966 971429874 150594722 469148279 930333546 945216347 621440983 814679821 617478623 718004425 315524408 848374985 12278124 527616037 17897012 164119545 497538408 802096312 983883489 510570357 914544786 843724364 314654276 56083450 85644974 8521764 382742696 631994039 426150918 931565247 698513553 704453492 18212833 753281700 536722163 100789424 955537295 605125047 669473590 864993430 825936202 615922773 296332858 850806576 449566114 355936407 974618422 273217437 122957008 921889542 506649117 450250459 570279983 231093129 64366191 868207915 979056932 798154324 540742253 879806659 303689785 453166657 926397447 482522595 386290125 249130907 513888384 866523488 738229202 943166542 489455110 742770391 128484953 475097568 801695760 743532584 363316763 224319872 51445849 823186099 982289482 355807554 302531172 591398819 943840738 292649174 397085190 700723635 558958852 980194426 391366198 545641566 452920528 760590107 920888663 93671421 765510555 309815567 336330251 570940919 470560307 588019116 367470359 788503377 516497588 592921659 226345521 618087552 534616126 27039667 475429110 261591686 133981126 658672188 581545791 607182991 592619905 984412108 585046286 966302710 105685349 203185144 247849463 274030879 526887785 853695218 233278911 405019181 529343365 210277471 682360067 712697501 210158601 150106733 71311693 268141896 695836763 282880786 31189858 974213512 408158294 116469699 195649079 685462525 880435985 330322362 549497467 127229303 398034676 97098575 960040815 897185948 550692649 274290501 882912303 995926600 678246090 480664002 180529194 181405424 212057583 677960154 479727793 183222990 356975191 53617457 677626240 421011125 854613448 246223016 61760187 386843551 113235936 110912121 631545326 611155028 107152995 5894702 429316178 155676172 621863117 162441923 190405746 104578821 649092654 738390133 757876944 802425932 401308754 286171325 443873550 642656004 632669844 814356168 540206751 68102772 734508098 575924678 48729767 810192744 45875486 862334924 210392117 77568333 218363670 693659860 382647042 749432933 465964820 504935626 385512945 234632328 511498661 429368208 384424311 697614204 58925811 161297139 543606787 566083227 205111550 111847341 765241109 728977117 500160704 594630908 491384598 895617794 539750297 723870728 951257731 445494327 643738583 605454330 217963956 176329791 17277382 955339560 651915546 146086220 765658520 831632773 563475666 227620401 496028633 546228454 195743762 389581667 82253896 755655075 307748812 576861856 241771973 815117717 201058627 282905421 798168769 639446428 915396435 537208238 27300516 857143602 591320942 297475521 870251857 588601734 236201392 449601864 812666298 355792966 974583706 860281806 297205154 274926636 151842244 116991031 755286773 837868643 376262127 204323175 15032983 332922658 719983905 360063428 374502368 545738148 923308023 686555000 47611574 942423038 157521343 816837520 323702295 914225425 488253629 451844315 199349832 797706425 255424516 339870238 838126408 285438878 645878666 445223156 501819941 766287358 545859702 978126615 241132100 226155978 688651189 612422182 907104098 925627938 387110332 795038997 133523888 798699368 22597257 779872490 110317063 796950944 679316407 378736638 206447048 621373966 467697716 788090176 535380270 571313075 2883030 716472405 600405644 275374958 486821597 619023829 703694110 645964828 177220622 109750316 176746628 224736025 829417894 160994438 822405116 971441644 346620651 740984583 110297249 214594688 182515928 914493076 598534760 551414259 347689071 918067294 429333524 82257361 444326316 338616165 453266823 127849262 920920356 780513471 561628417 248280388 215661282 491667410 938728294 576052697 202243492 301642122 426143133 366442348 995947369 835140192 52705800 78141167 359303813 710466218 412127123 396608381 948255320 127470993 433695429 304952588 928619780 454771789 675511695 894684922 969896132 836632289 642632331 695215967 976808236 499496939 787457010 152985391 288323218 420229079 942669198 39862803 743140078 938015300 749804966 407324279 618176160 286814021 612682601 76255550 774344572 228073694 1786356 659046756 721402674 265119338 444720078 909303592 937006192 427177049 265806526 725301300 999265966 341566644 344918181 842081353 176093017 72850429 575610259 477311740 642369668 312728618 595486264 577847063 407666124 472712864 35181814 56054697 897980530 478935343 92505044 333072634 73776525 793250642 594562437 140745202 713390896 657394374 922595344 452968281 491090609 458445868 251403378 909248126 378006401 37094035 432759483 578278677 858431790 357143443 828201010 750398381 421670770 910887435 248811930 836952858 224611168 52582396 271042873 174211065 788040349 995116901 837612509 762669671 983348913 233218507 619074757 489981345 996333517 45800252 594797510 873339240 381282429 710106120 915424945 771741103 531514490 50822178 477974629 250944135 773678194 665410122 11112933 488374453 886933508 275557091 158476222 646623489 306128515 489067572 319332327 195545850 392504656 618188436 269816581 24564702 225097112 503726532 527461927 186396980 493898713 596867443 961559661 947856687 645431182 242684105 404829794 760366622 537549445 681282108 200917794 186161585 472271086 853585343 1600057 148332041 68327446 405865738 979383185 146970752 23656899 707333726 7659256 121885829 589133155 391843323 991904622 261214532 250733588 453629901 457890647 512141581 234709532 387669280 757875807 826821658 450612186 627094668 438280031 703563897 104537246 626243543 602168307 494270371 714296223 825132957 523018423 379852280 700631974 820876893 304035757 390163522 628025879 849936956 155724477 219729750 202516678 783583808 83668787 662872561 810082337 901234011 710604879 904792839 170511171 319438297 272098848 345895555 269846551 15989725 133460605 464156813 717209331 650476146 44511983 788789164 745817629 228841718 663638885 976394145 367016595 60937012 242114157 715698505 523151702 511628738 722166300 448645049 866414193 364738087 896178536 344764999 376995087 15310662 102866387 714099183 269184798 112452828 587822756 736122725 156245814 468178685 711255474 678358214 553291603 112581631 506496094 731595133 764380046 625900672 151447708 628689375 3204813 469407370 277037144 810143292 832398335 536352954 547918817 399432909 79208532 944580422 965878440 304680486 76720520 865199881 950374818 253045798 664737851 800013391 314810331 575709365 705563453 687981936 207974196 899077206 161368254 360642405 386045113 80555046 805127399 444039894 142077606 307957415 752018953 869498611 751467483 27564842 681839496 774644074 240265248 151337045 879094585 881711954 537414817 99579811 74634536 886744497 167507290 420773640 571113280 312037922 627051172 588384630 746998000 429365705 513499327 136116257 584090292 716199761 786220439 98196222 966636207 485089815 399487550 162471682 744263071 371504547 90905194 765904152 108396604 3084904 42264803 600735393 196667587 879613011 818463289 799476904 846994609 513946894 126542123 81516842 14497574 592192357 257880015 292838388 289817745 593799464 56739089 815386976 668980471 68821859 759361700 997057079 397978116 727928514 909023286 950704651 168259332 24325289 656163302 131198156 750715061 788744607 505094744 353255003 787271823 239540969 993609670 242545684 501288567 844112980 169168740 860367817 814606176 598386887 789879388 584075430 524450934 676462111 85343930 843794636 31668806 752526683 221732519 232340234 260357782 850345137 832004032 388592140 197136898 449119873 389676469 281675922 22577083 20229936 591256094 859364603 739531113 376794700 694009666 351241110 651461651 628457708 740683264 843599487 24723235 315193124 727519765 702317310 604296294 12345538 185095625 952644866 608903766 218554203 878821400 252186826 254806291 949609540 711785879 958611477 114876565 149733592 224298041 303421585 367065792 612463375 423799376 612075034 320846838 921701359 72637140 94867476 313805580 833509249 464933099 942843797 396852023 286497591 567662508 433290842 591721234 399181040 450105827 207281913 576930275 106581309 168485765 897987251 772695699 705003107 286937087 293200332 576944396 718221953 175559749 858599099 215941656 640127061 497998942 537392654 249860891 380902047 918980492 432123950 36355514 409287690 891480212 230087108 562982507 891882406 505559129 734430664 668732179 838758332 75213587 658707501 370209404 528470952 186930197 245646119 809192836 815738498 561485829 851020183 998963457 664949001 295400018 579322116 91042858 214297433 542051423 732436882 840644139 244941870 650719706 709006906 799905501 631368378 431314051 956801299 424348138 250004675 105224893 917719130 823181535 557866405 489159739 227299407 126620890 735636247 122917753 830833467 202283408 972598348 693637150 138187632 51987895 667488645 738874240 578728058 65282430 492566249 661120954 438039239 55058490 238780686 114046501 266452838 541777046 207660816 34361976 234263810 689236401 734570134 142422799 674585846 260608068 639526949 712360244 715316534 508359184 43068349 906316737 424923829 980385066 953295829 303526925 392560570 734388838 134367702 412019122 97957741 923376080 103866017 291496007 298380575 89940968 577167155 825019995 28628267 794724626 365717166 588493678 578455891 189081089 104290515 70808728 693656196 789703060 282198841 835685329 117805093 753307443 16308423 990688598 508319064 59148209 853416191 386798492 130777317 525703175 817806940 861505447 226047601 951041929 831494371 836776397 716649433 713935977 995092794 495864701 952767819 910611 619588427 970608078 580147501 125252812 460063182 283642833 729788687 387542684 92339082 445100228 739367383 124087923 885707164 530732831 378460810 22271275 89417902 106929700 314489467 731180566 520262998 892193342 806010215 94225761 812770718 709157558 535689747 48834787 37215188 90366109 98616586 305912507 97687540 124897710 530886398 441959148 836850412 504242516 51489574 384498555 23535514 595279089 78617664 276080512 210494938 513439767 390976124 518865240 906534426 614686871 81502210 61105408 198655892 860551592 627139359 849298941 443950508 895335835 601187611 888247937 982894627 183468751 668613066 777963102 659136276 323724095 697227359 790390642 607277196 125246940 918245298 472222534 381440721 984624954 246582976 216264970 655180690 719046145 920329111 197754002 472829811 90845797 938147902 769583356 472351894 529567993 878349095 673325917 130957260 278070841 572715890 340639074 646961503 561394514 304833977 262400954 128867994 728041081 602756150 171967596 66750214 779995040 953869661 403411318 626851123 370356617 740506131 463953640 106220005 767167367 971198557 501565891 82472208 8456923 98236381 422302527 812421737 541266848 213436325 46865759 268238249 645103119 68044075 98566957 867473469 816614794 994596130 868765617 101348224 335766750 734379385 336000860 831229246 342609283 519192664 264509633 866116843 303745614 158890114 708293693 436044889 854384815 12523959 883624998 937212716 592381150 648319964 533248944 98688102 91171044 690617527 33211864 909814838 364626165 627541952 444412938 880508505 257754620 239259417 886597991 217452466 353815632 287318389 389684147 766841536 791425996 667825015 605403870 223914997 80639682 130348851 604347483 332950880 816084722 591476909 471076647 524245433 3042854 238925949 50731729 115859748 492911805 654879944 253346280 129184505 615982240 402628155 764169087 177882271 318535811 909332508 922451166 386538291 225646919 549788759 809402641 530024991 803585082 761501988 906073889 788366910 768218059 954987637 404271155 971885336 286632774 911780970 729704034 57820025 126046671 985349298 524690238 570831992 907449974 625555605 194268278 205050073 945163256 346532572 103436759 737310883 636846825 727920615 855500226 922448203 392244170 885340093 663757858 523153992 447341819 738586978 760552111 679228435 661008578 25285316 980328254 278402404 826338208 408940199 459640230 564652308 30504125 887848044 261630963 393838579 36879936 519330111 898787468 838922768 666853673 535243122 137496955 579173835 468764139 299523021 438899780 234923108 253888918 650325662 310788263 648575764 644643675 31698086 647530338 110907401 35579152 431849691 502198455 639853104 968155421 248761846 170813010 644807459 853940981 420835364 442617774 581723701 785965540 268302710 994308656 473284003 971509586 659129924 802245752 618418762 630642884 933981450 990011047 656324969 848611906 90670437 798333078 191456290 831080407 177469474 968932836 455791143 560547606 413857276 49539927 663929048 565358412 581040727 610002763 608447709 146739741 721499882 778559651 774168297 232599993 329072915 640494573 627271133 504351035 277151084 455169825 864405892 986402458 90487296 295587389 455053504 888033017 711908914 907343214 487552285 416716392 60148118 279929556 687820937 120445736 40562836 719648673 435766139 319407958 380260140 962317631 735088240 223547128 686469756 867611600 100052587 295906953 948318560 770086535 392371478 375522542 896994646 919057940 887302693 843284380 93343911 522850766 308986068 344571604 207416193 660905917 560695097 544956208 753071841 464411945 941142716 354457761 133625691 926383295 892235458 457825522 977135197 511953821 311116866 399094278 624938685 184307480 408865339 523540653 998437109 178549457 256008497 285588665 706694529 373731151 636494094 891247849 21977745 539712173 336091060 40039637 449678227 652028678 73494159 867951757 301193623 165467813 792762856 442802720 144797209 43491586 454771128 771116793 455067111 375781209 34294411 576095347 883745029 420361437 637772545 971459003 569465096 54643335 273958111 976296258 674928814 397629702 998127589 445830749 549106173 940510597 597205116 796392509 763182047 236507323 344681530 449092045 642037303 12670502 472127236 945525981 553516463 828544401 126380700 625308590 461333551 350263545 965769192 458087569 669965904 880201146 925154629 500870355 694288634 270448680 891886801 949812391 27347652 838765060 59832757 711026959 818517555 651599912 179130897 452029876 945130810 628759306 306718137 263368952 218770832 637714110 511946468 601495229 906952244 517206108 268464039 340143023 254295595 358143467 129290111 303960323 673516312 804298919 760471332 220022663 559618465 16317777 451153656 4452322 945870960 276708532 489869655 417772739 3892902 891370126 864319518 681010819 700788141 514147298 780875983 326190419 638014161 103133825 623368666 368606572 788584974 194133435 572699042 719329900 176262235 502124833 932744106 882111102 781431668 938655910 781462049 66036933 443274070 348133987 73434218 108382274 67599472 878219546 497103872 903149372 671247688 481714116 452958507 98585445 31131828 977406549 59104427 198676672 609388985 546969353 775554782 768062257 298450613 937641626 746444805 443932313 224348444 102028212 357412260 195996058 530004115 655275574 794835008 202318346 747935877 94403146 760861658 843225760 157690790 546966061 435580651 835630970 2451284 902613869 878402552 825295734 940815319 559973325 352923051 99222350 641969471 579557672 93554236 524667189 890094673 66949256 662673341 993345670 914338776 500315103 828206854 413268679 889237031 604478935 709733833 168140314 374086738 339029890 519441206 513573600 808704321 858701764 247334601 683638584 354326126 245980612 129486806 93716594 409692579 276440380 801509855 383435591 195922430 885622824 190984442 442782442 781333258 946779832 961163966 581483873 146623371 928354652 792969689 481755550 763817526 787020208 829089333 893007654 936993998 106664425 834496074 194986486 197714883 561960917 343091071 535927841 742302646 905695261 754424658 655888768 905783922 941260325 581475164 456688570 517080758 756631930 120837525 842127344 607378686 512265867 341474390 218482865 44601554 691114798 845234044 184176894 618350782 913206246 995212463 627816764 953420636 725300723 441899196 971535325 872378899 406843365 39738766 512657106 786378667 1002832 816160903 281836926 19773593 697903847 147242234 821186180 248804472 193868572 63674698 576523414 972085669 442239763 752031762 79597892 508911958 780938683 433405276 154829528 116001012 306438983 8686462 166927971 105488854 451926391 350535433 253908635 817504186 218990509 879564444 716788058 1204709 513887901 477085726 740852987 209558509 411653544 601387917 564144150 686873476 6333269 938261339 215423538 556145401 896883418 858152870 869129489 305482548 94132143 379437276 949943089 862381344 513940383 803657076 973263431 467571589 342671787 1715181 842257762 987939645 793349344 503896198 587706395 516966894 869615673 304612731 591008968 239245570 452173288 883498204 196359495 870910955 256599053 684455372 788465277 631087382 111131306 539380698 945118074 435191348 465457271 6998531 855777866 744958342 464112346 963181061 851096824 158542919 519764353 781988038 555867829 236924000 208044918 665937121 762471654 166018707 989193423 715596548 547455914 239760315 979400777 222384397 167486479 441541780 4564323 436957817 889626803 395228645 141488006 718785002 651278690 631052841 668052066 154892704 911543208 91091289 481390501 657816821 25888347 597670959 327369 973661596 925104579 711910887 676829955 591708007 722954214 983242149 287326114 179605020 704357532 263473261 277302293 874837601 549730251 94101528 521669963 16378778 401799091 696304077 392625767 832477649 380974551 912507719 788573508 595209905 149705714 44189211 227632038 436362881 842645775 252067447 605895950 765513008 697228185 801159348 948587195 616510485 868813192 163817345 484261249 940831889 448887863 13369292 387068624 238956799 703341962 209866619 437095451 325006622 737598643 330260039 911553951 72081975 624254737 554111638 27492813 178063285 785386258 137485844 305540884 105285913 822787040 929474813 251472374 244898436 909410797 650587708 167102187 853842610 264242667 243890067 489433754 698822680 751691001 124502793 890373444 21182848 827317778 528127933 598460194 591972913 510470919 505491771 116043193 385138180 379865635 275392137 849354196 571509839 840920300 65018320 271985848 666786872 464979248 811686201 237631774 918775450 795930958 248914338 707642974 534421973 496524050 297906465 247507829 120886691 208407632 196732655 801206132 607696796 726935565 694111908 144532355 470595385 845185980 232649566 482069876 668545152 298614472 858145170 424057446 927282947 309133636 952399754 306545426 247069953 519778011 864961840 714152765 54112281 630821438 488583096 111778531 700973712 5077296 207303972 82555178 664633601 249582430 226883335 396225160 406270685 753291540 957508155 348118581 707164431 605071783 973638814 263707852 370490736 22633599 107049322 151319976 396660441 348894578 787562884 916256794 726124048 692377378 748639908 840934354 231726679 10249559 235448300 204536603 12996277 620513082 107665416 65687775 182126374 550132241 275271436 622322776 432774301 624850021 518272261 241244567 721773161 247430016 87602118 47531819 936258898 239477108 703100520 267891611 777663203 694751895 59315720 449286 981241328 511528704 637112311 158473315 694487461 917126724 916951536 267197580 249163413 670847209 314253648 176926598 998607095 985872393 896360782 446525236 528970887 101117224 869988255 505007889 39450604 361280105 352825843 969904905 204900046 719980585 66269175 830727521 375003680 412211435 653402543 443503616 915585293 111689608 134343156 815518797 763347595 414767236 363963898 593317790 709706646 864946115 114615551 518308649 131095026 647815072 769987926 625676 949845712 178406599 7222513 147021735 600689995 239862265 737712865 574689936 636929903 885952495 297760128 232404524 834623859 392071835 106983742 269170073 51280486 36228059 785526894 711813950 171147448 600973098 362690448 220618534 353925823 555458530 277604628 405876745 547880544 863570740 336104799 662694153 51714528 650085151 486915274 852569072 485491034 600077613 458406548 794928508 184194009 323050381 561336092 20010147 975900259 699105443 487996312 553162953 472639657 343771798 303364482 217294857 624414307 529056890 823906547 910546510 842002075 147191673 509628250 586247805 963277037 699430610 858061106 971308458 714455053 417568609 817545023 928457004 842682684 493187110 190927525 320725466 74680572 721852043 276947486 245966573 173342201 118412661 565312144 52452918 554396027 302598724 466571429 913006829 978630685 471252515 582731005 962844980 772423408 563845445 352869663 613393844 711226924 797712092 992882830 590808131 910385897 142298994 581037319 714435991 931762829 517175805 332923931 874403890 61735183 892294386 341243400 415085111 450751183 322510481 779136001 412735302 826409094 909830108 73634316 638610512 694339367 158912520 512833238 308651047 427722351 537200177 344257121 421446621 81946747 249091090 767005082 342667198 282364641 359558194 287737207 66748383 585904422 560586740 803991763 551005799 282758771 901240578 948610697 269273593 946966033 788080539 440956150 204211902 549143388 105918585 329888994 39027210 774566054 950563145 958477902 145734635 506509922 171968662 727909201 604336895 730779714 958454082 313414921 955051040 227357980 558493390 277546928 859949185 52379074 173853745 528717549 933049373 436806707 427492049 273835025 537832156 690780462 758520694 418111659 427235526 713687274 165439280 564760699 850690080 794574859 546622967 571940548 766860311 239720904 123470614 167642723 246328159 863690939 992843533 760085572 227799568 211968337 565624468 29498826 930149898 484684455 643785814 180691864 836064812 392513611 900648209 261157933 184131872 12184510 935849009 992126077 583143902 170847539 582664057 492144245 936865990 885093932 36558912 850306931 766311846 274250738 616409354 607125812 535031114 647707819 900071764 15902352 791983483 736362802 416108397 420819452 849309443 574959229 755773005 526027623 174973236 845194220 604415546 842694743 540918621 45427751 911425060 991725460 70017604 450185954 541716571 493510233 969434407 433905764 654428209 929322955 558075776 531385833 667748850 399261855 775095467 853435356 223454224 323050353 126423380 565003611 822045231 230495923 152298614 317188117 594350677 684433187 508962742 464018029 642012770 488851783 750139912 537407159 492775246 120651463 78204784 413898853 143127935 659092103 512227237 263967753 289985229 462145349 411461305 118973240 896694297 437608732 442788136 125513022 422815345 856290357 95126615 56210764 310895861 666928091 551663067 37108555 21662033 233415212 237632889 872550669 702352601 487804624 856349480 421348891 438654973 319360824 320779331 620188818 166692576 570633907 522924616 419769621 72235399 417123006 137155533 556620142 314171251 433184087 211356225 577033262 967415105 331018909 609439873 246888866 901614664 15501682 117667848 510820886 962289680 689337243 951922538 878977292 593649915 18885823 855785159 230369338 273386031 958161163 248958772 757827702 363061895 165517173 396885469 763577477 793860699 95393332 546928587 910371509 959935781 106964925 516772649 871051557 352062778 410874745 991964700 518070428 645469832 19654914 953479371 446074930 337763707 264965585 730139657 401515284 959061662 803017743 953897663 801298423 99260183 577254422 585177966 354807824 619786341 108235206 977120771 872442551 691862463 110874664 639107858 495941918 168304908 513904246 155720077 977969944 954074682 342104423 848601574 447644486 619791953 395152297 84164209 123984058 614870864 226420466 793862774 668897439 522988763 722986711 227787582 432201840 948652531 926335227 1394431 462494842 320079592 710606426 519376470 930073102 863751928 104500609 1788784 24527278 233964939 827543202 265118501 943430000 527255578 600328965 496932864 431415667 11149259 606867504 12487557 516793316 744039582 338379766 970285216 287581741 130829060 592780197 675655243 648378750 184669076 383077918 346291633 683019798 81663478 954968940 361883988 577069259 186401471 755495570 91850594 765456281 937225309 713344186 721189877 602133557 299759113 830595582 24183056 381351737 442674286 682072810 393550242 880414978 931368949 436122292 500753375 336121765 204422926 680390834 409575851 992807829 186142897 963543535 878355939 633087067 366218247 673487353 383324712 725252620 596459797 424109039 382441351 40045149 572742303 724679815 343047835 584790340 404170061 805131273 748652012 546802086 799642036 608643257 612801446 440660637 259389562 486132710 288419948 539452037 367141385 960819780 23597841 549119195 865939725 381536900 904243308 757496639 735137334 471669929 672636552 858987602 805233392 360836384 884832806 85837639 805872191 172894515 782234132 861518303 128994388 480698333 115319397 499199717 220639912 31211474 797146243 268198516 158254541 701161172 511459308 52413239 684826161 533643157 388437911 12517148 371880930 57783418 432821548 355350517 724809432 295661097 96411184 216340096 540250059 383162871 595230507 869888724 599641232 899931476 74183702 108298326 83950155 187675418 214640467 994635055 974563886 604829211 132846278 113763486 120627279 923695881 336447978 937809417 19637229 544953057 102167782 349973508 477878200 271908816 273811307 107555211 787986323 73509511 796538977 948184866 796802307 553698031 712013996 135126975 54384946 630675626 84708825 225231425 384367127 879726836 553025885 386709149 147811050 253112680 167591604 161248229 244600489 577311226 232160920 57064528 51253695 621965958 514272523 780039231 141067200 625896472 724317127 180969668 378610292 1941215 263498010 619863924 798069401 184273806 415912029 759703162 696337421 237262041 468068211 332617080 655158261 534931770 406909926 244054862 68620166 136545526 298341848 975495889 718349193 650778829 484543702 504872196 325008657 5187105 355913200 488294026 323566450 101570452 836460409 702199643 327709163 135225376 15594 926660219 737114233 147991764 563284023 18415108 375862558 348364430 454437537 820685302 421174439 203818578 923309092 814293776 653034172 439557846 64607788 634360831 422211619 447122724 620921707 43135109 333922139 131359073 413566098 407120853 960750358 443520718 239527956 323546793 452973725 296005975 92114109 877913010 956988230 609483402 736848097 690494909 608542183 967595851 255537434 376224193 129329804 75647011 599891604 545332101 104441120 802202483 231195358 810253794 714423589 771527349 555465476 59286587 118248913 128952876 381045221 587251502 633011836 660329179 850490303 384415086 421795490 908077054 583966250 664080637 597596903 922895215 990616024 485251949 183391220 109574895 825534959 201788348 819210391 679443002 27568025 525476821 144294740 739242613 624008331 930523025 622281795 50742904 243888871 722206187 714602284 626001332 777203900 479600212 497549298 471053576 364247158 71723465 741999939 638969235 462401215 294775269 82651471 606021432 346906249 343348946 572150814 476154224 995207461 210389335 674579379 395512038 597485865 18852459 153808336 370853626 547237841 981741291 518881915 175919948 191765995 132675189 170748628 29204482 901665430 646969536 208341953 497877794 362262669 974512608 999404891 451254257 816950317 935391369 420188001 140744573 984704473 209488180 543774481 87209151 784337984 149204706 603800888 570482560 603701645 523383535 213697737 617341388 565012385 602287494 109209765 788127637 398090168 539800893 570512889 15740780 719710517 377873786 773601409 885402179 860601793 790312993 583206466 334492300 289211747 443289623 617997347 903723264 872463509 301261159 937698571 603789914 848885796 599369235 162752221 862817474 844332515 924163589 80797942 992659581 436159395 562289140 468405581 299409082 696009658 994306780 710922610 651287237 237252488 607710502 228711034 792019242 922379348 344542481 921886991 323239657 147383519 961490400 593007652 474147660 775427279 319012736 893180404 674990634 878712570 240092730 478242070 953324213 73199797 728596872 59991741 754686851 833612920 550350339 865325430 427652654 235843996 582920667 33309783 905942364 823829320 739103736 965073073 756055678 602250481 988774817 224544878 260577680 781651367 917854993 697538586 362696637 186624255 58259156 644721618 734336408 550015183 184864683 895019602 638723628 699232372 681293760 875821601 971441426 76934220 909796993 701372736 527939355 415789640 390759888 975036328 379920660 957980881 663356213 295738539 967662916 647606050 869330773 103104194 598502928 562380182 677871750 280009501 474502658 964482436 851670608 576118389 952041239 957248140 24985081 84338597 557935631 826915292 404411292 288812001 524899269 329673989 183314011 576352628 705737064 412120792 697973223 216161704 584889449 727810238 289630174 757246059 560020099 151912137 793050170 348273204 111463730 396358869 104421192 831594272 784022756 609764989 283862580 4585572 40447590 567660421 815230286 338755399 170152585 63429928 663416627 296916833 959707973 285107291 38410380 913981973 665360029 775449649 769192431 38172948 177873343 301388198 235323105 670375138 771046395 894901045 671672077 542944415 602482678 890047838 180313417 22768105 180476215 442897320 225897581 913393355 630165946 835892328 450951383 336849031 436005869 555935823 784240654 699515842 709547229 776086069 987244773 635108455 280123093 125367134 548716626 385630172 704677386 933166422 86590415 947165484 299600871 539384001 388056859 981587333 323064726 626559629 565483209 662532821 703495646 895498221 120826627 903853089 26242219 470407554 840468842 975567477 100196640 812387076 840675366 520447768 483405139 554559287 452919487 193913743 249421627 415148243 170490296 260226086 137535282 318368897 916309288 613332133 806513803 101425708 933825689 113387357 213690990 292484773 792954579 248845113 889985544 487946 994972294 449166430 970117006 177355163 661996427 367548842 525636641 278636514 405251631 799279110 933107868 899192924 395092673 881822344 582815579 654929756 650219167 91273104 751370123 329508270 523441693 552208855 891909276 344704844 765867941 79721032 853680206 762400634 622591429 485753468 168249599 602406537 40905211 901070896 643302059 284445603 623233293 541178037 768168933 306729073 132214154 353817897 270627515 994029989 683951562 190492255 255544227 893038110 260694959 73098252 745265841 463379643 94216698 80523492 28314620 616743356 925663380 655357660 83239009 751497407 332586943 511139532 902856402 369563631 90036313 193716255 753850593 67071223 727827147 168829867 924907028 295918504 508568752 601255341 481665545 269685183 6573796 80257458 410899327 556374269 988193441 640213979 279843620 642678364 844369884 68067898 266808260 706759251 540801238 67377772 343180364 664214405 721886511 554718141 313835589 382907898 729191229 504448969 499610955 876181252 411505640 50916547 677167064 199749911 280303695 814888312 119076912 890959010 79211811 968521145 220934830 425774470 682009380 183087393 911565125 249406657 583318257 304514680 408043804 437878889 212132373 443284574 813259669 548391865 557937393 603918065 399673500 517113279 257121529 120238100 975966897 114746226 994428116 90273873 297484440 135311901 476452509 309115067 148293101 41547715 841902480 952724738 490212895 233960996 664042798 557714949 744223305 478556282 920802207 36589282 838005180 4106523 863482526 715797605 754042832 629608114 275649402 590135478 82947572 831765878 310072864 351696559 990302192 412916930 866893438 604504934 209323452 554767541 498186556 277543986 741182722 86717866 87048651 285899147 109151930 744060774 665075395 983348678 401475977 752058936 502204717 443680449 611771341 167363362 526550250 142170051 879584490 870493403 763664692 282604141 925444160 702050096 592482877 897260994 982504359 591175446 322111579 998264401 721050666 508436925 716221377 770871822 732473391 865105036 97570701 263914744 711176705 232780847 751794557 855344140 733676989 855543378 467892172 67251365 632668061 429995118 36136637 316107323 710908548 949683392 136947177 124017763 856104876 635968863 184559109 3351900 682866298 450464437 465590301 305933162 544519300 766361277 138371799 359111181 558574205 125519481 906665276 820718657 442684123 576446533 486709790 266220830 765378114 651142096 768500707 81097013 269975750 884712622 538681098 164087127 756267503 821173372 558658698 727028555 614210132 781141718 459768245 208093104 155966539 296823479 162613546 457883312 611635715 359103616 994501142 908724411 846711437 29215653 319292353 948105034 499429733 19052142 828976819 189130656 326695144 29025500 149883088 985068975 15171348 614361868 143648722 930778826 930660732 600458039 580764617 859651568 826153541 796630548 875383817 949830942 814358112 136954282 194989118 929497643 506424798 908791673 757812536 832600200 126583479 797884030 26718010 337060112 523206502 584076609 319032051 687563172 276906383 192993896 71905165 975470492 11424786 316006383 966611224 876546390 626923949 186547646 416169712 62831186 650261983 135029433 585655754 576751519 788409722 198761736 463831904 84662894 659593361 522699051 198684349 184804202 169126852 278642047 944492209 518048732 583162308 706693904 69614549 344261866 793927438 874874168 897148090 321486255 342880857 146232462 375878695 618784749 905855117 97461982 157006695 716952513 180602920 558112484 42197579 337008354 417927639 180705556 603365939 897954591 997642959 551562656 613627802 35287444 766548202 622302794 844274650 258226146 666794520 572310138 947680455 620398737 323018716 88492238 922461165 721227300 15782957 909669381 856468563 344904601 920359736 128334379 981578501 960633752 693849091 6604155 457412323 259116872 730425487 661023954 793844651 433349595 877342884 72755682 2227188 924353389 591637537 59006612 415341499 250864517 605461484 38826035 316914276 431944560 312065628 510668327 49620005 661548157 800356440 514219272 988130644 755326675 354443106 885157214 850006024 983797669 99875327 336335448 884419744 520002795 296273755 619670671 36779070 515732012 22110764 592320365 831882131 619988640 740409218 981035155 570365063 141158065 261396336 358204535 908857136 630318623 173963820 97852786 919491184 574682860 562626854 746656294 38377018 27176691 239282970 964689469 538961127 590941516 10125345 391509519 572654363 540634312 436724550 424064670 372695759 208929289 173434607 170189892 130662079 311704881 739591694 212058643 809752147 864602821 700626545 997386582 723241621 602156136 692016349 731309852 702821038 834188177 615670216 765875933 521117176 18261360 564385354 409867933 331287390 622340953 2139967 435092835 776883995 549591554 935062457 946192759 845167139 759185968 985645192 622462491 420561981 919590317 43061110 187112626 771811694 214142115 496066342 813291088 212387229 732294702 304030385 581813878 250062309 774256498 525138891 265747689 569949766 803179343 965532896 481619301 938129753 447791024 119014111 537803602 214705846 30531556 774272782 376095492 443535961 818096168 546216621 339643291 951223488 933999899 758327670 660529181 764278041 619440044 946724164 333727307 499917003 657055706 86803220 256662694 572417623 623733184 321947757 892339113 948760634 765759925 634896450 873307204 173934843 357520195 84196227 418550305 517285387 536039496 128218381 942518651 83926631 540488050 572884246 116740846 449496108 563124879 611164774 793786921 717655626 792198012 321747060 109129165 99100572 325599430 327634972 780646300 835006814 425498845 966061890 872445092 190409627 317174075 201573384 180983209 251512864 265399056 156159746 300583117 703882116 313861966 872816713 857676921 725345105 562188215 305685077 360207322 893603270 971595219 788118565 798430478 302402997 935087212 223719824 881393694 484083233 145247680 676223977 105948736 988114924 611456197 497438616 943121575 951643960 113565197 246571295 918487161 549660126 684787627 672781988 794309526 185018246 103218290 824825979 799152941 786818997 304158631 634947806 919018505 664338813 71385252 622755511 580468583 102036221 320754545 351560586 807106519 227614505 666341458 177366908 786723447 60557338 101039296 619052110 478397002 926369593 65069807 943483723 574589219 940997997 531737187 849960238 896277258 986714901 570928047 840051966 990535844 573534814 126161570 762598828 868854688 875733249 241789685 584959929 420264523 394259329 922054707 183144828 788522150 543697076 82432413 120250537 180190646 340806785 331697903 391313790 642290455 339306769 578444523 882435782 923603508 741810424 258834896 790662427 65891711 159497534 518604988 644616348 357798463 668592058 910421774 10247904 467917218 650780443 802642606 929480131 355600903 694383810 368770233 498958657 420897894 772914717 655250957 558205809 673256137 562690480 813476576 830361386 326408990 554376604 913079821 364075012 633511257 165854215 238171614 81462026 495266194 715924218 411842303 148412054 108013434 267637251 274439971 450073977 570064314 863057049 932426976 122899886 76588173 422985381 141880164 698734461 477595853 649006648 790617349 125311640 403639881 16467477 248212748 828949703 643841581 465395 133248763 968902185 686207971 651383939 950699886 757859622 744795035 517555210 687637914 187362909 424887137 528881635 512588693 146536287 35656061 935574398 641200932 181582591 503774092 831509833 470853397 962017057 133747333 257047663 329246478 602685581 237169692 626409617 150283358 290288009 458764168 692465161 71859286 221790064 965076996 745134607 907991516 852147286 553021919 183884480 943123609 803274386 616263075 19167935 536026666 546883405 954471410 721068538 16990848 996096483 209666400 133089775 912040856 888746205 193632240 997094128 578991483 334631332 517738716 980748181 55455405 927804913 708749789 356839939 91409001 109902278 538567513 219659583 622676251 489092802 967123529 733061490 849589580 886014352 770305954 191265552 986384457 967831395 349686191 945828617 487203954 677410137 933313327 318786771 957830283 473570165 533691718 214132878 300882044 873607999 484306112 171022315 702473252 646651042 526753247 528602063 104434982 66178016 357624028 842537975 536428444 514021616 252001599 456795659 191144710 659374162 585877884 816499465 527553526 347094158 477649510 463264402 269191696 799415132 207035127 808457732 636476741 504377026 362018166 759669411 629627106 579835766 722813476 940505821 658152415 241349072 938139665 54115908 994250261 489785234 279155700 608287852 474939931 416853922 982246384 470060278 572410346 708602831 632113512 483907972 762722061 879966341 357269429 744313139 736456512 908538115 289626740 110106632 103989330 355991085 275979362 822926328 488260897 431752444 525682723 537738814 4321824 617231407 831703549 317846908 780155112 415378822 641164980 170371097 447394664 845732127 551952275 95611309 711773818 593159546 281416884 181387662 376901667 773358076 952071588 903248967 367617720 730174519 205764138 253686294 865647580 489277403 62912475 568258948 863473445 49454541 988939012 802150876 451858243 661011204 280374932 655663164 532645272 82397183 52595295 421112989 306545870 146451750 471728292 858468695 733545868 37827431 665447357 908861552 919970609 875499333 103070069 996979547 675294946 934711077 632246303 598138875 665654284 757957226 285582989 762394646 289091640 205604741 145154187 727617722 372606329 690302198 519779975 823656001 625499697 567938232 606564168 452879672 540902364 895249233 571882963 665567445 882957026 262507859 900204457 217585566 328998067 832354954 704271548 721750346 829694591 580954063 149927730 153604582 680470486 243294231 698105007 262341737 646771041 108405637 871747988 981245309 682560357 424907252 259632666 699296081 843864267 893547173 200371864 625754727 982684051 867857546 145657471 844068203 161955936 513235091 832437737 787098704 219361740 485778143 68834791 140013108 613632483 772449380 638694181 460045516 852841837 19953969 273121214 636755758 979591316 471102065 39714214 131518048 537288975 128064849 366889877 772432298 63784430 867893572 722397170 484512003 132866706 949173474 636374814 655246960 776389712 220213107 450823000 614288966 87010098 280510321 93868391 317767005 697165425 11239032 315035804 540203543 538209693 730542544 625446166 88026960 307504747 619351982 283045006 553851044 928245868 219403815 953986121 81120613 935676481 984418629 551887505 147825018 506662472 877236581 700591059 499531600 479931721 692156247 934901937 982664412 741539771 74680799 6182653 732723407 307057865 248065864 429571189 603672651 252535539 982669935 984157971 492594078 180784607 890598714 986798451 404895745 19046300 349524536 530672137 11229571 256806386 153324711 718977096 579190370 78434313 680835893 958314869 754877472 315266926 851740595 935698463 411159612 399447521 61266352 226266807 661359815 174599145 367039636 49489357 281292526 944958458 824915338 817939728 300164828 997110324 367775981 17856648 694401604 81990004 420106688 901308931 967201830 446589281 193993837 397594605 593041799 975802473 569651902 897864109 187233713 215174197 468180595 674704821 211414390 831422441 750392273 806146646 527057280 19279967 9381771 950401924 499283112 560694649 810364811 318698905 133317860 630415080 50133912 554266203 291320977 644039136 240861325 24814488 535876474 392525309 881521920 357298669 668188125 117552891 445561746 460960900 668332824 615232128 558410226 926201290 167335179 709748176 715663395 260052132 726938957 942685920 298638149 124147337 801584714 351435611 827224630 633510293 244348354 547113180 389245556 395595001 475580405 205214554 75069706 236043909 288772101 994539120 361136280 483029469 57609685 227932892 295204448 370388906 690553188 290602297 265977643 484143214 268394188 436049743 573006161 782418152 655571956 278290316 424376349 215949375 152906975 823294955 37797896 122591410 781134449 512838794 404625399 766257255 118911025 423451061 160354854 850758528 597874798 275210103 181810804 692008105 934176710 420376578 951414673 581985713 408207606 645838479 965137887 65866704 494376289 524103406 583699070 688402055 367089331 53828937 404410 859463354 128463276 961028227 887686553 246124368 362764706 151027801 83086992 510895080 821013113 902600951 89502547 158883355 85836830 615605834 893094082 180294975 230718678 491229628 334806853 468234743 918229088 600640266 721348305 361509739 848138714 461753264 529335589 344058799 972085436 42409457 721612215 419426376 923614663 393078523 591140610 672232867 182194027 246166885 836287930 299039482 551453746 309604812 498070996 197139250 334236366 161529843 813360264 129019802 989318410 14556119 193758408 835377546 996031835 156204181 380153311 203157403 774196651 163548712 775494238 971967303 429892183 816478552 579548137 808695322 715390624 691978999 190686449 604296502 920766123 496299781 12261902 21904428 181251592 349286806 783537071 37654805 733891229 122652854 639693971 357280829 268190584 416266491 159147555 578170233 589655520 408769490 321069405 839112628 602716515 831766542 119570528 63497760 777152805 838729421 235013393 621904648 22913656 320482650 225488810 520152228 178995902 455311573 721769614 357768571 130341833 456536659 339088526 647624534 721848775 401996517 924295890 242342200 231126942 163142546 560014686 773827091 216662897 430852006 31893491 548651113 405920227 284426027 242998115 960696259 740299041 194943568 936199919 120020605 171686255 90525638 921200499 334332558 877631625 297923340 872744907 262856204 172317243 282114120 505901206 395095500 227720714 457927581 637916180 202796233 664186119 249875116 537810399 961949307 707709840 537922642 630859954 563105246 993328774 921248312 399101494 40138657 809957292 715402911 487921651 498362276 925010832 311858885 937060342 563295995 223629462 213461822 317252213 661350085 575432082 925289921 534515403 613123725 871518988 822098583 549885318 492884825 911350118 312030945 294499058 141271944 176492055 165283208 219678680 189113660 972809318 230412536 587508600 146158190 152972130 15036593 288311793 533717588 151169153 8140217 437477439 685747921 133416304 345047716 873178314 715580333 774298264 122970422 487699872 711045450 931916550 109605909 75903344 328834917 226044930 353789000 357225206 264853717 502510194 522554716 984018215 26710684 726830168 639229880 560265968 148953509 554832551 86913259 8440558 788117307 452459019 219537479 64743175 260476941 674249967 964966045 721696140 703622205 46750934 411254906 410897677 627782992 352632720 52703684 681253616 652632286 705795913 777518330 458102915 133206528 850400423 902896849 3453621 231905360 737376028 657149408 195445299 173289041 410462455 85765311 939167577 351458175 940780700 60118823 262361617 968233120 329127679 291644079 25735984 666201603 172972087 735272974 388854349 718047414 905100574 638238241 936114569 33658409 112838449 13170617 395016411 235774584 686967608 626889054 549093263 930592545 122766678 861949823 396579484 411221327 323529573 600953050 810587903 162306967 517781827 992335963 386331157 240291545 868714529 462516756 114151413 722790301 225390740 588412553 613937473 872317863 949920419 888686030 985721282 504990714 394105405 862331799 843388429 887924046 68964052 745413671 898917215 736661494 492906854 59876616 310653942 769850615 956554804 696261047 653111346 695372027 941707426 72544702 918016732 779573971 174798626 925189280 945635528 952984614 913354111 361239442 390002439 693859196 443993954 243944837 885524954 616707455 402477147 34013602 145440772 74960256 387307643 69204250 953752864 881182767 6504334 543965815 871366128 574231052 316648281 214036003 82200900 573180666 735003070 522785923 740001462 875698282 61461396 766688761 47948644 557354668 746964484 280332057 672956392 531689032 886504148 238798045 112060404 585563022 526432597 95931521 734496393 240845772 785223810 943804303 719825166 209914010 135257352 246995888 687998473 374924949 795239552 19278893 155801991 51024386 502460328 512201240 881698357 303802282 430501376 218843052 650351568 274207060 279953940 111355255 902641819 78892150 76908006 521972236 505297762 474359996 418873695 171538036 492169716 931123202 249708345 620102816 988672502 338271804 353053761 352978347 91481766 706569674 192855753 578722209 803091530 215760824 827608740 47035586 224707869 571926172 431317337 876133066 39956784 47375864 981491079 316269223 400550992 291924218 47048894 292112863 386266703 225917976 231976403 787812986 331659400 693794248 301304522 726014741 874128511 85518712 10285365 936695857 574485246 71287625 54186692 290881953 206039105 247301698 340561085 192289925 484416388 8328600 408664129 132619598 570230830 490646447 511698453 977914407 735771257 557009073 174497174 316366009 109372896 156902833 50744594 578766720 843032953 928506459 893429973 464552993 736663484 966999205 141237281 998938026 292083192 997183854 515888 651925209 111314172 458920578 247687443 252372761 123686420 89507735 359880335 268868866 39304759 605258533 969284428 571528050 31420345 776798587 517506196 779829073 457784784 25840188 138489557 491656141 275354910 448739382 200841787 611338783 406877858 758289367 557380950 696647456 485964906 321925306 466682273 599838576 394347868 807322936 892900429 233384168 194971555 32724945 336847161 397394260 553670198 524934928 860006043 618555554 533165326 855490518 125909437 294781892 79605443 689548065 720123881 565721134 746463524 698206459 250674843 439413658 189846288 28904698 593299608 873376274 917257513 110198123 457862410 89415236 129335589 150405573 910743515 161012728 77769625 378913631 713178198 280421462 551378499 411018834 387858779 28793995 558817014 597619402 309549436 891198444 516656239 278241681 637306497 117272726 759550171 88952207 356169228 338871887 941692795 231615961 417851424 111405544 82038756 135127013 479697889 783165264 63438284 367655475 81764777 796457208 351279113 266210281 815254045 955770270 432035732 729161184 7728932 847856442 730034417 758279751 196354801 430799527 199343173 494014545 163635706 772122718 67409607 300013094 391757225 239087704 485311962 990521800 864314523 94056947 933154988 320770251 398024635 221057778 805313586 189383752 839207411 240967436 723331419 764545780 653070372 603451518 607194561 982391878 803156302 363556145 920951862 208988516 400144621 245527871 556013723 60186885 134043417 598477161 823032921 235039669 649195673 281268092 968942485 654112493 81630577 822748434 558483034 173337895 610783282 685822164 49941306 808494783 175775932 802090748 744658966 483721920 779416369 548958035 375833801 690825457 554465655 956271966 438734645 214077026 90830887 286272264 920690653 656721886 143180978 146411610 390059465 643391794 622016616 256687023 869578710 523921990 234137976 283026836 764507552 42505739 223386715 41864113 962800419 458806519 166787017 270602616 516916543 248199361 4108803 870536215 53922520 921245023 270637585 564447691 350845075 648676829 250602175 840719223 919005488 210694519 568559566 293122412 836650364 523602058 743595824 876709014 824549516 287251049 335670535 140758622 666238969 374457855 486913672 215395 235723008 596650702 236027322 794615256 338621467 180908911 198365678 978670532 86336364 948617636 734151938 835347789 432599748 154797074 215582974 165919365 882867378 880637759 126682859 372382160 126487186 851684907 638412414 455256789 129304828 856540423 570315444 806983411 257334257 175626350 353764774 185480362 116692483 168743712 936105250 664891687 935454988 123516287 145153711 758834121 426086157 497018950 23049782 629580884 323063208 40112627 12106502 666981458 621757918 622270973 301363280 737904727 930963598 38277325 802737515 27194291 544194933 151133082 661625332 517758280 915704948 876919914 1129688 434416500 318158076 771454909 582528940 104348234 447434824 680724528 544470223 61554127 885325035 865150790 922857451 214080463 40528589 494389231 485727111 974975853 403669929 567856297 712807254 391205493 651736705 885694827 35799775 890904563 992002152 848926145 158708972 140165010 637188502 818237348 819670065 616504874 7253235 686022284 247308342 381596129 303369630 771588789 646018338 989819569 697486689 591668334 844903491 721696917 888842079 342967744 560615951 968607275 96387120 639766951 148947148 251899103 554630657 661815876 273476210 658562339 456303073 226559739 930092976 161678694 3565234 806449259 477317694 917238865 93444737 282930052 569715451 347433023 277128652 638229190 71500726 506062789 228138874 696338977 359821153 402774252 566149178 256703664 64245143 169489903 438136254 172044116 419945560 6138783 21673025 4481135 82704893 335296205 761386227 338661825 590407155 95281789 269657104 98569023 935862616 647628826 785824007 97661555 500199909 539307074 203453598 148361786 814165943 747390234 908584741 798692218 473994475 597743536 175334318 348268955 180807538 418626804 268995652 584659713 211802250 686145325 730754320 452074657 81897324 655734714 138753600 121614015 693734384 753328654 940496946 55896675 513421930 499358511 177011591 472179250 469417909 43546230 214503508 350705644 491572286 735539633 355358976 33869165 630853981 332660666 50276078 299035050 925078857 187913446 773005683 800945302 225860800 948925706 824571068 277541661 480309230 90297345 584284912 765971768 926813786 282791921 92860509 152975798 206495968 255189870 515318994 546667642 882466331 888559373 744063579 169793490 390366117 440502914 166157750 645641501 793782196 745960143 168711895 501368186 366284549 608696050 584973796 848533723 844184806 171310250 108976248 388156674 64448241 19245177 108711764 859902475 879454542 783448295 400758632 578676532 605939436 661085828 82562741 605917380 881187705 530982811 198984688 229515670 827150435 32569814 586595089 835178148 170579603 574158579 278091676 644156398 392291883 456645779 250663825 71365332 225729331 286810829 428504851 201935084 808868437 115295155 832777533 918621949 558977205 622035543 299370544 780123440 431249250 586755334 925954151 816743701 985841697 333812661 268921270 474152661 7201741 366971066 577359748 3859540 10674311 861313601 986718180 749989632 868028573 460842052 322196672 417382624 782806800 187939933 14214082 784799584 153986738 576993894 466998064 125619658 23033096 602854684 289985689 438569599 988991847 955213372 776261964 381781533 464069921 385668867 408523307 787271221 552560239 98923542 101735053 649840082 744033323 837131407 141372988 328688779 347617093 758988323 547356279 775123039 667317190 400117902 820707491 109386056 545581059 315806201 981456482 632023203 292887144 855113798 974018858 479646284 731290986 352995304 302851183 9991429 96561220 843442287 536555460 71488837 913172272 961856703 828374218 225702974 573877011 847161182 691926512 87290806 860521995 134357316 999704194 405921331 343414798 837285010 493757564 385228273 423927816 82557707 746996744 505231883 481067432 781768096 668842996 933109439 72970014 520705421 292902568 486531562 785362238 774865064 137573657 269928541 45283348 671415428 338640605 654042291 60223497 38436256 71453798 309145957 620946707 569089598 779480929 448964538 14830549 178418587 943892262 507592479 865971210 478705369 367758469 597631351 647709723 909003268 799068912 728365717 661101068 260077687 910902854 987884256 360950988 734375824 690407265 18496746 219311210 995169788 777277868 76838160 78736587 895573569 860542865 485983999 212463118 468966596 35601632 604833899 120442733 691669464 771945702 160020077 696424394 417446561 55411577 49347517 731416442 537031382 736320712 510058272 393935850 890668266 602563883 440603347 631149065 901994066 81199724 785274891 64951068 57066803 135635821 396502679 612435550 98881789 394745195 181913472 345530559 854033436 596290163 860965531 640960436 854599307 529508809 8354565 20187550 48598549 404557358 705028782 553252611 823103330 561749728 778696234 687856469 295945142 482863369 975467871 164338491 201564113 974300487 460000963 772782919 714166510 738643255 523261467 469508494 415264531 529514443 687208182 43338055 164273484 864244139 468512057 12556977 112967944 921354087 360653437 491889844 924161454 955047873 173799241 854378882 904668716 301531585 398345115 476154329 919339949 975393842 185453577 713691677 119872976 472126939 273180274 40304630 555409985 714861328 228562960 848791431 95337250 380242875 264420622 943350226 623063026 915313387 46437873 82228733 579818441 276848275 261220206 413989014 779115798 900490361 716416110 67734486 958636270 928339872 345350075 237207194 710030218 945537179 467047130 731873458 255102725 296115878 411134207 241223901 539935340 717210126 508976997 127392525 453938208 744509919 722805355 608605698 532062379 577740137 576219702 214461944 261184426 653020403 282840376 276069902 547278119 14387129 599976823 699824116 546437546 149707511 940445604 856389341 469957638 134116433 42242968 372944314 406269348 454417512 597794021 25566508 89710029 690728587 713076720 589937540 507213789 465849774 543973528 376328795 460395677 488907401 139557784 637626382 280251105 179582731 979407603 945609732 658663984 953519278 181947498 827228615 122190422 716168151 604700502 238087707 53301001 133094706 805110120 993682721 88106102 305272660 867727309 365850079 244837306 627895163 249279971 302253331 62239414 952014827 761889798 219476432 171173902 257991580 941644673 923610639 168195333 778651363 898155446 635562719 3618459 421459960 581426618 493157651 344313527 597780076 621674076 910173224 295620882 749677735 792598651 97406421 84908121 748668390 959821048 11531957 446229564 681025948 451209299 615660253 503464919 764531534 480852599 63292820 691895923 828207293 45158785 789052714 804405996 676864542 421871531 994387980 917523237 831984024 91926421 743619049 241438300 612311198 661609076 429569213 867218207 438139293 744851248 33355825 389209909 212634366 18500467 258336460 982296601 565737349 357622354 969624629 874653414 731049575 427428209 868413983 99250015 953431089 708939006 860713537 850574096 798164076 584580699 332972950 533614476 172056773 710855720 161413332 529219204 557163492 315687988 605014387 254064254 184683866 916857559 742557252 101991462 853189541 265562046 810977595 343712169 187092454 707950744 664280330 531441720 918721134 932892395 820015645 572239335 3083462 662613635 680210059 621783229 869662744 387019407 686729484 419064111 845521855 278987386 477382835 818940162 642480844 437922158 623551190 153168981 932742021 61944393 458185538 324296583 493640567 790574112 925398486 272208095 113288756 869742820 398123756 775913016 245505438 322937212 743591842 710265743 880557885 879451704 86981163 627500276 358322976 593605550 427164068 815667816 319431999 450765904 64963908 639320393 829173657 691878415 57573410 453728416 276357926 268370705 402833701 813679849 415490760 908783876 185321396 690459046 144258876 666290815 915137563 632062819 581284235 270717550 484336438 408960973 286637209 179448918 474063996 39772708 207158041 451999379 695042810 63474445 921427821 611514890 273113169 118492576 388909082 769408416 892714898 180910555 741219901 239814366 115005052 269749757 139235443 696397759 717741683 45461654 742423313 831533772 412608239 773385291 202869026 486650723 29525512 110066244 758024630 500219122 783422899 723554761 466507032 373566444 870338776 637047159 2082218 60117173 118128661 292844984 100798782 741983479 453257051 482877829 27171875 407515761 150295930 979830029 481833901 811243957 407511699 84001578 122876213 959740382 75661970 187223421 959776541 328723750 516153204 813477989 30388607 207150020 500129692 273098838 423620099 262133218 984121085 905042068 202521977 168117800 957640127 158342199 953497316 618581458 799126877 478265392 974570245 218365586 820405868 572417208 959861924 533177712 720755804 334581578 262430826 940232519 558526654 185468027 479865618 304542711 757443152 678595348 621235544 71426068 884401356 111856094 567762790 726102448 402335690 411679829 471184775 670068992 147445411 444456415 234146901 523901026 870651377 144519551 805878824 28057123 113011696 769154502 178414074 816137547 429390627 536925406 436952057 589094291 875328995 878806518 928362265 976695075 35189388 887723075 339743395 239035244 655046100 366801917 641209939 29492541 15861834 959607827 161110788 353300274 179228136 227360874 854284025 368551937 361747442 845225071 841643081 493838267 89997721 623769299 600576179 682105810 798070235 524472875 565546578 960867821 741542061 310823091 478099505 301850174 419827539 363058261 576531218 697845771 7698502 176250707 385162743 168561492 247784776 547389711 332833339 995344971 66413566 964619530 28940035 242632151 369750423 847369493 460600228 747091742 302455887 404281979 779873346 262548966 29994743 655916445 872873005 357111297 706863435 5097583 548692551 68746322 736417993 788444737 151896551 949618743 970410015 623508432 405755035 794331443 621045928 416553119 316633392 988424888 345834080 629646791 472528507 361450234 306660224 429244401 709933947 550451264 782981934 76613244 941306932 852138899 728275688 753110449 337518217 237308789 6426771 97714438 790886956 449307447 874183221 194630529 407306452 771963881 790999183 376676279 199715327 265403337 794662400 192834535 688721108 402948663 470654830 56544982 972496773 687015566 134461165 448688788 956800594 900157723 352227273 327725012 258903341 719305231 886518994 61957055 983019641 2916588 67347084 573555082 928629285 532457405 629409894 888293193 177429879 131071446 591010055 813708938 175774287 689796327 516219075 889628381 553433399 118057522 582009003 128557638 952757802 692911748 761835314 78299046 29761070 14370343 916854232 794057301 756454535 657557114 737832282 913390574 912191538 821438784 960389189 541201480 393259382 67178510 368874421 309704668 184480999 714128217 874334976 89332075 205914192 267396084 911659199 983878995 705150398 513073086 482823535 780462304 126680264 388844847 417275442 713583306 663328815 626092587 754756918 128107565 427521591 145323406 202420001 503000224 990210563 409378135 54423587 608084675 362883467 651487190 287581393 145619381 730194419 48229359 811545212 332639625 141548840 962620086 813328687 810473586 263667603 12134122 396259874 601101415 745764365 191365911 665674656 121552616 551569636 12462744 561225250 23484915 858708940 486617884 30530200 853866936 102621388 721460674 407414187 23332083 486503843 843630812 606349464 833590010 37324930 599246430 876749126 137653940 902826557 669786732 622345342 597499297 447794943 521224041 854015223 401405829 642332586 41524194 369807844 286382173 233707115 263185185 815152062 986436323 698284395 833721422 933331279 19467244 414031901 155899910 3977038 858706110 768815256 938167668 180682703 991814015 755866008 169560709 189207337 313894049 37331902 901214716 478729034 313100266 186209704 755765741 434314520 702659020 224787250 472530851 367150727 981791392 137537373 57053851 676557832 948323060 254856921 575174307 297789639 960292921 347143375 447213276 642984950 522174691 655664036 476348569 16730211 440925205 613295549 255330088 274412130 535361520 407611672 668132068 831741925 541910026 870785719 346542217 771027479 923410704 526287776 321919055 447163198 290683171 448979707 655480072 130454179 888824625 919759020 894243493 493660594 420758671 458171081 610236523 918897331 258450263 163386607 133526839 717165625 474128400 924826553 356817292 818933615 731322076 17496796 622299416 449121766 724464151 853349430 643689888 13453967 349284889 656834229 553810085 903396512 806387587 402808984 750501497 756031541 272530294 853521987 7189835 229235103 43454902 903234084 358162794 552428914 127725530 483693159 726029465 835939321 605928730 55117563 610535009 980137788 853508069 461720102 493933309 528709292 541328670 193619187 70313787 559483107 519151380 799557029 430162213 83729978 971146443 993231446 617359745 871420228 936344745 657878591 903857613 664393209 774837113 582951527 717078386 22016844 905140192 591374437 635616440 511395195 710739882 762473740 643613957 361597511 461991773 243479327 676030190 266148852 884648195 76642673 296239853 5263235 91053700 718766807 238190655 312871428 359924828 408469600 92679999 778967297 939226906 861164852 920004865 135687555 217512144 723717403 432188917 622089629 815705128 496020613 638456164 999045739 899346849 81830441 961748597 876392599 42083662 790334271 156063981 520690597 395594768 703459259 100455234 660087974 583874394 495271620 181707216 913393810 433438583 645171255 337194589 123346761 372580498 876633884 141308715 718373980 459006511 461378429 610959431 58384587 702687990 628700496 34357289 310871011 144041117 955270009 903677777 376787015 667283224 356602555 475182770 209993489 381783596 992590308 805617798 983660070 674211818 816844161 189818243 563972843 697762399 92114251 895621789 35492602 455562629 973590768 627329855 827216570 109624925 884818569 291323885 295664171 492649847 664669180 959304042 45901059 851865989 746182437 869119830 308246283 956902254 241014225 878531999 656011134 180478319 446138648 298733910 285767274 484420243 542241899 868929513 399206297 940427809 842972770 664147398 3336266 367911596 746620867 605951218 633629384 540716410 332696137 558804507 659335363 6743230 426340469 206490201 68940618 270793234 323243279 241749679 89207291 75211928 344365781 315386629 15082340 396272164 580264219 841417581 594569347 82686196 530993387 378060291 466568844 265868735 442972605 872649776 135552320 490878398 82172321 669828160 631657658 309770378 30038037 793519228 609108620 368707072 609911578 181785577 208063956 558328063 396803663 512314309 764348282 669350069 618642238 392535 753207992 921472471 202512932 330179047 564121432 679051715 697304501 73163185 814452334 8910509 777819632 785883881 728244639 962107895 12481965 682020087 609857752 694986294 452133538 626406050 942797744 403277257 492407827 268667181 129763142 738414542 538177751 671831611 811023729 549175069 852931493 955313565 243852778 932037337 215670751 647139907 772322056 209432408 828659314 242021905 727758606 273175118 815532292 41483737 838325610 360107317 798769694 453635624 730115116 482247902 67353104 154280786 828354632 889429474 15689345 498732841 515488693 994926101 997040373 644382173 651676403 585009281 445702138 522888216 310325943 988578238 657053206 797438222 699052293 955366913 892778459 10381924 215301902 373187076 573676379 446398862 602969083 287820616 81118115 465978961 780217844 193508884 754746452 49765961 377363652 679135639 823187290 181234314 126568540 432513201 128862649 821023758 986476698 530874725 423409879 482746083 120372426 440856544 429429403 707226133 769364821 579522202 283028898 588361568 544449701 225524157 952864628 349062343 231905588 77987409 151244397 685893867 79155551 972474437 380515029 264763896 959252008 255436596 751944255 122405691 413093983 805061311 361267545 326873906 995148290 499597768 816442500 597420952 570845004 546316484 470705655 760113081 630083358 683348804 139068836 609772430 71782237 950822025 556669616 412032965 559376356 47071254 910509682 447534169 338881357 348196781 640379556 355001290 37661097 107231168 330833328 914988323 322625755 14511506 429976135 88936894 561441843 441654037 534174863 866320533 298039761 795903216 27225056 218726584 513702088 306144360 5796818 52222071 600246409 833574113 393924226 656704358 341471311 57049294 508796928 324466351 208288931 608924336 990994222 915431381 948688804 984929345 778019060 243692136 7975935 203851604 460216299 959920476 621080481 749439220 680569899 846874461 758661635 150264836 155888696 102013243 947386131 188978013 650321025 491613529 453313481 975767696 400511354 82683943 582118952 713584106 433024023 956746184 135073726 434846117 8502060 46942809 661009709 811617641 205607114 672118068 817071362 504611538 327232102 312764309 155474577 348768136 560964176 186779752 290654742 245406605 296906121 178110892 737574437 633197849 403900864 135592642 945808207 593785581 950893196 565667909 493805609 210283394 134348195 72702700 647489060 88851327 987719030 738734758 30488656 803039304 394894959 498041296 219798756 510428878 857246518 461877722 244528792 3515121 560997554 782083057 8245483 480392774 244728366 750719784 425993568 997003675 876039743 669388095 293398879 333886428 331805194 692721725 300694436 447192788 426201372 744174189 140151597 612413381 776261522 463372575 754710716 239454803 396726400 157969281 398867943 691523915 941965941 944637659 350755167 678442121 808628806 115705268 130517463 500296375 917460806 505659763 909955835 54776870 723242421 904517594 429978065 166046325 714471286 269576772 752091137 894747380 772406598 287147941 794941535 2147337 925166818 280674140 842578214 610404381 474108222 45390254 311848352 847752509 835441404 824694585 571910629 100595634 420888798 22224279 392303289 553015051 944794362 427042924 77901766 503884691 401709209 182828702 880421695 638429488 445238261 168490798 93769684 589019651 332519124 19558287 695638791 595840465 343243702 249446247 264594457 984398821 497441410 728966777 280606449 502739959 714233631 600016876 61283059 923988641 528456420 984070331 372441776 369629662 581735240 437522519 916934642 910902200 879502680 748850885 960245363 430913703 43812718 377327704 434878169 30169719 896204139 888227094 902035832 984065530 712107750 334467309 251380259 510044529 433674704 338210188 528082940 216201506 562180827 480825843 710525712 991975946 915871878 140889051 573301981 377897216 869859448 95364182 585874516 61399578 703340416 214974046 389746789 310335549 432471023 521920564 460466909 330636936 33885036 973575967 936717000 183464245 875245137 786719041 599590516 978901224 326832264 296822572 523671765 489736186 800694104 514892209 374142748 299296864 298989009 17451182 750383054 79495380 511372853 789815019 432228126 315840793 793876729 693794355 733403369 214942215 251016641 244583423 747639305 744271832 63724392 315340585 158783897 884417439 851075630 845738607 196353212 723163844 739890984 961494340 41530948 286713838 558709424 254393079 827351440 187519193 740361611 571474182 408311288 754627705 756221556 186703362 632553703 618096196 518779683 83430755 847987334 650304150 877491635 734104812 474227727 569781738 859057878 43175708 352165489 284272487 102864722 684977497 91953489 823225626 69028239 303503595 407124368 102300288 375761935 965726111 986935397 35968870 14893260 201063607 480442053 853527285 208403692 725045159 931037212 537576275 653092648 163483294 278900076 566347582 606822542 45024918 140312647 196389669 485105406 213087903 341145589 760201210 989564062 264126753 169632073 491389752 353138326 191529025 419011740 362242125 718533080 752291537 513855914 365571390 795181198 895787468 706711179 160860653 441471966 461975716 701173325 632842910 90905116 997286916 75005127 512985870 771498725 565234163 911692786 969700577 192530717 424368757 614271689 112192298 793626817 685614161 125457320 417345351 712063718 753834287 428008763 457775772 88812631 860518407 738482341 542648975 286688856 531004264 937841376 597835981 453884177 386199447 35220468 600725737 808454303 931079258 622226134 637277827 251520900 876778934 125246987 713982349 971096650 960344884 321274579 771439123 839276586 36450735 493689378 146555097 799961082 908216743 120016867 281254456 516822950 708217673 297321523 663578453 700282744 154840744 502773644 852927426 357651429 638965105 405109234 12887648 467661764 95937678 834094715 998990669 642251611 787787432 967359063 663632488 940206123 692925297 759428749 956605435 161743797 888977948 2388321 810432072 822382498 141867945 739236208 641059000 506344951 665134717 50544142 220165493 552915235 907608805 350054595 510980031 23940033 514155414 683857025 511261860 356406421 525621791 704055386 671343473 151743863 976128051 783100931 660010289 750072941 887806800 34738197 397766915 69474950 452975194 36198451 650716162 171963037 851683415 174073817 445250344 569154598 916628400 393035177 988901511 717099572 178267934 94001138 829603995 216719000 445145248 622201614 622209154 93859621 312445419 581805988 935642700 669299809 301520087 742623327 162444317 538150589 385228544 617072557 641013129 522954406 58126936 839292490 921724709 693727767 585226716 939617926 437215408 384087860 601628436 350075640 926262629 360002579 32848132 599192032 461668053 54364831 969708103 609913555 613108738 650205704 728120126 507314981 732737997 936843158 40675123 965116403 912838128 631757058 866259722 769531247 255443631 554475396 373972963 637562633 569429674 605831790 344021888 540439590 350719627 765581683 542350846 874922341 417271264 298032578 590252545 238454156 359503101 262681494 880621950 242507708 725907997 732636328 466517448 171436011 623205777 766454459 195062065 331109133 240943633 963422035 222891549 174973615 55577113 657433249 941709032 166178864 575064864 755214601 840580300 641599759 532065244 753769781 546290882 210752160 53953100 608343714 8468443 941613737 148504174 918486162 322467814 874682710 59116698 115550435 999720590 673844329 280293150 56535120 503913779 924070083 39520509 803639953 640799383 671149855 216953992 80866068 259953117 200639084 281060427 550624068 1999849 601570588 613547727 955719193 282236090 317165924 354776598 884834659 110709782 404613122 978889244 65021359 971105855 678311592 854992841 839578427 438330429 168401894 378481285 181281939 763099583 274095968 101575864 142417471 963698454 978583300 507485267 263181242 226840006 609084123 608629025 788306201 188144098 603815368 253950571 725726353 587477224 368372121 537496406 961685415 227432444 847428038 749650764 160271716 721685721 423994687 883866891 831508013 491634887 717699457 234994705 208022562 586023167 520546728 897322484 137767531 975539116 492721672 587678917 181430921 42195753 463278616 523114687 536828469 703189367 582792324 107780646 878762577 50928702 210074422 69358282 686173592 154496133 755232302 41343429 153962086 526853676 222778508 937451590 650026028 416111549 425810672 429800626 60017086 84217032 504932693 643402306 678794221 75119173 981034267 511150257 310599737 164528119 616071889 458153665 143947258 886723706 573967469 964995601 875576712 372501200 625965792 899027730 852563006 669543319 110351759 532491238 213617072 169818410 961642066 224051540 654490381 476967922 409374695 50004571 795575884 420330142 417006333 251053831 671221960 457618783 492221100 538634177 506735520 94787320 877768088 133542943 300811017 70176105 907510675 795634491 434367664 622648791 898446164 208786349 342701169 422966129 320629561 634056783 770912560 128447606 568508304 191887333 596944610 112253909 798833687 918081254 229356862 326700300 314480846 679666667 946358925 292532094 945805966 186787433 197330031 794050651 709698748 531207917 646752377 529120399 535091076 716321994 252341022 952365681 723653280 90674515 736090354 234175998 813201000 516524711 881675639 502279204 691003459 926965556 296828016 247309765 123781354 372331642 623406753 386114697 433361521 296373481 699549716 63944046 152678427 740686546 420242151 315037077 130734778 847720983 745417833 30334502 424594602 895174527 745064038 527200154 532815261 1297310 511906490 368494214 187694055 505810275 286761227 358986716 479651287 930072005 35447218 628982008 634602720 910911385 925505172 984973493 474923776 99830420 674351862 739650261 486625788 525543713 989053265 394664153 19836844 916917961 248090097 468638870 954957812 670005107 721427637 431476412 161181845 300740798 179129032 632798204 918014430 420012444 155137273 185841667 182308811 810042953 576233914 308153178 901404372 327744616 919411179 578768173 206045984 626341738 640800794 27639476 852210474 697174302 422799827 511725758 115423143 298148382 110299848 249770067 949914799 64491990 169124978 956310070 624715349 400853396 213773591 671858788 74793003 606554056 481773045 597670387 622072494 150123559 889372090 455716467 216817739 879387905 99768712 157015016 439891548 342750701 62924751 220597499 658875913 883621975 32514518 82165626 165785333 811097247 99891928 592354687 492691113 254733432 749499677 5446602 823653418 62285421 195375458 87770527 340074814 373577115 723102714 110639102 720827537 699967829 850473058 547508980 836673790 232502660 663465244 576047336 349641221 194137857 868935514 852355974 824510399 288904880 677607831 227578575 98090427 870692504 685171088 934526725 507819277 598574180 958958029 34067858 295688201 954226879 493485536 573861257 447239465 791513733 6111178 440839221 893631779 338550263 586517703 523089551 211448434 416689793 923515718 626515433 473814579 173532728 178207678 270580300 587647605 601137907 715869910 54056194 599016763 434977035 28621759 426528523 964454604 814675928 30462487 770569558 657771736 868587993 186971288 326342065 937730377 632107273 560193815 460647971 80322076 507343671 197483518 302933323 416797219 629971782 793960226 169265887 577329927 978984265 972438703 715793009 993379239 7683805 380857891 959171388 508948591 542977774 109489482 993752281 564921714 108617924 498530673 743407677 572857931 640926387 310547118 481226979 268639728 313061322 95299823 963836043 653150350 874831520 21731581 859641403 558690539 16347500 933869473 896933839 710140460 845754695 995721594 123661735 4600421 894747906 205091816 307108284 505835510 740080793 484509951 770196794 574889916 39205163 138548782 33620894 933950825 653496338 458589361 929894771 446460082 529500054 572043405 861641225 881545900 905870147 301012425 14003251 521289159 745118679 519306748 352216559 649794667 654282662 940542565 614146021 323831559 35421964 762807239 893110055 909327238 980217052 137735242 379053947 954002568 159364266 288131912 679865815 954730222 755438253 955846671 610854683 542283447 965185234 142035692 271130280 710586873 741214241 963590004 897073145 750410476 910402226 109727293 47190311 296744659 667891669 384624051 335043212 599364650 827442133 659598800 48962115 174029793 51705535 259298948 129484116 141757728 314162260 802393846 954139362 154262975 357697989 607882594 466718435 277915459 111598944 280531400 273715835 325355632 490062573 147034306 910163498 507769282 863426952 728318882 722257795 198190079 674816172 235983470 212070409 463638004 837854038 139450003 631423933 398356665 816557708 708120404 259433647 83677138 591044582 704506790 649467206 66654775 446702791 12727061 724732274 395731884 552596862 435543976 590621961 943718360 980215725 145196466 478935922 66035678 446219384 940693961 403947640 87405391 203286367 718482834 466836315 208245437 126365750 551232079 215993639 18048441 226340345 262655329 50679911 661568925 378209502 43069725 157624849 196500473 892166333 588995908 946760211 507727344 653049124 681623386 138137786 799600404 834738003 258873760 340490792 592982352 823239690 619391280 273667735 956588531 440690711 976130249 500672493 906239687 415960175 71351637 607999184 788347669 228573317 411518634 659033398 534476133 862360019 398928847 244999546 341988346 604460462 236249810 700309856 854152902 569866651 752144949 314265984 951138143 722185095 920103883 494413080 852026160 972473808 975235547 811760386 87850241 944651832 471242030 702798562 112333413 928020225 852546973 900145612 347590488 153305423 842563038 21222777 239085422 241726592 659875352 442038377 306220128 295977690 928501681 147096159 565507851 726349573 668850223 696433763 287168193 714996786 193508558 721179129 476580210 730869186 171839397 887560554 81046043 774633454 759981764 517281184 591686187 931359057 652578850 867542206 854553026 115646835 129220293 541983886 601698201 186926527 842275587 924125059 543274353 706770592 466906898 779829127 290918437 614240138 676913357 869312199 637300989 78142514 294366171 858640334 865063555 205276195 702890917 825707886 1203654 996031793 953264063 442048678 726807952 41792521 374222532 175054948 487861265 835743470 384985426 684763420 126774977 439712316 191837830 881231837 502537343 565794522 228242144 10295475 813033441 426090735 642122302 809087445 591069968 184953827 490692408 586619541 695378495 679944614 252742347 277730384 758277050 920254463 269905764 203897331 435377829 982416272 143559989 822119657 814891020 798105413 571145322 882310845 63991548 941530303 616008047 259845942 507475234 652631899 791444256 560085398 341679181 755902770 696413718 582140953 755434557 658407506 80831884 70164121 894862251 986991914 268620926 383712008 342082822 827717696 1460626 113393623 558845869 74482219 859441068 935281609 584176183 251722436 41398204 860538700 690118597 635067181 789063258 931825007 685486612 907984528 686111156 889882081 754723751 51058705 909504152 360047409 257220560 841889916 708737853 48458724 801063998 142434898 85900964 60518524 624667719 977952353 635385617 587679068 614655040 52010172 33206370 229835508 913680964 114289745 587559460 189908110 867313576 48820269 637246772 208619933 992210492 768189309 169151202 852964976 820974450 29470017 154203119 692533347 460258577 676980636 232860979 702372932 177589357 225122927 792396881 641407734 992967259 274642771 892228049 915648993 685851750 755005869 43162317 586767016 236042886 91815294 303836807 970420687 243457651 596577487 531643437 301252353 486198434 782579128 801487233 989060905 934574196 368683667 428723457 455220674 703902868 482446085 36838487 3554961 429510744 976565454 282531040 161054163 688614305 59089613 575067203 211630060 691784819 319799673 361088545 843956478 31410834 387290464 284298245 187881365 158980578 761241827 244954493 423600707 35327344 363691974 85888272 75033728 482335683 500209191 270437919 381862892 552698750 7770926 126432575 364883604 602118911 70529703 741056009 826194067 932378942 421947113 125100330 364774889 130356910 100809608 27926364 822202895 476549737 855706565 366515332 108950318 470972794 565908114 191437948 978098725 435329071 980014968 655011859 231364413 377432635 614257381 993996736 98129835 72105664 218351118 272307639 540394249 855262413 190179686 10723464 162857398 601309452 982808571 631928359 407697258 202704226 184574132 723751084 695916228 218354674 928577971 580253714 440849244 13251860 115586717 413752917 896277993 191024673 567008354 434637867 282850585 416141624 637495928 480601242 683065353 49855476 331202338 114482386 477535546 549403056 701945994 958435276 393272036 356901644 716008602 725993090 443762101 541788304 976971556 612802127 122597430 346946287 543549860 207290276 437912776 456655731 464166922 917187944 478055185 981118090 513271068 512459591 847077799 105983282 225169027 950690896 260474540 953849863 257163642 457032112 447149330 398459439 540931873 128668230 298151213 19685169 296970058 830525184 371291430 486697403 858868982 759626608 157806542 125264819 175631539 376123793 618829612 264283141 420599715 84225016 751052594 211013907 126720713 366422224 666482385 190561183 269518369 861777363 639440381 565792036 995979924 778376298 80273925 38889242 43075739 382503512 246547658 983414010 713163062 864666032 39684968 685848284 755410818 497638515 218195112 764284198 865275590 789610363 398386793 880618961 175172413 375431078 824241920 162689518 286732041 406817327 662534928 771651054 477672926 405147593 791556416 2040837 113256123 58612007 551036545 276600743 662725340 281137376 303594188 613311897 590679489 664356278 219856946 409928636 47051906 390411283 163484123 491126472 276438115 879440073 888462526 916785360 690890355 917125137 473157839 500559119 176540016 362316957 106154634 544546787 594360465 106243609 832232988 973435735 636486429 303873248 470398227 838553228 182526617 248392444 118016304 161940374 579538795 210460943 896588299 968607997 187885511 93468840 601884280 646803934 590738851 725205616 341881005 211690270 562199681 967023566 380944492 974118010 719246384 492519455 667669825 468631575 876309975 161540579 34790599 580828580 133534745 565607007 779735218 180260704 450822059 453174042 696776838 817793557 764576622 372643727 544955759 122630296 295720612 975259939 131370917 325694246 399779300 720498073 398143396 468500876 264096515 690875295 423880290 714154697 671915407 491445373 565988916 55332868 992124285 292681570 216840206 337619725 794879473 437957838 994228377 935383542 757863730 169766760 833473616 287561723 360144634 88581095 426345650 681758059 289114605 522672520 393314970 685210731 33640185 74527266 715816005 429883541 850731963 288556793 458150010 60300259 409945017 310128912 720763838 667252798 379396013 956649145 593676071 213338281 428095932 201241139 488393662 154778218 591633854 686881586 422115532 331552447 414689215 758789113 538228577 726188824 609076325 561272960 932164114 447014253 82394349 854234712 79033585 594257391 969820043 717572874 310083537 604050951 516497128 289408647 547042871 569058843 169612815 220662851 25229435 469345782 697442041 351146904 847842716 354684868 673298049 546990376 699441863 826307835 681738385 31451097 362893865 101494702 858424475 444990899 599926502 439428275 753673625 575836454 858502380 709749104 608115292 892329820 413862475 359672064 531446685 639466222 181166798 44928633 564121249 332824715 78118418 120518744 275337825 408691087 879032657 835506677 653818086 364964023 163627171 196160256 852522297 62823966 909694643 22169306 511633552 810452384 504532102 822334913 445763185 292165239 307400016 111830794 870090051 699304501 817211488 799665147 851627392 652979847 304766544 410873675 365056258 500947825 399997165 924559539 308782799 992705703 255078330 790752245 419199521 541263956 17008937 247415453 821281320 291549488 376647579 677668402 686242035 745721343 792769498 682059240 265469297 466059269 975945113 514228886 856077399 180795926 19707234 470647780 405247308 517486098 513631149 799206696 75955077 387693512 98440145 749183480 365779464 10843421 894752178 177159357 829664331 798868884 370223149 962993865 50035312 390917965 835304646 240982854 183332344 418335050 539174941 574128797 128684845 669584624 593050359 163238640 235935291 296999067 723885238 825911299 272573599 430152469 997756037 694272121 959306881 735197719 362903185 276640607 852923313 290532815 136175337 433376934 725439014 712593216 492602205 855884445 109366068 997348588 853801774 975217352 182430817 321599857 710249959 807500681 741680580 458456044 353669621 173439815 951149756 269390002 81942799 285651202 570851412 599989798 559654990 387070760 933606413 40724541 708559434 59694659 71143832 599043116 656069826 323905006 820910962 703036296 675875952 711002809 283469194 917994830 37374687 581542614 627687412 343981439 23903678 158753656 550437639 702810680 616471322 531527687 990022476 412805127 386129051 442033703 283641513 338121508 513834224 630046515 178468597 350656580 252281478 230897579 705801031 352416399 988413110 632262827 387029260 114065296 32989218 866673953 445697544 696963021 628384505 836231373 294217560 390127691 567234025 870972581 964660977 971252593 273968520 173192940 967652184 30197720 868031486 536728722 723984563 206143516 313530323 14134293 540322385 797587159 702432263 589787828 31578716 134048091 371447818 122670332 307029908 207088600 937431318 901253646 60671582 269835779 297076014 882985075 747851008 802761168 824517908 794334248 219905842 485142564 357132376 134632639 288070794 465974060 437682509 899797046 764354092 817933470 981200406 74631957 500978497 339808265 488261510 46064754 444260517 275411472 106138810 515282107 436908637 15689300 344595110 487510285 516114026 779135548 338389867 105684936 938671983 818530590 370227268 600333043 56752312 976097764 837323173 318497783 423074341 41285598 236030871 855594377 728232984 516789147 572266395 557139187 780779532 161084035 122369534 668629436 507776171 138035925 36512286 730881940 294327036 170026528 762316345 677101531 906345821 428381832 370609090 624848991 701925021 880734633 396071114 823561181 309030830 753261149 982283073 589870648 49806226 179349923 42831400 746730761 181494515 91136217 300083071 420334170 620962401 50490891 624498866 836356159 715259763 209581289 970403271 190260758 925734945 414252313 734809001 562685467 672901089 25947832 779257675 888971846 208154308 23508601 19775520 291792877 779059460 206064677 66282801 551496422 934772485 776294190 270711213 702646664 881299310 581891650 946580526 318769879 759953856 389727701 443480604 577447356 602521287 700843997 735743110 682941801 926555225 88446127 522954549 100059971 879523774 267591349 86384779 365586350 446116892 674622964 621307542 396361815 372592717 826195728 605433110 962405421 296332213 813161886 667606134 738481486 386904396 924088143 459860857 225022716 358131733 95077471 882071391 75007972 912083066 925368628 868259479 908114222 199947307 182124403 12525375 837651356 529236322 749912363 650615023 219289947 866175609 679027600 105436019 734999444 751987957 22374867 305864847 872620562 236899751 664153135 573693239 78334264 802467830 518214632 455883529 992168604 328493412 810404377 470630408 297916827 558788244 119644156 328866367 308600196 254045088 922737477 54757718 843703443 476625786 845895850 176788151 839168350 442854689 870936043 186019253 667941843 232273322 691956257 66237209 968559850 243792954 496642011 1456278 85167625 589160189 691898443 625070229 225746415 697006353 969850826 95262133 903195147 865265365 389010403 676535477 575366 305984417 709774663 101208710 945947583 781516044 681625523 54936316 853975586 298498846 947413891 132159977 634043009 193010732 633408025 157322577 736445717 970785780 826124064 59418305 37969941 951304831 63947119 931255420 652031800 501436350 6165521 476252497 204397594 266878972 574510339 969495295 177705263 378099335 657410646 691774382 115280366 800682353 806557906 238501373 989705568 271844205 15889207 186129761 203790054 144018509 98904738 279260356 346233912 348010263 880830556 671655148 347442981 588689283 306640377 481831404 947453163 970809690 406255382 202258259 130500865 652144287 896796026 515047769 372614867 651548402 218401842 531521120 600966280 890651838 131347459 660420826 399017201 549735263 651784115 609771929 710013465 832456713 512665919 182440144 623279719 56250496 743799896 320735975 466693777 895621748 644745357 462589879 339529661 37555584 90665515 186974275 862172490 961942842 351479531 741184071 658345935 274558449 834791852 888407541 120609395 150879102 177050202 846667160 618574420 318792029 577583686 729558676 954891720 358854173 74655348 973638302 735738035 443466063 76383374 548848440 58770291 666348355 860868759 579910725 198127834 689481254 310923459 550485676 115389927 740175790 344375550 347704902 853751399 933878283 398648334 609066517 726873887 669862033 377722929 41427659 514105138 811637355 20338131 437419971 364811474 419791992 126731908 224063722 720975330 814159228 558037428 199123274 524720112 596140853 35521508 339829121 841804179 933223777 982241502 167177675 414699213 317116447 738412785 421278259 46239858 44668140 685075365 80243349 839323634 756963603 878802131 816711534 960786581 320542467 90543196 455394711 141007965 902585612 216506240 556558591 404594434 402058241 899643310 903883211 290375379 898238481 401890004 587742716 32114272 32077620 365591341 137843405 131085741 659566928 511440500 287520601 999242103 356175331 641582534 656036298 588209933 289753616 573859039 759940815 480426026 867552963 643685871 786434029 288590818 879445370 679399022 640641236 674301425 707176041 465921096 350639966 264805584 402113821 187440930 971193365 71247017 441037587 594114487 269026814 981164362 606476989 659797630 503178350 585975126 773226956 898366918 531075484 26431058 862334198 10011729 233947651 504891805 148708335 33691972 485182461 500832095 566382832 967233902 94412864 605430186 354872122 739099669 764473663 563429943 90046616 56862606 2709916 209807173 644429024 24658622 708422494 691793742 763202316 683000598 980524896 298104270 891494896 748543260 472783744 687620832 301994362 202751366 670553976 690392520 28537496 656118860 985722163 187383955 30978514 202518704 329008413 376522292 893777712 393550991 967285615 42887251 847239392 766193406 476264491 231619763 546107018 233182566 592599968 283967600 125978191 587796143 171573138 957455565 720131540 933315261 380048252 647051601 454869961 880235304 527916699 390458603 815757442 865735318 143934575 540375179 159133990 299022343 494993178 239635032 984589502 632723742 178555937 571898169 969189131 66975046 351849927 944497537 174269638 647837024 201438448 898598273 716063074 879241342 655194733 428791368 27886404 940684308 623854988 87454906 558879457 564975439 277186343 511379482 493092901 315134256 990334876 276900120 344701513 394782343 488777920 53155641 11520464 606402383 747502057 964417627 956797118 503345931 628221078 126027780 595133211 265264321 929573641 790612539 642469214 355446332 748564785 419698790 274303727 788107955 35098770 385880929 502052191 251114038 764753497 580585740 470296618 806077227 424281128 919290806 147447175 473647418 270089779 500242122 860189002 182014026 217492770 794501559 694731380 499488337 695893862 321671130 765437353 642979112 552147696 445694447 631164087 308936195 963920988 429558350 191620360 118246640 158442017 179957033 644323204 182565245 850432412 600579660 112606582 215836442 749222549 52245681 112887215 135612214 750594550 182767608 163110712 696380816 950378841 685805159 71286235 629715931 865840950 171255698 745931736 810134820 318943844 550800593 347499684 102732850 473469945 512227460 222211967 178201187 953507401 673272137 926057797 468327782 295843082 682903184 11609138 118931157 889897328 246739543 335192170 715349702 433681258 845112104 149559343 243675082 657081333 87146731 275607596 302676914 7116773 469120272 876042896 140914829 646130004 419744583 410485098 879038637 616883392 817178078 629623503 193870528 593079165 62157535 677909156 42581066 500210331 955884313 752210607 375221346 621584884 39866 84308096 848637406 292970569 537600192 839592748 372779879 158590236 242116046 572727151 899616126 546544829 749154038 120149617 15863183 297791610 168250623 835801259 739227722 797965874 943997599 828545552 92875260 760809189 890650314 657027321 420457390 220462251 758110973 542153905 272164849 498989333 689688066 743213983 105175252 828116845 456776290 600043975 64223218 885960817 405589971 391344782 880446257 40489446 245400282 353999320 578691214 338959229 551710822 916300930 786458500 587475861 518487795 413153322 77347175 15858355 469972174 692394436 183505029 274700478 623656438 579836697 178280210 784326011 93713264 655743411 821454025 399654569 834173630 684576013 457426375 199659081 887830372 296696581 255968215 203816455 791490032 201698640 260230278 134287224 321309683 639016276 524145762 714697773 536032734 207818743 496030310 969771449 805288036 392841548 555712126 567762912 662281869 736177022 251293266 259796310 377693867 428311501 284774788 591798767 965346384 267712991 909575347 337606642 847313368 255221990 525885759 585349586 651651605 847373978 613664031 525120404 932933462 970177644 802057827 32582399 555176893 126428906 422114424 412919572 933152675 944777331 538423646 894241883 388274420 597466013 347191161 62060415 606245803 825871793 372792119 429531289 870638997 632024069 811315591 208282572 991863769 67163073 360413760 73894691 923787371 205671548 350122250 320177569 547259272 556229353 292960160 591259537 44185520 118528192 953629243 69590603 326054513 871916731 32822512 899762454 211485067 899311457 180772043 289001979 326007280 399587210 581639545 111977721 327057177 835753928 311380077 162031559 801902798 875873317 364921057 706375759 826021692 392327342 163386581 74582184 387372620 343869468 390177056 321566977 877124618 887791514 284035838 821331289 440848399 943266463 680519118 126845150 503120284 196995120 236115650 51778994 647710704 248277017 245352810 126820321 716731847 284406855 511982520 691195777 123639698 955146109 391256888 958727876 826303148 184765097 264516791 801109139 183049727 94144045 260135581 808726451 831504902 548577107 366596871 589767230 65612363 68062973 754848515 797186654 264091784 156107716 159340501 595257913 75281471 513583655 595909780 544481125 29792764 744837536 999362718 672700815 842849819 309470101 708982651 875342482 23799343 339843395 244697709 885730408 703922305 190833613 516131573 718374057 723014262 53607480 706901843 384414801 9917987 622119833 735608120 748280553 86555729 666448289 778992764 680963341 875347657 963451999 389339702 969504336 835165298 93130962 946773097 210437880 180429416 364384045 453788979 706336177 980498061 828452362 123432141 981051186 436720779 358784457 314956443 725245569 995125178 257289581 549190844 993602427 505268998 482755041 390183392 349031599 809605605 492860632 579431142 235490806 835312817 26268433 147661425 536778573 862863805 402498846 76229111 950023031 513163299 470759523 766945507 802063044 543717908 90352749 670011988 575597963 957334481 672416283 272930980 966801045 270711108 634916761 872459191 712358726 472370412 177752248 598585121 396039694 965236883 747783116 946238907 295405706 980762380 138927553 407051084 948038571 926315072 936056377 659539896 174679372 636114458 564436643 264682378 316976749 271396721 703304941 332839752 798168249 690710682 466105339 609132410 101757699 262378297 338170800 777618153 639176247 851987876 239355665 917779938 655675157 364573518 446824203 119812727 817044769 573870861 47744090 641918790 232427409 507136676 656103796 570806633 935203743 612637188 944107443 543794330 687348021 217398629 407046465 608527647 383104418 942668519 722691111 95385233 644116581 707874393 231012694 656723568 3286804 390216417 648723560 298605027 436508957 763120679 701439361 551730765 77729584 262330837 167796482 255501958 73305117 54801380 754839804 752051419 938808800 501586785 545878137 84011622 777114442 784470219 800458395 582410211 145959470 546156538 914119005 609710465 871751250 922418691 952832369 854402621 529420571 796938287 992791918 50979780 99575911 929426042 668497456 846734892 148613065 142503741 155626878 571010627 26278501 432646038 418458292 629054137 369219387 224407176 996731780 300680003 779327453 893088679 453274000 179228177 578226341 838091132 556354 253820412 354370951 603171656 753161559 790060963 963991900 2869285 715277523 842820798 743861328 805707032 404098398 292589080 432542559 964982304 18633268 229976478 741497478 465523781 8006722 998333185 466669328 420706702 635938327 910953600 353538423 19076495 114502732 207155348 667067514 664035661 983788902 179672758 462137664 446048564 670637773 673806051 19515877 529725983 514951476 692316972 704164751 872806639 901299821 672666669 785736728 677187702 85642557 566087744 72912191 308478438 539310357 105923351 886521709 476667938 639535409 624674903 306864601 765421134 257178570 416677589 506401240 625653739 956020326 498948945 543424580 211252919 243850870 732172724 532075886 298417334 657196709 867233267 222606458 322316567 770508602 886649651 956757136 631268520 14152614 575564216 594984317 620553138 153837590 347622600 619178025 462938884 163078293 128664321 989537729 250466580 535793890 417532286 263955950 537031664 454512598 716257793 68142212 589300026 317524482 560920021 531563948 730471078 648991001 509940509 656861238 970912145 388489910 56396459 132858699 537425177 360575533 531693556 837307780 451657275 196911028 408887269 509330205 116023739 399160232 159589204 505009706 878071098 880659113 8063311 976096595 878781311 401719644 151832674 382241415 295518705 387594407 722875331 177577843 555625954 929987283 83579953 105346457 922605740 412027799 432176901 270196949 150200974 722093035 771729128 504601489 124992494 879909374 370740415 161499390 510244904 374515403 316682306 88534728 5878340 513901804 272911720 161068412 109475358 811315108 844092469 128753026 873756365 825982635 540568166 128295685 847917325 722746223 697556321 288684537 241628665 806389751 710264483 173603423 164965775 843249539 324786692 297242605 215311280 240423268 170028658 340623312 597413052 548992000 962173693 216591466 454931940 163438516 55647501 685586779 517154752 854044657 714973388 166947073 218246534 947649802 194724245 752973649 444616717 303251403 519198519 73981885 630752891 563468831 617838281 880146263 514704219 280495978 596116602 771109057 931672945 56870141 297833707 828166703 756151345 512515792 224087489 797970364 430741818 460319957 842593423 851772264 644520252 701112811 267032909 498857966 12264348 630187254 447442463 903102013 879787142 839332083 60501600 959574644 110674453 874126131 201734534 477864773 339074770 681069324 797889747 67583224 115323097 57661585 822520034 555427557 253903648 38897795 230728202 315700680 563905838 788778667 495003738 63015648 349990129 539318400 60488621 382442660 315342889 267057101 339608485 924682999 523663945 536926528 758865200 632571527 547700834 82627205 591219801 98687128 881575941 624735097 273903453 175623428 124960557 934095362 43723969 415130147 641947547 543135168 493368092 525362098 382571536 831737042 898538062 3533806 614499942 371121191 55504379 932872897 43691123 965714143 169531426 660600749 728558188 670946 888821953 811270768 330029684 216516799 39945430 993036852 95636342 676565161 305205513 191594182 931994005 915136787 722387424 735078669 774050471 24982728 959668248 827289937 962486654 726343337 767390203 363858336 883552480 518737720 992604211 660407780 78631104 638027651 500793426 138405730 721311152 859523058 710641541 657863735 745987143 450389029 675284731 725982984 548985505 962049462 746474015 292805208 231348861 391321275 375602163 655260784 384581304 41437902 436008405 526595522 838720055 157033576 671208381 602279554 777797806 432345493 892984306 695864165 99094450 614142817 475065843 76106684 664070485 152116100 155956101 605033763 524136189 415160903 47419485 67987934 119328382 284933299 689935783 695304202 648212572 953343138 770724403 795469773 713321396 958691253 779335226 559706928 125996276 576724825 863458012 992695962 977482206 228635256 992841464 781835307 991130413 33178446 292618658 276719473 967181026 935090635 710067905 671134468 928170758 464583864 283818748 485333490 306508614 342910223 267435885 163729071 246759391 689348113 801649937 64143909 713020334 36195493 432932555 490569865 117421607 466352866 601624333 911163389 154076231 407459760 497368716 418846205 805662069 899888950 951378285 839912552 853592969 352942198 628605872 598599169 359517826 651092760 509951957 913188256 819251352 629310143 345392518 56671165 318581691 395121082 57420750 376982120 43551880 192106577 108973003 495224337 12362750 232361433 923672404 183922366 420374124 853210684 736872819 795768281 745715106 913139700 451851743 190389833 373394302 151467569 288757125 328228485 803842424 724143568 368089875 517976572 357891732 53201475 115645857 14322188 780125159 874899384 617525504 522428863 444970811 288535919 854237519 73219397 821379152 383252480 56411228 15128336 112191281 593564209 674165513 203371166 209935309 494784224 288147744 75160653 536833653 226478313 355128030 52799746 125690514 885261508 145441257 342974204 316096998 119759991 248117431 997683242 262937950 137871039 661982646 663528390 877018024 824808461 368495790 215694100 625365153 501602517 360313918 465198785 259956276 946929753 162144951 429338738 494108677 837599640 231737072 522749146 93704984 641114893 737714414 400223612 771386624 947049009 140320969 6131728 182528002 757551958 819656895 1226980 55661100 39074878 208350385 567929616 140630419 805995106 683978376 304170994 996016600 941639426 11127702 432291668 137623938 490121462 908068517 300977855 283475260 811486978 899068417 264563189 822561417 968568941 579784540 13362532 925988660 401399495 191392785 36742764 125878414 580231982 351365178 434328076 500601974 719128047 657527385 413975749 158903632 539471648 46029306 83468795 537717641 477794598 730578949 789492504 293567765 613075485 91865090 740404183 197959241 44971303 24321701 886699779 831843620 169710489 647451359 633437293 249734880 403089380 237768111 104852264 701926418 965974116 577606067 30461586 915469985 153974052 910283486 611730020 20966523 206570398 855516208 56797498 720255019 311699241 719085047 439414693 165409558 302250267 492551061 548890869 942941405 757268920 545289089 985601905 370680310 147684757 809475012 743718017 404938717 280810687 495708121 199611919 840485583 166714179 753821498 212501758 862144784 872581058 988256502 925941694 825269697 82444615 184863173 795950295 39857457 539140093 1105533 723990329 27604113 187478364 973884190 15593854 776763363 797317073 34284686 601976673 514933523 973966185 526090846 181217508 216775006 640590807 645322500 141818629 762417507 28458995 574827887 837999383 604307787 268567841 402575324 754877036 296244809 452388233 703772473 472507025 468962446 780530952 768159387 614662430 308649231 736700366 338117033 365427620 725903838 104623808 284824106 313727614 863977857 841479551 154478571 247330727 196891067 782181752 455396685 267826906 75051997 597713930 42743930 526149482 904959305 451420061 775172150 335396742 600248063 814446552 157658279 199079405 6601143 322709597 966072771 110878002 674081266 413997115 724074695 228556548 731832880 167458019 551327055 980240814 716034179 844490176 205475604 834531852 936266557 106984970 953943287 411669613 693166344 98314472 491135016 100930000 619947984 848476412 340012563 611134643 348629114 921066519 90486647 3181858 207827658 327595062 69478122 372961313 847713177 351038698 940177303 277279268 891228628 712658495 111684206 742601677 673863120 5470693 401813195 98698900 877449934 203601973 8255029 502106038 982003884 600135846 33163497 198651689 321716417 163625563 633610613 879904540 246004840 997516958 61753438 357736134 241293346 752801290 398564676 206096157 590990345 786163654 176215794 16080870 647523014 310834574 526959075 317753061 739297445 315106226 34390606 167099474 578124965 169183590 240053383 805727810 500344242 268594535 510277333 55734075 388662017 495662126 516481329 417860578 935465701 38074677 469425076 399794855 360073794 433566809 362109629 32308372 781908326 454654984 891986751 890028727 563286460 468723528 690901204 123828386 770408396 914524755 582829447 576329603 50854312 59256091 173424652 938403043 678157896 413114258 277995585 656095570 304322654 102713614 313114449 8959652 258858368 181721658 556951624 336657531 374812992 63748110 740713820 290942541 705394857 610971652 367414676 111250486 837683771 397353103 192724052 87481251 114095744 117674696 565498543 354782245 560779844 381452807 410900860 700294691 295800489 844394319 529622658 338873950 3349151 303808074 552922844 470342929 710119696 848383049 867933257 240761748 786592633 231367405 193921944 916921080 927544104 550741506 170562351 240946802 539742544 51913298 501696830 65581132 453499388 678094746 239682563 624535542 164696672 391723970 578596387 797491866 15209732 168034006 218971872 521782811 572030747 277891812 268698384 163670367 860027870 227462821 339951798 508097800 633005038 371583255 781030126 838305524 580482715 474522440 57065988 797860248 901350830 656121132 710484378 441104705 430681020 905892612 99904865 181109753 445380038 689884590 261210505 898377816 765420588 105243888 438072317 692647042 957305147 595424908 688985791 49695607 529500163 799304658 226890678 730263076 964914907 790282768 975765455 664112013 951163970 154115390 268731437 496436115 723738292 96079069 272313671 682932339 212565821 670206038 997388360 573142847 475314158 486437652 489763292 26949090 127332730 509949276 123403051 450101745 563421003 470861466 140961997 13582253 89658339 183291240 29574344 740761725 337561529 613078284 107302206 14287235 94039872 405210162 77105507 166978270 967170380 956361023 904045994 484362634 971773867 725349301 88197585 135215954 235059275 647349229 73502688 397714779 558095737 687923847 95408095 851156994 279437216 566486799 194947037 361890621 954503359 59051200 512880600 342401639 926718429 251989091 247127290 593276995 108924321 34636070 221833536 171523546 771358816 55882897 576262071 437182039 424974704 16117485 925681249 493333846 609967640 47056381 171170563 131954889 915128273 387126893 288960249 216353924 203442143 675584359 514149554 504781398 874141376 765612872 899533511 580519317 554656640 226513683 452238449 324746194 573195052 307809437 716234521 598921548 557666430 774060578 311674545 453682237 361176825 44099104 16198892 637332056 723898323 919085531 435691607 959538347 797946518 541320453 945259258 454687194 643871010 944738569 211896860 445803792 997480125 245155763 908562829 147471342 5899054 375818525 576319445 455560050 109527432 187321831 40291603 582293730 970304081 909942769 988587998 922853739 357122721 310881335 774526795 640360946 36002626 647862080 110730408 251461964 495124910 374381732 913908494 619126599 507960345 576368818 277699230 600181560 521997283 491920936 363397592 114930760 928137922 400535566 440903335 189381721 521102287 242076663 251753269 612369296 394742191 801323974 720283502 474166761 769332051 950563233 773196195 641390612 586874617 907877457 353173886 156507110 15999286 643884844 509267161 110220729 73628041 620341112 301610151 154155260 907219068 160600611 16633456 999399742 277183560 781932964 768958190 890549769 472650793 329588855 153781853 744389962 107826142 726108596 198344969 831464854 876961236 899618212 950460652 99548734 776878099 388427838 534166904 535236899 472365415 815316665 299377879 751854618 227944600 247317726 561887890 553224805 748826993 223382886 109689459 592504072 433676416 218966083 806031951 571418277 265339451 856542168 463662872 604186444 313934815 664816407 697894115 262690011 621163358 699791327 959652619 37610728 239424075 412946684 716958527 805518494 718285837 421489893 901670168 627081138 847787892 615069604 672603413 837556621 96020437 54704050 971834579 992783889 474492492 468664610 431304367 573350095 671635313 724946392 785150128 360762483 949107110 790402321 481381338 79487724 446355759 351372792 25470954 553584500 90860252 57046288 624520540 415758412 838244431 443318417 195947943 222733089 282715752 474137472 484124017 617319864 535003139 722268841 769327576 797398665 140526245 602608663 517591809 104713926 914289258 624499316 18562555 361572765 604838329 718304431 297311301 480424441 299136586 68200437 696261178 634236622 861624683 226901523 931486110 134117276 764641647 21379088 847527185 952865376 707815594 767356544 73261927 923833503 583672176 133171757 404442922 376633172 806113011 709563449 304963773 88021686 930901673 587781346 570312144 523572543 21154409 794261781 803748147 202482044 976176431 577259075 310060350 672337344 171887802 534820981 200371114 240102958 47180542 800475099 32652535 800944955 720109463 539406096 987957684 551086871 819749470 76535863 727252166 906959652 799327055 335236110 954524429 498381780 99751059 644366532 760170390 858796292 983555186 918811204 578866008 268023013 290410208 715798169 988799317 980830761 614103300 48700541 327937853 232789515 658512838 879091980 296492472 785424292 149137622 596212028 767429881 95469673 906432999 522601296 560239893 223759959 661069538 39163438 42205347 292898467 204516542 843815925 465097876 923451630 712888527 829609722 277094708 70103763 34257609 689123487 960274805 583763260 598765192 169639247 104464393 217800145 681414816 762061174 846804 287158315 905141382 76104600 316873477 421204771 483318985 371474221 71766852 342034859 251935985 294062562 626890472 282388987 880630635 319605623 242041102 294511755 583919527 697262089 637906530 843153684 213023837 792904008 80607545 326881332 194389618 380790317 186579873 497330794 120008466 586973906 149324030 978835263 153428424 462873964 475148051 44072515 277186861 812196615 829807263 127183013 637414606 501863723 54333567 472341139 637119839 604204315 661956586 426113878 918878266 909630610 800423147 182914668 708529428 226883125 767213142 452474197 348476860 76858376 348794189 467742899 698404266 651704570 799838866 772573509 728713719 389606177 553891100 907067955 529407316 493290511 749066420 655094883 898721238 974536529 785203188 869267497 938908433 563041077 864683109 69564126 772695881 754242025 324889246 413539102 41305003 950266155 447351043 840159253 763967681 834320535 403897498 662875122 187928373 593039455 779454511 732760661 547123470 513093570 61866084 73177987 916433041 807011635 814355016 956960287 612630647 728775626 627300415 679114666 493405809 826024711 409692590 662226437 748494210 87499099 682942588 682005335 952033495 94782291 73381489 926946810 652390229 891686416 441169949 988538322 414479300 239874916 170271619 414102683 119875550 175062852 337183446 842109751 388113252 98946542 532485037 146244591 732926776 748706302 587129956 135322633 630043594 347161758 824330351 961708715 435132649 886002246 814515664 500876934 98664955 516537661 471702792 422658877 927596497 231576080 693856534 675550074 284617713 958160043 937340135 542126091 317265853 846640907 75948962 984171870 974443137 58552465 418030401 355961103 122469788 922698180 663078067 281875078 420363770 881666737 756094636 699072000 261801352 591864982 622797769 725462599 234202497 913965661 775227534 241652265 945065376 366275665 982778943 982276025 575237596 533719917 826680522 809542800 81193401 46736236 546223651 744083314 702601291 485133112 706908128 986275085 138227673 518812121 435806408 99208729 765099340 441568716 949426684 74049109 170308981 201698742 903092192 22172304 533656099 690890237 69574881 707740766 584831325 709704596 772233362 158534755 286691828 879438921 680132150 43442051 665823044 545542075 935252642 472284299 244133176 392699165 203630531 311523069 476478015 298836851 423414681 349559242 953917743 807353216 725805303 943583966 383769461 711097645 249676355 22889530 602931851 443340588 470388417 704756397 831299079 670890566 138864757 475272407 545793019 757986563 955818815 23570464 985885134 657982665 331746235 454037982 37454488 778284681 845980352 325445186 941340111 591653144 280882637 553122471 895355327 899328087 805340336 627433895 76905047 733364369 429434895 132910574 367998180 841289316 974744359 854011564 95118244 943385 328516871 401522408 515033111 214489018 980286557 399758178 739563811 331199411 478698206 773099605 252385182 148970958 310493584 838133874 156199342 402339779 965274340 94001682 789030041 44058136 392905289 741235338 429240433 121862690 78864621 419008745 3837308 141871203 670254719 142063254 237241223 856343916 8019129 582237314 980336913 724233927 913761598 573531379 333783667 37801556 241625494 889075473 281480343 865112955 815238151 77180916 2320892 252141274 14571433 414861953 734783618 650962452 836780622 730720692 975766624 739987867 845909175 226848723 545901396 190527453 390213871 57242438 442478656 22239631 847482102 268097123 685150639 324953364 166877638 226636553 612722254 747323546 989331063 20071266 487790978 329540884 289098459 793788362 324007339 614099911 804903381 656885483 281107628 159512600 917124942 980580231 396930394 596866100 179772717 62650607 111945423 175259289 962893869 110540346 418613592 135511060 718166542 453194349 595787160 732774800 586780364 375860874 845598856 215516250 464320539 919939754 945378457 995838940 587036001 435577457 77146105 667313199 819270993 337820196 162049287 167884437 859801289 518175428 836822129 949888831 514973001 213403337 906306921 795266289 516655362 213242256 680011162 456976395 955597161 152172180 288485340 351783854 930990787 420503028 7382997 460356077 825036735 578652747 170521167 598200303 779127379 343554802 304870738 519944130 716593090 721684394 882968608 29389352 453092415 891961973 835523403 750704528 743844149 41986743 987265858 769082302 706915796 487328928 210429747 99822150 83161284 233303005 323703111 793458361 331461722 36365548 723865634 423624282 105614308 420030695 758504816 789082400 551218457 330735514 244152910 621582842 205045076 409836766 754122290 502075731 823503512 276298973 706602229 892990356 776718496 43756856 687545560 494844880 533546036 542904461 579906762 866913734 775309335 251466869 202674245 191835917 232259655 166828572 786948752 842246193 765039425 694565342 761700661 243958957 444988168 933483124 800200636 951609559 980130754 686110789 221467608 95887336 2401580 542048057 611904158 131877890 34874127 440973253 446145533 365428331 562126132 109395467 620502917 248482212 413194399 928755821 617514930 606947767 885200426 387528672 807509866 768361773 805558028 163402706 422055389 49714485 176128304 691893590 354362617 557214398 34776399 830832823 73849229 656845175 752577619 196968372 222341630 395712322 940887338 316302750 793856684 423358801 807276341 157736480 610041301 871748763 241114090 338328423 11283989 512898969 51451889 124056193 228733774 421038293 202497922 664225125 185075881 401485846 578751176 796078807 855766634 924147670 439169062 146901655 453852847 94849316 716360548 486629899 172028306 841506899 455546328 278562532 421908824 30274448 501300449 402831979 547895679 235467495 558697673 730688012 589957331 279709019 559905286 227849786 981715693 953348580 691047906 55505382 855523916 307895329 436754192 941440348 522935303 141563441 794558233 620791050 857244070 989963898 584556096 737030327 269195569 518771256 278370809 529021134 11215547 620599119 122029826 906422480 663302200 83893277 771348892 557810653 422440468 710515728 982115753 104886542 915945402 144147065 128658649 600877702 101112135 484223912 105554588 4605673 62303126 960122134 960806620 684807503 652356521 831734923 87749325 957318154 981873862 899528840 424524969 750943135 96337351 866796222 944703753 52990432 787935101 311237559 672959544 507562659 102947040 941074370 634355971 593817460 449364179 394685589 182107739 754884013 953266255 201381307 588705264 27517611 971032506 927726433 254728948 373037280 503081394 381448343 415584895 891215417 555560059 984131949 987724478 893283591 757666040 84742938 470793832 175835239 162239043 873442163 843682416 231035639 803503006 880646749 869778395 922064277 988179532 556664165 266195782 723258671 754995616 70388528 858554035 480960655 547709056 817407272 764818539 560498872 841621904 49114738 35694027 466266318 26798751 144160448 140868882 584762912 521958300 553427760 960279829 43092921 628462948 257256946 884420178 318293423 227658256 876591960 508411482 284758670 224036665 558565479 320579783 132917036 50169482 191785369 214137156 548486157 58990500 297473983 338452239 207566226 370312303 163826687 830879532 915337153 158803836 94694115 389445328 240659798 515870764 240790912 468031446 4553926 649046153 916653547 698084025 85134781 400304518 328129411 438654328 514556275 946184067 400405853 441703547 552425354 455145545 435254962 814565965 715873017 939587768 465357424 639813102 240052345 142723070 417360757 973175678 626559390 2633247 182986687 958634051 897791521 474357888 513111564 43963493 134678783 149452946 597536644 560080495 204082041 865483320 603732641 214451984 241553544 114647512 709859555 261118097 973369868 338136602 682377491 981536543 580259084 43180387 76817832 608696938 503571340 226546919 395374798 78582673 947371435 308759876 671736597 50499011 623178168 701777402 433583274 836565380 500065436 72518942 50537276 780106649 730957160 975288983 936599214 695997000 307794551 465949429 972785193 838201823 141699666 809019022 422056818 464775447 611100290 335340093 199286231 711156814 540969714 33275409 89492581 284581519 982636310 429679886 500533958 211649100 645454449 210811861 782562349 745895812 793455359 176990394 929770028 512962099 86057231 599136615 209028077 355917655 152247338 388377318 598476799 737817234 135269472 478285137 905383089 943233783 866647400 115193568 621885753 112024371 684941390 208147078 341324382 649430458 517688703 76954307 16175950 576149055 855990069 762188402 706774948 525557717 555304384 592992417 859335626 434366412 777414027 58425884 542797188 956190565 172126500 836781466 251404392 793426124 11749945 194894186 368061062 302106247 125733232 660240294 591324649 567285193 5439755 502212368 524074815 470144119 900079592 265307890 851011168 771857055 725687063 896387405 700392922 867709362 403240029 572102193 983527882 209046841 534751405 708401378 495166823 876865678 213785965 297486942 947837085 108264019 544578264 861458705 751829036 998868046 514679164 826683239 585823062 98490658 290246446 664301522 365316792 540104900 973331580 784805302 637442686 589338924 390357356 861728554 588954137 22983529 215576767 756919709 966776854 47519607 589564809 300552746 57835944 322790094 666416854 599260529 430133154 486188704 379798005 112546996 242655259 182111967 270098868 17734984 202703257 985362385 336112490 496272870 824836796 66087062 288634662 411149577 880002403 53696872 143021433 869746961 535432837 78753042 994336146 608741679 468148179 578029172 421090663 829782260 159496694 8744459 787829649 104815659 460183957 631672743 942544359 212585033 227954052 451743857 991656087 984290621 178836290 376352328 537349307 184544627 980085750 661854044 792358714 500079354 119216 319538551 39094534 956606755 720860339 248667439 237043686 748135370 610549921 774243910 214739200 877449212 936715750 495237486 322199340 666752607 139079436 487560204 781161823 883196509 247760636 989730668 27495077 39838916 786100697 617835724 788293223 552024667 29627417 784887709 585637305 315234360 484743230 653369417 85145377 207153478 941401657 452981107 63853361 997306174 738400942 642005129 390928958 156818515 642575784 28203411 264028798 850769335 688185762 395411933 879081433 773485429 973234009 401076287 322828914 712952631 401769519 40975366 999494866 271003942 730211527 887098111 518728646 617093982 516414688 389614229 253997578 697058437 905603267 533159470 405587507 958586992 62676027 991593967 318063053 601009316 37656162 284918808 521624561 916995121 677839564 588999152 765131136 523915391 622549423 728738912 982158101 245473801 857262547 35773734 396129909 635924959 567482642 291458198 815357844 873950293 193706573 419267191 358513493 68036399 652758575 713847199 239300995 760482461 561067168 592370128 166798257 458016702 302339433 361321140 457874707 332611414 483361845 513724007 827319367 822066347 224861417 798559913 695127521 349203327 208652280 142462550 416643371 107592154 875625083 190400475 783143423 787463942 162502927 692141903 907001521 131233841 975403518 565473094 477784618 462995029 841289211 472721208 194415616 632559697 423585404 346819632 266590193 469551495 152795106 419404442 136898790 239292729 343194066 901171265 997252664 838114437 372634419 258235858 180938102 268438421 311133688 904785623 744280673 164550766 295488968 322082161 274517018 431121674 43307677 847663694 865326038 122127584 295289144 146764625 187046310 756627903 175229398 335782103 320252301 486143385 833545836 821721816 759222283 649321561 859620194 903989390 99834102 932833393 38924843 787792188 496336770 13963568 601298210 47703545 883088845 174560680 198518840 516351569 96050507 509117639 518518223 664902877 577364850 418934825 865285501 193358848 570212572 261594647 476956282 497161909 357025712 619088828 43300475 828996974 341995200 750836856 546654978 9175160 581785172 959197009 393756776 452257332 841464542 885938462 606821947 348681456 849847248 999336202 659648328 969589300 699103267 6966637 389036929 259901670 176514306 526962188 38834568 368408365 644272208 475148360 941841429 636208869 949294053 466789288 29683034 838720403 351739341 88434524 308721622 852718849 608962043 997562221 57753282 131092832 512757689 458636130 969918512 922752608 434452929 488549179 903379168 843366537 115494075 934073595 758836610 721315785 254697005 963815806 388859520 531775141 530356703 895659383 74903892 17326715 328353741 451122964 14716602 403992611 279554391 575406072 931264339 94083063 309744867 695993093 773005434 474197254 874232027 810820715 3652677 625752548 145779341 783724935 346494990 292870490 872508096 475898034 396781691 517925488 237324092 355476554 341524614 318804268 333501117 710849816 593160521 717373489 296755365 486294919 417313036 650316423 866687488 682931283 216048651 771963314 70465009 103047848 559157443 413728861 513693029 592428469 463638790 423999592 620808649 712847141 165271124 453539883 135583221 739151531 482540802 330328767 64494727 343044531 382009963 378983878 767073463 339413797 624727567 853552377 459336323 237770900 477287757 84124289 583779570 129870954 78529087 879431855 656653537 320491863 434383814 748190530 136336660 897076070 211202651 213190413 805030885 781313892 30269684 102614132 596701175 968834219 672225223 729768011 410997977 483175684 930071085 883937399 242985612 63374459 421767794 569143093 620700593 774928362 43041192 733754906 58294220 66776713 540372240 33280747 636088749 524301743 367919934 250092775 756184242 472187700 583476940 150323961 681653437 754848724 48312851 936019887 55675549 313464773 699933835 873330595 312907489 529413208 801959069 23385638 209848188 261631100 942941146 430089041 338458574 709242354 298770447 682333053 39294108 941582560 801990705 638736369 361465238 838405206 209659959 347585211 108345850 467471095 494801163 267946796 212349391 925321700 692048680 622288703 91514838 145838353 694050002 916302115 633783487 74511097 871896411 335734860 624265331 608545854 205345342 690988911 110844754 55722318 836511022 197574254 526030628 291264060 298001191 693993045 604583757 621995532 635984492 371166376 704511975 238154822 624698595 393094458 89301605 319684668 54549258 101709921 868897497 922516254 621191609 968654962 866518104 974210895 115048897 290835642 392521446 710434249 208307694 490806049 517518538 662777445 167808313 423020720 971510403 963088938 528959582 206891853 713155925 967168269 278258926 349726287 563635725 693348411 138299359 534885645 14899789 956275425 918630035 556084708 989251531 217691672 804761732 587725238 867767421 74826971 270755224 91932729 932946024 244058209 666611362 970980670 225339259 385410063 318409445 818893834 521991119 916475768 86846481 831234366 662948747 460550018 243449369 27785447 489895980 332815817 78591323 129368160 629401005 42590833 615205924 71024414 291349596 544915039 5129747 510361952 327795923 637723511 949154417 499249925 123557371 42487023 759595010 980186818 333335138 754964719 227718142 347068051 910734004 762207184 89021028 508996718 28808223 878594424 196732283 679977648 999053079 822601816 217405517 797183615 242200364 759492873 566808719 638285523 335644717 473818690 55317484 327162110 913597958 262922915 222417082 120911124 158644407 184411570 589443349 686583563 428946350 709777577 422660237 368920203 191603128 305560931 343112046 307245888 105470929 749659756 645750373 245806221 452832145 104455540 285124254 560465329 128126260 624120499 703805494 289091884 481448729 332193971 347194147 271914215 222436357 622116702 719522876 327858138 331857961 554927937 393556946 127677161 672888854 342362274 225305835 503504501 461056253 32237710 11620770 315067701 416558570 266226004 505721518 504056865 816965746 476189311 861664221 416197910 345048774 362839471 132691077 291072780 522659952 69712842 635675496 276339732 489917470 43121673 475005667 42617497 846597021 340386816 169308273 309174631 67176621 871406875 152107677 156651900 234369725 748130393 66206307 291860896 350540339 631742286 977960444 319205923 31861453 826610308 316527956 488094634 28854172 53123376 615863234 911848157 896096731 737514117 656373672 162324653 667266809 415096701 935254155 860518399 641224751 148540070 851293595 494431582 621015300 383488234 706270769 856780764 825125546 886051658 261884605 345077789 920117643 150367467 666764344 865480251 598382514 941399604 147532225 841435849 121666156 43318281 618394364 103585209 992031766 758139336 64654369 61151438 27761209 864816560 40506657 20242660 168065486 661217312 417058610 935460181 22739255 407560693 733205998 559923528 897910429 60174935 689609023 262170712 974837826 913487694 521497962 576097454 772809020 934499870 233272078 502896082 380694928 413703907 862108681 106100773 843250007 121730238 731461507 868694957 486688292 974990941 710331089 390324872 398451383 517460858 988782920 694899616 299526000 33313586 224705537 327317055 791978425 958191071 584133923 234287218 378612349 263132457 615189712 796270305 924424231 146687496 738810741 138138648 858499871 285197401 780671856 711373998 138481061 859074532 434710481 462660198 85592991 851372972 622996135 469473957 362681221 713086599 378484336 909292909 781709620 370804014 673395227 541995289 580643557 317780359 352570387 383052068 927814542 446365038 600171290 930778583 912964186 793138563 607760527 297889334 547188974 567358563 315366778 716568181 559250559 32347015 279247178 8129693 988116535 314658481 295790772 539880588 811540133 107886646 153109858 690860776 510956159 387837881 379889350 285814650 93080155 731876698 560001491 271178072 625862479 855930715 126287651 493321616 809021311 995484127 652824678 274731778 627334484 89481316 954644210 591855045 432081727 982595757 126833121 527260184 575597589 838392779 150817165 231941408 742460597 89958697 37493650 204418168 481454686 94886654 49383292 305478107 792693974 668026824 660222407 823869556 54502191 329482461 837512157 737695653 688172821 827361973 263316708 610305731 243979079 853519714 446679632 240667159 148792468 708950107 908943055 793120710 728262964 151571506 355718538 458946151 268656018 96928684 535500341 317377084 755604679 94183894 374693809 43998147 879548669 227669941 206419800 159317915 991876783 303280195 683727980 952871041 581211565 644098453 482351755 668714716 77287528 586165089 609692282 885957537 118357105 704467806 684065480 253517458 695996903 780114919 472437237 387741049 538609190 995703085 468890188 587490353 168526872 451333450 443820691 631663873 715037614 830598487 586788714 15446959 88700204 984341356 719891839 310168659 397826034 488637300 664484454 994870187 988366387 516231623 848336141 157993496 667030172 808226367 15957083 4207874 194471667 432906447 301049919 444634693 847491641 460089344 719198580 751118719 626883893 799364463 345872392 127058473 843458571 240900145 57806738 83070131 348651665 274806503 86041932 558537804 192732182 735641788 427034580 747585649 430968780 430935345 667674493 321604218 401064342 67959840 165035681 518447612 768915474 213124842 696728492 426853113 687408541 721260540 89041405 963714524 799368537 195860443 945664542 583991156 85755615 106843143 650575692 215470141 155771872 160491824 713505496 242114810 811722666 660106783 707370941 174252725 281093784 574370398 863426041 347396335 26651188 94118677 627021009 361321702 425585847 329589488 30457042 426411015 765358564 104823241 936915240 645794588 318274282 170466638 410897303 548549182 805636631 941099848 426504099 862728137 547033234 561500315 244396044 834505766 958973114 667468271 870971235 492389326 605706346 849806778 74919408 69323538 662689360 709905097 3742725 907435450 806511900 871122254 682906931 491065056 439305225 340302598 242699935 417636765 76956549 527801112 92453226 98646097 476777935 351673324 420775698 374491623 738902003 727543674 18855451 870126656 26522215 639790735 504010248 967132878 848285103 462447456 433343922 555787074 342418318 155499263 872692936 31983178 30345524 299384855 930072593 33031388 335819086 491663506 644431415 712351047 240476061 842851291 461571915 847382389 196081615 386094325 21293498 1666359 319804323 758949602 977431885 269616049 801661647 51237331 710111175 936030155 459533450 179470208 116964389 550709587 749562835 718858009 483155730 417014961 892019454 32240169 780636808 52105714 99516221 585089510 350220161 991637081 929200806 227198439 930177138 385757028 438871619 7507277 290137507 120423002 383538155 589316586 200223125 191687463 733980438 895600428 652178941 617995824 66597384 780917780 168833317 242675668 181040129 742720240 38444924 997120655 281686447 410222718 227017663 447751723 625014726 602641947 81491700 741570366 967112533 372430907 392089627 623716980 399647196 565785242 646975165 557414781 604427694 653934652 951705562 73847089 169380235 578485716 505672931 803379689 62514779 106706386 10168234 579879351 638508040 352414726 406110318 702251605 187220507 367633015 567491617 292567514 820845936 841932085 292950417 258074187 536994961 363756378 586802981 831698079 382120019 579119885 926045097 800982069 628020939 489695493 331537096 97811997 350542805 110623348 761257798 296226127 653936256 797365176 835555794 75969080 302868311 630700175 100032907 567292687 690402551 212591506 171394691 85671314 48636720 125140410 148268797 429022397 672253387 38548418 685907042 306836520 966644303 984932043 233013039 503878826 238455908 826710137 844672965 529718870 85485874 796368801 993885323 428827287 271346321 261937696 649594582 168302137 496131026 968535681 583167399 189779612 137878995 452524760 73052189 598348006 839180047 708439512 489764124 594120721 408215955 253166929 572082877 764392770 137668127 981277527 236582776 864271590 320008377 382464740 868641987 698953495 609582771 554177989 700179498 40751086 721136250 67294069 576058981 199568903 628096195 671064283 943697172 426415980 40890292 417515101 638831417 695295453 649142189 957773827 729284557 788044271 549345842 432215261 555936931 14485219 443450679 942895165 825013417 436115590 533215779 79620904 140978398 251456755 190769421 402223866 439737674 61282114 667129107 655066662 415897230 330374958 602959005 356867828 188189979 822706334 764723968 117009015 850743217 61839066 289311087 907480422 217625937 944201856 991480739 947865970 854956204 801851432 938355064 191429992 249045642 147705586 113026854 123997167 322170101 280696403 790702809 206728464 344509784 518551308 387127486 30046664 636887890 512084219 526367002 897736412 650053938 5586681 222064306 652774233 728890803 478021801 400836576 114938152 791666292 522186615 156478562 244587356 802777563 686358774 287209590 891229151 510397801 888050760 365171710 152632847 404106351 124716213 899959711 388674247 509649367 617305945 395425493 357647624 706065002 341672184 838667963 18780123 173430530 428728709 241607846 50962626 631324663 533846434 296714061 196519166 582668571 139269952 831420117 80731799 479530816 510683546 159273728 812122243 840421432 413220088 860057650 131234178 216119856 112362166 886642415 892424009 598753505 415912086 757884565 338415838 781482190 192137892 756307931 353974395 870077817 918920909 240443198 532165829 856398280 569558384 299356239 55197567 826546272 298781798 741708720 518457498 994578089 143613364 259718747 958984781 835099608 460731693 838000760 604557715 577102034 164069430 299791046 300503437 874111269 436258973 699619488 4733269 195552145 51477417 294668803 300912036 415557506 924373806 82929781 181594599 628354440 824030337 424362347 534911768 323033776 571106829 417275154 742047312 799884744 33945811 349572684 76847981 525116976 73929143 876868130 572330561 734291970 273656175 925722653 897714634 101190946 891924911 405821264 777907945 708403410 894915154 150684162 324875123 218212415 135005590 923037688 169847874 89956242 902921095 856598783 146593952 761877049 822783231 14840524 251896125 809502343 774843524 592489305 952651056 674525422 397212917 378939435 774765977 586732378 88010109 395315882 515722236 367479452 281029611 791047941 37073716 45517007 558418578 718460092 933011074 973755159 570478441 384824769 287521996 384544334 107068421 36066401 419682898 586064624 965280633 278025823 818886764 300002644 181696012 553459296 67347620 229173211 142760281 133194335 594572781 896403295 431887544 945471491 1963345 638978595 49316365 496498263 51085622 819176592 365688648 23334587 567828163 452798011 510843629 81919723 523736147 183745738 856582042 390850980 742726289 802802309 498834060 549265646 859692214 678954485 207051333 478208313 921039829 100711392 566353442 694946386 425658305 336775911 696939998 846934255 127434841 654374388 542978937 196620013 678181431 30487908 288145220 722557683 883689527 752653698 717071579 989266274 435832774 924973337 742450131 921787596 359543148 924958710 715465394 545949915 291642493 700201581 529350640 369920542 434569366 470915541 58018931 448067990 530234280 689932021 407674140 691322333 586401203 932263580 475789289 406524128 81323151 736980971 622715089 902449523 561780021 431382307 353816427 442073723 779796708 225085990 942473932 943034200 785041213 877613008 43348712 397385310 862780126 658587769 245956106 793398345 478895868 474207314 121023796 392980501 905280005 782599040 136115997 465123771 851081490 585651582 615399674 87383325 206030160 617307537 266250956 112279552 708288061 535426900 739078699 876106816 407144334 947699351 950199321 68258184 183504431 777530724 945684558 953953791 379382700 523007205 782753766 821840449 853428558 231528722 271065281 550283409 52911286 460203490 438933821 376792800 136737556 450259618 159625268 983570555 977778298 116977369 369207919 911749119 666134696 984921548 893754130 626922523 92442363 515334345 64845600 830811548 69712012 831442950 940931505 982926505 993713272 96117574 179484807 783755555 503503365 762079886 874497960 890320736 996226843 192668357 689003606 470364629 552667084 524500066 209695569 184818422 104357759 255440518 511928944 477933462 105958570 954532151 12804384 522178908 200762696 255040690 109105017 228059899 597961712 32619747 282491153 497255145 796261336 481631646 642721270 511559813 821137009 82858928 150632963 121985692 440923186 591081667 93569602 660740681 504389854 734929808 886478112 798989198 351550821 98722333 572687980 469216362 142125249 192336322 946236029 934234100 234878768 537404065 776682404 765821027 287367959 832694184 761620835 121077297 617484842 420321468 655700447 498809270 320099940 980666847 780697599 91567455 114356835 320172206 553720574 108565701 318011742 819790367 134814634 812910736 955542252 23808004 699830185 577568986 635135090 385582725 588566186 864253278 375860771 448179596 542489756 511191534 476421892 94994745 786183160 246965839 819816621 43460336 904236140 650304426 675538577 160776020 591103914 369581479 61552356 976087240 175977583 362552961 598642983 390621718 629760060 838017649 553900276 874462609 866336148 952809946 10080745 972669686 19912816 607820326 807827095 599899506 277558739 529642148 589638243 485996624 523048142 141700013 303969667 744687144 376092244 378348467 906606854 419253718 458765084 799116330 228468021 674584793 669258239 222497946 810409984 635591331 842652564 449657794 369686402 930651004 257820513 977232002 585340177 448117140 73791475 116293737 630432207 942207181 569980040 592134830 61475600 806562864 316794852 994436235 610869199 442716382 635890771 756978476 192433709 60770211 482069999 920730301 184468313 75890369 368339739 715705592 439450663 344581399 178247091 444582037 142759976 216661718 16763683 592624421 420399737 433158134 498925942 52045077 835499411 235742667 70585496 306998582 154185168 465910165 684602768 70703150 972090726 7003302 17050924 587819862 938676889 993200114 726063112 169520146 686701508 70442926 839010683 884001289 37628061 78898537 384193299 572354818 551366878 529733849 981594405 55184053 367370404 252057013 678268744 29599718 437075565 551974061 497560812 399489647 242652662 626122744 61892290 972106864 865380390 778355636 614273438 807820908 231516980 660813955 211070730 476260298 39314657 294768275 571142026 622976002 479639624 619159693 534939001 371111044 190607205 786124443 728742152 956228746 710428332 945088478 319065343 497405193 329367884 136589806 109362450 231803364 811788053 220742042 885877690 972707604 512582305 382924086 88770865 705310420 318006121 293893417 863686946 272263866 422364103 315083912 668767037 39683652 55252540 678613824 762025349 960709790 880165422 828624130 943316110 262145951 857268831 822284079 663150511 398459751 6920403 941879682 97729467 605702418 672456904 686365907 67699942 837467713 883630283 28410494 870326137 341943090 613909471 566821839 627903323 715931340 957512971 827544809 617014700 840080902 327703501 633626009 983753575 791552646 331264704 861882417 187426364 91228057 504515591 511371556 712615373 576526353 211619654 295232599 353839321 225250745 671957168 210902816 5986872 793779285 177902608 385544253 257161595 287404318 136324682 621185539 888081678 746678680 600532086 461722328 568023890 138832958 282246322 923527346 203021884 478662957 143696784 299272488 580395211 208365962 934266805 961431637 860070990 356121799 573803905 647837661 666579894 172053468 773178046 391549355 342875535 399988642 713511220 176703650 937266554 834369062 894983835 39422376 701058422 11856692 831563864 661788170 16371674 276435914 986018190 724357690 7799541 724811483 772344496 923775140 279693979 610603389 635373754 120502383 910683936 420067473 360182323 752941455 988479453 767226971 130638066 790948177 107294418 421425362 387767871 545314044 58040749 568511202 868791811 32016883 847756525 357772273 816718094 787599842 922150821 652229486 339064439 360393498 563655523 287032832 177245067 114258978 793102620 241947906 521811347 318536718 619167500 732161920 324843923 580753094 67759101 187172026 84436807 547303805 338345380 140671306 130937704 171444662 571572339 208689353 517945180 532976698 512497994 592244298 462447321 815507896 844841592 314594676 716812522 776366742 261967346 379780882 458332861 770529951 183299558 991821720 110776426 696628816 853734070 80384427 561903986 181937509 29138356 988891688 854109460 982720050 858397316 125671516 593093682 780203105 274567744 97458444 251213397 323674665 242425955 988125528 93689184 869112597 490102250 464762682 204598987 344939010 360043506 908008013 456305831 755464584 522344628 452435334 442508142 671428321 206008373 585009720 945722014 466505948 178368857 38722401 595550182 289474457 831581240 67600039 721705946 595673946 1771125 385703854 67338372 839361016 634352387 627508229 775809075 843194515 84145460 455225220 261132385 783463579 366568460 347269329 839478425 278198483 127061735 279434622 419624255 133381243 516776343 933549497 817612378 584148391 722182263 660462610 619810551 358271696 520196318 7766149 470554071 891436914 651051519 424254101 758183743 682004114 380766481 305848162 786628075 49935276 629534100 870408273 143162611 75756751 715720749 268992111 470562787 557126155 452683632 279606269 542968356 119070933 671147558 938928138 122155589 141986194 71430461 909967931 258940341 371166527 801793284 178851151 535914870 438334765 748135153 16816666 799393723 873891417 236871545 364490679 547860576 732367238 340700175 30762492 391785177 276662451 850939345 530299812 643329930 221402222 172606523 737613848 62121590 680941035 385346104 121697284 283475227 485000529 41748237 44655886 334487155 494411366 445546047 820195165 483846076 825027436 838773493 709666630 494866010 614348657 406353205 404039814 353551392 52264308 550453259 254737661 310459975 997495356 95669763 256022183 254104669 640256916 756454682 662975727 557333155 500598798 247236948 542257570 669996694 77605227 69123175 936463231 854112834 970929874 877409520 818009844 392119935 525762603 668485254 688380361 234425119 477446947 335922831 431976000 636420809 702446920 989873988 610454099 263219860 306990162 999463939 619084756 706366293 606825718 580600718 649018354 724438835 870219626 624967968 357304574 308316720 574228460 877073940 512209163 830038331 146562052 935885532 836029882 102090691 609588697 408404393 809669008 401683610 585488956 888076172 984679276 307263383 628735392 241403015 594958131 231127330 361075049 102512162 458789482 723616503 437381378 240678348 894878359 680802187 592875479 869224005 167286438 808147311 382150305 781627387 464223291 554018035 418346115 269973281 868417259 999540241 734500924 839115707 860822387 690578533 403372423 172451180 229230654 727649471 788596499 509752523 318582186 963824081 783511996 3664124 454737940 264468418 303797253 828160540 999271210 514038213 338134426 832076412 61506368 242691611 764759735 284901427 524853879 375793334 126452321 843462462 715888440 565345355 602733063 822486177 575643881 335008298 601024270 850152554 337729192 105940079 829894528 927977004 929324029 893710115 904603017 220246858 420448202 562250522 88035721 539346327 336542737 125056441 203930073 42331047 233530821 662044612 679976008 783645713 584660406 348979343 135621467 218322662 851524061 237388371 470522542 348183289 761103590 820568738 280457857 586107067 834434110 88671886 138545241 100187657 74610056 367781130 253460930 431838876 493214037 469558231 712194407 278477638 479339626 268861589 596974332 764341561 893001906 239147283 15423635 465902716 466052529 711619798 204940139 612552900 646171801 275515820 207202896 631168162 455195419 784003956 860387825 33977197 149787579 68298561 570319851 86979904 708406612 743389454 878953061 363271157 483524732 243553626 69563674 959572086 795528378 421999324 195426731 880361833 130690101 304299034 515926899 517738430 633545320 612576686 718430787 4569107 100565917 288153383 259443637 400264344 95495915 932972675 614811329 214444538 689534922 214507216 80411754 129813714 927764094 171292257 892666461 390234933 214435576 480301866 83363430 822854168 56678069 280295221 909178376 973055944 974524930 140496136 448388347 278647392 760586411 544151463 495493579 602327968 19167502 111362731 857981639 18644471 35225319 680132954 978125470 4381126 938516657 4161592 581722772 356128053 825547726 71159916 430266139 986976210 737954631 197162832 21012140 468883634 101561042 971902360 589392225 467627910 374988577 456630919 247155871 477030713 716775898 824631632 688806421 95852292 672795848 913800242 937688410 946857109 448382233 331067664 387786832 538922369 872004962 413752999 733577902 336108672 791619713 380823895 282063143 25191261 420598054 417036531 667267201 618948416 32074964 23314931 266478261 872789576 225460472 539686307 839642321 673042984 243040465 793319788 223894428 790191345 984708450 619864643 857309127 364673425 971798675 792043955 445968725 585857100 290044943 230303849 447473069 20974950 850148079 259743308 168175270 160644923 111995833 625085492 744871381 496805148 601968999 265061316 328992309 530789336 367221722 354430613 722639994 22678463 954846398 327147225 155257893 267580441 737119981 863543786 559679967 971687949 71353661 768807798 266236071 392282909 356946522 563245803 770187358 452859253 423801068 237265497 412207119 35792538 407563911 597596238 651014649 146380838 728628661 679813772 87141244 475040708 599388110 247428994 246021496 151076343 25924178 804702592 161037523 287580170 828522085 724157460 258720053 967753589 245370056 120308173 245617071 908400301 1581741 387727454 94319101 580706408 741201823 42242930 462848531 37347349 944723531 191164288 368098479 757368806 977813654 915927589 558062687 573462227 914325707 602836983 891026310 23034684 943885336 131521116 949278659 976083148 171673282 361079572 535095412 468100104 810164100 393708371 948044522 944971481 561240950 655296678 390697535 965796041 146511131 439966949 581056884 504689155 513566239 661323238 430158548 532116267 287065529 470827760 573391645 794283834 147041227 196053676 558308256 229204079 55130682 369054503 340887261 10039213 218680285 308500313 883248016 398603599 523999101 786398797 904431258 535922914 836441808 54259719 285809429 740692537 547460072 774633927 385015102 733151118 506083836 433475493 58364612 590502071 176338620 620701803 444190234 696620567 78297586 165215440 533040452 639833459 397011247 126892857 737598473 923919310 298534526 390424062 926041834 169283755 546237902 622032786 768005695 776002529 517886142 619701003 886453687 984609928 951810457 909226665 368998168 474928553 980035060 361570382 42858182 694697398 916561255 277378163 455055675 364849882 430382015 97009898 560850648 200045945 59179219 317831622 576314061 227278999 843503838 651692562 457728257 145942377 913607431 908378815 941341877 466708644 961527217 311381860 685508432 947031720 871727251 468886876 996183148 95744518 743186754 72563029 763518467 37702939 123330071 612750168 238362004 326732287 690901800 110312846 677505720 842485395 611692723 33556909 123958577 387198566 341451869 361016441 383875754 524841267 350992257 41740622 467756989 315999722 346307161 113274950 697306287 655107533 764450914 823903 131007606 408993151 466172589 806230507 437022273 995066808 230322082 959541484 131745828 943956484 959556819 18022778 418136955 579059748 507802888 20872514 501218748 21896643 122100166 810589883 577450558 815054491 614233595 341538438 195193105 688948457 211946140 47050780 692932501 70356066 929733752 611782870 581171800 746385713 513272981 720327847 430507026 485667671 197993024 196712439 24460716 352652496 938860073 777700451 407715970 562710709 331222747 897630725 940492353 387838512 774771477 235047992 30345526 722708795 962429109 175067347 43649520 734195907 545777258 825854561 366035537 370154340 629405530 566984274 641091934 472902908 914259598 998673851 945736541 40778641 274519177 744874207 955078371 293034853 734784198 710256672 443448438 277969589 736679127 441243829 474375524 16106131 173876374 92984980 686985284 715342687 331705501 798793152 936950741 567968752 601795092 648014711 222209044 454869767 54451304 256816688 688489528 883850178 36495602 859735931 730452783 621566440 149266912 782839031 146124234 511835247 426231803 249286671 82380019 429313860 940159271 501591734 775417395 589379145 143427601 256700468 627870519 234715726 789516207 1165624 506290629 548739398 655184109 588599078 35874596 782085410 953413253 593601368 227735713 360240138 921528463 398731693 910424935 405968579 864773771 630963968 723510373 222276515 605032995 252525113 993946943 79734777 237086572 295190407 620360269 912144577 77401233 163843660 809115118 115866774 467505583 211202718 280444149 368141799 372682175 591927783 550082262 15177 869509516 384376792 841394416 700963044 33467578 593112008 6940536 606429880 171269072 982342979 255950991 957529563 419418792 117762037 380410736 463226425 712000586 665533538 429637509 105907626 876127756 483430373 103399867 632268182 557413158 498674454 528338341 240363364 289441657 333647403 791788755 828821762 365220442 847389705 560960324 355822850 272761690 573612767 943125308 380392528 343028276 579439043 985511891 234286883 868804151 247001054 950790047 476014925 159734015 408406398 972846932 155257265 590795407 663055921 488871312 474291718 150262607 75510792 817618181 597355476 781844756 794478838 935246013 886052721 620124999 888863666 488334326 490618448 783070013 784784457 296214838 750737689 187536373 149335654 913599697 734317412 327450994 370355067 90464384 539674418 910575530 658090512 964501401 516123768 106504547 537152811 940614608 520173857 521661054 231995504 339597949 67176657 477458810 604357995 32238158 686162281 991228145 145690176 253607969 950040145 961904638 395155020 455887199 583586611 996509013 813830895 674192857 303755530 588225205 847207546 37777283 24768892 446988436 33936476 207410224 169742225 359484336 406208398 518165793 413453446 367602112 652294162 182023958 122929227 595321401 430796027 30698592 184416624 94417870 332606044 185183896 573685127 469578680 897683075 561446604 620353816 957699186 72764144 339343017 967279361 405209458 131559407 394196469 651799171 389468665 251855843 670235132 456018164 58254663 567588276 705215198 779150728 84374878 791413638 707455260 757049512 186836608 342757160 171874933 97553245 450051520 464760117 385015615 629903308 569413217 86031007 761817990 601038021 340564062 631578099 310680431 96940403 555495458 922853263 568152899 925641171 940890401 292966668 490911027 659753740 612981338 143395643 504031362 854676766 389006526 31667199 322844179 586111947 172508890 901066341 247970465 664135070 42246260 793897337 528049502 799106069 893527430 250973828 847500649 571568558 890258122 378756040 509034764 476946600 836237022 572936338 818048916 518909521 950373788 520077511 802768141 540124679 847695571 3455795 764055518 475226592 501063638 774781563 241940141 684954458 483256007 229598004 3981233 99600800 438179566 870027142 915317330 588494857 322944161 556032510 283986068 199701242 807561178 371279130 691029839 252765966 721328438 113437451 624619275 934097259 792749356 793068055 10740022 982039864 759830504 425411246 548894164 227206245 708669658 615537439 761478458 642687002 528350478 959399179 975208632 836286343 298299948 124892446 269680665 326260672 217980592 657188078 931265580 763552354 730584492 561358092 706969854 978026511 250890157 591152455 351590237 419012036 183584383 572346171 368783261 216707594 358980197 874280505 135312527 968780713 96030225 405287258 57848367 145500237 332281587 728198628 317360120 407368978 326834676 445756870 53058294 359119562 197854214 88760005 360350937 996480095 377344701 281561508 362318544 941852265 10335468 457392109 708255176 838904245 855233924 260954433 82851915 950366374 515265993 158669314 435285932 565458973 892211628 426210749 86268360 858510350 39414530 241461056 591851800 382652122 173665466 650674826 753183516 231518933 45609520 467866070 562835577 334373512 328190415 354113073 904650394 980485714 362560755 217267281 13741774 108654010 241142258 325155228 691147028 751969831 456984060 17152393 249023128 644113586 560544625 229752203 587274118 968040346 298301027 406647678 367367703 221078359 672871080 739638341 369901313 772245393 479840542 425011085 382657729 829642756 754838973 959964742 403555440 997622364 593571539 516840984 855162649 607775133 370459516 656163670 586735989 673720809 125330308 359744251 351079013 408238976 605741220 964320714 934154767 152128911 11374585 626163665 885773797 376725079 284085887 8302153 405881741 784901150 272352643 689957848 437900628 297097290 617390221 128916909 740175352 744535294 413242961 861607418 488733029 517949330 738913528 567089397 853113652 771702501 186746327 968630531 155906596 366947280 780296742 889960711 694342285 146748590 864328289 47432447 595249223 832777638 688318644 886806642 121861499 315263602 489442066 849403359 854837167 685903497 450860685 332432012 235907948 336176177 631259401 295939693 196672285 529329885 995582879 690876558 714812529 809180802 464555834 537949267 428423796 798307809 268460625 752566768 771136910 287993050 7220387 126851883 903297110 103027745 494902882 524142857 841790825 914486289 344155253 363982659 44254632 440750136 289069250 815388242 822658398 623054362 320318466 246737489 3881027 454126316 356748814 424670928 492629103 105246997 89138438 203256533 175842079 433731148 861895780 93222204 457271676 416058415 51083963 828247956 899446973 74423859 974400965 178546086 173800807 321686382 66519561 197704765 808978897 698206475 176737186 234106745 988252932 264080773 285489937 768632697 437446600 293609853 956968394 267330138 726524175 552672121 537342796 981161109 136606175 85362540 930258625 70451127 833328253 798662750 868116185 213274964 312973761 1207468 876495247 117278754 779659939 293939258 340366704 230386653 574391971 80083929 924653845 832825012 869585258 93100674 402736767 446100344 945509826 453062573 673337118 693763410 661368693 447491585 836963267 871627444 183795658 411714447 599601643 752735386 361124686 347708865 572392558 560526660 997540518 102234448 356953126 661682077 15651789 726455199 699818657 159392329 26107020 273454897 767712897 373803192 96429797 211838108 438254385 528322739 71159436 939857027 952068948 405785732 961398875 603018861 940775348 22548625 673904691 379208126 28022169 553696887 443883505 443406784 175004293 467607381 334969633 37250128 26381057 211397221 233936473 166361570 212221182 325812338 597647246 298546805 370357974 420551803 800177316 740690503 870481128 670690774 877580195 595005500 541307315 495588714 802828111 10941367 471604800 871045491 635654673 154483230 4918440 402037870 754418511 642595225 735455856 970964279 190297339 614869263 516068398 868037818 408246878 85067985 295546809 100600855 693421869 387731332 310063117 464960627 108623024 298287335 415211058 573735612 217218899 663452329 876496631 437541536 489649483 545259762 224541277 544400642 404762023 603703636 181039678 816969376 19552051 208596999 716975663 737432055 174065678 320791212 188644247 955690781 440123828 186870380 81623256 187869123 732060667 184446694 289352967 492515381 751297301 442879871 534070934 669019622 826195919 282150374 488646419 586056740 885767049 69980686 941555499 701061890 695976079 416437255 774278514 927821438 649254978 502448744 4276200 622850845 304803436 414901323 43850885 348202980 264097701 907400208 95597237 514376994 178110626 317243253 787681970 199232464 446633973 445254218 49017743 594954929 946012232 578936236 829542048 527016091 124695660 384773213 683503095 338754739 340355876 71759980 423497657 166066476 503636839 673842631 27387492 746143340 505526540 92002931 797508213 280204528 550951830 602399464 929478362 974728867 836243573 961484903 50735586 142294808 993790786 224849064 443145534 920324680 569509173 629238811 227420739 214458650 99016817 671472183 371506053 610281329 755336355 933872778 685214065 379292129 322348340 92521635 626570565 2433049 388633010 13493294 719506137 206986202 340495138 687439390 664105523 501550373 362256383 747352116 326473080 643084614 869230058 562975225 57457076 500998231 421775475 855940315 915489440 776773786 649044284 903244326 425361581 849354174 164432183 632802520 306869981 560570226 746104434 821775122 662801897 213310665 859562941 293107135 123511 704652550 129268717 190908883 214888861 900869509 610144711 860922705 641610605 605441792 310799813 239959288 715015562 510626547 889312861 630255894 722927547 342261584 627188135 735923704 214434687 111211036 154042783 951377149 64746042 285155305 14244369 959484425 584631238 542833506 833654369 68950250 615577673 138749534 354168318 424462352 196759017 429229413 404119226 407838862 159996252 586079124 459569400 805001183 627548377 872796516 665924147 271645098 418614579 681161874 733875377 967721325 543903236 719854384 295162003 966555266 944082390 413885150 743750894 228555254 255994916 113953385 322941763 258440831 373287161 944261835 367277149 400875922 30101420 121617164 851951057 243437420 353365004 771966639 719565437 908008137 870751342 710991250 501559883 785150507 410267340 816996963 310961538 18230071 116034566 994740011 414827624 230924765 427571899 168316689 791071490 499807280 343038288 112769785 26901133 29220355 44956009 864061435 568694264 670807101 830664550 786407701 570241236 422778852 114604679 63788294 52841837 448741624 194748357 836453457 622105423 843538099 601964985 578354792 322291225 652131467 359441709 655164280 346186626 766425342 202091919 558843456 513343407 245103230 352096893 874630908 271225287 452114949 538119955 960594095 337550353 92545164 96465822 506877384 451555781 704420868 777262190 433299272 300606057 177010249 620745313 503514797 917037920 630133328 131576300 633785474 843342185 490226009 129197853 481123430 491334636 856208259 90611778 398380643 754739280 402706389 963726273 345943583 729327104 80984445 651674550 766010403 862907100 541233760 738546101 691070172 989829932 99147755 175737987 977137147 984498270 886188711 573520365 592667080 375739842 96110920 46943027 52626467 984971676 13202941 886347362 472641686 485065138 569607738 601207036 330962683 335310120 358259139 178203502 893141602 375495169 469962543 560174548 24018857 642331113 384456498 324339956 965044644 653365447 146982409 326112143 164983728 253704595 267829794 69514935 473681001 395021729 608505856 793224062 595217801 967974837 50320451 150222514 44717053 141300723 717669985 356334367 285111116 47139535 60213477 142426811 49763453 413384555 72226126 636665654 947009785 691004861 565894501 827205560 45574980 503124873 934687231 605518302 247767629 248832436 475381149 155508308 252219075 343876801 445104257 940555351 354461274 955050145 942234465 225365486 148453744 425978128 710029814 918485793 221532611 313892498 348477960 615634204 891348548 944654785 294127867 238529087 233125724 940483338 62136788 778870684 181062016 568323656 417089576 113272544 979927013 645708248 227441729 757561955 915931109 677267798 658933992 516795934 889596311 646082497 48940058 247616710 887136235 609449203 651847065 115058603 435665677 832845378 977340199 954221011 694114203 983772627 49550483 419002701 523531114 680130409 483202028 827083660 629850983 448063325 167743829 621859216 966327944 269737307 285830074 476186897 542861299 216234638 604766967 998270263 262139661 702453114 119011123 517314876 858317080 567457596 84122563 391067766 375206198 917416075 948481916 722526250 316508954 642218125 919221313 493726853 284224419 862379940 416072643 784146645 381918235 474646951 833299274 933781891 644509276 864454265 783337190 697782108 95007645 595083369 598490066 163697866 246528837 236808780 403741577 10464889 223129805 944471183 320451975 724311640 786358957 328094297 505258900 202427677 854850496 527916800 658901609 838820831 693800745 87308108 374245276 689004567 917978916 965816603 537057468 351694912 168622320 794500825 77187252 445751105 180178283 549916013 68347848 7889706 699368735 312938419 568891838 409173766 403505009 400060348 165266135 831874963 184638348 102377944 773899400 484785736 183788384 404449451 737801337 447022183 457077690 552853312 353448484 738938445 836134787 617851312 785020563 194939987 789436906 454407349 138361685 305549768 111632796 577043549 908889824 70972744 226754594 61377076 55128726 134208265 948920021 395093064 124510345 48971249 469473526 810034512 957018164 422159907 410284184 735089820 638138898 396275307 729156533 834665013 997581328 65976505 705517128 644478332 288173755 647767620 322271098 513286392 823029645 317404615 657326948 584186930 998439075 776769964 61591942 407855269 426662767 353614104 365285775 629405632 716627241 495470420 83960348 495031500 281900929 578819763 734512301 440162428 554348258 568073448 455822766 595985200 661475093 673097926 921693710 644563482 931684703 269659872 157061582 693977393 134591138 597208905 991416560 959414836 907978561 363210920 984253688 767183419 259482521 404852960 648210610 575963527 845086431 192009614 128314778 753140793 495455325 890173905 810913280 515874120 618735721 207731991 855545526 963961021 533090903 959157995 112755751 518908693 191217793 66755199 543405143 323856961 552760946 160629044 222610250 277811869 981072863 880311580 866083936 216585037 52989520 340948504 668108706 266864103 659500731 315543053 992092841 823464901 156303032 980540245 753750577 654513856 660483031 732501679 578948006 163482938 248188421 379358601 816686226 661219629 211766853 828654696 489731828 351305004 442608240 542634231 955342123 660840059 539319624 836713959 321608700 994843915 938332112 616365227 968704676 29848264 560478812 984300136 725868395 518141914 945696716 980656222 572198751 84220607 476112259 643793680 753679763 488942723 904876361 35526285 694619383 847122527 342669335 841408156 311107543 364081055 25967618 274242786 973077412 621307757 660410675 895702379 440964599 101706873 599872473 494486276 783805864 562428101 549412063 89856729 444139842 624791227 447073661 209157162 830313159 587416288 908362785 175672382 541596317 504493516 408452142 757792262 700662019 369098707 721483309 20378148 653122816 216840439 971474587 446698663 176976675 716534348 94728541 970840998 149788591 719313619 357069044 458803503 970092624 37550102 275067798 723687456 573914920 491766540 887830779 135076704 991726476 679314834 504868168 604760069 896830892 652356708 694409702 667943720 746706416 381590250 685295006 609072001 374950614 411785901 80352034 29332326 273547182 175330432 281961897 746042390 471077352 695237765 56681568 131549917 499476428 275270018 739029483 305924241 204214857 728109261 642678072 487225031 812943751 12885159 423139544 537487477 109506508 273483169 953735062 372936673 137585638 544484327 603263023 150539428 395560733 184379617 515387177 441117719 846838377 978991657 318076862 483750227 688541116 982713482 852922805 40847084 331514875 433305741 321228153 274955448 758739115 267808537 947123568 576939859 259356515 548121518 43334365 525549133 457343063 964977004 958176941 378173272 230097985 782606191 781458095 552614596 632067460 776982029 188823237 597052116 67231536 926686530 75019922 827695348 440546915 763911827 316234079 551970021 795859316 625134799 130870253 276564859 500057357 324538146 389018049 492840760 110305269 965554778 210000371 504100131 190574019 711577040 841852896 550414055 959150571 726845940 70289413 174860779 859444675 93941265 567438871 788783778 822352034 23930405 64486065 93284188 735390922 468309974 175436718 406861122 438637849 412346012 249143517 667475960 949722151 501827440 698860190 294719091 708485857 990190353 901802929 32842368 995384690 600695186 26551748 963148010 798971961 268789640 784590113 376764040 674990735 377807522 638573767 70600711 356664254 477779889 756349341 211130498 463072650 520398944 279887967 402433165 540750270 589815256 842965413 969951023 468778812 769163404 173371379 846075036 50808839 456299272 988817841 459093309 811449113 430254308 467881582 216032040 826528122 390305023 275352446 823135916 780488599 546760799 770816097 56910798 363463832 483635073 383065073 368806217 965897728 414523663 132084339 148870960 874489916 587910730 835898883 233648905 116823074 541987267 740351679 26066034 254771970 525961440 122414052 498777321 918301626 142392545 765026090 563078317 259103447 387170125 656130085 80792256 367955653 760841348 346655481 325032537 917750940 330103248 478134447 570444227 301250694 314522287 27717378 937370030 538335813 384284245 833322150 146947686 212686355 321924012 221859372 52039573 461106346 827188208 208119133 577647689 365365576 254849784 17821555 875449421 674381442 894332100 12101740 174795599 338837168 97751000 413497158 409745032 513786781 667423002 262460821 61184443 891847647 552818490 434946934 595942567 71483034 121393437 849908269 115776648 198216589 710350938 615268436 538627253 156954031 638511092 853696101 122141706 354599521 128944913 196982209 422293638 621710902 920085338 189621033 139632433 128051496 338802957 719761042 267605968 532783087 115164765 197932930 260977222 146883318 479065128 806595509 435084539 22965043 295614886 414836431 596013990 186265555 478172365 873280042 594489784 257754476 550342109 974577998 939130517 828053869 973198184 26223553 28028304 400626137 213310566 685240712 14591509 438093919 511637795 653967465 382723096 234017674 886110731 682793247 444111368 859981460 601469072 850150742 762759196 362302020 350448610 704704873 924262278 953749458 144202648 448749773 470625559 798130391 346869130 754203974 428993227 759599801 196905559 874480294 593881470 139870656 243476237 815339035 666965870 377092361 928651934 831542784 71052646 168713391 53382749 291147233 704572567 142983507 73730599 116924790 854784150 593262037 295637667 456181559 214079598 402115662 397061453 149671105 784173125 57944039 569803014 454473905 872647085 485586613 810752462 506898884 48611007 470839100 187654906 753054525 435760828 603658096 354981407 767903317 977796068 83973670 473167348 935822547 970151931 877022307 971257483 754059690 448795403 887757966 784933761 638607994 942208807 412287321 552251834 960679216 668424286 356421917 142435027 377586810 379104175 245746555 809678275 913439901 507939256 201544046 213146873 464672789 843985387 754554137 594797060 188557279 671107923 395588234 89352646 489246342 169105118 867806146 995287495 627966433 527959534 977255030 826344937 577261947 557825479 346603459 494901810 105583379 132783379 658292495 649138392 92885206 83218852 432022270 154229952 171522350 515850466 112968694 901550336 941341384 479297573 241795775 890699953 792683258 560356319 787227293 532147459 762713810 280034177 23043112 169867096 645852594 940327248 255009467 776791383 112404252 120408745 485170835 394190447 292088197 976424998 369042558 253335053 713367684 916473717 268821196 185401884 457499846 223766195 124169818 876632632 240501545 152891959 231529912 536386668 554198595 784840006 245300371 994273260 507711288 425519766 510999275 463643008 30499946 615631860 632397782 431045652 541600645 43945865 915390061 124083253 385059100 857374650 386267372 921854204 44228328 768710254 808400655 432029460 766027653 878758652 45017310 302020433 141734959 737109497 525144039 264641026 796897877 655841756 891665121 156223862 608958120 959362774 947051038 223272784 112986739 68116190 668451232 41609714 214872451 719621142 797555068 475118299 626675067 244892414 886202891 866378261 465420821 828415312 26416522 553280673 979669442 142883891 708777214 707092231 866043475 488102853 770918103 680083224 798621360 877575093 377209472 885693820 497934889 209783510 274732622 535283199 883022923 234118952 982846602 644729797 73502425 712795719 919435036 12678007 416974968 932474526 84363668 260960057 183086493 92282641 256403464 347885847 223116011 182641951 624787654 266321605 644312979 43505674 582510891 5314046 268798106 403118558 759754821 662717990 993311336 867301478 232540808 82077490 86139325 493460184 414918529 407309344 104387882 210631047 986579888 99853420 732467579 139595455 421943618 681894893 64065865 334765972 592455637 290102580 975535468 363123887 692935451 346260845 137106447 521659134 638108337 58865964 314968410 99917354 596424376 54528170 375071178 771947756 46241793 945072855 536235020 230056203 439875860 31466869 438295423 312835027 628133249 545525990 857137384 670345005 159148864 973886446 743591865 655774686 417820223 325528643 261549292 656898723 351323562 250034994 679327601 393421584 259457374 967352589 850231473 459938960 703043790 518648526 385425625 693725555 716819550 421965597 889058857 147015873 597518398 280603139 580251885 760240694 209826269 292841775 262985347 229831075 587885507 231787514 576219814 375860493 91851804 457846431 36437032 710162908 458019746 235251722 653446551 46442990 678216668 90660688 494866026 17712898 831232798 915161393 464043297 587820160 261687827 833681867 688662813 600614242 139394446 769576766 812299216 168272136 749762502 260421782 815169133 123293817 751223654 101257694 689082118 449325063 103301039 353573857 976139681 505266021 46528952 810143809 998632687 840991301 184961083 313687485 974303477 134839821 613407980 561601528 248378017 860763902 536818949 750934132 5359048 633915307 302669369 529990982 411046944 614647379 382214628 941220207 537018922 332647980 850846821 344745579 314152545 62874789 150484183 841211041 633217412 924461014 657495526 847368127 218161407 898337315 205877341 19170060 860692841 864283090 582611094 132520947 449878782 401200489 817648875 32556464 231812055 3175923 70164138 720386949 376511073 188746891 892400707 426929148 277501197 755130303 409047863 294330595 381307195 459410529 218436198 993902369 478259955 678283353 205353970 696394655 519394086 463293355 180155530 980555861 622859110 311123683 942347631 471429642 692387977 207426314 337746603 86821249 394065835 457449085 471907547 754549143 433647236 48706560 757430617 520200871 883468661 497028474 155578757 230270406 35156435 272092805 598451800 857379115 440667047 551250719 961531094 571331234 25931673 906730408 834274539 870198520 952371835 693739289 104380440 398754673 304800909 772524771 216012215 633918569 695248483 188562810 132677338 620334775 157067020 159544315 564129363 249155531 644663106 519173413 64054437 55682214 400684782 71995238 892576836 143889782 673972835 608841706 500819687 496344498 928565075 984285868 869688638 582549307 45431485 704079836 760861710 341737309 582010374 9847606 711778052 48038647 49279003 856324973 15649191 31543095 845999857 336891285 291843939 471761778 93537333 673964069 377111448 262071233 715657678 458518758 857145561 176720551 518361158 611596932 505791514 665474948 866201168 277153997 242456290 608772156 602867762 907026565 228628113 104101877 215832577 575284201 4953486 114515875 677193374 241642454 618776013 559795033 253198984 209249176 496091217 521747968 1454921 391042163 146496273 692960375 221364616 258740558 1927571 578537188 711184453 113173946 688911900 806898487 670941361 982878496 451867038 322519771 726142739 733232012 908003135 645906354 166190781 665698827 875005692 323613544 563540117 649852735 193351213 53145672 401763757 210132358 275837191 916244776 114914741 872965955 91249850 883216032 758175066 420055874 407326462 102464294 442380082 802892634 107675637 856278138 239692406 215089825 171277168 950060600 740118146 966254410 833814554 1000299 101367077 953946923 218488060 697455161 340466761 706516658 507367861 729005921 944434189 136136030 242880237 172535077 985879727 670471576 639490005 216371835 266162684 487585870 545804295 791382360 507780170 864821930 52944890 475347326 184793924 42272407 747717431 99447585 479735118 274253804 917423787 148860379 78346966 943467674 473349733 504608612 343493361 214660617 995231048 245521178 579605395 362785548 905931530 282551332 628454265 105956682 887527906 969943003 698641780 992188764 516909302 284430801 313649636 216466350 19531497 550592259 248657709 438785831 780612602 171374916 369294794 902865350 649565641 436189044 762227038 33205742 417190081 682409833 507079054 900458586 395525870 126045232 298085824 702918808 856711086 213453637 328662592 836927501 710134441 274673814 716513796 966088998 692395117 129382513 268122057 553394960 610714872 748615529 110509787 421987376 782964993 874016115 171473011 427728835 843966895 679276355 269710417 711773323 443444068 461120194 399442691 89092776 719178515 788598549 313713918 171361471 823762514 700670621 95930816 686942158 913176054 964733450 606128149 373738173 9146779 997839988 577520531 698876004 627519631 959044354 313482612 200739283 489791428 858351165 137887997 13038683 750717509 384415970 722945259 366593295 794216982 404124566 435035409 446174048 28825609 321185802 113866397 36143814 642157312 371354772 418811219 813681731 768720098 946953484 355544671 244709518 376693588 885399330 474130154 329850310 63992871 558159973 479382681 580525935 342224087 534371226 165762376 620405847 450701905 888121734 579290712 597350649 434365367 392917917 643522500 152705996 548840265 342317574 101963150 348960688 447038188 123815934 436130458 933577255 329176212 524893883 815448150 874798150 693056212 752370767 267643211 566209782 751234011 650726596 2704900 169904550 997084943 700241508 246334616 18466383 34876224 550916318 179305445 28240908 293069716 837256676 614954997 952054182 13269772 470156643 240649227 834484893 728068662 50574348 83585054 693007810 921142851 651231890 875190093 998206209 138427677 319263239 728099974 469304065 547559641 233719257 216820257 122193203 464745413 986215845 67565741 962230226 909020002 100732306 122977101 199593503 897363251 78714122 996579170 445747224 706796100 907071512 444415016 491268058 914014790 817176675 823345152 263489385 251450005 488482448 874524027 908974826 137980077 208935270 855760332 469201805 860483920 697091216 544480429 731656052 513755127 240303798 402291603 638811447 711745353 327399520 872127057 14641229 731986209 268509642 822038555 18167739 661465838 551611688 635976235 82094990 327615485 155440206 343859455 282466831 343773244 650970236 584748408 394111409 346213517 993654783 994275084 878045527 566837155 230026714 345089319 799621581 898829389 468162183 103826876 87017316 55550854 860281410 43468121 171597064 455188966 141779759 905118557 642874463 855316956 894298468 345504913 97700237 315311086 563214106 613923784 851499013 424126169 911258967 254036326 924136509 406778618 980820675 111681052 38071404 851989488 829122030 135566960 100248436 757626319 477727036 220375078 390584923 905964581 968547038 774005514 258877723 920334641 862642584 66311543 510590166 848792048 131133375 543917724 757674727 187721273 303461843 842302704 189973641 457574441 304131819 488923895 436338125 474135678 389080004 314912510 321465981 615656719 702258659 54736297 557127642 818810303 733372382 657426871 84265275 298774446 735047251 511326015 763030195 844363825 259284082 287736368 652804476 139657127 697837347 60843991 508529430 398851920 65259295 852430958 8319794 65703595 614934684 426547981 619864703 983333669 301954538 830344230 684149881 45454085 754362126 470192146 891466107 691803082 675404731 561719652 433736894 394126155 65579253 820250802 357095515 581773366 360301326 656253331 771191319 674185556 255056999 954764416 311518760 932815220 186326871 416533832 947029219 510520863 945678141 745615917 32547277 600054571 991497525 910859091 533019574 560177998 977584796 813720682 415179065 5614526 108725764 435168639 612541146 358064189 450740224 793637120 325996867 178453698 194900842 475537091 766683730 137265463 434264432 210075876 458265486 617681315 951367055 995692116 574981053 305954676 285507249 155496233 450436249 321551653 433555147 482327512 973400881 564911883 410007040 409793062 980893011 163176007 937797339 643237981 856431686 352930438 645795177 550785997 836470521 734927044 733672202 409954556 624211127 937036660 850969952 193774332 865029464 602273405 178921935 87394677 435367873 47537772 640113235 171181954 495213374 24409453 286964655 378669412 300612664 641687928 489347143 476275758 182790520 244444123 36674026 817199433 533306270 81312944 968735753 484728373 584528851 880736097 802179354 23655532 24684018 351439070 830470855 94976075 107830235 460303994 166175559 182772126 401819635 380240525 969728834 942461867 357511176 725797978 797979469 749107764 172333078 369314077 2798436 91110751 407479086 499355671 150892661 763337115 201458886 466345965 84778844 487267713 168471397 384968881 316651836 29459837 782843913 860734650 939477210 780262087 837532829 141364403 368057760 15312477 229741774 768898232 652460073 967086950 944116824 631849913 430438992 285103664 716526853 134049903 656306490 841836068 597839987 242178322 760525366 139615424 570178369 542272833 820692006 521642416 432942168 671506308 120738716 131313500 73328751 97142505 199829046 448493036 505549523 286720413 371885254 808216336 701152388 10637071 939981394 20577370 338161060 925524612 328590864 326737483 736595094 450033180 833072249 905140099 873483697 781659685 274738176 187437353 444779048 404512347 142136200 47362730 635972807 551322049 292091005 833521793 77329674 748834014 38550259 795620801 602393552 23676633 168108022 806364704 489238568 733589756 673457611 691055120 934621287 923482460 521864091 870987402 7234032 537934972 537038415 15595864 788532012 765741575 374679018 923327575 426799534 843876118 753872933 911617350 980435274 981599593 59721533 65971173 855009907 703544911 975269139 389093024 126544935 135120673 249594519 416216095 26901300 263645144 107423368 509619344 957442506 417210993 204782814 417135240 623508573 458486586 162428386 281016663 521743577 322708195 467936225 127640497 971074458 527364029 999175190 604026970 447265971 64278254 967122688 384572572 157835787 440487404 722560558 983690222 371452904 158078229 879030685 570943608 321933396 547827222 84764098 937965100 809163394 261455358 368433153 885059005 84180641 787577092 167783515 672085483 593290207 616815685 355056739 307019409 375504385 467287154 265364725 763897963 537448578 432923326 172964015 902551139 680229603 362516541 717854850 308955029 622652017 539675922 496174643 798565922 885753335 607464862 488332210 601793076 107464213 557520409 484122218 817959850 398936061 952043250 850758333 600599003 207837775 296667987 425298895 115768563 103808795 556886317 118542345 573681305 233677762 159784165 742206073 982748513 921616329 250696353 495426104 563626689 372619803 316431114 225598595 504117587 767354004 293480405 814772080 714407097 792306069 796277879 446222708 788546335 2207236 986734925 762776970 334287816 202940156 854428735 15492516 143089658 230964618 48942680 467656557 533825014 761239912 441318217 730845489 805198614 504915927 122568798 557309014 351905912 913801291 786727156 472623283 254864527 694436745 74276532 347303226 53045871 293046848 165772402 418454463 700382680 846016330 69170463 108117022 451190253 926852678 108339560 700365 961664142 424634758 86308041 772797701 390090648 255375462 979256056 133026479 37489560 386690396 263854280 522135976 748738169 12076584 244690798 114510593 381786054 589805312 306867027 192544137 351905909 749378434 430830876 132242337 107780307 95378086 247523812 146385119 948473745 963655585 164129698 758360660 974180302 765943446 702511555 344450820 599753634 393824150 218970410 116809584 702624162 540959531 296279606 936629656 32029633 824354337 52114161 392408513 994859738 119735464 876540135 26962747 410308679 475549103 468471582 613454355 753869728 419498369 910224048 886336310 212407103 806701386 794645649 442513909 419710577 127633830 779309035 434926522 385411881 228331809 652335248 18989403 654658860 809373502 822286277 510317300 266659454 93718877 289960892 33220938 211288946 506052305 140062469 20636869 907825160 198348006 698406084 879967041 585684938 665948325 191338480 566695605 644653439 298379259 686090081 508187348 636748854 767330820 99185501 187716784 105820531 357722460 309017402 601371612 716323867 396918198 116338943 101909299 77642565 177206135 151130541 800527338 131002449 620243458 929927924 908342612 80967252 360807719 185364300 638901935 856761608 788845925 164076854 776084758 579373207 156515214 793766406 518942450 789678131 295562763 381565332 583164607 497350348 845896537 25430169 86676881 701435524 501118561 438268723 794972482 974406559 10397849 235484917 445385107 813597459 834271668 997286901 625661019 718593969 346200418 606283436 520050414 559437211 972381859 928762783 741827278 741002084 410979889 143018713 695817177 255006758 825681565 59376789 218967513 967333923 358774753 474309982 670313743 539430640 561749363 166540790 229923189 271049782 88573097 144108047 665473884 264081845 995469307 709411196 120172891 654404885 786200228 920049996 391281903 265596696 861490312 817194030 713522123 275180566 839433941 609511491 551317084 215880532 658295976 770101941 446707197 246305124 108140533 751763666 979481357 581187308 360080025 467980236 602269088 249612410 633236272 212496375 552050601 753077121 907330700 247581464 247118459 734125233 794971296 239065472 244190569 167400525 946057195 966947239 785393522 868359375 976549207 667214600 911510054 933602630 51748034 163292259 71710688 748489252 721878337 682555276 296996317 967104716 396924324 184358521 513012875 90541038 75172359 864350509 289001253 868518698 838463355 772551291 850728832 871777104 408960420 424715547 534763081 563769654 858217560 37659923 382299530 481893765 703972714 47022775 441866115 233110015 34546655 705721635 564582012 777579559 436599462 759304387 367111348 307521749 116200503 852586724 842306636 64562482 453152415 27969590 890199237 604436232 739200948 863495389 544790244 249560334 408857107 38042587 985050238 186329741 901278403 959399755 336454471 415002841 820605716 555123550 606972535 882909643 729529964 523973657 419453276 779471810 66346025 426766441 363841208 207908527 799171794 522912789 350716802 716922858 873504759 492518946 394500762 738629651 914218714 361669414 467713793 856380208 381365028 114138878 387643896 686283919 105391247 477749435 556067589 808476758 735502785 426419264 983730074 882890989 3903232 459219617 581258223 741285163 44271083 546880986 284270304 613863858 284783257 594984470 289521453 259103864 674338445 607196078 287414304 999667263 624198815 804131226 638299878 405331934 616023643 27805690 48635237 170577362 153223118 467171886 66996014 564134551 5126327 234821215 515072539 430937985 408315781 314279897 609742419 72878894 357222128 168998564 134172464 500389912 701698511 456413915 260538442 35095165 949895399 78958309 672987148 956015072 322939690 461875449 968780584 898465393 209663055 728311267 769103321 823500323 931135351 808015388 747938799 869466573 400716651 467525046 152214331 467702599 801507741 869280941 154725801 649880821 892530422 968155686 802135832 446003154 669814221 551865018 862282414 825072926 91957852 152420760 347584734 297556296 779962326 842247020 858671277 798206107 738083696 804088702 803729760 999623960 271571158 654959040 948260483 547439382 875942333 930547271 376618392 617217888 517185783 602503576 156922313 870559577 802773880 515076306 611279073 571597266 938271133 947519983 625420574 144634560 902933607 861331294 720458725 518195328 385968328 398747811 402819356 838197910 895217213 487157261 806540357 969803018 834279293 524379043 212905387 86794255 288084587 152769217 931877723 260807697 786448766 552300342 674170750 410857073 860696124 15829897 272406083 232742928 942161310 903811251 887094734 108810310 327039346 258985688 922038129 819484861 575979416 974345751 960104204 471121055 547152536 306451416 792579213 75942225 759486182 627421715 202964602 98511824 440040419 172881503 252601194 538489690 401230050 503622639 328253884 721107141 710341408 625286476 933911245 7729279 913372860 155327162 176174449 62419865 508328386 685868541 263927338 415642355 598056310 852461915 675940424 572781529 266027808 922963468 252868905 182612283 514574873 140694635 24113206 242204143 447066581 596063915 914292343 955156863 697101725 960019115 420350621 654879165 284577017 493926389 96332174 781124654 621137820 910640508 957255330 302190407 454005658 375233915 674704688 436625333 272820486 728579178 501999044 986115698 715283514 87826340 805323938 178854890 929633759 210037349 156973312 642091813 378394268 274994209 859471916 162077010 244920661 368967911 274404385 438969487 712083323 850074853 207496471 194574689 23216292 921789950 464664153 201386593 207885244 489016925 353569144 584627118 379935824 864349958 791033271 823461641 349973723 739016576 832951539 840758682 704187776 720763092 725814907 232784312 997927884 965622875 48466314 307781023 6206821 600126514 10239251 22339142 642293616 659117234 413226428 514955631 832117579 321872113 138739 643073570 985825411 809123488 751397273 506061399 808555308 370098319 347541145 690724752 690875489 183429857 980432869 148939018 286241330 631222461 749390795 379882372 707076972 393918606 473199034 747278775 384334953 590674896 488126856 758084177 359536726 776152325 895157940 921698856 994829345 541766085 173280356 436372951 661117297 6107694 781842797 32822928 847816248 218284257 796120300 725755690 528625573 626121783 157205826 286654609 912234301 382644890 739822343 567346233 497375237 595581684 126360859 723532701 859994128 810708124 708085135 183001140 742969899 915702477 480347594 960466267 554386983 43621517 40654966 981296561 248033727 664606915 257011832 69953845 156924603 954885797 128830910 707020223 350541242 327153465 182662288 141094252 567933913 978693921 24480847 906970474 775995847 594833624 439302602 627998191 791063939 449891406 806592925 525370597 566087919 342232254 216574658 767369075 2947211 924342314 162660523 880681974 321066364 591129538 967313022 294975762 3157855 353617761 85620353 665380736 205600702 448141127 205393079 364210480 607831629 670779194 9414405 264455771 94526503 863465920 765945660 638367164 37301193 1211823 34592984 798173994 73113476 91826263 291208067 42205262 192836510 917979450 201267932 79445172 159642881 915004089 191940851 184672442 604536258 449414021 5836404 7708781 873137530 267299514 316356943 560548783 546946651 618856277 453852707 275126940 334202210 556710259 690592637 44794781 61487235 98961324 676835273 321268494 408865810 331083485 170496767 152739460 3178984 325185152 292541951 866803329 985343643 383074238 200246006 978750573 784923767 915830113 932858898 959148425 883856188 970740663 796169621 688163158 65926916 797124629 95117033 736922110 721135038 67980686 496995656 743359058 375153665 169419163 985771501 947298817 634168410 346266368 713462014 355318143 979693334 711911074 373366950 580332124 39655112 76459455 111932937 557213835 207482436 485456419 326200099 241354792 735985697 58729106 791739671 135372966 244998568 123550242 849033600 973234139 309755079 137795932 185049531 854746182 531901738 495939804 667837606 47405179 413703609 208046760 10534896 802856674 605197078 557110915 215485353 701852837 341724785 114787057 529766705 900033485 977595389 976785291 6290610 245555191 60355753 399762676 576757752 247166695 316569622 331717060 751975323 155847366 150220435 510450847 854898689 675091529 978141688 780332110 877438793 476947217 344326909 756739531 882877905 829629624 689630603 156054044 864801753 474601341 496538093 381900756 204224520 160207745 862701583 726478480 722956185 990295933 919793723 7685219 434775740 814265927 847988906 736042442 389109841 255293191 379956822 182142127 382220678 939369169 312547957 617676283 185612384 452360645 352965926 406656200 574720774 601730312 706428004 297462907 633086321 538455697 261980939 602478472 903417647 256756477 863157855 81461250 116615443 222680358 10318737 13002236 48190336 959348152 758341143 883621470 32799536 608262892 239549351 587532559 554875496 590204523 251881886 341167736 321015394 571457449 651573203 352609721 554087761 860770124 392573478 599436485 646480119 571988462 635909358 945690682 617810685 621383162 731188862 648416694 623510245 413492342 694938620 959838458 803139010 721293145 139130780 550449425 334760734 515573453 971170677 549278521 46250193 897274719 271055061 659121526 141839801 333167842 9671341 762132603 966246607 692269234 585546487 742262621 964246455 842158660 147263574 525744770 161288374 729800503 302757678 289578596 499159847 788970661 440723590 105442140 36616333 588178172 86028205 377828651 41780575 356247849 920130873 525983815 891991565 663339387 293968507 750041200 184711528 638634074 537599601 440652420 604056101 149910718 355367856 543765312 334703855 813843102 623936129 475886261 598507766 319317138 400193600 113389063 940786928 72044027 996001269 758829186 783652357 978586606 669705558 13258551 879610996 398540088 32649116 727273194 641487998 584372100 490466805 920490541 151929625 223747660 565338457 313016276 918375794 523545341 500160906 52556750 156570995 842157353 180670345 30313280 32528724 523533795 295684866 803805887 592336666 344464583 235620425 563688462 894296285 196921650 410448404 757970281 656688729 116378894 545989940 691098793 299210586 178897870 970720607 43839524 275334407 888258031 773690663 797759440 146366108 341759660 597593121 860706309 851927571 224510143 518915458 315735829 622154682 50588929 935555121 127573081 989588973 383965370 58780975 988570857 936092305 664209550 120363820 44216133 57219717 121486180 267297353 88702333 704257020 6923250 425955366 963641489 899264453 152273155 652122335 199992115 289316977 477851240 16311423 601104735 885703050 590786706 320140367 832131796 322889529 601123849 342097808 623053724 47944822 68070669 718199648 892370307 292684439 801155472 452533422 270273727 550915493 200684575 636306573 837911335 740999059 66834919 678448674 754999715 139901210 737461478 821123744 467400105 199020839 213891100 799050838 17980316 402590160 292324825 769515716 988786684 4313436 148263827 626784405 993576295 225236082 35927583 583873925 602073714 132773331 212033348 408939166 277821733 138864523 158158182 592376129 485677222 632664336 28310104 45128155 584286599 997256888 614344640 389273064 942202976 288832212 484446300 154243640 132457851 67962489 919846582 785412067 303942857 563629769 352745093 421970632 331279060 425448082 283203663 930476697 412911939 597511270 29247341 513979647 694288000 742132309 829398314 608904801 528868938 363849396 360409372 473454151 443624962 391795796 266252903 977948858 28249723 760480128 69452201 388019880 625988908 545905371 870431278 399430068 156159474 597075658 187014753 307358453 645895525 512796060 217422091 554809193 217205954 59977689 893495690 919644987 270474015 125688688 302202457 657565338 217227987 902266094 536735747 405926399 816927325 338821471 615626020 602098662 189264753 128230822 563023287 736134016 221795423 596794143 267662669 695887772 557191862 695571876 863518816 74061510 442530172 842900261 59171525 611920665 700144962 131868336 546061688 101089373 730235000 119353704 184214485 410593072 77086593 26661804 973924971 623609884 111048271 202698726 863018238 488943638 641888148 710029570 242106949 624889369 39481097 450390384 759748919 313788737 174561624 439982197 374124470 667785281 331921861 671603353 319389683 432019793 500511417 912167684 576457429 812551102 513309803 384866800 570742366 891015296 237944419 863025633 547989519 868149634 159977295 902702230 715180155 949051971 124347089 639865023 739062703 395246754 963552165 342169842 337658717 363480418 14186935 286744204 643294528 63837859 580627574 764707768 433480707 483212218 433989023 662816281 587447519 980411057 370619806 398231457 957267622 967286320 673638929 45219623 607471103 119468518 438476997 326412016 942797189 32974393 596314690 341725001 16174610 294827716 993572715 775364501 182755386 940760251 687112548 411554652 450730349 119670915 221382606 759628799 129674555 971171701 153281614 295508678 156339617 150298396 987634250 691484906 878264170 246404254 118985330 191361513 934321994 583668776 352989070 861405588 61356954 507748098 573875534 635906465 964196214 78427460 977964642 920387121 72271857 702223302 659994677 350150073 797128767 334362292 177846859 879057646 685702665 468168887 891887148 963859604 150548058 219076684 261338005 422714636 606922187 729739314 418328322 788506839 107455922 954254005 809410700 429500571 929518690 975251104 309559068 393155545 981547921 931481463 487117725 210840839 895687786 843429405 132229330 848305727 413610839 915781912 518593035 289980963 264709326 712926123 551599299 137644320 857854546 479422372 657028048 352597346 827474655 516675090 306290504 343132390 720211263 374640751 540375486 152011221 147194549 846632302 654373207 535403595 884074982 353456181 756136172 679354919 569528837 677189136 140530608 80700620 427213312 771511492 38404597 849183738 46132834 96918856 542735765 208534424 373833955 724365780 767473619 110774592 364814592 636112411 631223306 593466072 423995283 456313004 437886443 612473913 602263714 381913023 117536963 137057497 500964070 528980230 212787983 660309166 461204854 349517925 473586252 257640587 511994666 686995697 792909272 79276121 985909912 518830148 402107668 308642263 674530921 387394560 447170254 139177060 349993902 654829306 448256972 798925284 57959076 194687416 229180621 492095805 231941943 518121454 120353401 380693624 213406980 979877325 300124382 856280263 437233401 952360915 95063989 948057913 54825192 44026580 643565776 440387557 808276450 589674217 9193674 584274892 769567065 11408170 724149629 45476568 292018645 45197758 322735821 625637167 186672278 94040901 687683579 958689859 833934213 833179612 839927246 638757315 843191223 462820745 469577705 773389030 324310384 490387602 319596937 29365612 325796568 769720679 681104899 717022485 587894155 985004553 586586401 702030264 377164897 738791477 472747993 20133289 68111223 606757722 952182722 666440882 237337556 481452491 217997475 767544732 944644455 827291499 871348119 648392548 361832895 228661759 367409872 653027560 536153300 809705665 841915177 478095008 796938908 868766727 18580981 589370461 836067847 439799679 777981390 130869122 214951935 369634824 43062758 774832034 805241627 410677432 976568013 943917711 587731385 572418461 347050611 517241844 326512665 240029972 688704909 309300682 321433725 879788985 879475283 421421605 436090726 622016904 937748518 91040486 907438809 233221405 624436946 154313747 228270490 48817939 600550798 260584288 627394100 162326876 923235725 15343440 852397205 771189653 583929656 678660461 423164948 98486246 666249449 566492839 414514074 356568631 991889163 206988801 396877424 746230289 195287924 935200013 804328716 357247959 129496436 127435054 860813640 379727611 92592180 230408916 547887732 295810699 448836851 500549438 78571819 180852827 791041554 887739031 956473000 329271441 237273784 536528950 636977344 946470767 271428644 827569609 865415989 966518619 461401470 93200170 480419214 11795828 274998914 437960975 409740143 77480378 753832932 223179382 9687669 767279343 452497284 708803656 164501024 223918111 671614227 147982308 134057459 906226186 691155362 754115728 992997412 888048437 689653886 723322387 480629278 385233669 55698647 486425900 510458777 381105529 70932745 219347262 610247155 411689090 980763997 39728537 245463064 160189443 529910752 453659346 286757516 238399948 961123606 455478966 379355564 65682778 961998186 189247236 632600100 463668746 499618068 682865031 231827431 309731685 633236151 845300040 819963021 711563647 292606655 274639262 478228394 648247724 320549606 356372196 129917905 660352340 981932953 711077384 485446041 999557575 305080187 861351666 589253767 257618582 199112983 358239273 277737982 802597847 881565071 747874278 621202150 475345030 34009420 183089159 14589204 589435206 470376339 419353508 700736308 918084500 768136702 58190411 814839296 800325955 259356770 637196358 698118743 29455964 424458819 290165019 88559262 78379063 589551366 825738507 118218679 977940363 278439765 949161000 708690762 223378385 115176154 304317888 385686447 683753028 207138664 776674711 172467338 375860301 176151357 987025985 130331665 353549805 462360854 666204465 697061896 963672665 538731007 283921775 758705516 37671448 851235339 397199635 83163788 941819198 696637472 699274902 453640824 890279596 71243009 68119055 111697013 81594969 246821046 990850548 332088222 352664889 27345100 147254387 336674807 721176238 363117513 303549654 94445722 632177561 941542986 575927047 500907958 997240925 976158159 704229645 661685398 942432248 754897681 711112516 61083698 312879585 397659397 892997783 586207543 102376206 714714606 68662980 481696051 976797463 858489793 268582366 692876925 644480669 416982604 581170265 313297608 37139740 595394650 309665553 217777145 245996171 825609157 750475743 62006320 262114059 611610362 235746411 820556780 269335340 406029133 940622734 60571317 614120679 192745854 681865761 456777847 4863119 403075343 332064445 565616279 850788144 41551023 960342842 816859331 282447480 316265374 99212104 296889604 255632429 543944085 802988764 85074193 353212356 609865867 364318564 154794933 868953275 321429731 454549182 274909395 870007443 425297540 368847338 118524286 278849538 862882700 517115142 512627607 927837168 885734427 182153778 335541788 697647614 586316919 429679585 872165175 273188178 837604803 142815893 567731212 743760660 266573640 136101604 108452210 397277834 942789423 502715334 373105265 270317879 826745957 953289335 521853396 417921162 729479411 731954277 299091040 933184501 769790016 168251732 17814812 871821828 615572525 647966443 200119423 844504659 888561766 275200042 169607771 975729617 180851737 608665414 364781714 654793901 981388223 771217864 675525369 470876101 300922202 586329185 802785708 580159035 3852536 250953880 634693990 416464600 85095738 840664501 564681546 590667175 262719515 71605971 249139817 705813304 999946024 697950739 469620951 766217948 549779406 978204934 740353972 373077145 427097671 510574554 663310813 46687834 627385603 254584405 386905613 344461535 561683444 277046452 13617397 653263108 47505837 888716317 286854721 903135930 3579407 298319791 865012714 256650257 89713648 631182911 143124831 884153075 874190449 979803708 718340199 219961504 21690421 625981732 703509725 697371261 496937090 459812390 817913403 468615730 430803599 983600887 979575056 395567503 411075464 26392788 515679163 351045320 783907639 416450901 674025585 172727885 32271062 967086634 685196679 114635136 345118798 343547292 118941191 351940109 293509232 839289010 161903575 449696488 223718223 238845488 487101490 775854060 405976111 675877841 149097920 115246593 21715506 581431288 64794121 717451291 176893128 615021925 883123748 968928020 100426338 288558754 141743910 90843997 543061102 748701430 173344816 719580686 962658986 890926315 185170611 84044879 263828988 738337308 240221457 255482724 616050312 326234549 483287423 199744881 666865671 567214107 635911970 906640712 107878897 811522941 528646547 111948547 74611743 517567959 253229973 303402192 774482463 748158533 666957720 619439690 409517423 770490565 868707103 177395699 947594858 698810799 788477065 692645380 493153200 31959482 25532913 648280334 950048781 650626902 261642076 902395558 822851775 708043666 309738656 869754862 81328189 484935204 716912323 612976524 18840249 632721908 287339994 177174165 712287348 999452695 389917530 389868533 953358915 15346303 301773835 284364431 724156733 379874659 136595329 59618082 917441976 326474509 711980714 545549399 427207024 535496463 225124785 85774436 16460692 896398943 489813028 71453822 570545261 596449216 688998187 104079097 294184711 302482239 829614296 24003682 908844400 76745115 371487888 382118589 775286014 927021068 152296078 515705681 194213939 976091302 807775196 572791654 532841710 404346698 876961900 751388315 51507372 949039752 935758754 256957295 623178970 695495748 475114181 506941368 741467908 690220757 246611385 343952684 901155200 951431727 237740536 322247627 628600837 732475780 716164826 657819213 626286526 411357452 78203002 253199680 894710955 844374405 801621144 683953166 616012129 397437895 237295619 94775494 822962856 616304030 226887272 532596934 281121776 281359261 912354819 756395845 238915007 63585892 37856090 999429233 548509644 331801270 313784111 549794282 859275525 262905325 35603076 976944378 734530062 820817252 72682391 759162777 903156847 437850298 912370402 600589745 485526094 185984787 822187538 624332279 237170988 155257387 647567229 493761519 350995574 742485184 906738027 299329742 690647782 484515814 159737156 689004018 533908394 337886842 95497693 155393685 123009965 305235252 556114657 670281729 870842489 420295066 354167383 592024086 408197808 405710869 394817612 899839578 779043809 993104907 602147483 457655394 942411223 658525920 165828657 170075171 582241712 400235590 601148980 228452995 81951446 590240412 284056830 315500985 938709970 899536993 984016634 183843960 813965912 82344708 12340761 558550305 276228190 990930588 497842349 646591208 53236453 749606540 603922562 378869626 948173532 347550612 584178992 836686137 327784753 941293390 263867 195021176 632686592 699479742 279494782 399268281 244477290 473606364 520289982 321720219 679940711 585350424 481461505 765864630 248484310 534428225 53324706 638190876 848505123 413413533 175143687 794349202 589699926 627781657 58281585 737598320 772228348 421574462 986867103 583244273 161746007 143717398 555428227 108540578 973140057 665678608 327845011 36138679 718332337 298670403 661352459 161733872 836932233 681669941 493158788 759731139 127056799 880367288 75081298 985021998 788273718 88621442 969495042 600232293 642223431 904779450 43246373 907013322 710346362 301620420 910409708 180373756 19135566 292092463 203891007 160779755 730813086 356457240 595337914 845417610 493849397 742199566 929706937 22374387 901437604 480402674 121392194 266554597 47204407 273295203 990875601 823382613 542179704 752819629 445038836 276094075 301437868 929480788 598418475 92107849 251177143 885388409 426107349 212154908 182097119 903906219 241138044 362165978 606444047 969437655 187070979 498512357 958900494 856895561 800371098 390555521 590362506 277503575 211190530 739349434 377680545 93256426 342215898 580629720 85275509 567507869 157191661 885105205 811399811 34721510 614927455 179530232 967881471 921571648 955586463 73467736 609740432 706558133 2445334 196051931 892470526 98054799 57803336 572287840 59737053 385583616 233278842 175650820 584825137 540060036 175700901 844145493 845827454 129086037 34990337 41975587 538838129 7194579 354214708 684035312 526317719 912008598 700683932 522751145 69944004 775108440 720201930 140995034 442568149 246644986 93413571 231034374 329255427 854188881 232676357 854882834 35261381 12486458 281872514 77812029 432974543 333215169 302828044 578021919 397363694 206938136 913172068 791355568 101440633 25371800 910139758 697305444 935542564 116046608 452261272 133613431 958624460 330670056 6303785 870809668 749593126 366296603 953394633 119088972 363102598 69824495 163354513 651015361 749781865 150997700 217500474 988960926 5412053 153625675 812086354 412886842 978094873 538114580 200908631 286950784 238840143 988533919 799246988 609934538 306562737 821462626 555612746 537765027 77956372 247340069 189134540 658202177 248683619 226918707 539276270 335891506 230469496 390921412 179489017 776862663 281474936 684859977 911992030 299286124 469568786 446651208 278638025 257630294 398044264 460827614 696646273 17173847 353158874 598379480 44511286 364567365 530828028 920455203 180141483 783516743 769332464 221061236 650301854 572103796 440565483 958929456 440636121 672748173 311475149 642587042 447814079 946962697 436633415 323757585 772894885 703026901 251489332 464980504 300375759 99116530 223714974 253491653 849408649 164710172 915203325 895167098 60614785 811442913 664432440 728796411 957615146 221039851 460090289 992623215 308492345 860771748 730516603 901367277 484324163 312535573 31137661 860605841 180748075 835609238 622110932 554236148 120953113 60110287 169261116 71393361 643746912 891231291 842939534 895907726 297313739 411325475 425437629 74686797 681926278 472170950 263054393 548944108 683392166 982365259 928960664 951160027 85689580 994863276 908537278 958397283 11299863 195565668 542101176 122383777 761116 291967400 869054438 36565892 697084563 115111915 513938528 161529035 751505088 140172954 558967381 867847913 185979643 917835881 587424607 2616526 894480004 820583513 71262835 960905159 858682319 774607754 561529408 95635186 24812562 322826257 398859183 808125442 861300349 23019796 796837641 629051653 753698065 741376992 542917611 992710009 521885436 936874182 558348501 164745592 498239178 281460620 909766732 869834649 543748694 403038997 318032930 469007272 149305527 874311004 444664345 368298291 57821454 978299040 895328572 23125168 830446605 639738798 810823262 191087004 937419317 305608088 6126549 703126841 348128697 119362668 672879069 20980434 776939051 344752929 761124049 943840408 389555032 731685753 312407687 797349330 590204330 809451417 416751473 284392174 819256844 611472460 503416250 474369728 299934415 275973965 101665294 938076635 235806302 659663127 969871675 967386989 483220567 155495137 126441577 377215824 365375955 461029999 122284176 332053348 498075646 385510248 401252256 444635747 953007792 495988619 835691074 513241476 339117741 329954688 763870057 707646545 314931048 964139689 235740785 475263616 599221614 162228774 317207041 517110258 839087914 909281594 887488422 584624485 868437674 791667907 4477278 941576376 938834433 594960528 349797988 540044630 796657721 831282538 850612548 209913086 824809650 230184164 94664580 140233941 141720599 984112654 245051239 693818993 112715449 16915007 406286582 579326231 549049914 587178545 327749749 521507380 627340757 152784788 986545208 467997277 477402260 671526401 532843136 379429260 376413091 256611895 618289194 195625636 822608619 674713445 463535472 355154510 840498542 652697089 306363176 1051351 529780368 211389682 303115404 541934805 470001917 964243434 36290279 968764495 998949498 788713892 125192707 321876424 770102110 370594157 252312311 215818785 605840106 915880093 100575411 727715174 652178570 97461185 384894359 702376992 307823508 511219824 394109865 971703351 3780654 875718060 666993703 118437795 317990415 6200707 340836773 727240684 463088686 540860708 19397195 754054831 886066436 321556865 751633345 94291458 71245990 11130173 400842254 487940283 993072587 120104650 709639051 689819256 969297306 919015274 609340602 108173348 867064980 60555721 790689310 301330560 185425608 335639090 51284281 917743570 513166837 989793530 44771245 973873439 46526931 355559114 884482891 508242903 36332554 876917962 723380870 165233397 805439205 247298835 675083766 94800972 262680050 540115248 888763173 755089655 108867710 489462596 587162881 276679128 358804276 869954711 556597928 548605585 210684438 382844666 205442228 990783459 771596668 464358370 773098358 511311735 529465971 629655564 993904863 22369520 667337255 723013971 463231249 229821934 781999893 161989077 482279931 160891344 397498231 515994850 62139411 572211256 45628121 886645836 877803554 89938084 216352458 288300209 56077527 632277735 560430294 132116328 470599134 931981793 420252060 447545027 161443595 875248974 407328890 697380784 646741538 674299126 935208750 917463854 300490812 440361865 35366033 908898784 270424795 654969815 866276977 435046311 16538 481893169 866523848 618039454 96084356 577408154 431397214 58723692 481289529 566374938 378059184 825137159 654037039 360121639 753209906 509610419 242972442 565739388 652652510 177151493 420278395 428439071 360346071 431295662 214219016 282847837 885596893 725761208 954981523 847131257 485196167 784229340 416714018 193378198 710527640 382537659 188960298 425138684 923895750 834784774 773823747 958322228 739431673 405399391 621315864 811059832 854124473 190452394 916319366 335083671 139314153 499170520 38194313 220623764 737174603 152265810 296617557 874472190 798406365 902066205 719519659 772266799 791745806 392403461 778799422 56366439 471249748 508462582 990840021 703084437 19584331 471619171 889283967 275422652 571235732 633151506 79126557 695213742 431687837 682965952 173359141 107358529 368374947 819074163 632331180 522583663 130139658 268822609 574828488 43694139 14726632 97648216 378408853 709326297 801862170 238238877 360415604 967702747 802074176 836340131 97666386 80102643 564129471 289295548 320829955 280552169 371735814 274411727 557091564 841071374 749980315 856029522 194842514 628710594 96740114 40824502 565750131 790307964 11661906 153692540 597498928 208746132 240981842 829335619 860758409 472067032 387702243 435997930 722083467 228807862 362256876 374586382 419818842 665442939 470989163 417377086 385602030 521939234 909421975 561567107 138787252 611070358 108984822 259249529 809061681 621414262 865774171 138246260 52012673 995594163 95777796 7382247 939033339 268096051 300994422 726102461 616722836 769360755 495064390 686490609 586688619 141144237 557826020 954526067 557681691 918043649 464508051 459112194 732523013 160696902 255006284 620369382 271338973 391117617 371058475 929069785 977291649 465681023 413870250 238639446 679325355 428671330 869358997 459599512 148405731 688118225 929708788 514350803 388448220 493640473 495674661 176658480 92108686 109784300 988093183 50094174 649558987 874759511 236394546 880399997 322567674 361361108 610409899 505376582 514292368 637049660 595970625 340679181 727106587 613940296 309445498 516703109 466250960 968609685 559289860 207165564 366328308 27543568 804340530 347268713 427421907 376492155 48472161 235074788 962098747 968974640 735074200 475715072 777001380 513548294 20076809 20489559 921025798 295294470 699169610 486837281 586815729 904507276 695042452 587960947 167502666 226303658 214100459 190384402 44163042 881689667 951693613 239798158 269222305 949120747 627885139 850303411 158140929 489179593 346613231 648171635 272682391 455244501 952334535 516327007 534271056 729452436 683399996 183577685 336181892 412760482 953607982 609495517 501335853 849299168 274299204 411624596 72931542 719861434 139694757 615100894 787156119 812669541 154726105 317052219 875825405 807759163 556169000 295458923 733253198 20375399 306285483 261375183 454253880 123733940 15801347 109152331 879717427 335882959 818214219 381490820 401162644 53498678 315873099 255996435 555872878 162156830 516739756 252915871 45197376 861978362 28210236 483934742 107353030 31644119 572986601 848384090 899226735 551196063 60228726 455147655 536834668 927160168 676846843 666684710 569427562 459289696 256863207 817391969 444173873 453610650 361371394 871265049 960275565 3142105 513357119 441659950 721951247 749866101 797640275 441021461 837604196 284592240 833368339 212941972 584970039 972237209 682536825 440219826 928942793 468698804 603854469 545430195 8498272 776782868 169147126 459204554 888286609 760207770 101765403 384761928 630043247 18422485 697510904 554850309 423624079 281677476 355876280 332738588 534315331 501937975 164237734 133534334 33333443 832456521 84034317 892969016 839926378 223286888 147966972 712603557 439154161 943145930 35972695 257210831 212011715 443875338 52199780 391891686 800961485 598974971 139653815 949030180 520761331 65806418 47141260 59332049 263338872 122646624 565251518 439189479 899373080 288411914 438279133 409975422 792854130 100341196 117456685 94566672 774611023 626233794 139616291 307486689 729840168 13322318 933236320 374329976 765796467 464668336 862966768 89249138 708613024 991958295 928626519 751284162 735849896 586779814 155188559 729740065 474744301 761938182 531557173 550827100 233049753 301717214 596350286 877926927 840927264 119857215 278732079 992817435 569147371 920459046 626777091 703509858 292471828 202186320 163404569 194955896 683935230 148030252 406033816 494603651 885320378 261655503 863478222 587610581 839982820 812468454 634960934 214477863 609301809 831601585 375801066 811675064 754604487 263357448 810527163 609797809 645389208 147724182 286153411 572060894 256198049 683296699 681627141 973934600 81061201 719216155 587060100 56013719 586366900 673978892 698208025 675548904 991599886 725235856 543401645 39126211 230010725 623649680 327191746 956875988 505619663 650958991 57476380 790759706 105394743 968362474 146491398 272530245 879847428 103828050 318372099 815413865 295430509 962802088 586568235 619802522 821650097 720319617 696201549 328771090 294648789 341119945 746122954 779990061 884957363 486700216 481969936 176772496 88685396 52513072 829917663 970418909 495727922 923333291 73052830 276143896 520615695 769362529 998086227 352826102 466093277 679350210 710888111 582197251 446843528 782964491 206753338 345907818 603727091 254427033 147300886 755252088 243448788 698772340 275469796 83250547 783386899 635748303 251635435 852468614 491547989 31140752 707279267 327142071 376673772 892734762 290226903 52642163 450383028 368628972 138257407 215566297 714783308 526654925 863775361 935399559 254257107 410411872 294699482 529956457 672066728 612509546 117150863 828454381 43440974 282064777 545395026 240043903 198452807 987337484 297221305 391156962 897471947 159109531 67840745 912213527 108592606 213088846 440657123 267256591 30899445 771534337 75094576 263691126 596138464 719167216 752988318 745510965 235527574 50262828 530723798 83640515 389407716 320913018 104931847 493355235 411788779 369265868 40251157 682134540 229119444 984139054 613755240 861099366 698811561 266215174 288505008 379927318 89576805 744170507 659516195 180744237 499307453 153296348 610444764 797615846 579081405 318427153 649398161 128697162 494111405 452623845 628795233 504897099 747605479 46767588 199301480 493318497 262498570 430036117 768187272 342659892 534803252 964923325 554494444 103799206 217935504 167579523 500410053 339270729 13659512 605781342 504368792 845703156 552938003 113351572 238770270 332997023 909510387 60346328 550966087 394221793 548184860 67894627 901964796 853733972 8627487 551492091 611481390 499242461 897999333 152128625 504637746 352343929 920129726 376729878 163429240 490324043 460165466 985011545 59575427 835637859 248211158 182138220 312481463 729656880 116258571 470448129 495661368 878629948 395746604 487003729 316375403 816678575 499425773 827701976 969749521 255591665 578426275 316896511 212042519 292260685 433712079 185112256 812265376 601968233 376473513 163427548 425815988 731907803 332738980 804893982 9516739 964989294 232142075 612821303 670392004 148657144 808506192 683991075 794075548 742242163 575403122 941099956 81882510 662336058 359063848 323868727 289690234 728395371 145435608 474911377 16904300 228523580 433208023 812163688 754453712 153128355 513573920 978203319 450800224 810514029 238265546 379645846 681478087 890872806 826137736 804987965 606162257 321522374 298050439 527015064 884685275 168868922 348242954 894840204 169115757 663454766 829399639 136525277 853318099 569643222 422277340 102008518 266078184 103097459 857765722 489716618 756294039 700846807 895511186 902512445 113318816 245906555 319752240 209833997 153776582 122661039 543394869 166839256 696399601 124865293 858338474 762197656 904263963 529436335 280658891 958636073 902823769 165871790 665613915 638454093 813415073 897969009 519510532 530901437 14944120 469753598 50295674 880140557 386166643 883110247 260572803 421350304 620238461 23966195 416449424 750312374 936472916 797701065 9275946 600392474 716107585 976159074 728443013 286166111 58277678 979550612 357813242 985628115 712865725 822570934 160332584 617466191 640394101 147110482 369381291 292783223 175974089 469593726 816620916 595146524 981499712 678636543 648327708 988940661 427215615 21449775 533810251 699030251 576255405 942326730 43421712 428792925 861610583 908514755 957394775 75738817 217422862 367340800 777160837 426188569 598331729 112056093 862725122 999950071 587475704 247465930 211738142 911123727 297931307 209586947 903475900 774323399 307441814 774361661 741194868 118230535 58153054 57677477 361885422 489608733 704785397 89797392 621996767 448191044 143270081 542110724 315731417 474198084 796634936 12038125 697997205 41688331 446467084 289665918 458176467 303186826 241340058 937477035 394461791 878314494 618479177 845064319 35525041 695674721 201180783 292926938 177788541 747040243 403884772 696410742 799542981 898962977 248558132 812253420 851914488 35170953 352936424 739981775 142220414 56387933 732928032 138898509 420300728 782122027 761379198 281548583 934221218 878798384 200695607 942480123 890030668 141181631 886897612 365209309 193959639 979131886 184831623 803621978 203293018 9444517 908748062 600722255 27976658 458210780 753588857 39936685 552035702 565987718 469889317 676449426 493397245 816128201 176898384 201295837 781334493 950513778 448755267 140922628 278000959 700791884 275654767 487660352 368641946 61115055 208080285 957987563 742008977 609451688 452411015 806055436 163221672 326594 290042402 432062227 914256248 650876809 396215170 453988952 902510251 826120852 348484970 308368504 464783247 781561561 649357513 108010407 378977334 835354701 941383220 664142978 77619570 953042741 688649532 787805530 9276540 504670495 904314115 377695636 523865290 360574783 485363245 935089679 6262425 791516491 406343404 86658360 162486424 767638776 259138356 849175220 727225288 346914335 172126444 851751863 991241318 807254012 954414615 532976853 51490555 909008757 785096191 642910991 672795372 509844065 880679173 185528730 211454762 640109219 312730472 161204812 712776361 309260583 162936860 135956841 498314740 672326059 263369991 379992483 18396352 656216504 100301622 907990940 377406491 345868177 85151532 572832580 355603519 723658972 430184709 649732382 300586029 451480869 100691672 394356225 532325081 265527777 641231914 19583049 894162002 457905032 885447780 821919143 968138372 243974465 344438677 833449016 701609112 626735087 328860235 673828998 677908293 830398158 629353304 318207565 549315268 712727889 148934421 86680967 653746775 966620572 996613718 164818774 16336356 303268085 224716859 243264520 901842891 931897868 953909623 866488937 324849370 947408312 603609278 807978757 777587134 919654334 915687743 641853763 179409841 679225522 647731572 392505238 831553515 443593705 168269113 160465494 297214956 75580827 830109580 894965709 778590019 167443393 312219279 173818158 785436542 424736410 979538603 974510548 850585067 436584484 231970189 668844 116259923 581631396 770262525 593522285 560332199 974446812 403289427 20096917 478945344 78038093 403123969 85473128 717777474 276056755 767747787 262748281 46345122 682496480 120120190 735565206 131206175 69076060 752807085 179062905 864274625 359565837 877229693 669499499 34663479 195025966 206293465 272424318 569314427 461725790 951569221 658381449 797715740 419398916 84555467 967567270 612815417 759149360 846792014 181774634 383022671 995977669 71329544 29465213 242508347 895074346 632918879 385973106 528532876 406881764 717598091 56912948 223024815 673789513 617761543 85952168 933235790 29850882 548886200 195211861 497296463 140866377 254559646 656735439 845916562 468395969 48301524 789375740 457971599 107300131 740296814 660864822 975067930 117865001 816891874 762947890 157302846 524357837 192720110 808585865 849049803 804945705 118672628 561321165 2915692 336327778 509315533 483224771 505529017 998678061 902851829 161421408 540146117 194187644 953352625 226547897 913590697 408371830 813051756 997468948 929403168 902045436 725729542 461544758 795186823 808994241 861147451 619662288 964809856 587730876 81193408 96521728 313972598 743036117 42173108 980484216 114276697 878199739 628206857 647538247 781519298 940330751 265513222 83282321 172930406 855152673 677342062 720609987 825666523 683681636 43637605 386684640 327954955 747793051 708835569 864772206 579210695 426452652 101441110 86084402 947802578 724526158 420993865 762536178 182541681 227976007 387259394 891155351 358173116 818388916 943224924 894617003 476088787 692395749 510666247 890368603 294199386 300631098 707692777 905852115 821898504 857375371 94142571 679853599 431005732 145491078 644938945 397374897 570503949 232256483 414678948 997930300 52896326 75344067 758078762 231641876 995927375 196326284 344783919 146916497 437105625 618854830 582456155 444797218 475708950 273161865 424850335 164367388 52946867 37865441 776135508 15866783 787482787 57755550 206412676 23609503 743441962 4613816 776722721 824758284 531656289 99028874 659728849 338711335 768032347 164362917 882267181 438897695 616700647 870402996 584251264 785212713 89384550 607664114 802569705 384526485 36695204 478237388 784444307 458868989 128051065 779074489 850692149 902635470 543189548 479150194 937133840 534610491 898099348 634482583 623304655 659233767 946445740 572833301 546594074 33977453 786034558 766644808 130314844 483834464 20231652 749175670 600177809 810876772 823331403 929416234 369510757 5703887 31468671 166207300 328742080 409909926 242319495 820989643 308224790 912058838 809638337 772854490 216964129 151300694 369487633 48316911 721267615 82273118 502199971 11093558 813272279 352025422 217437138 969440767 772253429 894206229 956060903 588012120 741033464 99925573 929695192 188220232 64288141 924382066 110455347 95625957 72466123 734939143 880561770 746011440 135772035 983850779 360786093 975327135 359764872 640241079 1995434 496977694 518764994 426198543 488755710 718708034 987605891 241500836 444269197 936411392 547396859 720502403 16127708 206630441 560192242 558041426 435143075 305194594 958659343 732157077 752782287 761348059 868892651 304483155 900954569 503750772 560357645 336444583 589605473 881001116 97854033 412765526 563813492 941336725 55621962 474635317 538004358 740068885 764498498 38657519 680363189 256004003 147126522 440303435 998248684 741317163 573319456 898712740 48767154 414267024 97932571 736580924 51010154 709779126 838298542 955277913 106431963 127735544 969786976 488473998 822518265 727711890 354170749 243482776 451483496 513746239 679843053 937914783 128056599 864181835 865423615 707112595 191677671 520314270 185698001 131367021 975417948 784914271 520729457 506945204 357458613 201161970 304883400 583688983 630915332 617462440 163898485 458098628 85543411 3669763 819871431 345010439 372831092 700953499 884302531 286387445 805831671 504922610 937184722 121197104 484213298 842298227 721759425 386744662 623979789 840734592 419626622 149732807 221713888 828135246 118155347 912086393 429798336 399341508 504881506 389108427 784516590 347107502 484955251 346316677 750941060 436188133 99579444 278902647 370188726 768171759 571679945 53068593 70592999 504550324 34849060 363029825 265410200 942555895 796822995 607130464 645365703 370346185 740629013 164773158 949902129 931968032 420276813 772903807 329220534 287434666 828483119 242526624 934225875 620571971 434689394 787390477 673577172 969301309 679063241 814620681 1690711 800473644 818760854 579448868 964433224 387100517 916689327 270932336 96864208 674109445 683288281 616712166 911160541 143009058 922050159 924375518 953675126 451531971 508483791 302553561 695692740 717443181 665197536 144310058 281642147 662833533 697908146 485766005 557807181 812820985 245560286 752518815 241941819 879015895 511819854 431809461 971763663 992638363 504163910 785000209 968040638 91723522 3089152 706375701 234105817 482483786 443979761 928130334 465727606 113507421 525627524 393787486 641727413 578031773 919806961 238715327 580762301 583445734 573221100 550917654 822062320 417805066 447802390 993260931 551409860 884961474 930870340 822371244 599799201 843512682 862890082 972915879 161551570 731778833 541180047 705189209 509077022 270252106 504681027 104091001 964959988 471189675 769341912 488884535 491859125 192038765 341934774 477179429 435970101 624303892 342036222 974726411 390034113 720481547 341548512 370942972 606735799 541490296 73757179 860252564 420510022 414930046 850089061 187787191 709722849 435556780 181885056 704673678 552776176 39513458 848817087 776858621 466896719 489126700 803242752 702070636 485330606 548062484 297644692 886112478 894225036 841989177 408782775 380898245 609670566 582938115 924064607 89454323 850417742 501064831 780404967 125314532 593744847 631471335 817237644 219398836 848561558 396183837 884589301 725131260 821043293 612987829 560486490 182630291 476393805 296815062 909838266 288100418 464646999 893908841 92411304 124745290 984886678 930808099 649158837 16504804 456054500 380945094 383258037 479099364 928652203 63776039 304789981 253359691 416309227 727050774 858993545 329780135 394654216 899640886 877659187 527986377 231490099 448693797 12328942 338138727 520066211 18665828 513900927 717305228 986019222 880827413 229411422 445150576 722782064 719405366 719314085 170276874 432958988 586904470 307792844 871520939 211652332 42444598 444522913 987009915 520191548 94794255 989223399 596324778 862999548 672400392 108971889 181700936 633140365 920235245 218266904 735122317 164809533 165105836 150594310 47455906 844142584 122129915 754132008 902438039 61923760 289636099 255582258 148427457 395816 337743015 53164579 406569874 795670173 259247492 321941277 547781180 5231174 5617615 465008203 348692598 645669195 388862368 579574235 133588208 973063703 161138045 871215905 689695966 838607135 133788475 482924573 655481948 893999215 716142849 220083099 608646734 478254811 228347549 693339336 334904411 589539504 341719632 133673588 866420363 908116749 699325795 690050243 148358951 229068714 616453133 721002433 687516210 684063242 662094055 102815119 230621463 417951617 186824747 339840787 841140237 975681367 756846589 442063892 843494889 242247989 735081110 996243138 628524139 837115642 326705517 261294363 27570955 193734155 259813000 306911030 910946432 126565353 548304046 13662441 659727462 827729975 659083439 908883201 976221513 94196610 566206988 770706911 109460394 824550808 774389285 469882528 224901184 271184011 738623811 558124401 877680123 128608287 454565889 932344226 881642619 386307383 935476616 138887092 587221661 87654388 112713635 706459310 373767590 15548673 822461832 819023453 918258875 48227961 722128487 374010819 360000081 826980260 727717675 233423811 972212084 410536036 92680290 187481638 600075190 776469809 655167338 630113714 541460753 263806854 311326265 444132878 909322452 54762382 722858631 322308840 567847493 330090476 816830580 181951067 594568760 866841983 948308167 224678158 393276924 186913153 337109402 87091574 706561155 686691961 293226483 228359290 708258982 972268897 59390218 515726647 297946658 419902633 744155290 977802332 297845875 294999223 914364701 391919335 227894786 716796642 180508937 445245736 465745709 359700966 52138832 973386532 957990974 440019951 848517775 983640783 146985144 673927570 248551217 100513468 197600565 923146992 246598712 946301443 289536864 394242901 16716794 5126231 988812817 822682194 688834194 543331627 949315830 424845590 236251873 572112334 287564370 9913155 646444340 360814952 821433989 743184116 917431590 442373236 226062133 705562702 254457881 858144539 119052458 388079408 728022857 640196523 753180688 642263147 715161056 505830891 294699714 163689878 716787771 520912264 422313537 985017879 454738103 150292255 756906966 79035848 774489426 20139333 296098496 482865341 58707492 883178275 698947419 202997703 214085125 244810896 314280708 282944990 80516807 270682785 885291836 495481965 236510167 557046954 950339382 586593410 102601527 390819684 491103343 704669494 220943818 718053995 6348094 913331054 447592676 663324025 728451760 734245090 113224313 191876064 31634866 499995985 366328963 842531193 697492192 44664162 1669627 463439232 329283936 263015972 168145244 563832308 361703046 397574579 662355437 875184494 126697686 345747022 749094057 406015287 316523351 302587559 95242668 528831721 604057936 951184991 189503160 633274703 224079221 540089268 26997049 302150917 389589052 76126635 48352769 929684881 157889603 181159451 434173513 61789474 706448588 58986936 280320675 362242538 57713071 648247954 227600644 718147702 43504456 387156141 8175412 819656895 512250973 792991245 207952815 517077772 193047213 693428407 472124387 484061815 504283757 442225832 656202477 24445353 584277741 174012461 353876857 595085778 817224303 995565701 30429240 489813610 720602464 598391470 185218120 127013532 118440557 937410346 235754073 873309293 194680756 146971158 304985150 947574111 351798299 108522242 756639005 435706998 226820081 456203664 192122689 319536561 666907590 719207563 438064529 419518178 193478894 569924247 760321291 640385961 554067587 19718315 843648419 205151614 69737349 882823328 196317347 433709746 276108040 684884731 377872935 693974799 856072967 372155034 907838427 647726081 522994681 70656133 332651016 810081450 494591599 662940604 14816083 133776894 660844299 545863259 16989046 813881337 223264912 341962873 417768642 205263043 453698054 124258488 486844137 158606759 484825281 519974266 622715346 397463007 475862750 941901147 370330292 953796274 147063741 967740705 336783263 550106926 532139465 568965886 733457801 566240913 205730464 90281478 55263099 481476175 184485965 747118332 537491696 715863104 503265171 892624721 421997009 516960971 566683022 887183605 708579582 329274980 135629585 609628785 17202436 138614671 477541941 363343207 956520977 610074120 334889274 868262226 171697756 869677743 349847117 953264750 982520806 957134922 657850276 973948424 636034028 777352094 251079889 553312780 353073335 678214067 408138390 729593281 609562562 347147669 482019900 749164841 906865698 397509571 756191308 335226657 718486590 31966943 777816838 485414634 420264057 872119445 129260398 414497490 110763427 748042318 899888532 971239922 817181716 627703596 169832591 508363006 697676215 333191428 68922365 422930394 740802965 729555809 369638923 124942696 663628937 374904232 505015409 378632141 84782207 473976275 513392864 501639623 24994806 824155811 773521263 403178027 208996679 860205304 52445800 249406267 559416622 896085747 396367801 302229296 692498547 665302027 945580252 691360813 344001737 982823206 214216283 873580970 927652149 17347655 855243837 29226858 696510705 581298234 582142783 846980041 387231224 791027586 794541941 565091112 985610192 459528967 323073630 277946051 830995227 574519215 126086285 912368957 780692681 953238715 704859228 396134202 347373312 979165164 230241030 107642343 676205189 742767315 878239231 195879667 526219259 571538988 882183543 9380676 650888498 240989001 337462101 619274957 603151782 806591631 257805114 600811165 770741935 738705051 898324703 138260239 964375758 514590984 933281248 414696967 365756148 61770100 220173602 532159538 10813382 823701019 563969467 98384938 882018051 55449414 144731145 323689880 482658690 737228552 235827572 907431117 308993148 67063948 955132198 326009378 549327911 541551702 519757039 346289428 745215321 981533013 119238657 810298578 206739755 70539895 844703338 532447740 736186866 269066762 876376663 670373225 221303365 393128816 552725127 109656897 852396318 785344536 852923384 460367056 877450632 564197064 400532556 455873419 34490411 237306753 588278990 866121704 32829158 366729889 650823564 5647358 190029407 381402085 134519321 852226994 155399017 958495206 853061122 522924079 537540140 63029465 505428789 483419433 852445496 785064537 85080789 231498915 521676953 347176010 194168812 902007909 308735919 137295800 419438942 523658613 637041088 90005537 87217948 950672575 690240112 383515193 803117143 921657161 180598035 893690743 373412881 153886750 939350210 827764228 281992934 552355838 380108556 445531526 532156431 550899359 422375793 7395299 661146962 212177510 88409474 82913553 920427209 613421362 844831986 673510684 352756424 94182123 282457822 407256278 225708268 210929564 40024663 989276598 352354740 767824382 8179189 650913291 506609112 475054705 605398416 959444268 953007326 143744528 35923211 728231895 760156861 717779875 957093587 620992349 295802061 963620228 246234230 241176706 984817552 478386310 417096977 424691559 158196371 326657487 391124896 882692371 817987896 387906852 157846212 892157850 994040931 70089016 430176528 178305038 261091573 929925447 567531038 711775282 103409761 615468225 991142983 298945959 3299285 498091010 692886367 51527819 541978619 843345130 185127409 279810227 569809280 187983462 183449551 753901026 193214023 143377454 683188055 383758884 662089779 241306410 484672395 743732950 85284107 241090236 27401643 615967367 830146037 847862143 312537177 811966332 858912390 189346137 648626427 862959361 838856045 150241626 802612854 911015873 953208892 381185319 333962995 742923642 88702009 420431685 380165287 187118298 408089026 630465299 493987120 175931301 795560485 226504986 291075478 605593049 446001853 370802329 311610960 863956343 563553865 759115051 777399873 76842876 250404678 326147049 870552987 622507691 661261568 200074902 615190492 424498379 482737904 281934132 798869188 77501575 316650405 327052282 656181490 130972861 762660565 391726206 576124970 781075645 129496186 327514251 425989009 729333000 828995532 420328605 965454810 322725344 920784892 995472312 847541984 320568480 562483440 232528111 923604288 448949447 380152122 339698361 962473991 203021365 799113473 501364225 996434762 543027605 432659815 569266487 184523058 345585288 972826211 581360844 959104870 963791400 289782462 942843157 471623563 352447494 537596030 391566245 97273919 919486220 311581581 667175205 102321303 969369598 24733853 561461197 588562098 259043725 935520843 418446888 557227964 405871019 669551776 248633601 483174768 923505431 234811468 141495139 786757357 54275582 262509204 757781444 411161345 245046085 124608144 325043869 911037617 697380840 867024489 115922308 685329806 893998211 856152073 91520529 852438607 546576109 656854154 408155826 449742206 775045231 56619346 606674988 618622565 500248563 653178203 274343642 808625982 374544547 799047764 198040737 524010759 707057091 147421727 698287549 460055483 96927609 229628871 344527965 193361054 861468042 943997857 182461928 416796828 863431082 590936134 382056923 941046807 857153203 620825597 150763558 631219718 187277676 63487993 474092091 345460227 852247410 194138307 85510277 153544508 679900555 428103445 273914652 883235689 685792258 354443251 14312540 690227960 517510896 437422065 102329080 276493921 713877511 230311305 82520817 776768579 238915315 644905297 656905900 935561900 119771062 782150260 87212320 198640646 622897617 546854405 122260635 475021383 755814863 887297274 647178835 836191472 723026759 240241508 971046803 230096661 193559572 551255836 940865227 375505075 906464322 241176903 283798007 2999939 63378518 711340671 55823963 241189326 817536547 636471849 24016774 508113362 51440082 745419954 375418151 743034142 537843471 484870140 485263762 679380700 473368128 306686183 421800306 858295089 632807108 696945458 286251797 907785357 946140410 524621238 351441914 382125351 186956196 888424184 277337485 112479662 256400857 246531610 287438116 341034537 157320060 26817611 770563368 947636945 584387534 675469250 12925479 103078269 932369373 472521862 202796401 686506524 982205830 756985072 594727505 30018752 923788954 963041209 810173595 389547867 293767608 675121758 675367839 118970306 945333010 62629866 918553627 137738257 502206235 333717865 690978742 35476755 219562921 675659342 229347607 977853965 118754885 687320423 944974071 320083677 99555320 611569691 58284697 332411624 764376449 6824475 724374546 716693187 702586124 571345758 850649168 170592096 537924683 169950123 372851506 431714387 540129633 101516587 517019658 569525610 654945941 548018986 392392000 716914509 635590837 403377911 490371205 253342602 508305385 962518883 784595268 113866644 514713333 422442329 450251587 780439087 22179184 635277069 75784176 700612244 382018406 770582858 431176191 108944920 864872546 752014061 327570532 697052058 834610809 16725225 658804921 955261122 811483801 954719530 605518449 303727928 576561335 765424684 590372528 906334924 286740929 813955447 400900972 64718345 617509478 821614545 924597682 322994469 346564092 320306811 89038695 476100092 52109880 884927819 369108920 734324225 125192711 848025725 772358541 575316444 253156188 956206231 538811300 40698179 644637481 423494431 674063836 530034099 281995276 863874256 381684035 147817202 788847347 520660857 308211926 956740130 519209138 980892402 200929314 830368854 706828262 872217456 601268216 75720987 65375899 549636564 314655201 624630548 771964900 656409248 294512069 398349803 509815037 433599044 804854714 804590709 601089885 940059969 463209275 972341518 428039529 238629350 77847973 476122777 173348889 800550841 319014071 369467827 454889285 979356144 207908729 262057830 294777969 779022751 481787396 322514400 580102809 519794564 606801395 123041567 250835319 303547559 700582118 852714349 924674458 213225544 895530569 309504516 792885313 793984327 676983335 632846384 495938278 936622357 737030348 43611910 983595697 445295352 551846150 763209584 532074282 156059783 349987582 108979951 292991410 399610055 51354969 617474218 522589343 662165361 392068445 971412115 720533408 120529163 723332530 521142355 552173634 432161242 612330212 373373880 575074866 622949778 248512886 911581764 431571689 237028832 306895338 801519769 302304073 741135807 173445796 127259533 532010778 890450577 924492229 579656488 824382875 690389054 166123425 637992156 211417895 901549877 819793662 363795594 532728736 89296707 52444933 330705301 160683196 513645909 765148981 530457250 672791474 667086834 148820632 606233149 273316394 253815190 367711832 561247329 787349199 834919919 765113763 634731089 919929029 524274520 327520315 866439979 862864185 352753134 470710302 763887497 350076962 889560310 164428540 370500236 42726591 739753338 500522332 374702728 409222068 512267816 326637728 707875993 676527016 408845184 287596854 773974377 424672121 588928942 944095081 237411693 838622555 355278040 999133333 906595691 751088569 427944646 977740193 125745223 528632800 885749630 185458260 613176304 875931843 276860840 681296518 981401299 133658245 786938962 932228163 839100766 446009863 218708473 906262559 501175769 585138182 830460087 233882947 400931039 271885446 568182226 684119219 756694665 828387522 664045960 449503834 456020665 429595999 818423993 682563774 678995025 538330996 756639657 486106352 747567389 871896385 593773533 49189959 256565832 685419046 713525128 653923375 717119315 405607956 677501559 649208477 890599700 896137768 308590505 611113728 118128523 594206110 364758967 396290540 702716673 683984200 861442113 940153425 877860986 585355832 743104468 852299504 582867668 250435170 107703719 339140523 914513568 927102484 134294338 64516305 9011975 772975930 154621082 116880733 779873404 783779563 805305696 171060689 847028586 532590732 666401849 701796830 754252781 846407075 347533298 701864079 796399463 414577692 414186038 814030068 82240058 85524376 481652183 707375803 554075730 940442458 253485510 457891367 803646887 703113952 365423952 524924659 318128444 938456910 972119777 824114860 854428703 317619113 283205599 644852609 777223955 396705377 842845188 431600385 668025985 586936651 950027414 755335636 251986953 192428164 826510178 994295816 378951437 534328616 144327789 163747403 141594429 760620607 985002640 434479866 128164645 877227438 793395059 204995074 9748381 88557581 950606161 31833971 325278532 537520743 202165250 844078157 991219368 494151341 593849628 143117833 744072213 740553264 282131442 475769252 895661620 648425037 801453582 780063695 502352800 390448742 97097843 219787475 628124049 932363858 370383199 863612151 903890852 255958827 755982907 112218145 903859491 775136439 260301046 23859344 950035219 3933614 210559553 713848661 218014925 759532174 45683967 861264973 60177045 272522852 258772146 963706746 650778328 149452094 908518954 607586733 572084498 183725270 684246771 388315295 938228266 170112268 17133670 997705504 447282569 286509764 703544929 758275253 839112438 722793095 140082170 563353389 762531573 503744264 870682356 33861904 59725983 186987371 285575424 497621163 739710754 612588899 74501077 693635207 827688865 38150603 632123043 713613929 562612188 741355936 952142023 998515784 611786574 763924123 168424038 518834747 155283067 182596877 157966435 911935641 609955544 636455037 789767159 148214198 227253992 854800089 121370763 301768080 999207917 663649105 434271642 878642930 813688888 219622470 420648280 227766317 530334387 398636184 250356905 46499407 681758360 859714362 470506756 849311161 714024952 165222808 279413982 49976195 240464387 609394836 751278777 103323995 585731562 334406517 882181312 470690188 537388448 304691185 722590295 807840149 716723597 73157052 947669628 901661126 424580410 925080831 831753332 436798702 119969921 228396402 846308667 201550507 635677359 883300218 28588922 131134720 494649227 522544079 559781885 544353194 364775227 599854531 928687638 308474160 362716481 455978199 89903231 714421175 27951475 253146253 312801066 829171172 373242975 212543636 957531511 84894279 303245751 946515398 375835649 808982946 430039450 792621424 872898369 958389600 216330284 277845431 811141453 746320810 714207401 319605527 214524598 792414148 910167980 500931914 930370775 54591045 516948254 250695477 988580217 485103258 890246528 950883549 771432986 397017139 435092119 426908878 694667732 557627610 924263442 954466764 758936402 803870478 928046579 510977524 704219404 935975106 263646267 268957001 116684948 392358055 962561105 872077416 733841620 704994231 125110735 501944162 817149221 517162044 968368874 173324942 451103559 909031765 257127588 145561955 734159901 20536291 828372070 493745215 434848347 258215101 43756174 959827291 967754295 629752274 204717520 62722095 55816734 517246480 986044765 289183989 823507977 755524650 309688893 137349709 747527318 548640671 803308656 105160796 872330872 349143839 179577218 481230811 403592218 18380455 806766992 854460137 232321599 754134132 547954411 412259481 376253652 147237864 110019646 855137420 308616498 185820891 529432389 248430297 187481453 565942451 331555514 38510262 821629034 879126155 775987109 964664240 679681166 542117999 553809103 654345999 347522096 407700247 834465719 316362792 372690507 197888912 212180316 257689300 551639358 318708385 121103406 467037489 748649366 381254626 518642264 945366807 826392863 428526064 618780625 76056732 626172198 485571344 65714312 217276433 165286871 846908383 616829359 690969957 36976315 569604731 743641402 661147103 68438665 726243433 444847805 72992905 214120138 775752767 219051858 236502018 510599291 203446811 279493589 49859468 50518321 712321023 195593385 700577455 549591564 404340562 364513314 135987477 466471228 937735484 670204927 506030452 641513040 303084359 394796257 498103935 210505350 195612143 400681475 621604467 389300143 22639366 544831189 956239942 845619050 372802545 146351013 795374225 980376730 631888673 325302601 377194315 234422111 415974473 31282921 216489957 732739973 624874635 710839855 840225309 417788596 526462552 149953252 296950581 679115605 960606614 788645118 534424261 148000727 791192582 4293901 695904418 157673728 744419017 818344832 850571067 335487127 284072594 352076324 753075718 390722337 488100066 850272058 87717280 676429771 465863428 842072644 490472245 308800638 480859229 769184763 83546324 767708307 894466922 110384745 172940886 558893100 778372499 232461698 439017533 87002136 309522767 287274368 333528208 774781989 774525648 147849659 648612234 494495029 513299380 84928845 250996360 866721400 472665607 84335164 44572272 712745601 153085222 908667838 64412782 236753156 972270715 662585110 870546377 809781989 435953741 462295314 318424402 406724827 615516242 489984572 58543711 473572029 354668374 6366103 527940116 371736456 525122606 621901570 710025584 640878520 47457039 92501832 268653982 260481715 803860753 380837347 144587386 843250202 131235689 448832610 185232915 5038758 940346184 900157809 704646159 458783006 353172419 489734883 526220028 221779161 371684478 831110896 868943779 630811784 286675369 374069014 405630675 100538883 24613807 626115517 995939609 256944187 664745774 964340933 827594414 440173902 80354808 696419494 5149476 385164967 90654040 385271806 58100429 104836676 997043029 611363635 459749779 501428995 702148062 643381154 847544225 325684015 708046504 246948147 70381946 303180809 191057581 793220932 916721240 807617475 383858345 863480222 561161091 402109962 236915118 746653351 994960080 524005387 317447980 726951688 984446311 678485949 418213061 432209837 618139452 896936487 205529334 85490478 656424086 663728592 787976006 895769771 213570856 34673248 526182715 969826404 303982135 843066236 612434235 138988274 794079440 801879819 780650811 649181254 761929543 206462198 480964109 679285052 422487404 750217825 401703950 484418062 608224996 364439935 134469698 646077084 733993697 964768033 207298287 304722664 28712791 655688390 438106790 767523584 601849519 129411176 992899038 970621071 255491270 742321442 962394584 371347656 62359124 756674757 334990063 255857440 77639821 664010461 13851423 729109949 745690683 207882119 294676612 504046800 301076612 585173145 577012870 524072853 548409376 925389217 350220240 227560157 106554112 934475802 544379640 37757802 933280523 755579724 100307593 299747033 178882593 570654046 361851265 921553148 534782818 574311321 876830188 794944443 124203776 516086312 788554829 502254971 450841084 102154708 852858347 771184763 481468773 144336871 236262747 203251740 456796803 41669875 436915343 997855154 712127057 742632441 738996113 986256049 187011047 448142429 999380626 433369682 389475456 740883262 535952338 85013801 623656290 970069231 735020097 600314811 245973149 900062361 782655414 597264065 318175552 320386150 954305386 182033893 672126173 310980393 393996198 784874081 973735203 145294386 427720755 849183448 919929781 830574244 269820941 380670523 500586510 481763609 486023925 615787513 580925971 409471310 922138300 13517693 411079835 261297758 144421679 74899412 260628548 294962931 807502407 559206489 434339202 466671170 129179821 143422893 464590984 301245183 258165331 933975232 778896553 746260778 400738682 419548118 153852405 479519481 892410005 519040175 50817292 629484730 322824293 689156870 653012692 233590367 62933912 909762125 383263344 891079852 52348768 834437065 165167297 597560664 298023586 1454918 348817763 544925452 264678403 887791867 879499173 80179330 944577521 957243311 360562480 680571310 476684815 161310466 181621431 460670888 428706234 832469493 694738315 408108967 111275113 294613164 384981678 423006629 433181319 799737586 521666222 650291201 395555184 234760581 691162347 108183405 922165249 953498513 830271904 255682150 723956865 504950884 232883848 477191011 821784120 663582353 705755004 401008831 703364858 609463739 753324536 58732620 252634532 531696545 956669740 679660094 240725993 775321 556940440 96307173 878140908 344812690 741497602 734680035 108922015 887232140 700708396 896851158 440952469 357158979 440731601 66409351 420765189 375550521 280571531 443237106 166709742 788009680 792083930 852946325 459385839 342300019 650556871 654496775 844246414 661744074 600318756 348869548 240108120 719180610 294598504 366039212 374259664 534667251 95016709 657963895 450373983 963888439 660779009 461540035 827307074 40177100 62314150 652470958 883009899 347892009 245304218 2247581 232594007 127612416 363684506 909274190 377144952 907521997 553598843 694707728 709400059 294608008 466193530 999918937 180540067 554598076 415290956 143185814 265863505 427903604 216996056 27023893 655472397 86763103 115613817 51350824 11989411 915493695 623279220 968450553 747999810 522071091 567381028 308779888 248194905 552800188 345429594 380431965 314297160 685486463 761541332 210272741 391869935 817692665 621072129 435913550 182457740 687737841 944537816 773473705 178995866 208019344 368503983 30323015 912994724 75481336 460180885 408988875 497363793 679339794 469630582 10619443 416102615 221589849 630797446 888682405 727636652 625703608 81088140 764066143 48093516 355955315 431198365 813005601 163094485 298925271 679951739 864178226 848893144 151558644 704211683 305488143 167506288 498994930 885105428 15873287 152563162 73829306 195243685 863476084 421682554 180809281 241746200 303332932 722025621 723611080 107618515 723432067 568894540 875143490 84848236 11259496 328152421 677359870 84514474 346967843 562932584 645238649 775017812 279588838 987264906 986878728 921096463 421049855 160650359 905858742 169934209 109908910 177360555 970728708 226570887 456398834 608573779 399777699 440505539 491198918 93126795 503855428 48160232 431205386 306849951 187622141 566590495 382208681 345390409 740788947 834736976 376878250 670890008 386477128 453518606 551465360 648504415 604511668 919023453 419586245 407609422 662370251 208048085 670317612 736808216 249230741 418829369 581857655 130693300 729272739 537418438 209252122 220897612 456119719 368477139 125981403 539093663 433263816 807382238 333400049 975992163 770674992 398544273 57706274 541257012 614615214 601532828 740062743 686040876 642903441 367889209 587297636 529995872 513181894 404587653 560751609 457682428 459802204 938212794 470895938 776050738 672280656 601831783 744630035 212448143 978171445 379620143 452184625 734775100 778149995 115640418 162639715 811261568 56507513 176158631 881430092 43058767 106225916 40224938 400849152 384093570 268084303 384487019 159228246 549172371 516469106 130904627 632187621 883239084 577501983 153492032 790968638 825244037 963939405 56608055 24324217 197305971 730345133 160380955 333008415 612194749 802075130 323014857 644679160 896034782 126389213 824413162 805750013 128303710 312511811 953805509 385142555 182766595 818345992 805877115 991584869 480866691 529180220 336890805 335580584 116345208 583934059 21744489 868208388 856844450 188109882 782791444 339600939 518168678 988070393 221246198 586800551 427651871 808737430 512853895 887828770 42688603 317300099 211161090 98700444 946503854 922945333 149114623 37557408 56898793 934473977 782197129 662388572 547202963 731370106 856998783 493111396 110362130 90564406 345665293 249870440 780469693 739048510 3200564 526121182 166505975 169522993 164547812 3882843 455645476 51532906 569749313 279709393 221086644 142635408 737202930 739547312 41992640 712407155 197731657 208702976 69201467 164130786 785088065 639434245 530230014 459652118 709646238 583237839 275480598 88904321 479206587 979051371 544639648 865372031 148535961 643115250 348665777 764633890 334463216 967471193 431045600 773210916 65511974 813942791 417261576 592746064 840367842 544089871 880287379 119676298 880061511 859344674 39884394 685721307 705298800 217369680 407737173 880598064 166930462 170336915 854102936 743122256 129631610 162865492 676229332 905494643 364720472 359703367 901394556 250568325 305193300 931257166 952027416 301416831 763932083 415633606 75500903 598587288 885584943 441230901 321197268 18524363 431377858 528723331 873304969 630900226 661043728 86645810 787360207 831046945 953329837 596307345 420300437 6914807 644507447 836481893 400527273 269522508 84788840 615605673 953943969 663185647 151837651 310290808 75683887 656978299 639475947 684499547 297076167 999927942 957751424 975684450 983748925 390917261 716794404 358982484 185015655 340809426 669610675 527003368 486537628 300142231 657236023 549805381 496707342 264800384 571500042 296971856 766683088 687003413 487663297 812693885 950118260 986434384 208299371 31534684 575503481 844893933 457685801 863592711 980396303 133189522 746456710 355672065 839243430 702413048 372334122 149727464 548270730 946706690 309035933 143695146 360346542 437906493 661184930 765206031 181396186 144394152 73562036 116993757 871426679 333373210 442478932 980089032 74898680 819518954 73040068 514713484 196120142 23499504 193153834 903420928 184029149 516948073 459728924 759438094 893341968 751787314 830071397 22935394 113983306 906426221 513435530 382879967 828395356 86498585 931924915 386631963 478809611 127991383 248379664 203753988 531692977 661704704 980067431 397959020 441992905 405695075 359120061 885439822 804819624 649528919 449655441 569628801 71999771 396539142 286633318 2242836 912426920 498710690 23169020 29701285 85463308 961672116 467872007 209090672 74425057 936124541 660441864 959214840 160395990 583374519 684343714 595965894 130478999 284425889 871400561 599293402 550816830 313197309 673832807 26495504 17292581 953878885 90934082 419247643 676318281 32450592 585035818 493117882 205959603 432412704 896985634 314546968 331465039 631127109 687132590 196006666 668203394 331499921 836287155 339993364 352767855 957718993 309481155 536663768 131679324 994819447 515151064 595784288 552051050 81077539 144422452 27666228 35469594 544222592 333350923 252122572 290468788 178194850 330100384 971279726 922388133 989457623 975942646 701234950 424971426 653484312 333853413 474723528 133823235 423092720 687700869 934709598 702935571 969618627 568592129 447374740 613337217 661055324 219881198 916800778 8061178 928099903 319874489 920661626 839234333 648006280 306425304 845381798 223174854 413757606 450195326 451647399 979688737 189225356 743007195 133017374 960725171 483519477 80741259 829910001 584871587 127631564 936328784 355583990 961565757 868253071 745711660 986152245 88419775 384368437 847900414 60209583 573139873 234295163 693704490 947875860 432248468 778535757 597658382 848368845 56999648 876142926 365164820 313482334 730933851 443235148 560244237 798434882 954131382 140789772 39761818 269820320 909936040 244175344 58605584 11686101 876322176 909084416 615276050 694017457 202198626 340716742 116421745 506403037 385047411 553496637 100362258 315813006 529744780 640040073 126706491 892294538 454606798 726098954 126908283 807667485 354276571 301361532 625227867 481133247 606834757 963644336 428097607 681326033 468854943 340106424 520927422 352252224 208423607 752104264 622231967 477667658 744154326 865213469 673527135 858912888 300462268 187973650 646544473 470606468 463246179 429130514 857952552 953471549 864416500 161464865 649990724 539689529 345439463 786951548 899636175 849141460 41078423 929070499 735065585 729406105 110219626 407325255 343696696 386941325 619007192 477558830 144670758 94947532 555301358 644401329 946275228 526852160 852955589 125489102 963051 786388754 129233253 228200516 146915253 652088550 956293871 277836456 571365837 99264231 149961771 426057380 969999211 363813271 533318217 169864788 303527443 687785576 27286029 953753005 939804375 960583074 207580062 46311083 593907297 782895101 453587723 223954085 23281769 743514407 67184076 259529376 301763121 559554439 683892367 423723084 972137335 137661252 423290404 455762198 96217979 281585011 180982632 198953353 180604245 681622064 156744111 446034781 633706494 690263672 403459563 754466921 209598348 528506086 988760716 854355045 688809510 820652837 55375422 461483503 161230143 993090767 43979511 826487209 969984332 733247589 94389754 732768285 960154619 453069116 226810374 974628962 268543856 281512170 381957970 865490380 701350643 653869515 267350529 634770992 985239104 180143190 770189670 949211563 807434264 134125001 996825123 996424431 47036874 244321944 401485661 966578271 24628014 91899386 264978895 574163746 425337067 767604788 633645695 434775995 606226894 168210077 319335389 371940317 207926284 563229011 581857776 314050458 810858344 547213264 330461062 806966881 354658067 128183272 326831074 725043988 661788726 472957731 244389421 54086880 177134636 718625229 333034006 505554218 647250948 105266161 369642528 151816187 81975282 927776477 283609019 181614342 983768586 471801491 33889936 569110481 360087545 996103635 535409337 95513063 544094373 864806350 273876792 874707829 898614571 445793840 838799832 811656937 954282073 37975419 614251098 708772684 492257731 237601124 930775984 836716583 598128713 517637438 758984452 3529160 243313663 58247404 116597754 355159073 261240543 207615263 592532716 290521228 197020465 655836082 775521019 267884539 450224745 758524721 438545302 152947634 735379011 672405876 176751088 131832743 297189294 286213464 474204836 742263607 990093695 449210686 97276879 597613582 309311764 523579958 635962065 219628079 395497239 694884895 510535262 573216049 723259643 174838382 997501617 787605175 32822108 895762588 210301301 788206696 528507476 740940411 998629384 451557252 523879148 954910442 483287382 698536007 722255205 524991431 570853294 79172144 198874774 426850722 467373536 774119363 628509152 972730121 211484785 562100919 90822627 199920923 507634366 899016841 167612757 470785317 418439667 431585386 539470700 936080601 860092431 418148437 723144776 476756645 391966298 159755339 736447475 728699115 639535424 888469432 775801808 189336309 182582359 344765456 8698541 272019101 337734207 204112455 749562427 328290045 809155769 125756667 865363271 776223084 216879982 365700922 592955557 325821523 691010316 907312365 461467741 1549223 862974981 387756901 387500006 734358556 768646816 214514131 56198499 552457298 100014937 655890538 759542565 491120239 704847015 178734736 914451456 149975820 405927507 867091997 135295206 291673079 277569425 135084035 963061936 990526682 543036704 380419695 904743997 723481071 945077001 328215693 516580489 784148059 609939056 27107312 623171747 262505289 527018162 546709910 393654148 137128211 657631223 533130178 452573327 935525128 880719377 811797394 189649388 647512360 49854158 437548483 626757435 351556422 142683407 209122279 107960055 310884747 129154372 944621492 33242331 644011156 762300861 507778789 367879955 868036646 345725346 195117398 607961895 546426808 50316465 850613828 981059701 813507758 902557897 868458254 360679808 362540622 391747685 22397802 729187174 991995663 922094508 219312953 767246438 258692896 952294209 700488576 523844036 874555542 661245703 503204127 183049416 734560316 698852397 314220496 329341654 458434707 173666972 518118430 102547431 710353458 783854395 112008520 128624966 831973468 666191245 910026153 866812770 366504797 936846840 380392714 15220161 103168521 512154114 212381414 223469351 381833162 864566787 739707906 767831068 295101690 765274378 954977735 175230721 926573871 528657872 127772126 312920377 114626281 780337064 341783584 324158482 378185088 837282030 154841181 12113057 708901742 720227217 656317830 316743530 838631756 886250521 10127425 497206109 572167401 638279993 835498692 656520344 234880123 285026358 704453810 740783466 109386883 145944224 12275329 770551439 835075585 888076905 623251220 294914156 530794275 397360143 971039087 961288466 605073394 959353230 492981008 153610186 551947650 274693965 410980918 909241711 975025002 470567991 425771506 966426240 827988966 266954278 763247298 513750335 890823034 416642724 695224361 820031760 519189457 371621701 628967051 32766747 104170811 943970475 479734098 510473307 36742163 604260299 722677549 57926043 659917814 391562269 598037861 477075441 466447957 129883001 233193102 234274588 765917217 265479160 474784666 923748737 632661822 380851749 883340834 774751284 615161396 373813307 74729416 885237363 271353599 303197792 235355227 475015409 72675884 823174478 908061154 619010062 558496954 371164221 261768377 893527617 128938979 247154308 434034068 889483157 944047747 794499240 375835420 519360707 524892300 106388163 52683910 67356018 88609977 463227931 278546383 636016491 387667503 890418699 632921479 571008874 747859281 618255752 298769608 393610604 445166503 344801264 514080400 998228185 965147317 35108048 878777851 613482911 810925771 66222966 753639036 475470356 907629300 615561101 610091721 830659626 717045890 847351284 350133241 670677066 158377375 15186667 781993283 719650567 97130318 359346252 696682415 532717373 356850150 501700712 130302054 855284621 558047982 674929668 693148665 159109477 737004467 659223595 896725224 449434110 312731547 110268082 347232895 679787904 228031632 325455469 333626241 229294166 396054576 447088329 585352584 497876769 128734318 491223841 145482744 406760966 611691137 994517188 710435474 131626784 12724389 218074833 416057923 641402234 477827577 719950227 232371111 800041996 460107188 624884888 569900984 305431202 201349915 693513070 473298158 902751103 445620379 359495756 856131300 952254033 602191183 410319370 909926935 257835149 574224548 875951902 916391299 257593132 640638512 731858408 117867685 560341383 320529646 769637554 538453017 598029558 115153390 668300286 47424614 42110388 815849739 598683658 50269516 413659861 950677353 992421715 739208953 764624798 577386985 775364458 913081643 585792281 178090698 618131191 591121227 56740748 834127081 443130805 245281593 503557261 783086443 400907185 329686749 2368061 831305094 922039076 917262349 963616391 719962353 906961093 447473667 275704055 61785904 389588967 961857632 332861791 703760588 157191464 626706124 275410871 340332070 703100947 905639095 220573356 259437471 26992597 319574037 835094721 505480232 102927409 617368276 315060687 708563163 485140231 382333465 370937156 981200706 421273267 472976588 715970504 617940211 298811541 902709911 508340114 586310528 572397633 193321321 787111844 936807090 530533173 381382465 526414700 897525599 630388951 334607474 876584195 437515670 515716753 596227793 648507918 600416032 508699640 705682264 787210492 988066741 503376208 953879110 543607092 111998425 462250916 383334087 669809603 565685786 26045879 350740307 869441649 395131434 293408072 34369612 688843143 250604877 996355764 486748660 691193467 368960884 794812327 241475879 294174822 664713687 190439691 516711017 549098338 841157460 238958948 87735882 164031903 829745138 716251692 749153012 411733008 817020946 926677027 976349478 373840022 625783938 430216490 244251291 439395000 424256422 643402838 899297579 343274754 104826201 415504459 326019380 31127336 802321856 778905752 313144924 826095602 7489660 556394802 500871440 202772922 848652646 585723949 616078569 297730003 723229769 327418531 679176370 255662248 207149640 691793779 577980115 519796551 725730783 556230182 347547409 913976592 64355905 980313053 813092236 584446071 85810776 797595474 96697756 451224083 61237167 802832632 396251097 378829340 443265135 854617884 896148606 535985486 609407882 33994157 318355103 784109065 189480558 371052760 833509190 353824337 106944765 801743707 266244794 284073355 920144758 539012928 28804751 200845598 196816307 379365416 869680793 108359647 236644567 494959961 674141836 351474486 227264754 585257097 894222793 699129068 576472740 349604205 340883345 347382257 671497217 233541575 212999597 583320410 724201058 326440095 164125258 284652389 542713488 537012391 33292296 268834227 170641323 13751 238566282 301634273 603300212 845821126 397234930 321269436 879460316 342242533 628222187 236321322 407208723 392818719 713246063 187057960 335203359 243122282 571031090 1350754 184215872 723593051 83017878 77308044 41640064 41632335 77323158 982536553 404496514 151878388 178358503 804220680 537610240 278180510 210404255 570461339 348486632 227070923 729482372 55786949 491158403 277228051 425993867 143136992 875284402 712927800 370951695 944270323 889936746 258416983 776535826 399625401 226716733 20765441 902920333 770758628 790446035 257473842 256375464 480323823 243445084 85469229 115240652 141579388 311058270 998171873 449462940 324214416 823447742 780779016 434802223 905775617 137915536 608890396 233996297 478857341 559314264 416133101 977443466 244491738 180994679 40798288 518599304 573110177 64046854 379955786 440346969 866690232 77641417 281139865 603084447 593199732 584299387 143720538 603697194 425212466 645004903 761922890 207579552 206301451 275046246 732499200 259081754 925557623 679458251 548351403 170870089 263273613 420685453 477465770 33007683 367070317 453367857 941781984 875557357 767575899 359254162 855922201 955061342 718163356 960833213 496561187 132955312 41142761 656663568 386446950 324961947 387899202 628396174 350168577 796797550 343793364 724790562 844006145 902586986 478198326 585469832 545563080 449292217 603413721 717905877 627597765 823301783 179490772 770311968 356433935 723533381 653938825 969895834 927915233 716897353 319725048 517937365 338930428 678879846 538773055 329320336 288628867 623158306 287673441 323087027 949800074 324836541 206922240 626930900 558519058 621424982 158384271 106398469 195489035 917328786 400640989 386841727 705528730 973306509 508608051 279347060 315148612 316955820 806186282 981585991 547535601 242345884 180518020 360263544 205086002 80630460 64292057 255061353 580237313 841535497 798668904 418847710 355604323 697356822 336574522 869008612 686259750 678632977 893013360 81354249 201846950 508271843 840439249 934798932 416230348 613457201 959750709 133206183 532474505 443136552 725872807 981501552 667254923 650714096 532840813 625122197 105554625 617921865 549491030 757787264 383764229 697629459 613031198 31966991 297211078 408441216 547044445 609599277 537834655 865605170 590879384 855726003 784568590 68408091 656715716 43726066 674542839 417512780 63236250 190386164 439792878 958572435 463962875 297092667 726102611 610256016 995092354 85408330 831177634 45898422 579086624 366223471 555980329 867604304 693022658 452069594 145792073 160091372 247361337 661731080 120727412 575838913 371991374 558118950 5731375 939854515 982283160 473996840 846467380 676806179 246236543 8172520 252441804 726763698 224223062 847650497 519780462 688354731 297323525 831802850 658024739 788753325 78735190 878516016 847019916 203344513 316803451 795058614 991239403 359135677 592614458 675367108 449569707 81335194 633754940 59080859 857366189 899239677 725069776 550547336 863597320 207256719 367110849 905404915 244297686 334806124 851917871 101137532 167857661 95595483 57028044 279334093 952948794 78012117 223442065 722024682 968546789 415037935 575541669 143580028 52776024 702538767 776549563 900232940 431888760 273382889 924490917 932561230 576832525 459082116 453573230 417331433 700152798 636461948 8146602 28159629 912718951 682129291 965268401 698836280 280119605 515877876 684594743 638412716 214973527 178870965 756200700 295734067 724227296 556768521 412523617 829613801 786391375 853280370 720005577 774971121 188278675 654027928 740854306 596609459 863078381 173080779 25972087 271476548 959594636 990032716 606947223 395331641 248708323 610350681 952544679 508878391 374980372 140276409 686668173 599519017 931669961 898641687 538952201 972729324 491591882 883453126 779744006 64317630 483371061 633498215 247279028 142544077 883989075 996253390 825937154 261179445 428225669 469515242 192541290 17531619 69805821 563616334 788310007 247367005 523771104 582432139 878359904 12813140 828621279 970853720 168603668 460218120 391276493 343138113 863432701 941968023 435233746 762596088 576576676 611206519 630498462 496249561 205967901 126783156 821149473 868776801 735678287 705796178 865231190 259115405 745631089 577788389 902721920 873652433 941802636 179545296 545373300 671494934 67604869 868862803 763114763 888833895 826716203 684379031 529590111 753769384 844218889 78409418 20167437 972519952 61518711 59516792 657119339 220829262 50048785 791459575 833621172 318871422 800393713 436251007 341084877 447534311 935030721 895968163 34175576 528373851 107890201 847879627 327894831 705206495 64534332 972505752 981848056 453554641 501119752 173284461 952271984 311326117 16696858 425931016 404289757 353273833 972462624 687931373 966195627 962459395 486331686 484574218 101404382 603339572 170639215 15743649 608541838 90158117 16587133 941265096 221885893 174890000 84629744 619070262 375005345 159666397 611477189 746221612 489838793 985374684 937687387 483854603 275724474 192195381 379434308 354617351 854088186 918081024 748909541 349541920 542581221 111142073 196463017 434322521 895499576 166160669 142839280 281445496 452110501 330871377 836596750 937341655 444616366 678294563 770174743 783717578 608629871 152097709 31211920 532472915 778109853 103764067 717522046 885104576 464117186 495727132 160419027 844588224 830985517 155047843 473270809 485967228 338786921 767171523 921155388 406821566 408554873 906973198 736653336 576709632 285440229 470413508 716295966 345738465 101263000 329272134 530111653 350822074 789183618 357513773 718068057 789971137 632042118 191922335 559691109 211097089 303612108 673238940 705134309 903683712 339349312 282048173 854873753 966904538 233186904 296963035 700309111 213691336 427435865 109531630 286518553 105089589 130049074 868441029 977621996 532939930 351178291 647119008 55487805 780263849 824050752 292511289 311482796 544219381 469632933 151212406 420536327 649319353 478613305 746065521 836754008 362719960 607284732 34094920 371650240 681645987 7735299 345415230 561800865 98279661 10988806 288479368 323228841 674462294 865335094 563629588 48958213 165066581 427168291 449349597 40470815 887763792 334578377 35867035 401443971 866339254 496389996 736840210 673385904 80664042 571185846 765756757 236442047 75405181 294514397 631737491 863877539 695660237 162834488 991754744 700877389 777621785 100238338 399809339 384499020 547513505 426480713 406874081 171332984 727178267 235913247 214942877 623094749 130246531 297794260 170144029 248595773 82161962 820402999 495764346 850584009 472531258 492166698 685661498 790095091 285326275 341614807 43704513 893239596 226805535 618126617 771167 455874412 981232409 520608893 492626512 163418398 258424553 742680427 400328819 675013060 521771800 596028005 847817033 488772952 926829816 755299449 832949572 307522882 397337622 13342224 6820665 591167844 49438760 902751514 81559372 571113659 528104878 845352765 491497272 693690504 524951759 913301502 864496075 740574117 984621207 703235208 129690617 52380210 475897914 925984803 132833715 522045092 375202287 620305855 151968075 161555773 689910234 853639112 453941701 60313072 727408260 686503172 253847553 274412854 684988726 283850526 37897584 279311543 181630663 550146423 601419815 421713598 345225649 690565090 611798137 409586714 555679488 438309771 265997801 613371457 638356872 485696133 245256710 252446471 946575648 542075135 329261496 89692152 100625746 735903751 216762818 255658269 720257811 396704707 394684562 603814527 380605646 239197950 832975422 668018640 967817559 981068174 839696593 110186806 338266872 871427748 430412920 155800253 386733839 143920876 359375328 132287707 809260897 561143653 579447620 425028364 914831058 969874726 662843471 663643870 591760070 400698946 879498173 299068014 16478699 201221228 321957622 969424577 920743635 321064113 119013247 233064750 6430805 886801775 261563661 920268037 205648189 670583891 957123985 759212062 112827963 402849221 794002358 606238705 821646057 408096572 722712152 496848560 562035532 405590794 712643012 818266816 892022507 529259262 950174622 700073009 767167921 372496308 591817349 743818384 34829410 212112363 936443169 382589286 912849898 314227452 896579523 85691417 534159232 988088248 859451371 78403396 567749012 355379649 912635480 520443700 444092691 396568581 590312777 399084422 271206430 738556808 373945382 916001522 893868653 46422492 748650462 100681655 827318748 307752179 29114574 198879054 964036664 870670397 351060340 50187838 397049834 297964024 372264158 997682063 393207612 537760367 249009669 623611230 986303360 808244628 811637926 888112008 105093326 583500923 914018740 761303201 194553209 940263977 375620441 669728183 256353477 688966580 984037700 250641196 239184582 81814097 195395988 354300639 631696494 636681975 412668278 128728524 607048167 82900166 808091696 903580836 880069221 307512098 982562488 868479061 462515561 837853093 281268292 660305949 969633092 394194893 541547415 660068355 626320506 380130838 551377983 430718660 703941840 536077660 626410165 80828846 892333976 940879602 628013556 291861658 807727369 969483394 277677992 550100906 509251862 122680495 903624262 70835771 719052251 992347060 417890991 623063748 306221289 356931840 421064277 300392813 837612151 650392309 756957395 521572850 64569476 490292223 380692819 588233809 381337541 572806360 727992306 63256790 924486138 942296990 36436699 527396557 366902155 202578495 20418451 372678435 640198869 156681466 859825574 964986741 751163705 273788825 484358834 58919272 685850862 881207211 125172032 378392178 778880100 334469422 133939084 607649593 67179187 924090703 554116574 861315544 845420057 932320642 384145644 70480874 902529390 906416447 406035078 136749014 311595619 439690488 734197594 457743648 704522400 602614416 182117053 243507659 402508511 547327652 728107683 846748015 8117060 704445282 467296452 764267709 805673314 468834470 194556781 116054290 942220885 906097267 127941926 671613133 265773460 802423767 126928306 234696297 424435294 981652029 351532539 328640809 550515048 782321350 469576332 520530257 519099168 378888275 817946226 899720985 336439035 513684679 717207228 658716328 162511042 267025386 299900610 913094344 766796466 321793750 592726903 110442671 509812089 233342144 552571986 273080374 580247006 275687033 261001490 2121778 122650725 7494355 518409950 928159190 750967263 962103085 519132849 945214107 551727536 795276924 524560557 811335326 206415645 27279271 337603933 765473852 867849022 485541252 922254884 712055073 658164631 834646636 976299150 597452059 831947891 645104366 763072997 646800729 603426680 342542753 409787208 648983453 829193360 441020083 273899536 737960832 451843258 436927344 121966001 319093187 208035465 778952388 532543551 547574225 226214897 274315921 177651903 565731736 308933999 333963673 337972309 840716470 677142651 863539294 476956759 754406925 852172536 155051604 610658345 406380122 478151923 854559550 456323330 664633924 553279016 336870347 579751084 652882064 720171376 514898702 229860349 950514841 365556853 602275523 270045522 168348130 470801714 597172403 444372376 297576356 829220885 470354159 501784961 258182216 15163163 779973079 993986032 894557891 321662982 34058618 619637006 364735627 107054657 300941171 900712817 497149224 973662880 210022848 953909011 69842123 96527378 130352208 598748433 288789424 394179370 948087963 969039853 778866420 982432964 285148477 399465287 468344353 508765986 904567865 113525 749963706 912328279 810380976 216932326 811915418 932713393 479164184 53466988 575095874 266733918 898755095 338009487 868305851 947788906 501015514 808586400 220849895 825394359 523956392 199610058 760065869 586814640 394480310 235954344 12667190 210957781 62865515 25111582 286215933 609623231 207170585 108551995 61511128 337069351 703930274 693802032 635558536 297169260 533496858 950026574 162590775 235299767 6897079 720439992 372595589 994956703 364938234 687698524 36748191 324600093 739406425 873075748 56013998 685044454 120368065 972320990 564073299 56226795 915381192 967548686 524991722 17335904 815922138 977820703 647733320 597038832 499986362 265025760 278258635 812717545 564196853 614269828 284905678 733486137 678742047 37807020 782065829 37219852 123117999 965337645 882678502 205371244 615320990 96223946 524001374 556595175 983112191 400224969 306677316 300515446 17557137 711057700 785073904 617068439 75713433 333790033 636108254 340583542 375072445 398455296 290672632 883960457 32410303 563875088 324467475 465255974 760809828 234810417 845954816 302013666 721850560 318345545 318640197 76538153 650478384 641919852 209846838 152817661 126420200 377262073 337566399 69320738 660210470 424167381 559075309 127717213 618574605 284847172 741601699 413511137 572385922 833073005 140001710 993854689 835013322 607679125 65046330 160160730 31182533 120172111 196381443 380360100 403998608 989313634 33323344 490838696 424770120 359575175 507323137 82779497 606616657 125626632 987774455 405170880 919896080 465836816 346798234 764192036 259515094 520847025 239976316 19365130 441925841 899034685 305587827 579272817 333598575 745384147 347416911 851506986 911511643 523046443 792428309 727228411 637840285 25915884 284505542 717675960 700703864 376999936 859239027 386818633 687755049 960939019 467554845 574767230 141195072 605977949 963598084 541306196 340391406 968094404 509494790 555019027 507440139 247238050 723988408 794178523 324042656 507250113 948539351 436890890 20658521 163668317 585294505 266350900 410085777 401930084 636029452 649066175 889134906 245301261 476902442 512436162 504857915 199408048 211991719 604503427 787586639 921222500 541705931 358813535 243379583 214975740 593836168 903273891 742356630 311987221 822076725 138530290 758939869 320054648 293391261 959467762 117424926 373241162 177099732 674790451 301958884 273867846 955107417 742713225 701434753 130792906 349288931 574227657 877160450 917496827 921673353 309238036 278044146 620662369 875123998 603835936 336785657 274918827 559467898 866242924 361562606 941168383 384777177 74041567 982012475 971954103 141078399 965853196 413178531 186808212 289449459 290647922 792156181 677461898 927713817 957430015 127004151 857301039 743194208 494789982 447323215 561911714 658516890 620151140 779470464 483995935 908085982 924476022 46069344 142218357 506231731 670461617 347886497 503524714 675206140 282119911 314818390 306566204 34226092 755742542 810754988 723889928 235332706 314935281 55899637 38225199 129810027 313858113 595114093 43580274 862187756 981678320 633388835 66346687 324135006 113857780 646505923 456056704 970329982 713416985 718138604 235240176 899116933 573061144 515632857 922650378 592995407 474995353 582852347 258673551 513025706 1965777 833688608 273555397 155126598 374933160 857497255 110277704 300933215 716770069 761275711 687027199 750635720 872785142 62119202 527889448 877904306 509586556 369895276 625799107 998038804 619127068 579334640 139435449 191306436 846261139 388302191 328801981 385516438 181782674 488805474 423780533 777510794 648612129 94269008 764418213 720170531 199369551 409714509 480915583 985821091 604676647 800608488 97234908 474395222 946333561 535713640 422196097 664240178 573806820 851148100 748158195 289163549 613598756 8343424 295631890 681658776 732018347 968456542 683541722 90745684 911358591 236528749 848855401 941852437 570020587 720509788 979510304 541968054 249295741 363431173 218962447 532080923 36696776 144760304 39034245 296349322 896376827 973021359 278186607 221891766 274411922 681302070 639517066 249317516 487253692 326089405 598451005 155642095 813344271 530950211 749512489 695958003 640692852 679441670 27365410 436748826 512016713 451574519 441970342 576317814 332517196 665718082 537087204 491024960 803643441 758755288 79533225 393478066 595733427 642826851 524556958 692330827 337314990 636736668 35421307 500120289 472686891 935252523 589331285 999481031 287732251 561443819 494862551 545813307 350320471 994905991 726356605 220436686 617060253 408446405 411781737 552352953 908854211 366989506 910050620 243585410 421513699 515392221 358639415 190225145 785277965 148258838 191047076 944774661 386247430 790989969 612122119 629567312 479766919 256222477 986694997 901113115 927880061 17722694 459694791 308446309 103542853 249326210 827511458 407922335 642964096 96494321 62341716 653933673 7407470 482978619 803914673 218822335 996165123 117792032 368319532 879137902 750199796 200125874 75502872 442917566 899538868 736863247 114781542 307419909 858075177 903203632 794244322 644662095 563794827 517904298 952425446 954025213 407496728 830644748 702529820 918427697 642125061 206939996 182098580 199422193 323894838 328959765 13817142 997600740 734073648 376617338 797464913 181736994 739811595 808632314 86840877 791947985 152442911 157056965 885002921 696661891 891974417 519885910 914347685 794084797 512088928 516385520 833834872 98049887 683603023 376902425 550421882 788928798 427325077 126897744 32803285 525904782 876957049 495751631 941118372 115807022 633417163 37507832 18965822 708068943 938784647 756475395 662543072 434262220 33169994 407212694 321778917 611031801 608071996 467714100 95858259 263590268 133309220 606747066 205625711 372778091 583196789 173266702 375203562 535285598 302909884 738504606 508869229 350181660 828567495 834420081 880933648 515003658 692890566 811051451 17036495 358171316 591929104 157651577 453403181 460519481 986001955 802530552 562455852 589389782 577091513 13518057 403121742 243790808 469527086 329586368 252320513 172463034 853836692 864821601 12035326 441425489 623154117 447298073 217878260 43790988 610140892 215739019 340099128 299498118 730986309 810772117 295088600 19083113 916016957 480054473 267725480 676086110 677169442 943121588 463670473 173298600 347228880 231399215 921732514 231207735 134481441 782918036 521564686 512295916 95304983 308848316 653555160 313210708 199526593 107990250 843771784 884520272 777009285 277132528 454921814 471143455 781501878 752001766 33263473 491494352 900078556 497233523 71102642 219626084 245146971 970770237 30581376 996365021 780872660 447907111 773238758 659670248 95513349 642718932 128083251 367309300 126846409 211259661 673518973 275723322 615594180 544084124 550364122 143051038 201533269 648389615 263776907 63996552 425624465 232750061 602941170 153795948 833345072 245029515 998820622 441245359 987812579 597340403 421296158 545743709 623752336 498453883 53669213 15294238 490871739 1471910 485087182 62636207 575492932 285594896 950734119 372725870 795551307 273263528 641420016 852359737 928434082 631058284 592449046 760509409 90844727 168995750 680743594 16517848 401023651 942993079 653485194 517965285 118336644 532078187 113419829 130983310 910775543 932303615 101249660 910316587 182404786 704537899 151424568 596144185 144991404 896749991 401425232 45484447 301322611 837691207 768677227 612796102 949987477 480029597 865042027 875069380 109012664 14731512 45922860 359548985 269377191 254079883 212420989 676677868 851085945 89140549 80164200 156609046 929963961 555494183 32307874 665160353 102195914 827220592 228480783 569151953 421211849 887464195 117499710 866974143 149948066 259010911 280551594 750856002 149297516 913179310 182927851 716300937 369005293 908301946 424602187 487382214 250466039 301723849 967161864 462277052 515966582 814448203 122828749 747037957 278780294 693777351 366087069 145907416 986184250 494418995 757306315 264670662 141125027 640750761 219071084 68955500 947556572 717223319 680556 58901832 699325591 981404569 274392779 345924391 857915879 441925752 400766586 66738251 287405522 789184572 250271810 937134739 525732544 640887260 429487039 167742724 739116013 12629107 692765916 123456153 510757604 906027212 412114774 88905890 301923554 894842569 797949593 771885740 718596833 853055433 963537768 802005941 308531021 563854848 939305550 364893565 106139083 401124873 450991080 764349549 983932924 492581503 609385675 521587616 588789426 77989794 416845710 448722116 937851689 682929917 555322394 129221129 709249478 544182978 843041728 339422977 18974074 35477930 502784378 600724007 873888522 866668561 919884000 999801065 806964154 452794359 998908526 562214252 866476977 615468562 445187341 195494963 897509280 812245564 623138730 277430815 756426575 417545512 636050835 355761122 207691710 745244427 431812786 77041993 939324318 14893849 547456315 376470699 151384744 897583809 249960326 499314363 957729884 614761584 340225565 130396716 103931038 43429282 143576894 35085108 596959756 628606133 714979019 891707340 540639726 697277768 638923823 707239396 74548470 313943493 684098039 191678626 156885904 799521996 496132387 454529717 476876544 362898981 331698624 48748523 561510449 442316096 897669509 448473615 669613534 447992199 310565949 316099553 78399215 788353357 285480104 353455351 214056751 305566203 832386451 281073964 127434089 971523775 570432669 17072912 184027231 246840825 749634112 198519495 236405918 111023177 244553488 932206044 231907471 102920185 267821588 671859872 48931816 177889943 534286552 456719412 741647420 305390911 140944683 971001588 982790549 97047836 110550494 831659214 364951276 243199188 642712595 192781262 142643614 136381805 484263073 790944670 122449679 198092473 772210278 725111918 72550318 949678649 922853675 977251229 819572214 176544349 217841159 400967809 481362263 283129216 462932823 949204417 253922195 813719256 275132208 280990107 424280121 482837961 549516331 486221458 60622672 468263436 719083698 70635306 647381739 855009784 537782489 887469690 161400295 191026822 185064550 659162680 412160968 682747616 232725981 548505784 77737911 952907117 125245233 164354981 575306422 454498066 92126719 360209275 450649488 618192897 200473843 179278209 149023589 464338150 373245782 827723131 220579454 905682049 771609241 940979735 768755113 430591459 688179124 257807972 333548320 76200069 719372039 441835776 514259462 471246372 830824877 451686854 994841265 135432041 389589169 819027609 915145068 519854935 708062738 645573041 733778362 799528793 162771690 256469024 797782033 762483485 833944563 953532225 287292958 78015648 645443311 243325555 526056149 702222871 458106681 63371413 613685838 416327061 423844076 689453350 760115572 16208953 569844445 414549963 196518847 120096274 197783506 466649055 392836830 27138828 981752711 881819375 997704103 756703648 481328792 254825644 107670661 364101352 694698174 893467146 151013016 198963814 659940916 308389030 454459091 235379565 708197872 499980276 409473976 538806933 701473953 825174528 987010933 858981865 517867464 865924334 551847619 599989075 360174587 603197110 495830833 20793429 446007839 54582253 89483696 533769190 435162592 793177133 734413602 103761886 281694559 336622288 533249121 762847031 137012012 393321177 622886243 904443604 525656840 675630046 977337839 855213696 742836186 600673005 31771324 84544244 344538502 868870206 500889804 649919728 626382487 365291773 65474869 641950536 252220760 950865722 330764865 422883234 623280804 428849949 369909592 735215940 219654781 510955609 625832218 157563864 545225400 630371427 305461039 168185099 356125518 271304527 944012649 906910791 207083412 235262642 129935430 88327420 264251956 342438916 56139741 100550571 811080294 548255345 283380771 802213788 566222657 196715758 42194265 74566403 915260275 30755885 993568770 694074975 731827817 554263280 818616141 367621360 649829450 550994465 200309381 610593820 185913295 527573074 498483384 513014346 227586182 764027560 521169693 354967971 869174778 635251785 549493829 13658602 9415931 406623170 78555444 487541314 223677316 492616565 135634310 989539214 172869720 331210852 928319741 765839743 123846719 645271361 521251658 599813129 259303923 912498352 831310676 739304817 341557285 777643639 187911931 21192024 12955558 539784538 630767318 371546663 138264748 347775642 460914850 245573147 30513658 36475773 71968004 160807153 70550009 659758728 175995145 323424967 580485173 924595215 331706897 630619779 49910803 177365526 472757541 495502727 441942471 450959551 326891488 586215595 930527027 639721060 264509195 362024194 316958750 204253860 71755993 408369914 423020037 815164534 122605014 995298495 563620602 671895358 757971646 604019738 855078365 765120900 437357001 886919466 390751301 235498735 176098144 418151066 517910241 177571768 985149675 107822628 130153401 519852320 349394221 325041903 798452505 528929318 831627909 492952429 744248050 306987947 193932098 703455035 181863948 245073854 986105946 525381187 597283018 134435215 986502067 369667428 937456869 835637053 902282258 929470376 365935553 511281831 994029223 721127062 31391826 756429167 521142415 88598354 930948834 961420248 525720927 50841945 379111704 819212084 469229041 544405623 425167810 963660948 728050980 959727136 303208962 326808898 81780791 229843316 82463772 845231406 745700806 502314449 959690430 70244971 807384416 196345382 246892221 103667721 470087862 966979651 478437941 339443613 833570134 725765141 503799730 979512815 252322200 861615482 400039475 613399324 533757200 654363210 728340374 314503926 169659095 150259044 630085657 780626053 747105564 364239079 684940988 112888345 203993506 944222711 382169287 830894200 91388943 402330350 625804492 393671430 503747585 152939430 538499834 373149835 211739575 23540589 483114322 153414008 84280555 670541154 556862035 735429914 944367304 304753236 504873686 315179575 114217551 590942465 927009858 657747019 955705498 717618060 41729326 289088337 751269037 191240643 245506795 383573439 402384719 50134009 896699773 916292470 631157921 705313442 389553201 274418134 259771599 419771919 599645229 422429020 428703615 146263358 638095152 742015147 265361128 431013083 83184180 521116916 781975894 209688664 408159947 827944066 931300993 352517606 50353071 912128277 502287634 299241914 756734915 479453708 286817950 986127004 599514051 454867363 23757609 783965991 377899488 463299739 298916744 599724002 622377716 654502403 204306542 593718175 753759503 486149667 387690032 889973867 129154153 648574790 925116438 452898450 85906269 119842394 535352297 974114061 620112101 166585479 432058560 303266714 742805216 423460279 163310444 765995497 953385065 669179781 611060524 375832817 145065531 286408482 198366471 392380450 330204746 415949419 418865424 890472510 613636633 534346822 643108647 537717233 818070102 678656862 389873139 243326486 476432535 13286652 205314565 864577899 880569659 34565917 238765267 539649677 79711952 685726320 887307105 804523911 370684989 403651017 313407405 520423089 313275938 419811365 188803840 700098455 563938901 428158678 311059551 234660477 198060053 959460244 685356852 636275323 748265509 414403281 858486590 588149269 995735432 165812284 695686766 752382109 7153777 49692838 130042934 226061329 669269505 162903415 606485613 886399787 887481085 933198944 146095494 387437748 579399900 308729844 572970192 293617984 180211177 511073828 490747275 727580146 339358351 112508700 892511708 313270481 530972238 845181623 158857598 99820390 752127544 432144479 902040702 986519783 924136089 879379946 895496252 853569830 33362157 614217022 262356260 601497335 798393581 593675788 458016781 974461556 828035260 952974353 95676787 802284384 14470321 343471428 59545425 726094858 700543312 965548018 605362266 641624947 765245612 4107216 238164745 188417606 44308306 685977468 652272471 714564240 625211708 940228289 39719617 816287749 574227802 815168831 942820500 709997925 271888861 41796211 527965075 697698220 81162030 113448219 305869043 887806926 520274167 770645021 992384461 847809915 610871163 706760953 291165849 515647468 95005536 239838575 369220445 184367187 342228516 946425943 861900226 268640753 744738241 19709551 31993743 431779035 956209196 8780978 763906925 104252580 694895678 703817065 709480854 5252469 50828489 846094959 431706818 744854756 687144259 125338540 224527387 421759683 289712877 804335786 676520003 530012521 503203259 855072679 54650520 155200076 608206639 475250693 861593595 519737900 28652233 570094547 162751129 151105741 608563420 58565829 572605777 256989587 540656723 94661705 493236943 459338973 371173959 476389159 159407425 747701707 186177909 134714711 376669303 634814081 636520117 540859806 329208077 778553624 555093185 124008444 85850547 393111384 28259328 773442360 213909332 46480287 532341523 985913219 371158392 922638533 345744309 262036007 818736388 897493206 278633129 429911235 818716321 819958721 883979772 361242217 289706487 403652279 216446768 944917660 991139681 712933145 722077384 173107479 727833359 785128298 919445093 363780948 95716656 276252502 713569820 674423110 579038674 478381595 931755129 577795654 605988628 777305247 213440746 648289666 999421008 60332229 781542181 806591615 367914173 607723341 176419669 178984684 649565061 368480066 364175007 848991433 747083553 17453811 924358844 838648974 323012544 140521355 205216581 82674131 228232964 369352903 553645557 650101222 730461188 478579097 263952968 382279008 53514350 674439107 732519937 431012149 912846357 571620589 918209169 361537279 177023527 625762551 611101428 301335100 141975852 923050591 251423247 314137057 427818899 548241917 425902105 279694801 930393575 413083443 916860862 771951249 781486338 235428488 628171808 488535969 999270043 510064383 352330193 987786538 942386046 299189850 655646595 54890588 283293425 2376864 333599847 806615680 817249896 715110807 52259678 443095326 594548717 782051477 140086855 986613574 740423176 45138467 551748294 293927063 931778934 12073759 371270812 208975001 598961488 800522486 396535329 257439377 584880788 379890965 449979514 623437468 678234293 446268 833292660 594276644 8917055 869736478 124130940 304768835 138736498 245286529 868850178 699160929 888020129 443542240 101304930 121634139 906745759 35474562 888813094 894600938 335921497 896190805 94366324 426336208 818957164 73887598 656980966 837696711 266506259 738358300 95563053 1957727 23583140 404013642 707066082 75355008 124460967 227562765 464607973 842318346 836926900 282232769 376462747 545254323 583220142 816045067 654384776 413717497 639017008 95789964 642393570 182634739 951741713 723071308 292361508 9424235 670182406 638105769 914184960 653495485 897002253 424574831 702460532 747061388 203376121 80400599 643711007 490632869 416113315 860603722 383683350 370507716 930454567 142445199 335381288 988125836 4056377 761870200 371364638 297378255 857170306 644206409 309370572 169866657 366150255 263037021 794906651 86136695 676399475 40120333 127752105 945061077 685322693 202341830 451928144 908597789 384412085 962763246 934709779 823304512 969159283 707538824 864448319 339939249 279054854 741768826 932063796 496998108 562916528 551197427 299856112 208649302 789109205 863893652 667187272 287247953 554767006 110729666 724577594 776546295 4013023 183194905 357594734 283748255 332798513 909042608 230312848 66651001 262048976 79698827 132029551 404474992 892068540 391168032 762548695 237774586 440517290 991289938 858390571 616338198 852344874 295113605 605816449 963909720 383356207 648553884 576550597 981184837 942304471 881124993 627076297 978600798 471336679 998390404 67347810 36662089 795718721 784942697 504602142 926597175 59513876 625209377 616219976 409275975 500907464 168300552 866445287 215327125 310051972 615800015 872679830 434027054 774224567 632209187 372405728 612154618 146128937 683512232 123782923 636071780 750333093 614087464 110284205 453913922 275126299 206160446 282352145 49386262 832910854 307384689 808570211 601948639 224556714 464314728 2371372 127805661 422196536 652158009 376069983 169695817 255064698 231615874 730257852 56641846 574275470 702270474 630402104 47685149 523113096 703182477 489709604 926008325 903596738 399799438 24078624 598954008 681200829 143804313 335782080 558338474 755613071 447004369 620327562 917348859 710868000 914839686 453318352 907841982 297265733 503826560 813085658 107366333 353387011 279447899 360420779 306836610 250112558 976509007 935333056 950142554 550290309 254638443 357592447 625272275 410030099 502722261 645543442 575564140 59420010 6485950 465329980 873759854 479581363 140592851 912303746 316314302 45541716 265329271 610802589 967940585 483773176 252170246 554980204 780071997 136143669 95246529 473940503 857027647 637126752 288993000 191798372 206226817 356566076 571518973 870346340 445235131 971583119 659126403 615948311 566758460 280265766 997823012 876719579 870579853 589267938 984532564 23942405 332294306 587073133 514063495 729342281 192590149 485231800 987751402 297475317 888923520 557430489 334596990 122564760 838938458 140174121 349354916 6394472 784752301 881784714 50145097 173025837 603869540 309876571 206969731 790116437 896898415 431489170 194358615 731536373 869930675 830803699 296486851 682588859 391561828 668883046 467188354 522327811 160846389 398344253 564094390 782718772 369386911 558529760 20481326 228039240 600232923 535995555 177028721 764999317 463830462 195780616 958321530 92045504 706979142 35191694 824167265 333316951 171855043 418065598 128815443 673049631 953187220 100215638 813803557 811742486 877132256 651855087 33132239 137709981 536829308 939880883 565591427 664790478 678434112 298211436 258638774 343695085 173680430 772086106 930951521 505959035 990881460 79455063 980762407 978232000 220932304 649177447 531187013 250108984 758760989 119956357 231762919 350352199 715190347 359701829 821244071 441800670 340021678 130864688 474747267 639628064 626839107 472089507 91444839 151188227 416147642 887537946 720646319 617093963 610636362 467460754 911931207 87871220 3466248 355666103 254853535 840699721 372870195 950929065 319644446 10650271 759156805 268210137 737296038 861466873 759207483 761511978 364057039 993572344 226262827 401150673 435785352 946971301 76162221 374810147 5437063 714672706 606149225 518508092 581164933 439752066 932081792 643403418 154344581 232194117 612402327 218524583 936726923 311592109 260030938 494048805 652202962 78738948 329293243 946728290 231826274 32265955 834679208 57950918 872993779 898437503 234242382 259328889 890213369 27377480 852525128 667269797 952099099 666810405 228294525 21733237 583463941 889005834 5947470 28153453 206162130 465033956 226448301 742462424 802349103 667198464 674211565 971562033 895078307 144968369 281866231 498929535 588148744 257508118 199639480 524086231 322726846 233957571 465492593 469625800 222570675 552545287 835726628 396295212 686791046 283937400 222453025 606828064 674932688 527909833 427432467 891667412 217603983 673712283 587114342 73266447 311842630 198927294 870710274 18401608 928570339 467091200 346835375 424957837 207143142 457499774 453299614 850719008 335699150 521730423 534737144 95122359 219863084 171397470 777408992 71789663 980342418 307738127 539186548 288138286 287254434 971521685 342677730 782116368 293936922 549844486 995594675 717429446 22888498 443258187 13275732 152785535 52371989 536570899 860201313 279469584 744545490 267099779 846790166 474012734 933913980 693545961 223811275 138399686 405863378 645519476 677610236 269644587 885873898 957351845 675918101 992746927 490696888 797607638 771510493 742941611 846318476 905530822 618478997 512530 793571315 43882358 990116674 728337498 411913729 327567376 985367247 509139341 503409374 537722757 719424193 61656183 698814567 714477140 250018669 36341133 991588275 491741461 478519051 387917911 489541969 68187423 391066521 813959025 690069200 118584426 551764680 320234618 245633365 420820204 152531371 281656137 23241917 241391391 545229922 283930859 679829460 793122720 389254881 374674256 379722859 158279049 550312221 501199979 345907601 41594763 3469247 530101619 495510980 487081113 867927053 706947839 142779891 940361507 581310667 354250385 439752303 584416068 430098135 445433478 500815802 496269258 446621127 512355689 848946524 34069652 660164975 776165807 236683406 960530516 556106071 448462127 126602 358132568 78349272 586550193 870385078 343298940 707792593 287408169 618957073 281679916 854548341 915567739 895211116 692687524 380638840 601170864 778035425 891670330 460283513 525924697 498755654 99892976 4611375 652403400 105962806 593838830 556413500 974091090 142324181 192640965 745597766 298916098 983624715 402054728 152506549 821010848 86576915 94456383 230917959 4737469 631591498 201103152 189480209 760054814 335279589 904663097 787161117 694377074 322801078 202494694 151431030 838294712 111375667 758497453 234221666 84973625 984844430 846948742 874360528 809005552 11399494 148483710 728526878 933491290 271740472 218005644 949845109 374785127 170384704 451830794 507876943 311581208 632180628 757061800 764866085 172157445 470047873 80728921 93027360 672312511 376309045 935776665 881375878 892076056 594315558 581334328 162199988 446920711 692643537 266408938 612504231 87516023 554127058 103784111 950590591 477807135 221442146 398911546 26527090 464176402 579200946 154983444 421167065 136288374 922264967 526549907 924265612 384408993 399831788 96922147 64500888 588946824 664053467 898504396 535049533 450198196 255076006 341529877 548781911 539403648 754071764 447555267 565822204 20929734 99051919 945412328 299448807 389144352 592405029 164519268 626645203 583829084 847281118 168065259 174611512 876581852 495113770 188119255 268141606 254791507 950485217 175016927 91336018 231858796 872270865 263532603 608911080 379794408 828465966 341529760 54728364 569070429 426354522 720657369 753206623 136939311 534693484 345952842 315920947 274570750 232569000 652525070 992685117 632425620 726818576 580585867 744119275 702244751 575813321 589130656 747854987 248982854 828030232 412187982 257611340 243628736 200175953 522666822 767176116 383466010 75247832 21161159 344551980 500915236 72084238 977052839 841053217 682419795 689231995 199491611 358720639 472647218 889335409 403512935 250149262 532519519 863998705 571889674 329419778 284806490 307876023 241928546 617284792 189033513 994306514 884675813 157029410 80695294 497698377 190514347 191809022 467178447 949924505 229373874 739279835 839802290 909348653 415873981 827539613 531302495 486591724 490243345 177141029 254572236 280901210 794279975 13135233 888968057 726467467 345612182 826827753 171592492 616953529 247074018 314288097 559822079 278489447 354220395 74673527 840681936 574829341 555127652 948311118 926319616 517820330 736751499 30867549 385204766 699084396 785464113 706037364 142888782 297132835 528854399 296682803 545640659 623762508 385346341 388822295 371427101 570085866 106734067 427063297 738069730 941809727 727177173 751691785 737358211 538787810 633924184 409901026 900769711 689973441 609453333 587895252 752560414 850820126 471992306 779966809 967212589 415835004 677185952 93302045 263884381 761672583 602636579 410901363 550122845 31690694 738373198 599948252 504951624 588299938 659363571 466561489 580575983 465449248 167051112 267039665 588844958 70598447 157644519 398580798 167930774 604442936 293900944 953899380 207059205 610587180 496940657 431906409 566835105 790029262 566294180 588115232 564383435 413724559 962906330 378018243 11601670 114689384 764403721 628061210 101263481 240319811 947795798 278249245 547333520 165145075 556367283 417295949 484133973 213491604 124582270 229391517 943655665 960973844 476533525 209559385 768735540 591267957 409657638 404540375 322296642 584318079 758571235 169866906 371797102 602835785 759266218 363932335 790079634 267366331 280368245 827184235 528228556 407921949 176384937 306454599 70880016 958826718 591861494 832210619 659425504 927380666 410855694 71131494 154536270 182639643 161512751 241522063 302275951 537266723 389499684 46544484 200628171 639509653 353810920 385930689 170516093 779966711 306207566 547716449 522178886 399276615 668670900 221711703 86084082 35076785 396324806 907771750 51374850 182264996 100029691 19904369 684449116 639385521 141984162 553267926 888171614 407827052 712996063 406761355 71209334 7152797 350075022 154797484 43744016 219049365 690230906 345295703 527026519 86228609 14862300 624407865 21482279 844308522 980153351 251740757 284632639 678697740 158868511 781634870 364507854 387140585 156002889 766450111 594141312 435234979 530957197 696407278 865202117 571312089 558041555 515040432 338108281 741086200 421071718 86495739 258198254 59552520 205035814 188891521 840123438 145852719 137705443 668008721 39853048 627664149 60771136 929585842 243939486 805512850 993183574 801453311 498702376 409914350 481377197 204753414 596985787 778604170 522932008 693332394 7568324 551182027 16162775 433784269 359273247 276560759 699906158 391367614 872770386 241704224 418431764 627278735 938213422 52039556 724590260 632482755 416628644 640689935 937101898 45690216 29152636 884117279 437771423 954732401 652408669 102472077 59383693 203079168 817139720 68203725 957966140 937337749 711541501 430996721 93762216 745932568 356783741 440616650 625899174 804230045 969219375 608122468 670706214 505168894 140872739 830579914 655376498 356211767 882791311 248551711 983387834 66357157 441191172 290581909 984162696 336372822 975327672 575935522 990448084 385898407 108885339 540861099 178751551 670642433 9098759 376926478 167079898 332763048 320491864 839648959 27263222 794122113 525495992 262803203 309574644 907617000 559330454 372199290 498080512 430849034 395890522 800736752 419500201 510525232 175656545 15728347 225888462 752816123 995001457 761051032 451328563 220632235 968966271 632989256 693156942 10629282 286110288 540492972 235928936 939179176 764043539 280368187 258632554 296381658 243709450 675725850 674476736 991446744 499092388 524998803 466825503 622697228 821478843 721143421 592949400 548197298 911568939 341889682 912529144 391189737 451975104 179998539 84239968 315913042 247682714 530890647 824945669 27694594 387922313 906007869 354179987 7236193 50777473 814846637 961835985 597360750 910174055 188248288 201712690 18454136 499897097 830770144 77703453 254230673 409326827 847854874 266197861 245390428 335322878 219995478 448160441 303885826 933548150 790690736 60028207 159128217 916271221 222994868 758224815 718113154 289643099 989290400 234936331 700839232 604539755 894022920 562874818 653109170 815882669 678384196 940502769 308240515 651941432 144440539 556388108 889975593 101530676 509300558 657541690 7888649 73536313 751190151 751651715 171571199 753875392 308999629 955280607 895727553 597761331 107036824 448561389 453283772 786558043 289576454 263689258 447252580 255512450 302753701 572161177 695178397 579036811 246528117 75412843 350226880 743073361 50852631 690449912 908507593 789558762 136449022 300161913 571625608 970095553 616893525 939805725 746414481 763453638 990005374 922656523 340973205 579359935 193499445 641766400 47886584 187793879 985132477 445990990 526592796 460289158 438395904 132629320 610434391 630588115 276366398 625410053 730466244 228454965 137766279 447811016 748095052 3208454 94194010 69474146 446088271 68788484 989944429 56130561 552677526 563261966 617537416 6671471 290300231 667264836 398129515 633520739 106317617 737764735 911348050 983594052 278604215 460001264 28992687 103052745 697853535 255113801 401004650 402000089 663199850 148343606 187000151 74594529 710314496 484767764 275090492 35074766 682410113 338561968 416936202 863573982 794823928 634414270 361906551 380174465 362786540 195579448 21018087 973305311 210933299 226299550 141891336 289255150 244686282 747439654 177278436 838704271 676920393 134788469 308935578 149840577 178022278 109405551 664611640 858309727 731150640 692265346 333631574 944701556 956816907 175774731 604537350 290138835 93551367 631088311 47495623 783436982 621377076 81280209 778927874 562345575 294459034 396871403 463667522 342858847 873661077 351699226 501466609 9455445 441317527 513359063 514521967 528895426 341137033 182028305 755297540 301036172 358190202 69267545 617937150 116839779 598889023 526796228 564815535 492613141 142118125 982312596 589259364 333551181 936776404 91999664 201146831 976404324 722907875 786167099 995084268 535093786 916373428 951278015 593796227 585665556 470548267 626270111 476795532 976910163 620460797 497598526 434190611 610350925 747923047 335604222 918722918 141891891 635205829 462343538 633207477 105052183 533666887 545322147 772055375 283590328 72485714 801337034 160749404 911319719 107095439 285525279 436689004 230914576 562787019 331629091 239581781 335265272 570702279 521082460 586959870 755860185 420598420 318711954 975343846 699286135 664011251 767711799 61732938 900311023 931562095 292562576 294794718 499122430 827918323 631610676 799580005 354623495 129089958 346818858 137870654 756107354 668564205 783846769 539303201 767517215 892360365 186054689 581961329 858690052 738549450 208205491 52126785 450060642 691878990 875337287 168185 910293085 155633828 790499204 874245113 269824247 853449323 908547078 901676851 423763895 934905197 341964493 540046589 251359396 212691102 375258091 302550276 142842725 271083486 365646568 298639029 100691969 685670719 495742082 900647720 214280582 207189866 433795730 954987053 233788471 798410976 252474056 520257582 109846060 215482246 925420073 519388234 121373734 734709413 70168767 243702165 440576013 229184369 398254896 842550995 259395095 507741657 658419603 63543360 301675303 938025727 587823844 233083230 482608760 397151575 44526103 210789376 10998029 201984063 888589891 543579114 82190182 474917013 206879853 791808927 633764030 390847670 24676612 793379831 407910611 709079391 755435982 176300084 596475822 379360278 28210561 516914374 786607011 977608320 486931992 59863655 775378337 506211422 11691720 589325693 629063042 751302835 162670285 204651582 308221683 274044392 466822294 866376491 643458089 68339683 72248939 861497402 32681390 712198006 658398744 741816625 999841576 436720244 756903322 974304257 201366449 827076717 547609269 132325218 397856425 96057594 989402653 484162664 119266219 555987699 384311669 792447212 360690610 979653853 326636247 226163072 841894137 687605904 868797277 300765620 26381963 43714690 57720616 769249057 520394936 468043109 843923234 929316191 437775391 932452883 93618215 448477591 255663299 922374215 142834735 166481889 131584319 408650887 71594567 621956877 746768198 893094626 618562395 179531550 686357435 863460158 92103334 33213415 408214014 391823001 886097807 769811353 160784317 552668701 725165549 24741047 339522968 344115224 124344972 181379070 877594234 418762994 407251081 676207624 186199081 822311787 854941263 758797101 808094926 796621293 721058632 402348644 30794534 336749341 579029595 82124553 530460977 954918125 924730056 90920508 495602195 136702101 894643473 183678471 781530097 259920637 152096520 761068487 779450851 504171455 947328182 314616713 196532506 576960309 447295344 945028104 414794882 700661758 990163664 240168409 481691917 358640996 60422528 460002720 470832850 904543832 132987088 681841370 312497756 94207291 132983523 643177581 722440998 242192189 956945640 564758064 335627340 683480516 863249006 609378495 449762648 337221317 355089954 339011473 213562217 890465266 52069261 305068014 339254285 316817021 96792173 177977675 245073328 893777780 486489320 20025951 47912929 424765815 896294158 847592182 999742399 365992930 969085401 849033086 649501743 389360091 3348959 755967381 684533197 315906125 4204894 532442961 623034488 662512552 933284198 450324184 106188896 646253679 807721420 321345489 154889231 800870449 586698126 739133161 373596540 239138177 449651147 750395761 767204789 727629207 350114865 958603381 280188861 619498050 965653642 597453359 646103306 860463321 146759295 413571975 477244287 334802420 814273929 124598485 624850757 379938884 114511711 286617506 971753511 943201802 18297068 171612492 714412597 58627990 513557307 140488629 783858187 442308858 213056611 375280036 320844785 229781546 177775319 411569130 276745480 772897740 845519275 491628754 271249800 973660263 250020489 775657239 399989865 736636588 524717069 400482679 38944319 993265278 295774139 308925876 1861536 393456677 208125132 96318753 982463523 434232028 850394628 272248191 537685807 224968264 556550528 751857249 530796631 774027276 656117116 498669510 93543386 715371440 290750740 171650976 987844447 184162669 207121366 994585604 373678196 858960524 56357772 158917386 802397034 361390906 823834577 128725337 764691527 624219629 95061888 18457792 802350237 177142537 232035006 558467052 441101395 827765073 714786015 26350927 578824261 894868996 779645446 124186626 641710462 915977132 901081949 28374426 868486403 487624551 117937589 453229271 319778790 817609355 426841683 862318440 19873971 624993334 78085833 436245490 799913125 498216810 43790350 853697200 334997339 921100657 230282098 203218177 580488984 34911103 657639161 690928620 667977101 758325903 286674533 331367183 400372377 676505004 650155040 508416689 29804591 916810874 234235018 313300390 268124215 683464831 954629541 235302297 337342028 403934911 830991661 408089988 104083663 608083842 742277521 557524032 696868078 396603944 683700483 410952575 296173313 657750712 13505098 357573532 948944340 330976089 846961284 802823170 696337652 997387569 464732176 19074461 754477545 536507831 593906811 577571066 169532832 197625479 427652115 805873554 742323049 513967122 607396730 406122191 236319391 26508029 831632427 547317672 949071480 832697295 37324221 164222576 177475818 554627841 603311024 546367338 36421021 257359654 983671384 466563219 117182117 203789032 736875015 354378195 176593854 132434443 16151653 85747959 526251935 746171020 496565491 513770938 792815700 889957418 478038629 608254762 508498051 955171357 42985346 789687173 234658983 798658316 967134344 231218346 137601623 413355162 938378895 373588188 975363466 153608042 80654636 443273338 382413452 661569126 126614508 611302601 689268897 525502092 229747738 290804704 205212554 523247787 873553887 400688037 930289172 698760190 794626328 779093516 19731886 999729796 612355956 708833153 236709045 896557216 210877836 230038029 182684004 230539458 393444528 166568340 884871550 360608536 22036810 178925820 275503283 521725832 998570115 696688644 244217811 140589340 855596432 186108824 824909071 359977235 4531334 478310642 297385671 594612254 743898039 444278912 406263763 841146039 495927415 495713083 605495914 829556196 425406983 314361327 81037946 309414843 975246104 142652544 53149911 745721965 602355622 720422619 300756028 900156961 750073716 714193497 539357059 521942722 35306726 506713508 864311286 622550616 650221666 956999264 709331910 239211150 331718518 555524945 387300391 612311201 846745524 32788269 364710917 722356584 457112193 869410768 727706471 812263613 208888912 939439258 647458247 513289881 246878878 835216741 901903802 461530042 179191434 450703297 308613663 831514940 62597372 156531649 870502401 507757826 722256667 584151852 913642999 855155298 356920569 647458137 212294490 102111743 401013238 909248816 954496802 17198320 101249010 158660013 985177657 675201946 257382174 943834052 519937261 56253509 361677692 853150902 626570565 402067123 193655485 975334068 420348623 565329723 644521687 71197810 131573501 315531773 970682255 527060629 7337477 359897560 230971190 226528003 751518750 836720265 621776823 574273879 81608702 423982165 439930995 823064781 611613780 494988201 792771589 928552090 350339325 179024245 7404039 523664941 421408983 108233499 897973540 275036010 822789077 691893348 224964081 126526575 123928068 286786387 29625493 925660744 621104623 245808722 677100779 475197066 821432115 164043360 545438912 125293021 762612911 21259642 142270172 728513764 732148852 900646563 389052966 456194121 396123608 334071862 491743528 950479921 810223764 717788709 122539820 347355303 282316671 736743731 352115836 411799988 429520237 12841485 109253084 981931553 811606198 640362583 77284592 638001516 27666543 987638307 938465895 309386094 551406234 549875800 465251309 874718466 873474509 899267832 753183065 784362572 899611018 21311332 810966677 625287330 608513057 66391713 735848237 978038324 340914634 669944434 557134117 507616798 622968796 408088635 967020666 906063607 410384940 121160860 101451828 198289600 713369954 747767290 752247985 57659967 342297272 559113106 18910602 769950049 735071266 862695365 172909068 286717947 659121930 99599262 813985556 582137457 695960817 185294797 399502497 741881018 972239633 470781476 106441473 47958985 272019456 108291554 706346463 603592250 764835421 732598974 702550661 302511063 918509341 524382664 674408184 16045222 290386590 656072434 514284369 586425620 665487350 47702257 177791249 470981246 406550859 67297690 7282567 287519952 546372206 590382204 234473539 320932674 894833936 11211159 753007200 532364751 391925052 502233466 94994481 565933718 13390876 993314601 983914246 689594504 947370881 192857382 947364193 45055787 501392285 736210656 537767955 230911558 420847057 339718032 401840644 232928740 973272783 100541818 269062380 419174719 358513265 131154790 484487575 200816702 871826040 5981121 808325095 399777117 768458611 340020742 246616472 166740222 85321731 474636855 304069086 19758424 296013724 755586214 177494481 265516664 300605204 798443379 811046558 391637506 493547105 951927680 907918883 796841371 310175829 525841577 441221902 225546984 751137150 849363628 323326927 38860497 825821725 607095829 639338737 708751848 509008264 441549067 679868132 857393294 632675471 669282252 999590657 630567979 891928944 560799726 105896927 924127138 205230336 423182598 958130792 632544211 54401321 56541112 829854529 515971940 793539062 51462848 487859726 506231944 376753520 539642935 281705797 842610027 364221843 640432350 719504859 272256509 672367688 999846858 177300815 798462821 212996316 992694410 642187597 969307189 999746209 339293398 638363847 387107991 457967976 9602775 313932499 418471797 830822713 961818679 655794504 360343280 410750478 185081568 651040769 16910287 17604099 137745027 762781306 255077181 943261522 249765616 518385221 528097350 621568718 455234987 199973546 305442311 673297765 39915110 921986934 466150006 712660338 670389959 483526323 599917525 437481023 311607000 415411554 896678552 414356824 994269122 586162953 760295427 245595134 226264790 523824499 759021991 130649810 336331070 415601812 429243677 597667218 750553063 853534694 376024498 896349501 173618311 649176309 863553447 367379941 720512663 561463561 865968948 432768429 540874135 813504149 71332259 379479157 563775722 832757081 426624788 51248383 841465717 159018643 516583542 975611615 811960931 595617658 485208697 411771589 929946588 312266877 325943728 903067763 914047529 927959141 478908985 632911633 691001198 276722571 272047236 550319570 189746130 937860129 240952199 604798957 849584440 393499765 659363083 882434631 433764091 856324764 22586182 891843215 545979864 560424080 879489977 895960013 657823937 22330600 625747274 473706636 201330743 589063567 660533658 105792488 774082845 438131292 755667120 580395821 953114861 818333786 860819763 119261708 792765806 208919431 225399066 501620576 51306883 15310464 357165646 882366316 101186866 798052010 913176847 132134531 448880537 478108211 128692517 269394247 611485721 606780101 315598167 357347130 963531338 331071659 880564151 325991361 75153878 496620170 8113380 375300290 218761286 22508648 700816268 115084023 386729607 40917497 76366297 370135703 119773087 229226934 862043517 186021800 622310375 156845030 537720659 333933484 501193369 188656305 978893283 346977194 292520621 128753837 435056363 717625250 587227566 700628632 226915267 666466589 966388852 96195265 747114689 207189336 212971491 362095460 581066012 782538369 644370458 748951768 325533644 977940881 708495797 169201238 182752509 924719068 503135253 886991147 874659944 438106150 861645111 435270742 8944383 711010618 31636169 93420799 517875974 624631851 171950739 333295477 592098707 358897980 469097828 344219681 15400023 852792213 608429890 758358732 273536049 513157896 670192805 88864886 657551971 730335257 177163197 377909503 258590534 10648091 396747201 142759153 708071680 333887815 753695851 514487926 959423299 70199505 473147203 912273101 46587939 707381074 983802812 204229779 475824856 853234246 27804086 220810355 511855033 728179308 730220391 164109772 295335583 434583761 874742208 986689905 144224656 898992919 149628031 569852002 758653690 201520878 928233918 372562890 81021679 101154164 133601039 236711787 242127630 762692432 399528574 301740418 45350565 219124747 212200799 451261042 137712311 496157084 167941633 216939299 283873675 728957535 731765549 638870066 708032181 873223646 639201952 629690902 497285632 87750524 905936657 868381468 94775809 328181380 628982329 195775355 656244786 850670747 368482609 406208739 196633698 880218505 674671939 603907301 105324808 50470567 907064698 995365236 283541105 458554296 949328569 809534955 267103787 418442048 955215300 204667144 594221232 53074387 286779432 227687041 221734712 40259697 576948813 943730739 79893290 249854549 11825916 794057122 189663921 555798630 293713219 715952531 733274238 428152042 282855200 103840790 571604472 552033866 622448502 299227965 495495464 496565478 311850372 206969045 971282789 56608730 64004978 785410154 760843719 299315147 629665212 858006797 511645746 911786836 500248369 826909472 773630308 801802965 31997165 606898349 462069070 275801688 650250664 104965966 620409121 413590801 576253411 801611764 196927663 306102394 285599796 430633902 815379363 169442628 586944066 292940215 794140046 368369143 566039288 688749179 325185 596064642 689312290 825503099 462251693 150790503 49640471 172291457 223605992 380270047 19637802 178248577 915982656 79582671 525158712 771673973 670724249 415282069 544627530 197644553 599063186 179919414 129881121 297952419 39409122 445477742 679177493 667339918 604857840 659209220 106771582 171489365 228403699 491612687 817381518 999143966 485962112 628803578 324704580 865476764 834886908 403090841 919731501 351723145 889437771 267343679 301669984 692944329 852303091 941083368 987788875 948277788 462943837 481743054 591517704 670979741 785380146 760794939 927377538 459190505 929201445 248500580 765431472 72941477 420781565 189257669 204760845 894759350 659215806 53261781 428221125 86854353 13577380 278958452 856710228 217461049 558808617 483038018 964370609 85241496 914672295 317019222 243688213 986371027 71016521 128171589 698073907 967537164 126151687 611257370 289612103 913367147 202266585 371364237 437474607 302902267 291122903 964128700 395155218 230523706 669935536 392973747 450678322 926539763 255799384 472432241 254024224 51027985 599722232 272830407 611660340 952136451 697901214 532013525 198488905 905647166 955898817 375189134 533687694 906914534 350080020 946827944 682973216 881072073 893952697 642212251 735932063 484968322 207189929 356118851 797534324 697833865 783738779 555646248 647331074 913887379 416499209 564541590 418894787 790672571 780837866 422065337 196053349 198442180 374097866 680908984 950897206 282124429 402309623 910740579 567823947 1142800 531753553 734579805 80559670 927474874 316590647 202401503 441224219 459641475 754433388 455731345 471534287 731037406 402064975 230365170 912617685 520180890 553533828 408171018 695893101 967240740 504884840 260117459 498452017 497184602 174284303 544941546 890874517 892665834 7806748 642863859 529164707 591339179 697931974 304984161 29643785 460727269 679796337 331105074 586119338 561075566 587407856 121495292 612505522 749417776 461099098 847256382 779966077 425975360 916946966 756141684 876775583 617698089 353414224 175419497 87171859 651547189 404894952 176084673 751432143 369474348 660122216 633977071 163790044 778969629 655495469 727369881 938505807 934146915 284992238 636934222 100369366 273837275 190961793 651451031 858188738 188318393 508966674 916319093 483374818 785662020 510793802 694408442 322571958 529720841 45893175 92884702 761582502 821331965 3066422 599121653 812330199 375475599 358869370 439404215 286954825 732602601 842583405 955138869 232543860 703848312 154248345 935085045 314600758 933858593 143384292 53385543 188841427 438425137 567830780 878519272 274859977 165218220 998740623 880101050 716930816 909492385 983306797 839256387 917914532 373957011 374233219 561415131 267646739 877111727 927127567 323494192 569196353 951780498 758298466 983644481 171039459 139858471 790443814 441398238 95072988 551015211 741921062 715837081 102118623 418389493 157592828 616309670 883420927 486294569 439926461 577940598 825909827 436802126 664159630 187922817 98820798 271904693 459369804 648837968 282736308 332954011 454131054 527599457 490111773 145043975 112726742 238108944 564685830 906322314 85984025 817051868 655501290 493192456 602090515 382719755 758638586 469397617 670502602 815888240 359716902 766898356 388856976 797899179 430581179 837748300 452236529 687145338 656341730 415652616 23456689 557141442 753879549 610302357 118457038 340189845 505428667 132598076 991883345 559946643 860886782 706607650 841553820 256257626 118559972 931675595 16712732 552084045 637274153 567923436 8179220 476843242 935529859 418491343 255291155 712930006 659002338 42696655 611206626 747382454 311361255 984874663 885812731 439784630 680702075 743421678 821712751 562584289 237338426 72033383 413817305 361526056 285583922 816293755 484012444 692870559 562826262 797133275 710891478 251593483 220303354 333661849 909624531 966679772 692009148 83265309 273064281 45747744 141335395 842071810 672301935 290088590 557159293 836376295 42377008 864407265 206058459 447909816 876866414 151846954 424766166 420261583 718081834 683433048 969475525 978548654 661281335 497769620 877003473 98760277 856330997 542096154 436301728 56257940 94183840 465983959 516245843 552471895 186560914 980191655 153832201 374880997 110553211 281777608 44215046 143034776 177996490 588848508 917029699 469312306 405282563 333482770 391844718 497529414 593663842 290900752 551598282 3066809 980215768 396285470 41040351 752270721 5753131 581474259 641364730 727754716 51442941 893361674 545551660 568272985 610545093 634405779 785080919 915872976 440197732 341638966 375125853 564671718 104130815 10609147 815888437 306624715 572763779 514443910 959671583 824247630 152261554 805520997 974580925 759486875 318191884 298565396 391929076 315209537 952072140 545691615 282596506 594927404 712326205 501779018 603719449 299948098 864712560 333497081 930123571 279921023 631027302 944832353 51521979 899012041 399533075 729624829 439015045 884155314 568492328 790730370 72577453 742329062 419977914 824947867 97203375 244084042 214523834 456349468 285083084 148504001 847841297 87852691 678660804 653804281 785660435 872676383 393403129 172882265 232678029 854074765 646964265 692849196 800639640 752464504 839986448 619993895 643518456 545282353 976897430 420016065 555276145 843851775 797709831 631397974 255230674 970790207 577360323 43440216 890070169 712459026 89631791 295506652 576321950 567887079 474938121 54861830 934023863 681329882 717216748 552383510 712208630 191937995 530148381 73888636 195718447 805904884 153965166 62971243 129567605 512605213 184249310 667324369 612372673 148678239 12588827 651055754 706791859 623717862 159456254 635402775 982774028 55596056 544373814 774229494 901590066 981696035 954610937 484426264 436273228 247887319 373581596 221541183 656454566 879588493 419681686 452127215 823412276 671687495 598373833 815523436 486660293 718840149 276368669 4108951 838468451 81795224 808071298 135545097 573824255 284775059 974212591 415337884 642854189 902751240 197615400 581410020 615912147 638894388 373568519 743814218 550459157 505384096 328797954 956270588 597325688 140677617 165367046 583033957 806975385 478514798 964761536 797823435 609915850 227125673 308375238 432976874 171304032 522109806 544249891 970281488 20536301 64389616 236787009 518934066 111454164 886748351 238988262 380407317 716504162 647515930 839058752 502055506 752347869 373565003 846295844 925222250 976718617 294645300 491774563 886910128 973307611 779394772 207485063 710488685 636156610 461494314 849237415 545518527 117537894 160985301 228385912 624895789 755859802 167843102 381150353 692319856 263005208 730225094 202885166 820978810 961292690 565760804 531305939 772183253 961717159 50094421 736732515 165439563 312260257 126603795 464847377 746088080 40183024 120725680 760441774 926936686 61069139 895952826 238427042 26121692 847664599 388494444 306690529 98197788 348849736 144003426 77842741 943344272 406357536 464997109 443081253 282397800 96766462 197776650 831758937 79797096 817149660 244884083 167640682 582907114 271266106 439796162 284243125 995801712 207830129 621958660 410321759 419142087 7494619 2191537 401595361 380053409 637506963 492839844 553220846 363463424 976079040 142244485 678518746 843023464 566387093 396458205 250884080 68919512 738082318 972326889 820431281 750237343 344494303 17199106 494798414 753031246 638809960 816123207 950759953 857283985 485113352 134665316 13187885 345567999 589859796 857271824 745120931 91157953 277661556 45250234 453967443 739041942 540686568 389448673 146063319 686821714 624504597 539520592 18598907 669337883 342594641 706760567 464688198 990908800 345372140 904471058 594812993 612522451 737239074 228590156 618927210 111126494 339383925 812563337 537667549 165415340 656001965 675821921 728220309 351289355 320872345 554463548 936181366 534881333 288155032 387343248 204945468 664253115 288033438 46256149 527012906 734295032 34546361 3926009 387466766 823655680 52062236 671223217 695530053 789888644 838944043 936310380 162897008 948620275 510102957 656571256 786331554 820414816 815059835 716864469 266921609 90007031 442588600 333453293 514868506 330371853 504319030 354120600 485779750 467982240 106349509 334036881 24852724 872025491 320756503 193394266 481278800 629996661 74531085 474453036 55632677 641883015 568482226 977675798 707511553 456451293 267290174 662330814 567967813 703215045 798096768 118913984 679033669 99381734 122764935 723360472 81187880 755836217 87717654 382666199 221802440 105433060 802930991 591194896 281475543 929792279 660893234 207165068 528065157 623012222 555152065 632016392 636973378 598599078 541440690 68787326 861467916 567592406 421389743 497938417 376936591 481794050 491340290 199535773 602742798 852582233 155707192 284756896 407082389 814157810 811810481 402102234 179184071 108920906 355089259 195568834 609467819 269950125 43289653 216791859 832187769 81700712 752099562 675599585 86285000 749001873 289666689 87575255 636905701 946855360 603410419 889028829 428301972 594409799 944222738 10853555 656169060 585586790 218437476 540663434 729309681 191829111 950676716 970193619 399663364 59061575 470783167 169475831 230074026 401378711 747155065 877939805 517058233 838379870 329960109 671613557 579450470 1296677 524951641 265550800 495386565 932182177 733902730 944382991 258828562 960251809 826235096 310538553 591071398 396420506 686219940 187617719 454670860 825259797 986940833 870521101 81037680 359285616 13300373 406349100 858005446 462414447 248986240 658246910 178933539 783823998 909048048 81872114 514182844 212979455 406776819 236516308 812141947 68584372 965300759 54759095 677267499 504013792 864626087 883233623 650853574 563814709 320600575 401370132 4004362 800648500 265203130 132922026 166228892 456828355 106500312 304151715 659417229 675892824 547143165 908770154 508538391 426109943 300831813 586344177 418929014 630625211 881873672 910218327 51406580 669842365 533652739 256076019 434960584 605952101 242830874 561009192 715754010 94935138 799873691 746603006 787609763 501725063 825192861 328485528 731968608 699478247 323340094 331229550 932570636 523347923 922938980 792334061 934473434 937282001 49208667 113581637 727427941 23808792 289828518 312282038 892977257 123815683 884210713 670928350 261233886 780406030 979406154 843276851 849727777 433716314 888105921 616931117 972697880 995983380 63363859 769229832 187852149 591395384 525245838 319314224 48716203 391095750 646140116 534300034 463652961 79628335 853308974 791808632 280425204 776273387 566708000 617007284 223268792 709781608 708738229 231943772 231162681 337783864 367063951 386886969 85971368 650473874 670175602 673729678 233091389 746287641 645861929 327742314 378526036 791428571 247892271 181659749 649045986 103138557 337306921 567783057 161122048 748164902 447016997 691296683 585978831 122521916 491767340 178930996 71433901 509173931 571732178 596021349 303583650 852581672 561921702 455918083 86288664 94340643 533943136 168039655 828659059 754968916 48472716 392131417 508456884 544049485 255636104 589702268 755388110 781929483 517577632 852439160 407110802 895913868 551547219 645614937 243213511 635883956 584119415 637269530 727633064 901524628 946730 935165701 446214285 429126273 517080936 956784141 913650949 802095601 23374027 603309669 90852776 170246845 915460798 199183551 589739098 154338369 894623588 408975021 188667327 787730684 528737651 377666081 264385591 248899726 269017902 993775232 657949075 268124016 961743333 634261127 510453524 340049971 370701185 823858487 891215061 539317458 172800761 612917603 20827041 111273184 64057539 453353019 994480990 539577517 912677952 680003159 975270747 152547031 56318523 121451485 789130849 231879878 966315066 103331124 849019935 23433726 736949049 881738583 21109858 86494452 150110982 205089389 384531656 482754919 923012070 338824567 238315809 973272870 642709723 717287428 287519191 185676307 60526249 158190919 891397954 932794252 606024856 381856901 322271872 364528524 765537254 496549296 671619462 59678004 61264584 209685008 401106146 483518065 165862029 448970948 780064724 575315607 967118341 498725611 741550145 907185090 292815919 892337806 143589873 384821129 368483466 982809781 89216282 596588488 451658686 466795017 822888641 560432707 57781160 175805175 628138567 404902626 702918045 274974194 197514061 340513010 199279305 608125694 262673918 873246924 335002790 209944241 869196538 622592092 874119692 629077144 304284596 132862491 619532082 452684191 165737181 572160973 597432699 1580497 792195187 843529079 455238617 910989382 264673003 71127807 898155099 363407872 487675297 846072043 252995627 232876945 240151628 703334942 496059046 470867298 711887401 822728260 392937569 959013758 260071654 903286280 466726461 731397024 286051999 958028355 295672635 471437826 924196689 775548662 229338914 785465882 360568864 710586293 184368735 460283226 686827517 305522450 693658738 918571487 97061319 316603374 223518362 956825163 138190699 39531683 123798460 687121354 97450587 499753719 626077251 45958390 783469274 854829450 624969622 596379520 386719232 782941435 709015664 392261087 131143111 760672018 478761106 764134291 998090707 626914107 191028966 606942785 524621421 652132371 320758392 137790554 310539392 789185984 553781977 291894784 469683014 967286739 681198781 546221779 176148711 464506995 334203706 145119325 211580197 916764596 478310542 866080172 649064103 353358239 375845705 793622851 118552116 289837886 827423163 962219393 238442325 687342212 65682839 844567545 981138782 841650016 642755620 466125610 42084972 28405829 361838856 957053637 694454688 733302355 849725731 814343218 714336839 535870002 129095706 930714470 355808667 981826915 627068412 402089902 714269280 794865268 549205205 587041279 287970847 185927115 557250223 645770025 743151618 880818861 799161824 390071953 933924649 295927704 172098244 54102687 735051517 861492144 71221167 830855251 376284559 112894701 914829734 764580991 861861568 416349677 582717339 239198747 31518896 101384572 996973486 786475084 247909397 162179249 799047393 801306967 484186918 758238834 496580804 367406484 51352149 575298304 660273879 857685443 836720875 129793424 974822002 204259817 95572606 921158089 769099555 419797746 535907347 177626543 542718769 307587871 627021948 403893946 333836393 749021568 274314409 744717206 752374334 202778974 329952600 239055967 740550565 367579252 59635626 591921086 301452984 941103167 5751873 838650191 835360425 422362021 571902450 97863529 126989405 36878868 640995630 958062524 147388586 4217740 137418643 581577748 921064098 52087561 880503238 681719890 672072689 134179579 874655741 209819152 563650276 237302833 485833931 420405290 29983887 254862631 719589175 60327549 292231939 919164601 356971612 513866885 874312791 496588626 948406201 682781928 593016445 113537426 542915895 733773720 623630611 686062865 867624019 147033273 550587587 660751890 312160026 473506830 603509847 405341558 13997082 211168126 324375511 85214111 97835225 290029720 56738420 950126395 78929983 658062718 13553502 189191093 126819326 792513199 149216489 806133848 903064009 695693560 186129449 589112443 366697621 913590123 472241085 906160838 317031377 396314894 64956747 139123126 698234366 995726380 620118053 390723508 662477277 702629197 186374590 391308345 798551453 536476093 518282243 232341323 597096206 533615821 37567097 43663858 314484669 967307626 798075860 927653212 518676601 562302709 364872447 776073217 975469616 887623393 358002089 499570850 733050700 414284111 93312554 108648357 897074915 965265447 765773999 674518633 81165565 277931912 341095460 160825633 466613206 151714717 386863157 480039773 707166339 774527611 69192693 597528517 996821702 317821895 464179635 150758170 101380540 54154047 340587324 890456908 726089443 396677486 426259282 671424793 221050961 382613695 698439018 316508984 241625635 154607126 891597761 98878801 105194361 866277732 910391536 4053223 728098025 194404413 498594955 820720701 320416900 481317923 251398793 121698470 386999182 866196102 761660541 851949519 497764607 338815716 227656295 691099447 943229007 574592387 248895693 185186295 595123276 697493929 724954787 53546777 382556330 245162395 233366874 809035370 522567852 394748609 579962508 161343120 903923425 869287103 975997194 937726873 464427412 120938028 946331029 634218998 957147079 698791785 225011434 965018288 817238445 140011719 781239784 534104602 270970038 798495275 242524029 856034182 538190233 883461116 526268366 9903923 332447815 230041222 817355439 107984988 591941744 272927864 311643100 619703679 631858877 33561491 390416238 361865049 779931016 967662263 277677036 629678973 659830920 328551227 898391946 569645951 319937425 636904200 85885906 886916356 730778553 427156424 312446794 722578742 846337376 288720151 406963460 843056759 790594731 772267133 823730249 165333760 937423102 142155235 68714712 356897026 955458515 956007849 427594686 120636747 190333976 155439064 960913823 361101987 685471562 180945600 263249829 38745479 556680875 867531208 196020850 638484627 446392075 577323135 824473652 517947341 681824136 997249387 803557714 419216235 952426211 947815103 103790711 790912795 589073137 258603741 511919447 694606330 821489640 248625225 803455482 236306725 385293171 398426396 384622864 773889154 152875237 204170124 942602913 852680800 284889488 413946021 612393630 896417928 680742870 770132940 649020945 860017740 813828758 459882617 299551670 149777033 385927442 383700968 962353947 288241171 634052521 113321751 386536583 226961909 672126448 654219341 875982462 468496020 369358310 195713375 162181711 309005193 7954420 146144887 418955162 480908096 453765515 68878290 589732070 505735051 125441582 498464471 238695585 372665661 905054806 916008454 889065568 388129435 51525541 157291230 819624974 719142962 664829593 529680210 439669428 727329928 544075845 574796344 276238176 237184147 958952738 52715320 246597589 260243569 780076063 238756003 3626903 210810946 338076912 760558577 54017075 217551022 794870674 480732665 186188242 598709408 350817618 680162636 966978382 451610568 626692314 927773193 730275482 156908098 839022202 612270208 434923476 904865064 515324716 974504583 550630671 140689751 242893707 593896046 817803744 485719917 517667078 577865182 631384475 839733434 457428115 361377934 337657041 472536086 767360946 780483579 162242885 704541144 608517136 486915923 648339502 290469485 963689055 336318775 630712325 715356097 939591620 283141920 399929740 454224613 260398752 934711211 543618157 738643290 434902208 146402374 97458796 840429301 202374011 430754081 462116346 916461466 66060237 495715155 786400302 502595696 138080873 950506460 39877008 782021773 521233836 574963474 256467080 534152400 629539536 713582955 247343982 754795932 424781687 192598544 226079144 54927582 251966775 886243831 829226648 305558719 429672203 438450697 718892739 101411275 138244001 900231683 755506797 431112203 593885812 16970420 946980537 58910564 927764598 187189448 673891807 240244083 712812048 838385368 71592110 269079119 544402785 933290558 284789707 159721244 655221812 261627544 451421004 148168899 483541016 400255709 545425157 935859240 897615742 378333838 57138681 345055393 353449385 579594093 461602808 760392815 7239773 626511913 373735296 350105207 273248049 821334880 194190428 615742663 141768487 57133139 594524846 616660722 736902748 182046656 95297792 255886000 37441909 717949843 603543618 176468188 451987996 469505730 744918841 50795944 612219925 662721599 578352197 1371882 889831393 782646389 739801145 104364049 92780466 606044671 39377994 809305539 118395902 855050071 255956851 78428779 769728631 414908284 884959893 815397857 72226097 694251539 733136080 478523738 33913571 995211591 131967174 32725653 151538714 351701934 812339867 260016137 865606264 777888299 81744799 428556042 219195666 496864863 705861770 756128602 646004882 455680239 100621754 666088537 164721853 975977102 742959834 968088794 115307750 210400666 327617472 580151509 407268911 917363199 105120730 456329570 250815586 226094384 981822169 810211463 954338003 562226941 643681059 464785427 221099599 973016523 779998179 633657985 720629210 355089979 877405727 63528718 868329081 287180597 838983717 681406947 913275661 13630032 679584073 379767065 784691504 145295019 570494245 177062228 921215480 228416445 124082064 490756696 698450704 42147424 558791251 178565127 570095419 327496575 894038568 851140579 918132914 979615907 959766939 788848256 487676956 2815184 139257132 61388397 37799613 651221078 983833425 733608049 462340235 742104108 494379172 18050412 304823272 389607870 768301029 412374090 565160229 983700054 625142572 138997099 94978453 762979846 896740757 120549205 497393248 206817592 630486304 852091671 898212050 999107052 208464091 392913749 510388183 341566949 264329219 414521326 439110302 460523507 912327071 236772158 326872615 191015956 42084293 303519614 850553443 921061704 203111211 995148407 139828024 764342213 972560824 428491097 373593628 339909672 201153349 989452119 908988909 774439741 152101580 852344566 650065901 897641229 529969649 834024722 511743951 380844213 232552878 329447569 643831129 104768661 332638809 505172857 962708562 708723397 531694247 773932623 269501233 319609498 402030895 103897325 574830971 361867686 342679691 485739383 815368702 69121970 616610215 62369981 757772495 120712737 987947624 502970357 598904438 936359262 707726888 345860444 968946363 986553636 496859513 781060715 212554326 750930410 660733752 558088924 20986047 371980632 822894277 237545451 647307914 306091224 771713643 312642997 741874238 75736143 152642246 216758569 535964561 594584614 828721890 615250602 429310355 377806587 145563381 309366189 388230925 918153852 446991807 48734228 794194550 716095137 284847441 547380881 870849809 746609464 100867772 441424935 932579824 663437789 805217637 254835151 565153952 649441418 918820481 645523218 395015911 615824129 478557413 368544859 59868222 262353068 177117892 204994959 171151952 673895654 367624736 889097179 761699262 534254555 612373300 101285882 625202366 131154191 146481507 889635995 841766653 47521702 3218755 504647099 62188105 401590857 27672417 714129517 760685714 248370191 487904260 305865717 876122758 595822657 585679962 713737473 466849831 924760420 728482540 414945173 419591876 790893588 833751019 440277990 99280091 911980702 669199573 884517381 184134530 175442650 283831327 273045327 112433880 26350097 776437694 904672675 532616435 81812182 992190315 651816898 836189721 58630882 659817647 520990013 624096117 271869825 312436602 978972738 176564188 904096112 3682345 897854988 314754987 398171081 345151247 670392796 758618698 145704767 191560472 374570326 579048628 10870478 665875941 936347754 71698868 189124195 83845225 89964359 295717300 640563007 525735406 478026929 100013267 476434730 605295884 448819231 66364038 461833975 516588936 675985293 117837876 116583828 542473511 701397769 271488425 251808423 54254920 274488516 233213538 270391022 727948027 724105341 475457951 988828196 120127789 706767039 998248193 128094810 277264863 759595721 495284416 505350483 236948529 257266455 188194644 30508108 880042085 393114389 581473877 176471971 969698841 743220935 622634735 93159309 472052763 742532178 655930908 92278582 86942259 392223808 628828209 166400434 384021280 893117229 318584895 496283080 798673361 313860127 349683420 487009508 137903871 173963288 266719829 773927555 694278564 252355370 893275969 817439126 535148414 900530499 79975433 776859483 581768421 682364217 644376372 964758613 417118852 404827225 873063999 814613496 359370641 342408280 352196192 500956106 87101141 394910877 982526636 54008299 390279446 560920805 254474645 765130919 595619353 17052998 55672812 754882325 815982560 692015110 441365291 691988818 386717281 529590065 423256 564164413 768894256 974836069 572660587 980031085 692272036 686376146 535389546 242163452 176775235 622493367 831613645 467270987 980960121 254036974 739670878 949802258 837755758 872146271 167565552 152493826 809686703 887543872 250836471 994058929 497012166 377632848 306826803 802872343 806344962 92666691 795925005 599387037 417882297 864043111 294177549 745102430 170732276 490691749 732340766 551391461 187661934 46204136 880703417 927159675 420171654 398119968 447960294 712152041 596267583 744675370 221186741 578955417 261262940 3420883 81812259 736679786 696286155 192473083 598155372 252007224 295395421 800797478 218038396 279345532 511713554 518800160 46656533 796898814 619109220 947690239 449158290 660984022 999267685 400562062 360285778 196436747 440130771 884206037 260060763 376198550 765863735 183907427 383337473 971523415 234496664 548663945 382985661 955302778 908169571 542665770 229183092 292844458 906410369 390397831 499819805 865500025 98728990 949703103 586069175 289100309 623965174 301988196 980973565 917290711 298548185 698018496 149258024 420342521 680692184 962842471 522957909 467404820 631683232 137575223 898132747 166881705 918969709 555218634 579165517 364800555 583086410 956700654 206819007 876554394 53027251 539903544 457239022 895536860 122100385 379634094 762094954 766476551 670261376 968190922 834039271 308885432 833403570 333436255 500074905 610801444 449728962 11815216 992804047 846164038 880093739 599640319 393593355 134889196 447795028 348701851 49923760 735366267 303260994 85662005 67755335 528598218 94513489 503882975 296805829 179073365 215491846 445175885 824030432 574151520 77035203 442508288 97397642 368812944 205645677 555925690 911994045 281296227 506287113 42667819 285417973 325252722 182486878 908292539 307975375 247152252 536911888 366783767 364272566 312124155 297270307 236023995 5653537 989002308 260936305 610470901 108310592 565896090 779407098 423258950 867884438 166928987 441694689 288157320 398106778 806059190 983009638 561685664 833013645 327891167 668796595 829162816 512628243 750214228 709280470 91474138 184086094 163568039 274756230 941744019 359290303 536553265 211404153 278448604 871679362 356723205 568558173 772102461 337818839 918936671 692671796 553784304 571585492 349613928 187638421 95618854 36159005 93906356 884405878 365816285 142196738 125551918 32146944 672726229 945983812 856029545 54830872 826646599 908227493 290873373 794442990 157825902 632619261 811050432 656125987 787608729 452631662 560973160 318875054 275758519 263151750 590851903 953243938 717884093 613889968 527550321 865074826 72944271 118315223 864086494 377367441 377192077 951417690 100648518 652362066 117220585 308216619 336295429 142469078 595164441 952233036 721030839 928208808 214505609 776348316 521035383 724709818 352478188 737907243 386560449 916950670 265522200 26253760 310793180 961850020 511157267 612344028 245062195 15850962 54605203 227073926 601094231 763722606 279425102 754945182 145931443 68804075 921766294 582877426 22578605 690410990 398449778 18987091 675762442 182864978 977035985 386232903 626604196 37010524 623090729 657781892 540645876 637656454 686841254 345167790 868012221 978047026 359279794 732628586 457142226 720583368 290385869 845076094 800652974 371260824 634753190 463648250 460111793 371159228 454638813 953286017 623161521 366180691 362488005 32011414 738297634 607580262 181225703 60434592 457392143 47572692 121746745 78387884 211866878 337486337 58047214 526366173 541622473 471473394 650780134 154354737 569058687 442674389 976572503 28664519 525631337 91154202 948200102 339504203 229618287 466137093 548483367 938679499 164876838 721684865 236765263 979110880 947393932 504411529 424240050 21991739 319199034 468752276 141073384 779761761 343334728 255488733 765285519 86817402 521618328 288159779 331979609 178768892 170540753 309787064 581424615 663402234 192545122 155591074 874549011 673766637 759416984 912430395 812709607 96574803 69303952 702942208 714417069 681570014 434442131 225827451 764779054 263835820 854285972 90531292 629035501 44405919 944701171 559686533 761229789 843766843 220990657 677989599 306594683 418243596 260515392 725926947 193272440 288210483 113558047 462629227 264508133 757302894 971054568 133321218 966501541 737359472 580042284 912229568 171905731 987668141 23472441 571428584 398720099 180268947 884584047 668007274 151574157 808653982 739007144 631925870 950847072 833275328 685427856 692698859 475872313 429053013 938416348 383465250 662832062 424156267 196690955 24367792 804113721 779190912 361798079 536122840 901597729 390875252 836173184 833901544 388033653 907017106 413305767 8623946 289887584 310934357 771678105 457454461 903180267 300547461 233965496 893767106 870199005 108627829 827667407 268515989 297636152 929742073 894711263 870034216 650616662 861936511 953377066 562628809 19138496 888466922 846857059 162650089 346520961 656114726 795538991 999091071 433716186 418350712 955318610 583078899 766210126 785608898 895012931 309041186 660553823 758459491 510922962 620331457 389404436 301337417 581190890 206875904 212077080 296657051 534766966 506054795 51528085 208649958 967206631 47119943 650019481 975349470 548243424 961473235 926115025 40148226 304171181 641224400 31084132 314942453 678127123 249955362 846431351 437477101 951085160 491997419 239690628 167271775 355932263 226436739 560466382 501135444 29827821 935039092 166142065 734902424 404609660 461289642 947694294 656632002 849322114 598790017 729322988 145505007 141370115 863106137 975120912 836380322 759728038 715215148 75807639 187484051 212091085 88742571 834059134 988950580 253871686 543190723 187808986 503753582 950420243 253311772 812534231 905329587 961490902 105192033 484857470 83502743 31398905 205151311 350763561 282839842 49885553 141119690 314616328 586743360 10075083 155117371 625289389 300069745 623229593 519208518 18315603 73446170 748231224 625491322 59898589 471785077 311052521 951312937 942856140 309378975 83533417 246854308 707759076 424732074 245456144 751167784 564342647 559676397 451711328 358572318 88363643 686188253 232873905 299892487 533463357 102492143 108376305 495782073 502018757 932760817 517380235 563271912 605117738 325119374 309772465 369663713 765521369 721223229 671505982 429771639 578828196 918097165 445884738 409749224 604464591 885936016 175204223 886370546 399195268 765622550 952318138 59837613 91167520 687610772 280058437 775994316 650604860 211642582 206854634 90061517 385190026 11975665 956085741 97646395 933790584 761803024 324016110 458848465 446247071 52057211 326359517 218743881 285785695 449315487 469016621 193837412 800367723 870867836 774220314 151292434 464006100 422542081 264414764 523820997 651240866 754294821 84616136 523109043 919957405 128005168 608985938 512003372 439381788 264451464 934271431 316396068 705254853 430139683 43051664 163035641 652591252 239133781 364591421 502440825 975147246 622435193 716277976 757993144 359928549 424632228 941112574 902881920 675148639 443770649 9011542 793659735 1857106 146167942 982054517 504609485 132595619 430155991 236681368 92773471 347855894 63071142 404266131 525292282 971488907 326181535 614395822 336556460 924741059 488034521 387793742 37571844 760007802 395524832 634955822 327695359 57725956 856336828 571868615 999461725 408592058 958272256 914204793 10630412 158857156 428935997 634067244 663023022 255172068 489300001 360238186 201204460 675608004 777414682 899342032 228458608 997634681 273555531 571976562 307387562 763125303 767808266 54869345 286391051 437289688 903868619 486121775 277001769 42073241 409979863 317614151 367023052 84768544 889873167 963693221 591294047 63913921 49411891 613929128 641294105 857459043 982380323 960162970 543770087 269255598 456093580 779612032 611030613 409224086 718897876 878068916 97003947 843857775 544639068 388131581 640971253 98791379 840291196 279716665 225655277 730719076 623607934 987523477 276276616 924087167 503166691 883569300 627184370 824278829 113298917 912771718 481877485 979730181 90242714 102130027 437578971 286480823 698866885 373053268 294727196 507778672 227164810 811596588 994485461 393179159 300383499 822875909 658434753 728639989 257576810 736575130 333024697 58967863 984367184 673254591 933743205 931743132 474621250 35122186 526414429 171163596 611073901 836290573 50804410 781898734 596702744 92010159 60585599 460301738 735834806 148207318 527214707 885992890 230410132 976314668 106612060 821920869 167470408 456029833 592994111 465206039 22897959 987288381 374173808 992789636 941592836 63890350 214518942 760749243 81555825 965806981 164407770 410110662 573183288 244775933 756314773 934539547 173184235 479306479 810463368 289878605 860528033 516455859 977736771 866601990 300662908 101080527 936864174 938342728 497022066 71930489 434341528 627803345 518658059 695390101 850072278 516180933 373699236 38258271 97574788 804741273 452747231 488408913 718954362 457552691 162020079 260479586 312202776 652909421 91099416 77569456 18865471 465744855 504010540 617945456 56743467 554334944 445621916 15900125 845081040 331431151 964091651 928717228 457699445 517605671 782258824 325994484 79307178 634170738 501134687 291850652 306987858 395401160 999619485 523278417 442418102 834762453 973960158 888869526 621457794 673574113 199096798 645758729 487412282 848371758 720084852 952418021 475002749 633384649 859746585 179264178 881298142 969191248 475339246 506762723 179549179 106545989 139615651 386123556 716206786 611883360 58738417 511180084 602841802 281618898 305019506 343413839 334219254 677667464 430920546 723016633 152169260 742654583 363604546 480877372 742974800 720666283 964829260 963512437 599701154 97576939 675746263 150110703 434980416 811529950 560323429 529221179 816467002 921643434 450036736 365430508 718301771 495768320 846055781 939276374 727828450 864164803 220140097 970702565 778007010 885753526 39696417 599667108 316384336 436958262 843479972 373103898 388650532 225404979 422811801 475936106 667245467 742382055 914195427 341610522 612022478 382613653 541107322 683226173 515470786 555467035 406171625 420796803 369573681 343841471 791853532 229907676 645786417 99387151 145970873 825262698 154172753 132702827 506997911 193049803 92086542 84710479 158337205 902674330 856588091 875559451 813185657 963993151 946100170 729790111 251267707 538386770 724755242 20199055 880419668 224131639 58397964 521216219 596291057 643824992 551597042 774405733 570229890 925794611 203741021 635870524 188277422 757789684 690768692 280230805 477788799 283635723 77102375 240619393 641579495 711726478 926724882 748183977 786619023 995194284 580766247 810511962 913323434 890189925 702023592 21680007 379360480 751490435 915595653 81167879 235142317 84897229 818988767 134658866 552778282 792080719 498879677 631826981 596600143 160837354 392064747 289920302 305159689 246981883 544614024 741385581 185572959 670762493 418963150 727484936 811932229 494486393 178149139 643501184 504026212 842523093 573642940 14740265 330907524 572435426 773093411 869264095 884022320 397919986 936859451 801054342 802407904 35953194 965102980 227650715 352642112 742654490 299726630 595137688 4710651 143062532 623671162 867115015 744917446 311740775 993359592 620987977 611524181 788887255 888335671 703805609 764473001 297972183 499745704 15147138 540635108 177975277 996057082 146699812 584104583 559903738 227830117 79577729 212772499 947488797 372519068 128857305 175072362 877159694 248912771 243634147 292828231 573916893 48306186 321983615 990115234 32577590 688293747 505604364 708667306 249331961 880303537 383171789 62541012 804753373 527266194 405075606 543791818 503458323 955324587 200038333 991764057 505661079 853205722 383128444 860941251 91575776 711487239 398946485 724834175 865603859 854235981 180620555 170840749 752290887 999500066 731263237 14762757 601000545 370324227 755382486 268636776 455351068 709763979 820187570 892946770 691765032 127474252 464247900 813438280 954894464 426271194 923698276 22989307 359284336 40327806 185218765 64666927 795564282 660279960 243247759 986021864 797249305 529937761 288518570 2004427 293536966 568032950 533796603 960915864 123913567 484850440 263916654 231002421 877702508 460471981 684373462 624381121 551081499 877465866 636155705 86222427 528895791 838931637 334754037 913246944 998681784 700168757 581396587 65400565 452312865 94887953 510364482 33137574 593253269 400198830 562456077 710075300 832199679 938719483 808553676 790197833 723598565 179495919 381008808 324818187 922088022 786032996 239120718 435982703 58320504 663907880 283548198 167724110 857802852 847828438 181750353 916827792 876523364 976099895 114071412 30380330 342619635 593618990 650679698 753763223 198031111 571248834 927613857 108769613 590670178 557531296 86262655 807686049 326911380 250013330 928174279 664302864 968448940 536970756 618450572 219270599 371324519 269682487 45252273 506365842 302035501 194989519 792030245 602231129 66976542 793666298 421975338 485122050 385195010 286149728 553150731 164614801 168272962 773776160 120438830 950066664 547523196 516811405 948331029 838142619 939868182 230568781 632029524 772802802 138060250 242395085 151210574 914213562 578363283 867093761 135478340 916875237 134010636 454567979 104520177 576617353 554136953 920107106 291260453 649928009 261378800 489667485 947858005 346186939 876051116 492016059 585622675 446515910 799236398 581396878 778911885 936990245 585714492 343002384 879255153 255561017 193319637 89382434 174101169 873462865 679742246 829696988 778519618 266852879 232750226 269700387 603860215 373512449 98151343 824653889 717941703 393592615 389000614 731567300 908780084 758268132 851498003 805632341 245558070 591401351 539290970 95227035 121169443 778708699 885050429 760050485 432614676 572080641 311656006 256354155 983683944 831227143 711900345 230231462 900074763 459529335 614167794 559503057 750345889 704835228 644630293 572043966 986145425 717609621 768714058 777249395 378761831 737971726 9832023 743728867 210260620 944134617 551136325 84286251 780838799 489203562 313556539 161995270 450688711 877039917 766447223 986278889 408254092 773147811 324459583 708476841 5049643 71564354 840135685 897610215 906227404 840349525 982502667 86108229 859039104 488648478 912719234 367681707 395032937 445652440 472863724 761548922 429739945 476264167 75755026 211448715 222574547 192356453 321332736 865235451 803727337 349561084 17620548 981954276 770678281 47075061 808647560 523655629 129037336 655718412 856079467 803801767 860022798 614987564 654077814 555198820 435002799 810510031 527425941 959326931 906553484 300036421 707284501 227862620 75708984 739644053 115115504 731268591 30255705 156905808 990558769 427784812 217961537 635181640 452675303 379137326 451629225 369793387 926986075 227780029 461916102 778371968 417339620 418784186 963395559 680896026 515738265 979916424 419153677 241895175 466598771 425850327 953545764 373785228 488415421 536704876 233589069 417642566 822082632 967999047 779672544 334595290 552468251 755088642 843271679 189491691 998458535 50224904 832099354 701454496 932014847 951300898 528143375 959280131 627605376 374797012 154578162 510807114 911444691 462776065 723587023 625729461 104445304 598938065 623512051 994019655 168491201 120368720 800298130 735598234 202031985 122809791 352036315 747282400 821600321 526397896 761896409 623366942 792859457 157889921 108453464 802227135 463688775 296446229 155719701 70374953 26736019 828572038 961928396 931908122 858048894 936197130 426632259 123120879 735453529 754779095 458614619 490958116 298709225 519313596 387357683 889508165 643168373 959096680 422478186 417902369 730196263 87475427 565368029 969434841 642267712 64490214 487261068 329363473 884108155 901628532 501921301 703694690 312467063 181750869 209546373 266425359 543827400 848280913 587835111 1807387 629757104 178816119 613593412 667059161 546786733 136660295 168239014 251584480 367482498 490622825 275843765 538267498 386342997 303250793 785815941 802759868 660669167 948196408 853041979 355142853 484082767 207597014 821381156 743908925 305650097 503560304 112465178 923939988 718601332 624489877 875210267 275241517 604654995 309405824 842334139 114430044 553802999 917245481 342887427 263542224 52490770 8475131 629035336 582080722 8531029 127577138 423972903 816294142 93794224 307353176 218814541 642604923 880586257 306493546 222337936 901837629 97461004 651855444 772186266 373376266 696703377 918124814 994442876 410594726 663022490 733472595 886816130 565404628 638822147 150086918 277708601 682556041 983118811 366830928 751759564 414294159 854603635 261087427 577056681 616851550 334001305 89898665 760295020 831144054 18251692 239595822 890252054 722308326 837167764 324767832 865303119 909297141 985721163 575037948 82874488 372607418 699408217 924801849 739582177 489025746 26486459 342482825 42115757 429720921 888762644 679989383 501260072 956451502 456966171 552740147 237125140 817125229 932851197 703757502 867803564 501092813 578349379 778418733 821240732 782738271 960899635 499956514 672659827 958953707 947779303 335882710 303585697 93794637 625806900 745255566 737796589 662278648 411227291 819936112 631026890 740316485 650846672 506535827 915656708 934525762 699344290 184636303 342132824 489829451 294247838 978398019 571380157 230273548 369014239 416692239 470860300 537868036 76934246 177365180 825124412 832520040 175849075 166301943 625610085 878757614 290346945 353253367 470020557 148852593 565418842 741315595 699313765 212719573 569823606 501495047 651511131 776098394 131755282 979504893 928732696 474687975 229387650 444124508 139243106 489037879 166903311 630092398 548604550 800141211 473539976 353985162 282988541 238995635 852316853 766786179 740028706 855370294 148492707 805046432 845286604 921805815 564223173 653247692 819509077 725527264 722797320 118877895 901215975 84158779 540278257 424088343 618055499 947882717 70342767 824472744 132388142 7937681 646827425 84255734 934112181 411944521 748151255 94150916 606775378 352491416 926179150 173702513 327516227 406717703 420067387 503500212 689849817 87087476 586009295 453844414 377770922 994544412 974668504 906828460 894757660 623773148 915744025 779305480 354666519 417604490 57241939 907789695 426641403 377488197 215063305 248380776 621156598 426761592 758716145 891777233 164274285 744281590 721808582 703439224 720239619 887836186 993196318 315239877 92255883 380653612 521700996 473081777 139898467 223655909 966223739 673367119 274088525 780955520 578526723 549576807 794365333 203924345 801040263 893162113 305487768 68401933 245003240 774772072 509995726 571559629 507276612 411337941 646400902 775412115 686909515 785603155 888736670 968141323 3968437 32190807 117049179 492626707 75110070 80025847 70270137 966567618 482564933 216889883 202652504 484545641 649619729 362962321 835256353 100407327 955497148 147849350 146097743 737713178 795738378 15684456 838919258 68422238 950373367 582045293 599950786 901818327 579616699 433262012 373744461 676147087 412994472 745108139 519378773 78384284 67813333 33553078 327699036 711188880 171612434 537566893 858942677 56458354 792680447 523988492 101096530 398175478 209006986 595542655 638745285 497012167 105152700 993036490 378433022 475370164 252673598 365966341 152358111 124660037 495032938 599674705 702088341 99329236 833270758 564064384 633866653 697816161 355527103 140255752 167304150 911833983 511367793 799856301 66444498 117383333 655148752 69287567 286935768 805053288 897503612 838952273 725751773 634377593 395002788 997726871 828062692 209653224 848465887 540337688 325961868 379458706 467645415 983925010 478869627 101265719 125635168 409724853 295101328 686580122 980060604 268368770 358943423 39177028 29944358 45960700 13467119 278686171 968364138 750183729 837145607 138629137 163241896 474669140 425949918 837012582 953127730 855308073 408997044 452114547 756549001 603548775 675052110 633718742 31341338 606551461 578397115 862369934 415412943 951587378 200410065 767072440 187292499 3194278 91644834 809018741 886839846 409129134 477076460 903230398 625503814 274009856 118528817 217996515 840993384 138566799 240043818 65587439 98160798 804811572 858025541 808765349 32664135 947197000 353701354 705231987 889349881 485123174 165223644 814731913 19831388 586286594 252321082 29439038 259224400 662819281 207758379 26487960 433162433 175499961 513426576 176699289 65614277 980710611 169700744 807454862 179344742 495598142 453207396 388255456 714575760 791653940 737028633 782179914 49672828 509231193 674617728 837503741 90042193 876808336 903246841 280683473 279986410 135265859 452500858 462457995 209906788 184160713 48580728 977403674 287981501 22811166 207370914 573439343 509160255 298285867 731115319 897486190 67197405 895934135 580944857 171338930 248580116 263185206 176531583 954004206 293805487 150574833 715259051 978940269 120397729 750065433 588933069 463432284 125515750 742469923 310490827 173605899 334769498 811364046 712831666 159822050 809186566 994623660 964195120 769555590 111472368 260490091 726172130 978006424 382763258 108144847 638508257 821991210 868617604 631417992 976852134 330364381 676338985 413857712 972748654 850038483 847488869 256605870 863887010 289929604 364818791 602828197 420640314 817076935 345478416 474973922 168815318 875040092 216737927 219220958 220960775 598019299 213529372 100254494 307128574 622909434 955497175 717790456 267431668 380733514 73941974 266026982 147638902 801929582 808150934 292419430 381020805 262433001 675674456 51271755 720736016 458019615 69264645 684820365 386961836 606785116 411428841 294196907 318946187 544523464 205735482 312998138 599045591 217634801 94069950 160450985 942127746 118237626 265625510 39309900 968078079 391237518 163562449 449941568 15653568 230697846 795762997 257778484 769900083 212582620 457924593 721552301 265560764 587860588 660835659 409603742 284229876 592001513 182684115 711928207 217683614 786492009 386638184 376888150 76832903 188019555 996648671 120378145 65458986 417774698 354354559 14040792 67570889 30308508 792139740 405547244 411592590 126865403 461896601 278159645 233277297 882157982 512462094 730328993 616906385 214789024 144197111 143600950 303328903 567098414 768316353 955314458 37524071 691150331 455162280 512786000 324084259 692073864 51393765 362896037 132543740 259981759 376198729 787257158 897767556 708115049 935136036 576792705 114369017 774362548 845520217 596713572 413852907 468945955 118311519 34147182 567455644 945292691 955249277 869764050 792306635 881257450 538369960 454342778 101888746 847549733 223287690 338660300 118353190 841451011 715015872 561008876 669382343 844060492 548560859 588731065 657227692 385540428 387482836 571374550 85571469 262093278 879100155 499797615 699194931 528497310 916681275 739264151 513752668 838238494 14337596 90057279 159289257 983753321 935292959 637972075 138551911 555780295 490967558 824331140 942827181 111881284 665809272 375456628 509013468 230678049 211457493 524309088 457057579 2381916 602999111 32048671 191461673 367418467 428187232 222172499 862710866 462655578 739503 533795830 388011930 340004645 599484761 179054254 624595612 989442569 737662258 941233685 57266837 444351531 618839273 710716973 428622515 873854548 426146569 50876136 192383807 86418247 485459694 481960671 586445145 397773769 338343821 882831497 727622088 451471752 319342261 436649003 4244809 159267128 891335009 150092605 286953334 843636572 740384366 967250258 986910711 687226194 851724626 864715931 616289046 612267122 979996328 966951576 475233560 340253518 351345896 956383510 82950371 810094126 124373679 280025250 281307550 619263122 559153908 745600898 48062384 347864354 82773774 398950498 234923436 969473847 199739760 594455588 817714147 82419306 657275693 134873836 107125609 762304598 586142942 906745229 759119813 534967956 834571489 722871397 523813684 628813147 875206737 389749229 433651963 225959403 692356223 291132728 348726806 559804609 412205065 506962784 276372199 380670586 938669983 912610769 494372044 815695731 860833743 244036805 661510234 939816492 862186567 298032114 193752432 843509983 459330488 322759396 558396794 444476959 101852594 225316610 257600928 497228996 280549260 969305893 653147593 25117267 114276154 55597402 719387851 697582749 323156372 73066454 587467041 566964985 100084044 723908613 972125128 582645800 153297985 658393856 949904902 143620863 197674718 698272941 641473875 178316035 596374836 272727357 732672297 646359788 150488413 294316621 768295041 618003123 939872050 393853593 878757274 17516125 1654761 58184456 169842268 495212371 989880571 10451138 379932911 150303335 615485968 299811849 102908724 326172536 579895879 406803618 779125164 44144500 803817794 571039444 109261179 588244722 730116380 595672640 10523855 168239144 575027416 217298341 295713718 444975653 386174283 323885506 49637518 406414567 764627775 319626935 82569657 720522095 44249547 638537834 175361299 354867830 497786252 356578499 458781430 82615253 309588140 758827054 732709017 370766346 530145373 714932386 801767738 876240743 100037564 762644928 323862275 724059850 154728984 228981786 531281601 287194671 129148494 373718072 268472809 777206339 149382320 488332230 293696806 533202843 777754352 893308740 668578161 705315694 841721859 547245504 262683542 881001636 972716616 155971861 585791550 268277256 975146301 970417204 407898655 285568169 174567007 951541618 881923650 142113877 855527282 394684145 920658207 361954332 431544616 421623571 238186259 835774462 394633155 614897501 643515698 980288363 428125861 883182400 157107309 222039425 599818989 206294596 87557012 877407356 442051953 319444844 562194574 296996370 802118310 865062224 811086825 138417077 307664730 373748617 143949525 636729870 406740511 381640005 477868947 492000279 280232785 969013109 141120886 803986169 86370259 80249103 681286061 714164077 948926565 190988028 883903813 57391331 862845192 359400459 305481139 554878693 509651617 134799365 52080923 133697849 403181653 803692725 158153850 785693690 72443055 147690155 880692765 990011031 539394247 721500680 122192816 771724246 534357559 594303901 785909134 270750328 374116150 105121569 53950441 259111143 683339500 868577187 712984851 622974392 517873225 17509319 547905443 19116782 575648862 772692061 460074799 193224822 240161659 916715083 85389869 249115766 91983517 37025961 160726833 550087902 965631925 490465056 819652617 752872851 925639577 796024174 655566235 950854537 461388557 85632829 446552841 940687064 868590768 395509004 717461122 236138089 412184976 148118478 599550257 879177756 712413690 152890589 789864239 652149756 687123250 760479343 103861310 642287419 23458975 110185661 939653234 575509249 634970189 361975855 200674123 511279227 8407560 121486080 136751833 919443553 136519362 775398397 617735672 902690464 823504420 405245780 505121964 143923780 112529469 329682717 201790899 40816648 945875997 942755612 343279133 91862789 388168089 605573672 760412504 504332562 96585697 896063468 580194581 830665830 954214330 338411128 85365221 706369703 294166231 323087951 818015819 737557468 235230789 376068927 133289645 403222583 260636425 561779761 612736687 954766973 77268774 629946828 674345427 945654275 404619701 711617744 556753669 54261961 638192365 363184347 22145335 312874829 402217464 668371440 586954036 305348641 431256286 397014083 805747338 317754320 285672424 659597400 600182027 414891337 614907659 969995423 455553934 462481382 591410439 779350773 908837006 116391948 24854913 242759926 555735699 395500259 953556006 224553405 581549868 983537948 180059589 1648002 952638401 927959961 937058164 780627539 203407159 367091926 548896067 161881591 680612971 503906173 83343490 706067783 695205537 974907774 120946275 257555191 577611473 16008363 189213862 774260539 614802462 25197218 164627210 614682403 768867929 943657522 882324517 414087013 141479629 894792192 887831247 928163196 884937375 155438093 193331287 838878297 925544275 458084112 602406173 86605856 390714040 987224477 887618340 706813437 127518335 721618434 742477556 265118090 759620944 883484677 431160680 414381224 61012397 721913787 403399257 869655622 995223182 777344464 33226014 726723022 109783640 975659983 885673839 103402853 571980190 287896581 272018240 450020528 184795709 179898137 834916463 76865478 470803343 559682827 86308371 572796483 895497236 592303945 8292803 968696969 204002620 610381022 708965076 154545747 519524865 953861877 817236280 366946615 521132653 838026345 158817169 991231627 969190181 353694044 251856489 196243725 477046546 232060941 24593360 996130723 588613362 792638922 857675677 370757610 564735939 834832248 23746194 374832831 330267984 356157989 610665713 749361951 167478289 758173246 575435409 372797819 391107761 929384993 746702879 371693811 699856560 128043172 896851155 761053919 212305165 411347812 84289955 607400541 945943517 889772765 776459739 210836780 175093499 124943808 826068851 961138207 12184099 196056730 132983175 388615688 451751690 786531251 998491035 361258427 510112280 883830289 444441781 621983290 537997768 364750651 987103035 994074957 664315240 359147014 347641126 84779474 920570231 645528823 591165121 985927639 328960975 871308394 874259132 871874182 292236604 503811727 233321847 829676177 403892264 961521734 446979228 380961237 214982637 827563378 850522600 696994625 740254365 594990048 178492896 571251003 52698282 702674128 138141762 875942914 521247551 43484940 732164705 268085173 222619189 677502796 128977617 285359014 217329665 643259638 75985837 161516047 877089069 694387389 571868643 839912614 135243646 216450628 803600418 643901163 502401317 421009454 611392609 979265351 158978127 893169548 139777006 778241834 177258864 904022366 567249497 769667114 257534806 154063553 915497746 409331664 37675893 305634614 426588660 322035367 933169384 163606701 85095526 60786446 931173048 673040422 89577320 209681445 557189140 140170659 652751482 219750852 57417957 615850475 651288141 853023964 461402638 898140825 789488925 65307121 34725717 601300827 564763683 249515489 410476644 122295894 468773514 549667849 363646169 180093549 228508298 242124777 940949718 353736648 831892032 217929839 84778269 272139412 698278629 989237775 462890504 228877562 141495897 337377051 341100441 18438058 328877410 68423518 278927791 234744297 670424771 383146703 305528823 318037937 777628068 698052444 508099866 389509454 517106900 828382957 395231788 273684552 709889650 188269226 155693675 197638035 177258103 178581266 721011354 455490288 389117780 104217200 861458411 823766506 817837396 502689517 743015138 363519538 3042066 156167442 998450942 814498821 36013108 538097978 678389357 625720141 680438751 588519826 601502862 964614452 27705884 36805141 505417984 63915861 206374875 246774947 340650044 650227339 349787434 174282324 409216785 334011173 211748961 181826663 344073542 148038250 249691118 482054269 130225168 258037710 471194390 640533184 976315648 909885195 503355253 582730097 949654110 948710484 216373333 648324739 758253773 287923747 884626306 473209848 404571449 456225113 944913552 151986801 980867456 993073008 891149044 228772283 211557428 655156805 813934345 969885254 322729799 548771942 417396203 200445748 362466737 505936584 523933273 280734648 712535825 759421850 690506740 712714024 641273430 18571321 716123772 730420205 922058975 990570422 838055708 578772304 852294976 204925844 999994628 804088339 687609199 254648221 557389320 556185678 604980117 474790695 346597932 836219029 56954971 719725292 457619370 434651682 282433712 513362747 718481266 318383184 754372835 729288323 281396948 150326867 127019534 12862650 834538634 295455173 505545401 889226469 657734382 292923238 907133020 905922204 384514709 884951939 894952802 290752542 313615185 788002709 267212539 3588900 843498786 610848995 454181706 675542056 306553598 627404377 663571827 581640476 52520499 418326653 485831056 660869250 594435110 350227244 238321851 467943129 669102749 258776197 806782651 885711267 776529257 603542583 248966423 783192998 360918612 696313075 254930176 445845587 200758550 41129075 295714965 631376422 674643385 393028583 387375402 296879759 526615226 854015894 841513312 770290383 133736603 463682048 893780160 935028584 748362782 476577970 112176455 141150911 25449987 492126755 898690936 277643810 210330055 210283005 694070125 570717944 381438450 915167773 753732140 375756035 109975345 225136716 3752359 800018155 157310850 170091072 921704876 885315507 568008822 853711805 860638863 452501217 799335864 429475157 657847882 488517927 346534149 623404396 32128356 2475480 212206024 273317696 642165768 97842102 322723783 203494885 63579730 366898146 663783980 141314247 216254345 62455422 768331066 52780588 185448308 993199492 706622841 70080911 207759809 173750318 409048089 729094574 909014612 436715596 418869493 873309672 279987991 640345651 91938075 95146140 269800758 864482560 263766319 515472439 610907537 695858602 577854893 262124413 675948255 918094598 860049440 967050222 995972396 186328743 975486678 972454737 512008752 294173354 446224174 471904047 989516794 711414261 786332380 427217518 724408452 127515273 696239071 615592408 917876295 767604358 284248208 592329454 918398686 373070877 105156339 702209504 229977557 949138781 688255812 603343839 555077799 869477767 920746368 571228812 715143188 201982903 352031221 315579106 196658469 851234125 459448972 548615983 595113341 319105419 301429001 883278608 405764621 640178545 107699358 473706628 512737061 459208294 903197409 760371409 730704558 697534786 721953718 820875887 477877598 547267316 337916823 839211021 771694076 773926281 152767089 354797204 363145338 195884443 626006887 878312364 14783864 308850212 328246265 972815395 439117059 849601071 346061048 874156651 644997440 853102722 876133414 293125562 909049982 760373493 522374165 373590021 696291460 480246420 882024924 142129748 156889358 689855255 311579251 9654159 406423509 928074109 107909489 738860390 722124924 563258 570456288 363121567 145472063 595238910 807424320 465627961 729612109 89772441 936155341 466884675 248460272 298612953 219038361 269345400 43040326 864074238 820293219 585462732 928824678 419306044 425556874 999156921 379867732 226559854 881242634 308516432 116497506 65242586 938982023 766403902 801896927 707724285 141628012 513852091 74127561 912951256 49008478 962892096 699098743 328528373 733542860 357262102 762829205 478899750 86808772 653954092 801946433 580692837 600739250 499383160 395169298 459502168 381998559 298076347 620377503 574760399 41696995 46642222 164855869 227503235 887287096 52873533 493179573 482134853 225364304 894824826 687954886 401486369 442916248 194081045 134690221 47741273 837579946 320376441 985908536 997555266 254561923 398272592 645114301 968945242 558665382 25313518 514154468 184360332 125397669 434083428 565254729 935106829 580801087 893512175 334973531 35810276 169175516 771036085 633528480 336969728 860318991 470374969 864246813 642476791 618689608 901814463 130101431 316406505 874048127 41741543 648781964 579530213 47338882 939382783 73795004 304787335 616107503 171430977 527119390 975423739 242779385 423675392 778594759 626583561 254796313 564572106 563976839 380522455 568745724 14309010 833035343 836032500 370833653 321563181 624488926 376914889 835062489 233516140 800170913 942684221 415764242 196681262 261427797 988419184 150262173 438480863 870176520 69117305 648116905 391693453 696359853 714010247 265476228 379401381 41158485 704691887 391794139 648266693 893588582 636750698 578936703 37292979 553140269 613145065 660744508 715268337 722908458 165068118 184166199 37510774 175434454 691535895 893953295 920936489 783646792 462973242 155204197 791095517 921707100 434984674 743513600 280655442 708643045 40869669 957548244 926883957 809088734 932913150 570420394 309996399 445865201 515589813 282164355 782803324 734724911 227005206 955223445 137638034 335796563 908339354 686074346 532294558 335611260 496512133 788866085 628269266 952642872 644509483 705181278 764789363 222551925 760793291 170158293 942993908 107184657 157401135 232255029 981192528 740170795 350163554 638851256 579640483 448623509 293776343 866608378 799198673 27323658 973741645 126474292 601336309 460964411 542975243 21312204 828328549 764637651 28706369 880741391 158865221 268397162 67800277 759429653 214049397 66681866 475675787 259871076 771904941 724131311 538668433 13511603 90233057 400839170 748823143 70839457 536134447 607026801 671895982 498994748 516998213 858606387 215713443 612566591 960732214 236059687 468760821 814104333 223239658 884484410 555478508 327412209 409622980 170314862 64288307 213637486 562370554 576589087 734963380 321351352 937762744 332313725 150911287 42994526 353435339 424013245 848425259 230048149 872772815 316167735 148702055 314031021 142779745 342650967 342183642 957917482 701231589 907380146 599231069 656222350 2725295 34112589 53985106 171767834 125971467 480152282 98782753 174515724 931229887 986937200 765997547 502343168 585010031 653684586 426610517 558760244 127381347 360796626 21882786 916824901 983211854 6673949 98198470 144155691 479022183 138761875 431296295 675568367 200736274 991436574 381646579 847327723 821264051 505872122 402116555 272198056 361146432 234157176 507578098 588009371 109119364 138237112 271111194 817832052 618252890 855201894 886749828 393893271 416913216 254035986 387224533 165334398 208743150 304611655 840476398 171569817 744312673 381540711 247135111 946060503 571874116 475528832 370545057 616546810 908130169 499079786 605410786 256626599 101803018 517107045 742027463 354491838 117789934 875789485 485444246 455479057 751815995 505153460 286430589 723540626 268525802 85103511 800823991 808561543 819745505 293716796 930871959 434681937 479507609 403868684 571559114 112873327 57763164 363720183 812547033 556885549 273390291 549986267 781911817 598009145 180393609 668798842 98478026 705353933 646138987 749968384 320883983 354647915 282309968 792280901 878492144 273167757 764627924 434388798 380081244 569615039 640958588 501993038 711656044 410635470 560259514 402529487 825571482 452131987 630731727 216322051 633180269 902684172 18433680 773524711 508922583 763146323 794246374 566127984 182365591 67677938 857955549 383096184 290313379 654021146 855491496 621423205 547410503 55127010 319993648 990778643 431518578 490117891 265882565 555752121 624906165 717874871 46496688 309684835 518766274 826334105 752758603 749271106 47355694 505576020 271187014 110640365 533084043 379716901 822558555 926251767 666149834 107021966 390056765 641169798 987247449 696230729 602901626 161421891 222683238 866290486 371833511 465311750 308498682 610605855 891911784 599691628 770238113 335767675 844458036 384124567 733336633 395463408 335760082 699544386 858658636 149823683 803100454 206428906 762280583 13745384 797977275 193473250 996457610 386407297 279953971 25347719 95409480 450038917 654159299 33191471 481124612 121698629 810079575 459042133 392840822 126498031 835366352 17546028 670649139 435876386 733129112 676376381 674706158 452960635 141129361 326908316 939757671 500215648 45012586 941973539 713791392 247320785 899263182 713781716 525922762 897255773 909836968 301105543 613473311 500959734 735364360 40439934 286273572 811729769 314348067 926670572 976461057 447514087 123503103 836621026 811082514 184797527 763509501 856873614 479340207 12430753 422602279 87144327 796646682 1121621 170571198 790479353 775813346 142249165 524455261 503032608 40881113 826640849 390082044 572160442 618847738 337252555 24609875 753470779 51528992 270757506 221988790 46071196 866685996 522798121 982301394 198974492 128522400 299381614 541449830 897178864 944143121 111740518 206133026 36110718 233100841 990219179 502029328 767898284 721676963 748950340 533963170 303075920 913085836 752889256 401102326 137644692 895780756 307831533 444699367 852292784 414641295 854092139 505434478 742189643 422860213 345582654 562181860 608862843 5610155 888716966 342208092 311681283 368273844 343770790 490171252 559150280 49736804 978625058 769565360 7737604 728293276 190397255 789012738 288156470 206650733 252362545 644262825 268115312 194223549 104966735 444345932 256075676 71120523 289347623 453511156 576640545 180499872 708960299 724282400 814930391 165304757 145062926 797574207 637947149 955702554 774702012 986160062 370967825 680201130 349792247 177958707 250802374 410584654 748808693 144076574 391752571 934295788 494998598 481008893 915726447 206624706 82087599 921243506 972707545 413881785 535297102 325846337 48443666 911692385 885976947 103856 901157815 947262835 912091882 398855711 442886404 683176229 766664607 65689700 589474256 975080167 784095677 714167884 142215962 546655570 581847956 824022584 816860768 868167499 823764413 211367050 725444335 380862393 577552172 429547208 797652563 738678885 343688702 402257710 743248851 399612376 994007882 719949684 22877764 629439639 704684033 346335467 179483593 685796610 567711468 584807163 258914399 691765108 957387478 153763060 929026465 194784588 776153652 878204854 56620618 129070212 517504722 126115406 222747356 469630350 17974708 307394240 873008061 579681999 69959308 568855705 185242777 165082506 722967010 253361080 601635021 546211107 932061452 174972781 133235627 598561916 313232251 161217484 101838995 710706082 218020199 1083229 369070099 101269726 128476757 425319727 66104986 120751696 478399465 490285031 903182316 723657083 489823062 428922114 407136918 827367845 449343221 921538451 326907259 558467318 987748758 258652987 146449067 147494948 857286801 101681845 264213489 238642144 714603704 700439464 931201494 276357232 93226111 702367585 127269645 889609465 429557002 604624493 725675202 560372694 756264425 903658362 125281071 75781714 785604708 128021610 775764596 249428243 828230554 257537022 832744577 225608697 357793717 794931880 200898862 657937 724644031 260178381 954338502 588097776 651203559 823008613 512682087 407421591 835900400 561809655 564391074 324620071 481714228 241451662 991982162 50809108 429459664 284221081 465955649 680862653 278700294 60301716 195525496 226800706 821641137 113661819 344136781 709677424 766947933 773646704 391455147 332946202 934168838 158488302 158000511 251885567 443218856 685799708 629247170 418871822 920893243 143087321 547330026 375724088 914510357 923671977 483892146 332013891 33627135 227851963 328798345 835794359 924169491 943920836 900201398 1288258 512657352 724550377 190461335 90200898 750137409 255623343 679337246 415297419 514468391 930002373 732512915 832581358 34147820 791346801 770431992 556104143 127884266 179185950 903394649 122644321 91322724 57711192 205325471 187127626 918248366 403655436 194860231 7323154 967006916 842075377 206900511 818982433 303236234 10148692 368599311 315840422 820745574 560219317 351209603 564840660 649006162 874628110 686546532 148934192 613644639 163310159 125329237 108410078 686245059 301089193 290854419 867916958 248090544 758045812 547145374 31284038 990400188 938554678 489458931 853582265 372567379 746068061 843321227 416231062 534049178 260088089 397444711 821344257 588428849 720243014 573857839 795076531 276147536 890063980 522130254 991994869 370938126 94215909 988070072 932070246 799404781 550793120 655426976 446864187 838520081 53983284 178993898 893803471 169425587 132235167 808946495 127433737 178299909 929344130 140962461 820085219 865473875 556253649 710632803 755560756 240776382 507349003 402467389 366485019 431724949 747364163 308706354 675094308 572824766 850966126 917310859 326411780 266974188 856895878 858288796 328053625 444728044 193280099 381894031 142420779 678921090 985962242 508782776 53061464 865190845 519734743 253082419 96020238 188875147 348891396 666566465 795449525 248971859 541001472 254567093 355543729 497214888 4009524 295983055 234721056 445981303 456151047 727267251 613323631 620426158 43464514 210328090 947378130 201407043 640380215 485844502 308722681 710604607 767160074 837469142 424520768 612017461 694846378 434269919 913721601 127924466 156619007 592995797 273931043 875741723 894353164 51710815 499107604 432539038 603486785 107085449 552665539 977341663 998301828 136230236 885911412 661321472 399043318 646990202 38750423 308696256 433195236 672732508 154180197 48615412 529695653 50734238 920319534 711207648 609518276 879516633 764298304 812847855 27575683 120669401 396773909 679963185 533342024 781383538 315271813 580074293 833671609 600644219 3389228 246420233 766520210 825114433 656550095 211988066 372782418 792719023 213446851 387143082 122042932 817112135 395892323 799217355 392047982 767732556 515486360 42150853 260499691 642517955 637633974 40581565 183300630 567343527 8772267 828074581 784217278 485874932 502165514 993878572 351738997 740740689 901481577 147878092 684405736 300536153 698742524 153053294 18043798 984925066 910916640 654349919 287873392 934182163 450228279 592342845 503354740 871035972 422244162 795669399 987369936 504167057 372649473 301091910 676736853 452151635 828064965 714831373 487106234 396098211 32247564 181953528 551344528 690650442 162083192 295742836 223588972 661339574 624064276 700474413 258491133 821543626 527070591 624733790 666159962 772380451 981451274 707598304 342629853 85392765 294025785 273244250 532753792 878420916 355655391 770538088 82276331 29278438 869901246 355705261 101589053 23329503 480394718 972153039 642827289 609112181 846456693 743773241 641755714 31225804 80715471 543662418 955968327 667652949 721953012 385045584 422632208 715445302 710349707 775224348 295441487 306204665 321691229 292982570 530405877 183786434 953407268 123417628 721872941 995962742 263885804 554195532 961141107 906137941 807430290 192500713 556151285 909940929 795579868 173708107 176153169 100672866 25700564 998131828 240544972 969537341 911393932 710780319 877044654 730145936 889098434 319977904 773590517 842629697 103152283 928760477 370566604 942309896 545933672 404903487 234104474 174437983 399806699 89562583 730445161 416203955 294168670 216688857 338272441 632189031 755049054 396751858 665365431 936516895 357225032 499630495 907104566 992257528 970873928 814992737 287131329 495951479 2092748 558587123 876802266 293886453 418082814 59953770 625420921 92901534 702713808 47696113 868173042 180170782 668743771 706239128 249027407 570005229 545623082 971388757 680708692 72816670 566880712 776733527 347078894 254717032 962969350 344475035 159007284 871877895 865143881 121002398 458845849 443393851 637446667 364771276 652675748 677205205 554336582 164305558 875062781 121156190 301670276 896787901 34069562 909112909 29755132 422239146 580017091 610173348 384389970 810431915 223684001 526474097 662423747 213172171 365000831 646317741 933599269 369310768 199646544 984835726 494012476 496231601 760182508 212048337 726292209 192461670 916958042 208563239 936579360 557450541 576177362 972253413 919743674 124838620 839734977 447876526 23556652 392815635 846572005 734646061 91428108 520903414 358885936 895505415 642599418 809046925 245293437 266734106 204517867 135258191 924704770 391682969 233661796 337986819 283436616 481990720 39554259 139032975 677503007 748522535 48851939 54330173 313534225 611558311 315463581 270656552 21022670 360716657 17329604 660711322 814181666 601400215 575192715 430740018 155660126 744340570 845163245 549494731 228463220 880017772 480352357 77348916 661592799 769712597 561159406 571991645 236955640 838142788 636701138 218343991 336278767 197248052 142830919 966899656 86173106 395534819 474695064 459328235 156643637 891002147 358704190 603387160 518285067 349991628 352738244 619657667 510891622 167896586 575938233 625579025 902967776 951016173 644607783 528554372 552414865 435110681 773781413 890633626 231651944 691642707 491115027 578684805 47681648 172090311 957372847 659725832 964925282 450400777 943561990 884358196 777041077 938127416 374400233 25566231 424121466 419961477 615324426 905025348 638827736 161882707 218709418 203875702 449064018 838933712 182391505 453254487 682630710 899866524 174458582 246831672 636154276 599064812 419679881 214302087 390225129 971026961 945128685 313769881 545976094 93330994 16264626 573624863 897792885 703794999 112130551 633196327 757950028 60237472 662020063 939971015 22699840 551362181 25766861 244409820 349969715 276429461 904982595 791996553 952947104 673636664 949072998 490677324 219517535 170573286 437151417 115097821 850845427 369737726 535799444 486454690 227867086 334919554 242720134 890450212 591690583 872932920 709563507 466840980 686688636 250446100 333247143 842796211 961280706 616056788 86897306 51790186 116318597 691932416 949455702 617828523 672637183 142999669 852148602 683307631 307478325 15099590 160236969 886824259 189532005 734885925 580549774 316806493 171494860 628932313 740750216 665719977 990774230 363422091 15553085 984162374 613392962 163416991 481393123 603648701 198357692 113043401 425132834 498034733 111603434 215600775 635220712 322006641 124175197 910915775 541449078 390349630 808943121 618200019 829360327 339245607 174486130 274380041 627339918 410553389 682541858 825922684 40130400 401716413 171391426 147108829 728599401 707295300 930075816 570593045 180008326 167594507 43594097 203350102 670738724 114621276 767710385 459483616 565782417 724239857 259783335 657032726 970349330 813695095 815073483 331302943 650119548 746848158 943985664 889771376 101535839 944910896 86717638 801124100 497907752 994101696 684537887 769853976 332234020 696115024 602580078 846397113 360574345 331017515 445410837 198808352 926999985 602263127 30788616 4039944 552799087 660016367 34828912 408038858 962585915 526881978 481101541 59228778 998356753 429133727 194856644 947060197 948532685 745117743 877996512 719416905 788460640 904161032 137257320 623965974 909523806 1675572 213663649 285254064 322500084 162498235 167499511 899952909 723195918 557874128 78177844 233737108 534509423 2632783 459614750 143043989 555522513 426017663 439341892 324092540 369647529 791400522 424008392 58488523 974906490 2589965 630227698 84622327 281388222 268893559 313776378 949687897 425177445 662178609 161566573 723154814 16618153 491443401 98422414 239073379 79785407 36209093 689473757 286586130 385984792 282687043 74489511 396521719 964706084 193980426 847764504 22556047 991247894 596754678 952161308 125359147 432386199 217533953 37904950 407044289 103372184 769075180 876500877 127697091 525355703 836769599 333140948 719375522 245713419 962406386 540572282 15468419 589695945 997036936 89964719 745568864 214829417 462751614 205787394 569221513 487070112 963485139 101657801 499112238 954725302 54032451 95812517 986933044 437812480 723502960 804597276 772016823 601773117 433286505 734856023 716732275 740785730 518077463 481912326 924951065 748707590 533485106 580740871 438697937 308272314 715103513 639627249 62790290 778737200 290816465 24676299 774459877 766641347 609206733 157347156 100665160 229591403 336889679 600137365 552900603 947630252 491320041 310633222 669437425 767835047 595416882 654295553 25781595 830991530 66257845 600413195 112963040 925291592 706327723 547623372 159366687 378318363 944623478 410609894 108533881 131690359 579070867 475933959 583982510 361284632 705170890 702871903 292935899 190864803 444028088 539379279 404315255 83134858 769125625 387707158 357326721 50673323 782786182 376554171 526699471 270711559 46425201 866815981 143029640 959576191 351608719 662200940 84466106 649248205 475401432 511647017 473644945 587446881 871864878 846323261 36347711 335599808 11969421 442194435 210421503 476583324 701720741 132963466 277446180 148516804 651788407 921990443 25329798 524038125 802352611 197930619 432885875 588445235 987898390 489073630 920557798 453802839 332061540 976743322 271864998 32252872 634781030 777665057 815307204 274558569 700095667 288422998 581763047 561345644 131516369 692942665 447945497 942271868 788406064 550874497 95664846 34696866 153796275 845390812 408603270 872450768 131787061 405563892 953265414 350642937 950161974 639748734 633097212 279450287 39530996 632243556 576329683 732103119 260981060 736696740 309509379 274518328 510769591 640789824 721198138 198824983 485052112 890074847 774438110 547317052 916793303 356285840 89419365 399534298 870103620 201023196 578663173 165006202 719069317 37428495 10665360 82228958 821301348 477326896 324570657 634977235 115202101 231894407 241516445 457314426 498680433 402205838 613784764 225950037 97957169 360623517 651912333 375830540 639204832 786672213 58591054 527036875 618376465 12354600 786517344 668387299 454324730 81619617 513637568 351663438 356368512 667898406 989114191 29038815 998473684 939393034 984248766 519503396 623601184 710758710 364927445 89170238 353157478 771294626 98597010 14062673 952002780 208025471 997156424 603640458 969891247 644469624 373346582 999878339 912177639 601526834 820500203 189849800 264232623 936897936 694353869 488092277 338190057 680172996 530814036 442124470 92454692 744936421 562003222 418310492 600781189 499178390 594055740 810276310 613409555 120724914 130611769 993500997 314710490 617834733 272868504 287633157 686458723 325347644 79841025 659758993 951400732 603015157 745241360 829931428 511502806 143258665 241973743 819585267 744904587 476473973 460108593 337523212 748996503 786920863 496386226 93650954 851401495 505113728 27401465 814796427 311472805 799332232 991481314 218120965 356026725 457459645 166978874 33398528 961265652 35595133 618956081 944961571 838305940 766431627 38403179 69866259 531320155 424980788 128355703 150308632 758311089 713968839 351232006 114245096 873452931 280180159 347138044 73876319 996135156 298576967 897897803 667233398 571668976 173040614 860310967 203466256 510843670 984319945 218771819 439310451 437728710 946642149 688657196 273286979 285218571 852019269 737977690 769985481 907598825 422345608 581512014 465736499 665466545 503025206 631198009 258695693 447227388 52787732 337583377 314167975 107488523 920532387 583561573 681441933 375146533 293168473 794988469 510063650 470355831 79784188 741640836 973421080 268926681 544462093 887434613 107816198 392511981 924264335 793944869 416963897 391371428 797442692 65114833 322474486 646250386 597470275 923835961 848092814 552580278 803181712 907662988 479890195 892349668 981894516 308685679 650371079 984986521 438407503 374420962 25666226 440597916 963691730 376842553 443818163 37672014 998530156 946268303 540992971 414316847 72693012 796099208 992731935 952681523 783500219 309938323 746620907 293912591 109083076 184922216 976724713 402718948 125480321 36079965 226494898 441039809 956186711 539828184 246594501 935812464 871713837 243535890 474344260 889891432 322689943 144130214 256637602 48074847 981216348 170659111 538939456 673322045 278154947 734509046 528976438 56755636 776286811 157470380 338363627 115598399 464085907 324079104 113713039 827021249 660274869 796639942 473745206 35994658 320706779 400238479 908561071 845308577 63944462 689304883 518210385 69943872 561698719 540430993 890785397 214114810 5106364 196356398 955026999 233226031 33638680 84928775 501270664 584108856 683561036 554096316 57829463 590638625 278805915 233864339 546702849 940541529 564229923 74819169 676573920 650112101 925255757 714069825 255617301 582594027 925329823 151815949 306561967 59079516 169435287 336988441 493289429 687122574 666096311 258671268 770141700 644345206 916874581 116180141 64193114 491375330 888804988 8688449 783295423 248465426 213316333 837245989 917418708 912643577 115931720 107046566 816908626 97401272 146208705 496589608 732293341 94972779 355706193 128222477 370488942 23480225 230885179 144373961 371991056 755426501 439986313 396081845 784681645 761012294 91131887 998269659 541685258 907469734 537829302 47179719 693506982 280734491 546714238 44122889 550609936 483059921 131933116 888238533 519954291 778173350 771469856 313864059 379268636 109801700 119592095 162342312 402112073 745335569 826926934 290093733 86071766 256468342 668945774 583871976 546741392 251325856 451187332 951009224 857480914 472171485 873113469 377438206 546309746 588794789 384876689 619082175 353519248 138605105 828170221 122422529 335089919 4545479 152649221 664396016 874549946 166798807 734686475 320441687 88846757 979870287 205782807 385127304 892164612 587039933 25568368 754942644 692890233 226349512 984909226 577327459 345804122 682697116 81625947 725785885 409999299 481766015 980573538 659917920 46854413 956642131 670968685 286040135 975317753 393764422 566316223 237093415 577581811 466444869 5634543 484518868 662586501 874744738 682635565 367954623 911286289 147827754 14560974 331183159 189681944 667180553 930737622 501498112 301922889 966583895 234802475 951293983 951788964 349448088 557196877 857594221 120801181 675569709 88988185 193065502 649133918 295021944 787979604 38218489 387266922 678372294 698150288 285359889 8430676 917237726 675722551 196978911 409801001 247667244 679712964 599566866 720328087 898047774 266494762 800162639 992795326 681711522 987309008 166517793 884215319 612674392 559537060 850027404 428121374 52123371 668945796 335328347 60333082 108146032 170418676 420147297 551255178 839376107 179460856 521007093 708969014 504887524 830785438 595091658 878266990 37117122 935362471 428363562 835567214 610980069 289795525 830019643 727328115 869409555 983740904 799452066 939240091 779655467 234008307 926403581 920538522 61155728 656687100 247850864 297715765 543977772 633277551 356830153 284829888 420901081 534655026 498866270 506276061 49280081 522747892 37142316 61967321 141703780 750733676 813026422 997169929 758293594 145809762 948292359 350510826 607850626 151826796 199377536 441441298 703888961 552945541 728733179 40300670 724859718 147951474 722260711 47426554 876049037 251486721 691727908 281128201 860145584 312160483 437997532 203435446 481973408 950272095 122177058 54653286 451497837 565047903 135716541 849627248 791283635 438462728 249623779 252673289 429724125 400302175 646468420 527980258 318234157 658976154 204918648 203815756 821291669 69794010 922386607 801156081 306994610 385324832 186182510 344648638 198881604 480771272 571400828 412503168 405399101 535062534 172621712 679633223 342606688 384462546 42299092 136342920 300423919 656765502 328119999 124149418 723748822 597386953 654015940 70245071 869037605 956694856 331564745 431180249 805164187 496291813 845275642 759495613 567534637 502299373 743053235 882930802 75996328 221135130 653374398 9970906 568671676 474675154 438057185 53383301 412366384 74176568 752821228 586872860 148176148 172000687 231939437 424668053 197418600 71545034 350285459 801089995 41030460 802377879 729267406 670700013 818462855 12372879 85989984 271259592 733976263 625042119 617556950 902366711 157096076 845919979 971797107 808197596 504233258 672491397 966175390 607725553 281258676 177073336 560963980 784514843 699405610 462754797 722452002 178409908 665655553 852880011 642089130 286287819 335662060 542106557 882252507 551268395 18249796 522687034 618570789 818948754 35103066 200285250 724912944 483036620 730597576 575456660 387725146 13107390 896425381 512433788 745218458 319257288 146852806 626641870 547045323 37447509 226157422 192038991 768978490 277527731 747742688 64286340 698280784 931681458 286486863 492606345 180521058 613301408 515190012 241729975 99867274 210482721 430498302 256134701 858941250 897613189 667967777 931445171 519336741 75230872 130444064 813395605 404202575 153109680 268231418 305145908 199118861 792248458 294960433 953695994 598753748 398481248 911003722 931265247 948882305 277507485 974695444 924494397 76547346 582115352 233692129 313457659 286420534 330697636 917995362 275050028 891284760 124844400 909222668 579383267 485680880 488962835 906001982 974620984 995952576 628928285 876330829 535252967 595762726 192345367 351221762 960665853 832133450 629371781 136900478 241891132 878585168 32338537 713331938 34487576 626430871 455216737 35769240 14578030 301259530 150239519 881538907 762814210 57609715 599994637 574340116 532908520 267038055 474104246 87642040 721607046 573093254 929607579 386835294 622662065 359270203 62418628 891262678 144375208 818768567 953083491 93651568 188583654 369091613 120734164 524461123 787117879 689865264 746443149 271904304 790828935 996448165 676855839 256396700 591130043 549696121 376432919 175649904 721019369 434329510 320890123 727519693 858396353 802377182 401265585 224279131 771173485 246978846 6528 787927822 630638636 816548058 185726161 118773826 498911029 836354054 854081781 577735738 808837655 10359200 551373047 551460981 796881211 899126964 244474519 323854133 745824886 283979553 490709601 488725399 206905432 298155273 402939004 650147229 851559375 763160170 232995022 760027909 331248072 52184376 130872973 3343933 183060469 238842013 748772561 664423358 425472393 728111550 968979243 849560754 231864721 326406763 216289928 931852321 22180252 919336819 975972518 381399371 910513221 245876804 521770986 973316981 677491622 839429383 538351651 761076959 616721372 728123515 950646204 918055940 846193240 869585717 386414441 844366638 803735970 501346567 903335044 656120256 57285975 928085231 979309918 192041238 62810547 297647538 670664052 450070761 578018828 504942591 145999342 68316758 932556809 106659430 375671284 269421626 568749604 87391312 245396236 672652877 108724615 58896081 374048963 179704649 676705880 394048237 198162536 94990328 348627643 418366740 691943607 178057072 456011463 120776054 923262499 281145303 914506023 84969727 420661174 663318841 247905944 586847589 157528323 365954710 786682412 986753708 469468578 494536991 836632409 978914434 157254589 873850430 458893250 795362419 643091262 834982860 325714835 849690251 297904030 111417295 944634723 155357038 738715003 966077746 919671892 101368109 588340893 342713293 721454019 467091557 947831680 126367505 213651233 628332222 586078996 776974792 791920483 720927907 90361991 767229491 326364097 494627067 212206922 665741884 900999950 827518453 751363813 337403506 992051560 883598342 323741014 913839850 116914746 2760180 61399932 974355492 843920594 499911186 27864282 365977290 384208581 965536657 629071222 434425015 607741280 793369585 890232157 716832750 253337114 499987273 903005536 401000913 369256150 177043309 124610495 576177916 733631607 913239989 442123590 941940768 180333500 639422834 741934443 836857556 662837589 840287905 276231977 971799498 346414262 355269140 108621761 930459662 302878181 779852527 86443438 712097871 394113458 490032635 672141835 493468357 659047482 296678892 912489339 562093795 433296707 64090719 183350847 255964686 321690382 721382066 838388738 650975449 379284809 160606637 72617257 889602602 644302600 192102022 944431369 184121333 100558825 39746841 918904724 996912006 388518623 151200466 279690311 167115169 921340466 835826315 750541717 471535061 964143808 269495711 669001525 486791807 557297239 923345536 668799593 112575303 460934060 422687929 895152632 664221702 254692491 347696011 872797747 784391139 372955986 542620926 831990416 967053493 808188686 6648114 477002446 932066003 404656640 908142194 556913016 484720243 360440016 907453232 612989735 7589093 239166238 94447914 836803952 541881707 261997665 949046560 816955575 303627215 312455853 382374584 477873135 952007104 413375907 135656027 56266490 967264385 638485603 606299104 955633245 377227284 813000179 617597892 269670774 298141978 789219325 39658772 261314641 353238641 395043701 45049018 401318428 614636679 8294410 718628582 481548931 278437070 52742354 517293468 84889188 118591101 696543663 37441538 908609428 878439516 130961656 822919053 804563739 209999452 598692247 936741764 356561550 169662219 493469362 742197948 612452475 604174336 311906658 355522452 945618582 600626643 664018006 349932185 743313082 734850143 493601805 537686667 138172233 639074617 608652389 366524567 72572751 20476848 678169327 471004562 111032644 341429008 306797356 267051619 288932278 121183706 179476271 927442281 636582705 289251635 979267289 856552574 776825710 427656831 508325652 741786819 188165823 546547322 166212376 823669857 413493882 216142949 253136522 940732029 159398831 329593257 692587095 536478712 508369702 923792759 865607506 278991098 950261995 338328758 371948364 411601670 180255519 182099131 764252215 457714651 137589672 521998628 716660654 938219466 882799444 119664592 898413982 423047710 7849031 230624682 925986300 694096162 902746866 22784336 374516541 357627946 55152465 473141830 845314094 887934124 875361401 222776162 529071506 365245980 934337618 23233650 777541382 300989048 565102170 288151411 354507785 142722478 926140382 603848074 31765953 52757491 901174080 693712331 146890165 93688196 21458783 476899442 766783329 867053427 926197440 964937061 948208274 195864186 748564789 494617048 129016591 904880370 349839805 165050124 872840995 567682366 517156653 74220631 802682447 234293342 853995170 251288393 861173946 196302573 691473413 302646461 393739448 794728649 271087350 422604443 880680454 964977061 581837651 444558267 222376069 249908791 965976549 685985402 6764547 125386450 643944575 774506976 188173086 304879898 570041165 250343872 274916304 463809880 386336839 246055685 532957221 240541492 214532615 930200650 506466167 366805248 800314264 61746676 260621179 178796370 481165337 768511623 606794148 259393297 526461474 332813174 758001086 566008457 398890121 844556488 93819156 79859846 85020392 151259579 490764467 305532052 753573043 282991794 765954971 178479776 184552746 324427657 645477345 314066497 144908977 378135372 831902604 861980881 778505831 408221008 654948321 967856968 522649956 541776637 420168894 402866940 593537009 517931482 951833793 184940722 238487851 628142573 684561085 285289357 434313563 768894359 714274976 960425952 687954295 860248430 475437497 866990403 668993032 565854607 980532935 919238276 4465019 350837438 650663437 91174159 580435270 801349902 780434009 599534306 930197312 61024261 711626629 142125408 309262795 542649218 245409736 399602721 805986888 971257831 695586414 633570907 312089143 872591902 598250595 944671542 893188626 701506858 507023447 241737796 193301656 9200727 142868920 456172969 718636854 405635276 377669995 238366782 878324479 585895468 889318786 197907246 228048906 302318488 63136380 532509014 96279099 242143835 156439666 963859443 298875069 345845368 38637097 800544999 477605736 617373778 347146778 233603109 808069326 739639022 288698540 189484641 982704251 102673326 490293053 655424860 437151427 429282644 44228229 622784641 352416898 683244565 943071801 420153317 573017714 22175245 953745179 596705279 150682354 766483095 607928806 669557154 984154329 762381540 565329761 765507524 311161961 78649576 189464052 572526228 741538408 667556728 225294784 261879830 131098136 586784357 203098451 887085735 749108076 311553390 225187472 331470609 165645939 736437270 753990876 441701816 583424813 841022511 335140447 135850294 50653392 248391309 95040030 767885490 140641278 183083173 480576054 606945957 809814973 895438188 208831488 206948950 642756272 615317362 934562435 393954496 991966961 840649972 894078769 439411996 755796848 730850610 65584925 995565984 968190430 671937397 359042575 780679403 172819617 49307508 631470082 568326621 398832247 131129233 767517935 290506991 132291134 113727715 355245477 888469162 79191245 4948988 383398837 273126953 29195733 676394496 349398775 172915269 231618295 597158148 109561458 951576223 516086730 108751422 293377588 435678361 50269155 163723311 984436444 685723297 764851261 682575470 461346788 448458200 84848294 741406465 882264188 838741783 21578801 476291619 601006663 118581767 65557236 437463969 302827998 304792997 214656518 456471407 838486962 635064899 461164262 83264889 202327374 908386692 513930641 243086900 394696295 937394848 462759543 814867490 823151531 925067039 78267866 743504741 306803273 819070488 961538382 695326036 502073325 928102755 744974170 780482599 404134757 20954700 467521170 616198024 628217710 151906820 308991287 166009356 850827881 201242365 519666526 137941212 604728807 57881701 796066215 949467194 680646465 749207503 157583590 714530429 377257541 786590528 229096859 547365525 272787970 317090485 62767128 181982226 557320581 541511190 605368307 44095565 518079974 830076044 934329029 599782001 979773075 165127098 176222677 749671467 529225889 876766488 90718788 575822628 760735244 688239954 474795068 537123715 594954791 24226598 630678425 507502901 892333159 5160853 735356911 342082582 773362888 825347056 277379779 631146553 384092748 109749575 724166168 361251568 885332132 97143390 818563456 978154536 859660622 107861612 6592709 356343412 720536020 972463069 946942271 149503734 303838875 291721980 266553017 782093015 250714441 583667974 284974461 90602011 788917328 52967828 523412763 332787714 305236525 425897253 560325394 999474774 991191563 591472983 887588177 295754212 861627232 654433732 983077863 972534801 340431528 888967011 84516491 800926160 833282542 391599215 566231702 185314659 752496419 726390068 601369667 438721260 202683497 220625697 849657084 515796302 867883547 567805918 792017177 878110361 652888157 428439828 384195754 605923088 857298627 719937042 352184765 977595195 554085585 772905023 900864881 680923215 233211953 333315608 609650188 490462635 579606266 531778039 218744071 385884887 225442710 944943023 861217823 720255113 79374865 182651447 21846388 569266275 352168394 121237485 55625603 724464589 372142977 578631352 310161732 816140275 811965018 778621380 580764163 599209320 164778111 22595292 248476303 354452313 420577623 196941530 851192337 824612370 914937449 365498775 285735591 431973731 743096048 409908796 476844537 420145650 564362579 934450097 10950005 611674389 474282762 232615250 203072448 806475771 173115029 633228242 439524352 897601814 222301013 170994571 366393644 231801005 792443327 378600229 538879792 267866778 639004958 755977309 651620821 164073277 896027069 555957167 767514515 101334616 189276568 159965978 379510097 860845770 341470710 877945279 469679307 468073621 748531273 188376388 680353676 197292317 411919035 189123789 857959667 400186350 812429666 465294016 972154445 352116068 159205969 185632874 784115191 798382351 886435125 410204830 424413175 346714889 46071958 811963285 140928631 145207791 455383245 604847497 772292862 428886147 557760383 966965115 944850872 661282486 517639399 760786556 128081561 941569055 125184759 748089511 964017842 409786901 965753462 254915080 251894835 551990717 723252174 109150613 319779621 408585979 504235779 894093936 100737198 49598102 625716392 978606358 956213282 716575441 453879539 429877747 342567730 54855234 333758449 959086450 987384035 307753949 569102770 20879958 500960095 65689956 18600643 825648938 899369299 29535598 93710317 603190000 512374291 978258952 293748521 702312866 910511737 206191147 939779318 36767744 106881551 142449937 224348981 755578879 63149324 552977122 226449892 720353089 505551616 379196735 234057345 585559583 582386413 465333651 465217186 684726341 776112129 476366474 71228127 479081053 447920224 517987802 694813582 957432468 355579022 620735157 237112141 244412049 987375453 896631812 418452579 627578632 743647652 384882815 954014290 943965422 660342790 969841318 76205784 154794438 844564437 161757805 966256706 566019851 361031813 499466645 913090761 808833457 27316635 519756312 986359444 192684416 302503048 75052794 766090311 112230078 506177215 270953188 593508659 466146171 553683823 2028849 20672707 75986210 274787617 832114995 400074457 727492025 140198137 245780997 513282350 537558051 518023568 55741202 24626176 107317234 658558100 395105447 801735811 520520523 126394313 342722425 730633428 890592411 96153086 292515022 700055381 718800691 464434911 581877021 475570472 63118964 896061286 73844168 926993609 196078663 380980703 248522071 114928806 121493799 512753618 497172149 468798644 483434690 804326587 624174618 661389648 46482422 965909282 125574985 964812938 474746951 398394099 64821653 522173055 732760961 426956256 660334628 480863399 160183368 645299687 924350819 831933854 852423286 397776288 713103326 183277979 487680373 208947410 236365848 354599676 734054682 764943851 815307562 933977363 17504292 955978978 378173961 827469406 462958721 23896991 77321792 998552992 187904385 870508347 971880413 950714805 92571633 503312815 533683325 906111028 80036250 137665700 499367172 858691163 186823591 556446482 721601378 953576665 712999199 310835839 956813580 652258166 48873380 627747926 731746019 675564928 573215910 170701411 688595068 212184266 278566858 697773562 263838773 225129801 757604593 317128417 717827677 705858930 872314730 275727483 573217694 143212963 647302943 786670781 907055468 538937370 921581842 21223053 535541326 857377219 79303071 286910167 505305109 156830586 687989735 239195916 333550696 457548173 997113065 899042540 897876794 12771495 707240322 152032738 676790949 368849904 718614925 401228104 26677098 811733632 379492797 274544613 66150264 421211462 607071513 265674324 778832005 912707236 459524397 603414801 330621735 811439110 759575824 149508420 231376206 432636900 290648265 832132095 730879 590984616 242108964 19923828 576465599 34288164 911231881 667868488 94981469 382531662 479795867 451004782 932923243 919171109 215935643 291854373 625541775 488218289 730726386 380900388 180548569 805431502 85806593 8221064 50267568 151715886 565949064 959709695 281201228 650101268 787687992 151929708 664230517 44674932 64362155 275653892 413231576 224953566 65689776 131895409 818177909 725820173 761399102 183556938 760764143 981702739 738804956 143347297 129344814 267643030 132060845 863970852 944695686 918371626 613226877 793415556 612369826 434532403 629020850 222475272 288587066 621615426 393406775 882267670 641244776 476155099 228099417 253953159 298258357 955570042 531383294 710845724 563027360 324684594 501402838 84184747 988887479 319048772 952231281 813155408 654085858 173913252 518776512 821123269 637647244 72872164 89311078 729976883 415306906 866727777 244221821 741525551 179464796 820716669 369071468 507080655 117020897 34261496 245648506 820273448 724669269 874466662 132765248 77549456 220879826 355878279 901811283 670720484 729069394 414647369 638600831 280803287 489055125 468561027 35453279 923606113 597531185 85045722 518184655 410718236 368624572 839566563 266507753 390469450 493083279 980828234 940366551 649021602 361868185 500411171 220491969 590393483 427069634 647445068 490918909 741403571 89825298 175119361 95724183 952426616 170588915 887675741 591882151 619938354 102240388 427491269 329459483 757982222 449145850 951186636 566479538 374010572 55949443 671151074 952098817 457571245 875524195 489298597 303659719 689756958 74854785 936309761 194202899 545849784 988747577 650162744 822510270 680247044 727939513 806179771 83664887 685293241 190501507 912001633 661522250 74142935 514000786 932815792 654682802 881797264 609539139 990787280 731574463 29049979 683027678 522659391 204842730 121630368 286698523 310237867 190370357 858188324 884585947 700031338 319742091 605166684 785607146 18963315 391780309 442226392 767829082 461033587 999403334 577357961 876418979 391551329 772702622 69941179 239289952 269400500 317477889 573599051 856046290 410439045 418010460 134230970 946291229 532462466 610485836 199203392 157369757 369298260 994827876 122106800 857934199 715535495 222296282 462778975 827661462 989061529 890724442 560949430 464180484 561637023 340869695 354829360 109967107 79982791 329081628 207371081 107267441 676225878 143290113 97071189 971328747 126515763 697683344 622613188 645045346 817699539 807629454 388395320 91744193 904026809 396814649 524761833 551833624 405381481 848349054 634871170 929182212 771041377 752074961 63012332 233210519 293327092 643345907 779762599 595512359 73569281 668870520 507536638 981119262 474598535 838466802 967043515 201348268 258646192 56163988 689343706 994414632 890470303 823152935 386846988 371191107 740464433 816319824 443243286 99218519 197697712 496099644 837148126 212711568 266677833 779374462 687857035 623689227 442710602 617361415 740571953 882944700 541067122 976492514 484117510 722630806 293881916 462512714 528430269 64863096 115424713 812518488 996176177 174870195 499479820 797582353 582965361 650667154 973106237 612779794 638434822 546403343 138384762 770246522 346961512 387685722 504246067 583874393 567590145 561139932 214678309 22486008 999488191 140750061 140404411 972124456 598587069 192631645 570002236 595010336 114168320 465648434 320320184 79987356 584788918 232138902 26841305 307401358 501863184 212992286 328638417 431501505 594481072 985383504 351917601 609730904 407394667 392289537 469637868 384523421 734477632 192920291 519750368 13459643 918739469 48349126 110524550 806864853 671228607 1649423 786246535 684749562 452856790 526131232 182626738 656776578 136217983 458719515 509838827 986054036 982787522 750982526 17476331 891291567 812109606 747477163 627581648 265996183 600821259 346977180 325726177 313181132 129101876 654699797 474610909 217573506 302109710 272400771 856278171 858967571 865434067 206445864 262639899 472719196 39008413 109915367 630994615 695457426 13504546 228940415 965657483 334930751 647951666 825647966 62668478 864252956 819434042 858011393 815126097 114339453 875351437 618227302 115820531 717490226 638996295 42212657 319827858 351983747 335349388 215799583 39421154 765274441 174091614 384499304 622964667 600864513 347369015 783428347 896775161 613178817 960318828 223790739 17096919 312729445 384222392 59702495 706432565 596804263 320067843 654981384 852233380 527164266 439767861 962294899 145548106 723536283 247516371 872742022 687347340 308755428 280131830 984890214 337422020 466871536 230352097 929064270 12812372 724029023 264645168 245367839 403061246 507243777 986557096 14291580 311979862 422651747 5405660 564035807 533178212 341388492 568556092 53540855 80395649 689971841 668311035 370139263 847964316 766843126 710553585 97436474 999606971 491820339 361362918 552089272 921802898 589833269 841495596 853715623 249739123 102091889 521852338 558776149 491619086 922935852 13041375 165107147 233252723 53412207 632597919 195019495 216795022 247589703 83260001 577519896 249913429 568179842 737080249 119668879 375399525 739068142 396822321 896867108 827043586 83701424 637992636 308888871 515552536 965978504 734317262 220120645 80294024 662557819 625406871 759102893 834070603 340217986 791141579 502795561 989085381 358796836 952296845 294913713 624535684 46633051 731910972 227301077 619762040 43076027 753479731 611833648 476331361 519248597 614577087 866691441 736170058 181318489 280872708 332997510 128694972 36873532 932135352 45337543 357353038 136054052 114353936 561590434 81434684 788040672 166552756 814912280 55625454 144783929 474435106 790705203 74411955 353375499 613844776 969545276 494492210 706937674 132829218 701986869 203240183 954823817 353276229 445776894 943925733 624760945 187575797 511617324 393157548 541559313 382427527 977891287 324893878 458803360 698016675 605270633 935887906 741287767 418509155 691277283 638046785 827788508 593709611 389367766 440763400 786057801 262671673 549765509 343022928 542392449 627154778 165915098 448370646 449664787 91475416 973891261 308505465 987729235 74540253 586641199 632778392 989370201 635012946 311460440 845622471 958978964 624258537 166757412 495754666 960046645 122483299 504001380 291376651 142985622 1515063 182935099 979133761 454211435 889573039 995894753 261669555 352536404 177855988 80749703 475617601 695060423 238356252 243308021 413847232 892803491 145660855 753459288 84092663 502167171 136306863 948479406 903234337 808707257 628770236 127732934 809866548 194741051 119120134 747409580 687155648 216433283 511763541 710510644 549309824 621049953 106647917 24984492 718125557 649862145 474798537 750086190 577941969 675642403 943668922 88551113 732074744 536274199 263919633 176794165 10893841 852871632 245469594 471493299 506407726 296215696 315231176 779217709 796514604 734961725 51243873 383912917 308270648 625619290 561496281 600929552 40340900 273062318 150425422 30275742 903544957 860299350 842227004 618637534 484365765 657412886 349942496 806032990 769255322 586745193 345675189 945005056 643030855 493226031 109627277 512207656 227788514 410017037 738755828 211595651 924540232 817195715 771927018 219379090 404164412 347391478 160190620 262732956 450181003 799906026 488469295 329986860 476456809 927597532 664993215 983353737 549770592 517213009 140277492 474655469 433657260 741930099 304473366 608317521 121634919 66417163 962775264 602649597 642117575 639245590 761657679 299185441 989613246 690015723 445275244 626346388 672856555 369462691 398264772 629281696 447046179 372151760 85094715 469157186 921648277 679266640 411592543 377142399 131028027 120145128 951945004 14318407 698005963 361887103 891468257 288731369 725537131 874345972 180027348 621947743 538141154 106709643 109795416 9801285 875696178 781986087 359746994 539054074 23173458 668107711 450157292 738132243 676709353 948840873 403207470 213905785 293546311 658199421 944847067 315668147 680708986 653746899 467294601 658937128 209283236 739128833 928615405 735308987 673044752 348736450 507175408 142478224 494823529 671582848 969789481 268576648 646889751 493751976 996606166 708513454 782507013 45042839 584301225 353504937 56691831 235952263 106724016 534972366 917429826 275241910 813568051 528804826 78034196 656736833 849537465 282283449 748607692 383106645 431205570 674447703 730058266 338359445 281062482 80682160 981846738 659502010 19657228 325446356 635903967 496361755 716851300 39073186 190665319 687349757 477930736 940170332 333221100 301442386 66930606 46264361 679570539 491972189 545857814 394004825 478022111 236496645 456117142 427445046 830947921 634320810 626947642 199783873 329865174 958327478 567472817 388261967 97683487 838282617 271368627 146679125 749674214 880500371 296608298 325677208 243234070 22920214 123991489 41285658 312834920 694981238 674960019 222368923 310893054 138752168 922574294 88071334 779951098 889879861 763681307 130613710 516234022 339626721 689824328 695692549 314431879 537990998 950627390 513403862 134038348 303623068 670269377 750312667 418369572 864064911 879771502 143561458 424727894 771383742 747684367 493836670 584773052 952860194 584778273 668169229 120288010 430577168 897974484 293952240 465655735 900681362 781999485 334946231 380371080 278859790 192381703 575486117 452791469 707516105 411350253 182016130 838592146 258504659 606612818 697340258 605788206 166028001 430044480 330649278 690461073 174881942 729257233 652666114 961634086 782990421 996180797 787155621 987047168 254777876 664716439 366596815 944534665 806510486 720469858 109098603 386113142 95145204 569985709 878283256 210473283 260964589 604405351 235266093 775730013 624389044 917846976 678002744 910895991 771250589 420815816 947585740 423514765 776852511 365931646 756538983 803552343 675092952 861365652 896399699 60511423 999312583 322742234 569613382 718780973 389230496 905599040 678809512 334168305 85240252 885962035 81183138 577616176 57585526 977324945 205556845 143556941 92407669 95888757 286655033 87560133 569197799 738457348 863375814 732568112 988659279 425198354 5528091 615244537 955970461 263924389 965975980 552704679 698771046 507611998 419713663 348740112 588165952 412819775 802578962 337598329 14805502 990695048 656876753 581997815 556201476 232981612 621789913 795262917 275808936 421095662 235281701 86261677 789176903 226205579 260423061 420840358 164228220 598144551 737639521 265345102 348584155 76971748 770866746 994657058 52738146 392101127 183477009 955417597 964841978 349935119 70887247 336942634 965385054 95838960 999323304 239141151 180510774 632328464 765294062 917538039 527544000 960355460 617635113 49469837 291976453 44275619 575501446 804221901 889871890 46288301 409386202 152618740 672371022 765297317 160163660 786104710 615095365 950456665 685395863 187435130 783723433 142517024 633812638 472148449 227031479 648595799 381223854 885545021 979581726 521853318 706382969 568832113 106734435 482146184 460065684 505769915 854851065 848462806 591356540 756518328 353948125 543835811 686736136 704313951 927288089 585639140 902211165 931956981 365521914 570201071 695006849 83223922 678393352 927005209 531682056 659493091 358196942 453027854 296517629 851025242 620160687 567569184 998404640 403896303 241125834 567501046 497981443 188280935 992814164 555744012 719803061 564138696 119933197 511626847 521007092 806398425 497966649 658637749 312290003 285329704 501347218 359280772 305812652 437002089 658642545 1729785 276615695 3191735 977101123 481005729 197230905 145653349 604819239 181173640 475712126 329410365 83912168 436661812 620029714 644136725 814211678 760196724 541177421 826666406 561561267 400922414 587666040 408598495 682875904 251082563 173392561 27984664 714342723 700275818 793482517 290394358 923458699 570712550 370940925 847019149 869643357 229121088 571491980 7467928 72590641 753619427 339381721 289443054 835445970 272897179 947092650 137671611 643851933 525941679 87118186 426489055 354408995 877370511 975743911 396231570 469397608 150917084 570286567 24029095 492632549 639646032 331549074 300783902 340644677 859692616 482309255 779074631 663380278 865524377 940978584 469381470 567138288 537086137 473292765 149272372 60259173 426764583 859492377 566527621 266631623 504799655 18771685 182840243 414284242 908802399 390181765 436791605 765237097 406990580 768222414 935064175 769648718 182036833 630155765 737711641 24504069 646153818 779254155 469910580 232059164 648183181 902458614 573915333 483090548 715951076 785665705 311228875 823656147 68233204 458905559 534391156 206988852 744015910 329408668 636264039 631571497 840378988 668122464 756968989 17853930 449377154 95327966 847687432 364287080 205176832 377914811 634759239 484776574 368355875 786665141 199568623 763008174 424712910 303757500 977262085 315519188 989479696 549301472 937902032 526595803 892601763 236914137 352172374 445549821 661822030 736868861 447593713 181877766 135832875 120201630 877290383 29442141 851766477 728734534 739243281 984350279 232619700 243296902 488344436 11365028 145740927 127930203 586545528 174078290 109133015 674101111 424573901 566508827 828653930 135391818 517534499 652170158 361846476 384045807 626320593 89768907 489961891 920233019 63069534 472691324 90264541 265331739 531810575 411236838 33890990 381017712 399925227 675410432 772386116 348203599 388650346 353322298 166860366 684245979 149477767 950044746 455930501 547938747 951694203 838245226 281813494 862330712 642254328 863805738 322188752 642309841 811877778 262352701 119685806 478496780 819312452 609712275 129157022 935733307 784549512 107768730 268068152 920717800 665693959 561282407 35566844 545457709 618502182 638031360 867580303 836039408 604987793 236275049 302186651 717620156 651009704 419643750 167445834 353806101 471263348 568059899 728519331 527193503 689330620 677652040 784673434 244330295 562731426 611421784 285254250 739354300 814790909 379498621 516947789 290477968 668707315 474471350 897864681 221610182 998294954 732765799 329927219 21843900 776460479 443663907 454583585 111357418 834498903 335392128 903395457 71608495 439360634 631272699 953543641 624124843 135808358 801890479 996287986 436678028 634445905 719204196 405932048 911944343 333206952 435513256 777374528 902236016 205402129 547839161 915472175 67697642 818501012 962348852 316711047 42548768 277315133 140692065 906721995 723877193 936270172 560510792 684008981 274888970 870433452 259968067 821945753 542029433 990807701 695353294 339945782 44863946 91027196 580234724 868621529 898492979 564938813 672383355 802022545 388648539 754754984 881921472 774634282 532650570 446636757 859388178 159656381 467415980 570629898 295367168 897773812 513159872 400113960 922849789 591708401 666714267 328311099 759350187 455661375 989676320 770854847 347492510 485268248 649337526 904356550 505507135 194868538 433028110 91780751 330641226 519462921 531484638 807490030 310225943 652480741 423648110 1449829 940939121 358900575 801674248 172642517 711557868 367707196 134359106 87534870 547999136 113923012 409583563 593502118 703964388 135332726 220067699 86709490 590331293 151971500 120958991 811916775 630867474 868071955 3454922 110872602 830358255 332138083 928713011 23930466 205304831 741807350 72146421 675949961 171103541 708429574 493553792 989997454 907317678 532631590 209639087 209615903 864914242 705794824 541130208 23010246 386174159 421629217 80962266 420835194 759484121 310020381 160953511 564908138 363290159 248821807 374765683 732559988 323811437 115257822 307063261 472423264 906626842 511854412 668024589 804192126 252385774 21469598 463419908 738688064 928378715 707423083 704600672 126958296 488867926 586493176 436942113 563915661 24034677 100858589 307853315 126044282 186070294 107290922 346593849 790842394 908915956 614867417 250191582 672422408 280932328 304981913 140826570 180107355 893054719 670981810 369201180 608483467 378878367 389042214 93215066 801457216 111924447 704170101 767737934 14338601 864866684 26779027 120415139 48273542 859881524 375364747 147829592 726349533 161895542 723236064 187500833 716889658 653005373 746070214 970582568 583928753 229355638 402187452 10011505 971968959 39225892 320840693 270121869 899730272 657974741 82380065 905472330 219630673 313958375 558932658 816403382 879877283 231553793 758486981 620006179 817766067 403360791 374619246 240639004 954669080 871280189 698163718 495733718 41260275 688381561 914108378 596390269 839020178 50210654 378325056 512839850 622464400 740238500 739704868 648605744 525695722 330817164 890742901 27360238 412310054 172851828 18884466 854675790 404668880 929815064 432253968 697995817 268183126 293448032 190565758 660502901 479050418 511333896 284725071 192651770 87146034 135073068 517373970 897060659 341081020 63253118 414687326 767050265 678557865 462815344 546417434 882704830 452622853 285447781 771575227 663330347 517798704 734754009 989649545 554732883 437831239 562452638 296058607 632051875 207177355 504185244 934209645 417025023 985051483 325557221 174943494 447951192 397292028 229228122 144317038 810262221 394561961 641981616 729340080 379393997 354135736 219382187 204285135 940732322 459733036 651640736 237171158 479827999 629082080 228629689 833158051 978403969 61544140 701484155 601057441 854494382 878423661 612462640 11921847 350158518 783270070 970326113 708698990 144196702 102552057 860663335 723120495 679819849 588258546 415710651 382877864 991912580 509168317 53305791 552631517 570790717 25396865 690056493 746533481 58965363 84036861 138509982 415670588 815733595 33738253 288745787 925193904 33859160 505632580 107753546 145673255 775879488 329616573 214420565 821914966 512017637 655764181 508646659 840143425 805316809 869425387 754694027 213016460 43068926 644358100 703662548 866104262 490830950 288592292 997432833 259263032 461923944 186206416 78377270 21976807 949860079 137510274 580565081 525564084 802981392 765468282 703601723 346468958 745688458 116969663 707423300 899980468 23968232 336495745 381850329 765301806 662450130 971361798 183271406 797778015 582377056 853408974 712519091 108550804 296576933 532714381 536677650 255551717 482209114 574957175 364882881 889539183 460698162 381693368 731104309 684641291 789748522 797381487 860865609 414690143 517669129 9092408 115328944 995462321 302514562 280755175 636269948 668915562 620385235 263549469 951634883 604293409 639900064 746894960 254637594 923811438 598372511 702633508 39580932 820880007 185139960 462731349 16749515 994296496 517994204 53636280 116420388 740202754 577204733 661205231 337460610 931182899 696023911 128583266 658406489 394039280 49080254 668563642 118418421 887502625 139851540 201855660 570369108 509429623 495526344 225715691 137917189 612029234 410832138 48867657 663356447 243061678 795995024 613428617 278778158 364718846 913156982 316572377 557112946 148511008 579296990 757198123 452113357 810218484 255789335 920308547 471540138 598251018 633178228 728480832 275421802 444105106 527536484 4492938 896657512 374597361 413577347 922606507 884464643 176311369 560862059 70777053 374134046 190017170 81297904 979335721 406210901 573616819 226582445 147905583 655194480 458420320 962900957 954932312 781891324 775591797 316819660 108468943 61861181 472015779 258595509 344004588 153385092 408908815 62501081 127744044 813350251 966561287 67962492 414484619 139658793 84627308 330512337 403218906 688376657 43746338 947222149 207246544 504153484 763852442 723739212 397938866 622350022 83916530 525299269 258511029 458920110 967268370 272235237 318664928 612897142 646772189 837844312 374526141 456097142 738622849 651173986 106171263 514734056 138445376 878685161 135696203 876874501 813471591 841690216 59735666 912596267 760185042 61188694 516952139 104623272 724690963 59609189 86629474 25059212 913793145 95961636 308068308 424116137 853268208 722067117 205900720 996403538 80362803 167070240 179016345 399940510 728608684 23165505 172818889 166252387 596982321 55069462 528215922 737794264 768701324 338999560 761886761 232371955 946711761 167273322 758150545 200532248 66860564 105141134 216381100 361763371 945999992 358422746 631341012 658575479 546525609 151614219 219975665 520680182 321156813 707954494 3798062 209971901 606631101 153409378 358968116 349149996 638269082 768078245 32159630 209026185 377533682 357117206 581539830 305236284 432792411 663972475 717797409 144689750 51255499 655654023 322048217 491663849 369102920 408525526 371152198 240513255 591082425 521122003 12752669 359074838 648141512 237853783 684706983 991440814 469137243 981514416 118836022 455187435 319196544 298155996 141344889 570804154 834831563 4805079 723289420 297954336 101104382 543308986 69165500 577563751 285400745 586070058 458914018 659155579 408407626 469059812 859773961 482616416 173708323 329733811 99661333 168734978 79153550 478105685 474947244 274833803 422202543 648810161 847184783 192662975 156434131 447992256 339815754 249814869 18345520 677927494 929196430 512160530 627075783 539378834 334413164 341300526 725291206 787108342 223457333 327084494 588758988 418544167 666239874 161423361 612705035 837404004 88838369 508039644 487313818 687481014 68889766 381056421 659709992 798951704 204623641 549248268 469971299 95103727 750589514 123321591 601598018 932902200 700541272 192930415 205259546 652154903 553219137 571327670 123220564 973473447 443612033 861683897 920016998 814489186 866321979 868879936 962960665 36965458 925719147 96249970 618264156 343558057 187269641 995480520 338325962 641616527 872645240 494321827 977723935 749405184 610320848 150874377 543963510 789968759 920670315 385195838 273099872 806210892 875303194 647237645 614242411 626648723 204538800 467710954 956596047 400671323 403825513 605085223 566890902 201411441 574691062 558138677 973652976 497003960 261591917 164355895 193442975 46141519 386651698 16830629 651072725 520529586 126273645 933150355 697370243 237316819 573059703 321749843 80114994 864345816 812441577 712132890 567699403 180980690 423227819 659671573 36974122 692649681 578293233 553955755 883303530 670970573 500928933 696401676 185456384 263707866 760414486 919364340 646557743 985081805 241130313 291315308 54647856 643753422 638967574 156212353 535319137 415366903 379775112 437530527 552417013 993566576 940790067 269795327 382615123 294381033 141344585 891068928 428115165 841753808 910425244 8879151 525813794 157884968 571262170 277569381 335588996 35933450 565749495 68317858 683047243 96074971 362095767 90245673 338399734 852213442 72346492 653202708 385617401 680711877 617258044 872788207 335110089 591871729 540345834 791310726 599568096 379728277 46454740 674077375 347238243 884748402 807929439 916419631 177814209 166523441 191629658 273232978 583533213 686330505 31279259 553848450 910770119 108929706 364207659 557523562 1613260 918279545 59143956 402731067 839005168 484685541 670320793 676395523 731306753 654782481 726460217 473921628 529904387 69573242 428799367 407765172 315566644 631585418 831274011 246200280 540980869 501342771 790368545 455315091 731104597 776241988 886716847 593185196 805201512 381447231 418689373 489365622 445744971 304989598 46671839 106606898 175040626 250500801 158881106 980156045 894098044 323167877 43748773 379096665 933893618 928757074 354942746 247430182 705513164 992390705 625803170 736114721 794689494 962055608 370013539 882359176 165154457 729012032 632264176 374782699 272256565 528202254 683204166 270741619 513668942 723606799 924839731 387484818 267305894 590650537 195518851 143336871 88553110 85679685 657205847 860322037 207951630 167016142 305097617 765923315 353568813 193480657 946131431 971498245 799734022 650574559 839739309 607454956 194241179 476712710 125215543 682731805 406258302 673888105 988932211 147252491 543720885 127935807 449982141 546776234 111740591 386346902 941667198 196803778 932393032 260558973 842629964 877992748 128097424 791651889 870690745 371381080 577173542 302841663 122226153 193353239 590490531 793289806 592139306 462781785 886951163 622732527 686784423 797463906 362155668 928072032 70680537 631415715 808816409 602103239 990309741 62813074 350682756 794119203 204347968 749696925 646729501 540186524 692562779 339347541 986849265 876185340 71621934 335424747 242274939 127853238 501857506 133822236 916186655 593137867 458834363 229403404 426916049 914904793 865136284 729205746 278459867 940747244 33009921 486374568 568460397 435131929 607896834 845109937 307976695 68234036 357831107 566307203 304887302 841805984 118998141 818255575 989907390 287952718 519793405 535769312 797775749 46615902 315663916 235518256 360220025 605247643 788050232 623618321 382378308 688259611 492591315 973925347 871106967 429955871 657581492 560731571 588403213 198360601 127890 646755529 282081413 96871655 824533195 215505786 540559779 175372638 432718224 519105771 806835584 398674171 104264462 932561766 777956591 336046235 508449749 197924371 250480339 468610971 930764640 387316608 589515443 625837073 860876293 583925188 977878919 822112945 339186598 558342642 820696552 827921282 691399899 959060811 659424493 910234227 898709407 430169058 320263329 221588023 601065498 705547431 181543457 714225540 654039509 356436398 970666923 769021515 535863559 891944081 115387707 565778322 723849 921900788 312861683 752573988 307748123 583170511 462489594 735220356 191443788 106405795 727112816 756519061 640616931 267287815 178556694 75987590 304001039 185631497 555217303 154758555 332471140 672314923 880645168 101660773 322288763 384719876 55764167 805498488 107540029 299513968 946277501 67360107 193573935 45276314 381639170 72167103 817413793 354825309 38738184 806306324 943750957 235514460 769431492 368820271 843647805 156144366 661821636 277426066 796977072 447067923 670490056 80411887 308384046 573842548 490018066 978005116 681093350 857661506 820105772 233192171 848345927 357503970 656833308 47310000 473284849 768481233 109587761 974788281 218599847 112312524 324887091 892509869 629876608 972065583 625735250 922622761 568719537 616607014 26849272 283167301 723796503 269208003 600530944 367657402 583335586 23837467 367863606 311359631 645825526 782398550 298241760 58130640 808623081 945386581 334961198 257039076 363754559 129565550 930662268 467772171 514009060 717740729 107141393 241072007 483448762 262746615 445536575 167144890 981046211 291263243 961978591 7670009 217784995 313014400 369800257 855309245 161306268 251227908 340740242 718506965 873725442 623095977 906381263 218665484 489208599 537407907 559201276 541570084 287151693 337517447 878289444 704458556 758604597 579723248 844767745 672994402 350896324 370790618 669533059 389649258 973306065 483013181 219031562 961853643 337063883 180141112 662756140 835130709 550602102 557271440 504540503 262736906 991618338 623298137 188897090 550334145 480008021 64607123 610990669 209489372 836916001 77889555 857751419 551632488 639108246 703185863 792058612 78579145 288031536 177252489 224303871 807972859 901030180 491638131 866704304 315222066 256753612 824376203 614682133 845799782 306032184 923396992 115560225 850405505 395566554 251395300 680596833 817999016 542142141 671179656 68699981 785091512 244490647 851332035 992738090 157172483 181027771 846046974 95184691 167193156 321025266 20103083 446573058 97801765 657131629 241552183 325309049 886536700 426625273 521566764 896002421 969676128 217798339 828081765 376605114 855978347 3986700 272189934 133430510 457438662 947174532 982104771 607544993 127242908 131135571 710174572 606722189 669768123 358789743 747595155 554024671 876128650 395302726 883420192 572531519 140757190 783453184 114139609 460574625 696823041 700863852 395762839 507302475 40793679 621330163 865342436 40480794 602764277 277794672 99689566 206630450 516033252 311183741 829416288 388988155 914459975 904270204 311003377 996304179 232682831 579951261 148122025 779168376 501560602 51284570 397911223 250057382 86688105 738835575 8012164 453912803 584505159 596203532 125324269 567931048 639241414 698726065 792426471 974227358 598065906 241548947 589347230 517330386 782018572 473296428 607950910 443712606 1161748 838692029 696465910 958402165 700621643 963577152 258408286 359309440 420990116 677343428 648051597 402719455 34155860 124948170 982586063 785347340 599882168 719742524 27047220 885699308 247516176 818294020 899158999 370232689 975370732 732306047 648356142 154671658 97115097 749648918 876970981 397020774 208925721 958389868 403415777 423209277 770601489 809253299 433146114 647834395 338547515 914224280 296607977 920480759 901771508 211636459 790810889 96609589 744643521 574565495 41908477 189478830 930741962 23706340 212767762 184025277 662965939 983071483 561623989 413416055 518218010 306664353 585347186 976539379 234583578 700389100 265173165 578418581 846418954 602491985 504676155 964734286 959620457 959126003 970640973 118966296 358247113 323546995 698793076 997453550 125485193 948638112 500324033 149728264 166167876 524151664 946138659 406037786 336661457 735312713 148263294 499763781 151689415 59365912 328119787 474458292 155211179 302552528 899167773 890166134 793380745 874354303 468185804 284065489 698009113 938423365 133615664 893980993 997763870 14479606 379672816 300432987 694326094 70480627 814792403 199824670 870554449 149297118 11642358 951342382 589361373 973303121 414413446 174644378 166308747 647611440 853552764 107540375 818893078 676894524 878359195 674834248 448613681 72403615 331381422 173274463 123635271 633205376 5886476 857979607 631424349 574146728 332649126 298681743 647623548 530020416 236783307 313103152 504647671 345471776 466824292 460214804 907846488 443178644 577728910 120266188 594949458 324325068 817186125 583682708 995197858 462689228 914411289 731460212 268517492 850581419 592027773 725410724 277963591 408950322 396396481 806867567 891132223 414515702 12932742 188700615 17426552 335034913 953138390 456022121 841751363 261127197 629767843 654447829 145311049 662968316 120170555 78503781 424255979 774422045 647301027 569081073 956233508 827926049 181442204 776379701 891089893 314784122 856482042 875596789 496091214 554957981 122282165 533313674 707286816 275729433 27952749 167122597 246448888 937888220 731709408 603409220 252424784 318230650 920026369 609676653 736336789 489869692 871287882 664925466 196153873 46326847 580323978 114191825 130431102 41009482 71004549 473810201 852537258 500755858 529723278 17291918 24993056 345884610 150835840 556305904 240526730 434016342 412817630 777758401 793220142 200972888 294019829 75030563 578342653 477980173 286630731 469592113 480986048 123657069 37535922 739318732 633223112 409016932 424235024 9151512 136199090 982555609 217206182 536343080 105508194 234391551 876119007 146006889 394499358 698822096 414546439 774995985 956412972 569478947 636382419 182429202 507385921 730939825 373838331 762937891 99866284 681163428 560177402 486184695 212156053 316078571 142296151 946973220 843122578 705805737 452672458 792412858 491200520 207703588 276314443 474636042 736208865 49673777 513200646 281530940 89048787 138974875 420779042 592003379 926911951 738796875 309858986 245581771 608161285 624489011 249909768 130356577 51967750 638363430 762362844 899166126 537108111 262758367 943386575 949388763 89551340 189108042 68434460 571590189 68659332 207969108 259444627 848096208 27008287 697793488 853345380 355882488 901374155 831767606 544166773 185325998 49916073 135387567 306651797 619939631 136667415 626489688 838931062 874254077 274890088 80937985 367957044 396016015 333283687 656357915 74292113 292169894 888152258 793331064 467866796 310519459 646478226 221229032 30977146 370647950 5693379 600970118 571443468 874049235 820419773 829332928 856386212 200542368 299919469 687502374 688889879 526643534 967056891 952424691 580217554 939251826 739226139 869494788 367627990 628734435 847601689 51727155 17266348 692061910 719671104 639029415 523703952 487259452 402924659 188297014 335258752 551015901 375139830 52027724 440160816 182820924 436459853 163173816 670560333 542101071 833043939 405346568 433030831 474684428 572557637 43683422 299312551 748967248 193950405 153696422 457228522 2010327 575611942 932907796 619578625 76015392 194832491 639838275 32220960 296689994 281506163 279332511 831600478 717424101 336950805 108806419 686367899 676196114 422081207 351296094 489113260 387047349 268036940 953899278 678613880 153106145 596584928 54366919 221613796 701122913 249631121 655695338 334136823 188053713 507779401 522285321 411605929 82686133 223206940 834799268 374224013 536653384 427926784 944043691 324177795 257653045 912564277 400259202 411859016 796986760 938585456 804113589 230673640 589374659 83801269 714306375 239449514 774273020 831196165 244510968 646321580 597302970 451681251 708371951 46977895 855062864 691339463 741898537 497672986 759069167 597691095 793098160 3503476 819920493 776317218 38471156 916596089 513363523 629766787 459753350 669249485 479544265 843802874 916938448 482404858 544264045 330488972 74155903 613180064 464010570 689267032 102126401 793188905 97014440 358717195 563690251 208312565 445828137 706877232 592099887 81629149 195641876 8874625 371724284 681002193 443358466 257339437 187288716 234010069 10922098 514445042 877302259 313178441 223935767 643838249 954272152 627118099 50720350 988733094 640457187 715215633 755743353 3431928 242371245 911080506 218974741 10467193 248558120 734009417 367016989 820198572 937932170 545695749 368217992 359212168 94362013 940465711 120567390 439418002 842114990 708634628 414496450 36092233 443823652 106004740 663576230 102970843 438243986 436868526 354281487 841093883 983393628 719697068 546228795 280282660 632335848 263349897 624049407 90207875 350740687 901926787 494727035 412186772 804424901 466535292 583486872 457372007 740913567 993600654 774510047 984369345 392228133 752682335 799468833 584023818 422945301 351793337 398891043 898464231 917448894 462426269 493907691 653983725 250704073 634067015 691446381 119729152 818182667 337121719 811331207 970380555 438115343 966131268 610046841 100157729 253727448 509404292 552808957 893257806 926459330 263674966 558161625 375666382 781585081 730841187 358883493 166289842 897897940 366893796 903432784 485625330 462004951 215630330 102123389 217741735 37213172 702446247 425287724 875432680 886586444 640752713 526517246 182235915 47215147 911611173 788674412 277722483 834875478 395628289 461284492 490918207 952132039 41972090 38017687 362558948 39379400 488193752 500029892 776058226 367692202 250836909 854458072 191045374 348426472 999991413 581651600 234209431 481723953 651641597 681789828 525987260 934669239 76314436 706603633 751138136 357404418 233306515 757567272 963319454 730098131 34259055 169813513 828509886 121854441 254896861 129873145 159858624 724564652 37311629 166921624 693123559 375822680 221609375 426677884 610782111 68324264 151591582 70239866 403367917 422519913 386083904 194683429 270292439 653639732 29804331 609746245 51924907 144918155 304832422 582954462 250029733 630157261 415052245 155363954 37848969 366876629 568070882 866175871 795233046 216779235 215909044 338447161 336509157 570910508 331330836 637515952 104045818 435785058 796321449 564932967 10047053 259371729 548699933 191863314 577499791 264121128 172209130 524693327 249041376 71420630 513235409 606982051 282807644 847432549 656102838 955560835 263672408 248302076 210646993 841416877 931381664 484402433 701439946 56654874 131472965 841823420 281444127 362908490 576674089 907493976 371401580 829108181 150571632 415721695 965396198 690920155 406360733 572631442 198646276 471755919 767454087 864824319 535381186 17769767 685162505 284030050 233262433 816668436 684255844 821791202 172441265 959660254 319202243 560772795 166595231 167494895 566932497 380283102 518829400 276458578 634018285 740676547 178373328 279231422 656354470 981870696 688083896 510032873 836165213 440553550 461374007 745244926 261095671 793476706 440155520 432094209 288347670 542137491 155896150 970631640 688377877 313695435 212506351 655171162 345653874 873434537 21658165 514568232 604203823 332020548 641654822 287011832 733935410 272895995 258796814 538168134 891838049 856562183 859007454 336808786 211355925 325708467 909256123 577274578 159610226 611578638 496670127 112397293 231746053 502913193 799098580 628607107 404615548 952139701 352937121 322395285 866718482 433278636 564545177 262897554 457385644 815577221 38108937 298469029 666434917 833462269 429964495 526735327 558589846 249191427 88448158 508909442 666271306 824248285 246437511 25164702 307873165 799672369 729309828 333956498 139688581 319122588 684263238 395279503 167063069 424426199 731589835 596195249 207977347 222929440 931341714 644109119 21917821 978015978 736333683 600021062 882737688 378140816 75173921 469195602 67928246 791893194 94388980 474158497 283122326 968135441 356192630 913178148 123948534 180912709 812352907 754762295 829610516 799477509 366929204 717612332 878351544 644144758 981196844 860039615 342346245 444787489 113207458 219116611 53645694 434301232 417402979 635655980 820079763 494853664 697639345 518807814 26541692 44482642 702840189 994588776 617668588 180936992 874780384 282498187 178426268 750778105 200650148 825204890 582120607 697698281 754132248 758555812 623357591 128804905 309045734 172318285 183947071 875950999 379055491 902816015 832251426 206957961 520397193 23521651 695781305 461546383 782341765 345204792 552368108 374289190 599376239 482107740 255189818 147199927 652021513 448088801 232540884 865313130 148169603 348414655 576914107 81475109 185981918 499877813 523102836 580645723 805241168 195735224 863977436 61614753 466364155 829011008 232672662 68435675 82904523 254191857 890502546 410751637 377224439 299297992 259344016 729683707 928786490 398979258 693193804 670815808 989778150 331826500 407959186 489584785 111675036 780029957 281912961 941232930 311034476 938900431 935690425 191736028 718070076 833150453 288376169 653895947 594972421 634593257 339089405 155837425 724122794 819835535 118302705 432879341 522121320 413799038 951268397 219052381 781004336 115729643 602060947 576905343 845237798 337631778 552148443 50829160 370157919 487517781 862207614 87289301 461578561 985055653 638678990 794315917 298090193 803120926 388715225 334276586 212104692 519227059 185521959 989688648 993852311 262041921 231550652 825385597 160808035 95726217 912757164 944627961 222496970 865471166 910576540 244394554 903416146 833049946 237855866 563654569 627420713 195467789 151490180 716382723 435085793 307459470 377031975 1441907 705506291 786757445 628236446 129885021 205518110 112435208 858413642 222807400 288585905 360992940 599375172 919106534 574615623 594040560 459813632 222830179 405309598 324548141 546956813 967272192 877719404 688651601 749149872 145127978 763248738 779579308 412391517 36359631 647604439 40629092 483825981 811263007 399666420 108401874 20610811 886939855 252046219 536667109 97013166 811970685 65413039 926177696 185802781 823605199 781395627 181963558 322821843 185617664 201008651 942625170 770417885 406233528 260427760 71824622 362313944 299882779 252579605 254637093 936412800 571606182 35596183 105017248 911104017 439483489 753156533 552478017 801867590 642333678 371604287 159682866 740801071 23808305 627855461 468447220 442391419 655047523 680803292 991472300 427341943 901884175 924764758 294010568 848511001 945266555 634379905 449974327 115036209 406167112 467756517 835599253 961012550 984606011 685100785 873096478 449720507 883744444 5932125 914501433 903271754 941235133 590172580 314453880 678538303 333603903 49812788 266586012 730925939 46556066 315476199 231551769 270699556 285771423 837472088 723910098 791426702 460193994 198311312 527712648 94580564 544258399 293696039 378219543 37012561 534135897 441636563 557214911 104676182 390122565 268736246 117799884 652940000 757308359 367212653 645633596 4810329 196862412 553060705 447298588 148678596 473745513 457012838 975886755 542588164 583208797 598855160 582305729 270469894 671673228 598104541 65287977 300537732 565132624 254817736 511601273 833962463 318092464 342225721 875847359 174383432 200587366 717499072 570218442 229445507 719198020 270638890 6923622 984846417 530891281 796025176 702532840 768766608 139931129 728946395 105250994 164146083 302456947 532486064 289957417 759822140 636003745 657089670 82465939 680912487 922736333 956086052 472890330 337319389 833754067 285299597 121060089 616184667 108569878 51542663 833387850 83299669 942199694 974113128 914585640 799571807 33207055 908302062 603037901 327447815 230333613 191259479 897871002 981187251 87038250 466166175 268617419 635396726 611697388 886630793 87248637 466474353 964817433 520025276 961403098 934825645 861895984 677142087 252310265 39487749 188111302 581883205 878931718 760538247 559598986 462202292 286626500 283859036 840719182 288715039 195334195 595519696 906114271 878495765 238864499 526611654 997723356 343675985 234090106 996541992 871483100 549365366 794656231 819179943 668466694 877743094 336878939 628018248 321892420 194967710 890375163 793869085 669389201 148781156 473032558 732009460 513045564 396854582 558833499 328568727 386362058 479448492 995117634 867622866 914385607 634240593 691649562 246425625 673880089 130921216 839806609 208744912 724215075 322186531 871856534 399970589 267215006 740154800 319417016 530314912 197980380 819114447 78688872 953834520 644649684 928915126 807788876 792934617 323337448 888671855 183471228 266752210 573035525 198538926 814117856 985442575 122619461 773290095 834450789 30741685 422897300 650970283 141542550 567683094 717364942 774524353 998013233 955656121 336729604 683518938 593976606 10518059 742778516 998534573 105245749 174966654 12274304 476846507 71393140 773399680 826405489 512674256 701620805 673266938 95939038 672708767 635971052 173702173 787781706 732626481 494642307 749149506 166455086 648469823 215457751 904013017 198755605 712728398 19253014 628328009 678088220 204802213 459391263 632379837 347386014 153578304 657837801 964474936 32499341 900454098 881085471 799531282 98744530 882369622 752663085 604120185 855796768 437137204 84210735 1910258 793658528 935642262 7705134 816275338 222413758 201974866 331302258 917245720 132719865 733724661 87175450 922213230 392076822 385907100 730610403 315204199 107424906 819586857 290996661 657767576 326487416 532062057 390006265 699038398 906255942 221543787 342189111 144437393 822182150 456489180 158487828 726874246 155144051 503850638 635895886 5669737 348757866 429994311 2700747 131658066 730633920 168817018 821819941 505254201 60768540 208640525 835984101 290253013 135558933 340120660 852627110 335784805 305376039 519494360 206427859 217504456 520105670 802571574 908644210 818282859 331233778 243578301 959406297 254801882 410617070 190872587 813421057 350360262 891109605 265871343 420069071 39554648 420155609 742415724 79776548 833081209 148058957 138921621 944850058 777094422 34905282 510398966 406788327 481436907 303512610 437972861 23868922 547359837 909926953 346436820 898648968 390246297 350959685 79599179 406980922 982246558 288738545 844638259 958291278 41301058 336539140 943385040 194421276 605661917 394200882 706518104 545737616 542317623 144133009 135419178 44540225 309957847 724187532 730555696 573082170 782380727 58723537 628727297 158127571 892705798 523154881 231614588 423428129 988002100 2219083 475997688 704881645 321171090 278119230 892497705 325531403 543121209 873069703 883001377 675784176 119582089 549810028 611300651 360783660 834441672 628353596 829379029 46606305 504672910 903593145 662785184 965845455 235659755 321335116 51211627 391123831 368651384 292019235 186380534 791110183 235832409 271730073 276986000 728443640 25230755 517203542 628225522 403883277 130313675 814988368 173868306 267107349 153087272 994421705 539102671 265701536 961589176 688514336 658154840 925575005 300243149 194238717 178401019 386008271 790490288 78776682 261541662 173797862 291025440 205342067 838620897 556881638 256929101 897624959 759557236 273296039 690705713 484455076 997318533 728752077 444900540 764581063 837378281 179512130 370572574 65609895 630208685 70686951 62706389 833978646 43453968 200380717 439559729 130075802 591726190 43092754 56871470 466345913 801434433 245307989 631966182 555839338 732676082 555858851 236835404 439566604 718664581 740635677 878646209 152614 590733482 718175857 215295448 529123761 695808257 264591258 770310246 839766977 228917526 745705295 149651873 714714806 870252887 39705429 391753888 914707156 352079564 730027676 907901570 586734088 576133415 707152065 286215758 457095640 468664260 255154554 225807753 961660366 280182137 263351879 308195524 292526890 538000893 651185552 690569339 112113821 3584894 872628287 733006038 195621768 496403537 216055856 942484245 747635958 119883753 265397967 121202693 624186670 688450230 639262480 909977617 960841096 634980895 232791894 524746244 200755142 25864275 268138175 836901784 863490250 802231364 486515612 205482941 798085628 394064425 662575102 942002246 865436863 587355793 190295839 331152457 866904880 508358809 877296018 456009154 237709225 940702703 722662403 95090436 182173587 635408727 116896868 121443625 954563701 861321698 340596065 236821247 764090723 920161962 752418198 736651396 837347133 496815325 683054134 271974554 323179462 97190887 927816900 253210457 49898867 578106109 920122731 974988928 920515300 819101530 362795073 651388800 803681419 76144934 866653037 304331602 855922332 169674572 679396689 694843835 969198356 304142909 317837966 126288072 596524918 970507397 499646716 702426640 141022733 474548134 236207165 80661617 389061814 772599806 670519871 273914269 432142394 672231898 944712799 546363124 510647368 413907612 567483865 803889462 181833137 844418868 810000857 807739894 356436550 759904429 505982554 510708911 816537132 700096380 715492266 729312609 376299580 495521824 355224344 635198663 367583506 315073136 138623921 836930414 288458281 63506300 424110074 84125266 918257143 566857244 668894463 742416036 743663256 647727135 400660129 734924827 159933616 772040753 366533609 816770278 815117391 89256874 394207812 757749998 528123232 305175502 501124967 944076932 200798884 606682788 588803203 47833312 539105578 706142399 930770348 313022967 192107546 795038317 53259278 675910270 694760777 810363488 262141927 906430380 919968716 115067234 958873731 372648363 882836222 345103385 25538141 333876877 612096453 847125289 386555776 874012858 974178091 952534250 743390016 902981820 495697084 622771308 698038778 659116108 246611628 462949172 283508088 806816755 396668549 429496981 948864470 254905768 79408762 794769348 882076080 118120251 48077656 851421273 121842190 520697011 846250922 318475446 924980626 976716439 279514873 919164223 771078977 723909174 90757088 351768647 544958492 352478568 936300217 646455014 336187368 118028 259674337 90992508 635074580 635729915 782265733 724108691 763276563 412527037 565748869 557043979 794195277 1322635 943202972 122702122 197552927 172441685 123212444 356744497 817073306 962142642 589284912 907926317 635999434 873958574 507649879 318982937 727974676 815412043 931145880 749987873 352004175 263262332 258309470 243419751 50163132 904563835 725553776 812449237 348230683 733452657 296325414 507650948 79994723 992705031 515931552 973487291 314647042 623676850 743765652 403604572 404986564 727963002 768332144 269141594 561480383 34294992 452373481 761343281 889398222 637045341 227544748 767170948 412522170 155737574 299614483 927642734 436713700 500541806 55150988 605264376 458101469 178579614 533980147 268791092 426316740 660248846 50376607 203085376 322357782 6471351 398038236 782310465 856250398 668321393 785832902 309454366 923448735 86353182 223223475 186553778 383911216 700398642 778758601 79192824 781808741 41637751 350950490 66921725 480518313 729209513 816249105 21644511 595618017 810781326 945865721 207036035 762192805 316585833 677719183 360465281 810736262 592984486 86379169 106678164 720337193 803377349 363163153 523958621 500461052 312639093 133307171 691283195 776665098 307935040 359976889 185019865 612899718 206714512 831728329 792232605 715836460 202099216 727669297 938304982 142325872 692739769 962973118 894398006 21863005 851372724 599328851 863362813 940109814 265665412 886210151 617311183 256369505 9520608 861467445 282843236 288499347 675399326 435159429 10464614 41670764 181879386 173936657 290407669 457098915 708522841 150618085 150889675 457480693 446305257 620148802 890044073 65947669 197704816 53928182 735172398 787135927 652184639 563749427 442334058 691880522 763867505 243073961 770357116 722122426 183659335 48165003 31901406 222579915 144566679 793836278 625023059 418077767 225318078 442171456 402458139 656577 857439688 746119325 344424760 350134788 542670449 660233299 896418946 982633031 538232632 793879298 404136210 332683151 403824927 850125062 507717930 211781263 811118202 574663970 904792544 149246415 11698047 462004407 530267356 425596924 13287557 219332598 92208669 346937527 229749797 263219937 210800465 750605321 590075578 527356909 761335348 376416003 226189476 731383765 554398237 522089036 63468132 302471536 898689128 314101180 772475415 937512976 343450055 25862094 818596352 445610009 249113654 781011235 928507540 618657961 869294390 201775112 926864077 41507208 82907350 832151065 977681202 486062416 299245325 39533210 758638741 560785052 87350344 847877110 550638471 590513950 289292795 336889181 324026536 853503120 672055386 799601993 685335777 186943502 608087278 645896788 122538482 278306304 765703738 136249718 768198927 24238179 69612230 947260218 655033578 317895809 667570658 751668219 337195839 397515663 276575845 282093041 393563575 471778071 269653104 109675870 411139257 91614822 511818864 45487021 794494661 826465091 961931851 9499547 724495158 821374824 315430126 421004439 722486155 33862578 106912538 620785656 284998324 794882975 243969178 504925086 334239083 809715895 495807891 698472139 412107669 472198575 861512236 91843582 682951091 296420710 615209714 918672260 878414670 179923755 333442993 374506284 864409555 635518821 536221502 632432815 144522054 462683853 96496249 217307180 650521798 380703833 545661479 960040147 177039360 637999359 498940019 846151207 891648928 657190433 160852548 955847660 720474488 251404981 600738199 343171834 223994481 538978157 324261228 475580234 815548380 944460090 586531531 837680811 204281619 807147032 767653809 835073112 420842841 238619864 234173331 270517244 30553760 361845735 208323106 406272708 669229525 428662991 779988754 147055598 27563690 29418755 310834610 514301853 296688288 251507511 375562355 633886108 796898944 222164916 17083640 654356111 557090085 603538071 655532333 762802639 202399353 876912740 72092858 620284638 642741240 12074437 983657824 788614872 698582670 573415539 791337304 996348099 723851723 978168938 22574703 275577045 723172576 919268149 431983303 161201436 1844687 396261813 514213478 646535729 50969725 134692690 803542070 903400567 690725870 380780822 981594573 934033095 475105819 112211029 805793907 177437990 849853204 742909846 381277035 473472485 840061424 292787681 809590740 13460589 252255595 514218113 232953744 104192886 445643873 901269097 284768891 437947891 531251213 84695788 150066602 632097627 791626503 760326631 353242904 223588273 800486574 335014120 938615376 825334506 753188098 151861782 208757180 878657460 490505443 788040547 214064732 557348975 150895790 267618672 345169295 351310403 402339988 435730928 154501353 178474031 131899584 853376892 876487599 998394900 698994519 902460164 911666054 793465867 383068631 469919617 578315563 556328007 758654314 740303084 233939014 534204184 735937184 660019700 951929964 522893342 857549049 272984145 174400157 433189718 263334588 951465964 628063621 411566191 578857573 83197850 266267190 471673471 936045838 509761326 11074711 976475606 470489841 736258147 699788383 588947754 755464420 751162561 571027648 476254187 37475532 838189869 715765819 837570182 490049938 941521308 563063487 879245794 164765708 503979335 522202766 543301262 658163456 282160252 463729942 35703680 445834558 748970298 372964344 863452219 252821175 5108180 816369550 668146639 658999087 721137120 287719680 939504748 509663056 797049698 517982226 238240939 738966980 289818338 207345648 404531941 931133331 194722675 695129807 442878434 789372197 479261458 321681815 573942802 89872971 492369775 421203254 633436691 935280100 231814679 42197954 665023635 718440539 687907136 895020431 224153372 957676876 635696714 263171892 897637938 86677555 178125464 202845013 19734415 295638296 62823002 86191814 284471759 370329641 142750819 83907770 242599468 803646464 870553267 292306245 31429567 819053960 418842393 960608778 240952342 530670859 441049184 44818543 309720560 603030718 11398969 933979924 430125953 7961154 163614261 124532888 391915464 790067792 339348365 435216478 725932127 380678321 439338897 972870635 814655977 85305484 200163436 9553341 564388485 413826889 388707496 100458596 160925188 413381944 584564882 888808918 451030786 294286245 54813217 870851606 457376244 68847560 233025103 310140942 628426043 290899091 921192310 966888770 670892222 735688902 445407414 72082604 382822701 78062729 42103915 913249355 373867010 164610990 991575117 203653176 557211165 946185472 827020684 452881268 639112109 299096045 773543168 122713849 564739051 500027946 562458131 988517566 83016757 633095039 770188919 811960984 496964593 913918441 737788454 247974941 219685479 123347339 674901503 222585312 605969130 871003327 511478430 706794848 171427387 152751770 565422987 308059728 957765900 481016154 77716423 67591409 776179867 937397423 240194753 948849666 322228152 927687778 236984337 228553405 338898630 46657414 585926569 198740881 642083138 677989813 57337036 995728789 889615519 831150704 974473824 271230036 585840186 747489179 780457487 92749919 699743479 677156036 252948785 81114606 126850640 443627345 464377422 671648878 63045104 74865588 973931466 701865377 295134357 746047526 474247637 652152064 261037138 75625124 840431702 352825108 772405187 736416388 735830667 621388901 124901359 152346169 310730792 996363658 358365004 639947127 258747197 871667920 815981389 564209332 988893232 611608487 736158352 863319865 706909343 665780779 215943476 108477230 531929174 909670725 23985418 498553627 766812547 808280175 193155039 404157587 907970283 182528358 249772539 321116029 729410681 448598246 889641461 335641786 604750880 420886465 54765543 330218999 186422851 279027646 469621934 384566917 163252017 978984033 691011691 848628334 112277755 612295445 114015857 758529655 581852417 166731660 144393123 668340517 46227192 574033167 15491050 921366141 578491084 912129376 105453627 520374071 505957551 14958768 173688929 24481953 61355078 846837401 401595786 943152157 862276133 990667990 836477590 364754060 828361170 781254039 77590815 603520615 853570615 465360309 850274420 897945095 499964358 158170101 314285381 662414244 302706500 412111612 708335939 732143216 780942058 608970341 239016797 225561618 763961241 159455481 405792986 945078442 731162018 907958986 172918006 131184032 633828304 916694976 969945271 171608947 285647728 945857442 824393726 445506666 2443508 19383397 805081397 397197656 162984942 798158123 388536509 933495629 543399161 693902784 292753968 694655038 500654478 14134885 984194995 937431542 816736662 561769193 344708017 707743692 68527387 482326635 658336376 501166397 455994596 950979076 171878024 274200435 771323710 25698077 618475061 438704853 57421051 168537955 481642475 903391233 662816618 520010686 185527433 123455008 652942225 202150678 683883093 395049970 403841394 246059560 920364536 452729842 849380379 221443471 315347934 778374744 898012567 879391511 309419762 656239500 768999867 712397428 317095480 398553943 157300690 276628870 851052180 101459468 669285953 400648967 607081052 203919341 963500327 852347808 400750801 587227732 934830807 250831793 611751716 878051454 412515574 314832937 230631036 337788184 864731863 294491126 467877236 739521778 658894886 715304972 900599306 318100161 646987877 282216511 646436362 794610586 130819814 625982049 306967136 762622728 300425855 138289552 666035454 624989724 212061338 73033687 986351194 967775654 998869684 97142090 258178981 688015597 593792001 773917827 641086927 187670372 771977877 663149714 757397300 784251778 395196230 759605199 384064936 607045816 803944020 642072214 264780223 435394027 956742486 967937337 936713886 481252078 718495511 249344636 327770914 117949546 356871713 270232773 158345328 697990808 733272774 794238534 371180306 340717018 865218657 491909646 733834990 536221870 483129864 367018100 789607841 839947865 314983534 176847637 509810206 884194776 318260343 641256832 283205280 684908542 896182438 683734481 708164616 216321548 957369351 242814126 867028980 627246550 320398405 135209299 958741757 954042959 715602445 326590537 410674250 270231594 720868216 173945506 35243909 550685986 437704427 357051348 216320188 617581147 135052746 246953664 800937840 903698049 917077486 957080237 68106301 576895441 742105038 79284664 244433554 490057498 824689387 280781653 846785503 59799552 301546321 437404461 852394097 478135053 976971842 373263798 744266843 347386389 670779346 558826389 178461207 662018466 65333040 593562569 692924879 166457195 92714469 232124645 183159319 49750099 433471187 525478309 539721367 854550601 760734118 635177688 170587475 94426464 908702914 584669396 590066981 828637478 431525692 724541928 35682008 848820509 711023709 614185005 864873115 894163105 371189744 667155545 189712260 814447127 106149027 646706661 606521303 322855233 556760796 850474778 825712562 403519957 153258253 626168057 221117141 433254 736062613 922763569 525105633 430201249 59886090 583112261 619508370 31701135 34846880 785809434 487983696 245066355 383049611 826595293 501872908 287322597 500806590 403663142 994960392 575824249 449133382 342482759 576435629 401138075 989814403 761295699 454893976 754981231 843940530 736225738 306412063 760091970 518626070 434038713 12192504 420308152 490269026 133771033 380471943 443538043 357471489 255815281 737767881 419821952 625955639 737780364 273170955 398210224 339545894 326050622 147587077 732359330 154834739 912694363 210359247 387348984 333214365 341503458 941720386 306356292 353307761 74258921 721693119 695878527 466531020 653275936 405125575 305484375 711881369 880184910 469281086 495463389 122284318 155698878 566111724 893091173 461873677 134014835 119024712 870583738 540214181 874579223 642158880 689399828 210742135 958781167 395679503 929385828 955164637 164648799 138541233 155465166 635424335 81362446 565507850 766708379 591855671 463086352 347927971 354686946 622766159 637671796 250661510 918300405 214855362 780668486 940812529 267775799 390988231 563320229 435899313 542780554 518416142 873809640 944752984 351759693 990520755 5961191 515615023 585424708 669758335 83741164 244721438 814984598 617579147 552205336 11464393 454237604 909996585 502182285 705726267 324222332 802052736 497305665 496602726 351888754 585381493 404099487 955715822 940268643 989208788 581958031 921095776 697233420 397913253 96931080 304272895 209192812 826599518 873039589 470937226 542046629 777338378 713553691 869012060 5403174 102301142 856084290 534042297 143835254 415869530 442206662 990253913 80688939 80446467 303642581 340357551 762484360 364895001 84210218 219447212 339748214 556051693 705498559 599412357 618104836 783009413 388327150 51865898 945496096 656191896 270881745 696986639 543404968 825349807 403661941 316649769 840066880 415503366 599587827 229079187 930947533 167150651 21498552 390734453 119875590 844931901 55783216 522569289 94966462 201051711 530044513 195468551 308343070 878918485 62729727 173886471 506913393 966952594 94264962 671118070 558857302 748745904 51193716 532041281 255984292 22808653 845648856 797420139 878154330 33860236 185666732 180991175 865100857 903471573 493360060 437925247 238593404 373087315 511075073 556443092 397715551 983825276 790265656 757904074 295918155 693406834 476879132 274634002 456755152 110418561 225248670 751165131 306564598 282656113 409633851 896651673 810921623 880264789 335912630 17684925 917314532 847371396 38870035 163193443 512883018 232902218 310627089 750003681 257622264 771656906 752454883 642880665 341102396 913776708 622936250 768143708 553735362 303765808 974208706 9659360 160650296 22444643 502226629 676673905 99575707 41805905 356538080 788561408 21295307 707178032 440054630 165590260 585519145 882574154 202003254 857861707 797338624 557000464 38890691 151590979 431928627 528534644 845897438 688597109 683968663 117078848 637195737 180724296 900921439 144777339 35306459 694796026 664704435 404056865 616414490 363334782 825346467 767767844 899813358 590002921 894105129 41773726 312065051 610782688 193541651 301106237 707273042 26441303 880491396 734040656 325417596 664290307 328144370 123172183 286056885 226763931 339459643 737094101 413147060 961623708 852300148 94416777 401174727 646144446 956348200 836146835 50937019 248763579 620222232 759541598 420944177 191172493 883673024 563061474 455008725 280329994 306882573 330253191 199887285 401045109 775428796 490145902 942079320 1840958 379061947 899068598 766798126 822450763 242089957 91574643 154998411 807522740 775159267 253385476 831349549 847881908 936669106 331346028 749344732 379192618 10833049 329915593 538029208 524680054 607912652 902537348 76948008 312982253 10166103 810505338 808587118 598858968 752261035 431802488 235882461 880531072 849047944 52514704 372332907 494830341 462818392 923101359 303456937 143553993 231747512 415435239 667420428 650425897 58481865 545682042 158489241 175312486 124251626 287774681 865237844 341879746 830357389 706052309 764345578 114360947 568774194 54522758 883923714 222793297 953263351 267912552 455866370 583384023 940549210 17617730 450036298 249050739 712262666 998958138 593572494 763429034 728468631 786667361 304766407 46212154 987796451 63780414 419089928 212751843 687425018 210928161 333340760 585477960 254779442 700151571 600041992 804854027 602847745 616308242 912933501 310078077 666740148 355403872 292632482 815421474 598485820 888510524 871913461 573572072 932530002 602378425 574206845 555551239 522223749 342835029 744385640 773253551 911889958 101428215 937895434 306874497 161270838 542692691 281704648 475761320 144954316 896780815 838639131 734856275 476005993 623747226 622148914 364183091 353348629 348612998 232025944 126130568 345616105 6237271 643680677 900333499 465868074 21112015 401764745 912858825 889810443 860232685 27216745 742528487 594510484 329925269 314345853 655580693 853482900 569838529 535619158 615174303 950936529 512956084 298799999 314917794 648375351 691325538 955880005 567969312 186408084 668652793 770259403 454383058 282857053 243208744 17744090 460524991 904409462 795821210 304409825 969973487 768049040 798273170 1142714 708425346 852091607 264226115 126092605 400686833 511547787 410708486 561922202 133342422 661317323 924884677 671009464 639943641 950319033 400121324 317585422 847674742 448520921 148225655 574525413 724047042 832216817 955244889 357572748 514785791 826308258 140433941 789309459 239527961 638956735 982382871 484382395 45094524 653377268 509861900 662074608 402851820 271356630 607513128 223431160 804976765 211126855 400892452 649915122 501852386 683717964 733759514 264658750 177502673 100814257 173330790 335117899 370293781 592682021 977568845 21155559 965916917 58565410 726531871 802718328 273022844 425682482 714603410 145417121 285566209 287149481 808140518 453092418 815550193 891157104 95185438 708277694 777694503 430960280 211567093 979410295 566654376 758072475 525374382 479226537 842439740 643493088 217682954 318788762 392676738 347984720 596029733 432483409 84656249 421419271 374712797 201120475 482196646 255825410 319582365 938011090 474197248 136085983 694991080 304452913 182272633 87456691 949283441 90660505 969968890 862592533 1292392 736730420 580262171 670881442 545343012 711339834 468513384 648675922 160144479 872361240 458605304 405036405 622939368 730383061 828141840 832961735 737981662 623391593 252918980 64918995 355564150 430565148 219820142 536290624 663812136 884397950 909688921 25681981 442299184 870407130 890223053 358457462 590569245 270626415 818664386 758601373 375114987 321775107 287566118 66149298 2175837 439321 221277640 238918566 106231953 110012496 412008937 613170390 360490825 870712804 46201380 474797927 786465003 723200371 465838656 959373382 192163414 797350273 401785389 739166770 710431455 137316334 786663805 905130354 594895989 532834635 948450280 206797066 338772371 349628654 87554656 792433832 859013059 941943097 379883241 272515726 911240107 541918601 196148772 309539381 561165918 359225974 623092881 658499427 244920123 918444410 728278299 265464407 147887829 111719196 166931704 786235316 640648306 109429954 37060023 752137603 170390798 352050388 387917855 736027197 727976740 30603860 49560430 465451089 841482030 811495870 523316611 550295192 744509959 538942121 62224951 194663647 259168893 813562466 721831455 360466659 319472827 751470053 369613520 290346420 145073704 611666973 352818971 730071313 29825823 314450894 160734849 644710919 883957259 496811862 254282408 944835225 633833350 912597206 797863005 32305797 607879282 318650212 78396463 801577495 133282244 893432569 459787433 281329157 922715407 904051663 192339513 836100644 482339336 455154199 246607874 288243908 277229206 260484822 292853140 318945674 486566776 758380071 137536443 131343039 433937114 950185098 63349773 250527177 853132777 43715468 425515141 659040661 672302613 14854688 28962327 808742341 276317918 683399144 678141767 334494609 199574907 973891669 251613287 883235607 118068145 46076125 941239403 330090421 563393467 615602702 316499991 763680106 402484651 354588728 836088693 203055896 48037723 477435645 905059232 24879566 716523987 424131505 274111087 421483838 207745090 719129566 439001621 292282323 970886008 429657065 958636416 761429083 198919940 657834689 324651088 817330546 408293236 416537595 334590826 173185844 950369425 645809388 657648871 595230883 700937690 247495747 401656689 949778272 115733266 450915961 732137996 389020171 30627336 292952174 25683233 937344899 961154192 74812538 670094587 977108770 864009202 152957170 837573072 689640968 890535117 661235254 887595650 220657853 473782217 733894730 899533360 151704364 861984807 588845725 469141955 167197533 829155892 756430010 533834342 118553496 104198639 955435578 409728474 613419622 653055490 285398934 338937691 979756438 175277356 560365563 199807809 591560173 588077033 372247431 231735315 301702993 557847337 217070048 762676689 275930074 259903132 748201384 902633928 933928414 891850069 137953513 122623143 589223531 375524663 450433082 400517419 521566844 120671709 713827814 793394134 721458364 76357354 816130849 725465068 791750983 679383226 583088174 19901465 161237026 498013831 440944350 435015005 572983300 757168066 199613349 274875175 635431548 110037809 276173129 108683246 443482321 149966787 565464394 10888890 317363182 35198348 280470855 639967911 735962867 141192374 759092174 827353165 473686044 128485832 185071378 24710042 883913026 453526556 721326834 485521336 484211572 977979646 19428453 101001969 921934021 93573926 427546417 70750397 213186448 528616162 815812309 449348302 337357002 271325056 231711298 257049324 231498558 856240118 601434376 542707911 794131805 361574689 43871709 796709215 132587347 106081100 972082791 906123454 974071337 360490906 168682454 386307782 43815627 232511523 965485822 606271987 667158049 308133394 244685453 783481584 376683194 521220434 462744152 968524851 561811895 828930830 248015990 909542768 422102739 760152310 759689668 631443619 495283845 459262124 246260160 848475324 174050948 515024460 85687375 553684938 968313190 699607141 459979687 99988915 529668363 5233023 26607694 39131006 620493943 691158956 22775634 992107129 507653720 788592952 392891424 436703869 67217607 702605011 476750773 20880683 269706059 476820405 281925712 215998495 160426043 155845725 803430123 958720862 739129704 348336772 277783693 524213264 533473039 964137776 934121053 113228059 632970058 985256810 426590487 598523984 484960743 205064104 945382955 184735563 132962778 198366939 572840618 936025656 507227901 879168043 427445692 798470112 485324689 732779471 481800586 909243616 857953714 519602372 498375566 869230001 549429306 4493203 793421746 348559056 525375512 79192185 688501693 329651285 77698420 340430961 876543172 553313734 970674020 789774464 332144481 228575345 996551229 617145684 657143111 610866152 862565301 527097999 398611025 951964392 519995009 119651819 258737350 136918595 545744035 156683039 963233451 916053676 151623581 268194411 484244195 412203876 293677401 394600847 200710757 572595941 827154351 341462320 449388042 652962208 965221460 247942630 694966196 364954115 780149857 945989834 243036110 875812454 344137137 237910075 594948803 560666291 702468963 73925416 372600279 577615228 737988310 422859929 391092048 35298584 625817127 943658495 409007091 359790062 319549528 456433767 325693102 845702470 520511415 231889417 596377867 850626404 999659677 132095902 10654666 345189354 26017906 305448947 349065295 492177173 793508888 499534651 678181827 377255538 915947593 393877053 710326212 952756953 894417363 366188580 471949673 666625016 216825351 269692216 53007924 966303049 960203202 59583370 848037956 342429816 341680907 363926617 604774174 570039225 51859376 397941151 384925989 258165949 773942850 435877597 504841971 167741863 748988985 523938474 436963646 642095615 886306368 308221059 66171215 776004667 53366017 561730992 629832999 71267376 899334430 978200878 288071177 104452388 11327114 688201017 489564541 73134981 684048581 690780867 748233330 705554934 873444553 619635439 134007084 595212211 686682168 295478204 459642293 681610977 121608444 98019826 38020607 62011394 222703563 477241552 963200510 889132653 276962480 87475722 788655501 662582051 745693526 270054847 934773993 237494999 257864067 281795098 653703228 903145438 492050390 406010539 583684125 380051864 217445131 963319911 432475895 654037616 673318703 715344131 461591275 623639094 421574716 559261173 368755918 659395003 786758091 978565701 174520941 50207908 30274679 599214903 810958872 866493642 415914307 765368007 36321816 202042281 565900356 946163177 960477831 484914783 887957546 647437239 684055754 603480661 489564764 147890106 193749452 416807367 396812538 236200701 723645875 414900132 30253217 338453267 368535375 335586421 752546151 743299085 128679750 517105557 367817279 94320660 650693128 582910925 756091770 955222028 804346331 737083146 710262685 725435955 391419754 64538116 91576407 797156010 845714531 729300884 915561383 683707110 330081959 507547638 649360243 804132644 893130319 775757614 928755230 273486460 171893266 397549447 868464394 347254163 350454246 393594326 166476128 925035076 125023339 165651644 229855593 629791288 840923056 383685653 451796186 520774441 451103645 998452418 993139159 344617520 602644987 103607831 442033183 745218530 423365539 74206127 725797320 884639197 101910652 500959833 920061211 214026359 162967444 759724077 875352048 761560244 821994545 927529385 851795401 971660910 561668393 757014317 915774789 395200101 59309932 646625712 419095029 386110215 127945552 633359109 700625321 421042601 540338816 165565815 1910193 369087005 149578454 782299539 762299703 863516201 442337140 559877520 965620715 162236401 945726052 620271459 188887563 952947044 98612559 991209679 710912256 9318728 900738916 148300829 961155636 55258786 707168782 820233122 812649009 61226636 754173777 993607500 381304673 854071094 205252488 917531549 28616464 212995296 36025922 16773223 241545236 115181909 332437919 944108900 418062593 968892475 110273911 525480772 910746908 268043576 262687074 33856238 36327329 29419039 449094551 230661960 123043220 253924324 70036644 441802398 761314198 509753982 132254550 438250162 704812799 699027043 541432656 189093315 121626963 775767165 76270113 273503837 591908435 907338068 98765381 408646649 681739052 749228201 754970528 192667501 741852033 678933853 967528325 428944034 853779929 514350124 330787883 694638087 279012451 721890070 943820976 438179407 4617370 93512904 367520276 712776675 999351854 267703242 462250181 253661117 457597032 145199143 33247847 404837291 474651110 588628748 512135030 165431400 910615145 740107164 230043794 991247395 159163299 815625862 425840346 358357340 799856830 285382800 282298212 780984859 974790932 595279983 510338403 242199054 665536273 490200182 491052259 733614523 461710916 502028643 601489732 7003927 203911607 272672506 482326880 229821814 74686892 693589912 498824732 669957163 486257046 850960591 957237835 427030531 18613054 427040725 158907448 118953148 222097342 494002860 563707842 343240171 283845579 997669444 368384298 31993821 191997200 689157942 190658279 448317324 655805401 195702825 102467109 633940449 106572102 33923742 310785488 243221263 700237416 42783323 599129655 457153846 789986225 782454672 389830166 979972944 535171957 853179260 355101616 597091960 261422843 230046976 572449298 129224118 904297864 94493256 418188938 147296555 14448674 379477462 956367201 561517478 329714597 117590066 463246346 126880664 226792135 46714058 803610425 326281216 290120933 57671618 606789831 722499715 532623447 79797314 441755396 809016854 167135990 401439111 773292142 166681251 278559035 225713314 826633274 446014805 293404132 411916325 205339063 444890555 346588386 804417129 225089702 193404207 785476020 540329875 443268343 268433936 251906515 732258304 577272174 923695045 556274343 468891144 298117362 265518816 807864897 677898960 634934485 84518185 464974134 735174493 202554129 166423236 571322048 813824814 148523540 430850059 740341214 300665963 875484679 988313112 343746850 360719204 241081939 231767835 296210934 850486379 255772853 850523026 486609721 298505527 941954810 237082712 830527033 782289073 191312495 986078265 954480763 954110467 171704146 395745517 297461910 550048909 140267095 655035814 457169996 307100775 520513620 887141512 303473449 86229433 920785431 896251524 514217580 994718131 900634562 957496125 835366738 482078598 357638068 917103777 149651173 655716549 419057279 454855515 718679627 271955702 287172861 866813903 762201737 691397486 598597744 152082515 697948884 785086172 916593271 631743081 844213469 72960372 689371485 681654622 37360279 922006851 519972205 121059343 478555474 580283382 905655858 713831095 412346675 716285142 529244297 799558067 709892401 628748031 587599583 489746132 594262642 445390749 353588791 868232591 771380911 747829623 343156864 203331210 959493236 116465493 721497716 2445854 485970262 5588984 215911383 764150839 825177677 586980726 423746013 127841486 455992524 772825178 47334595 733720006 955727013 228378461 341955833 212279522 677866247 538037209 736238460 133785624 91416163 720263406 376983430 80043970 352622183 963723286 303359136 936434355 27763247 574906312 60505430 521192822 48168204 40816361 10621964 372910073 252507953 415332473 952639606 819976661 537321971 374894486 524145198 112342581 527238534 824181895 158160653 499903092 480479967 217728827 11598968 355243490 486434429 240964072 534714046 693824257 413233782 204837888 528644867 250429011 728373635 646605375 326702585 573113411 995500436 923396894 523375028 717945182 563707520 713084478 379168678 699925099 134350836 73832070 308369697 931490553 153468513 799832763 791308784 199833911 255239128 881804773 215194835 775348401 818900714 837199752 124202694 948046923 936327329 311500024 665762554 869312493 581807120 552293094 804613482 140412601 855494096 934158955 919727941 825811564 576675485 644507209 763503032 926400689 890024676 167734750 630522573 426939528 596913954 498538538 349683569 850850271 932535147 397663508 897957559 135843804 39601483 300895278 379299949 283056568 87656925 49408678 436203208 350240294 578232533 509296861 384804877 667243320 902885161 706025535 575013346 396848360 772898967 545389483 530814697 600694151 613832158 135949892 871395005 28699907 650165751 61717470 229658996 876447729 723006340 173500018 684744840 959880568 102274134 815070589 185498106 348231887 257499901 51271987 483177949 720880806 571078243 832743958 798357099 309239207 993751687 351971579 895070821 459266218 916284034 700725283 215512997 880805526 1369866 748994772 610557127 141243194 701469730 779245359 526443963 899947557 424393742 553388042 420872253 519869567 992407577 798073941 429350427 387865418 187127123 860393455 844670901 192086295 927334062 940785537 472712919 691224486 870449175 200607506 985082937 210198979 808576401 203864407 34532553 598443927 421726030 172741828 77594128 570195772 112977942 675845142 988098273 112337163 373398616 396249633 626331346 775622974 881488825 557271593 558324981 315382695 314247072 722180949 327151358 530501467 498332941 326768470 647388346 880374682 346772787 332682513 668472269 831184041 19291343 331106632 979024602 660853397 151946571 98333556 645760746 684347063 304977017 842487612 613303657 767102007 378956581 201443978 754951723 515054815 342769721 214806927 179780054 178458045 479930348 250801669 604559161 283722770 126496481 783282234 89505276 948684482 825362133 384592574 780172362 645885518 610870024 88573782 905716916 615029746 739650441 892535642 447606543 981771382 99352296 432592041 260505209 466921845 593310837 181817580 818427912 403669424 77374477 826375298 386555144 577357524 530072102 688863451 735987536 549093065 726626799 853134190 487824000 75840242 224847837 810901127 455793075 576325835 487591030 748366241 613650961 426978503 381914644 764534323 80570189 616789990 189019247 730818841 203868338 814328248 218299072 775764978 13673094 598795708 604402031 127086256 819300131 366149819 872381930 303522540 414296299 225089300 734845386 401229211 335770950 536199121 294860129 455623301 387535275 448776764 142890540 974477191 702528676 232789842 216602157 338112884 263185920 409495836 53654339 228244374 908007357 629978638 562056100 724399180 638539303 954817911 887993145 813494954 248635189 69534686 850568661 670773380 51874635 351935476 537538350 715736559 886127036 737999717 2821245 836904589 31600327 988936915 94675934 958673030 786269025 860254461 765872721 439531693 130336457 463635432 998883704 474570248 786318549 281384682 600098813 55140529 613624480 147814604 467880961 206263610 904055053 516235222 819149940 779239390 180688746 403050590 376589745 976430226 17728434 978274907 825584056 104543397 940010026 265684665 444445464 865389004 897423961 246680148 899434407 923826868 721399354 324952947 544583118 502905214 208373699 85001471 883740793 733878558 187339026 208208471 430528298 469070497 4659616 627418772 660367057 496045263 95113129 325664889 828441735 680780238 394838365 955459605 798441332 874594433 78142169 468803198 564422231 423576099 372718035 529762689 754359500 672269568 662999657 570209502 169569878 863984812 879851449 383922676 483810724 126231797 70144821 842696422 101808891 563001182 574934517 531508989 210212655 974325204 378901891 168494462 109816328 499272917 720755459 698333741 625103755 915986407 632779616 367010994 405349940 276790737 607011930 462212765 812503935 996802485 893144695 423993931 689338732 18789544 871812496 733888958 381137749 970170046 934317895 785583146 212145405 450127256 462117702 742359293 492957714 909711729 903870369 292581745 141209542 989559641 832055655 509434124 396481787 988746153 753483665 333971846 117426810 203274054 341663848 76979244 536537926 513046236 532733649 895343214 908098650 415962968 826259795 726820279 393829015 917609423 193480758 387502963 36891537 922410313 33355572 775773771 166495640 273499975 883424160 620778736 390873550 56361328 787171346 70667776 371112463 282293004 851687067 70359346 19512697 914362214 332004782 756606545 960579188 41179105 422258712 555730197 502571157 942393665 755364781 66127964 193214044 196981329 525185220 765605801 46985791 618372815 590588217 578431749 988575196 902840881 133775939 552485767 805745136 786124584 890949374 468103697 183082500 846919078 183411087 777126111 322993408 621783935 243935592 554628243 586807563 709961036 809055803 28606159 765497076 298034227 503896329 619220669 110804675 185883979 576060080 569627340 786076679 969435045 92447549 439787191 353068600 480776814 720705627 744128554 244794287 333981663 440640139 519185013 243754471 252086561 957442822 46848798 946915161 442451366 402854908 991179484 801696004 519799794 415329844 288253706 348382769 716296633 220094757 26752810 871152383 300283219 366136540 124934819 122659595 637755062 839043454 968408077 499909010 34388053 650135439 207513599 553888591 47229297 451201783 859476478 549007479 116893417 417576727 983771711 643842446 912177990 593704486 427703030 178452320 556878043 791752115 779310597 260204613 53313960 571520195 27965773 230104065 617398608 284504319 43665769 223720671 113078445 817794323 454423531 858145707 963882551 646922302 158367488 985494615 943676523 605027645 644225781 714825210 218078728 569385265 511133053 521085041 61373788 310499858 799278995 653393730 278883299 894219805 377334264 153320116 517023754 165207386 483949646 873952752 585710741 252791590 267671212 550294904 85540136 729837659 870557466 673850752 589077322 112470816 735907094 161863338 988489366 31601314 293323624 815722505 508998146 193334422 303401422 277385311 848880364 440188002 293210582 593655319 195930481 850298814 209432650 336256202 994262867 162255876 897640787 350775253 797223661 242000021 133874730 860476262 514981979 979967373 819359817 871765833 995590416 90087752 493623556 525987320 126027764 199071847 450175684 198843144 53628964 715329144 421550087 177672466 771722282 402499 918093706 167496928 418491359 493352723 872317116 125278070 312529717 815519107 271122606 279018309 491538130 168506073 363910120 968593984 623718350 228690093 559739361 802926108 980732895 256724845 392253928 879265056 696879908 180418527 597307732 220561838 699835588 814530485 438635506 969756596 435459286 154094696 719822557 687929721 31601705 433120207 64411949 270883455 646203018 357878108 559750714 854077343 476210986 208763983 217855403 213588347 123393907 321037853 60132351 852834076 499523003 201602425 958389109 425228230 217689418 102845724 780437090 96913248 40092805 675952455 594929552 458008952 260264381 865052735 515292152 387280951 726692205 717408607 812813132 903207813 958968676 312636151 748678313 227631675 705022706 265462995 79208714 566209744 96539003 521667068 363719016 450664685 901159501 198602077 950931253 950312189 68372706 683488120 261451295 454085618 394653712 814313462 336290736 755671660 277979960 14108264 32557402 782740639 409951681 16019875 396883260 967349429 9002509 740192125 304377481 293224771 77273131 672445562 95745413 941445516 28468201 459244583 502127533 892764131 207417100 218341432 166107656 463505257 858718322 346907435 20291023 798790155 359308868 784107621 391912848 311388908 774844686 270610722 106717652 260625040 152406402 617025603 792715419 111974348 955713064 172499101 273888766 49068649 245700680 302180521 12999367 218329837 870980557 568488888 594717190 570099874 260705691 553479247 15318460 160276329 830611907 642713073 155746579 258094089 672614167 180435449 981793655 537607429 161551078 488677292 920992312 81024851 103885683 418450026 751285218 508548663 710316684 973517952 48532482 831455127 613847883 162548731 984266766 838657760 357347994 121777446 533047803 36476636 966185699 141393718 816607336 258539072 710828641 627716635 52631025 746686350 22267172 418550843 216777539 693817273 442179130 215713911 890893393 937000687 392896490 406739944 18094284 497255469 278891309 900532092 371170239 54316530 719780157 105098167 479930221 511887041 555815253 846179060 203059090 651416340 789550133 834852831 218994230 347506828 505564505 489977344 736472980 331032033 615563377 780687691 808884890 885613107 777948774 402103358 774982585 860300761 995891961 636276293 688194123 918910810 580258064 77654575 322004752 818623125 602728990 685697228 245933095 285000388 719862746 198248021 432514538 896560243 976657024 891013601 279648033 453566525 832846747 498799868 32554934 725298952 416501728 786804859 67145127 901278135 225938923 71138589 778163755 987779701 415059500 50567455 156350910 272275520 557013219 95963409 706331542 941494290 292116944 209552179 812082623 734077320 47429933 848129433 452069007 912219971 795232494 327198444 704621012 542934059 560364481 708019829 694539581 895967714 123453663 815873303 203032166 456248612 909994735 427236541 896357439 724006708 577306149 10716182 607642292 368240364 267227809 999481558 657790475 215573702 396613143 8950382 875271064 458804210 347647976 907857840 281837149 836996105 503021610 815902191 956314387 401165291 649288816 202040941 290448714 213213108 116996498 395548621 547103160 242584144 117719181 777029820 315343270 897190476 377690337 780048223 847475282 453253395 269189640 50830202 44935144 94416719 352505743 30608668 53581322 30521610 184938371 441442588 89422806 901711008 501449226 842090778 838845401 504719925 623876691 20932609 150932489 831246154 673989220 779578089 646314150 276381150 362338132 432565303 916396336 733238534 959874900 191627732 535515587 157882199 912645571 107090665 521423354 295257862 945236476 854932333 485570157 814008659 260209495 194171619 7648547 612805815 562533400 95303331 462015121 830407704 769350405 875389834 669999400 982597028 858281475 858229521 111339840 464590321 204403203 192196429 378038386 911163007 894022307 153871807 683843329 732964800 62079229 657330884 58909070 54481158 87287674 574155110 223307388 369635565 736589242 398180778 565812843 461656155 346084585 105241618 310079484 435948304 663724971 412683897 183257285 4645362 117569624 104085698 490105316 269502566 236928600 414250737 245011719 376156794 619944769 295872878 592459459 542821082 274712540 344257582 638021186 708808552 367445571 720717198 764836529 335392186 168894155 581822901 388531379 493751409 206751827 722115678 56101514 332434831 95349303 416220166 9514421 29145243 567316831 321635452 271644715 995056561 315596887 144703505 616456945 215550739 409044748 382467373 242137584 270797192 659787865 717482181 92267768 846173417 189388622 258734570 636955670 724275886 74996640 304420886 366276818 397687499 34459606 508633542 24775430 114124872 597070279 638790493 265349659 801350125 806850986 947720801 456678141 381528642 493106086 358311782 259254223 844270750 942784075 923444154 429443145 26308938 162386075 653930676 114495141 940658735 758357962 117627763 265813774 200900913 868846795 504169046 10889273 761102219 872089671 238514802 822385424 330336605 16340562 195368544 59684853 768644940 940071209 423645374 340852198 624851466 728497062 528550317 802943504 703249395 681402259 131148306 686276356 469109910 494556308 971841105 996919952 738116427 1665172 265425355 716838084 156662947 371330556 455387305 73749722 740849151 233560651 240061537 410983116 451494199 642167960 358211240 462285481 513776776 895884238 597153368 125012686 770418454 969474951 541437930 149478212 549980855 368441811 104305266 9069479 674451935 88853160 202746198 54175826 947300324 837999441 693411533 214784938 244265336 688441603 441418184 320710966 661705985 614046132 281538913 981366879 592043913 993981813 924241639 548074280 357405202 884554282 679084088 437100585 164329456 898221521 133389133 911919607 3508088 843537604 375617149 341715084 683307988 282347622 392634110 764502170 435353221 149842127 633877717 793985669 887945092 712088363 772644867 904034462 171331915 702549869 211190432 279720511 539372965 759376890 709191074 273122911 168781987 357088462 577936460 372603157 800462543 184391236 787947609 632393037 295277864 593045279 618606824 199338252 417934365 485192998 822100257 308180969 258706052 629657138 99792783 592737269 996926573 82135503 847118016 693255084 848871872 208599364 770482601 199793448 475601496 729137439 77807484 634336934 360616910 447862590 58041080 992523609 283737712 342197859 644053410 175582266 558432519 216504166 208483301 164480277 72142760 130340375 576979876 234699636 807915313 994160671 763982108 458251925 513590323 536230487 979579905 250823100 758892604 535564495 786484349 603129192 857507482 880943417 577438215 949602240 554709643 729584448 503558410 900560097 434322114 267852886 582976370 529773315 354209656 482312599 677189057 373302212 853812970 50836397 14524770 735863216 905114294 474180413 393710469 243972552 275681953 700849696 905261389 989863918 841456953 987525185 826713078 469450421 200739878 800071338 37248738 759228790 574848097 433098090 555640172 721123533 354678919 340589109 306720689 642401850 374683047 497066686 665493307 539034546 826543412 660541677 32269105 790238738 105218918 619284209 780906183 384341187 836374006 332261201 794566051 109539045 493476001 652429211 665299589 810409035 142467589 501512766 84860269 185702613 301976500 404550057 987221300 896951064 304180031 310861424 2953100 604646745 285654951 933644212 944950498 829455054 26337060 610102520 789937379 510726757 375535122 345307807 573389776 797716219 833089658 11230076 499996866 127270382 81673308 407345731 367607521 981739579 487642805 525064251 869422249 65079619 767102448 31275449 241822840 46516208 243419228 64272463 832713279 555589495 497238559 345952603 70977564 85286319 586649160 535283926 9763961 302154249 168516790 886811646 152085332 255362473 86489945 208630709 419231991 517742166 157725899 82078289 185456745 150002338 330201983 968550638 311711764 221522712 534276581 259338588 829836219 177145535 517283063 655938569 898226094 493486602 639853673 914371771 265758163 963907041 877023768 950622455 882038342 685466121 909479425 220760977 697248972 799525355 495370141 95932046 789444638 272208788 632795696 188409660 870679530 529600416 916824820 520495434 497822276 969038506 886369029 125050752 816924456 667392772 277213447 358764436 19639753 669294916 312989166 685653980 320232714 611268541 579721171 632958348 678054241 863949347 898076811 389313106 37660681 646980170 683832701 888300497 965341438 29217524 772473379 651090280 170838223 81421103 403986895 495326596 675163404 848262277 909893404 168861586 312927599 863661233 712989451 944833235 333217521 102496171 232434901 411146587 141899955 9349933 903453060 260674216 381014417 385651618 225804244 471915248 677833043 549872492 960462370 746612862 746106553 639087012 957897370 459219659 703940296 269528176 52626161 152076711 421475227 64150073 66469179 334439568 461372754 535961324 687953844 16744741 498201019 30984126 52601462 272761826 264123121 902126869 643630584 845518662 417263150 662588856 934396441 349223963 748372773 410432591 944804956 556710540 997045883 328861781 586177060 433313803 738085904 117956228 519933236 210072666 714869019 166395148 978848987 28264093 392846617 555158314 919623381 920125101 567987377 946429315 704164960 947280480 248370257 363604610 581318245 121663680 642170983 263357376 560914843 594586066 972986017 505276617 291269432 966428519 851213484 348768610 718997200 386401882 888770680 22520368 847487792 148829190 581309527 918557183 283296315 623155456 837757089 492885131 262283108 131118314 360251925 357141244 542593739 414361055 765872008 270152836 540545253 530301857 825049321 400160435 782842289 264534634 696975310 57905128 825454457 371843487 829959553 301928669 867105878 906878999 717956636 256856764 819075937 818758941 534137514 873367995 753768460 401050120 103862909 257381891 634003775 472613657 677057062 84504269 70086879 531436967 269769804 63277843 302148318 869348340 508008566 707978537 657406030 614767263 140774300 813077530 951146097 494795382 157324216 978605164 100182502 308204796 682389951 29505960 689976839 35730173 157002894 281746384 768212470 158988848 185697775 269874970 64669046 468567303 792787835 90179204 87498077 506376779 579467913 355878824 180133201 670906048 737937901 461938927 923949705 174712769 26837870 322284273 132061630 277829531 543528628 457779781 187922254 766456165 686791356 65523836 232416501 645627008 847149320 355521415 442632650 534223717 972559721 224819727 827671408 773504850 845719690 475202222 762843868 936119824 125771945 312888221 134504719 600389758 543082577 503434571 501574699 887310932 579220424 1692873 101272181 903736260 195485024 541936505 867083697 282862408 236723286 650011513 198556873 173255328 740664300 918259350 901075334 507891870 255346456 210723667 226758797 660108812 47609841 792056586 727031084 245904436 885567774 771278612 905344229 46168991 867947442 705328145 139501047 11290113 985421939 146200133 669625733 557163967 538432352 558925958 265674108 97690153 528539547 894382515 113764087 988964416 526765933 44916050 723173815 807143378 399982239 55774093 566069700 377474050 311198356 77962634 724294941 664417267 852769991 710535892 107373577 778586272 976290938 598002174 371855866 83996333 691009721 79634235 450959511 522135551 43448363 684114820 43643485 421089269 441877571 364021392 313174121 656243378 545175088 988457275 809786894 329345645 863303506 907340325 205401045 554102756 283291884 272037331 650110274 460457983 428326078 93935799 538316351 78574466 260939973 413885222 222430819 77356801 143231721 876582895 1784270 203261406 962365719 999903168 216067934 810554088 584484382 366235874 449127428 902004521 161226081 814714368 295398208 955281545 712761771 636389277 171608079 290246643 109683520 14589862 914709570 746423917 346344627 565151720 297886668 929453281 670007367 969868359 787433492 847838532 968695544 459826169 345338620 181246724 428711542 865929539 726066961 746676786 223683429 997328624 356252409 734042540 163823281 255702688 673506632 179177720 315003593 557863035 484071691 811768604 170189549 710527142 825500445 323274918 801517067 546707239 844373377 742244189 435559368 186987561 793064951 885801138 345600917 74521932 919717538 985319477 764000896 681854903 586598977 725865594 697937513 996169658 381611236 39276673 60953413 573769603 932728495 692334713 395457153 734897703 998233310 667508207 549775336 35720997 430095766 21116687 603221633 834009550 887470948 495047965 163336592 83262720 581868489 10412593 313754818 178444057 988450124 235676101 139353219 954742208 756813325 809006834 711259503 198325774 18806593 429449344 716855714 240029207 220278203 891738332 792578104 483742712 410373041 32863671 686070039 797354824 453939966 68557630 133659466 12017797 96664250 250697567 688481930 164479322 946431499 602094307 365285750 993422780 68542423 686102139 178126253 514543069 680158471 902318890 88103358 875956795 482675596 895759666 266230367 783492619 203397165 759081665 547485497 480034792 85974316 704467132 429173335 384535668 878040115 917816500 196219151 685187062 692915004 380817183 929068567 879929930 901168582 636889079 298672984 376308437 104359409 467588735 771057827 657200149 480341425 883982778 291661792 224357987 581261064 695136971 444359727 203546774 298389385 931375987 437302153 976553716 540185776 747325250 297744659 490980403 738293456 788148114 131028695 756102448 477783596 767754366 795772757 463828183 9473662 457979110 227643973 301589527 842216432 24643141 800551 33957731 265494545 128315050 151043593 576013664 450385088 128855795 259375664 607604019 165784797 527211576 331424408 357380487 614037573 311468784 985672957 137281319 66880570 709587335 793021797 789858858 87379709 247980957 452827375 571558131 505046393 380577676 57444759 676373180 850915613 312304109 279975296 728956257 518255709 435300497 529090110 263314811 880882856 306016956 220083183 706403226 339611995 843185322 138353832 451789632 464075528 408015092 892833490 62235430 717815504 602220034 999900854 360617934 679414191 284223615 310731074 58912080 236679042 351144268 414158237 449747948 209945602 373143873 942328749 492095345 232983459 849577176 905064357 433206481 336163266 456477362 124594846 878382168 137679999 553372222 562022211 214590260 947145591 462175354 583533027 345330958 616248621 175135708 950489388 753641081 447645190 540366211 183736263 796336681 64518767 131451085 958502330 818148858 414825155 272130254 784166138 647739710 24111536 537316308 334754680 944198519 428705959 79104132 260082017 347274517 637284312 899501950 969420943 601209594 130284330 907259570 824896159 656923433 646004111 515238749 142986974 313266299 220047446 971316020 116059828 350358897 113224652 271252800 401928926 330092597 987239227 252421224 798214718 508751411 313484457 491148909 155108252 765062852 796641501 387945636 393198710 481696151 378160998 213988791 815296349 194704114 888240938 433781816 316571360 232233010 669789471 457755277 727785181 104420598 517392644 323872732 895902628 596699039 49667836 687887338 128313735 816000704 34390857 866731841 519309998 16326654 777893354 13648333 606661526 707344750 80966020 215098462 861875589 601264253 130518313 711712804 793229294 35883946 376770716 651789230 756800383 203160716 237806358 162344109 905608868 842856441 911271948 817616111 336691065 904768118 839774697 424176799 185086491 782100943 98773885 308609332 780527207 482324938 658919692 10032655 232392529 368131077 8300115 633930164 530602764 448004825 496582941 868261387 682151408 534876021 888079627 427983671 853503716 981918023 484320432 234091232 762557275 105301973 49879990 689747279 928811119 456122658 961255647 192435581 17167689 924708715 27473832 624435343 665706056 532529309 725552575 980346245 769950725 196945432 716921035 658142669 593761396 150889758 463213709 876301222 796374824 913632455 162176056 153405702 25158 390051588 155348106 190371044 356900681 897933751 646819566 751018600 274648484 4334250 971852948 812466803 293594755 657429639 343073924 778424921 734336662 924130155 195371847 299849323 410866395 661401715 112618862 896353631 898464703 375950199 196843443 471817948 83565352 553752299 603313626 532559514 272331488 849245905 359777968 725787998 16807514 757250049 296505461 668467692 491373013 37068583 229518353 806319612 567854469 339813822 675080981 94306081 348640634 544503288 840234787 285281724 606707905 599421248 621449990 575746616 126078310 166123058 386037078 264629199 949310175 811514974 752920907 53656916 934427102 372423261 697821545 991192302 226118054 499493851 372872245 940816428 373830725 299168255 138533246 571908832 661851819 910932447 359127782 161279662 493537204 716079708 210726000 260252053 4890117 396098986 347597762 937097683 498938212 855780131 500170542 370238554 346162726 719281218 830395688 186942207 167918593 971657093 596471185 602783 340323128 805537733 272858728 714650826 371581021 439720547 351300238 571224831 326895725 575754418 170827120 369303659 250168998 769753840 725749139 152178431 315707281 751129975 889949109 73409149 9760594 190579603 429070746 944758811 905864955 527681016 372828486 456120207 865799744 911327341 490225341 149699092 956036814 682482714 787934567 131412425 383871993 675208184 811543331 950549401 444155279 966914684 233188503 713089414 502981370 811620604 399137229 641354333 393239409 878709634 111946694 27806278 27535965 365150938 69696610 449638677 645681007 546832020 491122178 363596966 894668182 286496260 657573655 996372403 22750967 900539358 507321460 199274529 412683112 186491432 218238994 579804344 487435728 593215867 650271672 980931136 660018159 900354249 87169472 583665123 618848815 192900549 574840174 698540404 419912238 756315192 387105643 590009170 233786653 337420648 576409873 799615342 953467650 671932176 483241740 802580705 85945564 763761631 848267561 336440985 401606268 38240741 71232963 606951756 530618990 670947283 725607359 138433996 812939147 782751633 921095958 410267935 917556313 365866422 18115859 311852170 610102500 609240698 363293610 168276471 877416227 386929997 948660685 755421085 6479432 843861728 446422379 561363653 832429408 793304082 353238732 176041269 711035117 177965779 762870974 221052763 997000287 345823889 572785390 640671121 167722492 553423392 265114514 327588683 722089702 917411287 509097470 760879143 905154720 761016051 821610027 577785732 537511332 739750086 488635733 901099992 992216928 284689306 573369341 294945069 769846756 781343834 460869900 858073415 175180089 573967431 280496823 410912766 777029634 24788857 914205306 34818644 519557511 809407134 151142218 129159883 25409140 861699753 195694421 406209343 793967233 174408297 919111605 387364059 150052820 119154430 893178961 88026690 685258244 709659060 923193025 509220909 825630221 283957256 616688834 618132216 381694042 733082697 39576880 661810227 735514377 699869174 301047735 25602652 771099359 267580312 191006912 442309130 940516410 731007175 449745542 79671953 838933594 957154145 328066553 168305383 720911294 502492752 642962629 14914734 83109343 361077452 529890550 409886397 347714 608441017 590545763 434512762 139600160 83838715 788993539 280476870 854307502 213535308 537767988 475225526 725377617 904956087 912859795 290604819 507255949 999662262 499457078 42707416 816030674 710817354 920014756 129401065 367928678 160676767 688516267 766460971 822861456 677490098 772036012 388660104 615640583 277919953 326795664 457630408 131992364 961937014 199387776 410653139 296109781 579668813 890508685 605604966 693324859 452833817 859337607 438174669 202738993 781371835 451985998 167617653 22014580 263279452 632017095 490021036 350319415 687801339 471804749 856448933 669836540 650890368 616844974 57265734 508280291 9677195 986887455 205607294 902904715 433211422 13937088 151104472 565899072 512729169 808928077 504494312 8113222 396869226 772785513 12678478 516213280 55259434 925883154 94973585 752423081 726257736 138489161 716327537 972044474 229931307 22927997 761487088 155388873 851268551 810609779 668998633 341605782 307553903 588043595 836632464 892874759 280894435 289486946 709033857 807201673 415428691 899146114 120950288 416859092 171237558 497670565 112357270 317924948 376257664 604097653 976679911 875188256 786383091 893804826 436684805 9486482 874225038 499858909 872655790 522187306 861088664 853772105 76366989 645684893 533718217 388541598 267136113 516975197 592410257 547379134 854176218 85104124 727929966 830787401 93683102 374417978 948630784 481123365 266094910 159056458 808945365 70118832 146969729 713757532 60970111 72054622 351298914 798815991 193839551 449881765 554459923 915397498 52601657 102462547 80076059 888888012 188416928 138252120 238371167 608139798 613250014 616501252 159477963 503530213 423804292 459563253 273638851 881216770 104360842 487270855 700061660 393360607 362146358 202688488 487919803 619935671 662897309 704168426 24130595 648285645 788148031 863658823 263161079 465025698 180432768 544674733 862301574 199287374 665496394 926281321 238432117 911780523 358492646 225011712 551149779 926335133 577233020 165079689 464662262 448315470 131625757 662372620 276967647 70795412 635325715 427814906 345418664 907833629 657801217 162597660 975473406 595347561 961366917 574982052 396715916 986228687 918205235 689484660 276550777 569060007 923640752 319195751 267935018 878696054 408518115 59566216 445694915 254465435 375774453 394851297 135078860 732133706 840987717 480177223 248875889 887846497 265772868 899682462 315769451 628613894 943680465 303501272 268768865 491455107 675973888 660388562 860018884 148340218 56925744 91647477 214209036 462119101 163345774 136247696 367877962 730291107 22812450 209183632 905316380 453648376 262466921 325823378 615579112 72765325 279027010 462893850 122968749 768665161 604079471 819881836 341007644 170781961 338060735 119598956 48225412 918649276 337141529 885419997 225994097 403654884 481413156 94196030 482883190 992970849 102029016 214576771 676277351 908099693 712943576 672620591 617872 733908527 643211538 706827203 605271725 179209695 741421879 675711300 192852547 444797482 368495252 973589179 942819347 589132533 231642203 174498563 833994145 997210774 274488691 8139624 119806341 417707131 362104890 578184326 105435065 549803397 683444972 511692240 500670201 856502318 11384475 952142163 92376136 743562115 987044001 247778472 742518596 605469030 843992046 880918963 936642526 381085814 986411711 464400643 961713448 115427673 319898262 871968955 774801843 262323994 615762929 179856363 657033463 49404850 734793367 145446084 34549658 21546589 154742464 976800014 295357950 232506316 670619062 687208460 942034771 632379192 675240489 389827467 471178986 597826258 89423302 794129274 598664444 798503462 527652334 781014999 805357722 922266645 668027434 373181691 583947802 397382506 660505370 388107576 8505276 77465074 815424076 722884237 979634317 948054124 502566363 52830133 491873210 414412414 746952409 675343766 342055515 421103499 558864082 302350090 285007163 977383426 127127086 885598880 224953770 848998121 388352797 983088103 188360846 201834066 166249236 57440139 956461139 183868084 737203551 702991012 66238681 264193129 904618653 696660962 385537847 68258434 276470678 334350812 699680320 917003072 810663604 963576576 411368427 644384836 307374016 192169319 311245973 699101013 531106958 33853260 200939675 773062170 992381270 495402018 167413038 892433470 448014943 485546510 960762771 509793049 875893741 27569920 16718436 649541129 446607579 55306250 917216378 408808951 371195145 164290068 437957407 253653882 417685817 502165040 147453837 220278894 702273663 639025462 99031631 969993017 247089011 125739870 746974531 743198241 192452163 204148724 75572272 673136815 773888129 538297393 128477229 412229887 43685757 802982523 440778387 757972628 164692002 121684557 124261529 337012571 517086656 259502898 670351881 965601636 750758421 902342006 187154817 349019591 210723021 779099640 167206893 839323692 903266646 588768926 518200589 180162170 602905901 2491143 974498978 935997598 497713279 738818795 316540760 396498037 608997188 67553908 177667190 923390816 950192153 75142218 790643187 620228274 746846745 586774609 758076733 267458087 797881557 263187412 455297894 209462687 127749834 958751771 642474628 844699144 172547238 27968055 111461581 834635811 768365082 497328270 257290795 100975789 29407543 938679260 152297766 950911678 220213541 675627671 297732784 80863694 976436036 435054993 891841292 917659812 433075622 615780803 262932602 196230508 475891042 876293984 740032898 101312314 450070240 120256856 162721775 167817359 986830290 601926382 766594421 36301085 121049373 482833048 472962227 706178760 549571942 442794089 706185685 539340289 644200844 240050152 988162805 677986231 577504051 911509171 607097667 693301186 655025555 269385965 998858618 609188969 418404999 480312220 38346201 491607270 403091792 440443655 637070974 715158949 839235036 735360250 385138857 683514104 385746416 21301270 832192158 305979629 900453456 444392724 290574366 144723731 837707618 632348404 78722395 291755191 529726306 23692867 117688079 868555331 154515936 66788238 610919773 103759759 455459107 966414645 507351878 961630689 239539638 41867756 221116562 644973226 629806175 423738422 404084435 202897868 605993677 58154417 26528466 947731422 543208625 211731071 283694407 538476923 559894804 537156974 252840691 527265597 284381733 554074469 719971281 371123868 415367767 513481219 855975781 914988156 495608704 982387477 829076238 454917083 307469846 899306045 617672283 718750712 117305275 931875039 482652582 339822606 940146354 284712986 415322874 702706283 238443380 610120170 932299794 918488541 753522469 640524733 897060726 835461160 491562182 821333501 512944014 973431579 590483191 430991542 631865745 898662474 428857556 429744068 578153524 722201598 618774648 86373807 240191854 989713562 188611319 762502822 181780470 505108134 471479785 801438580 231761782 961093111 719194924 435967914 35921964 955389547 112546190 102622805 392602518 195324126 880795675 731372530 600815912 65829874 442107238 481206735 762892853 918109259 542357215 355320623 438442003 85011593 143838866 487556308 304110530 968421564 237519733 213539772 449195729 424358610 419402163 598675223 505707069 53039940 741962027 713851723 730403604 71224958 508552883 891468906 62359598 627873082 500608679 807121272 591934307 200455975 834574469 888028811 769724591 943340148 78683543 716705580 394289758 7250312 595357053 733066405 304866790 948173257 45717174 53590664 345723272 289745270 657797951 775380229 106294418 415573112 327036919 723793030 781243341 633689031 597539269 301418920 938887403 350142407 219748919 615168246 60310738 208219052 700444999 936994557 411042443 708669825 398815085 267556660 670271937 948448166 831252262 448093860 805670304 691762636 663355982 80599082 988629209 195913300 71995349 505766396 229558833 299970154 338105946 971753083 364835915 566783957 223067225 437049300 107579430 411267012 506157736 283733425 916533907 428201014 693345341 22293954 437310417 926018642 757483120 175936324 439903970 66407972 572879952 171560808 806389576 845772903 922112603 291075276 29952616 997454004 772763348 158136643 189318919 149103337 520186175 599138711 866010994 705787040 98916253 446795536 884379653 6035851 711107093 280927418 100847200 323020587 416461260 27971960 740897447 473664867 556916453 562694408 322792450 555210687 592240969 529450845 864027759 798877860 992882852 508202012 344954202 813364897 646829742 942497006 247336332 546721022 415651582 315602833 132823724 312325300 649500635 686358086 485707940 44102887 939551142 114831712 608670406 640662660 461221205 374986925 640715636 453932234 909134280 378052014 344974458 300317637 590263240 795152098 351904864 605973217 765033387 319517047 516350067 726155313 426136985 306259925 138807227 892729459 846922356 870826108 616242004 988812710 411649449 543511616 947446025 430577032 127185154 285557622 172918653 285114027 69120413 465770770 96612074 750587786 146626150 818752609 170236142 764563700 697192329 376843887 864332864 947720778 938481794 403311711 102201377 963435876 856957384 7411544 203296768 948269255 496751493 853704862 962783958 650718592 340402364 739202404 185426738 470960475 643501737 686277909 49626166 430745927 947552405 55435475 892417068 414340254 184756078 765797493 586487694 918809779 319488348 387874739 100019844 44295906 172449049 445559845 559860165 784910214 783033709 153406793 267654843 422660083 108107767 869070022 988562538 481799343 759960138 711089514 634721588 568339690 764498287 551693174 336282588 491086403 200578793 501178406 741780785 192121663 474251924 582000161 56617674 225512922 40076454 379707438 556744734 181566914 422338920 300386003 380132642 122767672 57709225 616406048 379037116 474695649 948111966 701485873 619655832 707214504 13916833 27777963 408031624 925386370 632399494 247298747 566275186 860222754 539154427 228102563 950384861 295631386 586663393 142172252 219962290 460851096 343245989 228965008 681200403 244394995 186509336 760683334 280940275 356603837 471088710 521369393 876325705 930643040 8144513 396892961 376456239 515745866 586855212 209929334 15518056 386617818 307062111 281518516 583529842 377444680 511649963 769626543 753120324 191440471 630690417 12646643 304551058 519207248 506031059 478808264 267202457 259545829 239820357 350031697 636594946 691325535 788715304 986824740 94029636 431068983 525961153 845378128 639216250 78591024 289599282 52191749 385060539 203944021 899610064 578493068 180155064 370863679 20369802 639038721 522093114 159697754 47257054 854549249 46053631 990118482 788474739 788113853 651666346 3344185 924502496 530546387 46531553 20200789 628458227 757671968 735862939 675145363 55495780 128007048 862989571 132007553 641144275 357326776 748153970 163882133 737671539 503971754 880137048 378213360 576266901 128592513 714480876 869276349 88095084 8924008 664798915 11233087 413495939 146780182 387749452 593419882 44021199 327515253 874180251 488779361 619712400 756006207 140599502 460577584 116862598 644118465 854444734 174556998 756035758 793992287 973608157 488954427 416744129 571280447 995924860 539718234 173219000 924475412 800128407 582705916 659223087 753619017 597765733 462256430 108403810 347414738 25666002 908678436 411701007 776403072 203971169 666517424 211494868 421184775 89966737 980961615 486217208 425868232 527132347 214878068 442049391 646096746 708711899 569275674 125496672 930776950 427420079 62131693 136585677 734102882 828679790 204147058 676631838 632469347 613761488 23453482 654761966 728471411 83058108 474933507 636016551 633637867 990480452 358317125 6897945 770301304 25305753 661378875 799826084 272343703 434671725 390772346 394061394 400778774 567397757 406408002 828733246 578480836 668201767 247899754 247935609 307080875 611192036 784996367 257150297 594755510 697994784 407138553 695980260 406202909 403462766 413531907 704821653 506204552 645302175 521612690 341467272 8153760 863822112 765915740 342015388 709505096 40044892 742517230 796230816 535458182 569428534 682115574 332873732 326972403 265192656 634218317 619794047 341488279 363748616 767155073 758242640 546520967 139768246 886867130 603940709 54590896 877794070 230845543 552771884 695232649 490860919 198305672 170903218 397391204 610964491 735607879 875367225 94939133 801653783 473459214 934726253 689816336 966313956 142876223 163486012 852725723 372811114 64921191 227047607 312415446 646890126 915534413 186673161 606911662 73879090 830844359 682688921 473040552 78064476 264705378 750399825 784939627 398365426 611298919 944262903 8735492 313635366 423609396 178293697 686909437 989110390 9110345 298829788 665959285 757568468 481538137 57656939 168428958 564664629 501075534 668013191 920024265 144834163 242276768 91121627 595805852 380435508 753296763 827110639 488585559 521327660 910450835 767089650 876673255 80552221 952092602 307619961 822078541 308195605 658580612 565107158 95248622 150108143 340282471 858764701 384658839 252004330 874428850 105447365 331663784 618051753 859959352 778588317 84635092 484389922 869837703 318626842 154330509 446232326 197819801 44700533 881261861 733932699 294289741 751101323 453922019 971796144 297238529 802555562 119855840 740653399 468236303 874624003 88996972 416655310 718200762 895539708 795113320 888123626 667014411 744920246 343917095 251371534 635521975 672170941 529070759 217903893 682564453 265813862 542899476 57904496 247880607 275145416 918565170 449467158 965940282 373814502 468084484 122341852 923036671 763272740 708508550 398132162 773994742 375173634 582706541 160338452 730143864 745959947 402495845 983641112 551479509 812042084 293803282 551064830 734452421 223498695 207066847 143449869 492726976 831580194 597777651 182125610 528380696 958421661 734362446 115565011 165699995 401508972 794444055 797356457 556102619 418122360 762523299 262628933 423385175 925248073 753732788 946166405 180323217 579166266 827913039 198557528 780338075 527406478 375423398 469899168 470925633 103767838 850809138 737813372 325426708 156497477 688636311 718293748 936059098 44657432 895894002 21374964 722512454 956043484 518798973 927753317 430642078 124461132 328253993 307842319 517230683 758779546 139330070 600116667 477609545 344977330 743944603 806012446 98211092 762556726 519429253 675084845 853884304 297907285 782684842 185491211 347437070 782789511 753189286 391900690 275555515 634596629 98625840 60588292 829074874 86673544 586393191 643279354 439940743 715719526 65366546 320673132 632940964 605018175 717184590 867327754 546095138 941134204 426772770 590388824 341878014 941331269 802605742 115690842 97321989 662125595 915997848 397914270 439562034 242826177 864688382 469054475 830906768 537126103 169162114 9103986 59870227 497243585 341625894 901908659 282937111 934034212 158098783 506846655 54683209 314843067 517816830 520558339 456775264 158142602 644394199 683101771 926860721 363518365 773153444 206110242 497080475 31799763 186315608 859845566 316646062 275155959 253756543 23212377 846345290 783107954 234375098 911517633 813600738 519340356 194875036 129984009 904250131 66870666 327338956 553859628 962798868 489453787 424808743 557397439 738139715 5508563 10498417 398881736 65541420 733343463 130714337 85655965 436644662 609140879 707302773 529714451 619749398 894419513 612639685 888967004 768466727 28385901 204741812 332985965 24353708 704943913 64750572 116499445 119586776 348219586 591964886 645682345 837110111 223714132 369616931 434297564 917771026 191213723 885691087 124208443 554956376 160402515 470914902 690693770 663148186 32526920 391089294 609421468 800190671 738137048 160435360 639896580 868491947 255724595 548217255 901808317 104982495 334658491 895186861 620508654 946619686 916898340 83692993 957418932 749428252 330008795 237388416 26087086 676970434 369770207 570219482 181368893 845492178 812964634 830754693 684293519 185082039 966310086 518564624 568165866 634946065 470995167 794343566 296786178 977356543 382213228 50592463 324875556 968450149 120484815 804619112 786624711 462574823 292792446 575660214 888703900 64827532 907184978 292694719 37147129 698871046 527809791 438094141 235564413 836448750 202654139 256306842 707742675 285216075 922076209 480460101 401705098 337942380 545924867 796576045 399551810 512791945 635811101 618776390 314621444 532158255 359475703 34520386 887013908 368478065 357975947 18512261 961908823 430781420 782709919 962293397 568220013 635455965 557207458 279731099 836829058 435071213 272496280 668423211 435948621 653379221 916626477 988004135 119729524 70374338 153762615 278821894 846303260 973219794 870875427 586357765 62845677 152630660 344263916 160622689 501242026 216600341 997409062 973277436 369953353 319459693 159526529 355439243 252981323 323167536 389029629 260709934 574745073 106957222 472308594 724751022 498136928 632383728 634582206 918974711 322177840 834901798 71215751 378153535 69256789 241438879 594346182 750110289 923785368 508096520 595305789 756068839 810936989 650181449 502370518 878362734 125914277 270173910 267771711 506221422 248061883 29269799 236882662 46637909 501156919 126218688 472577873 317281235 667062444 165393831 293395410 258933188 842109814 175454989 216136370 33170010 230319885 248136486 628534986 936051269 298788171 162692133 870863044 827710864 270887787 35948108 527440141 333817904 648115532 695707472 11561099 414899270 700501958 841265843 600516157 246137321 495800138 298405611 640268503 298978703 141402649 967545920 204732173 543388781 208986507 484327456 787798168 494578672 192033912 880682968 413985126 926787730 920363624 305985273 458368775 94626704 369908294 355270194 331013958 706768123 982784155 156668776 310499703 298845334 387498331 102938983 54101054 700938557 682486033 588375906 474962206 999339618 948017273 749620633 283215168 439633596 116849031 435983254 362768145 604151497 327102029 184734510 947214165 538662647 344400273 507423771 511296680 871035825 50082624 994516970 630491467 208349273 731293345 683584313 172979653 711199271 434814167 621615253 263095534 442796216 803640330 62818479 532382396 896003280 4205907 209121397 779341808 243850905 124300663 707495877 210067368 802993188 230166609 733903795 423304662 262933831 91869996 885853097 192269324 25729641 69399373 911027708 439114045 607506973 450561887 178518910 37920661 159866327 582460437 370589324 647323638 403289096 309053863 181647666 116857911 876810652 392377262 514492124 257090605 165294109 811648988 538539322 290610488 247951786 709757153 319670982 997906953 839724571 906806882 147362025 748147447 232772202 923416234 827962213 786155720 989748191 84721827 940053151 60658728 630962660 545388262 917847419 517501597 256896405 935588341 562705931 104428788 82897128 345215443 901089510 275095021 500614460 382847099 391301221 890628918 25738950 671071626 610960467 924148931 921415127 869801930 109274702 542758521 290015765 318070572 287390463 522115825 822864365 509859403 693205236 134190380 918857771 122710541 573775625 740493056 414855824 762412125 807205367 944795844 766164594 984725973 892795789 716595166 94279719 80318495 187142917 563586633 564501336 990430559 646638938 112627370 751788002 222906316 790496608 104181697 407230411 828696425 73568800 541838488 489798524 102516286 309431872 203763405 368558531 927542913 650418537 775196950 449475285 776955171 677950935 397635456 815098902 328081356 730827682 815141819 704295900 114905446 173817928 17350519 829383961 510335608 83003623 518582047 707371091 611216883 276974158 288512765 34597026 33715257 648338848 58438429 888686878 690116402 441343656 741408960 421099337 962248195 401855025 758167916 282540054 705327410 300308583 483805996 280224019 269145268 866039875 684262291 364795134 212984149 521184169 281213250 432661883 964052269 337443217 648219890 743555561 708742491 598956303 271746634 258093779 869678216 667733303 639537705 311354635 643399084 941036608 984317464 603027819 707802581 645530428 540177219 574298492 57580782 124944560 916728604 666693560 296243687 710591372 748400475 783715369 945726661 130336973 4441251 100569347 448750431 910607305 711258714 677326233 936762924 950227870 385857576 362034144 150718106 964559255 773585884 709929996 657696309 8081981 660069262 574108560 400684527 763493222 23339082 711200667 695116537 484376227 495750743 406555033 709040896 799369713 53647019 194167055 629241662 922504850 838583534 278268183 775102023 967555529 363376806 261304265 526671665 885423831 792369052 350210800 452882683 289181701 65686628 522775750 487719278 729816608 443157075 598318922 866130659 626598282 60565970 530254794 202444610 197078579 380800488 29377820 817405801 789440362 570900707 899288251 259024869 949177730 256901146 56388381 333783828 650113081 468045135 104936870 760262422 100669164 736798658 92846155 722711635 177140446 884094053 640779771 527843125 339969657 657057210 296149205 662033337 860180654 633978736 39160792 248563037 653112603 489007645 137196714 767811723 476710277 803094021 999344334 678743709 585411830 17090456 57907163 549053479 299953418 727694471 993631921 519910307 71891487 85339981 775928367 535163562 348307026 884927980 116136595 212678447 612235549 854551452 912952971 122107474 119205218 861565888 201618645 10111505 553676443 332026678 235479307 506739277 846655475 540779497 330837028 987606323 357598632 547316619 938597966 823855192 510308494 761707025 650096603 522634173 747090828 991894820 145172854 556745557 347929571 571143243 255597940 293801832 860206545 853040110 745598743 772227321 739172667 364122767 482542866 726271593 642815545 820580624 115149753 734306849 228492498 730019475 678938684 539672110 718130471 228164104 117418096 473877753 568132820 379757092 867313864 453262509 638605960 289002982 877789006 208987803 541315509 211493313 109835105 895169309 484863185 471586543 572206494 190460768 181025722 123231736 68743996 146263066 47679467 181393698 590016091 817140607 468613546 259378332 472438395 577996833 199069451 223296529 354258068 403812503 383721147 486642394 839229595 290928754 446899078 715695130 256709746 58440680 775678417 120692187 269855169 345552984 853724134 116634268 221904393 341771435 387896171 547031563 318720469 261205277 848391324 924476466 152993049 903333822 431556025 787279421 769513759 918281598 861553178 719979177 535543857 561729522 318799868 9907553 639427200 678827577 848701228 944208271 143017205 203210093 227217335 349902909 647868928 234825730 614880691 758556460 359702982 550113494 281644088 355374996 966655674 43609774 232069264 949547000 245862267 696197919 653228279 232878044 468994717 706544724 187448503 960277787 175752411 410099837 617064052 654411492 448229004 456009919 713101001 236722539 124824847 211921551 166694851 581160598 445232884 523398420 902830134 268388704 94689283 798266129 390024818 52033642 207359952 314926395 171626183 63189222 742514960 578542952 94607939 951364743 453706729 459898295 762670123 569731632 897016089 503742759 443996632 522571999 91031710 935944882 774976675 602748107 990415827 311683790 676011268 143229030 486660764 646407684 548363291 508772700 90834216 676213323 595360996 145702654 735043109 405881655 663025242 389505062 282898308 346833024 293212868 769179266 570024389 199444467 233639671 943938748 669713436 743873023 138961311 666027709 280968337 400581718 642977014 955845529 709065821 918900500 808654741 271079838 656380283 4538447 281471303 315077157 76168869 254541869 252175396 124211738 870593981 328166572 166793324 553019167 365107254 754317393 926807886 454773447 710854337 406730154 653397873 199248015 50326104 521366391 792066115 874411584 149654791 171013547 754524214 13869800 188743227 673868658 505394501 581131621 695116397 498986644 274019432 347555128 869995295 337181811 671251359 845222270 937305675 628785346 73685714 222218316 610778269 216906983 107395263 494048963 612187951 716299612 234962642 535839813 528458279 233059725 886553802 777767311 982630224 981843785 861736392 145961296 313897925 280897717 277720129 42825203 765109977 373400917 807578699 975922554 385372236 540250943 430409848 105886701 398500963 2352685 625881457 623343591 261759089 484349482 269706471 269010822 658398689 119510768 141386624 171540759 960209387 932863262 190430031 31043963 631715026 859720461 597265626 351725963 120425656 252788571 754924434 656752087 719484353 526731236 65657593 370667409 408338254 786317320 594615439 74522224 579492554 101402819 151785136 377430731 822180267 970789798 444976454 957088635 588133005 775324268 925899848 609424074 645465170 65966583 16072392 819548042 218425609 429543488 132706655 438820876 231531607 452192633 587033485 378274032 296878375 968142469 490794710 832292134 831851941 661691865 475069517 655621024 535918365 401709075 612939791 627217950 451088012 111686266 552938819 897583284 311451956 149531234 764803682 104915577 309579803 904224919 167360998 272336319 660308814 865713657 634114383 10126574 37262240 5951166 113649162 380237936 788685811 696095520 320909781 822485728 468041221 748737295 879626774 817054881 569745070 813880885 838382332 773972675 787527626 630993117 337976343 864173732 159119912 964137046 68961454 89228585 645676432 329598036 540506575 378957399 311479949 787076588 636916486 76997155 556779077 800997595 197282408 353498080 108883218 460561297 915973557 343330886 5930092 68338083 499566453 659529941 308078192 349893978 687319514 360181394 651566973 60836402 542651781 854299448 10604394 391047364 725562374 215277016 86919919 961098655 722825584 388706558 655142581 217999856 988520898 261387858 304329816 157718854 319838796 661522936 934692556 621168909 384860453 747056152 594571230 177758203 109345336 308896743 809705775 474369591 118108232 866382344 179513575 421335638 979205759 823421331 535748467 863816604 811250716 186752007 868341602 16621868 275397475 548935113 934358354 639854010 84339512 193983779 484507575 394998835 709447258 942699280 584845162 810967375 712644926 726403300 776316850 540812596 322153934 368339336 450400672 425400379 359620262 888139376 582315536 781278025 549755789 886470054 790574914 139444805 599959655 885149898 583243388 590909538 502029273 563889603 567000941 418353546 858960906 584102823 678459981 739519264 205818764 257533414 616525312 916644177 523782898 909228502 437051990 178972276 742089002 741773772 87950824 894204614 92862716 354645230 754656872 473727278 97890840 511761356 238077335 497326401 800931725 912036511 177999989 992539308 189809863 274323770 844535322 491065493 693489307 492867590 138263275 737171266 586247598 990563861 136908598 339217298 487787602 457545056 34485755 840137592 913056451 609186984 806372955 852506808 107550891 337948824 980797362 19424643 504772679 375179892 551087233 832497125 384321171 24398302 611620927 3622598 267472795 363046275 981635316 932888877 288867871 630946338 399462399 353132212 320755302 510152365 448464301 206844944 810313059 209989542 383126778 393469683 869882248 25493054 559734890 732200803 472551110 735188047 342312861 484081962 863733001 330290239 846061973 984312201 43251144 627486489 319257241 230865413 403676718 369096218 87009867 209582670 453654042 929754916 847046794 335312885 471945121 123618634 826175564 794850869 390379009 788457235 65144685 865893954 108838771 250732166 739140859 674919943 641299167 280634844 363056734 749395764 608645692 51352150 101708412 934012782 436027946 317262134 151544954 168849073 964277631 6957569 68755951 707851294 612328242 661604539 446608542 352514820 157661553 776911512 192311510 829335252 193578171 235889286 799277670 212150160 98590994 93441916 234564368 79762419 529290975 512828275 958079892 608297143 845602397 460586823 933390016 312453936 685640233 313676403 236505509 294808599 299931944 917786664 203602701 598361224 652363232 734401867 745286889 30163334 904432816 408439969 353698254 48643998 346576567 211337856 665991842 671463299 214478125 367595597 572739558 768978769 400045436 875352414 951422312 341647537 300835116 120916601 437594518 437846930 888484989 557029419 500251806 9319460 961775156 61065911 407992707 753961079 501571201 592200256 281635555 342661609 117503287 767097311 105563426 751023360 771004440 905243323 696055211 723966189 209834668 333420355 908455048 766689108 404898908 694553863 63464127 374482736 146718931 873264968 113124437 717349028 81605796 789532058 676367598 171490931 467323711 757697973 310815063 169127920 737581563 321220631 467987107 736332620 621654397 310676113 954752227 758511100 272244005 881528787 977338407 536987569 688157441 660834461 100413210 608979312 708250468 643674059 67271547 782356983 886498241 954102682 988354592 301036430 396976226 512110256 932041386 797202370 454539409 113251803 533339730 2730439 542595654 769022943 859169642 692356385 469297880 430731359 308847461 95253750 618850303 485015726 925818252 506640919 31555310 188913476 71159779 921034562 814549760 510757617 959442639 816934493 625518723 24626805 870117232 114082021 301795913 90115446 336727440 743049452 690995863 256155763 92362509 858021475 729375545 780503332 341003468 201542519 753776162 231320920 696672535 394144124 179267382 377054893 874420975 764879249 983145842 993346786 41141785 849031219 170839066 259361223 984507919 832678769 799886294 503697733 337745520 808644692 231779465 5445344 745564877 344030875 728838758 313951749 449943275 736114194 603661296 105157807 614808952 353589510 257333723 781869539 351096730 375732894 46026380 42529892 678500249 196336677 974179804 575591985 400280345 426019965 849849224 347559952 551302501 24044060 882103710 754678393 120180223 626379428 691017209 969802994 794068882 824009941 272385574 224682662 477542637 344327897 425626673 901567171 192943281 966547798 919822772 13623174 11163782 1266113 470955444 444049966 594130566 496915452 912640932 992215405 790984594 911282603 11757579 321437239 143727031 230629661 125980943 201564339 451524906 632056081 300797109 614807319 973887327 171937144 322414994 522174826 195844428 345036054 642097858 728333093 131109092 972502903 724492952 655518753 535086505 269729372 947203929 568969280 286936256 516654898 711040283 512775171 495930032 813236624 220825427 740530083 891855922 94186980 681027462 797162796 208750821 12547094 633937869 355915501 970158248 167513374 727083378 654558712 135523398 283431074 813861293 474923981 344465227 879950066 458835477 899360381 3426146 956353489 75872919 953806758 106529174 58121910 495866034 796734761 795205773 696297414 416416766 324285546 274964626 681380488 760030252 25330796 162247500 167931822 955372435 640782279 196264751 313461014 173084699 925913355 652804397 356208260 10864372 205782671 666731527 269635213 741086171 816736154 589021186 566155083 452180777 153512864 132784719 296073875 666258687 215798094 496434613 258213231 580280012 753890770 861652147 543026346 861407826 217898949 547352632 857916397 856400625 909579877 659202889 132146314 312575765 211723611 16336081 414283186 539568952 145343189 644989617 214293537 67822416 993003992 305288866 470749167 224136886 365174216 745430758 299167712 269623128 673175318 794682140 526034426 604417749 698566969 616801397 100584979 279691017 435109836 613037762 781226389 761890242 594080740 406266596 14069624 742700710 390510557 761916092 242263678 189580517 438128253 866815795 393261304 523741978 886906511 974341724 759634076 778591519 46965919 69121359 360218983 437757687 483139463 890158044 56370499 83275458 325430117 119765231 316173773 33894037 273957540 213354597 28384484 959971840 853836937 516510928 642262039 123804644 972704707 915391014 723480965 831691156 710980206 197136021 847932077 196718093 168802159 259358326 918386260 821032611 340451555 322530649 45440019 304282171 969515767 23836758 19479901 206693365 366876159 162707417 873978526 776319729 489359925 991271482 908254165 353908440 190605921 618611749 270389591 901492936 272463769 3940544 268923904 383876404 72480513 449388715 84522895 776495888 436513116 552051520 480528460 41827229 93857579 942840772 328355208 745304185 874253138 175144221 612125361 941438315 142593595 600861066 670551871 625248923 146367132 192264227 193446736 614335090 303779207 813588192 824181104 133120358 982625707 663754894 771999275 965676251 892131476 153895184 74081779 730125706 216861428 945635739 526013937 893383086 352895897 150822974 574995722 454944054 5971180 374462125 133850836 132644759 995661252 266973343 766030697 256760136 407568601 91664816 27251144 693608680 71043992 60401435 93931696 944233391 655894413 352988454 209776318 473350412 607951556 762698183 26157097 893416240 131314269 828774591 43812758 728341589 907978720 232260424 952645015 469229754 173391743 28747347 154797022 973450770 267334000 402224057 595901969 955470122 539224362 469474103 219675346 119271651 130982934 615723085 87295106 924304347 518086369 898760409 536464430 583357926 412376718 732773670 385509087 408571438 973020099 201920718 695492255 535033594 799883727 257884458 1253293 499956542 545006531 510297225 966164393 463538324 759283878 923715922 294089098 521749524 185172841 263086241 287975212 724210194 776228365 577265299 771289776 392881558 471616381 877518670 19206731 472024507 599839541 241645658 147735226 653971554 466782071 387694989 808502924 710125146 693978786 273194237 636433739 540447448 423197274 220642152 170216678 889297114 393886988 6727430 283215976 947317780 920703776 486577726 499330912 348647618 41909236 748318345 639939764 92957873 237107876 107145335 901611930 946585901 64949139 303644171 34539894 744051615 745422535 253981070 64587777 78426561 542067247 322067811 704712616 844484865 361657202 928909060 119413341 98384068 267299286 510179539 316398057 77117735 66860869 249846622 89008591 584588855 150474742 969869679 410251335 61459503 741817688 367221343 358542655 654652128 25532558 389171556 762143082 349057560 883515995 64280861 389536741 543794896 444747753 697669935 549939967 282204544 445368456 360173373 854193458 556482890 907231608 465022286 223890632 849412676 942743475 406730938 653761527 496231653 597292882 146346162 96520672 692284917 890268621 415223594 248764038 588584851 973045494 137599645 392678877 876950914 32969657 791608399 809653608 684437430 840202183 270817973 115395425 655728470 905414895 444404381 811749950 688644151 446854223 246572812 498288505 50387993 450055704 712306957 281258858 474551302 80131656 544175892 674074781 810060916 720050694 854859935 764209202 390250851 732998359 273534889 252485771 939131036 562433541 771014116 735644346 859219978 45193159 968785778 762162940 122356252 928075305 351189609 520919526 275326732 331863293 76596679 175763095 13781391 25609070 989857073 173880536 821635869 922128781 594024074 373430515 656985027 472976089 772679384 621755364 444699212 255487071 50609009 308679191 525969708 985244747 108438606 459002375 545989847 17247143 663810464 9047512 64357517 909830010 551890226 740822205 725470490 252980362 4245512 606940761 585828609 883179664 76147520 71199129 472829065 673327175 197114665 641742772 634771535 889910758 988619975 788263398 338162636 811959117 177656877 758102575 306406580 567040191 543041329 466400029 839177604 112584626 431393701 830997663 170464795 54048948 371200021 50190463 922799225 150686265 679301591 268745401 561099098 990609407 355831705 759038371 241233597 273322030 63140687 43341407 746982265 731834004 492433088 833092112 99453602 263014433 877221794 64974908 380301742 845465960 554791273 312874761 453502910 638882790 189334745 910766211 59861461 558591832 238694899 362054933 2460461 570028710 452704102 788894765 283991866 894421428 731146368 458546073 763274112 405615160 27030329 731324803 29417018 473090411 428765714 45144368 996905866 840437803 459295509 599648814 745175836 870186170 3916203 405309405 92538958 779396973 511643289 184333707 760134988 597813642 869422738 114297120 98766435 527462670 659958304 978025620 973297602 80768860 902411898 192719391 297038234 476266687 228144198 31662102 717029254 387494608 990688252 520190310 872993874 747763573 78789670 883696898 483634497 316162924 299795133 834106939 725603323 959624379 2027395 344078767 133595213 390902738 166943057 172448704 409777356 632020935 795438013 728138975 159704756 704277589 573571432 582855482 292017934 575185829 125133614 345856714 73275611 984321788 610327079 908325231 628587951 12092130 569470779 601351131 660073840 494184657 731324938 738956228 38258009 705227251 671976386 471622530 643045448 346850023 84931809 810690042 432140722 768060763 985059502 971834235 781480014 463005258 848757056 853076494 166541075 467303948 71795670 913290625 757425184 364578519 736959427 23723705 253023332 768529901 682261799 988199891 895100039 960060270 133191783 719020614 802799139 683806852 413682681 777533211 381700779 861133163 289366848 351153227 175046636 837124929 627475450 312083257 902849323 775083435 11443107 890551165 803706464 745770889 709422536 8419624 322344135 117516417 885431274 97264339 826487012 791362225 90737107 124121904 311823878 118121214 494561136 207432542 629977339 58751 540793279 100508513 515658513 800322041 540880946 848222020 872672653 757019879 242187299 828740475 34300019 909829228 417968614 940423643 367302257 523111328 582580290 609579862 227043656 220968839 801554162 571832644 525167141 519791277 432100078 790653889 35809591 726173208 104183694 574331301 778219415 295299289 294138264 737593157 971218543 648443078 631460639 699969572 214090599 442094785 217774690 243834217 936134841 91325671 923809349 643711415 920524142 474629445 425323088 213416134 518931363 780489596 737688235 253791943 664423421 230703163 51662422 730820450 458103646 932146013 894796641 25323435 765186199 549955503 35196593 408662829 33820948 411550433 269321420 920234523 953780016 314629032 529355089 355906053 907986142 434787408 408699169 647684200 457839759 893754187 934146326 548380304 38221068 192811352 556491293 600024455 772158687 569554372 261892529 258230684 25945954 854181328 993440893 17838544 746071373 915563129 65136825 198433462 257480968 917547953 969866714 423405363 650895324 218923525 696112779 431014273 278796371 618993792 989858173 73643432 27617461 620785127 778732944 266885501 473753249 14951123 302050404 535837148 153326330 144745390 598208315 687446520 104036487 506770922 550695757 718556209 280498623 458813855 984142897 320326025 736252168 194389163 469067439 441145101 825650396 205942081 647996369 337677006 84621705 503082843 719606231 246069239 581681388 664480906 506393177 886026884 945397898 319420389 772720604 137069007 400948125 53810835 322980206 510460740 713673912 337096286 416469082 949592768 957109596 288112767 142804637 821116735 205826570 72931803 760313449 217099519 154244578 761305476 610875153 216816601 33382968 51179107 456615448 621603991 321192195 498532925 30366994 663211209 872740649 677042851 696581307 220766364 293905334 887172174 240257595 212209815 429877476 488219798 500918977 140313121 712503367 70406192 678732127 408091647 47715720 653004920 86474853 240607575 699439055 775166520 922727615 4383131 939364389 532422712 895662217 886702368 163235891 145218708 895127081 217920715 371061658 859286948 214753186 841283770 385514017 176255425 854479480 887822130 972358232 158940843 46447345 718697045 775729900 925086281 205614318 505101541 910303460 764635545 710502579 687986380 532375495 857866601 929919784 873195398 139597305 108643783 363085527 575058380 809213714 650109393 293729888 43158816 214836044 989542204 514836741 500938112 56770503 162959479 822122625 123178446 572927765 685256377 9952163 925729027 363233641 949620786 949732925 71865542 458152225 403084159 650567171 187463946 651789555 834542295 2694389 378420498 860480741 323207994 523740938 517907234 669388396 117733624 520715682 132927733 90822795 717780728 31850270 564566619 905073537 851536938 787808015 1673098 33917122 555645254 717226198 465495945 64257977 474238194 131823795 489230143 772951051 344928991 650388527 733805665 414945370 476207971 925277167 909802408 339270307 179395635 737454620 753009056 533294637 933017681 991970133 985263915 147126972 515345018 642084123 123490697 110521611 322922136 933610191 518493403 433146321 312750589 94642980 284822281 56429154 664403008 458697345 64285927 796693727 376014509 963482208 688720728 595024573 868011852 800865821 17012966 979624194 766349950 604938805 115695268 177716802 514241579 950437927 390262696 689231819 702957823 432270088 915545615 530212896 618095923 130073419 630736200 839536808 428497459 112061851 229455244 81327616 970460569 724395699 670554027 734425349 356893536 304117147 995155148 424743802 941531824 999442195 571736477 486579074 542330164 770967384 805045493 858707982 830583882 504943636 73477493 67373200 287586314 642713156 381793594 415271953 635935579 778357396 369392164 199615295 48408959 991009679 675201264 711252807 939948330 881673714 182474917 630504450 728724238 529382248 323544335 85314292 448820836 265718534 430656009 441066733 816169799 63077902 895786555 291765216 388436998 27420651 259900108 278117089 32797835 923568113 763265689 541963790 943996174 407318561 527255477 700529345 938920896 284135345 384028561 450397634 805490525 483721588 487459004 42022491 128862619 219360440 37185793 700225503 109792740 433090476 159040678 789918036 357511768 50426941 864580191 36505254 439029638 380830437 217455520 285986710 437821432 577002254 259757745 886991998 186756456 591942412 499583730 810628488 908040538 713481249 224722902 6741089 769471144 200495293 224781593 297295218 31334600 342191480 520183201 805390439 4581368 455196600 708960769 566062142 121103651 866204185 602987361 656037019 368007455 928089237 965154273 360942694 986689995 714273067 287546139 900515133 145986815 553581765 976889754 630571962 335719295 865468401 985100525 464708268 559532416 903451148 7143532 116690061 624219649 409323428 176590406 800022568 79828621 914954172 752177216 983764394 849441393 243710283 885199981 63100109 39595839 756637951 247018 578426769 71796560 969113861 579696338 213876158 393929927 598447678 153994360 305960647 234389669 902103962 574950737 792738719 593631042 291235559 100511144 417177217 685434246 207560358 436111238 111273347 639910327 12327272 444179070 39922926 294530676 676630566 603797824 758150517 412744611 176075134 911133418 508424328 899645896 565649935 168959053 39018349 412524219 994910566 610117269 187379354 931903884 864857239 524168788 302227075 588674533 473862363 112458912 286706191 425401335 738373867 450865607 924503529 696998682 146968411 19965738 366473937 465748148 286350535 170106513 386331230 806863702 576329272 669024993 455709337 753282435 332975640 884512058 135132750 62646540 883435468 46162838 960685280 124760816 903496679 992791651 536310272 39886937 999462131 369825539 628287 311380121 276791540 882708258 554107803 626940888 316439655 14880171 411806012 973644056 539880147 146013006 389971213 128282984 343185730 396924591 814763497 185899874 94049978 27245644 62858197 824471269 898791855 628563434 489794072 292619669 30724685 895558354 968874911 64536145 575750498 896475115 11489681 968960655 518224802 282720932 567077084 46958647 327908918 989460595 844980998 931280256 872103012 235887135 557569970 61733692 349325598 633548948 340841153 54162394 584435563 129181019 720785103 748391491 914143068 890045446 447244579 36475748 354097964 760225403 715488453 425967106 227586828 544072588 802791015 645075186 232718584 367689450 913086019 690482913 564504197 294447971 820378712 827301311 880942555 143808334 340680495 939715314 839466570 505429265 747821085 896485432 142282440 23889485 197996001 278080876 203328236 419003652 611231813 163748984 831363753 755432342 624310924 742989471 859742855 757258637 854940006 269842801 288196326 70339339 999479901 972014036 109865161 383653127 827566458 660723337 522124995 499860450 803954802 739077901 810298242 923457047 961746329 750066127 595410942 986448831 200165380 486037614 375686094 658806380 507015986 720976671 884538733 255382996 523909327 978665678 64628633 402097390 226333422 327695184 29160930 545939113 968829887 741664315 274949046 766706436 258141373 5782196 747264891 150726510 487012159 795842003 403832310 501941199 592760704 477541314 284863868 91755830 699166471 581621430 909966798 817331782 281842831 305804875 21947781 571304350 45798287 998345752 962977278 892700884 552992391 259852669 681444091 675683637 754377175 535786067 317789626 404031615 553506417 585933846 438637534 576919087 524000176 984003505 901031657 822337793 79709248 466025414 438089519 853676380 261993908 184543069 598744679 93556699 971048817 946789942 602893419 914523449 455131284 193243674 748330981 261702125 246516419 868059883 480601148 387676721 833015737 739982950 326750445 703427655 6034336 490831168 39565915 24548313 125937729 825984615 34961985 11083261 213435070 668680202 161740167 868002593 475391950 523672224 795830497 606441277 108080742 347711418 619970360 394796724 612545599 285148197 724337373 408810388 141162084 266878986 414523729 215823007 245739501 237424376 756980667 222506248 908243384 331553547 589847629 978102346 76229878 362396565 779675193 849563368 7047951 209661495 411603199 764469657 543169239 415555010 711013229 391448042 991731620 92491844 137003321 600963399 749469760 886864455 10771222 155643288 610179026 766918460 456078823 153073849 672202260 387450129 402448567 677077532 821784556 151830843 540327753 957553401 531584748 584558331 802267243 194894036 529575277 701449464 583488022 47509649 326084232 201160230 954638472 517696603 510762605 786094385 924950496 478227672 982611021 766703888 601685341 242466827 475793218 542179532 750927954 849309139 22606542 717267788 492942132 2051487 654811568 991610668 219064824 795257477 450954096 559685225 692577824 823745919 750843092 773874977 89342516 211033002 638658500 934951502 133693452 331296019 399210995 701037424 792097047 971775173 556469383 547142142 912698419 248947178 338774842 570308105 121294207 747156986 785736953 882696774 458655650 45081812 848019549 857295069 165680196 2384520 408325621 391288783 387911833 805003944 686893523 984210398 1987118 221467988 288732147 823699564 444211724 232036700 567268313 256681768 437321780 9362110 804837659 351560836 36395963 649165032 362502964 34392571 181807126 683345826 149876606 270237111 987588367 688227932 537592869 12663292 912441680 412566525 277281622 733232163 360374401 717210132 613094223 673753438 547244984 25579390 121971413 179664799 749778245 370039342 48623319 864668609 208980757 90646369 954654835 87544429 42653467 190454969 724968954 543404274 11698879 284093014 81755857 531193678 854035233 915720994 594408964 494816774 665561866 948654506 619018979 234816781 477435376 289548561 546152521 126565710 258373655 963507061 637446618 523698824 238461409 486749694 651873285 21166162 570504398 815615311 878885952 884860143 756574019 206847861 727717712 759401154 504960344 740470292 114783507 616471516 625375838 826987556 26599490 285207863 314724176 406795921 316361641 360010323 449592298 981317310 888078716 61035201 594433873 997096282 58904287 747650632 116999760 855838640 436731020 844268145 844372163 345037048 284770350 649651702 212936206 980576900 708163971 891809515 747027461 223610734 756021067 886692951 709002189 252316869 953409369 106598995 759197343 499478350 68781387 884541317 907626514 720626460 813798332 555013153 831823574 681867945 186025689 698657634 811076340 360189189 978483769 870901108 853055039 842632334 341917659 222572115 701666888 185234930 205992177 174647231 362170634 929340403 475765006 502880012 979504143 50565432 595158127 928933706 711753503 875798229 810582138 309740570 148377813 700830683 483643989 993836599 143111457 296493379 120067897 836186591 999564755 501570145 708952768 676445985 774534963 159866354 289397136 387372542 815218323 106339243 734349166 887185185 647558109 844834439 548816933 756692666 930858695 301440062 693630451 572880009 877917743 874094064 963963221 795881040 552091835 333487189 957353320 234576304 528819621 628240044 189928282 352833639 904759674 50694590 225493596 191571170 196981553 517453975 247524439 105782114 765635633 860084757 844803515 102421786 224866304 599077760 279161472 489680043 619747648 71584874 489648850 139427187 608208491 2355802 475523046 744787314 871528153 652446834 853555209 494581162 330439190 818682753 618297717 86173737 274627258 697846846 956937014 677798402 890334257 979468576 617651632 584346476 877328122 58712667 478003321 122675859 540026714 662063775 23073843 647250132 396770404 98306773 976232330 638967973 950588883 873989045 850209509 563184721 518389066 282491146 7204539 122868816 579169143 771138235 64548254 395867680 655450074 41493468 87905958 299732539 391383618 955335480 934267956 342483808 73291064 221728375 663238449 583142533 160710483 673602965 158275205 311549964 911601390 695769183 63010548 927494422 330207270 407023809 378737652 878211186 174623114 440802026 567331635 726685513 493130851 31968051 452912140 861908566 561716489 230519283 802363840 360189047 898715381 988982174 655330888 945697513 839243118 940137798 554623767 349427547 342075780 101246004 824546851 106037370 249064921 544700846 680743756 636931010 991163972 212486376 24365760 809615037 153963502 815282149 473073939 436833205 917060606 649807279 149085449 512633522 898048334 150361432 753594057 302900272 380650629 209533099 214980663 186514531 292144625 831525718 119583262 906433207 405252792 605908680 496855643 203868872 363534643 898466835 310654723 249615318 209326738 976288249 204157719 983765188 737645098 319247378 677591623 463184267 659933434 400277851 54030365 372387102 236187459 414163615 29832960 920113714 937072294 443236102 748349582 551219468 912558598 648356288 635918560 798492066 780161774 636163663 742779507 239507279 630619499 468947316 589280858 160645372 955878815 250796739 815331646 498070623 815522722 626408812 223168412 934056883 461675661 503864410 414591415 490368477 515674465 46769662 945376767 281103320 572096900 408916642 563618830 105657843 625604216 204427192 457789839 416476062 452376445 6364943 438957492 358859695 353774326 646703508 881014436 557036429 343112812 407984578 808163903 219540249 237563154 781020793 882493184 970973520 337649039 267069317 818428227 40312129 498092384 293661349 6922319 754552976 716928991 294115050 191261380 922459024 575971315 971602251 913025399 558427072 493667050 821613439 434001287 624520392 473768740 786265585 235602508 305745540 94784384 37284814 898178595 836406466 825953673 848400395 812205542 945137083 257985667 309572140 982244086 458348506 741566998 573243924 930569116 516515292 207846241 934509819 794728939 732049780 402372259 149512181 243380686 394441877 403672447 555243744 112017441 353402678 982576998 463667619 678101237 543385202 585449084 773803497 879980431 583447369 504281836 327950776 967862492 271256217 553191077 27833579 800868138 631785863 164555534 428220013 873696719 324106742 281852892 906727370 359549978 513365082 169141441 239050385 620747235 722435265 340226014 155291988 695178783 844413868 796665124 700326651 123460619 906526787 550757749 57931722 400256238 272495633 208492163 478773926 796689020 245574099 93012003 415613025 219732138 675806084 344948298 410281634 655021133 758675758 901349532 423477548 562692852 7084764 395115474 223224053 141658549 672461075 733325830 108335202 760195615 267543528 851058242 434883594 623177772 298311792 720050508 260206733 89478492 974037345 618934163 744206463 70874176 788260961 311409613 932866999 93118973 132682486 881495504 501119670 808600985 110724998 438161706 668449709 535753233 191078987 860287398 562800859 945355867 258223855 731658126 142328495 354071644 825060956 156463238 46196938 885455159 381100144 43706258 71995185 231779211 221698776 31651469 894134894 261100538 46708097 612959365 541261758 387434671 571782092 995719932 245235648 832926742 74766262 965907126 208127586 59900368 559018225 966647150 329045795 88471392 144184302 321590869 761436339 62736394 456115930 954041505 576808399 628997133 724616421 786412753 308173984 974150821 673352383 562393847 231734242 864451858 43543432 73894723 297068090 616795295 799770504 935944381 784392445 795029831 870379563 575281415 349922574 351819104 953398496 142459998 575085792 643810961 103430206 63728682 843629357 774982709 914609616 279050930 518690431 512583862 73230193 123005645 53160512 127046231 614511341 209036210 353802255 474910623 157433800 746969054 242152234 821550777 271432380 556937337 78475069 669811908 973180073 357984881 906347828 472949021 418728990 805626616 32776021 101251323 639329729 497030457 713920101 757527468 412159351 933412591 599380985 620890226 887697992 965488130 870953629 213501718 222986767 708272110 160092467 858944253 538068103 161490501 641014305 403099745 730650147 625373649 15129554 586308663 935894800 928423305 570100618 155224687 888992643 850064092 858141987 750520067 162618094 281063207 767314207 623333601 924872734 280073177 539291860 983870634 379575888 295408847 394882303 349840109 830395418 156279156 354016255 631964520 299042727 551628334 817843304 230992371 579303269 521123973 446470458 408286347 507113390 918662895 827720600 788574738 84471829 551766166 912137679 405083924 908816917 392492240 543644897 723405749 184825518 619469886 23121950 748135433 524790388 773423456 183392700 308022155 419104655 83615765 275892898 355207293 548658025 369307532 504505639 556647683 484900837 307532987 979772321 358799211 875005688 687281878 91175578 507063220 471100287 691892353 843580934 633867828 331837815 51873283 308118301 793703297 732516877 766747120 882818097 813748311 974642053 201152553 629012226 822982999 308669595 202092833 816710431 714598550 25598210 505863337 292767599 633864661 494885789 163567032 108086151 693036994 331213417 673118571 242420666 591103282 534167559 708128546 791997843 439276424 712454177 32022871 780445516 141157147 245096701 305145424 390080622 335423543 555581728 739758795 981125622 219303432 345826662 53923218 634335420 281594285 207841372 824022075 911644705 605768246 998346317 820700417 672527056 376663276 525520420 379180630 782016896 954018803 360849853 680954998 255262195 828344933 774651611 317893213 231749248 381592210 949162073 403687765 11118764 659444656 546665673 122580269 374273562 762028418 770298166 31033347 406327065 334032692 648401348 531505116 840015967 238531010 791833305 732053856 245149406 991955240 69771913 578117105 751376545 74310652 315014250 775771618 67387437 699871577 584603376 123874647 846631465 926165151 833069816 756340241 444415721 831904192 82037987 263085305 206814629 167972286 47049372 730741838 368789927 857014950 268036888 741235291 923861699 280676879 465598417 557212986 492310087 820153589 771300104 359363742 725961153 594518532 69143807 839965698 75985758 310646975 898060199 355237844 120361680 391617458 123479065 919202172 850735752 801388610 100875264 160710403 719797776 820633960 306401604 28265084 477749122 81445821 217841377 280673615 185561713 418230465 681020401 520053779 755132430 159814931 130450015 808458560 770941163 58804547 185945172 762311740 559752297 403679880 597309761 258966981 334974374 343364938 188201263 672718891 185791799 649704770 277534652 512924612 360516749 111539274 398064064 855717572 567326623 953069438 706955329 358723940 532938569 460952297 51605118 386210073 843661432 424129373 742319709 791335037 237900714 930403595 27681193 311593579 351041082 529757764 587460733 148408787 17299827 308238755 604169035 267575210 553403134 135513336 126345376 829438502 891017048 866541355 421973023 776384472 791009431 850553140 362324843 163474913 801365412 140792042 511509527 321271852 259463390 859638479 365361160 699228805 529437878 471940974 252325959 501977894 299110700 557495768 389158303 512564795 98077632 360128097 944727461 164820405 747222368 956996172 512513522 904293297 236319862 936354418 311862296 644585743 77399732 549404664 511012179 437171891 501600147 356026150 898669794 897546516 22613568 891310054 811790487 823149291 787562131 650576061 223016845 896864269 160501898 391656794 427559876 227371844 186544956 53515224 327286159 352386275 286497856 284877100 731096271 867266528 800094373 283334143 776768832 652705815 521196727 842007216 196276491 398353043 289926871 451537938 490896147 29171744 948684888 841829891 623818629 318982556 443688374 48344180 882034831 220622301 455686463 834146900 696920021 186153204 358097141 557341590 260130457 117598020 932606936 739235306 320251661 641505146 447380562 209546861 145740962 164307426 4052835 871367809 826961766 378012482 5366887 15473962 499341371 141551285 36851899 719141257 963685296 218982454 198654220 304413736 908526310 336388096 389731688 649851182 449111250 458511006 255665689 505787596 843500168 278203073 574461521 487173202 13137915 182507870 746866618 873657908 318499165 643436608 314520482 93020981 610113706 503061383 373267006 695981737 203283123 225304706 666001964 419905601 637199424 197273523 319852734 494184658 50027676 20917472 419131798 952323332 579781460 673755105 310770412 501502203 483226315 901701869 334762241 139863960 88977229 835838692 333322960 891632034 563671807 316367908 84292650 491766494 520631625 932837470 243498653 593172160 460452721 889450863 450722310 825924920 410934172 17412675 132672545 85121528 150950707 774068009 766758970 8790623 116694258 83624917 39364254 296695167 505022182 313408107 438913863 69184889 544968203 902021726 138974859 388080710 723224272 771534972 716083752 413194499 595816582 58121699 767584876 126160090 743982026 917586792 37138201 266953752 308713993 412571542 972374807 191103830 716103776 600135096 953080000 150096241 843850965 305041536 454751369 667840977 682909567 607123871 315632104 130161226 99963986 659049292 169221196 239668460 936124378 133102028 622965223 341136776 805446705 144662767 47305969 822612269 335080829 9072259 464441517 724017886 714165238 972915616 178783536 550762206 431155004 710916194 524423515 711572507 643541770 539856931 637601150 736318233 595946467 116934750 858351141 299624073 214128652 854566110 226615734 535734272 696953124 184237421 145339621 134559392 306362903 392431487 401956316 848606908 790539542 940205964 787665218 654315097 319680446 697312074 14742018 750325892 570960100 912975263 495995574 363252453 690582638 587292810 545919596 511138122 878399554 872073251 124342697 139613026 700893765 20009953 264550299 267980477 419653453 671638191 724289072 781789615 275126657 58712117 522751932 410073262 746619480 979342191 423014330 300692073 12464149 437438179 27482767 468735297 203197463 987244313 191597632 759493476 878389650 436473545 401156611 354661759 561490782 802216962 169401000 97825912 503676026 124677986 485647809 468808221 43235181 83669022 461818344 6121019 141332680 883636179 506945767 548746920 902237270 142254479 490335688 118849529 753527780 527689017 390185738 702415183 978502052 901343853 895939200 138968376 96306366 282980154 763694305 953943462 839143571 196807676 228587137 382703942 566170105 412057593 501898021 80229204 539995198 865334287 394509470 529229325 19623691 274464009 717270125 988790497 772485263 480425223 825617826 273872624 105108087 19630784 565030634 889528427 862076246 609312099 749640706 765655431 163252526 378974151 16093735 429817103 185640322 250916426 569962528 988076902 376253853 797824208 482710892 586719791 97431822 837029344 390846127 332973389 144659162 156439682 834947775 768026932 369275466 326286988 394074208 368859126 24829604 716346126 930880041 615757404 75317237 504975714 987922438 42611097 977533292 575664786 85915680 613416477 455495912 681462374 7208303 222039455 491899235 955133175 762616043 650810422 279548351 524879482 905356184 372058039 657643522 447797405 880362499 138672271 672429382 489742283 149821701 206610941 45440010 1023576 219836108 252975165 98573852 844879079 110651275 337433026 991099158 899475644 843063492 224563167 933953820 311746472 624568332 782152455 603057821 159335710 884724906 193943081 159446934 701841687 396022647 208119145 220942131 435939189 199632871 872699482 127195332 991824098 533070054 264253538 854764297 926084865 317386788 33837123 444414696 74142197 668403691 427926405 394208398 131901744 38125631 831525999 603964159 349157228 723870984 820049158 679016293 834811978 589792108 354329901 470712196 58534605 821443181 589117068 654583883 452493011 230829712 213828353 377199469 72944900 157512595 905839830 481916416 377547175 85627581 165834292 564987507 832556726 635442039 427513015 836977068 853914452 57137743 257110236 850991190 903260953 204386391 280372441 993664457 222683323 211854459 712972074 11967875 50491483 304477432 896820850 356240968 920647064 556877438 625397963 601629355 222863338 11244780 115059047 953096075 654103864 894993882 927682687 217263024 241426142 74349208 567950866 23507524 946555285 999169653 355964833 7007415 750757942 345423224 558509732 621106169 518843888 444172663 696313568 378161605 488253743 718207923 629362404 577208071 637782704 414111054 133712494 579180331 761759814 854211086 564448228 53628273 932509488 456250907 812833644 538842840 945694180 497177801 824246706 615501054 199870910 377001819 280924026 445649556 627226657 966885237 674672461 200328130 761354599 113453014 786485693 97790530 627019943 399576082 840737873 584223630 476398354 403945049 646357992 681663801 760650229 910125562 722175352 155327358 948591866 33704736 207323164 478600943 880413030 296106474 530413700 794741212 13508238 396820145 844701104 904578447 24822383 555208998 492202351 497441453 964375998 411889104 462494070 380811920 139996500 130190133 389274280 953687749 156158712 896491311 589901935 958103392 142396173 161514914 122532792 136093997 611599683 902317693 620748950 43378999 977371400 83906601 631437538 417220306 750409097 156410655 116665565 683672550 657076535 524783812 23825472 5368325 804869158 610422822 632560726 711407270 109236635 219043064 829993644 484174913 334334957 618313798 623697399 60841980 353199788 222948235 995457404 254306468 274306758 879446480 686446559 291920809 594098269 91072701 565099531 738615333 820585983 673138891 94148209 600508425 20640524 825326693 617809349 50111251 282137508 797043711 3778168 416069654 320394496 649883705 684641533 170780218 844420157 655386522 210768637 152932144 134767576 465025360 884282699 130650841 549383749 127064346 56116134 440791526 417537374 377136048 580074652 889906725 862953185 639618816 286207035 44935325 680870428 721753571 879514239 949427844 5048392 143156803 325371590 81283554 392912898 308552086 708794358 991327303 661720535 282654699 187268756 968793854 607126485 771857525 239186632 678957983 453530010 628445847 288170830 9990536 207475011 406296834 498715822 194372888 130539936 887410021 320071750 675706734 406323295 392302383 323101350 700519517 798827777 775279693 551320846 571825592 238438153 535215829 823134861 322023146 908580091 681000222 214824866 721868029 839934386 400435582 353398908 58489845 718001172 686822002 562241014 66531464 75477563 365131582 110525885 985686276 973338774 16697446 967618350 819713651 739779104 642577165 288495936 225236335 451832053 801215492 954276657 944042904 67542821 566744257 458767065 277922530 591195242 240247649 438728932 528006818 264629823 19722997 468199562 415128375 422649506 146473632 482478264 346518106 96392460 858437629 136127608 519517271 946012614 852996117 956465403 50179078 605602559 594600096 236117382 904050170 831755529 915674031 290719531 450226039 549898487 805910202 515251633 620048869 959951181 586338665 213818235 780326080 412436560 118468893 888435500 918327627 680277180 673273052 444254352 278897279 109839054 466321600 50801988 963405285 451501155 398152247 351867405 354269703 250040300 919667861 288278872 158788286 676282484 530777162 187897196 856195402 305611153 318735457 267123367 463252203 681299927 263921446 79934194 247896987 558734929 787847304 412497368 318106288 891451024 686413871 661950920 830109197 738610761 723819243 572645044 303057278 804264545 565492521 530550658 139556409 289402269 662699858 316356128 98661167 273495137 888890569 286921761 192047002 390862203 710245845 678153067 556652453 590059786 605580285 216447275 716089086 189507938 825384362 568150893 919343468 950822366 312772066 551306251 246592904 507039698 392767913 54686347 766908246 732892337 281116271 409612127 146031247 720819202 735511640 73317505 432256866 590204254 412351476 132306767 838960467 58970249 222247906 919505543 661627476 861231569 341837744 700003857 289918758 683542692 789234313 825388143 793981554 651662237 999679911 582221070 105900102 587877272 341833909 171725573 482854568 88790957 525862681 119668860 594058122 52886749 89952280 308366153 283354886 547823965 385477925 949400015 465115755 672478302 463234516 65445907 276918270 369576318 18939067 122468385 856715363 106330470 886402802 920015065 940782252 928578898 37972421 586010535 15334057 865107496 988975517 208785886 395853103 853858525 17860103 629747914 918714013 48600980 635196274 86189873 733949211 372855278 454926936 807960820 156543888 3941155 586302560 450699327 303473748 932135802 733169757 296254969 197452938 314272906 82468211 817486552 103561046 172215530 22980402 123209958 737224970 511251585 520207473 645392858 525348444 210618232 636458289 321544481 985739174 211345187 136640566 313727470 823967705 672396101 287401128 416007906 964640964 816802409 534394532 224818079 423047707 991913119 903328003 83617795 183077091 570049281 227525163 91210582 374682613 358888927 740689435 962148424 408498683 88995762 493698727 765457132 616076138 221133438 781142400 791719639 69252628 384693938 134413605 913953331 293560133 240578972 99095109 945137857 672732350 310882883 482339505 786533379 362919389 742029648 93419435 800703237 717749177 445162800 773810251 52780618 809959805 972786431 840477349 554452252 284434676 872431623 329202497 451647037 380626285 62103262 918283493 234668721 384829256 526380179 146355392 983676977 231779819 176673811 514542063 996345442 905590972 224373658 437415272 612115380 699745374 683648671 720194229 424563011 348279171 653663067 134813254 308983355 956377906 998488891 447943297 132964475 777552773 778216405 351468556 757071952 228221646 539471468 373680466 7025596 592019386 311341436 78579747 535640234 227868530 348367570 2796250 600388132 897473664 258153714 154828877 303323180 498836385 169852339 43229053 602323013 558149799 935438657 746402272 543753531 933331064 975094323 89884421 160103830 623473706 489096680 747653627 566208762 413164440 338832871 293102324 874721544 659264382 420054054 283574628 484884254 889253022 448303538 448952929 737295293 16967280 12469389 542492808 740480956 315200118 735152876 448595314 42689786 640701306 871037110 17310383 426884089 668250971 880691667 342388151 552154133 235815641 879699193 873253865 890528717 361636590 792992944 845745924 747222204 786313787 108987378 850318035 200000302 658138088 125535752 320650158 528826016 231024402 869416065 163991459 127764299 191206231 782965366 760720438 300529812 877933 46968250 155645580 740441566 276736639 87109314 133749711 770867752 484972463 990986662 730529623 375257804 526493893 753447482 240008017 427049640 774318923 811123558 9927068 373265800 485020246 20781113 186933527 263933138 794626848 551475758 277557815 100838725 846078539 460578217 166236936 496784767 442658356 842427454 825743284 396225625 623456166 933148785 351496880 86925087 540393197 575546585 899097720 140772453 573444052 909351341 469796330 938652673 702113556 33000459 446318047 436569364 795193401 242784304 9031258 343736235 534209060 108978929 131512995 257852400 153879947 516003018 68047523 786299903 471874779 24985917 641581478 735862315 362232884 898957838 327847493 409331763 140230503 24728791 174975986 291596251 643844817 972250093 341362728 531935704 560119042 140313071 870896508 709531825 830861484 468257550 44595009 70795270 992116812 316498930 25042553 113323374 897260263 510751220 514826853 52939982 442421481 900062757 220210630 537551560 986343488 790972540 417370904 81159250 946440157 403762100 433335551 757624717 981795913 865751105 722264660 680682665 908719188 880478675 736128191 915006209 233910122 992269798 255942429 77946817 364806179 73681891 535775830 94993139 103444634 471797719 943454973 822227832 692341269 843596754 72572554 270994350 955810964 354829279 244218593 597914334 132263961 437927959 7123711 34661791 930852207 407054901 866143553 597003005 936570252 623277739 334918594 353061524 763872950 666535788 414690427 712746681 793468281 557272997 190461151 120836024 35500524 29733643 25264398 956257504 435806899 73788512 442842073 411104839 400529505 994589050 483690459 779728564 143041732 655207161 268313345 589332151 308271400 674344608 802931620 485612748 63822569 626379767 272864077 431641926 327259345 901303249 966680847 924755971 883264101 534541553 308250638 865560711 613868844 531892872 351593948 755683091 906887831 77834328 505489120 318844595 898347553 636577371 275201533 462148878 195063170 17363381 790295891 573789651 105556382 136266546 173231171 32450833 621081754 532254684 257511930 22186216 64201254 45112696 285428138 560016939 408974401 759284392 214766604 67423587 450201089 603120587 280918603 982795280 429665812 40229789 694668380 518037173 512175855 421106488 66425113 360643317 80001734 472953382 319717428 945169149 151591411 804075024 51842727 99174303 623104473 61449228 271284517 434069986 955463181 992551502 40318905 430658323 652713388 462995084 787163049 96835452 302064927 29894056 317284405 450454749 346068857 374857677 81330807 314823967 608915911 461519886 705530120 511117192 581834553 62507253 918017649 6406766 932115061 303773949 693914337 813572642 669066330 189342683 212815653 784322427 439334365 44417051 540632638 818662344 765712765 486102055 171317480 70194281 49699760 518964015 937680191 172156169 590750268 19453932 651147305 74381314 807681087 893540852 652679102 969562501 977220908 191089200 993724776 80939435 705034853 858088123 920573376 539471262 459767560 187385849 219647838 353198111 761294787 325399662 16805872 18305863 488202471 694884491 899376801 187196868 175248553 677901666 331655577 54458087 585698627 549984897 886788278 253680431 1250830 668927636 308880655 207715747 333865399 956673891 789120686 328383260 871669275 218814727 886847081 821990556 553491420 996094987 596675955 597860450 350136351 201199525 420537547 359903576 670376801 300005609 602816038 921979784 162503847 248955813 535845914 621696379 759355170 981541021 439171821 941926148 929679511 514687758 775851229 418218864 220400584 145036676 752577373 886407385 841939843 570898151 602578113 929904450 696378369 359038912 139173326 73351997 688932203 951408417 5182988 132290392 788352938 956205619 671337 68724220 317700178 181371125 672561963 660598056 527173292 927298147 529815269 414779873 161523318 664300018 478465383 347776338 42060365 484368615 641281469 184213307 292052867 390148392 385348841 493014161 285503302 202558657 947256772 180414754 312305834 488607066 613336463 94836105 623704674 212356811 658333480 500393462 489724971 839051542 652847805 474415803 859828386 252681264 720372199 255434579 732686915 851947921 489955775 200526180 961273929 244415873 983360641 38150599 645260168 78886783 596116826 312692892 894694704 861614462 656737217 371892012 791164617 888023395 729199770 905034985 176145568 902590707 457115676 526968923 175661990 311559273 662695539 706864121 973077380 483518343 591243796 956186290 937166541 30873012 603735772 355551676 910013099 7661056 929453296 896959501 619216788 865991586 598961763 629616799 599139539 133893195 454916271 459020271 750968241 234244715 88831303 745704216 661269319 77495054 368123328 306104713 33564354 468098775 20468388 750891540 202041978 147509936 195369096 707932476 526550034 669524330 779103371 156603786 244183451 732347440 313343461 776312933 743949358 99050286 641521098 226847684 910097115 223290192 236878149 737598500 716222641 408913239 597658446 942385953 203417551 486870022 726711890 199435496 449002868 79620710 356763787 669884918 993397971 843817948 880023591 630223374 439812779 843770403 80564201 626563576 968532936 69783597 349215505 352054239 501666128 705763109 607111074 134576649 508623911 32337979 615378193 837500072 755324581 865592330 711923134 995136774 395908377 404099179 884455338 435333983 332531537 798832715 86751923 702506345 870594488 218831212 500864238 29205339 591978187 596777514 381694849 889277203 887637267 520439941 177730997 857639091 400035421 306625029 246480927 883713677 745912138 982128629 62839946 598245222 321210462 659698428 35950035 388224000 181518968 838486723 363039983 673707197 537149907 313179365 498984295 233127133 165444416 119216901 669003002 640826127 323315377 970140444 316267842 711253934 846095822 983277974 518434338 278325518 105167292 272196877 411848649 929163478 192557771 533067788 606805902 966154582 703374750 223684255 655671789 274797181 706910258 562378503 947415860 935842876 743674103 690437751 470403397 958039028 792935861 799324417 684149671 368409657 43902838 661742522 62072559 24373699 895481526 130069685 96190384 106537235 516085991 500837665 295034442 103083537 706824357 446732804 226690855 58635980 955133508 578866171 851071773 97000766 608838315 846142933 70926431 857683644 284611088 44438378 759629341 286979482 211378136 897664730 884677286 237697365 749795813 882317346 592284350 113788546 993185509 286311315 493385210 639397312 600520194 637769860 41510078 619016835 443745279 761560992 757925358 167865942 224963703 208303601 108164968 119399391 220851181 37930970 369007154 308555830 244215142 793485995 461298319 284593997 89440439 771752900 258134128 531721856 736692097 670523750 85346048 48127303 140550202 66752725 272817106 3222656 999238680 3037479 117567860 521545014 131795019 961610945 763662093 82968777 923279862 30329380 868624117 470307169 395609879 737836243 634003278 289270634 572607079 650528610 102395082 56240954 228969040 903599558 787705273 791415377 738170579 732161298 910574053 375930483 681763450 873783757 206129227 641257790 520128692 307740303 222034344 293994497 412598230 454816131 536456656 556697619 490132916 906219763 650398281 471777626 163041228 707490554 11402142 183586925 717141724 178235247 240496341 141752445 185146172 680625905 285450626 970880661 682729370 12146280 868692971 986499077 854212088 305140849 931057558 454564191 708107866 440635849 237021547 920805897 523340078 92117925 695743140 467110410 446698656 459710348 524956303 333623700 149351605 724119742 357578335 522064113 97212755 517019703 247217818 660864287 396072724 920254360 246110894 798578808 920017751 534988385 68456558 7481251 426454153 158697058 560462302 590469716 553771264 191600646 111462997 618205944 916876487 14172941 20572086 527697321 48056012 490577408 215515357 988276433 743996774 372489574 746415395 768543388 374127061 619486798 859874174 731547697 338463437 199732355 256715611 449095396 569576940 730500834 272672215 818005267 298974106 136582657 230603763 560124851 710063543 218394119 357249082 661229922 446543687 300625261 216288929 334196970 391945405 670050387 279975872 873859775 945519881 222984934 496142782 684172935 895084669 668901163 612914748 17695096 732116597 491412704 899740291 745416232 272954091 849398998 937824787 482174562 368999641 860911779 148344254 327168994 166461015 230932595 512174967 308808733 353718322 743374780 260935456 620337037 426058195 27712016 33326164 105662788 363895545 899940182 425756695 117442588 69524675 498391308 279581401 685680509 626841519 142788555 34868628 565795696 838638838 312957738 718454649 489542662 926477678 517408224 352046891 28575982 401348355 279488598 245159516 336611200 668913665 887300429 67696194 635011715 868772792 824794573 177345432 442453724 921752451 277419952 293053349 475096015 481505022 220207249 336622405 251598977 457640524 798908932 232445843 986206991 400073555 768592090 415405673 913717929 191590681 890629022 898571419 440684201 431093183 726198260 209975564 771802364 34771523 338632594 209163775 360059161 573449182 285814553 597756602 742940061 867236824 366983107 758518568 293538912 548012285 729546733 17277302 117830360 994535811 47033325 202170118 240720605 923327410 77646481 301481006 843695212 535848561 969389585 884437020 157258012 381690634 344657887 865094267 905277510 282530937 825444392 386369834 784111287 793761132 411533500 667208178 847554204 967958011 460246814 546992032 289227737 889445887 882109901 808912639 49783748 447138590 722493226 799792426 657343084 263761863 617173576 974544225 303791707 513151972 203557427 206476016 658564841 262075209 40658352 131491943 669911654 663907063 883658182 129655100 398165004 904435763 319354019 4800018 946133562 742541437 836266615 571387103 230226989 234838130 273005217 503833344 818558922 169892011 505525512 361313389 764222264 81666203 934630161 379497007 212166148 927318499 181545667 240475621 402810559 109378365 360273491 160332752 703092926 991088333 824558127 438607986 425172890 79425243 929549096 898741414 822767635 80256281 495356267 117913456 969964001 560812692 505890809 136862251 182124150 120757148 629647224 983663842 756719687 241123735 110477866 114184480 929324218 9016996 477713102 164114746 237304527 744160847 561771162 787309271 841046647 401530791 952786437 749848617 527569689 131858320 236186121 815393334 432400117 275630056 324367927 590763242 538859803 905347382 393395693 717000436 796228178 761297888 847900447 666107376 403678016 499604501 208145210 770320231 110507676 943697688 63248133 386405829 420304094 613058527 317157716 956642884 250828107 573717986 387089539 938466903 658485154 616310268 154020458 405769286 442745162 3672325 666821636 319686266 459105071 930274521 177103068 585743740 73765481 107111138 993553579 933069589 899321594 575313254 30622535 843434519 940025650 696837652 586452284 496363525 158652519 235900023 991795968 969364523 614992034 655920637 449212902 66057748 171617819 593828036 308226476 55463321 813417910 665592587 196331109 956120040 847574427 984155471 722545544 342397794 434578639 326203906 435867733 903758596 876035296 709254143 646067690 300647419 160721228 680687848 303926317 812784534 378696269 639776435 949004580 378109671 598849423 241554185 846982713 651499696 195152371 567989614 910754215 243532848 179290419 771676039 901736108 212861630 435582316 59638152 707686126 816988107 260401047 655098877 424050981 798201156 630675114 204540858 473567684 420884807 743672754 163591159 251080362 523316533 197619898 251975730 522355784 527227978 59049927 222108617 715924646 230695853 920544415 767330415 331930303 335041023 95109036 642403030 232588076 605507275 750180960 608281524 953383701 989102985 287037918 281899979 508979170 683085827 206568418 708589604 426289899 636988830 332905688 412812339 580385641 974373054 298441129 361337925 16542531 583730576 506243278 154467809 347593183 67347363 425428115 766257545 508223024 172117180 256756505 879273676 550142729 757656109 311614894 176803074 436518122 2448835 939993184 969794866 543631574 328836999 448800391 307632788 789596868 32354270 955421213 12499702 494457143 815332056 619992433 241962376 568287739 114496866 96362700 889834611 61675700 294867832 720821431 84233215 181836245 411179120 441078696 54698377 662524272 415954924 208204722 889821279 918900397 114738699 157580969 178446323 872988859 49981519 612637253 636466124 946064208 502775811 377787947 969147212 785602147 827805968 678930566 62874181 543628992 954858171 115911743 772405136 529164387 454578988 93499236 261215715 911779140 560735754 672746202 916038808 163040968 558804922 122020821 212254952 89781608 659218093 309941841 417114653 223549022 920264586 38312164 556656046 174100275 683641817 330897668 932447889 560690201 883925460 30746558 496449218 175238002 809777187 514457872 463010704 742231876 365526038 742867413 224722577 840196885 344469272 363475305 53302842 612897802 311268349 732965699 298914192 879369754 632325990 550760802 211224198 645817549 206651318 346273410 718031506 341934750 658159721 889851275 803086693 188736382 963898060 166884899 638715585 329178004 688812894 621939519 135851992 92871486 529295457 912690277 298068953 957217992 619756748 640766218 631690155 160399187 232267863 165022618 13486981 296832048 137613416 546068301 918771233 334003482 865708162 723917252 162740335 261881879 293630152 432533470 890743256 644248331 58670633 446884080 8672171 303131609 793686591 488886483 771327084 776862045 217056214 158620786 352981108 878235136 156851759 752241614 190646704 710421603 994981605 234368409 410982712 126030134 2931104 804664624 537384660 471434396 504509469 545612690 719798418 53346210 775198331 806889386 238202895 331775342 691744774 490751060 224329733 668650822 155917898 29694427 945967648 333874553 471759322 846771511 741898284 600665560 956710075 452894325 458292589 796264856 632924487 793900387 301344477 522709212 220915063 448979909 793249132 517803120 702716342 379108511 843043728 993508886 654977226 585910289 535102541 723247375 986091218 321118836 578817105 81777447 157954213 506976961 926013519 96390512 680235497 719137085 894960172 296097468 116899118 619313685 982124457 123472232 754056937 819358949 889430400 551770907 233011258 134152436 706192905 5058643 224286926 582774635 814870418 132731635 239310015 981864525 68511593 170185209 335044547 399545203 924388308 894508662 477573999 213027067 494352261 767849701 439775766 864565626 40636462 798441770 779618286 598746045 928341917 832675919 872452555 559512844 713839734 356140994 557823180 373274959 907514065 530229359 887764462 202054335 98917648 191488315 834293176 966340510 583053303 605783443 400877320 809217236 882568192 59640293 899126413 625740914 888152048 769360673 979908801 451070880 767392409 853690087 502312085 628807013 715930407 410959254 995548323 477854136 895982864 405087351 83550162 799100621 936230460 963401616 905405512 660502090 387109386 584571814 332622557 875111229 866608138 516852498 782634727 498800050 833690026 719342107 917240547 547188227 511502717 299230415 463845180 870329499 584517625 21300908 651800025 923193857 287459808 647566217 506210343 37072094 21886298 344622919 446131153 633982061 454214013 775104197 888038140 183596210 716845254 799334106 426530947 364432652 376785175 500880658 771963949 2424009 257744579 444992375 556688417 237311980 590129598 534161057 548547583 452917341 350657712 151093103 362330150 737713692 683153648 140677767 164489354 223625522 95700680 109965448 853078103 986664463 569625834 901962135 184566665 985383090 621897114 728444259 858682907 402758389 218207839 996467175 285688671 212761102 340815038 276720140 192230875 115071651 752418553 768460366 146536175 64486252 46956312 954877010 221269341 78837501 669902297 173297108 486462705 343363670 546173862 411219767 429186750 729491353 77715469 577655788 10847145 533199928 573287408 341720362 896180526 427606466 571428098 264823056 368665524 325770143 429533502 755101342 580288760 510946264 162026727 650310931 36336657 279847218 900872166 924457038 199807814 426805089 606650703 273861595 259957043 635895471 648374464 131747473 464623312 906572158 538103259 707798578 839164336 189113538 893523041 484645371 975828550 923020913 291523354 588327715 761789294 163821357 433502812 608255852 983097688 993008041 839317738 873370121 47552535 90566655 88089686 961280638 572803807 779262083 412965270 567207876 913747703 107571209 311818838 418806014 98221893 138208876 873373020 264647667 916749313 927979351 831969178 118319402 500644500 164048612 343983036 518618053 802220519 733477571 829454850 43470466 756552934 763354132 159612005 358385721 874458001 999963896 484337636 381907180 688382266 527363502 465259841 921959185 378154957 836207556 714938560 838366240 160958883 834309710 234134485 928428299 839619416 892686041 906505288 491058195 759471192 68517517 743058434 946240207 369910629 180698721 954477096 678656759 513310070 730087554 220793418 708094615 116223892 538510688 821124510 271589830 927076781 440372597 309190471 558868892 399878259 718395481 582424137 154895253 503537958 51929976 97634483 625449707 979691538 800540278 426832233 755243762 264330873 518530080 41497644 309715811 524483518 977050443 368914291 299129772 663633902 785504669 584265974 825732580 899885473 941222880 229505802 2513306 424431538 554046788 691769776 230796497 610137730 406335780 172039809 221502026 388860395 341293246 525629141 876112490 542315056 962229150 261387997 53734266 850884736 255301798 286053091 132127592 658384669 315364304 735238457 873537897 825711009 59291891 260435837 906545430 540991820 179940828 903346931 213341620 129690502 425475571 930512193 22570378 785265524 205762749 241909411 839707513 52483031 63628983 485650722 778917053 513159407 877007349 671373409 985115928 26739189 26954619 74033276 34527145 97608880 426167462 735145401 299947672 473744260 833892999 777689369 791308057 383131553 249129789 743382800 782622043 167877445 951766170 458769392 966723102 136242961 634258086 449816724 825374287 766924100 156408575 238023258 13666011 19081539 34741901 969499299 274248084 901537277 933926944 937653955 503704299 44094896 205531993 903993541 829511723 837172839 413005306 741715699 276052846 863224346 904387985 486437282 385202084 209847489 717547469 648104463 75339115 588570204 77773217 214836818 64146161 867827859 538946474 991795565 816101485 206327539 883414372 761199488 101564149 783232200 831816145 269071963 222573793 377904812 669394653 772961821 445078429 111005776 318360390 939731118 151704948 656374483 104425932 865355518 931998461 669641056 107465978 469437075 695500638 430204673 78003231 966193360 569786114 830145998 892536791 469442027 998591613 897107083 803073161 478107932 105991618 366362467 139652115 536897947 491481578 256340228 415353578 117780717 42422161 520784153 285079928 384848923 561053401 134340117 747532901 281081428 516120397 950828906 357632368 639092528 397604236 848433020 371244781 411583784 973869237 617866359 242076427 891770957 271090430 69506862 565047364 682170299 114802421 613483481 28653908 982880167 262089772 679288443 286970325 340727408 177658176 752860033 281909573 463698814 906876642 274659322 907356829 973478868 355833993 297136467 551131400 671403091 22442847 921899462 558546643 348156834 58772946 890522739 437865153 746361746 209098 17261410 96152801 569753886 307682259 743107158 850023558 980485449 444809636 386533333 631944979 522710840 11358365 43627639 669782409 944060191 749437130 217091319 185480499 493214344 244669802 849373401 416043986 99686363 423739161 730672287 184002356 755994397 277606219 950000183 673094331 389621416 755742068 710177053 494979710 859526664 527164071 485247884 94504000 509018636 957642976 227232054 939504244 519318657 984625972 510569271 684734332 331680426 385786288 213611229 498289737 125777617 593873736 166328004 701568114 810662879 640548478 974157982 659986520 894702461 993214577 37048950 291229651 523431214 926040672 713361851 71758947 580003454 663834515 204292477 414696168 955779424 512173399 502152749 922100020 734131295 325005559 378474150 840871711 937946746 580928038 74035338 315524256 30800978 211398519 647124744 357568838 311222072 633861624 904239740 45144578 902276488 908214357 719108699 42039763 671049445 201158446 922178294 566094294 537954778 737072120 233818781 727657143 119862046 599422836 661175841 644174879 313683920 233449419 246708658 115078213 704701635 5089773 38636846 406860285 937261461 855313692 594967432 127049628 236313837 680180632 404436592 262891732 725846628 488917696 769097571 270733018 970942094 691282989 377441348 612335652 222637379 70201990 832985091 112431938 900131313 901867646 682588844 236376888 758278071 417036183 284798650 429628542 531515918 170314537 899698503 980247252 450067525 59564168 671533146 376394131 759496522 400124612 671373948 124885330 870093681 577190491 234431522 533550186 123149151 722279337 974909059 293857120 448974437 103527678 730162437 185253168 82105082 248379331 592350492 750410954 875892752 587972685 221018570 350721053 46292832 606852066 315744680 311249479 438887156 480639303 660249584 385326850 382441278 241327398 798417994 762481046 371143498 69504561 86526908 987408235 473872451 61924551 108097923 606051066 93761948 11248684 159704738 806142857 430641549 674944026 791705913 622159884 470740546 880108808 105287402 404141489 230510952 362399296 223705359 856258148 695434492 925773630 544555964 445029791 491222666 934532502 150275172 395402555 521624347 602644610 559011352 345073508 508350970 801490382 102917965 22565537 180912470 550341771 916976046 431025005 193499002 34679938 225931269 322022829 563189040 148606975 335505448 790660823 189302611 664543376 809562326 258603924 935451249 25546448 624460749 183714700 943624257 257784906 805060230 699034324 668981281 312402094 213932331 218806487 676222827 553563304 92737732 319058700 829556973 403109309 380396893 196545707 938877632 298742466 884883681 849319684 798962438 604366917 324995646 73929304 18165930 996048308 912327519 344303868 702711229 989614026 551873527 811930019 386262456 315414567 867861126 833329043 695710934 807195386 45916474 732770465 302922054 754503799 962650160 409650024 666386749 687143865 484900251 278733388 36985605 819739761 720202653 284992459 157998365 166043486 695004878 688976130 455509641 575991201 778864802 921697067 739515267 913667711 272407239 936570830 330560429 620592724 813454802 840338275 447998570 902597149 69810612 27892239 385724430 649669525 663707758 864679996 552425181 542816958 590241360 982771901 312879558 126113187 930906015 513110228 485665394 666014178 306679218 878130327 258881571 60680813 693166328 341037414 106570850 908277577 777186298 398492493 442400201 250192842 472523032 517709473 502462527 611877845 39399994 191950083 421446508 951614819 373875048 918641195 746732365 382973214 313120460 59386422 780400489 45525329 870635319 333852367 674172443 32852761 373447001 776240530 386720469 180200366 145703117 345464247 286915927 508618822 453871757 935366447 955044425 497586523 570414219 441309476 314277438 254843422 848767348 236058661 509914093 536484363 937768606 954874767 441478875 951175112 388293984 480601291 817145124 36159783 267699912 473095230 744877465 519211675 869857170 896880534 950091479 891539930 178312394 197800379 928466018 150897565 622575674 976517696 906969342 322839032 675567091 218222198 300063766 736107796 856549037 395006250 803281506 295814532 953907302 49777817 311174139 22407063 253777487 189512552 809488377 903736115 364224322 329301797 188499727 324123509 218616274 469325269 892645486 257287444 441662593 839704933 302121934 857904456 79396689 509499799 18604593 951896952 795383210 746721567 997014844 849564693 410465813 849991361 504359703 795475379 230951609 37885309 588608477 569897052 156817169 135286252 11797579 913667544 266563929 558725843 20052034 872353757 457743364 726452147 182379028 711812918 473311916 234858569 918144650 417872620 73179686 23689734 407367111 209221764 816336180 496343213 870802218 763162749 953102727 652835983 526458675 339648354 360927370 709684338 442919801 486835761 39542000 673828202 518387367 313149993 498210270 837874537 735191421 850480021 619844068 916423172 599207018 15557604 604191885 160913542 470068117 51360636 308178874 856732625 700892671 155640207 675234112 68581531 549646034 962423940 730358176 911714781 237356918 127733305 442998311 457288945 203267927 430432400 62868955 323487491 391941056 611904382 392176212 489195596 577653495 397903930 675983115 526614732 2135516 543256719 293743067 276881113 993871055 941236845 992895780 22499687 710988293 466115276 200006283 276569271 165824522 488635155 819842502 441627041 193146367 442656199 399962910 23492348 355408860 589445106 592368969 183174232 180005349 871651598 344095525 511468255 68144772 654185236 544096878 368578588 783035805 150023420 842394528 179939560 974215399 248731085 205906408 867189989 458945192 11201528 766004103 261278024 753648871 60853906 867854540 87959569 891873198 724019392 745361621 972524766 836224080 898102576 647163888 326040088 551615581 134215053 482575652 677180664 670596133 645843880 579494149 618197796 44804495 443540339 412074296 49899864 796443932 723524612 16266903 736213246 225170436 858631594 677280044 668608876 101343936 687859142 387196123 615767378 71221963 479407818 133154748 254505012 369012953 320290987 609871806 309412972 969313482 288105614 235380081 177903550 560923074 815867988 656767711 325925058 942477704 423280425 751381725 692775494 495593014 40498294 292168717 474619500 412579155 874398165 391098063 180247570 975981606 48227109 290737505 896936024 931801691 408534275 650917014 703297525 323874388 86479425 275628483 271943711 152776119 984341219 352711468 177054410 887456324 453466480 16195728 28786228 556572357 587521303 600707236 944302674 799036531 438449455 27042705 551602179 611684856 594941836 838370536 682140330 185576500 970607250 756708258 384103177 284897927 471905881 164678722 558271859 59034680 776600556 383137033 14458635 126270496 525223484 240942525 312652101 726096974 132926533 659342698 111441870 993386923 808611585 793043974 272477929 572581844 966348181 726809897 101843037 636230278 254804406 302691433 97144320 465174021 926064747 425959129 847292943 292545955 982245378 18345862 470855570 596276171 514516413 514703826 346298999 600056962 605858623 527826219 410749923 930891134 91293574 411005246 380079542 387045017 328212653 264827617 200430881 106665621 52986439 415052942 987074988 949080429 631161053 863366770 671229421 941592065 313300531 953386466 190429403 659050767 795626917 104018724 225548406 753506031 89690699 814721067 334848295 722700235 316375705 494671558 366591963 15211397 528013114 780124385 801796069 223691156 619086861 390256210 544999236 956661431 136402824 697766231 689410620 944349523 65538564 192710244 926375619 869766937 448990436 355734677 417881908 235294632 745328127 133647383 348495227 68303554 853115963 493358400 509664268 373464109 722084290 841535027 426224818 466334102 622616550 409991273 935859576 754100975 732798828 862301762 211995721 672493848 774398535 443226759 863038239 485812484 868396111 277477124 801705417 248061400 856240642 267860850 259550383 211681322 530627081 982490904 522286414 227381077 826954644 58727089 195247188 959226369 370363955 896304775 117789972 579957924 122987615 99880290 811171844 585567702 915622717 525584801 377227465 287752349 63100652 258452777 766349998 422841635 324263559 896043980 99631757 142204685 456980161 260821900 450013534 561045197 89086753 588993298 623189525 950741022 525865688 143382260 591807419 880300361 837654732 815983034 387463880 808900417 140165949 491847455 738003404 131858853 656871424 107744078 637512811 506131445 592889658 615622081 962534059 428688785 31928226 220266902 121422734 83925512 913238691 391948510 345751809 983093501 486799731 18078557 241404660 656100728 135401028 862721382 19844889 749117937 187219091 799825129 955486584 863604057 681503377 688645395 775701213 129277344 401455719 113564400 900464750 165831616 396302768 481143768 891733686 390357538 533345273 795869979 833965831 660403051 232605913 895716531 228007465 655437473 99806068 571436978 705088090 429336571 212701718 70637936 572236272 597080199 713097368 200487084 47189770 607649914 831225016 762186321 203140577 410333281 239873164 708834530 684105144 673564650 545052213 311842345 974704405 560732778 133578484 780916605 550327561 477314899 52059353 750267530 467641646 547370555 774358373 640687321 631406648 255391234 811120886 33451642 899237779 827049016 517976712 214839042 913289749 698681952 100915158 555213765 597026280 860569341 441251084 835969382 301314708 202604880 94027138 214077446 105597333 834026394 446988982 580765764 369972935 67844834 863391008 34012985 93051020 362976769 286648662 56477936 123937124 966015715 414345480 92268966 94348220 184830662 803096816 438966638 125236218 908303746 92041407 232253093 530582703 738721182 208413750 870299209 752171492 310346879 809252847 809299964 181778705 540595673 809383026 113674058 132127444 982800266 962008948 133590490 576841981 620798364 718555973 445610976 102733886 443057759 203821466 615504043 321470110 966438602 199047631 576999938 205862939 65514744 384461181 948060402 492589583 198373025 165376350 141928471 909752749 814018406 829095821 72000904 874000674 522447693 961369250 403098393 59483930 91723529 999679538 453503250 126130939 386236414 62536211 498674937 399111630 33929760 734339425 353619794 103881962 817115397 346403348 769841597 178662353 323620283 344794375 669722702 679791010 88617960 736829080 755581486 481037619 351366138 755815969 763462935 512522336 49148811 673318919 191439278 441796669 589628749 78642307 736068993 355453970 434312750 46381663 192592118 644897060 170115166 659823194 178298451 975805233 56472861 636367288 674346820 824164015 631212497 281541440 373160659 59025690 304744902 923763421 627435262 148639669 358758030 785767349 540695087 750127828 968781576 553982078 462650787 905879871 318709344 709409987 828045868 133825473 991756188 805648383 696588996 759526555 864969301 414755903 532764040 42427951 7495415 523408298 748619160 978839683 716204244 471222681 290660752 446422024 683919576 92105944 999822237 173455749 24260087 996488432 964339435 155669200 178087791 610267280 992045168 236565205 259010770 759552392 362027733 965782045 859093750 602719382 220626071 98552708 609369710 964932133 27051895 691197730 352056079 616635294 42083073 548591025 714314931 434042408 900499751 123625376 183790660 25379500 577689857 776137637 244903084 962403031 533494084 904166832 985496783 871426320 943887290 672225479 812607227 342882348 191995335 851736113 648818469 831925072 249234288 647054034 24862052 364405272 366714423 50848164 97096603 153982772 646432939 633860287 832723151 86884182 437953629 258762180 287944172 517942619 922867486 825197470 754820464 782062114 286982830 69243074 405752153 205100277 9463370 64997024 674020761 321209315 47245082 212139341 370068724 485215205 932208851 499179249 145423709 417941426 964558568 986725203 154655777 531155654 739657854 646771531 420596050 689302391 198830495 104529044 30396679 825600352 973418786 991681794 427062167 649321523 816910976 333001731 388261924 90654136 295938478 989497155 366595950 926255555 34863807 46833039 314329318 186254707 695901983 715772260 355437797 519597677 691721506 326601922 9957641 728018365 266398520 283983614 717172115 282869575 802739911 548070343 11355338 908760731 81013773 561065080 476809881 363188923 715668302 698964097 970781338 391207417 416508199 963281137 854852860 325147113 344800056 541196223 623486005 610717823 394027190 186358497 253528967 334937268 896974205 419849794 935526315 857224912 240603219 106039460 744199144 216934716 832447011 644028717 868621664 285416232 223906785 796933745 231768302 756947040 978332609 603303086 553890202 706755064 283226173 957674028 937947825 929880308 773830082 665914066 350175366 393178090 447820774 903663883 614468639 826544064 298940477 206019286 805410601 671654529 674774197 96538581 406240197 251903175 404231037 675590422 409826495 537922445 42053257 597420700 646065088 470044676 943852027 383322162 882193930 509940380 532483558 576519876 939119995 567428477 102300915 378024856 201835717 989174200 873546814 285074350 182939210 331287501 819830590 19245168 984343932 424614594 165830407 673644973 603716288 101665837 419308660 337726209 774782885 39705725 608883189 585805453 41166232 604521546 111045890 294525056 987947794 711069383 776164421 627954399 769278508 782118332 136536938 704293659 159690436 736421756 272980212 765252180 177795363 456014447 635956055 121179041 599217393 833928904 712823435 14313347 745880029 3754651 567706724 706607609 994333562 194095716 749297838 661595161 966289883 634081029 741457699 228333332 376000768 376805149 253960375 285401013 30342507 226752452 517189671 356411648 656934646 797597100 39176567 124270902 103745090 44590052 556567790 938197978 891994801 85249517 972917553 793368646 576299003 749869066 640089859 615538590 589438511 99597348 193937237 649563679 659576509 211900043 985043997 475996746 446239359 302439226 37227232 982795614 985061706 842153640 51236413 520978930 414661701 26440600 635984208 32945655 935205008 987791167 789131972 229342919 778942031 916470679 603743898 664991964 754554280 569205022 763824601 849407188 474544525 595623282 8897704 583044705 926773551 63115661 209381273 897580301 876749661 768180091 196929681 10219812 810625264 239245704 838009993 715411160 973035428 445607567 218349545 627509740 110331681 378442283 319445003 799569404 912745034 687207831 95797791 700992053 633352933 758703006 126374756 258278569 957152362 993876184 50321609 468817849 355688331 215146107 862535259 404203851 331237753 134468029 184333066 195125790 182066751 730833616 673536948 881280768 228039989 245562837 48674701 613298432 790310012 21380980 300345827 922296500 611655575 860807001 36808459 126268213 133670437 576794879 355499825 63108182 950119479 393718677 785553702 182345293 302244583 139879226 629155964 883240911 615105300 173781776 510682220 795651591 601358187 130935128 624717849 719573732 13356142 427348669 498197822 306259151 440545817 758702572 442985800 685346455 406968718 635032103 640101957 731637740 639406839 420016751 986653070 234414208 881571235 356064452 197391374 572744461 125759585 494612617 664350685 64635538 448145994 974476221 936046445 112982648 934583820 895364245 735450831 447466559 880114856 517971203 522980076 125090407 762926089 255004639 944282575 440668071 265362381 557617864 119552207 360653621 868049980 308610984 888428507 66783765 894819626 374695635 101538676 841871495 177313123 155590036 442471281 570590656 181900730 701906534 72376060 777781273 941801912 308739375 875915519 312235368 640992625 570228922 131930929 95457949 940425281 351377987 874118261 687009821 537775692 684435420 245756981 288265371 240218003 833637744 207776325 592422426 719127894 945860671 933120877 996699831 873329390 633991233 889661459 798470886 854543947 315325762 835568187 387408422 492948917 268187907 909109678 552784449 663429288 155095226 576624589 843540188 426574384 20418628 567736534 981597491 414271920 631859846 676652295 918186588 451048440 717673734 102140344 998770688 949422099 993064382 161551899 556184643 724588867 859715095 199208661 320930454 610537858 373705310 754869917 437732963 711664739 75813278 843875916 23471451 174370413 138031754 119549782 211065094 807738602 538182972 179624203 969102182 608425321 493431320 981224388 778870458 641760427 341190579 71321313 147564445 767879849 661111074 87003147 857324397 913458733 873841005 309254853 315239197 607038108 478048513 658526901 287420867 327713836 953364122 834674282 430309061 197873258 797598632 505975308 41365807 205332342 175981128 974788063 974369804 138785066 557664164 223866767 946928547 3438788 283998046 373619988 796741695 612628887 859187057 490762335 436059580 236369704 885672426 875596059 817580255 878695481 217522872 68655042 977867558 531513511 519170395 952947435 940517854 921163107 925448619 794432454 508592215 559497318 160544815 246828423 239828998 767081159 982191621 247864042 831503113 843043770 780698188 294537960 404711870 214143121 731218522 533060956 2439596 210867640 31968461 52253756 864750746 842426305 863682588 170292636 764270486 231537531 185720784 670541200 879966231 839616070 903802370 545339334 973021039 280568747 319628555 156872582 333129742 747187392 58339827 602354956 512557930 131753761 335652750 160169625 612615987 813104079 210414582 77714537 473736098 903784702 824761359 554014672 912782650 405944933 161575572 40837149 436525185 941790754 461874515 721122100 663706861 991821439 508977946 416703651 80920463 860277157 626567893 339124444 448399013 501540471 918626821 182545959 973776009 401788395 821810260 393606397 601972357 555172352 75243620 380001243 829254180 476742890 208924763 284078215 214445868 231560080 270925844 131875973 204174166 886637420 947354542 117603561 95781939 370962821 712916026 681497583 375055694 331837673 799453508 993529137 461349266 800069030 200788114 543509755 203784659 470665081 588145962 825600135 156507176 988864960 186533092 37820203 722645174 728876174 235188464 169225230 116323055 282031842 439573408 110045370 145817285 34510270 459220151 9673219 154309092 480638448 323624419 886231761 773479625 774404780 516181246 79041528 141244703 309039883 5126979 412365524 148938058 732219985 378079479 589760261 946471646 928839777 825411477 280377270 935658876 26307664 395302245 336866778 738194268 505225713 36850534 790987415 615712032 636238910 292439617 553789396 108740828 285499438 820982313 413247160 264964113 256429903 235567544 989201435 781687441 22941699 865658226 805372828 662927167 302068685 558478016 951548249 381105669 980652601 151664470 159390909 616923274 161510578 750946166 152741504 81558888 256115507 298490885 222516273 334048196 812020388 993369906 972985148 894009660 889484638 749773845 488778863 54132191 836497382 731280814 201602817 980381589 380970209 541067222 819241343 896814592 435331622 597033769 772255540 591166351 469735502 915864332 354894963 912416254 60566893 46045529 97032401 781252488 82320810 92381282 382999794 387915134 718059129 182427998 769170224 779649857 961800136 606591822 142784204 3476412 197815151 961370475 77794780 437556633 165076881 250445236 731096222 561494112 280842718 915832568 679722528 490573599 778186966 35222313 134751077 914584792 299797361 40013396 64205728 309366004 724492859 400308612 188450011 870831211 631431573 4336428 48163384 221250979 4260873 75753267 631873466 799190805 430806894 682569527 219495025 969855550 183228690 230236717 452895334 60656219 304076 469888221 985640401 122694708 196536377 952362573 892473515 321584312 898231495 955670020 168695532 855804747 467995871 672353562 952257175 726842066 75468011 581373513 704798152 126483877 284273630 430032698 849201571 214296158 120161055 308514207 259074562 15611401 19932201 505384833 421304051 286943250 624721722 201257891 12180064 885648554 664278449 146489534 545653222 66603350 432446293 480880289 177642479 960264399 433645933 943700450 435693789 920280774 960116600 832239706 230682643 521221916 408727004 21876050 793616563 642395788 19736955 430292654 843975157 705585350 115078714 840565825 453752599 248379827 498818249 519869657 353167878 418516611 676912436 915019212 254769598 893798539 36885970 972921570 459747118 894556563 78378229 347251290 555354885 704652712 668914473 112305393 89488355 399291806 775709276 176140364 625434372 237180892 86130304 796195314 774207027 572234251 278824439 169625310 863557309 203105615 892360742 246619156 206838243 602067628 337436783 597936791 977749382 278234248 964832660 7204703 456351177 84506760 984533133 588803001 40683548 465271820 651797827 854035095 470729357 650338689 260525910 435861363 944614929 639705963 461004162 962638499 184544598 66367131 681940163 733022390 323070740 127953176 594841506 638105562 368160888 275195914 121436806 617866779 794323777 743310051 507419549 3401266 700919311 634510972 605647710 30964993 534655800 539219343 438147308 372288986 488551100 823783387 624451336 367363113 495732164 705548337 890764568 707491885 660296621 597469862 782043894 660227093 462256623 483841526 333054130 295358729 831514090 922278397 515519057 568252804 189757275 145943599 374802763 300847120 845378293 980758131 223721300 364454819 362098325 714908074 447156793 71165193 349058275 410014669 386990425 285749259 480604604 722318977 396322998 585586833 347948537 84640356 441270650 458892939 885315879 802223866 239994126 191001384 792310073 57686692 48363769 814598496 336962128 632224884 83876334 285133042 578955024 966635848 39876755 931188173 956181835 918538139 569734384 862782146 859224018 312646952 306392837 551366417 500253908 132115813 820126454 610545559 733444917 561692037 386602136 806255317 929021344 218232880 476224580 685309611 200025349 956773244 893149839 782296035 965878583 53601421 342908567 780344985 261415035 810400049 981383570 966603708 780643189 368564243 679575654 644467193 769713249 166770022 800720164 892555235 161128702 63119483 278815168 805830430 491168588 583993273 144276641 788888784 764608982 635896405 834096198 116585056 257646713 343332575 39810005 229653965 853619729 521552877 44916542 684716960 592427822 913915646 623310353 66843261 164491787 858249231 656765520 48744558 195738943 275408103 268035261 544689640 931123753 573660121 418895481 171876266 533899762 214259033 612208205 775163005 432227083 585482377 240372509 181930184 806718886 297943884 191158421 138992856 491096001 94839577 432267896 773068747 509633950 290331921 597956029 54575381 367013279 207984051 282900582 155973414 97765768 966924351 648149095 750686500 138410399 447155322 391500026 980273823 659255387 112951403 554040412 837782593 140967428 111768645 950752757 45562149 17277757 198855082 722023093 930850936 539930267 278489953 461230125 546348855 663686954 977697133 664276118 506449595 405074999 913625706 101870593 762329257 953779727 779149772 906032563 653735030 906428764 25216423 164496080 448625812 586557362 670899867 87646211 986005027 753384542 936128564 329691902 136837855 710267506 47085537 211596474 977082059 44345557 689959194 248571570 634232976 346167903 963274816 13798761 434965374 511853559 37011127 433825887 920126011 479347173 595378591 986962270 968351261 526354510 136875606 361246943 159219384 522312179 563219708 995526201 267438071 761141007 238941486 434800534 393433690 795030773 666034111 917378359 435926466 718498150 185138091 740496318 664933680 131570089 388743922 731111599 710893962 424945618 194308771 792344614 663573045 551856607 189162895 613335208 825880267 718766515 201617935 377679035 838424177 272848851 496194545 583137925 969702069 142499605 389866089 818713902 197891653 312734418 113861019 249121294 49576008 565880389 749115102 936204200 217695449 315579487 47114547 287036399 24100222 442398426 207733535 260520263 109861257 864942836 545993918 369582499 274614847 38037653 737001688 411096124 721261062 430834125 67833309 33736251 276352553 710359848 96551228 998180873 555263187 224848793 509403406 730316235 497302202 519972618 898691718 848565046 109429075 583691927 469770466 718058807 351145067 388186082 879004731 288131622 684690984 448251895 743764166 81897781 272936344 227932312 893584479 764925601 145487398 433040723 216514204 314161449 818093908 816103010 491814769 40388078 167568447 278183319 76716676 75163018 46072129 43358259 22796978 60759567 76023983 424199444 256458729 16394577 840292254 613723263 707348811 16754752 889472764 924063499 239015878 989557894 668562409 464502712 108227926 45355170 739090001 291213299 510365815 627853847 497233909 12570802 468638199 138056083 359642853 752566058 737020957 42810970 517296455 314324979 731568631 791425194 61294531 848426168 325577378 475007682 742340398 823742383 888710795 695235360 788010246 735878551 413195632 26530398 31195723 845199372 261993700 326007177 176115886 314662444 479908177 464531208 270094570 27680219 154141235 939323095 594104733 889725710 512630255 797873891 527181666 131574838 560743217 917948554 502317231 430629643 949688280 477620653 543788174 599380747 270699621 457027568 384558853 725312916 282077421 549077028 574726870 636128177 193336396 100765121 30491668 681841565 575169261 263862169 819494583 195148878 728886972 132114203 314478449 804858346 255350827 663637590 571870706 358278217 948799391 845775296 369914837 28731959 497733246 703689183 295551349 728670250 991935127 968494120 191867124 311285749 56734532 496512115 578563236 317267948 878246018 155416662 620917288 557857493 377973984 42960998 377144530 837000376 949216075 595692693 29819309 661530797 147279422 502711993 864664434 427179659 602042290 925813776 168331143 662487061 638828075 232647703 86622343 109151270 926503568 627605144 547429184 974509100 498373151 11366156 908497288 94497417 731911633 853695296 83153608 583826675 299557873 345989388 755161028 655909053 611294511 804669392 686547809 769264324 927599003 844335699 5847481 260137584 272766110 712269902 753932151 788999157 215296789 72407285 545455714 337171016 346709078 828857686 67694669 184184968 624188523 94520417 342219457 31405856 673783027 806922985 474247556 785152835 170147467 623895822 702112646 117206044 755404001 827350016 859527530 837180632 260991189 215217636 641239926 938098020 566352535 187449456 243225825 100280243 718738421 881389368 406955731 532865665 256391412 723913185 506073021 875747659 103245209 819924314 294341778 788780996 346668707 298231980 904607252 568596520 401064941 7546525 774174746 952710172 119248177 828697463 391701800 972779604 955172637 557226420 549156936 91223439 287370628 890301459 853561238 658411614 752834060 255906996 907096904 753602055 499300336 283687757 354619572 687842896 365004971 848750629 611475687 533411893 768341830 599212796 80254450 32963656 183599256 527849243 174561261 238791608 288105081 635405138 946704167 134604991 677050717 835307661 183107123 129274047 353740979 208749166 760392360 964020163 270507872 954003094 471123661 316434874 641096542 427068078 701517638 9112727 822205679 452715739 775181550 293625312 283036382 454458404 968516453 528000960 194965073 653411452 747474481 381498026 341426197 736518412 209882596 94954161 484756406 688802381 146359689 742106545 665996571 535749505 656124801 579639183 63204392 451193037 207693239 230057822 59308716 642521194 351986332 262563059 124262053 482708955 153317774 561102837 185477607 318126494 621416895 344012082 886453901 433886636 240996660 934594455 662841996 427275187 865992908 16587038 111822236 50547162 427000935 711321029 65371699 714583107 715195219 16434289 828770915 360035875 647635989 718398581 837115733 289296722 404922912 111545687 563188735 31539190 221242907 974225300 266889969 340260273 736229599 569804726 228911537 812189011 237131251 982677224 715678370 676701754 609365283 500255382 431198396 379772250 86413320 192956458 486792389 189052548 551367024 93603689 19479878 383806122 54821955 577412392 352401928 156878902 983306821 969011758 138136897 519550886 237858709 567694662 306892176 677253698 554233480 554308165 567794646 505889389 468743507 796051819 983236525 84026449 660165235 909679049 320234342 248433235 959228800 255205693 719344491 451650804 561587347 779091766 542780632 2770057 898533272 767729532 716193758 93095522 694691416 786254714 727081309 191938597 857696372 967975167 786036454 906832014 434972613 590289690 423497680 299367120 25509712 33370191 45691241 275742812 141251795 21628509 618045194 732695346 287552094 657190857 659709642 57383615 475515928 655423124 336375773 170139526 891615999 284306194 478196693 432055247 226225323 718265875 606709287 73883062 616316111 402788159 822172524 100658532 206221180 844353141 855281021 206888517 633819292 111141285 27610213 646185123 66361742 408653663 616259008 862736546 814240019 305341467 485005443 24174296 504977006 165716007 604916472 801001051 849150948 586903707 216331100 666922728 967748284 480256265 633117336 908681773 677431901 332857313 467393081 559925808 994710807 901622486 466210024 870846678 250372340 116508140 190993998 810184399 20610708 115436023 100732048 704765472 717955725 358375567 223363316 612833960 387565037 812183982 62843930 238819962 491617161 351455474 857365518 871134623 572887676 333958634 274585170 1137764 615158376 737967450 570163934 665504979 538395315 303687035 900564578 533400614 214265429 892904299 811950017 620543746 802940181 326023495 953953199 283381149 724190401 185856636 153881946 640628437 697176161 693716852 52899442 418471208 77140505 85419692 127040406 118184621 146185794 952449760 836316718 738633287 34338847 135526639 885693551 659101573 825907266 648863294 533645982 545130784 856962908 972620770 412053189 186435602 323096033 78133309 814785340 595271117 811129714 625725079 422612242 669452906 697979246 52499043 591291343 8798166 847699106 58930776 528680546 943372584 587041923 459297826 595221659 409936240 744734796 578326975 51515162 298275430 965504892 290444410 931968305 511403468 797308659 506175122 440033355 236799000 402886862 114514160 766161539 753213388 631219802 998179926 910367673 171274890 188995272 85181398 150419171 929709796 132693886 818104195 773908947 692387844 819529251 352570275 133782849 586727982 108719898 995460506 810240901 196711011 533907258 593456300 661653531 391744873 797948021 235821565 674233097 458968302 400411616 901220876 365661238 474989673 93721608 749223919 934837463 409721315 198285604 655524791 633909262 698630351 37390889 870271734 624609951 134454597 935965888 915247116 897769516 848879411 49347387 506833082 379817681 569287229 519258885 111197742 262679590 770545201 418953374 520384242 764690401 581087964 660077354 567282262 664633064 500308040 899188756 35976852 337442511 875759725 459656312 436150337 107875546 698828745 37267678 256798286 909297821 324694099 472790236 423210162 237411055 37924658 551720174 870884760 580063080 48607056 937748886 553088660 628004559 453884163 78914251 114626469 402761891 224800686 827997016 589694733 307867167 797534116 544018243 970874592 926756912 4005134 337590462 214777481 72446132 46250954 561824216 830134368 484204348 471560053 175597012 242424260 779119408 911246271 837938891 230776518 993003220 885343606 801904087 394195687 252839636 75560889 561323207 836980992 17140772 51600257 420047351 599720282 31403129 73504143 587633615 57609938 426459848 404585617 99931079 573205421 415689165 807571013 16217762 984227689 319221959 764714373 249324875 166497416 43826973 155121873 7220774 2877606 57023781 82819623 492547270 387502789 842576029 222973784 524436609 550046023 524425063 927841858 112867398 853362444 648528656 821086220 801979737 38813199 715719483 434273449 242622556 733197399 518262842 126358721 488263201 447761806 707006029 992068991 706794171 786115295 826358042 786517441 398799701 317533788 682370346 959499565 553471362 271287666 643639296 28410109 755012943 242233731 265601601 182801410 280801984 957871917 990345550 852425726 791386725 262713445 710911982 15188537 581880080 133183888 974530100 750586780 708519420 561899018 8279341 548119699 643451956 173958320 732620785 551589156 168567708 876337042 695434860 490873600 642600813 702172533 820623852 542907550 210409374 436751205 197216985 515494559 740763295 758446807 720936717 201258743 708955639 729605605 257081953 879987284 726341720 407159078 775987030 742242104 974306203 883606429 203058586 612790343 770411608 259560129 449977380 179274242 743166293 947258985 376868535 888782886 299741978 702188573 542182216 427598822 637556634 166300699 974715198 741312721 914472568 424896422 641354774 626342163 295413804 857363262 139809 665513165 121568313 991001606 722877717 97737294 749984051 930556442 971312462 281201900 563298584 457373497 238510403 660342105 226968831 407270434 241439364 39689724 333901261 39000555 605493527 320023917 564918686 160612527 62915931 303163114 930758875 818793799 940184410 190003635 250697351 251064842 929594379 548881597 479859843 893064698 260271203 236695281 551717884 321067115 515256495 735487178 569446363 227212990 141881997 760470735 349508532 195182710 828217761 914613604 860612633 661645416 903953488 898389057 212463359 362891046 968921467 201645317 86038354 205438657 200796303 498873352 525557816 659667805 514507915 71552420 49678863 469021726 291529982 415116720 762672263 16155343 316444766 596066166 94115470 617785732 140071208 164988006 629850477 22827750 840535651 272914971 475641274 799133536 517605429 168388237 775878433 946786189 199502613 34375243 889165916 519905593 943341551 4181913 635585591 425328889 197013547 965277469 456195429 208967087 899514016 824812119 99922406 839443957 372762046 779715849 429634030 350855822 921787810 209843964 410393727 816111323 339031172 759219537 415509719 953043879 241289459 852027341 223840565 44607806 71593330 575702006 796300604 76426205 206312253 648203145 838736638 267198779 75567121 554800771 256881112 323126720 100051275 460927382 405216792 701307806 432632950 278771777 906109517 291066902 57768739 602135701 703976045 966095596 111699223 431480831 220873926 418551421 777242927 919326292 322947456 965687076 231538675 829766749 700146503 567110746 283331153 902311245 458627702 771239817 660879206 582183120 490316563 403865095 931456390 901410458 419221288 24991112 440319965 302508305 680577558 507385722 475440509 100660977 486027978 540482590 682904028 486249563 239451831 216190349 232112478 125001096 371610033 116658432 594106834 911582404 595163233 55908837 109553709 284895734 369969696 522127125 658802623 178676848 3174734 912712347 916536808 853938599 425414792 8599192 501154425 791997914 819959803 991875837 785312339 149851359 532858309 323205151 517493573 977627720 741506140 422033172 211942610 865736676 638525595 71437469 602905930 855352140 689341316 272438372 957192587 655184080 401527084 352037509 869887161 429314542 386740360 889357067 597803591 280219981 978204128 945565162 537602396 192807598 729063315 738676718 562732504 201819300 507508820 824672476 626940819 412105042 439854705 613079884 902695860 324290858 133255983 990233950 666829228 548252516 947366714 542047276 64534718 432254155 757835606 349132863 977466412 575248472 537894138 438605073 725781976 347309030 34869666 397922350 142247431 300777223 851483561 764596839 812308094 483347276 266555575 695852135 781562026 386931923 857289666 362096561 793592459 942405380 699784970 65024825 767756157 227273319 862610967 115112945 707615551 191565341 392199159 408612476 772988770 305188422 867680446 401731066 88402206 348265383 304075436 792604132 351082047 473883391 601044312 458743294 862363257 41755701 528253909 135915717 576591258 866939322 931760091 745419638 48735413 662445736 909354691 677397750 194877402 149620967 661394833 554189416 956299551 843043310 899173478 802421937 825924017 573759977 815480170 987321 198159484 718973221 781510050 540588764 760135915 970871025 411520482 595563746 864541547 498157200 871420487 48032060 44367264 436382846 178940653 263082742 928002137 62411834 518874960 167066912 489464215 869176843 235024783 920488377 411557547 124719466 420415653 984272369 782125576 445486871 32053308 299882327 388064172 147138846 291268877 962736334 391299033 160404225 44920368 348383680 192051655 666885812 947335269 445276377 301626752 422457717 32539360 456679361 265041276 228542166 386509248 283277358 758304182 28833683 408571352 558342988 944153774 185209567 878069126 21940252 435876665 896364342 159008769 403630198 221462382 974274131 947948903 366558660 467876864 285022241 486434925 616977573 840065578 192647225 16811194 179960511 745100558 512935726 230307894 17775982 973164292 702560458 98309356 710849404 45908450 2651036 769948543 944904365 29082228 481968487 378845260 779267424 713706646 634156726 466644196 791963165 965179676 140577631 966534651 636864030 589645862 242683909 793512274 865099207 462123051 916953137 540163360 210073677 544700614 762521690 173369624 443908445 841537689 400204960 954611477 582850503 3144522 488179915 153501046 995102281 55311728 232358816 603797563 58638217 555484472 468719683 540979285 553569600 536922766 821858716 484600267 431306471 123986187 959727886 127649425 908346127 962984999 640305549 81791263 762995020 758815069 903285379 868102806 398009855 600370546 362836934 141311812 846122684 6765357 977223397 161828341 426208896 755333620 62943558 434280060 500412795 2227022 173155686 633259189 779108258 142239560 281701707 939073264 936400300 676295079 209206349 314184247 231304186 422237603 957612973 231067558 837296943 382393876 910142412 279265956 364545721 548242500 956654307 105510186 680573243 7008038 763993809 42757380 511864747 950296087 267389845 131923620 468131582 209033239 343198682 110411324 903635033 122437495 125954177 675698471 381570021 361992804 520190639 689937704 739024327 120683776 356713690 536767803 650269150 326860859 289656754 847112874 148467704 910146046 181784796 10522429 872702552 890104222 847183779 404761673 315549798 779557998 467628619 511619097 631400201 795540268 252172081 927567374 670834243 50441351 774878123 152739134 79807222 127628275 739691899 583980745 825212194 141366052 501669578 770043803 155523568 993533395 173164612 528334413 52363782 444627305 831452590 232326888 545076229 614461045 109511232 835598132 593421836 176410845 268463070 3315741 556750823 360764550 645850242 104938911 686048558 985993708 2640596 113794372 924940256 311968526 510755591 945440964 256757503 807644272 348476885 942442604 618268269 300086387 255785770 742952729 429860114 46776826 596802017 631494725 589995988 374642996 928304636 138665867 858636323 635231523 982881318 589686745 564318960 586003420 261793358 744976076 241692017 79082054 870892819 13655993 31327432 323649319 188748712 970640192 915393419 841816155 338537585 907443781 934394324 824508967 31571676 849224197 177247729 867828269 842245495 353942696 962543575 794836469 443940782 753113847 666953728 599296585 893575861 36896201 200057035 197376629 984459829 177934063 606549533 126791482 675773989 176187881 829304975 548491618 710121851 846750070 850389065 116795597 836685903 882346366 609000385 874379492 203447852 631353563 787140333 721960655 593294676 623281746 957682356 485912122 203685930 275213207 902729363 193101150 453944988 339878217 247746570 168542216 796825376 458144038 379077667 206918601 146233907 390986148 94186365 462303182 492448513 457784281 553162848 238790731 886022318 844953111 482884933 697991083 729941590 307686451 816729974 960385561 138678666 624578228 258154960 75855050 970481564 215843493 458975668 377451740 707440334 88779773 938106384 956526150 305346107 789000025 999974503 245146063 117661503 252979182 156762024 678467508 123981322 249116143 948413074 393105827 266001459 729181551 959601313 290935061 877278236 868886289 638542351 412964384 512469698 881175154 289090785 124493098 430161069 829505821 231826102 928313395 54750921 987219136 826809380 613010726 948870406 99374918 203791512 672879075 833840374 919907756 89307623 229784670 233105854 99945748 939440149 72081911 547262746 831940678 803123537 717597890 428760958 889189300 784923642 393752752 949513465 349539481 443962782 592713252 382000008 804763858 783255252 629168799 28914597 511209030 719341856 775503224 375117690 690265321 169854235 328437737 519330506 632355458 77065856 326130961 629350204 23096366 386173432 112323337 366790511 232947893 963555194 308559321 564518989 465963203 366910219 620358355 230649301 337165704 976533077 629479257 827860575 391607136 557686745 34936885 746266948 484141383 696328573 603628343 439756892 684895189 880776910 260918178 359287413 234960487 298315434 634606360 797558426 142218400 89772972 512844296 692591105 414352716 496613249 286234446 479118009 407928892 666439135 451688519 108425583 714058054 397426543 428714323 920198382 780591500 871421263 269337025 515164936 944295081 835654459 455943770 991094641 613356223 144728469 959756193 60740293 772708329 307526146 626255117 32205316 431430850 161307554 233845254 635233837 290804548 247888131 764723103 541374944 901556425 429117661 158708281 911921531 837102928 24863404 330729687 437053984 201158686 123167918 430322499 216574279 583626805 921681707 320787999 704994896 390023478 641497353 778125952 902245528 410135188 5503193 94602848 949166613 895041643 189692916 430410572 818924821 814012179 312981041 263735950 779115252 924918383 372820762 435628352 260295254 321212197 716252690 504694877 223597687 462539746 580590559 659191611 663247732 780589208 356768670 807242373 409963901 639453370 981005192 316207819 716215573 17117690 935288760 382879096 137829125 769592585 225526614 428826259 970522787 666335356 146652130 344995971 82834714 384243389 165310426 190641336 155308103 66130124 73688292 398110961 751972805 867717119 969915993 108152810 939399673 105402260 627960935 823435436 508727029 883299758 796834504 238852530 779687410 47634411 664006555 517284395 38409280 496966969 916998559 184431906 191679745 147638367 76034300 219713032 255618555 103496758 38846036 102193244 164379841 875941803 37295938 181880192 679609007 508394304 41409601 252428147 392940559 375298804 560871431 738500853 820849942 639816272 474733092 533605858 170580504 289909526 718464374 889610887 603509372 42961992 508473828 945620099 100414800 145314171 663403257 69849674 190554312 695503337 209527797 958856016 203511293 825603524 55989736 439765027 151051244 815465861 93705832 6533999 597099709 98506981 839991399 327797393 443463012 625578199 957056661 716948906 46700133 696588524 517428310 232410921 603005858 600447453 671887090 883198208 291068004 646991453 782936798 821754980 694399637 401035547 477730068 311999261 172123162 639122633 754765558 50886091 828212827 787114143 548246494 983809086 13907192 255093336 664344831 990755422 315267259 612289875 505471158 771465008 166696232 998042417 243463874 700140408 717514775 105791838 54658090 262476796 313423029 333473457 92970892 623511365 937038254 372277168 992549127 681770344 312085952 8977188 157233018 251269471 351124508 698707244 983116346 747274773 839940752 785717291 362783071 64039197 740656950 746675640 191664942 654668888 155622725 152734030 827382989 586226076 322181142 542730447 578815945 809669000 392826883 290167782 73489423 624063853 951251711 463658876 877279702 620244269 513384217 983158520 496657553 725627803 787142965 301888672 292043078 167378718 168504770 516431000 740580442 242606280 334933557 185063177 45697241 9932775 693170571 529191654 383936446 332247444 29039378 958344684 781223989 784596941 984043137 306402147 840254867 596228255 797966151 581386526 189438399 818574287 427903045 471578849 512969669 31346213 413787507 65609737 413547767 931769996 553975515 352049816 76014953 10994646 14442691 428801129 162137557 624999 123826622 876245079 43241023 844466056 543982243 168659242 713164752 390883522 852803479 142865930 686356070 386942401 613819323 739788319 455227111 549863409 821476154 245411721 916639575 900212723 681172348 227998348 1020136 438744961 655108773 731953839 770952052 650867683 978380568 299781934 203189471 866009333 336264104 993940399 776101128 165733867 106774323 96361200 792818421 252212543 339605407 93559377 984580439 840186216 875571714 377226302 677321524 859478324 228237536 400621834 346571488 719886217 89564536 986469149 969761826 467763493 881164066 623237105 434059786 264142028 291040964 544311660 841794290 213854976 577696013 136971910 674180973 675298269 46417243 189055801 417123728 872558606 577714590 837833633 956266313 722765730 115572505 805356658 224054880 204698832 446758902 666817188 884596953 769039193 758525840 808254732 364105336 676342737 218750395 589199206 786137804 715495535 222117718 762205784 498742399 174605610 339027281 169082626 228497647 879730375 51715833 943533602 980426668 943138893 807388586 88547512 767724786 344548156 245589636 560154658 605855751 720110633 18437659 855520357 522883948 309187592 621557611 580621983 432532879 676365986 873985832 258394814 628833287 641344622 933548619 828862154 767445484 990744626 389638001 822979482 94296823 673710647 715420958 208436402 819326464 238562972 957418496 819876669 589187676 347051352 413321523 145588248 15224818 483398422 177592282 814751651 6304886 415455335 572933687 595891626 760859297 192540907 10183273 308850327 70919361 192088151 644325629 72602325 548497563 731125308 432892234 162221017 456961025 906313927 401661638 192518763 123060784 365392083 972883410 727775576 613405250 899984975 753965885 876878909 944497635 882582752 804957284 293026604 784894898 830310978 515899313 445331720 626849621 389169781 797639937 852884918 782333330 824568861 745592670 21906658 644093827 228476679 339943939 678321627 899271981 417693193 340718429 749343848 725538388 274833658 805509162 563671575 423431742 908798774 888824604 628196551 198499980 251625225 612194447 434734825 647230870 502464254 599467180 368906858 952759485 350396365 74283194 124401135 214736748 924909604 935180601 139199429 665614667 979091909 911452133 612841685 275142453 992639632 122682963 592889633 107838921 704026225 689852427 662053131 317016658 340768677 699623296 892752786 77660727 229060731 680649079 115087323 25771227 336419111 337924102 964211442 557155674 447005092 656041953 147187429 370529013 354609795 373253261 474652218 360329238 710439363 949564360 327962629 318731544 529920537 745538289 595870381 332348406 115790311 110509973 473574818 354009052 365409638 272095647 992127891 103439491 699793224 611191237 961878441 629867366 860055116 278847491 623607420 928884376 581230745 973200718 811456113 959090861 679784963 810593770 573859691 692906317 773466753 130524451 950237453 939688220 2729280 513011548 375257478 449463939 696188087 97468831 376218646 952619793 10119267 151652996 902577838 57644137 975204889 23595823 238112123 928257738 79323913 445831492 696684971 380362283 910164846 282501599 823818243 992749470 757562096 574897839 483443702 754897182 775269451 50601624 796781205 215554223 334628494 758637745 340450302 284404016 190834598 468524095 316461345 233506551 685618084 628442223 988626564 136666635 411293763 502856651 884229141 696864636 707967055 538636946 622309446 239845800 298213789 343253444 702011598 728134009 709587896 646753212 415523227 175601638 303328490 896865713 323719909 916423975 946578481 875438576 425816968 384815707 537043730 681502737 157017012 991328720 377826445 593015243 835473612 21348547 802599985 168469706 587809465 645814998 462153429 527912877 537694050 72857681 72276879 588824636 521720983 354573381 349275413 939961190 418868704 455694396 164179985 518015466 140473385 319872102 876445968 830336175 300922615 707038529 931733511 187949056 812854548 160564842 884029086 644219754 772435688 887847170 35114258 870622408 338671842 737466134 111028525 167127211 540478840 506606194 388533955 390762819 32243936 337203771 362935849 965368184 377943531 333755496 595274647 70492992 333695740 999371470 426941109 278778452 852809228 485910979 805881300 204959725 204299094 157031013 836572761 996065275 211140361 532146673 200448905 557018551 286033719 914821452 824804324 377777204 883225684 798997300 862339209 652634191 931377785 843874386 814642085 331668707 700822681 364754936 470592329 708978114 322118222 996828198 29409558 323604068 734667983 644339005 558311622 749858955 99151091 102454798 186024578 889567389 323385222 823312447 809620484 8751804 987486395 626236167 546275475 49478038 684466161 430139305 885202854 472077498 414107881 296774427 751489316 672149597 204723736 870453450 437169909 815607216 183089689 966746687 187350116 72839717 930381901 547848656 312083979 657469138 121183099 796575931 322692469 664684627 495165187 772998072 535406643 390990679 998771299 549770805 328674090 534776307 82579879 27580170 801389486 559451930 415808950 665097070 170725819 638192425 630025104 188043277 503007526 644246756 879037761 858491893 888949331 748741863 413736256 80853391 768975089 52407593 78636471 563832348 740280727 816810671 28877209 249076303 44663071 568276852 975673787 811416556 633553751 796547304 757388497 888243467 2390592 616351851 307028606 91122164 309448537 632059919 422850045 94718542 884780815 90974458 571867211 249108090 375872373 197998244 44506219 252764121 134143025 60154236 26823265 406621592 809159857 728131106 553322176 496682547 506251397 563226844 267327622 536850336 386949423 35777599 733376602 98974577 405030839 80031559 755307774 931208184 119104640 547289388 481049184 253477210 322056589 696402086 324896071 507624674 245019152 125171345 97440101 322991475 726914750 352058129 842292623 531024188 300040848 140640053 757876336 596230710 629378078 403739224 592426139 895051757 276835996 133645163 744994549 176633896 149144621 497251972 241129748 464253641 16215461 92017274 51009728 724725576 421983619 536641743 966776022 277348642 969823966 30365516 413422762 243873653 434815735 669479565 834592759 145734385 822432753 901763711 736374079 690436236 932329964 966899671 919855306 142819651 213307564 900901782 393743710 521511681 640786360 750107900 108595531 9607936 188547831 271636731 661376977 87886276 117392461 886724036 620613584 764299990 551549952 255272526 631927730 382448741 764641297 872949802 52752655 997090646 958594613 944211003 919205516 503724054 189122971 606638855 379425337 969029531 53140214 373109301 301027281 728132855 611865594 496381373 342513880 178181280 242736422 624079729 827703327 157031606 676850312 645925175 731246382 213539548 866997660 942869820 988044280 201688538 526749137 659363238 964179673 390660272 877462785 668809598 86516955 577089922 167591882 300072191 182141477 327405392 51585486 89979112 451274216 483873330 556444708 729642276 462205645 82793212 807285874 805522297 618698787 194281990 915425398 974657226 751793994 298923308 904989829 306513257 532282188 705365463 99970890 408216345 373881471 442890083 966548674 562582026 935596209 235854467 6146359 281359348 994288857 81902889 467625649 972573024 437957632 360382019 277144675 499512557 639146630 157638360 905472001 676123436 503947210 669473025 250988660 470040020 416136803 351983470 965161923 30047890 188508845 529395466 233073950 604128783 680301325 171002328 282308921 915813352 466269390 918896107 950302951 560058593 846257905 670314910 87942143 963065098 133678588 9642388 589925187 875612651 132245046 469317822 611137198 607085635 208555894 513100765 519022475 6198840 930635952 18520470 72643766 78152924 978738508 488603947 339789644 672274029 97419526 559411706 128865748 251463516 765322446 119158757 266834576 394156102 565995073 357152429 330601996 280315792 453713838 309497210 39087436 314720892 548232265 179318854 998032816 258950250 878176071 58464312 135777750 471788768 305402090 564461400 476290585 379928406 578164551 553611025 85742908 760105237 94523532 642291623 939286866 622027935 840187400 347347324 73914419 620325225 675496943 63936624 205560441 767127561 147743165 831723382 281789011 989549156 660845646 556629906 572050820 937814771 926417945 921141885 821801272 770123951 574747568 175142800 817154526 45996758 461529090 834366318 731433905 697719739 505839068 5109247 280063757 468802294 78635762 324537896 533571086 334678546 562409505 585355532 44599772 592049605 259042546 504234386 640302246 485845115 527194579 768248707 422120499 836166391 350484595 608780292 3050509 66669671 813048288 226578961 753055773 740172452 287688560 952838894 64050316 705110850 860632834 265824410 887158262 193746342 399047229 885304141 153036480 627715116 274601078 259565574 52060245 224891150 794336929 816583757 206114193 88339728 893634093 712571339 347137344 858173121 446257674 721422773 254580208 827129528 997823921 130678322 10964954 724444322 395232688 889078295 578233868 114854942 615192004 74968376 355622656 660762889 888114438 720747726 777234716 142901162 989862441 706048334 204536468 547702665 733420081 822840262 967427643 818465443 642237485 213119383 130638134 718571476 375327444 85565528 389875648 234699096 654727061 398524330 538630040 459055772 471278642 70712850 539083118 657493586 832233204 945274197 179019372 599742095 762435401 647266443 601438460 836559552 657509589 876606646 149223725 266736652 400501681 936168549 135801002 898144512 311260915 223907165 933088417 346302366 690630313 227839378 274965778 20441804 346369907 685809164 121696303 555739562 153269661 199566192 721612797 982264160 257305132 840204456 132882485 804623502 580285131 661516072 898943090 915756804 466069940 435928521 752721698 532922830 381403509 129599381 740320586 658919469 480205133 187290239 20350085 352555690 625252739 161574647 323647665 819668221 624306280 414130652 423385051 882792664 185131538 630439082 180452283 667179254 254267227 488416367 784013843 500469440 633462352 789762471 52360655 93568530 546537861 930003581 315554915 502369478 237109224 836412417 246035602 324007948 619444014 606774269 487926323 916111438 188238882 193437401 24739343 633802832 753392635 228675558 914701663 670139903 776464223 599845037 52930344 116053112 812656903 248437219 696560421 887631817 798067608 915777121 330595671 944766531 940638476 267806712 107893724 931432423 17878847 108294409 90445869 683663565 328031095 338278922 685719544 242594831 901297511 184315598 956641099 928973962 409581308 510945936 446311652 983642690 419249730 297176687 960184071 198471021 848509604 4596804 73470342 699147612 880023612 743129049 718631728 282539595 317691633 8852205 881119682 894215408 437973487 796487071 691803880 639728134 211614047 304643192 432218119 783352752 262335610 559242857 603087234 924301438 20265460 981795045 6958562 82839810 502079726 308004065 180040527 381808206 328365280 219227218 449590107 838297691 455704644 158920821 220799780 337241330 452054416 521980370 296163979 544018392 391689565 981140553 650879515 557028154 102942443 957035358 221244037 405355470 894245810 107298108 466274389 621923789 702771212 827569471 771986433 456451479 289381679 383757475 279065080 379962903 33004954 675739215 203607486 170943274 124525072 503068762 806412787 124863862 63116277 805635844 949932682 737427080 816979435 534522345 520984672 793934087 811531178 777437987 134463329 959680247 246947498 312565893 997903475 147046262 228933953 667078429 381648177 329989129 741984421 90154401 729151860 434720825 137337639 457440419 603185489 296287820 793589869 243754981 19038 823159029 336087071 402478307 954264828 520129853 229447038 332412207 65252855 916163799 756660839 724695539 235332185 347496834 307040419 244959849 348031926 262755536 168701933 326237435 533584579 855595186 874442827 322091546 523271002 192596589 255151087 927106433 907923570 613821407 219434741 238789667 972530147 697342327 685393950 565996264 859518333 195041238 600285381 982112711 4375717 463353463 117710101 49659861 669818743 816217528 751135827 549443376 646914912 987169429 843421271 696089018 584871277 926865431 577933846 182478428 150002713 70104657 393876990 442611046 710364228 572248286 682824830 583784151 707863495 792303725 264061469 301212581 595131017 266329066 34325626 378940054 4933136 488032369 804951233 588987190 27262930 553389589 276765162 126233456 987996237 175842021 821985614 112180094 209221649 798469568 297438618 448710484 528333564 940685323 847452722 492125843 218152848 865788585 273262234 266924499 481035981 842632882 169192268 237450175 240497095 290641784 976094110 663546186 742498174 958774603 708735272 114853997 996127801 44574586 932266922 669361363 597634093 220146625 770627639 511540622 326158517 428277775 790939758 528459160 133540166 793022278 850102217 835090738 904137672 669379103 476525290 549147106 747396820 863229587 781985567 561263119 589791897 527837234 184618339 462356945 526581921 923712141 716304277 238011788 776167655 875331181 816651452 960705379 352415326 580393832 99183735 618072978 841614394 552775985 649430549 519877015 78354631 374011321 475729112 938047983 994380620 88153155 674354527 426325396 229006870 292663186 2205941 105681950 730326889 516132452 38594172 610247156 916429332 253314637 470389532 541731087 314635767 875286111 175828863 744768004 885529151 460263921 583901251 949291096 57044660 178578786 562151699 390123390 607799184 327954958 605887065 750771513 921653957 361554951 299469828 52336048 355371417 495720930 435209974 934292733 674443314 920794803 148459180 14591296 239818177 480863712 865541624 389943966 213287516 959192697 269922903 895003843 43803659 22588668 752971247 331106125 372335754 773985162 497565847 982537919 696536550 911518255 64911265 782948890 114669616 697090008 780768441 678380089 155409371 26837822 37821780 39298722 154526003 866254877 530232969 603928409 359796252 285610902 481809921 37276720 557432974 181732451 807272395 814760127 253957736 677915022 613970128 595145617 782390829 684932476 51241541 353943770 486261219 862780849 302511812 597180633 863133227 682023143 503791205 486612492 225629537 864274649 104259895 680106676 107932315 16395393 844811385 218631467 573098759 181403553 34283198 545389988 354432432 935246828 262375981 613018326 960099636 780080209 532019100 137127650 608272485 979051844 177952667 28196311 881948692 209522240 158949321 502054617 448837952 499193223 671720039 20341714 247932456 27408078 337636788 651756115 928514875 753099281 517442398 171109802 536313619 273795592 550456688 717497669 943153306 655459471 553733399 402005104 602388865 919691289 208015955 320211460 183609555 629637982 973882790 576959860 867643032 776197016 588772301 786067648 875825402 417034122 503441693 867391503 624013425 65134168 552364286 968754542 247054686 730448033 792688614 402927557 92609756 664965418 600473714 468312578 464536538 619498343 721429530 804610526 967166371 303942418 864330081 458274989 146837817 682252234 614616113 813024912 105137923 297178283 853935519 495935860 985528054 981235436 752711499 352389228 67370205 572114126 501479938 81868538 484281641 207295788 701500797 453895362 735591406 758750519 23611365 447970992 849317768 903888767 753324844 208893842 581814557 391414931 830487762 280090859 940359764 20053089 496395611 150086359 291270368 873261996 453705376 603835233 168158579 401927357 334914288 139094426 695623970 319649965 2393948 781633418 935127587 730773106 160464051 693168755 684274472 468740332 267621709 139061973 832477880 985053586 43272217 279953031 169416119 91194849 877347465 175161427 512911448 845106181 482226244 400716625 200688046 56025142 641598426 153334452 905607654 430946759 129099541 878430655 427878849 26203035 166412599 669186775 859035284 455033707 890230756 475510679 387492521 406744192 131326432 719573908 704397325 896967168 107972853 278306853 978185036 756315178 59614100 122243476 994321607 580965851 959521303 621673856 965229603 575218556 950775462 91172228 394274574 488930064 760104096 583089178 976872381 3160154 766799049 464902078 303753916 844297843 5894362 651741166 854976970 881006360 15731837 306234028 674970363 345633240 406990839 713826570 858852850 130810693 296524228 414542551 833146648 470945498 59707829 942665489 384854069 352544796 697542015 679568596 47764450 222651206 657867935 473603070 550525308 715690332 540708651 848000478 715186202 235380791 48365514 897245100 916487566 154475634 546916274 31057545 467840109 790156940 40732272 680242016 954491804 204375400 599799028 532449977 324390114 542414059 578471487 951033379 462821704 705130079 170621615 708105078 656501048 859824757 935612362 880317621 568680095 867247121 158787165 982907272 515187059 885119763 617744721 433816897 137225716 826801298 28917648 143569318 57873299 123440899 794988311 48226125 671662271 936094075 276163459 703935250 568381042 806453689 765433142 586919925 867128055 333130070 94273984 618933566 956467812 666159986 985238972 886625703 843574923 935550812 40076607 93182061 737779907 313134666 486305815 949720100 99800266 834406800 404951094 919303607 403863329 397965800 510163140 801005540 138465447 871404297 777384172 645948727 844595569 494488877 228001887 38611789 245080209 749634231 484495900 240648634 747220545 389346733 65967286 233185935 911087476 721025702 785869044 675162802 987747876 454231517 910073468 976017659 93815062 984184334 39819031 608538071 755097669 987157116 759961375 358619828 271609777 523840552 968466475 929948676 668349726 558164931 602389173 898853942 179369750 6876440 122501280 854684432 94004860 219098419 453312103 454624679 663871623 444498268 425284434 503298098 622175551 516300019 339295257 624519788 92682327 969786789 355458556 600279134 759499935 923701033 822696418 57638212 934721495 684892577 784784284 984654521 625873754 490455344 378631533 457310050 495690295 418007602 774426316 645272734 118212986 415360327 447367415 113322990 424646597 443797932 977060177 810719793 793308999 474760173 435087197 469291181 383545219 741533604 968141765 246415636 420447487 364946730 843820131 72520425 274503138 17843358 926603257 707315647 580489195 270941339 786863111 936290629 673266170 761335678 732788604 900318782 414733432 910292750 181020880 261488607 35301567 695885593 810327617 850473100 967064481 943857622 792141287 978887106 298764293 659925213 277517920 836874637 186208485 217193919 446538191 223907730 492222733 109000479 969760840 735976096 389214863 677523989 969744866 429464365 942799005 662247643 178441078 786817072 307779858 177296406 727751928 833291448 917639968 501005546 206862834 595325604 124763551 673747012 228818972 284690176 933430452 617120564 50079925 879694399 779465982 102097573 397399844 701417101 7632113 722597677 849028592 484101840 702884522 675206983 557039564 884725794 988741043 101560241 714354024 349051683 372505860 342656448 696730860 702152079 274844588 393033858 440139501 61247578 675057848 625603822 534526041 59259319 664430344 32612889 506756696 677050487 596765424 327293922 844120999 317954489 83182403 714803183 450006872 33374115 137738572 14896032 350571362 92739243 388962674 993046522 938211844 932266091 157133795 802889889 793972058 70706495 88063299 698815296 410671337 917635586 776221826 898949741 880978720 484070175 356236460 473752699 328836762 380996689 448659323 295120382 321877265 175461527 214945270 535476435 355152241 523121788 571242408 619278426 13034776 916868708 192179977 407517806 892097004 955467633 408288146 864975872 931877815 929024273 934116362 493157224 101073228 327140368 196887405 912849044 343137707 91869045 113927467 425249836 76487535 124447095 213319248 35466869 386125778 56590050 249166484 803098835 82705017 546250833 969519542 513645056 788001611 812826589 514400963 731743963 467163875 337666609 703971776 969868387 438925235 849752495 708105900 852685456 390513997 139483617 687609977 933237925 456845011 479813557 356344110 586351683 880661404 892716065 513498873 343782044 819181591 310246069 397412696 160731839 123569771 275332706 714213563 217251828 529810310 760843601 734554685 417302142 671091169 312402817 846066263 156879498 333031676 103163840 393805515 492616983 218823210 239710967 804308519 432421706 588655593 941263578 803174837 90848762 800611905 960835732 848639997 449381132 698350236 331595859 49910421 706711684 945318610 448320946 614308859 273355351 632180513 699993504 761501506 869502408 502145035 985968341 771217723 184727265 866291775 255551519 418597326 815844204 116829048 486855491 592013507 581728788 280477916 224735680 959414640 844485171 880173068 859314177 636140549 224400397 434556637 663490798 346602304 719148671 515035460 216517432 800987874 898742717 536281905 561281162 123561464 624865055 545856590 340857893 310605466 377843074 741678579 920552715 682820108 53557207 401583235 636901452 775210493 752630022 305475386 61951863 223732592 899577954 698893692 585308877 936177000 430835697 554513486 686520182 392862333 772694828 834049147 492564732 410343951 228487615 959937022 427713772 112016368 435227024 952090970 546080100 278037053 5513743 258398910 995828320 963714230 916457117 759968959 695089726 82901378 517068493 145718211 472398348 224884123 826988758 227878699 196595905 714927384 196495465 862091477 390791746 352777772 14109861 747352653 548904060 678550051 702900368 382410761 793667520 796521846 677350550 204343121 287825090 619903504 849698780 413555379 29102619 412391184 292175029 156529067 847368320 218576865 446188324 693970401 530752765 355905136 356719225 456945451 577003443 895490815 381070589 973945882 387874648 66247749 450083584 879887378 319747280 118454747 290531626 189910498 610474229 611152591 783198847 545944058 704830415 236151811 310499628 144187885 971740707 962458310 486467882 457597006 126496590 460329848 141371574 424831955 904573263 19325165 813417152 425447162 539390020 379260067 878375988 779166182 291009158 556058045 880404034 584088365 797298083 108490416 155359490 815870624 906681133 191096496 913886647 520928310 510175454 385753464 859821589 535592619 638977229 936168935 888802149 304061145 413436337 470282334 944250755 804432480 876426676 889646543 148170927 358458524 871844342 177557458 27070800 411783257 180399097 125983690 245095065 558775559 688465727 500043758 403483318 287380877 584896690 310570871 419468226 599659594 302434599 11005681 524281984 432197395 885172113 347448070 637812477 120670189 429520929 327116733 943668507 792822 763925469 399197648 696586351 489266546 204219564 766749798 806103352 121593656 814427368 434204655 136067639 850012806 343368321 796425981 890396898 72379641 816184833 514180135 36905861 404029327 420185124 693677181 108535940 124446180 620784678 385118029 50457249 399266792 32159039 91801897 173953531 822706308 880778615 694463016 818924883 11911744 201136498 37389825 118280784 780120035 188257622 12545173 991442763 394044764 361637535 190001778 389395726 27402886 595683984 332400869 621755787 392162298 967708493 342778610 772318818 902410353 484941356 529192489 349631980 933086484 951666940 514296849 748075744 567560602 284733799 534600057 212302994 457510559 141355888 218012312 261106454 435989964 34876794 13284072 180083694 686501780 824574526 84273823 664661773 114539804 482652070 151522270 427030325 854349305 800211780 151806445 193383043 870147650 678155922 950360437 135262537 914977574 249689129 367175347 825994885 273677638 710422114 339061612 936437038 268402098 656147020 37129293 470328185 330456801 71400653 163856707 885396441 160808951 707904183 984762576 285390494 841364681 756928257 181746229 980352108 141902020 429487107 670754258 893042062 127389559 96118509 273090880 794089417 193173069 984248407 460415517 899245893 660068320 802044101 674004093 678461657 791922878 903697517 25314378 630747716 975674126 468397178 867264896 470784047 668270395 327131152 693758001 183145511 567362866 475233083 730323837 158761656 852736049 277799018 755305240 276849774 117420153 994457486 325332084 546862104 967439392 378824684 423171918 934443122 31801184 204973513 546298956 742499725 425502954 501957360 356503465 238343245 918568750 36618613 874357013 332265070 683807678 612170670 282935002 100918318 96196879 371197753 342465320 197262749 511636050 203466078 462336996 949323750 201069206 991806275 147188387 589159125 229099923 995957535 948032731 364714901 899471903 110324421 873147371 162666696 499718463 322252805 32422819 220062273 502879593 349111434 653595565 60720074 861830293 634512467 565909127 878563773 955162806 632172976 737143384 788988321 953764541 56765459 642034240 743955399 254979945 776057018 59783593 347090117 401914499 200471816 744965841 826275381 695600158 225332184 889517415 30293724 606194698 542414791 532877372 106204105 772343794 624615921 535599771 347260199 76246557 87075975 599912714 148708397 87669538 443291568 267680723 667154776 548591453 31282153 282295664 244346503 653050980 589928952 721242296 488746539 296523843 381172291 400591244 951529727 621449679 227841697 583161995 724669821 391941998 886337210 533246535 290982613 984910568 614372663 649802857 546246046 912251026 517521795 566120051 927174361 340272321 342020789 549966551 236607865 760829610 298293552 881557112 844554375 256022160 654023744 789047518 20669290 614430399 553252524 104137835 605861831 599224146 285761860 165131724 554827330 659256397 190705722 102804815 331400035 335783821 975961568 544794817 296102862 304236778 400688919 151136897 730846007 597198875 60489191 283737746 59246669 164400358 991490822 351415595 219891300 408535283 927865248 908420719 390426109 575973330 321376903 63170061 706869002 520103155 104390387 509232816 564312461 482630392 186345569 171952888 116956328 219945662 233723470 108164601 960163467 160642000 425888772 272506132 83483253 911375143 747717220 286998457 197687165 48949350 393430347 305499996 566341216 167213562 53113715 409331335 700861353 880332866 712040686 250248482 157739424 106179967 939470692 430588885 532518939 138419617 817039480 189686325 69437490 951374530 248960929 527686161 734572595 169574942 864731784 671513720 866302855 125119706 582542872 951851471 846250062 628433871 888815851 211242614 139194112 463210243 398458786 798040083 818444045 278709001 189183527 369512866 459920234 576222521 140999436 551308758 750104686 281141102 542908144 343986935 951008310 73993467 975500265 439938260 680010930 198217130 967976262 927358639 676524850 985954019 78640749 9310219 239711123 679808951 141431833 413792675 451429244 597411639 636350640 742263706 994408790 118075078 980805539 448872772 634347641 863871079 413131416 544890501 654406762 981111230 506862335 359977146 716252483 648078258 876113613 704991216 197092880 717928574 643534871 485805104 93980529 470321136 683180232 450690720 610422176 15559043 543640929 356090463 324125598 223001689 859507192 285266367 551077914 714396290 894815313 468954844 201670484 679581556 164821814 554405172 211349376 90468930 717832290 277308041 943438136 305667898 568947990 440028284 213087507 656241329 712679100 929537115 897380170 502817008 854683344 514656501 18613623 449889896 130112475 730299029 662299488 63505197 907186720 4521107 439805560 464574051 550763307 928061268 91896713 167137924 572783391 342650802 730527962 151697707 904701589 86489216 493724311 410796570 586529814 386429436 731825126 231124836 700306782 441303554 906791944 700643324 201529053 293277200 620133331 201977155 894512574 729959550 852507900 785253141 651317044 804610759 864431572 411795793 18570227 872233314 2637160 737100156 281310760 390791706 947730723 959522514 344506734 445487064 670733432 77740670 984160766 605532385 341909708 333872934 116269141 18962121 993927351 404817842 772201917 575055929 867697101 895573557 101487483 569983866 804127523 985402582 379096350 868042850 793424974 392726273 102060708 571371355 969746177 359417711 371213080 5382395 811854766 415862866 54948113 583227578 324994239 898893711 313648453 846072631 322996593 657339501 734400805 444046883 329575760 798555941 129539528 429088139 968011107 883618158 260359288 360453200 221791403 172248078 47682500 170755791 260096713 440927164 42337230 939978756 6725274 976563345 142697272 598511746 807782130 12437712 937713771 960620621 470180090 312338423 80561295 500649162 228100654 141791557 492695009 500577660 265714927 602856693 334849611 526233907 107164204 616047040 523061018 323673490 564869309 360861851 597681683 336200356 607884465 602738417 168590656 384070111 396439667 535475747 67229031 238086546 361845824 11993442 209988558 917771259 732846854 389783932 100111801 867736101 783341406 360455087 635891666 716168536 508222109 86701919 598582326 161432849 678840417 275667856 964238487 645106039 570457263 721583064 59009563 36172710 127928735 443601697 305734870 830437658 242924982 211757909 175132251 273798428 211665058 278402427 241054763 227397156 147772102 970125956 944484716 168983929 923854718 14484628 878994771 52757103 697693896 579824303 897197630 515240774 429780769 17650667 722531335 941331832 746030524 8541788 342943774 508295481 474607093 902626491 72538402 265338419 578049491 148070415 656700301 943438052 411464270 887412157 523440448 689824659 828445857 658138131 977651563 934737042 321226025 898349084 591318842 47048680 667107196 905316748 645781119 848477992 654955050 23296487 962153408 106314277 10321081 806635665 220474651 716959734 596223456 646991727 735388469 419487829 528788596 427892200 581766990 462621432 52731714 976785852 989187537 942895607 391244921 422423740 703544129 595826069 669613534 387107556 240294767 138369520 508263106 61518576 957882902 304169414 320459805 143957151 826637636 147827735 557808346 231345626 616403930 202162842 575578332 518385792 450988182 122720384 700954550 590084277 574062903 768337153 702497629 585776945 508085158 266454011 602720412 468822482 685558258 374316918 54490138 549807892 605037278 673454940 946141837 970743287 772306578 970410156 369266279 316758136 90225066 753053483 813447421 484189977 204153341 423560696 688988849 470542182 3289717 984854228 458927870 213194809 870502307 502348376 719109279 169303905 651930976 218472817 209110633 94116543 15639941 564939501 102674113 788840749 574206979 351447665 982498010 767019676 544958520 374766868 277400434 103408151 62590553 745545375 609516350 985946209 812472873 547659725 664572825 827260762 533936061 952385540 335384636 823814469 388989104 765151237 859596520 975089257 29115429 58348038 198316783 478391966 840423541 429337169 191310004 568029034 295790948 650625629 106186703 441448362 848369953 589443110 380320270 823362540 337998687 862354233 79797258 104348981 645060788 481735992 857289052 299668703 669950759 709467277 363445089 997695146 447156343 441680742 284466902 119285010 610763133 207343228 893626826 390677505 377952373 120971998 65407939 181018199 401973557 441046214 449528308 210606737 715167208 40493836 896205310 358404227 627868434 179503378 221445176 791554668 272130720 235350848 414183307 71146239 469531217 549152851 271657681 153386946 707641269 931603329 13977491 16708867 155310648 724968528 128550547 927538126 984553562 912341793 626444163 799241757 344028082 904318971 235428800 970588823 355481823 205869692 282830288 848525029 427907667 614226303 988532620 375162256 796306925 914843429 325951948 127172122 63996777 740221403 964628212 153964399 960033112 349551575 815170826 717105047 560423224 884499771 611720738 744657707 657669312 790107160 466311127 135309127 522178092 993178544 206121358 771737562 546559193 595135292 462928107 961872879 598869091 189935235 772917724 861813145 844766305 983541712 558761267 416283726 268657455 787795452 854185695 112640783 640324036 573476667 327950160 758643084 279431242 817703470 286350288 638364974 48838878 115240621 873768549 235608492 945672208 392401981 738807219 559166434 707453325 743622688 319146835 706722407 575180850 2483683 732893263 942769673 358300812 584331621 278151953 483018686 39169802 521883869 284384505 224499087 534145040 983142653 907589718 661120803 559081492 545452196 777651249 953106212 492686242 737287446 77259303 735580652 282162837 485230344 886835799 452456211 471272862 804085145 238977381 702175774 13438326 521267128 426150139 251086529 773828352 136117305 406109170 678896354 736455999 664489141 794133612 404505743 635459043 496298207 860726214 317580040 676457042 294189381 949687530 365407459 640389742 301158722 325214801 997177172 713543955 16093382 455638311 379649149 499091940 701772286 517903356 377154308 920378547 184274941 821811816 391524126 295416360 219689050 164602190 131334640 679159476 594723791 2305713 336446456 47527394 432096910 917109551 764372814 375172785 680561900 38411923 746553468 595018180 326507896 575471483 41290430 813112719 529658908 362301709 609854087 444628840 488103017 981317680 636885339 55213706 146211739 552771300 696362116 317658433 780784123 50903491 371720997 121229831 106649894 159024845 268263126 669811379 308462525 590247833 287547064 101356917 108937927 187442802 315464097 234797405 504316778 497142492 442609726 436564209 212516978 625260118 80996332 294971131 972818584 471964551 942351455 126994776 501595518 984602304 469774781 583946856 678540292 52097897 873008189 92289324 322299163 177514782 2974109 876608081 510546531 607959376 101946013 965604965 777200090 282391801 36869236 316969117 1207761 273287706 704030791 156523477 810550007 980037323 480209442 1664636 762920366 380101253 638482990 703435154 534501839 610990356 616378660 668857696 763336086 936650086 514119786 553087247 628223699 869171498 737602120 423629583 808015639 479361227 223338325 614562533 884496313 948187348 493636339 137352371 8727678 839588446 690461485 393626951 374232997 21400695 924943299 920194249 912033257 779515151 884723394 500345266 455540805 623259818 303802259 570354654 83519820 552168814 545989122 712844850 405041485 611086522 295370604 702604565 107018236 70760212 152519129 846668434 947479777 671582767 206290595 448207572 360691301 282183144 804456039 819928589 950323991 968260625 291061068 238305673 318284545 971038711 960717328 527143492 378355360 630094613 31066063 977071218 685384048 519561873 779022117 569377527 658850123 853488754 9917643 58642896 16164392 821648151 625684993 451808735 751655581 383729286 221748279 581218348 74038657 573053534 98359348 5019881 743734133 901015304 559259488 671022667 569302847 87866814 748835633 515988780 778798000 251180639 126969017 909483467 851594500 554965734 35375917 214950164 828837136 871102188 496906797 24895366 916857647 851737586 194135231 470834137 514712981 439292846 237222194 391988725 128993258 947177108 774468222 17852745 364612186 175603637 821278748 811327764 676538520 65236302 402355090 122113008 139233035 373855214 900894626 96684828 499366245 305865133 516146097 70398725 122665401 722145895 811657886 133824031 716788369 317696709 117112879 481981746 697451044 773197025 691305807 94656884 774913440 26250952 429706686 175948275 438605572 202201930 877798560 688865348 304301705 8776799 415267895 893550039 753034343 888064276 210778566 980039865 607970117 446364910 431263467 848188771 680562100 533883249 191300838 989736120 288839599 165289151 705889159 520793314 664556259 390765766 316878545 168606824 833191884 599547163 203297520 875899823 428124123 580229258 674308372 769968221 863036091 982516282 823959872 87386780 645812293 726909452 830302849 89036141 849871730 851008156 692951001 429767895 872165054 693935150 259347221 997358277 547292432 828601456 465780142 508317690 305763373 509897221 653860316 174723074 472376070 437670200 188705555 475668576 392593792 245475847 387864968 303557357 975424812 538832401 392841017 267733185 580194767 904480716 594668442 880581285 258685554 47763631 354786102 259404715 442887657 277621138 715519449 735622055 17742089 999693861 420703999 884899835 459977351 430505722 910697466 642434481 498373463 498673553 789174324 76279274 866928631 51257702 375654691 684231044 546932298 476305237 932908955 714667062 189472291 717080403 48789504 486179312 769774580 231783111 998906986 127978003 2405301 444718217 351935358 712116295 451364323 104210426 945596766 772114611 406279168 279725680 764210489 245052977 729965895 67699 427512047 815621284 632493865 74768972 258522212 491060190 908668543 407743419 228673723 506772314 628315793 542446878 909071862 488831101 778804973 885283097 636013209 82305739 637021084 858095529 513955490 804543267 167318976 688833904 477290876 52009009 40268913 810441072 378249523 608200850 543502253 50136999 553413795 185187737 153212773 662222586 725931649 206991666 657392970 801306472 772335480 352267384 18686713 45376093 681733717 780145806 823624449 91834894 622979806 261917703 764482821 477739711 53744790 303114709 168296356 136166637 988641120 933034827 135288907 491043262 30940990 666772682 231895662 326289307 72165312 346979667 388384070 886770244 523762404 584635163 852922753 513738377 24924628 27187437 120688316 802270935 208059140 872775376 548953978 283727352 887384089 487548979 533667085 148993502 885015980 203891881 560758729 325342834 332600908 343991836 550055412 270431200 101947300 833872048 149458689 147594228 244397701 9127470 435835084 748755624 721290693 379438303 528822802 844050857 360461274 602157127 740885263 952082265 248771925 660323632 239607702 214017428 201015242 575748395 607689329 971677262 827833579 525433839 890845886 703768206 359601789 825203162 492303870 217903372 651311861 460841608 989853980 330091130 723363892 514621051 376512287 985296874 491286767 98566266 91021580 990753063 420436372 830000958 188878296 795681754 655223196 602933997 574587910 360767791 275909914 287142404 943693424 303304240 793679159 305034817 481990855 306729967 752572561 124780687 91385512 707387716 677952910 395362993 127116597 984691951 58491280 197389768 872839409 870427741 326716889 445283841 459064289 895948212 714662752 693092376 556458117 211859439 617750226 311084359 148792675 50015024 119569207 721490825 392384391 676206321 89867774 707790000 544688707 62053729 51535073 996623697 987346107 897843219 313524031 714345695 739015916 564284046 940600066 103547647 380222345 428287821 992190331 830054234 122834848 926856718 389963458 600769618 764263114 603797080 874652197 732493121 364544335 973987490 830930817 663532584 843542394 803905794 388569277 579310053 130611989 502343407 256002035 34587835 162202986 589066917 214700624 90391919 405158144 699739178 501938489 63426654 922026590 687164142 693685055 268632150 44992453 702633804 902725242 521582137 840922515 911944421 283356781 252956278 638492963 681948064 575036148 813341291 487501554 842867923 801042735 122864836 659100944 668390892 495360303 13143252 453256955 82649081 166618340 972153842 565760627 723188191 470847512 714010177 887756453 116141330 43075506 365054314 775940748 664705947 302244775 925817085 392985738 278998663 145115033 888185974 159661493 192049716 625137972 161852503 805661198 176985702 407814754 75130630 944000621 785010260 323918418 200277791 447597761 801048712 105092803 474916586 556098650 503154827 153304654 936584753 414728213 978905295 377902716 705976036 84511823 228206339 376114568 434065982 894731647 255923441 680548396 691184330 966634788 390319164 455532905 817274454 919617978 384829494 523170775 465920653 618935702 497264945 440339301 874048152 163177021 159010490 548730578 706769080 368755627 318953329 703970801 760799770 41727732 147583151 413058190 90698845 322840617 655304237 335694107 805181949 513063343 310388363 557644076 232363420 27911601 54740530 383700486 193828028 204244751 248252735 489791355 438938793 876541195 154319090 839414588 402509370 200835614 245030927 270364989 38655654 327731711 535143629 612279463 440391925 22632085 763774856 769127285 712897176 326963851 189989340 312239483 554676758 222497141 749299553 585755255 733469324 31481091 463275520 371337317 118457389 880361290 5607120 218710010 560721336 37247643 178447424 866602151 987849423 485204843 254640057 22146942 636638148 783429683 135345989 679345573 302741519 174930794 611740412 391873259 398443980 726192436 583443488 116989981 697280872 470337065 996590859 295713229 229465297 584174035 533537341 723434310 642541620 508815922 247548727 264549409 4406353 987852097 124360297 275535829 981474282 260689709 10896029 187423457 851720356 5719229 992681859 387567456 888842163 109077524 789447540 769870175 774643769 754969167 312418099 663325664 880635742 407825104 821616693 894068740 934791043 871623147 380629919 944158580 993289836 373229696 538790414 34615493 179555654 658058377 634682241 38016798 236193911 126033354 768264099 157020091 736691514 622347176 46415951 270470094 377744864 619529508 223543294 175616065 668298321 841885407 852886627 225515401 397144974 403358833 110667404 516312018 278592969 61738138 312690993 65161257 66664716 133373116 86806051 910485398 401500316 978269178 46327440 899567552 633034208 64983506 267598812 283039161 813731303 284761293 136120486 233184319 434067390 449572545 363572457 633489019 679759568 116865336 496829401 647585197 573992068 637204825 547046826 901135603 140345536 575689403 809157241 251145355 906776361 718009510 772517363 597251020 466699062 721439511 613454535 992096489 850903807 189077792 27596713 283242714 449778640 997556514 841639946 811423992 618773896 96034184 236554537 388899437 529587296 34787485 514037600 808614063 793643119 167020036 112683532 585027063 751902833 53936081 784859354 12637660 210706308 83830885 691502638 971172174 505039386 237418211 308072887 633200708 335555589 67893972 21695705 373881186 30011726 567759071 630826729 24075947 53635472 523233801 363588751 813178917 856034704 602425475 739637997 732220911 587337176 19364001 199666771 424413722 702322102 827855723 280453858 296320476 955399360 384419233 686177598 547398276 295790905 770118603 48839731 430703196 673362188 910798074 2288458 394620670 403765247 983870492 900173055 404395349 789884256 121746244 915469377 100284097 537594005 248447503 760532788 750911491 246344721 855419220 648000872 615793277 258179024 513011013 271690008 92062268 952411026 102103842 804105080 670113691 32721811 410099962 301418363 78068715 802322635 120445430 444220568 408420732 168958649 38858537 75287829 720368014 503602868 541948772 740826501 941310150 139371949 604309050 90042221 482255733 721970721 49329696 452171945 95237016 973529115 127167709 126500403 11512751 343337240 235133403 418066567 679929292 532033469 861404953 178746470 516113322 370776714 692034605 720730139 301536116 1246868 765358525 979006507 727271086 599368094 33665235 518432651 794324719 497222296 48724186 871262652 566905455 191678777 659615634 91694380 371515000 962072875 139975439 144308941 616760801 930100786 983059436 198946642 457179837 796678367 162430763 742039233 865766339 454815588 751138583 115180496 302829839 72364914 330730521 889269567 252959488 447008177 714558188 952810633 592761140 998720653 624094856 981171412 24269847 623753451 339630506 913583735 992982619 730496556 380225125 796509790 79055401 159564929 868490030 860906973 761401245 874794693 156092600 156923831 721593766 38172723 964713751 287800325 760360857 350493192 662427429 267798883 197513577 644963350 154043823 969955648 719841589 592006360 62792182 361935181 729083053 947520228 724228549 957260706 569255050 854001957 685888366 28922844 843883734 68983352 895334487 435702077 55879700 20209438 400587944 356380460 495755360 949458799 488038413 184393015 685093488 56295666 231752025 837529627 664888536 14944913 630002250 134445532 334819297 634378922 353547297 645565338 617236011 524328113 282539795 40134888 406064814 889482634 261531964 604756468 294609327 908233012 795532048 612153783 307331432 825269143 948958472 895385766 855864683 371339761 224350890 321636822 714589991 339963697 335628290 718231839 102447970 516457892 574462249 145595101 661640961 952091774 722572241 964997500 881373822 717411676 888686944 64325503 271341779 217414947 736615607 989353980 583430515 424598238 818763787 61128863 44810501 167108210 169120461 889476494 73267406 328079199 442445651 360910639 812726531 506452131 998664501 413642088 612863425 855642389 292641329 465922090 796387497 414542580 50781636 294517570 83011816 815240772 537613147 558895275 153645775 867660392 769200113 719132564 521021566 441920077 612605869 452093645 864152811 874312716 234297354 507421859 853255705 472417950 493638709 302027722 151950230 13048945 608457692 558662923 315387236 260986122 547890428 753061582 993212614 114385726 200830294 384740015 796933037 611386481 834856513 161877950 11317599 184384823 343595379 949496306 668767388 280150342 833393527 450542138 714834427 424788206 758434962 615033690 553557897 942837355 320783286 107505225 852282713 29033726 393993396 896649424 994674910 437949421 150235832 583073369 977796818 343766342 243989924 564747776 473128348 896032513 534440316 702855605 454509691 32358594 185970709 795330982 301369628 65289495 870082526 487811776 180663329 334485302 583348200 310444052 824733946 373182129 42232662 287007606 47338625 166125312 187701493 689163822 399091107 108778076 271112794 103705569 926924018 11327137 778904105 492837950 964342967 833185043 176759222 792268232 374887713 269212947 774025297 854333816 517202738 585826771 890845814 7426760 754778539 377682708 313523290 191650493 873344653 502480207 81088731 154758543 556795175 902824440 59102898 467602893 92093788 295033103 902404386 396961258 871826528 278837443 593620040 293688763 308762344 517833720 471831088 326051720 45869253 234271439 409431852 777324387 154147350 417306057 617354279 899838579 137735085 967219369 212624434 811908756 838981946 203841327 727125473 110578997 759853480 171388838 957012376 233947857 491025929 4638044 873961996 114219387 851070103 166389501 227222281 489094748 176066623 595288662 768794018 600944556 537258503 579680801 633729919 808711163 915331683 129037716 665704469 19533456 82383076 506443420 785960950 241351557 956093959 816799798 433344683 670619935 136673495 843290714 240209046 210903878 85042626 81686551 807644797 815301578 788004979 385637702 951422052 423635653 398015724 457611954 999501196 327016179 924692537 773103569 199864277 965494466 113612456 240445309 483580909 690686242 897082181 486588238 618886579 743275528 688254924 671381274 184488865 341576613 705691722 998737138 69669951 104632320 399473783 952784173 7487027 57046631 712538299 854821812 379709089 653051655 939199231 55238840 829013222 467224110 776785009 314733855 664258691 68108784 576562296 126117897 306658210 806257614 468808529 740104474 57572019 430934432 661841188 315290923 187009962 340778926 89542705 186183560 956358505 448148463 122105255 439454712 961864942 56012863 973917881 802497492 515250496 407662332 548759218 885074953 108209590 770423475 88952740 75310107 552016786 838159764 118403639 40419519 665420779 663899696 342567818 790441820 369008146 178921679 231273303 329222067 442577660 118804426 639335057 752052048 773939619 776339943 161579228 903031094 984139765 201479554 113343395 682716324 689575980 255889730 132647636 832346874 905606979 747696266 144933790 781376074 325695610 604126460 201745146 43258567 984166801 590326523 176749741 917002062 541101361 77891082 764713637 651905256 685739219 110777235 154029416 42381088 273558411 768929378 432325548 479996512 488533795 261979016 813695801 928152414 742190178 229126450 200378923 800398630 780816432 837482611 911336464 750593907 176709371 846266360 424224928 970941647 653221414 536564909 927968061 993637439 52107418 146211001 647812229 550771764 866982752 401157642 810104780 684809452 981106464 709197721 217894492 266054337 126945090 980448229 814613197 502229198 359065081 331300695 121106903 123814673 223344071 252998725 33336327 736016218 450760088 486206057 833394998 642065284 585850942 424450186 943092317 778344732 374327812 145048581 967159678 770927124 190448015 455932858 520769306 532788490 389855214 539076714 427311809 218895655 300727822 869784152 874205726 526896480 738776587 886203868 974071400 298416391 155261695 595380109 564806522 899571879 944754419 609093344 142045881 634527926 574264254 150004824 630178073 287144668 198304105 484144449 580795110 360588976 84041689 705497287 964651909 792770875 520708349 127595281 39597841 728666555 899802474 562882866 489173914 534585118 821155523 173263158 211407949 227738432 45599725 639702722 199721927 567837545 164665707 832913392 603868263 437353345 621286040 726286770 750266185 378213881 485830330 769601215 664362063 704838285 473455759 963598243 609818499 229164911 835748627 921031896 266027250 879299946 557485950 439310432 112257239 624365304 444061237 690891611 272595554 201661640 251004084 702477058 439867510 651455748 428767435 610893071 518797508 632458514 89130059 967487377 334330247 789642751 865731739 411089671 16789669 767070778 588171789 928564452 909933779 657474848 369361028 955422100 628674147 263095520 275833873 652481627 805924095 64731137 224205341 2006353 730213122 756573668 227463024 870173452 983164598 588153080 856165629 470397329 205980035 36304833 291799871 595093269 462590382 53607552 914561621 662101957 819058362 866073690 478042432 726156783 238401011 879557523 631986958 393418899 852438836 801163571 302937864 913537321 644373684 103785004 303869690 675840749 265126500 363114468 19035426 173893000 338105554 116828075 814852315 886122298 772649083 280058025 575222514 552171242 317881299 737677783 861362114 599144533 467415058 866367191 495593192 373293447 831667408 230174300 716647496 892371809 248533831 865904841 1317916 989729108 943919649 76359540 494938685 520583230 393932394 808993168 619549017 510235600 639131556 918425656 922611523 754005814 313375691 241373030 469162897 341923675 407743953 467238357 380988645 326587166 409364830 106472686 252933696 303327905 822634165 665088701 191778832 322452211 865887777 562495993 325328538 560553720 340173701 110621993 97642834 646463058 489929680 559609507 111977333 432542654 842634339 573003129 571245517 903698694 864047871 321269943 593437865 571997219 694275861 603245853 966143451 822900130 170970956 14365885 659349846 676609222 323183079 295494373 227797950 785657871 792490902 926010231 489190139 14791787 994497289 357757007 389633107 258752401 205570527 822727739 232344718 103772251 495051016 557931847 755372423 642627007 875833754 801760878 441205933 110559903 326505574 309577372 819952961 905126030 505972610 944261289 302936694 439440442 159710367 678275389 931652410 124731496 153915316 632441610 190045072 716526007 253503258 509360742 106005629 820408482 13929162 428233752 947441018 705809760 870640034 862450592 480429239 568632929 504940432 923452351 231651667 63168714 254382094 75790254 840465551 340232031 699864869 778675846 36140312 95034285 438594547 684543881 507697218 584183015 897875622 239717805 450456287 876849094 503718871 2583528 507660374 591853705 844511344 679357984 195997088 599474893 916358935 897798653 923601348 689915345 753070835 842057003 957834593 906013558 954828703 631740940 710470248 548709061 204238939 65309105 842420654 828429584 271547681 690260648 970953722 295366800 796086133 300030217 474073639 911210049 334748224 253960919 397247152 70077409 546184540 651419842 768816709 967586351 717248894 101155775 410885926 128008178 358259819 215872256 569183642 632401989 894411988 411785891 203947308 878761478 778139580 717524619 674376311 613478678 477516965 69804714 926001158 149397624 896459225 785055304 971411363 142988786 890287192 214010899 47421930 506187331 698487766 853215698 383053305 183992273 788109863 669562428 926656867 324152046 698315376 150435793 948183590 104957721 83213517 313969561 516111681 107395610 739848562 828126775 941005304 848958660 313241854 705012453 724125950 284119618 805212468 404097801 182814876 203677352 412025893 979313137 8741925 131234535 782657233 731178855 822795712 806285044 671592570 652704864 116718869 567006827 325186256 48456893 165295748 2231898 580050039 70050978 686925784 624944566 754905142 352564159 116711587 245536188 546273701 737597146 409197395 797864602 772617610 634247743 431697983 429123115 957434972 677810161 730314 443121762 535548194 339219785 376217614 5939632 78037256 461980641 858505463 251966272 910090000 581194810 176132022 748730020 113652925 43974416 176320977 341478705 349017896 316705557 830115111 40725927 111213821 722261190 790850290 70133310 295516947 482167852 158942289 867642167 294490224 439746492 374211741 981327130 89313026 964029026 69171842 978118567 982595600 695781471 524854353 35926119 255143146 981415531 134727055 821940598 69017609 111438468 950573111 88588395 43265330 595986370 506892588 406979339 518578974 147375217 378211312 704805961 846031452 918680327 440895984 464362317 742974930 9874758 934869607 554560887 216316657 831867282 886029277 925965301 954533416 304864554 27412428 436295601 59253705 838028428 385792975 554584798 883415796 998019565 664391510 375417838 651878081 56713049 315453670 204279899 17687171 976370662 427077076 999824458 316160248 645448164 186576439 269621944 587306764 496177649 936935106 218355341 299032581 180714207 660470937 216990055 327360713 688338827 315068130 253961656 408240500 233505707 240719469 783827377 908660663 758559711 25830487 952562762 297982308 701664038 235479794 984408023 62201452 420608874 24306790 523121703 721598786 706240693 450088773 483025325 287243672 331221721 554672353 136088626 775590685 610654814 755332156 448865682 321258567 595483963 628672263 803784390 982047655 853211234 794412634 507035576 705614446 881702442 316151913 988861308 236510644 52629300 893681871 886515099 476032131 683954340 682907962 188999389 367416440 81693668 56896202 60933903 857697906 199144441 523501291 698918011 797219058 467789281 599352357 921645498 884077364 749058983 122787480 248096240 722238338 64613930 368754374 239862463 898077940 327605722 837880956 109872402 259406632 121853180 577682182 680554851 918977252 435490631 828828073 371777589 615515 169805715 518771694 956036166 65385840 876972782 777651393 322661180 182183536 322658964 762958486 426320360 499440545 302080716 987793954 129684525 456510578 151984507 370804359 544415521 324408336 772577307 640272399 763346512 985518505 91929235 209165020 670173823 647440278 209660341 633035521 122752251 4042989 22509845 899267850 864386758 396697500 936491012 257198463 408921655 836061753 972624398 656957173 825421647 779347883 576921136 124646378 457686207 161187171 419405225 317427502 956490078 562438279 138963616 823889667 258661301 209648867 886207262 679627223 990969104 748078322 925099557 916792828 6853153 534228761 552305521 12307732 731777355 94124139 283439555 118550932 43379034 530873917 505816250 411937570 136518983 851983401 578616031 601976909 219438412 544462770 656161648 434762770 58875745 247499717 900679665 508731565 416531138 720961434 402988517 126450408 273743991 61973253 262309002 343988199 143351992 436058770 7090784 24310747 953282123 201162749 711739144 221513020 396373319 36334118 857397115 695801198 457951727 701137 421130258 860442649 333700442 107581025 643366320 915431756 925038384 881177474 55172339 292928128 76740296 533841130 678622921 815697862 610781755 152997181 78753538 213578896 302531486 559022078 325179661 849021997 719732064 821049170 809120622 207968485 962460817 628252653 817888133 475022780 462713911 736721239 277009178 614183371 786036204 755492103 33646262 20150306 484606819 723653027 414920191 93760665 14623166 601404225 871140786 361730100 925028326 650227919 978853292 243806262 647964465 170015121 327302678 304722671 855092532 844694181 255502627 230268857 384012739 425368836 95565713 358553492 337019208 688718473 802436692 312353609 312636988 602357400 26950949 11999861 798548294 337954425 792838617 224678191 759093819 382975570 16040018 816539243 203106021 997425345 694260536 61901932 979277496 129927307 538531674 379999343 157590185 571715647 696985838 154090104 789993282 499259517 748697109 97260624 833859359 392435793 465176819 915071850 45655312 54137931 335160793 955469066 890068182 980691446 347629058 820932554 891648357 521510038 970563214 567318313 197825655 199473329 889972628 71640721 333635157 476523169 386093918 152496448 387445072 522690503 279698662 147070494 441142822 412526786 111671700 815441622 826426295 453781430 339383041 353374146 527871865 593357965 734065216 67648594 142649455 352898029 298057729 149200880 888941847 980707438 361998599 650246330 235198258 616849494 543698213 381845936 328414099 773824536 501348613 241038166 47605375 855565812 512495917 663555875 473202278 605514162 75274624 314668610 909226752 259813185 7952222 58851434 679464284 960595047 46036080 284350321 524129111 388886775 650087463 868965890 587305360 58195198 260682279 782804545 393820014 938450702 817080758 221090479 662777033 754101674 3249256 728236000 761030079 722821954 441900216 729022132 759546114 744022911 106640897 947574084 532180003 619744891 870694950 601822611 692965817 416137493 401469795 218418868 914944894 767339825 690555420 170935475 895289821 70770968 549590664 997846227 53913973 63206982 310082327 858918861 901318887 634255078 31449560 177902743 949196744 5423627 179548014 790683267 498936830 892084520 314352744 225769725 215035230 73220329 162962237 84685077 85900660 933284042 96465534 303628749 794060438 421189270 490106054 998558150 907594752 518697539 610108132 301734419 927809123 898918816 517777112 959279069 266580217 432440199 94146097 328064408 434448838 962075889 742691813 456321389 297571111 631967525 54969633 962189408 608593530 83030660 902510017 943260219 670463711 574665954 748964610 339370301 36024531 45312020 300498413 348637729 342265117 621844941 179189153 171356989 513200013 986396393 389685128 909312423 95497122 239217164 310364765 875344622 396479451 350165859 866035578 107419830 136390130 976861358 952887914 568636348 996295988 290765376 665533224 712247402 616758750 40152244 536645433 768284595 603257789 282496607 683690761 819745108 439186983 801811934 838874383 805523547 612140776 137034806 267793747 568515499 70967782 280336139 238971893 214466251 764076347 275702352 240433445 932431710 670324829 800277627 809017531 644556620 269947343 263523453 681049082 228609104 712751386 256953253 210090907 655695092 386137086 174541004 195333722 814471637 497359714 854758076 136266301 447701495 698165555 676110776 467878974 330686922 608726290 981766708 818603110 530112563 765100529 235975902 577154593 174023516 934594453 676012908 664139676 526434734 123328244 599887495 281533874 350649361 119475174 302637521 191908916 484020841 51902680 34326871 856716006 223616133 740782196 740979068 789389887 743736796 368226986 328685436 21035092 365999496 178250435 161468166 39883417 367439195 895638119 738451058 135866945 429740573 648507412 525813837 758877582 68544976 43368699 793916516 445636343 776410607 909805259 345865655 518736603 205537556 559952948 801005581 968672890 7974066 492940072 500484173 348329585 230279075 713970307 107173737 452817124 344037067 595209660 236030706 392657170 664015039 100378339 336533862 536180902 843181318 783655441 173648496 303496835 903374197 267456306 734188333 914538142 834039747 133261753 499744308 355738838 931613138 689203865 289445396 586494750 516747065 114786726 780323137 956216813 333864546 982078438 629315421 226304822 619215171 855060297 76335771 674648055 706158219 740900013 914358900 5655261 111184911 399704805 816554013 571716658 101409282 689751967 731358289 641064910 331082977 860180448 335917487 612938250 305369035 712047079 326002960 989256918 347334693 508363890 666203883 740875021 460611506 50729070 109229824 491958070 126095634 803339675 747476613 331620261 501200564 815750920 553752200 612935322 513123578 931197509 605719541 430856909 423178696 691869872 87578211 779523856 700434014 172078321 713158513 291019077 418154987 448055954 20137882 378244313 484070333 218296168 354845144 957268789 713308198 122689979 703307269 807033957 922069851 408800873 567754766 658494852 981000008 330572044 466758429 791858631 342197126 10423391 345586132 656165674 924088891 450941184 197084649 346297659 371653941 281474565 53377355 634208244 734383625 270827689 348881568 700553223 795627547 499925206 112612423 158628043 846108835 787946687 584626077 845239015 822162687 137344455 945028752 523298858 405872671 243240649 85832416 802839717 246814745 278981848 832810737 354376577 307172178 903280627 35986738 625508277 800659674 69568598 54900431 715949476 619565371 60738669 898158256 954522979 47795091 144286574 531146925 337008869 185454821 405410292 319917089 854234058 51103422 617740549 22689594 230944844 453636963 32724832 810598854 376456567 172474067 499489029 887382401 843911194 163800969 549024479 343727926 132011579 567564635 846331130 519630414 563580498 251176227 652780389 373252644 934966361 894981235 702293367 443053123 324632899 723062941 230781374 633285729 552640102 203899631 134995205 706348928 848284449 435772593 89244433 968745155 369994311 540609679 225964625 911024941 907704867 692975175 638341701 161812341 196057638 880777057 485860803 592348111 567562896 922737325 189177596 284493932 820294639 684446087 710820489 906404219 101771885 119817513 269513021 528027487 693955902 291806953 420079985 537780428 641282636 861561808 720477029 520976562 172571518 956040498 697230264 601976814 989348887 391133119 693434083 288580503 847593328 590577276 444751863 164093324 979811280 247825356 558618496 854586944 26213041 919169953 512246447 342763958 717675926 997947895 545541386 842485498 349526404 54687631 547289657 683083582 292834975 150293473 74152640 441329324 340824495 452510440 572120467 511059007 223620403 643556126 3152454 862921964 164713249 61173060 265129733 200006879 82695343 817298946 279230508 470031695 227679200 623470846 590939964 83377984 357982363 584033721 169474410 274139280 384129082 217099948 553152745 687726072 823884208 472568691 638302321 188669924 29646971 992416045 647037773 407236385 787964024 118773911 651479840 668777898 907907149 544243442 785688909 353278937 299879490 841666428 700567003 583149041 682136860 316423987 635847066 333177705 823378393 829301876 670407687 141183564 265875762 348986266 935441386 227438007 625005196 869351010 747469302 903707525 632208353 480510742 941910778 315865770 285590960 301784948 552591195 772009514 640612073 763783946 533439721 444319699 217673781 667951708 414067868 960983409 557622731 909541677 406751885 395365754 163886646 512410065 388101120 849116624 208677975 709793032 229648740 127754545 4965283 941068167 685797937 557683933 830240391 269962783 351593431 36291416 367413601 123024928 384630647 827783391 859512238 991398078 918363258 860062154 605564158 813900551 823778839 316312886 799141015 447408769 366433790 186035286 6411536 769224472 306319874 441275977 70959178 965764660 797051526 558426363 424293994 650473393 724567493 458590610 989588629 473404333 630649795 193580954 429190822 54324535 773151819 59071816 491414725 889439691 42925394 718846879 630966102 369392765 32153479 119316580 442625939 673431479 873295693 589719846 407733440 757902820 224778276 620072760 669963686 867753092 45422943 520695015 515788396 603835581 438546947 243414841 227729640 94101001 937212609 993209495 546873051 628462613 573098259 627591647 203882812 210355460 974896691 447255121 189904166 415722599 474941461 330028109 940750071 982399101 122025416 466597215 780466446 401315219 358843155 960261434 872020242 718199440 579069814 218940464 655542219 864808084 850388361 275313704 84630974 756126515 218939636 207253254 330339126 27761526 698562422 605790111 419594407 943396569 522232399 900502144 116124953 721885762 378269069 492415516 104831966 178771376 577911233 750470341 300593284 20895863 817519770 503842476 875559041 980979997 258385957 873513415 761888401 43789836 230298101 105176980 466160364 47854225 607195396 955843801 450427960 234232372 647643337 414205147 97219857 727628434 997018859 786347396 705931934 678181084 37699392 599411827 788967609 600962321 871636089 80109164 473511291 918120335 997284677 937687729 389840677 62838543 234660345 986537197 970393931 55768816 385648802 415815609 472930248 589015182 102149196 216467808 405132411 70046663 996001184 207384892 465767742 381539229 898725808 817321056 963675987 766844948 664814857 248680186 943301915 596305852 277181302 588263836 903536423 365127319 925579007 672846518 854447215 953315743 579091536 293891963 374973862 665201561 980662454 811236237 886372308 863789198 9459298 750201981 983176447 610894083 442719788 820790798 877960474 156752441 989912259 952615828 703150501 752296848 418106255 40958145 41212356 348697529 864881444 858563090 995355258 920827385 900034132 121735923 258049588 871860184 825571828 568814756 816417503 409108461 816041139 307235268 721903733 81235770 400633682 610823629 669309503 876558359 897531272 64929334 508849009 303920325 560292702 33157451 681809321 320406202 554016568 133103712 769197751 393953442 342432243 338578724 999996902 212593024 511247319 735491745 86211444 75072649 710890986 448025900 217139530 650342160 945240097 877770419 369795416 350590390 180976851 234945882 141257752 764745795 893041620 141958471 212178441 279831977 345836575 128152356 951547023 56575150 958788793 151649032 225566941 281098618 17319847 634000346 246498640 938290734 126401677 955623983 598639670 753478986 490070090 235459301 407586917 744643066 301783387 421175846 780734551 511476177 425706575 444449284 298183988 952976716 165062863 565330137 874280023 411827088 938904778 495312083 868955818 943574425 365844643 865900924 475472900 317099702 680752680 311198272 869752249 770087482 667806131 397042083 479724025 840509772 659614823 995890552 659589602 368035839 26933219 254148156 876477436 165768887 936845836 311710307 124629550 621801556 607550124 428617032 906094939 384640005 521818788 126609355 383881716 845975325 323658300 786214391 848067302 431925113 962012711 586804572 748874269 346645922 498387824 280892881 505334039 181819435 833934025 369874831 711719597 188657703 338276227 211750795 78385099 621355746 459365720 790749381 53978937 962924668 403211263 378253778 180984986 782111901 643271019 693988793 902828833 208066643 879855477 69714973 918480507 803750466 340857679 734897071 629603832 743702206 301585513 346534538 983687523 93915388 220114680 703615968 207047721 421717214 784014418 572584545 337626938 69233601 492085848 627994283 607468885 568211444 370341332 618617999 251418228 225553198 326006714 130325235 519120775 745023631 244812311 469784291 514493042 379386905 513979560 639676789 379070868 106591825 316511533 220886559 206120773 870520259 463604644 368760461 164534720 314714878 639242318 654986991 217715649 628133067 949706647 542432096 189093176 485535283 299328953 849613557 573031947 368461105 542184122 636963792 386212564 312545469 221622904 432516509 57152622 71859105 807911023 350147455 744578026 175855883 685967408 162786896 844394688 60153398 339951794 544684584 590360600 239214710 356402146 216091601 47376826 858630228 41480819 288727497 148283940 376233631 254406266 246285812 533511610 920924098 549151966 38164708 939289724 540176418 309488864 849659017 831468810 962085684 812306911 315969737 241627725 761177782 463097872 953829026 948299851 662927432 303684477 695349547 362662617 300726854 19494046 826188392 677050361 166915301 62286623 835314616 275206396 932073895 524337366 723447039 589269570 441490347 542700801 127042748 20949999 468977605 183600026 509208874 106886278 764438615 906135399 583115095 123412670 821423893 832722241 899545238 649985848 666621727 337165958 893135286 367528432 82537849 631672395 742924160 113260619 199488260 228771567 184608587 310624034 463177045 262481407 509323013 253206754 824085683 49799620 751602842 428114251 673992710 883907484 939335348 849462394 913162596 932627380 353611873 507306088 330153027 497498356 353606914 284711963 121059072 4966743 74661634 847473419 12023318 605358483 125014976 921730924 342816918 658930732 543671332 538385767 868647505 472427166 426951173 261049144 510787521 196174922 88782423 264418736 741475973 137558485 466574879 309612579 976672995 530837368 174557001 89043751 409162853 952455523 638529451 860192069 580280278 830670198 687384045 327409889 896803388 147940212 38863715 912918274 592049973 603750778 940031922 321410808 287029364 360807937 297247825 948424168 290663428 631082524 774771089 267997127 90968653 466795107 255799217 54772791 941885364 901421969 763400896 834009826 127895629 92585167 111088254 593853802 332470383 764548972 721450116 633428673 964470395 793215993 177232824 161668547 139820232 326629289 449111721 864393885 38210858 43354999 799298891 93217791 244910691 496485548 804945295 944675924 79553348 373629992 991255053 377094206 143125996 599687227 107917176 743285556 917084125 79516341 704618809 709314323 718722543 833712893 832301346 841030520 411499867 297279517 455846340 176042215 824440257 717906939 755255232 728979405 520784858 61517720 603655669 174475516 37702753 526899559 246740831 738473937 779899913 101565268 95925181 801446494 80905488 577155677 523788180 339947056 431242609 127710556 299264942 615484319 282865508 270310544 29235959 828644564 371828855 59097776 560699299 233477222 346961198 841381651 631789381 88922166 162682475 829864560 743991037 658898135 615379349 537154262 500815124 125874809 737903945 988462469 114184895 903937823 124959730 167671345 591635953 238677403 549434608 461508580 786153294 343610171 672425180 613694205 546529543 789618117 17026766 493138799 279685383 716365223 157964779 584916732 147952103 828829869 480027029 983717008 419932114 914012119 829151112 64111670 217307912 679379627 26027349 679660930 264090638 888722982 118927963 391856100 201749975 5900048 483369236 740706010 612609477 942440041 271879816 621469272 281200013 279831695 496232670 636385739 338765626 864562946 980348548 881078748 198788908 620658516 903973612 598107273 876632044 188849191 86600125 973276604 229194655 679928712 396259048 301550750 712360211 719778203 567805115 429802162 237831087 827942171 927213921 197163400 167199008 994800916 175600675 337725424 211829690 88234175 650606497 238399591 132108 280162292 399745701 134665317 2442788 217171152 248992811 151667187 320886632 655026722 369345661 20772088 514514464 156087099 339568257 549252061 958908281 699326925 973124766 503535633 161004352 679305552 913408964 706671133 670216577 89991141 768383661 80884541 279728460 779374072 2126181 658120430 560050882 880420090 606344150 299863106 243376915 404095703 721262209 435029850 285859390 651431355 589759067 932220894 283430857 573296493 247003475 832475800 129459650 702133320 241165847 938484948 703439178 508472608 939571600 955606910 914287062 112136429 245495411 228923182 609544417 408502074 538638860 518702175 484789416 57313098 133755431 106038559 979745777 662425425 114873238 5601510 396401716 961999585 802213024 159985618 818492851 993843641 230261464 792204250 623639994 516737619 243420384 685524806 599307919 127823087 878370257 57194331 637140877 900063536 908788867 564071963 147378539 15930543 164899408 109506124 99815542 395888601 603112047 602804235 847249496 417454241 409089391 329314950 379884605 809842329 559020492 49111753 204800340 498655201 407453480 485259224 57493207 541906217 729215689 738936617 127255971 268331565 333084380 272634635 797749158 738093584 642091024 31117069 706690479 81683567 68358603 755227157 775664517 687341204 356949887 565523817 732039836 192896843 18070137 381561162 788711984 238497566 178475647 95448231 243637309 430284572 731524888 692036163 78048260 745975846 370764547 182541677 274256756 39698033 914549888 203179004 749462619 100474743 893733932 506328680 379974891 335322487 423954975 319012308 707713964 465758 225374645 511372325 543254210 32194975 566697210 404222717 69517096 685013376 516956681 426965154 667958093 572930848 481389771 137258086 254428724 309713047 73613464 369590777 919329993 381268042 925812279 156881165 940152415 579404792 332508976 938989094 704288027 66648721 484780892 699847033 273812989 167894436 791001787 584901024 421541302 944909798 297787441 665922787 976370661 940738351 98041394 737047344 325867182 836489036 618424128 646067139 41987934 610050565 763210808 499574473 534664817 480386043 766745580 733653321 889402444 570357148 956366804 742165812 636488903 488575538 972588554 834768117 443938405 927088092 228204663 361026645 304197521 73155867 37143075 415283315 323957753 783849001 275808662 960792073 885739881 438515664 254358774 880107457 636724816 120861862 468246167 778952039 18634979 208856753 63425899 530053336 482510515 521732050 490182695 684510889 504639206 979269744 126328233 935313000 95455220 726417891 460061673 769959744 450961950 345988572 737252565 193656267 305217159 343522471 620381480 728646528 320047381 608257161 760093243 625916224 288775717 374218559 424503956 549954749 473778882 1045908 407922719 811594119 41569363 63162732 249479712 534834390 213610325 832377531 152406617 121413587 849467849 893627205 906862742 854753170 436127919 219150048 825755821 376536306 868615394 933823105 230136626 609502538 447622666 166720918 423587719 99523602 369371937 230685263 928818153 84742089 219680001 408972805 796691631 282208591 68638612 444457543 41944826 510122971 244976618 826006954 553933808 734512176 367421589 608921315 8962986 330565480 491423942 33234522 692574010 561563329 350327880 427457471 51797478 53121873 164039127 81009852 988899331 658220292 668424717 698635072 421744935 333765041 538488085 541044877 270362403 193033868 676013874 259186926 504659132 742781846 293009684 176707871 139656352 317645508 193550497 659946813 368183923 496224646 878864462 322307105 833922238 761493323 54968914 82519022 913405798 106975034 553042902 914615308 892305685 431152760 381977721 482154169 924937946 429046613 958627788 430377047 331702218 427019632 20650417 429336794 10790251 148120531 739667186 96437283 453278829 572115560 238274494 467516265 903139810 19234124 756476903 241992581 26210500 889477090 131434782 58293880 999648367 948968328 956327104 753434853 747039697 784293898 525072036 516708728 161470925 468799780 868493150 504347633 987013822 436572736 504720412 562919812 737818259 819992976 452629275 774724708 446582752 216389579 77778677 575539009 662589346 193436211 979496626 661634939 617049632 853188363 197328525 566625576 577356696 523758664 578256427 665723613 843474234 701320239 22978795 179095677 534247328 690192386 517551812 378265473 170314780 692175990 208298432 886363035 933857356 694451782 749013239 51083399 232712419 951829501 67348773 847580450 327489286 320668330 966827949 326976525 209658334 92040410 835229600 208928812 844299831 419223948 821226866 687409752 717171615 670217455 506483946 956264812 953316621 539995581 270568429 904700373 966219823 344257472 213717584 907721680 125814657 898780017 766385665 207417040 812668352 87510381 892060852 975737133 857055356 71903603 151503310 471685582 674236905 787461821 563923064 881355543 204950675 618297203 652303404 946784870 669015008 198259763 419788894 697665960 563165151 357695861 905365435 930874710 528635878 813954694 743262426 131917761 701462481 797056210 275156563 480618548 411591054 841158099 440915210 120749608 381080885 827025345 14992258 926264563 798237949 691119612 655490837 736419388 395452958 962711529 810296213 11735529 371648941 271900416 440889692 181516219 786953437 294363079 404026614 679603217 381807546 300364540 500098261 161611091 49011434 56342744 830013230 721611999 45864330 276629496 354999757 61533371 859303335 829457626 992199264 238899022 348552109 573424858 620059449 24824426 642628710 810128755 273290917 138481195 175688947 407326254 371100696 761763793 554700612 246649374 210531571 287909064 114001816 432442169 292884586 710233091 233196348 332050583 608207575 792787155 456135834 598975870 942573341 206148137 182784698 295818044 855573328 776972229 713201782 238458131 413411828 57072147 26944936 132433399 320755118 757306271 315530194 978028958 509563509 724172296 698849506 862997792 748260184 16789687 488296947 863974896 463540814 906990621 628268612 282366278 790322029 310690700 805659994 99833356 966803186 245336728 113343976 279990265 939695148 994775503 577457353 587770607 409886926 877302400 579649068 355679315 458998317 578097840 269676312 459573257 757624901 122669205 863607355 642492083 446588854 577525025 132669516 636768390 157857040 970451850 468867431 682891905 648351832 665918054 846915807 566057553 908433777 689950358 848287790 184300979 162844894 169628019 446007309 109925484 962291555 815169836 189882139 611427582 602417383 334466622 373708984 993110289 979823105 24219861 214860101 276689470 978869086 923969994 407433943 731526762 19323028 56690713 656565169 624320726 248244276 607006773 756938279 862315169 455896233 626001984 268894263 998206557 56634769 245500949 740540499 625827521 509778759 571834119 883696854 510811824 532717694 188763233 920395263 819736207 853657079 384536700 583263022 893395070 616001390 463649158 625518399 419382888 663219536 676132370 887395802 235536185 70482899 433311190 819612294 953137018 266166549 33780798 416619616 475208251 634306375 932771560 501715126 329343214 407217204 664162327 31099484 122134475 252485723 516953082 440599867 15461256 190710799 944273471 217433238 534763897 314965137 969452990 648659608 960842465 548951827 139275186 748814636 704921157 705318459 365719068 159541094 883845270 470115377 836054626 182292615 583998013 72471961 391914206 592150910 859982451 909247634 396614354 948372787 410648768 334962936 805401058 351283093 157215731 446764421 906911464 236238360 221669382 383079920 958415664 187325681 249140305 717597474 675274801 538796548 291683926 273360393 759858863 261257317 865018771 99112332 737692995 472218144 629288513 345954764 298704895 578982513 677248384 751341472 508309725 805041682 412706543 120787160 868225088 949643687 210943305 405530382 69207538 209710084 370156692 389419189 91840629 812909013 620039636 63168447 953849325 965213263 130442819 703905515 58928753 852689634 549195700 43384 440922352 964325388 948894258 910976212 924553389 330042772 277311128 59394434 516576299 234247662 812180098 659283650 935267061 239237131 57320511 993301869 777852158 534596541 881522206 570466701 104790793 676183332 393493963 473928791 235245162 832678859 159063455 166019988 598119189 892390972 27195248 508985432 575969056 313199519 368499697 695234548 131564121 432629783 316333365 913763934 730998288 242874967 820242481 203194439 52549679 602450172 555909658 269350687 251960078 610733552 698508124 163730811 450640571 680985347 598197145 162949573 519762401 200152617 524919934 576794637 626840225 601079966 521364949 142575331 782955392 622405879 166513556 10988992 637227357 56540795 492913436 574970462 336995882 354782793 828986707 924062251 445856767 975225101 215820983 849247956 388467824 377350148 747412674 993600270 445517944 833252573 604581421 488855192 631874233 268888494 491960654 635303918 621538622 443849337 621130707 5850763 665744540 757407802 527702056 598842473 669832709 202618677 943379549 296406468 292513731 378683469 307888081 649000361 395270797 924637512 967160405 992794253 648466841 894358438 374512418 29458487 545116248 593062413 152377083 953656490 687734971 660988751 603169460 28378988 470337363 161392652 879272785 79523301 715227328 172373877 107210255 250786888 398012766 258015434 668089633 842801172 101342636 504543996 614666502 817422058 410896559 127788437 616677373 575349424 421403770 344832664 857173568 599764538 990453865 242428053 118437805 567298454 453338612 107966017 343912924 540236226 587848449 115856450 432151999 75753964 298379606 478747291 595894755 48420423 699154010 11363971 60130883 351743913 322525828 549614432 545807411 64370512 799808385 729820707 698113210 172030957 849392022 917561269 433006150 118248981 713366740 646692303 606008583 862040547 385423371 422369492 636337244 124037265 423258571 18822289 158057265 274061285 781531663 979768085 460085941 140100996 222405284 59665364 608600631 518753382 407948660 298003393 6989477 911848844 54267326 826918567 119258500 738805255 466050979 350797699 419924115 496899470 332589849 773859451 225398076 497269640 14111030 772000655 947777118 126228662 545219768 776796591 506071867 953271261 944778481 494447335 116010421 717812702 748765935 280185688 568870262 986403721 961810691 171903766 613552720 628958777 646169951 269028179 714413799 77592258 107693396 507393359 920165248 315249444 190070598 664373825 49417116 809327470 422885733 376068733 27486460 92311110 90886924 301588220 943710483 896753246 724343355 623175240 777731695 477435799 674873315 893634782 90341530 81442828 656359288 185907739 458837602 354532399 577671558 108499166 470862854 543086229 351545816 899414167 897721557 476176330 768647922 868720418 363854175 251111550 377806797 108758194 812650861 547687460 996052621 287445209 852411071 648171188 319021126 396690359 10918688 869784026 890173139 162190889 596489787 754446124 204126731 877989585 950799665 249338704 533438260 433086096 579490188 814626457 434195371 615703608 754471195 705601410 467296850 468989611 368139804 534839281 481186473 780449466 193147563 989524200 11567912 547323667 926241025 742536272 143836815 882684207 236320392 626108392 108501093 588282045 751451755 86707416 450576742 404187371 886035748 397984398 310719575 67582689 925191344 425450993 148493663 553253909 738382326 919043311 598977039 448497887 838218746 276342677 866715478 466932550 107951815 239125356 559358129 274255093 419088510 720464670 806294705 456943799 859121874 188538302 823289369 888973675 525520827 741448005 793983451 639655774 157686456 744471126 554696400 693875933 365164889 862023257 931951856 427081409 588068253 201775139 787924097 327033411 201094015 662179512 470275617 28049847 230086189 307934637 708719238 337680236 568810288 808595122 534402909 184198619 641355779 570638475 300910724 428312156 294955416 784299365 721673166 66289404 370404688 180765805 7841887 729240313 945216712 595064156 853403091 401208429 187081074 723534799 350604961 424919148 341970339 147646918 694965807 319173839 104024068 373065987 919767183 31880535 104294234 816990630 133454857 673273438 848961661 842708929 4112480 285195566 861381460 449089438 965347209 371705860 986891725 460534031 428223843 544340376 752911416 980401386 526037687 757566121 564708327 94112401 809293292 954216486 877986648 292610927 111989188 293311651 310858197 949326125 728044449 126558813 790775597 80614520 753332009 189231995 32254211 561473311 612505770 661050052 676979157 416674671 203183977 695468340 584146152 698583710 591671639 26655290 71037266 800048319 136109221 889662437 497001046 465147474 539316639 59435857 639838708 241635698 225433278 269140428 447919766 283469180 883527659 875035624 573045871 192597816 138825586 936398638 960722562 303659578 342785456 764783397 804480785 273965664 261065995 579452853 563159154 780381936 782460469 425213300 802119903 97588670 776112972 308187850 427011776 148333681 121671353 627954812 750719557 154771472 308006125 643022690 907511002 558895953 480150469 552409640 694369865 773554840 290852849 737547193 93442775 923389253 295498669 599373404 851546180 50104860 757400253 349694179 716784173 87191295 664781533 516402782 837494639 837234713 854886802 724751652 59299075 54066858 751547178 958701581 478836820 144646924 777982737 472367341 754548775 202812842 994868017 282447753 647421747 350288586 921306810 558507558 829897684 575476405 9714654 415397374 134088681 937256475 801957777 772054203 447631501 131988372 477074111 804745011 43967860 53044894 817318489 999260895 746187168 591392789 296472724 11649658 653656663 841943948 622592919 101622179 181325528 111475770 27450728 832721316 79902349 164325052 573006674 530664090 443442812 871404847 386826053 210768811 237686647 710123575 282569757 124474615 701592570 509715464 350351151 987207863 157876522 369518006 216753791 361089109 72371581 807481892 186257581 692213442 568149582 823932265 4252262 355747879 182279963 619891617 683428417 385817876 655474289 298784371 293960447 720799401 724300567 420967921 887729339 934922539 129948258 488425176 225892084 370557718 427247008 159712828 654457265 586675399 30572846 548180121 28004999 541860865 217848721 275308793 587140822 68097486 773597250 890934231 15107611 812402766 257242305 498189999 33585684 745244057 704566007 626870354 214500540 251699751 878299623 320170581 291570059 338309323 351135678 887241754 492365387 821285727 247253721 704510925 899145368 102960156 770296833 231626397 198677234 293165899 437389388 381288292 412560241 755424464 765793670 460471516 869490030 675419493 909785840 426703089 473017526 935822407 985768508 337174862 778942992 937951068 75433935 742399370 245751577 459511881 84917808 456234291 335865904 430894079 376516129 998660234 509670784 105255842 140924990 712030856 440519573 153386487 680222379 937088337 972114048 931400980 787386102 975214171 914524045 126413978 691368276 788616058 81750912 112122198 819940697 755822789 800619182 199707001 72966515 33319263 226832675 742305312 738514322 874202619 501987942 277536152 273906189 470952971 618314954 798927547 531251468 348265971 963771692 543733749 227829170 630501682 651679885 953382841 792924519 959883850 418545024 693974510 690604593 530849244 906391447 186976317 87536246 7744341 388768354 504763316 436708799 456686841 788816610 585188995 209717212 990945349 73308724 261463553 491883330 123894050 526085353 575784697 672485559 647914853 479360510 164174082 707084560 845576362 795986696 437471626 746866268 751574816 180545199 735868646 417298112 301778627 140904953 325992888 298978697 517319642 412294761 969838779 524173007 127300159 805032623 546727688 324711327 993827342 658601295 412804860 996640164 434049756 395145424 354920213 283543502 35093209 236349462 935371287 660218893 159978395 457311383 743605621 493575351 626305842 433866471 572567650 295566590 447307242 472875653 166939059 446867863 980794795 286618154 76631324 78301950 232970302 296615378 83056480 600210538 622879247 509755891 832735876 553787431 945503546 145288936 795369401 350495830 113432780 67742633 480644200 631051318 430625891 835308442 785175660 720252335 274020726 586855636 946123090 534029985 217925028 164179741 679995880 134291917 739264880 412625633 545253120 337351283 990305640 701362364 894718139 246280891 423641626 958313018 834109077 540761083 161048588 123147993 669102946 735347766 654388266 85838860 796049356 108769806 933579358 868159964 559051926 725058798 914402838 410771871 927764246 27705195 98983976 116727045 54183048 223003411 107809594 821952458 930175690 487888988 637513665 712129074 953435605 756369614 168234519 11469447 230527157 713661696 775166201 673813321 814340361 500453498 446747992 295312392 862196973 177231377 572026017 307947196 692239658 229716060 453029564 661924018 930880422 767397209 78033414 165581946 541123923 580389418 659622878 53653600 467676601 97839773 116221398 334977303 830721557 60342990 63801299 989257714 699453012 461499151 171094515 714093551 718954246 357943777 970266256 137721720 235061091 402052475 20698328 404043275 318917472 635893557 835372788 514122873 653297415 830431123 621891188 647623694 862525130 970278517 460679223 570509907 216691775 211845026 594458112 986563170 542452048 378722872 296533504 183284380 300364250 834960283 93106237 901809527 176370501 652512217 562086169 858262002 705854081 842989850 59969291 169412328 974356684 602650413 374002763 355836844 360913640 836995468 459451103 464025254 54472193 300147679 526454969 981767027 74746985 671824784 874198290 683119684 621664182 108915403 206632060 782439003 213172554 91259267 131457680 556960027 591592695 352617515 343574388 930209807 264209014 591961240 826316408 457059240 516057448 107078275 704975418 25259608 469501134 784352304 744039267 255124328 382351203 777967354 254245895 298327743 556878551 874991570 802469994 677316386 272229828 874377829 808213014 337219026 881690085 917877047 209798699 573900627 407603467 884677324 176582951 972129968 347246227 327000231 910203662 406987247 444562786 981916877 806098126 233450488 554605084 476585362 241541477 214839651 541143776 139710861 108757108 363860631 249733224 414324090 92546090 863643339 929313789 110469120 973650273 360571725 137818117 454623657 281834889 927863810 785591262 754220290 725121841 572122215 992084808 396119861 900698015 619150537 357933205 903495187 68219108 837043918 501588016 366219750 944795042 79376464 605579312 977894788 464043373 774854640 889527491 386698214 862176767 939466794 477279457 284481582 178441722 372254208 105261621 415482588 989221786 544159791 335335786 70924085 305081974 620413766 266682175 976863420 354325761 332032929 447127866 381766870 854664788 671994649 576695561 854037939 710496918 903513658 213049036 306124725 802222106 224117121 643654811 945123121 696402520 372697241 204608988 389182822 613313288 124625250 915101744 875908275 534822033 147102988 99636559 136964958 511273971 480144732 564186525 736895900 426878234 318363382 843783382 902316236 293865740 702760886 419847771 742009597 287374788 406594233 277671838 206953548 225242037 419403754 790823649 540707527 246103780 511216199 494273884 504527379 368611322 52017472 586887331 311968337 62032163 791700030 682044486 819955510 139971867 570278185 858106717 632365413 839665215 473465999 492712149 249205228 237476739 426703974 812059291 320766918 895131618 301940770 101796404 314472164 973139867 190096332 890642080 32279516 595691088 538522664 559537534 465803391 239318313 254035412 767003270 760320166 181999844 761693201 34970393 349287021 908749236 412195533 422279192 356709460 462487528 300763679 921128568 934884660 640066898 818195759 885096562 642425843 102962178 938837451 792402958 765523170 80468756 86439198 39023586 267663974 974061742 330156985 271184819 861409089 531694370 673911 290412433 194689640 335113513 864729754 907663115 694163774 295555140 556029087 42509632 238316150 483558541 4063877 484224158 878727851 627220532 458579382 928532694 276687265 234329419 936402192 774523010 221205332 903375746 585706816 443783401 685276524 90612308 479371246 568579429 832311923 440772759 996093188 178841250 981330165 149719546 781869926 387930867 922732832 607255891 807738231 897451483 886345111 899083140 900949056 311446348 790787193 140094762 782474020 391359248 280138327 474406770 323877870 553412068 445797880 98478754 566449782 907751582 811358970 610765281 738067004 674672650 354375199 387282026 454698153 610149188 22133931 408264443 583913075 953377505 72246221 416313762 22131603 815053357 95761257 440417051 906887052 689504206 267807172 685651346 22273927 782235983 95850675 481370184 906801629 391617028 205978320 79442719 699841084 706916786 940601639 709762652 848037952 90043121 729791522 507159090 576104588 599431143 566425588 267250973 192212681 642233702 849183229 267715673 426162468 958306443 874001117 212621830 586597805 394784815 854189834 190491783 977305375 404297993 437117916 84227156 601058055 989848984 869202801 332419770 614551391 649436804 448300891 73932621 7242380 53202961 377094781 838965343 315702278 744530239 139629611 19625771 536277304 671670900 3860889 976370181 425085089 18297174 689725529 642945863 427935798 654038554 684284532 951317274 262520526 414057169 67607577 524995568 128176050 622262158 126788289 611060046 790248071 706053878 383912946 809042488 236145960 871492088 181148288 937618488 208307396 911451516 740859790 258221494 98804932 880936083 899175436 98175909 241513909 739449862 710974112 686753402 254397243 466965810 306677347 335676154 623441553 608787296 336219616 624045258 38091058 13061253 622838777 817498639 283795218 478909820 832503877 572187583 789856525 757362722 57891157 880315678 826021347 916123491 931633529 4805525 910277707 172059909 18141928 220250796 324015440 332943230 763770537 799167808 680640043 229115320 727629607 567321257 132404194 602012408 474056895 347263185 912490302 484691879 914482452 161866193 15648561 963161371 242880271 684034904 154317363 805658479 997465045 611663945 132428238 859596954 317848808 954285001 344667183 489351113 315195989 891221121 700831295 705717089 441269652 542867879 277694487 670462921 629606684 784726407 954559259 779419629 355705046 236855861 948364581 140133898 955510250 347674861 32652972 133142046 297977437 608382150 441927636 917548006 578034522 897356 124946673 376093185 208979992 330549642 475047861 481860372 280492895 465224281 929782761 257911379 479484405 112766522 937417588 366703268 835658461 624071457 213415418 524049871 991947625 473984535 203280012 918022691 83720522 516468256 302258566 703001697 910535398 909335137 762271500 959767572 152445131 99562943 490529025 936324231 520418427 958394003 407494322 796065150 242409395 927234799 913119561 418686794 380563648 364798856 209859400 425955932 502645014 196777153 149994798 69730772 929216387 860886787 502260249 661903797 467213760 586155377 373150301 28361729 972025187 408116224 634798201 602989025 671753556 698351678 722504430 975844319 537969769 976802337 124707968 23208247 133246792 581918132 988960238 744664886 409388107 678713799 868134921 181033147 7281343 405367520 957748478 399425826 555757705 425368782 979198210 164445517 966221173 160681822 456809612 59395523 749591051 187800390 678626412 767631094 405690634 863333199 783655868 373174930 870161671 671582876 240051252 263929443 867596216 477071615 694726748 306423095 854134940 39411815 646443493 133857457 904482842 378979542 744471091 888875720 657965995 883237846 570910151 728184265 894953291 522776950 52465684 3212914 305106225 704019397 316398252 718209451 791089313 736913658 578125538 309512764 324039136 531045523 748599479 760047338 77632694 311562455 720740914 954692819 488457358 156940019 838477073 943176272 219366990 873872626 488758046 449850717 250027710 326143109 504525684 946302763 193014211 683027119 748258883 987516222 667190731 30868210 325195410 143939625 232378799 211401685 45203944 376731105 72373705 24682884 479175510 871755832 287813276 436908630 897216002 503281410 315394762 615202169 875641186 705795060 467855188 709011276 446619648 812371557 945268321 288123027 345188476 601088631 819761914 746396596 424219048 387312746 461683204 26144422 504719910 338664071 211343763 957249908 582731490 997195185 262342098 788328463 849405321 863603569 615215160 302940398 782991663 170501868 135263173 334896146 449040963 456654885 189434832 786332991 27107813 216128792 373279041 708604943 680271692 932756404 360965255 210323697 878764203 54671396 969608289 735653208 986061359 761554865 299188988 153168032 9025768 272655089 153668583 379104596 839139485 816134934 692491570 929734676 730954099 841725047 966122471 660648318 867780323 19616969 376381575 210698062 562535566 724344124 977703553 736927989 787492113 32875952 976953533 298759134 629813121 312692083 771126662 783989741 468359483 826519402 592700522 521574871 977445319 231664930 465990391 151592342 665847297 903437948 547003435 31481509 390416864 476481145 704505548 407453812 204234274 123111437 251348324 153402459 105452187 798955655 948315461 689357916 230236293 243091169 512311280 662367213 366172947 483337217 956315332 58893994 931801685 612443486 635967790 821539706 760331727 756146672 594705363 152773871 184972517 799552925 763181316 307550465 840792443 388954722 216700334 890072372 288256732 776843861 549583553 824356233 392899470 998339807 524411787 590734271 397564560 603509228 3472582 30039686 258755259 868169495 81084454 85853041 346783231 929289861 383051285 219012989 767970538 940091109 586998480 505381472 356443192 172237760 71208654 212760520 961897590 388240096 855654571 1368697 325847678 526146504 332154894 41096120 99676209 515757565 322864611 831116625 119094222 560984218 561386524 295221793 157053395 155844223 983907901 337476870 424713533 392761705 593032539 374559361 415141148 517544834 914682219 337631705 450773594 335967264 605002754 233907802 391137280 85773336 638635502 858701200 717892515 620247341 286877612 926280347 806201684 950683172 319384711 525061374 139541197 97824326 636274847 798322263 13403934 136968026 722917798 48691256 602605582 446560549 572512909 877587848 824769001 853757420 696311309 795130657 846739133 97790817 110199072 145849685 745058150 401206939 775929953 826687442 666782481 854689868 830852398 229104935 80077753 722618177 360504550 253935281 934077945 103127757 353963595 184755290 771340563 1638111 594397659 233070997 53911361 568785488 793669301 983014556 589092692 484054069 982937848 912036249 742129475 168907743 772089480 963302893 654985030 673609836 889172014 270842071 847745848 670911589 347569649 110655594 782720290 407936497 338743618 327774267 92754809 671702965 328269414 793214095 401496660 917046180 2486284 171479978 166101585 355853216 607130059 927853577 722443580 353072412 693265369 923576752 917709748 354781012 778778119 407544399 597567306 874414367 730480010 429491602 998863387 403407408 220431413 788169950 194622836 286206045 531894399 880881988 3673670 49449967 707232472 295085002 25101114 86746012 382798629 989570192 966405653 79235711 250748228 298790899 991383897 857387167 899029033 883096392 230657456 733138166 212313940 711218859 708544691 505039870 15381485 75329120 840732016 979068424 928630195 541409524 683250782 367371436 497793981 428874188 634833771 221836818 926135867 823447180 824605498 516100866 360339714 96311273 200818537 831595880 545977700 883540505 674695403 99124910 761761088 404349979 22693064 270068354 761557668 154469260 831496110 263796987 166878790 241086464 374582388 952750927 497366533 904503874 634510041 781118066 312228906 327604290 913703519 48805730 402217441 944369824 801658473 21639366 453025577 788995294 667852183 401859924 500759806 509342103 998503604 723258357 946487791 41309318 788337044 252520193 131803235 153811974 738608553 342119089 777969284 469706887 425820033 910654928 741997409 865282567 894265224 831277513 548606962 6866225 505876473 715865862 832027316 600750300 184384458 450357817 460681318 762165752 844783055 577315843 584099748 106352816 412803942 495972152 721993905 115385653 758084866 443649295 134216079 25664890 328192706 548618416 927661008 566906049 960653807 721498391 972969134 454287590 375318038 736155317 372764850 655405182 651904691 418639256 23941090 53221891 554494633 515813128 93275050 691066181 898090868 134513233 183147966 868696030 57173595 953089786 124575520 31958656 727917476 39692960 100063635 815087509 494657601 477494899 558241406 436222513 404895569 704675119 615480518 97045392 374557422 810071516 753836270 524267282 959462244 542585066 648622587 679594328 409782735 994955454 796622947 477947482 480320663 731966790 812880546 927235126 108518057 650937234 522223256 942924748 255968850 671565610 996057332 670571927 1206020 736655003 569344732 589455628 871310604 104763448 657783090 811821433 289042291 745760746 893529059 105383194 47743898 148832880 454514257 241666010 126554807 409699383 399928487 956272285 986896589 904299143 308154913 469842217 314894872 406585235 440455393 87399594 483876612 103895173 863683422 799689478 388837441 475516205 124721990 289553829 364313580 262426024 915248715 123846721 291655660 481150450 871829071 162552833 684287082 833164199 585103734 792254826 531766617 214660845 399977330 459320947 665932094 399013213 398592160 39654307 531088197 247692480 839221923 170661920 133626155 267346462 163743345 844009157 61651031 629473360 588362028 366637212 764291736 122747174 447027535 302362799 264138768 734566812 163106210 631123058 161435463 604187943 382008636 727304073 263521696 662179586 445201930 621998917 892035952 929628092 505825952 70835359 651221017 820445877 585638097 184345787 449504154 805882702 351362595 852534770 130862070 179717707 281217907 52005084 118841369 211487406 89219832 633672484 429918482 452842776 912884465 613289279 568443606 208084936 783675167 359804787 282562322 389498212 505833488 379577293 426745969 624758087 321128301 871075650 948779673 316023999 698174378 204935407 414878715 700867055 935861933 371004126 700384251 620074067 495849605 314190572 479216329 701829396 475167013 351110563 41222932 781498375 778920484 124458494 821484380 491883570 150817111 612755622 939688679 444462546 449200941 729333602 900075860 258936401 744086891 145452647 714357088 611370516 188580092 46464934 265824292 716516490 498920447 512089184 944275777 649412636 763103636 620787249 831701084 501412117 186145919 490235051 717465699 675860659 490860476 751716687 497189130 390123569 616895066 570344397 800370791 181458856 253392159 272097462 840913152 343509342 443602107 55569085 48410060 327169124 484835523 423999084 616288927 446557257 720701272 502572967 336289794 573801694 280531157 192168367 35866689 286168725 654499721 960378206 204805327 921037262 209017164 514120726 282623447 931397229 855684837 547581386 461118874 775114172 470817545 436908649 312591244 291334070 910298359 10934151 944502985 271650584 796121184 662320485 64748057 344380932 582757488 907795927 342296770 525580931 149597385 718057286 747573487 786141322 612333817 447408126 6422371 897965405 274045041 533162781 584639575 534547655 86484218 896207185 661467164 705370189 667716807 935687642 438753591 369387369 424140546 592038179 42526486 218854295 522150320 350396727 816997113 433347692 143872451 656340846 972474538 729895950 359004810 73244715 112070881 947834610 317311787 916038916 307888469 898160392 222732753 632861460 293286147 586449769 888392083 284421478 908291594 861908474 627699883 659604525 175635716 450930292 868647272 583757156 454029390 48660560 160607386 828116903 436205377 468095112 575125669 404456069 300294721 599258585 574843280 986736237 578298979 779372382 708262773 713398716 790616663 381135425 65382253 682776373 384503534 355070033 883968650 742956633 834831345 394991650 522682641 165565097 355967374 242915949 432772485 922027312 787416360 481826303 390720375 250105348 264114147 278281626 138089754 977888870 667381788 833879595 262765632 347315410 972518927 415767785 365377227 793502720 966735380 644605551 63099751 129292 109153518 965971262 143116891 665250695 206445520 866617240 963781684 602797048 793525776 123418341 91866363 84971898 369097675 899565077 169701320 988377298 321315813 133421399 629532174 914174601 921112337 246202799 352440581 148689092 416882508 798540819 696277543 199899513 750242082 815403301 726924803 789248905 931846385 123495675 133900842 298000666 284221531 375612673 51486895 856692600 108567863 234815734 664226762 499200007 375308632 198749158 282274666 906939748 725637419 814663116 651135966 810679442 683214766 348941480 710067296 920533202 830989925 26588329 915344988 290103190 609736255 758067361 537049793 364740418 320122850 307598797 664758172 706870026 560091515 41341684 182204206 313487497 733299103 785677393 263923215 87482482 379111365 423466362 116596079 726198666 222694002 700927360 599213121 925836714 51007847 480327183 303948585 143677442 145524271 916586065 535876016 944943548 508740211 903009773 668622806 394781376 814832347 622842423 520613042 813698511 783103277 14379407 366412525 121669465 785337002 916777469 811589871 584018227 291738072 712124985 259222372 300717160 182842725 271136445 273097447 63466544 830499094 587376803 902070120 664799953 484350953 652584471 806874502 127892688 887007679 798247543 494734345 827030217 383649448 336157588 732894939 876170746 314683376 407199587 567908397 930735415 65919772 395565995 805453620 457227808 228714398 29539479 34742787 782296590 861039734 201858949 519275861 78735063 502345719 748454760 69173641 8698285 749206754 339213261 689991505 852058331 941778152 231006198 618631246 963548155 747065601 124392458 632708680 757559687 239425961 951665941 347152795 336036746 1866516 641945319 954627627 619874910 941847012 616826451 887425598 359465985 302428267 574613763 404959339 110240548 902537832 496222665 153722699 557452174 197625489 119471926 293051789 173630019 717593801 748350129 483648893 741772515 709896513 438939664 798509118 139210782 189215533 771349118 786874908 625754897 835666812 552334784 265127210 800255107 128642637 905883518 179063857 912800820 131759718 503718199 746701585 22020628 34497059 840033564 36879887 327819217 412606186 613606049 162653107 390460795 289502195 836587149 456121418 330439625 920189848 137716363 228596594 943607468 75595191 288539947 906831098 93333162 984410814 884023312 777329947 174474438 317268992 95446254 126521269 576563443 703406839 225260623 581883207 534758348 186500278 110987140 557608607 708904940 489826090 397103622 321681806 445535364 642079587 406824841 529843915 685736347 248512458 795487832 709767026 839351499 334651564 269598606 750947103 724481844 579430339 394741921 559026493 96742788 289508539 710086674 554311986 27614530 199834693 297638881 557777592 712200372 630293771 512631533 154097241 61869840 679486985 27201330 735279538 653181630 418731005 636926716 644955192 569960939 716690740 20425479 889667441 538888492 878556043 996556303 647791875 397685724 558070135 614153374 853935700 671918099 672392118 781448810 843039081 160294672 2918247 665247566 167393756 532393645 58796254 590645992 424254950 933997805 208081990 447159201 769560259 970566296 792473547 778131326 284772028 315958849 419973691 344252748 682976697 96326673 212693640 550127673 941302187 645531117 671362198 989018701 315760582 623058364 351215148 959274003 442028570 787435150 328170276 399493580 849192032 142497403 416989476 311869181 587282888 396638448 9413949 41850225 809752039 931301960 6375536 573244450 789868510 315440089 152352826 140987715 69128924 957205908 391388288 310134898 148278244 833497612 389924472 750077994 754506416 439266591 87752531 588891348 949782338 434392216 378151312 653592637 992988603 946167149 894239097 89111165 989290435 835974519 925634839 220533693 200467119 719957586 398979145 709884085 526578737 185743904 651859332 537172472 791358008 553512304 479028664 225283106 116054711 887942665 361292200 747495749 547539030 417052754 543593059 331688990 642518866 388575790 476336884 603237063 551723062 630345738 769799758 335480505 252421761 618441996 713873503 598950641 66559024 743932271 376509584 492588391 519722851 952007805 894170790 786760541 688120616 694478286 855752858 449004993 81551047 220135326 395843182 791621508 288633448 776985455 678501654 532259758 447755823 697204934 511617136 792285206 548393061 945446550 284614021 960127114 170862760 395511969 740512482 927362391 22297683 244699780 38697720 676847252 366949469 474265263 664788014 347541091 716923369 971335810 179873616 903377652 807926397 485636599 20800565 848996505 419581780 902209440 144980233 322019720 40597364 719230142 778927186 547336214 612275078 863387332 752804033 426426675 549013502 183772038 883670696 932809714 17078670 805543648 41755783 300292203 325494086 181401815 351163346 494230848 977076644 958319761 630793494 365221374 401117716 28326471 851342539 819362021 212696841 846492297 539427327 561595975 613838350 566510305 134788164 173108356 636878950 262759665 903945082 357197183 999545054 294282398 303960628 727534358 612456604 283273491 236045006 493461581 380748692 444966985 707434801 960762667 356561142 583432244 490109521 386369200 467918889 973407852 89724580 370836853 771485220 822638006 662911183 263627345 983959377 321502198 969272932 560886081 541532075 299609115 577625822 214025524 455297306 72312041 549322086 81693644 281462263 939594409 977520765 19038528 823094198 542948557 472357324 630698633 180747996 132617682 430620887 863905123 838621874 223106236 503231519 945805815 361179560 430442012 964262258 591911376 289031467 336443005 42164252 194083284 728113977 693117976 202825322 968507609 810733370 364604545 177650894 256249195 624424094 666982485 436359514 791366840 352177687 1549997 94311705 231174362 630356851 107292500 574672157 176900899 296947250 219850477 640898193 695601243 565476488 966067684 932930522 174910273 734806518 72104635 773476863 268480584 829598617 92243789 688760500 493267903 414712217 584001440 856765869 807953197 530097566 520069513 425473083 189782715 318234151 731154918 668884914 227682767 392659319 535634716 118667366 348912583 811545456 143904439 354056963 845003572 128504240 586976113 560558778 661956133 585152749 907862596 229443038 898789344 243034267 293627629 397816177 225823205 465348344 99848896 696493831 31857110 888254904 600004412 914095288 505072323 135478545 250583196 815001587 753991860 868675142 739357513 591561402 984529370 586907582 912969354 355124449 199066107 180834883 968587266 671496924 47365216 394730513 741220672 430746770 140613399 277785738 257717632 182513171 37137442 800626966 506161377 596435533 706443538 269168305 529091795 689537678 651602660 196044236 155774765 777229575 798256522 377569678 74401297 541972506 946436020 337087889 92496081 891926719 393300293 657790656 540043456 428666689 217250622 389735051 578456047 751730623 343487927 130567163 119922868 275201323 443232507 777692604 992647199 839734651 38100188 856815893 659011380 425078828 461290906 47571080 686231018 728643224 561007500 403975893 85595146 817423176 487130685 970340920 465327324 615379188 140712731 241808650 899095574 876128381 278251097 425769290 788913863 108760533 385376107 830807878 100904827 342440662 737252247 872731415 980114396 345182515 265023976 925564003 480557795 560105047 676412501 631545830 890567259 527715544 67686877 320551157 601930483 422785715 636165421 750515129 232455345 506052027 244518647 460422409 26978863 956586483 539767500 330438001 818745526 196574949 872048953 33139332 283233454 852667253 194118357 986456432 695857546 74495564 467601766 72460043 876816335 213675610 629390787 830843464 381416853 404210685 571362579 905419657 836812450 888446575 862555382 935427824 135211123 126132072 520725408 274512262 28360045 133696758 528573525 616088074 785053819 597725091 520665695 418466332 50443137 895936245 837169476 61512754 84880194 53628291 673114708 274255432 918701959 473720719 693410140 39278784 904799586 327276711 27430969 443483239 339413008 490791163 662866676 882581714 578779668 924883175 58582585 673768599 264259379 10266887 12366241 726232797 886387768 354664097 858794492 141643455 180968230 736236799 602082759 713143123 91827669 848280751 908734859 577067955 994616420 662809242 481799801 305908929 435299416 494216207 421034632 750384758 9929381 833386816 632744559 956179438 502392594 223040768 581720021 554014141 599117964 606453032 791665178 708212608 417535632 961502069 752917675 284722398 566499755 185984190 140411515 214633815 777068945 431685968 55637109 70549317 112841104 322728458 774726942 846826615 188851577 118912465 500242495 963441519 188522613 71415980 765631526 84350603 362598561 974359266 416317045 100366087 364163330 449292064 41963131 578645982 582850707 633136560 150971227 852072395 321511174 535044638 319865453 696941947 900662652 445138629 683925154 776564368 542268648 632954247 435429450 923952282 863418128 897990477 725092135 918266680 561001650 792813014 431512282 495398853 730652833 541269430 977449869 480962609 996604565 52718694 656107046 714603590 277211471 792277738 745037327 935166475 640943139 477546606 699883716 947876275 728829398 163135131 268529962 444112531 466519390 216031255 910649495 996677753 723120343 630401385 322205565 289641127 3740836 635780527 714712355 177642973 567478297 541659356 301607690 138656135 559768531 597814728 349912529 566891452 503567543 383758598 903944697 225729119 774552199 553434421 501183709 109276535 295380193 974286084 750546993 720978131 674412529 621676292 313438804 498674259 670768196 300510699 429402243 497227162 979516191 975054255 976294259 618963071 452641778 465847522 512672376 794760641 925781616 192127269 942239734 259349747 686236490 468935492 664585820 611672999 346643212 343632635 136403035 526201562 501131899 216049187 832175277 970453886 723200677 470907088 290154214 130861 428602015 96183274 383756605 326763103 946983148 538897944 716438237 986791005 742965058 647771480 927959480 817838072 161810243 533609698 889607308 989108874 683003242 104486612 503023444 129895200 151714665 213913765 530975445 547099845 139911302 471887204 965513254 271935258 520216659 309539585 928610452 136453767 783484920 297627269 273443845 845507045 190676930 451493705 674448011 124333614 182685607 73976962 977527967 222527219 508611960 681601816 149153274 570421604 886862310 54360438 901767712 21777153 702897728 56660726 934324285 465638294 233667539 201161248 857039192 493359335 107533504 854175252 789526291 89589399 84719215 390829494 281692898 990486107 953127164 981206105 828130135 588231826 652270906 15461676 89210423 735707189 397021633 446367992 552421960 778726338 343191485 819211248 292910703 907574181 812829470 504427317 864431174 930068183 320705690 277685586 519681611 237792436 594546296 551806026 470749489 220275837 717798867 126700986 143651651 158220243 153096377 177799 322975005 695540354 33976104 615146994 133236613 12123376 587380895 482786506 909810674 667527370 745536049 837145195 724706901 782873202 506808953 757347871 529507378 288186775 259112937 658535028 477003031 959728763 407551402 506326909 3359736 913226872 239163657 829808743 21750391 700080399 79725284 245330471 574565691 311746571 383054622 18419638 747821431 714287359 245978667 795284253 499656367 87332233 863074920 216197183 277346611 548233856 198584240 741211855 304937988 967515190 940183159 284639693 196080820 106661668 974445508 465282656 237178926 973319196 769841370 785907210 876244690 575065066 114138695 527857999 618897360 194052867 559074118 151683758 800191534 9919313 607010691 358059295 871221616 825166232 966270161 869964385 154104760 417115132 898166987 583727625 984829347 234357493 480489437 489069281 984552743 30422872 703512833 879108802 691491896 852361902 664067020 235966889 283243687 937286117 964699182 359931652 233692052 260771903 507942626 683036422 98959633 36296159 326480930 940748808 8243248 681213214 572059220 734459459 858576087 17695654 536684142 957798822 581781762 292627837 108696197 197055530 465971407 930902310 561005129 481581430 419106717 783041891 926825684 74070204 196500850 965598701 569055027 313783868 496716169 816398688 605063055 589818094 14352726 386182089 548362945 223854484 86385373 227837831 900562502 765979433 264482906 165378633 70654681 141689068 834052544 847584235 75097284 312915815 569668627 632051822 427520413 953623653 481546747 13775170 739896061 740108019 597845890 999830102 819995257 909137739 425547845 297683788 414325413 789978422 157016324 218066607 533231686 375198114 915069471 648380322 885570844 442657396 971835494 144371450 546993698 948986448 602733831 913983538 450810425 205500835 944682314 302551685 965237672 470635406 514746453 316406842 597752041 57973085 719544027 715757951 829353893 437653966 34782849 533204051 133468925 562711110 89204047 590936155 732319498 120945147 882058708 841660785 453751045 657766716 911478098 466498653 747098745 519402157 35473655 353408794 730617214 344667003 744920810 261417897 671536212 994663326 838601497 938961014 217317246 942360420 561352964 120159765 146865412 880948710 798443096 856672917 133877782 796791168 371389120 752348592 185249553 23335517 839614595 650429899 54873267 416875417 40634006 782574986 520798000 808953023 377117688 571841023 748076568 481533957 374224455 177188079 482457172 318768424 586995962 221401008 422145010 868114588 881534421 48666267 658949149 702964625 748566891 315146230 166662519 540863568 716878689 570825336 812095728 561780582 129361074 173465405 117440084 645325449 645358583 29034223 492853054 231905680 236217613 42175459 287621935 465200513 729757365 322915388 643752385 846255382 650539797 406556540 413660811 173299601 458254108 853964560 607892215 796098514 548066591 384430289 654392704 912220913 858786387 776269234 429842854 429519567 966837910 774195085 574509229 624519554 131193585 91644177 900348705 658790770 116054434 183087264 766778330 51249926 562557888 273594497 290591081 392325412 843959052 45659841 689484431 705521825 301450749 100926237 18070511 364976672 138350717 305679811 618408297 779479709 488932207 3873923 744818092 888665904 492437568 698312087 301023825 141847411 112957784 851643531 145574971 684098992 231594803 387749820 838766303 283609545 783304219 460582778 43108018 924750771 45508702 736338057 731668677 795081062 23613161 136315527 536810280 571962255 322223910 964429760 308260069 190565175 47156869 737981083 566208961 342750076 888972648 793306055 676982840 436906769 507225335 662575076 387525991 236117080 10937171 335900724 124303163 84293218 655470015 446963614 583139600 644136776 906337338 56024845 435608259 661422009 186716031 891765610 242545918 201488236 811020490 809160959 370356389 918773178 806478306 333488018 723717145 491449857 170083485 718488151 955458605 551649649 158373192 502817921 226063161 18739254 207004315 954787468 122325554 51464681 135460158 729430490 507374685 465129309 290202776 592519550 876773296 974001763 343146718 486910717 939597832 985735376 256573133 303475524 311241044 146180427 851321302 91428915 214656706 859036600 897263041 372459931 930337743 871082122 243726305 659193646 295914809 897616410 3224423 722502455 684451450 838357152 596507681 909688714 846984720 782846019 491366175 927171647 539951300 638574527 151884202 551081048 475895565 58503060 851265896 881068435 303527868 35754747 530808665 547954104 440515603 92790428 598848194 434382045 401099096 790897020 278088472 304942377 586341129 834158040 534338002 711186530 387288334 556881555 85629116 287571046 787890438 417663109 531055228 354644528 669414876 310361450 619533756 686354514 250881100 931463479 795037075 494212504 554597259 902718992 473069089 936749624 678983232 60954726 373043627 446088095 677817903 238007918 771456115 268992968 677931668 111858209 662783105 976675493 59330995 841028979 576895896 377747472 638241505 716970658 178510063 799861557 74904248 979648686 58307264 522468277 119030737 81069591 989884147 218720163 615331471 576537574 492843871 807904361 233284706 769851401 66745864 701326742 558642784 174823321 103297584 376550993 124216860 640836423 66696394 786756641 885835672 545785349 19510797 499568988 818305404 394637911 308023660 734464058 762488119 933967136 68842724 637122057 619237806 401523517 715367830 332855006 475010849 478338379 160435803 985942152 56065761 802452363 682852899 280621282 315667201 268460821 24063432 543590884 679334375 638616108 664759264 699864345 991922190 289534402 707152376 224495116 964775038 596427471 358423354 844045188 807073338 677116134 627915525 746165368 288923451 174269944 628918262 966496889 349914657 79855330 523577813 181433407 848685844 208723822 429021659 314754302 988653974 330949179 127121714 530551738 190519971 669052258 767453355 670355351 874313279 96668500 419240276 483244805 856449778 756429550 217369913 265364606 123258784 249165353 459440402 221840206 379925952 789454668 93293922 255531493 923360109 331396060 884569313 106951033 47779580 802986859 927899965 845964985 618474747 986374136 988983144 828356243 358155420 154272221 709064038 736267265 923214912 31792289 847324588 274265972 349262643 365494451 477558251 754850964 453672546 282328297 926626130 279197359 589475961 8753271 237338530 568089167 489025322 605933922 893409623 769081627 663662119 640036929 55003329 851685442 214468857 689218334 787972608 516410839 43250705 989511099 580211521 6120601 198641280 498917400 369305155 173677923 851106835 551824665 815463982 640478694 683206492 166427520 72560468 620363768 597706802 889886125 576994701 104524974 501531574 543039430 922577952 839697409 162344597 406610699 370589712 6671199 351941905 973644988 946123254 511057414 255871381 61667530 369646247 345624069 953916682 746863210 913960984 23263076 319488392 538515990 205909590 168770961 924610869 741254929 741103009 801147364 450242968 941829241 609379938 92000791 815248973 937497909 392506564 11721696 942687562 736586465 543065661 454276953 895298127 361012078 938123000 838234100 57602729 868828290 413351925 830214252 301012571 233735912 857740913 53804811 564188391 895273865 100740816 97298381 350797129 476713048 392801596 810139413 485865593 23093417 99432085 160773902 636804619 178704085 543180201 667834329 558959407 223146278 789452998 292512627 147027757 558184453 93988643 406013975 571740205 493034295 298353438 559136611 881772619 323233901 375453441 91325299 332874637 166418792 165039096 16481849 340224805 858457843 642063451 116185969 470765311 700877539 495172372 641096071 628362438 199663203 371006498 857559613 616266678 323633309 85435661 217177632 326811627 694851920 493248778 588109835 666633272 460768882 319236941 134437582 52481469 179145927 655387627 280459172 844755740 171461838 383575766 144138860 52740200 966921373 397480490 643209401 97978808 15444156 338948925 667181381 849805107 620348326 210541094 631673104 517898219 62808336 464006100 898881155 349688499 784761893 585852805 729763689 531772805 131931475 490852197 330226681 728811170 886826112 44133683 348804490 219804258 375204549 316847093 922103575 397662360 727754301 897588399 813981841 741486160 56471010 994149001 229157192 807471037 916189934 145686842 908532721 418584516 12327828 514017820 130112027 505450384 443001098 422519347 420124811 974961233 249935212 546230064 322416644 216785618 354042594 83007387 432856520 474089992 836956481 296929394 535079506 781553959 311056772 97042893 79927218 184377431 680385818 524068749 637290364 469983839 887249084 595229884 713212160 720034418 923422816 765447186 532494192 884612475 632876381 22400293 439823003 398996210 928038056 527068432 205569259 678306874 222998700 666848575 344692310 964018943 273883121 579948176 68733036 51100468 135212885 48231103 620085652 772974719 926756054 493848335 884646734 410840502 243232839 221158869 319620957 444766332 255030397 23446444 91439470 475075307 340587013 415024083 451848788 688151193 726105339 547408824 272534018 472967766 992549384 566459440 693720873 774590063 871727147 407760463 345671919 560369283 316710397 176266187 54953841 740786302 872440408 524705372 146301292 557466348 325684510 660391091 656899308 200532160 149731416 916921464 25735000 700362031 587629479 611178251 460219176 724979997 531859857 830402769 849823648 11467219 410749259 174732244 53535557 802038223 139462828 292105358 50576415 318067652 589987090 342000563 275791816 942730024 129629148 276387312 896527787 988893097 15942982 563486012 892703139 997640363 142250525 772049896 942381062 976162143 384148472 509038731 926173698 23392130 394839874 416130995 893503674 790671191 587057557 29361101 711402631 137906280 535315920 778706173 658933968 70538567 634131967 287168952 449434028 925418558 102500220 313857060 677737413 340139254 575006430 33269221 446474052 579160826 488741277 822530652 573508456 693950246 798405947 649474642 559012551 939655262 682005954 952763058 443456661 404927445 648906018 145988406 95821206 659273084 220009475 201370747 492991939 493572021 676424789 21176300 88695705 184809393 250597992 465880901 448108673 509824803 345789119 185342530 307774793 545655358 210505096 272548008 503953047 56645599 777031659 721912700 54454854 321463364 806640057 234999373 810952228 381316776 350706731 483752847 296287260 561826258 361893354 949371869 134272049 449168366 623065550 247124390 606349506 238853114 488432657 239679584 838360572 737237331 717376054 775858605 316496312 189314750 654279849 36372101 800340261 199858538 678605582 788101776 606153471 101543911 86376237 506624371 391120696 896254199 403317965 683727708 743956286 372636400 399714476 769032823 348593750 958401111 203421672 832015574 623165389 674223295 845504070 619561480 176959607 514165697 630415257 661545053 409282028 199597435 740207079 766682892 998153158 575418169 922093701 188418508 259204026 404951032 106660803 438105421 823951658 639212016 20121133 325194966 841385577 378596534 558569264 318060393 284554309 586650387 699956469 417301073 135434824 65396770 774695830 936382680 50400498 948034770 901580402 701382578 139582671 6971417 909418363 520890528 830728620 158099435 889630018 138006154 787972488 304343567 396970912 590358158 575424024 88631230 771622164 862340494 29914377 23236357 719605726 690986745 342842703 391362917 178431526 107001012 492536135 136352287 328950535 860396209 612081 619691579 628525959 2691013 242876358 969091065 189420271 440641103 652351262 559180919 556884359 589593066 624567651 76533092 804514068 891194923 571025977 874713712 883142851 856843139 95376657 432761584 113504942 936109396 337437255 823427968 580852898 264043782 677054364 620398730 381696241 544692856 904067809 409902580 878447527 515897014 69284616 45552426 505653871 368325303 521184242 593441687 829615104 356571366 778277714 278176209 213887228 22791370 363621854 741869669 899010730 119665852 365046870 769371642 223192506 557808923 303007202 264483322 145859870 654875872 663739769 188946802 333762701 732666990 817351629 192340026 410741527 884905380 540690271 362419018 579020936 434145591 145002199 478348786 732759625 26682566 447535064 159820830 293296968 186837383 569451074 32880886 451904490 176511252 390586274 649631039 123621231 600058208 814748809 430294367 285277496 720000275 907247690 230110717 843870088 179222293 715388953 238513629 618612855 627165737 470128279 438873997 260780779 228884296 736532685 931764784 422556193 595839494 270012695 429141265 108621194 589611779 245059292 722108044 486932521 21144307 355284159 839643377 592667997 423863129 382952451 219780873 743418668 557343723 270894951 511027623 337855599 727737109 350802599 642960988 504370497 753758058 685835562 573869332 814406539 534505922 177584788 690163168 156646298 261758579 66203984 82935714 127732726 896347550 372884229 289873559 564893869 356490377 168508873 413809206 303751624 486836545 867785000 922244684 90579266 559403045 864093104 583392400 616914785 245866202 875586817 245545499 37244669 139332198 563764608 386726309 988054803 974166445 305173471 195050842 958614688 667654040 813407860 452153290 117207894 496953480 804425606 998340944 957304865 179780111 41191996 73554870 930656537 342422187 647229189 561511932 450656368 444280972 561676523 804468368 198720681 6355372 450436539 580749168 855813781 118141800 638611115 898833994 611252172 481602017 758899777 936433178 475239788 223848976 657951822 128958865 895642841 499870100 175268470 484012489 114439764 362218791 328138014 496343707 207231163 587373382 959997561 970283968 459545592 218373984 485027094 895071494 159111599 518140229 55261931 179529217 956874480 583878001 491326519 515103673 972909026 636979183 919417152 832904695 915798383 454488497 861191761 615539813 466786542 109708787 494113935 833618765 528959267 531885457 308363694 259930915 513979072 102225046 927242406 339436841 898770780 277028403 189191395 680658497 777845955 36680664 845175583 200539467 852041999 640574214 960356525 322516034 943134886 3601988 808903182 834881047 988915923 301404333 672974468 313476891 414321048 774003477 19250943 874895486 962622632 630067529 514697155 232910863 838313552 472871533 504537795 285808246 284007500 409140965 493917450 111355119 236848810 392841567 933323817 70780578 815487983 747503312 285917559 453362397 401314771 680517511 692121344 643260996 785395122 791744906 510801793 533892593 335902212 555676570 564904769 285763544 9498842 370119833 174496474 643630388 710405684 888541568 697762537 893500536 309633000 3023086 553325969 717449320 561836056 760530786 244631923 30407583 201033263 238564405 481890889 979738534 204228357 806090804 793263988 929055503 980213212 491011098 817436005 331354103 621410475 403898848 403787160 399223218 565226562 684677971 582043891 928868786 662317618 489254857 386521656 151221522 929607668 861857015 552687014 830533023 636543392 694986017 323681093 287935074 644051485 795603351 409829072 833751440 159976817 661025181 159828326 26089275 876661327 634833411 425103161 81657569 699148064 707690526 727136337 848518839 926970417 893807996 266598483 97061084 168012804 1493986 255104750 411925953 460495075 733093541 676495768 904644979 974641791 592484665 209093271 260499878 656169195 334842894 585331365 5681862 451085153 510907728 898557490 339824865 169647399 819044853 276782532 691912132 930478803 697313515 365761551 330353261 214210090 619890330 230908337 345563072 767108500 290540172 444114050 997794850 603359701 911450872 518688123 319726530 459145651 499970174 956385974 771295580 311961069 659433680 203620671 482074645 697297625 513527244 222286807 640181532 907915001 866395468 448884358 245876833 364986078 861775606 641931551 194582456 505354825 934686064 301065531 735220097 142089040 100889854 848115574 505317129 856143944 914657154 902856512 404482077 623260735 331455886 264316843 774259299 476091321 739018595 805805031 210107960 948406190 48126232 428411522 378702600 152367794 458275327 295391295 107752240 126640275 233402285 328557698 205903960 587646111 296140289 544608979 394910255 644564308 805541201 809541307 937182202 197433077 195036442 27032377 444720878 400433420 147966828 568424083 583896545 135964805 479018460 389674618 350696067 554516721 717039308 944070404 832092505 747744723 982215753 242232095 724088940 36138526 47120495 789014718 118640165 709572498 675448924 300409755 795431551 437295375 900511096 940857242 354548259 511593615 305033453 798687360 925017374 908525960 15116809 991588190 742495341 106160787 304541565 668521838 984998156 717140507 551250115 317746432 477572739 949258165 35217117 766344253 765487678 404852492 51021938 517330411 240884102 43372686 799035029 677647135 596869602 115813858 389094019 271186526 210177040 647425285 440770396 643327522 232211357 484816656 549433633 379882536 246827231 905189893 731899562 322611588 590128089 696759592 660970249 834113110 770508535 870952938 161344367 804988048 619064665 433007620 231904897 36217865 893390729 866420665 422625160 121054552 54767315 584629056 849661575 474657942 520701727 839678725 792070789 847986029 753898823 509036531 586229716 541736995 411001649 97526533 326885009 864405894 446223982 121944948 270072412 865149622 843624674 63048347 913710960 679295495 100124953 27827644 894189095 68440490 680151488 287927793 80225303 974032136 2029876 705193433 643793778 402856563 995702648 163814390 964292899 414620410 394097178 498997461 360700547 468102178 786798345 248805716 76322612 997734638 118459373 419941139 425775218 988143453 292341841 2035794 124275502 859108931 614878913 481257427 636069270 818540664 616806482 658013823 876051319 696350469 709663796 740585082 776940009 833113456 970368278 589991551 349669474 892495966 189273109 75002381 233537582 445047678 616566732 638335639 445919760 606525963 237328360 782147783 629113000 198345288 340867535 141464611 574425756 788758918 689477277 52946436 126923542 266073351 916473172 577174970 554810099 107718496 74303102 470461572 248259913 165416291 24338242 453979219 91421023 325461019 50675491 70721702 519349835 944529642 210126027 205241061 153930933 872638743 494379997 289585718 690213420 730658707 215845303 41744761 666011609 929386837 289192659 551398303 902787068 733762592 129411604 549940215 512413325 56824967 65834118 483253273 245602618 983942014 184435539 508219791 629742174 272277636 353229460 84995283 178803557 32794744 862845272 618579558 255909386 378606961 113664011 339410563 762469065 277237546 754039782 336422690 945600138 334594119 119655734 548435728 975489518 832919935 896899123 177485734 263284173 937584301 752202523 21718537 615387346 166373877 628884968 506865031 661850516 930763496 860796993 228416476 981257874 519623349 34857381 108366581 577877458 602508101 16517026 115856094 772019645 85895597 273562253 706556728 778071565 613609989 6515325 78273547 138445473 335533524 856669740 176777335 571207852 965264157 157366680 894094029 265673519 389967168 716656447 358488056 985808445 953201591 504246215 980430990 667670408 411268845 177361710 531312880 547425740 270778020 642831065 532872393 230357420 559920570 55681181 421657678 483236849 721450757 726465657 871569898 37167336 867538614 455389387 592335397 668503620 714409956 307699745 500020078 728478381 114661021 277360882 131088814 657604922 61950027 262742915 376328251 105585764 337705504 457570679 457120314 478406219 754930847 615499153 232822488 968967153 174769686 971638315 581452523 962725031 234832932 605696561 189746022 337129428 376256720 823869460 833521131 925637966 2030628 60440758 843077527 177991854 201403232 972457164 516944233 831378000 158354403 567120467 421585388 955049817 845329921 235504203 649158510 402139542 389232494 296338422 703195010 358798843 794471422 127440936 394242409 370317758 521036361 861666262 794257571 795781353 448136995 444803360 466688791 455125300 480968346 41713920 711761411 368765491 800997776 278176894 566938725 469342079 374656190 778949830 432377757 159176454 166190821 363185603 863062390 356544054 881982158 760294859 736310353 467073802 530565451 402636276 370485853 284965352 852133641 853658771 997437818 807935885 853800261 950338285 723617328 538830802 429542678 393062028 788874841 546609163 263886252 877999241 916065234 766127886 290641349 970119545 760651456 706426024 896959964 147060740 616218803 929987132 698628154 393089536 915198342 544056896 545059132 225947460 343404773 988084724 82414296 513044515 91064643 556493084 258106559 909755127 315007383 142851655 106162566 851102700 365549434 578826822 175027517 622958101 472812962 934882290 980240903 856942081 626823473 412144946 457777432 912657374 347773579 954210107 179679087 287453778 423482624 470916907 38207411 315497691 966656330 108801303 518862239 955665743 564154082 122671227 438337655 806091456 855372884 133136261 19952976 961952860 627554497 10278357 101325094 238890887 463706273 775892819 828923939 912925098 416469129 228463941 232208685 205150913 559101209 984164876 430707468 549370477 376200594 720304470 759001667 902532473 883917503 314180361 841845606 184542689 627078573 658530321 808778548 375496584 59371135 818468096 782028855 166088142 644623056 244337316 141921530 347198881 15329243 175535351 620382377 349003732 79073154 389043250 588964365 724091608 402707618 455954979 792270656 746262781 864302352 86389875 742838651 134048352 858190364 396628503 896664627 186852335 134032350 361392285 142339147 161682810 911739790 598963174 725018492 426375562 626447427 455850614 447130737 514998678 263808973 111597329 751040396 229188904 704723998 596937435 462257490 346516223 647779866 148024764 172774211 735812745 176769937 521818889 79713269 179667905 465082201 299295829 931500908 3947065 662566498 466226197 437097274 50686140 997072951 26147323 399132611 708668693 719150929 355413985 764263589 975530006 693439068 197028477 724313069 574461151 917092824 505925294 95325969 260562683 95699372 802752214 898682660 542357668 190574106 557505231 841230986 27377044 219624326 866698487 775084303 609875575 698571454 199824100 754105801 60044651 937608161 184409813 60321069 487819976 513523569 86214063 191287896 190051681 126773253 837662152 560797171 436981715 591174634 936176314 100562764 653283803 631520736 224820651 475469136 943816622 711641004 604015007 902964122 731995299 988781587 392236403 283912826 57170276 249176387 825560126 344496766 189720001 494241450 695172195 223122170 238709640 430661567 50954867 644339633 907347517 410402242 450549694 874794245 110612153 807667057 113844299 687063431 596883083 393492463 928134915 586612860 891058807 103917188 60528339 836478483 867255587 319738233 955400461 868175776 563052521 492858152 290199983 515004759 373543967 260508814 607037316 949091922 105303054 811171003 656288202 799013210 116447545 853525090 59938108 257664489 870304165 183105579 186237771 775944584 506811702 466693879 701346561 855500848 382724626 848797788 811291120 172963445 929606828 737150618 420870711 61880948 445256755 934066299 699957499 577671083 128563737 202496181 534892963 34603852 892673353 964822904 929513756 886257196 244994046 704639005 499802224 70506722 575624856 6269800 183737778 974351762 907043996 332154912 250853785 68229771 325353618 213269129 294467981 398364051 774750870 55028526 531677111 558595440 639632571 975142583 297983729 154051114 589977760 354877039 343224887 228327826 235571203 884804010 301993921 138225660 727881415 773539507 303361190 783971149 998705984 823486412 333556730 401111138 158767511 144417969 753405881 952929850 515082839 724284718 211652129 548136707 450324950 101227518 613949355 291276840 787431762 807595283 381819246 655872196 912384776 286938139 283090828 142456744 209978589 227306761 894620881 73601788 649327947 781962059 852911536 234679444 930522620 679539144 986807317 281866007 9337336 409313165 876445363 997930328 278385969 848918766 126690638 124803656 432604276 697816517 335990961 322874475 910074475 833040772 387450459 201780318 526640476 810979495 174737492 981001496 787677965 258763156 854317138 703637175 747333572 897848484 374833194 461017323 496398045 773348240 126942517 173281862 56277835 385101842 344175715 443354168 574638703 288138552 866264525 507925941 344276869 225470595 335589818 971760342 902873378 921611371 641724546 378181111 200514366 346037170 287887052 213818805 168881488 99348550 27117949 323393439 345804771 172272636 86521122 808608436 916008959 401346764 925718687 497185628 559438938 885516514 222476776 138296942 311054527 671671124 698193539 803866165 738798650 176897009 153291431 725943725 880972565 300467281 756747933 34712052 281811049 439480232 473401627 359176758 232255356 305072909 973700600 19049039 656179502 269459818 998037954 273596364 160438753 291747326 841221771 440768945 651836946 905349943 343242046 347724994 306933878 300281951 525694501 40981828 312511387 815855923 802908203 637631134 115242838 237663789 377307165 861980189 985605824 190913479 854057523 932716132 753864875 917937896 209712458 601635926 435607143 130741032 463837265 170662579 278167514 813449452 132782788 824209584 113056807 495308122 924522601 168458083 244713291 992563135 907132763 212094828 100071392 193910051 858222819 203340458 255875873 513073500 220018600 431709925 530963287 876090130 77093503 913006039 654988017 625413478 513520327 901439409 384524251 217619039 445529572 905009832 683791580 567855879 837941959 320576074 546995517 154774486 688955408 928394853 78928401 303996924 680309501 594714637 22736517 925894265 61396595 494043805 877515421 195350516 435187836 656051871 243276133 93402369 354383824 677841992 429556077 301252284 857287315 620824067 273786101 684384886 521890348 764981372 829097125 137390347 211280678 359835434 267053198 351207807 436106310 941868932 196922437 71401777 207797700 998987300 519581615 126238769 516332024 223940378 472415005 297241490 72787191 970069407 638357121 544794985 466064835 903749235 419570346 686831369 785492507 489193858 742205603 263050285 601421518 709215446 173913015 962218710 462633291 263531899 699802769 35170314 391047800 918600113 808138335 483817421 597121120 403948177 375972702 381056576 280278815 459111739 227599102 347775648 604824151 85454104 808924016 794417962 699912904 685809464 516359623 628141122 804590534 690014130 904258610 893884125 151851937 133918859 294788564 930448174 621275685 981287556 996561556 198349196 92999029 247001584 175638359 626432516 359918391 600252028 220350931 578796804 817935377 453121873 978380612 129790532 2973949 468664157 92163108 742061243 283458222 125965826 557755792 847478838 858846442 294835967 276218004 147447974 530728044 330230188 829131833 245367285 482236463 240929359 985630560 635956425 751782131 599942885 183420352 180210358 534065232 233857022 76098225 277014909 326443042 120598847 505767852 417418679 180790872 47974467 824270313 148585449 143281763 876155076 61481565 914095304 105934024 750887751 979134850 268291204 947091554 115990252 906838556 208020666 335364401 676952540 338475327 124105908 767535924 68561054 544004774 10029372 60875786 904824276 418464132 82266221 357637551 542851823 836834113 799805700 902014625 672593139 419222917 2793798 348672091 33044104 448946681 991533164 989509573 333099486 838148931 455077614 252007961 382940864 853820652 653092740 556810940 889682376 728319152 243948749 636649370 849872496 554089808 118256363 909694672 86512344 48569006 597616426 683814565 636738594 272429762 811471668 807102463 594353446 790701037 404347729 811233805 573113164 23883787 168232527 47407529 320416709 76714063 273344799 849315952 131391398 459636066 234442442 511441127 542519698 555095045 933522449 103753877 170290282 255696844 344598081 265636498 443666239 314789246 724650845 439317363 755104443 544836752 189407910 565198584 90253297 366993938 944048400 194670553 9622118 995646754 883123024 246166109 818084216 575855693 57511849 177415233 159292091 553197382 622193951 288969987 526989686 721439878 661369826 132054132 206176367 586486471 487988866 738593315 408597769 864432752 614081878 592820535 656239914 339574300 562787824 279227538 712277463 142755108 808460721 932246658 477158835 998717261 287866211 210048355 809566270 774390336 970487077 690189767 285980918 913044323 907835899 911650335 734813391 931361763 816456316 826635318 781810605 855430142 628016749 873103638 614099773 718434423 482220233 594097438 426892136 157940933 429648212 188842259 310040599 863156352 440581821 728215789 506793864 947337741 334546780 382951397 766428594 624665916 584427019 543740947 645256819 84349806 510896182 520520407 375604695 577568863 520776912 284076194 181681301 374289500 501921217 320605763 312375162 512974676 158501766 319550220 756814220 353544838 896576126 78530923 441719557 90129396 109940748 746885531 584080420 435548711 422717802 75566955 538000441 319566594 706905732 948983734 205146624 490464916 386003488 747552746 226448724 573869431 845969023 759162311 480847376 448451154 720219454 509050648 836129345 499386377 534451876 712356162 888956937 692850510 480159129 563480895 550303599 85325374 161176007 354931545 479642663 287984866 927415431 40005856 656273343 880659149 845759366 554323270 563407995 654148557 393028767 68565700 905484108 550313603 635450964 597927145 454183286 37070278 390434140 294620277 501200396 806937221 628723546 110613131 750314507 224034765 653942591 895267602 548348262 348423898 110361788 547922739 142109588 495699123 494134810 727311313 827614544 689210660 902665024 830073152 710524718 902858814 801971450 638902633 507126444 63822637 43727247 853465893 931298377 170963339 496095493 682098576 197184704 606837196 866194723 728074663 459092213 419536851 955313222 87848675 177680787 522015829 348274407 659526146 407067223 468819692 595646011 135117078 701920230 508958857 335748403 839717033 834027367 662676278 509731808 809199852 465475004 52147404 231540064 108148020 400976729 122312066 173103227 972248485 391030425 447752457 881186904 644942892 539675489 842832248 168844342 827017372 866463678 795652949 159869014 811198048 788097067 187227096 873251536 424266914 385891514 838511181 263347976 177843605 797712780 506767089 372921843 742784558 358894971 891291946 180259620 465868247 367087389 610125204 964300242 123174238 859679177 647411036 322752638 938241079 152534699 555070387 726538592 829432142 584783925 924222198 22457 290848293 803332016 1709903 592686605 895691655 752395944 609554242 53950893 392940374 976989841 112627392 804863873 534635283 723617774 840225462 5905334 963978392 76157976 617404167 299602824 456875908 931741874 457116026 128132778 611901194 802163530 866709047 257206249 156607195 764323611 289999716 426052892 981951829 794726992 902606018 673912083 576636883 504106024 840214818 109206537 499737487 658051662 571089543 678010619 376225502 263159630 785372026 796598817 277879664 694350724 729106205 590048063 483821172 677018330 52470637 155320770 406506811 411213196 982254447 155535433 655869589 912740893 5534848 625072868 237115237 202487367 762716246 862190144 149481660 186435402 617833276 519540315 452131964 702616782 808662122 942511889 978527144 688440554 958875807 516265193 982421212 507415508 706644978 632788785 229480377 230661387 682272319 963915238 243989499 811592746 520946219 47342800 868242784 326117042 57739189 597265153 443038509 197219737 418149066 238162197 986366943 202683644 871303871 373666764 954608714 906579824 340117721 511306790 749366274 40454820 469321851 75786185 794390928 578352695 152546840 966166441 435986379 743049333 823248767 157845939 604844654 332489583 821857714 242168234 569882661 958993801 496062069 38766253 667092119 359050717 54804184 904557058 927007544 75375311 707524393 795273624 460090545 570081025 215876053 884460794 494481352 962615213 177435271 777845292 493153104 366957485 249913350 34835345 960931720 530923493 581149780 428303843 548811538 400609092 653251988 20385488 830881154 628567438 792305543 325209969 575444526 430172480 171482566 941910146 111776856 87575019 45934851 612181712 243210544 688845799 243411482 540351913 341240753 719528775 330178450 422594422 365200895 610110258 226969902 834760007 996296136 744224970 275838007 351834836 240791496 502478804 694038279 139206410 242018083 46873442 735117551 608495830 454317526 880430027 322146856 259175245 859204305 291312166 562392636 784308022 781059152 276412863 920267157 923437718 570068102 237642624 663776120 826734426 483226843 610762616 856182556 458193679 365435135 910844145 865504369 934902339 981886144 201818144 293776806 871873569 662462872 770797911 535930182 525442187 455821032 667528596 153165195 88680260 471809038 299560014 182757220 120713884 85062499 484178272 442645738 752704283 278871690 854288823 321980376 383165099 3247797 821314465 164207815 498430667 477801543 882493299 920257745 108563824 109183310 226327888 528147792 161480920 247232245 571868475 425012022 149709356 306777199 85609768 851175491 650704940 630009514 624150195 157011143 889789109 559957436 960854775 605506430 820328920 363140390 678724782 743337524 32313828 766470288 312082332 134077454 449863672 906793361 3127316 210512764 970939970 394405567 994322488 133627586 15066665 27120822 732326541 815390240 950033981 567561662 156770909 489355427 498684119 486711340 431591959 889260841 829701191 771086858 811621914 486804134 45475712 527684502 409255919 463042751 819116703 396293239 920815222 438855190 435426986 73541743 34252921 406026762 123967394 204557492 326801132 318516262 634773961 383151084 868952344 52392806 859926316 505387143 398666036 353589709 944028670 468562996 288272073 538799625 314892826 239191676 683602943 608980815 701588383 686362281 904500073 28324364 549901727 785527236 585359067 610786644 21481754 547232282 503058730 627824146 845719372 198036855 27370652 384638481 22259280 138635417 966490691 531558545 915930022 335410619 196548934 930167527 601810731 146006129 726718288 473768619 58575826 681116036 177870167 909011509 554945933 177405802 346139142 63585342 402316254 778722242 853342778 44777958 332502544 939478146 283929745 341552004 828658149 161688313 616165591 532931353 422281215 650574266 716105680 559267306 395453163 29874629 850661944 349195211 496864372 915699130 456704504 466669033 548085489 657387520 13970228 818201443 277117373 965064541 135572496 81304517 902256934 953985203 128043300 294546233 138770283 741980411 743566497 453913283 120979515 363803806 845239744 698779154 821615276 360086859 203312996 606813859 263173301 253399485 39813926 811214442 65893185 658198078 683368860 730471762 669173993 105237354 753878709 504389391 777056157 608106163 985004093 568050309 643824408 58005323 225800305 939354689 683938092 632570446 932407229 165055484 405366599 988690607 257901688 180396438 39542645 318482389 303673593 448402895 302447619 905548785 659256045 931356891 257844752 519362514 176024024 47077689 663575907 642428911 53832489 94572008 299674683 12943644 761813044 879093477 306136104 951069429 986005474 765269714 192545608 485870339 125019931 960239524 339843200 401306656 276316056 832017128 616847645 594490128 838388134 938921114 531489601 429359513 606488986 856111827 854331553 838892212 16780110 779291302 826673974 349362893 976815011 732340758 131984436 689395966 56734749 344593274 771542378 592791207 518796981 909279700 622444331 353423004 988209592 832996020 939692250 310906317 848873974 475710174 416987199 453679312 452597746 180038201 733082723 500401293 841062918 925929877 294257655 418652952 528080445 389416854 734896994 340541248 219530785 193656269 16847840 656673866 843263157 44969132 958286306 8584595 27740232 504303518 247891292 517463366 535021018 928219439 394252881 914563162 650898114 958221227 102526913 237914530 15838944 594056301 776502870 755008663 145848273 495118413 34623798 730247658 554721116 597588539 390040005 725963428 828129313 185635152 237847585 489624617 900558676 190518951 752362754 7258303 128716756 943680120 232361417 946942657 703793629 507381898 220552265 43805666 378771761 422106842 773696589 977721288 585877879 170280608 141819072 548901433 501281397 567797590 987624620 865451869 64409424 64708311 59823420 588605991 541405507 120666243 822992687 730788994 924338710 888940949 834100641 808366274 16678501 67301765 45316475 178145473 196120526 312544375 343357543 434096889 90094442 443367253 107918803 946522880 808642344 28754947 720822084 293650594 418501827 221293857 242730388 857983494 762650099 196605562 247273298 184996642 541944504 501301910 34253587 216155357 462254432 757118623 498965232 236574169 575696063 413092395 250991620 154307393 724095171 574729605 579006076 661287410 5024710 630482842 612690860 688542681 84062649 280676405 924881967 165771030 973583473 992173094 610304887 391830296 840960554 667794334 744598034 880865539 956604764 854734846 736354223 943885307 87146998 604769225 75610181 849590042 361778120 556840802 487749347 191028152 680775708 718985363 104054121 526929782 805566751 720300504 352750511 52516736 245782519 238002094 87468436 155184749 946454820 81962610 65321821 928912926 3506387 235655992 702083471 219004064 564844551 335364978 89057069 229795396 125668377 680448605 50088972 670987300 717143966 650626914 114168223 470077182 672924460 338815372 41216886 232661229 402107317 925329084 495941732 635683823 916302841 275083205 653280945 933717821 943776506 86465951 920891967 632413120 177091079 744939626 238875770 612419470 642411918 453398694 974620973 980931404 862946616 431175540 832230484 542851687 275342771 940865985 92403248 4256719 240641180 959777418 484252139 445220770 339411187 194415804 680197215 463870255 882877599 747260035 359236227 301597407 266337771 942852998 916689730 210632894 594155580 866222093 760272402 704306933 612036292 440548389 936442673 609816926 249587921 882724637 150522187 926238188 490954117 681581987 817143325 587898981 629577541 123287400 814884089 456553571 698975825 95022214 519583769 530361044 762912033 930403233 874127874 935241167 242603616 301875304 842836514 249751594 823773453 512830822 411573131 60073546 965203044 139731949 605488187 526218278 856126617 973384464 974099405 600559542 273745378 512637638 755335413 20619292 734131092 873939880 558907378 164641451 426438339 566019520 196245154 758909084 984918781 849543508 798059478 788362560 717932455 362313873 232016789 740371250 77259473 689916835 949454073 314266144 333291830 998638597 872109563 384981898 621025125 978606126 177660284 291405966 836215722 760092785 38277669 41623516 1470239 303339533 955462956 606643767 150262161 729976901 847784930 974055497 841542022 308460006 647877951 412339927 906197930 996851200 978372144 18605153 468346069 456332418 725372342 24353954 697160001 745669580 126791418 261836348 999906413 709940053 627966662 696523269 464561466 787415863 711896868 836087134 16024134 463686619 906249354 374410807 645911059 720566724 486945967 732528823 158832372 443622929 934390947 17167261 237927294 776612714 89048263 459542558 768100282 656239656 255569507 171511569 644589400 932762539 695673600 218411402 341969659 881936540 315341195 568025425 437970796 325506564 491010242 946887419 513021975 755030852 878265801 894917398 223333092 259881244 158646863 258701567 600223840 745281856 67762469 173533597 530701008 368133820 651370218 286650565 279633181 329716662 174041851 496845220 3214626 32345165 776899852 463203946 662335097 548442813 750912423 73755996 502557 726643781 615253835 968781865 105829359 899857892 158697790 704263176 778019283 493414193 517837464 472979657 750916740 869816961 373070229 702694918 300756445 367384875 120509102 99273412 296239942 256629128 297849800 967697449 442207637 467973497 260703076 445497129 98705416 993121950 22106121 992001779 878143635 632963349 511504682 67932382 256572570 948088814 533885603 155660551 400616612 134306836 690488825 599699580 807311650 739546110 277711550 322566628 876267655 217367336 520362022 154865340 773822443 353525045 139632616 152475996 730641096 818143331 622762743 250434060 860110552 534593883 104067200 370166690 250970026 305103607 764126376 509543472 404016222 941496309 460435838 719819060 547399645 439235065 320457147 990707650 671596235 792880262 194345188 89733098 558683299 600921526 418844339 49174257 849955195 432781925 579771043 136590750 642275382 620005437 719277600 211195502 917922365 994315286 305356766 899182637 468379306 649362897 453869061 214916770 954404383 265894555 985624932 919133943 609230697 507863913 945597031 72175151 173328651 181394945 252626989 367626799 932778047 280810516 52780663 137304258 565407671 272581727 176834866 879534557 34899469 590422122 708716814 492551421 365212658 966853022 236297750 645443961 609055595 917313032 141956212 873888523 169929623 65472399 564225555 465526980 698214526 813373456 403725640 689139101 475099641 363718581 231142810 155741075 277728476 614391749 775677163 554818762 881234754 238476385 213013706 862815712 788298353 109524706 894678300 327541370 274679628 923111354 404092347 89176152 768953046 216753688 438906195 693700104 836885462 499372404 135904016 714266285 802818866 145661232 702433332 152453400 517405713 682613800 58045888 380312748 446188570 23928527 112719580 948124274 881090440 106816528 270831416 145445719 67776028 956050341 760011188 331698245 439022665 804033793 566202588 103884020 40832614 391662938 596620095 222262640 75009624 638043092 740298210 918276958 287648493 690435070 314225267 401694788 771198816 612121246 906153905 110041185 915862138 404369738 654489090 573401496 114195567 346869432 598395631 590959717 717886202 439912798 36258038 577360041 789026058 266797614 497918611 971211390 371653377 698898073 297694062 822966881 588715339 674340633 390025455 851710200 456421072 814445602 906798489 692274224 469967135 434269882 97564811 866574043 8757876 543265081 757349817 256321746 856253511 524209025 841018640 802465773 621914639 619282176 164838723 983256371 433320587 126458263 877540036 154315143 46352244 307254153 524046474 671920948 288915429 594730581 55523755 645114581 185291086 326994533 106635324 770268166 959193106 8369980 803744512 566715045 606459690 398230399 144325039 35385978 496429679 431450676 808370798 119628082 188418923 236784317 814358502 59733989 308609826 53961379 971968594 319945239 268929900 964194533 862142837 290896543 347268306 101290497 842088381 865020972 716903738 698289802 802544511 459814920 819877162 52090045 523431806 719354318 510794126 537132710 319624819 586374124 903238504 967921180 34441635 718190888 110239688 607376396 892715141 78486089 928885543 220564608 563949960 679028492 207124729 607173527 492894860 568504873 444828278 400807590 744456517 226258545 221584560 734193620 348425419 640550675 616954926 422583263 575609921 331777152 922991842 773689878 805849248 319059640 68202284 353667092 118775149 44495751 541113188 87400575 655572931 734122608 658454224 834659736 730119724 554703925 40627618 639509360 187856121 491580905 49945737 154409911 401302192 729673173 290669825 564085247 361578716 213779399 384970182 899643557 466236234 595909940 569084253 506029990 42479289 691639131 281179228 520206708 581089689 176112983 356603928 770011638 472959270 470283136 431415715 751753997 802512564 987564366 144889304 977629851 736451078 567753499 679442101 52964347 179338133 18881323 632027330 349341343 354922374 743167368 50220237 620303398 499493405 471620827 659298006 509499898 616491156 914752845 210005835 314830286 806942858 903297455 745185643 75164013 238982352 472450950 177142460 44411901 419877923 79670892 750692388 129650750 514455250 861951749 450915391 498248408 3330146 217583940 639844165 257848018 832767142 392127092 519509576 445419600 514175983 810605360 257183177 471641389 311500298 441674950 989912984 626015309 536422394 728417550 423272851 139178119 661303219 312107713 961366046 40514020 644393271 962957646 196742934 835601845 77724450 172027590 258370755 215044554 873861214 543685965 727435109 959773250 92656329 82687579 771467376 172524307 482746927 48222285 402066332 370772186 412137404 982908053 475804165 901269786 28929463 758367654 268832826 531499213 362846520 943546910 45879717 466047954 834293852 993296228 674906420 380694161 661687494 654883639 230669140 822967116 743390053 528797878 970758120 502110095 98355021 302951653 545949336 291242065 523205757 261484854 168020248 593851698 287751682 738138845 983005723 330152723 542378403 375319771 14064228 824406395 336049530 687744834 570038700 1683752 826619177 66971834 818760884 32091633 257144234 312303311 258682260 841005969 621173786 913725806 675634150 687527695 733643871 228643469 21938755 715397781 604851476 200080361 707082257 947375343 678732915 822347329 569537264 772798151 917578043 478240384 962652167 866957586 1267304 783087199 577664664 116061442 161502746 54514852 989682085 16947757 848803611 14586765 840427720 823832926 930713964 387031054 412648610 759215731 669023205 310119728 999961319 988718895 209750831 734477812 295492709 665812058 375642877 542286469 828290804 375701627 575196208 255258694 414109278 815612522 451450807 560016826 240230857 29329510 173497947 344420689 199117006 772402986 291199910 992906792 54599151 842235691 224365757 597137290 82138470 399191830 697053112 75953375 205095748 324235972 37177405 632168393 396995478 322702349 451007585 28183512 536980942 521417485 495598316 450625073 810666075 85796640 533946925 135834831 786523537 264508641 263128754 886448996 50423414 366545889 840316640 550442548 1204355 231339391 90852422 529820584 541554774 414644474 112295427 741561506 140957770 363444617 287845059 368389945 266771402 539108531 647672171 305828960 635447919 709444750 618798713 744247931 129962683 643017677 618371523 626244128 441708624 91983421 987629899 923275870 611633362 414349304 448774455 106064727 398408385 570647419 962943367 880953383 126324121 581235523 72069869 112310077 654067457 923121335 765243542 990618983 18100567 523176733 885483863 812299102 846810286 292329476 716774433 985143754 950658419 160320597 11005157 414592564 300217779 94048491 729845147 575441631 114335228 112268576 862107709 930351068 167729598 430161649 862948478 687947745 536535455 52474740 493959018 874260159 273612123 980013478 13868268 840008197 462230775 558091224 275112883 820542414 887375276 633250068 11909632 282259275 959213829 264397208 857369381 756628023 6103640 269474626 102002216 391575388 554960032 371135672 205824652 214212538 96441398 511563669 142115768 494288474 795572015 625046415 124522066 110541176 667578515 426723276 755305145 966066770 148931171 646661343 186099419 31313525 144406881 887333888 197745784 813246382 781301492 70973214 841293738 191960673 980056601 532868729 997316013 909084366 566445834 87591945 64538135 28734020 401449633 780274995 413760554 400906096 148621504 193891067 248425077 445722595 789611975 894282153 803159588 605756987 840893818 957648244 207893408 527290103 176581129 480687171 667764704 648840779 91300339 220891034 172772461 865079391 542044230 414290892 709942774 171612290 332800009 457134208 968484950 705440819 394580543 577509717 737128382 41317890 101093852 926746849 358226739 392290255 872439299 895572285 872195494 964318155 432909986 406370570 739298224 836335005 747035566 818636514 762639897 401658386 196056695 803205392 79562267 715031859 217054423 854769962 208586894 217125524 27933144 312374064 393529307 623196431 314813685 486262413 867286923 573081198 316345130 990073681 426312695 328493707 340686975 784944799 564416852 756522844 144534737 306722542 572802859 209970136 945619070 629222794 794524137 823498985 142841745 401282236 775758957 342356740 625007285 88449774 927893626 42414105 683427038 529185711 866222292 265492512 911655635 185501303 691728696 361302625 965392959 369556315 599116435 664407013 559439882 441821642 40432056 356416101 917290139 47777749 79184664 767174724 970286561 19166036 810430480 552262526 747032615 741567496 246848544 402637421 698486404 245327402 909707327 891542351 71489134 81192981 981789420 487833080 425859842 443687303 895281505 690130215 668152839 257336834 327872925 593151221 870753462 852690664 716774571 69295646 367867033 272846715 359908118 509411969 423868011 980253659 852759640 249624088 95314989 406724926 26997323 388050091 395258859 456742030 27593838 281096919 649166084 713509817 138889746 604963625 676031654 398004594 554532990 110560249 742476592 452850339 666758414 856478737 376742775 147339467 20518585 695604530 792458918 439160558 972716343 632306046 2170225 798798183 267790288 833861405 670609398 758640147 28508856 66002362 816427408 434494175 544456949 246350752 85315544 601157005 974213088 406669948 149809714 488196058 829984743 100083657 86353944 701060483 143354488 736696649 786433228 263093879 134366111 888458030 253985703 71690516 123637324 326209289 28522366 221012420 773209973 673953482 368235729 612019680 320021151 94140148 310747745 185439548 364796168 665229817 913082953 380528055 647794462 21504190 928287256 960266011 816299525 768013275 747658189 997626703 411236667 696809849 767737996 75388741 768991560 480478496 179073959 678492649 51347714 96204546 940756478 688530913 964162714 83511315 544301789 279223892 878530821 821694039 339131499 435586159 623651416 428554730 418416279 164232204 474272442 878407150 712006182 808035670 541426976 264656909 28212404 611071118 38216929 284404559 428381321 771183653 445983785 139990082 327015580 453694783 140337653 533699813 447507228 507054965 735945643 633444264 350516031 294602793 940813351 195102948 647608079 741561375 702187517 290104332 819624508 704389724 169646769 872024164 879645591 988676197 715364450 559009292 935858245 867645259 943827720 400735710 798979843 239418438 255197354 342697796 913034529 544695808 753867134 509666993 112275733 364823381 557160453 707088633 15779214 716377198 920292332 186776334 840560657 895931636 198124833 772164240 126597936 427011886 518381157 14777665 211595261 144975232 981968884 814409137 260769255 379894106 328539285 710819210 628103106 791485024 269287148 201894388 776696149 728598888 182257433 849172626 248992915 173802460 297716533 555503106 801760444 453609217 262598437 64458230 2102129 904413966 292174166 985641684 281962064 487466320 213992718 258351348 623016922 207371366 364794323 758372807 945432118 451991200 822196308 390227664 563679979 794663586 148034382 358770123 991916769 905404183 363342075 910116153 548903810 76258400 457962125 51808797 413458574 110294308 343726926 806725404 586166290 405346941 287150988 262500832 510248780 823571907 465313046 811966074 680497465 58360252 678034506 658946023 40264104 283717776 478224647 69049616 350267467 58764641 26130986 361009556 328038890 499932395 2046880 509368025 158394736 181119782 985523409 764505911 364211748 926323222 103344551 60808428 625365568 224683479 862748457 250653979 149129577 151158334 371454 291109410 983054952 499683730 699123125 448456564 584283669 225510426 134348189 907429757 865314877 580200875 140690946 836292183 769592231 899247542 33149040 847318108 613752902 693194282 681670789 961846047 246008301 531474593 567978660 482498293 11939060 802221946 498345898 799185220 678478197 323444255 839346556 302562477 358613391 309015275 945618748 814323507 49980293 680430599 74496806 420134235 269205389 550151455 50047864 75414378 175761665 549254112 731685953 816851326 883354509 673582324 262551292 450141633 904385903 204596621 600922901 964523438 114094229 878767448 806564165 468602904 213251652 678825940 961791062 643939123 362276823 645201985 138834499 210526450 226200185 65806249 905430054 370886558 890766622 979202934 930766921 787357800 482462612 694480865 733348777 334053045 678618024 568455739 396679065 186185602 935574607 652509766 96831081 861007776 98313702 222349428 106982229 322025124 74000104 273387771 953517352 689399655 3695563 25923899 781505717 115901703 853070107 504616612 610898468 927205656 660205651 647145660 316253085 700378452 214778698 875266068 888449790 69038704 624717093 512491686 647356595 72781219 731830032 776705341 341758759 441933224 443250758 534484360 581691519 642198634 93207749 852978317 245451191 788717486 565254264 911362783 19493257 839089942 976407867 308787622 105691399 773682354 77485097 479369115 611510566 702610403 314186276 354162587 752630393 694320638 644783973 928810523 100591675 160512432 283071742 303588727 542623632 786428525 802552605 842114292 739116571 745552526 167961345 907784111 602526298 519283935 153358445 141654176 868982890 942712084 915325647 369540264 532714198 478559986 304980011 2663831 243280355 946346750 272456463 423511662 823174841 340464434 520273356 673648838 404889971 799496278 882553022 174413423 782995108 538722047 355219422 115569374 263303767 410868648 551511745 342348562 553785500 404399416 338582640 665418322 210624688 913433760 113940150 512308670 594863389 710914197 819076941 628810372 656049114 668388559 379490209 60902234 933669901 495772334 22372958 619887695 341513403 74775180 346471195 158539059 747939594 542482991 809612908 38908896 285764829 362251367 185761193 480942647 39183967 460134708 648888558 468780306 748380068 932356378 654471434 790644734 726549099 149434875 478013666 354556451 84806099 797402666 602060842 159042053 566732061 206679015 710426232 123653812 14229953 202028296 784991085 3159601 192603535 69820406 282703514 88795908 315717795 76381281 12152116 906020361 993657556 919654201 228342204 514367871 282117754 464799455 424625799 929370695 593742602 569065496 292552377 739686555 212512472 529151533 424488305 713340018 874033782 431110250 993654605 582185976 240096251 407267505 243783578 559763124 209132534 765835753 49884823 647561787 429640871 118162562 435960735 254958855 103078908 528825522 382963964 567835308 604377221 367477795 174479032 3107345 57951179 246038766 726173626 173593932 762446807 723950286 440048188 805698732 179876055 254062204 853974834 351691977 595580947 4692718 995899662 711740997 344068593 717017383 502164487 614924399 932536171 516266332 115351319 718777924 560420962 850121944 140393045 780755332 555513475 638916555 1018679 124609890 279898881 862952411 534023687 995002750 138294075 438164391 884221836 56804935 318126809 52805493 245830406 370800577 877987021 178155710 398460306 227939936 410184129 657493840 80576534 333983857 844631352 969206199 709593550 236501473 661903037 392412777 893333880 68342512 701111842 809508345 371689850 808090312 258254629 307849304 60638089 502418551 631024478 990769397 923692370 178323257 779133691 400334338 271397885 328318187 352446178 124445386 768919515 378668617 587438565 508418077 553411580 160544118 929406341 820442371 125765276 372380747 56924888 80708990 281214767 199858666 854741330 47333193 138779643 970434195 428542353 981958288 26761930 190893698 945808778 147237121 103060966 240170382 697577992 685435634 171845019 532908159 783838724 309352107 387719477 168344297 917445948 137661452 603537628 620376945 335246349 132484533 341802802 769503831 697080699 922876441 266214279 209150019 306021297 115713730 833421831 894841379 677026801 200442606 949314070 140332449 860684591 50438588 290072504 874374292 402824549 18010426 834273470 33795957 371811176 401965811 202428023 870696854 364025562 282044796 972546348 498676614 166471078 14763702 759554206 164256901 795165555 779490617 219380054 307712390 937625801 855221210 294453994 367003273 28467032 697504205 119980410 177023619 757577961 784098684 275970825 191141371 236406389 104976550 899554670 273600386 884909735 850262860 399750938 156702428 139946419 289213300 186730099 687687152 432352202 698735966 281877930 376297352 240944677 434068547 806246134 610122570 405569604 638340674 970905145 761560082 567825176 659608668 33028907 259359772 7342214 989200838 684292467 970975268 498092739 221476651 946151334 700551254 96746451 891339851 653929871 530946223 615872952 523762197 712442942 425975335 466933993 240349643 789373292 991946857 799068147 987634927 760774903 283606802 760260702 87298922 170528916 302170350 722125497 133118019 723446891 543752408 268000006 571412644 475092927 958949795 435712802 558069669 679391254 491220308 308538321 313370483 818731573 560960996 466267491 55171037 238017518 605861461 898657800 322002926 106126041 101072769 965629600 897088735 111056854 933693744 192046484 976908278 68841453 181881882 54341022 318674048 601223025 889131184 687590330 411569490 470963542 67249703 145643199 854594738 340139001 326197932 50828961 931835008 536152840 29751388 688812270 937725682 449020612 638482554 117800843 460472745 55455963 444710118 565929679 729440524 567303734 177552069 107822947 911038416 364056763 208316823 367774451 221284449 847358800 637445749 969377444 153263095 387173078 129963343 997024174 595640457 664618880 166477999 967445697 8677373 953848172 30278864 139067193 36646911 714306921 484341816 544247158 92516662 995184047 780402112 672653479 880742158 544245684 220414288 559691401 260956456 732107898 504372012 479291300 499579505 862691290 883019730 195231740 827137614 476132087 642930103 45194943 760847759 732845307 653719311 22624182 928921482 518348743 243991474 909280711 933446124 846808613 519011656 182253198 614751293 168855976 538156042 383127274 765727596 23891194 28067156 290939291 832552856 58476276 261900160 227109026 659834460 283323345 454957815 731510251 840661860 761298777 60670383 599573962 612592307 945763112 771670649 397721467 132864691 957679104 379232646 785429051 308495734 163305600 942550145 33853104 776969732 574873335 457680425 254187288 723608574 395690041 18111734 408769080 373193117 446349205 221459265 282168499 53893555 241091881 206665007 217191136 377856800 107443247 816898009 926740477 913172493 732793402 947468702 967205109 895029828 600334059 324210759 298876302 173019041 576731181 515819632 978504217 62735514 215566540 450651178 949453114 503126442 677293365 256842027 822547948 697843964 202886827 633347214 366376076 991541489 103367713 361830221 563563749 985095892 367474965 558390553 26879913 933644757 535963810 747935347 666815452 409561145 456385229 441380700 776921536 376087755 967221059 289807595 953913521 76754675 954839783 151514800 610178983 954669346 168028126 651822357 282299019 517237447 395865432 575849063 476177546 895536302 494972416 541132645 114905596 677221607 432627730 85071781 945589407 382033682 904599842 37665313 338778928 873428151 231056675 945105574 689072946 160363480 390004477 933626757 198432826 611851043 240992111 226312396 477735920 830802887 746904940 202509762 120292119 696154305 198616537 651794277 700171207 543850877 455268669 198597511 133228185 200949853 550117195 930724773 569108338 905092809 251637610 598101791 776437492 25220927 368316230 677880200 75651256 897749461 711104160 420545283 416324633 67054612 621941429 590793192 754453618 413303870 439422866 228168359 824926353 526603214 972031627 438314453 283186942 132538073 743852767 589331905 187691375 134743468 494071441 544967796 158010439 819989455 810604831 242757105 987168337 909369926 823521270 711127148 583047661 971176356 836242725 709330052 330886492 990258287 178531861 154855105 870021796 635472232 818986619 717757223 492446883 964227534 317303841 86855394 938824342 257744269 613273043 304019796 346117184 726816864 186611322 994321699 634840824 775129262 534728502 46365068 114454803 831427862 928612582 564080224 575311761 589093660 886334319 128734800 15146187 597199704 570794952 453700162 608331705 175210002 508390097 885296622 261316517 587950958 504185275 699335823 340344454 336708983 324844095 932861082 659129602 613540628 89346749 908226742 902269355 366654574 27906713 883894470 119949466 392118892 407257830 548281391 818947246 412288779 567955492 53424948 256296694 564297905 722875721 30933333 101960711 288363760 315634827 660987064 310702533 72410311 792879085 113236569 483525664 113788322 146544599 829399281 961447484 115672649 665327569 486448443 740756141 18033257 451654560 995441697 978034282 539738977 503759255 106305050 45995359 158497423 118386594 818149133 765798690 384846387 912731906 616433876 230916790 764134438 615049291 129173 637769725 865367483 636097034 220252108 682829603 336217656 11628846 509473388 89468322 44490455 922882024 39311083 251410489 888325380 80767791 980305737 950880850 388113248 609182675 589657830 25440378 998466333 39894953 109458489 542354454 291945965 31478 322995421 79564402 479280863 176318007 137905353 925327354 850843108 121820095 330232670 198878224 992632831 439349507 624603392 719746315 156658868 434972974 766896593 886080190 597387715 505227234 798351327 885932080 329327168 199643640 203518284 396694678 69077986 676578432 810136031 962025020 645393882 827235501 645717445 920293781 917691601 851010662 161047295 604774749 344823177 332582265 393107286 362650868 246867584 440502724 427853418 144907607 463103511 402452652 725880204 52470436 825681229 51070792 124335407 400360490 963214773 107418597 703381498 693729035 6190338 115438074 54083262 424361469 40223110 426676714 868312029 358157883 619903842 685152458 667918574 610758843 856923167 852641105 256827699 153241275 577879027 679311729 98309631 361694400 152813843 256218199 176403421 959955037 209325720 454982499 903827233 416537825 116195812 379512237 539513129 930349800 324160966 764851580 280313152 917141676 96806000 591330968 926429784 684448405 241354951 308078439 760840988 651901885 752306314 204541805 220619127 626196089 596394163 435725990 491251985 560314833 357795801 809539048 11963697 821735446 793696271 312543977 541578450 832884294 3672053 892963784 267793905 951880176 791440179 449353861 438604121 664406571 450525353 630397766 73137572 400512874 639644259 464288608 343708964 845100046 927808091 693652336 202197429 233873840 903981549 60238616 160814261 817912505 391074505 697360754 992741948 177113545 641364025 908042690 741498545 712913062 917510462 465305901 680726953 56008312 105487467 569036476 982320782 858830516 206223382 427263270 833584936 552552448 913151088 244443379 611208086 630637356 829148306 595561126 524731071 783615108 833289803 201444668 338250915 912601444 696780700 976807271 329864764 361758495 838421112 587767017 629118589 4850872 628195927 776304184 154410286 743899476 657768056 84715934 267600292 746503306 792308017 840258591 399385460 841742095 950463830 756104364 430132122 860689140 139203814 23651016 412202330 77285679 73255176 1456455 747690862 440520 344362390 267602462 335659165 695743721 473928506 223480724 598284427 564172781 175349488 22467870 991246371 566902371 233481806 804513336 635586979 427915078 813176628 167619795 594223006 701073522 684290978 293553632 243446543 97541397 343640143 392762386 168982394 796405864 653664807 293309544 239548423 921700535 720408697 805786746 457278809 444567999 643319991 985145632 491532007 787572097 290444327 214242491 943995103 835708127 557421702 392876743 42744827 323679566 895295335 202604034 96192638 5059497 946279178 880632771 287445712 463540074 543687609 193928935 5041058 817461394 524373718 664111459 287678665 5360941 554532563 831824660 562476807 660869475 762214691 445067703 889014 659955206 761814742 383694962 186722834 828507272 135100029 440062596 607516672 632324683 310340619 177767030 755849953 392574862 929030827 595718499 54792946 987113624 109237899 315754650 582567289 690772977 667618305 439788150 119537615 598997332 450301397 962544804 577149308 37699706 204721317 635724567 346044832 77521306 633768092 803015658 336802541 361846569 768439415 957484470 212842674 497342857 951178798 235137242 730280786 817659135 553365672 519249545 259598338 429113724 412234226 126080474 759765541 794193158 298366254 383488427 970886545 816147132 167035696 228349346 390461459 468077508 291516667 194061773 527781697 336145832 908012976 182576867 978689075 145012736 717540858 651781192 578214816 935699381 824686914 120230079 953110057 625085746 865566963 468814756 391734195 69053163 385971466 143848683 394611638 418605594 937176481 393513240 544719026 903951965 298992732 2257810 71067396 768401844 35786180 374152247 453947394 380013166 845469113 437084750 140278029 868560849 631321017 520697917 758382576 338743742 983757341 239876288 528827081 141714652 390570754 521442238 4669960 666585576 453655610 803181283 811185507 549466579 423963379 708750562 534742023 739443671 757810981 4909728 823108660 483389592 323564253 34184063 419858610 333900855 753701978 989922690 474963309 52635432 184425730 401736622 830624477 442801524 316115165 569577269 897668951 805322422 404865728 76835038 575310007 853461674 190247270 421767766 670087067 415820895 769960457 898571517 882815811 479523388 163131657 224622094 450221534 416881472 824618313 787521909 104258177 656958321 446875866 684738274 942013675 94989538 374848066 105616643 632978515 932622514 691115701 799785571 433561552 563257356 867929071 985222917 714754111 968694616 471466535 388090805 839128809 649766264 855775428 948339481 286247277 559155987 770425706 925242018 198458700 46991112 671814800 115078638 174291814 593032172 553574024 623193796 172868948 997129648 116704035 634949041 379827583 591205708 440898913 923203414 668583449 941049763 249439894 79455847 626185323 449815299 588547097 199460106 898610562 180437704 998690578 402112232 238098055 470817770 293714575 909223808 323156120 39838449 837852663 267885926 305953543 844566978 117190131 21139079 520959321 337139725 756868912 248153407 640511424 380783837 929100448 700986711 480925020 290481379 886541835 885374513 573422164 519992833 445586016 897389550 553434000 372928807 196824410 191621791 130082942 534238393 894609569 765994341 740323821 68556542 954049496 780984171 330583280 875899386 130666310 123377625 893914098 835842384 840521719 325097875 521226093 741162074 55294783 290300013 112265468 6231244 738649344 332363159 568881111 976237108 34964832 867557279 374210222 507956330 469399698 260993852 39299203 33520954 851234748 499445660 663876808 237239338 331911247 240254306 330550049 347670173 577568433 784021800 763020661 356261489 973877413 534058721 269356521 272620086 434498031 251972475 147154496 363364773 282614153 278949341 482626276 751912812 38288396 469512161 34122774 535565019 891189852 991600582 475544949 740044607 786576568 30234479 408995340 773837491 702093334 822934074 229726359 591093811 720102659 239569676 454335123 927018670 848978812 857502034 219944270 849697745 953150688 71890628 27818251 248685702 56020649 521023375 591609317 970927192 261340423 325690005 881810780 35453138 886106364 67440666 296486204 65271316 706857692 639779241 547375897 311447400 377422123 880593966 31248578 677479388 20660515 694758118 385583600 647782602 418768070 838141902 796196500 642173322 673535919 370752287 912058669 194274990 60920870 525380665 408496717 194134490 693180809 992875473 619305101 516578046 377583095 785238664 596919617 610393917 668363262 933041294 3304232 988796785 118876248 62788265 223294455 848919268 277805527 747753604 13718241 12898707 771713058 894023939 75069432 19900507 760678960 882864150 367827992 489742519 53616433 815675888 938218885 605885507 207920849 261925327 352847321 815233013 751460807 387104440 563155336 366144135 795703681 555573155 951292221 363954333 446887495 871974232 314924503 783083202 288036954 393334120 830622008 447337592 862582345 528399229 673828220 5318010 966509968 752964935 661858076 558191229 151141554 364356580 507310060 611476274 973998718 695561297 434561023 892580365 218912267 629582386 768484868 587927912 773170847 524384360 32302269 31462563 795612365 667190285 381274337 473047218 222034296 784420572 840867834 272447381 637401359 902167843 4075361 864473648 142637527 793501070 942336320 74995166 222348464 81793310 414459258 896805553 864972739 359583098 382689399 746700656 939601904 951198938 220046812 162346923 169089371 918298913 835338102 416953988 68858957 372639963 471676983 881615726 190190983 198285941 229932909 908602722 321196139 957529289 494576165 700897009 611206365 917429720 529361132 61527899 300361500 197246962 310276270 261557811 438598068 712752728 593383810 70340922 995733395 798778865 625028310 584339990 263408657 589739049 971025527 689835180 415473829 415427369 221125790 228747811 928247959 773791072 176774408 547397973 222117212 53310638 419133207 407548703 241167116 833280330 961120027 814356629 723448879 149673918 949987869 527448968 580483334 391928679 985032480 535612481 542874896 329132509 662467342 186426315 933606881 541318974 443828826 62655298 615807236 577871871 146775864 139544073 740772645 290783818 857583971 650519181 891502324 102139655 165488177 234474372 911880767 467251877 136812115 413357680 464760464 617664123 40172997 597703091 923897033 519543131 520991469 389044154 272205458 27851318 958337577 582876034 253768140 399025872 201113425 585321429 120231807 668157664 679157930 661447915 901128273 30272236 733253916 265736582 158340362 544615198 717814485 676346538 77546047 230829366 874257055 131317214 683652732 245642113 363839117 286111157 172582012 915092691 789180665 687552081 838682982 321728262 610267481 676279498 504899942 31228428 690762994 625878698 471428719 443858312 465320772 758043810 640168630 578082050 613869264 310117102 342270552 635147561 272589160 711643546 336059358 212199084 96828668 853704458 979025195 166588551 969209777 886076300 776530136 901956159 42207809 391200306 243025825 498928476 72929608 613074975 327782133 755739435 396015936 539215327 287537339 993327243 402939846 966949918 51292398 89041430 508188158 238580693 354267600 130123678 261339731 703139216 971865927 450839720 237857505 835200224 432845439 25825813 625411141 116128976 869303857 300509364 951000550 818808394 120186027 33749015 687708162 946875607 47361852 671332549 421918972 607193839 278563786 986678073 327517026 68474315 571531669 491472511 318718867 775586562 479015728 51243732 379786278 384435713 283036710 171150618 470319128 17692687 326123228 232705620 858382294 818553151 585920860 901409620 882305382 398793452 906950473 756369683 801171338 196646003 235038103 426837547 101787062 45908392 816889138 494625122 690678185 784423161 154704672 866483303 694941459 202214304 147098500 432870470 690711780 444208913 668943588 384409329 159163368 442096872 924107937 186429827 219545782 192833192 426015939 616285253 117325226 185750517 539475126 451564710 443355554 833176007 385693161 712095027 988084884 874128866 940526354 332791400 916910581 852197851 272245889 464846703 63967167 784496537 191841570 341973602 836408168 492822567 961920650 825232873 645001021 270310750 753560804 31602423 363657183 853647487 443031364 452821547 496670131 201469498 503370475 401744240 76195235 382576588 759474840 902303125 963656312 449699973 977427054 467425455 784957865 298233086 819226854 607806003 744603232 656448564 627595925 792373454 312009361 841620752 792970601 82459279 364728768 88526908 201342391 547379957 640508713 444722613 178642071 768767459 457182672 206878457 27459467 498437507 14914851 214590415 71453852 721963545 571327831 479257081 970224527 38733179 748565810 636263228 877654035 711029813 807441250 497148256 145077754 946998951 471653219 371660965 84935739 168084725 461233614 244611733 777795028 897669798 206450570 178525814 674823062 991787603 95742456 931470330 976394718 246523078 691039756 153864071 233999768 184457574 851398737 989956086 190045071 750988104 539109679 800748667 695983465 26334108 113116213 589829127 910069054 622817294 96961861 431434157 685617394 422842093 513608978 292601861 764832669 178100778 63695693 556915580 845448716 908413622 24424221 111965652 293872127 213878003 401046207 389976275 107548659 465855325 499742844 791150528 638219200 104857754 988532757 868868908 300288217 814393839 732741763 385111142 46238093 987084 324761926 230681433 545613632 732250176 157381693 143267390 191589367 656925252 917958773 679126856 905374534 673521562 675322614 75176488 824839426 409148584 497045685 73165163 167546249 262089122 548089376 993044715 465376023 732855038 391057052 615651378 357634875 70126043 963508030 936242697 492399666 350020756 123879596 635343147 899469350 379307499 896998486 713679102 229653996 105203446 951282511 178830961 976260093 847650119 496823445 548777223 492064521 394086878 600219620 867468251 614596948 534603923 727922752 249574074 268961361 949900423 680900750 788394324 497115795 719144682 844774022 87733662 192398863 143462478 847029536 717534339 749887473 507633090 458982704 941976486 418419440 191656269 930498233 626749301 671133958 158614286 990788427 491910086 585275612 323626822 516627313 39409522 289046332 324742985 315122219 754044239 94466104 536501210 494678025 297451538 849954170 710277588 79424288 175621851 100420537 848680961 138060920 97680001 163303337 904667856 835365520 529834081 63498203 341771381 215847740 522359898 330082238 562592350 657431804 299310108 692367395 293487712 569402971 207723773 561131223 682700394 349516356 567551410 244559603 17886436 277238486 93893600 269564426 226262228 839280217 816348148 287679563 801206286 392255069 173324338 434388436 398403870 999414040 128847705 804403052 40644845 6921920 842670072 910806163 779840280 624330493 648426617 794705353 446519499 311448811 954525797 598925399 793463547 110124777 622048925 676777715 479327732 451358788 265775768 785628711 158590101 56238549 845278967 76197380 778276279 845440064 440178831 573760581 174785650 656777225 613269429 269850170 796571772 200088907 5585424 630730187 144613267 852252167 747990538 676945861 177647826 388186425 863024937 521005560 958381938 936353880 653416749 971839895 252973262 379396682 136840198 571134669 602414459 163265634 920234737 949516526 105696442 214492095 217533596 180466820 161435195 791450497 233901205 95527282 786331597 574314590 415036764 814505417 203274131 831908022 100466268 702064529 915043284 182006063 560476952 484912831 470519735 928103927 11820179 817933616 658505711 82126536 879630796 290998350 631428917 600362352 412909167 590717135 705973648 823900525 163620883 457457104 270828499 124663567 796471677 696011901 411392700 753117989 359519333 135744467 170075884 128092974 380793974 711584617 260475266 503604663 208000 453695705 477825413 195458801 388298232 584229012 574194321 989500620 318696718 110175974 220196333 537910955 835124588 320411562 868933549 926386667 144987811 880334469 14273878 211117159 51768903 363860714 78601032 892709766 796230483 950105094 341456116 409184123 709935668 96067581 633624342 760405510 881192952 319194665 782722422 482653787 635362186 454994933 227711785 992054263 668665936 911565665 825799251 147035141 964454905 970445242 638227319 142854206 436907376 548422009 222526881 594394121 549312100 787081537 501741152 80347995 64198640 146864030 132862071 939945156 208086012 260990304 936626737 625328626 616239992 711866098 767267353 339221645 479372422 135249298 392758504 688183358 745422385 685114809 216788901 989811375 512555809 827508519 950749294 297606017 668979696 976034759 335351691 918320508 117622453 916991211 198239523 150539086 18883586 694339827 927905516 409855816 407101658 817853629 709192011 237058777 669402292 234131421 360689071 984356521 46379150 687087031 455406950 907536142 65071915 52240548 481047480 425545107 4746274 412030721 8792710 54969576 788106274 355380591 439888512 465775955 740474530 990988168 292849486 744664879 310315609 864161671 692978909 775132855 870918546 194096278 281110192 10888924 989116353 736683384 164040658 650986365 488024527 460715826 111394698 82138331 669096940 214183066 536964269 647210826 881453655 354128930 578474963 148632729 233625953 538841248 867111457 424319321 974561044 738149588 11363189 110103725 473291094 71285122 96399032 960648476 301822024 98876626 410938230 884865797 816410119 269421539 86598035 874139979 139066003 611758035 929505033 408638275 208545843 308891917 248612527 273526941 865923894 616184118 9609716 91760236 46846904 943827543 555290930 23089960 358389641 269190062 599320880 298277870 712165013 534786843 381731637 447864589 639955575 414257768 314665502 919406015 253162171 159289717 851442327 681913974 39687769 546760342 579359104 511361986 165039610 393714473 94635124 284909092 425440818 84143841 543851484 149014805 185065936 244870103 711977282 282702980 391929021 712742546 677757612 442495409 615393085 838620002 597391241 17027251 226885921 176599176 418009328 775089956 452029728 952421380 48071419 543882613 444856960 317822780 769202638 867867333 486780601 152518914 340012259 969738031 88497454 511629486 623385494 35427236 451228902 725951016 184446999 327379283 570420796 438515703 308130946 893003897 966135420 832196315 186671896 358259628 200286519 904418394 625144134 936703177 490055306 586672071 192815488 581547241 540509289 866468316 336646473 584629406 47879238 926509162 169493314 749907388 452538068 545581131 550852978 609907838 97103697 375535007 172474917 529243105 279769788 302690638 41201662 485481977 192976996 25886738 517464689 355244888 980833220 8260265 871389631 220046388 662810029 410581192 448458454 695614554 633564405 670360941 30679926 865373105 566398177 168639505 793313177 607950084 265360004 726936061 637793233 72666790 105617912 983233334 255884244 192021047 153472688 784462718 790000595 274050496 859659196 698170119 829089131 653840687 477982227 115508734 525861740 990707925 483522399 703689238 63116556 591498462 198993152 93178788 943438074 902206507 735562168 549344335 644893172 515342861 768300487 304590142 163664350 172372314 195499947 475406226 939663361 462121306 307066825 813343133 633698226 129112334 727867411 443118538 421264639 774656135 25586411 692823893 489547076 174409412 704943501 84483039 510032180 827704152 1546038 462474258 899889670 651072134 359014374 234681181 946917796 169010073 219342146 67811441 641076193 748574448 234427533 723920997 705849853 755325827 98462211 323536857 95170644 400225970 410839536 133087799 76332317 42326295 492100857 665500530 887772800 334181817 316466559 426130515 969217980 428667032 836438244 722115916 867169286 167104843 10682944 540170405 36386363 811217408 369518279 918442125 754160141 429872741 317561324 906836383 564503808 963532829 913156926 201216454 826236842 897135425 863634826 869621214 848290242 288735889 932770651 390275363 680032610 603936388 771928112 220633100 654148017 625298617 373500311 940181295 418924423 482571470 116478212 271610628 411007583 389143906 829773352 410565415 366623997 130321952 88918926 413685307 382522374 154111150 21913003 256809591 332340694 109389610 851960619 891049512 488938007 424940326 264113926 571103853 280453272 591847957 624186071 216263077 850697483 778681397 534553617 173455655 562388050 264580216 437898095 550845739 972209457 568198629 39151199 409424377 706337665 214619115 943427734 875709536 480478570 542337331 331672425 367679422 187333460 590264827 789533397 126291036 869705451 354257260 982470782 109797420 647207627 249924741 201160691 298369514 965763267 864893775 465010391 831067306 966030285 318145681 876500686 737291381 570561205 7359326 741386021 730364605 177533354 785665825 870943146 83925805 138513866 343221624 524464015 832171962 476727641 540327194 617240757 662640539 914489270 684581129 772320825 441311189 547779235 991968786 879255659 262305489 997800045 624748852 386986464 567088949 281905050 447146034 87161440 447188469 266314607 811614665 793190413 444353100 777952089 731984872 796143756 381791365 323421593 970740146 61515351 472094315 363799430 818117431 605699190 13275144 637812758 372512266 86072538 356694417 315803098 63132359 136647919 695539147 944045572 303213906 551714820 667030083 949786703 815983419 515401232 575408252 42613118 215779055 887477870 630151541 628464543 108080568 861470567 219847964 896333071 81047382 489141509 291446014 468815357 587839255 161389362 550623092 116097465 474231351 869160881 893975763 395046775 208628117 537583965 7878954 448888371 645873971 313219428 916694278 627793228 362838546 401098684 799240893 973695501 148094710 307992641 479809606 789217440 139706873 817433537 781416185 891340071 135308103 119305942 588862908 756402541 48312222 623975900 466824553 872276072 996721716 450669034 879463198 490644955 666973160 945366503 471553836 114503907 608054651 16227247 177335669 146825502 434468475 396968359 90384129 706279555 266741289 424832613 474142427 125384379 845122537 438032853 829730235 946089364 480236382 562272069 702494369 64650866 471633212 496464969 644642096 81132817 272333239 508089136 737345234 443805814 441678871 212213969 79533334 874313070 554046310 855156351 951097021 365455375 557947361 319361459 735407529 985870680 690792825 27765996 636997881 590022808 500443498 720090639 850423514 423867922 951647781 173453052 571643546 339627522 76141022 692695566 704872258 66837445 220227867 832989073 960889269 619874555 247274107 497196115 482411275 43799769 193583972 167098057 212160414 333076103 440076447 480008105 804544440 848698019 317600929 316085086 357848638 387188110 976606002 697621645 345976701 338186358 522512111 972099033 955674777 156526841 909684827 750212008 760298598 840779800 260254299 85798365 481249816 304750163 95700082 184854336 749241028 178495403 346557201 49000168 503430004 373289381 10342898 323186906 750280454 813043135 465230077 466027775 626365081 933944304 838142051 733211468 474893296 361181002 189524066 189156230 626801788 180998848 985495617 744134617 674992692 202304032 771552664 875799493 508204733 545638932 733672633 798018077 646363244 751770122 304503207 565880946 954979312 598384428 750875835 305155526 898264713 923377886 471953258 172689482 817780688 460117533 718131298 385193146 272706700 804634860 590254330 858018454 698770852 943089145 739057016 524669022 141182927 106991038 523279298 24195027 468488348 19586123 727294562 71736935 193275261 820467344 723546351 119073258 433298286 785487306 877456591 17196036 841011184 513346178 246327235 313739022 828069248 958129288 275537764 548322764 946251283 245511604 800957888 509624125 293878792 691159197 857402032 649419716 858972046 476073149 670076800 322236379 764104343 455443396 703960231 260084201 367352709 594023976 408748554 355138638 662649316 813805491 231404822 843481277 579704678 970692601 107506606 475773501 661706802 460584485 732302057 702556911 41462558 76575392 63799807 640658172 159180267 136196285 182124456 622862550 545168279 510050153 625680730 856860483 877913215 989714493 214021663 537219419 672735250 789952565 916456166 683607712 425799521 734656304 133163729 548211093 255698559 516897104 372771717 520479391 439088912 818905161 43729032 504212461 382867858 579362302 450511609 876675042 79780280 384144306 951384820 382882342 121959211 760295509 534955524 913198885 993725289 324330102 527237905 456563685 102787477 482934041 249069363 174607235 990802438 392381074 398091123 770666339 518860906 231831741 617894721 954699194 232020424 734555746 628352367 651092526 385465299 79225658 227402746 67966788 747205456 782012411 17333548 270380775 332561370 198370178 374109942 648590598 74188362 218561165 166021137 780456418 890637582 762385404 772520263 832495737 783674944 502851853 844366025 656377057 215336398 212886595 64469992 288547430 139564003 764613390 468936999 859046160 866223114 899179242 40253509 16077289 776476258 611530116 626385676 707876720 963846572 42222143 346272839 714333233 513035571 248183918 237395218 376073121 707631864 537595698 772265493 213056261 611838572 800120798 250524450 43799370 997230132 732933976 792658676 636198180 2973979 61346786 44769452 237207063 746307256 443506520 689065770 783379155 865082353 277728282 338571949 301553263 575047000 781745524 773257396 117127674 629361315 252047938 392325640 614812212 807776610 722112972 445430329 238079672 187741945 100123968 394891384 543963696 990902823 32444160 497750222 950011927 67216919 4999631 182920336 28136388 305286207 834258612 635371493 997113232 284742475 940053477 94869477 69686332 774381527 378445839 607709143 930071000 865205714 292892032 35128441 754248148 361829822 888207615 259041817 979501853 494635390 166032227 269082580 518163736 891383375 922005566 356468932 239645638 690035458 539546864 582057001 365231482 635268319 784575524 406672474 398818891 229887082 481719254 435872265 808585082 86027719 847133060 551684702 231425100 608829390 353915400 310685753 102327309 165195508 240615537 45704430 506670199 533440509 409175803 870903092 768133019 171239379 306198712 872529921 341657453 841308032 161333008 161798345 357749882 345865987 113032153 13003927 120307527 527320436 870754099 418416217 37529904 834382726 50956706 353464728 963232446 66541180 554163333 424190838 890549298 510904429 150059950 762821119 81494638 425006972 778051221 782947766 610846014 727168341 709513474 348954820 588921622 529821313 567478353 204057000 466355431 81513232 974383019 461930063 846482866 730661495 96784496 267865316 992547316 437940135 67292739 402641235 655380903 420167529 969598079 171746130 275536846 572142215 135660125 41540516 334740673 969058682 212269258 452113087 22799786 715911852 446317167 966214350 984070777 174964288 721529131 272054162 555059043 28691584 990959269 271739729 65499562 533533155 554089401 492567766 347352791 618148083 156380239 109835934 367296213 364271977 4032777 235533562 7981396 245268536 67718421 272598185 39991762 417005071 929326601 803069811 890561558 216402729 57665588 420622816 77821550 641061601 778833269 144462506 722475393 77945587 898361248 640153669 373217915 617697815 305212412 665067843 913145641 848590952 431736277 371459962 931369896 966252481 904160560 400007173 527787145 14871584 700571548 691288204 861692560 880296752 184480852 341683473 557360947 620992834 545477203 182966042 367216245 231284205 500560549 432188608 750941079 600843183 219657985 270759532 3441097 725051497 316506508 153295875 379670057 97579506 367706751 140823239 472845516 316441338 491637357 301000432 928240401 460376343 121571066 969024326 614479411 989771496 897983997 846366387 162834473 30614157 283547560 292272551 781030048 154826521 712239515 260385034 801590128 784528006 214233435 103655850 5376811 864965785 696311978 943117224 650366338 330992684 666638659 955879683 758098797 488426437 108964539 892408848 812523365 844680274 362798174 637419047 620720820 595267301 339967347 685613987 609026567 997403552 288754620 515023426 572536625 415963507 145296731 642065277 532224663 417052342 338777186 393174903 520865887 6881412 125652595 940595229 665725172 11287742 33041642 53862891 318405741 150097881 59563102 871830660 82982689 178481420 331150038 230567312 9222324 630021602 360380506 566687798 601303462 950145485 666585531 49969828 50955670 183657555 997257618 334793676 7934122 872899390 72557900 898768758 650562146 244182237 293516091 862509994 48829391 283636193 710245185 244157875 381383337 219982780 20907272 853855945 467733255 331453749 485986600 695519953 164234926 441770318 588452598 904231859 294286707 384622797 110216387 708526667 240275007 832251020 642033238 393451315 599597566 936073953 322643237 733876850 235655203 253435743 672013545 997686977 663865037 947315257 33746888 648049218 653936171 765022553 820808417 159805799 602925414 466506341 895121331 563071483 728069577 588904675 475262763 245826359 127671871 451835636 569832825 609074623 404855497 48599089 885698980 614663615 161879537 158064612 409457680 463937097 541772976 114683702 368483324 848714931 606472080 129791339 530202806 651144515 297002819 647891935 916866229 264899506 21026234 755045251 912028128 566914210 914456947 148442950 243559058 124299095 316233318 730138202 383739808 675454840 56642513 267996192 660339690 604761819 748499655 809264168 652251728 697445236 160710475 741073215 414664602 262069964 460498402 142055649 661765775 577990470 228758320 649394766 250681714 853369606 285147302 813552787 948837356 596119629 581394618 494696711 721893368 157720146 110323823 504631897 315772794 80853307 894555746 195128568 944147595 251240632 724186738 29979720 54529495 315390879 398530517 419368573 17942513 888993447 26872400 660333156 534332676 279374230 292300842 705955063 570002738 782438695 302876224 948091253 119756743 577553491 736993675 936597941 997066992 156980692 607069664 638281297 305035859 330659789 431683880 453094167 161321340 693465079 131167376 723842558 880622161 518042673 89377682 158114089 634892981 875479983 751009363 568324644 327159210 307561214 434880697 187488845 610471596 92501349 954669832 579936294 681989213 197784236 839391775 407643965 603332352 879510348 750638338 48384955 360732770 831921838 332338441 362486520 289681284 604955592 154422025 335846915 238426095 282792583 77148381 436170427 787848316 985295748 355853502 492672479 859696599 376890022 565334217 410972806 660301000 472738224 665297208 938695472 40556728 980935752 184500175 214723917 100336361 86567502 891629387 922501351 80462890 270285261 293899425 953280373 609389927 138167116 267295718 695866722 702559170 603992816 373118345 71974084 924811171 361359976 166879175 563338260 865011351 812664560 213109086 861070230 182758677 670984158 872835087 455107586 951477151 382841435 679469475 835203816 550371579 718808153 251307341 17538688 239634286 967073535 167916735 90679598 839123943 358769608 234879322 947929343 236314526 816410648 642311924 998809965 431765701 529245207 628155066 76837448 65797681 188443563 203900951 782609426 368714853 535588546 777568114 428518079 177790349 958966358 538382822 158471879 460163889 209150574 614308795 515483723 243868429 963851475 32551608 198229051 782351975 89630632 50245822 406729868 218406832 811735956 926123105 342915284 857401486 889738276 954449669 155906624 10051785 682476066 295822182 683762284 794199204 465788230 178898834 23931982 684927224 780737666 951106958 406629631 562901878 392559250 143581565 503486488 540914415 580460273 66120663 125384489 440093344 464735535 738249429 119099675 370005135 736485647 127402709 248376224 925434285 670682230 852305988 8477614 457380070 586491994 440037069 495498921 810545160 838003411 318321635 439114727 760232896 776434776 726441970 420522932 864430170 216794379 305512811 1639770 578511557 622205855 761007494 296202614 391778168 859581820 477789067 398514533 537169274 254077450 949743757 138213897 340018993 804279497 410029683 442689126 695132914 685271535 462875817 317868156 616871446 140026393 399622729 673427895 546027462 281088969 334007529 551696528 324048701 247106340 521100826 955807111 842615787 306007834 148168453 362160671 715767361 378469127 903380605 145929032 613056171 728716952 889043696 739827723 157039466 740558873 904236617 128663809 216600183 706083774 83908599 948621424 28734078 606236609 278400304 302559891 358483149 157961625 240523085 80081657 322369169 297151356 28326212 647865340 769832617 275903721 679625038 125701357 272931273 644440918 116458807 836505706 145468465 812587234 248698924 591740273 355343906 438188058 834640478 107050267 502346257 839430931 439689476 302050177 829987147 487396707 286612661 469407701 177013346 952989096 219507502 808420507 655864087 773453822 595739396 992298510 155201875 940381178 75432196 669692355 850343604 482302678 625983041 515961076 341739001 831997152 583180203 493201586 80799813 943771115 33862042 447737358 947563132 314712776 902881499 977458343 905294845 706732767 5014279 989371289 73141252 217340800 329250772 403050378 547679292 708730562 248753962 19637149 507982567 647661782 475754980 751852225 680099223 202936744 71686993 714581640 782750426 761240786 318467280 792147549 265736426 188126043 174698176 745257017 292466720 11536909 790761602 588090415 612871388 968465460 16350564 33123023 569594191 915270946 286941704 188657248 839536217 773315164 115974844 3112067 862814912 666541761 851605214 555580436 149990500 593847458 974501071 869877060 790995613 413782817 587171197 710014550 633386187 755931039 460839580 811287152 877029486 264673380 95119422 199970956 991544103 742063277 609133791 28272569 414127158 524633433 217702053 945111480 704233157 138876217 351951005 479589544 62123213 362540256 368311546 67929750 643859905 231718056 258370458 665082977 334001250 978630987 105238327 597966400 545475844 391512430 716186607 610033026 680842540 631780244 651400669 832184114 602970269 376228628 664890151 120459334 925797063 361146153 718568458 847600421 199049379 190621041 28102622 643492142 644293432 200711495 76147870 882348990 457652043 116650605 374844702 483359900 99103922 39600519 841604170 831409297 742201881 24279294 805656864 680459423 642035299 724707772 450196510 815619228 139539844 99045532 96380788 273621580 507030648 625596976 704524741 595019942 122809293 806714386 275925688 757711346 947368404 101990999 720398688 57164158 329626754 359237820 916107510 835762690 50507108 125500541 682343113 570664509 870000309 737226734 641433387 628410494 552509891 893389684 455454084 198828280 535832159 93731431 649982140 872513282 831181987 165151287 841664566 663977858 173202286 495604836 400156644 921522438 523949152 2831248 159956080 808850323 682300450 505619926 314908395 783559614 912853336 166236042 946651719 32017091 180304674 281496633 605184357 769086566 779104316 641194605 184533405 963678108 762979024 898885869 583542229 698788195 519582027 991285516 9057640 634896260 797105775 118534546 328032075 49646829 64014862 711337924 300201994 657726715 513100608 743750308 77891549 229177924 396807772 547880332 860316755 715977847 947405821 173737999 93820298 521042933 985977164 759582746 451561459 281972940 71669086 534580069 594284420 692477265 443852526 836249143 715096649 534262486 148932642 574928337 678404412 791512140 471702268 575957177 547215321 513657235 317445240 823763607 837406659 857353273 411624031 404987412 924193661 707899191 748364722 959890415 482587095 221521414 431723188 574782442 132802339 85580378 741145696 598300366 87647507 763034885 32835763 19340757 766854858 396544849 377478033 626367529 809972290 600860086 116444174 989504753 584262414 100668880 87439638 284287311 977583664 8666614 693872872 236752443 258476891 414862304 868078395 894419946 24988762 699512790 929566868 22275935 661888440 327117352 591764239 425353288 153145778 89263003 660515485 32017998 816547905 238262675 515556902 76867657 138284684 244576347 486328965 970112960 6463534 233016277 401011304 475145577 14488827 77596396 971131844 944780862 630210553 234395025 92171208 167731772 954348690 729317247 13071390 927621912 114044756 412178187 950204413 646722310 950166553 627921306 818075661 551817521 429637781 629213560 651744532 940547977 149122412 205741082 908383306 643260494 657501165 526588125 665052036 863084069 662800370 257683256 912093996 120654410 582776231 614115413 638690888 861311896 873668726 694235900 947951000 750403151 749041096 239738009 732227712 118558392 243756723 209701493 334677153 801607868 956136401 674156143 162366432 814217991 168675293 89188302 408609385 976596777 206026725 715317439 72371939 850276585 907843173 675404510 71712197 48818523 314555313 654282561 752709319 324514750 524457372 574169470 589521158 19067630 168806401 496389578 934461398 10087087 162572966 409908587 823836154 108176577 396568635 611527641 90911671 673178707 528846057 905792238 62937036 24815185 140056428 131178814 166040188 258840539 983986382 938282477 666934385 242223182 431353078 269440665 859862614 997960842 923333682 223612683 775418079 628193144 739918485 383760362 468264777 965334343 375293871 664486132 356230252 772468348 663599599 516421724 256767012 257847512 741262507 934651359 152075105 700468686 875053782 717114735 48442891 831317013 315962023 817235357 62533358 739057699 214458153 65751086 910825859 845048957 770970190 907395381 512511883 207968149 801346605 443377267 397086895 27064374 491453915 308603008 993878331 272000206 619943158 675558448 883349023 635767553 785430798 491654504 877862304 997811363 630552559 366557985 24658012 491746264 906315195 266445076 756809273 724208051 433018490 717607931 110857194 269049533 778161885 366989746 258470468 651401920 202317690 337784515 114652237 124585945 709341174 416759430 142766860 329185 684224752 31814819 777473128 459799749 343655864 845146206 143816462 751597772 549227390 869130887 698971813 223479977 532918508 219553754 871839720 964865314 292077895 207974500 374853799 353787854 725293217 991763289 413443817 320991285 892120321 784431090 221359611 759455783 903579501 913832672 514472778 662527702 861024223 851358574 822901915 678536186 970194747 354785698 81601603 42467321 961543867 528937513 77794284 240231114 614880938 572379749 624988062 717145809 831095159 397233361 870428237 395830434 47839614 376226590 594348570 448802580 198046327 900360685 918011234 141204244 374941572 445788012 604972124 6943702 430203418 328417263 650560777 155036310 961320034 934015326 714800163 990981802 279833886 245795605 480188671 824521482 31881658 341530787 140899540 291013907 203648130 140621252 166911571 490489085 161522110 690270877 714439640 406027974 371634568 642806734 111006204 575430117 223121896 142957034 736641587 876337410 994709937 245378186 254209731 80539436 193253760 279486788 539284609 614249972 352499304 690647984 298996336 507774555 485432999 71587588 379176365 875527320 506061519 524945292 176556773 619120347 511966154 85328375 938096584 726498846 446713900 799346987 530155648 816225132 145855577 252728655 249737744 223243494 844144364 174143847 768210178 46581522 880362160 970578151 245455605 696089880 791073453 520718533 704865875 191396689 942713006 737305140 627677820 137414145 190776128 213474876 461254467 972469278 595458247 63247521 872712635 540849308 722889577 750925374 703599863 460866646 330904113 230466811 550121942 535613451 855375080 377815215 286153771 484118617 258875921 533074699 623289305 248062625 603701526 167629253 250013369 387785549 295034320 669303211 681102489 58328675 118822157 199744478 986709504 949582277 608310880 642062649 564432309 205935110 697112827 12057817 307161265 905447200 152891828 214033703 674877599 531528635 212976857 179934970 603641596 765268993 258927272 223494457 968729975 984732622 159593290 532400277 238502448 227055091 331669563 34348026 250492470 425557325 417731683 99717783 371198662 961550596 732013867 803865033 487507065 447582768 146455658 969396911 155274758 145305372 299415402 733631794 928414851 114836242 99240607 387638179 962433298 734058729 665167835 737914579 16099446 336347154 250959776 505202637 263736034 509866690 147141148 460579685 4193463 540554464 792193265 432042749 53983215 990749001 242868459 667222872 349398279 287790149 81212513 67919443 4418529 655264936 115047140 492519513 937514641 399324431 900735556 177642686 209248643 110123149 619422206 4473522 302219589 446570187 203135333 25277849 427662764 706849540 864428626 745175175 65553525 753252176 786695650 101432955 443044753 397714826 615045121 502408813 889491566 487731116 166662641 697389354 597277258 911841344 597219267 212360983 321849858 951736247 684909614 244985996 589704245 777447781 197160177 977745061 272703363 821509277 968286844 878106473 481857809 70345642 943604406 295436390 954997525 67179427 554308023 116560410 356581854 862375733 74976098 926555775 43909729 272394951 394554578 425270362 45848053 894969904 479991831 561489285 710054611 660655564 741186969 546505430 283723135 475797156 356802172 311532076 782290628 485769068 756644013 163534998 517008685 865575134 490230556 719673048 692946488 732437583 323019496 335633761 823325849 394576656 401287238 230605022 197149393 155686767 337307685 520035443 894741356 922671725 843554439 152554399 389915482 658116224 794120005 433999681 386680134 276111426 855892256 368575052 357600939 253213517 645989192 370531881 442724477 701564160 340849457 135931061 956348323 469242319 891403626 479756418 899703563 305430645 216488073 344074585 74968921 330198186 371787763 489618548 403328526 140625860 443783923 245734002 254132460 726324580 661707520 359223016 678356765 68708921 143395704 939266702 856020547 433781196 451685260 982372611 782574020 407344908 721369617 400083915 919182821 394241444 234769562 796076365 78948505 302495336 866878879 778926832 678827588 320480230 599774389 73479667 692150989 573618484 770147847 223644192 87202275 727720064 727204930 37284643 372748970 647907663 568158476 654890017 309812320 829426337 400207107 225902743 380651033 19159739 657408967 688499502 297906783 997114861 497498443 165401957 586865086 758833506 800840372 475652278 683433037 442512554 880336501 345963028 202928682 775270887 993904071 511263425 676435435 17226399 590775044 678532728 64223760 913137123 263869941 530063469 182476297 879017436 217106332 86998553 635756472 486377830 71410681 395225937 371053054 856526271 828395896 168028617 312987478 179460153 650975159 260785425 300088417 210568973 37038494 596450523 896058872 286635712 347847395 515986980 355240484 456032215 258131262 101741171 129159983 561467155 850816666 351549250 384119755 629128732 465864891 544262879 18940241 500580866 709429634 171350845 36966729 936676920 241535340 463295763 65737171 669595291 865999321 754419938 660901172 439482518 943325039 582132143 640096889 241610501 904228501 742396959 572868579 688599895 502870583 142139430 402626370 474028039 466042596 344689129 274234747 690961462 504624918 254513573 101293831 810637909 945016749 594694244 905439431 848663076 768113935 104036824 957694905 348949351 534309586 639364566 127750482 864882468 739366106 718730340 16744292 135452288 283854829 550136104 795287137 370487079 147926171 441797466 808030460 858492855 888053448 85152736 860133455 880531574 130776732 750440587 871458832 823044101 595088986 181468982 111023551 465177813 270723006 462265511 199881632 731523488 595723912 869811008 916672736 829101619 153915914 961024613 623711754 322278561 728258225 573114740 610095271 289043892 232336418 945930766 55188923 646398265 296632049 5070542 227842770 523811841 856776457 33878730 956483166 700455782 664267576 609071493 327665481 576264097 913313249 530884389 94695502 373443109 241672419 968526782 562249280 611998696 709390569 285757119 749762389 301943864 120559337 277933655 498868682 617070582 799896790 837497962 48168550 20062479 437670368 770177945 835622487 219187901 255012406 664996138 781966480 334662904 536142312 882838573 196488270 274588018 891437612 59738896 618325465 1078923 208365727 521474092 494037094 835378491 510778151 794602137 138753765 465908019 141893906 900242210 756941080 882355113 779276790 73612087 557014466 429480827 817734287 168422924 503606724 831632763 487267835 827153669 518935456 155576925 24760324 697927662 515474933 68069106 166674436 340196321 965684881 438179069 276738809 544983262 650651247 127215242 632612160 410750960 184865026 257027525 259056123 128244311 478059783 732549123 375132925 140712409 185238747 696356734 284839861 834785312 900534845 21430096 342144495 7075690 556438981 713495029 57667018 28062596 652546229 457748600 807252954 435237831 391854888 914236848 993064040 765348849 139443937 780149351 899904602 615878935 272861016 253850104 127450782 535609969 818638227 147185529 662018711 777297210 765820802 631154928 276396243 671430995 672667498 222268917 678933208 601718114 143791356 605428577 460758368 319122958 602129508 454914476 446956051 205581045 507596453 738937321 204619945 729669234 932445405 618154615 149603041 432497459 213954764 378912620 676705467 929806111 127099718 514258573 185050441 887194809 151632467 539920211 769385740 285395182 354827559 574569246 781895305 141402037 127938261 406253256 76354836 500023228 691484506 784291401 280793120 944719687 439398475 257969954 238194984 202537521 937519021 119271011 658028905 883841059 452011441 658913349 611241601 200257594 700344679 476197042 534136040 925577172 670338641 654818452 467428136 958247542 628723047 742870895 935308334 789391157 95126448 630100417 121773091 903989053 368863893 363279400 334889181 3905928 868778277 691321129 997367203 27273371 373549468 623358286 375119511 387156442 45145236 845438583 66265321 600417736 99686783 481629266 506053764 106782933 337233452 179092218 348180539 791055396 672902510 203203795 994608850 310050575 161226248 36398594 372741966 83048717 232972106 644381993 34959098 262137479 643431595 326863384 342335618 50871408 656898167 606139612 230910587 277291295 450257249 247412881 588086052 244117901 275946116 644346657 146879346 59098304 671934492 378500296 830118692 26115876 879296913 886284384 470579358 585508694 493178339 223569862 505736052 926179694 215360041 430957763 32214833 61005411 462472402 326685521 228829792 738830373 927420199 511676255 956302694 511140564 503563791 865180292 827257982 917359478 302507830 561465553 131379938 677006358 287092924 560798317 693380087 774924557 843087039 477856159 70953739 652320769 29622553 656399915 795117590 640869636 342628234 411977508 53123210 163366925 504292228 528616846 302185225 678160681 346275969 108337952 418344077 62607899 917542883 45567663 585545440 250381657 245089111 706588056 135732923 41612755 960463550 248867661 656004922 490035252 686031497 549176936 86853009 452627916 610565238 512104316 75432125 608985178 339994007 368100784 933409194 501645504 885614858 703511696 877086069 724999432 974375746 395163750 932687734 256870240 928742676 755984611 343415382 537714871 56541587 58727645 769957233 806959383 488730293 948773578 966004528 48076123 728834513 439422644 264772823 820469723 292996156 454226236 387726825 805806323 362404157 659535913 713588082 302611779 289231141 593363865 855379091 587602070 59111015 283118305 167169160 174628249 142804077 929219738 106215370 238904725 142049935 696189058 774236964 182517526 29202854 928242403 205130997 146270332 641890339 610022022 552468648 505208889 853326404 343659024 391338298 320912507 289914866 809108733 28406945 114556532 962583678 719627273 301443140 47478996 299321129 358122533 356734049 560379117 188891053 417588362 296838673 553897614 536486909 405042440 268983251 322840945 616462565 787472354 606668969 554957364 534367427 217639486 14846679 736822161 225132416 107218862 373094434 495649452 999990447 571441319 275191154 756417202 696677720 694272719 773101136 608095815 558227354 209379832 504264345 99180866 106962245 261097015 886583592 833079119 105437796 50341103 673180986 583852757 768862887 687847870 115357122 627242684 289546066 794220361 279255988 286330447 852082581 526947607 111863693 948904397 354929843 346070653 543091990 635862564 285750809 340544164 400878841 503992859 534081340 724054628 995573690 271412961 239010837 663241799 854956559 167107094 87680715 111244458 286555911 568231585 361862899 211376919 853751842 496680818 413158671 710921866 140383993 33398376 523067120 151917773 690704836 788730947 557195334 825163604 299857697 198656434 59870176 439795841 850419980 531031150 891426144 546360483 641223488 117894346 803959797 830724684 225958272 25296812 121735844 601053053 59679294 433210184 429492959 779011463 948185561 137543077 152473195 372073667 961340860 34918126 773591494 86528731 95722749 901595628 320528077 121075147 486302753 99183351 744726970 313889380 122489505 273139318 251025458 468999464 505062881 821953943 761375624 845998778 481952593 372264448 737233742 295783252 816766199 504574053 524070089 156258201 645522665 475359384 736333829 969807294 232913466 885388242 85080518 136407469 107817907 459804132 154086873 405631812 209534332 177608347 970825851 931111368 333668785 541802321 330649423 767583762 651062325 242425011 753703235 224688901 609410235 513058893 91594612 61269192 924002484 725505506 654993382 61645837 989748592 582092451 40123463 725968300 761480866 302905517 14119452 425107133 100662693 99866323 771088744 743716491 238543810 642441102 450418795 946361824 976795952 614542522 771408262 475283624 836609164 835692890 417661716 145512673 997537495 116997216 111436136 309032424 413973957 590432459 608620950 986755829 248661727 904713558 140519779 402990521 867204841 754492168 674538688 143913043 886335283 463568882 276383147 624668379 419070351 596405865 928213066 410677144 388900472 123313732 691049897 363126436 751123217 129500411 746307712 404748904 478643627 124143952 414390862 247105393 927237270 741564610 884993409 368722314 776365799 38432623 781075292 753118197 112133875 647334014 809756893 539842129 789119361 880912457 248091219 97257867 661995283 616947706 980619015 499990950 671091194 898904443 455621259 891095307 636702698 676400636 333920453 733709717 410030147 983238298 837320795 742756829 542183474 1611079 507810303 459208294 150483544 296881918 840521098 406546774 191041759 424885978 749662634 754432666 729094121 797975072 931961349 705481080 798830046 871557372 96121379 168161428 4445027 863997561 86890033 966076781 519179385 671700413 422934595 265340626 978587741 735290093 876087826 549382560 609223661 616859237 6607102 270031081 241162880 754184011 867922316 89830063 176273910 438748583 245001582 572951559 760109105 442208330 138290761 283817644 486418491 336411628 965678567 337275416 689589514 65900679 227058365 899291471 862949447 757807058 822497906 326824802 373173088 139572583 898069670 557315969 966247811 640471456 552405554 822730657 710934929 742882814 994922105 624179845 26837639 195895900 224520450 940025916 273521521 311919507 403633723 510762241 177711471 669684178 957163521 281716357 955592509 116703649 658998377 381131615 245827004 282917165 833810790 238303050 835178429 974362300 446171650 437867493 193787033 921450299 216108437 736521174 620592554 730822441 909836179 619041885 866671174 872945198 522238285 708578645 991256531 909827312 298843125 870184166 256471242 606641933 687636094 134632858 618751064 892059793 388064951 360284979 193169801 62907196 328990757 390628869 471876764 44100601 420551747 709823092 655048833 11748185 878752752 990491284 520866233 25005163 256690520 159163930 749108352 109504547 663297886 589031284 972197444 549287380 882266613 575074466 881974536 931753275 999855899 964323903 396790372 935887347 168206950 497993896 889250242 45502741 56440917 693262451 371822955 314666919 771241660 407309279 486597049 185449810 812533981 39294458 688323553 562541510 690776546 976577630 648702211 613207367 658543974 607250954 433974231 239260380 427958227 483706143 213719429 866104622 966053734 385144672 725460173 262901529 845862716 131582211 128125152 958820042 30301856 945312782 578640734 823994834 984400008 850312096 396376367 569626136 336034562 14762171 654745002 73319747 518232488 222007686 36195033 183231073 518988888 436977516 226080873 445360364 133715427 240295911 781190851 106039767 29359602 293585455 863382032 33693900 166938613 419436114 506358994 765379510 601903944 40310003 629116482 607562595 808789292 233301987 648971584 126690113 713988034 903184366 438190297 246776689 569419113 837199711 32803094 516414071 24654503 90929340 68516827 698466764 389542667 415397527 235409525 190308080 413007944 592090426 402060950 744065557 272758133 124302212 445274677 497774931 902109765 316878164 383713348 892985371 957830027 764293872 434917928 996817831 163567757 868841730 293199835 508594447 559806212 956456331 811854372 501654458 197217450 197369010 696596365 749725312 124711752 796968153 928926860 990922258 792499005 105046575 96046876 663358609 666923725 119888061 298212891 911938764 456763996 725859456 677825719 547510177 583761786 322393044 192607884 264656910 603680744 967369462 472705737 368026023 125576328 402991249 611453700 55170606 579149115 765130692 173580301 313774804 841700209 765780265 198953510 895233037 222240326 646775940 771146887 585190434 290243757 309885577 748548250 497415999 172943521 826303861 220923617 656254058 437193954 327188344 618898004 924981294 626394030 430287912 84029931 888024532 467154111 673500697 906983764 82901469 34185568 431743226 482731770 202219557 823501963 876960850 929580390 399847656 41184648 778864716 790932785 129610591 729343780 79103526 463905352 182230041 822363848 811736510 709918606 495794573 530877338 208559461 306637436 414245470 270349409 405709680 197033535 176471565 457175698 530928425 292680172 527043754 853062281 504230803 902583967 896946134 778426378 186030421 201248077 216052569 856331995 78653082 928551166 228091958 204114969 194501302 657775583 440844255 538438852 212791584 807247142 215048271 115242743 333242368 323265081 844064382 32909673 620784864 632578611 478754735 451577178 686720137 725276233 473804911 835964591 395538803 479445035 583379153 935540899 860172809 918177071 316683886 711661917 269219565 869808298 426381472 406891738 862960531 119743380 21454706 796167167 120323610 112298996 554799242 610352707 714363638 608003170 327718698 559656863 630973426 261435663 350754350 112880466 967099675 900644835 821678432 431982129 568221350 736868944 429840458 905550110 511285393 123202922 659071648 252429649 698642596 69544564 546244168 967054983 112269226 127506235 339491995 533995960 16978028 938786208 489899714 666217167 477427032 538635782 441853398 616488977 186476 469111021 951230667 58845009 346983091 938193601 701085118 820530717 720523194 287534506 624470422 317007823 233713470 568638917 777713149 800597820 803930952 723506897 335651211 90153597 436992169 173449986 315881573 794403103 208810929 409807220 805643794 838937402 536387638 119556820 413365964 976149141 967466901 584357587 140270677 897276016 568775533 8545492 956546495 285260382 427508161 313536592 110650527 7343999 491656862 843342843 373255099 414111604 541086179 601274083 108646107 889875959 130339424 186475547 292848741 527138244 950218217 415233847 592882518 68130299 533121328 610386819 268061150 50685773 143458824 452828046 92286783 236388205 50504984 163121673 662305304 230328571 535310923 144961964 76534514 885581805 803578633 936722277 168922568 601349168 43635767 326408396 270745671 38215040 179747052 251057666 906108284 129957662 631787792 205243189 549555281 662505883 857835030 139602536 482466006 889934873 725214071 296594711 416811983 843434825 580391682 394791440 266975443 94656593 799038846 824658076 853659132 805541638 681359908 664923329 722201447 281091035 445708875 318456715 499576958 187829776 48636444 640239893 819653304 324785226 71057981 80362423 889250706 724986226 735815749 247562950 156083374 609033362 122634595 889364134 858892232 501937451 225493633 358757851 84391964 691469817 462489787 470402332 370505184 312497544 736570214 305773293 739047913 111705792 888614864 164236532 731970089 592613213 668081438 564247650 297962870 915532886 867472405 195945011 303607984 699744422 187768430 275421687 773759374 349084035 711940303 81462459 850897549 127015313 712673640 268710845 511494289 125257965 871586224 24614083 647897935 402553255 914400924 160534823 783069274 813328218 93092433 689644701 209123730 48360178 446780204 4881963 459670035 403662150 554855033 651787416 107487344 235671618 375809112 234235870 420028210 350923994 852342792 785796366 206386752 687597623 948674430 825261837 146744021 63450235 198052393 413346111 745593354 183075431 420921144 380959151 307334336 350283751 705178941 732407167 870063538 89962214 821421673 996642069 216648805 73162981 455101438 558201730 63551527 448047584 561219488 555345212 422540530 928529086 484383338 261313958 183569010 36468747 343363072 645183631 89548039 463953918 149713049 67773083 67975662 640100895 920307442 664303159 817844417 77484859 60443331 290495923 369499642 713901492 816188275 923620049 385719738 621199996 456086446 155638209 660764255 96616034 75939693 974247087 400038177 574951725 974861784 498897794 652281323 287227030 234441463 454357086 798029322 456545122 840612622 73667461 465514934 111352978 396380640 968652116 589692355 652385837 687317131 655324423 503869682 779989332 401384856 511731237 293901377 302951622 151624327 87254139 659070491 372598682 428751369 175028306 215053978 604555148 113494682 446573607 716903721 26897969 126738462 117139672 355700190 176899767 339004972 243306508 88056919 251942753 924920443 342768899 261179935 478981786 160058809 396649049 154834220 218546585 973726999 405508952 926665146 278950818 834812439 69904938 270759028 427259673 477067588 888338402 751833854 124904597 228775751 841499312 631227228 710327609 639448248 853612704 258805357 814954818 136802860 956828727 449070838 17672336 195635520 405601283 643078082 481102351 496867016 260109710 396036795 312045415 61459278 210410545 560047866 115570843 619060487 882493489 296412045 139387712 790703793 879487863 298290165 138020874 453393325 986016478 206881919 533764858 357962332 250588765 617777348 808227445 498063366 298926297 389892820 676832477 173141352 823256410 210332915 587153212 941237518 908801458 109283762 66360862 288530076 423377365 656223059 115005713 4533590 291835104 199004938 106905773 768803378 474765409 234707582 738361874 172269183 49632490 629681996 61609869 861281427 308363627 608245294 322166403 645057736 190921569 198971474 324555178 109863589 377248761 397207778 214802087 465058820 981529583 983726924 686480042 857094135 119029535 256387394 780034750 895748086 416550489 652293636 378133283 675138726 21068820 787737377 305219975 138438241 709882919 615813914 199004255 780173836 883562940 914723349 868022544 473057246 228076113 983159219 757773550 615018439 817933007 816339714 612373297 715024905 741699794 331094953 177503331 467797249 498294665 624041344 137423804 824458112 878611256 551992886 645337322 89389790 677487297 61822065 798609778 385744166 574243104 39833636 896421603 127472531 415501857 637322089 388741982 489664824 729815093 140839339 756196387 990404798 225594274 374177187 565888563 177804724 831443102 544438408 223893970 992731762 244332676 469810727 428608516 124874914 843244319 104389272 343561107 502859017 106684874 594088098 429056861 807991534 162351283 422432099 408966302 784430920 442282254 557817644 752992704 926242315 974766612 378984713 475504225 899628757 860392029 503092922 660542970 981894953 809991536 424800783 90287303 458612533 642637426 637444996 998072986 66201040 289273071 348959538 586077925 657799918 325078780 741856882 660457240 225237503 997969482 39979053 957484021 890588018 763278028 420493826 394461749 79274918 793693062 807639458 385619825 863940013 152292489 227784495 179910910 620282136 982984654 609636848 939337793 453285712 510991132 729420574 292250060 87144709 952928217 446442963 647521820 505784248 331549478 950674495 889394627 849728633 682525488 43096867 856455170 849457142 838486982 50803708 660194418 489861671 173498789 757144248 24249216 366385677 353564238 910929481 551851497 90778450 704258935 637843403 314675920 816182920 26652083 126424922 5649549 404266128 635605460 748303238 919612677 78008685 378937263 323892980 238355905 918092123 23521093 268131343 399658390 330447363 807652868 489916266 681141281 298705660 402227591 346067975 321832032 768789913 235626221 761297756 716976386 999015664 663063594 107288460 83551313 189683465 674359582 362654235 972786640 678601946 123100537 276746858 405678280 798035135 152637304 95221115 822934450 604693660 773426157 352884525 830854637 359391026 379455120 433777910 113039383 345658836 205198254 718943788 540020467 477420078 842268417 54011364 233806855 198707395 584879590 25444955 599653490 245037644 523885488 89289005 949505472 53613171 627776462 589999804 411765400 965174073 675084095 538760281 510281714 476842814 210849677 93891390 302817467 104015350 196879940 148928745 685247476 693501660 1999194 126827301 787342458 30072323 734781895 414170458 165955444 789003616 53135300 609746835 664029687 116855944 476311568 957212300 156317161 763875705 136505798 81738753 444232743 127775295 228539652 786695471 248383484 572602029 108874145 240682909 391173328 1472172 306905595 199389624 812712495 60753595 267353979 993772208 645466019 418978520 665132147 23594498 297898055 438578843 495831068 966981550 621347142 266629670 185737080 705998721 592976145 689529489 734791288 750250923 777175976 220511942 104311768 664922764 530511631 930669117 579736244 183060956 591282685 875161510 760244264 470729914 738173451 693711235 643007249 476411399 612549820 314168692 678737587 840444359 86587376 450422068 740410421 45293965 32233368 269985612 186760603 219733984 729700123 368875186 494068606 220108195 900819353 818021459 851653568 777849990 619040359 782930228 92788436 111612661 582410386 851400712 440436346 249350778 454655210 906945739 192014113 616879302 354679443 715599986 496468922 100628011 256872455 183059118 291309214 553827572 3700413 393253929 453859223 340585906 494789698 212108998 272184188 953334035 771802692 330400189 460214999 130692445 427211121 783713835 760234755 519473092 73416947 588079070 861253025 672618118 519692486 234144212 521982597 591686340 160093286 362691539 861905015 234113392 598451006 770527564 535845737 804026996 244877564 676004541 972870950 110404056 409606675 391569116 766585534 895788857 9663331 258958354 9421757 244765812 336840253 804314338 917462271 720585048 613031171 366229874 640854230 991455015 600539468 756790918 190600555 919677821 176121224 588827410 167184622 122893076 655109984 836770321 646292424 499516836 134920414 814082323 868827017 720374109 972431590 382640377 799758254 300213470 562748418 369226040 362642125 951329896 669458492 147875059 422796385 137618212 427985792 763433225 23936403 19259182 859195079 260797015 103290078 388840702 499745737 905455053 596152545 483381009 386590140 749866977 743102790 881542470 191181190 587904607 190713088 921646645 539157960 860871261 149722324 209338979 815259820 218059052 53451530 823970454 541828411 810998417 228131104 293422950 118937886 190518890 69480221 226415110 810117140 335825576 450909156 32277627 203217119 28449960 716747670 26046187 668803473 584194277 346170176 711772667 985930589 919519641 980576365 166239513 912769546 757746498 481130341 682711890 946713591 527846942 61238450 19502675 314485325 39334399 364154272 221180627 992386441 941576221 849013553 757221985 616312549 721354902 16970931 194428332 17678797 361635166 921540021 870690782 695456684 122113065 223978867 624714938 728307143 434611869 69726294 410564533 739033015 513490055 933672387 539361408 755957811 859887046 177402428 462210998 405032234 938106698 69779711 835509681 783178881 268139798 449189913 188663572 77808022 509749898 407357168 181965022 642758714 265831299 161864219 348189940 896713286 810250970 555755582 46456652 975921848 689581815 759836920 170527298 78286788 879144403 379234775 770275456 561639571 714610027 430836848 524719062 719673477 298619285 356448358 534052261 186798666 944208035 185703984 172570696 979138491 586371452 24454427 812595612 791144446 271948432 76354793 574490384 139171121 656320372 581318833 566058178 321850667 416181041 788229407 614610188 950174011 61417938 160136135 420307300 951854582 674675179 346008184 96474565 561905804 785586490 60370059 115508101 638905914 804495264 999974846 813598465 492349465 191481666 703757555 660275914 7896291 222872019 483108290 185649888 577998572 582827083 345572311 236643828 648386104 215995326 881617585 147333719 224842774 454759369 740979150 88543471 588411279 640837206 285085463 306410869 689980659 497772284 116325468 768473552 710942555 457749088 771273218 704475805 809953659 690792231 936335889 343448429 714427464 118593630 27275737 308078621 210050641 825012716 215984485 61016354 996638024 558776536 100804317 698877284 724777575 458957337 319294038 759335848 185536256 370653203 233177673 144160980 215187932 254321836 836778974 872544811 849181482 3318627 453915817 552117164 213962418 484601814 668616970 298421203 144325012 763694701 550652883 253921795 16776211 79753687 142991875 606795649 669667102 168519405 82837659 852404506 292754227 502949524 127831283 81277612 343326946 115800317 600619560 162722267 245105927 835678344 118462810 153389897 137701643 832990156 847150581 606717795 836547207 438395764 125249564 822087316 480069521 143837830 307105715 263434994 767185387 411666948 730972579 136015818 924023403 685456559 546507474 430034588 655249256 89611024 571749975 543084088 637187520 505136805 927646932 289255430 838334320 185122645 574409650 329109412 942095061 135555112 201303122 748514457 207319655 646426421 385917405 869357090 883558093 974701367 90375633 93763550 228568401 870900860 420288030 353090775 95997099 655553773 598185863 120084475 538840303 271841710 298802364 627792297 520490908 929937581 374925060 588266875 265011101 595121728 22617287 745519941 638714612 863238744 832615750 764111618 351703936 390934222 299917182 738970579 117153298 714438504 901513840 412172113 345955709 425950824 693843450 320097934 210466444 255823919 632925239 599344243 331489903 84399295 516567013 388508538 355700665 347725745 657738526 937977930 125964211 78005262 788470554 916651226 289499352 743235281 830124631 458124909 292034837 613190596 306428165 338517048 366780104 192545054 741748215 427448327 900448298 698960661 660522428 911749890 196913811 135723880 237588135 537046809 463939698 872263798 458759762 75026713 736423011 139136117 515583064 995276979 304642162 579745805 220891500 212991731 604976230 167043900 658371165 175895426 725005619 723529210 295981361 847540919 909608475 560654000 193900710 218967399 537511236 950037172 958279642 969646640 12756001 92673009 755076770 915377743 909441285 623132916 862422325 53053353 935125173 146002122 409948809 326481992 255449541 57987096 556811228 122332588 158788847 942532530 227084401 241576293 929686744 327216062 244768589 870040487 710461759 133660428 761438210 682697386 740298731 234373443 88050967 123320987 747485785 703784520 88286614 937564150 135942352 233903999 21180291 223990373 891029067 219609853 510104055 292962245 641802641 296462460 399949529 807756953 956617380 716640994 850662965 217853362 421361205 197026005 466319751 610162150 725060072 983188221 669001564 936954779 684951970 611216504 699253598 860921035 744739942 50743394 809575971 800005718 578026691 497428262 736012007 462114933 588274196 459962428 50865323 251030457 273499472 468260106 91988446 362912027 389769248 961736280 903711959 232336411 626697381 3004364 924549263 756389440 659332314 591675457 622792445 349751560 945035560 475675830 678577214 333775742 401248509 160374140 639638272 1393699 567213029 485583522 936009261 246777009 248292288 903460408 416283042 265750491 335695575 846457877 134085176 601456937 421806406 946582456 63668245 26094626 22053433 940078266 904559951 125269823 653643197 810349487 414637432 869470116 707508562 149387627 784385827 397560954 940970970 840217376 784511273 183761253 711097643 855933523 379665873 219145389 381352795 219414212 373516762 704893492 706705550 320891328 456760299 234272401 396793971 641871447 210051171 889410168 20748678 431580685 5477120 236003562 487534264 785345236 883791719 743059481 553587121 16430114 92505897 458805814 976595574 400367372 215231741 794168917 799116396 827613209 577131009 287780295 69958423 230086699 529919197 826091585 944322334 929727060 763344853 869884542 686541612 293087218 372762484 989073554 531422488 846429777 35822357 385394200 740074838 540155893 221759655 988934750 189705642 484049398 354195993 352881257 155918126 816905440 365313361 935724433 685923664 414323677 164664245 901869283 899463737 796462710 884762809 13767753 753092366 788662108 241799445 103198371 462905578 197091914 822910744 197696196 236510177 363525240 566750319 918570927 994861598 780984972 489315947 241337129 911307389 213733150 873331244 309677725 239017636 702180966 178954320 950368371 202746213 15175955 967397998 670299805 461376365 489605509 792845304 72642939 294719504 571150840 257446122 392585188 455904679 71003176 218514130 671795256 523251533 488512869 62921513 99770906 568573597 205817649 259856318 281336973 989541842 917910943 9134077 963926863 47162980 36285969 175560456 315986597 67320498 487970756 897927634 291212951 673678051 593856577 883064489 369412123 709512007 666044809 131029527 191493448 521367409 394725943 508841364 586194817 343859213 865386392 110921874 520225761 400112043 188196383 214794415 835993961 446293491 774194300 229681432 143925181 396615225 67086394 102434496 415123788 945071653 330366993 439221288 338538355 143580167 60576043 636307230 683591986 162955260 26142398 161559923 9997042 735005079 144900490 292690291 115069424 776645369 14285818 499492177 800776866 314609563 823764294 703386097 5372412 643277517 110632108 414355150 199227102 14597701 437314849 125109784 157226612 990815379 607002981 485208070 269442410 886401069 155771510 765565775 635769535 835333102 948796460 136322439 303671454 209535953 685621250 302311826 456272663 437936538 895003664 153858954 813569177 656786351 727155590 451893881 607254504 691615323 98558899 103262293 235952250 367379834 212332033 158315972 990623088 426868078 749559969 145907472 756743377 489248092 806972885 884120904 135750364 46603082 942438651 153800034 454223788 764385772 984600719 732953935 350311459 883477735 918695525 586242604 146334890 285493777 714065785 371738388 29349045 405507366 344281655 458058604 791922898 666730606 848993515 509508934 866263791 268912239 701789232 272475670 754346723 540678809 911951609 259338558 211454103 153579018 444395567 534689680 673024691 971689552 920416781 847320582 657961793 985000047 92791213 703355406 346394133 259199179 106550506 180032193 25286167 30706427 520341437 382396826 616499645 280047048 66779929 157110966 797575323 465676080 258868970 335345086 825363303 329810807 415803563 155444865 746888442 879468843 308606917 488043660 312831637 960118857 470460770 72456340 330902462 788515433 232948017 279392794 326103413 973156158 180687277 12791971 676312840 671707676 656669827 182137725 657714627 683700763 873224123 873737350 491385103 163871891 646137770 565771189 689239620 45576518 250700696 345587904 600481079 411837935 298329285 59835211 473700683 64757524 864617608 289212323 157913929 738238700 973675194 579998547 102076165 993075382 17145791 872980747 203023717 321540558 185307486 380693595 729912082 455041202 85937815 225442525 352048332 690022172 966865886 421851863 235687780 314248478 561969710 744817205 245686501 906232831 205536323 561953594 972072238 308572274 775630914 898440194 303970073 438897562 907024087 361568289 24054524 314743514 325897241 350708868 698867420 169221680 453407732 748028741 53848142 894059893 233926578 407952403 882893284 45845358 10024477 2330514 331381870 238288006 628961910 158558560 622608779 884437328 810322019 715530605 34686796 761604239 983951363 466263636 459425239 421178167 34700311 518484640 441348853 127490153 818307335 741723796 405891779 634807471 120998681 296862196 916407696 632251790 506908323 107320051 55418705 819746395 799800233 222146381 893485459 687176921 580107801 926209972 29278703 859598200 754354503 532532187 383950712 850390361 630921105 582072452 391917097 138861859 128996775 918712350 812792419 757937304 487000256 524436187 824361910 93301588 437256603 209235881 331259715 227067817 883763737 883068452 115656505 394247854 749169196 843060631 549357517 56718516 499542397 8670772 84374673 100338609 774018547 478520317 225160326 5586533 360637906 715285392 604293670 498763725 128535271 238771776 404701546 589834774 291158507 447669686 758642842 636180663 397399855 565743710 204339677 885132079 787483922 854642405 837589534 51552464 320296685 415922406 415160682 833068976 792182108 249384789 632663100 568746383 954413901 808914821 41533147 511576315 553480863 345754633 246108752 168998967 207487009 174474962 601423746 248672462 16780739 855358106 793924103 545095889 138343954 648024638 79657153 257090679 865236637 826768102 717666465 254451629 112750338 644465983 756601006 20238945 172474637 186972435 838186441 373041778 878005431 437597717 635602565 666812316 170907003 926769102 355883394 103619980 887438716 181434478 164142177 788302696 185030256 920735606 570275009 937805505 643340574 687698717 722415398 814469774 388838124 454708282 526315274 318177725 869260492 131791593 396895859 874388719 137999 613411964 132439627 912847817 412698815 875123352 485184453 847582376 769257856 3041672 550919786 767774566 463746149 474485851 886194594 123882342 686284435 936070483 648085656 163832295 71797412 925634544 818794240 582325134 841419867 43326699 898769346 767127733 403477882 683397301 577784051 980410431 225234302 852663178 890789831 552843243 804619090 295841804 202677419 447047271 293627690 439347131 896235568 787305754 528657396 618233861 258458131 745640392 322077551 129734652 915863289 268681587 418745809 450766627 707651353 272616977 638918269 82884482 764457188 581281065 322861494 608618231 313097177 783511673 661711683 758749287 661648607 149233517 141652130 434831515 505208170 256335043 108922074 767575819 895096662 813380681 161972177 222773662 269734192 146006834 436494636 513545291 256341762 813980962 2139258 449267513 68712168 256899674 559902360 367913559 167153489 346936974 482634029 494182911 572504805 849845184 646139977 110763626 224299798 315531031 566250486 81247032 839847883 43543312 109018057 892419538 999098358 148108677 161920540 429391817 413782791 344398052 657429132 425984124 508665489 487739784 956705293 690973914 703315591 786261348 804600520 489427632 620299733 405636232 205728300 522727785 96381762 228170872 93809693 750900794 992349353 78199065 573374711 758939620 447764186 238675011 341200391 829536073 497003415 728849148 652663590 656074584 398310221 528869236 727204171 278768841 209879221 474480965 139392672 67325769 71888594 942245893 131808076 209412243 691135958 222433947 720082400 457793152 513348368 670726613 910140567 491055294 712260424 548368109 536872734 425641752 753066536 920667440 817474136 200148188 735776973 958303725 163862234 259343834 834478017 717060131 499534484 779794273 752923210 435570711 858171062 559475856 708380459 871602743 759351481 432814379 641426722 475213882 153084981 440759459 298806300 898450986 221758014 688795739 677721188 598608193 870955860 735225175 264053328 945317646 896369949 912516260 872636356 707811875 674362601 899327285 530996908 721793486 303827606 989907680 536849608 960514734 341021147 328679048 888870604 376293343 541381180 762657171 997447209 494114092 333436105 894052984 717062682 844368715 2382843 175121514 983824136 486820811 476478104 421642067 872162110 34043280 483674918 103535775 931817569 639815603 282682751 679338580 239684441 724593871 372301171 199033213 817732380 616099878 299911142 824152297 330339055 982697638 633045993 738762739 805155624 196391122 318073576 766066648 408484910 93960384 343732588 786263174 409863231 521188549 957062945 359379009 526323 190039426 814688918 432138928 889149162 10169589 486908529 708896824 779518359 737793186 535621511 87518130 524098014 314451169 585497674 964850788 748713173 367407274 872799191 953327240 767761382 826621982 850782615 702682089 963005282 193885922 557475162 859421560 664208816 905636900 932718932 175574635 608577904 700491193 37365466 786713490 273489110 136842096 509243606 511969686 444709912 160852941 392411583 699971499 105910132 422928270 157950348 353894553 159054621 150725243 149633125 661370720 784030600 9236421 670123380 300655430 909680831 443930059 984958215 869691974 973411277 82620501 810131860 840340744 645640375 910287537 756156945 1001381 661064447 510621896 6620722 961089481 910386945 135515470 87480152 967474835 294291895 139882068 896176488 326126091 729975586 679730373 540077916 683165335 62856638 851417221 255405430 775729078 544367122 306261504 265297624 374645442 23166580 416672775 262460987 410900659 512889571 596679990 643158367 299001083 230512560 685321908 77447251 367845758 622023218 573514443 73872460 614074221 963448265 812605628 157370755 314054851 701496143 40675878 870954082 104264071 278925218 387033880 923748810 24554685 465979715 359287449 631232817 442336771 384066725 13205932 650810398 916404616 770880949 111393737 875443819 142196520 893097045 278609303 823585688 775401217 179024251 871669409 31062220 463166162 420000622 354286110 546639735 577825081 403631388 699787598 881935417 966672494 53991221 644350041 572005795 955517378 302963868 465956438 877046740 915173086 242671878 141437523 526373297 325000365 220844215 554076403 178397060 465561548 931722606 426851448 805344573 833932505 345984616 100101586 692555702 273281674 757098778 381185901 804046305 348121293 480071912 682996807 457157198 909936725 329356387 132448804 75419274 929851349 413553185 511016263 118341395 533346776 924106782 546471498 999246776 112050107 783779147 999910442 719925728 694321128 530805478 421546529 606700101 787597810 369295359 569420112 191285454 776344346 624556602 508627809 581919483 187699625 205561417 156888918 700379137 917829273 708991956 347953798 588521576 214769020 680290442 218004339 889103482 461431689 883945474 697791304 955440152 467276861 202972049 368294145 725367418 376423055 854051065 243066008 109567686 62244790 926252314 475402800 508101222 355160899 375705155 20737365 489150708 785595543 823649368 957175580 196839449 284515004 390307698 811404111 587688249 414004247 112399530 784526520 640372840 343150186 792796531 648317586 503757247 436019128 581269594 701155624 419903230 202961898 763320441 132564673 371142650 318712754 801038420 262308539 207873972 424787869 839839700 209156436 868719301 618170915 23299189 139333824 890553529 40601309 410153971 324651898 368689707 908696498 564770219 179364438 389850900 682543500 83403894 897601004 527135395 806682656 15050773 327146283 119531798 395307322 893742120 24993955 80774955 49276357 621207968 225447817 479333146 60537843 883156397 963098231 296788286 408806982 93641943 877770647 127645026 542620905 466386953 94603971 726536212 662383780 337253440 517244092 616229840 252198086 419308253 81448994 47373975 446379928 619459239 240550431 445343370 603666097 518794585 457933590 959051808 553735660 739126954 704548972 855562252 33831786 342474990 15911444 65346793 371316009 582684972 272847780 783193312 869185832 392031002 410276060 606020678 568070889 709050915 217182673 33070036 944191273 637786197 754963102 650632358 810261735 293543424 36412449 178212517 99063395 391378045 506192311 480353990 156899205 627742428 705145967 297437205 135930473 431939980 818766231 143576702 721965901 542514361 303106439 298507284 3261426 359942415 224357199 239719813 254646210 898694155 396874359 797873897 908243585 373977433 336814429 836095459 218688082 943406828 510263049 246243525 422012392 243544968 334415843 761503659 658417864 108088465 681574270 787633185 26885255 643733383 580263033 314034259 974116878 256953755 374911842 274698118 247555164 451574671 765100685 167096332 208008380 276775421 352044803 815527430 79202082 652129407 784853792 724783953 184814457 877678246 32561321 737242347 303833890 130330934 617707501 660441030 529719207 873527314 271193736 233026328 523260456 396849636 536251756 617773776 797369723 414580069 855988849 572461944 854548034 839210562 735299254 443064917 533741696 982447510 243054191 968090310 380356524 299709232 294763040 154542988 735275029 91811908 117631178 209020452 866660828 633786286 593731139 819689894 132097276 944898620 358783400 363752670 123227579 237846334 75961630 478216986 989575944 147422872 183717107 164536640 689915181 569056082 15834224 339117408 434227193 438141561 397167609 813655017 504484411 533158391 488157991 301534482 161275346 758897533 589620026 478508817 735528943 176444256 334210220 259502232 612721103 871957740 139230770 875742480 128199540 72956899 312747954 921469642 250566579 68297607 832004743 569758549 717927649 980744636 127876897 633152889 483726292 975530430 555984401 139360237 938297639 524804395 509156593 645874491 511115071 756433263 488320926 534353627 291685732 288319899 196293760 767481574 777905226 890460702 776615092 147783511 278452482 677667058 297835385 182695973 997064145 535308086 919548047 864754044 782931503 882559704 948944185 283407552 915434310 290036537 796933160 125975228 81735692 194518876 539730501 35381907 355899568 211536720 213492240 533756031 32366328 455293942 655767283 107313947 907742710 126895417 51303858 549419427 540765783 477528469 823687200 725128363 236337501 493131361 686085656 69034517 545381290 651088581 816236716 501856895 358207175 173733935 396345499 225049623 519172432 798453870 840638364 739814414 740045830 346663591 756832418 774176349 709210742 130749831 194375103 150740198 647961839 425697685 119629107 784014842 753056670 981135337 691786618 924560490 901395091 18930159 514425396 205738177 659261287 577379441 686686399 169485776 341183530 170327173 325393375 579529982 893116914 171330669 970149437 97302380 621225286 906776018 405053190 45371954 402171501 881870157 749971961 940745814 603461553 24767428 591604748 968872679 911537101 492332022 849053374 964751579 271780523 622104281 933847542 442619459 264823813 481773241 679209105 887662639 888594508 676946600 192099485 457172443 905495406 831391401 975840367 768080905 592794456 664413553 194730674 202566886 528552645 112673349 426113374 572201924 684302983 942095615 751145036 875137343 708610310 985232160 962731814 310400100 94082399 305927956 196410375 981771675 847616808 225056332 948507819 838138279 533679807 517161005 941268773 945565759 841013511 641483105 197827470 387790156 731310214 460045465 818679151 170726392 857957602 366457115 814898187 772602633 898817741 537668781 355977939 240957324 562255148 30720518 187356835 737609945 170525947 467627119 431797362 326292701 927213731 290198221 435307293 324167278 91398650 721203029 838101765 547015113 755817961 382948238 87526430 760265801 914246901 434197150 758629757 772414900 713132059 627691576 420919703 844681029 765569394 188605519 118129392 3125115 777025375 620309779 6009334 173791044 768792217 613029487 297991555 812977503 611894484 508087056 302334338 578407547 148062584 227415366 723906283 939707885 210964314 198083254 853863902 921454017 910947873 542135582 920230797 780758281 330720873 744438627 11199881 693306838 803100773 391968021 348298963 846373484 575106503 56359486 344337777 812314797 127257087 411478295 935048752 444426115 923056300 784185649 635664996 576257056 377418899 401569058 619349585 54983538 946590785 975049644 488212699 714589265 168740249 647247324 34811234 803239837 681944851 144230578 206598137 112193275 511979419 74725071 986541146 924415259 823525602 456472112 197994084 613301680 59563107 323711564 389686807 163426053 702281895 698838797 188211319 673450575 777719212 220164927 714384381 358665176 369109120 981273592 884297692 221257979 69693484 584682697 379465567 785436379 429436113 270977118 652670803 168516745 93278050 654838491 423663795 444082975 499792520 316662679 486311310 351142292 237405454 706178128 25698273 542558870 202129136 776980715 100369031 647455836 222376662 533549530 47320729 672470490 271121386 494484326 199755178 892354917 318157450 671767109 748843564 703573250 667821199 730827919 846906222 140605520 485883960 524784118 630428967 906287404 79268033 606563673 861386874 407509315 942751928 357110719 382364768 324297433 57415731 123034150 233558324 952523950 610033979 431840990 894961814 228749355 986076852 350631726 641355916 813213890 678709924 562900436 867528390 34987889 948904559 422847696 532368129 955139785 451858495 510568813 53402513 771372480 722254609 68353232 809371320 751680941 998689265 884954923 487559013 433319924 699440861 833996751 580968235 117416656 525704418 605553438 979186676 246205478 538530509 724041673 278376477 454800750 803157406 820223756 382498927 42931359 756726193 639350405 103668342 376945907 713977622 935328967 689361024 290263254 28889600 917753040 806292791 887551680 366385279 455169802 74121587 682671604 770505955 925520449 921011863 62593626 600286635 212601711 34547133 161744414 125167207 944381986 817633394 173250804 259406474 885427006 765234940 922069309 390064916 8070226 985324171 543264501 844077775 657689632 703514019 619250998 269059144 398307912 764492024 409483267 869552142 331529039 721431828 544987362 52867946 539671150 725593047 46102443 442172237 46184984 446741730 788979529 817235558 516639308 662769458 223202028 255845892 937177413 327260477 925397211 107559905 3600162 164529472 193687078 868254367 399491894 335120701 816872466 58624295 382967578 675015805 260266757 661681852 376508130 653697800 774606914 928555293 295911725 273284148 247478398 79979099 962789238 522363261 748650254 675790227 969061981 848281312 347194824 410873102 906902879 882382133 225981035 588298365 309879395 402752563 177783943 276414544 961474100 534917686 185719110 625792685 532071246 585003044 641457588 716065611 247595258 781878965 473285191 93919598 907009475 205793292 989022612 879979486 839739462 154872479 55670748 630263021 77891590 689942138 678245655 864509005 37365680 540576625 766311812 673529464 382248833 832725810 973443371 282126586 909757119 480128129 851453993 278858893 584712451 912136269 758729536 891885798 510618371 203212975 992262407 681388984 812053636 72005569 720846181 557829025 624088388 742718321 383646524 542880704 22085301 992502685 179589446 170337600 696095886 432916036 655046862 203795009 984862637 390278018 228749535 846958403 51333486 184686133 112166670 345074277 677817804 63271611 484580058 43077064 434608626 148478824 691520195 909045350 417921096 407142705 394327804 428684775 487946572 942077880 468217614 943306329 481125958 313399027 557201751 952823128 238113069 768545892 822849252 461183394 711698514 893993658 413625607 860369266 116659472 189216627 563101769 694615300 611274292 29006081 206444748 493418846 584011290 224157283 600831384 417294571 451080846 356236410 358343093 611409701 986722618 469045224 856626099 879155582 401805236 544346841 915726828 774159857 87742446 874022898 77371938 417543514 270993443 556252400 875783350 118400367 639513008 781965014 576524751 86612053 489882698 426015502 77602926 282670423 831643926 856779959 362217723 983901214 267892872 471086949 971721618 640762730 46025544 549004879 711047679 232733341 274813867 315816071 31044638 763544600 123755399 366550630 162755096 780164167 523897960 887562168 599336767 677636575 616178659 298188213 527740901 932925569 120375278 494172003 501896005 253127382 863618425 70558893 111775205 114919741 715695422 727286714 974269439 235344254 389319781 530893834 729933813 252862515 155758651 940336662 972060576 549049009 23563094 921062973 362801001 698671228 791892895 561742836 677355995 533327764 760078371 557218107 26875210 510261624 880757295 385451546 977319751 840863362 734388100 778199888 26862168 508535989 487738190 106266832 323615747 551070020 338896355 820512349 561986243 769136858 538625628 384882201 373808695 875276663 933305664 947594130 909423496 151671723 366620709 922973401 262703914 728293826 231633319 66878493 649528796 553990242 537420289 742289599 29508956 557399220 778892493 980723487 418658674 62795145 293062418 891724826 365052513 784057695 826188920 285899097 474800355 816128747 405444390 291038040 613110827 708273575 225902545 739970828 608401146 674634495 123433152 199363622 997932099 3707422 453322927 392966752 852698375 885987997 444811486 574499143 98837982 407034914 585509856 528161811 965746219 431018030 998556790 744056867 535719867 785468025 740925223 767880398 529201843 585876866 344637228 20534316 489993595 779160849 922469960 626592047 791804569 113391782 330919092 864772795 400161244 800313576 418446391 235930403 53494141 177207466 292254779 957908015 788832969 815736892 20172402 461677968 285186468 207030969 337876750 328016413 315176072 217196404 934186019 63137826 676805190 389099615 539156536 266401936 169270421 528320739 953029664 227166919 305509609 778014303 27925394 232443694 819559679 927345876 335948093 398777161 895068610 533604567 572563135 966822687 67472941 2508546 917656944 650483667 654295182 543403112 472931396 498103201 492534199 313987406 654111583 195432161 959508151 741097674 111570903 249889858 104607684 833284589 498387017 513399801 851684439 406043946 114233181 272159640 144403516 272125865 891245951 113297396 356960275 391868532 287990904 878091361 904745848 605667624 846808939 549781386 783156360 722099665 900633940 508134558 348355457 530133413 732190095 178218269 199937290 470417139 691275977 526603394 523467779 851023095 785090074 152791851 203044265 741367388 821841783 74918449 996180025 251479467 653709656 361283881 942574094 30414993 525055656 162594056 169554116 924128681 238528421 292506167 537242312 651412934 291943921 118266803 614325455 737129106 206611012 710691378 779950877 127091471 937853213 853211497 870611682 770884028 4718008 861207900 760523449 262759545 943819989 864822839 470835775 636916103 771997177 699185970 467299755 243683658 795580117 429773101 134704377 881694640 843293536 788407162 663539148 528846794 632877706 820343337 374129663 629200466 305644045 247885417 597034071 850165038 476262310 374688947 771910769 702836863 533161941 60500443 573417724 25941602 226676137 138652655 211298524 672331462 983563572 932132983 674073518 4388354 376298666 148220739 162280327 238484096 388245305 131838844 813927813 687560339 808193426 405409644 227838111 30480219 418730619 33542925 292068415 543112343 64416647 857975197 642132898 43445594 143754410 629889593 426767583 989924927 220268364 859247478 18824957 389846556 347600610 437980560 789861735 722450611 417084029 38854596 818659881 509807789 298440603 719228301 934573129 81420548 76532314 162069132 401124485 494104817 343010749 256161300 201049387 959420597 651851253 253429232 187029097 686427280 618922718 339325454 991191325 977146966 639654365 109248166 545654048 89889390 563105083 127240267 730301193 774404637 38292690 850361137 789713108 402856725 641106476 150023967 6907797 632742843 70715456 55523635 181869337 950584149 831470242 816854806 665401169 378811181 111041816 698387344 804888377 657557901 26316169 795287787 528483073 172591125 46952858 410524269 9856812 623490563 4314327 512111418 961051389 335155517 720454735 287511860 519725265 922711391 297455609 985573672 234975583 595987583 715063358 170620958 436805012 10624531 973396646 455231774 169356524 66561864 714513567 914824212 57575236 714642185 702736217 40139226 285367258 70708126 472068112 185433371 976321671 823633668 495402107 173961427 585790943 566778287 325493108 698007596 608634390 786732012 103126686 613138557 52188324 471671591 771320329 501006271 219371421 957866172 770118296 282133773 306096595 433421351 68063943 399584642 205859158 529115003 401134563 684547531 293246111 919521561 26543677 129599194 70049764 188317732 873201132 784570082 95599933 447621090 32098304 710932483 527357241 276414497 658728523 359801232 755395104 672744750 493505700 195967381 161255403 64026034 879043101 686938034 622298868 166176236 415604318 553834661 810559086 242633063 557194073 880926349 400626798 416570131 853283610 108277334 543220322 689589068 141495580 981600814 356191951 43057216 412794465 761380548 801902791 158381719 32179449 57675060 501026629 103864458 372111387 881271957 434677363 906767159 698750116 810528067 271390768 697321818 494445071 708810989 551917933 81136312 287815216 461457242 294276859 648667438 981147533 99749121 301901875 285882812 356875038 312025669 51470032 289607412 345949031 389241923 658581293 927262336 786898600 89993289 260757382 462130920 857158414 244076596 165713761 965264845 266155388 728307732 135594576 43252580 914587734 473873195 58521992 914021975 369004049 583161052 20890401 247780355 452688971 959499126 163670353 580469179 125956749 67540065 964285046 471052256 113869124 359276001 623614827 914411427 74944003 597942755 94421980 298025989 300501777 580042310 333840637 111161811 115858703 24610064 764624182 867265951 599268170 382791476 706338215 419057941 536547567 294758315 176013119 310887733 585455499 811539630 355632225 837878057 678246234 915400595 165088923 406292802 615173753 854562640 428114899 535836352 720154555 189281231 826524402 371893314 387649907 596937755 728582653 907310573 688188285 706746202 100306134 704045559 617424245 346286543 243660807 963261486 698159622 939354502 830039011 374796555 569534571 239704149 495421676 846681911 63281996 137377146 295054966 740823808 149307566 808904994 433000476 788518676 671635359 107744809 982894096 898833761 805450440 346719740 371221049 450836657 746377008 472571845 87198259 40153655 703650997 63486154 883426723 155609783 976537392 622349775 951405098 633071084 646435906 459659427 518313989 445824410 673526959 434628021 87741527 469097519 167818548 920534058 645485418 940054004 899766702 870656233 143550563 223877707 265901746 360423060 891277453 273299755 506692101 835644949 25063505 652790947 690538941 791891299 798269557 286100314 267700526 11328695 26438984 340598300 365889344 686760597 48583796 778178438 448107196 558827894 253274932 681263593 131408399 285767826 284787681 249383159 730072287 982454813 560315452 217108156 791401483 349046977 6295964 236362799 939280097 307687455 459867056 298172039 848190312 983768493 755272833 997107269 421843588 542214594 564956515 819382104 563016432 660219756 337752194 134291719 350425953 479022041 619433211 700056438 813990043 850932420 62666180 367475291 662764155 871279973 315453759 5476263 236581495 788438280 67697735 698520952 412152703 296495243 407495828 335385239 40096941 216258197 217634599 189697664 153744477 935599727 122750224 12248913 903196167 678917713 49364650 477041551 685238080 696692965 643078249 626033234 414297121 687736945 557720298 361779911 978687437 673933455 39808154 95600565 750926972 221719231 717823426 206353405 642214427 807609763 523510194 886014999 303920777 156971673 291677199 675259619 327729148 134729350 784795981 210704750 913915525 842282647 217302990 47127142 52561750 82011840 965800864 969240028 164409220 200635717 731506317 394233387 135265168 235554772 883108952 120317132 489938967 329301384 943521110 66636254 815383638 629700166 365122298 255948312 654648743 39653618 804901277 17421274 322050068 909537729 537967338 510204979 101621715 27890567 777682514 375282102 384485962 404078890 358358636 13725448 450751883 181138742 543438480 848242544 740627359 780254023 571728120 94518161 215766549 869650367 365021357 701915234 359096569 616654421 826213001 513341255 170698531 437464865 979017298 219629155 798631446 549414127 806952333 351331524 439631236 302509530 852024982 791915362 762355811 400344831 374221041 227012010 796263249 673349673 480392549 889751061 60607373 619861551 163179293 109982819 508496157 909269544 652357789 520910321 218124995 593174219 919022782 822400137 760555358 916771507 822998307 676085550 115207294 371259281 585838890 133605915 34471715 952542830 286493605 362109050 410527827 288743032 750950201 574620122 760290451 956841955 125569233 452789541 621959397 162882965 120464444 172614055 192089421 220773678 25607137 578965650 114233525 844103579 909058973 676904766 818944561 764091035 211538909 489834923 347923790 218609755 37933720 601738802 628005914 620645042 813186100 274382830 894914066 405794452 521077896 951163645 355275705 329233452 695408386 966030698 621975414 668310064 48162166 223262445 865357337 690770450 419619399 341444787 298361700 875006140 770346140 680393693 122379740 894094395 306682332 541511307 353783475 879493578 262320277 996795508 568972581 92278208 111066953 848263988 393526599 795492044 703322520 20614081 537240495 830442841 727620237 330804841 735485371 175487261 828526981 136026714 592974130 140017356 866772062 989600462 595754368 76437446 555180519 267254570 229986843 219118309 953182596 927064568 614942013 536864931 912207780 932826416 184902983 136218636 445670604 58947484 9351415 650240245 546882918 694582944 174422132 861597364 861939436 988193512 439558821 771590411 356856308 613589968 881532110 243306174 495497378 498587277 936207672 987103956 281497016 832200309 478425166 148896107 645652019 789171628 204501677 680927312 402951977 94911047 992833808 586762316 133123968 440400261 425521260 505243530 650832806 72792359 685991182 361396999 403395186 936954578 484252592 758925946 628548156 530234600 34246170 933351245 598734677 50250819 782187356 506007710 629024543 940763753 769717814 657595979 242114748 497852987 232213999 146512389 271819601 927089546 354087062 542698880 470276641 615249416 631191274 651606287 189444750 947253548 747942953 769978918 589727187 259055011 95376208 301314956 195997142 387766995 786052917 780434338 718386741 128070939 912299151 635922740 916247041 262066274 422313414 680233624 765550996 803516734 923322890 90616526 876860492 75826438 515177807 670980624 476328414 199096080 931824571 893094785 849202811 51410453 272466435 856404011 292771327 470848806 307649378 405479196 739487864 61900736 684720716 329247471 683811526 859797904 656009794 107691094 287318962 200072277 201087239 438963232 855066459 83371369 119945552 526764900 54036845 186737187 936580783 548549087 831895186 602921254 31978570 572271214 305683277 800177754 693890991 137201020 389300027 985576011 679990023 790426974 627372319 232807501 2141194 278759058 562238080 976935226 660725164 970428692 638507240 18240968 863398269 800450497 771372350 983311091 565584668 503655327 721339902 199736624 11976938 921245291 458822608 92728189 222951489 432833419 398785261 727312482 887547953 600048146 307816752 122856969 121450173 392155752 425252799 812806380 202771605 422217267 108108110 516179516 141362223 439922288 178652158 563815236 650445860 643248939 848914339 646680289 128038112 824631361 832537317 246267747 36993461 322658606 68582576 193599840 856760018 621527582 529694697 80897573 609655332 509919309 941303462 921809814 456383997 603968896 785679149 266425587 507201782 412331203 918349819 525450653 683154058 763155203 195103523 602045450 832838377 829686286 737083857 633119881 760003664 263360079 78616325 601562282 563005297 809610732 146804991 900041180 597338398 473177032 590603664 863444271 355266601 55195834 844470220 766642118 382457322 341662319 385275531 530914935 50533267 299580938 702357309 608310022 12850464 423435937 856798939 289552386 143355095 215711511 918818231 834594332 854915433 171845616 796391710 153144593 67127989 76663593 844812606 512474225 822138072 384264675 597220252 637833583 617452877 864553960 722902945 939368051 179927873 71354644 250206722 454793293 487063659 834316544 580215803 977227601 924297160 37079408 650201590 483825752 41324880 854274996 166549986 587334341 784192721 866552209 923458535 655305848 869690604 453198044 100298924 729468635 528994686 865617034 440808700 563304341 313431510 170448332 78329816 416533614 173647383 447812285 154737264 301884650 946631 145674941 774723764 893983621 957548542 745401221 517215525 703174910 591123516 338624303 299850901 475621776 310888576 597339904 404795124 726930296 296144411 643737085 703798140 876801322 102402805 126570280 412658219 522725263 178849876 2528364 829883151 806190986 269821150 201738793 928267682 13977747 533630255 938176865 872560866 920474269 997764224 69657467 11836834 493578277 391184417 387714793 108669686 566965860 472000385 763153047 406106687 530124155 174859490 423870862 37704453 106676219 68016167 463705729 389833847 97423851 164845546 85186134 45350953 940945108 269174706 339221900 678053951 191913296 998400474 721938279 419686590 867537432 646412531 669878119 422059574 532253117 661867856 439581967 245645246 242839036 816605903 8913174 960466373 189546022 630165578 825661169 90090623 553168998 88486867 172285658 988349157 562100768 393261568 468402857 799040496 499405074 819610633 47673535 893037849 84278487 861150758 430175470 14418844 23649156 175207471 377806760 116251702 65884610 705656044 927647684 580095741 494183208 361533859 100153297 969709718 400017183 551085522 73624565 367832238 339216796 390838868 799696144 36965966 477445093 829900846 286635881 348388569 816004113 5484637 594480606 892514725 720418226 167654604 756328659 851053890 789775651 186850283 878483775 354897987 973823546 681146478 600874316 333202456 770640338 4255114 30986777 139575215 193236827 832266526 729720782 526679313 471004739 314088711 955973043 853987295 577235641 292511215 359308423 81511275 680582542 871996137 911681382 318365864 699155238 227532385 462593694 458284204 547036439 729981277 114978211 115644321 847554678 356735798 453029306 550717749 672303121 873813445 26782589 263736989 151706744 872239856 380140224 545692060 790990143 849914577 70809813 549487996 25037527 635979857 714129055 259226749 557352292 752263657 463316912 207394001 346420343 178052144 264295105 32769284 397326192 667045645 576808155 882457271 514821529 34300322 579218275 198473156 289766268 270893247 851928164 370366112 726452113 855148094 97923263 917979340 417782896 954620014 643602839 41125260 645683203 527047260 693024999 681892484 898129934 303417655 869927415 639383290 854522609 994825109 205191812 250488334 564054992 893211777 957790681 564870659 213084239 980945287 24943771 769529814 720143757 584889005 793097840 994176519 484595348 463508041 428788961 901893917 150959166 532582727 348847656 615084377 635888346 470878752 399129201 405566970 110823449 997331703 617740416 639056347 785897213 822990831 715551668 702129996 809082809 24344252 217848699 455276367 389262757 681258705 529672751 507093296 201252556 511546177 113005581 240488563 842294841 940941003 240065751 504837471 460150881 936533179 600686103 874482792 941975428 707543714 460901733 875076326 429702054 283838945 933807569 78232753 518570091 792037954 475589271 544113040 212467347 870281496 732192694 367159623 654245927 67997115 662952393 492949925 19579461 324782473 923354878 826867316 831522500 345256 3858087 790308060 3730485 678946514 936064514 496935276 42466536 106470057 43597647 241584103 671220587 654432977 500595814 902233108 833935187 262288726 572586095 460017279 845535596 483581318 536043469 738785896 473039379 533600751 898746403 876355921 761003017 161701532 981337841 691694251 519097495 40949975 165035650 464957800 664031654 882689345 304209561 415417185 842182091 664408794 104678872 577979307 679276539 966097005 218501506 678220643 206165470 575262432 301414616 550299108 692008072 143270122 774161910 964717097 40888596 879545652 147391707 65802578 536702129 241343447 113352286 614878142 177287058 714396921 586374757 420850037 853761670 388079684 183951021 669447766 149330310 708848502 876856667 964312860 703673599 52558746 528263890 433694805 356887642 995925391 632071265 960375963 548165276 590098525 546734099 354774056 274291317 608733194 143947259 120338787 881210589 388912199 645421525 800130023 613189763 337806994 479258333 33274883 454035291 792652982 764573997 76781369 68138358 114986922 936089085 406272141 262676455 673834761 540527808 217815472 869072600 855188186 537895513 347173234 594625308 700236241 729171960 310316065 854463543 905633064 768807785 494669721 292995306 933769360 678765053 821331854 954883725 776303578 111760042 75518056 279819885 827110812 260687117 687982758 478209527 456787341 713881434 680797525 644266730 687951481 271544348 645026172 292471104 251463762 935711461 849829329 614279104 548905919 136340454 453199159 288370627 398338626 875103567 443940256 78601137 193238367 360389317 402820911 683184999 533376752 991517098 838696946 569535007 34465485 729746139 286157667 843326981 542471227 584170424 549173116 145028556 278297366 657797664 56766189 712719668 990629250 233861318 357417349 225575846 835286627 569931224 670429314 487942459 21360167 197724059 774393806 465442717 614722970 589707575 922067130 615622751 114113174 312510524 703757796 271772530 90211447 961346885 316757796 78811772 53571675 850574569 957743079 593253723 521578323 416256309 708714428 391982510 652812441 805808693 438217223 627029676 186273525 703791127 817747731 298003455 682952296 767958028 86188090 3980099 128385081 436984818 922441817 887046438 879499900 766368325 74605121 669278682 116327599 99702910 943793474 179424844 569706936 827484137 73412554 434430058 469250186 995183671 868638113 446438516 448501514 253660129 383732795 785603712 252308538 771783940 517785759 464802839 612749357 520267139 617443481 197540103 27072583 20756031 964513052 95007859 926713851 572095935 978277252 179112577 748071971 802365985 989138050 899895460 823459859 977087191 909682707 145976676 345146692 836168481 399155755 220452642 152025751 610024310 526264880 751547493 880641785 152582977 152715188 260081344 582894742 234672975 871649580 802924734 464574099 806248781 521530633 177838981 387160799 750980173 854681488 490329727 915663056 483255160 952617288 181199091 52224790 688613258 155705699 305669259 344370758 1249532 780657611 734762337 346755510 460771083 853588881 683554623 575789870 157936642 671085349 720155563 803492835 921196784 199892762 993255986 541213170 834402830 935651123 877565137 823406531 658697821 345830856 280823796 882887737 682050044 987122204 932570833 228685963 592065301 467073537 972571736 727402060 57724099 683366027 187220373 230446635 812790721 69790754 11665900 547085354 278477135 79990792 742564276 837755524 300461406 94851017 228013551 101419946 346937204 404552626 990787522 455655489 176948474 174728414 772578227 500591912 850681959 761384927 154341731 556778735 273767831 171502865 64888229 522806430 721881347 302237272 245535734 601927275 214701191 750706615 432591035 858894308 492909042 217756980 692303638 252505914 250276554 68605181 279285717 980493953 89548896 819024690 763978123 943707956 806827139 489457567 659479415 607021433 419269842 324239276 252261441 408978154 646089379 407337904 87837605 600845971 493455594 924217276 270173724 753795541 189848921 463287278 930228635 626145014 559348336 707591015 888634724 949442851 385389941 964876973 910824322 859724256 211137311 797645757 898067997 174917728 927810056 865219389 839363678 212322521 306669334 525695823 955340430 82302913 32220254 243099672 663488438 519732858 31577636 335980101 348957426 981686593 898104284 387427199 32348857 500081141 562839307 202632481 181433233 165741951 862881210 163294882 293040251 669423894 752103657 420448855 628598236 306380384 15645032 235211685 281474439 276784614 979403249 364568272 663551751 869312529 987272193 628454033 410443885 292044747 130932056 543323663 971353401 920542120 986287826 125517114 50337335 114469642 378667459 671432461 385631928 554490343 408630952 372685096 732447996 591592052 487181654 470489943 458339379 72242396 931099924 733310796 213373291 634125760 477342233 790120775 421604826 655993354 772670409 47758821 599810898 259372353 194780261 357969119 127361280 479054892 367985318 962865438 516130175 49138322 496574557 798372130 911480092 800244576 335917235 714418458 417283354 910670209 771005753 260562229 792019676 651261730 497231470 585348246 867445926 942352999 187639966 835629368 637718497 233075677 478591 539195729 168224001 719512457 763120372 430858767 83209097 932588186 886427696 155761015 510135762 908076177 430435797 723545141 531883752 630152123 812953311 322125758 619997482 529509601 999479804 297742517 337543847 151628861 588849696 367709773 164224679 721014018 331062092 817259264 94961065 370016317 751096382 424038793 613700138 1050032 884513046 96023108 780863933 646264358 173959130 957941281 382136153 423523647 799529449 152780665 848095818 790400725 186528879 769233924 917749963 516688955 601480860 810362762 311759976 781287972 840659459 466945209 249968959 64627967 326804831 696630133 425184601 875172863 29585396 512041484 152553304 8137681 254433191 294076603 186710434 131406010 135751879 534207383 75065206 878614844 117419877 891503224 90571262 438864226 361424292 324205222 739461229 816054479 486911822 534246878 793417092 16280716 698206213 725409088 703610666 912392062 834756434 696119062 660556790 878133616 669428267 971373225 208449578 443330995 627700058 370507378 898401773 8363659 178422770 656362158 790079844 757668182 198060956 567187709 735022071 990443099 403091903 178742754 345032697 343317141 320425444 240491957 139805650 211967843 847651734 769590234 261393671 764063690 690749175 618184812 641638462 152424592 425543310 377578249 515929125 867295920 960452811 968630265 365264479 562081571 354286344 299980863 969609620 733696501 506708073 747500618 992072544 313936089 327667148 333191867 996787725 744999736 216566859 886175839 755167226 297735451 70247901 475881665 325321565 782578872 481460511 395821125 230014239 953172389 385676626 355870818 562792979 664910999 473190703 126338791 372927251 398186610 693004201 699065130 48005387 40276039 588696052 783418488 984911854 535556174 431346569 961642355 748426331 387391633 2637995 366201048 450666072 382270748 146329353 323518291 910145193 493835181 913307619 565227917 258653321 401082034 611728080 69334742 982630709 659269129 222011922 693953585 680187442 279790342 87512188 295559161 310088705 452520172 714204457 685558041 118576981 124649001 952792093 37875311 509795709 113589070 690892632 492393902 583869097 862607436 618420173 769865725 155842430 827656180 517973607 272410166 174621649 649858851 722049485 652269512 275262117 885320963 271830167 340113335 186835807 799155492 459830080 467829136 770003881 60789149 413583777 787419624 377554132 880209258 819469804 314092836 99830907 251817686 589703522 775837498 910136284 513801966 18541709 422960637 170068277 677338359 425154384 667040217 833124144 55089207 91181359 801000071 645066725 314317705 612921992 369146590 199991011 972324310 140557918 600182524 367432968 343829176 596851908 638393470 610432644 990784022 206067067 443244428 830646932 931583693 83865376 810136278 879956796 651608263 101071053 379850546 252788367 415401037 544728421 118706585 221721733 252163766 844186067 131045694 249953208 967155661 958501160 909136700 195037120 807312816 46441380 297646834 298792728 485530247 172667432 220286725 683557657 712998785 268042796 618563284 355607561 925309097 696454305 740674879 569099941 406032276 582177071 593946150 60365730 981313604 431369991 688756432 300460842 694884234 562920246 583063271 190469777 322907164 103629689 265653789 850112179 274996161 867798138 760628081 187440742 488841675 80680210 390063976 763116465 646147544 873927098 267814681 359686881 793917359 189733286 599574486 328614790 912837191 309028541 53136482 347397632 663992757 848132090 491303641 52316121 867654733 918830415 412089644 630734283 804993564 93914227 175424591 235764056 696729386 720107788 674601393 690209643 790796885 955781986 691085546 203871056 624747675 137972738 387230251 737074386 161306751 373748556 776641402 639089007 393349219 221721657 537550454 957856381 253251276 454551067 537670417 250012683 906054825 716343240 589951131 757555028 12705179 969934090 633011988 843459222 136457673 387648589 53967240 138291615 321271290 503045848 717115545 641154316 360064736 145986435 289765134 507182803 825333185 343408472 365573422 770451490 253822516 346653879 601251333 315115919 526227150 562068473 243330190 325935971 294889735 877978291 434458809 148287904 867140982 638002430 725554591 238798153 284938211 818557369 33856093 226474000 289304679 408149048 563305918 559046279 134260586 588357385 110288030 465042856 846122095 873604740 879932861 370411741 992319354 341606245 739462304 261568822 862765434 286291719 410022409 784790052 906424081 86641563 370304304 46076278 330509682 124389494 482059412 494961639 823519169 333338173 443349397 724666675 985985155 216155552 400342242 578071471 809172148 522929459 927302121 829136840 559310370 92684937 280421970 447458937 76648055 630965907 344187808 360395307 465294635 576761068 76259526 789768180 808139834 932597049 420815128 447962158 579831668 637354575 417685552 497196996 908650279 461622848 377338833 575938219 852570703 462069982 846509063 154317500 896034981 66906560 482106235 34855782 308844722 554399263 988370199 543992225 114562182 536570718 99088307 73130153 443672734 229731909 375663287 553581067 740207638 796101479 577867193 672235360 977451433 806478412 952198603 498940710 788651062 344667377 981329582 780178762 447547158 272753655 245310175 229575876 920976439 793223679 817953411 674898509 990129787 15580023 726237865 256237411 309812306 444756954 741713994 434168173 712819781 627210572 948246674 724827284 126525532 637088430 785492569 874529581 230466296 832316633 362528218 283992341 837224223 461721071 627030753 995921337 311301624 829803115 697185851 515907527 299405066 848377404 621333297 605512294 996484922 533951680 411293364 615662926 612441638 105056440 440952113 984564395 693419725 837548615 428608837 615639396 622885903 865350743 462730764 486772838 343623361 935695974 290278690 819765314 659363416 276289951 135496182 43732440 606609924 553940575 972394866 216772438 100179885 699639905 933034780 213163724 698268828 145355552 72156732 258764030 794222586 665098954 352878140 423508674 326119732 595901685 306385113 41291900 835123613 421289897 821007961 21175811 590461982 208437572 648917567 492343969 436815568 500220157 177834258 405542916 292763889 304113628 74877904 848992826 756052909 722674612 428265692 589727406 470290852 595490734 395636596 952972447 825135488 479165952 537655182 903263868 573404413 540987521 783824539 734373770 714902057 63400316 853098447 983633332 964870297 934319766 241820871 881625120 926495661 402689181 409524480 31329720 657110672 891779956 992366457 263879060 989919240 877037171 483151081 189402229 489594737 763117710 636948654 918472200 331952266 304771586 144266464 540139788 452434997 97128293 69222256 800805697 946300026 735817158 433691753 601622674 198741218 905999372 700131736 750460369 535149136 860403062 306989430 818545795 902843296 710883791 633641787 180204073 248840730 924612067 15970092 974138810 277695190 573866675 185007844 152668572 613163767 130547262 123969527 525866668 250415205 499631812 178311673 256860023 384517437 364691119 313248952 877914988 235577364 484789182 623863889 783654686 101310822 806847254 604033252 964917480 615785098 49674257 704435631 194001605 513750323 984636482 93670648 546649711 739623681 521791705 916094996 986688376 878791212 232313205 924519087 773139832 585466018 441034539 978346851 613700092 463073079 942098544 789104148 43821376 37371299 790714392 187318077 795377499 944270205 323450240 912479243 983783948 732951492 40690128 82412627 271127502 346427708 424312332 773984037 895781815 744052020 872933041 563078366 615000995 683782834 382014693 155499172 733718230 837245719 612945890 580241579 971665256 718044690 597783099 556798026 256900006 77149292 983759531 165326547 148819051 336170424 204036208 764487946 543168436 752734175 506680903 981562054 985256700 487826282 862281340 372323571 685355349 239331193 294307988 713147805 662018806 823102705 288509220 485478387 858713837 643827342 6738860 749948997 41557557 594279341 32614562 391641245 77377607 6422272 350259840 149315939 268468249 784344320 363330996 108372334 512463301 523358066 815128656 572028997 295954898 653492872 869922691 904553092 915061485 321931196 34720952 230205001 377537033 861600692 511052205 706429006 255690199 572533133 629344346 543141852 300109827 240739044 513525182 370083325 704448735 376122348 475036020 883682739 763346215 634854912 296364887 822642523 770134620 333581008 335652245 209435753 967642519 219430938 186476277 855874385 335903898 578998721 69802181 130340611 126939238 765943889 311234694 977000905 398477146 575957345 864208104 833716234 187777015 866670719 268994445 433541042 689851540 787404661 246095048 969107422 552415656 37985271 809314906 681455660 443081742 147350228 20391070 870639174 733113009 884329230 793344087 193004880 450366031 350049974 266910875 985913756 41293633 305961199 88051147 26464532 996040311 864161512 773654289 851252789 906207225 835694422 978900845 24143503 376678334 44318543 253125490 211031405 781846060 331031 518297065 954863338 592507752 490557060 350336716 637986690 327743480 318248358 942470912 630754337 373609568 426517348 184219648 354640655 212757059 11772793 711642282 485424777 608772104 592453305 885945138 479058832 690673416 381271451 223812516 839308237 474217028 406768104 713960017 719672716 450894325 851085065 316374900 215634696 912186388 727245302 390971320 937197577 673311927 103157151 293967583 132954400 364966888 937851646 422371116 190305008 811367361 557639052 865171250 994106048 45908792 619104219 413475142 638320972 292470265 571310520 916846861 762757024 78619321 555595680 792607218 69307412 378322685 101153682 427622681 82522313 830604508 370381135 526201967 643379888 61955275 266806156 572913498 2837159 895397240 378486550 883572661 776062456 158567830 7177321 34631451 270925967 964802244 400066650 928040940 783370120 692909117 978284264 467342460 339218484 109889485 572659650 287426555 604180541 139143467 625135414 691340052 74588019 548775533 966992997 498867498 653632082 67542411 244098457 61901678 205454738 543811112 34316422 713973996 457625352 34331280 479591944 401369178 219478510 28638575 32141399 972772382 138605435 629465863 503891039 940832963 270163297 834540196 438111972 625409486 358717724 325879793 24397987 679227397 32234553 946807245 38974406 896545146 356588115 65059946 654774856 521392556 578922119 573121848 413536881 400027788 780074903 62616544 755604078 216749522 696636873 97907022 182010992 724567705 998542514 998092736 438300991 718322403 221661771 888622573 783111211 112948684 934197634 907707813 542392480 199923154 245536905 518437036 919177533 680024248 775593280 94175057 875354667 970096878 29891128 565951169 725711187 779134491 253822104 151387588 627563148 991307311 5134825 6498535 85165465 807410285 54381033 143955124 569907427 849738819 446394905 822249751 97240941 86719604 286617800 796154412 647306826 747991758 249455055 847958540 966528423 655304333 412196831 421966177 765311141 528100437 863373492 394160799 681656180 456231441 149609878 458525755 925196519 26013460 965027737 202808683 502660552 604070997 505089801 170826802 332319444 286724618 762557523 249553439 456773927 497073879 229354088 842256884 484196158 562479621 424478942 113261546 81745707 346442449 207959702 797620388 642367053 981193586 78630534 626666714 224243614 234816793 351133111 978665613 604167491 608006539 268751341 629426797 752609665 704295631 596068001 811817196 486920469 481769895 166525130 531871029 888134445 615039232 966262193 706845939 258046737 451647752 161862288 909039219 975737052 776250589 641231430 144307013 179560931 227537128 126577798 461480791 196291028 209342005 341406236 413983053 190559290 404943646 520743485 651542598 813331225 712713803 124623192 874246761 787889377 539299585 418760738 446167270 35431143 621628011 223762693 412218263 439207271 180511922 645037626 68420320 69701314 240930035 383160436 741394745 560831628 474160945 978542568 375726450 816013951 869335857 621724132 154698322 333789422 305983783 905653389 413214431 671347722 599288268 96513516 966049129 350488708 501132748 481636502 530880327 147079452 67364526 244594125 507730156 182052065 144756298 588621321 860062191 600409061 650491625 270693466 996176888 240040884 581727851 845010379 220379157 850164844 479409208 782529497 983570902 75906119 689172156 997943064 741214606 853130116 260708747 972902698 766308306 320663154 668100103 121975448 922408382 946752142 773287710 491657330 525729568 123759771 670783884 101624927 27895289 369919588 372234021 103000997 940391968 538948426 822553581 582423757 956428195 582479117 60675966 38763845 572462234 714637815 203211071 450612720 454485375 337350160 294397101 862226198 670055040 265694614 37837283 720892127 96539078 45532626 894729018 172842777 126025057 850654699 794253378 645819484 895567718 503043678 918346745 755050134 679812517 886219516 838671048 902012825 29841841 305307950 460776641 296212 808441885 465199351 474107907 557202633 950620688 685851965 491209456 388799329 861386649 512278774 644368369 626753625 795235699 644092881 669235893 624654049 378581249 407713800 565824414 588286181 196610255 347292420 720346658 97746934 799813611 154538554 329583411 263088452 195865832 791067873 993226364 698746650 803262906 754790357 137009387 50934006 45416190 702174438 643345042 483420835 859448981 883079069 854679488 172573827 153708336 110038410 591476711 179689831 233036438 420933604 476318979 862639693 239009926 635769506 699235872 466908078 620624912 164533519 81233529 617479577 408899346 472583807 573501876 529876253 77351289 50995802 289712334 169831486 197826041 450507772 965452190 571655198 510580216 402552081 724029855 709686634 842637546 443958585 153337854 181726836 342676883 143545556 982233490 835983211 512267662 438767867 49985398 874068633 464196064 599326047 97655151 944957282 366978653 705306458 727822489 765135974 257179631 949596223 826515369 753350639 831668921 835483824 350607866 591371550 457851918 143189620 976235222 872736108 382668599 858638711 750166873 855191424 680325824 248585300 888906261 517776409 987025951 719929604 137891106 500336977 732504951 6811780 605034335 631769451 388148245 944276132 105986835 807671265 522443660 387557014 351997358 559638755 107259165 548640586 494490227 678481771 913420160 247646458 650633015 413278584 833952586 831123462 692296064 423765954 83534384 830967910 104683800 917424204 470826960 726484743 418085821 475521322 291263939 905052390 699934192 601507034 603534122 776895347 449922795 114585995 486616275 106007747 136109292 371096196 330157746 701315598 831689413 628974706 547971006 911558008 576596353 236079235 189317014 810764196 755812369 941860940 383366955 676416753 302150222 866479683 159005161 680973710 812133472 344981362 47406177 870837874 739502248 918724090 721649352 40172868 936203929 362465557 401818021 334039201 942060678 149705372 417667676 101888649 680018058 727296550 516020021 104594184 639133501 314621858 733319504 352634626 178990421 500134832 204036494 761768634 195198038 749327575 87832795 472520508 422805395 948702156 108422306 139931897 221889253 180459473 52706546 919903870 576561888 185503105 514372328 895781928 340025703 404299197 346251488 762205555 707512044 657086846 997268062 501620351 171071956 609405458 654749915 428473911 114090713 622547025 832371765 788931628 791677466 425585769 965381656 139442317 48465818 53016758 308514311 534495491 941460296 195678734 6593545 41420672 651323390 259112066 990931755 900653444 471190702 753598341 468869572 43668208 69465342 877769928 776391901 358784144 19946511 140234283 405083403 651888436 618634969 945561567 453515892 232580583 209048006 809135298 82785778 589313849 662788907 406307137 502565070 228748405 509916150 15201829 988914504 102712720 780434892 551526362 754341247 421201973 267704989 680944796 595105856 756922679 718833650 569143072 818410846 553384863 488363189 378490167 285502816 914087110 267901842 283018866 77609185 404347823 261233246 638933693 449971955 261287205 173173067 676631416 865193617 294433473 69130232 627081246 713369995 55052159 548647654 944754145 780636087 124298876 950128810 211444221 401422920 264169100 731229543 679261597 540273412 372406175 458633462 849801109 321894515 77729897 719936844 474178832 928091544 446362204 498424696 618077602 21257322 69957093 734167486 45733238 249248707 881007469 568030599 959465429 350146661 413254810 294493860 117484961 76080573 255365340 115720353 350467773 52764990 626003034 522378503 138448094 142973412 101486035 921766184 609291944 602015302 187068029 261092973 237660554 674240412 814298475 525830336 894194351 676616295 139691229 571051136 403264090 676609039 532196501 404421691 38495801 986743696 799844027 198983131 688900064 522570250 29058810 572729171 477573522 850450641 997131931 831380001 608969659 698364776 221657716 470431558 200471671 27170323 457996435 604701182 359893606 971408569 730155865 324392468 902393307 828336385 634202736 951525379 986422817 818597687 456107260 553140162 720552202 873691646 599096000 63664144 118948804 170735259 870694479 924001256 671298032 342129511 786753892 225365174 588859755 831424445 8891607 27467454 835866861 329447505 770821114 930430557 829485890 113240488 594008547 327251189 67326138 953989262 284165229 247561202 797267050 9802560 122383666 322361540 379135225 3077050 381643981 111916093 315305130 513142516 27881817 929614928 393070669 597514045 405830334 631054756 532081341 983697736 714745785 152991896 100791954 44917561 299550756 779447835 365650885 756802781 807871808 972982469 156283389 280474751 653410024 770501193 430354987 917555684 130359805 65980768 87099409 980017265 512320271 230705680 592869172 163416341 783143463 794675722 21550785 522666282 291030190 542399600 58054494 242436918 973371995 627297411 571061229 819250716 315735899 250973544 988017894 778454096 320039724 104814068 701149236 557570472 302198368 224177693 986824443 471065610 982724782 438921200 730212330 703687332 92657223 846200269 412397490 271650174 47479437 2141992 67191113 887690157 666616798 697392579 552915652 588177908 552322796 882699252 877368415 120183452 931804998 808738388 920491779 913893143 633742123 906952024 356787948 871940958 669367882 163523338 320139725 458960097 205841627 340658264 82560566 360726808 593952793 534223570 186646531 333969165 297643575 756278653 344202046 885449959 816248067 286676151 418081656 200833662 562120616 338085551 761370035 57013158 382203205 469166809 178293226 745240795 235721286 867962984 735401707 101404004 746824029 741278495 154089932 910244020 959434797 608954559 918288708 399578763 428481445 28000217 231955291 141750820 907289051 668778388 533221322 502218246 507094885 473008178 137211040 209991430 520347686 347782669 949119910 147790282 288744943 211224944 528987942 5763784 955679293 761701747 769433421 340023328 627314635 182029372 868973271 596108724 610469384 42353194 416662035 227200062 925028923 696045200 482499724 733205035 670478195 565803699 729659579 688522609 409968014 708044953 565429968 322429416 653882834 923118141 392852669 446274610 234503921 903122775 202668026 344252484 158279733 922897010 304594551 680988116 236323609 843721108 999286457 312152304 99430339 704886939 270533964 604173585 741264077 507942153 632670061 82493668 853020742 978421016 122072143 593287436 799260086 371715440 740806936 125138420 604995053 433498628 599282262 54791281 200333290 571111428 804339946 146932001 358825547 383671195 772810964 791797200 580920219 272638650 483736742 959221961 521027187 887604482 614865751 312709376 574713269 423602111 974997903 535475618 810736089 927530162 1612688 16640420 527814920 231264103 829614179 515590673 143624726 947687664 588371007 639415868 514954527 260236943 306178677 839222837 730798766 963519618 978232759 603946993 865212531 642989582 819454038 977842401 103790438 675823128 959961018 345908708 842484132 308081495 858996653 460259950 623899206 12275662 759934222 707339075 161220629 576727795 433100644 627068280 220629130 883132324 227066218 538618145 429615584 505349431 329693148 657965146 100089649 963648582 847521345 41966003 694522830 412036737 853505980 601864270 803288535 4028041 644148038 271265025 36572360 70655588 384691309 296155882 900789543 957279067 913333457 329239022 78369828 563962973 546866679 671255482 720811316 268755701 760906280 860592037 434331781 244922002 571205286 909864550 151488110 95581985 232090383 386172683 435542160 584888154 796480622 799730204 283099619 553698206 360613128 895731653 285376349 565888608 116628418 549014178 907246207 7097375 117666220 211736981 627405897 249218177 279752011 510631488 485283170 53329863 353556571 130254019 772607196 706362149 759618449 237742064 50316495 421147675 11287598 981004100 566425477 390522274 201502297 235404891 223619158 562054671 186407153 582627744 856083817 199795429 408938848 673617249 121522001 12833542 201601640 103588348 612278385 103386111 249111889 831094189 445735635 215351228 19600716 540983061 411449899 196589394 259802158 952740869 231961637 869648465 719125770 977116327 370362318 670071084 301562751 254754809 150701807 931880236 201686170 288098528 66577365 805007866 989723294 665418905 402947041 556728253 885015971 416505510 717634363 868896356 20450090 481235549 694201814 729195946 511574347 734953062 375199718 380500308 38476995 505737462 977974830 92690224 669825461 131220921 102393729 488905122 620182555 698160618 274308552 108865040 38427976 463550861 261149475 103029277 358662961 361997950 819620147 603677520 392798280 457440166 556812078 499064335 394653248 823398411 439047953 475990956 259985549 257081702 424078334 575856326 379403807 405921369 559058920 105318845 560314155 440306066 453336107 957423602 676624916 242021641 508326673 894519007 438318002 85602067 985927986 272003854 441097351 635400067 127352302 768614280 568357588 188175045 816927428 437080236 882560626 456833598 122842326 735191109 859839773 384990269 816488927 514049093 278804048 429318151 358559942 668339678 470844473 678957438 843670121 65310278 434467388 155290053 787763888 934683544 817149246 429486570 487348674 194827455 585425210 343366952 952718027 525066301 570726027 783193871 139192013 680237168 249569340 873393530 807498224 608304770 90642049 62549003 79597666 248084385 884010641 412968953 839227269 352560984 165426271 633881414 170209450 342494833 869209059 414053160 250702871 94541408 279410845 349605792 931494336 970059790 225304857 222415804 119880287 170380766 95854630 428066682 280712132 958748357 382684277 995281894 675430704 985980385 510863174 51484787 320139520 542175279 94784382 496915193 881160753 669327412 547883963 855740370 396273230 768700016 55985890 255822379 776390099 919854402 984558949 407878062 416150191 171581481 250469708 15790424 604635739 948893731 496546546 392617726 699843489 342011693 802805481 651062202 981959355 497258113 648293466 610984224 200814084 89354751 402599774 456944634 844396054 836525459 378995700 64716723 589155209 497593170 10023835 386633088 723346062 197885256 889215034 363992306 462339941 381392923 489128749 981922106 790899212 534569074 808064003 445469915 742227756 986045628 214663470 710071771 987198930 744346192 39633396 129129042 348087258 212491277 373447884 329696680 579597607 596866983 390662091 770541440 467212784 400625008 705287617 156184846 272234774 143358533 685911294 2235758 843787215 918653875 602322765 720020269 348904163 961016228 193607434 937062583 555199162 207999574 912667896 195672866 429693879 297009959 830861265 762651527 106453863 791421379 218024626 398997678 152366670 733940810 359092030 854530408 680184575 57690610 963427558 398650144 468009549 277810667 27299884 893565962 754563890 599399182 965465584 770801035 888400421 528356048 189396843 355994592 526733766 3785583 922942448 522820119 423158340 796860799 587196332 29185198 140653374 994262867 875377055 445115439 898676105 884507397 683667553 934601511 517651995 228402846 116937023 63091036 567125696 801323702 454603006 817853053 502933829 941835782 917568237 490123495 220343778 333319954 25933274 975655184 230351799 98402139 559791350 670234637 59255337 16030825 129314701 789386735 47424350 499324605 810558574 71335892 712409131 111870113 689718553 786060303 722060278 675546373 449729152 527218838 461601182 43462477 64161694 108512834 690501079 462228609 478780631 110572094 548540439 364543158 968201969 403825618 703891662 503037333 512270933 796704012 546122915 387027242 202818705 668874626 894401021 807594238 852751730 427203164 283338567 499550409 789989335 186847968 182450996 885652813 664173979 637557019 673786552 57337729 469098027 854025108 912559481 254153624 678713574 187145904 214245529 879045726 691495391 878889964 803586701 27533687 147887041 769612402 882424567 364943015 632345788 639414991 203866560 532507605 986017613 555866614 101363218 811597576 355866843 394600448 432791573 241950408 434430418 951809735 427424373 190497515 978447378 475098783 125782333 908682339 21295200 894525191 460775964 968698641 127830683 593677430 288488970 957035336 981689373 100713609 286312265 373097410 673841634 516225008 591930161 748518179 853780275 526823664 395209399 122962906 616135359 446428628 248189407 129363802 136316065 515818264 350774782 283893622 507482983 519691342 966732047 923402769 637053218 212966190 26916735 324582108 390290244 933178146 658227375 214408111 882440564 955882356 550181787 788121185 37157128 509680535 354217710 790561156 74322089 400092996 733273664 577130585 624358595 830802284 251073395 393655729 614572483 495209685 901868508 664876259 597597985 706150716 355155342 162638476 340684885 174226602 178118805 656206706 402699951 466728683 579907788 964584752 193844570 951925879 837131721 551097521 733546335 12155189 725429885 769457265 846076303 355391568 955992438 598988350 674985721 564445752 520397974 30195279 694147504 418531499 199707727 215005621 468241663 359484444 989355784 48402223 339638092 434818042 721374720 658806943 387289967 717829916 272951481 565293495 164340794 554993333 313414192 812117322 923107042 222548999 406465201 989711799 928815577 772260340 928568232 783356433 205867566 669279415 988252213 816379463 714880817 685802018 767995540 53362565 754391580 112739115 43362749 346535815 589771454 658897430 292150738 721659417 662606166 787891129 619029334 311230568 851433869 25304993 134162155 617869649 464423629 446179860 719671181 777448222 656889284 904077805 602456835 687941451 951984079 427160283 971855871 154461811 229068828 940535215 245551214 166022371 305563038 432846945 525617170 541832899 71501599 809663839 597837681 781641705 304329403 250817204 601480018 718054461 860064312 629391719 396649386 356902028 840459625 840413264 634408780 422362709 347634004 167947553 878053666 472713167 992876031 399991567 30579669 270577156 869094499 108235258 636766365 485227952 773019756 246145728 166106899 146317249 223904380 545530502 403941159 664839023 44522995 10308519 904012899 62337265 275376780 25534300 369561286 542712864 639544785 834276435 829674192 456775123 478974514 904252505 98074758 774586166 722119538 22925770 866829431 496431898 139475406 660260157 948263353 663125013 370610523 582356159 34476439 696003570 266705932 87255083 340490490 832059732 878874408 340881240 55465935 211653309 964337136 321729026 547271763 740418574 329229292 872718466 238917446 38278425 328979992 687430060 953257294 658758225 745192872 499489854 999858097 801881229 431911724 407948699 389498992 28573828 617123574 770295660 8333488 947516806 10916766 654819583 370203069 453006060 342045004 704856674 723800946 765126569 955581673 261111968 228761043 840230184 711478739 499607750 977548169 750546575 167841435 840586636 620077086 572176394 322672051 758990658 696365648 506931484 387715191 530887267 136043357 970141071 596368246 680865890 448459923 836428220 259032592 527480711 786968976 458675257 792134770 402633872 101139475 56056460 963061840 448895138 873858717 455265989 553056526 861006354 157710922 215502853 58996677 475377906 280657085 95742377 107152571 663265045 578852938 605352368 148423421 350663733 78963868 893667417 615274270 598298001 494963897 267597833 335374536 838343420 724995658 658120175 31704835 403191761 515737148 149781870 894280220 102228943 683052802 356168698 33173329 975733625 448595072 923531270 919441086 29413949 700273618 724896549 461615813 658578772 633007872 11474948 233298569 339989229 443453294 467367817 433854678 97092140 141796135 173767513 626966997 666933586 679789735 322903852 111126173 223418347 371375014 151381067 569638977 275108026 347606177 641917405 128037940 907847505 747379800 161262853 532005385 700231041 587217371 277989797 687844883 525719295 718045292 763974866 264559542 688882993 161600183 187409393 794131625 253472170 487611952 727070516 547849892 187090324 202269861 607663167 731617269 671932684 158384136 977507236 319323529 119355506 483593245 967491316 529321451 904860834 640044004 163165563 454527893 947055493 793550772 515872764 57990104 102952328 831714400 71151310 184707546 189190115 137346968 964316130 769688607 880567493 548811279 34867432 262740889 229051976 774214666 976592438 376718392 345836411 585928276 500711822 441599690 918509355 531349821 38088855 35200773 744056192 518923413 852238425 52763953 288093537 440717525 674908090 993072405 362504006 170811677 381267565 906739229 470918093 847869312 78182557 790113127 746354107 527087082 401328731 752726108 773766415 968861837 7197247 51439405 493849724 953885714 454066484 730643866 769827354 659797053 941269406 662550933 749133813 213188634 810717762 632607241 711206225 357579701 400746801 739244715 741301156 233670779 779155444 39872909 259989076 849153178 624022373 733789867 951582441 919362093 438012700 191191408 220972060 626254639 407972737 857735683 29888826 480106859 882590873 859551978 650625731 836438427 862960334 610513600 536456934 195422213 4190820 545392808 493072262 512936366 724338517 239635267 539731581 946218027 123764236 811634624 88144823 827784951 813380587 435044705 489821711 152473354 414846464 545304000 175190821 347058492 216978712 272858184 93759483 186239786 811212842 883086494 158145823 62836382 695117547 59252953 478841745 544393117 79027358 901604432 598478345 648075350 498229257 65483407 790978121 727577279 339734802 599393060 717694299 815133139 975364398 830517592 100743274 666363789 87334467 598024194 931990571 463859243 987563374 183983629 22572537 816285525 822787917 429731694 771586686 720222565 51240138 625906866 906864708 388164097 298847212 148614753 170723485 364026074 13798696 89507020 760031340 135082488 185966459 950160607 593693245 666682832 330275525 254533894 749516380 93686417 839042182 672936000 579918434 881282038 361069312 816600867 796322793 142210562 465065881 642944647 556951297 290144272 145515515 368676352 519691120 272835117 543933941 372348341 134233582 831390661 717544748 396343236 306715427 297848507 852464375 234407042 349152949 199718131 358094621 911612319 14297739 943598289 191733087 781961204 893131698 411986820 395321885 76810706 782750133 96350302 474464395 859993873 466015924 313074984 524620249 196979130 932934223 664249887 266003198 609080690 265797130 295896345 723025537 360914054 821110900 96486451 736732548 905460718 917112521 915775758 110396796 19045529 831896465 885028455 374558980 642876318 882429504 181347607 577328800 8880932 358830304 302701537 457313231 717738811 953436561 129107160 451645062 679755852 56290936 194504121 995490915 708407539 863083174 765568373 257531748 937014715 962953505 930792623 634191208 81073625 806675397 321034357 52398150 899491043 236274322 875129358 757645653 388282140 800169988 143525527 829429196 301038992 300268053 595872751 376489054 597029159 612948920 238788275 411107592 315328149 119604637 241751074 231728343 645723989 458697938 266138377 729636802 93924994 778680129 145181316 468946568 444924841 606306253 177974040 302024494 117550118 928688924 656204223 366770639 851074958 915410022 123837374 320234062 374352919 440067745 351834211 619544591 603438703 302614101 968035342 550264148 379374287 800433185 5406993 114321418 861530535 939599420 824027946 76126622 773329858 181882681 597502036 685998898 935852139 444975110 967396079 807104254 68877681 576741177 141843790 967751069 31006962 504031253 473245841 568533745 289641652 720954279 628299147 802948902 356986013 420487450 5556820 647442007 28463083 636721104 642617131 637458283 551245355 947590873 952713570 843142485 270967696 927301098 497375079 577836261 854134506 386019154 508790285 564851567 466811277 958011711 436971176 736988664 671371969 466255589 79681195 416194634 709602673 326235147 618322972 317105403 533262099 942486364 75418662 486902826 517521609 211949557 123845585 967348988 505667368 559603242 652651731 733713987 484674416 736882615 736895511 195555863 107734916 844681439 882526903 163753717 225424669 423039150 321798331 118508575 858533010 782563643 439628954 632276946 305345668 223171105 337612049 952790719 540843 514353469 290906950 94916883 206627939 772866414 811192150 42562162 819566943 578715680 378012106 491570575 202299723 434549090 534324629 588155225 570936486 97990479 256891558 417002107 100608694 262303556 729417542 126046920 96976358 268559951 734653195 791950675 569871532 855578004 690766477 204999778 879171867 430517640 308705855 882250397 567605924 304217615 432143426 827808816 753082656 93443616 127410917 576631586 382722114 271152730 628270526 668946842 232735421 611768160 540222137 305143611 262912871 139444245 578188625 742805853 916061269 196711672 259607722 42986185 425802379 390052509 679081535 651539689 984182908 732189559 451968281 783045168 124783136 336423660 542865141 408764275 286957508 333363293 582571856 162284850 43457059 411880871 489465804 754595891 94246893 218579524 765364740 895217417 178182679 30239626 305906525 14964388 399809344 105440661 936871899 727690256 87014692 678142351 561490464 80874246 592023534 372540137 530655901 749097068 667936097 215254804 931595712 98630057 206846210 919522420 810413434 97972203 658590198 866066857 975425722 530496272 736446622 221028875 945205903 189842859 632225263 649801597 154680446 720705035 785402036 703187823 250700675 209065943 14380433 161824870 921640079 287308830 104728679 930715351 633526265 371302930 127331053 598790521 200119691 79912795 488697342 73330430 366614766 919104206 322286289 127260836 742391523 767385251 385964357 313476860 81174434 781005436 910528266 193909396 205950121 944799534 132763222 469267056 724479006 161250354 909723071 893056121 94373482 596181507 272171800 821940821 309781852 345276090 198044774 239198498 647640585 328570103 26808217 395856845 219084950 851122482 241410037 622753068 849118311 548003756 334070314 215725889 841001709 852998878 694841080 893590861 92694688 374823013 408460738 4177282 687182138 248008712 951338187 103297536 860412248 664616900 275016031 973670688 820325601 114023137 841242013 445978667 791144601 947027175 97511459 32455534 762454595 435716243 398653138 744230202 485679680 665868705 652455673 91085482 111049337 625108377 462958737 116306349 437148928 969969108 473245423 781015771 612826927 590873633 87038053 914922911 489953503 146532896 192969380 607356352 476735810 182524673 322122105 30878111 512327357 81847352 706845904 97923016 266241598 712417463 712170135 897260160 457653537 391234385 914967849 182904864 135844612 102167064 384097636 785739160 784127899 930617129 311968316 646287296 990210779 756285370 363314991 843442494 908615759 831333831 949021329 333097350 509367709 951399683 723805003 584883740 904735587 896559196 846569042 28815091 998273301 847451943 983849572 539434749 921750324 784849067 604799869 264099425 708516415 211744248 69874975 625839032 795893227 198391958 807466615 40472119 116716955 640821612 714619215 845014939 105385620 561128181 226483468 630518720 720095270 293424231 705723450 863016260 524967074 505058610 445606787 879903239 996099559 325662676 666165134 546776117 119466205 579531281 80305669 276403605 201482444 224647618 64408572 325185980 423042724 695191926 574508591 131803726 277713580 383532993 779943678 401149690 403111569 676056779 962439331 197099504 760277307 569978013 181580285 992881643 333289725 903053170 222561144 838789686 462149424 505773232 513120682 380297841 902547656 990012073 482214324 995270884 147068617 759042925 74773488 29533125 807797654 783779764 744973028 683374145 903993168 474816071 225982795 308670403 916615471 812843395 860266764 620663666 535367030 564163021 117554710 607968440 335609160 444523671 158525440 40878747 710523504 697549884 60210839 722159776 29502490 649507785 368008088 967600473 437869850 784744013 856465978 16881315 831833909 286917200 616586556 97151316 702435865 515538257 370739375 323195540 454942511 726823267 355035164 896735613 31506135 888620857 488080827 901364930 495325078 196522386 836130184 983175910 701317568 95456079 985981436 574293681 41153510 359631741 42102193 761685215 271523871 977764688 194113645 479426757 974575468 86067453 992880672 337535827 841123963 194714156 841535156 326986455 66282222 989988950 149865583 72731922 261511290 104036309 852479074 573760863 267174156 237303662 663046204 735949303 164611167 845806244 386643386 912284419 614541845 276534888 978810897 968179844 107643051 642750244 23579255 474210806 313178005 727266389 438474920 349917777 376759400 920489076 225398268 999579723 485348344 681024076 823876935 849795913 139310745 325137006 584693704 156410587 713959354 290846233 297549088 152212572 306420050 381384692 884395658 578725393 388133908 460009484 958542419 213048335 175563073 258316494 679006397 92962864 933305685 190209553 276122156 765898052 74274946 859547361 764568128 899874043 330013902 610498146 549149578 82209940 75419471 596872872 194278359 73212419 121237458 811612543 226069332 956898183 44416122 531456783 17512227 263627532 762262594 329387631 271071923 143276545 240246214 167214685 768975927 211467817 327321671 628724935 121564187 360376590 495319933 145690622 128054867 671326489 521531348 665783714 4848414 289578599 52029680 862364846 383660781 828133435 326382858 729898700 756942013 672786695 615464175 533410740 969651294 744831582 65318083 610302929 163284494 710182098 344583559 63160100 134467763 282174622 611882866 502096328 411156213 312243609 910164693 882935498 561231587 121748656 459136521 156713586 430940538 373557313 98185465 605085046 918136803 717967406 945662940 795842832 822954320 154628246 864878968 477872119 837254662 269264859 633537081 425168693 177192263 41263284 62686979 314196772 122882852 590063541 40606252 609005010 924908533 142683921 276444003 105187036 210205894 532238787 714488673 679078546 371733219 35472636 970371630 48339262 85376069 779107915 937556737 886420701 131486829 881041244 187527979 235342174 970635365 555644257 752440339 475622688 837257858 160024405 794219590 32195301 41646386 415627509 932393004 278545651 103880636 621476201 898617059 173788403 845358480 825297986 940742140 703368881 817665543 302879989 951436377 856018591 431543362 497074973 194945267 757768177 707041270 742585368 283092652 215739813 877609602 13669330 341195693 115304222 666104744 356731057 731087752 923785847 307812882 482872302 243749426 797445032 180388830 175349830 142232867 702357855 350906641 398638052 968326894 546991487 874024176 753589886 782252168 834996923 66252151 450907709 69296486 543322963 96170832 89363817 110227642 941960652 87686879 901608231 329951167 775124294 367955395 43250834 724393736 530689640 54146030 205950538 793403454 695148808 312225228 800742648 988893698 423366535 920122147 217872353 547123976 704983778 145470128 223870777 322494096 586614704 668435072 122835142 554456124 378319646 500664660 746247759 312444944 743853840 648239588 712803463 690085785 880723618 433836593 352389753 244820287 309176303 207272172 152766148 538078764 173547193 659498445 613608730 295905289 909624280 594307486 83565829 451553130 997208660 759104948 618681282 663465290 278575880 579070198 294061353 736635347 700883616 4915145 845588474 183698181 628729279 362174259 286965150 239758591 973062208 135862108 702428222 816038958 710234575 180193479 912339236 526368463 797597725 132839276 105808114 284935476 73757964 23645200 529015594 928790872 249608737 247195701 882236465 376895676 982759019 813877554 30981977 720065278 54917821 885260589 482355411 78191825 31638989 567989836 502999863 89061841 376056355 492747517 90833938 586822190 500024265 231475593 33271934 619465505 752952568 654474309 451315508 406980537 579257076 992354518 725914516 841507010 579390259 493938677 224060639 415524584 928184203 53968292 844805458 85855384 669079829 966089098 22790377 957998968 466398794 486813625 286618005 577043973 512100245 484923204 612785362 356907659 874032041 365792709 885688773 141946098 721997202 553464090 969444815 101520433 29069693 583295269 26589338 934458754 991639685 11353177 949380248 797885443 204753404 53985285 520621789 764305662 471458179 740283627 564528415 18008883 358005865 488853553 232765025 206083010 311174526 562866148 616180344 229715379 943433301 491783053 670141704 278025193 709990669 656733371 525830091 759956942 339052209 949931041 549449468 515351575 401034387 451710099 834501527 598686955 670184916 254946597 804886416 478507132 451859236 250527510 265411963 134946381 86272899 96352718 250044356 25321874 622754617 583908125 890680975 111884901 759544763 827496452 653555602 349694079 307001636 175608538 238648444 183469053 947359720 847439410 401374375 774632406 741700314 37599755 862410612 196800960 247447284 879332369 991872829 181392659 922033954 605330781 480834015 829005542 415344916 685148503 259056470 569693710 604772981 394810960 16958234 217078109 864118675 869455033 905042188 620070621 838311238 873912887 51640616 464428530 823897825 109478610 579296317 442087572 389651713 819883421 663553743 829574447 841330390 424940291 750623303 445270740 755943568 415974260 775135903 839121052 739612972 918955987 577159848 122763674 468708316 682978928 973432707 266012101 866816523 727398974 631312976 193352481 905121324 243270056 191782704 349995652 519698359 484327403 437371186 998782720 880603612 85172220 931395834 381255646 214261520 884917997 953605450 909011288 509073594 736666672 259910712 136304639 468981807 467943532 460315376 746579362 725676766 47320180 659193998 358298219 150954674 573698855 414030830 933403893 728195062 583942718 336531642 409831638 334213061 893359653 245691245 209410955 79695048 230531060 225252868 225943743 396791623 802204218 300566186 211442163 857437393 37774179 991169853 981679196 150548144 388938483 649616662 61499199 371661969 769393101 290804839 454731198 613797302 396183849 296280384 722857549 871628257 238989638 434606686 89120152 878646615 768891335 271065853 316431907 182843372 280339544 500507656 47728787 581197158 202104208 869923339 281303195 298684615 965677941 869274179 88837077 771642931 542397974 898217844 577965028 384192656 860824978 863552638 779122864 692207098 479796526 767736636 991896309 76271198 271390979 98902854 432977802 324869645 129552169 888915621 199225079 825908743 581771890 296852098 704010081 859521224 875053959 815530057 281916268 771446813 820172616 870178890 971491694 996608365 215568321 911524301 281154692 626044056 248255570 604771363 870813349 821437686 975377952 775127674 790077151 644523351 48366344 254833696 755655138 68185098 21174243 184648466 730825502 501780043 585185568 634305966 518713616 923086124 194939041 32698921 963800951 83954474 614409076 194926829 105949544 287229182 853001518 323770197 174473311 339112014 323052823 315239204 629629041 44929980 51743390 887621746 763750567 694640657 74341156 309335803 17864964 365071658 927339024 329310542 281998233 51142246 107445697 889562982 525301411 144072751 640968596 190029552 300197044 45367131 712347825 919395140 188083325 455531397 537457385 945631208 288471021 399936837 428034319 188702371 109630393 469359908 287511875 732388174 828070691 819556493 881202781 605005216 263274825 165686969 894057937 61462650 156822252 887713233 987791215 530815297 921894918 838436180 802826804 93011310 400413664 100399225 922320676 573042025 819538861 873314469 128236394 297282585 932338311 54848290 599298765 907812901 313241134 37977118 798348628 180252544 233447854 394927208 611366718 562208369 200218144 570355834 298742009 333337681 195997587 917478804 681122063 1499906 70516543 792785533 122782296 311107202 52421853 111209572 222927010 88779361 878174934 576852257 984680404 752849490 481042447 569649864 31669804 634181835 506950039 750731362 127597549 714839799 607702500 859887903 366942312 832945200 842660934 33968271 568783576 310652944 132484690 205851501 469971651 302461701 779421076 696611242 556012716 696920440 671018252 933847857 780778359 69492258 386057173 652106955 430201164 593864248 826698630 486083056 111327582 533502381 552451064 170579973 553271825 967573048 940663640 896864251 804390394 95314745 801700473 226178687 424700162 613258382 708573975 988425943 827426026 898769504 468849839 545438598 248431614 548617574 653407173 794321848 326481468 124174774 20435132 104410151 567603227 663393161 401769300 116447922 208649140 393516852 256260163 233144670 402759990 995250353 283292063 793820123 254783183 796213827 588194910 977994542 185107280 321562483 58196566 371625271 455150786 346898536 775087892 643559300 960979342 780353590 784178756 170360819 755470241 952972363 478607767 800515389 480760875 110163234 907377076 943864160 804201589 726890835 877222974 678624932 111051336 746017059 844835803 874800339 656644251 392776165 351148722 596220046 453501340 420096605 678359017 825260598 257049260 856648068 120479160 894319775 777788754 213468590 771723844 637848734 471632084 241994416 144956687 742275451 177867465 978705526 604508420 394843262 108176175 681326987 945647348 651621688 972767794 970652811 601908236 147838319 537704191 627404668 884350791 512003850 144627589 719902222 953472948 523244712 523765519 280363085 915446921 488716847 434833187 704676247 331366076 59319700 248989441 384592579 708773855 410073828 372829530 530188082 297290662 596708695 101241351 329534604 323730507 316813006 232574347 814605807 903546400 650248152 351849467 167579068 130074490 802690531 667798528 469916486 444057613 405894502 508921555 221880988 439185393 52842615 25282103 434024873 630773485 725610434 267030706 915414193 424139443 948904800 410895104 486203963 292521850 320097972 590926294 497212861 81579519 61078797 212576213 534067339 775558315 260136408 205934789 420350945 992664547 69554304 505524673 742402978 815834903 727830053 765919595 305152004 265431514 349548777 47853444 380029280 415647342 68663982 698112543 916480584 260818895 864691841 36344474 461788919 439883718 33680012 688077491 63336989 749641498 69961280 339290034 974874545 129689900 185870481 676457001 579088979 745595657 223849102 510329684 422977680 329462747 994006855 703558625 304072517 941461812 334629806 513266385 830319275 12972615 906561211 638168243 451086144 665658491 761961127 66932007 126336395 544057054 30643682 131280866 966829346 395206002 117304976 650930558 601238643 24416563 213437390 942690757 974453811 960321219 81584118 637951308 909165284 72661151 661876850 470323570 697834102 875930034 995698821 280901094 500616193 116602847 122478123 990974763 141383495 960024406 245286512 710555797 828432215 729282319 877248126 458766009 713283288 287684516 223784602 875059203 920858925 879831722 269089177 832839982 718688656 543808275 730589227 787964470 268536211 673204398 254497599 631654400 395432228 649033874 374353707 25967947 743506642 403089132 340831719 514050007 412930831 67852077 865837053 916330375 994414327 918423533 882945205 455825429 49438050 363818551 473117940 26819294 387060510 283232269 82462306 743054362 791825829 19052751 796835277 542926548 168053034 378101290 887615913 942808360 615502993 294935689 188403392 722818175 845494407 115684085 599116886 295030767 705352495 147860535 293304166 560543971 207297615 172363614 921143686 778761461 851556633 996888166 871778234 761041271 663025688 341099925 143844655 178487873 208556052 560569160 435701519 801552104 445583722 93543216 787352819 975924090 160585474 661897532 644064299 398037266 619425909 491550591 252641356 81628216 711439350 721560935 496367130 870022844 891797530 127342062 320351213 902688614 886397065 46191443 890429809 807245466 127767533 892695161 724224243 646603843 685372466 963490416 953924676 925242781 743246702 127040715 398543382 661607904 718651272 750842096 315715935 898212310 240949423 279615917 192514117 428076873 305140779 50998877 83820607 443272813 149720453 711870682 752931880 609071299 554477216 855600759 278009824 460730005 349158866 759896216 47851276 416465921 316332034 615673495 357018148 896691270 50317015 156919541 27239801 621990017 971087396 725019670 96331044 892170206 299382476 792516626 777002854 383102279 258101641 612540153 342990006 264946382 129698741 816523213 709212025 556625390 56512150 844486507 958892077 186223167 789781086 302566347 740368810 936239140 503436073 956259988 899391449 207463072 541783035 963324029 496059660 926335351 968771969 997538174 320327858 549808725 39970197 462570097 869007578 155241697 403157585 66760629 772995095 105211488 540379493 909958587 197899465 580813845 149653594 610340940 789014415 31048670 806883504 960728978 675619479 249633111 235753020 718090290 528134103 818866602 695343298 715064783 404574084 505027748 852661007 156715316 253952234 854883677 463557509 853980742 667290129 502613500 739462651 696641908 165173730 767285021 949739168 420276941 830200130 340804037 416069258 425644261 492758912 383785518 667281337 17528199 5734362 435022108 724403104 750061899 447404666 206701607 390538183 617278317 81086957 92970364 100943860 848710340 550688236 10455234 641057496 723932894 148994943 383498981 387957961 74195555 632473574 991749044 146892827 82765374 709624649 195803584 337375489 172599402 386279731 601349235 825494960 417524532 970054321 81939337 282210817 171118771 768545378 819291232 875702984 595063505 362678727 729659709 887188412 672849607 849302168 220833096 862079491 877425707 851384003 10895306 261024454 826622985 983860411 202644130 412518909 643073545 722725884 285474692 367052017 700083676 832664924 607160118 91804230 394658222 297087052 114519041 197860146 574292626 351181999 254884630 429131047 824075334 24892321 632503088 225756834 628881293 958263306 438728666 75910040 990436936 906381755 9350127 436851385 138492312 549871930 433308936 414290899 362015066 110808143 849136508 732230356 622614631 431213150 649533883 632684927 717776968 740807023 770310539 898548525 528799149 811445577 510130522 538989438 532439537 198120027 601833889 599468644 592743775 268222828 510507018 754059670 290935607 856315605 391308296 777860375 625336656 682885570 507341028 44388333 510745770 387300691 103487441 621036422 736813946 793356731 69666869 372654605 317186663 683365044 340522651 420928222 786861613 387309610 586342723 462128893 739928105 873031907 87805393 153823009 344974449 318719282 617537164 665681778 688527520 346421555 186324880 492223292 973877712 810894057 24707562 879098617 884684455 980471283 481298538 204764129 590277468 508453766 50593936 811974107 983885253 785178728 437264036 510022189 183108477 566070782 261841912 230485878 921941987 869287198 16059304 310737531 377417542 654300492 600459740 460549374 722645427 949505126 57044544 24245585 718676948 200390057 48844140 346442889 83643772 44076290 656539332 792978408 885829472 611627425 139350547 405587079 361231979 760110228 198115631 850569735 487623051 304976556 584789710 420172671 654685440 203813696 900205935 566056433 642856402 369232435 141546548 299255176 187131132 363148683 86721498 214518521 722632691 178454293 891337041 925147998 505009671 267088533 4229613 79403898 182609051 201710857 49607041 681428769 571658372 179791808 700284125 428659072 1268186 257103531 517066647 702427265 403950972 352809154 238147987 868857733 875269600 89204195 708583678 215311100 999625354 55172432 463961090 71105767 140384875 241856784 993430274 108992673 955787580 261720330 292902858 309136769 623124432 329028564 551710690 843045064 548632907 598752094 961376638 466221425 255348314 804243435 619139034 183581979 608820936 633479947 479718357 104460660 955609007 141086402 968621507 463096183 111839611 647461306 410016705 828702180 706425177 312458480 736853272 239828149 881102569 325817548 773349670 919962709 165683483 643101968 884203700 264319745 969215619 966489156 887781636 805792734 763483468 248040363 41359938 452781747 564713256 295607727 404949872 333124685 81233566 350338190 609162730 952070650 262994304 951556478 824875594 128022909 859814842 512294871 665028751 633692153 607915864 253485317 477465804 353833030 769450414 636305299 494795259 115478982 977022421 999621141 498585001 938238241 778909628 324851835 451321985 438740658 479606739 827454461 348744897 374917889 913925359 597175380 856745050 441220439 28671017 275200550 217464489 735222247 277838808 543636930 824052469 998003031 778246350 34166088 685736254 464660012 898702051 865718443 542878084 959439516 519777320 342710693 990294712 487620753 803451281 614401352 299420883 800968339 575201364 854338090 172186198 871938535 790336023 559241327 267857811 532013326 40043384 201871954 176559854 834885978 111951070 966517453 560804584 992133312 525339501 117863745 122946207 680826950 582057103 37070858 128019429 696538084 170525302 370959524 596656491 604651003 186412323 601129822 812004396 496905932 336562963 993413155 816070773 95599315 825049839 561520123 822001245 778780797 928458329 363972731 701016824 951870094 456490825 418216779 576321922 65053016 430403065 686840080 490431932 564516909 376430744 704895440 930457371 324310095 996960731 647882056 972781799 505246098 498279030 6940136 994186658 46394551 350761207 848439451 956226201 389779926 419013915 407306565 855123419 481738517 809495238 119627872 916495611 676410497 681676003 81181070 477451943 946527081 598720973 253888199 317459036 149288063 870367578 943706037 17092122 552239201 46552634 652126288 612381907 950109603 356654045 577695678 121496064 496014920 350531957 221223907 512393325 833174637 848238734 574204596 678499911 658559766 319613394 594082551 561121386 835894312 726248262 582289791 113202311 41992393 200612051 27065399 831868806 688993503 690497178 558495590 274985537 503791362 133232301 45800479 370767655 608698452 834829818 929180532 828643978 366295923 378830456 152734673 331189475 385429373 994041284 652264650 717700684 590455221 930578987 395963179 17925277 570972852 405491354 569621274 188204857 902667322 619102416 393306774 952936098 19962862 214561572 193338729 107507714 1125600 973924950 870446338 514736611 148461133 111757455 861391815 538251515 429813582 670493482 412787675 692750257 58464732 735651274 635460567 459994993 213651353 498503428 586990841 349463354 634371867 520659901 371324345 245161092 31944725 592449532 237726869 232771505 163733046 929979523 76541372 719062250 914436781 310373551 688902812 910710744 626650991 616165405 765481251 47743567 934867760 377394325 820481477 260130656 150045156 407513605 925707895 371709436 953586238 639083297 728327925 934200698 829760679 879217898 205495176 77361128 806865109 16773728 640314567 16900892 735372490 18552438 939520734 906742640 833719479 938174861 416842927 417091603 898647921 60450316 21181140 706224325 143155194 179176242 716751462 655483812 105434571 687304880 425548052 252440196 97024573 240724298 732708911 634169165 357729912 332287888 539462229 521182690 348043362 411831351 537138495 261445140 879051032 155005424 41279881 105572968 92419352 219503315 67383219 839212009 225076124 197266710 257193835 830844035 213140963 398025198 391316386 93755936 390403745 985542853 941753635 512905452 108119836 577609590 302713388 720328848 541782995 895232890 536027264 717675771 666614600 721548884 166036055 502577406 982232840 97759947 323717367 225944118 211427723 404980890 189353750 959630431 40332789 539597396 368265660 989513848 289753401 129765149 125939752 641184160 94815066 675581932 915126708 639543380 837593350 213871895 977543700 733781854 634778895 949957162 242761134 668578671 887090839 351865566 885668435 438212558 831697846 177040510 390082104 167479536 922882672 792849973 612336261 29920425 469240038 366358337 595155685 730465780 498783510 4204174 543348242 189972126 478049193 643938710 936625293 169543959 834540766 483915080 202074631 784194832 807720940 876746775 739481241 843346579 116099850 605322394 807053286 106158833 485945586 290862619 546253319 505294405 799901665 697325632 196768549 725346378 149688860 333054944 928941928 644430002 772669889 449366442 244668141 220242719 972705970 841473212 212512977 96068469 79689576 791455015 12393224 354094654 129284505 614205774 482228230 460101146 14798866 801228120 924490717 300486956 665466943 527046001 519731767 650892616 58387165 164724531 132094404 468660230 131014339 698594524 171823142 490844886 886992368 931269495 679713027 512942349 602262547 126078785 912168619 747378917 704275602 719188251 996984036 112007219 257897449 331017566 975592778 293589511 979488408 717516564 697376521 815060478 994641998 354452533 352034465 64585749 351598466 893634526 106345255 721388665 298499205 653027011 7441696 724764611 406560787 842107999 759423305 347206561 663490067 391003633 917098702 509324787 615794136 212720335 643739398 961171354 911245204 919864527 625978812 258807134 377801991 476673693 388955026 128131765 362063040 881425498 79443157 691655329 155435622 862963540 907743500 408738794 967544953 225722556 633585102 216181327 235497529 106856635 939091293 122749733 577646608 4885821 41522683 257993895 892922387 482402167 818286330 68346022 739953039 754571915 297689351 885797382 700951236 61890147 325394226 662011469 60677571 878606286 957960051 419979924 602605644 280564250 331762561 821785347 39971027 637984121 771004993 412588614 502499816 966798072 704908718 178086272 42398370 847473607 220878892 184041625 691377498 278157167 954952681 498045564 816736635 395430415 747954714 494262836 751067696 483619630 964227303 57891480 837173692 513047720 551484021 532283040 423961988 44582451 762135498 159605731 248556005 197178781 206017787 595808784 911308430 698679374 493373982 353298454 523866507 465575667 548188621 890611086 476330778 991345195 517887645 133020847 801539201 453107445 77715563 702848088 13722393 743512263 449528479 971726281 553098171 527265385 168443699 918734495 93454706 492032653 763192583 679367287 970411678 326528141 243312449 588452183 448875116 247784343 578223593 790825393 428694113 463481122 959738991 534283646 591964508 204690650 129365967 930128746 713933435 423360673 559199032 385551935 835665681 812162014 405850365 641036611 945302059 820200093 248091485 329493151 873320832 752168315 261635834 945742388 307460065 990219537 11445522 149793692 627220101 990284914 360333299 794994283 630463613 88908167 282596100 893116822 766068987 868177223 791643000 298184925 409754068 261169368 608123061 766074129 887617785 431468176 358163135 947098891 31870863 587031601 487141337 7794312 939390672 115192324 22756350 191876447 880455818 610548155 609125875 992612043 562126540 821614736 918305313 703871721 496281109 755681562 660778118 413773502 7003669 457226114 697245993 846277019 812514739 883962028 929554995 45776358 553085780 224309825 483142900 656260328 225165578 450286441 695257146 993008956 845755053 927846491 218313133 632221229 60295530 45133816 902672485 15182574 213029964 892308564 645014416 468789624 221168175 758539067 802092256 677290661 67005231 88970919 264087258 706854300 562827931 328662607 572229632 368931766 352573743 487759684 492228026 758145771 953629405 795138373 499794824 154543170 418308888 389004252 917444502 893946340 36692460 36155551 282022846 133782175 745414172 208133834 195293081 707345661 75840437 58037928 6207889 414190262 837794652 562392606 998226771 777916445 835641843 95662782 603604913 129996821 253888922 289499615 618456662 548858333 192293001 486308674 841707431 910287181 523840236 767841728 500159085 730823276 281495670 714113392 622167479 426876081 437983327 981390661 394133483 168768323 309413435 474860762 331885090 35552824 36101405 245169053 676038924 751954996 326978409 547247996 927579703 555483850 574004029 6770406 540946514 877886342 814628002 137513852 510265526 940473578 103925173 561668238 402101221 64351135 629487005 255967219 792623795 158185831 763163226 477554293 303866057 576761204 361167229 533751794 798912771 809359752 342595960 527019976 498301670 843253664 912492247 107426651 251801302 347680246 885157900 683664073 415744883 733588825 143746502 779758955 547751338 418010018 476340616 804443026 108600118 556215734 302497285 201119700 201197589 381793936 302679041 66891645 21163820 184104281 223542501 65271832 838764935 401233198 296914872 547930534 795633983 725805865 809767000 769188488 166642604 215402598 700108790 592162883 265433371 135196173 673512804 716638452 532773 919328292 17601516 153393288 269340090 958505787 381410443 760410819 485378526 491855398 68812440 972414176 24152255 351786635 590651342 855900852 573923843 600567608 408911673 986718154 127221740 153997902 47329957 388767780 799515934 317071780 932260626 541558118 340185472 517602376 400660431 33278241 141614524 398941783 902085135 752628467 692527781 90176329 352613714 954967034 595579003 951897522 786941451 475404699 448076409 375012423 318086047 289262198 527258536 590546794 304269598 516331736 145141898 911538698 574211037 934359651 246525819 501405898 999250469 687201547 259158904 239289343 459906748 765093849 884767990 865767539 694181104 350651050 351897745 885999942 547214251 838097539 968017115 432632639 745658918 90219483 409218303 30550645 271663606 281790512 949537166 807860725 598863818 968860125 283439683 410061965 104383709 531668777 262821500 344044576 406734581 370571627 775526753 776301395 665183981 909869353 347908169 180778373 168548260 369320837 421992399 579689516 98985868 963113174 849785540 459433059 416131087 251711984 736974631 81538701 431697534 908733674 737270108 597349303 185101654 437632745 766959764 851951718 179040729 407332710 912413342 390712081 424090267 3433740 792508606 429700335 993807787 387404226 130798948 130632664 205338448 59056769 158862495 786774403 478262537 183231574 970653693 640048667 532225426 816851658 545158588 368060065 535636013 41081064 89957724 494774826 951555518 813208618 457173864 889257616 280915404 840648246 746049925 825785143 540004214 535544090 501734792 638740303 5397395 36750551 485734141 90335144 476143359 984132473 176121546 431762938 26286052 815691421 572010624 246199349 47411480 257096748 989104924 564584970 405393653 150968873 949045541 963018789 809846755 16772740 108874933 577038751 740185135 104433901 720277118 976213448 302274263 167850330 284801602 187956966 31307941 230961259 275313105 761017830 617054417 853040166 483560699 548992908 481273818 96937395 937516663 324907619 502887290 226689468 571682543 990245540 188287842 832625140 102347812 988975736 84053405 543627712 33539251 400175911 750031857 165660536 768188326 606246557 6053911 23095013 425257742 862644926 525264523 838697219 392121864 340792101 10696709 782954888 89500994 164199494 36972303 927329550 171890677 770964087 312978220 733541991 757652011 802642890 795830933 671549860 529974054 184958057 189206826 949223474 28612817 817250985 588976560 429557177 527095192 84107017 860798173 245633123 276056364 543202605 727713215 78025386 458792602 149380585 10399267 916464934 596874013 344407379 524447479 241288757 859652275 664178650 480154997 11539502 786420025 60853511 699401435 37549926 206785180 10496270 392998771 813758066 273436500 579685675 624758887 349144826 460204628 106738765 330821218 392227489 228853819 483582599 553020329 23272299 763068429 586761983 664776547 513802261 198227842 387116891 690210737 885435380 881514485 358336929 295975782 437653481 759212226 590981899 279081908 788138576 2479650 193708150 604160270 285665085 594306514 873547965 348176064 704281405 970225547 748006872 970259669 725280646 128695132 519871248 165485706 982679634 503153359 887846487 747954163 118568844 128285897 661757381 955620938 554864176 825636598 888410627 6358725 477910116 47857874 423611609 539986693 211928330 791577801 668078203 393869365 614038315 755944128 607004819 606237748 847125461 327406335 7252395 669046262 895658680 670831823 634950803 70590840 168816031 217632268 521993579 694973003 491618005 277978332 62444445 998772759 275776057 974094150 733069565 951066730 493289426 458068274 321306556 61317063 736096107 86141741 100054379 897828866 909213130 183578562 525837248 686528009 454492999 575955287 974909993 901550924 524642 43436355 243863116 593647689 46483713 165085032 581564273 219450021 695863115 617464713 705880735 469945230 43883109 963166446 845237274 454405290 994469261 932918505 77764828 716268181 944858330 29002704 152622478 722505305 806485999 431345502 660671552 89802642 153096175 625019201 143172265 578296735 684367052 856834031 714326280 236196580 804573437 773214869 357226888 285057916 551531040 111932704 859442791 729281247 1465957 736561226 415923096 612377299 704570444 283680720 510947562 174234747 215139035 179273681 811269610 238267457 714868737 934156262 352708979 673464847 247637966 367577133 906870317 862316058 455701791 789834267 723214725 996772841 455708240 107247569 483994575 776830716 413930376 977964732 406308889 369452760 391289813 433510584 605738638 710318228 512156193 989089682 337416014 39102069 291030496 430892023 825797605 967106975 543262928 233150500 279476987 207888763 344147444 791813075 247349223 9618545 509030847 60785786 391748511 735539063 589608702 221448183 209034027 595940808 639268780 941662022 626960029 849468775 89515683 971756785 22129550 92666453 860957803 593135893 754340345 482899413 911432474 92415578 896883337 242236570 426482854 126307453 155340410 758414528 330143568 650366097 112305109 136031286 725610828 277813569 166532599 134556813 273086643 631795412 225927381 253049104 134812656 14565296 238607337 318094800 806926383 638086754 7801382 836044443 563494662 710698511 751382109 496818923 826559140 281528165 995799406 14582764 189565891 441756771 554082384 869213530 355329350 232294972 35861739 844472410 549160507 222293993 829798455 398737122 122848650 479383472 124937156 371310969 790724658 611639341 802475170 336588423 166113392 537043454 858035338 594212721 804128236 551031787 232890494 985364503 143126726 649986166 864796884 405614655 991851224 2340601 648620951 361303433 886490250 463295694 11062584 207518452 49784456 439855784 469199729 838382982 884857324 922665444 115775730 916671069 116371143 192663709 291288617 518270316 586903210 781224001 968645970 844592682 82955417 260492789 660094979 42656086 920713644 738745535 98946433 732184153 675775573 33982034 326699440 923269334 309425943 634771706 821310576 62884230 206320089 629413302 320953036 458814788 762395829 552151799 548560537 103232481 950424678 234054623 374674817 987186121 982887111 319459278 335811596 503199304 396184100 764097533 810052355 29161367 519212351 797800302 640275760 339967114 73948917 51325351 589411201 805362554 19424181 878993465 476850439 368749308 190949057 114818149 815705179 927745994 405883432 651950986 479432947 920659773 970509897 763300793 352200491 171105349 401750189 58837738 746515544 921075289 89680547 132607418 481195055 819290503 406644876 42732249 671261693 986796879 902925092 847709875 264042121 719917995 611518684 980863511 426003208 889439169 331356349 487383599 609992637 300022838 709929873 124409421 774771807 419669502 519899984 925080639 463685793 684504396 177007829 860116138 522604799 657428220 865504016 607850808 125596343 959581102 415766726 865452383 711589532 652951174 221875809 730851710 870644159 941630668 15863944 712913335 411808444 657877555 571643977 771425354 860913854 294243834 42453397 188561828 368446521 385920601 263521030 752084601 883850160 951493193 70729496 593917408 777135494 800291507 469261658 79953003 245913337 827053843 510688197 823165440 781180886 303975326 753841165 816455290 703050107 624354781 727709688 402069703 490128236 632527608 422330050 353628643 216606087 304526737 249206022 911881378 524846563 64852149 337596977 809344291 438300462 512502388 876495201 247084930 44668956 961041245 856296617 762677322 555310505 432654325 763924006 803421682 415696509 484209021 884190272 796199313 127190119 121806712 686283678 7511869 821550125 177206036 229290369 726755185 404122054 559851194 406347578 636381691 284667978 202455726 676943766 992332290 138819826 9389113 43570680 94437027 427615663 414626607 494576813 262987211 642711909 542355317 328469966 773968565 635509619 529911060 661899729 621355497 738838 617614213 78116848 65211676 101844340 76709381 823531683 701488773 83994262 355201685 541719224 395358456 162344011 129312095 326973200 156561573 585150170 439173308 176977548 105728397 118267990 319167511 123098683 369005892 707490315 608989691 806687412 936525649 506105477 1178569 48661419 689922156 565432490 644780005 783337542 28646421 27221824 328377323 129655679 68113729 278753874 861344362 48919450 8345903 577450238 411674712 845038087 550664002 250589177 502023289 759276239 36961984 737852576 474764999 492712921 432635870 676288558 918769197 362123419 777356414 59288664 390446000 583595258 959722788 762246311 463354147 877925952 980962909 835919822 798603967 618831243 532223412 9641279 33463849 584025072 622368474 456978728 238564045 86517462 938039599 150746092 643312345 355048586 957354222 939674247 804917810 947740526 916545240 868824755 428971632 837487177 729170538 80153614 148353747 92602402 364966333 452698399 290809000 564305487 643392408 616367118 116063925 289805581 380814794 813542747 419842810 811343338 339458020 788076569 250943768 975915707 391703135 157439678 785280072 991661291 177553492 705261614 994815398 902326234 259461067 553966381 395162340 110236906 777074516 642620547 557886390 494090905 184538064 664690272 902127922 460383730 782023838 171637911 105977011 612365876 905252509 176857502 901328962 59324965 941711276 249893012 923484813 243051039 961859483 364564482 415973254 649253365 374661022 447597061 417744580 918581768 539931553 885972456 273175183 564737433 844190143 104120214 706297838 483881858 939526933 512020522 11549417 910491430 503761273 934990126 53018180 793823122 258435690 911998677 399239575 227290275 46310556 871670784 981997860 447900230 148495417 651770780 553676303 928656789 96256207 357952034 858322264 9794833 174631907 148840034 951034322 154333100 399240357 553806390 106494752 499363044 685593572 471582433 81611612 572460882 524266926 358556027 597524239 77010911 852553850 263865540 872562740 298330972 180780112 657438933 937210648 707770224 742637070 994928770 546919944 340352202 852993474 39308662 323964374 411729581 24787964 638906535 966158026 706448632 853435240 488979954 318741030 639597372 397989386 88801684 626535335 67578291 403682758 975236592 598975600 669134548 413135131 220753983 479492108 733569355 113831773 593487707 437191462 565350205 226410081 325675538 867936212 616473137 477375620 607236423 527191127 384416183 621099203 266864820 237436906 54532737 963477793 64432620 59977119 649060856 955185625 932576073 540772855 789832048 216238570 774708180 45839619 647308223 622452937 322325411 185776731 438193559 88411081 104632805 540316069 483040837 626700931 177209353 81571256 938538089 912328963 530921952 863058295 214386866 579969442 820365576 498126859 634838408 326449375 324537636 561962457 111607202 573975683 483019500 560095096 553629209 186828709 707800756 389299659 861436148 324223174 868463542 863962730 406756857 93102196 523750300 976536678 8031985 3331425 914950294 521484330 500677906 159369270 752727516 217155288 28407512 842845240 31390973 718992902 629810866 106107873 401740641 389050317 715971862 687187933 437313079 110777237 913503632 549795505 728134010 575765955 280135625 735292295 926383479 940275963 419812918 373423269 389793385 929450209 547711687 98869077 312829905 123928036 692460533 542755250 295751421 190335948 914796402 242620095 333996004 293872843 719381689 851098966 75884019 740290782 524940749 856387429 423086845 417535350 141015514 51266599 712266547 862615086 519808329 183660449 663745098 103360896 328150532 254209016 52360085 550933429 515755787 351486404 698182736 598120572 212808700 643904989 137302919 87293335 296004437 684259939 276368731 483995364 734965213 408553286 172139180 178588007 209063265 94907176 307221630 592335305 320691693 201843227 58187639 195016408 937356006 637740177 728926180 399153434 824002815 402364506 731749602 64208521 312236343 209811736 954922836 740125371 816019845 923533601 370643060 917903752 658823806 884744403 422267905 153149278 452509484 74244642 588999481 294410802 580907487 621463941 23905603 603714111 492767310 765129533 507944611 89234881 726656096 793253989 420370615 637858956 686893071 611929557 933045811 810182979 927408836 484752675 855830001 821733354 408177213 350650593 508244807 704873991 620809050 596820811 666101776 635108277 146281038 329484360 325833451 552848159 171080872 256943445 910820190 720822130 977843006 994358935 643264425 454687083 386953733 834470913 633463142 642989647 823612374 514162325 622068164 518490983 783407958 905483882 546613266 787485436 626138643 551418954 620566510 347160394 876152305 185398910 643449738 623433999 356001282 816125694 941480985 511058131 923282814 536316003 271223656 16850888 986509316 853560857 117549737 460327448 427988310 440644760 416992535 677700882 860296715 903974785 497621287 892848245 561199084 255132550 523131092 635461980 984747316 713257427 747183159 346708701 77529250 976346738 112832770 290017376 669077752 994764875 121630392 998417352 418414236 955268854 368218618 996232472 430706278 855335718 906490008 308265823 238787737 495589208 834893910 366960079 238789695 861449868 295987125 502588957 991620255 127548327 837043811 201458683 396073878 943838115 729915631 370846815 32322453 964229055 427375695 451857236 442010976 884136787 579751767 414705546 59429691 978943252 671274078 754679651 891309351 296787019 948562974 923468398 484663572 681179783 602909700 518034556 130456482 485988047 305607955 149138852 364118485 676168737 426004808 509818475 796038105 975419687 740597812 469432640 592108675 761336790 673387926 671935663 496506137 667244723 123524524 308991390 514188733 523747596 73139508 152233994 915186420 676314625 934837362 613223466 911523784 170240457 42472887 710363842 534268830 856287594 522324754 148530070 913156717 890662803 779014908 887257306 90181815 78446242 123486160 158842706 505377006 398154816 108417865 990302179 808932875 286785352 286670770 318272087 172450993 313664632 105960486 844928819 386041923 262731649 321044277 639804685 786099687 59273318 874507687 91473357 660984622 864492316 302911321 65227812 984100313 686269597 641567748 37102953 754107793 505206680 853365998 966565578 872117018 785874263 946210570 29470291 62320614 973573172 850391698 7887132 687972965 80279574 233761446 967393877 284071810 284421579 422581150 466069752 791716260 487294890 344969468 998229388 443626976 482260504 367894658 234370783 136844974 176721301 739257209 453316853 618221190 703472340 965552049 138387920 519466550 833610573 743947958 389739487 783445639 384338125 734022843 98381523 623269817 98302748 848536111 58498281 814324152 88732881 626923137 451065070 203432911 724386870 602811227 215561815 367355333 454297668 817180862 7099352 936838121 446346057 221501969 551727092 725909429 87819962 936508650 360344406 206489134 303208094 399855899 114648187 968064855 540433019 778666483 901634339 676775895 705372885 979582825 517140674 53451268 668325364 127240208 822311001 566602130 654290856 556071060 780949086 381359554 681532852 393616045 960455802 950906077 906401178 542039051 181103232 498368113 729517252 381172648 394209919 894279174 424540120 772643160 521035275 69977287 470705496 767259767 334769860 304642302 89606886 212006254 157136765 765496537 599978588 592065947 373034077 951696329 99230398 276502452 483178209 274899994 452927866 548071535 666654752 204946049 518101385 933050914 111590593 648277470 148460138 408873614 750843733 345483797 723312419 626571221 79034514 20215271 151751060 988271341 898589623 454842862 605613344 208523693 1684004 38473381 108267617 986947221 367155176 235239607 380201951 738037070 300231457 74243602 86336891 341278567 833303236 324248360 582117048 351989206 358754195 403744274 813176210 757645502 391394829 544796544 552592904 672007147 675268771 951137502 279800355 869430085 298782233 830803802 897639218 13065611 276764351 369566791 748520369 111515239 103603205 560842433 763556669 251108937 350623662 596245004 276146390 434058261 770371129 832477206 777741755 191439466 92492469 853416462 710131330 997257704 281974608 673557585 797164753 741626196 62973255 289898089 327752088 11886116 661880289 402939148 653491950 146643860 643744925 428912758 735967223 436034309 708005408 245085665 74926713 558200193 428251963 200628582 64348531 672435830 54615863 403078608 905663918 953407253 452485869 494991572 731608181 406643954 162092016 294631141 754792661 319672545 997586528 159063496 649898232 495326283 460533813 596373893 479596820 724567915 626263356 183734573 790510243 339905174 658002034 717376846 753560625 923991731 789749508 229790933 794648317 248619208 799279647 116682448 475621900 931986785 623404556 895327035 813260579 736283688 691446704 698279863 447843399 500452759 390713085 911793551 636296389 555918817 378977543 63347272 129090537 903519631 755787624 50441288 191798139 86957188 32549996 332105016 477040383 256753723 467267235 283902073 456230440 286799178 377162591 60252112 546062376 452225746 599632832 501547397 363223747 151709386 692870698 460286491 818440117 43213629 229484798 94174231 276643730 13877125 788799733 708956504 51779708 79524791 186030003 758158586 995841040 363552794 950034500 749152072 442440413 780146039 206599697 278697504 814839280 635537418 433160791 170219510 958055962 645517708 291695430 356956640 692750281 478239821 3896752 249001820 373673569 910764615 442311764 180123076 631557696 18155136 733623306 303189518 549640246 263496567 978286077 648355426 703909511 456440743 460506207 589021092 399138069 208290277 518930095 485218296 99341026 280490692 102311665 148055146 770172666 310199497 462473558 855975150 338516504 158617418 366375791 480275531 484335969 868631387 674938235 200066835 58702856 304158723 315584636 279207616 575739014 187574018 717345628 302996388 489973140 122439634 949020575 813555466 518792959 539513416 747214880 892081245 351196695 141691037 857957450 123457647 805829761 175446326 494767742 145645852 466432834 170331466 212507100 782091312 629242356 180541528 893853229 72317259 540009632 434977409 149131932 617499326 400155633 169667287 694235720 532124306 469298992 995566494 151106469 492448774 483606176 207619077 376680584 908056200 844783799 976968554 396422545 450774725 478731107 578514342 308427787 964452018 933843777 593934465 144630277 987948022 619628649 477818500 988273501 753933910 974026524 26297363 782162345 922902084 926546106 60957735 725058339 291046188 452579771 903382723 313237656 175495161 529456242 210739008 537443224 982809033 473019970 942777043 148476510 98602284 723791667 594430346 128305571 123064322 828862812 254517401 753272106 7305680 426576484 453187351 410353042 184781734 973282083 610592182 703524973 952577714 190564282 465950581 253862019 828390930 782036230 764178038 446413008 320950561 710362744 630858740 343479859 172821998 437615765 603324670 777078511 960393907 272611692 285569302 390717855 801727972 546107003 735189957 232637880 58733006 42367572 497480589 435112138 232604537 332768322 804963572 832664111 804532388 963145509 981941217 829847499 760862115 915415901 22709664 201814352 942484060 922764432 11803509 956326944 754182208 168254927 890045297 568842427 523384590 570688247 225355697 231756993 481616370 590009728 820811218 66100985 779673867 19372368 286375549 594842927 979097736 310618835 661421067 123083006 819232388 129327879 378353288 127897278 622905426 73933347 936136626 846841352 220847711 773036943 519395173 536182248 94942150 354712117 717443266 295643467 991888562 802857499 706690328 791760685 426655791 839531409 264493082 206435829 820931354 363055424 743965078 394965858 589640216 523168118 877015427 296484923 166166245 231415614 342191261 254046278 179802606 249507079 186057394 388041934 475162864 762812292 661902552 267834900 395469822 608837464 718486417 156909610 375931712 398190104 839398686 927197835 27325851 576348413 864988647 431507646 627069011 288302872 629321802 742599830 49121837 635967726 588731221 205926502 445764641 888588459 557234056 767457411 281649759 667568037 689683432 645207227 10992411 560457313 762971027 530624108 338724454 797383803 93246142 826329099 883858429 29474650 585094722 957413657 713584521 823890626 700175308 839536203 417501181 356349170 51848636 541316449 883406142 803321941 906147566 498383550 74486250 667294564 42611262 124367354 299687381 466936698 420376841 438903798 687034887 584284472 131842093 665199631 814548421 588466160 418706409 752082633 21201417 299614611 361785839 206303528 432984772 785375900 816779568 2298714 588803429 672291126 710949232 493875490 108149266 539700951 267837049 424906018 817107673 391193893 963501444 189073155 856896774 805465845 264068960 804646063 483335552 801566199 478180107 195073899 595030732 706743646 296770541 962014782 861420575 385181997 767352424 424518093 369469607 808329464 562607874 823762795 141206277 571486319 529815241 781223780 296720636 810774950 558182996 538369972 687837463 142626105 115395063 594512667 749159895 201215027 312091773 517895392 200287132 580949512 337250181 665958918 264509790 337806918 438585652 186640547 213991034 646111489 561488521 70983276 792334849 742958126 593929332 376032384 391258732 323703774 769912874 430066967 592863904 317260026 781556563 185001437 271579925 517635217 284388520 633213182 228978077 737263489 80565819 717284062 645020823 416389604 920460983 150215914 144548242 445550839 677826051 182856686 610620143 794439483 68560540 460927408 107677163 266486960 642748202 121248114 49146939 927106798 829597070 7997527 639696957 519780129 437373480 778654281 593707838 769321457 914186117 433260756 607632774 678874998 550399670 846644508 144594058 69750615 186137878 3141775 444175611 646126709 360651299 464764826 603628846 887552079 571888896 246106833 615160970 964516374 291027780 573971047 112030128 928296979 254839265 930888125 228124035 492936666 351203305 902500614 754191899 401217100 658413663 11820096 571656068 608147627 741058538 816940570 65973299 745301355 407990265 373185916 146460853 333917761 203476450 751876714 706256485 468927017 526155841 375430489 805627995 800688983 836936529 199158778 301086163 738291913 901118088 525299493 410079501 63402176 895506605 33697486 846233542 152319599 737851785 378902137 590444955 988766308 622245494 168730323 385821431 946521211 831230777 977388717 857111056 14311230 531976840 762051485 527678544 27175310 843069485 125457711 165897563 994827453 172927625 348225046 67914226 283131719 847378201 972655020 315852902 494923049 127707444 491128730 17753920 759299763 574442518 366700265 552250251 506884123 865798453 954257317 353432985 801670656 817803035 939873410 255393222 294541478 208231795 260884035 832209609 277423293 572853835 194895995 94186299 885154546 376315287 957881580 298365233 899880551 770080353 209469444 255329605 331196519 155391101 372303446 436757194 41875369 931085327 429411366 127325192 623487066 296746000 657646023 99571410 232071403 289966812 864408911 246507760 897903076 483672462 560626881 408608292 610257308 167709224 336354349 629374112 796836434 523869780 730632971 495692361 819435346 332603513 140093960 942879241 699548249 504188101 780002243 34874537 622708018 34284977 414020468 100496294 316475097 876929238 678140758 886361172 390044168 32471046 776880555 123363628 117416475 18563286 832326212 886946457 842416037 24148675 706477296 587487149 569161819 401771331 161592033 751593822 564412358 194234907 614399812 714811920 866996049 443958314 190847653 570293325 397860474 470161410 37175327 423412967 535425547 750095074 786573533 843009039 863706320 408753616 203285098 66467879 561186179 396238445 979363550 445362058 348637758 398531231 121488373 870267724 65520423 488281107 252123393 177056943 388426694 573361042 762772706 118447586 305802211 740254262 290047214 104762581 63479881 32516368 655092591 183781767 643550666 334354610 510873565 140670815 956331423 189555398 699779829 63400653 207920122 762094922 488053273 144103883 661341150 80099020 351533773 127750290 508680099 582426010 599470847 775476546 198614520 95434236 719248463 5580933 432435859 474143603 387757034 384407477 346434952 271483725 683791798 443076915 443054713 861707621 420649501 665410502 517360228 287181035 897777718 863066276 984034505 663780957 256738522 839188514 680474932 822666617 897867423 461129926 946901417 369043458 327513526 923898983 847225168 77800100 563586427 668022872 967286213 224967347 344423933 379313930 478952997 27803215 375057427 84957327 352571385 317908318 36217178 614103924 548273198 807346439 575148382 843770805 915486977 820022025 298552267 865885072 48412812 199228930 312791921 811737358 875296387 100577404 856775013 135574917 181589918 405638741 238675904 572636349 366164618 659135192 204333887 803210784 913178721 500841086 341806514 107345676 418182787 398956660 355790385 846661132 757699131 638720186 179987279 992665442 576170109 745286517 209617448 937494950 581542657 453481844 264265820 304962809 85142979 377835756 588741032 740833726 67802437 367655962 507133820 875557844 168511140 265277450 577835172 700389594 798473209 301582646 738413438 887953926 182551417 134680785 381703554 382186836 181730833 264392774 928812600 920690559 647314441 249866597 441925080 408370633 138255041 334793753 432258817 380184016 852304662 550940082 663040903 29056268 373254088 651348461 904384885 397654179 123724696 171522051 200063090 878423250 183448136 415715221 796072837 922209563 84133711 605409368 889005995 668121510 452778746 767756988 456091441 627387080 167199029 348833705 566093550 458399660 70077283 328837937 353024251 971748328 975302828 59842495 895819429 800044987 12963260 894502496 451057516 612506218 645322380 743114641 961527299 407689942 66145370 144987949 925454426 893861751 131772295 47968740 43146597 712829987 447026008 222350970 564227755 831379697 746037056 454620977 882617886 475517542 300957502 950812160 47944813 891143265 536123854 221667754 8737707 169984890 844148401 91090936 117581800 693041528 612391372 935049791 127619091 230954274 941207330 573677564 389650106 783865395 865416921 513809746 951839077 595247822 40808229 590135608 8762592 498136025 636087894 890122135 774635597 939711868 646828690 949056118 578290309 901946068 470545371 389645053 222536534 737168138 758432613 698447504 247495341 622276142 542749124 816056265 20430445 712392112 480705369 195837881 576689019 977690376 709783315 995641309 760672869 72705208 490995402 152395428 171408656 465435608 865585062 425316078 554176421 312976186 113512352 375841576 725250859 903288497 289413263 918794660 69671754 55460951 114261573 45212093 382740910 612617140 583829373 738771861 140924051 166217218 534096497 526057329 562767053 643781686 830312063 920558635 735142364 95787109 13726315 432722742 700520176 584380245 410209724 392428869 417971452 144998096 917722262 598721342 765009090 596071732 207044856 204425640 572055658 412538285 253044438 80148802 691047505 144203354 835278693 581154923 708136981 371720691 672154620 353127599 758914133 184557409 12069970 780708171 936225459 94591356 597116551 944697332 933792874 989827089 142181737 313913911 642515243 464007877 110481558 18843062 366365033 512680172 831280103 353089764 916455915 853598748 447754727 783214374 900791286 329361861 230319907 583187749 111731577 448026660 253743407 612461218 366754041 300800462 533696077 523259778 562234488 916846949 964165278 750560115 665193880 669974727 985895602 388164228 835454941 526968511 540482443 121214774 612702509 94761452 383968258 812754247 901271482 33753586 834259511 261566507 403248367 846275905 176414450 622685328 572419037 752298624 227789633 296650841 652169908 620611109 782047032 477960216 46996964 366863319 952502185 487302680 962382067 426488139 758752101 559273455 182167003 634719155 702387659 111884215 463002979 912713894 36704112 694573985 557335003 731649113 225715355 418252759 144716613 560880637 600712182 3706877 366245211 882070919 884152459 829044208 921820165 38580164 2686391 727986435 776945154 18525722 276739886 12561238 246032812 652857096 616094827 303542759 202851841 285682205 734631494 758660411 327099540 916360338 907734684 161598454 475299812 263036316 250886352 269275858 194840979 43252831 349007453 494425539 843542402 651409355 129469651 430426409 195804732 560265726 434169304 246867089 574878963 799165786 648214769 220378697 86696128 749415690 672147421 853834565 685722114 408724640 441121875 543678495 234691826 68486196 639403851 343760956 798383025 634216070 239079695 129841344 189735762 679910868 523213882 592257155 162962948 447489948 876070577 934698607 87174462 378628101 806278839 235388176 453051212 176416646 492155603 186083390 181061566 969408269 475714565 643376964 20538278 424201956 983167506 334296994 18770864 705665340 470514623 185728061 748975388 910733545 424716452 28314128 784351920 793623141 137322330 159189976 427646040 827987999 483526945 566590181 153409087 887703429 965509961 4444040 736249415 516270004 979769767 634872832 31345605 524900869 865833375 786542686 371698361 926538583 303340989 153368320 160469686 355168250 471124447 977332571 427042197 877951138 416455657 47808835 65557 402981079 826144080 27614062 370810465 559074559 362660697 966219940 418076683 291974013 469192467 771496348 516155720 748655857 101727305 322420736 859703117 917305468 12610640 945990714 401643528 743704597 919192334 613225279 754332279 626652022 678382522 375465542 346306779 99355753 14459555 40400089 496496967 246682921 956367930 313071306 357445921 155343415 77751591 808078460 441933889 79698042 372241299 387196104 908672557 311948913 578244059 334345751 5484035 946365294 561947147 55531517 551113815 655523682 399855532 234279513 803121939 265593463 865520419 34662141 154821472 587422859 428635814 30369921 688847980 705872771 62928254 23758577 435663037 677362538 15519612 350255901 151372968 796270628 573369305 126983564 650648706 768188637 682225698 397710360 351395964 220679169 346824794 39440958 887905008 129529952 18476156 719291524 327523046 412474421 469136848 273986717 48161211 379528605 377280914 719613900 274811582 477445242 709285129 793482997 810242045 522509728 682876635 818327941 741461746 332549595 214715322 410440189 332233525 921889574 135977860 997898931 93823034 11727726 291670442 283410334 760090965 910622077 574783006 863587776 73679840 450442462 310313651 2965736 830702681 325179764 735153938 739565017 874427649 398700850 194066533 435161228 86842864 816999095 161251573 170181463 631009552 593101203 341683235 80369462 980381728 355922708 333367592 935924080 950440905 156014462 781422926 865589326 490290526 693296110 304920741 642180355 710036802 424388843 689263088 195398041 895399835 165438361 114462349 862664054 711199502 500410361 85068708 510608940 191826686 369120968 763647827 526701946 590805390 342631294 168501819 434561046 585925590 598788776 866456224 958175634 889346231 974532664 652909546 995308611 585222262 958171577 801540130 313160920 604334935 803420501 921658051 799475996 928493640 31638959 189609631 764356178 424318479 447463180 583201133 233584222 276471195 334444104 54254187 650539005 109943628 564757378 946975295 309688898 630127753 891454670 486960339 352635001 650812594 545588337 865571997 79319129 627041929 652099724 151011752 854246256 120849404 942525544 770200043 617693340 288684950 566523750 848615260 912704910 407008273 742221940 316857040 883396876 11195470 327047550 848934647 63673807 274643165 710945688 87727373 801198531 483996379 636082434 25355717 772557586 990079660 34589414 575062870 779459417 752023056 47194155 841512401 131361449 371364563 952025484 427752922 62351932 261668545 579405800 724686407 881485388 690501891 569524337 495943498 315243322 691331340 178520017 198426880 404242625 87038412 462738854 739115028 567413699 309696145 248743508 902704625 41732835 660805682 826379601 499750500 916736183 224185192 415174993 413099501 399918552 874134939 105190482 29579958 360140138 384838024 457660189 421046676 378873956 225440639 338094121 972181536 737595065 173663416 231016474 725115149 329693143 808906542 587007480 788107516 51053447 323773825 454579848 476204274 586058904 79317859 604229382 863667124 853965699 844112722 450804240 975452796 156096366 535688572 981165745 542245389 957578407 398167151 421302050 355192084 710237376 279435467 532658993 646170578 379070509 782083786 584038778 508304953 673195376 491467858 102988363 695000105 573823942 15616524 494180645 962556148 161221610 274820308 482270403 52166202 921147969 571696038 339328966 412632053 255150233 670359234 226747241 963990341 174785530 851421190 709738290 906831151 925441052 212289201 655099897 717286629 854981437 597966971 778856049 27980362 525015503 57317263 105156360 304507935 694319516 375996334 953450925 813416115 346235923 312047393 656411148 981911521 845613690 435611489 53299587 24470136 301339931 442934914 239064030 340816433 928945801 238431287 238187404 118231345 861091732 320392027 17575575 319539092 271404115 189235964 911406987 141279063 39069808 929234332 144001045 761464657 56328467 667345399 238178276 50579268 824426017 849529308 950551415 35923707 437914432 847866172 671554959 672098476 479693111 373195879 885037130 745457943 814435461 243440434 609114544 299650676 977340701 200277283 645910940 149018494 518143461 320661795 215724689 908370435 516267679 983594327 45946971 821475569 727035928 675007913 597584161 29636500 977995355 847974644 45114991 334946239 43578040 770379790 6924132 48368837 45411585 704786883 786871985 945367501 330485528 437179818 552211835 655591486 299376408 389753432 4452690 4393201 623820831 138312998 309403861 987932436 742705829 712084547 916551946 555158907 690816351 571636962 889311052 923642361 490948337 693725018 692318977 747209932 410665790 126793775 684922965 114401814 92449970 815313204 789202003 641501542 906204350 407737598 246833460 197723937 100222208 418683236 988076511 120295140 906808281 97183565 981541817 331435342 62183013 137791243 669366878 923829137 136673664 362194386 700577035 403068313 3801331 580180807 825093482 104168883 336146882 632570655 218576443 172009709 664809630 642081167 341022425 663425122 652803979 769262655 280959844 94432590 163950170 307793574 146003912 242399295 808551399 389028504 464136196 53394969 987428600 516358674 608164288 872783538 478171061 559073281 493976947 313991407 549818667 837997323 374580020 661195432 899871926 610803741 80856893 383282333 951830683 308700258 15182827 493866952 587513302 148932426 166823578 685786075 386224365 241685569 767069360 511374099 245086272 514175629 278271119 742096059 540465354 939115057 801874523 795172090 234524573 128310045 637002324 182363192 637334884 195739043 378955137 867990491 936546339 328198654 7396543 676163645 108055291 283569300 959534795 737043010 927046444 716375548 288945839 590894717 553896355 946755357 429836654 45576874 798045184 91867612 252975278 650492664 269894793 91997036 207851689 972005982 213879891 333405245 874341736 439218134 520880934 512514941 325803912 222984101 306575656 914205990 436339577 571483004 66394227 246343821 652806649 885939123 913626471 671681332 46781735 204450964 84955374 85234498 45550976 422039944 37752669 878784913 94258680 618119314 983255624 364591972 312042935 481779014 449766044 821311845 597869257 24369738 732383992 454281366 600749477 993402819 850549083 686374511 399390963 311333017 592079286 185457584 376918047 710968495 613488989 302077284 158144548 674879698 874486172 115963010 888941961 817002151 352841509 879535858 338455875 729298243 614582929 103796242 10921052 512155288 140827972 347055785 342977471 70125356 836346045 833231947 841091514 583837016 997476749 34885443 444651700 68522734 26767497 575719740 578509096 628762042 359972190 663559511 840357720 727748956 452035005 230952582 246391424 629046286 645615892 147302961 351957600 227388915 744882755 882763316 866506004 917665672 335815254 387420895 883549336 387539817 70060045 420073417 522860420 407986602 95682597 668014745 799527721 974864024 840939962 394788519 357061605 285081911 624164539 824974014 644187852 664875604 122641874 678944483 472855820 552335910 330325105 714680976 862281142 296589357 862022920 72152605 482564336 206958888 900319648 71172474 429013256 804385959 188396781 942164160 181542347 959034131 323780175 18103071 991275773 897266766 589826084 350613617 976546 883742897 992709358 751207166 632341667 340454165 808739015 439672322 451964722 510106717 840819599 765051917 63282588 841300469 464142233 232869744 568496142 633289062 316516266 177420696 365015079 603714063 831706463 112555843 682148769 635858316 686182045 171221952 3067832 308301920 933017291 219786478 211599969 390664618 332414492 608187035 77916029 169458141 423808762 348753592 441885242 630004571 401238297 952844311 100635478 103553210 818372982 449455266 39468196 361674090 456144072 552066020 420367987 692424968 722065048 356631284 850060707 601566132 66824037 885332887 45339866 923475364 622473290 483914022 674312621 137629881 775054186 459627906 720963427 701909617 345439961 147659951 994629408 579477457 554252606 361217326 496705799 474733750 254711892 54251675 229380909 745603316 356256325 602954396 767550419 733311068 412942174 355946510 179653651 989771436 38911734 737357285 270629816 5713917 926374058 638353554 390464688 750948524 323807203 347478591 232929225 596037565 624744721 475514713 276722568 26765655 138937765 957427122 139313631 602565049 475562009 298434845 237601435 93297773 559602238 859532672 292085713 593352134 877094261 171999666 4548060 252358202 634218152 349357462 331557027 725245550 131077453 665939857 569138930 109214087 339282740 402156187 82604062 450923301 899500241 320932552 391690896 380760658 327282214 711414750 107002114 463391293 173728739 239066295 698945722 98468931 720207722 592009238 423244729 265365533 757999694 8124915 879571739 488869640 210835782 815411302 627175188 740012369 416917822 868144733 667597962 399978177 213583990 207933232 147141374 820214774 449428600 193173385 96673514 706615514 612973137 265911143 864042659 298501578 671042422 80651606 323954439 126064795 653571186 727325340 525394829 420883870 97226911 418129287 415388763 759351068 322695891 710109232 911880216 290558715 149487686 726169211 71887705 269862281 801423441 37164778 328325894 93526179 230407797 496141761 61950160 569873002 711821376 178485781 146366132 257389847 810483360 293956771 246292032 333674210 248110621 455537907 279703385 458531209 329500930 745451376 866603596 120028859 2561209 814411135 17670705 477317069 595663170 832036931 305820805 607253506 60499527 136576128 248634793 369624374 943563107 723019197 293096274 146570880 725639397 738069620 283221806 974823343 11514911 288512821 501422012 343888959 917182449 383487002 846101257 117503416 677261919 13586169 854975435 194881290 611693254 664055337 27910070 659769567 699884431 174835341 288425129 615214703 218920497 461876805 502506221 987924 68471540 753854353 133586704 389523901 346399402 457784967 919061654 305098881 943867668 632430354 851302749 753738851 40584310 754430973 535660481 119699715 277288983 419113064 637263834 10851909 824889873 400968868 588520165 213295335 668255359 677897228 198733277 888883816 417173886 374771301 679424879 660713773 965160279 361412897 573273905 784824340 847006932 5268911 304273754 386122439 634786947 396326927 263507946 925919456 851040951 852875718 635304282 778792471 249416394 583285996 53965526 611790133 991349420 52916747 732118506 589762192 368030476 466913075 801743002 801597700 407022580 811069321 182232124 581505686 135538371 927809321 702519321 597649312 274719271 10593040 868291020 475643214 38779037 640982389 614982850 155545355 159149783 17994015 306430162 15024900 560049125 154565883 532952486 466320869 687846507 693628845 444535697 98901668 656183952 952786297 224981221 823204904 371728911 639747541 592594860 630795546 328392375 780727744 41692910 927502954 254016891 238126161 944856343 926090637 787780599 882901517 316660306 778007030 216471321 220851350 460313691 530226560 708404902 46013193 71841248 546566789 326514979 172649916 788762884 909423272 298619383 409185602 722886304 957444843 184081754 553447924 458039715 843559708 561265488 492919675 100666468 474447266 412670351 633036727 907427609 343149369 737062484 284562719 67272147 159718179 363227442 256548483 405426882 954170239 830493347 714125106 440426722 940299262 955037426 603348343 350917952 287297250 746979146 48902427 965735056 850033736 289084122 886897471 505525218 981753538 725607975 689943423 266165316 563785245 717275008 87774251 672733827 198970127 209352770 871361039 58900639 799808908 886401201 740695149 135492060 756169299 937715513 113627380 658240011 809965863 601686670 998801475 288654138 412009997 637405189 887121631 591412921 381932495 378974452 493108915 991989529 705240192 50713122 450009286 455975534 854982881 925022535 697578376 145144002 562465664 157509038 483134262 145634700 410893411 479753623 732834560 147079644 193616155 202561944 242604126 477579343 192292339 390020441 573763087 830171767 385378802 627022588 703074277 124301432 275742394 727765673 579623039 372051185 170092451 934543575 578979740 727994205 636973998 145775781 155816189 830776674 766817321 844003758 103193543 582007601 399337814 763130658 349864174 51824144 784118512 96095607 945865669 795381164 919396618 309262276 14293777 66248136 456177513 129446530 185843589 987649177 389053019 338138575 437263364 126646004 765471413 313912049 946595398 529987519 821483763 96673353 240961421 229305325 393864992 552283630 303595505 755639190 620901309 402376497 830397135 908293470 583269194 392404178 869965225 405178179 501833264 841932476 528134080 782209492 994553068 711284369 825763045 989372824 908803300 472591361 484063567 174446169 417657143 411907425 464385063 687522156 662926242 220151262 156988513 276350986 578454407 565188240 945781629 403819892 931637210 8310502 434813337 465447965 571552500 94788256 581654153 946599784 504806054 119425804 3260957 814226092 759652319 368009838 544647784 289196252 303565581 875045921 486320703 537035925 762481913 594094177 166293301 242728030 786993436 290069545 974877525 842952080 803333955 518603239 10094963 215257754 513312276 156177369 287286653 410853026 160052153 783924677 274531108 203235666 483946887 49899166 830313934 24844474 261104750 402116191 502947032 657231342 360858544 652678890 152718370 543956277 695956285 787037628 119691317 477898501 439881206 627501660 934910495 458537109 176567281 945519874 252282416 287408456 904555429 830555115 461635901 871557966 177500154 844030809 102409005 420909348 418264154 132210716 393721669 834425444 632783736 59085289 889685419 101156303 179961366 73889110 31556702 336895853 542547906 291144657 385763388 567020346 94970502 812712718 892112874 502238796 957552688 868148850 657628514 554205393 234076249 673413108 605865540 164075329 205788442 125123864 446990864 253717555 232286422 236577787 835643539 148606746 890386425 96324428 916545314 606484728 443496228 973739501 139304240 857732019 628789422 165720000 174286542 309911732 754543098 556804806 143102805 774486201 494017719 936131160 985586881 61378243 340442899 456465105 435766635 914489056 789784730 464083204 425161067 530468162 908532413 289261211 287065005 100772161 413693486 298235292 781370429 518145324 482454027 731295447 76748101 150007600 1564598 359540921 644059722 209108843 107984901 897520481 129474931 182680564 812787720 823080099 244055468 660654414 594165871 135946351 616719989 369875520 594956694 345923358 585213588 702134901 435789344 252666380 398464763 605670796 557650820 879791040 449803182 629526397 795357504 71523538 45077003 440729847 366117660 385199442 89915620 644692470 66997386 343126997 470811572 106090501 726600453 468964684 436573371 208127185 952223101 712089994 646731775 819930317 706256524 560216752 856163425 511271379 857864028 557451697 452611739 653707294 258101007 306699166 213649588 502904833 114785397 686609298 661380411 496658041 234976106 648453954 766033920 811415070 286416252 291902346 895577220 306914032 150368169 977902197 42016730 436116729 309314105 328724123 309958025 108965478 139777756 440209319 216834471 273819491 325871992 840690180 178616047 233116843 888478761 243676590 276080080 386499066 320319540 856138244 715111177 331751564 540574361 756385046 738042988 650090481 506323799 45807086 437308827 609933386 452978198 942689841 113169212 712486578 485621397 825176251 739439024 70716050 843419275 321210715 3166968 802235257 927841027 986745570 453855045 457130519 830926498 906832422 436264175 592841091 653674355 185320553 246115880 93075403 250739328 847657596 578637303 753348874 117799131 426547912 8291798 455304756 104386552 903604992 165043923 99618895 297181057 22085421 374800222 967602162 260974421 852832801 133711793 943775729 60493522 894647633 583337352 906952476 684415477 990988175 820936619 627531906 839553447 996715167 713972507 139954917 392642368 642681529 704978972 425383250 197422399 623989308 6007530 787729606 630950928 192384429 154656511 514810868 478276277 969449264 901870918 544081506 253970245 535187586 476509363 849905824 454522945 657968614 533877282 961070986 642541302 898548066 7909823 913080756 376758434 505435489 574867440 972649727 982562086 461056675 446873232 954160821 7092249 107524978 837339755 914431969 61317619 141685557 811694413 527675539 697286845 103742674 779314030 556435490 757235613 143354205 317521334 315691347 126637117 908255826 305174432 555090752 88091177 739035479 687381579 433686643 384647382 909451640 9918899 184809610 207630874 734452170 278065840 828087447 755410370 394298896 387741105 250695636 581129692 447942778 134725229 570417801 889612677 979852292 928069364 629391331 988985592 26686084 897444158 12532813 561404699 280673446 865647084 994077535 43076879 721653220 612509273 650231263 491924483 586810396 287684038 557090636 789153531 794387506 197225216 100193459 912651780 387933483 321008273 87897081 934830985 515461533 533533717 249088328 154762362 781776854 605775798 779392752 475656118 555036935 478180782 304862921 296679282 138185098 302434651 717702085 625066249 151653491 986143335 450596489 952741273 721290304 738316776 14141719 497682634 468282163 234907010 785170950 226255336 486631102 251354071 570872458 811063082 769409899 621640002 395802283 899478402 826825261 458033952 422039065 429912346 106406094 526369300 336637401 81595613 448145358 525413507 978776025 150165022 140895195 905402243 237411206 617394082 782729701 797518143 182732237 866809442 522951011 730689844 123533924 59769475 172599594 37761317 718877340 671269543 193124314 779819841 995083018 539483078 476293520 386598384 909497354 559140987 598336391 676443655 69984315 893502104 550499374 207977783 104750974 333680395 635428441 366622462 772382403 70137274 658106594 858353229 872933848 86388388 966737849 44676824 637711122 611919250 279777442 183774720 749949871 872491673 617982729 272305471 105124902 739416521 140931874 276768555 884635943 923107863 939913215 239303296 601972828 629895025 151542548 282321346 626641551 17708803 271236052 946084237 305105966 450075778 935183407 980711757 674808977 12656027 795192242 665332620 213121065 600880870 638657806 524167181 698107486 682965077 799519457 116587276 508199503 215040742 229724633 740414284 488197318 852841422 252753480 282961200 980570205 154178018 770028730 490489489 145557744 77551172 179179418 513448570 949072080 20000991 464037114 135376177 360874286 75178595 701089738 748640695 235375022 493324063 764805601 298055847 899527346 815541000 104490709 892572353 65568510 539544093 287856558 504986794 577745912 896524067 899531157 458479471 138936470 394267374 678743663 162736766 554107561 464283066 809618913 781109055 24806495 590870892 31660205 747460359 966810210 392340237 98242164 961725992 770738026 378846593 420324855 829950609 703082236 373907677 650137743 779688437 575517941 272189142 544938896 733130759 424998331 487252479 155248733 869019974 202968793 310679929 167553633 943323176 251913555 812858776 141563082 374856147 326228600 484933098 556171818 251684543 644681642 576454293 998105946 216155282 837885015 924635034 421083396 442847756 892741892 538756190 861740953 439326571 678953955 716550837 839090305 927068693 662215863 469013173 752002318 116401560 535410857 628642263 612072566 89727719 555366356 523055703 446819457 148083016 385487424 508081683 66424105 269625075 553455075 811833273 257060747 503796648 726618280 588206052 140506736 273924715 571977660 670900839 800799294 947577459 579905089 660469299 914756057 665110141 554762752 278422968 657219279 109148358 573778798 757545819 829190942 640397087 731662782 217346840 50924754 367194922 742579299 639211829 346078869 480098451 193660297 574165970 536987365 506566904 397806411 753353668 545167258 807834807 120613295 439237447 314030706 907981788 473388848 406481199 448715268 488982359 937850934 303626620 482542174 208920160 854968362 470678099 77059888 298585858 278855872 262611283 101219005 28471539 848901529 491166633 111211716 33128637 452333999 3776392 281389001 603493347 330452494 710001713 383561032 821126198 841780979 558603627 596383277 608421458 707510119 837188959 984484762 893932563 405316063 988898704 827145109 61508380 173232939 793503879 527244612 591674289 384031720 151490580 587011743 259199820 19217034 351977530 746991850 467128559 746906443 270470520 37603173 528493486 927332410 247507994 602939069 634705262 225503518 749637999 474870434 593609487 595588102 479480485 696642163 580401558 576992353 667093729 48410623 763581639 322192414 230609317 119349681 839055263 39395684 246689040 783438161 993280454 898538806 545996813 154701720 445672814 937616396 118884394 519763152 952911839 517958622 319683298 3756868 68671146 592272867 379494130 113861516 47542620 192293025 997118202 637400065 281992720 694311534 714049725 496738648 245913774 386862080 643215542 356746955 371374724 930583168 815333916 80500378 314079996 740264877 811538124 584035703 595706473 15433012 921311944 572910377 490167750 989133941 652270730 190909165 674863750 995064583 423016226 131495347 948951815 720623255 699890418 310252579 913502952 984738566 652159250 796501355 377657704 424510111 738091473 569873332 117158716 844571276 229705692 238066421 961811556 203250474 191835653 118185422 688878167 296049079 426584862 846235461 862622264 18393570 86315848 642686212 372297570 34856402 712223341 959794225 903834523 333268814 263125082 450239954 212797422 856592495 742311114 248489231 541115815 82770790 953040665 201038649 82005247 925518465 317559883 175527923 867640754 856336713 372569023 327017194 185050488 441475107 943144015 803327061 41366229 71851960 312407655 309849102 759748166 990133017 992726840 991055589 757569128 933131457 386443680 862061408 641755509 84827161 564596740 570122279 289330675 671636602 216369451 279571706 859743053 182486628 782057107 338001516 292255732 812785738 986817505 559196223 913156537 218401371 830441698 908268981 716910018 115973532 27917564 115418901 585620023 734747828 367858699 520169334 671884821 344631049 344222865 358908078 349858093 51606203 979825767 159982497 242817965 329490563 767803791 497934762 766817894 946871140 954138802 63506396 315763458 862115377 558498503 976978986 876175702 915381694 823256710 143178492 706722827 263755339 506604845 72122265 826082032 612780618 742048654 780860321 794134527 161232676 940711117 105931831 530009517 29043759 561963843 901065169 21782198 691331116 90975199 577041934 359478752 657501796 220559480 413770661 572669592 736858184 718083898 936546262 887029385 281850265 564940355 502191463 53443402 861514887 677291154 848700747 897700337 154686489 26240665 476456121 733639954 613028256 826702881 966457360 507449129 362148497 658982198 957338785 513204569 776042959 910262355 716636844 580797294 628415769 528724338 886981425 934226079 84729694 551052572 543470326 839823430 264404446 851343480 446023366 937935188 97461584 853790268 991834895 946428766 462869731 14671530 781956909 118931161 606061690 756776614 960947165 185402240 493479530 735278386 524949170 688277955 761629629 15549297 640589772 706755261 106117246 594207105 74868090 625978885 52764387 654989684 602923974 82266145 504268832 883688170 930680839 342149269 25584765 684253675 126364552 894284099 752783598 529965023 277969572 703589539 8554190 713395302 145188155 597067489 958876283 683603233 962207058 576213798 872159906 620552815 677796193 400863193 73683122 450495558 392723212 281512345 502941773 591156194 666501922 93762091 705368455 331984617 25523967 787435695 320492409 926386960 17936258 479244267 451305270 751800753 939428300 357042279 235924019 21315281 385708892 889214911 941964204 246937593 213081208 868186941 982429719 971508672 555882516 144099095 558284279 774321037 822047506 179068340 708092435 281673732 18407651 174973523 390390379 979185484 184873105 244325273 167501601 316446473 528418924 312181055 401694782 96341670 40539695 120124987 829709434 294921154 944245521 933260530 537497497 218950297 850879480 152936863 932250862 477364399 34359321 983086453 185651704 261218276 952359170 350321830 906838731 563596244 133413823 872581876 95378883 685514636 308627497 228459151 886542676 523629971 532049152 483479497 171898370 456799987 7875870 855839975 656231407 137305447 248971000 897174851 977748756 145302152 430796355 347995485 48806716 734597790 934221849 601192514 530307056 457053559 29850877 142297464 434564416 741977310 710530873 697014162 422731482 41793308 743658800 809799750 389483954 422019697 68498339 688736858 275649486 802245947 190823310 396797726 387469138 308801642 859038243 134054588 457802105 489676532 617347086 613642468 27721321 953383911 861248923 870593501 980836573 958964116 804731518 682605717 624070707 323898693 780214389 756000693 362750226 911618263 363681762 967844478 12325860 941992610 842047864 299138278 189324501 9784684 375781377 959966349 816783804 358635831 253202762 187914217 574197347 419475125 638966988 521652639 159292289 109499296 306682877 740550587 108731914 729172919 112107721 507545595 753969329 734576362 392943750 993516807 166965350 786098689 575461096 435007266 512429182 601878895 2630900 189812218 845678813 403958699 375095234 727997921 48492902 854865616 711591284 604770313 654216002 439920321 4402485 461252291 197947452 120915222 4345713 858285101 568691938 391211620 44189837 767221350 515559981 233578509 272614831 573709752 730188374 910296001 971591635 732437035 514182759 923253012 38116861 788964517 336031960 597139853 285183946 195180412 65950865 519975718 212160056 733396638 619926882 891635716 48075102 238412738 569245778 101417190 897534163 741784688 689687691 308535797 578344225 955578209 871720416 312967477 340489318 452788456 602341740 947702131 845442248 903954276 103817989 798744688 880982464 944156025 423738764 275006261 158882190 217857140 516320693 146077831 727759675 696005615 54697927 163502865 999916252 966393935 532808784 780389976 856637851 258470894 202293233 224066180 272250545 391688294 621195756 467102277 549884710 924128643 542146025 460915931 287881298 428800456 500273984 977096216 247039229 740191363 712670383 159694296 122450228 825538725 389905962 981193920 20311270 783961994 66787229 327707074 85231643 358572599 885175390 701839323 438113960 581491726 709379215 833787250 784509151 287217428 261381455 156061664 31588370 490296889 447524230 959784004 194790163 935104081 113035645 945536208 402581341 581270395 449339528 840178111 414831559 203759620 846127815 809165615 760739765 32763009 94743952 462151777 979415626 297070740 224699251 487146331 422322440 993388797 14233950 847688624 793473165 951063004 154780503 405870560 222301146 791885880 867953239 877550382 933307912 736662783 531256661 609075041 45941030 894659012 653822871 512021111 516959226 545628899 122402238 899705614 668247167 768218751 965972012 598783148 572966714 45824626 418829832 970902129 185431528 301180575 571617932 381516037 33512566 655863111 944257659 668464206 883586334 785081162 57042653 360991076 236712489 507270269 998698945 470152369 222739442 879138051 223831038 204650572 941133161 639317263 574891858 531226444 754357201 594651789 481880406 884716020 484446576 316903285 738763987 264497270 851202666 469097688 104189709 630285365 772678652 197067147 626621054 194210938 986589573 955108488 533519222 68339081 124590026 62475061 421623073 223887017 743675419 362040692 894432236 941748482 401236268 285985159 500766185 647464314 915093958 903616321 755468574 908323832 384200058 527714944 170727476 584717734 7282845 596831385 372250381 274712048 133033620 632094706 538732003 268916240 429841340 451383143 401609028 718547632 170688040 572928405 177067011 877252145 99640153 261409785 48655095 55841715 630690492 942043998 808794539 366829198 584803736 720959337 682476284 816746354 688335415 552359859 128273830 743339871 405971424 866354681 110268437 632262196 568276005 640530593 280451337 893781494 244694361 740392622 108697409 95116809 651081622 134642032 737934361 599239257 735839255 935631591 137645979 141400896 551240559 732912913 113857172 500958901 435605248 897741032 272258069 439967607 236759903 174527663 32088935 120472623 554303144 250781752 389465231 727272665 410890231 127072145 867975835 546575664 445943586 489713126 223956595 168542629 748553658 765577503 72699496 296007844 425327041 204764167 504812368 668335841 103551340 788594168 815690749 761248841 359929855 804778116 291570215 932446973 467891648 271477432 365215436 725803227 147346427 770647331 433597979 616969833 601018033 168092683 108051832 840747296 298217418 142313997 547404310 424082973 530467391 378567553 957091705 290651049 394101864 370933488 249325922 175545873 300471939 72752599 928522670 251226364 214827760 188253169 846888054 128630014 436141723 26732082 295578648 658107059 782248879 730097275 66065973 367819448 690870450 774418850 427618469 848237187 373575564 446574422 584251024 868617747 874405518 96591617 557836541 708459238 391164494 947492677 424652714 746540875 70744474 353985914 690328229 151433461 116665088 682279688 277777669 60949699 568754105 894521975 986949358 31966504 296339369 341982281 603404450 162507791 950819312 149974248 579148763 510975082 55010854 55330307 846292041 20946672 776318584 284907180 906662336 26520198 454719154 939317482 518598366 77285583 977602518 255309348 877415281 692599872 252403948 129327164 123055442 41196954 304853107 354721192 777020802 40609492 360255208 820435250 341824903 696257155 121904533 378586044 120041377 137147591 760903401 106887455 697061632 822260112 41380092 696859130 367146535 952848521 877483366 441934239 911684103 411592166 874745967 237346671 252069154 573400295 707012852 666028543 657128603 46358544 46583217 635324564 306343364 683988626 818091415 496426321 894479733 136443967 85283030 299159103 522748209 234801242 664869666 585660663 101440643 962648320 69190373 780245230 450960117 715699044 209003782 554983247 958398011 605532688 559688891 815650304 858264684 805344523 493787398 263858433 93592814 494401259 435972809 35623639 895799363 255764299 364647189 678046598 723028075 415182574 340187480 822833254 932622938 213657040 110317681 827753296 762047657 334699420 902932573 463193365 766230176 920016109 541101982 342136405 133720414 741949928 349569220 947705672 141031840 252389642 361912455 593656431 53009092 248711403 259376741 653641671 675552088 73930314 946520282 485632118 17612605 47046779 674852673 973741591 806027591 962767785 593090108 391805906 973357897 9096516 771537039 418636358 131390904 479360943 653530707 755124637 952181177 575063627 224145088 576709788 276717413 654694717 247465760 377289953 879472463 18370518 645514911 611572829 668984041 882194637 137747275 947467529 474365923 22733697 259348444 110206405 227546126 664911542 531149068 422447966 933139060 466494679 278595961 675057591 854794195 100785398 782215531 498757798 51486247 908199940 289611406 48151524 39873824 230722576 756539483 635259497 854117269 411776129 391585920 114257087 67100102 307379048 228665520 512572467 197822574 120355617 489925925 476925635 883323956 543328753 505254295 967423198 537804074 820430632 188829942 169626693 916431845 763263415 714336328 228841434 223948777 849366920 859595662 705989854 46899758 154222599 547059434 456615648 757342311 672944643 104051843 966146502 933727932 920983624 411888636 916189674 299808671 491169101 210186343 411960691 460150050 822462059 582723890 290915510 493838902 686173799 895499300 749779765 362294682 516564096 375426129 891485252 300672590 789849114 638367304 832865184 552409604 636168271 19173716 737832168 876591015 322791905 515764958 784921143 534685459 794293665 64515047 798348715 403481889 282953732 227628289 989450061 752368723 775104358 215109644 555297476 266655749 195748324 581384545 674499910 627203822 793729107 880900775 442989328 556805577 168999550 466195011 22301946 929970373 236143003 349770287 522286914 637919176 519137535 969244655 255045767 420942060 861202012 600801663 119992964 589685212 603242599 126296854 201818577 195792203 445380870 722989652 603241834 252985064 431271457 808577163 543047348 867247445 57889434 771671787 172686177 754559088 706377234 595923075 88977088 606855630 679718891 507300252 290072734 536057409 254722607 866823266 823934647 689920491 255591341 853385980 289073439 518046936 653672424 409781766 204115469 463110701 580852319 478215027 189752336 98686018 822543952 677119640 933302899 408498480 250300290 14800462 579327043 82108712 894911073 845552069 989351530 688830924 707210521 994012799 248871597 961511782 401615252 11891537 471773912 791538668 699111662 25441522 363025205 380093713 376264686 354407939 428650864 812312442 330173533 606374328 910249740 662390292 606215028 451567238 212519090 753618665 361915597 16099017 343480065 209550390 238414570 522381860 913938466 508340587 211501251 368395728 277733074 646931697 502423991 369151153 248131874 160165799 85400733 311751735 201537692 267114972 327296385 311560614 69192348 216007352 907315789 207529248 621088538 396994671 486272750 794483302 543548599 832252945 499899282 370842214 324608604 245934852 64635210 155622387 188085091 277667573 966806477 698108046 440222264 163539435 871545293 807154661 847989711 878260121 379239035 18702059 262842002 116318650 925433709 910989129 704720821 775179168 840785382 542862780 639305478 258248537 786337406 217583237 868939205 913559530 787494229 872379792 130705848 580896848 904630924 510434652 860630445 984253672 947623896 672939441 423439550 39095501 108086434 23530833 216678470 976432714 949496345 935583360 507577968 987242091 986296253 953853289 240657640 763184565 591156333 388255435 945297484 416833909 319341589 130473298 81223870 302749301 164739368 839600389 840018681 586113068 17786013 815174503 828224013 421025113 745948299 570841095 360452806 49131765 985374051 525288961 960333687 25883258 785235632 699239081 81853056 190542060 155176478 839496425 83275479 210959533 454416829 585251621 775601822 505012403 822422275 287962595 206919879 798287452 801623803 111245911 113186545 18548313 434912809 36234860 623066128 818510297 463807617 532321655 589954124 476205386 483419813 528754612 183281699 904176442 14495406 916035953 220192521 89278382 727369987 416995756 454347449 447816331 337328480 256995984 26010228 445354600 927937610 538182221 486589189 43724313 858879226 930255603 608611279 122612293 743473889 794633605 101216361 321828574 903449474 378806281 585529695 614534964 74132048 180477680 580454458 679192462 126543672 38856483 341275534 142159487 190671162 721712415 458354147 258278452 836196123 753365622 649364325 982291914 519997804 101246423 636042937 389669666 923586141 154055641 838176932 447345469 874655179 237056489 310966671 907244330 169515726 14633889 146193853 878283178 179210682 278402650 488373153 173874527 588317682 810649224 556610442 32857920 717560872 372678906 563417858 621229265 968656231 118138598 45046906 499632950 704347778 179121995 533473992 921598130 646418951 617111998 782812321 85271363 259376231 518161508 706207212 386005512 642753632 184463365 259830059 460675259 319486825 438725739 928115105 143337722 488465571 660165898 714169947 495628376 913735054 347679154 726645990 804575151 16627945 587958751 784384506 513454031 347726214 13175297 63990888 984285185 962459195 773152786 524657150 587824510 130508013 134302131 283811288 116437225 969098606 346482490 68339482 221334820 316707941 142150793 831567393 861354684 209312718 698049847 682195838 359501717 568181238 629110723 520268539 653269392 742830632 670681526 760823522 888408478 248928678 56427672 102634077 424090217 138055398 245291140 826237187 757809657 201411737 771193029 72640969 477048291 239250557 236378488 921524046 791979922 468673779 69213297 629305126 340930034 216277253 504032751 949449604 952254803 300862464 46574208 32749042 748211723 63342889 960692534 444827536 759805433 103471750 847629261 967631887 212521311 190906560 554477395 31820882 360332972 860130889 978622951 248720057 488152282 975881075 911338358 289142533 702561386 42038141 99013434 657613713 722419112 934953742 68573955 758344873 191603659 156962190 170363442 520574953 110825805 610283465 124221642 751998802 338099793 512390161 336427389 419768930 903130417 294179880 648227296 489370914 913318431 587229888 735364032 711596520 478160939 745232163 469912361 353986067 412172203 825898852 162198104 606464649 542210896 706656832 389983711 425640878 953316928 758331249 937317218 360698290 820040243 352922983 697089308 13676586 684197791 912209241 357333636 915522649 234267421 320476397 792017060 963574318 574938584 159355196 380613497 120606214 65269604 416597845 457310717 280958493 927037187 714935902 495600018 903520893 890731663 199037549 322283801 801241041 531180567 110437505 305991216 723328550 529565003 27397963 655394283 604635435 586631877 155889699 685113771 904916873 897230288 598059544 627767952 288252191 211843692 579716692 546454693 901293191 956169030 320777188 223738754 787875085 549199558 615468831 906793092 48049391 283653398 127607236 408288503 559551871 780025594 249495345 655527085 422494657 695990236 194788236 45709062 550067461 59913463 639420250 457109693 761073887 911381635 825193923 375883719 628504215 275516119 682233481 221629136 890495955 915188762 464168698 229838844 520080007 846509425 525094523 395816492 584103261 901670636 85197235 51354659 561985831 693203210 964154431 110068455 805933125 871519531 502090964 31450483 763419301 138083639 984238426 619041638 540621422 457625025 279196302 95136845 131766932 559394862 719174210 71024797 819882110 465850162 473778589 250803773 810229935 149413843 48361741 716059507 605460186 825165361 878408672 481873508 938404788 580519392 124871711 945752972 766786103 374293452 875504905 77364808 995016154 91654210 533724062 41524430 154366387 988530266 627042825 848238569 82485545 652238113 170924208 533475588 446492641 815705267 110333817 971230977 561846065 785425364 42050656 29368531 808665305 228958955 525136824 489101347 657329433 563544287 120853958 546274699 475103778 940688708 604283467 378144730 891953118 559548126 231583102 27432206 930746807 478263585 904378546 612373622 686973662 860568586 640032489 80837353 46238313 966873457 15954770 164383619 851148923 541674151 795045722 226704390 310393299 437518008 22775811 992367476 569063362 830967441 193571732 362692324 639880484 85677679 645542411 40033237 999868858 944355149 318895618 784061075 926722560 774497153 424422395 648877720 178753664 579345506 11048473 853728448 707768149 109822560 805600242 668523368 374765158 208340126 852607861 581830658 164320706 971159836 341857722 655933839 360855093 556679223 119175718 404701600 366186007 990903197 833311542 827304290 722724741 891162080 895046572 238622924 404340400 703925815 779841097 801277598 790667502 664967955 17829450 569066457 703304999 626858332 940841279 840758078 238393417 601435305 424971605 141500756 2844066 733230719 456902720 812501304 830401094 848589018 953775273 610499900 634221293 584386942 646353478 140717808 530146967 138725569 148114556 25848844 529600897 920115697 506887523 70116446 696776890 306233025 227670316 433873473 923927004 465875663 935699440 121621369 396945440 682737731 62406128 830218804 160021727 839853407 650139772 79924611 213380148 566037137 189048089 248019521 290818387 381934896 988090863 787727768 509650221 356360870 350190064 608857049 920717453 922099051 4939898 809557776 719494336 212317568 6198521 582780790 805685117 724913042 790618439 869928055 310746182 32278303 775925546 265288546 946911646 302214753 994224195 270723050 554807431 745241993 461741574 408474450 248034341 63618732 931593630 84940526 40151261 990397843 11125257 157921559 721805401 801934410 777828687 452867827 728515346 950738595 76254519 990638786 144418616 239407872 949668026 1229282 793597134 275813065 185577803 495527961 990674972 129548145 828439758 747686906 92222829 987466214 654074753 447213388 651829259 720968692 393565058 496841045 883379633 669958497 643856597 345646867 836129812 151599722 699459007 746887416 562478576 669114847 59825928 555443331 377726910 22931379 837370219 936957278 885372481 990277747 630687296 727608861 559320123 40813382 573141274 751027867 506425173 5662297 330706179 372953391 865210044 473219608 457851834 290988002 501794784 636870974 587057154 485603294 210733214 328951661 345321896 938913602 619726034 330296353 604338463 689075831 622670514 7633055 319377084 103838576 724696707 32042173 254584291 16642844 163942955 80034757 893509341 243130051 960011915 131164487 837844631 498847396 105798266 887492239 770936826 205904017 892123612 593171582 863148419 574813337 720520154 207694818 779261309 684029896 81400102 110341859 303706072 543458181 691836693 918699433 638568170 850722235 213401409 748526408 206122738 276197545 585117625 122847612 256870469 9773939 170379669 128674795 673775671 109396176 675692071 119709264 767918268 413419435 698235746 610765989 918162238 587652089 902848442 77322597 986816379 272980954 696364823 653006392 856721021 884573043 750149408 836148647 112044884 65546709 670712311 253242907 431167365 327046861 892278712 957438237 292191690 705260186 154352610 569292951 261369003 445260955 479508012 608218876 620756104 723345314 188729473 106402144 587723026 503831598 773919963 523214652 625138211 810059771 275298717 671128878 980893611 279519529 282955938 424391189 889694118 752926071 100527413 537186836 62622992 822159729 31393005 80869446 489189954 817423277 852978197 907064475 497883877 410531896 501574942 780261277 885907017 921686946 98908354 230011758 403750606 906490234 105018282 768454104 124665641 18131985 559275106 402236855 961797579 254259860 817121557 312821683 387987837 891173479 380222935 773982643 617805893 532289549 795978272 499291500 658129273 686519082 362455345 290167637 300020330 191724335 978622445 693722917 402035426 91519475 148236802 363820641 25822983 687006977 87822809 589453305 43600145 998792152 738370040 466475417 151500472 93468113 756225785 227562524 416291657 727294523 472517819 778025457 607985413 676687517 63680892 387202943 401931529 888350080 991488235 120553354 212542139 561148431 260802925 907891249 275666682 791182134 139141504 776226046 303129906 685699607 96209915 649292563 102345617 256478966 62821263 773895538 102394813 926052953 858244898 873504786 357510106 139938972 531537520 811202701 175096788 236288771 498405010 800334696 969309021 604231149 716494285 833642979 575565244 227093974 751405447 732218798 872109132 397646751 502484041 283743317 930438159 569214334 683613576 635461640 752357493 738291055 501025040 103479106 958103808 343273958 424671283 879727931 257843595 304730122 610218314 553430191 252813122 911745079 151821584 25745784 556490148 441208851 381811492 533586542 90106200 411618304 78777374 482647374 333402055 401059501 912494669 915990162 696267223 105035430 354716537 4332655 11316349 950962612 908078904 551000309 866968494 653348830 849563950 775581060 466859380 528639254 830501983 118985116 874146304 982633477 981956354 896657768 184745908 653528882 247292431 136521118 924214020 756212792 687914438 966023752 680137478 38881617 433999766 697206939 403723376 521396033 458752102 82734059 434016258 435909546 678248609 225426798 348059182 876921002 157782321 149856764 152383072 399569014 236728192 74124221 801123700 77060042 630259573 599076733 710212880 30555483 244786150 263744943 353955558 538230226 193152293 118036366 348413328 831262370 497525449 552035946 622034122 118607754 748106125 788255621 323292536 744771412 101059536 768423404 260440044 970940231 14950824 116861767 763421280 380315052 294907063 942926596 558093438 433164084 20533993 323791442 238055886 224778640 173351884 116258723 549862912 67723964 778017930 158355109 351430490 154589886 697105506 121805233 725590474 688526360 66474996 842479481 121873106 769693596 380248443 553418136 34475690 428943571 417973942 431947764 197704900 916790090 953964542 374747853 585365890 803122988 290275167 778934769 110053291 224915653 205659840 460354450 69763464 862625251 685271114 992816285 27588159 952989202 971037950 326750284 595231001 446254804 319068100 749804328 592893064 428904007 641656078 88102657 384623405 247986578 780398412 637415131 447787307 302304814 712491979 940339638 415537728 730302801 454067178 460399906 304754270 933767733 400151116 563418179 669542113 900699495 459099450 483190854 360465088 689913946 24534276 808796601 21949488 352450103 802561492 316119750 566816983 530747615 951710150 207555285 83052774 419338496 211761689 887768428 293257566 385154715 92383858 122003840 779603847 227931693 108948393 399950233 704150775 880640142 556899878 177226471 351864770 748673426 700550108 451490819 532810073 223339593 150992817 502900744 659681096 117434760 575535843 219232389 269036632 318025031 426894236 472975614 537481498 112135832 697766580 508522490 925183252 551391906 639085887 556000249 581075245 494838534 308343573 561933247 761191726 677889980 247704963 373347687 959350851 742900139 848378902 719054673 421568863 544376870 563916385 719913014 145979542 516557894 900862788 556752275 772566349 978279622 243268730 668835283 405610777 313530469 975365915 879422326 447658822 374516215 907050046 286644524 223102475 933370490 791165773 732922882 994283888 20574578 3597846 196287894 129070401 378859061 817234671 979236903 200876680 202358707 641586682 217585475 527082729 506597232 114195027 33179044 434090449 516579372 491863111 910555661 58657025 316485476 216192709 98240414 362816850 991422405 871089513 31474691 841933906 398793229 364056335 677580802 730341515 371147282 449904426 938081403 194734758 550459109 176772311 857405723 726091845 434084442 418287253 61880290 763551346 474132759 200552716 736354240 97655439 82127774 308518107 660289050 884083807 907095503 329429094 531993403 384822878 110571320 120065347 404538853 111653953 890660075 2393668 714382782 241059729 365200688 55327119 350453923 244570334 999667741 369107038 551925801 15620325 432185879 855745958 167498507 658641512 992814226 100130373 336129771 986114474 560696225 679853854 126743863 955449841 731742483 568068285 12283060 740854041 87216913 999984917 823544836 242402026 910875892 464647299 693355193 191322767 529689724 599379366 794657195 576942514 49557204 203982628 679670808 266456365 775260943 995689638 824147275 985686587 375969807 749822957 713612052 549427125 504345235 931460837 188169593 532263424 598046303 439638580 253089676 280626729 702540103 768922552 391785604 696333380 253919535 178617612 87983952 387489559 155834122 499483575 148366609 476302311 327349999 824334365 353322879 709604025 230208627 668054165 145459921 95308436 42661377 446253700 736800121 282836147 53738296 443149491 254744194 794041459 820210572 982467242 559633904 387058518 345332089 973417600 135671216 919762702 898753980 426136125 362823800 455289322 291006387 762641904 977212482 104519341 676400038 294668617 968788897 718223691 703612550 117702259 945143659 217855103 923476069 632477070 673837541 629122435 690514579 807542932 408172726 194173410 189880223 412872205 21257269 509694892 544013276 859920476 974982064 478122817 289881398 65111726 584247928 828232117 900811772 859228938 619827302 437107310 933113311 661252157 605219896 489822057 108950092 574837193 390136369 433996727 908605151 342344999 395646281 405466917 126971003 174501507 847728313 971660246 922349123 827587066 309556525 414900086 661933580 188216805 584457509 211830230 494841144 14038610 994042163 622442918 180384382 178624984 491880063 84545740 780486951 435163793 775020566 187840987 380748330 452367242 330059487 755214852 832959757 808717544 621899490 313719905 263015060 525592121 257448260 968198109 960121959 42977389 445964916 784332755 279549506 886729406 73767843 971327797 279185543 82464607 983545132 677945406 50485445 715483798 858376302 835845904 94476429 253931709 459653106 461746519 864010031 960342576 322709402 326980236 70678046 216760830 626866186 440591489 701878852 396835261 760468576 253192528 826361120 980039544 14215756 867909608 288627937 53236428 16893329 838381341 807690992 299882310 6687737 453961884 892865504 103440155 743194349 663868342 220325889 210569470 765160371 960608823 345761843 558738721 678912578 815754545 610178668 348150213 122703123 450578963 568838340 190812600 875874902 322125264 964802345 763065230 968669810 837685803 842500151 200701894 409690879 757376454 932732950 445512602 877068670 105695569 502119122 737150531 821586669 532715679 980378048 355558274 728306535 605335841 657818595 225719914 221645105 270038266 31992321 983927102 851875467 512072265 388602306 411679876 771062100 50394259 256342196 268360783 315123728 694864598 763656998 612000710 274756143 251477003 140835146 197577748 145041366 255737523 163463891 949153661 592682109 93869468 487980123 692151947 986277965 561611170 574456873 994086500 438419605 825467443 888572468 676359510 926495944 898825115 164137536 420705529 922983895 919353180 674292223 178605861 757061625 510763574 617255070 244829488 585926276 429986093 614763957 33811711 777107663 323473150 821870231 792528196 336565140 856691812 973395387 630552224 716862407 699897160 237602379 864306983 925239065 453305904 239601174 923457538 706111360 47254120 723629132 791058512 922344547 51127172 966597218 746710338 408324264 198035679 854760615 966331062 445156660 702265043 591417606 270805979 804475842 24676038 500013387 758615716 819503519 789379898 738335731 3627225 467181465 494342810 606247171 2159084 301556761 638593709 481461301 51773149 891398258 905843857 180703707 713518807 931518902 938500913 970514787 154260940 834762300 211344348 585002029 279657782 230629181 271621849 482948327 520910978 95720689 935454861 344104354 780063169 14842384 617706157 323667219 364888181 752599215 741629910 76887882 754641385 415196753 696678793 620490720 226520153 230464849 772534140 252255368 187175054 845346805 708079775 975764518 210628417 452926868 570798741 834408329 131319993 912795853 734899413 38674262 771155749 848122555 781237914 683726910 247465551 384361040 935373461 86067057 62238004 289185942 454078021 217788891 604527206 961234248 226064075 418119280 140375570 880249745 707107773 236444574 301698074 949547471 122412973 101179013 404427388 211874612 637274368 233451378 328026216 931114848 581942656 230100266 421146692 217445899 434642134 454826648 953711049 33173856 109688434 485482287 626078568 519979884 825691521 425723991 341705256 53760106 559203657 719533501 172671268 847324172 628670883 568841591 599126828 189324508 837273622 443764911 449449717 981304951 983135819 628229509 400649202 210713065 709023981 272238383 694663534 939191784 113646418 127387308 498912574 480588832 226947098 629665406 855868558 368212963 975141596 209107153 868282588 532396673 601843979 911894096 709623856 351388671 390637013 424831785 363194231 212393938 810077149 168876004 871337517 681439006 685838508 359495052 171405102 936461011 275720492 844310212 12665655 595045937 474656743 10387243 292283836 741718867 16271721 808687078 993347387 830098481 3840376 521044935 865997265 190726879 214779131 937041494 581130289 136486922 786301124 436386409 656362522 786344532 759963516 422442319 835177154 306670505 699391940 702628700 284131043 758019849 66770215 381020437 385913070 433650780 279824726 361542618 563323203 754696513 121795805 366731259 270950741 31008736 280143056 586928849 411497169 606996261 736364935 175114603 748681278 348714235 120861334 180767902 161216296 477947973 298534040 860125858 495639196 13263709 481941724 288585143 831899164 852193059 925961935 849133841 984351358 393862942 938136216 242980052 924242926 10241370 699368948 314555533 838682512 259647897 125665403 326128987 46953107 373561805 292297040 408663461 601076904 81443193 176842099 506515939 142127018 942579067 867569533 375892383 7047526 230782270 790039312 178887433 494506890 836459236 332530464 799271388 274294891 43378779 103383038 637440609 234140670 632884242 601027038 348930313 478214198 749178988 931041303 141257960 181893867 437887712 428670984 311874027 953080520 100927866 505704089 190108187 916738301 438066447 864015958 729707999 629337964 498059516 805640568 623912463 490718258 643058587 993649268 556303089 696631028 421163207 135005282 428852461 74783629 704737776 127559550 302115351 419227991 626195210 460370205 965297751 699436433 750467604 241147873 213367585 305633029 150630632 446189909 278893219 642367990 447551972 441410091 89119880 800630030 240882198 381097339 206803199 126084387 652722899 400670588 733756843 173967721 905737040 193308123 38762545 543764592 155069320 470860329 676667415 378009578 723862215 41751114 463981299 204153618 178689674 210839466 189627169 56061566 376537189 400370691 468259440 944136270 780547171 801458865 921020876 938293200 156387625 806146294 184727297 757720503 411206637 162961600 427334807 525121588 11105651 53789658 796345642 298151564 717961971 688667692 683131931 784724847 941329481 810115223 927402705 121706041 996938715 256383704 434179612 777984044 473626514 47561059 867054818 894561718 714027758 922205272 311165316 406704779 811124891 290837926 930668218 945020429 948717858 379310791 610809209 662944290 519510462 897149214 842879704 468863911 135773168 558408412 919858442 18327323 282935030 588929672 735535052 374919622 329586106 645733956 292935199 507507558 933511606 913129244 942435516 480971782 439011821 478189551 187782394 124239581 336407185 980981807 18324312 171480500 727816045 744775899 479524208 78808017 261320669 518241362 790112268 670711160 498892958 532590142 582981274 805514595 814293785 413008953 736802955 677069753 367570260 131492814 570541765 285287292 616679631 290672257 912180754 202547483 326281847 456885078 287164849 668607217 119500402 143988767 219084823 360259961 542166978 839633155 622699426 283134696 646162195 888832194 373925795 703939582 130664596 864970223 168813453 456600630 295455476 509180569 362538752 555356509 302135620 910564757 897251407 773700480 727039416 505076071 580998014 475342522 230493461 354575567 397718084 132581619 807530410 395473980 312532380 677710703 856792186 193183549 323946744 121409952 590119913 44609590 599154818 514841349 409110290 596625131 25631375 78059302 729873365 225893524 812660830 906947122 183959642 247244794 194082262 652022479 693289851 912057379 250181997 543704118 725471897 943508794 972269947 203936157 989106893 384408520 314773273 966839559 322389213 116591237 641674341 230382284 158195602 168384486 978207646 937515682 239969208 726806929 221299457 534767129 159747532 783808901 87956597 36585495 331809789 818354533 272068332 667209860 658096842 492418618 682174666 866040152 88020225 254430421 278694130 958113739 151441967 377582145 415054946 823071320 65605478 248235270 403687479 505714779 610477127 978487815 176132862 52387655 353395647 642618645 223833168 214805608 831319981 996067362 973888049 7127196 827563352 868246678 687551265 245080770 30137934 709343524 949485081 847526314 466801248 826656997 915993293 993211188 104150180 573558245 770809908 190733090 723036899 525878446 401915918 752350540 612617397 934075860 301369976 505978968 682089670 620206276 907438493 601015575 775984783 786718029 938674014 687033187 23919375 916837287 291242144 579575162 771959673 275898100 40155010 315638730 645787243 819498332 926699066 899240903 984529305 835461051 144867971 325974482 364368944 635432825 149847609 25276214 229834118 837587771 191856860 243146856 955932084 97469978 873140832 262433515 687569905 845894745 635956746 835827304 787685605 758483272 541825250 185810296 410346780 783821584 489697298 221810485 154357634 217637950 696506404 810046657 604578920 638818716 667156720 675188383 370746105 292597862 268988604 534902833 38628250 316246925 110721709 646772278 282490178 98677558 977652125 753007619 320108865 710537953 261644386 870258986 330944428 910454870 981602247 195303579 388062933 411517796 109923340 595923474 79568922 967111630 451575176 400889598 642668163 73043616 294149744 802380082 614370021 344415627 621915616 206288945 328830292 451718778 549901355 874088164 668134604 479359397 663073140 573275555 617276726 82004006 608607213 729522922 642972038 950467026 63288300 948778491 1301628 810536814 559698544 336927749 462318376 747950442 700283369 822785584 7316674 522729673 770623999 492115709 782898108 970175697 91061073 483928316 459012623 817367244 187068359 599984244 334140678 402000819 969373724 369408232 693162673 553931158 105418885 278512272 937930424 893800111 111146235 574811680 298058989 637067084 346408922 754801423 408727981 669152746 114819681 393625433 515634948 395604580 209939007 76079958 106706347 309468983 435805324 493561882 790179594 85860702 973792959 848229112 648143001 804596322 15999393 129542650 719516417 269260220 830710916 297805138 4965470 970967366 597458854 544590391 23207369 746772849 119576655 455279492 538014240 252806981 883765159 885045745 524665184 955057667 35257725 309830131 120481555 573421683 373820080 91653319 57071507 145197335 42446487 877880311 395345300 886261917 264884643 96885609 878975911 356006663 430344414 855420608 78814102 213091641 681410206 136910720 25989478 308781894 257655875 40689214 308880729 363409551 995474314 177705050 167660390 492600058 700060224 800982783 745433284 505169928 823620546 818456159 214872355 964913438 34761828 196648221 559857202 416804508 889875280 704276336 794308929 1008264 430892920 912294658 158208429 201758294 40096398 635633120 949331630 917745864 69144718 241772526 655245357 826648773 566372650 537463129 6858510 421048929 198357967 895823514 32605856 347167319 56974487 499661726 446128419 492988884 478468065 119067724 209838810 324417969 323452554 172444421 648903116 507858302 278238427 961554990 701710362 696260143 887486524 310150517 226249763 373234128 856841166 488746332 331189053 903156451 1487063 312207990 420432173 425892259 126098308 373253001 35572568 49855110 405772905 28549211 605009507 70546495 9694615 402432509 666108285 30032688 87620996 944311611 288333521 534413622 173166885 652519736 436924585 604552096 934919782 995971368 469629300 687574907 246645321 425411497 118388278 71670605 718465266 159031268 231964249 944700626 918982128 820133944 376196704 636981003 11050239 737679084 537359909 366524771 244675314 471467871 740213945 278967121 229397544 512744454 271445601 377789522 285090993 361296643 892860086 296651595 170159917 43356170 368697595 2995185 754226476 908711502 330225458 751731992 771628368 871773408 873541696 35805020 541183775 722585001 861593664 520228834 642554213 947320317 345195071 605924240 713517416 790278869 991179868 173963710 105755984 818293006 929879942 672550303 740582544 117762124 770798245 741123575 280725476 28932904 584086739 150929043 560789644 206531326 381097413 743892202 861571486 556549242 132797401 77729424 727113170 829085558 567663068 298161425 659523531 1741795 143189495 826584925 886607637 597177526 13224838 453363582 530948142 563872352 924765236 90599582 391809966 64611814 39771552 523953042 225532702 413252625 118540536 37238567 802405539 718646136 573336339 923258038 797283458 945955106 437770759 147821402 809785126 682226025 71481623 519370730 538460742 156113511 682327234 79909730 744358439 504369658 916466695 346366606 251658238 264446040 977627795 12629121 139474798 339202892 744609127 987128499 32137813 747750681 594304487 638487587 892600394 331169441 348832460 900281141 480145186 405151046 296064110 662014891 531393806 190168793 943435182 126383297 351571122 154770739 129586451 372644462 998530483 624976950 563362022 176591495 678100634 987818056 807829284 272565329 705350072 550611119 73460172 801166567 281747814 504549422 914717358 57514624 167482914 938960246 610655835 710406110 875422341 485492618 774031142 85828615 617783429 167190099 849156866 435181151 373425277 812615230 743511626 221924449 766740011 422343697 611856614 805435370 754004972 455850264 496421597 479191138 881169051 729890760 669578599 1076577 278490061 866293781 875078569 203605296 80951378 245333110 980480102 235643450 545192647 762943713 911599695 569068929 866952220 446310727 272502139 558401721 811313987 206962927 368272562 202113748 710421816 43169022 970366193 149256967 789478640 887321346 491583968 869889212 161953562 633298940 75156800 480701911 990010814 298501357 469177073 740545985 119663813 127005061 19397128 479352604 613011290 939140882 926360705 643993934 102159912 640112987 955481999 612564966 305573853 750011113 456681259 818153569 702747227 248501966 176841468 809757860 88955576 602565701 669466781 316745074 872528749 582247887 24062445 831785926 770466402 889223094 815260866 70335029 896489423 121652040 854894472 981364373 405943719 493635079 238415591 959336577 140740228 966314976 384068898 301025115 444365965 953418357 33200986 404589667 2263099 49729678 607562155 340302319 775699303 742724257 559080801 365318664 606059427 611636966 716687009 402781921 806274318 318780399 343734543 625439086 211414944 915224365 930557607 589489026 557290890 201207367 431172882 776802037 729145799 856021100 554502450 767551461 348267656 988566883 249289321 932554778 679071696 109683612 381758129 199564683 127939451 398278938 318820658 803644136 227628244 673189752 229432573 925326902 710751466 322584981 789707646 165056800 702882797 848682129 932721281 531720062 133255676 847793928 238057356 116888892 124007415 906996137 750486814 105599080 935300332 609533767 261072783 605407313 448801822 857766125 806690217 819424555 878853421 153091275 20865074 889514960 424653106 204056092 290111760 226005646 263515994 323111352 178134067 385415821 432355848 540442138 940796285 512511859 723242360 175103221 367700356 167394235 48395696 193581681 987753881 966514690 103631597 241029021 206819723 871109824 371501900 514507051 846584195 68409585 352646013 269015549 884069014 324196783 468003846 614359344 844731113 521498944 232492093 279733270 315037685 898574035 366589263 606009825 584992240 655477830 605371079 567197053 135548813 530732406 804443942 848675370 387337496 65564062 230276570 842895521 427524863 352632298 918857591 580717559 568907728 450150433 706392061 432343799 395592253 707554731 202288409 995350067 772478972 644274131 737291616 706190453 12650542 160201490 879400423 616998849 46705066 131591792 460687246 472227632 669290403 882179349 131701307 94011388 334603085 957507425 266362811 705419866 741789698 622044778 66327450 758023710 236801140 564201873 584846467 198189335 731779913 784551836 734131435 680138069 269026338 783596120 629270288 87561579 317658101 106127 363486009 739268637 770507949 12205165 203910693 717711405 772072241 698704686 937282110 253880723 130188385 179708366 138269783 97980025 553058686 367147551 395201832 84361051 756979194 763126004 160062750 317451370 727500458 400892258 520721421 519117696 856482194 438886283 735391615 909604145 557002947 907185030 322424490 139335618 197982044 586681856 817581146 543202873 513200202 290996639 770332757 847956709 35630022 448824155 58038896 881303673 941472889 359578998 911298044 746661854 288976733 927236360 755422026 561664483 15581539 708824913 419682738 129805509 874554954 766136842 191842943 824840440 962684035 612969020 961980505 807487691 164025726 393128819 950508245 42546584 863869965 934051983 33725144 168593534 841694520 630089788 275717196 816886558 362809428 393520674 442419653 598520461 374320977 71886956 447491831 811171580 688872373 672035552 956997916 446068431 65841240 965191476 434164082 546053773 751867063 264514209 980520807 868410852 663141491 91642615 869066907 331621632 405388639 876291121 52672610 146688991 311573934 699985800 557425692 939709875 164583284 300812406 431578365 51941730 814529922 475285051 549487625 890122561 354718379 537410430 241591453 334102501 903226490 321823319 897270465 623133031 424783984 115712496 907295312 861314354 848054640 986622619 221880837 573968152 668404345 658133279 788295549 968001913 283245029 852994766 750048351 346920677 482320965 986828976 836008942 701678412 565868740 290271112 484151094 5056284 588068751 589369547 333323105 168914283 556275070 159250184 507136379 637662370 207368966 228137667 268000649 294852848 191594073 69480230 975064831 900554444 695539902 213417716 357690123 333815018 719325444 605569352 291465041 163171335 534523395 915884187 563014409 726150663 804033639 638082196 338248555 458894752 301481965 832971880 460095617 794633675 515236151 722094914 55021302 783410372 660074453 237857712 237780302 995935520 445267725 272985394 387694172 619332760 213155496 423661173 529391916 749739682 362163224 611596714 855576582 634230383 415255487 59997046 471885839 724180067 862126008 42413810 253551990 693453878 540815177 679942105 205050527 276960131 923969516 579640727 729037893 223824738 493049040 739646669 119397809 529475141 267608756 29069560 602054637 871797548 893069570 216097487 660548162 728251220 568483020 877861545 667446039 907096684 736844733 920957591 840820512 529783174 133176350 382755395 395352565 903672127 65820364 250885053 143297014 213453293 953013142 887472298 840055151 717996909 466217469 958321723 998331939 531501457 332690158 560079596 71781423 960649955 762154562 325675608 80419403 794457621 805299792 292797962 277300199 573055741 785987121 878578958 503135460 188046773 913669315 83255154 4268237 833883655 695872791 481891730 382337000 896479039 309452687 986833239 136579574 228201126 772849223 443347372 90950839 934034892 778081279 852311024 218639815 851079051 391134019 905987061 520310880 699152159 850596649 597207150 252714710 933006568 577022031 306459166 678795593 139603292 787591399 539821276 355808243 68486509 141967786 467305899 814402781 924284842 141148880 630302120 622473631 712218873 436848018 393851049 169140973 337545512 716955972 569168965 782816935 693988620 712700694 661020292 187739582 381120373 405781995 336804993 488043142 907944193 723129082 949067173 976378589 623208449 955349538 329904043 631273741 366832534 496738133 243345347 898260063 32945232 336364315 327897313 587680665 852697024 82491272 390171147 339829256 929267848 610856142 384938424 208096061 33765450 652009165 791330019 151632745 109504988 261036468 277845414 802038075 278777014 975741270 546603623 497720653 407026188 776393652 93741998 664694307 909830111 533162725 445761975 448325472 396773418 838408505 80420721 952179275 291701071 352388177 687438615 279847009 814520737 905827666 628060270 782969695 636567673 635374086 389351315 321442609 756319107 20046186 165712283 202538751 523864350 746876319 171044941 797049237 801043598 158123306 321870475 811070286 295166681 307874458 864469428 475733955 507877241 304575122 45325940 144994477 462379651 349027441 155588822 622091209 70128711 764932476 95757591 178516700 31736162 8891712 279296772 836504637 220695636 382776585 46286368 904124600 593498510 363656863 58126841 470340147 986701859 676218574 823004870 523471288 279007452 558203751 90073772 420317268 951308598 583746946 943385668 172902070 907297765 582347221 94541264 90697256 117137759 101767532 676979058 999951690 719788258 735662082 695606899 845491855 175764518 641747280 468568961 326690661 641842111 259659519 437203441 766897694 207713078 942642244 362905412 984154428 42494182 730524616 637533144 946349453 879236526 870749675 188755274 405301842 15934673 87205149 826762476 871848930 991433352 495992180 708896733 980324469 611197592 87971763 867366174 834746074 700529240 762521233 40652683 79248947 355063416 347836379 778474720 442806246 712001372 792193419 864873154 405443052 859976352 999777687 559828793 457260423 825651615 755507011 160688394 431803470 323722229 466865516 948561034 783532072 690039314 263851835 547540116 558997587 609877970 739816162 739587588 26089376 612939211 814656436 586854814 218475008 346614511 562320187 746866230 215935702 998437976 976075532 226703626 163535869 645794651 829865485 776516513 55108636 276901876 871897762 250180039 116074383 631292752 454210220 439090024 186356033 241514470 474989656 716090906 702979651 520254491 566529494 835433506 582911285 860377957 898672877 694530533 839864238 715701456 671144261 603243007 856124774 379665996 974222227 660333038 925403418 833221926 195967024 35341104 303032854 804128275 226830560 171271182 473596334 79354243 240112469 335005154 618266733 239267777 866611704 953252353 720804232 242438825 361987843 868648444 181463277 65949928 116859544 702001085 349531992 229586494 619326414 513224650 158025243 476736127 282932871 416741004 9812299 647819863 862279411 579997240 780020578 787589231 510350234 332303393 623308850 863696322 961236077 238187491 915489545 503498914 827343643 644314357 693640480 912799451 800813758 886182694 640304533 691708181 298261484 126352562 274355941 883355667 147451861 20813390 823145948 892809060 751857652 847409938 340179410 211453489 504556555 371197464 359471235 409473180 315290821 585735231 946586181 651943499 13780343 157787361 670133370 638471485 288009993 103929109 756043922 427550844 764918553 453348481 367745055 664943382 989582014 37422024 99362023 955120254 719839474 320635443 475132746 20056363 825084608 793880639 263910497 983155952 785391175 656028033 275974018 339217456 862219024 125671605 501028484 986973483 991783040 142988132 91643716 820936480 857256030 30403411 989185505 738831091 88409208 922237193 378645634 301456313 86678408 253193218 852487746 830729258 191648490 275568089 314898949 814198100 404042036 248994113 975359099 361461812 628759098 783788778 886663464 500727179 162851868 854917775 321610643 488438332 147054789 887436113 95331864 554435547 713162711 256596636 66108059 197489468 983903972 495515604 489846734 763597205 473463202 325882192 997496542 908503265 514120733 282185652 859056377 432783892 985813088 382991273 90059809 307048312 901268375 968734375 618582788 769284925 39165980 697808773 270017460 622275244 42393829 540868095 881313011 634186778 161828696 265575279 57293988 899486080 377727105 689222137 565230883 588033968 519952583 890651283 745737883 871222398 820476310 555391320 75903372 623279657 352623757 640870720 532638710 779978408 587759882 744926357 274194892 107423564 900247446 449273284 536127029 681407177 378268680 657317922 173826454 692389929 979307757 638653032 740805325 193446780 32160793 844225183 998961302 637562905 265330737 642633505 646808381 116113263 523019715 5934368 10194069 555762108 195883601 103949861 913894355 246771423 385115177 575849917 787964491 595852069 843456502 636957416 591334733 67444680 436511289 763772813 553896166 351579223 698741038 749954850 746991436 809322917 415914208 135529130 515285817 616217496 366944002 963379118 886753757 172249569 176086260 85164815 299665725 369421218 175324272 508171302 865477667 541012515 284304531 663502763 835261342 944116527 954118118 861475815 808489904 636639792 806398737 872894529 568378466 869143735 5498935 12127081 492082242 70025686 281589841 285371167 266134397 258985367 533304524 418331341 545757336 135489210 583358475 945725356 754352468 114737551 109454926 7579750 492275574 299579821 621846445 932514888 582113763 256661516 960315390 741080351 937428475 923168364 789241106 676965736 156289621 146760373 417674544 459821673 238785433 650193513 68937944 76904745 569630524 639579535 502748318 10926634 772857752 189726410 329000989 462954600 48386166 870718898 356477501 409169527 755816276 656470750 711479165 952826693 226814944 955396089 515580628 848377924 585824037 165341811 68380663 702944533 885164330 491428258 930722089 450276053 927166820 912805060 837665693 203916975 764517126 959921390 196522334 197467066 728576110 834311896 994338004 723465608 339752741 976685398 718401542 857291482 373521890 372192101 166781810 617123973 351838708 376195520 954701268 448360506 309204448 638197118 162778643 720879935 650770202 643612511 533844525 933426564 513051259 319314990 187000695 515173081 520428463 228501457 726007513 893954977 842708940 980583452 711961627 609442922 743679569 581609451 334319305 954305761 645436474 871966079 508514595 302207292 331799053 831810714 262254875 81033454 333910978 409641989 893882644 734817802 3535085 277424218 236221621 14211921 325803333 280077598 451365201 507172420 600410458 235781275 418863419 663804439 103829025 821251874 261429843 431095873 670890137 805406403 133822914 800997897 707976759 214763810 286626183 543055134 959544368 492726200 681065767 724747339 51524775 974614818 397568982 254875253 279555961 895785785 402959897 476254964 648755461 558863921 60461324 706794806 375564803 336411061 672408018 814426834 215018987 564976875 804659588 944700275 317191100 297498540 658117004 231365599 732498253 72056597 428019521 524059462 291699481 96677810 151474022 908465602 166225627 779303640 746352875 853116072 698389592 625266188 870490111 867933106 273351821 840216136 470284110 495917934 631118869 682926825 10028902 104962472 588482052 625180557 589135396 442359413 446966104 650280087 629972663 482048873 238118946 133047047 860338611 845871152 538728539 508186743 457165962 513749174 800631603 767995862 218571237 67397076 336631774 434046578 760204335 997269025 601958068 563856899 71172283 985498390 856553017 486436089 648990888 380097268 208963930 706756744 818991554 54233194 557447923 92177389 453569671 378683281 970294663 848802233 556817522 813147243 114017338 141689336 624083060 469501155 439675688 821016039 689184834 120275553 952797761 786175487 186103123 990830577 249668760 973326442 539506609 705558850 5026947 95695901 441946065 194580861 241062402 359459011 614144605 26401814 818687868 648863108 754956189 665145328 453392682 906241693 241645652 50860439 353414149 837761436 614482342 614230875 945146697 554950302 543046806 344309610 536197688 305910979 781879023 804239129 994512801 328579902 370305603 857922727 960969008 794766963 255780718 714746190 247430280 362556382 449159039 196682126 949167501 293101221 796396038 612351280 948834175 342081811 628018098 123153311 640270516 968846410 422809524 733058922 65578195 24089730 830274582 994998097 334276982 248339016 964914572 369394886 879947525 932702006 361446840 649572371 524602050 392699628 403024016 765026674 179048389 72487322 723369618 312778697 808856567 851553420 156727123 421818013 331280021 181406968 996464588 584807152 360650884 799757432 795489231 331719424 198995939 435515811 98399374 700703645 448003717 165587404 666019830 96907676 621600613 449782534 645311719 316327270 751560613 565905439 561350904 571044122 426062382 596263907 645655663 873524083 400207563 241821637 275997741 513686497 69101594 647612051 664266345 58924441 918044964 753907748 842256261 185602196 830072537 46518553 571328675 830842656 682803659 719945100 595903604 807216863 731322891 688499498 110457598 377007113 626694577 731850160 355977740 456477435 388650590 223508456 196455242 799930521 599730245 829316074 408234808 436243391 257172081 39969571 99068484 109132928 584537257 250210983 43682075 715642152 165071990 809468060 265798775 976019402 355860662 206190231 561530823 908425765 508421154 92624427 121962640 713346847 469838657 33247598 973291529 578882194 354764281 347752017 645467841 468627705 355229402 26022987 783290526 434425944 172873629 456443508 238602544 623026120 951045025 761771024 883824555 562254590 133123205 882709833 713770323 974884042 804344177 825592789 343383728 806209649 261887084 818529547 338056332 697583641 422122612 173153990 401033505 995830795 182690739 773870712 637038937 747297981 57652240 721763314 34072300 144545383 292684474 634970040 373781198 197541732 421495065 228722289 630879757 255586660 909894702 823764409 703967628 860101393 394655293 689219060 745700632 944089777 959366526 921171700 497258881 843357807 482638306 271613927 955820619 959416466 189127855 675152222 229400080 487016982 923054215 560942022 892669311 798479591 807891376 626234785 475993768 719170757 349233836 860047573 68966889 267469100 408093634 260835224 655734045 180197759 124452507 156159787 896451029 683902426 317238951 270059604 952100357 346179417 963257487 343888844 44207860 209656657 4576185 646423861 953178491 343221229 663889823 129316457 682815236 124421117 628849559 185840952 104346867 531118421 110500050 370533647 919154030 167610834 544493730 625695043 448504544 105897440 741513695 359479483 562323128 393759289 616664900 509968102 816261766 384713937 938395076 751990727 406241703 605554844 28172233 855499375 953886918 331971767 676662923 990453918 668308825 453002029 293298251 800786290 513549617 805372653 665710839 501839491 475781244 888653668 1376347 835370277 998230628 150808743 731663492 395008161 597995418 662320862 254993348 259674885 490010336 960618333 760540271 773092354 638334540 468427105 243626354 291281191 536922905 113445067 297815516 416814850 919337856 440520578 919709217 532494236 324010891 168155236 722555891 99086864 779668627 458810880 704605723 593443667 751929662 116114070 502735320 923482231 525686721 945574546 369305545 194444370 274673236 174238591 184913845 921956271 327414777 919987261 130836163 354668675 751266556 691132818 403664514 590105571 435342548 114856012 465384919 426719512 439559813 330427884 913215750 229301582 534920437 510793402 175021950 195147909 19361649 38566995 62336817 731364745 548087301 546808649 48894414 141307606 492202424 250700340 955625650 536776006 947393709 13829941 286384036 120305557 460878606 614694598 919311579 896865463 514598374 545018328 906008219 443782792 788802737 935470546 578888258 178078479 320826231 304912381 655523723 596487915 102967273 556229251 99576606 418723441 576677439 660902342 897389144 401072214 966450454 887850947 493238699 863035944 509398054 403807830 242852829 602478012 365817358 414850952 305285120 362687820 303425669 390711591 996228043 823929707 878891807 4594287 434810190 624345163 525570338 68514309 957982589 330369240 746375652 250884523 54295487 478799853 126787487 87503898 499078567 271604311 604298456 188694084 966670412 531187174 154619612 610765244 79208460 217170164 910869097 990820493 171166076 588257572 531000830 984076247 305807247 321694991 332841077 816589451 51874707 622844307 288185959 81123137 511704062 871570750 797894647 667534906 450771939 655810898 449190152 357582776 687003318 390645550 549800171 836860990 421795811 656795177 17063778 244580927 82717054 110152473 649707292 472973054 839845362 260724117 887546036 748027102 739199955 573244018 432545964 789247432 845331418 266600975 437579544 757725372 66642431 314135767 24539934 229441879 649471496 170800325 528188918 752592198 171035510 705320126 920213357 934336125 890700127 66903245 924075922 383289674 979766123 745049549 829027539 72651783 129030790 985536171 913771839 266005311 182330443 940077163 282750465 274313137 782135877 809451688 718612462 423667913 789903198 656601964 11932472 447785592 575735112 525333523 99163166 395408228 649839455 465124027 361965228 724728928 894870183 743091840 789536146 47798366 124321427 988183113 912106953 979997728 217707443 974874760 973889866 352262662 644204792 248368396 728798483 292203023 723431550 689494177 947865011 830067707 959829917 619211989 796617941 471952208 433766012 809145486 679068992 621695133 365700939 110969845 456388371 424644791 755379502 772274830 903751408 677542625 189767387 816115140 451502471 859967001 275629303 620338877 413151493 973517232 278905941 977136689 792786871 974810957 123670292 240117848 779429253 604120698 440128312 19130965 561909020 533479085 637073722 650083053 426690488 514091699 697751296 545649873 823399781 416635083 487594248 984154019 724446846 311463077 65665209 307017180 426300414 544257583 489143471 559651082 576069473 371787970 736713962 772965220 406012441 884165020 453877196 460332724 700201513 46968495 50557374 166835155 859943044 581910312 776779787 144649618 185343274 406229446 704540071 20661360 375395760 409432063 549621295 647728768 523472913 169792650 58005435 144503500 79400939 47050447 483801410 911851499 939562803 681696363 983656071 698980107 830641951 829471618 500987690 514426291 75346503 514185131 287206038 487670691 466158475 456188481 77385134 80704570 3898139 167949482 332143972 437336900 452209489 675976722 48012086 588021348 288083704 928143883 819690391 462212058 931048574 513953981 464536412 921745440 592103249 57801040 579712792 823114860 418110612 947963592 911998927 3252835 615709523 287057157 82984643 696168313 425597058 196434317 36204086 77857218 739425521 439999774 872707204 121629474 431971848 691395814 575913376 150240057 2747021 319598010 956651435 765754972 30587423 952184548 617702099 592160323 649781590 588220498 915217405 627794299 442385029 992702652 437530442 227234167 70065012 308897508 655751581 287714021 787134443 591661453 189267279 289963760 127599920 886589894 727102164 404018380 697042110 754817643 37512461 681241819 468457232 724782518 167627401 503365386 47834005 242329539 119284273 807586883 64274018 441631453 612994565 162234599 799093164 434669653 412561931 526758783 161454496 569206341 746880917 215037215 871577189 903237914 650868651 481239735 254073891 864197030 945786982 901122700 741461539 722576238 704250488 254136579 599053304 209139706 789298927 507832066 452569853 740478250 962468935 316637354 165485074 8056650 739240959 636667576 634480777 552446353 113185624 556540924 600740295 635710563 77967458 796832952 606517948 489939303 105105186 900693201 691976235 814339690 295142549 82467080 233929781 935041865 571342015 48955525 2688079 695135057 229490538 912980072 158929224 755279661 670165869 943805635 90161241 240967687 96854680 854501383 512596013 609909713 35470529 33949451 208635477 531013490 489290385 362187604 57325130 479258009 519742429 869998432 717430666 476320436 476087299 260509037 528130645 480302262 860898179 819022947 41605571 253448510 529804006 636909343 921790436 895942415 882272726 969829062 142573444 203918302 463098770 863734280 249556996 710724809 398546873 872599270 268014216 416338685 890178623 954889299 493386111 583605032 161702310 153243620 919497526 926488408 480506969 468463232 181762168 73435706 7628323 478424259 809469461 654283874 867988804 290852688 721306225 996903986 160745120 422818455 290081927 318987476 374280493 366375973 671506850 605869637 782856489 448723806 985483601 628984081 704942078 412995384 986751503 599182354 25319476 498410617 658797665 656712567 919499000 507460402 115927796 16733224 420549012 779623698 390169861 539403940 176216956 308060039 239804307 223725088 201576803 777103728 807872022 353215393 480163678 848605148 151465471 217719435 746132082 446803201 161853944 457534380 469171390 692709072 333097397 440838045 107364368 799463627 15708591 468158963 562960655 230639622 435697692 570583141 965106217 533063004 724180752 356699286 844029668 340671815 792300546 552290710 68600984 462087029 696131202 358518743 509484754 676717667 214449784 283370169 749044364 806290745 835571859 901958582 271820157 405675692 914626400 34739211 591574106 47259339 972715634 266308229 948639573 8215905 33985438 354859500 157299196 72217304 582582273 136711956 785682218 859663501 781674900 313984374 22740077 120704643 382541494 463510060 677946106 463021320 576736063 85590680 453161237 517977557 776620227 666238132 295938331 991833520 259317479 689112178 323643138 730939841 893898309 315154680 181455446 599882754 783199195 840759052 680375088 335621084 241804650 230405330 637089758 899132531 217556019 944572852 544265782 549665046 432710708 775087146 184389909 466019104 774758999 961484735 135630529 23977309 474173459 125864468 761472902 161532052 417497403 768821479 550470828 780481593 739665279 296216702 650869158 890707942 295151528 236764590 559370530 669126522 74845264 869527126 516478754 288728711 64952343 30104172 184310709 274220006 848204753 988428155 376185866 145568575 902197606 362279349 114335449 531648658 970016143 586118094 188650558 100853045 843364361 937177846 505798516 929999349 20473923 524693403 574329881 673499168 372740149 135245621 98861862 939049133 367145723 304710457 603265975 796747347 506387182 561523443 74205798 22561802 725021941 324445511 138276461 838399711 776546174 687272207 388788878 302703874 43363640 706934078 197888908 788521073 722927475 730763932 962985831 107753580 550131059 958522157 246496047 254275634 536193497 176854856 273827207 87992643 775253698 989365354 145034062 600852439 434805148 220755366 432527487 198185823 108047373 154161707 799850084 578956737 40353221 612821947 621386105 644306192 23635928 945812310 765093286 520153517 131365004 811724482 570683693 605791335 130190210 346548810 662933267 368427536 753943713 420087220 631983479 27758974 396218542 5468665 749365953 951309366 808482153 201408345 780051847 387214100 191631002 983707636 141659359 72188729 807790042 705535894 890709081 383019205 58445510 922243710 718299591 118918886 319969200 230730169 408776764 104216919 979934655 824671953 918782727 580522332 925073106 679580762 394698469 973468464 90943443 126453783 703194307 578685493 222902460 994204216 316426061 948932211 679356133 410590357 661056652 35153301 920140960 324977985 585000346 740605919 612633115 703074982 502383013 296578977 587385822 697794297 552153280 9773372 308664586 128240706 328661459 957596384 840856773 820224426 953290121 29647906 485099857 417686504 222218935 328732164 149379638 167301751 76517236 821996932 972504550 289367614 253510301 547598765 556706761 720137500 157680358 729971586 455819566 624554585 831039873 388174214 239252401 638913508 303107997 280897166 691580899 881964409 223987662 359337814 655560686 187157138 44959714 311533967 404804301 819605929 741972155 82186769 48196640 615135355 547508720 900808320 964979587 346037697 936527460 120674813 726827346 262571098 100873723 528213 973755811 54813723 319640568 616818687 883563770 902963451 766788570 439469373 831757392 261585224 631600757 464108976 449480632 827132888 493326211 463102450 234317508 679390723 797047980 151033260 539472532 235167126 96417096 150597993 36168440 127414437 525527271 251882737 636156983 960790525 833461859 202161659 1468349 409887739 332985250 592657429 153863091 5546434 299246816 834806729 673768528 336939136 411321068 533590535 820724776 67019039 763201909 324112219 395059683 341680911 966966332 425345902 472493179 231692357 898741561 550654392 474757362 324743360 773251284 508163797 624947654 801524598 752517823 920401380 345120244 259982415 886610250 989553228 352300900 290954859 694050689 981207363 956877961 185053059 857042170 791736464 141892740 430462435 410490282 860053860 828670210 83198615 315941504 904339417 988415815 942430724 435762012 339383006 53498655 499255168 483322100 310978442 586812454 98037527 657431697 636762820 738944668 408472525 508768236 843190207 395641171 57601620 848911039 629526713 214137304 627801553 653128789 83810627 910373671 134503662 750385886 990065771 566446086 991959085 819918092 634407190 908450968 351048825 158558157 843385315 206778815 62896177 11268682 703415259 473105086 366747270 631042231 963464543 121710326 344531104 755457493 659389498 442088047 419119303 43526804 725890736 841756119 91849303 929153631 539883417 627293299 291911633 791486422 485736155 88617818 769720833 158620760 401173946 158706008 963883822 831134762 631114482 545174009 730147845 384456430 671035311 299610459 443595146 417655186 647041386 328056176 126025797 226485998 586464274 348213516 646594779 953698782 175515654 856647626 52254894 755727211 376042706 87936407 670398304 172678020 752973467 817298697 404574049 986063277 44603955 423951854 210820495 25960521 39321629 478512457 994653936 58696592 52179875 842289184 572167132 174540404 715035324 26085206 48012352 534672106 651167496 929000844 498178395 692293539 449528835 468633025 966211204 67387310 24203643 377568501 110562165 325216968 248700990 51828529 699813329 110038002 231317595 822670738 913646015 760085843 223764571 679360928 85718914 88211729 281233748 225226215 268402515 306105526 407221770 442813 351482530 170668228 464956024 266184716 506231544 505063707 389356162 159321761 512052626 136758019 58172128 109177433 291879425 767425699 18445218 244465993 350103583 220130469 281301405 932176814 222719339 241934050 139204048 503820161 369886939 875754994 831233745 718174657 469739259 350115209 817666465 790224243 461650546 796179990 115308094 955553691 11556559 488802724 959297474 573450986 202326299 442736815 491230145 374300199 202760100 450021492 992512451 769610429 302987355 781631192 112464129 543835833 689775476 920040141 911762221 106305387 163231373 852856733 34682318 715262744 628493948 813239675 325186760 9807383 737009232 431183803 736195048 10560362 656526487 257848783 462113990 584195883 236696429 107906533 720924110 181865341 675652928 268442007 418330391 235615613 886173953 480295832 215161996 796181713 781098883 353793701 189694525 297226441 711427931 708811011 829051274 717559166 919975586 390782730 631017802 658334850 388100049 806754858 553527179 69313654 896118817 152860030 344376951 470320 914437795 45569755 794370942 798400408 925703124 112667258 525713439 657843581 612573870 119498096 961834597 271976249 541337033 305258361 277158276 384270522 530409602 368591486 741840872 961990136 734821271 508302085 515384550 304714952 569609829 165094963 548361147 258544200 701499049 888259314 231685811 418448784 118331085 905911233 113441786 345580351 647214504 11350034 776889610 854146950 208970713 279502151 669942552 962813695 810416656 34185546 229054862 257658786 586882413 888114467 981465857 271463993 697205285 530051951 70537423 982530131 553828171 777786203 922437280 578777672 661140073 537458118 618870772 139073518 974907762 648084610 440143361 475181230 393628672 264185992 266840 869934471 447313707 280149417 633709660 853059522 940602623 949680798 545092802 268302982 196773281 481984000 614965012 164572285 375270806 774069035 153541736 121296492 185062556 957334076 682871079 671182879 428883765 184693732 162000531 747529614 927179527 564930674 812100241 718749941 531515377 562301778 421507863 502884374 852482082 758763195 806542016 117258402 915565617 841318962 483195899 267027642 224604396 412637607 800648694 678695487 619377998 143221266 614728426 801636786 464207139 967096191 362043453 761420842 26636582 690452695 657292591 158508592 650775772 764136119 549026618 978548886 644204806 619248811 727165946 675790266 508276762 753546070 990093227 50121828 117086990 286499667 500721261 584408305 871544834 376644115 688207522 886026170 696820170 591779061 593723627 799773053 250907741 210929075 296787721 488191394 919593103 561138987 235433155 717357488 38457749 321818534 969133579 379299906 155444880 257564379 465810356 568203846 959645761 293333627 282227266 852378824 747079465 306365161 621512514 979604658 42113919 723281131 450317193 683716548 15865017 947343179 780343034 21243842 474140017 90381527 459425917 442818936 825471748 630610911 795751635 828316429 246708313 626279729 32411824 31392359 318594242 654936612 245624524 731894959 454626797 366832912 489719720 932743256 953211863 271354398 42918723 651283021 887583151 272388167 161573310 202507098 345195979 536160271 580309366 307462835 58613667 486362098 145365291 215221996 461927146 146735715 32900851 378561645 438162388 208100511 720800976 451981635 816271731 542034759 265481392 887519890 72494151 405455712 704935936 124959329 435086558 901629409 628629866 906856861 973287544 795586681 749761439 1834334 328049094 186765767 562210645 606643614 245298294 190161436 911413395 902140052 188566801 809456438 750702591 976522236 948695430 89754070 215962749 33365869 224573627 458541404 330436379 741344435 165852753 551109048 280282109 349054249 393567440 212667545 439213678 851062755 306570797 102747303 493171415 375563811 488728462 682074143 979493919 47887940 837808091 881904058 883946297 384448992 565378846 561407756 126069921 993666724 141796924 877272191 108988897 919031698 99570867 705654789 130630750 448623170 456075966 846743538 754005163 826979481 594087472 55851614 150683213 874776878 341658216 336067831 904916670 295918212 605568082 298848860 858126633 145331164 638648523 806049946 289272304 998543551 614751869 916081777 926102807 759462921 393475698 618345136 191606850 292636611 669746574 62119332 697906017 161129179 396491789 514176027 798040986 588825561 66034264 246900578 545609245 747057084 896752047 595815673 566858328 75537541 419547722 939742464 455068014 701418275 192510448 515290046 787464750 493961482 959069373 136196653 649347279 746979462 53319916 553933681 247535128 267231438 812531340 62812007 62284702 6089741 461974188 866236307 774072985 796671197 523968310 959502494 588337640 49204191 666595585 15175078 182427496 931898510 3088115 513585039 55607176 405037281 783262307 209014905 49582133 881705268 835224758 170801313 870826482 782497885 374553709 524105772 274640819 464125365 534936734 44420243 809036997 345191051 319052 434503412 490929323 517063185 491490730 397767551 928669331 136709418 685409962 810143811 444902630 567545570 509435943 942585607 80958284 963319057 874194278 89644844 307431542 133413996 850336026 293501782 96075727 336971792 218891917 218003439 240693568 895715525 427867451 636664303 79864034 379806002 318767359 628675503 934781549 939417143 917240555 595503012 307012052 335172969 368423536 822407987 441159007 203492832 478002586 892443039 52171798 918888918 927651592 264014524 875571618 997130343 303323989 747655017 150825691 976527885 947743374 204338758 848297010 179728864 47897414 435229610 886654393 110391692 224568795 198261188 181697787 871139437 778131547 911902034 426755420 843787733 823344063 385585639 576340951 169941417 236427584 121735784 680894423 930077652 454894778 303584114 303392558 583078002 979840135 59026394 408747435 995740038 166613773 912753449 249004357 759997083 910342874 402537443 101019633 27665566 178121386 818164710 126497451 24760561 628200295 973232035 794363651 743900698 599657401 976279901 190446563 39787818 207361311 709083560 141543090 254093418 949551611 604624976 409134341 416120725 449462718 751586101 130421399 256865440 675936954 136300832 336045462 733317661 662304031 813417419 209070258 711564151 178821398 504556175 467618285 828981894 481338640 536376738 968646028 528431123 627883787 350025489 789555569 870107268 595882946 258838370 70426899 449344072 817039180 896083752 641480322 551357058 706514016 678972682 255551989 470688551 123684199 697563658 734113324 498610827 251350635 937356707 193620239 794134399 497263983 111129574 154663781 663665137 247353345 716106383 737621760 692759366 549178246 855818223 872727237 952639989 255803363 764799746 573692580 563502973 326160183 957852000 821549934 676160576 543536617 562784651 550551106 763215555 389034972 776446044 526297438 704525801 27297325 257148 703384266 701866803 5718061 432978304 508767317 505449916 903634256 140388639 638522800 321178815 435494453 676424464 138118401 141585719 294602064 882432170 588687679 184201895 316343314 907743605 181381882 404075547 93667410 722098673 896050385 5705821 374664368 379267763 362537256 346502502 46474379 287756588 394594813 990597666 853987001 82851904 372970992 365609079 888861523 373979567 280411799 861667142 664485476 950187451 630689983 419840950 754958413 995705777 743651554 503665283 234038355 121544291 977896633 449881089 963108958 421181712 131801860 843251123 881153323 57729025 178378528 853637772 407558412 947869969 203707147 796997292 237947341 106634473 805091867 113167374 4176038 188782345 943258935 94626192 919015179 773211489 553970222 56029591 485639884 64933561 581238742 762033507 369838602 969929713 688932162 849183639 514576511 406124753 982456783 731394409 412659288 628781818 90492120 681454845 892373804 266953720 498700334 160805140 752536785 246374580 341315688 149290665 725711869 297698822 702867033 763939955 467377995 636268924 943570902 340074849 276105259 823922109 675219930 460264190 23257219 454620296 782915776 158401578 189392949 398055125 968723574 673927690 94261809 859008382 980002438 261907313 481572435 108210763 794672168 549916231 731691458 153592708 844581564 731631605 4374335 771760772 975269407 938805406 422968610 778220576 764731894 257135394 668677253 611965418 227787877 916951872 155232418 643251647 726087546 715338320 96071708 744264943 72565793 965822570 518985858 163354010 690672913 423161623 872785168 51411444 940556748 459323551 330475523 483890086 21602257 544251820 988419519 592293105 150494996 680552997 445416979 641374579 432242900 922799230 455904658 53508379 28519701 746818947 980433425 843488150 230330794 966310588 488897633 816854161 514782972 916703016 215602858 728121116 203331651 563746426 825777095 298127999 734724439 68532348 985252424 512368817 42620023 817561008 982442999 485614727 267965926 187547036 691261789 685717836 585468514 194506618 216990420 837553056 315475591 440357839 177302229 104782105 456538852 115772698 600779512 769556746 169869004 902804882 587087482 972460244 843820920 590917581 264495814 188263349 922888051 979793955 715728947 780434858 59584163 567700187 537156419 456331859 692143481 503110352 34114105 529479565 798405797 117709508 688666497 605253016 125151316 643359390 988048058 963441639 512478198 388826080 278449791 295665714 337688406 273285250 849880535 706616520 493614141 349320551 960472088 504585726 601546983 366233937 645604580 35494386 788656086 496087533 667062172 836670901 340498998 612418897 387984483 496864138 806012007 552269759 420123084 643499679 576461353 234488030 482850732 354811813 983600801 578218536 604658238 197509864 52063277 49826658 929233387 767746506 72173392 534651790 362711751 399348586 921197685 942260039 631379892 902732051 554169737 160391327 121244451 427629572 933702813 260597893 289092637 94926155 874118422 610436891 623598622 813921578 149985458 681958301 652225029 534112795 399404160 694701427 199444130 594937383 860058408 412878066 65985423 569371332 207116523 195785257 781403684 528169904 458379093 208438405 848784025 423074049 177892762 913137713 968326679 373402288 991551990 740829593 35397303 455205888 425443830 251646904 129623079 285118345 59816333 439250982 214890472 490574574 521562301 973655322 936817677 524948578 82018227 156106754 929046157 493705081 430425100 432695428 460087500 948915412 332242820 204457727 486063461 43247101 610265718 503011799 634104801 164142973 942649024 624047721 959091432 162481583 91324917 631282826 998764641 372820997 817030214 148410768 27517274 527547213 516357998 648103641 78874423 184774212 436757633 413549306 870505251 23688910 368109151 271058142 809493382 355175706 164212327 593940069 16408752 493210612 802026236 947944272 564028880 127771318 106584569 803633515 746677148 11103039 144147988 322056393 641695100 846640900 485490463 623708409 681095746 613250784 994645612 123065458 4783313 79904383 552971244 189656169 573707801 313018900 62694880 257658238 964456839 633888728 140608351 279190541 263726757 508853781 965383914 31397019 423015235 918032352 239691650 385624852 118836104 99201824 885446513 461652184 350323626 54940646 286136078 698330617 572751231 342562968 705853898 470181089 336556686 802353818 526084271 306574872 539270848 290644082 859368569 653102326 967198051 842909572 429981699 764284910 891125425 509926662 463744756 723001826 763645071 726602064 353566427 374917769 359174966 984503400 390558783 48701474 431491446 173505359 174314424 512054862 369423423 858706222 257428617 949347167 934956841 676909976 982530413 660551372 621259573 337969097 400359829 338472460 20271186 719923734 160789803 665921771 53672206 729118208 275064902 895404868 841662934 792911377 204897541 562462469 181154282 594176028 198223141 999624324 310195586 564116180 570265608 897003744 419936370 345139996 287209148 14737947 788720339 465260976 784262730 321027424 175332825 498465081 161372403 262500006 264132683 536221192 464358468 958531230 165058074 405431959 762943447 707657376 99930874 467854976 650616081 499513424 911490377 724554316 931651856 819558043 433538935 670852044 974150294 568652230 616781075 215176715 157892161 144241241 473639572 702318252 493946587 729214099 463247601 61934147 883281169 777597699 659964676 683350111 714937029 236571558 788588871 861669644 871504980 750279105 246378217 796319101 424794136 727505322 481259173 305509969 598855643 439511242 845336492 440287105 944436397 875433016 281835743 515209015 553626392 650122897 225825852 645213106 434629219 838325349 318280177 697558028 678372472 96038294 793570611 727025701 567676197 619124827 656306630 90587987 169739153 640962570 541878882 818699881 762367432 665039038 332084556 504081282 549654708 528226451 6211896 933766243 167390602 982508671 345183077 711473061 314323721 496862943 135679764 20528131 935986294 110439941 165503334 288342336 990760923 518257855 828190373 321465304 477288317 888807114 339383102 897957669 749898377 515783226 493376755 712885951 414804865 389957820 986777593 7319988 556063189 365595147 416000928 290900613 473730140 678067508 828655378 235732065 793453605 613235652 420632376 737398924 237430796 958734667 774391788 629708987 344486445 44049549 320599381 625619528 622398727 682458221 971290716 468260846 837904338 64092272 459960557 334060673 781796760 304848141 776282884 76551979 488146738 458834566 605415480 719464798 370095568 511634455 205705553 841323172 269289695 182715153 724528260 167673621 38937358 634498686 222740650 360857991 210952655 829224058 735174998 388215819 671358719 478417150 264354641 610767486 498071921 80425681 685758547 553924408 850794097 935882659 2951296 461159320 997451929 977577766 754150834 785444667 284565099 500881903 734409903 457440931 173928220 909769468 160839836 158070310 119402966 146405721 809263268 167296058 25853226 929088007 809761198 577914392 489280632 932465115 254828814 451369360 504004580 628105208 656080430 703079524 895717372 657464868 632447380 896210151 987618599 844282051 199827111 518276163 540756121 205610136 371763038 911651076 585008445 822571932 656920176 64517519 476176861 732982134 199762459 271733967 84224686 101638437 524135306 616353609 853823710 894241202 972651431 599047673 464682221 326872437 575829667 881833501 510011862 226990128 877452942 903847570 380574219 70029366 205797532 422860217 436477121 539475164 248393613 433542069 664405539 725837391 419923305 69194755 114024896 223455706 419111826 769162572 537859874 512978724 472630401 851033327 536549242 164870935 363647038 891372459 888350278 805698878 26557351 289726340 929585244 407542776 454043318 648675431 71851690 717109277 70385660 632310291 884791941 456878245 520502596 610787625 329124575 166059705 313245060 622836556 341282219 617933649 365584056 271160599 708963739 132925761 110818590 96523064 163823078 94878533 722737235 767531770 382534863 220068393 491597561 638165480 972205365 673884076 665146075 852741706 495464246 850259724 681646603 708772958 338973387 260081786 954104598 808102563 20094345 595590638 579462853 301717427 510279854 172737235 408015595 307778538 349910929 635010614 521628499 233656518 239441134 532862191 475840217 618591001 99238303 548921385 579871947 731418545 344913045 364573038 413700486 773336710 401023289 687590641 775279612 391151708 398441964 629151600 281254834 736123094 437996588 470248924 732981739 923373976 943184779 579089393 540267966 28273656 505802556 451789389 354379942 494663701 69464357 819020771 589128848 305953862 896741336 367113855 692213957 473549472 982030678 375111455 850178583 89531326 305356048 862794782 379089061 691678263 353756381 7027782 895797242 87393880 815938818 412190660 939914903 91776166 749898837 964988804 587616875 96271911 282082361 686743612 111086587 854208918 263064401 986727217 609457259 853700926 475503537 615957623 354597146 151796590 78382640 257535382 595688904 115498396 757732052 513747660 672052471 628098451 132714498 441082480 720090800 181299176 529584940 645935820 522665132 349948663 493754341 210988742 869845078 687255990 620239005 405924098 843618056 655679245 610275631 517746551 824087952 841978181 259804347 53520790 90421583 123488742 788414134 585840084 515569411 723936867 553492391 733076656 294883632 440085662 218025437 958312546 820322344 17238643 903116699 339921735 438172552 40219793 659574901 50017142 829099055 223185431 364904915 279346040 55013375 540535206 206659272 394164267 322046862 424977605 370711847 575508401 761712582 549562409 233028895 965360781 470109063 438624918 42833736 154449917 939503932 3563157 278653166 486718341 9261634 608477772 719998308 954963426 237549434 919544095 2599519 198560735 741491987 993650161 33451385 373883669 472243446 787592367 687000872 801071457 309736220 79960860 436331362 829353061 410551176 217387747 957662150 308586918 393104535 21331242 341189039 817159924 165139638 810617055 40674144 247340375 366839268 651651578 290000441 908607333 670985501 426205371 77113761 213565032 933687520 411939601 831399436 167786768 109988464 291085979 871530122 753388447 700988549 397469942 107427852 766557725 864818337 254408194 396008979 308828831 722222354 927530440 291793554 901826650 724500376 681714048 183449684 461735472 801122713 296649168 626398175 470635212 498951870 409709706 249313773 888365630 522854019 23293503 979197068 280415968 136843857 802751809 664495663 375411959 777442182 282969365 979687121 621313794 126576324 427856296 594783364 184353652 15532379 207577380 76063208 365094750 84484763 197891964 832724305 769320977 54087461 783867117 947491672 426030776 735584783 684859557 700439990 274343603 630848673 625446223 34925476 689578248 675015374 44437362 723724230 583186209 123060799 303701544 156528478 694964390 913930843 660425527 216257110 128848199 3779541 627433709 247432301 334805570 546925464 258827272 972069955 933712165 875318219 769050318 95677151 522046858 610504471 778332398 279186582 351199629 779157833 84698808 89844120 703243653 37273220 110111573 803687351 38988810 184688588 333131404 74274266 485566723 539143186 970969768 219635965 423397186 559128628 359352393 847124128 706339088 191152478 846328001 460904731 677536240 161986931 454907076 606906436 470579028 814712872 408199594 618950753 905319159 229384514 558127714 27389970 392436120 528382747 582801783 203697574 181886916 158597823 496417861 798261967 512817586 605588786 393382961 418527937 94951266 478634132 962615469 613548607 915935104 197530642 512452026 844762877 645748064 128184985 894701120 649337801 676568929 910150722 999288528 256428141 142116291 820989201 748484960 980263051 352996396 202858710 378425775 245837832 838350175 130784433 236491090 281974977 485931468 383240466 879114391 953942064 300728950 216765838 800092312 987574111 125289350 6772257 399755167 487731291 380822888 346227526 323270748 322516087 779482693 810378346 665172947 910585878 341067556 866323062 114416525 238452816 3922544 670922051 312628137 21984249 995916920 785815266 294746600 710412798 223354514 643382726 978033224 842515979 10187507 930918991 84193464 97655835 909211325 293774479 353828853 499088062 494317202 445934348 252596702 407166034 81322929 587899498 256315501 83548797 755424706 99049994 307435329 909843957 217970336 647996425 47918789 160489342 730571945 477083214 569894139 825668528 394490081 316166077 342152642 837047293 953848791 378828791 303273271 189572195 949837617 532878843 156004244 584757526 792384708 211790288 143305598 524383844 291417754 205933529 1736400 783980260 59209568 258434085 912878211 227183417 807552244 710359935 453066282 66112920 575588364 44327121 598242417 774265042 644567133 258725219 749102633 718131158 200150896 455781088 623480151 364286679 384173359 654299042 213518963 595631829 242381467 681747973 645327323 405510748 919945929 203088894 717267332 893778345 607895621 819284473 904766687 886910884 160022588 765629377 832452899 434042944 27208698 398762160 131462140 163876081 758036005 165736364 308352149 736326046 808900099 406147919 459527523 430529719 329781229 955922672 725071540 547603562 249103663 141791281 677261787 460574156 174752492 996974709 412242027 801562578 669905484 414809888 417406197 365608990 528580570 676893911 477089786 837055397 935347866 219620408 180041794 885682542 107595709 851869116 767746774 703688571 275881790 701440722 873614551 185112747 845260191 27972562 255262892 887437701 742749280 687922418 553931227 63175399 468674507 212117297 84727193 775592491 553879161 995062093 874577810 70679948 496526073 936082898 803621684 568426945 478539413 381706246 780698765 69637337 747293224 135741149 325058639 597534716 943545972 264676624 696785514 12203632 282132712 356048300 947476106 845483553 213268335 948605837 731418270 737743698 830380013 269797166 266801110 895106366 364474475 580678658 555781876 301047076 292657222 209716905 178012474 172031048 326389144 812930837 94611025 31169918 635202638 293966485 923060888 881361152 919252494 928498537 585008738 828293453 352329888 3830820 471239796 829885437 901408431 175985245 244366160 670601239 749320368 823083077 750949713 387840285 498842098 608000945 423983805 853381825 367840955 641006767 370124270 465093683 12711152 933558732 828164884 483829462 615783238 904046149 311541992 449763126 211091815 874405329 719183998 447042153 583724183 152551896 953081245 266037551 363821007 10938297 582384710 275312635 485966116 855286265 705853480 889638105 379432902 581721525 228870407 356192068 165040668 305590992 640425377 672347983 801538277 320641957 265352534 102729345 150487720 236910108 155033279 306765345 325803939 316714547 765132200 208199040 945380806 582023979 434035360 233289672 650664667 746352246 550095761 134409563 814711475 179605822 42217672 575693121 235546388 595209933 742152354 87373570 255189690 670822892 56486408 198197 656855761 17887889 303256592 711730000 279668177 904011832 290042407 637668962 746719822 302251432 267016363 395981134 787091265 997181699 939849613 949719638 604840162 338533490 635386636 706079257 725703674 621894326 650350973 79093904 455453908 283989177 426074458 496095363 546971298 762438083 422756234 817127507 441914817 55578451 863853321 738853368 298114071 985114936 122325279 212185815 329821483 514353358 762417196 79699989 286000160 46183810 699831357 60885270 776737519 247642426 292322355 586005619 545360583 410145266 972489281 874230961 478318978 611527516 207505780 833905252 181497847 188710424 685867959 254664219 42086967 586718120 620693401 702377546 49233729 730193956 348818047 762039511 459287404 375802540 915704225 289059361 730224683 578720038 135397418 136341092 393330810 214467695 127656587 132669336 306812810 968868131 479069911 656809857 196876651 173908909 920554045 431136207 75193176 966932728 753702180 810549694 6310363 69993166 368335434 323494664 945514116 760577250 91442811 954939346 710324776 729872846 412664129 73280304 748131621 545928084 366621597 340271066 161430848 50197517 653629211 431169057 183845414 715521987 126770783 984910508 488225230 762594060 91373354 771138779 64583831 205442631 812662108 831708282 363808768 554607247 13666456 602027501 898774988 350134899 889616431 183945355 129658661 372031289 218037043 387391541 688181076 174170843 417393175 460639006 465822925 437233224 175867825 941230713 763038741 577823563 312367780 258567019 381553708 871095892 105841327 930227019 661085146 329996575 956009113 533862387 120677429 654332661 374373804 504550274 93035439 971861203 824653172 697680341 390760038 443466498 547132276 989461212 975781130 983668282 35462468 561459007 476324931 534827008 815150319 697823171 369008922 224273146 780640949 905907794 59872730 219554292 375642838 786785557 527663062 782852920 236616178 525352593 123907615 699804751 572673267 945846770 724966725 741167807 647723223 927859730 892952521 238156717 275642378 672816698 740152211 100741450 68940166 381683993 444671735 295241644 26247276 674315828 157807523 128990378 96750877 612807059 808404247 175713347 59072447 724319415 794839118 722665736 972630320 726353847 112858173 395931712 50427593 272332660 98273036 762514322 863032320 239795799 78416934 769116496 314729973 291513863 317187177 467742821 50270109 422565094 860334463 340145125 230217820 88046073 174375724 970967191 172967216 831297967 666751400 824981841 374117082 700603919 102554982 903796621 578373351 162521778 112707548 252443398 98304371 282550242 917257973 798011200 181047644 358392695 856664659 558732737 124813034 909459180 198017328 390382533 337913398 350826598 31402445 307168217 391103793 326399396 794095737 195439093 779789528 637539497 583918579 3873447 255073438 336193240 727390294 313473182 835320430 587039497 113577192 457587009 13561026 370970313 657735736 735051794 221854603 842702060 479867127 776312177 837047164 898512438 14054317 79360290 188434291 171614684 217692481 924907488 620520144 43095533 565498134 400833189 790218920 311056425 758434261 504197369 638444711 690565155 517651821 461168143 857561660 6126004 689432513 630064737 933260934 406274966 614077041 158991577 820934877 17083852 666023817 423410234 751743032 312899371 339536401 897721353 597313760 620537930 571770613 398303656 118719086 944449440 151484086 886550490 816285252 546780684 769172976 213681429 111870911 198070200 341926500 785675851 874912209 909636027 838447602 918137260 90805367 418856603 896967066 893211296 45431733 730937574 262761539 162819364 315245021 385867099 721208700 382237462 610566591 12353690 714837820 421182112 495888719 32160012 168905697 310938583 395963762 825482717 863274788 695173001 754578022 87352843 105727275 108858912 349730294 624413096 211616858 824929040 582353651 93281381 194815027 647300036 51249277 947356584 192478674 104029821 922241075 774440048 835639332 832567844 597625305 660828186 521016087 864383673 638656489 101198114 203227682 48929801 595196219 18537529 104564734 524157855 870665863 872223098 125063754 993019952 445161997 625089003 512209890 10346541 33336167 296933254 70762490 536947083 21407762 860048522 40578107 201404415 637941358 128307021 188280427 531140433 474934310 907204516 588924655 120771569 281924273 969501131 537171155 633005918 756954303 465392623 768924255 350053831 62564736 450399187 705931536 470279543 4925140 314500061 613462022 291107592 715043983 368279882 106578645 468629190 125986668 808070982 615005606 631874908 131735749 1389256 421620317 541209639 504576903 256159298 447002899 650153539 64509960 139779978 123735028 382732761 619650239 519919482 109241704 726522927 225745985 599110072 669623266 320231717 93014059 718056573 867447960 24479696 891047612 622499452 637013112 15850048 304883430 430347787 96095576 66963221 426641647 928397256 110471239 518734860 287096027 762619915 899890279 255332347 295442070 706426406 4890346 543258211 861706571 587465661 414326213 952155474 191497940 797931411 717384995 381166557 353590527 396966254 69373112 903068331 785465393 664478281 203812783 65933097 857336619 665987302 599535026 452333323 7172476 699967861 43311636 582590460 153556191 612996248 481579252 816502709 380326659 715886835 13804621 344672647 586880717 647214248 248327610 978829564 310403091 21323943 870675383 837069733 582677195 64457998 335402631 118671489 247822594 865477590 729427444 525538927 827870881 187165657 706035864 282672127 687508371 501051443 948618273 951500549 582884693 411255469 972374046 473064981 539198049 915590188 265242808 455947598 774841608 436525095 543476227 456854290 490424802 290287046 328787398 675117610 889309567 532000376 372470969 521136186 270593598 488482226 274874412 774593509 536843495 78588227 156274988 420090151 788020467 703104690 303966387 220219537 685339208 137385549 297168442 359068196 127918441 99133092 382142878 853163977 900604649 802797621 826544629 782932054 509019037 404025481 521307643 537308485 118454615 394482904 546752435 809362764 795791189 505126239 994433427 604788805 855431741 384485284 290417342 878083337 788117675 890817386 811463130 721794356 752538033 105983190 259913029 964780543 582261029 893027609 889305213 441195024 205998100 425003379 708156053 871943818 70580220 274664778 166247749 791782768 707320604 290034981 30513667 175129253 515951422 407800064 531434096 484074346 296864297 583243288 164582329 695869241 515790222 972801729 743017685 714944822 295868039 604073438 345533324 382555034 137141317 961804766 80726631 431452100 738601492 598401831 65561621 404825889 501504223 702356806 635882122 927953824 408102060 53571482 123900762 513492759 860652530 815745576 943545528 266702341 602547677 471390836 52572311 231676417 585642653 536863711 806083539 622979175 809984593 351433298 862376561 618610029 155203122 696839692 147951839 105908905 529809291 652127330 379980692 936418187 23757318 67930342 611570215 85337009 501882507 590254805 148566940 23769654 500351235 26732625 747208528 796525431 321675595 983934055 59936600 460577720 466260328 875055753 878523198 408125115 868551010 137523790 888313826 75124327 660033600 901434303 434675685 494728874 860292839 522463093 952856558 674199188 840601904 4707221 23998662 39938160 241730988 512581490 34968163 922358027 233680694 619901614 541917848 86216161 451413120 934757547 146741085 25100678 577890319 302601769 238857808 674864336 109077315 495751611 640091627 1493413 767820722 213478228 954641583 483543854 270670717 894720864 23745057 110381823 228065770 459336353 834830239 973254475 103883039 996530968 787081382 66438658 293283630 464923060 458415230 578170096 351647886 906216313 572498980 480202771 472309315 287312221 139545518 444502320 669854228 751849708 807205049 281522529 272277143 640672056 62539289 863922927 129608226 699030794 617733811 438387152 724454103 79311819 596711188 855638023 197666256 562815061 85761858 657058476 955652091 804055988 748711156 995979907 27775138 951418097 77212279 834609581 409266646 626966380 746572320 985300764 598567486 496199540 500429689 824149704 194843887 379957136 367123613 523813484 632612084 842612578 789103377 140744260 846401874 438474434 696582903 725021042 971128711 587847713 312449876 142140517 452510079 916702886 24491305 80940358 873155957 116459575 367142429 835403661 149189589 882296651 901930153 144853959 420535759 403957511 104389536 290489344 907093318 369934194 640816401 509540072 433044261 996154823 283210665 254154830 460282396 615809707 292803595 431879332 608965457 928399901 791609837 587827806 981128880 298789579 521557699 820710800 929833379 245893009 65374117 872600538 61333426 738022327 544508481 855290015 986117106 768527264 806888460 868264615 678209794 905132771 169042837 549314896 703574338 386360369 606991775 442962826 514688904 94612161 390203726 248147163 147980879 299858807 703030244 732858240 3705078 621726588 600262134 44485599 3857088 513696031 803251579 529163956 109738546 894634059 578708871 396991746 414620252 409179994 684494264 268194141 673252503 668331378 323021605 620758654 295092344 929897200 261476338 173873734 427268260 718427606 362551191 943919622 775019853 37728193 23979325 944049233 221642276 362284047 368349755 342309350 601839225 366348059 42505519 645418344 236592401 6437143 197892115 882553697 362310263 180658303 39029190 988357456 740813767 861151402 34340197 524461462 730600729 309691429 344776804 441554312 680939178 106044375 56517654 780423769 486889721 880987872 478843408 197436495 731524369 324345281 572971414 459458294 10490486 967685717 267769660 428476739 268459895 977823542 464559826 60185443 502903467 517944364 166671995 61888017 182521877 771047515 904539884 268919216 488502388 75790117 664237035 538257481 84897718 893803422 85711020 263585546 276353335 462859277 76277745 240858788 883466345 189571824 226408056 564140899 446474285 176569646 720489293 532612773 590719469 53049464 861983094 926488846 306207047 251446032 870707145 684977267 695762542 409991054 36849015 844742384 621259177 444999315 685976483 673678932 191978668 659024761 858734333 315794655 136223293 928272468 479555741 275578961 411338492 58557058 979134064 983543341 455040845 742301462 776870432 722361253 576172211 725255222 167849062 140904119 204629722 854876473 186746078 813504877 281159657 54110039 188959273 973704244 186418948 996326314 851525581 947331315 200420879 40153840 417336834 786472134 44992249 223404098 363400578 599700292 435716707 250511570 9481022 433550197 897669474 117787439 814770427 145825648 295305445 956850597 630638329 685321407 653625008 234996560 307115995 183772468 716093970 533068951 991451216 412180256 689909516 404419219 247271048 448560725 331237761 720114035 537499384 148731586 469481412 596689938 759963123 181636049 331850633 590000243 581945956 677412426 392137728 889556932 997672764 329725981 69642199 367772487 464903937 390565392 239531755 119807944 950784514 423853327 833361512 288280042 239687704 557758955 463493775 592685958 740880370 665062537 522326938 41140348 981849568 455584934 714259177 470795714 644720731 305980611 556335581 525512812 749325760 740688073 481067042 882315027 64249162 866773021 880936018 744099137 507066977 584844346 92175428 914798502 304768637 300150669 897629796 50620269 270516146 78001915 122620423 930479197 841147497 331760349 632883668 823978218 200511352 346545758 115665400 151092294 7793066 389817538 383420529 31806106 567897194 541413985 861424347 377040958 830818799 637105264 791547733 668660752 125028425 643865075 882287502 796475601 476541858 132250470 295941690 876135125 559070788 569478795 310575562 73003990 832976313 902908149 16899889 89848561 383812660 929388977 812269455 982936037 712739813 471521977 818516118 304696753 607963041 177989971 694280544 89946770 531097860 591275858 58386798 534558873 519884843 648698607 877254257 387749892 266867663 474466909 859336625 535692981 999354620 414994722 450218284 120855929 557314617 595949963 423046750 800417881 265045514 279615867 272930722 234918590 923380885 426510159 851501136 51232152 458425356 496025401 639877352 350529258 859808280 197564741 636762327 291819146 648958110 429055245 10583322 52607899 617773156 790330241 960369253 386040074 733737008 715633716 18263277 784643156 438669162 617020641 900130536 231405786 172125062 924496408 842879213 480688784 644623343 419970582 37779833 318931165 858074143 579699214 872555234 518260304 165855375 352709222 343243816 277671164 517159848 889801374 215069171 474096126 6485764 694133181 783823354 944911764 453861580 955987189 507950133 395297927 287237097 160663808 88985446 395001453 329663701 192833294 217407437 371463977 101095465 609756268 108047159 440351045 370009397 174193145 220538225 735234698 474342420 435211144 202680033 36848591 111278700 498833600 271606901 57886604 363310579 831484805 808049648 384959105 406001356 383981957 960390683 223511392 115439036 322424765 627242687 608377778 387614616 819797332 728734441 924376488 202415144 737654980 550136030 388841509 263077207 488475398 402076596 614541716 158661323 243549810 174544656 990961767 973621730 773378708 534083922 478008392 906454447 872827554 987482278 826467775 180745400 554570275 47103559 266660834 819682566 542319360 554717409 862877310 554706685 824271933 651652474 407544782 165421132 676090522 518540489 905562509 900617419 845005936 993124528 675890432 994440491 104505371 214956261 133247468 59798123 861683286 861097050 586317238 723169962 944712600 123599145 260998443 754633216 737742408 858925398 210061472 469198687 978279932 500279415 168842885 303837601 54396372 290667599 33253220 444100018 456687371 745820398 601951064 603748798 568018584 890601973 91409347 855071835 312868442 164407124 860883960 29186749 89094242 231321668 683380594 427335796 705813359 659055508 847547289 59677876 94556008 12118888 818321116 900813815 100129124 794884214 881869281 311296116 61080383 6107162 439745439 814570793 322699831 180650961 876373283 30694557 166061613 997294140 189872372 646400476 187935404 32898095 385755547 912458981 522825913 254288374 799668462 136123457 247171807 89545121 445890867 568745628 376961315 464603269 828444605 95921954 267292739 148559217 323710443 217807773 72965557 692779081 883390448 206983599 573376306 649459996 934374316 875117988 507997184 576018057 603320 249785956 449091353 753378623 878517935 155317857 41583821 136693749 510871479 639644031 835269743 72429709 750044652 368338502 132631441 160655040 675007231 370625523 807257194 442348556 91954001 577789899 812825467 741697817 889074180 239684786 658072365 372443536 997562767 919496506 153429122 690228683 324743986 611081943 995885634 319671203 887338143 701115367 215973898 153330692 234930570 636663876 73104829 882708495 196289484 531259198 333613482 352975219 150450418 482164017 738338274 490825487 654952545 707641743 580157477 154024363 723569760 570456534 799498107 448571955 100544862 523463016 404375277 917067273 247173847 165162932 664557619 355023474 373758715 598891534 258211550 371136931 660398123 89221855 635552797 748550333 927260674 687765152 337105160 896666100 864309636 185257637 146223480 473619249 353062138 312754221 702773442 626450843 748406823 905414564 908505264 723702602 185910601 405325665 973642819 352591371 757519013 956007103 281872677 916522242 806808652 406150157 505068238 204252695 246781778 706392864 853568100 703176057 11785504 959967334 283270895 955805817 681283620 429122962 128472556 786036965 210952729 426212561 441877519 417732278 852863144 227882579 659484142 733310022 360940242 651730765 975258111 553865217 578513288 371818254 58910067 386845983 355667797 213829194 239829873 798388154 920834095 206088292 982140048 570741456 629900647 507295843 158138095 657735097 581485414 803000462 512491618 566542099 335852228 496674396 358572090 952008161 285749579 70931592 873496149 398533371 553333542 5122139 195149572 642415682 789746437 698314917 508839732 915080298 77482254 102179116 208052163 634776627 209600446 11773535 209455171 193683737 186585354 313698353 833395772 964887721 122556324 373684226 607178872 490590079 334020999 789656647 468632723 963982157 515236498 23246810 69878432 78012142 317891676 561500802 85642711 823284926 880927075 416131463 361483614 643810090 630569348 54928325 425301867 582021073 354583679 547046317 872319256 128169072 698225289 744176763 441408958 552364186 615002578 964520604 398308549 915584295 520382112 9153198 659343089 145989712 127594400 85852458 688867054 320236682 376299303 11009184 850615446 76013097 949945588 953906264 151679069 790022095 40431143 343729547 290591697 76338006 450499001 795354658 810681554 293372677 577977837 344778611 706049038 477165982 258398260 686139574 520731208 719308400 57452052 151886678 387438049 856347307 645699495 469891081 235337373 173291715 385801876 732517492 309624079 857372849 336949600 225428120 905927080 868009845 43452426 803683955 933419918 486394073 272105628 568238745 474965252 373880814 565699892 979872839 15786874 214016373 107875882 66979911 215351123 130563193 847731085 499004966 497395165 366329706 422090168 838356301 52856837 644857682 453036569 971496600 647761441 513120769 178656294 235754118 998953462 538561731 277359111 629983520 324260334 60421317 174373018 658598659 937569106 581057050 758519460 915958862 894180610 173586356 95150490 648701663 180651212 225113211 187786035 150786898 1810686 26621099 554211137 469861101 761217875 955705221 984032019 70769497 786430290 548944205 675021263 38841392 600154242 12024445 880153439 295550435 673662091 531422898 703165567 878052815 646658116 146629581 132772281 685425633 658311773 566558490 983142986 294051821 197213167 743737634 709041848 967278310 407531514 143424885 965414738 386875567 132759337 71866765 458574593 556818150 671588222 665708538 769700454 762344329 868191644 872251662 78901119 885903593 491092817 486510306 985772953 32694060 736658998 112878653 361874180 834100360 558383149 718230310 422725909 950756356 674918252 813002042 916025114 985144363 897113354 374785807 276431774 804344068 24387494 622077299 311661321 494870949 736968838 17317399 975727431 406765762 880299285 69215472 631601520 491945233 575116441 936568961 708278166 131740974 52954962 992099211 941989175 491881225 51547199 503334193 331334663 157629971 259138155 15568389 722911771 770814696 270072822 621185967 923372692 18101152 613683563 499691906 625860147 6718952 294881734 561357109 704624873 521982055 381426807 624148593 566503343 680906549 609488690 74055460 651521133 840281209 712239348 516067967 385860706 11875731 806721590 951198081 629248579 546642199 85483105 12721761 768218780 185818287 619264521 325571532 816770735 443998718 695552750 650440132 105568315 81470766 908492963 637349624 646413580 993578567 71623041 919673750 107059985 152191222 117094567 401878784 321383980 133394538 463657888 283485884 275037515 612144967 629615901 124594773 368629396 388865692 914578444 631986504 100050731 111703917 234471725 631280881 977686902 530571471 430644817 40099543 641592604 721139179 581159141 419904716 554279082 573333505 869211681 76472331 346616629 295593103 182091348 694631763 417257602 452262043 566388344 569843619 402880420 532001374 572439582 49131271 262766083 837770462 545827142 986437711 243974349 630579934 451305848 547644485 126795182 217681854 267683323 8600651 636451163 475570340 466228266 787863478 381576974 156671718 856980137 904256396 406369238 593154380 787885658 580758108 442719094 631451546 876198415 879686071 569049276 948226590 623211053 728898565 519669808 152739065 918680832 930417153 583517082 682754324 366857675 971332688 607665607 562189695 48013866 891922330 860263806 892329325 252783679 310557664 987227283 463219911 72800523 474792599 153484075 293012641 717134497 494476960 505631047 335695508 498009995 598621985 654740381 988597562 476497938 548896397 464694156 863490526 71076693 284006069 16162167 408612381 666487140 558581463 720690477 210997265 23413958 165153408 363931648 429503919 898796103 842906503 796456465 157356503 938796839 230372667 402539617 642240711 762184054 127919119 960672539 273062075 840547876 951142129 758549510 710093832 70634473 116467455 737756412 542745865 921689895 229711257 61785139 166423427 377249401 300622594 617139456 482116354 335279067 870431447 924654804 135141806 386908430 672758264 43788229 474626935 245870267 397291695 294917965 62154383 543715597 883478085 850830823 511728479 504596300 697661505 473988340 137598696 995550513 955304561 55533332 158751401 875192162 151665685 431566328 460275824 840934381 293989834 705536049 553437068 201075199 470886790 28651839 88430634 625984468 122261977 342416029 278351425 987403805 920165100 944623187 880620146 614277135 66819595 222764385 791823186 481755882 576347752 715213630 804538469 690461235 189720313 342508825 509034665 770267820 445090599 243282886 304726439 206994634 8870297 526681745 53020849 384577625 577549204 702556318 758000904 406207545 517918650 141530921 945687814 856918484 63466103 199579129 182991663 114238895 182774555 610373342 720713162 697108201 612175142 571070387 368285352 858774898 24515013 961597481 96532570 940836776 562992409 707669400 208710937 916456333 627067054 715092565 118688347 479269585 694863565 854249519 640756984 110646617 939835117 176118552 778946106 425393932 452631814 657169221 624106039 18320057 658254580 111720053 866759517 633578800 846081656 951394740 689851970 74517833 752887772 299495107 755292513 347108914 607942 962220309 218378491 226332387 721153919 275226935 587788460 495341211 911958857 40480994 401135075 958767468 169075264 371930350 442975878 348354640 627308728 610674463 373620215 987867519 875171417 576996633 604652801 256387328 348126157 550687110 350622844 905681198 373031740 595740302 707946604 428173724 863187835 872932226 906068828 587889826 200403758 299807725 424699731 751870016 207979828 420790980 869849486 499454429 572593817 238196603 953336741 228341180 616542999 752008786 747620503 418603000 372571254 21342297 500008944 124566474 993025364 603308519 737199221 708642252 137660379 6561368 346628266 262731297 977323440 281009194 422653699 857803314 349778104 419383341 386933981 712264579 144753890 87098882 143103198 56169754 75110333 457432909 783567496 852431427 376757968 437637544 515998291 943025793 851536130 706293248 399075452 439163789 267678795 801554975 651338592 622311828 918973221 752242037 489115062 902050915 891706166 604339953 757393736 454052784 97750785 51762665 584913317 750738443 31931754 22865634 751429418 553852538 649358503 303168452 493711468 286614811 606726953 793772260 79014514 322714316 470191558 718881886 638526274 915641097 385203433 545360220 973470877 953692575 63777492 658046909 370302312 507003993 505000212 491087728 736007612 941595653 637782730 440891289 118009070 691600837 437830253 964280188 424200043 774213961 990128526 876357570 153195183 992065431 760941781 969436316 344854061 125950692 72973264 149273955 625702650 807599659 274115658 906663290 957546685 248663851 432865303 87048229 471208142 579070932 589055862 369567390 74050678 448122155 599075753 77905268 980831452 993517177 706056929 318090392 23975143 377087520 918583523 188147914 654300030 937042074 140280189 891031863 141022847 220704651 137687095 668742557 896951828 412619029 923315880 517723178 323619265 740997435 84757773 169345409 531599344 567050902 858137070 435614581 505468987 765908861 801465966 718528149 448942406 925220562 506200847 761888044 84090060 622000221 114973062 619613159 520191926 477394739 351879068 312491478 482343207 155317090 702353019 756322167 61811826 368062305 417126315 249946210 429296025 622622862 880105952 383300002 724215910 951759425 592736637 384350796 242002460 466194740 395977420 163604058 533554245 505526695 505086548 354740175 252500050 248302519 46425451 796456994 72201542 9110438 949485344 382566778 95260294 236747697 754233698 270040750 196236324 29862528 749513995 149447723 54963222 158299456 181089086 881221499 102642472 353509708 226379107 790864431 395562108 71583837 646492412 75793842 464339444 482322378 253739477 391328808 790360653 286257943 917723984 366710954 112890403 781724790 552516742 6437669 209965383 47507504 475152376 805680619 485352523 445911158 344540781 26093458 865269781 877358659 362879330 245385950 595759101 515949721 14812473 558094357 118700551 995094046 110823158 258334711 690972462 550116493 145290626 468508704 118217837 781695958 225573615 472965371 82650789 466578929 508145953 305962240 456557273 988315367 581958124 564452438 239335364 745232144 610846664 830772504 866280675 648024436 62112488 304603609 430599222 56491772 260618207 629971090 562279909 803796125 511149720 276293835 973286503 520088796 853323581 67145221 494560115 361679831 901441329 542722802 372341408 661028423 669619189 968185675 179885783 545093853 844956836 790089868 190312289 216130764 637877161 137472505 124987280 506817218 464421877 107029790 974752361 944317568 691221837 442344577 803380610 800653297 572248078 70938813 482622688 990428421 392025077 191779499 377978833 135790782 19578785 15252144 280928100 318283848 658457482 579101050 451531170 654304887 706127817 739851202 792558718 146977108 548273291 55450527 146038574 136856434 562583642 685000423 905235021 78956309 817165578 36947870 301133510 397256083 317927075 510943308 979628023 278840396 178284383 983257532 97858521 480694533 144829654 720048788 387814441 381037269 983998042 602165310 679793469 422155565 577172839 543398888 720124366 593939059 763129372 493988719 519891529 356192458 922035749 923387602 707266399 786320213 510739030 351540332 635557042 20782695 459457616 393292498 63707751 886580251 862381849 523966176 549063364 668274269 213560791 656653583 849835966 439744077 11367246 768154107 223690077 208055719 79056568 566083089 250838092 708160573 518411415 461520047 912620055 121225121 113586727 662885300 513726734 314333718 242715162 832936308 402667644 521358584 599903086 629251319 37618096 806771011 670712760 499386616 669019495 364447713 36132955 600688944 733129292 691596367 879718999 690866513 240046966 817141878 666562366 220982115 767329363 473940450 228074903 873776027 499974275 802868381 256550323 789312593 527521025 470759730 21734510 289249146 720194783 911520574 367403557 794757526 660727867 481146824 391374979 366185772 348168151 82206210 313929387 217442648 879666034 786768799 176028377 819406859 785664642 877561049 908315175 637623896 868039950 54832266 202502973 844102382 811770333 423360251 240695624 716749714 105032858 213461087 665627848 190488339 557925999 757596947 26284190 886337897 314325893 993061507 434276474 413968195 230110113 249904778 552334536 267737065 217038987 783814128 52915229 719884813 143737113 664285928 421614930 213407279 852114129 981239347 194813833 848731497 849216364 804400633 560900741 832540714 608097292 392751047 419667843 72721844 356873638 353932499 200445054 970791698 883904727 942346133 828965060 170694226 813555359 174549401 150675971 595636898 518522295 530774807 571794615 404475507 807924873 873128179 55427875 179553794 47894411 550502067 27109150 772285428 573882539 240615683 853906938 662572418 386372563 727581146 618846689 104877649 157993234 936254517 33282153 652555825 447200270 893087073 664772933 795112603 874088621 305076385 289066973 4798297 950961074 310692292 100081698 563741809 98908345 476054541 851568726 448579230 725286894 725075514 877658092 209460049 798060688 900241514 565850667 488792557 124732831 859783181 263402745 314606439 12650973 293578317 24529055 14162584 157342721 561190951 192458981 929587869 661399888 60709218 302864396 559360542 834814601 746520186 833817211 478363356 159489936 784253627 775693895 108131681 802407662 578605245 852332037 90611096 350353559 375823031 725946934 205601502 687715274 389039137 521672840 22897611 505454363 790329043 646832880 803287910 864701137 939929074 137171186 861106788 99650142 608579914 324388787 966453432 529823205 659534923 83966763 706382709 118248026 776819006 760709687 201488084 492067519 858910858 722567271 396414996 201970789 581852636 271239484 820344617 330846863 665284552 53597684 427334763 128415874 128412206 328105787 658040186 39026966 120460629 429964910 820440374 858657301 313939899 603709266 369935414 337754162 192472540 892256291 391597400 8799417 131044587 396899907 55552871 686434371 509159399 2914619 7426002 163486162 473939445 541084741 92988640 392662611 925740501 1506451 177609419 459731430 108614203 423914071 794347327 283589819 719205213 636335097 806702585 273015515 973817553 805976153 394560766 744019260 584817241 871828572 129567897 58166919 648713825 417716698 625133788 51413696 845862691 656282780 102042089 865384031 967241326 138346707 484449341 262186967 291434423 376256732 929132549 909968668 808825977 23731972 609782901 918722845 312189824 781014380 581654471 434533167 94934304 816349391 780752341 866822695 149815916 418123335 98508090 621573252 24782191 308507501 983049623 548051244 550708542 21635289 161441571 106696145 739833426 88958330 546057064 975960260 198862365 700348227 576524860 103030481 181846409 546960161 684155020 69960732 467247800 777234378 645931016 825535129 974710209 439060459 715769415 431047977 245294360 377067089 322596164 363420927 650693459 182918552 327583890 531381147 87807622 424244921 535765520 33066902 191735046 983895552 851402270 622758608 530726301 272302513 301257636 829828239 302200509 879163909 359022262 114515216 629075396 22505263 844786700 612826010 929701736 300727060 415989547 398728772 756817589 424321647 303067291 56453451 230709050 450027630 801140145 758318314 627756317 212635504 610577752 350240912 733616120 892111374 457325794 124225985 734380285 464797605 471164377 993939128 212436388 932985107 756145891 147047868 681273920 614670366 954849165 77859322 900373867 702428255 188670072 810663814 384689935 388092943 585123868 918967828 348771978 770907948 2809658 510817921 279028706 439492799 731960303 241093698 661643978 826270163 621917833 371355790 844773225 340349086 144047088 648584155 793818590 93610510 180638362 285690332 420139390 861463611 406734962 49087040 907713001 548277535 110564619 148910958 685052173 948838437 72616446 385136795 494781058 792627541 742017495 253643197 798301955 357173718 777833332 999314859 581001203 20593247 237884201 796899927 829524316 775909267 58438849 617101630 978810479 344137500 63390904 234578746 947582661 174626841 84667590 320505263 145137237 301645713 716541741 314055877 992721624 667316681 917127730 145526402 239198258 970976165 230797346 610273284 460484512 650767643 748069134 607005986 302674510 120747514 785952921 54318984 187539596 261802871 712677105 805479107 349762037 67991610 957417099 480843370 550564739 502187809 566008030 741738500 654071451 982097749 667908870 6736238 814955156 77262339 286472013 611991974 31370163 580505152 904407066 489043823 162707573 765602835 857408468 245076528 901543029 501147777 560063006 228157725 259793083 361540747 680262305 401115618 249704987 614673567 314397006 779046083 667440388 716803507 83200139 640161519 307249691 757885345 402463336 943563560 959647180 473402841 812353038 815530950 438490668 523299626 177649654 106608366 561148412 188142379 305029799 739011685 346470522 783508606 600219473 682461043 416716972 622628232 606337200 889607567 852128613 216149612 370138495 167663144 919365221 944606932 736721123 5119006 706925833 115658475 882780853 843040223 393676020 728760803 117961798 7414537 759203760 430051158 415440775 124858857 873689019 588525906 813377911 383513204 847472647 952510574 212673871 420344075 99023276 120791776 183831891 927058111 130174496 21853592 176930358 906788847 65839497 668577719 689030055 203490036 228639382 983176984 623986257 288969966 126616756 348176158 985174540 246660397 545239495 842503020 192931660 828076825 711683430 545469019 884978015 889193557 39265082 253630968 676385895 585437889 843563683 107279569 154056743 640683271 259561580 560679776 379399501 240960526 32104667 687648926 199694105 100370833 879393802 556470169 447136527 475145620 456828330 899481566 213556412 203153512 813138911 186166293 178251387 957996459 305386106 154723764 562602626 794534715 869894699 542610145 566844145 378950867 525247631 5163210 213395784 481270972 72567567 514018703 987414521 561536701 691803365 230170225 475305215 732139446 125324478 807821862 528465649 836115736 413753139 301522214 243343841 877309493 22227396 335655311 84215971 474899418 723704656 572294191 915115617 594927630 210476141 976903727 740045560 907894029 213317740 56902103 342902948 843417825 586916895 647082014 814596287 783532244 4925910 533653764 456284931 679552436 612276746 65188763 358139325 718637977 322463256 324787963 423059906 840916752 176666899 105628850 245555134 228720205 530471875 20475298 242777253 896715375 478354692 288588116 913478533 970017625 93828396 510622412 369606918 500446036 541231306 297769531 156765064 232611412 807584387 142061315 12215979 965261763 630869629 330681586 240831891 261711397 678584538 908813467 111964607 479489270 664659075 817408622 966419756 621395594 581812007 70282857 986222253 163331266 767302048 599683050 138626948 129910616 283691951 836409307 776947279 59360027 507270982 158775826 151768769 795443817 462756731 902045731 33474113 185059456 681730330 1811700 255290439 218253356 510119362 373744878 918035345 371367155 47929412 533999256 671323398 661822253 839508153 230441167 809180257 200294099 714972757 643013618 115866320 795246460 858924021 668953050 932553138 249053920 264728609 789475196 223822454 428291892 574618361 337116621 321757563 306017477 2485971 374963997 218393961 141800038 790774612 552304979 464708315 874529383 950040051 597484550 598071313 778429904 37992007 1472257 15992609 626125258 542024325 391384919 319738264 868095713 500704872 122778452 875688234 275620474 615184084 320284475 911903492 722041881 763747377 692633124 535180630 266188061 519026295 477599659 422826640 630283490 703452331 154138904 130098956 572201783 375534273 948594459 922582999 186567665 225973747 319090850 628600675 962786191 140189418 906106460 989662242 429026694 308627627 275619158 182750818 323522592 345834479 534049001 443223176 801582707 101288076 699257164 613964848 729964581 99032701 616335839 597519892 184338768 97316270 107609483 446364655 607120158 993490856 621289330 637490424 239202710 891753731 435814628 116199220 811898523 381679072 992172900 419261221 935193074 209467412 542513626 855497219 524050545 256287604 383237870 130456013 316672773 886907988 646328985 365627676 101135469 906458899 910736408 741353071 549674259 340119728 285940539 952971905 111600122 88600180 348403473 860904838 371563117 941767240 229966167 269433131 749874780 521182495 215624139 432232324 471124282 598554601 115688542 90956843 615618183 36177626 306688862 803835464 300071015 798100215 314176334 298128446 338229664 802899664 370017102 297437500 529379920 915284201 274158189 451305373 447204526 229607151 317141461 125066999 925868841 511127888 201457045 434095021 456125578 604493727 966007759 190502862 597847559 243613307 61816723 968204329 808038631 689722769 274847746 746624899 269442536 519155356 828569485 414068271 459807635 712645667 796617507 600679211 659544194 871811337 173854013 164495368 612386029 101154842 17645167 753437209 10283615 92745429 345700549 244435403 374871515 180086184 374545215 679908507 467063676 706785720 382898849 980506986 365528371 309304343 63097615 555747704 754635532 485524754 268673549 706580321 817781770 845019763 332355326 206429162 731646444 957348461 540275203 841348566 981102030 410888579 93584361 909896740 875791449 361577942 849519640 403712649 652722822 158820949 398320480 393928909 488082755 859123403 830387862 832253819 150585633 319474290 454404437 562382784 979009132 362115765 970285538 238790912 871323521 646316277 123610436 527637242 967081425 389402545 408345425 553595386 630781943 508112906 366797359 266226811 897418116 187942502 179335057 666057391 591747317 646858280 417549911 244987563 767659749 25930113 66163308 502232199 820958215 402533487 922684442 509954686 321685376 135708785 355953212 780490975 629168380 539158725 463261003 335435789 915351795 671526983 263970237 737735246 191953563 363085860 703562229 965382168 196385552 49549976 17969442 79490383 925856735 629278702 49504469 228708460 891787189 279869585 23234989 513553585 556270272 292652181 434563091 650101931 546234397 701700484 125516902 37778914 285593875 139700759 268930226 495899320 566035728 201658224 957337808 334351325 792494916 196628862 255480278 720516764 175779574 510930046 599864553 967742869 301779537 500578749 511226421 997206279 277756444 964595220 543562654 51460456 599209559 471401253 993864737 144456259 181419446 184654573 758816821 492352570 203332323 732337649 305214406 141145525 484097474 730065919 739064170 917422021 579505466 276413710 670450390 356824789 949443319 98219007 714240859 839853470 561802609 681559267 51303035 4685821 569010705 810904883 234866300 319469250 798731623 661903048 959974950 92209264 126979043 159110750 503326109 437715500 81968699 937691962 975042823 882799790 482928716 813941848 154693298 73414826 891370172 927954791 410909140 7181814 974282950 211180423 753544511 298610562 778333422 376009892 515252208 619853327 347152122 336054844 821402852 222578021 386715318 24151632 565830784 290455709 146036227 558638725 71920038 741053700 857828628 628366386 455490652 765263761 345003013 80244448 349021169 936227494 409793408 956297189 570754628 218068041 793584557 566350397 302851137 427608322 644584306 693661324 365450515 33444794 974321130 558954188 439003292 127245246 493775167 657266736 571213469 432332448 480767089 85713907 437555442 12776786 864990332 970194244 56113391 609674613 681354213 972501465 56117774 533666665 308594739 372266802 716541551 649320814 197237198 411501864 28335916 556783932 375788968 509662632 891798776 537071938 392633278 676918372 423962128 305450871 725862440 734184176 555103701 607666120 528088739 500509355 415530036 369237393 969405200 111586683 725617110 967810072 747533530 898841414 692733694 326593442 651936657 146135283 691052871 968637951 868768712 942114264 677179732 136021966 611688918 89278930 333517584 247486318 921466445 737487274 651350743 655059579 338223622 6590902 392120295 410628373 50644255 113915466 438909545 684077902 497096693 224514120 931761579 674052270 951254416 475407803 866923699 317803618 563594616 473328762 634246242 668734541 689190364 770078801 295374669 735326537 798040092 424500201 976271808 501306555 728284043 564650202 321963750 65364498 143420230 624490143 110438605 220476448 105189164 529254509 917655740 25345307 195380648 307477870 326150743 825540027 320074438 901801632 276531632 959803865 420788382 848309044 566052170 919442834 621512584 732666795 328992593 238476346 217936829 144254438 638376180 173847854 578489291 597877004 635861007 149307774 854002029 725816272 289623288 733728120 973438272 284504246 213818146 257891556 557292396 513792540 969695154 218479672 86678720 74501568 108206975 370928256 518133764 800662614 268242872 464068650 775223339 180900999 510951445 259338504 279383505 715709729 473545715 734751227 753199011 918491404 330100911 209515775 397691990 677093992 14564236 896349213 611776371 960342153 598028199 578351438 429684531 94280053 837150102 520021824 945418914 520450439 399237259 948059262 153927757 255520484 872457186 710481867 440049941 315931607 597282246 716493018 116223886 208824147 383983920 861151911 905634703 281418777 8146318 32111183 633396164 805210616 62429376 938435318 36316493 373074597 267726559 722399294 32813017 96887685 444056073 702372407 433195489 647763751 792637796 375873168 793152210 394659812 233903380 745020696 63967188 770800837 170635303 341339124 515269422 226581683 239036254 734495669 874327286 2575661 334694399 302612488 183606020 271280080 922687319 652433978 210713769 421385731 853204273 660878813 969714777 371678755 121447592 385328708 22976022 653201998 204651841 12834581 266583941 551785220 161798574 823056588 882609997 165876850 997156902 485245619 256959720 713088420 958653277 489402979 602001477 639041424 494147768 322717890 337458057 606512415 446864992 630413528 930159589 795872537 902352088 876149876 732928323 21307735 286253048 42228992 747686229 438692859 833311950 763951012 537287239 687711262 337110184 612742373 963588239 695307691 567880658 273823437 460233578 794728256 280076969 194445762 227597377 381549556 139355528 411071930 372726230 359121189 543280500 941147429 691599916 178245012 431080786 841522528 916357524 372921769 404239538 23933229 509145981 384167987 304305895 651967485 615103684 296123201 534705205 884669646 354005661 34002877 31453975 910695925 384676183 160556311 931386594 10495749 741400236 449745653 539001837 165222170 603882064 639013105 386872610 543195575 865046544 477719979 90299090 427086077 411527275 430225421 559121593 456145845 821946491 77781615 222101649 822049184 629542066 457785570 55093202 128189657 847504198 490922765 130225653 949736031 296514464 714721311 52696937 45775368 310773705 903561077 192875456 816543102 638037877 166658619 169801493 46324940 729181045 951986836 853346549 91709049 205919118 140908681 73925535 38028763 253332511 714307249 248955479 284944036 946627560 999136888 18438181 78074329 416905828 936176077 683624053 60740881 58337549 101444605 725156663 974002033 443550601 948413713 895241046 698599321 486920767 809536372 990136214 110475936 83973725 287205322 432563901 565411212 245244597 684331838 887008853 52746035 539473479 588474854 775360405 585220109 353588019 79882071 179207593 25660217 586662610 153354268 602253186 158560708 463241107 704038077 451461128 237755308 264252778 804627802 24143289 848408062 373565937 199534729 759474848 235358302 461508253 178651 571612811 973230330 749169272 547973565 560101226 901780682 420154692 701245159 259450934 328359350 453660656 776022339 766174174 194589350 364809219 577109761 495248813 314419002 765220225 867476253 837715160 225936244 371957385 946145803 841095746 399131541 176124452 533872561 488525756 235084886 25976046 731764444 32935686 881417282 503574868 197302861 325812309 543817663 880341355 241118195 747616343 689613037 314501097 168941850 275767647 583211843 914726114 92176825 35508701 745568919 424239513 97710209 257677397 521145758 539476718 493435964 629099934 340775882 789391187 333968214 425614332 497518947 516591123 969807297 664389347 817261176 567602602 938578021 229807517 701466511 157092745 961316551 914504933 200958482 645454287 255773624 66975596 21861603 859074529 406021024 831486325 936922177 53991201 702656508 713787640 845677853 834076499 738983695 243429016 229254902 308089980 63198741 815073138 649625219 793410984 163672988 249622336 251839544 747057990 91573872 706272760 707201167 696496873 914753601 553085755 215214847 897503817 436892471 497832692 550974359 766651347 279950810 165774153 574636932 933771262 886867290 726820486 740853806 301156862 623613346 887503234 382642465 347697880 124424129 458398039 207563447 410013507 183762288 258869502 606453276 837606492 310660888 970879079 267394244 92090948 660185450 386310841 118617142 752263008 289351082 791854330 363166821 918858814 416664965 712195490 319416520 350546126 722756791 56249662 709967430 348860457 639848074 386621359 516026798 833615011 718546293 355980450 600917056 73702768 903615909 679276539 71194461 718750833 320199773 534855956 67218851 594540762 451749847 873100585 834797638 687631213 931871454 239756218 234455592 264518342 373945273 139522526 129437393 40306235 73445321 158494914 937500630 376044767 642122144 867826353 307811422 895866720 646551525 220602596 918834203 167602988 649385064 255999216 227107684 759096196 390226858 341310080 574765564 735851059 312665185 793919675 251872590 906437555 128872307 633893951 429745563 147351568 385095387 267566466 20102674 989344306 684121099 816892314 604312896 97223227 126778553 462580332 705757949 480373459 116901864 655401840 827904013 888746731 327536745 575159096 903828154 155713883 75120307 343203415 274924007 144156384 559980764 574936130 513072282 986775785 259543405 228683901 437512593 593984918 381474863 814187426 472098653 858948659 566869554 528556972 984948208 604608374 155532900 573105922 938236695 983813104 915407331 550880529 424756495 893490083 270379943 502347046 948476417 951272145 411857545 660128227 808618746 369482876 155797795 190280896 811192098 198166982 29625985 283433530 170996032 722802813 945017701 935162857 132735014 781197396 50828850 378150707 19535847 314740922 343583448 206416625 731278431 908189921 596537355 895149029 678492017 471934269 698275501 379362426 324860136 364172113 228391499 198932311 995284949 900084815 456357551 486169496 331052335 94280817 413108966 72974330 35291420 538799720 859651124 574084750 344952816 560779019 847187412 936173492 380934349 317594240 752872379 84835449 154799710 225991654 48620923 89167207 697375133 778553397 945190229 853458862 329995249 352878573 217832935 739460232 948119061 954195671 932299188 286618087 68821528 323686771 885138084 692888948 199562561 67276607 391534226 526351593 666858861 738843224 391810986 126588695 604263562 576984132 210324120 185255083 518723673 258740438 786698966 38456375 219225113 455877735 176810449 675508230 582632370 719586470 962484344 900109788 427577268 685993472 397466876 532372427 354286966 691306587 191665009 143226974 959102484 420893854 828793676 549398725 299531359 696011623 583136253 196656322 309132935 475624095 150045376 560163564 818192617 741410009 668125587 928828020 439887183 52853449 459982864 402554376 821355864 627164094 929155567 343447353 1828526 27517509 184943916 517338565 997072684 295171696 484602175 293764527 120146449 198671195 246429723 67566165 180146498 503945853 43586615 734163544 959883343 340868250 374016149 874362067 570341514 9043869 278592871 275779286 845579854 730309677 55182289 327135041 88128141 995089098 949798108 346986602 349747479 971978690 340837631 175029762 273728382 269803558 437108271 525396938 342461424 83276789 447263278 526102792 929206888 225081101 192656977 123409968 872062915 381220280 486018392 808678627 758220302 249244499 255205352 921564063 484791309 846355236 604936690 600667864 35198921 131293461 72486662 62129267 722329831 143210603 240528001 749210299 461529444 619069262 326220450 431498866 152792957 198362212 498728894 487488278 477570507 782226698 817933499 895639749 886717625 413105615 424727540 518680037 935356906 674434744 985439854 430559262 805715534 237690597 73345931 694125519 203954955 975992897 128331640 678753721 791787587 705819197 464229660 640342983 466669881 575262815 687852435 647146093 999052250 15839971 378959693 759773195 953862679 525410318 476281551 315135131 409939826 980451838 322984200 2150463 141427058 933432251 600714610 7511467 10186741 804749784 299532458 287921021 322342906 138588511 686630467 779239676 160715801 124481275 644702778 83193864 702840450 500094059 469970251 721663497 638743016 422379750 394339980 321395254 47049429 930774535 577323000 140701742 187210787 864364378 25125869 973936093 667792885 388513977 804139060 658017042 662296830 213454014 523453436 437304708 883908148 130372912 129078203 199921352 100479040 387603373 804443829 489851098 171333416 833684140 388017194 189937926 930183844 193680499 898574856 289640415 395712028 494215699 562478663 664450324 415131558 601364342 719024054 655068952 39725411 357671437 311296450 795179924 429693486 191865621 3022385 657087808 577409128 833811099 898990708 990363129 704398729 527806710 7070683 831260579 469915731 41689060 892858430 245649919 27619040 720665871 849651545 145444361 463191480 522520803 215291447 512502199 572995826 742592293 651357107 429647810 630680017 45496983 325805743 801374973 649761741 569116209 323369992 642643230 893894045 952518442 972248501 720090656 618536489 212759199 670971422 923719531 118929680 247248529 277930992 326915947 325427630 597325401 942609859 455834888 146717890 526101439 505467242 629889374 269054915 525155894 439947808 901818344 418762925 69632383 3024208 382658826 730266019 614226098 116995679 237482620 382262554 953624212 911605050 916420398 983256499 396444569 707893808 260314779 144250482 357304811 242564963 980723743 406298402 683734663 564985568 99746838 169700064 448024983 63979898 766444580 483117365 380794438 587044631 291253102 621980544 610687514 22491842 61205061 772603143 655474657 990075710 428819538 657804955 32857412 727055572 36796683 365123261 816823399 767827248 982198705 327950424 587584707 802848862 632110764 998438352 817008505 281880927 594954709 145254376 162629603 136573158 487138486 33991981 81735545 544781457 557826083 992847995 106571265 340983973 165748168 210100843 793810329 106934064 880558604 919463673 904161672 578013092 569679240 272074210 750100923 396705272 505098790 84098716 964038742 541332769 302415632 814658513 745783783 655287567 526652284 289591511 442165339 379058858 416205491 904179031 685087429 673354758 384579660 993000877 835890838 117420959 37004984 483675625 464142199 989374686 244239790 273719968 395247755 97249438 895342499 870739774 588871732 316658072 475382972 278985817 363498779 800514974 256705395 695644948 595850107 277831344 631278866 683538392 249980486 868849757 649356432 731729300 357728877 285303499 643048283 780960297 890845476 970974194 944111191 718451533 172080092 55881355 207086778 286778621 232767848 236427906 44963022 80989910 603740518 245240427 722199997 944332542 709031363 414107780 848846882 701677253 555064491 295435129 506312955 851447921 49720005 26145313 156379597 796063989 846751283 571603878 491559893 599013621 329282167 810989682 96594330 406791347 331317882 249562738 233943117 11430739 112374481 422622099 203081290 384087341 802484121 519913189 326440865 327396484 757537670 817295391 75876572 912587259 862909323 881767631 572814816 512797915 299602920 3957803 773766014 90943824 152044552 621828713 203380062 749668341 381218704 166894054 214564900 983782462 275881173 883207112 946088379 958533959 133222078 988516892 246529067 44121122 648995101 183567882 639782651 50097145 708408776 742970610 774842630 221246946 424849857 789660335 572689872 368365001 586412716 20943704 335097380 630635469 997105205 281610456 23753763 301657610 944452350 806251244 931125295 633006115 334347188 344719372 572489752 180289928 366629397 342713042 70568083 630063517 547356051 3989827 177762506 797026052 91227017 592292858 546232244 414264289 108825372 522502278 495696691 505330437 725547135 124047239 101512385 546376968 813442872 878111121 123451748 150712553 865895115 631663539 812202649 879352369 902546808 828316649 923322759 301640176 762732471 417586391 690962941 221726310 287275096 882646366 314698415 245833983 56534558 856915741 447594177 679583859 445151314 330876459 115580147 306384611 944335676 221794930 726185733 499054062 885504843 151773594 279025074 746867560 686462466 444950876 124580172 311855223 276211677 375052434 883346661 149242534 484749227 237831817 59326181 107075878 635216263 785433604 442209513 594433466 218815832 291714885 477182491 463391379 336637441 36382241 992860330 274118328 201119903 29992784 754616570 881406882 255205749 43749251 983701924 416389750 499970340 566270549 530181851 433419502 735094466 594358936 278868736 932278616 778279461 275437972 348313122 124115321 195884528 907028056 523871135 543057612 667619927 422785782 285958803 752403864 347000463 487665410 100046355 427025487 288736050 691236071 656766218 352453592 991009822 372842394 105297805 523821228 313068922 161569112 863909251 850725262 239582103 614013960 469514418 174240954 548195751 113981669 490300703 858776946 67275180 320220302 384100572 32472846 756461741 270361959 117125715 257950744 553884391 201992661 640837514 911012917 465472547 229648209 818557858 950379614 137469472 896680805 392287888 647095960 248973915 832121363 938694749 223398717 220844280 960076646 624788577 133386839 6158979 357274267 268679936 822696689 447354806 653882764 538783283 152240214 257058495 795277753 754651673 290507374 348655314 737343441 940356550 245027722 416849371 715839452 228021108 115749435 379659833 58813860 493701634 156966425 164431231 69662045 969287992 956755855 578834322 13207647 322768936 58034075 546438408 604932800 829416281 544159387 188406298 161720522 6663519 435548351 783439627 270076565 586546310 41275122 995229336 997593935 123682491 300294639 513827357 690206966 159790327 351754130 243413145 226031060 609302508 374873378 422854375 677761793 782583947 198484933 189049216 865900759 933499285 647016026 4689948 318880968 840122165 129881845 915701900 480094408 73436059 296485077 502157282 327308222 622828805 846568244 103344640 349491399 265036727 449770577 861682670 193370280 64582775 836256550 742986029 871662959 500951666 203661672 906928027 486112015 963442953 176898922 449913704 440975096 633061633 521096395 248312963 944934889 603965707 613983022 626709206 706783143 477139890 757204453 977160594 914221026 956032905 948006243 240133327 461048615 26162441 735832758 419298773 277372744 330074726 440077319 244781876 318782221 199593873 403952999 405754652 222924651 992542932 441387281 559795963 894052953 473914935 738804783 846377098 391045062 609751966 476182315 435765583 992840429 292799657 213967082 441661422 921513915 980714078 555820554 379341910 136013730 129612170 657275636 886476101 37101440 950149706 193744277 93297493 410198517 210467643 419075587 263220159 501273400 545346492 614699245 922883128 640862788 764704429 368475746 977889068 741174651 653680959 300223808 212976440 87803825 679729572 962474545 712870618 757255198 610955266 904330699 124172471 46187203 720344184 330003873 216312912 859783489 602047491 534508253 476066552 573605999 844348080 919950121 509992164 968312297 584116274 31306660 260364987 606734893 827089950 864499547 538354457 780308416 481136395 747178208 745911367 160792043 31537145 414090417 99572050 122622097 761508948 23179882 938282399 491129193 72217772 298631372 847945322 491426163 131432593 302299345 37713114 10896217 788014623 891204511 829016696 87619609 765719620 174979570 741550436 637570141 112394563 656527207 819930728 724941945 576847228 84135631 79943325 770114014 760264108 810823398 769327269 725049752 156776027 960273907 615631087 232099698 320511129 656833005 354489756 986444957 437937932 973120077 636462283 241288778 907729230 837081047 939122807 379741479 327872688 526273713 832460298 278031314 95711892 840163461 586041413 362601139 394937553 16682789 166303237 644034964 294067613 707135291 118651073 349237070 425025003 55494830 695981264 155758004 852347563 723883367 138144348 720705259 430791908 683389633 375039812 511200583 646397674 785268125 150874893 493025761 124248168 146840551 733810855 55475780 656707603 317550036 485883880 246238787 546705794 853706751 992211940 899560906 129237288 347260403 550355441 495992121 237750592 581843092 669649737 326825324 119791671 302852338 661282192 285339147 801732485 182339615 782609298 368926274 597028712 99218848 697310339 182774299 965223680 598258019 963328094 803841010 524441261 393998595 990085679 542906349 854567927 814840314 735132669 31086788 782258839 761402905 983956299 263514103 59629428 115250711 792895371 550403870 762600667 354226534 595979119 912652955 28164326 343938069 979576561 803519001 72665438 403745636 154789491 493140927 972108295 410414249 707062401 690128717 751693864 887709661 979776814 14276149 954089181 14448006 442148515 534299046 698477909 300429457 387213432 531845475 4500669 501728842 715825609 37112782 776743297 100054893 878860723 492843630 951824649 872699215 728861167 353840517 498743917 885705330 901885551 99025483 512005964 168005006 428460326 26498879 211200926 725801783 996203496 989509340 748727195 391615918 531001804 514944005 683547941 218949844 598069808 18303593 338458287 675641265 346465193 240638861 375751299 241072845 742709131 793305519 677839449 694324750 974574004 976547850 543729688 45351533 735676861 849287703 480044384 93938610 272668537 597622831 331609347 293556205 917673776 16009411 244212891 675201087 886904809 415370271 108931402 672747527 150466766 697631128 228326209 528396149 592576082 682382110 758268288 673335024 923598895 633520719 787727182 319979356 901787189 412696277 121814753 92250268 280246381 18190270 693003966 694473647 893671988 36718481 541180374 359753997 771169337 200327147 165878906 955610596 193013360 933431722 349459517 916892434 490877995 932514010 18590299 808289486 228261985 214480519 411103966 518785320 979059717 780120192 693838173 367107211 161347962 139944851 431257634 651645749 108881165 19729099 314088685 688365527 419186362 361663331 773390547 193044388 441531864 641717301 947428956 757169740 186206455 255441629 263408833 653558699 943628613 877477496 652888667 403379879 310928441 428054377 358134573 623829726 827899261 180112405 282761042 313449506 451359266 72506989 554231719 956475550 786982843 36097855 19500533 411215230 381151676 935365232 799459058 158593975 936159143 680716132 720425390 558850484 33912753 706252390 54877188 241783592 442783808 818694160 917072611 838265743 636742807 399824109 385492322 473956062 994269593 883221396 734777247 342007025 512050392 136581487 818227422 789490183 552236976 304532540 172671984 873522829 450567825 446954335 741907937 391478555 621299668 1675500 228631853 959939445 783866061 58036424 64101083 380798165 239387533 542431051 264440669 917214561 857441300 247041179 693981563 360137016 675144309 831994846 303004213 318209179 21994963 233737059 497029517 866001835 147858186 339243371 694959811 174600795 480793252 95614727 13407628 593184208 778593781 353301498 10451395 783293781 663405842 338341087 785025846 833009410 469481252 199305156 435972687 14550088 725027056 622317643 59560143 607990380 662796022 852108701 73741273 489704399 782171064 177399273 473395817 497222734 685501080 998860458 757836487 727004602 15004800 32898593 104634221 462934074 354281466 602497251 482557383 362883845 958158931 447688480 264275957 324994603 676967167 533186652 944662631 666479139 109949165 416143031 637107902 954084860 521042733 423872018 119274704 996004923 599165492 483941480 73373926 259785872 449882368 258916429 496145018 597721988 275269493 101785249 109045265 659720947 574820221 107592481 657353885 157216548 231711195 549370653 836089941 604245830 546515763 531107064 975069850 171300607 309012806 647202591 290145299 82597085 773745170 377092880 405793141 33800082 319167807 853952215 480066067 343590099 39660018 448928002 464301020 58078886 588977908 40507520 615122995 328207432 177622891 156525560 248216134 46187318 739570740 912156065 961654320 344062765 538688235 986038223 728511395 264017114 317753969 72211869 895350624 158033989 272676345 646529153 479516051 689558973 671308962 900390921 187219895 871364924 712564185 400558509 235851850 329978203 559985474 159814320 112542910 936982183 848673757 710734191 376027216 638490090 365648884 611714651 968484815 856132655 66928588 622796757 159165046 268691914 805277955 499744026 951813409 562378848 263997890 301781028 667625105 663749198 909485900 577531669 1615792 687121756 435584243 210460967 262821325 905156175 168177509 176848287 178993515 926015478 111074854 864743070 542752016 808706070 5592584 945741157 883557541 491660149 12563972 225445783 191416396 743194840 720805416 293622033 156607082 133999656 351091618 29473725 661144377 195979790 495418861 855430884 171285438 404166654 260247859 277038575 884276435 426631519 779107086 714533381 201077534 918276994 65090676 55362436 799302836 661179099 781309502 545818333 26861836 581836133 537045670 911444365 229607044 759821543 622575879 264982919 103921847 216676317 655364761 141274409 114113031 802724900 851847833 698015485 361613067 950505594 664723892 496948508 262752245 106316558 834104819 824183042 311975509 165159836 363292283 599659918 742566393 928616252 492102098 77110710 983317865 207772100 284964166 704031684 949267976 417496590 824097355 281674742 745520493 305006168 318030483 607008163 98241329 638192083 927580293 77430113 524698784 618320257 183442240 753544389 493537425 503577483 298777383 503636823 795568727 291113590 913950082 868234039 133476425 551870402 367057472 248597699 696847887 316578947 546041582 838597938 840072557 800193183 644918314 413078632 435476161 148449772 590191417 998409060 990984099 270767258 496430023 784222672 222897893 689553729 738721316 192516474 397073764 951790119 162182190 31811766 681779913 312433830 776857898 247462762 974780856 639445015 472143700 458181143 265610382 215431456 356309710 711707131 691892855 971663795 449512125 327057000 424359862 265109319 913013592 440828628 904036158 761961558 600714366 552988647 80663094 441959890 184186409 430022337 321386871 845129691 409988651 473579800 819714736 366855666 323779000 693438312 6425408 901147507 810438089 882447283 135457717 469571940 544439762 924013112 996005804 968271464 632429722 425045194 854484709 126732834 874690011 153736352 959418847 526607435 38440143 87177258 86362291 684147349 968383136 591091716 726759867 112035770 639862687 140808625 549962598 846129191 572317310 413217773 5297678 766591305 347279618 164818694 342147693 19689436 242181654 346410051 288339294 926960370 747929626 637931619 444358445 218791348 290170255 357915991 11046188 457355767 207699147 108916303 551968643 470672912 162648154 987072338 309140718 928406865 297775313 146767706 736012150 393763823 669331269 382611053 3294285 877521364 15236750 423716390 810752047 674360046 887096453 394333555 925397209 680954520 74404949 522082238 477031586 600269579 840484840 740535040 471941521 233488773 749122944 43879604 732729542 346500917 94348891 825469126 544215600 447140513 619898736 388350644 468021195 411304406 29458987 780350713 945792691 18464570 523124338 690649915 465553810 627388547 69679291 661603278 445677700 723010685 585630667 559735885 925474712 239573601 673124199 967592351 306836548 809064813 585386526 570464779 40493960 94851989 247329625 943497508 344053707 783204722 289173089 181491821 912125148 794294567 404777771 513159749 414480655 75693514 959548838 531448073 557832238 262285356 680624713 26116240 847646412 282591609 114241416 940565954 960883825 743496493 802039684 576437810 707294821 45884240 295593121 711553339 244485563 276860454 717047333 611837561 187412058 707658435 817255502 555565420 255625431 357065542 423463185 420759391 417319334 980929134 669700724 213067621 611054930 953457415 851169766 184529897 930268889 462702037 182391728 608531229 727718171 303168438 199149414 12544295 236272936 645013709 697158759 225163150 492791682 603600321 157681176 44436747 592141906 313471754 748045823 895483390 383974502 790300991 365270837 690134143 810617227 766367222 351559063 228060379 375499629 424813629 75054699 795416222 297174057 699538322 363855794 697734841 272676252 147864441 232805597 249013488 120576135 281753947 107570759 775232613 147443255 218704245 793302443 516162038 595208011 756446434 751160305 701456559 42578134 905691327 876143506 758563851 507457135 856067748 681967065 421994913 223055698 678612537 48137448 607632584 350287590 528802826 577721608 199759934 703244281 830314621 496677771 21979638 325775256 426644212 476281671 327043491 79014014 783332580 240278142 832123053 75808101 258078641 737145985 139638783 578577256 287188748 879268642 11565403 161761068 201480878 868412205 665828034 674254623 911302456 897339409 212066730 689054703 612732074 793087860 889430311 328889394 462742229 883827379 729021305 282819624 482424764 86422391 963820236 395580651 346387421 873588871 588471352 126856785 753867681 729765217 184562529 786365601 195828176 68577348 137076824 104318950 850902188 866144471 873118450 227019076 4700386 773451001 987989722 442468351 169839331 589796471 770391472 422916784 212714470 760538725 651830584 282141725 313306827 49213693 646994460 231608942 183284289 943725858 426654020 780658284 111651161 743684947 541001616 261553993 294742107 59853464 616029906 690291208 861088919 92835021 648090242 683944437 147444838 868636284 999520741 115470943 407925338 124040462 700888602 472202107 939391127 93953107 743803430 76734094 92866716 364973252 175628992 236049486 962056701 852099975 637539343 478145906 778477385 539345714 252626190 506143623 538011859 420351201 832239173 881649046 729459129 653529307 842297487 13446953 972306578 112245447 609251682 257038026 892662668 276264372 15820206 231591482 30285373 882680339 836282629 27056988 871092418 10513707 451923615 916200369 190812839 633533350 892911947 886234283 867284788 624234160 143898560 285953542 503485770 354840590 728357920 47602809 697572769 719914357 164924442 911975756 906069506 835614905 928340440 3291613 904329525 691554045 691091919 492267796 738499741 921965130 160478906 704129582 148201399 348569561 353281081 481855909 650152118 475975799 507019567 174070885 815826317 877620973 566745328 270231871 94600947 645616371 937151849 520659543 249822417 136534626 657471302 23537265 32648112 90808257 211882926 101029933 398141127 378766635 401353836 680933198 464903633 193780668 308974253 449438550 749144735 169087269 596130760 526338064 1102949 602072976 732138447 198824594 845746401 45445789 813046807 539985262 611340010 750050933 361754553 196645336 612798382 499325892 23260028 875848321 382309119 224696286 243496701 173582646 268988874 332689520 163198532 211488657 834803867 179649158 932840002 96413814 118293179 84915992 117447545 382345653 210131908 268253893 711194073 714891532 600546751 965018136 5946082 359207941 989020722 754825658 263717136 880257768 800481413 717577418 220728830 573696603 766286664 177519867 860565413 848539027 365905290 84086557 671961231 860862474 640426344 837683728 565105631 395063783 399363306 999700280 565650400 539702743 560616823 86789444 118224647 81937004 273468560 572199308 89578061 607197064 79075872 698288485 196555188 897775145 555716098 989714428 48562343 994860479 460294150 182130415 772425612 931038973 499412795 312333322 405734706 103023006 493328068 648905374 9327967 899769611 233791115 821317400 72826663 714895524 453083746 271591650 607446852 415617456 145605 651882078 103815201 607469964 562853486 487430495 163380416 573509205 692275522 202579541 805510027 492037661 873329798 164562654 166595629 620180158 683121217 544857802 487056621 802357163 713818268 537424120 898634905 488204309 353098487 939757728 297562082 807965114 800795495 482029091 671959002 701204665 779701305 38569880 475061608 790927070 753791480 212607389 631221518 559322851 353793658 857448084 348949590 936265256 583664104 455817998 155632622 139307732 105285489 88633833 774796660 616489479 656459849 12674166 662822840 333362204 441398861 238680771 298131217 762576029 183420448 720777287 826257167 50414997 459114022 839955537 253989822 958440166 758081750 133558101 3446755 129977708 805736706 182295762 191006969 767563290 866622252 774850260 253024244 349678964 189795133 806271079 786492176 794334835 323532784 577805890 754977329 503252413 352722570 899549706 197966941 297742699 814030156 557014117 52572994 876052173 102680018 37403036 444333554 175857107 720138224 972404192 155132621 836678029 870519002 228752746 51691036 53447185 7295526 500489147 188746778 717253041 798358153 178120369 372789864 878075549 297885692 723026099 439089333 169611398 478092741 833696304 293627338 733901284 549506971 572582766 822550466 370935457 163119002 103518382 279800984 522857968 454341780 27017285 891670105 670944148 699088569 782867740 444786839 578431424 831528648 751493401 223773853 846629445 70122246 89437207 236097302 113066996 259338826 641936404 602600494 546546277 377032863 200321088 337363569 702642879 260203449 500952755 607536539 176125028 383332450 821734088 91551873 292860708 598929443 759594656 849296237 765425863 837235556 857248858 641910369 117531922 751339671 295040446 281250394 694100497 302098767 335002756 934727129 610131218 815214443 635106344 683102856 484365065 761206734 820813144 984646718 135198193 501431382 396887154 597569037 92989923 304407487 66841498 396011496 339873490 831861081 834555744 276869577 284926425 84025712 604438070 294998597 564092914 765028892 646142464 887138837 31004319 219192449 576043670 39019386 202492461 242847926 985924229 957927382 770020993 122059816 60755636 556389391 191051896 863440340 598771583 284301537 91380465 864697020 367281597 327559202 271045706 311869923 414435107 302315395 461941930 67265936 387525036 643947713 685714759 496222827 157549653 365513143 835108648 293169322 948864046 793369065 308164943 403532099 818136975 700666694 433467585 665148037 93932793 95271561 759676527 480187596 533868276 991933909 370946113 981917114 73616815 292360109 855483654 599505341 162851241 257210859 512039274 894038765 518347588 465677140 434099262 909350827 515529773 469145353 603571484 612408064 892760549 499541278 710773863 777501777 93261294 19704448 867099460 661643503 2580997 97176843 717555956 365792136 346103040 431762024 285471197 333788097 494234054 144597035 209385318 598972812 674438642 368861766 772137615 96687092 891183658 134635628 444719452 490735401 422139625 233318198 218893597 568762201 29334343 832820091 875154107 867665156 939812969 666941920 716158729 952877849 5173064 429509672 704010373 588927281 136391639 356705155 181874023 755775674 653069169 893206084 810279630 846303670 370850384 50421692 132488387 820809593 993410040 961843438 85772692 570289639 516555388 352855301 941957631 139955123 70220688 587293618 653520454 686948859 822623886 584577124 608995115 31692870 789996482 646550705 636019020 110273218 873597758 407448962 282666380 505354140 283563591 893448214 911291495 472831460 48417663 849474527 838754943 52512958 704152630 295288671 350204849 561480163 636217862 180610999 158668608 857272705 876689620 953987527 244615839 879937260 273865919 479659378 191526723 256938331 414760599 900198675 240291080 900148566 170770862 284120494 505514607 892173141 777464402 253434181 340994065 333336320 955696262 350862716 134539871 144715656 450394540 27482348 671642302 308797666 611269600 519476205 821998164 569249719 873771670 595055072 328066185 306247767 172833009 219607755 461601232 861643640 988684390 962967141 653514945 366881064 211507126 100949292 356604200 784151999 61070459 387788647 213376319 2909815 90495102 607857353 929040626 21453508 670809385 446059899 804716359 702582848 287527347 390778403 698483916 37514379 228780943 327876250 159299647 313070390 749412278 369755368 475527617 192501872 646694120 80881223 62523427 897536585 772672007 193537040 714569704 26053119 898992970 946421714 386334621 980692225 702209686 545141698 903678217 326325814 519971655 788655060 363478478 153822724 809870685 402011881 713853866 249524412 143658634 129009222 765086587 331239510 425583722 700077456 297813722 575124797 533450676 21913254 954694931 124548439 23882668 876892103 211674776 672409768 342804812 396833124 347598141 335483399 549899042 830515885 174851233 734871410 507654005 271766862 641189698 260945120 238137670 605265729 200470531 768264164 400035960 5647633 667036046 433432214 985536829 81516488 790953668 265795366 455955859 659388053 495005608 58511899 599859981 511968632 116611040 603103699 828556879 826024166 122109460 920653258 646084100 516858741 401938522 86028966 193562412 836376296 88657803 628924481 470839351 8167772 456395779 143979493 807584536 412945847 545562769 169735679 958143484 268767246 620526208 524106241 163911090 529921304 549549730 104230888 816268809 504122442 680394050 823701972 418668973 649776508 883407114 243157606 969086650 67728341 341520120 233860102 675776747 120847684 37193849 257952254 932918036 246604187 833161216 137396197 212153700 537034279 591820064 525187727 642610192 822926344 815914346 404160244 685766105 702767903 704789310 855404859 285618580 466951597 266620663 73418 289477405 37439169 157941442 556258933 183104855 346537120 779581285 308867648 962765617 998902865 796173938 971873282 195903123 316778555 239428312 251947890 712225873 521557541 774715226 368436002 331145607 214791830 59020903 511653119 83524282 626827084 95063131 857712388 521767691 629931082 495582690 74647217 506932283 114639606 777161216 431205031 769394105 244291463 462564428 913424432 2705862 513546816 771318140 767328330 210106091 226336770 424092332 653695807 71130506 595457237 300945764 442324574 813843403 305864716 198186787 498091398 536498873 722658885 330804891 943581726 684573040 255364092 890185602 512799906 536627068 712841376 911113302 816913564 210915534 251430104 172490251 547113955 786284748 420565714 997882037 300645983 132874379 44798675 275696295 258945017 266561197 377946996 344640677 611644107 749635014 493479310 59413470 970657314 577161313 789413581 131055248 18626194 178819066 580014087 900965235 567355737 398351542 728684319 874610918 643229510 210439989 792701145 426173471 830632167 942602594 192665537 856411378 770182685 169122781 886822991 41882233 660843398 68097870 345370679 352274160 168153174 204932909 743659314 628918046 489187558 710847587 702438361 740624380 522980047 711472655 528627611 865704485 116097677 215770469 47882177 924526328 379049212 579153719 468955714 329527400 259255187 755941747 216228026 119889744 864566000 923619642 236811765 376529464 378131317 765924952 5983644 309762532 334438 563224410 232448863 170753835 809693994 200550565 550507257 444469694 409587157 996120573 331962825 259169205 468307667 300988940 661199507 68961499 367550112 846521194 585933971 898218766 136600080 905178730 315443782 748400637 614971287 190972032 108839258 203494339 111162975 925137026 397208254 141745327 949871444 752882100 142113796 126232374 678245861 494064353 643318212 648182358 144373298 754154313 522724229 197078710 10734363 171350501 879800068 626384422 826459706 799409136 861755764 973944412 121108577 319698910 277957937 67683873 664514081 294185281 18935711 188060153 711270270 54523760 476241514 792513919 973750723 883188507 545846909 518720694 573012112 63293417 601001191 550786977 167325784 969901147 431242629 875996247 630817098 921836065 226094444 353681425 888563923 370785139 883623421 22529830 388746416 208510843 274078833 683285285 277738906 355421916 871194416 338025961 439528977 584710572 563359130 862136903 645465409 211932002 72390191 479849743 870787995 927115748 828167318 649136831 985806798 267803611 569875696 733110992 83706807 851871558 624108013 837695488 535895512 871111145 431910687 188337844 527058713 552082205 303803689 149840385 94159173 361051838 912057477 608742979 216094268 159287369 336660609 267330918 237519103 65838888 692704532 527120780 52813024 298641823 238788611 659212993 589848288 950993666 979170247 625614980 84682738 775976213 774291699 881700742 736982225 21582656 645014961 707691221 526223678 128801155 424728546 175552329 72078521 664190007 23101928 875776517 47409098 972913240 387059647 521814119 318360338 136103811 508642032 560618663 876878116 770062193 659595045 516934540 694152639 708175617 595083209 157328486 257056671 613783273 456582335 807065197 246704635 263218434 165802609 500509194 723227543 794953072 388678994 641299160 491439900 28090243 515621219 225166842 953666186 254672255 512165804 149734797 38303554 816241405 506685716 161104863 23187420 927631970 232002521 752441823 506249983 519258307 615302900 846652654 722435141 332222294 289423376 918704879 344892611 359962151 66852092 396465741 973915259 702424363 650766709 20399233 179816096 991309059 182256260 397335636 139802067 10986557 442022231 502307487 64113671 353623253 594967172 306182764 381253307 797505209 55625370 639793809 665744246 387234859 578747423 900604457 6520660 396027582 457590976 694730038 793193945 755329763 38573555 143961827 133431483 72485240 490152047 681203092 553212872 921069751 477458431 145599007 623931827 455860564 789645955 758941239 824397195 389506253 601557056 690573702 316390927 603472413 440500880 819928056 632515273 960342354 234202963 924390022 760107155 954490946 449841125 196092190 946615883 870696609 714733297 115857372 521441524 161814878 593451843 678595641 122933053 968816368 413307080 409116915 736417860 708084095 44558644 454298897 292944401 782963376 608286132 746010102 99704500 900863303 386779015 279597567 923088449 555215173 117731021 653340398 107822315 920663280 570446687 591012406 123022228 220754851 271509137 770578190 78431981 67026314 532178415 213428605 886641877 490954330 890040949 711293622 24832515 648286643 780861796 410624171 327359609 58120789 554399316 260690796 523700976 188582795 236570136 878465127 832195294 43579408 77961519 318365258 499695251 336646867 267717386 71505869 57585472 646904657 887749573 700118398 278464931 732663226 135921441 2929116 329365180 497345767 630345034 931703632 592256578 623908220 436346877 230542802 13294894 897547202 881300674 369308770 477048207 123802971 991021910 782963818 161454204 25097982 310118037 79173415 232699779 879564047 935376001 931310166 527520579 215381273 481555159 636268018 602902169 863486566 799471919 505768002 938142994 988415242 500079606 837921465 379916039 321756087 187815463 514080510 88145932 362300847 238422655 591595813 334541433 398851495 808634136 528376031 61458442 655608964 29516745 637549630 750206445 457050263 403446751 301681522 405387169 88432055 64664179 972653652 375682605 582439381 239520888 38657278 813538365 870033749 802420819 869276034 857898621 734549061 260631127 393712377 475395374 224217819 986685251 976179314 622734085 498191066 635164583 144920121 149541322 531475381 190071147 177942567 938238515 497492133 260895547 206123239 779656423 221694248 129895041 7370633 584808153 27554517 292145843 5237057 363697284 708101583 30132816 738086175 807572105 139633853 591859504 977169146 288205289 38525437 282526912 757605049 311834532 573275245 855875010 704248710 689567664 239945231 787286626 61329903 120304679 251164763 243392795 359957971 843899203 31579119 58007385 642172339 466522284 794292194 945932876 339177588 976291937 797569380 854696913 337365299 31426334 589023349 239212735 373443643 835455208 571497771 180261028 459342261 203692122 208168813 580313806 743271361 972474063 967214288 817273993 849430705 189923981 747037229 246634330 165912435 359777907 841489748 397269203 71584450 866282362 345555230 564178455 654909 80292074 140468149 533144885 276788299 62218476 689329392 172913728 941111496 62246364 418193767 2464438 525063251 762054223 32101019 940565241 684661062 419373651 447530919 330832798 424129935 818493655 21733670 519130051 10419672 54606716 681958591 884969691 863455559 152774317 832102267 636708486 638187758 866480544 611617163 696259161 314092094 950547613 689770729 396588290 34508592 162862740 362048196 709154642 815715547 476295361 573950027 353094692 450507994 49469406 311086783 250453945 690518735 23877355 547303373 302156734 975821859 259091176 457366705 944864536 152969924 731047523 892195435 740534595 440960953 918470815 450887574 196023702 604369286 597873665 128890942 433276583 338742772 981662685 570972942 121972422 985327776 225478969 784529065 141311372 132407650 127229422 843258260 380590865 955120083 159215740 952253468 672691195 708544622 893494473 147895466 568868127 140932275 322951360 603552858 219903407 36129734 282840891 429181852 746555446 571190640 183588596 222943104 882305494 145286249 626570812 493337402 786338527 764635101 401468908 703104830 669254239 813397784 21342482 475436651 434167985 491121991 661671129 404992539 47617288 240272556 376800888 178399544 996552455 4095796 89445369 43911190 31808462 207596481 466186327 135156602 276158795 372007642 892667323 992898491 745700498 141127562 250163309 201205828 123048459 502865361 799355181 327211464 499211497 461879316 424959904 535464161 856599972 284151385 125825036 617486680 66647918 512316684 976816189 391573786 891442184 869085796 831327731 439454408 858574790 995734989 800729510 249517708 785108765 984436358 825761089 215790044 183692099 740635373 368179395 228051206 801368227 953628502 903911181 537902085 726918871 207355579 41237868 142235854 628043738 875836207 54607787 886443273 709807145 224971456 918319956 521605031 391243659 918820894 39763323 973739586 150249969 935149540 826864154 172760932 937346085 652845559 229691768 124714728 534112992 974959927 512568384 259546672 643304989 549984381 517698150 523203338 500118572 993561000 968325213 168710122 108151946 215403945 932824933 2950391 3541685 361024661 74296418 329850988 315897402 550457860 660621369 36851032 783753521 741092910 325315233 672532586 913346737 416993578 655501121 254692032 213144083 212942011 108310785 477411422 115724213 45179419 743890952 649736712 348921650 780403547 646645429 514835311 827032146 731086163 879942731 70209187 11543398 921692505 838174700 738791623 426539791 400876123 387197096 524819672 256217284 812473417 528418322 963912608 368347169 530608508 293222772 72797910 313609287 583276257 133506106 560331828 86924042 644526361 3518143 454665912 738358969 638435945 936020484 112471593 820339015 484784267 167656844 432419213 936318981 609650828 967553919 136450589 967827477 880123368 417072832 641389210 991826041 346355576 223382063 301977689 487778535 645685880 419610776 55579533 804395903 371485982 450548644 247651036 841941089 424599225 47135507 484820258 384992648 914348315 64622935 150256607 347485265 360054261 100810044 421065556 896701435 495182552 242715723 70358566 733392519 415624495 43043392 31573774 416744842 776696471 489655193 971233051 174666873 525370811 218726045 299220750 750174643 533653168 797428265 318195188 75990250 368294561 213057192 349399127 510039446 214821914 401821179 301032006 596539613 558565648 760839481 18273709 889176396 3254379 181402979 111793159 316998069 332311886 70252326 555007765 946433476 370899783 591031157 338827850 585404079 261668587 904890912 713617267 736471618 720159289 439420899 102633814 608779350 95426092 115539476 477170065 984291234 488491192 583409378 988499340 774668742 342209083 132073079 217944057 353660831 830403949 65155953 666549299 654578749 777234026 213379852 467364373 446123495 525544877 225748698 556751493 584293275 912614709 651425100 551220184 324064545 890337697 810055980 916070298 56508302 753519056 875828978 561790350 182980866 688878195 519113428 695231107 497213763 692086791 312640518 381436137 873384896 904956989 976250017 105542152 132054642 860084045 86393873 211534394 133276987 941950604 604292485 738565899 433987965 731758410 374335405 257610610 338789188 284596634 645624888 314567850 26126635 116821387 435150609 263065313 282599037 185127999 972848523 892526253 353988346 734315962 315694492 233819168 702227780 225671143 718920484 70581265 893017184 712720239 945963469 458497984 263125391 966419861 543283408 280932570 920952584 886229464 784455871 566699379 222130962 536954025 186787645 965448586 934440946 500497224 259569317 418405877 852390176 923391955 102739478 332412377 135568551 973788653 493246995 740025063 656037558 321397843 693203989 420597903 184401014 703969015 832708853 400042788 421623429 683394583 231943511 505560834 69901888 778217556 722567861 991201999 799762069 339703590 721970296 704789261 63297051 939302350 700407428 967064978 169313429 305692963 470342363 947818670 353893215 655005040 377442183 186525473 732928078 463836401 152238713 501896822 949249899 440079585 857191552 396057195 317783837 64167301 425201183 238812825 525150880 623654795 939169837 905545434 419284903 815256645 626574817 533966700 901618709 718318753 546382579 805142439 225688007 351074178 421311683 973415284 417757238 428506817 208620600 293354685 983314659 464009701 150616234 848308047 428916125 935576771 67985205 333142395 46808615 805175725 770109050 131481125 918032043 677792195 763364152 679126361 811798372 406158343 323484275 720801584 252179732 817354745 240945548 806707100 914951446 391504777 154736437 463527779 279402791 800069270 160884791 196953876 257866910 368217212 776846816 19184508 391708210 328115838 476358101 66679347 570238855 941963292 456347213 169311452 81465422 886704902 142042146 611118895 677935406 536509867 982055509 930514970 551308805 774122029 505097321 789220112 703307538 40300571 31997957 656384250 502879362 134437059 936162054 514209631 84461754 843628546 810723341 751021729 323496052 702529474 813300035 151463258 796398562 751124115 211296074 996164634 624539981 328980 89737373 18503316 900599394 8771075 252700060 941183267 741534411 88300932 585993734 470214360 820167273 889469548 186483047 621110395 157994142 545698307 422782512 483639191 278500825 561419904 606995402 827864958 18491397 639368131 978673548 112567245 99426911 132093481 360924470 642838290 265278301 507786456 295028044 8582473 854715340 983222373 909545767 612871367 415335376 964349490 988783581 38561485 895557884 630403455 650064252 507497569 861292650 420452911 827624065 749582869 909026758 695762904 605156234 423510551 246620621 746091658 734115405 686290221 99065213 311993937 310776571 409416175 98981645 860899109 448326088 859802894 588429395 568452139 614414000 664124225 303793704 18925868 85217835 270418289 626606498 862000864 291064611 917177444 602285433 410969249 917034806 645560359 140434647 828970438 44175371 898678965 727381791 169345353 17602999 669367198 839823136 86669069 745623569 994259132 551554342 797462342 630189060 883383293 626428702 611530258 286438696 974514248 299483288 715813304 68159545 724078576 880002583 504301725 471613386 818722643 198928276 794502225 632574020 316002543 617410594 43947867 362534000 974088197 283422969 322948757 375889691 539837275 51780080 774270313 542659445 331358228 472966246 88655269 370821118 349123806 9632034 832988760 837170951 136104536 763575302 132315461 950525611 954082374 844061449 661541869 239142315 198308956 26279552 317066849 285651075 849388003 540895768 867918204 291503292 132373038 50192923 509813327 117156606 293232321 708401067 899868125 599464014 689493547 988500403 185739259 242956142 681072961 473830477 578053845 789675169 338389992 238243550 993722903 202106253 471818680 266759733 880143725 171967917 891301273 378531992 940866692 319407703 963479121 585926376 741101122 124384997 847219820 769178226 488238409 944409842 825493263 881793744 719984907 28856326 164441733 750081018 953642132 713711307 302140596 583834703 710627610 589175359 85882071 914906062 789420266 946109557 686852814 955630771 490520274 323523389 799197238 413790901 357307935 363870896 623150377 161397833 730051962 513384936 215330243 903587820 736521160 668968068 383469416 163043060 127798653 433779675 149717221 236964814 267174016 841771757 737298452 193591753 123354506 789153378 33065341 369065494 363897414 142338882 679777034 987887801 393811036 707045898 155676186 513564360 991198188 40404823 702034688 714951064 513033025 697891219 859427713 91025226 234666569 7496516 675814976 756706171 284889202 941838335 655106188 526920155 281860389 921975156 268587964 215763978 96671410 305775024 213607472 734364417 486896388 156985047 52441845 383412531 707007098 738113181 927141533 674511665 409358350 759387627 263901052 853850692 926839739 232433886 844946776 329921392 351758521 760725562 990646517 905152786 773032587 202918923 506415644 551711470 231014005 517613788 396234212 704286478 135106250 542634727 149356147 634587333 847278708 733507216 96062045 947084265 905156194 378489460 70172610 646455056 397579963 226642582 328596510 372531798 912828134 444883193 667494452 652978477 14238925 695329103 649750117 678132965 621780635 643177002 172734868 646883355 626095594 896926578 641917298 662152515 938598466 627455518 22974993 229442435 481575031 54301346 227189953 958209520 956730714 933633162 209406803 73603080 677294622 8407338 995110525 687058073 737154827 232784041 768410106 911655630 232225704 579326896 445127229 603359057 466551234 25828808 610436439 281372778 458703081 195416809 172805806 237758692 813869278 415159126 662322711 244651213 541515584 872439506 203233943 501723694 394323101 791100555 468208397 548593549 581017688 288533891 26196797 519222739 78824293 832168561 715812873 428250840 103021412 760627065 863479366 254448079 911426064 902067994 576203191 225869993 994360729 350378997 751153682 189534787 891569871 707841839 617096473 417359528 599444274 231568156 145977335 29121008 579277447 83923020 670395769 430835728 440671475 343114507 800622168 38033024 273166654 205033188 131882499 234389057 40588165 358188781 187438037 615262494 957324284 635987128 514834747 923049982 214555032 204006582 553355729 272245419 706654588 882159589 572353109 667044760 378685959 25595414 933506328 73309233 445341540 670103489 409197213 735699981 804621267 509515127 508414186 101018522 541913898 930847480 174588320 989830523 623409826 148340368 65067169 206624917 677954581 139824963 429070642 220729866 583293131 894778541 552433910 937196899 461685857 982038250 475314314 826911570 42431988 762466816 787391443 189702045 669611815 376054362 767864665 134556962 500065858 896322299 343730871 444556803 460573178 130794105 249575954 448741123 590474586 523427808 840446950 614747736 688449691 460571801 373169889 487982007 610714175 914226451 287446651 200074531 581102688 244363981 51803275 530845023 564868714 622007814 340042402 36651623 237479968 825354823 418080443 49154043 173910723 839236087 718248104 599890945 707013953 819819629 665454009 996666078 330503136 930942086 296984327 392740779 568597921 489500030 950218416 130088940 400927088 61109724 134318859 498653016 58162911 236451312 535280207 68524350 28170779 953184721 261876540 780117685 146661596 285757781 477020491 72150507 744435825 988343428 350230404 87930875 625963600 446078233 400377800 277092979 91505080 309029751 359116423 503733743 334106704 379593746 514704228 176230136 666698169 391498176 21811665 796857343 442607091 660716503 41900279 116883796 856684783 25482857 740623381 873129824 370995459 800188837 621578084 434009051 450975681 74431327 272031663 674189431 549658836 952578878 109081790 750880986 636441557 146952806 84295368 370321107 278125413 124222691 224690694 373670282 283378060 702438567 890334401 819794154 4834710 131503192 500361683 870191507 103129430 214273094 99075959 9472591 139841785 925915462 471785474 426796657 474137782 903787335 609703469 707103584 503599524 429221368 20447516 920808091 880906201 684651590 289112198 247108029 81127560 865197980 308524855 915828568 422845776 942967870 824657942 731814049 350036453 376484900 309441485 440316353 733153444 774734723 698358245 868647952 190912441 772621878 259097458 497910499 186351559 989013568 273120756 545951267 232247362 828870720 189411747 856864210 385419986 66182184 687998703 937481875 660531654 993581535 42348175 56908801 121911263 481357941 992699573 662994880 97750019 353860631 211173089 349363070 126106174 248359239 588326852 331254337 623037524 34648120 254283187 917577549 912564298 147638736 602007170 218987335 307757855 82183222 363670637 593488430 857444761 193806362 331155476 746521130 336266875 375021176 718031092 773447189 298364660 831332831 907790759 275000713 259185878 13278723 905018572 957600830 415903536 268107384 889900373 146828599 339514282 232703182 254926253 840589254 803239817 101113940 650526904 750096407 368500687 929577178 403802569 487488513 747932375 762568932 225527804 519943665 495061398 105045880 192038966 642638434 767742462 407658311 316717088 276538787 68305078 288349114 924673112 940024582 254524235 814104073 539159487 479278623 909434068 476782014 591857184 75049205 332122127 920581692 729446407 146938520 833379834 452426356 776547812 823858194 440468276 755330046 347240669 340226399 682076784 887737311 798035613 511959558 948606945 663005532 446262754 272686068 188755377 888225536 55414544 743701670 285845091 914772057 732492099 414594641 871381505 69867264 720105640 202301741 36371378 937216916 438691032 63350234 90887629 600918589 233884103 332425161 812934328 508832953 653032298 864265545 916409137 354358412 408971480 256223602 931998398 844868865 39321963 759433900 749126200 344319365 919689071 437243335 309731589 151914718 821712879 822641753 151114754 129428656 938322113 232669504 12103949 286016679 645576567 818991706 474028010 325367819 659354718 107280975 308174031 958785118 543646852 431031913 960449551 622737817 507081874 117647310 612620820 177853509 398814722 182830232 405285674 216691778 508294132 374140576 365492551 45129698 107673986 552425390 811375791 501058146 829775919 670883451 785743040 866955126 516675363 482855425 990327721 765201 152417246 430990905 807911121 689722193 716076758 833036667 121916425 385467225 947129704 240212436 237859526 916843831 755261197 863609480 759914044 76006093 159860753 710005755 569528750 188623574 296306922 757828884 825041299 325716297 166041869 356917027 554427665 654283026 300147815 49902195 806108085 475184105 941952655 664526691 858646989 209671184 305308022 174863946 766452075 302244605 458186758 747242515 336446923 453724174 171802608 430891964 578404480 317301111 341804016 85504565 489544984 707786204 984854979 773662602 549178043 304330694 96085826 425877753 886312342 180559102 495771899 651760285 17107300 770293810 21833802 897317821 302016332 964046083 970509596 767895893 481654670 624188853 919227066 319733840 222992665 919258958 769883536 915247384 965363098 828077216 357299547 253673228 489041373 909495185 192087661 452872723 387166228 77094136 822091400 348022495 309800447 340400041 238518302 536682582 416845361 761239836 349338754 759901421 362261948 144836364 655431643 439973607 274196239 858079692 851206437 740644903 575809927 695227269 351644634 822062357 711944120 487364342 27165378 217614491 853693385 433546488 118830914 23828831 546853457 331267924 991394905 413343924 828485331 337989960 165961696 556858695 790721577 517460620 454164715 324981358 86222143 815769371 575679620 861780944 99806224 255859721 810666628 768454669 134644748 442434778 521093900 247693151 848626767 209187763 375584448 711501401 446951335 448560304 908635985 632558281 482145912 463461182 703393085 692103358 956608960 224974859 165852326 888371581 278420146 383762718 398566979 347224213 372261688 719410791 798426214 490314744 611935842 125038247 625986518 186083124 130999645 357342966 72685683 343643019 27416726 482712215 180315082 224155996 593364520 7702282 957339459 860358869 577942645 361929180 845251814 585872684 349228721 505212580 451347953 32082079 870786130 278608744 748145973 437094914 892482682 1430849 485307237 115573822 440712617 344479253 173948659 643633547 695086679 766846161 658104638 308691094 7341677 35725899 963282047 204807021 988264597 664858069 98011786 280426542 990490215 650143691 378491388 548423025 146467748 829604426 21857392 829795683 967651159 673591103 989302244 375289972 91791888 747209560 392431261 633090735 544763301 135628528 704581046 94839780 990303265 871664646 446794158 137116196 408043195 897596895 869601308 734612432 226192060 338116954 338272558 964353388 121311012 145334667 647647464 981640417 343098062 427376397 900031169 332483540 783873267 332973037 584895121 532566384 778565615 995761128 391057407 510630149 750430955 766023315 785304984 983443217 45335694 382568755 842452402 353143744 434748856 349680291 805016613 288555512 610628908 207125933 118967609 10933852 618941735 572331357 123171830 394332138 275423083 848372234 380063861 942777904 148032341 799100910 406896821 727420994 968611582 536560617 478996299 566710228 772501582 996988155 442254294 431626593 297883231 138395725 726292054 798515392 755545102 606356888 893570797 897607707 940114730 426482406 775231542 502224534 703927513 751616378 742837473 845326186 924573156 870878909 997313865 450442242 746553735 42860247 879548155 478658770 961752334 602952061 857322513 712390859 85975489 216293633 789380238 390156415 150315156 675220512 608830463 331250201 713524967 366859937 443218950 994034087 492872327 373132270 884100067 932695139 602086165 909235239 735486883 159739635 381309058 564701087 609455104 119888899 626626817 895058675 80455973 135525461 894646981 645004890 385626551 749189696 379368139 844394822 417207866 813914386 253995522 817732389 505716774 806487716 955796845 442898482 182706500 765102780 137140134 317742946 60432433 862477801 36087418 394866562 529068098 346073197 379110308 707384066 478317060 46689612 738683622 321539659 85734635 842985011 898118829 417022523 736934400 202448475 189407207 93935752 223446848 779129575 610303812 878002379 68962541 898367383 501949036 207380374 536455002 529098553 819053037 456799418 289154709 685741156 791623629 329362703 876192767 359903594 418547948 999606345 944962488 277367522 252699216 512404726 373886630 998401657 311214317 55509667 173200118 780214418 182071487 836578644 968698844 859584297 347861717 511068265 460031367 366373920 953710228 785679137 4497379 443152978 371961081 39218542 964777111 410515331 341708928 720123998 69455186 269191846 583263970 26199803 682610938 60373977 916955613 95983425 24626871 528076775 272082069 377474046 214100662 240840975 270393543 995107334 626691510 647907853 130278493 354419141 495145944 793115763 574121105 682260581 684925568 213658492 12178595 401138117 581053712 141702136 168990326 140673415 198118510 709004120 718243898 132615370 678216792 151594100 181995153 284321592 386233511 107862020 197674427 272388360 424664867 394861538 830983260 321811350 375607175 250737963 359443133 208385408 831336809 804654520 80070344 89727994 928071617 170207958 162000166 970676805 437953467 29256929 971885760 713489714 344822753 896539676 930677995 534849728 306927399 842754254 989437979 298674012 299010044 39507262 264740431 742263291 541968698 836977341 860761851 617686207 451189889 468259386 177359256 421361498 75640800 121733683 544186137 918134267 370170364 503622955 92878835 480272505 464031975 679065462 869013913 121084158 731795516 158875756 231761972 668783233 283733862 471274261 676563088 729265558 759572551 247595719 338674871 420554660 188068663 801073258 618260270 287239159 895600762 209266241 664059847 131527514 812124862 289639730 26068378 637441587 316733265 180060416 754928479 925437540 429927317 484373397 378045599 141595390 476792849 752007689 602058425 281740328 979834236 565115950 347903332 402045885 214350803 164004287 687557752 934390882 676685670 761220914 596206373 319850497 898604459 905362035 625194842 477087433 691362318 785415097 869318883 981335241 131857223 844323101 999655722 41078080 352099428 349754793 184570852 380212236 346295082 540135847 113438707 371477826 750720135 22110012 388568080 429523079 812771521 458904442 391272291 449702824 963277201 995611866 967169654 362818804 359648243 359677865 769892925 818206625 256505612 241169852 671744106 967301757 985200178 202928211 565168381 675598910 761650634 481335934 826507956 46749980 697980012 644310878 293150277 235695747 216427896 643522228 133814490 543879109 943879290 448264574 551380009 30563608 616620808 684423359 811996469 923311621 474813726 569231884 79402431 156935025 552912169 742214432 311238282 509337772 957411855 302062910 420938478 198355726 557280678 637273783 68588582 274930189 626254674 244936055 221801462 531492612 529851655 733911546 529300633 617899155 357786475 767745663 739540872 125545956 623217626 615874226 248406099 416562263 422381641 377146121 490401351 848940541 567936677 511980331 450774008 982254332 483725120 304658083 844181507 980295824 472883046 290683472 512977170 129612231 873293595 530322624 73994345 4681018 405898382 130569615 425240245 627246224 939320076 738426501 946559497 230826305 133298341 346464685 87785046 422657694 926687980 494641083 12817137 450379954 107389289 447591869 772116021 514850260 400887388 940482526 578766542 796178494 816521019 486782281 309033628 747149353 313402738 813305796 367577782 990714465 514014652 301351431 508825821 427002226 94580238 941542246 875377321 335984098 606762779 680781066 306460472 301776757 825294805 60085525 922855431 653359897 693622864 878691076 843017659 879166908 226488482 711553726 576382230 968503710 336277660 635183104 834438253 65660289 510612733 285714881 887243834 301081116 876148251 5266684 265512429 500618567 343084373 909009097 544400656 172444422 796571581 501990294 298252363 693292028 832202955 419467978 720827729 183863823 419846911 991131274 317746850 394849280 941659606 821796943 607072394 403345734 639977684 41140551 790944878 202367188 510561262 405572727 678789078 288124431 231961115 483958723 289548077 560351594 694124936 676880951 462298653 502579183 297388385 580020475 263566206 478006475 744854826 125914607 662349489 527378076 102843208 427985602 293001221 65113269 798762974 461454114 31654082 302068509 429944683 785462693 911574652 963127630 374987331 10677629 464085668 344856444 912070170 88011063 594986992 78578815 836533477 681869699 761069197 367925973 573705092 388679447 513450677 221427045 75090999 876986421 530708939 436608140 739171524 847901400 781658688 9307454 936526944 941591101 987994873 154592174 557080015 859339717 296588543 54177407 585083031 310678699 54795348 561134185 328404685 541839526 521444169 709543621 764923037 951199299 651928081 165653315 328714757 824615931 341651111 360988728 570598247 570569250 610793506 831107831 890034133 997787068 941046990 660335012 165607963 638630689 921171441 851429703 567836128 538368946 672792802 559849827 322488000 104945945 517349960 635645709 745012194 235089460 116406663 681816455 414752936 595371034 784426645 843300181 39080825 602191329 19107272 822899639 69036262 441876021 108697874 529837683 262547801 863513558 905493999 11095066 533837120 241093828 752340253 371178837 844639621 256681298 231478366 811533154 56990407 744724414 12272358 660505490 252075984 588098543 385821290 889956632 317296761 787944115 689958168 654637513 460460856 984647707 841211942 184100558 972968683 685217335 513436775 591921950 878206376 191347496 617435114 9638474 197748315 61425333 886588348 956069189 611726793 354678220 632683550 373950125 602622242 764545598 700030668 708845756 119125031 196703147 146565111 197403370 955403921 264983097 67113423 483489799 821156305 64727177 300439288 633129838 81302041 627620413 110780123 495879123 805271264 442423843 629099904 182144455 216302230 966825947 606748552 258554725 30530389 623117019 310239729 136159653 50960139 595111237 687306406 340323661 440120917 198005859 335115583 556347286 886090420 524838004 537775790 397410311 633959591 187706422 613076734 367379245 902210488 93469627 392337462 855848933 230211113 746990096 820551186 147427095 90546692 899831635 329408205 736561740 946258487 267955905 935007337 618663300 834265478 387427460 274361547 670023851 796158587 682059891 803451009 476730107 457209096 808411015 8027328 362496014 570398763 942920284 974786112 11166273 107438451 101281539 890219286 568981461 860512842 994789994 822940860 328416583 517569498 858933427 445409294 264768732 173709443 287517798 695477146 200369162 669720953 206225038 1907110 168171778 177721177 973634490 30934321 27609289 785028008 32526573 790056130 705959907 642200055 227630254 107114955 30039552 434360557 386919638 294723665 616164476 130650659 871118872 104025424 559903903 163914546 490162408 449361899 632868171 795703416 658159482 100026295 206746627 591601606 683153637 42509281 403158633 477560716 33621250 688230650 200645505 111944202 698070355 702156646 440473678 771582288 760131781 862926451 115018663 676961309 360581401 274205769 917474214 674297708 46300820 412504671 519667851 713541275 511031542 895635595 686911267 354698966 441337912 665180380 849086243 106113811 654859829 1613046 973474309 217296867 466100750 924127369 589218165 190432441 232054807 424383243 904185338 89119649 26681659 273731138 894935910 715345691 531778350 480988961 731050675 624331604 827120653 219530831 398853016 719938697 98141675 58447719 703734974 481469353 645936337 23075836 43334974 604284348 893847320 17096352 15689945 599288026 405630070 16154296 182999801 952764007 320085096 880415028 38990421 358905569 518634999 276615125 144805913 308581623 738452871 361118732 772188330 451706953 95278697 377120187 726491958 29380552 440378920 762967295 90543689 607343644 564058071 62060449 218720482 671821018 387526790 520818010 777413873 171669607 730202629 474972627 78988617 999994617 37387535 807566231 436559784 700187810 598990096 759555941 687344868 671732822 617019447 278472480 578092751 291713836 645974863 872152690 461628283 600173039 250283692 340744111 374617840 247805003 141326101 605662861 438896851 828767149 646993557 940667994 435607699 709171357 626052838 984811298 274660209 805053111 316182972 404047959 829685563 180123046 436299590 837162132 44890277 330624695 125068026 44324120 497142255 188315237 25507348 310387329 843862194 200511643 87529477 853341690 446801988 479684676 997600286 226768324 68752052 19438615 118641934 419614738 320490123 434729670 465076620 462104103 371465026 202620627 101337428 206290647 774229170 132849744 804425228 450844858 435799971 524513898 821071707 350815879 534252666 120155165 171839386 404882289 965419316 836296838 923570212 267655893 399908708 479130616 534461125 56192871 787927502 982722309 960848533 857695427 871937425 9446251 798457338 261135766 496376626 685541338 719615632 379504014 648348929 602997500 615314136 485530987 373816700 235988835 659749568 896554449 745765327 885174785 914167923 173971820 66614347 819453850 182027630 220877829 789057409 315151643 210526437 718203088 85845517 327877478 488099865 352116406 818711452 605122043 473482746 12363844 950808278 149352555 157175184 917422619 610196665 707640903 52619642 809939784 997989796 938882563 385307220 797203434 198277410 470176229 415652161 936563261 392015298 922086447 40582976 499458849 25009595 663165968 868800447 754299206 357428458 365177759 499438470 835568588 128110924 979617685 709674422 555586208 237195344 239962746 124320165 36742819 317448376 855576749 382293677 169502697 348014718 570032297 379819962 447257772 130857924 823171704 778791500 635337582 73466759 766221498 251333923 972890235 140589586 456122582 464252726 145198755 966729263 98664174 252902756 247698147 8267333 333851565 886496024 588173382 79487995 442503521 814116889 899597334 884460513 698401366 250878431 709717371 741091715 359068387 930458345 247369085 488427983 622670371 882867095 59261628 759865414 293826729 594381042 964598348 47137156 566694167 287928329 102341675 167066596 149476863 104036567 546480396 880372284 475591619 428316601 30684 267575733 656476327 880560569 938703856 925670708 812677366 71280345 917273535 212412621 116825937 229011947 409328625 361054105 391047272 35903452 553166725 892970059 998361403 758951481 909962741 551205845 375179537 900224964 674457523 746839264 992097390 310215458 961067976 588775263 727570451 857643920 139845182 7644902 186643508 687747553 616216714 744753626 829089168 507140238 134385012 714107933 810828855 298029289 417635829 668296602 412066434 800338350 173283721 751820390 787096319 795515791 657447747 845160316 757096003 719597377 641595727 355505663 648458375 407814574 169605362 402169158 341563049 502635015 72798832 329923750 117431413 314205781 910653677 76070782 271928997 429078896 485976721 431608202 430827112 412247093 682276351 73545188 705321920 314005180 669082284 488192236 420511924 461938467 353209378 880484656 903050846 164454328 167409392 623869889 750681671 560722046 62163735 21121374 581183274 797259336 144742006 429054166 825004967 826734862 563462476 411725007 415935533 913659373 234161726 524210358 246263936 245894736 706601557 582292874 937358505 537798123 669259697 520735472 488187357 552397013 295504882 845284099 45906168 390853068 598062742 194323523 737656256 981831752 141887430 115321155 668494701 115177074 578135447 257561101 774946928 624177131 69393181 29042015 146991367 127580710 694467976 842344678 467837262 769907904 897746399 784287151 430344786 317601425 640145244 278494993 428489974 125374158 560050956 902348703 875404263 53541630 240752451 764475709 432133811 47151626 642289823 471043068 456592106 372474427 284436197 760043451 445120376 182425226 188985379 13846813 625165190 381881648 794702963 465346765 687005146 388421099 362465392 430796844 157224498 795969629 57291520 836154460 635773896 29291242 99847625 60322083 81255829 695968399 267230165 501336565 480213124 98905427 919933309 420062253 628728137 21480537 234668384 499456487 520975488 229553573 398514356 326353930 959439055 883890648 615444363 691170603 883427021 180545526 473347531 221473992 230337827 441572249 578593510 262115266 216184833 566911243 733694482 972829376 624313564 897798131 33129699 384245406 366545686 135216453 482487132 950748237 483385743 743743597 191488642 378881099 336101389 58643732 303366932 464969838 196738843 425412704 509633521 16677520 887868707 115014026 616351848 425946650 214349117 184270444 661406357 528387642 996052134 864109438 756728913 485668481 52344378 951262671 275468217 298472289 745969197 97614197 762547267 566518840 899849706 744145975 379997181 543537461 236305778 374074113 217144061 883978956 289558000 13017917 635124643 700638292 646149113 328174053 343547135 266623023 103293016 833120228 584984592 363005061 529885986 952531259 114129334 938834428 967351962 608830290 320702808 26420489 172298705 352891470 19694921 291698224 565955285 713230873 982970937 502506141 27104126 94302531 839913171 100199711 657198251 402650442 453774557 383780971 135239796 206353852 673076086 612330006 411874806 593055965 378326291 760904145 19336734 735689779 55378273 121156340 300963011 580848493 145661404 680990124 789757196 238017706 748467014 864491534 800617999 578663488 531211704 238318384 953423307 199312935 329889380 113574744 587683291 507884867 945149226 596133082 281687918 671673220 66951488 25820261 173958219 129020049 273559806 82050379 281773123 689550995 42248975 394463609 813120809 878219879 410504241 381182842 602500247 531705825 910593002 396708959 534528490 532317762 938065088 679628510 539167753 79269514 103095221 641700864 329623372 207529246 383800350 542975984 83809508 476237009 673265988 344536231 597057467 293571624 365442735 690449561 487576682 991861650 885150715 198867744 646471047 208927621 852877448 988045188 819173601 331898508 497638502 78129028 950918195 342505373 864108841 907952227 630569805 651222316 766844300 869894643 780345543 629117527 428515340 609375892 488224258 575500888 571075602 459836861 933829695 213691215 898971284 190016916 630682776 258379923 919815643 328265531 245252918 387185740 521737111 857458781 719852153 453864529 310552979 847320042 255427834 26499564 123973571 871059811 681539764 631964920 568065329 474744401 506251779 147238670 832449977 859585471 177376075 765103864 429398429 428289945 948501536 571107294 522561996 762888800 114812075 522746258 483642081 49107837 243408518 328099951 572387095 763978167 473030356 476045949 386062003 786510989 70786339 433523310 939137348 754884944 367577706 339287555 31632263 492179364 554397161 770894270 508566846 119940402 507424176 198304975 459125439 179622567 64289732 318808267 39388160 770145335 188300300 953307306 972826662 257653679 350965531 497760177 294007220 236929994 503963073 199464080 940354651 342515947 221133420 911994554 384065816 877643171 318565104 439263986 655745878 469603345 588086945 853963964 270539965 903254843 81954616 160479126 918058307 391666328 143581574 522585511 992737360 987357244 159634075 500929307 531623291 569948738 70340170 482038496 463143138 19657281 898109888 206190800 63345069 6783675 486945409 212743617 576369159 622639791 132956235 405944793 67737242 624386164 58144400 678023837 68419765 46058486 33577914 279290076 71548178 568541512 530421073 973732328 79664241 585817471 960246414 221095585 88721988 824280575 504867413 568727084 362433726 347455703 148925281 822911218 508647210 489367787 993732787 167580275 195249163 570453770 194499987 281774777 296908903 583112478 645610621 40735653 229372512 585374524 969759926 836123864 317992155 143649091 268228249 533308915 140816774 895784371 313533706 491426274 799210616 943958787 208507744 496594389 854465385 373145065 308629455 950294800 27168287 849939051 307575921 236643504 175223140 292580212 181012993 160232499 5793705 502825611 909656217 538058289 797307034 982482267 859080198 206470069 658788134 834821971 714438132 652197358 651822246 472908562 26759626 138214361 820602228 649321179 663974088 838421465 223952618 101217629 82466218 492623812 666910626 515195321 728625006 296497330 312986097 302814995 123037337 549449607 737283051 962085740 247910668 181529390 345720673 27216118 691763849 589315734 11161169 383118435 277579905 692824293 32227683 522987103 179390712 47745305 230963564 281877171 445266451 796541459 319014381 137920845 550569616 320886638 570667259 285192986 858343737 452968318 512250406 410253131 993437096 693626522 361817282 215232273 619053516 82276924 450816711 34026585 299887142 299224584 953092730 91175942 418200620 454001804 462094871 820289173 842646875 14832361 883574893 431479973 610729566 137898678 802285947 907569505 802862571 116272470 920475701 78453352 167277921 112863223 986325233 56981910 724135889 273979924 782108338 58583202 66593821 441078931 495562110 309933354 6138074 962197528 919701667 585315038 956045268 750674116 671463064 940336634 746486103 566107336 177900617 507261189 669742532 608837710 788529213 938624660 331459575 349575915 209277738 674684359 426612922 471462415 258336496 47941119 647497223 569105525 536242871 405234601 740613913 663618246 654343817 594959605 591190713 488075929 413080959 326367835 184050381 486619022 719274418 939327841 206189494 288375316 171162590 741110722 51985940 115797741 426529711 382637990 524450311 98484022 537321350 490243465 312839162 803911585 984973272 554965953 387346903 6768137 166496756 145853894 624209679 915329402 535704647 616679583 330135678 517839175 95131698 682737598 659774287 421575798 673890793 841983396 279171729 622742251 913952262 220262504 489710212 808588821 222266643 743399779 743703852 448412524 531029715 696283097 238813052 447565455 220442399 230039113 326624350 216910808 95361078 905643222 933758677 100921565 562566631 764450823 993690424 289435941 417305316 309205145 950043022 987778810 61043889 159043233 122656465 677127717 481499190 948800322 426479088 32052039 218563086 716494520 564211682 222579496 960084519 144072702 922565447 740091240 261006679 177095352 798654247 553329099 874291108 464307856 967783517 893928977 116414359 212369922 235560026 137688669 723449766 294479498 47364080 896993820 208555857 247827202 980923901 38076995 859778437 476103058 903666991 53285692 914819437 658820542 434815933 857266511 143217874 23570189 806135645 301231792 64984806 882260768 305183710 551411006 963650017 744204401 909523415 391893090 871591555 448982707 651746923 216007040 641872314 492807298 628051410 725040156 84688041 853330172 544007536 188034202 529335549 167573108 242270096 431035675 578109083 964738387 598463541 353558473 533234741 860777727 798885280 606877316 240077310 628384867 8196954 939904012 429027906 224738366 585448457 956722234 815637686 289492499 31808038 583458105 469737411 557105107 806837407 649239789 774207365 113505896 604285215 364011315 937652465 100736039 959312201 489907203 810936801 396972720 491722641 804743572 347280038 19613175 184418726 809797171 396513508 167905101 560681065 686762514 201192451 464623243 293762390 482250032 804358769 385007248 329805338 880958528 42378688 559179708 288709465 406677721 72558783 19890795 15039984 894961720 737407380 300261267 711966380 36218332 757790006 477753351 921139599 550643388 162627064 96285005 211074443 810508108 846937398 396190340 147526977 237397380 999887080 153860164 468866134 252177958 264461255 606578360 225251755 430302560 558139509 470471031 744667871 752881866 869010735 863566211 551755021 747700535 140181012 489851283 403326158 999084909 649046729 762356865 207587612 318216885 861401064 846064107 477354380 401577604 313254865 302410463 481254362 339060168 677871155 865306972 990129851 457733507 33723617 441593321 103328341 411363758 559771657 123795181 235445742 30820960 440314184 586193927 842682410 628816044 221370383 607903552 509487193 491359736 865317324 550011050 272455243 479254697 199592431 503429435 633776685 253732226 786426656 793763943 573376147 797597148 649674748 797527089 992345877 157870111 827734375 346060942 213317669 630451796 45030212 84387332 436764109 494949103 31388165 50337616 719030570 742004287 75304428 122708064 1114103 115672161 715272837 713612533 837990830 462643529 472712597 228992094 491759644 285283021 233348340 168421088 272243190 20456606 389410366 209108455 750234584 474558727 695305735 384736461 223653600 829042266 946293383 788755111 421805627 917791744 710744493 420918774 266451324 198589176 289159639 616153929 687922512 429732034 784196248 850245104 850495822 851815712 806837202 625796245 240373459 476206148 667629936 443428662 185084493 538854592 210531489 128440504 305725273 749215754 388746924 332607832 719091518 521373258 728655189 967894223 720869226 434309809 245069718 171483959 895807798 984143346 700979912 271178985 7499928 487753178 441782839 50579492 642591524 393890207 223075646 987116541 470855488 722060944 11682840 908024621 992570989 343605096 199513889 831632 428341079 675767105 661023079 539789769 690356838 241219920 91354059 735118931 623196689 859500468 857554310 491805216 819602862 322412145 313700389 708462308 801636120 221316506 404956474 893808849 540219974 569054394 980260225 425710746 807703528 16962296 671262014 71832667 518174345 928557451 628103052 506289411 455529483 955161385 259306684 980505569 264146601 100683122 195299906 397440608 531182935 807489019 274406388 982789795 980209590 503716247 456523251 987794952 516113894 514497554 5025946 214287755 253353101 290213045 840967967 363348022 406512685 204834060 323329337 860405390 674108467 257901103 504365418 807868884 936015913 856416782 867791466 456775997 759594231 341399262 283752052 961126550 50992183 544879926 276588839 368013981 446241093 945372090 305221442 525421919 407815682 128402014 651961338 750364281 206214668 915578253 423784518 395582815 347472308 732397003 843816949 866578215 214167495 765597605 926335498 848507867 339099685 631457879 278900272 835954614 668186175 813583290 501741657 88390566 272011678 4503522 824297040 847368239 380201338 345618301 907091547 565953516 71835972 68346139 966170311 140101939 513016980 456904563 937642851 558757581 140873827 309781482 78323025 798289915 649128877 234331854 797271119 215271005 796711237 584063082 530550166 931720144 652847838 379110338 163755513 148250809 307895673 853267640 655050309 405798187 958755684 102780727 517473550 564005269 737941103 234613736 627492226 562319148 203458267 253324622 23077300 660854290 245202602 807011952 867473681 998093767 228516778 333767467 440764118 828667278 164804330 228736818 746457373 633446446 248665411 670601216 382674817 827093205 753336418 569574 308358345 56247585 798520847 821774989 147040064 135075408 612889322 846363715 579423085 925641110 860000984 231519670 118156478 737543922 167199165 676271534 332826625 520284322 278396423 22921684 659033174 200286205 984430476 786585203 370694241 454095600 513272983 141839223 120692954 604542553 834157734 762206699 426984499 661555541 710592367 592070691 256349261 587651163 148245459 937523627 494944251 151670590 328539668 713106056 598266044 420879179 258644090 798418525 695916964 463816784 657217489 738543753 988398275 518970792 41509162 347089255 227970508 72421261 654679583 314919890 678471262 546192402 215175121 161261550 689630373 987665191 747600150 939299689 620573629 210065278 633424923 13139375 54170782 516475011 136409175 383149197 283695619 640524797 1882250 943153278 867822130 27205650 27099757 91769191 847787343 207741902 355093679 355956900 572426478 741685839 311038668 565722886 110971684 652513500 59535748 229452760 612965012 188098346 311971411 764550614 157240517 444696648 644526410 976004318 600922196 409024595 130058075 511790571 929335490 654230676 171132158 221869197 639426248 986277587 983966624 534806616 113352481 390400655 591718440 979467646 808325372 766973364 672976463 253935783 54959841 874313693 479341457 343171236 780332053 645715555 154648262 300793005 254119460 999746736 652207050 903558566 106620552 254168865 390405685 765808534 424864116 488428751 150507124 759843793 393423568 103415903 817101656 824277962 907271127 602727202 270337798 201189945 269436447 840616573 10645094 117643064 791584565 475561935 172453518 602523109 893472481 6204549 263541239 279458479 24820795 661673190 384051142 334850907 31695685 894530374 547301969 967587776 699582919 194731918 382504834 372893871 306363799 649816033 96495146 600352982 535142685 554147118 314602612 785285302 624585645 212950622 984212441 49727823 76310682 699732023 705198046 787466216 751521631 251174725 876051375 28949042 282890832 261191214 267418965 113609497 182470812 27155574 400302562 541792687 58168006 892855564 492655621 683770066 965357464 998858038 154726382 792526760 923249856 240580413 248449748 512778042 201853482 725660966 802247196 259034629 581412957 641389417 60010688 432687539 386753320 634549346 392206122 73472447 27042285 543641451 63368900 329485735 899043991 565674762 207425971 55636938 136268337 292795768 579189514 883241960 716254029 412540227 792347384 751491327 461888755 255824083 96467260 475759023 957214359 898102643 962615774 699299583 522268551 549350801 285055146 495054675 404883185 154537926 357133928 133739612 373441299 818799352 41341530 569097561 123503862 563512700 70148150 357220206 347129943 130355781 244969287 764807055 746519891 646801835 672648816 246573752 750531256 706526291 225415956 617810275 97656497 828328935 889805463 827099774 352862309 394109704 473267439 209295432 340702564 451378576 151877085 150575806 27767625 534308250 636939005 859288329 808277993 143534723 698527682 540100491 18206283 465194123 818494467 952307482 758326228 829415253 459514777 26435543 518858556 237878104 644380090 446497147 79313253 716706322 452332612 443814273 655885396 201618921 673618581 25722898 651195345 470093983 61250332 76837029 326909124 979191776 682093194 94805596 5655408 122680878 783690138 198951180 166470718 761599856 709466552 700839287 529064033 936646849 597116584 630381524 983227687 44817502 79034487 225162433 638385683 122213488 721603505 723007780 258807525 886375710 256336683 567629310 533072691 7247989 990074355 311041534 893289952 628827652 632967028 10071766 69142995 265861969 787434510 307013304 787562405 919656146 566515593 686972830 797012834 947436115 789542447 258883977 605387564 954917841 376981412 133827015 125979566 452003808 688409521 410286265 83979066 878271256 775284993 411824766 903437625 943945101 128429472 818881504 39760473 937949586 879055243 652337435 538443342 904672471 51667662 869552107 349977614 89149885 895341100 45922567 529371041 472628074 142682022 879612872 75113569 590350108 134413049 689087643 74494691 519731546 18032796 109296402 501940043 620105560 556301972 816761504 688600160 679178275 39486956 51765853 405190483 753805814 822095059 358347468 511404943 237682600 863248626 458060869 437862969 733281059 441309328 291447786 743202438 184236309 83715560 872885639 203119339 736134697 177187766 842687195 230528054 739741227 268698976 448974827 36928016 826508807 420390427 671230994 10842691 768579528 206217141 237479772 432842046 962741734 681135191 155818785 923975596 962953280 398242779 499608416 81642026 440447819 893593618 65730070 396414290 305430719 601789053 845147185 441771813 241360691 46931098 208122377 258507722 645516063 239924790 353220419 138785518 649054069 304195455 754397481 50897553 279378934 673497634 410827507 49623264 671726493 296370795 98599129 156363026 131926204 875101407 756140087 356772752 175333081 556106391 312071419 357725234 789655870 841272995 361732787 231995500 305571206 485645697 682771154 457064166 50135791 979618947 737899418 445646720 513112401 91963571 276064416 416783438 722596721 608667122 865491184 29130478 541718637 725453052 708551158 395720668 91751199 645576489 401642866 954001636 320451794 880331050 586885772 385598000 306698988 219312606 461736986 712529991 418044146 432006061 641400260 949847574 837255361 120224905 840777186 314327585 165855700 166669447 25156023 921077340 318402523 154783791 292224563 231454450 97897511 79036693 374926243 306989653 358808489 394490652 80559394 494300902 834302103 655713113 561352368 783889023 196131926 946134551 340313107 863203248 553891743 237007311 503777519 656266002 14850238 668342617 840112445 287989965 52967735 724999148 529968242 979211245 842724102 303203213 854192835 112938682 104648374 899240664 119490184 343780086 99433121 899683296 705396567 501531342 860778953 909274106 603524040 417029693 749826876 724405667 944432542 926929683 31441932 399172165 520587496 650806726 882448565 291688824 123495476 35172022 907431274 650870092 740828007 9022492 140843906 459029983 205622892 710500790 96997342 894407433 378908942 749543493 166454068 205817482 982623630 81866399 502960326 801559139 558047954 472296441 744548468 950138352 26877917 764853639 181998181 550259957 171955450 73366376 162051119 993682285 270240463 883623924 363037477 659594655 693033187 133434479 243929730 847226778 711910005 521571107 718805933 38073398 676873027 626627799 548638664 409950773 78042327 957677012 292940701 919943172 967075350 306401342 50735311 174535359 45555766 840336794 120488917 637171823 654305668 411241983 714476317 529662858 21605041 487033437 681991412 118318858 583562605 104965951 416589164 130994896 975225895 785648221 463649355 259972043 186822000 988595148 322405387 179774732 71913010 138398145 129499255 828646599 287719917 530387401 464414290 177626095 347189722 934778974 197421052 680921880 393729305 225841274 819156990 307047609 369176344 941346457 898074217 129161675 403569343 266005521 594016094 871478549 211569874 821405384 195001011 731557671 290076958 556184583 754343191 635864363 626695910 511942225 917983559 2287762 205774997 91810401 151006882 649872387 469197106 829336830 329860689 493129724 805731167 314033472 624955953 589518251 170275032 903192390 931019227 280281380 639272213 194359466 307246572 95848802 873122149 832589167 128778020 569017796 766600176 9565713 781442262 171099647 899583493 425791881 574969837 645049552 786585476 902603387 629606152 62691206 60987907 176343427 587921681 770563308 574173542 536726142 813186754 548673047 207779109 870542502 654168908 27419931 600403740 375001405 864017230 790545559 76667262 561598153 554910602 883420052 935694059 439309922 160860598 161087631 10423003 648855532 794683518 571622327 469231333 8333506 902429607 237208291 598518697 826277474 162151226 745188848 979387577 811611434 373057810 729131144 225364309 445718487 671165671 567315899 679464600 640483096 186874060 458648562 839155358 892719406 207333181 274173567 573278977 280172502 608493734 823181435 327626951 39919225 495291262 414699421 155635736 652853679 228914715 56818479 55490525 908879760 386223668 42698393 934246206 258147461 575540098 887474249 385917251 374125939 807686081 487762077 375846233 704850840 2144238 516867641 992933465 73408674 840548066 174143626 64214610 686344553 719109403 15544825 694108082 705736220 248270577 627854433 676599986 151924742 842061013 373231621 411052979 664622633 659112047 528444402 623372985 52997054 888326902 716063686 783548468 264217655 425949175 524828737 168239579 642489406 34640773 805501164 680084729 452204479 167786821 773127712 128404388 496765008 620691070 952090440 682337808 665974634 533061907 111934388 807354203 717310226 107609015 329174824 651300495 991837992 185203098 281321388 99078655 90430633 431656452 223651622 416293395 780776791 422205436 120234570 872925360 717393951 905825174 548062622 768015106 917499873 149942010 331747896 45426695 205075569 186653439 703852774 21950298 467196184 119531842 412257912 955953897 7852982 656614646 771403908 775749755 314423911 105568456 399898596 273507848 816064320 465213215 24287217 220531403 486123025 232328608 459218820 361797944 174942967 437556652 494869519 93883218 497205567 557741913 137907695 532034194 931122750 801299457 423251111 127049364 656951743 421397044 91074434 970468832 43515226 779165166 215680510 423047666 917575398 117992090 659580300 518214361 752271108 384697300 434121232 154021020 584920968 616721123 728532650 12421365 468020905 865179094 458115195 103702900 435956136 854521678 107296872 30929933 99416028 977673976 665347582 594775878 142021033 183513997 731713068 390876878 334015188 280228915 577314706 495866742 907214724 988715049 383560281 394947887 898648632 79741572 42884461 48521732 155194981 505378615 316625491 350709836 224027347 845666310 11700890 430998905 106198719 252716732 943598384 549360567 352151840 657480272 247920882 421185690 541917892 605918891 397814530 27238870 45938968 398199738 376522180 881486338 167708630 330837563 134784253 604359526 757870870 897243394 248100772 624239441 183861860 702728574 839452037 384101726 903958409 592971087 671844866 186749763 203938979 869815866 328124684 739486222 927044065 466090837 179281348 726395534 760942573 404595275 932128235 497760974 773046226 458845823 983967992 677404004 275825812 51683216 421337762 897160128 656409496 886859348 957260793 376047203 357888139 739427335 57378242 419952935 917797347 156743997 675104517 39073939 656345595 462608804 927796852 573807925 23304495 273857887 347870324 856583708 868477600 998229188 893866163 441718958 552700303 192755524 790325800 787435891 439849289 760603209 50061621 276610599 545189523 100194521 665387085 320633489 23617452 637031334 435380313 319748242 833411563 612173878 728081551 81504545 949228690 219869869 463201339 241806525 999632726 591672636 82928195 780786966 655287016 136040181 332004027 902354354 392312861 214026413 161754142 570019231 592977031 25580881 319849379 527180842 794439415 81932126 412699310 350610827 635571221 926641703 696625843 392082396 174234115 706252659 56145464 37289301 817280319 984769461 848063691 701722497 722166285 359413469 698510247 335704183 292546729 301781281 677493464 259880990 532182059 646620279 260476396 859812268 621246870 142927094 915962803 371643522 207562044 25876351 535161399 460741365 868554801 504894945 78267412 468965579 101074882 888672706 682233983 241944728 625567147 502037891 655466731 654388863 131263934 158270709 839272646 734016894 754717718 665479600 534703302 18913431 140405432 11769198 767901785 218138704 650205371 386477939 299574234 881050898 136375026 859761637 623397588 187151128 324864587 383747570 737634229 788562945 673978118 521123555 797685606 71372770 563088169 833116289 298014954 249378736 677249552 334665636 894848124 484926696 99724052 630849229 9594095 82863600 934398954 494174249 522783472 749904567 547655304 699846379 198545588 449206366 182774530 592596022 324362909 363411453 289344874 323556381 474376833 931299107 395858269 389936655 740556697 999521882 882204187 508655290 442685066 272603884 584088437 707603106 315717661 726926987 71153635 542182765 863911314 320963237 167523173 453639811 741165459 402954038 997873955 360497648 557353665 460905170 381268335 191673761 130690494 537823672 973839126 736582531 366303918 557357799 163723571 358651828 282097017 52970567 946624856 985160373 475147865 736495030 464365978 930962886 981424922 629516821 408169815 187214452 879880708 468125190 819236025 901228918 817814818 790338669 597915641 803904859 186984493 277272185 887530897 647451430 726214772 149781354 143940899 603197282 772113480 900615256 17664276 498787392 677320298 864988202 515961766 947401558 862227423 742424545 455556217 747106996 90001273 807367107 319426005 630141817 794924458 376263106 322359207 662544849 495211922 380270276 352611151 371359433 315362034 369662928 328668000 68972543 434514788 853410272 812012379 505710658 115314873 991799035 548005665 214759167 670297145 833997411 181505051 549301831 230526790 473606234 722201674 669118661 94211163 510558921 523547649 412472284 206804213 513521814 293164471 502814462 219650587 781811866 456370081 495751630 912434458 863250003 529387686 286317649 437058898 265284840 374542844 982639435 615651107 562697653 541222646 884966550 180686004 737013429 483768725 812126205 148099564 150801254 963018175 431261149 429467276 735042873 19384401 574920621 523981967 106776308 592256641 624147616 607173310 557831281 292507861 312348599 390685258 981333950 261718906 788244442 89262284 824511854 803510914 922324024 994937072 889864223 443007506 894629580 51249689 464838719 715731089 569245416 807768889 105418996 355460559 700588709 214572685 278402745 745783251 42257046 936066034 483544580 108258036 132880166 673763615 828003574 634169386 343834221 186704752 894316832 413240972 684739201 318661428 222898502 726728905 364237947 30400177 816861471 363862860 391644472 664783909 5585962 840957901 974014301 861404808 307696268 128104331 47328497 771478497 72020911 915193250 737192149 965822141 110235913 785466618 117292998 649190846 685334263 428157984 9655569 24093037 855267666 160355019 581204846 276893708 150222204 848518772 448227968 613250721 180569668 608522914 24702726 754310943 782499581 77250727 338194961 401345820 762350238 122960468 544305894 297066010 174081473 762543102 806562365 274565190 588701556 482069643 251988656 570238274 632189317 64685101 897739704 376064455 84500057 959018333 418871653 467605524 222532127 224056497 830982161 204367921 439963515 222121973 268995005 809368085 529858611 112194195 361490667 487977719 55912500 641589187 770758557 636733052 538230250 844805996 998904215 353540825 745082997 24203896 289387130 829886271 166040693 772578562 856215820 537721405 481204234 937395452 929104895 515888101 873938238 880099764 557832790 681589226 836788880 412909285 587764195 886799877 36747263 833625326 938323851 234132146 895468724 756002710 596403203 66292765 954412143 617607163 365976488 930504768 637245295 420818036 271125768 297799903 945908320 549606754 230145543 585641366 493387788 761628401 919419307 813381740 692485590 922046650 645970454 196024371 208514104 455855832 494919977 972496459 561590696 232575504 785726746 279752131 712685765 87116996 499560502 103802593 64542479 238924201 942469555 132280967 892889543 313006315 957118660 149539824 566929600 43303381 629262621 442606826 233466138 652421265 547431647 31431728 686191746 370669577 564905498 62433459 379533536 614446505 118188575 249102277 660686262 454633006 592684742 435054377 880019752 783096713 636923976 268674461 568375924 105643042 880791846 390158334 100090685 527200964 537946891 335085074 272706559 225936555 666575266 117204679 284627884 989363191 945709122 950647091 438711438 63676985 286622704 255960032 342156331 577696359 138594428 657309966 87841629 153191874 405574381 987845641 665813154 985369086 822882147 971031508 72602847 972517537 533738500 864267700 447783696 709328989 708317029 30524301 502380831 150421520 858316826 736223342 952602408 441119867 92472767 855592836 301268200 947414497 616776428 871204236 259215064 924859685 31966960 48670852 317897945 428417782 553347305 953496025 827524474 647163498 24510597 418837996 305066869 445387594 566053170 43176800 992844959 554446039 430071531 167158378 73492990 963125102 310310749 594559090 416716255 803426028 208507525 555610371 804583972 433633469 744350931 34124342 430504011 773154165 266847780 298936882 182789480 358885424 269989759 894041050 822984949 899421639 859317332 717462253 6924930 142248372 947928710 655104430 888037293 466224908 321297425 717026450 200230445 845098228 742181570 296340487 431699120 323778859 791568995 472165807 245819227 676156034 158082327 103055963 680717838 676199300 641751627 551574662 965178012 434976940 724116176 152926714 745802574 63859119 88511877 345224589 135586841 323781976 954873893 315317610 136902733 592443061 125611401 36250867 7928892 162735682 590454834 981102625 489134950 909162728 486606275 257702745 26024027 933558679 25219439 668107683 431373796 765796362 166960027 367340182 97000866 25096682 880054771 568791808 129316587 432122957 848781839 162321117 175345309 409995445 501733971 818673810 502805638 788007348 130719163 922428599 594300368 989147082 607371786 227076918 637919084 650593987 829299089 76886801 22665184 757779111 240472850 91153781 459459427 949715436 657519559 779598341 426307409 214399027 745952267 422214517 990941989 704855864 871181599 167050878 515324771 285478525 446420199 724393816 703470864 436597105 194012562 594943704 400206212 490195223 747387584 598914151 988998114 833498555 524372363 390100054 192435390 356125611 620586883 948577924 749069463 161941302 53656433 555001139 958426641 344539945 842794846 498054958 416837835 564557476 443175643 938321630 751363887 89148524 279274698 332035086 769274011 215242777 345777491 972807587 240152865 563439033 915473408 472638239 322183395 933532718 923583442 152303727 524558976 654768338 625713803 725716949 885014825 704477794 382611621 497408470 868155379 146468872 910027618 382328250 995464155 874656392 499816974 110386211 848797623 427131745 352414361 518548713 378972057 279679887 415740355 212613347 110254493 665334098 317235093 781919703 636174223 240118760 248629770 448586873 64160739 928604313 169863442 799374597 493052568 913357161 12329991 39936250 640649961 714242539 844043823 257855749 404631913 630905356 40540020 261755178 126483721 981131093 495668872 798352769 388527537 574444659 732822558 109602138 693764030 166332990 727547856 497856134 159917950 486667646 277377256 808634701 620695699 944244603 256658072 697975431 921421815 679943814 885374873 137246000 576866611 210195332 370287602 90056588 995237568 137921580 384283771 606179168 115451500 546848042 668051326 579772079 149622713 697493876 206118288 571266994 115149037 523424757 372504825 208712956 701611290 43631117 309790131 492362679 632543766 265191741 565055219 123898335 634710913 737662898 613818517 299088727 362253392 988855373 472215021 755271052 617766337 80519134 964072162 593665098 967944111 443119454 974906129 508257090 20530102 695664448 918025138 78215902 531874457 110203475 342603808 624289046 539344692 98170313 396288363 935221961 146381839 9839157 941178963 236121272 695352411 960376481 358563883 529018884 930120386 40170242 511669704 570816323 903694244 741851895 771181884 345529611 836152802 654020087 397086776 56090995 427492099 227341684 524437349 488699080 652861258 776347550 362211922 990044175 318080370 341353691 84890856 136617627 980315996 982810876 696370921 415830538 981218954 965251536 672353280 115782494 692005003 615174901 432046321 970785255 143207014 765992472 789351580 892754858 822612346 553110085 603216637 48393700 610316844 698902384 235636884 668436737 321916216 342766118 185284795 955280007 398498871 289913200 385988924 714053830 498939661 384027119 631695671 236541745 833853696 863866077 761703946 210796368 954919583 505820160 174997644 312408950 404500636 188617637 975802718 75666417 537707333 343353655 969318493 819028036 86740552 816712172 667749763 992843173 710067659 489796184 414583138 645924655 200209116 59111249 772188491 310567791 452376495 384683416 672015147 738107608 707054548 19612411 143082372 788620657 120452821 248033043 843250095 397675202 109583287 833949284 683271501 895391522 97640739 735744946 306314556 850885734 377297279 766283804 577981010 781443193 453682054 835269508 507136372 390380873 667128158 565157006 401965323 613041162 516835991 979667935 220652763 444728580 324712987 104996286 800451711 399933226 328966351 537084100 922860506 368556690 908133288 261414797 997653920 198937450 794236266 394080149 608754400 388982663 375672249 661920483 791691936 458851753 177349512 648716456 349840880 13806224 571733126 925169748 370351320 971046329 664172040 732758384 649100602 98430145 61323724 74219078 344926515 36430043 127944756 465880706 614783837 435611693 86820336 861725542 58058435 824635455 61728272 151235322 372054505 375838023 117108921 894656601 972669564 968103393 300327586 848653664 801807098 181217697 599677694 73137294 922583005 309880749 843874682 407678426 128347279 346807776 747884575 126609736 718071988 481510002 791199107 225649077 771398200 107485106 665580198 992878933 678223250 587699926 973515432 9256112 795863500 360090848 287750514 147370058 491309198 805966510 609946338 270668064 357390450 874368897 42134514 243787524 770419286 812394727 226787959 824742476 344052635 534194341 309212419 931008550 17771564 379359788 465253167 740107240 134683137 883574534 361244890 829322368 661639368 299321776 310623332 989908881 59469061 416361162 266574155 79274446 893190616 310603878 377886755 440573441 56344460 701750258 663865955 597167484 842338049 66583380 881021611 330718568 836150125 373068547 167916112 309300580 654838691 979299911 133252325 294073547 681855781 727825649 803750938 334159177 696591389 262597447 232489199 414603970 624511402 673491437 454554264 713666383 453588648 647327295 237832171 783276207 481854237 647477018 122863218 311239223 328953228 450601294 837147070 77199303 897380011 289290691 331436971 624588468 666618000 573529987 552105496 590891262 369218463 338016731 209371141 510061302 242075645 10765504 688087526 911967056 195547728 431995471 786614509 786054774 772051945 516154477 583443686 74101575 903529728 444646576 697967945 812725789 651936977 84473448 9151832 461480874 329262111 485917162 477159998 757049860 49029460 864241893 909664627 346920169 481297616 532132825 929470568 250891079 140611296 114973625 68260658 73141106 352052056 272816743 508771347 810484520 994987522 178552806 545367754 816038260 159765214 792452066 36437609 179910512 158887432 266819293 401059255 691214759 45252420 999068689 326368887 863568483 175096665 981140388 708948388 714002478 354972223 420806325 319544252 504436390 415905026 612841266 281818493 586204243 95210162 552725521 511935759 68931822 766301198 962129487 7115270 385556300 505708523 119092801 279909561 301587403 357451920 195827184 651452419 930328423 75403719 455139421 447955433 754898395 143882938 970992895 975554404 163611595 197993696 770793579 738080963 879910239 329639896 791253906 4883104 776603852 54197789 958756388 496302915 697845416 199951497 288365902 271440038 177988613 198428796 10940614 899431475 400616697 646511007 609181670 840138898 106078345 192131583 361706501 208734157 784873663 436361479 943495315 189718658 487661537 457090327 141489848 983468187 195743386 669368247 347298530 355579020 561305180 32728294 604175878 543519558 14598087 350859436 348278625 433242526 202859906 299235811 315621277 377761610 337127243 793265085 722558175 712381585 272484136 861502020 907440188 365125967 293329312 195931459 268021863 665572343 552816677 888633930 181059639 259912399 732843479 973280659 490476153 72846476 108767344 669090148 698425130 913847703 687737316 174482336 559156681 287718716 571863309 252719545 157867726 796276838 655913700 242825202 442754564 89179399 377854988 557980674 50453502 825092904 101758569 857268365 284083315 262812813 872940905 507090764 273064750 417355247 404030856 774218476 612734574 430263853 307678096 291806508 890832996 28171829 605237127 110152753 451667223 523536412 386396867 588679322 250456558 529489247 255901650 125552736 921479598 303740656 261123049 401832263 233496380 33661775 775282960 116847790 870817489 823624507 840864864 587317989 544005222 371875050 354021740 687502304 428451990 187940711 601851398 74846976 852065384 319892227 448262548 558465795 111494339 935554380 971102893 656500559 867595201 667534434 354952117 690003144 583637764 89441430 14120231 530320047 58446183 19107170 472387400 113254046 244099141 854865338 923981808 184728007 700611124 658283253 919345035 292669358 814266722 801088864 383123930 211020221 414147336 570839559 469365537 209584145 328164245 942706054 393413815 113511167 307710159 365580783 744479390 439217126 954768047 322080508 377225300 489645532 42930181 767554405 537654329 385438754 44578102 869643344 285812403 150750806 818056619 609766873 282220291 617255805 878615121 294312502 369967515 625793700 560355286 161517535 726270683 190329764 410893017 277529201 775672926 820376590 779337592 311248491 421296051 390091625 505833558 132612690 336435170 779875674 526534719 241081617 256236800 889463222 463660858 426204774 576606541 36212168 692747786 289021798 96987484 253991860 53630372 674621751 626644701 539134177 705630575 39336430 792416133 756174512 542236999 433160184 309954399 961915908 372812480 158931713 539978881 674366798 706852699 43889373 781764841 49365088 464711753 6429415 194179714 426177656 747648777 943688048 700889573 344337708 326495158 467992830 554948959 694940697 714828565 804392753 16988070 334819019 718666954 250399113 405182736 96583513 950176632 13717950 341001289 943584977 45090250 865882960 568095957 326927236 522996884 399176823 934085328 470051167 676197749 939544042 130452706 336429522 54720630 1992910 727551212 504232069 614057181 107502545 826386425 977766715 546059069 42232779 84598680 143022698 154886271 741977199 956597585 746158397 416786067 755566809 659831405 794917880 774188391 441265521 517486236 233304565 980478318 929421073 161561810 995032375 23994925 601715651 360512065 631430461 935353163 524356169 853135341 334215015 233833900 525030475 329290723 179256082 511452839 958636647 893314426 143480759 541783124 754645323 253163064 307506265 334488471 568501695 516084406 643358593 834504556 594242026 24200237 339472659 727137931 715757951 6978085 631265669 741289242 143340003 87691868 496068694 175162803 447119633 61299401 146358929 710877884 274817952 928955063 817794353 589046358 232099675 908567370 820273358 855764255 509990930 44354660 454916263 624270051 446669783 27125227 266156713 86743947 457882540 79443066 75367472 614022122 22670769 332584522 91257986 829856023 865991769 28440791 731983931 149043743 495573072 697932807 441798039 394885841 930383547 456522785 383036162 416020835 571554981 855367899 112000918 990440910 626813913 843961375 496569588 436523892 333308285 547052512 24084353 664733294 666110328 728013525 19191785 489964501 256260919 641945608 329746495 491552023 860592755 730047985 130593474 115876348 402199571 128521484 884690986 940110586 117546508 429913647 244118144 197770106 968443540 541717233 96341959 481588606 395161419 763649663 149106665 656080636 859522043 802014698 840706764 326759663 612828600 623904564 937653854 941420895 436857370 604130729 178377338 869366308 746022860 212757849 381541146 679459928 442909089 509415814 549456003 737088300 17655300 345602488 950845191 745420317 400819708 158199680 459407101 737633654 300531585 809536471 141717287 230347136 204528117 687486666 385420188 763091420 799399625 425226537 217407547 638202784 173711547 934903284 496784289 518221680 340007701 610517318 324937752 795283686 476380711 834782119 144953636 385025564 997147190 445422118 98640086 301189164 471761810 130397044 194188573 743655321 122530638 713808916 282230176 438829880 481359466 751885908 452510203 452275685 643447167 296812353 538513835 304675810 384935842 951661286 649172826 5608608 279125036 317183077 157805319 823978829 643781516 134482997 569804341 832349533 489678978 282541374 286374546 334049147 185774914 572847946 318774209 864296681 462906570 712763729 720167798 995701746 394033764 635169511 927330385 289039 764617630 197158843 870290765 15990111 146480342 874217734 11414439 820599886 751301952 538731420 271924555 783138905 221990953 170186514 572188566 608353748 825221833 930792430 53960595 862406101 92253046 495563004 336377625 350930338 694506808 717049114 757758543 776394175 19263074 255101864 863591588 285415523 768484176 234339817 565177048 789161420 229792934 256149283 368195263 594169400 639886161 958832242 582177834 406742928 745668263 520572554 644548640 750212617 890027395 496851027 84848207 102285117 128658937 210546981 940320031 27955030 582092938 169838544 52699913 603831129 567790139 439799344 239803921 830736555 493593734 319509354 146531059 445696716 152314816 424147897 618593248 756131929 588373840 352398020 488919718 894538603 653742088 452602685 923582555 36773098 463120422 869541648 747601341 422370350 373523173 844324946 982864521 429494556 520576704 351147403 615650956 104326478 69038157 119021059 991381085 335630953 229603377 237105048 878407626 429964761 360586523 618022663 156434834 87972254 420333524 528364909 540770213 23408969 119321923 677087254 995861443 35929497 572266207 232381500 95661172 341931361 32294306 202390855 336149439 77658511 210577128 586687694 306946896 469784633 550467647 273730905 436226489 882353523 84904430 481372315 598497296 882246846 604177343 532075342 818863427 655201496 373788589 575529851 851895902 849640257 119230588 670443001 629817486 638897883 17463753 320003759 313503786 305684262 627588496 489105080 829893055 308720932 7671232 297290338 822214337 936081544 816540817 488251878 510646338 962993783 747733727 239927129 710643004 291395410 236724961 240329042 10894591 869699943 570301072 103192939 859114037 12621753 908796194 468341083 932652521 614979597 516520806 472503374 190855102 205163654 589699932 163695475 934876996 815801863 770150673 336556976 946405277 662632168 510331807 244568167 888071907 229763931 221334421 796242039 510272160 984540790 430313331 535064943 75823798 921914512 596557816 485914972 833913576 557992880 693223920 81869709 89812944 973139925 257181675 618256166 640697480 662996603 439732873 572963099 261727123 807495499 537011542 10426177 130805182 369300948 558742749 148945037 264005138 984123402 286915611 133157322 169727916 234158234 127233041 746300163 62445149 65149391 232186946 758209081 451351225 598687347 677024283 447948316 89368761 40799137 520742186 529530104 919723097 216403228 571184312 422670841 73534586 285015215 850578606 172180373 31413384 771518457 903487807 104727943 299229439 224122652 26483703 253999995 979463707 821457025 369850715 384736985 20596709 740065041 298432371 461988776 154140338 875816214 614897714 847809274 677028112 958643078 641889912 877665377 736954773 598558840 159433095 321248504 655291150 600011221 122945075 706093301 847390053 151488632 551378368 459384342 980494143 339047546 54832286 656967016 427107819 345902311 121475963 478731854 272007141 538914407 220117562 592483531 58566807 830983195 493974695 160210676 844101304 260854346 815930314 737061796 412630889 911803844 293929886 639073727 188258684 856266710 504335902 126925385 711395483 6920547 927888546 865834344 337652182 638922929 696171266 111266654 504121309 601105264 281959430 615035062 990991242 84841412 190008677 95305581 448395362 979736159 512321994 491596863 997855223 554011045 223458405 760614318 560596237 549508921 160934226 400413698 704398802 110143452 927171200 752386315 70796613 797097245 101702504 653005912 725998608 626434246 854815110 428609441 42887922 908303184 309493394 547486077 554074736 558748190 31302808 854870165 552887613 887508767 717295744 591922785 875478129 505667249 182119038 56737634 852045894 638224456 288315799 182126416 849561638 618221315 247097579 586741911 207300136 342870955 546340864 189330535 937322257 277950671 781931817 512079978 682962651 122229927 493840670 358726081 147854606 839963168 33542889 46025634 106109237 516803788 113574044 666781845 931373664 459128436 846231726 877137240 685871056 270349812 401434089 552379963 719778632 572418947 906722980 3339083 841990155 149351562 457161556 863757560 505804235 29605203 949552229 23883082 898796105 984721835 138819688 808816349 229460670 860740679 725647239 73741528 2991650 552842871 405530380 156212498 102650620 895770195 329301307 312628931 545177418 518545591 299007229 939311286 503865081 604291732 554867848 487221024 792239173 16621919 749102621 38016048 448554025 77569837 804926567 185709129 907842317 60015419 324887004 599066823 401337947 687235553 181873716 657582976 857156132 807822784 682645353 945570725 790829678 379698739 756964596 449959995 363093319 360383698 593751998 383547918 445089181 715489437 46327458 462406273 500673979 925870121 556727754 92319394 216804769 607303262 962282695 834272360 107493427 702476214 17500847 392654434 428373885 762265566 613569633 931265629 89231154 799684973 680415123 522720316 941096678 15456891 303002667 359924989 929699193 249650941 556480672 212165327 759162123 485965242 189586397 786125543 71789778 159473072 716625390 109471836 388728656 835647544 402636662 108726924 143830618 479417710 539969464 714044733 216167368 152802581 449145596 149597134 446095418 84456897 815531922 218199815 938211778 344480143 421243284 687676562 340839635 404764789 284827779 222291032 636290289 478609922 250193651 734575283 264388214 909707992 783186036 63520472 680992587 418765090 784966283 467005424 207344686 414965603 216688659 614024788 650299549 986964440 854177571 568645422 8996656 195072054 912063960 526242855 191442295 829658505 118509173 214193715 712651821 39273977 966931490 700984528 709675387 402553692 385701578 110655820 359228768 791671914 859140897 80822958 797597035 512455036 404381371 292540170 585992740 668062418 471270913 274536413 686470527 984856121 323678145 106736254 149552365 444410546 933624847 630514465 625031357 85244887 270925259 340097304 568985315 276478918 488410273 819675067 136801085 327966737 37239889 775476610 189330040 194986106 329804107 827289157 37259655 705705324 246242628 543413558 374445064 257886688 159467957 13420693 736444714 860502345 763606701 409158000 995496604 600588264 118918894 130775464 47649321 675803969 250662243 535654199 268651870 531921305 312521662 28853119 930836379 333561380 373115051 253976943 665603635 481993353 133179840 915842270 971807479 961068571 80840357 976120889 457188885 794019332 400340236 593039176 944507116 713975226 363049222 249573233 864700702 4033910 383211468 199044445 724837779 70746102 693951960 833121506 717230258 794027143 113517467 926188580 837858870 676279436 47600204 741276283 506220617 943879040 254392240 727057 75818688 149813237 99088435 4307736 196949389 768393797 574169792 979887364 742443149 881341697 514155065 160337003 113139807 481209351 461149416 576994767 417760927 75019222 993805817 575047564 972131746 637376065 104422574 638808644 519685452 238572306 226043858 249593892 323109492 959773804 217069637 931400816 667236387 823864218 908258614 759674185 490366339 541337442 972909049 497010917 786366749 211095937 973342971 36766552 434512271 518598574 967587287 485838044 608879857 553244708 696743749 273776927 760653396 957492495 81184068 362000209 12870673 811189417 691125667 480808328 649524305 120036538 696176761 274169211 218143627 849345626 49572404 178469029 397446446 772872108 213518321 93275937 933092346 704875755 57256877 672741233 826598205 9520165 587277629 249699469 360023058 647359381 460755654 546401653 627092163 181880543 106312737 840472358 809522502 903338732 10728813 282298326 919036526 540320353 412729213 135456663 476981423 885504912 212313937 659798922 119491861 894366900 808630039 680140098 108994514 878085288 680369999 30272829 248494056 929576126 719355820 685427411 284466621 213593931 124728296 294401888 540364589 650001112 37246767 542667869 839741289 793788407 925259123 259666704 459011160 51242342 532725047 32365290 331581387 381931181 264271899 786896607 637509522 870791229 76828651 333304396 509371609 776379052 29365661 173554536 643724924 338275632 822473927 403130051 376519831 789168886 830064234 708977178 235030957 299164546 942176505 394202184 725032221 820557677 945415505 930278698 145830152 917591105 134029721 375351067 327934205 533287627 74220150 613862852 196987030 245171804 616887962 422940196 78865231 324003562 469038145 799949026 740931271 628916241 478715237 441639472 499416591 816768056 732274244 219840926 256664834 493922238 502765966 802572474 884100416 168151844 817464394 249607107 570564349 549137458 659980593 191041022 913612457 995822131 87650885 702107924 982247777 133537933 349716433 989796651 81847862 582631306 798847700 856051345 986143046 184008756 971329400 593662962 526920960 184744787 554056611 682314514 307199147 528055830 949340142 553166934 644649733 219298761 741778634 565415889 938526292 72469786 987304780 562299016 697558244 477085910 256663533 302358860 473307805 553866647 372523801 818134209 122234574 369855220 617145808 967359506 760827289 819964562 235742870 23202096 884758772 18090290 387634006 523949104 233619596 764067291 522400590 963834013 31345912 816407149 881726280 411878177 255737460 413250281 280697123 809031211 703159811 714156445 516086333 166631837 671631383 162454443 673587869 240683255 67573472 220848108 871901858 357701282 892230632 253152104 907272979 750461399 879969680 165761399 211771984 402350369 558508766 506969861 636934102 134772088 300666094 981087404 823103090 252794088 486545594 559792463 971965507 58259014 27690981 620995434 423996715 61076299 293562944 514902097 699830474 766479394 807774812 845817948 680989797 227583511 568273131 14461627 791087279 294583400 761918924 48679065 824734151 567940841 282092855 506123282 393169287 459593660 979318992 740287831 713116784 945353020 901811551 341147692 587875573 297606993 413499569 320791837 203678655 239387349 701090111 987050488 99261473 578521953 267341929 486045053 935163598 952271361 241275831 894482789 19373491 244761166 82975053 230119093 470244419 750347074 955234486 847729722 429341685 632763441 886146429 179027983 825871026 577349087 236180259 283649161 349076388 294687241 116972218 428067178 69271170 126531583 759717418 231274648 73461765 457974537 725066015 650815978 757736990 474027504 829560153 571788091 194923145 712297555 267907251 795740363 82015248 865202202 953294389 66715308 966271424 281880687 933601333 459401076 162027024 846052435 795090221 893935088 537735884 804409049 611564195 622013455 791040945 96309599 932813110 989691860 988255529 916192381 104463825 224891133 484008465 777648497 3730683 496533904 39373452 638838294 872118981 451059513 933101582 164172747 518526690 196013578 588395498 338349311 664488334 892541400 389504446 279611273 829459976 73349537 950088490 386360023 620512371 582630260 420616584 151177780 482649578 415299675 322742784 393760302 762526048 656959202 550987159 230278565 689166442 25919460 414253132 160754888 674927354 297160730 25326859 158779819 306726973 940904802 779147106 339088515 612926182 536984147 655890344 657982004 218139786 796646293 808722808 623498777 466008932 828702784 314394565 590328690 39260896 639940584 371343610 325373003 44370940 534537468 806763113 313760422 429146856 327922679 597862431 717350884 228094393 523095582 100797230 91237305 141846456 825525273 78747795 672279832 92864587 373052153 687820716 684088972 606849297 10318679 572477928 291811302 431142046 57692259 641139447 143779295 233715518 38900923 205985031 652091435 282189711 861176797 756923600 553784204 469859286 815169022 706800440 910673606 418512923 201157499 92615072 743351223 552556129 675803979 541602536 947304463 662279581 728744357 732323640 669836236 54226830 188694970 934198541 317207983 763737771 315737785 75150963 416567840 610701314 726687170 772146852 537604980 598038286 182422797 706519672 360011034 962372891 764328516 233905009 986709533 864254146 787682734 974330772 420770204 572334396 627194135 245592959 901017098 172859670 50243578 176604915 493967972 699992022 759945539 981135731 776839506 860276957 919580944 147896730 578718982 930534286 936694283 497150416 961190411 809107603 656237360 814416305 45934609 515179502 139443669 289668032 190982024 529313128 697703745 696030789 568952835 712014068 416787844 200226261 532021296 379398227 335732043 336190423 572681324 651114229 113601446 874319578 785039063 511928256 786064114 25586173 90828994 331069941 201034289 447898990 407696263 342022111 865518342 822733906 243288737 612474757 137328171 22678106 122489838 544244467 22503057 495458545 588790517 774117713 888369555 632432226 675930958 547642199 121578483 998627110 479487154 329041048 201796033 956098850 789275496 793244252 248905113 602549251 802869356 298084043 918134378 767366172 176390971 2783958 8315383 386400027 279842950 64979428 56358703 955085431 12543033 617220017 453223603 985950989 375173087 552987091 317689640 17921101 830817048 277498595 350980638 56684576 261289467 94334304 896386110 257444796 573609216 664265098 273838964 203201237 750348543 180200320 168169138 818817943 250400466 734613069 760245491 360009505 119630224 299090821 698363753 155500095 441513255 538872087 780695759 990347605 197717797 199958566 926989268 389606460 212984198 987297675 74140903 1287340 635973488 611284686 384779286 997292094 389004367 298165294 251565339 408236249 57349236 793618309 896217334 430539335 639045107 59487680 218631840 975283438 784873573 638342873 255522640 607805171 359907785 240210048 553867444 319041312 239740563 752464897 154528893 759212226 54650455 372046752 388208910 864403836 853497326 468840944 939876721 58909282 847308792 119722701 200940164 750770042 350405801 244351053 344624295 970509403 266182635 707928998 832927012 117592193 185947962 386372094 127798098 409394294 272144090 492468843 860649893 498979895 191994790 113145139 2456144 453348354 512557527 870291337 844719389 78791896 825086368 851938359 138487701 117439424 174256135 586008641 445322397 404364369 54768568 424892799 744886675 543499311 425778202 948160832 365735101 606666361 944195780 468144088 21627214 361612869 766552722 617132769 256448352 264325037 71428388 843213341 965562107 870789067 724072696 149113180 971984068 260723249 58539032 960561272 523790214 710411722 477929042 485102994 694905093 246123307 366551265 928539418 584848271 425274680 502066431 943961381 438531843 114949696 649366445 556558134 348249800 509575383 405399341 601181676 955135649 816465091 836064411 495985377 296421597 845333884 31007211 679354830 362813157 253795704 329055979 232141512 140826894 663705711 626416984 977342077 690903671 968570438 84726222 614471047 987458744 122450584 740163034 147532556 282106612 745504796 71474165 168615462 898610338 747041096 455000540 400691401 775958778 554518298 422566596 414060636 97058429 438825260 689050597 804220872 540697547 71926933 223649165 585082515 564288307 948618812 50163401 955770259 368566367 931886494 341157547 592043647 776910403 122159975 432816550 15987477 79301362 389378317 246182672 414398480 407882244 447750251 310566075 894763286 112636342 522205642 948791086 521273182 505023032 96463010 7170561 243130075 775565319 883775486 590282241 970051672 196514840 676923174 488313226 158855771 129405489 506847997 92918468 84744620 849351656 29385843 149156658 845161514 292535708 865463565 330117726 375237482 308732429 835734611 680808842 770764489 269410016 649249915 20990109 713633692 151861544 504508542 820977477 773409124 848135952 882023444 1352620 333142779 277496931 640394609 884632358 739767581 322380889 913607983 491499241 100644751 196815620 125254484 732277736 118983181 715795912 619619420 677002901 808956686 953934538 435138035 984757854 307563835 278716519 596622385 13138847 522563493 468808559 882492480 564054298 713412076 700140218 768467870 700441393 75257819 676800512 549001279 993081213 423446024 221577902 28921725 683817840 660427743 136942026 414496248 120189132 271972897 227425489 680122250 555304333 866660309 931089786 668089739 980294609 268513365 369711803 920120233 915710958 729660349 991624330 927896919 655201216 215391699 550947981 52247678 530715813 639973220 940378907 342026606 844480490 460125191 419302307 325278092 896616809 350033216 236076894 780124173 54776232 847221021 614381457 375616535 165063261 165997146 656729586 303879056 871183673 887566287 348541160 391214805 768591187 221010230 319556730 385145587 42688802 19129350 549313930 535990556 553366587 512579307 321952439 707293077 953849773 239979496 637433531 254057254 672943002 237089260 916507792 450521024 675019774 702638652 674249052 296857300 962314088 902522892 20146252 186085890 852016140 781285462 168965815 2109825 710319238 629862301 550394771 660584962 411376098 881426054 153140577 929998255 829192549 888927177 838421673 32843358 831399457 522800557 355436840 133191675 918847748 635921706 453341141 373157588 530640541 446167512 207360334 693578766 457015564 397413490 458823537 286078067 666141403 926467854 476371987 629876911 148654918 754415440 536179561 991822615 491886186 913347856 862154691 464889088 453585245 524093175 141965993 774764599 742632397 905873018 770037060 143328940 24706447 664921883 214902259 310098419 964526167 356093107 811292127 378292989 778721757 75779922 959375596 290021329 987250658 298799623 943599277 883688297 887828229 667271835 257439203 270836168 941285367 342994751 621491117 545187844 109154326 361592854 192861011 769977095 355342624 968293754 52686796 688227202 104486871 718445028 134839573 425109954 967879384 783894043 219720313 660624768 731978372 984992815 66899864 299755181 761033381 614155207 722490173 50208101 293063251 845996723 314366978 24377463 881395924 185617655 820439261 316342586 809075046 978548945 344601627 175870251 226374791 294581362 439211353 484037862 83751329 183056376 489826073 581928117 448001541 6739822 25773643 586700133 585929560 856593319 260557543 835410807 596873599 373133509 719500546 266983773 404343159 256214414 830245608 477142053 866632479 391950708 775496807 463572742 643689829 840695999 515637029 144671483 766336109 353448422 68006170 240395210 759000175 843792516 455819020 435414383 951218457 160171243 427003908 385372281 328917560 650216460 209356213 887764224 591178983 177640666 908639668 331163022 778114604 192875484 297766348 706795958 511748605 734262694 319357692 844963593 102262100 582650945 434177480 926010693 13147889 789782182 535196240 135473818 25807352 245825779 141695781 160749714 332620288 547759422 282191664 112096904 314487849 95770466 2691365 2306860 337002198 973643548 525267506 937979524 131930342 654034063 297551073 997073580 901965162 124943715 925131263 791330874 567813019 831269544 320732481 775153885 627766446 179801132 395780919 829586803 649238233 639720881 225380776 249407815 70101760 776182634 77619359 977304377 927876752 741857606 785305924 723642061 914053752 37108214 979190668 645772513 115945891 517533136 386535310 733012142 396348438 640811175 458976374 187359153 793447764 762018341 557249048 65191834 177025524 98201483 703924496 548726178 646725096 651298317 873317460 182317473 688677575 328955844 848923505 948552640 463944641 890924815 562464959 760017503 854753222 384118208 701322267 608672226 253339808 523975676 384503657 154234896 55801990 689768258 931002365 493529393 462271877 152995439 539197657 653365089 238866861 754762490 784846546 719755110 469959528 418376560 41580928 402433537 305848637 626297098 196227329 49244647 270725592 680483167 154447838 31469932 188523522 27831642 530574415 983244976 28490217 822703805 123680561 506087040 151964399 908422977 679362672 249478580 314539454 341768686 224626205 599300311 846989451 126393464 690650134 566212074 898591541 523007725 603192807 677492320 933341538 511780781 51298812 609429254 184235493 239115097 937054526 159098734 729483667 506576925 373011501 921610903 77638780 480962369 741232729 746328367 260869732 106662867 445712446 725006251 537354122 831432487 756226932 289448555 414571106 340696827 712459485 670225664 720923316 520877467 548121002 670565154 482979241 670815972 630457001 405967846 514046510 26029323 6136697 232803996 436493744 631494742 463452386 234168055 973995358 913281724 914368686 681604865 301014049 360518472 507187672 614441550 78434137 953143510 920228812 162367006 541853407 983002152 943796780 323205961 949636342 598695627 551224727 634205876 77795966 646616812 494122557 297515140 717950417 631007031 171303832 288650422 489069878 949279195 364115431 611469964 877089823 235776637 370279360 288546807 568761311 203799764 330777986 917333330 158392611 821912063 374777344 117168023 322146564 306649740 804237017 648998154 453695564 312695535 396160629 474596953 482281238 271743954 100525675 518476315 403425842 163845993 856295758 579202527 353203371 28655438 997378535 452819748 189764141 415547796 305828875 771214356 797918842 682126744 956927602 156654397 961983006 499407743 354930171 292115073 631260584 222618490 996870961 269057369 305351661 839286319 837256860 695778747 28003172 301063005 838251503 397939107 923336113 422234167 429354079 367597106 975106048 610291441 91964856 160532925 520558351 241030282 918718827 637767735 382876638 633208294 984473306 686934397 141904386 612519675 277741464 474201719 270132785 770044583 225885256 632912564 224578047 97886757 55216640 641878894 384881550 974834150 504393484 685530328 180922112 431888488 307835344 70414623 157339800 637611711 551924656 132478851 946714475 787861679 384498132 766394163 365133086 608294528 202080323 303622013 455682184 396786811 334369077 206989545 167581781 360148258 475584418 303777008 985690227 632987537 753902053 469978136 690907856 271245742 923867341 708314462 820507897 313977006 408505601 317444305 407259693 366191525 427695665 34970400 936214982 372753426 326992621 827389441 859494287 525375690 41439200 27296118 946431586 230955980 50414997 352934255 401485879 543655189 519708247 501972418 940376696 317040621 587557579 253435867 869512792 1729698 351228071 592033411 318988272 711453869 522660977 416689396 808516731 909001979 133692196 877276461 871946919 853687447 58883790 327625709 710696731 401200998 803218584 697680331 230130822 230050145 642125548 467353168 818970381 879137981 549535648 501027326 821227389 786822132 339563405 757639629 601941926 114254649 741066294 19379305 288433352 877395936 302040455 486569783 356815802 192446383 371775317 33192828 961786739 530776879 843343535 955605813 475107893 403207134 965071444 141812136 117600302 482595447 909592900 970218440 3256304 631350235 152335787 754389241 402252868 92356229 773806326 656174539 778638772 236931983 4872944 692818240 868298360 259137890 682816819 531940363 162461072 729810478 587287606 48709507 899721208 991366077 664792085 142902686 360400503 144037348 927306609 608821176 666551895 824178655 963466650 41879051 547151215 180718574 931644843 693610719 828222784 737621771 647685253 462368778 252017138 815195873 417723207 22380513 259155893 287805800 707322329 761905484 694258801 515383472 957941814 625759815 955190792 840234407 365682315 801682031 660134589 100572766 889736094 220652264 177739604 621971803 179425046 958687481 619010328 33923990 738587606 761027658 816515671 361473965 802117756 492738534 203718797 455358802 523076808 863402057 627996032 426853028 64120009 971557336 979611172 597537101 533980129 232150424 765671022 681198218 400003817 397213440 781361053 808430161 966844915 421339801 292055402 141025588 755257258 603133908 489334340 173306008 851017207 232170678 232725555 356535205 348615816 620749274 507732335 612290811 932444336 179014719 458175378 51916181 114956331 197271931 95948232 828937441 490226997 619010686 705727760 194310911 684111948 95378709 743413918 600645187 841049874 3153276 782104334 285718219 468206147 37927289 286975451 377437961 859682306 298081608 484538159 274242549 529855139 486081230 313747425 953012527 928235002 995772905 696637434 823684634 476455267 730315335 934045129 12808405 493305772 183956156 463160095 880738365 969277667 869992922 54973208 104223400 132574871 350614945 522700994 630280709 716498794 758231091 788256385 576865634 766404368 990466129 115610039 601718704 382998267 917559132 258225628 991093023 27038608 450683172 234057644 623678283 541924705 75394388 207958280 527380593 92853176 39020655 799097564 247217659 188831818 508762284 423130407 933877382 617735734 739159617 607095184 637875177 484140900 5338419 973898493 123650094 636447865 846070482 227015734 886519951 906513519 719756444 394440214 620984741 638082746 984502785 651317952 791070089 226327276 417326301 401236402 920138337 935661289 200441785 827170204 405271425 643093285 267842393 714070413 539313341 263800290 162390659 782607140 897161526 762629942 591150919 356464243 322242834 703045084 255019697 422420717 609526313 957795844 246639343 182790943 550467399 958016738 97662643 30137570 505756556 616639910 259841245 539808228 748902472 169407293 601521099 39609846 764810466 813921508 285076945 459611167 600346093 672543230 945849263 476388782 248066519 541143612 536529663 529734238 58980424 154240299 278815205 942249046 47679574 592947599 462871945 614288975 14954428 748324224 236733724 344584648 445788446 767123947 719957933 182770703 437594613 889134985 728356175 97581569 591938195 883590611 963834692 117574830 725936393 279705163 379665660 716847556 460645517 276660929 844869461 65850567 579884111 195552944 132294111 498128940 780707762 632706468 534210723 849585975 890268393 395905530 589713398 849545800 8920056 167609740 181561494 855508247 640303195 956409019 63940025 247481678 876230630 147150647 686227941 590573784 249778535 417525988 953130384 687859481 666736892 945121751 469848129 834416959 150765830 760656727 941332842 746398756 24607663 937016594 203834330 194820534 492765965 238555306 812526466 956972173 442261545 889161321 804992302 89795241 34438966 756640252 852423024 778396180 823908695 921465519 387030525 537941109 237763937 265913456 229550391 667991302 580003070 141671087 952319471 229273507 819367322 326303118 661512370 395991587 96153880 473263064 438443090 430946481 901139420 89753012 664126380 995875131 105483842 246760104 142694471 107441853 682412947 540267920 384988014 9969810 475664207 672544503 287451166 819087324 374988329 482507427 804798497 804147183 713110658 777530796 947717709 687779795 554116478 548177683 273880708 291379137 943087948 812203943 447787368 331085769 317961621 277973826 545954370 702189648 817985491 979377973 40178109 845703887 45395382 604736450 940653156 117399503 723675423 601619765 885601448 15656580 132133182 350419847 465555879 173778830 839080955 918915184 622894502 685713727 161547343 16392580 804451412 567556392 27126624 820828343 44033719 13741672 12706668 770635275 34857495 813650485 198528197 383243023 562269469 22241081 960324687 957217253 813056324 492654618 277597755 683958556 770475286 203028565 280489828 355987823 226186907 618882809 587244129 873808302 261464372 856673978 210733255 338984380 605159497 326056198 233573571 767609743 212885627 319261818 881872572 16408391 167090626 123308112 420840458 956755564 393117928 990898007 635215026 748986376 2157642 640067630 665384213 332874238 183009700 452493030 370964723 129910234 762464482 962868649 160609095 748736905 386264691 304802036 986826474 562895981 595750178 818472823 200304983 516015311 97873125 86904849 454151599 190371561 233027407 679920806 282603622 147521047 710643233 48466778 949623652 590386677 247252997 635072483 796368439 492847123 620592069 978221133 303969364 572308004 360110440 775334977 921104278 404193788 435704508 112838315 703368375 90613823 898116768 172047679 858793398 227727281 433832009 774550261 242771642 438699777 296385210 579297338 313906488 385233980 56350809 882443671 685476860 658579952 90885587 146276812 208534529 961296013 882559274 94604881 992035704 420654632 50313282 673717830 99184426 797131875 109378397 337122931 701088710 739023878 904100221 648661090 385760902 134989943 6487887 484511700 891443439 571172560 51921940 70204883 490662067 634345131 401596304 74382699 806518620 153964244 279088714 710939279 373773979 323245122 46249650 95375063 8889499 571712517 221276896 337023146 945282741 820281693 747479630 585324777 458594876 89762330 14670118 357809190 163716755 310986909 819640114 617336659 730422273 205000397 668570046 617792556 31695463 177535419 718085328 622773539 58454578 147670743 151520034 289644915 371116225 93512059 297494344 576562220 764853701 96876065 570405006 14203364 100538288 188966118 987108464 406623558 228267077 671592934 764643889 769505651 768442927 459892213 523619635 109030955 363197662 623239088 856758521 179740394 991882222 433145720 57743989 110243831 147164132 971271650 148560023 989715720 800992674 221361485 929963730 140167928 31591500 779021798 946050481 99289173 58434226 474351167 753853639 331672146 466507620 651046298 615355179 299997426 822856666 211712819 99426713 139036739 133530702 501785588 403966970 385860134 686800392 878315662 495547684 670210197 391089502 333083415 48108777 505452584 545083268 28851995 677519650 56619640 939068011 46755798 123820647 367112776 695106088 849464059 600508551 147090968 851218355 990765566 914151179 831786392 365429854 291998294 445369721 661428550 81468822 861680523 559036806 954171522 926963786 765297539 154853203 404258857 561923698 934058482 154718737 452315455 542981735 834396832 266441286 560396821 131717975 363752365 58545729 216990160 164923061 756277432 315742382 93237679 67169372 231895793 522635247 288466048 506560662 859621982 297206619 269801858 476669438 598750160 326289643 227171524 271460296 151022184 660342985 207370508 374546153 677443969 697332348 803669143 311144467 314087103 379040417 31271318 223528412 983269603 467318686 281650693 578554084 445927803 690425743 927757593 884468707 822833647 535349604 192457575 333993932 663849437 795556578 392027275 155429168 930167870 113224582 807801723 224278527 310531816 745039827 298630966 641455774 914041282 352868593 903264016 885747149 459681276 516579812 877344256 93615325 790453415 466424810 634997490 944435135 996192645 452229304 359179895 322564393 119252303 218381075 333725972 80869927 768245877 190748599 165573865 586774596 776523119 334026791 67303896 423808058 555840148 392406597 567365247 353788077 301209150 143928742 523181358 849199292 245185839 849170393 883247451 106960181 508087932 53203277 49472669 964391557 23519424 181979386 633174728 729851215 538148870 600302149 192630508 705367726 970924540 786668881 750438648 103196270 752238334 808197628 300663493 234808608 596188392 21595600 49307759 584864608 551084375 350974111 992898726 177771072 335214925 119725416 294663078 394107647 53075230 935291156 500563297 839615650 682500601 626607784 3886313 848443344 734230167 225823796 605146233 609177522 118176572 838117839 211156213 396951092 361775293 880473943 249087406 537477481 675170935 35740734 146070638 18625252 503753292 687119764 207672093 157585908 609207810 462900015 121794507 765630211 573567277 804363575 179870946 856068992 308639620 554607455 450133449 124355402 145939304 444707454 872168696 228160730 682833536 875703931 440405575 1232609 115323449 415372541 607245747 592873448 211216967 423687493 677346002 320848608 549645189 614988300 863638077 156200127 907626800 634369459 546511950 994323878 454652710 799815703 797192487 597753509 653876415 378079102 585600264 114931930 685424147 94055982 181529634 593791280 126637751 24853764 238173390 471634085 980832580 607204169 814493673 209306434 733903480 942791804 64692491 370205143 448874468 594583224 695290542 454045076 315907982 726341980 835813275 961359894 883379420 532939411 906915745 298459998 857668592 383346772 998717 154347365 842037617 292191671 379353824 548525642 358422021 850559095 613141669 973690406 765777472 199206709 991556679 639917020 183440062 584042349 997093018 16620964 201057277 633894841 43389903 77314495 258531559 149101171 233120914 514341536 449048928 864700692 882451735 411953435 228685176 812127693 97181694 524639444 972027530 315787962 200447217 339437049 686928147 308476212 144832797 901512719 297275946 55307708 439639572 515630676 761516319 78541206 824911767 231686358 429019487 229437328 886895432 899059239 723424017 808986064 237465978 335331921 204985626 233356094 31110553 63153721 972311050 763259862 687970763 870519421 715107997 606002932 602408260 792816982 193147021 427701667 596298403 694086096 760343135 345014080 888399090 512592630 667771521 169895035 640806980 555636023 690166407 844846432 733108493 679791644 662044919 954287794 91035872 330403628 630890917 117976503 682655745 902142002 839677254 440796364 674254571 524662091 129367447 95294394 251786382 406237560 515072953 83783838 226063054 699378079 712241431 434458448 826909037 206415353 581241594 370790917 434766029 417710667 465915072 942157445 275395921 120358028 846299653 749172216 529357139 852294616 127596417 120846422 511087207 733510136 629178166 243575700 612331135 176880445 680774280 181935540 648313318 57190380 396272151 486343022 578053881 757233507 652490787 739034245 728717965 802518784 342667727 481440635 734840839 80967071 782212040 698970663 48829472 500881036 142631486 340720803 500207003 952000296 717562248 302687525 799395089 816159004 717756396 678458263 720436482 848823308 289656842 119454485 667059809 288914728 150904218 527884252 373481248 191449920 924624747 447570003 999914635 354826938 931125169 225014761 588372653 487991341 736232861 287803698 307955266 321590519 733629886 912081908 917019440 883653593 444248689 216230851 483154822 718527219 808973851 393662957 677744462 508146317 907448484 345806735 987668434 225128849 648838968 950279297 830005212 723476302 662755316 409081656 14544454 617642319 75177107 838554320 724395673 617901206 45425821 420101965 609112096 477033734 264520334 271573607 279635556 339735972 641566296 872363193 636006065 721924137 594926822 857090217 948082247 941966371 543699070 224619117 638528713 658551729 271620193 228168686 660187732 982424097 648009556 661549650 535324740 907479259 688713231 745605620 936842053 510977549 568895719 250469978 244970214 176325032 713659508 150296891 871609569 676168499 981660378 481331172 477462091 874886346 560340846 933032155 492157858 872554866 851658909 989901007 725458989 970927777 426928245 666393458 287437687 703892523 876163549 618284317 875142411 303038869 258160675 899814968 707996681 367887189 293552466 516039706 446881131 962572414 471295072 555086301 334992110 439835292 929641306 895880613 833943888 480289047 297017952 678658701 552988538 616462173 279013912 848409219 712841338 440085501 498990631 895818692 282667172 815516510 757348591 438608598 22141870 871360256 509745292 859321946 81080985 463399214 395656533 986597502 72207715 635960516 196821141 404722441 970402895 450320381 493600766 22043419 700227032 186439936 729222999 946432071 89919674 521033388 884933566 187431416 44789737 386997074 861347350 819636975 921548006 978890741 202473138 588249215 596149589 164209148 527014017 967839710 24674727 419131583 547400007 262613884 416634462 244740376 800160995 494444301 796478044 634963829 636720631 630250204 188485801 667600328 623286383 278675703 158395164 844133820 200203268 997900345 294450569 679305881 865864545 502585558 603679209 636688674 951974306 200367325 941619659 263778770 617786739 958483011 417074558 151267511 759807603 711542255 50611520 6603350 281926020 121339724 706196649 673152208 239352997 692104382 127839336 434733321 288770809 163382798 323820770 205864729 9251193 579359280 106027969 723867097 146561218 323974721 352681391 562145839 756969220 927661999 340156720 409377314 580795026 168163737 495188388 776850864 646219345 432776788 563041789 737504112 695255461 963536528 495718119 283188679 910548131 940941166 865487009 952833523 306443208 232712016 327152532 61289975 130776716 119773920 184043349 203839986 683892711 156889708 816350614 356944199 183820360 290172768 19729244 56149166 713573753 391278295 437981151 663054428 387550251 578787833 125183607 352593568 543534801 705987083 848411982 256086253 728197680 532834444 162530607 491056174 150804661 785008329 396660760 242299566 883461617 213263973 720700478 89118628 62317280 408381972 407788580 171736623 72001284 817159652 386881170 815823686 646457657 50315548 126260530 409486713 923069727 163363163 33753317 322388832 610467904 124879391 795708616 558408096 278895832 38683512 692641797 69835606 77977070 206192812 320702146 866364189 725424362 184373020 399547975 509418613 592271779 987954264 307596723 159623234 334011877 178533014 141183677 451893066 616131370 757017026 312324806 79489198 186490863 562044975 369110183 572158349 713213310 224058713 504415949 476665647 771719466 347236426 993860365 659524551 94139824 205347486 100467478 710103915 43337462 220832460 295811056 271299885 164378819 132423988 887780898 72428995 444171276 713065107 298247762 978123644 927491620 42660286 662644514 864363828 50070084 875544821 143842474 879040058 56660591 473141570 221532495 69044769 529099975 148031904 38076111 478946092 363245219 931165626 897932926 17635671 659049234 537127869 873375946 790523595 842101535 547989557 320359889 708344513 240415562 750797561 403152410 144930814 834043030 368290200 217397508 360815667 123699619 521398968 12833118 949625084 60955706 854068309 553824049 442945465 761125155 247979932 536366686 33255799 897003812 178852465 571645200 552261124 872902175 571055704 765416490 696706851 958984365 348382693 867561305 747768973 57713111 826228500 466148793 611623067 632511242 926141149 9079253 923583928 802479703 325301646 489031395 554708561 894261591 202711809 605875824 692254118 218423065 166838249 51268381 222658282 17671177 352152758 20576156 327471308 785941785 816468715 41000997 367753772 569765060 69392176 878521041 74814528 465196783 2502275 296004775 313474866 471520217 322611002 951925903 757283407 83854061 810648246 923344017 544536838 741931202 710490600 752440180 355774582 897726538 678183070 140686440 788109648 858078606 226357353 978599340 567895230 331476378 452024575 326084367 579005900 458578116 731277825 905954555 863293875 528637774 963119438 891643563 697364456 779767062 281626132 900303053 22462837 396446888 932509303 364666100 827941267 258425229 89418484 196632006 747415277 655942126 676735016 403552116 156083501 909595371 178740133 505336802 787330979 68005829 219231080 121384823 60948811 667776957 828466633 329913239 972572638 686992403 384796867 20489325 269225012 403178265 868133648 944339948 468163512 822705024 746713133 477056088 755738194 86013559 426571478 284698475 85777839 744625838 668931820 875476630 975514036 828224758 447756677 412833504 590472591 807974837 195291543 504139719 516059188 930091385 249273246 502763674 356486576 125891537 80906454 995982139 23043496 241058578 926297850 567040886 733651021 259891940 341626398 831483163 241639409 345770032 396977161 626383741 827221019 858575222 846591310 18300655 530386539 531747386 990205998 401455925 511647170 848344048 989023791 396761972 417320899 159059937 757363758 190477775 131479836 302463169 852221411 394322871 959906681 313206443 254794793 769784551 513204451 972344497 296289999 491198640 821863721 881776950 652075553 324812820 764483002 451636247 225445274 713020902 850643647 749159476 435697548 733743238 743975716 204660961 585872036 182257895 851137402 682877362 949549675 874375749 428811510 956731980 324340467 182596010 804122457 216029694 671409642 258936725 658418413 182142438 267145541 92018174 131276712 92825254 505218494 887738497 512942756 506897029 968450054 736538799 659188654 51890076 608467252 232242689 343783305 868632919 124437662 984964326 656927496 344877140 212219592 982996774 571271431 226533540 98750631 842502547 120359732 152199524 166775029 33715323 316371510 384538099 525979348 437338172 769462536 938074113 551409650 623957934 977354266 312572229 107232050 987684660 127437760 279797999 546540795 372766628 762201508 309356788 503733611 856262781 319782582 836582112 363652406 203833002 571202511 627841483 308200096 561745212 900760361 557962231 527843684 950441010 324275024 133385249 118541895 622118976 592460552 674931184 219533378 514978549 783821807 700603449 354133227 721297791 303702149 546557717 269370255 456831936 77006668 822126606 236844123 998254220 389699565 975694094 605117640 632255506 202113112 733188318 23846125 713859888 413530570 606955561 560765488 277001669 544566001 906793018 462062265 385284042 460141089 832478938 536115400 80510651 896782369 893145467 295277878 992296244 677626174 890150798 334369675 58646843 898197949 732230139 477128452 513976770 898440489 685013285 928216327 511699647 334024737 116669579 203951986 818206789 540337887 853724947 813648009 995241245 139838194 213999777 55221333 244175070 716769079 351297487 582751428 164288670 988206371 92761213 745560185 200198994 374226839 508710841 442715098 555334155 944631709 30682521 898154450 6073980 396697190 633280085 176930030 58985752 887837769 482025838 396329074 70447767 707822740 613261131 834443058 376843553 874668037 18827050 414954382 452116111 507576317 687960876 857467819 701325595 656992411 324872327 976640397 633834300 909919551 72338959 724489370 169997260 274247325 450503926 45373778 15128751 841724932 193818782 144289386 569496583 602314051 481962291 857263286 954930395 812125166 702944145 534764506 949106239 82086859 311797935 52274538 175747441 161018199 830325287 65973557 860154874 118598033 398838121 16096534 69699610 374437349 841703392 357416658 914545745 642936274 278525808 129994276 373781482 307052720 14389541 78767686 777449967 103612227 424030447 443846111 651666602 170866590 718681881 756825079 328782458 556974860 770663820 138123044 646692207 537623131 317563137 681175579 825092628 668046255 876270516 566989366 706710017 194619784 971231591 741515640 974107940 909167698 630718150 542494907 527383491 643429644 979120805 503146061 412911685 285323957 715999404 280705447 50702754 265756064 152669486 557644129 789544592 300315885 311604400 631877956 175051040 552737934 116733579 370000287 436410884 954509769 643597719 564451826 869663367 6642983 156363424 789965985 741023990 15808200 739927526 487995560 603053746 962653758 448066739 323389460 406006767 462949816 502544095 701189493 504200261 249115171 838085339 548364852 151933441 322328536 759457254 908009908 568818723 731082444 802182893 54858396 153731397 809406683 261770606 4516853 63027988 315708278 175453218 997002568 533343530 936623455 897464202 393002710 208435276 379302491 59014272 627978483 18515487 44140357 512494060 417383614 714545888 840727107 751698463 929339709 584886283 490962898 645737460 418781800 187299789 850415216 539327795 91952181 847262920 424784979 511739857 757418114 131872500 523811889 63512173 593810470 354853463 215503159 236048233 812599564 751233551 914593106 785730662 687836717 966408593 807971410 846124713 119370674 874989646 184297315 350618881 37431140 658497335 557986175 910924228 912113789 991758382 394285309 525497574 788547127 316461 701684629 280574687 475797728 184653673 48870986 466244137 623127855 50451178 272411412 326449197 4466869 44266388 494446038 288371101 349199554 858695670 74894260 750824356 783365800 258747222 905306722 950881250 622724584 178818698 696936886 583490151 635062432 258979871 312543235 800158941 830213287 310456354 675824338 505536069 258015198 564931548 948280497 883794586 201336564 148562213 430836753 441467426 397445496 766144093 276819004 9755655 104550167 179910353 511994553 439443754 639713906 801809115 26783362 663305577 990689401 100213883 197727077 211194552 4077342 468220436 155992926 864827559 454532122 191142592 201275099 126111549 158040052 896693204 267916548 833533299 480004843 823351875 480732862 886526750 366380333 836488975 856667108 569587497 733553757 188843771 567181814 108082157 136936545 254171445 422324152 365212076 178774192 146782442 824885694 332278276 526850192 612062216 190053501 806453366 196298338 939657209 236660509 322618559 365295062 813663813 464085729 841409483 717905630 747824063 110350577 287020566 153098038 724631126 991219386 610229677 142118189 191104701 95896767 583734548 775585691 780949447 793594407 985655183 249105657 484902903 575853766 53474076 475281421 488290238 178257817 593469387 678385522 679950735 433875795 617223422 398661397 170620944 75473370 57029678 444442144 762595056 759897958 903614135 511031601 901280192 256720239 766245820 321291577 30790092 19335763 426807002 580943243 598542024 611723367 7418115 411961035 400406769 860603384 808897618 511875378 815385425 989222705 529425515 781727293 504774011 532236466 412645418 125163124 735108703 646997069 865201038 511059585 294750752 308599687 143033379 80695516 236608343 271606599 92272020 870062348 221804542 679399432 411532849 99916403 829774003 194863614 515221651 946579236 606549705 115930616 174703025 379353164 220614244 60389688 659140148 718116568 254126173 544843954 459317194 935719355 921609144 281943979 895672459 528318213 413278054 164012910 697658503 346829766 253593164 389899747 75766954 578293202 602144510 869019576 558787515 265432703 773110192 806912063 352797760 978089698 406829836 598889238 620171314 564597836 364442739 80485882 300883142 142156560 9642859 562895536 402598804 685892111 249502177 719826083 301962655 629284673 399965746 114848800 908694700 851565935 954339651 100050687 814348888 996603911 55568107 409325475 101780876 62349094 527228978 171191652 588815936 5541117 456414254 943047272 385770043 339801936 246270628 304332498 781037978 936472153 438531122 559401842 248125198 495240402 596040466 598549340 257179526 434419564 587598009 271924798 366356127 947782957 833778599 876049004 932807995 785073309 641735215 45492799 138410953 154767314 241493383 615156928 480881875 802395536 30878013 896033309 118708760 815765812 23588153 590988242 13400039 33267741 626866384 631843750 523410666 984501829 611920166 354232428 423088483 550737648 569557791 965102628 116167916 59188469 613095582 638128393 838549222 488131209 343523085 799824586 664846282 708542399 811433588 257350936 2802171 216692618 17945059 450921264 707931078 589114788 353582285 85316969 689944385 954777102 806183109 105080125 545571132 215873873 100353342 626313819 86037926 924139581 798885032 942276969 415091592 314098226 669450657 515100830 786319120 252888648 317527287 378907714 553593826 898963889 346579059 221875916 64807730 433298640 847121271 801927296 962238218 878389084 7931620 556444577 442471120 8321192 539809770 693166863 518985075 8718640 509239025 146257316 946604037 560161033 444826735 220559147 570963865 305998934 145750768 610951832 87116147 196728683 885294248 905113776 426247826 505249642 157274638 15555862 197914950 358247145 312523748 98404712 615668193 25429936 110029077 527335105 656733921 369793771 329419167 343932746 324980476 219221099 416827792 816641292 927367161 32214094 833126924 96986471 164244914 803588858 690011326 882809781 893960246 641878756 808002490 955211660 844367816 389582705 703656776 823807614 287629252 837970055 984846933 343243509 296731860 639802981 167111213 714905192 295886463 357844358 920504170 936996587 152709299 616313869 757701309 478625130 211192255 337087710 146923564 826519957 584970242 124007247 171677100 180675063 237447707 592658393 730844033 82585046 929711418 469537721 546507509 456270297 817037332 233521388 188625769 427374069 573497018 37923455 906140457 233062027 730379570 890946698 707364045 211470612 118441779 656187906 846064226 692905312 836134859 715436872 456144221 283163218 567714829 290385352 249753779 305826990 862926571 943503100 52556138 583264473 385242135 863174106 670292551 948372852 408368318 86408096 349331316 33599487 122142100 26370060 902846063 309120678 62405633 192652119 437399689 304685905 530585883 889561941 429114140 856964668 551743211 385940559 698464598 794911791 559248845 991933722 896351871 591998232 783109574 883264499 913818747 346949409 821811586 450685836 708981475 132987761 906563115 214649849 536463223 880817620 894019879 110813857 704150142 73078111 494886079 427745558 839906575 642558302 89765820 905153296 233592882 149123500 513379088 855313571 735863487 249503385 996242139 138218710 425535719 963948619 563213018 129129925 640371040 812946404 62456930 74604646 784115351 774629119 233199378 466508306 89047550 804160856 284045789 818419357 247005893 421649952 931667351 636922530 862705569 435142008 268349671 467109079 54360959 354759598 303246315 314343037 699759368 390341288 905047996 180501275 952164602 643407718 788147613 313340998 428170055 825573244 694024625 362946740 48090768 280359043 762689949 162502285 321229304 777607184 761830978 963303903 580209691 160201508 942758057 788356991 140710459 5734646 382036687 310569181 984357419 238129139 562609299 103332395 577824296 58630495 627457258 47876891 777851964 718596748 741349409 775229143 424911502 113167341 108357799 611660559 20038465 292889555 707124398 670587237 288403027 181209845 534600547 694020616 602180696 908708445 287552036 554297215 397618787 602428991 813986324 995266942 31507609 526201512 258235375 625559976 615841771 155566211 325834999 324910728 2838723 146221757 391058248 330452378 771696585 397235620 440470500 985071591 887322391 805660553 99462890 124031124 577295228 386493006 96921529 317332444 631893640 251465353 67042631 708780865 843435755 584533134 390371490 796043982 777428802 477361829 710368523 835679370 133485504 262088232 540212751 360061879 267270924 824002219 250843374 961759596 317423976 969263808 886625847 480228072 963610426 91380166 218403016 71296650 877231652 821083386 134997969 635644961 573290821 564286704 745748766 393983559 800011283 567314540 316678386 603650988 761338165 360580700 588143922 897751681 800314266 719617495 23079920 385889076 385301051 247143272 226848145 580130853 854087092 853706375 344331334 111106358 135266811 390234014 483354916 944459382 376835594 908944340 476948489 244452359 244065184 82009915 817178312 989866879 677284894 721634730 341094280 27029515 532342576 325789860 354805567 743548892 521294731 950938914 930584923 841420526 835281134 742546218 827018656 469796394 36092205 365572304 764417964 998815515 504530954 783068673 774346804 62922925 749795191 867790376 132588187 830643723 362366020 885000856 627645254 335125126 38978331 604954772 285817861 190140029 461500791 699420709 637275932 811011864 737836123 47811148 551430868 714777637 410129690 843692185 574682459 845840744 604926422 139247911 868216357 34138255 470125277 235737758 579595032 598283657 715216286 53914153 834598181 274103787 374583252 512627851 198314913 776676831 851997899 985283170 488274253 535039957 438745033 501315088 636599285 431284092 911734903 728116539 69021016 236078932 684294788 36534364 622276286 291467584 191071841 180804373 434319212 189738946 572449739 335386241 642930410 431220599 557120729 406092010 376330140 180218627 637695047 189485403 993451759 776805616 67988046 740110045 419137619 482426014 651462916 488446384 798968069 462251408 60143646 497402226 556766378 797492747 714004413 463113600 689205333 765701971 999660294 486636604 611986538 840238295 984917735 735146886 135383136 962522973 170842780 916219774 733444876 59543544 531005028 994673828 661313908 42461104 199751702 926744893 280693579 628790029 406589280 136734804 560926058 770004987 290625750 886489991 499155216 617914091 384342691 747522679 713341444 177951693 741737594 755907996 232630034 898934865 328570321 137136131 103379360 552238666 71895460 762514951 815793157 109727337 476422616 523273333 99119742 384103028 628272758 937038563 889222545 321835493 182190568 876948722 438720008 865724466 661573892 484012164 990221979 203550515 589020257 72038181 844782265 268192832 443792895 570318850 703018609 655074174 971486677 584634707 64095688 342652728 86168044 622337724 770917412 950955863 878651594 100256464 813321862 143800902 969275744 781432332 546771940 27914006 874379702 920608395 6987120 287582113 694987278 375444111 38676953 623165031 515237750 818161392 71693103 338559802 395693048 259968812 836879496 462712607 988197284 972722698 624409728 245812454 812989554 683380449 893513898 149507628 147556115 212784991 68754885 567812610 598189013 738196398 310290646 72864232 586515367 42087411 902567731 677016518 698512147 312793804 913476627 380366548 784497771 60006317 312144687 597909842 46228342 823564331 351654837 564326484 82703112 375348095 676308316 435327507 202112454 756415835 845222753 851329813 318221963 92297512 807568418 289258724 943871165 191960466 161726689 191840971 980879899 128717690 539764378 801979778 798519017 791955078 455624020 411302676 218225742 214887063 233798724 49336627 235660724 954239945 8995231 432764515 393232311 327665928 293786752 593661390 244203346 541871977 998236319 13164784 42380173 505601463 515189071 119203996 933293955 415440052 152306733 764146368 158097306 210089738 938016861 78666018 598116678 420772316 928722510 648272399 88867456 357341060 788540765 961957955 13944218 26227933 445430109 382595178 192685681 87772583 400253780 660558135 593199807 961330684 51661228 250862375 642495170 421207243 124002844 62406618 266234865 629036200 502243931 227235937 412683135 273689999 456169799 844058821 101334739 55095066 295836023 164760223 557762935 399249903 700693964 47674442 844917711 131965880 80669609 812511992 273331925 751891979 174139969 347054792 668327482 110877223 683276409 942586071 253318240 163798717 566257302 941060840 935484597 459472216 710112600 272979556 496428493 266179947 418098243 638844158 406948313 666517474 131393112 284260898 4922967 906191462 891391513 400798613 49051274 526601586 993124872 847952640 27010413 406463678 729572909 213276551 4605444 383761228 123069987 574482770 845040941 983437650 77193640 855089044 680423328 508602124 874274862 331245560 891683948 418199835 570274791 590208131 746030150 931504371 286051943 370555216 159836386 142234271 499286515 708412591 707641343 601480211 332956471 805159621 170378652 198066934 184335849 758230048 1279679 80451576 718826618 897585813 670827209 145935169 188330002 310020148 304395960 48477360 415580558 172814414 358374944 584046076 802098168 819367251 938477400 975607468 388405893 723114572 170746110 489264533 526443494 594238139 873708094 716954113 812524504 525215603 630230653 487070096 913640703 454484328 817836372 569144542 323148059 366633173 329593586 108702334 903340918 696567148 156966634 882060147 124932239 440200924 284987028 651240054 913530648 330569549 786054790 226187211 71153334 364466175 947720053 490527295 63642978 988598448 114667680 515893254 515983111 728150786 802338758 296106791 893469899 766792477 469965183 832016106 505377943 168461681 865873808 482935036 273758387 896920960 242820760 956195945 423857646 85626241 249218416 314333915 862684045 918665667 83588430 792702346 277693282 319089 851814241 656386439 734108927 479849759 67815506 894277427 713293945 800438256 119739878 249884091 269745615 617851971 27470732 683660740 210290040 312380033 311500455 300296347 202114370 544869199 111752997 750011654 3569295 734617772 794855897 30620650 375566352 761990591 244204054 551068771 134241853 10283105 921071270 816930362 553045014 969475215 192942218 313257362 502726463 848788717 736528517 129479406 336719631 972359384 878101230 358839410 849311161 407969884 48018423 325575790 928516594 308988287 241855918 827165196 296772519 548650194 38136574 478192837 232344984 438145687 427338893 841294883 78256918 546646043 184764211 909743412 735380395 99424127 778147504 539078875 157181590 435192509 780664611 944914076 146168243 598840361 87832073 488739011 913790422 179153516 210192769 703808036 870593969 841427167 875391522 891681992 761374157 313535800 486804016 748748623 509663625 196061771 374836960 140319565 770177498 379957454 7555796 791627963 857311154 597886216 16161007 640298022 243580524 219575184 924733070 271679358 595767626 829352430 584666826 886284597 747823270 517283720 239606485 674836446 730188513 978950993 946506037 364433895 573723315 565912457 165826841 793358794 853148094 686439938 123229119 819968102 616858389 217620360 330676923 479849677 488369838 183681796 482746210 177684115 690155272 886461496 221204995 214695324 775466745 168329689 443247088 995827812 130584257 984062440 752061762 785408070 726215335 634046628 643338478 695181310 358683316 702869791 531378023 743475602 97427723 362917842 659979787 219910717 951562332 807076236 621441935 432656037 823211002 566182978 47494567 23298749 44286741 219402208 268097804 925486356 823539218 425729216 35382758 423699767 84376527 666955867 933454741 147029382 393358263 677342043 286288498 326473722 734903551 372182008 547497393 887700575 269429928 18714445 100997722 913832832 494772897 272856427 666908371 900539364 886643499 120736954 2371182 804389224 644604347 954315690 385100344 634553032 73498102 344892350 27335625 499662394 763846883 667470372 772323691 235688782 218236411 120062065 30920476 157452151 615074227 804325316 870417352 155562067 498910173 237743428 67598175 541649091 488377303 988411851 615236893 576656810 800146298 240272064 828543004 448703171 899185299 248049396 71466443 711519856 853963779 581775131 165540553 552139764 698092823 625616958 734061628 311500813 425361808 798689571 36117179 86503039 86815696 984818594 798462740 615264510 195461431 314845554 418791465 127732432 419258891 268549196 901009315 969196668 587939131 395656204 668639532 641985254 572437777 692999326 286553753 820769682 347615398 393461792 621874925 577948041 551408904 457518840 250750311 658696867 892006599 385610510 59189060 565129334 944565338 642534660 473623456 275837277 420431612 227887032 267744593 140036686 523973303 242709196 379903726 441788674 930039405 242249590 898548578 542080758 589741910 68545890 179106822 73759461 320804908 400637536 609402866 596149532 128040227 690236958 200430088 754193112 108628058 196659300 839357859 604523792 946605704 847732 682824590 475180099 111736208 972818735 597904753 257321003 610252186 187201261 556506996 123860230 321451290 14097059 151661770 466032679 883567313 26328723 890817660 797095455 842191445 899742852 314097139 488113854 327179220 718150362 668973812 979545353 80490556 300090844 838222234 893250748 599939683 31236271 576164226 712697835 7949454 142210460 876120756 597131297 665520119 114539380 153688566 458570196 994106664 550251961 194258740 97770288 864359312 26014260 930101844 776372078 159969983 231454702 338582029 53525820 242968467 47924218 190284105 271105712 384594625 166017026 257732805 375388006 411386079 280335715 78461364 721918050 109964274 449376451 483187922 491476889 958805713 164487742 290431368 275955051 185881994 86438914 677225612 535172928 699938237 755121624 751649791 742733131 181642209 160146941 755704118 205234235 209874948 770150134 43283116 471401400 774289907 716452958 669555342 521103922 23952251 622688344 328062001 990281475 571445495 914116128 636303330 852571287 160870130 416138411 635321948 912763929 584957787 333588051 927120845 34785681 972473239 81205450 73010122 76778369 138200824 806305493 983127180 499023609 52425521 867702810 85093026 50557246 180302001 819250885 325816665 437621761 372358070 995709834 854446578 466577914 346899608 478343015 852336724 427527899 398977636 737688235 125345212 59040305 869013761 779314972 979038411 901050252 44566100 424508536 859615975 938050967 794426868 633939811 539254870 151972861 844152217 615262177 779318333 890411325 917570255 661619345 749909777 510806785 844207361 246916972 955684817 750115789 95931957 863554799 98537684 521324300 935260744 107307240 413671421 169649715 814040393 549091641 141843646 77443486 234040810 293651534 5914883 811913060 334260609 139739530 49518452 689315382 49123979 976791702 49203426 609677208 643474709 104008227 24803326 962669041 260037346 92883811 497335371 240367226 13198209 44791356 695020095 335133213 969158951 487543909 851999542 174035263 321731693 654074566 73237764 258829551 156602997 792852325 301189174 347414775 625381670 86278112 810379060 813742257 8024645 329329984 735168596 309425657 229251693 376045530 800035554 11963391 428274237 926736140 132554932 126284606 738625718 725964598 643300684 98703770 838800139 163162849 813765254 767148013 144921560 831241542 56974754 898300841 321556120 56134073 23836423 625976624 660536847 254786807 855219709 875216634 586407138 317451543 438086185 475006058 593997002 556341584 982313552 406774433 588157936 737117127 798062340 758360328 512668671 62314397 734801657 199906128 728697726 822659179 665123682 879652615 75271105 465451724 407238083 738495278 538981788 997335393 100901611 569937218 673268670 289465584 71341696 412099897 677637903 356281888 123598153 779634115 210261028 375529600 26005800 935544287 599889981 974539771 282366829 984578621 229834966 362786967 170957576 703937771 817104006 813476043 727949279 75012063 62777031 827588398 170765733 966367147 871370649 670651961 24756442 853881212 886068434 825439637 874368100 836041768 124502357 865212558 77762337 841031245 276099838 404997087 186412577 66916516 110377018 732975459 724225496 266491789 157313551 548850881 260829999 599724383 993229389 66761513 928019812 543835919 319133642 635941407 405212318 521867907 99883464 153875563 342848894 693477686 892413218 544392251 855468189 565369495 3330631 686856075 396778703 303769977 466043676 303855768 126962214 602553302 927443225 926581970 565815801 578516700 195019445 271024160 720050183 379217274 943361299 403961763 725776630 47819537 421222415 282606199 743596555 559005257 285609414 997564518 353428978 724345627 650638732 44246028 974707768 710834064 424845525 153061512 134881324 932362238 345918299 206704359 163045471 934460230 709256390 177407725 267100890 642291746 905045234 351929080 694663432 387244259 331853583 628349694 210191074 779857497 815618701 458563685 892826123 961171274 321075044 794340666 968131932 309835512 908994782 766544597 225726676 476664393 621363520 270967309 157326355 653946041 204249709 288736390 36707359 816355525 31745002 529560888 738296430 211151621 742213718 574705336 16239726 491518346 335429328 952264175 630084356 323940312 822277358 864326139 516630067 912285569 33385003 905939103 215804361 935892823 205047602 583609520 495853259 445261219 165672170 785003014 496969850 45765750 961944267 635204956 714090372 327131912 679571770 218156690 593628909 204617112 888683567 785955739 278973991 94903209 223278097 98935106 881008435 851525798 57589446 661337284 697960038 101401382 77220424 640208942 684077973 699467230 526047371 769145161 385780942 366915776 320946870 243500697 53016432 900285847 814195022 271061873 362637984 789355156 853945155 105901497 387411484 483758156 402911979 574731078 926034588 46366459 573305775 757302841 442916377 942886833 891741264 649687856 742139202 641789262 900612303 80059681 326326916 295355548 384352458 469424746 42096888 745483696 590015736 902059694 21296046 749731896 448805360 764069370 37167773 614939931 912429134 34468231 125722551 789452462 524103632 477376438 235768824 80961772 25073674 279684200 929298028 348475511 325513874 99749444 911537102 438890765 394744725 611217159 618268571 826028880 54135257 554473309 499562526 306815026 813457216 271579148 609307274 800761631 738830476 66784740 878124633 782807223 974646274 99596296 467212430 108441534 603517477 455949466 544216974 859975467 835454777 188545530 207372527 391501951 516005348 946354350 295132824 129329412 765960964 752530603 728882531 820282622 719326549 522045965 787834776 23169249 236551445 174003731 203416582 983615015 882565223 765150597 720451701 963456235 300322300 148858526 441684346 813406902 532662191 107435980 610412915 82885887 240289792 433002624 857318468 336385774 307323334 556047354 15912004 923054063 288326740 788200322 530374992 502111195 538626146 363042033 715327096 966720169 741651730 885879688 720001126 347841736 227343445 551790544 958757399 506342094 393510364 641640574 204166095 229333220 165143570 766363369 640383281 973369309 796654896 401076807 748702096 366178059 615873984 1276640 749914943 517500645 651988704 340320816 722039061 15826327 756490931 952434867 611546549 764788288 96716120 98052866 643830512 288279182 107764329 472850120 689995965 712316226 782969111 321556889 408341580 228739010 625625989 494061798 939778116 658484146 180029296 973682749 423781543 432080788 672540586 920396837 649467229 136770760 251781744 380509840 256619409 940090521 660312905 874203829 578942802 205890446 994821005 16410084 495621569 434644290 653056979 584685800 556600264 977353150 399919358 995466779 466755591 619236227 86977566 372776493 43432015 718565527 292383713 963190932 661913979 977828578 576393056 843635923 234491788 476210962 529082516 204064703 764160552 796498139 179365036 274256069 815869180 785954912 397302415 32543387 222571052 167680627 388793341 663291234 600843814 59319186 322590203 498120647 516835526 336344805 228892867 382689471 911493371 157913894 467037988 793198748 515351072 735793483 641929186 65303992 595722889 881857421 923265707 83262663 473931924 2155356 941508682 434092622 773264221 699763414 150107527 920404617 135775656 555641464 179355464 20830970 243235494 865026508 783687945 931432015 842344724 635770281 814547200 375382445 519528824 126862171 337657465 529746547 442010267 766357909 680678886 821047839 106944551 522541238 740476004 491381425 627525333 301063092 572358756 38220188 974389104 911200866 983248969 121586755 894029614 409886888 156503595 307346375 143077628 892015102 324148035 322488385 964228207 774964558 6996108 756091277 74569770 835157878 732656922 747022710 161377521 237313496 978474596 12893715 382123769 648431481 121571766 601950953 607746353 809523524 5872274 312753652 330985047 175913740 193423382 840796903 917177940 651252982 464327493 925262343 78253629 315957814 82549460 659209131 172480995 735187706 836724012 105246615 575844161 514285282 582888120 411424420 401833046 563425039 320826222 177332717 921118127 515833950 648245986 126861532 187755027 530151553 849929566 174942590 542751014 963282877 465434075 479907507 116422563 80129852 736620311 907724284 900265892 817936193 112850355 455638606 97815276 816022227 884246912 113848245 117805861 266059748 791523146 141519489 737274194 658337780 894238869 732890203 294051174 940420227 631733438 902309498 959291037 994595510 419659545 994988934 410425585 312077492 958624602 378397565 49454638 576997736 632178579 555389767 909899455 271001826 886504045 575742517 115068462 563907752 883480517 970117952 844661603 102502871 322007274 12684496 858950065 375480645 436382951 888432835 381638375 212918761 438368777 107515629 872131857 865546637 367577309 343104817 503184088 656632451 174441629 515332509 355284926 933249394 328946123 114042032 191258386 248234603 458516780 673351565 476116762 148234289 233798337 223502312 190610763 169177560 245464900 659380331 138260716 535702387 415003940 71157916 315696735 775176357 844021699 922706112 505749201 124053016 757773629 727921366 413920408 479519987 414519008 817119517 454268538 136035539 379656845 184362761 424052865 1997960 613837983 140970014 181074085 861413606 557059706 238216302 766754405 850392794 974110101 681198587 178399665 64826587 424682297 899201783 29275119 200676642 526082687 536858962 745946959 459357707 621857064 80917153 765917511 445072533 707702898 776055326 867206425 36362968 728654661 150918850 801036665 279665934 331910725 362531903 698201728 103219327 710510011 268371491 622117638 524463453 576456955 453627514 772620936 626370826 719891182 923018444 17185241 645816935 345119653 150304362 141074217 994601922 820273433 742365249 909658021 69624481 103195952 521908497 498048432 141128062 578697047 752400021 8252501 418284320 137214303 67270654 762863779 483154957 440341427 446067007 547592561 419419907 662978710 960000651 893644829 74636615 651606333 756283228 550915845 405146105 382640493 92781343 917254548 713438762 126790713 271070029 339542185 170562055 455043413 177201565 220430970 21202698 440022466 44520930 192771278 736474715 951186027 274164675 580700199 711742380 995339624 265110252 717686039 403377232 885213411 319242344 51125347 406023677 505772802 864625925 187529221 844920923 98659667 150780897 864761645 698311704 428736363 581199075 849960155 37337404 118384664 314875986 902489087 713318876 953787944 447608217 390239552 544886475 950607817 163590281 128442731 907696702 550497550 415088688 193726711 667482896 122843671 164590237 941552865 88394113 326400899 544282807 328028123 570686567 445895172 416115207 352194167 913053557 277304344 944398383 409846871 33132572 442611191 910547522 693126171 137448745 704623377 984957573 490941041 102729026 871641054 9020091 732293644 71582408 668015139 75297961 588830292 1253208 225336313 922682783 464424368 141160809 516504313 87116026 578220671 612684722 167303721 413230692 606179794 619312706 680169768 478206891 649396104 952000275 811898086 203938970 242972352 814980556 962307490 833354756 451406196 748666111 389906376 820433463 382889492 345138675 920732973 776206319 711215733 767276992 62446565 60810520 211795714 434118491 246349669 691259453 237806064 660936451 473692733 393948164 466342574 173443847 100166209 39470865 958891414 625651276 767304082 25951125 301178277 753395781 143881982 659304681 149199113 831664992 893291092 42850119 995325654 181014254 772555288 637147715 73254992 40884513 725369795 752250067 413386611 937455396 778377351 238709635 408323052 74712961 168724101 466645264 770303741 717134701 749338949 655917926 120350361 805034795 525286269 320926561 632165175 850794109 450030989 169270061 203850633 101159779 184824482 246548810 82088518 188310528 424214085 335274251 923941151 932497975 791176660 111872417 500662298 461974291 335624912 490170707 709893088 696311791 987244436 558809843 289265665 924793264 1463048 261439846 917198199 903021477 176534820 430674441 45959760 510814431 234317486 168568403 821539514 501021537 716527635 186588577 199951422 40430145 463485775 12846431 608602638 157765036 686785982 356123333 263667392 933799544 937372431 79291113 952552768 998495505 870302179 765033960 36448504 210346391 479990411 395403512 151700206 587268768 352171553 249422106 799251493 402843630 750245454 15921065 367863590 658340934 53617624 149553831 99316818 473162886 498327350 307990352 426528749 881488013 889577272 658086201 680667464 506457947 485866019 968506857 374874516 194513028 607294074 648323903 357410813 198312643 251937368 716609406 146386097 636324146 664450994 45225392 811353995 214171270 583034956 528060627 193490279 744489173 861365303 215289047 639309460 295407797 523471849 453351569 75336245 584049698 139219906 579562155 504080931 786161265 151984918 425348556 280713185 171015175 877689989 724213976 538248426 219272086 189444837 101768245 813595158 750814578 950279606 117026133 61881502 918988577 367971227 86968114 369715247 758561132 311052105 122899798 486364850 595070162 283493526 803304538 34611265 758642616 772695926 909887624 337350251 709016483 990315834 268222521 998069422 610020131 789606701 883411334 629282424 546223938 132796396 182217689 63575149 618353555 845235942 406860093 941964747 171317893 54183356 122508772 607558892 801650368 398987030 680929405 210251492 722889910 151943066 621610799 888497234 537916171 692049778 846640605 344994992 988746965 447664697 551852990 531142468 482536292 231402685 914656762 550927142 879166434 632884809 55528116 570452615 347144148 901277569 443305114 69076725 200778381 856252909 732696557 741010759 717232145 186430278 984621221 926807506 760077414 293690195 135157940 382074262 591398690 424532622 638036272 904911656 237270055 816712420 354045576 890837020 188043160 677750188 915409228 384023417 706195711 202490205 37471633 711106574 6596043 486256128 353970977 381688118 74277413 549235698 777685221 145516058 176445461 766137283 19431873 965713450 971615823 641644731 467609682 117065793 809281462 737221858 410560832 495581540 191272312 439068036 191957416 722997757 834121443 182077514 86715862 940404328 479327907 742477083 29396483 628004543 146195743 640093016 197040 313072165 358755 655371381 870076305 171900645 650222864 368085616 927931306 418765151 744863471 736599467 826844499 102143331 273954347 693084654 954495790 386092604 90987605 232110851 355722636 3696599 634839660 427722506 587319766 738332938 35284961 18484430 227747502 339727012 192014755 51918967 356699652 477357161 670914757 137892353 520295971 852337756 191763152 355352500 862521938 696228454 759283978 186945005 263455767 196899129 431186291 328770629 842536963 691997500 674415079 160245183 229613568 769949886 392351350 233257890 922135657 467416068 438153414 981273483 531714106 509605650 879269226 343291197 890891025 199599143 435878815 906040673 876706379 788123217 524626863 275098531 169629673 443077436 529090628 807738890 40669715 875040472 619809867 273719276 879371050 7654980 765740223 136874701 487183365 291378296 659579941 775599782 711519188 358926649 624803365 653680780 330779651 633737681 572127324 598172999 194947363 277932163 532781698 93573073 987361754 845551927 648874977 893550737 842277359 751456291 377703356 199397987 857834597 227193778 318025343 237916714 810682702 431743473 585620532 853493681 616512117 577035585 12148727 518720632 257430024 351848644 546372967 439152639 444839267 970692703 412629062 343166139 889913603 523037346 510433600 702708847 484076317 66006736 751113165 318226925 405319864 932539729 329549734 196512515 745703767 208720627 68020618 986375375 701687514 762784137 141213438 277018090 694028076 583994424 183713409 61722351 555007643 659198448 811755400 505365324 127514354 69319940 435469040 826019781 82998300 84679697 801256746 611756635 124018752 279636760 76438408 455574421 3343082 921699448 860035365 341959585 310215258 411755027 376375716 113609724 138363898 258721426 5803879 831854698 103809520 687442162 729759174 860836634 781349123 963241468 276561163 194413602 403174672 780738919 345616235 704183106 92992372 638416062 294950614 966425556 417123141 645234962 838229568 782312563 150013601 835679778 788354904 258747407 144723400 141177737 687192060 767542559 892430456 544790851 409505602 773043748 290536829 567644253 828860692 72613826 613561186 938435014 994616478 658623777 248602190 218453517 682734924 722103899 593044386 312713628 819541136 605486041 936879827 613220542 557209166 466024467 678901320 496144909 49841855 533754578 768065928 350407346 931011508 276596355 677664946 485255466 282011437 463327733 533006416 101412013 428067903 244893570 920696473 680233239 483782785 893084031 460715431 448969236 805354262 496787916 64420363 561392513 958697930 868553902 273406486 23135716 467218516 690528621 952114836 692511538 876317155 987495540 440331871 756300887 151909015 212923641 146286930 103495257 336791326 553840084 710180503 124588307 153600687 49251213 439854719 581402180 464344613 887654598 624422245 226872746 873001514 755529960 346345460 979711411 262016746 205373983 150617451 737131127 475898464 978220716 255090510 519291523 191923987 802949471 874477306 272881550 738367444 354070170 122205298 141536301 313948196 376942301 929696405 534194611 321150730 469628892 149886115 167484575 586079329 408256004 694965621 679399080 856221590 385249529 693589309 966338548 595803119 690592127 205340195 611394941 986315996 735374549 758765443 62403732 493692070 937718888 353574542 870723240 118912484 927559475 814170787 132826778 150645232 936198226 647132140 742856314 233977984 368700331 877052161 804266690 14748326 882494696 147910788 900701029 538878957 25694556 937293488 289482572 515045636 33440861 887179624 887933829 425879499 148196278 862685619 98051716 787125747 550388951 419378067 954615748 441791158 712093313 2963263 39395049 549731679 53369295 759668527 623995825 33651811 666163848 744400075 731878410 147792283 705063951 152754366 452484311 954762235 188036990 34513641 597892793 299074522 30616184 654152456 77594201 579299571 803888868 955212328 332178501 758043959 947447014 644948555 533206863 838861960 841237645 754229740 384619399 397827039 199424415 999118175 814836821 848644989 831618055 664353201 373563973 938931362 282794555 131774525 912901479 437213325 951916252 748480358 588463292 613594919 201998241 291041293 987487745 245261946 634467985 771339869 989285642 898726015 717692306 927002106 744024804 143212312 714371501 488092047 624301044 574132496 738037091 856966510 443752568 3070936 331413358 98295591 427064114 15962752 663039619 937263431 872826238 862014928 832100162 856299588 321485384 354555879 99283535 813914889 717176006 927011700 202419243 882562541 318650282 341682613 469058239 466837292 831923343 140256132 477551424 784147583 20948301 479692615 376694925 186704595 549095760 94645922 767427937 91122692 560808654 138897641 470802086 175376407 973177016 226102882 365655000 470994472 985214021 588191373 792106327 133561192 939116524 404061479 980685508 900246620 991668894 980633531 285097717 378597923 364528732 4462910 44699532 130152777 733285072 879284437 827036260 598010797 686383980 894049864 942411605 898371958 150942043 915224245 666504917 731446957 942321966 120564780 206917891 57274401 211264971 357597951 61077930 654153856 107845102 979847067 397745847 504082784 783954219 186635572 226359511 276333743 339708883 383179944 979766518 515244847 816611009 984448958 960524538 245574593 111227616 87684612 243073314 976029484 401330081 216788576 908105109 872300618 266961884 336755375 518294525 979457184 334029465 842392668 72318311 217674968 569723336 361401774 520649283 56070969 75946450 384952607 826186228 503589301 925937703 491882490 583061560 25385371 39612827 550636431 329565639 803169167 894138515 239217136 860838811 598533222 526867778 702850637 923616430 678582468 751288077 166853364 832300827 256698334 622780213 985258074 522256973 934377948 282332546 920055439 740356126 501504455 242475299 906288507 333229959 90895004 964911172 575615311 534854449 879987291 966290162 912215443 343159087 425017584 265532919 184447829 235220188 926686536 526572137 933050501 252183392 783935913 939665781 311966875 382886201 355402535 320972372 357069300 977638650 572755904 339196041 831576314 33865803 616805851 302170006 976983543 181818884 252783366 620462873 953650119 277685425 593093399 532064908 347921989 230347048 904726139 296944257 506805702 943504915 643534693 986047132 255227441 526367381 567365158 923919121 734805143 52485920 875241354 984983858 874899313 660407759 234350067 761900747 329074216 492563146 970708894 975615009 559191408 442582865 532348216 59239738 773728879 151294667 586262352 193369790 44482670 344212672 831779712 868551974 494485014 362050324 569175807 612397915 59919757 167315330 300392652 675571230 296994620 111384417 29973107 590576808 120794846 160344306 985022115 767356101 55310945 88940562 726988971 693071127 61712080 764366093 896274471 500718300 205497770 585239236 188673743 401991059 719127536 780074163 504848418 542535738 381051831 659654581 82582579 320702593 840471607 575782441 608530346 259052640 865104587 489845326 700153430 174238890 327003686 55324513 442623863 704648063 16760997 372206103 570192197 913278167 981701999 475289004 240005487 668045107 145061249 376233671 753882734 811369912 485359228 226619217 854860020 538840193 708671228 739053824 128838500 17971726 871099812 85101647 648469683 380283748 468928338 421707909 415856769 329596092 156945778 98845813 984286016 50248718 826797890 600364477 854127873 826516757 34190530 539508326 121489894 784048770 780562276 14657414 376108802 47761059 565268017 691711837 538515003 373704002 822171245 28914381 243036960 223676051 206959216 211304281 313036023 647837002 571574094 361858432 35929834 908577855 754179384 908789394 862580828 358504669 381836836 460889023 734484930 889500245 788118713 798957228 742968803 605982413 802033960 713574290 498301671 392491399 312510066 937235966 201546222 212498060 25272611 430796904 359703043 947176865 988915541 710689561 860044665 955823240 669895951 248921704 411288831 728376405 126230879 622732811 77510813 121905519 763351539 748935120 657503014 675643622 134007534 475541387 817087084 764353392 865944297 262951354 433837615 940589377 72444040 215544215 709158984 873096652 778998338 382702190 595703204 755893128 752354103 150925977 564810476 245402663 759156893 5695662 676497292 980896203 495117546 878943977 7241295 944754529 284936687 494176176 925417409 191536619 25867111 803609373 247217978 364144838 127101986 475407464 207344226 507474967 830991244 539452259 333289200 895809046 817041361 394373236 925593846 611041896 950945003 289741369 259263299 590410705 349422614 805121496 252979000 106887096 120852388 517959697 732580271 380412624 905188263 470845077 757631608 401315811 861299373 84599768 803018217 934514985 333557659 717971612 193743629 756666400 163341323 898049387 595121221 6335893 278624684 637335719 472047409 226261894 654466931 52683245 948760141 201743378 57065209 791168639 376026955 169534631 612323676 264426705 83255527 441627507 496826874 94954373 894986049 505029563 256327633 482976009 448357990 144124267 473705873 358768170 640849080 479416451 991199748 691218294 902436340 937315951 27745592 333490924 605515878 918660539 267222475 485036769 852111982 885217201 717527564 760077741 129630525 582106472 522783966 324799964 877955279 175437807 618546277 417016063 433789504 217376818 407436946 519876751 407762143 276616885 769918129 420104068 754095029 82009275 776670937 340109659 670938489 390018937 343422079 964317896 46738121 867274278 815942556 775350935 954514431 723993548 608040563 827821465 302406198 153075714 399471064 191461350 491514881 726879529 990317612 76393997 219195882 122677649 786410258 698249384 978798129 816032068 481890184 529663951 559875100 251545864 583228209 782192138 21293876 383773744 552953110 865968436 139193330 154547502 872150715 867135861 634528408 224099139 131438554 614509724 506304086 679898442 199301041 54469547 549847206 906892490 698494620 634962839 405642954 103563784 181883302 682387856 790968269 365231522 2079080 80477196 995613519 986191872 534890220 420895793 520602308 30630295 910684566 718783258 805803019 422108399 939500380 601637490 99774028 659747311 134074904 638302432 963946445 772447905 680828561 185575321 248032823 268780388 902497934 736302369 475491768 776111199 562683823 386130370 925266915 972163498 931925231 544739679 488596432 518865379 944840534 255692394 209067715 99191394 231444577 418698830 610304381 854268794 637787698 966989650 790902366 214971365 48995874 168817965 786214313 54489281 208213187 286953183 942812535 214998290 84239852 937464375 111768996 287555221 918430317 222472739 955980649 815945924 722132766 985884136 63196556 339550790 303656845 803624288 125320134 318761587 731275 222924991 328965112 195838063 517258058 143152547 128943896 571602879 785282714 382726581 972596058 480947265 425428272 757428753 295542185 489382505 606161116 828679438 404941289 958125002 821568373 974418207 449667943 641952817 533766856 793646504 812753487 370266349 114996422 79473627 122327000 876015870 664936461 495521997 916794765 406899693 850506338 814625180 825816707 167369020 63853912 409738955 739901601 942605805 504685924 934002125 167638385 741319141 90558553 590005453 296407154 87357297 551771323 308297135 370327837 680037384 577123753 633360330 80147009 689910515 747706282 952474514 281342509 120306208 803890770 409198918 106426591 986604452 317519355 754877046 485199285 796772575 93804676 382468896 253288982 912915695 369720192 227077151 758961038 748853717 422270886 611977625 275887849 430569257 786939501 882579706 777938062 754578363 69304239 171083309 427285601 680021917 420378602 630774749 2284802 86109531 847623117 813562246 324746959 757063135 214510334 821299330 259503467 209824785 959037252 132154034 445335595 568913708 573179089 771515301 155877397 206897117 813307805 558792149 583419239 21357256 132601389 405555052 307877551 534827787 934871740 140192045 761759210 540297209 82638210 978756335 321928890 491761823 973236566 34268951 92465766 304488068 179990175 260856702 171579866 385671811 395130370 55954899 593190181 499725305 303045727 143263218 495061950 119330816 578142097 441693089 182512799 712620587 845729901 798828580 537547292 841526165 673619640 196376349 286964683 862775803 25659558 430528442 667362104 6216035 968014140 29812362 802307481 290449979 477195471 568623632 40508394 764839833 933418044 827899891 722842484 322711729 523227089 748458308 494850154 247938407 391727472 396329158 285963088 113082852 784692181 847637492 581644679 526299919 132790221 904278865 330215429 354198202 713996680 694827796 485672978 436475678 255617091 247689661 358859538 358774868 268820974 471335935 192241547 75593963 446182305 81474468 523616905 98830485 369820371 897074879 831571439 260576131 642470951 910725360 746790152 709283636 596364049 28335262 626914536 360509702 317663699 187945630 777058332 341282371 85685765 10755173 464115245 600616796 337983911 632797746 596960960 896953562 806313254 840137522 383641122 448631819 536139396 211062316 991536806 68072687 971043435 661101851 150012780 940983033 148743622 140096337 833706551 1939631 794624134 4197994 471816255 28801673 391652194 488942473 639272795 84775545 348321987 358728338 808254074 432559214 292868639 793050420 105765423 287262047 1554231 68490048 695628370 573891329 177254239 153566547 434982972 798744340 132232455 506387547 306257988 10940700 184822889 975099761 250092533 360184346 736409973 598165680 256909546 994980430 611418805 963320951 211374683 598664430 898552888 510770130 193609082 600405957 449934657 16623433 859676414 679672209 34356846 540537925 22965518 965327343 883439094 982630287 381936675 208701346 365596626 751337614 140154767 754684397 416617201 315196246 997743886 9546902 242817843 738589277 683528141 222966516 609829321 674626418 891255307 620297935 466468314 856048703 852335648 100257184 864588566 442586693 658385319 596201644 497886771 236533164 165549971 494757189 386292505 823696780 746830801 945661874 737806957 904983383 991265272 372625193 311725280 222686508 420363407 230379459 502110326 825042579 389271146 522968578 800509669 358542533 439479885 957698723 942421324 993394865 657845515 499157778 576671150 899765776 667263268 80967833 85625838 311604376 193682481 298877452 448447156 430568309 997072560 874556514 215395330 391953285 927223771 726950913 708723254 573121398 257867718 723060767 844173007 606290801 582214145 592812239 926693681 260665654 423124978 792785318 487296241 467774990 309837985 475622061 277629346 679898749 50670068 967663027 333848070 99926772 597059803 574383758 4730790 613345177 418231538 959754163 332723303 917991527 357088615 520821102 417515594 724890090 738851071 147377383 257438246 150913775 933208404 494467516 475658422 724649044 612174227 568557425 739720573 567893813 355685866 58294430 828402572 852503959 151153127 882524611 346816728 883419363 481850470 201337414 28967077 224948553 634091156 155463932 761333408 176029417 787009094 985516124 631899191 315758220 991833788 407401092 148950883 568937674 839370340 341729566 355174461 721995134 399908560 492563680 428067210 504612691 873548855 828007586 258067632 689008215 809598579 282938455 535812921 496376706 674286858 203221469 379193669 755169843 945808376 964146721 675443763 316120936 138740493 63562977 114090831 565084741 56059569 618489986 260610567 519304316 919829838 362780220 823836176 815735337 459953441 431759536 915422951 563234947 177378283 195990996 724966724 324714670 290876701 560833300 794933125 216208102 729753179 992322461 543525821 348117014 971500185 20962876 692267555 500031133 883820703 428493599 397359583 961078438 356233000 174877035 83879841 134156259 615065539 852165154 514910687 3473527 490041756 43769261 670851110 767033188 590443613 332101309 22240486 468748000 525785132 837414277 894266669 454683316 448555354 726097154 586794701 156677937 247977758 61123397 180230353 603175740 841890607 664783894 397730993 805525512 166743927 669090861 997098487 985016279 556827614 624418374 954162288 242000206 96183080 339133525 50697292 373000691 509270123 499461820 606757636 136558740 283711437 787497479 459206885 699064575 137586821 782849142 450339571 368503037 242518102 834071180 112814673 684606579 862725455 949540 970921685 140866117 378218389 105137926 288136562 941201103 107527086 330516140 172414275 210954784 861269012 111227131 5212339 271790983 101811678 838030511 218018663 807042155 785648417 69300513 122704393 933893170 349983049 52149439 630129204 336933969 794336137 831321084 974181411 85172146 384685903 389988167 194123277 382389169 622663825 397756215 409788433 62723817 182229960 667734540 199955905 384520049 599130158 885488737 396646193 244300901 718407526 590948124 896157919 180720305 135132887 829434474 887979788 580411241 698796157 288825523 395854932 588595122 936661170 892497282 758916782 985450371 28670824 672841523 836110135 489383074 484069187 673896225 603293069 712965312 241712737 516663112 538978418 196460730 704667231 87205926 872563224 797597953 891995675 803827177 760951398 943207028 689346342 121258625 485061704 139152982 569371940 31252780 66405359 725695409 720863332 327123826 359305903 981829698 645741873 792910533 522921364 399146133 207678337 57041679 61093335 954510768 558164671 930783785 609655320 936396612 127614392 253144111 268963225 283954505 740005729 271634928 390888423 488544861 512502862 763602334 480306299 928627199 237069946 950828081 958249743 48134774 194748435 312832480 233222262 657785264 113701609 200940593 810367067 641304151 476207081 320720616 645662962 801178842 101495313 858643812 128023265 381107854 507919520 859752929 387742769 899267685 59567326 360760063 908893067 990014543 210562829 153311936 809176981 371426192 676146192 833930933 101243899 675325021 102390633 432119178 976422896 405775661 159854190 432272522 8540828 838436824 309954044 328705009 674324454 605166249 432267561 451166589 357189067 631540724 992853849 180901159 886859803 613996203 403961918 15543073 401834756 858607253 968255658 776681475 630928834 775576529 732584236 481728959 603914895 931444059 551697033 524885050 92129506 885608827 225591312 174719337 165408236 58782489 172443409 313891434 215981011 192517065 259666671 779072449 968332272 62360370 526928330 165819166 682310046 627599520 412141683 785206941 784290601 226615506 423456816 810209092 603846993 637916283 585071218 560254855 678879079 325982812 808874002 228326415 545010174 922923166 209553601 903733423 553007902 687938610 755058555 864750005 819626734 696115428 404445548 446715174 525935125 971085173 582623730 319955033 424512578 39989503 951529941 394180616 383681831 397434142 154427171 687838886 971903677 237250233 722270539 171402445 591170667 237582997 297752915 102421746 85653894 444329825 606373799 132165814 719054705 707222127 366190354 791987552 648653950 973402616 840830518 630593543 226364298 264001374 669844844 665897429 397482809 577157870 179810180 83803541 143613625 390812230 957045157 480012161 731861552 151589897 490826768 226170600 707146458 732041648 615741199 28215282 504698733 160963801 797528825 778129804 784762464 573454462 483272842 570723138 615709037 812169729 308070272 902415210 588527533 254996900 350335784 517274028 921090028 588073107 678185331 524143953 830275771 802590893 160452372 818961775 672083179 365874859 539095133 772805346 204284593 968071570 718019852 887844046 749207540 625950724 532478906 82582201 876866062 17372200 189448174 952065478 932709978 186350649 181747327 953229071 636196899 271446860 724668744 518913481 489675008 45067448 545296601 285258443 333898467 681425930 625671057 140684724 47638530 32698969 198926610 682794107 84588758 788095097 365594175 280948010 705468311 397544951 873273937 888149612 369053562 176831684 123556301 624937831 329598613 322370745 13866196 778955163 28184787 701672266 840114425 849974802 726897157 958577512 274093445 718849049 589073580 711933526 595401602 266835260 940911335 65832136 61389716 747384608 836135384 757765750 909284242 878067536 667790332 215614643 478811341 448147993 490914320 271973809 846244485 166800644 211404929 453749802 245248069 6175337 463836072 402957703 8182727 199426877 51818802 745570076 914084036 427944289 607201355 401674633 923047942 421250662 290849677 299349306 759883054 757854247 202684960 41203819 120681712 540505782 703122131 805394988 750449663 467183015 104711946 803997222 947508989 242459046 429457498 181882408 670482086 691144470 535952805 101874676 653169806 645045445 841310069 933390392 247322724 744852790 607835730 91079671 748334270 260183379 257673670 912277184 776080851 150387197 552666049 162273461 433136779 96085685 731936245 612636576 809062523 658775539 67661262 865437165 287727063 755615 776317507 384057494 872928505 943717001 722918660 844925178 173473134 274830131 240943419 619602013 847278676 903223913 268867481 121546258 652495818 383240805 797765805 823325261 656766399 531734939 830876729 866820996 673484674 816465076 377840882 608130184 399032684 249066223 582746022 537416076 31936953 279403806 655639987 771585731 539756120 445201086 172710612 185236416 255100360 984469913 406027907 540892915 147772428 285769607 912060138 234887846 185586699 428729108 36809880 991888598 341328930 190794316 610828288 995036997 392391396 488008639 685395462 607462290 492037259 215357681 60956315 903801605 545359263 90378989 202157447 293513093 718257150 214620811 346928691 617034674 133747168 112341834 463461845 77622541 819449475 635293748 592396586 517160299 200174128 289383598 578073451 249478082 745182265 494837592 407187077 103191230 806292353 318211539 939769442 923588128 147265883 169191990 80798175 65974974 393348785 692548334 583947630 199326900 417718194 761103565 42842079 107862637 38719002 668010742 761391288 639252881 10780985 265501098 591879713 525600435 406237322 932977240 823670159 670525583 343237288 729887653 72739201 900422914 115882839 442863534 325980082 456015922 665272119 803659423 186494282 344401232 542741602 490969116 64262065 356487747 39261972 774513954 802298867 881306854 368161000 160553784 62429795 312802188 876976245 648245870 6304089 838136523 910417636 281375848 479096519 563889490 688604299 796707012 549721870 583507242 362771064 327865460 974068326 747439244 362684781 249463752 543003040 550216007 392548668 211335215 360585963 446613640 845574010 894635133 584823566 792712767 210903316 656689069 279225912 983529230 158715336 551347752 553293484 655783349 9728727 404641071 482706849 495364085 249405880 390753659 677661923 124540692 571765585 727765210 721007386 731232397 796882170 262522536 66193733 315738445 468065184 727307972 856764418 933802903 280567982 643316828 50604187 663766731 414269438 724996883 930991422 215324751 2427311 499587623 597415781 152889553 645215692 504252131 560090754 696297526 242306054 996561073 738316105 635629608 663745041 801568576 378876947 590066124 130330948 144732636 839922019 255951129 30020364 238653376 214215347 455041423 155634749 451400355 560400676 568771315 494673799 114780022 305814738 198232869 129458633 462257509 369445380 603712581 316677419 138125912 240632456 269164393 451579403 930985344 905596731 249508465 504605201 985770991 176275653 58366296 729625149 17249215 448659510 64917034 887726965 341035143 536778890 490689158 596512341 758965170 907698595 494449382 971984368 987665425 517578557 568610427 704566537 533952332 533732982 772829202 277916713 234232991 507809925 720496751 946465015 106520546 805284519 418764442 184550771 137175035 408124297 206547261 402024926 643835550 35787066 319760437 649312012 214421586 564299974 513868430 694315497 551343131 76795853 628021743 937918532 963479718 992168842 444473845 822366572 436183897 402269993 627251697 958949856 356397839 706925689 3107517 202822998 638501534 944979533 44595839 750767351 79739179 546096593 344189092 940356624 320779335 369319721 136964865 811255896 577689761 265161512 379559119 111875244 654814610 583022276 147125402 202249385 550011223 607641817 34431457 856009534 57203614 574657516 256727093 181798764 312242838 161117692 621490640 27981688 477148218 681706648 442485364 945404596 295797594 526841399 204603810 867974949 506200084 481703994 986235251 850549195 571535540 318280482 282302617 323233435 891152730 726714488 359689808 476886653 499141796 959079005 458437750 222908355 856871760 583379263 307868724 105528876 956545484 197748016 60963935 738892537 87424196 508764406 255728077 402666379 683481038 307749891 863531065 187414154 296175059 7353406 627281399 287361726 218758323 166268413 825483691 406506820 361365982 432318145 604362472 60659393 765404350 904958944 333849158 371045823 853906715 39079353 662043981 794720601 154892170 15960195 461912542 901681605 331339872 222440823 478482515 515199905 543352955 548944670 445148352 572041491 605386110 608148634 388737357 909392115 486553279 773888353 904072312 636915602 63821445 416941425 115629811 411636024 607253206 558866916 861983376 510871044 614966625 247624256 141722150 543914873 75668591 471297530 988409890 995316487 643546304 796225214 241241561 570303165 444376004 926204709 37282344 448621198 801188043 458109415 546525647 837779813 310867709 506820573 339636601 955853903 422220622 788267099 361539077 802788348 107942844 639457326 718253529 42313685 334650152 234453810 539441674 93208886 775992935 838433226 454684038 945176007 456876852 404714426 959750168 832938772 861012686 883470478 811066108 891323905 556430418 489317870 974914715 645855158 417969088 730476499 623768810 767045117 409423762 640792684 408132910 319306145 989201640 514051045 431613123 550055173 583805749 987593738 817176364 636588360 943360924 508888017 520392550 280659540 672666896 213985835 792596887 435500857 211192748 517151295 102695179 820779521 502737431 831389890 419127246 56334688 168176153 408092997 732040632 535534054 532105672 498736058 737551622 102252053 155568319 135331021 844742408 570202147 302701056 641987969 899511948 27069130 900232190 215522991 122773988 471789112 518828763 529362679 8785531 790697276 728971180 328811484 157402659 655557403 258187283 326870015 485423636 533652931 672597383 573477792 178461586 291969892 701597115 1176816 903880218 358221584 306637982 163595997 414616411 220532802 264953442 69374096 943618097 400658103 555756348 306759886 813655952 174416920 512938061 816014014 68699589 283612840 674311944 301652334 907226038 757605961 983004103 335545610 686804299 88252959 347394567 708038404 157034364 586130969 633713865 646479997 253327415 170377042 306141864 888695787 690711569 641465356 761288531 812763217 97417804 655974125 352643717 549866003 795450405 873985452 754408143 621641190 47490075 197933848 891765711 584449519 556644053 475103162 995032290 954740162 136124675 192436384 229960486 405969487 115973885 827713872 682500743 228812044 818692040 391617904 708686457 730360114 510608916 72127769 200911504 507625587 47462918 471268618 670028016 84761616 792565998 251449711 30857608 519537622 807031828 536610904 178801606 375706907 305035925 422522699 732704413 803118800 992941827 757445731 926507548 314093630 661569373 94992784 609679682 8690720 177129676 696600732 179250633 60292794 851081557 237097240 189884191 681130174 636225897 769151510 273569458 888333909 914321095 881429906 519004330 146477620 317575014 453873745 196104294 266426196 627739637 363627648 147396194 287006189 379367643 169307342 577743276 442796924 881548699 464930398 257232321 308767706 509646312 898113451 193192500 57809802 170816697 997902415 900986343 31357593 185647603 900221981 695890702 323088899 541769615 668993080 50475245 834651263 252195482 303851033 851530070 702644357 414945468 379711312 100971504 544829873 38351027 872250129 177673799 430174876 10394200 698610236 365870902 342583569 113936540 27487111 766627756 25333671 327479111 498051961 837920311 947904442 179979717 175274019 57614627 377929744 856501861 31463397 180759839 918104597 847495870 812291200 864038973 975322730 60383219 843275306 96262788 791294307 423278841 468431199 963209532 752652576 678397132 238484196 615311375 526902864 643678681 301524236 15358936 800425174 588693735 685881092 165582188 722866887 8388697 966193630 193722556 407383703 503611396 93534574 682966198 593504898 124760619 166954968 543371217 469722263 552637004 394789996 40616358 936453819 49982676 762798423 733923985 184701521 754818072 905875851 430944443 757800826 628516530 733688171 249793244 635095366 722664799 303124023 644971138 818549486 986007889 526524941 701442343 194338829 430359722 932981486 584818112 597138329 667677182 525126132 367709487 124006438 956013604 447367794 427888178 95871826 604317841 864422752 116809972 505095421 64934518 779701556 59170884 64619074 53360709 360483615 767373384 800805199 793339529 168358040 591833115 235316459 103717631 711933196 318486623 198456456 537526795 816647067 38058199 284275072 996488586 340484232 848497070 425281750 248229845 474597959 261779691 830367601 980698874 74917652 361588387 284303808 417149627 550862198 918384132 697895238 602312125 454428741 71876115 210798934 286627724 426076632 951425172 477398588 550001198 234098848 54787273 975202806 302689150 483672752 41867262 724847727 298029174 388116997 906655050 423040166 543240831 454802144 999236344 448493354 463360824 156440773 817043295 72868561 558483184 715781992 189739456 113182242 488865255 648832195 289186712 707912664 772915401 473438638 664189026 164966253 186479745 300870154 275069104 627009085 538675824 728733466 229064515 839619944 89112207 193819488 422646222 241118263 319309848 785463960 55545989 461041844 930509132 73422587 562558999 61636691 642961388 798210227 814134794 80300776 675253839 457480936 407266890 529351528 582572116 247370638 513712339 713287628 277251490 151047395 670747620 818246302 162173203 145996826 786464631 213998240 744993046 138514955 656271154 828418573 285951109 804381871 259868424 342886629 758144361 266593570 807278733 767749477 360737816 186773547 767888428 485576564 797883821 900109732 761822053 208749740 482602761 254242478 731570214 688048562 120825652 734115772 116158741 92742055 62133554 291893193 583559656 803271406 77518358 306708809 565949597 828749053 207027980 603452358 382677140 949913716 251311160 436616314 145830912 733818998 995457645 431749705 196823249 923262458 25114596 969447435 79431022 630246627 480442470 431569450 853310660 194463005 283273922 755673123 87229427 936922117 798390492 816796684 309170831 714538494 8187616 395536790 58853838 204259950 198811352 838261622 578863892 832702152 506528802 224766215 988191106 27147179 966738753 599755146 111043253 508851496 486124516 704881648 9996896 122700874 618653920 30506190 582812422 825563919 82270056 944751635 52072012 205102063 800964030 767008902 451483664 93656108 555017993 310587224 782340256 130073843 858035793 709615810 900002027 631875360 893214535 582587870 326430233 4580792 612233584 595082769 604136142 587306521 963352671 318326860 401104934 870245013 30910316 289863007 749843566 868187532 399399287 303295588 883304316 931932733 748735222 44143913 92106148 247892875 67754148 843830677 481367271 553657958 722863346 29009511 502496553 370558166 278444199 540426848 522099984 512962994 691823830 428945920 764928589 59749102 395503182 750251566 511797644 247160153 959072136 8611039 589875993 588238527 234380147 779552385 625223599 690939901 582375063 227009427 794794214 545977496 548860706 854613546 823341172 764549291 648065000 146493403 646671556 314897051 860937622 849494132 809062650 781240738 236890167 961979688 114530294 400604130 181719781 804847427 321491465 13035384 871554408 17931544 93996079 645216462 369839174 301238151 844338752 723939000 629308332 597883790 181639837 55304492 619300016 254316589 502695647 878579304 855185038 99018640 706623872 828714158 227895288 553042766 118470853 835779392 724430550 458370591 461408612 641459670 440642483 753446389 206267660 786608071 920905629 535169535 440131537 985469024 135352683 27126609 954112635 856612560 529612280 603673539 287711350 648857133 657221181 698439929 449534023 944274925 265855011 734374004 553881767 188258893 18666948 381963404 694896746 674412080 403967368 563090818 150289700 454914162 683502263 804363162 267379078 510176867 436865772 190295407 534474823 116649482 117653361 111303924 793084051 266510013 283294137 695842695 797789577 379680516 735971501 209942790 550171106 719628262 379073869 469169512 741020046 233206428 657366861 248863262 570630726 69159491 424527174 414135447 215634011 676725671 891786412 621540018 313673984 497475243 809397882 696878748 495712505 843722591 247072030 772822489 741737361 672276564 991275876 918896037 93300112 582787672 772786860 141127757 37956335 770296093 985029048 801700152 976014862 787751420 785393676 157890661 519384706 418778458 791976973 547353988 206476225 111831008 893243090 527662443 698912415 866245417 150282129 171906186 54053118 907955349 149024906 334936040 798159911 959577998 63592901 732205499 749934902 156932514 775214856 980564273 714275531 992950152 236292680 61885740 637045627 809378917 639583355 331131646 610690761 176570173 856875768 721445169 878040361 602301780 502722113 698039841 42675168 225340314 957158277 925545864 113025230 962970133 203304181 988487916 656624529 663776645 257038564 182463434 20844040 114890962 655910770 986399474 117166628 323169395 443306896 958782875 212030327 23028253 220958663 121094578 983500239 388234269 847315796 327864105 243089427 672744377 283826643 562585362 208341911 77196793 724108006 317670069 84388701 633487444 157957470 791088203 310977469 100583359 746939044 973978051 978905348 901404583 240689000 14817840 403360536 105124265 42678582 564355920 141317114 805697508 713021649 916772298 531572429 130623715 427590795 360564879 664628167 232678660 82647047 961771259 223566727 429406152 544323906 755996188 331813369 509448788 219839834 722700298 897483032 960772630 8434459 460380541 247047760 884082706 123831027 425429112 545805097 201190915 749829454 783814454 105482154 613120933 170980971 953792540 69874061 785272379 669847162 643268797 544855249 469140006 985041678 505717604 212892603 978834379 922754094 272488597 65664468 255125912 700202361 628544821 602726315 90472637 734528440 652299326 915459883 917830020 527235506 489303004 957177438 914152599 830303818 147359465 250542919 859890572 385361710 75047559 34433714 690909648 429940884 695473633 154946056 436543015 104856812 879965965 472501990 937186888 814682651 997151180 140067407 79420120 498904481 416382835 51358550 920317784 35364479 202860513 988323088 676844123 565079590 498993294 919697260 207266782 359560732 588744790 225690308 796819283 830963752 32574626 370888054 918814364 290822666 439580729 71174316 654489066 611770329 460939595 131287215 442989589 255104535 983830006 970719343 736390434 117949182 858855366 986528659 524218738 270938844 729541754 733141331 685628355 74731484 930279591 683369507 466102049 704904243 854395722 325542731 713345283 551309263 321855208 967084096 719747479 67539785 406501841 757113420 598473051 44532188 292940012 35136513 336267489 986226770 637325414 662164790 591438276 350517733 41146632 602049950 313414078 123862931 480782775 26749451 355759297 952187356 699053951 450194332 974028075 737184423 65201817 102417990 528665063 103001268 936218398 576199009 659267623 736037429 624418242 177633697 475249621 137522920 568385457 464126075 355646705 379008510 965715108 650843436 986882571 909866257 516307760 872981134 838702164 425400947 365580356 457202077 12567703 166214188 12012978 11699196 299235331 842135105 910649565 408268215 795720218 879620246 842968754 448960815 201857409 322343019 312218984 86896550 863342400 144326175 301420608 627381996 297778017 313390820 204845695 852159111 192348443 130141825 775805911 841747778 70896067 230760142 889558420 109703630 850923269 237372391 254821457 704651401 212383901 591147117 865741222 70264992 918452048 167561992 83787518 817027754 228251164 559034854 83911699 32036578 771342613 131614607 191507931 393684750 787387778 954040805 418170692 168941990 689981346 846596265 163518386 846036319 716362254 387989211 523756312 922105486 754090811 231160391 257481401 820764976 712991908 619597457 287648061 429447624 706838394 450612338 536883406 344706560 891327674 375840333 415497797 768461925 885681440 165965265 438374916 94145484 402119698 30112163 694179587 379627917 537335299 890721967 630213045 126377975 549430232 65910244 970155896 54908986 384441934 240487348 227727192 280433283 463780074 742790774 448738945 521768238 22552467 631757567 242790258 75434127 352531841 802204734 493947533 697266412 566859686 640093392 423723960 692189955 292547259 569213006 176899332 7364531 382776524 328219336 67404274 701401644 196477965 82132949 537853512 707236432 949201536 153962843 385652772 773740306 509670069 107694569 542208308 331259094 236063483 793177188 572607938 15175458 634559067 891741115 477259742 200044045 323242208 749594720 115518616 304414297 74580330 378840801 795728835 845366793 203636049 617753005 266166378 637619116 700050426 599248070 939991578 374304752 562789820 408326365 414903360 648026602 669380371 210009394 466119021 286570693 789211103 711772982 368890247 323256556 195136313 844194685 507899913 150270203 567411205 581887566 583534790 887759095 353997320 798890906 604963248 956809048 254650997 793337144 599027956 199775651 582225567 589786851 171890089 740856328 253385347 886539745 407301308 125626699 50305691 115576022 564172867 260585809 646373055 347888110 905275207 398551897 807199526 32552968 766309183 683612867 192617995 846572354 222819805 139142197 959639317 237075872 896949615 281882311 594361266 969466826 871618646 706338399 828466232 133461656 169549827 283854651 765011613 993110967 450713102 688108580 921056757 730655119 157613474 598797884 417799584 197043780 230747486 632746339 900822088 659757186 972311477 705501791 281242886 544360131 735622487 95666036 869981282 170258145 986915873 268966754 816189929 117632919 575790742 311436538 768824900 144536624 801777361 294957670 190552731 572722328 964091470 322338568 12229223 783959310 664494017 76137382 666780064 448983151 131982418 112753737 626236732 986700103 210594337 142577916 925130595 676318302 300560935 793845258 506110853 132626833 145364262 101193862 232445653 480649112 436807775 997979798 128197549 80990967 920749335 40268486 220768522 663286075 456957556 66816586 329762895 962442322 325556089 489865421 640508630 674342088 584618526 799346893 677970238 640323633 784594853 186775727 78126541 224006427 318556732 678357553 543105182 843273390 681924294 187346280 496027780 998406661 514782059 851386048 875958592 677516790 848996601 990035034 951742192 75902564 823396567 995992726 495256744 447138005 600481515 793806344 814742931 661585093 708014435 785260522 182803510 639445853 696895099 881457062 466483992 717324639 60909229 323140015 5805297 282709154 596823899 107730001 870336063 346539745 701452951 623003408 16896466 651788913 927955356 634881844 988995273 522660471 181970201 463236208 224325198 42736075 767766208 878254014 512615332 68775350 144383611 316817465 413759029 361802224 796620919 176346109 925033056 174550713 284792327 833240431 468424016 302503316 178196123 225855284 908847920 293437787 754430607 773136218 977852035 296001188 230963891 595075722 390199409 622838664 133907861 977209906 277451877 3051122 774182630 113343888 748663632 2873720 383066698 129513759 298320792 684082845 297947837 683064596 833273972 276859265 642063259 460118696 278772198 105347188 958274267 563586546 24044447 70508061 28817577 815256274 700650267 226616975 389479889 758007811 275098006 593549557 641359862 127366915 928051923 395597846 942050922 517337967 425742937 190693330 908317299 633579829 344095991 22651141 301021288 597495109 757564120 56189541 615305282 585190848 275238290 974683586 706013882 912921809 96224805 668921484 623541666 141154473 425666618 24764431 206880541 776687874 999766811 148173893 233752971 546795656 874674049 605820568 449604546 387174410 364890742 307021867 335282469 174553830 108747748 396915144 298295436 770033366 267252289 602456676 984321637 361765325 51099137 605679135 453354428 491680775 219505887 967051401 982121130 729556769 885548990 302164971 489643949 133773673 352615984 234426080 197120948 439942762 104695514 529491809 202234804 45263842 468465851 197072788 707332945 198915372 809537894 208919029 620916746 189171079 304869327 170893432 667671097 658962281 205247775 591065221 28922905 931879682 318152302 5140405 501360794 77023106 118264031 27767033 265335382 357768055 314738429 204284528 472355522 818333540 674778916 85419129 37216026 857598718 759018413 882898918 923844463 117960021 507846590 611876243 121802720 483734187 429315841 268546321 777185996 543756202 251997653 168891423 641388916 100657576 111001214 98367292 743987143 117534228 856204332 810395857 488795785 943347655 468740778 981047159 898778544 26010826 336386664 816023676 441910607 113707118 294023654 908954805 348315991 739489581 908178231 633659251 4612365 238841504 193320243 887743342 544331448 100996048 992298296 720638716 532071950 785333904 503270048 508164789 374851150 184769931 925484307 889287618 689767049 245145185 444527677 57585275 109117863 855144296 904611395 774591183 849628406 470737726 850119123 174338560 676936697 257679195 99179193 35693208 359625516 188236297 754909050 32964455 645562112 46197606 181487028 615670030 385023224 840805832 492401132 875885364 825397099 887575092 342674120 692189728 411721286 348721650 235893656 949754724 957666076 841085973 348316561 198716321 507886977 225000498 151134464 970670985 753466516 688647091 707610427 993372818 504230686 272578455 979844401 205675471 110814187 877168321 519309543 962154100 933662614 861630329 621912031 209067523 979209950 544482062 619835943 377172716 224145874 982301998 535175314 633673125 969949714 562104882 694294378 564363113 486326426 632518385 232040997 946355172 68746366 327983839 859773617 189866339 108404647 537091203 537343827 88189702 144336317 280859863 128213653 957400990 250815573 855454685 453794804 313554159 157581169 934772488 295749771 718729144 464435841 972974679 415797446 657025794 763946771 688621195 371279212 139637806 649350297 31612610 36982564 515153302 175503216 588274789 734106659 670503548 915168212 549881514 546902582 24207285 579824712 300762507 989871484 460182034 810978208 947893546 335720045 464105627 812998489 7937528 189755592 220254821 640991304 657067477 453731397 270260662 821599222 988457400 580973420 885412863 413191365 232100815 587686906 538325812 451499942 534195038 987469122 482356788 473805723 985443156 996189943 883479464 185857050 123588609 369804825 429852621 993242142 388472436 300703356 754090969 305963186 782446059 219283573 243258368 806112215 44540286 733481093 253126336 370454739 751502512 316411392 440816825 190200427 236820525 771167927 725441420 214901523 318736317 217640061 664190831 949071698 997860044 123167243 561099224 454370250 41009386 609178823 247524683 601011991 402493784 32947026 438791135 920204937 199253442 192581713 126349543 868999351 519270215 499325053 952750526 153538695 118947099 825631180 376876616 11599616 705902468 319862216 797303384 73531349 865460969 81170487 199343447 87664786 774764641 376039944 553050289 565815724 275763967 170228195 462688333 637843340 331515446 566977441 925082673 654927580 655160407 514578761 402483480 93304364 418935205 485032880 174056707 516887751 780849593 687102302 672168590 218851013 4988354 71476263 550038533 971358611 261207795 218543059 654095276 988913198 419406277 743259328 603558858 172836030 194628714 543125636 235371587 628315528 699908395 938259001 487948668 605518828 307432663 323520811 385831510 757688508 996087826 177159906 301584759 587489684 771552563 839515152 817362851 597094050 692994912 425575677 809167522 597415242 819812428 891328268 374037972 743432210 850093420 843823858 445907962 495004575 914106146 391449010 865986382 5954086 816077064 784408125 454813561 183568149 590667322 964760207 294566223 827712827 235287964 771629560 404089815 931907172 401665034 881680678 50803391 38413910 521554557 510531090 754167638 428159499 763607086 648845974 183971425 572180222 121890654 528641471 885799249 389803919 722307183 325660920 966684739 875471079 443926212 400332098 474819726 973163711 380833613 999719458 879568619 604898481 314365105 41770771 589228802 525204749 831036381 175578188 465219541 377200985 514355669 574495218 526767170 994394587 310682662 847264041 61932273 796173776 77943861 382785060 869350948 874777624 179511496 777137443 123890840 618422224 311909999 624433154 532022996 61032022 375836712 171557209 49139388 91307648 636318981 134866356 278195214 820437645 881347526 643472865 628917934 473004104 845973152 186507820 778547242 666742824 912825411 659740106 201645006 87746278 472435976 405536209 126078554 435660736 221894091 211680888 76554428 741894708 599701371 844922569 679276972 235378365 795284920 593138106 856533513 516550132 879181708 131040577 181677153 627852678 161549355 414887743 751893456 309753313 739683557 797638963 915638490 555886378 684099711 137152756 663486181 366100562 830337615 578494278 504751212 280327005 710595040 414469141 648077199 155357840 374870153 812250955 48689786 11628834 694963623 228931756 722038123 580605039 708308123 877439601 592185308 247709742 978530801 909727784 590441413 199638275 10374376 795426246 593358993 400632352 528960704 87222581 919517924 427260152 82656526 317967386 467081738 215275880 521991315 322524343 266890685 261473054 957840150 517408405 114956435 89583395 395091896 219772861 20894668 243753757 177120829 397366489 79084767 184100348 111446578 802661694 875713908 992663229 659326601 469245891 260966507 227808174 984854977 753891394 540018764 286075327 285882470 30615816 908627006 273701066 50116561 360203703 111393199 469933063 200026860 722541502 949885622 902872790 557156455 780318082 219704424 216043005 464455016 613673758 913078124 867413210 82378584 489265027 864015930 187786817 406138061 785272981 613955902 317530162 836609977 959221256 250841612 882861620 485146550 910359748 846753992 564847245 783787548 7572781 140239917 727520109 968579676 316261114 135607627 294381169 383460431 503625440 357044274 783385649 233339726 651605944 257681060 604339867 829024175 645769383 912475598 128669915 957682167 458046303 407279750 197628964 580662553 702039685 58440983 863694770 881601983 874695440 888271539 703418006 476851982 197605835 111666267 660258413 497933301 578243893 489520601 936266884 417840338 594616191 451992935 660884640 625031887 125924305 880039235 55190177 216701434 642469872 55088826 728815993 751877701 11668309 984353013 178550124 351415902 903536418 966221827 716767420 592498010 36897655 628007084 928668425 526775478 800658722 594217242 707495933 574287751 30530240 500092772 72931774 196419147 308110142 705467940 548277238 240641502 896482557 223238858 580724780 228096670 662759856 118248999 517102862 537859326 52318654 939722828 459077498 506965118 802116944 264129253 651506279 558181964 471177588 955636224 640273164 165501573 154519288 423761518 625157200 153045592 133807812 18787437 548358263 63417286 513874614 688107969 647420229 383300972 618821948 400052918 246985681 564467591 813628397 744311047 916401996 817457538 684821792 317302526 897757278 4716112 338002357 273784918 38041633 869995154 566096124 562880700 910373895 285081855 225488319 214348237 47037445 611450437 523742889 909611625 256495412 148477522 860585821 545356473 387659324 982885181 753190706 75514288 398436748 72006153 648069694 752031855 773153164 108768736 164300422 474909205 233846447 295857969 57660497 923649331 425461251 598350521 805774267 115105003 95469927 865801337 235263069 513280686 642494423 804222189 153107874 513973211 628443694 527932409 794361443 604490088 498422878 916258633 37871604 111012856 126453254 307055567 913287556 18375450 52449880 713465540 910368289 259748460 246470097 355412260 934670199 807497898 589544691 708144194 991918414 577318986 703084734 106185344 750190916 245433653 295785991 58078870 615480133 976107953 419523620 206200692 478885087 971627207 675489463 27541396 294106186 423923464 205183995 402513291 405177376 11795821 198691839 81888563 139238338 81621985 236402869 348844702 168228418 586019600 805123583 986634371 990922888 830087466 549756472 780308974 300994710 922094275 669692101 616143997 108895463 641406667 340830476 667129565 259396871 787742103 241826307 933259523 337476375 93611334 448387621 341255246 785624307 794440492 388617815 441957555 42774816 901772298 148135462 75312592 44646368 516206932 88433082 591340054 856077338 886714042 172160537 375534622 691926409 382730960 255155522 636668655 941790579 287467827 179360599 588653029 733384701 486180475 746886430 256351123 677159236 413628353 52668943 176387589 741413330 133107364 334705423 465552882 449230416 462661825 798705392 247600031 714463506 597752768 441381018 713450416 768962019 109164923 964756265 710618066 722196410 141415279 199387602 173415050 161003534 179926923 516330530 17317704 784997121 822744718 166572739 701011154 431656515 743684488 64271832 546276047 524719358 167311254 478098955 109442222 725408574 735542946 845980123 585850547 366439494 1393708 541954951 734111877 196700897 535795256 574974236 274619663 262526620 515161297 846176554 401931207 13575393 138391153 189976031 15617765 467417575 544640275 306328925 768250826 383957100 59268370 857255901 302027097 943386767 445603836 980368607 846519038 991437069 466475369 739813168 722173009 640879438 266583486 437644967 629317664 785205801 35969846 721824279 790792982 426677129 884887967 854649925 943719887 61462015 756738155 293305500 426259959 970779557 797506512 615860591 82517685 641743964 640059753 691410666 231412007 662531186 819734046 883813651 405125416 994957409 953264901 431658984 6524778 207497222 901272868 552548434 447915371 271418746 820739946 523149740 547131609 385901940 8342564 275489990 903971826 112042389 566167789 987428589 121422423 134197992 291719329 276317040 904961510 937780810 860877526 409611225 555980542 429969595 735245085 499872226 368964369 435473500 901018003 451054572 945112639 3293773 183887216 677488335 838902726 295429469 778809552 982068301 264053468 694723474 223720573 68642383 149115947 272805878 458190517 898925954 979745926 794452287 566247247 284229387 363723149 600751408 810790091 437562137 872521752 814742399 311389045 845218567 508682309 224491188 854025287 338592158 412109730 90872553 227425976 231205781 12448622 118469749 251959483 445391785 550745907 710759318 221511465 12757164 845518161 100387630 513751731 377570899 273954598 746280687 851666473 769254539 679448819 603729062 441056001 513700301 81294041 112478467 318314852 147889829 452317065 896131780 399195676 369015984 828106389 362500908 357645767 741618384 212934619 323077255 123592921 267342811 962089389 152798093 443941938 261884335 472783585 161135669 441604282 416484069 271858403 44150753 702412805 789562614 17595899 919536457 383088823 838157815 46675808 722871909 949312267 36833062 84244145 312403696 380345495 951362475 986885794 520344373 705312163 633342950 543993359 19772246 460490558 146667790 949161442 775372948 396572997 123422286 432464907 361454358 131294078 935409358 838194621 496514162 918105021 711033840 792793571 216157676 702943587 922838543 943736508 142594211 935586775 881790914 969738059 134179660 93566369 724001977 82802244 823399850 769529517 751526624 194345284 770713322 368946968 93056089 794459550 360418680 23453930 921125412 537952256 259911541 96924880 138429916 346543413 949989668 359772178 53930748 885344592 891141799 756388822 443870230 912989252 680907678 149053267 48262355 228271973 688437989 462847257 463098561 918386670 184003895 135986960 957645338 510579105 56061401 259350149 460452577 767042825 208336578 150897679 932942165 507156401 876818051 591866466 81003247 863090701 497947795 403267524 231518086 437707488 906860851 902246848 53517481 93206500 401870685 162481983 629991286 332053964 802110461 74980280 216464663 10784774 721977032 96483139 128362797 693975445 414453758 660417684 87266586 512106931 824874284 308469556 136177233 720313640 722135263 503151429 271898986 243539513 515679915 357005260 538873074 484643988 263070363 569419770 490498951 748844472 481483335 518674774 312267111 817289301 999261099 871244529 908437052 314652159 199590422 760750062 891415766 773898120 931677476 535493382 518965834 826314725 440232609 387995163 275392407 689237159 199870419 958679770 694111544 58063860 667062078 397895630 404529235 46819608 609804359 209870425 759511567 480859467 285460176 680501555 619578898 811853035 360088789 141412693 246678630 148867093 548565372 980742018 665864466 681373529 527580618 101070965 848169952 924632522 512258116 911247093 858105740 288976065 844178491 101464381 480603296 51983192 492439398 610773636 481169671 844163602 98379863 475706614 843688129 428749594 79546878 97752968 753591903 564952573 74127429 962216958 889243407 228266270 812805447 703397070 397949115 658218714 157017083 370549233 562163296 650789305 87883721 370975914 20891849 867314136 907915742 135917301 150024258 118299849 643192497 628650125 730787306 309754385 534976446 852738336 212576499 415877659 230111412 711989445 620477068 312322040 696442679 142680497 925725291 103798201 99537046 196545348 232465519 465408642 533037551 643058731 12076082 758841130 976609259 388205638 376267423 58578322 421568404 754331361 504545836 999472773 311229052 540293245 684773554 480001272 687364877 252102443 976160170 871704831 890434110 436023912 589309184 837063846 526574879 594527021 59743773 128485150 946587451 865612642 703744645 788765125 831879976 242703319 767795397 105555977 123063743 641998789 453299633 916899556 947187122 623161870 479570868 103629191 799368672 945502756 695357252 824609780 754299736 682242772 391314009 524964812 807838613 84377983 324958306 9872482 48322838 523385452 40680861 37512623 821520900 34614555 503441294 775158434 843779592 562436959 584749444 532596648 406475025 494784034 233596111 213623847 848073503 222145921 486710677 43478179 581098654 515811534 830723413 205100478 960885492 479786712 442488543 120145435 508791421 325719442 336844485 931503274 193392355 441957976 445011332 259887211 317015218 170057582 845467198 282099576 795284578 738138801 217006025 614575756 818875006 77637142 298165239 91795547 791540877 255221359 711110699 988943214 18510021 568788269 321985418 290508497 956991017 842177717 85312681 998846812 734327456 432504578 446247063 412262157 691819660 937277460 570591415 634599195 287310006 890317670 897089612 935383710 791151598 891423165 391720781 568710480 984888594 17024186 724773995 84934500 671122006 465230625 297628618 613037323 802688570 591231708 392284052 513770896 965527641 205488464 682240952 344652844 321470441 18459985 618173654 256640239 383204505 153521449 746499156 904192569 615191592 424167133 510241187 400004087 63860423 877888873 286083533 950512161 87163686 915620599 100886843 7025469 848113059 245491888 323258825 241714241 832720633 922180611 818126186 314956451 502060267 529012269 683606434 922650173 536231826 783712262 393460274 574147069 336686644 29508152 625206997 94514436 885866680 248187737 208078857 505154923 832444650 52322469 999541935 14763982 801584105 89184046 658691591 880452050 888828644 196710574 833655322 942688403 942440228 659736962 126110294 781392852 681271104 483048338 502357450 917387628 328109430 311675191 950132465 836231048 856963380 206701258 92570913 700037014 567842058 7602672 933625619 942310843 769099335 7232649 858731609 418629257 294971709 920554713 423824417 389430794 84451023 987152600 465792078 982134500 746568337 268826117 992038332 35084165 417899180 800912601 96906994 789474143 269913352 251549337 395764226 547887292 601213294 644978687 691869955 221085643 935399617 389719153 975871233 156937005 226584974 745937345 219561388 564970511 883188034 833438609 662294030 298005790 150762525 760594734 93664366 966575956 963810614 338283019 173462424 268721796 426378165 450910358 782864999 932080432 922867124 160652249 694182686 603375329 233392779 258362036 795234530 99894289 695689946 974912042 596248998 402567481 16465423 716583349 841744371 145970824 50053528 242331402 777925291 137595181 511711510 392358980 369606014 818522260 925265446 496450335 365724992 969395255 259954976 489380000 540737722 853125844 615438884 42945789 821141996 992254777 373740710 270386732 204495136 826998735 589493091 831776324 123464680 102364638 587228490 661829946 274942801 687210902 771563374 522438365 867390357 365438844 816931703 445927588 156348746 266453177 386531018 549533125 318008233 998480490 254787879 41320743 871310027 852481007 890133316 181630916 281442359 142582150 810063549 293335588 302855373 232186738 516221419 81854389 898147990 596219044 551342166 246280866 321689860 878166794 939800218 9140752 472736230 332600861 968075412 507196583 580634142 405635702 766677986 170300062 316190707 376576864 681867244 553380399 130047563 886759946 790763823 771974111 306228408 67756181 103641672 581506136 335350307 398425329 739624627 4696196 440918663 102450650 549204060 748005771 54092699 254089518 124638451 783724677 176266963 375840111 472442451 885971471 685450342 906975740 324590561 637071799 456914732 296948603 324880615 211460830 998214391 808527762 588668583 80503074 200517754 918797527 338835259 463559525 594555326 497816046 730781599 629626243 331033101 581532109 315565695 830630623 820006372 868019746 637397396 877388842 429640243 9811318 303239363 894130596 370404060 553862657 170425735 236180257 314083065 755925042 683707256 999972834 808120030 339086509 222177389 928269716 493648838 389453874 904750339 216809726 34878603 294066339 43065659 62402874 77879727 87685983 987965661 580805715 694883176 4370110 575551194 781795323 941929200 601223836 305240860 996312547 187476395 972932477 250991464 58785796 40967019 883159035 865890323 735707425 182177460 288244860 997396204 81241478 656839757 376070612 784511945 397663051 495156766 985348913 105491920 91016273 372016668 99356221 25159610 50162029 109465955 610292344 428436682 527999330 327647059 742940247 661316084 857611873 334860334 934843799 25297135 969749457 13988506 376608476 48081465 33826805 606849213 956752556 681874559 501657105 737510528 919990008 702849614 455614264 11833646 247273314 384864436 377882837 676923648 173447141 553307616 527420613 551703863 62779137 60708114 461506479 487988445 9741003 208792397 990288126 422371483 104128524 297879906 693591225 280659358 503504826 253136482 748164611 238983402 551387280 118268671 375957756 344154525 785349060 954962434 690425758 562135200 584474117 958810706 531094548 844086180 176479378 283894022 564448797 646481592 270494673 362882350 383218062 140184348 312203138 363379078 510177465 358234676 954525480 338267650 535020270 501218382 921147240 118900409 766736021 353945569 116285806 400311916 152524506 56279077 370863054 481752280 591974861 917208367 254689685 664429240 495830534 479178740 897238862 487788275 461884763 772917513 155327123 768336867 955794315 988865404 271422011 47258382 676123573 181293990 997057259 463257207 965347520 712455925 540781166 614095633 713209715 93569445 279272642 552698559 468266997 714996274 26887243 714993041 41353643 608196192 634240681 705123022 467211947 585563791 770498987 278167788 923182423 387099997 556884234 1652134 671039438 180918199 357984543 722620987 90681607 147739587 840449638 611436039 493742258 521579373 759687151 598670407 831431497 787995949 266895002 582128780 623503543 841122629 709033896 102338830 647076416 490288382 123737673 721828010 723869788 287657392 880005603 41114620 450734085 955974916 673155111 905482881 485404404 321276082 519668484 489927336 672391022 759464575 756213608 942545659 406272406 133524643 469961971 775372575 218727366 291016336 3184346 377159806 546105587 125672195 491183620 491131684 717021289 551832424 565132940 439477840 197544510 804763359 450351458 538248392 479648643 525880732 88740483 317036178 414726429 691805363 336770040 610571575 511171243 348225639 314859852 214187028 112302177 70174236 808392681 962571931 617323143 941163069 544035638 566558519 593224394 954904647 205338463 345127532 41971002 262838612 687414245 218643557 173306697 997028744 266894483 318497890 113623780 102318957 306798774 681012936 561648076 167594019 869849289 963775262 725740245 316409351 810024563 74754677 611439810 706425038 500645953 581095781 946964539 191979026 829452563 565161997 352451686 750605272 725520346 210603623 783557881 661088282 768908210 698509730 976629235 554710924 436900762 210501294 950778980 687032099 249117309 916807229 519770651 305666290 679584560 941309250 408498268 883965510 324050037 878389079 561002515 197633406 308758952 103264333 316618325 376006582 791460807 31589471 805511892 966519140 127020815 401889740 946153003 297923672 546158300 264947573 287765643 794170196 564465639 180159417 129902127 429414916 106533879 750997941 413759746 810903476 578582363 978265781 20012396 412651691 340445292 93385193 863980171 202420783 253771272 227174690 153857437 276484488 139717910 79608477 437759668 111730923 82958221 567195980 770455906 888271960 239232976 359821473 422473143 989261487 415833912 76751534 913188675 968184779 342449717 283373456 280918231 643794140 292762593 59727532 747050321 71203420 934222466 174741555 490433040 411093458 42855597 126992611 71241151 563222022 325011725 308859938 921683108 698316064 238563799 421861078 390199558 34865829 595955658 301480832 273671456 560456157 317142525 845330727 181365414 681132099 629749482 476395129 370675823 293292732 281079122 883196097 686910195 901912967 513524327 711434039 304790705 919098892 527054170 811819542 536220199 675259670 784059583 980402372 644820764 286819868 670514007 11955299 329949144 813134300 707413544 354935059 664785454 209933398 940017181 462191195 25559761 718958294 586755938 699569109 666402906 917769874 409923435 958562865 887135776 838836483 825040339 315516911 569853030 406575152 529087667 676937033 907487748 918786515 101400015 829936001 369699949 228372808 29103837 633539863 796811830 564037472 302708736 945397903 257007608 933605813 488133167 873599348 767050118 780837224 894060184 709650958 861156968 251447384 756442263 831895370 698217653 897693530 109590508 911505041 192616216 369005003 665699249 156420461 521612221 947517450 44820563 888505805 440206438 596533207 560714952 213110521 533961942 207055928 403213112 335104425 670293287 734788580 742978343 668411355 160083200 79633188 500405922 117039783 336645627 525833716 801772754 921731158 60185085 901679782 534546125 397162308 52132439 347169310 682809039 73839905 846962249 227587564 942734471 515105631 154357097 775420964 80520637 306079338 649833189 642406689 773878255 825822833 633202683 189613676 601362041 656374471 952547007 162276558 312310079 709851929 837396105 933305651 155840358 591163458 360987165 138817746 904914998 93111263 482900719 302255086 499510597 71182041 20889957 645442337 518686930 136895756 348294794 582456086 297648909 483629876 737797837 437811871 517013938 289271283 636319061 821242006 243235937 560267950 923966881 369428547 798185341 828322924 451326269 172670101 114509010 858271649 536864968 406438819 660585642 996872033 39673339 414863970 842001354 737274664 671141414 484699128 546482445 752458916 448274920 749829804 517402695 134574588 426556968 676466362 207875529 835015560 359693533 458503334 192230159 322484733 861677548 951777132 479816987 469425482 357407910 783021912 470174041 432542950 592308612 125048056 592758265 197794523 611082585 713631201 35309232 854891890 56345706 472142399 494188099 315817745 352203230 715124679 687810331 421721211 458417817 720999349 809827155 984668100 579854553 360183212 280439552 825195531 417142802 504923621 175357156 805776613 728053824 982171004 717806497 146562991 699977561 732498447 587348459 972443117 147201626 251902856 810718498 766809465 337397786 601351821 224581547 455253576 440042630 746035174 246877644 395852830 821306089 870723816 588228344 410449074 913881747 79695700 569430689 672309286 293624002 601056815 811485346 953137919 627576517 22993302 908627933 61604256 442504815 609929381 193489834 868514725 116731755 721596365 655009125 95160588 358479643 592725416 145079084 397260757 163326022 310126821 449972383 283001958 117791240 261165855 992207238 841780724 653217943 226263533 644335131 393803253 304095828 492141227 288623729 323832116 175806053 763725752 547409182 434829642 915854107 892750395 909706798 648274312 402373660 229995399 356039309 36500257 749348299 69963703 465063437 360550950 902896246 802908005 485377580 822914314 994662462 810686176 281014796 638860125 509731204 567190987 704211300 392585824 793327064 521650844 543694892 751150086 632547464 189788766 118189521 937918693 840777596 551475126 930551918 522119440 991389866 552893395 762333291 490633332 228241198 366137014 66531651 727553810 258968461 88432203 452603590 436204138 712071478 721973917 696644339 579501243 296466868 356738724 667356076 583724101 437377376 812211240 510473065 369667565 894704604 74787009 25127604 387878503 515964071 122165379 724998836 944945165 34006166 323082891 461363597 236115225 235348538 834416456 354262502 390416 396331039 805307963 550939956 72127616 734527659 663033827 214787596 806380645 615474970 451930258 585328151 710811211 855686656 733555893 173425127 6630410 446891170 954391838 500956725 938556229 903660063 847696515 670380718 257789760 674808027 535777070 225828022 659551793 418670663 582512955 274639676 267366762 703465516 898990529 530165593 776170158 898931410 688161462 799767433 273339292 242521666 904743714 253091891 279959501 78769702 187890925 179018189 47821731 829190261 573131008 682694115 384706609 635244834 337220924 575761225 610594659 813306025 449387684 626702227 872041774 979006888 71279276 29328998 311436500 213426647 709531630 904069057 113695688 572307977 502341593 189200421 383683448 943886648 185330923 728249321 406393980 75799568 68643512 932746519 766407585 112094750 752947463 999538256 268478545 182754469 133451355 964998655 214653949 425433646 595277460 656461238 840149313 89785006 488716899 20963795 590690743 217917634 434046586 769310480 948906220 925192581 425588128 494710804 683792281 387684681 380873764 895772819 690496393 465300097 875785876 935847315 646070885 359929322 10135125 721199888 640758109 795496223 575654325 223000942 731418489 820153172 403266306 478346178 306086034 488796765 713962777 435314312 67418900 219604592 521682541 188917577 1426062 904988481 26667673 806929413 669371275 858104739 187681619 742757870 336262394 106383783 315963942 370003316 391542173 721615737 432197662 474652009 960898272 32821822 519736336 841917022 926423964 473437350 46149728 428374968 753919738 126072368 977556092 861023491 653095093 809552043 144751562 888473240 36136449 719371574 646278461 916474661 182333034 189193539 278428429 819251822 248206713 360563634 651817225 733797646 61646256 722649029 962356299 738858614 588039211 69117933 365168662 60022325 946865029 727130806 971244337 170840154 96615200 676220347 666960998 557962325 787614785 268493584 476242435 216796579 600473851 495906178 234009199 218905574 434040218 371870653 852452128 523485704 315289732 685833487 778350596 308516339 887307195 475019919 183135218 833021252 234999855 890560870 536648333 181518417 509162002 162506744 602648545 136622048 160223591 805804100 157867012 143630403 384829421 864509947 695210928 789773683 932039196 812532467 719336275 166920250 554179680 735694228 522237771 843163238 406696901 841177089 277108940 463527946 851442403 665001720 921272218 456697081 279805632 301410587 117766880 716782105 493823068 975498304 955959495 941932013 418141063 940895303 353927957 550023314 331449950 80190014 9343536 591384231 973594652 774970641 279538203 693406593 692166067 571294330 77607058 122496913 396929538 966944278 233316578 707359560 905547859 181103403 305979827 504226560 938959397 803423098 838553668 463523721 924504138 928634523 63906362 609759902 661112969 272782045 235236123 201914937 13715573 634135333 563487369 614533418 164601608 102868701 531620152 778453319 734669179 5916101 241865314 313548255 156163263 294365354 231944525 776306939 18831371 776387506 245161105 868869663 175183528 795202379 46852201 516021819 268195675 222608898 902829410 257478858 227665603 109286739 207429977 309110758 366166267 249034421 790077505 803869138 604487725 653982978 847681442 818186428 470115195 283331155 795474071 57326201 222744891 621027104 281557790 727091540 686990629 464791377 863599107 48111798 24089189 50756075 994859152 492735588 276493031 960813270 542055985 545591186 658217347 833738844 198463877 368297123 794225158 452497128 459090992 703402581 478357079 192405131 678884085 1719879 231189679 714762488 867568978 817391896 772861677 922696881 327901128 256706293 400214746 552927494 464771987 33763879 854730199 435560279 76095932 86867020 242157934 420385554 526943204 200915918 400466354 843049179 422635413 307322147 462757573 565568059 246877424 954773967 923190205 481507792 75164957 122894665 939031643 905696049 473541818 364147738 594904114 328688853 464131688 997683326 36511355 328160959 689210874 662896833 484276630 845000481 910930651 698079807 422936826 394652388 475986126 815738153 98017972 104610042 399462640 78045342 4774410 836137031 931439556 377425823 483814724 631122948 81170751 982819179 79505444 656976810 579438731 430740212 97964826 691846522 74524106 788301887 268835061 774857233 62899285 206331340 12436136 709276650 384660260 823051972 309618755 737684178 979312422 187444113 275921837 419872476 160085699 916926232 631351228 419748998 52550529 612915767 65358762 910873059 848084027 511871737 171550528 770850771 451450911 111082743 328664356 347223974 179620112 655277155 509291183 918021994 991773983 754573285 93235938 595239230 757987428 711835300 550959619 739969317 11562890 868416473 769448789 240595557 241164494 693445245 603478520 739187345 826122665 760311439 262628077 871044414 413149725 375421003 329681255 658715801 744007380 392247409 646890843 666905342 939402522 816966784 27922624 916773326 307067385 356461105 982210589 170936473 243609433 139325242 940835359 193555173 589816656 450848829 611101420 884819229 573953788 493693880 573614016 425906392 485767089 492089733 222468530 469481197 347098063 918227845 867516586 124515116 103452595 305986925 230670921 607358540 917856582 568988393 207537022 761750478 258361272 256540081 889059496 699315743 842170412 874568538 435038211 586984753 668021964 168073559 224983265 715718549 348439364 702048194 334143744 493937127 345516512 472473000 349962476 235804584 940621139 414204501 284309448 425631803 790312334 198308527 64458828 908239864 602207086 249764699 767843337 57716271 799542415 17781941 112244376 360268908 975896160 398442168 723836351 141937977 947437721 533166240 174670753 78276944 283511151 620878702 207989704 931517626 598195925 663358084 697808792 351021672 403154972 37935377 540920165 336587332 337317247 47745596 566634327 834524592 639233935 385320346 402181805 553913820 108407219 31675270 58427163 76601634 605515318 925053533 279288692 914317913 263147254 535867515 991697314 326687509 860244060 185100922 652481081 692381506 401811466 361098806 100443094 214202568 187008740 718883128 843041398 992011361 882941730 130001854 566279882 496701444 84325167 118824740 662676847 843614134 817708827 704289253 484674101 588641937 240517020 369223097 214941141 451557670 570924806 587915877 533497019 510397881 313087058 834006879 444041226 397063616 42025886 261316446 682976872 281068285 644148525 291338694 981136441 906396535 489552847 864402060 523477505 963244838 96519512 27830898 443273182 386363526 796856218 70961522 75017229 722090240 121421123 665595306 700566492 886410970 979146468 80982758 713185936 806488075 825030624 325423300 342554765 635788880 473869642 106790625 724604869 783074527 867914699 303360278 488011173 3562057 404025399 883292052 164999809 471685517 30066733 446737245 374690846 74548236 714803404 48620807 263639168 746947842 595795554 964688569 648710169 451536146 102881752 414024575 698986132 98771069 874929797 831099618 608251088 453378628 274985090 187600044 299086713 12528714 108178836 188363730 430967819 86301706 170363566 230656047 260311526 60342332 478181955 366227523 626539432 346547826 444121664 607267972 227401603 641013791 758358373 280990411 127022742 717621306 946504757 756664728 81307386 795810213 64934086 222124942 23155462 682662406 853960804 769410114 909158641 314986511 35692177 518094636 149869081 700291551 93536424 655478513 1611565 965883631 268526030 409084004 300101718 748952427 597005294 416016427 945245303 261201062 96316861 95632796 965558884 708846457 980740528 756129018 431216854 975320762 262338861 125678524 315686333 819791861 754007609 985807115 310346901 732484154 18892495 65161281 76020527 147019779 720435372 507677989 67617207 951765694 757575703 325940000 30685451 277065105 512791141 443344583 380810296 27308099 779235867 810151644 934738484 958679965 540031049 534538509 614164517 873132676 88962435 832341949 554628341 171667874 383428231 174004744 813565636 549015534 791502218 681766457 2976727 197057741 793107096 834369933 836613692 171574407 328550757 149518102 421862972 972971607 936030778 705240615 981240238 340813488 104627650 400668760 73336912 343650700 443488415 985284734 305309067 653944309 452176851 319636484 272214544 175243871 503458951 835764132 178786953 989117126 227062460 315790466 271408555 15451442 566483175 84659291 907960339 373830976 432922900 444649524 385619934 538383372 911159055 723288988 843092595 596182789 235022927 520793792 707660719 443008931 422114886 601491592 418779955 1938807 25682198 128691635 893371181 651539314 665104637 701840502 442536613 646966273 491749184 708089280 648446191 520501640 206713819 99599421 476282153 766866662 464914733 665196975 664268975 865398389 662319634 170359572 945409583 112432017 202850259 325181418 138701356 586385172 454292760 710870136 779038407 355604965 827273221 281128754 799620235 426443466 702374343 665349526 791979184 286813097 497543692 8143285 518311637 78790546 664510863 738307045 44968050 404022782 109845924 495995743 271140700 198948214 208302969 598450620 933571760 567925631 812648775 215785720 544715640 217285770 399496271 917790962 495718678 163717758 819772151 311144496 650910592 402838210 851863054 73319232 398000443 875173891 174478076 938986101 858809368 439391266 439914828 743023382 21793772 401913162 224354170 317811602 516624021 296666144 630702870 383554661 521590386 498898666 871678258 968027436 903946319 55038970 86853176 512559811 125791176 616037676 199370241 872641033 474842366 643774990 965777151 58866324 242431135 991489053 753755187 303554362 713196988 487883097 394385243 446299281 379620148 596081476 332652216 162767686 587438642 133405191 442910320 783009007 664091639 309849406 416586106 380058829 173327294 788297567 841735468 400529403 869991231 187676765 962943055 759613581 919523041 201043099 824896164 416972747 639405567 247779266 266249813 340648870 912800326 648576852 301795297 628323703 574961206 452979473 850495131 813007160 688810680 954867204 695509143 581005874 546756753 327637 894465894 782055159 879241022 114936381 487738046 678572129 99218183 212005289 805647001 557656161 76191788 655508126 934093904 940296461 702435029 285431671 537174487 114463542 981051452 355973971 289819148 374233654 886980276 38952040 697269450 174932250 966325388 57873112 603783093 35151488 258414 450551970 839965871 401239961 244982240 530370978 633173778 489612592 959499910 771164654 874116228 448052210 217508632 80934440 378880305 832944313 925526008 259351691 807078050 729112252 179092550 813903057 295245205 701018769 218252934 518243986 372020229 454216820 115117720 232983844 757384603 977132325 345501803 141407535 279948655 943273660 79293299 874417550 497383863 944741247 189736272 676227708 70021511 772912915 670046941 405728520 422588825 487060295 315886130 430041944 821667702 189581397 613407009 687579015 634022094 433528628 793705303 766572626 115824620 88914437 359985321 735110611 598756705 677566996 11483048 967713112 704746175 995733230 929472224 278443470 945253365 298727344 923272795 18680701 678178500 145753700 970031769 597505868 747493144 638402144 410818388 17749659 774099308 593561088 926437443 266752518 626952918 179532787 323061772 697738807 198374768 390912401 234723050 444998105 443507210 169376554 723644522 218394117 228703480 392387609 122407645 104661658 827570172 222420431 234562768 916945640 293740252 573823751 584111554 900276047 926992925 235503183 436842657 776702078 725386462 794428419 457400998 583952525 891525397 917228509 597245037 195755519 916372673 405782960 210530118 448056279 923513171 421917196 848512200 251570931 609392392 84349801 892328433 978357534 618107884 452340829 878021851 267931863 770736436 758823408 80613455 410557384 725144613 429898277 5661504 650145213 932288157 777595804 377663250 856717709 691394155 579755305 812786266 212937895 293610253 524763322 928521831 305514674 4281560 34660454 363014224 460347866 191139558 130830629 383874923 201021034 757893536 454656385 805779456 765703188 468945229 949005471 678131783 856373229 788907146 343393643 159235862 153666274 90654244 868289251 779872565 867429857 787448819 229336665 637651172 628563119 443117657 285164726 701609658 793064289 241238167 75864452 754771934 628548404 487075600 45659844 788332592 315486818 557582797 998012541 876793470 230076236 402203907 422912858 160907203 327745651 650402768 444978985 473684230 867071138 753493415 790408673 658256714 691874291 658865207 706338342 699507972 645065450 506372166 585964908 451288619 336198478 812050644 875525982 319641929 37723718 943392996 979091051 999882081 264121353 399833211 645087616 878378449 735480108 733278266 499780951 795052839 40459298 207487716 234459796 792204719 236501676 920853263 967648053 851713628 969812307 395350312 575756245 288049774 153482810 572077058 519847303 549648237 575089051 329860413 183324943 948882755 433297229 570655590 903858477 28496561 748955911 306202927 605189196 167991556 632799738 472112918 847235700 494095776 835865846 686970730 497690561 505263668 978818095 718008860 244648772 953273304 340153560 577929108 800490567 679825694 699685880 863644178 777310056 473991233 234995146 490778617 805160215 737834445 524053078 77690796 306107247 318248405 163609114 136847066 144024463 400315759 723729092 322350401 186895807 191337193 357976666 696707137 157972821 618288812 680934176 177296593 778890188 874194112 673938988 82971193 140754689 759163559 57012065 86938052 664835060 15747369 157714010 467029550 890721256 840549047 179698550 111517587 369430378 813543366 996824538 149422771 220422341 995264038 541448747 88444712 96279975 478512321 580035988 873082277 841481891 410286081 37712265 521402644 308465945 713345690 296089528 902587409 358789535 559690600 897613906 89707376 199459848 289374463 84427038 312562158 730415186 854999526 505364677 886641214 270966687 922854104 527384738 127597125 585417729 610653675 839206154 726600750 234743881 582705575 634348428 147846245 510171755 992410697 953681081 535490850 280204501 540640676 356301212 141734497 516327766 83067733 838147441 595864815 203736380 921665018 311673118 81682918 994074245 557520021 165554939 938236999 77599139 252342307 846748949 185775441 291033310 150453537 306493825 494585659 11181739 578257847 149297931 455321881 174960741 625895991 37913787 829174609 189791005 478841040 355925446 88219068 899009334 78278483 776628037 696836632 469920896 388372162 910231838 714032327 907576943 295315893 395465171 754378954 604308754 899535661 649603478 509648565 535367102 504590764 973757630 755515341 518058029 214202109 521284 121074684 78735031 854188989 556129752 443563823 769435598 65401463 790625091 51616658 304192978 350681570 601412702 219921750 604279014 955348772 195806356 514613262 634496827 526541086 591865215 515603631 742808267 610460511 155246714 894044282 528344704 758012506 544639749 752581046 425165117 710402200 555627692 318293650 866535429 104157735 332104134 566820976 191265678 465244877 395912469 393741407 342571213 974647685 293335150 636028773 457144890 365654645 904632589 348610887 755485236 224577960 525695757 272808446 915028178 530909480 967605835 954927143 294113894 457938488 575692061 285959849 686137860 548679503 58779539 523176421 974070108 184897730 624521689 94002272 126750496 841363100 133194526 37061959 608812369 780852194 126532875 419110509 468002837 418019854 158480388 137993530 47544739 286645620 225911824 626346699 503201980 209510883 272039981 502647236 781250475 429234911 224194281 165397748 111052625 731996582 324377083 917395829 370747737 862761314 62101881 323726596 617110231 203240243 349015090 262281301 92778087 914993524 757873354 430130013 6771250 474245778 683016916 139425122 739776765 912125840 484731693 761408637 709731796 234789830 810456319 518187362 639171424 155016958 325187527 5993378 121841294 822975295 202134040 931943400 557708057 479089002 996848854 152163503 666963141 517970992 81048381 727990083 537881197 858672930 295341034 78139213 5355590 396094953 63910248 394360823 594509486 809871261 142743019 963270782 29851006 851566283 722528604 186616043 967991713 152384948 120180097 322090333 965567964 466783935 971868891 930256223 496993671 899539111 963033118 698089577 739388504 815445802 290110406 37143589 317908926 911029588 129535359 69052020 569905616 814597468 342088461 295357656 594186217 226364016 301667185 867690440 325474819 395516472 697791477 631192314 847829041 194138112 495681327 766352675 736930532 452893835 10020754 113559355 858907298 691690364 707131767 40374707 524198852 984249687 43052928 610962729 416844139 552928608 978228909 620493650 412255807 722586067 824172038 38314612 804211529 208709067 254641508 595706276 923618016 114048088 896751356 449698068 614870946 821141779 666184637 464814107 745662499 106790978 789808999 968656073 186912321 232587271 429360773 114816358 729965590 580979033 681632081 179722563 748316292 617803021 11700929 8637801 908975858 204330213 776682283 876921836 813154617 313986128 402173952 851405333 606281708 222283857 263880457 787251934 592519411 2391257 875591685 505457146 222426284 602107471 201673697 287245998 735352717 990899723 632735284 293084493 305383917 108668150 227944134 375148743 890768603 778257926 784262303 416159343 450200053 437817157 663468109 854027590 863888063 207589569 11946962 752716732 301624601 654061822 278030889 648958935 834118269 623769574 80559846 455205278 301879846 19765796 23524416 972429984 130552402 629555605 682396442 211634567 645939928 962622771 551896737 867472484 478406231 541257808 501341866 738380058 193756660 587300511 365340610 12346594 134017852 683052539 191182599 228585022 983911563 907067639 774663480 470558023 29250908 403993587 489453567 719911188 538499239 853929598 199309950 610846617 403821504 281133964 8730853 20386204 774070172 518436992 888462148 912691677 125904365 735034590 268956379 679694317 417491433 818353190 59431924 134653699 685052774 617213442 945231427 539136962 126316007 739841918 910635132 175866902 874136081 522743317 82748910 869828643 346984043 254449368 103007926 216831444 218420612 817316845 428405967 689613902 410747188 29284467 722501202 736454121 446659338 134982936 738811266 758999305 265087826 59940211 985315801 631754134 606206086 172398825 566386579 128531061 874360889 656635514 29921680 267818078 205914813 672604013 579255654 110229853 509537290 639069421 251403438 591849350 107298623 12798686 492742153 815635870 105088678 206242986 110332959 672020506 660175344 89441256 560632065 634840813 356770661 276568754 883298504 586694798 789109856 350949498 577692318 885028639 766685175 436809221 618419893 662924186 238522504 57276041 520316217 521202446 938554830 325515521 125378307 51856417 533985780 763575384 167969324 805271472 550563453 195616970 279604913 864964115 839620246 136806704 340677257 935133984 844797639 554687746 711472510 17624582 766191853 940591887 412069385 111866017 562310877 37235141 727904544 663764285 910203485 588736374 298589866 762844784 833430436 63977616 534804946 421463761 679921892 517750684 267990664 47629569 214884660 110940814 130244020 208210737 183113071 852501421 683436416 866739928 798906047 698994493 87419018 556751276 804425510 653112727 691810084 515675253 293958922 571181450 60191425 474338230 273122163 928886520 41167359 866866363 673671536 378100548 505740503 616548622 965195533 329624013 878774042 324229731 495040973 330254324 17863703 296019543 938080329 797697198 812765511 913380633 490402733 79469112 129255106 914386095 758586421 579409941 984724672 422086971 136382041 926479081 932572355 627161105 342228491 575013328 516030744 17764740 646067018 304801837 283445114 854457413 439542398 769741283 898720716 978202094 79662198 813705108 491214999 39350105 924643628 622348062 58457292 393168626 791320168 385264754 964304522 761192923 68068935 704527869 140747693 99886641 443296333 891209143 612814548 112164257 336291066 460767414 419897676 701183820 307579397 196867099 194898142 167075141 514174582 181061240 880364876 581015413 677304167 793081422 942763923 184055843 960981447 781307841 359638205 786472249 786054157 731917914 150288217 269936071 464850360 842349436 212765088 777955117 109536890 965656200 934691563 7192459 724376180 502452682 516986425 502995805 130327692 333481932 324153139 444008845 440684780 516712593 34826550 501523916 363740390 146235843 815334158 520389112 964217730 729007477 786626938 92328930 84017320 465585708 456345646 684166686 645136346 507425601 93001641 640725877 847371265 231297966 677354994 559986858 871239563 279833752 651590272 869652729 717111401 980031785 320935702 995672954 128542025 224440600 250990656 624635214 482111726 600654874 811853090 772315774 854413656 24597978 493040071 956358615 573490907 954711353 901306285 278537433 870885476 929916633 242005341 253204869 583204571 904588379 995365468 203608126 227513526 174851666 868480944 391852699 469296047 935333378 356838323 242093 672786340 589259247 355309229 694370837 496670118 25649811 20754586 789465785 9780455 836349254 612750953 797896323 290046434 682948798 997638829 831702122 437848758 771481404 771456199 329498170 390889822 494885104 240093941 786897618 131337946 893351872 136780688 445983431 457688028 3982614 366962561 387118485 430783261 523959150 860989513 763402110 552514452 547727312 327973070 928770268 543234137 920560783 664718309 889619463 113832086 6931900 296230712 970618042 37753460 846882390 447203914 213523785 115677133 361245648 716230935 382608415 310483627 514740767 359313427 743505541 754647967 620642913 166479923 604920797 466090916 501297633 249045150 310641676 804877312 528553545 624369965 837304673 331190265 843360284 660390581 669217375 509795342 803278386 549358956 501832490 521141654 753208461 591709602 167465577 224566863 500287542 271937923 843216133 761392901 909502132 371941531 854944181 14408838 23835598 946013231 856445094 987578488 523607414 598863833 623221268 497597086 689452380 150811888 779105074 326306785 991160954 912098202 191574562 147542883 992298525 967890765 166325285 232544301 61806838 981221380 38878002 796492641 34096558 157275328 312665327 805099662 447445500 389051305 180404979 951778091 819358927 705595891 626262414 134899394 382248825 295853246 57316146 243858007 852550255 376338724 612036931 32550243 950529148 605281571 934435055 789949147 76780829 850774149 837752625 818145713 112188796 84774254 446008271 562505141 479452212 775195547 849830112 192129143 79967306 459946887 992745552 691812831 78794541 594977201 56968730 965425684 836354845 268614152 324554921 628067965 855777743 512294717 757331594 825062779 727070131 703191127 298709437 165909542 632597796 503246394 266796550 497937999 11401664 420272528 656788989 850405694 762893899 645943024 568384106 493843933 373491685 892882626 281349850 201895706 816236366 438952574 100530708 891231060 759988328 75313087 764397979 375943046 408650425 80991454 876802916 625373907 954259878 535476860 247899531 396288013 367882764 268260297 231837808 25504315 882553184 579970653 487183099 365934050 44279333 6418151 547096785 80495059 560094730 636238793 513977709 117385976 170611619 807968825 927375432 823427304 953715578 660273881 775761286 667369686 523941122 689265177 566653323 644904793 805704150 603488243 579881997 82164129 120253443 995964110 8352642 401383064 199432447 823439189 328629677 162376204 371792774 492043326 54778598 395110185 377022300 659378895 45730560 83104565 100906211 577813498 769081099 581731362 506928394 583427562 416115122 486482720 453185876 867506883 891835039 506484828 5764306 307813068 126002857 210532571 925469102 298770485 802817217 387480901 467473100 528472419 203016989 563555745 379758625 560412411 848902263 809354208 932436141 39237578 207924536 776100373 445483513 728031790 989503984 104111792 746388483 597157415 119192517 217154030 703113542 560018007 405477643 333659531 36310961 735944816 772344692 254936411 44409357 534335062 594984375 502705296 778324148 111330068 718010726 831241901 865130055 508950296 833151973 27538443 843543331 675571685 781015533 930879244 234918377 982332173 236434469 102887599 430739317 465544161 81071491 31466073 218910662 7007202 562640982 949273043 715174212 953323116 33445800 413697386 167390969 513715547 306574819 231152005 221807387 328877849 527152668 326874923 25854462 85218752 647366470 474500098 406032651 508322707 722669065 427456958 762215281 491818982 946404008 6120436 79330353 826666759 252956976 434436368 133608798 693322831 773725754 667314590 294896416 440231879 140669138 8126866 58719576 24520047 91167723 238332118 796883067 556881 48794120 496256759 91762244 660163389 357543265 15721935 85766640 851847746 712497360 921984769 712059357 834819454 978209221 748224296 982718327 254331933 930463125 74452270 281921556 64691019 452435436 958508492 709167458 199872995 385151301 271745175 92284304 846080231 923869249 157262568 772758278 110962356 449249471 925401863 982369807 363942502 693239792 663704515 449129586 761851240 706575382 639409017 997169489 469158641 801626439 833859360 871887316 164940997 391866139 260531849 860668812 277947860 361226926 160840806 283807323 360936723 738298984 292387476 693811198 834256842 410388037 478224925 876941058 553571272 400550778 366585692 586655770 357220981 726898233 945621446 994448919 248937550 198485559 473918653 27572098 858047973 709866599 778579358 936848865 445065470 926337570 76371424 902366513 298227775 342897290 468794781 962905166 432799051 94527225 955081352 698231329 201230898 382983715 363159676 15467203 17394630 20196967 476390026 95344843 352380964 585988545 713998843 407361346 470508929 365400195 916003126 527658422 454146612 355588465 176759970 956029058 760985424 485341366 64926552 845945566 681548687 328829607 213164745 97543076 822192072 159582710 485838511 16606425 555182987 568192321 475382022 468145853 117838835 315601978 79975038 830926582 420792140 664942240 222776487 16603997 596154691 236063788 758254994 26366745 353016205 93616708 42427852 774902832 475228596 606262635 478760305 453027620 882110486 97836123 830670645 171988620 284483713 972919655 708162573 314246464 259237740 965044712 465736496 623712549 19673070 759433368 903318692 83574875 846998417 358548002 86367364 22276227 783363547 268439698 307511637 444441034 810350381 590110804 150647817 663879369 963687809 540636701 482897986 522759644 32196305 745988225 856087804 685558556 465442834 715831625 681247786 798442067 560170995 28517292 131272540 138978868 853389769 610961581 676056927 62988031 260173939 992270623 210055566 489942741 50474735 254024174 151526043 121294691 839269636 157716973 982560548 680406111 742712815 781392065 474115484 880157939 251369681 499580725 345070328 642171021 596557288 607333688 956100455 174228358 826635649 611892983 100666633 619602359 740114621 920921099 240068880 419541454 745166939 923328185 222156711 939169240 898607085 691325147 643977205 575010038 884024065 557329161 28300200 547798454 919480001 514878238 425224830 591904270 437319227 528699316 829164225 712635993 522107377 720846202 397728364 451880195 744430679 475817262 207182159 772525495 492312320 531108777 851921176 917212513 329325483 277522592 810324651 749147197 667161578 644042205 920058618 937602559 218892425 91869161 735592640 948215438 283422217 706266362 536928592 870133658 21986524 170438493 357183501 927931271 123037206 608868021 149007550 394981199 579072870 946564887 719172261 793301620 601822621 228266305 32230377 61091152 168250087 595414171 480963879 599952974 395636021 994523897 957193831 840785668 344236697 259337089 742530524 906783869 177673042 881258373 223868656 305746496 543734415 91838263 523516573 814493519 397747481 367342658 805079733 995518217 241259794 328520079 505816026 312715204 523111582 961558815 324443146 135412310 323418113 320791155 13937212 307336998 355356086 345559060 726874253 271178624 497836936 876699292 711779673 288896435 204127590 461811 176104559 157016232 838513653 840669239 61616551 182613874 677924348 493834655 461682844 884717516 976629847 313172142 901559928 374944196 202046970 92375776 733796697 299003520 695533341 620807520 92027544 451146189 765737108 100710858 218979334 252810242 59963519 744377174 24966255 279991390 503365264 70061834 409211753 548855637 664593875 476894952 941468014 119661238 931163309 368528208 606399872 213307538 518148464 176839680 131003338 246435644 256481919 627495043 699757436 566794222 763870951 283380112 579865632 875036649 546036989 257680323 354663715 182846672 48514169 971502791 539628554 990966847 381909304 58747383 194368124 813363640 170816083 701286473 162730292 412903153 575681461 879253072 518124536 595094272 78645028 959054066 698732605 44148866 188428581 429749624 781968040 155186021 231969092 47813848 840047322 950517644 191804758 877009159 144829447 913586715 580186868 543792940 335306259 491760296 702630345 390104272 528656389 313673525 869563525 414804243 62775085 157664009 29759346 476889753 735496512 253198803 412909941 117404912 372242825 643582128 180912645 556820756 198608035 635801490 703555643 732433531 690693437 354096780 787855478 534376338 506241459 807111989 549448462 391130967 859421812 932518356 934489594 27087516 357373804 214588530 307936062 451729099 173833699 982402997 43555051 90083910 950810670 895038649 359624212 524049855 176915483 430747753 347755910 60392304 431493869 428296963 880797428 915119181 485755509 212515414 937511798 311890756 781640145 137980738 414954609 558958736 336790791 850443964 267087627 563241583 241396670 171024265 838993975 80774119 765711248 33620605 237231308 155709977 940889694 658016285 88290637 316897933 337649559 419594482 5095254 142261568 864986696 609803466 246197137 779250764 847625540 458930815 49781099 715992777 283473028 383120186 356288228 899284551 344947485 640882984 467651188 934293613 798051556 12512924 742173890 955245061 151411801 166332794 773749396 428577479 436501487 944029913 629619509 161819179 873300445 892008149 610532750 525409160 29954805 167601786 800125381 948384147 90992891 36361364 729344964 603652249 455823433 921697512 515523729 304742527 138248568 702524541 739572932 330851588 605122933 870021067 419273339 941617647 76196295 915094616 406569004 574527756 400599646 540098825 874418305 970155608 240050366 488233151 175498769 456344658 837916967 299187866 47820947 942278062 669019248 998472710 576605331 966615963 107417801 162763201 423201890 288422259 826432535 494930359 947365679 841176220 75007588 998507759 166145708 294500661 839428068 167905132 934327439 104031260 138326990 933495285 401934626 90029883 642588116 14552156 542849859 229777849 979674782 333179440 601338776 759500112 200901407 178147753 931239821 980065885 60809070 784864994 156072561 915136383 696008176 967126947 717340566 372271575 214406021 87518511 287889100 197459416 133715658 108648557 709031935 947690177 586854611 372921076 622570418 694724597 630967795 652228782 704994390 711472670 692236200 395884940 842511914 914776897 440103777 830867925 338652027 532321128 69949977 20969927 51100171 941279494 537014467 272066672 762885560 447395444 951515895 391494357 90098970 491013055 594957152 506519054 533133850 147375669 159016836 67692886 115109097 858142737 365376364 225090151 682038314 986218310 552521331 889729435 525896342 624378547 905364712 838700738 30983641 217238120 559661287 708484222 818277905 744467000 877957925 635509033 368952785 606623685 60094989 73858906 683362261 372551491 48229266 858168705 682982471 709844123 265372413 50876028 911005044 563866590 626252947 861021098 762082263 518580988 546217822 469725557 559952390 106454922 38247397 450530886 215097377 403443969 653844325 854916000 438927498 845318029 440604089 86768696 957265884 455669218 877908326 774969206 479788149 862412419 701449051 669926898 495724085 728744878 427883753 562705629 545188615 317203691 186153320 502231563 765102439 238651602 490618717 932066805 950754682 215964750 176102418 91795724 436424822 771863478 608333297 801313749 996848786 936033856 817744327 399661962 891156448 630638155 690877842 455575737 351659016 608985024 608178827 4107938 56873762 524919911 182307031 858821782 566560278 450629893 992014152 534802996 576639049 342681777 78100766 347683782 163202012 285722772 987013019 538698111 280415900 735903336 467084894 59865878 430715066 545281037 624524184 682573461 137668429 354830248 497071796 276801248 948345931 914971467 37558149 578960191 700693164 405228092 957314281 740321908 864658225 787988912 355251192 734440129 167673563 93413424 378481315 873804259 310217772 937368193 755765932 266131313 730169158 593797514 808921889 600476305 346256209 234395425 87923830 181317536 338215556 268647738 929590179 392824863 889059804 217594630 769887556 445837549 126289587 389313583 211112584 723660561 131768748 125858092 797093248 533444120 508038849 440063480 154236948 514536052 380936050 423292530 670049037 213917889 952124091 572375732 283070542 158956243 295202366 545029937 531134686 617724685 763900389 468082155 483968174 471963214 89704338 309061108 285208656 365500663 829188767 907691861 99244714 498847512 500328105 938783734 580734770 738302596 366585766 264471474 609957863 984991973 430310862 298131513 233019436 886962792 89455474 831098714 653125788 521679432 10229018 222367398 524314888 214711039 192938692 966090367 431565674 957558121 79556710 901287840 668492317 39667595 906780540 348854962 165548023 673609570 943367006 798263294 112900990 362786952 23022526 131905489 40169843 281390003 558372035 118375481 230160622 437610936 49640431 336145314 785200779 965084928 553488246 354188360 260404618 470867552 698076631 503090265 254768698 968130264 559204300 836788123 311191418 596212137 115086396 591940389 679119077 307351906 762140790 347655728 214039759 748135572 576237207 652506214 112834667 335425882 540075036 419940247 878826475 719946652 416786583 808153367 47291335 842175999 23290311 933454106 869752212 808566515 314550931 109012307 762250973 912578704 674940471 813041301 246925569 336158924 761622063 606138301 348908350 629107547 673657296 73846704 426261046 984252401 758024909 602454420 256264268 922699850 217751295 426187048 178033529 755405950 363481686 180621990 146127778 920453680 254686846 267535265 102999229 104320118 705440461 772112782 833865200 141105576 806686122 274585643 693876230 380438386 19287084 715842366 918994608 419186669 218089914 449739631 8851758 465502358 553471015 375579187 724273440 687120807 626107803 657123694 341495907 503249054 254305097 63447720 116714528 849248928 535847578 143706941 941894680 22889772 915301873 194947432 622924715 171444060 814052367 65450726 728307193 367091521 535218175 868950386 905781272 704798631 299776524 961229375 264236708 991965723 985142017 881377812 700796847 683544342 437865897 877041223 797619369 667240547 261599234 883923488 208044097 250384278 118067401 838396814 149339715 553443749 965714487 418510447 981901229 595656810 696136597 539218084 605042534 461775881 483877723 640987939 305705213 764990354 256672040 371887557 821630560 366608090 971490631 100951417 389092910 520537183 646417132 201090518 174372935 573432535 663996467 336960314 335748884 26015319 575531959 814170842 654159917 751845562 349644552 497066591 256804657 631556923 636626564 213573851 16136884 873029492 327489081 497484919 877937516 778579257 857976113 55350093 799251221 796829260 758246106 451185940 671912878 4336408 42419209 206433292 503032635 866624440 428913407 835061605 33064960 932427844 677201138 945320021 958022355 602187288 429249177 964121908 838679539 348671505 363482101 607898308 555465396 59994825 722894809 58242948 698825795 306141564 377162795 564769723 197404969 582013935 779773362 449484246 925885232 710919883 837967087 658338166 616326804 619390953 107890500 879619364 518628909 622513584 382873796 730999277 822937242 456776096 717917996 846958362 910267968 581363415 578669261 696552371 779013811 504540917 167815089 871234479 694432087 959178377 739266911 982932108 429118726 242123999 561016348 776107250 903044723 546140696 221687412 517660821 97896326 639095838 984144086 845834058 842209901 254016846 696245485 314643778 776694910 393773793 256762289 844911333 319584005 474540018 965914276 147438318 98838727 250239527 901258985 800116414 782521375 959380034 564315512 68651686 311692119 906527335 759760925 756976296 703762942 795032205 114903302 607970302 611707244 118979545 912621142 748643104 7638095 907264547 962902150 19578358 343516975 431350302 161926601 280917992 788538806 518283434 637856349 604972312 497189460 797591032 289038942 966670625 982599248 323553868 859580641 32916540 6668905 998781414 285837297 298778680 227940746 27085510 209833366 673216462 974332398 525981640 260930775 420146683 871037410 646609707 713767005 645289525 846155759 100325397 869480352 439858630 60309655 189522444 299315469 158951226 737079891 300438824 477068998 165640853 783457786 246425726 97800564 660310030 477822706 642075729 567919636 160888308 294461199 107840597 558559764 785189056 519395909 693333799 535813487 334890650 672492365 561752162 396552850 223220816 254196456 875568143 391158528 650117415 422425156 962524894 638971494 807489209 850545705 955012266 292315409 764597389 732991833 897577060 900486443 998872067 828440238 278732346 546982437 539802184 266488902 767808049 195386588 616528380 780852818 427392186 731441088 164513928 432321881 545747671 101079757 241021244 431150724 221257559 549182588 388370158 724951883 762044405 791314604 879258323 847079074 316458317 824703326 801769430 605099913 973794825 60871455 413714430 451209387 40677173 881597101 83575802 761156881 866161015 909259925 591344882 823138363 392187043 618599857 411469 505290326 861885865 547591186 111935986 747162841 345395847 845890761 135706249 596897340 293647924 654884020 65671924 557619338 853597248 413658189 755750638 290847513 493410290 464736838 727217949 533911485 935750825 643680996 489672640 505114642 209214850 284025253 435240221 343185559 147207921 427495580 341707015 759694311 943303131 949453510 82482565 209096464 538252758 31846305 40814522 383787458 436657680 109387151 858468829 13096081 336208232 160133030 553362354 350269068 337239788 229878296 609665399 41347224 786886901 422341619 143801583 459530599 543651038 509740181 61743593 461563353 689438886 43614766 773879715 330462252 293581139 420975334 96397879 362547499 158382840 151810877 286420801 91830641 143273850 836676467 810674947 255531899 839905710 320728731 15738852 383687113 908396735 682278907 93294562 387631165 286832535 475200560 730356790 993490310 555633687 832620299 779862844 646225330 874956969 783289567 946077509 258560370 15177792 324645252 350326733 905957667 119596738 383746474 368824881 881307200 680103925 922289180 680869607 899584527 567289228 271518806 791155233 243840142 791918151 202434128 326957230 622957901 260287722 762863022 876859170 93216749 777768257 251408297 817321599 334684135 227865062 17316122 381231163 414431280 445716792 759222474 303016953 900974466 178292946 852394680 212552039 963629161 672972761 87055777 781523649 540822018 937705941 150819882 681406869 336480215 119913678 887220206 901417656 688106709 39558038 649823394 711745119 320197575 946420803 850633967 349335275 283755992 48415493 281843982 86137730 603009890 574734453 680999280 153447433 315611088 851541291 990351487 290628918 36806823 510376577 16475080 798217150 12509514 953230834 578407601 605596868 408087815 734176462 944969039 18522324 137042815 272271822 269459755 76894503 938237716 398570611 937785173 576952141 642540598 256279314 307096554 895913464 392279099 484544407 138382820 605521054 800677377 781311666 915249095 565998507 454362393 509065740 503343458 756428285 188756652 102808236 88462766 510500396 23754465 835852590 888119041 142746717 481552739 689379401 549797258 711826484 102983924 497198808 912626667 847961067 439671953 99284131 284042249 177483957 879485403 291698199 739314843 517992551 879394608 981629146 279689762 726398909 599115133 311476010 254075888 663811552 879963265 924850174 347177916 376583237 9314104 72844189 86918512 947913422 887113330 595104820 412101268 735925751 716430364 814749812 193862610 167550921 46508021 922449596 202846208 701540924 640385625 342985720 395708172 292236856 465099355 392269259 886121515 14972468 222509687 272810672 670182664 501866403 406250017 562106439 797679848 945554380 641935804 692368086 800351833 87634004 126304271 901612519 957916741 58849919 451350443 757154617 235152369 909372795 360250860 623346654 578947842 327912154 306663194 507569586 196654432 313453977 49656446 987848390 411422680 558375355 157682689 407834804 520712968 666789345 95612377 258255089 978617946 912754549 851927443 830686629 188598091 334814916 244188883 529277964 937870344 386178713 229565337 947108340 885516938 152616433 386167123 308082741 555168848 868960044 578452684 427117132 144133414 558719870 957172008 865243305 717413771 397375228 843714598 173403590 196327416 948964651 268107381 618716979 322795699 225885127 131439092 990444678 376541401 981025143 370712674 165349577 17431975 632549522 664362432 986025822 762118564 9118770 647088169 939778359 865311333 836209362 539205091 529048692 544165294 523829633 991723620 963573118 37108126 285510274 83483357 4888652 459092018 722002917 109659370 632070934 483054374 611699642 560124717 181572593 103370279 347620529 819023525 936221587 7792002 617242355 693028220 547797160 101696243 703876638 903039122 799034023 775839358 216321336 373531631 697967071 202146343 338582094 631933259 146899172 389594677 848128657 740637643 369973157 216920272 237810756 189494377 272983737 785932921 36363852 926986143 942624966 629657980 518709500 536077690 186762872 667762849 223313620 839686261 242232131 605719978 688562910 155026057 326729764 405699934 338680397 799895504 493599567 880925018 655110129 697361301 481885971 841401478 391462927 280529181 380098535 664024140 299455612 425000595 895854722 278591793 30485003 182441400 504312067 530448196 39283870 835208413 408483584 673452478 658330825 518506301 270833966 24560554 398987100 22917271 153269022 674397704 308167532 588861492 556825420 343216410 329539580 919970026 666435222 893431831 964744923 330567810 221476455 614062265 572339253 497191219 410537023 625567121 816922836 896835457 549502327 721741956 99481002 247740850 230529051 262403901 20803013 65271718 188003955 913673302 328866458 342261394 197476572 581917395 111474219 928971877 621669264 520712868 576116853 246656475 95343048 180736076 464273280 272777677 790467385 855930915 597417490 11236493 644273798 809004166 42635932 185619317 311480049 313648018 885496236 597722931 550665689 342160583 889553870 104003473 420561868 459275910 927750919 946924277 759412043 514805933 293350201 957096028 705853649 802707215 716456547 299772546 931190478 595240023 879533591 965394638 876316042 9068829 966847425 70378742 555542443 774709422 336235008 582668054 852080108 620762891 959055614 577997772 7289948 966836028 444786378 270395579 389400992 669322227 795763714 20253115 457014752 868648061 39056204 940392244 808800597 33349734 270781775 621899688 759226431 457150275 314092154 957379666 51597216 506627566 539413453 842328377 105422048 801839001 434987503 540410995 39334302 451587743 333990875 963792752 538504381 442883330 697258426 522887809 70518781 846748578 467992039 842297675 14608884 783733107 60592468 35174940 950395035 187369326 121479267 408471976 675209685 747297578 10312340 416533349 39087082 376673982 757625546 685846086 827586849 965506214 399334892 378149995 653052106 469612057 149278888 900392314 344854391 160988819 608987235 490172705 268244748 701097955 120809694 523798178 32142212 571711282 712676637 138918268 131837820 120578899 58479806 831792924 785565852 244600648 568393914 78017321 876084802 939128443 261289385 647980632 754617192 951473690 809388678 835967278 192938777 968394732 139792357 804218149 575154945 75215097 13625055 980455427 31140501 234020843 968350342 949876424 929392473 405879437 587602724 883927377 413802658 151464699 329373089 612534793 234165476 351270158 523203472 632583472 43175809 770891487 755937150 130075428 226298340 747888482 629702685 573114055 623513429 639736860 633916752 337414190 808914090 859298245 460196567 351326161 907716975 635864075 896813018 182800402 584757873 971019135 565357057 899435047 850594900 918743730 635345943 794661120 87039022 977125939 566916961 927325056 360847874 959070868 599774125 610570457 621505781 43186932 408036824 876619498 351434989 97732963 413653091 179909516 190927689 516625089 217900906 254783221 304459376 129056818 569374676 615982112 619406855 682347760 907263452 514474845 233569161 907401460 424767587 597368147 705065582 994023618 728876090 82425687 548923909 52247075 387750967 715868501 502628564 403309251 910620389 771699430 432153368 3874819 763213300 868733512 825728877 822310986 64873088 489391142 614762852 192167055 541650582 548803206 134365318 396092219 713257627 46649367 245046616 629444828 252226214 354512406 998764031 256862881 597981061 181502308 929187222 287480819 103016435 28760889 670904174 92741143 389219448 848202673 381207514 741481259 62796967 946736456 382044616 718649111 126696633 110553401 999820023 114149412 347911220 937317823 295018189 750274152 980388615 945766318 703513421 63831954 85625195 45243898 959795999 36964556 41711825 239193953 3261643 531558035 584720911 251498942 66504889 110040242 115678849 87634459 669598065 338458002 978015460 196435820 491481907 498004328 903474450 324117861 628879435 970072208 85803134 86381782 897188487 635635364 727605123 864314745 32033850 334656892 68537578 385379066 768195013 815587758 566185127 267988934 534020890 224452766 203821400 305237257 782095187 531526069 84770590 198589120 136428234 910015845 133425351 382287041 919570094 737337490 916839158 618024136 795721271 518996088 720054318 251921615 805342936 97957851 363966391 383122376 676961153 53482086 891743599 709627913 632497148 839494083 852743381 263505855 23467075 652514518 582909181 816727321 34466824 759240862 119002554 440498058 311069569 532410181 537164254 562292181 666270955 682163734 78299103 879722664 279542756 776620226 445861357 966639162 411350871 793597777 490250072 222126592 450670974 682101229 663829743 833836897 416191994 182662245 654626371 38228175 294580785 567327708 835012494 595492902 938799998 38261620 404207784 193797592 77516594 860706009 547631689 468138719 949759787 583102294 146494318 739937233 710938807 123034855 636405961 115872731 760292486 82248843 408965757 815509495 979259302 858521380 746702887 521079174 550375571 795099384 594181492 925527223 149844451 197505389 303376542 233942918 427228950 375279865 721854212 142058854 205488214 843762277 204554964 88967371 782245408 560366943 113182483 686961328 433605537 926378210 290189027 410402340 638663220 551823999 100007515 638919353 119467647 56975052 186521472 599930802 637835287 841452524 193454264 326361381 475205552 651088898 828085539 627312762 780591937 97123264 486077369 731401372 33789541 206274099 359075142 345303226 794706992 222419619 387010287 924059316 355090151 172501388 846359013 15435888 623004342 278624313 965138737 651661981 443804636 159344086 920366005 961300857 33311022 83910964 122200212 456460124 775476805 664501737 370925817 624858253 107530156 755927894 262500904 753798085 153352896 454109401 523938803 393628010 152691227 266382392 504831184 130906180 130313545 537938823 871154169 536855840 657805918 213154590 450915514 815616398 474864860 608512478 793174220 473062279 995312299 839704711 831728073 836652473 526510365 595607728 468727022 112549850 501921893 790027376 101952499 240455346 578268021 288387699 659984889 497656881 861416829 242312476 355335512 322031805 119359418 294537820 4135549 42099321 449159585 993275949 613906903 942536878 597689448 644308631 613390148 118447928 474411032 123672872 657015191 169196516 51182516 696297754 38895564 232718126 570425411 777996088 230512553 748590767 227763989 634159573 8787420 176221683 920863984 174897573 315894388 77201696 934352690 732187958 159182990 522145203 966883992 832633706 350349224 236805713 369115628 285294204 548909530 329175490 945104719 861673110 699461367 437457911 485001544 237469774 623473815 295907708 292853779 303671529 856528257 983086554 494675965 848663067 385049604 570089835 664343414 385092666 201221844 303271938 575836826 261225402 95975612 93531364 985853374 918761805 112953755 84983978 877500425 397581848 602973124 369104444 917949269 565036868 638318789 932313413 847545962 604520015 428641580 961548388 856494835 612895081 878457964 294451757 572854812 836044179 824731499 699462021 109127680 197476468 992443498 117942459 274648553 333639972 225510131 767834203 861518924 84615819 579690977 912256095 309725854 675800972 148177315 500388203 652343118 135413646 656422899 79037798 12908340 8426328 43244648 874252273 413249080 651425624 560641755 837622182 795559658 948165991 326426471 535886357 459105249 109596965 659166178 608860911 931952362 235621552 442078355 596116980 150382586 364877900 697616165 798533993 898783380 915961533 942967463 441893166 399920660 327906412 519144555 551496016 733007948 261919451 441187675 709832186 918172532 752724616 816512819 851751490 186763076 532864285 509545745 934276530 582444994 287902883 227684684 537314628 582666575 271460964 972850526 220086538 432798257 983281148 851718811 393174239 660018078 803976047 491836760 786764031 45169277 103053760 927386039 61168841 605670288 566275540 969049190 47622902 748335188 640134724 175864532 492776023 330869567 362914041 627765552 395278451 798287034 53421866 353128116 227725330 311624033 908904119 491742990 675553741 339287224 275089287 44319537 578239908 455009496 373287595 593267652 445729435 739897764 943984823 451578061 200033578 724628305 937300039 738830365 729333038 890551329 385477174 149572482 523963179 36968109 812031975 481896975 355733105 328230180 876576673 458444371 540222805 10457384 365528485 333458130 42256869 516607712 476570176 717694086 655847250 152706760 195470186 849999236 502359982 201298884 228218094 567410595 97321777 345173234 254615478 753103377 707392889 529769790 648748596 824123418 211670320 81341786 400753722 151222463 615818519 574291030 41041789 973358767 781589125 76493193 907896256 660910388 396207348 161938902 459513927 594416576 651611256 757966638 869893268 536156935 855460311 799388202 291003655 762304774 91491104 249504646 830096433 352033175 279765123 750322723 529784307 284537483 239869247 20429901 327931413 127190413 426659084 724160414 488419830 279170164 625767391 587700178 671572521 898856319 982099441 743048315 256335269 347370875 336107315 41871101 606464447 589359637 969699029 800359388 687380571 943004541 649985561 371559937 249025113 147919110 617718133 840238266 491967305 830141256 694446737 103925173 219264066 82423154 701702470 452732893 393785602 43212238 996361984 271082757 727940607 883311260 888367860 251307384 784180696 525462491 423260304 808022159 617517170 977324130 714307968 655445547 417671930 430275182 18793753 644647787 181344222 11519686 239445044 283012073 495024926 301444829 406418639 350191039 503411271 959599881 614444827 115233194 625248690 458471107 673874531 654239398 88935463 63707343 653553502 314926698 816695031 939138426 83972467 350135700 156363880 926696932 593809491 128843803 110246136 717680340 990986839 995575428 381369426 166105142 409897968 12032850 482307573 401751227 429203398 508836775 434026206 85280248 616722265 401067990 86539933 603381700 984826762 308831127 98867380 61305109 186893807 190213992 548062802 399757697 769237630 288464189 209803038 236799438 752497223 432850584 593215962 71116101 214629097 329331018 374593298 553533449 612410945 769862997 704324733 257572082 803399563 30933652 66770275 410857945 463941214 258553457 283188295 13015788 726609459 67564307 849155738 4854763 471291739 66613990 818717050 319971656 646767643 714633147 227749086 797022658 107863354 268118466 546897733 611591931 345417379 779105417 455337765 200939699 552795301 504958791 255402476 342324529 742424494 872548463 612311873 177231857 296320636 979627805 507576285 863801754 503182742 665298150 221670433 468697707 664618408 441836463 91854837 403151348 376655266 457223297 885317869 282155833 586729648 779937796 291833398 818147296 195199261 98890690 662250493 543053561 323024186 925876625 474074228 928994152 944417920 463185665 265892949 959561003 569303263 196482817 495908753 601727095 654036932 691466782 379621925 810173471 547779685 102394090 313254319 270697115 40192233 242727283 575599552 156164918 317336031 954293694 150871552 591942144 927634064 577133899 314766558 862947494 149468495 949131822 584441353 617507823 42598601 490200471 35058376 821248306 885705323 568317485 907504450 50868919 813703505 174697001 791098550 366157061 286721145 380406228 499663769 750675732 358738224 807984562 605499323 97960573 266990523 668053324 550934313 319123046 380052762 410774141 765195817 730799111 293640977 412745168 566214783 186485328 346188626 480880127 788129289 430267230 717859720 237400390 442105192 299946844 474137176 259155716 988843176 175947961 114122679 142737901 539487748 718683203 164219305 857256566 313506523 636489154 339213626 292145919 454484085 699905910 516814810 251952202 582799557 568174816 191583096 57935031 240623415 571109526 449004748 685114109 981620669 258810081 636342549 298793048 760052561 572316048 438860050 98729794 550120278 551919683 369801443 655807451 691949549 565605258 33060205 38428866 817327980 222637719 434644224 18936671 589800308 827513053 415127499 787269950 238400013 483566135 427496056 807581598 938453698 894726808 37082627 994807524 673506145 128951166 918479282 130567941 498532351 192213921 664648665 985668701 627663756 597386849 302066915 65469858 301467206 931736382 182546364 299374064 878241273 84068929 862889989 234880652 187127998 722935888 341127982 4890598 245511688 885388867 228738715 526231910 938561409 929197116 385319321 874767668 736273184 418100888 658475985 329726909 746235557 730954950 526185568 863080605 713407952 910945686 161905994 416636278 297963779 518555439 809836064 870459483 924386767 69064992 653330910 919484433 631404148 960482891 916446476 328285725 741058979 546163516 955299758 411718405 895523177 957901722 446996150 132579266 100055311 246514976 578102268 383058570 296206585 373960558 78084476 35321044 899544813 135136704 787266548 303853822 57792980 658049736 50163502 24299600 192235176 927779428 236598574 243123326 916428160 809951872 177244060 477300076 993981451 604028282 369075778 511816063 486100029 691607541 246588833 223563872 725044281 590897630 138555842 143416009 949608440 686430609 105382072 963775704 591080785 777105106 286762957 245752320 233518155 520936294 335311911 614623901 294134805 207252578 242852428 115558284 925176304 464999939 121456069 816772728 480893657 992483923 540445834 932417847 296003010 389740612 2110833 910844174 450102836 11093847 209307565 181332954 765058499 599062705 488529253 261516924 44154511 876764767 74951565 74036122 370094017 153810186 31137422 816052882 323216500 159833704 745177508 561943003 177860002 481446882 507645773 848232325 125549795 695648395 361161470 688090844 505913688 812309951 553916452 991078814 966788356 157754378 543034132 712295834 927523991 970868038 523493530 605480578 940011176 257769072 79122542 740294027 112504714 879581261 630511427 862602463 623522403 757280826 651999512 98405238 95908752 260356300 283651929 825915461 171068463 885886294 504713992 837016923 154448740 29528768 613085820 724747692 382424657 916405504 683344703 364208668 794160100 678718730 513086379 65336490 932742172 637277162 43106495 634164329 48923029 839064560 761208908 584647159 461423820 197905920 425691910 725365002 271035994 347863055 266809424 389356267 191530308 900321612 153112021 362586112 515584478 456033912 181852901 652422047 361314105 314243736 843933328 622195652 840432921 360216730 222759315 589791630 278080903 812726727 989152978 553913699 448710656 469658449 278157656 855754687 172329477 911294046 543835053 652209525 428182151 746180228 529037359 51598069 556726698 925298134 758495188 533852213 283338065 174863312 443935345 111510816 106446611 902308021 410112205 672915525 893680629 724576820 255526258 413919174 146248571 894578653 463866043 669997241 209605006 568129064 71315298 568351113 372685347 247208170 607041053 90081766 123044220 695264142 652327498 107464180 800436537 719950468 448953697 579387739 589738482 308673844 660500545 766323064 308825847 736252283 210628147 75680042 565828922 685775812 276004295 131189900 402766074 971803491 125142380 256663398 174196951 430423244 863399149 972140202 399867899 879352719 739354270 490427613 416572507 112174828 503751420 666437046 445634520 968464260 494488111 611130259 967852513 679052765 504324001 989168115 720462214 526863077 469040343 213183995 591545369 762538809 138205852 772475521 634678988 177054208 141932238 127623268 166907080 460724158 590600033 519652900 449908840 793636691 705663169 220311639 578506627 956009447 533740824 199879103 672776225 279341937 358674611 93992567 969682822 936324941 827500608 886525384 653337733 457898323 513936128 498373544 796778250 424793262 700592762 915609409 970254653 316932857 7730021 372409381 592995995 939240481 121563070 804141344 128697044 144308185 486836754 316092862 844471985 428297775 509587064 306136695 854582762 686383076 89677384 198863829 553492225 379895808 274255390 655775573 555114007 178685155 835470450 239849481 350358235 11149016 400326292 825090552 89679950 690782827 960674998 35459750 778919406 707732504 966221008 435074413 179465225 799874209 215454747 364968147 64486065 875981697 336024867 955881257 818211565 595313523 496257098 738713099 563128150 204277249 760629002 269612441 298498992 204420326 56391965 242165346 500413471 362289488 298701862 703675028 622524587 517415853 387208925 241439564 380253496 707305846 459587628 55256329 515166283 805087276 757345075 103375576 668448228 63061790 409491173 468080834 42222036 673392186 690791586 148399023 86962944 651545871 461611850 27926094 373067371 242808378 656636937 29244689 602919722 194658143 510608937 968666333 796605581 271076255 440478096 184193519 921771623 145331661 591896728 204333553 696566231 956437975 122707345 128734150 188198461 353671081 734290018 779939123 773732409 730074134 60561217 396592828 650891693 434380446 595195338 700843203 454346793 356433112 843194859 167854041 95294520 830575898 63533024 209508067 31417507 398864447 814407880 66657289 417750106 388141183 309606088 380336506 358863206 40326861 436415450 672869053 568514352 592435836 124083722 143740085 857821584 902021085 123496781 584956622 496314678 956087353 886353154 2609543 252861463 197932383 843307903 484246437 155088742 551193729 302711194 158361632 489796561 935732663 216323623 545977938 176862279 184008203 537895588 236196817 467124509 983123420 182222710 235295658 874038131 43299133 472456803 598806496 483899739 685616443 748700730 651788422 831440608 379748097 644565307 944415406 30317953 764865850 594103533 123519198 79796545 450101697 651700463 336549731 826237620 387812318 322752978 152897712 320293897 31874383 343903826 364038205 317295527 158196851 196533932 640809061 175306034 407768972 291882050 312736619 446836672 222118618 54004477 76141905 426299779 651731044 64232657 31627802 175135497 640240673 398972936 855631877 175511350 914663261 278926098 282794164 112423670 496244360 805228120 441270379 791521728 826892578 464585239 957606318 601983262 353658462 995526416 45329997 352397847 378640975 531704616 997167512 913139935 884360102 556206623 643378924 544120726 282218379 875412246 728038580 886963147 688923188 22080268 229851717 978956447 247759479 106499536 416666787 518411171 240036688 655677242 160402950 684986087 224064553 172832485 806191914 225100449 389307139 670919144 122483265 213458564 635833873 878086440 271092519 881430231 151484263 844811176 57866834 411650275 452377767 768457766 925438195 969024621 42822128 109602636 820054960 539894286 233515220 954342740 719109816 336740487 399811961 292341527 428721260 979922610 492422440 597536475 623002593 454886152 211547224 238498307 640131603 704124488 644167530 679024292 7010432 10680367 169719516 264227815 613569133 979107859 246725824 104598137 774246672 143777884 309166131 507068885 232481631 154281097 4797422 362971087 949884567 44004503 155284451 668888797 937999822 850535081 730008517 190858337 313689234 621549412 208118258 818132700 678365065 350903902 284745980 135681150 363930255 505046733 343083141 415474624 791682150 995282795 759753677 23801815 493992499 99576608 749962085 845697630 487270950 829121200 330832975 873266109 394987603 637704708 787872938 583842731 142308506 568408844 167152264 554174396 255953274 431695819 151370100 861145753 551694106 390556047 809594365 61129798 242023756 196967425 700766052 816498237 554030543 29121400 247564482 284338078 828502953 71053415 230710685 112243684 799788780 693600360 479973577 143453854 496184906 964396914 252336853 801502034 193737599 890960209 380178900 313689766 358705481 668901469 795832146 129199344 32252407 108554691 446494861 560296067 645787712 915557183 19181427 827865074 921310701 484043078 61941142 840964448 98481374 151527017 200962683 662469388 744769674 252346549 572656406 517987586 766582388 899511533 739511429 597632151 539872054 408670292 770894996 496066500 209875664 603395512 968945838 555469475 677960111 672426438 976767326 855827738 454823005 282448669 138375521 593169132 537746405 607100423 801399970 777468401 851870107 596905334 395911777 706683001 773396923 148772469 919050738 9822951 583177451 969005502 825950480 59243891 90394890 897488407 576337023 722862807 773196674 619747116 438200540 953142188 460681539 838570494 590385356 330906409 432054030 938735332 204507808 628093656 475954097 924300191 175182936 856506631 205470416 579673819 216489052 687636602 563710333 889738565 762285226 778774570 793084886 521289594 544548788 401996906 87739271 768850319 701256963 790196828 575671220 560178707 10056962 205547401 809673913 134870694 449943969 690730993 916457244 683700691 817474354 138550143 870842701 478366645 543546494 607517330 164027696 300964122 230377540 394387508 720810786 216078636 880492175 528209991 757735156 786363476 942992078 307991796 95241538 95384272 679377141 489982535 987910036 276401178 358687942 602982841 554241925 918375670 834834222 372532208 886260288 359032098 359327407 913298386 208189711 75976722 992269957 692994333 764760464 76622284 943262663 313061737 779291999 271574554 555436954 978470232 799740864 862445231 554969930 297441607 322044248 282594048 792157852 976315806 47698066 180517622 128752548 690947622 272459063 301068732 719439288 927935191 444703079 712382271 947529414 927235246 229086515 90279883 589400752 394785481 865029652 921747965 308295969 626752310 474607521 624572463 861317127 996950845 914180841 594691176 482088531 854232855 852440543 90342213 397609921 143442459 142500229 575737793 181814613 864494939 953856619 824248041 449155119 315795108 376775679 89044516 630234274 821545496 570550565 601345353 864569566 590187190 815969849 111031129 982875164 558934422 870522640 946245587 978315111 772971787 790056810 733621007 171739882 891000633 949858069 398334896 578040079 653228764 165358741 989988800 979448963 325240749 123776248 28049560 997301294 946917667 721325804 798234293 424774229 481249293 727456854 93153480 449695621 659894862 177034512 14066752 454570894 269720108 439990244 528787630 964228705 786442392 949336318 267925624 963533351 230936881 887911706 15104607 789328988 920899613 488883296 517065830 230575522 318821070 501982569 876543235 365776920 413048515 592106737 901579758 30992487 119139008 720035208 886192024 454655286 738831933 548794058 632498322 724860393 120173242 452059754 385432605 374281941 677041020 940143410 588145883 855313524 887204777 858366025 299249227 86769573 557613389 589544212 380805355 827745770 587722491 551164547 132295775 374829486 749405153 978724069 214494249 516223843 631674763 170801162 946441576 587399321 710932050 784756160 369046291 976639476 111893709 475905225 519680333 292075725 409414323 387136482 189726641 734273079 59425425 852236243 503621936 838505932 116539224 267717830 224250763 553654146 32085532 128056985 208036589 939290181 114211030 817313934 652167981 564194376 865998475 402035334 905101121 757502253 26376638 360975463 508075701 519921062 944747199 726394533 947721291 654826512 962858905 287190429 172797834 36166621 413350933 612242416 572656279 21329470 898619251 613485871 233831288 472853084 477801202 276789447 267493917 635752951 428659831 483364267 671035090 696517719 217213758 365785800 350306320 444819867 878852256 404641217 594634821 663759629 466416680 930686273 396657294 28443981 388118746 553781357 581604175 815685310 120730438 85424724 11564361 977190876 48842694 992894787 761844363 185654664 847661960 299351953 502535590 835049455 874000458 456252825 591333153 734356749 274031027 894384110 24400029 633461725 84215530 910181376 372213594 210335914 703655681 589666040 499029062 913128184 737211930 542378221 371034889 260124643 967746485 781955741 699673204 804245488 373298606 243951623 736887601 249628166 517288032 841282510 798843569 132761704 598156781 355004125 400581123 246231701 628895150 50561298 921507052 128874047 401387561 876332413 312142248 785396526 183443316 967698008 114706494 656449470 40347866 472025574 625650668 908914705 427129434 667672771 40354080 844819612 676171201 458496684 315891158 275659036 730337168 286119790 124451731 276915936 778910339 664059621 539801562 190777324 385936686 353782473 31677938 995513605 913501702 111672032 813262798 95482172 864459059 164803440 762118109 526965687 574336428 103076594 130048982 697430375 461009842 236061792 93759274 33402168 835048412 157956218 723230281 325415512 373791243 28127325 303895276 654615448 15539300 946471151 426953589 661319238 861149129 437445787 276530518 373668081 810978183 362895781 567508512 581569750 92512488 53108710 125370116 385042297 939208757 123591982 645194802 584929130 193245875 82535896 380185688 904372491 611854544 541657498 787806269 901618755 716284205 101188367 860539104 208765630 957077321 23305399 503358185 103002701 155746769 121807014 882365363 433417403 879457681 231440201 42040535 490685954 69809272 343028825 111495688 647226945 807833389 423521716 973797932 85903688 373348417 528329758 959324451 87744097 312277105 981588245 91291861 855273341 807387347 61752130 43867354 430399440 566154769 976129595 138422410 789800309 480159335 405133791 21207526 377860795 974240065 889949824 714619100 325751724 347464116 948234503 676942579 679637850 532610313 67768250 439901029 426818723 795965501 151802050 101209034 225586014 197485814 154779991 473325733 131369071 72406812 430314586 373318943 788996724 810183745 155979463 953253532 820572143 897391958 907973829 54314410 351755140 343314554 378928441 157013967 478532349 52682763 151121323 860135926 502926440 972891380 738493905 313523508 124381284 346821626 780362603 355367999 634821564 353734189 839777812 38391116 699074769 560625658 418925962 155183526 743523236 277257282 310954531 252520500 739523515 748382585 580608015 745623061 226975770 418795826 29582543 633087829 670256995 13430079 253063989 227447341 589987420 125681976 458073614 485380995 320513728 574969819 961830593 29987191 153195445 363202714 808932043 231395854 58390334 123564389 870643060 341716186 942190307 379709576 866619762 927907796 356176973 29314845 919102059 29765266 91946941 700186802 12880243 694287757 484983958 100265291 791222420 273435213 807994910 663045235 621580879 810914039 673929499 320840 680203438 354710435 855077411 697057189 25015183 876679080 684405697 65911438 842572571 20937094 505109234 811801499 690696679 23560729 786160762 444175051 21863869 582664133 833710512 946555002 92191976 28283044 254930235 638977164 785963033 185094667 61970923 816147693 824402845 848133685 696170205 352154997 398917686 516241330 312493517 969624515 537672585 623089882 121297974 186711265 835057552 116310248 657519486 515326551 305560975 217911687 624294166 699804957 100088512 316370946 245384112 155987214 826895944 188056693 241192544 445578542 588400866 339557955 736258199 120567820 17237003 265266217 892018769 146741319 218805046 713070024 340925232 92406504 961814811 16579893 833976689 937110231 401903922 189557035 805922193 984087534 159215561 239366877 827268773 920118395 289164410 571773375 364368336 89478985 366731732 455175001 963824895 313423633 267281094 238007775 425111247 504783997 654855104 88584241 242383014 350720963 790697468 635092829 596851944 867345506 711754133 604475067 758083685 542833619 903773667 589806664 452762606 57266030 407749753 624734707 105354060 710027440 779557521 870292651 361051880 705073238 887115985 918627068 440119079 885213945 557742284 992084297 616122603 380526249 533165921 579631721 870503888 739540797 625353970 142862729 212600905 572649427 947922970 102638646 796429326 469615559 419083813 47362170 351008704 480111630 620850876 97195964 130205821 695035663 434227730 762283679 524885960 43827195 685931504 253448851 761410274 24690559 132699258 390138560 278589923 962695651 414455602 422586606 32060715 563780437 514632415 174467532 619844576 900165764 492841127 94595021 808050057 360575044 547279164 684243704 70418533 502238282 258082530 297950409 649727755 726180948 531798118 736769936 650323055 190776535 179902527 948398622 134866740 749544052 522762679 880363908 522117405 895622128 486551692 629637453 108607477 91673513 731384495 945320513 153407965 337309104 863677724 278870706 121164485 823635523 654300025 238624394 483207165 702019045 256859838 835059789 932928709 671096160 144074930 646483310 774953464 285115531 773966142 889035532 984558878 911296275 535383945 807657058 880311574 792208766 802984791 906961842 249588303 336517139 539817482 216161774 402182290 198022315 888017132 295574483 895801063 842994905 211657793 659990550 607602083 57329735 918567624 504215502 745327736 912557731 876364415 789039727 410098026 107350945 566102283 501188780 70232588 883411359 360191398 551613803 885210610 845659 147954579 562430471 874055618 868078819 880165861 927761206 80332454 257356050 57912833 484797120 801919465 886943481 213758824 836695260 724902135 170425334 757131136 377207005 624010950 975123350 263870112 983239417 59849000 813250023 648571209 823693729 218415235 532089186 919251092 811863449 336667187 937376257 935327448 281939116 249032413 806513767 84699837 278941562 165407340 62787945 611590663 204390874 142061516 886925151 93010765 729857636 650242431 358399689 461583525 727074974 761384549 743967266 910474927 397594827 932127737 152091780 673131174 234123210 607679014 404332897 632562969 298716060 93592998 135075298 634724549 900306035 699574757 742088087 141136975 535662197 571994556 630832915 118170874 251273004 641964729 858544149 948080078 301595448 628125577 259264992 254779564 29373309 749109389 619377876 230350026 737377311 502891318 872916340 444149810 263961519 39461325 511987407 682160563 893502259 320861394 632886483 173972425 171386999 616293081 523643268 198079893 841019558 932902062 562537460 222424450 956777592 394053424 157358426 406389711 127388124 70246512 367085789 8186742 27667393 228278532 177537261 941236778 279984834 678897006 966938140 953462304 805820329 793824694 970845364 575703826 984527277 813596472 566015361 974964376 414023068 69151555 859373577 348255818 387963226 435126207 502147672 390461663 906699480 604081082 899264349 268340488 489856480 790764737 60736360 217846015 420511096 736634248 159976576 645468847 718595330 500173800 294449443 455919734 564382337 553067406 243924661 400350055 791777436 585316530 599284597 539638744 178313824 781062487 509889170 933005107 56841415 659391099 667563953 219043329 885847043 541736113 778833841 473055505 865480160 966262072 64718677 162822328 168550151 980930216 360030732 336281107 752938603 43518198 254984728 90499344 288966315 516211101 419378162 676829367 116885684 10078246 240449267 487067423 123297747 665323037 483806869 393977598 900348575 929997243 738334869 229803308 332677406 642879913 6500443 274451718 693363557 923160562 612031576 589245866 887609189 553876507 124509421 82426890 941982832 76732178 852761516 889600022 9072057 346814669 762864267 945226890 723606949 615587537 980129673 552271164 892505401 128677658 215080334 432189953 19546060 799652856 417989787 273608556 972487589 802172738 575642070 321259302 524238070 784418141 721435432 315079898 467672234 534075072 168708098 359063122 639752013 363199981 930730002 178222050 685385991 675955230 308926469 422152255 289061172 21868985 88933188 299921249 42330788 758590873 186418988 478258393 185727391 446904049 221940049 279383080 40185589 594157844 992129648 78280513 842654378 272398777 471694237 997600127 802178153 261936971 869378010 231845937 414252796 836021220 894885845 211699091 228697910 999007106 556663484 584245296 408523982 405907735 687127450 548429873 385135003 279210251 541621547 308757791 541634997 586583565 49470001 17221354 168634206 369665496 470081691 925326083 788136176 368987549 596335564 518151007 67100549 483997320 568300820 269482512 795999446 589344583 995608370 392513796 635861158 411820985 774154733 125137700 756072921 251194115 576816784 168319489 160713694 991001398 979028177 213737662 373493850 383489749 665247380 4510121 513985306 721710981 725200765 488846256 304907475 491370318 14697840 692254908 595137210 666751357 449156004 980748960 120778292 670792039 625720764 167780140 653189125 685870545 262398217 297518336 126505632 29475420 512122035 191216932 777178139 218247413 114791264 566211953 278534296 421113421 231654653 624217842 722334218 922729976 456754985 162998307 363458090 764220668 535578594 81987105 385736111 842388998 55280056 854921445 13076915 467615323 983153739 666397256 821921412 403259849 8680777 397583830 641547099 840759208 324547528 422288991 574163812 62957533 336441253 606369720 39191126 374526007 567883907 138268990 628159301 341754170 770659450 675275735 749059433 206421074 315676138 371372246 728963939 457489218 462300701 412804441 325086950 486341822 333685513 130725520 683042067 465061554 513389995 258429669 938691232 340418117 488882965 278282799 100419945 36175185 300966651 904039522 705531490 790854431 250360780 885995927 649219279 96584041 123971001 172756860 770600153 638789531 883467713 686044402 996292560 566099658 511103310 87331545 124601575 312396759 591083051 108763037 43990778 521224368 879153994 113926214 353820629 568572392 344651712 907147072 793320325 642162618 41391970 992497999 540436443 405627224 891768263 896896118 942537335 518871020 983229589 410656039 419725315 656959011 243538251 757713259 790120360 807590100 283741169 315255555 697003232 694322371 847686490 34781264 988430495 206785150 49707069 812278635 215065469 699751335 932728671 768731016 933569536 127100033 278434006 835484191 426466065 719100596 87130267 77169978 624566458 995573400 972625577 603519590 250663875 523906228 291829170 522535209 897816972 405237032 478869468 920115377 417238293 377554667 414963092 544202636 231555154 107512304 471101958 342359429 603546882 617429761 64712586 431388820 741588580 610290982 554464675 80262080 842881234 440572482 514606833 17675519 28053220 57841917 443254508 302850849 783300959 749855346 495796911 940576402 116237800 78975422 86508026 174205358 956340219 696159720 155962365 279521925 231643262 483360295 485816563 545331046 556041207 476571242 70507920 508751630 111672264 157589512 772664766 205237048 308668408 106316627 392268754 80591181 111143925 118254825 93337370 203533235 968126389 119635062 801559408 311617782 675706075 460626117 715652787 958032054 52363403 426540576 130222635 924376401 728911882 965007422 394213109 340823057 950382545 834639743 824662888 831360067 442596623 936253188 332457036 766240046 151218843 895451587 149935457 71389447 144229927 117233271 265332756 427334994 860543033 626277476 398294658 491378548 330412620 643200606 875080262 77330909 472541374 896183162 31583502 958867088 747038808 985342129 844068696 429002849 998845041 659646067 405193704 20149715 526712078 15990665 220702992 652597663 897236529 969830460 974971986 270882045 544771240 410489556 812404881 487415557 972551849 398317204 930828257 336305490 753771630 358593591 366848597 22342195 444516224 956966217 171427731 758650989 163314148 189074853 330117367 314881091 686116229 231479135 454022552 637636703 573295653 829531011 387137294 457899855 226275364 793424586 537697379 881013580 782597953 217326870 332071548 719333804 322190283 408956829 567240927 244158250 19737750 843723196 725645635 155273620 857557505 773894274 319296854 570780536 704915678 71992341 688933356 128698299 597136197 365725672 553958474 386541094 893924956 433252516 673773982 902509176 994909822 288765974 902074991 192030535 92277880 211787627 880456234 413705362 420174403 481511039 272716390 944706575 80691419 307194239 970310594 196414334 266145601 95740616 833847798 968219406 340235365 155442107 444762723 108344503 122990569 510954396 921164922 228145368 18788400 912416361 573419811 76697602 248354943 935498368 136797166 891339738 993000453 74636599 107152675 454231135 754503608 485063331 436198512 700658741 598504267 74515446 245820575 561285250 343764198 589062444 926122166 507600368 30793879 914938348 440017084 328028988 874970211 808831595 184730275 328332949 128098450 844802927 228545329 383534584 11615518 671163524 887788851 895035904 297521846 76066955 700616460 76107553 405058568 507496827 626612823 288866059 536860900 299995302 372369377 753401497 650058294 573052262 189199641 698721002 474595747 128910997 914624209 443506564 531928466 234304756 102776044 948247569 312201261 665276550 882345098 828742712 492886596 587807647 345440926 510429131 526493275 877760825 508468161 651957594 440851243 360018176 4660482 624316110 318554578 221405920 533383714 265195387 796974227 596869878 775456272 776498183 223174177 887107566 354245192 270140470 866193551 672608659 431552194 958973688 40254898 337548070 183362024 746918347 212286187 103438058 210616017 385503703 790567561 541642626 210183643 182127038 50826417 870877885 487246065 571564727 456648006 61673917 860353400 412017338 670878840 327598186 640421768 255033264 917107959 335135750 931070602 302614424 625046205 246857047 279258794 66694615 197842064 757964411 465525205 996090402 323662831 126135982 864002771 594516862 266488020 203821458 520855470 725387445 564765939 45277220 570919800 505760815 494804630 669344458 167779813 223877118 262294048 557336758 612295371 26530431 489331232 849187698 564349399 136242472 176134506 401101068 787611085 22635641 105306010 654508889 304328365 885873593 922375589 399506421 669678275 39211830 276333278 775054967 281786520 655061109 229515502 265819053 910435859 768631854 285780690 757630216 724906825 657748510 730614429 940009229 264716929 581713263 220235292 517741296 668415791 797606185 380215242 278544363 163062766 942635009 172890520 706718382 215406185 49900474 536799321 78899987 992404404 577001363 397582509 290698651 916297547 481514517 876581401 601558025 260727739 371582260 212844850 387241303 757866118 128787694 960184238 473965350 797273225 271283684 124170549 83135881 475079170 918124297 811858394 483373272 887074815 77324357 465359257 467955796 954829970 51847744 53947298 621061564 678973198 955329309 805616325 645346108 53630023 324184376 545167001 84668562 577602575 839132640 383169159 420425469 519514353 231331147 354074462 197796195 91022071 485647404 535007717 113440619 708963654 405909256 309196086 174048737 437523213 846860556 17734044 849228919 694259948 37497186 968830792 380347617 200166870 887915078 717518489 436418076 6440102 807222578 294690383 994616839 872232371 942329489 212207258 811020232 301936191 980272370 341407809 529911620 671223752 649092255 204773673 777934071 974362113 887614600 184768356 115147858 647293558 86859577 464515409 914096612 671724752 13454478 784294079 764106911 963824637 637514140 567007522 768266684 457937300 62513470 503929339 695566413 790345326 610587259 805783748 419524729 523729981 593891524 686198444 890463518 440045441 45839241 903912447 716952442 383403747 580111561 820650182 513430246 544352625 571669121 67079414 306688576 138702071 126616359 822816704 635592806 538426345 815198806 310053474 314986288 29562206 629472639 607216486 390729282 150304253 920032329 453541460 68810261 978656048 549308118 712507814 177900378 747432846 550940579 258608700 644200834 258380200 96308558 865052029 562102359 196831583 277153868 690380193 565329843 678896895 236130403 279139637 668543834 517501636 108596531 692262235 74913058 472946419 272447001 904186360 685995689 131183862 833615634 591639563 955907625 252142713 915125649 556343510 399819606 467934009 73308291 100234174 691324535 956960838 960201242 509704441 667733986 172045729 824205468 504556325 349785206 995483716 350108451 718192692 336058797 199279953 596283380 505355932 306085173 657423646 115428005 269391119 542554325 295751125 499946095 451427374 583402027 866430745 598929438 190562159 287425368 376754871 150999913 990104348 177002420 973480009 893325091 456652532 74119568 829837774 132424803 409613828 761778027 564923604 440176162 402023433 511931592 257667780 289215117 763497243 877217702 833546950 264437641 814305737 727009947 129164005 979000187 542078267 643087143 308571958 422057712 926496401 766716040 389231130 211260913 150362789 794119084 505209790 745150159 531983373 600975199 623298223 494038203 831855107 993438079 289206308 467526961 55271474 299778465 181603369 653997017 739030571 183562594 109967508 750193293 143689912 434892537 558896378 78267257 66112015 640830040 484453532 717472104 362237426 220142122 903127632 698450580 818991568 57471750 40936271 429137228 937203483 757904010 236357334 991036720 411962292 205568854 483009971 459114269 520923038 264760647 105847169 879358928 386608953 294174641 587032731 265593023 80389801 182068761 706315248 58862095 926070746 423634005 17701858 401109729 894190980 2663977 941593612 189193325 114290892 951642440 88549243 81649642 808446673 197697421 502873736 975753119 132153211 615624463 870456351 85806927 948826754 884098172 384037218 566597270 764342662 411828714 305046478 910750429 864463240 105156532 4579623 632515601 434582622 118795326 453976965 820457806 725201848 349115322 172663005 471750414 54675078 108653090 920947511 508963462 508836022 845397 968156446 303327179 808635415 691893616 537627738 800234409 135459785 959832172 694395717 176127960 937072966 956996646 236965459 995838827 618871827 995753745 730316470 474207180 880272250 65984300 275464763 909435829 996075406 399029596 353912372 517210635 262578497 957944751 874015329 934633577 679589070 208834804 211775012 470787800 220510563 825304735 364205391 978103498 29212231 113322851 179359365 365853847 231095108 406575201 165797730 599656138 450655172 883279500 442973851 252936017 831644422 636173409 584708178 565335267 592751088 378538910 637794100 11877382 376919479 382227867 13776077 620292283 15878246 897869674 520121918 947816043 816577398 172514283 539407136 526091594 682500935 963024760 805655154 660306760 336904337 233446759 791191263 637036831 318029849 880747001 793556063 509115551 800371946 515724583 532571068 713975736 915009925 835410186 491806970 260576953 195967293 228784339 458573236 580174621 723754076 339172630 296792254 183934382 836461842 55077490 34748336 645353619 802239351 372864801 985701860 16036778 2757633 831660509 780800339 801296240 269838169 498070386 101527385 762777122 907755861 493502723 639719368 761217398 948904317 870040864 679323519 250677815 213644569 208906204 510193758 157062493 445521573 328713896 757545606 732355918 837070701 202935957 909305871 319257076 379785491 980190194 882582419 270533915 283230289 831427098 302202878 795300068 50568150 432456314 922861966 444015563 21457532 217397971 630300762 672362495 759228215 40417395 964804761 942219557 744439215 357112980 843537439 391777996 138807129 626956481 437969695 484039994 507751382 142863942 215160021 738241232 595243887 394599663 716235443 353201769 389531771 960252314 183160945 189648012 185248409 275767683 45459085 481598183 773504042 383695808 335650427 335008398 833967651 218017815 807223807 832654929 555931454 654625211 887888776 170252369 829933740 693233226 555052874 128794550 147644654 545869062 446844145 458283466 587424805 800633693 769093227 255122019 545386691 644035189 960154600 489031114 803305546 393439617 452958945 595979680 566783232 935027947 113773397 132636931 656993557 714502085 744766078 866297237 272733497 385947109 530299681 946711956 877263927 534975050 138159373 303795603 532340146 404248427 674531451 502825766 580535118 990306333 497255392 785187346 546342680 337939043 258418705 191683728 114789173 156278646 970822273 300147041 650510280 320015524 833876884 608311185 49141170 692390638 227853303 867128575 971718984 655748753 74842765 529542745 310511171 895443484 607652119 820355038 995762968 14354702 384255740 793905983 512609730 791593214 155613025 17981474 946429625 719146556 584344827 598209499 533608452 551559280 423993677 128529820 7011169 261253996 763279266 41935575 132516190 280724181 585034785 197361883 798787544 82471625 157144804 570962321 579048828 257906379 57016733 243291161 96800397 942531934 849346513 135894362 488013163 118338994 922869917 229524224 308679932 337484956 208366768 495002933 202350774 989466432 310245951 365277188 482567258 175950774 516418834 260157622 280072156 357513750 507989995 516332563 356655473 335435436 699270878 464416062 381305912 287346299 986874415 758300228 395990630 21720586 999818268 134898518 508930685 253104259 883859777 481190270 905501451 432695459 995028916 798385307 363884673 180968788 889620608 927593771 855982885 845590521 362349431 888631187 952709229 555762242 946314228 120799814 143752603 733474921 844493406 463986811 442896405 173107653 411665 902857204 37643303 753268156 341349684 994178930 369849344 933582578 973919148 967104155 626209164 159276155 420614785 772477658 524090237 220557775 679918588 638414909 774845921 594069959 220684972 984559327 685729690 589789734 436522392 129745851 36164255 356468045 94258905 171765574 85374701 237794124 779867387 774584691 618468235 135337459 139506646 612618277 413632885 281788320 277260412 183046649 260996667 46918950 337048022 711413466 26547048 592646871 95646695 64515540 813314408 551268634 898848781 721798779 879734146 702476087 82942552 341099399 98959860 873040464 446236687 762449203 79436282 153947562 152274438 249665826 385352498 94728680 39296918 146336639 703409207 175265348 577360166 73342545 149036053 282563641 66984997 270614734 189562890 158245756 293965322 771278578 105745683 869719208 342043874 90158070 424151475 321312017 667230109 180208557 307869131 784153976 815711482 481913472 616470834 703818649 210490673 321651556 385218020 713632739 917392964 524918095 61516800 7392260 995093026 255641725 424216236 547973863 752899841 796711838 871717232 297663037 755234338 436741487 34295091 226792332 525548 500635451 804468722 808301044 260495334 666188085 823781650 97110557 400238678 888557719 120668139 661878100 220643926 293244712 305004787 618345676 741237268 925203991 301936796 986533053 305420542 740894879 114012344 453037815 727275544 306153324 314440408 232493452 96046906 243243722 418550533 671741013 908645916 665005459 328467346 203850 946722074 277722284 468537138 8599280 425478438 207165011 367558060 150786918 837922415 913155048 575923652 505656250 150303747 653978196 992118791 570499919 248494901 118165815 793022562 853833993 362683430 232098790 903676071 533644196 977658329 128343232 813450562 215435660 927303129 453731228 975073595 88644565 28421409 305836132 101180480 836172120 242965943 768235734 300932444 2262675 608751315 768407745 918882695 887047029 806172575 853672249 25641011 235830598 476535860 499374130 413263391 147582568 936603749 607417515 655342434 108561800 198481437 88293934 243208403 84003815 680775351 161581480 806699174 994849441 304484297 324997147 201527955 100693714 381604236 193555919 468941955 432936601 451259465 355338983 141442835 647142117 479209208 326093341 748710768 65169691 1231341 495683929 692702927 31671868 145407642 948353582 746037202 361969465 86802804 764779517 761577663 643789304 125329696 796066488 298410962 537756573 583201089 738027351 591656750 326470787 397975916 239780327 166381814 206833290 50175679 456450428 644534888 272315462 286796677 909870297 445037137 717694458 71198257 417821307 462246851 815206695 773984979 61273769 254149296 213628834 847708843 758170684 523230013 330727065 197450534 551269512 376037749 593534178 411225552 252111979 664314097 338559671 447339083 320401865 703679068 977265792 98461417 19506944 303447900 386974822 583584288 891850436 762230384 274988758 680132315 862879276 846190520 586070136 903498460 164129704 454335667 768440958 818452176 801359670 555204219 644799414 610925308 183315904 207845194 778421883 294754271 257055229 787098970 258448631 700233493 161593302 767882026 239113009 591456289 23835149 68841791 159152295 275508254 490628114 92421148 784501058 84390799 449279207 47756925 468402317 460966331 819495998 534342718 565144852 351909433 91387230 789143322 854939728 222764629 946583946 880158640 577981506 610640777 621710619 974037838 91933234 672609682 914458323 607936421 366405160 500341078 921274528 672626353 624254214 116298446 485325599 12323607 230480692 682004653 841497352 724802966 715167095 316789173 249770380 718383797 646050324 73787427 438089298 411879187 172422677 56428378 375179112 476545264 829123227 112791240 465672208 98150114 536376998 181435452 595429263 965710265 319537117 327095010 229585252 459886214 294546611 405242603 932617699 114840685 647467437 376379271 170394285 644706432 778484159 935042355 627835745 920822373 590232708 478723209 307410787 81911901 617100659 454370183 46125533 398189750 929012156 357823283 508013350 622843214 691492831 784261825 37938975 429145356 676010972 420922774 804959023 674814439 761421453 247863541 843735763 95268809 723845487 417105827 551019777 510805408 438911957 514948854 421164484 273453017 254807192 621456161 759363137 505612367 593818989 774784196 347998284 330895627 959693782 419253337 870118528 777610530 600204130 407089819 483350553 748756326 82620806 573896237 474317215 482535122 135129000 506233252 189959380 831298129 176941178 741846183 814867694 903738260 525569709 103516659 835658882 19392584 975825127 493739703 658398343 320613407 652735605 907306164 98083326 355345599 45824602 132832178 32571778 677780975 282321416 699366977 894560241 713099078 420424702 719048261 2339665 979278781 626893793 927487779 683844070 808467149 143251094 986714557 137119951 380852048 952464365 706883071 678851012 785749407 704234230 132336757 952209970 881208058 892283170 714005247 99802190 373413164 713131254 877554906 30346889 793185048 375137824 960007983 650994826 788638097 709319655 421339705 859961231 1355136 553740512 707271047 674880102 496477704 210333929 112096732 796608882 304315161 747359983 39408994 770544200 744368245 136856602 20028081 504073883 827427268 419949351 135990458 778411207 249077427 656163196 53347411 949174873 157215104 540172912 858138239 796311466 864681323 862105332 316854819 483402060 706704729 249942371 24094504 701738342 903726232 304250384 506976303 4356829 447146229 8754742 894035529 999319267 342003870 782422525 213321309 684922567 83416537 306223739 756888552 137647507 703865508 224845312 992399137 442246503 523229987 454579337 708526944 320890892 575614150 858981303 692320068 878858776 630864599 120221064 272343769 259434789 730997769 45453645 148527687 707580544 37353213 63487248 15471557 624611831 226031090 953076233 216993993 513357612 786183272 410990498 964164297 207569871 896189592 45314005 803323520 894659812 914260681 447156282 386175357 854102495 182505204 350680536 585795783 797892353 238272927 519583822 296081995 810521594 904123130 857895894 876402567 65167272 606637986 984233965 775521209 605080786 253012777 868443462 116098784 773133971 54987757 902866099 617209630 598073983 483786918 697015324 359133115 673176253 199748399 691381757 731523235 66222428 704896851 717760985 291289266 854697625 288719948 121454004 162329583 448614219 961264870 363154397 287956731 553391170 428149953 715688855 734911093 534281237 466424871 743469952 26325393 388550854 141371920 724119561 425507575 974472106 608115137 986497836 971948873 73723577 619460536 367941998 398368526 485432153 998496290 265921550 581904408 905069435 800594598 979038021 159699672 381701513 233886052 285070013 833870649 987574956 176509446 500540539 917663518 311161358 824432952 340007408 439060876 279481359 858807781 896973171 991714475 325842287 358715332 767167724 847748900 549010533 864402285 265041715 411196634 699036170 830043812 21432427 630912722 158775806 272342285 891636890 378049842 257892481 64505570 739771711 516917676 164631019 689544324 895768496 409787722 681085459 460037507 460649741 366216712 364674896 940071055 34504187 656573029 954707220 927568093 973746577 152823588 487390682 717222524 165622431 153877189 60791506 300672111 448409569 644117149 611127258 250413767 421240489 14895360 659777997 941387156 99691908 131710398 638433082 24757897 893050537 120042180 807535340 181489296 863735057 990369696 128974521 517665436 330465430 906109607 629794616 397875547 726472346 527348989 282664022 567092049 618642528 495930027 466313333 112267643 850128597 558701947 684921067 746943609 800522908 630919743 574318459 171656811 764052199 907334938 570207107 875195172 475968741 861150344 642506339 584162578 143391252 557076749 774395421 336144017 872274198 553182287 879507318 221836448 653756333 866150342 348104650 789149750 700207606 24249522 921896029 889826328 792769687 169428695 855196917 769637541 148794668 168553551 445643594 624960980 110558520 302956218 427090330 202558081 439039814 601683208 467950352 322357364 939034855 87203964 585944223 652365715 17843882 680632077 488299337 997582734 401293638 952801667 600231994 428515086 634693075 239482119 820408605 351308745 443500008 711077229 291521789 819718672 603472112 964650717 780885020 139927498 736280289 90876480 696733338 45434614 119331714 292133107 576937633 909985030 901946752 61537742 324662521 951236057 654480758 982520975 77573887 712508589 693846576 225791568 777251819 242764332 317346452 181474570 519399674 762731573 637090501 685730862 343359932 491272749 798716036 580392477 543855239 750987992 202782087 281779045 184174088 559840181 807093282 674003288 741917055 996816438 627954055 543100246 667720052 994473510 243577285 575645459 900266084 106091564 616927949 931606976 725627628 649968133 872319095 38090829 597067883 51017550 104229188 802356823 457273665 390369330 857859620 166843732 774310786 870333104 524925521 224448642 458701903 324353940 629650149 737567052 256094644 208035502 461131374 133852701 825258504 817811762 328468073 718264401 563024186 593717432 451168270 298926234 270132823 179421415 154563370 972406578 705532620 440912677 867722954 152429698 853074588 585194601 337730010 350434715 917167097 677297490 297018708 944207850 609139466 556402935 559981729 393383888 57687777 5327188 954913504 47462147 727820579 108015346 907341664 344807010 565687017 261177641 182983198 754461865 594826570 499901301 28223576 556457881 501418011 139193639 279740522 209248005 629682061 715862074 1595179 581545981 933083014 706102361 426028567 133256347 750570650 28902977 409620845 532585568 232338679 173687772 706798726 779247226 822331526 40971360 240288880 896533607 410020101 54764766 696918327 105843979 294389746 775129459 667479711 407473677 329856350 770366628 960571585 677701721 935133424 768974257 546131004 300141063 839994526 935862532 864813392 134301376 209061952 501111375 643730131 433661302 454643057 855377586 470317915 319824559 303151481 911913028 289825737 36354375 545917090 253561360 760445793 777456752 552141565 787360643 352440650 326234471 163231547 97786209 972943022 276296534 355810363 763929317 966418331 695488762 445483626 132452415 979653981 583090028 383236634 607458380 328720056 726775179 423653965 971328311 564406630 184673266 719413767 877931147 502451566 30472212 593122932 931691827 907329252 576295964 906733956 99675333 1357694 304767571 463256018 850513009 821550802 340697032 650510518 130582715 336564788 770200768 201721106 350964398 480530105 701165970 74673006 903465837 880656868 435511550 591388514 342587507 735949786 907920032 674471497 776899076 360484579 192105630 48971383 9405342 177560333 332092739 777607901 566913762 541626188 132936098 864295802 819467816 703067019 163276598 278798768 60820188 128493497 673856025 806799974 984669358 223311396 78442371 302246474 350891754 906717222 674021679 218027964 472881876 999024651 788936418 574947410 721781110 254518457 101233733 474848 882363753 191760715 359550965 332906260 95770369 368668592 182442925 138617121 710906525 344881296 839075419 833442383 963524394 454948636 384776438 647536846 540488962 52410956 51177610 9060746 231143126 871503283 489502598 644810660 154450631 989229687 533656480 618465541 850723488 711700157 970988740 90322241 910317546 685518922 400840873 937028123 320090558 211920103 524629427 451573610 438917368 738477500 110310574 198225941 498517130 440753622 869652987 895833421 748209972 898420486 885324275 699621676 633854082 470126348 815146652 823170949 751499196 323376886 434471395 634699602 91565384 74865559 484534933 799117683 426273988 145797920 789027311 171779312 329574534 571934789 497452661 188950652 878196636 615022200 199152583 675543898 705206262 699554605 17972531 699230219 749630071 343242339 758141165 61881032 731711688 260894722 143692134 459110325 574218585 854048066 243448997 608714092 840421836 116058179 44315258 133439799 531092408 225921298 496031427 224719309 806580343 16752809 336126998 719035895 723646580 706228763 988289479 961503846 712306923 959244601 389705714 263022726 513411193 951003253 261682925 775922697 730127660 370027348 647124057 39316318 979370243 812734828 572016713 612671328 244886198 43310285 367854506 903620732 899195214 112396512 526181840 432463513 838449494 4828702 421846970 100029168 27348977 696185308 443655359 811879760 986407248 764812730 777388475 117889732 31769519 135434647 625971419 329679656 763412063 640130296 653038318 570417631 170219959 786729968 769992354 106720636 141180195 883250898 581528043 940151992 660467245 845247324 919230301 241388886 805029223 69398527 53431348 569379140 202700184 306826787 511465993 330265724 459077490 895574959 186450218 231795406 71829800 93306069 803740034 827369903 37750679 496802459 191298698 442548704 669919228 158407841 33836509 662804692 112594609 164992232 806862867 588672553 850158176 80483130 212112753 428165446 570507527 323189330 106302867 610246785 848946125 722510890 127462156 596690276 695380919 971618642 48838139 165324237 830016049 187700044 54443780 993427209 735502759 893780849 998076538 675846690 99787198 768879351 115678267 318435409 691871581 777651131 437330765 67097310 652392800 120561344 574946762 912497956 257089940 557925778 161672221 209140977 319669683 780060367 447723495 251927451 905006129 967520584 224800961 226780774 79637750 895122067 55339453 359857140 13356599 790594475 233012231 886889461 999794582 687146912 525609647 746837994 32594210 356361405 131884587 5402614 233785592 291047337 363906671 869317739 320103367 421936445 144915832 500493026 231786934 732252026 118167436 797019815 914056216 209620315 594440089 517751131 815098655 499976945 807977946 320383172 239860446 288576085 996728696 740984830 298836694 731645241 583795982 657759999 21614210 746879085 108520769 916114079 147524375 422824050 922272000 193615486 535044302 860632351 611923135 809588742 445945858 607333757 870549999 598314924 664261439 674144008 984909246 569285459 110299603 345720444 915917494 464056042 114255940 412671256 827949793 694006680 727365396 449544329 37474764 105518926 338238852 40648082 118768262 957849382 364879578 763848654 590886381 569182811 40589178 937327742 833927252 169273794 45765582 434965430 782270116 934659638 875722679 899663818 469457576 47088181 985074856 118899993 650425953 674573669 509073546 296644362 415145664 54385905 781948885 768755343 450104461 641677217 892220895 505704450 789923929 549083322 328311161 275616757 249565290 44701060 142145755 679523918 831416103 988883347 179804744 376653544 940300944 13176912 709338671 179729139 671201248 647017988 762063860 855587192 280929925 251189859 223319437 821187733 885650852 312136143 564595847 846370764 746700593 790596307 704625052 132028539 91143931 846811696 917044952 994564920 427205228 786443175 955703 375573581 77205886 491490477 996875098 881653145 42427487 225595547 597232269 40293108 35170468 575303893 179828246 291090708 669922495 725870641 284656037 8496206 22615791 217466061 727716083 223335572 627575973 690788956 101733540 556916033 68405752 851643102 595541104 988866864 659776290 735973346 982650785 929927611 513050225 206823085 767586736 783418123 771132812 536597053 163462604 944579874 732685481 998070550 682545722 919625973 816051079 486623522 905009222 762218428 246703895 470768219 139413729 876893017 601544521 785822636 750291195 631442594 242467397 290689432 969157666 956272383 934677114 821308416 659121541 138905588 688121398 562357033 243700381 753390518 135175293 723410216 714574358 908598161 184210439 281809369 697923351 562301793 89450904 771707845 789667304 149975161 78231386 54241734 967834089 241432479 654583394 391119846 86384700 82228491 711402159 322398116 147120097 305075648 464096696 297113908 600725904 373012190 308224177 217345307 495816515 957743056 183561543 86116076 12914609 519217414 830408248 165459385 970452687 603130600 327441132 805012726 658203922 107801076 299725255 135939490 607413705 800691013 636043534 592543335 209626083 662532170 133268159 442121145 120534921 667765482 838748708 327716481 297200533 589540823 25557813 276830410 742640336 871682532 914803711 858224040 289702325 655448492 549021205 715222696 769673455 959890084 361489330 930880453 4397667 370125438 600392039 584328098 345200331 509435095 781722670 745095736 233568658 926198155 851525140 359709411 531621657 565631400 762922125 320764164 998044614 964088398 572829349 469321240 120218177 809726263 750819624 329247035 396478151 248856402 421930682 637085013 130583500 588610387 85697212 733688080 381358893 673706348 546854916 314922699 308183620 925749459 381671795 366198504 129471260 228373090 842468054 209283021 803720663 305582061 338024334 424710049 878045179 250082491 452153504 34208901 908926657 836882088 202489083 260937283 494427843 725187463 79211149 772497922 7027391 598476968 816961698 50751073 534492162 289561295 66303173 398771366 155948174 569335741 532201423 647529090 856095134 320334268 859852177 378211976 890861157 993531162 36818747 51930576 424122208 950976335 302286350 206107390 43459284 266433061 336827548 771777536 427526085 974232084 431413626 181472151 691237367 277273070 525829532 980485668 684261564 984540520 585967909 791128254 537850365 16101174 168742578 120862003 720193612 107378766 224502330 48150753 873801456 594862978 541011563 589130665 180151087 292873331 819633459 872357142 519012565 979345982 989069109 463297045 95822884 752911401 897828221 600279069 312547034 993810566 798126512 798093560 895503857 390189644 294431737 258611079 488277013 693906099 487389605 757293333 332619763 555860823 244042802 342817507 67532615 226119760 392118289 927422912 280927608 505918907 66454487 694500672 139698680 305203679 909557090 700529239 9118821 975771209 664944251 115385983 386693522 594742504 62154302 675622093 703724810 424153984 691519420 822827700 185873559 720939016 529874085 852220211 142862825 698181594 298535283 44397811 474702603 58756151 807086668 521476314 928223788 829197142 816458316 619666424 428051922 810993179 959491592 422964326 340175295 492675135 885694626 659117604 829660736 151899633 275601904 596941583 901226271 43912857 753373821 154224587 316222063 670349851 85258422 520669529 676126150 910319400 226409405 868296411 570737161 428189316 816819353 413771246 869982088 6199107 232033800 407217882 428040821 957310718 923548995 159108518 884672424 551512839 280733601 745906557 202556892 322584429 314255613 87195795 400228323 612865950 712158138 130721760 505519357 49083469 22557203 933971197 968965259 294339272 165109731 14816201 44272075 256360245 528004847 409952300 18078988 721351501 640359339 813450362 903476134 875830470 98315012 110172015 205306504 724211094 663710769 874372828 906249612 260520420 96712613 473040287 273544789 142872251 910014776 620136740 868516077 208793137 94074185 124547736 633308604 782123667 848157282 456810830 241492418 599568761 821387794 341220533 681780035 790529722 8594238 331101491 136553965 778249557 196798204 63838852 245060594 243977391 68447599 598414617 702029185 28483838 690442582 734481854 767363596 190120982 345354265 642352787 24795565 658130771 306286187 724389625 237070071 358576186 461456486 235418805 782452239 261647967 401053487 214373941 574383560 828153683 581791641 61458600 146451336 227215449 969776180 70587612 22257089 279805692 825418784 377659341 382857309 773088060 166797374 665616244 292942856 848738437 461962871 622887702 226168205 746512835 944333229 498391787 819630666 697599015 501080112 972155614 786347909 495537550 649505608 680893264 629255299 836422606 527954160 228835968 585181397 315887183 181837085 419918182 485930751 743549343 960383091 50001740 965191501 870132383 846555961 110967731 311904673 498181012 404077831 721330725 875320662 519446954 624390920 465889020 366466673 965449884 838607524 869008662 866653688 932220766 157807957 747409235 572668569 249272316 288488783 987190695 643001199 285398189 913803474 20130799 456798453 129893090 724925763 674481038 84221318 628032009 270944037 287174931 538106380 116999266 770098705 103670329 383391618 44241491 492198129 661581308 740647558 192982290 20993226 723392782 764976989 975472363 995208854 425953544 28627332 958287289 510145829 357307907 674558250 1902697 363883392 676876310 850928739 513515125 937964282 627973201 308373603 328958481 875809776 510591500 505791402 511003214 377291467 465832611 926462436 756493723 555528466 183902778 400839190 655682499 425952643 382318846 921845177 340617420 38670933 310708144 209083041 782221467 844978502 49920715 887366297 867143096 962451184 705661333 824956247 744376179 610518735 309567252 539344520 173961250 143993985 351904543 62765105 778566246 374573033 410149435 328043539 742812554 836903452 442128942 965646301 296562748 578377935 438278421 720714054 630088100 998950065 948306328 380689887 876629071 226447627 854041069 156294815 270272716 405756940 246363224 279791254 649219730 561637998 811948466 131796743 514143252 401221868 322486024 684861863 702324508 166029481 122085519 938951091 303737188 52942243 901853503 764659969 596059363 372214846 137698102 175286310 415254429 868212561 26540924 713011190 631189516 770811658 722037616 516829583 993714911 129710413 222627183 928423649 466659026 6740669 731938642 636858486 295437506 535549830 564584570 803911116 563564133 217149766 316887 230966106 610652708 506576401 916153757 555077967 735847828 658121457 651924473 650563070 157181957 296841110 379360158 647257557 208102774 847351954 604836484 694403770 911650999 602904062 648212085 272798557 245138445 388411818 177831890 360614764 857575462 276425606 223674804 233611323 386913440 429863345 765760815 761605896 722989118 714728683 186380074 419323198 943608463 484620756 455079010 969587064 847119611 835760435 607225896 413572511 464953711 425908839 591098011 827105747 581068205 694651586 127113969 191274402 346894222 528405726 528182914 33738575 482062249 525230083 622904867 836860354 257491365 5777908 623419859 583606584 30131830 560252469 859458832 955040133 246403396 97063762 287154569 333422023 931723605 377981668 909550154 412229457 927178357 785072806 142184506 626893268 398542141 342850157 318524929 985310799 667388237 371771984 445290413 743276412 848406879 12685970 536071249 472177648 705650596 316399850 457111859 496738518 767121875 137151936 972425625 246988825 465392092 857372854 667500816 321943926 653581467 345428397 929420026 266865632 755789567 916177415 662563136 778026499 446191229 476235946 783326890 82434762 242997627 307335527 83434700 110795464 92309131 571175391 501985997 543857593 890103086 637116142 872443686 26786019 866346152 529915356 932121733 841767020 160391991 712987336 480058185 581491290 137154073 549599665 531972432 384429182 594995308 447219304 930987755 296936438 586027588 670929885 676474646 901208104 629222531 799278845 70860656 873299965 974100015 294286920 434404979 916846233 890261378 916066125 662884081 974486925 994954782 232646045 382115515 840756120 953057559 545226657 322175978 222992403 476555138 941238511 547705821 912519139 27929523 21617958 84832470 653229474 379524183 547352813 211176637 528663128 730146025 634036677 991109686 426804842 782667014 433566233 110702422 597031352 395339505 366981267 509937469 554213851 446496860 109515923 480114384 702761398 436235770 643549452 49739539 40475821 29268165 689542605 649517121 47147727 692393467 332467297 4911999 186305701 333750476 721924104 999843690 864737110 472304110 14925932 920462790 931008716 985922095 737844717 812604544 265004537 601733438 57413010 444715593 207703047 632717041 660662257 489440346 15312241 988784200 950290782 6171324 181899310 425398950 912065855 299280916 800112552 94680687 747420546 731705398 676114756 496190117 39598107 502245484 473855254 727607371 911492340 918434483 368466167 162992097 249845667 403125954 115643254 348126511 397052561 825801451 853694600 42806142 34075960 196586699 343642187 236297993 124857832 100217768 688315917 6164333 644378361 274226727 228117778 238282313 989140124 762835795 311156908 463495669 293262908 600949346 516288169 833792756 320682101 518439047 732959550 747988645 246874118 19735603 215356271 232688822 891866810 924423694 319163699 601591993 752170521 252787982 438407454 970488413 656835904 734269922 461189960 461826430 579145844 944081072 43286001 56294115 140118217 454673554 659082042 490743209 200873424 888990532 281160332 128992443 185228708 833226852 462224475 145597696 687587376 41960358 727588727 292077485 813457221 552500774 675030476 311554784 62355829 321482933 253104502 608748688 318782957 338549739 19783657 931798718 440487087 788021086 308914470 328622622 387507338 206435483 87588364 652278331 910486425 123577300 516598390 335503032 188746536 768782438 856795213 473675668 213099493 536992475 137785416 893100489 253187452 906233638 652284191 827610723 790852442 167447866 283929931 978577356 972995017 464857238 673503694 411749086 604050990 498577084 834754018 641371462 273290964 634225134 90302866 669149749 824620749 869338018 106143041 842969716 150548832 76291162 773633950 9864115 790109500 400608780 617126794 251761438 915090336 395149088 12591899 630683466 764480588 924795297 990887162 318871116 60238043 983498137 4885642 593181432 290177713 374702361 426412358 882095234 262206160 607958075 865385118 621572362 235202565 119834908 543283722 864190477 499726543 75406218 498591122 352603027 281266007 773639363 208618454 696648146 696752660 582931473 321631075 376004437 656342283 934483397 436008737 648343521 586605653 453509398 563759287 644112150 178987001 284926008 895131791 981186478 511944994 627399111 146149568 592996205 179275850 173809791 569973575 618227762 233268892 974051265 966681224 358839926 997801818 626752180 833054508 417815760 964344585 555050598 782022315 957012013 141601106 278822179 905397088 252431004 157097228 673803608 232222744 295433195 80221571 757401551 946105853 395694373 755271917 546582294 811460925 744198071 236575918 779146323 140112655 297328392 916278240 607295931 588566749 79931306 356734789 141528701 638580050 284072702 226376824 183058628 737144958 49266117 187839797 179693215 741820362 878306006 347650661 335361188 412404601 908238918 643619876 328906006 764299057 138398802 517032340 996480293 190811606 707740393 74061372 702028325 657039090 871757996 301406688 892801738 521145915 259563618 616219562 443492455 276864224 615656209 132854249 717809422 888437143 784506601 638492773 183838638 585880133 508122579 103316574 138530822 140904863 676979120 902154692 166517978 670688842 634916395 718968788 370025228 992076567 268319758 653867801 510697216 973245306 940111680 237064538 726909221 506278730 699967528 761321701 34525672 80093520 893466216 843180552 244926568 961640673 363891068 893797675 134499015 952612118 558004180 455915413 584532070 62494135 599090603 373746581 334849079 322506067 148996969 132200191 444975669 488640974 612839715 791861278 811935492 154435557 276659435 62700464 33419408 702605809 326158009 500015568 844015903 333222948 465281877 215832969 414522640 869009719 571317192 89750713 410482029 368361766 72343942 904408920 278809561 24866258 346927572 393044809 45789054 55615027 788915936 612764307 885855663 988135111 770731889 308585227 34164912 658767365 89441244 682589590 693932244 471151921 897981289 38710485 166509898 986653758 696082242 639486812 201562337 144795571 792106506 405384918 638262906 754166674 922611488 34539155 235450692 611595991 270563654 665989681 625703912 424179245 38560732 989576159 682559663 812963608 838031494 96722461 229986187 241864071 509888006 930574390 923568398 478002237 327551211 466502064 259538506 175628601 339170647 807607319 650696941 242142928 140702866 483874824 456770122 580064752 562537978 44833791 26624575 744068098 222726594 665091045 67595972 87477522 589041445 34696081 890608954 359941475 749131540 854159878 705994051 134797082 81543739 73553264 987793924 593331042 317468195 251985887 323898482 541994774 896827701 351616471 111648056 600003845 725152929 954428274 167610115 891096636 642360232 441725030 218048914 903494380 459420083 611740010 657829826 663055056 102807765 336792871 693046294 408445740 249306280 637313333 153346420 436804565 879274856 56831569 156740636 143472479 321053210 447313062 68121532 632852956 363378352 710963878 313118910 172966102 871785165 82474361 245795784 873098737 651811030 357614265 748149968 577324853 718039123 568302251 772662652 84591291 52299922 879624652 250256177 418319062 132207851 329026302 779909928 381963308 906163007 93687980 530057399 727384042 783383213 674269312 963329748 192282959 230483302 42199400 202244300 103448694 418083519 334293621 120154245 576612454 402722770 747785509 238423721 205228913 574657132 799723439 835703828 970720142 511150392 273383674 690695805 747982963 271612019 357482177 589548961 111308207 246786572 481492715 673896309 310031007 642815695 75285117 15532627 507097452 28920820 707973287 537651040 371796636 444029650 765270619 878434697 60755410 323579899 968206834 838159545 337050365 393396119 824588110 175217774 542471460 991561475 8870924 343571890 618273704 964577746 383562335 158321150 717663924 821198753 143120990 15585354 578249614 939928841 115945844 1963950 24233565 150187111 411298390 463286891 801117403 530686729 561898212 536094473 904569403 441928269 41289858 716344627 796831408 61978601 163943180 916463735 660122352 576608652 869368169 557199637 491405336 46983914 144771947 424100101 456286068 756929829 474452825 850111522 206937377 707252388 988539220 750327703 942402428 253438137 856810675 762218823 823260584 540855836 455498735 36757595 244477555 834658474 265032051 824113069 709946717 562480574 456106649 935838230 597850198 580817753 158510311 975536308 297285468 203305408 999612312 509149239 925686932 772393999 636015465 238863836 400450715 745846138 962880038 967537560 34702050 918852355 90989724 391831686 599893072 619969107 530828365 381104304 337981984 857107137 896971098 234549852 821352723 459877207 5397477 950079335 723061002 909007497 102439516 728868735 755788088 448624917 786872619 154333924 155099601 564296897 988441329 197963054 46018242 744748177 475161589 543363596 642539648 772107826 357869761 634755203 273268996 825109096 439357996 576519198 879285995 405404734 154577568 803856843 199152564 417875983 558606960 435288172 257077327 211666847 557772300 790156845 709924162 109090939 700116210 852225888 701708437 111611035 652519461 430432764 276597931 974268197 29030658 980819420 45250470 41078429 705100636 498319977 776894837 95372833 813202291 587657011 699560013 148678140 671755505 340660399 418531033 254058532 189340087 203496524 531757139 426188527 855161798 834580900 496300789 419408888 287129330 624363864 963656550 534807226 429064533 364538802 553906248 31925864 593543153 504789733 839079057 722820435 839583863 939771125 269385665 382749461 297864442 21147385 870742671 979781010 510206088 337562041 456884847 627694500 832330361 478937982 748728353 956359005 218015548 395228052 492698440 525192919 330853429 662800475 339020004 600459146 986944193 397882241 385788733 165469299 707455940 86231349 46999926 850908516 888037031 613594382 539312816 433050209 804883215 78064262 197576533 18851311 701009475 487945172 828692095 179036095 525145059 641678495 309585846 490623720 394482808 732307991 188687985 830816871 102243027 815728253 605099520 945059398 271877857 214177723 63849776 260668045 682552876 649523499 979806300 419798962 590326695 216824854 296781283 633106838 310660689 130242237 489872931 366224946 668354459 209540770 812432522 236852354 196084292 211461952 321947840 396526222 513212236 99255571 323776700 8922586 132350145 508898843 341991856 694156245 869190944 32578837 986818115 634759721 930300266 347465159 442346126 964557397 155703319 982587631 767580586 760900798 983334782 642251138 703502695 618051825 38246537 190993361 466621266 323571270 352833258 996450892 29358495 400620949 486266675 883445310 765517740 213630652 666611422 803385472 820662207 76244084 859742300 238528481 925938095 973388180 844956797 371186457 4651285 27017301 721701000 367739044 845182408 217863540 592890309 910497685 747057700 887516079 507395509 403106940 905091693 548913582 960859028 218697592 567601551 214075555 655587301 55301210 38368998 784490448 43103185 276202172 628601133 222636954 347251742 336464635 286836925 953480506 318040184 441963143 551972393 908219384 191212624 857294839 283918117 674041424 742027051 472624654 949188681 488471405 687738904 464554732 802198653 697763150 623262902 916987087 586409898 61550088 302886813 797954647 980371734 335090706 440532926 450755570 350072504 417154689 870616725 526043424 881647864 5507034 549612360 638937925 517123094 334023295 630963218 317271538 625151594 701822066 592226071 166822484 951582875 391852948 721598695 132741698 614908772 197236347 862700813 790712976 103168268 466302599 901300098 106503096 924675269 105611653 124402858 800081902 759364203 415637614 785522897 332538205 351061719 197282195 234146197 898202773 328089583 186473927 135743369 615157725 752551770 987148375 84049377 220406605 806309124 929720857 391086413 442555993 790343541 678055639 190098984 787510820 510914730 990733956 907270619 613404918 391016295 123000808 254176070 950734261 323151446 24363581 124571523 682076246 309424929 845660244 192320730 921256766 883397267 378768233 215628373 931482955 935858604 639308262 395811452 998794214 367849158 452217345 84983073 603215072 220488063 286040540 35965898 688989826 311121548 73263267 741072452 201717781 954594731 151214661 808653891 551800366 899074578 834174457 979483981 228826081 991424034 364011167 572038417 858912700 814226748 335298272 654762377 486517606 356464995 929406427 261544575 509897512 857345759 800120542 113944084 199413270 441517411 695629122 368413818 666137777 701253360 452381141 2343636 709332059 394692873 196204876 591993168 670720839 16669303 872886207 201113912 559575132 374292755 118346975 969928270 351724694 169984196 397864358 82839275 755127278 225608866 486647642 623637239 480489588 889102815 963162700 898770813 505530523 382695531 429278458 248210041 406095313 7532161 553905596 238344597 898071714 584757858 955500713 551714979 670474260 855255002 255042124 806939825 79499471 476790285 321072681 934040225 350673846 552899517 673990239 117145341 882143304 649797970 937797662 836997593 448093803 448350123 210985218 595109432 657910291 530159123 832525702 130791341 195362621 474620199 803136731 90580332 765297496 522043058 244365508 208473053 534764857 971017484 261672244 533452454 173466671 803496740 351513556 437509685 711085755 835209071 743402024 780787697 97705752 512822441 912675533 925132966 427350443 598134562 658608214 197158861 15360778 662822788 427016219 46513835 316150786 565019842 177719744 405159470 999654949 53056587 591227195 795867298 755258729 679218648 528110509 347327333 515024359 129682506 483098238 620519824 750878685 57277149 921661145 70390314 881607553 268118100 278101068 510779406 79610625 26317910 548839672 306138429 88882135 643641315 707832171 203225211 408622086 571759240 446507917 641112274 990672985 800551748 626970540 891697132 301804076 26294328 271713685 912808654 691168859 217698603 143924279 277543122 583673589 730493393 228073573 210103227 913878111 635792020 458683276 219222863 180054565 318083726 605584435 793422920 792295316 198330889 525086591 190439823 749391882 383259731 202306700 895691317 718326909 397905938 482567132 884696953 278562702 637694474 837879805 798188280 77489296 281629191 101605252 839510474 780151654 225726470 216207365 949745683 31144855 404242796 605771674 49758431 178711296 725018092 733222362 135260282 990986049 656635033 670769926 169971976 610838904 366327029 13481824 658410738 806150041 245847015 561152599 466791098 439253613 456921210 338732709 288599859 454793675 226445892 928453877 774267171 527525458 779714180 763726096 729817614 891279765 334280775 556820587 77381881 41646441 201767922 850409236 770813495 497913998 113532265 76976432 333898169 839113338 506243526 522724833 283235219 449258514 876380811 783603403 89176856 795423059 18057025 127993804 720012924 656377071 830336927 559771106 998830565 676819722 455691914 740678436 835786973 454886469 527808933 507625120 986371113 133588218 607131159 337361300 601127464 522667522 370221969 42751808 232303701 366310800 991161176 71017552 460737040 622430163 657661161 252525037 800630769 863719892 203181067 109773158 258893195 993977521 852032114 890429439 994027867 184210868 144385590 257128991 997576445 932264070 195636486 874242212 964888996 354102665 335656846 37043750 804217497 173911528 678550776 249185366 58489807 721917959 216693034 26563464 339363910 503530332 917290520 250558868 751653152 706541147 636769171 942821980 757681066 943354150 931625884 281823852 375816303 228416699 165528946 800617636 772563057 605137967 307939823 899448182 698514077 300400521 58691971 400990714 653633331 897193763 611492250 192461010 674020489 356194254 716165466 839611955 80189161 199570232 151981095 128581235 360090629 317695788 41359060 960294775 769642958 244670157 647884782 922149831 906124282 818044508 336299331 13924182 398572501 876091108 388295068 619088592 42425373 191761783 853077228 755503904 818264171 418951115 165131368 758621066 754355523 782172062 21122929 730831883 316220489 141656536 116971019 348169346 637627173 649872658 385775830 760201549 676695790 281171303 881519842 364278544 700874092 434630700 288702641 492392010 889885884 970839696 347574796 514774583 752512872 154987211 303487820 580337735 990099304 253164279 344494254 834232182 757015982 23653611 371651737 946485652 351015342 428023908 328079829 297784567 980402562 285173550 424073609 843165419 789922781 864228884 630806276 177531253 60880218 388905948 964356231 365217090 525043624 873704248 620114268 87396213 726681346 261337369 98866236 456386818 231317841 748574834 985146015 178119511 849104992 807845225 561846111 355792450 478084159 801063473 827071762 314871423 617418603 695909328 816777067 612933528 525699809 483538352 649571193 202310102 632554269 238913999 683791376 709710369 156363692 61462147 30388454 47969292 127675819 154564770 980955904 880093012 536488377 359010505 796462454 392755083 523810530 694662351 677919697 768179260 321792228 133519274 860545971 801899289 913227108 209510283 132905093 540042327 760843836 643993638 249401911 801994971 441826734 856816966 15774213 35061233 860953928 544139168 881049819 808576498 975830854 82082589 452119212 40618667 492466870 532464607 153461850 285768373 554747477 912988265 913244035 810694546 433034336 752598715 145334069 23560636 186077215 174500166 744734131 816679877 875412985 498117723 253065309 747063134 589394396 519191382 626372895 977016175 711637659 175893215 796106160 728449802 645352000 759172020 827742031 866685218 37956978 479435598 902741483 813973337 769786067 601080855 393991663 807668838 57499004 382055691 235832148 454755014 977981538 281272474 76878822 225742781 566902308 223040187 782885220 218239517 639165480 876533688 545298583 881376211 990370431 132532317 760687648 1235342 568054771 711689386 350778983 522864567 319981122 982174091 676749070 858434180 388868258 468210208 105753493 978045364 272129233 614082872 356060935 307416823 94757327 791927271 658835155 871737357 213861793 439243896 982276080 271420300 166655746 637228812 442406507 188123175 889101897 677915007 94678986 358752090 54689022 332562891 980180929 646259478 559455470 529144431 918687611 920345343 746682738 704480855 786063021 524747065 205810929 905263503 913959425 776875512 8992065 447889966 86152204 142871556 279270423 562037141 54948518 407559651 578713436 613810252 253593380 5423410 355449771 867867819 495793073 460739531 901345065 699751132 61793023 708270070 912996827 752659222 258120489 993724355 367370529 604500397 967120095 899235311 123004931 937363324 971946630 525743967 174601514 618629401 223234322 712718560 710557231 426288901 724106414 837570853 768730175 141091439 459486314 728782584 90741908 366002379 521261425 188107711 978634963 274693267 304006836 565300518 81065670 391420048 109473656 416120963 72896329 515364377 690099885 82809917 425664873 906068393 947753191 647924539 707052248 529184949 573147601 758064736 879745816 403700496 953578772 219755399 822517090 390283150 406812188 740624711 600026444 674240914 686319133 574617724 664546644 227642232 61543856 201635168 633812972 275070804 280009517 538551610 849671007 675610208 595780636 932626842 777717287 492951942 309477106 374919229 807471172 516277404 527730005 89670083 299583364 426177652 568099806 100272082 903387996 962033728 920991970 578451381 828784950 732047255 554093882 706108182 206206003 926419716 553310553 752951641 882286223 608832667 293067895 495786296 960427210 547970003 285404403 210785 68006736 124535482 173616189 569133542 42210017 823529608 173395425 935934230 962276934 599958714 824558346 183261717 840790291 194262365 733330208 600800580 877956090 940007165 164008890 667165649 966628798 770601861 367552973 210536665 76191533 281373397 500721018 841593835 171414731 9842526 519999764 465536858 403164267 75502303 161920270 87850297 616359251 715212299 764549190 178332139 103908218 646277864 529474812 946579724 287883201 906365966 150146382 395790958 632362560 766221831 195118748 702059574 740269984 33064787 331322617 446095737 785434142 191230031 748260830 75768551 552929502 450946801 951074185 807567487 492227611 171919555 130988700 429937642 34470477 609058561 458434646 196279500 250552145 892907274 433208483 51332552 163900097 149440534 626826160 764274515 741215704 803071255 958327964 776947120 579264022 255974263 240679198 691391701 82242643 709520675 773350661 584018526 189171358 92299432 281212536 139482299 390356250 894805708 786544943 968725001 714216395 29497598 162004882 265754249 630218775 752640375 359170551 535748457 850231666 319246913 456553161 671875380 428199003 112306641 957974745 82395049 229949726 380369866 598504897 929316588 155192948 572374781 217151650 659742023 528552518 391596218 765028723 838819003 253649188 40896482 841695852 151519930 972916483 221572452 856604856 466231205 202689322 332980303 567233058 265275393 436883570 91361344 619593154 568654067 384072674 277372767 80700697 741779096 700870397 325384087 55290294 361731205 45821147 590832911 330407162 62093009 93435833 969518462 62580041 565109701 8426193 660229888 9487335 551242214 993748260 214975000 89095834 867791807 699562265 196862523 849540540 546653279 344202978 743729276 690914680 145137514 605860608 562556267 601740864 884544062 210580994 710891240 493011405 726451584 710854368 535063412 913507324 942943396 482345426 476681072 829129053 346855017 746571278 320496338 11783320 216279394 525926647 205691825 568717460 759561158 487984527 912506023 310169539 143441709 153040431 822638713 713721903 598986961 645092844 688454452 481110399 936996252 71065880 847885286 459213960 3409114 998669462 512912052 410370082 878393197 561151539 520179307 923151001 469836536 576473687 128421950 625464593 347545133 482829576 204926075 746691586 217925667 324985109 920775391 936667679 880699548 589756036 530448986 861335092 693495617 437281707 701457593 288509853 716363580 127210885 769872131 373980639 362942427 892716435 807305438 946761014 187530770 560117721 218796384 679223201 650662099 631504207 73302646 299940786 44289301 52287872 734524667 821104082 153157535 741384123 471870898 894317978 183131438 137849635 408314562 623200807 464567102 513965585 235299715 752662216 745595251 775775371 238216026 491577275 734004878 351079559 932435129 954759812 453230941 406318369 467039477 350752755 53028273 212374801 408747993 410148199 736452085 797176180 384346300 977307929 793949802 750773329 602823964 779363578 949690347 823277679 187475867 403692023 562658149 163438992 510486500 492746921 56750355 564887320 707756338 298149608 74751455 625688846 351748748 834489021 425297981 931822370 33540292 823396447 25333514 342608362 754416917 406582674 718063931 920319044 967426621 671614145 81397470 642375014 315908073 742709242 232179690 180227843 185992 86586736 709085322 931011128 363713233 353211177 223540735 527102459 367986098 414842609 701842035 717928743 963804119 690792186 915675838 230444223 731311525 161249306 343752887 561700928 370423960 440017538 122200157 451548864 734072901 749942541 670564101 975650172 810041387 995412112 620592623 48989089 784836745 742914132 70607151 551603749 949065844 600954824 399030339 20811205 757118057 878190352 499207979 354973213 641312503 161012555 433566016 219200108 957698531 701445052 368264781 741274245 141994148 905972825 533653191 534372739 333627862 678653393 26708490 350282119 185425149 517653869 414547661 74645328 854806785 653557122 542517997 627782274 66151315 843405693 670411086 746855730 965210365 7668634 882169458 837939734 489044153 367470932 203261385 468765229 81515970 958528919 70349479 868334712 812560032 965026566 905603719 112875360 184928003 302377725 276427666 350250600 954146064 523044186 435762924 279094251 369841108 376301610 878993771 740316335 110253857 855937393 603716846 657171179 569075944 672523141 92956572 340042981 948155296 17655612 749074745 456388781 559579603 363160154 365168484 421689733 663290039 236828535 735451416 969670637 481136654 542869962 835704357 999957199 764196524 762381861 201359444 236866209 80480716 678632280 929943254 60568599 354923490 506164711 700388660 365012664 471483279 107140888 818829410 196302266 497492066 950343315 165425967 263743246 611034239 144454024 801501058 285347946 484885276 893860556 647360757 179314943 927245867 381170548 41468730 575419931 234379060 970967656 111126589 626967555 251556524 46542289 83135960 168488855 640864107 628679717 71900892 852018186 510969047 860282935 129038450 528031346 936073442 519443723 216175830 567650114 977149435 974651917 864709944 616174313 15901067 124231276 105999533 223989218 932483553 870458305 819904539 156879740 394616075 813085725 80322430 85318222 431707172 444122595 173243173 901681906 289502817 114141662 530787912 156216538 748417121 431331521 999643736 372429445 811702148 293740586 29087424 653680034 972951249 920726894 129748770 496896110 194721500 512299944 400237400 629667295 888507686 314775651 394879270 298169585 530062265 748316692 221994360 901173647 570798257 116368854 44714897 559765093 572437174 709392078 480753531 43605226 973491444 772921934 264113783 930947986 663362830 653728098 776552806 594577289 916119118 296846831 50332611 590702282 232868451 10918313 140376315 558614017 844741852 185811656 284960214 304567501 578808228 316875132 686949959 996106605 56122985 535438874 377123795 361584727 790615844 479806222 489295594 272435424 195999034 500472462 995848091 582134739 771746477 325629413 130760656 926606241 34175822 590978143 909510894 180880509 686917879 179744243 146032540 411141531 271215217 95614887 10432271 904950375 609781101 945552607 530563876 617997013 932105350 812117064 79712594 815520863 538619086 481626340 853984334 595852174 447201293 97352006 272113172 757028549 26380778 542405824 220283633 571472413 2255249 290032198 16480540 169292326 286910910 379030194 403135847 811600765 276186064 172232908 154047429 964259952 267793390 952250332 81639121 626882275 380921323 730971161 343758198 417695143 513013685 462099743 471696485 366374031 336058083 536987576 660380147 255934479 769462322 169398259 846978803 723583719 873784612 232900353 845868569 98738970 885772201 767656404 670669016 16807369 220290860 433880708 635554619 151860500 161856804 226976887 753899561 24576314 857602470 405280663 876286971 91401047 881901975 124471484 531491168 617238033 240614820 130074731 394453100 102683884 73374183 643710435 485305474 241912705 438199326 413256005 519738020 387932905 814217929 213885302 2821161 10743454 744722235 599403852 702665204 832027416 731269869 810243394 289556801 486801442 128469052 280887993 847831566 112299809 951594878 56505876 668791228 389649410 477104862 501700506 948579890 936683213 472326170 987707734 55138493 689016278 384104091 12819439 795217711 328891031 167812382 650538675 653758733 847926451 82090145 712756363 64954830 127428428 679665646 242992468 720135604 940139809 562789708 107384284 717640665 29437957 972187581 792966822 124996113 663551128 730718055 524017808 773752322 982590506 118222654 241391694 270144663 424733151 716538225 135393067 669726026 345218129 793036523 511061619 679544212 386904015 431489293 845054245 297588656 552178003 92692250 871804272 840321748 542311125 636306791 801414237 979803693 521258363 666823744 416375440 570558688 713463130 12247365 248993589 347587395 495191681 474412242 101979924 2043103 962863703 662986084 154071293 489839435 641343235 128663992 536511964 130957692 804670919 562210859 729024855 805804791 582212685 501695834 540834561 458126383 735040980 298992036 764768885 457448186 742828580 717345644 73340351 541057926 760595410 96411982 122551073 298138678 211913628 806680410 145326969 983723075 529804403 23818088 527867747 783074605 246118743 670745011 40289366 86210789 415978661 774125064 517878214 887729011 278266139 952722172 984782663 461221678 57236997 958872993 266462880 153466209 98015165 598739298 396588321 769581254 269605892 110230736 531531929 41726284 720036275 911416489 457473007 757113226 240051152 784721019 977408356 452438225 956953251 620708040 315221688 77133460 7556634 761041736 1770966 899674375 907422957 719664215 984263988 987598952 872294839 845156877 248473849 160650748 220304033 644416498 307302512 474120311 977728822 950730589 646250830 172086673 222367531 484103412 366679991 486703436 678748298 512966402 510925563 86472565 654529851 844336254 665942821 337008591 558271604 251515793 698716937 921902505 258329249 168024321 190874725 433383400 966488446 758491194 372081054 554252792 205622694 721149416 875797978 549691414 546266277 170184104 672276412 693851189 202576546 11361169 588403875 764648957 814920390 902380212 978353694 418209411 562724071 112081760 848825676 65236974 311401228 664224029 617754362 542671756 903867912 6872833 364341577 362022502 816624092 87414249 724864751 69276093 318485706 542339944 583859041 330105032 979169089 962679595 669881707 689785760 425635836 468971269 954592888 280884425 767265571 306037230 523848108 13590860 898856255 93198256 104158819 705259637 627373580 714553718 863647905 627478104 509489116 588967166 542182434 711780278 992350740 466675450 429016400 353320258 738164542 832375735 130869998 546715839 855790572 765899085 503794662 993564150 759464233 512120549 886115924 964276651 919369259 5620663 901531687 304112205 36024410 685092793 233293895 478038758 20297150 188367911 506440695 723511891 114956826 791145250 264781780 989828890 855663116 936111976 359815038 585728238 31014072 944847976 51669225 786351732 851062738 263333231 627934007 289469943 978018550 565125690 618376550 568219611 598990691 204464895 879709164 634997250 235136239 867059975 215648063 820313539 49341010 155722106 880520685 84728000 581100930 232952425 414657967 901262739 661267192 860937324 749602951 681379161 433330846 190828514 785074435 185960685 809337009 217905432 9024639 403472037 920909298 306206942 636082858 899075336 283678337 752262024 51692827 35930691 541391015 394596017 665687452 80573473 990533163 330936694 233634991 908833387 805706291 404683141 825926546 545643673 830569862 585832832 978045733 592645784 812545486 516032214 166365275 39670499 656244085 8862988 489189555 917927607 34665871 480244369 730337679 397200835 915116115 394320942 739193814 418270848 943976405 63882928 904343519 442813011 287153213 77927756 839815452 987839270 128361171 569697923 237656185 551056709 665706447 191304893 221001847 535675218 518696197 6985050 114000794 108870924 234356401 14656348 140420215 46629067 372627243 229278290 884478330 998205520 466901798 634038179 564869819 637800438 30733360 425703773 745587676 610414631 973096930 266195959 983566471 758335808 701716417 915147187 393154783 188962337 810381179 178711062 943452528 937227830 914116355 892762559 341649504 196510777 750178758 828290343 678248027 880979039 416810574 284000968 48894109 400070680 140870740 214091455 329519785 30131265 661367733 663028732 833632725 431900657 409142019 231077039 848287860 678193217 584911422 455977169 545356917 462143384 726675348 316168217 678304376 258864870 589772595 455193533 455336130 365091129 117508654 321063010 742510275 958181588 407656971 339323606 835081404 681221820 953962733 279613610 762415023 465378533 660707072 708922550 320659316 733516484 136436832 235651534 411878925 920471230 672871332 467326678 393220880 269964765 103977114 746108144 368815451 681863164 67679139 546144124 549398625 639865969 442535737 409053170 817633706 153788909 861713284 504443900 315460348 420018791 958061963 181132546 136995699 816996107 895470183 711142300 683020033 684019643 30862742 761436628 103270734 727998082 184229913 875123729 788140146 184172097 601244013 469289198 717930628 56940789 482085025 450756711 466304339 626829218 531464036 428563140 124490787 710578059 231770763 501031190 514506398 867007375 648051525 926570856 483429118 259336529 181389920 96111787 661684060 502483896 392185942 893115507 262059670 678273650 96457863 119311083 884494099 661541819 707645026 743167682 551021891 774763322 53326638 681285168 405898691 275229918 279926292 542260410 727665960 521539841 980274971 265996286 318041417 144343857 387362347 74681174 740035387 297582901 6466488 764317053 901869832 140723708 726929029 917530560 476774105 964784948 613055194 533142308 340388199 795436117 218470991 207888077 797659718 778942430 492802118 814143104 566618755 153658439 976588937 487469718 321038833 787872194 729670182 732698941 85006969 355164383 428909284 139430688 385552845 343075035 819971018 592012938 283155576 665708668 614399908 572008071 455964405 671815096 503468265 583331543 102232416 331732272 567406025 8640122 466310567 832191153 10698447 941147135 292205016 595212904 647782807 526440219 418021618 332246558 853177353 815994625 9478614 108834683 285356690 175236593 897531946 571829674 369104797 685550038 856213061 196672486 184118745 452267819 910805034 399179391 721989658 384792991 30169560 224457305 503630760 158094486 308118724 301024806 520602326 916960532 17921849 186129232 656927618 773069625 983100370 679946390 364740535 706877485 653863422 707494983 118561615 347506827 917223817 195496563 118127495 149859614 690156125 361446278 873926921 657105545 518545881 601921589 600210441 472867898 240384464 77494137 887983078 846864289 657463650 566069347 614290520 373417231 362383068 946341360 986698225 427750132 912488168 602339282 90305983 193084937 563381477 600977336 276434470 527276854 727493 38500598 64059970 56129790 604627010 910735423 48895031 437047408 266787181 874891031 797058882 496533840 527277256 745273345 823593059 510731470 483229124 844721716 290171623 744959142 514812890 101409748 309595255 304920907 976732457 510195003 325459241 393808145 363437810 37093966 198996715 463940397 307644325 621266673 245785158 841443021 417292674 178036194 947803637 697334496 448162547 391787624 304644877 572386713 522029626 684319736 318828085 965352088 586984230 352430797 145816427 526581738 712381725 958821995 241310740 476622284 795826484 78780221 403212821 564988136 705135844 128597999 336350584 303729747 590467021 907818297 530276030 692850982 701627408 32506458 86614743 489466703 535607461 792167882 579632638 389633529 183831488 349168745 769077376 750108962 767902036 772024095 699567636 491590500 511801177 190888361 271344899 442251064 950881057 110482625 776837153 971687266 440576865 99360339 420437885 778304464 908122730 938244963 235444070 110181647 418389996 648671899 290863254 437860297 819309909 57302052 618620544 300987448 505856431 25033823 133104254 552011941 827996411 831608634 265679222 796306636 221066738 863628785 170883578 346610469 278989250 673815511 964309779 594131992 202155458 637536045 441603632 361240319 554801011 667672696 195580168 701489433 49858194 273088203 734908346 947337864 662053393 265126799 944954389 589046446 905547639 55149886 984775359 678296636 875048022 448067246 452414894 790295165 316189690 210173226 483809591 250927997 743879246 53646248 376360978 966614808 77441689 997557042 404229563 108543120 620606227 906533395 747559275 75355639 387995369 261408729 650618623 126488108 629134244 494388338 528130606 974967177 994184606 608873275 429406385 10083472 884617040 859078678 538436529 242175235 438107528 108990229 477679792 623493516 617496521 395424112 216940028 157255191 186145791 747593218 493541022 447874142 358825296 566622102 495382518 497930740 18794374 453501076 256445455 349978871 281673999 823943190 544074439 186498167 71459746 408807520 843483524 301264556 104093438 101544786 625715132 99181717 795911107 209808006 266199390 719403413 719771634 196618982 383025974 89738336 181661455 5582317 321277377 893265312 330928259 170254621 256297592 587258185 48003063 785335615 25368963 953708299 97826092 831118618 818790133 366567908 694072971 218404176 198090331 374743289 518223487 883541907 124828503 921662453 8282874 691561154 62176599 983179952 710775017 779543472 22868690 431217943 210382482 162092571 273979547 317842919 458226927 182066906 187217325 562572481 375163846 655583794 344727372 974015765 605484613 804704420 445939337 933295753 138704950 37358223 222106367 160759367 830765900 697824838 535293420 93105259 984645725 596761441 419032679 46229056 127916864 934322218 925309089 237602987 859343816 662475696 654912290 374961081 895424279 700070499 412364567 442205709 516996736 923988727 423383830 998403571 314157162 60876366 518838978 100313537 216633539 973883029 894101028 206754172 677716106 380683353 115140444 839202670 655959207 124969582 151310952 413260763 656537029 692543621 767576664 995412128 682929047 555940924 299629799 114594703 971015284 18738760 266856442 7017928 697711154 274462373 481968103 985915933 305144475 155627608 439724135 107674134 413579005 448641958 839251796 946588916 264515256 740275345 164282114 848800520 166352299 41604567 693455172 405533076 977591403 660176400 616090892 566960333 53935323 247540114 459753925 573826020 218222066 187351673 690072899 585793942 9288773 309370187 351647967 262989278 934314943 506336659 310533546 478260134 841241682 608470962 465065991 810683746 70260798 301314482 141386485 917284211 652106850 273067146 699515814 716251815 779734967 176721532 341237056 966943125 731314851 570096605 384823352 583262915 496410818 919580096 226351118 208784359 323811835 774749155 464409607 869716976 982744604 187110930 901712911 524599656 305125268 816034118 298419450 465642637 383438421 602461481 614085303 492277384 742455526 857943205 290078166 804735939 410766143 810584884 519184829 983052885 331886962 593743611 44088356 126028637 602001900 254994884 210180069 231928226 104318543 686920612 667372741 960651148 291291826 706449627 623331657 275024503 66217680 782605607 77971442 889630808 803829350 587648010 714032696 422357601 538727928 909976086 157715897 200125504 28269714 760427977 984535624 600823836 122125995 596855264 271995453 348796185 235607631 416671616 186410766 601198663 382316653 568153829 328307399 477902080 303922071 757478018 606219745 406044412 497165305 702288208 70927239 323332003 324959742 15215501 773640225 254264002 405039130 5059957 241675227 405430130 137459138 65099824 939193960 682795060 579037788 867226160 766907203 428409923 799752692 906869692 818906859 944190077 312216788 278073793 606204336 247017632 853833262 856236766 794132190 432083660 122168263 315364107 63700660 393253507 250780290 830113980 278694708 457549736 878665902 108341939 215823815 994272456 579569881 993073327 622314822 702906864 602917511 446684384 887032964 875646699 929423456 205025480 441585311 338183617 113487943 559569792 975744250 478494437 85247987 999316924 782983522 181036489 89428971 146313377 520978210 248839581 932104012 982725194 649267263 59168341 113730984 807225317 464594143 916689599 162199332 667868268 951004026 493479446 43299621 193884332 751818192 423854537 294682459 176970820 618305230 68704347 314915901 904960464 423712469 107704320 456447121 893436960 447290150 666954976 227666579 59497903 840637765 32913847 936372601 303157213 729088305 520435373 943973451 895893904 133287458 30660920 577570483 821128934 289159059 687423164 969947437 596357669 903846222 835658891 661747445 990928210 748179640 225900068 251968397 654521636 146039733 391893353 163976502 424633187 776582227 138621273 113720456 873429345 320370158 646684796 430467754 994292559 684624252 48732048 272863264 867638853 996881930 416725020 744392837 374421000 691411404 120878600 622734491 290501912 890332111 981493681 83277450 279719937 617240015 540562423 586466240 615968216 377902309 82264667 292032099 939026966 68349617 971158661 934986689 94299514 604842490 337889014 865844781 381782283 886400083 193892344 586636736 660810050 76742620 125868300 980962325 376337338 697303464 984506571 289846550 820111083 203445419 25139026 593712186 635872247 240298164 922681339 566409381 243041025 30551831 651454200 473062482 138354564 480242161 704599464 876376585 723616826 944531493 325585740 5436254 92662463 932973139 357138349 798642751 535954790 475669035 781632621 330826509 345292088 33492055 166758817 878659166 615271247 444191102 859905331 545451670 937263792 996787214 481371450 471672493 525979080 956031058 596880888 767475869 676608894 747054030 613154964 652300802 946701287 771440974 506790487 989929782 69996681 273248164 128974973 485052834 847317074 597469527 104927246 125318254 146423721 947319229 393781319 291392972 669279386 209044779 877590318 913019313 57815369 211905544 128447662 796309037 852744767 609839087 796429540 619569993 931196440 630278496 620397366 988506803 179998635 617568458 625207477 728542701 267166448 289472685 520440568 257254769 165786911 414762041 31778780 892252865 248816655 628547712 987147839 892278046 220142651 723644587 644869146 729890332 822440721 867358419 819466946 518088626 331206693 38046233 364579556 344234728 25509893 89047074 403894563 504421193 334573089 405368776 969209352 848980028 844513608 78199246 335653413 880975471 544989032 598794652 173259472 279579998 375453500 588090765 323891058 3703349 810033575 771379076 62107590 267885488 151025805 488651004 291325939 655931352 951440431 740042301 91976000 195984389 665459852 171975456 514182267 350288603 251433966 849172940 967724423 617841792 977520484 450091788 366315431 954166858 73960582 205616709 891827965 621357992 465987302 1924025 962736319 929670722 441384162 724679315 47924054 101293344 675181964 769996831 343578049 750671224 317864097 989777958 583750692 460983980 921408441 945508619 926823405 858682124 376568780 468385780 556203604 464209707 900334914 894255189 226208804 243107818 525201286 281157184 244418826 476721199 170754974 76188256 964625625 323962281 75945673 945976675 170801069 178268313 167544118 936622021 58884987 172791306 732759474 219098564 35123881 135781367 286657627 325361603 169690034 311808475 108271870 9986027 58685547 327620240 732094857 596124586 222903421 540207869 659909540 577003220 203691789 391487240 572625399 558439366 704407600 30583207 795891294 933043178 391290263 278279023 672016074 534169934 607427570 564275678 497634717 488933612 179999682 1966090 572081791 953001818 627361419 42612802 565160986 134215901 308528425 248096039 256173224 736895278 368833592 676970369 622374895 322237921 572286650 672546234 753051529 524571670 466658008 369293994 166061303 894355109 245563403 175855601 987707024 564561065 683666579 354009559 209899250 382735457 506023509 237570140 543357077 891381525 663797371 263877779 589427854 376648523 118985876 78836931 152755486 753172032 640834832 251349653 616549508 280985808 591187564 155468333 885944373 841325370 547448760 437049232 93107037 694444169 917972381 10100910 674981602 802101644 914348798 362043269 909881024 793240693 445357667 326958779 809682443 233321119 262917124 576454565 904594106 187027527 707254374 109894228 1173894 694592609 892844799 370282773 804673353 193455589 85644155 384057001 102265515 355297130 168140457 343609229 482670944 79944976 481010731 117095244 448331843 787642682 804348465 381436687 453221821 966930081 684157994 159386714 571491491 779031734 743863762 596690937 224324114 914797714 512125965 923483403 699209114 177083416 395721010 329072814 929621318 926872206 3283172 302007050 428751640 40781533 598611160 393980392 232344678 921422074 527584503 852515232 861065705 91516160 37188416 472551561 166459997 210136739 755024126 366783650 79252945 315227335 516021199 142516979 181115981 810013061 219936734 57073004 138429069 990052112 249007528 68255269 385078859 186236714 884630156 121351622 839289815 462448060 679454419 680570826 80983474 513973832 159625297 941924328 129256741 369733960 427992943 835793265 113954867 578726561 342023710 181114420 670029445 505843209 308018386 388260789 411100810 3077257 389521963 59912278 811695287 584597832 251798804 22423010 467585189 251516419 948823425 470881163 945317798 842257575 872151594 64230236 753165702 764570059 755990572 971877879 553277946 146014065 856155429 351846598 383176958 463261384 246039053 841455022 944424507 27856993 693190115 71734511 691817921 964102768 555121012 413473760 889494382 844813114 603993024 813700657 440931854 892473667 10828040 433794633 696833550 807570254 782402104 113923322 713496061 848126789 448143484 743382513 764502788 340777498 883250075 456672308 149758499 938245206 816780376 176017225 871900493 873671154 787760095 68434266 435166425 813230096 33096970 499969939 506798164 463115470 849901445 457091824 464350732 13459872 315797769 64388123 73097054 695438667 773271834 931893602 140249300 821835258 86406929 940157119 221145348 376228759 271657653 22164180 38890776 925541604 770356325 726275835 444846072 353457888 772147834 597645104 452157971 703380929 534550675 601692034 135835889 763649430 231348785 603939692 289841017 537211317 139297461 690103313 704467709 204353115 528157634 29554227 289160728 364234006 271955755 976351056 105312846 387913680 812886404 697911182 92380496 365879210 257044770 591714404 831220496 749866570 373684402 168338415 40197799 719290415 23891937 869695831 422472162 23781644 348492616 738791694 895662984 372054237 377442637 357884558 32411807 337291038 987701837 171101772 660427548 315691392 507981550 988235043 565753188 638682276 609102560 341009507 554981887 862424964 32805261 681059469 830341019 877444660 100588249 127446724 351309721 108644950 692440350 837058954 372705029 977845763 535735957 272909613 813499335 704948836 675941080 500630264 903254024 938296328 670233921 180761408 208556113 966956282 855405593 749922284 526183316 759835752 573909051 244667818 503504446 990304239 202672287 934537334 34354175 761569933 173012052 292109402 200331362 609513451 356853957 999719642 279854637 785709250 322931573 710100316 927242808 304660376 974440366 977207782 642650565 833509533 658085793 966810820 938692758 642322250 278373127 439815829 444167566 906720432 966476792 521931916 879579822 433610467 791752606 424956545 427559966 75751314 239055872 365726571 686134035 711376468 722348275 288349166 513675377 166405789 601552349 767099495 863290317 809403661 630162390 564071110 732327650 306619084 62104226 306098504 33882861 951976559 266797928 227667297 549829184 602606407 448757567 553315227 894947752 151947667 160907054 104703461 249903259 852811438 524668410 577675762 553939942 787499534 773855939 236075152 922786268 730605982 522248355 555769244 110220392 197672754 678278439 512149492 294237688 163430046 945476527 974815024 407141593 142844002 575912266 129922688 664415916 449796691 6957740 342892029 233896517 552468794 149729305 514388133 750618700 230732621 209761434 57205946 140838595 662483020 671497256 793915906 476815954 83983767 676372244 369695314 47117244 621883048 239408749 463351978 426532650 950840211 388831539 680491349 553036595 724502778 440711968 183749448 30637171 459990548 462485308 281822342 639964514 142430149 396209405 578632078 286281795 785730087 906904547 45855801 205109464 848035992 792280539 407384058 634196751 805365645 454722650 613486243 175113894 589510870 92329792 808646038 798222072 731693547 427962353 411267141 409678550 110803602 15011071 284196680 162855025 548869425 948009419 980044602 151484270 188154609 321162580 601732604 681399229 822862101 697612631 457480593 470795703 841544468 558482769 808259865 942025661 119706900 831189815 439509132 12864798 771057225 239719897 195533489 503093681 41676917 281391461 136695025 451271157 87849977 391619359 584345020 890397288 349939849 530468180 790871207 441896943 944120441 880845644 787289156 962106029 107665993 858248831 841232760 820557086 524505496 570550922 303085766 230444890 351421227 711670194 727745037 370140082 84939416 796297740 194775142 297559641 464357148 769904084 333059380 773043115 177596527 279128399 78932241 841096326 195644966 556804603 512070906 214002611 388800765 602244896 171807539 711059654 871552419 583889717 872951903 491185718 591088639 830260702 566935237 834958206 125763537 564396721 201718131 775068247 264913889 452727492 413162927 50769596 508945762 969791485 821069197 682548705 671278786 228789898 617496168 749844794 219644908 468788045 695620386 118403850 650080560 578397061 560075470 850053322 904330181 60899814 890604655 942049105 503162155 731765141 489263803 843927912 270167026 343099983 157201599 198282034 319190586 124594112 240680686 28437124 914003163 594065176 361688164 864636630 736729640 22923010 591426034 667650999 307012001 235366883 229204778 633175303 86724137 983475400 219870325 132395554 652606211 129867029 342455019 90234062 192481920 829498171 882533334 91723225 58563996 967646916 623223640 382995193 121672151 797123741 439613691 385514589 323328729 583776027 88391476 737697702 30358377 614812454 865368789 243163791 45984487 347232544 913675933 992041631 501387162 12080821 569156342 71225405 468733806 67064283 666888460 559947225 726397594 356970801 950539562 583779317 738833864 175931424 515935250 983020241 622120369 664027988 470189127 142961102 219374004 960789025 605148506 913634650 448915631 606053951 322929545 99207893 293158336 309371427 522889287 48235775 624791489 817750603 587956200 714596941 600184752 968152193 587098580 113595470 917113549 369741233 315291303 52642262 49392605 790345714 904447353 425958856 507426136 552841793 769898488 114100601 907592350 248640633 396133854 24619386 211765105 157471668 100369972 297035746 710915312 534835177 665526656 44540101 636965634 758318612 491203981 926643655 960482464 470144263 993137635 318868153 794170202 616003246 412300907 976074063 556229701 153107091 904368424 342343048 157432345 546782660 636705649 996166399 322773518 537456732 208367365 298792628 586373797 6898830 120459404 629164142 519037620 654014006 385438503 59892575 594943885 814045791 571278327 657730078 990652792 228329907 931705449 143072136 68643040 34328434 140346024 196350746 922535418 656322605 780879792 711170341 278632026 218774061 214994926 780363962 994807175 918442038 458430255 581110753 120533384 505301958 205666925 791619958 56714475 54354673 426391009 282835850 560545382 658551245 115612054 903956251 44157453 774060167 360413146 368181321 841979245 258650370 410060881 720135534 761162587 902309893 985748387 542124034 481128488 185443978 772465218 89570303 676567291 480729904 383432653 997503079 768123316 690262740 974229165 669415719 313433008 676555800 830269198 935713819 757786529 509720588 652489923 704401621 195353517 84878485 979128629 172723542 606509417 897525406 62518813 665309709 799255731 828556794 7834124 922222658 648681846 181454800 899333353 96782705 597065302 585932944 469088417 24977499 572884674 472389774 584581117 50087088 344058932 582489062 169473141 602673033 910681067 250788756 223163681 328865308 296037752 208486313 8055219 378398044 741298651 218393929 260381104 696294660 88327423 168181691 361364462 761806896 726104430 959318856 437828567 564020412 560098483 86673747 838438617 449357239 617527721 229669192 891079695 458516089 760033491 455715631 901520871 196200820 25436360 704574148 849013173 531194073 797342062 552099450 753763367 226036336 213361508 850208268 401359784 632132395 708479440 794269801 897419148 776606506 686057866 597240041 475990907 897478100 587285673 996472376 355855554 888801156 92574134 299320523 641709770 723959383 658945513 463179883 522801063 59727588 183865127 443528513 184620514 58200912 552687221 442697367 730082027 222414085 580912186 836778242 326867011 172035435 990860232 940345271 751861106 271572578 639451533 240375487 447147528 371311490 286407845 619424812 67708063 149006110 807577215 644833453 903689981 946372970 49889789 680472536 883621416 190518813 672122051 533364893 730670763 847917547 35273176 715385556 698471033 90998076 746940265 860570605 186253895 626950867 320658787 647435570 781888493 84352484 795272125 367124649 50274566 617660422 222959310 599425870 843909769 427925910 746478968 320891980 632155001 27173321 633742024 807470496 184438526 703263221 126722553 86917862 674645748 967275988 125262761 528531357 892876384 2838723 327971977 854161014 669391814 568604787 833952782 356419934 383420780 171016402 699039207 566767297 522263027 148628655 137189818 911728919 150630917 149558112 390920736 120043575 155690059 389296129 280310922 111494547 486684884 861314797 784014280 499354025 627021262 608181031 481909066 156910276 854709445 404582096 548673763 37498561 228205958 952080551 731204917 570929555 944039326 669691935 228382558 52752493 430865252 723521384 331373655 425634727 359773578 43712977 758728382 814224186 748181145 118101144 755614900 380596695 952398723 597615442 685442217 146827257 682756766 921530824 677107459 235808412 918280558 203090182 291502682 185920382 969109149 378201419 660987740 462142849 527833218 440508848 961966135 814197496 770412308 826796338 595562207 525303018 723005752 274922226 890990050 154415513 664559033 529575940 106783904 369421140 712602071 76483374 905466883 589936847 29544518 561689819 620093428 420802550 315886006 46264821 995454815 350577128 842667796 2775095 41368588 429115624 536177436 35884243 131704564 129931462 850301539 961934442 261247637 539135472 815607898 379156623 331792496 576587298 391631875 442265097 748484490 39468434 807475604 282282634 776854684 207569208 235539024 606398650 88275778 169772274 644724882 532140659 822677703 827475076 210362994 540510746 79370590 139889016 587613056 388817365 989932135 748938905 785358349 10154230 160255724 375782387 22761445 68482320 140198940 632947745 640660334 279265692 920869069 884866557 878238742 202962640 712684309 387772349 209065893 748478313 317811471 896146870 361670152 189179088 841975729 784685396 268753415 52742287 264915307 118538143 374504615 544781382 139612412 715136386 231479014 395955814 704055051 439622397 732983445 225648426 504338934 941832529 433913570 802940222 416312768 602354051 985319134 302085858 396257030 113672165 166942758 560968963 204234056 75829556 935336179 574401154 687975790 159877409 960891847 359511691 203429621 777574408 728562486 837866897 912447345 86215259 608018111 967466311 801044356 778357579 226353481 182832972 877121637 27467841 56240215 329329581 637340299 382631858 803123102 618512586 531074031 552345129 781080108 877286520 988136681 691102169 279651878 795716340 387517882 457156201 164484457 516887249 697180764 959915014 160379084 874772318 370117394 114238251 500415238 372004937 43717582 437397086 510867208 294704150 673596931 954910265 565851656 52049792 837247564 250430546 589634254 922317380 927002712 757601686 501613687 366665541 203511987 392470655 630257239 410519784 448574944 218348293 670251453 139257328 743924800 252376796 292245192 197738527 961860127 392128984 198588763 777574843 924699144 548286527 977536904 649798305 620142223 971908101 318999299 482504883 227358626 809324337 723228941 921981376 148120616 450370270 562373686 701136125 970623789 870742951 428156093 367780134 492139744 664807080 157216466 30497180 305234264 355908007 139902652 759017785 689302656 846697470 259859088 787806141 656337799 538035621 305430871 43957954 489798999 953275265 785494323 982723426 380555395 439308314 745542764 372004825 59411799 359208089 942859151 502725716 662118871 373446200 961542281 155812333 117421227 981140274 908633101 294297183 744907128 558312656 498383647 439161201 406180258 585652039 557776170 266630604 631655130 203516405 859405503 369495215 323550381 578080054 927401899 872291736 576001229 144306339 178288184 133521892 341989307 435540993 582885620 585934545 271542070 434528319 272735463 410314715 593260357 859642280 680276611 208918457 476643838 478252217 745443388 637671171 281903185 679962345 161234145 202816871 473504337 695717671 806589609 354011457 123483126 937491907 33364095 463129899 609476596 154576565 339504387 773795029 365608353 696423661 307001894 247217152 725844324 125216262 563709236 156153812 850657738 15798433 663703409 414324386 607959005 522270136 454777299 344626555 727494573 850655718 88990408 649472355 972486495 716856795 539096727 162585615 899037621 368125368 721543008 32837783 253668218 502070922 466439980 806250795 462547140 299320240 231493534 463875361 188005889 800492227 117171613 625529653 143826728 374315281 802892673 694090137 636933255 801795888 701358659 90049132 11389129 222563097 385127253 893407082 806291122 621107108 746361147 26032175 203500789 681988361 166150876 65038272 561570763 9462966 340799213 132673966 779667705 56940725 773731343 265436581 263771483 651224555 474544433 608319738 269469457 454673007 560553537 585531216 939787984 110808542 249975904 396797339 36678138 242474648 312185941 352942766 180443134 637239631 909318493 136283603 324881920 32106192 806159511 355228577 84953241 22842844 85038193 828780375 410148697 673159890 186013697 644015763 485687419 239384650 248443147 905923358 127743855 989153962 857124265 282276204 280317484 146000431 752662323 698245015 806250793 845771994 282837831 501516959 434098580 507273858 652921445 481487381 301627152 143862866 865180355 325263285 277068006 811021396 476402028 296921168 999818275 51993820 20717747 348016145 853183186 734579282 975697594 639630437 442268770 464052136 105845612 493787646 829621625 750913186 964979751 38719336 709823010 65497419 272244918 273185169 753100702 92387539 251652462 911499129 673258034 782510182 361570778 110542131 743311909 323789467 127697378 777005428 532878368 923040721 594265419 76249135 456022691 250887250 124577895 759836832 313872959 967805938 927655138 839473113 452303028 247613053 137289901 598749053 199657176 592146989 936323515 571692951 594717620 426182631 150370463 177008092 562380715 400409262 98774024 948684860 943506343 805310589 277751198 368293748 689345968 680812669 754157869 614112234 593982099 215693427 430321292 936177777 305794718 892690000 696786707 376691176 12840671 335155025 778902213 420865838 709380810 144430609 705209721 10627794 11522698 296472658 427011257 293417677 67569390 282799381 779289252 893512924 769198282 539970656 828038415 716077121 615764387 575021215 864631945 172524346 372165913 988610956 537841392 749387204 505246331 830771380 980964590 831661462 846696088 538674946 238144234 217836413 573615049 640694828 706350443 831840195 234545273 41170864 888295041 841678065 181038485 417402634 808995799 858577711 779687499 908106912 223932427 139008127 82974129 374449601 790925382 455898271 548692346 986401786 312369512 295100026 400020851 247506750 35709648 175560791 169680008 126143149 599776140 905888951 380723156 584067969 553416827 103296453 798021006 313395147 977169086 570151534 755470634 15709697 53581811 175013249 433590748 365482200 897854539 546387462 879216473 124677586 359367261 74551383 597126324 566459973 941346004 510222487 163843444 584101017 707862301 348478832 587311501 58871916 744424255 781298189 343466821 17060690 240225091 962533125 890207406 404663020 7950041 178589696 97144400 433771324 556755968 647148172 227873411 7695842 471951818 922161516 432239156 591937916 109717232 70321655 419108270 648824538 276270188 324391806 194553292 237315249 972191147 4013315 232612494 557973098 996712893 942346813 399176584 81829940 121821778 710978485 686597132 359475360 418418930 479145937 15685023 61286247 396470353 901269031 969066582 15781006 599856668 228838331 292796899 174973668 550711281 168798582 531357958 264332181 563117589 881953375 386052972 956585274 851520555 685836111 664525518 113244686 827302964 392247516 951884152 565933616 569891813 736958639 488702032 157866765 255256288 991227953 863186144 400447387 37232995 406835833 736824529 216322982 824927502 847484108 359326975 343832442 742083679 40938955 511228639 381269560 999830918 313486494 739000400 834989331 194792822 360176423 784222944 962016601 813356487 544728545 458859770 201262923 571902377 297060590 260617111 276128821 820088837 347792618 579937889 803932193 831486684 671450476 466780459 474841090 483785247 13202008 852253235 557039567 231098764 177316318 75082036 424659439 834064808 590843402 919467040 953217847 504957024 830875529 838032633 305348381 842564729 967958384 994006338 512198626 28943264 49392088 969554630 703452996 11252665 160083799 744235542 904914682 550518926 348759211 105344632 29419567 495125719 238253138 748334035 413234233 769854606 83868049 934411074 327865728 387270199 526545316 48329071 512978008 713660621 214598818 109469272 111447094 490406781 314364190 593317346 115042685 468606034 523994161 914940283 484421478 969244103 131428742 613654812 773222179 2918947 324529243 360665513 221004996 162255452 134896947 771989298 71057795 899475430 651568301 767938019 883535746 703171214 74927271 113216348 30840199 175221707 570648655 271747032 141413448 176269741 774025563 735299553 786446676 26644996 352721503 826694744 537574553 578553265 964856883 388932690 316123240 517934092 986765131 213628935 237913522 274392903 918962095 455578451 653633757 447321684 90252332 715628151 563734914 703674533 952773324 337143348 694809607 434880126 691093667 766764712 920008372 54440827 228964904 440660486 561753947 350173438 968995751 933550547 201224976 158302815 933939818 10662680 816310703 55536842 239602559 1607151 7773650 242653902 18564538 190853192 983353634 979956064 484517860 137116820 962448639 803252466 766618853 986973572 839168762 547011302 99596478 98052022 843529505 703429787 920517260 401996676 572794479 538660740 879374032 27986116 739269592 259809441 328089015 475260054 608354320 487023175 77453242 368471338 615427284 580808451 234068268 943405102 494213139 683885822 516062738 57947536 83960359 370357658 503903525 284490663 101327987 964257018 356969750 568972648 353428676 520881726 205175388 162406270 125261823 222351457 685510766 264104475 564779358 954189158 680211421 421958019 392178808 679860944 282037060 471835257 786975581 169515249 106245691 732832883 591417571 323247293 16522251 91531330 505047175 227201520 829538424 837080530 673516774 108447150 354784181 877496647 628605551 176127855 270125649 201141066 928296852 207724751 759037820 369325336 998609946 517400868 603675335 249344369 873425460 507996352 546401018 675679870 84017610 626699468 249907641 78923645 762919741 566222497 663477692 823423036 658665617 774846712 485393478 55533777 156022005 185811991 552171845 762574764 642135950 307748405 258165076 679214000 86569904 965736911 250929888 483481789 249884698 363335288 793564836 53868738 924916282 436638139 622174654 968614283 2598129 719057113 521549494 550986099 783614063 761887490 766784631 951573568 909402312 949594121 285698368 585876391 674801718 14117605 68188760 209964897 845606610 107817006 310223997 769525534 43319580 908019439 449805490 904247920 88660308 227546545 46393616 713584093 321009693 997570992 39501964 245595435 633035037 390786983 88104168 939219800 901967801 699232794 216371625 500898312 166434219 13088887 336882507 446432939 376119575 220007090 979650019 687001318 131505777 127782658 531258881 360334832 985616540 835564488 614184244 739600235 442544827 687935908 87245732 330902120 483215506 538091362 566769083 811506596 993397888 303909185 90871956 798021588 868361064 136270450 35803439 846842062 251175768 205231711 405291793 534093258 970657188 262432289 41153418 243735902 610355818 362327766 523824014 269561524 146138088 891485342 206617677 457233852 803957515 841446406 551685701 705950634 611893815 401552290 287415834 746757438 677962676 794825288 622012860 696558842 119620464 156518075 869841184 706212022 574660176 405319404 925254420 760534728 764067773 245893278 800000662 170405716 992085747 247786222 140088273 448754251 214791114 730492496 18028547 967118947 740097036 222168395 842745903 255004408 18429069 412083277 697476412 645220893 354519066 695570292 643418530 727297907 955345514 96606656 572192947 443751928 147895591 571430120 537660845 309443117 719347280 674306535 308835706 871568362 850354320 310906292 939264278 58696491 665423701 698871850 849374539 568378268 839735317 122062907 993692872 766368272 508370952 251597727 44424474 513414347 695986694 578004653 228451972 749914675 859052032 924812030 331810901 292566443 594975763 830966563 480490534 515028540 984488998 56883312 789475784 721608877 796361808 120161918 771692751 651332061 567891613 305069686 121398441 225233073 189744832 461927262 257427571 273923920 91592003 867055523 162734628 217497624 284145097 378992015 476714565 350864605 614046882 613124888 439782246 74182676 200240555 23361832 866495941 525089258 566248792 915101028 813649999 494194607 218606190 923774129 321812067 230272456 631519188 665236063 168843507 339521332 984578501 411224898 488858270 793205247 196324101 5552131 901665838 169466061 771555369 553233953 295511350 502446778 905522043 616221216 556879849 565299462 583879799 178543737 763995180 926114620 427204566 508732569 875506254 610565142 396452597 612058938 971413361 803657374 155644063 862460113 666343123 326973579 77549316 914377282 257946547 924588183 559524636 613134686 814477314 220502030 288495482 352609403 257900650 533476163 893091443 765484923 309118637 925139193 920101714 298336579 411911019 34187719 116412605 800729322 372679316 460014086 554429475 906392407 833204172 113734704 384068809 376823763 928421793 822921788 854844583 932741900 615458291 703139333 52482262 852829949 210079981 605290649 591992513 368118165 686505696 485880583 482718207 311129681 364025970 867268780 824559181 676498154 726312588 958988537 829345924 298870590 869450858 263321872 136721057 704031274 44818827 895205269 732030320 644267853 935760846 36284683 928371653 80690707 174830332 624888055 217218844 148689007 330105921 214320822 910945896 461901205 345658731 174978871 796227581 715392198 71402625 142431636 213133017 15054374 971052008 93082750 567143814 436214164 998098500 525261993 780239666 192095369 171770778 658869839 120563131 960329184 451368709 825032548 323226204 114914858 837192823 12261979 520454822 912788189 403809952 935764097 323759524 682941775 361036331 450688181 48670399 886928742 566624374 621369234 266356284 914914072 457424448 716911148 141909572 902378612 416601154 287203610 30218054 660776467 343070096 797315002 866648945 883718211 817342912 477001502 258587289 879983267 799292687 954297378 501548428 838549094 451609048 440294727 729538488 711666375 995903198 601340560 503927024 45689725 83170437 679141365 986769756 205472414 671917228 877814585 399814044 942650096 683918697 554443370 959773398 397298119 967239550 318251535 46120590 624848732 685486589 783890029 314826453 670170838 216071007 75402273 780192251 200842341 342465692 577978141 664693638 370930725 761837506 613131654 358756539 519336541 398326759 490639576 257075322 716006103 209843924 792833186 826295263 136493546 523340247 710612811 340167141 950353209 381240654 993597067 248468960 880821236 949608465 78470230 968175774 26103366 25147625 783870544 70158835 96230759 652959042 710321844 692599306 230767828 302744505 763649932 6332932 642247837 372171938 718098710 95864517 356867611 809106091 36800737 166504211 578166606 494144893 207994271 298704949 360642671 686250758 19147533 911226844 776849828 478967798 348767794 887419387 695730168 740245415 514722545 137655804 810310914 863917269 478291532 776453286 293008412 125331534 764929064 541619876 658254314 971959447 390384606 229420822 508442865 168206557 196210800 978361188 191884496 249393862 348429513 735362176 451972553 55126420 584981849 580938966 501834554 385398751 894462952 515960158 527634358 789175425 723141825 988430726 798075540 910225624 414949076 358028859 295157247 988157983 885442305 808650048 815865764 603612849 957644230 789567704 273769934 961169800 202507292 574014543 609148305 161464050 520338441 653617049 66652489 236813828 815123323 109385566 406603813 749273564 798898376 45959309 433927540 460592132 266811743 795298986 962483986 220410469 827439219 804746444 275328092 419381776 100899797 212023285 859487419 259899617 524422543 202495909 65879320 557090318 532922451 274630140 305759095 292873189 724768277 890070525 90804245 898600654 87675592 752069791 557703339 323037000 832946311 983076708 743474711 314976395 208958528 728497625 186093853 877737735 984539147 8222408 502089276 492056290 460634272 858614118 448005263 53631883 234532597 730367669 536037783 348863757 248240707 146038706 839215264 333925295 247589156 972396537 51772652 179853922 30494305 242980481 31777895 471420965 518573344 834058416 455752590 680571954 405672335 118438071 771001889 536336635 649354301 495198756 402851729 796197142 868244402 827410591 379794674 18113562 873709237 350311044 695679249 333968445 350278443 844705532 277419290 621074979 847082499 620274653 41733321 407546910 297207121 784893801 127948389 745384099 270744719 490567298 878929685 483437847 31023277 492979241 484887380 582964312 71344856 891418645 91268970 775281201 566608469 842550825 994588958 806352762 648201404 206410205 27495343 553396718 167928980 767904293 921283347 71403636 669742071 770405042 48277585 536107993 45654173 685433248 438612353 22007478 984530879 608431463 137346719 301685354 341557612 844065508 383813514 777313470 253370240 238860332 954666171 705920872 413229123 385278842 402907323 685241179 155509807 617607079 296537186 949372688 595785647 237027510 261000744 839575384 783556172 933921574 712087572 691159485 802861906 657603088 975344766 506734988 901936558 566073095 417858490 267200765 446271543 997443744 929847952 645273990 593120452 449711588 879659598 923650596 61457003 793304307 488552920 137996932 951892549 387155983 938862387 180206304 799891576 826274766 691008148 627882232 128404917 833175814 40789795 979623563 177696491 169558905 843015658 663325374 92082177 260564933 922976130 814773893 174822093 241320248 723209243 341038872 250136171 22940699 494116281 287047086 778001831 697410508 507757877 28380855 991195762 750673570 197263399 825146003 697489970 3558697 314516729 229944176 798715634 156052556 643496216 447586344 688991725 29796308 641318533 416589770 890180134 466745418 215001434 632993330 270191322 695507728 573877642 956404739 783984043 842576159 173956599 588478080 726577905 484696383 910294212 480176308 810943065 901176188 145805672 20396091 7322609 15081207 30193361 855280467 820232230 403257205 475840180 431059589 206658184 898739573 385065847 450654804 370277777 438166958 244286901 813693331 648881593 114768600 663593441 957403534 810102645 921252756 187368594 309177422 510563328 88732210 420938442 547381840 523539895 160518803 394641269 682569089 777242059 482380101 626656141 74815148 747792790 795348553 221455987 958228435 726148043 276146460 874397436 346870526 74292832 263957649 846686512 876949722 752319741 770775829 702805576 621884428 722204872 185711475 852397356 634987113 374947917 266819173 919072783 91847728 680100985 90393103 128851682 299416220 91969099 317788771 380730908 891953399 209365128 903447641 890733843 738443028 244641307 711550221 333601658 718232357 959480489 259764496 259579749 885685921 202676630 88781334 471486984 974336070 293998906 124682909 854159831 135172748 285102243 749424550 393853390 167114974 717104514 15801355 310754953 113164079 446423829 196061780 72796269 562345181 938881393 30170869 680486655 126662140 175249781 277541005 209257484 884455696 10482696 668392265 420238705 764491027 195301613 349972014 973123447 268358605 710844300 91990060 528841384 636075170 690287032 610815768 760773535 952486415 527832790 502797168 618039129 275885984 2689856 125814466 891613131 217621376 885683307 266224657 175770124 634252273 394542653 860662096 414442779 225034568 565353776 871837457 682430562 413155938 297681481 212323036 603410620 651568247 920995206 911113736 19092937 689683141 382895481 95998650 590521874 810927434 245331387 458218570 213936239 660909881 608407854 497151838 220088673 916427846 805580214 247467144 471973218 670780133 948988114 166580729 987314612 115614622 811730873 922583115 847464645 809028654 583945237 959337218 481384816 260867116 824643024 439333315 591009528 105540157 158036347 769941743 988091845 525524210 826869773 637697111 287821319 887181882 471528361 215241540 73420930 952833960 891959982 785060825 329718497 706081379 904525743 288855386 883660437 703963408 775208241 26531073 942047815 447513885 835514743 760207028 377083026 735828771 2405501 511358487 800269431 586526883 663326524 506505285 57648802 899415329 265464469 144671329 89665636 471750659 813739514 835680595 520662129 20311181 794460385 978064926 815605894 143768119 143802770 983163887 121504641 692438722 8600779 340691827 415037504 878856619 221892449 606542998 573631845 73125117 493768256 319263622 388819820 289235289 265412110 502703034 574400279 345215008 33863178 644541851 137938520 268454924 309352210 736442753 713279668 581716214 212858646 629308633 493878983 502933058 61417952 96866417 963918685 67612681 960666924 962971275 613174790 33996708 265583177 47474417 672813963 456971654 324474731 733937568 360861754 860609622 170137049 16200551 998180372 440156523 808626698 671845021 422921603 131798541 131969314 842894090 629774341 85198508 682438052 321701936 379007564 836961749 538911245 557974636 318439637 954914665 33813919 846296847 163574745 530533829 596042955 685695931 707972514 133096989 312337545 904986757 437530550 363422515 978371418 449660086 231638333 476609227 428687850 651027670 760415866 468488506 59243310 427718102 218690161 89881657 6063005 228501669 814744522 714301210 661404630 733474485 655146746 241148020 191841792 734389695 627287301 23552561 872484908 638669060 302811426 770975204 939909030 369066251 894768599 472363890 762636627 749921391 112247646 776913915 467442119 525844401 751167399 154878377 450738356 516059542 209542208 564613904 811784637 364340996 813612835 776169097 544066394 100177544 247937524 939846488 871577518 237668059 603399508 411942553 367864861 3260257 212950917 240599425 336138987 963810639 897510630 328883936 857682077 470740050 639991958 739509472 111009224 279858158 576393564 251089147 660679095 260711772 304683947 720749389 917587124 4116717 995973 182808336 239351200 657575159 716576174 656494325 133709119 192530708 78611212 32695791 735864205 132598078 958043691 180681443 393242999 897306990 415516956 842767574 254292191 369135752 588602558 496255533 7221328 99034563 868462611 78433567 112504392 566418311 217644585 266378251 680172520 986072281 740846104 987521189 486368441 28320353 751025097 952243960 518462922 527254166 595357170 576360890 119022576 569266203 215258342 959321820 410682958 398258397 263783323 780848831 695813537 349017695 224405786 272524028 348730169 937227125 275386506 896255322 192031105 972739798 297245481 437359519 673508695 931291024 458988273 596888303 150118362 60896631 623347051 202309943 528388182 969597329 180488925 829239279 422322470 238867765 953245592 316985052 323903530 97978580 263090393 827513234 134128180 133295906 149636040 283351536 454861113 469309508 543184686 581732820 815895048 291681963 601202807 34537711 780512342 911603931 966272872 193915 497665535 372593273 950334644 692431332 310670184 272496311 365710938 597778347 886102946 162279924 474609379 691898226 651410741 683279287 76374744 81584787 746753445 324064801 120261983 675230445 774026279 189538633 121705676 398361310 317474084 394341075 90128474 400841415 420744533 304244106 287943691 574325406 703458203 175814151 824734382 883277647 945100745 874640885 548377686 857980745 243071413 171524117 907000080 605782302 718148901 965187714 546846402 319727007 511536201 733037782 794933990 510521116 520571465 135257612 617661539 313416826 741933045 466260297 183893043 333615263 80441539 42954085 243612732 600840407 389947432 184796075 448969289 409310802 668713601 540291923 901783166 840565825 555992809 377548480 264914924 960738865 593334320 855517257 943051599 829290622 234921585 1332239 589377982 665286752 584379896 151069223 433637583 382864125 657424325 147337496 173894882 151095179 274289017 225818960 564003516 215013328 574675384 163294558 993121910 969883707 563871665 95412192 548747839 813194149 478086822 610917092 71452064 146708433 72708895 117599740 534415582 155764737 367018991 36865404 910421747 44488433 787440333 488108980 375702879 479019416 521440883 5385589 503835907 755115641 140810623 533734565 77419671 95086963 597298193 639173564 713935965 167949506 537467545 462882641 755333821 776777071 4874438 684506101 981071651 612265414 97427603 964285094 889818944 928817037 225765859 116081681 745249694 811237450 597475486 475405911 120494358 225931128 730806798 474471602 90771226 614252085 644949354 751739196 27621042 751734099 855930530 864666747 798299271 534900651 593963122 435359168 578245132 900533799 259702898 522179416 979854190 578672773 805380490 392236892 445951498 98633559 436888985 628184256 691840533 921028396 398533324 344171728 870637091 580759353 410516573 12835751 612105008 703405462 550642608 617748627 643557412 417008703 309274645 8504744 400327325 813484051 683617854 50377526 862449292 805220111 675264442 658302975 247392793 13075284 751540378 386141527 907375560 909065201 464184096 564930560 510130293 339681305 29203917 878329772 938538402 686389218 595587178 508367846 841775474 374556141 849529028 845476693 59008923 407519379 443356155 891075633 325631073 308837184 937389563 271200426 127833647 515411844 919327793 241038496 749048976 477485866 126580958 213961442 585839391 852517481 528064285 728133029 410544531 475498296 813440431 162697875 712392024 230840805 752904367 838036302 148968875 563668377 776065738 511063264 28542912 653208916 858661955 151825489 831071707 838190343 606983328 553162877 271817223 814193714 854446330 186395295 878706042 627228856 822555557 286427149 520892763 532131570 550838352 31945128 384843674 951879572 472182760 665989977 396331369 147337833 862406270 916052881 516166869 960925577 44940029 277013587 598480142 579980491 187369669 279139940 274058287 657845343 246749783 252178104 618033129 96479498 201844975 528456227 985324908 694531534 155289355 704238107 93988162 929241125 476004380 812121619 761462541 974844359 469173508 421194351 694628356 865072014 794979461 333900381 196979144 491348081 971261860 806246888 23219425 469285023 274849717 896284624 481910653 5856622 230858765 587300931 210856151 950552716 513487247 830738921 577612934 264839047 955817559 893234444 805627173 539744699 136574785 876199411 47138158 918509624 838797047 637271373 932664228 660897865 920312394 514036230 701572352 981424705 314808824 350031604 766963536 15001823 57843610 735436441 357839879 513791933 416608876 751836987 596188351 993565972 368697562 577456987 545310081 611568795 914338112 812031938 20770647 663304309 801651177 222188605 333447952 27411784 232162408 486100456 29957332 475779301 459399997 301648713 200501612 943612756 896859502 955781545 372648407 527548641 911745295 192132057 922737933 956889398 130057247 500621369 422500935 415018655 474765850 548621743 424823881 36470258 141898047 506520080 820891799 968227073 927253840 961055130 855751276 513615131 680190049 768832809 916359431 935029070 729040029 230759108 125001577 113020955 834061691 174583013 559158660 235811258 44977341 662835109 966178500 809430317 938217944 516413208 120522543 613170115 351030398 79087661 4153468 985436922 599260029 958193606 465009722 114486197 547422877 45765640 300335702 148551422 791213238 566769313 858511072 251547666 726415240 476012177 525446243 439305110 980566038 740443024 718519087 233169344 933202129 900172212 233748495 379160779 503474375 208256727 316787480 71323413 548267693 313186506 411069555 233652416 384880815 737075022 123142267 20440866 193402909 718569983 496218378 467912645 509474747 518058001 517254031 657702707 218497186 424371693 820848714 452067203 70378244 307673926 460135842 313771795 57196064 905493746 675478831 898397512 209212277 873888911 518627045 292896392 309929238 569336990 979764165 885631713 814409677 279933003 172971984 594380202 53038494 807407857 623036759 436705752 748978950 746926184 980754538 728679517 697060479 863662108 134333844 969354407 576847849 608396367 825186380 647355460 445217797 134243776 878384599 383436293 433628846 791692980 873689263 770776551 528759180 628450348 551671417 488618218 972234864 199040006 894563801 648692324 605656505 549351323 158127530 211611410 338432045 816466129 288191773 694300947 169823708 673107431 429093370 47978768 19933876 405651173 665631592 874706193 958455830 492943315 311186449 805962942 84429578 655455579 771506462 951792724 269397585 65143099 451402842 672530654 589447262 948650137 9478970 176810160 628183089 52090373 783484904 850710871 102546547 458082809 465131014 492807530 35117446 286320203 128865973 261166300 720639649 94194791 902751417 495731668 520344931 505231553 632363086 534739374 71999328 558774559 224115517 782666379 69559593 258501771 433331921 175600446 892212623 899694753 998570096 923210516 818359430 445413454 203224743 392936552 811191294 251902720 377784341 320960071 413615157 919169575 421182270 133895450 948259064 457857940 188167452 82073704 268236070 583252583 332443082 332640421 352307139 168941401 761768500 406235400 173351422 227684585 701904310 56353595 465381505 183897289 70127543 941628055 75646682 339020319 710588358 417692781 578730357 996204152 257635610 38772865 495525986 602625034 481041231 527882108 888033327 91809090 368602143 449619443 758087890 67253330 412321034 820747583 345451395 442242363 541727755 33164264 920765035 20054878 272737270 912983023 693091804 302568164 435597285 263828757 272412241 489178495 330407202 793023008 993887725 41539687 380185217 466352321 659364102 144024272 216230401 403488407 893506021 52821591 90469753 655667230 262298468 947262163 481071489 343346118 675928503 173590606 697018369 155996595 276446448 420269689 507041790 935093872 431902360 395056757 971945397 173653090 357244663 2402197 575649251 696177950 966938868 825074778 191039376 225631300 271744331 920018087 325306438 717143332 906148023 358917643 493031266 529054223 355357485 237942377 454807158 797584890 239423672 138604389 650819541 101437966 402110450 142400711 660159847 714916503 921827982 192133088 118569381 963756315 509756712 761108062 630878870 685439775 161528128 442074975 432482634 875894771 36504700 817796332 409862700 45607340 373030497 68976452 357818456 12992622 128664396 60472965 90958969 445280469 349267700 95167067 209009689 383535223 407124073 113052626 900254494 747536743 981681723 553703926 210736205 217134158 310636712 907324039 850381054 873145621 540902985 196719829 229280381 936166785 207694541 239267905 71943302 451942733 942452741 974158524 678996114 749761771 909715777 46331425 873625913 248976184 302094893 576991899 402475170 225224410 212821596 176029411 136435546 229811733 839844113 511542369 50485511 684852712 139185971 890862094 253336394 60594411 483592170 433371253 784789092 827466442 33406174 856013958 759844349 272471564 120368898 984379098 520949045 855064732 979180880 344992682 495253017 344644030 953944298 950422759 772811064 59708877 208322769 766773210 33492162 190919919 153046421 25163343 250732793 48908606 97771501 501946281 45137576 7163445 929654110 760538749 917797829 999097092 732842931 575188763 884307545 79075633 333741041 821043653 633891995 132096997 131647557 560463502 885344488 759879314 495621473 849147740 775524360 758512717 447680871 170174725 656597132 110147388 130771711 70790011 801337074 276767977 497825429 339726040 803082995 801532686 671661897 249691372 81261627 221818604 145534538 227750237 834962635 6283735 775857754 727110361 295371278 48261691 522279541 543302617 400040875 663138962 361713918 678695063 554604674 989001242 876470276 862661087 344270398 340773858 829329275 744218448 641512532 409889338 850327678 965973294 912293415 334477762 742141621 281786203 857967067 750277032 594514720 698559134 161412684 359889434 442971591 18435345 308229055 464975386 739862081 127154191 281896572 454965925 811870282 964175845 621732914 762853287 748321964 987778192 375809039 770653999 134714283 270760890 138011629 367483469 7027528 496532853 206838352 70185953 526607866 830646147 46153727 373375691 381989805 830527763 666931832 632011009 196269270 87219940 126222499 156707984 431787722 840125805 419764473 106921840 54128669 714723230 497279944 647856368 537875682 265500189 122554916 680742885 94570651 194533125 299901289 796213697 757087355 583327486 730542270 314227012 602293458 317625598 955895017 231096629 159133986 860702300 928876056 966482489 163339518 927516963 56580215 391317361 125276139 92930874 458570587 802012548 928077525 574406883 366445401 252428236 967483314 659264087 540695821 136010530 803276293 821616452 855253255 648553301 686433334 746591593 952451756 420380557 746433019 595616498 509720322 53233058 361248149 66648762 620981229 349270823 708480819 322883414 326931640 563395350 865677208 398599658 57823688 275202095 699728868 865003521 564142984 809446533 485089674 325781483 902472618 842303027 915169094 120072710 136968703 50161709 785631673 144375466 889810553 640275475 227612004 267087948 68115664 986553756 880164967 153669292 856313832 553333583 174132178 545022609 494399756 604217441 370553372 12479611 712215740 863785915 696242555 171040655 651795676 377283408 639586181 358699894 806424771 854829630 438155799 447427548 359519047 383969411 835468362 831807723 904526590 295368478 133324327 191803350 822513287 968270041 557778713 878211699 987661463 976564130 205085909 341921666 693662041 133713898 94089974 226205955 311515488 937097805 688889088 393647540 128986659 807121177 774127554 916060636 183454055 7800612 952541870 748228538 285033687 347143999 34505735 856263530 10711413 151269599 350673751 939868529 129682923 442301319 17351160 171104261 504627071 331712700 693803009 984168408 943624042 715531522 301028061 378416029 74793786 563336992 364881360 375304338 370623499 273565973 52461061 306836554 808484269 308267472 838093434 455537199 894604178 425929413 444783917 498451886 416088184 224467640 482977204 606013815 624848748 708570846 602318592 130291694 914756391 513076204 171943084 129104991 330956767 47074767 210044877 771424431 149888071 135484660 290780692 759915782 787544396 140503661 75279191 12599041 5727768 418977873 119318267 24559618 765816814 44613048 146738721 646539588 841512417 980883592 352461109 485833131 825577674 925793127 977604489 424648819 863318765 677381571 1051985 191090860 367612070 727420582 427260277 419220985 28019895 855744447 553135384 992274155 581526810 961575005 176893909 440054854 223625145 400504718 133799552 541481050 504375463 187834676 443609898 5154761 702680636 277433810 986676638 698183667 463674410 90236160 342710095 261293408 599672744 706995935 437113611 448811035 736515638 534325984 917559241 65940616 657648538 508305422 202387730 806206010 500343598 259005161 219738773 997849941 881519758 229026990 392672614 284587463 272869079 578631207 214581047 617074707 209736889 418006439 546593222 290495016 97600894 933890428 623292540 864616613 945202770 419722231 201626487 780652844 907831183 261701157 190576334 221992424 951798871 535596392 682663341 717837699 421379366 55682321 161570489 909918059 865976545 569182343 743611880 957367375 71379297 356516819 442234548 932525319 435257482 256586975 933321406 672330475 653020363 208986064 45619769 625396494 604693687 419595714 994928119 785197279 133049096 231629917 111561618 377730947 802014003 458743499 267060386 153078318 843485001 340625326 433528016 321119076 773181979 775695136 141492585 58189145 979859067 234835751 492674829 815306288 22571322 10824603 18362043 259323676 732072072 658103308 339306975 812429606 252769626 472740027 318051943 171937862 917510934 57974980 523979471 606731234 405014566 456143451 811958275 976655211 862136393 501438806 394010483 301627499 684986179 137808762 339399702 963513345 443293083 924926527 902379116 115142380 641917898 760394268 728575293 33776757 830509665 937427534 864301842 395110623 963095153 425956977 8694066 730103812 396373558 574813843 877806031 308868316 16708811 935151932 637094068 879066665 569170562 774195606 824721789 618137644 53523896 67982210 798372434 71564473 454372811 883462894 373651057 149554232 353927576 926675593 132932668 25917548 838983840 630644400 478994831 460767263 398531354 831215102 204028931 727900736 195945988 205105623 146393682 45787609 469523192 426960180 301982079 754120576 565169934 892681599 311755857 615550486 153813275 185181917 776637538 402683176 496529400 616966947 390317691 428166730 371120848 903839214 351991923 722362717 119050061 534142537 467674277 287246601 228174270 75423637 727824308 291834703 386314162 609692479 64725500 612325226 74214334 846945018 94733360 738625108 902706757 856830857 523837424 955755179 451316071 139662049 17134219 610173889 612526154 261508123 67821214 824041743 63512064 478175829 632770703 124103085 81631554 387382187 192184662 841204993 711557974 297219458 691784349 127199134 230283028 714581445 187216625 914389804 219070026 594931582 733181086 61527713 119299625 210542975 98205800 576198669 847094743 588136882 184027894 388987266 679368933 600973459 999299035 652501551 685054974 600311609 19052357 487294629 838861812 357945305 397803868 873163648 256099240 590036882 141317418 322950382 648113916 256857388 488287506 115895015 413935242 607351332 336838967 93236941 531284971 864275224 663558942 600699511 432395166 61687437 166128433 924319132 645218100 498858429 450811986 75733581 342763734 280598992 265147494 571735982 92897092 890615723 139824515 204720752 550828856 531312281 11535872 104796881 517167952 137869239 703132962 661296511 668952900 616810643 263996919 706832767 414757864 202280327 950819115 505079488 736108334 586470918 740270985 578928995 697142215 331446201 843705898 420957860 186768656 951066289 704656359 970798043 737774680 100815174 313726157 465849350 548289180 416047589 895370917 482144849 377829061 853290074 387256671 429925235 677588198 738182942 804297262 787182660 73949999 534011060 587878098 590842760 621197512 9789932 372442148 770512297 868447769 238342238 982146725 190627662 604396643 206616198 286859214 562845749 491198131 452117603 717128664 534510160 164303969 86281179 510157582 760084760 600021426 592737959 696366469 158830940 589996146 363204484 276164290 154785996 317817155 141464118 702068474 198413912 992515180 836092244 459435943 807794985 536391432 256318438 908975081 103356107 542189267 940588621 417110433 619855825 585786060 652479684 999334957 928301606 128566847 610921969 668756557 44121386 900900092 645611828 971999230 496634527 800696849 496877001 700910431 716899312 389204350 42063360 530672210 482285520 52861731 440683562 979811413 699138840 419941576 289864073 767911950 97563657 306735254 466584363 665746258 176169079 75852971 351365913 552815060 997105232 603932837 957679775 118798400 336814479 644461670 917679111 134637399 142356761 901312816 38571864 35544052 144002414 839305610 164360569 457051444 559386459 232447358 759589460 465645257 778297720 994707076 741291442 264683822 955612967 332803057 955060210 516026254 846644236 139170996 411323083 416032768 536311908 292569381 727298489 163107859 173404644 615542269 686685089 903400562 202757601 109699217 668877895 98940594 811488882 43728910 975533917 982658264 250644154 618687668 92131841 276635267 101693208 696824737 622225690 189588392 642043893 535838526 338427054 170177753 960897913 753351694 909364597 222653679 153256961 932202863 944103644 379513095 23412185 469067242 203584626 79615281 633401979 226864232 639986652 693339196 58703339 556609318 261283831 33054343 378217608 429362988 235443445 700566662 904239278 586062073 540836127 873986654 795748272 815528085 92064226 571800788 507710146 290856240 805829046 276847508 523328688 655028610 851783693 496327090 330959059 176142491 13697178 625516052 977975469 924639673 753935488 257822934 895312489 508619554 28310101 836672465 697810866 360812414 797296776 385258426 366899400 860975538 123882620 957852357 223595024 785793898 6724661 768717997 847718660 320788929 654813134 597049856 978110868 391011038 726063211 930511777 737639412 955537838 340806283 383023356 249822672 671502268 269383990 930362939 790787578 794886289 4609739 421476857 930271694 618480240 462880803 768871917 466723907 669460489 309984523 141326138 501918600 65386682 312858691 975913838 284548078 361969759 794703232 126597177 701065573 693193890 690838225 579847086 870636825 131922064 571257499 267435616 295782549 284078275 165278477 190203643 382558163 941658835 335401560 528952510 577203436 246492705 85844195 763827161 334056221 857347723 393222458 679719687 608413041 827139546 617267638 88327416 481060617 158118551 46036234 183225791 532136751 225498153 865299795 869332186 194757501 759637796 148069695 342517902 251599599 12569106 393424646 811808262 130842751 960323325 598512197 332903630 523949457 423350002 266473648 362610206 573033858 138692437 484224956 533952915 371746370 220380238 214871207 139034166 182854239 659461782 334987835 967364611 372998591 1941790 763969650 167197319 136187536 55745598 881815391 891813993 626539379 419309902 709586411 588824511 488705402 24210117 497217231 696981508 809642339 643693125 25694911 956261850 935230127 79937476 34829649 710730328 33343770 400087835 715845270 524082526 753747855 316987178 148970439 316268598 920747840 350478050 336997239 204569966 865091914 893389570 620658468 830235576 99470253 686206576 436282565 937319221 600709495 912005718 129794764 56661991 166146154 267507679 242011923 99740115 948119634 365377590 163450634 234594130 548641216 310993848 855771298 265497393 944464355 104032232 832552660 373551222 853086190 711680786 163020200 129310436 999887846 480078419 39638349 60178497 553216609 219674108 126354705 913901270 200438167 359144920 888010894 533138664 224153257 367578110 831940100 239128046 813933112 150134295 69854513 732413038 765929782 189040454 660791751 232445617 2721139 738904376 121204014 598878374 690031285 100705972 920558329 721584147 804985202 937546424 490946659 165497423 684645467 662430981 391460416 249035292 509744162 773529433 591500115 317846005 61869504 634937002 432603751 554518746 526339724 317016681 660536191 574748431 779713725 48127135 570655533 144710409 386306870 938809102 91532864 643606744 282482445 618264297 575504149 364404771 97185059 930348430 200005597 543512915 753293830 828723131 512936354 490993053 245538832 62015499 336582227 889120428 684192518 745946116 807536223 712527521 71570859 41096463 102331628 285639712 881665690 555241624 148923293 363418034 956171348 654601506 922333738 278174126 607812881 157783339 341679702 612208448 563734010 6574180 517745532 854582428 554684125 561647040 376735217 448078559 34482288 437827777 252889978 110474845 480190833 850929682 821006887 585681454 312693142 87266598 667079739 360621783 102406166 230223319 569854723 241436131 776013027 666028328 821741082 372756835 455453978 245079076 443896071 628570127 976630452 223638341 846732765 529382246 492187159 213125214 844464998 621639584 338653503 772460352 912922888 350636870 114870478 983799061 47330350 760288128 876990156 699266004 734029213 26713702 11511012 481082354 757344660 934769532 87496909 755136830 905810429 818208565 497783321 732087750 46447688 181597337 286420900 311958803 458963796 774306378 983328764 137926716 739725239 438409936 312137446 119017745 62941705 198654164 665274924 454581077 20943488 608463049 35500081 618637617 870088285 327506368 315839152 685330285 415079020 512889846 816496435 651266080 835018139 670384380 81412223 922935584 611134674 37263298 975396018 167402857 345865388 889859155 260827375 2108453 407333493 701805941 871176777 946094702 31464727 762037420 135880587 204486677 460479758 278520253 188579421 253091727 596065550 48345121 473833428 908972249 270087509 711996275 355809136 65882042 929600667 306325521 575251701 835499963 517099357 85922602 804415702 36907347 686745770 761327004 17168150 94128404 234163343 742439376 416851975 809800308 583022748 619890253 581367916 212684118 561470791 315807745 282933844 730912705 132354804 522115268 320309638 654302861 89689187 742493964 242986310 637388217 835873866 874136557 281326045 787726074 992212239 158570638 624472454 849054867 676575052 538489134 943395310 569787795 940017948 302220049 327326243 688836859 917122522 386559214 456095668 664263413 724209991 166319792 48887167 1261293 191768255 514000929 567387165 186874002 955504350 427339887 228373721 999959669 287521610 36131897 131968111 311582812 550446298 80084572 38634365 763479439 311196074 115225153 545177957 223029881 716796488 270563721 994783 428585266 549686404 561152094 131874852 750869176 688907441 902542087 21498005 605145043 334881991 609460782 211308599 670631140 44957130 834990223 91727033 326910180 526708186 33662658 536951097 399661152 905208352 461891868 6679916 653076884 601243529 742017313 181302041 224540284 702026979 529325363 771426003 77661094 208462857 225399158 272469453 568777464 522086225 842077608 723090570 761046106 182174880 339775543 742431801 833369953 541412935 394104479 890693650 782229933 351256004 719295837 937236488 842917474 479210406 271183888 925869279 640503733 420129774 292446151 383183186 641632938 233097926 213367541 198968438 428863416 443859408 362642995 743814294 96194481 795918982 812715729 588387936 728238994 691240951 174752456 996577007 356451859 339250219 98432042 120689629 347783157 115617895 641368635 398038582 542467947 369814778 472700620 461504360 939598156 455199461 117519342 162249690 395047640 723089061 659929924 581066324 367747589 47145702 843458795 617645011 642815315 479057059 74030515 564165582 124489774 217568625 201960967 265044620 46386845 233662055 305797930 508458618 999226571 101961301 794652270 834307348 535273081 608636091 10538226 592061140 46974003 467763959 911075617 155624710 511754287 454843134 405423278 884238690 299094170 630743549 213004209 759334859 739815627 964064605 577206042 313944076 700574698 196647869 199531683 152237209 199527203 663051352 277582092 580000546 223306226 722885598 632446022 767597426 430952630 494763728 546866427 700648499 786863884 366135688 352600066 506491717 190189807 76506300 550388472 53408993 863024887 549674901 571896780 132770515 596541672 687821466 142480791 265715912 553334748 184565308 741380055 771518188 296969133 652104479 275018937 82466893 804028601 84639231 272941032 368697083 518123562 906519751 81810560 418013477 337280920 397046314 815134364 686002744 721490745 865000296 857778712 992080902 873847151 12072042 128508194 753163652 2338003 27649683 538546674 964552581 731262869 923896231 877143781 347271087 979909841 900899220 442395362 649900119 687757534 26440433 621027095 12720121 450782801 121239811 971393239 172453853 579991717 229669035 976682191 981993657 128364511 926640203 260556790 231353253 26523487 507840972 659231741 173361436 652606226 855837359 486959081 226741278 847094803 235461223 17505838 628934506 332767214 503944893 750113286 161426938 963908434 94882123 948156035 160929494 223061380 601621972 319069908 139855241 545372541 147960423 621939063 386097325 261190593 259610951 733688724 301521702 356276973 350336226 91440289 162098389 227421053 2109292 68124577 884568711 91849538 20316437 888002251 729721960 493059764 72891807 242700520 378106265 35609702 507534810 639303607 795045489 432386644 944473147 703323055 288140336 747420794 537412256 417660219 745048011 808809781 912386089 718358365 460369589 105084300 754867684 956173285 335405195 711510344 907197769 825680093 31697275 566648727 790801041 389140423 410909845 570277017 917591397 500463426 408629163 104081255 10875940 852757749 343575172 322899937 557033107 107828450 475113605 634186410 612756737 383656234 145530496 860238499 878812082 578690930 198146594 979272306 39851613 443873184 522953698 239060503 690271235 970277058 160597471 276912927 625877436 630761080 991297419 877867420 827204476 518342545 39767795 170986990 92544875 453767683 283547356 683923659 723826996 466481522 361741619 329289281 282266609 915948103 536669026 337780408 394297543 417366509 656132058 284894230 749487529 909211617 944959982 35538678 296751700 712046713 315433255 174740681 976044457 98057185 335587132 429903949 192464304 659011150 631703490 103563980 984210232 961410126 604652210 658535762 333263574 182457075 647500348 768620354 192473810 257890841 922027746 557931305 82126030 57090945 639449624 428037634 332274216 955144587 533101175 346527047 732760868 579596250 429243887 182075027 309909216 771873379 632300898 268701634 953530167 207543461 275637829 530132947 334219585 39155554 206469396 958474313 498172117 50922581 526599720 656527344 157269760 987774402 176077132 644157945 179616636 487593467 137127859 693087052 195057690 877995111 371169187 573339302 635209925 163456421 680338519 621366435 561745613 29128628 163362653 253138322 493564152 737500787 470726285 143791610 492101449 108132551 661175197 785025653 647497976 824082032 215037314 425133345 615628612 567728413 615304909 1544518 301205331 796662078 379341634 497024287 137614843 659809229 766316425 554073052 856282578 828267194 670246003 732963961 238129163 830564951 333034252 273755731 94095323 761607533 548320745 420396939 910887186 34534350 189910292 631134101 724954285 897017299 684985394 231194566 699206010 680507580 941813658 861207388 746816826 813355790 706719968 510399693 729542968 856866205 699142876 431390789 405303064 626746663 944769578 883696862 769503235 784485985 41271303 142431933 831846667 316652898 719854938 669764304 522181607 270987846 974010215 666541597 638913913 911477193 336183581 20049728 414276376 682317360 858130176 943049709 682130135 342119682 495197899 201098555 588626300 121737845 593838325 91018961 805728291 629918898 488819606 768056004 323981244 548443965 128748626 911129427 829681728 51290610 520744283 247077493 117354178 2871310 133108129 54619201 99649971 858480992 538225010 329702866 91098489 168484135 479010324 262999139 611880422 163247816 931368548 414292202 674417593 297052979 126217730 225678528 2980048 114053136 899512507 992652778 468237430 576623304 961584033 875053788 230511584 247722408 558699149 134547228 816959068 394328001 96741937 42477959 286351707 660943703 163911926 160052631 164542590 994024780 655017278 434740197 735088256 285647309 271889458 404788619 247784609 107355089 22250836 600947540 519309924 373940412 869950528 515990221 576499417 143327105 68816062 58098595 542567181 369578058 787095925 118593290 955373707 832202440 503137437 56483766 810703764 219861228 565208168 379690051 343089025 289868170 803452890 359675247 554014862 887647805 157396582 529487381 711253645 698733863 267481763 111118896 738295147 177383051 961484933 125953700 321591361 880563234 69499392 778836580 670710622 788308288 528727847 621021537 803829137 568854183 5255277 526740018 635517188 428908158 503794785 257467129 556405435 772663088 394508822 690967848 824419356 929005451 636311703 717863365 285881897 429506892 495650111 751771846 389615946 295518291 959375859 333028189 251515845 11561557 377129514 959907472 652679331 887729802 386071818 772563518 293775280 268256760 5277102 409133675 905250888 266252381 370839706 411756739 569092017 8161360 712823237 472770899 338874608 151222391 148974458 117987229 720283981 373372283 728959427 754415505 446792896 624646937 949643505 957415361 395259146 722356150 405535452 573652465 520498753 727059254 681069611 125645157 411020030 376892617 97204775 188835407 710262053 582144097 757921737 117597861 603095011 98522710 225050750 229260375 809533558 611674228 300480474 874552281 862364649 508748614 742207581 894259043 756531970 9173797 514951072 667234452 242778263 375121015 642223503 633488493 156546088 538462764 632817734 689131757 303589235 184167147 750328218 774068264 19639144 381127931 560207915 512256997 486148843 519824659 291638407 698983795 492733951 928093826 988210498 374570752 495715819 415904837 222774720 987343067 236230366 22892327 298563361 794386841 438866225 93462569 15171416 698000770 980425773 822000361 372945834 85925141 966464603 871358766 732018269 917740509 406724423 127447170 346136695 2941692 595047389 576006264 719689783 774649048 847026182 595312905 709128046 270004549 530229910 301264026 792593784 196749178 91188566 76833119 507894909 453106620 239376441 385436753 844850926 573202567 941951776 923704280 892646142 387541460 160930853 23542252 217282695 164869941 597139535 594669280 420456723 323702349 572570158 711806784 536746118 465642713 781557718 594712821 997293644 832788667 627626813 269923243 644229900 503427005 191081213 508508500 796783062 958636251 632863364 608190941 315155678 360035859 580666030 76242378 734286721 32358761 535674707 292449105 548905151 881863843 465155707 422306579 642743455 597276102 456925805 768079539 849568977 175911599 673988724 784705559 983691838 143722442 520491466 582963458 487075866 284622233 449958716 857230816 550931008 232005906 858264179 874886178 371425744 311335848 802152918 645752650 382488199 672238577 58312109 299342562 482958840 220530517 89997970 186764226 45578554 227153982 834834996 725809250 141273142 732545769 620702211 658752622 428326647 479879710 556082451 841596642 262853655 721054234 919627659 587851384 806669793 247523347 919546520 658323634 939208356 169490060 619980844 280523639 342110561 638866992 877536340 284613279 101510005 22155650 998320963 294289708 801445177 52687447 989511522 574551570 338299415 501771512 793184676 113226556 806780587 195522964 434143260 322062341 274939356 35390764 591029076 580717722 354684251 190452101 939950753 855998328 619669406 437369102 23967004 210207531 200485174 862045906 894997621 566316417 675217555 446310205 284445420 966599380 608073128 748306718 335889299 227998962 355135300 906775553 96951202 148625847 580615004 373891239 308447288 913994943 120408052 762553619 522257426 492030541 553618117 250738586 757140079 890960918 285012067 240840682 936384989 633562027 360512895 834087755 527077991 401966503 949239224 312994085 542832177 295514905 670663176 494248671 492925654 934944778 557799429 654729605 293863144 948885821 787080026 382297816 272522553 763802402 866372913 487654038 214628358 854877774 625920321 40351449 871809611 931713565 448458438 150667105 378300946 456765491 682213872 404185053 191925452 857764979 382709774 330143930 55637198 704814996 43297842 87114604 603020589 53726696 126690059 87557176 863470584 511921251 524344297 118825419 830001655 736179658 142793553 155578315 333837140 546572924 206084094 613004719 884855551 442212731 894762871 174003033 536864833 797078098 367787358 384009896 463547446 853830781 553813735 225606160 972323028 715902136 177817311 114803602 716629501 904849449 597733480 945612915 816680354 752072804 443477197 840116622 174916274 412463374 717197915 290500481 124223623 899061180 311127798 542328736 399984066 432603046 275430883 743038395 563940577 232882420 976963008 130735299 623289854 987468005 964187112 515677368 133035202 374387606 913768292 246829289 47727444 959179415 341325014 593364111 541252449 442117005 911847911 539859272 222615276 688705095 359747896 316694230 532889995 485143469 444091296 962082052 31741600 447058324 962846488 604395275 268783433 547185423 323718138 458524665 513166850 994711034 776702668 148079193 171144039 809277769 137013833 201742477 728926896 626005435 849346071 646433845 615764663 650605540 388648380 418335264 37143753 407725169 707226192 495420752 1937534 999606770 358681515 274075984 854507929 105466974 904066522 231792980 718683375 900482571 46952988 603562038 727143437 879005163 700947318 261977727 357062087 228778202 69236394 332225825 569572370 756170149 633014118 680763752 225704825 463189405 68783980 164478263 175718548 425656734 591539597 577532180 483831384 758469992 312976233 302525502 634463256 839690632 27155680 34909250 487793696 69965809 953161898 180541844 300315604 363760410 148892416 178397418 333382513 312762965 993470257 173231553 968871126 614302060 751563007 212691480 234230671 648807531 557162954 800186559 239828731 280030263 627927705 389667925 518212227 831955329 280676180 692174592 442557332 454930977 397539502 566624465 929394983 454921620 896123004 158076854 65106581 688638686 274968868 114135777 993599435 982399281 699597128 965694194 358575873 372384626 445099150 276427192 594569140 70391119 238756637 504278218 477145823 888715526 944626475 122051693 471454363 618410204 757020548 489157404 103579011 975987480 613626248 428189409 631424613 274290786 619759182 277555796 223570472 667536740 865242849 301481962 920303622 545455766 781931482 816498023 256999910 408464290 102711768 527394519 985152233 142908204 332947651 971143339 481981 197262658 18007824 178992931 440104965 946198983 535915991 545813073 717230504 372936346 808012751 91260311 933628581 628550722 736831253 645232697 967400276 320105711 516641343 534633382 627533710 378355332 630432672 41843771 394431087 509075511 13579441 616639169 629648613 865073287 557715345 815839349 230722931 334403852 237488204 319284112 138614147 137537249 156541972 282955749 42610144 510202142 745397265 897089470 849971623 76829111 711555515 288944361 749386311 384919237 297407125 724197992 740154731 97513841 999083557 968176096 997497102 548946924 868493830 201681966 736221547 580462155 590394548 214315322 364601567 497628641 149816965 691755809 745661191 480297546 172760997 206345947 631275051 430117624 77048081 326099685 969003459 462665239 902516734 9583514 113909470 840042208 765897054 858147896 913768095 509167686 518242942 774390496 776403193 554257171 233574746 514742422 97036741 154025124 883865955 636539405 619142759 204528044 562791341 88800720 502714141 572653721 44597865 300619897 208744963 445872244 736501807 890927385 119769271 364043826 665069557 262823269 518491503 362323471 273115706 673705580 299576429 693713184 414305639 81620234 95380208 893347507 362981096 922557330 367203473 254978188 500107393 450477783 138647084 675111798 414974266 470578528 130788426 267608336 859154116 610213358 723967572 379796090 135205452 7033754 827063617 305412196 569356398 995688575 242303842 7915818 419285952 644903665 18988609 515557987 609261676 75274237 549385748 645692655 436756298 655863446 558104888 496481627 118913087 264629082 76054646 773953050 63406108 860158759 637844818 584819802 946665270 272248235 888137715 54177408 436305701 909552147 96102261 36512327 964591193 850352963 983225406 689951112 319258377 715630293 447460107 182557442 444961390 209044613 808926373 998689371 909526309 4739091 799272161 577914884 589597208 138406531 394769449 901267835 944244250 29173119 698897895 543657440 754838620 921436727 402667809 568519843 121473454 933429703 79384409 659429936 237045079 848675458 426720958 617401929 85483070 631005201 824367320 674894262 868386983 119124634 331587073 471751638 102834559 60438989 615901294 183572780 630391324 78245911 848905998 442106832 540087109 847904400 383815508 671336267 469678119 139411800 376162937 356867102 677587893 258338041 178312026 190497711 372546709 637130806 292326075 519683427 279272827 389244036 51057949 594005665 946083157 640576838 646130532 603987007 9870403 41474242 88924921 528167416 698518882 622760111 956634533 262864498 906455773 596395484 38324212 228042732 633510148 991623471 307892878 489650438 668594441 853368666 491666407 367271615 306084195 732466294 577120091 181859956 47941820 526447010 432185844 108946687 573814599 27638910 101467252 64583022 961533251 599627702 931211460 85533809 928001784 126111292 556334758 72201020 993852031 469055154 172846479 252137609 481323580 922922663 459284081 186401491 784888268 941708492 5817902 17815040 166249339 418861206 499179632 352278462 341759187 797048932 21809010 601139681 552766251 723420903 838431628 171647739 222791113 802719353 998413309 326882989 952165767 486049096 75054938 922150817 323359791 305501844 276198565 982765788 170027396 93326702 264570820 886786870 255481447 666628247 993676846 2960415 388504822 606786098 426868011 266138145 399324978 854396435 999792504 665790774 764533388 58595016 567978574 13122734 674174783 653892888 714584306 570561220 484736122 150108730 391239868 585583962 169433280 273500402 335997407 552039593 607024736 38207077 652267820 861209994 69045046 411543580 77078837 892997886 863108799 727454556 10152045 631943690 37051811 163753607 82200107 76244129 358131798 976802005 821550436 660883807 400535105 925776498 256309282 570516636 444032371 720629446 587728112 713677319 641145512 247352623 370628652 333771740 80191592 43087710 129350729 563876573 816804351 971156771 879414693 727142922 620773377 554071051 873929920 44572806 381592577 473485866 495240063 299593298 50860039 827779640 627696101 323294851 828140354 407536308 703757932 401442626 190697682 38121934 3662479 523624192 898906443 643124954 63958932 7408598 734593164 545312538 70014126 262911290 250924037 239488835 920223327 307033815 684289272 890309433 225672383 215216965 100764810 895806493 61182733 502324768 595817294 808056782 22642243 63477805 854600716 990967396 889809637 141494646 610870567 682832968 903283821 236815763 293560774 426107644 162887475 862155209 263502871 897725828 138286445 935358537 513500246 637716596 630660214 299541015 97577911 898152019 161364795 551932786 497867548 864599964 338512203 110091366 29805241 296593941 778354425 532168660 278851884 136999960 886087844 778581039 941649494 321948967 596307443 78755153 142868321 746508045 778865540 895628568 130275331 165734177 153182910 643539439 420056196 566847340 904367676 195439672 830263539 982983653 409336619 689860791 888081708 841771477 913774312 294660966 748745610 557252269 282671526 56827241 647747314 71436003 285597292 890381576 136175152 472332249 570110781 300458782 869792404 214940383 746109646 124449731 877654738 231065265 301349822 73825841 768853618 47829907 53853888 929622792 88656993 491072454 944976343 521213355 182309711 819072189 745900712 441799108 958074271 698639508 631218675 534522300 27939018 873216602 483569769 914401790 226840117 466209217 814900330 755869834 110144215 465608627 37631862 871222792 159679908 339291407 914313811 812666328 664601233 765468099 363983728 926022363 882656993 288443097 95692666 775164518 928419579 710500330 123189194 184973059 30665184 491082611 119254616 249488437 688560400 689098683 540458939 127796995 144606585 40084487 575845299 681014600 834441022 478002980 706932889 702388328 490561548 604871357 381821560 584733700 233699252 209760621 186279734 876335809 381391351 637333777 615476829 761840703 323590140 276009620 262647971 911433168 701685051 935263322 705546345 309881202 705676196 864274736 116566630 609875416 380959314 554651774 764628480 488620145 338543040 135297429 629568400 179855756 887587872 304689633 63839899 271991801 925197524 335285518 421097761 502906239 587103829 839972533 51118392 172621547 113078656 419031689 742068060 747191154 294895035 430575760 184179721 825113324 131375643 745327688 451499366 639199193 946185304 920734629 115507610 379268943 909789006 716808378 148869943 264617146 143225991 753079126 100333382 188295118 620301104 187041272 591650555 166151961 260503425 430156647 99512113 654956038 586520353 774669840 190743840 702435377 47744291 852540794 187198948 362013824 425109952 660469234 166358491 417602958 572794707 59885670 864262681 971517118 149912386 353762667 295598405 607319549 24587105 867457657 975037677 78940228 16015347 503828726 843755187 628794828 257988017 75831314 969097694 228547557 51726579 553062470 579320477 612600940 851903504 467917596 613566820 13043202 95199361 489003568 539318792 932796947 708929817 299664405 66838769 113183834 525744578 402648124 206220737 208126182 824580086 646471560 460075609 554888862 492318338 663533512 548924605 588353131 390986870 864414415 378230258 906935283 337226378 271817760 858236906 481935726 271279949 462344846 291371727 165214169 346756513 350693909 914411340 592197553 190134611 188549120 72610994 739530843 695122700 623966026 378053125 24188502 774057331 994587165 101907249 574666187 110938893 157164110 975729861 279918417 877247106 545003562 529717288 988477178 191869451 388534331 241812666 778428046 516690843 855046889 980572309 277350648 930439504 866572623 705753353 382016096 612548226 677274640 18634667 781892790 100724442 271504177 540432225 523424408 499933715 707177117 112218999 505355311 225843884 101437478 385673357 567484730 374781428 917777485 968124298 554996178 196501890 64811972 775832659 389202223 910805819 772168607 336003025 894225399 926579942 421367068 312642434 606010134 773453191 45909289 352399682 512002034 104942955 907375963 219176463 232639052 773693730 760680616 681477564 804011741 480472722 95758752 696378735 525569307 860832186 733865816 79865794 561243517 634575356 951619617 69233577 116951645 470735612 633575109 608230753 667898768 467775055 361728089 571996582 847855014 94041686 950493535 153230972 638847470 47748795 152411963 364162133 657954257 350500329 134246571 342009583 711150747 731469396 686107935 517937982 86890226 945632472 346792464 322097549 826612322 771744713 4084085 228501193 823280354 246142550 443159829 652296563 253321043 622444861 817554736 875042960 474808048 375822387 226058726 731450096 303199914 438821782 744454169 352217472 649930894 289272405 773540523 741841120 132028569 382784701 955030871 276390921 248257805 312653808 822374754 810996847 336564615 258521412 966141555 770314477 754362726 435184932 388722373 882045865 605908888 347822215 690434044 643234792 768804546 127065795 956547665 899278046 714813575 439755271 440867380 404656587 705167423 207069001 692763043 977848606 901137626 297175108 448349090 727163399 148938848 350108130 345689083 231511418 678063861 998029340 179742115 27399947 854426619 569942414 191393707 296872376 508464322 231924876 66393481 236592821 164050165 932201238 878102580 545854681 518486988 594331078 622137570 614586314 278101273 342423355 88103643 310640737 7274832 301645412 714148342 816035244 350128493 13337266 327120317 383870978 647967967 167805989 206001464 502076925 693554352 53854749 22511229 616899025 405406860 958971993 721536259 204374679 32408834 578239462 696292806 722207609 666480706 261299536 542860379 751922756 879759850 528689224 624769664 907254335 961717482 194000887 431262478 535558065 354033618 281974299 220254118 247507421 802039841 195133329 612772184 252472828 526363879 585874804 12477784 1760751 567858575 899576939 261316363 935440081 873482923 495657536 672230856 612626050 56561738 254918384 501635517 584951324 251718605 580541977 728757283 930817409 865967577 737565395 669781325 817570992 78795131 335767485 726362964 372939256 38118119 84355341 598047803 968073063 206747521 103286178 288266103 859672779 153928953 348340449 52186994 893360533 929640397 583766002 766010783 905605077 152765114 762287650 311539218 117314181 741926616 916659573 967743899 256409601 955037699 132656577 605905724 939556658 541080731 675123266 365891263 282960247 163955863 863849582 679948068 374112148 502654519 125115147 367284520 657732113 231471723 701055809 123529897 474837764 289621534 538953942 573999513 411221642 635667417 424111904 921217107 876025722 222604037 873004764 266095 180521535 880230290 523611314 821860363 652011848 901865548 599190368 489768661 323711002 281944861 880414674 400748435 594948710 403568784 814992521 644393005 212600561 512019031 652951872 909462684 8630369 602483155 533959379 650074634 627039673 93670217 806294944 96872608 177027246 260063108 472010823 881400406 288346893 606337673 338156393 421942906 657612532 646242376 730151249 146583826 279648071 47715260 95017976 675333739 446530699 568192249 642516793 339336376 725967501 118448074 307203951 166983035 707391382 20030643 835428904 460462104 784859688 87719396 918420904 616954487 838445325 687480057 748070156 471607248 77539392 79000423 68076666 114756711 666903817 789033974 536321098 990501697 898505068 383635149 697720239 268562576 408002217 969184253 75293742 728518997 983143119 320213807 484112312 410342743 377681935 8234066 216795926 960133367 690659311 807246696 878742970 494787894 382215342 148965151 786909971 793798029 775810695 718566811 778771926 221108004 668884187 762405539 657098902 986437197 110797818 400268085 577414183 344332640 970584957 697756716 209192027 9627824 140006913 155933203 617383697 575238521 3833801 598241427 846834756 682667671 369097473 613650666 996546500 592725337 316058833 422090504 978760048 833438476 858201350 43327485 656109163 933428898 195665589 839824471 289348017 892744851 597771578 706093662 246092310 149235686 952186341 860305192 94289592 638987867 118428065 335830781 519849917 223933511 370249498 918694584 132071904 173397491 947575483 549583948 368334220 547839021 480004052 443861847 919403815 249493659 93969700 341719491 843755121 776737877 387214955 418236443 247276590 293249260 726912029 161570265 180582145 957734079 783556811 757865071 11100021 734038678 448901826 55867244 529458779 647796728 360506900 143967460 880059769 247755596 874905320 481951557 406756558 746020129 926702596 328554570 424827796 938921728 981327368 836817501 393340080 957042438 842956046 936005700 353521063 706659740 224619617 282746686 969912915 396833987 574118678 858187692 129921483 108008820 381157908 33758723 969137069 768126800 213369538 682641452 705848202 125168543 236012659 399102826 71642204 689035450 829356984 104073133 321722598 816497069 575568556 446594869 690070725 470849564 542151050 803224215 929266615 613880133 418041555 823414157 639383981 197151891 440115527 467338162 555986407 65289429 969877841 163695688 202989364 846607401 687242264 6884738 419624212 691489219 99318212 12486944 426361376 110685831 692567342 784378710 738244511 88852586 42161666 256091909 663874608 17471110 313138151 964876133 717534946 290397983 426816548 486497887 594281854 782856515 277510280 818499542 879434715 952785913 565736879 56163000 116725643 82554947 50285674 966251113 38489606 950983738 740375571 988184277 520525564 328880160 326332820 253120309 631570237 492550067 863760036 875167836 871208075 530765121 787153681 77522958 165978221 961859523 68593700 537689579 562820187 868277648 816019529 542292771 356673090 966279456 881940143 961999371 191923583 139283872 803058285 833564562 371816194 512618383 76004985 321847852 399334120 867973003 106947825 209054256 492869482 455244667 164814932 517380076 393237973 412291419 104782291 338720427 313095410 592720204 140567768 445886306 903335152 24382095 186995755 800969229 21712618 272400715 100190585 372065386 560535421 256735156 560640276 45385585 419066488 41263810 704089107 37535627 842337701 644347128 594409041 61895045 907710139 467852231 436244811 475139749 834756285 425905548 71365540 124320818 88968263 71973712 434999694 675196917 292527884 514835507 464951491 424209306 860339093 667990804 829242882 758522579 36088403 599129902 155688925 253960092 491170604 320381948 628255229 475938230 917529097 693050867 617902250 688836998 822064325 291777946 51164885 853671521 691707254 204310386 681905179 628825159 68874701 128947680 337436003 61092875 455705424 79567060 744648655 874451070 960684533 564111309 449070830 871971944 835805240 303925248 671478699 500397191 745886070 672461188 644946908 927654579 694865712 265043760 423213925 421648332 753653894 986412559 662693973 473752072 432532070 474392501 239907849 378118817 592957702 893053580 64389628 959925956 141166124 710756543 257757405 668816486 361499040 757374807 156435966 696484534 94435139 110167557 370209584 390969448 153035723 583782464 88532618 680603183 708915120 391337590 414209844 424576142 342156577 652876441 618682302 880374394 100272164 195361239 274584128 695937502 540314948 766152188 531694400 361619615 330019547 227438954 213772279 893486317 510692395 737977280 189901523 620170940 605883488 438337530 475258196 685425887 668241719 444177707 947647586 139538706 866573970 61838655 243166975 388165205 82304216 49259983 126833589 496423430 15139633 771258088 897321073 111462175 663732796 801662455 637457330 929783137 459165648 515974460 205520877 124512377 341118555 994193890 811612713 155694406 733618821 617685495 229279484 326730324 84175939 888918439 191757844 610616162 593019986 323593966 412390753 293228741 39731881 435352901 599387779 828395706 616422693 319488737 813550592 214504443 972960371 933713536 848732499 136490918 353170223 611918301 771827750 161394239 370590775 593080260 715854027 572064739 119746435 874384183 613302932 269728719 46168760 143549508 181571621 42029850 839502237 66261273 210892164 767325561 523401239 902811894 849752663 472421360 495809397 548542688 412422007 832374920 286181175 869547793 668995727 615810717 88997636 187530984 129542047 870583927 874833145 149940763 396657653 148597959 500622756 589866004 555296178 498527340 854004516 890455858 686905049 603244092 430296183 772266476 522741585 577976069 604493846 151914410 239186509 484772536 963814134 799281355 674123501 570218813 530351790 544207609 615701148 130235629 692518199 593642748 748501623 154946381 261368069 714101329 9817589 256360313 349766904 337310423 248343047 353695586 20741559 217625676 914533144 393480145 967237950 757769985 3672723 498572092 541745022 910950174 61250421 10082616 533555777 432980137 267822771 166607680 19670357 638843609 622794180 895518397 993898202 924677786 760539741 622889234 251010474 801183111 645199477 75541782 192781594 716115768 326526304 694961025 512069364 149645234 605754410 317895987 565551338 335358720 59820012 533685484 896253936 529345355 799906619 864351803 74194667 552794408 970364130 370083603 234603491 165181613 237200876 779417954 894246913 751657873 266572870 192610281 734578145 22706632 572159430 267669083 389198172 889268931 146787769 382602112 542680661 469331991 102767818 616450898 698240419 971441324 951241603 867879154 823834360 675928293 98480791 8913451 35609513 137868134 807770336 675462291 109632096 839577304 637079592 865839317 368625675 238014938 712610059 182672437 222656934 171274206 987015232 821244935 767290234 890455123 33825727 989606165 793510789 626760995 338202506 864491329 816945019 180954527 472116315 62901890 81308909 213857630 910381541 64473399 124765874 825248667 290935446 825368786 983384011 327326331 293113253 268444866 964140529 713827698 646157091 550501150 780473460 893464311 841771920 703519074 538159577 870319043 95276436 165584408 270871954 70110649 639049587 701445992 612590444 70290612 791610125 146731610 782094413 670193425 405629259 355584876 672716897 792509259 723157948 90996035 148969506 916320366 822418619 273254567 126709326 488077055 236707720 419775580 890803596 331763507 101441267 371023823 768643043 466202871 957598741 104020944 760318584 456456509 96505069 83440552 777806511 937836296 73796351 325655364 457554583 586570146 402098475 306831211 41987441 344924253 785995190 945095542 876652610 48939990 414445060 80975561 51669689 648557684 34277918 166301088 537928466 58041402 718046719 164225691 102442954 924483181 186570604 186164525 466574488 319224537 397577656 754019829 716003612 558258855 986162506 383344318 838167056 927655742 17001233 889987157 213498706 170243000 754462303 462152548 982925730 475928899 508668936 91313362 324997574 359028481 982367363 245693506 671606055 133417843 2936052 617357765 167081122 122135274 5783870 589555916 645736488 647730169 422407912 880408624 19229717 329150459 604647274 882332346 647924405 433263086 688322553 577562471 638168771 384503010 133559020 679442025 309494565 928473062 392567371 423771579 517532068 581784648 312525401 13788980 160661710 88138243 561545392 27064940 419229550 396354101 168367995 12916715 626829166 500275399 637225109 406262440 732494798 565785935 625002380 693604764 813589646 56997714 103362478 276131893 82213816 981993381 352899598 800471252 811338795 577834480 838134525 22970456 718127460 798711688 376600457 289525463 619142507 333850530 238572452 4482991 20413468 403774987 401076290 755525884 439340787 422268402 303455027 776747192 702870278 898934787 37054810 295237150 688779023 430911562 592386218 918172 622083507 379990116 344558452 987112274 629925256 992704363 531033747 123327120 429461389 436570868 60018219 770417214 253127869 458364169 195719657 257434197 876015069 78490169 745590394 388733327 897455769 952700944 731594282 184198800 808074797 409007524 234641583 970955193 74494349 227646074 120078870 283765280 940945597 570690475 504029152 446023290 545985373 689388943 899872488 458148132 802006359 548938376 718778555 807456975 958195573 732918781 360492226 86211026 525572158 24009453 191713605 805146911 772306190 304819055 885172711 330548310 560868773 279935052 867917808 257522520 564887700 408959074 683931176 118330836 6286589 705784023 637967811 908816611 699165358 148304442 72981579 341468510 255542795 267497889 683811719 631616878 606523041 578355324 693465251 605366434 574135469 209516905 10388428 186635266 972920917 619265974 413246369 955948872 300653669 817334422 780028201 570110027 592190929 558238366 966259868 650832828 716983896 227980061 291533708 124861365 769973261 641282758 846943365 824253385 410590875 778224233 446784111 591775868 731130125 399532150 268509802 124348713 253009309 247817378 388267066 9581878 387971141 481116899 37963550 846411628 409381851 249681355 761108918 617668531 289890436 902965961 192563910 263355297 528241342 52742276 611197634 592928154 852452485 467929310 724838277 517128997 490775462 603046208 526361534 796987501 101116705 759263112 422161234 810293814 755644113 611818498 528234348 588321049 427436377 890747175 383863815 363099823 27905820 229380849 799167716 419519444 642006439 775017111 215824129 598920382 734073139 484276972 102633588 532201293 274396556 993888387 322992683 13962906 900680289 468572824 948611690 951547154 461508730 974014771 987108288 201432214 641722008 615649408 636040672 290594502 274394563 877563609 992595567 562667595 904882607 339312044 582042015 994822794 48413750 982082088 323336617 495102611 471321613 259213260 558289666 766352313 820322425 735321422 466981162 80314389 988494568 754566533 485482216 3006793 687494780 265230809 332495861 274110166 520116970 933250798 903929138 659441491 701909610 908470082 945869593 671153454 988298825 459775016 478655297 469335270 201156038 113882396 635239125 118203337 197796186 712276897 158063928 30603334 854724795 583347937 20938424 537300151 182636145 44311832 628149226 637249419 92751525 307479700 724134670 712621103 541166762 167132275 488513061 194300590 208680118 791477775 490008405 504739817 38201268 865253177 658203591 592155523 783499548 469581228 606651803 850250235 54662701 832394215 16585878 175272459 208584106 852037658 907364217 746899069 727314302 824713901 851869624 195896690 726681869 963625176 224417399 325485137 531353969 403574171 144893456 653011823 24366560 960803446 403125130 9660164 340577942 184681305 237411896 925614578 354448683 950186461 142375965 557556239 595885203 952117091 106705765 194302184 840227080 633193138 822845185 415728203 124816220 43111538 497973734 779400985 520231931 220657275 456335790 892218242 433791356 843576955 436468787 841851438 568672314 288185782 308481436 699701969 752088710 973943126 780734102 241685456 33169552 311291734 353760943 240811955 136588665 408323942 342189366 824405068 316417198 784016816 650060168 69396090 954746792 271729515 492359456 992358762 937777878 2619582 171495567 348955320 953731166 438073140 910618251 437261782 793243967 369075179 263172470 665989175 797824431 790373237 385153474 31420601 336861987 250356740 959077179 947548049 677916797 16592580 285698626 8769639 722799425 844865431 110086872 34341390 665355898 834469099 900169586 593767317 301126718 433553977 250171597 449321081 360319244 782931383 836226037 38325572 820681226 530140555 197660420 259581119 397592915 205651333 696174880 396196320 505307095 779308589 50063590 834291182 192124719 937027655 958585265 367605322 695287735 964266203 20793752 430190964 285481132 762126518 10572576 301189304 74933176 603840261 352163806 478740370 622298488 345596429 718050188 449852618 115305285 580736962 77458888 441803923 714550939 562943242 745579696 398147133 805593273 545516965 979130400 859095062 882807472 447528274 587478420 455445833 472865570 238612002 264478363 952462591 683161690 282605997 618018415 907267375 791579177 625086110 103845777 244239003 77053532 151369665 307393686 159093955 161811912 938515181 334523045 732215015 516558127 788682605 707914771 275964120 628267339 203292185 214928300 400299982 986517369 592503782 590544691 338733577 762386797 617468444 949121131 153397449 140425931 139989511 254876034 47403098 155848689 134704961 603441996 533241811 383873448 379153414 659623469 948782099 452913853 592941979 716718885 778297300 737739908 960845569 86987337 175579148 639489038 506666255 143535609 811703282 902185205 327718059 979217971 346101787 627470093 482794277 809325108 60409493 62865933 597950688 602233351 489197273 235544301 215048166 813590283 932068002 530737296 612314620 177843489 785143297 445886724 290650544 573409778 182070811 282158429 586226045 386400756 865612144 762488023 748113020 393644408 770605977 281579176 458806489 784600821 40818831 977554016 605861610 774550462 518815535 121294672 698570183 934135688 753464143 467708128 571423755 400923877 517808004 518463927 422120693 573435339 921602707 672623753 917668270 397085606 832836466 287335938 998660722 15466341 229363346 711505703 671981301 178879492 190549196 494448402 406002205 49852703 291328308 631403608 774806425 622243692 952064373 174964789 327289199 10947298 688008747 205391565 204723239 449565045 714172466 884183481 405506322 586590316 297990989 383412041 544934748 834096203 523718071 837081596 596243887 160210046 134633999 712457357 170262165 407206657 300554356 378790507 698959924 417004628 450412009 236003735 424244009 788928285 704262049 502207389 962232761 40903360 400941355 130006779 369712915 975950024 934680846 816499780 8227590 224114679 424677298 110213348 897250585 367134704 939916142 726911443 87296941 256004788 121482719 371378042 196458440 255343516 863146371 947825149 103278493 558896999 746906150 78405484 345930789 883698466 213513439 644938792 168417005 55529532 92815314 832212230 462210545 468099873 511177774 297488671 869008983 56537023 794168489 252288959 29421228 145119124 67952951 750312609 989877668 438694873 514123977 909488268 380831975 466844203 139606309 93288045 177335849 168833796 318485718 961506818 35424981 467178269 9725227 454353607 466875855 394732434 510509577 512204000 594786267 189096963 950660795 463184458 130475443 461048152 951690632 840279561 693105546 875375284 834771085 360259158 460326759 399121508 126292361 416239550 382363308 252658927 953717886 376395051 501746577 554413376 317834012 619060955 211031059 974850817 881746958 954912871 595747108 373724114 381286553 969930001 501292571 515454487 382824758 397964956 849370283 313207684 296862564 156701288 386394539 794126914 192937397 446128218 99314727 768517665 453510127 667647168 882480823 565201640 26979199 343951825 773743387 605740716 4410890 188701264 631958250 869887571 801011084 991971730 703478043 511325497 873201494 218215593 510391104 836946202 689598430 883074571 527996277 657146970 179873702 963238036 466857216 771641365 175106427 326973358 746619631 550821635 79455694 928284245 986571345 552159234 251474447 152375378 947596313 488278528 734146982 467140710 953211737 397507219 876328416 77508737 242901951 730752205 539639389 474218304 308297487 932962259 202923118 685573937 361225045 320100220 939888714 662366142 18008666 193508946 606621288 64210019 188243098 905170657 65088557 462751479 986760239 87838969 73209267 115663625 213334251 152050328 600246116 788404018 848397642 93386360 437697992 251341041 63821950 967976813 674706596 557313455 634188333 165452921 662690033 320569932 946946080 64693566 567537551 564854005 632645879 737540462 275667563 415066810 45915974 163559669 545160849 962383820 170478661 367165110 842196263 336321879 252655651 355678706 653571734 945981319 361559225 923080369 477415442 9841086 743090981 869771889 891190977 171713978 360968290 740620367 790472425 49646304 858836272 368840923 243870941 778634145 222859329 96936028 239984896 101869257 87007324 827508888 699150905 149049672 989214553 883458951 723540884 912058853 749837484 572380302 962924249 874237673 623432934 75449816 370797830 753360886 341830081 228145376 613116656 376950386 469213479 148781158 892895240 9344222 247818865 726869255 933174743 10771442 698674168 365261426 274597241 177006931 907549155 134633981 226673376 630771071 869755213 369553734 855111575 695918078 950582611 600100708 627140798 805351129 773996941 760180205 61634477 138827439 334527568 139608950 863717319 887381950 594454888 801427533 179095839 458177422 330821562 881710526 833783892 864803497 796621095 93741817 876577267 741321437 552162227 580490889 648909413 307035263 378416565 67074297 777269030 824293785 337572746 55211898 173157577 856119447 118338005 20342058 278110385 154726651 745208200 376669546 478537132 252459555 347238950 782945962 54693041 32405454 953128444 323417082 348917921 464733489 829953613 441745612 725827203 386473493 56412642 398794899 363453143 162475841 929126583 365959578 178351262 15404520 362639359 55393214 423530888 382137456 612767840 899028307 662369231 122818385 996177414 36034349 75622278 564223209 22083293 978173304 948805466 53615968 661899967 468872041 13166949 667523878 4321680 251184613 999651201 351154528 491306528 548805079 581686421 141754861 868517963 193367238 293929326 794243360 210401504 666544899 494102341 551152861 75072702 446106173 669857670 313633556 996091823 671091535 2144585 906144619 728254439 349371508 21146215 628904248 959413940 839667438 429861311 179444333 83013220 502811155 584990131 342385684 883145375 241788373 74107226 429998135 413226783 889006213 136717472 163477721 997517227 553330340 881458091 2087964 550175588 926914407 805966839 510555739 355031553 124684858 51941076 739767006 413714249 459646932 121325285 638144448 300818791 579996115 832409175 113946290 310555228 394070799 531130589 998752319 974670579 515847732 342854783 493048336 290580830 280795118 744922310 686106427 299752369 900130943 50222837 472202368 480881748 843610678 757239132 433860642 249646398 135404802 17428507 290252817 821526999 182854293 793213107 180477750 215692631 53141444 459713000 221644989 655643240 581637645 681436344 388586979 724587470 34527322 892234230 333494379 393007823 920856012 411244270 699219013 933983064 489264101 439016980 145790010 167299369 107443381 593041086 621630271 843372857 513086061 622379786 664262207 34258080 892533712 311789841 915302304 471425205 981218747 621306556 474960677 285916595 82874696 26115477 556117155 759460026 610976070 479149003 969744631 270725232 180595964 145440193 767953689 512529053 296476862 13733983 926695138 561069763 827520350 837084947 131168775 435264627 186641833 666799577 684762141 119824980 616844248 222732512 751331654 731595973 265932606 622813849 421708275 913624916 500284585 106468940 86048847 496868403 233171691 821846260 477795444 5339984 69828771 968118749 711487536 788419851 124869818 194023225 665148594 361245391 922364919 894231790 178427802 872425612 377552904 966384575 203153444 666844239 316695550 963422116 7361514 648976011 746522523 735516023 969077536 957606775 342690967 313174367 504338394 704371432 66457494 893468277 379655580 531488643 631479310 930146833 766929847 14402151 594115193 276843832 662701903 666324170 362532682 521302639 47900046 78440263 923016011 926390063 440140680 117753990 928930579 126889774 384278566 948000531 132470881 720379531 982040042 155073469 481895 333048877 367033023 772486428 422733101 297495880 372755016 643626258 577170489 322776499 199458244 372537088 42123997 171220559 548489459 694218181 261942595 485500209 724450491 769167768 402508409 765826913 30282907 186142352 964432821 383038594 603638765 427291914 455253172 465310950 392904955 685910985 403068768 80660284 749385521 113180789 146559215 376952480 336031382 46615755 236032759 430161067 45460577 182984805 895377908 982359631 777173568 131680463 779114448 878363821 161837970 39125044 603765147 662407820 712196648 992475808 717600469 545679622 442848664 400537992 473057333 143210492 188622019 255284552 206257561 468049877 563112413 274981601 976367364 70364284 985379636 892419664 613457908 16684496 960678552 69435997 883036856 755533471 783677886 225099023 866032245 361561052 649668366 2854977 974090304 576856539 427110742 154437595 347688447 665512419 888208072 50852384 558294981 785969674 662803239 725285609 385290242 877296588 59548513 65162360 960897413 722551568 521502755 880683211 799005465 972111143 80073511 722991671 948482634 895439243 363990770 726317482 388333925 228842921 637087144 479373506 624418108 935691105 980660468 879166520 753348366 198881865 848954501 202858104 249515430 451860901 162101380 524306980 491674861 871057509 821887258 130246467 991077462 385292453 361801686 364627624 983650268 543505851 729843625 484715448 566049481 250731478 56421566 908875362 95567511 307768879 524492980 734439724 175942036 211914147 958112669 664657042 717841383 213241037 274339664 198526495 751338107 722296818 13260789 257610305 379886069 285351348 208858960 295143416 548477149 994697114 4956121 648268691 228318411 763145221 826013963 782791327 128032022 702165466 603796850 944768709 468610444 303547709 938124994 949727036 239742395 925669047 752361345 823990657 926464345 55094139 10569053 526710504 616783826 818440621 871300811 731032481 32209665 145958268 220495378 66441898 190766277 573313657 982744635 648317216 238037427 169760929 702629879 992835989 873350865 4216624 511260546 786646017 227341498 145637134 130811050 267997949 345366003 266749405 380640158 684441300 316427240 906481187 415920913 928375418 537109228 708978725 586127079 165826669 866012849 38223279 112356193 962062238 625689051 132271234 25172655 934312746 869510538 580142999 701719558 295303362 226984281 834762314 450285649 972148920 957892685 868995314 203640632 446720296 960323567 350021167 526561400 272845369 777805999 458171180 528840133 621947120 796061408 284913810 783824251 196844288 259489441 409394758 517922849 493962076 769536129 438830725 2899804 703925932 19804401 410272578 381650680 609401416 682038260 429935333 460144159 246096287 606985698 215503660 98030164 733817896 527616187 353429903 398820990 674115679 646862666 84165846 274469416 848910756 750226160 550065927 435738468 799078996 746444227 79765599 30938226 626703195 599880675 868746132 76467393 426856118 667825657 366472237 14119443 570886025 151011114 940199787 8960378 556919735 869925861 278320757 349754868 299519404 472293086 775472518 109693300 972002280 779936945 375645596 277301713 987646815 208634428 863083313 383450258 170170710 673150088 80980963 419074936 128165276 426538564 384400838 599370185 769561174 172434268 31590901 970693426 838287743 722021761 993824451 463174770 115984990 350665120 741990248 593074924 894504970 390794727 753667804 293929896 690818439 89194846 738986891 271119871 867208543 335244295 715458814 698739266 994011525 137420453 973936846 307289448 716539955 709489948 703913314 782174003 997019756 141146713 315848721 772323428 551102517 860858671 464738741 149634932 383866693 100762341 795075613 186397107 775464620 861137585 676101479 857201542 700640118 390338341 394000817 306909492 462057472 161213131 433684181 352231113 271630633 400700855 444410464 623653865 932356044 478492730 577490948 805841509 105437045 564913280 928837116 365112948 197475213 512695313 684784432 691709531 708917249 903791233 90462630 165201306 511050092 459495679 679578673 660966360 585171495 531516596 79999053 964748022 875338801 529829589 616596103 824060201 493746599 783638067 811872955 965725070 147445513 650051321 425592113 904022042 15557377 907000293 172116999 69391770 853564243 540473001 921557080 537980350 797354551 891303118 497454630 619302394 452514593 243287179 482987526 747284699 284092765 391060898 985959892 129254242 847401721 560496653 468881632 177714608 718777920 654076274 655956403 213828114 786485138 141898613 263997764 744633740 836006301 299827198 68139862 27756854 902665302 617437982 394379193 340991534 451126560 569370271 618939538 602110596 525944083 330453184 176844520 737255647 971171881 269177455 857360399 970412241 909745525 447864494 103642511 645222304 493169748 87063889 835859785 371597187 673206610 406436064 632961186 605959732 38430367 460425678 696083761 373523817 460517753 130768503 712518553 582506849 136652279 996580030 102335483 529703540 69247584 418103384 61793534 756125919 579784290 898414190 394197259 390365088 572171541 807948388 739926143 446263094 660318602 73003756 714402912 760628959 542319613 64286591 870088152 904717203 700363113 474784971 452161871 554181726 910153541 38228293 784676071 405292796 989342799 351597869 583342952 858876425 351504054 123170093 926676992 564201367 442168047 695515253 714052464 780616259 227679789 981976576 522576134 311937812 724904198 794066920 702361401 104723373 547396952 74839065 680338377 517470329 452030232 522935604 361612381 258051349 234692462 864922590 903383679 702586587 426118672 282399648 607397384 648650600 88946217 350972888 168777485 863089767 686035213 515975814 827308622 638936437 668659153 402073129 881223367 491900566 614278490 687465392 419390749 768760813 564505991 574327066 969997011 656977951 984147593 500218680 756503179 918939791 527952315 995221236 312485887 683013736 744842336 574426500 956320585 777193491 770074771 702571311 123193337 239432796 899216983 937494762 203159594 729039738 605135000 208830096 577361334 361520490 561572132 976704581 465860702 760708712 399100442 255791456 978331055 640973306 261442829 132932333 541371972 746619876 960772886 380801005 980130730 122391241 149597311 669787619 54743567 354804669 684137145 964772909 827804062 536054117 101704811 686676142 624740615 290793543 827861766 264349210 146267867 136203440 109298602 603197664 167519387 916914841 224219400 521188977 243103165 772753232 447670543 502889428 43465419 383417679 800815382 608505603 801251157 306492629 511587807 571616198 837605275 220057132 218384707 647730053 906945864 329936630 944271236 872127273 709384723 284489373 757579772 816371131 633221071 403896653 905788384 22920760 969277303 733190084 69646164 92901317 631617312 799560967 743389075 722556358 582256275 817398681 304016250 909863873 479614862 952132344 583311974 552888391 456859736 55032802 948071120 511283238 336188628 151100579 478022889 685320200 235894932 25286137 108372711 124775815 468631410 137909533 423805184 719647399 639076510 324707293 962121218 278543077 493232169 76472508 805040683 37662738 979093155 729022417 70643297 898467646 446620885 183407627 437092340 743485174 383806224 423015390 958613976 626529720 884269260 862745072 712661677 424890468 888530979 721177484 994147787 477264813 775692641 419819466 142293174 443494342 186224537 71708867 229513039 313197023 854219260 414821795 500402119 872748332 11270692 373922776 801999803 595746176 893556119 349172331 525309988 555597751 451172894 972089416 992130426 377847703 715010595 48193426 483047309 86949585 526263464 992248726 660507608 806316575 448547138 781601332 16380515 768586908 417356715 730243871 736530388 117251406 867411517 719185979 466222835 469916021 924656133 348606669 275093297 709426181 817636596 484983040 821936424 999575663 971562187 37052393 368839111 47138125 676729821 340674866 160394486 572762555 315236186 305682770 431464678 7695408 681553940 978116942 802727356 590000967 123013642 180716486 635930244 361061006 637115179 907688220 609284241 287545625 132727159 806821571 426152058 885545958 949700017 83316378 343420139 945205846 81498233 432509755 517532377 133722615 762814704 625492591 202644951 601130764 987107408 243009726 333982635 708418310 745632002 373673453 421918450 82105131 96912951 634336901 114312049 849942646 620695889 192758988 779021934 850681891 881071540 553751306 113989715 538124376 4548409 128697192 759936923 369426103 246045796 994325454 711633709 372258561 408118810 746968693 671022738 87742852 712950985 820969821 103793877 976506135 85753326 327026462 440198176 483303021 588174862 682676392 473143321 514311302 473025055 120099832 637903988 834439764 507294812 966956397 836271439 566167198 147279166 926854115 667813227 404996688 284561339 260392088 5471565 62206170 187279413 40722146 278521889 601088100 4731167 982546309 81705080 26842050 962286623 773285440 993132997 105049612 742234711 196956539 808569295 706403252 457675680 188972051 649863076 199933088 433264662 820192402 717863559 802789351 826400760 485024190 899293610 924430365 439791974 252764785 629314242 960269599 304070296 294949932 56679054 515948781 466556162 334146153 262344572 710513292 697165244 619915982 170324043 829608014 96037789 532452455 780326590 334400103 683673602 901915483 123645059 198381313 807347449 833416810 711832197 35283652 217005515 434744633 485483790 952623707 621565511 367111296 866637875 177541232 519390600 182971773 990959669 140865501 245755494 51551143 578795359 208963431 675058750 953582059 942663390 241413088 324490381 886835131 314168195 547558708 646549797 622788400 499938006 509073857 650934890 161679905 442812386 371209447 1671985 358036049 893292870 807141922 898226445 721115080 476522535 735792964 819269396 225781409 524688559 569922855 36184582 895818793 546357556 380662916 352245775 82316634 906254974 432474358 481043497 612168648 771500005 174838836 734601230 978161125 267369365 940730938 300382633 691070609 423193647 647007396 896380274 210469536 528599861 646633798 611449760 842214903 603783721 397268787 89895109 689667689 239485532 382391147 608094121 346782067 670704737 424502333 44661696 753209651 89818818 763668926 146195430 42420679 492709667 333652234 661213673 631623233 378021481 142601755 948673315 426301909 549848979 569141160 427070715 565709742 312972036 683092504 34404059 341935154 809998586 941259388 751022922 119620982 684667312 623025630 925836423 276329965 30907527 973577242 662250814 802089605 835576525 647811095 930512074 129475046 401858627 523073543 483876325 96630295 936183365 298679865 549318006 834872026 868716203 896308201 599018807 686698099 648547369 927766298 612482606 65275820 673870985 145462123 583936767 919673683 137008213 123610774 333888633 779588821 283613982 837942470 809781343 155778121 709248735 411193542 930841963 805071821 277699480 138185963 841407635 193212427 562407980 392947125 345898729 342769043 390347304 827304226 570040069 458280006 141590817 398425870 682942067 759340969 916329349 112150048 227576507 544338455 298255146 594920234 197058242 643952422 254139396 228500474 245371584 336673994 585106108 828384215 916352610 986439425 760804073 552552796 452610021 271021603 717965275 121791567 259866884 995148827 596613177 257307885 108777923 168396981 486601079 147955120 39960422 656130352 289276483 473974014 266939004 476447028 486024614 548409134 991101921 870815081 261620213 215164576 483192904 944488091 212240795 257244586 554444038 518079431 252930303 506652718 382918870 49930602 194425450 904457851 454317424 418418500 494677252 567462196 658689921 697039948 465602624 161441974 748930808 30180435 955274127 502694267 73065572 688505377 343524546 884269861 965158321 419410516 844774194 472399693 489102613 159232851 832774401 875016223 112716246 408184391 133100507 839741323 743908985 90526980 193028583 222138304 96323785 325397396 44804622 638666522 646777344 2010847 545429288 422526622 768552757 365504537 939883600 377605029 808073347 682891987 234113916 903031296 228720184 426078305 126757219 853684729 372342440 98547668 914756385 361552599 464119515 283267595 909001984 318140943 165747206 230629913 789707284 136770053 798838811 153695554 518382167 124535075 180124830 349236443 353461815 48635132 931493091 581689301 46802212 143181985 52216180 749396835 997768056 807678135 394678843 504667509 178430928 872042220 704273943 922805038 271880966 904746445 644263949 392681307 313058689 399232709 333432300 499818979 655317767 253945674 887290630 689790770 2929801 276890486 892944904 831750736 958709430 355866098 156662138 621037649 316729539 663756132 944786561 806885417 751053809 212443963 312515033 284956473 933799167 540218684 458887696 708576377 430479591 667552541 809727268 694085987 163995843 476303243 717734689 272764683 202756075 873995077 712638223 523382105 433925524 983530869 957378774 186736694 483059528 777465457 226233265 789242069 969818154 988107637 980068327 961878896 480891431 643653237 911175650 702846155 293081404 181175812 292511202 440068222 808143489 877961499 15147402 8554814 834259457 533180966 537556702 870116645 500876058 778933375 471013284 279585668 790999288 189487992 546473846 642900174 684723804 265037013 537626807 617594423 757130672 527935856 849644368 936415203 760139411 349643198 163417558 100238032 788873675 394741609 177305773 369942669 879464447 782891949 199335025 643103907 746005710 520776674 202489389 714249119 322940599 184398687 634686165 175626200 409860518 817871974 934446271 268831943 315085575 744876562 992851145 450054464 235449423 870583613 208009746 846697286 980722454 572727237 658600257 732714088 330518690 702220219 795628534 994601608 919997191 272613934 728550209 381592026 684044369 646050231 640277003 359453549 221988183 934971508 575006505 774347542 332991212 830793199 310958775 531558666 108448650 231619022 436401678 232363625 878690134 81589119 15328973 861617412 381693858 831233335 65909717 371897423 542901757 505605415 506723939 471329130 715123582 202622093 349078140 719263107 16110171 416209001 368987631 370421849 371620680 802182639 640845262 727296929 749169350 974675220 829094406 632370641 985118690 886403365 889290985 98630982 343751958 732556360 718293621 334018915 656319693 903916989 845547857 174700546 733015853 873085360 550095666 754974583 869604749 464364053 954117448 905355838 41121025 356353003 211104518 7140085 436945445 241906825 377761122 396942170 204363453 156899671 56377348 881444954 603437342 554206340 766768690 682090378 595897838 467532341 753501877 792373874 40895178 407553740 162173466 16552242 752907415 352492410 510267853 367015528 515893220 965774937 442178073 871560389 974093705 696627750 485310339 621720849 522636172 509759736 301906489 503772707 699061917 194825621 557625629 569675378 203020280 786072130 855749577 669712908 417826506 628775276 422920114 815595881 938697514 466957619 672694093 389411511 352827148 131981762 675610913 227822094 439005616 870339529 43988919 978928554 475943506 343484611 647732753 935773604 115334362 780579490 66475819 941844223 152767968 919176930 458675542 815062596 786897595 585785167 715533920 150774214 546867787 935007320 487349 767676432 233611399 92198115 897839007 105540984 82871784 320882938 397265891 374947289 330444419 637986964 955866798 189040270 316264090 521159422 27506239 795790827 931250658 720053093 620251722 554270900 956007 558314352 434917550 489420010 800849050 33817538 591311503 741057 65057709 936043844 506015692 747240836 901268797 761920312 346797541 773203642 172003495 702483722 545118120 779823596 105087187 821454302 12630733 518033478 749737539 934760415 478994236 75355503 744583859 972481453 915993165 697198004 90847531 967761757 364741446 206480202 939275173 575052507 244686718 41788751 827655494 428168732 57337972 552224658 156221093 762179480 85827141 805512465 856864412 589122072 118075928 688119933 210244998 351588151 400907051 507446261 925956732 916317405 602527408 438144982 974389768 690135162 924562984 412750753 275703363 925636206 321286257 683584868 331244569 34772510 611917923 384772219 945583996 531045255 435877516 178437334 519290181 511524038 494234699 868615114 683547074 541824687 707022906 472655082 741148351 406984140 156589636 594525703 309036974 209233556 929703308 550262734 720754167 299084236 390185853 532335019 981580578 88300864 41552137 795445140 607492567 805690613 482666144 578826995 291831495 851164494 870749846 994690591 242898405 709936215 681982190 586961804 892298204 371373799 269179451 637922945 100610172 106526784 933008464 530389793 46961584 293092337 851181636 530469106 758310268 424039576 122832941 290667202 876034190 265039293 323202784 222713936 974997216 275725652 310794392 401478923 551412113 682508703 596653651 976143843 887595874 554900703 738671276 81725697 774410995 882203058 875520266 198257335 973677811 387913176 870792738 557326305 361121279 498562926 899237440 123237867 545731837 838922998 748141642 617865256 456772872 572968719 618783983 985261983 383028430 464338500 11891696 520706356 817393825 264412664 922367524 412534831 356779295 895972928 723077040 492154055 640423307 83418406 604630197 295658686 515650283 927214566 196469951 699853391 927195278 796277979 185811894 662852892 118091797 204786926 122095311 669779714 634472220 653207778 205032025 433260989 315474212 825018464 228476091 414904833 670546680 64211188 782757559 780601442 744388664 361302760 31815311 557600779 707529547 879024202 10032767 720061360 277983075 712116689 207365332 141450304 878722530 439902164 850490719 397424480 443290985 158810036 343449594 658985432 688513081 812255694 69438189 162579008 879002828 532761693 678092353 953833253 422263800 762110075 161572182 256957751 266712302 687533140 972120145 975645635 320572744 2453896 627066430 395360861 299836631 987057996 570532926 672150219 675605675 648149334 805855457 387691 650136357 476424024 176458528 80810919 668798587 79129240 593617764 912562880 804406064 598317485 204876022 145624194 692811884 658822685 21963216 752167320 685172769 322872484 682114137 370147530 94480288 437996950 160446748 231705594 266581473 698894992 663699120 187626691 496997958 172881950 688060716 321388805 540669476 41826739 24502970 842062562 136784218 287061004 530707625 866068224 180074141 873175888 786224262 413608700 619100618 523891260 625590307 928050794 38681110 515575950 374673994 665535493 356260503 943486251 304874377 1942745 168315956 374463643 828991355 134847145 240553463 917753141 79549301 363215596 200424120 774146114 406732414 444049626 466099046 63658802 347481180 846848866 114719372 928084912 564467011 77784136 137613154 304654438 180076839 930188331 390796362 696821049 692645749 563290234 217567985 526282794 211896772 185451390 859064674 778800332 37071645 202997075 530243228 761814390 25847237 466957151 759399202 658223072 370200230 833989622 766790804 567808098 571824311 353745754 968744112 79722814 288512217 711502861 824885263 250087173 124612278 241309117 987543990 369122215 285779692 894408494 7110288 26279731 552323229 60378667 930529856 807022090 968685655 942399501 785293627 258901918 20565198 889207131 395827143 236616914 272535098 574345523 910228461 814967782 8013356 360552176 459511353 724754428 384795965 709074192 664101298 308563229 831705529 2711168 600117326 942459803 553964051 322720708 467443988 263917412 894325032 297564099 260105047 130778908 428235258 2180448 811085488 76330441 821995713 320209148 304041515 871807994 504538967 645364325 603991776 471978830 188133637 938100708 60085641 915375056 680542843 692927182 209332878 720555476 318822527 149445611 491412133 609246800 901197024 64790250 471317696 478658640 358203437 582169923 412539715 406227633 587535569 711504713 895290921 343546351 534259588 289745198 611337426 900514084 552397674 241534372 802937247 553484934 615368963 479330163 541909202 274074066 418834145 25465489 608891955 986911814 709076154 394040124 118984424 950214143 820220920 446138301 769970171 579044188 79895715 201191056 990015772 451821737 428977327 785189725 58625499 453037672 129481287 589295212 599395021 229726938 697634916 916345072 172255860 476289254 990533691 941343182 583836310 273845438 605845833 240884287 227115623 278658305 638210118 819592738 478126830 443523391 495319864 686318099 568497078 678943417 481563133 898782953 310640873 78070836 702902462 526678438 869666127 695116333 943644010 479515448 185212903 799770572 791939788 42567055 150824224 739725868 565660287 978595165 337079624 319469348 844456423 817685432 109466022 725829642 513159424 289092373 997324107 704081526 857028059 168889642 375913006 839805035 52637917 896412223 938253117 785701274 263258309 818519415 954892725 750749828 476512714 629096916 51008664 837080364 241036047 672383074 281882386 158789204 216067694 847066853 542041193 304057503 375546722 703904653 60931361 834137208 441944282 41546790 599708695 532620407 804521197 137784800 519355873 823570739 864194765 955620046 634946320 484431028 915657827 568077888 726731683 413333482 413836164 650163095 901988892 48410242 620790847 857604288 300773430 97819048 29176015 142595413 637436418 776349003 250165133 320254114 121064830 545083689 851965347 392823582 818921852 776632885 716162106 106820883 117374266 59745386 730839077 924070007 705399775 950462026 932198094 58441764 819813117 374129914 554003801 142077840 839848955 704027479 774706556 985096196 581015182 900975380 905518173 58602832 865106964 87266259 595943614 878251391 738376753 831067547 709509574 997090462 96700331 253171002 434990339 811900347 632390257 443433355 19843451 255680616 415341085 605927321 328879538 315374748 684967970 439756862 914035072 332769242 131016162 438172922 114352829 883397369 249044945 541643981 423090962 263601969 255780266 65605712 486107720 45779768 60777123 563004315 377304355 907146486 704856796 213510766 134680033 856853330 398552651 263315393 738900501 722895540 570705675 135088000 816076492 818109266 32036549 353002115 302369113 478452357 684359338 603878789 735170411 476662901 291871310 664142142 798119569 149337627 294450586 807760518 522734452 129027886 392179282 504375940 804462325 736557569 705615785 524301651 439166179 282983640 801216760 623441915 41043337 715206658 90329203 354589075 152641742 420145002 533929249 290385308 979079342 690458954 402014058 916242561 262604521 380645072 361659070 536023877 62719612 298902103 72679274 521812139 373480954 545085146 718716714 946124567 921663579 305655565 456402720 155880929 493547620 774479859 271339417 259379521 184299653 778370485 247592139 887608873 697778975 357197070 898753645 682200252 628918808 167615216 468307895 329387889 294821837 127215237 525689778 265793487 864280322 112829235 298750680 421910611 660895282 80528455 762618295 873492511 270859797 474626878 61771199 382109245 914480035 149971819 963138193 846623139 75055228 883814523 2119799 457704740 294028696 272136612 983796727 194239615 507291029 979402957 521824933 58450063 941033403 826954735 375797770 927846782 426958145 641954492 371962761 146999753 779861816 522779149 384345669 326772107 457944228 15681027 575813418 912037432 513508462 285045689 154459702 282149006 619382434 738841834 777024959 359023192 653704822 968421300 811659355 270426760 40621931 583549020 613144224 474250580 828330216 868454021 203425717 531861607 516857114 87084933 131003978 185397397 994343839 261479487 987946917 468662088 304755430 244876943 189891813 351192089 352913049 808685415 655881106 925470023 610479135 368068145 55931996 835574235 229014210 862315370 474005775 579283111 32332224 812458386 639639452 775857051 173366715 872065721 179660738 834782267 485711338 64405810 809831408 316737955 550875796 391965817 8390747 816053131 46529150 464711671 897460081 604473766 814394604 329458262 991852312 889761670 368140754 962579981 83070781 79985790 107714972 996734826 799294882 639438820 503020763 157521137 436405876 70738669 924225893 113066553 932188691 735325897 722857540 674126589 842271662 902110207 577062051 272574818 904967469 313855898 630697629 857485319 506190568 121815415 495625839 600624181 826660610 304429343 451497043 528592417 160222627 825699358 698941783 791259476 540690636 180038698 215212261 70496976 616528540 404355101 50968127 213925112 803541595 67655005 191209979 389645202 576043204 416837401 884908273 392901989 787668920 52431245 844301242 323589171 377879485 711854701 825830034 902649674 905882876 484947924 239926832 930027053 317042652 838317032 479402748 807171108 51635869 739309071 628916915 728720817 244926544 144132673 744149225 94424964 416534523 284192850 649061750 154734815 467796441 403839121 329267792 817891606 15723784 61874114 690032462 571234525 401298320 77063378 521150752 974678119 536796113 98622241 251940887 706928750 683928509 172501579 369110144 994474924 735953823 907133220 582205042 901191033 59884420 61280421 255664869 195301566 697887162 457412393 666844662 834062100 307730906 112055008 52417056 360548676 151651168 566726129 699836072 512159880 238819757 949656405 141761610 838353731 964852680 911946041 247649102 561398019 448505983 305869342 97625350 205216418 782941795 798571040 386875568 180261590 694795220 463867847 119939616 401907525 11596998 759130219 352403481 175119703 915649312 320301139 532516700 110634730 199936197 551016110 622993703 850311663 67676224 771075936 580163154 739386621 805979959 396020354 424537292 85937109 640144103 230846323 989927282 167077879 255537372 435035769 30836295 88637938 645059338 933016640 639452330 634606224 75421448 969525321 466287533 869303725 299863841 598328138 309921194 91756669 434617800 496598107 764710318 184199068 615940714 297904077 903892701 116117306 577476560 571645507 920054728 637498141 192122818 511519271 979835698 961314975 106081812 253627125 474616514 130373688 220676765 537266303 263263772 429912309 434276527 843784842 352854699 153355126 608205887 965529697 752150178 428601592 554612068 59609517 134703236 390987964 36395502 278056205 62966719 258275601 29813392 834554037 591042454 567506796 260658342 635028394 356011615 705998943 501976558 120758734 656168758 855045416 668192789 678248469 842918028 975309738 662353663 344860303 554518873 873622096 721981827 276179636 537004843 9163846 133061464 287812681 771717942 179163357 378944595 885344350 330348546 173296267 945081030 185172406 933424783 977108176 579957275 322615758 476019286 816683484 762014748 537777024 907404414 585384012 637056497 715329463 84838335 154778658 15566472 637207013 25247976 744352332 617375830 482173336 916274791 927201067 60085027 13621840 374984404 567538260 365909245 256175253 287146135 783796468 773532682 366764056 751490846 39865570 470416797 943720109 615603071 990609595 664898226 433212993 993965576 115184164 232668870 655950882 653843662 922382295 710862509 761500710 129936504 670636086 634195203 364153627 531573355 943841905 245932180 937098196 13965790 853458003 328916842 19491295 756705964 63742412 232890742 205693472 332300627 715594084 744745494 336030589 460682850 449523413 402973638 834140815 185611410 243362628 87149166 486675819 248431988 992144151 685880742 343777634 886648574 364366027 112627405 297266935 865653431 4650405 871566509 730143563 953904333 249857504 479529847 405896963 906266431 663750003 832574000 6013520 931833912 761565217 769649164 768015697 752033029 770999338 495070958 351291526 598047502 932472855 815772801 714185926 534419013 337477799 364522030 124357994 65906392 267304219 459959786 966976352 785229800 711565062 996103303 122780543 640113810 406689767 911181011 262584948 677178235 956260040 50618512 720651684 792469271 836335218 680994519 824132280 931121450 772113088 213716044 803345260 152763188 729837059 391582403 768117784 33255314 54440107 65167696 661195333 915028285 664558590 321998673 733778630 367359445 54684833 224324555 367350999 663612100 580319644 187779540 730062411 603920735 573248291 122586198 647111868 200023833 594287143 912365218 351803623 335407990 821792861 123495336 136244708 796126325 438369180 651119015 702649915 319424285 510081994 543692146 430751988 815486237 384663937 722001665 506971073 624756140 94080159 858777161 138165500 170638545 174841742 661629007 520808663 760980414 15194536 487362588 524461736 811386402 39841501 334178631 397340345 487686832 985517305 782220320 775839241 839679211 291482422 832897940 275034321 619443573 483821841 239569071 450063572 185005291 620707784 184482606 808136493 880513112 526106874 201330777 749203966 253355333 501799998 853349555 393558983 202037000 665592086 474114438 456259328 353477280 329758558 965888931 549383346 751629879 546767306 521114131 866749102 287022685 745563339 355616620 344727565 194011585 973023004 654088805 208009469 965574971 647512025 822376258 105732485 495599634 613393242 277735623 973003003 247410930 690761371 709362738 347766375 7509576 271810598 679345952 242642368 638057455 866776050 533766056 676001608 801182464 926959869 466085202 591437983 461598974 624336718 195915942 347834466 127810250 645445582 487183914 651467544 272755017 346184847 203944659 195860552 971282591 627140893 509498320 166360152 24743743 15712189 869157848 457619442 950374299 780060360 995176418 373292971 412034000 734268783 543928583 742746563 972776780 384756256 204615858 64782086 631899487 662293796 254287772 465966469 489518333 202832018 643604497 244923070 922965406 416591200 331448274 27673412 461062510 293671798 793648178 690227370 367680745 545720483 798258824 207181749 823266378 88843172 311486070 287316856 888939972 660917009 190892485 573917310 549022335 107677569 978905339 528699934 341293820 169801040 415486222 478102636 998037788 912594777 196676421 602343957 142938166 852397596 645353563 37635306 478506140 603566223 388339691 410926097 358742332 240792382 316942219 554637941 108043043 836004112 838390247 871366804 702624896 516459082 797102544 348979977 128248452 698699811 260013749 18189544 964676322 792724571 320761323 397042887 962666284 612610727 875098809 917433528 885187125 612769950 678579792 598060787 535319890 765146615 712545188 104221077 388987663 843282135 113950684 364095918 45594658 526773289 716680218 837975591 244849821 304542977 811498444 316391399 951875112 885304926 716073728 271315479 841306617 371867912 463690524 310098644 881073742 661910719 543606553 210827783 412959245 468142242 703500162 976336989 872849225 782595458 624920516 379552509 888938722 480756886 142476677 624939942 517599869 824909561 677636866 373833717 961177759 164787868 837107109 93014149 899668663 309700809 142891422 628995155 286743454 16473177 99273294 370669749 881149464 964653072 146923290 863352880 803119079 802355748 13850349 868059339 64081444 747646672 788629289 607387630 196009538 930323680 388255284 328234907 771390615 54554250 623810404 102464980 397345579 406611085 340282771 22848287 257970134 146625720 173260343 773386538 631923581 287696003 712871241 365979723 839582529 871799282 640430824 367799401 971362475 164795113 471742480 662133617 679656745 875863275 758955872 270154675 101962834 327205685 362347866 27447552 467026837 38664715 6134217 775346503 786341480 47900936 741748127 118155163 242024127 215117808 429156333 222694778 241840694 987296216 393586818 320506273 168299710 22780667 866459710 750038913 17864769 594102135 258842964 797746910 110574427 563833089 524105559 400026900 35908894 597045168 587945814 214977724 614683504 532283529 773745324 900913893 545826239 80017891 819866933 14342103 618516042 170724765 456856205 840872252 13326829 492708760 13914997 911275749 515530719 768762916 394786249 951124725 290647060 568146622 642016242 702961406 454069402 492770406 522385971 152212209 408671214 501720947 825295394 180277117 640546927 894786700 885816403 172201283 258642558 964704195 713980495 435615563 60358190 262211261 399178871 406395541 199920645 311614089 432576139 599136517 774491014 4902967 841774071 537248461 79020182 22031299 610656292 693155739 190802105 93257070 657929721 575606572 77161958 260410458 873469805 265645691 274594763 298699730 319703925 688147729 279462577 127463875 529372629 757619916 348665808 41854572 762795836 744670213 262789355 211574320 560432836 517969790 344293514 53263187 162670245 758672246 59083486 499424935 728965370 433261786 103375100 768765041 607614393 337911175 723939892 619291378 971786942 36774078 462351027 11686834 206338094 764005431 751527002 986116426 141913410 398496095 968654599 777302447 946403580 304810481 698854953 645060733 118992003 550971010 834909520 401625646 754441018 743082306 5998125 961146546 821891864 130881131 955298971 121597754 256297054 763985807 774412192 120342400 744141361 270389851 690987358 144109095 717020766 775477564 901616668 224358144 597802733 974932114 763666905 137462321 766109118 189417178 596695015 887158152 952389633 911363914 901317965 416006939 526244012 327572145 724340899 997035575 680425439 377652820 539545900 973061754 36458713 130172338 309637418 10331017 992539530 635653299 625312650 462679034 290092622 428982249 820251817 502637734 834914810 770892625 380266242 888878964 274823372 334859400 121458672 655567675 608004281 189886091 307934566 558442324 283322060 187729380 324954716 694276515 263654546 153295997 776310969 121498781 386501540 606242901 792892175 248340359 602789804 164875077 729674659 690564317 443583257 1673098 679480743 771044485 996687792 968561785 457041833 291173680 192562538 43929189 373922652 787620595 184511728 468073597 616896280 169329342 102883376 197061985 31948452 108060445 646301197 56176484 42897715 881873525 539694647 350194924 407342591 848955087 986288408 249829797 463997321 963084408 427178719 693774187 307125392 904731341 866707226 986870818 72999154 614028032 169697584 142522863 49206954 957579293 558744903 170386958 491584403 910456390 277158664 264595592 991257234 91537889 75842471 747637295 609128419 438028497 669299615 144225318 85876680 547546843 740344087 770406606 237303884 887788209 455940718 724076516 693233571 880476123 245563080 935245600 56210777 833245141 381945104 629621330 31617232 76597079 965807614 690912691 346815227 526755690 620491382 302044579 547841932 758287575 42993858 130076611 187171262 450355816 652937261 602166427 266343890 223561520 802262128 953493359 813791737 763826489 379832464 186449804 437005503 174071101 584905107 280964431 513729733 761794127 496183087 993088408 975527118 351331898 187354537 206283547 418187320 513483964 63385070 916848961 57657797 249318733 726607932 89223709 264414593 775940945 751877022 276300015 983966468 662542437 891276521 33990940 419426304 4796519 244737587 524875057 3726563 886749707 12811704 852468890 707457458 274536397 666498198 514629886 870340316 676549357 131388008 553355031 554358222 438409721 538713332 31659790 934617749 853132354 419703967 785073364 38903305 615980666 197596816 83341850 221501762 875935638 613453101 582208917 519633037 479816180 391168054 633919868 198437755 63250732 678799135 780777784 892863893 395400790 763073874 715939415 234410526 335081179 835398506 712073676 411342163 323881450 522799679 312230829 425843815 108729902 602359984 294637398 284717506 87743220 963995067 356884290 313693829 969930109 541131425 921244292 580699988 437421928 919729457 924119510 365223644 36246009 145404296 982258168 216555782 323216644 492226214 895413190 407376261 255341410 997201142 687594354 838630216 350387584 462221016 557557819 577576846 163176789 831552665 450453198 983754172 160831683 463869433 963937624 34418690 166437466 58045225 86731820 680866710 577375193 197307952 336234144 939421537 407526754 894000115 268759610 888955019 569590059 848200348 428320977 480203252 952985658 194921245 497653059 702490931 835783353 975778376 494393480 764536010 42643135 660194915 629285406 648877628 459853995 175362917 462668223 316218908 80691651 383113202 599229799 785319353 873065647 695869123 447768210 136460364 773058736 338676307 465627984 776400529 464059644 109832768 765521136 327036178 274976279 184579576 753143855 513227640 892764417 282403862 373574183 721189420 145500837 79851824 634610086 410836501 589729866 126344088 187430119 571438824 949705861 454375175 181383889 715885988 427618535 427218347 350853044 55082853 159256135 315727558 340955556 692450876 291701824 538699122 174723660 145348094 949048269 468973235 509423030 670872033 6871047 699700692 153970309 285428368 441452858 921345917 935035701 522612659 780654724 836033443 667829599 895638797 283422383 907985880 242738543 741891786 880145395 368342101 684330544 588697866 582210217 398322374 903851957 998742295 631262622 99235731 853783513 18760654 38446643 129741147 835448372 310350123 699158618 18892835 972364556 213089598 505494608 426128904 290836276 636639088 991791216 133115364 101370150 152811183 365042205 788846624 565790175 875228692 47381427 769336340 162389670 927351987 853103785 25961489 840819625 233564190 797729724 185619416 222794101 326248526 729675333 497382951 495849603 782433042 860097429 760126035 901837178 957375755 992652519 500332431 376356484 380611408 605354825 554909489 698938616 322749045 178123077 626178154 193557458 69274531 181795142 795158153 7931869 859306047 603976082 848901014 964119159 755159796 218207971 958301569 530021182 128399985 474044850 60613563 736260409 901455111 741591161 229433255 550434956 133944901 790130911 27166699 746012878 861196321 827522544 416287118 468376005 594850275 833805399 693354630 497881566 620151534 304115248 892810303 777566676 575623673 507089931 169981884 993070402 278647728 958517673 929054590 253795998 672193982 801616468 146784138 811140041 132760064 379665501 717823187 735201851 438627417 945093900 141678524 829203654 608832545 222440074 440728615 536293774 7267206 909757013 980101218 385567619 180826845 117784921 912772345 68932806 376267530 700962634 305000231 719749032 623453584 302761660 452181541 720604372 62316772 336967918 995812542 701246016 610284475 979575294 909869253 639567882 251630306 305273089 981454761 678055202 985102787 587987695 76592990 231212069 760570368 679778221 524277590 745957994 606469057 754774718 282152435 245311010 873243179 288374805 521846987 285353027 922838710 738328810 655100504 4078210 16626472 514405149 217629236 447027338 673982392 856523243 179999880 536819401 559302761 500769975 429596609 440821086 57229776 112819376 679667014 306750409 695024078 76602015 913157869 586147807 585149284 521558456 278567059 493788618 90293786 882492509 916841940 380850829 17912958 939080240 262848285 743422686 756671715 251187668 905193161 333340634 508602318 966528187 389289091 943275832 725506615 457422935 931268226 698136240 539238135 34150454 333517910 322341429 662055914 505721048 391033896 189393183 527165985 810879386 861909195 786335322 532375603 685284160 939543320 503497414 394988216 652410698 295054300 418199275 410152310 302920268 352383424 235564318 576961469 960914587 161006417 961352170 908101701 746165079 121420307 295315404 886612445 67940708 936693868 81148012 196533505 400680419 822624210 760947319 245757127 748716400 218130817 266657469 326126818 326119578 156652174 992036342 745373111 978342267 172651197 574858435 65355511 816405808 178116446 250374237 569589668 33287527 94177323 556761107 30053662 158833225 272457417 284502819 814568210 444239939 483446340 729994056 539911768 3435914 481813337 91912280 427036346 16150941 144644278 495413619 186944407 395027235 49412111 950117867 223748630 228972132 136212232 619888799 404677939 478047356 61519667 263328530 25918313 702868817 855716305 513261308 111500667 118010694 664231617 300190584 858600667 755386469 673697837 197750224 925970010 588577558 165915302 755123789 879928655 813037335 230602424 41511754 623217667 223472292 510876304 988728536 170085068 108721585 711143969 948893796 930283328 29771779 425823628 394293821 104081843 149269757 60147886 745691306 636737242 604698999 714684790 2243864 856331118 307888418 204161491 629926993 818232177 611827116 259224842 910407673 636312412 62112548 961677931 803047960 361361412 976804824 581614470 386327819 335876614 174822066 66593623 386144118 926529883 411943829 409903821 978261464 307151263 150088122 752544297 172775386 18740709 976885066 710716102 524742700 632989867 204596716 799716263 103192076 398147204 695411851 153241276 126441600 104228068 901863460 93387611 935979194 978995660 759651003 659354380 921489409 609716807 425846573 620514166 956403024 241990003 82062552 117632865 234274381 731441047 660577761 225315718 731570896 987284967 986808354 708250583 627003506 748246002 395579320 865458479 393250449 936332538 273762019 39694794 161678457 967522504 971054351 97029715 186168748 122250707 648613063 586831659 202928367 360283894 310990085 673818233 203032232 56746917 279421754 645180498 792871963 114621401 115278369 444513574 287174299 977907042 60508067 965665302 207606298 6945856 578988313 889775889 405883607 7928957 368867758 111529711 538951072 158920334 294938910 724086808 909392498 790097566 661253521 345768219 289073709 712694911 475847425 660884312 550325486 884044532 929975265 575357766 964521593 539061314 592639999 802877462 970939871 407783234 685782456 723316698 948506172 782889992 716379080 406040682 445260373 312099136 128001526 513550130 604551042 718297805 537745130 379926106 87095470 817496823 739544808 314488280 215824075 705184643 189492693 170755366 588842551 158810529 90193220 620551293 521964329 915438302 722530738 811362763 70599768 841593733 220051026 439481454 143087817 410204714 734721275 508753396 822967861 948208943 764692676 743270808 459995052 345677645 904861315 827263435 49867757 426719143 435094125 20509693 30322675 680100094 82148449 186132388 869722803 884773468 186017417 928046016 201725609 411441797 325997519 609324401 524285153 580060450 981212249 217090458 963960845 652053599 767165008 259394710 927759144 576608666 729168205 209588378 72687299 656613094 327256875 51038397 865005198 976015155 760974968 76451383 595199204 208983775 907034321 418665256 980265772 89007285 257787049 910898201 309607363 309599844 870287928 90144444 429053216 583041022 755760212 311874455 548876490 402671707 655153410 971941417 963040052 669848659 621968710 770207503 324947460 885644900 632605598 346626706 447182799 318160330 183688356 958507350 450368850 707912266 823359732 790469562 315320607 660600394 693528846 956901140 500441667 424399049 377319614 632612670 777483732 204782771 671706023 390725544 80545482 8441949 871616156 587299931 343691335 911703956 579331228 824663548 919424145 852445774 134788539 477403187 218229866 408285234 110194649 355460562 484659062 731150874 871146738 995200795 182556635 711647688 30663961 496312611 986738399 165576812 514077079 637046118 993969980 401609560 876099262 304922346 587864755 880018534 189569187 624278042 851964189 513660329 671563221 366452201 989900421 965196463 411187053 679405080 902400565 669450096 10937112 648280193 12375307 226506144 881456376 102073147 27044025 755100769 712818871 360618374 450647271 632230207 545777474 664221891 674564282 290262288 74536671 743166319 890950884 17692725 568151875 531309831 213958792 432972626 808644864 635558889 17723405 482317011 308397344 141110162 34095498 902619955 968683453 76655806 678444817 970179494 80360530 159173080 792707366 37345770 591809236 84392566 766710386 942127309 219407328 887100694 96622163 676790847 245895755 276869193 307128532 750993757 73660230 867631304 66318387 206737786 158949687 673176670 121500893 33310911 669378344 539777330 723636913 989678734 908110607 807504612 518792224 133306827 520331624 158589881 573450658 71113778 885352075 386097245 878545484 195828018 395522297 656275321 286862413 202838828 242222467 314323128 127823934 313208814 253487850 451031728 734609253 395000052 431785665 855723622 287632551 565229360 221676409 751135818 704170984 63617065 407027927 533114724 891554953 409699022 958028230 880060773 961847867 908779505 477490922 892438078 970488661 280817566 346371527 395302476 278686877 410169317 962677396 28186707 213688541 363209991 863472017 419241531 587600630 267560321 332323693 290016203 15393455 375758970 312425542 783932074 806339104 559773737 609534149 20673004 873954228 964875985 389846008 554588661 177670096 651306918 391840985 520328674 325728066 953204713 453838512 998137869 935631873 717106869 833197200 716375790 712372617 487652435 58150618 61456963 854099760 513990437 792636617 326337196 431544122 613060565 650194488 471297323 158609120 466589891 59911228 498332026 325076280 18907480 933172369 429719992 374502462 904530495 998801289 17436668 28577368 343966574 258137768 468417432 282420871 820922973 910560767 123081835 493992259 948850471 225041861 113439573 940579567 273445854 980667218 156384569 15797247 412135566 493739890 940548873 949490340 574729147 117649599 251625351 376598068 935726738 682958078 847265796 976822827 61729845 518534792 333251732 525532204 928525541 417724977 165284746 934200722 567923538 665570827 466770275 708226584 483950920 950112650 805504785 960621313 573077316 67911224 753962979 693184833 289011972 131445346 672019362 712230 608973321 929511336 514654236 117882843 665800393 569948018 558138387 777255166 725000479 832708502 727543595 906935291 655322201 713686568 180568247 737407498 765511002 757233976 876690662 605726497 897569143 314944108 147639748 811365037 675285774 289137989 476648656 141269608 301553121 753734021 810032407 384101376 132748077 850947104 426106032 875076997 604918989 376824640 362877179 864725281 178303995 587639946 484091332 547829763 417635597 19756430 408379469 621609091 522648492 894441905 232807286 558757755 455291186 999228708 467729123 286614572 295573390 855351766 408602764 625818926 18755593 289564474 868157401 85559784 167741231 685794790 697184935 142498342 148196070 743552056 888698497 486740429 669612300 748733461 186347444 62962419 674256639 601544465 6109449 906440139 59290768 208006983 506579038 953579419 14397500 51979316 384837497 660514236 212750152 904189492 953204397 448618776 686299900 155032607 690734484 355672814 438304592 321084937 308445777 431952133 703542180 176653223 393190004 621403104 427142742 873738349 351237963 520838619 605198697 566270092 846749974 282192404 67494502 656310371 997356347 714455069 824133108 155353749 719468256 691527938 920364500 795225360 288088619 314767504 938299236 159606668 544361598 16170982 918458980 532154167 314038208 964566952 726131070 192832789 38003550 668925951 985255643 295958842 948499870 339073658 277212108 464495037 888729832 732558249 154390122 811977131 449236453 143278396 635337072 923705389 138901987 541306217 295667280 14191554 183662731 302781106 110845660 858410880 871129478 145824563 716870459 832564889 240258945 519478475 722352566 271528206 960969221 763495242 267354446 120627983 61914068 167266644 888720701 558545291 818582553 722772112 275615233 676290521 747077185 957877180 41047727 100561307 223330079 939418696 539785025 502269088 339648399 361012007 999860418 495132279 148861435 832871533 814914771 482876334 474702962 725039444 495268002 917643765 22289611 785831725 358533858 24162020 199101020 9296026 726236746 435439396 519825881 400244487 926533620 567490801 322214059 606145931 892777056 545660096 800850876 454507931 923050777 747629643 905453761 876802828 682857526 188423856 21041739 600643737 87946325 679699564 775587349 712083502 251807628 703609488 668797353 755470694 745743381 611826095 993356037 250174881 370173812 44220347 281371963 652715962 176206798 829531081 625359718 439578632 648624240 106901676 151728196 946486955 638557495 27515949 754463897 135947794 77149225 758662591 853930153 541719213 836481142 786864465 414244170 294691453 583234265 214630803 610667245 670092083 621565872 572835337 650881883 82876134 978546106 229704831 46130329 940253435 794151624 346716656 974275223 84568241 776406841 71130747 250891564 78921017 196513830 689014851 904151181 322231991 392564579 547578203 948079620 964304171 315748455 859772457 395190298 958142663 699518648 748428644 757724204 966786056 597851858 240911597 514405556 339663853 298583770 336341493 943725843 681415755 294741192 170472032 70196482 800848877 30280856 941123420 629904370 920432261 242455163 73597601 963435874 960998102 754133530 564158742 683513781 9164717 348523405 376091570 568708054 109569218 58884637 738574985 655974793 655005889 840139379 736357848 205828564 238855698 388376841 315685123 198957016 655609335 165129214 726232034 251709562 519775739 470579005 951697063 209849430 680429938 69467424 481740823 651660701 294802645 183196351 520641916 118323785 959145858 766309637 485499574 775071097 887902917 959821697 856800986 505111047 999371483 131803570 46263325 922535864 305975532 276733625 437220291 31423226 395774298 974895948 513493313 888769020 630039703 330479994 593447092 497440991 368625839 475193019 465834936 884526918 157656152 431435100 1692792 925511052 902741430 128323687 831858610 313461769 923217735 924888197 81058224 486377634 749947715 690375221 20505211 335381527 997863334 441745109 51912298 525650873 911890870 418232080 383774383 725368339 228795036 682237698 344310674 819163433 986801335 720315453 534562390 426355178 807871278 244177566 1405922 525722526 49044290 275388631 374972740 707727473 384245639 659376483 567589539 364216344 159188706 866717995 952453509 982535338 37914089 169073452 124639486 429191102 27077937 448926277 771761540 810714091 155341977 522495283 98981164 443987672 216823263 51545452 711695002 608477009 915479008 381518698 480835214 779753982 989034277 442896568 685930582 138354768 64420894 443036103 333201716 611714940 438267606 602462641 860742511 838186177 312016739 792834475 340606836 25716227 582743323 233114307 18668620 524541957 856942262 324471111 692920586 541039243 146818550 467099035 852266416 616186027 350032095 448687902 948770679 363155034 417623022 317017345 906130002 392605946 145675788 38684954 593912442 833569178 875679484 116728868 925140158 259256610 813019005 529032019 519435068 140707633 716612369 772186779 507921634 59810478 543141912 417273826 892008509 791829250 183509207 653301509 176523806 63775173 84287379 559496032 392608582 377164951 177905260 799275899 291389784 156633039 170637024 529740363 310608845 888717877 898652097 12834815 515373653 977733219 705866163 324467025 464666534 479006373 359555910 325543273 559855416 216698174 614079250 882608990 435843257 516367718 36571854 640776098 276034382 818528325 190687818 463022507 57768415 717197757 102744349 728845371 395428965 845864129 497026660 556397266 282739402 21275907 161660251 671447827 706432471 893291503 583566029 899832949 955744304 530343514 512459215 350382135 980434755 233548074 746153806 951770577 83035568 959734236 733438907 253836706 881948781 224125499 382037774 974328627 539284939 543290291 126451023 116477938 318585380 108095594 211251957 2531098 768502516 521338944 404996679 738422503 937696944 439414783 525536266 26738072 424941935 372733173 623889669 324919593 617827468 830544649 626552622 453792329 369704526 802818183 125197016 200668465 473769844 401917629 449831125 490601175 452194138 832119392 575094077 972577259 865393712 579688024 521595171 403142579 42374349 644465083 796259577 363341057 570395691 274711631 455960745 101726553 295654605 168289358 562564425 626657938 288505866 926017567 796209543 103719214 925293308 28251419 801522240 992858921 342659300 539914319 476112825 818466483 691220917 719399193 296459042 460200808 830634750 270986100 164464391 918938540 411366327 19892873 592953972 806945923 587430710 513441757 336847988 942725685 513563432 661180436 912293664 719330191 772129644 976617304 2820946 327334177 953654942 421863564 219523471 809505144 773903976 83003744 109647139 708737225 776459212 491089668 664010237 383391672 183481327 461151428 899109984 936087555 456878186 497116660 675115510 285430598 6540482 800810913 57464419 721485447 24428704 829946272 719776939 173109934 651089592 796413634 458072777 280441272 4629509 817151280 293493082 394248695 420873146 511142407 155380190 240173736 518688557 11642019 773693058 873460930 828560383 172416206 810783244 363009868 33066929 669002461 754214779 884374908 956952248 425142391 155863002 980832981 667756157 492859608 911895387 590675819 123067744 422083031 983069161 640845134 919899575 901308533 927302427 208919622 160791255 322265153 138434955 39052784 16029554 995545443 939223548 484590752 932951154 756738984 574417221 44146845 551260738 604374758 369742800 580879227 36150364 258763237 439394698 929794890 410434311 240462756 186942018 476417405 788108416 122990736 411916979 267512335 983160675 299386855 410051477 43717808 956122103 767776249 600789765 868506573 185895646 610853528 161804969 37273993 5248995 346955052 974161876 432058359 980725184 794981477 394543296 560096866 765182591 358102852 775207289 635230116 752440536 933360222 288854489 999826442 208635759 671944631 490506863 549233639 474588755 585630153 379234032 920480972 173641908 347865588 52743407 29561298 178863187 997532914 317251815 135214163 726650287 175946774 380870149 835461956 136135329 685878380 689408097 887530742 407673362 869170444 34982340 166603045 465487801 733245974 575287820 310394631 642447340 396427667 812903518 124814103 621490457 526594589 517507044 606815406 855429037 721023309 141255547 114321023 536687814 259712874 585787163 379393425 96181187 189850562 585271442 2515520 929908787 192889718 633034094 974724761 557806014 124595275 540796172 264064566 156037700 200387341 400624892 751571411 366238949 944104337 172614722 362258317 790117227 623342098 823803649 681639318 801686229 218445036 2759923 819908280 48307266 659837249 477632459 667201395 265060909 699312564 442430246 494619016 420973045 979306577 390798154 895049766 891849703 833601304 331428779 103344439 166677659 949650644 205807876 452785274 671594241 607304192 438010606 316945495 301231704 984056218 82838750 711075960 452094754 329138276 871795871 61932121 151961984 165600438 224858582 142410443 421714529 832417204 752984368 46159532 282039427 847800691 895340905 6618376 767198526 651626330 604845370 659492010 933765634 745369366 145427920 976887698 114571649 70780497 479517388 89198820 861053800 457436781 898878857 815845816 93800722 446433782 396069549 564413768 538314613 138692840 310685792 798809612 514364305 535003148 865473279 207473781 273188704 914321729 356449695 306880745 373815105 46533860 264015891 550733823 960920263 182692660 473455569 112052481 905987603 494309328 862696185 294135586 894696623 82300415 63489014 91739214 608107664 368721346 743521818 457573815 246692910 23248018 954397138 906583094 261925372 586228270 293859166 741051525 904727164 442828677 360074548 813335120 108023400 294390771 163041175 820288024 989570900 540152886 253872955 794384902 578510935 997589073 689388893 831430132 211781385 495588131 888377918 911791079 434283448 480696576 561644991 944967961 431665729 74700241 552192442 223982834 917731472 477723442 87320965 622487155 248911163 284692660 686157235 153022363 280633553 726231518 905041189 241127186 856258435 474407481 951180048 582661962 505989433 54556447 466277767 81128949 687138398 378039975 267845508 198668385 799719038 50034182 691174727 918792105 104334813 898442686 998311973 470003824 529889020 4591836 601549130 955128858 439785092 179137088 84275343 678853980 335113061 664691267 683182639 139370415 777598088 306732778 826676758 588113566 139471945 996716610 165149601 709956719 979990048 268962049 675863722 747805051 977050346 126861194 595287706 105886578 88019364 949412197 562990887 976452054 97382237 460326555 975471449 572696645 161297387 430571152 455003852 890194090 544758922 680644347 729071939 419896598 797346751 44370968 766924557 223215995 143382684 514068173 518241182 873480593 535425576 208842309 914165691 780414119 40308037 949011127 183550564 670072809 11701930 286057135 919392086 49657238 436754321 749558531 633782478 299616040 88242192 771541181 722678565 849998249 246647890 552469874 341856947 211025512 57591703 256750340 948240049 826536674 681133709 846865717 507725330 960013303 172770709 946922150 93728601 86212987 324467142 642310498 171400778 41882778 957483981 533575635 493535855 680317316 96846156 142477213 170646646 995649312 692245456 594325382 920473224 248102258 5844960 637676819 747618129 687322118 547340747 548388333 259147476 802942764 378313810 242931065 224507793 694420193 804754793 989042662 881939486 722667112 888206976 8755290 636364010 732924231 760603514 644727445 400994004 492727981 840405551 203572138 562910294 634268043 234191017 680247907 51125800 324690876 694695046 131590930 903126878 252100915 260478179 843082151 697109426 623193422 327882840 757597660 657023878 69216947 847463940 811278134 505172486 336315733 68873142 268596501 618229079 166849306 57601628 943957944 1888513 77759001 444713459 692973825 893687930 660882142 574188205 491087413 538202623 741910648 633906799 451529400 734739735 738300562 196660214 675942923 464585852 3224775 306579389 861613328 468170021 304861691 423924658 494389433 241039720 844743193 129007710 795801308 575947669 141605035 15577206 195382491 853464426 395140434 537562288 271388102 911330842 274728597 642592912 34767011 951616584 117522682 272716597 743811968 287130837 248516488 776216379 857162823 893954736 73809678 535417873 101429827 715955567 941029799 820658378 241559324 640230625 320306081 323005357 439565484 284384893 662305199 396854984 372103104 343778541 239851574 2752549 657623508 744293606 737088846 130159458 157124588 118360986 757899844 15996455 223387934 150025708 829056144 296708559 395937104 857264901 468295633 808529738 563034843 975835090 826117792 752149708 304851011 312914148 698826883 727305467 588127806 995571669 944391771 529901001 576610344 801525683 258737514 20825244 458893849 933399167 632763752 145884488 736131285 851372831 713088450 189332805 724349424 575560558 236363443 831705246 385555164 966938685 944570418 390302133 488275363 3907637 781935405 401984841 336668890 215202568 83564353 362889519 99540082 399700469 491502706 798764001 647920634 720307327 571708911 216375366 969949025 121747748 444466893 196946240 332652036 393084815 599769588 324914468 224213660 171998557 335082843 739794428 540013013 938601472 884470288 71318741 58448342 397801471 869998347 649752969 672462109 690028458 825534953 561179997 287167935 784885397 393784232 77436544 569819547 549845069 165980854 84685993 518980812 814277862 314541084 121907431 243947655 5048949 609121984 63699119 537010186 67397211 200647743 327533911 543481792 285222875 576745485 200584189 856788450 410620210 81435839 267149724 632623236 850564251 81983840 800322112 254066115 757068490 562181699 652135142 65630351 952068225 947432302 322749228 69400399 144283542 250597907 40469426 485065766 646198786 765102898 482958531 550913496 768883192 355639423 728860378 806617868 388850159 282561255 409556847 340767611 713511080 92340565 564656274 610358461 52244246 553139701 430063164 77048858 604750395 455474374 73083969 689140077 222698037 983536 38485769 282849927 935600325 394623121 429877187 176200456 15301392 852679778 182752946 162249297 142866788 854663445 140650129 720894899 516138076 268531604 637678372 139564940 506420348 212591092 241128984 95178972 495358319 619718748 483550530 151986218 90525770 475150369 989676514 357152112 825914903 441125901 237591599 603665296 303189080 155115451 173173443 908958068 991546458 429535124 509561136 545652574 667581678 834937055 233291077 723763256 48515806 547984091 986424659 596342545 175249221 830689187 885150319 700165952 286714212 417684544 732288587 563873860 77874069 817961811 177927730 813349263 291734703 882680691 234274495 9938763 419079078 753747177 862280661 39214940 655405542 662147078 825416672 810885688 308679220 460194422 459218290 239530268 743980840 603473801 381892903 494744143 322665109 640320563 876257231 360563126 690865356 508548483 664518012 540134137 334784519 730554399 825636823 438005750 504490724 142167245 764590974 259972224 91621061 371976943 521747347 137440679 854220601 47793285 720549400 960595477 608883149 11744549 37574434 796660433 246344912 265873333 901365770 108690492 954129637 769532227 854013782 162895645 951894437 671298446 766167157 164162030 973514114 521027610 296731528 263891730 943509830 323814676 999709859 340346603 531543867 69005090 143038364 344984741 510308573 444804626 551961147 696901585 102543118 194611058 935381808 351822139 946513528 934603890 153029666 300572092 654292083 527051212 402843303 629411349 329188065 21540091 512396706 728767845 267739070 688806127 378706077 827115462 222598515 642662417 76160673 587969627 592371367 615474934 79576375 524684995 685435500 686863530 975402495 408540376 629837369 616159131 182545981 390790267 687434843 747642838 706458449 962256189 509205276 403970820 28900960 470458616 620396992 454883091 437641724 399342519 107462323 339855805 364903413 449622200 643950682 966117543 256744809 592431080 721343814 922813336 742711713 634863511 936496517 683543511 199170717 803732241 495235483 839736851 401833811 825343043 217173777 263156715 845639413 836068744 98898480 785562873 861947753 574337277 519556108 329151175 887453176 328785293 855885973 167886562 999361740 666413627 973517996 185374825 267700898 678909921 925594477 974760429 935842202 656444487 425411360 395732502 319148961 901440203 69283983 945840262 76708931 209132612 951426579 437489365 816211076 414801379 638623418 648856752 377431639 814472287 255480094 308287529 270858889 334674217 449467083 233771074 537508940 778121702 988121091 960346282 476013779 129247600 393043262 592920889 214328168 687311102 535397188 773113801 496311065 705255730 630389884 856224482 487841536 156343337 967585618 242765968 346129043 215408702 502856058 759800729 386370458 321514104 864763062 703287773 691260416 522834779 778364791 499793424 573187558 641304484 919759239 396366863 526740591 199749726 711762999 887596927 491062977 487332178 467615027 507378068 48341758 712998235 556859414 308889161 825476566 646342770 475812212 430360988 835029764 761110593 308751289 832922548 838323336 881217220 571023076 207121126 427213232 744105054 319739999 514643580 262259530 101462077 663263984 176380300 315867900 200882553 629408255 63956256 760031870 156745554 895096212 797550502 64155675 646472316 17461268 875806113 660296633 95598080 84252819 682293240 837798056 602046411 285338270 585781859 236842342 620681545 689760203 481916631 41391559 784743325 780043735 406785182 167374041 147185634 688847833 916047743 733326986 320404137 85081652 404915531 112646983 341253359 724914443 848555246 438560274 22549680 645003520 761174971 344688794 763004713 597954224 300574862 237873385 125371185 156983060 765800005 68048717 635715829 805058340 807931438 789453128 574513610 141035854 662402458 428089668 74718858 625698559 84783680 44408101 868013481 136582858 41618507 410559522 646782536 613822319 659448288 90717925 758162400 6668041 966980320 591868369 865257401 814727957 985387579 671542000 3462195 861382980 850888172 439536940 88426664 976383981 732600791 464153284 437276262 845145375 892370112 132106444 608640003 727761217 820035696 146781341 885114390 199059378 792325832 496569529 442818630 267674761 831449485 678059820 969688755 730624511 839163635 292377103 810229601 633264878 238395284 403057269 482667212 362129953 775406136 435742232 359590840 221779751 526889645 749094469 46889766 742911762 518372746 770715342 578410603 52044755 893937799 425714073 285505641 376387313 641438039 256654561 903037193 9921334 103644446 109642978 145075338 804360200 369162104 421151058 783165681 280670275 689023058 304869681 991413027 816280389 528679007 964500143 185343767 473815100 437109560 813938092 729841786 446224946 392380008 94810481 620949861 9748633 663915641 377825674 12917736 158899228 37695943 430984176 298263081 876553007 902183027 779869236 812581267 47194730 781053837 314835217 256749150 209753420 865562686 460813532 705961452 579001454 210638050 901085404 15010515 613856761 734414485 313152953 700998703 792510193 243506714 887822335 741186123 770377654 869480749 788612182 715621856 437504379 763872690 94141446 411312437 936838977 202693003 379698640 336181237 121535103 239950883 668605748 507000935 789247906 228809112 534163691 672212185 832731532 473562691 427725039 782784950 780682805 890940514 752595917 497130996 142882709 836320469 908763319 302888472 64674451 842287428 592648510 593682361 938891754 886588888 339591569 296078796 672306243 168558109 356895497 337883060 175107741 977137685 277492450 646224611 910997528 190214081 105026218 816400150 405217664 876430360 241429160 376036874 122053433 344231839 435091896 289980629 947723434 386208708 811167943 778712527 764980174 577503230 799101322 408083987 109132589 862640556 258345158 998910101 318826589 727463713 133277712 960299705 532643476 374192036 514134233 716877604 783384221 362718401 806578553 313932597 513652348 734226854 781278685 37822855 904641465 293814968 121663294 29302846 601127217 698801963 876869823 354927181 396662745 293863684 220895991 726830231 391819318 917087232 504870727 845958701 171135327 227455112 267217752 969625175 593190458 453182753 401459759 12176942 844909295 27170976 455243656 265206269 706444762 995549849 257726288 73453903 175542937 579357215 798830662 718361815 541191577 754067709 338935279 786568924 920090627 280832656 689482271 886753368 420283332 980425830 706240774 32078134 808092486 151559467 310626114 958273598 959095930 159295046 205632263 33074339 154838790 987162177 930246383 824567053 281271376 782487239 386672018 74107326 229799932 262692583 303763030 422787900 263518920 485149569 783534933 189364051 895471625 302479989 492663152 371047433 629651106 545899146 69159582 163697025 502951342 198622894 30992104 11595335 754681438 160478721 776541672 795286910 262147056 345220445 172696331 92324642 335489842 54683470 497626551 115435594 867792579 147254088 515062355 142470917 866239374 138995354 92115936 903369279 219262472 698028609 773188025 293994748 953922339 710537915 379310042 985114275 437149596 537121058 333454545 771001416 556950393 128408569 515682140 116811161 714415859 679010687 789557741 234206137 888448730 378986855 843552890 648952718 915630639 613735194 34844696 265675174 59090777 48564966 445537067 559127750 375047506 281435030 942508895 953758539 586273247 234813457 24665232 606504238 233494146 170050177 324096297 439978222 612898307 86650035 626033895 302412515 805231297 920268968 527464665 103846706 253391737 990570266 30868410 83903931 493095299 859774520 118022264 383057400 312863669 701328188 16150254 116517332 854811348 612777930 162270392 402444525 174118970 300359094 987884450 206317649 142351330 844211600 471571024 663687274 52507462 427692435 389045030 735966293 505311603 929168080 715321073 161734331 710678872 632981821 253287664 44951819 507633973 584511290 68388860 494615514 436869489 443614689 873993224 573543100 689002953 701910340 464821776 746030370 282467348 673386631 859503404 391498685 137904654 872347461 140624405 351376575 771300760 703117373 411498486 464453791 688172825 61618373 298232984 603564706 692187880 368901267 57354715 241259389 62588835 741169428 65639386 239426165 508627799 112996110 958046032 378765209 281908506 905992109 306337279 533041048 638164984 461138945 865913750 568013979 68972299 904153932 735231152 228858354 54173508 672233443 387770405 480314526 416637366 379864787 586595722 696529035 826502403 991607838 542586007 676226114 546480828 307998072 279522139 126358104 244606691 903294026 65791511 286445909 26180432 631947754 490136601 702709500 805423132 159631133 768941320 442792920 342229732 678570523 710173101 197159785 578825623 441257731 505465948 341569693 341616822 824050351 639823177 360621049 883550659 867421398 227834643 71863531 835350732 585857995 139246556 408969579 358922552 587078058 753199274 136012254 326946973 808931614 597150949 444811265 990729467 932499167 967746538 563978315 573485257 152726094 599381271 369925076 9238192 614633203 982196836 300767249 721210752 364255257 822609545 664150329 676621178 635989977 67087777 367998594 968554775 269592987 90433950 856310473 924218901 647035150 972428724 78406232 50598686 353146639 345675096 562951025 803361722 694880264 75866642 711557513 375506799 928616127 652810002 117623031 633893926 423171560 423989392 113512371 497212198 290964954 441431491 731760755 821339827 803516245 956999076 483241400 868337394 487626851 969608685 616535102 492824870 189352640 922250949 398965918 907094160 215836704 753008629 925989182 498666150 395059113 523569926 511516121 973232256 734623426 215281245 534250756 250591460 692301171 33467070 934359492 639321477 878783200 115244813 983348649 300885408 262027840 184076410 727133840 624165367 774592454 154544246 7169570 29873825 264687233 304597648 482289715 336443582 651383458 689932785 629486857 543301052 440467766 238589723 434997358 526557143 805125844 626963452 684201904 398568967 178925584 611953346 489879604 172802611 940847361 824132011 319802051 592420520 565991333 813702379 285224585 402630332 609045859 599647387 196356731 823200468 963184517 239114564 167743870 621081231 902198651 399956120 486585770 42230790 89418819 918203045 666334586 856499857 960403763 635720774 607621302 247752608 185287772 347534490 701184665 895906668 773758649 646429859 415081728 747457417 278247466 745115736 711654123 657342026 927462784 483635459 943231241 431719232 529896874 677924137 552844482 73225976 57560178 150797 460111946 262757981 599085681 832910004 217309864 278653197 868741264 361283805 801156358 972728210 173326153 123485998 400596401 317489543 750725203 440168210 311070594 105899788 127184645 186329369 263497074 589454360 875777776 159704381 17884949 739166029 41813066 883311780 207601396 877223315 932766994 757496330 414735261 754245941 666669139 203430234 507402461 518671407 631835213 570156524 612768257 92023203 204571862 420706532 88737867 312752024 379188798 918503281 408889997 123473699 524515095 318535944 514575886 573930267 479077072 547842583 670450579 761202850 530078853 575237200 275253177 108048721 625410823 940541836 878693646 952137021 137858671 393843309 307028748 928841971 852256093 65255670 797131359 918697192 880378941 506171677 579293155 81023783 287098794 690232164 994936150 730497888 734345702 850411818 808310509 206783899 204121406 267502704 218170009 775737609 980271205 371860512 458438988 878573806 349519419 449685783 487248007 975933159 847126104 822497563 616226600 445484046 738262436 30395033 449223829 395639461 599547540 760946547 439118908 240870978 22524623 913757729 114279594 224191334 760806418 518002633 897609593 998187698 214428603 313893582 602663421 326039857 190548072 620658346 48484093 338675176 557976452 885163515 5370402 493510919 89447740 429537153 560647561 694888478 767103095 212647769 943289912 64700867 180283556 710860601 105076494 846479410 968468529 402424908 479400751 330800616 346635229 875405562 469156432 770665234 83183085 306355617 27481066 663735047 268438668 37625849 299879506 23625318 959768809 482763320 174293525 749864178 613971093 722846945 883997088 698755618 551593797 199790780 611045563 981316031 244371165 227428690 869414090 581533997 205886663 995359938 72295857 408808002 748559814 727775306 29498435 442025164 384275760 966506681 562960419 949175900 588097030 459546120 706238184 714525016 585004185 121597844 32096564 258177482 252487554 898598498 799815784 569035874 765438092 234233576 499667887 553044186 480238632 996862563 506098156 90879293 295623231 345885401 262922930 750960773 309876729 720435734 495277446 60185830 479914887 734460240 832903520 486302633 204958919 961440668 979124969 10189391 490790748 80874603 148041 623177066 686892803 135948386 208473009 961277705 323928831 47840898 310858245 310017160 116852043 979826626 974794369 858017078 369003905 837305099 493504108 228666798 285793086 290275196 215496879 265580122 632567808 717225302 787376321 451712696 436434809 396923376 771367504 134655110 193256946 445170746 804427888 93039817 440032658 479868380 662804678 979870639 204126878 911125568 343056338 774567295 869494573 540008754 447394703 651760353 871566953 605232140 464868238 391934794 110553553 482702076 894889812 591253000 209224374 330365063 875060078 410589685 499602556 966164883 783109338 306144691 84188096 676305807 949884097 480522376 894714626 601794679 246372749 251353989 172836489 404235365 980399259 155614289 208711 249105150 734106722 730108764 575913026 899939459 719705161 985786422 189913359 944088716 706030495 747730130 871889619 98834928 197045713 783485232 143580626 808839456 759789963 24395710 865616228 535116023 256572020 431200137 252321060 707589262 116102776 218398494 975014958 420108604 898386947 197615374 57896177 204907962 951524145 379631983 709602045 664126538 509886279 162890496 667397169 198580282 297703388 484713824 240321378 924120678 681236926 641616990 428486429 248824172 770398712 368929340 851981706 388545638 131614810 425198728 60883955 810702371 651774881 224687649 608324552 338482071 116140983 406281876 198332136 31713896 347389348 660575965 228917271 930540678 60003835 234139385 306715970 24935218 232823602 94085230 626745587 289786916 126260879 793861462 357824190 190014465 267430983 940674081 152323528 992859968 888559907 674487415 435676761 349829022 666090886 476966000 314627273 468743899 495545186 623054426 385389048 108588608 70397076 260814221 683619197 272557841 177954922 220317240 212659580 275909335 722275010 863232491 466785842 336612054 32879658 290690929 325687386 850909884 509457061 191685432 69804610 422788349 926752607 727774646 101141511 235354425 78658961 890820285 778654359 429311750 913770969 550346445 846429527 345174054 796677702 931393113 454275250 819830638 743513222 48073627 30490821 454491680 268898957 580885922 9176007 836422279 346606319 36126998 455645973 503157501 919733997 901072619 281649477 445982824 956634097 997477461 239043476 977709135 196814085 7114249 563463651 406808543 354978987 313593769 144800124 787575471 341358461 441508224 530583581 234547819 913005234 481995262 269589542 713387803 880633750 52421718 694099871 667864159 471282654 145530731 425070257 257583790 614656841 637986156 78196497 339203960 595788232 736922576 779664024 110149185 176275195 495409051 234280314 98184993 155035354 707277383 611039112 593247156 929641345 556178598 461618357 675196343 259145439 408511532 352845363 843911402 294897268 201748026 168253320 770253025 282067774 254628092 42087899 247686244 352895698 167753762 882448233 895574432 703924796 816973091 695904456 218369620 590205921 40948093 42403132 403633028 284325981 505878635 897557605 885664512 151981331 671482174 776885868 958904583 951385398 39462763 615584285 216993728 540040415 825010836 145700928 564343100 924942109 5180011 274638645 352563341 130780634 104321208 997566830 438352905 56737374 751013767 365318340 448645329 560536159 635962310 661438532 234944001 672196044 299209438 404775914 673278185 58882203 813450320 923490886 233905531 990096805 147089195 5185215 425791273 228006191 236549598 273364217 618905258 944300231 706734232 275019284 126131168 333161535 458275530 686602506 788978313 326864256 749969088 592818929 405204761 54901509 889469878 186116319 549163404 874567554 352428870 463758377 479317820 758672530 975405070 108961346 303246771 996625450 740218072 487969207 187934424 781492568 419440120 133171475 121468418 492711820 508890156 574373701 813387596 546729428 754031088 629317260 847448444 968738323 53666511 47212564 10811203 237921956 962697864 758106239 533249939 922053541 744653832 569448859 13082826 859590403 540653073 241528733 367638676 975680104 477095556 661066196 121946854 983093582 140211626 172222771 62675141 994294473 874215134 362111932 859635814 49197522 381712951 836777958 398154497 607575039 995589464 82309488 82175205 881946571 865781148 494232274 1263991 272969491 893862073 636991069 645177083 869388246 479757269 698293414 534658904 982203395 341121910 714310260 194724553 495562702 963371433 353624302 725377256 657798025 54726834 78074892 431222982 84246960 992516220 862488673 879262539 184782522 511585664 859543516 964406881 267668198 203427575 367621043 478150221 707522702 479893123 557191814 722474586 161389858 436049605 947627029 850833604 491954963 7251079 173939896 823122628 810253948 496284454 785324413 380723319 241087228 387812850 986522086 993685208 973533510 204866630 937168169 751256917 341432602 270308 876181016 37467645 472453530 118577048 105125311 677927970 745186943 776732947 105634030 963600624 473830011 42875143 482282112 743121821 647254768 104212023 719718303 101642861 456044449 617553382 826931299 373432125 861389653 228141368 849719804 779105650 551224857 808240340 985329352 861828237 874775293 947544968 363186049 472242750 482088516 750805183 62736885 329218871 881785146 669934322 971875686 344524150 828483827 346317992 153331355 82718952 587160676 411950886 277998920 896737231 443065923 879320326 741009482 922969347 904895617 514227510 389913941 685601164 700296805 928717963 963091646 798818758 820047071 433438771 561609357 899780452 607918932 386037962 667061654 334230680 117398639 496078159 263632338 478783688 534023887 202919443 885513811 979064182 20290682 24669209 79885302 964321201 973509802 770002628 581763893 489124268 297024220 666907277 267256554 275670936 703388141 494188535 277439282 310706764 188332654 33984810 466211018 683230181 234875299 90751245 189634162 934538751 983894632 764708226 347745067 167645329 971070928 582326318 358654559 517651334 526295405 497946898 374622077 935254868 873421093 541312709 258702501 570352222 363396332 89438997 631058257 310661034 250250411 83542415 635799991 868803849 681242389 289600824 989887181 268477396 398641270 438940286 56500081 212518241 363662127 153948027 849145863 786299389 197614384 159559819 946945319 620123654 43789615 860223845 862119017 415157068 891525968 366963313 211556775 275376391 608869507 358841011 648445845 807169736 637034269 175376006 999134365 96081388 774120793 729934543 315711208 96287746 454269882 865096104 980752375 802258539 46206595 112811354 910075605 850029766 141919465 25408226 704441937 899778595 391858639 48913229 915016590 965209036 889421177 15222437 462865852 699005272 642347040 225329669 193585000 342375079 350383999 341138442 21995236 949012677 977236070 546968690 558752510 76024801 337620260 692452661 77248968 848960067 563435768 325598298 760418813 966859915 337630911 499059046 746288163 182173239 990591292 688153273 69154747 915580082 769892413 227782685 814600855 95362591 742062118 692667489 395983581 129444609 648782063 819586902 686011641 963474103 143354140 186077563 101492726 767160316 440414101 987930469 531719908 423971610 445130870 430195703 950192308 56920417 620133977 111542526 366368920 889533637 69406653 732515662 491172671 208007957 630426454 63113368 138844598 749388797 809130671 549808940 13770056 541004214 993068930 857981339 55716634 441880748 479051480 567459370 852564 560075756 939120914 171612078 816146291 137905383 950165621 804761966 795814286 275020825 786162896 957612603 426167503 966789347 593075383 811118447 325687990 383205370 93389583 610557465 699992516 766451963 788576116 890832146 840796021 635356586 401306076 292930829 24128950 75443969 594319663 523879572 935022854 987012050 23909283 397968889 482619874 582744633 213050034 755023179 583385884 540560894 111770568 818184518 487151028 647797829 383624342 218349060 878869378 979681840 739581206 592188345 818836194 454127476 689905428 715541734 705521221 701949530 427626763 955235050 805688915 825628815 501802285 849108190 922717619 307239536 36401938 93606431 638088354 379532656 35198662 407967529 228510689 498410138 225398994 603762839 277498910 960182776 818541852 544201531 639337509 775507645 492223610 554878518 552601259 781236548 408573240 17537373 300787178 225289513 457237370 717229789 388717319 87952058 415171021 114259101 288604394 507030185 884358115 317869762 637331232 356849578 692240745 728911869 214766971 143962573 597678945 802678395 728744973 217365328 393582718 869529989 39162959 219470763 350084736 735917388 991611184 213159702 601353346 322830799 639357121 641265672 479787196 278386180 439985394 107345397 540136566 884237021 160481911 500941780 300070297 347575452 579944726 717944010 643806395 423873248 325800155 583123285 500274668 995769873 417087553 602821125 548771665 319539849 664355315 591158623 190150427 764862675 376136848 880601048 857292558 637936357 674232951 41193297 842126532 94714138 90266521 538280051 842868788 455373107 419713939 831933937 619429861 725935576 935164940 805434238 982726499 997710395 203851990 18150513 526064895 239225685 908231328 961435648 890001196 481527300 338840239 798871558 323398941 371799954 389282998 13818267 291367225 499355240 689604864 55116822 844051824 212670433 183224103 112493001 875718259 692636204 381056399 511920328 418256822 995574698 9442856 453897404 251227902 28434726 90793387 701451224 293843336 79409078 774046713 397292704 238800541 790235537 807904509 904440925 651528955 364365855 101805129 852132917 126151382 416192578 506391625 479257074 201872443 169055824 114508762 659246955 954326012 585146175 385606640 762040649 873359060 984145679 285283902 605254130 915133176 130768525 331231842 766711707 512694865 875191255 103052732 844324517 28672442 11440392 386549670 430430029 195411302 354398231 311394094 740190551 610477914 624961747 275719486 512465932 603073908 692501642 31081695 40789579 560124306 335173644 98868039 876709956 311608829 486823047 283514384 208457405 345960045 103541861 77645738 116090940 155749084 573349281 176707144 942822009 186682696 33846943 623049523 670173767 39371422 213133423 134817507 29829260 777799707 727040157 691629931 43650382 853392981 203816855 986309925 689005292 395543911 621632897 92516348 772819310 699379473 97292063 687241235 913691507 888724846 241427294 586985414 286313636 402018607 736898280 590244303 588576509 268120211 184942028 85079770 893361899 776288141 631611418 240373842 699015864 184214497 510967032 788711641 245638013 991138861 651513242 770118393 68365474 648718666 365215273 691892104 195380529 443333196 896848254 577997247 237035852 373881976 767807604 134448781 468675422 875454871 508627853 309184372 968428809 785834736 135183729 626369011 846481464 277233962 996272950 303721987 35415852 969189999 71256374 968745070 936782725 968532775 375645421 535283136 30067777 213303045 711537873 152600328 328152352 926278187 370458921 250081062 658763944 911940610 50877478 974957855 732186587 984753562 951218559 946564378 613073915 165231502 873881412 587813073 300991580 676643456 252308766 933891713 534189188 381781069 253679041 633858729 568164215 470865990 164041503 549623399 115564081 18604407 443595514 978362818 109860275 567733761 390563754 644626045 314493204 123713946 393823338 680853784 66651911 981353590 699512374 119165999 606230871 875596236 995854095 158433182 501017697 62655616 566678708 851828564 162455240 818484922 101125480 609012356 699193761 455794790 419765232 388204231 364638874 757130116 823618772 213692195 267796186 92921941 291576590 476934338 736873047 808259923 830011596 697719663 943769468 640098167 40923746 826331816 679767059 827562177 271929611 118489727 3876322 336251464 744642946 891618768 984859849 911053381 520043693 357345144 240107264 834743209 381200138 327834538 331222532 74342789 316717153 716772913 170725624 753709085 479928036 792197431 118809186 729895578 126549827 979390719 39791751 855004540 253188171 559150100 171691478 856641474 834902783 112886013 896815810 696664554 519552351 258742340 418331821 760792078 280372877 996762443 761348008 674400506 183186588 3207304 732397122 675493496 974629279 156826755 883357329 64001574 453260911 762398385 141094454 364962884 539975585 135530191 238653888 946074319 634341615 479488799 660527507 721757277 310852120 982139173 316763420 512549708 81708652 381621507 176496728 907673793 661938056 754262356 499067311 936427206 731732174 260638813 336023392 429938243 543770064 452944969 708817050 489783788 533407281 630322041 59548041 867979925 503648037 102126383 621604278 114874149 226808919 313119689 933762422 903513406 935333130 245668121 711550426 934607903 944725629 9773539 980149250 398779194 9620310 743877172 910598155 156767414 572780080 991029411 200939459 508022275 940644510 61720528 643183332 679834449 516071420 87227488 180206470 329904905 28493799 624177328 171246977 497898309 291472904 463026873 147752987 642052138 679524118 78675875 820008883 420846841 442443647 688912854 143969062 861167979 812274105 277524357 770966574 252626104 624299494 664590841 717727869 900760098 726953966 265057693 827801922 383074775 233960804 594638393 107211972 126128949 476507122 844277494 115446318 852181221 91569095 830254525 555455390 886188992 837660910 707604477 15379986 484965081 476376169 171910730 96597606 319147854 876833502 676650859 282531860 209531373 303957230 934520463 568757411 263731296 997539016 966734540 843577795 98518943 348557552 800995256 959621661 94179033 274098263 135618071 201499636 171310787 158886892 553532935 342915960 349278300 772948100 29392628 234526536 166765056 832891765 973460366 222039283 755863612 938101986 524541720 816226227 432561833 428301466 620766697 452027201 283677104 904328121 393837031 405404633 548503463 780616833 745419144 613583050 274823528 454591671 180936515 995183066 214841546 719007157 106044297 376286594 526842921 16432253 134599634 392907882 373097868 350211731 666809342 591630510 103354123 910824695 94684487 234329345 298629797 113530735 647724062 544371743 697106519 673747963 970374206 529488988 620980918 375178204 755264107 323467579 639782407 236041572 171263933 990117938 471937527 147977772 622501139 914380417 988370402 492575414 677142664 181904495 600880033 893832817 33259947 631093587 305685682 790292402 73769662 337159161 582046950 944732698 51132642 190857017 831999914 817465710 228153231 467770710 665614248 882778485 169835894 627684172 655227080 5851471 75582421 283562314 930757414 355155250 836335187 212690241 865156465 131649095 563337767 48234303 92494346 982070326 373148200 140087769 694463880 974604633 394509168 579058985 464456892 491265578 165808413 805312624 899709214 981354028 946731430 870444913 439170432 175963305 628621262 161641829 309112674 337714699 231371211 637252141 723267107 490189751 122606617 709993341 746441755 74458097 847366623 76989544 677604531 396415920 695642165 240309596 902163022 615280681 336718521 428199731 252217664 265916082 554706408 424353808 317756556 407876478 577561591 551763224 112400026 205201231 722586851 47599596 521355039 838971242 840897067 595843556 194086457 754415899 870014608 447534631 353319290 698693429 853589066 888279422 977793233 348130264 680234540 945627084 685553083 126402341 845248205 882917112 757436533 459802609 10661695 278142067 51710584 973211894 281019131 123880481 477245349 711057923 948178921 962086700 46653963 569264999 224509437 829446626 750692322 460129033 96435453 187089737 771117271 777796488 663888509 809825580 668917602 759338639 984255491 43832185 244254271 868745249 177387398 135203366 291226353 716803359 398353453 765620870 47693045 487634463 90285786 505367114 985478146 114438875 274685712 146146073 892942820 108550516 32855539 202128955 76018779 967061885 285608150 178554184 630718388 579811114 965238322 671696448 787312347 441039195 285862573 721893086 375872465 886569361 70436818 992545882 611041795 724042762 655867954 194457615 22318207 597131075 204218898 176902202 722407963 515342157 583320261 416648226 561975128 485488812 103396215 897462950 134971467 827969882 723516625 540993435 344613801 106811918 475290518 128317701 839768346 603134376 23642859 818190640 58556753 24720114 868387553 681253975 24775517 326819830 703087231 409514097 269759626 878612488 212147112 462410497 202781577 339953010 112865554 402562393 279546364 725056263 992840893 413891809 723519194 927441988 617263248 73698115 614375425 794938601 77682030 22617524 171309443 40831812 738155859 281390384 546919604 239807472 274386004 203036146 147367582 523821506 368446207 271754818 837253730 136292131 798775068 887093995 710168348 229797124 183784515 481299001 156565015 68302306 679554235 285368789 692716496 356157120 901434524 480454510 43423984 196162513 793314527 38668305 4447966 262590724 383467527 649571124 968567047 251130570 817183476 206953314 659385920 563588813 260995806 319994924 283446771 835529641 852470421 953879406 966606823 688846868 26648629 931218522 590611107 875981471 396504532 706693344 238118946 951388295 342062196 298162543 355406120 804930782 547965242 950168666 324253703 842908259 747650706 517929215 416934621 714159166 56966610 518620221 419571757 473170183 831826400 981459023 708076057 333202649 816057453 46845772 191619565 704763277 235450544 179101795 261528244 275176059 89378326 774859100 567002218 708136819 808972723 83060002 99055755 269611686 271783629 149583434 383400016 71570415 288301868 807366688 255996909 316600678 756590775 507006618 101326467 386154644 821423146 607051268 404043761 375034834 930357371 914400118 993241646 566318007 605312401 820171469 188117291 701224856 833963895 992750864 644502272 339491895 511765858 558663828 615867565 298813927 949896945 510761226 468159389 362314081 226489273 796451337 621324357 781015849 173275335 408421175 317944371 898471577 858481476 687527942 290846225 812837858 81545552 765380966 209806740 509202739 550586441 49556706 827136073 156673234 383395863 279071156 80088279 321052714 939683454 925057125 289297064 574884550 738508021 379161708 380064232 830519813 243659520 503585332 284475770 793511906 904178603 744029158 95998674 776477225 94417652 226970827 794059418 226971817 238485508 109930330 648520206 385774862 502395633 638357868 511036977 437212372 461467925 562985007 766115969 197942458 543623971 188268181 266785169 287481174 270868669 358820097 849243196 241931105 263434880 812863806 698908931 828916903 738451573 66165050 355590958 25789170 970851563 941868866 415182158 699818673 879328000 176462068 977719684 133779865 899320850 101750331 544460607 606394448 326943108 510625902 614669638 938066773 600574007 734999070 220031933 316246741 318739804 290830501 278689333 400037869 801828680 457664277 837873130 544835186 803308909 675700737 220142227 728416203 954062892 452138609 447400928 516867208 54346370 797367040 446558352 278655805 894308731 5891355 346072133 436689572 667882110 264078788 165554544 219256868 625997492 309575511 516826819 501241515 780914953 233471946 775615985 908000636 62251084 322495042 588990873 783569573 599097726 384703992 326061078 771568013 83900482 586955215 259129465 841280565 407503319 915352829 257970105 76543009 615380757 249996070 27685500 287274612 673739387 846016658 395756413 883897011 450200676 68019918 787926301 332866794 744196785 36296637 569788704 633403022 58328275 102287495 477843956 368908858 470935097 580968909 348067951 384394545 202799542 21034939 630319479 809867067 499765543 869615598 656166920 140167212 871846972 79636262 211945592 352568568 851174221 719020746 83992371 422336129 215702929 835343398 662351119 948955244 283269415 163460315 698536548 287426782 431062780 336288219 677944265 819021114 718563324 903324186 107566616 266630686 699321468 589352511 788205311 283958240 458467967 47174698 157235553 507425231 12576141 837380270 543029676 91962110 654224995 39157887 107825041 567327953 371864076 767342173 335033371 888242955 40012003 60395604 823420260 928416696 410919492 916424915 763760931 781183006 643311319 181427235 687669860 804945217 199190196 101200635 938069344 836019576 168630608 482014722 828674204 918026618 799898658 410054748 708480098 193303676 381619124 825192954 671654442 514143473 408477917 407632051 181442463 751991977 480894625 438741649 592501269 209301718 543829575 68631897 998887925 1736396 310478325 996682776 823215976 281132593 522923284 649760735 589826502 371854152 185233048 5474100 225138879 637452368 954035216 74116154 236076515 981708118 173739185 486633463 177379635 212483740 58369166 250893797 457002121 778942131 350161309 564345682 909579721 399595990 1423181 103513609 414079877 10984162 690966060 911954593 408802165 667533605 972778524 733398 856190760 289713816 69887561 602377688 583595306 992112157 249753405 278674522 794488040 315730021 241152928 413843633 782564810 172969853 471941485 83611273 417141361 10698187 176532589 322955528 19574919 608663805 163681156 345420138 992701091 867356651 465258816 253644990 859515654 419125696 781745457 75685011 589978326 398376897 112890775 16077949 25946011 564549280 363150550 594429336 439178836 643923273 163347990 185754159 652063610 516755020 399484799 962161978 643844829 651356484 793243119 993350520 159266589 422497490 667767755 444401464 192248037 191711466 652530732 481004785 992640037 995383692 374751143 199037197 275521124 811144844 990909260 538787273 366980147 662887331 808432138 779128127 608400505 317670868 358007795 934370282 927202772 470014299 866596747 139147808 775576210 750025960 103020469 24140370 122035295 647974429 743461843 414385447 740655121 739323405 829591300 103710959 867480706 391418046 212244433 207095466 688928351 80111217 376640276 963503411 326637889 912404576 774589310 975535541 707148043 945307461 114173520 767597656 218026964 202005394 508001656 351681652 715540825 373906996 578405548 199418497 859843260 181925514 562836722 894940893 260736626 720421845 247084493 614110806 943730241 565010765 338743761 130491392 982481003 411095369 388764459 335985339 491549213 539108469 329551414 629706296 758221494 605327532 854696698 562344196 691099212 5283630 21715757 81744565 891217204 925274618 528344763 570410826 178105250 571480944 372204626 696994219 71340673 518658875 132249205 294692012 709640109 34374781 672497417 98211757 634326768 992954090 254629443 587165132 607078376 831390648 748892921 617311086 627645712 958454827 246493171 109076135 263449939 942584236 370891956 203754126 783596560 526068957 419413380 71783587 521374065 826712200 593731433 915667049 717482787 866736219 604772743 140332067 719226114 239328433 540223219 747716409 112930539 119949587 823185531 621828504 518680115 70143581 262238538 729529687 552352324 457477807 378664399 567300594 117307973 208250795 671527755 836080432 199256454 178194654 77341137 884153514 28069415 370604180 9089139 573838902 451553324 204966255 927696713 770509756 418127838 492308208 793577740 333403968 199336345 874386527 771074845 106730329 826649826 639766974 66365894 611736374 699805209 730299140 499284604 218843941 45604409 990646880 179312051 246129307 232356649 971836031 983880113 346210062 530914370 340130993 676492626 92688496 813074547 350269312 792345498 881675844 366268702 88495036 647489427 966710143 601334271 703187121 450074915 752505689 29133459 208597712 878393155 337243372 25929668 346007196 118614251 966854425 329800066 347965716 195131278 36862207 395077439 863847813 551549875 553802701 350282189 579487601 644376304 556699550 950629244 213628407 724619656 835209495 561206968 621499875 121069667 349307887 790143791 269348173 310659029 227201833 90363053 613205469 7765521 372843063 996747409 79641872 92543266 308934012 392376883 96623201 433841076 750041168 419007932 132324996 32928931 894252154 75410280 171137999 925151902 666693233 68280773 879067787 479396349 842214439 300286259 550972983 378606859 215856795 311298822 493703594 651569310 911619311 741719091 516076675 156127378 966954693 337311098 506782669 71956202 16668213 987126452 192174058 140690262 808735919 833824220 619009754 257488022 30152535 873045981 73452677 332123543 509991172 380362258 851095088 518042007 427742185 913440204 235497691 811046947 236231747 307517955 171598093 916561528 8706083 756918806 958458338 178499407 22232750 826752435 495991386 611950330 156549194 621648156 584506505 27689634 977487715 513177083 966366476 220937019 392338402 436996600 693511701 855428149 741062610 937784504 363593533 231513446 453313083 190025828 695180504 729545958 817447926 750711965 510522023 235787980 33740546 372113165 787385574 85142928 242437797 33465852 995528323 601189579 885002921 212538961 949160838 629622234 469952486 306592137 120795889 545212012 97197357 339774059 477663894 291074749 36248728 340915198 243090265 294149848 495111995 778444650 845310410 945632950 643502434 31185886 646642634 204275813 977207125 94551364 185678595 153244288 398130157 304920470 920241119 489489378 238146754 222281873 700919084 474970669 628677974 451537669 470935896 941565722 485441834 64521543 927057452 768236800 230860549 455636075 492651545 5183879 504621886 94090005 324484878 221817287 113507800 171859462 840221121 501618698 627818712 895319996 357373967 740405922 838154106 694084914 568310638 718178789 737631196 721657252 612198954 346588545 350867101 303683434 891662835 226287230 395529815 342252189 343209722 610433114 839785719 320027456 833211789 951403569 65137843 267256593 667747574 771587153 967784881 480686939 198418213 307964360 536039288 358582834 341874196 943155362 34451385 349332743 415627861 782031584 402568175 423661151 203394447 20359998 823113005 814403345 604520700 496763835 162186313 841725603 369700573 92254831 772484948 729126579 613391074 145154914 334797457 888597586 397492786 352607938 690168087 511668208 817163963 301558568 641306685 636090671 760978841 754443958 620299479 151926278 158558675 243396598 749043879 281521081 509600648 544618907 78370261 296955093 124659964 925402559 688208754 136127615 57541359 336514035 618253931 37513918 942412842 641042644 642481227 253445294 308161427 154359861 537354355 872118308 276483583 881956063 322078854 450390778 765696100 252770968 386480337 749662910 484563105 736165880 544589134 24569459 379231648 648447135 350172919 347669699 457944862 557643317 283358052 534246563 979998112 822478209 97773782 454567739 294617829 598097188 489566663 77655159 791239315 578855597 445457985 920265649 420305006 588175640 769355052 702456801 854830225 165507176 273248333 717618645 375932763 291612139 556899347 875947211 610218108 391210345 979026382 760455980 727223842 712569025 923227995 448436804 235380252 80125953 574824720 870421126 544698945 201325342 761055263 21328727 790262595 972433660 931920195 81262407 422543370 703556613 941513459 556106706 98622788 686722048 479855435 84052255 528569482 583148294 657418709 582080105 309353623 917290901 438569488 617141027 929395580 148732723 384216286 840561184 701517685 454497148 899857414 685076637 884454682 313684406 487398159 882878268 838669760 247768731 537356359 788761455 836157040 474193643 910062815 199384896 977337167 337182102 512835291 265704287 849313073 316674464 773132548 950774830 725020695 995567727 80535139 637153681 269939515 570404546 393948730 205169171 914737477 318357742 219672319 783481617 417867325 894232085 476973378 577514898 524773800 461897539 296277322 598515764 962092152 258066464 850086896 361618804 790647002 470013607 652408091 149582389 72782857 870050461 714372066 746694610 646792348 594081851 969331584 17698300 655313472 139698769 356749298 336990802 270553264 638965657 771007848 348621300 946814002 188139006 496581078 726664514 129362618 287925316 850404662 999894470 356541842 229434831 216236092 517351367 982785431 607738456 994606449 150136239 331088478 154613571 856620985 735437628 416008548 556110541 143621106 31439087 80315804 992815121 89463635 933370827 832990540 936091275 800899177 407926569 80583377 572247129 616571340 328283921 455509279 897264299 880101785 77937758 251816193 685819160 802118565 557875617 344593694 37954039 286685046 396264835 839452986 168887069 195228073 887965925 403641033 878016546 970004595 514216919 967096502 588347310 320083536 152410807 775734345 75357295 697241346 595450596 301300955 821879240 472466308 919141960 518265905 575673269 26067044 674491205 4633766 561715640 455375280 372060890 398245530 890641656 645077508 81784578 893852219 616111808 39235765 597919863 117559214 658390848 297060658 41630072 791041150 890205411 431687649 825415295 710838318 84901275 480249000 82574604 134386899 25104499 323761159 497301904 538787451 162645022 12285004 504122503 239024184 808295039 623065581 174374906 406122632 711002676 453756028 734720853 674615530 104606614 312699855 685057996 713216606 427492016 860701639 595924005 931018176 435017155 20579248 468476070 360332688 493287324 386980240 739009313 794737501 532804089 400448664 861709790 818503966 5260951 782727349 492336986 415744717 971272877 250606758 290429548 960747751 827633894 231200853 652129407 411233038 216059075 481307498 794132309 904636930 571456015 771283354 620649747 317049555 778322833 610910566 9581995 307923143 486916726 869301520 43899549 335637113 531630646 365924296 926976670 725341515 153375574 448474655 93907372 615396179 463847375 695854414 950531997 187457209 346429392 453863806 88195780 26052899 555225037 96926108 913591906 100469234 684640580 51660965 538323076 113795196 982480944 184855637 947156851 365362757 714101468 141667980 951213016 873574101 820778763 847363784 876069870 670546710 825660290 666396312 658204459 339401256 283309531 506867823 225930553 191500925 870959072 480640358 694839943 639644458 821193220 416992609 626363395 820793394 791803862 382238654 509653806 133072495 581957564 5607493 744563246 654977911 221987311 364105570 498124958 4096161 118799450 766749343 380788519 375262970 946539951 74168526 201147556 142426741 412307272 570507474 842285985 693962740 658159850 831862046 454703002 974677578 497541321 646016806 95929430 748864551 708389070 743284336 362534972 889664299 148900230 154267238 481835635 809227219 475159408 749735349 649634359 740073124 835696124 114638308 397740757 314824251 486069432 186731050 987585289 164788766 436865786 137264787 541144532 127939206 756271068 247526771 464262085 73345798 947622985 728293676 799952365 430949723 36079018 455703418 885496255 32017785 84734950 876434487 914965399 507137377 194651096 611029074 395104952 480509472 573103044 644572767 433059440 973077656 976931944 941880730 179030581 380128598 589190972 508305499 39931141 885544462 790171779 238337084 872625880 208491985 904421705 507220176 173574619 789463617 409871490 132142328 762767199 500820709 207037716 240136942 911028417 140492019 706682598 374702198 952789125 864856821 950166808 545157484 336763513 463999363 398991955 109235385 171030932 37762795 97249466 439117727 740940578 825423985 588408451 357863778 473314888 540534023 567628627 305803091 382963314 309344312 528996268 390603827 290279155 306143662 172431491 526797757 698857720 158528946 665974638 137649002 377635941 324992437 959453251 968491156 186579217 498543802 909886981 510921442 878147738 459311156 836476635 170568998 721239267 577290583 151890398 797325860 713979390 864741303 184701215 688429219 604966554 842817393 158952531 887685747 321489253 837545823 79340913 596379167 643774515 207058095 175271425 56354381 951532530 70015187 619600948 72079402 713817484 237942407 81349136 974428170 791746300 691908006 748997854 768505480 69675023 165064257 45504558 642728252 636794633 136820524 344427906 89637112 51057445 298326558 195332337 205045223 133010367 89847575 276098408 405077994 324247345 765963696 390767997 962201004 129702447 294507063 494549933 638874167 254406482 406522556 731631403 741160080 448518788 543255576 907141382 35431133 697185650 126495431 468588302 750507400 480026764 382104439 803215524 471006673 900831425 941061673 56322644 875887675 242146564 258179871 715007300 624646786 742877369 153244510 554874137 778505101 25366490 624028724 90990000 56018964 773481829 702804180 958510978 377076422 86765263 872397194 25157 231046066 817097143 51553002 147610975 971681327 771846909 595714986 233982166 643224145 665525914 688544844 369044978 255150277 915682308 69774334 958890286 437117074 9201027 638669480 455991458 965985894 514808363 698116225 981464338 935553253 225411167 247139732 206248115 341881527 667259777 74641165 626066673 727033135 823662647 334894504 324772505 124477817 421528830 632825751 743226178 913570576 506658971 608313745 802150231 608239873 258263235 464995269 447023064 401877907 696883807 772168122 38196908 459852783 894925604 29365622 176229500 685560135 331746099 110118722 973362003 629815965 247674640 879636289 401439218 113863712 18631987 973951397 94706401 51955674 274595488 877065245 509108555 127089328 395189579 163526178 824989209 289122099 115119635 147253422 784752569 902639298 827602433 968863077 374363960 783421931 147245836 602444260 859538875 630866758 247468224 976528162 755540993 763366205 672279954 785554943 255651341 622325804 765671001 823256262 673793862 333244880 453820884 458719455 151356082 676032881 678463024 739731980 709950483 420695665 575207286 84600161 612142280 485438067 122722833 973601754 222006044 762212965 706923818 306565688 38067368 325048943 217683655 270765478 591156948 701049606 315260168 311792481 549698671 817084990 927379062 319614901 418240204 805650468 495574205 436266894 676853256 518928948 404046141 643304704 597422896 58991164 795179877 953469572 295797043 482316291 137576595 584634049 864631457 86404916 475258846 141145119 288819572 365330609 538209137 877053840 465383695 959181775 251759465 822738401 249209550 178671480 373429066 51728470 100254496 131813361 847793961 383714378 473600436 858152851 448552826 45665314 92050616 143090909 574529446 499465420 227546519 604668461 73828 761544667 512259488 440509338 548984770 209106842 808296918 534639909 180686964 77897374 863022793 583905863 52199780 770607876 483772751 796641498 424515261 674993390 441043909 695263374 105543568 928566675 426954934 906761072 597497950 992746755 774695837 232651924 913578027 980403731 807181643 755508280 905832404 52113148 62213082 900583018 509393020 411405649 680761711 515766883 405812809 174886716 966909346 436566864 436910735 375061545 632533846 522935663 838736823 191508708 131223453 968239819 380824699 722991649 993235491 217425970 418359668 725677406 306840406 902996812 991487 433421335 829223017 377491174 658706669 505407699 623633425 883544434 478417836 983911483 427923843 945072153 407640780 142907827 255735270 324985680 690882775 306486966 698619277 542628488 886855015 643981418 383777835 308064192 194152723 298108231 320299051 896258818 743385599 188318826 939322637 962459441 172308279 178131413 663784057 211497842 979354790 842083929 793142093 256970970 446677092 846517811 732974780 453187671 582002019 619405977 443363880 784420640 325971173 840995031 346614811 338593272 585033154 6511634 366482989 570471357 167249034 990039633 936418608 315560451 835608216 783364662 548755066 472124168 559568242 580201339 283405534 812530447 482513176 372750299 88660490 537386805 980581600 611796401 189400527 232341575 835144440 869246397 192687407 354539082 687872134 986001115 669018415 661635098 665317487 744598950 627972750 374904186 595698706 730615880 281209586 636709974 872194932 748086251 132997492 723556442 28398442 5340991 912472095 19211961 380699377 141564836 368173466 708110883 939900047 221503206 159539952 306418648 101258567 630383856 85139416 310001298 741569350 463873540 889557392 73270989 158182556 235823794 68449234 955813812 106748539 962514975 551408436 3608109 842220137 485825043 215760202 546745104 919485200 259118264 19580020 479337569 853521230 539698998 465100505 407715290 255734214 883279184 972094165 880516233 320035209 450010748 878789833 44202563 149482739 245070883 810298608 94407266 25187174 609167352 330314417 622984205 895141457 482603733 609259847 770352936 620423913 966410416 544161230 264544185 434782264 939208557 246892778 713247790 991425347 759029144 697309990 126860247 426492198 233454903 180629620 944745987 671057099 942939805 368406995 220060135 100315327 221769254 712168978 928194010 409156397 543146845 481051165 211960104 789468300 184846049 88034847 337395422 403814927 891792658 690835300 546516323 421360455 558389584 480025251 244875327 561623463 673027308 678930540 450585573 138394162 868453567 151520876 649541567 594834917 73716745 181818117 680053159 908246758 301753189 316509468 35857853 785304939 17158603 479498538 168100273 2018520 106292340 607766309 671649004 476425148 920798716 492862823 942113945 107701445 364428147 448719244 126387689 320940100 597113836 692887111 858513341 305614422 631054415 710088979 369956691 642132840 187669891 295210794 238948096 652936355 609930254 362284204 598283907 901454325 33314974 149486532 115540580 376093865 269375883 145507816 126185196 668115417 489344277 270326882 52019822 519378698 825220969 2755459 769869883 835545941 536391771 892986139 492685608 484376688 414650758 93415229 43375047 266625768 631998337 412117468 507266214 532311040 572374343 673752807 451523594 114577558 116180595 888476337 319740394 455870767 732316726 120346563 635180066 887568484 877164071 727221536 120234057 540488726 591132914 552243757 950538888 682228055 430054137 406060244 78173536 984518303 826532592 781444717 828890702 131711355 238297521 235174134 828788415 632193894 945100728 449553781 489043016 684814438 150056731 212361529 570844143 913021978 512980103 454026962 212487893 623392018 72468832 785034096 909847954 489089452 758200762 565722132 507952011 960251855 969990419 513295985 637412733 717611053 516874533 146835107 622704100 7978069 408298346 39514035 282331670 496573373 792998401 341244278 323229525 18567485 246771613 163787854 493272364 831124901 165216577 622039402 321830353 491048381 133344324 351341450 465584015 242635357 783584617 732775788 333172165 889327255 316413618 637980833 807342876 714253067 280008070 126529558 768512978 262850201 458153888 768807200 508931674 673271979 277357577 294740545 955606986 77226656 598976974 875497262 119988982 204302192 670433939 864056848 414494355 203447075 993304616 846801860 896908695 906179000 21161258 341893624 520703674 403115364 378596642 594923518 389611909 35567052 399494581 30985789 912177256 180756211 236007 619165357 616985546 207737114 583173062 286524035 438360633 976785964 854328929 380334053 660870159 338826183 437436284 450024610 401561590 784364108 564852233 242261659 66739279 630789405 373628496 895589902 551584657 658421410 812984896 680035768 395629951 30642764 596835824 135307676 643734626 752876110 444168828 61124488 69597648 47038447 886907390 172105216 638618956 36255189 120238040 909389294 192304442 343442495 431675363 431064920 217910399 36064402 878532862 535249429 69095781 37455462 77416217 859894428 443492449 710746082 479760021 790869796 697781872 159199944 645664748 457024698 491541955 775397363 93663266 694489876 820033769 110664044 629968894 615609194 224301488 415958647 917871162 24869364 346522157 885084451 478396222 580682940 665535721 110708430 921621499 572737665 181654989 952796465 414027769 877793351 541389444 434568966 903131551 6168092 816250401 433664295 374174225 643930544 210426019 882845428 174129685 827500153 977786455 284461331 20934326 582232239 341689398 415449865 163286869 73617498 687458592 991473710 212072128 809223704 353211508 401797791 704677994 554840237 157068836 345108538 743661623 509274264 126672752 458717093 800976361 930021024 260065304 67482231 499140169 201609461 449088698 340901243 194876722 232647475 900806778 701478699 691956325 552033228 604988724 836634509 642619950 31636133 674413926 415643630 246987297 936590791 612993002 784617310 546478801 288938596 854855086 17170816 510639341 56215000 416122604 345249405 686939760 518171512 678976228 489364846 217585530 207273706 929123577 707892158 238749556 39495971 125017893 750891865 593187170 356073261 726764496 467468271 398201734 479622776 219995889 869554559 869910346 54248814 367809437 465953112 959554820 383793761 732750868 841919507 175604054 922335719 819341347 788483524 361773656 468306836 956835721 808073059 930146552 352117706 678202235 625190193 880613717 810108259 430690680 162599581 595098578 637215849 541119449 132121736 361284098 223665627 955079990 780397902 39030013 429447812 886221990 568625722 599200308 804115794 437992937 886441064 281964290 257310884 58401803 279276975 104274439 804699458 486122766 486801003 301740968 777533294 47741621 889384682 412600452 314079437 826532497 561430742 646230568 624186497 177261182 364180839 764099987 987332782 158081393 205371097 959577210 251670112 820674158 309020169 615642083 883046099 694054353 438374536 445549948 743061600 605088697 762585427 597996679 465334225 360983739 75484916 570958223 183981252 822738005 233833657 982940107 262925046 696099278 328624896 832520998 590346593 337572607 582566773 305259984 127617680 434593257 646551923 592594825 221606581 413621110 236800013 971406416 793841778 899366234 119846332 883030467 20893038 294920495 286076418 906867913 860105345 929866672 154746913 844165421 298265721 126046554 192028701 951564353 520318997 196707246 593543015 990981164 459568404 854125068 563010882 985259057 507616722 57913120 198689372 997906517 609342638 64472206 368649835 49749385 357743178 261151462 868594439 360298424 827017958 775300425 357868433 716391174 677918038 58003038 932194660 130761526 793080376 551286252 110231683 656495451 628405318 181169835 927823619 884527917 822179813 659807775 463331322 144581866 40551045 705178782 464869988 432824637 303801637 787382178 896484418 519319413 549826376 294866315 886924799 484714467 864563366 957757746 358834584 66523744 853516958 464220514 210469592 264923436 204686892 626348158 729627803 611395095 471065920 490789083 944730824 869189505 860199892 915800364 803072305 590799441 660601004 780863708 780035891 346690057 414884393 31600517 806744321 704460258 735202244 492135036 404245092 646143890 810683682 505821447 411737211 668564476 204413419 350330655 781326473 670792128 966968576 623546669 840260418 557954048 998325716 961600929 645121679 842689163 350583393 89105597 448566956 715700849 882619528 630534792 918423496 427138184 669259254 579828536 83998504 660989743 952664010 140155265 974665507 978523538 26667820 643746688 788253291 816079239 357487744 42033613 852931640 853417457 8648725 466850009 350842919 750513098 477015917 398820965 145358627 473107897 441043644 49013744 905089234 566741016 662822637 29458855 843882546 472833586 750121250 676848483 60911470 742409839 25311130 978150690 925128939 541224403 979457494 632703459 456212297 699005803 686842490 715817210 144550012 479207702 820844425 302277332 336465204 364029247 809153336 91206900 273065702 438744814 224191698 434614410 671432322 978712679 498037219 883661511 475245576 190252419 269539865 124383943 668722800 505406022 571599559 699383907 430577688 912817878 469562509 361168473 786925760 477204536 582581886 576095461 56690659 394661241 401313035 494031358 941819808 135958753 622443605 591306132 89890020 150676257 917837878 460761922 708443234 670069090 713925201 520252779 14458263 75964967 572922423 197706894 957366554 781003504 415850848 441841733 563291791 821426899 390572424 988969326 607316256 162523651 51006773 473834884 446401303 487032785 712533916 195716111 837702027 351037946 72327403 396323409 674410271 968796251 956877196 209343548 115477463 606903576 439395871 394110816 961417471 148138717 531558765 22472448 341797132 839780231 251320083 703294562 227889382 777267520 274328844 741516776 436354534 858945335 75087775 614616232 994758791 476835491 153095775 993585344 789219084 258322303 526634676 757869128 200207656 949961450 85683440 483446557 190218313 458429763 674013181 730826878 197015355 891899421 235312502 58208119 125714317 805674730 440677583 182904683 248663557 477783495 946280856 825874700 676125926 409908925 706504262 440274756 716548157 571727976 168302031 841880011 770420822 324785127 92758970 761973555 262743255 291125555 672604702 351642558 813056310 505314741 437991451 70244907 533466096 436913630 869710372 296929548 939955522 998046332 4536151 789537781 949784497 420093640 732127033 890182841 14254958 377969934 850364195 283903886 199956158 396306801 514099906 998663969 952008958 701510184 522300521 285883925 698416 362798621 931826533 631030143 793120338 355020717 389021286 635730640 80246323 75390417 429831798 400998490 243804385 759386310 777754670 999459851 40888026 50211668 849496920 195735429 529618468 522288783 196861092 224179539 490360484 577511126 900786561 355183640 90118883 224210935 467623111 760458013 326710729 732098039 576341064 320860287 425524248 919966687 638413454 797539782 12106175 593363720 869656964 54944046 261185996 248830183 929097939 884579453 72716599 271207119 320505593 925457655 294256259 57669619 261197264 728542635 989140471 990359484 652276863 362214306 615646411 11678713 243313449 631105862 458925629 141725412 736712521 897956520 650041128 628827695 97921582 26262521 160209073 690977100 402675330 850855926 845719917 131049455 871689071 606080613 941978355 59548472 941913157 967616007 260295196 122064695 606812056 374397114 404446640 620542275 610207193 790678829 817077901 382317273 863753794 78342074 841968826 698986553 351049325 164260273 211237929 480113990 267443006 954959829 801901532 428293625 862960614 669367964 383091066 893776341 600505920 779088148 827318014 188219398 443505992 236672664 205976293 762590102 790900379 193102956 503859509 934857516 172597649 140871492 161322025 9902921 412323965 104918707 95977420 983385329 169459637 281007226 772085059 361499426 541897901 449170998 452947576 85803211 13533681 111997974 602173308 762364179 599633955 410312701 892625957 629226040 511713226 372056355 979380853 314359906 606587045 751941638 625799250 385069334 840864205 534879304 895048104 869690653 235972688 612874779 878464505 17603142 244556241 117666852 27653755 956282164 394031082 236164344 211096224 58627494 879083136 381022895 232627663 11208054 84581817 201701412 463943082 993623507 225055827 738482833 1339267 932143723 20681542 904576188 886354904 637380576 945263377 574253980 111330733 80044015 568910268 297052684 790161696 545059148 19719172 527099296 668688901 777069833 606603275 189455751 749213422 790575989 727814591 157042547 243996209 825105719 974929425 318924683 848123611 527552108 979295951 84329831 119991889 858951590 869796973 539616395 708716920 666744675 117555468 213026196 425659000 858796101 592472439 994144612 731616480 221785047 742306237 482544089 414127414 44631675 486070684 994440006 859405763 339664523 519586318 889257427 759553168 989765820 327652289 208458621 294885228 79354043 429702418 499899804 585103944 619699986 269666720 817546701 292399100 142390813 463947411 520968248 48388328 220309622 256656225 941477305 632068751 108380397 972695039 264464746 810157908 490351069 562624411 107233518 606033 966881673 493155281 658466346 910910709 725239125 210591782 226909746 883132948 728982216 286236333 336738697 777808601 72202512 910725332 807715127 448083160 719086034 485787674 736031512 603556769 245800064 789485039 312974356 645254378 170444823 803066334 467001711 845338164 559171777 864267970 96051058 526607773 558252336 454873201 535244296 509021641 713606246 623668254 226775739 994886948 178536067 121111621 782206938 740338263 491579936 574484944 95721179 553820965 428400735 276456172 471755893 139106994 487030339 940501381 210337405 652048946 645817513 449717222 198706034 497611065 750326407 37441156 55443098 498032539 277013823 18980951 791807169 708435532 580978052 976580205 45541909 4823609 430357101 795719670 55305553 503576857 992565551 601816344 757714906 400473763 515996010 672668859 975775593 670071447 939282785 405110484 660984440 718808288 261636176 581181818 917497197 665378771 339914728 822727416 714463535 515540410 288212930 901641113 595874911 390853193 721543540 578699239 54543790 132817039 283423923 151524349 874637578 330711024 926975385 704200283 388241563 872357124 282453280 541923355 853777367 220676147 695045480 465065195 353752719 971786775 922836539 496319297 700777007 572738833 203685163 718113298 296816979 982352915 562839466 449176086 822424366 834719740 775972733 808190797 452165567 986009073 462026777 615856118 300514043 816543361 228075418 26528052 108604208 197424945 44442930 445117937 17786460 270345785 142171972 610755175 653372562 671989968 751860350 527462561 583695219 706652766 231396940 167851409 714097487 719731332 818309511 11605417 938482570 899900867 469948462 554709989 572866115 310798673 411972574 488181345 692295833 383751689 44612468 347179886 296415382 714877267 80477251 415946269 809888146 698135778 369106785 429012096 58805560 104062840 506146475 280087967 905109707 509027628 699435414 517169358 485022133 185682809 138650614 152007520 408484461 753465213 815485116 91981809 353355457 23661950 202555364 35262635 883005174 831194660 683360496 598521803 618392692 151683837 873197067 803633719 536594283 372831002 296282054 221491601 761601219 237487648 488282882 474894109 136107141 222569393 410630851 340608812 521944266 276710050 384645146 785913668 453830571 505017739 589341812 268920630 574272691 921549884 345640079 408821597 79248867 551333586 530917560 23988525 962247757 150408025 615351020 782695158 405342890 358222744 800515896 449342716 472253701 696312721 712271979 305440755 937116284 789829148 484579208 117978964 431351584 120950301 971301310 130806048 715930126 412825365 615363119 286723715 63988802 530746404 674381997 188571519 204463444 167916384 683176032 378250140 196383256 380404722 936687000 935771874 163721615 716172570 601850435 925535628 547371820 679327977 288027107 739908504 765265547 49530050 259836023 972350929 114884975 445794460 410466191 860087046 550868924 458423710 880078326 978318294 831009863 488929760 335132705 384424007 136145087 504518088 590984955 71687981 509982734 65828951 65103754 165248471 919800597 635003379 832583971 799574108 832545572 586240710 428744638 760028611 901612293 625204938 528598852 93319261 727212068 548911986 781130597 320223978 2137867 275926455 972600516 507400086 709374324 793419217 939898662 626109562 687608543 864601048 59674145 551932660 312949361 521226962 577322774 29466400 656595353 182641900 822699649 667253339 406109062 517145166 950782264 414911448 527647814 861265625 806304563 87752674 287148901 794864203 999706598 256849286 6202830 88312738 856533066 5728858 66837953 839422139 78313242 559394605 959618046 210560360 682266070 975085699 246759621 219206815 271550506 725986465 303798797 570829875 28317218 129269717 420392207 352749811 261023229 934542882 543501710 858012416 100094210 681839860 967999520 764477466 586243968 145420161 699300724 94586327 535987448 405944919 702112273 680858985 770582836 242730947 516468753 664094843 606188759 130024266 129616777 250349237 450371506 912931769 664990390 422902786 906059764 198382703 840545835 609122753 572195945 50688299 453138311 551458366 432495534 843610637 139750904 475408787 753444960 271963476 884444562 812055148 267600539 610536986 513112661 295284145 212299381 446460699 942480805 823382768 106230497 129334803 92889782 553491615 775866686 347450079 559279309 489467237 563149220 733341799 44702424 510426220 751695440 328353178 909918434 707823182 431529488 855620486 938917670 348678671 541907939 776681450 630024952 904046221 124695688 570752589 574602583 111976575 591371003 781307486 479305939 284474013 579132841 446923001 602851376 508347990 886810122 802992111 395667992 221395955 358708347 444607095 919806351 711645834 991343731 532541222 530482337 854932770 715537769 638518092 542448089 558373906 737260620 473543264 23614943 351197561 113963973 629902166 527043843 490736427 973506163 730501766 568017035 428103135 738509079 135555 347247465 463044151 611925961 497566106 766453115 474601501 658024931 886846756 575303109 786089512 983622526 138582236 265291359 332672811 873295274 392921368 183567320 666166096 621110389 849646310 126899953 228920097 104910358 263893686 796323178 239398221 752729081 445571455 544287743 733635970 226432034 608209955 90522856 855048115 840892496 904172946 872264435 927637765 910493408 604454597 788723021 724451979 551534656 369388004 798259006 333646975 206493902 551309132 149261821 853947420 681643227 678819978 320181362 382938034 564303963 185085956 29911833 412927584 137996316 675091839 729413366 310587123 529608315 402560316 64566074 328148669 288993186 310602471 380043928 471959602 316775544 768892136 686151796 156088014 37478177 464807310 907616965 515571155 715408040 908279768 196862649 726400572 982575120 48071963 945453755 101566395 157770732 966110494 706990498 763656807 693861573 221228505 13673937 614969511 169531772 73482714 945955537 320125683 98846589 803437762 614247895 222098199 752276183 491468208 615485389 4159430 799823682 486008579 351554793 579918199 602125288 463915990 588486694 863679138 363167355 341838723 579152456 164609115 903651276 761262692 196932803 105278867 272175999 92596764 176373001 847090548 886231340 542785658 168309231 968907080 121220573 577755946 634398927 92060387 373971486 292448057 25374454 649946802 735146242 441794735 287966280 582492545 98007313 489547791 606580164 206094516 549236660 36654824 573181130 690946814 659624734 969460683 119091697 909637982 852481271 966039053 390069857 416788997 682694088 746773922 873676906 756340266 923531117 141543933 956050881 17668856 35951496 830394068 28469593 328603281 272173943 693968008 468570899 907006623 329420459 209167013 954717487 213418749 662133185 670842537 907663519 450980051 968655498 708305944 173988021 568041893 646981091 69354955 380590578 105291753 240020721 839087871 956387021 879787286 686939616 295650802 161695377 592696589 240110763 278653525 879110496 19710813 801910383 232056904 253436263 13312137 48796488 388523653 350955369 114626419 952612880 770992165 812191065 804465854 844728720 75053203 396173329 162793503 364261077 424939582 405142854 273856249 571573563 993086800 924454471 230669151 783641910 455970093 61064425 937726222 320800026 902609048 680883720 146416475 77836838 394427410 574874013 849367782 137200736 501727637 546809837 197870297 501610300 516972186 722233450 425164996 249315367 155276565 693813487 764465636 814721479 782566125 41685150 461691056 600250716 528132166 770899617 103256651 428452301 366668623 808465033 736207950 640624717 727046088 691434244 295098021 864622643 119250995 19023982 561629309 379259379 903533792 379471850 80206601 594335645 353868744 219601979 663276839 89445879 182123864 280375914 381824804 358138498 854360552 773520632 519731864 243184701 41329215 141532411 405436404 46108139 555031567 441366356 764829217 276004469 706347326 580331488 399697701 920314405 205302125 104732224 425797659 359611452 268636896 427782553 431523004 193487923 324240222 429686040 436089792 95579135 128838588 26238426 578004831 187709594 777432369 691620967 180958148 937656851 845930000 273808189 139704991 893681586 400145059 477071188 847573136 570274780 430612519 954895753 241702597 306068235 908889965 183482939 186859930 804399335 401885888 753087097 908585026 603101308 711990051 554454415 738908241 445259312 69438649 328276275 619516932 644622020 394132638 848306820 452878210 721333447 61617582 794059860 509845634 689673821 441995849 466500995 889369468 542873779 137942181 477183260 522242234 722237599 631436209 96093620 267086426 179076240 257135515 720754667 124503192 725175526 344565025 183493997 90927031 910777628 790891995 487262489 140304672 209897187 417072200 656109124 385592610 545742431 152182439 838091119 668533189 650366141 140147820 662916755 347676344 854614001 84339775 869944991 831798486 711667466 557741629 335460002 974129278 103551410 406789793 539100692 206774914 894176655 428856842 967990738 993878027 368110704 415998699 53055744 47911638 39560742 763931097 28301100 956980888 631811783 179983060 786207881 74407815 606983411 12899195 758393032 650479835 660077014 931697123 772854882 476448406 645752764 373996146 101103989 550555550 832319412 892941927 253469940 722379095 333220026 508079454 200900336 429146881 134260551 586721335 218710881 62026462 633013027 261386001 365197084 59587606 456986779 618597756 923698492 462573471 872922703 470682473 623087511 396712138 895800938 279351480 531901775 443088647 693612932 648594507 941998120 78489047 868460248 979307985 36495146 418642334 18555860 117232980 331041063 151187089 208092222 899593633 105761311 798118693 813185243 794401872 858919320 978918825 188703042 260786085 819843465 101267979 906347434 290998161 73637184 829175966 818882012 751260137 977866553 645132995 85491230 695889029 420354207 448613746 726867847 996520122 200819988 918210299 820580074 674479915 890890126 947248967 175227676 618525808 328414060 955830864 607721532 971459148 118221127 288452345 640588719 84882313 577028300 739432013 688619571 426001136 857414837 968213366 635308438 611098693 877867821 381148752 589417944 186214511 228982813 283590836 452998456 415239721 536024799 84722814 980334519 600772763 580534511 564178530 168193526 841808483 530722111 388161197 402828971 593813431 589670123 171993319 898631698 271105348 976122753 748983597 806573029 207895061 348731240 971718530 29259485 678182968 65658853 63609172 913212688 251392196 974095365 751635596 808844417 56450442 463507576 275023202 633037027 814301702 821944202 894657311 92829268 749093522 659096938 917645590 766566416 626843794 52336990 420661823 303155962 802842896 924302940 580821326 283924044 534442253 3197846 98908923 598583009 422480650 42791708 495866942 685212910 329694909 852222504 68053901 64067334 237163755 379677248 786623416 863886988 273060630 920511022 869974057 224321670 517622157 683762775 822326041 312395945 976277456 372816082 211691242 905538618 868163006 9584485 159335552 178192381 549351546 546972819 292411559 403305097 887503033 285978671 945811983 82427272 47614214 94205645 888962874 819096418 330601065 273081475 215984284 394503024 250036302 964811101 952223247 350771799 582984861 150558474 886419894 276109672 595152057 489758061 78604526 844292218 194745930 110894415 742674596 172729508 201016269 357249443 474848433 324530146 967474020 263818257 639807738 938311725 263082030 511126530 111279070 290059029 885138155 590133591 293722340 952430385 863865294 840533799 800479834 276703923 380677050 232800497 362640874 536591824 654339512 160967123 486968613 673969249 236256924 879594613 615171138 643540714 223211622 852707447 833137308 544139456 636632726 803630422 785195265 968722887 836414586 241911558 7726525 297641866 483784586 752547494 628422379 523705042 982624780 929915866 394160335 816898312 344990407 56606579 111815607 911260739 787073130 973423829 272151659 47504062 102789346 221561554 773031056 630908814 126529777 770859200 168534977 121965307 908939231 339998298 480564878 711248230 255365443 852132119 456002712 488473190 202904682 893202293 738329976 117130533 272820629 68880756 962038480 49459899 504130292 689226076 570612052 449471367 568749447 119610051 157563692 534571251 152182845 913455267 620710047 458543607 794689163 991100221 3953883 176552923 295604663 538664340 31433165 558119157 455621264 665250870 482621264 94330326 318198749 724728545 900353071 485167787 785990804 77811532 900315501 398114719 222836633 439400702 309342638 193996596 822536435 125239080 614154139 731990532 972093932 502422477 875907036 664602606 482902172 133255236 121704159 78419146 994717190 710422520 449379445 403069826 683515112 384129246 681051143 253285132 302479160 403531717 865675010 821848829 61814914 239643600 324222616 710861139 774409257 759024946 311946993 624832668 809550399 88014342 741108533 706108970 303208843 302450857 538970148 848435843 335790751 196512705 174565700 152879545 747570575 267898875 347362887 423088354 718039988 136264094 762636375 493885837 220192050 767994496 739218134 988118411 945021498 251995572 648971910 923859670 812653044 691149896 485782589 790801618 466925920 317092082 477450003 43728378 622302418 204541869 756001612 487268705 460500021 297432829 84688860 662283958 716424053 739368517 889195702 182369469 518610477 814897267 737029289 389908706 294007189 334600737 149989181 240707068 248986069 251546194 173531704 476735792 41720909 10383132 783481058 148954368 560578157 29270490 518413801 162150108 130844319 261650797 195106698 104135833 118050117 898136677 814839422 193136681 27304084 164824986 689232145 233118232 90521530 654551434 778464207 75601659 691818199 468738482 959737279 227141919 419900256 840582448 623626275 25348374 564107463 592644762 355220435 886254740 800068472 621869346 935175121 106646986 52660303 140303381 113516656 223055191 581811538 470036496 300773812 225275344 439397594 351936621 253418581 41570607 354193774 818986387 581832838 636833083 342049543 918971078 38553163 286337385 647145517 443122631 544356530 850083674 386201599 346302037 965993542 412892965 678168698 581214983 644176046 620390402 400203442 676226725 826601961 459945562 145009270 890641596 187016654 724971243 2728789 148692429 478900142 795263220 482755931 877835338 890412574 21256318 993321975 771325922 14955231 469940514 573721633 748857842 608294803 396695380 120304405 460977350 698682296 587071415 564349760 720878230 696027397 918578238 915527043 445525483 223054147 578098525 775581751 722389429 609707407 693262942 677575931 329367701 854479294 346192579 39908917 606531119 64145036 480141629 950596452 393457717 247146229 63359394 336923507 508298105 542677540 384825490 867644258 672719528 344688288 799946637 186995252 883137563 100059085 900410808 254619874 761063195 71289010 691024616 127273635 824375680 211745882 454191423 791077966 26813157 497754332 550589792 142359164 215901393 448447398 801798017 539398152 981346625 740549957 120212211 124084106 189557582 613039015 409162045 16633019 821098128 392710855 371318276 739832579 709247098 594163606 122800836 378474210 937634539 940944111 261414334 593102939 259014763 631040984 980822668 414047785 231563164 902233978 309282239 243034877 39847168 511449965 67394065 646472237 691135457 597940612 560270755 190825511 416032772 811568859 690764514 327223101 773741543 256178623 548604728 179587967 403221600 209702036 550850957 232419201 158062537 211586758 797998522 890639458 783811905 764802706 254768619 573703534 690698939 136701837 452755294 404586488 266457634 653206123 9233224 525438725 694100728 666283664 347596317 403639925 971086292 791446730 631717009 600421258 402861008 874121645 546212493 827796894 16094660 646250299 505488096 810037630 731429159 183083044 621986762 850493391 815717108 719577016 777084852 547318861 495613796 16605013 250562563 562881242 366723743 924106760 396564428 70375227 265308012 902154470 148238864 249998759 964695463 51342863 847663797 200819313 723704497 746171872 932697363 729875901 21666344 972621195 447672238 126395226 197336649 694707811 615500105 368695230 886171120 746723282 844885095 637923841 660255893 769074964 224147871 672615830 582296066 946530815 205984395 205365733 457001974 889180655 963921246 2425053 384907365 105080674 588367715 180669010 716089954 755092493 233609445 187178483 402070218 538630926 145006636 557959739 254973698 856096333 528633020 218253466 863062754 88835383 254479527 709220994 931044093 444827501 195938561 362839600 764620549 803182351 43149544 796348488 116901660 706814636 473472688 488252 674422933 22804283 477959156 235087983 414300159 505095206 229025122 980354140 836309860 785685533 366330777 721710525 858081014 214213671 178981653 610855754 595575308 167754158 523464632 686131441 749979503 6055953 262993851 936215200 141939344 725676226 138799758 735362785 129880426 466544329 24087223 63594181 624636385 641905785 432195694 180369040 223967647 957646276 550520478 71601407 293373943 573754478 287128953 486257092 760064618 448606529 419120084 868251568 569700846 892896237 519654105 786589772 562721907 531691024 495211326 73557023 486134199 139881141 594297415 891346716 612513719 192671299 473162256 170786932 224219204 3170805 860147879 989446170 295916589 166208042 754624984 23721327 727490757 92603725 439061231 739916590 276518394 644797332 996871018 939441737 692757773 480591708 498548944 857405994 503187831 370463605 49257669 289861631 311393784 447982251 230954955 242561088 765428738 911254295 787302861 2193429 196537448 817613526 788305878 673349414 681444338 253196123 415517564 224755278 302721327 644590433 126139517 158576117 208235344 123280410 557104497 141854063 504252427 139094062 936211320 868861870 341528602 951727559 553760903 596175530 407134809 706107980 788994835 816632391 914970242 201085171 276254779 538035711 234539329 791302910 468459242 584830512 748095965 828095634 359435433 93603721 356549128 355276436 523087920 553983234 254422199 73727303 947769586 227439335 474742595 581801034 885411178 766703657 624718452 526731035 974279699 169996434 630492526 67542051 148872698 680440776 49140498 84975099 335670572 990564853 404962064 621402359 709099890 453052281 851442811 941248983 654226602 543991694 404337670 731406041 848946165 273839888 644073935 75880783 72863595 584212304 29699495 212327417 302607298 697581860 64466518 253919861 640246251 290026306 774661073 521094444 782111774 55443269 157412022 576644005 580186546 64590294 689273859 119149002 594054511 428531496 227698339 88899755 237270894 277484345 265387242 287202321 133041714 280527574 833720279 948250475 296406738 976374814 35422661 48420488 487131930 758331431 718000892 862113553 852826765 828040852 479767829 455128544 39639433 421014021 378482868 533002291 31800291 107212135 901113648 644634199 957339780 419316617 877378683 987192432 506813702 617233436 430725531 287589968 947504837 752256767 693228916 608397852 823330401 382870866 790216755 3444365 131360916 228372211 951618677 500914670 783464416 805334285 171626007 310269827 868984473 705036999 97517459 643823162 547175055 800879163 365114395 47149968 97472194 294623857 944568775 502047156 297270437 351639169 321728141 931418014 72258697 390442933 494086038 392140305 444478957 62348564 634101566 926186621 211641497 477219957 946777598 11818715 786926952 117708830 838085067 481718207 540108309 884600085 904666491 244149791 760793464 752145441 950544934 586651320 800898715 819703469 9630336 323277716 949060923 473116566 808999272 586323287 175209867 527745891 36736619 417291506 754671060 516933324 618674218 170947281 1734747 246683420 275895308 757870807 442896147 585066611 338736253 543822257 911220487 67933015 74065762 265850952 940819389 795163225 751806007 576182912 91607186 347157101 508695300 102228776 87210435 104889268 601725729 964549663 323024368 214266937 375895342 336914773 240729691 404205777 661056150 492313343 199695498 404352721 223864261 782590983 634568565 207570002 553004114 554662685 223520253 906259208 393719870 560166687 356265439 411011010 507775617 263015724 732462510 437215839 705640668 73557794 611649914 862198973 622015739 998880042 370788302 841535312 410534104 874501511 563551503 773773465 436322087 56276183 765714234 975597921 573001758 480975655 990843136 258633875 32961053 502583740 270706689 147926103 330551269 843710223 493543628 862406008 896098235 389987068 998876701 323695609 151994243 691428721 852963712 342950650 29884494 132473149 343884058 983226377 408202436 14129077 675407636 26923589 836287055 393680702 305395337 102407528 706266611 518641849 838920577 847577339 928404439 83395057 964750244 904591157 387148916 676974871 763163001 260150636 995535388 158389186 240934402 670397123 587255907 16167751 700753573 272520212 514699381 265534768 407244918 472100616 313603808 268689079 515419665 495058524 679350226 265554334 85865046 521367052 494436333 780001686 91376663 254208723 905701744 671324425 774413342 110308192 75604282 444211541 184837966 322972748 787934415 911572907 606218552 689031088 111449856 316581114 447405649 939483236 767761533 957097902 292058764 957383104 415304857 674943049 280276329 809675599 907883821 34735494 344820394 443741206 523356671 859497817 223080064 484967182 639344197 945001578 826230467 421030122 311919113 584215926 603969755 25962438 285424321 582081471 971410968 129068285 214370516 123033479 701595376 910489243 975399854 804543712 736113599 104888563 966555444 481562605 332169289 581960769 247381235 263930098 904180861 733199118 373886030 110379431 953491254 469806227 731879036 772741156 768636405 64840929 970325186 835854019 454071486 391094202 133917681 177722313 939566023 341207121 637882812 750581140 605121012 86113128 803950081 446588850 169252211 913523371 759501762 123988300 761404485 689181856 683828699 458480605 639700107 288007587 446058821 892273425 395230927 270423220 540604855 445700175 80884992 123279293 735249342 432913228 553095354 692329939 249263667 296136499 544477583 588757530 172872747 652587313 511600165 487962924 521680229 385146814 442106181 762656741 95929173 533765010 275117720 655849602 619000148 380989397 702946584 494485742 507000003 889790257 958736053 816429547 901069757 266845294 813815796 471399867 198205722 961800229 238406315 592067772 207982652 743999017 623422011 643199331 492253153 782242507 943803105 840073817 32302970 914792677 117329686 461547740 195884650 179652796 491865536 866438316 450078028 36999584 978757302 626512338 449393390 760622744 114675519 109501706 290719684 269860333 327069573 464232108 429050597 959294000 21135373 449393506 20113170 317391596 358802665 877780587 915548032 232273240 251699850 374163959 874725287 965092555 768447088 677206810 567792386 391838812 664059078 66886140 716902958 70065333 559419276 137887281 28762775 859366482 821885522 384750594 830177551 776165312 712288114 54661508 18374712 91917052 50014128 978202741 166282631 796910894 616977615 35101817 724540583 518450931 590781470 354420037 699272559 76705146 363543340 298173167 415284565 811463360 745162927 503837185 701886987 950763193 902846398 12106055 976332930 422232313 386408413 719770103 633487364 110901416 406936351 67607973 126964939 108926485 570763489 66516810 403493008 662346197 684657879 821891597 94280348 102124523 311002898 960722412 98981596 77791626 41165357 889583096 929451950 127432608 92241218 953831210 273705505 924315839 410743274 403585958 438000311 704218653 746815490 347723581 132432241 372013892 428906862 369024541 106025474 188813488 750063661 365153370 830151178 419001528 277198558 840435407 925250265 219833197 400310633 544382513 212987195 267781039 148449557 5765971 60251964 580269189 862358205 98304507 158413149 479791201 147526578 419453968 829996284 487588797 68165354 429097762 87976956 780901088 445030905 668262153 156108423 69105924 944480435 290881720 968551805 501144130 759510389 859397051 219602815 119682478 751108252 372261148 265762431 709011223 176588977 64062887 855909456 310728388 967306131 781774282 939686806 953782573 218883327 481718163 808095790 444645608 804134516 533906414 385024226 213079962 583602923 555833421 963939077 577548086 919242533 646793386 967547354 107670676 233636512 845567139 739242671 358078461 355723833 900559357 901847248 216485764 754399691 917611597 273138683 166996150 753767647 572546707 460802283 470088339 871335662 92582739 106933144 9538944 479752999 965884337 91362229 932292766 214905779 761679170 184210210 716344182 288369629 312210022 183908035 330495356 564288587 287685721 989336252 805427712 608149301 474016307 388526700 252963367 83784871 176273796 948106485 356237371 532360343 580315146 22684075 724474571 103854423 194922831 377513088 456682096 924436385 151489273 986230443 659218810 663345984 761416895 91334483 74587042 189581480 547524801 216239106 355370925 804554509 354658064 877351843 302839992 324098815 373693542 796017103 165831497 256540462 282746989 424441571 50412923 98756676 945952317 239758317 197107492 418212305 136739472 392319269 837745435 513754284 510119534 957950615 84498803 604733427 591393227 970516596 720139052 849501972 745289403 907027211 552398097 862995264 908754148 916061289 222809870 919379425 735314846 379436819 501081578 174828370 373302312 286875997 25046274 516364217 934492671 286014540 260023245 550669337 243602572 989740949 798897208 546832053 827082763 939593841 409146181 420390012 891471806 650300581 963884143 408371672 486995775 162084303 935353744 952784761 617514114 673115685 198193518 325298453 17576342 236727632 970974841 68486744 293840779 493356361 503184123 646136243 230464169 493897583 53154345 445705017 799240749 841170362 681692045 766530967 83092700 381570963 655612324 611403478 13352964 854092557 134822344 657178102 747294035 706331045 864331933 414019391 365152295 264989383 141307362 415463063 259469975 609670538 906417413 513864560 788631934 782309834 983810090 222179154 883529798 652812423 442514472 219565195 980273424 879216703 636054584 626463376 136980161 144419186 313932586 948193643 734183794 697497181 622054449 20081450 843561961 741650030 290728970 571771049 108549012 652932581 142893928 81577956 725603160 453678536 877390939 665679084 486625146 135471868 318542328 631536681 332467802 693787124 231606454 648579615 820492063 589427033 960474380 284223222 620802957 737357978 53571958 386402254 624835045 255451239 799756116 264655157 656772594 731060822 912862718 492560493 635163266 231153078 918710669 216748623 799588310 986492294 419350843 573736023 683969972 282572434 479823498 963334477 245364033 301940414 434591956 322768123 970536964 154816031 356106037 443729980 61127960 687927982 644335506 740694703 147009186 502299616 122896643 352553824 951314902 366698488 695626318 331130186 767801381 685575146 749246235 922740328 300795495 17434743 250331823 444862097 902962781 145857580 696497337 477046379 11659181 714890720 63331943 552636154 139822679 614823012 476159122 225325391 392581790 150143170 998734748 51799970 556603717 483223618 303333011 734024764 470348065 600057112 376942610 596339868 780041775 403810843 534895028 706346290 302643910 611421256 72528746 559269101 289905052 329896441 42418316 664592699 43342715 535520505 482861552 535363268 719949672 29353544 573881198 566393009 544512050 884382765 182441442 487678745 957787377 315538571 702947404 721762886 799396877 168442701 839907666 463168808 827460874 877340557 815606099 724740860 886021355 879631890 103547335 381342980 224920587 18521801 554048420 642196363 462322403 419169791 865435233 518024481 123166530 972697138 797619445 287421104 170784484 321002025 932961025 996272780 689559792 312996819 86564495 741804549 728158109 878139209 836610509 72372365 548835981 688820797 959392636 407408593 749913674 99670359 251436445 615010001 553560081 533472921 875203250 425756721 213596251 423018320 292672481 867313250 560888673 381563208 770407317 391580762 693748879 410308052 485513886 656109887 349708302 178764108 344559089 406781061 145241017 769751938 255991937 430612563 632113178 410536837 300680422 182876858 746569982 570635476 725878673 816727242 598997986 959838917 667848231 298670963 277116769 428197591 400725892 513414658 708497713 725645614 312203968 913120539 181672212 282327576 148786213 423069457 53911579 929021603 602124249 837262361 395055961 957141168 130218010 94567498 667794141 997791209 832009407 179886746 927751162 547933632 501193369 397454997 731303782 630870022 81966199 310116370 498252007 65173858 425966132 649269325 977140112 668478866 545867433 957174019 521434648 266165734 954921215 305213062 216359460 575641136 47418132 476821492 983801451 245855999 129482047 734063252 236041479 380259492 386944984 364071894 745030659 738657653 297327322 971155806 709329677 697888282 795567931 815804623 465468945 887782326 943945782 233532711 749358170 137838312 92553653 492361348 332151705 703605035 500300998 69994524 912582333 919442112 987241148 650243170 942140316 510578177 581762188 259930666 520244541 865427338 89565001 809440308 914792910 663148880 418758752 106580400 477628167 92986665 944574343 133283230 58625226 428875536 142746489 684492935 621457503 863939666 893835531 972774350 217058185 675000591 587728723 26649784 304897598 593089235 688114494 595116881 423116583 575069502 5790161 522407322 857694077 277576886 305803452 394383340 407642029 668413108 483339228 767865610 380471365 714447848 321114820 852640532 292560605 1536903 968022577 83980867 321551312 676150365 165862884 14669020 56587156 239365338 918459845 339944883 364063250 676314845 825199670 282060706 445378026 775682916 561208406 570442940 3247158 782600105 323696327 377913143 107164973 723488868 229830926 490389410 347920029 749050989 734517851 266475079 132576120 641178552 8443362 541293495 378063704 656298190 488693941 288864168 507385196 836808938 35335152 191411189 40525283 241484035 65359267 830897704 153932227 738049916 581162854 835946905 884468823 52993866 957192667 831099065 808688551 517850001 732992828 278687989 741363516 266156818 114609807 214539524 61070961 438731717 827262243 815715331 172264803 933916488 725019975 747071841 411259827 640058907 674269393 906703567 555543277 333348960 999778973 635619732 99349019 212436186 387245319 730240237 186461672 151871868 626849453 42974378 1826476 583509275 374983672 23794396 56472790 856962691 81899274 197671754 934170394 569670983 359547392 641579844 425779400 905410835 34225634 155791803 976914843 555831481 551322883 340255597 861447522 934766538 133434544 21508148 796536334 191461315 963755378 986712423 150191745 953863923 329563487 280259843 895261464 796511461 648844671 378767020 690295548 217815498 159342883 297687965 840570673 803906170 350278238 315980960 818870171 396378207 958913923 413622459 763479681 836923507 9312785 119240622 291284942 230648394 539642991 244020312 119037768 254030777 71182412 318261049 422774483 930853566 177262679 301428738 732766330 614309147 988963430 91124117 149410427 949560488 160385665 124148430 100387993 726130899 533637335 334831537 233748768 373704735 135264225 373915013 955143732 527961663 700545303 189443148 832905355 571608953 478696543 120456611 722546305 298534599 322077122 150118558 895934128 309174423 868610972 844476245 639085123 581953523 963056118 975509749 282896019 877979876 986659197 31306271 122631656 885085847 609382504 101439694 864739166 596150006 360967234 567859034 143004411 360128022 192740681 106113900 691028826 510092593 291971358 252049590 270369349 648434401 387859083 245248680 373229033 81403030 366813298 71331238 149944556 174018418 220564776 441870422 995424660 144255201 242032167 228022067 473991573 914475005 398802511 427613530 638839653 510062823 680918498 501106179 447260855 844424783 205576889 228591289 150164121 429722367 173552074 186702309 498010133 273630995 254724833 925591480 465194553 600544940 226474069 687657597 54561992 855361195 607436876 880337641 41516162 994739882 587244394 537002 794275658 272415214 709856179 408364860 352482155 517953644 636188908 500291017 914169375 438683513 5131188 167665743 166276017 854068716 570409 183509418 713084757 125308136 993621196 484686839 698303311 55779001 821652644 676597767 619864165 194070723 435320688 790384612 324515883 139757182 699039829 350511308 179182333 379664701 268936281 897741915 59456904 127905696 886989779 463228219 747641556 378660388 245185161 560729923 334260353 762460088 962021343 34256534 780524114 264854736 918316964 913363150 968442732 398378030 68090224 11953079 105680093 614532528 174925957 693731885 183401742 344152862 611109809 329263701 339371431 64882031 625416487 45909463 402694150 573706208 211248788 784029116 935150474 13795389 911762661 432195255 933207144 453300831 237517089 976807027 150922627 511358559 706847657 106577535 894722706 839156278 334710068 516320246 677528380 795407495 315307892 101833247 672046641 731407887 398254187 746808670 561220936 713866568 363683063 621749888 716146754 133655639 476125536 613868313 370743788 525455279 975027057 560041543 104558631 324273492 21934701 597253258 163068395 544845003 450170480 692164741 944104882 221264519 297667333 864118107 490114596 444838130 968413442 958417546 111700952 79730932 466135504 629696964 580696857 678129380 287228816 951160529 396826881 608529144 29380858 897273684 439307933 27679241 915873154 242548259 141165167 711649659 141139187 697249501 351481902 643070593 26219232 849165371 565545052 322013832 276028260 385199986 762674110 798620270 873201741 690569000 997762379 799121844 616744006 325686116 633048629 626890378 818060003 180089892 747399824 142169862 497069813 477493934 158930025 525081969 167179299 24837167 157253999 771408690 958004064 649192351 956927756 437729776 409128455 459594269 183516226 193634688 549470740 416387199 933249093 675712703 141145327 137605009 155797666 366356351 119460451 923047634 368921715 553051425 386702816 906722045 243330769 221470994 686838558 733914429 279147370 368363944 620236517 953974253 166260167 359596791 410790363 461922573 15243550 370257820 984730830 405289097 252112046 138782351 413333426 50886759 850423836 821231906 765286261 473944492 67794031 513131214 531586142 287791314 452531137 533067538 735599623 327791047 998364841 460171796 46452177 524976427 295913767 192115463 3048423 997069447 781878994 847904520 926408319 577860644 779066632 236758695 305941009 731958241 682044291 116783860 371265693 168428148 429304042 662185439 454763598 184961581 130093612 993506877 301685065 542217166 47198236 317518080 12731936 122411893 125279905 376868600 384207505 178102033 858300166 874553344 844273529 213266525 330923766 856259915 979126888 231788809 500299347 323748468 408792290 860113251 332659135 370931204 35379496 477900131 494223323 45661177 356148980 909388595 337619054 968484019 864482732 156114735 904322312 276540633 260175655 925612028 498777328 327965969 997174464 874521045 772728365 592165797 902311642 771813014 394646716 576351531 593628645 658877309 809659611 679811131 158636287 519207318 415733590 183022867 853611855 361601287 540990850 673767395 231864466 107119678 119451838 834549918 536591633 864022331 256315831 276201813 980916024 522603133 389014980 814082155 441300310 200566282 96255565 776255474 747480827 328889823 71196440 916655011 333710368 122801928 390744414 892463433 390658995 387871213 476287033 876567706 165315305 844882906 88287239 495355504 136924113 126137648 817809771 346474877 334013396 497853601 208671855 588058158 931342955 97147202 211496293 158153942 166094615 258344338 780834036 311774961 377031187 574753124 311382667 265820189 883408725 631823240 38470405 433920619 34728508 30539327 193815680 127086864 329999061 36746899 940231858 31578820 417884022 545330950 641941932 501348490 539384533 834317890 645869467 830013599 556616873 80533714 610074097 716858339 207805954 218301177 855547892 953864532 726559405 700703081 836008337 892447711 304848798 118612313 443935680 538248295 803485426 811422652 177788117 764038428 108937725 477351776 428679948 867649865 947242023 70692397 679893037 131952513 637842916 881484031 297444545 2090338 774287640 906721660 817204099 261812549 793688851 592338366 908439817 144945349 366352664 561824817 239164938 252766092 696724768 68593090 363115004 304271418 485490975 939149476 754286285 907442327 414873255 873467737 486775399 186192378 31439718 572897533 383306452 649277183 850446981 625852784 946982405 907493017 858185114 802322801 378468903 341980795 71411792 229944622 14852057 664226054 862235176 74219662 738515833 329260802 242572319 681158083 509036747 750507109 648073977 226983060 782692126 756038540 705061187 895134354 449991860 728806660 83882810 878219270 589416778 620039132 865344230 410855324 586240914 762436926 244248314 789038666 488418518 51979816 253374393 776720562 342842080 864699877 937006522 284526543 796826182 677923088 942823281 797888693 559101345 990917127 824533136 280967543 773939404 721867724 435902148 138962829 407481073 42963524 539566393 465871288 609621904 888867361 741341944 846637194 785065332 91293402 603038894 461403505 173894800 177262540 623595886 935829176 637710510 196920660 517406527 907838120 692376379 146947388 290108453 262073608 203900543 354645310 187762051 942763601 111061738 255987608 74445318 489684940 142672301 598688828 832264886 710477881 185401722 567384515 924871031 860392042 991993598 776300801 796871007 929818957 384272526 932298519 427391642 779933646 246523773 38145053 942360497 210165812 970034965 184302435 108807856 392385729 426578602 587115188 865718435 730129918 607385781 693890819 12106564 77011098 468123382 695916422 369210226 10236750 203211912 803514441 888053649 400408838 336668613 92236967 487434437 14493215 230619050 352064309 560935084 176761821 841057600 862131641 856759474 191622997 868732391 593311038 78145816 797131880 479512487 521864309 519203514 33711675 591570714 841737663 591909853 7274564 573865214 853145524 215350975 801932827 267714155 9780243 377171377 492375868 659340750 866432435 359533794 570324109 39022069 967873546 183063320 486196706 278621722 719223814 650613451 185456753 101147431 415278032 173680636 949131227 531483864 455100942 260702370 724847040 99400373 573449632 217684398 854274076 812854193 437715244 319843775 733022710 289826409 333400273 390732876 872794786 196062532 991069277 399735670 438066154 180318833 791766831 768956325 594276222 878901503 226298273 594135626 856014014 730950677 865377237 315384885 404452106 126872332 847267277 216521762 210674083 589479367 574362057 985870314 146067275 282307324 734123940 577473671 766034784 176243528 378509131 78283564 284644110 427864437 324958294 171388030 625807763 587737114 73655591 665052114 917176425 286552744 770316737 201875889 982203680 253901361 811501229 984664162 968737255 626741522 616226076 706592226 750917528 219036550 238871242 867707725 38228133 382680513 397830552 923863442 900238735 904525789 813899492 442047770 917153121 683594284 382356475 185601661 261502831 141675645 148941778 328234343 519015752 523865930 737855821 141769439 924532345 665067046 837598613 508228538 65237341 366979084 532362198 200067170 213341408 849570505 242265702 125772424 155452859 380248763 532782391 400639385 112036395 806421604 230530322 492763104 144885613 690377486 371768793 879204851 424636605 40289508 852019431 918558359 570096305 987262328 715897972 713311764 452720626 903729035 645692089 429463479 255807028 923670951 460339950 857399323 780109811 718226996 934347850 612893817 71692230 950893445 841991952 57164446 474960523 693674206 730558490 587003680 426121830 511012922 525737100 653243067 494935730 749400700 270685341 984875831 594160527 708974316 968901699 643592379 332643437 542842209 723403579 567785150 626117268 842376602 87487953 786141476 895586553 442015945 713476392 446114705 178163957 486193989 120162759 918767541 175219520 846065414 32038003 233262525 55164168 926170543 683486369 618793734 84391720 846571134 529425412 808312727 540976798 792465444 47368167 984425885 349117187 223775911 999527644 868734089 46128511 987589962 825300869 626054087 471841931 363996259 645057880 849221853 111661175 454004822 366794064 853058311 996949766 790346265 596645594 806125884 489467151 909430252 650940556 281867917 586068739 456564925 734366749 883435443 787860316 286730747 982666406 635072528 331424461 604006059 871671114 813535450 489368725 172738775 623637132 293499724 15311813 90768432 378824848 866251615 934211372 37713060 462506489 99223825 181407758 610621226 783091720 615185856 968205423 154837885 132254115 328264066 711191956 459685885 556810956 839896330 112679384 20560503 450145790 102770925 906360798 902104497 546219623 938186725 698799635 908531965 795840131 988947406 885309977 617766951 919596985 748736061 748555491 647423920 147316050 908650614 547226282 364544013 883407192 968145872 95325543 499362207 702393047 821052948 624321863 158606452 280366325 881444138 584132095 280098860 838188248 660738662 52601227 84609323 934596180 355550526 178966680 854656763 501375113 509031185 835440431 237328053 838185638 780383403 983007014 860630420 45976975 30750918 608560528 935683710 232892600 327373533 193292441 736312691 635461527 76416801 135545344 666256992 524043362 307151008 323660 331343790 380940523 804666685 210462696 45837465 986612512 444589975 153973032 391728920 13818207 996034982 355630754 539214720 702101642 552519164 340428855 574867055 318589655 103239838 616331455 902099657 836041915 163466737 638937169 421188166 183256693 719612232 245036198 946301064 109946472 707512552 406675432 292715774 184657200 978734840 980079888 95212346 711961761 846374390 635477859 362047557 934762677 602606317 93805025 250905520 291374408 1981224 563140547 775426644 866291566 903968859 308108914 84075481 523073816 262260281 156817574 577428712 683354371 506494157 253219058 983653456 861383954 768078033 821856300 820730713 870849498 17871035 993575695 701606112 609698267 871125907 69737143 910749399 215859646 323291294 982945891 112743021 249833385 176137335 516507236 581977784 830650723 977396955 584776633 710460768 275246573 930025428 353526081 172905486 898755840 647317974 95790673 157006768 724007938 939971505 901805217 854242230 384485192 977727717 948805887 458081675 579000113 191657954 494158841 882054953 415346015 297746782 438031633 174856406 804629938 958415031 30555291 523235532 636553172 611322122 406011257 503615576 45759889 440982452 189486859 649071887 340097693 680724985 183784077 481161927 134000163 325870039 766165240 539943449 365265290 448835351 880868647 875254998 776771174 982139693 976143505 137197474 214681054 205209845 785126244 261540526 111914524 220220503 466366569 848781041 232027616 406689284 931136929 23329953 726673442 740968523 542297910 929088497 406587771 259597258 740521329 213939925 835530042 411989958 784432983 896903794 967414953 383251519 808346587 684497119 727745159 842095875 274929192 621099547 216384949 391866454 759816115 404664066 621950111 192616569 713209096 265996803 24312299 918659762 452975120 759351634 919849583 411190028 254712200 155057490 102069257 63981388 329969882 797909958 249033294 491841999 226246394 528120662 526222275 194751499 654842793 183203099 527382684 762279043 523395348 431123965 296381752 918333543 580006221 183765459 3761819 592778527 661146212 880157542 438823242 89118731 979253181 348109524 648347877 771872573 169778136 694321652 307774249 171922385 373151235 768402861 709307812 246356172 315156839 322509171 336961522 164040801 400890156 926795718 218040503 281991285 54288049 341887650 505492513 28846857 225509260 6163657 467088016 106560321 804753867 506031064 259458138 453218717 505989315 172134243 68063857 494809517 754577694 803923671 50369884 957687927 380738267 377376074 964279813 462055616 844413921 899098183 144244364 347693043 736692492 732511274 182138689 474531875 354543237 344537652 552810583 158246688 242546146 567030100 323134147 503669777 160439161 636985437 997489956 488189786 839653336 664324716 507368878 893378066 68124870 743424573 306793263 511403078 494660010 799009759 537570855 559488186 490246514 100915934 322089801 401672854 709832953 547807704 187174224 68897716 492251512 251010501 311529517 784715621 843477814 367522049 202969366 456057775 353899471 517501588 441875232 220481995 385740249 459318760 238200481 225010145 143034794 621205441 530687790 170791716 377000793 592757347 212115418 944172324 438261887 132186486 828159715 979007344 95966981 801297835 342556389 797896464 397000042 169374375 575025527 546258180 883659052 773195650 60874614 983794715 16963253 406116291 909860672 464257334 860986008 116579389 503585330 158571172 368509288 253715456 337198898 962460560 320739223 111894108 162428033 41112525 29140843 27456951 153386590 8834355 586113091 700672684 991965589 29696048 770102983 976348795 350935426 244475749 198473072 528405097 856539662 416414511 168625881 558556555 368228026 662543779 399351280 998726909 965763650 252256226 765280640 94527561 118481332 361929997 286126085 114824628 420623155 262011382 11976532 212285692 40475611 137612565 693459384 279723669 48490379 216163933 815406293 688125002 120244290 642665535 195913229 372524366 70348190 144343433 360685720 196584579 645116620 969692162 130537251 289983871 96520984 10198598 930005800 98976041 660588285 707328722 720447345 223904277 128358258 271570572 281867254 903046161 989665090 912502735 680146656 96115226 822400192 717487799 225801048 945001619 774201429 212186768 197870300 622292431 469542334 772515125 105847564 379200025 528999500 459748630 517446044 635124939 473005234 242481398 764749982 172014876 112722573 809504269 584091639 148557933 872033932 710360157 492977461 366133631 419794146 538922302 30581748 709697168 813180925 668143424 173545910 603496420 465446923 48723498 560373933 144296505 329857049 456117868 366077557 745020214 878645367 843295711 371102108 779411726 469605172 85342693 659367427 962158405 866031299 921306053 527707009 755679541 5039382 55234470 677809100 678876484 828642329 6699033 196661783 103973805 374228965 892139548 730313498 26406568 217373856 309275551 6592708 430290531 496624529 506451649 984708868 857879470 553114842 348973034 388732518 243422258 769340534 404499113 636141056 332905747 979400181 200581671 167228745 173440021 293912295 952037817 738716633 548750537 604856914 762968227 493778079 509089870 525720560 488785567 775167840 295196045 955405289 446141752 348172220 766208871 588746114 73676740 900512061 706561916 631088836 536589392 889787352 187332790 113354709 91398123 467982175 592265601 604509644 530199074 396009484 115670223 949023765 744231295 137755520 172480707 136955980 907543097 847126717 977084256 835229200 384678842 324169622 230074064 652775249 686183570 442337983 673545953 454721638 329838448 141593681 863286607 238318865 559523231 819781636 476761552 91287022 236453977 518471740 759376537 745615806 182164005 104730771 55246508 260622157 957758374 296437237 967615208 835689050 883203143 716477503 728733161 792168293 222433092 382576400 378387133 639317579 727155921 124252592 599635166 216415430 372033310 249035995 881086554 676936979 755217862 157052271 233640929 707286235 692536524 339316894 975453493 364916375 681632088 189802158 548564899 788462768 418849062 342856813 363573031 903990510 392515513 362092151 203227822 882127600 411162589 868294946 181615188 970370732 870746640 29789943 276309336 694402136 493786995 92114955 841974430 614598202 396831929 704770169 870378991 324017783 662705815 698240396 613264013 846742040 869767059 116135788 610195731 702312338 958486567 911314910 575455418 556332699 163274765 350930420 235078099 369833777 681969865 113734149 851395319 373647581 259926343 478554368 523890943 812858387 80806825 609122251 250806040 31583242 414157160 321707823 16259674 207650563 571040282 619318148 772102451 318566921 69255851 861611773 725878390 688507945 395920062 364917853 11310894 725726264 547087693 966709331 365446874 969893957 418250520 829886911 994481642 337905690 376009809 614670608 683549835 457478517 557737350 225844955 207439554 392792667 929086471 270963618 766002591 779280485 256607095 216361390 807396999 209565233 864531078 751359819 2046602 503409777 579089076 538920274 78442694 857878707 635180336 569997429 32568207 426806383 160328271 826742970 125941631 953356070 405822812 387583518 717774160 510477036 193220486 431344351 826228447 515159630 765611654 69492759 779838494 553334138 330403295 998798311 941452881 667429843 126664320 392166302 917994748 555238518 955004588 243573712 628518279 419436308 651028758 895033235 178463414 390096002 411386838 463250061 429066041 386954621 589085720 228957365 727710085 374608120 987386670 564500541 15036420 966990651 624162121 470055919 786074349 811605824 274525479 756511811 6101335 377873456 359767014 399142020 910422202 7416967 957951653 461432153 469521601 364502545 691993561 241576852 630395710 207750398 713256894 221468417 939051907 60710438 32258777 144926788 177157331 845345194 753185928 45283302 692398639 185831924 577616990 212518477 400391246 651072453 533702357 259640582 764697082 183318417 705363871 723008111 569540732 228353020 966111912 111408551 202100570 105522939 123720546 765041828 66000420 981996649 13229220 354499670 118431933 927586118 600799120 385678763 946305839 15049923 144842468 491630910 656674984 184211044 176524212 716412601 522753283 767005744 203668821 364913097 490596320 544279660 737686949 846566943 326468847 763496535 283788013 535354354 100587207 106122028 844630569 356737342 267036964 621166394 961998647 894748364 570314505 743696627 20485437 28714004 257796907 347541214 374611508 361896423 526510463 959274851 291516854 451210243 736646179 827249587 919856477 191044918 508522932 741798122 957887838 908422613 53205414 324741904 16981705 750570960 150088621 336072003 913797651 833625342 572886468 806947226 609058555 342420048 844091992 418027038 218501829 853068154 844154628 85775472 190761208 661127803 608602521 780970283 821391236 639821797 633221032 92678173 609466619 504526918 626683353 715778043 413460271 142793822 350946182 126225256 696170117 65999851 138209929 484907691 952263349 83059673 665114675 86664490 891992360 13395103 201333889 705068064 128637161 500727675 576430211 170088548 75281181 26080514 750371499 608714342 608570161 674985430 379805148 7771162 988355623 669801237 171261604 186586952 595677407 338275566 931532119 600830508 714327898 356998803 754819827 148059157 818299166 355093184 883422262 871040136 715673170 622222490 966716751 450779222 813486701 267389197 737320994 915861602 305973683 496303723 639404507 589500084 660373390 128340516 921125313 177708319 800436544 582966338 585764653 494857654 586831434 599129591 109684462 298916747 100382563 660694586 960860725 628830074 927113820 664836477 319781324 928784608 927296356 879044417 556893151 471956142 307629189 289661187 898103093 152377540 27929765 280906104 714137615 356574146 868892876 677492661 472770015 288071535 106684301 316576055 61680465 222699822 626190536 156971847 626321151 294456450 811193334 739345484 849485903 222402007 728863544 330855463 162996909 594833489 425654230 129003632 837679068 428473755 286399451 751616344 194104012 194794297 504551295 352331426 904453194 487225794 186916065 13813317 230243773 983881211 639233395 422254571 422519024 547864865 534993441 649505260 15536473 479125122 246532406 902841697 995390019 320447968 500499714 895815245 760466585 319809487 620176982 910623410 709536291 711412733 745133510 974053236 826625652 901864617 352803109 219535765 617132594 818240554 488825688 376736565 26774914 566939714 80904383 163112649 460951841 976735180 488355801 761224185 688410025 953432876 796604794 179656520 21430377 626707257 890260224 856627426 388498524 480381709 737531540 577935498 863401662 328846117 993784932 13296587 919157497 595314060 540187966 225717641 807752560 372211464 430165331 102700087 601262687 510474584 55918059 693408425 151098328 275198122 964760124 186588181 750993894 713863934 482555004 723982503 257559431 190435086 165978729 679802697 504344457 995006177 246796683 167596619 464275070 51494687 259319081 226019985 243343381 754288296 231021379 751386576 636118918 636928066 949158690 118277267 389565747 47970867 696793445 164081471 601296056 608980335 390304236 279900541 976822795 75562435 515179694 372467884 487290158 66140162 696093618 482145890 674552518 537241263 225101270 458888002 146108103 384918654 784869601 495063660 855251235 890561722 679332318 720013976 66916150 733480213 278060582 684789045 291098224 564898401 47254207 499058972 177038325 169086269 296643438 741060788 557943276 881050939 673170028 527324516 274368312 239424031 229766286 591229156 897885555 385140899 744431252 577245201 783290958 261759241 630510458 373360996 612363428 282367874 974848361 740896020 373854412 523085488 853820175 489125725 382234012 211956541 621309432 466246832 464329688 151846634 123209602 731607111 133717332 222568110 207061305 775338574 763838141 799384731 159006049 321104115 759828569 195715556 284355472 22409774 722193858 985012391 769853412 654900756 974317063 267315365 244249722 297605320 240878382 586102206 517926694 436922792 635782155 939674787 887840614 933142729 475773022 999794625 137646030 856668529 758288346 934848551 858158669 645425359 650746756 767238872 566552022 110399583 447221783 816760835 130019566 137774 351836173 666283684 585410911 140696622 166609146 700578573 530366925 370764911 486915934 158334222 910781603 699835939 293973165 660739639 504195405 523357234 735014397 778181729 707981255 844072000 272732376 646777712 461032025 534661952 957951950 322622020 273934443 8254815 853369693 11905490 757396675 468948288 404987164 794169112 588041837 56490105 377956478 840790607 607803066 101328703 630817533 501247718 374613870 404071195 700404334 388035832 739482654 644175421 820727507 907842881 779938704 57141407 411621636 714023314 95545353 138010234 235395548 644811855 830488933 857805071 865323377 719586161 932670415 816006363 131001893 902094239 452031378 217126221 235314850 29368943 791888666 90240909 818436739 966666033 345863537 938051102 173950379 287902508 936815835 853768772 175883887 141650513 482551889 275119260 4930885 695838625 527894496 123626430 213730322 61880492 434582735 873801400 549332573 84182926 488906945 600212662 328954267 579566766 814080757 208383698 653848276 753929954 625651299 28089772 667053000 292677666 691730264 74521805 227987926 242106734 180547650 261524171 260606975 785624114 726848446 108157495 72782468 718827040 748457432 165491501 403123087 658774039 531212895 682143443 182546291 267434419 902115514 399110968 53037792 86887505 581584686 792916456 958216242 451325502 560506756 689500336 362677543 823047042 541162409 882193680 956956788 611401743 66621458 102023262 46644146 59820900 457042476 608651594 337206441 302011626 82655471 292120029 759048128 593280403 130217088 787969022 646501154 713112300 608281866 81030040 334482022 393916505 346169533 99564969 152030728 668255059 818814704 536757229 601707568 91933645 867713369 528627924 419473104 368259629 490108615 866942437 754163117 10316123 826774169 714980857 458660610 815882287 114243625 883444692 910917752 832824070 701587662 691975951 535067103 116723779 143052973 159616703 443667756 211465419 726368350 251730887 960125144 347745063 306623529 944392944 784098436 543782661 253467817 831508757 649176647 742017824 313044511 54324257 693738126 539834849 129239382 900719530 382922334 313342969 619850726 561214757 681252214 796638492 679509732 961233367 385189918 604528947 588770021 892083645 121785338 842766977 406791484 728232114 741945048 507701397 703360819 66689384 307047293 757670180 134650114 714045194 352458553 904616790 219894724 376122660 862016348 747357238 392814794 936149071 853515941 945469415 317639947 446268824 85259337 688720793 650136875 75292397 589888865 363229780 358847207 123010468 114123919 208659518 565457874 188152707 941254359 50639387 394226420 23730896 462920573 155769734 183063497 757567363 634213395 869492046 235209188 229093010 870880560 717406889 118144990 386082118 560379157 262183151 586754742 799268538 398318181 443540433 918350885 635949199 302571952 681931597 450119270 2051521 481991210 289340046 199472426 583664758 729533052 808971129 728007539 88686673 391141832 46716685 478497983 22709752 637848467 145778853 271045626 163167679 360707009 63129995 920603899 75364474 984839931 388159605 792345657 684083269 553594547 11399119 65178689 802198712 948181691 883140012 302634929 396118526 670683940 317213128 687919874 154070471 337552620 742819549 993293342 974076865 574076883 628890205 835678475 347992152 129508388 350537130 478085375 348023150 423667465 670849117 860863597 419712728 321582593 6531432 933036072 374699862 970901947 748914893 356354753 694740831 49713350 150157760 64271102 144129792 635205788 128928107 340158136 284695362 853315563 106176129 797022900 617795113 729783271 255578752 420255323 926375947 13862835 543761713 416338717 623065212 696182102 834879519 567157980 777833399 941576295 361456634 82678 444842486 611782814 674179358 803830025 26362577 201686096 654582897 498426735 565772098 80910936 912003202 250454984 985971480 6281200 863393530 371114444 189032250 386036939 619324563 813163262 478856170 772840053 557766513 478351791 951291546 561404513 712952433 972819723 137076887 509592305 732005435 142182121 911799439 814143960 953326662 449110826 682035991 321140453 692220315 218786443 943781704 834958822 765735943 812287801 341735671 547330187 277158584 311315117 908062353 105336927 207973576 495321612 921833338 646375338 348108366 834393107 372080192 945393711 867188118 322640089 100688250 239544892 358898849 723529626 883158680 60453928 231717394 66861497 331735862 653657380 1575224 840872684 615022111 789561199 794871680 611350274 213546237 599417479 713891149 451113066 651575117 558576627 2005680 698776238 213032511 351681022 591216961 67529348 547870512 450655719 169877902 475428290 448095947 984278657 501488883 413325134 357385766 617194920 427184054 312463883 645871963 509594901 391937982 140533936 732193442 447930725 170967890 421507503 693034075 428409629 532925963 738291179 934026027 990058682 670805018 249903571 19636632 112743566 826092231 520157829 914693079 296818680 172027842 607897526 734445680 380129492 651283670 63983716 820591471 270998579 570060061 594916718 608877615 373655939 497399563 871764229 84024627 25374768 155284183 378578696 969898160 885137306 719862246 74851818 851052125 659801133 659546160 281780191 91453915 575163779 690489656 680076623 526935766 90473488 676357234 25489129 145577468 765065263 373704882 20504218 439953830 820275926 234405271 993593585 101451855 281184067 94840439 532402365 972664975 328706115 585042111 944772076 700437894 899355107 679663916 586160898 790392789 174264260 684991434 597375611 512858582 744099197 940940421 339350301 315294938 769439071 556131162 295273906 352057348 593632905 131375748 662375336 861436294 160815671 192076496 905608587 480557319 254849648 744102229 26387585 181473868 47207759 822784208 567169618 623390256 981992179 730103003 823956952 900943232 741117181 471942803 104161123 557374931 830452264 776545272 221504362 469997290 6392795 562242246 656466933 197661213 846848881 766758577 781030507 397134343 185680550 980167476 614114447 87045283 233409172 956294123 346595569 87715470 805608962 523647632 829207887 289161295 712424253 525920073 640415319 373314201 594097441 901715766 448131952 612410168 94717982 466611262 180075583 558094696 935950630 709179979 24847450 361510239 322546756 882189059 667512423 394499331 512138647 8373831 837758576 26596813 651146308 462069322 233513558 89851831 873149382 864532497 136929255 395570620 332075450 966525714 813426521 402928279 751375419 206590147 230830732 328402518 240935438 689411713 899929908 5912581 865709373 398398555 855957864 576553476 52961579 727839686 938255684 934843868 456563687 194222763 474181328 273333622 948963148 306839398 547397719 57917982 708026504 222502498 705345434 492417285 873665012 582307308 532390950 429928535 631402201 312878627 220974129 714966532 963422122 686042957 695914683 790157534 999164530 371954000 11077315 959632333 4493825 74394446 155752339 589120383 98075649 835653617 913150261 210411779 455197345 122237436 296219758 460896688 313284139 593428877 834947998 940293338 65464366 153227734 199025715 474212206 812163072 999872102 444726723 808551281 430530693 472548346 138356347 371666295 631449126 360703349 50346011 799622490 471949935 436549884 636878533 667813274 584394555 986029309 355723340 71451315 110698619 691407094 774073282 959472227 731025913 999739043 6303459 589396037 135408677 186551783 533280153 57599107 294945814 653463144 681201537 967341980 359838404 456262881 236848630 179816586 675344924 336442042 483994046 449585199 898739513 342413323 55846989 924521854 358831616 547913712 968583180 483256652 73127024 838438270 500359741 9610548 432022098 97270301 661000922 234016726 690911315 127996181 574812513 128122266 358081031 521552053 48246238 699603048 681806569 658575765 471815823 366486185 696973993 897453013 898411978 129456460 300144305 667701655 931876099 245513891 106704551 454425599 830576257 968608022 746675563 802165440 185520594 7520706 317063674 744582324 935302647 867216209 231134668 444432116 103483632 563395707 977752859 643296719 328396456 125227085 286249342 738474746 728760882 159777867 940873700 789824399 970634085 7229738 522859468 89665230 898602082 854714506 372672750 592817992 401871603 977788672 876482802 668255315 136815401 493896231 667594457 34622418 148268378 801379086 539605036 88557735 197394728 994721021 130111585 399131249 780529801 863416610 316088092 697405413 319044131 378807794 106460593 184359416 931786129 214687788 332531146 359837585 605234338 912989879 656440736 140429265 420161087 398718722 48377112 302037953 268701163 76045862 845713123 988679354 839719148 988785465 979525955 13429207 446680563 669148655 767233246 646704431 318689312 231967744 171451220 121179772 576703023 650595747 879013353 6254774 136226697 310020407 899692453 130739293 104022777 434807750 950917415 542141826 165305981 102750002 610202544 381297238 280287526 367724536 951332959 882514520 808637715 323485169 464319542 905523576 977709404 146578280 490377990 791734009 436106358 943045332 541112789 116126752 951938299 231001101 848779131 53884273 501241455 931990069 909701209 822604213 325340820 121631200 651705105 290607438 33815858 879138680 983237932 601496222 745064782 564260165 189289082 585383274 36773983 900143872 226797428 537968243 786947332 717080013 538666953 888467664 338541599 716206756 108309626 24828047 241235977 851103680 607849318 478906976 99795670 104635660 125777417 596832399 655961735 781534777 638320514 312244555 368122201 172862601 91182236 993392607 777174589 424843269 945134249 229873217 20529365 791123141 162740033 561239749 679184804 598892432 528182415 408572167 152425529 357324155 753475664 437700814 711208656 659834602 641498530 480746899 477093022 605248565 911872228 418963294 577568162 236310896 567777627 517025407 52767491 996982764 462548888 966757925 503691004 98506016 73454149 860237771 442068455 507547321 53236267 586723638 646801098 304598537 698096860 85216643 559359407 211631939 8478265 288007036 936007894 4848955 605907876 377721417 596865600 339970699 954528899 729891687 78094049 793160302 898304808 608908406 185450413 342023551 370607999 338401461 278639454 646309866 958343387 44620483 235255442 169976310 28821293 950292787 187896915 631775267 739520721 328261693 505605170 268570564 371121388 270819927 982045863 987746601 437816987 760684699 164095867 410360342 198702014 427324101 264013102 579401965 980137917 660119445 601781990 487784752 122563297 433725752 768573071 650440396 308157078 316836531 707285649 828007086 294359272 827265446 330140821 329771550 706841300 355816312 72021460 700375648 18396566 989773159 981638561 5122671 625229738 134150485 493694929 217793427 106883243 753329024 541404537 944319472 190104889 419564196 875102471 56920864 250496198 41237301 64744327 469685829 911547990 106293274 935923444 377178303 952397213 407892724 922990439 879571203 943128782 305617728 965981655 569942183 880632196 946586071 180100238 85996154 890482839 749467402 924942199 802516590 297371639 741304551 681502210 763282902 67398891 383003464 598369029 974305605 287504322 534188464 191176279 30203473 360531452 930519719 906091475 421168 90994504 281514965 496611364 931647456 19610182 223144824 144578876 27696408 896176641 716937967 714937552 209469295 629230956 741649196 461742010 901642148 120500680 932167948 737593095 813121305 177657625 101114590 232643198 11233395 331633616 667947894 529636555 3220395 559576910 512251421 659656777 369904788 198566060 774991034 763008746 958396062 907765075 929609176 151967511 690319692 699036885 617077180 522188903 986038728 80455208 791113639 844646349 779562041 457797361 345313772 564975444 288169789 534178256 493458025 365849039 344223829 131635578 556064815 871194304 731495021 230608706 729788445 533945711 902958847 622716347 553191519 163605671 847222062 358103363 739496534 661748838 561466336 998650660 923985522 142156536 682285967 567867586 621299969 802931098 568340939 314109441 445095757 515918797 618461559 749851553 423064854 939237489 208933323 17086170 469935282 609965304 455175205 111560420 357472022 824454219 784646884 653503903 760566870 446125470 604616251 603514285 597075260 934444205 314742148 261229117 681765866 441450981 554433516 542679750 886635851 756130167 999689743 999092259 357578272 851150509 989940840 451111399 11784368 588775237 454983931 882425145 455682836 471093032 500517758 455670180 859738966 858738806 513960844 335072894 118141057 24717741 729732534 487071093 783039036 199081445 885215212 862071667 7295925 771079965 965388073 329605578 933991828 995257969 904472344 10123524 539649589 339018936 438634094 809391095 836349851 908776294 576925372 899485287 845687004 499831680 260272426 340006927 778538008 482100626 486204441 728996668 445152629 46375628 132853573 370762183 4472290 147694829 522866498 313782898 834090221 926599143 666561531 141512880 643996809 663712685 582793304 600896854 453143572 372904138 89796314 785792257 322685964 867127371 17363050 669074266 109816334 733735890 36984915 320419228 854933814 130051019 393721008 720210960 601278182 500310905 378355998 942671058 155845237 232868759 515984349 32970247 724196661 661226253 147733641 198878981 292528698 181677866 424761164 179542214 801114355 618356261 483572058 886315659 273059547 434220936 938340461 104407593 845352867 111617763 388587473 835188166 862084121 841698663 738466934 38792836 417564995 985416102 659450659 500109527 658994988 661989075 382463717 655901665 891319907 113291744 873107306 954143463 805914322 50869386 19784957 123393080 441972159 186445943 162937678 736887975 876270826 727361850 885063880 480541310 913894901 284823466 167674648 412830465 94714101 347678687 215668951 514764314 451387514 989442024 518320547 830891318 741395207 243490403 314057268 122545178 733612137 367397750 35219904 312920997 595431940 803071285 896892167 685611037 172113049 403042046 78837806 708506776 752224271 399119924 969679982 505401682 814519970 38435398 537595397 357837427 553715684 244955961 17749013 624748764 790563445 799367944 917441563 515306144 687828835 557121554 616235916 265583840 896064466 847749274 412451320 883006896 506730436 68657331 371538061 372175404 741140466 689694759 778422000 61012946 583875366 435947611 170559646 566082285 874650663 261359908 956724406 805516237 918907985 876840030 933247298 745712318 74491476 312707878 396658067 137835136 60901848 211664500 908523463 705992744 244997191 382997932 809712819 2378690 334730994 728032937 586608155 410156127 813782139 341194820 671139770 103275556 339314198 9293638 996389570 934290937 107808859 86672095 342680342 655069033 326604832 251177773 3494864 646092130 718726583 192203253 708937539 718643789 285482860 604328293 980676438 11243206 45682555 815626517 507639009 478578236 652263353 253892857 774564677 48443720 18446482 79035500 278442744 617559209 147456943 53246277 141550250 446564956 268428761 449573356 190229212 266596287 173477674 247888522 335736475 572249508 279841973 582704563 554614892 770151611 752363259 608577288 452233080 448691194 268364835 415269908 319330585 247341401 412341177 191374139 820660661 492732323 673307932 286711961 14801821 494099090 791023524 2093482 10872057 865748178 801009717 784670966 450000804 812085755 944972758 216081807 219810474 546144165 405967776 988521773 609822807 260081538 208679911 170855683 856429086 957025010 14547351 343155546 300608649 230515445 568106073 658085274 440591033 46685706 77976398 465741051 231368665 4163343 517152658 996535747 10496015 602046537 235068774 891464535 684890887 720951282 743432011 175556738 498466442 462943008 430082527 900848465 645972019 751916283 245198992 871267201 92291999 172192989 25334290 35864618 442465560 462539457 792284033 355761621 662921424 678371347 815336385 87093345 517078743 361978895 825213419 886403855 184022796 38442138 576984758 726157008 846169386 824112762 370598085 89479068 780456154 853560970 318713254 564531894 783993713 221333082 315275521 486444458 851469698 69873701 601186756 789809151 55553669 639787715 441313359 985780002 683587494 307538177 863560718 874582888 693370152 454168628 914593897 391755915 362610864 258779944 252719878 370948087 385681741 805360787 694145528 288089368 671312173 647880632 287954836 733227387 282102485 642710239 785759131 190372829 792866117 506373640 313042315 757313054 433953203 557498453 244785259 37198407 476467400 45537530 842027760 199506506 110747109 764817871 180599256 654824469 235310719 874383350 794606710 44847291 241266958 718849543 534790013 925378763 187951800 449208304 68323138 673088308 573418005 40527989 69270419 965617581 554312403 867742358 585289900 455051733 589881532 289537786 426372791 470638722 997097036 580463967 301091877 968851491 422653770 171095965 717102946 169352437 435615315 706301375 467216185 815755681 505384024 288223402 314577471 106330748 531443819 574510748 863504086 76876726 317015133 69726787 401443591 619080671 938151382 520762330 887048555 758744444 874667189 749336985 630382164 152273952 411762913 528295260 698769315 192123703 685153575 395755708 332850301 449609558 175244713 423872443 728155538 466564925 174233991 715461369 849556374 168644118 482887165 360966346 110064832 718147499 206985802 97085387 98988046 837637877 705450013 504947446 267523422 582023006 477642401 778040142 968272259 579230938 40209994 952297510 569207442 812768516 581962134 135603425 186073446 662473541 706991592 464581173 339296320 911248550 80194808 771350264 369104913 807441552 568670925 112708896 129424288 318840061 540084255 76807073 372358097 56945327 653884392 855812635 418467022 400636410 594817330 379041007 448764829 1555088 143356490 50419990 350527950 158505397 637361694 528454137 844203856 157035846 189989124 693277447 167332290 88503492 292792342 826359965 560996458 794160036 219997385 924208034 770432826 470706075 605619587 608923000 969806921 258503707 848585161 61076219 629882885 871418684 107233737 478305707 648008228 580146529 136098476 516613320 645866034 183647475 247690254 181442066 356202840 120442783 417210691 193004013 708784818 960694410 636184585 663534998 323510004 219606912 953981356 871631356 44749010 605900697 116256561 771798724 890105041 939962910 78854750 9937337 379149768 998191063 905171500 911366133 257730763 987193405 821630311 103678410 592516101 938980328 97603917 20226134 400298352 618619506 115099870 664442577 738062540 352997806 351278025 884993700 74307543 397349566 18145231 47411642 825885664 355886217 724089424 382775586 524915889 880205129 321416789 943396477 483167039 62067993 84167629 446303636 59657727 869341093 30576496 110708944 668037352 437578690 227257189 757612649 647574196 54069980 849673738 931876887 216994565 277071730 13075177 155196736 591865180 612642295 872479962 228326081 484901918 838128591 87164741 231727781 433116170 134007851 480313424 35289118 277517366 99551039 46018077 310957180 928098784 609113388 120648183 468052045 614505379 661500518 334160201 915882068 492073086 113803610 525273644 898722394 747247903 823141667 47354750 195086427 49504989 422956801 258331951 710932716 970065712 232399683 941236363 628256186 338208708 689788126 961055800 152891445 807702512 237593664 52523156 546652614 806007616 290897315 830758767 911844655 540566854 629827825 290104806 787962437 715243777 619927860 358970847 263160228 733539458 291318990 311620506 468605866 665959104 711683995 304979318 399001732 647149083 49451179 233737096 87736332 291664180 925147521 459308912 97848228 957135275 824963349 304794988 461907506 925066554 904310244 54445380 763845242 979765106 935822470 987286840 33443703 888991768 492215686 392079474 152223422 767559824 41040727 611713248 158061199 481872557 7526924 42829815 643435874 264101238 712839791 963232765 275961855 322442189 902916955 806344860 1612981 838197232 279036214 705759693 300826516 563762305 581275767 619855555 905198573 108958201 475254968 238125670 278277816 185599835 787997509 223269207 69734787 948908941 543372373 986667281 239858044 100272831 405214680 57494794 4311337 28565654 3047062 314520476 900579102 838352378 641916904 686737083 422288870 618395380 781679463 42912389 790432711 449053293 176540496 706564818 841847214 436086199 325199653 214119043 685023502 239805657 920660952 251846148 355667032 371621913 69159926 220316825 546069823 675610260 227176445 934414846 473280230 747855286 992630268 194299578 981201197 133765786 982449219 877474390 31285839 490283640 453790560 954383589 810465584 246854794 752514952 716758489 191728651 132341617 686805137 939306373 843148622 43506433 290238315 710864184 845561213 158790522 69763106 545963787 357489323 376698858 724768685 904258066 445800344 233765088 108350053 856430767 19017779 292302307 967675506 712356601 831777778 372581282 886934461 246896861 101493212 728053980 485265824 847612601 809779295 343225602 561677129 855838835 921806448 493888951 374668544 654952310 564914943 159513176 73453714 784811288 138391308 651614815 975670165 642946141 515877799 539334923 911321560 863677707 582766383 711611634 32106161 816172896 54828928 866856382 358387667 328942380 820011914 775679976 863546184 633023405 883284973 192332649 642373124 491240911 558634805 502200209 384712061 89830649 634552115 516608082 323445912 771989343 159130323 75165086 708169019 857808219 836991852 263995454 383488536 604462024 818334588 422151522 929224161 896359068 83838022 965685696 87225816 463056421 84086229 648885503 608203203 627389379 798425849 827426088 745319584 332608859 161718684 286041474 425655343 145112671 963738355 448646913 503639575 338765061 463661879 437839038 257384816 982551032 603526703 391371498 667430667 915178324 397273171 541599799 990805317 922101383 857837555 562985792 790370890 556640823 185333930 536320190 696099639 733936679 103940252 525357978 190788048 772109206 353928759 849414015 44793841 956236442 704076806 96102365 435534988 567425028 570825345 485588952 19394017 735854502 924099268 627645027 79856454 595807597 647402259 488463140 361283401 965179831 399420653 667831597 512665744 135201000 122719130 852871304 18957366 213572222 636040651 932488225 615132841 58981567 396132766 66964184 224464393 617226177 932462109 1155004 902532818 872871673 464279478 786898746 350116122 691089896 65827584 402468929 986852157 203715409 934705482 208413964 906567375 169488096 984372994 40224153 201483962 290515479 323949797 549232315 443979408 508102856 689063398 536994470 693638397 693471736 630834539 401713871 215986718 116395468 489973786 600402701 396860088 429109159 153708400 511292962 257329768 348892582 296743646 595171208 310155852 782444287 141710979 838632567 984611778 272527818 155078235 865198482 810015499 903165983 794673244 433144326 583281838 440904934 385651602 685714193 522961088 88512912 47776077 987142296 17391019 787320698 593305101 286741209 917803614 884682606 66795548 236628822 294796404 760967715 339528316 336291045 976792051 942460179 965732416 226598205 806662185 233630471 307688589 519707942 412876543 392073310 269097794 319707566 560417711 661928577 625741608 46938332 699668011 694384193 738114146 409200467 432405412 583870465 266356780 560863151 586431885 650107949 78947323 601421861 847986714 692225975 277728189 443909156 937365619 902451000 590818251 138278965 857638715 671683587 915086068 105056891 201464244 764836558 226700362 385447758 354558885 921963294 34198841 584335885 230903490 917580702 698999576 291473842 258166325 134344165 711833801 255493901 705594822 288160454 53150222 828520259 962172950 120263808 381929474 198527277 18393111 289898511 352796674 666872141 309343612 537787966 75973545 717836825 51740391 307542843 589436420 985981833 256426011 871974221 232117598 167752262 707837174 810874705 736082100 816510052 550424480 724479115 137005329 646445539 946364740 778148750 317759600 791540561 747475211 800923366 5060195 434849336 574245306 785719351 508806960 216666132 917703308 212560603 284345433 791123646 392853368 729610328 90987938 845771272 971628787 179499209 965725104 156826978 834432545 100216043 191532197 751996017 608053880 217316714 244511049 316862806 56950923 227486280 178827318 862760764 364788438 909701425 7017405 756360234 617109661 178925636 423492449 976860267 745931186 85597469 45841779 647081487 553568311 253168430 868566920 720853985 144752299 265240736 381988077 683054751 540970414 400455430 587726836 173122791 338724077 499775821 721294947 966112372 193668356 835377290 399944701 119165304 696946578 515625208 427273036 243043098 668984233 281071404 89900978 437004899 899888126 185433314 214627131 196368563 646657661 737188989 509723721 32074739 318804497 178437562 584184131 158790349 268324527 945575882 400497322 370214793 828071430 452723650 661690167 183314607 52759257 336388316 685523590 315277135 111826588 471815037 501743245 698836793 793729445 6383975 609191977 769844906 185299163 810816315 985803182 494612151 208564329 39804623 970692772 801402316 623553895 828915614 54098171 950374577 702654697 165327379 22774075 579481210 754942110 431977725 95450386 54765433 52254124 828510477 507337379 913961063 688343175 655398933 150279342 66487136 224719851 698889256 633910054 866803420 137148057 738550114 604175878 315895674 622023631 620659209 805535931 728713523 800124454 318441568 762726110 176706200 145554112 233012138 329654592 546803893 692012486 157353137 546669466 882552602 819400387 243220846 518572093 139555488 451413601 564566038 289910698 15672794 347728106 519258518 476061590 180722507 187143008 127294503 803079032 520318466 380954609 503912813 650809611 307954030 684065873 619291798 667729636 196957963 987845885 593607480 997776913 415277950 534374087 89785806 897253464 877033520 152819436 30691859 318637908 137267891 245334517 765961419 115368994 270963016 294213704 811433368 326094667 493274016 846909306 535613869 496524046 50770995 53648781 506018195 863514996 649378355 34360647 689486116 266263336 96791929 222733937 225500400 86807659 936972789 5049768 718456115 234511580 969288491 393305679 143269066 226954494 16587742 286361749 434845696 81432224 264972572 206913368 539837573 282281984 191735718 651698322 180014470 752998840 316204410 178300340 234042511 461720743 871059042 274338779 849376007 707399060 240750732 396956500 664103149 51594227 631521690 655818055 927460052 791518196 376676956 79786279 438969536 126331671 142193509 166728438 447455626 561402974 451551637 262752296 329623753 931165543 840737226 631958939 165247242 960358003 972562560 709167712 71128790 551751327 977619546 895025950 102598648 87410870 88705094 88786888 520064806 618038481 670012658 776729084 912949056 370954806 39154334 166971952 201629188 49874781 794217397 801480104 364525273 104884780 385538925 25456452 310395537 287967751 674391493 888368193 557644199 224436916 7540774 560278854 843540343 993764209 494833670 822730064 594929301 710699988 91160208 341309333 111206119 268759818 675240775 563255835 492120009 170645052 891845300 144681697 833928922 337504124 253789539 864735094 614307176 631888285 567842029 32607436 960682790 349533210 232024623 552729888 940991774 212329346 74047732 99303404 737722549 218772600 508470872 252731702 470187867 940086941 720248963 91184514 471094203 402331077 188545735 539973996 471685974 23738170 455947724 943085837 918957130 484737747 538199861 740515302 415247993 726886453 48835610 387629859 240712108 502178688 20866643 929374430 280053953 426181474 403881141 2519975 360116835 649448713 140912154 810415920 843536300 388759482 268060797 275769597 404178307 427542250 121452264 653743578 681219544 363450239 460710223 482418526 763310955 375424671 934010733 491034419 803337225 970429961 102318500 79465396 203536654 132652376 867685056 686896692 819021381 569850200 190510691 750157486 831119185 786901881 926499022 185642331 481117514 247829956 304310214 613350665 489218353 371890332 350697076 404669985 804494333 767372922 965436731 231807769 713673811 320543682 637563249 57019091 606667735 678779696 392100184 477874232 520159881 761591894 731585461 257570041 159418140 27693312 620803370 524745447 684860226 829235381 298726324 768127978 196864908 184359740 202151451 208226339 291090539 382181853 419927220 241441052 548164250 835602580 837910631 487042636 688181886 54713225 461481215 578931486 38774169 18213168 540209742 720551803 147239372 428781432 869677824 151394830 682022080 827820024 260591624 197605277 260938240 417403361 521760068 858571852 865831141 110517915 5004427 764920496 307013541 396286806 399466910 15544302 157388119 2825402 274029945 648520410 728689357 782794382 606513479 219885713 584810076 166030719 744079684 847102972 202246646 653914664 341137649 617083032 50737154 253537785 578815513 279258913 696572494 250717773 731193498 901442759 756408632 385031345 963114053 320526980 811325114 951586248 801806170 21569477 610799968 774154974 586843772 841925667 857235846 132010590 633717241 994080286 673562889 181950318 215626579 949381793 945096141 839236908 96635899 818781349 957745244 890339277 473385185 574736837 319781198 411995615 66215449 644328119 361677832 759169078 325036589 941443931 874167545 929629630 130487035 143973271 198259812 2688191 115315463 553013026 499091778 152757581 594016062 308172552 690753593 520947339 902214250 168272633 441990788 696771281 835046094 83334691 142835844 996933626 911603275 525355273 802622326 910926236 968065637 17630468 180696202 557789046 281928418 409857813 460899185 954759318 622523803 877718958 709266437 731613966 383152511 948329454 333301488 831996566 582508024 198149242 837741358 56944720 829118217 852897242 260867062 285189386 884276873 584336371 482732039 789662212 624631585 600342975 775083890 586380114 345165053 47764972 906952342 818951641 171389700 540054093 822888303 262117648 979549596 364360906 239682185 18897783 172894452 611133749 342896767 389675841 38228922 408595426 827477001 328352594 49861976 519764870 537837885 417838025 119295421 799156930 768962091 586175800 963947890 596906990 988256660 297873471 615206218 286528466 568649529 991835355 213791779 663095165 545662054 841603059 194379745 302407517 663123120 931227612 199196092 170036073 311620842 396324259 521021611 294684748 358179275 382974645 691855345 40592449 555723105 432246929 160855842 54904620 437404675 447290318 883514103 921215976 308418656 106642223 808618590 401940623 236919663 894876654 640381388 405320008 847894849 146461784 263498105 681881738 509320666 337494351 198124487 390626905 336158120 483153030 216237746 565816218 809611949 604889357 957535648 626985956 552575590 804053656 727440653 230662368 463460206 217842904 249533213 502553618 721386887 262381602 467947846 5993150 204549751 733832392 830492281 803784620 510154933 93261423 308037645 672263091 753617345 540642097 562120709 864850587 505973957 865276759 214625658 535654884 439094126 828689448 950459034 980415867 57865068 624315033 294310407 762688015 233863988 208196147 171297686 758517115 280163898 683018224 280217938 79039086 450178735 49490131 51179522 773948076 233673073 994134427 228067541 849314560 67005835 735852207 362612654 844424384 979715864 432281952 81746808 757116972 567483809 898970600 136996272 492544508 601088073 799771859 498744072 274976084 899731364 18563731 970620544 975365395 775585656 553199633 315328285 987546546 964376402 104451901 570257265 586179220 745581106 863994356 892995663 502060558 52199912 896541101 118122764 850693805 679662132 242519797 162025464 353329505 409879381 117761906 244882355 864814867 864755251 673486860 380069690 929410731 8157060 597361854 53590878 515830767 300961022 174713865 353349309 152982445 656834204 365974215 634867849 910883077 127758602 750931290 755438270 881559048 521711454 174373284 859795423 434880818 353185605 299827554 411734471 803138005 919821160 922640658 682502935 581616407 354135759 665091711 599922366 125623751 620589521 91663578 595202315 540652027 353379897 336436712 173496454 303523091 535381387 963352321 986992606 642172672 980447158 680676459 444050306 720356826 678332373 152716174 963727537 192349533 432216712 72225195 368198055 641792228 234417663 630761378 171077320 492862846 283474796 627837338 362434472 185715621 859862421 284323348 893203100 140096891 762595418 589869787 726017558 856031952 8532536 516484916 14487444 327756056 719060357 687200599 335976612 764193250 430637066 327884628 374682861 212874184 389617975 453806006 116460698 660753452 731737002 219064846 333868229 649864215 308653833 244712307 916447720 235717548 745491253 251162646 317112714 989960688 171364907 282111002 483751847 196262038 198357863 103554220 742257372 212670138 498553886 275160392 675195752 574331917 595544999 946005137 669783955 899888461 666306024 391281236 854995786 782291153 967064424 472034850 761605269 765743731 132235149 439015137 185899427 47201137 524557729 251713393 983761267 154109809 245116490 82728738 703006269 695232941 829658630 623911306 341756601 374906268 403583499 22773101 155280966 892512888 35868829 1754813 239569532 450661624 426844140 943445037 957542356 436391022 441360960 295820416 269391941 160359168 676368670 428033622 114145509 226255528 569573010 13057834 435654646 971091257 996518054 467167734 137840626 302016540 801593295 322529291 902829704 977127489 274600197 622015824 929913519 207511732 390460450 257449341 994439533 976525960 348388920 484511253 213632545 46662277 79978382 423942879 488670 237228085 326788806 760415683 377404709 763697868 772394941 814529382 197110842 792644161 964926878 139016607 995738571 926326177 115042123 138071066 394230691 544815894 213316612 567949988 977894847 437428528 855513802 32212628 949500086 260015680 115575529 787936847 133380555 565232851 381825148 626764230 121764401 862479577 878763805 34016216 729837374 174490594 444030422 511933570 282892731 67189542 596398721 144405316 876616573 535895421 181114181 61849237 791890108 752371837 873217691 484970328 977343142 977824997 428002139 734416337 652328955 851314080 129703945 54694996 497945588 803450468 969982651 129343443 207266631 597088619 971823734 876706342 450911052 244586705 111771901 181587205 974907937 892616313 959928967 249012810 105518688 96250124 968981053 805329866 938565677 445116946 890728673 746041176 361805292 384085538 352066016 954204326 915950404 979116809 482709129 805815069 637948802 403328787 182014850 569046710 861283025 806376824 585652503 116519008 460608259 433299033 155007327 586133634 931907925 991156264 752910372 645055530 17584820 803312488 50503607 467549144 982737797 456111916 645715075 44566469 50340301 275939153 911651735 911407850 85983857 530346984 199330045 907729760 883364303 322205569 965995420 341929517 322308199 264247068 639447904 291176951 146251885 492345720 971357487 622850993 177855698 466113295 988809606 952273413 83096387 384583303 204655510 748566549 263097425 949815045 755962933 91651098 578475780 283645269 894365340 27334261 29041435 170327959 657885002 570694942 127955380 949373823 885092139 103287322 230289424 948246021 146319774 789442997 926818415 826489404 61916543 663347383 661360348 387750985 675005883 770419717 520761630 579985008 361184987 283055060 501849223 82529627 196672885 776874728 212702108 803068116 580552307 420790497 114098280 55859321 503815005 605790701 842798613 861844508 543082969 877468910 783802069 435904062 626079966 83840092 989431125 439673256 836233891 856026490 80560627 955675769 37566586 42692016 302769209 295528189 817387068 70072944 83146257 187838171 718328784 71818368 319653104 409187350 706669341 497418020 551006891 29934611 575087098 404624017 529271249 558228496 673833143 305009590 168282193 436705386 487805532 158211180 882310261 695147179 63793122 113871994 513515142 527645607 46146758 962936359 464929470 453759086 791985638 2276090 250741646 314348629 480999194 241415945 313777482 445612768 572660989 883723508 878140761 443710512 509715263 568148675 98942545 440702359 647358840 944260479 779501874 129988357 881125047 358724181 408828846 829354660 615354728 523393797 836908058 340801842 850824014 875790625 594387322 25429860 511068605 867733853 64221246 81823813 764222827 610782850 6407737 322640380 942343258 972035777 398857106 127721173 471966399 152223088 736799446 74487483 377764572 189184568 320735707 673852705 787423223 246813254 525755903 390867731 744046855 89644391 68462863 691856822 835168129 736433263 146362225 88419461 613846570 716707849 985260151 330393898 756782823 384410094 904930827 519769384 404214273 539909189 82940644 66510391 629018555 885226236 496013923 364971286 467134140 587880868 929016015 420883990 864729087 356972321 331015087 75137666 108183675 976711303 767587325 717139621 261382434 851989263 348560004 851343964 712735163 574608156 975954383 481343818 764456462 622613297 695717535 495464642 934022432 441708481 285635112 878521465 925190164 872192093 682422678 630507904 237579208 627576841 338670236 11776057 715814518 324894741 757647767 752874597 626481262 856918545 78294985 804851973 886830540 471438865 696652046 171637243 576606289 658820069 195198668 300995675 834684195 853146052 704552344 518776600 338536711 559689019 833948908 919740182 115980144 908092915 637197492 565550056 517442482 709818812 939129497 368618621 716253355 886890629 256646432 622586861 562571844 849689795 308777707 873236441 105928459 259957353 936010137 983420052 313806243 8463763 214680990 677584963 284186256 579882514 648922619 178475408 264053882 260771338 289144806 645766903 651623026 688585486 68083518 135295687 570993179 235165744 432524669 937754524 875646060 125790193 314593777 851994151 235861956 947080267 27761915 418750338 994685500 862319033 383815723 617690249 860619857 143850011 918059301 770416070 654356031 634609028 282826033 791088695 812590639 475131159 853644269 590029520 752971433 433560339 785232656 48787745 965973169 401951680 956069466 148523540 169275428 863832286 378112013 198161393 675595209 673935789 410002071 188860561 892337522 795972476 874527182 342102987 166751045 756060797 675619057 20034815 592971952 321676586 263296512 199390188 17410959 709385919 302321873 887350222 622786512 497601445 486871024 461115310 263641083 541533535 216954038 884464944 631642369 644398592 461829165 562340398 435123057 344291116 109539401 674105627 816881534 630847085 276235614 794295119 362311325 184833842 676652620 215105223 705870461 629526053 902789179 320253936 42681690 413462556 823953800 103773216 913027494 911010704 602649322 858131617 996301036 104957813 119655438 512129085 219878217 41315172 810181230 862937251 801569637 655735274 477325858 960846954 936870066 724510408 736749525 762611679 825034578 969866436 627106027 368005521 126077139 169227510 366590009 950930976 887694958 396459552 779279270 506165186 909832238 443963906 973068370 829108802 468642653 119749844 7348112 502518934 637027545 815389910 512517028 644979477 450058843 120560327 432383640 909602647 418467306 21239536 551220202 400566471 697498578 296275354 485098026 258492842 673013781 450564790 484754544 249719686 778838603 545436928 527799718 906485121 371152941 100086401 129822730 232899289 525269297 545842912 129970596 860906836 370302305 993017901 206591205 420079309 130524891 229323040 845935848 678644733 240025469 534834681 155102508 286832292 750897213 325153305 931380358 161507219 872667124 616790962 173365279 132529474 262896641 247700717 422816551 394791594 889021973 309523671 519835611 77174184 966387102 819000948 813547506 931740915 934199896 156729626 824375741 667125539 706775172 393596722 575330674 439905003 640094644 939918526 944797056 171920100 296868187 618987 250997752 944025884 278858095 216209265 315244023 399432648 244581485 297492424 261899196 508070443 762542876 41746805 292855679 854555060 151996786 419356259 109747456 982790212 650113569 73790959 653249441 7228697 378545736 894196288 587419895 763849883 289348621 28883641 633103238 200422229 790666484 768226642 180785083 991698359 349785806 185379968 127748820 238918799 687983962 745860219 944337975 582934940 212613981 649049871 591044281 615909208 662719375 297652232 151579716 388814826 494278597 740517082 767444807 249757848 815284014 642490892 231103284 975227210 210086510 264690844 588560114 610128862 24850489 77004484 984094956 756571714 189975893 743254014 150962007 679831371 528966886 345044125 482682430 782747067 531724815 462785487 899781517 908970287 997286478 908966412 747779404 106650668 224140676 377716894 708712871 32403844 69865694 496030390 438556217 450717321 108539666 572565008 954804358 522643461 615521432 11902501 189377359 100910928 529404194 303873062 750953014 59241550 432728005 276860934 16956521 812990949 690394245 902142280 888537105 786547032 652130195 39329804 500873540 198447962 558493387 926060074 661952221 602460172 393320323 244040218 586520873 30312740 683608696 577675665 176634618 569308231 288953790 900866126 214484724 792337454 392329465 937629488 188508016 522414051 761278817 926572307 980229979 473906926 470195439 95423446 338307902 155242800 542844840 709026343 732083249 909573350 412989615 602737337 978088372 434170878 454338098 216410731 446108207 921596286 719701570 514346459 474896103 402900052 18002460 453408617 788399629 140522186 847527535 207274013 724278045 559105643 306461401 293256683 61575367 794285275 501176718 554858586 711726633 157974830 778656527 820243488 272382586 272339210 205640941 289809377 412117779 162250948 179496619 753067620 651643434 95877466 800920791 160051923 930933571 243572335 188669024 48255125 302523818 739277140 697932561 245799674 839862490 977266893 51301855 147785903 399882392 476930905 797863405 239134586 381332646 395439438 164859577 122098193 787799740 797591141 847753916 185033313 634372040 348995342 131222174 578156975 314707913 757745068 895663092 140971857 894824591 191676223 374116848 676657842 989490688 700553756 61847742 400547048 518782446 305839122 2652042 932705585 285318872 630154907 28318993 489359903 598272608 262360279 462854475 754656366 36368750 244984611 516535765 492121114 316382195 701807761 196854691 974349671 77335989 235436469 818595853 857744013 820947639 692697863 720478380 969503914 562184175 530242069 326101008 601116657 621173398 193337207 542950331 567351503 235135252 237575273 855566113 832736173 864026212 176502350 582845079 343311558 988263723 306781924 837780935 38489645 51216217 329324954 306381940 890379699 43081681 315321697 380027040 724760471 489725373 551638025 848385121 609236697 839325646 711873450 910597756 321216251 5206294 215762710 103230515 793089786 870021829 867139899 46349394 391241507 802472037 166302590 40793289 233799477 580826902 474100451 213015304 476873683 99572524 857858600 478640893 541064620 772269191 70084923 375817179 435700542 62435393 830661606 184010984 873679809 387068525 296645338 590198064 590218849 127373516 678683214 55888678 261863492 48854947 381345644 179001680 902675644 81352783 840523057 132698453 83353963 374923616 87005937 109809657 924577839 925656284 947582429 655279158 619167242 829627909 894558782 697361648 259676845 307851770 323912472 926119245 232125861 940973009 516735063 652929785 209186509 965732002 250327589 414851433 82724887 141138507 14341300 92138789 24351554 875235347 953058203 206214636 435925490 997606106 191436927 549310838 240626819 549247595 929494082 360459186 786522133 90262780 741653428 916108389 603270096 718457198 458195734 739144727 254936439 981719329 986331589 696722250 693379339 614666646 528677928 70800306 936007666 252043876 987267619 907054364 400267568 729412410 889807962 895564466 57584400 184753602 588559616 342992916 880010158 787505803 429977516 159388283 861802076 801398686 10883348 396209347 937458426 699111718 403994201 536248340 293890235 516596536 9173853 424786063 136170001 596740655 902934286 386024678 479893605 248847524 590366136 722433807 204620489 278137989 530744141 638564516 719917382 367843261 882758829 131924288 225677926 131960647 554129371 428216524 228743732 987420300 396888583 247892964 36048257 209751171 438543197 864490441 21063880 315043048 990907380 27631555 367012651 974914996 874558668 821421076 172921194 233219060 170989447 344627775 828274062 235523127 725022706 490363683 2753549 389446954 953134243 495409693 42283112 47244260 627103092 554043615 507369900 229827165 18288410 605302027 982990115 847097222 559308069 277701059 454860919 42117759 308106663 216024739 669654213 587991292 697712339 388356293 643327669 310018606 931135554 100264316 372814812 137743134 943303098 65210450 950724442 359217226 879323798 929471346 62657724 381757876 403459598 227281249 770953473 875972538 346515820 127097806 759284965 985064332 879810951 218201131 843239497 305259023 767336702 310801874 267804066 592459663 768809622 489979636 954858280 123559338 827191369 289912955 421673796 297903959 266517296 853346468 488167623 786508786 103310495 552208167 588251723 268579652 712037049 420921524 615197958 193900430 243744448 713714029 24155174 304882625 54061815 836894755 709426869 50179794 194660727 801897193 749403449 583045145 497642691 656987718 650194647 301330517 348083869 69763344 215682358 129110595 943355025 550995336 400583968 373918350 41385459 55592370 393167033 716630433 336583228 782112783 497269603 729194941 811778059 820566864 968036229 273774506 919294757 707061356 283016087 614185127 824768955 858148285 771496551 317974499 129337462 606454105 62204507 178457258 222896436 811572422 85502734 505699032 253110609 116486179 287830243 174323373 111165098 460875805 777521809 576290979 655864072 162562045 264098975 959231280 564074275 106769451 873658987 286595815 851982671 451283459 545877536 433371455 639368774 89663774 88323597 232296531 409329924 500292724 876149434 910020357 787238842 378426926 583757201 492085464 308226877 735939317 755202177 157004100 327494638 908624174 710656029 551935588 181693586 66084537 784245712 848236733 691672415 699256910 462603296 27934553 367401585 600541354 145758288 32176543 888696146 985999726 331933949 222086078 340537504 896306938 236376688 687434972 298033828 574171398 440221597 957049924 379457818 206390574 122381238 397981595 240646322 528028277 188653804 702624891 963358335 528617993 483914639 521923595 910214062 106677261 324296593 743078726 796216270 909668145 79992689 990160238 713943602 113618503 787597086 177722038 268520075 834092432 199103407 309666617 602893265 247629091 836817260 853127695 472908400 868156541 250309821 801525644 373925103 954259422 119186918 30576784 749820476 880506974 730972394 51085078 229731317 616807499 734170204 212303301 596792557 472709637 568052385 487002458 246156142 265722355 794429677 64023587 409846664 729414223 498780062 963592713 108940603 326373223 160612880 770926948 889082949 392319689 959100969 994154759 194828358 677902757 284612778 543933706 947975775 541544259 369607078 609958638 702427944 466939224 972029422 52805920 30648620 751048587 440445986 834872396 6208993 174753376 913831497 795857421 70123100 699608340 244148886 238923261 918421479 75313529 858570941 205194262 428344268 614141997 481372120 44555468 72818945 891348013 801853067 61642459 461998071 381002219 150659567 74155061 5172225 188556009 165675186 713956155 5056344 406251514 858706958 643402322 366790797 654930974 650433950 720367166 60569875 551976208 987334126 258496789 9242286 441935688 375466998 583737066 994934752 880950319 462567483 895427623 179333785 683911696 135929630 522785509 252664737 595733481 395334327 436750447 163556868 10464660 996633834 298332921 267346095 907172692 941962720 926407578 640534061 791337622 487171853 751482836 609284181 770151970 979775459 910155392 197389983 552421724 715597398 852937395 899226865 68925952 506343129 796676463 511206356 745120539 306952926 215422877 431616352 972236355 605109737 120005996 541006098 749456866 945486391 687171628 503937613 99151597 579409745 326228188 70273469 402545957 168967725 973275951 768383905 506055011 456976915 783830165 415697244 955583204 126896987 469526688 268151253 97656666 730701328 224735098 152566181 629658872 683245245 577312724 760773267 845859746 616076375 847645256 207485629 850117021 406340757 81876063 555515843 239462249 209226303 406484291 739464773 414168611 136178695 827555550 824687219 751175044 15264955 939053169 781164406 82375296 154560063 277849141 329556023 288451916 679925031 224850552 618456736 85609888 151673566 505177771 743885163 790155421 996128665 897024028 948777064 429054876 432407183 732696333 620676702 504179960 922054957 398482305 699731149 711396036 117961427 599585449 602117233 304732650 253470740 197387580 582304565 334783393 281285428 729530164 962977015 562293365 566534953 150508731 923008824 759601031 733554602 508342177 780123191 364948015 272938418 840445067 926370333 889418481 360334135 108720782 748198693 699197562 632073916 22190319 632908098 227108404 372108989 109859914 837161065 905691820 815422759 249538155 695029623 51965512 195638494 562080253 586899745 59720737 549987241 286232848 872540965 91936393 52840369 80368202 794587165 358276372 24092358 354802513 109286011 206512341 515228161 716328498 830838636 185844891 850138686 770608625 510773964 131101960 133495365 907550170 295201608 469919702 417739303 435218504 273443631 4800765 620416276 681976973 95501392 735433819 503141613 618338292 612639228 156153565 228735541 167554497 708731694 625219927 68972682 131255295 780947671 883246546 730976983 318349531 436037570 297428444 287312250 12456907 637776563 369909940 108861818 906908845 555191521 604256461 681929293 230182464 572090697 557799070 637517798 449252637 391210783 89367103 173273870 373025528 874962884 851832960 923429151 840266741 432879958 306027158 83136431 568575668 689644587 9864509 710788623 215973661 970360486 119529046 85243739 387998066 199997282 945534980 300459218 832667481 451759411 940432319 718851135 227482575 312830567 311915768 340965184 121690535 364995413 683381525 534650927 138802343 142340345 99167520 647566268 12463325 649157028 938420649 104119564 845156714 355822325 937853419 874439790 131070846 927094944 888864502 417480289 187981254 461576299 723517458 98428590 516743803 856181310 148089425 950252072 936125932 671340670 295670309 773692263 843362863 225172883 181797824 794374083 776326736 105055654 266447543 176212321 628629706 329789540 49438808 543361859 381243631 359822962 431156858 303901563 247732214 260675768 334658534 891893650 476839262 723970294 157995282 140676122 961583480 109831764 345048576 413134550 401835753 405891412 201558826 197601377 572200484 23915117 280133589 377944946 159657293 70835552 290142721 916872078 94048915 76804048 258902046 698681837 798119614 814421556 494344360 230071695 212835571 77257091 36407296 214095472 919795093 636567285 218122261 806542692 240347607 587074243 125605346 134958257 977782366 315748423 945539224 703531723 272927569 328449583 870693743 143702038 426047665 389613719 156291681 39349779 360748810 833250447 711885391 252416342 714147823 325731890 364179010 241484247 790927809 857735273 129252023 349199083 723551665 299983650 404617238 489502431 977958035 682760662 526786248 742251619 437832254 656312010 961767357 56716148 518010490 576379441 89870786 884643102 151763740 346453314 650855131 896223998 171960115 529848850 763867379 856186524 333615708 382534795 539345073 320766903 391179134 928647755 202203012 748636903 660661451 431291431 297326162 804551442 517589748 79637818 780735321 797119200 239502818 550557118 361494652 12799700 21834672 972666463 876042633 362087941 992108065 148451119 607161655 609372508 759550955 103112198 429439159 729710728 853178727 68358350 883027235 924252971 60358097 342111700 901886681 375977808 120909590 294173565 278691641 702918553 522276981 127720463 41760778 440952488 91659809 171796190 755216393 679433283 442961342 233129284 828724687 799273016 75169606 251545662 960603019 243348327 24698255 725803506 883187260 722428989 66806616 96900026 225077083 986926898 207323684 527125048 611012343 806393569 359845889 97585268 805562678 944850213 366744025 631561035 184178891 119373537 140375284 722020468 773622050 555607597 255254580 498074479 314145955 294485365 134462016 476660799 371763944 365375161 712342683 685930535 501620964 642536756 421999713 644191327 922097295 905605100 315404345 21391285 68829832 53236425 838570833 718176663 324880348 436212451 602037563 78200292 951603329 424995246 258653943 473405848 505153303 618188661 582865687 241868799 197477271 930946959 57254363 803009177 30948472 472687461 221802241 928968969 54635654 207428433 283489087 414599292 64998661 560986755 868727138 227911033 243709638 690374100 413923420 197441892 707140148 392455611 704522684 622536335 148487501 934700919 808601952 464978815 790034732 908080352 594475142 409693009 219381375 565191851 19665964 188978547 992796824 82777595 471580948 936491998 961630097 1912519 922248737 983898362 577176229 514999007 521794993 756626682 816749843 193908313 339471560 112180290 642138513 896814885 210502902 498171852 158675580 331630471 784529440 796931472 919535547 410861357 569504816 710089361 34098544 839522019 191670755 14656690 856899264 940559454 750954189 844814118 62258264 967084988 949928406 562981307 749157049 4849738 117210482 194481167 842765281 206864488 301532407 368355189 737480561 594391397 987888652 121724804 177754516 291607080 646036036 134157820 664977704 274604696 964677627 157212116 322419149 449213817 461505491 766885268 224094025 212623768 606839890 235167404 277391160 24852788 203043517 531819209 951802741 876026930 738587431 888029414 561810966 585914767 880273934 990239590 872121471 601691534 109180727 510631735 300059574 683885150 89850146 8317624 742912597 74170608 574979653 16817480 97825433 824371996 383921732 872831967 31197753 548461707 854800663 825858559 862601599 722956191 82498803 462004335 306529983 851640012 475130161 119886620 152301198 813730728 72497461 855261797 139111164 641163143 141408434 66941959 298210219 372209763 215358821 622265148 136924963 402379554 929211273 59396867 902691259 424862082 62951676 763771603 717137258 467378414 440409248 116694867 879459740 820959822 206391352 952696808 174196166 867426789 464409935 896295337 721690418 514012787 835034566 992663818 147974738 695195086 365173359 207091021 607929904 283084843 879107637 946306370 892679232 247921777 247656873 511179959 691954162 218306395 341007419 158807422 703573866 721871632 497625730 151182259 354852433 780905996 553285955 370571380 698208777 657918909 729920449 44285215 68413559 902578810 586883305 157170678 521049185 993711898 417440250 805105976 308527728 142390414 93461459 689551772 291364079 522703994 454245412 402992856 787041455 508852529 395582338 55887095 684849058 616900011 914077159 130742712 521301954 77469305 784940665 46545235 544968607 858644587 809155651 303646875 437799981 116868532 675659347 47079708 105998126 461467017 481314284 637090223 215439605 273141357 564975070 610850559 230927341 260238886 131868231 545727963 727554400 852565607 206695974 39311434 711678919 569260422 723596631 390163057 541815281 58403524 988544561 599745190 445414723 429649123 783868697 881237950 938406925 967239965 873266249 504175287 57888503 911246673 309387284 664517414 897159626 779871725 680019056 403725403 282367740 901879136 546596508 234641193 19826960 167029056 613648621 282132911 184820420 785023735 57510111 961954187 700197185 884844111 55922019 185836976 406631585 260267930 963127773 220519362 784555421 970106756 715743167 879330753 175317654 965500696 21721982 262524216 132238394 41127242 590310084 633537729 241905605 394058017 840495969 871898758 442968126 799175965 62055846 552207152 344305971 459426294 727439646 967083671 902204473 68288120 392655544 121047569 409525020 938437385 24819840 813780045 320761398 229606786 30244957 510382888 529968644 649093829 551685513 224907304 688854146 510960474 827430888 386158117 762655708 526349956 701711659 32094807 698714224 570487685 787201907 86739654 273811374 868941391 381622979 83104075 550759063 49716198 298827311 864987812 464378058 169789252 75672810 374552994 124060470 429907217 36839194 932305313 698413323 609190617 717654135 233894372 217677641 31806382 428482250 865561873 125481749 261710496 640386525 297384933 929737866 796111150 981329872 689968447 854566490 697211579 586886124 98353631 784604404 792189794 268346393 58346008 755605968 931900506 246165166 703751036 307247825 156692208 372430075 616323201 407641474 803835510 831897296 551200450 352123555 1395091 401986003 424216677 207271067 171447935 984218312 854616291 197633531 456482761 562173766 202650393 392003563 302027332 262842910 779127708 586235584 234601351 344786262 691624617 832843980 123374638 365070803 791315486 926945481 54082761 912872914 238225839 868291233 478376410 650497210 946461543 723014887 315577440 415507878 925882295 788736942 494757200 163617690 65545955 131185410 820702100 598942134 140956103 78272294 719641814 883093028 218394383 881090171 499472598 835885584 42038632 138879034 538129868 882170973 718952642 709969431 970876020 400554346 239094151 569609286 609157359 401078477 602388473 332582442 638424998 773664178 655833568 433161950 597027378 99939851 52490552 993692616 364511954 621983762 51710251 149216245 231352574 198364513 588261640 303315720 627373696 798619174 999554101 273085347 268214307 781555962 848580952 251017285 775562956 222911811 95056587 862950859 906683559 682950059 664299425 578732186 820490111 712538508 391679945 649672279 716337957 114538626 911178588 615192195 652609385 528639189 874854029 173448860 505377619 844710120 142830944 616622938 268103237 322491292 865284422 180189618 389364870 961902378 368654476 682465710 3294014 460740649 104247679 609036361 467098694 360526722 112480094 271255199 509949219 841264600 610449981 41053198 577419979 719775193 412206339 850201227 162172852 501324196 819510490 226761619 228162801 702957404 429691626 842594186 818337120 488635902 67535435 227518133 606810031 275875700 372103996 191905657 429051286 44405337 63158444 170952846 598469897 596150629 256488167 505049781 619687918 183969261 800020948 570285468 837306526 345898870 867575006 261198370 318430265 863761594 376689648 194588594 59138860 652146657 102473179 264304642 233639285 174654352 81281011 967519013 17709695 662876089 290215842 801009927 451455817 51925542 326146674 363248397 890146061 170878932 48587869 115787681 614129927 226202264 971772605 349957034 959425748 477567017 419035776 574572313 715040749 204287865 441843809 918816997 892988668 856681258 449416495 193736946 794935444 853055430 913573557 4099172 161083367 810703441 499317800 692019414 122249769 280984365 195208247 343617372 409732871 620208401 830109095 296802109 968306725 612544261 911727140 383529433 389581073 498646087 777871185 29958886 124464425 747278410 138351879 739924162 806510718 804227369 715138183 23974296 353274729 422592472 691526616 957168450 647832117 650686796 512799030 513213587 602596097 385568940 909911469 769747675 8231732 300036083 271837088 92400429 666435992 468389259 667775351 991480863 443705250 707471635 952772957 481067131 314300880 966235946 324272685 663013831 677411657 214047052 576809715 81683428 754465792 367316393 335516919 762510234 618217961 407444590 264832129 574780062 579089999 775038262 305351163 728703687 638687840 594127135 776433460 273805948 192010623 746722681 542774601 350667124 948743923 707251187 44984575 694077350 582313217 162747453 49820841 993108391 405628976 18652603 51139484 469123154 72283222 392252086 460099208 282411810 229772787 144024090 43755630 432631913 112935046 236339982 953445219 612757898 846728620 444231017 928985233 714195912 816700702 275320451 317576204 689095562 85277518 877695634 339164422 110594518 37977362 950349673 47529820 807719844 270023416 446606741 993946017 746669763 894805918 371487808 143877638 318513758 867164942 570111023 357948325 769849347 189347164 522639439 815850572 54637711 197760657 232311783 481451946 352491616 454612560 41227582 982170797 262333239 733711336 531768813 464214257 840094392 380039186 839461846 245948640 72264689 605122897 113819469 800274896 522787339 338562173 200282224 69552915 348248586 178819822 143997690 830893311 69953708 694569442 464201396 618086891 754132070 623719650 945627575 298134286 720737857 764509388 360492052 374702270 571570723 450205096 497197093 392573567 903378852 772649292 767122460 850091056 537011808 224607261 341781964 825857708 24305858 963948023 327023979 135248259 899062 362644663 525765529 474847551 630280457 119095342 820074772 693192337 516068613 548990397 728062785 941384668 414449766 246242233 167377285 117814193 811075754 33817051 544600332 754450258 398920739 676638833 876370969 926113188 370761093 450239605 836329171 578246759 872566055 620252078 144566553 817503496 370852346 619258343 393734400 493460471 53210162 429163106 395005376 225061338 254165171 210973761 477251644 209011069 16536180 180810717 166479667 644858752 854804469 239348593 583453643 42650743 985039715 704022098 438101818 793711782 347478936 56710962 519926208 8564334 389971261 654650205 792859993 19082086 159525475 121864301 458665786 690564842 881772422 428878521 810423803 268693160 199409157 173665765 399099484 242079355 290192965 299535087 241356590 821144779 10491729 562599502 152577144 600398874 995604397 485954389 532843351 54276049 846747433 780887187 786246992 49999876 525032357 727227369 763945992 640267673 509990317 622546048 302794172 337437809 220356471 682715318 836365658 540776985 644191606 893817971 535201652 297120772 391090023 614699423 947221162 947769664 204049975 86066422 9040932 592338029 391639372 784100649 84083898 423421870 433635779 61696779 789508756 330286738 56854706 493132938 182065259 795620301 746581689 273123758 483970839 770909217 595017433 400028092 293817599 436411083 436578871 151877224 155934793 988889789 453559348 770724439 520315700 839652722 343601062 392301816 957565055 488363992 618551209 315533014 71607815 128809942 543249288 382928449 682980716 654055194 380776059 32297471 346218035 613856841 427396407 951729948 528897055 950746910 212363523 242095069 362683488 725574159 469905272 370405040 930318734 697436290 562433376 998771289 377323893 999084261 637981565 777692126 260763272 417869689 373948984 634010286 286718767 675105717 373081148 480752128 878922017 347862486 164149715 317123776 812503069 106089970 863647343 415391391 622488175 117440133 725816857 939411748 867691898 533185157 104660264 649305630 433715175 870717331 992216489 548929949 61605417 239594230 541307775 539153855 53387981 801778223 619013246 270914243 873074917 818115179 148489773 549621558 761124339 724043318 731200639 969518030 774424021 181745939 805909825 471124370 946354052 740542202 173834546 793098070 606957666 20409240 940840476 757145024 335774939 322369662 340940074 428113544 803909186 134036641 196343813 885931709 59741334 560088591 374475571 7648199 542283113 476505776 525639955 906265296 254757772 153154811 902099540 747625831 612888473 613232165 268273066 433055308 865892622 318499907 117531160 368248723 856550535 542767953 137858857 855242582 787293973 26590555 311187022 767088234 82190751 991281 721837082 456564771 622829224 473837828 212548555 970685108 342545724 28131568 872801790 216057049 844421404 288920891 454705900 658641602 184630451 790281289 809602167 297058922 163166837 20643305 528347995 641328347 233050135 390678294 942538834 406054124 802226207 328129493 303539505 884843866 818827853 536676786 821674965 468214750 986164725 857127585 976272966 454309898 165215171 361684099 346176967 788012926 905611519 707487379 491263876 334925703 405766097 357594079 947157489 531096591 118381842 281214767 452329758 554818665 362817114 212744721 36684581 74822388 444976297 133110696 983119939 617375055 855093169 609718223 228797450 738913501 196455212 53617521 319437410 320126028 585281456 75370680 929092754 754215900 820109099 688528199 574146966 505771735 610040582 797654256 323842606 647658501 528702469 810731018 456109852 735242014 700619521 767037447 295543033 926299601 130253281 461941617 937803503 516270602 996869294 914019806 444368488 269467378 472342548 368766631 742302010 539437940 631666074 602823001 106955549 19072853 580806237 593087962 742611831 770810351 804985558 468864645 702787697 117449913 18063757 223743841 188533278 301837764 340054160 429398274 890551721 693444871 969128988 899351708 716121723 813698455 507012773 278518190 59993919 827211812 373299783 165511498 611187492 114573062 245939773 796318084 513764714 356890651 417580112 557229833 405103012 480072640 638805034 959093943 951095046 350038061 41537390 942490776 8965444 698509329 764643711 527548964 701003728 726600827 502316586 909371371 741239284 31013626 745463326 681743220 464678472 130169683 914915744 518700354 107462528 171092415 615248924 817845357 422219380 436344700 147504309 138132103 162363614 923950590 858645570 276866134 572663581 951129654 845462233 25729754 686025082 337575696 957215122 593785871 458667815 934231004 524049401 953373262 821771386 874987152 971412013 912575930 295411197 849914534 804436710 688305881 191505669 202360157 566044546 800383068 719540138 74995883 7048170 42916613 201674100 974837235 506773934 214925116 622790552 985724149 543545747 692439029 365481371 929604733 775269420 647504580 651153778 230558581 869807472 15659981 500748058 992958925 457253136 190844705 836785691 611465716 911659047 67862585 112536595 265986835 999916124 511793590 18344110 467117500 398707560 441936505 83253681 458624836 499158052 176923911 201655727 796800064 821659128 121080053 316004155 979310123 408836680 84170248 552950448 744972958 325374051 355607746 65778762 741835312 817859316 449834617 567311245 786358696 644809512 30776062 662589871 690333919 893927919 709395774 164367004 567329698 974528852 783765041 805592273 657820536 601465406 902644433 741121904 36539726 921790762 927409086 844994863 836824347 517644910 529925505 290152325 562447696 439288253 673098830 501904487 182493811 52390158 654074003 46539228 329338995 350677265 807947420 10833769 348606214 162715007 312398897 423973929 451393496 576400897 209870632 950879533 134332241 485549671 79559898 829050975 930563572 6363552 188603914 44224491 199691064 524765640 831032723 404522281 30101164 918829189 387869150 875911009 244941900 633451955 207487827 992775500 935712526 138866722 295454297 328978398 895833375 399139276 347777578 104105856 549342940 610429064 445458371 457582743 344127945 63427726 58039804 771398934 170222140 239039787 705494108 624519069 54580990 260470860 771790017 543927264 157874885 987897719 148497326 297081798 375767728 204675230 96694168 405482750 276060294 800816940 626580948 943679602 293394089 668331569 358700866 451975282 73504013 841362386 876635149 577588232 908493359 286462525 380696326 549032102 181354905 271968852 576983363 611190831 576713700 71476894 605206221 976238164 5471401 848786239 232362138 668698705 647912371 153118114 27343569 869397981 459084508 799523368 605009515 122508959 883958664 994166934 336296556 820858625 488555583 430135724 595283639 672107656 428701166 101340554 44389014 465283056 90876422 345201539 496069538 192258664 614430508 518688059 420550867 626743767 3808119 835027018 23208430 27323389 909314692 788398724 559743358 261246579 905923527 966697102 372332992 998897541 554893920 725746354 103428528 978361705 39470523 722019460 611875901 380363059 428511670 925772854 364661096 428333012 466424631 249100916 69543208 970449025 711603378 926231963 900665937 744864137 106106636 84958415 574470558 587597525 830530573 55644893 98876822 842252796 986932045 531465243 448452515 442419404 163461089 744484211 708572752 522198408 180470573 84305248 310714063 444289470 835953702 351902740 255996035 306518947 957308327 316005259 145506912 539842732 224881797 985781076 564105372 223162575 242978729 813812522 198363351 675868556 851607272 58222125 889853121 544415459 189032867 18825673 749779332 101153778 484567090 612919248 991102715 488384084 999981741 510972983 298216878 250120012 900429470 311060503 859081198 220434402 901136361 177862558 571950923 907156130 773261478 895453490 512828567 146336030 42390484 163632032 873120113 859577944 242021935 830467464 131853571 378318474 994154641 895180271 263166970 735408001 959130609 88914507 861558882 175005076 501106834 680019323 246625822 671996497 224961667 27731479 608235882 26723363 961486931 358935352 860218351 884244164 948229854 379181217 465354486 892750962 867940950 187888053 37512599 631576603 80855822 810026616 696704257 684408295 265625425 7977973 522490509 378177083 972260853 683097188 878085758 785694807 175473547 880797945 712629869 898752031 560939476 832990377 291152791 714840754 853279358 734156955 301667089 890176940 237854234 452496049 723581182 52349565 719332715 963107269 478064544 886612079 600077627 18309141 119147346 460324264 398244368 395731481 271354648 881461087 228695924 302918965 554611712 858650552 732821472 404344400 791037241 446858473 141562706 555149555 117465584 517435471 478696678 201317432 200540044 830515167 420479909 425828158 920133500 232728008 81961487 913155613 149369391 357271655 948078757 74969856 452224309 302648113 663100909 372424049 836846742 209701739 588967318 152661735 303165554 530062712 768847350 343397553 317472620 382788645 160712787 792996409 685974374 228229139 458113666 525680424 65092965 176397852 748085442 845221367 854653156 174870146 574604438 370993722 193335861 362653498 436993521 472392806 284832373 851531202 760700682 688688309 753102189 139633875 451198707 822355419 909832507 320006235 91239705 661871973 391546199 260833145 658650864 695998896 860366364 367990968 325736169 171341016 710332896 132472175 238661986 218224342 405618088 728492391 41216919 682929785 400567704 58507390 46511618 429528768 229294467 923434261 257105130 718804680 495821503 680088787 545898825 71314041 253877653 322710657 906496334 181731720 320623557 849459845 949869636 779319410 145643195 652516339 563533415 886741180 19174394 400018317 520923368 235051609 441185935 815892713 636951349 247518319 636902764 301445702 871372873 449181131 516658386 948224081 885801972 118702228 193894229 78482118 909080272 505086815 480342931 517211003 315870883 995566659 428789975 593371205 209233706 676954840 173534474 411426347 858915211 119733048 225442721 642755910 181320926 871758726 751541589 514368309 240959836 205207990 531866907 255801490 866633907 441202408 525554655 638583089 829336413 386009822 936282403 498758816 143236297 748312434 920697101 653050860 516212985 442135407 640873063 905849899 153891269 92476357 212915962 493354762 190875697 320375007 446082686 926939796 336903294 56724397 16886529 72650298 650439907 647097345 843654248 933401081 249454361 358835506 142777500 33709674 935618282 962813572 958329039 929804715 668703545 792373150 530360759 94560155 697374564 782103282 739446706 709978730 265858013 721278891 170317251 943269720 764487646 784897919 824757559 272857217 44016710 391922790 500958615 209988895 487941718 583483187 55666101 550227806 928969507 669653010 366085804 868961421 198484246 825569091 888073236 443308251 397048277 82440433 585156008 524675793 61754796 829101494 232184225 42986346 76563842 911005438 851925524 653240484 186816115 409875348 572959680 689361815 275496087 480158931 402261639 398373619 524234627 776121277 128705047 659670237 288363854 39527231 452490031 47848899 626786246 157572208 221808996 238731034 237969987 650184661 930191838 573318005 474165577 859340729 18166986 43076565 427322622 954310969 502474055 749624743 129180014 506771878 612120390 571391384 767593183 419430221 893391558 361313201 552243759 275177765 24505855 543085192 923958711 171061432 127615927 819204299 862541346 863187386 827504638 462264805 930210229 129242101 932220524 840209904 682008032 150162698 99254456 204174947 341198243 720682896 193653023 729987413 487037420 244580033 7410977 642087815 973663043 574195252 815439782 325199405 952477158 801687796 519194236 473116283 401642142 748842136 293487130 521718527 173071649 345044617 705055709 440860624 4223716 63292229 906312936 896105076 443641949 832315831 636493285 427006486 837281597 372931719 108244468 239772448 834464028 84725889 329463376 818006404 84202064 130039157 191437240 858530378 581071300 858868196 336827098 76839431 152297347 685684808 684674256 698994434 335353910 50896750 838954756 970743507 994807299 154382003 493944322 180755765 493619539 784367070 781295626 857874846 103016492 259758071 443830875 493344415 340383548 655448201 42174406 309037691 991410034 559126333 489440302 581286978 353922718 244740789 790128360 642336244 490674784 575489037 111045626 178681111 555072717 520586034 249834706 299438321 141782149 587390690 637425183 101843964 971706802 104629214 963154155 166774003 205299594 30194508 770218668 461524149 600903947 267197718 53193789 183687246 123267901 264526826 625678434 472093756 303296830 969627839 101859117 796176339 342948573 857908371 669683794 322583965 273103380 596854604 830764992 273859740 778985005 808367045 109969079 923253944 551637600 576934821 871290418 410885321 396613592 857434693 732064123 85081651 201508372 851216147 956470950 71787380 67993233 551795578 664154082 314897063 781350726 437353358 572473018 451878069 184088571 525752717 63609307 932543177 518520664 153409265 506288509 306345787 326020743 657343275 375810927 526571373 462317989 418682192 877567234 674472881 943060884 566210775 874396575 581446955 425559243 786203367 131940370 59860734 449897488 877162687 819006872 449657843 358786523 639007313 190872939 901074045 46028440 65016322 831034427 976978843 503903466 301952426 886434914 269779125 60980481 819381420 589275031 476058261 146443851 130866393 35264789 681294186 85908919 951646042 75608550 766699133 623319083 274950819 972549940 819210281 820007845 962085032 963745703 963342276 356806934 503960866 248219082 153341010 856762167 167411132 98189287 829760240 843175366 388566874 258849979 583900428 918448018 254156943 732959911 272579498 384319753 708785346 505242091 399812903 328507355 794630528 828397338 638451339 63279295 784546530 485960961 294809960 211156992 39253945 90768855 500406747 825711099 230193030 457689483 948091648 270314616 236290657 353932885 85425827 451608134 430657083 834276262 487750180 735035207 947074106 183365903 283688363 691562797 35871196 160383172 71872991 83969593 598433088 444796732 183613025 813190948 306775168 284396528 375621294 777697953 229721814 4599457 980124172 604601795 587556781 943011869 553065878 622823564 261274255 317461091 601409781 521242865 865363115 808624492 631818963 583339729 863301393 476194406 567102710 928162251 803099165 388672592 983773076 140741551 832761204 400572873 985831470 506621623 882166595 15637475 524729501 648800995 116168299 813643432 276934629 98499446 467616843 719357027 304441801 204360515 455262148 806291322 859322343 475792193 157384287 692971751 602541268 351886452 882521740 611656322 43946333 557790524 30843097 422941896 742538606 834773652 450423392 946725857 906477581 73379275 58218517 756505583 598541799 164514276 690092199 9123509 854453952 627284162 929216148 310016487 148271394 590534650 29988615 839659390 95501226 131301059 283024661 685318117 652989300 892508769 92532216 11406763 419478190 783561949 585522995 204956602 727030129 369555744 87119256 232142648 135781218 242780678 744462823 200328786 64784057 3029449 328739376 23239943 730470489 50205512 672412368 111547251 674879188 544658409 688323780 835045824 794174281 104773413 316687707 812795426 538797978 388423019 804041722 989376122 227253360 270478442 44759209 718257068 423284837 458652871 266546126 328502287 88581524 882999139 792620832 329248498 378743872 838204586 920369621 340785252 956852652 389222605 786677815 710904906 818229327 265426251 50792805 796196402 189759087 165545630 81207904 548087214 886573477 401724740 209966233 57833643 201961383 647043336 210708059 657283959 189178428 41628731 625249388 63763722 80766886 460669505 783634775 955902514 441073794 625345385 458605 924001902 499360819 23768294 738965761 413877123 517641761 312095526 161224743 137054000 737293495 878495349 700513536 309311974 68815897 256102213 640206942 733571918 658172049 659463575 343753155 241228964 41725094 90655281 148720434 676845039 342598642 320661914 406314497 754482757 700127914 843835831 558603243 761932142 587253182 905192713 322438642 238926549 89583214 538275156 161853910 223332095 273716677 52690305 682197115 802766286 943842909 738817615 612744157 357560750 414453882 686198196 757010545 388076179 123200172 928676098 398265261 999536790 391039549 822294415 22317898 322535636 405800354 682259911 501123040 969017674 991500937 267125214 428856240 567467425 851939810 612630202 549485009 852910379 777998752 171858700 327168846 902285901 146631238 869825647 929397659 14619335 171222640 100530640 552673756 916399335 100172664 734443699 811429881 270688737 416223703 962977190 479427267 824997405 942192943 504872640 200866320 444744264 903531371 627539588 256698386 954008303 904934346 641204008 2736988 604044038 165781283 560564087 817243398 158782114 733434107 775342215 51500445 187760077 343737850 251304921 210171714 912714311 340093128 582763301 156515742 269595989 526716103 379748256 600140354 796367367 475999255 119029885 275644925 121758151 993120563 215703125 906970522 584340572 719199270 782323809 971630973 726696297 410896690 23205900 419092501 354564733 733739961 527547128 558956679 519196026 134741705 872050459 132431317 331346292 328330091 975404288 23563129 397238416 407796481 757401008 979541322 189812743 931672635 456570995 333864568 692963569 956465482 715164736 944390901 997184855 26370176 43852339 815397166 688854257 434198798 713082748 182091330 564704141 112631139 67058660 719985753 383441522 654614022 325726548 887074721 78290497 988171576 460690897 275259716 731468300 64376916 355306168 406434859 871207999 742460086 743650895 722376518 511683903 999556477 399494685 397028624 578932433 895998859 422882773 520990473 179619592 719984102 211424294 684296878 562440220 732994603 62372935 344929853 504325373 260485908 980790535 165621643 304253326 576294388 336971246 585755692 794435371 742344731 212996403 50332945 461695417 161180652 550310345 552057725 554935389 47087507 449049157 925787118 392383835 770658749 604748667 988497169 91894007 1632753 353594622 948462825 175582681 577995053 671436737 379355823 8924436 632174192 755223790 176043172 758152362 671737000 222318734 134940773 133195467 711295679 288554054 245844305 27506302 11600791 279671408 492565956 838360600 123117905 575435853 873579073 911764371 269583149 155853482 647548748 380798527 212452408 221607343 238390840 388264117 556744130 882447496 148342430 319181673 559859500 516255048 905239999 57744074 462672576 16227252 305604678 73121374 252539148 821525240 893763306 676348349 174710249 880772365 509232412 888116544 988534788 309856479 226406744 347007770 537872810 777881348 453669817 219409310 488624371 862905343 733925114 550558718 10248972 598025948 845272811 352692256 713303359 314154625 805778948 714947359 287819765 315021020 429451614 427882113 431517930 667903092 562492508 35985673 227793267 666357787 491792941 695295146 518317418 580324795 763268777 534526218 613303579 960572119 910982895 587872066 44000415 439931759 765548651 648494772 985965925 301357694 656646342 157595178 315152826 958178347 544367321 600209207 220081440 94671645 366999833 130741700 962995926 197009502 191304072 856086560 714430208 386303009 673304407 483285160 256117733 696998311 810424167 540677988 742656564 495355994 495571659 876061150 260423900 243605688 636758033 301563388 562797611 124112216 212165257 586717988 152156854 889166827 396353150 248412429 698281432 162876942 106371785 264610988 845437401 162329269 506606172 12952423 33745706 479936745 340600412 648872834 293319803 122459895 649836177 328745788 722481492 9715180 642367792 363456168 494267243 716480972 121952303 76888752 118418895 502221086 931646966 713234502 634660222 201050146 537510186 677205716 315990842 234021966 325509580 510467488 966385067 809389065 997949043 775330175 254577826 603157263 66784720 313769690 817857919 434574589 613644396 547515134 299580530 397524254 134247849 301927034 74546097 665309840 777129228 331642622 707770837 262971159 644563050 978026954 602008663 651264987 461394561 129075901 807465582 664748251 93017321 302905385 426093420 282267756 423471907 238993837 113649890 235475818 422519300 17806444 799410599 36236463 625534759 494080129 263621482 868094523 818229169 85622561 85976537 622426636 579347581 214459087 667972005 629178061 739904142 142681685 263688569 643789256 641828801 985576657 923142670 457361629 73861100 816807486 8281048 286703871 44312227 647973606 785140460 355926807 696387319 424323313 726455791 867058544 482421195 964635146 780139587 419671826 517618232 198101367 703350870 768518008 234442524 78235950 40814160 723605379 269860708 473678212 773945295 937674110 932094932 33858562 773173183 816220883 699141017 795560596 166621817 604584519 561802968 339345618 740988007 876609874 801920281 738027985 633459001 839044443 467690940 799993669 807052505 3626271 906141794 168048916 918779330 648582700 530679843 837283145 409331849 54630267 943492999 229525475 803808667 857637555 424476876 228417746 907348691 311096669 713080645 71637181 909342158 968518458 628260488 290826687 196677207 661679620 767198249 144258083 5623842 176031353 762956332 633320041 413364032 895557841 14373543 73489076 553857551 765613939 101564585 968437301 682504276 86305016 411581529 679929965 241708328 90660871 870380673 845955472 513095386 917291661 479357115 461923812 692085826 852131140 624937678 336324823 344710648 118478580 371535214 8586170 208743860 182160025 40934860 482937936 330259296 623230609 296714389 753721840 440932612 261664519 341267630 723605076 494389901 840952684 325246931 787207703 505012796 727308640 957748790 279638500 849147673 143235420 471363205 188583837 913161582 551631331 579989881 74620453 791557234 684352508 105358387 58852625 977850891 720985977 856941303 949350792 721624771 656304536 324452881 551421366 373661431 619392424 923351712 670860572 460786696 869634045 231024324 470904780 219462567 990733807 959504949 41121359 102448543 700160554 829595205 287885907 173198309 746536332 636512212 446400693 247465987 931991500 381138878 482530030 42385546 664824208 210691035 252106243 455778703 643475971 715374616 707887643 978889767 113526016 726363142 497417964 255787800 617730625 260263715 717535952 727498760 388007407 87335703 944641532 986240660 658673886 995804503 303510239 757648004 829701093 359510178 408743557 414615809 315340134 714621963 485456351 469001454 160200927 632310679 502687008 233019175 182482928 773929992 772908605 825863933 691427839 363973684 801369030 283081128 648782203 370775180 31959823 558193578 807762499 709542901 226004384 852099277 366823928 252567655 500142278 898541268 592451069 411246459 775730745 384958417 103247289 207826061 743835498 311786402 152448386 972468619 842998147 762272689 714482350 411856579 39079061 319075816 477452454 733126140 646743131 980322422 766934675 38921427 680201170 630731951 992887883 361101780 558041493 429508103 631971721 773394140 181017497 458911568 671064642 275185375 686426341 773737596 428736543 881280916 949136073 306020544 379338 639875309 371067332 99966156 543670056 48282460 800820912 360730096 797001733 665671184 508232631 998908754 922964146 478511685 609982593 233104738 947702479 525196605 836933596 499459063 369643462 472944133 969811416 672748368 830689139 59521972 426591825 673902491 862246494 461674590 321008517 846972829 329036099 48923414 706248264 612462727 466887701 44104689 574390369 896379697 454915733 625621634 620825921 403232565 770688115 433687847 286574974 638446990 261726725 983425389 158128141 406809493 877464438 605161827 903607278 401609817 812793189 998443741 941050349 227131577 307412076 640372716 964002839 242321689 581049089 937385812 606527254 935662240 892978420 924446667 649095348 824254161 576951281 645458350 867963764 598154620 9563328 929176118 606606876 721398020 864606653 983206265 727220071 207749944 743559682 492063222 146744099 688108621 703749330 547896994 519420730 334975268 334815808 482112785 989654329 914656752 779110030 835601188 212874985 174599666 123649909 682417372 538814026 458974906 955955202 511044694 796446279 402769554 870479930 273174782 147763223 837629261 741928822 605118068 990815003 466191605 467273811 128982781 312806256 72502481 533587352 899579831 20360330 348920491 821592845 226373055 315507978 625185975 644001312 929997525 419301374 663036203 99861788 135312909 326625073 114685509 638963208 153281232 290699862 697911289 949729523 857301049 687862836 41668584 152441733 442195389 476708257 343499455 227626465 469321566 562791004 895588589 573300696 238683934 234697081 51140667 27978787 818893894 926394371 127578047 268005435 659672399 885810167 827622143 480864925 9010832 472661172 154807988 775426 811727798 486906078 509710556 162644575 602954027 648215437 897356668 579374746 977299669 22077187 748568798 200791327 274682720 221962215 704128003 625256216 538227910 644906724 122816051 903905639 184897583 671123344 244826443 342024651 533176413 687276847 812374221 969537549 828235549 21232343 923273009 733445361 272944897 650167034 275001764 24866426 849247892 631688051 595829095 785603670 30696004 718836327 808194519 6908591 914488586 575457724 40396536 595993126 61411006 952633258 687254088 696031177 677818482 367904878 957928138 568337548 493798468 935661469 516475925 415175195 799404929 166878955 731789132 96771966 787869015 298305219 190958357 874763378 662037416 643522253 238630525 456291918 342814712 865360323 45333528 313246472 155643166 255372088 876271789 601696610 600824259 557077560 781414506 611822707 383822548 498606580 857242934 80372898 953265008 4826263 676208131 134391653 3460871 70943220 88250139 294627056 475848783 479491670 290861052 147705379 738662109 414946386 127510051 844971570 838643135 899401606 997110278 18326605 361344692 275743793 292868470 472834557 286192809 182489297 660165721 595300084 739913237 70611837 334154234 495108964 669933849 975422764 46041742 906160361 937894082 589747562 83910488 395418391 662550097 596131400 868130561 997867393 92331711 50550159 12916354 981751273 102773176 470609199 169742947 440398249 5180419 724460166 207095641 455723603 278188778 169636135 875329156 801662716 516942688 115233341 243411894 66113079 426228696 228889578 790200380 865983823 925670000 500833997 472432711 831202189 160294087 199385571 272248161 331543189 154265289 336248933 784907183 875474932 402817067 110877807 605586234 550778742 895721606 422570862 708136275 111417866 806241416 709325993 690324083 923337328 295108300 131553484 777105472 494816439 547137289 814676357 111422021 409370987 623837882 680099445 603926004 89974464 563727318 116257547 33649271 151936029 723945344 452061832 117159569 646452801 785558288 402493295 269661971 562417543 692861459 381271401 882998800 17014472 3060267 311757812 282797144 112207507 193116649 665802566 804584718 945944609 221747468 158009310 874453177 111058906 748046079 378037347 362680604 775126534 460765312 973018795 40592670 82943493 377622743 176202563 163729370 863078211 206880060 904223077 106311301 402045750 266162962 962294824 602425718 626671466 55726258 833700786 666043978 401574162 509022167 141598694 21018391 17343948 442731993 803280528 535746556 192662585 481842475 590160624 612579035 584814891 893807049 579929847 918491368 51993954 893973214 334516753 897824907 884422132 857566872 954388306 454830389 769749090 21628301 504990903 754296877 883176847 458173371 578660247 888076436 469089339 970613207 681643770 894271446 825786381 548660802 27253277 162420975 121621978 696521425 804904533 955635654 713004152 324440582 664460464 135971441 163376382 172898061 234072424 973834727 980457197 437084345 161603844 101989348 551001745 485527780 34985197 926434591 370850308 15962140 502913528 993303889 617277462 985965407 215704337 240066117 807755657 215597739 572309420 837780034 661504381 217538255 716960984 465586604 701739956 247333107 108642323 362570056 324929419 257406903 186774853 647260171 499908404 390361969 232673504 644653570 55084544 713254401 182721783 509687332 621302551 925538650 468738980 224346812 200244607 230215760 110506076 567844384 889099988 886515012 117028804 354542113 926834281 53177946 543428538 850592426 822099282 862425065 455423439 130921698 579472825 932704010 608882570 5748266 9070798 311645734 784336333 975331242 89074996 990431414 339440893 867854235 492242277 838665795 276994915 258376727 176806314 324868929 693628108 159680985 129111094 676215533 23692844 868462227 381303730 970820918 952911899 837173011 208742712 713349115 77702649 971466490 608420440 817552932 963899164 397234723 761315387 206797604 844859124 889442924 988743836 41590910 567797839 47413492 595790089 232790022 899965176 178030940 437368854 923051997 187566003 610582721 645844441 190580442 706808275 673205280 469988492 425223717 122864040 290850648 729117788 841755922 132549200 247106113 459917545 459828422 950128280 702927041 841898727 61371536 540760123 675253281 849719491 439512413 471883164 322864606 524752372 830864135 841133719 98519534 935907394 835871195 750757005 193097091 50433598 497794761 694653273 659942720 962365372 594896798 138520726 393048731 789231107 320871549 79636402 806055409 775444010 334192811 13926964 982899017 820410560 416638904 704559473 842268013 393051729 789205451 762819570 259305394 124899398 271070337 51687252 571221245 772560920 935247880 415843361 663521349 102103347 27806716 482310172 517405639 314639700 873313346 910575222 586308437 804581431 167090507 506996516 170340536 559434845 441286905 84287133 221186229 599152364 46273292 80798930 485571888 697766258 714534990 497981812 927029277 471502917 158943049 496103352 985282831 649424370 445286226 521835549 766386848 318555369 812866022 545787244 353569413 523159826 50079482 688689604 841030214 450080689 742833964 365955356 776911693 556727276 621283429 209464388 248633794 480302249 215294663 424990920 909451608 596095536 398452186 442989661 906144017 895390648 992288727 5993714 89939313 175714597 137272205 120867217 726550614 284914191 966823665 510935892 207748662 29481155 778646976 264347023 328434321 932333981 886636282 798620408 550738358 551603656 232628763 571919173 326503479 537452002 529449394 878387813 832671514 104773437 704407544 353158491 627688037 801610026 544824471 343196889 781441402 826092193 740656613 703131509 402026300 174054280 835448725 532347715 743506585 224633179 36078346 2475722 104941723 891547557 520340937 532560507 527970784 87871317 578651854 718034140 809173433 392202820 497566757 912637379 850710782 608146220 852734786 231388756 416495783 984310455 815138941 526697675 397086584 370546758 327321182 849953009 145753303 644286198 698548107 236868127 727518148 604649221 21929505 340802967 5319114 167504517 513113950 970356286 447150927 933148778 979413651 751094251 773522750 487135894 489042615 102342198 907323086 383574321 186258261 953524489 989083372 27517539 627445245 378839947 389868808 963425923 665223133 861824030 844489491 656315014 267927385 208578118 102856203 104038180 474458330 562137172 846840045 82162551 775777961 842093931 492065979 389673083 564906422 47275935 828023146 885343472 109151655 125656272 10034841 582210836 344281693 461577166 635832192 300233781 939320508 673417001 25114333 183017053 293924275 111984504 563675162 874242655 340201292 815912050 878062998 604776880 876592694 845321124 391044710 391443620 300373782 769505915 397291518 768820734 972423089 423565893 122795262 998386472 323929015 513502193 24511116 572635245 996344079 973181589 497849418 571738313 997268658 190732430 941312301 749017648 871852105 278318896 209287743 660602982 326806643 132125332 135537689 315664696 427526481 861640294 67029337 196692337 441340434 406351295 747206099 177264259 262949391 593382694 138389531 781725090 633891992 324244247 825472233 304463371 174420747 202141214 89706907 891512736 632370157 197675826 800119962 753751949 107467632 27606677 721806008 434815289 650047411 467453997 858494569 876882904 961215173 184136875 564657041 499541323 595999463 624092147 375892665 467402104 758751612 248216525 861090044 89786365 928131985 676327742 94431795 403778751 529810217 388333527 498942331 836539722 628651046 849620970 90103092 315105446 480208137 463326945 788742605 247213966 368744676 312389745 9324763 216105530 569389490 22038672 866453238 346635748 717395855 649926782 322860732 168145631 458311433 242306541 338792170 342402290 620506957 34762459 787875517 32064597 867074015 619081605 92680411 1941957 94085296 564234380 620996130 663254891 937749794 93020108 94385934 79171650 52965339 85475293 764447417 687824654 693657812 340647174 20882279 351607562 954787300 287595357 484531747 10657463 63749225 844487210 740586361 514291969 260586919 781005290 93623572 959089743 951033086 203555908 548387956 48215509 693236155 510005887 685966437 929866456 843321000 447607048 322286110 734479709 639233420 295720439 665985237 344686211 669342884 835573953 248688308 265418743 464490066 958040567 504876291 463867562 541628884 776944606 697496922 942403206 870027910 233897160 515045190 310445442 261937182 104442189 465155129 779234235 663957596 912112865 843066028 979925308 173168609 478163611 371266631 686463205 19563006 708674309 433932727 645377394 719046085 250009334 13806105 804244086 532376027 548795371 297563177 500975706 798225798 859388959 257844917 118394389 519683396 64265027 57411977 23347134 969603592 798489674 333845408 318729571 369331557 411089427 568444261 408036636 218500737 897044996 923886021 94065930 356598295 745802604 904109971 451913938 324763956 704376778 777123155 755084684 522879081 188419160 781984372 523515109 266173616 686239471 333617387 650064123 199910310 393034277 950492990 721564914 531421556 676089563 769013849 247701985 397361385 75949116 979663363 97597392 885535974 600231825 976484242 144887304 705436452 859807264 976615619 932601397 628230273 738510343 841716568 731168621 181972832 283546491 458153497 910032931 904146307 886165328 472509646 989559785 24560036 630741376 121410117 195469563 478653580 249181268 70920905 809922943 370654239 314754753 445878721 148480411 70795975 353680049 875064276 334592408 408207472 190689069 714678485 552347349 52370007 464598938 197809323 512115845 190931251 873870892 526308154 935083961 892425165 282147108 517220783 312114622 978515416 165381223 460907068 273427294 210560723 143409979 875243517 264734398 895987098 431780579 366774572 857119353 157955229 995009583 134952235 797224180 885595078 470895609 861050606 406026953 343917237 594178601 116353975 211394477 769685892 285544274 550499032 738873239 336465173 541845787 274396415 141973155 253879929 147940792 693965648 120996101 348769831 376156866 661065849 985836531 58213658 748966518 810369314 592385758 953844364 170037387 914276551 174996108 66646165 739162789 24929793 614065815 369934348 507551821 656008999 808339505 48626824 316912968 584680394 646120077 924128281 252695513 81746632 95712616 249331636 659883409 920304898 113376074 445338154 480347753 476963400 786174961 374781901 718802471 410148316 156357124 220169023 420621308 891397281 607952951 4115178 128672166 788313884 317110972 38646491 385160364 223978932 716387673 609500049 840121613 861372515 76236428 70815247 636864364 844398232 756697295 384032076 294316257 836021447 770838222 368674651 78071746 332535165 150676155 732450568 757837714 309428474 279898326 959575813 295834258 961870544 524301327 80287615 432976459 508096199 858998574 53996363 809690343 608240097 224575374 299843048 328294798 48346482 39583725 948962831 823643583 24181820 290764575 100722195 950273028 477999924 822511454 360174200 234793776 147631759 723699878 107201249 26869976 744067182 437713901 953321865 399951897 623548187 368507630 884461227 697123757 179955357 246246678 935749196 733387182 624919469 623063748 120197868 185832822 568846023 581895779 107731267 418499836 201864812 385363398 235291048 405001067 75755236 553100684 519757065 370367423 906061181 257005745 525836556 422392753 445580103 31679596 591626371 894784269 213098649 642360231 153478080 969342673 893860845 351848298 714264849 822812068 350333817 104558384 354693451 405384514 386020578 140311985 502351186 599639022 534116712 435412177 394643433 542902237 294297106 966730233 714113883 303229518 783512646 193947336 643395298 330135799 970125191 28455846 909485122 639474496 311813745 353451405 308122669 45012099 162384898 28573266 65103771 850790544 205125427 789814305 317589405 11984649 103060009 255614293 568881939 404849161 30342568 671353265 853777355 263172124 960985038 679304296 926739896 888032537 733451202 401297951 459356084 321605654 879662965 878527667 677300031 7672811 421030198 135496205 760752480 9004759 512305932 902103464 552427001 69033521 163556539 149071028 339207742 797348618 342475403 795108987 767551603 295609939 603674830 206044768 877183647 187483778 128637610 601263664 508448016 921302757 621304596 803495218 195941771 3114502 867600166 295434802 755609590 406021211 335246837 791898855 90415482 480274867 536253068 867505812 679468028 714074368 548381993 869859790 142923431 877521627 925327692 933411780 304165960 745265191 468949233 251052257 747504411 620911865 176329019 889929498 882136830 936562383 881288651 777275978 988989596 403221868 600379339 808973627 121021205 707619399 995761309 195241312 696813406 419424559 498951460 217696189 191691603 284961380 135338817 635219521 224561161 813614334 876062000 474789291 987472280 697648869 810528050 290545098 720331737 173311996 471976076 716889970 29455013 555993065 622986261 884474309 512373230 381657160 675945465 573250381 882986531 772336013 543162720 527874790 306856606 804341331 272601584 518636851 722576835 41335163 402049781 485625609 467168480 65888709 808707091 10020414 575615888 836465757 676764233 692529494 618400947 853057928 32774711 800471719 398114 884243983 664814388 268993533 328761943 250917298 530680836 67003246 985027848 361829344 7394629 998514077 128197741 276619767 363705629 165814181 335274870 775580753 101364767 749386933 819335189 853393801 383245006 398046210 526958869 318028040 794608483 902470455 982011606 183939648 80600247 367866932 785073377 850214633 170310857 328717202 645560905 359695087 310815917 37989580 797013958 189505125 710187917 352915956 909193749 110399992 833656869 565734387 261819852 214883666 859661781 100409648 3744924 421429539 346249826 217189800 674018075 468276734 206685026 907272454 25341839 996094650 716191773 296269829 5137820 68820943 490612636 314138746 292626574 939007391 442670289 997156057 701536314 716330095 267820912 163023176 186968525 81638779 436028210 178449792 351193116 434935043 834017318 821425192 772928817 326990031 98616914 418848112 859634209 526600836 755320094 590852447 34822841 292200420 547786157 879380075 728534953 242352908 533197076 580338160 42927893 714532739 474582704 337528781 661508944 295593018 64316348 180191140 165262507 149566217 362056392 545434707 877196300 319379815 480029773 943846337 155733688 464576195 824887525 180666556 271251793 45738268 230763111 210775152 412621998 254306853 186196839 951647773 330602506 579372071 603622866 781426889 611640640 286470972 617166071 760557469 797624230 775719096 299099060 392047229 860672656 398642548 580048122 915824827 938242158 342662400 850264962 332967352 155797605 340823233 650743308 47931010 230771505 882257960 108547973 263586947 631551570 406125937 921869895 873332246 821862227 147182157 263269793 370790627 792207753 431569884 369918644 461219079 223916804 408871560 404739914 699959576 610147962 76898490 460867431 757745659 920599255 371150592 117366972 750333584 506445910 826195862 137817013 255346740 267051980 768332803 60293346 785153319 191137682 994499467 394743018 376651333 364775116 835534469 920967059 14218556 736838562 88132257 897472792 652491079 124560020 781123575 414619870 730284832 820287639 965552300 491824972 40368343 365722141 41884609 647036706 512061912 270102229 648594948 518982131 548726959 931801605 566886394 362140612 38651956 500929996 968514833 521878869 992854503 412483100 385713273 183673800 359723320 343058625 413707919 677940853 938805975 430897471 502692163 290627200 739672982 769574013 951648127 472307953 510622414 649908794 740469883 78017982 836261800 784034722 738801100 803241749 160879954 97757693 904521838 157675185 777589534 950370421 598356117 476100580 363273125 229783700 899623496 308601887 37169559 339611468 666188411 471301841 479346311 54692021 318336315 268641455 87783886 302849372 388430252 40213193 692823047 829678372 219371871 193073125 526122880 253550041 573392523 68414476 47265228 893950397 796477436 414610803 588896389 893612093 212087617 342492468 49452777 835645987 923994958 871994597 475923121 861158368 609709891 484113779 793421174 808116750 457799475 274122997 405933215 675590419 150640905 798505810 894067741 484750801 416172092 715519126 871769496 56335901 858535560 162848783 984201895 94830596 327187578 351214045 38796833 408543863 126391625 969631583 607854792 85659682 400464487 55877704 960640760 511991134 788505450 484960862 370901239 20772573 32221286 478003145 494005714 956223210 955501098 154383085 740367208 375850590 613858869 715505911 542186119 682780357 102442174 265673542 383098642 127384710 116210466 156155526 606773844 593213474 140136059 306515362 164501798 101139894 505298375 160080648 25442068 480735782 562622957 794754302 304523344 927492694 324354918 989884780 768058782 928727750 406581766 818602785 452317013 956270869 902834503 703730796 549594594 518448315 743927784 250680032 733191723 348078460 573648804 875705047 301856292 740336126 38805892 76401138 514899876 308153556 618073400 746858253 804977556 299842990 494147957 341355880 256885630 592304435 707295661 172368562 963894296 827358346 681525514 210089755 512538987 789202604 341782409 306765646 485161917 453003584 619862693 63083220 85682695 103621916 379747370 446833993 118529114 365825209 337031306 134326460 814582520 481149160 610822024 237709826 829352034 612028007 820685864 333486467 934422671 313617940 466949332 172256448 963277765 950640773 879537703 931028774 306465800 850124930 635232193 625183269 731956632 60994501 28432917 601070688 818635470 325479660 859472194 373995255 847547728 375621067 395927524 865489473 473664083 68433757 499045339 945323270 350262034 104533598 231383611 567435906 587318807 591191751 648330027 644949300 883066046 745521500 626574512 428805789 646281155 749358955 369280365 890648231 641413661 932089536 214391719 870484542 409520196 54019047 934864702 978122944 475123978 916714257 112099030 411356794 298720988 913825980 957109355 823526545 802184824 280003946 538277506 325620353 309513594 412195848 85933494 426524617 79796366 770868047 798887740 465167575 110308910 149526093 827626655 867873243 593714354 569855582 536701465 172275974 979571618 342964411 287143456 216919204 668354218 632083541 464177165 783913134 864438315 285301763 869131563 550865675 226620709 871982720 662905486 246786411 789065521 596850943 678931102 934463380 724617720 65962703 232042418 419037909 266181872 609679581 961836428 931488479 179252722 678748775 810958607 450763044 889303484 38828655 878346197 608174731 694323808 628320109 614265035 977055750 962867754 910443063 452708761 953228138 733680341 705827883 780277325 57505327 953577781 685475651 325269846 41450044 471269645 358309744 385301491 18380164 125247837 61263638 401847331 565807669 104296241 862262978 405406989 411528080 179667261 536374819 550557481 751359022 244261238 290932429 774702646 635651153 863907306 782414593 896758128 809928298 327859402 845394629 840491124 912895878 339672637 919034108 110568444 394654274 482182866 882120511 851098013 819604060 609952993 187827470 631015710 742668600 443472695 883802896 215893962 618511984 233217198 826573362 815002333 968325807 555945892 674447989 264507040 112949683 111306468 349858696 57208982 598334629 931955120 367243454 279231776 498985511 997950561 742713334 145231798 329035764 280718212 963153732 924537809 220234040 549963355 39073769 479964300 90254074 51432582 995387671 496944242 767003600 89717868 348081138 155078304 934136999 262734994 178523906 372642069 573953435 686864366 326650637 391368368 448088192 365261910 719114828 192128658 419606454 481245550 928619222 434811564 965462137 59266150 944451445 36834881 456717237 498781889 171498526 741749796 99153959 713394323 285892696 45608149 584079683 175048699 307110876 669967109 415679559 132573502 353199363 925298006 912627759 337524113 966613065 150189333 812666231 31979481 895308709 808293793 684225739 378463280 308345731 775268017 267905472 464659029 960252392 42328188 531135737 615264724 579457447 414963547 55201061 738164695 333742197 34553271 912782255 308875606 277750382 80857385 700914286 678899164 682209913 352121770 703956521 818483667 262703296 768524726 452762533 15092489 284329909 636665715 966165930 23137293 718609862 901836074 24266485 220345783 549380083 850160192 718406897 381771802 313499857 221282125 565568244 400341174 347491367 988979531 111088050 928461952 336363226 146139342 79121971 70385942 439569733 489833361 228350612 5864427 140991114 131435393 254170707 52592767 13451828 875129407 239180639 583021172 569353016 272266232 464841384 677672731 300772783 817411891 115983479 253388122 543664155 638397369 370817567 229814886 577458861 94270971 66519839 855175883 692178201 937408883 534315942 478960749 498896619 503524666 31288410 539921937 131885407 166564224 993742539 762871776 366489290 244833135 603723027 961734929 643870840 995674748 879391408 688449945 786428187 529118445 634013415 745512332 781992013 112741117 656546796 29650606 509014193 298567903 193764121 792071895 968489600 277661647 719891853 131436847 784434628 417588322 105226615 648065636 180316714 566041215 783846219 631844846 670406626 961317532 394580429 435908308 173383827 592350723 123531898 999601610 581462204 986353894 60339897 312163117 560289848 333480604 676945498 414717393 804613705 460472998 608372091 23728347 125098510 396807467 997434156 150684542 417144070 971358880 501534267 861732366 917826025 208103069 993528541 116304765 983122557 451562350 906579876 204609311 978034083 823059382 643573484 996582232 318176783 945253227 758174784 325397340 90586470 220760858 327557630 162512216 880277838 115213349 760951817 237211978 953270779 287817201 637124592 101416265 255960128 856004889 725972743 466386257 607223145 897019634 790135627 378430276 830387709 323057502 416537256 540496607 243732602 396284850 645050671 298139778 796180391 322941866 971675505 712695596 335800693 26836388 879445433 436376228 511446699 452525466 429609009 563452106 506984680 975219456 859445467 433261468 351729153 403151028 998481962 10335008 953394901 840379374 573211765 288406906 445375727 656172059 811105429 426182685 690204431 783410420 606380575 689276986 427150031 328352685 52403088 678888508 163113103 659945207 355790750 411102314 987052331 702244336 310419288 492285791 596559795 298276373 726927244 987035253 195272175 479404293 584680655 140553190 938602014 592318158 281066068 924460998 96354717 162988111 536151606 418194280 66068433 309732884 514679970 741594412 631324963 695825833 668121873 791129101 186239388 110166384 381215753 908801117 73521539 199465377 782772516 810282783 626353166 501915542 184576111 17099715 797900572 250290672 698544318 597981229 891600611 85087307 948597595 110752426 998981730 276530407 412565580 871316560 871856192 283911652 871425152 489366820 359066127 819667113 732065043 288969618 52747845 411955060 229467603 321055344 521772315 577156741 336924335 792947234 643619994 29749193 333243940 694496149 684985422 50086669 458227423 419628773 624466467 263786183 49672819 396768741 224285530 280703713 589343945 768748544 460856458 514317498 200534435 217571483 301617482 522440388 382329708 366067427 678514999 544845222 411088808 692602838 180755888 991319035 616559084 997567761 113874079 989031623 176106753 719428192 199992177 849534452 51489055 678802621 489141942 174211985 950378562 488463846 263812174 837082627 150955713 278531925 275953618 116042020 194534140 808166695 291234452 474923645 898620609 599053761 513870706 756457664 752253103 984736193 6685008 383568890 395380995 634583533 574665985 474197141 300359085 863974115 202229556 385959715 499241142 104867837 777646012 794260453 412283207 530866728 882942561 676592494 308958824 724477839 803559320 909734872 42948384 760264296 824526565 142618319 286088684 245057981 576074183 723339887 863285032 696931177 749774070 704265058 240749269 924757056 262990458 896131242 87265969 500159028 558202325 60465630 392872014 495845197 527738486 184714942 441235786 112404858 499552978 907690665 36085856 521216687 210791604 542015176 10762294 137312967 501546878 981828853 910141937 801806485 740864167 237794373 10366255 966776325 161920679 48774793 414110155 834504751 164776241 464771897 704162334 102273956 175846285 945445725 261550161 34154257 231433255 679544463 367942872 157753116 608712653 825029116 599537210 200632802 474757140 600968523 637547113 718766157 573149280 549328457 438260410 928317557 810526418 355775188 873710721 87452871 96785126 736358552 460845649 258996193 498053168 816774279 144259364 713266588 816052887 45737247 755156201 966952735 801565560 146370838 5056814 185726140 677756775 894581201 499759102 364652917 665839657 857492143 311532241 125564481 443289684 351400637 625506270 523564293 847409761 118665444 759365977 711994881 841630195 801146082 27441916 172334651 265417479 300962908 925827713 887997081 409182363 449295297 877539822 755224269 121113408 846066868 895768730 545713599 32706875 322496457 449606495 991708958 160550826 235591197 145150024 970820926 827069332 227652290 376362058 106982564 499281343 101612022 592651301 383957961 786252165 396528325 665435778 412303712 954390016 459619653 185372965 252170127 97765870 609760554 659753778 407510394 216637113 377862323 112133912 508708149 924267781 896696911 551404530 411644198 743893236 629015234 730771215 230162862 477548906 494661969 848905393 605486729 426113305 401012469 142555092 672082604 708513706 601026233 372058086 412043427 985931025 644191513 499990201 667187123 940263457 212813398 147099000 447974465 83506016 613046150 273661326 118782265 263372360 117050755 490044400 259461313 45564925 127693512 859495499 463156657 48768366 593175975 834292591 178603953 183975663 655274291 948566764 91183678 11965805 417422651 825070032 399717823 643501870 536609771 478158439 520398668 14163297 830903851 729880311 478246128 60695256 541672078 912404317 711874008 443979041 656994421 8789191 199526962 335215456 923914542 420188340 304203605 20519864 978788074 552430602 937338788 856743739 937137762 980970419 569965139 66772003 982108312 295707394 339576595 721926639 899793187 199989210 41993084 515482220 421298930 830698299 970300112 187631442 346145476 101440038 489675659 67795634 124701674 485399812 417582737 744749895 156092304 50757231 828476142 353287083 489854944 179240372 907099250 362673499 794406649 9418210 427558790 845024835 883935259 48086950 394492286 192097885 189080601 484735264 736944693 728319095 245485045 32806882 43895004 215703770 228251068 280692738 997039315 220835899 965955914 120115580 583087072 696552662 530538745 996337615 237238626 321708901 979848781 43882931 41039819 146461477 326362278 392485344 514011922 872273458 414537097 39682617 825215976 923044685 795116400 275001114 782527987 708961140 723014890 914808545 348909496 687556589 99171689 859069429 77735070 87562315 66199415 73835249 64979402 646967992 3038380 251452080 823214016 851775949 1615253 807160735 60219468 10926175 59978769 549306749 267122163 596981587 612376549 791442368 292677740 68130031 333325761 3102954 584559674 943522813 495642063 354246948 165383905 43092560 197805845 849677589 636283159 925036840 354503597 236112754 685074532 304134011 238429207 517588448 514757552 643909835 427888641 709403676 43179768 880948223 162231822 555419583 448184723 769098794 849572954 852247813 939075477 301569344 153687916 814984507 927248736 636095768 466654976 841518398 294641275 182841540 755414427 527595468 86533069 763990479 429682197 277055771 785144805 870801012 702159232 979601840 178023072 761733052 192927273 108082147 118016636 426189344 802817057 851465999 301049290 354454263 429005675 224741871 276924675 962423570 832132378 208426765 121061282 526995234 218465796 569456169 340317142 667575474 793145328 360588409 507738341 196946872 9957829 168460100 326879885 243949904 596085571 889205767 329356149 553362666 205186425 227061331 149386523 981802477 843152323 161854881 255677678 581227940 165224154 968397515 757615529 825788525 85454378 992622068 922444313 533160471 258757758 525563062 723483154 17508412 98165993 398454973 260652256 405454555 171947826 629360657 505587576 384252331 748960499 292253368 703085029 226412910 162780105 129471760 614048152 340773719 167959243 967698117 375176249 700325882 198316704 489617617 174401733 588471563 498532135 680321364 692867028 207311544 863153000 230532071 611450004 758658031 827620972 543543015 491642686 291792760 948565659 207848704 963390834 981148005 208073840 872490551 774783682 823290778 844246512 18632172 399965399 496659622 975067354 181897228 128986266 253370518 447386706 323708179 882133660 806608951 68801561 711728681 968119374 189031806 862569608 104238732 763776153 650024231 491975396 63886964 265832065 279952541 651934456 609718947 785553491 259235618 320812593 356040055 904918276 283767885 627962636 873793549 72862077 135374189 24894980 444998734 558661734 583746145 476325892 615454521 832677786 198339375 631931646 224827355 608746270 768809807 35242470 650322179 721222660 587369386 561227963 443195558 904453745 971747556 841933691 860557540 381616602 457289109 91698329 267163308 843100501 283624420 433313604 922568654 328780208 631452190 56146956 528161573 307349942 320032790 693338099 643354949 619214417 336199818 639366280 472905818 519264171 377585894 482213972 115444168 384547434 638343934 67689972 79923223 674460607 189043036 671561911 976225287 154204361 672135498 690328507 608199450 740838647 138854546 663617815 397191739 85296009 319378775 483836156 331572437 414141440 422055223 777325744 895595316 905972420 893640513 832642209 348225715 2163790 10242468 376227821 224454945 797331348 679814977 936512272 170629433 637405555 866878771 644442716 824572713 116988396 656334175 856719026 436052884 274801078 97504304 193778157 829871521 104643250 250296631 714446103 182311913 245271778 469094269 529558970 490179529 589460923 339773339 519504340 730098778 965190741 94593920 322042819 617756127 564452853 801426012 268890930 354065262 918346087 5527608 167770638 892239796 723799054 256136013 732193779 983013101 880206100 617401088 34301648 273614557 992427825 654374653 255382671 53910784 391316131 69229712 516018324 696997435 856945950 932103261 938106672 767288146 344014602 211163090 74651178 96595270 122743655 121641462 151673286 216868562 721412297 456694523 301866114 220634601 638590680 213684395 91733277 411067871 186925849 963744752 718777223 544770747 256710836 989198742 385667816 138425671 82721453 608281514 907306191 488697797 171404692 742438048 881212388 403986065 802710447 519239803 54639088 581101807 354579478 444749757 556119206 436089997 119372855 544626825 957380017 20095944 616837133 182751276 699969847 567692681 661568480 226965129 609979334 118384088 145097607 180270965 632475871 46051577 413308572 740690081 496331483 509496858 709926229 179465947 676006652 143460280 593316241 957693057 628005705 17509068 230581923 894803780 10801234 351096936 125100111 251715354 69584598 503595552 794352 519481872 761487985 787201090 283303926 540324495 392392159 101189744 341423224 4241745 949224258 473756327 630346914 378372333 603765132 647876094 651867111 591579692 301667885 606619343 252658669 317041865 478831313 382661688 74321112 481886325 892775229 992215479 981858319 598816057 55629857 349185671 194728963 960657186 686192397 351770103 101747278 464925988 10826732 695064443 55760693 137238410 290897727 38874761 436645185 732565582 67083214 186920892 355764595 374588013 416276282 367890759 266573245 811511170 54689139 134592739 807161705 449421412 328593467 473013700 63962391 525947495 159819934 778476168 579404933 542646183 812003137 145714400 780275467 646873511 237338975 237690259 836959694 583135398 348436470 546275696 707639277 59689345 234492310 748519614 164486921 110263204 704494257 899819982 516117403 47443313 496290775 778893985 254424970 349609542 287763868 284983831 639790079 591276720 239019931 340871508 134616984 856786500 255448231 688137154 435863406 956449398 672106371 738117614 241806704 499714898 269504264 581228308 762221214 156402769 832902547 164460389 109777920 829484521 392335618 572786873 247577989 86075729 269090951 161376555 324072879 29695108 979782175 980583764 888815203 950610300 99570856 772362809 80456996 702075851 280505126 348840123 99918891 664694702 167901681 74718643 100130981 593305441 134006031 316217140 957232825 856892584 149241556 368144629 836300166 745948107 269662816 740772570 699213442 22854567 334796312 82602979 89933101 254715620 226161228 283500331 591474687 11089582 481279047 820442108 249494232 219013044 845134961 999896340 18910483 880863078 486445607 222408001 582864078 523070199 447421232 842923429 636260082 274434259 867918860 93605574 684158521 554721953 24440119 835864397 605502420 325097796 941344042 637190741 939408554 334444438 139938309 241774427 84277679 361290796 207466072 965708285 210714265 1482605 749711680 314157927 903142553 549350380 199816281 422924927 311169290 726454597 524076634 497849289 351791130 95666007 814467568 920395576 540098066 399607047 223227749 879012688 368989160 994302083 734039601 399765727 69405096 764723141 772762533 417910686 476588585 950965527 451464184 433817349 450042111 848136764 378766475 633424285 944498192 272767605 893515148 443323385 210661760 133833111 142190671 662311567 620498952 485084505 893195231 20813646 446245607 907836554 890140736 524788470 848674829 582862818 70271445 270398583 894107989 180840149 555217467 47255618 527857390 998882595 370026564 38872883 635672719 888489008 288101218 954980579 387545525 152676533 654745906 5770524 800481727 7210569 253149772 550184828 861189196 410790389 407694549 895798628 263011339 643774293 399016536 558750080 701373262 955884455 664593906 233174774 462736332 535390099 441597382 861063954 31146029 579184417 478809201 533832609 557244374 504596280 124313860 737135812 804991049 913666567 987394152 85491314 786116056 9825480 321040611 791090158 46094564 900414872 624774547 686616105 536050290 60681252 882123651 901706888 829560297 573095999 511506347 588522076 160761209 39230684 921078606 550350115 830446930 490778514 237693451 263419995 415749798 699888883 671247866 529064972 513641141 215987418 244239618 376392302 182586107 294363261 323467879 818597831 128506746 124870039 624146992 384712917 722835610 866843292 795883247 40351210 320879606 496639667 988554495 452680400 422879610 740742414 657777986 268453095 713022237 987906646 69043552 381006418 429911769 620686337 853133167 933140082 510792392 114665183 369882949 496532746 250845301 902185534 611666981 506453269 723396868 763299404 799712372 375978892 552227146 86660614 390057661 537386802 791798598 145263436 555649066 157309796 731831008 882866658 234081738 462106813 925061785 867093499 854445061 656252938 771901817 51616546 880469145 169102275 491069254 781375544 205871853 707134229 388938691 173468617 909797191 78058035 724519191 885951161 280077876 564877787 282936197 804328816 369916269 558536896 452442938 641881306 296443403 379248552 304203098 868245845 645542142 557303706 571808372 687090988 617785721 920898835 738727910 420959117 328781040 619817184 683242284 664655454 133691216 729007868 653550850 366518438 578170534 397137775 660816105 567298155 251704149 325727580 676029944 142018632 504514767 755196067 22390010 901176419 924706255 605256109 234487561 900343049 943136629 79906665 872336170 578583538 74952723 109659018 720682530 557022495 813843647 947601279 212264740 479730170 521454676 607296477 184108145 570343183 239018718 28160159 562518595 953071779 666219265 241242074 705861829 813204159 307431953 942075291 169420516 129815763 757634214 756530922 357540215 890345566 945093571 3051393 104833904 159070436 529455286 601428332 958127369 433465359 720597088 513127599 355597791 367041583 951031216 557027893 282297247 117408303 499982917 389376462 476669040 203555696 925085281 778436727 703571500 367103186 49372461 953235169 629325813 666045127 994479645 667677971 378108889 79641076 448106229 439758110 699336318 590667295 270221723 844001673 157080577 638881457 174476526 527377575 310799309 830810480 361168697 328575404 177336782 948900638 760020153 309881924 554939024 260699574 159900324 233747891 860521429 596467980 682083265 608909217 545963024 161225478 613022593 372834904 164987414 81750246 950771160 28947336 441054389 787451511 421256436 229383263 928305263 74840443 860525511 768459006 843105371 792223586 143945317 460307553 731540002 122355688 358995167 606866917 555340674 676907303 337178636 752636862 173166436 964317469 139704811 776384921 756004158 641175319 278525510 52072722 706231554 354360839 156596750 455634492 764748929 45626021 207753867 336509124 916309837 233771113 383552672 534301999 539988008 800120241 790996182 182291476 814480100 905686749 207173029 296957764 421622477 740742343 321675451 722336953 79710424 903338660 750363810 378125114 866887800 601393006 317553698 713107588 74183691 396395424 761888154 800151654 594598507 702092032 725380113 834991011 41607794 289010013 960759336 221112230 157013218 864814011 586535606 444825791 490208691 939145966 766154930 228890996 372715090 590622342 180651369 860281581 471478415 748280399 881801919 695700644 183407658 204149034 399298875 343592858 371404261 234780465 477259066 354587829 562243091 375627159 260892664 829306700 121361351 18291628 708545565 543438103 720128204 985347658 61189524 369733231 137641805 761420185 761406934 489271813 556184789 966023098 61911089 6313011 43586229 553772185 963769662 957724939 787459182 293991239 32704360 330036680 647634813 889859929 481340905 73396160 828777276 157455287 430247018 610924423 301036490 159180354 818495032 336031606 588604963 802356278 507794142 158915485 301592589 199042697 933285350 505015398 630222671 312805055 175035337 784681983 330522646 448359644 66316454 526867881 956001553 943424182 909116268 731499768 384507649 683645993 345898985 926451918 266944949 762819143 683873666 139577304 263887754 94071371 499172471 323260437 426095150 338964310 581265736 236627781 603769791 686481958 375374053 980695809 299721892 188473715 909452751 507936325 463011999 163699503 800274381 262033329 796688596 754944725 567441080 415983354 445803807 274948892 363893003 538001267 865035596 498510296 901113315 13614942 651196425 84100570 881807054 848603224 13454545 921021272 13786293 326666829 950473504 201137125 552646516 497765487 462439828 296241944 770744136 969304946 492222996 716498263 546893764 77806347 133626791 383266725 737425310 889805373 607645701 255752702 457694924 247235113 825459538 374130865 567606765 619575878 796722002 310182176 741751202 570287220 750805181 815821427 530983985 913389446 761314239 678403698 725890921 371507575 997057299 815343742 280143477 482145416 864395237 712762186 955413470 397249561 558845653 326085282 865301937 225987150 246166334 793282688 896285595 591043357 85428711 647615395 201149952 964383719 376454317 970010757 783723419 655675579 953917850 573752063 776159834 815656265 592757969 422235234 923184132 621960710 45637711 991612688 514104424 293817672 604424432 555487055 894060250 39706995 971298955 923884602 824829826 893519179 477566531 334480286 522636962 51051338 913059471 704994080 246988315 484008812 379758482 957551272 37459591 138828477 586098933 543970632 425531345 310449746 449366522 411297805 790444228 179839464 91780669 814587377 656359869 843123154 321638746 264133918 316640059 391470415 270178494 218171679 390723188 411331468 876891010 548184644 179624138 880440895 212682100 909064248 23960235 555366118 329551256 809807241 455108468 172803048 124980961 72370567 241981761 743441992 556793811 420464082 915794128 706950392 779233842 661631267 54427811 39009416 766523774 753631631 167241729 796777976 829451494 894580464 59984189 619439498 508053676 667592234 232631825 702450809 10674374 277983825 713662433 451506667 161094172 115597906 269350525 603656127 179973601 728452998 797152291 229661539 462721518 866765828 705462238 370234262 899464844 599683856 248776433 733423171 497828418 279506799 194945355 998754059 266269264 394996042 628811531 578002204 505920680 338067348 662385705 285591377 753771574 452098401 531290443 295127677 605666956 771739655 940027885 599555257 476094080 989392167 996190697 447567363 450357348 896621941 614883697 640251168 588082195 389460804 800877025 242351792 227893603 417551472 125514203 866772004 540001078 890650253 716797506 651600226 794462021 398415746 393322174 191077163 51814648 575401938 791950428 691733206 136248340 202539522 28660218 612554697 133650084 656488628 153052913 12914796 834156052 567153610 59618402 372089094 192854820 537968277 415794825 424121987 925756447 422448381 106596777 171355237 877252670 151733218 116892936 105839575 266663082 533372804 969066551 820149639 477477452 470908015 558323563 966176514 979651464 547143381 902424750 847148196 572272364 39498260 259807631 907371715 922813236 757344575 997518511 781857416 247351413 724791477 379050058 594141994 189283663 608536955 636282890 400557258 364877375 363109466 353432355 451798354 138003024 588058971 71401920 176068317 519913934 175164734 426111971 933399735 896139409 867047017 466619184 656082589 163582129 944868327 395059644 607604969 256617285 64979493 899570402 258024161 671434597 611847077 728863890 325415998 883566601 528477522 697173860 339184469 89649199 66896342 583329702 289358658 338227290 934167883 582051534 965659391 217850944 608165087 951269756 521104982 590076181 991635845 727022129 849123118 56817638 734386316 660206442 737416605 550020459 751526860 447815654 83445470 830987401 154166977 844670372 823907691 749145569 551836700 489479592 355357104 414133751 163524041 764958500 654998405 2271780 74038001 206463253 320649461 77651379 515742044 201510695 642355037 517774438 208833941 715478733 576062110 204927779 193801913 153506159 815145062 181865274 524557481 41621405 747274141 691761510 692876432 970010770 623257268 224604429 684166874 689717345 468306990 47454809 752489740 743209237 590467184 953697865 835886397 368260148 640977649 594888961 885134012 892193404 511706924 126142054 82276959 847137045 990772739 573761463 808148181 313595898 537207901 378867740 754294070 254210412 30882057 376312088 914486843 571387912 781960413 163237015 848382081 333653827 974197838 28645113 457913457 617893010 376528769 493760711 634358019 14787183 890715630 704017840 661021820 605664084 601142248 268238234 934559955 438592777 136421658 369469412 952630680 156361037 820227715 284758725 82674272 830942730 405990846 644698392 776355819 71368803 596204042 800706274 291561119 342995401 974862281 444943992 62006078 447962517 201527172 962369738 749401988 701127417 340698333 679455930 393998587 66856886 311237405 531875842 897260233 4818080 977291291 316250886 515574126 728651712 68341776 779786935 184670205 440685740 200542405 303428087 229713008 814025489 716439003 940364090 802547640 701710358 342368020 506520913 525663047 823490585 469856658 948609283 819680137 836679573 551891763 573426707 171691474 287190804 264792464 114791188 9656353 424800970 712915912 514707330 222033969 458890750 579286773 989709316 967533924 632845324 615979811 668551361 747470222 142085737 647203015 84430348 101607589 884972526 286394237 537916701 705922419 697815028 837928463 473761370 503807647 546085004 499737966 769778082 374769569 304403300 50721806 159304147 401004385 533854328 725427938 259978100 27577293 127811009 277413656 360243097 941048950 696914012 434675051 642051397 758252738 22471738 431104676 261473452 351833258 894025238 251183786 673800408 439375830 429092999 944622529 746231990 178982710 807485536 776621830 894155850 180207100 627647886 749186394 349360037 285088466 240053426 196522984 752661435 245875818 240815094 335819080 629524973 311323983 578402898 319024485 40723569 637460443 516728932 177771845 245207461 922539131 406008717 701854799 759123617 778008688 411371241 339478761 855870942 200265956 34946665 178918807 398380739 123284758 824540143 82176415 654411190 475197782 364399388 727631747 329872220 94570256 761545226 728635616 29813982 850857883 889581283 355908207 922573720 20814987 300048872 525694294 717197680 694901843 528801724 423882973 863108143 542783423 838238521 936406479 192413040 238677830 951815637 910058828 594809990 547192997 662712926 743375147 98789334 909041572 11814038 749067500 544293309 856422645 747563423 920535939 332416318 381771969 500136353 522265561 947280073 307878167 516002765 21933513 387359724 218139054 912233073 439857585 963312706 904048545 937353040 150510015 203112817 617938722 926942788 627033744 330470191 843105631 447449451 125844245 465456707 615978504 635127248 405786522 801140845 1732840 862497679 924935724 274324362 465449663 659109265 433675858 377625132 341667016 146040771 230139636 97282848 650357168 818121275 886664064 729985414 930209452 760001090 916535143 3697936 486471935 11876108 975931074 54809460 501473614 978506377 513388820 41597869 868882669 678883724 980164673 810188083 614685451 952215642 570567798 429974414 973058382 973982461 22756101 596502322 385323822 535390067 167118796 145360364 97361687 801784527 500572099 389566814 841070131 132669992 572214304 608793541 255696225 543017197 473249006 966523600 700063075 584930292 111334915 271874508 948530308 978584405 151313678 154818691 663560869 329985991 289150451 156003346 876926234 625580242 649015064 446983106 8014288 403928933 982516921 192282834 777415000 77354284 156497359 802795446 55775374 777247833 251775736 189193040 676362760 883336825 13648613 523883610 437835254 984701404 142721315 283912734 840289587 941539231 361275788 251875387 824209476 463866113 445106631 84078329 513879385 772853154 265133577 782821677 169041047 605408263 310657624 621253813 864189751 48476461 898328671 453814661 937594362 131573723 922114744 285266654 809250423 791128741 123663722 207850774 296845809 33513093 338585824 268190980 940500106 413720524 196677845 882114216 607871007 252972850 278008340 678582370 351076697 723343612 759286813 844213600 936417388 796030014 500286636 795982810 866235042 576699624 581763401 49942871 373622099 809451397 352642061 24055435 654430042 432670090 832748480 656681797 739723166 331337749 395415477 334756616 972077906 384842196 787658432 13848248 890416410 428029111 280541309 111699139 826990596 929358153 472906266 125711871 450012115 388921569 529859110 589098044 833008136 998765088 376642792 315167633 417575674 602744459 975309075 649435541 727939063 741294924 772450595 867464739 222114403 131794673 283568579 91399091 178410088 319804102 662937481 791703947 258981067 388540422 654544760 446043985 631117101 400223988 575054466 232286443 755479240 331758220 680297448 781072133 669778136 656205487 209813538 171106386 135834700 678110286 634861843 385647010 160239075 716957355 298210154 536340443 830328653 390849466 466044621 794309510 964606299 646272574 282172512 842722509 595163005 194458801 652239922 391674515 4107656 445655240 233058936 780189605 308434846 873176293 40805270 672726726 414002013 552631289 56046779 334021908 380922580 822204961 138832783 5618440 735060972 1936280 171799791 873854895 35965069 654774157 12261709 531717061 77858795 337277109 947554635 34493996 852983001 39867127 549305463 148007325 789118144 235161145 738721124 541517622 250347103 317909498 194585562 304412431 838821822 61800656 528364034 63174550 498171379 747237516 808408333 105093347 330264703 413878133 79253811 547116638 506521317 947968868 442914199 44962728 680707147 155030771 360017456 727918070 39679490 594524486 284279285 165339063 357055275 395307639 902005527 930204150 663494737 229994511 292834780 524010077 188694690 283332916 486428513 4909894 435046405 67542535 974599987 469444161 592529133 162541189 831528711 363676484 777034979 714998787 641995183 774882357 153983636 607834174 784738623 335286945 275089151 165428506 904530181 849104813 388903659 124500108 699555973 408610998 978187048 328085145 775120737 996060371 83571370 878660220 37403867 632947814 973038111 211953176 981596585 501205232 920815915 701860885 782557463 349389484 365417369 452184481 905041700 741745271 574141771 574907462 692294666 555393143 780170065 540114581 327832176 128731074 893926718 781793447 99795027 937486874 943140740 689777789 973095706 990914498 10132709 39398453 446987719 159369125 522089297 431130772 711243690 964996631 895384622 284540527 393204469 715150217 984838517 353236744 913814486 735868725 105146154 725159427 535798498 373265235 66961867 333315203 651469236 362376179 110041373 318741796 992019544 192940915 767203147 819870501 86008937 883835991 515216435 402251154 307917981 220151531 123066122 34974645 166383338 993067284 619215938 877701430 441066626 624963715 469399177 840645670 744037482 970518530 617007237 409822504 810414971 594183513 966430305 881545355 81720590 208666888 729062632 503969986 96707493 708000206 186537352 240483699 939515118 670621720 51274551 738150049 478212050 659359940 97291587 654571813 228598286 605936511 321004713 129680295 108776260 222220641 207032886 784650764 365953245 460106587 756436297 763498496 999629246 184451799 724599242 796171204 470834952 284959304 173807866 328120056 917913978 900743615 958161461 490886467 974708729 215564708 656565332 96561485 246095175 916795335 770065342 360995653 759518466 796877607 231108171 90661401 643218881 365786843 812029826 972686891 542602296 235086310 841235207 312430811 768659453 665518753 760688319 854771862 923244021 41569576 969640930 443696842 540921408 823099546 693327905 864448743 10223197 911781621 15737469 274367338 286191402 233839439 58199055 489914928 258973394 306042913 331272834 900658242 451685840 489926172 723323138 671738150 93947508 363576110 503322928 75518185 703200904 512088649 175510596 899085999 4678547 718970131 258995852 295893186 771776552 339353571 997270003 687326791 948592383 484113321 578575616 812617743 850552184 60843314 135724431 983265184 142431499 345359125 198335880 32936786 77392543 354876715 620224018 107354719 918431533 578315344 846283747 53419968 411184807 539543355 516925245 665086783 299119256 490421226 641816261 354850482 214277901 217788074 629647562 999874355 162171196 204914151 196684557 204248351 47813460 978186766 339563670 268709064 310226219 383285911 984775498 6494440 135797339 930247453 547786058 226199445 92043260 622045408 246218964 788492862 814597591 94484997 492430964 577639758 805257575 765774504 21684377 549869996 392404855 745712765 854476821 843703783 922677780 295545172 190494602 269064041 618500107 312043832 997435074 911469510 580463435 948888433 289392311 101714090 511723402 715212860 307857532 496651917 346019240 568051958 780895671 846594667 373535768 810102680 709752566 146057864 440345915 511962551 779003615 774336112 109489465 337075720 241120421 970237077 546718359 301766076 57455985 268421121 525442269 76736252 719854187 284556678 62407874 632347619 344886830 790415579 986835799 424871836 602579484 235117515 157074585 994991313 596753494 960035307 600084623 517430736 490421985 900623525 737152405 361707420 424086495 47777447 391315847 482058132 959618405 107741527 852909733 177188352 85184661 38409081 776082855 868926379 818557331 992094630 55520426 851851877 819721448 593669007 213169300 661255888 176940965 370496052 668852876 876012354 456321995 562311884 493852588 296831621 120014706 314057729 429656714 553633826 953334659 981629717 797390834 139672231 849339393 901447340 487186266 103025925 639948204 961640728 491801794 400222824 105054447 69233286 979491877 517133127 394682867 979535479 315802113 302064857 201948008 334699447 725044172 511698535 830992238 409448660 571396285 207111474 912049586 100747188 940843361 560269382 799081453 309417111 290441273 290721494 482892688 668870145 344750753 374805613 692327095 656244898 229900312 217236455 932101702 176156571 874094043 197075874 322208412 837716200 476355643 888147844 3004480 9227166 942473080 306760224 474271261 441697701 368082102 640098163 244378258 398260495 69432953 652560305 505573740 464505302 833686513 338093699 680333267 40361135 891941836 296217591 590873216 885717425 761577852 948978681 963057999 979845208 882185829 331595972 645169430 564042041 619616936 580401237 489478400 337061375 716802354 40444442 249575482 493878344 185219354 663488852 306407315 84552386 767173954 563825567 569299072 896632267 736666307 246722942 877727337 926899714 697935590 605189843 196787636 371466750 218338632 609725167 638404020 220060470 181958440 886199540 910912138 448455351 637481220 48202497 139145866 437384809 868056162 474712205 502467266 583338106 560995888 167211485 416936078 651858665 284166038 501513394 135286427 186163256 43887490 979040433 542606772 198457265 455162034 112720908 385521460 21011167 955219999 226416928 782334954 321556150 57376473 691818592 806827487 3892476 887806091 799651546 412916923 657368977 145232854 907108929 912982850 625174067 373705913 574857143 299553750 202465976 647270314 720753310 754669221 126528915 528405861 503435898 106083397 68987195 123849031 718526152 302386442 839764964 409865691 935362437 84010305 56144109 725046223 398457919 223475544 348193686 231736871 648008640 643413130 914084172 699486295 73821807 449364246 571530513 922929151 633268817 161318648 386581851 162994506 985650999 745524350 621816954 341185924 420544075 178059230 314235949 689328155 450978602 143657400 775343307 392865941 459078010 13107193 195932742 727545252 574773971 927232602 879760961 606789156 571784787 671735012 892446675 191576895 347124190 143365763 342289935 270830676 653700253 310637430 272566134 633848080 888304715 264041422 247691243 962117597 849263167 911800662 349240373 124446298 413029635 598877101 888099285 443397005 724351254 922452638 662506259 370127869 962092018 889194324 11661516 132905189 887214826 34606077 550020694 965876536 95544154 780944402 855204745 725365924 536446310 669405076 423395066 420915059 173415917 721473584 525483797 291752819 394659791 32683597 544916860 373894715 954785134 929019152 265742253 203307885 734986183 561480723 916510077 954702772 882894777 383255405 404537958 838667715 919691319 482141288 633423938 348683258 696807086 745565996 446033770 430135351 335440646 957989346 26278560 165117770 48024759 822154929 843488972 203628580 847775948 723862158 735315149 313926343 385530759 954289126 678924087 577564876 721691944 568173976 913528860 172402228 926241065 133142637 761370725 548175486 998235863 539085915 92935443 868531327 757195069 37714372 675091949 313424588 299678063 583084578 315862462 720902907 883276528 579524471 402214870 454226862 193710789 114240740 31529421 337028936 532173648 491553548 914860048 714061466 607739250 136448525 750079277 616642865 262425531 113921559 256899789 551893260 556558033 7667186 978609964 384213781 487491275 408279023 611333758 371813503 728414412 358004234 924747106 62747636 551190589 828073828 64224579 458391871 291348530 55742057 987706295 650098500 441217193 552080991 1964723 868557720 141321552 214748136 526035749 475615721 539083283 466933179 53617619 258659777 21184727 257197671 678048994 966663827 329980204 41084604 724672003 282858098 466334485 433026139 414907640 806704145 450510707 564198408 335754789 888829303 101534914 868024276 674431881 42282685 783461781 122162987 443973659 399007840 934279391 894884024 671859724 864027963 968867937 13411918 500199984 844717105 59428154 56018228 904383182 263483612 755280305 592326303 928874660 678099337 626776811 3639384 975124355 70967370 760599094 326328216 308040456 583544548 44510006 649295896 478794469 173806166 297412965 142171533 52788922 712192703 23432896 44772485 928822432 234688270 505989428 41138344 301526451 308913511 494503259 580617996 449058602 167734162 269870679 435385998 241883461 809654057 214692479 477500733 704684481 546846315 507126985 693879948 816316251 410109970 223024441 181382703 417384750 931981830 439965501 284352264 105175025 706572024 957989480 454431025 593915605 434551118 626119024 852210133 68113228 905902070 15140360 738419266 95654676 311421308 564049808 460623983 487717081 679090161 91713850 678027999 729889996 977722766 993965322 811991816 846580658 633746155 162647312 659127842 224857732 303947527 716282921 297873751 631320397 503469109 677385579 246624048 269665434 278527899 398747488 10549279 27011956 998443754 157116399 171424752 664819740 794694207 412169179 392875153 839326212 450380125 900154011 863339498 443228507 853577150 300657795 357327706 164908146 487312819 669000601 475573015 733049627 205011733 469171698 392436728 654942954 10578577 968289852 445875509 669517006 420630882 318882107 44278896 268881108 96952966 53847161 255556989 140166212 692800879 42834428 312880300 728177180 656954755 763512681 64756983 827737907 843268753 217200115 202512600 739976010 87908016 45669806 927544029 402498866 558886412 105656139 478132703 950717767 876614025 418424788 695705736 134949461 873429354 218672541 719909612 486311696 204142750 225221900 109052195 229740235 223073884 981524662 828180240 691923255 888615692 402990067 509579166 889138882 841298722 981849226 566382723 514670024 262856876 856594743 536337196 127185078 106649131 733589178 591553380 951674883 272681606 767227171 783730058 284497262 694903916 590505193 268925774 52227526 119141539 737121202 627079637 665169915 37311795 684038899 336798879 691119486 514336653 401969773 183380377 267419337 526824189 2288121 584363349 150908489 186929783 113782516 242491995 364699122 314710531 495475978 738042194 877831931 422917819 633208953 516651954 380817721 118193860 832974358 168435008 300815891 10531568 641783446 111293835 84483307 104649847 38991400 616854919 321603446 193971445 685769518 749522351 467633440 534689668 196280045 666263079 496487742 691765109 87066596 484394088 506302951 923684271 296876463 236182605 789290369 84149881 129679993 468119525 388384787 481631863 751177918 118661663 190001985 728385879 881825606 909923483 444988156 16265048 511458823 981719197 147635445 71044887 126643717 98206948 850086852 345736397 258353750 486992256 281010123 522004490 880939913 149530765 659133214 675349169 540686389 833919423 137381355 894250500 235227917 249073702 494069812 763748273 41051538 841900302 987104815 36712260 110639677 474213713 899085559 280756330 261464631 998549433 288176078 769230955 834846646 663029291 73649373 290403058 78255213 958620810 147990491 36213536 560712220 305842567 110882863 781667568 433999425 507845702 330611644 828203382 687625022 469584355 24940018 765397262 648919084 980271678 692097971 791697874 674828264 222190385 357806984 954791953 683321182 601159515 282106775 556120725 820764474 976640319 520708530 861710379 891016889 146778297 28331991 571527988 83137481 773275402 515426098 808158330 739814265 876950847 759170144 846996313 8478608 606791157 993603252 704929595 703679645 501427549 500871619 295893105 794956653 923958069 71802854 20025377 985669208 871336220 807700283 897314312 284038 441267256 18659207 626212135 614747153 156157495 904751998 801056004 155187053 794264226 906412661 179644410 138271780 329412884 448368007 608590272 473173624 350770159 185273040 435286624 749744160 56136294 917758060 500529273 500901400 180248525 488051098 652039240 867843879 410663649 99862373 278591647 392296189 452367469 69402141 615773382 544319341 347474768 445839728 128694143 28397574 760201901 851127329 513247767 784331217 910168321 387769435 150083166 567955588 145279747 599754175 705445892 667313143 765599655 822921580 439760630 168986920 914110442 899714471 556562975 156540955 223567118 344977793 415731654 251191178 533357116 52111778 220763030 645240555 473099342 597011239 719620842 226513180 402908367 326123622 344654010 985987112 120064358 678219823 352076368 429554154 498530354 389290018 441281217 34335629 210129207 199019454 701138439 209771998 948516887 94810255 852698084 791104309 961031659 874103371 329122592 209989975 917624038 906611291 228968404 806061571 473761034 181048000 700618812 671788399 216902901 290578288 187163356 517779060 268870766 87824634 590452190 932020549 484505447 461552548 570870783 735713245 504331568 595278298 412102151 91871635 765491576 646209416 251503687 246975823 367481369 186848753 811018572 825752771 877198771 369735765 594940997 839652185 85522119 238547069 664605512 640254048 796300283 433006305 443581881 506454126 940178050 446285307 15633116 150807651 263131418 785900966 570901814 549273624 519158138 432247409 797490441 889863681 423967283 568841709 566819466 454671639 362941917 703656096 105615807 763905176 687641635 401654681 228075574 524586829 161525538 172287661 406284210 966305526 267258914 31059427 383019763 293707949 287851926 380960433 818441697 257165978 171734640 228286589 94673279 352244555 95434205 238594086 4552306 52669430 373278706 672169864 110079490 139970237 966796897 361642511 298960387 433369288 824057845 46910324 265927962 171912533 422541053 223880294 261668031 140493545 229610444 771867428 872957921 246162796 529087767 773516845 495520990 325481882 68865400 803343988 25326480 73129711 424254993 76276433 212690144 450934890 562999781 994652403 126214610 566975169 925690460 901734103 4826856 909270853 559162876 684598272 613543290 557680048 220434828 284127813 382390519 533312595 647341503 728510249 380804053 560792503 122717799 659374812 555977008 698075891 815341666 269813331 324541405 286203779 87440906 731636396 518621092 184496809 981915810 193363658 471388923 686851400 861518649 917751906 390203055 585041623 101691909 670085836 795523019 47286495 728783142 309106412 121023692 213933157 726953604 412256191 577176697 765722560 212228340 809919244 872305596 579593753 317667194 754308436 760462974 520188659 973322856 128921743 901123524 426796026 80233656 625769645 795580609 797330862 330882106 801794966 560494504 956452481 610694918 676577088 254119366 25817927 112275953 681593330 488363551 941246075 746823191 827159198 908273616 773653413 573378606 149615901 470691183 964753749 803836583 309900716 640362298 391129291 917424142 228865105 965094376 152069702 292100400 863361730 56967742 986052824 495938922 964086622 296552633 159198087 229213219 573074043 91562602 160280671 123360253 287667318 582132905 209563712 524460182 566588122 926743858 64009107 862802695 79741162 982247669 744390000 272425607 395337829 110400054 697243149 480398828 182722661 416117447 135411904 187712189 647135061 838225130 739569473 839327691 52467452 572315123 533791318 937267638 83286421 420625388 832211581 21331927 251363630 336604139 334912565 799154203 739957102 158602131 933987831 963949653 825996475 803508680 45216726 494257123 61436001 803470342 205587014 136688336 333779407 670006759 624746538 79730770 576051862 198581462 817051446 45420020 37936012 10356306 103832375 411650542 302580911 561068961 501332254 627871044 358858824 46219255 489353646 532410384 728928673 440876276 768654453 16538228 688369894 60910069 355436315 205211005 263078476 880544224 859259385 526408688 67322491 476911147 689914070 208768104 753286664 455578155 717007574 437912240 485380046 554188106 310770194 154181867 297919828 791220844 911101807 427043237 279731822 257914303 719923778 767203173 410322568 761542160 357719913 272663163 684535660 468372927 924481100 995128912 62628691 634581385 708409573 575078285 473261291 197341346 776667411 740158342 918180706 78534778 864569709 435542569 624618547 68449247 448665062 280631023 118428533 618005230 784724586 782560366 943862593 837065647 370555792 736612804 974407540 184276816 316240544 92420793 432299410 704750376 937455187 757555580 111243193 844727784 319546452 464873642 302650440 485795355 54747444 545806794 829238410 144852157 597505151 781374623 642365723 919100272 368087286 695559320 420541532 105787897 730010364 815850477 390040618 661406700 978041072 40930926 374768110 387503467 468538237 939057583 644518332 193754166 533930816 726601670 617810317 326718269 599655568 660494294 284980652 178149603 62189408 892152501 756026013 507799803 545007591 383268745 829815069 784060240 485556807 922033331 453142988 11375431 761405918 135145405 408542502 189949603 627354389 209888531 13394254 724752914 277690192 858416162 512954781 664736278 287435731 468419122 388305464 197971510 405781809 155787166 527153429 128491835 419397394 690102709 942247584 739763021 180106801 343884307 249871268 663958557 306635715 766402616 690106982 275464981 415958091 709473280 595029527 509378637 10891309 44584759 608867509 435649500 618843439 516874972 856157108 716678166 84183322 527423549 73796871 768606785 940705490 690124886 874980714 841472425 338564967 438472623 653934564 429450660 744023695 923440126 500252226 182324558 383381866 951794118 316527122 820438416 926987900 978755759 645318679 790026331 828348480 902975905 986856347 480150441 550126928 98540758 583208071 240843913 351630135 227613708 917542113 503416729 939515406 952892531 201586652 807993397 608628672 86590508 650349174 900905458 581460512 789291973 576481288 353288024 505947471 261111563 207257127 680911639 220218205 334852762 821565116 698940764 500151059 632043588 493431010 202421095 34931079 185821347 520688689 673731389 948220511 396672701 111014130 365003614 341355093 377820312 409309622 798412789 537812071 508599165 221456710 804971298 816817422 90477083 557029030 853030875 661315204 518130312 248337130 946895823 203881679 636977321 768626108 724691859 913108547 482046474 151541861 563412172 482800625 519554014 404297125 102123225 798408822 258673502 337403722 44233240 95555251 335348984 291483531 120125681 972484456 510980110 177288494 344903097 708581594 216915296 779329976 539719957 377962794 847215941 593801662 998674675 674503970 418162619 698960893 347045704 617885305 874168698 753639676 902456614 104739891 12511412 280330952 804334459 171962702 35123374 157561265 219568425 209155055 674201323 748189354 841500448 66572728 952150181 510659145 826116555 260203061 761331440 253178058 859358620 819473308 607809302 148852702 191743411 942361864 865312767 947850579 307073425 443307955 367919282 436259545 339046124 302529406 515420389 22404379 435256526 240605942 480858238 767057135 883326784 357226864 44683073 777812326 495320954 964673416 930875663 309334683 205047016 104812145 238591266 922974635 620172357 656507285 325723337 414622688 839001672 559661864 739640718 555169862 863261467 882417114 198827627 538350273 504699336 707193121 664424486 946942064 220808363 302738517 271650502 788702305 408436853 954912951 474889138 275975740 559071675 682690857 366594380 190810100 242888548 991295705 830321858 344025609 557076738 901666464 983566969 143430413 915836905 520103722 105431124 539096801 272974029 706265073 675381313 139800259 78111020 105719800 311300130 916166503 506957534 741434962 467136870 261687926 779954287 373931386 945053512 495635879 337253776 537645028 882797393 406033715 25044060 171716144 792139591 769246882 813111621 990699108 581595595 382133611 948498715 481855612 218242896 334151257 162525303 288757746 319769360 497892190 319016382 109631796 394448690 564312245 306669359 156775130 551567898 458640100 265311903 539253417 115706206 689163507 122779083 243364050 873566493 971293778 299224571 925021032 329406322 796328705 608819163 951734596 758245156 427613830 951101983 3084249 42181732 699826868 576981873 645359696 62617808 535636649 526313111 199430079 632501406 294230935 165852782 258502274 732418910 10290562 50292752 376393093 202845734 82093134 489629344 382560197 468259904 42765956 351542745 99388686 684885396 92384090 341978600 892290808 299728585 784239177 207997201 791685960 635036670 650655217 535711956 526476283 735030763 368646969 964009217 93412135 206344510 147490176 111383215 384431809 294475082 490732237 473421783 249791221 321977047 340618319 911300742 678329355 64257577 512623740 292116099 158639814 507282189 366665346 347584210 159651665 997720063 286402408 932046854 835810548 229380058 804428296 19153446 368336438 764524488 576617688 940826030 803079488 132149746 575911782 619520302 863449570 17318687 325474069 753964663 381210945 618604739 70732215 220642565 572104637 554995059 768084601 799523225 244345020 963523816 268152359 340283501 96303560 866782592 689076138 911898911 579858690 611741437 725804489 248016824 52535641 315298846 890175099 456035235 393914767 718586484 395561088 571170450 32607888 80079359 463525483 19640456 476165609 19718845 93186771 264342492 925890851 240113123 915576575 862342388 181876451 280666764 348724954 338316297 153248391 643237696 143720036 848747098 678026861 559267519 946450940 772596176 266062391 616552035 74066386 302390660 998237877 561328387 339011215 20022480 847011722 602654834 799146479 512550220 51489221 176701780 211422042 324658426 949136837 765276787 923012535 781845788 356971034 942380967 624528541 925234497 742090266 326144642 184991716 24322465 136620297 820306637 908838830 991668060 118250921 104174450 818171788 876711065 576077627 717436813 288329654 320343207 247628114 741483173 388430479 261999355 371196182 838264542 495886362 951796571 428820783 5844572 993282851 823390555 719875431 505763146 270166340 333965319 430604297 153059869 450099108 748469411 10920663 647295739 641829304 542170508 938355350 828736124 493711693 406551356 577163893 151671398 747792213 631592160 797695816 560609233 217198013 250869988 147817006 966521749 245493988 222245421 561287143 142724037 979214545 444778814 948947325 267029201 945042744 8535506 751127304 995581517 20544963 22822224 883110756 47621970 927584416 355540054 83805763 939054593 538039208 460878627 303063639 680077323 391341631 76385508 616197690 659621379 768147042 211096170 409039628 449936161 448913801 937918707 463964042 566941664 976077091 929225648 414909947 167551026 586636055 704827732 145649940 74223518 87847074 994393093 757736963 217802695 464678559 163314663 390780989 427594012 799283268 31601655 528576846 277985675 194003407 426951234 397826619 455556270 630921850 359950094 557041153 481188132 526026355 384274424 419295088 32155062 204693356 874753233 216317731 187577087 146372319 223852040 894761189 637061990 867360750 5684234 214786335 609649300 315433691 927149943 572688378 526077837 11531382 38570221 416291503 255601251 920830232 941028291 342165062 246327811 850480913 109022010 665050601 434447551 165464656 434665200 844961299 469567072 520117734 205882588 972900937 623813513 945563465 120444160 181673242 710728683 926011366 783800196 57235947 257367149 322237551 691289390 55439494 83198518 841682169 111053295 17843498 322558408 756957339 382044931 119624669 382944267 977484708 376951146 107844678 577540743 590450545 180412668 326717066 860623144 962976154 310137875 239851755 243855567 861525224 808549299 402467884 971770715 836489001 650775862 762359254 568299264 286396788 945432091 31060098 16821520 121852611 603944602 884898917 159165815 189338641 752702407 390379030 407441863 454041910 146480996 167501619 110588084 475020774 162173377 938464860 878584408 584582992 473887766 88474365 837111423 89315163 676366415 984474564 856029884 190541086 683829575 747921589 247406032 792638021 229707887 790067023 184963042 669185771 498699179 652115962 12742606 350433465 741919425 267490593 370445741 75183347 954232927 737859780 813028019 725212019 488185695 930331839 179071519 247254301 48618377 163264905 297733864 680903870 72288654 527685070 344934244 93502179 81560363 894446906 676187476 800489653 316531032 223617318 741512411 517856226 297001327 334442123 181975618 399565842 961366034 469837450 574127552 703990334 73070149 75232084 886023711 761995220 689372890 845931939 479212115 357142870 954022862 634447609 215187187 303164266 2569512 285863375 141245993 451964695 413706775 981088328 523693493 611136148 196235870 217441841 252847009 109329884 285905491 598838189 511919468 603750301 281768390 561908016 912391394 740267205 932881703 154957259 665217437 781062093 468722770 888079721 279507237 94159417 299317648 770551806 732981649 457148245 513969756 877522768 861948163 731055928 434292446 340016616 143966005 577580670 19833499 834339537 700476771 585454927 279225930 772517959 214202045 647246156 70536664 763567399 625819631 577705003 230902331 62940086 177070556 735360036 962979212 656845441 827294731 848427672 833309098 581491991 574967206 787000581 425196245 492982368 206705421 154392684 237766285 708861777 423038283 377390102 721072591 662927052 432198941 893859459 474876776 488034256 166000843 606770328 206107700 242939486 216616362 428925683 936631959 419744348 284278808 248535634 371535718 147108263 544199815 785485395 324448010 867113670 173609650 742784 557696990 575326986 492411301 340112875 500229208 142839498 248343068 671216834 896387163 776621226 270301605 289234819 728030961 821998447 502168599 718793316 731028858 275631805 725280688 750873053 795652820 763972775 746290605 191274795 638667647 329237308 43392092 778828970 117022473 630909704 74306723 766492901 67150497 168444603 27569153 428355508 879426464 810873209 916310237 182937316 632043853 896187947 658990484 445820953 991767939 730135977 542294799 180778807 748610456 877518604 639548695 388546458 744948635 203091317 917931669 434407034 292129376 719819863 373223266 891133266 986540864 6137522 386699559 938661768 647058804 32442983 713766454 264259039 277354725 644666060 685429490 691855700 648947629 187009435 999702833 18264592 769959304 791129475 323208342 644522396 546895426 791166003 125765736 460931523 724716476 496144255 651642199 993922257 517223056 107762053 80177612 711854334 791329011 25218341 603941560 807929104 645490773 250114570 762779158 465274575 293763769 426081547 807563312 815549947 963311661 825353860 562228758 529930423 739786506 516537766 915050753 628617916 344202135 793155780 9768072 414911185 814769517 344578187 592176131 168471289 998316299 534513626 761764708 406712178 643598973 244862336 773664996 125057211 271005552 318021406 523837438 546143337 501484326 5600163 430564408 117257477 423957591 810134686 231453484 705341673 186723323 726331334 839295727 61612749 188688759 970679764 805816422 591468385 96687605 205995605 238880528 492828297 975009133 39145799 124934929 474971497 638306570 590526161 979039266 399819926 953834527 15229931 844292454 717322035 907915541 300046235 406451308 893528071 322622932 317657704 536226601 195589177 481278228 39901573 619427476 994202868 185413618 72353377 662181876 860119937 469277250 772299972 112250412 700810306 710776542 760280935 703606946 336238243 299756298 316170085 950120363 692776994 928276592 661457961 858931397 788092409 79656895 374516426 88679931 1359365 192705016 745135336 914985262 116340718 597981458 830623760 817814818 941034642 316414589 889688799 78334665 509525857 891553999 297497704 134187927 62315145 630086885 967075024 55762918 532982808 123888127 507998987 325447040 126311904 341173956 646596971 247527621 972006358 882346793 579061593 235650663 713767707 423084061 814978215 939178288 971089551 978601748 233536348 400658489 104394524 382274792 41143265 11015884 311427026 584504686 39377573 844873713 493930722 252569846 942046189 854900139 389258240 88259345 960083132 267860188 232842493 107074895 481839770 445158210 806282623 859190370 242226209 243544754 10093254 843043651 2220794 788538989 836575227 774828706 259187609 380009912 206035492 160184320 531724831 725160342 469017142 365588461 416709117 810943577 448207211 461535345 189922704 97528862 218011640 111752196 300892176 650371973 422912503 981589392 666369900 992615202 777765054 939701304 787186671 739927964 601480558 655053419 641503954 281205451 279492037 578307352 471600343 1086180 291910076 50030399 894429951 825297453 329188568 382560971 882092809 986782286 190821605 805324318 667780009 867450552 14065417 330044413 999071470 890863549 117121594 332141309 731588466 942967091 814844770 118913948 380521973 462470051 943706499 983289357 165270839 438444049 341161427 54455575 825728426 608617936 17358857 341413997 175907651 162774577 334824114 819660027 211070984 414435141 578571935 382726274 686699818 795297147 13311592 975669019 419360437 913451822 278636305 296855817 217334760 285268381 693738499 80869908 459901679 752927965 526424988 827371406 205900110 790959852 291299962 65576806 793997091 913444679 758312828 383052090 378997081 905346556 100201672 128276970 789278971 893583206 463393168 26658792 415145071 986741291 533157449 602486993 966302735 564252852 69070217 923960491 177251194 953022742 383461911 983216331 1741744 53090281 749082197 133305376 333984357 579128186 197332955 465175406 497626154 491987100 981592049 14676064 440866273 729338570 158776114 597953760 757149409 863313827 24551153 840031817 613424607 669136820 536979063 999942641 748016149 653278712 375732576 518736583 797919126 36758006 744487722 352019268 117012755 337036783 512436112 524619297 892194674 901128606 218246337 339752409 946606932 116418253 686971392 520397109 304836840 734328636 564105374 700945900 852388770 701781252 123963391 871874661 252477365 495420489 826053089 604835268 294149979 53803815 829441984 43650384 955726170 847975528 20002022 32883782 779531969 324066813 786514627 148520677 530317790 952893544 162127780 201775541 305140674 766343817 309696917 624861735 483703903 147429667 593585784 151349160 971139570 614774180 150418233 321108089 531615468 752075696 956422499 274339233 468963 759200780 575771074 861268523 215760938 988885035 133180740 117625362 508661348 389738945 747339382 1789028 177677067 931200255 571985263 423515618 710078629 807633807 571775806 592613720 324288215 743285695 370217644 985376515 631061775 476274604 154475139 598828527 953750068 592900040 940273864 622423986 594557298 464784902 579180497 270462229 633259951 838048051 902095580 582641082 28513757 238778924 249873188 330117910 236075775 658507827 933305869 344176301 375175876 798288073 130000398 940683006 64573434 97184548 175308796 413251414 404231683 369783138 387837613 238346533 277370382 167167902 881516194 371952562 413862147 819044890 289296191 424256083 402754242 44177217 609167099 330935063 540640668 44626669 125612872 939987611 157948118 533327678 392648764 898530656 648942891 317653954 575615968 135694895 261144088 37370743 208735788 422632475 263133765 247396300 940776520 507775258 88939563 518974274 796338016 610884064 660256985 21227706 196015212 609802903 888498719 635589344 888905749 230766692 93916574 822341724 989800460 586315620 123074836 381356039 827819852 599883308 967158457 497035982 233724073 961948791 869373221 583142848 677506376 792218962 1349959 26839199 409865424 319991791 262362507 501481217 783723993 690466536 82625813 210989937 993529623 297643510 753798517 29828877 928684867 805142113 725197606 734818876 914171767 22589508 238606973 95340314 134967103 92019800 81662671 21656495 702936994 387064698 831406894 980707794 104689810 681809574 931842875 325737241 789173575 232168664 265996641 511445468 385477962 195370162 977891680 375837996 386517705 56559998 485238097 176480019 810566356 518942325 936597608 518890310 126805170 282015430 809018993 658563375 565215045 827966315 639832677 759170605 535451703 140530232 11595178 95973576 229859307 611802172 102256560 888338567 721525556 497221700 98607780 927851822 449247923 266910813 723909053 477038312 472089766 333476319 251412788 23923205 715645413 177513621 110478431 541458811 995100587 158023516 413664159 411400253 543481824 324004689 964300116 345254579 120309583 537559994 29140176 958319800 60134448 343043844 417104180 527735007 981352829 882312861 945711938 733364028 122191159 909687318 162444942 338521431 426801762 304681418 743730265 652378430 904515900 546884067 970849220 296513993 811178373 142011299 911781326 96120548 964108352 450963456 107552371 134392120 774700142 671562498 612110972 129753040 684947945 983075202 522221240 25100775 780246804 333599677 729447434 783456962 515078577 987854318 263458205 178684841 797312230 760368474 699350182 143413721 407431373 812490945 380514983 174504625 585562517 663661901 418964457 147207944 269521522 704213647 503723518 290672641 843472058 730180148 272791336 290578714 851683000 328796130 772549685 564989960 105915910 675578982 934860561 957747438 801639244 937463469 626760817 86419969 945133272 681733951 753391402 625610629 667560698 698002455 173154983 672134827 732577865 557424754 343167633 795112113 517325486 735362735 894418030 606276250 168516668 70578939 320706893 288332278 347714422 955354556 115322707 65303176 625899347 796889874 931730941 792981581 477283023 957481971 692145338 970388081 993684524 362666397 783359941 885324634 625044387 911940928 487120128 563264762 236727832 594839400 666304107 152489127 972550094 637241082 124743869 605230254 680779616 222590917 502826682 4919717 785583797 824894920 89991505 937570778 26854416 954522830 108300234 716563019 32062754 819437645 668877686 945255596 927022667 286269883 899820470 805001982 209972041 300970385 107474081 788753950 381336155 178466017 76679504 479422063 974017724 30311814 188258596 528445335 495163376 388331196 399990324 896466180 311740301 530528723 661390344 254073076 534516378 116116448 300227143 717017871 698628208 635460903 256586394 685238992 109370247 340582748 976129052 727437913 194267210 895323105 558900804 186705095 121653913 262485130 615971902 126772794 759880378 11561076 541476561 192395555 685606739 276417766 673253341 56821591 619219311 259638600 118185693 847936366 439144992 532023917 764049855 677457366 667634263 55644274 871835338 483698274 65911662 748103252 573873184 725591198 956903779 886783007 726442593 439331814 170079765 335449389 971512681 13801061 235127062 165782645 636486472 101275697 643262100 971897339 177729769 223095977 566265615 263088678 580129204 489774197 355253549 109310810 613271252 979323645 41525906 253287373 777778036 601658362 186870179 490847323 15433378 949078199 381565145 513073876 658224458 537581228 860567767 734205388 13016048 158347306 886998704 470807323 51513347 276801711 62292157 935414216 794825656 29397052 673043729 244906305 655390652 869451490 969831677 464265755 260330537 438628662 597689227 204202201 300775157 910495451 912174173 277396385 285163620 24665722 396554396 513780660 94380645 70506147 644619910 715099215 111255020 162034639 96611546 286678530 534311076 911316690 421765878 809634376 324910850 559459087 203702428 430231440 140733173 419247210 861899616 987357838 632476952 590329926 771005681 988241620 728588219 879629728 533428885 980284627 223913745 973106415 208424234 217864360 284885973 931194760 898200726 425910375 765360990 429916658 815127718 224825270 33837726 280132121 488411230 408119708 27872345 845584599 892951333 979881391 68581090 440519564 26234075 356136585 991455928 483937138 454295371 31612622 597511285 513508037 742702967 939467160 553868688 440892177 396934479 888682427 466871051 644982211 726688058 684240781 634317271 771497563 230063936 23991410 338826927 862780257 694593427 591763256 26209208 678905666 457003177 757504589 336428509 57130123 293684682 660910818 994789027 93211583 296670176 628445749 473355711 732193420 418040728 904582622 950641411 258126320 227426169 699452146 419891707 570614162 546447773 732771555 861166960 612633062 535440559 833336834 10742395 818986842 665627741 544847392 860390314 231047864 491349614 68404501 581097156 233659840 677669773 564145259 309621834 755580189 102549960 804580892 543560796 569546414 854790216 327275385 896775333 853725248 172054308 759778385 44651469 363974707 315040043 837041192 792433922 979462858 244128385 918524561 974642084 707321847 64651266 320389574 432674729 871981636 300899053 415130651 369871608 569965481 520067138 682787429 551439442 703125518 85144602 287040858 10054382 549974497 225494640 473363913 975020747 557238688 595257714 111424275 419200416 691739709 638334123 832532288 538732224 20677135 985386164 372308269 777101441 702427843 773118310 94583289 723879730 481557021 102102677 845156008 479501500 598703677 613913919 77703777 509261917 689085195 319348724 15188793 546701476 608422458 351170890 123636400 278866909 972093599 969294489 665298912 631744529 388514070 537365514 850421573 612663843 652099957 560674201 923483442 7745285 657395817 657944512 482529043 180377294 178117090 59467320 209907364 181223667 481837146 593613531 27592654 841381835 20441861 133075885 191703217 949812102 490045906 764603603 865483698 795272546 917311569 921555001 675430384 724001919 662844372 787479743 692588782 883739858 541347391 128628135 789310977 866779330 611985939 968645957 335374654 798517806 333860636 890521145 823778399 192700992 232396329 784440628 642879683 492254408 765346385 175065854 416986191 505909380 406012794 922028675 334762056 274717245 792203445 575737359 136723957 394239241 606294036 201275347 710242220 887366599 562567466 310173603 362456814 71721205 772874899 725080992 745375995 746814606 830646450 984139251 722582027 964856198 649408360 3500076 623880862 764519932 533307968 84718209 344064054 460372553 93765520 819737142 331283822 581809385 106978810 171825428 717525737 918767952 496330403 435097888 506956170 541320110 694796257 887315611 567787820 540633836 521568959 530472011 21949451 102309381 339048693 394036350 443746035 665031774 413750686 662343051 901999215 331550320 294742474 793687412 695035518 99750764 776735695 68845221 762645932 186729039 566664298 374313002 264394852 775672511 215031766 772515107 493684590 248729598 595469606 285926395 983133497 608840518 312492413 544001484 382621165 835225170 198699564 163003360 989865340 286499654 951366316 556852791 232087855 548703100 720024570 966388320 873103683 340289001 304885266 944383476 965178488 717625897 747478357 789305929 631489269 849667941 184997279 367081241 56748515 437871020 271828445 752092327 60555328 927204259 472346011 290306192 138759445 29583068 929997903 27188625 29152892 695992539 886803149 645595941 706978129 580757047 985570981 102593514 548690685 185048846 611474559 734561001 59149686 572763261 699941488 889951788 900974937 807136570 768600747 632538676 694145894 774865111 1300174 235808157 377185496 73419097 320804218 121439530 680619099 305776696 758887730 751867229 796535273 383579377 902873394 301212506 810801766 840912099 6373074 656349690 86806732 609035140 832051053 657061059 776941842 913658909 754224059 773357084 144587160 370885141 9002059 760988700 735633595 576093987 432578889 669232347 488728930 166601342 671444329 952750223 625254949 119811117 620671096 818394204 234824529 43156988 314940798 485746115 572269672 880965767 94798683 258989886 836727810 714089518 866079873 939086650 516604064 65040781 196110217 486166633 12116113 278004260 482245397 542652948 789180832 604230970 124710293 665043971 116601799 38694455 706149728 814619929 511086071 566414592 892109127 67354569 759697908 272733665 65640671 753037715 383669679 951806530 206383480 526893785 44487896 503029874 744436035 181701141 987925250 260957100 571345540 271944607 394110379 150255476 143890670 73145176 281111459 766567461 339358492 712247632 301344531 519105808 670443852 705995526 212795174 649504789 138733730 808834603 456758609 395438778 832912016 969258980 401554622 621682066 937489852 208497111 32698316 421755718 574568701 397222630 282114549 405165452 604555281 129090655 404308668 957528578 859027000 330023609 224067202 469997029 96343262 668594295 276997621 776635858 819443671 588467797 102863948 299882769 342415727 433131851 395236446 720135460 623764976 805937146 154763132 447946580 453261912 13602693 850675769 884815057 240029048 687562089 311902200 874333774 316983721 190142709 773233912 405218547 419161756 220885224 51810518 422611076 614586140 472066487 650529514 161594866 410742291 98015574 756260484 388983368 321543962 786169628 627650343 534560602 916542702 452752140 230690128 852307276 696390275 508941802 629180830 398377907 3336473 864727927 361928783 852144429 857919277 516961831 636221831 735697094 697579056 814573565 747653047 105692754 535449859 271659210 499666482 537105104 123830345 153282424 901526720 121021863 2554313 409018776 999880343 280071441 287508492 787532861 101368707 42614036 190782722 845166872 199002959 865690341 942321515 254472208 452559689 460628227 170316560 926615190 476548783 852573795 585573341 125396894 803501744 697254939 212688138 83581318 170599764 613111639 868492058 731405038 920625637 815210318 874247961 178177148 396624263 451719316 546107416 928863813 156050665 680817744 902776911 834597303 750995672 18439140 99552227 263908858 536093341 77884382 462537294 548975076 278707363 692826165 888651754 795945343 326176125 227058356 726545681 501812946 230892763 995464174 518842526 798975431 383877980 762667795 207053881 610042086 87029361 883517129 260215786 48108969 534194384 520540711 161858917 303975839 721057478 680694492 746472502 508687633 61823539 715924776 389270606 769754776 74806199 756990923 712711996 407714003 291429672 636849761 515639098 900840508 419611313 376751463 892608814 902884041 987848226 874671950 727924512 50851250 466070348 166681692 698210823 432713660 611667135 910884119 461338977 382998426 321098776 22929815 853583815 303335261 789006714 678369099 198947073 113240882 686706694 816239120 810761580 356914162 532677306 921126500 304573732 400373838 766174289 581912906 356051468 505565758 280036828 233033289 17656676 863928524 616199901 990516646 513807725 956504076 429820644 8460868 193948075 473997867 200177441 609243025 99039804 4096716 753797745 48487408 787863010 549976899 551314461 796509620 669928185 7749777 593500271 101150714 793520118 231357516 615755503 196111632 941479383 308671491 519680869 798767623 256050555 214984828 498463776 741709831 987431028 841990441 657070272 1622120 659808138 244481754 145880052 854594956 181973485 769409991 964770700 88930813 986156398 338854627 123786434 349471899 492373769 699757585 384007176 689952356 346252476 771489312 552088695 963095334 627292763 634748755 771966765 602511664 245448625 897776613 564906758 714913517 906233839 22495995 338195395 296408327 703992401 780972846 482624362 52410703 551940383 636497658 207706267 621242642 957420930 778117883 612696102 86422336 23874866 628034049 299434375 293336780 142128342 388886583 780348329 623226318 104754104 314882286 102769634 768906153 7872616 287804386 273398157 723842200 821628941 575951851 528780058 461530523 65236080 436703945 97625848 797268084 305495318 433168760 341108145 407284141 817553643 484693079 108910741 815546167 464548430 324034231 398569443 522213018 835240980 291900088 905424331 526915212 126703012 588192424 875900599 946154103 365726709 936776822 505715684 391049238 80727583 229630490 470540375 902706113 238776349 612134025 111237388 703558416 459627061 62074648 620139744 830083167 59330581 898206635 244897052 356089613 954185898 514566531 807063792 994784813 866679773 136127455 715102128 307423801 361902194 949103524 772566153 298415335 25961979 676336189 800859851 324679834 787236688 987859080 768959250 852463588 788250195 256262743 905499228 828401158 779893687 839416922 942786001 328123672 377885295 932798450 535861091 801386313 222919731 382321567 701431252 967545570 998699677 748478171 13197109 12776970 324795045 210286814 514244859 82466360 602736226 541963476 430155132 695341803 311419424 849119011 621040614 582522150 475045944 874961667 921551925 290655004 949198132 442745432 935501805 819874920 671084889 705938977 340944113 311782001 85842386 355296255 759167795 318813955 809485470 440661576 25779792 120254091 74344853 430832400 365151476 128069748 638917143 919681601 840854144 514384674 82226420 359848876 412149823 391697408 126597348 91833405 285004165 314205237 989136166 511581413 304093519 454898657 786227828 291387986 372579060 431626988 880787657 155763125 576710094 155840091 596046574 631612173 778714727 757091248 383526100 796190389 397032901 2417258 175230158 730256741 375638000 38654902 966758367 543787621 730488324 404668243 335241798 412210427 93241208 672494430 923992781 276656622 780269818 480822281 604717552 573608854 208985684 901367878 287177811 360452410 585531640 265397905 61383296 488366757 565162504 587653929 413819463 953785181 484056549 966297862 861444938 239160038 924892991 965048859 626421395 509014467 183342855 175885679 971832250 497885428 524453846 789006099 404150087 627363799 617348530 664296671 829875242 930987367 678508763 722427671 691109583 290475691 638196749 712852574 577308547 15300773 533935181 508355679 145645197 127747877 398941947 589938483 157787725 88400561 655283751 312066412 826551238 959895143 4723773 873933221 900352844 366208483 221616636 6799710 739391227 605696645 794915773 885713003 387294827 440378733 849458779 138096971 193846012 110336624 348114984 145679656 819259688 738673461 438521055 381941180 7971241 417158001 327441044 921219161 827149228 572796842 451895637 591647458 750952151 511310340 252349053 733641668 758147645 750249844 274476455 977429497 81441866 754284819 22620242 373606561 281158802 293255577 658137656 445798695 320409071 690565954 739331969 351898951 788901255 853086088 271843768 73738485 941693139 583275867 142820019 396259277 403985947 481864393 595030131 997635871 961693359 430685418 211254350 123673454 85066290 861001583 319360314 183190905 870197332 226756463 562032448 219367272 957204982 299900327 171314642 223429119 863357234 400493560 728249481 449020664 630584566 934274056 146955869 105085916 722238928 727107776 619145221 210281816 433331865 899472608 52124274 696821847 893831818 796080709 387533191 159920256 373819301 919124159 834489309 567315060 922689626 863533056 129422259 187815150 219213977 131773389 524095279 102573491 168936910 806850968 12487449 943566301 372598270 510182490 594484732 468640645 184458185 285591823 71833761 325979500 63582468 805323686 322039754 249257072 33352181 807205595 460915148 348092122 286970019 764378852 1270270 480170107 608271512 157146311 887564030 789634680 152943827 944222227 637150203 767540569 543508635 857177986 896075551 748399374 230730379 40825848 683753075 424669243 537677460 709188336 136432005 263337588 261131285 749679325 202466164 389979742 333645371 482718439 581802582 777444044 760298409 826553066 281408633 480173681 793198837 778899780 563672153 977560339 593761393 111246077 682885768 4199474 5053449 397502290 828485922 321319220 896857952 910125427 657894166 355338257 944631970 284140127 716576308 987419005 555697179 109896149 89712309 633527647 712989812 39372689 652145240 211347458 438047707 405441751 786513805 520490752 817826144 251921229 654115397 984869857 678924346 935191897 778160334 891780726 203603039 983071771 40884261 789268552 416499092 845342291 153009634 200013006 234538148 934862458 167861313 593549463 591295030 295283467 142444936 93851835 186780295 684475880 253908108 529145543 519211628 886903081 77371665 675397997 798123390 344246070 705315200 344708485 708264193 924225413 287773969 144241105 510906193 205393331 369164830 750152061 376068404 605866841 837019922 359172909 988985561 951395221 595913983 516381057 864777964 396522391 77913671 69628688 578528956 390198632 579268645 653159644 76131216 497154910 614070706 280864378 190832778 852771347 545197713 283873228 885677587 937435907 975608956 877071135 903815907 960230556 493643673 744542069 947795010 201972462 103957452 860650066 70048741 153194221 264572122 646649036 318660411 4617341 658361976 537278260 334374865 479872986 845160554 996662134 590492441 69565650 294886627 95612226 863623711 894410845 913577962 946841243 251459743 833210259 531698987 108740548 242125416 875759240 38771020 848762674 283759898 576982758 657656737 273078524 173385689 797441984 180157467 980535389 286541097 626203426 173391229 39850467 909998297 92533373 33388307 328613631 614995539 625492839 676028774 589510852 221487595 604560552 79695354 316676583 71572681 968843534 679754668 363346693 640218454 545858453 949320160 352394584 75055428 672097528 147080314 376694564 919988395 203798885 472546649 488625451 44918736 288796056 781713698 966781158 824511607 604360153 841924512 48709368 979850892 870919480 951685920 502807308 897168617 109011388 661594709 27874945 868917804 243709408 829952200 203651149 387698135 780556495 905550048 993808963 38203891 955214354 344523262 54168833 27958349 957805818 718854230 847200217 660656662 977024969 686286970 765338650 246440046 656066377 536174513 311868005 73765082 232543037 14617784 265279639 468181865 34300386 442939668 422686874 650451895 71346132 111164938 924861179 14456833 646585474 548211189 651136086 389405658 797335038 162471721 794886355 57812089 109826815 419564538 993715649 811698358 434982181 527657053 804588959 113314663 166154565 725135921 217725652 736291334 353091663 296775773 441645404 573503623 2902673 855271783 5857666 543995316 648404192 558557062 8755686 780774470 282108743 221842880 926876798 633473103 514348030 337534138 304826145 534611495 563422517 457159099 83424072 929232101 830434908 362019293 709798927 929437071 738395360 101676715 689244275 220869305 590743729 551533431 131879397 674511723 46464 206326594 659553536 781862986 827861047 572092898 778065818 150176994 470641022 391343907 124687947 913494220 359124466 377256414 430831673 518979162 419492188 827992280 407942698 576070678 758262378 603709528 684119700 714354314 691501348 235130939 297292735 876666878 176092180 973792966 597984307 598232360 74962626 614758008 72362187 54232244 796394891 359767727 168701948 901907823 284234238 15187792 366318972 982304147 843133319 536968575 781615892 796906161 542917032 132982607 39939902 622496669 895275484 210148563 457140196 353607544 176405740 342971894 810940116 840703840 468115703 336825585 151242610 5293377 232251400 323746155 484536172 367462685 380353483 542306468 517416045 657704522 331143200 547744877 835752707 908848517 61981734 584397785 942130689 977371695 609531219 872095022 63523951 245462141 667977912 711136885 595773598 171721130 109965240 888721742 839172417 341819002 223507376 739773455 586531519 547637434 969828456 186736904 983918751 429889028 289783691 562782469 814206932 566607371 726392302 842822415 82487182 607824996 623340591 907282633 660295707 715883364 696032484 383878054 603728633 482844966 465926772 925421692 16483004 426877907 50894416 863445303 630738041 897432608 111629951 576546929 257945365 857450640 110300827 690817120 928236967 378482415 388966295 705314424 771825155 834481824 714798018 363652804 835502605 152483888 629782958 166719023 401528903 697604965 625032157 209146 402870570 133640248 144394779 495512522 752934737 792857051 273178924 27112816 73295099 546878929 147873031 292417373 597280243 124550943 348870792 386729089 445124320 993937473 78596910 328945164 651087885 737973553 598206479 241208442 865277557 417010988 494090171 845778819 36806354 603970250 20519802 70713355 423600918 202643655 954327929 625412240 784784474 674947489 907647136 160354040 137629611 139608188 249574099 698376938 657395909 223187278 10538689 361926120 78602973 40929753 445214332 237215571 305720423 348245207 113993679 175412275 479782613 773837750 369051674 600572730 208753526 651514584 851184407 158759562 16474840 470567266 752788730 782950987 737669945 199476776 379566269 143181918 91538817 236403322 903742797 208404584 449078779 788742984 122072854 702708412 644757326 457956962 617500196 489401570 574128631 165887019 658539252 197733939 779670646 870141369 965866779 981684702 437396172 362226531 577935731 577624272 422848534 733972876 298963348 361914998 400261983 422678179 670000854 973070084 479609089 474206187 171361963 5702596 391544918 888802961 752618596 328075967 81250683 124183478 904749106 705532483 645923183 53287048 317120014 780573278 419552615 127357292 359270530 517309376 595227497 782510550 905278121 962582847 542375856 351171639 163216995 859710820 669650137 41358986 843973221 758032927 413334864 633649813 470641035 120871140 66676120 334970606 26227592 826774239 887610161 501466994 117238512 926332813 881045622 911150789 835748984 217759369 768319306 676397812 890423233 484427217 185707563 123198031 514279458 404214668 561133866 582894935 891836595 49761326 41373689 738392371 887609928 542145061 201307550 375025560 475303559 941948355 980194162 681646105 734312096 447346881 709135698 634200111 780613061 498246338 93818371 512688690 317780021 917025484 389454979 307451220 501316302 420184952 90686033 14969358 777536636 640447719 868013374 385502772 352301525 793193958 51128443 463612824 717961639 789606504 820294217 391504774 418699791 517739677 773141418 916236803 509527918 860381361 52304428 680351046 867915229 465448716 975583178 636296592 130159334 736965845 316185738 906576462 799628682 318912402 634839295 171177843 542586856 109558805 762171688 532849207 818817802 103995061 62422837 622984276 403373524 147013207 744947161 396487854 165310846 990127849 149183824 334314305 52231527 430403778 241871480 862420587 995730743 775514302 721692657 677579684 620842803 868735776 285027457 583967132 315458698 157406186 713449016 221360664 476088439 890234983 285593924 467969724 514440695 436110922 23963672 286818547 22847526 100025053 321311671 430109745 793536906 13752451 995836610 521301226 922203159 909275698 291569484 5087330 402969094 973032085 616155944 121394268 787912833 971336140 560036710 635153783 576787414 297438422 257172146 684465706 459827930 722744080 117650543 208930787 267267670 696273165 138829359 322768707 148489657 323747510 686399789 703884212 960293812 27140012 748592172 179305798 149109037 772153366 201932879 686272352 920810479 32274380 866658032 175936187 788665603 685083300 287737854 756208184 244501497 474620486 221612844 504077161 708198077 315021475 93700818 591267193 931401138 987495403 49623277 366491113 899845568 711016855 704724243 303549534 135506667 667516279 498460457 606709271 377190579 382959188 952645749 848278879 387772544 49616002 23374895 201950202 349365508 412733219 269190313 63171001 387615637 633229863 27824530 399534378 359933564 144769133 957719696 776791633 372720832 862225036 288074894 740855603 62654069 430322313 432886458 196228620 473092005 806561942 415087932 784229062 727318974 920172796 613933624 734512465 340212841 577369935 605665550 18918223 965908200 563719215 596220434 160634982 920870012 297384570 904232550 876991066 259614264 222607190 464667886 871126405 181345859 990749100 796523500 997214966 997463098 510721165 807334492 617890875 793581062 792963655 378502812 327548923 118837181 80438087 880960257 678439470 8460015 108214875 958535411 30053314 435211151 282505621 957160572 564269042 595500491 858740077 768663199 568948968 360033575 685989559 837907559 187226959 53980092 871554503 283473838 629904091 743024310 185545490 490837658 537199792 988283230 488330415 681439213 520972436 611726965 903246472 102193889 769782857 352830332 489741010 578342279 30360439 683339423 249011348 589245604 645878704 915759578 139088466 350679110 881327430 102200074 534458707 349368593 867889748 756687522 23856537 381677809 966271253 141425081 866947599 904572425 869537354 972734284 340146215 732791321 877203964 167288064 200079920 313666350 908714645 948618915 112734888 314867791 176514766 20091669 815140308 413371104 624906302 362774971 444329297 620041309 873852976 570189076 248778042 358095720 662839976 62759277 229457354 635088120 283714065 678659471 542758003 236758072 552146142 523226651 596197053 662450140 269572092 410192336 594062013 604314567 996403546 180885695 62414095 515826923 890142956 590839022 282740659 536582355 997389738 177470304 406119295 305967817 917583939 373423820 281939197 134776809 295085418 366587450 714586290 744713659 565341153 462347109 878381673 383254006 435828313 675158778 536974067 868366391 40563222 949912479 94569462 751066692 131332733 805250168 422096440 186696435 181066665 499779295 311681927 879195941 38751212 950064417 495469491 739354287 298223 956244764 144725690 29608319 598360475 453775346 386323172 176975237 755951718 89196245 751190495 952116469 563310349 873585323 416698203 935773767 587154916 699796652 528288728 461623274 678303553 347654192 278735139 834398216 922956985 567183731 373254649 896612467 406747677 693299443 912402073 832567379 389296983 582816138 432939207 967659009 45522828 478155603 356482605 20543671 64788126 686697667 109384588 649476494 412403723 869527109 733957121 512021464 900032593 51014200 91621677 335940716 687920805 207072303 839023740 482111983 284088276 761713974 585477217 787957887 698565166 767801711 769072049 141317262 661085270 929139155 427931939 570905950 191056076 877532147 700874540 329323490 44196244 143576028 517221543 476209486 155931087 376112425 738708557 943562225 987860273 400203438 4109946 707539415 547061649 992626897 152470346 310423351 387572389 134756340 157417813 735448878 743808964 169648602 752037930 533648391 481908244 578527818 556152937 469405921 469933865 214714924 555761277 676906956 327502545 515140588 884435114 787512731 151875967 569854933 419016015 651572100 447623964 176707522 410554782 497353378 700840548 976205126 251120519 273831874 464138836 298584565 373693126 452299357 697646363 933128207 253539599 726539915 41033386 953638723 975928136 605908015 650353020 891282897 136258602 117279242 976154612 993962840 554691267 996709487 576405581 673479912 451749750 694392100 351953941 461037737 318500337 845212084 958807054 659021572 423467338 326448442 963966172 841216774 273715769 977163019 635939752 611033444 711298239 731643488 846546897 727094705 848540711 103255890 269919166 363928382 606308671 549205786 594944239 889377805 784569253 270362590 977583625 213193695 656353016 537480217 649995200 986840641 945118941 762649399 675848674 806916836 996788589 271379163 6413829 409467364 391545343 699614271 758545732 416461564 265450581 494383665 366840559 261073378 88931632 440380172 294978737 707712051 339115858 374087513 305118127 698723541 200081930 741240501 202476827 141336676 683617597 994918105 22348883 17847522 991989706 172260893 109527323 876787267 242052522 373942353 30439826 784065372 398370352 803610881 749610978 849761095 644755650 82927027 174850791 356524024 184113867 186345574 387099068 296471801 834634501 473511756 248726007 729241257 276685002 338892022 562808876 756332235 888725545 9854035 186551336 840382003 18534669 13232853 742592562 234744819 177016273 811380757 533396378 184294688 531620598 962979652 210837352 772065562 711306329 574195816 104267081 787003597 920753924 870487769 726995900 883314040 493988518 993644397 712962824 498937354 701064633 190877089 127974579 795003120 530035595 362672934 259070160 724656825 312762683 518647592 695761181 235961103 712328254 863962934 535527664 7589187 502628966 68458827 574504026 37277940 455143801 574447980 670497916 967837592 94021130 161434260 359435058 576723603 695092887 934305744 17847395 464847599 358743911 789375958 161266265 433192955 616408170 398462899 91056532 141297166 656522917 444857865 820022589 535191843 423235390 736618404 330869649 594565882 662998260 738198922 405229043 27598290 886765176 426108309 862995801 976941898 472378595 851807375 735922349 282018278 360533195 869983628 85460414 185438328 501445262 329069446 459986069 772918262 332086744 444478715 261070399 916538921 851867748 682432890 689401817 123081506 844760931 29742060 406924391 188347814 138699934 980719684 531669514 669884319 574970488 790434957 997855446 112047136 115412131 81543930 414231804 870783940 275876186 104836299 294796043 57151431 880127236 82168803 580339629 519915291 341391110 116247963 887433092 310246852 798034405 761903812 252189366 145938732 229354942 609896728 960998888 522709174 380432532 971461583 153924326 839286019 301268040 584472459 573961460 886058694 645198819 823800728 621442986 759785262 37872504 631860661 426408958 617573505 430686272 185274497 35993355 764497878 312175284 363388262 751918523 107634595 637928950 213860182 441176342 858297245 819144456 496508037 317534403 723894299 322325365 563242985 266407252 451314025 145753414 334634149 354924333 19409358 164992133 344655240 205714142 545828507 900453756 942975294 673375506 273024314 506341281 666177651 98851855 427936046 764868367 911270820 551985228 957831979 634401916 25871284 213285291 132701041 988116573 878584712 786268559 951836396 955952870 55027949 874881462 251523938 218161761 233441055 314157030 812729711 697632515 334304590 445976307 361749056 421105558 106762343 801208781 474139524 731290112 41311637 47869108 512125189 707518642 348187672 939282596 390410609 571656711 522658379 727072000 388419805 127738760 115075605 585158778 376376213 936693814 661145456 466645078 236460039 732581648 483310097 550766733 484311198 44722014 176070289 685596619 572002372 118664223 629564165 803040494 606990390 534826053 956557982 422500612 989725834 477914489 343230951 823427113 489878167 811263928 867622042 280154377 221458585 923268734 955304694 136516432 301781595 104746057 311960560 808130852 231541054 362676724 151297696 281464506 388537206 551997064 610943462 793725474 271216505 589906814 188887413 398183286 751264512 13621982 611804037 29418342 863914910 864042108 504986723 308983590 965614748 661094359 8278125 841869055 442059228 870320308 530152106 745172163 985946088 848903053 732670031 720478839 750184880 298987777 957837969 697790518 266400831 544727593 624557036 809486561 266479543 594364475 958708209 382239264 397474913 32083931 662744510 890546717 115610092 516294482 752157055 337272848 284788606 830794148 640323370 486078240 181587991 255394617 298432109 295053094 144602032 140897611 859610678 352063078 861084224 904598336 911804491 672437856 343983697 55203813 176385725 629976973 35814778 234715459 824206003 470747722 370596232 183409414 817799212 634077755 470845800 950096050 248456459 649762825 366442837 635289876 184753010 688683130 148224586 640396880 111181935 717831024 941124688 733382901 324251907 949669991 482972631 971975960 537258992 3131036 236996159 698350542 976055374 84499851 419313235 801643539 878502654 958705657 780737486 201098522 865089574 658650826 110021385 262562933 360573618 515171451 768591723 619739016 389716120 897737890 494554522 920494228 236962021 121585140 540101519 255375022 760007429 229682448 239167009 920966417 590334084 117903179 556787499 683409235 628238624 972587396 651637565 958630639 37312808 878880922 440217703 361830306 835902615 102507992 579971216 301705910 355411618 387912213 739065866 127106831 13374178 73560248 581094662 853584960 74917355 933412088 997051715 306292590 819743322 452565271 451563562 349162855 400823938 969498592 733789030 65548719 480273548 941714969 192283441 451326596 391439729 224760857 215779169 59881598 222250700 375130439 265765432 341283999 961893858 41928805 151654726 145252287 867495880 796081659 255124717 52833094 929730781 901845249 609691779 242727359 124578493 61767359 716157566 433076318 697491139 78328747 543986612 849995392 219373982 573250113 554304977 717894144 925702945 379604884 302043848 308460955 635633174 870865479 475502436 995990911 614578361 525556264 85532744 876230668 969337287 664562391 326435780 574298060 540164964 965906455 367131572 337011006 724931799 238844708 838777817 930631799 529103851 3592874 328423799 831286569 607750227 731974963 498834033 68060985 947088048 899251798 889473227 134399285 310628395 335168687 726034692 694385028 351912909 619080184 797233893 487976002 409065295 902495215 663836555 373849846 187518330 386630785 438426236 166498463 83297625 403845537 711256660 251212643 624911867 275202186 239026674 868617773 245247574 997486795 748564077 885786338 89308823 900937698 680554355 892808068 547863264 899476131 364836577 708722129 564000995 132510817 814115618 863787955 30644475 206008140 508314763 607849658 11892362 427396373 976012406 314712295 83137844 554628386 607273315 495622478 895982458 368158181 196772568 452594382 603273515 506791830 840648777 75189795 251142284 448965304 369704707 937738278 460152934 757165900 211805137 290701409 50449730 399372632 50638816 238033326 842521845 881267317 473017169 731720437 529694082 43467443 627225299 827508539 306327599 946928083 99250470 547664489 419867362 610931565 242447458 663347850 9932356 531566813 548789251 410926021 931370601 762350303 323054426 921445345 134168012 386292886 828722464 619696106 112077269 351687560 410539771 620540030 629366680 759365662 12811330 441453775 257775885 223769065 724664252 937316902 90761151 877685053 331974942 824351599 178653383 506288955 5666187 906148660 219792914 674407070 151094106 233444691 778410433 915029143 363337226 683313884 854128885 617348848 292678299 423613837 895800211 560852640 233250369 636403669 598239913 707000160 977741911 869377397 319802962 729595107 479783591 217081014 162809693 233522086 914886092 997637878 193413637 912415050 146980440 532381100 917819959 524844459 550411446 145371422 549825616 581539103 520354906 465808486 423853517 231978528 773034430 861931318 12141731 637812929 337136403 504579326 339780944 236190585 780025668 29369345 580227443 280296398 607220292 536127960 10344226 521817997 501781639 918673781 568763041 858458641 201489768 593702026 183272810 757159352 606875629 62348397 522777195 577933047 577540185 912552689 799931766 451241148 703123287 770071140 757764986 832708695 547014464 596326380 957759 433011489 53120655 496155322 586264571 84359862 413379571 497795828 446971528 970935184 482049591 124805154 675060521 4188080 720026029 51576888 574976535 920493504 365264822 291179171 55293481 856142211 612358590 521438520 749799086 297822136 586998045 751514709 130013576 786949968 77858389 854251896 294347081 772386797 312358572 244619625 266952585 736979988 320212346 606070666 364217639 998583567 768014476 905930950 721937499 106529152 559423183 765622578 908153081 829653890 730305952 810886461 4933394 718480157 677994365 444794974 933579204 75619686 578404396 88982496 738403642 930033238 299695781 624954160 890433559 328354382 562492612 150930104 275242761 620327588 503646443 203600097 257299968 228136458 323791330 230697666 431265854 542185806 222857410 718802381 810730567 92288720 340181530 237000874 25123717 305126366 983343050 684431171 888300672 62021118 58027237 650254565 754355054 144445292 278397564 98384455 529005774 616821515 366683247 318058013 321243011 27156935 655204197 222009057 660130609 631081690 343381491 514995032 966349595 109521883 145995097 642458424 710769958 500191834 732106866 893924429 938952175 231469129 673984054 543590011 828942829 856401994 901670445 227791813 415034693 61812718 459001512 718122218 413738564 901314353 7166229 929099222 350764563 450984941 174237148 210079624 691266622 225218815 436965674 852478962 42108692 71776560 159200768 337252640 605530706 260897363 550263866 473132580 69892060 69499175 316711757 419209947 333883020 33169449 409922283 304418675 87837595 608939916 375696667 323222023 75623699 397548043 217272311 46268915 532238638 624471920 425405669 794556740 820415366 725648034 903461276 802675623 450804042 148504471 716693360 213498199 783868794 436210619 192658741 39191517 82395243 789250678 728651947 753323790 813637659 290556489 979338959 590687315 526716341 864407352 874058287 428200329 99561720 681117082 801889921 863564272 735141449 691844077 867627661 453295660 129846068 193468743 43193489 166943956 328282330 842731652 470912789 780205508 575069665 539890144 224797279 427770948 2477131 45366973 762749639 57574565 884943401 772169029 615823658 810156433 328086343 176953318 627763206 277787504 400796938 186502612 821934213 522877800 541349663 566779126 407133715 470730238 605698339 859108870 811676068 395102975 848538122 340132710 654860609 359719388 263648100 74656521 889706587 759511734 228506323 372461057 398890252 593650095 973502588 707535472 854886155 721392778 466806710 560375310 660826021 700110902 287599615 403058708 216944929 855668045 629016980 27279418 502585782 685143577 928791126 41085953 254593478 117585291 488361415 441538259 75428379 499756868 338625355 377894504 459300136 138987376 276676300 388434117 32648216 715595291 536418439 947967144 651616531 988659407 298422446 191640079 253898644 523251163 608049781 873217967 498766657 568673120 924404687 237846691 176688409 455559823 551985162 331412668 260532070 192781520 3202372 485607150 432380752 758894509 541625977 991987708 84224545 665026615 576640098 357952045 335918240 531442219 943619715 399594837 45531167 369488319 951723286 228811201 295039581 125720185 749650413 943139184 667570546 987228418 528343110 43147450 391958980 923180586 338136688 519367436 68327365 759382487 37775326 779529976 714576444 195817808 230273724 736299756 189044593 124115284 122295647 609649779 960721228 603246579 57947033 676981210 387081397 188242322 245638692 102207546 906310586 994648670 582284506 97279333 618382675 515942350 523622793 982815951 952907994 205328727 285627539 355742704 775403987 648183832 160586671 964632537 915112192 371312110 949756820 199516283 107736585 722670327 119060954 674028680 143091350 347485259 322156929 589075509 131608413 75054169 497803221 748748341 272064362 726150868 219570213 732960098 343207807 294938555 665744492 513487238 347911222 215894001 144659129 470784556 367367558 180035211 702666171 349294062 60456595 17264220 403186245 897459985 803444238 154013277 635824928 509783615 857685052 70507368 732129154 546254389 276023042 79590952 283575487 182051912 518687704 238264489 952887258 914231841 363309773 668072952 474865559 381927046 579206554 724342203 450556763 911463448 479599722 128906947 832838652 611064745 882895030 522643777 565053287 618076571 140988127 688662851 40006355 720707840 538961397 330056329 40752575 81945903 519199540 812917273 897073527 18562251 738932331 870670077 943535205 811220752 558604986 254853473 760692711 748668797 399151162 67858796 96172190 361263005 17776449 294922289 532848001 88847917 478501410 254323073 163716438 555134761 633932594 670411266 368203284 34012932 288129765 277496120 110123555 710573762 402251628 381928261 768140938 437550985 534502537 221871490 309997429 864916017 278042870 112086755 221712811 969375641 369182017 234386646 448558793 828166880 126555094 964767325 719920360 445267217 968666150 280046723 444015517 801556697 624427640 601692971 648909536 797678473 890457848 578484868 318337538 93026095 8261679 22610545 401020731 110276899 798378248 408865874 536991238 115799658 282380033 99989018 12877726 200557435 25741828 141542951 159115307 116362036 698205033 712479524 867991970 261390330 903812521 791808354 312004891 833352991 401457831 733727637 118588224 103614153 476308727 805475012 205899375 802022830 397047491 309669135 215979252 113134394 154041973 450388927 983988700 613085493 800991833 845394869 258632487 268970004 376884136 345987780 143245356 228109696 830822707 686670718 544501573 760685479 551052521 414709516 547990416 959483732 928278832 598539685 963460862 173209913 652474338 691199829 242217380 963233433 200032906 593634976 576182922 965304212 289709377 481573064 619444421 948992703 309952579 148024964 1701532 709454311 996190419 845407708 950517373 336349738 46915764 583193073 331841042 802715810 64964515 797416657 213621916 282318522 157178248 595740941 141181462 277591843 104717448 488942352 246731445 47196697 251374439 706589070 401981710 882748724 545287340 118966577 747910996 164802291 518592820 20987734 880056257 868996942 705644320 112316004 906213807 215698489 833515214 422619276 636301341 1637455 693064044 708596082 42469962 888730214 128074618 361638796 216517913 844143762 45962140 586146802 91262181 317201354 872367159 262494887 406715866 286785026 627296002 661924851 128548262 744336243 522845430 904480536 219159276 851768819 418581222 539862532 906532936 161581384 969619931 723609659 578778167 653014403 177776994 779694512 586905069 749920832 772961793 391979988 686574456 721069770 478204845 401569942 250768252 172587601 379518100 261628739 897522718 657985066 963428460 458544765 962048622 319409931 960311930 813566234 220785504 522097548 281652249 380161313 672814577 237806026 935966880 58723759 962271539 288573682 95944357 616714048 675484733 102991578 816673114 325766952 501063314 246316186 486605987 885576345 947376360 878642804 425288216 354323788 505213542 365624677 953973366 335724081 464010329 690294995 105177468 425671635 241696971 687130890 929858177 768095396 898366500 233186994 170353745 781123343 596187549 163850647 842274359 519234119 62299494 5848282 262412603 12602293 29880438 837499223 331723450 11103147 125696382 126437056 501007009 781069061 505658918 113628357 423098416 815767277 852850584 883701364 538428727 937520555 735314569 528465753 373079211 118322184 635718192 803955652 57991128 816864485 507394304 409588458 435218774 742026067 28683364 366132111 98818462 316978848 75593617 464694653 408269107 155468714 239582276 417221034 952881957 318981640 731712202 208938015 22827427 527194872 602356508 576044663 353801217 299293060 841954592 623649654 299073126 543728380 372396812 635143487 621268484 968861375 892211833 816603031 330617063 436511744 565421795 931442766 764756596 936363334 463449495 592310297 759615102 446736017 130323010 852333991 630143371 456099242 483677255 170636501 13207314 447040809 614540862 882889170 616632992 298181903 998220197 61626699 301980587 843842831 668271762 140913150 895452715 248526635 268276042 512663068 638219903 317090240 533473838 777995515 714228247 435918686 320645046 253267528 341814798 788588760 737123143 525857327 284454135 668092191 902712221 12948907 936182052 337996958 738241168 639589045 684001555 497889184 157340942 300321243 845801974 434423992 108134266 796464983 328361420 465565755 689085592 70463090 909105799 966119055 61715154 974883941 665620781 465076671 290660438 256432503 421242566 928505375 424363265 862189412 162857282 18179589 612679018 896190851 536045898 477688021 239472955 44329021 354286104 381935481 308765094 690414391 66394975 977588558 453548547 569084133 389436411 749597963 816557779 157958613 86610348 563723467 599703169 3826803 536193246 616536534 865012610 927482744 67565780 833923150 89478507 685645688 865273287 846050080 727462919 208733903 205241428 359841082 896378912 610325695 838441838 115239778 663488064 65432652 52016555 397631283 962042642 962946269 617686791 639584167 372187895 171245573 420418833 198421771 834885621 324519535 434478321 268606177 652536725 517149065 759754725 850590457 775530417 642926889 708443545 921764234 266575467 723923020 281339563 987810654 215002894 533410062 42147352 557884204 677164264 633288366 251499812 239121192 533823907 72634145 609059810 887010966 743876983 981343695 56002632 724310800 993358302 31985177 853202712 525999806 658940625 915182459 285909676 149421711 806408559 766909573 303330421 10719562 775620693 480715239 245801599 671037342 286622905 666321415 574823318 895438015 978483242 650170706 128072588 867059949 813076994 642699408 297549814 977468410 233381600 847347086 957438975 303594984 431434102 420111510 260029681 387048600 713860036 77873476 756747699 763727831 135272214 175253536 346254485 747191004 264839070 269386044 249051845 92475764 337602106 672546752 233423072 807759101 687717657 318159131 525854398 932587751 172175753 548623623 923170148 957379184 771459649 976376206 700584402 966768508 954455972 775505818 930585189 108212025 780291578 621262349 766611223 23076074 517209141 93087146 468295023 889285839 517247482 601009555 68599026 425150573 143833833 951171117 819025616 122393343 205508983 744792816 171974842 326186345 135454171 476098338 941520093 784184268 403657693 123089251 325061983 297820831 52994739 632460918 275033257 926282352 363337142 787507573 438491250 316344752 808619652 185037602 630076671 421487402 856487637 825340426 308428448 89293065 107346837 994581378 281865411 814954399 988868967 326422985 686457408 396792971 683832001 584302269 810926340 481801824 509592850 960844372 998421713 307596127 532274825 349306491 896206862 124690853 249209410 80984997 356882971 770498213 496983464 28093385 532082607 767433499 257242169 129909754 153097370 499846773 207541498 467712531 836932952 55614883 524575680 641153264 318403981 50524835 776812885 322722548 689864551 328110084 86616724 906123386 464896886 723983924 653979408 217467421 12906497 826563916 877384949 327205800 616119706 886302757 694117854 218198620 867741968 31981513 491853657 152190934 249720015 801523548 859906800 674205619 82549435 767113739 650643908 325360498 689473741 833977660 407458280 243533359 811326116 717333876 788191124 207737720 164842415 154601326 811353251 20073898 229309822 49239186 604046340 858857338 936465032 399795187 799488054 425238221 701838563 728270831 647874237 696247701 708390369 615559090 224862658 820759542 220740207 946075688 407101151 282200501 598935891 941129092 936169585 551586778 182629021 297961034 783824113 133713087 677697395 421418220 39628562 980841293 70002184 858626689 937084062 214642547 320843068 598706841 893103266 131921441 718899985 514751827 219787618 859737495 650558690 450414068 430841038 75556512 54695559 249650234 587766541 70500383 867744730 616100412 580391145 621743712 418515227 329042796 938203568 976093252 32193356 785419603 77383669 173156062 358820295 860646661 768423226 654745525 658013194 370707531 781486021 578740094 446181973 869467681 278254312 364125321 726906269 562663295 168538735 165927592 754613376 505205500 586358316 979009382 360673373 418476034 428704849 603242374 390712033 321252161 19403850 951259586 649866611 954904061 835856443 931859709 600437843 731917672 93492521 982075446 84252283 254296392 987005801 410562695 109302533 60852771 323632350 318149559 982519149 389031158 953003185 240332244 289369020 124106021 774737260 213874721 714128546 150320166 172957077 526375643 918413535 593627083 989030249 394476927 426258587 845627003 669453720 263264353 344117698 562980178 513390392 89598513 891857366 258927808 873124816 391709130 371497507 445108197 653814894 327926901 620568249 565343328 737765410 317462689 654131388 511849229 238362016 723527617 627003207 417753310 980343477 283694763 265222089 639601073 348153949 823786749 380075300 542482937 996776861 867487371 936346329 281471312 366928909 755963978 667247058 90365343 300510379 709682937 123934889 653169488 223007055 805068261 987574198 259809407 348975422 952126472 79260574 195039482 317422171 548613467 156125621 303946012 256420879 670130726 270731085 949128374 662943543 524126360 325635811 604887446 970233064 779028534 312362621 99267549 520980061 340509518 795715417 669929943 38100784 538674103 711999897 820512336 61991466 286706948 587997465 984618948 180309553 238141015 871870917 23155188 91090506 893876771 797756200 92667924 863744954 322165428 823088435 962547006 747762908 59111244 243871372 722149778 859258831 745538356 398936309 592241637 131898644 638828958 915721293 119314241 280697149 741903112 943352605 875976930 845169098 374917321 20320217 756876145 567157412 767073710 161296269 689754010 931484809 515370469 391903302 78622566 300114398 832079462 525926236 863358916 956923591 982886387 575571086 974804276 687199361 60475245 735098391 494485437 627443244 851469390 590106877 265717908 235338572 479255705 920753346 898893660 272420378 380487748 991596313 935333479 46372661 580957762 442037512 891763498 896143614 726296312 223836965 377760816 38260857 785287892 392344817 189151658 66181226 399408908 490227329 671125956 107798170 616600103 317502148 202512570 365202822 55497426 918394270 118301507 491037636 180851017 238477398 125728075 233136523 644291152 979381356 731096552 593908543 558694001 951576996 404019268 419127082 958851303 930355720 387847173 242357515 280273637 33048679 595222681 256431568 378023018 817583329 765319976 505293104 788971579 397751099 187484378 364307334 576929761 782192800 940478131 460565402 285542572 687991577 859862524 89227201 403988580 584818795 204813018 19534753 333695295 50218513 11329008 738813555 979583341 659716585 580564448 831549720 832944211 730536898 110503210 501984468 766273153 125221683 294951316 681813264 473247153 538950993 588749331 885838969 695317063 855531857 35729175 916780430 89858498 185982540 335450996 526195138 810818316 382210580 424956466 700013271 572250335 934334320 74883909 617562521 147587988 344285686 570435258 992708879 294230886 382559041 426519005 183931151 556576599 344371139 534033670 887693943 47938040 434605502 752597490 780337291 812949756 457492022 956591107 2731055 739019793 803898439 914829867 108380687 524844044 452832792 719757935 515072282 19467002 746343572 219374342 903355572 288200387 104424645 320187662 942587218 725192703 4017070 567165229 482514317 595773718 833816772 90336663 454920966 472099346 77735344 792627105 943918844 736234834 816698108 401768506 341472009 166029000 931104467 930785840 416481698 386979169 176220540 945363054 521174028 85197045 327549804 259758329 139712535 385672675 220739477 367593426 723128461 227986739 51380203 741485282 157302004 325809470 658948064 958321469 796933318 259967819 579984156 607336149 791519656 351766882 219059903 855144793 847698315 412221304 753068613 333499521 880672929 157710537 595452016 782619926 901049378 384234320 421569082 447976625 234295802 966596597 65085702 504244732 294102842 948472336 669482669 302894791 852751924 439143556 556946888 77124708 771836132 575743689 529186606 378156010 431183110 15384509 961834882 870072975 225226420 95217313 863276960 74298425 585151485 658528433 542088870 796527620 75653015 204748643 10972224 956073268 521067905 380759454 739200256 845665978 484541791 780027298 897142663 796171306 370284714 236303933 368423035 790350670 331450656 407962020 38783473 278139001 689974275 753550677 745612192 142260299 23516886 303481486 569670779 336490474 929666609 11304800 534513852 424452612 576101615 718088013 607886286 129221906 486229440 796095574 769211883 622645390 558284927 63068587 724242280 498604320 268831073 931822890 788489136 609912891 917712929 510360620 961761005 155046420 223297516 796062035 813321537 605480729 761959763 732196542 979567287 640934849 433405438 583449004 850400293 561928264 85051020 484340997 703374161 8949797 495419062 687796674 457416989 808127076 186827214 26286934 260671968 753470857 467778227 516006524 767147759 473525843 738417570 699714381 440183256 815335845 101557413 998397705 327475974 827956507 73138449 25624515 905482904 744633999 707337824 362917870 284874958 263885572 211439053 405164928 298942622 520557374 419358192 66090721 496794849 163986434 575840710 432839145 380084442 856599774 623594873 794918605 177367202 979129435 162372774 685235537 295226280 347434752 424549379 817177496 702132845 601986077 344578775 282892713 527578364 245387048 55957697 570629393 648766077 456134383 339469042 467159790 534090922 18511928 945959649 794630170 788242078 116772582 998545043 16538503 731922369 320916130 586951428 412729241 568405462 479095263 480041505 831683751 716954279 586485425 332635294 239722315 524162412 694858094 358045474 866271807 431024357 226974180 476149789 779036441 351895452 155627059 576783779 509436039 69940097 167616858 288752379 83487083 701287210 429875883 779332667 302341550 150729811 265505749 653464771 185394831 129930359 617129362 137279145 999947233 273954247 751656556 550694484 363463167 76997806 611911961 307338430 305718605 867013731 69163867 846319485 688614062 340613450 331126522 997799211 529085973 426190775 247572175 249841854 968468336 21520325 557661393 784335213 799322453 408120442 947985346 484427948 490018794 538090013 653330892 812193179 442272155 442894823 310932546 367777638 10951153 352940420 43713653 449575023 184727168 998211579 686586085 545083293 139667465 146261975 469948338 770606438 251415967 922708962 243577413 377360066 800146386 37696002 763755049 438588752 184227779 113375629 826561621 969657010 845621812 379848471 918346880 341914409 481856559 522961838 637068087 492119784 674900103 172139699 197874737 334531314 821546173 839632375 895570655 515468148 69431081 749582341 601949497 358514627 998638239 707585574 494243701 937888165 801376297 760430685 92425632 372469522 199082640 811206422 924258691 18220583 593274541 305190815 151824711 590384226 513228000 321268331 342580198 276259779 225105254 758566094 88207884 587012659 689575593 425201347 890855765 593167508 14893496 40072701 875054026 584739564 78715592 303086697 786418305 74059189 400377436 95871648 162295542 118293436 763369591 866079392 415270167 243719139 470924713 50033547 116917535 986403931 396350250 286919041 255152749 232422349 544309034 929478201 91981320 698220773 988009017 333183499 570510842 169786566 901339209 311720959 921932916 512737843 240385935 34659967 496743236 212017317 86865322 675248103 704207005 778572780 15829695 688055662 799815073 666133528 149003311 703403507 865037575 316111506 969998087 318882197 395152651 75012432 407069349 579800155 800069752 272872917 93414970 437660142 2363245 909133941 741167627 703899460 863906252 606117579 3866517 973870691 890130927 699912880 974195333 252551891 478085855 929660620 673962958 702315704 596481462 393372976 701297262 993512473 354628002 762266245 95786599 111371258 545882565 47320737 568711453 9425302 75544426 600315539 486530840 617808523 748086809 50332671 617801395 167463491 897421492 515242829 504301933 299802108 81363495 846053190 61440939 759894384 738989143 691653947 706144675 355661363 661834357 940248086 535350012 589858529 827592871 997678794 624734051 451276567 466797658 35967557 741531628 207745434 609189712 138850124 432699211 626076327 426677950 44718643 617578006 24739334 851451365 670363328 554662777 209583134 392795750 230618990 57917011 319682301 910410870 985810762 26725827 708668740 639635938 34720918 935547363 411646478 367035510 50115962 5413289 767040394 875619112 232832540 540281859 835995768 43268947 641078546 539577090 62485645 476173710 789412571 809516850 648098555 464534646 522919777 318669512 892043295 24499113 467200631 642244867 996162104 473002009 135944584 495789605 215755308 615888824 313358756 613944921 60719865 481671903 38258019 961757254 180745628 113621213 753718797 299361357 310393734 391729501 339862237 835894517 827808393 890954915 969794261 357617900 230220318 45374066 887069389 237049873 434891726 778179999 249981039 339408595 942902640 786739451 193119389 467500344 720673929 244533334 307410873 460842671 745338654 439063898 358431141 892000650 720454274 904324154 38970655 315205955 59139258 349702664 262065304 865615 796373693 837932595 707258340 906347712 198534573 542456419 897364847 544057058 172400036 188298587 150596801 365454266 32347925 100791317 660197739 148852670 127623393 627088077 627972029 710503691 610241666 799491843 393781315 357358425 307237980 557264636 135485431 453272749 933135054 653286777 31767003 585642469 140726476 215610764 975608305 215446917 997391298 12251458 371472031 777143448 484234353 492014988 100194003 275207537 883503265 555763674 275384796 750273174 906918219 191655848 942219949 134239899 992709954 944724169 657495023 723283992 50728119 407927824 975800007 573467333 40899391 635170992 522518501 446503662 343736153 62991125 995522551 4217838 508025930 276404849 341852390 724212879 692637003 152405935 774917958 599090476 702151489 719487722 338970675 654976657 691880101 132274187 840536021 751456985 472981513 878936060 542275321 338174991 129680125 577454419 932878092 415597808 875140910 69256369 555158450 207938225 562278188 6987229 833353230 380108853 806716603 864149162 190783870 378946960 446981690 414054464 405313039 923332218 781219210 396701664 547028109 122448794 717693609 445367482 727109431 267739281 762097771 50508958 245861315 524688146 678096462 899631332 636452493 289392324 145096537 263688115 36290060 423540278 361257778 126305694 632781274 930003969 649513660 680638568 834983461 526178090 248337301 392965135 287076294 22480139 700436785 279490680 75051712 134722980 313425180 642650018 310383175 493678612 445641857 975457993 350902189 609951585 962649789 311795024 657534936 114679634 488494116 143639977 480669380 370265340 238331967 935897707 635961892 701859595 226219328 974919500 478148770 990836705 791456645 231444675 171311888 789012545 927307514 885724802 256956956 411243720 860426589 406264118 870462616 846019954 989020597 820247629 715518013 417192418 175010946 90999782 89772848 641114597 4237981 36041114 261726503 379758987 675606617 104786622 385143889 934657992 128732337 729431860 120763238 392273799 288179981 930286131 814713683 44253889 419159298 112825049 212364224 382211222 336333217 132514049 946773673 127428315 631649400 852974578 667012168 649476861 346725758 738155319 117866248 679675061 592271372 324484332 486056158 802331389 141779810 402016462 417357748 492846476 745953570 595828234 944537896 456215910 934988907 49006692 191157515 708696721 521047706 40629131 373448236 137573658 642079479 696388598 688070589 902522823 23228352 595158551 702471690 3400114 452522521 303228101 653001620 280784254 302841961 627069060 10715290 165388093 241963130 663278513 644519887 940637822 932044250 514975211 564410958 627284829 767084292 602224500 873229178 273946175 939768894 703982823 609027298 640502885 982299887 476812047 955553800 16358547 856195412 316843594 1211956 80873746 241077389 218921583 952914446 873327512 93574426 306252470 444304958 548597364 314682633 352482611 171954518 420637774 460560097 258493657 291417305 37916745 190552124 296708379 349842233 42013939 59720953 984878193 1644927 753705672 576438749 941098274 762297144 829089149 819396098 770094604 882440299 850915176 51823410 374233738 21424168 261692520 174309796 41605582 833504574 350513479 645103428 747097388 720222123 516974368 586601933 20249901 199079105 656434682 350604033 997973275 158629186 245576317 702050844 521357909 561269484 547598751 307127398 98745751 412234995 90364842 757717633 119801771 146245420 98975879 418974101 665312078 406577291 773221752 364044576 904356149 29500119 119931003 363236487 476919516 332287001 164766093 572148964 739529951 954263495 37003628 410509818 929223664 645263412 242752872 841167901 142648784 518834465 457538601 782209616 917977350 723939831 24083106 43960098 501433989 547681774 357632827 199158241 524794121 97034913 443505774 584165484 341598826 45078124 36716882 756737348 38747221 984362194 803016668 475953164 964308587 548861349 210695601 3307839 801982839 109897377 447125926 972110001 336368719 561685423 169078682 718073523 329821884 192503316 119475480 96194314 166746321 691938182 843159442 675910226 897802061 597641192 956325353 828559398 947267080 866260381 200653204 623780460 811205845 662765380 207166631 167468245 411474271 909528308 303061699 417102695 641419922 457256910 37391493 925941681 263220407 935006993 794903783 594799451 894158858 446469892 278690758 868129712 567397714 86114044 816943792 806560119 955850397 524795619 403172516 642349205 159899861 185304834 411497876 474923497 979015919 735006873 834682542 482685353 5020791 129497527 611286375 862159967 845084528 474312532 475053153 152282855 688951036 965624530 798305255 7611801 825518781 251669181 313169295 603682421 855720494 528204156 548176136 306723922 328612006 789701619 830912472 579693152 558596179 575403776 231361673 177172976 225448884 104517909 427838207 557766366 871948940 924807430 149447114 722524330 232418110 217758319 979319665 149601215 919945391 425115004 562592961 850029302 927538765 289459390 588030498 532553586 417546362 926209913 649090953 992459030 649286164 156350430 112397328 82328630 425120536 414632361 579229972 71638884 844321260 399191345 786915398 944027295 25626780 514678129 446087945 363453480 111698762 331402997 181286164 494440220 299370605 992665307 24307991 45229504 701633646 768845014 29783025 334597446 664816322 110474393 109134878 654800363 902700749 33735344 166467578 844816396 18607992 510409479 726862614 688964395 584140439 639003989 520679168 681588185 613452467 557290334 666679002 400107019 406433166 418798567 324023149 387282491 980348415 969092025 8404756 505427327 460933558 381138000 339892392 545470873 359166380 731362245 798452260 655117964 984138524 631151550 121542566 189718740 864955892 543565801 890259524 828315021 41644756 261901070 240385723 569621812 769512969 988206297 6597474 11416819 102676218 89128925 836951939 986694065 224717453 699110687 933750331 892222809 477962712 497186308 397007341 82528321 328771176 300939178 886764469 231025836 159963690 857493199 206228008 425501288 253354612 552673621 437317160 115607467 921183150 730327433 775357669 245970627 473721590 227854932 315967111 337466120 183679624 2694722 908512499 532514004 673543912 327062461 736370601 160195495 65657929 847811610 785390068 77622387 179748488 908045148 374247373 853395937 288833335 824626344 388711587 105921286 977992287 807157541 258576481 504860170 293357255 380398521 682648094 788059287 746597052 339778657 785286259 157624452 668522307 257171493 652064337 745955030 177803900 968846703 376838609 997375927 963538208 754687979 889991480 807502901 512910030 195102454 964965297 670802273 202244256 871647127 669991400 218778012 242711333 700237898 73139087 355809490 793001967 769614385 655002698 894884670 953941718 522655852 112159249 844810677 626033971 890004344 244246873 37615580 915106588 556094294 931036983 17338607 471619101 329928002 347016393 537046109 311085331 880732276 559503099 879633505 545382881 514857205 759780665 949113167 922350892 671946418 46139615 638560750 334736200 350757057 414800304 913560294 421403188 608108565 941145575 845027438 88266481 836509303 947147079 55676694 240224017 1987511 715747850 577415809 350756408 133108086 712652866 883188923 697102883 2563865 644787339 749384008 469239698 816965243 466674618 769783754 580898411 170281375 224311042 218117713 252362429 393955037 917658404 181236922 28660752 811968319 926387306 699653223 1200685 303780406 863050544 584748777 891268741 447204990 761764665 547009994 102987970 823983426 334270722 271166914 10977613 817642326 397964194 292104579 91692945 200509797 966228076 981306009 973974338 356993467 278622051 293773144 89286682 742478477 580698496 473440195 646436504 607406091 900961799 803611973 471418997 288558489 29428863 162712056 468952158 631590598 109606320 379908113 732640283 299963276 842168924 243146948 892438645 234505256 796780358 578735848 464996914 950464536 656320330 959840551 799969294 949308684 921409163 324203913 324502002 344557062 184965293 541298521 352255966 636019892 491547588 682409141 793913196 734345132 541783218 254296404 919391960 369588892 65703790 902315876 747672147 828075121 865908026 265648040 376834258 913209535 868865027 472134029 229697394 473638818 237036263 578140372 174454623 102037432 204660023 197586152 897537032 511388824 164754706 349972945 676523100 554809559 122731856 309597084 942100660 183814873 492993118 210331097 361760062 609798201 921011293 870195678 610409850 8276828 703757891 26122067 302601946 624639140 981262921 725618301 713935470 228833007 48547636 466337684 653590334 806754063 394062740 907566779 138163740 983357286 217214587 989443694 616197514 152534461 7184207 53586572 81225178 632896889 257462878 425797624 290371211 394110344 988882734 539003443 916671723 715100336 387952186 642513753 194892559 430514016 765719943 887883982 655512078 700791194 856116890 464423162 441439592 273302918 424188575 163948721 730042044 174032950 806133315 535141643 175563316 808411798 687586167 702408206 350093278 907361885 920119961 847099433 492179516 326522126 915797124 360600714 806750143 495984145 333261781 16814024 425807929 119764369 266859611 200285527 773500224 547076894 802119783 265597249 315458173 46468211 885195332 16895632 763258871 207632134 343612067 124082732 65453822 847719248 185632756 557960218 368976315 752354407 939051212 446251960 243967970 195287312 160729683 137909903 145290070 759280625 48130107 814149543 46590487 638464598 421192919 971527274 794323587 997061899 615930016 805276189 878231673 157422655 387419687 10657539 930465176 40422656 889949292 85721622 241572881 658022591 912013718 468297514 473910077 894226673 257079459 924056520 352892698 997794211 915817354 635375042 744813830 696166291 455705934 831645784 948338153 310926398 451218925 523664774 35625831 896946821 622189559 975625879 355949185 342453581 472562685 169110543 284024974 688203126 876159669 875980877 906894877 662855238 261163765 154483575 110288753 316552280 263012758 426356761 456551142 675641766 715528586 735252704 547545127 151944574 599200803 138410216 240718579 705268954 287818284 91776142 111495836 373235222 86128175 169257979 862626168 41345456 680271425 725750512 615193515 198648715 942533032 166245587 349008198 451386463 377797008 68506031 872036372 176942647 188594015 611618424 149402658 101370900 457266455 232852647 328594030 147024542 376442213 853504921 41461711 743569447 737762625 205208333 684839139 661844409 902473302 259413976 139560955 22846169 448799950 335468846 953498446 800502369 615993863 620566145 986333424 774105793 41723627 162622875 201622774 209303393 912586659 44292746 482748376 878187018 999694661 100531394 812958547 103052832 108908437 357428107 842998104 637617629 30248011 335839795 765676526 868806808 526844803 492963809 680413418 915167493 137872253 380384084 143337724 770488692 435977187 947705444 450642710 293854078 651190478 901129711 833627916 539914478 197807068 284525609 961607714 870229117 869709991 539921636 915712710 961248146 576085924 998751419 537647976 939002132 905765662 670436597 27692479 397976548 478336462 424463592 626318869 316588579 737515454 492734812 892563070 6979214 270199278 718345549 501853085 338939597 928953746 754487739 263370889 712772069 417460447 697675100 790214465 454046195 668681075 740037276 371742513 31197362 47894555 600160239 351012233 819878768 846278270 351668188 615363279 254799103 766914501 74709648 434298521 465582443 34327317 571996341 33152858 938877232 998784670 284576405 909835010 323795728 507914752 901003818 878480796 278893290 246553732 516801592 579763191 857927620 872033939 820845757 101986132 459560110 357347169 75291166 718569301 91267997 97112000 109149184 186717046 474704340 46094083 643972269 684306431 329709363 232179866 410932800 917496237 253171212 386951645 145622443 558736280 181632496 320665654 62712917 966936952 494934083 741130840 665545373 110294625 772645192 544410358 654142504 236713440 852723971 297583064 109929419 249024624 51611002 73816515 261480066 783207854 725935724 390383442 468782569 698395266 916174515 99582766 779494876 521737091 52777120 860112806 703794730 382015579 526777211 921083975 357567006 194492465 8150318 446579825 619757328 35157742 411292810 730250867 597607551 833463962 39354126 318408457 435326404 886811296 877420490 610701675 306183760 560649109 79614259 327025885 326560567 546176854 618447924 6483484 984787017 134883344 228868814 546556276 243873160 871778732 128652132 24972699 883261119 465906416 557542970 777776695 594501612 624183503 836748253 865727428 981508274 611960581 123553017 156997643 892923864 898412782 893533845 706436305 776896742 574856625 311198398 31593437 404134401 473288444 960381980 213530838 64986930 283566725 52324953 379251834 279428112 780298118 183550969 259760593 546649489 549998434 490888418 876601285 987992971 214671266 32214100 472868074 825696272 100310747 488096025 63234066 967656920 759420567 919930005 542403134 680055569 645187624 607674792 763048086 727255375 27140950 406980976 668776931 358463185 324101194 489719927 545928682 923546172 396848137 89226988 890295010 866157987 566221811 308518061 468874036 223442188 472929449 627238629 373081771 569385864 729003520 904364540 148818338 855386874 479736260 987503396 2339806 2107726 158647792 8482762 140225260 549636597 843233249 460027814 432478946 599561692 606336355 293306300 441936566 174273805 831014487 816652968 67541859 479931764 23392685 998481600 950620418 687542262 924627053 673198447 490364482 98095608 178363515 751188860 921727028 421208143 211946628 156421098 673315210 728611473 605045044 505829649 108939151 555757226 319358302 990128605 550383595 421755736 88785303 367028043 246701101 185613089 531393013 467404174 556154339 189968774 269946508 783998863 503162547 329874619 699329704 181498241 648772801 137194440 29094468 54099550 697044213 794480879 22929390 135545691 378335738 647731685 700196406 395879306 47793390 579798894 704274408 942138832 298013132 984416415 950704019 6531206 776425168 802113361 172369808 168629586 809781746 496162026 764549518 284482383 954505716 306556308 324611791 751087378 872560884 664874258 948767399 265778887 528876235 914797429 170141629 808626034 427407254 295048344 213175640 355768843 357250534 487600348 416154989 463332372 897666451 452202282 184498488 643758921 406428251 899432910 386112872 487442745 893949514 242117901 564545342 621815350 989011135 900151363 180638232 304115460 894418407 742688578 865062277 219003086 149057802 864777647 338681513 270189872 156535876 338421020 587073692 232696837 994572910 973145655 762100047 322923522 518123482 929581997 827004899 674502260 905026928 63287240 474563980 349555944 911002472 19650538 138978985 938417663 590438917 715484006 164467171 111375195 380749692 822437270 646365064 634864849 71618557 908288629 871981958 18986236 47572102 632298082 915053517 734167062 702432979 700913078 633289200 826644196 625258154 144184987 78990033 85895421 584804193 740342767 824208109 509477219 550902883 811588866 914934067 844433211 750072851 649446294 916416107 130018883 817034304 219669004 826767871 189619208 660991611 11019395 634631587 493662616 172835017 269172668 349684150 359389762 133883923 220000072 789201259 439374276 437684703 506071039 511913299 186552250 648265080 461754152 547779449 812949491 177441015 39754623 814667001 118363457 964547604 263739402 296495739 803354841 568264967 870432670 86012076 732668498 202376561 750578869 872671342 638223286 786674627 65786510 536164658 299177865 105079717 537011673 972924984 318952503 157199143 722696597 197388924 581317184 474255031 330449149 702283729 46910081 722469999 907320211 868300178 150710653 807266522 38989065 327076829 746054948 268594535 378628138 71813880 924364425 750437875 291971071 619711291 125972920 8407262 179981604 851174006 10714945 736357183 898178645 144000990 813865770 430969654 628404343 402068543 760788894 322368676 807425970 14543861 945573313 835418641 372910084 154674289 887370126 623787408 123966527 590583698 745415568 597746210 456014359 32966130 532072718 670730585 792509055 816050820 996680642 134833374 542859736 14471800 883843617 144341498 863302863 639208397 954340333 793018904 108778526 705846604 39821219 545700450 260456676 772282403 526072946 641547873 825775092 324042413 546058571 33846103 631563320 817087820 346848034 803598847 798488835 134457469 437146903 682809021 984396112 847563780 391668155 368241923 533845349 982871195 975806293 141732431 312736076 724293286 174465391 63311683 941200522 394742065 967023482 554856812 712079941 941942310 657427385 197448231 324903552 360285142 50978289 712110631 493038794 561535382 534821856 438844848 698923539 729667661 396787830 459822266 225617807 209015772 150490610 820484964 47120085 840146989 403617214 181249761 91957302 66680240 839562642 248370631 480641591 886606619 837525678 683562684 266007228 647603330 647489778 886960355 106187806 217459237 194076153 865675482 341577128 990720147 378741332 536422879 461139729 544521258 214891137 233066983 985999772 191282937 691306289 489295590 527613509 812456207 860023753 827891644 979511860 924304472 762491362 508686616 668692372 974805690 25248979 821682401 758392796 405039824 822063632 258723338 170339783 673758483 865314163 471291011 397264951 768490459 558099216 202248363 797526803 395733994 735057863 338438853 390547421 74296162 16926362 874807852 431198027 868255059 318659340 406424775 312387749 212078615 38857376 695835803 90166102 235903747 5106837 291616600 421940491 309610852 105544525 951991117 79253113 960015560 53589542 928315927 72972558 635377515 689686588 587118746 513753939 265018508 795191053 34884653 928888916 624560404 921420679 715728375 441611489 559522682 495444521 577495726 121813773 144706565 287254882 786424331 865373735 426041992 356517113 339253523 706263234 19487749 411847767 457346356 495759468 836978716 831518769 591023093 593416393 702360431 176123600 131904526 23683259 377769243 92334813 832622933 887101599 52739611 91078892 387795649 864450600 931130867 819675231 58059749 305835209 981646827 142973917 59685122 645464188 292408910 141995330 671649257 671917884 437139348 377021266 203549645 931421816 85275356 535592622 155947766 60706510 122865190 428327946 165299240 287692204 882580629 754313510 384782985 960023386 827385786 940570440 886919017 730856246 334656021 109769485 539556616 656970652 385396345 813365883 486859520 779407534 294232935 551872996 633685845 15294838 619273918 896892469 888525910 608200522 457285974 45289330 883998944 763518564 138387086 1699166 256623078 496454165 335388333 395598558 979913284 614855313 338755075 990027201 647568435 936378741 445731170 70373461 881101743 105675876 640573855 470854646 420035918 122125110 101281924 57112563 539038610 679233002 88396366 616732524 471250513 970005187 918887932 48002250 346607154 241013162 506499257 128673081 672531884 527249914 348138817 222671913 936846361 727202445 375134189 93469196 404137715 172833951 497743082 504112078 358174195 601152856 301637966 274064434 989668951 413014342 25271566 740074652 764394599 954220021 778926729 77640958 532046120 322441715 863494115 921472664 917701080 93473902 827036311 886794674 533130791 944240208 675586758 524083862 298714685 635296286 593651466 579435291 11673758 59025424 795476004 420893342 327420160 917744692 694300013 990580872 496190519 773950546 761877651 586899417 965911641 494213202 986313443 318541067 297936953 285703765 251579365 113522579 400439082 879472620 984232289 938884133 146001891 954251532 919449182 694225287 651153517 992151098 750936119 564772142 816232102 563174668 744739683 456413501 542020060 568866338 241930385 889045210 514991359 99071256 910369608 752731172 519398456 238777303 700054716 89812079 499976406 569720307 383632394 648753277 623257991 530849309 415154234 273402103 16146872 814332244 291749627 90571579 96725335 943766014 498014252 252671823 768219063 492388410 764543586 574975269 672636450 230714096 141389481 549029642 532905852 255819764 686704098 919110045 343258891 437612598 694112396 243167724 587158933 822235915 602253157 896563426 416533251 95987418 224555367 673623923 924727959 309134613 553771977 879210248 137233573 254313609 580609310 417451486 935087185 796192721 725037510 170085918 175029171 699409918 881806384 476052099 177410265 639486328 99440432 574710085 232665762 243495794 478592105 612614821 269687916 283323803 45693310 329684261 689611015 726227567 962292298 16565066 88408792 477384722 184035775 724045204 113140895 897362239 44546780 551029788 997758271 700544443 827971366 259596732 714793671 799526009 429245698 618168414 540346580 620415068 201188726 792202994 543465908 366995630 46552754 237629737 151436067 358493643 480988828 630663145 525677178 971977328 983645977 698276030 998572048 380224205 295699248 354334957 530366994 469429590 978526154 714085590 467194458 638830096 18873074 734276009 406318066 584112295 211571647 370928932 88233044 499298164 387521282 375400501 541238740 745020737 929316796 958334654 341878449 877799594 512596231 684129198 611725648 362118854 93206786 4058421 608091776 221585245 355596979 489340495 178027200 747520455 904709444 268868837 858776339 988275038 658307706 154480164 969870315 15199647 795611547 149703113 489164643 179186142 787345126 512236863 223942985 948757662 629343463 876121313 233629417 79866202 952042019 8724069 184291393 631894485 808311055 34307395 637836788 538305706 186435367 54292893 895487642 75188880 849375244 948066788 384656387 312443993 420054083 248173139 459293973 303277390 167956575 617389153 738225773 956662151 947510829 128670152 782104619 153225572 740145967 745239208 283717857 619214764 29378179 360004567 496517496 66980641 305539633 722237535 65318772 860038345 307690958 309092731 507665301 857911851 340251982 574712758 227797282 65932922 700339187 418572310 252870569 41961640 764577127 286863830 881481645 965318508 487183011 182449742 634571214 226224615 848238433 509430696 188609984 539605008 671512143 983787824 209880224 279861221 576719720 415562373 391943455 726655160 859838474 781609427 314322791 200207862 778099012 984155005 910168544 385078898 864008878 257507236 226166690 164113480 403072219 668177800 621437942 425380022 735764514 83152582 441301410 691915347 553671502 861693271 197917263 616938171 909767654 232478852 418427331 476832770 840544921 639816902 384921357 231733816 179610951 40186592 836784844 717707956 507009218 104208126 835725921 914466512 144046635 300609078 577445011 773765284 344257798 805584226 297812332 380126468 795429858 388872881 814396597 379047026 153352079 482471054 881554930 771067128 297953935 678280253 580592214 212614665 991197774 954093365 340598782 627385161 869142984 518522092 735216612 164841433 864837058 223103859 161110914 480280311 506288507 434452397 393942484 585025549 652171207 550776684 943675268 135867382 981118931 592615736 203403655 656900256 236515942 722864901 243327349 586470261 394607822 265776819 384347772 492110030 849393023 888817023 714192739 145655881 65523572 242753849 696846578 120787441 352773618 649540315 933207833 822270728 945550420 799206014 226430157 439698515 554865528 701019047 331200189 937384543 379201145 144121450 758455367 168669313 350090000 66472746 223791833 941084089 979146996 922989976 27142982 662173625 155113785 964383042 211297666 217906441 883854860 46132702 447014521 699836800 916936254 263738388 484277508 403559340 913676482 245043378 580508388 997928831 684506651 125903882 911384471 981933043 836042055 458141954 757374246 940660409 762959061 857749757 462171789 814785154 882208472 185581799 990020316 718565514 297987953 537733455 110842861 312926624 419005241 652527365 816223739 170367889 915956674 818639413 632813267 845675865 784917090 587894493 308950446 97136942 895444649 688528857 627928830 523849541 150463803 309860340 739589761 812453767 127287577 957306116 405029799 438764220 196176476 493790390 144572759 49208451 327575224 840095238 843464115 771561408 984268887 982681641 819613731 543470805 669429916 459560101 545257383 806437176 893390854 222702015 816069909 405542867 731774427 12561450 649551726 341723722 944527444 617738044 786728502 264829298 329545705 800119904 850421040 210682320 759901641 47718142 829861506 245154143 870102490 890682895 275939674 444257140 675416822 575793947 238073146 721775631 236771840 206389763 275627822 88700827 635854646 44343399 220368074 242237752 792477072 442322617 702552862 312749341 71422913 408916368 87611170 563275937 917957387 76920919 518714916 726102345 659124910 461626602 154769593 162925480 713389898 37739747 411168232 245499719 124202479 317265897 22433337 100185536 278513640 845303653 601111786 334472470 894083962 620231932 562729865 65040542 638144802 886479688 568160218 469983205 407923044 606174942 128736028 517501676 718632470 12387407 176896335 89363803 907803369 13678085 299915480 163432057 783495642 534519822 980914160 775589243 401765688 497314685 819504654 544418771 433268498 372807249 188030531 608820212 417345294 686359966 189670266 33757129 363262958 806237825 99836404 212168647 751175168 110079842 947690161 549198895 68892759 637761020 125539956 805060363 505927163 881290754 833173884 795184378 64348763 217058147 212366834 607884097 220855127 248545251 865683117 632320720 951103394 875209080 343688742 615104256 97932130 327835629 62846955 392471502 702835633 6975463 493249224 408332246 603571345 620736092 666695922 327358285 610321404 113115413 296031237 569696232 113119891 126455606 275580390 258009188 349430952 131649650 144608066 556473871 808672342 786068538 876575012 684587476 721338378 692478145 261351606 457882559 813722913 173786555 815811216 421730940 77633844 999770223 161800833 313641673 6517517 506141609 395917511 17076958 318900405 726275723 637080618 614493619 576999745 892923564 480820068 735875392 903398822 805245691 159563397 89208021 163454633 543184093 660063147 583022617 499061242 374821313 592824916 284186353 561145105 944212002 252498846 279379342 777616421 676280372 818629166 646759601 183382835 154327477 30802832 800057911 108336757 156464127 138456399 978632041 138838701 621277097 281785070 257971419 270612296 818878294 505525167 909369024 270940700 89583254 754895635 482837267 889833737 555168777 346932107 983272574 434118487 263044173 495034457 505816177 91915766 741931820 401248943 792722985 673033135 537499692 981724422 720196867 601004877 230392122 600053571 676708231 677079319 950929957 837696787 706128182 200395705 620865737 124771218 861722486 577018804 574563313 286801519 400845328 583010029 163684564 674810674 52636344 646417990 151249480 246884963 907316820 371443155 438048480 856302802 255839747 355352486 723066788 236057077 636453663 366246383 284980389 775391591 181906301 602823383 280683596 437214676 97562832 149338617 461035514 988978745 138382149 110968523 868131249 167418050 495463072 769896008 247948066 134374693 705628147 419833942 732741402 745905198 942242932 973156770 847769335 400081987 527772673 73848169 532376056 200375435 181902407 20293143 436974463 279051666 371260171 758217891 989828822 899242657 891418621 620783121 41500147 873436470 141804461 356723561 480512559 173753250 745768877 507732339 7917501 988573041 297167461 563961163 779161719 741104077 598041595 403177864 907230646 543566904 397480657 546950904 948199241 208966271 514868763 627422645 802651470 442897512 191200136 814264201 899956528 443864723 354922981 116713283 752326849 471036373 531783800 454557956 632981488 490961582 775176224 396237145 372352522 944571304 193357848 311128788 765254548 222279967 835394996 244091143 401859728 48313340 149772726 981640251 909562724 4352810 917502082 660740880 135856944 770914991 975576095 630360038 444781582 315050569 958153469 780260587 612295020 889573957 254549169 15783628 710247341 150780278 700675105 776794795 461497317 212592737 325476203 630123425 759520069 683169712 637806904 444116427 456895275 317093039 797215131 905506364 890728821 602144347 894970566 778295074 399345494 99430455 160197206 676530731 193580511 2199932 2907374 462181249 632036886 913195680 822902472 18305840 342230554 346880605 131018321 379818944 381480416 40612011 319421853 977519182 933712292 205543647 99323841 846868201 355554136 820685902 417800022 727900676 385447886 57795402 233433208 276357717 343218493 672520136 63445728 628451615 36614367 749688810 668761420 17066632 108655000 406021945 364928809 899245465 225007313 487539067 459054607 559620600 570064543 338603338 486535698 485323725 18841468 930401823 849696399 147545375 277842144 986688049 319146323 588998864 700955100 773071989 194196499 216750672 153291430 708511903 253409639 442313907 479062363 778645416 488599113 409625539 949261210 271342272 779779152 810935786 795857176 933593087 959318102 117972895 929775005 287089687 758570862 502404142 892015303 922030765 924575695 653956423 126033441 425854351 946697787 585233854 353991810 296053064 389343938 791902701 533838050 734245436 843641955 615870128 892306406 616695319 55218403 631344835 104408891 693301527 52280983 509824943 301413077 92224670 675561869 395398594 803503256 681753263 954603717 755009519 116740708 598432594 243852053 753016889 381885045 92718970 208335136 755141002 500683499 936945174 59484351 357734142 545756393 15787380 80144395 783337475 847378185 735197139 420472077 23297729 643400639 798076060 473735601 694446131 122283065 104721020 71150041 855082389 59360580 351171156 837445332 189983465 744373403 817101876 830201508 833598176 777686062 446256059 796252449 219006630 675955297 50895607 523752253 904120374 33618416 328016553 491941856 650038562 58759823 281620586 400445118 321621597 701229375 98682368 151093452 979364061 810117594 705999166 846427362 616311826 3812099 101284181 373227351 98683280 466733136 202661134 768235741 312621248 899931814 170090549 792352627 429228790 512789650 733843961 670886220 123462306 841193570 767140174 942170751 351073842 705745350 316176977 576966059 750927491 891579274 822453169 969951130 836915179 970442899 576266996 672759973 231599866 366915353 192778073 928787253 815101642 281317996 310845688 424605945 586960703 263053914 685892871 224081392 851647461 715637394 651770051 818119672 355349381 52975353 212997142 597232465 670600800 917649006 956881329 735281811 131467787 716695953 349967186 988772227 973946929 371463629 345116028 536346064 942804990 74630659 537165267 522934299 144623188 514658871 445449129 18968742 542834586 968301456 767555150 215007436 953375866 240371828 802651323 693446269 605888934 169895250 890830714 364593366 996625558 28025520 950417575 260977665 770543337 968802531 33817454 68626803 133354669 60153246 292246096 397220118 283225574 975841357 182141101 86431138 797299035 9268635 994822738 655791621 346373532 181932943 870714598 531380056 990748112 989001983 48285167 503586099 573314520 454404296 55553328 238577188 113450541 763250742 545118998 153036640 951667904 186276830 950788040 889854516 261911262 817898225 551223509 120238804 765453105 28642006 627068874 986925588 68015315 569234335 343992379 71812312 147980311 103938257 8086366 530603159 461598950 8946750 882061862 172618089 261656861 863606896 877332417 287985678 662304910 964694388 422091960 46419062 84235026 625216898 101863285 645059276 563181045 68660863 756573529 691428567 273185113 975300778 100505470 319011371 748868495 812692279 791999617 788840079 936599320 929767907 815166913 493723906 846934511 185902256 804900578 861059329 289936861 766584747 557562782 430153579 547583293 616514610 703124916 49833833 687478352 989141575 442961877 251390150 409356134 318501473 623250625 687005682 155406568 224465862 363742708 385367352 717813281 132543541 499361217 994647921 359442729 505091341 543046716 97249531 999238089 638010201 517205413 885142108 525223168 730432160 563768035 489458175 429058627 244710252 143642663 453102361 433687759 354447092 213992232 418474007 549020296 312157610 375819785 649868748 350378054 615919161 266760879 726088200 846289822 23720121 600135319 622192862 196438337 307347796 280998523 122458459 824084106 752647413 362356195 140283644 179832838 305257081 501627582 31357888 111487130 986040022 261254605 533024025 37644039 756008708 592102322 335842769 903529084 807635858 89041950 756031686 849152704 305678618 390264715 207799761 375021295 200737947 5602549 474021325 874308050 218863351 962878183 953561357 253219374 80329297 54616152 516287831 15327891 989072753 634346273 971405755 925210484 722670838 370470235 133838648 219942539 859491307 134314842 394447804 479942926 905187303 632710977 318784159 319953044 903548075 832993964 181915854 707068185 874693549 569373322 987544219 32175388 599175274 624962514 282813997 189589678 947755002 795713069 864787251 926394846 958098575 628987893 937683878 992589240 396576028 869460387 462781031 396328499 653362222 360946086 131314744 32414509 978256661 435701470 449932709 591360921 676669756 294057859 234374257 744064811 495067324 733800288 75878550 899105178 433611065 631757498 356010424 488479845 48459932 481894003 577977131 761058157 904726821 453548593 448756156 242118998 135425098 188101752 884413714 666738245 458238968 92240215 866844367 378665198 540699885 968187722 1860099 662010633 106345293 72478360 336862343 678829070 940789194 290230642 413707785 206199293 791449819 637766131 204833329 798479006 857473373 281492719 717583363 278129866 592808662 782311185 258608478 892964294 613194005 950769454 832476974 645262504 94633489 801329599 950987843 884612731 350898304 957603816 11755081 643898885 959619432 640988246 969552962 507838156 892319356 219788448 592167973 641655603 474693365 73923735 853747103 19341116 862202127 707765533 222731126 904862759 596703664 443867013 13336630 783719918 192651768 610138677 386441362 956325718 492444817 71780888 417605976 856457010 817224365 45478669 113546962 326829926 159350935 400205809 98142719 228407643 169038343 368568570 631461453 426067880 680380913 334778119 542303224 622494027 233628989 90321584 536476835 884102606 660977771 941901662 294033454 36397213 602097496 256324412 996757041 646434296 459299160 866166819 325127822 826869134 929163011 382250513 354811485 755946279 401483594 317168634 572881712 93687261 878824177 805249377 931244465 151068028 322503343 212506211 479477603 219274178 662768918 198786721 455273407 877949118 676703864 54456725 33355029 720733978 241678440 778459966 686011428 149813328 267111724 994562032 445026373 371192464 990664281 749688937 715469040 848174057 782979065 738532520 338259611 57732263 248238982 700327942 103836501 417111771 400506051 897725767 614458076 133198732 812852031 174661988 473200733 226271760 688982972 821425573 535642674 443977454 309361181 647616763 313126500 373697840 126975382 610776601 446263532 944322095 22284614 801561490 35332476 639729167 177029723 507622121 510753334 303467259 549560444 715197519 902194863 333866253 721666989 723948127 649195714 291922623 995114923 631312239 16939975 213495602 799208893 202895183 720669586 930460846 888008761 37641798 496796664 374330035 94480787 527696101 873312575 47526917 765442639 645259137 663458873 525482777 984250943 715994669 198332962 223846144 419616524 29820224 430647879 53165226 183254316 920061672 11525659 555056748 48907321 151984920 260229011 875226827 5341323 152474660 864376634 616320874 771933603 124274981 335089346 475173821 403637559 330056744 215153238 290881170 487652120 796745833 821993582 701522691 928601635 999024874 674074487 374043745 116092238 618734200 122546420 9362508 157491467 589227348 344180065 151144853 835899443 763687017 351518866 152919105 638427610 240417944 249521026 445023091 944630438 730464511 386708272 305139010 751838258 340942340 871780168 938052051 568371179 158679639 439614307 275867574 900180082 979081868 340531692 919773220 7297951 975147150 106386344 426848248 59125096 889353653 215188524 425804509 484113459 61131138 832341185 172597027 606464138 750872910 455910506 946316375 78642826 319350377 280547565 760299615 681439300 587990385 145909992 396374071 568382303 992219772 106800313 260526702 543987183 866327728 57046183 321268810 926603509 31048257 662833064 941180685 296699049 992239431 765219523 419614751 499640262 986136726 893481306 114084663 147612157 985240428 947009972 301022351 245841710 305835906 117499295 761078196 464728908 137638316 743991538 236092606 845727721 801139309 150348590 534564767 549050757 514234343 87504091 907767416 299615416 475633577 717245459 127437179 91583928 373828012 811580102 267917743 705841064 713873168 259149995 964056695 450988518 448599559 172300852 752356928 952005106 903567954 888763727 290350729 334005372 488612353 701116394 944270647 991768895 356210171 193127028 134194334 76965722 216122044 472200221 9746348 886029003 473276133 954666610 234424833 288808707 782606601 838223030 23960886 193501412 241868265 190325177 933621928 46303013 668769898 644764743 593045382 354237981 576555066 549589081 83456069 961515329 653949501 330345637 57601271 129921685 9720442 708815778 776936807 957841550 220946348 757181231 480975129 335835492 183691052 639067831 389989340 658867813 510151538 425821210 549519898 23730756 366274234 354581760 53385398 233639999 655146664 544911258 489702273 939526745 206463188 537848865 135580818 673229962 98223566 316258623 766729940 260186007 998401720 731398933 199822061 645989795 891353454 79275775 884377830 672801324 686322190 631025092 894041573 352166600 258527994 279959497 754332600 909609751 40922106 26556232 398028280 435266909 513168115 823248789 889723709 4863638 225240427 708563250 981800559 491954362 72516234 647413766 336657422 308657273 190964925 982577454 828378524 552972510 867425230 357624050 326621407 674192293 620644360 39423426 870192981 780958983 939828750 179432368 110190185 939320658 518619871 126587458 180560681 282212359 951417853 924122542 198234523 990805256 842043768 568140451 239176718 172946165 888973908 996408510 780047758 214374772 299369544 786176014 473296880 482371446 46921084 427042 218265210 960417572 390934101 710443937 164860211 944476512 579642770 476488904 297713094 583814381 174788020 884878355 432358256 856188988 418560664 56317302 641289208 680988967 143465916 796507727 888053805 522635046 993531681 952053460 744245673 563161332 332205203 455757586 566540343 154563555 886993495 491455864 721293151 384925832 643217532 606280004 956473921 581884366 218840732 519064266 925641317 200278626 812576385 877032904 151372970 198017055 71180190 378807254 52800077 440668671 200474958 923638455 309838981 269745364 682993956 411138306 487493003 333505149 246843032 387090244 468450294 652066438 927320572 524552070 393662082 874946651 559045681 731473890 403373217 325338983 306923623 869696220 121940182 381366857 174293480 748730735 597040599 697145060 434026074 349404259 304500065 316257022 468543823 647054989 206138076 928298366 734548594 920181033 12232429 872182317 569145905 900220050 26655528 89852647 609801009 190213838 516661352 935147597 354620441 218914883 267172648 694147422 227100591 381407186 586786319 981686048 651849895 202318019 150206460 449805400 950046557 611468469 614304642 609496461 182024895 542616685 91197327 315266588 653029715 508348191 727579079 690807365 316682598 799040746 493689388 116066775 622025584 536440215 721872209 698835080 350823517 320050582 357690049 112114961 356828888 782344919 826290515 478352548 702466652 634624880 32550366 759052343 957263313 380182873 407004632 238649408 175048868 801664294 757247233 843648108 123337009 840537748 230807804 154326798 391302361 275234689 148084674 802508231 198517699 879384662 201098319 365575080 183765483 248275623 534586226 796403427 791628457 148620474 377849285 140634753 202057918 476286413 268118194 75264865 371009414 995101351 294519618 479233017 721172225 655131792 673047238 213334987 733284165 441559972 511614020 694392496 589073121 166679600 344205364 498343257 530797682 146216113 781316600 201306283 13278595 867391170 906255283 468535456 490970313 361852821 613835769 594434533 906340197 665173713 349831473 347235605 547767887 394598672 716918356 665041443 9943939 894079685 479275066 60170982 544841319 678481560 776768297 68359463 110192580 210181169 70226987 397885577 163286426 692061911 395351063 734590819 428618030 100090955 59230438 158067322 790738476 142279385 415535017 382145159 418589940 854389925 169838748 722439884 814113495 225948590 934096681 45030300 896679506 998918713 426167201 117815123 36499781 413383200 552022887 172157048 300783879 508239173 872329224 968052759 980351922 694194423 355938167 951887522 516033834 571652714 58255810 351252896 989092733 13504006 75579076 388184399 623285812 707157760 471177981 776048437 622507413 913240895 803276174 360659168 164378408 370091750 630724925 469547037 921860471 398520166 151512580 343232972 452491737 845869085 396757857 939797123 361515479 804271650 18004545 43069515 296393898 161248232 512476694 197801052 698571431 597293922 861976179 941491635 224492447 165986409 626443075 753768415 637773689 334615847 191442156 408016762 447236667 967914472 182667103 945925683 168046130 987412552 278552749 361539027 854966473 850669258 532202024 841154599 857030427 828733399 270889824 864602347 436487419 741101038 337600619 510372533 556724135 481475748 603083719 496699736 883741545 681744794 270891947 131272933 671246630 376747152 195661840 417111926 301163557 55995593 594239253 168898080 421579166 760103255 336202802 450450956 75390835 621510508 8270946 947343557 185869336 479895836 621113115 654883599 711512096 337973532 672390033 684082030 576651939 438753132 130879612 862353218 883566684 217556139 987418399 165246407 747650093 442169321 733249283 65632914 736026710 42868066 400294101 17341892 995777823 223046387 13999338 792459283 176472401 977375502 827427704 62967415 455459090 68044324 927577505 796375032 739564745 505749130 901753389 852532177 525699258 37809008 181987595 277398969 613246214 122574857 485249073 908903165 365211255 387770428 942000904 859880550 195828340 777980317 718902518 114468650 461783973 710867373 342443384 640857542 77851442 575220990 309086107 586701719 432115985 974551034 744148278 600127614 664084848 306607467 937363598 257299345 440163132 641690976 419680837 833375481 794120632 375130924 859474814 908537917 402513495 826296448 562003972 647464040 251091361 325668077 857499340 783934860 478206605 754006945 589282666 784063142 641876947 798340557 520659041 93034431 175402521 423783177 414144327 905325496 303774350 136288414 682996398 524071358 788973679 37358218 404831598 204030402 4006252 315032490 830883119 991605702 121279608 366641164 576988459 651790204 304087433 822302802 753359692 681437812 863943622 769261684 48429041 926914783 593476493 161535792 267700380 123579201 528407526 771104977 43207085 696430038 189575194 261292595 145357205 239268011 515783424 72249881 558892701 429804964 328494687 820965845 857373133 234210827 483902936 891638247 421597241 841930358 168234097 903950641 712717650 708747961 238712054 142314910 856617262 791165401 880477154 142397603 182849385 824683357 838277213 917825778 753839485 849103357 110182142 649246238 162227784 966455981 396364226 698662697 484351774 807255860 4577924 314720204 975377799 159935116 449893144 28511264 325714652 902078530 181379814 50182556 220286802 820287412 901003861 671926700 704547326 804109086 850019561 418655956 299074887 589156558 198863541 888569868 75039789 692241858 379107522 298274626 164468941 896950598 542075524 827104011 164369519 524095177 415985469 641070924 582566425 886929319 181928935 17596955 59517842 175714419 665142137 951924610 954368282 601365987 412255055 769380505 648661772 148572074 696103846 351419343 769707587 999808634 687995393 468205770 244771374 770782105 356720076 798845911 517725297 870610921 415273518 51817954 296080068 875011086 75867607 553498624 617001986 994917363 458559463 415430451 544398572 585310971 764612690 426554735 246294515 303344178 522308002 5025901 735270365 349358359 622876748 882921250 135431261 97295463 101208878 81823389 317198232 880534120 156004078 26522331 9553529 369176931 653535137 58668271 959286460 700358756 448372899 984836047 268852563 635662331 816100624 568665837 127455909 346993511 425845125 290336912 540119241 147237527 221901536 520965754 791711042 426203223 92246001 672543677 108676000 499106962 933794400 777077731 865710878 726283336 500256077 502534480 669276659 960578955 618375199 114229552 238688090 606288465 317086767 252734513 878448322 755677167 15574522 373428217 169016813 338717780 169972457 633163164 938600417 528860475 849155896 801883560 488695241 826411906 22579698 362505946 406830380 236492776 809426230 804782882 377080531 630226680 123166427 339027541 658493746 596227144 117414350 346341529 71322894 712508961 854655657 643901926 534444812 170577900 831776662 93348573 814714169 579458209 11524435 632067309 424908496 354204251 533090502 955276315 478148025 108177117 667799784 52513444 74266045 164293695 801407186 774508295 894940611 925751544 231344644 148404135 483232363 159405863 19914999 717665014 487515396 300019802 372556210 230835936 51881310 784100904 451857009 366806664 131151243 732505370 886567592 976618595 627656212 521644992 71284777 426849222 732964194 523201060 72193268 949033047 972500713 820661574 643954839 847981967 839058585 393810206 661597880 947388097 321887547 555834675 661378084 326033851 931561311 294647870 523411570 433128979 502138778 784053357 125533954 743203169 285210332 756230152 932454897 252542215 925566911 937303779 568290066 361134756 498837593 265345058 444430335 735621312 93185040 344811765 214707309 701759786 276036841 280866914 660285110 966639573 12723284 846717395 849318199 164927537 412534510 253251462 751605852 795762047 405115278 495654988 214055088 33405068 291449542 464621241 538016560 45072872 17151624 564626406 191597835 937154785 669488365 253599502 25911155 109932848 753941840 246859807 56207159 507449999 69157124 586925737 920669627 899882630 293812947 800680158 895883768 138302668 488423321 213810142 267131029 231928084 288858116 51380022 588013142 558449848 800010390 306113566 44878568 453624680 959330929 28470012 860718196 562634383 200031290 13832046 816247491 388688250 319843653 956082868 981871808 906887610 42983067 946705968 490009631 770039993 664154496 621574208 605717885 809127087 942597175 397938973 842002468 680198167 597044165 970818029 992969852 317886910 751017388 779449029 113456415 88957911 419287993 432434146 463920076 180163245 604109054 146068416 418468243 278540082 528094420 427445982 812405968 735860772 993154333 880153532 386856966 806846297 695208864 449464782 568586152 571913386 369437871 898747815 656937578 169328569 912995891 956117689 409671605 290406777 845819953 151735072 431631919 83725997 402777515 938852757 497331043 706507959 546128969 492490645 837275624 633582767 266119992 302501327 288184634 329877029 197502333 233050934 356974923 853440031 828194021 332147239 680033283 789905360 590968387 232962248 88352598 650335104 89937588 171352117 844780751 284822289 632120206 827798008 165642403 455386754 517835788 825927838 743050396 388572760 950802441 673283306 345482412 925026191 794056191 914450978 875850537 897917887 710305713 302322311 681048785 817483713 662342607 805833736 78984218 937916004 9576026 17621223 410936059 865312689 318157015 804446192 538786248 463479383 373684063 991254412 712128899 245087371 561728947 368412557 485438847 583658267 105194574 247237186 856010038 18243307 566284235 108102431 902091519 811988785 659563758 331086131 957897308 862755045 516258579 474117782 794541653 803959907 201422126 199027740 276564573 68398168 250988906 98310147 40018933 441725689 252617508 463662690 873072895 253417510 14215115 182797733 886790075 583423190 961332802 729879694 389371390 639185593 738932580 46678324 206440566 878136841 140721186 273800735 39456539 695940696 132016335 384691563 961988596 274746541 132860017 279532957 865947602 750174755 234649866 715568377 779672843 828075879 681698523 546779359 225991877 936855842 56405408 266812720 815836629 200816107 730942433 193432998 408300381 291163541 533156126 307837201 240337671 715838564 8052654 140146070 888074971 279855829 857469463 432990722 492938407 398116410 937380854 73627552 971210168 995666593 429707587 663378916 725356296 405894751 708680308 879096561 340432827 659725542 688621301 462829250 548494066 725804479 315162980 193377461 195777912 372659055 229593760 114057096 172293369 667854962 650885339 801372084 634551166 223827961 562389032 628263232 43340211 406967461 542581292 290571973 577119171 728773244 329918346 751081456 416702615 298074123 880080817 564947955 93229248 842304993 58801620 606889593 663592284 529035010 226198705 11143478 352095334 225292102 597372042 834304769 348017142 896602483 733730905 785443627 618788414 774875694 726134653 160992842 177601162 624779431 678097813 842849457 363979843 777659180 910012605 900877923 927105053 109453815 961230344 416754079 862563456 791191457 572489257 121303324 726336652 101353484 187197286 715931159 6199831 453662926 422833270 896562710 137795928 831037340 535707373 644601384 201817283 286179738 873317652 425831752 546333113 192995336 363044962 21810425 463177179 623613443 228328648 78264211 751032126 672705808 449478425 98827923 339982008 979773167 909803019 685805206 726698558 897565954 649371911 912225371 567343446 400881866 420549044 495509862 557053825 282535216 13436331 231681768 968532447 399617262 744237480 654270276 615236166 337993125 115568221 352256764 702828619 688668635 902389259 84739863 85651596 503026122 348860760 601068585 340947714 201603250 341867971 595800738 921604856 172984601 111632899 49097766 286759072 636152306 855242847 220442459 418332452 359760772 891785731 494469314 925871544 574615908 568161658 300174433 900485667 809971226 538930666 208086157 237323397 524964195 124951456 646965692 2339783 14494072 170169005 324384142 719957411 226572237 788964387 586051707 754772033 926771126 364397131 276624257 943859748 592403747 920604782 555922279 577200182 274894921 220947414 558862652 163308912 477149828 43280081 298456823 131417207 577579922 974672685 261770106 59730531 330925139 338871225 777303029 205430601 113042561 772044089 103436258 619589629 860238758 433787660 57904542 197466356 258913970 582698725 197719866 215797180 874556808 177223642 290063931 708721869 411374526 818792774 128589027 191295154 731465226 311627534 685077071 841629552 746374268 533427041 802114937 898250448 456073531 296283529 720119519 822904262 112707049 846757092 424247945 851591843 292079140 509606572 183670577 498304710 502972564 294402982 799914640 383647914 253891153 396430046 81934454 578278244 628347008 904494022 115509184 356118594 226457672 753852945 57227524 69577819 888840360 956076653 411268533 172804573 143356622 182003460 160490789 200907961 250029256 894790411 724911550 558465138 970256955 537153871 509547123 971277687 987149916 397691947 324973882 704412451 970788271 398694197 541931874 450229799 287407890 740458089 782800823 657649467 890509141 147091169 968525142 335632183 33081701 232929637 698281567 714639389 73732196 754277778 533014220 113247681 338651914 855725515 660886873 109487676 101610854 587948481 280622967 896370875 667120556 567052966 681785886 159402744 589642845 943005606 77727502 711725672 180793579 839255927 110109657 344641886 908270262 590050879 879570174 333589681 260320133 16811459 409350821 857650756 729727741 612502744 272033854 437524434 877321939 980407227 293954528 131509543 692051539 694568273 560702124 442122296 189869893 615812692 475621810 1656583 802794689 626976999 895980181 909270836 813849009 367960973 703089477 510699575 907522164 893481367 926019297 73499342 932080479 75670894 760046105 446238033 907353059 786115879 571341428 325204784 581327870 358085763 599804883 439896756 87594590 600623780 566939503 607253940 663397396 628873457 416757941 92936130 805594004 991021092 581950586 70443142 939262463 365673565 438879014 54856521 135536810 289342411 31805493 153597090 122634606 587594909 807172975 991102118 629467262 436046457 921950046 894988975 697907492 317627012 254740659 941659008 416805441 115289138 882927415 244580121 502133317 966235379 996558077 19674742 982679628 672648709 66498001 310265299 462398478 480886432 219048974 704756015 658891149 752128581 859185766 10357073 100173808 919018280 383723114 573318704 648411769 967301056 979368414 327624232 566712855 299807624 468618201 899304765 116500978 839673737 588071916 838241922 289894660 330676844 114893085 748312901 739297279 518596265 669589768 16846425 530044457 331698893 673948761 398127748 73443939 726711635 872652726 601702265 971777389 401054221 193976872 297322626 197240064 293426690 980517193 878791835 773925757 341486078 630451556 534465067 308349730 220074320 412147062 153948221 376779402 453754776 410794232 101348863 586922659 653450340 669356491 981438956 533274493 121631394 151269983 713759072 619122230 144942111 272969493 992590020 798274912 331320623 120541971 679720455 725175371 994564405 303609706 914783031 539097849 899581784 449273648 173611809 885990783 280381794 480271047 673348541 604457353 870906533 234269130 272562640 169533825 166242352 864564957 569216840 955399881 887677264 67983535 656153321 423177096 168976623 583537389 2017312 718512924 601831675 49749479 719525117 453813750 797954370 438112364 267526884 115305502 866495397 994540891 714241555 278980367 808652391 298238967 418976074 716528868 590510919 235006912 74749758 700442738 737677020 740583241 580463500 190938947 886437745 211688935 241552576 912979153 638414392 575758872 734918696 880362781 974163541 98952767 115136849 198396637 495817542 837358502 760181835 425249316 157746901 755757265 26106411 848218245 803902235 137860680 661143620 272521796 861756213 110145683 913162961 375747824 972109256 676378813 710924206 445017439 203208642 327815698 966927071 759527436 188696829 18809509 990576521 980218675 44393178 416667433 691910789 693858789 529311566 947022776 914135900 624173688 418948118 32188031 544552056 77413562 967056044 536787906 765869427 502446155 794543757 104298336 130519091 284868994 472092979 243713335 803351654 819955694 465942759 275297921 313473523 941703149 123886208 886898684 143819314 863270731 420003955 35884775 317466070 477197204 46632470 762183733 427396124 420882425 86171049 257890594 837299386 858099167 179031956 307445029 370004973 630151797 163278281 116903211 491500760 985792732 357383941 163977359 63652793 657853101 377810906 22081359 669919867 672652673 786817123 848969318 644473445 995050253 81978732 245060846 440544968 726541895 971304051 385047864 905077085 486833193 393416467 833424533 730739479 819288406 180102786 409468418 46695764 76874696 802786435 814637708 572112561 631423590 700551704 147777516 335705903 254478552 705361792 339567428 186232808 513486938 881482610 54844990 790480681 122180234 384092011 80536457 332029922 130454544 296877228 496452342 632726222 278661856 130662931 992924092 727330234 497146825 614095661 431408664 51922109 200104770 814318907 971947834 240794447 150192225 165982574 751195465 224004573 541964401 211632729 644487608 444029346 23603398 650937603 431371102 54190791 777803201 148911858 617969420 354145791 311476767 482570775 950153575 196109139 953536524 331873892 776565040 401267701 337745765 591110919 848726347 874582880 567896995 267438822 17684670 15839734 584241964 372212391 442737892 347149410 382316882 531309740 943047584 368533777 120133801 314293148 419997303 710494249 316845536 876043567 134672762 196237073 705631140 867908629 61937693 232479129 992816309 636232859 161620585 491471581 464933482 340710165 634828404 356550418 824100173 416234926 969205287 519055740 26689168 728320816 850043635 235743328 858752024 29301658 161289538 50966106 875452276 853552153 412738697 521990224 758820271 250781260 863055772 944397937 172043778 934089279 601931888 563629405 939059703 670369485 79297924 676691761 910900058 942799236 913611393 31763197 216536129 996716403 537535137 854473192 654490897 452433480 869520396 118958108 242892931 678172845 376763084 620905972 237026939 760767180 784810831 491090711 724426416 550027915 794358706 868386145 335088380 346993448 615943380 390022913 818844799 913618392 740107888 856669694 224437537 256072425 705054649 181002087 732637871 924481435 668474850 107222308 903552590 891819953 567473020 798938013 6604508 935756180 276441321 262758678 125405331 314438299 373547277 74018946 797277958 142321554 121362679 10978241 316633089 520006912 829880230 80914838 109899721 43128266 85606392 149282536 1652424 993900520 502526230 851574938 3151969 706818989 87214306 373697204 413587891 149724640 200725920 223652649 239961730 90890514 715964795 893371694 153220060 287692318 253199416 45546591 786420277 141756331 283232813 628720692 290418974 453753653 464631107 782630161 320758749 89648755 764686350 878251146 421337968 329573228 472861776 111124626 357455560 997205875 934417026 762398994 678731803 512205489 500192885 727123407 767748555 403365836 529612251 872149095 770967614 843171016 598320541 923280073 342490675 979934206 763167992 530519178 346651822 192273095 343919762 11928113 71036905 486748022 494966075 670932883 233465002 29782840 499320577 441819466 816082337 317282648 327739547 630007285 223429863 188041156 302918509 77112656 516635507 712322345 742254493 996227949 976575837 963929383 197333497 961466196 802429294 400218009 728696600 612904237 545674518 613514535 381474006 240549776 629771656 14259806 916937163 646744468 809482792 436571146 228851920 591215132 864711845 815032113 264718035 117396397 703168181 357310404 778422850 180472582 557735861 212325444 15190891 87345494 295345660 364209054 341707063 583187078 560317934 871130113 491298204 538267838 907571015 595241051 100477701 549730244 849904895 885728189 792728144 82263503 555764606 750367919 679234886 844384576 232768847 791314793 980103901 877322848 336037040 451833044 969352837 538406069 810180502 244642248 128462403 148997838 120597624 38724799 288108217 592590052 509552365 762829430 638268485 588284965 995795274 792478849 74006857 837391978 805778927 841520821 826348316 9714322 448083382 756537026 72684294 233733189 733409424 750596159 41101142 702430856 716223198 412608509 260909369 442622713 628117361 847439619 460501690 430954419 93217034 951264152 414231405 221811469 595426312 615512230 404016662 970545227 933679506 369560296 75569793 623968144 854496071 978406881 154233974 90116971 414123723 803831096 970446885 342295127 895257844 681868528 882493182 247581626 728303349 987207438 522226599 164652571 587684545 440397786 402815556 58835542 810696364 902220559 840949517 8076979 796307197 366876402 266773454 624428348 102654781 472034745 205752541 205334158 590301286 46690455 555294201 991350658 884802704 499852979 600250771 361697534 700470881 811786241 938467030 88012861 580949446 620512913 237194948 128032769 348093195 373766316 431634694 739782668 985413103 849019711 971804732 335704435 777823865 635068652 722891647 320025870 982991040 38978746 872017647 597200276 289228050 750766611 46228033 308430808 834036825 305641748 361117919 65333297 136723334 318557638 872989037 10256246 585620466 10854021 412569166 726422701 265876632 483459281 336170487 495775017 928355008 106772350 293736227 418587276 219451882 296961184 810897430 221626186 86532195 441053970 496587900 458620476 351305574 582682997 219949908 216595808 937503119 176159954 12368793 706618920 640896129 992011135 976354063 564110751 134194642 145740237 188631231 757873894 919775728 73775153 222191307 138650534 194975033 16751566 249222810 435530307 601685507 598176200 661589688 517238348 560118720 49267573 870527378 674461581 825557759 612254930 281423823 880812306 388457498 369916010 68622170 351137263 815785040 714718363 123706298 105704084 670410376 738612617 431961666 451195006 368015106 245120594 619374884 361426047 810967665 484848362 463185550 841003294 118845820 530799099 701905984 716587397 934668675 408679356 55938315 539906832 436490413 183139793 809495566 157803352 896967416 322775192 574468860 60281900 853257071 541177058 353561909 961041319 338873306 729848818 964082317 40448516 367092454 932093475 198948738 160839059 842622861 478538834 450407422 285687169 402104894 945657373 797931203 842368925 92027819 662359144 536508960 973974798 162405076 884634418 464090961 551838527 187266417 984228356 991711090 754700412 674915714 503353083 290519480 780035064 568216325 261426497 944634475 910208226 50986938 452977405 211662255 846265078 306248009 641950828 812674401 21298821 653082955 734927727 840873320 33283242 32679303 504712561 702628916 329120765 756192231 951949889 684696656 155224659 720066673 339802056 188058864 696748326 564349034 337485942 228307509 584857914 276198622 529747824 271211866 332072158 181857839 594923474 171439553 309491152 292140587 630256437 54578566 293632353 673637823 165838604 603463688 256152318 289668035 549148960 562675979 11184931 76840776 372395394 254957022 108027386 323507622 924175177 182359549 546349599 43815708 778674199 585724649 401942686 179092567 50294659 188398757 243064881 96347929 184101004 260653202 490970232 574685602 398674311 344395791 107450922 115176574 50458577 384224738 265290274 789054281 988612966 876102666 925533524 887917596 241757926 212934179 272529863 900811437 693758560 750797572 803575411 347847859 563935020 305676522 262292202 641709344 374661163 936713461 405607110 583744586 323188493 13624967 762967030 872660088 758622358 1942195 592830183 6780587 747891446 604613560 748804151 317152475 875502766 220762368 854628886 411166829 216735023 419103855 372317649 327691915 598700411 581029914 990374860 622632958 960396146 715990903 131047352 819159809 351128666 575368037 400815820 48964279 956425688 854718068 142417468 921679975 168963039 807057188 200456206 134663705 584670277 440141620 729178085 717880229 817953720 965288100 407887809 847388331 909691322 577000744 110508437 820059737 209455532 152572182 741509944 886258066 409830614 50045214 75195232 127886560 333016027 974495188 89348186 634270389 960981889 56025207 763886044 208608186 588165663 320293010 541532382 336376827 465394877 887865474 185396810 240512244 576666527 876133406 187397958 402202656 117024964 834833188 764074266 851932710 231407838 393945680 347311844 980359216 729041674 810182946 611700126 452465381 52874148 365701365 326133578 904731729 170836420 116871702 308488385 670482295 286349507 786794975 567957450 603948124 867610057 69856310 352680882 588279943 105946773 358461763 134369639 325769404 668118129 499101808 533794711 690880714 351820180 904729451 157699360 279633661 533474427 935109404 435767062 117211081 635237680 286974877 804619851 969164239 291273044 726424982 164567386 3242083 881058091 78543258 36050133 129080974 419668835 986681787 234351007 967797727 929427553 224719831 897635868 626928417 159430516 808146563 542966222 823760485 739376073 276662706 495008255 820156468 548117768 451977693 682432026 865800601 79756783 154643291 87642146 446935790 527341508 602284226 754536876 763175206 259716404 767588327 93276014 79613365 648063938 932007977 600926240 101080467 355940727 903452189 606244958 959355220 811934227 42776274 787484481 864734496 325426272 960137058 595284993 241374398 657679828 193236024 881814174 881821020 951042549 402715378 995697057 20305092 674400720 516843682 221736568 104158150 683587519 886922504 2557806 313471878 678964276 378893452 124479774 839778971 257241017 327444084 590293174 132002642 387900834 643452844 350532049 510298796 467999559 951178654 16060162 93160769 923389857 550599150 722173362 928610988 367181047 61260967 380553182 479000838 222956169 629828427 624933220 950019793 561946911 739392353 237858382 505839841 153284957 209595116 907644592 179577243 629578513 585096275 547693654 479350598 78610500 371222096 780049236 346369289 697551500 595700829 207544426 614075908 863858717 541801467 927803909 630840326 591653407 907391822 927190719 662241917 121538787 153943511 761184796 38792686 644068250 32253005 719525656 443825669 640325230 386534261 238540023 964713287 511405107 835356586 474332513 832155115 972715862 881218172 623802035 831552228 209904719 674184355 363868692 251610841 448107254 98170068 617909814 736873318 903712787 240231722 786360553 342837801 763493144 36046167 247055637 916301722 308335144 282101001 836318381 995821089 835120246 172916841 614362297 530430323 484508483 138903596 305050551 496110313 954616337 409136444 951720675 951529243 971232781 374759423 366122742 568638580 926775227 435999912 843027335 473752200 619849057 796706165 110694277 373354777 329586061 969899815 402042131 337982314 182090108 510491269 251357706 450968182 753831384 166291070 155771185 468564080 204453709 652334804 276262947 357884674 771249408 380881425 342332447 303684072 882506142 921176668 994181213 386299715 610731095 823050358 876595487 576286423 995312120 281415830 995195857 553810106 301245121 47108800 296481021 363299066 817675184 626996082 467911785 548072973 733578267 681639178 309700620 188913223 534531407 479075939 55724135 456483703 100211849 635884476 84027973 652934427 123670015 842871505 240064137 346608507 424037422 346020015 312342180 717588517 613131876 719814889 91418355 735508743 345202489 698115763 905444795 365500466 128256117 372720469 993188984 467049964 45598125 674279662 740566720 522093761 148497699 676587425 58800143 835279798 798181945 422195138 646016541 32934786 634831622 27415703 668358859 107574841 672975630 329643385 965206993 423486698 142604687 811068825 460021862 614373764 518988917 311052322 462472610 558244942 898939304 981925363 158837357 147849919 982104648 421221926 561779986 640292026 256635586 621950551 480056123 600990242 417570489 556955735 267637711 316970099 286508718 361564295 627830521 818704797 40374036 904504542 274506795 690012390 907964412 459527042 296669025 165421700 772287419 73024739 54604610 586857035 206099554 420886838 583670881 116922038 576961434 948317678 44708889 720892693 956222436 200429166 376735249 211686477 453754196 771865289 353934299 501474477 15193146 666545741 265485884 659296503 600689444 911372608 83561601 124343995 327229022 71400308 280383768 414450757 999261626 854209541 948885728 594512920 102036797 912875368 89617882 693083280 617504921 433814867 449032965 286783544 644134745 280227252 372659059 967005708 347311721 609190052 699677956 252372924 347827949 795034512 3248817 339305111 494913376 785402917 327723488 989855878 434970739 889326507 895257282 592666749 94894903 683503957 499901616 317704427 548766026 650792565 494210834 957606858 452812024 768944933 158819378 995163186 86662740 537484254 831610685 142284632 22987342 486293761 444263727 289398819 177244813 988533448 787149217 893519834 400979404 299325799 991192571 965895897 700647502 892389153 977462243 31263212 102782263 185409527 195218141 774432924 830762524 662865292 971159004 171776251 17512978 685447795 233873374 266705586 255730490 388957238 628270033 805544607 921657632 36156357 517836973 665458524 254918297 369594932 802259377 929380011 499195871 753452270 482120041 859160280 405385924 632226696 861365533 582847119 735719983 238005312 645650427 37559346 366604143 164453431 462748831 775487909 775766146 997834059 463095530 743139911 980128217 883896334 413477005 859027303 870301322 147383154 852595351 493096199 194086338 307884468 76261822 196943541 688273833 321197291 710173959 179223224 929709298 815896944 333331836 198281299 827911212 768328386 717116366 423315741 410003328 904401308 581218954 758255377 581178213 884729091 687310944 556784111 854660371 958851701 201279903 604255474 653717153 70641921 545225043 324819098 483830895 498047293 971650478 774001454 331595820 676662812 821519378 88714573 658832288 615969956 868905738 253587645 92169958 445254045 30144921 21078133 752528611 250435266 762212584 104577591 697271762 571424958 284636110 887246139 939304062 816022663 429731675 628944202 96195181 912017609 147932822 929684542 627267797 792370759 917549413 38448345 477894689 239624095 526762696 933433411 714940349 802868313 771743833 231673121 983468343 648274645 608309653 483345762 586507762 570876624 130579266 532953639 630750159 793436410 203978008 517913839 62981769 625704352 306441409 236204798 738419163 60703022 678422732 42181858 890853940 111008545 400442748 709277046 41093518 738108397 925682427 479904325 221647345 495843998 982726732 670459440 250377676 57980 411637249 829484240 150722090 337449421 811789539 304956343 827951901 808184092 725842283 617809782 458302852 137668277 648402033 253106148 854362010 924599933 803956281 351487067 84214269 494734606 978337043 313558604 677589834 680874473 173683764 503501482 175021133 964481861 662883570 245235644 853710812 399466670 550047261 363573731 427778801 870865076 226512012 899021342 186791072 178694374 510218784 372395278 597172895 111824213 232373191 172940697 522137803 757368034 301096750 785502577 914047320 363967219 140942168 877558529 307971415 432936042 40821416 94747020 786705096 501584005 291651210 656854252 541305024 334553696 758184818 853783736 18741781 619068035 675108861 293087747 712686858 418215459 820756634 974785511 298937858 268527634 931851395 789398181 791152573 686845003 127748533 899436302 842592535 998495155 771009456 457883650 963437748 834446937 22203930 376173930 448974392 100061198 112396598 279605817 125689914 389353720 72664559 301386032 921225136 331967589 90234274 443343270 369761524 386600310 2666162 448797800 513389709 453937233 521110002 172482588 283623875 399601229 26985387 532116643 151423172 941826090 798032690 94659467 945262644 834755583 489698194 305616317 931523396 920668325 882049226 284298235 421932460 411097982 435689445 632348184 513662836 942825718 879232770 182870978 252160172 292770297 921014083 210674513 255442650 14822093 126948172 766956557 937969770 185925950 513108903 259257839 45089161 100248883 495024579 767210845 139291374 875151420 16296819 158547582 665177719 130152365 645607495 488707651 521863565 288627189 573290875 655744692 103417759 205971026 832899111 674115110 394648451 511463814 252166264 997537054 528219292 762139432 211551872 253050621 968297635 537884756 770387764 475166522 524894193 786771665 262115737 300420593 222720553 315628913 876378647 568964570 228090077 158289103 869657785 321084249 938760555 210590462 725867682 976549568 381842118 463059979 131655114 805071288 319567935 699426006 662997759 336649061 413522553 244209215 58272337 791318209 699920700 320990809 105728424 157688838 837413788 848431651 238654969 984470882 693755850 580984140 234551753 536659457 308522441 807051356 740286265 488239780 950973220 385945569 90791395 524252005 964796669 92355695 278597612 665943685 7120153 973709235 396003374 468360318 105594272 100847104 456861257 662871214 518532565 561867875 321804411 746353701 514413238 56360290 718284237 173889747 904502396 123799580 193560097 13967794 60447913 91083053 591074793 9651000 831243532 588258079 418031541 368572289 604276442 356122011 881223227 856740319 751690181 71768103 999178580 140268328 609749385 619061752 193458655 514452125 981801213 381441513 520294156 591995509 651037904 770841844 894111888 264993949 292604374 660079850 910635615 717185176 652854509 538582054 862742893 164450306 89842059 668962562 496197358 482284280 162848474 942306439 122869189 694100014 37697781 156788094 310502179 44727563 975532074 933003649 181193063 427009740 167315297 929629637 354570414 752216611 418099717 778707642 621469958 80941500 551856939 92362271 208709934 37167642 631437493 160243851 342387367 248418361 964581851 544441894 805498916 344733239 189193260 217455741 820549539 132603149 278296020 444349252 460234851 157829421 131536643 899993098 110890928 491230453 65239008 490883788 707203331 276924667 515417211 25977072 478762630 683491336 147879731 980207389 208494841 346294864 454757629 943250085 156413216 535593679 962220826 32550485 790189016 285090076 537104862 254413887 621222857 354357622 694818061 384483706 670317939 120022948 322591444 533857925 569338220 70108457 408765515 61358648 516562242 164706524 128631982 327821619 279438921 49393096 103446410 860491471 759549987 688074403 202618570 264741783 939697586 224074070 836110126 764436953 865157637 315856965 300073375 106256656 905053673 12771361 484359836 814786140 543033203 666707330 914018517 385871318 768976963 139848291 158394656 176994673 91240515 254953834 76988597 554171804 674009950 55162004 911925799 61351621 842350582 139101324 438846809 671322487 616310496 97183461 604432437 588072878 568712367 341339796 837790573 967805444 879938300 45558506 413449185 753454670 807835899 738534754 337690544 121831355 163489718 260649701 308267650 211106175 500185068 676320663 772512361 574043322 111840323 897393224 869641616 919950549 888216285 277007278 514915956 189344266 28440246 637691195 102962623 562347381 737544851 718544477 594696962 21539552 792394900 792819698 856997671 438863221 912268451 389534195 276090510 491202370 338462367 196900689 802954572 231798388 152192439 141668264 396997275 949359730 946005112 621739080 804616754 82674640 212901237 575165008 941554284 910691232 185918263 310886093 174311091 204294845 437388507 81742380 155926088 956757339 837979537 746504322 10155600 113720008 626312950 831705529 86503994 432385777 675638743 921758969 727680380 320409639 739242292 848528050 694577523 301993191 662972868 471457439 566378122 272431380 365572215 332749860 124480273 909636237 24381997 794728127 942644516 735906457 446508284 243620425 330905935 80405827 805149522 569180931 594377846 323434892 531404232 86744024 781807335 927154731 922161350 342042205 518981742 125675342 488531797 111387557 729050420 520100712 762529817 321835560 898256907 842696188 103579297 626731694 953491733 3316285 911424454 413326782 569850811 142250859 134372054 227394444 591145384 3181164 161713259 853483437 186802898 546905063 297080789 633904736 945240464 85505821 42725409 107889875 150630322 859705750 663823828 176009275 37808915 701920053 426431730 273380372 364831238 754932781 50643932 838864848 575784733 291285502 973940637 102241849 988890629 991918860 181837346 233350421 356979876 850883048 272239385 828960653 10960278 897788326 121144824 608869008 418366866 557553625 832901765 311934777 547397924 946989681 287828360 150837701 453667632 330163616 441006705 766786345 687064840 741002377 668493478 735342847 686026973 683236859 630323101 299769809 238584386 683184171 853562648 85853617 965896355 192395904 603013219 514848288 942332507 590528714 567896484 834100839 763792363 315353935 741956066 339054881 899636988 298697493 992016472 654518012 896025821 765006647 886013304 306438323 578405627 588398806 660281169 245705956 496174117 653502842 770232291 344990348 319689670 713701156 654703394 636227912 915230497 42484497 223840211 325883094 891288356 256907346 317623066 835681839 407683298 537521576 976203151 130289328 17755842 776160948 318064588 594987202 131917387 168924431 665294519 264423357 952494964 380076781 34816356 795865041 374356908 720029788 129805367 595082698 787906254 656060663 16065311 570956328 270429969 520373086 893245286 791091483 622865745 589421137 114520758 719427264 358778149 258258165 710538141 330980160 404496386 483845047 278943696 464066770 815640980 538880195 491432139 950499362 781899115 919395517 490417559 870105139 137278294 67441655 58955395 148980082 2134865 898396793 587087564 865465318 733417935 365880822 534768945 574937796 886558474 466920828 906645979 564965716 168500512 360533792 362630348 686574083 358096351 105231585 500549469 781440408 364219284 540493182 904768674 4639371 843270880 269458603 178819945 682910442 802281716 173573710 486101318 122825225 167125025 314279071 430181820 636304838 792863355 864229507 721545348 490654017 703576068 173210841 465972998 803359568 750986202 28549672 921176563 465954965 924311410 287436158 663163922 326651371 104015934 419357303 95773977 70958344 87600425 284579673 868218967 762974256 72036464 963501708 672623096 494721046 222624712 311513052 385749718 476899561 875409101 523014614 9732524 943547842 417687576 407182011 432814273 241468320 242657696 850045278 685709960 295758522 595257007 106578527 236870731 578697538 925713826 716147875 648682380 169078821 715097954 819318127 965799099 176983197 802411189 115434620 600659685 293332889 188768944 288589556 727637969 159795346 382360325 100294511 346067439 645766897 929686071 258746800 493443176 338950128 202768374 755551268 143083464 104163792 548712136 385391100 438062628 534991186 315434960 159802229 920298360 724959637 252301139 222134950 76586899 137595170 375532840 618818594 529534920 512050561 691548719 904561986 80949367 717885422 559676389 449172879 7964507 742487145 267657546 41637588 113936141 925960767 284222237 845849422 955056625 736223036 206599357 668919495 172561873 431545039 85785566 294697625 40504527 247936066 342730170 562063585 20443596 464068102 304326514 290806083 505462718 291082579 75591219 752362052 609266966 761427011 256828687 2471813 429458285 199070077 144556582 315328600 729346952 730203094 80147114 600307491 334049052 834737974 654698204 29448902 359685485 708491356 865317928 238621016 447617185 857409932 139910423 847323786 420113116 306244942 477895103 321143022 369345337 430782406 106382012 962892417 964241290 790909800 820295640 248155766 880741481 743312843 684274668 220502541 91826058 768822367 818887274 981055949 580432690 139783063 964169572 368105597 442930680 599988716 708480494 328281905 174299804 400479952 722698692 45156948 64134361 109960840 87570840 903813968 240706005 645800376 8670673 362548647 444776409 23892370 208826834 422573624 415965704 205892530 921450159 867058777 269415848 801908822 563699804 339541632 323703633 682781256 479384766 106247768 54312613 52542966 562084304 431973655 152499403 313601410 564846137 532853764 811125292 769967582 88784083 399057248 937064838 638632331 341293860 41890119 725215452 196212909 877593519 201488137 531672327 500077835 649655766 875340216 688913321 495738292 394822385 390448208 848398065 738162356 558634973 817829456 702932538 499472034 653105204 459955658 574051481 253222539 393145824 886256009 379134513 787347956 422000846 261574915 694302392 143802573 73674278 933139155 72979012 815111808 81736516 48568374 198779308 433263884 689573277 752394352 947336511 134283662 242003189 190835801 273922188 472201957 869168633 758536151 359909217 561751250 844564238 641956201 498803074 181739091 396239761 161784350 585386913 92623357 301378288 535643667 924688188 449232218 49329565 246304423 208711193 427931920 552210932 299254327 500862797 116128100 504482168 145629003 274643284 651986857 955554636 697444044 705225109 835796854 112580730 155006961 40993498 261463096 381111993 508958955 499345461 154411554 519506086 609843928 637615199 783711188 266001473 957760623 754665129 797365004 699730091 145238649 595474514 615544212 998523186 103711369 890997483 165202105 185417026 554018448 30364790 250716269 363741396 140965867 773238923 429397330 51274097 701728034 489982378 639161090 204598570 410827186 864917615 929561085 413167037 977273656 516422745 339441395 284172604 15733279 529652040 346268904 96014254 125820594 873753385 183229859 758591753 617425429 960796320 364728592 627679879 308147787 862933728 617641560 204625794 364090079 965108161 291317733 921308914 574168073 871014044 240617336 431723448 839439015 781304231 142400144 167499251 960184259 75081170 681154466 249470069 434614959 200906625 873689866 291917989 441542372 476818078 358117402 170240389 479377121 242160341 464053590 781535579 315275184 466019965 641738354 22806977 229725946 616507184 347349066 997991757 991982383 283909027 899728966 163502548 926118024 831977999 455779923 82892328 428260147 83487601 475072274 679264962 644772710 44625406 675195186 919804113 343807630 547381292 545968266 316914265 898975254 321348532 232724351 66873459 484398820 746204810 646628432 101061267 262377143 125702365 242670473 632362723 591416038 822020913 768716745 283319014 61665277 40617437 698543531 165003748 431395976 354690503 724453411 486544845 382729593 76713303 574879064 943841936 552660702 711748433 984864609 939607295 188508020 450804859 738819522 904218797 762507436 77952381 506031582 119677010 366936009 326595021 71685318 821164852 677681410 392569120 600933356 366411265 271522186 63936167 908397757 234897979 913022827 473062222 110805099 739399734 44477658 499553940 300964121 860528412 53975901 746109943 207039125 833335026 479724749 787208265 350542313 279697429 970149763 992400430 850694562 194121642 720320356 300613966 647005340 304160498 686027137 120164267 398540352 392750891 250962163 437144906 435791265 476446673 417189639 934791120 359370033 881475633 790490442 665108553 88333220 454635365 599818663 290994472 498116118 200137695 802579006 397770798 294099751 838092806 154737487 622664135 390865015 278095701 166045079 725394579 861751091 101521861 374308214 7045704 425839312 272946838 263075959 221239278 448651271 40065282 374965827 136159304 113682112 565315326 713222844 53332662 637187866 192368575 285739294 520456540 643923352 417199533 196778591 571635371 749362208 34354573 963562520 274243034 925399467 191673544 661366000 388222566 388072591 489816580 326592993 242162249 865829209 67551825 961309844 577290057 536765536 183759474 457145043 808598065 889264900 390646890 260200610 164109940 595733211 16422752 306111210 553374607 128624847 870142666 852702937 87147009 352030508 954604710 781915085 990301986 178092125 567362799 969422587 648498167 958237126 575613756 383444425 101319248 500016326 698467089 773980552 161468586 670327343 903021449 250674377 893296567 138350066 618400528 185395219 239603995 775525152 388935978 80359557 725803304 620199314 798842472 940491041 883953273 667012020 998233039 757794933 982048661 255866000 72164709 907653390 793039718 941699901 5548168 162724126 390408265 160487721 596321779 822003066 277051052 936960465 249661118 548224662 53605389 436746873 985053374 68553020 139263363 771685327 982081706 473049690 680158835 863317142 99834182 147104549 419645076 228696042 292772442 691101434 190422453 593740579 689422372 98289741 921287613 664645625 57165802 725126216 696308853 496987121 589037559 575151496 67273925 825462982 428420421 170411000 495367398 279628643 843798238 960310255 769831091 829560915 715789030 744574802 12523130 615947736 96858247 413493034 935406731 702773590 918534859 220533615 430588751 867412364 671904848 42789996 803951281 196698090 559727928 556978381 613013026 428425351 345660183 837978263 303483358 780617898 389707280 791861180 288945681 730365548 585391861 285329645 664740497 878889659 240420132 278473606 543324412 973398773 188093689 873188978 478162498 794415115 905746185 965882937 707899433 349037148 151973954 253719719 406191804 515574266 676706580 269327922 169189662 18954300 764223490 373534094 658468512 382027894 364539148 714153750 169193079 124217096 970274308 743421133 377918663 230227669 508174032 597271032 220571359 602333465 828847148 666024057 109461162 179151361 541746334 437624906 499969562 156698781 146637367 176844527 374910446 596018924 11821421 13007924 484977269 23565457 246698123 613655908 172382912 914343768 953558798 706215058 486895103 693973078 47273894 214013099 405700324 768626656 254583264 809294847 340791274 100076071 130408258 75530846 47607807 937007348 556657768 209302361 543718066 714315012 168708209 455489656 27682600 301316837 580763806 6094504 644390645 2752550 892612617 717142191 774883172 447199664 251571455 531975478 805785161 659277855 298949772 963694057 531055957 982182437 51549702 361928401 559320986 530038010 626309730 304971698 595000622 926730165 379172151 946197612 306552584 496428759 296874749 18958250 812067377 558565954 393823072 583603251 234602903 372834598 735884331 409538022 519587101 970756293 659832870 594116820 929529780 319129446 656969477 522593594 597488053 929544191 959811532 818274020 193606364 338026730 674232682 40875584 519616046 329506878 325740 659534944 880819470 546413069 451228994 817353276 615032968 540291693 371217668 410045163 960717051 603647301 110448494 216988661 109884055 320637160 719090002 201461154 55182085 568328501 816028233 429593580 909142821 300032655 920557949 526993837 205552044 611107486 709883821 878552587 769327973 937630866 625237125 478101417 256852216 725389004 444835348 844178776 631562147 517450777 341573813 188458784 608604921 612230245 75756644 542289977 300073714 410471922 291849516 917696187 875500624 78487473 44864651 948796679 866140329 888470156 559667668 895211753 656833531 667169425 116334169 876143659 147034873 61907982 48371644 405314732 307764555 513934563 332676374 787034901 134512238 721009469 804201226 693430966 709776775 955519844 103340883 487509912 50236604 120434785 771810510 723732605 35972078 407777000 685146363 545571976 758771906 952804206 555132226 32041626 181848586 633105 284541686 292488609 592829201 886474430 635662390 952439216 785827965 417616785 637797484 360253047 217651269 56759716 325962357 106299479 772308924 36136154 953767156 547013236 700854508 700078782 278943986 443390673 273543371 930439488 959800483 580456057 538837273 69786795 717908703 474694115 191017567 648447679 40129224 110073864 462438734 483257581 326497653 140265750 629302590 539235065 515594200 462434121 519756470 285056962 494916455 498157311 250628663 810826555 201130665 829715207 44270014 455619616 805880967 754821393 442042233 91532224 289920727 620317740 269710705 48929920 242528944 327331813 812517191 684567896 596919152 761239517 823708638 344413759 484345217 238520811 162803872 439748866 923818317 149400348 814534640 467860801 576356062 636488064 606920077 203489598 2322488 492652499 525188006 104134005 467819781 386505327 127113095 265742514 972158789 826948786 943518973 103533947 171229894 813434370 298220054 400323470 201138996 309595776 257127240 335062989 928378025 983834711 710766284 704193030 954571534 223932881 985765126 879513544 644647986 813090884 276104886 42001955 926165453 524423860 105909162 791326713 734626499 924512097 793544492 364069436 171005537 209274392 833985289 582462288 267573498 929797790 584464911 893680171 353530238 640646542 988531698 910689635 570647172 671665228 368603827 829646738 904499194 853143819 6854334 22435498 74732595 841178367 313779655 495804642 377475394 589133005 852425393 917643261 556242499 687337994 145807196 324708884 964622139 158999802 773545584 947065414 369727792 335457467 419468740 685337094 398933681 792371103 639151591 363914773 901572238 580378511 633870692 270153248 750257578 45442943 178188081 774313185 870845679 514304830 440561992 140547272 551010056 223725135 457651248 99024965 103587737 626464800 377912044 71784498 58512061 377372958 361668423 247514585 360597962 808760299 611580598 149039439 45411423 174411020 116183921 795209499 400823107 229602897 39154992 228496400 68729797 186944234 303200676 39520261 885217007 606761521 790928843 915442873 605932889 257682126 761968169 142647112 439613693 420172498 631310142 772874359 604866287 988382290 617500163 86311801 734081561 770409104 471044780 725759805 979912759 867422724 255988639 753979227 806567602 925292007 758562345 788144132 283096574 139103747 417643124 63513343 724747703 884285670 962648481 54632544 388786930 293048937 793596187 500998428 848988114 891085559 205253438 376354866 122717519 16705268 836526853 365487332 29408813 540047342 800828486 431013219 12881486 820471736 280217673 21838979 688055728 221697212 121857820 495252874 83215256 362565472 960181393 559132115 863701671 418654360 665424909 625484721 484987826 990902993 5421515 771136247 535569597 9813398 577797030 540854468 704099275 750298228 727585413 662785726 369353330 45254822 721424546 775886005 340645764 204717425 993356903 13904797 687478400 124282188 529112462 615911743 461450495 527712123 360057576 812133318 884873586 212169556 198962393 826418351 183006737 173848419 422720023 80733005 310924058 185386462 952820244 971475879 806029383 547378764 111965752 983118872 865485487 112674661 435236881 761652757 734272025 537608817 266989881 141718620 893775498 282265423 669151112 232389913 581438967 858486266 427224161 608476592 989341753 475516488 280935198 360835781 248668481 410523879 540761774 542367714 501842278 680051829 992799633 616276490 68783067 342026555 482907175 612239857 893499899 838098220 146590186 98504049 864735131 861931606 404497814 107898931 159917441 225166874 766428745 830169714 678870449 397334094 164751709 550162999 818420418 215198409 255303841 798154172 293509184 213256940 792336897 308518027 474102990 657678432 394938024 466541838 386190836 319822529 915078499 711849662 560338165 591952775 820600791 113261438 235166363 847151687 193588001 818463149 320045602 290778519 828140457 141607116 553107861 835045480 739700660 298177897 725647333 299642818 886758348 424912077 956413112 158458466 678328541 569874332 463751817 151350575 475726765 262898600 592318887 498444309 776321540 996379040 327734339 919253162 708536583 535308034 754141204 410412866 981048053 530341167 769447880 820544427 480093461 157026585 234462002 950622755 763393643 814698656 698354414 22013775 212560442 748790780 485741076 151356681 967241514 298310435 518831097 505901021 484688216 577954527 579755843 123848136 450127583 100109603 991191459 589349069 100632691 829543841 383486884 960265397 812794493 953786315 579629387 876409971 910570737 572091252 586013140 747999869 794346934 476135637 633281791 127484872 573360005 376397421 184920336 99186184 723559286 432880120 963934122 550965247 474735256 795612494 337537397 132871356 110144201 628752307 286777824 283964443 753273648 397032188 250394715 507432782 702064501 500589146 955731382 625572658 701598595 964553766 383952598 395293741 798780240 870561385 861309245 431152857 979406180 212570765 52293421 878894701 256293647 508698264 823842827 433943407 541148721 258233851 726597911 595223525 850668334 399740846 5311011 162358874 498109292 656705790 968030097 301185275 332468322 626191918 303551545 196007255 558197095 361708561 658864840 43757383 923860430 302394214 614446790 733609846 140205979 553521483 167540143 488166479 197369377 131669323 708662227 515485913 905623909 325677051 202767463 780368244 725906268 488453005 185062852 473162189 496680887 946916170 695001587 762089280 31858198 961585077 487832292 575245040 638785465 362616641 652798233 731031078 128417336 960499843 376033277 947528774 863715747 656013103 927228689 107894630 597865689 926869024 162181481 568720050 676023633 741604911 477228803 22718257 269630850 779792944 585217097 308562490 889581579 517521315 139566916 554492083 582217745 420900527 39916043 666643615 201817486 158370701 1978857 938021919 981610855 266826275 65053834 987290719 125105358 290894307 912173284 992926368 116809871 211558282 12098538 943296764 308062000 516049298 531342962 798733739 62776756 197749757 388227251 240814076 129760575 947294815 372929557 470438994 812979357 875329508 421911009 50919242 333450891 874709373 974988205 285182063 243474538 685303993 141297758 196439485 129618347 919015801 975327289 560936602 570692325 967950514 374162644 530750559 393527923 662538027 560793243 199347114 901442865 737720011 641536161 35566875 567174254 810722715 112432447 440363237 56852546 551390517 246407625 809390218 176304332 995949506 550260554 939750116 275342665 524158119 32674174 92111832 937393705 751286173 122998841 606505915 838037445 590311038 242637338 336619273 372043438 780048673 772817324 651449530 722098271 493851945 438380485 10341302 851037970 184572067 821126491 295641100 232296466 506701286 265666956 912834857 374633142 974314838 611016761 835105586 492907829 336661994 811641845 181075656 155223975 557211703 310060098 270885410 966332380 813734979 266871766 81950483 7569243 245074040 669393770 971678003 858296411 454226430 412202395 696266546 365056685 859533674 534302440 806815219 678154962 373590122 845525635 970779255 501506369 457993662 959856522 131600134 788150502 421223224 51654949 333137991 134671341 683638406 696473102 905451402 184389658 487558857 54045051 413375782 407680180 643611514 823437151 17401708 204412832 302593564 379003795 57112751 916192371 852329413 224343997 376485110 907877164 36288236 875595384 15030871 650636737 792421527 542387329 569195017 286755694 780930639 25703001 350828491 873509931 655573378 698568383 114649317 809237162 757842479 916297189 587449481 411171293 583096452 423236834 387732991 193759959 688633754 293067774 303918347 182159527 930474654 557987438 86990365 360411635 831758883 565337664 275765880 131900080 457351189 304859356 825834880 686364378 765347399 368042950 500556837 862795264 558202260 936297352 60436751 275928370 418061906 729671621 145191792 633511517 540944366 272988811 888811687 703530267 35473492 580762186 421833186 721415245 266084353 76717855 725555871 748686515 800044145 961802538 38513960 728747179 795328355 415934921 781974355 931526138 925242445 997698305 652612758 863718048 76506964 173614616 860942092 886060643 271682847 403859010 292874710 715825728 996629264 197037984 904990645 192174925 977339613 579455246 677766324 443899962 984923451 57410712 316236774 179590706 854115613 900227411 588344000 792750312 896333170 311243447 43214248 592981935 406624220 531610630 141033062 651551919 88115764 786663509 488377399 660738156 390668459 653172633 676398369 615285403 363804888 157288558 774390860 214366154 32817122 219930596 564926059 123229528 5758285 42495838 955885165 172241084 587253560 723110556 237666779 874166043 456481937 319357665 61633513 995990541 150973858 118590455 948821764 699193561 654343548 558880745 415243955 804779031 398920434 153443551 767015971 602137844 768948300 660479559 639290100 674843463 890344798 1680611 370416335 23532409 825401742 778285138 587227980 153158778 443712211 263855978 226518163 584543808 69478281 410462281 756116269 922700403 536516338 363113735 65245383 41102784 831547509 107157043 915395437 230280434 55485688 880831000 193511638 663369896 639221058 379378053 309563797 900843034 408901205 29540867 430186166 136373722 174877395 901241154 214429164 311464080 360627604 724390968 438536080 312240986 90154480 317316204 718620993 631984594 989460917 544330626 244718557 313530942 700075576 9282213 196061805 24351003 793162116 65161965 940850024 281510622 574070111 865655968 883247959 559608378 921015156 961041925 376382186 397873499 176660038 451896457 836050328 896835027 399381149 900132984 179632369 358749430 496563894 259313140 429241137 553640929 327127619 636849428 214132219 281745763 212515823 559607131 261566323 815632271 950864652 864828544 405897073 156882251 676512544 246855171 774360553 903253238 488720220 47388244 495665316 394087964 441801282 73724913 164492603 645552993 198243069 477823370 127945741 699167762 357974816 654126474 675827755 555372786 38466627 829727073 431872500 736516423 837699600 197649372 114086886 675913745 379661779 942106259 71904319 269254851 23631612 197797418 262307165 344614126 298073943 809756528 882098843 23568474 353661290 211725812 358697560 932960451 953403623 665793138 20468182 650027970 502675161 698564848 398220214 485524664 422941437 567683293 601209094 640630413 488707089 615194254 810565320 862754277 869773709 492365418 539059163 924096225 629692708 611095037 269465051 537746251 813909270 755857417 935195140 419055669 4648074 415062844 286007195 972619119 599065377 450872459 670543487 268411630 340512405 219339309 103531783 237493910 13062869 750005803 957991243 362462250 331012971 805181633 286738206 695701440 684086739 129869979 327166403 407725928 685138334 371368069 312646752 710439808 115250654 386039677 834651325 36248301 167825588 71804692 515111440 33722221 625467408 297069019 187311986 859854723 355934997 991299282 448571297 446478478 412030545 583145598 913506820 275318320 676652353 458495455 383620846 823739322 955363551 515776001 522529885 454112658 70509962 545891255 24439138 61786197 196497991 135754408 984983871 585020312 976833659 474429187 550726201 891681780 73020795 939594691 73378146 374195297 679409378 869523445 488389151 311136235 465205390 449730954 41108772 897524029 658399948 703894266 355586928 243561345 328699194 390758210 188241684 302646835 380127548 756872235 797844072 82690659 572578520 616950352 222065300 651753561 423743410 287522359 184845003 846354761 722607218 151848893 999531940 765186288 346351889 408105550 416622130 373857761 411917865 801423286 667173352 430673154 803513358 673845340 487655796 499623437 777783632 146324656 566312216 526387757 261156668 149669808 16698467 150830281 222473055 324527036 574853138 716715151 885353059 508113349 594964579 263535545 662699868 284777277 637154266 647691021 907489652 137315247 464787530 770143275 373493007 257711984 878656877 885388200 831346604 155059004 460343940 622679810 260813169 758653726 58715672 84270996 899335583 433107017 169151184 448956247 594279440 348985246 883552324 451846844 698070378 376991958 787416426 32851335 822835437 328010363 997987342 881963299 740207178 598058663 817228998 929278283 3993417 499157463 588100296 228067639 793963949 110267258 713123260 415352417 38249726 427254955 953305456 547871890 570923780 841825669 960000545 573723984 648175473 481171022 340377705 413406010 350362816 975225756 763013633 133115511 896300165 467549247 339521597 665615256 736654397 570843786 325033545 158784117 686774599 64938762 7347485 496297881 670523863 536353096 133218759 996140399 3053417 495570961 449793511 33765200 860473911 441718310 685333350 832959408 89670664 756644294 213982271 299433243 47304590 915802341 385043937 241258340 486193743 893328357 763988389 225369826 408541827 357296225 448988152 359834460 962946423 454193405 989895576 592851038 911085214 78679325 864443454 743578787 504728948 706037940 944829750 781083785 423375900 694657027 692608595 798753737 642848364 160739015 717964348 129690283 789082083 399076125 60189036 813161890 918839355 922644019 551699521 766195588 980232160 193025606 971492936 766720651 168519417 957363643 90025157 690972305 129431431 440153324 271530318 772419923 571150842 89053479 935915845 718678896 834231263 373524352 924465760 112474894 951040593 910239295 312298317 593232360 247883006 72191586 671785090 49853030 702130379 878191099 19814519 135428921 882949791 237223817 916901709 585427317 175554626 538894882 790787775 261223655 982566152 8534406 180161037 561579336 169252278 318817252 510421404 179506955 359927155 372065041 894274734 130156787 286208311 806412821 237817266 433106152 484422338 297345060 666353533 832147737 745414771 661075443 234472702 199784231 84079420 142267029 819521773 76175416 599884141 459268774 294708256 349536013 47030398 476973536 158028611 355900878 309527335 392360163 477757726 17019024 703245264 891040377 210075205 373432024 984889158 562843028 171153530 981517822 988328972 888712404 85894033 664727314 57258063 204136110 177028226 728305152 926557555 745381620 792505740 733297694 254535141 836804685 952621642 217403296 26056721 298872940 496597643 315643396 43231232 293827815 465509626 791695684 3947713 416922136 535294580 826908054 741582702 882258844 687575127 686844522 10880831 70163677 527028038 487762155 930508995 202850258 758047893 843102252 930728672 84499237 662464152 766874572 857709579 388618845 209060245 152258183 414198325 651305047 370759030 432291261 632961588 6920254 410736527 336751441 591092889 551837165 913602314 823571223 889187767 36723481 227591091 569249034 177110305 312289288 321077756 234575079 719052823 383378756 893979843 68297045 456440206 529214834 699516746 635646082 315488610 904159170 704702353 94219158 318127581 205823267 75506214 226795906 500976572 111834659 201917155 207758023 483610689 736580335 361956801 326938049 286535247 192102490 501594385 156537629 251384651 925359877 475821236 207129716 855894170 125440623 60518503 724701406 19078624 770001733 508983858 951357676 729256806 850427828 659886133 311398482 158128907 964737583 118401505 661532271 991798065 873772881 813853356 735832315 254651333 247991169 104857647 777605768 611627874 846944504 652331584 364014071 496724481 520248814 156182887 225503148 546788228 565250916 408963948 944814650 984928690 241400660 779202210 524125707 354492746 294434380 144730808 866510519 902434321 546524532 88869363 100010660 486384187 373825566 776178621 65777140 214689875 847965067 753483304 220147643 990555728 626765571 156537548 322527914 555422624 75392772 310781371 993880303 708967010 802474260 105594891 152922147 220630243 314415696 437803947 863894416 840313056 565245992 423997799 645324545 471184405 115781162 175892285 423621393 455596523 767348233 750792521 551365027 715577679 662712946 521140402 950672831 934189549 228045140 411662120 427636073 258957694 809746001 673542687 884211591 614006238 973788858 192435351 690192501 984395616 307446980 370581237 491222736 410125443 933460434 428359079 249303055 830193571 477360157 131084297 548678533 805102034 523502427 83346139 175598760 367480226 197471473 11811663 917597435 626298721 994014663 398923341 529892377 78810442 87596484 136932878 540153267 988243571 719404648 280744208 154743761 685206381 169763304 157868377 146513875 38161479 23236091 652300845 505290326 530275055 145416542 67897374 339979922 389147875 409830493 673354095 325091392 490014826 995303231 413124320 629691277 876541940 605304980 594828657 725188205 924281145 747781557 278627260 114020443 940696053 232124206 886791741 910783026 635552018 702418596 244410129 719075470 588519547 280756694 872224466 626311739 460609768 760286513 127502405 257774952 618587612 43431174 937194938 394719078 475055291 332426145 61154000 689134343 166360111 407919179 284047230 471222692 554915671 586907950 359443080 260062948 557823699 843580195 318906447 17512224 382561357 554338928 899523362 311800934 442162146 720789722 303866455 733070141 649232762 392742183 734931262 501514169 357843021 429175216 70774935 506341733 508538959 270304919 657360853 317569362 453141764 354228365 635927822 86843199 491145543 751148999 650641616 207129601 702598715 106267035 950599504 995719106 401375911 534809933 71364843 797012749 354324928 91733042 925999401 107250449 65116526 739683815 817027158 132416368 537066483 436020004 412436467 799948728 105155323 940668786 599485825 100322724 460859838 377017123 719597648 121090064 811870620 695315250 692016531 312966410 475292512 657430550 615291016 117722755 156210728 407399263 770586877 643565297 192267025 46035337 604248597 431649050 534414083 797538691 399639921 605819162 959566805 735407442 775965247 381790369 860597925 755571498 688194 153223488 180374441 882885902 764792899 899663150 282233425 452560911 619520989 966969439 955313235 746526178 608332213 598997569 265534030 476845811 337599902 636273830 436012880 2188503 954028007 65881477 160923707 605708473 70639954 5203344 594699727 16158382 286433279 336715406 996828063 563775953 942074464 35739636 3520360 106083798 84361154 276176836 223575744 138456651 342310102 788432670 661113630 529349996 725986502 68011341 908904676 46595338 883338833 864607753 595499001 576072993 908998049 668964376 580835900 117117591 562186944 49824444 568639292 128027090 635713916 130873763 687592806 700690656 823610997 408050782 403342906 790875243 10241792 133748160 232507051 157637432 661542489 522478295 299250938 911347877 749574372 903198566 654066313 503156228 262266760 616442643 964224670 819317930 919537164 862954720 980153757 754414288 122753620 706326816 405149950 627331485 470763820 691399712 27932792 729112610 841653435 925027513 913412781 243217277 421791212 43913499 404922725 363851948 650942346 739700654 306096860 781755029 213347252 51007033 744751440 119934785 708504321 280314429 117006980 650402364 956023877 584506059 452865612 615757067 76897203 845003175 49251598 394430701 978584868 663329005 257886871 85967367 632278889 207423033 753182914 322646963 864536836 407875445 432281112 536121098 735633918 506258400 403383043 523920620 684629104 478990542 491831923 709197613 639236933 163946837 512324581 530443602 544665720 940395415 614302012 914872576 582272869 50013272 349576767 335452591 193528999 644159448 836588158 424828743 283717986 625508370 891216934 561322351 348182144 825261460 842195147 460660857 11843956 679662513 940835786 862104088 260974810 696471422 44747294 543374906 10681261 432639409 197972483 24960723 968105539 684887623 840117722 781847404 6261605 933567249 669328848 545934123 538276094 920469997 773370988 16514306 386649871 796780495 102728401 643508449 559317570 63315156 812833688 58371101 291810642 428941926 935172319 190209535 579393734 441498476 9578585 178477434 874356197 586212911 649590621 381778375 634025436 420863233 417526867 771584317 605969116 827196159 475480325 859512987 516355132 537526607 41551806 43531117 574314212 668844404 441885972 314983411 489629652 872039076 584022809 493452839 266630464 469947455 629136506 383437294 572557348 577152935 441371037 976925224 297050933 395009704 271786753 194074940 721013217 837442772 830817386 404085030 172823288 123019040 918250731 340563613 10347186 670148245 934511620 841097600 501632176 491897356 783121428 327832566 887519905 882593995 733980509 919222544 917101299 620860056 105163112 678931475 152381131 864130056 173033584 104263548 29331788 457226848 723295577 641847092 559203766 594394213 815477956 541813050 628114157 978146111 972341994 309609008 428804520 990867274 549061088 906230010 428733413 770146583 977887822 362438799 189369514 27941583 430571076 494593009 80539499 537265682 344482385 473061233 236383734 79716564 722482921 854145643 289302938 698063439 821884624 890758077 775201616 405347857 287575707 761532715 270684450 673747416 370484777 595769997 39397999 529989935 202386895 506612833 767886136 982685912 30233953 426328310 543742585 584315397 477313146 542774761 833691832 765913351 981347157 261993906 896438231 519855603 75596528 354499154 732406525 136693948 386521998 388675069 50176976 696690960 614416039 233261570 992337099 242061445 596772008 37242302 724972219 930415532 624132920 381530537 684153672 398136624 637598653 760268981 218437839 673964670 375898723 21953257 390458543 217203471 113975670 295599854 341656547 85531938 553797502 842488023 364329512 286684715 542394010 835364857 9929752 576153334 698011680 311665012 276792203 285504877 841903592 757518930 146080336 212690891 48006178 98769154 616246740 824721471 874452468 784112395 212856976 299150166 444985688 804638319 951365336 663336211 432727706 880361715 48727565 138242467 644168916 436203813 679475538 245942765 143679321 31440452 180344989 185553029 482168583 759703260 43383928 488935116 230717799 209495860 649636156 538037855 210261360 229339642 35658013 224807365 891866750 616477289 541262904 558662108 111142350 268759375 483387227 780071501 575100929 533495816 849798590 670402066 597801908 873637009 306795508 264324489 162475660 290104785 223457199 847774204 570021375 227367786 230415680 329378355 632684904 680102431 50538700 17649501 659652163 504715114 355209062 839607315 913639514 533574708 668630403 435805917 650740462 871558505 371404351 71537285 974135232 257497326 167646476 422720494 20372070 907653480 820028246 135284562 951605785 987402697 309716177 787227000 47184008 500757472 277330960 158409597 542193081 810743177 462088062 226435049 726160920 220388423 417368055 723401462 904251225 957933636 222008422 546778742 15766996 896657203 263999637 611101635 176310642 725073905 438188036 467005137 615454008 308205655 987361911 839474059 6569275 21380596 834583796 390936209 552234470 201397555 572373664 47215926 251965630 729454629 278426540 372921671 431270180 471420065 782882856 246537986 931481084 670076045 981352014 306177292 217764215 342212165 749860047 647401714 33070802 219347907 633072063 743712749 10306577 318123034 640206410 300853531 134792626 53241030 919963120 44783477 266838450 833708089 447822725 785412467 17843867 740072708 387374167 611284629 602749233 74717442 304697710 227816421 507686481 282773842 568337815 609389413 598664274 799989610 806848282 734599550 189719298 835048835 566453100 108780470 494719600 405063280 757141324 572632887 674693464 346222395 814622685 656136636 816753269 872512369 632292374 196980707 129778266 480555857 116663589 731993449 270595291 723605594 734082024 648516018 55996666 812844946 717735762 294463278 672604395 54022306 599649360 55033494 190598640 295898583 105843780 986655138 448992442 534905597 730557341 36548532 137068981 314222172 802024376 208351552 354405577 869218565 850858258 52904314 876603288 571237278 468309063 666299091 871433093 46916788 680932205 324245144 831461762 186233936 242883666 118782231 758976686 870585395 919580852 73511094 963436602 956741912 756200862 649364766 375946404 542332442 201251530 399040211 13607358 630291916 333062691 175360929 997527659 69987852 164966343 271398774 385735860 248949671 797994983 815137723 768377473 26235126 584228780 444650721 6125964 678182316 887247574 564348076 214780027 939510555 594062324 91207092 318522058 564674404 399990065 674389997 8740254 159189264 391553361 990763718 998891206 60171430 378854958 481155572 671567766 301789704 754023123 688923236 56970998 312581302 161399593 764974080 91493669 462283981 345065589 678742304 575597258 702543139 941412150 62690228 489139375 839082227 617759957 479870870 731028126 587280012 528282697 545784759 451881660 439646731 187507928 132607893 711203773 163758739 938234217 86012118 505056912 526402039 840805242 443809552 595786697 864137708 745673077 117361953 591563604 679129465 401782984 479704829 3458502 507879518 399418072 571825276 582567116 462079155 811757125 678729870 77549144 92444501 581678972 886357672 36262526 332477633 57882889 174063319 957068580 715673859 844514127 963984967 696534074 15988634 273835214 526517931 276008515 255851077 35615913 608624186 520314025 167050108 569248435 16972178 898546967 119372155 409343150 390179073 755093523 446657339 318152320 317014274 666726708 816744075 29582303 610633623 997862008 466599728 634997544 790694520 535624993 538448129 892925618 307131018 659683061 587936619 912539994 331388994 792726471 640668568 883085990 761890980 162653963 98931536 109598374 475965070 130314403 554736917 751020024 915359933 238821411 156001083 947309183 390317523 729884670 610042475 894787855 664204753 617826956 244253787 790223412 585633902 192168211 846014318 667873322 446918490 110786870 424877646 787656687 842934517 469301598 675713793 568646198 442441239 406552724 693418122 423159825 737255455 888793022 13626824 940527983 17584059 813048667 857367429 316988510 843791786 791951916 639394971 289841759 86065160 238561546 983538489 994955323 558637074 427925492 103981753 389728813 845505585 727876585 11590663 386672172 567691419 453693321 131937186 925897939 830987495 408502390 697259618 689561702 103308230 705528953 96534567 148543112 592192956 972550915 360797515 335248600 294084876 508055914 635519813 513300950 898207408 846171826 255002210 846726309 479452787 866543041 815959569 634007532 45672309 512164736 755603508 895172846 705306137 864047741 50878751 209473156 393097122 396465163 221765042 5701330 528480475 424000245 134198664 538060625 715755833 707939765 571434002 116387749 684099500 239894462 684916816 22456853 534687329 69412054 292857137 451170072 855358202 365680944 128874006 667566497 357591910 187331066 998473567 470006650 480653185 939847974 662754274 403380305 217691159 544890154 188818783 61824933 823726716 955048894 246149448 137695779 335398979 329485687 386845459 98882431 203045297 972248643 646594995 811933660 284033897 848799970 717118097 88248948 294958466 498406468 652608417 436496679 670490404 866650789 219843437 913513624 388490948 504607909 994776319 373900097 835222264 5490840 380232157 818890940 465157638 312754622 464869776 915434576 645329392 404414806 567712297 552985218 482285356 822151892 68889014 687753831 603815245 90863310 404677524 650172661 391904981 402145433 699813384 489328784 645578210 753686591 927875571 663394798 263144266 792712853 885459479 501942433 251783953 185034259 25045206 120899276 80925286 227869385 273413987 673471687 613546368 89907314 502843962 90496288 707262402 282036966 419722430 358145335 680872281 295655656 682557091 493895398 472274932 190546478 795036728 795502678 155834751 24601823 707063350 568702300 28783578 637009396 462381055 472025703 30064821 615575040 393187707 399181686 135269881 805692036 670877659 495493059 834545232 460183651 260075868 209450568 299507815 178208362 296337492 849858596 623835 829029 622186908 468855863 587128540 701108122 551557479 287381918 55902797 984093426 264975345 209815203 997157916 727839984 736895009 667404220 378999269 407909801 191850718 339563533 154438992 481572287 569701570 161436087 7011266 768365431 919010719 993692047 302930429 525857308 924090631 361106681 110245874 14230508 611607393 179130411 551420189 300855455 262492521 778342817 634223360 73890440 813939265 357331225 255144328 578202361 845336059 976157561 58571524 829594589 28932902 646381586 328275837 436713892 536704232 895183116 275291487 283862129 690677400 735547080 383335346 565120584 212959914 690361850 283992220 185162710 339091751 466115769 529172839 401599053 395636944 159408473 749165833 528617446 257560658 904174447 173018801 64549391 212020662 635783701 387083886 456217069 517810352 592818498 417508981 318987289 667333468 490939567 588257407 569043974 156966604 847105077 765456364 754940548 973954876 163550677 182789157 259685518 490676220 667754184 471189468 820690373 871664550 465215672 356878756 818822275 925336004 397413352 667780756 538066644 842124255 785498363 654013461 792596262 35563619 936134832 270561868 873407532 265351492 500430252 921709175 866485707 106588915 635380235 396727339 655228067 202097842 937894860 224362489 951899936 823680655 709322002 173463896 631103994 788733215 679688709 341384088 837720217 517479894 568147088 369290819 549077630 804767744 404721501 1645508 416123594 826312159 18736 789065881 973830708 722947614 403273643 195525928 628693828 330027032 982374543 835026920 910518972 758984834 467087674 745509476 381091217 983599278 126219280 688453384 482349525 439376825 394692926 974464872 862385756 651344309 543855396 302087045 216430279 98914138 91267238 820756187 851848837 515154422 645409290 149858420 334244821 429838908 128914693 118741546 396677405 276474490 588796060 997257446 274092537 167713826 200071330 312891495 332924546 242107412 141543398 487376217 835203064 313673408 40326792 277018664 570442632 846563646 499298909 854720811 433852482 776254537 725699596 946653821 748921449 410237840 764479510 707020547 816925522 821440010 124161680 975798313 215420459 443995469 66001710 803118349 48256034 681934652 485834332 120638194 266170393 189804070 882128511 841183726 675038012 347591980 367909645 546085413 359746171 125230358 187502519 313772796 559037323 408692872 356271736 942633693 458254807 323216547 14841231 9526235 72146137 910185248 637390046 867203074 127041431 595749459 16991657 367462403 43848265 517726183 292370569 703950420 771071352 498796746 569171644 5037102 348660532 502121419 593535492 986561522 673689648 888473523 289261339 423334250 617142147 299774471 235490829 941727306 757837665 69719036 728308943 720609272 579033061 369667359 408223145 990099947 808084569 159142692 576761781 646676808 802894845 922041439 476205752 894156570 872409663 719450130 66592623 978521339 361417344 537923845 506398172 115990029 904122236 604741067 539940480 104982162 952030770 195762933 131416911 47878521 248863057 396352313 232636259 871824524 470143887 396848434 285419763 985173336 767169123 476902066 807847077 703851886 717263635 253958603 740221831 87602654 691659578 540771128 766832343 626515633 964536763 493668090 192663301 41411893 587798931 939433509 977570076 926586148 816469098 487724364 469639977 432327864 144713523 508511424 797197577 6437429 624209369 441877624 146298035 624611023 81837186 246439465 5174851 104026014 403608325 334229555 435320465 464860033 763489891 68262962 892408346 612969522 415656450 408548625 818045242 873157573 912116051 749523435 989198197 378157885 896914037 546339982 49703110 3781855 62923215 759974580 872930503 401235588 148974080 464056822 506833551 690842870 1286573 462281968 617120612 821879062 102270451 759461975 997152371 414368173 653282126 641867501 568251653 633972914 827110132 840303055 369956920 381583081 503720052 939409380 223727398 115670574 240660313 817668501 774767464 663066646 258887649 641269930 647099510 355860892 400851039 839654538 536478035 310783348 518556973 110219491 594785990 604579253 891931691 708433339 286614545 972230073 418762793 263607223 54372284 226979032 961599893 20685370 293738421 960533604 786652382 561282025 706533236 442279188 309118792 34259189 196383112 389198201 1103541 571111490 48506179 588050957 729935905 619668966 269199955 406660615 694282358 118385538 400503332 256315684 634839698 259741733 122492641 617562251 890549777 376945830 729123571 749689569 536248469 604044197 815462666 160296474 707023002 867939099 233877790 898174610 566998932 861450208 975251910 958769729 871724875 421173747 882143949 19407537 171015333 123340233 584347317 22545512 470459174 450188268 650065495 815975574 907223731 269626109 345134854 726865828 958263269 412503194 181167665 305674767 729993275 428702565 469017722 581901604 825165214 687153960 693022440 382602493 804041956 24016155 469881646 803341374 199323702 637888018 322918949 81518837 921151984 491213422 90598975 312208776 632917370 954729772 175870209 179508416 107541496 742871850 787020055 407257870 923558535 723736497 45076901 431686739 643381704 194068520 266954012 383819305 441082351 478471007 265548427 526514534 123945484 605842713 609099432 134640007 244903714 562069490 74611251 884901600 607599016 138533936 530554487 648739358 10297136 264528074 903544049 136665551 332069439 830865717 78393775 641920044 921289191 498421198 173643462 426018106 173271863 328303549 914227764 905401999 116510930 993252641 965786683 59125541 987981131 46182836 432087285 31882196 64917509 672937682 373371675 663894684 135261288 173628498 742146959 798585538 317303243 314952262 84746788 886839918 686016599 107766369 207086901 795426460 500750522 476161131 469138371 681541513 108098429 768745394 143659434 620379803 983353403 451184661 840229509 581819436 853488155 609103474 226107950 8012471 568466157 707698213 478061960 4299893 591454259 426978573 628923249 178615280 374590660 249812826 992272897 746078761 782256366 154945052 498723626 694252015 912487698 233840880 838552052 431922635 273764664 982666528 810599375 485376200 333699396 25805037 950268269 498749625 192820886 400669141 776334577 196179615 949784095 869087718 730423551 28878531 533040842 540703162 597326524 101051176 700243374 773027641 165353707 54961154 556952110 626687452 59149828 953097129 440176759 622438305 289291237 223156651 52567724 846565692 194432764 155776120 311659368 345982062 40113970 488335608 600216039 428963326 229584496 620776869 75244656 965982100 384547583 484553522 908305752 397908085 96124188 828909479 375680794 757693842 459627051 682983010 527224261 837630987 274058038 842879916 668358244 494079362 621111963 40790039 531902448 562761583 314114148 106824005 171858806 381320122 368477593 764945776 502711608 682803831 63266227 402874203 677175588 363403981 887161367 988868300 557170432 284557235 200318666 205323597 102851380 356502967 999895709 768392908 652760104 971006328 619466958 94514389 136090242 328407805 436111118 799503000 925602062 913618089 555110506 424729983 53234444 955010341 311264956 141629838 915446328 482777545 96289931 257494680 827648968 984937775 218181225 376873435 425618422 253799494 425656376 569437261 637804393 127643560 383366794 891169143 853457281 100333967 145062666 649597873 915657389 527971713 161813591 103623997 997157536 230510830 419903539 279855959 984181281 283930409 569236757 294528272 819995445 737121719 579696370 132248097 969631403 352467717 390836018 422761824 926503435 38652705 842103239 579990020 644532915 664926565 840365031 18628937 473710014 719728537 755557378 101370300 413034076 67492841 501159573 95153353 75561323 399052062 89639345 103186161 598154794 947325831 957080517 676664557 943930812 176715691 998639123 770970097 55302973 187919815 886462622 554978289 864063323 693276082 963029288 901406354 743042920 18051674 151425468 794511882 143354334 869854651 85006672 553224064 49068173 652134297 350564915 709361641 595501473 338262788 270325777 147453982 516809682 340869470 629594128 745265661 659559104 247983814 797898004 719014429 121685931 230967821 732663842 850010476 486544606 514957608 309849488 822791011 953296269 258622709 373770752 828340105 882640029 537396894 130424737 562771432 67822615 656516033 955301296 262317896 947248989 872693274 13962236 280083158 481471791 565487579 59837455 137020572 398772412 239911350 485888691 524304519 889766471 12446311 794420925 879411772 723110799 734273608 437521505 453694156 739439331 19199386 85663 1151058 867673656 372914691 373696143 22636876 718336844 117051699 64902941 859252960 991207512 397474583 482660760 742898064 689078731 673602030 973824188 892399961 497381632 224465369 946701959 504989268 715306582 948917022 181273974 331157497 922083804 439658108 196272497 801601140 665055230 180171450 120892284 733566425 120620274 107632366 392878321 310473159 927874779 780803569 316660445 358415884 969320400 271392685 386261157 132150191 592763961 130909195 905196239 812747244 926317250 148269539 584246409 563449865 868943701 15017410 435541879 918318418 839409939 233902761 103416256 651526084 59650361 342789527 194443655 124328653 468578402 897061847 322252458 306506544 186037775 776649354 79860112 335233769 865352588 545697020 444703472 245477079 289792720 634500632 961362737 483854628 967695352 362026203 671462200 298647790 842673848 765200646 396582146 835584617 880493269 422961111 612225133 886529666 465840652 313170503 807053307 502305221 784262607 360137634 614138356 972941018 313736956 106449873 948959314 128428931 145635078 608697729 705568306 176354663 927841895 543687175 112855863 773477478 365728082 680423720 666468853 672852964 406798095 727014686 590264829 166811995 448885821 711961266 757897991 527058825 538663504 542888668 15694788 925389835 45557736 371318407 602127443 302507364 997798075 677902924 1200757 540105893 650101476 414207130 633769205 296681779 711792848 668084193 865141316 792986222 674662598 861285446 255245559 104493336 577078621 172160558 218440308 493521937 336969915 993412986 433520390 173697932 610581389 101620336 226185795 582240070 338135659 975793782 382106382 377840869 443309062 41477472 928260399 198899235 416677055 548099591 887554350 890681102 84156322 186409927 755427313 683225431 971055865 378786813 643020558 988395986 318370525 675238728 95323851 344734520 424177661 517683824 379450550 927229706 523779700 71570505 750619113 603799298 142134094 303099624 315093424 70791394 835201814 112588065 363109157 804937380 839073085 790231623 951996631 672767626 503764107 237734875 12209936 946287359 947347029 698997890 731651623 592497796 91211591 642050551 468274552 259148983 606878924 403192990 146953372 44291886 291943558 752932702 198895658 85951250 492766621 525298071 288878688 530396360 272652163 24321139 603940247 726894318 593392421 705007612 227016004 463892357 726430499 169692486 668711239 157599319 279160149 917505123 855902898 243696396 305753535 845862451 726921384 80489001 21751911 134376051 219375674 311359130 593989202 503514878 482325647 989213445 516754544 991827838 649568534 370250654 615891360 932556889 788135058 129215177 10503058 562631909 809160545 950099338 997031742 240255554 53501329 715979887 232561256 439921845 399087161 322437134 541424909 107654301 382413099 575825919 602974130 611665030 181554217 816492413 572113572 728967217 515287967 615353519 952309833 942762728 933520725 429142057 951388864 909860990 82673140 688740186 766978432 543512681 603569250 708245680 870027269 641672262 257364160 628616486 315939329 446899575 382182199 25948876 852242012 156466724 834565331 114817824 195936110 782731825 979712372 993771418 661827350 996523538 451263380 968812606 253299107 935966980 342859991 222779186 134040079 519809855 175034811 799127947 270426423 537668322 778704377 954932961 521014422 421901783 309574848 299698087 591979811 684466072 22863862 167170081 746750614 956945605 953916134 20236588 290126168 450546676 769565991 936864893 330710539 210282455 279675625 524043403 126314769 296206336 606338509 781286617 670160083 920076575 911454686 82987417 41489437 808726591 350488477 644421834 152488878 45409332 569538884 329909385 197405256 202071846 929332189 664163447 212854728 96818261 177691584 974341104 660421680 156163763 639774750 938777403 925923595 987711836 679825696 118787461 137733029 928146186 42791544 111533725 698021111 6764807 358745444 570623643 804034887 145862720 684885325 297578833 892866280 588414193 921897019 692405734 958205206 191518230 168627063 194311808 784498406 743056218 406943515 330592195 401936433 7875922 792034473 334033150 994880133 668882625 267013749 121958068 318515893 61989147 524110288 673949201 884460653 164880418 603077391 647510113 239640587 147547094 725706538 103872022 185379433 75768036 396859485 284736904 105839139 971815064 415205418 367071718 302853651 249210256 214357896 503736571 996856604 468960943 248894592 586747679 909856638 337849892 152954498 417012675 903594884 178534546 746865304 861764761 849185442 321014853 364394833 123676742 239115820 11586774 460022569 28503898 657698348 128255421 134352973 928815861 343262314 132469771 816720573 909610422 454034642 746485696 576192005 361374893 635927179 92484867 932157986 750394019 499248717 955114897 201930142 304858954 407629899 697733812 800372806 44983259 716794316 160573615 782389642 541060304 227347410 759331634 44480548 129856041 220616851 294879999 718926793 804363267 55589159 72754916 216620705 241503289 625595928 620187172 963688773 689256288 281857568 480917652 998384295 560201359 940862639 364402123 738334703 465524825 261196648 282741396 211953228 494876081 754684388 140008180 214859753 536515814 626511255 197754591 32249687 708836289 117338279 224740810 379757755 897553552 213382101 591015426 220184617 660044451 90620679 338069628 556554405 920891764 161383810 315426622 273110122 959038968 305297979 17279810 12188628 326165532 98640008 598910234 23820452 637997332 352189521 243059654 415407007 133629105 627713931 644314989 708753841 325862551 545328881 879885122 960778966 959534218 738620990 460338959 593951233 817307323 471957743 450937451 299378043 348749601 57182056 734545894 174164739 560400514 331836027 224123671 465897196 475592591 159192336 731437530 540546397 119164311 625339164 958247665 94726599 249729471 871297968 194060542 174402386 765095761 852193131 519382959 747096079 522780085 638914778 402328283 743931379 134436867 876537911 783621150 4471628 265257815 450581093 864575214 421285638 926489376 528820458 806934636 865190921 907849852 904272354 103877106 34715407 679615124 535597473 803475751 527384668 468983798 424883337 352079517 505655106 168152977 506502846 440105477 191372656 581383413 950065474 96337560 692267406 362224641 50113135 164287219 667930824 335102082 706174350 765062099 607130808 69015688 480495551 689418359 89100579 824727098 416473923 657245431 928269704 953744050 808377174 996087132 380597152 340864909 573924112 443099879 471314642 990450534 604897787 493356709 561780937 79393574 767254483 216752014 821240636 714413886 444334913 172231947 882826753 324128427 702698201 142910786 737861548 735707611 217376515 265784080 235232771 651530635 394139904 511716738 517664888 851591098 873865529 577496160 432660372 868685346 893232304 318105096 244302979 14990334 489636402 661945326 948047854 291986746 70268437 905933288 925842946 949077857 459310518 657534496 543303557 635935823 376507241 204687859 347821020 858878206 233682639 799724279 125056964 658009091 938605406 784654579 599415744 462433562 544702402 511708849 542690141 91465984 366407454 93578882 720911287 123546886 823336628 622001641 962877426 234614498 278912403 640269468 550534230 100224131 182035193 701207017 54385124 732852529 736863085 765849333 980778757 878973217 452840766 132372045 772940831 750233470 718181406 16465360 923501899 744974597 698036686 655211390 325011103 748837274 914812189 476044605 476215859 644611505 876411416 212151638 199333869 47433878 514065800 964926736 924734122 870083367 902080090 33205133 896438833 446657037 627855933 831347865 357943706 258318779 203260239 582384956 827784618 744218786 633466750 671792883 204650532 193619902 4926189 761250514 852674060 278339355 756540129 589091701 591612494 411932642 846586900 639355912 346059162 533292101 833441961 275985315 46303093 78621282 260437600 692398929 393368987 933050028 267917821 379699266 425329929 631206061 381749856 455285005 710646898 867627362 89982982 439770620 261995630 400328274 57321111 219425611 561776713 328854453 832704449 935963894 239806088 120794095 614266800 855420311 303094551 925391360 90763789 21186732 956553228 550202299 840376320 294930199 830517101 450013915 702440323 309850355 900467475 239359431 317274642 672932982 16436690 999572542 464954576 325613081 479799291 115951435 58999427 133002847 527491687 7536639 548256428 252539908 923219295 296055721 511566667 863621076 122881400 338661887 347699274 827654976 29663168 336742268 674243093 938692344 692670512 980914878 538214558 519861684 804441881 252703923 935320000 803187467 305246715 50277083 252788917 217160582 915250626 346296519 293389963 290886696 673870935 680899982 50525975 368793107 590402389 753280438 256570333 454018774 824928361 949340694 423192102 4485631 450079678 108031337 46046452 589243565 492339477 51225868 762609415 120106104 781564140 777038910 637992306 328729433 509988454 557076529 788564826 414881703 728413669 988678288 694567307 630979763 730424685 983575223 993539249 748221098 458670307 753237600 621775173 171019271 856830507 257265962 131931069 984460772 786787555 512951529 288929181 176088586 17145738 740850281 472342838 68278385 656904109 883838008 659877293 612645578 256085375 343417818 98686045 92916241 144656233 539184861 312668305 698469795 863809809 897430830 135284084 892130302 398218001 70757484 741047187 399829285 122699223 407539409 599593630 23703467 516303612 125941779 85906214 454760059 859389518 647259285 793278608 203242787 946326142 680842060 184102121 155381687 671722719 191079345 584371791 637154445 953373443 319859599 725969050 545951202 579352432 48034546 212184902 650533356 147576482 981397150 857223311 239020705 249309209 321984916 400936980 67352112 940195108 537522136 550612834 966846446 541758290 570652452 983153808 630813786 269946336 663184912 668124522 440314324 597560496 866526354 69776103 250482275 28841862 145479063 158921177 910537027 371653300 921023544 692240051 732706250 727667188 759328107 775185818 685412769 289891246 730867141 711294110 111881592 406487886 290828164 954232676 608867222 605812191 729050091 509672533 779668487 184801107 213664518 488608870 993883181 256694214 228926210 636355087 606027949 60858842 166228101 359282339 466980260 796472819 744042541 370416562 607369544 936062742 175544798 237497776 474025004 11043256 64405353 894535481 985448374 637109723 775089196 298702065 917411999 227071941 712502170 19551249 62678216 319714063 574827862 99648555 814367994 122585687 815566892 506953886 301356352 483994177 702003229 627947346 887504691 694118990 295764127 422514749 422226321 102110354 859952356 784554887 593116318 379857477 368952378 159777928 97076223 121705061 386815772 103382627 332689673 395872360 628270214 146180410 538116405 184992671 222767443 213209317 879416864 407957965 827318193 502929128 557017142 770677496 561734271 816251319 927120602 986465246 629407765 928305665 19366704 998373503 767348387 46147755 428878853 297991305 369711776 405666993 89139051 341928175 96516899 468683505 530902091 917980575 959242050 879066102 763201451 525133082 803273333 789760052 146021008 303546111 983947737 412864536 100589077 994346048 822851094 782283524 973605941 192813481 822928744 216617194 78942746 179886115 761112034 413637613 324963815 622804039 27200592 512019766 474436580 626365995 978007596 444027209 364272438 868422295 667910744 306158739 331511582 294808537 833256761 867635867 15299793 597766096 726234571 294603218 75298529 120717187 97465728 346943550 456283635 331209843 148398578 94162254 931471075 515348915 31650870 918285183 958974224 482856220 625585907 243059508 946227337 805544691 666592016 339466644 340716318 919684967 649777738 30383281 893781525 219844832 900464484 960989691 261949044 433560162 256937053 784590720 107213140 960591490 656376795 244684249 207353188 761684511 362446729 340117084 438792128 469887579 444723088 698833525 953109048 953012060 48349791 27826006 549397807 751820273 557281813 163584754 241709767 247527919 955214165 544351722 495562980 517565709 346792373 712212560 766516519 551060930 86192013 576868182 90401981 113704048 322856904 857472415 859863677 145305129 504435527 2954636 262602812 682774494 878097015 866404780 31392834 878871608 404559239 913421466 154977702 267875056 357312703 110736979 121484762 428621644 32413136 250328396 166596086 80962487 734735331 230562836 996410455 390434058 256110853 937803404 21914647 991948113 496834229 334515064 880872634 922562305 384885976 92812751 444076758 639263074 853396025 270786754 640891949 821183502 986335712 823421614 509091728 481379249 791688398 456481769 451937404 609848765 635650982 111341659 966052923 300019465 854936124 991828712 660902034 7254681 567467122 197174457 535382335 965381655 798090767 308694352 67349161 190864940 832281215 873086296 146062423 829325732 985497568 836908063 197801894 181684838 412736380 40948896 288594160 778580373 430064730 720778364 304659738 879875907 773771378 695162244 24954032 467869365 760947755 458056628 324273361 657993725 462042740 795584337 108062669 61242943 513727892 496586974 663462959 783272381 217608415 823875696 265252499 688996121 31264452 603487049 920272975 716469121 493375071 970335691 161739866 192464316 847816197 689347364 363691536 729494461 395946178 173928435 486222968 298597633 775700083 643436596 561887250 11065404 903896453 353922288 575652487 332360494 127145678 705512183 825441993 538313386 107698402 458856801 325112499 797900175 751651401 127166639 810282779 101417379 534914890 663135266 807939734 622357939 267804942 367045129 652558573 321078898 135317832 143499539 356975257 229358349 701735462 175167339 855251647 292687174 247609259 359413048 604949164 671296452 41505903 842366343 854370585 92878432 368801589 503176292 209322714 136529075 926971919 797364445 309699086 751784525 444561219 338149971 558606917 916471097 975951336 262440971 608042423 9375727 829274178 928454033 47667959 798856445 916006791 788336282 329526366 114517148 284198992 313914730 9510135 187297254 481876815 107527727 264909268 881357363 209831130 724947585 363490382 954785923 742100650 696762738 896079010 279894369 757683540 537666548 821628500 999883621 396281167 596027422 783448771 333308398 915618691 377051438 674418078 137364310 321798199 905915863 166509442 647595273 609579718 817839532 12990385 213194616 297532670 100947131 567576885 880690829 935754408 956994809 482724286 216197018 885580802 480204396 237089757 179660815 359984139 830597710 866053741 422421577 830350957 322630327 725547490 646749453 802682161 302497781 327791198 172699939 17769818 387555175 755362789 435336277 457322982 838262847 949513712 686403571 237921244 819213381 758116454 744030176 854468569 283275792 221512905 17920558 523236405 702790919 258780318 347507668 278316528 316337517 821649526 858912242 306578884 778471147 922993540 161892044 439155568 780480441 916353466 817557766 42478866 458733339 148909026 816020138 251302885 439468568 749341742 476716703 630071815 56809360 423939420 272645136 700648967 5322690 177631267 323204732 740216217 744779021 764158038 144591976 704544935 356861908 747250769 923780673 234929982 755463956 487082043 339139425 774613437 905882045 145254369 544199555 941175498 116425614 118314629 123164935 300703906 620704817 117447067 47208841 715137734 73034410 273915376 286234938 701775372 172153672 258374470 633586922 86362304 499259039 220309310 897421724 941602137 616932690 879243668 3100911 889818968 790623648 505144856 840500572 396267261 224290210 356643233 1042427 83898395 183529723 62336764 797652507 112539584 344646955 64654046 57934602 325277727 93821844 477615096 879141269 508246512 643488255 861466373 623725876 428897496 673467442 476902107 878832753 415897758 736398933 875500035 379497241 666445298 955535358 334354956 68255401 168665299 217043948 314702906 370418681 981275147 292307842 445402382 156614527 449575485 385296485 987546481 653713630 438864628 413534085 27283111 884253948 620373523 222686263 166602271 937027543 140249628 506349536 292114844 727137258 653618006 696274905 101279887 24402191 364005050 186076612 508569829 386522298 467373653 529119954 485611534 138570481 643259223 542556538 157894293 390456152 346746023 627780808 453669964 473718702 351381081 639172965 307932894 95169269 196180276 821708031 665702883 914385628 850145614 862126314 867546567 880527463 62468548 37465403 618120650 506980411 642727167 14746831 751810514 397687444 20933521 513586352 376922230 186770309 840910775 22627685 941621438 451290615 506037105 476731488 963115337 734371201 579145205 662094699 14300799 353085410 86856770 78518561 232876670 296267255 376454095 369419770 823427059 451270641 750148028 577647327 480865638 292533431 597025055 492459989 844755959 294154376 529202477 316090821 286465246 812961376 564557289 456335144 397613378 533593181 694006383 886282561 875209525 969806737 621900359 311589869 748680971 228865151 60569695 167196936 189042697 686731205 106966744 261941033 355153351 627478362 784776113 831276543 573190908 433944143 360725075 409697210 648917373 449529995 649411867 497616456 272344097 225934382 759484490 780101294 234046769 257418790 859891404 26135927 864572178 476397343 898372637 437810587 259769644 518115636 879831646 804615633 293281763 862788308 931262440 205259618 498072922 160865526 189163344 539243936 942979526 10822296 104459059 665490060 445316683 512916411 73929922 627480962 452777264 514250019 550541596 775927494 874962331 167101688 989596248 936196491 367901763 108173499 448630632 27826414 154848975 265283181 352473083 822681825 925337816 411803497 927269707 244001021 497443463 666127665 925545928 114748441 87623603 402933640 413052074 784111982 207582641 966936208 537822961 657170757 461138688 854028026 203302717 806755380 370804777 166184244 55642194 503498548 288377759 264948006 144324799 315070070 789256879 830881232 351465283 93318118 744485737 530560716 440075603 819577578 69637701 919274363 554956350 180821140 601535241 782898702 579132747 209692387 677552991 743781663 517566078 475680332 318985692 690617324 830438332 241167622 13610078 344129511 818097710 757469180 110136405 94261258 708399984 464646406 868056555 788810968 687210231 959787995 605546158 656606165 539425327 886638136 125788256 934380782 675724024 55469590 505913510 57018881 630810406 937910433 721611805 838434189 900748794 151266863 592605533 161970180 684274684 362616529 651801317 420849192 586660977 188464590 782294653 638413197 954545280 707595116 90370426 493575199 713491211 138692374 705843536 341079660 163980597 847347914 368660827 531943891 256229535 889432333 804599563 827900360 718659861 50957018 12027676 505960735 564928377 744471741 271278300 486501426 461827442 913143895 727759398 711270203 260449299 407429583 840646241 116956071 942384109 699019766 162612537 113393819 26392741 992630489 852937870 46788613 418205048 791631343 897427615 35207520 544134291 131821419 733848898 216816694 551880200 974126423 287645423 469279099 214147612 721980919 562496026 296352651 818914670 412875752 315266806 236555747 61422491 893579212 172168020 347849694 893937159 700941162 956977132 314589696 324996294 375810974 564724705 114047277 16728112 980087382 581180642 729503253 126847137 995594120 378617996 816685318 844067066 42914758 526505711 376481884 150008731 763512252 855888578 57806055 617342314 678784665 595432563 693646654 571032551 281529018 257143453 278865473 35674124 585617666 656053191 699242538 153480944 444365999 406585051 170612670 31476973 28721286 720669711 923990224 167485202 164649603 576730136 966483122 581180972 259951201 194003218 601766665 162835610 840594787 651580456 633706288 821586911 346897500 143687957 291724734 995907829 539746528 860756610 492929597 612180053 502218612 330407362 536065555 42558387 70167346 682506590 360328229 87909318 913992015 312264726 191050881 140512429 726983206 783707205 378936839 156252954 868148250 677274011 439008734 718045444 778003831 595072439 60814594 912149660 74319528 661948039 34918373 90928936 104522528 615164553 942112046 191021796 722963107 52256288 636276776 51209055 257025497 562936552 240426155 226830273 431909280 787628424 159729096 7093124 550351397 179325771 235460643 622717998 296729005 167531304 976760631 609965308 198054501 881313664 387425958 546742223 923152881 432198424 677770588 508516294 558856281 724685164 277570611 457488182 70916472 155742756 511954895 288050600 573772390 228217134 563537607 135634888 667234299 627777727 642426486 301383549 307461100 402862498 179097820 73550041 820118754 223108589 116672091 654240184 475893422 573294897 388581710 533190195 217108555 155647221 50603809 239720014 192486092 88877432 902748235 13866561 172364550 91574104 396312551 636346269 999421996 49110970 835163142 496932542 41879269 603128308 218603789 942203596 938997790 479219878 548383646 833763331 632192517 336681211 435444332 618904694 873993796 845100874 797085413 15090681 2176329 197021605 438262442 332096957 171123533 84704913 617514065 388806615 461795612 253182862 7104723 327736711 548125717 400960119 257352063 949579631 28105676 57491818 893770664 434332144 505170648 497771425 284507424 717379303 609544846 119901395 730388124 715892507 918211172 691455655 598814909 242307695 651357906 44183540 348530213 44604783 700812645 176397951 986274906 417171667 514603670 406760563 531861695 580926962 312732037 696819719 252432016 141205492 328760505 34201344 768589983 744869907 32459358 891921267 622557400 240086253 58879416 202388049 55208653 779103588 916068895 82468533 179612341 355473060 747259213 998052555 498767938 850711699 783382304 993413524 444214518 993132008 670660923 830731231 8436541 516101029 59117470 159791034 816092194 572615383 725043284 211127834 202332848 210527238 899543646 809510997 269772553 528463275 985846263 725648221 643907739 594343914 629688989 457332040 326136815 982000413 930750787 899258235 373878117 633254923 840643244 365546563 579074529 402422400 889915923 65162440 111238194 217354790 775334076 931120964 937209169 765431109 643009249 357362033 215561517 91784145 802218334 940273521 723630502 822633716 732596549 163428139 52170057 382649669 475858958 554357945 285245 285399595 488131689 862036255 834490852 876494523 209806931 73233838 846927749 465537370 534180187 447174103 48943241 221362715 61522811 962319946 858886494 338562407 838720600 3789975 286325605 518575421 274132620 404467631 974333550 778710927 55565067 457003820 844896300 920722233 409639467 982028924 334441927 561074347 284220501 645721867 712048733 575322845 356414688 642599796 514273915 483183470 387740570 344799768 663448051 177730820 87564791 538013736 815117441 11000686 230004024 638107024 665018976 613278130 316280905 95965373 79035713 282131441 780030324 826042443 490621290 286972806 824243477 699076368 402339778 607407146 761325677 989278495 277809678 947563356 414072961 104936068 663209001 598434996 645963170 467895643 481403451 480435555 73941138 600671896 498892013 509477818 324060783 392185725 845751091 416132803 297930060 101584169 45966802 255257175 106317646 596628535 910024540 299098845 345078954 382502787 90555389 287844342 936723464 561598825 542854677 185749554 610460970 687939004 131680060 235120884 14344983 145017913 752089997 672447500 316273758 821936883 929915876 333564240 450972443 904890053 640039805 900021938 420718095 660718319 352928533 46481644 61803980 671753548 756561157 336561390 536010440 101568286 2274529 331242335 894479360 830618461 522364218 384904679 488015820 683970751 16126144 862677608 813633923 963532850 420920646 677706040 420389190 309759319 157567208 621740158 220999178 497277697 378827029 757867880 323590381 982972733 738101147 750635281 168173957 335591165 428617694 254911794 418969277 19092468 219623181 230714006 64572430 16597911 77955864 337639938 912606063 328471852 702626242 866173970 150252135 237859713 662982156 841936350 277565988 133197614 238435294 278907219 648839186 35687110 720876245 44960269 288228288 920297517 9114293 742012812 128661958 545216407 594273990 167221157 871324408 128407170 356550411 544701264 177603493 459846189 821759553 904430177 358157048 964572916 790848439 41686500 394821964 944410133 928828406 499249266 785227382 709348208 122519818 64985626 860847292 548035657 76526643 166434497 410532267 428046585 265089358 543125440 949050385 292337958 569384506 619911300 866686054 817764565 297544497 977581948 498923481 28749120 817595175 38351694 620385796 60149857 748836265 616151977 353531478 853780045 771910919 570405266 56362121 295653742 591418062 43596560 734492729 95257433 271249629 374836424 336266722 131056747 196812144 392969039 161450343 943197516 702064325 658972085 607985213 111140461 426906108 936494537 738543983 44552959 239129884 954427318 581354887 316815575 861194956 677509887 407477287 866763663 844697100 922351828 540200357 289294517 898143629 585642061 332250390 633095076 635827430 306733962 54207911 99322468 971609745 161940782 334348778 280314023 34144762 526777174 138710180 532936828 953134088 18451924 593273534 750914937 577455499 669789419 954623743 635960174 415643151 266526155 434740453 490716463 579216600 418497192 452099162 961308966 13548725 422170966 953135962 225260303 562715676 206624857 346522864 385571415 244223645 599316015 525026622 92671833 201526664 892968122 743477822 236441664 450888604 620833787 93937806 19477630 59558448 352302644 675918197 712176314 710850463 490523859 356644172 258649580 287841336 622996316 843698875 817952927 499231615 506067932 723549043 908432560 752315792 136608043 191841190 433334697 8986440 334166463 622638321 444641620 75786839 223078987 360753559 915972525 755586728 660112166 854937096 319681767 267073301 491152706 213865545 242927850 89070328 67643933 43928342 652817586 985051191 557260631 318492542 39157960 829123861 194127516 881650039 857641675 478198651 551128480 861875545 686490438 586119427 514683392 273055393 688160616 415975099 41071118 405063691 172922412 516088739 756479337 107102093 8838638 946227471 151852125 467710438 45632914 260179421 541096529 590251952 213194535 843863319 581310790 510785306 99747787 918365095 32088104 637408411 824728010 680336770 416536633 224185135 737762877 907068769 586035220 505862272 731310803 496728023 281720420 445999042 637601566 431805424 533205366 746301116 568808401 858459203 299483517 85182349 301724813 898834453 766965622 914137911 462513037 83612043 734839459 637775603 794991956 627063990 897847458 503955068 213541580 720271859 441063730 507979631 361805032 387678620 329613413 269773765 56088137 558348317 589965553 437749873 519471452 258960963 577626167 358921023 623626401 288906712 315361652 535570569 32393325 912042985 388499134 946087398 125751391 875234634 629031822 947544024 680898236 128431061 419258089 452774751 162320449 937611699 22217839 249610475 267146361 853074034 289408329 801514721 142147129 902534318 642098273 516814577 466195295 396811492 990292960 135356728 898257411 379554420 980940831 763726072 53111263 10095069 299637089 72744061 359835534 780974867 625369404 184018426 229939004 807648888 157456999 670394598 36894701 955658336 928663384 95493895 338308282 116800504 113186363 136091636 694305644 723339251 261629805 780674321 277850182 718371111 114076067 229952138 145176326 170074453 556596456 121069823 282767825 2480773 75324505 5849245 600978804 407341137 795065773 190231700 215211215 946501066 947384804 126367941 896765108 577196248 815670251 296979275 461338399 695676204 667692688 290251895 652119416 407543296 265646528 194225545 250090604 465006526 250204693 874948841 15744426 263384780 816425640 130921881 749695680 795411959 455873431 669813642 884007519 453132730 898776329 128112568 474053460 439935386 63990211 382282754 493162071 51006903 358525363 746184336 177306471 971191909 535123635 591194113 247571630 723694141 846353788 634997644 374102839 953863174 878618143 188510019 828271472 929642999 384074492 127200194 591330897 347882125 600216746 936365719 829664531 962441938 302724386 966394778 408809871 559156075 141065699 629586895 402714584 531370353 282620661 438315262 404002830 487538524 99309681 549364772 704011361 126088732 560182261 488242029 456000272 862388025 572167704 287346436 346365970 618997149 559622076 131229977 147942629 613515902 940252793 778413349 444014868 957532947 258482071 259867998 871177996 308622532 390019661 698724157 718972375 520774330 546060503 417581209 439071448 425191247 684678753 824891527 134771523 780760117 788251669 146065598 201576461 274621211 932353043 717948607 967643020 107721679 80306008 688544143 362654384 873275488 776831770 793503369 136198932 9882362 986460731 681352071 726636134 743762135 965347118 461521303 829892073 535692974 817811662 602811463 870847857 354183935 953035923 702180528 17217398 876663263 553462740 301612450 975748177 424033971 699081861 877334870 847415721 751810585 317010860 117565380 714248230 155738221 972385305 839460328 518220083 694869727 68542541 97092794 423436947 716562613 510811413 582160550 614595479 678771824 571393739 738615291 109414479 183409981 779545871 119779653 101545886 509692641 595122631 301557073 635652522 559257255 321403029 797927926 401230356 816034500 131795837 180559346 167409272 347497062 616536944 236429593 49391649 267091062 915831473 479038467 680561124 680433923 231179248 628259630 264210211 149262250 649833383 903759969 637405112 55365423 113256833 570755601 384840305 749836636 173357198 117220488 649512696 615295210 913620435 841928436 672942526 365549583 687254099 126733874 492965692 868225772 512954508 184092308 259628476 696306301 270256210 995694248 879946815 246990804 92673032 988407164 959518999 795033907 547748737 668152403 130088905 287226348 90349317 368649135 773031661 824106326 922328191 319730125 369821629 541412015 76610241 262310137 847578018 164154540 326164533 664525154 373329868 443247425 592870591 83183853 986249191 64419076 180922347 173619790 314290208 705201285 39372451 596069583 138548916 846835399 692954975 399602375 19933966 910624017 235781511 662059787 968912637 871028113 373021900 578325480 479713594 395922677 731935922 446251550 751574891 763361936 896124120 455092844 445184831 175060686 431783496 743342050 586142945 862014627 46526208 403040209 383997174 73861987 1393727 279422917 45638015 893948676 369362377 848997867 524753437 424155313 741197927 510801199 82598981 27944192 798143269 94918850 205212356 860090001 159042708 130568934 126709446 896884931 589220347 110873130 21814460 421151779 602335599 584798449 821502630 509930254 949976418 102391231 613443834 454164051 745539506 963880251 48750443 203352081 275638138 821008528 856958595 455031097 817256582 575598822 447889587 714478557 409653311 931171887 294584729 998302373 17007293 910962490 428570629 968137702 235450150 655436367 681548878 466515627 988366001 624901488 93001155 864889585 821074087 130616204 511347533 887470484 601826377 57996006 227306684 540274004 227206274 963929512 48743490 831124483 680554686 315752431 781642337 401831623 978384990 74893753 603735521 675509328 947600734 668897077 460474063 136243863 653098383 559930455 494417443 90351982 962067781 159649276 158716502 701460969 953542168 937343550 317508334 865867774 888232070 653327813 556974616 967490257 200299234 717185701 728787846 812090914 141999484 36637111 115673229 346592574 998827519 42031713 665886290 524788149 592398107 183143294 446894536 333342149 453335306 715129052 528038089 422531377 160904210 874957642 492552262 127710415 207585081 311642258 607710772 519179438 20701934 710309604 746092530 454445419 985442493 753354489 115751755 506845580 37557665 759262444 700586297 24156656 153228157 408426910 534946133 740980573 158442657 943369123 207414930 99314793 851430642 489176121 82678190 91532058 289181748 580214474 440376819 667556450 667281579 69630898 780421835 724668861 115852331 142802630 520160031 80591144 519010242 980109121 717003278 510678142 4914447 699252102 641375951 655634695 690087736 542860117 152826839 995132874 319020310 546735865 22927956 669082707 644663234 351159599 29381489 464451325 269534474 561777707 586518399 73365311 684474147 509274880 853049149 853137577 941618055 74605970 614255280 168981458 667449089 611204550 654061405 681873754 259222136 586626025 289333272 798494538 634265640 241424788 931655585 97681891 437673039 568703955 923476082 189689051 554799303 759996890 887473677 155615777 585497827 116401293 278720819 574998242 269622168 146514630 659578457 249090623 908957192 345724700 545213601 662567894 857370822 401544962 659303213 657155800 809065185 685891646 463878474 365223404 891939581 645522562 304303489 696320693 211002930 696681723 242400795 679605330 616652290 869851236 91516248 614349474 367944292 331191159 318193959 960275375 60327385 307636878 442557826 292172074 241454751 647433028 322280037 748332879 394758045 258044007 389950905 452529406 947355648 254838138 101507240 362648843 851891439 486539736 327471023 2924111 348853617 102762086 596490486 469733269 371210615 454947600 219926900 510103492 76164512 508757003 708380391 496120641 989574013 866751718 876515647 771415315 287629718 877824616 802634535 676042357 72302060 23841319 510911495 757662879 619360793 264191063 52430907 689472711 440363464 714138425 413600019 3998897 812963600 662283359 300316133 985991087 84939453 343904672 459587767 306578005 890703129 130763538 224470311 933552376 562315313 315285601 413534879 938170397 918284358 570139836 938861806 928956947 23012664 517909876 768903255 5913938 758362615 44287133 180248995 205055172 638312090 878482167 825689325 400110475 26447895 628211885 253982701 542982739 921184654 315013316 529108780 22414258 602865224 605342662 148790783 429526643 119842218 271135210 955513457 540679021 235361901 155332116 698041382 839194637 756624733 47634119 736319369 250470314 305353685 836878737 66712808 654401558 353820530 247363936 151931671 11877741 122561921 777733634 755833443 552798130 257638641 372841395 867103530 715093035 863927156 348580371 985068522 822209569 255210205 489004259 832843914 61469378 989092144 837656422 822180685 949876437 369397661 39843983 669591523 884785873 939778387 596981153 852905046 4562065 390993975 924037791 221885671 425429834 57695920 303764877 214789018 41257295 92180939 491567238 664830884 853605160 87512876 862857586 890370220 741002125 601697085 466447449 625626376 709456796 702783030 270615138 848415590 250183519 70982223 652250680 491140178 510052956 474936655 604560095 949203475 376940118 861558333 725026323 911459893 542130424 668624067 870596413 112001962 432245702 899199259 454489468 296827011 587233390 341756317 873909135 375829338 345207356 199329394 765377112 993362311 38098545 402891006 992191423 604078231 247315381 979584935 433257618 764012688 231327030 500604596 736371641 95067966 233429890 961619648 437534482 375139836 668300000 333426755 851704221 69007196 180719449 374581091 468191855 798421438 653112526 957951675 456745268 910623342 949137427 654751104 43429722 938199284 440922699 636532042 647807450 578068242 833138070 40245509 388747215 393245343 777065784 943961405 236350173 538219650 90874051 273142171 330101280 610426062 511572672 361391870 756457474 569203194 311325869 540554610 771872005 307782833 964656286 208978534 397628393 557498797 236597923 878068381 302933657 89120961 708113549 631192806 91114562 600476130 862033339 185906571 974786480 973002902 412905933 524071369 805434484 634058406 562443399 500814684 161008703 400141781 552613525 216333726 225239180 277160653 434817731 181631758 438030219 116122947 7052387 445598755 343014584 506474852 180583319 758001044 238348834 296859621 969953210 334642113 633957122 785463539 960937036 178941110 134637296 973921083 543814926 910243820 982906428 19770198 818153483 373785071 240730771 24387678 856751562 399021619 624925227 461720017 144251238 504840743 245689714 100521259 156363400 193648917 90025139 326917123 634301810 164015594 900431011 607321505 329369489 666168155 996377970 200273689 232569713 746824477 853709153 495049833 767625175 413949732 619508458 433150878 205215780 543503571 418083429 142065959 623747301 29568976 18636368 452915386 594988756 84022264 239960459 692687800 284343255 562436854 34010940 359728277 337007208 890515636 160872730 888923347 786223538 759041748 916427298 605931595 125866404 964666365 230996285 610598943 184673758 702189878 95650493 45167993 449475467 199107690 582374094 861214457 28737628 537569580 152300091 444248616 359696310 495902544 625324880 66431617 565196731 899910736 125173111 29563434 794950135 739801136 288365252 635467120 698808683 2504490 663890167 940745198 973604695 742133738 265414488 782145991 29992703 636725945 855669078 540367841 419903401 584286747 401237850 636740409 959900948 866197467 843679234 177789036 895471140 279722344 313546686 364599051 278644478 632673521 447991727 725647216 706097586 312774095 371645501 34035672 598906525 581489309 557268414 336638043 684942451 66221967 937259731 485933382 634981848 898774967 48532939 664175664 471478143 760654069 847345679 691848533 436732633 464889920 75655383 284031050 231806361 497763694 472949104 130622899 221169561 434679045 876167583 323628664 74002770 7546320 497818836 422740608 862550388 954738497 844982000 574782828 35648229 232252575 63508935 94003169 978088388 493432446 145734828 822930755 933620408 475180046 440495700 804065291 181253677 271019626 679106246 56841215 812575263 355876820 360215895 840299494 833196654 39120410 338243404 21020045 824435672 999832734 178943153 65148816 633790449 549737601 645362481 641875896 607065176 608072576 956633049 286635676 875810514 674102161 130746848 92202887 818582617 480471940 477353426 620118080 428043781 148812349 998845651 369294403 851875214 190467085 976725396 457563920 604014321 875973751 808294201 590584004 999591241 630443381 218591233 590014869 61791662 263087314 814170507 910873928 18294655 432353348 805482370 724983919 647265145 922621324 653044721 848330096 696250254 167455989 766658585 70578403 832203124 579903872 57187335 67379284 340192945 471362844 260909890 994886778 547562421 57202835 31658670 548109134 979875746 330872759 325465861 186063115 437862240 692738866 217757356 150731541 349546474 771719710 508651958 712201715 4478436 459170378 954661961 804854 83301235 320739705 677859555 203580853 484577646 821058669 951014494 350110110 47950951 739242342 338133573 693166700 661726771 772163126 183331033 788716560 834089002 184372401 563036077 134675967 585891511 221893389 26062066 945428164 629910919 873517863 818659920 684386723 556216086 611212282 458360381 498380870 455971026 949823744 217542630 499236161 459720724 860133162 777560798 271305699 529190667 828010192 462927512 446263913 379515017 544285884 838730127 832715725 993216858 301129405 885910698 282820313 961878254 863300172 888576233 767253300 534603410 22177769 84101589 268230524 491637761 305932558 841458346 847613252 975932461 744510214 716675686 886235494 17448872 867406228 30130234 638549130 700727247 584122177 681087124 528996979 190890284 801052553 964883140 348443100 771713770 23740344 670186401 553634033 811204642 127581755 510603135 768556683 105194078 863354444 46125193 793710309 133224271 166986181 665720167 329189412 248718262 909158972 120695117 403726388 156731754 10730829 384765830 552449148 363089015 393773910 666414224 7312690 662618234 332079468 57279191 820875243 226807551 186782730 177422614 173602094 777600092 914362442 430070439 79315871 123781335 619130984 604947983 751453379 989594799 81282995 390549128 189884656 322870958 625020546 368842003 571958801 466545094 721062017 799557456 722905134 724928169 40218784 969350464 283870076 543883188 340226075 827409269 272996 499917194 322789473 287038842 57925793 303372187 799467197 826305587 500636230 430350234 947431207 245615640 440972354 239013380 88683114 996393144 607677125 331730628 776093929 304687763 673302350 803215288 646814297 430086501 518477947 902120868 840717340 741994792 236376217 503511173 706141690 919546789 131648208 63455266 964747704 33406907 423061018 543143963 991771322 85171805 816918661 903540704 251926531 952267600 958199763 750504930 170935957 145611413 117411080 620048458 665835943 228210620 35469805 80938561 397663181 60312986 281007324 424640909 200546516 376137849 598877004 223638245 742771883 237347266 468513849 395194536 338377320 653780693 139831843 146756164 175748643 248409496 640143139 983549641 570133792 659132820 776335183 422295011 121313608 153827418 272900669 549639251 184811133 270586597 809055336 649536102 368272839 471075261 737023400 908079667 740995629 980588993 673662777 37388535 380885140 437094244 980334446 491721458 227111072 245746804 248065404 484929504 939288102 347622855 834395359 87102442 833713765 76351193 54495845 265176483 725788761 964196957 16540535 744477455 612843995 956051203 939838654 236946815 376772982 156138362 549052940 909984350 364723813 363864890 266289168 199598767 924569087 280794998 763118273 674645031 342222126 322869688 903581878 341218886 809618213 249209001 333399266 859856586 912534686 571018874 284331901 959960389 792594599 494286596 538392940 326048475 973320363 249157077 679305186 986715629 434027428 297336464 948026913 839325063 54819112 11912415 104502566 774770877 965700266 83733636 114397082 482780515 561170750 789396918 544945246 822268552 556821599 787146631 999110535 576228371 707752730 712758141 893457945 979077774 439553727 60478335 878810720 608233742 33937809 744422210 797020000 157309800 725009199 438574580 89379599 278505144 190086955 508566631 935354576 945895739 356779398 787427554 575807931 237340988 12398107 62850044 986125561 604506448 651248585 435521266 955023436 851727034 177812386 766235841 595194180 559995665 58653750 182609236 12141571 641120386 802901033 755366809 538257529 774520775 789129787 918629295 100433501 142932452 771470600 975780915 984288364 664665229 423383761 467697835 972109273 275840588 392107415 442218509 437168411 720634101 925022034 368909485 115215183 521122059 781205565 456658604 531723996 687760561 717550714 62199325 72401318 396011222 533720302 447643352 579792038 194145780 19930868 821288764 54691460 102273147 39601262 966203089 270351614 490983322 325419101 797291877 93712785 23572736 223937887 799186424 826970994 997760788 114065093 680770260 544096897 459206929 271077705 372077915 649517136 646268824 193551512 825876974 850728939 84574477 954386726 722086650 212654426 827527801 126275351 927288863 413748654 126840864 602904609 48073206 944825276 480392423 641601346 341774375 680202495 743686082 695278884 498146128 700957066 760358909 68854053 634671727 479022787 160721260 103142455 860227058 506879332 824103829 373773358 115690572 287540795 360466637 58990950 290490127 681325128 65906412 359320688 193538355 644012500 337684724 144937986 897599835 334769381 534823377 425822662 143485302 613872994 989560901 169584034 952151086 663263018 448328374 797873421 397260168 242169100 961555924 578908339 193968240 981129708 24140846 226143721 278738949 983475738 847131941 542343876 976440703 474105424 490016699 676359951 80149311 769415702 106326009 227963711 847615331 898330789 109839554 670021310 261659853 211417694 566239150 163703546 308303027 51519850 977721785 188817218 644866108 600271590 347274354 578491301 288756636 317037732 751417446 379001386 307329881 151676012 165006688 565485664 866882747 277599285 44040717 540666342 594815019 506296222 572699556 214789193 68798616 143603282 12865921 862233785 439878052 586385546 406851287 614072369 873755994 234030896 698617012 809868463 108064810 274591504 273856124 739011664 311705402 679353431 727573155 778814095 645894070 400615025 344424607 822070055 123566514 936330942 907649348 906072131 668656631 819630071 710624099 995320047 402782818 485710630 902030656 757434391 350629552 493226862 780512319 983057462 156407147 568862236 226985816 87862163 145346520 248609476 851796042 353867210 843623170 78805636 95181485 674415840 460955636 624118161 108101188 566726098 331307719 211228477 970200094 119961046 436470448 84544038 90878059 495033528 470504846 769537290 895804761 468179251 23390415 423754066 704060163 442817703 129702867 678252089 774508688 379813750 893150721 890644360 401634067 157715590 802255303 32788594 186176156 676833334 470955378 577471562 306875142 979690578 547166221 748158416 610229033 703354833 931269174 807853015 566876541 451859609 165267736 501228767 489575194 1943014 330413928 358379794 882918757 797040489 30936878 533806925 271400532 709261533 981402777 844631459 466207516 573824910 473450118 718703246 686897245 56541844 473579997 158497962 909348682 397710226 450684213 765278120 676712622 818571107 972880791 465551301 64251006 470776970 920357039 314977114 973519456 831954409 877169109 822679373 755647474 573712273 476444681 469222894 780077547 203877424 693809847 133546599 884915149 183175847 751193166 623341158 556808610 108966309 330510779 648679464 385038808 225813478 452554266 199439144 117223677 363100466 551278914 751828007 793822876 537509543 618079621 62790386 534652568 453989114 248778113 879895278 163087397 774829750 514253549 643801803 351425068 631047471 198460464 59480089 101147375 93471696 855874946 747011035 956644636 632231853 720014268 185791445 736522806 167445163 501077272 401233516 10628822 385512998 995744056 833880530 712498546 490205895 385567052 554220524 99736218 71465929 585369513 750942983 917619408 289250028 538154717 951218705 741216279 760050327 779148759 131257032 603827411 23263901 873763096 235993197 748551234 31009140 924507279 130806693 227063461 422257380 960398410 1420748 200428481 703844160 165944086 952075545 998610653 417356970 491617207 312800989 644374688 453322554 589574318 792644221 776609926 863278850 523079451 364516941 583032496 495425917 505191439 530184306 248874444 469445009 365512465 470367115 893861801 637883917 448590934 2379888 778008245 182708964 766181587 914924020 261658329 140392696 324348049 587367118 84041234 793597876 299854659 9021951 601324758 207905666 598848743 389681057 200622762 989827403 802545110 803408789 919104189 898331004 573548893 410968828 339153336 986914864 78525392 193697561 727494073 601142602 709010754 772789324 151125588 727121275 156606528 871591105 352360190 945259970 22701842 971203571 972355941 646823649 936210545 340242082 169648861 24308122 165054026 661168015 804027741 525419085 797386798 49127864 53347301 262352265 553104935 801268082 461713835 780355897 647833257 182537800 335196869 779044541 616621078 570892472 264070607 221247989 661582560 155584264 327144018 770443456 475370153 898302161 7009036 868721134 431774052 683769430 554266856 147144538 355728437 325625548 866501925 727838751 103603055 178300273 407102979 542680237 881502994 646506831 607467983 112158805 12547424 652297744 343063884 325275216 102619318 409013185 325408592 704027005 847864074 263950121 595663419 429880247 308606030 140238366 901717800 203481847 267556346 355556634 492298639 813625812 453004587 482567089 195682161 333433077 532706224 709450 965827901 843139063 392617167 119387527 850579458 22225912 484094226 943912311 601027714 459407752 556433554 596584702 552910694 595890587 712967983 275151677 743111220 81212433 970173337 171366115 49340743 574105287 896599065 186107258 379863390 218003978 930080831 493432196 791836448 614638996 384301440 772639019 579146359 718652102 830138714 370333221 103704989 769538155 298116416 20127597 323868142 237773710 65014926 700510420 416856293 967559151 521487252 117909525 512178309 381243487 681902825 675250889 232328579 453805746 857142115 161962885 230195031 203488645 736055518 825544819 858292970 319248861 143349956 498437519 384692128 58125757 481528723 316098769 381928620 221787200 657035053 417692244 405609076 319357089 237964190 839124260 73438224 403301927 898898079 206315679 459636042 455458567 183299148 95719093 839065274 126849987 975219454 256840077 879863537 87300237 224475437 868718484 88455778 325764113 804279097 864255468 606325549 47957638 205643608 241918575 701260616 375180965 631776250 953903133 753974894 578329580 794959056 716771506 556967324 846784350 65392852 643406350 134543570 851781428 825690426 543963039 185519633 616665032 835314619 186955752 92094423 245797598 821213678 692584408 493051900 27542766 803479118 662265926 570878680 500086132 882160243 356261491 731987812 701164772 619607759 849909274 485869185 195315450 649579110 740629330 461660889 800921998 445460906 150158979 367484533 20534769 381272089 34710819 609804719 672756397 224069463 472911248 512725850 236601965 126679636 555771742 953945728 566237862 443118365 120245186 404873735 430022027 340892809 926035945 768119639 434117770 180838456 257951371 331558706 913930216 73873479 930924487 638478725 725747519 827633131 829836719 694324274 192467442 349697674 116954149 666066899 697706546 886371680 502734046 527911995 144810306 330407098 994186884 110987804 559032341 644331123 941306719 649037339 612446387 355976507 426719463 231410095 572574361 720895340 366022065 592352240 568388439 106343738 426718355 381114092 95193577 285325477 388833026 653945858 152831544 125116235 954866092 126078739 859246419 740620235 91715095 294310885 874083241 524026139 711881445 588887747 451674157 897699461 761611881 344154835 874643382 91853432 364877560 909835627 833779609 585166075 66551409 738939355 325378847 218034210 595709536 833234773 855674346 348050847 86031616 645341988 386854523 932605095 243563851 18299169 928930593 487150976 32412683 102420924 993237713 552633187 126089726 536342287 906998845 937685723 723879936 919664566 124810108 431283736 860303377 255920224 623596977 135702856 665239768 630330810 11366261 502578771 274792081 361407979 35617704 378771423 329035827 201648976 796327648 939411128 598425326 719487591 864279782 328962107 608531499 424360853 127356149 269602220 133650603 11295613 554829957 516254108 594521400 410438219 291944137 252214361 826940213 635420809 812540290 114203298 240500727 561441805 222799395 481814437 818454138 135744531 450959461 182913260 336075859 304453569 508659194 389599972 178859942 892755275 817471322 316108655 925870615 616533323 201601863 730784874 428907078 485928617 479091188 193254712 369877872 958554408 651549852 736165795 545477934 203357003 216230211 695260595 573584920 493102838 271439021 168010419 706256713 217912079 735521157 405251116 756418921 907422202 891539307 540458179 729463806 951377919 954049309 395798267 726312037 508937696 63441256 201591234 504370448 243696743 522927608 883584913 438717768 439108821 886193762 660774949 697578788 148136026 496554886 422589828 940514728 516707091 685448137 876440146 599679880 393160352 258422895 304336442 233000181 237059756 874529982 885070093 823313913 275450697 547761088 878820009 399718086 631647042 301841162 825041560 465379582 172402887 642179537 956352412 516627558 183627787 626056447 353684387 532012119 647743222 63268113 439788546 18796203 270945906 68190890 985614751 775173409 330657720 797089428 550870529 186937906 394272188 510826582 667095442 599849746 419941106 685981278 430921499 110957635 681974604 423967440 428329877 867732085 429134143 39231986 818409458 571917783 765911162 834342773 237782599 308059803 889452839 611531166 125355689 799952167 670827061 506030543 218373628 828557749 833117526 667766391 211721684 992478973 63356686 730649442 831907778 37612663 962138973 267409790 298077924 96280471 968376658 538985629 357490697 327027604 51126251 927956869 915125902 17902222 411185528 343033830 77127077 243887103 433933020 30999783 391111706 469649306 304824718 882529315 256206050 403868401 50474498 598358660 772744850 603756802 521377480 184889318 720434078 307555907 952401091 64312758 192637711 365155415 838084733 658462368 509985855 812716613 229592125 273466823 534869351 447104227 525364334 534132134 775909561 424104279 796197652 638285225 534843026 44923643 169049945 632924139 144395699 244655996 538480770 184970554 864325212 854620101 322798124 472619738 777207875 685238350 495786048 59618612 485451071 941773943 576225157 107336636 7122088 456670104 585825560 681541774 168589634 333796843 683682799 218760874 931862481 14761589 672703275 209810613 616141605 31260765 778453063 886438276 847929572 954024499 386316201 264164140 13447342 118219238 648655358 896377246 894419744 199010371 443410529 323853212 692951908 473626311 1700324 465544011 177213735 655341996 864756653 787708314 788164936 199442596 523604370 925856066 777648334 953653368 629064312 946193020 732374635 639276288 817764743 653800326 427013315 387684788 226396969 799923639 750071283 561598653 92695715 964279766 75997864 409971279 661064328 994812736 40880232 698963902 980564502 123363303 384042988 758802986 413438153 150868836 539899495 735722867 630599353 690296023 325978250 477902934 886713203 549841637 741264046 586555032 646203959 6398185 128181267 96077624 57467773 84553461 644614139 845502666 977597802 191253354 751222912 838485721 119653260 455182245 785893404 112994360 47245398 532076706 500785553 613517687 633272713 679277137 508179094 148357356 618600733 526725089 728187786 853072087 612869078 106037137 651109667 918037552 709244452 231285505 85308519 268036110 511771017 906955049 288116103 220350504 599266875 5543521 584677695 142952871 803852822 53401906 481337414 409739594 327110925 603411509 261769282 796544822 126077454 810493058 910945779 352768595 456226355 814936936 559653101 84956463 146375401 163802694 852164136 676933372 915848111 616975277 517810483 143186636 990580531 711400174 23273528 200052065 892111713 505847120 209326258 548599345 896378600 132453216 727488997 900013696 28324091 984997213 609949247 674177622 778403088 488354390 51737376 106181370 332125452 71294414 155987884 543126540 920631301 256847119 353587934 482416760 465501264 522209547 780245112 155722464 456894386 667756657 128933785 411306059 596438372 744164049 655312517 545868706 577242160 138945112 484223996 162926090 871835324 247492829 163789529 842174915 985250793 646062955 157576081 25892666 377368417 898843123 225593431 45012455 539915875 708118931 315271934 151397204 721124880 142258737 337797285 599817312 950045877 235454906 691366889 443591510 449164919 5307752 128543775 66500181 635799343 722058362 516189643 791096926 522600777 157422493 174234820 330685019 768653702 197392506 808570894 554185387 180638935 454563172 810480992 779077110 620148246 763702438 698493997 640383030 105613944 217275297 307192803 266763878 517462440 144671020 777192765 921449328 639693784 564119440 959608870 294049992 634614478 207534613 1344819 812866850 511988181 273833964 607867729 608591968 419703885 689396023 785308601 693680687 160705474 290151720 90440999 28609526 834912384 736843418 207504851 572716921 598055427 46532085 131051680 874451345 716326514 327372615 228444777 105307408 624351314 355034001 197199994 605021716 607620321 526752390 397095832 957219546 904043046 15474448 303251868 336999549 784176918 100904025 862549427 809605367 377594966 919215738 606854277 778757484 511629347 98459751 812333261 324047181 130822452 574090541 826366366 898053210 439262005 905663024 382340616 241126531 853818406 587903468 795307043 930687876 383414367 951501597 785263182 820549918 421335025 33178759 603194878 664759576 48782340 47844162 517263546 914196538 878140584 573239166 38837416 411544965 286473133 136078256 281977766 968941189 879255768 314933904 730190939 354108557 851024889 813321962 422650727 323399346 713531993 912678217 600945968 540316044 554722751 980104404 36880634 604597502 194125456 183462653 734378714 121141289 160617333 309316737 651680321 894271901 746406994 961393775 268692160 858493047 813178985 319951525 612925499 179661878 120034123 539160863 143557684 500902866 331448612 720315179 140639907 897635801 325698536 387017478 421661974 32952204 375272473 568283436 192153799 440852311 998490449 103576286 541224024 451134780 758144342 441902485 44465421 654876995 716738032 693779872 336098526 741210168 492422387 783524384 22113704 178371563 227429925 198384348 219535705 738711486 828454776 463164113 122486813 218777257 694504209 871998641 682900699 718286336 88916830 542242870 799105022 860668215 377880934 901853552 694746775 662029962 250193595 435312648 386558089 272187867 271814337 291682902 19928378 220623005 669563470 240723440 145493747 674500854 976079205 641687400 338455881 791294664 452930443 130089517 715075024 354284051 449426817 177313103 881463270 59273647 984739739 293625575 302935665 156909492 275365224 895997367 57599969 199399357 361306567 946383090 206620700 439929102 754967080 330407642 246433363 369365014 945205126 608428174 441530997 829199621 947489819 126155563 231929754 621373714 83051228 476813500 639179655 976171359 406070296 666102847 934933555 736868496 955666223 184142011 228257595 557223271 62757393 993401127 485590513 395694574 886868884 622346802 805074858 358888675 508764248 773586279 948961593 365434751 614639242 708322550 894801078 373537390 960968273 124187640 924866463 397079678 98690443 765149616 328162652 37231368 77957290 816519049 284570557 107747527 94904577 742205761 754951122 708899571 152558067 624901644 356882889 194173791 105010217 987959535 79836089 239859104 316476423 356952926 190833890 205679693 819988396 746925507 206116495 823241313 661790901 192737247 631951259 130374428 568521282 420930533 571923978 959571648 337868932 855863467 18643010 525112086 836165621 899517672 57812844 358368829 304648101 114799866 714006567 339929221 739162745 610714180 328227278 909411661 973589856 992862106 261046836 818278207 847754346 976917841 530246513 856290574 150501313 812655941 99924763 460571329 398441370 72894616 145288451 107127837 18556412 452454955 351078864 450848624 470016919 884069020 580353522 516789654 390188726 415122716 783169935 161314836 409031080 939523564 838132985 411131683 316506796 211665475 921237228 125154810 349989679 1148660 206517208 905558368 978825255 24926314 230341493 68083339 503650907 610432007 108145307 557317562 183743928 703012427 662134094 455773582 618066632 712730454 155242573 226444096 592628762 687414709 227703435 560900213 539998789 431992524 44884293 96461105 792677492 796736059 990797119 38862703 858768483 693418579 400652400 748099183 564355253 679728291 929420922 547855819 274740885 825558834 421678269 384744165 916544804 831320541 649800467 138773833 856803766 510597171 813998170 494051370 480403386 452429130 281865318 874498108 432085802 284035352 205874221 861963247 347751782 764314048 949406336 98736511 546643846 622284378 416895965 48505854 158166707 290605455 499535367 556353583 767320194 12891324 806560423 626225023 288707897 239604573 425652256 36952992 66582140 467978370 483347920 785369871 190388342 644468138 517730997 319927970 120450212 177369511 48115658 54420074 124019419 597573770 643341845 700855058 411685687 12009846 909651068 510100995 486236475 789662433 91132247 975271267 455675620 765765295 987954157 497619168 691427825 593754079 736975801 713411419 784506494 972060532 373413256 743735242 994567649 224152672 900773672 792724126 258694005 496988658 649072418 163580842 678331642 648115363 285445690 569672376 929842317 664984047 551895588 171886272 41885257 387766726 44098440 839497117 853047987 486955808 820825853 6350155 395678736 778803192 112402884 892822698 467830516 582126249 811583181 545029729 381559728 702222254 226923701 295935351 239647817 257945254 398425773 772775671 332558839 891836853 337963762 366201426 159185076 808358157 416433940 546033802 320807711 364382527 960416002 483725731 945767110 646311628 65439745 949151401 855619574 717063573 10648313 123212309 407394350 571612390 544668539 902234319 50311813 120526487 66570538 313259644 897505993 219583312 979325514 58285388 214763182 741781526 131084047 85183021 62573859 792062708 153010485 834113954 151959863 371252822 965796365 158076558 218696540 129672116 65765523 874510692 47267064 729849149 962188428 28882960 292860148 447258428 794084121 670828069 60195789 84067237 541119002 575054500 489974496 758522668 757908338 50723028 196042974 593072184 393882549 855721568 98520938 196102855 248654441 700984014 914199768 710880838 898491900 608502093 204701819 860591824 350694762 159049806 943712535 46414424 226653535 988624627 941737269 151933645 78880813 737826298 348156428 285332338 320145475 841694613 679780595 590151144 148051017 283394999 461964902 186314228 421202184 528076434 278900432 959815702 354081545 879739009 993471483 974173751 359446159 209070178 390649146 199775988 278790378 245025941 879886678 210473976 521038454 431176188 724981727 623321220 295261507 957030813 878487658 967278152 470346650 483727580 122965012 148864626 891969714 774898035 874941886 614645431 151746674 988505061 290090443 624977469 673657766 628505851 133315919 242265429 84528348 58217680 399909664 501089348 230658368 947266788 491323436 196293403 576054052 739357774 493720808 74508585 49586923 307099758 100821224 315796597 352633007 336314083 836961683 895000891 404833897 792663048 17715439 980655948 12742945 322563458 324517747 69757981 387405180 721639695 745421220 525978750 62322126 56422161 358871608 976393513 86895047 536623675 95079152 550075398 906141315 782465754 497298141 176891252 525312401 820994851 387834417 939497018 253151255 739474952 412409312 327699637 611724808 874104498 46404071 630155059 761561070 867066395 284297357 830439372 979634499 477959043 9919467 953332338 947194413 634190406 513087645 663939027 968203074 608204554 920707612 441333932 463542768 997427443 130316938 447723917 847759522 384929634 13216875 83781461 578904502 774148037 281024172 678917489 120966107 564955408 418877484 463789759 381519779 919178373 247180059 237953505 377849808 618677805 954213892 607697473 291295274 795330157 330284096 750357738 815649624 947276741 394388490 197245207 251497322 802150640 179871813 343499690 610923520 115323460 150052112 179688236 425260739 95774345 707198573 518328288 974233018 35364297 176837727 727398126 103363141 23574194 597192066 839961856 993292909 393806299 742829849 31077725 841200319 471472955 526878353 736586216 317258182 389707543 396346576 760416701 847385285 806904899 909707202 899672828 820702499 307992446 856999284 306307328 896987146 136516217 466158342 554450525 533226359 935667692 236209502 920904103 577915473 838107829 698882724 325995618 552606242 2216100 503847849 277426392 170111566 7172792 839000412 393369248 26055915 485295943 243405298 106088298 570777816 234394699 401354710 5005354 79022227 749431703 523020914 130267760 739462268 643782867 749879577 782593311 762766869 895324728 848566771 882434816 656761942 411704677 152125845 805912844 323756497 682024737 892633204 139461464 965779288 574478125 309856661 54224639 303505888 929672786 703493079 482729891 996340355 527009997 735053205 139892465 760080078 727544549 200323393 888805506 8090913 465765226 398208479 699670995 547853149 913035588 451319631 379753570 565400194 857165031 862658546 642279336 182246732 372635015 366267090 282359969 201494247 292147877 520133023 312351817 476676285 137615786 536603688 691170346 441105380 33567115 365437999 926684067 41911954 48125791 989743224 542235671 148295901 993658474 84741587 520291470 675089826 625051034 892800701 143625730 22335068 491726126 152183339 822157817 969656787 52071956 528401405 385770807 940818709 308262083 552117302 426263668 956891567 158703680 762411754 821674885 482603518 742300788 40928516 165730865 561599861 661458182 185410108 647519865 91737849 862254525 227844693 18452279 892155031 404061312 25897455 488934212 122346485 96523128 406126665 385551591 791281523 85988825 140047855 299845472 434106683 445224297 897190613 539001757 983864202 853750723 396785686 423730477 590391648 397736588 707711029 776610847 409894801 941235234 921004140 29117455 37460953 781864702 160140158 366820341 577924439 664052164 448964306 242053465 102070001 913458980 220962945 40912192 203192059 452946835 21235870 432134424 541058144 54664018 165525320 733508854 307560577 829176795 549232871 819079232 983660356 312758722 633127869 492779196 367808851 289462317 551971377 415654284 709594643 840172269 238503800 780884678 592614877 766277378 549117086 27913120 73404963 542068728 337577537 821265103 136421543 289448818 392844763 260108145 638401316 730935514 728318002 713462062 349584736 144586489 857585493 244362367 370891726 838680669 839963202 575171974 200243385 275498917 438891620 619722994 299645940 367159526 69062773 951859644 81548525 669093056 445331721 29140179 504505869 292224286 810425786 947492894 908990808 914526039 344346797 563353135 521460333 74215803 183121300 93233696 559985940 555441832 187066413 114715367 971781546 926013375 118097742 967638468 189713778 743946306 680934136 319265723 644833768 32185182 431645396 793725282 802369245 11923671 167490237 512216919 132567506 976526060 656934805 962632903 567065838 878833181 425999540 125074544 395302899 491705957 113844819 56328046 867993849 373986598 139527016 675298488 821537419 382313214 898837347 738459735 657426596 854341458 414551821 337214070 213807185 320637360 338522056 188595644 303803396 905315859 173044922 893971142 593207106 941692586 65479653 627818062 335314368 209064853 614062220 163307054 588846608 136808617 721807235 144642071 761667755 958657253 609269702 450474304 185528035 371813632 733040990 683971708 843684372 171864408 119148033 405181351 412505812 228922697 761230561 788181500 238370405 631686674 398651174 362995354 101887553 962181984 767551455 76360815 977566392 276886700 822350948 15027618 909365298 220130337 509020900 69319221 861225515 888227205 784488270 125875418 255399231 882073073 708726549 738061646 561481654 362633350 720858469 12596530 401558764 238856492 954783411 662363768 410313105 585110629 21657144 775204208 49973592 353152651 103798466 715422156 181053070 116213696 529215205 919615802 984705318 261418693 501249198 227073585 67284143 142725621 609162897 14612958 835558571 611948130 600010112 532350494 44800506 265735575 80224946 978707148 921891594 862778923 197179406 144268171 742050238 703109793 286412032 986602976 608365638 198033084 68486302 613357946 374612471 26757905 797641628 543423676 561009220 648481521 265703407 368555032 315604613 376319953 331965141 720464309 646087752 850391397 61711408 871201585 484083049 448899540 324693894 974072935 695909977 371136821 829331550 963746610 15428348 422339734 278212520 829085755 488100856 189583187 745119592 951784895 258423944 177393744 200221694 672628851 366556742 949696579 683450767 522564750 990059614 412319284 691574025 977944296 154131904 53312438 929785163 205586497 695573528 493835438 305917990 798331390 745147884 270093794 494148900 644690833 166502371 497013014 280794834 885199477 252836303 92880725 539382439 934820431 498814250 270097936 300958636 877511188 867167662 902924880 822496335 170714979 625610944 211050775 424688337 764920318 25257979 848450342 35561095 512224716 731624772 25656928 440865873 676305503 112603092 981031546 587308873 927402821 118762254 926284798 142918110 991108558 547213516 262955749 852660795 108113047 787860100 554948722 269280169 302442943 714418374 193932821 40553569 937300075 907498489 686041623 148049197 189257674 230779436 865964364 347661184 813793435 445502845 661457682 885846902 912888400 936043786 740989349 482938969 274874826 121794579 612540247 473267420 177914773 36837232 431329984 170435865 97949479 799547446 833901458 263104000 448408256 449535450 81424546 497058198 41340381 11540818 871241326 503810947 713461962 909422563 620729143 912350107 747087060 110443460 782299782 565468531 591619394 217558991 683522622 718414448 734477821 907953968 44118964 607529454 99862004 415103946 874868317 343286635 533400594 821158258 198785671 892193724 378728868 5144044 310606350 285250811 380939634 988282205 581498808 139910919 474811668 975471897 72716237 363920744 138628298 332986406 447952022 642274252 99136517 246739591 601238205 196434724 191740112 607067902 139901236 579933647 687524894 148033486 813246553 210091030 149601949 749873763 836409508 621241909 885961108 268025603 244616405 473639592 522945388 790095263 713900648 973551788 66850084 631239229 496966376 226078687 408633194 571401430 130052707 637764639 781533168 680658995 605072413 826990866 779866764 235721769 379521180 945875122 752651149 985966653 367292902 661843594 784888575 46542883 679692431 415490834 942656101 98585697 449983011 365118822 236677837 126776613 606464343 619459187 387520691 512209188 926829238 153466512 352350600 663173069 884622126 41136365 845965745 17965426 970463238 609840923 467010460 32862688 374663902 665014292 853319797 460044486 350192200 963494343 113863734 340271072 95262627 747383490 967068107 395300253 4507804 966234703 387845244 163484535 556889884 866350462 25978966 87696708 693873861 882542815 579985155 368223012 705626381 927521994 100030217 203277660 929495762 300814865 557821997 873071828 593861302 249025064 734195286 938759128 110254175 894327952 37243325 160230670 883379737 132603626 486029171 344601596 841571150 452147284 959913566 698275332 633344295 115062049 231208809 309509107 68867431 427429355 960173743 400225044 836322538 30970043 742056948 161152267 188790113 559684451 791408958 905505244 911712023 568997860 866699092 909878262 215326223 251134465 429584072 203729962 276106932 913762575 651170344 131801477 902019248 452153487 830376252 257809243 681142373 755269574 151195351 167607497 115544887 611813961 763113694 180508203 983134659 985888883 400482751 558292825 452243308 764416721 953912035 22360294 267402195 829314075 968288065 311818622 475756469 770213589 675550887 99395130 528959078 482401013 840836063 79310510 935343217 254738014 628390503 296306231 624212654 77399029 558402468 62054347 865940309 349300086 837460888 312601125 388129862 613479371 644470083 403942363 769057485 879783723 192784055 298324226 251998762 941111798 294679279 87115708 992447211 461338247 817330393 35337238 411275382 933502431 67916747 661473080 12229150 320817191 985321660 445338909 521726748 393460413 724315622 484407193 903505076 107181418 975411832 324208207 958061023 97468681 441308519 568825031 363297538 972494508 517894852 331049708 212072660 712344675 618936471 2028293 307408077 799086737 102619761 823206728 280755353 965485184 442364221 737139963 685960875 728333818 762642165 241114113 456285490 376852173 676010197 9084626 736190280 528927512 743378973 961088649 370986199 413236743 290746283 561486017 250227644 83606468 574839584 451822930 970419671 76791713 963889358 48021203 531152152 462316845 711057467 933910932 122169725 369778300 97329765 846190527 448701810 235696112 421145273 483992513 431014234 484973380 305857286 803707606 933096937 489610770 607753522 525537570 112872745 651597171 564525709 412938273 307347326 558429512 537397012 910747633 336142412 71553423 528566020 49743874 555196363 930642539 283684863 777430752 110528143 106671357 611204522 752260910 165022773 324709746 805997258 21015355 421019990 7595142 192325876 799626631 779294476 928386551 91628416 78598999 640398588 440406435 475266492 809766469 308739285 8093239 256178840 255089136 123522273 106749421 732920407 543741736 285042132 247074969 24495652 700549367 591235945 861965903 934293924 782251712 176635896 612545054 391950511 888234575 900070822 699954807 946259204 462417201 887205255 944431372 895314221 49429771 524960549 314507603 196422700 301565224 163648844 984373358 734188699 496003603 424264465 749783139 782236510 266318691 3542881 193640720 451725544 810712486 934207381 131363909 952609648 802799192 448364885 428169196 739202006 989336876 315915142 697815646 146881592 641708063 648649712 568114246 374581346 858894360 739725958 178793242 794171639 906624286 462326645 60672517 735694827 345180792 569649064 575964190 160943538 826863341 284817257 392782247 191661025 868186176 861888190 632938096 214006975 400960363 262157570 803349776 960588815 679325463 168188818 200999405 48065216 797907056 140661194 261566310 813015679 164202179 706605188 365904591 458470592 320020218 920378226 353417065 797560243 420612384 12251261 555625142 455228119 676214540 19301772 557991630 655263631 823374860 3635620 924705024 635252739 453120780 452781817 675352794 896237375 486740553 418794998 439070113 462887166 124089211 622703682 973824926 557584445 615863411 135116598 950735382 829967613 588384689 778121135 569815888 184923571 123123199 310748640 504569906 303279593 217975326 734179252 850081540 344054427 390774340 25681492 364393846 403220687 410726409 293794914 837096862 388772788 497976274 711008859 470664006 81352515 170858306 567018802 343067152 742849591 726426619 215591067 338659132 885289986 786921267 724572582 146817501 720076687 850636583 963815614 968532695 516515000 496093760 409885093 244625315 374529921 485007137 724172865 32879561 227314833 982772127 957061991 112816883 745388980 921881716 710605996 530443225 86130212 795449247 285478174 450625957 164435385 249055893 992958568 210218892 943401961 567974536 765911076 259766609 802905212 716255620 544235127 174569173 545139309 68034169 377468556 41359055 376649561 651215066 529730597 977973825 281325595 71734637 82294425 353989926 103511784 525205008 533165442 445617413 446084504 914355957 454119391 204688511 254419978 177247461 808875418 996279823 56094572 657192932 982315799 449882785 804028885 251512167 27603959 396691354 108195760 135525301 551469628 880433654 67411493 685941064 199294237 713857084 932435969 5142851 60461466 817328966 347554721 526778145 151127697 396892302 692799265 31712423 146170794 35522306 533157156 400390400 652646071 530413786 670604463 333083736 700404494 984930097 240411712 249343167 922448001 677968357 91199400 184085272 743941014 582988197 477382292 364069846 576115257 774110431 37591076 842815561 593725365 584756659 316949889 700410021 325305817 706271264 452145595 876860475 17691862 436529610 902148878 745727727 819655698 851798313 591476748 267141818 2005704 968480097 300968041 866107948 911664007 352485498 463373628 695535171 822965964 888827432 37678099 972721007 282570842 729922673 763663465 162896467 472035406 836571173 673975085 460751417 15541085 619912357 727013165 39041096 503349466 410575675 481937214 698889434 24837697 642621183 321648142 643755670 912954026 19491427 685107577 734861977 727413925 253589855 510464208 45899350 224176920 101753052 346751035 187875288 772175590 828676820 830899742 417229759 175771696 245631880 71326636 740408854 775058360 378630791 637891371 631639447 72530341 202340354 114225822 534670002 380646342 117940926 461746482 2749779 568561667 157294835 629723231 68282831 818111362 291037580 516544202 439711154 602157954 510645031 779014596 452507292 373911879 461234123 371087972 601322477 99046752 406928294 514197796 713287203 693115855 606218885 816314132 882100042 570771453 301042472 832434303 44586669 669846307 956069127 298845705 672367123 38675424 123508426 430784618 926294603 577254155 903140247 304418992 579074591 920192102 180615881 974490477 233467010 868337246 445970421 882742037 263058064 445416003 951758053 478505129 442384112 729285000 950194589 124742317 345731040 865427514 389428575 352110853 529424445 154412260 703766795 330877015 150670447 399321502 670722014 791991823 626421636 115917832 939570790 417198846 146974217 550339791 924094692 809436942 265556112 468605157 358938114 537221137 506928789 393284604 11967932 427134518 145301223 494845368 628944175 779844341 980743541 56388475 420690726 567644147 716333292 753193053 380718642 247885787 904708998 457776304 8990973 419805499 222917115 58367452 473775684 384406595 246931159 967177163 787726145 548613731 529397449 722515249 351562734 273560583 984871006 402189400 57029203 358652748 447523378 550512750 289396516 160261027 935693336 650606166 873455425 789749520 3507446 205155409 989148360 846738450 107004985 438149 459094371 248063496 593366693 632802168 662912148 655191607 475730602 962866424 780890763 141137993 938828050 883744745 289224099 133170076 645630497 29960895 674131521 396354864 878717253 22501674 271803679 211373251 197030418 520144166 964588624 561962198 509242984 195275107 434980180 24975985 692276045 945088960 197076070 494706051 289905110 482756862 777860562 746031332 235812902 578199587 79403853 90037262 676328162 427937930 87498493 227102170 386216680 292872666 991758466 392016389 1590102 851455856 79399259 445558558 188194550 156943507 622581155 835785850 909750661 206749450 405482395 14339107 828206756 35014173 412198552 69520911 819648650 201534723 974540720 28848134 187478386 910361831 254057210 63188871 631715891 929132710 47025034 234722864 110541079 414038185 985701681 125933497 887848627 694844348 641508930 689977081 432795400 936906593 530081062 643167151 788239308 955493801 50334759 563774302 472311663 635135818 106132529 956700682 274679015 366284929 667880356 974696400 458337678 281403052 589382733 913453306 619449139 704046337 109214128 204795394 829389933 763284667 979381558 969462704 620445088 433262181 593320753 102236264 441447710 215131334 442781114 468708419 245828124 582800851 39233997 913416922 368633000 476604317 339533938 905713049 980801813 526388408 959881168 107560766 793316210 44438971 29132186 39828739 110678471 559942502 868462028 308100384 801549771 254239371 891455311 283759617 446370391 578542929 272632958 973179056 118965695 834940649 532610987 446330205 873279150 194444540 850880590 534025756 52336992 985465904 956796013 83348773 925128336 41727559 439551882 464457385 878481219 428710368 812813876 652599120 112081341 981886589 273498664 462363584 147832240 285282370 207952434 915909037 632529346 626026998 763258814 265493772 342612733 668967289 674918925 938736925 113521556 604966529 614002748 77966076 575798376 252531152 143638131 172497838 550142692 480887091 671872111 338853812 955621834 87065675 114267638 318825792 92833058 109349528 622435876 176672638 151453231 933851623 152846453 990245143 420488476 921510547 537801481 517019687 16774767 580017424 259571424 170417059 118040454 8549013 627919804 764528700 646937483 251440962 102420442 421140353 317116055 383596635 595006610 123868704 354213650 975361207 348373377 883671199 656852265 680115361 307114216 351002458 185138595 580925447 30784796 484654263 25938393 936345812 600873554 134760072 820233621 432433775 930633795 649010361 810432750 46172030 829134251 848557158 189662928 320875556 567952520 760492429 568624881 253844465 690051852 665555045 908974357 34864932 506080320 189904362 97541398 831049332 161100769 874100984 87136800 908433844 594829352 148303652 776424947 659126009 755689979 601557846 785447431 909415697 841405289 721538288 364031596 641551694 314373879 787237956 672674041 861646433 212514432 863193124 486314083 586193448 257726555 892825665 584656896 490719868 482746907 70798485 437197402 401290516 243403763 150027195 961660766 241216098 888894368 474842138 498130387 60479457 670230542 353387869 441049889 579465315 317075027 493377267 420326766 914997259 28456109 999135096 362017964 934152284 548191180 820388328 423797423 351022248 348324840 786961362 574214385 462423576 374465149 622969599 529773447 686787290 549521758 777477429 970243552 258584883 30018916 688374023 913544303 612160638 595501125 751548890 889968699 776461072 647607351 863422596 937885907 856875458 968901756 685541459 823925495 888231504 851747752 608509091 852175920 436798035 536263696 190387280 598604989 92241530 845766703 777396556 465766166 482926133 466008802 65875713 249342989 323175775 983878002 279932244 37284172 332596747 110772249 755033299 423111340 583008992 164673627 502738049 987121973 193997807 51036809 813562792 605785509 235891607 560496485 662887318 47457269 367094190 75558098 223893158 98246350 961429338 428830221 585393413 604267256 91349232 176275426 925980731 273319267 424799828 654123147 293661505 3683757 849885180 604540183 193433415 932542704 772279282 595837991 831403933 455267065 454308676 967246140 63716299 487006689 819879195 662620343 531792037 661315132 506037338 170820909 38613159 530421147 143649817 659564783 389535406 143184153 516369232 600067993 129309060 995806482 172451832 676827244 276529887 400037254 319814215 163369767 591082731 193520035 884717566 72193641 265742626 110927037 79929706 284483362 846063256 773371559 142170353 10436997 43197347 532076368 648676891 452775453 586303520 924052356 900023873 704557000 718237095 369495637 758958836 518928562 784105395 836771361 132986264 873731977 996480535 932901182 393428507 468986613 116872684 702601379 488648514 205012697 502313339 72400969 378248299 980836817 232404022 451302426 777997190 989089897 228898344 146972395 522512357 815647628 935678659 925233077 622607267 519681926 751409382 108040449 162837649 289894693 609572808 52972220 881292627 345077326 124562566 726068181 990036575 456329911 777267104 775528248 157413984 127255427 339188813 780663924 298976586 816641406 448386118 660660947 751154639 174396246 515310256 151217078 268764250 864318893 419868195 729775138 900549989 206456631 129773263 578379640 924855429 278168149 701013621 188936760 962335739 234139816 29038746 141045825 217290918 149332767 222844825 910384153 186055949 891817551 284748493 698935337 475988122 526441026 66755387 601122495 780838603 81837325 221398836 716523116 254515754 926715313 594730218 91395015 384330755 65444186 976958882 854621206 381440743 120792162 638145237 577541037 70697988 150369053 622422795 631450235 771919045 362383148 332145543 63279735 154815529 289174171 149803334 428150640 632946343 342231154 896618681 704005360 382155170 664026563 810971408 319230700 345156615 788619576 60940768 371013387 622007051 914270669 659539762 162502190 771114009 972675169 755926042 487132525 83153153 698771506 273430200 826798035 336224444 886558656 387050890 31129980 185229620 763138798 60939592 57805452 566032681 49607242 870902350 712972640 797442224 927977557 620566746 310036797 618211477 115798488 83635251 488472848 562619436 214377530 239914813 882250399 424292242 710586818 123773262 733065920 369030682 914490114 819445832 416855298 744259432 240859400 386021428 422564277 123020595 410640153 925510896 655510751 197311563 331600953 132613539 979961836 432375396 526805315 465481566 953845214 852663462 200281268 190722473 301829242 655525227 393785887 290144192 807174684 821286693 741377939 819516472 308231258 263905969 613013135 563057547 434126708 262478663 200594589 751833533 522966030 962422085 986938966 363642586 204994367 288001671 134292151 263075937 975527434 647235131 148545266 552004361 752651803 314830360 820237060 766584124 48313354 932620973 1955079 945135495 35849330 584229807 679101084 251711457 87897545 927283004 783593208 229610139 240845315 967760988 268415961 520999244 576820757 894984293 210717256 679462246 958414620 619164194 422432533 997530178 569943955 154358600 31815981 279550805 324812758 650162918 581739318 250107531 136054828 806218908 170676887 21249258 5011781 891058219 952238697 36132732 425425012 825918675 308793232 744507893 796951372 930286073 911538382 259809978 856821915 822192636 305931640 241948896 406696531 132003749 551774018 714286075 623420817 233180272 415729778 442162090 864310641 353555678 937255969 590451245 579076165 787900816 360342394 541217036 87886594 36753344 665401505 771394716 257348569 29703466 902665779 32169375 505362575 478153218 918249201 160181379 415699150 133158432 711788338 377346843 598269923 531063261 314160875 573706293 392628630 44060472 390853475 729409966 532603331 353798753 699035286 279747829 288703235 205598376 595223157 357198515 640930472 327058696 748711476 900775999 445507807 218604735 191097445 63781619 985654863 120265396 543251561 856889353 788725455 505906895 698460066 691602824 68557909 613848081 436200680 738790118 886607268 184479373 187472093 271917378 723392678 908044093 716817777 612081569 502665317 815182299 313242471 488901299 384454768 238093358 606875215 926236306 940124259 780737459 807587434 928285160 3293523 982404317 828033258 945968611 835938873 251046807 630796872 308601368 72735984 928531303 938756462 472830021 972220203 754111073 889400149 569432910 92291403 468642982 353994921 429853419 121155436 320620549 529260306 390712779 274639953 732161104 356715680 137801463 906771010 146190541 860039457 688272151 589571095 122755812 440370837 506162254 125795541 86335487 199443307 103110854 779705111 49957912 284634621 829184734 399868224 864366252 734086892 174220886 751743129 363469063 810361057 32627360 862877520 251697303 732570845 127514531 307336879 546701303 53278256 598318625 277334973 553688064 340598638 433508390 277707234 347927128 547477306 959348634 234302648 803556462 190948870 885962833 758197465 691738371 951189543 15542781 343063571 666222802 76918434 494324576 300635362 57010907 613242584 992904532 79182109 992716127 675442686 680534333 298671721 137792380 184418322 837027534 446164382 820911482 308621022 824975776 32202192 602299666 954108528 545788998 569685330 924969628 618871087 645105492 216659628 661460159 6231882 372690404 724059474 916368643 742673930 929953103 433628767 569078521 707449191 572170265 80485247 888858696 377067316 820130198 855334802 416374771 866759230 561358934 459568555 890746080 351460475 674226295 904941262 368723018 437972077 599836458 661817471 109731370 981662977 677916683 871399031 856735467 569437406 649228312 856594009 867351477 30830584 222282893 21899790 555111089 464744618 177469560 515006957 975315840 615060158 261233562 522690222 300267331 676744035 628531252 968149775 322173584 83888532 593154115 863571201 439070832 690613311 346081381 246110151 314123256 601992089 740120278 780975553 16576344 922665435 177055628 785252572 998243321 711665121 856402519 94816066 643344609 190470020 748986709 885748611 430793308 214718868 561541580 332406122 796874342 707130665 151540028 918241381 755442200 894829317 486058908 588991218 214540002 428878925 558370613 404566006 453174750 256259387 30280199 334296835 956832779 956971702 333760454 554179150 946312293 918168007 200462449 855232511 28926889 262315489 774511776 848496640 948688031 502758045 766682077 989389666 179019075 928581227 318881689 558126309 231296995 874150818 297222650 169631 699022966 633635780 931586363 671461443 200859252 428923528 747605457 989815631 851153652 46988036 521851535 475569975 189188014 731689391 414165877 605380804 339335852 141533013 590234380 578737747 55142356 791507585 799459691 522630289 306024301 233649535 339842040 378551812 397021143 524518751 833693659 545656717 115560942 17855303 719701426 242899576 387166484 249734491 912276538 520515212 628804820 45375463 373692401 2490572 790523775 830065509 186552503 368928320 965647592 469692071 554739219 521434016 400885650 167646442 969730344 917797775 283741191 67494821 395033554 335335897 670446205 794811500 165579270 505487244 971702113 768776964 673812504 657104923 503550344 805241253 675150972 914150488 529310694 807866947 108298526 308439351 694208670 157744858 689134932 199767347 33312145 427416281 189396943 184397061 899121422 702433221 763587492 660951456 306210324 851852101 941259683 599350662 220344781 565665488 825791684 457193629 462284899 611981571 729727833 249975421 651342169 749091334 499006054 852484450 353875129 72123552 909806600 377422962 103136927 400893381 469414539 766684532 331280490 76770664 187765247 208540853 984810266 922519978 971868372 121134402 730693780 490936595 444973973 932339013 272579847 410174499 321038508 907308417 97910594 395500358 796754748 929050468 912478987 882111867 527433002 179442837 867539529 415103956 42296087 496808102 117149285 752223731 617551978 318950806 847035700 422026443 804672299 303620456 97237519 734053445 782075782 842900357 78742463 580360436 485401083 983209185 753579921 183471329 364595683 8144370 145810159 811580226 678913811 535420062 347133686 212011664 364962139 4866954 727814809 719534090 627477767 972408983 500114318 725458313 657750532 557819298 556006758 830002011 964074341 5424116 94193894 646633991 246672597 170510560 14444347 543715036 601777026 772308414 240581412 838954910 923507240 58214017 396138625 645435880 197967108 94722234 561657716 248789814 519754146 317257582 509875947 844467668 979403835 506173484 369278295 67057717 988230971 363535727 993132822 546642130 235971133 660019764 355286540 150389797 482517064 73308482 817785595 185169399 797843270 300751150 141275399 121330312 188077734 962434572 737036847 961708398 612536000 189817625 698184691 813438792 942827349 180506441 348517687 540279785 252702144 99958613 886728175 511680424 383063134 251813582 538042826 680934567 68407711 206271958 442913665 121766767 594082626 522584536 38395498 778998397 771834504 985335538 352073702 107777418 627829816 112065366 703983596 597997275 143340533 363337527 588669270 253406551 669214409 483357981 425968944 525243716 876908331 661310282 717045688 575036284 48251509 427390425 142226222 955311731 452785073 547468198 29451950 258015151 903836369 491982554 6663796 499143634 255293069 317022199 130746168 452833198 985081789 102875779 908034441 292828873 180372997 722244956 35310646 263615697 146416669 470308546 856635832 685599778 468160001 194479997 955343596 542517535 63255997 985540601 778924603 130426649 858482679 782286483 693468207 129500210 253273421 636278674 988665457 569471263 900700158 1092758 453421302 655781260 663226270 232783551 481405019 510366092 975305997 12383858 217345992 546580800 62559396 319515474 322728927 669587130 198296114 522932926 773197664 82168470 804584128 75291268 233454762 123843557 836062424 126553587 34443944 482068027 980796592 169563245 367402928 92096414 535534692 812080668 841206991 648768759 859159525 522818514 142079270 495596243 873357699 574251808 617762721 415383330 958585352 89815294 37211352 800425947 506312892 89394091 926944457 299555434 806009445 916717043 462601749 311493161 340460195 758885153 981801853 216662679 71678645 270784184 6572461 45877317 323645596 453570353 900380406 771339517 913728908 919203476 24140868 453915139 914353969 4587618 503938961 137928664 147639314 309527661 885471459 284830639 601538976 485936093 763579309 97167535 970506797 759604643 433464945 151403042 725282879 545301301 367118116 535272257 885565926 506994520 592183952 235019296 101898724 307463881 342299178 809007760 562175354 644753700 314030014 57123797 596445317 435695615 949222341 897160112 190182115 426045158 420296810 617598433 977409303 434650353 686232079 235876001 122857584 485477271 542013078 981885484 636647130 651686276 591361756 290534538 534826671 220677774 671187022 597299227 651681674 126934695 221206168 896915442 604046895 833085473 8638339 721769814 966301911 983658149 264483911 518574922 538163190 44632181 823896974 3622783 372554562 992360616 641905306 707306011 922952085 474040220 825773529 790643923 749811389 155583843 340459895 782201928 315697217 758023680 794118006 773613734 218651226 976270073 421728082 542749908 236351395 58030727 862867930 745376013 145938593 99070546 602227348 734838903 11544968 187786383 833675426 771974357 491918832 568076250 20787651 21848547 165268075 252046789 817992650 40801615 674876766 379567092 773356592 543948781 912972115 152630151 144273203 6845418 679341655 966494024 390343516 908703896 380332316 301502537 825328720 918251425 282758345 307004352 401409295 8213982 482822913 21568319 139894027 351051287 857583248 209758368 499835537 797182204 358222202 724089710 815457406 772054967 972643247 122094140 787537588 646713926 836166699 898434143 22376597 39570664 821852308 239464297 566951169 76422367 68256189 441896844 902217964 909430093 236924926 754185962 398117013 169951840 815302376 218308497 94142310 673335326 235774142 608626118 676749310 83123818 879727169 458803061 749452046 939856869 81985371 672359844 836374332 253835376 908343470 373594633 873169720 275325847 853445190 476462286 909419421 499624443 206498537 48896594 539994901 290362378 370041609 870449416 47360313 13709820 480199002 780236376 314591094 917334546 102579006 339722254 788760305 34812511 606768131 820310407 283224951 803734664 267565322 74222294 303578120 966471102 126171336 643665917 819207896 464356141 166469178 769105841 535093242 488723393 745416175 782848594 306431981 932354690 76369906 751144214 865577670 470183490 260477434 822482677 170624902 177405672 978948088 518539704 461861231 356373589 470204188 963701097 17748196 198574877 262551657 369217946 649917114 739014692 429461799 768464438 487402574 743336899 832775222 671127295 596346202 845055972 162233336 217729710 268020600 221001118 804716171 83566563 216296431 697693930 777968282 310741556 247410977 789371445 677663395 564517205 329788625 681769920 597866907 298205298 866104789 926566782 311373409 249120581 630655562 123859363 694052430 221132302 382229450 561969473 582506747 71244963 794255461 50012653 686378985 235349788 763186962 468516588 42028036 280455558 148555263 195842967 878022590 929657260 148111985 625692602 530594814 645083582 783552696 468037479 469600369 906074635 708107049 906200463 736786607 632207861 452411491 823501845 884265933 477828115 643293837 346123512 88284016 750375363 334532193 781837296 136985781 770335092 110441378 711656719 236718260 451144438 679903848 185942500 371171259 384384111 494139272 363661412 98679352 604892313 939581161 494836627 9070038 773202569 911617835 60973524 875516767 642601584 783706605 555685578 511669202 316988844 247703871 758449227 684744957 319098668 223532544 200576756 798669812 600562295 965512882 633237269 419240055 328577199 480177191 282905610 539096214 449451388 253182372 254358377 519350704 536856409 569504990 165351310 639104551 66620591 963355808 72397216 398997500 801842652 937633724 200191734 35345319 848430848 935314721 149706862 567400710 708978691 826620171 904638285 401490772 78779614 493212691 857284015 990599894 892694296 189006529 621751259 701512498 5374616 5386271 55396995 760237846 257060840 261308598 464932386 16564506 224702407 206099716 152320394 144509200 962846893 969899845 374598458 777602078 188803189 336010798 331373505 102789074 462416765 48618161 342673699 272792314 950281299 540281299 950043997 778401519 80994672 63086533 956041968 380347609 180510103 595520708 459317798 864950520 344328735 915426225 276772856 417518148 996209933 807325372 326095482 746113206 358728732 430887028 563208927 30563925 736957498 891326266 494196994 628153327 241076313 277299748 333240927 149769913 671066540 830685002 977361338 968895774 767306394 19688273 116938606 378251023 703381301 454471757 286336183 619689486 846626770 237518529 320578607 228907036 318998226 63825055 148810691 363734836 127708166 148955406 154587914 728409560 53924382 702923624 11302483 251020864 868332196 38577435 61143898 413716210 520562177 384292898 991128713 41105321 293996540 130793321 790057530 316017602 537328778 398473988 363586084 391380700 683125079 662078505 392180772 691059929 415394403 632993565 582918162 748801020 478688386 30652873 509532997 168650590 535388744 952985522 830474794 641013791 674552731 84602103 930738489 820761147 461292577 822523089 953073093 807997920 998991241 571923027 534400104 967553936 104868294 165991272 875559942 625127527 496550309 972777799 727112490 189415251 990114962 815072047 933019011 832023043 34583137 537802109 88893576 738017118 197493646 850884521 688690515 273676958 330219884 299789658 666432335 72486114 384163747 960926353 598234881 200879904 542783037 335564680 921404772 298239272 265313527 77291694 100536607 138268097 366857448 732385252 355126661 336505953 243342921 953447495 620055146 561711922 271473617 482975264 991656730 530476583 478222320 873656742 455748286 335356284 519595288 983859 279737241 224610257 757636606 204731910 676372486 92158198 884978425 63065181 926378542 693555608 933970715 617758219 990862046 562725399 546246814 178339244 326769202 255186754 42160285 53737806 945756087 321658027 133410624 595146622 187951436 266176394 339331239 756305290 657642439 957844584 541183278 436334367 235624239 480560825 622178595 5611533 910650232 670776094 129530995 937548989 547727228 908397717 983114027 216034105 236780147 415140688 125228047 918108130 546398011 744819321 874628082 439948100 575497753 663983813 397032123 786472296 181075186 409223525 513076641 998907726 160760216 301968651 540129197 16251557 805299816 597426625 527634498 13128746 370090170 247687337 219106427 722762739 823528288 946148351 245204636 180284144 344859230 859851171 32799806 69583976 405608864 89265843 576750602 441516220 626902383 911220471 665190020 937978688 529226788 879581118 965242788 709494131 902794606 950498500 613637082 571575331 973554391 607638395 418598927 651369671 93768112 635319916 111455241 409495557 91236661 196805510 743384381 795743934 613007267 278889731 487375781 557802402 522113121 367726644 237923224 551201619 596732767 40558128 925901132 154067764 283922044 844112255 797973705 837668219 517858638 910016773 757077860 699528440 497269764 916244018 154235308 816981203 663858444 387640216 283220826 614511600 733567634 748445529 280221179 3703453 478286816 464502077 339214797 933349108 428798922 718330106 675146459 762083586 469150738 439417336 483858174 851410455 463074063 349668973 601081709 157660594 529526561 451442773 474552841 661603202 547211454 415710735 634721936 117774577 371127171 529685257 637604689 10563002 300406606 881831361 151144719 784416662 197189750 679696239 750351085 23336645 21339223 749291975 351219340 318165021 908546898 301411284 610651097 348895269 931691812 565356213 381707010 930634027 582586135 123005925 627861316 207114090 232103387 680020536 466619909 574010530 482853493 785469788 432534340 960594224 46010944 812940458 732396739 150271134 763128815 129824913 664953991 971573287 98601323 767817509 252828506 192615217 494621464 71083137 970804114 147750774 619740022 327262507 742844438 389028709 659858281 325086769 396372120 473213893 595974517 519199816 852217459 877704715 338870326 99887462 57825774 681197866 706606656 842407882 918849568 887025070 508244497 506960135 513219734 422399063 585097401 602500825 592032568 285926326 597613899 622300427 974143279 130281719 48202401 195140037 846294945 822144253 937572167 317910557 747911152 244970326 438620596 998566657 184553148 685966284 719563965 413945666 830514489 553187555 764767669 887785688 624151336 219524503 449227775 767500466 881543890 440612921 97565300 554522513 443175628 674445286 18310483 565889930 565572032 602149871 817940920 838628006 98971027 962783667 927957711 251661674 984388135 882686977 910717786 387502091 780970821 46576343 620223374 772269176 849047387 499022281 73547009 534904053 118871733 774964201 677511163 977606564 974434990 723441622 282985414 590007330 111205395 687203284 786194488 173718130 542547799 356963462 137516018 135070457 763878167 428845251 446740822 109685624 456766630 784704202 322094655 910406964 778678922 841589361 171883834 946524538 750939531 203710858 174995384 276693602 420327354 652603931 95986418 146102835 572060881 974458690 334788563 861146647 562343958 653250441 98553283 969020098 68944509 515619198 790539919 260151777 377291026 940718597 527148308 599282838 524228857 257693004 721313315 164424189 984370684 610411107 385856168 449955276 772221947 519089354 349820436 475555302 945358829 194614279 429243206 138371126 228408520 908713095 742971271 352477472 915199360 713424546 871359296 849254975 592253913 651542842 321542002 261457309 295945583 922396533 660197185 212917172 520986277 319300524 313150686 270579919 953496740 828840510 514196427 338839956 812361455 787935057 34286523 770418783 371148269 670069613 784732896 795896517 6541347 800586063 793842607 719184527 604323332 69163981 538608183 962429930 738755553 42935602 591473081 321126159 516038158 892300154 721305155 92765387 553898664 956520290 920151261 405861012 635608499 183089823 769786000 954993022 14593227 585540389 145574626 140620200 417344713 518604631 442222651 940447219 844743484 827158592 878460203 787876179 670994690 698259368 292573358 974055000 894558930 154816948 881733068 955965336 38870074 602039484 613156711 911836558 120665001 848626865 734607786 180171097 852298371 192439946 630392151 43747101 292286177 522433777 317752173 635138055 821405764 63628207 804321683 158997683 467440852 379247806 104432708 121663327 224632765 907889060 732244402 384212324 84858098 89963679 675240686 855572736 741220783 35337943 255405418 891367911 837718980 695650916 771245232 670870211 279169258 763414903 39076912 813577063 657308050 152663437 944746756 954145483 872658033 200929626 871482522 299313071 765798885 570849555 867705977 733983087 70356824 355938691 689441980 268033595 642223855 197941077 664599536 798820945 114992173 256400950 447020173 265468012 928496926 349963961 99046587 454984557 739708986 806643170 331766451 863886548 573098647 829589037 230912219 124206155 879046349 861871099 464443069 219138162 662802517 91059538 780059361 301347210 813628477 393788355 722468119 190962275 175841098 314420585 848894510 810888101 996162317 954446642 598015730 716170408 442719588 147316529 231453089 849773377 592164462 974931761 685355148 202944739 839416537 667882792 370427263 606510134 396307207 181746374 500646461 813358910 933259312 195454533 422256741 583280649 168399254 697530666 518427858 358562757 625987291 618946407 894693237 672134361 104250359 52847141 483966459 513334659 60329201 432621519 773899721 669698416 626735879 389497291 936223520 70075804 469903548 76385234 204157269 115654123 838846768 326346517 539963474 623263617 306163288 670376950 969206995 309578003 917565751 68969031 659818081 559398071 264163675 749966706 778109591 547850364 817616246 53511232 842326437 599736380 484975055 813649468 876538720 372255927 894647551 112205464 285509289 63320211 432049465 124101803 375884288 275740257 786606106 649959650 414097043 220730475 587790747 729167173 766965161 458687345 124246237 618318275 277072958 322249201 873842708 806820832 237710107 995135001 488595941 156416566 952855025 55120885 66610085 336416650 124660669 955536223 275316385 808528841 982151502 550726617 816519382 99850371 349670376 973288639 614212710 600520305 222654918 514444321 453059773 590212140 291168395 892178913 132737759 303900807 499889659 774357196 207809311 553120612 777648793 577674017 703270092 818137295 317023158 986242176 736830625 746304627 525031039 410212153 196009160 899164047 520411295 168621688 223677288 512525820 827074517 387900387 487145021 435838977 999333308 505712342 190074141 764424396 826296503 995874920 284976926 402137921 804100008 964625394 489214906 318123153 258854676 279535824 699054505 103186405 534729974 969741210 405986084 301437661 442063616 234077418 91487656 925258812 927966866 186212975 523220634 211044932 392848238 257231337 811952819 454364937 452285368 155623460 24209979 723588226 537428794 316467892 840301917 354748655 692717433 736200602 845030619 142163887 152465530 974400863 683867933 308989705 289608653 701244650 208963532 195691725 116682084 76039179 316443039 234531567 479277100 913719256 65367629 864844645 489026720 931682204 906111422 560674192 131698790 382660113 45810396 891117467 40826269 63542912 718421805 380012329 958855172 609157309 185518320 31737966 123359821 827415856 27801577 983476503 118552863 648525358 275686254 525607989 774446132 994354723 169215821 978621329 545809894 961223441 132405286 329764442 944910479 365809380 808321566 728197924 806275368 155871203 11518015 781705628 22576437 141541645 344112286 402668532 267722611 880916098 200652266 103031833 469429541 318401731 379137614 134133846 679339554 792746738 912356982 503440656 593095095 562920910 615025432 295019088 810141029 697757029 295975771 816212378 42853497 109806913 369120949 886146929 203694078 317145313 9610353 250987230 300030020 849623171 816238538 353153772 618015206 406915407 278754381 720029201 794688881 477369199 913892777 617339610 557109841 823354879 897910953 981417852 628481691 244905800 719553331 457884338 147891948 145051212 15907408 840395200 583131500 26454010 224802393 81619722 795857222 869812149 128875164 655915692 240063236 960666284 851967772 582682953 947635391 880563197 553152031 622130625 407141515 487402096 444114529 473940820 579425879 148906195 594928964 279981482 60149631 740151601 75959782 62910775 296582117 690683600 875950093 593740599 658322590 735299473 58496115 971702851 781876419 976926884 84110171 476663748 738557255 264262250 727735365 937658708 107138845 767302814 476079749 517976957 435909088 737607097 259789635 803845593 458574557 898927282 496480141 33561052 672527 404959976 628195457 394361131 730608374 437578456 102985831 422689031 444337832 930279523 473337089 426343213 233777810 693490914 125429451 490085948 792026375 22659143 978471805 131845841 23645655 669192320 824569646 877463507 592711030 645701015 862477816 839674205 634849598 79609381 836531699 351374491 229753003 393902065 473381668 164763584 126320677 937559628 207724926 420207715 965811603 564909387 969871683 556225502 827420906 759262970 359754450 259005466 498187660 282242046 862956993 524982176 909708772 910352013 109387084 354326398 816338173 911812644 101664008 304752520 567525177 35633384 142843260 515029023 443206961 779435220 521953554 498136725 11855296 882762805 81366937 884391644 104221093 218328826 242824101 763468038 990162269 659218024 152188241 732824370 423568156 707526952 418076098 79878350 486622563 157747816 646323021 893573109 716298589 877439094 506047757 48706929 423909701 115919675 382336499 15454810 676495504 586752376 32752065 618061408 912364142 709632634 131937689 410856013 308979095 331389345 978992720 544465042 68976896 14032583 183269122 770365910 736460906 126102698 355388684 394535411 568392714 799211189 424600242 632568370 897489487 303642448 476783359 997496481 803703295 835266183 134610386 91502122 6582441 9888452 73357310 551904811 209987978 190996212 647719715 475402015 768227746 412711945 474335718 802396677 917994369 954715779 330001436 368267781 799544907 605663672 126175591 757039913 750803042 129750901 287135771 281761321 163143939 741378381 175162772 848627823 586294277 353346994 952814793 379646797 763391875 5625364 847447022 690016412 754399626 944674228 811860121 520684952 885824121 945487496 365595780 639442889 773457246 87297516 19700959 147935262 878892669 152153261 494503770 292392113 971552504 98111654 299394104 828186171 727016275 351774157 142791747 87675411 622277691 523831481 682006317 448161123 508236497 747596562 570183081 561398014 384935077 448729748 538339658 769761815 188126591 869001947 288337740 871496806 578762661 818460540 740297904 301739252 268311991 715947532 495083077 190992878 450146480 744992929 913195611 395219882 743410180 254052863 879688908 596599516 661000266 723954655 397332583 88215523 811566667 788777068 877243237 43977068 746589364 184734156 274584088 268675444 361920426 951432860 98309492 835224166 283340647 403542046 132301530 334442338 662476840 113694053 470293630 50042449 117797694 72374008 595838908 769289138 510378862 363657929 179602178 206805255 823330816 552260070 799761161 644867208 5617720 331145071 4078046 16551894 618497347 598069481 505374696 496167330 587972380 336379811 221774264 388734590 252024467 610908540 163532388 52652597 806353367 740205255 865177546 471950289 648122418 196457335 59061944 547455038 611962355 470840379 124541543 810580518 878683182 860770792 456405692 178609850 526667228 464924970 2081451 819544003 321464547 529210927 493049043 641671226 582262568 141777469 843066530 905319829 850088157 366564496 83356673 682588567 295850706 634653525 843405456 482507183 632541732 428996792 163488642 190417786 539101966 423688189 304515180 673252703 854439894 765789967 22793831 367830512 783543900 243086324 933927745 989886529 613916104 630108074 895009337 351779170 727518405 753832777 57943445 968437585 575713032 917056954 705665682 997720526 781537947 153373777 594362316 254969651 616217223 935096762 376774937 21812836 280205579 807252832 402814399 387751735 596302575 714178457 93093488 13577650 241958251 723521849 339396101 785415671 735050570 243416180 329294358 152993329 447597674 17021463 887308415 749474376 650189739 68538947 422636637 723935103 427240509 831882092 525656495 611444295 828687987 74410920 955761049 813815181 535329766 285340173 579856069 52495211 746127563 396846897 528139019 18356564 551580438 998094378 966084094 346307826 284002854 757784533 267710787 802923506 358082283 4431513 607253671 403292582 122877891 146844465 349878052 663292833 878272623 24746742 28470413 611156045 793779790 599079999 713189674 302333108 314187743 217083443 728882047 682417714 272984193 662287912 931088174 218178980 713188560 773992197 982126071 255122638 50768556 206874254 626337320 454007233 13376698 865585852 474364500 346830085 916049809 612879986 4433339 268565110 33603625 161872499 698267625 953492772 238396325 414538036 62717128 106111971 584221461 406246623 927671454 774396294 580984344 354056699 514980286 421678709 595888682 348483338 943405369 94806003 42328743 426765748 219117718 326970347 641753414 270819241 629199037 854779319 954899441 482357266 10742893 544521881 766332501 266100666 660956838 966973298 815562145 964702820 890390538 26104982 630424187 805562158 370372175 972302558 113906593 127889134 758326206 58329297 597098858 161192749 703520501 504679853 611705177 408111661 461708509 855914852 114275261 860461892 786879183 255683743 683456330 987417954 789447858 448318809 857228139 304234888 396231940 348953538 896387421 742586042 824845731 634579005 602544808 368367405 920958278 73757546 84505001 32266451 47488204 131083820 727340774 658695167 842305068 608786989 977047415 767481525 613360871 200512068 625704047 264042652 28201915 789840882 525780169 684863793 282462312 123645865 843023875 842155010 388517075 545616406 379313229 678655736 961537503 532070059 861690694 182128692 240654334 920651942 13342760 227074503 956615527 170841250 634522361 282967367 8489337 634081348 480079645 794376779 31229675 588356514 627126615 205030716 797712485 906974131 839283949 663839524 778337088 545966422 634445986 380514898 231629988 287610139 334706585 500226168 575568819 763297140 67199888 808836997 957411664 207749774 338248858 283657633 546179956 42474676 204355080 786238180 317895090 635583671 243319517 492917414 770779166 468384194 936047445 568441539 599109226 39928183 496231611 929436208 448822375 745117776 581447507 368281693 149826203 664857432 860715719 564043836 397772583 818437801 649132526 687424385 604278727 679418111 149634840 340954912 758054882 916912066 54207093 815826173 742617606 347678114 112577613 354681864 74763024 411377416 24489268 416647111 683780275 392966068 73692625 392423998 375658535 261234406 919990093 656719878 746905028 935269583 525431913 669482798 764540826 911738856 804130380 924914301 771813309 693055513 550251546 990863396 253906219 590838522 124406626 39648824 188931501 526810211 900050819 257481781 768356241 782263542 61052326 713872802 864971008 425287358 33365840 407766396 927559821 196810720 548592916 261225313 600834476 615277880 52757402 374862007 108319817 167096842 81286945 600314780 217799306 999021306 662545167 804063601 733747007 633605599 823221824 125530940 345402125 911824596 705541380 879073639 973977990 234000207 508490416 549105043 288744905 152042531 513289897 463167222 145308633 289679000 465221058 869572324 248721794 891019698 385075281 382780870 612238823 772494822 349855443 941937561 912164531 707054536 143531382 368237657 226256470 553237207 463742408 781409362 354178194 89372203 23065233 411283874 887163279 697669605 122289522 305060957 726660702 960815818 197107510 714441485 462890461 591177830 259506390 811176308 888757509 673846964 335014339 779242822 959836501 187681059 576726204 417140543 659415487 211191724 756485036 99813411 205376588 149285169 849556411 628743152 937171749 575887907 697674386 477480940 594474203 810312991 87586870 256628710 785586837 762996042 514170078 303641542 520155929 964347114 919083121 828799459 621035355 659674811 276608120 820456775 175162481 55851496 349553967 290885926 772370975 56617521 617664988 931932589 302996248 135653405 209760853 326523116 959016838 848301457 635221692 270328903 416079045 732057689 135235956 286789070 979286141 6136715 98368476 456871713 652677487 196113818 741417797 680733213 958525514 270168220 201142272 681493248 734463279 181851488 484417053 461512768 173469094 560918676 500355084 481605479 129433947 493969342 969458304 230072693 341552729 34902390 156813399 642015773 920879627 917213245 708547800 316452188 812898627 133149934 2832772 764037678 415151240 346840464 88378344 994350826 578614251 565839457 488676784 578684478 668547751 948647578 397650661 555315139 69004372 583406335 345089052 685851421 897435314 636859454 693643249 931505393 859543420 160338915 59847757 909154349 602631799 489517547 751341844 580089781 482703812 516865509 332666507 870230368 338344301 341663282 368651423 710830265 827595296 732121833 475665093 404493458 124328808 235000171 92385802 655929262 102687187 42396657 560470524 131236704 127452874 506055394 582419122 101440896 237299048 666184270 97089417 661752660 907219104 727854988 473391872 627604239 154245232 864059989 590858147 822689329 588926584 680081246 149289838 946841509 718456820 797780755 320178136 455696347 259031612 152525852 692751149 297665809 225253655 654655104 724746973 180435639 943659240 744755100 461621454 649483892 530405248 650037185 354142937 703449684 586695932 259993941 563881877 938994948 574232919 982977389 803945673 644244663 251748476 623736171 554034483 376234257 654704784 391337257 567760909 154593986 882800850 388356989 113110128 952729790 903704736 241753487 863820332 581049176 94060860 419471617 137556003 628151974 293769230 200459384 204883034 756247542 191351149 348324947 290072026 325100584 283005914 236084461 650849695 550876780 881453523 106082360 772767051 895781614 172460605 541226988 802727019 748601043 764244334 307627728 887899345 486716259 518059060 753496043 447103503 157458067 58096312 351159884 524429429 405800179 937602124 672871154 23461230 835118257 159788016 879682470 472061050 529057144 315379817 115222590 170579303 5880927 250701236 995470015 173901615 285910479 881181689 52191518 175303225 620225104 506581183 877474892 472441275 367172830 373835363 970610870 690067376 541301367 346925504 341169400 229980 509096225 120180201 10201619 1089740 984825437 2199019 564913149 652511186 818737569 490616893 832553295 750224205 750397110 125059996 632415485 632712018 149391415 213060246 118622431 693641411 281808124 229287613 908124479 696919096 174325353 971170638 124143686 876195367 779113822 164105582 362123616 873921971 929776926 109585344 142443649 637688435 81713707 599647373 345199785 92646714 876560945 954193694 373577856 374867729 285950239 68826873 291213860 506571609 297585481 626875021 193993737 875360737 984424372 548522389 3353345 240638870 629094732 24459748 419559155 198257884 20668292 324953569 748193716 504938579 643108228 556680524 831437707 731785923 506808376 107218272 662232661 50102767 201406517 203880815 996836933 23499677 906206581 84610771 752916092 701560808 615835654 898167279 160538582 345559165 390033643 629968235 16498264 506215933 468755442 146681819 970184335 5861989 375533534 485278149 408306659 857522720 889989065 297466712 103834881 334817342 718006059 417540600 64487993 85062072 424334888 463257399 51293599 64853949 733774420 168969490 57022016 47813763 331896737 507071651 208977355 13025848 314064314 459164809 234981759 714031403 313589926 937189765 347336035 612612864 443784694 558965273 214474178 680868178 509044177 167926607 834750426 307142766 625262621 461939139 707684345 127808639 483397631 73047545 892348373 272153046 745684694 346441764 119785638 338765015 787177387 325402920 532969089 126966177 10557881 171308385 742137000 602909365 108198046 983759326 708920587 940730450 667968464 713990166 999472074 633142078 574405956 202097941 181500051 705057004 175816932 15598842 976099890 803728932 298469085 358014345 681821093 362466900 950002414 60117946 175644736 85797494 716205711 720883479 353186442 689408217 922334217 303988766 331101924 373067672 494758583 37899671 59666294 988224412 319822162 282320800 993138640 803094177 86933746 36341195 778928795 445692360 86233068 40831116 886045698 978502101 365678690 448698488 497805214 372404312 841587024 506817776 160025237 580677216 871274259 364777566 118202344 578177627 53290915 780855174 223274455 266868808 716311920 711057764 625795214 608346802 602779655 453262172 977237638 977620129 482358306 467026238 956952982 61144295 101614476 357288729 732373449 612714613 758014397 659858181 707265220 774365847 578184117 38438558 471903103 433203369 192519628 740258514 399706462 86604448 996191293 310933434 262905892 358184038 481835082 195344481 877197465 705749724 59617926 836259979 687798427 839978089 814897774 866119765 484809834 524051408 595388462 502951462 713970354 441719988 35628923 827730751 126006188 89704887 213907194 436349274 366552610 876706442 402918215 551497233 453687539 693802225 639372501 646872636 835546608 639839617 688288755 693331366 706107257 472858013 163231301 481561868 464362875 996593674 902076653 479552300 349257023 852406463 85722980 168322799 858880062 426037155 392556986 716975617 554493825 794089093 978011883 414349583 467841934 675780170 766063691 208427917 316439722 778715192 325007660 115529412 569047064 765501978 652806409 570123085 691121103 312817697 708819983 462819114 710143624 45475221 475786402 858796083 784148644 764758922 233099687 446171231 700114781 643007532 550928339 775743814 625700061 352138842 638616721 308750242 614805705 7371007 789050692 32909728 6591481 676481475 829445251 384353696 487891653 564976761 345103763 360159787 800756347 968635477 801093784 171858241 350346322 950181374 28217835 7538337 143005836 19614353 921260338 566046743 751204432 237350721 98494082 562201334 598780290 543732835 483780630 966952689 417710896 435503366 208050605 945582890 776591508 189657757 461941441 747136110 802248742 396229921 245240804 471697758 549866113 225012830 310526256 509878279 258837952 925996558 577535527 290474776 213578480 73580755 590354551 554847990 640995334 933159377 573624137 690966027 714935073 3411955 457769489 581866207 838756890 405075968 304940074 783342985 305141282 606885699 915742961 797301456 975041245 417869161 814308123 41934829 51323934 846415160 627547655 280892588 20627349 437147986 590594722 571092163 802093569 76376495 449046433 721813413 208332949 726968511 522590601 726896610 700776934 338200594 227297725 256224576 861812371 360284292 103285144 34914871 81131022 318991001 123789489 836475794 201889105 269638551 118488815 357648668 536703794 992823690 665261649 51648622 914111184 889293663 363551899 890004854 695713135 864742699 843155439 73533859 988359235 70073131 569228425 248493887 976558442 74443864 72202977 333023425 787011385 881199044 739952840 82407451 129924903 511548782 275188469 907568101 732975163 752226176 968449920 362256778 816039721 975225282 540402472 20172509 538580812 886523005 42067931 277609538 505426795 9232922 341385585 281575010 644531493 77968267 877758806 206362613 578021630 60954702 373495098 877144596 32126376 855587816 695560905 728448780 932505666 38765017 686127542 887888294 269418771 47619839 76489870 971279463 700990549 730540471 854305044 293767258 967466742 473425356 767366850 684549096 445953576 983526096 826761290 306457964 178667606 808514966 332250796 390278483 741260598 453921770 884151218 153496134 952019059 438759272 413630770 874563319 993021084 59043327 220716625 75114226 314479515 718291805 410954547 652200794 945675946 981625749 304095473 790110522 78701584 133334882 926195316 855723731 577690950 653732878 601918542 735104435 965037271 432343352 902649310 135708379 532625856 72621274 202549085 472908528 404439215 772224347 565628083 581640609 511505459 752462604 665597320 340347116 147149651 881536045 19578713 576105445 991952009 3543364 295010241 27869014 571066487 639260589 143742680 914890520 46378520 675880967 236157760 443561256 238362063 823777756 331728130 773790427 402486571 429200903 219292295 215192884 122170614 724191076 626816843 506393396 393149598 813259943 856575036 729612320 484495092 230024661 553338626 970000964 341456899 882462701 378910002 212380040 14013720 275413403 732945589 936392323 745266343 133400256 120723332 14672333 691534952 732253423 726193460 609720603 22429727 519176537 437605762 514786149 206420073 99167578 406751066 384159893 308125612 2663825 95177928 759586008 240394378 289291119 429220303 713013816 260521305 47801907 590529013 940371735 229888025 979068026 658734171 335960313 92187144 59234655 109862947 648167575 677218056 11040430 966277494 391411600 136785733 654876393 309470254 461799276 315614856 661677001 367439634 60015342 547979703 491104724 806543511 984210285 419269882 65572011 357294299 733293728 52685975 814371809 521087995 142742095 876990114 925979931 817828364 884900106 429177261 704447017 314147742 200027985 387356237 908414278 359128810 149108587 389580737 881374770 980295969 97071833 503671785 827814046 507238338 608168863 122096992 982806956 364791104 273728473 815867232 801748564 853087499 327281591 838666953 109832628 139595217 277499839 55063067 509605133 636101169 881455368 785526918 914877449 367328502 41055024 324531891 72088798 724860539 981078419 818542852 587970693 681135799 924040972 438177502 844355737 360089800 940367982 251234463 437019117 538825978 322638994 416437572 559189472 986851244 186256811 226776854 517837870 91405902 548126956 124278656 581142883 686478162 434136294 406571069 95086815 293219799 572021765 474594295 713694352 699596964 638639777 761830491 722001882 345897219 626017323 867689171 645338516 384479487 947934154 419579837 233277237 600233389 556887403 7170550 549089295 557924304 416134625 347695765 946929809 624598094 424253385 781620895 662315713 449949418 534486429 757714080 366783506 564793911 607794129 892486878 384298546 631483207 945912719 755909334 985069093 297456243 665667689 698698456 626042686 417922627 303969345 428067503 66917629 158786334 800172741 366840122 591797612 301008020 672018223 867938795 286253058 148096658 574002808 470543749 618992116 979016389 228298412 444840472 214998080 635765467 864098813 198309586 848462162 302200351 302127349 307652919 123788189 370900934 123905864 618168047 999002534 396761954 909649780 563718628 434494626 908447032 474935733 720471554 157709239 968664175 568951594 586441382 877693411 744781602 953038239 53365846 637156897 850405713 96262105 880640384 434500439 921959769 79220418 523853880 683096433 214533031 725980655 818813772 394549329 466552336 560138364 385578870 734870075 982135501 977093245 468253134 181577674 166156726 958623215 202057121 491921257 212164495 720882739 107458888 395197835 934665514 684341247 534772291 636578837 409749592 178263905 470104872 440532399 464749910 302972031 762713465 203822528 982030142 268791649 993919334 229324060 708379897 920006799 428732212 135074616 291730168 259230737 410854114 553895953 866898582 555034638 760692686 844083956 671103936 570476652 335704565 25617459 289044630 801204100 235119076 250995146 888616651 330279627 216769817 867107898 57152924 88037433 708805115 662191970 811980330 360298287 199388731 202193738 946447014 867753686 86893100 141658899 822396196 242597954 878306338 954648555 853208558 507577416 639413170 444908761 482005790 121407067 281952362 607091201 68496976 272250458 661712565 274602320 633098365 429675230 510512950 432162916 662471151 535666345 659367584 164557069 161262775 274371344 426804578 387006827 444827567 755485344 918126886 614103145 579227465 866395677 220712693 274144219 563694998 618859486 612184644 79002685 203413138 957717255 309166625 115428750 450580603 348718864 26619739 86771032 247743807 596699834 778763950 992723993 523851403 553100783 83375054 708344211 411210222 290474667 624252971 256194869 981346876 534974072 181631108 880345245 299765407 582363881 169522527 906868896 531496126 325046814 868467949 787562036 336382671 844224521 994694086 760001654 317173952 818973583 139404458 814483116 207365451 631578750 437953334 924940796 618942422 578229647 876689011 316152282 142261705 55240716 712085985 359390478 939895437 184978920 609081391 134693632 546897024 838745715 151844873 562221300 362274707 155683142 275577248 83654045 782936541 918878941 640693944 52600111 700041566 315850915 866953132 363155643 278024737 483085706 302765193 142527755 4510165 323692878 493467072 107943413 42940816 438935926 689255075 849813695 531532996 799937525 601710985 455203487 368146919 158069743 680513852 196374187 688157529 769774507 357712777 843661177 796353491 651692485 831575034 327302553 768667067 184850818 762883344 795272850 380988765 398416492 764405626 488573682 518780560 524677716 865848773 618551822 827778766 352484175 954398257 349686539 520077254 322412918 47726516 163837855 94907520 271409350 563029742 431743951 395183716 350086533 425031218 735968103 941328728 436793455 389906504 762915476 686791445 74811343 82271311 322901856 540867098 665867965 467217137 954489453 401740752 44100333 878757309 325147982 589823075 238005515 528839762 646227 471479160 132743242 553205426 715181613 32946455 998194377 60121336 510154976 573038921 383730476 695221219 341842936 419585372 711090234 171996517 927949395 653831982 341454537 380580499 571079467 207481473 383238102 237534617 496632659 859436348 549099749 105914418 69157663 347611271 842149823 721003964 958406332 878838757 784110866 558890545 45628637 10693762 677170389 36810098 797731554 686020218 798963132 586199184 580905465 887222474 494354323 331202651 560314820 845206964 789773609 331686636 929685686 397623465 22960120 548178871 658050416 496381997 491854348 910055688 375165883 215698000 81773375 116580949 338747969 530130631 23195612 667721620 59878961 295949693 359633313 101582864 237221377 741395912 185114936 995993482 117111268 821326851 842109996 236189273 476233660 676319903 581213128 674685607 291076970 43900008 998013327 685937059 387946031 561903082 341506691 461957928 595920402 878748911 237477638 432993786 568938791 379560335 816699696 597544713 704675886 967524304 784030418 805059052 969037163 695164899 32540309 656041330 428596932 646926411 496594264 241013527 708605764 690882491 227503680 464246950 325811532 348947064 645679910 77611367 181204080 789256549 400619606 524167095 793884011 364904861 162552455 135123141 196421430 538926509 814288841 570845032 856019612 720581209 540307239 759231230 281075021 779020502 233425188 208705845 177200455 451938018 723368821 649710677 605743830 363842560 172346632 858996949 368340324 223590568 536374223 907789983 460338378 553218706 582424055 763098651 852218295 832217834 939586764 818005397 52930401 265525846 670154820 546097372 583761163 624259516 115909600 853886132 635045560 465885294 284787877 522510160 947734559 799230931 949637377 760183347 649299234 798641245 532040156 393108134 126062203 14034044 381082416 368224599 794098147 728588426 234118600 718097416 890785864 832783303 297228269 418604300 887398116 517374639 273124594 596183158 592227826 812700468 306737439 13960492 909669389 931187912 232359353 341965918 104150078 981442062 468870034 760675797 686795529 133833296 773793023 52564029 38754689 351191326 783283281 373639696 146028558 538876911 343686280 542914367 265351104 603532744 488696862 417767423 31010394 475442277 77635362 227289669 693164752 548514329 105332553 175267881 935388882 37631782 806796132 479871572 911574536 278533320 148313116 731407051 734454082 91999976 623027960 412445393 43445892 140492459 320510806 426479470 7307760 994967259 42409615 385319170 910271844 717680974 351351979 742584490 804757759 626777389 64914683 374924922 716837107 562254162 431530634 824885269 155934798 996858876 465728518 322950902 622302974 161702120 898538079 655773251 964334019 988066006 792491406 160740417 959402788 501810291 135575347 482175386 579646023 805070094 36790371 214895332 464408477 995040973 315369271 200490393 786329409 255656180 199145272 227257412 162220298 592117335 226010295 362649848 941652178 451866519 306589495 871440124 35119236 344491059 538709382 949679526 360208868 172435979 838391894 704419805 5145208 743547381 486275066 980785069 742260648 219722648 59801818 165679053 521758119 92907864 481463461 327172921 800165636 461655006 257115231 435478879 31222815 384104062 69838782 33377470 767205231 467826154 836888338 898732923 739939534 614416646 595494217 26965243 635034591 939879245 423304681 595264577 509355854 903765575 928825441 404652565 251610137 638833597 638533397 853741881 59630421 996350203 21414571 783109112 764365162 211330996 122430679 356233911 374753499 833044355 21915500 973231634 361638886 154496803 875390891 162098326 686332684 383012704 267547039 930105035 68496376 653099834 830358762 955627118 993865892 835322703 74453781 22937815 378404378 469825255 333612477 915360594 616145134 483245903 333318453 861722760 326566012 912812458 354411397 670158373 137843681 637368530 674443462 181239579 893000378 297980621 375683953 530561961 620849542 315716648 901652362 560860042 65533982 38630279 31458474 60892809 324988866 962349401 909647270 113280214 475870635 93567347 843902269 934905174 528079281 970496280 314198799 551272116 277066220 254741380 958797907 646384368 240113545 330164587 101849488 965605809 502904789 672217443 580327588 179094717 382908278 34333973 868563960 183764149 404581348 456567535 769215620 629504140 762461609 515970992 959506272 220551127 568614320 125507693 498143615 553297392 341076497 549806766 614306027 600375811 943899707 326790170 379044970 392410221 493024775 66027215 746914108 832650141 883770418 767686499 998585463 602795884 544438820 729334704 397858524 239727144 325777249 927699808 814513586 595689430 8346199 90088293 181723265 88137797 957908046 357148391 721546730 311252403 381269548 330656061 355983374 869095801 574940186 562631847 756815026 785467677 43696582 170409859 779897903 142079900 468797172 398388914 204426605 690204670 731267785 566841390 867369423 769532837 784998067 705523304 28992533 296641177 970705941 115783204 143595725 864816357 93523201 407055520 62798107 790308104 464099451 803586447 671350899 573032852 198249287 257260629 820612645 671671864 203097078 33979139 996948615 943004822 367099565 253241693 601211767 475537406 680694876 523905607 51919615 218080410 926510101 541423378 679388718 892226353 572688106 472800275 834381194 908822214 661419459 654066738 17222911 902526582 314429417 665235944 29064525 134530637 825837032 393718512 752672216 675533772 2812459 473969312 234321218 792998369 406852542 421913717 52754824 903823276 913359335 632469087 446812475 544277184 932012156 351720351 512546755 414128698 775745048 748842865 518119494 888763951 141846386 176616522 753280497 993464204 733515166 260751025 703579840 877599789 125651299 884417578 666423974 736372307 207565580 900235967 892624869 530932060 216748360 327466453 103541805 89461127 759784601 638656609 19117589 114362861 631596024 814350751 123777551 685213773 315658940 611162466 802611885 849696224 453345565 289453116 271444134 367551141 920384277 22586201 254390737 91903435 266869997 574677623 14847155 117246653 796798563 19890994 56276631 559647643 270242991 459143990 178875995 534949436 474211259 933947919 524097798 558095644 460221598 786131659 117527559 975441146 74167127 354998083 553423761 40812983 668843770 363924131 279875842 281579048 15030835 440349308 342183077 492740492 984637856 235001351 445820415 453761426 95814115 724546904 976392901 16763021 290241999 499816535 200652660 295698806 506352870 686505798 566995699 842559482 417821941 481539853 907161359 481433541 259989808 613219903 779294708 820326320 48449846 544989684 718201379 696743451 396587144 929468923 593708375 766848224 114516562 158316159 584440207 645713348 946354608 557328459 327402027 159357840 559671963 899242126 728454941 132001268 720382905 696149711 564923893 124704807 478217565 418444785 283330296 221365020 164236806 512807564 896101352 558963153 677275509 444254204 118763958 608736454 399697737 459897908 799343390 765090829 169535428 535327627 828088095 491314325 805916640 85123407 913326801 648048612 30094913 177463267 822680975 395775841 697018180 486388888 639669596 468393619 210241701 105791546 714532386 565436727 40182758 407617583 789862194 869351704 695063977 188008452 371805099 899894258 488464536 106812181 760080342 916209609 125044226 884925659 249100359 16058533 522847363 697860047 836415883 387047947 549102654 449867068 446482353 719885122 979695822 946529889 891773799 386998373 635557794 556006074 45343194 917720479 632985227 534573549 382115513 667546246 246830323 462939729 879432536 454922428 740105397 968354451 704573132 68814421 380713621 513201314 661643288 971828802 848882041 14172608 560860032 258429876 120134087 856627790 835771666 784912718 889080628 409822230 321793239 785490467 766793182 890868163 726508824 116046765 235332483 249756765 806387774 558808852 720281407 313521095 639779675 95106266 256097380 646086779 601106580 393305137 869097156 999069977 746450948 234700597 204848044 417373027 102693396 813264530 131639323 463358054 882681822 32015204 391773331 297461286 584225160 155010751 568923440 803805097 695147297 85999870 683479041 673849464 665549268 511070045 726953936 879216419 195856261 392084383 146938331 339415347 313688844 578260972 547658945 607759484 970106027 954593646 224364587 599494457 623908987 976268330 964012673 258738815 581658219 57010678 506663361 908923235 365385359 768291024 619414437 275637147 465816750 408534928 977029935 784145741 573584395 874260941 792162270 9481113 5305688 949460178 972195107 863190401 874985328 353473503 497363613 978552512 842690320 333540234 485972907 796440503 274716949 897251383 121635374 771104666 684991894 583752376 102561650 310330090 619358723 810874769 54347324 606875128 601441158 338993890 461394144 7529272 767425395 69885727 791879305 139131309 170337373 763420545 756795466 575262844 221551055 50634961 175265115 376262615 606354066 392170478 714456002 192684101 837214884 854290105 462571973 787767513 24166854 847912047 466213722 367981883 286919286 637385938 643729698 99929580 489570726 175932038 399339188 832627926 775462572 817031563 884807547 933667253 263941563 890732246 511272660 908390316 571363864 358594663 871647684 51090670 929951889 951464089 150716340 867420078 755396290 94845241 694209367 704252765 734555831 584520667 955389317 644923841 652597324 410459585 241283413 54960136 957191568 924582450 497458705 716732538 660395129 666771670 77281645 753326485 690427630 974331441 809372852 229689720 21408875 284500783 656852205 57876952 653216090 479536600 446559345 620252817 788650573 496875037 65167491 301943172 270039182 967658211 471059066 710153146 21340442 731346598 803554608 772650771 207567171 774866455 830941360 820443590 191439392 289770790 396288493 366142985 878447246 284028525 458241733 388623625 60751179 420255836 32527194 348775441 551229438 7554493 996945564 494405604 969938573 739384187 198154988 474501086 965405505 247269044 623248937 847273631 477498678 321016157 381933394 552056432 683763364 468628097 782315720 363489808 934237125 662568421 565738661 716783700 596127813 865874379 809986203 478130255 917477713 800389925 103971519 377739964 159527449 13686842 407311682 689282422 808362407 567943355 996870601 537140094 149419969 392664593 235685323 80175788 716733927 558632442 54905908 991900508 655333339 157097907 851007277 97131936 642881497 223332942 160221472 938148392 462212057 910634133 991017061 604425711 401680020 806154254 374622977 806886084 90610737 915950215 630113182 817382294 252539429 168960911 814657143 432989061 227217156 373907845 919645749 498557887 601354290 285101021 212814708 714199574 525253892 902748570 297877042 144150142 39975842 359396700 517229411 710370720 894534755 911001920 446576751 498599222 263119299 262212931 929554310 165203633 533349895 304263388 94819030 151555386 265263684 258737240 875168078 181948429 578869968 802433881 931676446 167911247 906453214 857625169 504344518 411004713 930442572 506275312 592979195 878778923 744705646 118194483 12838159 167429407 950504405 153302009 387456193 99888309 93152202 306403061 553226707 85165032 51825461 309029392 134191407 733154306 889121963 241420158 155261982 960449276 530020369 717115365 286362083 8814047 892969954 423893818 175589672 496274534 476140615 454816309 652889488 301652470 631590681 343501038 665605311 581233054 946213341 237048351 433495973 586798749 588263008 474067916 346449161 219622925 696491177 982032030 821534584 675578427 653804775 577460567 916354892 439309079 669357524 578134910 925707602 750327148 789686880 842032740 741829066 560699574 679675521 545013426 855691358 562268315 877051378 561399855 935446180 444750292 327581407 200690397 183231678 446834129 954707912 25541365 363937205 965779658 682864300 222102389 400014533 763732793 485459097 993784780 895954294 642864273 668458735 187528709 854363159 277176882 941928515 767605217 834763362 272915004 718258180 840297847 393487897 325119228 829623089 46255788 711448557 248066344 313196755 400442491 928293953 43218714 182389302 424747749 51199634 40667622 262179647 444900815 311603583 651291677 516626898 953118882 347780020 321531116 841752947 244632489 740798262 267075598 423542276 976513227 910798692 441425979 16362570 163212731 951961448 845791524 747658116 84920825 588569233 189413130 68874793 260257531 250651656 947594920 271262065 313263149 568272725 619952325 425384847 824390346 47249469 246939526 794717653 31963858 490326755 388519846 620613739 753299543 682464215 961428539 180913241 106205518 400675042 902637111 700812267 422211727 422001445 737860296 969931303 995715274 931828359 290898646 801180607 664168238 244790654 131445197 847826885 43264048 94550505 662651251 692241459 250493881 10687002 804510706 751960040 435571047 68043409 794271953 770471278 985849578 27329605 959233301 480724820 363807091 228451494 163898602 720208199 874307570 551891313 797831812 802331821 209625758 288029071 619343031 760705750 449093799 636988115 805352915 591170380 239741145 201163355 232975834 823529530 279422542 663465821 586457244 241924747 299313587 699370169 64887557 606667375 862996954 773915947 622885594 559918745 40770418 280865788 153403212 641594435 226864585 827274098 506791567 327854151 358870527 294835407 948689882 561254214 92217353 755561715 114748699 905836364 575303655 784458387 346535357 976069891 211368158 20588227 489707389 99632371 818380107 21183755 254204409 560756675 332551720 833532005 547406989 374230751 528561292 71706802 987817832 724692470 673139400 714838162 777862115 528208423 581587401 335797668 696280885 702549637 762321544 220220398 150335095 677815672 696187051 869161502 903937909 103812897 997833548 201360759 25363352 27604326 841843286 424481949 474426258 967402898 246511190 162299581 151096656 950098099 38059030 385797032 652430184 73989450 260850516 848197816 138126741 878959176 277850281 656549714 963976305 459179262 425924997 683499255 824908654 924178356 424886422 719719925 712372965 147212140 819177510 135518336 498829732 838988602 137532875 270780665 580429243 958586473 922393627 557874606 681610395 799333887 279560857 525540630 107206566 499574726 645700928 518170538 432058265 102313723 157848286 668471742 844634840 22046327 104414766 366500461 856299339 515158828 70552573 361795306 358723743 353990168 470834486 684140621 756488074 214259522 872333076 2388262 883508830 42814059 306372981 835041526 345239309 885776631 483089942 933393358 412718871 696137802 667669216 296341188 379604031 598176266 500640173 267461277 501230473 978592985 698011194 182519179 319698717 786150859 424144293 683951878 570950206 752716372 305327356 174315462 861119296 217259683 727594909 227886916 305699977 252456010 94944008 50492287 578535683 287122629 935686056 931563104 513520851 505087026 562931413 941364014 185369062 111384343 618448295 862212372 618331844 346855197 151242769 951113445 34103851 232081162 670974680 491772729 473555946 624567476 314962688 161562589 27686593 67029532 12663100 488733523 136751260 389269606 490535826 996745861 344664941 852209978 219427755 973715553 226248123 175693643 116926008 221706048 666170674 198995988 429202711 163111001 725967685 993927974 4224363 716985989 392676898 207102924 589743109 664142322 571125922 606912924 458849126 647530324 614722770 583955739 604889130 109933147 128278137 985463286 165393281 417746561 139801908 672244923 361047286 993724663 357765934 272380625 140520924 495004472 49183917 677224979 312224625 614661443 544905181 842824450 627407454 352857681 612803517 661908906 76587196 981195058 296793470 972697979 744251397 621670577 837982583 33417534 923047886 610882204 783888677 55113063 450301563 982973306 630688126 4925579 504843058 89689501 136702862 974139400 946678967 70468782 318913961 848944848 555977467 671796638 837110426 852488821 209441713 215935318 413468239 797039464 42217026 705859259 189895492 217292700 688760966 492681202 26664605 206091870 719956575 514618656 575389528 289939816 814421789 634160228 351437145 419744920 246005514 364226447 832867133 765962228 891976350 452633276 190491037 761314780 380954373 475013058 174717631 532824386 96305610 451791703 11450219 262251429 277380074 886035803 512155428 362211275 842208662 861997979 579546962 201198637 211912649 184713366 613184356 865562595 739583009 800271279 136679743 309239498 97275365 3812761 332555043 873437863 632020949 699207537 60346334 229824845 479119276 776766078 329622060 105176890 645724870 777549205 173644565 954686068 38747893 983520326 793687288 459092075 742026608 892637045 689912306 395076435 885480815 931290910 135018280 533049182 901673251 432941752 677171557 451749958 923511826 986360125 751168692 656170716 293513318 463887601 604599606 495258397 394371401 780490196 639482390 641361543 507290451 467592420 663119743 40119788 109898486 905524534 382169035 624754387 636158685 539473770 685203954 904799083 932119780 721648824 542874334 343422117 261208559 596787719 911445828 113487356 463877977 444257245 212674784 85170649 620401558 532747647 720954186 554562708 49806211 750415657 144264642 306930466 860055342 934715739 849767727 368734391 143089031 313035998 661261426 968022389 955855827 363427660 907240836 824663001 901971978 34981650 711294330 874451320 6403370 245859605 725295827 408472681 532354431 968156530 885545696 722127953 229497885 806740409 807853259 442967410 893892209 226811613 148533252 985327482 970060081 69054837 929583733 995246438 306656552 564753950 725934181 358198012 646406244 534602477 756834810 359419676 474777565 432784987 219377450 769893290 997976535 632809245 898719603 449007953 830325603 323377808 88566876 178270289 756824194 132006274 526999211 903793343 892561910 218133420 271308318 839877243 665000317 326408406 637186501 3591501 750185348 180274267 398475427 362081194 313568000 596381261 315483213 231966360 980558286 941501082 187561391 347856888 924409732 814985572 851324461 271352662 771948612 220314560 56180656 309894387 337619653 962706307 206526136 920258225 657608232 620751578 552862737 739610261 54651660 377028659 411689965 755058436 651595234 368160743 199498762 551226364 447405225 189455453 817373218 193550740 770577975 354954466 884809496 131422716 628111490 886135742 973628724 765697336 988690676 730393518 694238856 246137823 422132132 850743771 417343589 704927488 1494391 328397797 672792292 494104305 908839026 133372381 401443839 710519303 541835348 223935023 988872109 758436579 876587343 686400550 180393536 758887090 923111929 635107429 532841122 929535020 887205642 325433092 825111134 136308822 470280607 649420241 95057438 306614232 690167834 174423734 552910185 386984498 107732804 655127287 446430035 583175834 519315027 683052987 908623335 233841921 278165473 631800572 70564629 296656916 326460263 767335571 337899527 133370749 954514965 435783325 77974826 960419718 694782843 913279492 707081548 118046348 777781407 651234532 424249667 99972866 302413087 466820873 919509972 548195598 917112317 353903985 128590105 974320377 303376124 904149103 334610669 149696122 518710084 311116195 149084974 806281072 383577303 53896962 275318363 276049439 708913961 557522832 696334754 549042175 682337782 831432825 735398983 789672794 202252633 993546623 194469850 914976711 730075057 229354386 169543290 848756255 685443076 484318888 214660181 519192859 591679193 409753426 52988771 722878247 717104295 115836588 429136626 522328364 717484343 850398498 140139920 253379936 947723418 831541795 932356525 900191775 111683429 495321161 99565272 248282106 427565943 244664111 603010317 793493689 280110465 931334758 763137122 526921974 316043116 663048596 552023364 864663192 757765266 217606395 15778874 325215171 667036054 738893100 489452983 589987223 410859015 899923123 480925650 656152199 437536418 495691906 465006423 579518289 831048367 409082657 633572282 252596370 590133497 365757369 385102308 161692180 339980151 41515614 895137324 200837950 47414692 993577270 297176520 742284713 591124640 406288751 157398542 26848597 604334108 704586177 439084644 200229222 399668579 925100581 715108774 257632424 737754808 852163804 284765586 808371776 959355616 565837172 97711075 910254726 90547759 444269644 559427083 931496327 115645165 146711152 446538344 384512955 768969026 797669477 541235657 798782131 751851252 180435347 424946473 345511529 891595669 530230744 749444628 303351684 252284971 978692387 458968322 893088221 784998110 35169951 799029191 610738885 248186224 597167865 869486646 967554426 66536376 278727656 215203884 976864575 907400291 95927323 755376655 154754672 838577689 222901794 284927672 174132963 638241511 644061331 332031535 343328500 918750082 302177398 755910112 919087087 822452947 907205148 259549606 260774714 374691819 721155647 396749004 843606668 791006444 626564047 199192528 458935593 374794242 59654375 843562171 74989997 554396692 906969624 327971114 215683716 649435929 783156688 4334788 667857531 168264359 696014136 121637234 596125452 480012598 927895399 46714369 164118396 871348585 394284722 702339882 171979393 256197566 703408974 560979391 915927897 157731800 645672252 166403152 389596383 678941779 921691283 313869167 590275451 585198306 439660152 908315437 733466007 341132014 494410354 608931156 652510608 38581037 817604276 708754543 933699865 665376839 990886709 923765105 763258157 299632347 41126062 860593540 286934462 233537673 142565639 393487166 704552294 641427459 350005413 30103818 135087880 43896433 126338359 680921520 595044639 640699097 521921012 148968923 558994549 830288115 725394655 281202024 583423804 392532931 190488303 245813764 983996637 129883751 285326541 841847044 121917293 212350437 492390463 584963330 647280485 727483147 998015896 127868693 544816997 431124221 458130113 370245668 24847165 1299808 492405706 288744193 343082422 123496444 568811481 175632012 643908438 149783059 470918740 928090436 326166291 353976134 497861187 97326751 757780084 10903712 852202906 593744680 340158986 668907663 269008863 73777440 733594824 309820268 388380030 500677994 10159091 114527560 889013728 566967743 877337842 215791300 836668850 584663848 943755818 108126245 641197654 356113939 553775873 565579932 336916117 528163869 574208906 663246698 707871821 12785351 657929572 534366703 197384800 280964952 658398221 78660385 417075363 48046170 673641477 339787434 519952264 934094150 176831153 848035364 290350671 782361869 623680054 876190576 304014268 879941257 762817605 870495357 403019441 356804943 380193232 486631293 233856454 16328500 262033186 338410253 39738399 996915163 602087736 368449945 488870216 693568205 601211111 477918833 163968742 878155840 105990261 457317357 618337684 156487642 406925560 152785647 525806621 756519150 226913979 877260272 312092734 267039591 801936901 879101998 851116436 992359299 562211626 172708024 151425247 446721128 680015701 567589738 253001469 527924673 680703390 584999289 236782332 804582370 670532567 205175500 527585094 27692294 665514353 450222289 727731194 307880276 192251364 175573315 304657403 188123829 401428345 478969650 521156753 826307148 366663113 33115576 441956895 269852846 759281012 858493490 206838004 578587738 807525668 841893879 320068940 545677231 848468508 154278741 672823671 338210284 540879328 61225081 482262670 516968878 372430051 800291908 537524842 544663934 268130554 395927643 929283135 160365028 295093871 426706033 55056242 472884545 70744182 608501402 468236257 496680289 832490195 444287695 244329334 888369659 495229050 224653783 714575493 171477405 897477956 924105622 55906887 387183473 178477753 141460860 563611552 948064734 563155529 749576986 849204304 479975924 121283157 851098710 790224411 796252403 409377605 193259168 696385888 79115090 425664884 418166695 199835527 472041908 569164640 173735005 126255929 20077894 421605009 231173884 555382927 450590301 670270570 318011788 868779014 360251591 432346822 966109973 318935735 464642913 641175942 981471795 667932099 54642441 425342926 741117232 869278477 897747098 219565556 765463210 297608141 313592963 99718860 519594024 804459596 763315348 641718911 730517112 549978839 58967930 193020401 151561728 748561257 352025941 169701847 90305406 781831020 847588856 728374416 364180245 685747251 428605220 285437910 811340715 860538205 537010972 186521193 322482474 996986480 507857099 973680330 126034306 969615551 557304248 173879327 376781420 292746847 196587861 826746371 174084404 167496701 362941340 250124564 330246839 606478827 636386252 18278578 140838690 281748932 779825369 197526201 147638053 998264858 329417768 164194547 109652635 749878353 858375559 536716894 314840720 262840238 279273118 617937413 614586256 987688586 464542273 165899490 249183287 498823216 603435691 576935227 368694082 1015908 155374692 76846464 952828646 910088451 790529259 224040894 136178859 706049649 318171440 514828375 854819375 627020146 253762470 377118050 80378418 201631233 752869708 840979246 560379414 182847973 948942825 586039811 698278906 361989703 237116700 472755903 3891555 538424445 308110453 92948213 73989902 230749461 651429718 53608232 133192598 101303649 130594453 116952567 303232297 843027268 542900590 872866255 318932559 86517087 168112378 449843834 182875690 340328261 67291827 153056584 138317149 149697129 888503336 752359297 438027979 84663979 29819295 195884813 578888833 442267511 145432194 339833930 499195895 875297931 942044695 440530840 59121650 976700231 540688932 343720339 807432966 709061321 160511246 360538404 271355946 284200964 407359608 96089963 46290541 868750291 646151881 229461670 863182961 833417268 156380120 31316380 248580412 505789921 240054339 770093791 770043414 142369976 364973389 546758928 187606132 51020193 182943018 926704373 59653264 548313336 564705231 84003313 845444725 972695779 568108500 848046030 29988390 569107721 928049469 126888076 39314365 993496306 173625238 899769241 68782941 430522446 445640044 430309173 661617956 935833501 934393654 472176236 842657523 623737718 276434578 935244507 108401013 842267060 775121893 589508995 385732179 489784077 22856173 30938739 74903255 735520176 493126815 577090493 163695717 740358479 942397031 92407989 310212089 812098286 299717239 938681708 643969508 710995964 390277322 866323309 857701435 892293834 772561018 875177513 85203758 844689118 38145399 24652988 903405701 112103418 464811597 515678694 859726225 792355109 382419090 547812637 476168731 54634845 907549442 71671865 535153240 785740474 946684888 98658850 261139773 611288307 20985621 476221748 361329738 779072459 779995119 411101280 447879749 538889230 979041779 133642835 413179468 719798042 838498780 451427446 146184474 593796556 975714186 775538679 815279661 584946339 960555365 688204710 143322576 488882856 39325936 727957852 881936220 963915468 49016970 681455378 655072675 521429901 307435709 675881465 349776752 262206049 105365570 186886549 173688572 828669554 832432438 65573499 574271192 278294630 444351986 891636821 363583976 135078415 558726270 585408994 492618212 326450618 958424922 796584501 190672652 166675746 240515294 591935351 338603876 932043981 71286896 117956526 859361905 767915064 541004380 651098491 489536896 203103548 287094630 177714624 541190435 749739517 848172314 940502561 545065644 151968674 531861831 354726955 939303934 854658118 227543728 107676514 658729788 200211652 695741529 83315477 756538898 451225357 374850575 732926203 773088305 426408511 162387961 137645356 469423350 706184502 141548693 615893687 99319237 360165918 796409556 86046536 624607397 317546085 628933333 584751633 822160443 207516581 394311273 471784414 943181268 65885689 693936684 844450917 839469601 918457147 372114030 475884219 553414937 955203754 862950304 756982747 354974942 397156572 943258666 708028486 168778261 157762563 168917511 951449490 686291672 775263816 699711494 366930084 927252522 66437166 722624530 871572271 988354516 783605378 928093717 684399538 670074367 621153863 543789654 82328561 50877737 950815826 336700945 716455116 446517496 683877413 391177259 603364319 619767308 278354154 609445410 74582778 547552298 617084092 998451506 987984270 157520958 331587751 534263708 433653055 482948437 487734861 421150375 867232683 919783147 893459921 915756152 958334154 229256026 807439531 512262939 687213307 18488404 839205922 933374604 892645815 217649628 388691562 225903767 125071199 549011358 927739900 882153395 505185294 531718761 368406237 848840253 581938070 475165642 213843179 431950509 100041868 473016929 718221845 718528200 753119991 624791246 254505297 216366885 173932050 87363170 806722210 967981231 435197222 891729670 876606416 508281236 349026398 433016075 469103304 129147312 29218734 658449529 723748185 814594864 716820665 632533236 289011230 941701623 133196485 414628402 503925365 37108228 920543813 458117983 142187528 250372533 762966158 202388184 730238647 694257661 329830209 612799941 127699067 573433478 316634159 173666003 781271532 829332469 277029916 577899974 205519376 488411604 483877775 643386541 70183407 594300660 564651535 913777377 833588 532752063 552037494 192904348 951269896 417128149 461203590 116967547 456055956 877234387 19793674 64230720 60135121 994356255 622412052 507088934 496726612 6775620 238893751 388453348 690262258 771729092 827506285 203458202 290399457 317176486 924566452 591343481 382111043 497812153 155375788 843111055 966357247 342394198 728808306 511800417 252192080 588523141 830197546 524917122 813599170 287982999 358944661 329942300 61377495 119920008 967196049 406033920 25340070 339236660 694671675 272926735 511785187 530416521 594067561 779224863 378899674 171734656 432810716 86669934 445504197 711989272 715718789 832509379 137376485 761880032 75516792 54035920 704389896 434565021 509005135 899992422 367717303 354618379 571763585 278163983 464007056 454029362 882208035 906838973 634585546 895628935 661337038 268181811 784583540 431190646 571288955 349332548 153866383 649433939 903686511 427911489 385668392 849242486 316289893 180374385 819815305 436960140 120587399 723415878 361889570 627033346 606679750 291921072 727747658 697502973 136352022 433629098 600406533 943415327 239119320 552658620 328849410 263136522 984559060 178997922 257915629 528927464 482214549 46387410 274521979 653643067 309953944 948096587 735451855 117513196 956143166 625354955 334685391 120637176 217618656 979800705 943295447 61364834 107964535 737661951 908382491 424020196 968698881 383018898 496375033 277689864 452355723 414353107 597433374 773907385 801187794 693636583 220248818 372468458 190819445 349763146 252639266 96969883 559556905 778660634 510144899 369621136 640908990 440840650 564499162 320931404 81687595 91123704 499923228 847626040 180606854 533921936 344294457 627008203 518623415 303382321 970501076 622447596 244576412 142435208 945226668 261619709 719374026 174261741 441670796 238595838 588177308 497887355 659473088 149393178 771391453 988892876 416497337 775066482 407868018 916365717 253959748 151688810 134529374 204426431 409509673 891669003 530589767 593545087 925964373 849392403 640759645 342431621 462779015 24528260 328996145 178525062 428737412 699072516 708534497 175817390 181936981 876965909 621928605 512940974 615071933 704902815 656457661 284998138 886693082 231876709 990482474 971648462 525377290 46496487 83312479 199393907 846443434 39162583 489998300 652745179 592543036 228263893 954153845 817306688 15727899 866318345 142124985 345209217 284797391 174099349 622374180 921329161 894796267 373525339 604519955 422689142 813790263 135604417 958808607 169650424 222229993 68206519 732174135 424485396 520595807 369343632 980363545 738134858 250538110 35304227 175150314 846369385 355628280 684591378 715562667 612539602 405902309 756552510 129029104 239171563 256348976 256620367 909278403 10164204 643160607 415916834 923004955 347930750 733376269 456064596 77682213 93282700 50424393 387584141 223551197 209453645 259309090 681526274 77801686 877932482 945411773 949775040 379378354 681286698 909682506 753807928 721348395 536722102 539922707 192278990 890898494 547841798 116703145 312063130 989615150 674425152 235946876 614214001 517193100 985073038 305756400 827521385 458998723 264833548 338866285 849880851 732637276 151932445 115160342 112468 600700671 324840023 913068351 191587874 733895374 629777311 287471275 31536785 827141468 437760816 824886979 798364684 24724776 377127783 496643016 239854770 615884924 232557928 582545869 143545851 15241797 572085938 957619783 965017044 402635262 397525878 166923251 205332442 688198355 674755802 802213434 250997954 52707762 449952665 549781191 625442230 606683214 641604425 204308314 859361270 143876898 928642570 874317950 546061761 695440138 92820819 154243202 763915018 7816211 417257181 335880883 690693633 509423883 728070381 208931590 765037529 634301218 83866040 492245397 148831865 213519130 395615793 139708420 532215544 271482008 100762155 146580432 922760088 213277954 359135091 591385804 640194759 117685291 486741823 588225886 184466645 719114783 585322374 634667127 102265009 377365854 352799355 361481543 318922685 801320459 9433303 720686375 3011296 5772942 776124314 880972450 682448162 943248714 723727209 580821498 852866708 675670273 453532964 234395552 882828901 920390243 853544819 89272107 397277453 941243564 124894556 139717025 246741638 504485859 647870584 808952142 344782808 751423688 980208104 625671776 971029284 552142232 963883775 853107417 267715513 791848454 869671294 899761149 787766955 747064907 685202483 260249746 597151049 614132412 431617525 555414490 611753208 252182169 414642018 140772427 327351142 120681205 268794721 944366649 808357120 21757396 117889136 56073467 66287764 891967928 779408765 466295362 977516651 690661280 525552342 67269959 563849762 866886459 470322167 291644170 425587663 171619620 940046662 432211425 843226928 418211520 626164071 152316954 173434887 399218381 914114892 777531484 252254666 933104968 460836945 342330921 593365616 272314157 497003796 957018355 791286094 265882258 301935995 472458989 391267376 365309984 35307540 55877982 891292936 806278720 170384097 982575863 755905918 238089819 527831151 683187454 984248068 914602901 277473576 265888071 914296368 51504102 308093090 241936844 304040600 154195964 335295432 48840616 915651510 378654114 876116246 684619263 459371090 258122888 37671386 142912959 442166888 550435248 131911175 500802168 188358087 249834490 498539018 565624395 521369170 36834686 210066640 262477034 262145327 45687855 285826366 231392242 909007235 945571909 904320711 79368317 464415698 533192585 893082368 750279101 56921071 868204452 674228007 258417408 775926416 651134446 71382789 712650459 709614433 881782525 815324009 844020221 226544669 348770407 504518562 922877917 35257319 557443288 998954974 656832514 823598818 665176738 166898900 161481911 526074023 928579431 821815671 370740376 287107867 790029136 537018718 934847589 565781206 941518693 818321163 577076981 265350852 697976615 405407403 626601234 982763105 174358249 803634533 45203826 948429810 585052279 682667487 402813900 236620928 395026885 80374482 944245728 27889971 848187241 709168172 574921109 545289305 925670795 869450712 848602267 357259033 622951507 255644348 558947233 762911016 479451700 53347281 855635212 72198680 606767988 508341991 658337108 202968774 158004978 480165262 922316975 221781682 163734346 935811929 993412572 628822674 221904555 308638127 362275735 285155648 277485332 141049352 828638258 817635005 844590645 914707389 66821202 799022496 557736357 537429572 957396115 639053905 826755717 745538444 294341126 506963742 626760345 7939544 308641272 601567510 306417484 555222166 118117640 15580321 940283615 413436252 248466347 582342438 217462746 799011602 634041216 383660655 672276082 590202936 791898337 943234887 229675715 620470133 995815629 747419998 812753424 302091473 260896318 454773589 932376460 356755827 761007877 192002730 28791649 648490074 698150057 30708311 929254772 717653361 380720907 431644258 419011529 669978281 303337459 942298132 313964024 470135757 286698873 530582036 466266907 970291258 574442237 98888502 797471161 483947591 173441946 91765858 98306104 177097954 209488761 483653004 934972559 254297371 905182954 109353068 741629552 735543872 266581266 771529009 947421827 923437862 644240463 502557098 196822228 287264197 17320641 926978851 487989410 594537607 3871026 925403091 125913124 282028338 275683476 938830052 976363246 334577335 695884361 478291153 329627437 448370690 425618021 489135296 271786193 542555466 265743663 699717703 627409463 776631116 914451893 401465197 781775623 638463355 921963233 83457021 597431089 481514770 505918496 6626906 681224450 22849746 147340057 579739247 505374839 999786176 260317143 853215971 428899349 554632646 652954434 629848213 470619124 260017760 491707891 371972439 285162292 554181385 376460960 554316481 665897801 945953201 420146890 406466560 437176128 638066447 588964722 20230238 572637894 567751009 880823672 368383171 590680003 914519039 361901177 316486681 191622363 224235320 95156547 21126316 941297026 598289524 113473781 498814108 367849875 277670672 662713255 412063408 299289146 187919862 875800692 92693624 633220451 275212071 970782677 484481720 949878294 998849544 68924885 145237539 549727722 964693364 962675800 198613019 290501787 109459128 399920257 266576921 197357836 948304702 390817058 779650185 504445022 170574845 464418889 966746602 803023509 596443405 423891438 370907894 183612508 127288133 784839001 24221644 760585438 454948851 378534538 304758862 88700652 748093730 220352535 664311643 950474986 546535823 137844221 342675398 315082542 243150049 42300532 53466966 270801025 606121308 654697444 85191970 274802649 500697107 141483031 686585945 232755221 551804646 589048890 209019163 969150879 849860522 664465185 778504397 29609026 772402176 591013290 398827297 934633658 923752371 653580177 40266116 780480864 607590820 403511562 798633177 339715787 173898691 247744655 483448039 272304009 652422045 267293377 715478464 768448771 470234513 46661482 200756278 640684197 177141081 470510316 351864890 806421452 788664662 97132307 308382125 886723099 833516340 633633604 466289453 205943192 524677266 55683327 586102799 39104055 913626738 57639487 116074110 662484233 436408061 726998969 646382812 247326166 66230810 22951272 417979592 221131304 201348202 57992587 835572508 77491652 805722371 226352678 160672167 34470026 559301965 53708108 339408115 357554195 608283662 213136148 274053542 819083351 563417275 985061364 312702386 842077487 825997737 969877220 393804676 922935574 276003611 637340680 819716929 77313430 647423183 200389261 415596989 831734557 345042964 13224443 114027029 31067644 223743754 648248501 897909621 594814837 935269249 460884587 234911300 210378787 465424397 94111054 493859464 398287459 567004380 500875610 579068335 566270246 913339139 621706106 654484781 495677123 64238932 760741865 11128007 623787371 894963558 698299160 893509576 757102738 65092726 379232937 355796409 846203318 918733460 155820016 448036121 277693231 781365596 114022012 960191633 323625955 486045923 279819497 316768115 888031258 407580102 183048913 598730309 663949264 71002642 452746502 877524265 98476551 182003408 276038523 412939904 132716728 81380145 440736490 176999377 640094982 883783092 141058450 506493423 177133962 820729844 193153872 68898616 187729412 785967994 193521577 71608889 663859270 832116040 398556725 453715179 662370048 746695810 943386658 78777081 519797170 762911884 84895181 825427099 680127093 101362703 943236229 562723139 926701159 827327886 73013658 638604146 575397289 603981325 870971530 421145362 810097408 978844691 95691121 752427390 200828451 582350291 174613064 929496551 615301417 384041337 240085800 692736320 117620717 282433846 652301096 444977874 519649516 712088331 514904443 92815828 253665220 21633964 480674059 941905928 127063806 342237972 312884646 844270051 981374076 942705343 516185117 364892272 494861269 513888580 747604167 869461110 391063870 511230789 224285962 316903826 732882377 625350656 970739533 585620825 435207020 384790369 532942158 95977137 582522905 74881942 913578094 500141439 164236479 619464868 939489526 502283976 339101012 240193339 972053813 698857681 44558972 479784245 728912361 362172877 989124403 687723814 36430314 350284544 362365871 526948779 633621366 552230250 170581629 631518676 762556056 199538925 911869159 659219968 702133326 540502773 305343795 955489015 761985875 192787768 348686142 133926585 850987269 382566283 569104451 133078420 932020300 811151143 35947365 304113473 450511655 382898132 25866531 630677346 122454802 973067436 855552814 787177072 908614741 258493488 657114352 275635164 55327494 729296024 346182116 983009777 52778943 231684919 946480095 911256244 123785795 418001444 23501030 165844742 371930584 933987538 702099568 816507648 343731720 734045810 877568113 580259805 373261278 930055687 38705836 233291341 108019071 543929295 146534274 175867178 718881214 488986227 823561710 262909531 884266755 465409908 800871428 669492593 448679430 152465075 629340907 875066644 679139755 693872629 587283075 466033050 876764613 299621678 821781415 334849971 634816226 891747183 279855680 527867495 222022699 911161068 983453811 509433492 114386755 454679039 129745926 292082171 145050811 323278117 742713236 958663335 181247118 661877236 284440662 980240709 369712722 733548586 503370545 615731158 577937144 981274815 582040205 458244934 204887791 339856460 590880641 941044958 561420857 67985330 609767856 826972087 310943231 234031561 87595781 205544909 457515693 480023362 987284400 298723044 748520799 930548037 256926435 866002159 711959847 768655333 503766748 122772703 168816099 219373674 889743189 621005116 499259436 535995499 637637498 799648283 851244148 227642620 39144709 737482836 424689146 493661926 322936040 827015206 357420470 87988696 13833611 406822499 741844818 947975280 548098027 717142335 576167074 479329868 907292947 591417911 762592065 618406158 655503213 749885461 979794965 804724452 767450914 727880680 321953766 391418334 305432530 272187594 923875132 261710988 807217101 660577176 744576656 86275725 844725161 768092349 785741305 546133189 965984492 213332812 924698491 117690627 860794983 858374371 385251244 531844177 349035127 722383019 651378482 705601818 119823274 706977961 357265821 246978493 534224858 517467715 722864243 244196271 550518060 568960865 255401840 280961811 189562954 928420160 506266406 161167952 654529292 622529120 101444670 431855502 558924920 9671359 300111285 666257895 449459544 795258424 584937327 584415583 185358716 370508714 308816701 740862333 55068654 139033653 634476515 221209345 714400005 557687241 916430287 101380830 647271893 446440216 156589939 603281253 975424584 314018081 653880059 92578768 330003730 314171938 429830750 150447846 416560230 885024425 900651395 2263162 646525742 359299318 455911064 849953471 405611378 41042978 354666457 84283291 892712162 653992473 659718354 267723707 554365029 612647826 577016133 686796969 928435579 823246522 18875445 914236862 553691441 885666069 278357855 47320478 996940049 846470082 603840091 379806141 826971658 173476293 808833891 626375621 863838324 565592311 322832388 776080035 247973554 329192059 644835473 431534980 619491169 775931543 870158631 92072587 290661475 447066238 57566606 8742546 24314154 599008309 941503695 644936414 81228460 297884674 990325296 390066067 967856251 675374187 492837500 116871968 14925861 34403661 408924261 179776975 757964140 162635101 524542653 691690237 640425688 296352933 990385185 452063674 952777403 497563605 829821810 296100122 724287378 477401274 851823154 958392890 883845225 464257206 162907065 619255310 361743977 82121277 133188673 82478083 365716645 230470351 453798334 291036104 557283247 810229781 555610738 285252777 251396124 97806684 35623550 271640040 983392736 485223694 832252672 789103884 166973785 612761715 392408000 490477019 385502082 879134686 683653812 703742267 888742571 821426509 252522408 855606002 222369034 301658347 801486085 950788641 682340655 145003134 283442266 571462105 223084486 915634678 85907528 565254461 380597920 553031747 162109127 333681531 414217284 520147365 732576327 245303141 826155302 215292610 786698816 346222520 813622610 896043359 457473911 98619852 504229738 287306764 362652215 122726813 732218163 545618699 14287760 419028565 795896916 421206407 350636553 122605917 120337728 465449051 102559349 756666794 88460624 512171966 417360799 658235686 414350423 115230408 573681433 461732324 559160656 276894420 357573308 10522029 630142240 157984513 978508289 769500286 679431721 83163928 301195842 555129652 359746455 464353023 681979917 287239511 11316490 131667553 235622315 126232487 483281457 104932260 456854225 322673039 150654885 118275347 704771453 858097735 414528685 796775901 437196813 942056424 344102424 900232324 1177741 298435245 133386700 891311551 332772091 662399428 210781961 369626257 636191584 342000888 5171485 756391029 352066565 86681986 956468944 780867812 60462342 723120319 289902544 90326202 975604584 744607386 566510943 828625892 296569256 295290770 494394796 920562199 114377127 717381927 207472072 366076409 402247746 436612109 303582042 488513505 414194607 349539039 852430848 455993165 75878351 387994220 940697792 285101788 874680524 726542608 640716002 483513548 256233960 498673978 625856288 887381962 763557091 281534851 815023237 515830610 986287062 24168584 59260269 410593044 609777887 992386584 232185614 304698903 630759848 672637595 898182672 95870804 120952606 707040442 989375596 500187379 668866470 1832489 476806372 667112368 517591291 930140377 134215703 391013932 508550561 95721032 836743382 945081549 674145018 600669143 742180865 127408117 634128536 927792485 511406991 637111043 320725160 803001534 722959823 941144964 917198707 430994874 732780416 331553212 739982942 501915205 379716482 907371389 608063994 296644942 795437859 298149882 469176054 232973191 159922796 127174951 201308683 75864175 622730978 3054764 903928311 36330868 779982410 132571178 883629861 138504399 895599551 990685908 781157178 391172645 482823249 937488556 818452448 849727728 532598475 433154497 459123841 476852227 721686366 253363891 424414277 862486617 56471554 552819863 44790244 676966004 949190276 27694551 249414281 401449023 224048754 367825065 933533861 975886247 819218598 157486768 453654703 343794897 443453040 63929805 636364895 480600733 799907291 527326483 193250922 683646505 559965982 93035930 598194649 730408163 877732675 411448556 788024030 404455723 463975585 203615594 802229194 310532796 464882722 223725568 530992179 267259397 567466073 905777336 897302965 131299402 25031747 659925572 148936315 237363129 808162627 743052727 14205713 853574267 453487127 508529556 501340920 23455882 737690916 604351946 191265594 414430209 924222686 885310795 374630141 429928257 332067533 289409776 103857746 427839466 560015546 563820275 324446111 586535856 377884253 809287777 836118208 749698914 774125238 525789687 678373052 15087243 103109105 460041231 17560006 490050028 212329229 862735595 170325991 33560360 862266555 696149422 842509952 839385937 398334441 585240021 756687056 616190384 197089713 972001759 483786761 219186072 983188862 132491988 56474547 950317920 841662754 364301985 301243011 722922142 479117358 807012268 941993031 656675300 323346012 464454762 852707252 482760128 422536353 923082260 979071897 116036407 835079014 366551452 508264463 233375500 187526024 802501841 236530346 663263439 899692768 175546114 129965044 58566820 763458759 134232474 812576861 171929258 3993120 41938389 215103969 53057778 351488002 232601707 681746448 122300054 648655628 724416514 627511743 251301843 877867541 832996481 967110369 38135152 846586889 706990210 793549994 805480973 63347401 342119312 968512145 673288987 957113354 653243643 207442812 727234745 541377210 192823241 178196158 323994568 422667580 646147208 930121706 854750436 712704376 756125752 265330229 914162414 409783340 881804082 359773409 86382416 856903534 638592036 225391556 804822003 896208007 408813395 711396893 422024029 687790734 921339607 915927755 185414533 531703469 139315320 785770203 900744068 101687238 628134992 12256612 206154190 255171467 350853236 598356757 160202087 45279208 408646449 61219266 5032774 299492316 657804601 637797940 668841806 351081514 256220581 284829888 248602536 962035574 497391192 854760810 215789667 465284203 930810799 995509888 590224491 723770557 40298354 988719460 883254619 330839793 478183692 348244096 705472240 882406235 843949547 291936561 123066847 850400403 663885725 173558964 321485399 422908156 883681814 552862569 55409021 32830969 741674953 850549770 700320791 866380272 136431659 75765988 771369308 178299794 89923970 286839272 55010824 521940288 850278825 756882778 49378714 508143022 123959753 515787436 229474571 761592461 773092765 168287591 926528776 251792569 994966370 433930351 527420482 426256700 27016870 266762174 685504121 705958891 536356097 463512865 31010088 793044694 436627233 597481148 29836178 718327011 637204719 356512858 450165206 15863609 877302623 333057725 482677409 393443297 411861232 627890124 341605029 594910186 163753322 395509966 164131491 843165868 441219099 388084893 562131461 34581951 30286992 157054823 615199064 331097929 307293192 161008301 319934801 996531726 587540614 185305096 71528537 860342504 464600516 799881386 98652591 358517711 908640476 769588711 999954466 147452608 863848104 525685616 469038677 372858551 121909351 782886191 512673165 745739428 541939535 264097535 560686159 357812071 108635573 563282475 968756384 862050942 693837515 154008105 399128416 269274135 193714063 561146337 40307707 387811698 601679002 71728991 26919908 577292277 3481166 432934193 615645606 70268214 204288096 109510091 429947030 103872517 751661159 515940052 793740555 744333836 111455460 22771495 871273584 806401043 488694982 274051627 774347633 897327777 618271883 83155280 304109421 622627400 371094736 862737682 75427050 644412321 978503804 980896098 11499160 359553272 845665519 330410381 695506842 517941149 889212376 588598970 283413866 206243122 371586859 509411049 974263277 492617781 737900622 589680841 654660630 954283752 429485157 995790477 560962414 875673738 544497469 844165514 846423969 970024775 562584824 793739401 342058932 213447502 103174690 593365808 218977978 508614530 286472567 865291083 236790199 699083165 223328514 539043304 149807290 486400319 776671753 671648187 416323966 848963426 771667182 262863152 330692100 89813917 353485585 201926285 937137700 521970320 854088088 204141095 414720733 367363330 376678155 12943039 270782483 327127007 833103757 425534629 911795408 235724945 228123811 737662394 357305368 594443358 519400234 280501471 647777523 485105063 55445113 131597069 869668257 9508607 778460336 765861821 486370284 719388717 771502611 918548897 520160610 483101190 889905773 410469013 342175453 277288103 299208903 328185991 870248670 994029657 36150718 704267222 895052413 152862881 456960179 34843469 253472057 287589733 278825517 860342546 899781784 565884316 357102816 648029564 780941798 267949465 613894335 963824739 105129025 266371085 36448079 649765996 618013705 621917837 198065872 685617775 189276857 243503521 298727249 18670694 404898965 287227063 635747615 920211706 721378746 506547647 745795136 511242564 65474562 47818241 634593435 979762320 525823678 96718971 740094897 751702982 765025690 937357942 137585334 554800718 302150658 183906366 326593094 261591447 490719070 165964569 307736181 15730379 542404054 186406983 570095333 637457075 174498618 316478004 597771870 457832853 904263831 733454468 655759405 154852655 559352732 645632275 870961372 108773746 644128532 662279567 147548967 2806887 886470913 552945656 236084240 90967475 646277320 471782449 900783674 965839443 933686370 940720240 714410889 56961437 327763690 353706735 389387897 903951241 759055726 105463780 42830196 177839064 141615931 894363837 484936071 11790322 695067726 784768462 462003031 977152135 935726343 856296863 999998047 44856913 36219553 35708943 777430111 539459430 994807549 324887994 94939922 892633948 411855968 123306809 529006177 399949556 903294855 52705336 265964162 670557826 524203441 202720011 169343791 949470360 772707037 800045299 55976230 196889384 666398007 525845164 841943137 30652008 490318677 910609582 187819869 125804227 314416341 623665218 42987364 500809404 65363914 820673075 741541370 159141931 993485730 353394959 130322329 69104165 271917170 83305771 854627289 944211375 162245722 399800645 272423447 759356973 121887207 293751271 39322845 888035703 251817369 17463767 467805172 151135724 285287651 563834111 560564973 230200736 318100395 702530684 740502101 146117382 665552636 683128671 23650043 359457888 341150467 114532831 634330517 69156713 867451337 793750945 850621387 685781353 278331470 809798076 982272325 193369010 48524388 469914147 394493314 943706871 526223677 266494465 874988613 89332136 659774830 375599212 109644025 877714523 516389366 654805920 662719499 407890044 943687930 421256735 11902489 652851184 670064689 778187101 205851722 164059746 27397479 186746247 580575945 324025548 167990759 99561876 435270891 522666596 674175078 979395371 180160856 115095037 512242659 779700006 377790628 308314837 712450947 460680058 646409075 369122913 451537399 441779743 553413303 760095434 323948222 312911806 983481796 752332810 737876045 48368685 787803418 470873807 141060736 641417097 68781980 935637347 371997588 141943715 206901741 501341088 697712277 269793796 474337244 707529778 946693982 974053685 937283839 805781284 262043371 978514331 39589581 479403929 899835703 567384960 477652940 809338245 397556668 624577997 687004457 351670594 28555056 614421320 565664440 988182344 234753068 187417534 357535428 917823817 141726848 360942654 12295584 19198600 894903113 540024716 588990585 176058915 538770839 281026018 651397350 334849720 261541822 219819922 361492306 294328556 480182694 197474660 906963490 101025275 390646014 561930513 383064728 672079431 649602058 675128022 446478216 560146201 179413588 875615535 764044044 730438352 87651468 482346853 339725012 367506111 293397558 687370723 886985903 849382742 974828983 677361716 622834952 182981915 235095995 306734596 532383104 606974941 255207772 379789917 780563048 416609946 453730604 654250462 420350333 271134070 682482614 246074295 53900336 571913897 852122344 606795557 852433498 367760615 69719768 509716286 548627858 217218098 867578336 9745520 86157428 141540288 565156271 831578262 819658626 872915550 110554416 73361641 297317484 489845033 442033026 685665605 799847511 691622736 444852121 330068412 332743142 72335330 591006214 85434464 771591057 614068074 871390574 235215049 603242505 729370721 444241431 738222599 998144299 91112677 11146774 853014969 429037703 361487290 656759166 107860148 382399638 540537541 733284719 739367763 49403810 671824390 917185019 908468508 353749572 376111031 916218509 459201203 80962388 850469028 391539314 412718866 116885202 727784393 887394434 130992739 339762897 248918120 414349520 838313129 485085204 129528115 201841546 360300027 712839729 127346407 94142945 755434902 752038161 349809514 433435466 262067589 41260953 271062863 371773622 656298267 234889311 227510227 91924507 243833245 979617098 526769654 588747986 485899361 612871149 124081408 244897151 828377500 842091828 168452595 79459203 211569815 819358483 494173608 473346246 701317537 946666754 410817664 151339786 186876975 288110826 659552803 758901506 745183275 963262867 978324634 164840244 98557889 372576828 689511670 903133680 557167014 906780795 202902392 791090322 17889523 298545312 13970913 943675966 667621279 849068371 974026199 77443420 609236181 109842253 742184340 873345475 755318452 394319953 770611012 803357996 297103340 836728282 821380986 341730653 381263723 28305093 854386857 95567699 753135608 738164558 592839960 595110382 181278974 12844455 758742867 928576496 245202789 92329091 750941746 178000064 541539424 571229968 848231352 790452929 924027424 943543622 466859812 556242879 273066081 285262559 875221053 712015038 919905652 65761283 732664893 630284807 890773393 656618480 44362566 305928041 587419488 337913144 740068198 835279147 30099047 695886647 511259422 615673177 901304495 739240278 649442511 726534487 662250377 538426444 517733204 227494212 97615835 819409864 234753600 702354491 539895460 307513516 733526437 199094038 373732955 816143576 896217561 167892812 26389967 467940142 55638892 389790028 282129334 588231090 145796628 490649803 340792659 268649672 73010611 649381994 93397378 892046724 128005866 546154161 612417647 130199350 675142465 36085965 111124320 67194582 939217004 473374950 126377993 188492141 417962382 819305093 326527124 64319996 681869729 556783868 694091335 867086776 259600471 578253024 707166843 639327283 628895588 672370791 47909283 352482584 930413659 382111215 287751264 728620926 184030278 321054621 87732923 346535466 811620853 465316868 797461444 336286671 824641299 239232165 194902474 330068305 212851058 112597747 388510930 833255660 246792221 246386885 809052310 543039062 231263734 568878053 332187061 712858612 18290417 209447939 692516512 474613064 204450713 613299583 899525066 677848595 582763167 756705799 108059031 810032798 670108891 297290326 35530430 545678016 892153370 63247910 488959252 89493329 100067408 654805104 151904423 765235219 139130383 80965888 248294125 629893441 679732449 672732401 127278162 835262933 522446731 973773735 841671390 470480711 805300285 182367207 553592532 987086463 378918253 252850258 641978731 194789154 707513969 639701153 409147901 131747203 617092422 613130855 516440457 917787868 975268350 743155842 71895342 79023174 309205057 91664994 186454796 564013072 939322602 926930825 746415721 758523143 624011167 213990477 878008360 956775764 659624861 137194030 355308276 391466855 573761372 286154138 86276424 931093216 603881682 805201218 29985006 807685128 590360625 772193506 713360126 933794519 150567278 959979900 347321015 481951942 523226494 272572617 519031805 193644896 851707430 307760066 789396689 254117980 758427677 607393182 834167584 848252667 883142259 67590050 636164831 390573768 367606268 751482432 998475728 266759419 412385883 606604721 319407710 837006538 610810747 188920584 272224467 56678101 842447712 73115024 78537942 547995805 469054451 943852747 847853906 128306955 104097996 981486548 384819715 577684340 715071158 768715638 755955838 227953751 945191955 673317471 572333642 936788883 501470953 330711562 50251089 429833981 140976524 936871871 320874902 222228203 440625374 691224173 508363283 734680237 810282902 324566141 89246153 767555107 455813247 440678657 209862668 36491244 368869059 525209018 867907694 816857610 785908227 38648210 277578566 844693010 995612435 706810060 636821145 798051760 97347120 305608575 79228609 690863573 883740444 599983186 162498207 242939906 583438455 58783254 527622992 712162246 169236344 936187594 702403067 106337958 887050679 831901606 911979426 393929132 565137657 37515702 551994865 333633156 101561817 406777580 318772316 800278837 645136820 954966438 404364427 38556907 961969507 36129711 44631088 35878956 252100298 832498157 176202691 390464649 296642397 36691567 641725268 703656057 312562781 921940639 754694735 321744040 461258984 392650056 223145464 414469656 300734133 878067363 982838152 644579057 720259437 202811622 877522562 813190932 760059012 675311908 448646744 933750780 687659362 53182556 604823152 815200212 537053039 197095958 652023443 721998915 361334347 95157389 743350608 825565671 686331481 164439636 657008896 155031806 887705901 362506316 294961734 487030515 698146218 787022291 929037267 116719706 194186926 773244046 310412370 464501556 122907114 357244737 831401178 145071299 269915810 684736859 941876046 321920233 672670689 797400307 13306563 356985174 475512760 76173408 327433613 568268208 852524773 666625964 72700336 178108380 548605380 353705666 650572495 767006814 221536826 145683705 812825411 683095060 302581617 300670825 843643613 148138576 327890983 2246506 914126801 608090978 930180125 627999143 58608715 720920321 223171884 44989708 461479486 778847040 86093989 615759008 130639727 443535177 429537425 768952486 626226348 311915781 449303949 182877556 821159365 179920598 534033311 857430839 562419700 307080068 812495300 893124988 856778818 260276804 39028403 208848299 633182606 314128574 306009351 668071832 623526546 327525364 157135551 451134494 499382949 799024529 474244894 840362198 210923988 624158543 930360582 767453406 594108443 414812932 274643671 279180363 108812997 464309308 345666403 734317927 974723482 118352248 535481665 13995956 539781534 122220809 861214629 984282622 206143062 466963320 572841925 56252676 997479087 637686756 91040006 757577948 67815600 458040426 344070762 524593003 752815317 977616941 551106819 477674545 617572986 962817832 414281930 382395993 233505820 281414326 398411621 856114701 325120937 574730046 483034053 9556666 243905232 660978640 445855147 746960835 268323134 629357468 497589013 923896950 910731972 349270525 136043292 246273506 755001466 660428074 349650129 562079329 99950555 746034544 448372167 186601589 768480880 742042818 98814751 48593409 567373259 886372781 52467599 475506621 397052344 280593883 804808111 69948873 911376374 894897044 884617946 525540657 305085561 777796631 866391688 873734787 139153405 691313947 164918838 155459102 827853090 798759610 383640554 121790488 424866869 49674552 38423566 901103190 287866549 292378563 702164779 754113930 336427968 984045835 241722512 975052386 704816477 853870382 352838775 210817036 563923941 500096950 841036394 525330090 76428620 413275082 128757807 561261994 314154214 313437906 597978245 10438093 116631482 462240032 222693973 69744653 506747830 441782078 110505230 962930407 2626166 842296717 90276074 49802654 62435334 348600040 173497567 738618187 195777586 676770498 115559154 722455543 192723216 384743683 245721033 461532545 74790781 517245631 294600937 808346552 445104454 318808140 700451410 959984235 869442981 415626546 22786507 338786430 10981338 529347641 521634666 574750517 352529202 976234133 268807914 619548982 864399522 754521789 486821790 533759790 604736283 24378541 440580201 174348618 663092983 987487457 234434494 526109222 838574154 128647102 367175371 951324504 792860877 756608618 332851298 372977469 730503199 176907935 337788097 804652593 905404773 287538580 364016438 206589983 881864543 421186791 236311208 465672068 616493884 75031554 834105406 100551236 704436198 854095972 905437201 20718128 14771241 608020230 848258241 727357786 525047455 516698462 603651605 98748508 482930468 383932034 182022932 431680435 689025475 838264815 113709474 904799202 391813829 338112938 396957027 791572859 783678303 703786623 373408148 835722663 487461180 257960113 165099449 3751826 730318837 342975202 794149987 788217397 269048885 133454220 382827506 826254784 403162839 723385978 762919280 52380466 961839049 850479420 797280813 230927244 491451205 564306931 402622869 266784966 936353709 561288739 113163319 308135928 697941597 926527924 406040519 30914975 181038455 223834362 335754531 188329525 207429002 310366203 281530615 19266536 261900667 630813793 651910684 872477500 270819801 711698163 816063726 773547933 728184077 708868411 15917889 601121370 588618624 505733323 485455113 498318567 90673206 187273057 638901649 385747490 846311848 455177160 260582988 938897320 787761570 749199672 981104047 687474147 701309206 534903302 188628979 548835947 544434794 398042696 38791327 516046413 786650456 100885285 386819437 404807111 989579977 565463542 706229360 226785413 186637793 969965119 705984054 112253054 827666052 334896414 479296871 827161982 715623630 302338708 742442642 72736244 533982842 331506079 994595299 822952989 527330985 559878482 105748036 634406317 757010147 436059756 300930769 639798149 631291092 812309248 878880014 48118907 166767569 360777957 193159892 977190793 486544212 680355833 40614708 731834952 592252709 898695998 663255085 469131508 681181384 415128377 331185862 688513018 290301887 694654489 50178327 173799914 307986419 808873836 761933966 619908607 341382257 531975106 968845218 722091981 614434459 250968540 455789475 682304455 900675860 817933428 262675635 457127697 896097275 248385616 409998698 400298158 971555491 845098405 392618529 956233350 272350831 261028233 244215797 299759461 556990268 890962595 526775530 110731653 316993906 288948711 936944121 9136214 721206466 257210539 934750781 12887423 121103725 98794525 274238433 845951624 998000070 627697083 7992405 471476199 823402640 548611436 951167090 9176174 172283389 795853278 437601357 54607981 581257436 340960863 929947214 937122678 380643094 12063650 249523686 22028646 677145486 303160163 547960878 223906828 961818813 769071101 597128760 980630761 383472442 850365112 902517496 597004694 827900873 388244263 686971471 724528454 648564942 602762927 955283016 278158921 731063095 967539070 117934902 921662811 902535869 278998015 571691821 201141187 4030530 673886628 211403286 190311840 167586513 280497188 710253253 10701933 554659466 278074231 742315739 422749151 189689397 41583589 611005063 615854528 515518530 249469009 77304241 384627687 152761007 436149686 386538467 349421170 676429150 123281717 800918998 574383370 964015217 523741058 663823016 210213447 426762454 582276780 146842807 476073625 414060779 868777624 154893399 284864404 105411807 463942301 86904584 230530285 970148079 891385566 368326204 150942953 239719966 47395855 173998853 275975674 282831721 653451971 142325698 796195644 694818774 938457375 171149338 21732892 924399940 385491217 231473296 768448615 941921261 865013147 352334413 35135915 911841293 653060436 769969765 755642619 249236888 718771353 412469243 893054560 986644725 248655011 217997262 638176262 27417304 570924346 850317703 504991413 254327471 168884276 216587800 219132480 518979686 597762222 97188966 66166649 598751375 251276498 755600894 630495529 344450338 629234623 895582947 365761672 29500694 704430985 549767848 638783681 147336324 324923858 687563952 639315362 463642279 808101776 284970809 752187669 944740505 181895704 268324640 281742429 346776316 158110932 409098409 436729073 502831649 374873805 209199661 82187439 868750581 666236470 905425886 175408363 557185706 792973868 694233110 139935453 92554514 786765335 97136500 136630593 579603440 733133196 268214641 897004646 970121122 967156607 492478439 812983470 102314961 101508224 371764054 815441042 490414152 572547992 597993339 802077118 303831491 602570616 107475429 962195071 217318490 800267917 187582738 907997772 816583941 293406770 879818566 428896168 349463158 262627114 383919761 867386112 866843507 591479329 254622469 685772520 824826234 431735375 225748510 303779858 407239649 994401616 121418923 321020539 528095020 369014829 956139742 854134712 636389238 635971308 390559458 500800127 357972165 637335076 975868079 646236065 762475181 816298378 559680786 520053621 81900134 512356268 883012666 623589048 841408190 998364793 231015124 984396299 444380130 805545741 153566309 16874109 711623190 751227228 375975998 158400755 24319839 864262685 818213598 448571933 475435048 397527690 81713109 966925968 626042605 362327258 356109260 983367961 769149050 977153 268872292 450927643 851134124 81166314 242109007 505389691 98193621 351034148 364928558 474086539 226985936 219173425 848196628 851417593 926834628 366732446 657264563 963947118 307802577 601547805 161366291 675009555 278317618 241026470 428308803 35369776 759261065 701543551 912984125 67942249 310906983 310296331 102111062 940834642 847423165 897165956 835340218 41381836 213162551 15928022 82243987 609844910 945474948 204087724 918796429 981610212 792090558 621886107 813088458 997230755 465594339 279094893 765333766 450750945 87637297 662465 420091294 860528040 578203500 40360635 318971070 159198191 722234237 698506440 918105782 441562222 306082981 955268576 925303274 393796765 294342199 517321773 920799492 554393402 939025769 835502281 835023789 151982323 294221408 248584698 494693683 788571245 769985577 949457597 498009402 696120489 98560188 685257462 707423905 907928976 857662625 617069717 644335399 654623233 619496902 638208482 301963611 38349585 146164693 42511466 838684427 994664877 136735870 332374233 601521625 640144469 248034053 922885378 863231611 924822311 404746978 796745670 987655944 286712686 677182450 851460394 539899542 226372168 499824217 802140800 571803318 789294140 135816040 240432120 406678009 585189359 782360135 335487712 514009642 417554537 631835033 89080031 557048491 827378708 944509999 117546435 425324337 374210462 631723964 42715637 436238571 898782147 375259549 253318452 901643047 384579150 18412614 685053919 466144207 768769824 573442306 151217652 655411881 447362727 18966849 258048738 758863175 902319087 249876567 409778878 343062697 340178698 874788392 711706715 270222768 130625052 132168072 139038910 989063940 719343585 539752377 526135991 344299550 622529496 724594806 925778941 646838164 936261064 424289795 857934227 683634197 818599959 680848739 737071810 133486117 101428500 781558247 762519030 143530628 949441136 160570756 503581718 433739191 664724676 449534708 532506057 438845187 482918449 16177017 403079008 393742436 864893307 171728760 132432169 942847440 166801892 186795624 734350165 663430898 612139176 384382991 843815340 456744868 867078733 190334010 609622472 626786800 692649487 409861953 791879193 510229796 164687478 346220177 946329774 720093114 516986080 265128833 784612292 132726192 496829237 538929626 397222222 260985137 782808232 156974485 964655387 728867929 675711563 567614873 337070599 762301537 878839800 630985283 348874573 517326406 713131589 831104943 541817542 998965897 9075715 933349718 627495510 422802584 318109173 79117522 721379313 609518094 751930749 337535674 889680893 570618627 176246416 362387260 814364280 344603551 876645486 645947829 915538844 121798935 425836551 960544287 515249765 281957031 432437078 560156638 384473820 755400950 709599124 395517879 32749468 247773028 36987253 69445433 72396703 483791011 716306866 774277618 667741786 118072979 263403867 586883215 659661051 950153988 70170359 240758515 161754584 692256676 207001169 180873985 639138637 380720406 196792787 309558780 87167837 614198783 171470729 883056235 403257717 760075412 936760851 418822739 82843419 593111648 408206914 750841789 640192671 599167887 804050858 144438292 173829928 636111341 122754428 169260114 699946904 815853692 52946723 900834956 550499270 621652051 186813649 97419004 688001413 30899275 354465321 804339650 243905067 815277968 394079719 323396563 823560660 604560679 784504940 275846435 42648230 936561445 414934766 11013046 54175337 344869199 695722778 485718562 154598851 105354077 588271718 674011745 7090698 812891158 300635538 570001123 691998738 230998544 368607354 580310980 712270886 591478358 62406474 637540330 583868314 907111013 862258750 617360767 674563632 645121015 185737184 348378149 502476869 412208057 769863524 426005004 367387330 109741642 279127247 647722712 60269730 583614639 530513444 131434785 702292465 126522358 147081198 803163313 540926547 330041174 998083899 294878155 280077466 585287612 416584536 405101997 389117051 32793695 930921451 831887234 734866118 521433764 114268889 755732281 743678761 316965600 181520489 771300731 774699184 295987509 771334064 65335816 684765067 117393427 140140332 905995084 981610296 140432392 374531272 397570179 89198768 187568549 322876423 124214561 961858940 59482606 306510529 619641321 980618462 431236944 759257422 937950688 1433304 699630485 919262646 606129035 202654913 840253240 919008991 933447317 75362126 694808629 162715504 322922168 60598213 484499115 243548852 327217572 653733301 795905848 162006660 542617406 297564747 663864352 397228570 157941093 919882058 789580449 556907723 387683266 428246882 910266079 630618280 68268875 182899244 685501538 422587573 332051501 198087905 216896433 478639704 114593179 105492611 190688046 237990916 826323373 365348128 19684136 125487000 418993377 295225416 520708778 556608192 953490402 607078781 616203637 794131593 317247731 248059171 873909199 380360834 638054446 818360944 13721533 173501576 237469673 397329557 260710484 539484972 672708445 495591728 527298247 660451247 592910190 760891634 336313225 196820430 784116164 314030397 300739672 199684314 612099146 416066962 245145813 17680337 749070478 470144419 293674032 363204695 361813270 939354537 933910537 485971214 989303011 51934340 920147581 69990460 779378697 849485811 417979788 532713174 83143519 584073943 182418574 423132245 312059702 272022575 657191418 55950156 254299985 588230086 762983615 634970864 685604382 219081161 291005071 746856905 388428874 437878828 912695428 437030365 703884010 615144887 179649427 641040365 370234816 355698368 330944204 480059316 731523825 944233642 959176891 309857833 751324441 667512427 454619369 906914967 62442602 330709206 504421457 773268952 596124503 838591721 445587603 23420432 67887605 743502026 302419680 632516461 637639893 76731973 888885972 339269440 685864068 753436056 449580792 31025169 143903654 162726882 398881212 247374729 67672929 512129350 905248042 466913482 968254879 653432770 548885852 217645277 957683886 937796088 57154583 423428841 576040147 155485037 269501370 852816355 782762109 772798759 754680535 354304287 74453303 133816722 202803003 571450870 117751963 275498147 505895155 237419088 582804751 485300727 457342271 103341606 836362293 844624371 964450852 412283703 170867881 835670874 971976578 617149286 664608664 846448980 460291938 660888232 196923198 179695153 221711946 664678621 136577729 625663970 309590901 535248132 454743303 888997306 495337428 282704450 227689445 832785253 687807879 293817449 88761862 865008247 313125469 562313241 989035342 295760645 214767845 531602384 291307719 433169249 609854030 149225893 33316792 760349053 421061818 579001284 234249469 8004015 716341979 517101528 25160251 516704610 937169077 621859863 216807668 925383872 859606475 247766556 680662410 155407707 872445412 972373174 258463026 69304942 836707177 560306405 781060932 461474075 855285351 156298343 474559886 294211512 409469058 586217542 808866431 392315340 568396289 307007782 322022092 591010772 379882676 690258025 607726157 476088825 476212944 332546329 558042087 22611183 794815472 513835892 700186344 739554015 148963888 648749325 583350470 298405208 257607739 122487404 817734920 336404906 834220959 824937955 448214638 190621370 858107758 218196113 921689933 258461037 105925753 92614431 898119534 544918648 155793655 509316909 352111896 888206263 819084579 535291236 671539637 188532381 530118493 387587822 155688549 402361484 47565057 79062236 385165997 839251617 44918303 906649725 870344111 729417477 89616393 998730924 612612647 652053695 833848678 611254903 386856509 396152187 638785228 71768472 892834521 455853907 223494544 632491909 604002303 141659724 667656209 246183204 948024368 924219784 138737302 962634518 191361362 774745917 593316963 279307431 248819594 814382260 739428843 904948977 216336303 779749847 907703418 171171877 722532453 92775034 572504546 83701983 901265532 107732035 493614679 959760724 604436023 440575954 911989938 423807495 86187206 790727318 706256477 363046381 863313880 926973803 518163788 784438180 298911765 7878343 866323087 471152329 707996281 750274624 469902449 663703306 991392868 218488202 761904000 325595183 444577854 42792370 901925849 983591019 710715899 391563230 872926301 450006716 163268339 603458837 866097235 282392340 581083392 340138688 448690634 738162244 343736056 723455227 543442044 339613038 90067933 646551414 394983354 469438321 631666774 305721500 916975861 673975853 339511160 916456217 371230 987755616 559563995 694585211 693629123 473133494 443122813 581240130 49552290 912533178 750925402 720944596 936468316 491936215 808964375 110911727 195755350 504033148 248114947 373459095 246033039 325454944 697374796 956687223 57746365 783410896 991249231 845304094 885786546 454665984 966281177 240197105 937083781 677828616 128086558 773891695 615021873 784390156 130518784 509283779 271399577 341980429 450200620 348718388 167478256 350886821 623568915 470096202 76368089 876024167 638017799 670126971 776267405 295599171 815017617 167830073 220174009 571257928 444692234 134007185 774534689 392367895 358546526 8713856 727114222 660404414 776476645 941047316 437487053 620772683 578739078 180136084 818458094 294252017 799582171 491130799 252555631 239888041 3806172 902749972 268790040 354160767 433613265 895119903 598719364 533959740 803849836 215177040 887863952 749650617 555147779 155942834 400604412 670889346 262489849 340898937 229916855 36391698 964150113 490015939 783311059 734934341 1619333 440589950 669799333 465256205 726260344 409940697 386278914 196369748 400409415 370901919 311154888 26033504 686082630 908258336 862238458 233442383 18317185 941540919 164917243 312119438 341072800 606981874 308886781 454934192 975763531 211822620 215575782 233083709 523525054 315999870 572895720 764362270 622315485 455059880 513662950 796824889 383553466 86147749 876496039 848968841 535449378 333920973 559471277 988430570 621585383 733502052 486792482 97577489 613519748 78288816 136063335 109138414 217499534 868528932 765853755 925732739 357984481 540561114 491943946 234201761 550293462 288486119 126558590 86814428 260435312 642064243 545486484 448301198 125409122 256957757 439815899 195331224 278128180 799822799 429168436 398164846 313672952 332542167 171627699 547664462 604620955 449426173 89763030 940427210 292926493 392756682 280207236 659763612 679107682 684221152 15157285 377262103 45506923 748305429 251639147 769863808 452154743 869657752 713926111 109137749 586106352 850907675 670557027 290566649 201270994 289115312 415148740 435687274 663095724 720908467 690016731 482348358 34804127 321555651 105538286 43363544 594239775 507034441 484413625 224165089 366926897 595411164 630097611 908327237 634935344 715876898 758893319 150673103 649257122 878724447 634149612 926599885 513420439 864685412 24057476 376907036 658225145 284777249 223383928 131360212 719009772 143598180 428190567 4666451 737671000 479862795 775907127 119680463 132670665 255491155 690332169 279498965 919207762 915198515 288801679 33086849 312395146 59535744 676212964 746057803 245328099 420523912 311890562 872423625 878712507 661357367 864460993 532772254 653140157 259873545 62193487 489991061 799921469 159701341 527538539 370866557 750736128 825269957 98358729 394656676 767400586 62140728 706106834 345916444 8549562 624934354 419720358 989469858 762747876 381451057 142348006 558289797 419998094 599883263 334532022 532197478 105154527 536071224 378969121 345528370 526447623 722194639 997193397 696537589 450466555 766283605 887944659 209030342 90362609 779011010 614072778 947272230 837512238 15723363 526378893 100393570 303686586 43680822 467658167 623549128 294100688 883090234 981304536 53454899 135714694 500302633 615240206 932873050 546662702 984662499 617929364 189975366 22869277 236931995 824222041 748345990 725366357 452012935 561554970 843718848 188289856 11608570 791354894 783708395 545906680 173941874 652748432 610286220 643224839 491898583 350535310 89451461 44061872 907206893 688737678 7750521 792353133 271183574 232840845 741197004 949154673 939658454 449426173 893779316 47586059 967543477 860530169 711621461 136978608 4285134 892563368 243519110 142168072 387484732 417773015 776011894 234010718 624246462 438467373 563440829 950284652 363011191 839135933 523663128 210235923 188321483 66284735 567197947 144586548 985062095 538496014 222906091 583572462 722331417 949137225 520213487 522218145 11189309 248876746 480374420 764267259 286243799 639236545 83245226 777548340 718349661 414040336 611070705 132084562 985411068 495756156 309819459 959149727 42646800 365421051 553963932 900952590 108959189 696591034 615900130 910266794 283871549 371017416 85060964 281525845 801134477 740735764 136284307 254997677 524694619 244091400 128053436 571475495 688446262 395887393 916331374 28021100 851624440 56751678 201862515 902472884 919310371 595872502 719606102 538726194 509981845 838260253 832895846 156923217 379828953 34044987 617546479 802791420 814289451 507233672 375719756 991948820 961813187 554829927 11528340 649020740 100739069 903259225 434165430 739861752 391025402 44045596 393411807 936530677 842155773 430236531 406398897 354531927 415735808 998966491 977077793 133409211 279366682 869248516 775612699 569287387 292185225 850671426 909164139 163372661 249775046 262211626 514872849 766186419 132772577 901127346 443566770 973237802 62154757 11085672 267449577 52547488 556167529 930114395 939237064 40518247 813850635 892146284 645882264 526606603 890132908 179854418 566438143 185439947 492469156 142659462 626147211 813999845 481104064 100442849 268653765 79701547 164800254 484343535 880577243 651876124 537475801 786724670 661547978 892235457 494119585 37621298 837095340 321231755 202121777 749418541 983064113 867727028 448386257 486650461 431631668 597990993 427876830 2385206 225427918 534828638 837678129 703153995 669145904 241833658 617831726 126774371 631093269 932068092 536702105 23018079 201048568 761538680 677430719 337144407 962717759 89403134 825421428 266352273 760020051 244249634 771923390 679589268 66597001 995830434 419730597 216509952 742163324 335300837 346448661 497458594 695822350 877435203 120649665 964918550 708581024 232160768 828608826 182771298 33413366 488963168 709140929 582788852 587640533 372311659 206044428 78876703 71113890 78183733 282351091 388492836 906318096 782304192 882009601 69130649 330639135 76038074 712645518 930432075 33938669 428277818 656679178 790947393 388702219 116123206 649515794 666996593 465073061 482522808 84444984 482356147 70598318 538355509 99641078 656881883 918189597 615857822 776708587 741182129 665565889 729806222 344304091 320214467 60606184 367912262 617978556 976906635 352942400 79001432 538701066 965415771 416468951 169975978 436666508 151050889 863171376 804313617 539019183 26862475 194890485 882558276 454404217 908731373 606218460 742210575 322633580 707961431 157303887 18104309 515082707 166394057 855871589 233163981 721699882 509449354 428969564 304899452 344629406 813894338 591422158 397747034 947923750 40444874 997680277 149938228 936635615 463346663 369081335 997171367 370740115 772060083 154962760 4005595 833412145 64803172 770407508 469933501 462531332 858257433 541083970 726471330 69627747 797433409 9285542 889661995 798695725 831819365 412777955 877780680 842862410 232730862 762846360 369450349 468805122 722943071 867986081 148177020 619984444 967596869 942776545 13334346 375557925 140344313 831247408 158339544 289167589 559965197 55102084 47445532 989678912 386686232 372676556 720367879 104449155 48730891 130105467 951798160 256354889 880971034 25175858 608130407 37948213 238350340 121679495 547016403 130387374 531896639 383919894 86551230 235486395 401268100 314054763 271322084 494070628 895964266 229657257 211751571 950314735 766556589 742121615 754111023 120433173 571672512 421976159 917195459 341304870 299650579 452331362 872469292 894085036 440872793 190780412 587204789 678016180 189552227 81666053 170942746 832499239 26488452 175545533 55914048 978337720 641177313 88743769 597736321 234462955 812644811 260791059 83396493 594565179 959861023 47087699 713136409 297968056 569984505 603566085 483833595 181241739 177670519 275614244 770673528 927842449 626575617 852944416 647497667 573175376 670630468 238503043 703624587 918610955 722174072 726522460 538208209 568371474 259173607 522533385 297694839 395344536 774375048 93305503 26725843 880174829 465422036 161788236 457668357 263817702 884646946 211875644 139944454 414846923 112907415 550327831 413291614 916863256 917236601 207729229 477181612 988711834 923497601 375711421 177251405 613110385 761037249 734357819 789977852 623014198 504214046 63450791 247730446 967561591 698204852 663860928 790259397 835181426 122599948 728649299 205758211 225689918 82806591 63919489 995901489 706182778 961991833 832264843 309413783 442346466 345605129 131707069 751079292 963201334 810023514 383846469 198933019 38973834 450152868 363177616 319178038 638613001 438980272 231562044 257741445 190654228 736884946 850490723 540426499 61267953 318393854 540751381 422723319 216714686 845628768 950634628 710277922 404888055 47777151 364955227 500230624 538475811 299468022 366512254 43164275 732806665 954325694 810830385 403400209 206487636 887158675 179923761 422576029 399896720 593681247 154411058 308746229 297255522 151308699 25639916 910714679 895440117 385626719 399623259 833858657 856388620 383588874 105968281 296633020 769438416 367286528 30967357 372395008 724905553 139045259 639178466 989961215 534703461 89015539 278464482 359370562 866469885 457061916 968218153 192542562 904162234 108945611 797540710 976439348 202906257 501854134 203034947 410351482 934431073 481884735 989555351 598612937 519701389 414215222 809571083 34313923 343167622 663160268 729245054 353948497 419021970 188879106 965055788 174712648 138089187 677554804 980006829 779366581 36976819 245950989 808616606 465907922 695942624 707978285 403444778 436175620 966155578 962591113 403493882 709705322 619356485 995038756 711502974 47653120 688210732 301751692 803378178 768962485 639795664 548121076 202588875 453139769 688426533 245322086 322423447 316103113 91053699 781402260 276437282 789830093 961646521 571886852 927992562 388658490 594596661 981622515 608660587 323670719 579382783 736431186 345093098 968224524 177312058 247844761 188014840 359851451 547758045 276723252 883881671 674028543 805944393 899969003 955345253 29510126 711753772 232620272 444931127 386641871 829467792 225352458 835957971 305067149 434853468 215699146 91015551 406211457 5083252 428920426 223455957 813764105 624124929 518158705 654023785 952591120 32216943 261445997 505727771 894406429 364846467 701362149 446401889 674148440 361592636 907526983 814249744 360012664 422159876 677114902 58952681 632331830 589816438 384528207 682628895 15179681 925839354 171454072 448243575 842758999 179044904 23581237 828617182 198572657 676590526 673961309 698729142 908593288 681269803 893248415 328731547 981231321 611712886 789856075 486005106 969845033 621261169 386274849 240253052 179181998 509754134 655276082 460086880 866127731 919737933 5189763 908039957 936746297 265634654 451431473 118961747 127452014 88613603 188867391 71513566 412425773 794568733 54491147 356097536 357173670 487643014 906053182 841164087 274085482 569343327 91853381 81020463 104793699 657783988 615260219 79806263 654940364 379199017 741591123 797527625 717834336 191897837 631627361 635853436 133769234 28185128 863866054 107261547 904202455 478279499 828553033 555097390 371886845 726179172 97740438 788982329 137188999 292654136 672321098 354178840 77232275 510883088 7225375 95331954 21521256 327116546 304352831 929702888 984785660 685219046 394503459 623886188 202060747 466594264 823588192 835416365 548001464 732002092 786902035 155311516 414941322 855193658 657166117 379620392 111655604 240949151 505029467 896303816 36731920 59232790 761597911 573722094 919557596 361180612 769117410 957209090 51505312 144020148 810622544 609041665 802560574 438072504 463452118 371643302 619724275 237836028 553749898 818999312 485150871 521311320 680142491 28875362 227899165 103768991 73375874 679489372 760400799 450945723 8580633 332837302 557229618 586109421 836486508 126055241 639168848 528046010 698497590 898428032 40374209 46592412 314103449 12789619 970595420 511485030 238032883 591399737 184901943 236271437 845674987 628643381 427369740 865166081 104307471 731880229 877317500 479207799 73346168 790452383 987789437 826349285 967226910 154962970 605538875 753081671 498974801 145668560 745950827 139973820 554678785 327698319 182285300 468706031 952434297 111411112 109537829 567520618 842410569 437684852 327187708 417839459 491207412 161563184 315286577 630852519 464812726 235431821 272013797 884788954 374305887 364057062 727587403 48873431 224327146 991750431 210640737 186627291 707333231 25722603 311634186 805371573 614438553 624425604 323080098 414975691 388203961 295783023 399987154 109015408 998882398 207709306 256474322 718884334 375518336 882729648 525532494 755491572 765198145 975938301 958671456 641595159 488584048 318242983 905448152 393397345 402206713 252659887 61207917 874688679 587152235 164598687 658405837 588109263 470169181 148978609 354977332 503756529 603317025 55443038 877197348 965383603 166547624 709253594 454776026 684986878 298337572 450255087 815223579 134069598 523356248 683419895 648609419 90207799 576729871 111654696 39882629 493796054 895893965 155354844 231148945 780086260 360459771 114486588 389039000 813682567 423103597 801209349 664454513 200203185 106830732 330576682 71500537 106558887 597451164 741828215 820492420 625812407 231242761 532954121 620519327 553719096 712669160 294935497 590144824 60687015 373329176 851744124 635374643 901705523 915350435 260869891 514938242 447129866 257106232 670911812 854894645 844602907 717484509 966952373 972031231 463660788 915470663 88579488 873209516 433325771 461744966 996404132 211715854 260735026 658687231 272834077 775604353 254113634 431221214 577431482 631352449 143951904 164205187 178929333 227701198 761897205 209480622 190187286 174039691 823054347 475441184 612711678 527271858 716239968 874482798 341497162 147365707 763220365 999441295 869084965 258203713 268113288 468018348 28879882 97472596 516088666 176250145 62186378 172797393 439492530 483058396 899297229 897058087 999900889 317518184 776481456 662110382 254523914 635277689 258882799 485296954 135829120 9148672 243911746 503471984 979663241 32935105 877228574 732050695 663654976 312285434 675271672 917011501 18681376 869306207 520599038 454432654 392427674 24166105 448458165 929832102 696762092 519571247 387613768 71745025 650289600 441729046 517051485 35515486 979095248 547537982 708791294 487475190 473059833 597464977 530098331 211155911 544820924 888950631 234878887 903634619 779386641 21891156 91346388 10438626 231062012 792236430 484095808 554395867 18256224 965384202 171951432 423995286 556942448 921525242 75950064 985560607 478684547 761733098 587913558 682460627 399258121 510476536 471284551 275841215 129342750 477933309 1706171 293580958 132187965 766520140 738596364 354460895 684940991 46854447 474156954 450152550 52940557 879831775 41624197 239763440 473209060 119001310 385195338 66076900 587974066 9124474 256204953 60436836 662250687 939418329 847450713 329582902 816546072 69282434 854841500 925439761 879870786 6077470 564278296 926504915 310181791 91589946 49570418 263675955 621944935 403210620 613654486 644668125 145149608 112412022 189538555 68391342 784908762 873373043 403742349 632898352 366284934 778981369 303673246 426098640 911555919 151285922 153550200 687607306 955494509 783956205 398781482 850830704 110641235 906825273 373685097 443897318 751240892 923985866 749759657 88882440 2710009 338893034 116774129 924337006 611605641 360933645 566327739 715517104 965238095 88529482 278651504 245042852 126211865 584136606 626156807 795526509 978402859 865854099 703958870 688608138 755952849 113310262 456010753 70039374 178642021 999657807 22865242 484581064 657249488 52478944 260959764 998032790 644570045 607875482 576462555 323212082 717800033 324201348 720196329 370720004 886489790 742856211 100221616 578594817 299597129 431646989 653814124 125635188 422032027 493052667 626539350 829139835 515275883 493518461 441093224 274263834 207224488 193063391 21298218 869268119 587500903 626020175 681508610 4529058 515823478 934144115 240458316 678956495 31157651 963116969 855492175 339501510 39864612 150271940 657461920 352181125 280155157 751024020 908741439 790367199 476378739 975301502 311577780 854407328 980770099 339348685 999580592 859622184 895247268 342612829 897016323 321768148 519220928 237815113 81966633 462289969 869536585 288862503 854382415 120961563 550282224 931076278 809292941 774306655 479390376 555594308 664956892 302082289 97070358 948064020 437852989 658833242 134788273 881845084 714504138 418440280 67578412 233343129 605667417 926983712 756999262 431804239 482885899 850586998 625978982 842709187 631960438 366771599 901272627 274905738 220325774 381113507 763510749 158767113 243046360 373954355 985624942 619169097 750066001 712450335 454911154 352077682 331873918 797716727 825077677 31080551 108477427 386003853 452540835 155658149 150676379 296761861 150069483 716100675 556816393 567778742 941132944 634058282 69959012 699471274 180225298 312623366 880363887 734365607 465590267 187005790 847206025 59387194 197613869 714807859 858402105 260610252 396350883 105792566 905783503 865281131 656737501 172103289 654877897 886360828 784068453 850906668 504263384 154394429 775486259 890008680 455679221 681285408 706059567 188460737 161872793 3259672 691946507 746574794 552572018 662419959 912401443 772976990 432712541 82391924 98726693 555802812 106319086 217851710 962598667 571909008 43561415 69135914 263743578 525501356 326257964 145657574 905064769 291982753 984757699 241490477 978394152 202745791 182398925 528541139 415206131 897593430 830926983 335363709 534973523 228976603 136017496 154040268 451181134 263405715 715171501 582395408 108413137 623824594 990017353 616818332 783553413 652503586 225975319 638824899 926691033 341362912 139425858 357786965 453803265 138297097 685120978 802977390 385258612 205476135 722365933 27395594 678348935 803756114 930007841 339786338 963392139 362744350 255491288 878652985 996914001 573098812 127221325 156120988 778341922 793443426 644555074 68071858 768436692 351780110 321734445 501448305 277929805 854106490 511312431 304060534 980443982 558637652 383279997 611155738 755288542 70469754 775747920 73470440 420919967 693181992 144212285 2594068 968392708 300457234 511067242 496291261 47555702 479680936 480549852 370429970 854800553 834950597 80375028 397117313 35025417 655626373 538844587 360348770 805041875 658054464 183611841 651867861 72401898 365323723 378466936 172068161 696300647 799978831 433066299 235353548 16090226 53680663 91483167 236310835 76045458 254658640 38274440 400250253 420071997 121315528 902266124 76089028 690007893 386015716 606311157 678989421 661695206 942941939 727825735 966633891 677104658 102653643 602127601 151564082 42936822 626091153 467982427 347077038 576564253 500901632 480099400 980770160 386389290 127239163 285002016 52867453 906380073 926427540 191330951 4313537 783535117 871627593 997048927 183108143 461428621 531106855 703217668 391132421 687727972 790777906 128276270 396837922 484380237 899654203 127663108 96818830 997953658 22910049 672057525 538823967 897186953 319618059 704645627 999404329 671442182 577773750 405182676 893596760 696919591 721055659 251298133 694159634 168078519 806241649 740565881 904614015 113909590 206899751 41438682 260821901 500798125 932063795 96812730 944781384 470143477 333077953 266852626 859821154 133088381 924843584 412254459 106516305 136234135 120355368 452925087 565105014 25565562 729869908 30114292 605225130 613238747 402066091 626879038 670671334 899046328 445958490 691012075 345103951 922304499 922737030 66853808 554286217 39278103 251613812 934997170 981599421 348187413 344197632 587981851 804762456 36177443 850210345 100818484 180694036 395354659 726383568 562750317 483805531 804188630 713681312 37556062 465643193 291327729 586138841 971555804 542442936 761040364 632897815 918424780 402200763 98872564 537589376 158198114 300973661 560831600 365613251 243414573 79072409 339162790 408598599 796957732 762781656 612790222 741374554 771149571 122997119 297385370 579067987 496400886 18929168 275807412 875733887 767554764 924200862 956393606 354575950 388808779 663332948 208724596 20861796 895610372 826583029 965044214 149439161 727119086 3593646 841744336 793184402 933305731 790631511 193316035 179368432 665044046 940773460 628980937 970000751 418786446 293689826 787751398 1419214 952388627 92151033 825928746 613178890 494207862 579239301 236474332 796200862 832029162 227060793 845915247 420069734 71577679 517582966 172192722 203455943 569151053 960011425 791010504 914948403 174208751 736984512 673094916 306580682 406718997 977769984 214937210 931893166 415888617 476234438 147055570 380694691 682350783 813275919 506210671 605089348 685764025 340426579 203177885 288101522 307356026 48912474 262415742 887487842 16969680 341366565 526225005 238418799 541470231 494292812 651677638 471347103 569101877 172948298 936652206 256963582 197116061 868019338 672873029 160783864 914830612 629085780 216025521 785844873 82904473 763826111 441642954 882476482 255302417 473647513 54159070 947601452 145042034 452061319 225517217 763083741 183439325 214313778 115743980 949338682 11285361 134908159 790590693 831506764 22788491 456813033 388995376 93267589 749584676 188073283 493251135 933636805 910552340 824227927 251579560 565805757 738820479 293919052 415730129 292926961 92958201 72547447 835296655 756208974 718770284 42325921 664786518 855736335 378855734 33183095 927972721 52557632 618316422 600194973 537902445 441229479 283604855 206442537 103553612 819004409 796653883 329827803 550802913 616121315 396796737 254033740 17826039 369960848 155491015 309310832 919573898 425073517 670858598 445039506 832805367 525671035 806194806 540006310 717752503 876066458 542545983 230627162 952116163 790403829 146076358 455075702 917485874 421178522 602840978 637742902 73138095 921879172 140911253 816782238 364178411 323444248 944549809 263981416 703053940 88496583 876696320 545195780 501523815 814008581 947714949 778552609 570093787 656193764 905952103 429200826 771445742 736351576 130046824 221177971 368365271 369070811 29206222 927725917 347482689 382448961 302810201 899334830 176237596 153230711 37857181 549027448 682913426 833823057 798538930 685559817 398988225 760276840 746397660 341395093 671239720 524538360 446988333 98499769 289492615 720653098 283164946 925654447 909716474 410008433 719234697 116808725 400996947 965874795 330017249 60305190 112318762 662562069 277000504 977240311 523338724 742992080 521482472 158715945 210119772 400434298 805120422 638156856 574304350 803355975 529022900 396028181 822491211 24890335 576051557 284701300 182352302 22977714 764399825 948872155 333663733 573654048 74462827 101857516 780020447 547572018 733823074 26520491 526442470 12373647 642017809 403723885 231574451 318237940 769451899 719644200 483577069 526325343 589158975 969400584 270455349 992750650 601482697 236870562 130761840 702654530 186025577 633439689 706475726 757932927 676416287 367706646 45123721 404051877 885961678 909404126 235630994 356361303 473768800 711650022 477598010 653347534 646019403 146596594 138708976 834918483 874164377 771663419 417280271 827594664 975748173 889361949 335847353 978836706 808567917 653880736 723501824 439966774 252119624 686681776 555740335 886194222 620697863 333989311 816600032 298196610 934415768 522503537 197464233 763900203 791767770 78037329 499858788 52528401 505195316 809289290 817916221 354407943 103659709 649616508 819754732 364683052 719779410 516402134 719702600 257306440 462154601 462780970 503247921 628655359 663359402 993252673 163758912 607606460 764328352 114849969 393963374 252753177 247132181 401863697 485922875 466583064 581238825 390001590 845710521 225571334 237355813 604749134 298355581 263296393 351555022 839954390 163072884 914665047 390284346 522585405 530750929 883787928 353547636 672095051 322952159 295630955 879237084 452135352 484995338 48609660 249748531 978267589 203369251 667336700 441851991 609170257 190901333 16365731 374332371 971807460 481377473 26146193 577168616 767206018 409626110 915727149 214927039 18662686 841412156 474831383 142953013 589050296 581388803 450361949 425463044 357391350 370107858 213780273 357065613 294429204 562177925 458409373 862696112 61313996 887748958 851557521 178763485 89108313 747659472 409720461 16481035 153351642 233049665 782182932 950832640 715436684 359748766 353499609 49190190 763579178 127316510 569310094 586713739 298397777 372492147 392432131 804241431 298390278 584657526 621151415 574425024 75909592 889714510 856972614 551302198 527623097 50114361 565118008 481361238 356789770 613857536 922623911 668090295 506552159 382310719 38180951 299963816 190174719 53736242 648292316 631812027 414343256 836067577 710550367 317490531 637738604 925528167 720391725 841434614 929009912 477810677 32742471 378971690 869456460 275967917 614085980 458263153 995277099 132018275 897549556 750158284 609873500 516166198 339683318 768467748 15102373 692048963 623231132 453555901 785971109 852594443 237395217 520374918 11171690 136321042 679330397 640075874 303995699 662129414 946021392 856386332 400317300 727655180 27629653 379149394 82512280 522421608 790455394 187540494 553509813 222093898 44970770 353655058 463183743 665354190 204979837 895471548 810703386 176681072 139435342 65765361 177268160 651891368 700552423 865684706 176047337 728004061 904298345 278285466 232242589 155629919 575943128 605989374 27084425 789990091 888548340 170049188 927400700 811758786 704597357 473953817 847027139 10427544 633254132 519420086 6454730 119542568 16044937 583094625 225999617 349473631 547952076 223856463 854452753 276102596 105963437 60402378 542884174 606019440 31285168 888401432 251489473 416326080 293733118 687849512 969174647 307713247 416579808 612966848 153823981 896481265 172832034 456593828 463188110 736872174 212995863 88784599 314966907 404643766 683467452 398341628 437874111 289273313 456366538 188207941 953098402 737193617 350955467 112186400 706724328 388607479 977835548 825086692 975233600 663855451 79149058 790909363 382405712 724851554 602136541 384765474 899328452 742182307 192830393 218629647 117393786 190035017 539963628 967086399 224563036 534332731 94782786 498377407 600660308 319374002 864219650 185037728 797303737 125649558 739137898 802757637 364821595 238161103 92616350 106774969 206531760 904990920 30745416 914194572 451219645 289642174 192435084 88545857 551664701 724217514 640913320 97468536 149579584 448690811 883687395 664831876 577471806 242414084 920378800 584068098 538187716 623561857 74377956 540401831 154074329 763622225 579277782 805815511 2081714 75316544 139392836 349196898 965759310 87039349 241530655 454212249 754543015 569081624 141346586 456690340 220177578 332054204 143187010 662771686 766810206 809608492 322473779 898453077 951418616 321767825 847294819 426810052 861343028 32600401 626601090 144973063 673288555 898317235 790106132 952235731 444090483 983523921 90799349 180081124 801366494 187930793 234535797 901746307 950848787 807216550 297861754 475665170 241435118 577080917 144352797 704695455 939578297 524790683 814507750 263220243 660047286 564788263 566640690 368148777 583416040 260914839 634511222 415585374 415347499 981204074 852345226 545282913 437597945 933329889 531535724 766266402 930793290 323215646 734494746 195074383 919457103 756213103 85244090 980553939 59413225 205244244 307524433 48742936 58560124 336265488 448809722 285367689 607328827 482835546 917889779 441243602 956081393 881070370 971094097 810247102 226646604 547208037 126366311 348904203 169844171 614488784 755114814 212563326 545396539 928932313 718859259 473074415 839369403 92923219 934822451 406256726 599020915 365482824 233937427 983210937 401462283 348572246 825694934 235137026 769431578 963149302 598192698 576571352 654880800 487377920 729803259 143806244 185370472 644468804 337515252 895176946 8978011 173668220 457823315 144425718 277694880 726730847 553324232 944034868 68867897 258778203 208733659 595726852 424037626 141801605 185063128 29500172 697912270 196708346 858435997 228366145 195549018 32675483 17463602 947222231 245421865 306981396 338213697 659527257 39033777 8622408 517439226 392563188 297455306 970552946 336059463 513788132 70652862 748970650 893067267 377154966 113162092 920151797 111575630 169150535 344670043 315936152 313195814 802501494 621863168 530651193 927932103 208283550 232131464 564517825 611850748 426922843 197959834 431906946 666445647 201890779 321893599 994520487 80897580 350306599 998631500 199521672 453264941 509235433 481120234 449613513 682878734 711081201 220650634 524857259 480201931 32282930 651450735 444267678 479438429 818962991 386364703 871706546 559882646 159641836 165048237 8753370 125584925 165932332 37819822 325899160 937838814 163973365 218002352 262927632 668533888 855017809 139058300 36551122 110062401 727915521 69649738 218939458 67795302 926646776 754843367 334228079 405165333 127274025 218256259 982354781 831074446 828843254 704153614 302408946 899062272 106584357 975706305 553874844 39493033 594798920 686384875 67471303 989210748 654290455 915915895 950149461 931376489 454322674 259925835 505972349 347986822 522052221 971521532 910775822 975066058 606149532 530590922 199431870 99621827 301101761 319590491 5811219 935238471 200480368 634984401 60451533 81271287 326541004 145961736 932817333 795031693 886063911 607701445 325622272 442719325 42029799 722915292 847459679 296792620 390340734 255325143 818822065 521785054 762655427 371471707 188993489 804679150 646770783 157036800 194338725 133365656 873829419 730618820 386848952 908989125 338618778 906748936 239771257 474275744 992431265 607311536 590056371 193804708 889118135 410367579 442688420 816726597 142812747 980589489 723659293 241016657 806343209 950061440 209692349 581723396 267839640 338460354 343132091 685005691 656059958 165272668 942211020 55969550 358040506 981214039 86962357 801310444 186162042 335845535 585181161 340735123 622578630 438628675 495290960 888834481 130928888 80270686 37504970 125927324 731461518 357585531 869689516 944954969 502910040 627149263 209693080 908082153 435607210 606706326 780735784 289856433 720956587 626869438 453049187 256944332 566273708 259454987 794633118 55255173 361663712 178277837 210462935 752288976 842529774 162074117 742196630 119349849 308668066 106341624 503667951 724528576 919597894 501671873 867703033 657239425 114633329 946699459 489793206 111988749 608867839 558914477 778543443 391272244 886378558 141449289 228275677 613462990 637047808 151983696 267244890 189379495 266362355 9367255 476432081 292522988 606787448 932330728 891108332 188645854 4973392 789612483 130743430 655886542 169536217 648110983 933678381 600454633 153897153 706676707 798420199 46094477 763040305 232232168 525956913 993496429 1098561 672898721 725420052 800266941 479356817 643364583 10097951 352059017 567008716 908991643 727580645 772573460 171243925 60446830 771179383 984605966 332570088 57472855 294524226 769640228 708119145 514390922 282189739 147485842 873605039 941782984 593939302 681820639 135653266 747025088 751493161 283425822 823543929 503778530 752749385 87822104 153279846 882576644 204536575 152514396 760390450 750626525 430302687 618663101 282227264 696959441 975978749 136521621 606269568 369025309 906847558 671722328 993447257 413452498 903346617 866236332 831907617 115586053 441574114 315982981 283496476 307709397 819317148 887678703 529854345 868846855 409328734 165421087 311308703 923331301 202594489 75015150 41390245 131691358 25104983 964961886 596688945 247544006 646625714 358873013 646900111 462273331 961508485 515980178 71343041 254990679 709556865 142875132 448605476 446773871 793889386 211037002 983408226 67113826 191371587 259415917 921626178 83869931 260430297 663172603 548067463 449906505 223951872 240096968 291270196 601486143 974494955 127983299 18508165 890522487 974476579 711136778 698700118 560336661 371473371 415536748 906705168 898026429 117816265 71927357 47207136 216834765 522854317 237070456 592627924 453367005 261856481 58167448 251919452 421455032 740485293 547603850 243884633 864772100 739314592 593438185 161509621 290123202 378448771 222723475 616199503 23228014 198008448 917731158 87629536 660980591 925342927 625902453 203545800 798607073 929869880 64960599 475298497 98815410 107451558 267106140 665598911 365220960 578102896 709090008 878435723 27399416 666223924 805041130 964360662 398372912 283318618 628177367 603784089 350853499 606832629 718061887 581878049 822293783 221237879 453153909 660193124 772933287 112505880 468460040 133638868 186342951 495434693 921008729 722176525 927009457 393334754 39353489 180784055 333002020 142581294 7595830 112286343 461649858 804748810 239293650 37778553 697410004 884849267 926013028 164762232 350254841 991792973 588980866 100121314 617273267 554970171 357116885 846763545 667415549 814465349 460184925 643799808 760200535 120577965 71737624 990830947 264029987 564244175 520909199 112843248 968380313 436368446 644495383 398811920 306606096 83524706 924374797 503504278 295220806 865662357 898163586 198014267 888830508 831807112 622352696 613358588 721787198 952162341 440851912 544287630 122642693 752500378 831293812 239093134 812296542 462665994 963684605 4866057 220695569 309287922 955513292 163626868 571633125 426830808 178734732 956465815 643620190 776926253 159835 67755597 34940239 37678178 636462957 850235461 235019108 157592624 63654306 271201091 168527297 611113029 794459714 38195947 769043383 256181052 327772153 269714877 67622982 632946587 446765458 136076610 296077713 874961409 233774889 177737802 687215320 348686027 415849726 645972727 293753990 485768269 261792265 200151641 229418799 453642081 52464475 96281609 872577859 619205802 814735323 515171721 748697132 61725725 14274234 868412063 282241344 940289015 922666187 123618243 162706091 822111868 14748880 690811707 564715686 9279489 21671620 194347362 161487299 811630118 822225787 54457426 499445257 432065593 861373143 499894249 473619031 446706293 433406014 418548634 973817348 597541836 752656152 883603161 540449301 46565883 442519323 478934166 628578577 376921264 51378274 306541699 777051261 728379201 434722662 884690844 427480388 608079425 869169293 730891875 1020858 224383192 415106351 345075324 368131131 846080931 778856860 960209499 911152167 123438819 919333179 886149024 355067673 324756503 45085385 465551922 17456292 827436614 683559526 179552860 520607428 970305627 191269141 73433084 987407534 546698166 963465268 247801268 158256925 292219711 386848721 138776598 244590810 718282671 370441684 578880645 784549755 627943245 724061464 397375134 172931091 69861807 553179458 213982282 629343567 546840411 601411413 305986072 211960612 246398687 302349891 689574245 896723383 773898985 761699916 573996347 201229152 993180677 836729821 699458785 954461017 320669724 367736572 740412333 637633273 134922813 71354296 462383079 613024821 212492963 807614640 174935724 151031675 911106183 490170762 944889213 401229525 663775977 798780287 352801712 586364602 711578705 866548380 863707267 528793506 484982390 787024556 866976921 385453454 117021161 591814730 659057170 437619807 235018966 366261321 119182905 67751208 498003198 987341357 655955866 2987674 923135252 371705797 462387120 202309942 580874929 874532138 110744966 925047131 217226388 27448381 696432489 558164905 489378515 297545920 472549064 872641478 476604668 833282803 305804197 52346451 683020358 592889267 109795875 779447941 227143530 628903962 582270953 323564903 511644212 404353992 67132397 561365792 527773021 944585056 371464910 541272733 332297197 364807523 40602739 135046930 138206236 681315811 871070342 922687227 850935262 12851012 705310841 800381584 816782792 611645652 390727255 403569994 691943460 346750510 489468708 553196596 790177923 441068901 701555514 893468539 790455081 359537279 41812578 97217148 688273836 485679257 206164353 55805858 553616259 515042254 386442764 873506849 947209763 482932819 393698512 730327072 576898957 526910993 377618098 773780032 219538234 552502559 808453000 421810756 565766606 257642195 225189479 903954819 137972590 963915544 351915713 937434329 173906060 68986272 90013094 778521369 80806282 175797613 968393659 25935038 233187717 196324651 855205311 138747482 715064616 502674897 161271592 833998242 307516511 264042485 745802119 16326748 359563898 546556644 983529042 840664445 297740288 118484500 732360612 723569291 931216345 273058724 401299338 865895588 182666804 932612269 89835323 718811112 137179980 668297545 668857805 511855317 403643334 527683958 79066682 180200475 500123259 888585961 462637408 472769343 151064681 933524148 379758375 338271573 528700637 14773841 249198396 981888936 363179326 403840688 171833263 701040333 418208821 431621911 82804974 999186026 586714663 821079918 906093769 6434774 629334285 308432063 927532440 396987598 785445644 689049887 426426895 600044482 786260036 684266698 687023727 118996715 134267156 630603761 729091428 463658293 824542690 559743734 440748521 910286101 979441450 944529028 642508479 84290212 915685470 923461130 789687744 353389189 384108695 932712753 870952651 479788534 567423413 454424802 778826789 63815521 574541017 768864237 995036569 940472571 493676332 497458653 580257228 106084127 177818557 655239438 845088709 466466076 240106258 253806146 242162032 147952916 953897581 367441108 602191098 170991216 206561217 647241806 376902303 426700556 378894421 796772442 831175306 611025952 624364438 416413291 86007118 846427885 457541572 760268797 564869443 428263256 107263118 728163537 786177306 334263746 62590727 645243305 186029067 143538322 689257761 564194757 392370098 296206759 648014498 719150089 597822009 908889195 86541096 148751775 930078711 293676472 526356412 466358637 734419957 667873171 721673442 87583804 727198347 844154263 988059024 162530379 79290103 510165603 653301115 11739410 683745212 569965874 936536820 445376216 222446159 245538360 452904365 279191494 529962273 319317946 794497236 748887689 523345759 934486951 61535947 339374629 429732491 466777539 16670779 974384123 582758424 96347870 409186172 408537409 450203966 113866577 272619176 438270148 504337673 78387394 713866396 323831355 936255724 121062984 98137745 385891256 599330312 515636051 497149431 946777764 353819926 951260827 791786719 542392378 525019497 179689886 966211967 257476402 849890278 88891400 332834560 644572346 259723793 200849950 435673730 322646324 449415793 252968406 309158155 219212881 867690996 809809864 802365760 642472477 582456903 607291353 105814673 60654945 654035301 148611906 716910792 142090560 564200625 37337560 344063930 162586802 249316800 646299878 341407766 116316337 814224866 511076506 403065798 24495612 476617563 198971020 459032201 655452002 400728607 557906488 404509464 382228417 106600700 688411081 912407257 581456255 299374949 901699131 206306811 696665047 931029799 163611418 491627156 142105360 3898075 155956854 788848195 879442029 914295580 276933637 21217122 37984497 139664994 108637616 167857038 366712749 937962965 5338348 616437055 275736282 339965921 673470360 928033816 68524465 255943022 981234045 671143269 448821900 595209095 595556309 945182745 362315276 751636059 45941866 879685333 818231270 572037982 169105533 229064895 501915864 776003965 197172102 685986694 241604016 875225377 897679887 190786571 550757126 406205384 781748532 706626326 748909538 884969500 42095597 833994912 943980422 24616770 129609226 306660062 522771370 14164813 952371949 959009384 756747429 981066235 350631543 697531527 388341010 443744199 221988226 233844613 834003876 639244315 978391011 457131644 285389532 732307236 691357034 439797977 233972957 338801380 582298930 450258408 709739419 927256799 801293176 713554323 951241932 692979257 955210423 142486556 44409893 454316695 342373837 833334401 536496963 785968187 437094213 110204015 282035351 212712502 339994214 521151666 384905015 311680063 836388346 58059962 925928405 591724437 926937650 859565461 609176962 93864362 640285168 723211870 670109291 910789797 942757422 767854347 404718079 458306589 442746236 743188187 413946699 64134270 983096382 191366507 706598275 911746962 230390159 510565484 935782465 915708139 137792813 683613797 801396632 744953184 183327032 800858174 853126287 336854844 443700365 366039584 372404525 424040225 70587926 187197022 901396777 146403345 884891929 435507701 378012966 602382253 617619137 350589346 856393790 972123583 566819106 372305843 642445110 251722651 980648291 820303035 775404872 122387650 556412208 51300321 848753957 551460424 292790504 236619543 255955385 890703378 864714057 815081856 346449046 295272271 47807011 379283339 386319982 570095046 575196912 765309150 449784384 729898976 156603687 232038493 627204623 743027965 935008041 994122105 498062068 137607836 595875462 200246218 669746506 979147405 333385170 902306643 949185910 455235668 376968496 918667282 544330141 247158280 574641724 490288960 652803776 382112067 12172820 520276705 450809275 273680314 56245180 958865379 747489644 871770236 892091515 111013931 122314235 949003930 897965503 231728776 778103897 346033632 863175408 835301438 487597619 65485452 240403568 365254526 291453023 558108792 615101363 250539757 615157037 617429764 577826072 524880468 107953136 401127020 339126314 925747391 749779390 867631240 771290134 474775501 870847643 271886188 887462504 741048526 773821236 710481214 70398469 460344654 526136478 484532533 281631642 504561396 561765964 75244815 448084859 402489416 473381103 200020970 816889326 509594623 240055648 98814422 819626007 111963437 153242572 899957663 134055427 353172455 53643668 487381115 341431011 728629917 918664104 809072083 103037834 852877155 312553700 59474858 585331585 711337702 158026001 676868895 42074492 463417172 854783237 352281405 329083323 844481631 702259848 340886686 979173691 42427956 158955143 695512741 754545493 804966593 176733422 324504152 273106142 436552231 724287145 994128133 746699653 11385806 245914090 615405188 182701467 722725718 20987237 72923129 74689043 108877716 251981568 652819036 835374801 123528196 316081351 261209187 358040429 508027275 570008650 880552650 10937141 345406058 462058228 336660324 168155252 265801804 929148250 515904094 526148491 616619318 907633091 962379874 249809047 924591033 81275173 30876069 582603667 428861290 258158464 172490285 969406439 860497564 19800473 916661630 127414451 97904801 550772871 712357079 380699933 248349966 521950232 1049386 160618542 16454299 726591593 434288660 628159481 199935046 146950729 131584629 574893095 456034751 712859877 779902125 480767452 295383302 140676808 610114211 762837702 918749630 341044694 339343460 703475175 302392074 360030040 926795477 98274209 159007659 822820944 422197358 161650318 414218446 603600582 383310794 251962798 185467638 9016151 692877411 561592000 296961821 1571382 756994315 285106976 611562324 60567095 324514703 419980180 548515006 365715993 214870804 414293269 716980600 798990504 221109231 29568769 124724861 382684158 386917025 535119733 300086038 449974047 55821315 66170950 538203674 695116356 98102718 305933061 837075329 244065398 530344472 204939527 311966158 224030908 140619299 316699961 888254062 959213507 900430084 962151904 847899600 768910394 197110442 260880532 290832927 741602500 880509206 612088032 270938778 784744927 529529473 439749687 644645029 260238603 936062126 381044881 391264473 203321151 153367566 962830772 72402614 777166415 180018975 532611032 349778427 138392031 327807394 312361327 631765503 232221453 200157460 483359691 748149615 749686616 543445859 879805220 828752828 746394576 616939202 899409329 652390963 690462188 857988288 412185705 829845096 519422606 403429796 702414810 672821157 931203962 14738325 830056524 830948060 178222999 626367838 825304826 697351428 60182986 830022888 378247646 111587985 446249181 625619775 714956939 877888085 762825522 739630087 925417976 639655424 148461768 552412425 566034981 358136128 905754559 53674106 273250488 580273039 908953476 997104988 613147148 91483283 936796655 842711363 464331605 80185480 38402146 862952363 335993377 74070210 638283363 741658710 535954265 370526427 174617420 452350056 299778638 775150131 703467335 337705589 250663697 58176945 155821456 222733910 422942501 774841547 791762118 563788205 778651007 139513032 198121735 94918128 457184705 77293391 325404688 767128796 813361740 820247570 584859027 688598267 844014461 690800234 775886756 642569473 705400361 511796912 803817192 50714740 723414374 683070263 135794650 664397964 649128323 658310749 667073482 735658710 48761015 408786041 94541289 322809670 41624611 486441715 589210702 858336753 261823894 980822981 317617727 293189200 788653338 902388716 361087072 218824195 64644552 615745741 502701351 360271659 869333683 727480245 913873661 35436960 760510097 749113696 30550788 417632962 576061951 762075839 875059656 967077075 60113682 138111646 972419480 526829063 886561427 607057360 910066182 646178005 80275176 369496485 970506240 380031212 911387824 606026646 689578075 921760353 756154061 846790194 555680750 625620219 274709674 931092636 840300076 621745643 125910396 377820188 872927943 997384379 338895778 978559257 835666582 954162364 835147681 611262068 195783321 352130642 780327027 390552092 779445912 927094244 631264687 563987299 925801890 724551670 431639126 909800656 980299149 890829888 229484997 101660651 616589801 488854280 114845049 679260850 254224839 713861610 343384649 51590515 532977653 138053325 940046406 77806719 479810030 24077260 917615231 689355107 684363289 781126721 942229264 744929167 35923860 22885401 28345283 114041245 14115087 497600237 644962297 92662461 317320476 739212605 216293412 938091383 793671803 774582737 872942751 430279465 653069038 219958216 959142877 969325156 787369433 699552738 615179438 528522768 391137969 523260964 616732941 224659574 53825788 823913811 783737947 883354652 370492825 279485580 810542437 250563254 489557888 599978951 626156818 804237764 109254861 333137755 784628031 969519991 48875634 673309498 646988319 691559932 782658177 418324816 393331847 205691789 39133876 397282372 315529155 776781270 917576531 109036087 169109192 273567104 33375934 849339350 180689599 530919522 121371526 796083253 610759073 290518569 656933376 707648661 938138847 265357301 202973 156031074 155821876 409038136 266329672 464717608 519665241 660695476 308334845 800046447 625796740 303469477 204941756 360382605 180833505 967620863 27629121 969200100 493267695 131879494 29821762 185956339 179220618 279518094 358057179 906204660 227752237 590853980 879960388 887805332 702665377 395055787 31485787 801801573 724762684 652459348 810853797 641884447 190043645 352250474 581212183 872914681 2801724 384950140 728218092 525514158 788495487 26908753 398929586 452254178 188724673 422606973 217309342 771539176 424251374 232966963 296261339 859447643 589552949 805030064 635458090 894226540 248168352 476914779 778447257 65376699 208854503 644756861 161908586 834968879 597629291 319882896 413757315 651082184 804717876 916153062 632206316 283433548 875265830 986731199 957889445 535677350 564611959 442671199 34291704 246865544 271626720 70745586 220561627 295230930 68250529 163936309 402878691 888280290 684045118 43084626 41439574 441984255 977272035 916248079 838586432 133750178 256856730 862409192 230770712 146022216 236463327 608618120 40217815 237680543 365385677 954926727 988842234 644076869 293408488 217455979 207420439 836741139 525828490 664393799 143067175 390490377 332378597 305866464 852709485 554913330 115782853 993859626 202004835 558577350 91415428 205942937 194931236 753206757 806987374 501291358 379913533 450844132 404449635 79853726 416753741 643505413 49298160 414153961 312397245 873829701 822165148 501485191 673183379 513009351 310428801 73249745 807100679 783520519 159784111 428645497 401157886 514121764 487149052 446621305 633969669 15234349 954434978 998368422 482079724 812412357 275536926 536504072 137407835 225101731 273028369 464592801 880628294 706087185 611923818 323129026 877819493 705896111 482082982 135165056 12679470 26938387 856347453 651024463 267316084 973146317 916833609 423587888 108914012 251926477 710018678 791699054 129407064 354834422 437895468 533668903 766983633 241009335 80647204 384793031 660486376 880052807 474343800 919870163 338837161 313442442 45798442 636681400 311087331 785350273 56633214 506264253 184258029 744733452 761902625 857662309 174898675 698603575 417092956 875959473 198331710 238505073 129348925 641514855 194610492 353224861 488213602 983610252 597879349 501046754 751355664 38400679 573371017 206696113 19492745 318974766 52353532 663096219 336611956 918499070 996982824 947253688 739882817 761310947 683016612 384069861 274532197 159575024 751414691 139462220 355438887 575852351 867596602 834539196 376335980 846631489 551668615 491748198 361855708 420245851 165478524 413994400 748525886 447664173 704260105 914845507 254926753 166228980 802023967 117449705 874285375 112894323 839350925 972880942 354217525 242843472 13311107 972814990 488012732 515074789 260670613 89179163 540595141 712701154 65036641 759310699 166764761 315547676 416073197 351393619 765671792 35070225 668698670 987003257 155939363 928620784 834289673 699961975 111123638 196774013 26262313 120906854 878349578 596377195 878397562 502600199 20094212 911044598 421145870 958838094 308420119 415303382 718285170 131442579 791997700 212614907 708778268 336565127 572581285 428694173 401589505 735035523 176395359 827852696 259232482 702064414 96309704 894095653 975263549 242421342 231592726 309706281 221964453 565276230 831057645 774258678 210441088 247859850 333979494 710497402 632658303 38990506 32154490 844386704 958492031 733514651 511552297 41685552 305411383 736199165 130338454 893038537 219154264 59727974 844853445 909516325 415930578 758124439 614752317 559518430 711642893 816971962 489124761 859530521 900473557 972345469 699736953 153678810 293224851 989513913 118872880 561935179 249167164 164568153 904346266 236433520 610928382 875725256 777742915 30680216 939514863 477957104 476306538 878441765 728422 263309518 464856844 210157182 427092159 565439459 561145051 74464532 974692673 736057578 823950328 185321445 412472077 203279661 740037262 930513947 477330521 370089351 807633492 54608176 266898420 901214063 733728910 249242816 184584259 672106178 242924881 493928021 343304799 466823713 145568951 523919729 37337676 367112021 505326034 998982861 653833146 976506925 761583849 157905287 620421964 576297038 730315229 684930427 906594570 203579453 943492827 85708756 214206716 642592528 857276258 631211123 371409671 985235436 510384066 34216145 770255109 533179644 970411841 129174449 901448788 830923515 49194601 514421053 215571380 91850458 936984211 635889365 380181916 416518766 455805077 358365869 508013053 633829827 793072528 351310930 723556492 686758830 757362175 623626520 517031324 927554516 582488139 178580389 746347806 760818667 820356272 32109221 737011349 173171741 525242587 769816693 25558733 232362813 146309248 113311259 815325326 293534454 810872961 736840763 110434455 13454064 73315003 354811921 182850893 694795880 41657193 791257605 748289895 393640715 190157899 635935621 881348497 678857783 904811565 731964041 101694566 506296048 660821619 482904785 567083117 140442699 740442875 571579363 408098549 388468424 507368164 850574888 883488820 646954900 121832307 63872656 827898968 351396681 849062027 631644168 793421801 456387841 289892942 631868069 561232961 692289844 839854977 226521356 293679633 975048912 785661771 23796378 565343208 664148961 199115676 974170339 566204477 25020889 382292336 989588402 586812405 432045147 980979210 548570203 920779574 401854567 129083340 38253168 813151307 191140500 460208084 186720041 205865581 134558819 500945732 897426867 60753146 737053117 210004148 764348134 388759286 692602157 600170617 183229557 466306391 448734037 812505343 557227800 733554414 573113358 936140370 444404573 250094241 911244004 581283307 863584277 926026975 922131207 650444643 609878314 424481514 63113501 227502112 891850391 548195879 888343904 39698669 288029117 392362656 131555676 644072886 111367412 412028818 430391006 510929321 57853373 449574890 796910092 153535828 258665624 181303272 219169481 244702901 73214572 324877095 877629576 111541214 177648632 665436006 980847970 109375625 218740261 613968970 984308416 829575286 906057791 376489486 676255222 940086860 418527467 69231738 805731461 35266108 818713772 140578033 688917588 214066434 16385629 993071740 527595364 628945463 957237037 585504934 557873721 108030756 765382608 416157577 91944082 57992122 411276601 702484750 527555196 17379743 82525688 906655058 676579963 842060801 208412217 4424318 712387259 683025806 421721376 835523693 347485977 386794502 545477014 49012715 67619321 375581675 556263965 447555894 385108739 911719966 717541463 138284274 370283574 395765993 316803653 395999499 765245055 877838936 172219818 751324834 977614062 722004888 673910955 990896877 679987053 546160538 162789415 183469730 587191091 708127472 141872996 432929006 60677366 10999084 823546454 995440295 134265442 615716544 310863958 830754304 758031762 23263803 715534094 960704965 850142238 357051817 433356555 285689242 117303520 246276932 932077335 394670495 397881212 814762896 752198184 731553232 575328491 265423316 350616552 288312864 935117203 15473583 482781394 625440985 517966914 410613968 922488935 880631979 79624644 514854501 514784146 720195175 579010511 180591923 968194867 899520987 964253026 370071040 777232046 20778323 184250886 671051458 931208757 77924715 140106703 811431699 656184455 598451070 92553662 630963492 8052654 243975679 235571050 268033489 256261162 16385033 456808819 502315985 391819001 870083686 264733264 673831579 399770408 774396688 195151293 246119875 176083559 211845405 618798130 561622472 423788485 478948630 172311849 535207388 966544021 427001665 448792982 681012848 664266727 441552391 597101782 219530936 442431088 184161002 134761833 755501192 568744375 77143844 421821654 545108076 16471641 834316872 399108167 890537935 354886704 170723751 126092491 236040535 333110726 6726884 478956733 842337464 434861009 889074346 293551640 121513699 793763436 319629714 26334809 495036915 672278221 704535452 356925817 712729347 364510695 684870906 276931441 148281036 154679825 869882287 103740895 154923016 400446683 365512370 379758789 639374701 300210513 25902232 204865808 469484541 258016536 865953861 702310610 258230348 216820335 545334749 788126269 859731465 247507955 823329408 782458299 474122383 341348674 210808207 51190162 867403119 825952377 999252242 286311231 831077718 67964332 216757707 546383103 571248746 39945891 508277819 867602844 274515545 48376245 147265158 177026513 383503286 453101845 727474024 37260200 435281227 774194206 808742396 655712543 649016228 782986957 127846830 766476417 87339900 115325375 545221498 810515838 405370399 459506727 558929069 884481054 167108695 209024838 856654524 444380462 805910037 50060518 349253150 246937475 758051083 815604510 828169311 897461615 36705850 37213569 548047728 843269383 753593229 246107805 787970925 52563890 408632355 835753129 242733766 748163209 790469422 964320551 256002473 945123207 821507355 974085156 386203066 943457105 267847687 929084775 992897501 268455915 868096944 391585539 299469064 588372493 778760575 313571756 383506116 349346330 54947936 628448236 867425706 74886549 487347497 9891258 426259143 392584241 989193479 874479976 537425474 922866554 169178613 289147962 291207201 454155416 718501283 579789854 87701538 532946111 254812955 972529085 975550196 634980090 83136257 291267479 828869938 982571706 855128074 922695435 43203421 300954138 68382590 62397707 208333429 564617448 267117722 680555115 744080800 451871475 670765115 966840262 916220932 694802112 737376722 575593557 671838510 24802747 454583585 140668621 486849511 521548791 155381428 360109398 157443976 82489283 881268736 61125573 64386098 460264281 543379557 659842621 207826358 759510535 898362633 726082418 22160549 738264947 996536341 43170508 437772568 880644319 610817975 759614667 627693522 256781202 711671447 578318249 591839428 192858594 955027954 6035971 639053118 26896597 274477490 845728291 698258934 385326191 374415602 889807 725743534 834757529 971623311 338329959 983781305 90364416 989418858 765069954 46081463 910259264 137296905 561773727 429283037 393319414 969418078 783810346 470239785 645127700 1805568 908955928 191521305 126042235 416591791 820615426 254583915 168980249 650446645 144754311 650904675 527137700 431859934 496096907 482853147 715968041 155102361 167254149 572011774 916403157 559128117 841281897 904199552 525865473 251445667 769298278 672850373 829543577 536823866 430698938 596694716 216513542 490685720 478538054 800580598 436019162 825700830 615154056 689179956 232710116 517178138 419169621 500103367 251083636 598726884 907464816 848474826 487301899 763925893 418086403 202482136 588610315 140945695 640388808 767785670 899908963 174588115 691184241 6949551 368678210 516768642 489942391 611991121 5277527 413308918 214527203 951702468 975060658 855733990 501057444 250343636 919951172 128588013 198120415 134748162 777239542 880728155 837010734 678079692 839123173 662238527 927634664 312207363 171899620 897097118 836760211 463885734 429305352 567968601 868518485 964420880 170555949 770445480 523126082 115314062 471909368 945020589 848692482 773378087 478173291 849227224 137637062 255750138 143080316 59688627 220794252 592820872 147670744 978457193 361124673 610828763 582825108 218576176 571608964 88743604 65041589 717411207 780450107 343578686 205215544 253183527 103186534 818528018 630323030 620502009 501467726 293731801 717514975 192173895 724072392 492891048 434126095 576841405 175631521 141112626 120833162 634647956 276681854 866517373 50813471 885399831 77087909 306952247 935207952 988168842 129229632 628222393 876953392 731537868 605401241 692622375 683938894 516814673 617110187 286653155 76494203 729427110 33553170 919500008 445484082 210890429 299538290 267474058 520158628 343416543 877100663 27168334 205278914 840017284 561288381 888305981 996998067 761538344 659719115 658843894 244576934 218076926 926915908 916546536 8272361 143295670 886809347 251791084 608132866 340981277 248697690 432519864 791931375 485085946 651647838 498589839 188246001 337039668 944721517 786409008 730562727 645810020 244771555 497699580 370011500 249442241 221376140 785590626 924637303 10355811 364859976 583769965 725707059 41068476 163365285 767312061 78933664 468175919 801060778 98839186 475473100 103221361 224121590 919794427 762238948 930410715 831312866 608055330 139159673 653684876 492028554 388856902 927449938 969843028 428250852 880296597 941981167 403539477 992177069 393121538 188374164 884471909 690422244 47646309 953675263 321517597 283488207 914263494 187448771 180616247 705626585 774317035 791342968 598791445 442093192 234601576 82885787 260683025 71453063 132831530 654760003 485159686 554977743 502233842 875065053 255071343 213148021 583900719 540215374 832607338 338119545 428393984 580818640 8393383 458116182 624734457 792023344 493119933 244560690 342937602 899755918 176474393 253507718 490689325 685193013 678166998 868307285 206897109 735199321 360115661 26191902 54474443 746062417 811883118 477109715 741590641 681502076 431922616 507065053 294147504 155993930 856981345 192898986 381264684 588147853 142914491 202762340 158705072 461701539 332338025 901218212 622903577 629423169 838485604 219528738 516208950 361426965 13111247 975239695 506974929 843229173 531347851 305326134 761571066 393576066 262373548 677897032 70319750 689304632 555576863 119481586 167724029 637979863 131477398 221532354 584566224 484399530 123788457 736392052 956416040 931864101 341962562 53230279 745463050 187328900 336113475 198413647 822513578 419744907 353476106 493376847 102526093 849683426 557909215 432616201 337883619 328004112 37640236 188062723 732897639 831677184 410218324 580650567 803634335 376222318 163998187 365146 230718655 702520933 475266942 321671409 677445171 252458208 192800872 28440243 521520193 71309092 784409066 114270879 334627635 624748208 10493915 207768035 42159735 355552448 339430321 383811324 561111493 48419077 924029972 232384451 687392782 466986318 529415010 84159564 633169651 594519796 403789840 547246402 576074861 79768842 92304960 348337925 948518585 374674473 590182237 498151059 786662212 641845381 64219109 717910815 460357087 384923555 679730275 62285921 740121985 139027609 239840136 107873436 279580968 82349536 891547720 122827914 894283674 67067495 540945158 832532129 454182708 986030661 76224850 939249293 547053134 892067747 967176457 960467599 105272122 841641247 93922652 657370662 203844619 973150103 327686173 564111072 559103497 339984080 416527054 826012678 996472722 911091898 576281566 948177179 88345883 949178275 660166600 273378913 296910460 997789423 843872539 208830367 697536233 748796447 597414907 470431219 197240822 21641433 484069264 963416107 613389178 373341149 868670704 302235612 11229853 217457220 385370965 536835683 543100711 853496899 907030758 646009486 413040276 51468096 166670579 448835768 951559748 165464223 362951371 915871197 447901275 645708179 567084611 811737714 751138540 591433119 953637946 860126565 934436062 242163415 188206560 51858393 484689264 351422829 584493138 938754296 628051214 224225275 472947109 376140859 454942627 434994963 619737649 983328590 561395983 279229134 955889982 836578656 236302881 476612284 837370100 321783358 969793182 165921107 328479905 637897972 816808127 211340212 863746891 450772659 983418677 278070689 808044648 267479247 47657753 685924106 482690687 363168361 465243234 740952214 353217611 276877323 190800043 379332910 985766129 262119731 90400117 201297049 364983298 316584908 877832878 669887147 933526872 138741387 78956229 423925775 576781927 482734821 495652658 496150799 609828853 592766777 523909939 77473448 108841284 409294904 312862037 135005042 349721633 360674860 52044943 517325524 340638485 277444827 436742130 179334862 819749313 168067594 627287874 13663229 232353444 587637384 587368950 974053680 779702767 183631097 855444712 293880073 33351942 535480813 373795390 792809206 602298024 250699317 393489613 982017987 977682150 344167175 287657625 318145310 474184673 501978145 771889562 712071700 66453553 367600540 517146460 226709183 692951066 641072013 871579029 642065309 428473125 912095526 799405039 52310803 446859719 613934582 75349795 104437992 113127702 678376352 846269421 926669574 962900166 544591563 79962664 942153124 152877911 507516132 763756075 349094928 798313985 63447184 959668544 85024003 392684668 839644372 91876959 306966983 969435228 596183653 533259672 908113186 363992018 521393664 651079934 500101004 373720588 716283768 825670282 707106045 505840960 169936147 4842253 245896268 323079707 66084611 710086008 665262856 430610605 504360578 513691718 338555352 796166444 137961382 49183573 873269470 63817621 171387446 650400506 930359092 551765595 589203941 572040616 28418876 395232369 198904364 775460822 643277625 428865783 766040127 237768656 63910580 243258114 487184026 652188156 77368481 774706355 797696553 781157158 893531870 2692333 67276778 289393375 200598923 731151878 632674774 944841884 2760272 355575205 203034835 976864212 38067555 364930503 337713895 180853924 859779415 811644942 528544372 781817159 234465493 809700003 357936695 6788763 737273705 747162003 260348612 380573195 160920492 273558056 330372085 151634413 669358876 476431490 125992520 476753652 894954898 955366325 53230390 31845050 886094968 364500219 870485044 247234281 609767817 2377417 874486196 790587602 88079793 480672812 430058301 777497729 693227688 433657128 792371379 421265930 210121496 412570114 843247868 879994520 752455453 63990705 170035165 673641180 196555224 426970104 250423758 151287899 176634011 760055154 951667164 839049963 643314644 690253643 267877588 963025365 656616502 626954153 552479625 867883865 920260189 779653163 877134438 55937272 64340579 670264847 27035963 881537708 666375541 464459216 708965531 138344444 400083808 246830372 230427634 73642893 818365367 86621399 143628506 97139544 683825930 480585684 952815892 196900573 113778741 737158568 950452738 104605894 310996659 1148632 195680409 287939874 890773568 547748045 590621858 331902269 112970154 555759348 454456224 769481780 752343839 75106505 133047342 406207801 903520014 764413579 995680253 769147263 787090126 697670111 558370764 484334000 685630936 724805051 739905726 472612191 551339971 653075318 437836753 803167400 557895479 592827167 212388751 432171228 883848799 746331020 632482311 703362911 449841860 633698649 833617459 868612125 588268849 997541738 554166387 957520239 516983095 391632269 613182531 437611539 416442649 33491948 733547820 610785957 982855089 173789276 609166137 550889122 363265797 773821483 342106851 325663273 797476742 657134222 368419367 3186364 101634536 664898521 626594663 724776674 686032475 302286858 22560774 143062448 929771737 182628319 527400474 410616037 830450424 758445041 780442990 740258700 300066619 521640700 673554158 888145710 943751655 908075732 366209768 326718626 241793233 924065693 766917529 91514005 829871966 123538891 19953322 950138904 341187331 419649384 366800078 28009270 853429233 589162211 169545003 33153726 92825738 647205386 403624573 584672876 374456266 744476137 680744291 864982456 444272783 405842583 180727109 473905677 303830522 509081916 706111791 843795324 10205449 699752638 710454771 537129429 614429292 897803388 470152616 875416943 753527347 472046028 464746299 609205928 929510606 585340779 406168589 24259385 747491749 137456931 628784617 842624943 599691749 285809887 688112647 799542919 647073011 247591519 324319081 145717794 82130508 733441851 955215843 900695702 280795053 910246606 784411270 742491872 919102342 416456731 362294677 466083887 766365150 810085639 954096887 753415309 249602614 635290201 312865067 440447511 229958137 782919511 89867513 36662849 235297664 435651017 9751786 560719950 653135141 117272281 158417322 579876343 527167296 602718181 630842013 840175614 332209605 579976937 918259434 892703383 545606900 868093066 2091855 502201599 843103397 965955055 253574218 718700889 397468870 649379487 97614961 551593263 656189516 983389483 933213570 437424782 22550201 698058938 861239252 188484999 340440306 476313613 214928590 720339246 56183301 961457442 317129914 279091827 281093220 179398024 604215756 861056678 120287575 418102638 567072962 848808359 928614706 945673949 356004573 977962055 876652545 223931531 334467654 247270376 100386220 169723982 582617755 511915919 625206819 650070399 193860442 756446106 827021180 340854930 819290058 757751314 621980060 576449208 184339681 768149676 686461839 303806129 704214205 653104391 288736836 664177621 517717688 85182270 536277805 20190222 8561623 606517192 206893968 753733252 643006162 468454965 272554117 568996280 552251879 733259276 582398227 270481613 583586137 334487266 474129198 117816616 871023943 584537532 884075889 290847059 68926612 471398796 450518568 355011310 504132472 725170004 233534843 284066565 849336947 929766136 318224051 728168253 237168993 497592194 363233979 410208635 836920914 949384765 374407196 342418586 750771414 613592411 237165207 409739817 91738203 427936161 677306276 534371304 146428385 837354642 54153378 942131829 956172893 161561417 149262909 234685660 128023992 974441728 235726366 803160782 169628457 340458552 659755885 674912722 604946008 650272811 639826941 979156958 454536583 792442811 387517265 592606644 815416117 85903372 425206512 326145414 379272795 732965659 451907096 396869292 663455227 331480175 376120926 980329805 279682577 696240809 572399993 692386271 592104645 735270582 226652078 355659906 916768465 290474150 597311006 39399903 612435543 699253050 141381597 421547970 318796029 778824330 614718057 821587163 161861399 632608552 513686649 155415124 199524165 68228023 918306448 438683419 224344654 833025445 379519082 865385431 619126052 338132371 349515867 368473973 52387338 921611791 286994370 539356610 398652499 361209624 349290169 633020238 682828639 626214325 321978190 129050436 311014264 118517895 627435535 299338918 398801836 977445382 622520458 960838293 710169459 454358769 256169508 831630118 965213869 428142958 740108957 57636762 259035804 601559731 871510105 847247143 528762315 659087841 209099512 193834810 227303852 967645548 115389958 393968307 967400999 69118320 48931871 495768300 799494304 437393608 587071277 700941726 522778484 293427928 293772941 690883108 822631457 236215673 212687793 560240898 793829263 323030223 653896986 81697240 761893320 359988081 833985292 449295341 746568307 908685780 361233315 493791017 141195533 711872787 60570900 761831540 749653945 816622850 23941668 956809545 725154494 375319896 350310309 82344120 781729946 7991676 741572461 690593389 426863336 332614206 946060797 476951109 444116397 948733057 432575915 165956760 304910451 390490214 802077261 915574102 422052654 947523695 405131863 545597409 453390047 293850194 578700239 844524643 536334140 145794252 682982446 519929121 992230285 250471192 698355325 11045620 83377389 603225520 188914324 668346160 554818293 167814125 370710361 270107453 971018709 596474935 347179913 968022825 649461227 836389211 521544453 774547819 151296509 345356211 149698267 808224859 577360618 498693954 917325690 479034006 445750690 53462300 528665487 212584258 342950482 43841635 765777826 581510024 249516848 689575512 993769893 554977065 867208037 863160240 504912932 627436277 605560849 689876483 838688602 755801724 672095851 901282293 499695333 170326166 370477994 490716049 402022643 767496213 362625571 870222679 785804880 848466011 851057880 403026638 495660470 721909818 815449963 463787367 575431820 225532237 425011899 740252410 785443420 294232428 996782314 479635563 661780964 571976887 518611579 991814173 36638033 436556525 263025320 58254959 43050369 759296061 24434256 834271601 644095219 422016312 662404922 425199111 763329625 538300299 994127287 599414019 272722228 618466301 156214590 889663855 417824325 405196985 750214819 905942997 414258872 304783126 645181533 843012707 423067275 333319932 106257918 948773072 569297269 33663095 826092581 844713045 736755986 892892260 600640588 899789946 648105227 505674743 629925758 325419706 143477130 628310028 70459760 386188817 461459623 347367937 574490495 345350314 153899077 257217774 749767689 620005579 408723342 399276119 865760501 143918530 980055300 349907945 923911905 339480070 626066488 967326728 614488245 962118880 331641886 877209391 713680308 263957320 378140165 110610566 627933710 429055129 803933392 678750086 662869363 545232768 937856679 226594947 610303367 416036567 468131894 781660040 315636742 328732888 53875257 755530169 648618617 666447412 465606626 966370971 114360654 477096974 856665271 948852660 644265880 454263800 309960122 276774977 228960656 41893833 427459238 34060337 665241781 340390546 910733318 921029295 370003711 6568220 492854868 887890642 35852372 838074427 631081190 342621636 330841393 30555897 717002919 108382697 36375627 972348891 430862002 611112334 309089127 366013546 824799394 839243944 29971432 61244766 194091048 479991435 816536145 678808831 744159930 481039911 310367671 702472716 794278995 158683351 52123257 292452605 840056749 853297784 122912388 928602189 812683264 710255438 474749557 117865425 330420421 429325054 331644286 996832793 70519128 851815902 378222474 985762009 723748522 334157595 274099273 57425140 757516443 203576739 112732454 399229448 370859803 207525214 195525511 695275623 932128071 357998388 984817228 908482876 163862485 380110002 253083002 145516790 774961574 214744264 927402795 679822557 856126645 292041644 263810178 87230398 121065150 613011443 125259965 654134612 913961131 793566720 441969713 998747676 764331437 449080781 229251002 157083825 330858181 804149265 851201891 901912293 549686066 476836693 503793943 273451029 114569890 884382387 722431704 626927781 922205080 717383044 627434467 625709526 827303918 50273372 992657117 49030639 87111519 843273930 976666255 865781523 392483692 569420239 749304670 527724284 974852241 359999611 187873610 615179842 757364154 233026972 517614915 767234787 597927301 794693610 606155035 490453980 619742436 718878944 298051265 752772207 457826156 874756628 611727600 976833752 723282403 684689608 158275829 384032285 842167294 306122814 231393487 489433585 302301542 529748027 292886660 999950039 263928762 754893284 1555600 597198693 207015262 348097913 405812498 385314878 130600987 178714413 720486402 834916168 517377523 706340269 839083148 724368108 146765873 646939293 778823996 679762292 795297593 461648890 723265980 122206418 49469730 608972197 708998190 140053510 580013597 901334669 283525797 663941236 923133887 333834015 730995376 940015119 798854430 97386078 215609191 462521633 575143325 865174399 420183750 303080127 621449244 463943592 501236085 609892633 202665155 141154902 958031191 561707646 432991017 875059119 460788758 59542034 66542757 708686570 566580182 481976705 783491724 39088460 388812065 406788797 154501595 572577935 289468804 741863641 68404025 451863401 453460631 309830660 901244745 567081835 852286399 9898970 420391025 513076914 91961237 408939479 384774301 450557496 257230454 391384514 693458214 802998003 421419594 528512873 765417591 611653800 433929689 788836021 624184696 705198712 247008511 324200701 132756253 65455627 288836488 874683847 737251626 445990741 79129502 968378128 530455557 618086998 92850708 31785971 956616163 617412967 904677947 51658542 804277499 918210088 815551509 772490609 415045653 639386168 954070437 930562126 920444021 639191372 252893375 324315756 996475361 654709983 171645776 891074471 389147344 163756146 754419199 279731470 971698775 908702598 487177097 930246010 349622303 949224999 993897307 677408668 70043084 68869741 535186615 656136407 622010702 255282625 441100633 226010710 641407162 279204389 488689537 850327087 955516932 624287199 974376942 383653692 196754625 494281204 853218038 336846714 485449061 19643226 725459124 811796730 780223156 497086826 64678798 946803748 813548801 502258663 206982708 940530711 849281636 44632860 548657915 615660597 87691273 619738153 486647714 365441075 295364823 476080540 285892709 693460046 159549033 148683550 856959809 721618439 37746617 991384761 693133044 923180969 245090114 299747220 485659553 828938368 233221958 628967947 380677776 905244006 636416039 684637855 663705742 378768776 37616686 754940000 478440663 487439628 956744080 510902387 147769045 38835545 708945558 341595741 719944706 329612607 496835951 831727068 286254322 311807533 113717272 160129468 734845375 696706564 63551789 638797502 55560083 806782050 835187409 653482981 70257549 402492505 954288952 684663498 388267779 601526679 909938040 206600060 582364657 372667581 55881127 37194691 722298626 985753024 687104444 562951939 33837636 659479536 935850577 65982122 979071207 186185859 937845412 172281480 326536004 373695283 638101146 779500505 465511440 386999450 169520688 134486275 959754974 894367033 406973250 66024076 887367900 804532373 39629858 465958882 929446030 990451070 770013905 958012850 921312992 812820938 77649596 931478704 875136986 361387339 653951088 127537767 248163675 305476245 57367380 994965602 816820501 490718574 10747967 586658718 343395761 813535801 124979075 231867902 224418990 211175696 800819538 351863022 592780617 10524478 854005514 550444597 395858504 662540988 898314557 115918937 532872177 651982161 800312899 680105973 521886931 487866977 635707531 519849387 446687812 21958473 2610275 847585109 809107202 73932829 4073771 129798030 328831220 997084582 445413819 621014783 463550746 361008942 895038075 834815963 942069084 520890721 504455616 150723495 425340125 552861592 674072834 52400805 472726133 829758657 692952378 773920906 899682022 810318232 231753040 64606780 836161263 93281613 771979011 864606440 831976622 74857343 448664733 893315926 510523874 325224468 942099026 252018646 191612171 603511446 660227794 517395077 796047493 9633818 248513107 465518204 110490907 703288541 298585025 850261786 632533114 4425957 148224026 274181317 514986042 742050014 646838124 128144298 768778608 896875806 746139351 451951121 780540499 601025630 468868059 455723255 949666668 111268862 61419168 559144725 2706191 81351055 498707616 937681757 946213281 97679199 827602229 529177237 53736475 355073908 618606875 297868107 256740596 70660541 646425127 618305797 622393047 473894324 953715543 52025210 205373210 75487082 741308264 190048951 526408978 93043797 991152659 323656449 904220200 291438028 611566634 53245638 678524320 528725192 620657164 824258493 837625855 393020056 527589811 834004143 852462493 7491247 471623280 383902733 88571220 118719636 557999765 919579666 406326225 611826738 184034291 298407815 583601411 411069859 871493383 416739157 926418148 828075514 15072018 227238440 754380959 612887585 661161637 113333574 184459349 916528005 568131460 732420542 85175752 210383042 117510150 716961871 611695344 622839926 191071767 356237982 291128332 148007171 451827979 685267757 305520908 510565615 716681606 585764917 209315944 973304236 181835518 915612159 200976143 440298508 114068225 45000238 329005115 827793051 202810097 721934035 4898263 753623619 966056470 837198863 87451838 605190741 776244542 444666234 679952770 330540794 747484381 76583646 199886110 544268872 973283174 651470902 64522733 922196656 745236635 629122676 108964367 843242387 562790282 852384793 762467210 987450594 120910408 566221304 90946980 781877025 694433843 530340802 402098678 837943816 895517926 822573614 162562981 588027492 793293227 471153078 678373594 704411822 71925162 47174899 904034417 253060075 675402276 77210286 258695910 148462566 10780435 640153883 22055631 749798225 267238858 477414963 265547380 900328234 368351801 22663733 576431447 782289784 509147332 154416627 238915051 680833282 173920028 812235927 946568251 999296993 118198025 209174881 13017662 59186588 66375834 874577148 760369686 512003341 329170247 579180700 571350889 815453421 465003755 963855883 105668298 590285009 268273221 87250310 186258105 833898742 892528334 23333917 923882995 272148343 6483835 304955217 325962527 614005283 737315464 843676799 458637826 559532142 76902230 147669935 144080909 958049748 729761473 882306558 293598661 234974287 162205039 811239153 534705569 666998574 679353319 22002684 501836206 392914156 222835161 630855213 5246447 602039561 354533630 831132479 941208122 753285747 769964877 968196096 349228678 183329717 357823268 186553904 288055390 877545740 884768038 215432609 790102929 524925601 804064325 823032584 349754906 685464791 53073881 944813520 218599587 946907828 218568256 458581383 841326650 823800932 33688987 376993090 592302895 691999378 936527636 456184405 529150970 642182024 972736614 322010827 611036573 295091284 233882796 808462417 857441562 825984797 474790950 189616905 413504601 358200706 868858611 3769854 782125798 675986544 482070651 502832525 523609896 80594601 803385605 262874648 707801541 501712601 814623854 554967284 860358172 771199456 372549984 385516900 260321222 941390379 178618323 766882876 112198879 560401450 108649887 496705680 601583475 621018393 166284670 809692105 613244802 483624511 49081322 715779011 800150286 211103917 431340816 834242439 66486592 618167750 229044485 221622339 516306309 450062378 682249229 345431182 644839825 476562364 132167179 525404055 627652938 889212027 758757286 570539381 624524498 53351372 789625863 809513794 437848215 689255775 638558133 793896675 259139519 435974926 253053158 116163880 205625211 704579226 773639160 462979899 507432071 177105194 914286656 752405202 150401343 327966889 85880228 431585686 62236267 651270532 810955760 418082067 444863646 109757809 998440049 865651981 842535031 637474717 59920799 123688727 105072269 877720988 421065670 137343247 700803169 48640468 813589137 550425254 854268232 125398480 11897834 354706534 541361155 271199495 743546117 660491142 719540606 251375990 664073929 441633935 193621856 497805585 496638553 153429643 242861946 990534557 865141675 171377786 511808251 518810541 726812176 203629388 874246780 683768399 616963880 903613622 145650825 263151919 641485152 348462699 309872273 517229533 66102944 848676194 876377435 71862186 155363606 128642288 319095556 103525390 113810484 518599273 489553295 642778992 44250517 422381785 579672150 308924316 755919771 399151780 227084572 375504869 145063669 193192183 403385196 475276962 961047117 567918993 912445170 944184449 835642314 220073698 624459081 525189151 162587495 37219779 5872509 680891632 729212302 621201537 101328655 998764877 656946555 702877919 219399818 691962944 22475959 736145387 981217762 699392570 59914447 882731519 516953989 716212271 556124577 87923640 312535667 348405461 306704355 365182908 802760446 385154515 546552777 740424200 648430216 44717821 56854548 187277405 390954417 93946680 662115974 982622205 2487922 47430318 578288723 653900241 315159734 329022727 508363772 423670798 311765926 72059914 509699199 830215831 947354386 309672328 218010227 274592639 466194980 142312410 999571658 640658965 171129598 482765600 780955006 489858479 985634634 63763002 781269178 871434865 295002937 834721271 234011141 239245568 776150601 260424689 49317497 607328540 398624078 321506042 238341129 12033985 85925195 966777934 295845462 646808418 804734539 392912616 907785260 514860061 203249622 246825339 872614719 241794946 658581980 936303167 813216717 578914218 406971842 16911932 909991678 809247426 330282689 894674592 371845278 428210423 572348000 584680612 385129511 99689033 854005564 870713452 49109326 391060520 896587727 402195199 814742236 859849833 457457562 62669740 688178223 836098144 398172728 568340359 628064237 131077585 455781633 153318841 239375714 842811897 737160272 905088531 202183405 453873686 32660434 755072622 672699603 718147910 141402394 55532977 127824352 508637992 842453052 653625433 566399429 42361221 795330046 346145485 508178752 654139434 349582849 719480752 677705339 459710565 570569687 970449542 291309037 236376978 650424592 523188123 434151368 691294908 838930531 421734218 815077409 693374955 664266129 180498989 515680727 331385433 489365422 388943851 966601061 189076535 779379924 824838193 776551766 570041094 72133030 385238834 647499128 553540604 860459334 730868736 476921040 978244381 243684400 831295656 145140710 543381916 258482847 469585222 985593010 275878200 210067760 746967874 162094604 936684064 598100737 431788072 608390168 841840267 463928514 584712790 424119319 664834437 266448286 614016671 150793513 53705776 544009172 73657351 119468090 400751591 788991590 92977170 154259965 747240693 472232421 282158901 609989977 868680737 934495229 655600061 963783690 81091823 118252985 555350928 878041350 366858875 708950738 243222180 178547088 549018764 334597168 20536158 48390385 155826859 463843915 557818535 994112511 286784268 151546717 758587429 391114030 781837328 562193303 679918908 634916538 747697513 374324940 806005514 288321377 594548668 612827242 246263067 31548346 859786231 292857886 861674550 9479197 285883126 327982746 840432233 96252136 414226469 483275279 8486348 517748852 232639822 733529141 168814761 764566588 617097890 365870322 948423701 786174715 317502261 653074396 128737662 557141524 62736191 991687537 309222092 366449632 584395206 136570686 733736674 359534709 923004790 523020818 370422921 683498333 985908558 50545873 543999136 661967366 903681334 248702880 42486252 983255279 991670244 416789322 856645206 144369610 847079539 818630124 984536034 87711709 857006929 392243210 840413017 370411902 362938522 672157189 436174937 320042692 371584826 225981466 582198775 663820048 13675618 210105479 841520437 321793373 332215849 970463365 436746022 332315271 986945848 697472541 478214551 816112144 693159114 704459444 619284290 648058699 799714667 870316670 921250906 411120216 432790054 903368002 148665105 199201533 757144502 386905379 188428670 160689375 131372000 474703261 947068568 492008357 208718872 998642102 290968591 692804108 383948637 996848877 735326001 960841944 678960506 413766121 802229670 110470376 602211329 624659401 540883167 333281906 620042813 839802579 6554826 776757258 602922360 924240590 64153506 762870903 297645428 501606587 814391162 457573205 200378241 579566350 370972687 697830884 84067822 274364349 686507795 434762739 157024233 972478268 351580568 795558760 768810758 286672217 73699388 26669829 181102511 656896624 183463431 712331203 89800176 701970177 915647767 627198939 958520014 272862389 340354524 524248493 136625098 625700631 566769310 950879067 419033219 64803003 162397286 253742882 363039412 151267842 529355160 949035765 111687597 802739490 289490259 172599394 996618245 806423641 218067317 595758523 864861581 750211863 186946938 147886197 685204109 300594835 775033007 12203634 275676587 514574366 953690189 236011008 833200330 539914635 119295144 993661498 493690613 134058144 165983888 650942199 341329767 622484043 80003936 54924824 133603903 34532467 998851468 631217858 934963224 538079499 311943934 148564753 650058495 137807962 357130225 251733673 421867901 124072179 777477995 284070328 991863260 384869803 337454037 846273297 519146664 176163241 519660279 568294711 56726825 51867729 131696505 747144014 374363882 195056833 336804259 74372686 474630737 147872591 295395780 2441289 582926547 760025081 159490480 864173308 272025055 997031543 365407748 892179124 911615983 376550939 996690523 777154068 196691307 598359530 673768578 27152114 444629474 861172564 926167429 172269410 104781097 504373505 299023113 120219378 718513728 764170580 367147202 635854509 538442341 255113451 233423157 27231347 149869615 583781126 446111370 495338 300446238 712514673 127973261 43673908 662854593 326335636 887027708 524020070 832972646 773860252 121274577 681367368 953556563 171878227 475183756 883395754 150286352 30100063 928896405 43256365 39140144 950351194 727348833 930682027 38635125 967718733 862609623 339761940 218603034 86678532 251109774 725138450 972297452 551993925 415558833 830601775 244385810 126054216 105928038 116162387 589019695 73838829 402580755 45126292 860321824 544593747 742630903 410352049 688294452 914461537 81661129 887476448 460663726 125346951 407515686 62193384 539117202 806978288 764775793 886130185 135815257 269847185 686777848 566944862 506940296 159228933 418559238 172612660 492459829 444293531 888253167 538439790 140289279 892962653 735810500 498232512 391910720 489384192 310131226 582558928 496108298 118413346 782218362 149537547 616246424 965038971 852818479 457627186 396383629 658137953 363641183 537090957 111433078 723568739 612500515 618650045 718154639 401685495 633614315 577754285 857962393 677569471 198994943 370674202 640916317 44669175 367203537 774524873 197859038 345012560 183030300 766202276 478679202 583775772 573180479 786875950 53706168 254755501 104325002 866806674 51538599 282700300 326131880 87122633 481708634 101438646 428064757 551873771 675172670 30821374 505131891 321428129 94559666 475077709 466762577 132709218 291723474 354316535 850155296 264845116 960914297 117360078 792804057 663870985 312683529 406895213 446207651 478424952 511549538 544729148 912756317 655981968 543389256 850474269 823392822 324302795 648488870 117744936 89103935 882654277 879729894 248762768 194722391 259728887 530673835 655301160 809635723 471616235 709963112 20874718 496697285 929898901 132267294 719992039 47650217 159512034 927604290 90082532 573754512 512663908 8858752 91247750 643902558 545690303 301997879 116833571 162288834 641428921 284174152 693523329 690506857 153808159 207909991 140929089 298353294 196850330 658083136 388285504 368917820 549704568 42703485 920117545 928674005 470439157 678028503 430242475 576344767 783406832 660053806 117168751 413860743 915332770 497482056 484953342 676680127 485005772 243239814 72467826 520395474 761183541 489048271 687376078 306158076 215560478 933762981 70043620 931623614 892857080 855818562 281143551 901579771 570585230 262530375 224456084 679145223 754507570 614919081 378267254 858832260 277099948 680934916 804849983 3411846 779271954 239387170 673952705 251401311 105489079 551226288 799469897 567494058 713046269 933016273 436795099 252561968 714978051 203910368 481813730 844634833 288426352 568177582 483407234 130715539 709063653 712884810 853684335 371027864 108891535 983650621 225647154 772105802 496076257 825610248 335728769 791723017 692354443 644916105 171335750 671223378 59770788 197834714 977735720 321656234 624052444 705824968 99499479 98364566 691509255 763393333 947328062 626405127 285420798 216310263 237397241 902768638 465329036 103437453 336920010 386625915 927052300 598548951 254326356 983769004 786956785 568850117 115164371 5885729 695880093 250472298 602179681 220210827 927843799 871742063 408379665 96611259 897985174 611666281 393666057 44158592 510442907 208436571 36947164 527684597 703838563 904772281 287207076 733729080 978299732 381954971 503223952 86853945 877329659 630063336 3904529 636811552 241340313 494454181 199432641 330666474 258306660 794160644 898041322 466890481 702350511 937652947 542434824 466822964 635992928 587871440 572740123 447205577 987624501 769666028 898905023 865032584 405802270 320668384 538976247 949208740 370746601 222285605 793619703 330567365 280286510 323666736 935648883 77313812 790752169 149595400 821014861 687633605 214987138 957205259 948245742 624798804 132615432 715374528 472801561 1110690 711745197 648057212 755944499 121874895 220803622 631148561 334863917 154942055 525137365 149117720 577399115 575627097 625698947 282386493 157132556 634461448 706413322 487115433 241031010 983710284 422875664 869493375 410597504 580722632 850818650 494954689 204604144 965495643 293625533 286068823 9839098 405109435 184333629 465784703 290807608 176922203 459750028 916531040 919082147 63357544 487971542 739530884 629359756 729805864 538774367 21743896 718180031 75207911 547918958 968897227 903783697 787421087 736636690 819787325 290562221 229546245 820608598 195538060 532760572 198905918 233582304 626694487 239472195 177196206 152496855 679227748 229935471 296563607 583210196 195048037 25874745 916116826 238973191 119179301 556634644 90902571 425892577 441255051 100085410 304630371 322527906 627942051 324319584 969488447 251366019 61754466 300421671 377235255 164654892 57811858 771648449 240360002 661663969 56688756 831792989 725086004 131456317 256982623 951515924 687081592 981282868 985823705 322381336 901259094 792900146 361271067 813820731 845356560 93975449 531360615 45953371 831137282 989894190 268567376 609272600 724721327 732543412 65261458 142696507 409787103 65232598 103712266 894754998 85768650 263852562 231161591 209656464 486266150 813389832 929841034 906992970 599593632 262208941 797776076 896801423 454637157 521085681 150901869 11325786 497150953 752831634 921766914 753951648 189719468 707808140 772818113 534701824 462723511 938926501 515361324 540608453 375446992 550992857 435413193 196998570 595635067 182199462 84403002 373086648 996547605 769605058 915518855 124408038 764314737 24063437 44653634 466284809 888408000 688649081 995927055 892533856 451463530 255838650 532270215 620809085 989967330 736769051 748075170 995014389 791304844 86627101 249115960 238701829 561929293 100089586 584860936 103035162 355672770 677915260 672043010 536431442 229444057 82607197 100495270 901231008 460970755 665773819 849152883 665807315 991442291 355441803 264158197 319493161 148004889 558869136 694248808 80730904 745287247 203788031 914782332 9934329 411351756 388860559 554979529 81665465 411458151 464293663 704892966 526213741 707081133 682166920 884224304 83914169 274456748 806434143 763899017 400840305 464923063 840152025 628855646 357523198 916923340 393222735 715194595 363952010 489961794 697566574 15571964 180701230 796888654 283311572 889282322 734082552 856694058 499137234 947390278 963357713 568669410 51962182 989501826 812566978 421030447 503128113 286354255 92952431 489714199 271189589 278705747 40859132 392749266 382303918 142150235 930665284 66364147 917530401 753072080 903979620 272446297 505651311 806414184 217295582 886862589 63548248 973759924 546589450 186339813 32173333 900008562 38158007 475019348 295998891 428240685 887149094 792725535 118490927 482713546 56305655 689898531 757433708 279827450 673615176 584143599 667067302 944471933 542859721 517004610 413587414 987659401 988131156 803684842 438080187 476038388 283090978 735942380 954938296 689757254 480596776 267756017 490885400 851425248 218182272 871699857 207907052 624391866 688254092 116067392 742636252 255304932 77328839 589941638 6215925 952633957 287352121 914990275 138678552 756162481 591478367 771936786 982420096 870578339 838096551 649043922 190305831 273365200 282759975 750664499 617597906 643159114 624072228 155645442 705617341 815906925 690811811 801375531 249137822 854256011 996825683 255181931 206386535 969196067 571420166 981466389 664348172 741722185 919249821 839162043 752110169 28347693 30734896 268738135 591597146 723431196 698367549 505615956 732709872 217469411 101375764 470010179 783218221 959347397 468885011 185472074 880076381 398081879 410111587 18821539 960179882 845039313 48204094 675434096 194280034 545180808 770923396 566105709 684751942 386473715 750778575 269582677 380311957 354429327 609261627 162295271 14674224 439405329 799240636 502313627 301944130 88658364 606985484 213689928 42470146 107157211 575170654 747137663 381362271 683922060 156314603 499533695 877642969 267190889 48957608 128526159 746509348 577693549 573017639 603372475 682955090 580316329 707681723 746538787 294471416 851388556 397163301 268350643 252241343 86482573 693462406 100710502 889499609 292091800 543498402 47003744 468901413 69925232 316747346 1663130 276072452 828427843 417922555 523892863 83131553 387219523 29003724 310898597 776974155 580419348 575744848 642448029 186287325 598392368 872532117 245505075 940401286 812696470 919054152 160691902 70279902 511155412 319189764 755235851 190613506 867437962 523890051 331099246 954666974 371213099 82466516 640198203 11040879 813372445 49260486 804029091 542686256 768868865 719973096 989865148 684853335 964881617 660065908 198496691 630668272 599577830 25403202 195443980 822893795 615975472 401448393 701069943 580131970 622074374 197036177 782634121 645899138 966354108 255900400 247248723 570766984 794575438 33259233 553176486 564600276 566986553 194541313 773510836 228667133 59793864 328680833 485709117 340980870 399052580 868890685 85471089 868490939 182851744 991542556 386520295 454968825 842982940 231374690 986340301 70878529 508356851 701929931 371057141 77528169 274502566 640296191 569010370 659298688 54669033 435916653 506309366 274628960 339353578 200811386 43870737 86274170 259147959 499845379 336098281 222346516 371404540 471851739 256338468 165629421 16598862 129912685 909931045 155570923 842001749 428939874 16634358 745225115 35799522 568043461 893060017 268621362 635149937 592623012 485489209 777944196 419186804 823584406 769985382 431030939 975591910 941922642 97623549 892820474 863472889 558940455 901653749 19380925 163824220 929465773 152293502 776979613 754286738 370400351 497501337 351704190 379577610 972070525 975699908 295641353 360274697 530049245 10443987 49405652 774680129 475812129 329056913 598941381 659679274 686238540 602393178 21112024 807381924 807752223 482127687 152114599 218738430 362381031 788053477 175382089 836198366 406086172 483548914 880312018 603875439 684141354 805970419 222148411 723308420 945394862 921305718 302544850 164111099 613236924 509120693 413422818 740284284 446443090 322906384 200748081 229637883 843860309 663588212 153941201 88071000 194989402 43429700 802211691 62305662 126713660 896710561 308058050 673164042 650745277 989019051 683484853 29241420 223114865 371375700 25257892 806066746 718064136 580294558 941195755 79450366 132999572 893927319 379217346 401315562 789868706 438891725 840777302 741891395 804147283 324980215 965694953 288091817 145471687 768871106 542132075 150302171 269769648 748427227 45411260 226217906 458847588 532978775 571995121 845310667 66680901 561996049 760414399 533465813 484459665 568926494 10187548 561708314 346966929 131836521 675144980 98372774 993342719 57760046 763230724 779428526 964927770 706153897 188673406 817611655 489624044 503778949 966905512 86143701 553985376 520769261 500623615 365972900 970629562 912977688 728662151 677950824 265625785 180906827 765287524 644208530 797153081 562934526 929008502 344169883 509073391 913490910 72295979 660837138 70694815 905465293 830157541 167020961 239156141 24730581 790936524 630980144 565883792 609864396 449074355 220944605 677945984 81930876 289821491 839418486 478518754 30151887 496113922 257386382 633335084 81470478 53989689 869037336 498287644 342285600 209331383 147459122 204187297 578988724 619087634 723856369 218578821 752838713 532257405 193052033 836338388 647341880 299309833 555546542 707287244 996279041 673214564 124939850 922273147 140668707 224774049 207028557 892636789 853572442 360972852 408398417 660634465 726316999 451361174 391577281 632565873 175538049 621172273 857382868 427231931 336770269 636282203 912006022 85446626 372061396 442108141 822283118 660972212 105818868 713401424 247770104 349645265 305518854 21878485 162303021 366639746 390675220 130251561 743564814 503124671 391426362 971848324 657304739 714525181 30083482 511021251 937196021 227347080 71912305 569873577 819301198 1034389 767461628 955095566 580653135 802904389 15313378 156075203 860082140 167786473 576240797 278427336 254657466 457044690 388080020 231381112 427206365 620371029 180792311 266371859 102560625 675731610 303050316 316533473 509890871 917522256 832041233 222439859 437666909 758396406 613973960 749364966 850288314 392573967 531045281 840366486 694547646 338419734 16267744 292802371 100572314 793826503 97202068 362346383 106995641 758365755 601961204 650845204 481640457 114310199 844234948 767029019 471013045 677693992 974667149 27721684 143826200 378572016 11296670 721005490 190811910 948733544 456918436 362235226 737982350 545144219 957126489 697314393 656976922 866043552 225790944 69635891 693526817 14839551 885405258 869713213 112669130 545454980 429017184 757907045 916700367 275718560 859995922 488310879 963739532 384417384 949595451 925667749 312484721 929282591 283038023 902414232 118637893 82540485 3320684 412279452 182936705 437938084 946972438 473298342 29395751 572059626 534359853 358587670 517234486 425990605 741451194 501672907 214963028 826003616 845003315 991155461 708449641 657792775 803246607 647102001 999336460 113552933 831619009 384985745 998984960 442130428 679512328 494765162 258489033 896095150 647850750 380719730 454024606 258958021 548910811 321122373 748360108 265562475 944962166 46690075 287585034 32371259 245757968 944996545 567209243 799714526 831372290 211464939 493466634 25349330 544931260 92640663 607760929 187782301 45544677 471311548 538848539 28063608 461874991 689021546 511617729 228514313 19008761 614444719 658046923 349307318 486393360 594236867 758142384 763831178 522916391 751458553 228101579 197708743 437213506 845091874 782079566 223278725 624829518 907492571 468144411 683581797 802351146 659545051 460149661 719777999 635390489 448249598 840637587 723829757 14947801 631733634 98861338 440695405 485009124 907336146 867418082 233240207 870439794 831881437 235118880 576923363 179149512 604320694 537255123 890067522 406167519 142734995 609333691 343536009 899178272 266411043 285960823 199681582 907406851 89917922 903966067 175567114 937477636 245586078 558271814 236672992 265622235 195654833 572347312 360618371 506709038 572042010 547623036 801190444 868713757 766750804 162531263 438580134 611385349 726822488 625712950 80195195 996527253 335303429 895359612 531503657 839630771 824528050 161342387 984645492 461021875 186147573 510818159 319908574 671953208 844482690 688893527 685456020 564635089 940450650 134555511 559482988 718084330 734326532 949794839 599449779 990758849 52795159 384264008 355487498 813515020 802872189 296970435 585993541 360174583 377996604 712855416 322612476 252944752 42430126 782608239 242212860 183676691 961542483 473492787 820896926 259702609 206100198 616016832 152103433 853129341 336391677 336240053 941849616 525230913 958033929 266033528 743797823 405323864 734661101 441198029 397716827 569762447 808741478 370808034 295599870 293395384 669368607 204583143 923978941 582051768 903740960 723746062 660645164 972764015 888462340 91732306 500219371 888185349 937748333 488532385 607209007 237142736 758903341 738272833 539918242 203047929 592819038 580848846 709236794 384165013 338696551 385760156 239837581 620059308 249115677 904504177 326970049 977624309 105176153 856100343 202129244 416181323 297482534 681210215 342974572 26364157 484580626 48513321 718363376 811116660 434011651 381237785 234437197 58842004 129376152 704436402 813244143 712974149 454407732 596582822 913164110 334064872 56110563 932870455 252802799 633476698 627270964 546440345 405849969 714265198 839743109 139881938 523829158 182805473 619059141 245923863 412332822 117019689 298326242 481538562 336574685 908811983 14872512 344803960 727952017 442139423 726742480 383655643 166841768 561270109 334026635 70355570 718850263 873276538 464336956 473115310 104863243 975470565 311823046 384806033 60565203 56402396 338616456 300832087 99712344 441593924 407679196 811327974 440850920 34888628 620663378 14701109 631223171 366656993 757451773 712728626 379027646 830838315 931686348 332499156 795809428 367428398 152034591 702204364 864681498 253007540 105726127 595598262 568696724 374846773 4362285 492877362 383384472 379180435 62961757 396782571 24893608 305680165 780753039 812559818 390606183 174700542 40927109 946437807 559999332 444987507 552998019 324345010 330156282 912145823 617015364 231862040 520908573 533145187 351470344 229042948 873956988 251440448 830958074 326107328 414652912 56528303 384636537 814683266 362009216 412484839 938618526 50262599 550882621 203803976 801906601 706350348 305447621 629378583 170670904 184366489 498646040 288152206 319459272 324425112 139673640 359796522 17920682 119036596 418535720 179259797 150470634 545429986 379091233 450881021 520304639 14921407 452221819 422679632 939457934 744180155 217655000 104471162 585087412 490889933 549146954 161692041 872426073 848122747 42273904 928534089 277235826 296484093 733158864 16696127 293353502 158624220 587724264 340217281 577871382 406724787 808447815 964261967 236692573 823343282 805900791 739730502 418277873 936239522 299174490 549080217 144368002 472855686 103998722 945258245 912395709 851463538 181946911 116622271 180567368 330922131 484620490 293231885 764532189 188819950 43119337 625740343 705687303 114553588 253986345 839004642 958551790 544400362 464947916 585530507 140032916 66473491 916937084 129449779 294852618 869746254 804122503 808948074 498077117 339259310 667729246 776403647 542282590 678478083 781197659 629598493 298775554 427412460 89079058 803454170 260808823 461902440 359827206 57434950 172161166 449039812 382965594 99879868 720417779 33356641 129940922 391093446 688206265 790055324 518478152 421897691 488604160 373999752 539349685 688843129 6391401 98396760 414060084 603873415 908433105 484073404 929065482 190874283 867100720 774192065 947943 154669894 413368728 875547814 152575343 626318233 935224850 163133915 630359085 522693482 408668690 558960619 260391478 518347925 183214425 726842309 117655289 528683743 866665832 396520507 903516555 788786644 758983682 755260668 111225567 577682539 454451558 743788542 405715430 260208240 295515190 154764896 59682891 855172162 519039818 451574108 250689620 809764574 427388023 291757338 690821428 479962268 749871595 482152337 415991362 344387811 663606795 709504570 525219209 528447977 404091464 360741305 70343029 381972142 851006925 29282908 799169603 680594097 169015066 238490163 644446719 701747750 494711447 53983175 234124457 954009804 301492966 89218461 133699202 30354084 393730248 397540579 874381637 580824848 189034063 726121520 667492732 197298661 122492872 696483135 478833527 205624775 643887342 612359147 983033110 665123857 271408161 226751362 304912381 513664540 465276787 89218126 303007887 305410965 388365948 909410111 114417107 22435742 674274153 444447719 84793809 259646114 451255406 7320677 842784970 699528764 978746847 436657214 579412337 204978140 427436276 151111945 58023853 59127231 782744092 461928897 833162806 195722847 602879728 530440334 932723359 22484299 370801668 784384476 209243937 554194489 280209363 3141847 422342377 223394206 644834331 578046119 942621100 349930517 504505338 626446930 280250051 444231326 498464256 526812220 787784262 985067257 954727156 828407130 216961327 916447868 239316009 5597446 513543331 709640952 937614757 330604135 35292371 215252996 578706538 221690137 77259898 58640641 512322929 154835314 712305673 984531851 618881629 822987466 575123756 20602515 178861235 788343897 70926442 832287746 670265176 617491944 133999428 268748819 439051159 96703827 327952150 446015764 40836366 799041054 709103721 412096710 117864935 117117323 336652109 102042835 400397982 587627895 632033542 471996882 367082859 707439222 138185776 369527737 275357 425183100 290815411 304157335 927795406 902174131 954933492 383727666 695498688 811127276 634890977 340422483 691927684 982763676 652549930 120541762 161690729 714790495 571706464 820755644 216915135 648795329 700970396 803923981 575695907 110244150 378908514 139152285 993910412 801079732 716857861 583709847 926001753 63340160 499110690 706021312 502202782 183987696 761561902 797104060 335593786 742480951 811938370 628136235 849526543 550836449 907296461 733062205 984307203 281636603 35610564 776504657 948571271 651605109 981270532 524189774 218559270 916998763 746705818 665488679 342081833 181311917 691675297 737336401 309137870 18194444 585263060 728927828 452739086 348014533 267944322 402435321 241678935 950263944 649074206 533356509 266590409 466124068 100872044 660372081 56467564 70302583 961252261 968404640 136450936 564056949 637741417 849903535 742460674 552200221 508217448 512927762 601973223 792621693 854026943 794561738 18046003 412900145 627469568 812338163 619247374 597238275 45519008 287593078 956982092 546926479 71476720 658454393 686034947 606002480 188728830 424596390 773833280 529941739 363910380 142360446 938687267 642113486 639473495 311752848 962880626 254926600 346829096 543292199 759770001 562905639 225179085 594366849 990553844 888919414 301164628 492411399 363746032 573895130 312629719 361598991 651961808 375511973 296183431 257535482 971427223 838383316 33468048 367406236 269451462 320503725 335488958 608047702 93001483 285950184 552399472 481650207 119336244 667463510 914065782 207477890 511147878 91065916 117028539 162989974 661542088 284793625 382475274 850143911 923007589 199157499 666960420 761163782 443248645 808635507 526486910 984815062 708017974 806303489 238047142 44226130 774345126 540090684 21360111 194925727 222467441 586588251 476837534 952625843 653691445 88964990 619869005 559132684 328592080 509178633 962740442 83697866 145946824 487200163 99698131 101614815 110979567 783703382 640852312 264408489 667331477 29685120 157738429 130915796 444510055 940849015 379139631 108965148 94181601 887509476 446185836 634055472 614695784 136846601 298999686 237684179 363872462 338973253 539504123 581927762 58036878 692222704 514348449 29748533 461486195 674555160 707083678 927801469 773151195 930917828 88017121 863603617 593809301 547588263 84195387 133784490 246949288 169383984 640887416 286668551 879720314 40545625 557885026 208027420 367025303 395807768 234769795 482746632 315149072 357250950 795467920 56657293 766680519 380015948 684511917 512533134 277755884 224569220 385999806 890084104 158182705 243742330 170087989 471384567 68720037 87465740 47988054 482351354 702586380 417762441 204888308 942646755 251389030 722176056 621521051 169542075 644123355 577311088 234504710 757943130 161767345 320119436 407074420 615368267 500266817 948167922 68653789 976446393 242552360 559973911 889701284 47892687 259317887 534252686 903122000 40719022 871686883 20965845 819518409 735642149 739035030 541060066 545643555 355376309 851943742 22201945 725729877 612335044 399300865 736670374 738239432 732382608 391066329 474476266 651424896 618029128 140710969 565700727 598293053 598412353 338548165 642585134 26762946 305593062 685266142 829965160 515605431 952562490 600869091 873374739 762874785 982697184 716004601 260747407 757704991 876823291 871546155 975900147 28995509 677732046 531960507 640942036 560427904 768519727 377128338 1427061 139387116 886965725 825064442 898850488 192857466 969441813 357535957 812594704 352540894 841393841 926419286 273489513 273637849 258246377 872306020 875317341 822641739 255140838 1595497 510405684 883764233 630403252 228034365 809061654 110430398 129278517 288813385 952586230 145418785 876338572 410601299 911228547 313782072 725777697 795365143 673177918 41053629 785354096 573908021 941413621 627645929 125091024 903248852 164357142 247302887 844777179 595846523 916938238 260551880 139816801 763903237 868402594 537471835 736097222 423797071 389514246 164459337 223067397 147121748 74588657 22823214 508344779 105928054 522339103 309297525 484633169 99384271 671739165 586344545 976505076 627274806 480201388 589548138 736329607 706771461 938716467 989533328 67313798 695983571 137575757 139122027 382358844 337679707 172088968 170624524 815890118 194448534 338549466 270752331 257763261 739201912 173716552 199979473 455169315 51540024 237116144 572679777 891004623 210618723 983594365 461260003 996799967 265369403 308707951 578919677 68451744 109075786 795670770 789706925 410313745 104220243 474367304 83370612 493312021 423424258 56288703 278714257 559192184 313195075 438214192 121164567 879062402 221694197 215067541 545092228 430212683 482342151 711502877 414268359 538981581 441162970 43428361 229397812 633794391 857986047 693788587 918743042 891217858 403686449 313641440 416972281 475890400 154093097 619354732 543243432 608831571 569896977 206357861 600464668 359503905 80736474 15768336 62549137 71642946 514901698 243737670 422689004 515296612 812708847 483863239 966529666 68780266 552636056 152696186 132641508 621439244 458129746 107492954 806342103 552649337 305104354 880666068 66471903 249125550 733754263 572120627 290954263 917047468 433807547 913249296 906480521 820267526 415905426 584614053 681820733 193080991 633041428 201887321 142220771 924810390 235067836 122783644 121944378 885141572 517090756 356792750 453890571 667489080 56898579 240374171 260680367 411703059 142192147 927439626 707053528 500701177 963479327 652485639 375584586 699813603 471982394 940302079 363067373 713246922 50125413 335134837 769720269 319588693 709203043 550381342 199687376 837255494 710264574 968019321 526174390 208768082 554996576 540746552 354961219 169646996 114886373 603294688 284242867 480242300 601461667 262769940 344954947 370186136 84253553 430615382 584449496 233601509 657675159 583723816 547625750 249075233 677130758 978690421 468729135 463084669 109353898 463515627 915863009 864166683 816141795 959266342 879817814 955337734 830936684 749519277 289193698 945876295 204711580 179380631 147488839 608406821 60021210 294482482 47967907 170009112 880626654 760043987 171563542 697988875 808356226 757944116 982635169 715596939 901921363 76314209 853794274 148116236 816861942 246165614 509651305 384632346 545391612 651992047 267042836 805834785 513122442 462723363 368146425 116782633 441906047 141172093 133473201 93027342 391783037 678537658 764732174 515188491 760820476 468328362 761280203 944234432 921448468 535211936 384031293 296643459 931291825 305416618 955744890 476263334 484041101 442592789 825548527 376223057 821775540 313971003 656503184 240123796 879940801 837717052 187043887 97213058 954521655 62991626 757771678 680670721 985358724 298936959 880787990 563738634 95684519 762475337 740683128 116654906 536954501 769647871 850262537 875230276 550388636 558237982 758592851 512964740 685738958 255058823 395301283 610294892 261765200 670267261 284927924 532698697 977563446 907303296 282836970 212585171 763979905 578219468 914965043 535183438 540549050 564216596 497056283 753294177 197570176 956150824 951079258 44220763 715289476 212156303 371659616 948217226 980573526 850905500 396427819 402437315 634725557 25340671 929603511 221097465 205291982 243659587 956255205 358655374 443484745 466647066 726905942 206786190 123974530 948191468 32095065 112358933 378433822 418409764 598017560 445365041 113420331 566168967 553939196 279233367 249379190 465417727 431061662 183998493 346255560 579181271 364184288 487489388 162794393 457539884 641987983 523377056 912388029 906490090 214103500 645296837 395273882 904723812 87138103 910114682 649529999 300045115 750797773 299296200 66170763 95839937 214088688 699492195 280650223 950058373 58111053 703535474 81638078 698937147 650080706 360402982 52941312 124953146 890901504 726684602 627707343 204146859 90350030 138762316 529785045 116318293 212815109 885927988 126205667 318202461 948215756 352113492 361983169 588188150 971530261 680437303 129074946 69244223 345048134 668182662 83777114 97865954 780336053 78820319 114814575 250445659 896331512 258846442 305377700 519660176 59763968 390204237 599992853 896282800 432226307 726248893 125813115 848958707 852125536 696495887 161904062 624629192 475527738 909927931 715656580 180619790 982679965 978846492 650052617 870452266 722298627 893958983 289177061 672326260 924014251 631916910 107792774 546949258 973121944 918086488 969843978 579095942 811895144 660913334 821987284 737121823 819930586 660198987 954137340 51970060 27266932 639984677 226517161 883471163 292960833 826980952 415355657 988095925 192943067 432192731 923803151 240106815 699267911 47471221 174226618 271787507 235049509 739471973 607723028 653764281 832116829 736539556 839740602 793785139 412171905 962493594 381359784 20556407 859345666 433132700 100221411 512625700 187385476 420696335 408591817 816810698 477884618 926509038 624212832 447794199 772056389 404688213 798450536 253992587 359338529 482242486 285376909 484238089 853148836 29072966 586209476 771830654 323025608 319977324 388876457 400777714 844628161 645829886 322539101 345550286 972864184 985705766 64912730 74098062 366405643 317798354 378882204 940154706 609900464 677859559 610211722 519191148 447099442 100573212 253802357 686830579 587293836 967051297 11642878 593074526 740098157 26967643 599668104 442284882 564322191 370262888 865954203 571209932 414683339 447000735 176273005 132576967 504478687 585417724 934366365 482831424 457384767 534756094 529417584 570624528 634961584 376154782 562834439 356099866 373496896 388800405 522365224 865531262 547722343 992566340 472702041 965782666 909333106 938441241 20243830 106305032 792062326 913493532 256035164 568118887 111203601 417241431 60726582 415476444 539604266 332044148 844223034 349077571 746131408 503620590 857494134 597271479 563328611 599105685 269609425 704137614 905654114 488061491 116415471 742859091 121583811 445648738 667800454 274811077 629304233 411194628 161232336 61050127 651943275 517271310 873323329 37036945 42543999 501859265 112349186 354163468 24017414 218967659 371505223 993017717 437443386 442409895 68649828 245228952 593203110 634453626 396440361 290712049 161668278 345110397 805240985 944700798 424705218 540440538 705294881 315426526 501760581 150523798 907461322 863761723 644081459 872388991 427844547 244568495 834615047 613209990 218545930 944321569 775150046 670886945 904476531 581974318 133354872 450754742 830573023 127215089 108408632 828344318 503524171 327327447 503004561 142315904 504549891 292844345 230492223 247202070 284432014 906450041 15579848 562729976 618870245 763034705 40663664 22958020 200201743 816418393 602414990 847934829 927904146 706327092 713828051 47477573 995756575 87153949 812052165 714857683 487510597 204395224 105451320 520849796 33270909 451056593 915523320 673893960 511013247 923251941 935772391 27588112 283306550 511096935 857151715 208936126 255920405 795367436 602588966 885761606 329772146 795397250 997740268 15541301 890379553 483636252 60335938 551167394 959875623 992583706 125058486 471080099 290896159 47699193 162348411 886914461 311045678 712894301 205055610 29979418 525278230 411320681 936335996 647355440 923243410 22625164 836388684 51255022 787932069 111238698 268382938 256665912 662173113 190703655 588868822 313732933 191834074 868945172 246833253 606122573 79015850 929697114 590476736 727609935 824592918 944363663 977054168 147893863 955626231 677190873 833092041 561209998 509632217 995205062 39868215 369166822 467900502 35402398 519736568 91980034 720494831 183325221 319763220 756831753 631793224 136225424 524404776 973604870 247530546 551970476 871600186 709963891 405373305 587934588 770464522 493280297 376944673 8617479 217539290 63839865 827546356 348996993 243045028 415902647 898510105 926937482 811552834 310192892 403373375 716003284 71730342 970474829 653795146 164705622 987633 933789182 453421673 288449355 261706977 794710866 117578833 707307152 995334978 847237505 670243611 436176479 62245346 781779002 669863339 302996300 36398234 7157968 196844750 546522391 831747461 780758364 367983473 690527066 169669497 763021161 176152802 51049698 568062227 20314813 754525529 441590123 444131902 84366677 965848755 344593534 391165335 677040198 169736991 491318831 201238055 770186399 180058416 782133364 140499836 340706555 452102647 86527963 735106535 670762953 505349336 314571576 175453134 245445466 414482249 628955860 477389219 167035134 9694582 939129156 33424810 670849409 214255185 291539214 612151685 417744684 408614398 634310454 450428208 863209915 598022986 538438435 675982921 528053321 188070774 797412885 149352460 176415263 181066362 980165853 368581757 235129338 699913214 285691045 966833293 694881526 220616081 346530879 120291516 58190337 6096091 813835219 835612992 348505253 928079682 60977043 607900164 635872654 23684835 311007954 415137654 827803144 606150006 645895317 110624624 107239581 184698544 794168384 833517826 551961569 300906202 56139596 113690958 962696249 312066240 69528715 954030775 978476434 681907059 714025033 762018514 669629112 291513083 468585324 598905172 387581470 247820522 216419462 20735078 524698310 470570359 778976511 46452044 994667450 218086031 922516958 742185183 277547299 806732204 832217841 930161724 86039404 391274645 22831260 592713259 213042591 777286221 679602367 852872964 258125786 356913711 37738558 467441280 764732646 997824916 845116279 741984456 766680318 304347555 425937478 821250455 763270049 174375179 111644279 469579227 702222059 861215358 432884258 215590211 487346592 687720154 379321500 832921758 629146550 97507495 433881491 618507853 271504905 113823217 526918571 474779820 363181282 988464911 201918610 271398002 263491987 286669590 248399527 916409558 794695193 60265162 978705101 474634943 851673913 655509551 377014652 433125316 903182611 105094995 241688446 104731202 830786219 715031421 114473940 43016402 130180438 570964326 254904605 878300737 690180562 996986124 442718098 221908950 598588394 156910959 491204937 326876187 47934262 511424423 667215597 122050522 823342967 843806222 693372180 27665601 806659723 298450772 625107316 746268959 918270627 522194139 123120213 174405452 903624839 523987555 842375937 776294861 606833041 895646988 990123713 421604575 270396153 912152257 215407518 742830419 735388416 373807447 301041688 526800472 350955003 927117436 475142770 73382751 301092879 788405428 636966379 732794630 874284244 788945404 17132734 652791339 486101850 312354897 634598720 855853788 366946669 403766900 463625150 865256995 972022011 555492374 978681039 913695726 888065443 438286887 837882527 244771252 712406900 368183683 648572122 369700948 21426660 400333257 351753759 112758245 817509996 19385431 66519807 663234579 745155111 697571344 123140659 986850198 168177551 692748409 926863601 849845368 609147037 618625338 562642918 197669958 410928277 428001684 81574205 676198153 193408709 385073756 13993589 914654066 213875703 812709339 363949183 417776512 733174517 177145642 84744966 895283100 437951686 47298279 712971823 782625436 88521077 340607481 121821830 429468926 921563576 642272755 795814714 365815133 676567686 537144348 79601727 792491712 929611520 791110503 35117273 914403531 782109591 83676808 371832879 986479852 174321601 791507167 185201726 889551701 728108368 636806817 411062824 879562708 105246289 451052583 350326166 858930578 941260615 17317687 234113737 898344207 882755222 646642511 481977977 807151058 324593519 653393423 743727643 812222118 994836521 138427 34116695 416745822 810756011 544388142 529358681 267930963 522011166 661806232 117198760 435158398 595102989 107943001 58253214 485620367 453880524 939472429 179954488 667309621 304388214 6739048 895908859 498484752 244256253 427409224 822750537 400044511 914659648 183822799 894053556 814269102 443192506 657337975 177646111 990266218 826521709 342477672 417680867 158170256 934968867 28572709 709372056 749476485 96781174 208527378 964821058 111466463 217687503 843531401 28818968 105022498 805968911 324295545 379373488 703166510 137219023 832763563 641347379 921336745 418368428 373685404 62838624 871416082 197914557 152643084 13411307 457168236 451447653 658601889 76662080 76845957 965022540 560536069 630755730 654607041 706878169 546725620 632610088 32492846 649748439 375475917 667416166 477768312 597762831 546841498 219829930 811793591 742864323 280323408 162111025 496679498 907638399 760175215 405273378 471941457 599583760 369325197 579286340 386974189 767657400 146807372 818564182 417181832 375778380 587207983 777666809 79919481 35084690 537240815 334201436 913357741 412265783 30795270 246814223 322243413 700866280 124839436 490314351 514645909 939415113 813185856 123855227 658033914 574056559 869118140 595774636 90754188 587425788 133709923 109993494 539016400 495572208 311676804 646455877 373640118 130453186 130674045 171125493 402297628 303288509 684672823 243811096 238505549 123963308 859797755 691844018 967080705 471314612 235045729 830068161 753451741 347117089 970492737 866431819 868400333 613924041 601108191 442579234 752316749 424230849 753517176 251277594 753107414 253645699 760894273 170339752 473830241 38756982 457373726 342698610 296986534 226303923 391113346 281691321 899014089 296582613 978700596 771810788 682948406 300333379 563517033 333097524 755570034 10221053 120802883 496973946 602118354 638524457 62438910 516770989 662178814 853828343 935275245 577782912 14721783 980491027 335503459 644779319 737924377 59608391 803980313 845133184 62290534 7937172 509692638 812099808 745341954 785190499 718475156 79989105 785451419 961823809 322247202 116210202 451537335 154680372 218174073 826322557 253247254 860113673 799004396 612554551 254154034 399387881 298976735 843567379 916522228 805880855 529352224 294147361 630127741 876981098 912888077 266781374 67942686 900782387 506682729 565658866 734954251 134011621 651911981 905088326 892318643 614072739 966505055 423178673 587444630 396275700 753098220 750662273 254608107 677402983 719192127 381157633 708600987 686922173 674441451 985747280 501173237 727756491 638573520 878194826 273140291 957558411 533605743 818570069 309133749 486395340 45982086 691178123 890308900 160393928 977057495 522140818 546768502 541255244 653612193 465804792 838314227 27976018 711062922 294608875 308004786 962177237 210689155 604251638 912341607 500945917 267377658 29627689 77619277 54540321 496085425 668084239 868950130 663052221 425950635 43047893 397815572 358962069 852857225 425410934 194095627 539444759 368737005 752587053 235570308 935186536 507545761 886523477 686657649 918551744 541069644 827825511 321242610 427766100 794545623 322409772 907641977 661096870 440859919 114960459 630155835 288783437 566460618 815605786 884592889 537807628 736475907 776764923 236555370 431254737 641955660 385361056 411786650 1063151 924104418 775001045 240767303 180276387 867700909 906236258 476311288 188053103 208210593 595807214 326698396 946448960 508460129 54909865 485855273 675887960 297525117 663526682 925705495 842666992 739924370 355026982 700079719 65307317 769644886 358127156 581498715 159758497 640769246 803495037 879174140 627180169 672491251 696302297 759214128 523713247 385970781 720068163 121087756 439572664 802703015 608012644 881806716 554137188 376263979 759250307 306529597 316055322 432859192 13596490 336965220 676637164 365553735 354464824 583082469 648478955 256163218 854811569 110245725 353329167 128488249 239217382 780666060 585133833 475855088 660313968 803804867 140570680 211162345 912402289 266437412 803561827 171616017 898698475 10831508 140227556 29151830 826037467 150712632 297018902 946319590 442258462 247627403 52973443 198509440 588931666 672786672 773387759 845964582 283435292 658556670 189132497 742814518 407941917 314473192 513735324 992075293 369538728 880096692 993034757 354914283 4816840 830644972 869110520 524118106 610373663 527290644 194542152 146653038 853858030 78415438 932932463 971775273 122345183 146782491 33419405 390551125 951567549 892231202 129459283 836663593 873482951 262371548 490962854 243813789 387974638 529589738 652540301 487596829 103765168 195133966 973165767 502849364 630896738 538166240 323166146 814080204 148679208 357605221 232157215 165236147 236713606 84704230 282799833 962356465 543620100 916562578 797174606 412449289 990580766 871944859 3479759 460444767 116047730 868537021 524368025 192475132 338601403 207929304 828517423 406229031 937060866 509024276 712362123 442232773 906728912 981002728 917018704 173714688 192841552 742873010 605483021 982300131 222872456 63959904 643161612 254761935 520909045 23613016 191534350 318341978 217723402 498900770 369618565 801413534 343265871 472506015 90104451 604016863 639152174 769769629 631749977 6443054 600899763 181360730 869859400 151102819 725437962 516558956 509625624 453612992 574921088 920548877 107153772 52122276 793763715 485508233 168740023 829548176 638251895 550551920 434396713 540103510 635674572 77664508 197113560 818855311 502634577 935455949 455783600 921826798 614604498 382264027 317493851 639992321 488021441 935140453 210179680 281485555 614617280 691291670 700567074 960260651 540162507 284590442 410390943 739643625 418412984 35713671 747549640 61044797 552531862 130606792 457057546 555753689 212272699 723837510 652723205 239089324 405083018 864329442 528829786 638452678 904346843 760120768 666064060 739404778 423887107 328679773 788426123 673839248 276790713 524553125 502254766 556017791 563036468 633237231 70597972 9939715 368501734 590819089 303710317 39276755 287040984 746766783 340376220 594700742 818982789 613610367 895661410 132543616 616267393 853506327 554186812 126532591 456923629 473161304 567013969 287151980 629856267 631457927 337087136 29709515 482279581 503056905 488078735 765260498 812915732 266402633 65769197 102763355 951905384 553271512 348047968 512932708 361741285 680068232 484176028 314719201 20420204 635506377 582524019 859733990 298602096 65899687 587068646 992131670 313229923 866551269 771527448 934887133 445706214 722775146 812893353 855473933 346482453 6838029 597099108 639212827 970240280 850592781 761384894 365096404 444708104 554226678 556934551 492696469 566968362 430697016 4880550 984626161 925618942 787243868 209222883 657782046 410146344 65822572 518876231 728025393 901341510 110848923 65562019 280102306 556184600 136125311 85143023 31742374 301104689 43268719 400732538 33150109 290061610 869549495 107454914 418071187 516281490 142112554 523215603 682602377 88384269 113309643 130181166 570232686 681143680 148290359 19903881 836896999 861407319 886335065 370809658 427140440 20012280 535216936 472998922 639891657 131147227 185984924 308967562 632527351 602191442 371467482 139566437 943963662 289890372 12259785 795936724 697950590 200101319 212094622 499308354 636880917 431233898 995039498 479323817 394316400 465350858 878271996 518347919 403395888 808179494 672686783 331594761 675740846 907643601 94296469 13651062 898723466 119672540 431296114 166570246 53736693 514835853 129071559 320748434 584037500 786166591 502208594 442866680 623736165 298334200 453334289 576451066 296513058 806262399 962842125 682737035 479990491 315400198 564344801 175705000 875554958 203573493 587623565 249801009 372796265 761444062 169029223 644353714 563881103 891121186 436129770 871474118 193869958 120926989 554800226 997670526 388957954 754850568 282647046 222935359 688191371 627688038 238706502 704925754 725826912 365829349 608246542 548247856 871941633 894386442 685140358 527118613 865348736 986736481 799775534 573574841 441401280 175967137 776955259 619355740 746318435 294099690 668044330 563284395 561127431 375189531 881412403 605733197 271117303 953123486 86966060 897762687 733245688 977707638 327688454 493605993 382345286 879783070 546861048 312509190 472573661 566077390 193680795 467952432 35093921 250695338 654073151 971103725 702742992 900131040 793279317 527629270 522209020 703184026 206982940 94264425 778693930 28678523 916732932 244256511 685565806 756066882 62879559 93390204 119334076 926870198 474094979 571226268 840733592 797182086 468981889 735981927 995509733 963526594 264111251 613686710 343684768 561645443 623396938 112417338 793709252 92415829 348144684 801217200 588514266 564371554 874806902 768806189 718394825 569896694 267226832 88704894 765564946 948375636 840782584 103388152 335491187 178539677 571232291 799486850 728710781 153810044 877371210 904438075 730571392 789998202 915567289 572023884 283490793 33891876 234755007 181194139 39407565 912385227 313648782 583893661 921508882 649743187 571396153 217770450 481911216 875817735 606936510 925872620 132047599 557796629 886352250 521019904 389824508 113356218 128675449 431505913 397010694 599465815 636183814 349116633 400839613 196325477 676557182 774066773 499377001 830446225 63522411 186644417 52586732 835401290 385291129 802568731 2643565 990156211 195670615 421615702 109697199 151832886 187933976 54844691 465326179 591242188 267135566 693918520 600457907 532688541 731166240 255460686 116451400 268269884 645323536 456858205 575864240 945148980 149540724 83345764 425267882 882545324 521797711 49462869 85145636 780761879 806024420 789355177 991773 463066059 100760238 139431955 269526223 436223377 866063826 880257765 678716968 612375023 663766224 466881574 142972086 781242925 824136339 848046364 199036994 348402128 597625016 258839651 536387752 536298880 954334335 194710711 824932627 813866913 674343807 923794401 358709708 45210697 695626999 99807979 182405195 483697491 839135089 282609571 689352312 618180888 588967147 448790258 332069513 183953573 714825116 735830110 680980587 406072251 474859708 413330052 365065179 146576789 348890561 927828068 313394979 164919150 210362108 400463938 627309541 411888830 474391711 729172575 986184893 628384910 497402994 225453935 484550734 738565376 344198758 836000731 127576994 533139616 867809772 952263838 916116147 371761668 153852428 568076896 480819089 981383385 715438095 682209107 227199626 221838188 413960188 949811121 745364851 761257333 454666334 569802867 110847198 487174814 770248421 11146451 274250673 387717743 753558550 539023786 211364631 986610066 851129224 388853430 291488676 645473095 253887066 583638942 107673547 727336537 120564235 233793291 396617841 500739240 150509009 546538946 962056733 28361482 524042022 607868002 871980912 319853116 29570359 120162278 899008733 546693586 542014106 46645872 538091697 157677444 331570508 718223145 797080070 324754342 346027368 114472350 175886834 202110708 10929612 657815178 118424706 23103088 722836228 879406753 534138251 914988030 316247155 239641315 844100218 510283394 34874578 435364598 391759990 27147675 950672784 499868578 527714684 292977053 263624482 118371720 726308348 546224506 706917294 346294643 8972129 547378740 741154214 54402124 891196724 450133129 292172501 903974166 723852661 665382716 901496147 208330945 908181823 34655803 776460501 74941218 632307380 616490208 599894065 114509557 777191670 404331358 904930995 498724317 520326567 136001698 398520108 53493152 218729391 19492190 626727808 841760729 362980454 953729508 437168319 853084089 242654179 872565098 657226992 16154535 722165787 291930596 360285645 774177467 830448271 671157544 792636807 889659028 979691379 684476361 452073019 848376277 613434025 294473292 861096025 848285779 108948581 147924949 344099458 801065456 587599723 453166611 572299598 167963376 37014343 424636661 552551280 798175763 313597547 951709279 579602945 781292462 304423932 13715934 158877685 996883215 2615500 32579338 652347014 955005532 211660336 487346028 933336103 161115693 758711973 173655857 461187344 995978312 687738808 585599351 552133632 938165954 209085127 123029266 963635905 122151813 861096782 681863154 228522349 370131891 380563349 532628728 412379785 11512792 452562975 426090193 60189183 106486254 203440680 77771278 636078869 460345767 796990088 893612952 755483268 731051446 211114880 127854127 394625349 618276835 374184231 993565254 318927460 730609789 238545039 126116983 173669705 653234282 655252609 269416741 75174268 40437868 512190456 581598664 980862491 227148639 76897272 487210715 810994208 364921964 904419835 822262985 75019714 842386402 676366163 70293513 543259696 546719663 694093841 372088412 182514710 335004670 744266420 949826763 604101250 442293691 477234288 54800390 527877221 242583440 181809102 978861183 569361453 270415767 724695981 112551634 40969477 445288753 578760010 487064158 522420731 957806116 977742104 79233422 917274792 812476009 945808945 27254284 740589678 311152010 688594039 745522139 290579618 128395625 95590805 553533555 788848841 312868137 120759703 335781468 504093591 75286443 981607654 933813615 215562555 397323541 348741558 58153522 384322044 838465904 570703126 811901557 540283210 16440321 347769812 369855051 669626233 830759970 718008169 578686330 715224468 467774130 617962610 528379757 633579486 674659600 689750902 432379959 672879349 384481942 983859665 764865748 734304843 99059900 457052018 492456259 542890570 953461567 225413812 913844238 366452219 887496841 321266432 175804862 476550228 255699825 469955151 719322425 577415743 379226823 399477785 941653922 647090733 836156457 241404165 505666504 132699374 638601436 803014008 613586586 833239032 23836296 409256652 868051738 219181999 260927025 206870519 934952478 318266707 159182295 741161919 809965085 833794343 230397834 287833564 990313051 766738416 177717228 569800784 352959026 919945604 862358533 368530792 393770978 567015764 188822962 222609372 438669372 80159155 201688036 926940867 733811968 205439922 59266911 546495106 183750305 353616705 320465399 916278392 249259492 379148853 942966264 692411071 587945647 200910022 925428541 931741341 743429626 266999204 242192724 124684992 375323897 329106600 930770447 876407072 220723107 69686578 5053999 175732149 95659932 294459160 699282379 367940692 700401118 504900433 287189126 384725302 560065983 260152391 168523907 98690002 462249536 812285909 527838311 46268849 727308636 155029687 386450819 432846261 856300278 30753982 586388335 940536871 859410696 882927391 14402340 743550498 305139695 631909390 826567861 333888110 893722323 914647952 829113322 565557576 11843131 681391973 620891583 855800889 600147376 24629286 828923333 103599573 923400004 623660974 530858392 439661202 835916911 343717048 10985594 547637931 481546101 621615793 313836157 274930913 738835779 648594703 370882592 615189347 508661666 278614435 225815736 13736274 35523500 235527335 378796717 726949907 686055533 14398413 273909041 703921222 574949729 472999519 177526558 15005 163761847 809965513 677741078 366151842 839526567 774029036 508544809 478561058 763176140 319717393 156075604 692944862 254937376 452199491 746065103 321372783 523007801 530724760 921814227 406698894 97483841 148360071 191527680 341097761 553189767 760781928 95413913 222640195 364307001 810429960 899119557 871950201 324016050 213160154 756267290 964725761 570018034 634208729 736216538 478958990 597079789 238963759 120179115 724146422 259289262 27321590 895074906 652437618 978854662 862570811 425704757 260890135 426586366 554409639 350018072 617463098 947140961 879852918 226836100 538828254 330586272 313997671 826625755 90427808 373534732 755705663 752247183 823291080 288022475 303831578 694662479 405819823 600954073 347042832 944258904 750658872 967592608 995332404 583327757 526735618 431350134 971800824 545865023 922893954 222983599 853071679 358237652 41757244 36644829 732395263 103907074 533861358 116944979 784157911 618160935 665945806 718444984 375573957 944084496 380133887 590934987 635616884 438527355 634478335 948021069 361010033 283852127 554431740 697346691 337746809 900963500 24158243 11869027 910212220 181950098 792019641 176841020 539703063 978491676 12574455 356936558 71884848 421663135 210689945 154265275 466941453 334619908 627118315 747131015 196078359 101241682 940009197 255107037 378411501 193313068 517138951 846420577 932554226 696970402 800977471 63342010 67500826 189805789 472043345 506379249 171883847 708044889 768848886 79977667 753482035 294444216 350069443 440720578 820471750 324651169 140911961 349064993 518884181 640138018 259045347 159721288 865006425 971989678 343813874 658393582 887716463 780248157 149193318 385297441 193303023 48220843 797746551 621475418 342455928 732793685 176223616 500919436 196468150 22398091 2127234 860803410 323620495 411504401 161553206 429510966 187833931 879474626 128035281 903821426 481267260 185309084 64418087 251164291 396090315 192293356 865527003 533757285 997181098 69383457 611063206 51907752 565476848 92540849 168783673 928260795 572244119 852447772 489923305 752750676 276827474 828237967 895884231 400521268 618502268 968703991 621889064 487560419 347152947 992767298 47038488 147528569 416887980 980088697 251343808 140788372 284490548 855851965 802270275 450108453 510877406 150768353 755739132 80068533 82611613 155050907 752611174 782563919 622434475 726876106 254258623 840958519 579466337 815234651 408249391 675703550 327644059 443273941 211680103 425951412 41011534 837700535 664295002 776862392 733312008 943055380 406249944 233473871 988076992 13859208 596570083 581709381 68549775 201115991 244236277 499265882 637038280 989011746 372301115 499735074 415144786 371180436 409027159 367970353 203409330 479468939 456463941 968660688 774517627 780363562 672240577 50877703 283272699 440562483 608869517 903364945 308839223 235483046 924260391 395381141 690463402 640328666 305394690 512615606 449058227 661901875 845617289 358695551 501763264 54692988 463668441 29408737 920418690 500249442 652268698 702858925 883565993 377491029 789387548 389308759 753317671 735761289 139688916 892266399 778861399 459976012 311158240 26017937 825995704 181692056 907523860 273374711 255533790 869477753 95009948 782068161 593727683 328161824 607206447 485878380 592904430 646558672 831996295 989705968 933210204 134170249 453492064 607263960 95326679 626141843 71065720 937524610 280697711 186283265 875087388 251773319 316389651 798872077 271466511 878934287 672955917 900304481 461028374 927866194 660252702 188082185 890113354 215277973 650630514 228056715 625507114 186290916 309990504 81476748 71015290 954018286 175401206 945830268 975457179 893144030 600187514 951126938 796512631 79953340 612305093 322732279 541144150 357404781 536334656 990564446 545932847 367445474 679283786 107562481 302820280 754801485 709800036 638124952 667040481 507660420 192045365 776041036 715339405 188060854 900562619 381687892 189397837 107245842 347417638 742077760 379088444 745821147 397803415 371070438 920176738 681721122 961811440 656345753 632555649 43110358 597453950 12024308 120609891 348587876 70803435 620048743 837978058 443440762 557526483 279669907 788346055 24142867 664792399 882916 542493608 278552693 248200954 753184548 288503397 96002702 687193412 319237781 155032748 16130990 249801131 281618333 816318956 316439204 746974115 236905219 213962173 659330594 422957249 439943451 458296719 553084492 355662272 168248010 638978600 696264021 860705233 393600803 204810574 668184988 781222181 898410139 837591620 501351873 109120827 57157703 515902848 540169373 527084342 552671155 849993415 27033045 778201505 601218151 773699689 686927942 322152903 621359407 682945629 998487416 675350515 148311406 781489688 319981118 151094330 909605191 929379721 900073529 386776545 787160860 737830370 207534571 191482749 352220597 669031605 867996979 887677097 972497739 184406830 405904352 23076895 5608682 113756062 836968376 96973147 795817587 685556012 162651669 284729610 271481833 638678360 269863628 16694630 288425055 107908875 415165056 309942126 990088781 491648745 873296853 62157542 689097099 367659938 878031748 262133987 211663773 103728031 273001609 318138299 937152777 281537780 272697848 426390904 612645516 639658838 560689293 799263400 224547883 597512965 2864909 344964634 51603089 377777389 231312580 34637896 308700270 856033818 132339332 433775618 745790647 91721087 270509915 972181554 98698130 745225607 998982712 914493952 622625969 430996606 977163346 811397518 179227943 729623034 909226631 947744812 868070016 455016638 537223836 636457166 109663159 516279252 368710441 834593161 357211513 982703356 805678804 832144881 279847053 784385549 456064836 146839397 963556714 164787058 39329427 213132156 31900451 46058534 112020343 121618323 876431004 523921923 131606506 283598110 757795277 297844686 194195463 734155720 471347084 688333271 987971767 738645714 77871217 892626179 318633110 97528978 494022575 977241708 849481775 791545650 531744704 876665750 880737271 824457929 630287783 403028028 598872008 47685764 928516507 885603130 741655269 131187479 30407115 967505590 12287693 66208966 741162579 955148947 336349076 244512791 893519464 505399788 689866657 627692479 487132427 349609581 97148249 389286606 347746480 80499193 396520299 677515484 58810017 393844868 929050404 391994943 769870541 346716506 207842679 354070436 133125449 941431709 598784269 106293473 605320055 297978726 177296904 350264137 801783982 7359519 376317301 101960459 495329710 564448166 294142174 561257591 659156204 905321958 724549474 849387777 709316674 854676023 426353228 61714858 815004103 893949701 447206117 199405419 744282410 876722612 447503021 618843237 807219892 283862834 693718819 453166172 744940783 518307449 734072110 543657710 796931735 287319879 496696371 645769151 761042905 856995119 451851174 153837856 468837650 160170934 27918310 733874784 666248543 292547281 163152853 536292469 808871382 477485836 576466406 767917448 48258251 815663321 932375345 487314495 571178271 837605323 396771484 815949953 852293713 68204819 35849561 620626725 239603878 216031594 365870552 838130284 241420946 947613420 880188561 662246046 618713160 983696821 731349595 695373833 273589397 699869294 541189332 317678256 528183123 582831115 578852095 598726561 605419185 238360489 921739131 59694574 818594705 62529035 934045456 359231081 466431078 981183873 230162561 654035525 771219121 344691949 726075616 414436549 586838887 679355288 452664376 148381849 651702181 981224879 475948948 481219406 567308999 509987836 44640149 285653181 708407806 175231467 83944771 235940860 6601330 603502681 421846896 707130454 106269603 541016801 576824206 234087351 989867671 885135251 245394699 148352027 735034079 265217319 795110018 12202788 233804162 383295447 367199747 461636997 894754737 601974756 317814511 625273830 445714805 344303731 914048151 55877898 717187563 366840643 177593368 638432429 595123997 597349451 876030741 32783545 673560463 452072725 589119077 205302692 864685696 451430909 416218269 644136186 78955807 198493338 103607563 561607205 865056823 152094239 897320318 772162579 868776810 799344666 396151935 621251442 438621342 198116352 164296912 139896306 74232355 69782883 314550045 948569583 251479373 690828596 89047998 80095206 688467622 96316296 599589891 179770077 526629096 835949897 391760543 547926689 24143312 640306867 787841606 708024869 187406754 197353767 944949064 195487105 904359231 835238756 416613660 933575703 503246939 830065670 890731052 720904863 803784730 894641052 605022389 641785607 217725261 188366713 217759122 816084242 407454080 439023746 499706438 189702210 455909544 64379961 501042574 744723707 902420769 30180694 500952912 865614010 105810939 870168282 16061783 161435838 630166682 117014382 378544768 896351214 970771798 991731023 597109024 557054579 173174285 881270977 659199082 226538527 533046781 528504914 550631663 950366937 771197967 911976403 59542387 428094538 491334836 211031863 720622491 345104126 285418655 929202800 879998105 632647357 780483005 193112947 648828378 345318081 447244327 892788786 347953684 949457375 782429828 830333755 303331661 534683251 672869198 573542733 687813188 544679883 874197769 311191132 222812373 222292894 185184638 88431337 310511550 655177034 395728027 907308971 302143434 608458460 67599433 410698982 617013042 319492466 249222485 50127383 589624999 927681454 858478764 1722079 201501655 31480917 138745689 647700583 313760999 674681771 118185300 448463263 740908668 411425150 222655110 992717343 113061478 847834953 77398011 756711624 174567134 18920275 112820962 3802705 805031273 191751199 219557453 62564286 257122831 392030319 151714428 318227336 657557672 567284582 754161110 592820251 674133630 274658025 829182826 381503917 271285043 27763321 512933824 489172928 92607266 371931658 824442106 983326421 846314985 261624564 651888920 451710289 118587938 23246476 223294597 461350373 930795574 613129689 620567055 237735068 878221387 733927577 123129250 838049838 790537562 879037656 285293129 872526474 932482888 286384581 604846183 841958601 453439820 643839068 737467618 133929839 553771252 671561327 79672553 133489741 948769999 422693337 798108379 800832358 841224354 913748638 631600433 640814585 929495360 795746124 207405000 201219436 107100742 569389456 306307182 162234961 541656256 669063846 313480078 114724085 930922437 332806591 95924720 942426393 143091020 981329372 368832019 824726884 761238732 658060565 785360616 652574700 686920358 628042365 724341305 635708791 295978973 147601984 877286410 950380067 587999166 520949842 342946435 596127335 412973991 522917406 893228460 403880616 596826155 615223213 597384320 992761462 917307929 947530115 258406235 154379967 299867917 291321279 977796229 661647652 810663694 280441792 132170790 90918355 678166566 661000820 488924125 192732745 614064650 926879320 3956727 745917209 648842929 638458661 104807231 315013193 882119843 558592286 351536037 422734853 180398488 563424196 43477261 406017009 585069603 310082348 966629184 178370500 352296453 561254754 887781980 285779458 130759761 554077589 279406365 544473208 269923709 4058545 549885476 814559247 225478224 142391317 937124381 633140442 41952520 856072820 34302225 116303677 520039780 34178857 259282372 153570250 386359375 818859848 548816399 692675900 757531480 780352200 426429956 755274209 369742114 731006865 903251856 970081769 776741277 443004182 759334901 767255330 822192029 938725018 893397543 208502643 741915806 335232434 719962561 780602328 384904430 19702340 375641719 582573015 928986951 46640087 975502922 349844504 815984278 220729764 107929222 404901521 499012433 369307637 103789138 113359043 247189087 181307082 331674091 561787605 275724601 135775027 664409893 305864642 296449737 853147982 859108999 928679801 226752418 163841120 483657274 327394708 899472457 290247636 642319731 721760321 921273600 923718188 796504974 761617835 600901573 957087810 514875836 469911575 875944451 211353510 548338525 453344611 827405089 70393114 954814836 97095224 539645571 449875020 77841958 665084328 77111487 741423717 922434416 834397884 470931904 15215830 286705134 793354113 469682585 66704468 258203896 981797515 221783238 672912085 177170840 580376677 370930767 102493982 257582105 551706454 820778880 647534529 255501615 456194163 669892411 619351146 688420828 172242197 925242899 792577557 780709113 604992391 345576254 243850992 64206431 517344883 229932390 60798354 932386631 294542825 534520456 629121187 182168318 45982257 351656668 56822202 140997353 685053611 737099587 233363170 723152959 419715145 929914481 659535150 439324114 610154466 800917887 124351952 247984904 501916788 941244466 677264180 576561695 92362645 886931358 42256539 231856482 267127243 236985195 955302271 486313884 786308779 608942113 972423285 733826638 611961204 289389007 709390250 521336674 154626601 693845334 70859928 965344554 957666529 823920294 162588089 271746443 553822584 788164688 745636084 415069437 392229703 215130317 999518911 998037054 985943940 257269255 976942218 859009119 315938652 995490607 831708558 437118631 630394725 442440685 125157330 782084100 487160092 724784286 474719739 504783466 35510230 869413550 353325915 164048982 780934504 951898045 326443110 271951797 10515008 899679995 393142107 404934175 490322759 281384284 221946148 154114404 51482188 128243679 196846766 457492977 239433346 889940222 187839236 603523294 195454510 575810442 157584388 106989876 954754881 175697245 681482113 790383419 724165792 552861304 303256915 183138053 927410470 124265245 271504175 712829918 894510802 42820300 773727102 956832413 271968932 462665989 466317670 598620581 367091021 756345048 434057073 645777739 323169598 594182561 585424289 679231548 118630455 881500709 4944843 727860388 279745138 286680942 592408949 776430449 918393747 244226799 296026126 710007628 85587721 653580733 19641001 582232526 450293308 925813591 667749052 610526167 692843768 149900100 880554630 569570426 859823287 788862078 404912976 215063033 764629419 628048187 170840750 426440236 697000954 977713375 521442593 265701274 424928998 414905585 458733988 935508840 131449896 660564130 67561594 919666510 494654208 781574218 443426710 275251054 681413672 105767302 82874640 271318302 5843216 272735032 626166733 851605003 582580602 598185357 851532179 192341354 738846607 117661332 4533491 421510246 438724925 498533438 462799742 849746663 765460881 859038699 66981772 131167075 435426891 420819420 626941296 490673538 666648068 956076483 617994842 291445183 687295864 810820701 585549945 259540743 544614226 715715670 615193040 435331114 886023852 791235908 267178291 675246744 402782283 907343970 290401353 23558365 183509603 530073079 328006165 836775942 931295198 730852775 434018952 393085831 490529757 828961412 273690419 831168881 108176479 432048794 155453354 409954909 556346504 560336720 201497631 771049137 778387481 84626150 565326179 801419200 420489349 539148564 15331619 901560851 719492570 109772694 786784235 526241005 257270531 392588895 877396113 167243772 586222918 624679500 409910962 397151657 290800108 932668865 497762677 44581217 72040328 132438721 143456675 59653295 482289926 931134653 331531767 244780673 647747844 97789916 873246546 482792133 399202208 322130117 835895527 10112432 270814039 464986922 967019456 369880388 647029736 988288940 209663427 863579817 914955186 82161050 474770644 309372404 962048262 993172379 241503373 376011480 688066915 363372527 63456307 357256887 285754130 405982210 677403626 58405637 274869108 280424931 981418669 991627555 897793099 726843996 83438652 243343474 720557532 504483043 136079360 254608713 337132365 828264450 651570072 54884545 750058543 881837623 423150150 926703463 57645804 39435220 978651452 254379906 956683416 185592926 794328869 843469237 211510250 751671992 569116303 948680186 288596613 584505689 133341357 785547829 666840137 6381791 442336577 625531697 54318932 415532805 195280245 331091942 134674862 838696457 914906500 930535336 82134880 796684820 347118966 226751306 1656542 395298793 912381563 489227889 326882538 716449548 9227174 771026323 783932727 565020496 868003876 277499473 998412869 176260897 456812100 379745117 589463400 731074219 664627623 832829407 75165882 489183024 846092421 691049780 553201715 418920790 459400477 341224083 72882534 153190798 574347584 448993341 503961227 777563056 292469226 605118052 935132308 854339056 398012030 545226793 628648611 926112959 372564179 64358167 551451273 465010374 59018479 41487580 520105978 807959741 692411271 783431907 490745436 34454387 700082416 624740533 708186742 80030668 772862800 740825520 988332873 194220668 189368400 763278444 207538566 438963644 147556227 4250235 38007777 538250071 868629503 630296656 887586357 463591307 330412152 631148600 261852575 193345598 493693541 914276804 459921119 899102936 300316631 49873543 427317379 151502738 350801521 669841751 568637448 757344071 306722381 658448624 848128716 37413621 494192217 552188689 990106077 155270769 534291748 471512243 521461335 793518284 657807573 548368519 469388618 687393156 137376081 387997598 802338527 327779903 144902500 768107394 760663884 769543991 590924055 650628696 563066591 152170302 569253435 985610163 71662721 866305709 477668474 52022209 862608866 19103246 844837788 978623780 435905918 396538885 355863583 745280129 507184977 289082707 755453535 735090290 631042851 187631999 600949998 292580420 420705019 794686524 973604483 676849266 874575984 49080899 634428812 740708112 197178714 465723005 440258482 432340953 363066646 908951814 39999685 492590423 193261017 970797874 425916660 432396492 157556705 723271608 185362988 189848605 576591245 354223812 330973973 792693133 592952366 490041997 386233968 960344700 944031776 737076973 929754937 630760043 686064816 558477500 605905877 921332563 498721482 421451884 626482516 17091343 957752886 147563668 902516851 116041811 472960551 847193180 103708900 669334122 929800714 424804785 366539715 300153639 909968281 425276073 8888678 814935848 91079191 448111615 130743539 768155006 44068706 278534374 904483242 594103496 822827101 331038283 454080442 729010937 230915417 628407944 722078735 278923700 75846173 689702599 293523709 776136850 948366712 983750899 100227349 251802025 603031671 833496877 484144831 772781056 696470551 498090572 27622380 901622217 441168797 819958710 672931340 829234961 626499008 489954943 722221074 759070730 700934 100423233 569557583 795226431 845732092 299073736 160164793 682054059 384958931 765522479 832053045 568088462 336231023 659006713 984177025 279510548 517225024 192146798 103205069 92490203 355096750 543845380 536448077 654720257 716105607 190203159 531701179 212747069 355561154 255828918 94708565 529780471 380128819 283557174 529802428 667056895 602896689 608627476 67877203 791964457 143094401 852196357 998113441 145009181 107361559 476442532 404241744 311426076 667194743 748846390 733683020 914412850 448905156 431076177 71990746 5780348 860054617 618646840 221103395 284692200 405075108 769372887 228664575 661815802 147557008 535851975 218158630 850846267 963187144 329049128 341787490 584013027 10357058 611099363 701082854 165909041 291186040 852297359 263788609 242432883 913382451 819946380 418740544 810890537 193718065 58735337 577295559 558586405 870349231 358677735 680345887 631909169 221058777 80110787 603533004 162282672 488756607 170791505 820368137 802841475 790183996 643359439 361058303 183111026 407635683 850763029 844919079 957154734 298075742 874832865 611236479 186675179 24431157 339920108 944432678 164900620 979771525 864585370 729049664 294956981 343159828 205332894 468798565 338453790 387193208 459294959 705480997 985360048 546091254 130194514 757731763 717885447 101604905 995638219 384936336 935932535 700806471 149839120 203994599 810193052 510538965 673318002 116745092 6581602 196198737 656024634 70603063 896329007 206708182 953718667 859339602 365455851 69474005 853235461 517918918 501348090 856348238 520118684 358554722 954942047 131864175 846165440 858508054 819925572 378664856 824557231 425665387 185209207 332152893 10971310 513742580 508530581 806275937 398426036 915092606 256454336 431355080 476457568 770660712 70940846 696667289 844293814 864755219 984075495 939890350 227462336 240597169 930158525 662799589 509363019 168718850 304424748 723253543 184925190 36131821 367086799 365769714 325303069 604670577 998189293 424601279 998848589 670885962 960315609 637662168 301719019 987183083 60521181 101970255 196380126 554573151 780255931 619899638 345490176 687832090 670397461 997097448 244482910 243035154 202301938 853414468 915304085 215964220 418807230 302535009 793602664 975924951 499825062 548676161 155207721 679167642 703787160 745214970 330982133 508852913 241095514 89255001 667000858 645818244 724160744 992995686 719987116 759030182 818060679 582454979 805858295 501183572 957808430 723685804 582449318 236277986 327783919 338734448 108074091 555727449 573127480 6670663 351461818 199449716 67251176 261558907 848667366 844137637 821810351 467184585 429116920 763648101 626078772 359902991 644873099 327644349 579932347 422321976 260351939 258272671 984314038 937313237 390070295 506764794 25724548 141603939 315087136 812864785 959068834 199670879 170456912 278741944 890823670 638802434 754874486 9732388 150785119 104474098 554992934 668378076 600798777 482435508 137135403 105784198 351189018 645058392 922780612 860237455 772902868 872243658 818740748 670110306 512836719 693483530 577764653 86476330 470799041 714767870 538306101 640049495 335686665 963268772 842696722 207451766 566194905 452610309 293808017 115447736 297361288 118486599 422485516 114134099 693006462 743910066 939103050 277183032 938361438 279642325 14942905 344874474 200103129 417920171 412362702 734199660 539653123 379244081 744040495 588643949 815456732 396329314 658286324 152921898 88475067 345422159 818494416 889639732 873042040 874865203 76966892 237243629 938363114 378119673 555227036 201481648 428205764 178431616 532862027 126828288 885648375 736625378 339894157 918892602 426892107 232370116 517755586 479520773 163029342 281489688 922748493 780529449 249516416 498358678 651331096 154507212 40083730 578401661 177318352 165253827 293745162 593471140 92027094 617371202 784952432 957880675 867145653 506450523 695207588 721564637 341003970 838597451 789328756 756250348 920341165 155012520 952254333 594347089 496086776 240544262 477895405 492834688 190068186 966598935 58959449 3729492 235949853 860899878 444986009 700045263 182148991 674264262 355896605 838065065 59387801 224144107 86560582 398290322 266451346 885068223 896023546 666716222 773169468 325963649 800897976 216479967 24598739 752221847 10137278 226537721 449207372 31707484 64855247 710341685 242275144 683531078 997172637 975808159 716560940 131046776 234606563 449302617 12486280 963888037 37673393 345597041 754382917 745315746 194219838 780448712 891664400 608464656 745886144 859258671 754420376 787212407 199577142 449987953 206838164 517958907 116791154 370418723 589374478 164945402 2315158 424528355 123461752 227072006 489404276 538624316 552778438 203139803 864579751 710653436 846605101 312104467 583073178 31179437 246937641 745435288 752216130 360994697 191795583 837504293 321694940 879775279 821164283 443869252 257977207 63691126 740618825 418122907 237255865 469799677 766516736 750961939 143134746 508128259 38221002 439667100 630934987 690138680 780198648 159478491 7184923 920693628 310142535 777774367 452754866 845556581 428944133 341304645 355415984 265864701 964992548 867277289 40648870 544043828 878563830 894923673 633188670 75020765 728480694 656939518 595443802 814441863 525557393 739159250 674653091 30501508 706486898 165843544 19164963 531436321 961359557 583137018 718159823 766389257 586168666 774376537 114254235 648463689 464154956 58720490 703540970 218958268 353810544 237694508 512188799 263794767 796281136 978607201 865163827 292013573 774560184 525477111 560062464 523123270 947991980 468269695 141016884 415359107 444779024 367454584 706516743 934799233 272545056 222930028 112620305 941946585 107839722 747782902 389132046 344864364 293449955 838540914 50736748 639815369 587110657 453926750 2622578 843254473 556756449 572302 597631183 585838109 5514067 780373191 871606626 604835163 981997620 547220985 338703192 123498067 68559671 267723087 52802192 234063244 26597744 208173750 631061071 39680841 28253359 897885008 318254845 669272003 42759286 585020131 267508999 647877144 137029531 788034894 755318696 219439437 429099303 937302222 618608126 372681327 671648247 296753955 817488971 787584699 417245726 67222809 640463243 86959935 560430867 858210722 788797713 989588217 819604561 274473769 897648739 71184851 716132478 51379547 116570568 691729610 613542593 959835449 394952762 679088674 207572223 359926088 846091660 272433447 130165594 332814932 933870507 624084730 542297834 106465982 455418444 935257924 751099901 139315625 856546722 185699296 808179030 477881894 143708790 16713743 835669894 127101780 776756028 202315962 766667891 47598513 461209355 22145764 936067557 758023962 905556226 822646455 622712495 524168535 720408243 27606740 846801288 353984100 776238911 30268410 949751428 289825362 295694346 246393426 37274986 832610243 614303722 161529045 862500816 625048156 279486700 828994771 601235583 187326920 420279813 159210003 947416453 835153103 97196020 582800432 216865359 808118874 82523005 975751165 189027289 545371342 210839375 723202107 537720169 914887017 944431954 953554669 145130243 891037874 177042363 576065409 749187371 896761698 727464511 980248068 674867527 857356740 204017637 85194779 479096344 948123765 949042911 704217899 61785486 127011493 314779743 30353 605961308 512399748 435949192 135974644 987178729 317328814 743661996 36069427 543511034 508588267 851120011 954574355 321722464 818457074 470230342 477923105 256589718 83001029 448964246 287448321 65538186 295273436 435173849 265415602 894865905 84708239 156457548 82950422 685656935 709884458 379865773 718365128 727139655 639497361 359879221 510532256 909128371 250383400 855971062 510205160 50480279 589451520 386085485 761353117 814651629 982014678 124620434 732445512 253071478 533704302 586130780 903080352 313936560 161191206 580545515 49824547 756346860 495931713 83941410 698472525 535020168 922034787 882598970 713199644 439885573 187853187 168167680 842882955 88716339 498546149 782106620 843452707 278138311 568250047 211616251 424593689 589616867 63519155 358656087 591093017 499972601 3790772 713912346 107577450 853672741 403790757 584564418 955946809 604830130 752741323 431898390 937523489 856960625 989998909 29585308 272107166 119940525 378582208 90147449 105546688 367396394 339268733 990758738 771638555 940941593 497266009 837092514 34575019 44797970 749251754 739903729 700051831 630730375 394068636 235936632 849071298 163850681 585587918 70857664 595986398 991027159 674993541 471688272 890420581 782874811 711113768 419623614 140509294 894780243 681068913 63669525 552004671 953667522 772772008 597611666 521463943 854915688 490647062 321959486 811007896 868717263 813666059 17748979 222682611 947726214 188543854 495181482 134988461 787064305 291776363 883058638 314383348 374081980 724234053 791645227 843375300 987824108 342375376 564903007 987675497 733816298 920970511 157746291 591345914 856573518 275513263 243472925 566072286 501050466 500698635 142723919 891276266 93775471 767285619 968691929 767170402 423963277 167101333 603425860 13342612 181394010 738925784 273294713 295797118 786388010 693416225 877619111 611463486 892138650 910421299 718127723 717304407 408184859 24067876 846822355 168403395 902343845 363270267 79897599 710917767 891519534 319355972 93569146 835420115 776735456 573738510 940001789 945115623 816714550 587295114 631490447 222198384 681616921 470349418 158978143 644750233 712054949 39252535 540707138 71202244 551015861 494815507 194415989 285088842 807377300 353076204 968540998 939067031 804589884 471599598 419473365 984826721 326320581 233651963 461687746 257350106 738201562 527322472 263823234 981377092 474751327 385262098 168477943 325017798 118255935 128635759 745560349 317448305 73017475 583729668 809185196 70667634 471170343 588042189 706895959 119693193 933523410 894377137 560787194 538558535 936839172 889120631 497072859 223553779 648127884 66666029 356216390 903965213 152925854 727795877 564221362 582705393 201115140 624659600 198595569 810867445 471325103 877079383 832246775 491548781 482509466 164682069 487183810 174979256 883891890 866860851 824598262 205909079 677983289 730262531 404596748 644368557 697440979 630353540 410657105 990802944 568045097 374978306 518349068 407772169 804897092 280583683 466704081 917890717 680157166 474600975 566643861 790101237 335332639 216710995 445422288 947929046 271254427 338023946 78972177 555016080 605692076 257808432 902964847 165693990 782532701 171371662 964300360 60319742 683222766 837216101 514703018 315580244 639765034 332179714 844634860 138002059 234126800 814466208 32861337 475295543 635963171 213828280 25630927 592804479 595786918 811586327 101737860 803242115 548728954 671872715 753767592 171416460 931575530 978044566 623793520 242502212 203709593 866057714 831628496 583871126 724199162 218038011 245075250 93020848 82619488 373464203 805995574 173771457 535564300 409157417 528336791 669061950 679786166 578541797 72009675 143772225 710698673 6420272 945703655 778702637 661946588 320753194 455859442 841573704 385767030 501489039 23681118 200245688 338007552 670883424 880702482 50030408 684460995 194997669 934086354 410811133 599674962 166137658 548906491 25914852 783945972 376473330 360765517 214379562 252545119 42499632 27913142 764794587 336234937 611829261 273627548 645130836 384553515 871632850 577570878 933672242 102734082 359396735 398266489 971883899 869823977 602405569 545933733 788211009 778001713 609100479 571258899 786658123 448084463 463421610 239910141 588277267 18629175 871078051 875214884 941779916 557803582 531313703 642699330 230637119 764689491 607053983 743022450 640688878 593044626 864452692 528851930 952486667 362291692 381220808 760184496 837331104 171655592 600792564 703603227 118874165 94904930 274784012 950431055 970450580 659462163 978270468 60909151 592593508 389293724 143933519 743996404 679434690 67146430 392099671 896010924 454798554 899721134 800657389 908328735 17591291 176730548 432550474 266301578 214722537 596328613 473735465 792028077 800837087 615695465 409072081 630877728 926589016 396854858 996023572 328364139 205439892 332869540 109342447 934320721 557755275 841747174 587272932 44037220 207344587 7184358 839267712 277222893 908314019 241965752 655922227 529900813 353308414 953842564 712140392 146588843 424569691 603060924 250869586 931383363 603949597 835875936 347004890 331180261 638248942 891667141 424630564 706046039 179251983 61584937 136285237 387212969 620091272 279495813 779440253 613144306 982916332 125033622 674742421 557288341 773499507 758216205 974412948 833775328 160199340 608998590 627803814 583925215 53717514 619005529 90077646 898539193 459717485 695606356 422161002 754727076 83651731 473364580 727116420 82260356 393933547 32214154 397232721 958164421 281555889 13604051 881128185 178896465 304621331 557271252 90158622 258654842 810654417 991382402 355007253 399381149 715280160 794525697 513525932 215994396 130199756 907347147 272917673 555920001 469128979 923526434 635758145 870697379 223562939 302762726 262571082 94245823 984112921 16517331 163475474 605236427 101114313 996643153 86491502 460051647 670986702 901042265 363367657 817837891 670360783 779386984 272841667 65808562 107118637 551067229 824565290 305655368 342438910 926680860 412482029 109854540 146276802 40251273 114026094 715009626 537094875 579214147 501274093 208613125 347274616 224885557 489734409 217225126 703164351 476128310 49606250 757843789 958828729 876774247 230698751 325536981 751914294 545543046 499967655 803028614 725941910 211636221 62242827 259316140 236225250 802690786 270063782 267975683 495905921 239773543 698236715 792700061 35300131 887739562 359426864 326109841 400321823 658721215 483810788 993784935 65572411 38680682 606744805 113703737 36415578 206063690 28390529 124438778 883407403 565526861 327426908 295924648 213268477 18171496 877272955 490146960 770944826 986518531 651636355 677611684 114981933 781832772 68063368 242718739 441649029 467559889 420183845 101946509 215290753 830554973 667845505 389480257 342207347 900811788 612439727 582496854 389352654 614335366 653742940 511275158 945654104 639549712 187767539 515827977 163184974 6839483 62649446 646947070 449501978 949247470 679216508 577212703 307442927 123282051 579546285 333656841 986611422 964445771 742099750 884229085 151943370 153011463 595223298 242990362 138268821 846883429 422652004 232648866 306735369 60800494 249467009 81184087 781028664 421779551 893386950 999834139 918797934 982789605 537988458 265755956 528756328 504271046 203159838 982603469 342031322 893044668 686142806 272398188 907473245 492458318 466921624 951737373 42313754 842983768 637677526 157241200 837146819 564965242 15141964 995265811 68389193 203880161 860958262 792687022 710747268 732385840 849174068 848026916 565231319 860759235 649216249 373083615 67239077 328329952 793734566 622567236 875466780 594810322 899963114 634132290 748163102 65671482 940616736 600677291 327346897 709079945 403544575 773001107 511160047 655365041 428226870 970660905 582154378 992777729 401545327 523989933 382834158 788273172 959163943 482367629 292558105 638982911 312870998 82738373 391975410 135782590 422754070 393764394 971456711 996461064 305302012 913886926 771614506 970964058 496809382 156296497 646546914 935416415 2071786 593334222 604027320 817887037 80389847 986164780 259045865 293804326 155733064 736204271 670707379 150684271 964571783 677280403 346061121 612284405 778303018 961719198 618711347 467224908 272550655 635293784 14431374 533437962 72166413 727165689 627101891 639102484 359458007 935788191 118147171 968500213 601800447 969978923 529323800 338983007 385438257 397675192 148457451 646817823 252698762 434192929 508425887 97416716 199122469 258663304 923146495 265819992 571856556 5165503 655984342 498422404 942119831 31067386 641711936 289977819 244511213 865801342 229293620 107421753 120940148 444768509 169934569 649516434 544340177 821518699 774957819 546655858 173258904 698534137 42170900 729750090 122731441 867795514 451708016 636201381 814123653 616566292 542931228 110697337 443669819 272399826 627985563 202373299 798176869 147794904 521736997 621088870 630879988 14719129 262940722 712443822 48200666 756354584 339225165 740926667 265456886 330195645 767111499 761041143 84917016 423951000 990526818 74477323 961982558 173028277 744459241 349069466 946116994 878474970 691523777 442301138 881780579 822922844 129248868 171140419 940924889 799146031 241890713 960095804 588621195 973148184 599368428 74296005 62415225 309494242 466429042 202212346 352201277 442666982 576207727 352862863 733331406 666004327 357249412 406217428 107770199 58909114 490486169 24169041 848969816 841854701 556070408 938029421 335943655 275064587 633121751 176044635 101454941 826241904 87270826 129804074 291821316 893191072 257681781 444957891 994440362 718227524 986798763 771767385 103560284 83479442 522626175 748271319 392472025 726180785 478644627 764670409 718569584 568079452 19402266 147722113 16091836 527510883 254649499 673370332 398692154 807754375 331211530 624165683 687921543 667748094 691997152 413252825 886051191 863407941 723610760 943383658 761788714 310768812 372108064 655127166 266695483 700859589 338878366 233123196 56406227 345115533 516524517 417128388 833103563 825969788 808990806 302700443 970271587 370723562 650492893 508262545 720969000 693692925 903594497 242449862 882306367 889356222 75133324 317020622 178782794 134489327 255677537 956663516 825331347 715894168 125325347 149094919 21187476 804048325 37068741 223204224 817670615 381180795 251223892 382753502 577982516 697841705 274173209 371502527 165763508 150774921 741891857 875535263 824722471 897517730 267849473 946106586 829722910 625935696 282239468 154086826 426017169 597601122 277676214 276872254 570275260 848272064 895903857 394152848 738091152 529403747 709408401 566407074 306375761 301287949 928903706 834076141 160256464 990604124 902896268 875265064 927529528 844290634 804589989 998682381 697341083 785746121 881632016 328406181 233301706 541828354 970228559 103912571 225692240 587552015 183681646 721393887 514182061 843640872 267829206 524893797 265128365 399464339 766063034 853705062 840130206 163066867 426154063 923998085 333632930 763650226 479251718 514855497 391856795 930098145 255782168 734006327 720657966 797328490 384297976 809796734 952159433 213004285 534797980 287010459 916392038 353802170 817277299 562001100 979965583 728357405 44030994 791727117 726353856 320828546 378462286 883792713 523283861 432441938 128028323 10343969 855661352 546124578 467610171 302955932 597355413 82894400 308146888 495716881 626905717 35911147 373704904 754104233 87985466 639648700 696560318 764746751 304114607 182736030 950145012 749335119 319970816 552649842 87807420 994162182 140777137 854823215 212028990 731858825 948558085 311348546 283991697 923256681 729610663 767039493 448526520 670784145 336719492 585943732 301894518 878151073 345507342 578717691 252254320 354644295 560409776 810219472 988196861 953548565 588758988 785745708 707748570 629082779 37563721 893965996 440208898 200501254 41811194 35198214 824266865 535986362 325480842 314077142 309189103 286269241 982592952 22972446 422890581 681666507 928120634 191793370 271046463 371581431 107278789 944733381 800015690 381882067 569334112 555674081 47520894 311698456 95145824 906331930 122925869 683577465 889693163 877391756 890059717 210515106 221446602 526636155 802300220 368560050 590422945 61211781 66694781 709360994 26041952 995629695 110399386 382271640 178572708 295212826 68701878 445249246 641462337 75098900 697664981 892647377 432620593 916618290 651668561 971717684 125612078 600337930 748373682 286748600 145616637 877981455 108588887 639781520 462223256 373026772 417678171 128101598 538814994 208514887 112662638 141005554 923962119 674664561 488352985 749643751 924842100 237498421 861025432 94251785 575270898 619045353 123546094 738206029 788790730 644902539 978428454 748256366 508781957 127482480 87049666 279828888 281951235 62919850 613377719 549569345 882850019 239873813 361125854 690251922 807234551 962096063 899852049 348104157 142931718 595671284 535871229 579719707 508855964 255146428 464103771 372124927 857161197 323389053 460017306 114202113 937119870 742197697 287671059 177562806 851403726 380882692 338779674 304838005 16317692 452337647 507920661 444454461 885019099 124899609 42737513 657845501 405585764 355583257 9854781 47444967 389737162 405323719 273266760 794585520 641646037 537851592 944794451 198797112 231941552 111032331 387170947 288945319 114514547 442957907 669224578 242813172 53101661 250172240 424643008 46710135 600608925 308600225 210826955 915479697 636140148 550717710 854589523 353242211 212006850 445398297 169732485 121108434 370428323 157541552 55828112 41091396 60427555 836077234 939848739 478965415 976601925 2667350 760326795 770343362 222847337 44250179 466911617 983313307 147349140 408625818 735212598 552155635 236972495 331779481 174558473 628353962 801150985 517119449 774952820 182465542 342198652 393352269 86469107 511740349 770320659 369574907 948782063 446063911 834477332 370768501 591666104 548203777 805140135 791509161 966448772 759969183 39613661 647300142 888995922 238775584 195586171 337040612 726448512 215724512 107542949 478735605 941140029 241409070 849521152 782963811 918361694 834175292 802129682 101956558 69963910 823506842 863700929 312633110 705610998 586315483 413740974 501148953 779420155 349692577 243679036 697424801 189129602 567805534 842004637 706689149 861837090 238923649 558837552 759503537 60749940 121561267 292049041 833700647 958001761 638616158 517801081 669266179 82264212 348547576 834218252 561088068 459579994 410693137 60558777 484670982 689447814 514045099 266720098 78718263 146036828 493745736 584701609 755533408 385967484 102477568 705566580 683596664 286912337 659516032 849385833 840823677 652998399 399213314 279900588 625649847 61795034 308158716 152209478 205450916 80176174 629034097 705669456 958792593 631748661 402774459 705717378 394484220 472101611 780294864 208263262 726131972 470304308 145730539 785707395 57201222 745306968 503908012 19445936 132303929 667547594 488669373 479032829 43789781 105970183 613743136 294889507 671676444 917668608 622819370 839861888 698653006 507506651 102566940 568167296 789280904 130951212 937898151 213831913 121324131 883999884 329913617 115219723 851741042 339930283 219826810 451577727 152951773 992568959 865819590 298499037 586940425 414593905 3435249 30916170 638417463 139049959 661765727 956293888 24979397 725650105 256440291 40908022 724623337 772665748 362115773 190034776 480941170 860661993 913895746 264156743 123098220 153522138 631742981 962235378 827885835 831695416 582843456 641760785 931497827 597259202 881650790 400022261 137163221 792562080 846271321 115670566 698751772 206710290 958093729 786146404 874264673 537438173 556615379 251037342 654753100 620883792 12789163 422145653 261929364 195125187 788419072 925755310 674590676 741739620 4575598 696835293 694514232 42905203 86697441 668763265 673126493 579830288 478728601 662550430 503985334 67800619 325215462 572121886 516894483 931271171 724843951 739384220 818008477 590023470 29111932 51621284 212908945 821762608 650103041 396139715 851542444 351836721 258996535 444614845 448646206 588681844 711292644 812542464 773336074 466645945 746878125 906884936 875872183 422989953 556591995 184470291 79140798 803364249 304845526 908835107 866167370 631207485 898106017 24343614 362399947 230730582 515478692 284094964 760953957 325632151 362923932 422740781 848180125 714035618 149335088 607362555 11814376 11975407 405895546 351346489 25110265 779639644 52107871 904799597 270427386 778062752 499408401 890444914 116536662 702815359 889916126 761491280 102028174 489808964 30598500 737498933 143093874 135026374 182580942 237762804 414430908 568089408 911490254 341831502 613265189 913520877 330256726 864545633 273602334 864525705 807060705 440981481 232501400 642226723 789758975 16684377 947180342 437906089 816486296 129282960 69400738 388135980 488646108 422958026 286893385 867203792 260448924 848027594 282205807 389608617 93832558 519576759 420344466 307244107 535867098 685307514 582089757 204283908 10739411 351062791 714312263 474702174 210890679 856806200 316470827 141351150 986302832 75858244 605118685 944844386 256145097 261000764 625870900 8139710 227633385 100049157 750973944 276593253 456937309 43492299 327491249 266030956 267002127 135855341 541774793 155041178 579097170 106735789 521121255 74261144 329091110 446543906 800614988 523075149 544755845 941690456 986017520 523585122 465705038 693938207 653035275 681028340 413418116 900412112 229506066 311669885 617102289 487872191 114805176 329171626 388272812 872450803 553150108 280270426 547548335 194210778 414128375 948880885 107726084 850587141 134113846 295850696 24623158 363705731 509213135 927643276 93877218 954553447 965728467 553364333 340340119 57308610 314705309 775500330 599617459 37459885 546035570 275408904 330862338 920967941 545989978 183250751 735687418 38605475 971869902 112438592 816393421 631093042 525058596 734331155 127542930 727239218 515678171 481985053 575721793 755781652 858816209 816612384 866810271 180785556 740723620 554105653 259181028 678647576 347016628 658587996 705316485 236228264 509171188 17299132 704675718 537610713 242747549 703487580 371055546 101177040 504034573 41893681 178628560 246028263 355612483 91616580 212229560 565965638 408498546 720624787 347963815 106488773 482348396 255271167 319245161 849406227 15723735 326013628 411116185 948806451 902903676 139593361 107021103 704666008 140720912 687450723 487106794 33158548 554050562 399223710 919914417 700531432 27437408 808037025 360436308 558791340 555541759 640383119 294459472 682279850 13213451 800809901 644540374 263873574 113658949 828421009 476551080 378326341 15659933 419765473 758456687 644401151 967134065 616767326 180003843 514132756 200292268 724073826 79342565 78629174 98571377 691997678 134491862 795292311 908978234 738706923 418561458 882632212 207219052 797110816 58352092 824661071 239529519 604399354 332635888 386993270 248991149 416777374 21896202 546883660 676985078 73347437 407386086 821720186 222470515 234557122 699625692 910542193 904170499 205773706 335379103 607091555 849332299 898391734 295152374 206914268 632534127 191887556 268920887 122820062 346049042 373907484 117478090 385131222 392890540 272519446 906974068 712807874 743165374 656131682 704576798 566590958 61560627 688168946 112247250 347330046 227614254 466509666 571602875 311258591 38495923 471777422 976747760 871469349 640094213 347030256 184949139 272639897 762071949 475262935 321101982 268770431 447807256 420567981 411166656 423479535 53659149 904784794 451648944 18613065 57033524 661121315 152892364 631679454 127578018 246725018 1944688 935888973 95806858 507301292 642736137 891217809 132936847 443573600 958581145 594397544 443000955 690008147 655162394 451534921 179669211 821750824 176880831 297047406 209376710 641696388 613934271 402643828 831911498 862710997 141360630 158324458 296420059 970595556 777913814 595953625 678008596 502085131 620357011 28385302 35316854 208807946 138493374 806687402 796462712 602158024 22236434 550651814 853072346 595233342 753176547 342611424 391274631 103125181 610781461 185434545 312126757 878954838 821312803 368960866 9682759 756278002 267529477 768916826 220149496 820631188 399327995 480658725 993793984 895161205 126153235 45794837 188768389 564227291 796605020 782309016 498384277 974117902 590173060 21042938 812596965 879284168 942859580 532544259 64274167 606563354 184107622 711238428 916718187 990834567 662132321 291398474 850226808 533788931 782721590 943599845 962843919 571279344 787237236 7533601 578794016 33869669 905938284 32230456 814950581 577185744 680994181 223163177 582099752 516377264 167322741 652878792 985535239 516330892 894795901 87829842 412108982 90137046 226694485 356536879 66642819 665474603 142192735 221400522 600976057 116081416 783766704 533914389 79506697 957887854 450139281 588174348 221877078 548779649 454291948 907700638 260161663 675824418 146998105 817934094 908678537 841677913 782383580 443119246 550692921 867195579 457390230 344882630 928023865 142925965 989156976 267539346 588776268 101038226 378807725 516407726 59607003 450204545 512869848 845257780 558635450 540904896 961944409 837622367 34024426 713326329 823856650 425392233 942336223 19575915 485206933 835965442 768509539 733044244 967270072 299024509 2692571 742698394 934015097 803242291 978562132 969347562 39958318 722787116 87508590 835197739 455027034 730240417 226220339 14055030 121263288 169731124 973646690 902342590 619697142 710787682 791912114 610553727 378273148 282089785 736605587 254860307 552577495 731946105 957419809 12388089 55095574 727516823 968175744 233000860 937035151 461979984 860165459 874756839 128604904 330658424 117215308 479383785 976880836 839799572 452814418 75905357 457241146 416800735 712243412 352821949 838887009 512322978 385008942 930379079 267590431 344306630 270334827 413325934 570694133 771169920 855791281 887722134 140574374 72786553 563347812 829865720 624324252 356203378 857312664 970816042 767021563 159964555 537744470 742381988 536279664 142213165 622131036 832530661 578964460 323410429 623163083 601684241 55887962 815129004 311260582 329493833 634143816 644155118 497575038 541492052 348055669 782038095 12186187 357261781 816367614 608918431 44896873 735681975 953443328 69537997 437716218 242194640 143748506 948514636 119782328 596279207 598280857 954094329 769142473 968422859 115576086 154968857 812488415 730231183 662022666 414061712 485774022 420864552 680352145 432209254 431593531 638795893 508844860 665442421 346690175 902221468 875770676 762327286 62070088 476483374 358879212 311251272 473748556 962302416 615354281 29089727 666041753 131305966 97282539 372907272 188950019 496903429 918735328 412306001 436276208 257291849 502760009 467752138 245638702 573222000 659705592 403088485 584574032 522094792 813722511 834433256 671029023 405152361 165451530 482529915 74142234 810429700 453694469 709864767 30235767 810173107 79249356 894143871 49793229 757586747 535054306 158749085 683314069 228938463 601264262 492527509 117644382 814680009 62277643 477575969 971282738 4785398 358794608 595650185 796270911 546828920 33588928 283281075 241516507 698879394 718990205 702294683 746094374 23858850 521035149 694056696 210022159 165304000 406904 455572021 658975799 827662616 18902156 651320189 128026721 977104442 891643821 206628526 714090989 391246425 633553606 651535999 923345994 13342650 566070507 77516672 857607452 546268349 2446200 301742618 895979491 282586487 583127446 303420416 710731441 476664938 487299249 590999671 640032202 214552708 422894579 554145584 405774136 431181607 638632342 217289063 498289095 851912426 126087429 729160733 466971887 329440790 37659329 805466166 10469426 428025042 689771536 629171770 464209275 673627391 701203540 401130792 965412174 354626287 110230364 544135860 542892724 363320753 336445853 270805782 935804399 198716839 811184712 84782809 143372723 849143214 407787118 323604499 40037000 202957518 899527793 920666982 35466983 731618523 524593281 620774481 617023629 803194786 217358871 665295998 298615238 37704842 632982645 60447759 355842741 491558047 418582407 808928510 997755823 715056657 699518529 840606944 551320647 789560700 616201185 512207140 561580310 334906759 795847606 111560309 164283073 545881534 568774966 992231299 584067932 108176038 925264844 644156197 358452258 448670375 789543885 198348703 619225396 692020820 55430562 926566916 411774677 693454530 17613565 638986563 657570960 923797225 120378613 479400726 40844980 943160407 627232541 973336555 342059965 320184396 209697180 382672293 666187411 512765937 357909323 396046210 989871691 554754801 620612120 593021312 5565252 806130508 902979483 390653133 712955905 204249415 162066824 872679172 572607597 164554337 901743596 224022458 493686665 622485465 673006541 18240322 803706301 851606930 175145172 70945754 753160638 375234420 666316138 736933091 323970843 611256908 861800101 1473696 399113718 126947201 416476047 482426088 93126597 6863313 441680749 23746652 717340926 543267953 895909717 823864537 883058677 867853164 679369619 613588198 123916462 211858348 500619314 797059412 94613924 25671576 361147148 366529451 219126008 484400962 879676196 837589202 531217165 789905158 709484268 162080261 19249273 761010576 185308937 787891 623123326 484567327 234930325 172820940 375825217 217493912 681074681 563487013 714312515 67895874 305042772 442714228 329293334 460602406 395349025 947237621 155838559 584657609 684504612 120834419 862729375 378084210 531701219 167494345 436372155 832704556 340556042 133344434 82297422 478768586 182358592 721687256 397339428 746020490 959285774 233530691 499005102 954715763 159419073 833684607 167586795 37790085 777267370 907898959 446354311 119606233 529145974 30904416 576208856 768783532 130703039 716636401 183951914 101358471 292385218 162520891 381531370 543061060 63874308 551539682 85927352 435435223 315698059 908463068 727900449 906050439 81815905 450450331 583486594 217997317 410610211 286513195 889890706 532955539 905086869 231294962 204301228 399568939 991845295 788655852 535322440 42948237 217054124 337867106 37025337 109319169 68200826 494927656 679057280 971604941 903582907 180742695 877388665 861492709 857397968 993555880 759875161 942138562 12961209 419053684 181033293 890699236 673043055 748871920 846343772 877635480 812782513 416902509 515287761 269571987 70137774 708865498 328717153 282648098 730145018 941438712 941487220 852501286 447327811 361356639 636514487 426240089 595866337 265249791 375252299 917076254 34351984 428192502 581505775 869202090 151553734 167758861 792567027 753074628 897141300 800526066 377476701 456208553 718021435 77220958 426125182 594101762 407737285 623734334 560316538 988974904 88291850 179581375 901615826 116988941 221072853 44329052 808769644 570071351 931563719 115559851 356156110 601717460 694883419 387504691 395015072 173779924 462939561 603123707 438057088 550453213 223345597 301038424 301241417 60712599 190489489 951458221 161772351 319507364 965827763 118167135 851253534 239873144 393147544 818079185 977262654 769714272 766195529 458199161 893661598 464452416 378936367 902520084 526687536 373283111 251120964 438361680 976269918 675991865 130694145 53034620 400844810 688727014 519224880 717889808 400494514 478010202 231333842 92415940 567655000 969726976 186966104 678153557 664340909 73643599 614725924 189481162 120075097 460758542 719401514 369914811 677343218 38715628 150984301 121573305 364542188 930219771 931324871 891740893 325246817 351081552 424508475 26699823 235263582 887105920 152282433 450796816 108855669 74831850 646368141 886513001 15428320 513684833 857405899 408781723 988032184 558364643 789980913 492875475 532679446 71648135 676271428 488079415 608238748 508931152 50236845 330491297 44242229 897620177 909502350 559699230 246413578 542982677 459925212 133884825 127518685 116845794 610225535 66584818 124875802 971339405 673789060 171496070 103579024 280459337 424354110 461172518 626168982 636108116 109782407 680818549 417253740 153158134 788122103 267383820 730206053 194660953 805901910 898001812 685251049 934731460 579747356 385447805 34060143 28322495 44158342 379696796 168307835 7149329 939456266 755968730 354606249 531762024 285823376 813247026 795578310 236634053 404044177 972687972 432985789 83348720 1754711 652166685 992408409 523580937 689552746 572205117 26739026 509374814 55425285 901223830 246077650 298901705 957126164 609332738 918201310 251267711 17033933 766664352 23643076 463614341 829291595 861669629 575709935 468707762 326703695 345073424 882593464 914931641 246521446 204349496 72665504 903339121 366321438 600376889 661183866 755979954 167994068 269052186 434582563 941514928 489938381 297860593 70578235 779154223 682180764 739032392 950650171 756038163 42853653 876183758 725211443 472836019 502738221 68401325 999625892 924245697 807279735 229202064 190157664 700997212 470523622 314411894 90177964 626065343 935788754 446835563 775200096 937399959 373507133 64635858 21447181 407372179 247140106 157824274 251652165 150116233 973081278 887086360 764391236 466796884 797232945 305495089 384087746 288389629 659086157 812205903 944269150 468249538 395085697 944504140 696955818 184591007 707374717 689525839 918176937 376196496 449738308 476492485 732911719 860535575 44378807 707570636 590958659 897094681 374191633 222360446 649376184 454508998 77804603 529264471 231033386 607699963 489076546 503951344 503496512 718189333 927109977 535501567 357707965 261993244 709966552 486602903 396550372 744389797 930213288 625838833 988802201 19037336 644073257 210501902 609824780 763038798 345997838 568308532 70491472 542701888 304553177 25317845 256146590 97300256 975408693 291322825 72547076 958371182 216668754 822897730 693209998 292449130 257930992 424853551 831787987 56650631 21792349 768251801 436602744 225974270 995742335 919835396 208661463 131031593 283333374 682362303 808319623 366295483 983485897 509787010 313502285 158289636 509904912 901363459 582112743 410496773 662290037 727412748 913489039 210024415 915064878 680145106 192243682 703447087 168967085 289941599 706906848 645166418 483306327 392495176 188639140 668840372 526493252 391967533 767950106 559911287 660402428 258545813 377033280 810747178 890258600 195245564 610383851 222288929 769130809 851427358 232384511 634035451 459275203 576613367 74522211 383602073 960727024 140010367 277372998 934738361 917791723 647933997 469177346 255207332 532014635 428405952 906995934 34572852 580785806 956953209 513193285 93559395 379574861 125175382 529928626 156431925 496979098 23824278 844779545 564375639 892975976 805987612 883067764 562528406 224392593 953220018 756467208 981409124 913878655 37562480 343264510 398872241 205822929 597408660 617000813 26693235 376059893 800878855 535521575 120268121 579073304 639393906 156803911 443041658 40403984 264513991 178305102 115152534 72768193 711455386 991557657 369092334 616072149 761425229 215264719 862576701 304217915 860028143 261681566 813949649 150037013 922082224 740174419 445371580 332071794 615076738 999793792 913475037 431171177 688790867 265432933 53286623 349242751 516454274 73899143 745265502 347241792 984159260 944100218 635997675 933728466 611545866 512123247 570755417 801619452 538816763 6490697 489224247 128034114 801986972 986819007 872327835 888344495 858722877 822736453 67948665 150503131 703113782 671658719 614788856 543869424 106257623 972717904 518435217 819598076 383402941 398472214 794660126 108983945 503426365 747470323 960119832 800541921 337652937 778204491 765389086 874887952 883216128 364278076 513811893 16215612 501904276 743119120 449434127 299659128 903901773 478470673 449627714 78470003 464542388 946472364 747470682 165481747 433134627 182146084 231260934 233673794 574484295 148153071 199841343 398005691 383486502 22779150 907916280 831692704 162543379 14570103 844976179 891246445 173806526 511792164 595285985 471570371 783950159 288989340 21330372 644126453 482507597 558353988 502774858 73611845 708539814 441637173 513449248 191167729 15253283 778467828 413709204 607923789 683552922 203167504 17561512 95950392 732953233 123846929 626486061 708320099 559526006 821647096 923608151 266842312 773622021 227660056 606424427 193330301 310380881 115606746 145425757 779856433 826106932 202538975 760501695 101951607 706377752 975171087 753582033 909162487 90303217 69394538 661607240 305411459 443822632 810058523 786055471 98760176 828945248 656879365 71017695 167768153 565225615 999807630 723249511 473813653 753766145 919408612 741630035 694943822 460656783 895602474 140675421 201827788 539223041 574727449 451224068 945069663 975173192 961417218 629352153 552064809 685907210 189217651 388297244 713688289 880190242 995970083 358771053 970197579 394795719 242837598 132639129 248361815 888480869 42632440 272589547 480863850 254582078 884857598 657783274 275660699 70543407 906025918 273822265 839851027 853152225 773918373 400693797 305801556 368806100 544716450 24393860 529659299 167800545 126221131 578368946 360914501 978180114 746143752 706261727 633136963 597840677 478057578 751143955 956954297 607342229 752920288 584513909 782816844 356065586 869408236 482793978 431139227 332188719 98935659 618994040 787742523 75374248 851998385 964075285 867435627 224477744 539524458 137648654 63356104 109121769 803605216 79601001 733327410 818290180 360165085 607036667 466956069 498211797 373074680 744231120 780538344 731546484 310209635 150103106 834300547 105459736 573699140 868618719 959335716 890358091 782367562 132362580 294570317 448862639 8164819 178357305 598608395 787686271 822657039 627193394 337662625 418510002 947253132 426942174 407060852 28407996 781728002 201169680 234145467 578987946 308518605 404685097 346183162 246862646 843501398 701974151 828215523 767317480 926568775 906743678 112168858 508794891 947923562 776709190 498397105 593600513 777969986 1212915 13692099 748302874 313051354 514451070 975745590 698336702 90179768 638518721 963919876 411200107 271864533 954112912 529926550 351609451 594494171 482167991 816964720 259759803 801495179 51315211 833741375 406030019 977461866 736340770 140492901 745504095 213044572 775792922 40129631 806617256 353809362 866124917 23357392 643262961 543812771 841486350 353759714 645734394 396182720 737958166 288689331 765800614 147802192 285203903 654737618 672866797 636105418 786771137 992500973 400611335 345844934 28621595 87221145 472356994 758176056 717803384 231857364 133096408 583322694 605224628 13629118 750537792 781423250 492457197 466924965 187699762 473240329 7913017 862866350 376488609 349942416 809378152 692097579 545901186 49859149 590474499 719552069 722993979 368020181 586657660 610047868 339821000 377450006 757410262 801570058 462613867 461330677 678098213 65121750 598048227 670535222 668666134 17050914 629068963 251415012 315517437 206960579 571838215 404323467 447174301 493932504 497998532 992540134 721418150 843908259 999361245 780902009 51873565 705369900 624620976 755527733 904125309 170006214 535479183 856631006 714298083 876404475 378861347 838021343 925660709 568469030 85360014 864208547 433607418 355578695 983860193 975580519 45281107 236977420 227257231 367271932 93931274 833666424 974328479 774127467 943392752 126197849 979572482 164952777 122035503 937265944 437163762 543135198 438744855 666402243 830424370 318934145 779806034 191341708 336007881 155898601 763937408 861966115 65103532 481783600 655486151 25384361 568953871 580391322 759098534 62653083 585085510 874669949 883513226 64353741 800721507 156637008 500389692 331390471 93233508 457928989 446474981 644239684 781249483 520758241 528021839 119702950 613096206 772545731 256816929 601855983 886304707 646632265 830571792 561805793 257121998 937711069 484579005 393128768 449430289 431625668 512489670 742505424 518199925 522161542 745459463 469164278 982450260 886998701 476135668 168642319 208687158 271779846 659549995 792264974 195406053 32470951 108424943 401233304 795416748 356258682 350112418 812178640 316579588 213999512 390597675 738012765 174659343 440298364 394590022 696490126 887120431 627335299 130558882 50531891 11942148 693066612 712144259 960203649 466621059 692348299 404305122 641554754 454438265 566139809 364855323 811787280 706188377 562038575 173533949 216460885 547877962 538280599 267037191 542491484 770724038 98890148 283083530 523840240 714944103 650257809 973333179 668359384 307168734 190830545 723114610 924261220 599005071 113022894 975728584 470361471 972121289 958158514 877171520 502987651 952015255 940810361 407215039 687294057 958754099 538197211 725412056 356522464 178276626 455801299 983881814 384838048 917330169 249397652 217581102 49890834 141867581 823812085 743845734 855605324 379880068 166109488 965747552 490408511 726028290 311380333 299758330 719158388 209196335 262823044 908630246 475261917 142038267 440836736 756974882 961099920 872832317 728445291 355334807 737319590 440639255 142379068 349951670 269703450 365511878 693362196 124093888 912960223 312967981 40480477 728972079 608045130 81946108 809640135 203711154 294694190 618754282 714350514 556625146 397325583 657986500 986572396 359082491 406805144 632722530 827511353 821977681 809652658 342219330 930999180 527996375 476396949 801620792 986220534 62075025 831252918 628496746 788221321 911585736 224787327 847438468 869272398 925681872 542543734 38297765 303686746 450313925 80134404 878890443 764056315 464653596 564258566 745108841 496332230 455282 227405665 64940485 534314798 756416123 637872403 86802785 367640937 406786669 362319949 386297849 287370195 880948520 409226432 641227989 822440316 982181239 719337147 473796437 856856434 840488521 327545163 581344443 299893240 905884431 974173476 504025116 856048251 820207753 587087677 615801924 403576050 610864891 450052316 556839734 551738870 965759972 421280681 203571149 183976202 532483021 582492322 628400787 682490795 817914833 554885359 836617390 560899297 523036705 479842792 889412395 573907306 344903069 91825900 211703093 676096643 114065833 640782152 638897221 371594684 423429805 663444331 537271024 64976155 925782399 433255846 972061232 813989468 547848467 581641988 823507181 520240227 441383910 376318264 60658583 382461499 808791360 513383948 303470724 811026739 359476188 356612187 977370783 104259400 539620579 647477252 959624623 542970490 163820485 14138149 763527326 255853220 580683749 930748357 50452449 586868777 717419293 388215863 121740276 783174225 742667970 352261718 13051204 456172273 427220353 846468994 121686649 830533203 706176329 577609175 178733203 804116332 261817676 133196018 132057488 980564269 383888381 60186090 81192325 50143576 974682437 479875754 867957729 182142190 132581418 141749997 400590017 401288923 307854112 49142009 523106740 739257654 429832148 763599607 319801795 387326614 11459502 15841371 378423122 251884316 471806358 143208605 172707872 550630408 768811183 521934672 325949724 638248419 700237918 188904369 95985529 574108046 193226015 888415885 753288425 502625049 571862671 828628300 777462625 619244191 725981473 371325556 681159587 884544906 738367087 176999894 603275512 127416904 819177926 135084985 698891907 512488871 915308931 984640431 479787671 34424766 924599389 558612918 184755429 784858384 486171898 353769895 701838291 181828450 146502964 39635449 289153517 182930770 406783277 944423207 899958315 666822859 740621695 523512642 135358319 711405258 597639068 812961122 16453024 370149883 63906786 804788892 582538318 302673569 681602995 772188381 301329800 626780208 482110365 109834907 257567967 378485644 500320908 907263403 321733862 820050657 424638477 543612625 151367822 201398407 364234989 930028873 69135411 898936639 127990873 218312033 734395401 518068212 205739116 33994490 748240571 952588100 230599972 301324618 982258500 354685121 953873103 720306688 719049442 36773325 840456167 130957320 610314428 397544777 338018426 116427683 785610058 575244498 920544892 80105037 333630274 590029550 42482788 614339211 751226643 678971147 119322581 201313885 215571387 968025827 313949555 83094328 577472081 342785641 709582269 80843226 690640455 701350716 49863683 959845628 206323415 814487109 971532615 473832913 637165742 777245939 886502208 80863986 878047934 661883915 781340836 144593146 194507223 112465211 370762932 908980190 755208268 800885310 574211848 61754396 380816429 211575949 847051193 313998526 248352169 797081254 873309173 513748991 46888881 236682384 885236601 665082665 774596373 533928881 666860506 305126767 896340023 636085586 670026204 267981134 70263581 469647185 257057171 57288660 89949874 597649356 85809703 131105949 747680637 496355254 609425338 422537477 777477905 17139252 698372630 341050573 622412187 367084094 123758005 465938457 964153574 59004667 20287261 830093301 305348534 521466808 210743446 149466150 536779913 163688971 470647231 35541785 382162466 320073367 446307101 687025823 48625785 461477181 784252328 701767015 249623298 247261081 552936295 930327897 423124619 748118894 978933781 117759956 223065432 499088403 532248809 910950476 853035851 777716447 7133128 973271913 985770824 26990781 942111493 64431508 553121356 20518587 578569312 670564766 720465275 235419341 348358481 181188651 603408698 684101896 669271403 797284837 695012766 93421351 861739978 437379904 172448232 405985 545157674 121542684 450563299 276299429 29075581 883147292 913695870 418962979 730479040 57523394 862031254 97567203 340804809 229671207 90716715 815546343 205643808 808797014 672939473 965674232 957854625 618178248 615756071 407165284 468371542 32055999 749607387 896447167 419322209 98895750 94807744 28532994 737401272 561184940 255272322 617875310 88870885 446162104 665627275 126325364 880964696 743805392 659278722 378492531 60956844 692835622 936219749 566271695 350921228 448627439 875356840 615120992 740608313 126360138 320532901 56057125 936352769 754178555 327984386 236925544 569058494 788039665 846722709 234175496 614897833 78509862 192286977 853919063 761225198 469410500 936405649 640748929 202104979 769174593 198693209 458600897 90362182 833574308 537807070 111177889 767678480 908904678 59429108 782265347 176112199 462928864 815066355 351183729 753753087 875724468 403261984 552998395 907342047 354300740 640188447 681465485 470037287 365264949 824040061 903475872 628296091 988253804 967933090 21238016 974586294 792319138 771966331 463870246 736110509 153637060 277113200 709709193 263489165 786719529 596298014 380312394 109547484 287597937 165481206 556348889 497364566 853547261 196542919 664913236 425496090 102112120 566244095 645961568 731072117 955965625 7135579 980393397 662685317 663079778 374559091 483202874 411857190 323172925 883936810 559858055 816770046 544344283 355883795 470932316 599732658 881951386 762707755 685020714 84244255 742306814 598720606 246569512 497658482 813555451 619421981 542194233 951400022 111537261 596954647 712041996 373011847 828495482 576938117 891402202 584921935 355769062 845498485 699439039 972831426 877757887 564011770 358096080 284589429 275734109 239765110 103812825 455937213 164324885 863285437 272473569 811943491 729186238 604442476 398129862 831641152 211129829 42588055 582116709 951129299 811853472 409643110 169251266 924738138 241619758 80000782 360736656 281796864 931337128 885073385 60159405 906224855 966264437 340854050 899553187 915406266 338325608 340680210 724254628 16952230 344322080 290894609 562827136 328973752 606992868 473256783 512385161 643887402 839736785 389514950 138327043 126440663 39042699 407357215 886867767 503897470 564485923 424990986 177017967 778308322 654276282 754690337 329947726 2168051 843530213 729889359 373971860 315000718 352428837 199443148 483519063 561511893 13190117 579201296 800202408 674657377 43333193 98089976 603371667 16200687 581198497 379603569 859409315 656679718 210911360 29758952 552516749 398504260 153653833 458740605 446992074 853389282 563422875 806445912 56816008 934824514 464175234 237394359 849704813 689522256 626837302 680679914 211011139 68972507 766303422 950391217 768244087 131701651 947243310 657143805 917948094 711645920 674508081 679703150 815657284 360235039 717273186 362002074 4718992 276467679 414347438 318699530 495021751 578851426 803012245 181954862 440847411 276949986 423935111 844402345 464507550 359254116 755638434 625816233 185979857 680785853 761082066 57001409 444494560 952974463 116267618 346109953 941544974 312704677 442523016 311290757 538822354 842569582 959435693 585420787 91273680 810315868 178686931 133990310 545091647 863148689 336698824 293819813 889731286 139153678 831368894 688690921 49735260 369387038 523532263 176521105 119802568 91586358 256155737 883041413 121161075 242934715 859233600 910318769 774095070 786464590 63684575 542760886 430023546 630849413 645458333 266585656 63477146 974135482 191561118 436763567 932444433 655043069 726290689 76629767 329049208 443068681 241495343 457322805 456996978 298149280 904770817 726422202 332200459 948806886 663679012 462298652 793513129 555037997 506546150 793405497 188472279 914997845 243704038 687180278 852306469 363288431 496823753 608912850 381889401 734251205 831328701 934924640 352478186 468145500 21714642 537087009 631755855 529467954 840744030 389267217 338498316 138152778 774750384 498745394 510386449 843023552 140130902 536000796 967427514 297592980 773422965 239154401 961087910 565940635 98515120 273080448 276152113 138934847 797900223 641810752 449488136 973349770 266136045 993699775 891785807 118420440 95220559 460596886 1823258 303630991 833889689 731440635 508569044 263614295 449191401 759682555 142393776 195521029 365492814 587208438 417991854 682160334 304621115 32662136 526304409 247875863 547951620 851772768 893589242 309979691 318131046 53967916 68140551 772727761 241482669 830072019 775132996 473524643 451166281 77842756 386798975 415088840 374689794 567206101 330231266 967350270 93046296 737285680 540425716 330613791 607377333 99602077 272901713 285274779 866582258 797966505 375841614 337951484 47150872 597480313 977510650 947739694 102511134 600736869 669438551 477704219 617414345 593591321 853990430 85003478 173669236 613539085 948690445 451129162 844718787 128359527 903286882 803807458 618071579 806556411 473046780 444221685 408037915 301162994 273804384 678530059 630267482 708580228 26462430 129612864 467375340 976126820 522649387 580513248 664795103 480554012 673996179 558818050 527689362 151637029 57864863 642061292 63495654 120837600 210428976 46151061 949109191 136779089 479814424 589748719 411299439 640611130 400988729 580350938 774043104 187498931 71487337 337912142 435999945 430157402 238420686 353520363 345018626 279176232 133991150 504475235 42830790 25796736 716554448 990621815 502349451 698011809 368783605 998092053 487745728 909439125 422918220 620556579 890255311 471435601 250936472 209955444 890336529 76816694 6428731 884118152 677158675 376357802 231904523 646042665 515972924 477576715 336745464 168815335 867701530 543509632 699713592 510330469 328024385 528544015 864676223 5411355 702246176 945147297 878352605 461377681 470107228 752314064 383140306 828742976 287682797 794789574 685935508 582349342 31447778 603377861 880729971 862435200 114232407 822096649 911288390 232820340 757984986 896226464 51414083 35847166 316352774 978795322 595371384 703652246 836438138 804856269 942775431 717521013 206021964 960809164 448800373 101988919 811442206 253367878 676754195 653449267 220900738 149968712 77371978 405962539 716961950 242583607 173390122 81538046 283483222 715488911 51146034 787894492 77183415 963776844 380015035 578711613 63501284 132628773 345014883 101594379 16435165 648079379 705002419 300689517 487287437 748860456 772303590 983243659 539525116 210106839 667539556 248242536 744716144 693751498 316800362 654572060 544867510 797133610 491216567 40521086 884939234 383504880 908282830 990733526 398848839 257440409 858144392 205235541 935836113 632255926 318280102 589727895 22821772 907696250 759923036 290602678 785149531 153598029 448391119 142486164 11304063 484430991 254136523 157036073 248685876 548007160 347244062 667653141 303959997 263966878 431101673 420503238 616424500 213078668 258754555 97500502 281791184 898775911 374183022 780523736 198665031 238909983 504700880 876925066 484830955 135211769 548299684 529710149 290559176 276416560 977381862 893381398 218409269 215393283 750348313 130214753 290668011 951155549 555457416 504152677 672608384 177378123 565124826 245535068 231375717 902241615 394899790 919493879 349280849 199962530 247710238 234510678 282889324 515806641 330753991 636094178 856713803 693998486 819280034 73449219 556001572 161794734 208740021 745784176 842095733 815160104 997970163 998053643 321529518 939000455 143723633 802972449 217375297 43680969 256929779 697024999 685261013 165264445 900403390 778220698 455218513 615580830 224445545 216251604 994169588 997428562 938250320 96339365 66845980 504364933 996760840 455356359 619446223 53065066 363459735 230391529 361709014 806306969 421986542 439715294 697808537 670460291 649263805 922419538 466835707 630524701 203370302 779680301 321745855 407412644 378830626 613429882 14535737 663126730 355890116 249055226 984989899 268943909 985088716 133932615 743181692 189633378 158753133 130008108 626284624 337661374 422337262 31521791 589295267 582991452 105299937 778257115 614855221 281287814 676136737 890919387 889469625 681670877 674654913 351304800 448210462 835872439 34221382 984190353 154608832 660941049 257929929 498425293 672644603 437429835 849634088 709275528 69656418 953794230 20341929 150753713 348316634 624220346 213444238 932802601 262629293 12886751 394965383 13032571 690918110 998496822 552315329 85553044 29778867 608577431 58324932 207090881 741687445 172611349 926919969 4527318 833053118 257465265 191789450 705552621 444191020 602086329 264815501 826770704 939693216 758826172 919674658 248892321 558214630 1535750 465263523 298581251 708333663 848447409 388102382 464867302 142107623 817717130 253151911 135064324 335720212 944022402 755824574 180487593 792642969 162883394 74794293 327500559 957948854 194033926 228464776 199565074 221468070 506777074 898707877 889692510 348295329 250833134 298209789 180148674 680866343 852962998 492737176 948109545 542314824 565217113 304933970 269341022 474970399 344980130 66979356 278728006 64002938 311660574 563372442 930011619 72154433 696839746 899579774 420497977 314686494 281325642 384260451 731754527 30554735 202843356 398435385 862638197 485939665 302163443 935943018 469132330 987128833 563159258 995224106 593039105 289856944 686208378 328593880 368381389 459674071 131403367 698949247 83834584 371714103 864306788 645460896 169709674 488849559 768579084 486773216 874345622 996968959 952938644 452049584 976885601 471901749 860084593 89405978 765324803 694924126 740955293 61024866 77421029 949138307 290976885 381069104 868257364 528216439 570493275 551490384 263365109 162484629 482011468 963240299 49187025 192610160 234416216 685643920 103471992 544817864 540949465 814156147 936062690 970243599 596183939 636049230 170508280 401642130 987112285 500658181 820060029 391725080 433972240 410052856 733463332 904772246 884293008 367540879 405354346 916112784 442178692 41387309 166393079 971823413 746617141 866602567 538915071 636942327 833327700 540085435 641625332 81515824 646511079 289099308 368506618 623835181 670111517 626486566 350590502 526032975 277642304 369188891 134828773 688620077 352566329 967911089 573199674 256271874 484859940 339378875 811082196 216363886 171024394 206932361 73250959 994333730 360640638 980316655 723955582 121820490 781769616 412165364 239258128 722224114 246428242 695673218 744085176 284921109 880530745 199018974 728886698 598020335 463830775 638376706 987841335 452390671 759235662 389479829 57032548 887142702 633991560 884383236 43563457 499539497 531385394 66819556 71660404 591767930 298923814 98541667 72511003 265135380 734645752 294817060 934481210 723547054 688778893 25088698 231936272 229472556 166234087 761511697 427201312 277199587 179700388 374657314 554650600 104769589 992823265 523572485 569930117 850313667 458998867 422461987 49391960 930418684 452062862 428406120 875349324 878174850 622026206 889958427 136775072 661496345 345932211 920931081 698597422 892572691 203729011 279448961 606229610 414777054 681094869 269650293 19640868 791861985 704980091 622886724 383551642 296703783 431575632 962491538 556847767 653572759 465458405 759107438 656378215 720350674 427856999 133788829 795305402 177987657 376204530 146812460 934494829 210165745 11583955 144028139 642232511 911069347 68344909 834250367 435970956 522582016 755140344 327170693 700235609 663115007 880898486 989464281 748012165 558539784 530058671 728071060 869121768 927386471 294606129 365497197 412694289 706487488 911570990 172636701 515860217 889794763 757831427 548662633 5296767 493008534 888822041 843532692 411287464 152216594 915083949 490657278 501776270 511869773 115121153 656305231 184398994 683930644 917686262 746410736 490413999 416098761 690951303 112502627 163461455 260304658 418145195 883661682 589127376 96773041 460954932 652984561 652813449 67128970 149423017 47629152 76716749 802850162 707208897 47260862 198203762 585467835 887845078 122178793 804331087 641583804 131724888 549313088 100999446 367230675 844268399 725169916 241903371 689255812 989668587 40083785 414645395 49729074 30566909 876708716 191846382 986083544 310694315 794610797 660226305 823984850 488032621 577197693 565707992 465197174 594849466 600765614 320375775 516120083 334374561 150761661 670187481 663924801 987203860 123188495 285421750 381199796 641877691 581178859 826787373 975579385 646734670 734585071 135955999 361989969 269053238 421657015 795410487 297826029 769319558 236388858 534219529 192094160 291984507 590891802 422051105 961462518 346625760 842718974 30846300 507669254 851423436 863303123 142869880 345396720 339448456 152825358 168389997 348607484 971769088 506180006 999873160 23975705 724683858 851952405 321416578 977246967 705856502 437277546 899893652 291427909 37931547 270557701 440548643 539292853 465232354 866667436 113293149 548887023 170519520 580399931 674951880 903666566 61236340 453672082 242676331 943252217 475236562 335954694 840836241 912931748 293362157 487224218 345502291 184390512 509523609 665530690 379617482 889267582 154353322 496105744 935686294 512813575 371695457 470350861 471757325 976490411 385996872 405176495 929980296 953427606 203710982 369352116 438785020 384814669 65063401 548226550 43283061 107015233 58957647 882529469 730515213 955772456 18187961 969938504 456972855 39688973 715389474 653341018 850822014 839365830 3842037 188200086 55642113 924196720 321070633 229029853 269726195 284958819 639238818 771882841 324558606 824995711 127339880 462987937 820374719 948623374 160330123 124389315 792917398 514409632 792074390 939911358 220276322 380818372 507513810 62345468 113440578 573343909 751872507 997522047 910958070 314668574 620822372 260318567 178487326 224140294 392530206 796229313 816400097 648840661 106956380 287103603 890384762 669377836 961224867 322033380 673155199 771308191 572514382 144231756 543094654 90887041 928891693 511689297 593293479 173178971 408913492 2457647 755283460 792285505 334171055 739489865 574570490 598214628 635372791 30343697 738774775 577533501 252622278 61877007 89026695 873510258 154614210 875355990 171115291 437122976 175890492 428868310 735068249 613491789 639806205 403076517 788271606 596121773 950364068 777795505 806460253 660116332 74340647 47606990 687145715 101824363 160928720 605298125 50147328 629096580 882534304 808729395 278107426 374978279 392272377 527925536 135864024 672372063 718710613 29225596 121798926 975120983 931426861 662768029 822572025 890773748 135323000 567037247 518256992 629176056 86858376 639900179 610398181 693032953 652204100 933393220 681076476 1856065 563341343 782579346 587896557 762399171 645139368 627408011 641473916 489612384 897380377 168012779 565199813 781540092 164067423 75393344 964906224 588051984 982336890 917521988 516147089 293360955 969729165 262681451 146429919 556845214 28265636 277768434 485580907 322586931 850781665 496258446 584700550 575087011 493360818 563955679 83217755 589186835 737884529 999961811 800831348 218699924 644320871 152498585 315406874 190980488 20551529 306489532 441549658 621438349 417583678 160723419 911019166 421373872 613227465 440457518 735840800 510127012 809797992 766987041 183363397 252553711 290578965 572686469 455448858 972841908 931450136 866082271 875250211 202315985 385758688 301543189 443053726 771473688 719046770 171852659 605742695 85656352 937901743 85401683 362788683 89077869 994111302 405524703 56423740 912534254 50533211 143593819 10989087 888720234 232030870 57949076 639309943 39371464 72991818 363623358 928072671 348474997 458024146 922877368 969178157 271060353 609601896 264667016 510481501 235560108 389804867 192276262 537733729 787774029 919543688 260613155 223442240 438723313 261361713 833529760 654579222 861495072 431752217 777403337 629476921 536659239 465898040 88028858 423497700 93446207 482132359 800965311 220354699 613693777 999123124 891321462 258683277 21488638 473352507 268026212 613497493 543669015 714712335 483877829 959200121 916736271 491438842 466798871 157764264 242976738 447594413 230488860 298489483 320884113 410809463 545370197 15648506 211541763 900036545 825805744 24987025 714522331 139499844 502885310 519084959 188486013 303897505 439068444 680030267 439067751 388753817 392885362 893745961 283088839 373917767 785072309 296228363 996300278 645700854 449143022 245324506 468359520 565869435 897896298 656528420 861492206 286531889 697740540 97795084 717099390 416204604 106319698 590468268 38810726 721979299 816864384 260785310 537745082 174035190 611453135 186303399 840997934 922859081 361838357 286807138 680725833 10705839 351420178 310826258 32960950 648409074 27928296 787628143 100995300 819936807 705856559 638038715 301455637 139245626 602233844 344373683 542521680 908922917 388286190 986375063 832651606 267207529 154506972 812344557 838292192 873929241 262254764 596392384 715426715 957846561 162758178 926865833 85139899 837402107 28086073 577855210 84695933 749288333 738576559 534485506 319673912 930218781 346505653 456277715 915524993 650777190 447930040 241490197 544908747 869923024 815247833 256378810 491479424 767230619 380690852 888802199 388867557 534703940 680039211 283268912 804807056 132547673 513024948 624180727 263167118 529551724 218034755 124887631 659820513 929229135 274038898 865506914 174044005 479590345 379007357 728044092 759787240 977969195 797787181 408956293 573220203 584058836 576744723 429628663 122822989 785814090 392189968 517674468 588253808 675550939 273653938 519428961 820362690 890010550 388258728 447555884 900918260 621048871 608511183 408413973 713621182 382274374 638030643 539367870 769055840 977186084 18783649 478382927 336388389 269711105 17282050 279267950 205693221 933217947 493604990 190524669 518361852 161018740 579888394 979253247 302324016 510434276 599979136 959887930 460849265 171761628 620404620 269813314 871278507 790127442 468101131 106289231 657211351 196151576 994661798 420458522 56678030 248088020 801348944 520295516 913975440 575258682 878311405 524946891 860342528 615341795 78970356 11558169 729138937 230451016 151262422 242880342 754188806 559121004 754927760 864962254 201456537 512335109 826921112 569130438 706799221 807403706 760789615 208847750 597809472 649965117 168620797 652192082 359126115 637625841 436741598 202103598 877733231 844970990 541375015 358809900 457455692 713069008 275304170 870090831 305046327 378621946 765686075 922036786 312257120 761624734 228184185 758877667 289759474 359948689 702877162 929190175 122396953 752111141 359620674 809185376 399984840 569569304 160960890 475337186 367193414 596050238 940598592 913561803 746294856 39175794 428761295 507538202 923607247 543193550 553824791 274812599 391490366 831355983 81623398 605623572 162490099 65039587 714733351 958466319 565245702 333736565 240641826 120319261 127212734 949064655 165735544 488331356 199537345 303627295 594091858 363228967 329986814 491563438 605340752 734727961 9998490 690496904 601970514 139232121 744826231 452849531 157314091 266452075 751536299 741549311 765039208 821499692 639646921 115890947 740065461 175753954 516929331 111977859 339112690 982201420 696930674 40050496 484531562 872911196 214249218 87510193 426073722 368385664 312332981 183950166 771143182 27882987 657121964 588488199 115130566 272274411 532264389 472023721 252423913 363193687 775313701 865600663 806043459 107695849 22340085 319145937 103074076 841115278 33197556 38156547 246543800 590542088 421499438 711358711 843939306 52175013 425668435 810170213 180118459 697437474 613675544 689105606 920965599 144951226 918665633 710707368 754998767 182547287 111760422 904135702 630605537 836446048 65548334 282187449 810250639 889168474 635152510 377607175 442624989 613217142 304474991 61469217 74613708 479327705 714301060 681972387 572851423 363511083 214782454 448734902 556079059 589497729 720103691 113473012 543482631 227993824 460492810 392749025 376851453 973417597 425265328 784197847 174923593 993107142 228177204 874185702 517617949 841190617 880738850 618814146 963516873 219125832 816504933 731107109 776443213 696384396 929155891 588672680 715609663 483253337 506329037 745129951 532114109 840669759 252194599 495232730 322735654 5540764 958503299 759502594 934614686 875881684 551209982 992135281 467384755 147796620 652200039 71533556 930461702 631272306 84290364 967933631 59625360 710907700 921361620 558810908 509350166 381813413 98581476 857940697 836981897 813943783 615011860 873312268 327180511 616975605 763504444 424107615 368902629 711868177 993476513 920790537 381156025 426674701 711261775 142608386 590592758 116017744 42343003 219278182 5475471 904158330 157218444 74488993 210178390 340807056 369051446 840668906 617626368 492775107 778148501 197330676 131751736 145451183 198162455 897649917 343345254 197375804 787390833 15460000 867924086 646327005 674134863 950535975 686423678 399886302 103445612 432251034 294309189 99979135 808740842 652251959 58475899 468580760 59652892 533752327 126357629 597917168 42771280 385852654 697017398 8086503 110296742 665062948 616309101 542076605 380368949 606338256 895357814 659006764 336991238 580946688 493942291 45821193 901086428 283749599 891996861 12971324 372833637 940528398 173213613 578692424 52558651 807090837 330396709 663712602 414462603 138342233 466599408 130608228 978239151 106601013 544925980 959011892 484373205 521290209 265018283 760674836 952455342 475274525 838025803 140456628 204398360 559170532 762343938 380854163 521437526 210439558 7757527 530063407 483634306 380158916 773973428 137731055 151649069 603852016 210711700 826868333 193460392 737898478 261567262 835985966 260756140 67442407 428993502 58996607 263680496 691363137 601045541 273301504 268695512 38797594 130634658 956523300 437612079 955010470 813658222 457969353 185104283 490015330 317508370 420194237 418457373 902462493 426349604 855388810 25977232 209652943 571880337 211247763 68090930 16323533 391852361 612343962 811535014 798737020 98196672 990972141 628621751 790762981 116264926 796352180 781863366 678327465 425420314 229192700 360665306 190693797 992529963 556266077 800416590 168167335 612964355 38679079 914226003 74704750 643771488 222278709 897086770 695284035 331490874 994937216 59794128 970340995 225404805 9133588 920979342 714783791 828722628 280174977 991064802 257837357 986699509 907722093 570387416 166598180 154916761 96367694 656808804 551469765 294825991 819372809 650680212 605034770 835917139 66607012 48303080 491282214 425056260 608376197 277597570 111886224 130836959 543002624 862073458 421534565 812963321 105547502 332837372 44108373 567962162 228786344 104568386 427749311 965957603 100397860 15822650 522469923 700948897 748531800 421970639 338120070 739207691 497570673 744967185 725559317 583259088 447293242 245074643 894728213 710438371 437932587 333909032 609390433 189608258 548647126 748821694 200432556 892960275 344296175 606169458 66800441 103046333 964205775 110020852 999955820 261614755 229214554 895673325 245422504 210201571 158203561 905005708 234146027 477175066 527678094 185808277 358713766 177022890 125432201 321780121 368839983 32907858 963500108 491931487 835052306 115542546 735222571 425498069 885011350 971821048 448343478 849630399 432806525 445293794 447706735 326723676 36507612 224422829 323819710 270908018 526946491 894604665 273293846 986611316 359281288 658598040 902141917 961171284 539384133 71464475 406152119 251137395 100923282 35596785 346273688 82529211 366427074 730671004 799993591 812445723 937220748 618275359 386097126 186104359 842709099 762315390 716525290 942177568 464469067 427089454 204154746 537568726 10523276 284700641 942715204 58586557 589691948 556602774 426621436 175073674 301534656 25004212 803509711 689573565 393839093 962162127 333862176 551330078 206629259 852115029 818878626 418715383 831058921 305164525 971466562 442564792 117323957 533178789 395236671 986576495 596721705 987490535 823129397 927158637 42730688 577170588 538917118 729012451 425916031 518800670 293294322 156972556 832703717 851408871 969682019 402019427 635369889 729823126 840018979 108548773 362823690 422008928 360341524 172837589 339603978 71305958 444653827 603354069 40953620 737046919 381268254 854142437 228723449 101021298 366703959 46069896 508540380 739301464 349772807 396509121 253418155 17394959 422542244 112603310 735202725 782289223 623922145 501824908 766616362 316061872 38975960 790418162 81940705 906743214 753136015 351599472 903642559 44538277 248230196 833929203 824304875 118035784 782352174 758952638 963365877 482278949 415920661 39013011 94692854 228535238 744275343 765499218 20139929 710912482 470230423 611032814 473465698 219350889 651442129 999621992 812613832 430225968 987510910 73018532 35254118 706839050 865772716 650293185 52607471 320632304 770314389 992676913 840204220 47577087 86598342 596561560 727693766 212278902 803266812 88386565 800729588 139937345 667721180 783601840 319164607 751577204 815960182 616542697 992734496 614809879 903475105 14503619 842498782 603514869 505799694 11142443 741390603 946079457 700510903 399713411 365617061 968984701 629417260 632083470 837070390 201780495 310745411 59445704 368939274 260783793 53069941 769278781 880169655 460883435 589613841 308630894 725982893 488154695 851869961 987048516 831520284 819218169 538388608 428202266 195283815 622588544 20272087 870664259 724847929 754646655 459308972 876353607 442151570 805655825 153815575 93192671 941075229 728548525 443673297 743078432 213141656 612464481 814874834 90262510 277552026 443767895 654392743 673875623 820535195 783546436 50593853 598671175 515778012 282169718 37132079 774343821 165138167 890094254 925962240 376575242 665828529 65511027 715265265 601745939 284063233 59510459 591063676 485256755 487489644 938290563 223878219 625996992 719190238 544940575 679021354 718193976 911561212 122993630 946431422 749319053 862939167 601004995 220658039 224064997 34673175 998082995 139933100 66360586 210990730 467823132 144806986 481632447 120308520 799880383 624618973 283204681 667518768 182323073 320948361 565858053 523302691 49916091 459528244 780694451 356921382 591096619 297752009 168842006 329989705 385223825 802196765 514307835 976856612 206183932 23698916 295704148 995627690 274609808 231919997 881361497 777340775 42811434 18334026 992527245 826747852 271301296 293875367 455145530 505525369 828764659 98215290 709970312 817888942 863114066 888687291 487466906 614331179 342588695 765440814 42860974 725331021 786350295 864169853 192436659 362347190 294649639 903890543 422299441 866733282 579284080 507964792 689465719 174828808 720108864 528176192 839249423 198782473 674455691 286098376 292831405 152321684 736369764 575273118 74995630 688497680 327473113 410606516 802022842 62511018 831698739 679117066 9369458 171498644 678304425 972659285 758233571 208782696 93192151 743514224 117111404 50008637 516219628 187162565 468256000 567111873 457579860 919805692 858871848 866864327 958542709 432212179 487284884 312491686 535228058 365096984 967408381 897081128 684213269 252561271 555129142 78019467 75605255 242624494 873307609 872780670 575942131 560426451 868337345 861690616 51530651 916599897 476208711 785264564 510226614 892713893 199726061 108392423 137433820 230428391 173114397 592453286 968332509 816388492 7581716 740426661 704495358 147013414 154204543 932592753 510249363 67726201 91536592 148310077 903845314 323119999 70128128 37437886 726777559 220449414 917821476 970552441 323108079 567443055 797878971 891276176 134978403 313969766 980153513 181020787 458102302 198905675 931968794 403542434 378368376 472101565 508777347 542986764 485250406 441869187 224522068 986941936 932828253 132940609 108815006 189992078 46554452 306407336 685605265 501250349 704718535 894027261 519979808 859754463 95593353 914894934 596327682 342655311 785827908 555254187 404532328 810324880 383491119 786036924 459697049 986574372 880917983 526270998 286254552 943940737 365045682 826521639 861835903 519849436 3226406 860113595 170283016 549320899 161295341 261804783 947290731 761029176 734150592 483269923 35097363 457848248 867011184 168875831 923045789 153064426 734680035 22463089 663823843 805350186 110633109 871135927 127543847 83770542 920817231 563068202 636252006 357531064 69246037 580863240 317173245 493518323 208565755 435577115 190896390 240732635 158824265 124761124 913725448 287775604 322205934 187299008 680010714 381188983 689152270 556327642 717986257 326896358 597087241 534973689 868744933 889362608 6982845 281363079 272984139 627107633 506667494 263252183 371782669 208348910 252665274 59956164 368442928 468738422 158141180 894034048 595043122 70090239 867790348 865423969 864067660 647519235 315580687 803326004 770820857 140653118 621218875 314136966 70467091 705408044 847730272 812032950 959730737 741924060 643706248 957901817 516441900 104840754 963159950 528081412 240557002 722677100 154041760 214081468 977174052 830265399 245597068 715121783 949147611 76458302 545549876 124147165 327752538 167067076 801609123 87849662 197581730 624540235 916925961 234102804 807729194 492767522 941324833 316806734 952765058 532106651 56227875 233331819 630469130 851392460 171460665 519153724 631185554 298883511 330662657 585553444 414416070 380599284 752828942 493604224 971289878 300417893 466781641 355930007 444387078 724925619 202322384 111181889 97234115 63997941 593141289 17473586 974524035 994023868 541445070 534903962 433910184 346097982 472189267 680882283 950356928 839607601 853805883 350364558 594385938 977186026 391503873 686887997 372768893 241871632 258735462 620094373 299775224 222063752 910416791 963360922 222151479 430807624 12131429 611926597 790240706 312887702 246400093 904007135 616370318 121015387 580015769 846060950 153408411 137975205 182685901 329355506 135881234 461639098 885855739 374826646 136040658 93048681 866898282 534473445 378998284 194536100 128172696 381753224 255115772 824095979 568019692 380314616 364706542 196157237 332106854 320474621 125805685 430054432 367352544 344129216 916233590 836429751 902539387 973759341 213194462 523267438 782394720 400757420 580197491 509850683 385532388 384602125 579885696 26575401 414279351 226740306 977498885 829353675 951940137 886346010 35713701 604287775 138608668 773172042 253092954 560705962 574840989 42659873 702466973 359293327 633339682 97995249 383632939 508420954 7410553 648312358 280427685 413445944 294936404 479979069 344164320 172155849 546978436 642588618 498404688 885253691 227820306 381638189 510539359 280613781 835667650 411322814 784284563 109470120 897427271 949801242 635468230 835442691 664065598 974671648 163997304 528706122 496627670 607126100 714746037 548300703 166244092 363946773 557937920 99322311 802491570 117672299 304981324 4756872 757074513 780042689 166229229 286154215 495488674 448938410 957200420 891515263 996000118 559837857 700271386 523306841 400352017 366616403 27767598 810687474 475249368 16087344 558445118 123456938 227691009 632263411 298707981 869478366 394992777 498077242 770810864 893651838 53244961 978058371 800779987 779815490 701507309 447175350 381256912 247946023 857161387 557528526 699392158 914502723 286722628 165991555 299730410 59232956 793395156 98529102 860591536 658654342 359793889 28795773 382816068 322611586 286107804 398446007 479635224 571435012 510287736 714895236 145134975 595183000 96191302 730768558 553520621 33882263 362129431 758979051 332768893 203496448 206076743 275852789 561997146 176534614 670032547 483757232 688994991 522674665 217768976 630078189 914460958 83633391 849448164 882407390 336866875 944367528 654290407 64864193 317699667 379125110 113932025 920051541 246940325 730580549 494281309 302901230 262077209 147147409 167769029 323829243 145046249 670726032 348031467 795264200 560167541 155033517 120050630 820903176 845742649 50120637 341889258 873390092 802562306 807882464 365002646 362635069 378366288 26367628 940942880 685193807 719398462 287023199 780385937 818631439 654919872 527998084 178916939 784057244 924670291 848686622 752027389 241708515 227741494 460003147 872994749 818502972 230153201 778179886 595087905 269622237 109288733 84798726 354078437 684401802 770768151 581117307 145811661 513862763 229126390 206806900 643309875 327652196 614959320 367179579 170174822 744024258 655033652 246641580 99486747 168067449 278161894 523245105 327604699 256449028 242908080 644787294 600571080 949582834 65953765 519286802 178645921 410506279 446227057 421821718 225285636 628442821 271270791 797278466 539916114 362149390 81791900 474399456 379346621 803810088 728678402 79501580 82205571 676228880 690854344 869220616 622979272 885820248 772908914 224837261 298331614 296316132 29312769 720577955 753853701 895885997 388354248 69685720 731373146 813954551 695083172 825138832 851768018 569962323 433842717 937954380 934588701 318999592 635177903 734432483 146652717 128957708 317990210 937195090 139972859 271571065 79149439 598386827 809933865 116326186 315539101 564799609 941006719 751151795 497659849 867759868 264390183 198796744 147859976 793662392 59296029 69890604 584847696 297920782 774357289 309545886 716317725 669382270 904894252 381266450 188418523 152934125 68213736 565712573 40690592 107213110 558606628 368397526 961361005 512698384 671703320 158168978 335299114 922795400 321576756 492682989 883758669 767487292 764100327 890117290 256399170 541213982 298746247 184407699 118611715 960007808 279451204 565042649 641373395 824239270 730014901 395876508 186359754 950971394 558812373 862345067 476136522 154569086 821572350 369108551 457293507 700097266 318660422 485418419 500802764 118009680 808249350 237839435 832578276 183823040 158850624 391643013 221882275 169525184 254054933 463244699 890739304 707712259 662178571 706465970 692852143 621204877 520030522 819334395 712182570 194737724 375101259 388101115 171240653 964073930 349522622 845372034 78479607 443392679 95390370 976830222 920122593 140459947 166047333 45545398 245139445 72180224 971124918 199640114 589328018 320822475 176303556 618618590 54776776 46276283 819629081 164085142 11923804 861888020 685789958 866740471 527011081 806584073 19990258 419416345 493652615 30501960 1065894 878932570 617880262 626508743 702585756 318248113 385646774 16987087 684047641 702577156 418393688 525714797 355864198 169729276 787540146 231013893 855330708 314255898 493283755 545329358 732309777 333911228 962872708 984789431 242453217 84092560 421997617 340706755 279474711 466413033 171298016 162371950 173658482 574326718 560001043 821719330 997022413 743848236 458027683 123445979 468765955 303491716 495944019 307173395 933285769 465719948 917034038 299879446 714560072 22133301 370860794 834115436 294202345 498889760 502463134 650950195 761743053 383960536 588192244 605344149 658228556 889020014 845103008 314282474 182363650 499691852 16573582 224045547 902298382 993511938 328556632 317232352 692452123 409388210 663086446 854343886 833232505 903448379 322613795 9592127 11838892 130381347 202527805 91246716 987973708 717164873 456886080 995973700 194074777 311045022 765338108 728233768 952087782 723553325 87841503 100055747 928844831 254617414 977414221 740232271 353266449 570827146 627050371 191846693 460713705 229889952 384524418 782471147 461062055 723265713 955164866 584620738 768910601 899586272 48786825 578436903 673362257 92509499 731604018 620834424 597769911 698914561 498042966 612634450 626577919 898296715 151996506 602823521 553962863 115116822 981939544 183102036 461294482 481737236 872158686 818083320 362192878 682821225 322421834 50549433 758005389 667205323 625519446 288500103 305241019 635783845 417422344 917352429 860298888 40806696 967439776 273555778 832403823 509150924 482600684 458393532 262398403 993420099 67004985 791270068 40310346 464185834 819474563 756843139 22247189 284639981 318718100 23661300 753488586 494776742 977955237 890558768 453472956 44554011 12245681 218835665 532692154 933566448 144021866 338109234 821423058 157088832 997163110 80486221 289331968 699836999 729122079 567196298 836355395 294414261 466323412 886356416 408981360 942171575 291006230 178296184 671101723 176394796 120780811 212391363 483148040 554292080 400839839 993089282 701274673 617606723 999783924 72592018 580378227 325927291 927741054 51043809 112656456 328560612 281581358 633425155 933367376 134186723 683909138 471497635 281232320 704637686 342955114 337745404 896008357 495184778 471350044 522881702 506275754 486246097 434780881 587182585 740846308 894728509 654719359 59115952 180139531 306199479 501325105 755922180 920642335 504849468 591825832 463929128 128690357 220872446 131750674 567401880 865459870 213220428 469758020 706318065 886149392 140913501 806363770 111587002 217691673 537731693 715533824 795336724 399798610 251170490 721762614 771173690 399828455 454309762 938978921 583516615 537771384 391485430 260244268 437426848 16410861 865971575 80548296 591902474 856694468 331785451 805233947 623686316 899889207 913449072 140690225 241242343 255186951 45044597 832820858 957802839 186868604 918718260 983256104 163889344 27711800 806659920 777771506 402400581 934348010 601696456 732829386 675747701 829236590 244709327 809815716 148446074 423130502 612492905 115193609 304761395 503017136 342628484 982158280 368412659 123117108 274808104 572638536 464413081 934521539 785617617 454460689 83755059 802463393 605645521 996412267 721641189 300690742 611278182 391633465 967210970 684576814 548063552 784248733 773154677 317275567 760043011 109463312 910518256 14428363 661253302 175128293 868950867 139513021 451330831 818026160 936475275 542614815 391137235 453290427 672737938 285831394 665390169 121354224 418697810 353417150 263988019 663305365 530600369 468128362 789105029 80433452 992045096 159055047 324659516 20256640 497246103 830486517 797426033 100975527 656993337 485239143 252188014 147887736 233618037 650132962 452406722 793639658 543998500 634550260 109703124 751604153 435419382 778196428 822018168 683666887 875787310 778887116 318530093 151896242 882840160 802710149 665364409 720326655 998644627 736011640 679287618 959309861 818653060 429127918 149734117 546227452 197457945 778638292 55579262 914699595 389086074 838444660 671355006 547690231 62575961 443840321 787433742 988331375 663939104 650991350 809591131 432190166 485663005 918561499 441570471 505257403 473626754 922863967 857286998 191947263 933312100 159293941 50358572 967350867 806506261 364316924 827503582 313836921 40781630 301442739 342088996 460941954 808189006 19062920 188628736 875577518 239697521 607483156 497585310 944938223 285346258 563672435 540488487 5260194 822482835 230174091 570975149 423997887 369455611 844503726 959582494 208230860 179959948 42844621 551721980 757619236 571585584 742113667 196209184 111725429 995981190 418037014 743818137 847503074 500627990 444533314 431036218 422680143 329014489 245024811 191031291 730266570 185832746 239036979 823260936 466919808 383403037 687317409 537362912 992871985 362643790 55656234 305385237 704914730 301101823 649167161 419417463 924822158 333372922 428020330 867737242 693175930 142839217 820404372 928363553 133092934 977987457 642004157 166350404 227260641 201057953 60379651 463746040 123388268 497769474 96489530 329149127 280853506 792518317 513773130 19599576 289915499 37913371 418309933 895977574 668896602 225372741 954204543 602801396 849238374 192051992 458012740 931027023 669486649 294128862 25730288 236755074 358366747 252387168 417019710 696067152 799730018 176192988 641374725 433720605 478056507 64947792 760459641 109665597 187579266 498867363 783427378 13066114 670242166 715271971 742525305 780863308 344098419 993611226 82691773 889034068 830603825 965321278 524832426 998874079 615434579 78773175 677886157 232991300 256107193 725210180 281676218 606378200 991692050 942662868 430721757 724455952 596377014 634425274 970230608 810816780 395518024 363665842 368852790 425516152 794150671 907043652 746211003 689926425 902308130 318198195 230972318 766786946 968270171 282892466 318961025 431179411 760252649 631893699 454188574 181882620 499442802 269953299 915712682 888338246 441967825 626809179 396036338 980265120 748384965 803331219 791500639 470592549 807353676 922908209 671720334 554259022 649725477 558036563 443829865 888064944 758767050 49485883 492620381 45945603 739944321 214109128 406804832 771070749 378930725 222345568 587397828 709326114 953671173 799968179 387583660 634662938 6637236 609901885 615924360 622570551 54182224 467647496 871077156 536404911 120152687 605714608 323754842 358527710 323590998 661548448 802946853 163845869 500389497 649725774 890430674 980113194 870305923 296503227 199595222 365556404 202849957 382526500 348545310 943785768 795124091 626643166 904589681 296521010 292682953 38216497 43755019 41195774 720809789 286232950 98797564 225964814 504125330 81936137 523927938 556659674 721692037 36557946 803193515 416880505 769553985 148714086 570610541 620393383 783439105 45884916 653639801 556949697 625491718 51815754 288112275 642567806 317138053 81029271 782397386 439908442 405603896 625834038 198431759 987942473 189328112 134069424 315917946 977120427 515452109 266007409 583073379 402425036 642262986 216501295 155614746 367451169 528989875 43185124 321579588 30758596 779896282 738404495 684367886 408559197 130533821 311576281 871157149 944511214 34905854 19037895 722287501 373673237 418526860 612194078 599037879 359259708 865450231 257690419 161185735 424752409 181026085 534649431 474831007 735556367 837340739 293787489 722442045 360547771 468580788 650097660 855104459 992544612 502863244 518377471 558900347 365913413 308865027 180642638 709304575 190554825 398265835 208982152 451983122 678322220 943246891 658916570 481244653 160783028 602309229 586905292 682909223 9079423 695082011 427258453 68580027 333620352 735952169 739814178 285132216 336811396 236489241 9562196 850081772 43479322 735000804 244235464 577344717 773932131 599260536 2871286 245288190 337170470 865227811 123381865 198298343 563296754 582495520 384606383 932431942 128172990 182929798 322718463 398591156 954615240 97871489 561389263 350135215 517335709 631929899 414479342 40230837 951703691 116928577 627727076 300227606 984533832 818187645 76563140 574298613 88733850 479098150 460964632 349377751 553871737 526632615 617978895 816089422 454846894 339387751 565055086 68951630 273192005 937698028 38193982 227005031 580496545 51731074 239460124 332888137 275112497 659212909 384528089 696733973 654295642 879207365 389025709 518071114 985339175 992274566 798511106 295199889 653783323 578838598 808047759 485454749 812927946 332910807 188237743 491116942 824762643 562202225 207077771 21652838 917487234 309640620 256939930 734417149 285081647 611344796 130337487 941861375 770485488 891833266 729923222 932223293 156046417 26807206 202922550 853360052 930711053 501214155 931327262 170338544 845265556 149859504 359673950 316456098 871043079 134006315 307054883 13413390 517295575 448311953 703228739 407267888 440201719 184318356 232693607 217557454 563025079 547628820 82347516 362661068 17435394 724095151 517209074 443792824 55651217 186604164 169839989 672801568 815534262 352636012 869728107 864458854 871756235 447637619 266661083 30442996 770316204 592769184 338335116 397051494 411932165 984172098 608151138 399506478 755448897 992758370 891918895 872477557 906923443 7704997 988371569 879616935 112329748 752512558 607516420 533516553 398992251 708434812 847889324 908554314 773800558 80284883 194114056 897580700 581028876 780810012 991901447 772338514 7169202 763701649 495317611 191676533 823415494 582563030 303345613 563496123 853314502 791103319 800890029 90363827 683609220 930155585 228273097 855042541 880662084 221523261 975129108 598958244 174856394 132047705 624021072 707200077 329509590 70225368 599324656 287005128 692801661 791090649 872110241 180510599 519202003 49903315 860945274 316005868 215778180 314729040 177260323 372402450 845155626 81240062 613015804 256936776 196181874 153708147 238702090 394237307 689369688 815401808 943588474 327349679 915281678 685529517 592661545 654622014 813989726 437721086 106365681 448448431 314417631 95138266 49891090 76815146 109539568 512575896 260789143 186699308 298792015 546066619 249674317 252682359 212729460 124718390 796409390 724816292 824551838 707765946 817563921 714059092 38074459 958057263 225028208 713738537 482765741 716600530 366556005 976991954 715289075 477599610 768471651 743442526 820243778 136699608 207633639 680046924 222678835 289948356 12251998 192649921 145206282 317342215 416738783 504707711 8811039 876171519 618468950 695026671 801369710 510580713 853251558 339348255 20055472 382538410 403255622 561212417 94471722 440995473 67351920 122353077 737347531 660651415 18115678 89698097 472785111 448596188 565967843 261363782 189268645 808519592 672104302 598479667 287741619 118192906 528691657 121946604 362129393 797660237 284831425 540443166 88678997 101704543 119116707 114781645 198714821 904904526 404768607 735498591 126816846 757982637 383779997 424905775 644970379 827019028 211196371 74777669 34911933 451345778 706847711 937262612 944283670 825093434 678202435 768510476 755140065 218063372 453555246 555912770 669568511 806430536 698428946 488478252 787925675 515033385 581318474 955489929 204920834 850155240 375689273 794285496 469355492 242865636 685583534 585112074 754143990 665795830 569199628 41069290 673466431 48865643 631356167 371717835 984151002 903784442 741150231 281234332 109633047 344141216 345082106 499671020 774426998 829383764 642948506 363297146 208950203 650432175 158277573 408583746 858992053 748370555 269254256 629179952 569839040 742625616 452625327 532422184 264293433 576583311 995281378 530462600 512568943 789634846 439976941 73790089 677200776 114685249 520749441 235994833 326155335 258911877 558318531 579763502 190472277 632623338 754765826 98916300 265420480 663885323 466926878 931566478 13397253 697528460 33813605 724577464 485833617 657866016 154518773 745682980 185095136 535868899 655948769 799286728 742906397 620811663 840254539 206090648 901563106 47054549 435397726 258177391 585646486 292712328 405358325 148473487 310815037 338395091 898505179 594583534 842502520 578626948 237842955 510489858 924655103 886781678 745023539 651541033 483333783 646474074 797311904 98009541 959326319 9747357 684948988 557620822 968822892 835821902 574984714 829931324 330983242 471511641 989898384 203511667 837199867 202381758 639980621 331660710 794880198 699421382 709195423 87105987 41743259 727035446 814364751 609707017 669237267 876893064 309478246 352525776 169744250 588942863 412927935 83445881 285583888 808632242 826420425 322656266 443908124 277840823 546949471 192451104 368221843 396795851 566725954 165803239 325070524 421052129 403235998 721583722 447857808 625599851 784086055 843715173 384057352 326632855 524457688 148052777 37614441 432773014 322882124 596821739 952055917 302711442 241000884 573741476 203030621 581609317 897571355 370535777 31449725 882730368 154513485 30642990 506135598 807016883 405818665 337641947 752782560 197261211 2536216 435692814 465284537 6767052 50783732 357600121 827358602 639407793 978485983 953956585 678775000 929985210 834833099 775864843 953376483 827261443 449456278 497673222 295666055 564851557 739182837 702489682 792121536 516151000 233776751 597377088 583474416 662614225 739086811 188155616 991308312 986855955 407084826 693539557 232954003 484116694 844437931 202272880 282096578 706679568 358519622 912931611 196711625 697170264 551243463 714712191 15682553 621112402 407050645 463194772 575917684 951779074 16018198 464057476 381398817 524466560 217711138 424031002 607159192 578756800 479201767 441466450 462585061 199795831 670836000 170860101 60224109 457965847 562189557 215760637 44026748 86645238 249803701 594171902 136323885 446251889 718409306 352661376 741768681 493985069 234693955 755933812 953564637 500117139 296423469 669883329 399748949 40446625 615187540 939411132 293221946 960112122 350283483 571664895 507650883 79942053 781186795 75149151 90021309 209275306 574656840 856907468 900643641 59391978 955938804 602083349 445622639 364610854 724834722 117045319 601987540 210355333 615229341 108141413 317421687 520888720 521395146 649946963 81788798 723518078 289397658 872806937 898762474 288941631 116964692 337975137 748210699 583583812 554836824 474950351 649876528 688560089 203495085 992649573 920250700 102578267 469732711 375057148 20222116 200080910 61984415 597806499 146375137 513522874 736938968 915846058 982586277 979582121 113824443 193127603 695131436 362000694 27564583 332507298 502196682 648654020 726291425 337899481 984273523 813908135 817126101 549305134 75990591 95435791 66687553 69119161 227121907 200931432 921154949 107770517 871286116 700002113 751678299 264853814 851385422 454913418 232022383 403186576 592824279 930910153 680544887 789738470 643264036 201604576 702634751 103692886 659638547 395488708 224007377 875668957 619983735 366013518 623785765 2761849 946682081 298193731 290691823 449184290 61051850 787962457 320965427 674912164 75866831 365771982 264558255 375661551 874684140 988637952 613316144 868831933 379707942 292071535 80807133 517207062 765735994 794832065 34731021 357641240 352528647 13133186 165208151 438275259 183995767 944730271 482712340 172455199 399497508 367983056 373163813 595916403 161557476 434194498 871744483 859490842 230763846 225086774 43144006 220822455 369237216 762418862 347843177 183313167 278535412 417650376 302998888 51606212 880945866 69486121 90785351 939832057 433252319 936521545 138092723 379829454 843783789 190942819 705554854 662191003 212736653 212502323 556718643 181952400 452099674 638397799 571096556 652188980 819696831 116809054 395174599 968330329 716470666 854327922 548067180 510177606 35472760 234130908 182357591 253872388 74839602 489711097 475618135 251823142 876434169 28402053 146613493 966224806 153598910 379738999 769976328 581185453 33204587 233565872 222773600 997377055 262153604 741774680 399990945 91320474 421465185 415314223 846291108 419335133 229397740 75585352 220296879 253078408 789285657 604078151 506484555 663911745 251613386 159985344 919712674 856862449 367500160 185773397 822990991 349343584 50091384 497285364 778514097 930575613 926431855 242710475 593183799 954014015 75381198 107258552 43842549 221012925 492989430 576224772 941965555 343019151 177426663 258153669 993825178 246369137 978090564 332805843 419154131 456443091 710365729 359056012 846196189 222502296 43547388 123023034 807078444 380164760 222846722 639465536 623807337 943011004 450955839 387773790 775889994 604405244 550992995 837319045 823560264 768230444 170543558 560651679 199323271 69126182 874375526 115361641 164876165 72750056 403357149 620484781 615091704 75607611 609781090 264307036 599131223 815589587 268163721 459823944 844557421 924217299 487265320 63332802 307037041 312812774 536207796 928922589 287167004 223964623 296550526 746294034 341330572 198629711 311852566 445379152 371402275 253332763 989128790 698877956 8425769 297011762 622056811 291635966 477762879 207531665 775328366 533527714 130328622 298031060 289721759 339891873 353072571 867412737 645964197 748251611 108667055 420194330 769577527 962796820 478196665 373433609 982703486 389942607 916950634 417219147 481238779 219387526 109499206 787460841 654858534 115774369 308977527 573967061 581061047 172242243 202600322 248677190 547050928 728327222 168888205 270869790 457517064 964698814 976940260 376977604 682182306 53466222 109694736 622325124 898196380 564666081 290591581 125448377 457702062 78474138 593762131 505782642 976642096 64571047 415769292 108259955 840165869 239157515 595312208 111202343 108195679 940927269 469093223 113788631 319955639 640387685 385604027 464715431 492983197 793399535 501181082 271485942 795514157 154912551 912557011 90875533 595077660 641800021 596278894 70364942 275167254 116589097 950129711 346492296 39534414 214285177 531688195 982784687 197772016 495885473 922698926 483625587 842678285 421945538 669013588 541019406 540302851 298669183 420439911 967900096 486748346 745470788 764671845 875790165 162466836 85502133 712916289 120584390 130032102 901676383 101818186 967595059 960649576 755383076 912918836 159404218 975030913 250166542 529364234 734381475 492155844 245190951 316563792 991086131 234773652 766882504 472597014 702163958 303918474 427477091 974558594 123563650 439430776 254192653 591542390 233582928 726308602 584984795 545526044 914587249 108614764 268356234 924295399 417559824 564024695 64572504 132912275 401451915 320096779 972193360 285524645 922197204 865446461 676191964 315735302 25653855 667459519 562253691 584039742 318385638 365381582 487943377 807189520 924149136 508069967 550327999 835097901 228983303 933517024 114077260 163574460 261466668 941814053 559441091 696708798 829195947 315801882 603925005 197145766 725389447 397179347 437542433 467087031 492869699 648037728 47423264 452894309 20829063 834601851 441511129 402714901 450880383 369544189 150117677 774482055 401326409 317015390 889697748 949165710 55722388 926238579 347851846 706296764 569279878 591103540 195998409 855083257 909692364 442434504 420695255 126221519 561365384 752760859 668056246 55168651 741790773 399889652 523164069 220933955 523373760 429672867 77424615 246506837 609260890 828988648 120689776 548886119 783101851 83676551 199083769 177428492 366164177 381379349 94578817 831861965 606738106 80940544 360803047 260171011 791302807 379094572 96727277 295404715 44944074 789880211 111662475 504789364 635262382 399983952 852150982 653458785 726669806 871950727 594341517 692578417 967199277 138541969 341765767 798655705 560301809 484808030 218246438 48792214 558685012 99325028 517561655 613097025 396475630 427364161 188496378 460893810 993933490 6469334 577259827 436052914 449883328 575186995 614102818 421671739 684434732 998017243 493747457 68120779 292265842 103759631 490804109 890435434 309389901 80771906 567039860 600718855 330568283 780038446 832312082 608940434 767540650 766353207 20082224 361580645 286062738 710300366 61451860 460209496 99358533 411421372 993677038 674351485 502203397 240535717 182966769 245294569 576590701 581025177 319772363 490785396 576180936 662732785 739686872 52618621 755918531 993777684 368092557 844485340 371828712 298901542 967416158 858158728 623878755 162925686 732401893 278827462 383115704 818506826 80168531 573384021 841592793 505327537 571461717 605040625 670406633 508043035 760366888 303563223 85381964 252780620 188604966 37024729 782508995 54306188 629519817 399545658 994006560 24620906 332100944 912203155 173498336 24531592 890847509 852282534 118943009 205081902 124783712 512434786 30841478 101924096 780340469 304067509 147243556 789157355 927020770 983455990 989607628 604880156 145152616 679347258 909711169 696204231 289441917 804381636 699067193 809832132 393834265 961546366 219779166 678284402 990376030 808630964 69811845 559533560 211511156 573137538 238972911 605325142 398459140 445013497 46296639 855810093 380516939 955968001 865357109 413707912 152671630 194101936 322028005 613883899 805291351 962045180 353665053 968440193 273564573 743027025 949027047 565425630 822436305 285441835 837912752 237258445 488296394 245395853 132120284 880896937 637030358 609692591 856462811 316423516 651360327 516568712 819940938 82385289 867391789 949429294 788229701 784018919 237883422 695637578 21230974 869232842 322028820 466628786 579765054 579070880 44728737 702843980 70916756 805036843 403217169 873322446 106476838 423188747 744224669 408133114 651336038 955861950 981013973 493641062 465672888 125374007 123791112 528161021 32436241 690626748 61562453 646200382 709378035 313415311 408382335 227464638 244237344 257119255 266788132 179764825 741479796 10287127 483247256 290882620 632631014 946458811 778715390 174296316 838241742 294959475 210651615 705772583 701389902 732286838 572423778 330004410 117185866 561317021 675846109 286806192 387005808 212146385 283479193 506885473 798769216 371753136 323381416 789496056 108038665 474993696 293493906 349722501 264339505 766875848 508409700 96765925 564617425 671111684 821786138 381857344 194538836 48347072 912246851 323386110 676647387 187463610 407424171 339264873 206849400 429089109 985424931 611236771 989645507 800152563 393557719 118047206 542021178 34241242 672036029 665759924 95213249 802715036 842957828 425586227 616914190 773237178 337661364 929626431 101862850 68988423 865846989 796225176 210952150 169786720 13480658 524344000 458771978 287236019 867126997 411995920 648634376 593431991 418393874 528643344 30402447 369124642 124444753 264218256 664262518 998388148 852578831 630510793 267143051 84332122 139305245 566343246 778237423 318508269 673810077 881800771 825083629 572781392 360249183 154921617 489588921 675021210 651172212 631333628 280606799 771535352 189390007 391836143 77513539 968058216 573487959 848165852 467001108 634448106 776033982 136608815 133410741 437813120 604119573 98311202 15342570 213718726 712715005 714583396 564211381 929073720 270537496 459590669 258450145 493129001 932588264 140713525 672477149 498723696 4164049 209937834 401125250 268421874 427700206 796491580 219900442 850626097 322892218 322549135 716092621 434471093 116588072 348075787 111182194 939844676 114543484 958203368 262639714 186372267 367888784 938684423 262912517 594719976 359398990 16973792 972431442 746017668 577570278 227914322 290823769 906604006 322460613 482554329 402908481 785633981 852364104 572863529 284359354 823107554 644942089 536765003 160497524 505543289 519600738 760325872 208375535 345599411 427113689 753447782 623870109 100999355 700063613 120625961 159324206 656661156 690568368 843247713 466497500 452687098 913207538 948436814 951821287 901114160 501342533 741817325 834598483 188313443 324250932 979685254 116415290 729234351 993405370 78177515 806855974 730431689 336493247 554863171 890568155 63197690 876752615 32915351 400372089 11538594 840117692 980789877 721631230 423521133 34371585 176602040 368615424 598469630 728389918 871883747 419079189 416136309 382081265 696180356 680896808 248355968 757546978 156925368 726259166 658116440 941801581 186272804 806953139 832626647 659886888 594384291 369031616 214202332 925084185 625359863 481571270 387190239 758198884 172371434 604613405 678667958 95275941 653563289 545672819 654266724 106315449 862900943 528144457 657719709 254683327 875628907 19004140 325721086 25922266 816417085 569348973 307120261 973826963 233545110 167011888 918763073 691653029 170407166 915863291 197178270 471469148 173269017 491360618 804647195 595670959 336248339 635784192 386971378 940245349 564350908 122806645 13915016 778269757 202218817 614974143 627704205 53675736 460890493 823500843 66814993 689794963 139029484 152162539 99242537 13733852 210736231 433313996 81311445 239586239 231804890 901352988 591028019 889030865 721335566 265524435 517711254 644786702 296784861 251157672 320387694 905428740 355909999 891648799 603507599 699186210 225549574 524523764 892332810 815286169 544011509 277737765 288068947 119271319 428111942 323166889 752157352 278435320 136177907 313350203 981578924 380522905 683616218 47616840 875126351 139930787 59549776 469802865 791907182 584417518 641263554 319001514 939992786 316160353 640432051 475001567 867099110 579587443 972331980 596826092 75711930 833276703 863248932 16414140 441215056 310300096 553899084 19257910 217594324 48253562 214615995 626627141 741857838 221319984 550063732 636685070 823369 8089008 316209956 99178169 98656470 474619264 451233854 381232509 882503301 491090316 940754634 181376056 332935150 664409574 578798500 854869392 279236364 136667924 476763614 544523318 558230589 355082443 578103880 834078821 538612982 270227192 483028188 34040079 300124762 102899320 332693282 186921671 650359243 230041303 254509276 744096114 311933748 454312936 420896707 943280060 348037357 183308319 331832520 784052726 344455804 732607164 345150436 34603998 326135346 959406649 436861115 670972653 208477950 459575460 126242280 283521513 36724249 394120050 7749167 448261555 917831967 175140770 989963054 495576841 365549338 139625575 777137690 71841991 220720553 365454164 74800371 184948889 265517831 846768781 276114809 872874270 273225258 267005337 738772895 286933624 865547800 594182679 97458857 639863181 924267074 559141374 275759802 20065621 690635086 916430376 124903001 950631580 927451119 441920860 729134298 583377847 580205315 576575844 815423249 433935166 652340797 514183957 318348319 961224381 19717487 509179382 42859711 54402598 558156841 513444568 191754757 373180534 890871087 179973140 782481910 228491900 414900896 751023726 768138527 866747614 77389299 577423586 648875400 109855367 376648775 168321338 66320460 967261445 642419730 486369806 559857848 356129043 774451245 430224758 984281196 81915451 272584253 227727382 265963596 878836877 997340814 321374327 571976876 114833102 9396996 171375272 317531874 625551534 600196475 72278898 447245662 914232089 906134937 844805216 348148557 17763983 244455136 694836737 830898966 106121083 904988711 757404245 693431543 437935052 755875645 321581131 898995745 79206527 99123678 762624100 110913525 361496831 86470973 671550845 941692725 527180570 890286255 607651642 847660457 701442777 412213315 603544609 204880998 683649321 127405592 82417328 35199113 792208382 787373430 420739083 235519654 594358669 62854442 146766475 848020617 964075153 232652368 553868823 83894225 913411271 619691316 495949921 651883245 617281595 540383522 186270792 837898325 495555598 841325441 908197775 908604274 110703670 762205698 315985237 846575424 63679947 104826281 740200617 84171598 331124790 740478023 730559395 997414796 386162021 404147150 594363886 486940510 957807406 463996006 536360877 886492225 163345437 635899758 192946943 985323723 262377475 969632573 123934567 815357165 674938350 768973790 467235936 712309781 591446911 755358883 946131784 535457442 731541947 704774383 461212895 542583388 259068743 818545409 647208964 971493899 694365989 137097623 725728239 465981011 761269586 163304099 990678793 729696775 516699402 830150486 34599036 32968904 637229994 517636676 63900933 420846967 571086548 78676599 972004097 233066209 592109652 977636314 87785031 597247922 504471727 190789031 834660172 936209009 297542281 947755749 78311363 851074449 425170932 177891408 892935848 46427175 194162426 793539756 205777684 877440764 311154414 84479427 806671737 206803278 498583479 211919138 492320707 500250912 246902024 692823974 832587790 913876216 286667585 631583734 87401375 541999459 799250602 172556894 940442748 690210200 51448322 179274053 884819885 731319942 450025068 892986239 940332999 978530821 228185963 590990232 591967051 742480158 580277518 783012577 58086711 558022377 575525760 927581949 463960617 790546735 398274162 730804408 247129644 994154318 182418134 128376957 931406804 17199187 133879056 387828745 500549828 369683441 947592045 776516353 774612660 798240516 415690622 910355262 915039416 299988294 936140017 8089611 686848845 576618131 169421335 490837242 11030482 770775264 533122462 620213960 688629414 950010244 661645125 588736992 244577015 1093316 873350225 197817828 731710121 977893604 744037308 685198309 670572366 707956255 107874719 260243695 868508149 818759476 706870627 278576203 282049195 781946182 198639108 952262084 929208176 481148282 562441152 850286828 414765801 339974301 593861134 685269266 61716660 439602403 444421546 534268548 194866920 448301238 794663740 87572823 670227757 581387433 730385378 366901973 740990210 71902229 892182126 246718139 679824736 428878873 593959071 79716755 342930992 280932270 764547898 18341292 856337595 855537184 112854846 805992287 827400935 81651676 260431058 623537566 20448664 419872833 278721491 367941650 40321610 84909656 243969479 481707987 341431001 824503952 530055392 260482136 540716558 960149191 846756743 779282561 887629483 915318948 446307954 14471731 784584187 495411716 508636085 340750180 344907447 331377328 812335372 777256912 37709405 664066475 298603279 960742701 576126313 63201473 78571496 154493216 540942523 52530727 109739156 217388939 671373772 937807001 679532053 824334942 443667809 136975433 908943639 591265601 516689066 416688971 470625367 200807195 655907628 494931928 150707657 345070309 592671500 828745469 520585455 781384846 551000949 133335632 519849019 559758867 731141666 643754859 273707615 71945893 359513247 316009335 77736703 146166619 581955071 992598275 145360875 838283007 979670419 549706627 727540126 16941664 931735181 161869983 149073563 999893137 485842307 589155694 551160057 81493776 179265720 914291009 126502027 26245528 120205391 876060689 133582494 673902839 906439062 944228535 189627479 976301724 742584900 803605904 950480783 591594242 526654549 835713944 267181596 907128728 908791865 695027787 52310645 575876994 978254941 661033717 347598722 827937068 942970062 503892057 257210091 401278557 623443936 465885254 287451756 957325990 629141265 761271312 662355490 338145462 441735371 871565616 919760856 300703238 929019655 951555859 415202047 232462517 144128905 647686017 32145298 729713201 948398622 406205971 592857129 777645680 700136277 405414835 132287305 151081837 953942150 68206135 995201239 267168307 206175409 225488202 242196299 950110721 984889435 812377705 355336224 584774586 377155988 920824569 189190378 301332625 330663502 28522238 44494817 159744886 552405630 425788039 567957018 311213605 152948095 991800143 356569825 493366586 675121111 484626897 974378127 844157510 390148368 835667279 749701786 612861190 778872183 779241327 622362778 277768001 901695340 920907113 557834638 48377961 304082656 698645731 60230782 30154343 425025951 97458759 20175529 300630237 171944475 674317101 57132502 61746440 576630927 327486221 556678843 376265348 587800087 754094500 813818715 114791831 811122505 162950400 582525086 814769968 722459537 177093339 354008309 333859416 458413341 457946815 236035980 114142600 433268215 346658914 88943393 830642406 365443151 428728111 799742578 847902768 503946977 73763507 232760939 868083690 314301194 614014391 686253129 399331099 306809961 789839655 521721145 379792882 320654490 672377681 760178235 497121787 350884224 241991359 189633832 219366664 205498731 766791983 352486902 523159881 681926403 642690229 492616028 166988175 902408730 527915611 478857796 719436652 400388555 896306755 744177987 396395722 970157845 184979340 419609379 506693153 100610662 876357197 827819877 460965562 984507773 453429546 310790086 979681764 367169990 674934137 995757709 272919144 833556478 826783605 837244632 21893111 920251001 576102119 984231647 562596809 473017666 629984173 52177096 651528300 385733405 404295464 907281940 656266700 220165144 802928659 828904214 954532476 161042149 689883822 263370330 487502510 619112098 898468787 756028044 578399729 667458995 358468886 141706052 617821062 151246982 782900960 380761176 520047437 305958458 561004300 430307037 835649886 25617807 316595841 408554263 256310463 398513131 553518882 69015451 377175839 701628558 444482844 558774804 73002736 742269276 734375022 341155904 408687593 183999878 90693859 236386903 165100539 835984430 544699195 642941371 180896085 960633967 628085956 948160237 498065173 515953478 396750753 112043265 144698025 823695061 195003711 712269309 44139596 493997261 572885224 540784100 654486606 533459559 62199626 363379604 473796508 743415978 851798109 745163062 189036848 460748251 346522134 794885902 787636735 599197130 353790789 6263484 84039081 224006541 491360420 497957330 403208466 851070955 978481953 273487281 362185623 725716057 967861513 184614756 90740210 487486674 269931828 766019185 545690686 779361960 971524517 373511858 252393902 966311520 384678381 871892195 690666775 334178076 408421267 726345830 572765899 167066540 555847942 579179460 545409626 907724350 472136095 159515103 828059643 891208287 964037134 110217767 586317122 356915379 457629919 639391865 186597684 869338848 505542549 710942285 371904982 577524201 38632687 291932840 309854890 825469868 250295857 708751126 31039002 543540987 829047392 259156489 954650279 3122517 490112487 709833458 228018208 270559116 379582425 661061894 309347840 541671549 575910314 58566163 151729072 561579512 711436974 538207718 794395023 662147963 766659884 437253149 398277212 969368579 896825074 329113700 871268152 202886519 257446083 286756214 936882653 225664181 321405699 705329871 46287456 598940218 876325647 932442166 29975219 972363672 881453025 770390929 497850863 727598335 698136976 475899542 156156809 292983398 224875908 2449510 639725481 530471372 79882298 540143949 519192520 148709336 352805213 426346969 154135933 206669822 752021908 985255288 426034692 767276116 839702848 839549471 494452432 147070478 304000770 699808569 689331891 437792625 682497061 524206023 464448589 595870011 141165247 450067478 579146240 188586342 377780207 84738405 323010257 952318972 244415381 14799510 497516015 785986955 426145381 522821569 692388088 107746417 267125934 788323609 929897619 646324209 967759982 580171293 165457381 672792845 540486162 197376903 59409799 361145923 909797833 912780752 314508838 768454027 216896171 817469222 702068474 78071946 178406084 668430645 532630492 866590664 294256414 616166575 904443400 780950884 587138955 847325549 724607877 409302193 836360895 705997207 260815316 766373468 247207810 614015968 451935347 320968296 93372019 315642188 187577165 668119295 817480297 137075482 935075076 327029831 839902146 263205001 462380580 202404737 113013064 179453500 885929996 524730476 312256099 506530384 467085345 547724741 541279100 786055467 344066604 428187802 805043165 839472073 629100858 888896911 270540281 331046651 202913314 685549349 470958428 969409551 529107225 15681701 706036650 890140533 736566326 359120305 244923042 430750493 151779007 174508855 466650164 515764114 24990730 816907701 576103911 51413972 86558976 271588329 198639079 691773142 118656301 552920169 668621095 184598013 5242107 229203960 870676551 686262363 387413567 238905057 742325727 853132284 782669586 367084743 502188379 543542696 560957473 357993065 268193109 976667753 926707168 431844793 711479262 39040538 139301229 501231431 833092783 75239426 899973068 718305377 519910625 900233162 89745992 228285038 921124171 447335879 628678108 617479765 779275089 834723099 47915179 33655407 802175736 133658482 92689013 158986251 945260278 715781023 462018727 79794735 790887345 682985576 758394091 956210966 397800238 485435964 872299817 285688780 343198019 272152543 187447336 502058974 784583525 732017125 220597039 252572642 537701217 437386688 407837417 254057201 624483008 580359349 803761383 229429096 747892524 463145132 882474158 678718804 993533644 856285074 303016659 786067133 9424239 100744916 663760717 773486662 645107736 366516071 489686264 269114608 874969859 957515630 227737390 821267793 620984135 215015804 974558953 524977370 307524372 786240017 473819761 26870681 142083156 249579653 623176377 966269729 914161745 676030971 41041467 265456680 637451357 627522917 593449021 312799927 69831992 559055359 397428322 985081297 933159045 983975095 29308620 413283877 647131391 739698199 848272113 734881345 246575377 487663680 462464410 235211416 18520750 387081405 273033333 618179642 30032284 352187582 783319925 265290710 285222900 145321251 382962451 265993466 751457389 252202065 687397250 915807754 707248172 54926575 724849479 628293832 9277730 363691998 209864739 196682010 188980601 398624814 879221791 682420356 446512647 66735990 451068918 407564054 996191867 71326360 173649254 485136321 390571954 557240047 23003768 486053185 266972706 375078534 872986647 8356787 97368016 984183417 644470248 191200806 684782036 129555385 183074821 679264221 273543533 940859104 600316550 59296268 335303761 164753323 461735531 790865681 529943313 954969465 957187178 31346518 422304367 576180808 838293373 727648206 681326814 262563489 388684778 556442496 382218811 51034800 719934239 540116313 594307237 123896319 2129148 789703190 745588398 737516511 570028882 639189852 959328237 885817715 147149127 853309553 909570767 557722445 869223605 93197853 384253014 784861070 416519383 264402645 931821384 894961827 658668291 178850504 776659979 154193336 869476356 841592809 948806197 810589105 142908834 584035877 207713115 57115095 908774239 430053904 383899270 315483229 39751845 839708444 284978930 146895950 672919091 295209155 253890857 369328213 67577418 278699489 534949289 965574995 482606587 535839731 381460074 189478901 586280407 971647950 333368919 440209136 293673534 77161893 457871669 886133931 791166429 824120743 502109419 815612868 899850849 225763106 981898880 458577147 485138934 635211946 860374282 234499167 455294273 181979787 49620092 168901034 664841592 218391384 307727825 487653341 877834293 314306072 99276015 76032920 807299786 172916871 255896117 460211864 336085248 330699315 678071555 915239495 251575656 243870486 579101972 871032239 909997501 357395881 351725638 515311114 549707237 581554855 280113846 673540332 931872245 504611661 689735224 361558971 961417878 733340954 679802915 549384167 610959777 724507827 688894469 726537661 992941235 334396618 891068941 312913234 218903000 649904645 224068314 477768768 347289325 180336871 265462504 922324770 954796247 397959101 703504691 441554699 59385664 603282934 385297594 383780694 742373176 704653044 841224109 576900935 666993376 63325942 59832016 211813031 698918492 97047020 479087273 424190573 77113297 991994284 720196769 965418320 656461214 449067148 954906995 79965744 849676333 864026684 515189921 270823051 523222602 443421913 1813096 936373471 945797008 528423700 909796740 936592532 822066442 468233226 304600706 813335415 832794471 883896238 547843884 911851127 99265035 38068276 701859752 997758958 735776309 476994752 982436373 694269321 208921122 833055678 737650136 145085761 732193413 687648530 282793401 744336151 294912065 447084126 475563940 813715692 779250042 944145570 886099703 787274828 17753078 189004914 383151526 560335066 535858228 231918481 371701905 488676977 863445536 974194340 990986611 233364109 457873113 560219158 195182726 32669852 741891280 376736147 256163007 231020727 981529501 43612865 542899511 939357395 790833712 681069220 411340938 401822747 292405926 480927435 327467290 696343928 104414478 328685481 463396450 541411543 488012118 951283643 695384943 834229202 509288240 536552110 745627639 972731406 460470397 516440220 702246664 194946766 165968310 524714047 272314244 424835434 112430377 192613821 797658116 880156158 810462890 478754198 740178893 830020571 947519525 149813986 450093966 446677058 318582081 183717337 634664520 349719894 842145619 65062432 433737127 399769380 261324158 180377262 251924118 539177757 814894619 881870745 958303609 164597152 893100356 189580927 614754132 8512115 193899898 680586088 351932502 675517263 663557201 814516427 818538157 991175939 695852776 421440655 347359227 210018864 871361422 801549421 531741784 810085559 52978953 775257684 943942657 238103194 66931674 144381391 304742862 719967379 575993761 628574284 504928307 474934568 997444279 121465268 437938443 520140124 451333288 997788427 355753612 549369739 614047411 262404964 247596990 661921476 371218381 79855370 774266240 505676667 751088479 525004865 663933776 166008963 719027790 478149138 708026950 984822357 557580493 312381410 447420949 56406940 493007264 632175560 738601459 602137607 472547590 479788541 696019519 216913051 204558013 710767767 146947192 73288175 398587203 46573802 346277908 114162781 804416513 847629495 276152120 704754042 297383218 625394548 379513462 689005676 164479374 774859263 141197631 334733611 667436943 791535164 118703460 284905415 120466478 552249358 713259409 881202702 557605775 955485586 607347571 759437823 851648544 307857332 903485599 299217211 79208283 818435894 747876595 357307696 705309837 475225075 897175533 846727912 515194129 963889886 506221033 558070218 287858116 740429207 168351618 420191656 535868930 341482164 712169249 583985543 587433568 185613396 572638334 675180347 369171292 988655576 684419571 681919005 468609309 966685758 330704799 535725945 241480105 559987090 982811070 911605746 788213114 368842157 933411870 534780506 656873358 95660493 362660247 931867223 951587932 822227157 763555205 938614519 708210778 247387437 778246723 538846854 308660521 273321907 65503147 667641281 847112045 393714720 817222275 950116 515654054 88227994 923091602 835121582 861509096 537482884 535581870 702626799 21435416 137245658 749710302 108383750 696180741 679096375 799657322 3720020 738677609 148867394 608839464 963559262 475141324 378100260 309411242 572339627 501063884 179675597 961231346 940987863 760116024 562235722 914872009 883072314 686015691 444729152 737716974 823877537 926882378 787135581 614319086 865550741 117589031 873002393 186390003 12277413 335381766 134202117 691282361 836503130 460607280 322371589 959369528 28107469 991668794 831593959 802261640 82582201 857315570 137407736 576652906 929539289 997723622 715088303 180261154 199263607 890829732 38015188 375702918 582932919 43867535 440937333 46694853 825864480 950693486 959819622 375316388 481993909 432889146 425709490 649410279 39060290 221038943 932850067 299313025 243337597 879779128 330635269 212490305 970368143 336380415 299196499 473919367 874576222 712930099 202548329 298268553 966009932 770537264 634823843 576347095 26712176 739210618 976809288 527851308 356308663 718667054 453386680 843635421 34297562 793215687 245886518 168193479 305326662 211038274 300846853 531472309 395005577 339428264 406621906 630870000 834401014 268513578 8987318 692791214 763964728 274588528 280189810 618865666 239073910 619281467 844934842 197073253 768530277 166200420 964357211 784859888 533861294 69134550 604892607 110029740 842449631 401929317 935462113 234712280 689719706 939339292 764962906 576213563 658399362 686829873 466230381 865911551 740599122 573738503 795307450 317526185 953311258 719808537 57907835 559218286 527224038 621256876 567462688 740407506 543959016 307055581 444171754 566339987 253289670 827182016 979008056 218812911 527744657 342026610 756476194 440850992 497970125 5142716 607635271 874471368 669045314 724501280 808635111 167484541 27962768 439365694 964677798 574176002 243676765 741770089 827620555 624392547 319105285 726362636 1063231 578917477 393511686 594579638 595117477 921148512 268743882 358794139 968755797 776064314 32458475 586020043 88749142 510549312 118384902 676481388 905376882 86701629 865025848 311546900 396527936 734651261 278939687 554616583 447427772 708240543 624221772 406367976 289580363 764688103 222547032 205565294 679475730 648409857 258974433 131053538 261919666 300602648 583553409 911517487 359669652 249205918 730513904 457709069 338097999 356523504 912717931 982755946 548361357 137913708 426540691 672941430 139733307 606220482 792090066 225199145 607497812 753356147 140642324 979791674 156633692 605886361 912300543 290992890 242003707 156640445 83082693 255157235 974449969 137651618 647795430 454395670 99758775 739496030 832592948 596370486 224058651 402542404 321798176 301329484 359111510 810787068 191441279 142219270 147441087 350982739 290011356 863266981 105065852 498877631 102422179 557782292 255531720 188914310 965127711 985423478 538957227 147986687 256972477 872252909 64788788 645649834 888310481 528843709 681415156 155372611 467280878 576368516 71369131 24885492 455108432 377100948 845165404 947271139 111029745 663070075 656157661 668965163 994924557 977951893 596811220 459762145 156157024 420417379 719706039 392680663 426423821 428947689 249750251 378196202 583523365 351824307 301226428 146804324 166611872 835757139 38345960 159651007 465649491 116778801 141734344 313116902 434579219 926884240 96358599 219956803 811112935 890819848 400316238 413313797 704241497 552236659 383381251 119945967 461930520 629543838 498323648 158581165 353503093 777310323 557380205 284207281 717002675 310749770 416975014 858399275 98917821 440939384 121760712 76323401 12782260 662835053 756936834 886553334 94528700 48688568 234832312 207315651 347637029 128778061 245572579 411689642 6773025 713744573 260394171 451292750 810320743 499051954 30656708 109792501 372408582 661504729 934450778 587985226 229328637 449071690 513753544 888043409 434616126 340693629 172407518 964713182 473985009 515701811 210923150 649653614 874710665 115620469 168077101 176198227 931000113 705984925 770473821 695002781 960726469 262219637 510933046 357672051 955707035 861762271 144974397 716633041 708906614 808566212 769985328 429745397 853400549 98130816 483865700 139307638 74679992 281328718 343659209 746507426 81810420 509886215 542088331 201372689 192537161 76164113 467230191 859005552 165201996 160063900 787248636 713102443 172627366 164746656 12958232 701700096 655490308 461542211 455998821 193625719 780829874 815858341 489763531 632637293 646448724 46384364 502023237 586721167 995628986 52219800 466510943 428575732 203658733 122501903 363950579 217600488 784775053 127871201 877223337 664912263 173961015 379430037 334598376 893437353 244635680 14776830 268674088 11452840 275801879 690151382 376923773 258718074 261008507 731312308 324785428 753126180 808274885 820237429 186341931 5908408 591499299 837804171 23971745 243807327 671699406 128436042 942452025 559740462 491179990 401164727 238696197 986749722 592719546 573489510 491112349 782757197 402131623 387398881 161226239 692364372 520398658 510242664 301397204 960973506 748871173 303955440 670504597 639922372 309634877 758336706 261380283 260722689 788387415 498193128 494029568 433894233 815609121 789537413 540315233 448614915 111969631 431824681 461849186 448179703 756720918 907915797 484021675 395238992 970291769 481636640 863795499 185905627 387908615 234208511 710287438 551710540 487020082 345628273 443959435 920483013 235988580 452322484 411069611 342185184 818327331 917380059 175673876 884105032 680477704 591522309 239699410 927177100 919135157 43133426 699511946 198760628 513923084 50798565 559290864 349787487 447379407 948658823 614952047 662642202 492734522 288122240 103342467 773919694 297223069 995574463 463451813 524172158 656805700 573740985 154287065 816140611 421657069 83079553 36750971 351280145 272092671 738302883 832404918 687206489 876466607 430007382 175955836 56122538 365617629 9158060 320906508 837740033 46754957 523930807 846191222 729533616 483744628 6585162 409998483 634983323 215342287 659127439 246039414 176994919 47745413 515048676 402063725 989190775 288204358 571383832 376291884 298922155 448043975 917519596 916199718 886123724 849439935 535205953 220131706 595512436 703003394 520611468 616416287 662996766 451425371 198903913 18019302 677554319 709233735 145801953 439320676 487370304 527489624 238246114 247520757 386961732 939100 382932940 930965659 680915716 827458759 431558275 698928654 645130770 995885976 277541123 765247123 595351355 731663964 118619508 197016803 288639593 868722130 81468266 607374362 857893201 68017152 533697863 102412600 316769338 454840213 568317068 226150463 518930473 640585570 179907511 127854129 370290955 566710523 657690297 157049043 687325310 827248358 581766014 748878020 257182631 924311017 970488117 484959565 735558657 259378555 903154704 363716704 439213493 996884317 256258523 395982421 552786755 337885821 385107831 140882335 166607811 818771006 337861107 164475247 815235061 89709523 716375817 498239824 995471622 803665070 54147173 849670967 674508138 834789612 68231812 277238511 323137142 721213091 507562125 252665427 274387940 423744364 25094584 238415832 354283851 8081247 98543680 938264492 941688400 614820096 102257371 813583686 543269633 510613293 416475109 257604549 392456787 519404466 276443804 938701486 887775931 490957228 987720887 34733404 820371245 127811516 120387400 146508609 104297444 222012216 727684485 944592822 333307081 426891895 726759772 642439483 729105535 360853224 729328655 52049916 483141440 821764512 531413822 756779795 898170501 645592233 410212918 254773617 611687620 633662666 565773518 965558418 245394450 955028628 561144388 654985189 715947707 62513860 935252676 75953953 825219758 172735436 274264725 963607547 996398151 780470561 420722597 341548851 704324551 90968186 122104500 895432903 871152093 226069546 537033018 667187088 584932959 166620207 536447146 785980854 267840498 127655256 119895680 4043083 819507102 136864331 157263640 940200304 258650157 39122956 532621227 227599087 121944270 656603871 380597304 923159472 458231191 538787773 190710302 354275655 411604691 636893106 196375992 418572845 330844994 594788353 95241369 932168774 55275525 216395108 985796618 443314985 337958441 100980934 865858523 362756281 178196369 675624750 424320723 514280406 928166461 872836405 790937437 187160304 679647641 526072617 754217373 747603713 887984718 637091590 178283851 303412820 54866071 931844238 914198903 658198139 570544800 565628820 323305280 286835430 331841009 987482637 758253907 305942263 639844106 800716006 544686773 48272900 135550109 257991174 383816551 572421042 290562269 342857166 67693698 834728036 494865499 273259288 477491239 652539404 390845445 459221823 451853622 872849035 394846309 471712326 840863517 563121999 353751877 8512929 642544204 647954252 226529669 554726905 464607637 731581587 133598380 523133297 472060232 640202030 914229823 761621530 216762864 41840415 189336470 567739797 168159655 442921719 982970208 820858406 358797764 768902531 397880728 879362976 319283792 880982858 693540490 360622556 620968204 411063406 238635721 588214363 507284812 907830354 656049796 228556661 808962480 260900901 638316519 665066846 111211713 452685265 31289634 476480613 466826629 113567648 821322637 276424668 365897528 755481799 462042194 2300681 181475502 471037513 556072316 692886142 276222074 681799452 960270343 227877692 619124800 774264118 590633209 553823300 131129019 17629677 704667773 242398744 452858794 248568247 311859149 135573610 462255647 968531641 709850099 319519242 380460182 297411919 889584758 404616925 248486270 333153272 998820436 5268967 261592151 176125926 435181296 490947261 81644885 160712770 50219346 967287643 433073366 333504843 457136280 106879513 709612257 188980034 530347684 762961431 90313446 688718133 401596473 152915760 592906326 311184040 130959428 972963514 347678656 785828630 46751190 564762720 729931424 465695785 850082956 347761481 741062332 856532867 242043761 382743598 342597910 156018244 626535971 928843322 667998829 170778948 394234040 91624810 549805826 494358546 492581422 954133836 420460039 514485280 109726013 712783552 780261081 874916540 236464918 28592159 889681438 591649119 960561849 678808389 983452384 453330049 521707139 596253062 624573164 851535465 954548805 402574054 758490770 791419147 645482156 808208150 29402746 363430608 958789968 709881980 453564694 693643820 254971638 222459265 90818026 368326650 734161419 127854405 73060906 108532443 711013453 421902330 25878185 345587597 383172982 513546247 884280275 113386013 577890264 648407980 456328115 188945882 562259970 232510641 102354142 713495801 699074481 241484386 216109791 853944158 171033772 602778324 968068374 196940494 103696852 996908421 42269188 53458785 182859131 275081917 591441826 949785422 773022530 416092315 650643766 30186571 27614303 698605821 457059344 593262341 673663546 967870569 270169803 793845 733245306 785059377 456897527 179425498 283549834 97230583 666569718 788008708 395614677 440352016 517964323 834973522 304624719 785586327 574059385 256854342 883846319 908906759 947255818 374152476 607043471 349693644 805627035 168768419 947151427 199497733 674930777 93715674 466863512 537998816 64701316 315693178 170978127 748605041 242983411 917235387 993439734 656901544 733361265 571819192 721658137 907290037 617013745 575285219 720046264 690481740 441941236 425759529 527907871 53191260 787847554 639147515 140673554 185856962 586216056 454079788 312272364 780640215 91032616 391459884 208192400 413330902 545715094 565650380 912419490 683615887 959976412 55805597 497759259 170881383 550906060 69388261 589078798 83954384 576476943 486640307 401511902 749796544 892507781 115326720 464183453 393704193 137194034 805684999 29880125 403630138 988606262 603551825 492332984 724627107 973758986 15118071 785967896 987087155 948382971 863332447 99105523 297496468 432758215 343733949 859038630 418033140 919781482 813784755 961832998 387429057 918016465 771659116 211145493 943758757 760434361 339852196 367449143 865171547 711934628 753444820 107846637 791728836 79358773 278513244 11603132 27099504 186065489 703518669 417804452 654328786 728459673 960845781 548219921 965157036 950406896 671041051 344591540 757176552 22156326 916375960 141138979 109308597 277011980 881155350 818143572 739064828 506321789 374404492 471148614 19037915 839531163 843686408 318521261 10412263 401790940 597209702 721522995 830016622 902235610 239658507 950751344 349995107 555836536 973787522 279171906 175120842 806089623 421454831 552468612 421105374 775625395 13476809 969325025 107052532 967061013 382787872 246850490 149817199 584078235 986745339 759428116 201382369 617948883 802707466 259580264 503662379 685933286 358353084 285321570 141694375 970405158 349929745 348872197 693690503 377331656 459983889 596304635 419537824 170156068 534091136 31597606 802795321 992281532 898696534 633718569 760983516 627783362 688160199 221060086 156757842 919606170 51766796 323535223 715144626 232391767 882136299 914230706 398737394 684383679 882065456 1905300 33892317 445340683 710429258 765389862 110920812 20166472 407658703 325203057 379119882 921391553 581634458 105614695 821368430 584907388 882197042 939076065 957046510 265320743 180800879 25681398 767030040 561086585 743833485 366867920 161240622 901392840 891955605 868501565 434041904 68840085 31592340 475312464 577572514 748287070 812805867 904254394 427941802 846122826 483965013 346118361 505022817 43570705 602227711 584689825 516129236 323404672 836707929 262540623 189474076 520446614 219483292 835525774 309461373 177673744 554512220 359894669 901671854 641814816 840699331 222687416 315855319 753095407 258631083 432589602 126570346 10690850 7402086 172905109 450593628 651224628 25177833 728995948 794413678 556937962 65973926 548401132 604688714 907548342 222307993 814369076 180249023 95888365 247653154 797075708 359506506 148328898 913800416 475648328 425739105 215170287 792192058 178094642 496891008 18634056 589167303 889497608 907076574 417469857 945055351 359720116 358114978 309327004 497506954 682909133 372321923 244495496 135756747 695842273 942948262 193086044 999224791 90121772 959710182 47704981 145361155 75635200 441562637 724858689 718310790 900265600 908153213 613558976 808436118 596770955 573782391 784812428 247968989 442100482 891715992 930655790 106339916 178771715 504728178 690018667 922375025 45533814 723065234 118952096 523308764 859850988 256019466 549910868 1736031 146437851 803200672 273712401 558698207 818570097 982787287 623418790 812621187 760913523 419784628 262078148 219495897 630486445 909680624 344558956 400183525 703692959 330779949 859236329 827831702 551405019 194730265 619573819 416811453 402398619 24425293 426428594 44262675 359234475 448009482 382231793 518766577 142524310 246371516 323015203 395058626 572581410 245106958 24833189 734268172 262949849 745053139 932213406 436305299 611347399 349392262 441684284 418853029 416801455 955049167 653797548 267085802 498082957 462803983 436451088 988885688 552670273 858498058 494736701 441081042 832611521 387430318 412039632 32407592 314071029 166847048 478427516 481322887 469346452 979739675 720181849 159147787 411931209 412422080 533978709 191608225 676608956 499660623 714439338 783423456 789060695 979240194 707940560 801187506 1880820 325017299 63348717 131973602 75663605 961470379 143845376 549313062 694740964 590432007 500963437 634067400 945852066 459319594 170597109 240535621 985303720 302775572 218535579 159068152 636760336 576502454 142477841 115164010 665108672 424582108 500940661 791798308 907926154 30668314 563009122 439601411 67606981 301930468 371782957 883458362 993031601 749710239 777166485 629425355 871068559 134926038 684535126 922230988 371423832 853300795 554594536 483292697 815691279 70599684 183285556 101582526 578291695 131901285 920232018 487820452 79205781 520341560 854815928 447007379 906238100 546123743 963046361 326730778 441552381 878807327 217086928 849313268 911425566 338074266 709270720 31738069 99837961 801446200 626412322 750912395 306713311 717680139 782705417 582574811 985775786 410116256 515301961 879228597 668825895 540233844 996865756 669096468 529013750 730189603 116203310 612914686 544123733 373978920 286758180 851905352 517793285 699371386 620991584 843082332 768432726 263303655 201584755 88135122 501437566 52440980 770831335 314120754 575156435 72636144 991347161 386301057 258444670 725955811 888681729 335764930 513116890 786953138 315270316 792072068 267126119 230533114 891516636 695876516 410461172 642189703 669093409 858986676 447119133 2142722 135382992 378691571 942650608 766217814 748514552 255688132 160205849 798911595 896287303 485144977 395421488 399756630 525279116 326843224 248229952 10210264 336733676 231272205 58873525 430447600 354798413 846862217 881345840 477958954 994057542 773944194 653458574 820919253 918024789 508593076 503703620 746744138 65757184 788257385 953314101 913707830 334383724 120772956 811887132 638567532 965082682 286822004 141255795 198025722 141885328 364955485 778076402 822266975 458397477 363773512 619561589 201163286 557462063 289279238 321367054 205408269 873488524 695487822 352452967 853857857 223546378 11747780 294443323 164728928 409210731 266993473 329772352 361990933 519655379 403260247 475766884 5347889 123221192 103860658 115974109 997076618 16535808 278184991 55215360 109609065 491172994 213329174 136150562 220442561 309693588 893054878 394418737 702100587 520411110 947605171 7689046 432047461 833583249 122085960 459067614 188574545 1481330 848167956 723655214 483820967 76275391 254845097 238470479 177416187 773849164 396352311 759390896 753475516 601368194 212706756 378976789 107845593 350026358 21880799 132444019 36048599 57014464 678702811 24954058 443394790 415550449 636593221 997619525 225488850 754358295 621280707 389064911 995727224 724985615 238135387 927934315 350450547 174731688 395862709 458533218 673835183 708186446 711367386 404321674 41544247 829060323 919076977 452371895 806839612 255313222 26877061 290358572 964630367 928963059 440826473 968270830 615326208 81954321 610234667 458227172 851570050 381184788 36193890 913738893 180400547 716108863 675045088 626200149 939799116 23247953 603578774 158733440 531421977 326199550 279309872 197480495 34135724 200779838 261401994 250123533 861587093 603419831 706608632 623911142 825703957 786046207 865335752 476622734 488092045 567590676 352868895 811219944 696529300 264725848 42071022 250764635 905794781 886293237 558919012 832156764 835927364 340425678 149977662 576717571 632540004 793082898 742762700 482078953 450215730 711677374 885030147 166660455 58373612 701824857 699230032 914259214 523521208 870533088 159593373 546439184 51306271 642789721 667407192 234045804 796566303 628451719 959796716 232646491 143191753 568466117 45547572 619949658 782444163 916528641 768530383 451847015 332279246 164092804 869594537 463495372 472287759 96469637 344447346 613020107 199904882 537779774 586716811 233785101 331194673 451852808 381064944 17833514 126373363 456049556 147093855 626275056 888642565 38917777 759512788 166635609 365488963 924958180 584684447 126408615 880611126 984687742 596477568 559482507 749534975 674582962 729475707 227916651 79016178 797384073 851603688 65752086 162693692 580419246 652874532 908633074 198653500 318390654 353492561 906383483 466950345 183911195 107769758 676016474 400442237 204959829 621267660 675964089 517298242 735227676 177986807 288663179 282047693 250363265 870660007 361291060 151553719 442683671 532859140 236366022 510338506 454666692 81635445 105975892 465222548 299009352 655932806 128939072 137154366 927054206 828554188 623223146 187400447 155333972 98699884 338395617 617347547 523997169 928205138 180858547 594514036 767674277 330656114 104440169 48031565 288406299 304316872 980295685 46315228 193389274 592353634 949161947 195043946 705122241 174390705 98086892 723331969 320358611 548613432 49879097 196252065 548569837 883840969 958393264 710277775 688926046 164671286 645258048 71515478 181278483 659889252 725688360 465759995 438981012 86331118 913636750 532004892 20282869 369746489 680252873 364859487 409142450 846679397 327910526 163639590 818389936 585850288 414477124 560509510 42463896 983623263 719209900 803979278 267930562 280406720 802561737 385401708 600053610 977967764 886412926 800267574 86508576 646973424 437132532 957983224 432089587 827556058 114392693 996581889 15613451 789414540 209116093 319065879 649073206 81707668 602571621 904059809 649783508 460491679 93298600 134459570 813838144 49853966 896618972 364255279 474199692 637132871 347704703 10562835 652270168 113424917 890642461 777004555 962183384 872261634 836601073 881863049 432501651 698618461 40834985 678111894 452847065 480692181 405106920 224558902 530178141 301145212 127739957 417610699 66672853 380889276 323240479 892308452 282698431 539124487 567630942 651606402 378813217 587410948 132807504 490388926 827037234 430948501 652590163 105682339 802893213 353582981 969026203 873112858 983990831 432221067 765168847 590634581 459492301 731175871 997317951 743384688 737351139 575788653 816194508 367935887 490661147 711384372 765296508 484421412 606415913 185614366 784546629 532335161 538379296 865454866 463077662 984318997 255353210 693442169 646927800 484738180 399962798 478347362 401091067 315039940 912711732 305185123 287191741 216343121 126963924 560091304 343976909 699339741 234584825 928745898 991283842 872824909 231114188 128053919 619509534 117221213 863396996 962044432 557322704 581075546 152283333 235577497 371420806 816208465 751004061 161725198 992927944 343860205 390416614 491864143 246791967 205023555 579118620 671449543 676752412 303371409 578777920 175780245 962186129 546135098 659586143 476103936 798043705 437127166 491151179 221573629 130531957 551302928 928566055 749886189 383345388 602405146 80649965 619371829 291071624 690285634 661605878 760310240 599426746 720925144 252053320 456873221 593171941 537482541 95951061 227604046 542360219 904997391 671815786 11603605 237902054 552951765 122855658 678639737 643881446 362676991 454392627 800369411 576912451 866944353 840769492 475634496 473587260 742678814 380186513 552340704 450317394 646828545 298800983 396635941 908824153 841266646 577313072 133311809 460583352 949480372 916944323 253684164 583835178 240068119 635838146 156656844 491935287 599747360 192108706 43418942 662442114 802984930 216106605 27553677 501794851 109017554 844712923 140347390 29643573 573582381 732479026 603269855 333555978 625984497 990282049 991063392 593757325 365578699 447853946 703423227 854199270 931465435 366225731 221650357 38230988 515514330 43364916 252328447 310724822 888597731 741770924 118453153 86612503 63181098 875244299 698349071 123332679 217983091 511569166 890925407 496907683 2035126 266055501 921115956 742077688 290933630 868280282 373882428 358092880 900853914 131287107 78049434 113919166 67835331 94457894 271460994 990697006 693530085 174249842 829002992 250340153 875027939 966298859 595740555 71548307 67363959 638888974 724318417 455471741 877872011 69006570 41499948 864479829 515168224 230678088 771736000 932627116 559031902 209918803 604573316 824694199 323415665 820936209 446334528 267609359 353887277 586489894 146305987 72147856 758404248 843889519 131511638 738807624 519867368 216132261 131092748 597866143 30035781 302635416 67780440 302822894 769697658 198506350 473138721 162153294 404594261 185196472 985343675 905667434 281542850 329989974 881605048 755132053 967826304 176166480 312974858 374590928 136733780 423273387 555052605 448101156 399324465 208217260 965282158 961649638 767784673 575817351 980193753 945928349 336083843 635640634 630555897 451951821 235899371 340084737 794984851 997159176 690020170 733200938 700392986 21910853 938938096 430482586 42216907 821937767 709833882 829283640 582296777 995072237 812506005 820884335 142909859 778916857 982635244 305027728 593762243 70988398 679499703 905037842 269096966 546612806 230402624 508585590 300851269 292906697 130268592 412941688 725303495 441780923 973528062 610390117 616172699 800697767 839908217 983038790 35402234 53850132 223861544 869659783 530268208 841698336 325957738 490184479 131599050 844836252 850351357 545081224 444701140 354530469 134300000 82380888 872521248 797910131 6281715 596429187 787676101 584665619 804513648 886643726 308567140 277306725 317770455 191949737 873202034 789028895 457244648 728208003 405597326 679003910 371172282 493030501 620461123 174218488 470029523 97417352 518909794 771027666 993561767 892405406 689894102 993640461 74401476 807875460 318510321 824630078 800117932 83924918 983826878 232282329 173107131 728807152 741371675 674608862 615417271 488090928 372449879 684230453 555306873 728139058 797789233 926541501 856152264 24343080 497995755 429065056 307230432 874307191 845434605 233819148 234992869 794988739 427108125 755554630 105501006 740979556 613274451 448794107 268928038 927489507 662807273 707258272 315728890 24290652 3619261 32404175 693404709 455242371 704612991 225507159 682786618 108742099 273759438 14666645 372606693 303242996 112581167 79261143 339532091 438045908 770354529 917308332 40725381 255039104 10747238 416545769 274604062 98760912 955608906 386201057 163982350 337907522 88824306 447459195 790025648 614348896 689466229 417902689 775835177 994462146 739456124 522756824 904336640 323143384 347993585 176197486 308656056 225624998 347803883 721741728 246677014 874210627 403437034 701247008 568739152 289975283 698586148 853202844 597645942 170654083 618966986 855886964 497868464 289308104 761980940 745694620 657951874 453868775 693285783 435582637 408483906 844984069 959968186 210147902 784366694 608032241 219387465 760151798 216272275 38315141 835752783 728573702 722178923 104724819 611681866 135844636 603786158 179496738 151934486 987466048 648902540 816206453 353631015 447957314 833202349 769915343 933418840 107674027 398307959 674943480 993833220 363707980 921686066 599322763 32937405 233545051 984305061 807032275 256264807 126819297 507311130 237389845 970051746 838232676 362533655 688946520 891509416 795931408 987907836 871677177 30118191 466579180 962578718 809489636 890373179 605255233 462725464 381304540 219258187 219802117 241478792 885461759 301170760 680404390 433541006 510071914 204743810 472975851 488080548 240404675 245693955 626354288 510826017 22851423 123649197 221469561 515529692 808191171 50891592 737323719 655356895 862575370 191273946 488523679 608648570 453173970 352236624 593373514 337637719 539585092 928141962 671074265 437785944 499778384 930858611 432713025 864889145 200466334 25130818 249203996 494054336 917231646 513396607 832585964 221410299 990434451 704036456 59271879 295482708 506328115 157219976 234250198 902922257 201195493 688731712 742647835 512679131 990628413 199859234 923799337 347570251 361500516 18739488 126682990 228334793 765847536 603251884 877331950 246592348 246829087 177046076 299091071 14412647 301641574 621608012 369845070 994275612 865973072 377721234 781769016 995286330 394260306 985764392 816672942 767839716 311548053 767085931 993624704 550167801 809375216 658484350 261740386 732827655 23808005 29350865 423375568 187016593 665328069 953517539 978282122 951467654 160041332 307614094 296265050 485159594 957821304 985072983 946460952 165738523 867715604 121779107 81099901 711677900 374610983 609109941 449865192 394163806 303239217 46228152 583528088 182294459 854819269 34847307 824970450 335491695 552035585 407351483 986174954 264403473 930005101 485280648 241194969 851442486 503611658 55541005 659890286 620980997 484398586 996201679 804103006 824182451 341568893 507379831 53727653 712150673 576936255 140051766 134591281 397614685 538644383 901115697 840868750 197976380 726546608 51964605 636824728 991281890 329248674 663328809 253937314 252811414 180065541 428849052 847296921 988410410 817109527 505159874 99296482 749496273 647056028 388638638 212250402 347227135 446553791 668758438 678863854 963475223 985164672 543207949 261923456 161991709 752351399 950442063 419473124 263444667 716697981 872205920 159623421 681589960 61508574 142796609 900260786 804407534 627635270 511531066 656693310 422516811 629697027 721284760 889322657 598032218 980389093 939034788 278578340 347625125 680659563 360774006 218103083 998080888 733627718 148381009 186728201 369180985 538348481 263731513 53737478 589698206 402016260 370566225 832697966 673861753 716560814 991789000 720824418 2797323 186937414 186878260 798328835 816449625 613622394 851377334 778843821 987477258 48082413 960542871 579558556 980291563 685043632 875765917 350258546 498329374 136097034 616367228 523183067 184808024 760219843 355961950 442530574 751889464 669955934 26887792 722985486 661494191 489305231 764073984 436487062 219646693 953021728 766405337 435154744 169029650 666383906 338221581 851395490 296912796 713009795 126103608 615766466 781212773 531918800 783639113 422328026 704135160 904061127 325119463 182755628 874847036 351258074 453239723 985449943 448466168 446650869 604039937 553291569 648801126 188330525 814523363 776416213 975688747 967074055 109546876 910806986 854437107 114443137 464647046 990855450 633100174 787698905 281874605 648355230 285574274 391909413 666792165 256163287 764273236 785214398 956068312 413682315 819017991 915021942 681908824 900316858 579501132 958334047 147480060 768777828 608241675 924206574 253327183 5784190 967003015 115059946 695942600 977711148 575965636 4601412 989083173 951483099 296062053 658875976 272968988 731185068 850940536 710160041 188985149 444127772 410253807 525969034 52927525 789064485 499721833 854735336 789400463 589553736 518032111 612292611 25977753 555036643 289516754 521738200 970112470 734213123 147838836 155470272 729583323 817043031 771207658 316361580 237461500 487395214 627426892 89046665 629903474 845576643 347271653 440078916 996620535 196626321 799774529 923472336 855844192 762028657 429813789 830639360 692586158 78042158 892999163 827272771 366793512 53956404 822305896 595500746 847982898 323999923 983866458 614299777 305967271 3945944 413888800 406829188 872845251 735697188 487234770 579620400 834285335 497485530 765273021 524368360 665454117 701243146 438527162 973446447 123136044 828216325 837950421 281503713 713092382 696833150 443267922 599210864 12939136 45683533 606539474 592829312 239372877 979631665 882262673 70895436 683687931 347095263 518948847 145491550 296512842 403115709 404170591 598690205 525601971 68371950 670084445 620042384 542535190 164637408 508354230 767325979 424105924 104572034 159957371 592824836 39192918 825091112 86303174 176639729 49548866 231396972 769962118 693120735 479973145 964554093 745821566 896033446 854549861 406249567 70785074 160142473 493811612 65057351 319030451 669116813 6117054 454467530 790003033 460586462 31289745 896684126 453858657 864488440 743644605 764421809 691909612 505526953 912091604 753297145 304936264 230837070 591262779 992755544 168831948 670301266 844543716 608610273 375138427 792034026 789375681 401311584 862009293 236075371 987305285 131714175 505526347 400932800 138011631 276451282 915676947 594975167 618792400 524811044 922316424 552681388 57266820 111581485 900226316 30874397 881811451 696290168 182421009 762619089 843254160 893287245 937833171 212481966 278468994 61311556 502465765 744839813 797648226 468000849 768328532 644112762 215593858 452611231 968342985 435983397 381079226 539366128 720948043 839629125 964319194 833436766 980625162 319930867 54966294 100670459 213759848 112326861 522521612 281947819 606188312 520234801 888499104 893374687 371160689 663397763 100810013 14260580 150188092 130744589 988397702 67711145 489559185 298781608 589534420 296973225 598302089 248569849 124875887 64420828 38056705 383604860 85583832 248993481 437259099 146656312 831870113 681377061 937205349 73291789 921224512 516666868 762694243 851577664 652015552 137807612 839999486 608762132 339023273 26080251 367921664 200903938 280134917 352124785 639896432 448890522 36699921 459344702 778506162 243957167 927058605 40991206 639951977 83543676 227435672 25669381 708834807 417956520 479981031 23821012 839084665 293708334 812654125 365064229 138133702 155011836 206891998 455582862 921396673 880479995 82403111 847532889 894806278 889222405 620968080 151576508 27992418 708373887 579248805 151787237 240080798 71917379 269347666 189364436 710045065 603296492 611010576 382321988 559197692 728862067 933773796 248700515 550632012 933534493 258475054 832991876 82476881 299248411 463841700 926385676 193296180 734263858 296888417 580504982 109690766 261196190 998864244 540469222 875638022 990761342 498884868 734164469 503074084 227231023 910296869 87290866 508046587 375932875 741385126 561162941 330204530 881682765 330528573 723947767 108224918 538887525 82013697 319035257 781842950 575528212 386958372 588286191 636041981 16525101 748395501 799118195 530438901 759614635 36349599 336927865 904901935 511515783 592258110 710790404 720667281 157230092 18712992 859386006 451183481 472437313 375173004 128531792 548440214 603247585 478548334 737859913 583061968 189629059 495280728 659767214 908234666 348660397 476070223 801290232 755891447 393108483 864556786 203521031 431434788 126147872 619210627 768297046 864261570 327517873 693195223 947037949 486262856 223023919 378684144 542357091 739304459 361965019 489970808 732650372 783374505 783905245 792583297 910104436 573075973 214835230 105016075 57581591 570141926 990309640 417965592 44695817 828067084 792135278 685616230 578069253 651497134 108114465 581456600 693226853 802127872 190399862 684059048 501409387 920187036 324327070 447123027 393787418 66131068 547253250 591114835 854979798 273281219 253229705 477130324 14378834 956145366 810603825 319204846 149490814 540090818 857773127 916267101 126888502 144358543 144513605 70613963 624107937 967748130 958700395 541853169 777672251 815144476 345409523 249949181 244425336 697172709 259327201 412137026 176292620 71167091 665509476 151877312 68807709 132676311 720097002 24622022 296150655 566694027 969200980 291685088 672566756 157082825 714818589 94633570 448411718 605532698 816761110 799005141 982560534 409906386 832479312 592887372 491826569 855832708 940633513 998307840 39245455 341642491 754985279 650805358 286307810 91387002 25153899 974759366 859171259 294104705 357735412 55167923 857470735 783395244 180633625 619515880 354500360 400172467 106859575 673342091 469453920 332190120 455978043 568338133 525117559 576298450 924410985 340596318 318702672 408028471 421344468 496131166 779205920 835304819 192218430 318576821 54421188 625758429 890404232 378784106 36352009 520480710 423338676 270452337 242132303 562947789 171940648 211578967 21933922 310569065 384193239 617937811 586187812 845588987 493533084 850681511 736426995 432350857 26982431 97233489 637650362 722199320 460730797 503000241 960408998 394593369 590477121 175358111 664923130 543813041 749523868 321968264 461896603 529266597 222597961 906042050 563563473 306168176 565401993 220458148 779232484 91465204 416148375 546252817 897919446 865665266 344755828 890803401 993479822 812499079 863921271 587740524 873120144 357145084 768000020 644810454 418909157 446569140 105958104 86005657 72633168 157785804 910064878 422356832 450139897 448515313 421675859 659811573 849258217 767949183 882527196 578781983 230731942 811903021 132594811 16681183 940916792 218083055 577182157 359075526 295698522 110102006 425390871 323406358 529765548 34155712 486093915 644043215 65597859 88431881 430299027 138054309 331529235 402032478 706812326 484811446 721980376 147463439 4123816 252301142 655841978 135256670 158500231 41475232 814911064 11834706 129469069 102589709 734725827 128812321 606424504 363651353 367536656 925245312 155631153 538406766 988031272 967271420 392538359 495569376 623231690 784780064 703701845 816026728 423995011 282805329 947707257 96864415 819168916 154996695 16001938 90719735 681412160 920183956 347461910 792021002 626196079 666588843 678530206 622564562 815037753 771742155 619981252 206756145 588564246 770937053 217311536 575833396 778304198 881439183 629623648 499788406 295798711 272730589 857995000 240923348 475964604 50126539 877983705 394496629 354638510 762142720 70269109 344934877 203372523 212539357 688155587 457832405 950040743 395982872 639053951 707742409 788052471 578296241 110119250 270096208 245401506 840682717 934738566 594474225 774909948 927018084 627100049 334019747 54897118 937843818 732557922 226971909 922249619 786628163 45924073 704128812 28297718 183679266 330790076 322569288 273148232 653261979 796554898 778559104 940115778 272723996 939388126 178025174 258355691 35632870 905468018 877799353 403096079 529165892 145541482 538089471 346750914 141510069 517303701 613550331 183804342 849156998 406394312 204292513 521178884 392718509 945008793 580969744 179118661 836807811 141456554 390002471 946053742 36494367 477490428 332425178 438655787 393833463 776780523 165934691 291976721 683155277 768238538 587084638 325680614 785912719 950402085 280661795 35257994 485894440 837895314 263383129 199948655 566607624 394504529 251652467 927769449 906154259 269444693 747803950 304415558 369645366 380474448 12113981 35234631 136758871 364272346 332229712 238052311 670430994 951930455 902077420 774230084 551152527 184195111 294118706 105598906 453314903 664125346 23538672 294732378 645358715 602103488 119810551 622572809 427394479 698826960 800699266 629332747 591075854 361861842 803575185 699943369 343378286 745507074 835937715 982202226 403443157 571131337 454970734 880324079 635878809 478394139 979506334 236717470 883141649 977537944 761129144 700158612 672866303 659601947 356311464 710802443 810184273 19351859 518403960 607909348 326454021 787121598 222664883 481831140 982003696 675236526 411737765 639791504 636804766 613408114 95924467 948527009 477356472 861992776 744182000 580695888 612930803 561870791 838102175 527330321 158208811 447544414 953627432 765202283 137029147 983586677 164029628 611436180 238585504 728385957 154933395 104659871 988066349 411646627 918097430 977247244 820957244 512899775 834900899 445477029 377776138 890927732 442486980 454512169 763867576 788219615 929156039 148807836 735395457 60598206 540445044 202915942 337948835 45218893 604321595 290075367 989357448 371817206 889678479 2919125 66814382 803201711 913994822 169856841 764383254 445318771 185324863 903485009 842183402 574375176 139156602 616383641 468267462 855113655 879921599 379576030 672243328 406633115 174604666 602447060 132674138 9969662 206298161 642879566 861659237 259861966 892869785 661584958 379567913 504159261 264857829 110495617 198897319 284935843 750706150 57050901 5773590 233305607 306063412 647123749 248782840 751702707 279243989 381545735 106514206 895626933 372156503 16468534 432005269 63833774 91212114 193245624 77232013 898721779 632675883 652998624 824001080 912064326 863047472 251898157 294864434 980946960 602338232 275390870 516871937 675409592 750255767 883980971 748238054 739338253 797964401 726208061 33154246 90617526 120270510 74005968 509170853 881913714 800092307 970550098 244919567 76894120 548076722 158714605 571374611 549009192 843251042 517412653 1679811 615541048 866040604 669023974 776074643 917359774 205871641 398715741 600024432 585418388 397745689 102402367 66305324 704511623 284139597 437898862 364935646 141916966 739900603 100303600 201172046 221508577 834600263 179917821 288999985 729891419 521872059 773937623 506847616 893618126 823407717 65194352 884058707 313208665 608446157 768779485 197589596 550757403 124511888 943958585 840000552 301164084 573638608 313029774 35101733 622333697 782971691 478155219 680804087 617522778 928585940 342611849 392090969 554652604 761416903 9399124 833661603 384632861 12296377 711003410 40106391 285874374 622175554 720102308 268504831 578395032 428964914 583098298 841730104 798311167 895441909 109743441 345786158 41142755 468179498 820017653 883059699 656395495 799616045 793434908 758509658 743956275 901682664 956412926 40296289 633960884 848871326 710935581 688768201 694994473 516397818 670033159 642379954 339184924 998175793 39956264 482993908 710281730 899429178 502710363 508051179 742090368 110127209 743091149 200763768 525398576 511573888 364996876 610588011 688091473 625464607 796769875 137975006 104793306 607715943 552946362 501146017 585259787 293234374 951156012 104793941 690051573 434060600 99880852 818786133 449130496 268973582 527566994 765670328 586833801 86816085 868241032 299025894 946534963 448246723 57286852 684594240 98257944 949501049 299859319 972808230 476222730 851884773 31834562 464375948 974666397 358256344 926194254 142301873 900828246 89389729 812507794 940393511 290247562 891381081 855856468 59699591 350307691 865936675 513042951 212413758 183575255 973148683 869531566 921051530 83239052 924202371 402569414 712972108 168851926 687007372 767911689 223107914 279334964 929871463 829092851 799345200 217645364 408650552 455163071 558413585 168425809 865097227 363312166 765310174 446788270 277819396 38230248 159300364 767991901 272040864 691468781 964034976 325666999 133412880 294861351 427033718 741770952 852274454 497310475 403701657 443821595 646880844 356514248 599463028 773375022 74037600 855723126 498800728 233348380 819040113 750585855 980322673 508592957 236317477 48754683 142176135 860555402 301629340 55040251 27311505 771392345 724635409 717624053 504662498 502156789 248461287 418242242 101939765 844772268 605214773 310534280 557207453 119124063 629214847 802706157 65286351 404495667 636610797 899749841 221381276 31558896 427705412 395939722 408247799 449305585 246792808 409113850 928831184 736741647 134721687 284787422 560807077 25764938 821834185 128967918 424190898 272963196 809988576 470836411 703117618 199270060 462562498 286863245 840985156 413861557 466912879 115663874 383906178 772458633 515533293 379551853 587631912 952727426 980863250 556944649 71493572 685126611 910035133 121803714 58494147 652440311 175699048 313136850 497828483 563196538 242659355 874059140 132353120 653986253 828895584 390452648 236666230 836964133 693346600 364025554 77315233 974093715 326233070 950916684 51475456 978578252 422586506 650589315 305568769 416154670 98337947 785482812 485483744 828800091 62274800 685008881 456672601 233736933 940330778 646798740 857917739 392360976 980450471 410728816 42096455 584146355 23034113 505572961 65114106 705886475 855744669 299262116 580704261 567747731 673250474 557775247 516189899 830105754 266286509 670845120 229510114 388740643 257153801 568041779 831975394 689927002 79590827 181047652 648675759 306743594 333060426 391488287 673696128 402189007 344519913 425961169 703518502 160526484 874851719 722373157 761590872 351601045 608853533 445069066 105273297 282167012 968344635 172513468 387409078 336706307 901426546 799174781 665919261 425889755 325867359 780785995 731537228 657498207 971629130 965825885 888038845 981484368 791358908 934942513 27502479 280686832 865984545 708311477 873553317 279777603 841981030 544055418 604280606 760001803 985249145 256616335 664341843 401041175 851425665 734138864 444413026 961623308 260350591 628830840 141354341 237040274 136957658 748467880 422060030 532072501 341172458 6839374 246561851 219165036 707865799 60209881 287651954 348988696 768817685 19562873 469759721 938385289 812881882 87844024 591781559 766851644 578995372 790101813 809661662 816647376 431090227 507280498 218738976 56025092 216818517 547881092 330343912 941911646 745081630 17377567 519796415 980181133 300374386 910198565 227863748 551535615 805050334 453731445 272161160 957281817 74087697 197575726 99789572 54849469 492585090 997917072 570078670 115589091 546206208 104078027 989780510 518150109 66179916 700648824 113747929 876788723 61695720 491752192 272588652 403893599 155302648 151291718 768569418 646749672 5440415 447154576 528103762 55268510 135396146 706188164 835860556 568079789 213468845 200107589 891423499 861178026 579412930 470772249 454064615 567239609 928147003 953664917 431791477 869880265 273246396 334760580 571263743 331272345 626553610 713273483 563790850 897851281 667022710 983082510 369109751 328259325 800595077 568500371 591649839 826905390 682992445 510953768 788325636 543572815 169706915 5298614 272065571 397182327 338348273 963492794 60240766 828365061 160425946 945497919 140353950 545495235 952470020 144864608 42898395 275968998 373436025 338161894 346463443 86983931 280327881 38565243 822642901 940434156 769179985 611323143 555270948 221862358 883122950 112306005 71970463 534985253 970508375 690298848 857454640 837783435 564694805 698417207 953076493 956372109 255180668 419244729 559978911 955582234 552849956 911508848 62331660 738837568 301355558 334122154 761596809 225201825 70574979 42488501 771576061 759589914 918685641 226629355 21513559 800328301 321451200 271732684 741906906 382514697 665662041 913197674 302096272 752537156 678235922 298871293 430661998 329113380 217688200 426062480 972509212 121874244 273761051 9515606 860973121 561149702 546902843 781736113 806061956 503687853 858611902 764185353 195843656 275534809 827237387 793160797 150018036 889840130 14748442 868179858 197618359 430494084 111807589 238804890 277012816 470632080 483548735 525256912 988465678 454458017 149381630 771500875 663581858 136019457 536407371 28197258 633488997 152545357 944261924 549833794 521350582 86127947 293379492 67514491 878444874 513243840 715816673 11809679 482565198 972752557 309578260 341885657 755808632 915701946 970112626 741396419 722334780 640357622 987669057 355758418 605914618 815053136 547193566 437144894 860029420 314271844 437071992 455700317 853359180 233974912 524518586 740842639 677232649 868135364 194527965 17353811 186174100 773893301 444838711 601684736 323474052 807411392 207618340 368044911 583363560 273498210 530793472 823026003 779760131 792936582 144661736 510143122 606063506 100381428 757244138 280558288 930367085 139254827 427402292 813892285 412945876 77979506 551293807 100892900 523875379 830136034 132647400 47201716 889373313 698017202 678682754 423169262 24452459 748816328 920434893 706119684 454141387 23889473 624768250 929339303 391031669 275287518 74699372 505544949 264842410 83663780 733389059 563094939 151624906 21507959 986671231 100427094 334889985 782105529 892766708 437964831 742732149 340525579 495803379 554173027 543000037 424631802 734335518 266418382 512843811 947036473 291516206 155815465 267803517 537879405 156714266 37546393 947891461 424544205 920131623 513330631 844033607 998035529 325890470 478100884 246519504 77459044 197308307 917902461 174759067 994620089 37543292 416436601 675496822 647601746 505226700 238403467 82792385 563679714 320318400 559562614 8591338 917946950 629104191 814951836 120615856 51769452 369501407 418076855 825973118 986931067 978136940 711138366 413957617 842749733 696483992 824577916 396404571 527392777 918438051 627589987 522098710 910998769 291656598 665318230 821134299 569684030 117045431 248596504 802669494 173842398 315302459 161626362 691038629 711093640 665722567 882923353 837137972 71852837 892241805 461040470 683464765 650492474 577006058 258134708 821815800 72362792 879476305 632792806 305660305 392800503 57612696 212245429 431185785 387810813 267184703 559800215 485296700 442531461 940106010 610676562 281888237 438060546 58923116 46548837 263559616 536517819 501419795 311039282 164834037 358043056 133681383 844812581 95405491 585400526 817977260 213744047 573894032 70093599 470450402 129714858 535335883 518151633 215710561 540369038 314086747 992278270 329998240 410831008 351185901 715591532 453371343 239810448 143341462 264622127 238260087 674732881 966977412 27293179 785213288 158854426 342710170 340161872 849838687 585617539 815256840 453950790 358104303 514911382 62799758 710107129 61147974 77362499 583112536 771397180 453087008 976847475 94121912 946111582 768570548 89128440 50430502 303142066 204290066 692975628 90492356 657180767 742638922 2906619 184563874 794582286 284899617 45337424 286339700 26563634 902260352 15242030 394556782 419247193 629200916 556143411 775174399 942578480 838927566 505918552 836381072 470623997 467168220 287663474 185461003 407163679 587684596 398882769 729214157 465138099 851311353 519973845 278748837 408084304 453019748 282552410 727412183 555606150 579959882 436329194 788031001 409396298 701978790 412316070 502423393 32982968 193806152 175494562 52570415 308135696 732360666 200532382 661937666 400243078 867219198 858039407 553391875 803459491 890889291 580361046 91358591 170978183 286133133 453758956 775070028 131922132 705085265 704802323 877509026 543855827 989364972 273727448 83909417 924587619 559259313 216758847 82251175 641524360 417151393 424596795 450872785 615918190 48020429 129205134 156265149 460612809 897177158 179342433 667094033 118880009 459689627 301300636 359680976 888058830 17345809 687491552 952859628 509627812 856669203 553961096 572991913 193785365 599193134 866774457 129268882 354830870 180339992 150391949 150603693 388687373 772136735 956863442 966506670 765499407 73319917 587827867 208139393 498682968 157320322 125228340 990105771 184366427 29635234 9669395 656098408 600216794 689488788 699450535 493080116 832409017 612814726 515374889 415158459 154451797 528577761 280681656 409998171 811691090 535217700 498660433 371027175 112883713 965094216 487836099 354188983 160743953 655554599 833707689 145899149 18614846 921325367 268537317 406311006 823568169 460861870 989651480 503549427 272525918 261516610 677065581 478566096 145063821 819208641 265402199 350812391 527687593 139080091 774173614 11502131 374520624 482197268 627912125 249795771 862944243 141602352 702540031 21096923 69131997 63385276 302681883 582008514 391470714 255075337 242985012 780553554 955015230 766993542 108452483 860801262 161460652 371048286 563906095 746729752 804631365 978820177 429989999 975200557 990909322 411629546 110447390 851492742 3289886 345543198 952872529 303364226 746621304 801690036 791001852 497408475 370092264 570673344 325803672 45307796 423310537 906703820 783514440 995830744 148481727 322989064 271074039 134316971 926909032 370317779 673072727 182474077 943079467 456973452 62637418 971864031 5279679 746760989 938768638 201836519 40550132 474280804 487948939 594397002 736107105 438002204 304319406 774790451 262621952 13279448 878815280 273344127 664174914 912586500 998234557 772701335 751174852 98226996 525555590 288637858 916885885 666044070 977885849 703268577 109916016 46141377 987089753 842323419 570160897 749066033 906259270 173644236 379258155 277018029 547156020 22354849 577164507 268515618 307277980 149178718 590585840 651282880 563460895 940490388 789135752 963404876 583917186 702112465 97800931 809735085 461570845 103182737 905451712 412503427 765821708 156395286 925086011 119503105 427817184 223553136 940042701 771648300 124907423 720227938 431549792 786991560 502898832 376694616 435096044 584810390 590835842 913821530 16779437 707855022 43522149 690283043 436515463 518121100 549978963 291839995 580724184 705049301 31923475 841461628 976086471 111804648 135237032 108825926 722521542 78701944 120530002 422455635 451716493 355029796 697195299 222170927 528630198 916664534 873653954 940071766 786508723 959885141 575285673 560046111 552856391 525197872 96639093 462335899 859601332 689292048 529333748 341453493 129090282 891858403 164526256 76342299 908530775 201377803 746803223 286257661 972301238 591492786 226138072 709559712 856362549 783986323 512065541 206789055 437795399 563716717 511762660 811262813 304782800 491026563 688274629 884642933 682160776 294196417 192928290 726895826 221402410 371474288 54336347 460005561 988207022 622007841 128778752 615452988 540707727 172652169 142881796 137449295 390272227 290937120 306186517 35933080 547160121 850193760 379726192 558926560 168025886 796637893 336988108 607007117 446772209 838641125 560742480 552365948 250148925 759083010 389590997 645245249 717208784 766325191 467108311 505297997 208693053 970532240 219510473 464094316 96585859 404688319 936764425 466278345 714727878 217176863 733764880 768988112 686989054 253315940 64816522 736291542 142963721 716905699 647283705 862603114 876250575 344423901 787740859 241509300 166892345 113861575 116853602 719981700 165053628 677116765 499077733 748679090 408689582 987295427 723419066 419192212 782370308 921680650 537380961 322331099 862679675 96668709 741833871 921864788 800500006 959879467 867058245 244273222 689749490 31220234 577250786 467468609 784540739 939354100 822025935 290145145 753404580 259528658 110304428 999220876 161866208 670544399 469765706 935217063 500063494 258048454 380111361 281376756 409419892 582262695 330300179 564845339 186885946 577459803 813032688 425584748 71571419 538720554 551827169 309642982 829826776 934456927 328311805 493852496 763266487 709977125 309401603 875494869 495748143 994997252 111232807 336947643 311215808 629769119 359342139 688573996 742342515 31833943 685844953 991237471 640159075 884433475 294225387 413648988 599296483 258628577 413209894 727849291 370038780 360691430 931113866 79660245 721025017 383128043 943302278 359187336 31078014 232895941 178560675 684908088 860650700 22341309 522171041 886908200 82150489 537790789 70262129 67990199 999701797 982058002 964755824 107597761 789889165 520476796 330292872 200209849 512525902 637270434 994880520 45422248 249441146 764648155 830813603 39685953 434694144 546420525 937803885 335537342 247596992 912951534 990848362 788637082 950527574 891967607 515956084 985857930 393814836 34661879 705413183 427552030 737983901 148835192 501471651 83352784 394774028 390918382 99448119 363722096 737962470 501036143 330435924 664053448 940448010 225949231 549498756 105822599 223803599 602268773 627484758 920361900 99380414 373410624 407419461 302902016 448595140 536996333 384174394 51598600 988444780 946554201 322945185 148185592 79501102 957756277 145148088 931358022 220643570 238198990 507510525 447271692 832903619 53901985 316891291 253155029 836576450 989882056 111730381 447215422 514718018 919786206 833945122 159181143 349562252 554504837 174183546 20883056 485458863 533048280 892590790 755200234 56229544 993652753 984465584 225764216 727144764 720932072 121086882 298418483 943417565 283755198 102425562 26464035 395877303 435821957 905752147 9738262 404169559 245390059 256916562 868352868 685938798 918866427 262224261 480190078 470050409 453427780 476753990 844892987 74866954 699185190 905515582 827241451 17908189 372473257 957420123 15333392 489872540 760785384 389412759 35613624 59853346 316423292 904839844 689003482 545025002 501318405 501964094 51601725 533944481 667299337 183287045 113609972 5854866 164757507 827946637 594308513 916025671 49730049 713893126 694710586 153726793 561588119 132840633 538117717 447035334 154233690 728194344 386956753 69082049 785545795 403477423 979891475 61755302 412424362 356621915 229713399 10660629 239128131 150011010 940366614 486852870 543623920 819009971 573605956 319212118 478082604 173293026 66371094 21007077 961989827 736054549 428563976 661661716 279224716 331694687 928673713 260843723 914949944 362431352 411100909 37273369 975747730 627503236 408071421 984096320 23583206 599426001 58571018 669474586 322976971 275671263 667276860 320783196 747137813 779405930 423756897 279492800 931918325 541290474 750048611 912407813 620637806 986140216 347216028 944222177 661688249 328800270 860072901 621329566 970381736 950148245 650730117 329261890 366049388 47878912 566221257 412437300 147805426 291775081 74683015 467562079 847369692 131396590 11489976 871794483 523187481 664041834 82158616 844127071 852916092 773194466 122568661 84848999 289643856 204901614 260241071 521954345 560373737 26109793 333523161 922800975 834433123 594292700 33026902 615192894 64315368 931585131 687584541 903839746 913890960 844298916 634575781 97744729 416507595 487179942 640700078 258017580 667709829 204217182 192073357 385977574 638303492 19574732 413706247 453626338 214199196 249062745 402470938 167887820 648630268 959740758 567093811 599941077 755196832 872899885 711011249 818169709 194963809 143252542 637591640 93383313 172227127 397287105 450865262 95047859 872728535 427001436 903602860 18784632 30976715 334661181 424360674 798138985 545975794 221647259 726751135 8445799 941378282 572130736 747125893 481621204 545284125 7178015 830886351 623652030 52298222 627501250 905890376 834968906 571387523 11252222 891997629 575389915 665752927 389234347 365200180 68985002 562405485 910579347 760009396 593546591 612530097 646390307 337078431 425748954 598299615 876448395 164244392 86537706 479786677 195597514 900361964 900416998 797857172 768314606 639320663 311293918 816546872 696970778 26159682 24245050 177626996 664767454 14703510 49394532 531209406 628865170 762715650 65493437 359737201 30799817 471370496 724373501 868984327 992979842 503871484 195056219 136900891 724852780 221281344 367217853 502189416 96083974 474646553 805310772 594025288 922431440 198114220 728301475 469918072 670883830 378731147 78192974 888095288 853591986 116717186 422118669 130635006 695944695 545142832 127273469 874582161 771392997 683938855 132481658 737068511 428436520 68919665 621192639 483365547 952438240 146683625 457467199 937402281 840572277 55385380 264952315 82249657 586493654 645020333 581065158 397043329 366881900 412543897 870487605 556080714 984464344 650389036 436926422 941196582 332451234 613502699 770641048 609821441 756203703 604871737 763315207 725891321 658040748 24405201 990691858 947476069 936742988 272800331 565603292 877219985 368224305 471612741 50471127 898729394 252523460 889290837 575415675 948164522 88701752 57551295 507545240 576347247 525627106 81526880 27234189 692142563 12670916 920300927 213629758 559061589 531335946 724850812 602373117 79164460 284623992 276352001 873083320 21678536 402185322 461587955 142894099 280156421 889078511 136008125 132529962 842396852 536787701 912281365 11465164 764147933 256912313 14155302 593011044 302224609 872646114 414736493 134113352 494355554 36683561 987183682 100995228 940886105 348457885 232314905 386782563 274627661 964294277 285409555 500975368 161519814 602299806 771878423 215743589 646182115 810214947 103652957 680963631 622709771 912178859 563357215 999736797 207570170 308311400 104967095 344926643 901459634 733067937 504458363 327698364 54817724 195509258 843632156 690761266 430850556 946101442 622776128 228082051 902640823 446544470 744816223 863645576 176344237 182376649 97793724 526594552 387971603 144280738 451003070 66679600 558353929 440135994 554754006 258379001 210275642 348771240 87862656 446764614 746554349 364751816 209225898 633753622 855478056 95111490 510269831 377474472 697581509 415147577 90134438 898304429 657075000 112880672 798341836 391986880 356242629 704604589 246251419 599603544 993780519 859084062 226383880 67140497 837500568 492438224 310375114 19565267 241696116 113296212 503872833 868845468 938305652 852815412 667319411 693870142 653375916 789756181 786535115 702078675 584973418 837212207 227210799 875078535 134437912 689325583 22368104 84347365 729928613 108133198 360074553 258003145 900302222 230200497 201380460 273369100 15770308 378894883 80427304 342734675 97357201 582702756 903174303 427468002 571688307 775267954 146873011 717471928 691570342 982503767 829707689 645827292 379706599 969501972 861853058 841017608 526755143 125417660 719819191 934200572 330162419 380059972 562226861 804656148 638575854 74511582 244023731 90650367 108540100 125427852 851429313 345212161 950156288 848984663 2918742 196994767 530666608 374146124 920461117 575678915 547660344 2499508 51384022 234349236 100095785 473191215 162576117 32074346 523350820 463264443 445284967 110020598 326211089 24814186 347201506 419070831 446531368 389265222 986453400 567152174 914974517 881899118 442544324 174110171 622263158 583510839 562184915 114373469 557830370 545656923 892806171 723422337 146714960 656588070 515947579 42791241 13842323 651500537 418653645 668092379 935721301 759196652 941679552 937634527 439214917 584136796 692439449 314053681 51620193 227080741 615024359 372667348 877246624 329928567 115641607 605421800 105582382 674290260 573252652 311491022 569982545 688175829 320427906 665869505 595057293 404744549 841330245 959164037 785311398 216370654 637779682 722392487 359078948 921624244 48230403 39350708 221765694 10709062 366637697 998468830 472997532 931162673 664522686 797151196 608128093 289599619 254917935 515039529 82413388 561644064 6374638 159605265 904715093 755175157 643450539 329314663 771561177 674793637 754235621 685799853 648549047 166342945 159641588 993521176 964527685 517512753 493476304 792284026 860037632 524610149 645781300 451509365 144960731 394753647 724052298 780219808 372483920 144029141 861559288 524291208 423898493 199988777 872741512 995292619 407875662 844092832 524281883 406031482 523553660 956912860 137631000 184742878 287983481 52058352 810963278 631919066 148616895 405677137 251465965 881219195 313572947 417376886 12859178 774902800 945175013 823366863 282292213 766751238 943858775 646267187 420090125 847024418 252495704 975861051 834198966 375953486 211607338 93613942 118125262 601649411 778041666 571669210 704280384 312836873 619908378 940941595 806757730 835436360 981165188 958730685 963758853 278135954 266263461 235511191 34466197 873567992 213580360 64027266 591972703 315283598 481721648 376973903 962325275 408246409 534132092 871462729 523083391 776619472 813593874 459055199 270070977 849298293 111156649 871900702 652727347 225812527 764807727 763291193 536728471 654439152 739224299 289631650 705956223 319933113 643161754 748531911 515911590 949799205 188036677 647633975 4837778 663129633 381628188 778756434 620795725 735707213 11795640 457475904 711893380 915715418 96166107 715461681 397054257 975926042 262949267 509627391 235771532 522843327 718681698 288071160 772463466 401135458 889647463 700729691 901716152 118562248 121595029 920178606 360583913 619159167 156849862 628495446 955594241 384271985 217251387 336205446 407812373 560403175 466443806 158130990 633079893 434846136 886295552 968669208 37598123 152106321 843055014 527540884 102580376 764023117 56554182 367463215 580249460 272930025 518273130 553259094 69007836 101936471 645306472 582301274 963539504 439647817 480813636 370235996 24495831 335825852 737118963 729841167 673680822 333478100 133874720 494251414 432590130 890590520 866591314 125371847 242352813 108009376 856784816 419495791 16487271 58270122 252642829 54394790 384471423 771701366 804720906 602038795 912540137 223676161 313643234 999582395 711294592 638181230 661537762 917230655 946505509 773403728 601630793 283149348 494866311 210201654 988389050 62590226 140972442 89792046 969798352 407659934 526847998 611251786 194321252 405225232 888911928 795875344 306609913 356304749 721040613 355596097 621084867 179028404 856557902 810248419 654767727 948489048 775272151 467233522 482675419 31600503 923180836 463020877 949365443 379095244 372439682 780366619 435791462 153261253 759024788 10501242 528179439 259553879 652500487 801280989 760874801 381911709 713983325 423635813 723752834 958733145 229036288 20658482 678771949 412279850 625395233 678742935 55577106 418342416 316085435 770772500 472420611 656963474 774771275 271096105 898538997 174330879 533893682 531862809 469688746 604029446 130695795 196859444 121008314 562183153 189504511 218418750 584404572 426602020 89623036 986249552 835211500 567754415 864157680 478317534 344938297 81516689 566198848 451058418 661085361 492510938 900656632 740292505 970334450 961706096 842507475 764587168 338572496 978771188 973911262 125818817 976810685 206699505 529114232 340909514 718949984 333994963 622514020 816869019 57660446 845646947 759077612 500010841 46289109 292410408 449316283 855178686 231488247 901514873 428304183 37438410 734407347 687384428 597461722 980278698 185802861 874462611 679668132 74106375 894640571 639512970 230665796 266061485 211855572 668456467 433115301 57456158 597599365 171351071 303145463 690763594 349536888 108544369 166189077 961292265 815401868 819145943 830630535 581849059 864453136 273405407 14869437 288294962 740516833 749231190 55415508 314377350 784701721 795589491 276020453 768234330 887820349 917392324 677100178 854614540 440374270 789909401 617812946 806252091 67308942 830649497 283174620 563417392 129630060 318429608 910989514 580844390 779479345 351230454 791857525 884918295 352523243 665755371 127414050 519895924 209351311 24586943 741237039 281322523 615513902 446578656 405261833 507540816 747268931 940255255 34756672 385789080 428388563 463574339 440972144 682524556 630749461 116048445 225470588 215061388 127038493 175136900 511785622 326454904 586797860 936374667 23921371 893929366 445638717 569608414 761023246 885862106 918526668 442313710 666436943 566685317 336927762 806588045 562191960 158896647 452130633 397858822 5366731 896607816 925528363 9821210 960267962 61307525 16656701 803620995 57317445 227645179 989728160 554232065 699496808 329500280 750220203 160989658 516830147 744414554 526804932 597102686 817221914 932510997 251339939 113118895 687158091 753238992 335810151 412666412 418389477 738600890 204934682 579441986 533121631 112712671 579519690 278446884 458068859 26584076 311397313 290341800 353009960 56788463 575860818 234603963 864889794 865255393 780820520 759654423 415804964 362703147 893990664 70351597 660316956 374179364 974886083 272463932 511168878 874428395 916178492 815260531 482265973 85177194 716064796 735137594 822671248 810368909 210874768 550786673 254295632 53190344 717595894 581657558 980450526 379041868 42641603 239789266 459436616 575885721 219663050 85133644 549150411 543529169 32069447 14173468 847005660 603191112 151717753 501618132 385753859 385076656 794085819 822386225 276271631 447099365 604009894 108197989 513258144 519433205 120128369 590380624 548468025 39055446 229552332 356307243 900382105 748804888 793856318 25954854 664456076 931999381 942182699 178638149 824166077 528851877 975722553 942884977 864207038 132225449 777060402 325882502 235126818 840481899 229657154 275831908 657609046 303943385 788584192 805906925 82483464 38818580 273594679 775368971 477903282 300624492 241944214 686206882 171427128 291034332 64094923 169993506 678696587 909173769 583066052 276035914 359277349 168141705 666737206 183319145 663045685 908984889 326581154 731469841 628730528 464774882 57778798 722353873 151724428 777692821 389587970 485501732 186838132 656070700 736994090 538952271 223939536 816745815 448039355 172073925 419866194 714089652 920913828 149288642 343902359 846080676 258565548 380078256 688531590 486687952 123609775 721560930 779770358 91355649 236995021 3478921 653583017 888211991 996028008 886752681 109620506 709625338 621491734 881982473 608177177 179967070 355448592 97055775 228948232 314336348 801673657 990934012 56943256 259494632 356624878 589623831 988145965 496244486 43688399 468955701 838789322 937279139 667560848 955564132 698546366 343032940 79750697 629769420 786363831 462400999 702035774 914440633 364683396 304171936 486038308 949445977 146267475 300108330 726155426 335409316 457492412 596904907 5001216 677688275 286423445 852914975 918375589 256122252 186828085 620232661 502616610 998084663 423444871 220835369 791856439 940480472 456010009 288160513 926253414 86242453 217635343 393303 778818928 499022541 63448153 834839867 3547176 674530508 404114226 616125039 34348084 893117630 227108970 195612497 444186880 937202300 541478894 584811183 227382087 856234375 631198636 134636726 713828647 689357466 239915841 501083988 124250766 421636133 489745406 638757318 461796434 813919399 274384673 714011340 559740249 905436014 21337440 876058491 565982649 733441463 468962644 182919496 524069538 127551118 431560561 542224095 509745781 991130309 662702322 867210902 22720369 280162795 82183673 249397688 871935341 967340184 722289332 346285319 955328986 723574318 31753429 594787867 89934009 807999959 607472039 83169170 196206021 799526565 720562432 791874680 749134809 916384451 351148918 660158558 829632038 124692132 104249461 2385522 478208575 390784712 814868683 973057524 80578881 773163768 971002018 157883001 455918482 629670559 182569118 995237830 734361260 366750584 179762713 820974491 938292504 820542633 373946004 910809113 835531828 853657008 26008884 522233468 173110922 85691080 643239413 889787589 114424875 603639861 588644742 653050655 932969339 194715565 674100727 153085908 867671000 594188729 559419433 717090277 788149845 479226779 925667689 138555012 464484808 185671343 102647012 605915061 4239416 2713360 591056944 443258651 337266467 68990205 297123106 457316642 939306333 384750195 228535373 969123115 229710996 310402098 892165348 412934091 173487749 902170800 864160283 302894955 989366356 495653470 105579745 862324720 788946636 196236524 528913823 40110320 251119458 710553650 13893738 584197 354982715 775425358 855045439 374396489 497859156 119528625 878711133 810332715 292754430 954495245 262407918 234249745 117244208 290408639 144119779 633941850 934112582 701220278 900789342 588186439 319553800 542350260 866786788 591971608 85241250 915197325 87049942 320676877 17192719 970054613 269241054 350682908 268590867 443738788 28277440 78079861 456672863 810340774 883171255 600984525 27742159 278873841 114956402 787277917 28539602 276260082 697306157 272714266 494811742 128678496 552187643 489864208 871128310 245220069 756516615 706642402 963898805 493040728 221875196 945819737 928917707 497587465 430826257 411185008 895927150 981087928 738121100 949296295 629799856 28545442 687159276 37053424 526596857 252865188 503135447 417658051 111447920 368557176 123104412 488755709 824543743 961884798 946935718 933060674 902909663 582626118 266284293 666367272 724880976 55688161 675031153 980394370 716189019 877992557 752253075 75313647 170776326 338075340 118060858 532101322 405969119 926008561 560735884 695833045 51699236 791450556 64632364 626230897 431120352 53535293 330930972 631976320 74002700 627967471 564081136 816745828 395747650 844272997 43102925 858870188 613307131 289995757 610464264 181339608 749135422 992155687 24522878 992261134 431157980 983200538 744492718 78540746 499545054 533080010 360411193 543718396 935778673 790127376 426874001 664848095 867918315 262076985 269407547 799729051 697692202 404483483 314532307 30376501 91484455 783566405 383806160 578166123 687279004 527808618 610703586 654097925 445526490 127557420 615214696 348136559 731193301 174049471 256360909 487728423 975440071 570034711 244444692 941246938 489209701 601257100 754004174 887638870 391340534 144439064 863139087 574240978 865265992 302224460 233396818 655001486 978873495 984888482 771300736 428212326 382235768 218308379 340599470 63027698 974678925 344076132 68639565 636102926 347461924 712766396 234174737 670849247 476666848 352831713 535754293 796702477 526629844 192328392 18637341 138054502 489009160 865569276 416363901 678847460 212329356 120922 946632730 271009583 68875859 666893353 679008483 604812426 902449975 832970377 425628387 303896660 523857899 571750271 328055259 934773306 410754644 997868378 811006010 849404716 899071004 511764248 855141455 7671015 784714913 125525462 217116102 579301574 238268871 385857734 236358818 193502781 895354935 653120487 358071319 885285090 753142425 642261094 374354527 431881562 499520962 651689288 2603976 121991674 969598237 415639587 631419818 910193913 825119158 554050995 824280615 622833348 649541521 154055578 70449617 452746138 629243273 917493449 646363767 221082859 627292820 794138958 730707719 985783463 817531472 307825824 41908877 832558527 849631065 400937527 736331552 907954673 843416380 332567366 123948194 267183329 338282600 255082685 483382040 522099615 977257959 704013527 622722561 696892360 501566100 794012915 911410712 384848872 186670891 394427272 379819309 284147571 116747223 232680495 163990505 495214527 451287523 993457351 271393676 76364197 40625253 215972611 527216509 378921646 689298666 455056547 801225162 816733601 385387571 394902664 910236374 164570396 984043100 887115523 616503681 465793146 504192730 398934784 899544343 676529397 998852019 902179267 28796639 767114124 869738978 566996321 55613973 775739193 447849767 168633640 861441577 565292721 251984157 487897162 11003125 39191947 596618580 773446548 534431102 749629338 835849097 601598239 208875365 836656833 71314654 85384814 2394768 235904421 971752632 427942294 236341634 702680060 294945855 811834018 387493674 207607023 619056318 524047419 348639041 565879377 916061380 591468098 392716190 269169756 459015766 341044539 17912023 696213461 774471392 591074495 339380444 454442946 592395122 622108931 74890 559615175 270140530 203219103 128820477 200731388 601342151 706165307 930274304 153476162 965981515 601737415 945880620 79349793 193370342 145719341 78035646 276982360 515104178 290970644 251868003 619968189 713624894 700567474 686722101 849373183 823079865 255552433 326111401 275600936 835419066 534671756 108998306 904782933 828391974 880941836 349794433 238136521 364734679 255887511 581370011 900526851 881088328 282372488 444059890 379795152 946903534 630521753 89465961 314891145 521869202 436526958 498686796 230969531 264960336 279752127 385091864 833856557 870007078 688593682 851828246 702809817 457909620 184511008 381371180 978876972 774150892 827889054 886165898 961959882 823776242 200793737 581121681 129770086 418455533 767192054 986147145 596379272 335400325 389908332 180737274 777318934 439619926 101878269 718225951 752009411 108607264 785005163 942860858 773778818 142497302 34778610 965610981 551992580 998342130 352484915 529077336 153959659 285115507 108572202 485037766 607344967 608355630 541697238 389122060 442136085 43785982 202249873 891640632 846125240 691394540 465539039 317739792 828563784 468163860 710219607 877140197 896834598 343827002 248961003 977128251 377747335 673677822 671302833 444004518 447241710 104546323 293886256 899815147 701166214 996740014 10632496 734620313 414897840 72531804 522590175 887304569 141541630 100943160 205442913 438402480 302368534 644699653 973657988 207721415 756537438 33757558 431448433 341276414 105288255 345184009 348889159 162513959 927437017 335178537 285836350 837675178 288110289 595263283 625980453 452233528 563156437 384547552 995890759 491081999 428869760 770554190 469923904 660373042 990018292 407343347 902952788 393901019 545686920 113078084 487910906 848752630 211392156 16158568 138753280 720582513 444962716 463146272 726493163 744147493 315601792 389758186 220257058 436352335 828491399 420506781 882812967 302694900 51694718 863702620 696473449 895121389 560356348 815514394 154611512 589994326 520369162 153620808 186061924 90416913 218590690 922685086 304201721 880669745 467361321 751633419 288883131 838641922 323333003 792974869 618998521 652612909 343468914 388646789 698916910 350945892 673585173 764422755 422965300 11921504 914964602 733997983 528333146 999710960 576515842 707313195 654311694 552934749 712275594 79950510 21788620 998733085 469608867 891852138 815348997 355635292 378507581 245386375 853209813 490340522 710962316 139472930 837008283 856058569 514844708 531099203 82604555 718394578 802560564 108917998 612261495 687678423 272892892 57625277 438789013 82124066 175550749 380987711 656521561 178378447 387774226 214041383 430087886 358665481 650243187 294178255 322899691 622777810 322096778 321749832 707974521 984069363 614449997 797936995 40405786 23537865 995775789 709660271 560027186 733514626 747590689 627288855 69703257 816095709 296653272 711481328 291190173 727411643 50555975 107490465 681177328 418407883 31884128 753941853 306887773 50797927 461959124 6838933 489511964 858895926 361247630 556080953 315734475 962584190 607166319 4759021 14152917 888442451 909407723 516597547 788757917 68861874 852427357 265708799 772176339 896520357 345579188 751321129 453982973 300457760 232715842 937474174 842587633 655169130 983142401 142963347 295014409 708840763 763803455 719213266 811347306 853391535 962820840 693188816 800282222 680830893 344928885 699513552 184361090 191047413 346758014 392002245 123330570 511368781 52000355 271549247 410292193 626334333 72157764 114236701 422989254 69993860 266642025 519397409 165478847 697891604 549609454 818871340 326791743 752257195 824788930 430854397 317602725 296549914 791772872 410209156 206383003 28137022 508403220 132607125 628991111 378529391 963008989 658244469 215875133 490372215 253041922 419022994 949410372 879974753 890656698 750151981 612353264 702371697 197555315 651269093 430813780 752027778 234324434 693297367 404611884 436892845 473456549 986713151 917876764 40962031 214664840 277239380 912973185 442471152 996502389 482513530 599350310 206661199 318620578 525199175 626686355 250689117 480745383 327694738 671903707 533351248 70952266 636193515 543052701 282315204 349453222 965068358 51670108 336279020 214473670 943278782 347616243 888899438 980867833 882022129 606669865 123408447 964429532 409913711 580491653 695641479 667150188 820782926 293459557 290203678 776283178 53187819 597676827 450570134 54138199 450114320 551081414 123765142 872905206 605551137 41141714 394258574 947665394 939123272 516150359 861571643 576608263 677794950 23685376 626241237 207697715 539008939 12829426 311931813 767996164 445869675 579247432 435170523 729952024 252490022 721961597 592087547 823048556 94368544 823497941 746272414 676877476 809197926 820798790 23705302 949246305 204662246 526098764 539736122 691495510 283175070 473972617 280847911 67994078 672521943 531648338 913893385 898970305 79331847 63534468 46184947 31146838 430043362 895290501 285595600 208365401 559982304 289602567 412624032 575633158 393614489 785174965 898016475 848205851 761786867 95766702 907292813 929049636 431434529 467331251 970100469 777443226 945748188 926554520 117198119 273011207 216206536 73405932 115355399 590009145 872830810 922597350 722676550 900014652 374541812 371891876 513607299 996884286 331073659 424915283 784808536 191969143 274670940 397170169 794673393 182019939 39175409 215248812 527930751 649684196 35408846 55524813 382834034 534114748 519885323 694652706 967867384 905634626 357427210 186973259 43773021 988917903 914188346 859345464 794609887 719591627 244848835 509052850 247071371 818592655 682086282 222050610 80732500 332055869 38990111 4824941 312533785 412315708 82296061 792287617 721446001 203833551 723300810 318829683 89575998 566519385 959107277 432690677 56809251 737901061 783045350 59829490 933717369 641159856 650220862 423971720 260187857 513409057 139835473 882654810 488668436 347437820 927368526 204847809 934593459 664010332 898208569 249609127 192645054 604223678 527331952 348544578 846067367 932435317 740649560 256836678 744870895 480079107 320657231 293449800 527512007 763553839 969422421 644165647 955466361 614748756 955215300 987203393 921855334 162742618 998356509 212839275 925801430 760261313 996737063 759190391 856270338 558773650 277337997 456442842 329584807 594417195 968870939 828204734 792490104 263109860 875445202 400453277 570363117 850719865 543778655 99812531 291961289 258148301 380592546 103732138 774138200 426970581 480135639 718085213 489755767 383993589 395701863 88719784 596121501 128414811 914945278 968176643 922313771 475798039 22249499 551802080 530824877 716263844 487211685 651004318 527611016 414652064 254047400 774241365 7925393 201832817 746879674 451292603 876465030 149860991 926124170 499516409 898665666 81170110 699737417 806787188 410867140 413338004 522277130 953263738 221656328 536750654 284112718 527031441 6053128 813539825 795816727 920014425 987351180 75668666 141790132 75874809 15362724 872329972 442274140 804099981 108095697 545472740 594150495 518957361 793692703 643128006 237866721 629913395 569839690 16538879 367635548 871679380 787298115 769397991 152391043 387976758 897050252 251977618 740692698 512251696 519631606 54486271 830592065 705919011 973722472 848772195 927944585 833135224 772301491 842344753 385524662 575689101 652719054 771489789 903449942 588174163 359289042 402985290 577133615 198060360 767957166 495889198 767407371 299012571 350425949 75142277 102911732 732214204 347109410 437332804 293041435 534381219 498968730 499951820 459876995 368696883 837011122 610740134 544662923 81925150 336288290 870724724 304507189 382907725 372631157 752665618 801016989 721931886 584549728 675271139 611001083 781050822 544821333 836425066 612826816 711852078 867147947 747843515 58795690 521379361 473546572 832205446 834745441 233697124 635300501 569797820 100458373 586605494 109286677 90469544 819743568 503236369 683567218 683958672 847068228 535575239 106312662 722268090 835225002 799824632 173346321 159254267 44926712 742267890 97216572 813506396 881002044 604562834 212309548 494352354 838089178 976798201 555774555 452160711 627278424 322552978 116790734 196455289 83645062 148816893 493626643 904618549 659968345 259398657 223757971 760960169 487964272 588198198 590704294 266757512 428156603 144912986 239468715 405322291 434125156 908498066 83548732 710888893 260104759 218191693 845555723 913856109 861755357 869623586 82382560 854632654 875096758 548418756 666233389 656362724 772950043 611674230 781473712 410026880 636336575 21774347 778140545 706705016 486197935 150077334 349661478 900354812 192037010 437492574 91148548 65040717 192182352 863518524 587487773 970103117 145529806 190847458 994411161 571251283 7725984 261357105 259494863 877288064 644538707 115987810 568968180 107791527 567298159 791567986 614391144 221507163 36628239 747312828 616132475 74887407 129284605 827753820 384480188 464867159 421210553 965453352 744632508 888987785 315106025 75661394 916305504 378469593 486167714 595407579 644547774 139803291 838665562 853220448 256948286 140398131 846559622 181556460 937155692 922381806 827374947 432187459 90111686 93806809 400933439 99493201 960654149 584056538 874849085 933557218 693503452 773794689 478401027 565026525 744428189 163554436 551975064 22278709 905444018 403499175 427204606 401613230 551817230 229097826 750780840 868827164 329076214 808389538 748045085 793346782 64239078 388550131 561693158 235224741 47926007 94584732 875876044 283893214 209313904 973826712 671340689 502799174 282343079 477319685 912774285 987474484 55483753 488146164 922625238 642337729 376674735 28934955 475137152 853094117 146879572 628758334 312070468 438566779 410328349 249094316 38219890 371026800 109570832 962488769 794587236 884198590 927894762 423698976 516520888 531425131 129967081 98783547 480370786 577814961 372508271 458904035 759774806 11093407 161305049 666447025 269967609 678865530 921031992 46622711 810963920 398701005 206618229 593620701 930660680 762627152 416731138 886836630 243971559 250200807 23674854 786248193 620612447 728637464 124519636 960374524 123806998 108735621 553400075 510458924 272010985 864219953 44763250 200359530 384226726 449635546 928508986 603161625 293291616 677271670 128761756 338621997 180826212 471720784 227833210 509512395 508964242 296060791 364551379 879119472 909758745 948685273 354213887 770228892 817604512 862791661 247948126 738988266 810162440 13134281 543058679 673788231 365544725 574441699 586659930 686455761 664964577 887294122 906672041 776668021 394899518 507365370 175654889 138258927 970851726 808508144 427191726 275047613 888211737 249258976 628967628 146900310 426968339 999036216 569639933 775375269 866969843 5510000 518390955 345805470 21072000 15138804 963958119 463073454 126453175 188806674 215875917 860646578 292574152 467171059 678931754 412178919 511703183 593982806 819677226 161062659 909764319 984668353 307746480 90382409 765794153 387819987 424546430 825243561 63454194 730517029 617853730 249851544 451258567 768850281 337846755 383408918 339727296 642792569 481966933 668128618 988181934 516094272 995339186 495174953 354138458 996861536 207294879 868554888 404544807 593086417 936040525 596483816 241840596 28997308 878021366 241839123 457187387 129992198 336652542 477936173 411510767 297023389 226301063 491553857 553974634 124218179 109759706 435458389 779165979 292954543 335349155 153887814 675948364 786122736 316043791 230821223 531343508 284880944 951270283 901304350 867114260 456807399 151119408 534982597 354803080 703988870 574829748 107459548 268291270 394374974 958205173 846467073 942336866 528947625 614860828 678676291 238253792 321000059 853590519 986047813 398305922 631312892 223201939 671742520 896849039 232232132 231084009 930891139 248383568 162208870 387902843 823047754 393916850 802061771 457681243 517989996 835609679 436937728 591908590 661515697 638169856 77775818 448042402 569519500 423108979 767489871 54608406 602535433 625192253 102588447 406082551 632670664 286182934 908098361 168668156 54748538 570486394 880720668 733714670 756912471 645618138 474499806 836001625 977016615 679173089 315791740 750781955 135822330 309351275 270708792 838534524 800505185 339695206 481599266 173332565 896739981 656574343 992704568 386716647 388635527 826881907 489870052 328460971 998353804 337475523 892972959 408031541 595375232 118849030 859580284 75571097 349005378 227054335 1878451 163325864 203713982 119847105 814316454 131565362 753641320 324542542 191340420 909322108 742313528 869760149 903815458 809720811 678049441 424132589 722250524 328147511 837753645 842681574 356794981 381293859 311702888 334891185 737056598 735331908 16667357 59895429 194382536 374982065 547705095 725238725 788115637 897972707 347829923 885961484 955941644 892849746 571529513 643920556 115548896 659805110 513078645 200462487 148053168 968641016 231659728 312854759 415030238 474035819 262145707 324132291 239068980 802302537 534529958 495488462 365110441 581577128 767677464 122503315 33218866 210059032 62267315 910857066 113511996 40650960 177625204 256922318 577949014 596653409 502761818 366060470 495533064 340399999 152203184 930274166 967034886 250500959 325540807 297894754 975126207 741634517 972430393 868674607 31884644 963258993 639850803 119059244 214111813 400647248 327604021 976401246 81292116 824593649 574958878 116318770 924023190 186107602 115333186 487380012 503076328 868694999 946663858 418985124 804429609 646831692 489738247 164757780 674406778 212149651 144263071 795457615 602668996 635266117 144134491 934111424 46199557 355295343 859723984 568583849 775505480 487936716 610967222 532511921 665526019 396527076 435987923 492394713 540151803 50268493 791700650 243402460 73682213 321605524 836290517 286807874 967304698 976150075 332046963 170897259 416495496 802204921 275374982 720643058 28374336 439904172 901329970 320573867 139241361 650416509 253798108 171746875 913757018 194448158 685300977 340565126 223185811 820776241 849863899 539431233 981372853 725193602 945347593 818370535 572440913 478699313 462420015 482277342 718875140 439581550 86575136 107587617 376908447 668850829 386243461 554623380 861917286 908633082 724340848 117068106 49848820 603850570 198201233 701052937 594147891 960910450 753448727 866541878 512734389 676007303 77764564 327311628 513957469 396938131 813722011 839529829 743082969 844905884 767088033 258426424 698981805 276715850 453064529 760599010 987945434 154303465 271429221 203599598 176954160 18348018 763398153 97340894 917105964 49265291 401308081 450692879 67427161 86480758 560147586 161916659 695609766 144928503 361842159 821562722 151137296 741540634 181485987 748566634 629679089 849072739 856492503 366578844 755996502 803778422 501317510 850995000 910220114 797738907 813447898 178199566 40355413 396100392 210442534 817371083 352381709 300873715 473177252 70861264 533190289 107850026 668970901 390843872 144177044 698838115 753071026 655841320 961364051 849287755 849736276 363275236 559624746 276560103 594224623 510333494 685586764 923856680 605709611 924018219 679614619 576989012 403492983 597521776 422093444 839161745 430829451 128808939 130954793 994878880 661732156 79478501 653243993 625396763 62653077 539885105 652215188 910908749 736922735 135665351 179017393 752228113 336313536 489615002 149309042 550022770 881496537 234050223 785347825 784898962 922557103 481358356 691140612 708834202 123855297 783137489 154678304 670351530 334005945 978551407 652978158 798561059 266403291 623328239 248022086 317521033 559551544 295459391 315250663 399590769 360326555 220153705 48618837 747561949 664097956 818075700 853630709 925780545 68037769 418620956 749592124 293386369 422904449 74716316 258500252 763751737 542128813 803296053 674816959 822140010 227844565 652495793 255488463 601046469 206670263 1027253 557082919 192048747 273537118 7403220 4460014 997130715 825582153 754068293 432077863 699491015 92439171 52227595 510947616 77785926 449530839 740624035 631592013 518538018 739605964 244441337 737128679 347856850 335518837 616242014 616507644 589804643 813092379 594737781 761959678 625514832 305814299 74851795 27321731 729407779 828834014 331682489 233672071 950323653 738264061 714199217 605654529 185348305 932857940 144128068 270238864 625482763 899109482 960193142 988697117 504651992 185672173 332296651 173243054 958477395 475962390 254814494 78654633 174555706 351161031 413707183 436262280 37051362 406665363 150740 701670707 55351568 997760418 740262910 711217072 990514715 789973592 8626226 402098499 913315030 22774968 531419251 478126217 991744448 771534842 810395829 22278384 876449587 687951714 389163805 668566257 226826607 1207578 946918532 978689958 117407215 302362284 969749847 574021393 1828531 723694165 517432901 133235368 969101947 839301993 456657501 217147457 359020547 194225706 717289401 365388113 753976868 291172362 187598212 146957839 837159068 545480551 773887342 140808581 349062713 413594678 783343852 920104845 189878576 725453987 835865326 892376604 275246659 850048133 655005824 697137596 76297770 146822198 531554855 33506076 492519217 147681353 799901811 668236245 596764695 505020055 383466888 633391428 49947550 263241996 361959964 65684753 486050825 3798013 461598417 165209978 241912253 683498209 954849140 315875104 790739473 813579418 895748684 88204436 13827438 431428730 599874256 266586651 604188054 669725362 102572503 662453922 127987371 781165197 512757954 384859906 372192343 434099191 376566112 750051425 984421739 741451830 724416957 185912606 911233341 860166573 535600992 870684248 295891963 117891052 388398834 361190254 144068651 138920491 991105964 597054099 481554652 26760493 35903022 770105520 384624914 226411352 727811362 37803464 218138638 273719654 410992629 901526893 202375890 694500544 625239608 505555195 959685043 309205153 128254859 524420847 249332441 536339027 416054692 704140245 515209730 876129754 971489404 914772597 116547477 422620912 15117949 474994995 936751507 767570005 168791088 862371505 203948334 243361503 748209955 998607957 274163017 97630307 261366116 765310168 812915008 743346952 470846629 792439995 51089260 454615996 268398295 471378272 407008563 2176182 420819372 968609879 245023019 393306173 260916934 981519486 953850757 537116591 988698592 239306198 740378977 873108967 838321698 836770570 478830594 932989279 928822530 603379805 778324301 289391282 824619681 612630006 632912552 412261896 267114153 268059165 259111304 489661617 317441447 55149186 551342955 546461011 15697943 275823022 158208442 773796895 399421918 379569061 340195129 104551153 888377086 888710210 926496108 967406518 477806173 925775385 51445813 377242229 639672773 847883524 587833899 827640916 386234814 269365822 509685011 192068324 294626410 351454295 463153116 637878809 843242109 903586397 965129963 359228079 802664670 12755015 641061121 389827810 722195315 90460282 569198163 874503794 943069831 978833832 468508577 749679898 268068535 811406421 630104131 695402681 176301703 805842749 660281085 402824269 891140328 271582675 936631522 68688199 712222846 457082850 459951069 859313536 910477309 995650434 148069925 142473104 979090831 53394105 909674249 166900806 645928381 75534814 912591148 332087049 646961421 33824886 943873997 237244063 873680903 960781120 982571363 374394360 888425041 671583784 712101343 964970686 646792609 146822971 986309457 128488343 366642921 409593177 776819045 455346534 424800748 490125296 599517609 842600118 678802448 976094375 610495402 411975143 987348048 2183873 852076659 365243814 796053772 522272771 908711479 249547140 296193633 899619701 643059360 866400167 719949951 870304828 747402832 20077600 454024608 817291362 84638739 795598905 384047956 368706801 977355080 892113075 753024489 693596693 34364237 481872708 78117510 967071199 113554665 824827837 847172368 545158889 494297354 383783531 599409721 898553137 154064959 466489419 704912803 712632987 297288310 292627933 606274721 267602499 205390147 81495310 165541676 675500571 179002272 168027313 273084352 345254175 958846756 554345519 660452061 358390200 579271254 691215915 884714189 741561552 699283425 729679782 997084997 366641182 256795588 155479709 155576098 139547707 189013828 754528420 911437085 491356189 382694802 972805126 659653663 998214977 113171012 829757903 918253750 292228316 253651373 405018641 58690021 439814667 953243930 627395009 69696208 926813615 938293976 774657741 213981778 818681391 272175662 558146714 473556623 804640155 880165858 322743207 55693515 782881534 973006835 954561215 720998230 559214228 842348992 406691935 702278116 647492082 287381454 823936495 509784584 404556298 616317601 98912407 398795679 796507740 755651944 91121634 18094790 900195443 503736358 395523638 251116809 521187048 109790175 482782508 807304132 715511939 221341912 496873945 525951827 331191576 691876024 709048095 975310729 184682204 425281268 867982671 259733961 481752081 330691950 935501510 938588874 149384478 175414827 331468722 142886504 380293388 665476579 548407187 340405264 911374087 504428792 516530417 376966018 730977281 926816252 537675782 905585373 944629478 863965874 328102739 747744136 956796496 23485589 188462081 259321236 186127265 620549426 240645338 461727204 944299591 879595186 55344689 217481314 644644023 961512571 489178160 367891741 249808367 273616243 640067310 876560970 335468353 132312166 370844869 46955436 423184052 66967819 891399694 91109262 924195142 981009148 853197744 592743984 558352324 594415175 408473419 332314942 495087034 138223039 127254239 86022515 641283124 48261375 453240112 517347687 970792286 504317935 301605050 488438905 500475756 979687509 641134155 985257500 566258149 245727074 359127194 78928323 949087358 569195957 104118342 788808974 346845065 486929834 111417265 561563821 355988065 598856361 513816817 175940026 502656804 491885649 678744269 934119752 781083749 823199497 677406152 9217158 249160989 63591012 303888669 431954482 791915709 740922905 15417346 944075479 387006254 673396963 697758563 149540341 306147939 719018817 675956690 15169360 553372569 408941391 340590522 805497396 144092538 93448837 498250863 347332596 887916882 452873424 617523599 88078578 544628801 581023647 876675275 703465764 687859023 275914073 977704700 217425489 437419408 593469084 847224741 477223554 216807222 58396804 544160815 411796088 456321220 229406449 661076971 843227925 706061277 232349155 547307079 567567835 197773526 290853757 467331698 509968285 715093461 215621947 860830856 915128674 621313437 109353477 620682882 838253008 446992019 219146630 256850765 574554876 112154154 340525858 209916717 440104832 48067131 548590079 156395590 784203955 628491527 415082030 451504436 415991965 140402397 705517733 246486319 92863432 60997231 252541276 285687564 963209439 546787081 558520941 473228898 41529020 779453753 954072378 458939143 987694615 303778176 299571424 39678522 970816080 239206829 569400966 437368384 163277390 717010274 690411010 909824052 254914754 886802347 399237935 12605085 236712205 753464198 422088532 678140157 845319484 560100161 333705516 288413862 252401043 653100282 769715689 640664453 112069562 24767413 529785010 976660890 699914875 431209447 362265659 110151719 883508199 246594713 952695173 109014780 441361452 428248321 551029796 927457748 671097905 835679967 539785886 488144665 235781739 492447550 913460255 975308363 494808433 625781500 342392614 96561360 61241590 914733401 469503619 564712924 151965812 846039927 824978097 653059106 362962668 717667684 218778720 268280227 766134886 356960462 689873650 254014000 527492612 760714398 656637792 728467045 180645737 47493282 156047751 819052162 722148728 846115048 816074525 849203912 301553938 579078333 178820479 691374196 720185038 407408505 257674911 63287761 506037913 955019058 157586947 546932470 766902929 777171512 554501116 730571907 865886720 288262012 843668068 962937349 119332958 772126269 641698913 446597131 348677095 309675078 641249161 493178365 364936580 129322372 448461718 380721649 368239841 98824125 49289689 464481872 158416340 978985418 96557889 404333967 738635561 961431816 516572807 678296635 758394155 351847754 418415405 978441851 418636769 674643905 38434488 934287530 389111606 13032314 936637499 169786183 592936989 722276493 407796722 351069036 245112042 232357248 692872351 407319853 917426043 506935759 943507063 882221504 782206357 507680 311505415 947114415 960633711 287903610 573726543 595346581 182781172 24802021 346415563 221316591 869214923 362202422 591869753 467214369 668330466 233243549 49223297 72591344 378334429 12180383 473141542 968102475 840166105 357831703 573816704 9704293 858413836 687263069 975781760 722324771 334725726 485943707 414298130 537570531 242905445 90554891 452861104 998114988 268969040 574505830 573552429 880826828 688294281 822184638 422296481 500802766 887098748 693916802 83303116 931005847 655270068 554671347 387122188 305471360 833907091 346846741 997768999 157163756 859850980 796058404 748788369 286872597 503957311 848861887 872597326 420382985 687097388 416734998 976974649 234780493 134897444 692982762 733924162 147199108 90590993 97159751 520003340 740198101 865098845 447410467 562720038 322180743 294314440 629757274 252893580 45276567 675258179 394319519 81770160 423471851 990425720 379060640 780523743 348382612 307826707 480370499 591725454 605810396 698983835 598454484 728541058 984415132 957935631 563689300 795824774 510314443 444372328 432160064 974116063 354237566 928349880 441685409 324183669 804654070 596087885 585079899 735980798 985674066 286569841 735377840 412481691 322754299 508333244 729860241 510119684 878720421 692391270 393113317 797517050 627649206 414115993 302752967 310683126 656166782 449383619 827880685 591158951 948793539 778579829 956003787 663594873 677227562 386428617 216253697 591802804 445036644 911829453 361797392 232614456 810288230 920258483 173118306 900168215 135889598 148791200 748996446 169366588 958995775 526214830 725128463 90161587 546723954 286585999 344073425 668003195 854565097 430312386 117012664 743233557 285545634 960555872 777519741 532624575 745134964 535660266 416758606 891451767 92351620 124901907 405836514 635146518 401115041 484870529 61168365 454745419 51283533 121895566 746383102 526709006 702784801 467004748 645901740 346136287 749966916 980884548 756173993 534196520 798384967 386142663 112974602 225152673 414049293 957700786 834207930 764013215 456540111 687865773 147039918 786621588 421108578 762341574 324071619 49601153 84099799 45245707 548559522 357236984 47139079 994678798 100995369 385893395 463219517 561984647 162009798 788728128 864087482 266083629 661352770 67148367 706176099 57643336 901104081 251205072 316346774 551663670 474478469 710721654 251981340 856796291 844875189 157118855 884644401 216419378 387756838 400874347 797424019 474293217 427302894 163538729 71004417 171725084 227343721 259158495 826057389 579695534 731064462 881286871 444033905 778495324 396605904 416137632 978505461 129610180 891750423 468888057 473995172 749558495 690176158 310304392 804334578 154995892 318559759 190218085 249508849 178121591 631163393 144157828 860616470 894135753 415085384 89091016 892596028 888847392 111578947 303546549 42710324 735946951 87347538 721628533 431428568 51117025 221664086 996867651 705906786 77081117 857025061 212954945 789672577 618884705 98321894 118897963 621252768 645258037 759658562 289559971 852220787 956000277 400557603 387345200 901171989 444241645 549563586 519756162 356194508 572599034 328162297 563757510 333476296 242941500 766956426 915144051 930997385 587719046 451698159 802487409 948852289 942647467 474163103 200133841 949849302 25312318 49444276 398332598 510910954 629918613 860376917 474180007 97228112 409560444 278440421 810989152 14363260 48986702 492893790 57340260 322696807 481438542 433988282 732983309 761627759 428508135 850270070 747679137 101028609 764711933 642107631 132622239 574465501 534770900 916654381 158711022 423198204 713467760 424370735 536726456 632583266 476045289 95587700 865861133 405908148 429224509 89227296 595202433 910791884 364995399 597117304 349932627 133433161 411648309 413128542 689888707 483210676 286436437 231824231 893150781 36250244 292289631 760125264 442084370 3696212 541944696 23826567 948883754 48636132 25286888 385127337 685266840 353730926 139226857 329767323 82203026 794359289 642918947 11155093 873006693 640538276 864706369 593977161 344470588 857539072 853350263 999160115 12661625 297559956 148294211 382768511 243380168 221900362 498056549 509857112 859993664 227235323 813814391 683317198 817151060 442886668 627962785 303543653 293641704 264795607 501884835 11628775 402046658 708762617 789804199 836599579 407926027 110823549 634793850 718957741 407134505 20273141 118148009 278553370 248086252 542595264 954247691 220676520 32648255 683676853 795757401 558464453 747628527 216210742 280739409 610593906 397593678 794118824 838927088 684586726 84719147 59965186 338983217 867769056 845220221 584188964 629175057 532093828 502374733 443745284 382758001 595298671 668421037 717387488 973440341 514059145 99993072 896184954 707631668 319525133 401267410 579033040 426566768 100237456 159610055 448870414 161347749 314249719 191911274 205186015 109272632 576934156 812584077 822503503 844265611 6643203 210761281 162376437 280304696 174300261 337339335 978533272 219581378 656919910 461898470 289144838 515521918 567422598 430557432 489101508 864452769 251451772 979969176 475703546 374604372 806881976 436781066 56504435 568267314 895204579 969070050 211078885 405992947 765733537 66420101 57568636 419431947 459002343 452776963 225299751 52126147 433757832 66761705 939637644 767692928 360939246 543537069 912691414 605133872 290678933 229927971 602602365 625027583 78306980 959305367 875252367 516267002 228531989 758267797 471433110 920592992 267411474 5994264 754045344 558450925 77800500 576833446 236965120 997629125 532635587 798749385 230057680 561374793 512572597 108714958 875386148 456712515 955906326 38162406 506079021 775111659 388880577 685012182 606605623 546888786 886976976 647796790 353865449 285902474 323233065 900840635 549926373 516279233 115738540 960034799 786302321 201279011 458257923 295410430 107822536 869605111 421220995 505103359 239733698 853647893 225767229 116288874 750499069 356316135 92206614 109011320 286786108 68034996 651352639 449994255 9371227 116099629 949981142 57377595 909321865 925099914 373009814 917144596 118739720 697650078 129285595 249079242 556030774 529054287 279805392 158886728 513995925 123326569 71349749 693611528 274846997 596372924 141303071 582311218 247605009 139371939 832534569 440328456 714761151 31510558 368513602 276175050 991320499 729686455 262210394 663629628 293790616 56348444 357824853 77760138 185155887 369671329 48435337 521584478 809698273 877354587 502638260 301296910 400721061 486419493 830274909 673740817 438717502 408479854 200121812 60363615 113874713 75105698 849625053 681376266 34037986 737024995 314882965 451644909 312269782 623920324 342672418 552610612 431036408 210185917 322605164 710383414 357352283 26809872 698701429 805306966 514568935 606270350 444615194 850665750 657829412 958967635 367868394 177595723 706644117 73362114 587708407 694289874 610087324 984842692 530649043 491700295 118384645 875198671 397953966 542522153 866231373 536654469 689350928 427827987 296376897 163542684 946479513 182265410 480151818 835568199 769053316 562895851 59263481 418880108 779848788 365950231 189828000 363119599 814287022 177990892 571010590 906123183 416269443 99288185 681504418 481744274 169761617 32726240 925394011 521245295 865335428 627609032 717477106 13592085 373311523 634703180 788253543 183230674 537409258 388892450 685428929 270412218 262084380 126497031 411853101 918412146 170704603 529396166 679029228 690516325 132643089 886915067 631979348 456761011 216942472 36846160 969793736 231192228 598637538 445675467 732271679 751352770 799586049 221333615 270866968 524709087 549552002 612178413 972416626 415500235 830821550 34782830 39144908 868748570 320865233 246345980 262878793 24461695 893864102 976094885 213477488 676808936 26362096 506130555 433396509 315774349 97508135 820462797 673905106 880965867 564620108 930091139 947120784 305881092 649739730 483760379 494404294 681879725 618855640 624978266 386253070 720959529 762981235 462178596 484830665 469060720 100187342 853927867 217391324 761807694 622597926 911959555 998765693 116924919 404258976 592043636 719075559 24113574 313137611 350745107 227382232 941682808 587819957 915407624 21058860 518034437 178285929 830846582 946145207 707024574 291088443 620112576 118066420 766897531 40437760 720218628 141843020 442938745 922665038 641285719 516276029 523893648 945338203 992977939 421368939 253287551 898592754 663909329 801483994 740938254 179701491 359894773 357247973 756104276 273121656 773852820 499613294 68207865 888779058 812788217 934793317 321112298 89374400 477673386 211541612 250823845 459800895 990329115 968351653 510557609 258299385 906551742 334976149 874538699 824468229 373264064 681125001 30752059 520494920 56604242 594204694 560629189 803844273 487337403 219676690 721223654 538889697 360111787 446364061 598884842 876454012 813731557 445470964 504680987 147377479 415921937 962767704 795497512 454679685 609028293 73563652 232624715 689452655 759635930 52430690 779349510 562139773 713798678 386436215 838548182 221805527 555237522 546844990 903445891 666417237 741305032 419874658 709868892 194471981 922635687 607580232 960421856 310886724 733454443 691985619 336510150 221206373 129790155 387409061 273425456 475346365 826997965 785812953 33097782 181969910 803478758 654408363 616629709 185787032 919276234 390102282 231194313 425127238 988071149 530427829 344502624 241795293 276276925 602815646 740112850 71381728 692008904 542794005 764504986 41419935 467339413 237175375 340859800 866061170 63357109 224268991 127589338 64211293 958468177 364155755 370579326 508734056 754005298 430274421 470855827 657836026 937337690 543433727 968842202 571927347 652579423 38196079 60792156 678493323 298251847 989535564 604192462 923391977 29907383 155593937 905114104 210543759 359889361 795980912 855731399 606291037 792467009 204349130 570918119 219699919 773629534 491369261 717112867 199120155 651168260 193720666 453254045 316704872 841363437 148139005 472360711 665684253 127694434 365551932 718138176 946788937 34223904 540442517 625291095 656910499 377992907 505579850 435473492 341025064 716022580 697959224 494009884 190094000 516775453 270626504 447978624 726977269 515306612 802159140 484019599 27684512 31375476 152840218 511128144 51513013 873683824 819520146 445964723 178789146 898792033 618009433 220051531 512660603 449926926 11645376 45083029 99066229 785350413 137231954 964781508 887633622 484837871 435849131 373868028 793592985 206804015 505284029 476630667 38989145 566444073 327713278 697227935 903194424 592801441 768729270 442264442 417354008 697815044 201035627 99761921 971789183 825106379 400188403 819405480 257070616 286229493 469310394 517103601 529046699 44531691 269692465 95226730 742275978 674453118 800714879 669166177 285004608 588062574 745007513 177686734 69889449 367159111 777093085 448626730 795169806 941622836 483479671 900927167 795212962 905507928 902839665 262535423 477388018 996786007 404193897 872836584 202611941 924618375 769232544 824702768 692178083 769171158 493188354 420265931 343526918 365770377 507044387 792209575 383091792 8277381 525338156 81362712 683156353 878196929 202824001 173226093 16331431 672487781 601318701 479296249 354003840 495938514 813193211 888607568 262726662 909802940 350224880 336239905 473952450 293892947 800242538 637606348 646805686 821686588 946953079 891360307 1362319 587907740 388261455 472943578 627804474 777734103 927589197 486387482 494489280 153768402 560021718 417386691 917731757 591808427 507898242 306485079 32229251 929084370 715033402 765176950 370408302 404221661 56479287 459099025 747286379 702093992 952013556 86049222 779433419 557155973 864160136 97091086 575464284 594405195 950468106 805788855 640986525 458840723 188994382 459804051 419305096 901242558 14398602 552876242 451319657 357921621 174083600 46689798 527252422 72239853 655185939 126713519 855362985 284581732 750028330 178273648 706530763 611251066 244021551 16593288 547082639 549163969 44287373 693681591 927691346 629924042 441937463 795902113 420110349 655833666 740325538 49035816 558877731 781316330 734608970 828880112 21907012 152599952 830790770 361952270 688694119 345180826 550251694 990745330 507311274 39373536 15688346 325366569 355413013 252930363 9378015 806142245 213779966 915422466 776554249 787337644 23586226 61465415 754996737 997867955 849515632 541950320 211322080 116064044 397516394 380603177 5846929 896991583 365279694 17129385 672479963 351110970 943118728 876331591 714407933 952239485 118483067 332017263 487386750 599824806 310391617 465600459 15505698 601700437 246506333 483773439 455460511 121383911 504830825 582281671 75905261 163182223 861186395 98023284 303788752 352422276 663556087 343134125 453498305 483354174 233541924 51609622 765207550 941448939 551568509 349850144 272945808 483366736 324601993 875065194 611268030 766067573 944461288 187206712 433852692 467586507 691020106 268387264 310756139 575374773 390706638 196542798 85544599 925388880 372458017 3135107 441203001 212941676 465412593 790968398 95431581 17120692 367332039 616426565 423900802 853695942 633602457 934641759 724403400 194013651 869045319 260538600 795401669 466557616 745920635 553967720 920782534 85650346 111561574 627637604 438527168 376775749 873312148 691244266 176923846 462087483 976403215 103207241 379645125 270708387 616405476 384956103 327509088 471592630 345882151 890151374 918000702 111584431 93788293 727313791 445340951 882735895 541256630 975062684 544029476 76804841 61247334 144173778 908197429 150588982 306911370 401916593 880712117 775649218 385536698 14369957 860573927 178656999 908964043 487650342 631357965 90308220 926338738 782932356 361527519 598290509 187071803 128241884 658901775 423726302 110302229 664570195 526739727 328737650 330846375 776729722 386688376 257266555 89792260 328671288 156295100 357994476 857635137 417645789 838026128 722562499 653080917 331569096 641932266 984253161 737111707 248581781 232839689 947208068 857846801 988315932 461566191 133427434 941318299 690315130 119377431 144364428 71729451 246365492 971493076 360520524 587175146 674431954 324896175 75997946 985510445 667381574 103390665 29587318 389012151 903812998 872655411 635850191 68343532 260835121 973614094 967982890 678048360 189589849 976020753 513428586 6342323 890489895 443102063 959311450 832123589 401298158 332759823 249945062 148171617 625104867 519763046 638495339 947851740 37941944 809280309 88890302 181581213 340674562 713135753 229997768 466968539 328281467 438976449 242062473 68694247 903664117 651532803 830090347 166918780 1086056 585869993 215055272 555299229 891277296 910282629 942134882 204792905 117447263 536329828 278085715 161397912 563809653 189796039 886774724 530710297 200861764 305048859 172175506 836622277 115267340 712016051 39351384 173289499 672536953 415333740 105891593 619286565 592145488 856973590 905424461 721715549 31468025 609642305 383276597 30674863 710863938 583615239 815085145 828238753 345675705 664617375 213578996 688095496 146110937 372113985 955964907 767347024 220080776 215092151 76569781 375462632 3618930 463605089 88137693 501069419 548449288 394606994 508773501 958474204 395332339 490653829 499020757 446618175 514136170 172151113 229953565 460359421 339728178 116569507 844418503 233758113 496047201 881554157 624275425 499506202 315152135 936951213 248430266 728209523 36369791 369648807 840195564 620205927 601341335 197003224 180416900 32287188 577248567 291698388 379141648 100550068 739051116 485529781 250949669 349082225 778465751 563169400 290670194 766358119 405950255 696956854 988227236 254458146 426346912 151296658 195830967 162968151 359001444 564953316 192606539 987681827 319615345 482353511 711929891 704229699 147371441 883674422 182792995 927810414 570938440 400200846 275755219 747495733 531541724 69277796 652014599 765152580 954428373 542399585 802962415 186925818 141242177 3613448 675542607 882676565 769739842 253268359 772759242 657401318 112316823 788847623 182959727 486054787 38702701 888079753 273609564 890404299 277581257 206172469 463745282 213162650 356025541 516301159 751630346 102031382 387293400 682628907 254983352 651484043 988755611 793992183 553667851 50934427 197242389 184708890 993457098 4003545 132642798 318747624 709663066 462492953 160597853 449262179 445695534 52591889 876876405 269953903 208302117 337492966 203481659 514810610 541850779 521728178 369790747 959134903 791394484 443891330 662375910 552220651 456514505 722276398 822355944 75881208 237288921 675349533 823107260 69426330 969068351 29981386 964446043 706165402 200164735 139916441 815194650 573624324 678070128 492405597 343544087 121016119 792092540 299218779 143286506 558956664 868407021 181538210 924659717 730391866 994695245 153414671 400334659 43233339 628613456 330493195 674320873 502660851 579378322 668595422 129566997 44689524 272252397 44066871 187521144 329879061 551632504 281347117 77277459 876934625 381959649 677920796 994967343 477177971 48454968 349191507 72693165 935430282 604408859 609168287 285144756 769601875 839213655 81580189 912556127 699263545 468200989 949216655 374516886 850292595 479909167 724322143 56057130 154424909 263466483 382375217 29905251 943895421 146894444 245194996 565929849 554359712 949027146 25786189 983785603 760804 637032097 613258096 968205121 515370750 663688312 178122635 852288840 382884186 521196633 807146462 393898452 277378218 859163794 320935021 729806756 266712099 379425461 813559859 237039428 873570313 329068401 107287572 105198275 750636424 976952157 416248939 913648288 925152721 114091122 892091865 979054141 236695650 189244350 923505660 416401842 99869554 482001217 300915681 780547770 200309050 42699530 589362104 750957040 163099419 933159306 374548715 370207652 980636169 284758170 280510999 62868869 658486788 933713522 283827682 822329362 756818758 681565731 251137899 658908848 732607727 962120581 856874048 293328639 172007524 981240756 656428310 900046811 264891836 455211665 706811205 367558103 582255864 238966193 761878984 82241249 676287204 323193607 284672730 271951700 147289642 535348394 478592790 951185616 563618899 547935214 387890742 538404039 44367602 835297914 719476726 659733578 602383189 324118733 737171276 259020304 239764710 774369234 186590401 182869664 959813355 581987194 217081553 18482541 283514376 622155581 344343204 135669007 958568628 110429064 144815304 851129291 50907784 985984418 376898146 822666206 8283153 378150051 810498498 477634536 199236971 622523613 750527866 681602005 992874971 5442997 86288631 572205818 708621954 738157756 46401591 466346103 865904426 20675656 90161565 970850579 464670340 708111079 339261030 900478527 872274995 737925001 148194840 519587849 290052892 498459221 489428127 373885354 90068328 189973621 302124514 400594974 453107823 752868802 914595332 90941774 229924098 469233271 665144164 396372930 914290087 828803948 693379139 770313246 749858492 684621482 139990431 813404664 807456593 55968126 305771588 75541388 513239842 117602121 937930999 729592256 53397505 412957300 322447239 864185469 861833101 173214171 251904679 484812888 224493786 727484862 271694535 800025285 713101839 530052190 320066862 526285437 678636682 55061703 748721637 162207685 299358222 733911218 581087056 16986184 621616280 165555562 505496663 471132846 230685055 602988816 621493942 823608297 297762005 255512754 510354400 805031369 551371744 179843249 300188019 220573544 529624143 701088908 168954840 789485908 102345731 111897057 289109913 347358700 999178726 55628467 940523940 502638096 95186736 948839803 873422324 118370126 407328968 578063355 758698702 708377082 597100960 327689186 11425480 246983479 981643671 699371100 62068271 675275171 898822879 472106944 273431710 525818246 652087134 551479247 302857646 730901806 229701943 738974879 39637941 169108891 866893619 906503402 942826772 645757632 124203926 214031188 195477408 4781608 598327370 981992181 328139315 251404344 134231366 673697187 657651400 340116782 202824462 774651140 146472336 860463308 433932873 368760391 976834122 806685935 864536653 552337261 45985459 425419031 825312030 927831533 787407661 73360901 770564522 566871678 15616124 867419106 799626820 696005398 422553376 396185818 464664995 885939868 708045235 908001897 952884408 91957675 769694773 839854925 331697673 615883142 246437401 195184184 672232789 899795035 959762953 498213348 813145987 315802713 304863863 877997631 254479305 552630270 816014454 191206163 610936184 576148361 817791062 945583441 920649352 993584122 709334626 926214071 296808663 277467525 120278846 741998234 580437635 561732237 813516715 424224017 55083255 191737768 26928159 14904948 323184085 958428779 180699357 665841443 347060821 73273457 680608614 450420407 328005309 253114002 576081124 414639835 386216820 194852859 217475146 904096967 140837550 587737920 960089052 519427229 88378322 24841262 785241713 567121557 510828065 341470847 854132012 664905303 450002743 8190586 952613073 331963475 125752375 481680200 440468094 216317221 416683605 953516532 846195314 273668680 695907370 954609349 755499225 941880984 996632229 559516940 728350481 95389353 646931704 149758479 450981936 196579227 643042635 681517586 157286262 557225473 425352124 618654214 530748315 115440476 275841723 631720025 161583075 12992146 740519724 687770231 82051209 722395141 302436515 647797697 627894897 371655299 964451485 696327873 285308511 47922617 516703709 513122948 543813856 987053389 715908291 98680689 38665973 288552572 134717616 127501017 929296663 923273480 507233734 735476958 107964728 456349814 309230603 49246583 616587387 536726564 137349524 339659340 989678651 315568618 623505765 730042641 109891450 28395585 521846492 220752982 295670949 600168339 200106 711488018 697057529 451404650 65237098 230703592 617677495 35202562 568010661 822832519 873132769 236335672 468352739 630681462 607432626 57146457 342159745 497926532 494977655 380966592 712939264 803497642 792161787 52384276 677422732 445549111 974689954 723024994 596950073 926189048 469215529 612779346 94638699 719922785 82960769 320408172 667589496 227202905 350732331 868538146 201678309 870376929 650603140 170047443 716130605 637564748 456457731 627717504 785728234 770455429 357215619 929629870 325208349 108873270 621065065 431987130 393636886 730188547 467142747 141743093 929970182 826505435 509757374 22733143 858537550 370796466 825635945 371744389 503316271 596198637 164559909 748219980 989333958 418957622 244691862 680908022 211604785 677034963 775491099 409141798 164152193 619082441 707900280 470545802 734430807 717557074 543897379 557366287 44093753 990135509 525086188 74346747 393490130 416572185 377163232 543340571 497294250 677090797 733848760 268853175 340049052 278519372 701246566 56911940 995856485 892412504 121491658 580058512 316202026 873954235 406558723 683030074 567666828 67279348 686420811 244025157 328658413 569586699 252762878 114674024 972991116 246527828 52576035 445923493 278259228 149690487 971274565 291270508 348590490 686370732 697814681 519563958 228244544 38252577 804130727 178129820 837480691 914263844 455381791 621716292 100761752 777292808 870570404 30698565 689418070 975564721 577008258 691615694 578936927 870639281 448312843 967567134 324564347 905214216 226276655 291427579 268029234 375955961 739223013 111842534 435890632 351764863 933050993 462079260 890743697 693341294 926251486 501286466 449400193 619796532 888867181 514516804 925675166 304831679 563714883 224978625 759307503 98130924 855513226 600802940 221799701 37077182 700012649 742816919 490136666 824596184 678303315 463194449 910871800 57309604 997906982 652459245 674550980 60229506 973101157 61866256 93204303 394013629 892402983 756816299 677924406 204555068 80783125 854411358 832025741 85835334 996550888 527381928 807179770 6167320 793951484 564217075 546565397 343691292 724604208 415906935 866963496 335379835 273186856 35176690 737552231 158207454 402664828 82581071 761782330 806293210 195698647 255688413 959732644 987548405 878709162 652979338 421294241 298334703 272812344 76341215 880637197 319921973 270082381 896630838 941023907 25556837 209039425 664360105 14067184 879449243 633892351 854340427 544056600 451285047 358869662 646265561 975252205 606518803 800672207 716318475 104927448 474974853 986150245 643882460 458761126 390483425 207776862 539658522 437274230 217445876 574272456 678113548 435213014 287959125 554460316 338693077 991168358 997230503 86619943 734748053 826761528 795679395 407542700 937445326 887901821 380192487 605282201 641134333 803150312 12955742 369937557 449998382 975773838 440273477 957166490 372093057 773832250 46444207 306989502 727779007 631248202 981463059 108669068 254369691 293049358 390849389 773043354 882426635 680776019 873157971 712729841 214122804 527517206 816098434 264570045 522846800 623260119 402862868 226651131 99425195 799334594 810097367 805672623 111520939 329551147 10565451 157700111 527072873 971830027 363099715 923593433 439888053 391098877 179885137 462172574 25217387 574955626 945039353 626623060 322800731 402419819 65945329 431449014 867628180 756823174 108690906 254964343 867136364 777871850 768849478 83832617 755056751 284722459 81442842 725377192 371982971 892021206 13147473 116536852 898271146 581297240 699065380 269991069 797820892 511105429 331111561 298751673 833083295 612680551 469479398 856296458 388815572 810338599 837906961 659647400 287963152 278733510 476059892 659524976 465750990 793233056 470134197 306075286 244557639 957122880 49182087 727267974 149620792 862262265 378522652 404065934 887929706 680613835 870054548 994088842 649701795 335134009 191424939 507429894 213535563 481334387 6667723 109223856 89494135 918670611 673691758 593126881 903412790 336232099 347564287 415819052 932636974 646077021 955648138 531323219 665494580 64696925 61315774 881713254 785691574 898716638 738106150 717269787 992708600 354688198 506443828 512694004 962828135 512550837 822253123 992659730 119917436 710083760 10574120 513730106 822831336 969032747 650034485 851311324 233642158 144282954 493146079 203807908 68297923 848450254 341939743 484161625 503892710 504528882 406618573 566373151 487864572 670994151 774992509 446855769 541043155 573284488 641751463 969483683 274819691 634446525 394156942 72754097 958585005 947312939 67048665 969934894 424488654 34747624 942884433 205443929 342910181 29363567 415290747 374537614 927314549 659989924 331331449 855576472 938199892 529278626 749001881 370834131 278536156 989210003 469275202 932477661 414800351 302941662 828069217 381537784 724854078 208455299 278450172 980431916 797148887 365721522 333302433 131167437 724099509 217421486 291888410 406631207 948786066 978260694 207041315 54298228 839080936 748615203 772332616 931140050 693624762 578969782 812728100 825740671 89792926 618550575 399986994 107989852 425645959 929053149 569696717 538431805 80100109 181857422 243560943 170838323 947144709 479336006 979734048 802815161 850944531 808755686 917370759 663278258 252250155 872621291 691431739 608553944 352953301 297302431 655908681 49240853 222989616 826263161 275975581 118877918 572630247 923624822 982759266 365084303 500761763 543121620 461238772 605268170 933562769 623911896 89205217 980765923 201482986 849235207 563696527 676254506 282617472 686889320 83503890 431304906 634397783 89082905 61831828 484690962 222609507 544079109 412686208 45243270 577761032 784307474 832942653 874094667 903988711 296033724 288898495 59553016 484951329 421922353 561466885 90654255 774469215 72238341 102064433 574925355 889273440 125787099 170717256 418179152 894228615 424162807 275339623 800852631 109378416 341662233 859326569 320410419 332036738 295731197 671245884 851976645 641742012 77610029 184241817 794629576 536655974 383681686 466983919 515816322 86648020 211982727 629874347 778454528 798629180 79779878 182324427 784224956 69208558 947488338 578401985 544744771 355977127 849034292 456205823 48917242 654422929 806637973 702397352 450096325 197687343 504480497 387683595 396284583 302819891 23514283 157445278 852188170 178651604 994396355 615074253 157646848 711521894 673452969 304015582 787382663 326447444 897888615 183973807 841737077 671747453 752830639 188175818 516086683 544531332 831048341 68680497 397791376 707163034 550516205 68902305 775223395 719302776 689463386 89673033 257795661 199386339 393502295 659130786 371676633 460822401 308325207 887105672 678791642 302078388 713478362 730830675 660547489 818245938 133241912 664460406 277032838 763118859 944906803 953429478 775457234 153961017 917220054 846740095 804049677 475294340 494939791 164063101 433473009 846401770 92105811 749099265 569014623 177382228 521594216 555354924 40055743 262057852 817587631 488148126 957807193 941707210 740221547 324263138 10146760 517203765 283833642 747009151 848211935 566483582 698306253 774763731 562437601 603199359 548342053 111156329 581806961 192735171 42454141 596998177 340157186 878593859 135738737 29822588 192948225 454499037 641488999 867120377 315583378 78554692 640743055 627340527 70359891 328962958 271850192 927614275 184524987 289956466 530656798 646630415 128378295 33583807 504547090 904983175 698160197 314922566 733574854 153882646 401183179 148535659 149065781 131668345 181211019 611068299 834331420 558603824 114910417 410838976 810988350 439543824 193931688 615211610 755245756 828820240 239521785 980532905 154615555 751266858 718620251 303810221 267258967 251270586 916015295 326463616 626928386 312099916 854154401 478488243 369105721 330483370 201353202 37095407 344756350 8021375 269954581 413298879 433642875 388369382 553421342 980161108 499757827 821669329 421338399 510802319 108483196 729719472 116838088 280345132 53729634 913552829 422612191 998771992 953661953 907050215 221958182 354089241 552873997 486949780 193721617 148318890 353324706 925988644 646640631 71178290 35984728 558518821 119531055 759729579 185643204 466790959 411906519 365541011 703436067 859681719 490966262 704037128 131703001 489370252 834176261 644341044 364371113 342787707 556734539 739657575 587752070 21169545 52770893 377254449 749417784 597796146 269472893 602900878 13830350 901416299 239372822 512347831 465369266 810350684 604497335 106565938 840583892 114779213 757391538 286266909 36529766 397392656 493855619 665220774 434456774 368865480 260942141 530669053 663830186 975812282 725268299 906134347 606607026 957290741 123783388 304474112 83438934 205350976 883315558 984497605 931289565 148854265 638825933 548084910 9102293 661941409 630044976 121906465 237298762 497034380 39361837 21042773 748278889 218828531 939222028 248394481 125397257 501699869 29773179 416278102 528368107 987798098 407785802 163066819 683563009 509499398 932203769 768785089 541137120 624187886 384315224 500309466 239003020 174250519 287387975 234029553 951016029 418447371 936364741 648063041 579942940 835328401 238943032 789038974 204542697 150815569 505624194 869525895 756636557 676907280 735491598 438088384 934752473 498218678 601744842 917417694 941984800 223174914 288117274 437406220 561738132 392320276 172046426 428951382 924882659 578817311 427682373 946807233 785230060 465144616 416145687 662510200 641470525 458602222 509324793 497708951 260942432 881183434 274539654 798345527 710756885 542151503 954153281 308236288 194318612 484469793 478487370 411546781 129690792 146134175 603893523 211194251 747661553 172557983 148734918 493662859 102454992 427341317 288064800 530329539 303326605 587744591 844521415 758210318 192300048 308298551 92297882 569028713 45519922 23148224 503848156 183578155 599348145 922087019 924787515 740383467 778311350 128801315 242536354 810247911 225409783 808933127 22029302 442293584 109793326 654042157 332570662 404215710 289007948 503287592 72154389 571121192 993442563 231985973 538566466 668950711 91347345 163943495 352335246 597570080 799699257 61465875 145231757 73126577 748598139 59550493 127883413 758048309 483526849 565100210 964417845 797172737 284424241 730715439 220908690 828247750 958759441 613404202 605368227 803694928 673636684 239478348 497913622 546582584 74615222 431989380 591560623 393398555 123554360 929662042 202187307 579392859 696028388 541023574 458621851 300988690 195558225 524744240 141543938 726474660 928992073 69106356 968207003 934720257 439481227 748309282 729731900 752955951 459454387 369883339 806760751 223182090 892675756 49819308 80854838 124046629 273204776 183684365 667316654 360321776 426790998 406145757 443879589 287985568 111384959 295437748 464362299 359964354 615361730 515890357 189999331 855253969 141632025 491933297 659856336 93736512 250776137 813785364 726996738 575423006 179198407 254234196 425356434 114575274 734766021 846306198 580620012 422500227 624363983 982411461 241320942 977645044 302398984 90611764 406459742 971652321 362880335 568397830 687595336 854503512 143041078 656875182 635967596 124702743 148122364 243055991 918066059 259203470 379276947 792114424 346662029 529901247 595505287 234348747 466683099 659822854 707681541 111427770 953834056 939507066 110958097 760607736 593102540 748258599 519350297 939471024 748797665 859431931 721075572 769148944 213571608 752579898 394528094 322506181 304778436 53851276 707254622 645340054 921360367 693590110 457345801 464191377 208209169 400456543 724305839 99682790 944972287 580284417 778337853 553553096 195251559 828184643 870616944 852434659 50075506 568331712 59790428 562922659 353136 590741598 468258806 468023851 754503468 389383262 718612378 280610634 883457862 553236340 583927691 492529468 393960251 796834781 109426527 397853294 346532148 437990011 526023278 481410013 51941312 955941799 792350021 708589005 325629859 752923466 566787178 488760744 611871498 472215370 33944089 217473122 826573705 803163032 494192312 824619400 231055229 894011990 763934554 769160163 595368181 562402535 499798905 925661392 337896019 23697928 234433108 239039248 104682444 937306609 894825863 457073830 178080167 287778644 689683470 778230443 215854989 73722512 459694483 250689377 629624470 382381575 471567082 244410982 517890301 364413691 134524439 656302600 878239392 677270795 829238936 41274841 477465520 785582868 279854294 911917424 312958467 257634276 402625633 877809436 314545953 998607841 261236608 584424360 491065159 74165387 911697701 519091837 537589721 863937409 864479067 896459470 576655738 55572888 923892866 226870494 5065430 209252665 340617764 257665249 787776178 977521241 235234709 207261077 851827761 828455621 848654818 119675591 889177523 460739800 569101903 751183133 998825171 245146991 980803208 530238234 978656217 510365899 979714194 765705825 913355551 924525003 534409249 796562769 969448934 726674533 906513472 678854754 813457168 436004398 144831585 284698948 797921099 104661434 959694148 954431461 307549254 236362953 475519932 424583850 492366215 725432938 367206588 141764659 843909718 311934353 327086683 271205065 484257684 226221767 949558650 368224849 483331781 486656360 135757074 414596863 154776817 597963151 300192155 313265160 626156037 47882257 48880011 962576238 913223861 33211355 343687066 965340982 158345955 756157204 998996562 374835259 906714619 211846727 401709281 322007070 875192184 38816679 164045608 934612760 220542347 749763706 57869409 295020004 816190202 543003342 311439406 183348814 540401811 796020790 957055139 765322138 508292912 157876066 918001087 724476038 403615675 629137437 858871873 560988652 620873856 418548514 999171426 886616403 727251151 723548937 521004291 72989875 258627758 822072712 154735412 148657395 854528286 977305080 404079141 420635150 7682108 390152104 6894719 951701011 514639953 96904426 128868174 630482527 46482427 25548170 278421983 23042065 959104228 729329123 357492856 382419169 312216013 101940048 84438327 827499413 665298839 832360376 590145642 923036909 232232842 632267788 134942791 347816218 741714420 277551590 315437361 7133673 73920148 198702922 58409292 566636006 156056527 138439967 283230308 689916430 555165438 565286357 89722207 107285211 435384507 663620609 933284129 715856512 752728230 687156289 953358525 570029245 37461998 984685555 917840746 635714370 546101661 547602714 482519553 444101356 75697286 94490149 68892160 213791205 13879033 872452465 59732624 940635368 178164942 846880752 672972494 774756179 541038643 174300714 110569479 493331282 867140440 772991476 970443982 194008429 793163482 647730064 195661789 363110716 597146838 433910841 115900582 680628375 337013098 761889755 786519003 680681580 927383787 914995163 24486881 962282525 495307990 947913216 334750535 761290135 856764405 692880016 695481305 603946667 185457662 335463678 588137070 539807046 17428124 158269701 207420405 649907396 62240618 134896040 566362737 20295003 168774965 301210743 50416668 955013837 920985614 371621748 392400051 407311660 40684104 199169969 845834096 420510368 125785709 660144355 341462211 715058287 145895152 916894451 835349422 179051650 46554552 93879396 449397962 41059077 439031972 907535321 869694337 33499927 83352346 212359413 207187983 772576549 697309279 473512162 829231603 758460393 515751670 952236744 255152085 529344215 626960135 36779054 246270633 732570837 685037345 746794472 749740000 67124881 4980897 463531387 915534332 590270168 26376958 327733676 588286481 624116389 319214674 257759328 854263755 163934699 707716809 322424112 951561598 783600306 918799994 423183050 577394946 368273740 385483835 190287909 689662726 32268039 63510332 950088290 605975167 816100042 611316812 845541131 587329465 617378341 202810012 257732701 87555850 217794605 484948371 661665861 302611627 746294952 783620288 604940398 544745274 859339365 814988699 471731538 293777458 480878555 361464626 503517794 515064018 309318805 814088547 859339422 743935194 526685300 782389255 560647109 972173769 581235451 331415 878661603 973824833 620172442 522029562 898194779 334894400 936569043 763355837 372045321 341136452 864593945 870778710 750981326 563976235 692383923 529302105 83478174 717202704 274207982 451039881 714400526 776056871 446893473 863139246 6005037 431251842 808410663 583522671 583172279 225948538 752899086 871961767 449227692 832117642 287921679 405151431 614883859 231640790 11872117 556377471 74862977 751590047 395332494 128201921 134275820 381421509 904199211 3213405 925045137 7203309 612626929 28184986 93361303 129513348 395149937 909682027 861618249 673657734 980491488 534592956 343819924 724646279 718706937 933096665 605080999 564830132 732423780 567444192 35708627 878744182 765876880 4458320 17527247 721614641 176886423 117340412 636268394 255878985 455555512 750415683 370504758 214567235 439210735 649747799 108420916 673710778 129748756 124135594 290898067 383798665 763384274 970936971 94509156 375925705 109031769 491961215 127134493 496082503 917963077 117433684 440549203 385419173 434457364 648893644 539362378 81458083 232365086 800767271 666557519 168480997 458206929 661315681 903666211 887217975 673528500 699145878 409502363 527620084 959729407 568174349 905592569 654741779 889725933 440177060 622048910 56869964 40901599 951967247 475974190 476566764 287086351 670262351 411873060 759753672 675207384 567850094 113338545 126859393 473794226 46317342 790811411 622217521 517902553 247531086 832466984 788805896 423561143 264063190 505663 305676758 820819388 164140306 694202832 8176876 507424993 467104686 297936810 409155057 847573285 463237593 268799455 128972821 808228319 236831544 20593301 852017118 913613323 399995532 665740899 197674640 615686424 912810421 83194727 531522608 604043335 956800309 619705309 625350915 267592622 527800205 380586736 369878565 805101314 656524236 297610534 547012086 515900470 755422748 786880763 865423413 515296865 488107725 412802842 88226355 650371477 562279757 570314612 804429507 97861643 400092618 306641032 597551607 430481965 997434650 169720250 951531424 526390962 504986184 18206507 485360768 17799205 514302301 119524109 515640698 473989718 688621836 288915875 107237486 120126806 11688241 355798636 162148021 704503450 691834278 507945558 210784402 983339353 539132874 304031374 778309633 913282889 804682575 549002612 393416521 347659968 85136015 319261805 967568552 484674887 883210976 962890400 398938010 155786507 403567271 660159332 868236121 335611316 283567698 563874305 259520838 876739733 173038000 184378047 115714726 36437985 726403711 390310910 708676253 292186377 355715530 112171305 617430107 650320158 409918185 135653889 953608121 487248083 964410211 517973155 582824430 357295777 530974488 737286487 715862425 576152922 660056158 842199588 945164004 734856699 475015003 741247929 260407389 860695826 706069480 784243833 458661758 75690788 456357743 720332453 168390987 574072306 491242512 902642701 697762318 921977339 911540677 728147318 323400526 235221907 88714896 643283038 442530006 607841812 231253101 692881848 110567255 365999195 242624650 910730886 88833704 125418215 311468900 263441472 115122273 922509155 813146638 22986026 852959007 107637941 230052445 948787646 70041203 715388794 524131552 213069338 205847467 910881940 136564410 959095150 996363659 250540557 917267376 13085803 435184543 65804307 437362723 317025533 544497301 353058022 281757368 996603895 580062064 951834275 251057999 532242621 667869859 716336909 360066984 482979856 184799848 998838540 580896418 583920085 781041914 296871083 355816132 100759391 127561948 637556449 924038583 737742626 841698350 408598442 179984771 62123199 409797172 739259831 1092455 107402970 511017795 120494180 371695640 710730682 382847790 272926438 851048008 481580413 916724924 463050557 737350134 811212279 66785730 954564823 405813862 150161736 931687468 438791740 780736685 881762378 325905015 933365227 370351916 85245357 458382262 106865719 959767317 775239396 618851661 131276866 929055479 495131317 669882150 450087618 527836388 501197324 389026410 331672257 613720108 924563714 487670749 968785762 864464412 687128428 279662712 520296024 139369660 569293959 99412123 909042480 635336083 886560668 936482803 205012705 128514123 998675835 606125036 718644731 809471869 285271551 670644814 644880184 493536903 123897047 896420378 660175197 815902002 282872361 382732237 895792801 550778846 446264618 154500685 511566442 772765866 896484786 123195219 279414605 148666211 330020343 207480090 972742613 978777761 528720629 825354649 328744551 195024671 899266259 353068739 653057015 285486318 586463912 339410658 481154578 692330089 963073650 86246433 610929352 99989144 199244712 781579765 731823490 915358299 456007979 768953560 226015292 452831664 87304833 343965908 412400229 864051725 39339981 635425087 730338043 48892 239273458 738718132 17272896 979354242 137693150 423290816 334004499 143569544 537461065 384058017 458069326 124148320 650959702 783587995 122389858 28471076 794900107 497598009 35838979 55333703 642485010 897499002 664667644 627766963 324025172 919691601 565599231 940997008 91372700 59742082 918131142 962010418 200893037 573750818 924028326 243599151 825364735 728243677 502669982 225570738 112953114 227518823 599588246 584021978 630954955 351343233 976598736 885612524 185649524 132011366 662372937 632976383 812984687 726395991 769829732 850770450 80601337 768943129 816325767 276821203 460850656 730253566 396328497 973722067 944754674 671566506 650949433 161212400 798828578 851813000 165349479 274027273 915562504 17136512 36784491 806059460 300534514 470578751 146003773 777954421 52480923 502769419 860183768 884821838 70909747 801737448 672438422 708707534 670537303 7863374 753450348 520347675 300045826 903605540 584881631 966510571 549893039 286823996 453580351 615732903 920533480 252059293 910552491 721117729 465070581 913892093 534874541 103000190 842364721 795418490 819650376 332760792 11844107 590991509 192971130 446970233 57421734 658490791 747680625 143368061 178372352 830009976 546141021 509603516 439119370 911292129 697561328 343786020 563590603 858611745 600174048 398660362 296126279 536294609 113853151 935518370 613040410 158756212 20514875 772945240 476787973 873829264 176268200 258117447 186271347 128330690 197455048 579577162 431865159 893851121 522859774 517238208 279388350 885885235 311775219 147122285 976484093 130486763 206472893 512622937 27680007 598952209 40270023 424512422 431867193 939298754 407602252 775140198 391473677 664766372 89181486 840136081 978888033 525809537 685373278 217193472 816296980 586902964 443885597 382058598 747991117 432918272 693915266 40167170 77922626 525833635 816104053 488732626 419888270 245657551 386984376 633640045 158953710 96021444 697772003 663569996 4000548 38412166 994492425 910588867 753724573 859434704 734752635 276981047 232597482 58131382 322811506 117623868 30554971 65037206 150805638 8204843 779500239 508227852 488171964 769275560 604404936 567484317 577406964 39373096 649470715 929479588 666416219 50998547 758068121 702619197 738164208 502589770 904169691 805703393 799770494 581937897 531306789 862521723 121114059 602870991 506228121 394884896 603145237 511582797 92479230 301990614 88615625 512526743 643517406 675429049 732617792 973520667 838920549 488165159 744942488 836058948 959455278 193174084 258498927 459641080 235308081 673203459 273952813 511924514 488338125 647697130 925482536 299453664 770115236 597206487 877272682 628881387 707958425 36054113 23168246 375266694 933357445 535113143 46367407 25356047 902773796 954497459 696445410 502041887 935195670 108927290 825297752 917384494 97766669 217856277 836310301 191413806 533188258 106803482 78662819 871598651 491999881 146941325 655934857 850031439 913641164 880354641 144133452 168536972 80385522 125803476 686819580 769112286 490223573 835523 226288204 921729389 618836733 236811149 765103026 165677049 108260166 69226260 941337521 103409017 416937829 758066089 90694680 81352598 759933766 122758007 580980409 473012695 733960271 836505431 615215733 290597117 396389930 676693223 86516098 890893733 775307772 157875197 631144246 605644839 591457517 950842045 87716704 305731940 240850386 910869909 104353917 75207169 775606294 939996189 813405726 291659643 412741521 166033439 116118886 978264374 73367903 944497095 61740733 50654210 283906996 668267426 905343905 158127252 136246266 279203443 576972656 525928982 493787049 32329253 287825165 614135710 780816739 849923155 696518313 49531025 67597047 578421657 321863721 38486468 483221142 985852261 771635917 202951426 168197276 532490916 118133543 820505503 715494824 819946805 182153242 309228048 469386853 152764418 751495665 181563041 312943564 437223224 709336698 810289916 478903127 480826547 857160768 471928888 898511688 804958551 197732367 214678322 150783232 951784743 264647164 765355720 293618078 180029255 261164340 351355268 266798966 949471231 719025200 875023331 911628756 639795455 517805700 200189242 445134403 885795959 422324334 201065354 539123242 303633795 509248804 685189041 902869938 722854835 540602406 535038536 63450845 95564817 422498988 135853258 906913041 464240642 154524514 727618485 226844308 954934854 471952010 936079112 532580282 135679332 341911573 727043923 219423263 326372543 75146308 249537302 910562770 945548788 370288920 443247263 519395859 696946838 968336588 112901749 943143656 212186214 292707389 422953905 562771247 709332243 97653151 830571328 481920003 967705784 360566877 520525798 725115237 9948113 3153361 693688806 89089263 986729314 608485664 480866633 196382545 436691079 376135720 213319444 827318644 949628036 918714548 706155933 990088483 19036870 52697730 20211145 835157782 58304833 256471284 46045834 195341504 399245065 699324103 314300683 879150218 67881399 81055844 928988925 239680425 321517237 355533358 105368649 573413717 65679499 356270767 316019140 236948000 557203857 420893669 516443457 675727570 599073367 833602589 137187931 616583863 807799299 530798869 513531385 925960156 974743931 243001183 316130804 906082521 962977210 433189760 747116363 997623032 884007948 923280975 204188161 614959184 780340979 105196031 982828015 676041748 322916808 358491088 67370477 888642900 687894069 307652895 54929973 856934875 948540047 863662934 768925968 902358348 879236663 592078977 672347175 434437016 433185586 133990068 191113319 47250839 289200786 83970910 418317749 256732008 76418475 326336082 862678616 185462051 277514512 552765222 287914286 321256012 539375044 899007270 136528175 405396418 229195605 614543660 385186273 650287551 70862391 725775496 498346775 938045942 565525136 460593188 636327372 848293360 482277124 668524703 567927988 348800028 295133268 47025922 316833246 212719102 955993515 359871461 699689298 368338028 894421804 246722008 799897679 410534431 685240826 512886394 76910005 692515082 545845799 298013085 981868019 744082192 543181373 726102181 936613404 549205269 797116797 449839615 404960620 75733019 897495163 966435961 337701924 524624258 415752716 691900395 544669319 465312797 316943285 937443202 185730178 735489154 978627090 281928594 773927164 330175537 628878380 479939144 25535559 690936005 190282195 682533606 345774313 917006240 337648043 483409164 994737485 385025487 794740879 651618088 320020856 795323612 599650447 759125966 988803133 505138415 59662113 6792830 803635177 821263402 852408213 564105815 342410811 767592054 49666004 840595946 702116782 401154468 300022689 667144089 676211335 673125990 830803620 156620673 766424590 928564350 634308309 787964664 165255445 831120617 187418903 744516412 954673823 8385542 541451397 948966105 615368204 242859760 493018695 769077638 827914547 196702842 884803870 594212963 341394545 857059775 645661885 97124089 62399719 574604222 783987733 798425144 711239174 441472232 743110908 28572015 397425486 63175094 62642587 641829076 596489826 993359504 31318347 261592750 283366874 194226533 646485763 246178022 468039022 349765996 27866053 333173306 36643252 12896982 621210056 464292168 992103251 272179808 21399857 395799087 535211967 892121900 537111061 245814198 124643816 956416165 325056903 102921897 345539290 241566520 901569689 754529015 180980520 145028550 58345025 485492571 934623125 840197904 21658961 703076524 715585807 602848034 469733500 557334058 279972792 586015082 302190368 356372180 822372081 320620948 739068409 701411143 224754561 478062114 216769686 562749405 960267361 561310309 547297729 791435836 37648977 954080855 154183485 345171991 38233263 860317075 326738199 141369025 452017320 22029244 160989299 622422289 10811094 753218325 944270691 622699656 27484346 60640061 687040478 555109367 359415802 197752718 374611134 399622275 92648697 106219823 804877940 968001107 675974268 89279000 863364241 20879774 627769768 455499611 656714198 323667180 486011839 358811274 269727088 208054812 374332334 310363371 805999134 122011573 62595989 287845527 321176293 752928142 610761779 315092635 688017011 710096797 462763799 632795050 567962408 130504569 638952002 404155695 150057497 672311536 38562157 566003484 202427722 756800262 950591986 181837376 404333099 937110066 761792583 229375721 732652867 801789090 35003024 648847400 810247615 218113671 434057215 590432226 805880764 287596775 114979760 634527353 599795834 621439497 924887083 923936375 898060153 138897132 882677971 196335525 998806401 832581859 422886524 597544794 907451250 962515750 392478269 853177465 426192141 379619861 83411269 951502319 744550449 982697063 621657890 791555188 275528587 36493034 286459552 555924780 462887899 797857113 872884362 648528315 366430594 557191329 808036864 688384293 602678531 417751554 238075043 365070049 184326923 918634891 910378718 514143087 171924369 6869383 979914553 205015480 85039910 976666535 820971623 511638283 762352380 128978202 792922614 746461094 147808746 901820974 196850112 944404602 442884981 613724764 11664213 81526891 994440073 418981165 936497735 132411013 116426326 535532215 86601174 23247826 524887572 291159718 630927400 592584959 35533574 271735605 374535651 59199366 848668155 342486348 349155564 749488296 476833343 729423097 488129111 869900542 352522855 207306627 317203998 445916700 79023697 581220997 929738062 328168445 627370420 265212318 467054880 42905597 524610025 209943686 450820338 37721908 186431702 368597379 558510097 356597156 338222085 126115217 202027846 908206330 894785058 430648210 851498878 465497540 511216640 445469880 555826321 142284395 51929316 195469292 708442014 835852671 364610354 858537974 928439050 112082097 349096702 134149043 111437764 569961484 252673163 526241502 375278732 750323309 846190227 394490560 855722621 911600816 735706260 505466808 625395335 657240369 538803769 121688766 642622706 724404426 538079186 144752521 963442561 470913849 17822263 954955357 257629084 738926149 187739091 419757984 867260736 413290663 481560252 636674811 847183026 815819442 411718708 298697323 852477753 24977851 247859523 691052128 71334880 931054511 816245775 948741878 881748524 16520304 707710267 161979119 467738705 347987705 564938467 211917474 912769384 934251400 739281894 692876233 979684594 7188785 316692910 429053524 470032384 62875867 876370097 656793527 189063626 871788105 424137612 669682836 723587312 770918907 655370613 546694529 420190267 342804128 267644529 104510505 959254182 776175475 435136254 903571019 478718110 929769112 56802205 953423664 888015019 690709432 816491080 83408064 412342944 349185651 444956505 810308625 361789248 274266487 442740518 908120254 768533117 515170846 883458233 518130724 536130024 440331507 538653563 286916186 742596163 326397515 854080130 423388516 584203369 773116443 593778195 159102927 80295827 581656063 87103882 921955512 402677265 870686598 658741320 659429675 820974194 337905937 301581219 685333874 654817201 372338682 274731562 95147293 15186841 901023383 929537665 446709880 230451200 896038552 980348640 104359745 143859931 874358638 690495516 887257670 41693955 410117501 827975898 57031400 817280211 347360368 524784335 432014216 533685674 414409924 853245116 341659421 226644751 590885311 525051978 757230045 326076431 77038304 60318846 951589255 603889120 987970130 760798248 357192362 784795482 849185943 381408152 157482116 587501467 378834578 366180343 46487570 126720119 324666773 562318524 852797099 557560772 595101242 504122086 304799443 248097796 341071394 565022802 184313617 684880818 208395822 502367720 12391446 310182321 973124975 156895140 528966266 318860493 454647744 20162415 927087056 868736755 16603365 103065938 774228011 334661639 615559661 838614390 161673059 439718580 592470159 635538670 33775147 93421579 831474445 18937322 846059436 61150511 463186422 789976135 783652457 177643870 251209370 41746770 24476117 193720551 450553891 229078592 689318973 181840299 468584484 176421996 169805910 37763559 903578512 442636110 104178778 725887661 601330824 403413010 598985965 710700948 223999922 171997864 541477646 832761327 424016614 736725795 526005237 784773166 796149470 133091170 460826570 122328090 959477271 882819781 693278574 953132603 623140056 92711733 279174145 595336467 690584625 988060897 297418040 528513888 388047473 366382312 124304854 707082058 245599171 996946094 813381075 60058588 772592574 587593138 116342675 927022865 726833780 532384075 714941233 279523638 402148265 302286699 952786734 807331814 99928251 82244419 831939012 327606323 351631166 843196761 708013363 214060325 639995535 383752164 487265379 227791979 215755076 696907086 101975869 291374639 216307731 659537265 218558850 364874837 993544846 155272488 407103394 861325348 517007224 873274084 707696346 42792026 854269654 974203990 840593188 243530581 324458916 547533566 848203970 483819534 12618655 735320617 466840863 523746448 416000384 920932891 148511411 588544734 644417462 266265453 629109779 312116030 968858109 697989906 988642491 806064974 751461308 650367887 618667099 637206847 346167206 701141085 917650567 264103086 342630688 927860376 205476273 152487084 962472830 20190683 401637930 342791643 813335917 528300389 537812461 13038669 210726885 198780452 58982498 911548398 803404117 933339254 40060355 876338198 839772591 215860167 416170526 942551598 367468004 593378054 807557704 951239061 214085451 373387089 4664518 838491953 796072101 372396937 874747851 47632657 210396987 486354287 747979926 89904249 616204663 252844921 748048748 737739107 984637725 980607333 76288870 605043052 410534994 239051333 138762141 599725416 611646748 445604197 376432535 905242016 45153265 69753458 454072327 264047893 277670214 631314683 395246342 879350211 529101910 928947450 180771035 84929292 284226514 413522068 163091347 774880275 794073639 324584437 412440394 368093631 439570953 535136190 674061223 489655715 643933588 869351255 622497007 286874407 4197106 304744972 257420094 50496608 42038520 90047053 890785067 238223559 113127251 43203242 316109981 832415938 878863262 824645155 243570592 874630804 673384409 601559312 70206244 209587134 208459397 775225793 631207856 924182009 330071039 242038401 164188733 957351872 209561141 26110425 602095006 426637125 308959243 315528173 628359003 958216039 935378461 734614650 378934169 947292331 930395983 887014855 312338277 677457929 653613862 10424336 171816963 711658885 829012376 534543569 883708893 84067525 790348418 8098407 18420077 506397087 773572141 521446398 731208225 679518913 751687126 677459423 592230092 762209552 843624172 203707398 155140523 309848907 445005362 687524499 78827772 872169183 145508266 113331076 878357082 669613916 485139095 938271435 16639818 513574597 853906728 81327307 29899891 265744684 625453654 466882435 143848721 494076838 159729683 757817913 248814191 263321669 874537368 331451398 385932719 607092490 705203244 189089490 981782309 193149106 530173100 643682387 46841813 459056020 331284685 40421848 901421764 237887971 887981173 394653359 712894128 355674932 288658636 96782356 502636660 221207267 824723907 988969254 267259189 20066279 403548280 278134056 698607614 876953906 194475495 603500866 776058151 408019638 103001193 84528453 444925521 326373659 551982444 231931052 228650318 502000612 351522259 344408700 322343368 597591266 896282344 670331073 153764509 149620139 869946090 256554398 683628816 675200793 449862585 82948623 999955426 574949751 881314376 463400820 979671387 108062600 75824319 970094200 610285765 985736593 676318832 860391971 718694878 163932926 111792074 832783876 25159910 764613800 130463854 971529229 154797497 120998228 205000560 68607920 180273647 647965716 824842880 903534269 910681338 500613524 645365745 359989545 915985177 834406330 44959871 544525959 378640326 709471774 124653262 614403586 30086255 46011934 482295782 652789963 462327637 615837040 505252706 403251772 89395340 314168328 734510640 202055566 430171341 596987444 371889154 893626659 51128439 567521171 110782892 816671978 728070699 929642814 854148714 419734889 875183347 303477730 491591150 899997839 680301964 440262609 532095204 275577104 16433116 21057841 105065045 759227333 151785306 605870527 207903907 234588653 701265080 360872647 817520228 107650316 973321385 1649355 354509121 641022869 216466410 586812818 718032737 910990022 172841718 180267597 604920963 657034910 909158247 280463853 486240019 50800022 163158507 379425403 425755705 467322800 9388187 323853897 391827271 478515494 143154755 302530403 646599651 604600315 784101748 641247700 46235674 89411184 978170626 766207798 301149316 762395124 134107465 260263342 930186043 523101729 52307648 644237153 444043735 82903015 54271088 42545268 675712690 971425789 86780140 249809752 311646495 119394605 429756895 600093849 183195390 412764038 557515285 675160273 366656750 722846284 526984125 566803045 722088426 432615444 168668920 495256097 867713592 684744349 120891792 673266740 265853613 120366331 735120050 401028718 95530759 293028789 189845798 623030839 685181506 540852803 299502492 846674750 349064764 158208860 811949627 392313934 161270057 99748499 705956584 510610786 273238775 297487965 537510125 317020167 920520023 191865271 802239899 700451352 342497724 836996178 273511136 731926448 260556633 308840827 349360263 783894284 209330987 717748961 178884206 75580215 745783593 96570205 960747690 216313288 764857433 580360642 552808564 245323747 565724699 626623747 569046637 342774687 796671423 997341379 866791818 267687276 783449872 418912617 280765821 324906498 358368399 714309881 524270267 382478954 141776274 813677589 461577926 935506161 559412703 689337051 198315433 142279681 30055580 747129653 822308068 954537245 415060523 441284892 591427533 612008274 696961472 779038718 791659805 874786306 836839509 682197254 310993318 675821177 549542659 765929470 719967080 913125368 758713356 761010711 171327717 396992019 998204357 236990917 31373645 85463034 66256607 934996039 506418430 221225109 857204665 110596585 474007745 292979425 79715398 6105589 670927651 778055722 223503703 15267569 868335456 660603566 669965106 322994871 756711241 995264445 248876937 902091026 126255494 962147591 386913422 592154494 223771786 285702904 403358438 998163533 539017838 713823 198542920 600047840 98378422 827072325 601936251 351256867 941509645 534095250 395549896 762933575 313355449 925648040 460771372 298441315 727981815 207508467 446047156 924877794 894978052 835362981 621335602 354924856 247628311 361363680 106987865 568930381 152935689 568898169 763503396 370697090 889393274 603548634 74976991 76758526 893293622 642999135 959953231 282673816 492225830 829745227 242606284 150479037 911437825 781757758 778424138 259701000 468538848 627003043 472967907 988478971 306861632 669728793 394269163 112627144 639713097 918657270 426682641 493216949 934299496 431732706 956109560 168096113 50419644 910515867 786965960 819862432 198130056 33559414 915259604 733629799 35884038 784256122 916978869 377206672 639429488 153736734 376926832 531005326 40237171 669389968 115742014 340222058 540673226 96836753 105750860 699024855 452272979 53585336 173093010 990254417 377792531 172322705 392356721 134561790 447545315 759322716 453145524 37754475 367458842 911410690 849589916 514231685 121675006 170724515 205481035 213210080 739097519 640086268 351976129 865833590 503831950 820259800 828055932 34346198 866699236 381983756 842813566 89696454 534459793 471858807 943707230 715200296 540507392 499798155 804056629 193647949 425998735 5122728 605664543 778380829 98772417 383571279 704049254 136065337 557813446 808602686 529611151 677091542 699534026 437121570 603639855 339883971 202581591 913235074 404467864 685713310 94385263 839949570 60210131 637023950 521372671 435535882 14849457 393391135 248871776 69846422 370591674 251022767 630288867 304629667 960410378 895661147 288455901 424044634 686488461 873634829 612850658 695952934 14842607 304273059 178305777 428123544 22338396 97273916 869844520 565845347 544809962 41010814 587295714 5784263 921745857 439279506 154393213 678191217 264555229 843785008 427577748 552826521 778522428 930051288 794991699 833153076 20409473 102048211 554813797 492180116 108226159 81782571 983604201 403249487 998709213 977360651 156331204 339300604 604262337 413969074 396030162 823869308 680735464 693429229 890793994 332369205 333715064 840750795 515870979 459750690 139653741 165917193 807685415 406216362 236149628 568523507 648043512 110912082 841110903 314836395 296431980 566255054 104848128 387137704 685928649 738778390 915180014 909543142 883356815 641556013 573049617 833245927 304370576 689342677 974106639 618992090 432041342 145707642 732980376 274987940 602451259 545135102 241217335 103819459 835673278 627911493 779150834 646650763 957534713 159784496 70457225 397658811 661875857 201116299 637146317 505904252 704938794 271323053 579266886 468611986 187340176 300737212 48794138 543478378 848393066 788798556 329039892 130090134 171056988 340607843 782470496 84691028 815458081 335261328 325762960 630566761 34466 34833070 356170909 84119698 921540637 782612669 863955386 61784797 211137794 3422367 915906055 644297074 413369577 177100004 35133639 518069691 877158072 639236889 521821931 724294301 768570428 249339983 777512757 245094244 43163540 211892281 968783692 108281864 969739031 479380929 985043761 770567365 229639848 652594998 657716496 475677673 729073155 531682215 789157044 565269206 145913079 211960904 194019923 72991463 19248989 759590855 544453613 341706730 714178440 140760211 963239519 761918288 648183019 250388560 649524362 147052618 835576395 249880989 321498139 165356414 385694255 770327753 961850987 630430133 488538964 166128813 69061580 307063480 209625855 738012689 299712936 939426380 95224591 929491751 957647626 252949475 683643390 565635921 959864295 43195095 451635887 745473073 789822188 824008771 704860125 828779356 28484997 665223473 949949775 943035055 879642803 171171491 183181424 920364829 921857589 269874426 981230674 209577129 555032975 784197392 720676309 280679781 451267644 341868902 395143030 420213528 776897101 791673535 638254951 873552237 806292438 238110204 478023585 257813972 280909907 23595382 646124515 743224326 956713923 848479020 492848644 311897578 719559179 533290612 652475561 761518244 720288605 368222804 819443823 342425799 145723863 369314102 410475071 836550580 235922906 967816519 550445234 842976142 758646081 90511339 637682730 459947747 702001323 433279835 665251499 812536453 190900968 831765252 998004086 677989573 263696125 818807574 920387487 91928571 547644394 196180971 166925959 186744137 523050093 898190258 484709861 66112332 964527093 170591681 46167669 58431832 435893772 635828231 570448159 613168993 152720605 874102470 95822205 41176818 717119721 168346869 12264606 572629329 660134072 692338075 489536578 501775155 496915279 498210202 386281571 852281908 468655597 236127946 63989861 888030102 937242508 424681541 569306398 980516220 910816125 782374937 66322618 785372378 620178976 717413737 232056900 839900687 423666829 105510144 768729996 389212111 184502200 1484256 65413687 132380587 559038274 706724777 440960396 107234321 499575696 199966200 602513338 631693592 796338471 149392507 604973668 547199073 391215685 986290002 430616055 827169047 132801259 711438949 636780723 874201146 121643103 574012580 649243361 381013414 261959000 612525689 265587430 437078805 449613632 730563142 550404670 560815950 257063138 201025196 340119792 97401919 894810121 609422918 13587910 691081727 484705967 946794458 203203372 403229673 751772223 137910635 333018896 176831918 409524236 530514585 486818409 321265525 221099967 85488105 844195179 147332460 512677367 389325877 550669755 9879120 242828201 551269209 612326310 918412408 23383569 706006253 740860016 515591495 466872193 531783376 111815774 553230865 191220015 216541283 42026659 493166266 497339450 701615366 735948737 737875545 9810461 721887131 891631235 626046221 416394612 480864327 552333903 440329434 627189720 160111499 277648916 697808988 307172176 498160856 4690328 587357378 585622483 528558022 177279172 218255633 926916202 429877556 670418845 481761648 40213364 597300887 94245240 347750482 953869522 870283767 567364332 981134462 127796217 133677635 607445194 788487864 696075319 458827755 208309947 216703857 427523417 982310204 413977235 493755889 81659447 176734975 195472084 514828175 612977904 251458318 908356470 14844839 772385647 958599489 358291494 86486122 281216050 726269970 803194414 366774773 280945900 952442279 760217611 627536512 807828567 969855574 972303215 185078369 577827033 175019843 775726277 624182107 815413309 32051630 106263303 82523690 516934833 502786944 973238279 345941235 733925096 753719378 202410018 967798515 171988272 19775352 981984124 69999152 493215704 253933148 671221457 479821191 418503073 195102065 446918425 337847626 334862681 948518752 195853622 532547344 944404547 493602602 615445095 376930753 828566329 935305533 590858032 858361810 696694776 11697416 927887539 899971417 920972734 559720862 949791507 122273184 76964302 327023216 128383361 400009285 359196173 328422154 931114719 500935171 557497475 538245394 758120887 778841674 197344577 766201293 867209796 727618672 673543429 304731929 856318747 806177222 81408653 64370168 803815966 256925533 910320138 434126538 878597598 117218880 607822286 894971551 696437407 459092966 690594538 301310054 57896978 998352255 437068588 182228345 665679701 136490409 887891655 185429884 348997646 420781265 767565177 85208272 683512007 801612556 811019813 552483019 721449994 6142190 461413771 238363920 392068980 570222748 869534961 926874096 137359115 648153057 140576012 604539592 995562742 175711663 490543507 284709705 556478126 885644301 561327776 818931906 384965979 884327874 118791477 95873319 338945607 635067719 653063215 724943903 891921743 765802942 282610309 474599531 470630066 245029623 128376510 153956269 596161002 434960768 644058948 900104968 98937189 109616023 119678059 406674396 958324592 851588087 143136534 86536222 162696280 980670353 678224776 750702545 521612981 24395196 639969865 724543322 744035488 790589232 634779671 707394517 408758934 980323001 901183660 633199188 498286848 552683560 216183835 6032216 964632954 237438043 693290516 735834032 182106665 378126234 308772507 623982493 913238173 747267648 165950266 144297968 967807581 777120806 613836210 959684768 87358312 364982822 244730530 568081797 22153559 955219243 996704339 896407130 196233614 436175109 469412465 652758614 233176901 999910607 775149028 524986972 223826103 495409108 224571032 662204322 490049426 776680396 471271731 625128875 33991044 999673635 675964929 217699122 242899926 838183366 404900120 377024469 990797420 328300564 988531928 910200120 903557619 410293475 702923434 783436568 662251943 696254804 789864010 946037493 414815365 652172507 341620556 770916658 497236221 266095329 656053603 565056875 299364339 392528615 374768050 682160173 297719614 261822768 422051485 772655021 738053894 246915965 263054359 264593420 726622257 571853235 380891283 527431421 961484642 941680287 497476394 273811675 579562322 80437596 204511960 453877315 312237212 5807949 742822173 285536041 535606377 542878901 824503918 470117212 645715366 709524798 723964014 427242730 208959205 679820746 47790339 99064870 653352537 188387799 173559363 119917329 538326957 621552509 416145586 999035241 340308314 450848020 413370007 99484837 639603024 812218628 660158115 330538186 760452505 528226684 34086236 459706345 520242175 587939139 264490793 205970152 135454181 681704086 907449296 103774162 922262151 823117469 191144566 239591687 189171972 201391179 99041306 43305846 86101570 777349898 108455239 988660627 446393882 145942582 90658373 268829090 303862873 884777201 663641699 332574787 900124682 604496991 474824498 952451469 176827804 854308877 527213987 388169723 424475686 482645434 758818513 436497185 920101523 416554364 872581411 866089624 392535656 638696238 923700169 900185734 944998576 802286825 283149008 260118425 873529614 639545696 591266937 575140885 61297040 249997658 650319858 766388417 261415072 13830873 128953424 635924376 827780384 27353362 500999644 197064386 920248058 436169492 795127489 930451603 461771363 229219931 229552411 434329742 337468260 684916426 819960294 921013671 702252005 611267675 307415450 208277831 624667992 855275963 481311217 831685267 247515506 422776701 253929695 699502399 667005853 296176365 622099648 10104957 544252719 543317424 326588708 796105377 916487810 509477231 744938741 928956619 29354411 951322030 696984585 116796616 241168833 267308738 35097043 651682111 691747756 503614145 417827013 183550127 169372898 806885379 321798575 667859314 365763508 626009894 663546463 345941512 14275880 261599757 623805606 422983408 460962113 265302944 338204541 981018783 306299033 439424696 68687775 852246199 684599478 517626352 28455163 479667706 665227433 137588022 555961748 141187338 939766373 209101577 226261669 454156530 171634086 951122274 895658511 179944879 638532371 472876588 756232003 362659890 25113594 533663129 551850976 301161164 91492618 522903665 56135603 268848365 351344597 239341061 696838181 300953966 281875115 917429971 238313485 806662552 308088102 781574164 322399640 101739118 470325308 224802790 551367611 615307838 390980246 883799683 5247683 43123363 821171081 307656233 145798022 141476267 689585385 88266588 350364460 461536943 266191402 352651796 471795653 286063155 206226114 597484004 826073675 814510846 391864956 850768756 323496368 941108947 384879160 834058153 207208489 221964087 3265489 56244881 572119289 646378865 924125748 48530412 592967435 392507760 629268874 499784446 784537899 600577480 423547378 935023577 242511094 436917058 349701972 627868196 733709206 143751249 732599195 549303441 490884566 275543920 181251384 812284849 150619481 856962883 476429862 812719645 543283638 338546982 735119417 31603910 366461714 894958876 58481520 127903717 462596020 400142783 300061839 478669929 523828598 71274449 534306393 864103494 840042577 225200458 431348564 451755387 591943231 645974873 687538432 293505703 672024244 263924579 893124609 25580428 19710367 823668621 288817842 324616267 236541330 635194839 870401859 314739536 298945865 448286342 110443775 277122063 632454651 594989757 921443529 126621595 115068378 299148156 876049320 468395945 870372971 518693728 294811095 30407724 826587157 540017272 7457388 423748788 431116376 67655233 162317168 591525053 163964463 853012482 767610242 177895843 434870609 806048315 743806646 126562170 711934026 801415584 362783352 429299546 65969411 295118499 148472789 399535000 398478200 437166536 739158028 81834072 928144984 378029639 449851252 925849455 157748472 177967430 570898987 256454048 744929267 24431354 172229936 945685597 993380902 833204003 968849047 162425689 754966849 119289595 707057102 465717298 237799766 886545761 457765179 462560308 400619942 631693551 959433416 552693206 717179262 503209797 788396691 108628535 806489156 954914132 200766725 222140514 709796729 127484634 569794521 847010691 786553709 965787624 158922634 721435760 869588128 258468348 438117052 818084601 986004043 737194473 797722485 38421133 344107920 926612657 206537320 917020553 777812504 907892064 201190489 19316480 910362044 234003613 159479487 956571054 876310772 24268407 110063639 939895298 891442764 636314489 326895846 396844195 687916287 342778811 928275622 265282319 685564846 568616980 736322708 100919852 436703701 996384869 509775050 369291115 102153279 785207666 289974743 117047872 235162270 634010703 297471384 94559317 795177154 606428237 180582608 438273982 699953518 809364935 98079274 230944156 771097576 299287535 127691778 704182886 514198066 913374921 119169231 40294426 1521290 612027567 787560844 777534084 527761874 586456885 965761530 718591995 151933327 391122316 26130908 120240345 807492055 427197828 594381196 101697391 597183874 835702805 904575962 646472720 594756063 77493627 484014408 647479903 505190871 686303304 696824541 242484794 69290035 374525972 141310944 739515931 175255988 525845949 430276441 725239375 396161291 221052723 73453349 133612808 298360280 97150799 977923564 219154887 7750672 277428945 464567527 318339858 961455616 645234784 428547638 692343039 578505399 998683181 335811406 339503263 997083564 386349912 84932928 963755556 598635696 528955653 546948661 864969198 328378768 158697919 832291226 260162019 210665377 502640575 106544398 228781227 439533322 600576317 771603423 24621146 502617742 101625859 46638849 836274538 449327407 859804645 278623390 300838196 355596646 374184097 68407333 637433679 660304483 587148657 567986595 644914194 567209543 841493547 424897189 235701451 303357424 416741656 254642884 511734760 281370617 408977006 206648871 122250041 798632063 988023240 438359452 74025248 305278229 942915550 8869981 173944575 474193400 316138503 661004742 693117059 807193942 289226383 449506560 143266599 458650702 951543688 454876223 322517442 762388913 186654933 548731138 349281179 538096078 228746951 527143578 97490259 973978553 587572990 373235939 892896928 246922802 277826501 552558691 29811406 148120367 183118514 236105921 338245614 519291331 889966632 998684624 400491054 747442849 754588853 651094209 131572240 657333877 418996972 918237149 721253609 752130643 392277615 668168627 815642727 558981032 819645370 463774558 974636175 461734701 576301713 556945795 777931904 180281640 666705499 560482506 791908292 750237334 455209962 117298508 654375772 248744682 573066175 304778986 38149636 751216348 134490149 854180964 951315201 41036031 836402198 502374370 300040198 789454845 833236334 697944795 295336501 279023057 429650377 763525819 539720631 18250692 806794294 377086409 234533803 933121271 296448713 162269655 413342208 985281036 423498563 964228195 660267248 802148322 404153195 886891652 377282254 442344763 418951463 124062601 645431301 101311204 872546939 438453901 461179312 552294489 254787332 462978940 639947324 308489620 500944425 445164054 659717504 708985336 584327633 976558427 571066715 725283904 59290093 707248556 919192515 536952658 804003415 730493151 487670185 60429802 976879778 58305681 61113469 769708125 964456078 683281398 49700506 13746091 812250254 985347154 612727545 712533264 555393737 966951775 157228518 325844870 875801399 35622322 358557556 833040710 657897907 846419628 127877215 39244655 105021266 470198835 338387048 388030368 727519169 306189256 297989274 254188168 918276382 466378378 187520895 519017339 577125176 481038398 236720953 840427156 695426323 87131896 424478965 799246969 48363478 851235448 899176822 824566837 642378001 597049812 348174005 78370406 455296462 513658662 13125909 603051982 173364101 272959641 985990929 357919859 257172006 402541815 215783581 457816322 245193182 854346044 560819586 121464813 450966307 175834797 902177147 882255250 506419073 688930253 349015843 616432435 42086777 474238514 329143468 73694111 996876578 358359994 329746020 126208709 317777368 180060448 237961601 724830565 322573344 403144257 513661462 450647171 804966807 932284524 11845966 153990258 471873246 520455898 626264497 273539990 211159765 520912857 487069868 719190546 359530078 184116158 132577677 980507216 109524723 916940734 187660208 543688023 484699063 167010201 373742532 159495059 441103055 401936857 648389876 935557343 875405296 285174339 117758586 838452006 771382634 909696254 961131965 827872658 520241369 617876522 394395900 639140929 310561555 902433396 42581863 35465547 601349768 64482911 619074124 732513343 610728660 878062641 547036144 237039671 434654201 330757690 959106374 317803499 848996955 611418200 163322621 449654918 343456831 393298787 560716822 686524219 754412574 954708660 831713848 927049917 274538519 777699179 982976342 986136430 359824370 519235083 752617682 238073999 673116882 229086028 973988730 385650414 251232997 223124218 827229067 266668918 937692126 745551539 256791821 98515350 563799050 972736174 437612457 739144222 39604797 77174491 286542296 876923207 457772041 3519511 44110895 466991559 679867978 544430951 216691091 731105884 379624091 402308957 73481399 297239348 335555573 571216532 127255383 146849841 757558944 239321173 962890662 6608745 230839073 569622603 88750267 547419279 32267143 702094881 887784819 299457191 42634429 307177224 416546704 492575978 789891684 31775430 281484664 781143577 558059632 929285152 287797497 871729796 744099305 312822295 655826688 201998924 57821072 530700342 298060510 396977096 902802095 550082263 882142647 803909127 633693021 339301388 907409489 44836130 529872080 771905515 297466824 750767821 548716366 675914660 987375482 663064196 127704529 984775668 61698097 296085096 137984067 157626399 666642298 277240119 629917124 455099735 17399320 848861639 393519637 675998347 986462660 54461150 890200976 246706982 398340315 192315690 504211609 631681311 978516913 116282698 682685599 645450948 130523679 370294300 24135070 588008465 588811540 975580621 989338881 962518904 484584217 757334793 984187177 492123668 479702289 236572286 367687182 715947977 168932882 795752874 92202187 589473130 552487804 778691961 223340325 176609141 151928864 577080550 583756552 618532256 742021810 227410225 527662880 15832337 35451453 456647437 297122039 86827125 632259590 31008502 319176770 638063558 439480196 533284768 739072639 98729454 432752554 742514552 502200698 185463374 928546228 419647014 743433463 936343966 183606578 902409905 582236625 660413787 526323320 137319940 368439152 753993217 152119822 149318099 650688328 13000861 703409185 391468140 957033317 371620511 435000672 540070687 824782658 332768168 673929656 840553645 370891930 511803639 569714307 298284053 20423160 536490629 263314747 324730339 863193217 268247457 289659886 452538447 395422327 937270131 627752635 684547923 866623218 319133476 908294740 453281521 454897 780609728 599511691 674437131 514249350 831028975 252570793 628900124 709073193 307195269 674839326 597312230 645614305 295072902 343916356 942410689 737708578 80356904 532113683 735765990 791470802 578873039 630124976 717961915 141987036 821509602 408728688 922928168 903059761 952676917 432562590 99314310 417155916 815539622 207101467 832770522 672730448 511966489 649938605 309601205 509757497 825928783 53970632 526881609 642981210 556288505 899923558 522353304 740705632 284774699 859359626 407497684 271898641 408387924 639234945 896012514 646466252 962483232 67910138 867148937 228634142 358265320 28715887 914511174 989329533 348287887 446311274 76280567 642393557 202504397 913449253 748050192 39021962 411994897 539323007 576932861 798310093 179698729 249928891 916458369 771398760 629187374 103107731 199293726 185498639 796385176 792329766 529349474 940207358 295026868 153825960 156468967 199390949 945802011 436939665 439683548 954942984 911691044 288781561 281512118 118101397 670031872 392599668 400887961 177129108 944401334 175235592 885162652 320104292 714264597 740666213 670241689 534944716 948315088 763640636 216757214 478914490 571340319 124844313 182810496 963626751 204545163 267381309 31200016 762200584 7803266 98947934 588961399 719884339 850461443 920389055 65716998 929114748 16626600 119385376 482873336 254482926 510592457 600388913 366861531 787050043 266441110 693722880 31453137 551404130 578171109 170426424 572948238 534258401 172644139 29371045 908243197 618266741 552727565 696427110 826335653 529594465 276765122 950191961 225910462 690161794 165035908 766829022 287727866 279137165 831938327 927883622 63163370 513156963 541458616 893223832 582443057 699023954 581200171 673109332 575950251 756435229 961584438 510932772 232228050 851991559 871772151 957262 79161566 308699454 690588110 651772948 19583476 490193767 484373597 449500633 361266114 894092873 225527867 172073473 120715000 897027640 369722068 872050312 460733000 51802298 583675230 20010857 12632634 381329413 551260622 289454577 263177004 276901923 30433228 215179055 166767170 441901256 449378294 506216842 398232394 713848072 559137123 179420693 936614866 768530994 162628097 925707809 893731839 684586021 284881956 378449503 443831093 777758915 370331900 920798404 345855342 762852396 894736788 964008545 974704158 914244205 955707660 625947565 286736305 391306656 97103330 531845127 640243907 604453002 350508383 59267376 708403759 456857696 801231941 561396230 965855386 579451032 596468266 520092068 450934981 473592684 240012535 213451180 153376835 968344474 477032465 161350834 676448441 617299932 807290066 677946848 360770401 699404052 280982215 921715354 393740763 929298649 744880877 952818047 792653005 412981556 322540256 110895108 47170103 606598451 508238623 161292357 833487707 734273791 190869953 959801584 38567744 463079992 149863539 527791168 683831906 544157615 761463134 895790707 15827917 85848707 219773912 583616034 45679051 406125947 512225423 370070064 847699738 926974086 260509020 268182885 21578886 183232791 630861727 89671287 863446026 722201482 98493256 628309989 283970388 126891784 332658387 871913102 642417722 9270239 563053334 65544457 472159416 816760888 272475877 49955387 48962171 225579228 79332699 582254328 508069884 280141789 253609646 56949624 733492372 822082164 201138257 455687453 564162188 908028985 238877370 899922045 460370478 810672075 109464852 967825557 524917061 36125532 38365948 439253493 694942241 484799314 944937991 559554040 474407028 586448318 176067979 319427359 185998661 303438796 359108167 439035930 716991785 374750852 92454038 195137291 716913743 316211407 437442096 705568822 268081119 370571464 87317662 875890471 676645402 728659362 615829430 69581647 4027230 60138290 129734091 281423767 544002122 132284407 403597654 736479460 941230084 305334814 390235253 694590964 77320903 105733984 708475531 108002926 428129517 889594653 524384831 890285440 44438377 788078047 486222276 280478484 759935585 773899662 398958529 187063394 378700446 864094219 761512186 542985876 221853115 673478823 928304915 394041165 459535308 655237209 782013689 810203090 8090565 161774543 273408754 318071424 732271157 646548006 42997290 751117283 170840653 644293340 411032209 721382994 43573214 844650438 551282477 48422229 674486883 84795577 134536235 754185168 813959930 387325280 859070032 61469769 716087090 668580159 530148184 393931980 427297655 736381025 737614149 573665682 929689963 700330505 277766430 994919783 180185015 924404829 230197325 376962666 799945882 475060968 915569817 550386822 832753636 694408956 945198271 477617372 269237737 829544184 988029404 756539229 363620151 875558819 157167486 864257518 619654003 205633856 768034151 509790954 569989478 430191374 603606379 967709502 905493491 209169481 862662487 621215991 228175056 922994901 262981843 723513970 960621977 37123340 744732322 850799279 526789499 44776534 134918814 351114460 275767433 505273558 938664991 274485701 275060241 662436399 611902165 133680685 170616858 707977772 594737622 461226518 997601460 849165387 73621674 284297151 568446169 671217628 366116231 584796980 781724346 100624530 556706241 930022802 284096255 756005675 745946583 540096608 254245190 641095286 192403841 241778762 768037419 655999369 79544902 186689280 296376466 290372256 727597975 937623471 588637816 69211200 73245602 998597992 372810392 489425559 704215509 688279594 285720550 241253660 84232697 693597531 708154263 376863464 253840010 210074086 519499480 413482299 293907953 239392776 570275292 297576127 220583761 799679335 209356545 944517503 426265275 12594323 475130837 635271311 782402801 113252042 295561580 965371871 565173738 345129097 227690329 180220819 769848112 987176458 238709428 642473619 676609043 181461496 72676069 721094825 345653697 31798367 904146274 932858389 283843431 897067130 390870861 902204749 747954068 528307547 408305613 966045055 399006998 401782426 633660958 177879059 733447733 804340785 884589755 959714199 403063859 755969281 250138421 790430932 416933954 152679392 610096006 246139603 955956209 161207638 296318511 994474948 988878147 527702826 627048865 803641493 525257515 898393673 295788546 28113718 644299772 227605395 487815770 12031879 329003433 668174763 686459650 35631560 288554245 142731148 687794263 360471954 360820425 439405743 669168541 534052179 337698535 513440898 898463955 168516446 508036653 83290758 488536057 31066743 573155517 185918451 825881067 446159963 114845140 998274815 733032182 375994391 297953149 29525075 900351525 899659944 610012238 687366695 807741895 495491190 348822991 858855978 326596487 401475344 782532683 542744250 237408374 969156739 92557731 205358618 527530806 779713339 905906418 515543916 223490026 882949972 716490168 942609909 30819999 53306806 765916977 181371662 171359743 205735388 972068939 312399974 591824243 447938108 361515208 933473693 885845370 134202710 197003989 544044359 655788526 710753536 115597855 193789963 557515889 227768361 939343251 700575272 576721984 897998704 339237306 743002183 889372656 569463526 22746202 288571495 372020376 207365719 170491942 303945027 820573344 418441165 58315305 391290354 224911465 531246693 988085017 12636382 918523759 409701410 758708213 962340788 323600667 525234108 336550060 16747706 230800400 128819627 44061179 468765250 731421023 728196332 768277890 453873250 122718051 483643574 765155619 728037337 419677399 932550350 814108982 454525685 538895226 562837176 429414727 988612743 849721397 281689276 2370541 341982228 260143410 991519987 682974016 531524208 79257468 126269111 64607244 482140791 357743565 509483899 410745045 944308266 256050610 364253170 164806768 309821770 249149075 327844146 855846433 308416400 751444973 17331768 44739496 278875749 809593863 1721377 495558094 415935855 338629602 86727495 442340689 462971078 521678167 945971168 63133518 343386079 278456299 369870650 19772387 362334709 225801302 549786959 357435896 518854976 908448833 451581039 299151896 533807717 306400984 784868945 643542476 371517870 981770003 779385211 671146564 665500349 913612720 612417010 408503046 556308881 20595200 751761575 128463460 41073862 136158907 469598057 857845516 820152859 527733731 661760227 454209375 108522347 371908813 809958392 329359115 202520538 20103421 244045690 917296860 944404650 732871107 538866692 708764372 242635583 895013559 320879885 770826258 85268306 214145398 44306895 641654598 613348680 792437796 119833952 967265742 194929344 352659354 923411293 106355358 116803002 308719095 467365028 298771170 70917279 56533634 906099053 78317439 442856324 572970128 195924881 518232019 451016045 69274992 933568140 313285292 738599252 468617751 273490275 733790755 707433640 534425091 646510288 538909682 993400649 566790554 877760408 400461676 815968843 791898395 8796153 916657476 62573492 361440654 894871110 892954295 881331623 632250631 509070852 320746458 675470419 77866382 267979955 826224102 926071572 167423216 975235428 727225449 825624003 912020472 358024007 635626525 945133930 487604947 295533351 529548936 21408611 76152742 465888399 204769122 575361337 14989296 119047463 54529282 571479405 968761365 976554141 374480394 928326623 190638664 102025873 469340473 375375235 147898987 989888764 224991249 731458852 99913009 827273831 884584690 774900439 936439507 697146322 424921132 215507018 163394744 935088288 891369938 663766974 442902690 647891915 971202944 933992027 221685846 562063839 242859179 633515989 38370584 456122966 183217310 484347344 737721604 933586206 132961928 588777273 522067151 122224902 350400893 34417453 820521995 379240946 268482204 462745578 942569767 60434052 103895025 85508347 224213806 724208944 482989743 746946118 727063752 926543922 70904695 984046389 717215200 288962280 356165279 510040959 937597782 809097885 727649984 108067987 964382626 63389942 658616920 845964131 707067302 290655399 427116249 220377117 791695171 711145485 74148851 624215614 575151778 536694833 860926182 334762561 931117712 526000365 442228114 264319242 696491997 778615085 748499453 678325071 107021908 538980891 160009109 185276666 278862203 351494394 789272066 119536397 331406396 468672705 460094487 384519039 256776610 29849011 248801552 411364777 479898114 949219701 704489361 381782554 88572121 161678528 705780858 212121938 565652740 325168978 40376347 420259724 153040727 746237852 590378033 787246965 445658861 806823697 122310209 958349076 868819253 775780796 798885749 265059981 406728133 364069666 555420992 332677121 672639928 545852946 413162459 792064941 645667696 64854076 601004554 355441229 280266538 778503480 802429447 821063886 214863283 536146942 850517096 120043346 277326840 381002675 858070417 305357998 278404135 148598888 938954714 455289628 430797441 872749751 526038417 141151909 794603216 168970797 617344610 497233240 204688615 112585032 176705201 393753500 880281324 477618328 262696503 284879639 27689173 617812200 465363818 587110142 807648278 117806410 778621165 9716945 331960000 140411012 382934889 270475556 908922158 987817400 472209870 96971303 111849612 768397521 875407393 886448055 778307009 866200494 273864775 490015444 136563491 455837896 855298156 613037100 643282125 663266560 758317462 635259986 224610225 87117343 871064463 228647798 388451891 67029839 400412411 482306945 875032441 942921290 612267061 259578746 694756726 736940564 565916879 605406594 683548178 791140481 147184365 816645382 67845367 639733044 182462079 468740585 710636489 496737453 1900475 345666790 439579556 784104046 874334810 207830998 636346153 202112653 811167231 853830662 109251308 898897573 689060651 53326709 748216557 423453764 728055370 779238104 795406003 340258775 114211746 477084539 762937551 635460927 395031964 850248525 805680191 730482664 21977871 819315891 387370065 107630982 100343943 582409494 128995831 726824624 205312161 241552056 894742479 810807604 229967733 440537817 980591534 190018202 159157328 995136003 713638069 600529335 943730738 774403515 242122247 411523004 399531169 779334684 313415001 288798237 219630346 988818908 202656444 253340811 351133804 104784724 325812580 821292200 421693429 610342724 252881934 893743373 599945573 490174138 534054730 476055973 62248059 219613999 132982749 681636493 490827737 923227418 53168309 890255875 977454537 657683686 239388310 927969813 911894278 365918601 961314001 297981537 690363940 110216314 970648238 252948996 466752673 411333777 730455634 204405781 921860091 541244430 312250843 822299711 801144652 646149075 953692457 386066444 453075217 824378268 967547303 444082411 987530840 324776615 384863616 462885961 748295011 853475352 384318874 582666183 702495751 385324490 652666749 505107551 629186543 415716197 699821553 400575038 781784821 415385493 125542550 599027850 778547186 418783106 268344404 927869512 469484151 531008532 659078109 376433132 802217170 705368947 525728229 795773559 54123801 123996564 84667104 886885123 404802639 580561460 265606419 809811623 489174306 490573924 467167815 872823793 104266920 436969138 760424090 197273952 204496402 747668454 285728720 336671344 828866399 759041103 308124902 671081491 800725594 302095789 236066276 803535456 67974978 888264704 641656317 913354829 230842548 473302406 832158044 93695673 22704745 218551782 276873597 676594397 366117308 203705045 757211491 600704677 766408212 340125182 42245385 140303134 580997216 245180105 475583134 948406127 780393236 851447717 530278898 405487665 268002357 652305515 715662652 958313198 840125441 311602062 337942977 429346010 381295865 973062294 378693670 266571671 413315561 723117200 85089068 913600882 931364250 896158383 120535676 8510043 953586420 48536777 412885253 605038360 548013333 233434675 339879641 881604381 147377952 184554958 1796414 808634218 250355574 700581315 515848608 402864817 756966174 191610907 429852336 507860360 887207225 731485436 327674442 41379336 464284321 519437209 957282912 623926691 944542408 160658106 582829468 914660027 495551116 136430047 626043303 498403236 952838877 58010240 182254148 75172566 797634673 635831793 119564980 768155714 435035619 350383153 784039121 519552079 35072477 517390693 96952678 200578831 224830381 948348386 592994437 362687285 110071237 462708268 589364842 153591307 691674093 978141324 82504139 992030550 949663146 785366740 124399410 521145410 795813869 273954078 411658021 133726216 227577375 494761087 314194046 690453366 831221708 326242079 69002749 214172633 886019595 451367770 246768861 575896279 583091392 486612900 620585419 74198169 880783384 269849885 128852088 533218256 869273213 671044219 226191384 4928767 982353393 40639215 226403578 978504161 514511303 901920280 349201594 265593134 244673597 198702080 384656531 405029776 437702520 233964460 398287459 505379780 975416131 183301262 7727932 811122573 438429832 635736765 201191265 931979566 756823551 544373572 289980297 664439612 819780041 498748756 559933023 142923277 919235430 627664607 436786276 674311119 826378212 247537742 482803868 524048708 483435459 738214085 345593549 609910843 592497084 902763608 160736637 944529067 448018121 212026818 281030940 469802913 803881251 98818676 683821162 326087354 577344970 882750076 447467709 207392131 760090038 627240319 902839102 495560088 255436892 975272002 524147871 61887708 692508618 820166973 34469673 576031738 498061735 232504978 30937186 93128807 945449510 372802644 74246557 109680043 495617092 29815555 740655879 663246852 517891126 63676659 982588605 967527491 402749155 297813762 748151748 248472587 634058645 386430421 228474766 149674880 535129814 847772883 413814107 965531388 136267503 421441592 647373293 25910146 973675155 230703141 718928830 693522944 737877489 132695759 518679394 315700940 846274089 681223288 977222292 363932271 663585752 843205095 690743123 5446848 216049017 688556375 191579445 859886615 820916085 973090187 596008702 948791767 789904113 452670145 888690302 233199050 977209472 695696204 608120903 170267318 261313269 431438142 929466430 378982907 123071385 499245599 847837880 108138463 968120883 711141562 420089856 66531780 290814648 902243094 195709739 476079429 197705084 967990640 696364628 451527220 573717889 418159070 779911767 500960021 283121571 144106856 470716653 282631493 646765915 466536888 10114531 447272151 205886253 540613546 86363421 793173643 130757708 995957597 858190211 137265258 738749988 992141335 820113489 952308563 972524077 350375604 580059130 77012391 901401343 874891414 60002480 623103848 719050067 161243262 294729958 778951949 188257400 507255886 124324707 107419028 334750634 812672122 3577357 283749040 932211585 165296865 693281600 190627033 296062296 275865001 156976424 320715914 455443899 274596490 919680638 151582370 351104236 402009540 854423114 771570837 669421798 322039449 181768513 512907549 312747925 278108917 906673943 531917759 834506901 22198577 583433173 185248107 379990393 585087585 376943813 408301720 548428593 773202130 340981075 293369333 714381434 697927675 964243933 922591966 701580904 741299584 655231323 133665776 103907113 682719331 32633978 150508665 581026681 574583455 94501108 820409541 52133054 599401384 437489840 984347584 492150162 956982507 67306907 39593747 149433566 44969410 685680558 638444417 701495951 173016760 230541646 476272135 831419678 624021125 21820968 997978527 761209510 334948237 532802186 590176171 352342171 886064800 675926335 761187422 283825818 745281660 448905887 564699574 62080405 107662470 744486008 186431510 283507251 705549286 88404737 431594294 660156766 278128991 190099200 511741695 712580431 536123275 717636261 233317929 991715857 816342040 206259255 617340040 779166857 897110963 102275373 259078150 34685101 522725679 173223018 469268946 866485797 301153119 232460879 795664930 661520615 18947815 733300576 507353105 447906621 727229012 540140814 192795019 427948013 383493352 218985813 888804056 371303049 672567318 474307657 117924527 584493082 729043276 876188371 625909648 807894499 633484813 315660076 806278264 2674365 732348150 526982402 383575186 67721006 375219178 719361642 76266103 858959385 958088840 227639285 792741969 338834183 798160887 636589277 746758587 880146482 350604721 76859177 133357089 403968569 85586924 447731368 698121512 822664801 722979436 143840397 728683571 844140758 985254150 19758978 187065083 541741825 91218525 338683290 510995355 335192970 348804960 176295103 554781260 349322557 399699068 726447761 11209683 648249360 5080951 636555110 382343509 362402496 785577937 798357720 619199055 36000468 40141242 526168763 621040506 213911569 960710832 282003794 656182051 524486967 219085216 239914809 893009283 410693477 453293739 510381393 966972542 705531283 157871000 424553169 579382012 187112368 117578846 254239853 108795101 258575878 796014382 761140318 618702594 109795075 350210723 722200800 702514012 679916151 150133124 87945088 20428805 773752595 482670084 348850525 351494952 404636312 794465171 64462807 241129968 249751141 967863599 932254929 280544436 298532749 836807688 601366858 446507266 404471312 350459764 495676230 324530724 415836931 350489493 810651260 775071673 104612884 555437526 497717961 811226848 382742469 812975810 562655980 226198750 565824094 321248557 789079350 960603691 79204848 626471228 412310592 38211995 840327397 749085063 277876316 438527324 673282343 151497528 712600625 148888096 786751653 769879014 460913877 579923163 344973220 575652370 502586201 952257310 238559184 921756316 351905266 194809843 455349251 155335668 561399989 528013580 904949648 865886328 298643984 47167464 651977351 15758581 983204303 926718345 129072316 45832630 627574271 961605915 533173901 416802781 604710022 946384361 466671428 710421583 180114877 445216405 279594749 795708581 465154468 928561157 10675210 397782099 352455129 294839768 757518933 419468272 1968996 71402003 98822767 395043060 470709244 691129998 264734508 241719628 614892975 734336618 891825487 128083990 469452703 485330671 236667985 85546538 752164529 103317109 772841942 930862050 207475075 259104121 989793499 521025609 948769649 806804234 440467104 910774279 289292002 818819493 748822860 225083208 194057660 713370080 138496489 225955523 364764464 328065496 882783199 452169580 629599225 544827076 389867010 866760299 675734174 736583424 631215712 754448894 810587684 274238310 692801772 532210464 439686972 901524872 413232696 242344691 615228763 135967122 683770049 413308300 970496425 893680125 826896069 926049957 870929641 288741648 800664153 724975074 922066261 713242098 385628528 707090515 6015674 75147286 165269939 504203874 241670550 698963057 875662991 509036300 63658400 356539738 82022731 895136950 645071438 678530552 482376465 122223365 99310630 511754277 900521982 986085752 550323253 400380907 631984714 276468125 440643081 393458121 367567809 244406795 866763720 322243577 768696493 978528381 427022186 473482157 978760340 799632017 507676685 618371296 160793049 573201600 736248046 409122731 531787969 778842162 793771894 899437416 115530400 387277248 167766561 121829369 569546992 15596365 822741262 700382016 221171671 279556669 428233453 288305220 807705480 807318747 623016979 890037959 779601810 517336264 487313333 173791983 37321049 835142443 811797111 468366840 962098541 54970602 622044884 376047185 317970807 679220210 331378616 231919513 948377274 134277483 638013463 605956991 536507151 846779905 724863737 105027358 652556714 333099102 906131414 149081283 914971395 137203150 189603960 490531285 813362710 201356116 102008727 980854032 214320868 356350377 58076173 614397985 351185771 55729075 728949229 234001204 560225088 132158360 66676264 890324527 110527883 480388273 612534490 385568243 823056720 396416714 77983883 16316228 914567356 286148933 530544162 724625027 26973281 550710603 947320436 853809301 635382546 234635761 407488456 17434957 318601222 670064630 858811363 409583448 565630534 306680723 124105423 180549801 364316432 579833390 762312173 826810160 227201981 841340326 48223877 253284761 328655923 391344244 696432963 203463168 712602795 169000012 111339283 19270418 800330599 822970108 683887582 918356436 248435231 689264504 689584331 557456413 625327911 353025790 57639614 988316539 384019889 654282541 743726614 414072672 650759997 819296551 147452509 832571039 681020119 144170657 792154823 699610835 414709495 572761465 437179878 797772925 261659849 730866227 168198823 919240939 915669933 287558028 923570972 825660368 413498308 392188168 571703212 901246905 249639036 160319476 928745810 760733103 379900974 938754706 129230660 196256025 109814036 439843034 740241344 249019468 293555671 451466018 199349685 437130814 442842202 823806068 738689396 148810707 743953471 422164759 660015623 778421546 714486226 72087922 966664091 266848952 605198937 548447388 352265651 595851077 790862889 40011197 225420609 144263465 684230169 191815378 233464751 875083751 752363550 583841523 745898444 472323185 571804491 438960685 99341177 606601914 935130755 88175706 123409471 994615893 216536514 273129914 916679588 412454271 12518380 439879697 598086127 956013639 707636665 939967346 649999575 202633949 294243093 931893985 435329896 962593072 31235560 614680855 853855149 904209984 604636901 312424634 777232524 852449925 100246786 450286125 803317562 45068274 381497572 139227205 229472876 13724247 572399583 225005323 564958836 675948371 526153730 664303510 248525284 753628686 351368780 547891529 756744753 780415801 46037352 917668868 513829738 685106414 68248512 28161384 480335603 58483824 971886604 420603189 667735962 229765117 520666200 63648347 531555710 356557571 4951956 334705680 742093109 627463460 159091496 497196560 481475549 224259299 748989885 372089031 610535108 100851249 835260190 824507342 348903083 426137606 702725896 745335022 797761630 795326699 950336366 301149277 17866990 192654910 748574305 54483273 798455060 504014249 223080852 246386758 143720352 109170968 76705917 914410675 183430454 105669851 654631510 858196229 40938990 285191754 357021521 305166250 134612444 580113130 525063516 425495209 321765131 213702105 237940864 631173507 649663373 379944334 638777380 540350023 833720922 485061303 881561975 900302683 861453174 700841662 316259484 933742926 387990346 853051636 874634837 479181202 215760280 442986975 599419036 682158014 937654576 432954215 108963775 327732731 239775947 441926338 171448638 306883928 225891268 219948787 170246551 751533183 71771879 348226517 344634811 393534085 666562889 990972621 940391705 487083605 152599074 483560576 806324323 474557869 152103339 220368519 603564486 117785110 840416222 658167751 801104431 485759972 853895129 975525097 160242454 347975773 715554306 545948558 558611912 462016923 120570958 545984552 99223847 256873463 447851943 156377129 91722789 840764842 951924896 930770705 923497309 793911113 971111144 722614654 546328678 299037475 246419282 94445100 208793843 138115933 223568307 360591548 899056437 410066619 837687647 432606510 80960237 695220334 519001663 933911916 86393245 836941608 331398110 255427342 910561463 312256375 297787790 5372331 768823870 200468513 827261633 438027390 752883286 457224359 736914447 865611590 944659933 52088263 59259569 446234283 636109471 36394902 834041600 525900999 683136786 237321566 691388778 538053027 711146867 600094153 250559996 862864062 124323289 310571142 140682153 487159307 574642777 150507259 874131664 110951861 393126565 274414988 418011871 863944865 276869115 59726591 890511747 342478563 20594178 706505445 307541397 783850553 301593739 330126401 971095711 662519233 990089810 492909794 661077164 835288120 241485571 500716681 201180630 552244404 516279310 946462150 396674237 258969238 833577163 783810166 376344699 68475056 409910166 690305586 735408875 557695631 973507453 112641884 204318810 241467968 471142191 811145749 793738488 754519507 18112474 514432746 191589644 67581884 742744531 764101954 729930076 230913491 928265643 102425234 685969387 53469605 481076747 842216057 367318208 558921657 365786792 767636328 718366060 193730886 64086113 976171442 242047235 863355056 257027178 464613827 722026489 639931062 700521173 536755474 772775093 401931658 848843172 461374276 608827032 483581888 670951366 954075016 110000469 564653625 329927763 244720579 885187307 759943165 981800257 975689818 901177802 527128646 755402932 324774963 24194376 402395497 514621912 562222631 143839593 801084525 584125790 798924742 824515750 533676352 133901073 159260057 339489170 642224357 186637949 575262582 229661295 81902910 353810767 480686047 79505984 824786284 755489565 793106371 821975942 958767266 709238759 56776995 185406803 286349324 217463616 249952259 46693373 548118552 64525933 282935606 133838036 476592109 188854853 318086348 964725548 794486919 339142743 406488402 768023081 248652761 916318844 606656139 361073673 892991358 152684482 239711075 737815253 716374804 131115516 167696079 461093847 902770159 13393576 2666852 716760210 973333689 998250430 24672106 580009035 61467554 330640071 223180706 690906695 483685906 179519995 112484272 30190220 751296002 223505164 717391416 300618020 97004711 682218915 23948835 358166089 580721747 521442909 736255567 791465080 549995346 530245250 725737594 701023403 367856787 640202826 354899109 122223871 497954132 907189789 563709494 150183393 122088114 263623997 745506873 787886977 806193485 426063818 714342700 150451823 290479868 520216945 923580587 231012418 988133174 593180078 250483264 714718276 930052179 50342688 418688281 293197208 980860622 984011577 459933527 901688041 621672943 493333664 35725631 785702798 769970216 833429061 123637631 108829168 941212855 901146405 193568820 824828505 355591297 614805595 218767015 473156530 851240741 914054048 475770061 198784624 103443437 458329121 880437403 960602399 398425149 790644768 800924396 909211767 169263071 330192606 605826197 680411370 498498087 46630555 573971666 602186440 321104703 634609604 525299066 574064023 726745192 779338398 461795950 99506291 170725533 444212356 675605595 336852784 577529993 233046085 148785665 939606969 220966830 25712556 925220690 30249074 174359197 217088239 928171125 661729644 159722806 834111379 674737099 746933946 316619162 599378337 943300030 698611917 216223276 159062774 71488093 50648579 989187845 409308216 805164796 130479795 224958571 585155865 758583647 424565514 36287110 63162329 470649499 156734042 372307940 227120527 971914643 820806586 794657095 443210175 225252288 530951192 333780024 904901271 318708094 775585466 38246166 712350843 325589108 20880313 120246289 679043720 846268149 302349572 82035469 451775476 211432852 473262098 155867461 393523634 586944898 711179309 301346609 845833838 173050458 983628844 243437962 445299345 847703081 693881233 110427975 206977550 97189955 7826218 391660554 802877490 586900316 813398891 3452176 895668162 264028038 503017400 524005232 778266042 158119746 651061321 808763796 630957259 978599896 536718116 89151030 487498163 572619255 445625548 37147653 146786052 836659515 498251535 164310887 498652468 371147712 826177339 569700136 127644778 207148303 610383620 673862776 388164565 407086541 684670688 146113638 945283520 295486238 578609404 49361970 933972704 239781664 723498122 171313451 993774998 576916801 515895847 125712239 299447198 542198489 585224738 487545537 469399159 250680230 191488365 834682978 413189986 965798629 91440641 967184542 128551061 552813047 414820103 653438265 233436465 44353934 623117487 335834684 854976368 273406852 764603035 176206724 659385068 881731113 569162659 20226086 731664835 398970309 440636399 155968468 550814217 32346195 524156491 791316052 864138199 485838601 676147305 379099472 99028724 306859051 461522824 535170157 689189698 371877052 815772590 744052168 633980191 921407683 95894206 221818583 507270802 213380568 476484210 101709418 557131409 222249653 775953774 502189997 155139005 610131071 896483320 732337754 775584431 308974480 705764442 686639061 862989308 553665709 772828549 354711837 555486525 139331884 578467716 802879888 394379840 11905591 171500201 275548156 28305633 412476831 179458033 889667156 197357705 782863704 927990041 552111101 249650786 715731846 714465057 379466301 386613102 233664242 939385572 817324398 750067199 433031821 49581117 864623120 880160929 830751929 721356100 710846434 229120301 707863324 336538787 626185931 129329767 574294570 839938735 463581095 327989975 352771182 903625980 479870965 361614573 818528653 720818441 890089903 716052132 218071077 70764494 871512599 342015441 644224869 381745530 454923863 400242493 977697489 480232430 159808562 40262912 743049220 292043173 427789751 289921840 382511992 973091510 643396250 68993169 748058802 762074099 353452020 990915371 813678686 339265930 670744985 705920578 670542297 774241702 141105765 628723680 834210018 954656428 350707815 988563112 552259699 759949056 319710131 623873935 458676371 925237676 967650626 47343142 295559058 350523463 505788838 493352300 336014977 869951523 266487053 996002770 265153198 4482058 813284374 236001776 85646837 708653955 495384316 83047238 334752375 294501000 934040740 973011063 228791491 153982849 805469930 481604896 220381774 247285560 543796627 144241088 999390364 272201678 180843688 261255855 611859347 700178042 605281181 288348151 334582724 685978417 429597586 377382643 14062441 935374246 377600615 84470436 170612907 485722222 452228010 154246578 202892455 213430545 931147043 997163204 547517703 508373426 494595901 695661147 448385048 224952088 240314615 579292334 210632350 572639155 956849678 542109464 800081504 902916707 793964243 809019919 955826113 583362655 783038453 732886799 494709331 680375455 115025397 338592661 845419847 855962762 413757439 845743454 233955465 350230354 41409369 989372017 547274950 850240348 706993050 256091870 377705670 884996560 709573817 700837637 816165850 994238260 946298794 176555842 564116920 362344649 73407690 200893644 445102215 722768735 522632721 560596287 797339712 415393791 730220187 264074160 88070930 485243838 748628713 132907839 543493512 221678908 743738295 852351642 458053464 308754389 765141807 200945853 954625292 997474528 514775807 944108355 646648141 758601997 516673663 388990392 697278993 677293313 167745575 343881157 774715584 976510248 630088656 726015295 466390486 326149213 82798226 841188335 434387962 601739165 436429768 531200043 922956537 826016511 513984155 267720221 533707496 982186240 784588751 364328808 468571103 423974831 122362468 413084281 227717931 194653977 458953658 208002077 913393233 202834711 80050064 552403555 746696598 595187232 405952609 672423412 29588188 731338647 292712400 324015550 822714446 578654807 549438621 984151222 621648397 578122917 478422721 64363472 986490410 9695269 832279046 566819431 287184692 846827082 228305220 59178570 513049722 853914380 590771555 69883881 90805642 68710346 383912563 970874613 365086680 619138202 873621534 46659838 92581705 211312002 394747627 382762523 353332771 788371935 63028025 327385930 544147699 889526517 906853805 162139331 69005629 148077458 699991666 792185748 787598808 76666256 888193598 225410805 359050970 695227905 385409702 417124323 539348820 637752285 194323095 157658772 664873398 364666497 610566926 944868964 678320163 731050526 892266847 204126236 995134346 599339478 331139369 698497944 593809905 83249741 652697696 499081513 583991574 776781414 592768424 501401822 82790856 735080092 96535180 594525074 329275201 891834007 4464396 720956862 821056154 901176143 362367251 358930575 766131320 870538393 370416690 620894327 663351896 573684301 913119687 763337545 881457847 202354117 414825319 84077159 417237389 329378237 443534393 858148933 306257117 297132847 375930871 114804801 22679085 309448423 105328990 62741849 252364643 280462032 601986586 25577848 156601060 541532340 995245313 588950999 610953824 581585247 244022360 568214884 452135200 242976709 338070368 533823756 877138905 233758171 589926895 882916168 419529999 165428185 281577364 501338417 678355249 338028190 108911568 393122677 192754003 601627917 905447634 762497257 267025448 205066368 739805425 670824590 33926263 966683656 160494405 381420951 715402875 814845514 474104100 143744783 214186993 103875247 939879410 858579609 914644524 128670695 944243372 508906718 83563279 40838238 799626410 19822552 745436928 102219418 810875291 953712449 572794112 744664809 559624668 449267609 937323291 224481072 475921504 721351178 273011128 277088159 810242099 112320053 446307719 936365000 668528039 970847757 522453264 272644022 117478508 8980063 280859596 364032897 731466721 71381934 884028754 527842083 561475581 682098938 590174810 638133610 455237490 600314588 137971976 74865264 643034211 69290190 244989627 274586150 107153684 319584493 148665581 753405342 102396481 476315891 644529 995352930 764090262 848400315 930646060 980916878 503731551 531297084 588068407 130594235 582827332 582175367 885173528 484758461 504004282 1048357 679576030 243686804 224853036 102858329 217496959 310396437 82221371 63054240 517946078 125542509 56157576 509488805 495034212 769241049 546128657 959870383 68594643 887908231 701616018 257872892 153236450 794942751 194450454 913773640 844861763 572780101 882298849 210368450 133928442 873216091 903456583 810871873 3868625 616967649 682942455 81749711 339439428 191353674 39400037 961857668 643756906 472518600 917950558 50727228 475174181 74602537 779050229 870518361 731708397 28720924 21308387 376263716 150061063 321271037 769776298 981723167 417917906 613386405 817373256 592564712 654412220 142988642 487880736 167070199 168584685 791330433 162654380 721390010 896939256 697876422 549750351 719619134 378965623 747287338 426048568 659845626 609279141 422883644 862386143 27273692 982134917 382538719 488526219 240866230 535272539 791363135 923373638 705506746 230852383 916032782 872678260 837599016 55425786 579898079 590071339 3136775 946084576 971354412 618862239 496633780 23547523 650606334 90569376 818233352 523221793 119375308 372442055 65597009 143373115 909025518 704294966 780995389 42938102 446878205 360463726 846362597 731440901 183611778 215101681 728660794 621363631 403517484 303369771 865271955 236882493 242278870 120865256 66857759 413691381 394096980 732477199 69264293 322160783 241976518 587612229 656748212 427770513 632083176 160931893 474635934 95968297 365532913 997962972 576666697 119419505 625802839 344146719 173395490 133351416 352317598 9063385 386780676 191527263 67255110 694213031 695485467 474964904 123316996 846424886 916684212 790897121 362359831 629832441 970164991 747895629 165626963 785306758 522338341 578121451 772752282 65847126 219299660 492146956 251337307 853090269 525938290 521260907 576573501 22817943 234282877 217755957 474708845 331999170 928831524 875948747 790064179 16775219 834037075 736119761 536065088 127587945 593699392 535494775 541673417 976429416 340917163 219181237 821693717 322395940 19349921 824672478 686624397 931470536 314575727 405756589 685505450 517995730 35335045 702714960 680716747 877374100 107327101 320844860 948940264 175491825 342082515 652972962 622110372 614209557 1976938 857938860 306297912 385068688 260208447 437727361 488081258 871692897 286883069 293965830 457687874 567184917 58536615 18761643 993339862 206952004 545783995 204228239 740522357 187582608 976693764 822715479 367229769 697837174 167586234 771746061 391565682 275172786 272562266 537529626 869608469 762640398 867904811 439043013 532103416 112297362 474608933 669683901 778027021 714056047 285376295 478496661 388139036 810239079 238867215 255724805 417962243 227593061 438507989 741332332 893935339 637496430 559742988 737145907 813145509 111383447 468740824 700000400 131617412 501661023 799226696 1843599 553189925 712224828 268726241 693337741 38402540 359669901 160200434 122856821 66540083 4666569 636079709 634077807 282767492 123422075 117965042 924054612 117753801 739170340 875919241 624807995 409941093 278362189 776277476 587860343 273238185 459150210 929992447 217244284 172690109 574928357 843130440 417852400 526531455 551462423 646581836 726792983 680592834 841996330 871627993 260392360 283842375 404714660 460096284 661870590 733220681 37351548 208330993 809933831 267267426 671844099 300184037 221013204 888396282 877696646 260137404 934498770 816804606 891702677 555536444 758829134 89789566 872219395 966735295 318075337 553520018 503682527 301189701 501666293 515970770 245852791 792694630 767077022 657591462 488110541 341067274 766212068 721292488 686398502 800450571 928976952 232097152 528123662 151746276 296407858 735588010 315951208 841632891 561968852 552764343 668732404 717726567 606709095 250554843 193796012 186335840 948249028 42655263 176068630 432673041 663704197 361528497 585414221 580487575 67483157 937326450 917903749 378409323 636274932 822047171 503049854 73136454 570015812 327427747 896895832 931659279 237236504 96310739 601492917 37667279 582606633 203048982 41722262 985148636 709801500 660843523 119083119 974011903 21487352 5076048 476153707 820197516 766756801 801331348 544123594 517821337 926798476 332664014 750129549 282905786 728235502 79892093 997614600 185815054 679959167 982485442 563555609 183034624 134985918 418395273 511825499 20664610 297328164 420185636 237874297 728416373 682225213 152353863 705944946 437439387 952690253 257469896 710188024 149777483 969162972 78163123 246001734 946956404 639060702 299701162 647039740 888546401 314333553 348821719 897674883 387588222 472252263 890096899 935209496 26029644 495085911 846771569 772734446 646192273 44606471 760349663 136510766 396236470 783383489 191233456 949069959 634653657 108994311 542050860 750890336 23851705 574573715 418705890 913800425 96681089 875786838 479214604 529630821 713226286 546174704 109105851 461583508 166117954 245049027 208994897 31436127 531635620 472172275 131237096 742930422 931723049 226720230 489245728 445889250 917689176 67635604 153086099 127869223 303960684 978224098 144680797 211669674 912248458 867335164 456737337 495404520 323522050 278455850 410042006 535674843 691172288 377873402 995133393 667929549 206026785 810731898 386938957 961518426 677912599 16826798 531889623 920101874 787898943 451164902 168955228 622447329 955648507 790854522 667636700 230988256 251838951 903158149 547385033 245781422 288895889 64407039 692123155 252969081 553316285 861774046 552528524 467254611 958490792 985936540 33404989 729892986 126887130 222217111 440025661 56817508 242890745 433713656 313909011 480891357 354209812 366321042 447596563 490211369 602629480 822151670 271601114 424538001 150705169 972317335 351112176 571658615 859269809 6044883 435927998 440574745 430978967 517311216 856219019 463173630 400534523 621643486 947567124 121799931 163586770 734609922 56169489 976555114 466627060 823253548 18104486 172665580 54398336 300741560 402361995 735093570 671790212 611738444 196105318 18199200 522242150 452832616 367543189 466955432 636284771 219771546 235094882 942879102 544676483 961313582 565284033 271345086 210934867 646514137 93499672 187260302 956078139 322529358 384013015 618371233 639333924 329149104 928587879 139518139 839019929 537817530 421796106 665499054 781211118 783182476 998468584 208323398 487907710 522286594 416119392 825643899 215658544 608507148 198113922 604904549 18679514 864532929 425297315 467110053 625088544 213132979 588914296 119878017 408935801 392186094 273921718 373834032 720127160 487501034 134382508 776677315 394450814 498459711 447639647 912047657 428129967 869908395 42901668 837681352 743901221 728334525 229207971 702853195 29322263 248763271 603762739 595313831 842330198 785313942 33204525 463267869 826034633 935986359 16516590 361622406 45801309 431431780 76004100 689808880 983129845 149400290 497581040 215113606 583873482 876586660 650670679 189106152 508596963 181703384 100466129 631683454 158769763 651911861 811148563 286142896 915581292 293739347 317163724 821092198 819939185 826024731 762799779 935132116 236419452 840737999 376975110 142775247 464514076 188177835 651281082 2211872 608883203 132378547 620359678 423835307 458866655 737476495 874032478 718669055 490429434 515250827 772643830 578611317 184959953 317579337 919164324 414311123 735763191 923788386 732820115 48233615 256086153 297910602 293081908 515109889 743659944 12028198 96306422 267687324 410334382 777440148 171901961 912772691 259699086 282070401 213931724 217451346 432243560 954767989 916278690 143558820 953954077 451816126 499721410 951690905 209530907 613899078 337357278 196210942 665174617 894257633 929026408 981985597 364858730 999315212 303712327 912400772 746321526 402346912 353163501 267891521 529576078 591636084 984392834 541950406 757212142 692572532 622534643 890514247 308570080 590169167 524782041 477853892 287056847 206714781 74631928 263414389 19629284 83388683 35543677 739062976 313969272 422815283 16239258 950953140 13673857 848312866 885851553 337671322 129113493 296548488 947015540 350839129 6690921 976188178 99652255 771361209 704845434 42608041 979053846 784743316 301178349 646068292 950471209 485833131 125283410 866660913 782188023 905875311 362438390 246666007 235798400 559698136 119982811 653366135 293971113 835541752 234228189 367529937 414806066 610957423 394313464 842618581 641006918 908703233 767534807 955422615 881129981 988598935 1799327 347531467 237248486 504017461 975257344 580432722 417305861 721651626 196242991 448900020 902039942 902841330 30941916 730324266 752952734 191210289 342127972 689813309 910866004 67217970 108930686 614011048 395650225 754690001 847164202 50950698 422572491 797724622 606793947 573692414 375953672 49014032 882897802 935593325 320333107 321849350 380863395 311165616 248733929 621539173 834242767 250366550 767784929 615913401 348634627 900138623 544495659 951175474 594857278 848398892 6668809 338870069 42257837 416590763 765640984 596237261 687904863 315848517 177161621 30293658 142725938 68299287 761678831 70655055 644839 794247453 863936303 337956923 422878380 260152096 337749040 611549836 75201102 854010846 382974850 4296863 405391024 742019512 523137151 676725677 969782029 741707864 131900885 686248693 330393667 325892041 420119670 995023549 329426334 255086483 183488589 861867057 962893786 129091343 294737512 512233078 687130299 516244009 928495428 602138452 188307002 498157211 566022050 940757392 178173687 788208547 956839322 821151943 288785527 534209447 837077107 358586436 401597204 454718212 655941504 283987473 56594608 278482684 496520052 660957288 881828790 866988489 243085107 596331107 20526218 759209028 369548340 120368378 342948739 82875927 467549958 557308198 27298362 861077898 406713439 56221440 961689573 748197141 79655586 501188718 783754838 102710549 141223718 676956633 759202232 205562958 797415904 586803878 913376000 558671450 737073039 648557384 683152960 159988723 559037285 43478192 326019477 927118439 735107757 771993483 25498452 690923097 115420554 878451484 417794406 688073242 473101169 319321296 833170410 715999951 267037847 169966050 395309925 394596087 319374756 109554221 71892689 164863446 681376252 119599151 860420870 1340668 403475604 192128634 489533903 376717292 821969428 644638218 332252605 619195665 774436714 720448806 619366410 6974673 907554000 56752567 268318098 862220749 672504805 412518258 199467388 273399402 349113316 138816350 145177232 631155822 766678110 63496406 617108094 943358077 902020260 349434322 557731272 85821112 628035553 419981782 394815467 505344188 630486898 345300896 79175366 653505350 598926547 501966036 429305495 387672776 606938573 478944412 72339799 181201857 271903642 474263235 616401453 669721911 64790291 183437837 850387292 792282223 375499368 459998522 253470810 240604170 77246408 536176537 102672800 919468233 726729360 111546366 863272139 775953820 284563042 622010964 165326043 278696901 615813958 985239704 535667508 221040454 648679519 781524300 543060009 696038787 413559364 52144079 581095183 627640344 969247157 999610422 151375453 84250192 518654997 192230135 844215022 147691940 636794785 67586914 449469124 262622884 632003170 442827549 361214398 31813490 229742308 480052976 654651324 846845940 305354113 981526112 107987266 375436727 454219761 316147527 897866484 683564527 139059985 514212692 427502071 988315474 838196505 876779997 254120568 617945422 787914792 129406917 251401132 460326029 858440042 289205631 681795821 973253256 366506328 289119819 9558782 651601011 257518105 564819279 976238319 14691238 111293127 872124499 747626150 777268365 840120499 902823380 625871823 672778722 206352015 568314717 350183907 791358763 726658015 219561185 23934400 221481158 64803464 81211723 95609567 413682962 532554421 88174003 956376875 242933840 423093763 218322615 133681290 911397399 700010684 867969124 314672329 294875510 592455748 966129269 46120310 189475475 519330666 179355059 937443774 434016845 267272183 145675983 970129357 419348574 602273916 744433354 763788368 769836022 569699498 68208162 869258234 246559945 249050863 428892798 777951991 550239716 826422648 200617598 534612673 777881836 207438898 922941489 640498051 666878243 419933513 567832526 170438791 983558710 112133215 472718653 804002764 943569670 57167023 638920231 309762653 95423428 68553158 530726233 209146151 593376972 728961114 158419238 442387305 690923248 806894553 489579364 923054064 39213808 120432792 964829716 243012220 1354658 291281015 433718235 359561056 513062254 342981564 906566780 328697733 41420766 551635749 344335478 171283506 883928930 213204649 263385315 335711850 236197872 91737419 308889540 789611656 479226376 229751179 563455981 979881262 747612588 422886564 655030352 795178185 929640364 57885517 671329338 557002460 542294385 858006695 675820957 410694873 947854975 292056697 124986716 10066950 7091768 109525364 390753946 616274142 695999532 619590717 426891611 415888557 450381809 11455869 983692426 659142303 53010050 260234207 177253168 284347819 250465744 296101872 16849370 502524299 485702597 952385252 972507171 820923855 692326351 684690 165345630 954580425 64481165 216762687 460866962 442594919 247376143 421317160 184043612 409522622 726017424 882698959 589686747 210665409 150381676 999647638 191071943 397003282 813648454 260107652 861850309 544297864 561217891 541721388 430860642 360242564 357675638 618561595 138783367 162842273 113747418 844576298 246148575 772199173 315847548 840308851 613106940 353096647 414122641 454329997 535820898 209642945 103061012 650427839 359441363 83698387 393893092 782037189 213805186 929565347 771322808 606750791 383930335 77477881 173943263 103450893 718552302 376942975 435084758 91709688 127836969 500964759 267470405 389759130 285303426 481695284 785216351 337924507 486641701 613175956 755977172 54150518 230350165 244744556 627671310 559507864 720371801 457258035 700985229 822930000 274491733 461007715 258834538 816710186 54102691 708829320 368307722 67480188 623225826 803563346 425668879 629231282 122702700 589754690 15854090 92473826 232717007 225527938 637907648 214437781 44548379 442614540 921903905 736239128 41521529 378909224 572503695 749567143 318884487 4409399 225708493 437305426 967862449 357795010 366262355 510541798 460170388 614530333 102679320 534844261 164202435 220960728 638199700 193785780 792749825 362059507 45128210 733304257 628252358 495343187 643961670 473318134 605160177 11084752 841188294 763521090 470913301 132682413 908335811 569878196 476811242 472454619 14126448 3450396 507810137 745025194 434165432 783540351 453808059 711736185 210160407 996600919 212311024 27331219 927960049 756095590 635949689 886314029 642199663 785191054 387099122 408231374 361013919 139367421 375615686 200562654 669041403 158422567 753759269 288351739 16669557 290978689 679644532 586851048 327475057 796106673 566632995 543531701 247460112 219392547 233345744 815524096 847930820 553772409 220123497 451179508 664129645 52673168 743141218 277625175 189581461 274933160 957849766 40102776 695819202 522210932 121985427 234383514 1061862 823829244 996701819 60996489 409618663 54041303 513266442 700843654 701386364 209126150 331002578 149819386 749824474 117859021 838306621 358896894 86091284 161135306 868074763 397545353 345173264 577565011 220398181 849473579 404198459 372218544 154957034 281400088 980281369 600657966 562327449 154669590 638403076 848952802 198538693 302404449 566865507 363656967 228692459 62186185 867673497 757247901 637006219 375518563 566024991 700560612 686580916 102449707 476166796 152344362 435107710 131840735 783035953 918183430 971799133 695147470 751059834 869420904 626855203 54030047 233830378 441458387 189184978 31320062 268069664 275335204 378648112 78082917 315651634 867769038 756238060 747059400 787456809 927515778 730370808 311713716 565943366 796746516 411735894 367824871 116544162 960985879 110131207 5711284 115855105 468022374 767498713 552529860 363232756 704981696 359326557 639435842 524256901 637937610 321952728 106944383 618896395 713269673 556052230 512712857 637882389 334552527 601598387 704349437 684975437 632894217 37326880 704090852 576258383 237771896 872570352 183138151 41898453 875710414 152028253 387218601 221342175 535353198 634859816 8327100 244658568 181266282 52037800 171571376 800329750 258817696 916236563 305765374 63099567 679501539 253492144 520430131 736952135 490629347 145467223 149421424 299345067 189919549 216364042 119569457 999587543 255371892 488729529 465311461 153518455 925545316 337459181 945221617 83001895 506147228 233070047 847797659 705660655 649282693 437959666 806575505 122283730 289128453 671455470 839071510 135611366 286755324 949259679 374009825 589453626 936893718 270624971 102697671 60843500 768495814 842558068 195626233 457173263 61289465 39028076 264765702 376518065 847187181 954911844 398117145 331667422 593209548 91823342 269071298 655101555 732191768 987647068 198608383 307582977 315497987 185831302 901947915 215195081 928171201 382125410 89110660 632088362 341665865 145202464 902201182 39829958 877299551 244084003 318167257 495540262 642449310 113764384 53144326 961844987 467681948 513753315 479649096 740440922 387575208 902798699 20501177 613254608 466032 116359232 242735644 118450845 48165956 299460067 125558629 660593392 661533162 334300674 714921434 5348619 133749 167635541 445361143 739400090 857482010 289560060 743316961 833596490 455332003 738719407 312877168 16540825 271113458 880917857 612169811 74048296 485761930 343388504 52078880 262888564 200089637 511893950 649876595 773897700 662806968 792060375 740105885 227560260 533407027 942754605 591489086 119271422 350282745 601881998 867692465 206054614 263352180 669671538 729054107 437461673 44680615 583758864 477304828 479311552 667254187 181921519 692805421 638414361 429207261 172650558 444155835 217455681 14971167 410398572 352151516 756875044 370846068 446609381 323864728 103884598 765369590 892502375 880424822 528141113 754837289 951418869 975566379 480255930 950048899 40296163 23181919 146752732 271110920 542664086 548937108 996364230 127718136 537255380 410563210 395937363 845019671 484906680 303786302 832767577 791309838 743917320 904711025 809909321 179179560 656236955 289913915 764379613 653053482 959411195 961392924 2873156 792977677 718471678 435640875 537390618 386661006 585696469 592853206 214103407 75620665 571935987 554702923 156219199 285449805 713378409 850737667 609839331 391315524 218412293 746883046 127483931 348869390 687584826 595640969 391048627 159974587 953192159 204966897 670076404 771505045 236314596 305794319 923647963 999433439 114416517 422458349 502936349 963762896 940623636 751629856 508991936 40710052 961279771 201982067 848504741 76743491 658434857 721657184 300424446 258680167 679977247 699070059 672097305 579899571 835385392 163765551 476024554 828301429 912362059 343828178 990928605 26923587 208100674 897017721 175641381 485826473 521947803 193714680 464279183 196894760 888288820 367804878 647235259 351538320 252048331 228653 139635459 667825155 519501616 69522679 846875649 794079486 601635543 196563725 549017772 206390725 747953062 159996908 578919596 404644062 852652752 187320494 458989828 642892550 355779098 339698883 448974778 571670509 495482021 503728540 632924320 855996921 725189057 654379609 52721348 50740516 729655864 163683955 147581948 228254670 114022828 41170545 688447214 919010463 967289290 927644587 431703615 973166673 846961471 20304507 424614449 32757636 374093809 459653902 431049564 242534347 583418340 749461663 650714098 644558491 316090375 254560594 218732576 701429499 918732527 49833878 991759037 543073489 273856920 555782311 81440282 375404305 965458457 379329733 236465428 335142599 500558935 33341218 941420801 860420540 751581350 385315823 129585469 350083883 486056332 476855477 967648436 326201843 775338178 785464546 603689631 42822953 431794771 201147646 668855480 105412917 961266898 510898044 112693602 819876404 893872470 945347062 8055064 283022175 133788187 529081992 953129614 424526927 327184560 252490461 437203444 205787830 233247958 670891990 831962687 550374254 47864361 668251558 901026129 194530350 524554358 19259770 145288315 924919622 713341695 442277264 704146159 189333134 723931828 261096665 536615173 474096501 896338335 233795624 559283469 402189290 476357485 931842998 658719023 808515464 831566903 122741388 720512775 899856008 601532983 230125358 741454578 557840491 194431901 819400786 500550262 400287500 550644046 936160424 925414766 798731116 548090455 73611064 817153516 779908479 928751997 910207273 608559078 118726205 373134177 948847900 56718705 22483450 796710852 669071542 100316233 90535065 736787264 887958869 721684124 778974686 931976160 678124745 764447596 748323598 345333840 923305923 939039679 440175811 601682682 91733159 402379696 702322877 813331255 472827271 282782845 142405657 800618314 717429229 425756157 515657480 453293797 511951987 443416562 604298527 747112420 815279175 504033144 600317746 527359276 39296668 903956570 689434010 831403011 599007502 812017123 823961433 161755684 385995413 204032727 948991997 12963009 397586993 232137836 252658058 838681753 61151634 620514469 123044785 631750536 97426797 870630100 442334189 269204345 406819885 525196060 686064347 462870103 208017696 939634308 898788005 986576970 253097124 21346313 629371836 469663773 440868067 196819246 573447454 663697558 416387869 647605184 974889888 653925367 819883801 898059576 88926943 100332106 942345225 489357743 551997478 967798489 157783385 982012698 961038497 715778745 797839505 497195860 919543489 39940932 784602796 573572551 208153963 119270900 735782288 554528689 266689926 733719780 789229853 588736275 205596151 211506900 840896846 936686846 441521077 637954262 768224016 822389413 350135036 663034707 139645663 675331565 221447316 395880110 119494714 53412170 119345410 393110310 360678014 601664715 734946564 979408226 869041299 627414702 920356166 523742828 815898573 710473310 33054498 325506608 430940443 966468410 176563403 6499181 572376192 115501401 788254511 378809570 618621608 904728460 777711205 649936170 648903554 386577977 311506762 90103660 195814355 794038923 958447400 815948173 926726679 308121546 120364481 551087103 331952368 981370034 651623413 732139589 860785795 920704785 824706527 160733059 929686445 413060722 285207972 613919515 990907074 657990559 709687022 925830205 558017556 415724882 695889705 916209376 141651298 715380026 47553306 409090441 923556009 527661071 636814965 734458284 443594269 559905757 32197990 426986694 262119548 981372899 711520939 674992750 428289066 764787652 855864790 693278439 508047525 941096345 713153204 82316664 920456425 690106435 758264754 637447158 300345934 360689223 777270507 857308213 545762285 30960973 211519500 780764626 490852091 785976630 333779094 309279170 903814983 788265666 583544653 93356227 77859350 960399846 436856755 619157671 68134581 147291530 815250823 893504161 172753542 377027723 538311932 898331747 597316403 923420020 62503346 947840707 394273656 441261372 396934263 469683762 231792129 127818173 307834334 938590743 297421716 756379232 922864588 53905506 493366863 303026848 333607364 659374661 908003408 769526681 746752546 971130163 475986227 314709063 827478591 746121341 698503052 526688636 42145376 852842161 937514476 532348141 890126601 508266165 389109752 60351166 939389658 97027551 269906422 836784255 917020544 200836672 218439892 730880078 226220662 958137458 16935227 580660769 372920985 587328867 244377811 276320178 874496076 574085143 843727694 132474812 500816828 659334841 321118780 905868825 685648562 674156782 559948865 405436212 159220841 624481807 249803202 49492290 661840684 743822626 221767249 300353521 494210087 150798321 194700675 605544721 244793294 691272158 939837446 300488219 762510503 549809813 463056002 825051975 48399662 351774372 331493508 170255891 962473601 833837724 431709857 954149914 609418744 926842673 845782461 88257961 346560854 413102006 703715387 652125896 967875245 438205885 139967985 552092097 618450989 603372202 358334671 192982128 987073996 166874183 827491069 556536186 189464142 820493012 699393127 367184398 854275186 432595101 804102499 316634443 739917542 740913165 240690585 144456778 44577372 752210972 792156055 817850366 300346897 664272630 56033686 220949241 838185692 911575367 555625530 428690832 810810402 846413129 153351797 814211871 800913611 146282706 106635309 996425410 38839572 73249892 431965379 679687420 289358417 552216904 843672541 273610117 714951277 956310037 165846597 794726993 529688319 223479476 85197182 201514183 91876634 76389488 343618546 661078638 561381674 574285344 771513787 363245382 600314606 50016693 883958371 189585147 544336916 946722811 613402650 937202505 940182337 629638307 629606601 925550966 417179820 746639490 721357332 961227373 990910997 959896348 910048364 814219447 860399304 357861691 536268713 240169438 726505577 946463546 866479029 266762099 555437206 351286345 183666053 158484315 692280887 484293393 937840360 211825380 638729710 845020755 579980187 945463232 186187884 415318910 674931627 678612547 279955086 441367503 927094374 228633540 398970918 685382971 681068264 801140001 366730087 452466151 570916474 698493180 258506210 905812086 526515711 990064585 108039915 746584548 785405661 787578370 73267055 672736708 390377003 458583930 617298797 301320991 823147297 439142528 60807545 488370534 675293240 526239824 695347743 451171821 371430125 402911319 183388807 1478190 303642154 863473320 848499581 676501265 558843887 454272989 216116490 439078828 166620571 595792282 213432717 177115799 139354185 528975794 255288546 5735733 442569154 663696574 109892325 595640512 451882531 269060891 653812406 31815589 64392326 616431141 52524635 803327246 922506931 785532912 944567533 949379084 26611668 862295736 937513735 795671671 583090578 862689367 182410381 473071715 713255861 120764449 439958863 613456340 568451457 587646884 345900819 992560061 280291376 731306956 866701793 522199406 103186508 718092602 240618070 913343134 919252361 904367875 452802613 589198398 213520607 974388283 90276549 294570398 823458979 391273340 506057485 133832030 62448940 350131027 612550690 252949004 8037791 128705291 403698177 719204047 826695260 663230240 419995040 873970024 830061964 762821337 161479465 704487884 202320613 482560935 716810171 729427118 130054359 811917721 263383934 856559511 645370339 228103686 290246472 971107580 433254965 327598593 601554864 633688398 415719273 186128892 170999359 771023702 704026393 27918198 963605501 584309685 961118621 25608354 676119246 166124602 674002310 609078452 805346731 921072429 611750914 342344129 898925099 134800586 260776956 915818989 364248771 274362793 238369763 488027760 115192375 302331924 415015429 70183908 19284392 585098284 995750006 571457744 180413730 343565735 10087285 489088074 487741022 24621030 50272466 985004462 343222039 349597758 44848760 687321528 915041702 392389042 778980676 441378857 300800647 551745348 406713577 892735891 641479718 6726279 388248264 287418728 231752817 669376693 484972305 251176871 432014922 465194668 8255875 2221265 4517546 483379514 797855845 631412663 800411128 293414159 465330466 163852059 869345985 550982280 673769715 779601259 854477118 455763788 802631999 336895775 48692407 431277888 163764090 863665776 190929816 869564863 608360199 409828677 133434697 128958758 612263101 18855454 908078613 88306631 624589025 312621278 63684205 985583061 100694251 903283504 478790520 539421405 919046082 158457089 438357516 965381212 250472933 217338538 753100436 474699146 311984790 255974964 178000048 760762398 413207511 826178393 16983717 252324673 564477821 166965232 932027397 775491654 789628599 366202382 567364623 530505536 712250410 571388860 209434295 813358950 565904197 582816244 985599376 462253399 103135409 725373371 81246913 792287293 100514760 991922134 858962354 983687880 756504353 134109975 138023322 343278483 178559992 232001770 132973510 649118880 471541892 818413912 897938402 465353779 541575630 384988433 582435438 616514415 900692015 220052042 635111869 261307267 950109573 667262087 337164016 852458662 311432111 518996552 714423629 627755068 734863993 240511668 162820372 778651490 236592704 909418689 933664023 577392910 252141236 450460489 431395644 631215592 4485190 963790328 45052585 88369043 519632420 567775987 50017614 906553590 329360861 767447600 67628406 667227882 422030470 385134782 594492943 577867233 459383167 546397926 584754256 19302302 851246625 159061316 177154267 545815221 16080058 106642624 232439300 56758038 69831730 395501689 803753424 146289091 711799889 772118305 47600119 36915233 396671531 644477316 471973266 894631061 86982501 482523614 282577898 558983316 39460367 294827565 348034932 254740399 76284626 599596915 814485532 89721771 522252302 657861158 307177114 519332014 717547749 309655984 956996198 20758560 625333713 246483925 338862130 385215994 100629932 959276411 664398226 264174992 780793688 37239670 393444082 242698790 608324279 848492156 954678528 648569774 244923478 151490140 899103022 162162432 632393429 683102906 135487651 842612216 896138376 627646455 648141601 367690280 589247878 664535977 758580049 204337223 208605959 444152347 519939551 636798451 846319768 938293360 698131930 254020171 359009216 288068531 534580524 772127662 348508538 790446318 689636504 876081430 2344035 530061423 262239706 413497560 636665036 460431239 828664535 800423391 622716432 617346402 403157870 877893080 788917985 759358835 243952357 639284701 612545532 899267706 647421464 335016015 431261526 586525664 541502235 970191175 389737109 970705024 169579953 276573563 194662782 632521242 812894993 898088801 941827716 42405351 263021977 186878632 816447798 55421506 909789088 625085852 878559610 844635102 196850561 826747521 496006969 495279524 342859874 786454186 220063421 201970692 851124954 45308762 134591478 875418383 582565727 393861465 756312257 426317749 750885960 804898128 671297128 63450695 588107810 528198212 189536905 834720873 386895719 883224400 261980765 955882570 7892366 837945172 840876212 881852462 235863259 593532373 129532719 801606030 99804366 154493701 550646990 534753117 649738031 301012432 847502451 909436904 391592535 880826500 383009857 402402013 134208370 940119328 12218480 631252510 964875552 267686449 492040591 582304588 585702306 772349223 605099035 986109664 251939129 352521147 299115538 351273923 70898584 269558350 442424475 858760932 211304075 693838162 402634262 127873016 818641457 839126329 187720932 961373202 238410432 273075106 10115979 659431182 250574994 320910185 615574086 303219126 535885056 455718924 338062138 413096693 576965473 303403870 350146007 543795250 113068937 527888560 832913824 479331324 890629802 990174468 416734398 914654751 676487982 447845297 694787807 552622489 910764036 899635859 35031258 963692160 679007470 108522106 212831678 17766385 483198594 747393874 160770522 635544180 424986899 845187511 400859163 829856457 217415314 960434695 24998179 409679717 471721716 621022886 567400303 909623549 922109379 963482517 317383057 963390727 983181233 412217008 206313719 21238729 551473949 646966250 974291385 648517956 493349366 466199017 666926838 187604821 413800668 89987817 578819392 246418649 29191693 815140521 985442128 736267140 565653935 175478275 814529740 919787237 543086662 435205572 794306047 466394224 259808597 170282669 782617641 392302383 727497862 788501118 595845664 295092207 838776959 796570826 339089947 120813553 123150471 26426422 433988551 764017646 453383941 242420614 805380023 869061640 30121272 112036017 379084188 301702223 335792952 267202183 729752173 22238733 661042143 199344214 946196240 496167426 292391456 406235732 851479373 66272064 650405777 930513409 331911544 688961183 69655312 696349399 969821508 249534445 632647454 792085581 784019859 668731673 497698006 388234220 967159694 325429847 128407860 919400384 442799171 857024953 878740662 715322854 551286225 586039136 749577641 987249653 829136757 711109538 694098071 409033502 19065545 260064164 904848260 42104278 814625387 722323424 540931727 406970134 238706030 491089712 2154509 751243937 577009419 344175035 915691738 893989081 130613091 584482391 603543574 211020992 987900455 85846663 962407520 368822820 164287193 140359687 32855714 545951613 412998930 590865275 36527244 638232829 964468102 406303512 802106717 374361096 177532093 624273975 592900601 517133330 297653838 300870484 956405684 785323960 185944038 355933773 727637144 549434320 151948554 269667815 966773615 263145205 907550991 48068713 785077117 905151754 336613372 993786942 249577879 604969648 572499707 772341303 919085587 491860996 182272037 184819783 143649840 847175269 852127756 88782410 699780676 135416333 386304739 738023146 178277613 347146814 889144861 159129188 311503720 456799533 780451081 243404514 581896953 240566735 81810736 872955889 818658513 88187512 110001749 255030357 426180304 955409860 59035876 708521066 798289145 721800789 769428147 518001863 545736070 832676142 686887706 77128900 96959992 36570200 843801844 771163893 26329054 144336655 140864479 914210612 830798435 726127357 173772659 963448731 787060453 709186267 212301865 571931793 777317908 963674520 671483121 452684618 122104672 39612295 228280899 796714908 83739632 579369038 244581897 383482484 64752889 608624030 887951276 96246483 793055080 620972761 660546730 589113908 613988897 897685822 22326298 432418549 725973526 858759871 903630888 977958429 983640335 944060902 843047282 262198654 890668179 782022429 363057209 573073952 702203006 583084623 160726512 933790548 816692908 749958186 88660914 83705135 359558971 19404900 675360036 83693145 769032028 241502753 803976496 710223449 828589712 379636721 156967139 767969850 76794857 930003689 744061168 737326766 107549893 218125061 918265006 350960567 612442597 565223803 202867056 656870378 242516802 302111983 843684322 906895570 130837869 394597084 47401127 426831930 291993481 332857209 122928200 888034495 615799715 989118671 98411687 207448011 431856017 671390300 949307276 297475147 666661771 143822111 974339421 615887656 49648327 487990736 594327930 440760004 719507806 816178545 89598486 406108937 705362048 61490809 308626651 667636979 167366880 779384758 234722425 667720747 277099482 507660234 327947435 253068247 336142360 808848943 516166712 159553369 280616767 208539915 747002582 561801926 288606425 400833339 21995184 210158193 871659332 411586474 134143662 815534340 514100385 206091223 393614706 558714900 863773291 680204195 869835279 677483639 273953985 871760682 919720978 412051823 670692925 141421583 435499546 571525597 12818924 616302735 683239023 158402813 48982863 160609213 840117279 314697771 615953731 795067955 962597971 979397171 216913477 422854104 795683178 434592177 923891406 494533227 515671569 482526195 47459353 343913405 319429771 307958235 854817560 622449239 451467504 570169074 210973642 654418624 860382577 201034975 671570228 862199599 358138083 97922821 245156067 884854746 114732731 664571737 158205300 284524070 709284186 990330341 544595245 931010251 115622791 96498162 385321123 358167039 779408262 702213521 184206920 79991199 193658269 96418269 373507535 380068640 786513957 146108584 728678211 18968056 674372692 188669421 841719318 36389569 374587152 968912561 324887564 663785702 1819831 337279879 223536662 250239828 922236602 935905808 474487109 846833377 140430450 496243454 154926010 264294005 39203198 931272776 687144922 676379026 963775756 541052069 912196194 933719623 488919223 575545175 521828441 714572561 714528175 344379673 906802712 260376653 239018350 349517241 514389270 159426478 270858814 418614414 847943034 874956148 209475902 653161042 599671543 576811801 494525194 876547344 404941803 457585351 728344142 900384207 79779123 517440409 379264632 594131687 348610245 7486086 648742897 53725831 298461678 550168810 372417323 975350367 711621441 821559456 211601759 438759615 595217936 750535031 396199858 317017176 635900278 144235030 850907105 384928736 635031726 15482784 86093149 657081143 599965609 212494355 562580491 673331363 799452761 605953285 624306075 826129789 951031218 339257412 302514450 894219497 120582142 256140325 23594687 742222648 713065783 588606108 307235437 991042145 808567012 873848530 709742910 350336226 564265722 650639670 605066757 920327948 562815505 601594648 87951969 927332946 339870760 266746379 405725986 363534696 407942104 550612758 431518521 112255634 416117893 756079701 897188664 319392497 88237456 758330793 112909613 489865441 969686538 612305370 434315873 273170849 708258198 929549050 663956215 843805613 730259859 213945571 474045188 609843994 213692033 59235291 918965087 29431236 766768628 55343489 162668778 221951852 478304096 64420517 695918065 69062672 293013695 200950274 823102548 477712825 222363740 914177045 974437354 6886036 808034385 892550011 498740129 722777971 816778195 333085445 722502227 406839247 761768067 822969703 612343761 905630711 815585952 899360835 356672801 938930220 907051709 928084354 613909192 546111986 904214839 424267853 489553281 660073940 638707043 116188293 470103687 618834011 38750470 125723142 475952250 651917398 95685109 592529792 883622465 553617287 782099625 129243465 169204706 799174952 525407317 564101335 41954447 819174856 216609551 984175986 807400537 235396560 289096771 105354920 115975956 423967874 81669136 804246518 434983835 287718819 104719406 412114122 204044323 400623731 166541757 530651651 861254135 862718665 198277982 905905374 418003273 552475703 93840802 940904686 519591445 571554523 950066825 175493080 788755711 50551117 798270122 79138107 74274460 567526266 650042597 971018259 776015174 724349399 255570015 381680988 962750849 377207473 287838808 401135120 23792427 548664324 433678564 890692810 622071919 561411065 400007338 387153269 583593534 395813712 166549164 816796506 196198020 734376468 154998011 86929323 587633339 679916003 662456074 585466514 622291712 832464485 678115101 705105487 381742310 462431083 526389038 258395135 533618560 407476310 516435471 636069784 803379522 264758634 252831130 768419614 116270653 936370513 741119731 978965331 129544718 139736763 282788441 491607586 554511509 501521528 780784131 420613088 456203512 718980912 97164909 323627970 89773093 873885533 722070049 95922298 480027517 728381956 787420405 120737224 465323247 624030170 703353422 518575516 112445927 906359127 766794791 598113308 678535757 732219719 277552943 605419 981448867 10629063 308371482 128660202 6313618 660774441 740232043 706480578 840762900 611330713 968417935 193995608 200218553 243567384 720315594 263228479 180765483 234603282 309728900 106039769 189852102 572275057 388145132 671354757 834097353 320262601 43803886 527774085 940009604 695493344 57781128 301044903 14816491 606851619 241507627 533654620 570401339 655573189 317260855 470759748 132834126 155440528 176283292 604433835 561928011 613489237 864806477 794907337 420329913 256801077 73958757 483316404 463161290 555257624 749835084 711228247 722955462 820538652 680802724 136374743 741068685 530061351 572608455 811215387 884980456 224811875 710785189 814696575 481257510 331404147 513310891 423875180 40489405 736617670 618804266 576726146 225070474 190793821 539949762 900173813 601850404 122653200 109140186 105421666 32056138 555826714 707134514 883322539 253780597 103663563 709819898 643855030 258719493 151078728 526061145 81442826 62760415 879877373 224105014 759707247 406540234 368352836 234481318 950251005 525783091 354039133 671790456 141722855 139043580 280003417 624795101 26514848 226759451 938605691 799844325 374956326 377056075 333906439 815957716 976341101 864471649 771117993 18571100 825614492 321079397 64690557 794797937 802800452 511746911 257459301 47570881 708105251 904529898 201844652 562802289 693344982 788552831 76236111 317224487 891666237 897863111 965415790 440859431 793547062 39740194 928028524 927909 525958340 489507738 990235145 269778602 311156690 589453463 27180707 759303625 299499990 649377876 919116555 388163316 765665259 898529160 163356455 960084046 175003281 328082064 482315065 193207390 823325206 799839763 547276482 966112331 888937541 4774452 377769871 360286637 847645324 954463379 360714731 823350304 246680211 762905704 282309392 711129957 824459933 579960775 125893616 807510741 165136916 611855429 361006701 243058935 793505516 34632121 892018830 267284725 51480035 833612222 836266182 57810691 739020050 209048347 392162224 669036828 95352082 844217167 723904623 903488661 696334784 178017240 467339934 192763543 881225243 254690134 271007245 833782272 476226296 948437419 559003417 972001703 870551574 290005709 698836942 698358265 564940505 274418327 614445143 572338761 394815001 699761599 682305945 585802943 922182570 272575464 743874650 481709262 187400126 71226522 971855558 803144712 452336417 921919839 676470787 524515798 442559907 635103028 42881598 785269979 806424618 874862761 460055081 701196048 156840007 713312880 679790365 635715754 284912460 248067651 476322582 973611110 40828812 547446030 926730804 382797317 647808437 799357446 154379003 935483023 983933600 169400802 98114328 469192849 134464605 311630851 332414622 580009974 900681910 413959697 18338320 946372999 251123670 501804126 474842556 398242776 681175922 810301915 611750911 718772631 611214090 691503966 352101718 321972621 101916288 396317675 225546362 16931960 472888327 776860012 15939932 265568132 47817593 443239791 425477503 93011109 825214580 116868708 961240698 955780789 336056762 393963271 594639198 778110947 716486169 951084695 631637405 137139002 817762898 727316259 49936225 739190945 205721214 938118361 625532005 438538666 435448409 950319562 433790855 698977632 481339784 780558633 667786944 961963257 421825719 128523827 972694910 488961478 51212017 585773744 940022948 235328049 756252910 745996274 847313591 171648805 908310977 549820426 516808539 969566814 111746103 533501780 645334114 383879074 786911667 251878525 132419483 975629344 938391599 43028350 474998415 368000138 236622507 326546602 611793472 496115191 19776021 337344428 458152889 972168929 273558234 256166993 72590475 821160381 990195302 773236251 239230577 643313538 542935163 979271291 377888999 296199672 939583730 448997601 301957719 225950765 719345947 567771340 732637864 322568503 962272438 950702948 380638493 515966840 8676326 731629642 415047815 338471719 790592344 49840398 595944537 311413627 631355514 403512098 948769041 450653357 982298909 112410213 207681263 466854900 763864053 457660253 325158138 432381385 544239604 941917900 161770783 320705422 278625524 346998193 95954820 782049381 680210223 996674544 327605013 986310241 794925970 458623339 612294973 327499790 881367752 275999122 693643519 778363175 875717860 410641131 311636240 955432999 807037217 763866873 874214970 51096889 785126788 393013425 179511997 320437274 568969424 121446338 620054925 8470008 23638860 318357421 108857610 727325337 771242132 791273339 48133439 185761294 940300991 676596479 756641787 48436427 147984012 867168725 716278893 130356680 581927514 725469856 14832820 915887802 56266394 111113724 313300318 219579778 604350996 739170363 22644502 864639055 717337919 732677201 761532389 183397603 438629649 385062295 26352108 897910741 716340499 420875764 915263955 714857 56310249 457694808 896167998 960057674 599334030 803215724 830151771 863010675 147819657 749514544 934557242 947731259 438645250 969908384 184712404 855518362 146721386 473273829 422428161 439160018 918593596 952855401 271196079 727051795 869819536 925368143 16053540 258784280 910050777 949460418 485433867 881214793 641756776 808970491 737273224 974059579 968357477 990194379 94975695 791159528 585337563 956860596 829039348 895255333 109313598 437112732 588559968 960897939 839387599 853320329 687611350 908191965 775839850 953319523 714860886 798562589 236057757 376429935 174048770 242769873 571033528 887827673 542393858 575674438 776668048 884920573 394950858 963649930 692153183 844586029 446434987 947665118 149280621 324533670 449956865 469240805 305304369 716508767 671486460 811060439 989123064 995596602 877719691 988005822 682605026 720568879 647273832 877917156 770296931 799328882 758759976 894669852 725598048 837131659 753990014 800555291 150007064 772393133 438837899 847952748 279959742 859561886 11256244 383100945 563482027 786078179 691844393 784453734 721204289 893773413 303486544 525811683 22648415 658825970 510836234 891902277 432948082 905770242 428972746 734638006 380406621 383470205 744231685 851684567 860389693 977329935 792650651 955990113 326828964 471567004 664949960 693489735 589006836 823257609 457043813 530221890 718657130 848442852 187816993 416517652 646762590 939872460 933200979 961372399 416219828 584890826 738030315 894755191 116800929 866731077 366105620 585084765 740932510 885022386 83886536 493289470 723259855 945434300 774857708 978411513 1854106 784326208 9747599 563913648 364921278 861499433 707888221 754365087 898240965 939486874 451517756 839619754 887816948 963540138 918609333 959146004 3178771 682425225 290120470 780451936 698254824 884323954 549121221 749863673 209745501 679783590 907585355 961910449 218211486 663832520 590386622 740345575 174259879 238959258 884017642 960960989 537136718 631605768 60421761 870131944 469783664 805506610 94898235 649112498 305557422 394067401 783261045 827023984 296030497 666965495 628481079 922891943 381927179 527415169 713084027 867872135 470074961 755171045 375129119 471262433 106735017 569938151 10503520 153574669 537350433 776173161 445747162 888162511 401086146 819550841 583072560 994666318 156438860 163890742 313920820 772664211 177099430 865419430 403513159 966569355 309881589 403413146 663274575 835860514 739468527 834592741 376016504 891541040 43549815 473659706 344512773 491491402 714149534 787042998 681086628 811135722 122903125 704698221 394775989 866355974 926059592 991492086 284905332 314573158 992735341 994539165 759511940 808833895 860207580 962795769 742766955 750747946 209744719 817608496 949813412 989036422 923220696 979659026 66757219 420635006 12360152 911852579 907070294 990906156 85772202 627282655 925428309 965710905 968830080 994539127 667002301 760446932 25204497 740741238 753952202 906352395 690858969 730394917 270111474 989874613 81115292 772575267 465155787 830835476 825978779 983211168 907429573 921718379 795829961 845652412 966409841 979391975 644005837 752150741 28648121 892333239 185710089 263278481 323502268 418663892 842288160 980083196 584042642 630436234 462750217 673360266 918275933 992674812 476102811 846279997 332975780 583389175 323586291 369905795 328149534 332558050 712559335 839983599 553095061 915789599 986304831 995162116 598456835 899586053 102489597 805695510 394390154 732879151 590314518 712123929 33594784 311192998 393793182 571109072 971642533 993803137 356647183 637576992 668913178 721438567 50948992 531262801 255870909 821132389 931902903 940959057 819536134 856063711 884555821 932115754 767572446 944867137 103007055 945793841 797154012 900433469 672666726 847611685 113899644 985240050 919534126 941644423 205965833 288257372 290637815 716332308 390754266 732664187 585633488 749634747 238534750 682884033 64292956 892016079 664049077 985442476 388136987 819975061 292294430 521918423 30564145 155096044 163318296 431729087 370965781 920801801 955803194 999380456 410559379 589383799 681794271 727974313 496663232 566171935 600999542 984477626 516886126 784854656 987551223 988928549 789799860 805516121 431199012 946413340 353514299 867396480 610323401 764590454 42625619 698178847 223038912 827866960 725275982 908008674 310735498 477362274 889399560 985177193 752575377 756002734 272948812 990026218 561253329 599671436 979677202 984721853 198434961 758561179 7365802 924636311 527005587 863712754 369967353 910119974 795567920 907068136 950118312 978380014 179532491 212810517 148101681 234389310 853892449 892772307 980252063 985108737 775385671 950595896 15512033 254167599 97152686 540045778 356086439 696358571 246018938 774710696 821711214 962480762 796490146 922517626 756485976 781233434 891133118 915709062 465861185 565549673 922063784 942664771 639508116 989127254 36396169 503142310 756403477 827511625 493358161 788807802 675461995 888311114 185528818 347107081 447188076 893114799 819916925 894092695 503206464 806384269 46917861 138245339 877005679 975374903 161116026 392467442 442528501 796809730 317540854 941822532 906173864 935226665 489251848 693092906 699361853 981330894 385161725 894296036 363630034 571071329 675503895 726441038 940614230 946956529 830882999 958077770 128504324 346265985 99573355 205015866 176754321 460126886 996390623 996860356 390893175 478098626 637769946 961243116 604829323 667055972 885562880 952379978 133285813 265740287 51141417 920376081 727145004 909911691 442460418 448926500 777468346 817889239 62347519 639301450 851632139 963840676 452478931 743803853 127306570 814015017 980246680 990897819 668395610 885505895 251400116 942511486 627611999 899062941 595778319 759002213 996783035 999038274 824024817 969973078 343108673 825867200 746017091 914071801 667066017 699658996 729947379 771985940 419759055 586307025 471112840 477487591 892596012 979098244 896997883 905042837 726685204 919453108 551713219 921378526 735804416 917180976 581989453 588862510 805194468 861623906 687129816 972412665 703664755 781998598 599012369 962156079 315659861 802003658 183589034 349721820 714730716 741245049 17774242 766608142 230910369 976775981 686199493 714646860 698232482 794809561 416162287 658679906 782989462 864273700 792677449 991050042 200049780 652671161 269912096 368855999 269102881 835319870 180828401 362536075 251170651 601624335 483677974 511848954 360935854 562263713 338449569 568979058 582420776 774924029 935672240 993254414 168737799 791766408 439666525 582515695 126680030 327423185 717938313 724061527 992343938 993480586 676579132 682501647 15713110 338320392 75633716 773401135 662503762 969883429 708913435 745763056 446888757 827195260 464107193 487508104 265594351 332150584 393753576 818653567 234152362 906624953 491713047 806577019 995256809 996857138 972601060 978276888 333747188 625688017 863811893 886086993 338483454 380000599 260677011 945539289 191903007 356196235 833372512 883574932 573105425 802910117 999521259 999921290 515468444 745113024 22902092 848141342 785147587 846479095 788102036 861746961 239667986 572646303 848557017 934570354 96115847 690517310 506572099 534960142 187665009 806472245 37538908 890147446 494620956 892848037 491177479 627459285 975808744 989904783 625797976 991820415 732979949 984870116 711732769 921261617 275678749 553845023 34423173 645925323 19958172 509797796 629266100 880218719 963507617 967754919 562840777 600243053 188578918 754645680 963731767 988170885 52464511 318629125 867967661 989006711 686521781 864060186 159799650 579206513 718938652 896252769 217205300 542022155 58829122 134320644 720038471 848946183 582439050 916561753 221001016 328700725 612653929 883422269 471949786 690055014 599191924 784633517 761606397 943203888 112116329 335972864 53662485 249339168 97230611 691107489 188797756 586266380 104112866 135560188 528019699 862810794 314460322 549154451 957628145 979301924 80435343 252282354 972289961 986108321 843300935 913125809 747304947 811882338 245526893 801194102 456698066 876932855 476979153 689500539 195499759 710999765 374448066 428113947 883327599 940884583 715442995 813940800 379189252 885636095 990628740 999401831 687124866 788643085 414974480 897325216 820008717 928744615 541963548 989492283 722285457 921510935 9818012 338681918 349629984 600880351 279403796 758428310 78322423 748560407 100951794 476799624 792264499 816350347 949352829 963471496 557523777 721135531 501095881 857420960 347133478 445112922 693692936 807678932 579855234 600339434 668218364 801833990 123397299 187785427 13326658 78543049 102668977 171241175 440715098 452706284 925568390 930216103 775980882 910158079 501717988 821576784 51977033 860040597 190051791 791617514 959415285 960841101 763169333 933825385 83563153 975478481 183598368 849136993 787384480 990164117 649806472 896019032 464646913 580433398 268849486 981158426 641453278 923640880 539970269 913852658 44996668 452474128 545862750 880621493 280615727 944628929 182861442 577434385 212175988 696917653 876663986 915157382 402487873 966114381 835232046 842291018 865996700 970595151 533958452 614432277 93159054 121789056 747998873 907784107 318941570 813302009 346619139 929994977 497711351 611834933 175401906 710216749 674780525 771999925 858202558 894891386 655492422 788212436 123351773 422693357 540427091 665769993 443152148 671089641 418187205 757359675 433284592 981664668 468066509 733578861 53948340 232261121 937139405 946038783 15105081 110801756 646841752 677960061 337749532 965300063 955191354 967145162 711482244 961852214 885784703 895898140 993430598 999705163 971320027 998045926 636155580 763509599 765931190 794160259 261447883 778135311 64988178 481899484 313307091 506265419 268815435 463565830 314507588 998733244 117535941 718563211 871021007 996083071 240447800 881654826 698054152 881790740 454084045 861325767 628225003 858210783 53944620 420313466 838511049 925473446 220301982 706139653 434584512 956640511 830121036 983879632 199243518 376344321 994017623 996951094 295034831 666276924 544164748 831988055 833489794 891275509 942798180 998397222 439744650 828832206 601926113 605551998 784834887 865176520 626269680 635780652 526639866 621772824 777349557 950728515 360390233 675874525 425846956 627316475 687998878 721937469 907863299 992944734 452780030 687325888 807517225 878908205 235520813 306796651 832000814 960652408 615899110 662011953 259460031 583942812 502456632 527475849 53620775 928113367 681236118 725714688 706349312 805103650 108460715 423834570 954584857 978150093 204865979 601566951 369444487 952393069 294292908 334594897 523701832 925201857 728402431 925760641 415969254 901799275 56629721 911446240 620216498 867961728 900403656 910902870 971282203 993022793 945044014 966478962 419376484 703808781 443822204 479486924 81271657 438049114 390687742 770093674 20172077 163858258 947230529 967490628 88491861 211060844 16760222 547056276 911238975 973343578 189353755 496810060 863752480 892015076 457205619 723000205 774701959 868783443 632843717 934820887 148788047 210125884 73338801 551274757 597844479 677274611 304594388 315602339 170032221 942196024 354683515 516011125 890499760 915998602 425202938 818548831 610668523 849647849 75808291 983655442 841927155 931818548 759520160 909034708 531892563 585896657 522959005 956731332 109705964 842248610 843006830 892983406 809930444 931497232 607255174 763397770 422632518 872675240 458486049 737982132 6409705 425254841 365648132 554349335 176177464 692192971 73720919 849706061 509526759 708497555 467926508 540659020 787042899 823058860 413798447 907908896 585662375 831373050 232761364 776074441 967841006 989187103 33962909 257305642 989852248 999969083 5463590 29808405 188113413 600984503 312100802 872303462 418814372 812353340 380288045 543935816 820309147 947311866 345648967 464663991 554036621 787134911 610260785 647346919 826534097 895471940 544097393 990342814 468255470 511486720 364594627 611313159 950344622 957774952 741145192 961992768 981080063 992063535 66335319 159117106 452640693 996966139 25888038 209873522 880714707 933976955 566628215 635064648 153195488 932956423 552227663 970447208 644370217 803287063 984405550 987307432 903417719 915466429 393783561 567889675 129423058 836428243 496180688 942475929 300529633 750473704 161268818 454990024 687668617 931700213 908162691 976449092 823130316 943585901 698897997 700313485 760248878 916190669 892227071 985960287 830851806 998194386 351788275 871977041 946653080 969753901 131325115 243387306 578852470 697592069 248067514 507996072 81824621 597748676 530568048 850490840 72689913 119136168 255850509 984698901 442464919 499557747 988279671 989272722 688898888 868663291 793975157 832057182 697332235 705863106 289714951 801919881 248769675 796625836 56848288 197945844 241265452 674743111 537596344 928535585 172946585 592816855 672184439 926686757 89459818 810403500 522683463 620531794 776355008 917598471 165893244 507709017 140072716 537134123 378835992 603166204 791032325 972303942 678794094 936263790 416631299 900692482 573795239 602392320 353031038 464239381 281911464 965830441 885861313 969603169 938538739 997301939 409793400 562009124 727857458 930836401 879538715 944269062 160405519 707768884 783367328 969723052 675149173 698664714 985109480 991969767 728283732 820926504 385674660 541816774 6332961 278424198 994652863 999515781 449747952 705599347 77811261 791554365 723866006 829751349 654383721 861793998 991832467 992632246 652130994 733125591 570349880 866354126 674163148 678823403 758681845 905236277 452235849 915796865 308190567 973166485 65447826 953090584 536237488 835126979 166544204 798435196 817708144 861309618 851026187 941599584 481386670 721138115 56710416 653089405 988959434 995485799 839902629 996560420 804272183 974753662 492395391 575983974 137520561 895424548 816330573 987091066 480157209 688439680 651479925 763058953 782230784 904783266 312915692 334416940 616622228 880480441 125368799 854586369 125632582 156548400 743728415 804453966 77482636 733536477 276662679 309893089 78693574 219065884 789137112 876212656 489763993 843753357 913774806 971756288 409008851 940753091 47125028 216589409 282721933 312905487 755067994 962751492 978259521 982847605 550986924 698967495 359709698 811581702 425810809 544668774 863819035 989675689 21179713 45653052 925694472 953557515 642763833 766954655 880130710 948363647 274383219 355485475 607407817 787588670 798209427 876451304 540074884 870777427 806666154 995867527 953702936 968088008 975610024 986723746 982508956 999148562 550176758 657769894 235655450 707710251 17145670 331774248 234944064 882666665 572156011 589105283 847650857 890470923 925063591 992725516 958511729 961972834 676469524 858654168 532296873 772947107 339639188 579400672 197892283 432775615 572593968 608220913 317690456 580612361 872746686 987658337 954529082 963485963 740567159 869075347 940735383 998114570 137091088 509192669 827899084 950085613 278196021 993069907 431487739 776208297 287520713 654107063 260974336 777813129 9592515 655073990 915366541 938472874 216606196 860263817 811003660 946579430 12052347 963466043 667750030 744570936 947097239 982926728 697712785 823547160 723086757 961534026 13537299 946623206 889615058 908383004 689722097 988547151 637474134 778998429 150388536 548442101 63525331 229431113 790487135 994912242 660485691 759326416 162646751 454696115 693297670 723553404 910945136 919042110 511043511 679709383 984944697 993159595 861652369 977198913 268298550 478720634 166138847 896427291 543423542 575048455 934555513 964613316 165929241 279806610 629634308 820951365 356977256 413362120 404388805 859900574 447918856 854615607 416393386 418092504 381539235 955996672 855446695 935604364 360596470 849126563 801042939 884265389 936072760 988493214 829342918 862890076 972465488 972925212 516649291 653190398 957120256 961391338 605008982 638171112 214956291 772122509 306938330 715471187 66167476 279895616 42291883 519635946 495594150 859830049 768911606 854316863 734846556 757585278 639640133 966828320 256505998 352769111 479462473 975898630 341168071 909538179 953887012 956108674 570979918 604518786 504966043 839403818 698582747 718004880 419767614 613941554 100487770 458941912 450172131 706914141 168735221 854021615 177490874 545987711 222953355 752279681 792472817 923772376 74104409 191838214 325174156 624724713 832789704 910020314 787844403 993575418 328085378 692893611 988207572 990694984 764054681 806915546 287211954 349853669 164077481 849873422 400642253 713526923 902096711 942059661 339187839 347874051 866142922 971217505 388004213 649884366 603149287 660959145 761063853 989307588 355574043 896926650 671341697 853663363 732978611 829888144 864219536 960268947 46908452 115997285 1496204 513517688 734945079 796352170 458916742 656465575 899723685 920714287 317171327 621078847 46396496 801630404 265970289 617225204 94763034 685542340 919378343 974523976 397792641 430089887 304541333 687715232 885947695 895672859 233161523 736627846 868156519 899365755 756694570 830816113 84334061 388411883 918679522 953134931 507238180 636919804 200519027 307366204 344330068 867978679 808070909 902076167 46771971 330070300 544773580 749444298 728040794 873576906 829656777 995123127 480985655 645071520 469628949 668780018 163425531 606548250 828962680 918895318 260179660 708303427 425970676 504359308 47243935 753417417 187081467 695958627 598194507 601358174 353857342 442625269 786738702 958205261 430969958 854979566 676161316 937733756 760744770 928770932 370458793 379657447 367759665 417696436 144574603 828579046 553927583 880252628 297753733 782044297 261348521 388009692 204754793 515814703 101235242 907303532 119452596 520613340 837040196 881778809 107511899 278566427 234708731 987145402 792879408 917653093 240730618 808381836 359111501 942627474 963373846 971152248 115391202 504254744 750105584 970064279 596080760 750680033 776109179 848451187 141959583 304417676 113746117 139816118 127026265 926557949 694222367 751354502 301342151 304877302 55269652 176445039 655702962 821100568 482400906 939363329 598252587 788447049 534847507 585002552 651245611 700573868 558174958 888007180 457247650 677242041 186636089 564815606 641331385 980276444 837807406 978377052 996905874 999648651 622410134 810033596 877332931 954648892 371880333 373808159 474558691 624978404 104869362 165412367 603966707 887354604 562029070 780185195 906238247 988527817 426397988 860987502 422039086 949290564 825927686 847142135 356226973 923889415 457210758 893083464 600720546 952475144 513709154 978548198 375606739 902782792 571339874 923413656 365489343 582310031 527895906 566770357 60894282 476330727 556203227 999346724 166822849 517518975 990438271 997221597 294941990 947226207 880628406 942387757 757174058 767033154 384690334 724859096 443614770 569862642 4023899 990550346 95685195 275869947 189195161 493425577 142191690 689572802 813511739 878232304 359629335 361089618 346876028 451492905 436551726 604446020 340031850 778852525 292762974 781567972 543089013 945308584 351087172 757361713 446671784 487237879 744254733 834045613 175044220 720186985 13526194 988884077 822795821 908678441 595757145 856094287 653800127 856349319 253672496 368342158 310733600 988701043 417919916 439665748 862250256 871336930 763102044 875925728 86001598 116845349 973376068 977965972 841737585 936043652 648608664 737435765 188767883 337129879 884823100 944365743 560468869 898417955 436238457 609570656 710807518 720079896 838316100 868703998 914508426 981099758 175382254 221960341 964072770 975954708 276220897 297788681 895746799 905814946 348521655 399584692 591398249 692772131 901965629 957597490 511521053 701011678 181564467 890700688 578618237 806406257 805816899 854307125 390319264 652961443 596204420 713485321 930684109 931287400 924333214 993530664 970677542 982480590 751800857 819688300 932101339 976704669 300991849 398717668 831623828 947209103 890875258 903879374 282486384 776033682 288903240 293964019 829746940 994238647 261968795 575520042 896963460 902013303 591078144 990691624 15871870 942868199 71433986 263557718 593907432 607522011 403898528 873596135 223092643 856696658 158609382 767579708 469538424 815596420 956630367 980964793 448961894 453396033 640732326 919478102 87331412 944916031 135351012 537414393 504208259 720242604 569943194 606032823 376242060 791668014 98439050 909989207 457778634 977435828 597718450 853552425 149217630 662829297 254870994 745432520 420171266 619668799 765098445 987611949 401165817 953641182 372622089 846265472 512101033 671801059 954665219 968018420 933634252 977929415 835778285 976533956 484825405 975357380 996922414 998221315 411963634 786160092 372951308 395614372 518694082 528867240 514869904 916001105 655497065 966000739 268518058 654490000 859145479 900551465 192549849 885540820 666410269 684366252 329999262 803979187 246312999 812464081 572550832 887789280 864414200 977702300 475135406 913215909 139994691 325603760 91126015 725155348 716113550 998624181 659757116 975923602 956820072 961624047 249949438 469166617 486429029 744748206 987820654 995090086 934953984 955629520 179787237 251385876 610127845 952724585 987712998 998461361 611881491 965196192 426599827 802154214 207678916 793808537 690063874 886229334 544402044 946097950 573012060 715150729 811532915 990815663 785116921 864422852 618699750 644343822 456935633 784124950 373074513 741243149 183256296 696190048 439574837 682749363 156198356 940959213 769563354 806537795 642945231 685123019 691107321 957049118 112633482 415620751 146580719 158611913 69659618 138026361 462037017 948654328 243362156 558310266 373718437 477380353 916496090 940210185 98095925 947493854 985507830 991002799 728423039 906140403 197573660 669482090 81816810 454139166 61431880 194127591 675106632 842426409 591135847 867992595 281073230 343259536 561281395 649122651 355095613 866564292 103416318 944889430 483284318 841915170 584486470 729253027 138451330 706497247 670110153 896707229 389400129 851855293 859958764 969274671 894519991 954888480 28092975 481114396 49945757 217143409 744204914 757455949 322469478 385957530 841119577 877172768 290454513 380663931 231414080 972220331 833110936 987061019 878213058 889044976 320316027 907517516 350598296 802547457 200849373 312729431 922582643 927825630 104053779 513174086 116897665 434197927 128193580 422552994 5996560 579545994 674228887 894758429 188555536 959593131 914672004 920881855 760608802 788179669 790599603 808252186 741970835 933151767 991946803 994371777 338953463 726580960 600435478 795426182 900174715 986990266 907409975 920987965 85292407 901344195 110870709 130674024 103537455 230660870 668497020 770451522 829670558 905885862 686125614 928757388 111581074 477916055 543045835 989752057 169139317 273042147 673950558 984354682 179098727 351119110 898848906 916340490 241091012 742858289 655021305 679393815 862122660 946727829 354070065 566222465 989068829 996472038 329848433 360135549 563970199 811353320 669775032 765843257 858477420 885421146 187431584 723930373 386864410 930863692 705278171 807795786 155216032 493302067 77234068 580912462 436885682 644511603 192288164 991844620 656224332 909206010 561129588 683550741 507405813 640827713 265871094 877037883 520944469 588016118 464848610 677890478 510224295 755371792 57600048 737101004 332798674 870556723 201450630 526965973 519785056 588693877 705347480 839864238 403891103 866084819 640953489 894833065 311439626 902542150 683658735 798911536 783640581 784234848 633094032 733225744 349880677 831494613 428579280 994688022 428502000 816812664 831528059 945814902 524601625 922220302 329237617 512435106 200177818 891876808 194177910 256987554 792260834 793690082 133546455 735438115 48389901 860966325 763968821 965997258 800792386 877128747 169816450 847339409 403838833 698774621 115299483 490064250 33227053 585994814 658155456 761546538 411182165 911693327 541822271 701379329 800147515 894157351 222495471 614260555 174240298 673390022 472026706 823744609 377235759 481963603 199839385 636037865 604922114 951063312 136953105 861159141 594735247 814999812 53758238 675865102 741408642 860171651 422248049 786891005 884622808 936098563 646174530 996141351 916309603 943260770 346212387 532664153 358708154 942975868 524196688 961654733 670220173 814072943 181329055 581431406 135051701 732290671 971267224 996616602 371735112 686180169 757271069 829261676 898201074 957357743 229414087 628352298 824016374 828915414 452061850 550572890 614928009 656455433 175135314 580993309 497280349 743471653 658361355 953612034 378928396 859426416 562972958 600201618 252116966 807733057 231461554 905543789 366537192 738972183 825093240 917198770 227141268 756583806 632087244 686764781 672247831 784253776 999194271 999746661 836299908 979723767 203603945 799635494 855682217 881125296 716612464 881165543 6719353 376619076 164774146 675408189 244870735 327947269 578743892 630796969 747040986 854454186 257916113 538290025 266583301 658853855 964039861 966242858 756078719 965295213 297572422 957539274 723683173 770147492 391917846 501880141 626091189 664793435 351226327 436658547 676261733 787230378 432182273 585865571 789067725 793528431 217869233 627115382 126757248 434359200 781493836 964805382 611038192 768311885 138852381 196959795 67822756 939588712 912520206 990248267 445359985 476043734 366628155 874805645 524499742 574078390 142316826 827398652 213967963 368956446 927232995 964607199 847884612 892060452 550652753 860117259 369116227 976999032 784875923 997497333 750471800 863195841 86688693 529925495 858803078 867812076 782444438 908921919 312263068 789241978 128956079 532280060 616400723 810214541 858840103 963318400 216503663 313861097 508131666 617861280 913982913 943470047 461227402 877789408 678401257 907665080 268781815 782230488 99130695 421556083 431028395 492978295 543527472 551657667 140556936 775215060 238673741 606105658 749333125 860127663 42839373 70067884 232161206 876619066 968118398 972386427 730119387 987395378 872692961 990667906 323212414 698981247 8846529 882554039 27404311 402348495 31081217 853975825 75019124 555942980 533009372 849092998 820960974 988930218 259203735 600294049 937973486 945258293 917393348 930143716 515455772 903809821 115835613 822619530 736612303 963123438 846822019 907478615 888580609 896690116 950440421 977158486 203998486 627623625 698216191 890231860 846150725 857634641 611650918 720658046 284204365 935521864 281323543 409161102 808883128 970097253 405270280 720787577 758270539 850676458 620057711 989145352 492048208 729478936 745857177 999893871 591949847 601929064 577934647 743059933 229088244 533963190 981878192 992562834 912924550 983870977 523128068 943919633 890752913 931882039 279255617 733596081 723704855 761310157 385885594 826977280 746947498 788450033 456471941 937609266 666467572 981239176 862984401 902184141 452007177 507435255 140621795 769331803 324248066 551401338 248432894 656434990 598250027 930960110 592778540 816129326 436344408 579133864 936223339 942124299 423909468 780394184 475998882 895531953 686706554 760339535 175284050 863348949 328551873 391168857 278379704 519362937 642768702 987833627 547129703 593876798 722739546 889921736 914673767 941165388 597801040 706032656 317347845 484339417 574912377 968569224 919940771 952579919 82141461 607379829 535518020 632381179 631332957 966543653 993137757 993850490 709076537 937442237 522992736 756548191 278706388 950604207 203497644 659614514 875070370 953162544 768000061 988289768 793968569 969026128 309572352 919573392 976582201 995739435 264288178 478022624 686196625 775989689 572264961 947254211 312991876 505592632 452069473 917291279 571349297 849942108 275458206 315325789 678079297 817805754 582131466 800774480 850145359 953090873 496714665 568785078 328496259 474498590 723374590 735524505 20586172 996137412 584875193 683768966 495879040 972238098 647267549 818265061 143796541 728461659 27805847 708024943 810894781 990632255 974914406 999268908 428664689 846855778 430990948 718015103 287717290 372466792 25954121 143609834 554600314 854099506 568273032 685114761 580875309 780885215 925677115 953048803 677882094 680279238 639669800 838775535 703371592 975424255 52920112 104947109 796138595 924252336 201526279 644803004 330214021 591256400 406899720 549015857 794377940 803328580 972062350 974056564 977723144 987666021 691337753 972858815 268838271 644488547 852921762 990286070 320832331 444884260 471985180 922139621 404659849 788550071 288103316 429587997 861243445 997718728 418648607 584587581 657287230 819646295 595400185 726111465 3660213 408678046 308415412 612813673 752587659 980678802 33592028 118949959 111010168 395105427 817869148 836866270 714026380 960373677 760565094 929798627 784325011 849929702 494362045 711542521 831772306 899444383 22870119 378490000 777890810 887842874 235067104 454442400 169434131 370148162 488700098 949621357 873217172 943177787 321610796 985193981 100578590 509174552 235950369 525831367 764224211 894023569 149673607 343686858 960755363 992706679 357648924 586374513 188912379 868465424 641402407 876164310 225544982 726237211 576801247 852878669 682825951 792070684 49945697 844375218 214041772 628937474 493845732 829956501 298330349 887463299 874415763 924460985 85388982 756850482 513940691 815536430 653750132 899629513 598250456 643765380 600735143 936255974 202855858 917394599 269270659 632457654 722759396 983028133 622817681 676358264 970390774 998802793 77858114 828343242 223998237 946291391 932765483 936997411 621163942 771237952 227501110 706767721 547634711 711821953 301333712 375429997 668624198 744646814 83075747 908784220 633564056 637683155 664163978 679196368 527689185 906150495 666794079 699655230 599144454 942206654 247824080 451627148 193601372 426964459 775241660 952582381 896947426 997236761 266586835 732871297 54308336 387693516 620568172 953487981 142770271 862472370 966361962 985875819 899222989 927168647 495229506 582253111 661443631 807019806 281134248 440708966 437996551 656293671 851305044 924178761 711191870 736727261 444166050 994956500 880647267 899842566 850123216 853871610 558179651 962792836 784027326 809173843 26401906 191763065 540554194 690958860 43204217 622688555 965333573 981276127 632973181 996082147 795771112 869486646 688973282 851011873 414199962 871306192 389370350 668015281 599225823 679457584 451270726 828248213 595664377 953909987 824114348 845602318 219788415 454804990 260246704 835234726 729309193 915718659 486929899 873354227 129086036 546759821 930161372 966885217 855067691 871851831 112420986 458674986 650152955 655713567 562392331 703688028 674260415 913261615 403007037 631025489 490397232 652506274 918355436 944353485 939663488 985156612 373221074 638869201 305375673 818911008 217676098 337606690 424800859 600141715 962548126 999706816 722852927 860820657 850142902 855355881 387896705 525370172 103336957 809955856 453709702 750099159 884338211 961390258 388365460 958045816 219215912 354796207 74999269 751878874 13343690 409938787 160463663 879148007 202631631 982986273 398570250 906034782 885871935 989250744 657556386 921974367 268253080 789879349 607714629 988529926 382027045 732081025 720178825 771918708 731132808 969482599 516161196 676923453 931722832 995801298 123988728 874710001 815347891 933502639 270713650 900571953 631609640 965024742 64528820 476088495 887881047 912174079 968843293 987609641 661686471 663237722 565072104 833384904 471541587 794416206 250028673 335379064 242346748 863792020 739606655 964117598 433151314 653382484 62332232 441606962 217485310 525498941 146149659 630153964 643965960 873306559 257504088 942898466 877575408 919645559 788981173 831543306 983745301 994898485 271444923 658546141 756597642 784044584 498691863 774601791 145862333 909124800 781582494 917709950 365551637 441987513 435483706 752125605 666568881 864076111 638043554 933911168 655081124 940176768 709327811 824885604 714753664 782116864 800602407 817231984 921775004 981141189 746386538 909167275 536728713 754543006 38704793 921253285 262295416 343852930 147710259 156917602 701036915 720836769 249538126 827451909 907290991 909383510 165341053 702565446 510777773 961438547 101795134 221960192 769309474 774567418 314575263 817162938 210717204 817489245 597358884 758967119 433014179 735179505 225664523 278769917 522699819 711882167 653150670 733496649 736298313 752538544 202233283 495097162 884983555 918062607 656279767 759299949 153992489 391525951 23819167 246335883 36326448 87146530 728502375 809980188 903809316 915123062 868117521 943456207 558771505 822213401 682222071 823710290 579356254 701635230 897104319 919406055 190487227 549961275 719848535 929145013 969679030 995249794 486455494 576675311 79864471 844638701 584018756 744666988 931693187 943479060 75672615 495036769 671086035 925273626 298398520 609975836 267914041 912779337 132345693 480929581 86580512 457406942 665256412 819031519 913535022 955284025 747393925 834076579 709825030 865088164 471062546 860564715 415760617 558242962 618029056 656013571 917110829 945095070 517066778 789305634 813712049 890169442 359775721 464086616 86371101 531345763 445989982 965493837 641229192 902095518 384000138 433800606 80693340 698562538 249159329 763521998 576752701 619011957 119020720 707264745 897051030 936564091 592121495 904784738 302804755 909140620 783744764 785861485 420680771 869353455 131443865 163801036 822277241 898243548 550716637 862868430 514258508 529843336 144666694 744147406 952100534 977965595 826835181 884670457 798092247 957807711 133047625 490951374 993114836 994693488 73341459 810917112 220238498 506835150 886809885 938464998 907686626 993795782 57713911 768801355 968356332 985934862 362146295 650277013 939635304 941675886 51906633 746217841 689680325 836733600 722504974 815925585 740343677 923469652 309874363 315999138 319804689 323940793 833595758 895904844 916303350 980667507 735501302 747352659 921764945 968646870 676228447 814598908 113512092 239023323 113480529 701558460 359012698 796953819 175657842 772286266 989147485 990834155 308559021 950144942 915303715 917729589 550527590 734959788 893508138 944201340 521094060 920146950 250374458 473690126 921310026 989573860 253832869 881217697 514437520 768397787 366333068 974367904 412143471 644521518 930584227 955241867 504957512 531375647 535856533 783039427 68756098 900053627 758984655 761919447 223287163 277587809 814863044 852494056 447632069 729629752 684141937 810519266 110526900 955060988 779514091 902045319 926156760 970796563 597786457 713136405 237450362 298282211 951600824 987284150 875843905 895571883 706390055 980030961 137748179 289135487 488927699 908865690 736698083 832946470 405860321 421095551 948460822 996868195 557036819 702801553 407512133 698853489 418327430 779807896 624909229 889171530 679694082 974217094 412517668 758989187 199757000 438952281 947673003 995166768 121828664 957891853 334708011 813473898 204253953 556092687 664001359 943471488 14260585 886633002 50985424 844203029 470610608 653995256 267693959 909971348 544043645 647559911 694342617 908419605 793617662 802318365 913681361 948212078 134493051 496446561 5978846 420175298 290165719 419436892 226352599 964405854 654106816 848938682 11182933 783481284 490774451 536996505 980458455 988949284 978769701 982116334 71005022 958848973 926468152 940127771 515771109 835012624 698613759 953777012 945436036 978196383 987222555 991918731 407696183 582598907 343793017 448588826 821319493 904939868 379810252 689131718 25782278 807901117 627995780 650289658 343252503 876568781 204700650 683312839 498333796 796156273 988406117 995658749 145799977 995562383 934381400 948489971 296305287 577953042 16113580 642000626 592369414 670391697 669123275 927077889 939796345 944517846 842414768 975542115 850806058 919653061 843932756 905379851 467578535 815912929 457515088 824231027 359275938 629661614 16083527 362105864 104808044 307767268 835169636 917019952 529635010 786104875 745163465 852942433 309941420 644064205 863015074 877030278 226985447 531770036 788897465 952270417 172895107 274305920 695980277 774564654 945680593 988476642 97215622 980670301 666194945 768815288 175294620 810330461 352366046 865435674 456276040 523397970 186994063 485906099 223609287 536654710 109373674 281106535 876437343 984881188 749059596 751806431 896257344 919111535 883272361 942110350 465874335 615066196 188721376 951155292 884891775 967582188 732389584 770638721 581210159 973929647 801749666 964354970 43683950 376360070 134312177 749275902 955999712 959582822 103124248 141061358 386219924 981305537 744808320 994720874 918371007 996593253 224020816 488880976 566100666 800896387 982669935 993843253 205139874 371811670 280867923 391440493 647328311 888922954 852450524 938494229 802356716 895903615 10394014 145118002 775047360 796288591 49259972 717660844 920610908 941433276 732476042 784595248 780903408 947221900 819926419 999301875 683614888 969346075 899595180 953784232 839047560 875761765 981446250 989984679 111740920 338275435 962521536 995805272 73295840 900127922 796240174 875815413 16919368 565429398 555826782 954080741 736009365 761665303 459543285 562285867 989824435 992148483 756685495 863269239 248904896 771553074 482893750 701318671 747465364 861725309 483078392 998793664 132153069 360808620 638636126 671944816 579684907 820664997 384364931 605710353 709838903 902446362 635966644 781136954 725924576 874168677 445857829 961821613 700423763 969691420 620054149 983185224 798603601 972726612 364218362 874684316 476149151 911297509 357755996 961015576 235725112 305079866 690049776 736222447 30880304 226958934 987203529 998809920 302788262 956325784 359367036 404694530 642091259 937794076 412981808 422175559 501275364 639831713 341341553 803582788 658156104 859255686 16928794 133236594 390802571 689835198 792252182 963002069 563060110 564294942 746935246 920656318 506383493 530473320 560320996 600574708 148555017 728910618 880936222 931453063 919325587 950895574 627548517 824838309 760403374 905832367 329039304 601323505 963382444 991153173 437800640 697508416 3784004 57051841 251673591 383935619 604878135 839657885 771193971 857793075 943438096 987574631 674813436 722110919 239160237 402201841 551963793 717411954 927633328 966087210 938689990 998043103 742658027 914884730 293719036 371971948 820146626 852834739 446879673 661039571 633709354 827530159 574670447 621320809 478120017 789925714 962372249 998518958 75801029 903844690 847924690 865200787 114524281 326126493 410645149 863366331 789570719 853296819 6781354 877665129 191129901 947236763 268729537 841478098 181935365 631245244 276516492 290454801 323780043 601805447 981222361 995085733 436995726 865249210 901293882 989245597 657423032 715273139 467540369 817903855 164495060 194518640 533598959 825641384 13722568 873417400 101614006 172429221 684397153 929861131 877790457 912008595 505268048 661453388 955081207 974978337 313786636 836558502 684990222 767633133 988436880 997633752 925924782 970739873 318486135 419079268 305225956 603750826 441894744 704083417 80864858 218267905 399640770 912196484 586088745 685901626 479837179 716191331 503233776 675695128 944217887 993649622 683616361 975860736 990758399 992707575 581901978 779648353 553865097 562420405 396756352 443407074 326100653 608737112 258364552 806612907 113033243 378105178 347491705 777801634 777584000 929565108 30629034 784903109 964345117 978785670 521221084 969657409 171412705 356548380 854495803 887038546 311606616 596600153 6677310 781897928 150889875 328861711 860481141 976413639 738197306 816520637 9672696 297243020 871327737 918728932 874594281 956014444 853481380 965256861 827400027 863869599 86095974 701157031 602695227 754540708 285401330 732739503 613225075 962090686 805295249 960105189 938394653 968762996 658280705 952480638 752309915 903313271 857555172 899342383 294953724 486763235 365599112 439872405 929476043 934310933 36685297 997811096 762730662 779494622 873527595 957128314 475202111 877531387 350696198 440130683 770846281 810829007 469014520 747096665 653505370 689097670 729648281 903891382 973724681 984609426 269113624 886095953 211892709 720768667 555600878 936136308 192893740 955217036 590950110 821257904 102152881 612168290 808919264 934379236 482312680 878878041 742316993 937758141 558365994 667670339 145647935 333509535 377063473 738028429 450859356 777972208 858021685 982331424 788536813 832745671 631387934 801682829 870257657 982106343 340753000 797228448 183146886 816942825 25642742 360461890 269074795 737644981 307216149 654420792 446517633 804604856 300868833 944060785 843265204 998192673 47067659 479350447 153427753 695647737 571728501 738776244 30533363 316595774 502997422 858918502 475560252 904760655 707516714 851059610 295758378 588930887 303306036 492629308 970871843 981080039 419771627 845127575 737380817 952488728 458757063 874280558 800928634 959997126 757742509 892670591 825268704 910153789 232387106 524928482 24422545 770603767 126284290 309194862 748089698 794827512 522243123 583281662 561980846 685744373 656191910 916454610 208857201 595549615 740728707 751194100 924839259 985686503 34472586 819221651 616913618 822470860 987555752 997740123 45681681 412152122 714275354 974348541 690661937 878537437 704481795 987171542 701180140 953926616 179133050 613570651 977248748 993405691 889895884 965040524 492123987 498503660 197735236 422095574 484459221 765282049 873123632 987200885 462075426 790924555 184018870 301339701 521338677 869349441 241685625 914825244 693026019 989773711 586276754 630748656 254203043 292426301 911894418 986010380 187754388 275148086 807814234 818680195 882498717 910496440 600422165 610572164 720459070 750566842 719426248 899531794 190717550 809826337 201802196 454093705 158404755 319197536 565056466 591410774 706882460 956258142 920779160 934853198 492239101 891586261 149216795 805795010 205246531 507312921 355897249 938732661 214870043 329304897 655613735 776198283 670410153 739161175 567987687 961303615 672904911 977890569 197788463 254311737 147566560 929264073 205797001 491375474 166811443 469305747 18344848 654213040 612319803 795863921 350504836 896339738 829553532 904652076 233438682 348850366 313471689 937463081 214665889 778362921 335940772 630094869 409646784 628014557 342860763 607196867 674292356 761911550 732427409 937451028 716653525 920602184 176449332 875555385 960231133 996762762 858026360 871183163 643048718 782941200 587145695 837001778 198193753 515141911 560970868 833232034 458876091 877471478 697237489 701880421 998543200 999102840 81883025 289341808 179634089 593395878 863429901 927700446 968053017 980493674 117965903 590659394 344011092 721068738 923061547 966375171 581368635 739939608 153096538 290527842 12979989 209069891 285066771 470701241 459784783 691092633 413883357 891344267 94400549 875958040 683480403 947719183 918054297 992325645 436698110 617332512 759607155 980098408 633417086 777242707 861601338 941239002 282624625 854037727 625819874 870057483 896171369 926435627 259399822 462449216 169415586 609159336 506110694 986044881 324934880 834247862 720444943 906465239 467656766 590179640 749106590 806888851 733944553 828988634 983397520 984183309 507505573 696604863 177293233 207779411 236239491 662887381 113699037 631688230 955312828 979957628 1530042 935965939 867700283 971594073 897555035 979047015 130022966 698558942 725164473 831998377 165499151 543556546 160409247 205715809 739015776 990930998 305248129 585628846 54423908 356933886 372501115 475567280 743094968 910044786 873100753 953464749 942982453 945057339 699930049 829285358 877721679 928183772 496335241 643160397 873654364 878096221 970884146 978495196 824980174 844309386 742447439 865384544 138931966 377874014 495173979 790991537 711325133 747116103 752011924 871552190 696155649 760619449 335133769 820254316 359972875 592363129 129551248 178141151 175065125 487290957 994719028 998199875 641388748 869117157 71452364 987740920 794539145 963763888 416316206 676190273 144923374 689526990 652049999 740878764 933020164 990770976 130814717 743573068 93148493 909407196 603247683 626980606 47971661 933221233 40803394 77585630 640902309 989167881 418432405 948246910 179587626 977589122 154757282 544866212 83855986 374157763 377680984 414098485 939294589 962982758 381479758 713149217 822281771 966781384 770717288 889120601 978317975 994767530 638737019 871173951 520849208 584066666 758205581 837353646 68124131 711899788 233962155 915583763 471619205 984206396 958731681 970409972 426078639 563887297 934478689 945024389 262816801 539456122 749522171 965144133 378339981 516312997 12507534 645754883 299985862 734369655 955213984 963925730 624045026 745480856 264097252 642869063 150490348 718359372 755756702 917344389 235308226 857065117 209111345 919244941 163684445 892098371 578801182 777646168 269799688 461672994 147337456 327440907 586829207 724208499 481075517 629937362 487989653 960859417 490997029 637025996 966673424 975239872 837049661 889279630 396315537 515208277 283395116 876600289 53705084 200790791 91052084 477352922 925065450 942189882 295444306 672362188 594580251 746864764 365895961 981538453 842404667 948993261 850565424 923765671 919647889 979197590 616517877 985827652 67444685 949935624 32844693 735844972 281799229 774429995 209191419 290824212 733234993 890625684 826550378 965825767 752816637 803313432 958611649 985726648 960641256 979412035 231822976 349495571 198482116 839561462 967678421 986767069 845555012 912629816 207937221 943864324 218769707 398966897 725250808 948588631 680765511 799316762 963424566 993258580 474423983 785608286 643180284 804865819 298643140 333898173 125971867 982974637 145859869 732485275 194712210 627862127 943449662 977893269 737009941 771268139 958405516 960499105 660070278 698243709 383169419 630453484 937055654 956525752 968148106 985065293 489888208 601225295 499745920 950058295 114506175 122975236 890697397 967290060 247359086 525838163 993337861 993651875 985141505 990256535 170540204 647119785 620430123 638359035 615994396 945515702 575172495 626065626 700272983 731428351 523983277 721104709 625701470 927881670 570442839 974133451 776668479 935097088 78120743 200236842 848090367 856566116 925806783 929695592 838477686 975958655 376987395 934989393 83556495 173871825 703055281 983537947 57507008 765544162 7920265 281427254 767422061 774884040 261384070 912849288 754077349 831672888 888235433 916601163 119447204 558866556 711616131 817028364 456291609 699002010 553212965 964488464 138820298 697044354 887714612 943186577 81569927 684321445 483421986 950145533 670691548 988871137 24906699 397909234 935386290 961092311 584858999 947281362 576770631 887150248 126306356 965771081 859753039 902434897 579623709 912988748 752724654 868534180 965833917 984701240 533665639 959330646 338043272 923329306 733893815 742906455 126463656 482283157 868425888 992973730 655284673 821932578 650726505 898610887 177914540 847408161 563052256 795657780 943954078 985086279 409011117 768905614 219873682 407631736 181605786 383913300 220128708 783356771 352792802 427167769 555636068 791911536 62749207 747506060 679118707 922819597 965897674 997904725 951873614 997209722 629351051 720232824 907537999 916188580 437040477 965415155 438126093 549353516 927984093 958488574 143828122 368319576 391667239 429419462 995545976 999566083 283785915 894733153 743402071 774097613 238583386 760691087 288594518 907932892 585318373 690389986 73237454 507184300 779526664 842848009 71939150 574930238 942561535 966315100 444020875 449852100 882715140 986004152 455514205 685060871 368204551 576834470 494044849 981145898 399634413 650960528 935887275 936070516 437784565 838648264 926037713 968011688 304257853 820987430 946747671 960439218 453514603 512861342 249645004 808279374 161041371 168169198 462719048 849766369 251435297 451841795 652950252 757177053 136108237 681896843 494514909 634155732 189808060 505772714 884261588 949360915 633946887 712080500 282284175 803567809 75944631 911499606 659924583 739458384 316661727 941433560 690864133 876459749 28888390 725968743 835748190 960861102 924190974 929854142 231553114 331496207 222190163 489357406 416379464 950524273 824856510 826154694 271922243 807826816 774910155 909489867 301469287 733360797 849475690 999707346 480433846 661867066 167910532 407122669 581460197 820758163 584130073 783264023 633181851 747653712 375110400 715754699 314248220 566731771 279137216 973741955 67785214 410127469 866828099 923791213 383247172 684418051 875833146 937685056 357772962 926674865 542561932 932557443 648669595 805080295 13702245 161464580 825247172 894793934 975223717 999657580 756382550 869350900 45524253 321882857 936330637 967286914 732710408 870606541 199488035 257006551 652512323 667573170 486198399 712320827 101190634 596949452 307086481 683220504 196073573 619008813 496111853 890048383 944194103 948747366 487745274 737068499 946874707 953793956 775355830 997007403 962620503 986456770 402989765 787143144 794590125 976558129 42691691 165571160 813232338 982099686 322609991 962866343 542084123 907429435 841440254 911635050 341404238 659766842 951900691 997033646 678789997 982569412 523571885 710268807 573862035 753580199 520762305 548978297 447211895 900928811 790424057 968586610 386090972 919077625 422030227 881355706 351271641 791192114 221784833 261628827 533056603 595239431 536470922 626751146 418717788 935787367 542107237 860596588 48256330 272906464 687184004 775478052 551999596 771913416 467329 708543534 701247288 990652108 578581332 615479961 958900250 997848052 591784616 800682305 256173764 580333286 200645961 635696362 373200528 892824526 600770898 900094406 837516784 859042474 270383452 513358511 497632447 553746854 163460909 535243487 248755586 777746225 82085845 393654476 736697663 934733405 442390811 872556190 76121597 775448298 160726803 735156026 338416960 386350875 876689613 934491892 153931450 365593250 259414501 721458258 129578843 606222028 160184487 375757010 575983605 842459891 811112369 874991685 335963436 940461431 84792000 737247370 856319956 946143587 417990337 538470044 130614231 200049792 149224249 163200019 564409046 818854946 483756904 595773570 547596389 782877934 612762948 943972264 170519397 384923048 290613070 755488563 678790128 737764341 508181161 936394815 42083919 391639803 383097836 404153269 796926455 966574788 469971913 545387487 396053092 555902158 714076834 935253678 617392581 786951175 220597956 816631638 13836888 770195208 544852139 789918250 882585397 989897371 418021746 619872477 529807486 942980671 577159736 891210527 426420066 586387393 401621739 971953830 219265516 297372000 189822802 749316762 613229406 642878999 716465399 904796131 676185942 979034234 436757895 848876794 516874011 654976531 987125670 990420457 68297594 708153428 892003646 922521248 7110282 303807699 57716631 691733128 156284918 434433098 478234519 920306239 574238894 865812790 757451503 830207431 673926516 981939375 639188355 906523099 605393786 712835512 200537137 777237207 988604770 995146771 677440279 928456031 262714713 755182807 743071524 930349074 360185091 903858077 670570115 847700326 668596756 736821005 632272611 986916848 26890556 85569577 764945779 913937388 918636631 922800887 696491365 977806437 317441298 710944438 952731064 999510717 576066015 600008806 168300440 732883424 774713176 994135386 95878885 501491316 252069203 549318931 456918125 806332736 482988918 554869406 781131287 912929791 410218535 434354100 769999713 959380120 596128953 905952485 56286829 275316462 441186270 840634498 774389534 992425869 791496568 893428407 690877199 948696637 489263635 836924048 743643423 794124807 708699919 917733446 543815992 666816733 496220609 872504770 891042189 901936748 115715189 644186371 931832788 965141905 163369259 402485259 679143413 965425014 735035314 788934443 938233806 965347004 141124497 563346423 981256545 996149884 524692124 855795669 1148974 7582779 601185463 865416872 763763174 965945133 693784976 970077780 72677834 952315804 687455189 723910412 241107686 442082887 538938594 815416745 692184204 858126701 989353949 997954442 879264742 881970524 194884528 600260068 236152004 379880384 691615976 805085372 342694612 890906860 311543544 391921643 612643122 636999878 765438315 902979908 66337347 370368305 659703473 770769051 29985433 620947301 564623739 828231848 74692782 109695737 705177662 845111461 251945728 624831877 526722996 756487346 113862086 772727879 468904470 778701820 790070251 907305218 186279408 576215678 725863227 873481628 631805422 936714371 386122744 409049884 173267978 184484721 939160887 968064430 830287343 926866736 588560696 803034919 3333247 134252473 582326447 619564686 856006181 899205133 254299090 770272786 683613737 738129998 772743286 791517797 263786489 851989959 72660323 817524856 475446590 711183457 969191435 994882235 435478916 616400033 210631108 572342004 585739460 701119539 574467344 883691583 556331290 703190608 943785288 990966171 704979421 847793585 929565754 974393360 112375691 536958102 938931855 954478606 585488818 874102111 197313728 298089254 495855157 575063458 291929129 757321509 65141479 992251181 222571679 513214709 24872192 226306306 79045879 701563059 350999473 675636669 449166763 633656002 85512200 109487739 225600898 821181876 900225557 980493368 782942842 928976677 620072098 646671262 630286010 764273711 588545974 995770256 781045376 892055779 4164002 489103679 57245382 119019610 547857858 593354131 798280171 878623603 746802766 793341058 750048619 922608185 736627504 866677777 562279108 603380873 59620664 892844680 144404323 843013468 336186831 794721128 615054956 922777944 663211091 814055053 612626818 831038230 564859342 730264439 854706739 898880818 197955648 594493113 537884597 820768403 512139888 521262394 345634765 688782651 271148765 661907876 920182920 967512103 517357455 836510661 514438623 967609339 714634976 811205985 926054788 936931954 971038574 988693305 526640160 569721426 561547182 891168863 625289706 799413408 130456435 599345898 533242665 765544944 26259885 763768463 32149497 846637048 201108000 882114054 364613022 979029523 252003560 635823389 632031804 839510881 654432897 873418325 747562440 960019916 89720785 987342230 123409743 136372190 350632018 847758141 324365773 370915634 236909013 994772025 216757608 235381517 777547882 895941678 193393946 428216833 317484275 456523634 112316259 604399761 419720117 663053705 951451491 963846040 827036118 868653342 947231947 972137147 80807196 847798812 352898340 355755218 560711558 723863427 959511578 995256862 421113081 582569661 625181902 993089021 398971881 505078481 392091422 496865157 718489449 790684292 312951476 316851601 641060272 949264200 884718049 978070587 43601113 228247785 87564495 478968256 191509359 763836012 184023477 851194399 619568885 627033949 623054847 718185070 539327611 999874345 441760854 550961364 94907845 368954511 853947628 861004644 326527245 743784726 54665632 947293108 120803683 703896104 300571802 312882021 780187028 959904056 540539959 749179185 91353205 496462729 910006081 992894201 761768137 819942146 469517812 704019669 891904595 941338316 271168464 590643702 261021189 686362498 443360340 504561279 190898234 277737377 112913814 268859846 326496456 688754738 648571730 907870865 348210518 417592445 196403329 321980447 94832483 310656996 595151784 830961821 785823880 846940379 175423109 899910295 374457930 658575189 290038930 700880175 72877605 836958515 48677652 575923725 460675613 971833885 408142547 863573417 651062980 992128302 74597238 402594078 618438335 912316969 117857776 794658268 801773310 926383286 437376829 743374085 789452214 964182941 134812886 774942584 399368089 590382067 548910505 780296218 409273909 637986251 10091570 750933066 933610167 984212095 350784790 761721111 93841982 302305900 712631960 890479184 211822687 847320369 523493421 695249984 288267913 692589996 246955181 269350145 286194124 861220809 546781379 863965902 706999595 895339772 532148055 947269752 321917117 818983670 801337241 928595070 673130225 871853302 597240789 627096229 861188198 936335774 505030635 579686816 969128765 996588915 751542421 911520879 828503696 883112437 752219286 993509512 64606264 307092902 271533896 986159903 424354814 736376428 547324550 953145339 456256787 647033926 362938732 502595960 121227358 301443254 921261465 944317813 175950905 290540323 726839236 754710632 297533075 310385408 715930956 803942599 589748278 955753495 514889541 856013650 751910681 914984522 447081771 469950687 283863314 601253357 541430230 823859393 479291843 513671331 289566802 822778812 529004555 876662918 149076711 750118087 901898330 908766728 551134883 646362699 774886012 973408735 518010977 638307121 264693168 286626968 649180828 854346583 915410098 979177186 581741201 904320776 6921919 765395442 793953006 908956661 988562500 994406041 170406021 380672603 258459646 573058369 441336993 482804453 309020841 487548512 358369545 745564665 413005649 646000164 298511981 672467521 841853086 876503575 766509619 920410917 19636337 176202801 773256978 923303698 546229743 860721960 102417801 612949224 718476117 828590828 48525937 730955911 215446912 769496950 123857905 737457182 809822102 971929834 778911330 930191695 126771644 302824144 668065723 982383418 128476771 958586650 699454486 920673506 368056383 387073599 460380923 577522886 673921657 799333628 674522561 937311698 303981889 682904332 867434660 901609278 729154973 879708338 606675851 690288557 490800126 821561018 583718782 916241174 653877765 922156290 969452969 985482362 129181979 983099374 194905514 646159610 481766962 883824626 238288476 242653917 938164577 994374358 290933177 954838679 444065958 693189601 701417519 980534668 35116246 391968556 822642201 968763785 205931803 585262191 733874304 833262930 807027622 808976716 937298897 979582843 898472066 906047415 84775105 960705219 62723594 147246280 615682912 664432252 258951606 840797664 370932899 672156571 215899190 886628608 607811253 799709468 88812514 227580658 693001779 881193220 289558232 737461620 401053860 641685403 725828592 982579752 262265428 484869802 966371725 989274627 157106490 904426187 92588042 535113727 265775307 443438483 970327749 993416515 257870787 644812386 298291186 491256426 54860268 822633674 699524112 754995307 704673517 761417724 994401507 997083498 708358690 786062097 602109243 786740312 352358983 766819321 265787331 511636219 923761471 974819708 961060232 975663678 699235750 940151064 505193088 574405648 571960333 603903962 630735080 705288466 978634459 996905567 482064546 841546011 865778478 988800391 632544669 633245919 42546087 169440604 184676428 706240347 481277119 809216343 12973196 689107924 689523042 846681250 516609529 740204496 694331438 915747236 698961083 705774064 758099110 827567145 691097854 756849806 26761307 538614193 196420646 843864970 899518773 911167959 47891725 994047490 80877126 755921052 246770157 819180678 570767628 605907760 672764976 809533955 622120722 997275631 120862475 300594967 695615399 754231378 243924834 348286105 118045914 575750727 178038050 822188811 573591834 893256669 593097311 776885819 282977162 952284354 807100093 974840772 71447376 699096293 350455347 901139045 946556518 956649802 337791314 902307383 502103255 645242702 760114249 835419112 735137375 771245848 536177165 652064324 834752160 889837511 338066219 835098712 304067266 925777737 365577826 746860197 679014557 916150430 478600536 882805539 510365388 524938873 360405806 573405982 45487233 824234836 154392264 966979525 360376977 377798469 333672834 770624156 298502145 643773228 174317610 959003143 39216975 331729836 13066153 799861382 477476055 515865703 31766517 489823056 891618233 940258648 695790623 913055549 680168460 717458615 810349108 854512293 139111505 830922032 706885236 806443153 663472211 935049368 131079587 808149334 972705871 975894899 637719525 795442244 171591923 413160787 213145909 595624797 439422778 755252330 946393682 978526056 798050777 891665787 49320881 943392764 356254169 511439535 508716830 672113365 500316907 742696606 504100236 836285592 747786210 801724104 49721077 397708096 325965865 496107341 860424206 947659605 77027533 784829687 285304198 787853616 538355433 694365941 743461927 745096015 263491954 797692580 421237430 711825531 284027951 734107326 787910857 878590199 436794253 951797154 314876005 477258800 566951353 567035281 189093618 716907531 210933307 697195827 71141850 483015295 76652287 452741403 604600170 883406796 932225756 966993019 586953332 966438638 623182150 890152305 714482927 770433874 422476086 716197843 978925577 980146713 271649875 844082349 339007264 422407943 539313478 618518404 681947066 748391863 370791251 939392271 147051306 729296735 848268799 856575936 651959341 931537314 711814711 883581125 536292155 954750904 843530757 919597126 685280809 922408883 125479337 682751614 9772662 865016191 552814935 807483973 830997824 935056275 257359275 826124836 992634880 999837603 300459472 842585676 904064325 940223688 543212185 989416677 551999611 828766204 349006908 713576287 57942489 921303819 342887628 432501035 20729189 569780364 158253455 217636447 55730046 193544525 954922798 970132691 48426928 767464419 424326461 832528112 858969255 962676880 739282858 915662606 434029510 466180117 757303816 831753009 129650942 639396668 137583853 552899662 951563648 987651866 992304538 993218373 973320223 984698264 628067223 755725260 53815588 875909057 523036575 562392600 794388621 928613953 321874342 840348107 44577684 680001332 869391170 871975048 209073467 666663159 614933804 800837191 478189805 663573689 948310299 983890279 533115773 912110156 682778658 756465451 736855655 955271464 75080008 189662055 143962137 415858492 555964025 879968288 412312478 664337631 703378913 902643139 416073689 896196757 679206152 721557074 667358393 794260702 736094584 870552883 231782597 416068208 454466916 960016626 31816343 516662048 655109319 758222456 831203834 921873970 456278019 610164631 258617625 522089803 327147359 702117424 31051737 157964124 133502613 383425638 875965377 922042602 465295919 839802684 917961663 967150520 300922087 567426023 934527518 966929777 221343569 486329542 778054365 833535209 763971488 827791388 99855573 514273126 81106076 232479807 220639544 371549098 139465349 950332451 691650479 959232638 145493095 222547372 519600876 765660064 322600900 496515119 963429608 985678443 998891798 999363200 958581912 981241810 201843399 401356729 131425572 537101879 425144719 780518891 271918702 764174046 331615744 605521856 887544984 920838411 409668738 538076246 116924970 558347563 740989 639025668 897994121 944377663 910284941 986415100 837446663 914894471 562732231 966571592 740019271 906832915 629324124 712972871 138952685 348523034 182586997 322592626 237767229 863635076 544329349 796882106 529176367 561528911 654325693 705470137 544762790 884909275 15878510 160183903 856921577 997145118 606686019 816377529 903600884 979753450 410402622 910498971 462618473 800636538 248474519 890862535 195774980 542432666 558571932 579240522 640755671 990645320 715595947 873978300 176651683 346038818 234515026 426763705 633825786 881540672 672952596 898000461 870609770 956536013 612822028 707222926 218161654 618952941 758809800 826428624 967155712 973235374 270817313 318551229 775931568 960894511 305090046 537266721 291161006 649201489 260116336 887841072 388491284 582421331 822143853 910938648 165032448 537298906 740602048 775688180 452668134 925990607 634904126 798863925 234791041 453723747 956274742 963058039 624302831 749071807 874628484 942998797 336246256 880883703 750037691 856053365 810284830 914493029 841929367 922055995 393535309 814622356 457190604 749454919 13622221 623656117 446432843 601771286 959204169 999494779 193185920 202467221 870501047 992763649 588818078 687567861 443174153 831086041 862200674 965874072 947144265 950696105 318639478 912282250 643726447 649607702 575875055 650969195 490552795 862117695 801247609 819341140 988635651 998747392 635216273 755745041 984349639 998900058 708350389 985716432 323931827 833741164 138608396 417607912 736978513 744159838 189202000 450097804 439207417 956055741 912300990 939223298 454864347 483169128 512909603 654875110 167133332 836567669 371363075 530128168 797100167 989892311 629171557 909025598 638809543 957396847 821764606 828367751 408643487 985706918 171709860 692776931 44062973 521102262 178296382 794801859 865913286 929068730 754418348 787161553 226375485 803251408 707172462 937058916 232900606 469558814 442391596 841582046 974757038 997852812 610109190 906991857 452753050 708564283 935245423 944610624 644425867 873362869 677492740 853070130 448124518 928931681 140584351 230765856 506156047 803330975 45394429 525502500 481415256 610502668 389162063 464574645 796432629 980189936 963346998 990358951 82255552 699475886 428652247 836167821 485642935 845482719 223903137 485299285 472900126 551229982 64718360 624618483 376696639 495945333 96551071 120055866 525938410 726970171 686429502 853572783 821033141 919428648 80132243 703101893 59729422 448778521 756021099 888862129 812774975 836694598 645701456 698721534 772557431 877278518 568246405 819299085 278002663 442100458 668420508 670969516 27294427 967664433 855189684 987317006 102506571 961230656 785880231 850292867 388329308 702460086 986341571 994439665 838778446 994090446 126736426 553960249 500158270 975837628 129273361 761970286 844143491 979001856 389931453 787055351 423582051 813472502 592371110 849001593 551731569 905026635 532627030 896463966 109530254 306684320 211242065 704247761 807200685 896868546 474061138 852916026 675068355 742923037 560484881 692989622 121493743 230871463 250940110 284277834 421296618 518138812 819462161 825465845 900827080 960923418 647887206 931279326 845995179 982589569 59000342 212752185 251250347 993513869 174979787 207770187 831350131 916569309 309808332 382866523 582297136 719827244 702831388 857693227 831604726 959138734 507347160 842618625 313665250 475347862 826214026 828354592 244224216 346401673 840626833 978748071 914807867 941357520 411134383 900858411 977097374 995086517 354184276 355983556 624772572 992016900 439756510 737848587 440900221 783390992 72111004 998863464 430779224 433839891 392351113 516403559 307679559 711594094 373049122 374931528 802480294 952153611 363040758 655886481 575687856 717589506 532280800 966845271 922249335 935259704 893655083 945805644 638752189 818873165 843438220 996871621 808684714 890791577 938631298 993130463 83676231 951401233 78830450 672679729 238841106 816413659 678953454 690493988 799333517 985172178 785127675 964825731 469119470 853187352 637400285 776207099 17364935 499765622 794290373 837330019 44022372 891480128 702602759 801036683 520522337 531682019 676158650 682449116 93541747 933800852 50631337 161223901 86848272 950875602 256507768 301740543 136792248 601715598 555482986 963230692 857702859 863389812 833650658 980606702 138240459 932157103 254126144 503879749 275274776 659048901 32403598 408801839 726242306 804652175 883820501 945071267 389107478 740592245 713054819 971965404 167701336 875977357 307977989 308770401 836525734 846733394 212913920 456376533 734573104 739993331 59214985 63661918 469742435 936804867 556092839 993475954 825095887 927222370 328470706 377443266 335300986 668927860 670753743 759267916 607302633 813424568 579405503 817973300 616459385 836606167 315174936 623171146 320725341 676026143 164427367 711503961 567343331 725998850 104056355 357999032 896308954 941247848 982883418 983108598 214837626 790821474 147565883 969549953 961914533 964698494 752124999 752265848 667251855 754214122 628330653 950442168 667158284 806122207 385327808 642000804 888852453 919598713 487329792 885499171 370019162 877826065 675020375 826473812 427180022 622267372 840815276 889117511 473543932 710776603 958220685 971298613 157062032 703756657 411205678 706252115 642438086 839178537 522524595 531744084 474028179 606018085 78053121 546492046 561382273 709614923 194019409 955744038 231422944 886321022 260461004 595387840 694606607 950866733 991998639 994171236 82207304 448727543 895222298 939868078 475485014 866233051 765212512 862581799 897181561 943561863 365687416 900931835 871377033 981800332 996681962 998279573 666531287 776066498 449970583 801804023 485985548 645402837 874892913 982962744 341895371 915328192 322600086 756495081 252578053 773903401 936979321 979994452 322551095 935841833 259382721 286047514 243972579 883511555 22409883 711432240 45311581 681141252 625113179 635018706 850123527 894755168 666210635 776141221 592672771 969474222 658610048 894200548 478600343 608493861 436233811 556787942 470200290 849568127 55905525 447566997 474741183 504775367 510486253 931991455 186916989 478036094 590206837 799537476 824095188 951888953 656578533 831358075 914347459 930170706 743084112 962237878 69367270 729748616 90553647 290085926 101368480 562516154 96209302 561453527 565640526 771204067 328997483 848149645 385488401 907836232 928768223 938116292 694381540 753247046 615142126 791757079 538200410 841330862 892648041 916043071 510290368 970036524 452775384 643574873 455068679 585453332 358399531 774343410 567276899 847726490 627623041 664968698 956374370 970603900 519378608 858848182 679605492 977117938 670950569 690831681 67655091 173659912 202993935 362611959 519064953 990447067 693955663 914680920 187513374 549952205 901206429 999203676 975395056 982882374 850521083 910650427 837838366 931310373 917409365 991864623 985826152 986272474 459607782 531944263 330645589 849342315 669979816 722198407 760897051 797166249 787023596 890908939 452809132 879817758 529714321 541630841 763347792 823271741 416533099 941321178 730859215 859229996 599620403 863295953 769896577 849440702 898774467 919573693 462974166 812236708 29280871 894441162 675218076 896649014 142795106 337856982 866397188 980871900 135943875 657075525 289273511 473806645 185136109 764354526 604729965 930843399 949548401 951748015 666316303 930377890 963616486 966832750 640135007 705462365 337778723 926126351 585892410 997766943 207581179 468382043 534406316 695423571 397164196 963688806 145814239 160103960 623505460 752871810 608720256 829165125 178268899 853451222 778372570 973908918 210140589 744880645 459310037 841408381 274937635 728989616 612849850 749998544 951869548 961389656 55457348 360233472 740237617 791687021 127913983 729272643 818037397 930802700 749633964 909758524 9594679 389967459 859427006 880657592 117658204 896821065 451067901 589321998 887998354 937673584 160443082 858986338 534508987 780671048 835618276 897579380 597439546 888495311 936065232 974969595 114714136 508120465 877689075 995083361 338483460 769577536 608463880 724266495 221996875 859770292 418352526 752115121 619073978 937292011 478026382 929075106 803924332 848339657 939410856 951444322 419493011 461708821 426901526 860103287 281867707 377971067 225985855 858803069 72985761 523820276 343264641 913134203 588369177 790541194 783271105 982436198 591434373 944625963 928184144 963037741 849760473 921864938 298297031 501272751 213074431 900120870 60965542 96878048 328388836 679883555 195589792 871536558 926168990 975423722 576458845 882711296 341060805 345209482 66084496 631041590 966339230 998181487 715814838 757802080 127340245 797567046 374127970 507849297 11699406 248045854 549194743 647515430 829296341 950619679 645141770 748340899 578406365 950061120 419701803 975012842 483683653 738613013 892994879 940226122 815879176 897755440 784646416 820323122 947405973 988603526 116763782 333669528 228690285 490434834 121501166 893635111 734575686 877602504 397577984 986736737 271818821 571834697 724283065 852940279 763764961 925665097 122946109 517233057 375389918 760731274 539378488 640753172 366809316 923140804 335549472 485345787 388493173 641408321 939896064 968541507 806216809 933686100 150852526 792689136 160701274 947785031 592238639 878050549 526045509 832885442 926622865 933678141 76352270 169743748 12420816 531696624 116294018 690669363 501326809 592619936 171703037 873074959 921859750 975649514 287655510 748042396 891100718 949919156 647104969 998057550 723869576 882094261 40266728 936366379 197480321 248544674 643542251 691444876 453528467 563873075 118360625 552039351 551246805 644966475 884260030 957792582 83996661 897155982 799853223 886942718 622869891 852503444 879664231 901754687 871328465 955591269 771254470 782961050 822695424 839227913 607452290 933669679 587931745 937177619 437326640 710243032 909199412 925452682 245370141 649586869 419150647 489112354 175565808 995647151 546692278 923406610 362874070 819948038 720026114 889498300 472925588 647766952 812281141 998517176 173829244 708467701 809415097 988756094 576963249 618280059 876662702 975589252 159023578 779764522 767274480 951080984 780096732 927296927 7719379 199677153 433002518 519157652 716727585 899429899 912982381 959812716 896912912 967958925 268733194 280714114 354103149 407846368 944250556 973474212 692041397 751242983 632680406 806425364 755500553 929369856 191390811 871297415 97464401 757577444 555254757 781284673 943141331 966632368 773440074 821551441 79616626 723065518 523607313 811253420 193672145 291717024 121802940 797774909 351450467 460252195 398702381 679231076 562466141 722829195 718864318 764607137 841877359 913673483 79037723 849883292 323958219 585412525 88546788 485562806 511860049 725118823 979189767 989310111 942889726 974347906 682311695 982668753 781134453 880403324 169194997 192564497 600275016 904700363 525898883 963682371 895351328 961085359 863759649 907415489 594451337 724523438 29685121 711652907 268360002 738247517 555492590 828793308 857987031 915430176 505815016 747011387 794296074 817781493 115502234 321335004 377027875 991590211 16662540 496202444 85118769 122925117 484579182 961853574 796642160 950766854 786461252 838623882 585140294 618234802 125978781 926379279 682512766 767239358 961555748 991975166 511658448 938863641 224600647 766839649 710633324 872160169 980860716 990248350 67437801 611856411 902210471 937889515 832898952 875480277 78723787 102156578 513270717 802074707 568673187 724832185 110226929 256009283 527665058 762340543 578899681 766443893 946044407 949087392 594614619 824596872 644381161 708932510 976946403 997698881 870465761 933464410 761846638 868687749 308790928 574568902 236305539 763463193 83205699 498981514 240771189 268599949 912197394 932168416 600656975 646751024 172514067 590144168 824611435 840249555 736008589 851656575 545698649 560385925 291203551 294060688 333888984 851353543 359858308 576551878 681858888 904678960 887219307 995076972 58784411 797130021 608517912 730189561 567521520 950992007 663237946 865735672 237693563 654873521 31940560 146100109 524619385 722606463 149796094 816664177 346254022 637498387 917122900 983272698 329638055 615511015 936291105 984890859 819145638 966754387 339633970 796198496 620073099 901489351 935307361 941106822 259572067 805664809 459784728 716575257 741322497 984484366 70000395 698776991 7721271 115619626 478134784 759372971 782360774 854786853 44013572 650202082 775779211 834464857 579301759 915945693 83571148 544353962 928106015 989036493 956371866 975918335 497378535 899751021 959795929 977245909 52214906 194879237 297798671 870376212 14330347 486300260 883124954 916712275 979907064 998616357 607000715 821164962 476652773 630894790 178367663 246855737 730713562 840756352 189032226 859214114 16113022 894783928 819725831 951428134 393061152 506908367 137044826 909931078 225486086 277852597 222319061 723079358 22331102 343476057 483391561 841185541 558659801 901601076 222269681 815170090 850555250 875122842 611996776 727874351 755916856 778753183 81199790 779566964 993974921 997010478 519198779 839701225 88420268 471082253 687702536 790503727 161730473 899528262 73498653 952497618 159550406 976325531 291239277 553615786 938387472 967627690 437208641 502232517 200602929 814769012 823371224 996310187 607096554 740359035 985554072 990737714 337762929 876646756 865929069 893477891 644244729 778613776 984187944 984583976 530576510 663473510 948537574 986341154 378665896 767904704 779348307 953219275 969046375 997135691 908141820 974508134 714877258 785022307 688438798 730754231 169344410 851313579 910800683 929680743 690834257 742634592 998753803 999392469 969449478 972880158 315807753 696762450 743469618 998907072 338276668 865881497 825732886 970545656 907439264 998162550 430562413 846712664 26839096 699619729 263038595 445136970 612439992 644882969 871466795 876015316 458606966 798402929 144065729 359090984 799345100 868657866 779734796 899941651 720478402 754338874 937693561 940505667 685956997 767086180 895736434 996587922 500734911 531222609 710994570 724742700 670680434 709356981 311011964 671145023 561245133 910326351 25371724 459970661 444879013 994061729 685948165 840724484 498923262 531211398 864662142 996094095 874593130 945617261 79665880 710288304 679068553 742703191 594549741 981350204 880488161 996598124 734040584 858185586 711972654 962198593 240543976 519138646 6814775 991711261 862584056 866647318 645017168 901596965 373582689 754756959 645529022 845448169 858741060 863218886 99556590 950522213 65728451 893962407 304504231 353504095 345636873 438932342 427599478 451605515 393608777 528123080 706496214 755270262 653757501 985571701 69835164 833819328 793442919 991711532 456197113 662003329 659652236 993668667 636834885 760742723 969904366 981800981 38118018 775853383 773389782 805593881 447177363 879291257 149655739 471224277 909204987 974539770 994937623 997033992 792810517 827031914 388759256 428117970 858575219 949513776 498556076 749532849 606614398 927964110 194075333 379675456 72902018 978361366 675359056 994443421 865260588 881281732 5146133 694070700 602984793 725065281 863243996 987727683 660941424 805901033 260949924 674463511 450756495 926799646 12380509 293292972 142489752 509487436 333339478 683850394 556724409 801276464 255396659 597847263 307161349 441925875 203027085 456015778 929351759 985579502 99825943 548473289 943837297 953949799 460146538 737436610 226458606 243890353 117852946 210034152 167527392 831635813 10846855 377958634 87034673 869150209 811805136 938516788 653878814 771167974 532575021 654340348 941455615 948887206 666909824 841326693 147287740 445208809 806475803 806780790 234960063 906511076 50544420 351629715 499184676 617114483 805660434 950610168 609274417 843905607 654913158 783296832 638194535 959192720 566040199 808070057 683510773 767640303 302807696 636480388 973844071 979222677 709959484 945057068 150323418 468681658 464279592 551781787 509169950 519958515 394838670 952679438 82860208 397256798 841584515 880695348 970622711 987743094 254171737 690134811 318210242 436324507 215073846 636462966 213837473 279859370 372006811 778286248 392764359 424725005 214277454 386410818 140262967 375185200 483485914 924974301 654497655 950737146 447189508 552578659 56043894 940674498 732127871 901272591 402327381 922015498 122361097 532347561 222096345 269148685 655424977 671342988 771350308 872502247 412937233 778290224 55367855 440128035 870788430 914886114 903021980 927320680 514072775 635995486 940508798 954045202 732695467 933245780 209211378 543676472 830619497 957189781 956892102 990606526 638687849 998110544 655060666 694331397 894696366 964669661 798882811 991544461 746925815 998781636 208655166 238566266 937288034 952743433 511088479 872136030 371440635 577995384 264192039 898249603 811987731 943510778 289503447 778106175 236767893 516256930 823097673 974295645 579283503 609350085 547032224 915087226 170128290 257693473 444923666 603481662 860241709 948766540 166801109 830749885 497267089 770366195 742079366 981784460 210290706 610495057 584043989 598041451 116813610 275357287 175416270 206366548 340447769 771947863 44342440 165875940 516952648 876552496 969014871 999722172 975771074 977409703 771669698 803521767 203457151 208085407 436411501 991994646 161305068 334478152 910012459 944634388 451892622 786098338 805154935 881330830 758903669 764799535 29826365 984707053 243521342 641953222 428557329 916951312 681792752 787401821 140728846 217049426 819056289 849054349 468025009 892893924 700124663 780663062 862374576 891488269 983926092 984642070 61412693 93173497 638002929 687194925 94849232 683218455 200446445 637736769 131070046 717029299 716339964 986236636 223545648 801768170 985319376 997360520 318618582 422140758 927362012 930579200 549228912 770939199 297545048 967739646 641396377 881578465 318085904 551592539 501031762 574740902 186710230 349687638 302970244 836792438 90129228 633615134 990438098 998178999 569824978 688975151 783221845 930284840 412435831 717700355 821686472 833226130 738989920 765184774 303776096 610616302 614138305 717259185 819549835 933400517 290555804 786026743 857561811 995940295 374215332 900657015 723560 486230711 605610500 677819855 326397268 512411044 208165987 797349596 348980511 997319715 412303325 500695256 127423367 632013707 325574006 966359785 458601534 808566039 455840975 884975910 893413124 981474719 292106337 751327819 941783500 991710103 425678042 883560333 360102334 483485915 834757621 900893005 65435134 659082059 729111960 877224520 543325087 889154331 322592702 517656357 378349775 910230137 504302851 633930497 876284525 936570041 783760844 873921947 751382117 993936441 52200792 149131287 174613615 463286848 307010901 989682398 116117822 580234397 825368056 947609284 557822608 909863496 343231847 695146870 227498865 945251024 509915790 570545425 488560500 583400489 448314148 825321269 302250702 882751492 419238981 812283538 248431681 458775519 382147979 881622949 147969796 860162257 258100457 324455717 393756670 525074019 706944650 979144870 66563866 467842554 881004265 903797837 674381105 901584592 533009689 864970894 606157518 656178427 16794263 822851634 564080176 720230097 729036400 962534021 758792014 771373528 540421388 668165855 740328687 815672522 617304602 927144348 941475174 979402333 615293807 933126298 875568796 965694168 19495707 45217724 654383456 974368664 486783427 885055292 217490157 807808211 946776902 965696341 384727963 526091628 767268347 949152921 482079577 515637781 313926637 553571459 707294528 919031523 329043356 516836686 907305963 976481462 841315694 956024331 917353698 987990070 337022200 653872967 68804037 487527034 535545539 951712219 436599039 534000744 453786565 975151595 63247590 550135246 771650788 962680906 889385786 962301649 701746788 853319186 409425406 814736347 256163300 920760536 525492939 644820917 847779716 942760747 80300468 871146226 693894712 916130809 796817407 951968096 195856505 540974890 673181695 719138167 923841012 932776708 34250252 575079498 356641886 666047667 393669828 457439574 552131836 731473187 6234765 364149978 254927338 823385970 591081601 879159378 283032672 553175963 822494605 987683100 687471778 972486626 769594967 869400880 901258592 940526886 843999878 972552275 842616155 943459288 301023645 859478514 253812641 294865598 953822380 956447995 295831771 995904371 932224737 946065524 5922127 626133726 87653121 383580935 634004744 962559545 97795897 941538882 484417047 923139999 874761072 884934631 454757594 557614789 373559532 817447373 20810747 652677770 167655791 298675024 880440802 952966363 976780114 992486928 456649927 745667380 981200 872502065 289751548 768946670 99711621 210934044 766213993 768127378 573539322 647143899 582705554 728201959 936705372 967114311 635740023 717322262 395970793 507277652 500348145 537775123 518342873 775037354 905855435 924539300 980741040 981896457 652354230 665077036 984510918 985567089 917663318 985053786 468869204 936352655 902362604 918835563 272489434 876418109 537742759 679542995 897772882 950462100 711427774 993872083 440037828 889679534 479725631 697036609 185464055 512548450 750564570 853485183 399446704 767821076 923823088 941213150 541155758 852544145 569667997 919035597 696032300 788236185 690225005 938728439 192868536 797384423 228759904 608395783 813318911 875473183 85088646 125380540 576658264 631730455 53691878 983688307 550733043 839983170 136327436 897849523 597281410 803256788 36595558 57490611 928259606 982312436 819525389 977863705 692329434 850177519 782990385 883492841 306523087 501371218 119653408 174981905 550974382 852735853 605817915 942055864 81831316 576696635 415037113 714896237 33291128 164829383 650298433 923033180 382655834 662961476 981222237 984887577 444661783 758681755 675203550 679638956 910602822 984051632 286210961 929730260 651924431 674862708 809146138 946188383 207402898 303928072 988837367 992971702 802160236 993067908 597168657 867456901 158167092 435326400 188745352 319445558 116171326 506198173 153288157 228420167 998958850 999636406 134685677 826799185 817715001 937580620 974999671 982803228 229261410 570481850 703885572 708209567 568804208 828034700 313141005 710407503 740512690 968900949 196478057 723636209 741405579 746005938 364224055 684185570 489187038 546272406 556740566 758190918 769278467 962280691 385024439 830613054 861261361 906576407 411376340 904521496 633908152 987574209 470925267 482721940 563706057 852929014 43200264 655719406 524081626 611363564 727517429 820197100 577993569 770978771 270315089 955413145 736064269 979269981 621175205 846426970 151182023 235822201 162195653 372410547 946319903 997415997 385440923 738572126 183150823 685074626 59407155 237469607 190119337 714537160 661193406 894109106 76998976 721007510 847432212 877811158 140628862 632102231 275711172 677891117 218781508 281607148 6261412 604528379 774331628 905394929 700525502 895847051 23202934 782902309 361148848 420089928 929952289 981036568 493839247 953280091 252595258 308926124 269194504 337854498 984334803 989718236 555064683 755636157 425904047 602174357 484988008 496874222 416575494 538915620 788751692 860314160 144118835 729357748 21616985 848660357 207307420 216783675 122458884 587015744 40104102 865384435 375652963 892696657 556912158 593326068 220949921 556469235 821260111 987099536 263744540 717287752 782493566 949162948 863568758 983802754 780485250 833959416 358457095 475293632 528891823 693523749 408469261 505773228 378354171 513884955 864426580 987181825 498574152 967729122 730291732 813319008 444501574 859977471 658673645 968698015 387337154 792114510 825556129 924707360 356947762 611334993 990538741 993658383 498727385 770405800 723140512 847302269 231923279 454107743 918599741 954747775 252895837 571757370 704082585 798686029 496541311 566240134 413079168 742834470 392003606 926632797 537989154 782205364 700460911 748747238 30764773 448892153 955224598 964073503 947371237 968549294 753863798 871083876 248538649 762189304 676477586 916132253 160096500 939632202 195079094 930240696 212309221 808244504 195763412 901303757 667458766 714899306 52715682 423674914 440376534 756478717 469305483 632557238 411293960 805720616 744226321 884441636 384102565 637377893 282778483 770916995 651274011 746804330 681632158 926205505 928998772 982372051 457113168 859314569 929442043 934283761 246849354 596224939 449933064 840861118 83398867 427219316 890839939 909646553 84275533 686398056 95798321 350238355 43769384 106483688 556552188 946331443 596513829 672328957 332849411 945723691 333248684 597365954 750536287 793770796 893003450 900944966 394289095 727761378 663971222 686784582 295544161 314856489 624124981 891323106 734790318 842527187 113831953 194233171 485500714 797904904 655753991 911608056 628968800 734619038 37007727 563069721 565715387 904049381 895279766 996670439 518237771 982762965 612651722 805613990 366802528 890627535 870176737 892605995 81562560 572254018 8732503 753190095 68897005 867619423 994240409 998754643 835518005 962451930 740714175 855919669 136424570 733956497 78828555 782043583 509601851 546602098 629374753 763889752 714460377 917157554 589311500 874145787 783858660 921628778 834840814 924776230 940320923 964487068 570294396 749198487 182106253 620476221 218894852 551917114 155027802 205926604 884585413 985385921 558952957 704171764 413667808 631150636 812633710 940640851 334069648 377237286 237120823 829939577 638267628 863914789 64368379 631482274 410483480 800163419 165047581 643414854 32178690 689161604 544448855 891754050 761360136 940511201 992366943 996343898 674524535 761865246 199861999 963370476 396046192 856794968 678944253 966799641 463859774 468015471 400571750 607698750 927075498 964017710 246082882 693050218 468071078 983571822 134410194 943773185 808388614 884351891 496374520 641121659 982864236 989714284 909956828 928172579 296037400 481381561 450089192 982399771 983946813 984621860 727771901 738250307 678404759 761061422 262389165 988917886 719816341 863930169 76317732 974847602 486972414 737915164 997508371 998431547 136067972 279373679 472631931 954036460 685816851 686347203 257642257 530037971 418930353 627098515 251465569 918424357 821147406 926647714 524194270 564924774 368681855 523558843 791648104 919781420 875047914 930321114 602050174 788994672 291230597 767953597 737181693 897132856 136014605 791273094 886483338 898792115 975501688 982364317 537884922 679696451 852945697 968130890 503492931 503804795 130391978 409612308 195683005 284681103 410805082 857027159 53501166 218121999 291596798 659441139 706834991 958164675 529967105 645868111 958545507 990668763 565157697 617533816 568093041 944002318 920106064 955216726 337079665 387635380 681047109 716668694 510684607 991836414 168638184 542985433 380470225 849116111 257717000 448628214 835677185 858606667 516087964 516504244 661672006 785290804 506760672 836145019 637137132 888998401 54404302 305965339 401555715 980068549 263480828 871788461 3973965 41241113 759138283 808710149 630274137 991315654 849226629 875634035 150035689 470952118 64080762 161732499 179922128 604194223 262004306 830559210 6089402 849969338 440983570 929005011 857520157 875705484 271963815 334924357 611904220 858571461 257391375 637861697 933830534 960141462 892310478 940882386 550291363 563317738 233007812 261424828 67927545 322718857 548683968 718263461 552815752 672090372 874422104 943950947 513125150 928583666 984332374 992891076 794069424 814458550 891043546 987081544 669274685 938193358 576562537 670027347 708692168 885596238 105243774 359394958 754771640 942318911 392749317 653941338 896632957 994558531 844433466 900852542 210196220 530980088 51874146 968776826 618123989 811812977 207249735 249795761 678927800 990784086 212205420 677003043 604906007 765599157 251088834 615025222 160295559 373430033 530049450 584951694 105828972 450126830 453307121 758684744 405031329 656511822 527047201 826547611 559066510 969192124 398308957 991897060 337839686 741554836 668253298 773065700 171730868 587243919 1607305 600605599 486666861 621762757 511435674 760233330 793151385 830660248 584499721 591359104 979245229 982838157 64398558 358869024 227064044 902467645 826581878 911237687 42384892 225122703 187605720 781013446 607551723 942344356 816394392 846430521 840953405 920360210 716981464 967922568 432276881 529049197 924349785 989592934 38324777 147740264 349263431 560289012 912191254 980403838 174197228 907211597 571064942 713864873 559523746 919827822 719878738 981115058 884792924 924140322 89023781 911457780 762264369 890347406 226881853 316623296 693854090 701907779 702646202 714703483 602766459 634247882 410762705 857040050 693926497 984907787 74577473 984025191 829128586 857961906 195364877 812353739 804700526 933614046 165342962 542844966 277530159 398807821 985685429 997940962 524779791 982968425 790800600 987237037 278668217 645930781 691863296 720836943 812989900 843915953 312628725 530754091 755345557 895531330 492585889 548388951 759539297 878825065 48985787 548299615 670614202 728206841 510619486 618468230 552668603 808048043 502069036 954648748 232469921 383809085 520117519 725072662 790913961 811048316 536432643 883731639 536853510 546814398 433231665 797842935 371356512 444663753 498610354 503320649 37572918 408944349 85290404 667658873 885368733 918786063 857286201 968376893 513683055 526014039 788469657 957701783 386757827 854908432 968704311 986219195 593322694 607144063 78264406 430893356 302840431 545955355 998696510 999263218 470638653 931857319 311297440 366362844 584501015 728611241 801694770 865821391 8540101 581016504 245758639 411957011 192546347 606429446 78431188 474739597 942214931 951007659 390181530 875051224 922850162 959671377 101347903 414595303 370498421 571609824 238805236 757698585 727032046 876260474 365282556 690132211 283866614 660811254 963090209 994498627 950615373 984195968 615175384 707036516 263714055 923855671 494833588 762690610 717121026 722008156 451850584 532885855 35607451 495324640 27425094 964929424 500547338 511694723 282154127 735094698 598012340 631627271 423474902 842154453 405866664 531629051 4925406 353658807 121659129 821858526 599595810 851155942 188539363 554422459 571707424 610690389 10873070 742285628 944582931 995569210 894617260 927076428 801942156 871306112 696061132 979272680 456208982 978445822 513269594 561233702 560563013 858866449 254602031 369334335 276699730 490405053 510760143 855819842 492215639 514593567 257823255 608085434 747781696 843077127 463912386 836660135 301448774 710288622 761795176 972024799 79482046 685028949 381005776 670485483 656927588 679144491 987687225 991684259 114130843 343517364 812539772 888925297 715569119 946420926 572663073 842735352 295303580 993673616 682188145 928302873 417251398 707952612 658635727 847176226 757782318 882903955 111812873 731116493 779926907 790278197 473233739 509471531 236868328 330911178 642508005 823922442 880371290 911230158 814296916 852919837 269192304 892290406 493557177 608230445 196581098 912091156 662169881 907903450 821008525 889599697 114629688 875345629 961376571 978589008 875402228 919067695 85260191 977599698 66088771 605387943 707211641 794806446 849549369 995226651 733993521 885983523 702738052 870683980 459916360 524534490 501454272 533839236 56102418 460916799 741878321 968193771 109955452 783889957 210847080 747965604 321989957 622804653 304659280 711591510 449342901 618692455 551392976 946692349 428155875 920395349 580851916 910340180 788577956 877578377 585223285 625369937 633943575 790793730 745774877 937877666 367916596 924658771 506930224 862267062 25604039 64443230 89372578 462096927 410371773 505199035 197006351 657008049 552417254 614106180 284345651 554163646 150940589 370577212 205884747 849949439 44672801 196019042 197263525 918642645 936043568 963142865 632732961 912508584 362787203 672235873 221816170 757163824 295925263 907777683 90203296 635059532 968827223 973906746 749615076 931515396 584798016 637492008 597773400 985886131 303064016 396619081 783000257 810440469 411421709 973224679 203632409 806943651 373882851 841031925 16010219 240993027 118718587 332720430 842686761 955362214 123208459 811928731 365121439 713693444 101841393 645872516 293044302 927777836 145417075 560753812 135728782 278783692 275663323 883714245 780812772 906460487 1593228 646443857 875022696 916398024 669102167 902996779 604183641 868542165 45578430 878026179 4124856 678965255 90069547 263266111 574912054 996924527 1601458 794952582 555235701 921322998 158079630 516116442 851940521 853116156 551522883 640370666 321476643 925926105 891753225 993612876 351069372 454545972 422686446 755632712 637873528 850229237 239981143 350823281 884726541 893160588 353696789 547402522 708112960 956300508 719778911 793688655 85373951 268486295 100839953 335060994 668744269 681182091 105239942 961074948 858719816 958693045 167129445 609833385 631513980 719713481 490743262 524177873 319436478 592302916 696398589 737335288 916704140 986623771 500758625 918330205 752600550 798852508 167139851 948166464 121789372 654927559 412553865 547458069 384955885 562553315 7074778 211964858 360754563 704726028 69142995 377567691 102662409 604687006 811694839 986316922 385833222 932449136 48564872 939726898 88036543 938837454 825571542 999106595 142059066 869436194 786725633 856000737 842167621 852251648 746925625 953358906 381703098 595085964 899028474 938186806 346936843 650484623 92429868 351025986 378986312 794856718 458151391 659695096 161826609 386705829 850038940 885900011 99908087 633332889 456633882 978854118 661356045 797960384 499683612 806759103 681349774 852175338 545052035 930672665 840339561 875146864 960379954 978061175 769414244 897542826 184070933 295046959 464962456 706934890 11251235 143148461 320238003 407616372 934564999 936802678 38183978 39342106 486650064 500965115 775675593 993018881 471491511 517405242 617644473 653920743 811227416 872087806 864978352 949141370 783770568 971881430 806927184 875835109 310580400 738903536 381143073 985423647 213418918 872549281 394550501 591095363 991569741 993265201 163137436 824507129 52526405 234863841 24550918 969717555 879721067 894826245 841029258 942691594 333659797 992274218 243835033 405534822 844918810 984837816 95057175 963726258 399394525 423608477 131749214 548038099 720780496 980622858 132959446 498194040 673385872 889562243 50105365 119514433 710989158 720531296 447687589 608522259 421333776 909877971 864253211 988211964 310920950 401675705 211203307 664792845 569396965 843610499 939266924 984102787 800899913 946195384 985088380 994035507 195952742 613314175 749106446 942026770 409785093 588125310 366893982 822687085 446328889 752582477 416757634 555532971 639413921 933651104 527142050 750046948 652960570 750035466 82156519 806341520 606728777 761710386 454728636 861083561 377498864 873844861 332994014 930846472 758364043 914790498 573620840 942033974 703367175 928158513 777034445 955057026 927641811 936489131 396794972 780616920 898733272 920833729 486069418 774990634 685602497 721601006 913868270 987808385 621327447 985703494 81644470 407702549 45577566 256340939 748633164 997856372 898306272 921780680 477099944 979451591 483791031 855608882 910888588 982063151 208655985 540820013 623931093 844506504 415428517 917875982 910997593 926805740 438600541 850181843 475986942 834184263 791276029 887097696 194983704 937152326 575376380 980753532 28929791 93090190 769850595 925479587 487778019 866121226 796364263 979604658 47796339 844780103 391060512 899237414 734627637 867813001 778522854 954612953 122900267 933689692 53413493 762576076 33810926 477694388 726470045 940831236 339810985 811816132 584183542 964292053 783918989 877156741 615610452 969933068 464525931 940019765 455779882 962390794 783780118 855736619 21398146 361104154 691988284 808124017 79002340 181461331 84338417 378734904 254762271 378354367 636497882 867851698 234867629 656598673 589546740 837541491 824258895 917365520 679718261 931118694 6029417 884294885 764242405 908434222 326884534 634648960 77303054 995870906 868851007 967947640 319399827 574446974 319315302 505908295 926370692 955189150 777817761 825406698 299124863 715078855 961937155 994912559 853489363 997480920 249370074 591296169 664120028 822446135 414971706 485407038 915136493 938783212 760470448 834742929 35654834 380070288 407971824 693691059 755823850 806680267 553852861 577492117 650576992 677793607 762878982 779433122 850067907 910372465 238746579 797930671 252513727 297069918 267241135 359174208 740959931 767970787 927108446 964101454 223801847 939898005 764421019 891302625 485392961 515234698 321423442 601757378 185027502 682329282 645004787 777246678 324709459 370368967 845872822 898365093 760540087 992852120 726841245 970185569 187991270 373549676 628973898 867006893 928690136 963628244 807609457 836630351 702511675 777519060 608834639 990496070 471373647 598427166 858532941 986130333 827448571 851656780 540866325 920795964 895130010 959184509 485190034 695836632 843323244 899227959 113643254 626842714 112905743 552906871 694630279 716772240 444536150 712083178 426688594 854257073 366448046 546610947 12373021 874598953 9118908 884550599 744159993 953333271 758475834 825103649 892443696 945292040 913610946 930039984 231153103 528535375 915735341 994158120 398734473 700507224 238633405 342428190 99537098 373938870 935988141 948169331 624493577 758675033 784796867 940937426 782722947 983029190 159197077 796513476 99819528 180918791 733010348 859510772 91625631 141165462 360852729 660302881 814221477 884103691 679125003 818058521 947142325 991157953 335056923 897927249 933010351 948744926 512666950 834045800 496938079 510994358 745849470 853109212 962924451 989100819 968439498 994695428 935722607 942317726 656381218 955740212 648692565 676179982 18927384 547534743 227066806 244338302 424135749 666706398 895102660 909029041 220064653 996600691 540297691 755468910 817782121 884235721 361605483 690159238 671791949 776940372 296297508 933677534 230026171 571477965 82036515 317109641 884168125 939329439 178334028 642811467 966740666 976038393 484816475 604234818 415472436 474529802 732826063 900218827 654365853 797425930 290223110 358317665 537923962 938783163 612474138 915772138 811242570 953317587 732080598 856086388 977184276 991766340 126806707 452782233 457935792 705777157 138284023 596831395 373097521 739000468 809875667 917530947 137863570 619249978 911255150 981169968 255633061 349607275 456217230 874042987 472445166 485340004 356501270 760226167 643600407 774759190 629395258 733789752 753034954 852080540 32273980 545230395 436864661 868849246 203984360 855571062 365153288 696332640 753156807 958196601 920598443 924665045 839305132 846363853 629598976 962967224 179443228 705162542 925116935 939657798 333282416 750228375 435391679 815836714 229979666 930009604 992204010 996546265 250687039 581149495 290188367 582611570 60599668 276307588 809091704 821793640 849436702 980981196 351894658 786345233 180940045 828051119 361043329 982236753 846826753 879167723 800812480 826506833 690728426 701099288 703585981 793397991 286444964 786377929 9389134 65979806 970529313 984618702 545140152 909243249 122034796 949609213 193122797 274558290 884324831 910210505 330820965 702791946 147346033 253607778 470817434 966433920 949805733 979279284 565212632 672735960 84500035 677987394 628256071 720501903 996271728 997275669 362740816 719361996 908407059 965945474 581390141 994225831 73433571 894778531 799545096 991921426 731948590 872417229 812273488 853236632 46030289 839595282 168655870 941711822 420061870 930213862 139978696 484782841 558505956 911658233 865945973 878412961 289727307 342546491 264178033 747809722 739177824 799134014 93379134 927065426 955977859 992629717 560999678 874605423 453666042 698257874 332725451 915314791 791353634 834893465 529346544 703176508 40649492 85472267 463487660 587033504 375262796 409302641 538251241 995454540 618514145 735146272 347560296 808028173 506423515 731335693 235241567 737587883 721329953 866370244 360124660 613818397 994069807 997514081 743786385 878459995 935893369 966624789 347259662 438725365 301029692 725708168 520995616 614286404 125139011 367484941 345605957 534631718 681799272 942647091 474697485 793692531 888848612 900212905 355253179 992675189 599383322 713714577 359249094 789179073 49273904 995553389 935294165 974413109 930154685 943585542 991245677 991863209 193969963 779948345 657024818 719751112 494967705 945909352 736910577 881032723 412333831 518113536 545677510 956368468 129445994 287016878 258682706 417800076 907100374 959420458 777022710 881966626 815492697 875066708 403096821 466176587 216520638 758301223 738489429 994295845 741546272 948895708 817423671 972862810 313894526 708098237 875474731 964017753 14193191 133647312 97533620 999412378 185079062 779589656 447064349 485297448 466002339 768829096 528924674 689654048 969280375 970163744 233195452 865954335 924450900 956546002 382929250 884446849 14660959 356319737 703011042 712506067 870687131 921759852 599173844 810872007 196195450 882976719 338288961 539820838 86632991 794516518 408899585 519759013 574038585 739780118 500346145 700369770 946413253 983851837 758792293 786018580 538368242 675659364 129447549 480808695 470791531 911606939 865702252 961213798 523599905 989113693 990876015 997051170 511392491 701395272 43287973 59413237 547375784 856565225 348173717 581224645 713296242 811951728 500446089 765606373 73253628 694262023 209487746 987457120 121384755 617513219 399918455 493261088 93187554 478126881 541470998 909964532 601273858 716825188 197702211 632555049 294398306 540494988 411658583 876672671 223186712 269550381 458431248 719611328 404052715 607379106 301884332 556659453 101696270 683219846 423425216 981681403 563359268 794485923 143532390 944634836 78783338 109970087 431486066 519468598 643743163 821784718 559012916 944407873 257476450 657840068 775373252 780169356 456579009 619974137 965138474 965419551 740377443 869244816 11130840 89275610 592279118 692843178 943517675 965322281 955101917 994176484 750267734 928013299 675989377 811152444 543266902 805587327 640087531 780603691 796865038 960443862 826510452 893940863 889966781 919292169 550456560 713217007 551617459 991081287 223500589 357731414 415774966 499339983 115656391 836552006 414738729 861941639 958449619 963513801 813658349 843799898 989879359 999973763 581803666 721308020 836450091 848440100 275600535 577644311 587197614 650184108 955693009 984594157 897186591 899510635 929801202 991309154 238550730 970580518 895076982 955194889 206787787 557160961 57255788 999803440 296789866 622372787 40454698 246640235 786890043 834468945 188310842 754921637 917138624 926643476 98206792 891595976 826120820 897109060 191917559 575216566 159766347 903047207 619651021 730131192 749201957 943055972 155254682 511068777 919074076 954256934 76488232 395284796 150855476 856841856 513476250 539773426 92096691 619955653 304250336 340993254 164622490 741473852 507514147 808789051 73669746 124346479 550651728 918566180 729083927 819606996 806619991 953558994 798672213 805664283 65081609 309560967 846097090 963169089 216182970 669165784 75584958 778065433 435707308 783451738 515302878 914123808 262683729 984387040 810363777 903732326 373568078 511412505 475112724 631452993 888727882 946578192 931265959 964307481 250826887 589678549 597672789 870394388 493505611 852164552 403452248 438169925 736592029 957829627 282172805 405628192 905778155 914635603 986677837 994186768 449016017 989987110 737172623 749916094 648205900 942767213 921069731 972791085 583223799 851249100 251434638 914027853 285261236 590429066 812985002 981288518 696104923 994102909 252275317 701503523 444847665 786761494 323854372 351341413 324941287 935366070 509994343 563962294 283904940 455878208 858148478 899525770 651805517 757389307 73095377 467665107 707901549 783181241 624730314 860687348 824098852 956838420 451408818 817404906 469208990 595574157 798302609 894118419 285120831 763836505 176513223 280538529 296586515 791232764 544695632 761810971 862767396 897495973 634409674 806755281 162607350 931941225 982030239 985209270 779613835 816096676 91978518 459191486 982537364 991149934 467160597 876786243 902246718 961642582 846896383 987443769 949191108 991306001 88232242 337084001 698447587 915949645 681422819 967625442 138123544 421711994 434086176 596550551 150150414 891398817 500087265 862824901 510687050 599627762 318623769 896936675 347360779 487273566 312196623 389706905 290407845 999700271 120453355 820899068 638145823 844199662 326761311 781622303 608673885 810631978 196160347 380948881 759866435 819189577 247188247 353876289 403690214 812373856 881102598 922314736 165385677 460772783 97003539 830902739 227086092 914454269 364073278 753357234 475190890 559382736 562396341 628376181 143784313 889412028 735188960 887534761 918233724 996452997 775298479 921351527 824288332 891611175 667593675 790575835 989300364 998817113 864237625 957800397 196308551 314602290 644042296 692820584 207116863 767227080 102811519 685697215 252688469 776810502 315530852 599097930 731170691 936174441 344471723 494267985 127127068 565029044 96641242 120793062 491816446 539025755 592139349 597732225 350464777 537991412 47992586 422198519 640912273 933933053 859416062 887527857 194154931 664183529 286285697 402076005 979742361 994910102 62094788 621983094 365961916 884099414 98222309 916490784 250351361 802729937 428653225 563883327 802194781 928527512 945966458 993674929 816672542 994327642 926601913 968956227 760533001 993978944 19971450 921657340 488799736 999394232 776750731 943527374 822355656 911109754 37961171 394220038 867726481 985296792 553230546 751971746 428652168 618917960 683823419 698864159 170890870 732078989 527565143 996096825 173140360 936720609 165753771 588820828 488360911 862278842 381241379 393432700 485218341 918410205 82289227 428339591 446356759 755550973 362571392 377981655 732068318 952613257 675513206 867729360 962197295 977094783 421135699 864309629 599337961 919149522 464674493 478942030 516947024 811780407 584578702 637842011 574389229 587271655 58746658 872909732 509709202 956177558 957094507 982640662 268333987 719161029 14539029 287798819 585541674 708837553 901698224 911369732 456642427 990245981 754647452 821269626 199947437 787821079 433783863 805815824 714388063 866740634 537377920 550167063 297257526 744076482 687569897 764760522 768069800 991831667 526481335 839280948 609587432 989123865 316992773 825300021 301265264 818923729 429610654 566999289 253236115 485709482 686859488 721689335 916549994 955855240 999193795 999601727 330431229 668216055 778234492 822363930 512186641 987789565 459612619 756710974 422813092 659435554 308037871 831874644 836640998 866673227 568725079 968587446 677804626 964328107 221950894 524672257 393413204 634652958 811921461 838517812 16788234 889622650 92967296 830546137 577063525 625276813 879905895 993402293 203775073 776196609 716698485 727363272 633704683 726340841 842546078 955175285 450551300 604131684 704820619 889913434 467541536 521684453 35474242 745826394 673631034 901342306 725475056 931746551 630198390 967302912 487098367 676948690 497737864 526691786 945759114 966676656 821236747 906904775 392254745 818438653 166307352 330683837 299084761 866793630 808347103 992167135 804211140 917794069 487723283 689096106 644401956 688932119 654957938 681537914 940048839 960866649 302195764 827989122 455792439 947934905 558016732 698000801 707129908 732824203 47549913 606523405 505371350 859553251 839755762 983989032 139082619 830848226 870507355 992651433 219903532 843971200 68223104 561083330 218974384 814974479 732632284 908020996 551906730 837849029 783501530 985376587 806012925 807843015 721728746 728633500 341481054 927002606 368083524 856866916 547210841 917927566 297961832 443793621 272570359 646868651 790622863 889920314 260743989 688417993 946618426 993722841 431989454 809970411 950128207 965803071 649317083 844836716 734260663 775936551 415876449 514399155 180116625 287329007 199505262 310877206 948013329 997984364 234570888 591975760 58615404 178933155 413371072 553260763 365939209 682038994 381526586 452350041 266230131 349111026 444192957 551343393 901225682 953750870 59625425 71141464 441616891 706988656 133361747 979792370 848019367 849050944 118449911 681706420 360116347 786427916 569117364 924658894 465600474 992836954 494463729 642179079 723259398 824866419 177853209 782220990 585541060 679806034 624953791 831352596 491655850 621235835 739101295 936243957 933703521 996817660 800698610 897765175 414894563 961232301 917248967 983702022 977283440 993835520 284338173 401459852 350000798 561427633 236813575 701345275 632089754 815851600 80259758 257156403 388021012 590952154 16082527 700060087 600353250 920754475 567634303 808623665 450155764 457335093 711709565 907406737 228774264 537006905 210419701 394656499 251689180 908276320 340296153 544996178 787376373 828014460 287886700 708446193 853842614 945595303 159106220 174184647 181277294 865017008 225308944 385196075 145114415 742749914 439640806 545629957 451521395 668015996 719051147 873697868 138531083 321134770 759422670 763527114 218383522 650922356 42847430 813252293 591253230 888873632 129719296 165008143 570960268 830132462 209700229 280499214 200749036 872652900 184387987 518136410 611770663 970714903 855384798 976508834 445441982 706094353 126858697 983661417 200418315 668099620 500557587 750053674 399298255 934432204 383139013 456583023 434777797 907028518 554235455 661986709 204803517 864673606 897521500 906754612 331603424 464613916 803819137 901815314 988781881 992145848 940228779 968609117 172218325 294983276 209810511 920752726 83967016 502772904 216968528 218058673 138822109 980568182 590108948 688344645 342631079 790626851 237652895 869912771 252367082 691890804 350637238 515565518 416193384 699496526 931284018 955316744 127747192 459990740 194412580 647717288 2920311 625289522 504344992 915824919 430484767 977658894 770456513 801125789 886024145 959656160 281426024 561561210 423069616 740995356 696141363 733532858 192392179 740258370 568380621 950471937 620051474 690642061 346368610 646932143 145957525 367242334 72288557 233326834 12909806 804602921 804153830 902601609 845069995 914410341 812170206 850897049 218870172 379624938 892826734 977792638 942181312 982311646 429866076 644566845 392406479 945966542 694313400 870171349 843780808 926668134 989899437 996066094 488173769 913257339 696874512 993452938 190934015 681478981 13903747 768064003 282992542 302346982 225396051 804411809 541884604 728645036 611298877 632696177 427696533 532009178 454644272 961967388 510557325 568923762 112938926 182304910 775737599 907297726 313659093 679355980 662084551 879520791 823677072 849003572 92901457 200139474 824258801 978090984 767387686 911018188 230126834 695484634 85497907 93157030 467006515 519804796 37651527 484355556 907449968 966445133 493603956 570181048 104693087 657741828 998054444 998606826 464613272 780309217 386766216 835365472 323504177 995490694 195651587 241388945 147250931 970163091 779856672 884960403 885754445 989252725 673446401 725086545 285426115 474473374 963474396 980475064 839493492 942066121 909966699 979846697 141384451 144163647 424811051 594009778 207340319 597772357 830377682 968408926 580536752 881187070 176712203 389969466 530156802 785696794 920233429 953975197 978796862 980861163 429843027 973567569 366742171 827341601 333191350 767395753 720494735 897950032 450824669 725231560 139836119 234518196 316368733 836579774 290176196 409366981 767474863 922240530 963240458 976973245 612092117 947315631 311116747 584798679 553928924 840670875 60626272 423204330 816195439 993323881 917789419 984223445 745596575 807377831 362914980 939473678 671796226 917812208 328600560 721165450 168017721 443228900 821696234 913316314 507325349 783367984 121484936 413994376 29549323 773450453 966896135 996884738 153658784 184296930 37546407 52431471 22605392 803841283 795450307 902367118 207767402 807529079 95025574 132039899 557872630 958753359 491890175 737216161 519000547 887595654 19568714 437862454 85181266 762169699 674873847 915088531 606258527 872051011 657748673 671364654 627624253 790098190 807958369 820723033 628027410 648211904 252355152 690339335 826712821 960315831 697735541 901150662 610417050 684354665 406381238 667404079 644197053 736085552 658240146 882993884 523486698 644562123 42796396 174938951 237521561 411641724 346405745 471242764 493069710 708113622 267544226 439606565 412312253 879379363 867973566 951800977 670943408 976265078 369679719 482869283 927614770 970184619 229992750 954495857 994278765 998485860 605845077 991252651 744246393 748783689 873369019 875301401 400167735 897692481 810549667 952611925 820619444 855096033 175389743 736283615 603530980 846055250 581864045 880883430 112528932 726308391 32840101 715920443 273564824 655682228 971143111 974688303 982111039 982731076 913675217 972664017 71309095 763021305 610654000 944525053 901744562 914971720 203228794 260363334 942432836 959030496 758425421 764872735 749247493 993233972 331338678 727122710 670963158 909211600 644823733 756821172 915207442 980943295 335845362 590925506 619962528 779117288 556820588 972126966 156767135 905883956 575860484 616373271 336026777 906322969 374450540 513690165 44900600 357397610 991034115 997558523 74224671 543003988 82508310 300334687 812835447 813767281 934698510 938020269 377210911 460897164 994045058 995924654 637033208 795156825 928544383 958308288 578645414 644912364 480882178 897447136 800471090 944910038 473445942 964190764 947211112 991635577 914176965 925078689 292728489 365673187 987666131 994083739 331523676 712047700 206555365 757132641 312322791 887329958 71324846 821131408 506764715 809707465 936011949 989310588 712103562 989585929 31725376 37395825 781483825 885530345 111224303 164004871 549680420 675597589 574468007 907562457 632098023 961045577 700480847 761375117 456122290 910609784 812830582 867920006 652295228 773996727 604321209 740470846 237468120 730772785 751867458 908780143 732100883 963682264 592752352 828404331 26573952 818835788 215688830 223625897 494749420 672092922 315374863 475063983 3881522 158893265 411486610 632957150 502947112 633985140 723690327 735033393 988165519 999242950 594802846 973992535 593410739 973247843 475338853 932957733 45657927 737160905 683472452 986918518 196849838 521206950 756602410 822141940 354422032 456020594 858849400 983616649 452754940 859862201 425291515 637115753 968392325 991572266 124104273 256434777 639656875 683877481 706907618 926286035 728550725 826079853 647748144 768584638 99868344 959846496 388677452 714321061 791756829 889965355 659931843 678125308 373010475 916587435 951601125 962589237 814798520 989150541 21500459 727137311 87069018 683390735 658711913 815375791 410767475 829741686 914766239 923977999 710909853 865118383 189049193 189644608 387792540 485711069 896031491 916616368 450413112 507265660 754271004 976117080 533781789 801406714 171270028 713064764 72936217 162207833 306075183 694723659 622032390 836969034 280034246 855536683 463773016 698051846 429557653 525362915 140765087 669783637 928509923 936036202 435467167 778103394 538300765 934325056 162339513 963960197 795906360 977610644 745010710 963816147 597498131 631447580 273864868 577778449 894840556 987843671 680809990 721665440 146497736 337317507 910732801 954846752 420467759 486540843 18337334 874331351 661022398 695836912 982884608 985868192 271744822 404592029 755159495 849224544 870368464 966920149 284345395 579720585 45232018 564187658 906390104 910406552 287742216 325624720 478889290 646579196 773196803 945585471 648964146 772669247 267233509 627186646 887626532 928582664 242223387 572693549 11327577 852572786 863988071 940846428 342144580 618090463 748010265 771063756 698302674 822388186 387612923 695116719 8073362 732296988 550813916 726405863 924054002 944741928 48183785 568795221 403041987 745854999 855503418 948556652 711734111 787427349 436463726 536866585 238613850 366790836 371336360 519914304 35292753 172342983 107738841 701794408 317180834 390640277 339826043 493451629 430408332 661813279 788139634 876290677 386529916 681196018 164745451 487050693 60363805 781216175 584302225 616974847 772871605 929447320 143973430 222065514 480662720 710045274 933170585 988913143 883884877 903924027 977550837 991581969 639388325 676122278 80027579 602005923 241325244 971021155 436556381 566115799 377520894 985604221 915443019 921401051 13327086 913494283 283973180 589694895 831816141 841428543 799711736 933540640 413668226 498869149 516125985 622460931 857481430 879284187 504736078 706313677 592651432 606155684 746659043 813030290 987425959 990948238 345740124 368810094 869151537 987127720 710805641 822008449 689593624 815075968 46402829 222569067 226708707 974009937 704949661 940730929 995268369 997141570 841915666 852420058 527254733 642208208 926538089 978654533 642304187 828464004 106369067 975098595 825676788 858062325 203199120 420814806 977820888 981146534 568310068 749674382 126915133 499576829 422298429 653171443 806473010 947246542 977550652 988380269 969386052 976149812 445994608 806984336 333086474 861853290 450824729 843014955 810489064 952853553 648511140 881983864 217289666 484973607 389713271 890971173 571128930 626060861 854074577 980478584 225497771 621012549 377641036 394952499 321129884 974702030 242234370 808373579 789191889 826904659 143584390 789959609 609879604 661149926 282486647 983174261 926610995 960654890 286546867 564185233 265262471 751944957 165541144 329574288 304551502 762978665 736610167 964234423 717220709 996624531 521828956 830536661 300820228 782251294 925722271 973083085 68704452 687068533 957494924 958581710 568604255 844134033 977340896 993685083 80577437 335790875 67945745 989653523 990228900 995426249 869056046 969115529 782930860 816356627 920714636 972977833 585091325 826195112 686073545 886828930 973029507 992862413 994290120 997758111 130867931 750723352 175275673 225037367 779833219 974978265 429992177 661123969 585015778 778272818 542199966 552897081 599517558 853318548 117162306 795987406 71326561 888556673 132647559 970555777 707698535 957456095 355288573 914015985 596387019 882774883 397264610 980858300 926423498 981017891 32714166 574822158 512915385 539496585 274349841 680211123 14246587 722064253 483688601 734125425 549938694 570275253 144915884 211008209 991675467 994066122 852083546 869251083 229784672 538201360 599481566 784884922 775223648 947078194 655599129 882069268 750550619 776806883 943734098 966691537 924245211 982107759 651135210 746843047 79386828 139811685 715421930 811934378 29945731 540874602 405369060 971411475 59090337 194370568 962588319 972583667 236071196 612798082 774278844 843976652 7249151 436400783 73924977 907526665 551707132 587979537 243139360 596981196 472247604 883624307 130561834 547628270 237299049 620764311 478972681 606500106 866588454 952352842 90575086 877027850 545010243 714023545 551474175 948070989 812779327 940626882 509400914 535673325 272946063 761138777 377946418 745844360 650946418 825393181 846123783 883653152 292587980 889976734 960175600 979830679 375725404 638857546 945139290 980276096 620298155 896422180 985020955 998660972 281417950 833317156 842165320 842685792 878617307 933800312 963421184 997042392 650098598 866437967 76689140 893492767 932388244 986345894 85655691 197929024 483209171 573178562 992377723 993257884 798916628 841426208 8554936 790186201 757134728 786513923 659445656 765813059 593879591 776614073 343902797 930864328 723291100 793927028 568231506 790859775 327733453 826003422 747707778 778296156 672504057 755324238 192279376 519141395 851534828 957247361 616616297 700643916 451599275 503788003 487065545 770766476 975450417 990595009 370730160 780571574 268822926 908045523 580010438 699990570 636248694 768793649 965271485 991230882 406343614 731754180 886081524 893898179 401807106 755544425 883172759 924187666 405183064 775327905 726415829 888322210 582134841 815250588 361886678 478441883 318761123 689363158 69452324 870328740 91505030 644584748 554333058 802855359 777273046 992857620 112920650 714851799 707340563 912978078 293710267 654842268 849595039 893237460 599652717 872877976 194818149 312575764 321453082 421129466 163767527 816403509 318419432 546455968 306166941 410696046 128223167 363502706 995922143 998339124 694942664 762810415 600040588 818508809 498031037 818205059 561722144 942615970 670431901 934544938 506567999 826291360 293641185 970837640 245719690 564336414 620509107 707420512 28558057 877714834 302342159 547291526 476649870 869388275 52516438 247543837 624123764 725849682 336513262 856476747 532211203 865545176 733465714 977298060 369226890 905811174 778858785 879240517 362946889 596594900 863059506 925399588 294398101 647738900 66517367 725131082 157200558 651283317 337504457 419893161 51812610 54134757 300460698 844025558 808069793 871987736 646654648 684364176 206968029 722713419 370351505 723379038 896261444 921024386 760680956 983956374 984830178 987234033 426325673 503277991 857471763 986615751 968458116 989596638 937712948 940111071 74354028 984530100 845756100 957307431 400643554 696753815 14440428 860965667 288967083 459524423 332574468 958769569 472455354 753679419 28511735 214633813 680657853 774632974 660236580 790061260 186672045 486286262 174900081 689714104 290234808 679054484 256689709 304300856 15298058 863719316 701614368 978563863 998574338 999993538 314919083 744429525 313225595 666366139 272767939 929458179 685671003 968508569 153718610 710493010 14320219 596055990 950742928 960052649 121454507 640396157 191134243 561671230 581854827 971258166 563475132 627661549 513017033 944415456 964339356 988880598 824339040 950257921 346637913 743006547 524803231 791948215 631343586 817462010 461532444 984956249 832768103 918955560 849632693 905549931 576434388 940477309 790970989 884842619 815772274 832988197 64474164 654520713 166644050 634729439 460381693 532310542 911020987 998091808 391855220 808645063 324627509 528288172 292116024 994619232 461066590 697744434 480868530 704678973 383788220 451475260 48172132 839654777 744354195 784252482 230020494 356107594 85242950 577972243 69589533 654438621 574087740 837059762 951829690 955001696 595350924 800394298 90804582 114700899 130789192 707312899 723062702 989532168 521549543 876661097 867453236 905650980 385790544 565993568 860555113 924596863 34902445 139014734 207446027 607049860 270059806 833406319 21301125 865211042 828653399 876578208 714939974 916890351 43447349 187560246 706307778 846717458 356963093 715385837 83034109 492580540 899077638 932535740 469212073 530763026 593532815 880873061 527739456 682166847 815361854 859979271 949223959 981418002 516137862 791907086 677646736 951086668 127824455 590793750 224076280 786250653 882855836 903106455 470315194 604953599 71579125 570065501 925239870 964050920 509147574 659411592 5871464 935673351 109138156 137929719 513338627 802847905 630029504 783344387 448785306 645424952 923277869 933877258 930949473 932443182 39239549 333758671 386848080 455288026 839617443 967265448 368940546 805762153 759815757 849531244 710531102 795226501 898011208 903318798 428266317 953281746 765027294 770306990 532372574 835918413 170194558 504014136 718986923 948464209 558758170 660738280 327449426 949986684 793908343 907918538 497982747 694631804 274867674 949864656 630780179 995850285 575726797 576837908 956848884 986568806 613906657 863349059 63735924 88693197 201243640 737076628 70837870 253588765 456588901 901358056 646993747 666110601 353390692 448050502 922023324 946735443 236851040 764425996 268601455 820345276 174483419 475687483 928027881 934175651 137547557 391702329 61303887 107674842 262600216 588301903 319992485 916383894 580260439 612150490 138430988 780038569 811446275 856607686 641737299 853469995 781937366 944823950 786139920 959135812 588182955 765749585 984336954 987828381 577030460 968455547 277148168 757819051 501681630 868834851 446646133 886488842 288853158 294407438 543033401 787577125 374741015 954855136 522420761 552580893 108349679 578458136 665655862 909419023 671021493 932774922 607402381 936611714 326105771 403496077 595834853 751031654 36484079 58798319 140094923 167375283 688630193 883708407 644131226 646194157 125634439 345181911 617579297 659226323 527247470 907906218 534960884 579571502 108486321 140133975 267179844 435562790 615465285 996692820 953122284 953945389 188578284 779242793 961210463 978857478 271111494 291274030 821796338 877430788 308505280 543611679 346712678 938191408 650684986 876040748 491809279 903799202 162695633 552650219 621978082 997028998 884527748 929028237 283355242 875188192 443648238 803801221 769684031 862699633 48214709 718210437 171819045 922945922 605493671 987990473 22315689 647261688 759016829 866906472 491983195 838149451 732507184 868538220 976171463 984910173 165936957 599632103 298030289 325074946 232312908 332664574 628489114 767686661 971273453 990935787 402123720 510937291 321387214 778137265 753086202 919534208 304991024 325702939 630318234 965954798 219800274 419741321 606323689 828106158 841385225 863948933 181651723 679288979 300974516 623050432 271616939 381191683 980502136 987001131 513923079 840684390 942551121 987448007 107109807 641399948 447148089 627293977 396813671 522553900 546036575 935702341 603476628 981623798 807966613 884302803 895585192 933986418 223109349 927429358 757766007 973044765 375230200 751915655 299746022 379645710 566243404 606211279 991477197 997551245 864021033 942928403 534706052 790197565 346401513 352250210 223275089 674341732 39897753 619454211 326056706 730957003 527958807 762513801 235402106 932841932 164597190 882163108 582458690 779649471 225273849 546433929 113587281 302916833 653356441 781856941 228950727 676243088 206431273 881748275 759893786 885839521 50690078 842263796 205718127 909612677 929502638 948700963 922078399 923597258 546435035 566998936 856634213 891586465 338426083 804182390 208153768 589822088 396795373 990318031 104674102 677559665 494433968 651929679 173899206 518784039 663137899 696462854 10266253 592192272 455600312 900271747 555516741 818875079 367534244 441496155 969521871 991537004 228729052 351867499 849268804 993873929 856378373 893994791 384959348 761884423 32310197 184957234 211019556 501009265 198137330 401324239 186906790 607048269 528585527 803435190 135916034 524037286 633325376 917086611 943020535 991124532 369939845 492184959 647558100 851463613 646838873 995741272 73806708 641424840 601920836 924315997 927615836 975223192 790245138 924843716 148527230 526007557 835747017 917021960 119658085 146362120 833907746 969390065 537533717 925706996 525723178 555690509 320798410 865591180 920177986 925840874 130798599 533509239 50035183 289550752 452704058 584111101 963358503 984805049 760680638 819767504 557090466 723669437 920034944 934239922 868385802 999954291 688772013 916752105 366413249 522941903 837432972 921133305 644125139 869934519 776238556 791641723 305630170 565230425 591987865 629249726 717708582 829189172 547295849 764258610 717430543 933044530 802454744 984427989 249732119 418104587 580640177 950491737 638766105 907680270 453531727 937562789 868001923 974387931 868118545 902993768 936723804 972861688 134655664 482899437 200584400 803906891 520739102 908591321 491313608 910777658 815244848 984434465 870789501 949260630 940335060 965466628 316180252 446593046 946229556 967681593 527471015 718036334 230869329 950608140 151429778 454462711 286657248 750249207 324595355 851907257 87390980 803054466 223707513 805816097 308527025 505635284 884999558 888866363 890691602 975984648 782023208 904591269 989913397 999601129 971585073 994478923 755894674 869454113 502678764 911811017 947992681 956912321 174705852 834819641 294586816 446145314 742616279 857289466 858018723 900827757 266118307 854423274 614980149 659432050 992452217 996232952 330562269 930474550 529672552 732023330 734820352 749253885 185197925 469037755 315074640 415774839 619832621 700546454 789213886 792451068 359343569 814443283 992905636 998240819 237622125 306480007 596275961 794011355 660030906 684744456 524244574 882658451 485180533 561770134 92545692 569349683 270318114 751460168 363253324 992574812 212237997 623014244 750914755 830336093 600927693 842968461 382124194 556655389 691386285 855145970 295122843 978900268 580618136 615625870 440950657 537776414 468501355 572224325 913025067 985025552 283642075 649818916 426475827 603400065 521815887 800585144 947464514 984516716 883699920 983588953 292129635 343299318 927774527 983908401 728932095 872696686 542888778 548357274 373040698 961945542 782391428 842817207 533418296 891999475 562048207 814415266 696867540 921517563 912416146 997008138 827906823 881980010 872509632 932139837 481567537 742579207 649566134 677964884 521260057 697047514 387459723 983125964 283673643 493756031 384074472 436063290 97390348 184857110 301546529 827380427 749263919 789100974 308751383 785672372 557324409 887918422 474630420 502266713 696839600 742778376 536568101 652476122 351560519 395367708 116206943 124146505 514352832 800834090 590614383 657804259 298917338 613619242 229706475 512344194 313054253 906245026 303282983 512231262 644209353 674145241 184689927 968996541 773253978 943807961 691464793 968045727 917081527 991130257 263406240 667356553 655051433 962567778 186025565 791438318 339219541 369053632 711150745 931244316 590092797 813186479 149738295 511425448 90097533 460042444 190791531 543470716 701547359 826750457 80172983 82779665 524203071 702114231 411213296 834419237 504933373 824304415 788047599 984548239 662275832 721038801 32444164 887782743 448203191 967258571 98429671 941195663 421555547 842076812 959985855 965832486 466851167 509272261 299278079 654855400 335583839 617581975 721040461 787756216 641506723 942853642 304629504 424603639 40675180 703001435 209615256 794342643 913293583 934594817 352537976 565442932 54975660 665420971 54999649 652399824 271614873 751870566 62027253 199133994 692102400 831028583 242556937 682034531 3498541 547684980 661510600 858158170 875923329 985504913 799666204 801351947 692909080 891296843 400553722 765711147 538336752 746734802 78985207 173371235 432611366 782246465 984988554 988079168 33875305 232902280 4694065 547654074 756402416 995411794 436277951 996787325 73480289 468906746 958854077 973391609 918190804 944925829 13086212 917618496 505949352 790411559 80677165 145789991 880299203 989025527 986411455 988320282 483239502 826063228 56450271 238827447 349318593 468341837 462595866 984036469 609453898 829446373 221742864 507593814 281115070 867959114 440759249 558362365 100825145 242553113 12222406 389459318 497878432 852640797 874287859 889094804 950681371 994049450 656507837 768715495 572463782 613490163 444200481 575356604 709064305 743020407 361639135 577708241 967376075 993588618 745524735 991654010 443798259 556556279 46133278 577462255 696886320 763119922 949670500 981942728 280142444 557132573 791667516 800315962 848184454 897173861 447582737 969220087 259907972 362195498 139586608 242538128 505633625 809317223 143992590 859453357 109706554 515020668 829547608 954122580 135501302 934492721 907210574 935820706 154260409 959600009 137760396 410015367 15441286 786439439 160433038 803772303 583099917 871834396 857011500 921711501 23913272 534564625 153779538 900480943 211098024 852574825 607535139 964934753 432634681 685032521 361462352 631552864 288713436 328030429 511673094 596041366 517508437 684361310 637633011 903893926 779988726 847637783 276358349 356683183 571432194 937149882 547419034 961178707 441074939 871016915 959010136 961887528 4663851 953563038 626147887 804775555 515406098 676203114 58072972 707310678 54216561 850125550 736743095 818354430 94655013 518592815 330026662 693732663 488250306 753466152 105540948 969276663 347312539 369483844 334765211 337650299 222344402 698884616 278472368 382847608 562959297 736909223 39685441 283014636 674509452 939235212 204700054 955338430 813996812 929025951 161976673 299143010 941134841 959604015 933047461 983438091 19941972 316266895 68527870 429627950 469354743 669390411 176269668 569091985 60559610 918756122 418196665 823467317 861219322 958305384 993524072 996419353 676896522 975120131 618884028 671969132 219333564 767454693 207207927 937268810 104727952 353235892 114244893 645902379 676287676 704760022 68865646 236834075 949902514 969544884 109868515 799969605 991774079 998450869 391248870 791448195 599143204 599862066 787901293 975193655 744337199 967895690 79865838 521115340 775388126 976551029 938284640 991644751 78270895 945468413 126450699 632094172 437011853 637848258 950947597 990575155 57693300 921991373 284266062 505435403 159770401 738752428 226775639 481087643 120518242 177588789 693440752 768488881 638838194 671388157 1148807 613622247 325024507 405499047 134936576 784753554 461048944 706860173 280832470 843845030 922925007 972415730 865651929 870706415 530492299 599884644 573680118 581471648 71936184 105102426 852472534 899425175 187956892 707351714 453390754 599211823 802278740 832921405 940766156 971997217 222134551 958129061 429039151 794296880 372618044 856831776 235593844 771742670 571075088 600710174 9415518 849727076 23841936 969172359 700165213 877253334 662470774 848121999 431752659 768398453 170692199 899895958 923687749 942551463 946938338 995991354 953188381 996401119 881065528 920805861 848680317 998126510 823491496 915480910 950862053 960724462 451558605 482458851 640237966 831503334 647470110 738022702 805952302 819972488 609313336 734186138 850719 748845782 364211091 475934984 628056396 973690778 303897891 575586588 70060221 445656103 155542806 724511895 409236113 455330216 212065308 589061960 187093621 641913373 838082787 880802796 908266206 996246858 421153190 782667166 518498467 688978572 968702618 970276389 76327366 526853430 50167856 147053922 984603559 989869861 809960662 937710238 681576952 822560174 991972420 999877074 799973721 922221156 883470693 934076021 489493463 991082948 53454634 680122002 853139744 865454991 501858710 667343634 408995182 900954259 83290824 274241236 653660347 660321047 149834614 558942005 743247135 979001693 118755828 773274396 139863542 209023287 45284782 927206163 300566031 571024278 994890698 999438826 397175115 622837571 742971954 833047290 202586737 856035298 810681329 883330629 712926965 794360119 93901113 926953027 742568723 785120716 841356324 879838991 369940504 611536228 746200136 828270716 740863284 856143543 200220300 363646531 517153045 967608005 507607903 575818564 333449134 711386435 866088528 868040190 752821841 872258998 157986390 932440946 392523277 960779980 993986548 994191855 156508644 508869976 160125340 922492449 471695807 960687639 47914728 865457325 254185909 700679376 189185615 307952055 530334167 688853207 919045105 941678932 739335963 976629415 841764480 925974658 154736732 388451402 20907846 203248709 654581734 902474991 508319281 625059198 782529363 857691558 436750112 572161323 952675453 995614497 606022577 939838885 849883486 954505788 441059537 784614409 353212875 972695400 977198835 999188129 678066439 924086029 308816953 677471321 361179068 801694857 231010592 503496292 157881086 264104795 291253354 542827789 848022761 982988473 733801002 926540581 312889845 928940916 187756138 844281566 600539555 751193074 941490498 989805078 980828156 991508604 319292840 699129389 133303229 180913199 672823538 930033904 394343018 553963100 477072795 900137838 589477333 879165024 579441881 867764678 366216513 554635922 759676953 877897721 771402332 955546246 823437678 918734284 248923222 830686226 272373037 282524006 980231085 999897789 735156308 741355459 675688518 804171073 205623330 899864121 161669435 985772127 112101929 993934918 469150986 656124781 833178851 861206355 818136431 933274983 870160016 955170220 617641832 924798717 86407751 509582472 150098154 680867924 144615057 411784735 175787801 476125873 316414908 896307680 835625550 881271338 904596494 972730265 44344474 546331870 171658193 429459556 594648093 990205084 362713347 376661738 400367911 918504599 155483744 621216113 720058000 930353707 366553154 744786871 772354661 902063656 629469391 691629463 322879717 477887031 329325328 962741789 857278826 942265006 757512732 801238131 679055704 860172416 944690188 975189701 467244700 832243943 66341276 775732270 423094933 935635900 83415837 826170185 140846505 547252805 148101241 240366256 340798335 890565926 31938002 326873436 453056572 878162783 926608198 969886731 862021413 932866636 661135613 726786357 276115592 908869340 493066667 898434449 184678663 403382180 872491998 958787070 390257611 961451895 615499319 898864310 2540560 934603370 313157027 758188252 915848491 958047031 147208132 651403609 666126678 850564024 267859386 609753011 707889407 734583004 386855978 681545793 440972463 742192799 516546194 829176328 924587143 937379975 344232164 989579707 475058433 564012897 900832087 973630921 470818396 534052360 238502023 399912394 664922509 744838296 935240960 978884778 816799273 916656570 767690488 939643417 891390541 971234748 124468483 560291389 318985692 658053341 491212989 617271806 632849779 921867238 971845130 991663214 114855146 585374739 930280106 972229929 805543404 920592040 628126273 840860882 41253321 247599731 338754324 517796411 499389288 906589291 692818333 922759460 993930414 999746014 203418447 763469734 965190697 992861575 211507770 518865693 107615825 178137828 595665236 775099628 457841055 973033105 681507956 952088189 981700413 991503946 583590842 852460450 386787841 488924325 127904552 774444323 362451372 611779193 303705877 718918855 597997331 995586686 561656208 820289623 681826635 871537845 342905879 513381158 339393789 824038594 85946169 543708907 579467261 775351253 915678746 976135240 423889762 950263102 410434285 674291426 528001985 576286394 68267026 449134522 212912162 694165367 443057894 942453876 914223214 915307335 721840566 887201592 841119184 843322621 549626433 984387471 853851142 998518552 136816298 623317572 694544330 963808284 106832303 458934930 359039861 668749158 915503511 957227556 407209502 490779745 846235088 897312889 522219297 822185905 957340164 984149831 905985822 919314216 624984078 962737661 548633656 651309245 183336195 358842036 52442771 779076394 364073306 564690639 55372433 82044823 602246215 735416829 932829605 933700686 501056485 573095698 8230629 888113807 976361078 989456746 739245471 838249122 421506769 849007994 691825817 775025143 832038581 875955472 128638879 770366856 647015317 853817434 639138212 805121765 20766624 589578491 257012708 262399846 126873813 811869270 635158314 971267416 902606142 997226308 378946379 774096005 92134010 361837234 504420499 755544437 518014706 831217333 247658887 941068641 739681767 894090578 636531282 702942450 323534303 509310514 973793643 992360421 758103534 764332439 949786862 958129139 944196235 954036759 103717875 636145124 578734155 838667848 956991037 981327627 486305893 727383194 210042270 954827925 583950397 932335682 874395392 983110242 34657665 711061315 414601313 778206859 498097758 718244379 44868587 541473263 266841100 684673524 446702194 821998128 826505065 966495696 492424621 496790834 28133628 238536914 259440494 788148594 954407661 973245826 589924061 727204424 826526128 919757334 521267228 805866778 779808631 783244991 727265325 850431069 867529945 988403297 804695761 950675785 825084470 944038386 464665373 720067525 921802827 964833462 554996739 745299836 783928479 991876236 925788500 940001189 82380738 318059709 316212161 761361649 158748098 715950460 490866247 937022926 555230045 711891940 678331911 768934012 784260866 912431906 404423140 508755539 348336170 521528211 100711796 869857098 436909861 449071043 345355610 632057316 573315112 573900406 937847965 983796653 852166757 908021390 758356115 858518880 330295816 407877569 231559436 697710646 417993466 917284425 702622226 824664673 51659296 257286288 500013366 991575568 313545767 634121569 229023823 829243254 643037046 810699337 482279797 701774141 197258624 416026313 732348677 732745721 756534764 801094646 369567249 783448448 639226691 970853374 509494726 766334217 880166318 932188878 932051437 968499286 762506375 801593388 935314739 984662643 275324809 767690561 480295525 821320449 315789133 466474620 786060079 957673183 115747896 831512370 225035523 772837808 260146904 465929478 789696110 804020052 142807238 729327351 134407725 662218250 443116399 447533425 955056612 983626092 483417434 680609869 834907694 955725134 600146831 830439108 626705060 914624275 870754519 963394873 968465371 999603787 541523248 896056650 528910219 781214251 211844084 826071037 151024139 384172351 453867957 479471143 629682028 724297901 725269196 779866504 806411497 932188016 949819626 995807816 296582548 770506725 111980497 995497002 656571568 865379637 629849180 932007870 967482515 979239999 149856510 539190741 965447262 996965316 246625461 593992904 214548190 729620820 735264048 964687648 390732633 888547789 356111304 843633780 208578665 730574382 756680061 868308266 982493354 995929146 577746255 761682715 47456536 988033848 549264750 982121219 111734656 689675049 370988579 442299312 723815238 757151520 871107461 944431540 149044999 910167129 335765647 642368557 875585963 929676043 945826681 995956744 563753506 784485528 849651935 987359269 336875346 755339460 879095761 976531654 271757194 389234732 943677153 969411656 418686772 916436306 688543804 852467441 968043842 974502225 173380441 862826168 828900869 928071023 491639790 829873148 468542078 513998770 946395230 957850033 329129009 822720813 751782121 843851591 780085044 920285545 286692130 947448695 997170620 998578167 982967739 991216492 199348084 640637542 991449011 996027333 868456216 873188943 500785403 621930521 898657749 998770077 773981969 909190245 866377923 964471383 69746741 843941837 836268476 938184676 810206078 887127127 918237698 973155690 784233636 941464311 674790421 767172262 222135961 345154322 791935301 973175013 25370168 144068143 647326707 724394221 391287934 677422048 251428267 920517631 643695430 736796286 480740034 861549156 592520932 943055429 158859941 931079742 116592215 942858934 484885444 817870757 457759759 492711940 759649140 828979886 55034798 832218649 342475234 591706714 957056009 995497124 365104322 925789846 886111727 975886135 41359514 65298193 11918007 625256993 984952755 995518058 371419907 450753151 844952032 915333365 176745985 212286007 651238085 740816714 646582581 987982521 43151921 754467712 221942767 597001502 513627916 600337258 490927518 526825925 404328017 948577069 992296022 995727638 852229625 861326706 207811408 394144219 172105003 607400554 15596749 568480970 683271177 877401514 767078807 877102297 899452052 990191718 34826179 782830287 455596864 632683916 501902120 929152903 717447294 774174853 523231497 630108916 334200057 481109538 795892001 984514056 254169847 965142540 216290539 735129905 758437297 965238310 997684588 998614820 42486857 180186594 149493299 927817013 327769084 355975904 679254907 697394264 313981029 628953773 941784135 942148685 756372272 850142602 914858928 940019314 713544192 974696032 191407563 678033161 954068892 976599137 921535925 992207092 204769415 586997913 319443232 997109337 565146189 761509329 115981018 643503345 390095166 957637415 515502139 600929979 766608701 975258311 24643866 460795098 643455436 849457967 581781055 688497252 485464868 838263318 635944732 802860220 163991338 675883543 787594659 996616303 950853538 963523928 638519256 855142910 212662006 861624546 150959265 365608166 727198296 752921094 366689849 960582192 547740717 812501960 391072825 711230859 979272594 990166441 110660815 585817237 531868548 577891873 373058814 693694426 401203097 496666328 260122523 416486077 533536902 663322792 274959161 656404718 532120956 699875571 845929576 944704728 106246669 185490146 811722501 911888471 452320767 862995115 238742873 365153820 915078424 952272866 356549287 763997830 35136249 217086359 56923322 591841316 765693433 849436329 415440288 674404356 775252244 861902217 32670949 338082081 256676465 451892959 485062856 938985977 968922593 980474599 622408346 758631294 617192226 807751391 240061760 429162388 899925155 942043086 512638779 971379218 165403082 652062996 819283537 985628262 739878634 845832693 608939065 953682426 114323086 954371543 268638246 751404768 309085127 373474058 993956941 995126418 710305513 764277262 349047088 746904603 383652966 799485751 575079869 863292050 470518959 605056945 177422896 585672853 517744246 871285680 891891941 927384126 573047718 900063991 430732202 497273885 277993205 624562383 177891525 692342212 110402614 673698501 83593566 216788226 881068694 886269382 190245027 630333424 638147802 955784654 675561102 977588698 112613259 404928315 9005008 176895651 529926944 553559570 929996039 978441957 67479070 904607057 709792091 818043173 542500580 625175179 39097298 79121312 826118915 862754720 74776617 269411429 66325107 620704813 30953709 547245860 32816930 300205646 173212080 543410732 320961959 427150766 372005 718150380 43545329 787522875 966933652 970025747 49259600 631327146 541103420 573611411 583484394 616667543 41538732 118288065 449333593 991513386 690288766 895586447 802938290 820498594 388541671 518063906 751257879 960978313 930230244 988219988 984833365 998705683 591030974 978414558 98178390 245921678 468412568 474708431 369697658 942211458 597517742 750181973 609688797 763104457 992793593 993780287 523143952 947090664 105697879 613998898 849555068 899657382 256714796 924145986 819663305 877834976 478945211 817594191 59498634 445894475 677904912 682088520 750213517 993235961 294187532 816673987 506802776 515371720 633940448 990376704 537943826 890747923 471693906 584180600 394237067 906348411 660310380 884375615 847756111 963195208 487991392 674497674 233093066 868983834 801092310 909101799 825010232 846469126 938021172 958043224 921800754 967802484 938290388 956489154 818406320 991649026 285205933 867143687 613916353 973643358 690436657 890643024 976062237 990900116 441290407 765898358 93907391 691623411 463793596 782838872 809442295 925016025 414014277 938354914 23872869 601350179 735153241 845919973 815028475 818049789 27496000 236927411 842992170 966469226 498401801 679153555 983556041 985910049 81997366 552972897 197272773 312609588 52626662 75980926 759843721 809177183 612055931 687710650 198387712 985700049 365941633 426964631 237375887 760844472 524545267 657399383 523119817 648630292 512101898 783203915 476288821 924257409 103348845 591974624 120278041 377315009 131988703 786490606 252080596 644960338 8168021 265392603 539425355 748480631 802330548 954743982 565774499 672267175 438093629 516796446 67646827 465018381 329142749 370971831 542466230 730881923 455023247 595305035 28353952 511413877 217719424 918280901 900664917 958348276 435818750 819569957 144849189 549077522 193371852 234409666 750323655 958281742 498137597 972642133 413014171 848525315 500403812 735252471 421369149 923898165 913169831 971997923 171477851 882979695 520602503 917920824 515859635 749849606 679871592 811888195 679932709 789014818 375982952 515521783 810688843 827699413 963785179 965715532 473513306 925153141 490906025 674119435 237210569 499444940 163623184 870632765 892520538 904110363 672058808 693714305 401809467 600629887 37204468 695928629 409255387 834325809 35419714 982915475 865835761 928516619 453642362 519633756 665053782 785860587 809362701 866503605 2642726 453146043 78901389 272475003 694723890 734589676 886527274 909426451 946629131 996779971 926145855 951641707 553216979 789624208 644299165 791305334 283465534 342442507 934539541 940852750 53712801 373449685 446227695 561910704 252033585 335089605 135440288 845981698 29662641 206086583 623188947 958734473 572803537 620793187 169819254 335297173 639856724 787638198 168156476 893750871 884608245 945169042 916076708 989659915 59995286 304660412 477778434 558350673 107406008 879498357 823345544 834069315 696803364 962987558 691317386 758225612 290595603 304402860 866616725 928915844 467091048 589731822 718398995 723134779 335801082 370212405 98792493 214524557 299350093 534815498 831045318 843517978 146236883 380538968 484111434 990107721 739796387 758808775 603671924 781588096 732935911 962030267 718212678 910703814 238772386 351932845 81400514 438764982 707934926 742361987 329254551 430120144 387894214 763027489 400558508 411117683 149805166 196866342 5742697 255168613 908307119 919024939 584319464 933239634 911178149 949647261 28697957 922954732 795382506 913298471 462384667 483756013 20888712 951306188 212185795 478497504 973690285 990346922 857501048 972610455 485646159 568789241 411026852 667561858 643479650 706110922 219839740 794761940 605646937 950566843 145808848 943351667 101719257 619707572 803603825 940181952 186485137 757004988 907260394 947558669 425123398 568487864 233188626 866994873 426294587 453746460 341581883 980235955 322680046 394520916 179800674 217736015 144156990 576501958 108924230 679050180 64829316 521756100 937061073 954025320 105165993 891502689 607003364 720382319 827564155 831782616 7728815 862582439 858344162 948439250 882899535 892486720 877613283 926638712 345359157 371163069 163389809 729824611 24916111 949324183 697361381 870356614 611430544 731260686 422153795 467191932 353094220 954602196 4337876 243532505 502273587 888709874 279801017 456375218 914929482 984136589 789388025 888929273 647318615 786761475 642115921 818558551 902004810 999328163 8855745 635820684 805779036 984092326 607167518 824122272 233524550 731114056 104835937 856645668 362419639 472870453 965296600 985746885 215527982 418245052 997003887 999811640 892824385 957305465 767483877 824284788 224833767 330327608 316616965 392430204 338585328 933119310 492483097 766463255 205088331 709870638 723546379 888957357 724588310 933147220 869482351 901474271 328128383 962796707 842681636 921244943 367159875 728870877 358307119 641903720 979573980 983372220 487212243 810423741 878541926 996260521 946735315 972969950 570490437 876047356 555683232 916546827 231210075 571506443 635466178 780784039 904987849 931311067 878399885 961705694 585497099 984126875 195522233 199169003 677669085 849520923 61261294 327432733 893594944 895080306 410203484 632458122 764550282 775162209 963614171 999240505 825320438 868915737 458127971 519291822 540045240 542323560 818483451 894327860 547473361 976625355 566347750 569046593 440843442 448567292 466238579 828052671 523571481 821604709 640325338 844186506 539963055 969128538 819466931 886491608 844693365 881137862 150501075 740902988 795399241 896438402 10541579 133853810 795850672 819936740 929342081 991376023 906753452 920848016 749841320 843368423 151536916 171603236 630053523 674584370 95216680 609499610 853761238 897940045 394431539 716818595 113615587 384330405 496809490 701242905 625902904 972053274 37120605 632421345 980178389 997980886 745127417 745171606 710164101 772412758 315666757 920062333 589506808 654197059 829768648 981718976 345485372 413144581 361139640 736933012 834859381 961328108 332704722 683341128 877588048 895101733 249297124 544927763 724715927 893154843 585386628 867980851 883802887 902450433 7435800 182168015 256032804 301167448 776112148 922444662 123027015 669393337 352655412 449705270 361085447 602414935 778357984 867824539 522757090 786901026 540776669 899981591 577595398 737076196 53181726 975381452 464429645 950381993 289661558 442810996 127718013 353703097 410351915 869618259 737559108 811067843 21548314 561750452 92205989 327579807 421207058 435030388 57435980 935094604 830970205 929280369 766473805 806864650 415982515 456825789 472334964 592526873 702941965 862571917 561137719 955987075 374364229 889839078 133241646 463699860 475158730 565576612 929856145 965966365 903162210 971288568 496207926 564050620 294915263 951636114 616627955 731822157 399786497 570685020 874504937 917328495 241499905 582040239 213441470 353650606 814234647 825935073 410345916 970263915 951439283 957156418 826133139 964471602 212536827 441302013 976568336 989966180 534550394 734372694 994465201 998974980 2950338 760233450 152560483 225370521 932904020 992796649 43779173 58858571 581200616 776378299 407459253 417393439 140185796 376974619 951756524 956891532 274062678 721040450 949743486 999419364 130636589 546092931 838120150 847764442 934918211 981725204 456320079 621964923 760477647 988292097 197810877 715686449 503228574 751809635 339512245 873051796 590202984 667299223 541328512 779279465 10844272 491764677 476433830 586697690 279268431 363518365 663586690 980303833 620387883 842992471 318486608 934972678 464011201 674049068 971755137 987234558 120426927 860353863 316675096 546065750 9892119 73794720 896394666 931815740 167285860 949600706 221722884 259216073 126773025 300789438 345141947 660365864 178651195 439128427 809413835 886729219 353360743 980935555 769029838 794141503 17795306 915888754 32010651 387842127 234703549 895781814 937866396 960217782 553669379 625073685 275750057 881991311 109897836 918897180 683076771 697570329 999706829 999716918 68080292 590987536 214004660 481308078 534440979 847467348 36173093 755710911 716944553 862537360 402472852 926201110 853477817 896540870 255553302 297708324 546733250 768349978 381899412 604412827 446970837 853791910 191160751 218674114 767917105 965012591 64259868 548022250 558041079 808399815 146735527 741879662 144635179 995852989 252006056 263259188 703470610 729362885 742499512 965435654 983104413 996946879 635308707 881162802 964315582 995605813 235459242 765134014 398723277 719904902 732379147 939440836 630790097 782750865 585520880 597817059 726158191 935693365 680346467 693857923 160281762 216615267 760781659 855527564 697203806 777018972 739159719 965649350 596706390 905576182 292274414 366151099 845036430 981658468 791548676 962393066 375063766 929435224 575866798 995380730 202171352 943333299 418773201 962020422 48067404 928114375 871265398 896813498 150532329 900641671 849918387 965247588 440498927 603795258 199279550 372463290 80879858 617741704 506045432 642639634 723010815 872417461 982027811 985945311 529991099 881958225 969350632 987923561 226472055 688539567 304863983 474934869 17073601 234050413 501814858 757547012 476780036 933902014 208597440 542268996 614032329 950531442 910677436 936561058 944991148 973767234 458372037 528605389 768867168 983600668 894247153 978452565 885377336 931859998 304004261 609520618 861992189 868838647 877137438 895306499 839358011 858540403 434288294 946513350 536014066 684740920 274004821 782939956 567417060 586537969 319860749 475513657 145755571 198797409 666383984 868954846 890726409 989599019 169172612 370661026 216616711 687463613 391679102 487419797 881665193 961052688 272791575 874010461 741960194 960690877 216440329 847244237 208407677 428009331 221040928 417106483 695761278 974361674 714685085 848392525 89046867 714160757 99915756 495884403 484745369 564172860 658858011 842865535 861118068 875831615 589046706 882899386 358423654 471264708 178126950 370909470 497141041 556381829 398699731 540604548 546822783 919300687 507593049 763472787 11943025 112269463 649014913 964698256 220551731 508542120 317886923 412841149 217534842 657328752 455934483 755408975 880381494 928655773 568591014 672544564 434653856 450842563 985334049 991580763 172329874 508274249 751967204 892320816 770564818 861326213 939768181 981171696 495997735 852116002 289108487 733847347 577827677 910869476 135920119 264728862 177905524 391802556 896220964 926288924 248274974 574467757 725240399 958685702 584847859 999804901 261751483 591828415 463315106 498314061 304857531 538938753 666863112 808178119 77578056 206865996 111922479 968096629 24170543 489923297 328821267 691746990 170860187 859972665 545659293 853059267 995698919 999171719 161320438 531205727 549455540 576231195 332316262 361907592 822492247 908712961 447418073 714101320 171828802 814987898 707873446 830957391 895278793 948398001 408992968 983356090 471112869 477761897 239372439 814986207 936951352 946874023 429342791 895020307 325796355 700300277 418406023 507853487 506059907 598099135 212734811 707616920 568559682 571401797 159466496 921768591 496258425 700060170 863878591 923848890 290654618 507231921 122873766 991218779 324960090 869266798 881655980 947914417 221472776 739348819 957609250 959946068 723908444 843833796 712002573 771049087 344052824 358830971 96841618 758874574 470539353 610314324 118826262 584330173 69868361 644360399 382148850 978463550 453952726 539269177 857414487 860498971 606310968 760315457 509898778 754706641 106643938 506056724 517543374 776421083 213684768 597516954 246460867 485297307 916037018 977873566 484767654 817280551 963684093 988087262 282679883 900629098 591211944 615807153 179686403 970991401 425188593 999322946 324133852 562967608 332456944 409586969 654113608 726433843 792561926 881041452 736580109 752696170 906580587 987498330 880180157 941623141 206555925 516071255 626965199 822330210 580137062 720940569 100447226 832251872 473492685 519201749 477781500 952157843 18288835 958101437 243773896 723158659 788068677 792112287 166711515 538159215 526673254 766166352 473794042 861204608 192159109 794904270 546206791 769010578 684185907 759465511 34412458 520903592 931341892 998433365 516542021 767065710 924402231 999893821 689373506 889621020 86660238 467687376 82269929 128884727 419380482 936927494 22131118 920132140 683228678 732415968 129289171 886269147 8986465 891981523 204160373 867281836 798890782 882358133 629158715 648823117 852740516 915926930 725335263 732282600 333661425 582431116 588783978 789080337 713202300 720520956 496724857 543641973 766230353 856817036 171160847 624118523 32517124 881109540 584383441 855318469 470267634 643980809 205117239 810071042 651545017 885761038 202469341 220670852 232242972 441000721 48638319 244544890 718964074 962237797 244964023 960924886 865984599 961767652 756778325 943127167 441529411 596600628 691440623 782379492 98851667 865373572 73631556 905018176 235949390 490050751 479226785 546985492 206459175 548933527 583267780 749784011 668500711 701471213 410692686 583790963 220750991 899506851 21399648 692714906 579828474 914005830 311389914 770515868 394421752 646039495 264631847 814218887 854885051 984260012 229411458 297485746 36294561 145983417 875437977 981184685 383601869 725052135 793766786 810162484 286425420 495013631 714524389 849406649 205259380 848685959 48477101 942072449 467882997 567415426 984161684 999589030 470619378 678131969 652667886 662766976 486131936 865666733 769492420 958141216 697205775 820103519 797076006 846241929 785905511 954913776 251803381 447072506 970203932 970786299 804479616 841412878 390041266 669494361 171553197 176224162 710671676 803224969 221729023 829958725 602732939 936082886 123402594 559983512 321720225 997512090 997256453 997849535 299559450 741095423 522837423 663124759 591123074 661717959 318100333 418355765 399803818 743135919 635269482 882123703 44097986 302873604 417566706 923881074 860727285 999435384 824126319 842672739 912877310 983859777 775530756 863928590 209096272 326362036 724787653 905259288 809250661 919172389 622399318 919347765 643213957 935874183 1032353 855474459 419554629 780659107 384607015 974807298 660507449 869692510 129098794 841651738 665688161 897997138 363999923 462766116 417497367 662608253 100822549 882985854 843465244 889230641 775857666 888822658 789105370 992759475 552379815 806802775 755352426 932516047 389019874 768787666 906638640 983586111 501838455 789837190 840877348 917670630 227145224 366206851 82457055 812005683 333508997 415847091 87378216 145864079 606707948 625083972 15508523 942333459 147329928 184252881 477540362 643872690 374572716 760550298 856302479 891478405 4720730 955885943 246176978 663908038 760362574 943253765 534878288 872804379 555855588 679179415 372256707 520572820 338539934 836452950 679497395 796600453 233522395 465258757 252820993 425910557 527567173 815494148 824963255 858608402 95735411 262151603 840136046 941573724 310761317 473975975 633755735 980009459 617011582 807969511 133578190 136821797 152764969 764507095 146344720 561172797 425631762 656116711 655493911 975855738 436244470 884490741 293127784 686516848 543817360 786292806 518438566 985121059 860391897 881870079 969874511 995061511 550753867 988860006 502400147 639516981 784156862 945352814 441747137 752154809 676700917 882583614 739932707 838481016 297369180 354854212 441211724 964135810 670045794 963019809 929418973 981594096 120700893 189720165 967070270 995391007 252958346 371044304 467721851 638281523 641262922 800858735 896742211 994937616 860389325 992677883 520213629 561948721 627543801 711985759 318803641 983850209 311865400 429656249 584525443 875968061 986385034 986758346 305689724 972071556 247636526 805982612 158520769 220252562 152197070 789617620 82816080 377632405 108371567 909458034 100609097 768151413 8940173 579506125 141205705 335194097 102884354 994270063 724309145 744220079 469746934 652965295 778103382 821338159 420184138 547000653 839308904 984127108 558496632 818719029 973365084 994723777 442597131 517525982 667768191 865088613 352334463 825585657 507542812 691236512 174681921 589834553 220043805 949152529 365390074 495879237 433734193 852027177 135819130 407239900 289105933 872311835 333418331 531233153 639173913 892023198 939767831 980270942 397338261 923722521 194478881 483482201 309237823 933493901 90859208 183195277 398835363 694535245 527167120 665284951 433878335 883006301 286547725 862474146 746478914 987409194 679158179 846138329 973644314 980429381 483125546 485021016 818947362 939179830 648661978 920308643 327695680 504017991 325084583 639030099 245499474 673961825 47052629 489967597 653314615 976970548 905571618 948839756 712657292 889996309 474293920 545091764 575046705 993000153 285608176 491196638 340667283 904504591 794060830 956318347 991795869 994265920 604698678 750583015 75838319 989317181 974772720 994585007 126355180 899603371 486055248 793612251 809818600 889836763 186255945 353860952 355401077 683764011 117133357 699492214 896990001 972968589 34379854 253411516 564813928 947877222 34128943 284337955 173073829 674179368 969704879 979188934 101286375 874145382 928897380 947600573 401061901 535183059 142239358 233201050 151451881 315616379 64617504 918380297 346874252 347594138 435852597 731026384 492665808 861718793 651006147 747425705 121792944 231949291 878228806 880570865 384893956 781581033 815514954 966504714 874306192 977049932 196799692 303990890 103327240 439267991 226821544 884079487 618940757 631679752 896967507 993741543 907023725 993485511 296187929 430918727 891500745 973045577 367474757 442694175 444030184 650650542 673637101 925603940 632174856 716703433 360856483 749149918 636858119 742352689 730724604 931237991 204683715 738081201 167076808 696327645 566763577 668412073 172834506 803682103 702117530 763117903 610132204 954423125 574134487 983393257 940539716 948650044 392536819 969544994 254032492 950449336 424997828 787388513 288377503 521190219 174504387 444076817 359791487 916104179 969991735 987207688 392606704 724563992 85683779 839701514 691824282 821225048 833248273 998734122 186304243 418546175 892816245 916700399 820872422 987817046 899285778 999231375 142944718 878371512 348467487 866091374 793595140 839741586 843053282 988770541 536900015 630202644 197266001 914693448 95367555 361254185 550903381 819884294 122277813 903493484 828284710 847897224 474665049 511076460 673802465 816370926 239365369 651442107 592786902 883950602 53855595 957933453 182115103 312989969 483364916 702257560 310781514 552306334 913366922 997991705 919588617 974211472 908394376 984861035 482739649 973744444 154449221 508137052 729458505 875734634 927907845 986113324 995660406 998982774 863166878 868760587 226334464 770078265 712174520 960275927 783181554 974589015 156478589 761882526 974446891 992892294 342157549 434678472 375003365 493487424 615883252 970634699 106103471 215582626 733322402 943645598 490723464 772278233 707602325 899666624 655199970 728441995 686163527 925366155 28549742 159848766 732879740 793463438 492609680 748312393 878174038 982724474 463275816 744157093 913027823 953113478 399065915 619631118 542282565 741303819 636460338 903864193 369956151 875681737 26175208 450700034 762910073 811456615 889713001 920419870 687742063 848901239 542290603 569750031 300977446 535270500 378852992 952896230 937777364 994779463 694821063 859400051 621076971 884466466 992876788 995237754 714680346 933604451 503913214 671101289 208466137 358340671 637374356 802476239 900137369 914839342 246925462 920058225 672884873 853309738 883531691 959023798 834547112 863078346 794116875 984955399 485685164 858384274 493155045 662001886 795716273 927350372 782648405 870529844 592422273 672162671 577876210 758983585 878215323 969101364 531414538 788341078 540156785 725717784 399160124 888506427 156210231 501522899 98545512 798900301 443753675 544070420 939092673 963492207 919508232 967803669 21079093 572117747 540199197 861773525 751406341 848082830 852941214 918029070 730112386 961060449 812122126 840864137 133411328 633150258 774314120 985356907 81144408 751046130 667631734 783506907 86223433 302254737 191512649 927186607 851998340 950441887 266522694 492169632 99778734 228564399 658751335 751093592 218243239 726461454 314614584 392030820 708840932 801384474 442882859 722274223 405221702 960190790 781813250 974978433 388775291 408042997 486748847 742173770 906914301 996249180 873448966 878711993 468648783 567192914 362649760 406571452 808006195 854203381 73561658 786551478 30631380 310210641 709212213 947759409 645710199 745010177 606735568 710212198 380420227 857008220 460447986 726777145 335330784 916618448 826943352 896874753 961838081 967566415 126826934 955011049 552715438 888222122 813131204 834306751 424279072 497868375 293892632 520124709 747899052 754004291 4950381 240099967 652232234 702354397 365100914 601628253 442174311 489888620 272487469 723126855 493967868 941422573 255621372 551567244 222292410 242451678 561476751 613649188 617788919 897026724 522633885 834302958 159488189 989454953 912096251 972209466 807189769 929789574 408249517 826766813 456316337 699748054 810955578 816055454 55228326 87018044 234953319 736674450 373953115 433624820 678319872 794406042 398951016 752420205 345165320 793367442 942543384 967250186 879352762 954333021 631497821 645427235 486333380 663611073 652021256 746526412 775732421 915560345 37177040 53927577 644380948 876017128 851375624 992696996 446166004 811281334 613847888 931205598 147312369 547395391 650211577 984653692 118983332 896651758 393332317 619144943 959415800 967995231 80862997 252376685 495572828 678504556 827778796 925100256 114591937 719906523 785997004 911451733 547111412 569113636 748309894 780761092 56301733 130247377 470261885 658528372 967088620 996022287 735821580 769339214 966074181 989085535 838059368 859624625 776069860 844812058 903711473 949868197 245863829 396870237 51249117 573702759 896564698 955853496 147223010 473784625 908927306 992398293 268406209 596994315 459421705 689550571 741098188 993343222 650698907 967448768 757621207 848046875 704490382 729091516 33791888 685633190 85354456 863807370 815295867 985898059 248291114 382247637 692052383 787348306 600823899 686374538 73914465 693745272 459601954 797129101 156995114 253061653 303187932 834749898 527531756 935880300 415276052 801645062 22616945 937818158 40333244 234141279 454896272 542899184 485306751 879495260 145107110 628990168 861944420 928160755 390158655 713249791 124270253 770608531 815191812 857783527 315517600 521570966 127272096 865929588 404646206 811419389 366675564 575996575 820865166 833940574 717064688 721408708 781289264 840176669 903750797 930889586 620121302 885361967 171992055 518732947 710389789 822015719 665786276 671634301 395752686 636062007 950273694 983718636 713700397 869359321 237114853 518276300 67447873 719603595 318904048 822398518 354593571 829735294 449165491 598445737 188204702 864625426 837543275 946604211 150400021 948218133 923269588 929654996 807467675 932963944 631900516 959896756 761096976 976039827 570408127 574212927 59042893 986337295 688869171 825607132 459423021 736111456 360098690 839824442 794837533 846908618 528266638 975461938 483518946 713508680 313898801 622638935 15555304 627770685 430093798 909564745 105646328 404239823 917383379 955635655 599319839 672112548 673751043 889277008 881267818 928488440 824725569 951739361 464734689 697261511 314373999 337091670 927294378 930839716 998081255 999767410 609545266 922365581 951172100 992891175 689915088 945655834 354838724 863463965 107702987 136873010 165073454 625535033 967549133 986302749 41623679 372022220 41678809 415325873 301839449 910787450 708378371 817138286 279633284 588131625 137009749 772015596 169369781 265900451 289134415 803731733 409599298 772392382 913388711 986925122 121554635 974694444 578820973 912852455 587304312 716085669 715320162 949829862 561993509 728267234 506296970 654531367 704962655 759255701 246739577 427117432 983755429 998444298 204899851 680900565 186606614 392469128 529619884 702922281 663166049 943139658 437284648 605158613 237360798 347628862 650612432 988740572 688691493 732761401 205777570 458269965 225634197 575384996 676248258 800113420 808284067 975219528 804366590 832276122 453247003 790207138 393662826 726449619 394663468 496279004 362706029 401343943 103188509 895200525 686761113 983944240 577315993 940677303 758934758 806483929 602307550 924155954 252064429 837950177 361275757 622723862 205921796 767842436 347270660 385606700 483186319 940830678 359617506 847085731 407320630 614566509 498105058 990527652 823586512 929335841 455341688 486008095 903375705 959948447 12138880 929132206 308866964 874833462 935109009 996191228 804523539 975040684 500795327 777733723 540899081 765775891 361946973 649730860 758720420 931084318 242868260 924387289 560070135 750437260 271231051 797371408 799677822 906228132 870217541 935423656 202926725 222533188 963588592 970017360 993058177 998652253 761016532 972268239 782102639 783910909 680050393 799229974 380244652 908309173 569353797 876484605 346690638 957815474 63236440 248302577 817724764 975032606 182460495 684129277 912389550 935995623 478676460 732601914 895232987 970441432 893659653 992060905 432425933 988687261 837499282 865668279 477559338 633742489 541734682 923088452 762910177 918550406 179608383 200404438 507929514 676870037 969421527 977479293 455271729 532024643 357392077 576042460 297040063 340093646 327754278 372759242 874287693 907095373 899954969 901464407 961262239 967455037 713066931 885996353 495132374 658335386 2010180 923592869 175507671 446779018 800087542 883808832 583941661 635227793 145939256 847840475 170711686 874871647 15475319 265206761 383944051 874595050 769281440 956748546 45067993 682705480 652419946 926033393 736431114 805019370 90941834 765689632 752436642 929286406 70905586 170502889 484581721 506059823 447255779 826357558 6392778 868410242 662679398 984212083 80198632 131697572 229144612 241043546 927550099 996301674 535688169 761724980 53059877 102163652 392845686 681422203 454303621 623596879 235617957 672219246 625391460 951742806 637851334 944882407 56937017 855993354 297441664 943586052 232745751 901765819 467164650 949778504 739565896 783738975 429863427 591958226 17130763 209218436 184403255 537190761 740513947 839411507 85540387 574080098 20260283 794058328 9484908 963378423 665880030 950032704 757340540 775072662 277334194 408366490 871759064 896888196 443683031 649243914 268386913 966266547 817944166 926869748 586798017 904368175 154710715 524827913 150950742 999947665 83036067 347202691 192962862 533633860 84051609 517155877 544951410 938619418 516663325 569321407 722524108 728523624 352857043 914319644 518064645 894564216 470537810 891771368 155961084 494957139 87019319 395572024 532366434 811766581 114944664 438310679 952004112 953403795 238743225 953751573 276788153 914632809 648376050 667526881 890788660 981275690 463946044 494538649 925902504 944454224 314592875 997347616 782849490 787444816 147664510 790848463 645579097 964355564 135185271 805024100 674832384 759822450 757251276 942945965 527374982 728538057 191815184 335118136 797063391 998006053 39301232 300184875 405567590 953956125 724588303 863380573 669706824 724326316 408060961 855911931 965724401 984064285 610173101 921724829 953063375 993505470 42797511 544218071 393181411 634240826 898816827 942515180 83311114 629877597 322289427 348714146 896483070 992076460 237419641 894642753 983571393 993641144 263402 989892778 873753775 877308650 259986688 857407238 611536301 970634607 950241222 972567268 617033653 649604154 262723561 924051032 61714728 843259907 698636016 835601989 3499047 244309301 886741337 976471091 591022739 714385783 425551434 774185166 605533351 653092385 524281943 813028714 983253475 986980420 870690963 917668792 981583788 988484616 718033748 985302215 500300117 960889376 797403796 839346828 490565337 502477576 266749017 833786558 13631816 917301240 768869384 835070029 375643240 415777512 393304809 788707828 428405357 890977205 643613353 935430355 188329092 441096008 720897911 873332084 160594819 997411436 803089654 967960338 662074916 995127709 483498178 614096532 448012560 855383484 459943654 770863186 113448096 329698688 947543184 984128610 381764484 849927465 870271906 916338880 805705098 958497808 789968774 797044299 487346990 974718580 705859366 814826901 949606339 989781812 618267490 897607270 13836179 385351689 193996200 913496559 473849072 682529446 179032146 206727120 592453101 619906185 284092915 342666530 830366425 943712117 773135820 795119364 304435224 705886834 286652450 408497265 554656379 777798002 41241583 610230455 844750002 945099697 843424072 894115276 488972575 723502816 295642835 869805290 207336691 551737900 421441359 746460908 693098953 983948182 961332820 994219967 996064755 998786832 279813342 530383280 767715582 854247779 556338224 980074972 707925158 849892292 454331834 466941378 764127139 929346058 729312717 879591606 100656770 886270591 485651771 537168959 434081536 651050453 527869629 610532761 179677432 306817146 747059209 996956339 701390521 908219102 810229496 871415473 462102645 550297641 885734389 976690437 649446763 828566349 578724563 710553088 102952400 598260013 321156099 383822833 178453816 814513939 536073266 841426037 169859296 211526047 283751138 681552369 699802644 803572409 223401378 603293954 449918380 887723465 908196527 996911995 5219499 727546068 300614882 821214416 458085483 829059434 218361478 275259578 829410380 889066617 675699965 986278070 751030966 853527018 550837257 627759094 507868164 847895137 228969008 840970784 903697520 977348867 811286274 992377928 110555504 291086289 602416369 652412833 128279722 825730328 947490128 968625086 474359061 869854868 398922313 685067895 896821007 963059530 428876630 780763018 266466895 916318270 816052637 914343287 757744452 848571327 131729603 962499533 406135930 525042287 990799482 994225292 851314458 978932547 328955259 918520594 251640211 677516065 569222512 827174305 854417727 932496773 943199962 991973857 768411826 948212802 240942350 741458026 63521964 918520386 163114602 480533910 11779745 981993148 158703733 207755534 391950431 440461316 855244686 881969208 60906759 210174908 815040575 909684500 475852888 525353693 150691681 740910598 127398963 209894779 19897753 709687934 772218247 821982929 373215376 461702234 895815718 913643236 243100567 918343942 707807388 843795139 19829959 591835117 685715817 737469942 142964564 650243817 46427408 579365631 929996879 933585222 330598791 823407766 836571892 927663790 742918118 799704101 158080185 907729938 502807020 899452456 525978768 926824128 734349334 823785517 808368743 871049890 269220218 302591458 319703659 489276221 414033891 930203934 533875087 870301564 816716644 848447989 58225265 751785239 394404664 449390782 950818739 978448057 445987680 641630120 192707390 475745572 317274330 657687448 521180334 763981473 694041918 957663587 695047154 964548723 557164 90852682 366209335 640695888 241734785 530646222 29391432 351891721 79256014 897794475 351257958 864417111 697472130 946030240 90172127 366087461 198634300 262730919 912307805 916129544 586363099 684291103 223677673 247458139 131918377 341040842 708040595 796110494 748400507 872682057 737724780 852821377 431352840 477502291 525503454 829308244 415517254 879139080 235715801 338510020 10708813 806310527 817808769 997336054 329280093 847605016 490410380 886008465 218591713 584260390 778520221 844295918 284273574 811552947 814652211 863526023 577204537 898557542 121731160 828119219 380256819 560284791 47498991 925157435 299475136 658439685 21731936 866553854 238662533 699316754 19824800 149265048 590758654 692429422 847970108 910512273 528788297 693382480 275733543 970734131 875567423 912657765 285502198 849281609 626938078 810527627 128775821 565704450 480534629 744647699 651132000 902497510 373883599 625810562 761289248 996213638 841090209 995417523 691081527 931884053 419534740 769198214 595739333 702989767 328848777 385903151 731404446 740872432 986217697 999909494 565674775 706152723 831714117 983416193 187392055 738148554 540074918 645913896 54853764 798979739 690867019 772118863 249581446 783829091 267527759 535832056 327727133 505116500 159406180 733327888 272998013 318759632 483868784 753516117 694507738 734196897 620117807 813833478 62220945 702749558 82355393 926226221 36543175 949248949 8243803 916144825 274222944 864820861 669915488 739600461 379700337 665467758 370982505 752610772 705744759 994233986 299996403 328650391 611040791 836140145 834590335 871678231 45147572 254072999 355271744 746873660 701925923 943834732 263833639 562811667 178410414 981259159 256971275 803396313 133976687 565563749 144497853 872326486 984835848 996386444 503933214 586107785 229376349 367688565 270875023 673288302 147634218 311934862 505372610 907835777 727276804 930791619 879161542 890580819 177865448 569225004 558093619 640009869 602086789 935649695 152570922 570790929 147548065 428669880 349695372 609910358 144571886 965692602 502628389 625924096 909590896 942506911 662313076 697421078 952115470 952476481 950167919 996757670 727246696 789731569 252898035 339644672 672630865 712618778 473435145 818994458 929962269 983770329 337174294 427622325 508914155 849180721 634095629 912819250 383264608 472735143 166192342 397295862 804205992 879529798 939632820 984198618 335070843 805763963 369634212 804831626 490489351 781609718 397294659 625616694 719429761 859703259 14628894 391473551 112132796 456439214 582167303 940486267 815056651 857127303 738907312 962029907 816531339 822769860 596325813 853489662 894491556 928674009 788171025 822949180 979505353 996715455 304087079 608862623 613026422 910303454 421934398 515208700 544449914 855972232 887094032 948323857 650718855 724009579 33365889 770449233 448354156 705855646 882994879 925431898 223433753 602924562 28107671 512162322 567378484 617495640 966807466 992458805 887716648 942607288 400742251 485413623 250687911 464513485 880127343 996352223 373594592 730770412 686359330 811420006 471644229 883302855 473769069 619567571 677774843 726789387 186826303 472965887 758914742 810650328 494218221 612761900 130961221 410378571 492381165 656068066 665756583 978161397 572992695 712078211 935395450 991958833 81676368 289930878 867235673 977042514 88579987 556477437 797780102 931396354 789755619 901366291 701434743 976009846 420393421 525034199 302565720 724260655 134908942 887362743 366744210 615361443 488763037 791414241 721611883 890203908 518816404 713791013 239243250 661442181 681144363 863751494 48195938 191354356 986910684 987618157 153371833 183721427 509815138 557491874 70690945 177283396 647809070 753121979 511608733 937709427 652155231 990091802 768560348 929106378 692397712 730043155 744784091 831933238 288420029 618613558 392620277 406093475 936223951 990981391 587064422 877105620 999254403 999712862 528566527 874066596 804969769 833585120 592987857 970174424 702739238 827029506 741313965 956621050 632715396 832301299 72453439 530669100 192467997 764795776 428275742 765850488 296305264 724088246 825695753 857599895 979199626 981430120 380053542 761957611 531921638 915812598 894318756 930915463 556752407 721081656 896887582 984995004 725119036 768157345 896174265 974737135 72739066 841254686 592999507 766868225 212566411 631452011 852227456 859074163 699696107 986478326 171043694 356091710 352051619 845739447 217344621 563674442 77272534 434668156 708588687 935563592 586507711 916989531 856464571 989712242 882163379 931164244 508100166 759257058 905871618 937325634 596582278 597175928 198893636 348429329 129569942 770730019 912756992 995980641 199737580 450145930 338661904 794505031 163477698 754802706 510189901 925530484 770759011 868319143 219373945 384781938 99976324 950769084 193253856 347377059 127785247 650677381 426414857 659938262 115738049 397196025 702233349 894319615 958727115 982802985 43430566 857105269 234775846 302663642 900210599 925233654 685002537 847184514 537233570 653109352 269898253 711829781 136920273 624772096 450360406 656022705 777846284 973736350 68169298 403117425 89019529 462581878 857882360 909486942 591261350 837425642 895986782 984056710 953230529 993032455 698092562 988899259 952859657 983590666 856602919 911119939 398031839 940714325 137751990 468450433 619043260 977691697 367441044 478097270 536500412 546170105 108857880 982164299 519134205 587487859 593070170 932732312 236782124 354306747 235288114 334757371 248751854 502713315 390293251 612221877 617658179 668030735 449180056 870828805 787717542 908779400 432336728 656000230 206735421 413845982 335137118 899271120 873352410 928197363 513835761 605835323 945916240 957533668 256360863 827789756 756296407 974068572 884120069 959722544 737327043 987542907 107441982 786739482 832181444 996866300 957088797 970248338 443541101 804930043 767069306 990995038 674775124 853323687 760012709 817783827 733987175 935297026 151842356 702767098 888878597 913017676 68222218 356697008 677837032 803705916 955905546 995165608 318233056 761769113 602104043 940956288 706860870 772795769 286729040 390313587 48081852 775876707 32159301 938340134 618707925 909566002 466985799 616435011 325952415 572014266 739291330 951379146 608754004 677589011 112533686 390867596 539895056 789011840 253566844 741138320 863853508 875771420 676613798 837139880 33430067 211031774 911460571 916521165 225240138 911096119 268169900 592424194 375014395 550212211 452327860 535905926 763660486 952980991 396696101 872744317 493162469 689488241 155326951 891449935 992825595 993391953 184204659 846028237 183296853 623725875 116468554 761985872 94590085 577119994 192181291 609344358 860828738 948551784 344423396 933788437 752552992 940003665 378896469 734931355 857312943 975894570 469036698 826542785 895973011 955096633 174433655 834668704 762011098 869632636 15985615 331120445 156938007 908575120 950180600 961365953 779159655 791323731 921851856 964551511 489317680 967059615 194593579 550581562 897053187 918225713 615815808 945091704 720538886 958202266 975805866 979042274 990286445 992989770 974736102 982704640 751307066 761985993 593549581 994452514 218183594 818420691 253058091 620108743 628936711 883744182 210087779 484899453 737909640 971169017 979021258 993869660 908103005 920541961 743605267 940983637 285169156 781366496 228388467 754662788 319467695 645482893 767523730 774114766 270805260 806431917 917172118 982876517 47428994 804788102 451045093 761715634 51441769 420065503 299706672 484844197 468515954 495788861 371992424 788381116 403780137 768958702 658634915 943833114 589802349 704565371 301535022 324545962 838944911 841482906 94439115 575254467 599451398 619300680 874406820 875640044 22436229 571411243 44140638 680109461 144333814 302308042 100466068 888795130 329864154 910233034 238181877 434061045 381778518 920202800 91827720 623513782 445598083 874021095 405563960 828124798 460426481 681321252 48117026 601757502 974807373 993987788 872614223 990530609 387180182 654672548 382672815 623463775 59035062 59069284 926899095 955734442 253076198 874713484 710865265 723209586 356383706 434319775 556267181 662133668 328925683 893464774 596691336 934472814 243655929 936106509 969806330 974704815 954834187 990846120 77341330 604995903 423565018 946973131 684080100 689563552 973417495 998241388 841295040 920679622 237843942 639528005 29349212 706405678 34176103 578635090 799018505 957151984 674264648 983622132 756163606 907425518 166718807 637572617 869791045 891746829 122793429 801184306 401618819 620216204 249032939 574433444 709497711 719618132 954927180 989284352 449958127 823721271 307274789 725987443 247509135 261751804 513453265 643989254 597594739 897855251 846279827 884662143 68400477 455190864 637016008 679725915 712112216 784857326 801865851 846129439 379313854 573702753 647215373 804663795 505799754 601898622 132996313 397984863 63075332 953318498 134553511 687770710 241211803 635856983 112590209 864734259 524961600 714619301 140474465 743033839 800228100 988692789 837304881 977249088 159883583 852794047 264795193 979142362 272534128 706648974 87225246 993288936 541953976 650650506 942268929 979289680 328536899 667500188 140355392 319087923 784161052 830582164 557952231 627081439 610158236 801642219 859281779 981999835 633769423 754171605 398641937 749930535 600010741 800592949 84254324 212321635 432316015 446877077 393973441 698370234 562156493 817209197 238012813 300246234 646244844 954619833 933728230 958131759 552019337 692356224 625821760 956595356 836486494 844913949 288697109 932080037 988451199 995962339 727177587 830356699 773789239 964933850 680928464 838643199 726335684 901596414 753778580 943852666 770590263 780797158 444682901 979802147 492476510 823909986 467041044 627683756 374056520 653956197 358237332 463299549 688877061 889418907 377064155 879583569 746533830 886315501 297887459 812792487 110964086 223912815 585348303 906215049 451337704 986546295 486404440 922405130 978413750 987873790 207248835 704829071 331457830 978129759 657988004 969576154 735815444 988717599 701453107 728363659 314841854 676493909 271848141 905141859 122301013 289032835 940942478 952317076 537696795 782315522 979150735 985917313 580397703 772584117 779554892 927810360 455655713 707297023 691265285 974751824 483067474 590299170 755750368 874004203 444197050 964548060 275187386 459110994 599017225 655314812 999391970 999753216 869597440 873541018 678067628 773222255 366677220 773768919 90151214 888329575 662242802 801373607 995100555 998239740 970150328 995486393 895805635 907690896 576866094 982550181 611784171 644487805 301516998 629204792 393395686 864972556 679811105 796207171 647142281 851868642 794202403 983692245 776039059 802214482 309486576 582356100 893933510 985996271 624627030 803054262 637447731 720320556 13996517 910771868 262048693 554797337 609097918 642056390 78748876 147020544 217853646 482182051 43599288 677366926 142045390 600101685 297499788 338137312 277974527 792538549 588089972 946870436 719316161 894234756 187130720 501462878 422439908 597181822 628600511 831941124 922898007 954281881 51870317 401686222 800056566 929313418 525332419 765928929 384527962 811570801 510277699 850833337 777218957 849347361 320889964 323361396 878097489 976505197 438802365 750727164 539310852 832726671 105591465 122592070 719565485 767294661 554004762 620924403 598354007 861372603 553288232 960033558 66763433 378818180 953043149 968461919 95767277 357390115 213242268 441842462 260013612 781770301 535461305 642107910 600531274 906349889 782109309 955191415 814581842 929514395 765628512 930059611 73755747 975901839 546081861 647114102 937049911 937311491 73004221 415420546 600454117 751929373 244866979 711136957 329577740 870156443 822271427 897706400 995774695 998643343 685721027 714581292 209957049 992014376 528217457 948275940 727867893 968947868 852964274 939559111 214312137 378927638 875173544 982676780 672042759 849673477 631992392 951790530 590620222 791476033 596266509 834464683 189589962 344398981 426974718 488894053 586241765 603880549 215496233 521336511 902896387 991060861 529457376 628512182 823027440 944210395 336649619 887418400 1225900 992280470 672604622 892946960 152840922 693623025 132539708 238521318 309056574 496284092 722531332 921726199 987615499 989853304 735405614 787803158 184743630 606636623 563023758 962485082 222987267 710265658 74194366 652845305 733618480 833132351 662807815 673613858 652568357 853601018 197950865 603469759 645299099 681386021 991732471 997686359 460116977 518578961 558136014 877276410 423522700 526411614 268789367 288042544 379038234 470523833 909097752 964190689 29711562 837462437 255030127 501467423 448436284 822756534 672827004 742928044 611655854 660118938 263102702 371161517 720642323 730585420 191253657 977624367 485476768 632357741 973071573 975005176 555497170 991948803 635746736 967791407 310485094 953232402 581200863 899700244 637731336 929728538 724632602 780521838 688668274 707936766 746754459 884040357 386725498 841195890 536666937 658398622 159231915 521104502 11167218 896658931 791884527 892632487 467995436 568860876 742253290 745624318 778272483 894955654 831966945 984700711 254047398 877989103 760001192 906673662 553646614 950890217 414016341 796987799 408328542 598355845 594604347 983843397 901667112 917296165 379823390 786485913 860983973 904551842 460650489 803757583 888228153 889488108 81397407 160931723 10896709 110492286 671115044 947705178 313008401 410994622 979647797 988965651 390229167 931759848 534738069 792987095 728179079 853167791 714815920 898178666 149877198 761175760 440201548 582375072 700627230 897481010 412762528 632370378 663957363 801001001 207752417 582741716 921609733 980849560 659306218 831742563 976264745 981612439 491001455 504669505 386959299 438144687 344127575 528404558 455840579 843657413 948459575 948608325 753929558 755386801 728273011 817822697 99094959 400471286 140469996 414350058 200203409 845860088 43470239 503475842 256109449 347814742 325509168 716564321 547310255 875689782 343117684 742381186 296946191 778163568 96811555 613550050 713392859 778468496 141918185 678183008 353483041 413313535 784735071 845235339 894864844 974634656 45473860 886438157 119736600 959619891 724334114 980923146 445777337 574059368 296588998 453025791 38915581 342553078 244813544 685014589 853499499 899905005 989709859 995260982 96018078 193783139 654823924 994979368 404994781 483276835 689349804 811979516 679828044 819987829 608461572 645944733 393468410 487910080 257290165 301374930 748526545 877476378 695230445 776267354 854691110 966015191 654643634 671867775 787104353 825323553 695429522 834631835 756396003 976248417 313011163 825016404 124037330 353391423 762857321 793192949 56098040 317343333 587124700 914950913 595206358 717347825 40405867 485026112 618684593 839363398 430703563 552689116 572462613 734445040 319887759 391167610 665059132 726200178 941991162 945881381 629399712 886589464 9465016 856465608 872528342 875748436 299209360 697690677 604150327 872809388 853386593 938286101 939442392 978553335 966692754 969455497 283792064 944784444 78696948 394250789 730598 735837711 942081620 961365901 304337646 874804867 237910258 370622701 862389378 882788754 561510279 903785737 232090946 770478420 599405365 817860761 169784888 366354155 316988701 690489159 924004484 995521473 418369712 685737198 238188288 256117017 752366328 814029141 902566949 912031978 438569492 783856529 754727662 760707650 106414225 751113346 858558849 990479868 878240473 997493006 55659019 590599534 485772989 590408395 423016623 682485395 328381196 817218958 999864847 999966503 177197150 428223553 484019192 769366851 154764367 608621979 328715782 711007180 687353209 864860746 909679923 946626155 672244196 841911333 868587604 960093605 426468025 470151582 866382044 878686892 828220567 998319143 613174635 770987391 237028606 308297656 139901349 870751754 24017612 398285250 83107323 702465960 442852515 911733912 120936981 286788441 972567865 973909245 559266037 686667139 615272951 960691004 770476664 908445767 487280389 627780945 188136916 641695120 467236331 783289138 440529363 532753522 867114221 896391678 315257610 496936602 795681851 958628148 123707158 661403499 968793171 987388749 372845966 664837717 517382304 672344176 183200561 969283874 806043089 869046300 560252172 681577167 673026163 796735497 648049105 924636926 964248858 995047710 690931880 850311837 633111144 775616635 950535386 973509408 752718249 833918744 809942245 840372854 16906394 892043662 394223279 847695889 196900659 662968049 456619995 550573451 564570775 888553164 103065062 282956829 813628691 840596678 644240594 936019427 873653417 879961878 120490800 954720763 829055869 874712922 921840197 923276138 900793297 998750163 98518294 926537030 925857179 945247715 518981673 578123336 777218606 906773682 608792030 981291026 38363698 446810184 914135885 957370201 607586718 851033725 131318286 665185889 906521873 952504233 489672813 820211039 193285228 333353011 926366842 944943821 176234787 588748813 452957368 934275200 512894962 913240783 251973097 283743344 531650083 663250869 157269595 754526755 721669181 789926631 241915263 601640071 716719383 733923444 857273462 997660784 427269375 515094914 572103310 718841048 163350088 597541867 761871426 925322881 441020554 530154993 458217101 884839259 828209960 914528280 210716093 715987161 916595682 934921027 758724261 954545667 145042026 907719009 251504438 793487862 434020366 574138535 193146590 891869569 864000750 886224579 246445796 559388915 683645244 746951748 64403116 624686620 619664275 925912130 701537428 963366933 266112763 988464091 936454545 964147268 543232274 857562858 900845685 964799120 847791261 926112808 997206979 999844724 81177228 404059185 93465443 560003663 812065319 879264244 723445986 891458638 273697748 528856246 202958851 662853315 400579713 820996877 524729559 719329116 5265803 561313642 818913086 974414398 172822511 443107365 384953986 618726736 400477480 941226301 497970192 542417152 389494395 413676095 886999410 901921753 598165955 926266896 819600188 826013499 392810013 882092812 532227293 881184609 413327840 978780314 968323329 972605090 552316881 926556557 349872719 370863444 579857339 950576329 921224772 979733078 763768702 862248350 26488622 564518687 75097570 700338617 783525504 844090163 724550991 859510254 246130192 367550907 434697500 466200293 283538890 691707794 904274598 909382047 84092153 819610306 280020065 817184581 457884582 526757842 931467416 973689414 671934648 695134718 822354648 962604173 270803736 752574973 32300052 857554006 897057639 929568596 799241083 960020591 896502372 992601168 805953432 989229286 823236586 905032859 598835781 826446007 226761591 359038843 518966445 757495105 912971243 984375487 410370099 484109961 520569801 848623184 137962365 751503101 581032311 859865551 84758535 181879198 940411693 944856081 426066128 600490744 109947901 257000744 867718267 997560135 309475357 940254898 438116260 498500667 28505025 135427113 716335286 812163875 951980205 983109666 568597742 680507613 766812589 951757596 308665099 795023018 674069238 741095664 228382197 575191038 667125141 722216707 893772731 993620644 591244338 767846191 17257820 481640254 550843458 812412713 710991053 742029671 918314750 954026834 997287010 999058955 774259401 942873704 710793971 786499715 964447474 986652010 771248834 837352587 105035629 783998910 99569445 402483741 669693678 815706457 35769873 250909898 298012394 900579066 462850407 741579108 447576766 715274942 700029028 913589762 842333436 958964403 343366211 617973793 58152759 120813962 271035474 870476809 942211588 970455284 918650662 951684885 658764013 784513781 167259713 848574563 488201706 976098679 473720418 608921573 344278276 866707356 110567117 663745435 575389166 898061286 257333817 766129557 391553105 497775274 810660913 943650400 371661470 568356594 829338333 926389552 555219321 615463995 733891865 803188113 920254150 978833802 980899527 985979866 266962914 801889588 718800130 734518621 280083168 690390951 471965175 775547494 172850051 469876338 165694202 668038925 369197859 406773842 381077654 737992557 886776581 891101313 821964492 926954224 822166991 974304999 799566306 973074244 913710149 951879224 449427816 554117234 71832133 195772253 155118011 631297095 355751535 904576094 844038143 991729902 925198435 992189848 872784441 920942239 642882718 794769161 784991408 958946549 218776215 921330780 166872280 510337111 983751644 999327380 959146650 976276514 894348532 975379005 484558083 803523438 81505445 333169365 162114136 866545682 426033077 631395917 402719663 953778366 64949880 733917195 840654358 897195679 713916308 827848616 458641584 621049313 148198106 671551046 252123823 618803115 479234416 600537530 352630427 562112557 551996345 666661408 415563107 751115964 151557377 733583167 347582418 803339018 787747612 852961123 973850473 982249471 399169810 417475058 321431135 397238955 840414351 921142392 678152256 681286765 362676856 813584150 965151011 982265815 688605949 824943121 754417423 845351881 68320717 231208172 403066960 449612604 61342321 82722927 362339820 399588085 793746199 808828897 282743677 356080996 693360174 746403809 660602306 765279030 90900923 132344465 82290714 203455075 915190009 947630223 788292031 858059766 799001349 957005155 349467860 540496319 420779180 805780488 22118531 956198853 176083266 843955101 59444192 611425595 1931778 164745614 659841023 906587961 943295324 961122869 402027152 783249041 913710762 963150127 403141849 617522325 430501008 555829441 757895910 774124683 247832977 638664923 638948971 857619632 360712406 462547597 301967271 933854323 810828692 974219925 939325947 991423606 774089498 997624355 771430670 784184682 43019874 90196324 985062392 994196605 21897837 100594734 682678122 920700085 299123059 786503685 223639880 264801483 204531656 997906059 664327192 867000910 558277607 713519736 274441445 790271839 174262235 693430958 497379908 834401596 712848529 716811155 669344073 745396160 301987579 876400388 869802921 879951924 178162635 599173218 850279825 910506151 697716760 735875244 247472882 522894347 45872150 330069691 269781429 860522755 342784520 655474203 503285133 663935118 790038453 858250415 526115651 579611514 908294580 955553903 373875174 584576456 966159431 997795280 666921109 892847560 654370154 753702930 917815206 952014729 249540490 933397069 948748859 967549984 679697829 728648328 353558696 640112941 800859576 915787874 68227052 97076053 83029304 897489654 490654517 495157013 715267253 868592715 318041603 901558760 419501679 431496700 418815845 636402926 300769845 584217356 107488527 770937071 722058512 994539868 734603199 747669807 719515819 875300583 459642906 510778734 154504435 334065774 538913835 704396290 443898755 729443604 732993668 862552548 868348018 943854141 24313923 727990131 268686800 330226136 434210732 470882427 369101982 877631910 160682040 384593632 829702548 893953389 545979682 558906970 75318596 677865826 17953848 321844305 609319684 837059465 707584031 816857431 280542915 684849283 987198296 997922695 407336700 537059656 84485434 503282825 973596945 983275921 767426698 845155851 751524767 846375318 269277561 822734029 686622640 992012364 14135570 807224010 385682634 912692033 565950121 671424621 123875641 382953069 18172153 762400366 663436320 794009265 771765151 897995363 753730411 754134577 287271711 973871069 209433043 341078921 562706192 992019781 567008894 665586650 824130607 845418093 81301501 343632584 115049220 301643950 966013107 971638701 189375845 751690226 142991693 407541609 651969263 850011715 11090102 242501522 763636270 828509051 566672236 601173958 535922453 982822744 880020299 904960590 350774626 490369076 64210045 409408349 889114501 923598097 62272248 332562424 868429676 888623391 31742284 452087662 757560306 968571871 967547494 968585765 541686868 593836534 578015436 631747309 497635342 558602145 584580306 830328600 363530866 882938473 267027982 694737221 417531093 993242996 248084861 826849981 609383691 821795379 177676277 327423635 76321359 968145096 300682162 356753464 542350907 852699907 514800193 613630179 69334241 615548575 387733734 870765122 678505141 841312953 744736395 756291664 25525149 687619170 434427258 737772562 245736634 424918974 402480316 641988328 837260504 921261829 995206071 998789780 564657994 788985688 263524654 432923704 56851302 299605335 252232659 823431562 295784559 800925116 101655298 295206639 3800709 993065389 252748445 776440115 565679897 573295550 829382305 829502897 292056731 857505678 511799151 888564158 688421084 908170993 133312994 205760117 738240851 875421317 534114227 870454820 844301160 976340246 394359061 909794607 247532828 541265104 578585949 654839861 442634920 909774746 585389885 829240365 382900953 453179662 901953702 930766871 643467062 721331839 479693116 946420095 132775297 868662163 515373558 680860152 848402757 912113512 964219991 998910085 468187064 496917412 518928733 521991250 524016147 717549449 455909086 908502568 246846345 840544527 556158179 580459125 222869028 919631082 960961193 975830227 788671322 905079184 639509070 914473001 328837836 899552987 301128835 784082644 733486570 821876567 657885910 710594423 696845328 936526548 225482392 253763002 732681999 784797362 730488831 854200081 272387276 666257680 897482960 944125872 456433763 743051412 948556699 950033737 183040176 647181535 319911720 821540134 218879885 895777331 872678559 880039822 775582008 964332471 774566951 934996342 573569270 834163527 727366299 738269478 455612832 511550464 139832100 173253431 298896155 689327646 738087661 844923113 918406504 936068802 324262741 411698369 531381711 795343980 298922786 664239406 878882197 939363520 740769034 829214321 754621825 823897686 631391511 749237656 875629448 898130243 309191326 525401456 683772343 906898999 375460958 428405003 557872799 882274942 911223380 988219989 294128403 871179544 496510882 555349694 245952118 702001671 297320610 582286831 215845424 650631915 719354674 811419466 738711537 863886477 289508483 723102198 101310927 368191421 404231474 802797907 132112244 184199400 67605587 144378042 782865752 998275468 398103539 723859136 568228734 663263555 281226600 315240545 863355320 965490634 843338826 894581905 336684551 668353096 287904703 994171804 106945035 925551907 41005047 724676126 942734751 944578224 93789099 912664749 409197778 669514517 351045799 363750399 362514681 667270431 918384460 933009237 236256449 644501960 892094608 919320492 638262692 882198766 168959382 776549263 226263569 479892846 361863796 958576911 345427071 943989135 532305003 560968702 764481263 907147097 802862848 997810060 768343839 982909820 339250492 635030858 199793410 812835134 955646250 967976962 618504676 780164075 475137301 522243870 613893548 788542408 411645656 931297483 459542769 554024366 422049478 737134763 950043151 998085940 616487540 617904011 434401111 774864796 203357208 287420308 669291598 800689139 782077734 953929549 647829918 936526881 212999617 770722093 205251227 277292902 905682558 978332482 443167174 973314249 605330063 999220914 636709165 939407855 902497086 995697364 749907053 794561289 782857026 918156411 332232117 631976248 134713437 754753387 82574768 396972126 948500263 989012033 998816775 999104829 98593441 181563340 871175737 900169761 768772564 943821798 407178941 886997921 418123123 861502961 978497567 979873487 144951469 193024230 377571083 793425420 358445366 605957683 694808066 795111160 768749366 958900576 507370795 889115039 530218533 769495887 867474265 952570336 43689482 177152075 355192370 626528288 398774393 651191865 581357901 636827536 642314091 793267901 893987924 929805755 138504896 901347337 438428326 738947885 467497465 758886824 414485924 717967975 40896837 368150456 741004909 762804291 397170855 854258793 486970646 853805329 560128533 812109777 588604610 802274318 868676208 950253840 780642416 876515974 540927581 837954197 863973254 998501766 525370541 736880864 512491424 654262921 744649430 865496496 579613413 883111108 685719315 723226113 87351846 381529465 566110503 701594358 870255789 882206974 16430551 212401666 887851220 988720327 721480610 850842130 524703783 828230974 586284006 623124128 536422648 583842633 43506364 926715847 136548664 242744177 814454503 991066940 947537534 951684067 315094168 890550125 480025043 541894710 825487543 865090102 658821719 949366193 828620791 935255948 170912946 289325833 825932560 972691244 904936754 988901710 360068841 998977449 605291125 914960647 323794898 883981425 255079968 363700629 602589439 879024047 784544842 931379366 998844396 999556424 445400019 640621046 54696845 217036408 932877752 953472649 722842952 862345121 238434266 453498453 346096023 412120357 525187561 550599095 608564872 932725099 189812105 659245774 354878770 668199255 783389286 867665960 526371702 663845797 146044256 700252195 530985168 971424315 427338746 986573424 620307722 874733193 850024715 888583070 428349148 880531419 672190138 710149427 896904452 924020275 476763598 727513370 960362953 988543049 821034196 824048798 19779875 137763669 855266120 964599924 749750108 768492945 913700719 943866138 919545651 973422274 333214638 882419229 661417907 819182375 712872847 790036488 449832027 840459190 166236453 775688810 531446245 964376867 688596084 993496758 630878488 941382651 670480364 995905209 186895026 790547635 130403614 151584293 96623956 474786106 986489184 999910770 132242539 225785448 933488551 945767304 94804922 504735514 725189931 842013861 848395048 881429632 118965920 552449559 123719835 643215417 970950410 995169137 662428025 719105450 521538695 647194496 578334429 894811250 54738010 708049823 387694078 402199308 39926205 933589674 692495442 828509212 558552068 619031112 669250565 952875921 364329237 642983909 887156963 906843029 645495479 908053142 93286972 182917179 864731174 976298897 108702336 993772850 805486356 920204029 222986430 995057033 304918721 701246022 925249186 987981411 598660563 667691287 197363152 562221791 426861479 466308838 397333407 402262167 656872345 684800317 409992677 771151341 50513793 401989948 508143998 722161980 72154884 217505279 415303528 930406356 600953088 856516471 845275980 920009728 575373193 953793025 396957278 853208310 306398709 799775064 403168367 823440370 424136682 788587285 285033228 854252189 503868733 901000197 3015465 203157274 588097694 856485938 948076091 984678179 746463446 841985806 277567219 644542270 130615214 392849062 512241579 924705820 318530588 553487811 136027339 932478671 75608548 81173690 396795993 626291602 268333005 293010698 565354017 776961054 738453624 884970296 582951402 604205045 858488482 923716866 939863483 950937035 284611451 992077449 647228321 701826316 756714324 904196120 415349292 534011511 257288502 402023573 578693199 863594146 927651180 981786239 161883973 917718891 519636054 866715725 453082005 485937075 983387501 995272438 152077704 268452849 461282132 958099306 551010443 870574338 405284184 880212674 70387747 278992435 588845880 617934540 653383176 722581749 428488163 557289664 976151082 978072258 299993882 602753301 88163466 390076542 847482725 947391855 76933294 914389720 819844444 829564444 497834710 631430958 77529780 201442245 289300360 427913737 825728683 979795239 100899541 126074297 791408491 948946761 628606069 713211359 758104831 820950708 384375844 991279235 688952359 766574249 180029002 986501151 527567612 929746638 740732979 750047764 826081136 849351429 672257402 973941562 498501179 507445239 37668285 547157836 2274435 115475123 774259095 990097835 906560716 995494360 645137360 725117742 334686024 742537640 130780317 523675454 54037163 160790043 87309501 672491671 152992879 714520450 786220268 993092469 343751934 402460575 405558938 909213951 850907752 869431341 942518745 963874711 427201638 869578582 725768368 879217304 527646228 997965117 242496175 602057476 171891389 727200046 150255321 214210853 966448772 984811675 849726653 915873250 272321510 927074403 1407579 825426151 9027883 610854478 982272161 985683702 327250245 933588166 196750671 599051945 405903233 954826865 699851476 873962472 951309583 953025571 275568204 767184154 45856232 300962659 530241011 786292779 495630090 660242439 443804315 576445615 683253714 921263922 287874036 783034797 665002050 794677650 23579719 251869330 13827052 808228305 65489912 264517375 183503181 835859351 351213922 657596636 135156182 919568239 150926456 888245365 691988019 923209257 345057265 692026833 612073254 684714132 702354878 708217379 166242861 438990759 225775132 876476026 63488901 675669687 574601025 757124757 242651220 358733903 798061057 857446231 880543094 983034171 460406996 740113699 211539445 725756628 540412164 792473404 5831827 764635622 708594595 889244677 154851161 399513434 148290714 485823169 922928008 937666862 460840474 885317436 920078089 972385653 315166044 718089261 581255394 993113113 182922358 576528068 195123600 593815819 710522139 937123693 845945007 996469686 621123721 972683035 776975729 794081665 406130006 625360368 856305889 982670149 395255285 851348436 553009085 816464492 349188511 719170132 922978512 978625333 253429828 849861432 520227725 827005656 191450849 316571539 841588764 915499241 567893583 947638143 899268490 911524682 729071002 758744734 733971180 998905322 665796455 710457153 708442031 813757522 176892561 638026964 100462631 272464765 881748676 889961801 753588204 931316025 916281222 934722816 764708799 828519870 454183176 800324137 847734375 928026077 948022801 986096608 325628200 384146344 363939704 783898731 193761696 330669021 444955194 528812402 422235042 478413323 902614809 950189950 482167033 813987427 498201704 526385300 72406692 230332599 886929043 903319131 941598424 964185455 846211816 869965025 657726189 798148110 969361799 979735679 937489805 957202902 207684107 380876916 764825349 815123307 831761834 945734653 159347389 563040565 580380593 750957214 981075576 988363141 910901086 979390862 188581888 215950588 528869752 820129429 433999204 701461619 546630848 600851345 854454309 866025774 898956894 990456169 154601606 182550679 664631507 881482410 804184317 994868125 364671014 980547622 251150890 509614826 222023652 586389014 834279381 876434318 130666379 319924187 260467884 766952535 387160685 621343499 29558314 62188519 901595555 999428814 608017571 749872454 987494751 987559025 439940806 833194076 73581413 482497339 726266024 927655194 242273061 436521354 536534670 843071863 495623764 875780050 315759382 376108411 665625855 767328980 359513083 645493693 404499247 641464651 398436795 895597974 184721764 889428601 916927217 980032996 222227273 782912130 12099665 665808061 196187827 238384911 448047699 674129249 658150575 902624378 370494033 726813474 156354078 723200055 883846178 927540320 925408927 974149854 501042315 718465580 63914945 781539069 878866171 914831889 535791847 826486043 76194952 602683309 561318784 918608435 716754101 934734031 663175874 932963803 795150094 888080039 653750795 906960899 50432721 580253010 139114804 807428786 351720601 769104235 779151039 997645883 883811075 968873395 759832612 871665277 311972240 843298439 241492780 312486450 257406054 987160742 107430977 207626188 469167198 546876685 495329618 714589033 758187410 820400465 23428559 791322030 232408561 764520609 773445106 963965157 659542903 689184368 550857525 732170191 766354111 913326803 724021005 858996777 279696973 549825779 437699472 778145134 506049558 693565572 582072191 923100105 84935408 854214877 107039361 835034454 106505032 527245251 412729430 566443205 359125022 480405982 360720933 570864599 587381954 922420107 135638663 242263975 826353372 870931938 354950363 936590048 272002198 853574550 940060427 944219047 42477983 686318798 150200775 562561946 664524403 757189091 167947215 656202152 819569844 928458735 937593965 968301144 589165628 701221870 665122549 844207725 905317346 989347907 898313441 928166972 866527782 913202807 616070311 985443263 363230026 570160608 779817165 867219221 889403749 992716107 878721373 954988210 876845603 931299310 451597954 455304187 338727500 952774282 629575863 999640910 347678069 652431863 24161655 850812064 30544731 686257472 680828000 844732443 688820467 855441017 100342016 173540406 409186237 726468694 845804649 991740620 956073512 958347215 231751290 713633020 804562452 832801434 211838127 395802643 314255253 959825045 14133380 728528010 790895817 995039566 360672624 604306212 568880509 760247511 389331467 553713244 403416339 535809326 896882224 932051649 655051712 946131117 583011162 618641042 114040031 488741754 193085995 365985990 806888045 871723492 318847025 379951470 548503413 746046029 874860951 929419972 897226921 966573654 123241996 240620405 809887592 824096705 210365798 480049394 88490266 793497267 987917358 988187528 942390338 971587767 370040815 382202464 336965020 603747311 88600723 504175586 745876066 876474180 998903322 999751686 731679356 996047314 781045802 815196256 704340902 710819536 342877800 906198962 764674857 779165460 530517845 637786750 485889250 916727749 220545081 377234675 874053043 928859658 935934677 958557530 802530288 850805427 789269276 844244965 378236517 458403681 189919374 987046559 705945801 993403723 547103307 615873955 71568216 906137766 750984513 901672749 214665615 298422650 688255574 796447956 564867085 579799726 48889378 690046573 317938241 930871474 508350395 903674882 479848468 651173103 765159112 996050275 193631756 732247489 814537386 991388812 596661789 790709261 26484663 386213122 437990126 869653269 301202467 426329621 43224466 469210509 3447452 428710316 763827719 887953580 535204755 883833375 398969803 716707648 662438610 847858068 590781727 752422710 780068853 914721423 905711870 974114994 813432638 994181120 655580811 921023172 580703918 865293299 66099316 259827736 706698071 793439006 185351892 881037447 538339030 902281334 218187564 790982205 929521113 978417888 471689115 745276358 407105787 512862522 346869506 813624934 242391043 358552991 867886965 998268699 484520558 867433063 856332519 872792868 606852199 740719245 324680209 851364488 125817361 567638180 19574688 358328503 237378339 299678220 870896325 880489111 781136067 785418381 244961253 481835381 795124381 906701109 490092503 929603146 825679971 949431964 228943716 966913408 945234295 955827006 275430781 845648652 325383961 745176524 197041804 844415656 593259151 809147467 964998886 967485087 221570041 448192259 720980996 885996206 461985244 525715192 284582116 477921769 503092480 728190047 409862393 730807649 802377360 834093871 174263349 479297651 364674985 423687121 419664142 744216663 227648047 490866782 939275025 996831725 326879187 717127788 886328228 990702222 290787313 715547894 679964102 823370436 827521134 908228211 167504940 884961937 20752544 905411421 272458350 955675558 5922822 775736403 606216518 700901754 766874392 885035997 5495182 657195424 743553236 980300364 201247399 233257143 206743354 774428416 991600130 993800466 328979122 559375366 761485770 788710011 411689081 997322397 227673263 534290362 201917150 659073116 258519228 300805944 240447443 305812655 706445081 745055630 934297096 944604792 117628345 612245881 815685305 902515233 642200241 949778793 219788299 641191372 152673304 514493469 939928525 957803653 640322378 995661020 291034358 978270302 779061880 842370803 414680462 594534262 425608565 883867276 300104372 988999602 11030159 297761101 450096564 977481329 521931906 618270148 700884675 806297220 12866739 189790779 900491406 911812566 722348303 993269762 212454893 507263003 305091766 398162656 553183579 673469711 112305907 404676535 727839483 922033895 370810822 692261265 929021951 976403156 289635861 411866084 604507651 746688038 781854150 995410176 363091464 784102206 761176829 957362193 946447719 958200737 5976310 393644187 427274125 549753432 805883181 934303263 211387565 294367710 769374423 790689167 180703905 372575494 719020805 763848076 457876767 742032103 195809154 377986631 952652646 989410982 996707 513032472 571682253 608383072 694450344 969034860 773894265 799676626 190934406 248068719 22533133 156958035 828103384 850242436 642735348 714307348 178544084 269800210 105123956 588426006 760005031 834685882 853738865 964188022 555785786 890781059 892084949 907328302 363295817 694511994 349549625 738095984 609760200 989753938 47820965 647392106 228982106 910297965 923896513 969626013 489769147 801405075 461015537 802281599 828776446 886588195 943361197 981127262 713292325 888813111 403469935 635265065 278880480 642880706 647435248 822534833 216170393 646227110 984281418 987925335 504457899 666130824 549010434 983614799 84006517 327647272 109983899 500074498 802692950 805290627 442423444 946603831 313276610 476560331 811964689 880089686 685866461 956461007 594014789 767781436 578566125 702864159 719321210 900067453 641266793 741432676 843218629 849997644 496785239 809850251 571782439 703136799 802887697 920165166 157483230 321194415 305946897 518643491 830665107 994348500 248514032 570066906 690987857 777145052 174173926 263539694 287035213 980882328 664437299 924651078 141971354 528973156 963675791 993754631 836746208 852071513 863448014 942451552 396925469 791862875 213416101 652326302 238589103 526792986 595770882 776534954 300562898 338506458 661814464 901149795 7195764 289511817 373128 989247415 973148136 980934405 210173468 673434346 811341832 926726730 476209164 876404876 869235351 892684814 336309262 924169717 348582379 815782040 820925712 851447203 988608553 998966641 296166768 924393245 784456826 855552300 508357551 547537549 716814029 786034795 933601113 992812529 617428545 826172134 951973102 976158024 381742719 723388693 227378232 922861513 979409240 987349850 455495867 529771720 313031997 483406892 698278208 809979617 466932097 772583850 534733526 896414405 151391583 835180831 977187707 997953327 815510290 855697907 632015927 648852684 290630036 895145939 441008440 852070743 603064910 615319648 253108786 830376152 561035165 656314580 850047910 869940616 468581316 525710381 804362621 916790292 182572126 730503256 913345501 915306315 306950560 760105289 647268655 803542691 70010669 996503494 164338722 498506083 906540263 996863157 50378767 837352894 784228800 936049088 770203933 932641842 362177920 497537040 340593962 924633561 839675213 889036033 340427975 742230600 123838447 534409504 304336218 905050478 925252141 974885176 843842231 928317033 38186027 139862865 530188171 996003913 818484140 877584948 307681625 773613047 441498876 727489045 352509069 868649281 147347928 576548550 411817490 869136389 993939075 997715131 250358422 981446496 114453452 770910714 332932238 577948419 527356236 791420503 293877187 985027806 552163212 854834564 170228926 365654627 523267417 758606317 741334824 882549812 52659778 388127474 583487553 716794733 794898672 905962367 672754723 721137024 902202779 965461311 183052444 778691556 642194859 930680549 66805668 655126979 449308027 684526658 542545970 569793853 598426270 828712228 242678023 601791117 513367448 585668378 372952255 933897193 910894325 939309565 996702014 998159603 713409425 723819867 461700059 556089952 173552395 236556893 429665417 727667455 424376973 607385646 53353605 403002395 641655261 997663456 953772216 981546272 802421958 982599109 321468215 544314299 691880622 742450667 908640547 913176623 385292480 494557106 93872492 647257259 758143098 964878864 188958197 283622923 734072267 766524345 840002658 922551884 639846300 853678991 178378523 979113980 433162016 693076761 269045073 327593969 892421955 911456253 397247768 621202808 93821228 388391317 90255457 599349775 865514200 934536492 180022140 678434904 853631396 894723308 722763369 749960170 640162669 933606593 332851751 712097463 139844045 484353906 766260452 828022821 426853448 906297819 2156709 931775627 603674277 671538932 262903380 653427201 177382086 929558516 298670598 590866505 455099277 589264212 367797335 482639775 352445813 684468190 997711690 999695184 879863871 997914783 228450071 978225946 458491686 512057060 320163461 606193868 728750472 965080344 433152409 571013387 377994616 501046609 105341478 572644569 149027511 536830778 207046196 563965358 34746182 294498183 567844785 823149800 944208142 968519200 555472808 931289337 890310079 920425216 92249429 223644912 393505421 932462959 301397083 515180683 87817321 595432085 562346240 768353597 431576808 758547806 831336578 878648563 492897084 622029905 688761187 802525073 126636969 851344231 614579071 663671733 522042626 804780965 42586089 83726047 334767137 941074364 882976105 967705984 644455136 833242633 918102014 952054978 304607546 972824581 254105686 440023703 710096532 918503705 284327299 511022306 104564303 817082794 481142111 792224989 245623142 314673703 364941571 853128242 666707212 780215789 262603245 628575592 598461998 688771143 57496624 571937071 891912470 906395582 864289066 926043239 424069363 440879362 768426746 935287535 32267670 420135124 109548283 299479801 49013325 562394716 668044504 749835735 467151494 553043331 911378569 968244450 128699645 320919602 98182968 599018111 16764909 725372112 266552342 688883798 122701310 245474098 181717403 960253311 280371791 998301382 267165078 683904119 26754577 705299907 859406064 932191580 279310140 681208391 637527796 667305612 515565603 750629586 965081469 985002742 607444098 850981417 81689597 453552552 322163949 582377442 369479262 723117589 207312511 302488993 499439229 707846437 876387118 961502890 238865476 953088019 686303328 869446645 765916177 828281463 192920408 533851056 395251592 459257440 690337852 972377029 550254142 703971365 722097303 973653561 405319090 756147177 61744651 800518109 110544172 202084277 973952134 985298170 783604630 832523603 550432539 887789520 202606166 626677221 478484892 704685672 719347521 943840827 593563840 941863778 582109530 714028415 852665734 921266077 364694612 417081101 671812648 822995349 934762344 963059602 59707985 536594604 86166130 788273792 870235514 953457664 706543269 955829477 570669150 666630049 576965998 644849365 405245606 418111599 384653258 605414556 992688919 996421392 310761569 694986440 938762116 940128007 497413956 790212511 47357285 535125635 594300151 838983020 454540903 604521350 944783295 982695934 953347439 970331640 52968892 242071085 921688223 992559440 618111167 902121678 102013575 454333495 755611206 832734589 525007620 910623601 186633939 902364136 130821776 500441626 520775614 559129152 546109991 918232384 540617149 741878385 971999374 993078120 419859545 922921272 437970593 807134336 695812618 778115598 242818192 895323451 456703656 757313197 842994666 958905083 997262086 999263308 880731469 969169274 79393570 201378273 806918238 945325806 235093027 395564002 706829087 787187883 326723152 442234809 437333776 938881579 749106582 984104377 746024267 861768566 242349368 588553638 40247035 667548991 775714301 855350675 756770661 875999148 104617238 820646710 309086207 559577128 866675402 891999724 784800802 935121846 345372590 499302119 647021699 665359021 444159703 758631080 687770749 723542719 20147776 951284759 769885113 821062352 753826498 989764681 509840034 544131274 671281203 751509582 225208048 483887611 881314667 895800799 612880895 911706104 938725952 939397515 835682196 897791451 508774679 686180537 722934180 978002235 234782847 827850533 508614919 639962487 394714637 685923410 870283276 983221508 382038250 849689596 200357939 736794344 278660351 956716837 305754494 954784257 535693320 591640682 349729462 891299420 3030613 523820046 423238498 866289415 969502087 972634506 482842928 506729739 886713978 946990498 317346218 620542684 5420694 908720154 844196800 963824149 119091191 428980955 668354575 724046259 156126683 534915793 308971430 612791237 883538870 967200837 246321404 733183582 905628515 991895295 211488715 492451896 253485374 394616543 689200877 920803761 739893039 951735489 769395851 941379412 123079296 662587018 372163354 920119963 930279203 959416737 456289103 846048261 852145652 878140849 378765810 519540025 699169108 870204623 692095520 714091493 728958371 735249589 133781171 648783448 831849022 968119554 621705856 892406479 219346855 739873875 115693963 866600486 277067934 576024153 843415363 889262831 153078385 602647426 877322417 968781843 431767654 604713593 666347149 938813724 426104221 538822991 609977666 956508291 665961986 996054167 217296773 382074956 144875529 821297715 174743794 382067897 937329578 983993600 79677526 947023484 843028410 938000285 239022257 733939954 185342447 332254468 792258144 892535213 489132599 617573551 985885174 991555895 868661905 926302514 373239802 854686097 460920908 502083727 418194339 540504646 617985973 971753547 876397367 986358005 662112685 704442768 162071106 728082357 401554221 974911581 73443925 467498453 203487960 553022175 944611377 967824163 463704394 635493919 89253877 816963979 717143874 931766769 150014407 756954331 11094872 577014553 392588851 536529666 58523010 926564224 206215592 620554779 835173251 848076801 892312732 987500525 845828927 970757751 548066630 583082901 839191449 853658766 628424578 824715246 180679679 693857323 249298361 413267886 365153928 423468813 582271343 953687675 813838808 922797554 331309688 694722093 284941900 304917034 417374127 803038632 564293129 622868192 670496219 773748254 968062152 973698659 246518726 838957928 214206053 988003745 75184604 987076043 37337820 681968064 895213270 979761375 751946359 957848726 593505512 808338221 406028172 992114991 107716236 682778659 436982748 493072697 853061383 951517945 933371289 944804804 494131426 515462039 455506871 957410810 380878224 386727396 485993641 943926310 958125619 993267627 944676025 994274028 202084521 473376065 716527882 890443794 712699468 814051351 759382674 824106035 532348906 818400042 619061676 739103975 642945576 781011991 820157499 913857479 322641398 955605435 305384980 873707856 131125017 612844154 164305616 225075060 532160058 875131305 429730959 543718976 374120201 911843220 578911641 685367025 909824407 953705920 79250339 904699505 971412526 985292770 959485213 998546141 355705463 967330484 160439029 739206473 780005851 957761567 882018559 949690621 837693399 882358390 264568171 289430320 298690313 556745332 876707246 896141818 82719063 566861955 912393701 960921522 515315365 795018826 948280491 997013337 75699287 791681838 547212222 663790374 980591297 997441970 260764050 677064630 505601515 964426174 243256715 599571539 17527463 431791741 73286579 156650448 933480949 938947908 746240909 901472658 72847858 859977046 533662359 725589985 278747847 611951867 709566670 954074804 83833889 433722730 336908791 374942822 47632207 490338760 593112860 631312805 867886140 961618374 476461971 718667778 978768609 981014901 331140359 935908642 791723857 832666960 32543040 189150413 161022868 583694754 21618956 67388706 906124686 970593650 522358979 909077557 597210337 821189487 365416967 965073216 668981445 956316852 395843208 411966542 18646827 145040015 854640835 983790197 578213905 596514531 22480654 180574456 29189453 246723111 807894740 825527904 424356202 819654242 217186467 537332821 526304816 894381860 829823405 997158739 557529095 806108749 775664008 999682833 106241113 574995080 682516963 991044409 350707131 491525060 788608424 974643724 867943629 914537851 806547321 976535757 168091546 452114541 818294271 849535901 459487452 616049417 434961705 987479300 683846067 753221134 932787290 942470312 170456596 208477465 327190357 907705865 259738169 761807719 212008251 377702560 990935183 996024445 304803736 600472557 119542423 194848322 995964421 997095034 165954584 934316617 514546020 682282430 663983346 753502596 519880232 605416801 6272319 98376600 993450814 996282015 136960599 920946404 441816801 499234063 901680827 903463943 90589061 841637557 143228055 862383325 106783603 954271489 431035670 713223671 498878662 605475471 275998776 892840292 55093612 108811363 618441752 879808378 843775876 884776096 774974765 982216092 923141877 959026818 326114309 479578957 957967092 990330722 339894347 517383938 349243604 978352056 549766517 878518695 350678592 886740417 480154758 804625557 901677503 923490624 692395506 867693561 953206463 987489544 519592698 959035276 391924062 582411423 647734349 926290850 71535602 865515508 559068712 762264618 321891749 765112013 307347350 912475097 805898981 930622035 120171324 441204973 448509472 525400140 603425079 700579257 464851108 764681231 335394868 992428312 860905834 934658743 891760091 918045737 416363730 799881229 282702726 342770477 992359338 994501596 52403982 473803603 74112403 695346140 519775601 926408118 849145041 872513138 760057562 860806323 541603720 740177361 15533422 227278459 188936204 933861118 764871147 919582032 341459066 342141797 835865187 955221226 85249247 234582866 112300279 218355038 883150614 932988725 727258576 812485030 544717027 883413668 297818357 751529368 914660087 998474577 754476181 990277660 725140250 961859674 207188265 870452581 380720516 485424137 984248763 995732175 205905688 582299670 850516198 972177464 664509759 974959994 863051552 866509098 908388682 951910283 820795153 886867203 38547752 408436015 519910540 564849487 790691610 809466927 674956178 707446399 705993276 999509948 19923304 490936138 523388969 597690424 967192235 973971571 571446399 580697714 358323540 492388935 429827893 474878676 345306339 814734341 520534439 734153543 546572197 960863622 532169984 562266866 93454974 406090865 625772314 963211869 916240950 946955258 476318518 567922108 153692964 486009193 704470336 934459062 589470552 913735664 52454213 79083646 140552966 155263101 758732333 815943859 692038821 934766509 898337128 939380239 33976112 311070175 845477032 925128493 876958263 885852174 423969367 735381934 60842475 949868648 538587684 913587349 394771794 549391713 827108941 989597671 555558240 802096876 432515728 476305035 430300092 850361699 812152905 845495149 881755313 973907198 992858120 997939789 604563726 618049451 284713109 547672794 128837616 979577817 873147448 973220123 236427003 805312554 996190692 997160768 946655617 973743341 979138850 997118649 419785348 472661810 924907622 932057610 375141809 585409797 507333529 975260371 285609135 332819289 295367267 443071695 331212407 630888349 747420707 751688081 790072270 943708268 97388614 692875315 424503869 458938131 14419794 666633272 712586267 939384105 854596288 943264669 665686293 833968155 530704729 607419584 811644394 852113736 715763073 785584173 320703530 971239810 117669221 515747043 375082043 575530910 873749749 893916664 416241201 417920208 302862478 596242942 935688462 998144552 279934450 901654528 824822725 912243134 872972869 989463330 946303818 953046216 469425473 853029331 836699847 848539992 56451408 495104308 183557325 753661187 957104019 965780890 769149746 889984114 430409663 455864562 441034326 810625438 373335870 820391946 880565178 986403064 910370841 970820332 595601117 620703689 839694763 851545435 943697655 984614204 734747533 957520032 448151972 713743034 707485184 777698333 600602219 882182964 2098285 295665498 803700700 827269432 213232484 684418140 651929206 769525976 120132811 913619078 336458010 591853295 177525167 857294670 259008660 843844515 659744262 819851003 321832933 903232756 220204131 458793730 831479595 980449837 819530512 826275487 811541519 927155755 973709559 994248412 504618073 943807746 420739404 970584370 719463971 982986882 497599039 708465279 43395737 527233601 584349385 981275040 595373338 950864612 699193898 991659746 532149733 713791449 829987536 929355677 141871353 626863850 632383063 918220563 934219391 975171273 841326556 855391140 95939413 452753525 725449871 924174455 554368437 588834219 826406656 854162042 88332296 652813498 115449077 351149078 860385639 921856416 581128782 706343738 437780423 920530256 647463497 851014817 563461041 777683896 745494029 827693505 853160456 914178983 578482395 844587018 557194023 617716802 859950294 983484082 549830285 628019184 274951676 577416517 586415988 709220359 206407023 370199362 113555998 283633013 479541535 904571158 456662720 804675877 378581070 658136531 481471132 820376449 830822291 980679780 782381199 861598164 562971979 793081756 174448412 320631905 425667613 433500259 836937345 880911479 584607927 984857194 281315423 921555666 278466828 892921167 235591191 712376558 134213479 168049235 363128774 436862677 980891836 990690200 343113149 529812268 576459133 995080996 742229240 911734800 639984865 820193599 344776234 769220760 59664429 314882318 173937586 468082272 305495052 692982345 800845262 889195999 912608745 922370855 750671898 810394659 693983 337143607 401837600 688140516 825761779 942129988 862315017 876587749 796444845 867189655 533059427 640137706 551298523 818057615 965271343 975124762 365822931 954219739 583407017 587716924 677868102 971271378 794820061 905835543 367151847 970867263 413516582 652098924 183098774 829773306 885512364 915658209 676711171 963554953 720661362 917857203 526249908 562941121 543429545 970262983 859927394 959970226 908355711 994705109 16342765 755526587 846390365 891646417 926025842 965045069 205065981 574115221 532736169 913005341 485762415 588507179 861144423 991246753 948656412 952014915 240030864 997649063 603193858 820440259 889187563 915052482 261953220 662630816 551532374 816517566 269510948 274192258 925379550 936968689 602584842 778730970 507568452 866877768 221137593 582008979 961977470 964634594 434405468 766444114 646868918 655538306 460662522 768122104 907915196 927736000 296468063 701410701 375039531 747290963 339302546 578851344 449352441 762684802 675396736 754601593 490220012 616063257 226576194 563040657 160657078 300281025 226331047 942763053 565833764 822520170 253589373 666685292 931250674 948205049 63016588 155785112 734519841 911396325 578558821 709262749 611967102 917259276 467853114 696501029 305378981 327839284 566972199 582128869 634804240 969039868 624103599 994562939 685898420 911297239 547665545 731192923 916209770 979679579 792363676 913282202 505405384 564506998 475865770 721923215 244456759 541349363 7348575 260327716 770541401 958697052 79439089 575715274 154910558 192975318 202002709 600258733 221154077 481250169 648520875 756003150 198695342 297217627 267453325 668179373 706204878 912243373 994848813 999599877 431566883 696936975 567151162 938418935 40117931 639207998 282641389 860854068 845002121 921246967 693523070 899274778 133786217 832477556 250067814 801478819 438959052 945191057 405736335 977847676 831743485 866778943 841550937 943996738 830226787 873939883 402287916 476687073 382999977 924769150 448259260 742791435 457463606 803620929 832021394 935159635 523911004 827687638 55914370 822329954 954902043 958039196 572764118 879765678 23846148 894535041 756541092 956234195 129633041 747721038 273467716 947514790 690281252 914540069 591317613 888620264 908497670 945204713 624722628 719768165 785498649 884038192 729093265 892467712 695396211 872348309 144059247 452007742 103922149 299497475 937330169 960251736 105750420 788338065 438867477 909551799 583621102 607147514 466397391 596574093 928604133 941883049 832328810 905922783 730962178 836664165 968626301 968906917 7237039 671376989 371354645 665508845 567271868 796484984 918221852 927418096 573382576 761179810 38599368 678040009 891675134 958972394 131385166 547422313 489716037 611469322 676894662 734253146 846512149 863462876 859703562 918304709 974107676 990418035 376243200 487268865 539302483 574958019 865712519 953594118 431040572 893054647 61360054 335136173 949045858 999556361 12555462 940550741 434613505 940892542 697737130 893213482 744244454 979136328 880113549 908266544 530793907 998403330 103421932 711601643 444018727 601502702 203766311 220692237 125929730 421363946 818414881 886528463 800713998 929075623 895326260 932331643 31779038 758158683 149344172 159416482 5904656 532085263 505341506 597794951 875645625 915478429 229316905 696251546 281109814 751312990 240380560 796599625 405719175 639191654 780286776 857864222 692925558 803690060 951390181 999433985 426191614 741133137 403208148 924608797 571148848 754690129 896716491 938436056 260867713 342004987 482950546 715234537 360402480 499643889 815808874 896174821 436975094 882688700 209862722 279353305 616138960 661774972 537695577 804779562 376208913 444324847 932141443 938515840 993262696 994735929 142724359 849863704 984440435 985900959 291655565 630396481 959622426 979707981 370828246 874287245 280335997 593360817 359625328 555208882 972582190 982962323 781844591 854771851 375999416 522959313 832339668 924715280 57381049 177078841 562497814 655960243 468289367 746324253 488091084 574395073 372118635 521131883 330732829 764464026 644282718 835398070 904307333 961531414 692121926 803647525 456836543 470631146 816473978 855337799 79993540 687023564 85939824 736150947 690255549 946453275 58539778 280145932 716866459 924902513 198894161 746450989 787447423 827273783 284052872 606846339 877039094 979118853 689323163 993953820 826239877 950115625 862265725 944088118 225820060 489377575 409192660 718085321 355706680 769866864 923225254 986257879 617405184 789568523 520757708 737125438 956524185 963029855 628569753 920164918 690359734 824358052 94918221 315683009 741030162 793461535 587326586 672928742 642298955 925906770 152816496 404482007 837471845 982989156 668218461 987970973 688880744 980102151 109482506 613058305 375704920 843544415 273381315 522428672 645653753 991384407 46298875 99927031 561014696 642021865 239592496 486489458 536141224 774355860 108006148 614316230 974412345 997302119 555500111 595937110 706104699 708283083 809287164 853695933 316014472 821934913 739332382 773779665 768046851 850773675 488016677 909652151 652572695 950126124 949897478 970720344 101666363 830719029 925606081 953082074 569579981 833868208 279006717 546669308 354255914 859816249 186973541 832746801 411246089 879403464 435758691 450562503 211062422 670361158 113195388 244415371 508730806 634267432 811367886 947803780 741018545 922429101 924831095 941753805 964007078 987922448 209024061 296846340 522761348 678863080 410109103 668216675 219364183 666794715 922751660 996995098 680250160 883393106 753164146 815846672 556388764 596298692 602450350 754209756 220303782 976487407 819289828 910624267 475252754 839582233 43288343 175343476 179284743 923488366 314988031 623268088 365699453 481331217 846650603 882666972 114638250 552464974 376016810 946960755 519137092 802979471 447314520 900489321 296718539 559006929 756826188 845717715 747953851 751501160 65035510 707979788 902597831 963833256 991968311 998259234 113860203 934245741 454223446 519335759 506538829 976662975 651351935 687804614 333465672 710389798 68839395 168103546 800346354 881784187 76182210 852389266 732324170 742577281 355549021 762688345 846603785 931690106 899992571 959485195 572964355 662861971 624560952 650144745 19156759 795899546 469041189 857215087 272214656 905195258 846774379 988168475 415438611 740188215 837544280 966738383 47564712 166548756 395452120 557273271 217125158 295837975 216504221 608623798 376095196 865591564 969906751 995402540 955164017 965488514 235688222 394090627 649146449 747513998 764348402 863565112 18429570 197138200 583131251 852135006 55755912 595936697 997641931 999637975 782927963 986808344 287134212 419932196 37398917 729554780 317474329 539654192 182335920 847766638 982470954 993286426 98660477 281686426 950938736 962937084 612163497 913490572 247198285 810090370 544719407 964804257 400972415 548720612 714451245 901667449 89831145 815876252 858503272 998783749 803324279 990287289 990996015 998371784 369435800 387686508 177507060 268714324 490239538 634624987 881942698 983201785 93928262 107123568 722231154 961573571 121027217 157411165 400746942 695306337 547999670 885707987 48292318 440356840 188183228 247928938 713228430 755385769 585302891 617858988 207798505 765163472 692473290 871330461 475567517 524708440 169879589 440825751 463291603 837501483 984662630 985581307 448123897 476915814 831157644 869701231 352192513 517541224 877423988 993679405 915708298 951228578 623009112 764889052 871231169 998785770 748697148 792248231 990167452 992081177 507270813 681332072 993794196 998922426 792633908 899637256 939989940 980964868 833290820 920469457 534310380 928399505 285671057 307864546 727765017 821508436 537205241 744313594 101716478 107624648 582005119 870337869 252548729 254775870 924436559 954421125 417670887 585534009 692606420 888293360 710623051 732240737 240754788 999185266 47502748 90674873 566994881 825509661 962005572 963447887 104712796 740261351 494851893 758616168 228309695 732363242 510913871 663308481 138751286 185551362 315291541 506213132 303635131 707638906 683684312 807366964 132203908 738454476 251685867 917828026 182243493 199211604 141168620 931062287 387651826 767907276 791105238 969617128 699500912 978948295 971086523 983876173 154049727 578587084 506801612 780921074 215403920 568314863 577124980 583516704 17029664 114848657 3312130 130514226 976921786 998846825 736803389 980104102 335382313 532201717 993438965 998716926 838248376 983353977 214091223 259159249 811389524 843530371 449994007 559589669 152067594 568386858 186699602 365826565 789951311 905552880 507076009 863188735 276121211 825872798 433677561 482886723 415483615 960574588 430922584 735639144 124245254 425608424 518436131 854264484 767406845 837888921 804284683 971811918 405679908 625873403 725787212 787914604 101657150 592162847 567714639 725843921 111741634 838801558 484179682 980437105 602359732 764815843 68813426 676248179 492918559 611218727 420640264 469618051 54273846 114434422 400563279 461313370 847982629 910052285 288479613 785805430 432618714 579603124 471044475 701960602 697292074 948744317 906161425 987763147 409156724 710351811 442026223 763494560 660142982 861235558 383728536 668116068 369906842 964954801 99538294 295995450 185147987 700267026 633796275 868152926 867315026 881304650 855893731 877866269 403150561 428176574 176947704 647527574 97487103 805576004 552167657 874294316 900493190 982498034 468511140 806288403 488968354 842638796 990379230 997865874 399625370 696455572 285286505 636246685 987028543 995452942 45349779 157284510 574990465 895087338 718558139 860632980 979509323 981434282 194549367 692010919 295483344 828314910 167163272 496107915 266207131 995063205 540967497 614670997 81011115 154043855 723687057 726497257 767053633 952441743 721686002 804645921 418053446 621825089 258934851 901492033 81097443 350346325 191732588 846621512 59086464 94657313 817877337 929938674 921614037 955438768 166076464 522919065 33680089 556099059 144677864 859585997 587761827 772055658 611166709 997030648 170452781 773179371 238002129 465988736 265519964 407876057 87417789 840689368 507371665 980456983 306869290 839751213 740619770 922322550 736223085 930081357 349517796 796461391 167942858 926366415 907156725 923155327 784875827 883334448 716032391 893643900 882856513 891882168 295139807 556814688 199301953 910669108 963188850 976414489 108464569 423260286 798868191 898150734 869078570 935387914 920016695 932747412 11303334 795687350 252119395 420065564 411374706 852164832 860743695 893150634 366867430 747620999 275129607 458788173 916352614 969467931 817817183 867506385 351264165 848890021 879295568 992778790 726661621 761902572 634047825 915954504 960374311 997267687 62460403 204058602 89202047 482379302 332377493 862866923 732538775 816203537 854018238 950666315 420172520 642934093 293333186 948627536 850497339 874722496 92536621 687189532 731237538 848285666 976344775 983204166 250629756 760691358 622961417 677617859 462030563 917383102 669355794 947097571 76146096 556898582 614147886 751815370 208743904 515378873 543529364 960338923 805940220 841210763 55401773 217364809 246073817 250351839 403595171 552620324 957098088 981432895 504202642 907462582 694615387 837490802 950076420 966767840 604995043 609614944 558347586 989373429 972919510 985776599 386933628 705986014 452467295 623333162 804914749 833441651 513003260 954055430 124685551 812423545 391442 101687295 236076953 974002367 893797667 983456495 262844828 486050014 162995769 433506595 474486643 872185269 832343343 944093290 838584418 891363388 610026772 629919526 620023449 883196959 121824336 282528966 769948744 898009962 15185347 93898100 747862401 899571283 685987137 746612725 557817598 784516516 872176854 936414615 324621733 847746372 350868347 475609162 488632769 628342290 314272154 998112165 308648584 501075973 848272532 855879186 788406722 997227808 93217584 893165862 223535742 664570196 433305653 648752376 765966590 976908143 891612191 994425735 798827500 883624750 501534997 532083305 660000619 732966345 179829190 549145788 248567870 904848876 830035385 889055257 147338190 885963986 67871485 577848854 710716009 920491264 223501269 690700307 601120268 621612075 232013818 357601316 917286354 950148097 413901441 875056287 168918875 875061907 900851125 978199453 505371943 607487356 693485883 842451544 262272658 839334383 94981861 338231533 338255637 571048078 381373732 781435697 835318166 872486771 501714012 772452114 898226958 983213208 89851134 890975083 687990763 910017065 326263940 846562411 857246155 935154249 779522527 943638640 938283609 943546615 333574866 483477763 386308506 863182254 900864634 948112074 889122632 892458773 485717865 690224890 234740842 799357173 64076627 793740805 141101990 998992731 157997993 430561120 153253879 614096338 233263706 294484389 475346381 989455388 817786210 872284508 742915102 859660454 785743416 955537189 149171527 376946616 274718389 599440289 649285837 791557105 576104356 974855023 346377222 446548806 936757427 966934254 424451750 985353157 314434065 984024140 103664694 472278778 267252130 355697116 43828346 788512709 957380802 993592068 376404639 505959050 751212826 941541662 669125589 952538432 999845910 999865165 65539188 119203925 530780656 565214405 187297061 851949811 412493420 644560061 369755054 560323104 830595583 931949463 581961663 903785277 725707844 764963761 271393337 909474450 37344699 573285308 28826183 961647677 252152155 766021505 15769606 872870904 480202472 891085035 653036870 890172703 157765611 288261779 630032875 848336192 857715851 963156286 402838848 912058832 331772694 879315439 648016167 846308614 295177416 993733886 827774791 835947369 484583391 906171376 858896909 935185248 223334651 855810414 38036079 82037118 493959122 506788342 17592019 58913020 135585821 343628266 103084566 448461142 488603 589555588 159798415 390722978 204806781 396587142 555518602 648814407 266031573 768554443 931940115 938486576 939640559 985483883 548768258 724304796 102698844 789031421 781163465 893378270 208652209 443268805 556822242 754457860 402010660 992710252 478652073 877220049 479004322 517856416 373346125 880513415 256336741 508109161 279300679 787103381 167989551 985457959 799111451 881150512 333008824 358722479 442560132 807075579 243703574 810213644 489912940 686987416 586327274 912814281 622605994 970328477 635050942 689103909 871396276 900246079 211476721 814451135 578723193 825470716 305696237 756789816 3294005 681307195 49913570 464337240 545307253 865067251 901255237 955446016 61395610 977579170 116981320 757120168 892374867 952517159 272197123 309147743 447755986 777928069 452935005 951034999 728033698 879745214 900990363 948209494 94919678 349631244 965260293 986385779 987359958 995178880 110204769 557697873 681992197 962294562 77682601 896318119 705517763 800513330 958948328 972894492 257291117 713030888 777439455 803429811 687030488 761856872 973123744 991717997 47572814 505533155 271941513 583121146 142701703 744200744 650083669 888236029 481249582 825983321 328204958 772386423 283869575 882014256 502303232 881595302 729605313 841575014 750995125 799390300 366608217 866637637 553413039 929826022 56325446 491091092 717330430 924878228 229489366 437736100 918246451 967617310 273432568 472261813 458683453 886999507 418137608 423773101 892784833 944996744 948836022 959535208 782724633 982551200 913269529 982055363 879519467 887494789 105076090 943394338 11305630 11588509 369612716 889461384 152588421 337106988 550480880 728448286 422445274 899722914 189382951 301014058 10765339 796868182 248983266 279583111 776652142 903146621 342651694 680162652 843101006 918285964 876652502 926428430 653875838 718984596 968692328 992398828 299972102 461286223 270691930 331229449 647151902 742333087 72520558 398333978 597439881 712946512 411673174 778133875 781239341 979227931 797800087 837872997 828411894 934502970 783964433 998375580 52970796 705230266 109692992 757510572 161225635 676225438 330808579 932998376 513661811 810114501 124072077 767038439 286116308 741617296 185772736 599896322 140600982 209640837 323733437 759197739 868187034 942075629 822783346 866099796 981779504 982616308 247399353 566344471 456400943 882337550 315936734 642899011 822574051 874380545 138618285 988872485 496446520 755238332 609690574 749098952 745778031 896031299 421564419 956059541 772324456 804896783 670548427 694813202 931756363 940370237 610173215 785891388 535008278 864189785 466142076 818297176 825398781 936210608 905216091 925557117 28170252 912802867 478144094 807488521 517696796 896839859 715329935 877378725 628219444 702083417 129893924 480363571 941394574 955124026 633785396 837941102 666970831 713174740 289980718 697694814 832518072 965305964 136339386 724191392 87323157 251203202 372034060 534589718 505373706 594831943 600096340 772567266 449506076 943512336 610697105 970337784 342580742 432266060 304481269 613146135 518329788 640457736 744856051 885662078 410993803 728644935 356710231 987171238 656402477 853146221 613941264 781639184 268093501 618685205 437784646 926748826 195591701 520172601 45849996 434763884 519202028 901992230 569640418 903902599 654987264 815255312 283659662 415357027 670051218 849267320 398268428 616425009 250079241 419294411 259466774 970753587 597988507 987631768 761878745 972399343 995651787 995985232 196161670 405366395 350902333 602343398 753653799 762141878 610392609 825810576 173056484 492880560 529392444 744167510 326049606 992123456 33052766 250469827 578662776 782149236 902407968 974212450 907944173 980816238 818418058 879194326 278626027 930518425 129699549 734344973 361740123 791283395 831432655 927678009 922190612 933308980 560448713 910835250 813866373 861269735 316892948 711927231 833230660 914953237 123344477 408820136 654151588 822532184 313267739 602157122 832976729 876317014 386415330 691729885 582744801 898328313 100836819 751462251 618961245 684578243 217457705 856348912 699754879 774742935 183463667 636228168 81714360 563686325 726970448 781373661 497484955 612904073 401046911 929282965 124367568 603810544 150883491 983844457 751421788 801260741 358384857 959253203 550291065 595090432 848096783 876191008 364100070 451627950 437229630 738299198 523270642 937967969 664403694 784691263 926976632 939965502 617557597 722901970 816736513 927190354 468302522 726344037 495866453 814533064 274649035 276689245 707721299 890388959 297825277 392658959 243927092 670540520 931863268 978410883 382665964 889959509 637743749 725985334 338425765 721457382 520143860 984713865 49710361 979830962 809800518 846016188 319537300 724598756 159463832 646364396 734345923 788194331 174983477 837002692 276292392 726262134 943771188 962594005 208406684 391474180 820551013 890430385 176231362 854373594 380404259 702166336 516751956 555073776 19811661 871175327 677163226 739559210 385441099 847905496 391701889 518398896 26533724 914315841 53638050 428373250 609451331 834697509 731501533 837469538 682603500 894598307 657258055 881215825 624036235 770792810 486467604 710946807 301956100 966378756 789218309 951521777 853971815 926980767 219578816 742951162 300476766 950888302 398720352 659294326 637134882 760081837 904770049 955414567 757499662 832771568 572757299 610998366 642250699 869064524 467190808 593598100 153976753 651225062 893974108 988935971 829250041 996663696 717445876 814811283 927912417 959046509 895690503 996430174 470719255 553822075 700958589 811648893 555943525 940772119 923094865 953272005 226250233 432583545 39012849 796965700 748990028 850674811 156098599 276279212 617442348 882673571 51154061 304703316 758848585 982021879 369003262 758296893 659392835 759402745 47930523 54798538 580387401 740644062 82204101 983783559 63199862 453049291 673037350 942795198 956887170 961907628 148343469 535273790 728151158 973125132 823320321 878369417 663460484 859406415 39287736 159559194 180522072 336376074 912801591 978573714 732885304 915870761 23897845 498565770 717281377 806866554 263956977 577049986 449862710 580204001 770154854 985905965 935270104 957725430 938382687 954973364 660857081 948599484 90144109 525232804 626590714 833276321 982103803 989700622 612426281 726318061 347788132 655124686 920995193 937190032 885057332 945243671 343289301 924766527 608773056 950809495 322529433 695937763 783153075 898986299 720294246 721878402 63796303 737985056 979492750 979510450 674634634 965803803 781292071 869634387 767047982 906771701 501398746 753975445 13119092 161449706 455785355 497468718 2150050 201982173 822526338 972200617 539299038 958754529 766259887 828898372 494756134 590351888 558923719 780456634 258610915 338702884 719842733 777072077 26498828 860123050 707016577 995376650 867462378 903694537 839265119 857577643 20453671 900649223 149541938 874425285 447639614 818775672 914453235 996237648 588792343 928805502 898987935 945531194 760747292 836735929 281786813 772271048 821855965 876597836 144464659 403320439 953648224 988133221 216217919 362931885 320298048 881248547 722764703 868832871 761285265 867611328 438382628 493781239 251602335 268649792 591815770 881990202 390622542 823044378 575444312 946361528 932366002 983986183 453652829 529291797 183766114 500343839 537924349 567528645 950658482 998869218 82556771 961654703 549435336 706686839 938988623 945235237 429177075 474510994 839961838 914416139 78333492 800178188 859436028 963536306 498955270 939962142 805019030 815483902 701831945 750108781 176749129 639972137 779741188 802040336 425706430 876358535 731640730 959354596 719443120 838398525 966053430 975047694 414422469 554772775 466605626 609036316 162099831 770482393 158589124 855685408 511775195 543946247 146127106 773748429 758945087 795462513 358547652 816644931 675087732 874809432 127835703 321899101 773096872 940555475 331465986 957248277 356689911 696366220 705263551 754239218 51815431 492433524 866558294 950335666 286478960 349460820 833371173 925607322 22754434 313409567 781818378 870070562 529428998 975154785 986804439 998360305 960380298 989767994 297888332 879661783 179217700 274604840 936583844 995105927 487870353 806510237 207013620 286092154 520975044 775576396 136132067 545171207 596449611 944065752 650119185 889966497 988743494 991033858 223795561 997177747 812596899 947514756 972884226 987301661 76243374 226744251 105541892 348594833 697150933 735439830 839628680 963212947 307923493 705571110 466564800 718854397 36914624 670877877 876337522 946523716 766309571 796612644 594140810 830920461 381312495 719503799 125343999 432308916 622493880 849510800 431021573 995460153 867541781 899661903 812378976 971779216 659251240 909109288 658782100 931519059 880368634 909840685 252862795 415177460 656160501 703016532 513278692 573758181 959845214 977019450 367002251 415635912 285761139 420106968 693292909 941136623 335016654 581903251 854329067 966164896 404272228 989779722 63046384 392712787 447733647 682539935 793389818 877530995 354752518 803267770 372794720 531527881 61445907 435878146 415161389 931945639 329990344 915949656 134614258 826873797 559525706 877019040 846998815 871000131 481084598 525146541 163929628 542103110 151613018 609070165 632595655 777715593 253979666 992506051 419537025 800944623 847710204 980235487 433076398 917891085 689435694 978077308 920476628 929519977 236636600 911008203 811287170 836019226 462421174 888818420 476824985 803944981 402322202 989612802 215458806 732283199 978811834 995354940 649886113 990866275 666663096 842085939 507179124 957158441 325640163 439108725 880835676 961611231 420001971 633609430 981579785 983051853 712168453 986935345 540810319 659750721 362083601 421034522 825060785 901221951 517657721 885448137 131481496 545371884 565454845 622987031 186261356 966621222 457366777 963132220 246707728 504054552 659835196 719449193 462342554 749434268 39293913 736472179 645219583 662654098 757152179 893236358 803145599 940225918 399170686 529043104 494921757 794343939 85140687 327240802 415780682 787524226 799783517 955868358 459642274 912649905 524379707 958441522 884728484 972031856 60520132 432138692 737605143 778282572 564417785 655414103 207237758 256480683 613412797 861277517 447569724 901553155 818509652 994177262 766054079 794542776 995216635 996148325 592107375 889468436 38808127 868930287 622473492 781367727 383546926 404669302 590191716 916609506 107499349 461313862 420112561 745898222 951568488 970675689 265559800 549119336 184704235 495460158 343613631 972519794 387643625 858027450 182379980 732041311 942538544 994574915 791442991 950224166 778072746 917172740 259283083 594501736 867858760 965330618 464753519 998200755 741989966 834118961 384926686 745409535 388617379 983583011 491884647 902847692 665397148 863449523 430088578 659406457 847449681 920855942 638795704 805947016 958327097 960968572 566763132 764913868 11804699 823614459 916599898 941018219 984262934 987539061 722454341 738444034 509171836 901782301 958923822 994807169 845354468 984040386 849224582 882659865 457228975 749772585 798072100 990658961 16966229 656215538 330607026 776054330 489968946 888252795 831012561 999673740 628044647 973960369 117307177 191565272 890693564 939601607 749743345 841141047 762252922 863804057 67143942 531706866 649677602 705656244 977899383 988166822 324089981 852605464 653862650 933121071 696526730 710800825 446886772 756835615 656689006 874158425 802563741 993729153 678070890 889642972 347950905 727617069 768339074 889096660 346749517 648117055 747541715 843751340 734226543 921688352 903589575 945812386 398348621 750681384 22314141 736601650 849613913 914078203 329826426 356264793 18110549 408137396 907832084 923762992 21017004 871153864 221479955 321120841 897467562 909273451 921432149 949421136 175576099 882503164 401491478 707224065 655761135 764793102 273212491 571389065 893149562 943844482 302874893 740661189 499682297 960775406 251538105 839412075 827335332 830941904 80709482 318886895 280206876 368831223 584138829 985505534 578929022 786577421 101301155 438032660 326619935 328525048 357306973 377358065 507975026 618206075 410925515 960012449 109436385 433067743 378744554 651053758 105746111 840973584 683343032 792725577 193157340 705541473 656573849 843912045 700963784 984797014 614624446 859965250 888020689 889243796 377390777 553243982 687224681 947576664 634693306 744424766 938111672 971325704 782072217 946020098 72732253 157735712 439682377 648596452 126437097 928695549 538782126 784265777 455522532 738267058 433741271 946270263 992718941 998231313 185682784 913069667 943136628 994761568 214593348 912640427 321905427 741920411 549303385 635774988 460584686 725897667 921564424 989756546 525190438 800271551 738504648 877225817 418758777 792686610 808762877 946175119 26550481 290116457 744816605 818234991 258624199 754538596 136837544 592742406 123450960 303607528 684103842 801354866 80052745 482244057 267371260 757101052 717873541 966909281 438721453 541951110 154998895 383307626 635662943 687953823 660404866 798633005 729021191 833799030 361956763 480134127 249396146 422319580 49971751 116503090 323446700 479938869 832080172 987840298 931370991 955218892 887967653 999309540 288576720 721323655 636899560 949340058 110915308 617619552 532499706 859168683 442513938 885204701 696180651 881561925 848717051 934047582 324184813 801229491 381157129 730903276 495995158 836585426 718129480 969497477 833668574 879033974 634197469 766770608 454242893 908516589 57540667 301385983 474705387 877301605 542147552 893165849 936138457 962702988 461536055 570586336 766295898 888507747 594945330 993109103 56807998 908757402 509832313 901329723 160917299 484359032 704199587 861782615 322999158 361435961 447933704 737366988 566998283 604889801 61769001 678902263 467571571 981521840 131209629 409082203 460112698 754702899 631109647 696892256 866108014 916174767 834530094 918541138 237175398 460444902 245669472 793255989 188472884 466934166 634990954 853982526 695587437 757351801 949742365 982149004 397412197 870942085 875323282 940799607 871068526 932530920 829238408 891624408 753230093 777686741 923242289 979697159 306170764 340101341 828930688 960976556 480563741 814052551 265940734 327437732 280599230 403661247 316056922 378275497 164817219 567538398 702749523 998110488 623534785 914369777 634224788 702343576 208979713 993357305 176161052 942186900 381107295 603889443 228243931 580808588 555899994 665275885 945324722 951787616 716079451 840189801 533162463 798430759 555574139 708038950 589521657 740516257 225468506 611670261 276406461 624813446 48735342 99132301 906893652 918144579 438040996 603572791 382802954 701806760 175188418 598562786 570045191 644441109 595464084 699664484 962798985 971187843 644535854 960636657 742305949 895018498 384385283 483568895 736188901 858468030 879894760 940177596 133120021 221365115 3078699 42952454 266073686 972326060 358099973 381155275 557548853 856640058 973903978 974777790 928770487 982164058 907321617 908730587 61854846 382059897 941851031 963456834 493534690 849846011 943729537 976580890 501250013 697254923 824374824 852771000 364961182 447832826 335801956 799933950 290719096 839682608 313672985 641805348 14315189 364888298 952524226 956909905 629016247 914219370 127293664 774279267 341848235 356780341 52553319 594168511 536385032 906648971 34552577 306992262 59974357 674717100 810474408 925474820 780701108 971799570 176611717 905830259 442297008 770976265 544191116 816535285 644289789 922804602 367116574 639494956 963208020 963643714 665346127 741509506 561044116 563049718 212120402 729199246 435031348 678236815 473098360 890593093 729891166 801719693 279242105 819796367 909772873 995180259 483100062 622108478 151770080 336404218 880773741 891494320 992485217 996975295 592888877 792923139 671057990 713571070 903649928 918394754 120931884 994029277 175622626 264713613 510202316 536070622 557124295 853586369 62548510 706396729 269101749 612635188 763547083 944012364 331224766 651295149 686430596 825709030 789662879 911097910 24796866 576800964 240254834 945191392 563259611 701615913 63902386 882232481 484449295 775153251 90415925 96333258 282465604 516049252 674587942 704494509 853594929 954098332 687816237 900591737 754966936 852818007 705088753 870944933 515274814 584557710 535246187 757119480 6700762 483838059 183393729 657346544 608503906 991592518 566617978 773077536 607312137 762287928 440305922 835145872 90101826 154999651 921568811 971052793 393030603 873129240 751777748 938904770 83429985 575813638 574101060 721303855 524539029 634842103 523464641 786793599 418572578 732687520 533844414 928884250 488552305 763556892 895091481 926706961 870304015 992390245 842740894 882528087 336948805 543112061 609631834 806295125 573518404 777240386 921131329 982355279 409543502 796489663 858883019 938987670 394851652 477312868 292907765 449514710 799798853 951459504 924362260 998898780 759225390 784069396 427113500 826354048 707171148 712564751 709419735 897213768 744934347 817501766 633303938 980328157 211303255 777216420 725632153 898201731 68836499 965954685 611831996 977011323 501781021 692732294 377207629 738801004 531108831 925483860 384748555 502186975 437358155 809735308 762319507 843918360 46186150 264095256 655677406 796296179 643860335 798865724 552562914 615600851 625229672 774174371 744294347 867914122 298333306 420810653 666701749 776224210 297902794 715402729 517384207 706939931 572642324 811276333 546544140 721748633 935583588 968121605 43717856 689678019 884130520 990005485 47441162 822920577 39069619 93691963 813319102 991904466 797375864 817969202 588408128 636648377 975346572 981674644 348910568 496849946 110995967 148944220 892117708 976536338 904485131 997260659 694140753 742614209 935381128 959185935 985715646 998967701 808105746 948959587 523748886 847772408 721957874 852229962 913130956 963859736 65642977 193660926 840504252 872321829 918162476 995558902 897678935 986078665 529061163 785292654 107947762 548393072 693244786 854581516 795058345 919489911 477221246 496624531 208149 395429192 736714640 794138848 553537670 554079775 500637232 996592106 926790830 972772797 340327163 444770188 655568099 988927350 472978982 921724661 30868686 849871688 679712307 996376304 759403660 866116381 415045110 553829718 194209691 360519130 128000839 327255941 820431161 879053875 832595348 939731803 683498632 910186685 570868301 637424644 702890743 741365188 581315637 617452431 496523356 771229335 912283586 971635030 115754772 127466835 212303592 570036946 840115627 859619619 119822287 556020182 206236960 652113367 91169880 497147654 301416160 664207012 791084963 998886750 483597242 593414995 382841198 388082826 879369165 880243484 706487200 814218245 587956407 838216798 482730730 879767490 490973896 705334931 705648980 906565582 980249109 981687197 280106584 919590457 728863906 783802666 873190519 990554361 954841775 978274057 171149463 581751384 704977147 824755269 857518700 896333486 132431182 644499252 98828739 832129499 614319840 684074266 50757230 555787308 660417934 699418551 916324864 930979192 198832705 680885658 123710538 546624646 864107 286014700 958148732 993527046 12730024 869357863 709574282 937398249 939831753 995351826 214907837 314478107 15532690 524326124 454252414 470966780 32183757 897745395 302298905 649259057 769870935 823736718 523117338 677693964 802032846 869901837 500587101 813071572 29666016 164435585 545135156 599548592 972200144 975258961 618350989 742237957 614076500 888676778 548450637 715704737 639148570 903763769 232092388 618562584 996677683 997171630 818664020 847175203 59583533 683904018 510214037 895881434 620355719 772606411 217869711 549659803 773152497 910183614 628245948 955953783 651012504 808440971 545886059 604613823 161579122 842564080 432830506 619757678 433715993 672513743 236928110 496456580 151455701 481948604 368645979 947802461 181406916 731034639 329381636 434566949 208977018 470263551 990916725 996682612 674126451 792699433 378049440 715995008 337890807 453509194 834270794 844497762 57105813 316598121 512015459 986209215 78755583 972594124 436669195 661843646 781963257 826001158 153292363 504247763 39451440 61886849 576873 534473118 652750206 663908306 563738929 915612806 174214372 389098037 275537923 793284994 549600475 664554577 388265311 473537874 24403718 294975116 613120074 678131168 391639990 558422421 637795311 776630428 865291840 950913385 548321852 953774685 871929651 923358546 353494198 761909391 702917022 856085365 853718790 905841516 895008268 923320229 249680323 725646873 249786293 437839853 237126671 832161316 120035814 306509172 45365944 332619655 875364536 951807252 289586892 426465155 894388693 909473736 106581979 999181473 701200345 793701616 717424584 805992230 274542259 783660795 509594068 749026774 664984157 852723716 54370192 57326808 844976795 943972121 601466464 744920970 432842756 952675536 340154449 872099757 597450662 788400585 444047434 913073736 630368999 834926787 306284857 864726156 393215743 889582825 714491830 748010823 102685805 201290260 823256922 960815264 93434236 123836860 128423672 774698301 556945893 622125920 718439444 824061975 88716851 561762616 879427791 887088202 656620425 962525956 277776285 850736438 514985773 567909640 315457125 886651050 32786559 136569021 170285135 569803042 302665254 404869533 887718061 935716992 257348531 661477803 972961993 992604811 929894607 998254436 670973335 827898394 507209373 757543407 161022583 725335403 795871249 854953492 621467628 689782510 19088122 588809530 52334951 793855134 816658908 893789361 765421217 944644402 750613193 998776108 895194418 977769723 829183027 855101385 577727082 807420949 165191812 462584192 547743015 979688628 522527977 979195746 437176818 634423205 461299203 955360955 513283596 925152674 658626292 799432838 543219245 789342398 140387906 171554609 352301517 882485386 945754375 974099999 315465346 442741913 118466153 567849740 751473944 955191031 867967421 882212098 134708463 369421728 211883674 675487902 860444874 891904663 88391116 836886183 408030698 452974648 17593953 393327733 239963067 458533409 754865306 768156021 447761609 858035082 787933915 788334935 26314055 730307522 904261336 952107771 652272816 653396001 91698354 915635075 374302612 557220985 638175919 941367113 87307288 938142156 842609727 919893904 261281711 604262721 985784005 994426463 843590063 968419674 888961471 979191032 330515507 587337803 17837069 561857984 528266441 848820191 373264286 810250152 560879370 815073332 14054455 529640246 576691313 715326275 569249180 792280597 398318982 412179290 144078329 384488470 817138536 925567756 350952613 898354045 307971521 644160355 57656419 216360575 114828445 172385169 209302484 507643999 413875961 624923153 650214572 800086332 970173817 974058900 901394408 928515083 157410650 636257040 416942101 913492442 759650598 893706726 870166929 944489986 924738194 974485399 311628161 987477517 643477042 849913071 886364468 916078421 501343902 541130234 269216151 667112128 506609826 864358349 753349039 966543007 926890939 995988549 673871034 966030251 647258601 650548125 423213006 924614082 555932277 900155794 920315222 981575006 391777186 922832473 750874285 884147218 274647137 929650577 156401658 692134771 41636646 420499086 165613608 649953671 404524564 454876626 923252417 964577282 434650999 681655689 309401459 397645628 93597966 221798340 144870868 355509767 239512864 781552716 681419084 821667346 260183916 816120744 334067571 999803025 3136772 422677099 658916098 753661338 701602259 741407811 744662075 924102212 673316376 998218973 409229612 859450896 572326119 680886960 985257904 986004379 974411649 988839781 609283415 758178216 165943866 847531347 135094873 634523813 30316212 966739306 187397242 321629697 331295082 565574094 360497168 885908429 395417971 485724218 900897207 950043073 514426322 872431691 694294688 991020661 302622110 459233013 467307181 545626421 895300345 904327930 825212162 927863174 99023614 708608561 234818350 690894501 501798631 586857235 766578899 945615750 985442970 998290556 808713864 886636509 723639435 947734574 139794973 439176755 109455076 183541581 413501288 632034499 892130317 954651541 65342693 643005017 310295394 746290053 373930172 490350275 629657081 908307123 190540971 475507691 767492858 783190512 182345470 917546523 282174740 350942511 561074732 718614683 71949280 509403059 69890873 960238689 753145029 819989396 908739579 991095176 578407354 854046337 128251699 604063988 834163142 883586364 688605066 828187075 859764655 891542307 22964343 574061207 173689682 572483157 486214722 565593734 166478774 647814955 873803275 965801547 86015357 999928679 138842862 885079884 531399263 937915522 110295743 742417639 178025212 973297043 279311808 457277667 104151255 545235623 207945992 854419648 888014569 910899168 548793694 968672194 292513739 795040362 5696207 332311163 232915016 827328629 550113137 562638931 48227448 419053760 236046519 421857391 612489474 965855305 286672457 708529918 97038476 685325224 586954568 739854714 97891517 988506557 390397321 734652998 750408428 973047152 604091959 837838205 423679251 937774786 397382674 986017916 813671793 995975290 823109674 983026133 685774672 947142976 368487434 921867779 650896057 790346763 569322136 858545489 96186987 875664487 675555741 999144414 617583351 885279944 899845911 984467246 513078043 934828436 199482979 282224330 535437908 610987750 549582272 877852731 275339979 827351127 99621426 392623811 377362037 454257058 496545916 672165652 458169682 733355748 642092774 994865341 374222358 787330430 444178292 977098971 547582095 972152378 875221748 959770367 967111960 977485750 76186505 236258447 849638405 875295193 287840831 681333139 707941434 891931126 767063509 864833643 790718198 852111686 178289355 455362050 346993704 815373955 781058367 794609197 959076128 985092795 713832135 794294652 395852549 737614297 422825932 872467086 625661270 912799528 180217787 510574476 977433311 984222625 886194022 949438158 865716312 918657333 356421957 935875686 163517654 884114731 274316495 441786229 838903659 841631374 894172048 957070125 421333987 541824918 968103043 986828381 686844211 947647373 768118627 993410776 881505036 960103305 632096082 668515641 960228159 968416536 164447747 832469674 451524843 694623861 570524782 644162070 586325868 641967622 784315464 786273848 991163278 992682194 401172681 845023243 599559872 837266424 11585332 228886804 9272464 304277108 488364945 951533822 738767592 992863428 123073600 655323170 244734713 800897538 835540419 885416804 224984257 391404213 72388756 995400219 345222411 942893889 689265583 708068102 155621633 704560234 428055264 842207454 705040477 836124864 678022913 923243536 358483992 962541457 874427625 980345151 436934343 757683908 837837130 870835229 170183489 758293426 474586737 649854903 286773336 549769395 129366485 695592149 249719039 973020277 901139499 921290820 889037914 975024890 157245720 795038155 524087240 653301609 95419656 979774928 831318681 931894815 626710046 929718475 941092372 991239389 794582615 844635019 660000573 786609548 208816170 853070644 426246639 945110413 111739369 175480550 93613643 702691338 311760304 947851457 845156146 999781256 669229817 689632776 487726931 805483182 636224981 966817157 455496767 971350826 32709959 418719661 876007559 921773944 89778382 816321601 27126604 218086130 490018721 791601192 610749534 734178750 310985131 403934106 971443257 977566588 417260454 698826318 350233005 805138836 810151791 912033972 18746383 198845983 490342747 779637995 866771331 927929647 319149222 527656248 578414321 996425210 86333086 317165591 584737429 945931541 458448937 641691847 350248813 492335885 892725923 941365308 670983063 928612992 973462110 990464592 64290992 230315462 541081520 711091376 394388618 882067961 453664816 869139237 223720041 239931255 407570255 578111455 194919060 676651448 944418231 965129801 638544012 785829842 648363215 664561256 463640751 737147419 63935592 540030672 736528712 851531716 310096772 582942555 964526168 988191764 420734807 664163433 761964362 801536101 642082150 780606466 213472185 586470335 412242807 835514216 742208094 827194866 214195579 835929421 960985031 997277797 990286137 999544876 778397928 935005748 984201749 987310675 574699956 994620207 496092362 924354948 313238977 559970687 31333117 714510937 129054171 964178647 434129588 722899000 637051550 697129441 94430627 449488802 808875588 975823413 17074616 805636868 28702466 146647178 134318013 403854892 318599373 842063717 250669589 557228048 882688199 942347094 708754703 835530491 472937119 581761141 286218243 457467633 408835592 679481780 49021410 78787223 707991418 918889279 774657292 824762555 47503269 760032276 385671192 505473420 138001834 687353633 363913892 928619720 553532280 886859149 967750702 969074447 975542933 984433179 438541082 499713647 54620156 706133088 494649883 963509211 232767117 341952268 698421581 902705545 730111809 918447098 304293672 629111397 10520870 451253560 515543526 950706496 282494500 784700112 318321362 834220710 823557792 848815322 229438098 785783509 42284222 636515353 487641037 979925463 30304808 778682596 33956367 341001161 935654250 968079555 24574748 767380963 41933963 870816960 516977980 993458351 221071648 228495236 43510955 964367079 673119265 961766404 41656358 236751648 283248508 658736910 859813388 956585113 118621739 595254003 701876989 980691619 591138947 885622272 488293683 651722454 86575748 478990388 37685396 47028988 890549740 920957697 346067631 396470661 34711948 182628670 786681005 953434738 711501833 725956936 95100858 848191814 16097284 396179535 64627812 625006607 336444932 930452751 866272510 880983956 115285729 988421348 617109015 788602355 128314650 783953699 110258425 597740004 753592051 869958348 124820488 755287653 395643133 920127691 598095000 698227449 875289945 989204231 96136952 839508781 645498147 949181932 873251947 886611343 705591996 841028538 455327712 741808555 763943932 948206260 463739846 526007604 171646339 484629019 73016045 528596561 356242931 692182932 36366212 358804882 400407076 800333960 819427264 827616414 806252735 917567163 10754664 498115596 744672930 994311933 452962018 979176760 672592902 815942017 65510144 888069356 58037517 262911907 411197996 530462410 304690399 446621856 950065497 954478639 194538493 711008558 132974004 505347830 697535510 904100691 7903338 762481739 517627989 908504720 861829051 940824027 871791976 935360569 363010070 828852542 615833763 913849330 126542550 316297023 808765615 994939577 157038151 278534177 7837179 417399626 926009116 983300291 836634784 925049209 187980295 761527724 519518539 587983774 185640505 559529148 189448259 479337695 934156046 958833407 88245923 339968155 427928571 988539333 197185245 328444780 328928517 511912857 2429291 124151220 816328069 886053371 900052785 975967431 401757715 859872554 867387366 958543641 939379989 994175926 419161379 884704737 393943928 722720262 926613748 994490858 345099270 352458920 616859044 952292555 620711675 690108890 215322734 749318273 3176103 907553263 711808743 892367681 380948003 955362506 344254779 730110515 463524173 670281830 849726773 880099874 800239236 838728805 581878385 752206874 29714544 578176655 95447716 401319909 196329039 343421162 523604968 728179761 650207100 791209130 323231158 520534303 596314234 602939314 329809884 743807831 249724861 396728362 106561683 216114926 450616661 903723934 970026724 975604877 806725309 867285508 783472420 881782362 759041215 785935506 150303316 947963231 121330710 726550472 138129990 382343198 518001061 581816026 243995824 284554868 229618588 446246520 207070081 250434571 137399711 904266593 444797660 965798952 594115207 808254141 329105971 675429273 364675981 730407384 892451340 908510847 425845785 943825864 377093523 696658192 699406415 960909036 600873510 957966228 102123929 939691598 780907751 829847411 911014429 925996194 453921143 974131450 251227619 380616801 837339000 975971031 245207863 560992347 37803259 489101709 408085831 754089966 903804248 971685913 157507416 698346676 101101660 537963935 725022474 732137793 710505059 792957248 743693408 969869802 424254708 562608180 419281062 606572667 372692435 924407046 461530832 588959171 923498916 954265550 445270392 524674146 672664130 915154299 386042974 904333506 869212000 936401547 490693388 546284968 779252156 918004375 58655872 620915011 483249793 838540268 340613351 860796080 778746575 992509000 505326741 827452346 867406519 882741779 673623432 778801847 384604997 956662712 337223644 350306796 367462076 819665756 787163971 850787350 559549740 651137989 859838126 932509882 480775450 834867410 570603768 938826458 114356536 557504015 368854947 801143294 63393404 498327332 634945129 986562750 856498512 941506782 719705370 956069891 494937952 849048044 863863703 883444150 84237346 629364997 159565928 788045990 235704710 845035620 961670592 997987646 236160566 435224450 859485296 955749205 133049166 416976479 458077404 972815648 771154695 937364349 227381398 600734833 575568700 726587537 170940993 517349644 243570346 676520358 41821839 212453841 692043904 821274323 490042546 609432903 687145783 877885291 642375878 918632373 474713074 714413677 36769216 76838860 890425107 938564730 175841294 561398644 474594269 911154872 168421036 826383941 384708207 885981977 226261564 818482193 639978108 947641866 700771496 849445680 457070926 564586037 875872428 917048066 421799802 987393417 781781986 792323662 596874496 865542134 614098481 921651958 179229786 896465261 218043772 854076599 589824088 781018246 434922165 490522266 571561236 682417415 599949636 968861735 727040825 728334805 149153788 779861462 958058294 974350503 707690333 852463569 675608161 805680503 895372602 919957980 44494591 348529862 451999276 753203753 90471753 777578895 613894961 696089279 497793086 689756324 484698923 748661184 849408174 948856960 68032737 121319307 287454892 954799313 38672902 377624438 22349324 387152714 475996793 523337914 514407077 705765433 521228137 846411149 681575370 733120238 372586256 988756176 579183922 615612654 862626593 999020198 865507138 991354877 134937860 175031230 977767039 995822010 771672407 938763006 227478242 831687372 763544537 897427171 143903470 739251075 688827118 735979553 807820552 892248148 954790315 983689411 595210301 928052137 237137863 896595951 863071521 863132285 220552438 375859792 762179974 889530452 105626347 591601501 132802897 739184066 699951729 997748442 214835838 819267658 845635286 869759857 723692485 983315379 892902213 986618704 784894278 994817963 298647033 531917042 48133572 732160033 720782624 897543776 550540313 928216043 623241104 656878674 454379637 480935368 403079345 449430103 736823214 826371078 355589914 481870438 43460961 499491398 211107337 413818592 30298139 274549549 319816680 811086269 658385345 670034345 813619692 916282457 893297643 998976133 365900128 721617348 63521639 961375390 197881968 988622933 149313294 591111600 951686597 988737350 308501666 378032112 755837428 972558985 308548747 331539563 483141113 681719177 948262628 948817134 813177091 859455232 273946977 362197657 968085763 979214396 799079378 921985949 779302964 962117373 459083610 624093221 178690231 921607006 517749509 765246703 922986640 933232546 17424459 959926499 937402973 960515509 880281900 944591196 287004056 448476974 715020439 808833523 265721682 424374006 71773970 643207874 213291588 604861631 930835855 963023619 739653821 942598624 473929209 704454717 271858407 879388461 854208666 870510068 96871765 833273697 965537825 996235740 705199001 874057886 382276807 394219717 652743043 911550093 757091542 805983577 220880435 413465534 258241609 482254492 57567104 360762927 579464262 610402835 949387337 967046017 715313428 773285244 852179206 881648045 191752455 802590141 120356906 395700091 469086516 973340338 453582805 604592234 416551417 498162516 529299478 847298849 482812357 640833931 628113359 900076378 979317158 987853176 944604238 948235233 659083963 995744923 710529131 860444774 844232952 936199176 458241712 928397766 294075593 481022466 425547540 837310954 198733578 748242615 787370137 940063645 913457268 978370399 834118949 950490127 795385820 809054545 805487948 916258968 886012193 994573535 506086154 979894694 108068661 582159024 374674399 836855623 460588216 690237157 678748795 942705290 637326147 854715716 277061337 825944316 569391214 729443361 731802927 935630943 93376235 211146450 256899152 479577481 892415841 942662665 3163929 778797497 408512907 852541145 908398838 927912351 848707781 911039910 599428924 932146841 953662299 979616718 790267789 904626970 532552988 922234374 3808443 980620610 254575156 331943483 273509387 635823118 29573372 679920304 636623876 950665368 158676320 284030264 635625458 785565710 514464781 682331147 59057027 232450005 496545982 525880171 265895320 874041577 424343558 699509900 170475254 898018051 948346478 976456024 232263663 732664948 170544527 720469803 448790540 657466452 741506672 985390053 819476379 933713890 16277763 597237728 540256319 568338945 399578740 893962434 451369695 497783775 541702827 869840734 218731185 938453681 54065029 56030326 626198877 698275493 711550960 723581608 781583734 870937300 257715054 390179380 289272779 834463418 750579378 841213885 783066644 998372071 607715106 808121681 1181009 958548174 374766454 482106614 558340816 797055782 725940158 761708223 650442921 913597144 424819901 768078342 103020876 539192004 494055659 698089709 465926332 909029230 20080492 120987640 918489210 960337147 553950836 605825690 659679362 896562324 851664585 962867455 291168376 496930122 378639567 995540216 232612420 707577813 365489312 626303234 347306404 950464351 980771319 984541679 566800619 574694332 270124868 395262448 794032151 986050195 507541323 535129677 353782518 592002044 653492154 857240844 377379298 797693642 682332350 962556020 308383578 651567777 231000517 708952218 699005908 990626171 140324434 558869004 253491849 292345543 340399079 444466327 482142400 502236000 808610741 871329383 890666831 995687379 748118824 835528994 299327393 742130013 715035417 819471500 736735119 989375645 997432972 998194972 198320296 810868643 221735624 622905212 201328573 872187963 125596655 897908972 815425203 950990837 714894644 815318825 904348887 959354798 282042292 796408311 459792396 748794999 38896992 257949425 973449421 992087780 944660656 985184835 161896489 576316642 301266335 866123863 186575621 969730334 38674132 195291212 983985751 996663130 917606878 967772013 505505882 963117824 490443206 679053865 504200586 558111021 887564166 995084278 8146101 145501681 159790234 566531150 874047502 903321120 77073004 635407134 831544739 944609952 850465699 903130506 878943783 937126746 818158191 982938794 942538928 975281050 300760460 701883759 718530354 939529914 250570105 811304097 296230007 329346710 395766423 681230470 951547364 955531836 22137201 790791100 820555469 863778789 520284846 751619457 592386246 634015064 862975525 942701211 812850039 884317044 381207387 600029485 854846778 856748278 916259995 989469820 809530809 822434396 884599918 939130472 442554675 754981781 948124712 998225941 928349760 960565801 926855049 953238689 192911476 525236807 620423929 947694978 235083659 261643597 401597966 768612489 254885474 503793232 104216947 214180785 444626365 903599185 738225650 800751845 211885769 365209176 560018489 586160937 550559430 637441335 326715846 673047989 388094559 574968309 22522795 768028289 243650226 927836122 415577661 685172090 766424686 995115097 898847025 942955183 154380899 628376136 124702405 921739929 847918754 950969175 142356102 655118305 607656238 759004748 217418921 856872451 853184876 958349226 482729749 629832362 398361977 973375499 870367657 898135276 888826280 910103633 6026765 209562053 108027604 317349512 11417347 864715631 485331705 909880692 537774034 920769407 412072263 697835381 812400146 907110632 914768169 959962607 560965362 676487989 96394431 168151416 876609772 947711212 51636605 864919347 803253172 997709891 293522437 612391692 915500804 921055751 492027109 892912617 997753082 998526678 123021584 518247629 642300985 843305215 361480050 625571405 503903916 626313190 990485097 992248743 754214785 791728595 492088678 922178483 252774131 714909575 93336848 693505195 942125034 995560136 305932079 538130359 841533676 996354102 581038233 847405697 526191126 895101085 150102819 314332300 539916827 849772386 192185847 291609742 485007182 707593223 668896042 787197726 586521393 613350828 489351916 873089180 233623879 544775362 556295732 855396949 413634218 993707748 289387092 864394149 555322059 917120333 12831770 828328375 25665327 63078344 818478138 929007795 10106941 932012342 647131598 983372845 629973654 721084653 436354009 589948007 421124496 844079610 998404263 998920568 924501141 935880791 46692164 353111952 129744395 925695247 549686362 874209983 488798321 812515720 745872650 893121899 952148730 970816268 946171800 951451558 542987100 888132089 604261488 850792972 975936920 990772545 390876814 603630006 581801882 773606201 96181832 195962493 80305170 349964451 445925447 712902359 348882986 510455886 594419445 748682330 137478118 232973487 672182044 981992981 281051509 327359072 672248057 824642198 114256190 280945781 263846609 840134070 576400286 995067293 70041582 994789856 982975849 983530420 713171451 743242975 371645479 929840101 9155755 860882362 519829288 896232874 498507645 500627736 427158805 444215628 11198889 462457876 911182020 932652938 406552322 413611486 536688599 862387347 554133981 835421239 148893617 801743833 568350901 629115138 287845862 390144885 544152803 597075267 77102467 738490999 378378003 792589050 319546492 392535694 998538376 998837473 776012682 870408175 630362488 874794785 466620647 691296881 475403063 978372873 517509193 518914783 319524878 418196017 271305938 743535082 275406014 555227546 532407112 682279337 692828209 722336878 778893175 978256185 990955523 992946392 543904381 655010573 707416057 899727247 384365120 461264020 855333973 912315117 109875240 537818537 192712638 849063203 4309243 451404293 688902222 775854890 713142533 917345564 281979872 473743212 788763708 829344823 250994780 649761829 505243819 863118693 846278335 970300092 883649947 993343084 632778898 730754449 510530790 764479747 457392946 561288156 286088172 924740697 544471160 640761794 822398801 898432692 117863088 838837620 250271659 578635049 256432168 666811915 995831403 997667531 525929167 591833165 165364294 588182781 583420318 951228623 56758808 464862400 117900116 712677351 62446968 361734206 598583113 711222575 834710046 888283110 452544755 634459555 216503501 711393529 490193738 708228405 520962984 856675776 838229896 943157081 15574629 767907918 386075153 634081689 42753421 535871926 548094192 965704608 397573434 438645506 627682599 896298664 795950269 844636650 913397153 990392372 61392905 971995735 389059636 785550517 723864516 886865976 957731706 988916553 742503346 790753527 207510099 618384718 861273227 984728504 157326475 805424120 311568377 845152338 124117886 691291089 453738249 540282566 403948642 779730404 954689660 959477190 608001055 635876138 263828434 833867080 166944625 352913413 80603949 804163287 861627687 867998693 989097042 993131569 825778046 885130855 338726610 736027259 297301436 807727183 133793270 649234469 725657591 989779308 631688729 960566543 144650229 766585158 364436962 567442613 871387682 913944015 836612901 987927116 173257056 614164083 339920411 379728476 629138 636512781 722934861 944455259 247197926 894547283 982466242 999526541 341549942 739122666 868907563 917101888 701438373 810227596 257981246 921786357 12007494 755306439 514296822 780389409 134074645 548580889 59808772 388295469 741025710 983855446 174494156 704058533 605458695 910941910 427403083 719828625 315327256 831074319 607186416 650604808 209807740 865739746 605478465 854059970 538044536 987639525 375125420 470584525 374251006 494626032 494210764 667937218 436219034 869711151 955306943 971188353 804013066 804077736 293750621 747840162 837971107 941502948 322726480 971841368 124463696 627961653 792256451 854604206 84864546 203529719 80998033 652026035 437225017 630652119 428193790 535383438 306692850 409841213 660998638 999093552 314001188 795837657 653539176 971226315 550612131 760106095 653972240 862818703 77615954 947087124 679939557 985286686 538309576 957693971 797035914 990515546 644721268 795122523 698250590 828984937 978608224 984596240 729879563 972715835 297792098 584782061 652129663 783586520 687403776 810985075 453817522 591592647 856027029 947647589 401306668 989527337 540266392 631013383 961299548 998453983 37623416 808770075 913529104 919325394 654902951 836104638 695209898 965962633 768488705 868090750 429230216 727975860 584268294 985927444 5607103 6614252 699000195 754021786 636846321 949606367 103901158 700777146 615854426 790290161 537630903 822877457 619764246 782103524 927344694 993776218 442211382 675416679 864845047 906618021 805444743 944052385 210488523 960002161 627236118 660959613 357704421 447624871 294639647 586265669 414625673 597757744 151386796 742885818 496186162 708048376 334759552 971797659 6282216 19922382 766550309 954539429 102852523 143859019 481269874 792730816 774947983 779864487 236063249 942978363 649470175 729936763 471763563 939954893 632337943 827235810 282020865 440206990 710176530 830054269 695192925 892691850 50967675 971727125 378864091 979825788 635295648 816068867 492603241 686091717 336172311 889653188 979919033 990134077 470921588 816515478 185832869 470805893 993007068 998890251 273351044 619694829 242725415 322428621 293762326 991595652 438274455 514922916 28484281 377529008 448357717 897214682 278685881 870670144 322972826 907181160 774828498 995776896 836886154 846835231 699506929 809203608 724801252 816713869 471426282 893022638 488669052 603603835 333402488 772653859 129307759 526644915 607971002 750259174 690147739 800198270 636164655 684271765 697278368 947270701 294334203 951195687 547876588 862575765 537405776 883550893 345112553 527619074 899738643 949533284 998447787 999200770 793790533 795151351 857536952 983165249 850906997 921905757 721346075 929697007 692566797 866721649 11407521 892013578 741287443 827409125 209246466 619387989 701300310 884643441 648225476 665752326 86032520 525258246 314437835 743982644 294887146 708693222 333421993 611902718 200641131 484135349 102096232 769431205 135175052 658868237 647859584 732759755 920899810 960305927 553570561 711499632 23253082 915540296 512341382 877138852 376458788 781317392 564686389 890908542 793566025 806286119 619546147 945649639 427771610 950818199 458073748 626786902 772593854 850554196 960749443 968659207 877255512 970342984 806805303 931039473 195924077 415690664 816702026 956674543 769187591 783936174 59808413 283510250 957833173 979433100 270957927 789574379 96120166 601426552 754239253 938303564 568211775 621296324 98883046 638699173 777692745 894838202 763112730 830006878 882324634 882838093 296772571 629261862 78767992 541606848 650829868 954688729 984991288 987508887 105615330 991344989 988978859 996738109 826474062 938706147 440422061 901177521 885348389 939343917 955068586 985468118 843836337 936512634 884229076 923965387 499908870 900078036 202553529 929716828 309610658 597986327 406848088 811431429 968012539 983045438 275655783 861398112 34440796 805563641 262541970 319636657 265281563 620391579 321109966 682101820 503209773 876900985 713690138 811561827 438942835 535629443 579555166 647703290 240223981 554131589 591053952 664309895 330914394 637369729 923050538 992165355 759134799 923803368 798421776 847146851 492536240 822782538 19168020 602403930 695397338 945751511 434792693 492474486 853246100 873026221 501491090 920901760 331810018 663572519 14184882 205341626 3222162 153062606 18453624 93585192 998263090 999112960 844200983 926325782 540475944 626186387 510438165 987173435 488366129 921268526 90344766 284253811 394450957 772738710 709827183 912715845 946724303 995073995 49044142 719347601 687262077 947378566 106371418 109441261 747800536 981982004 444507168 702578504 407105053 649868978 822840574 883474875 755341337 860601581 781108344 919520896 316825240 565602131 370712285 391398753 383046998 419819654 432335923 891777133 339980501 650935504 182902458 530331203 293333524 791929496 52163529 304563693 112012653 457362855 12814170 565646890 182111891 556149397 641034624 700283720 257424568 426407852 793835646 843889090 86913515 272074056 39053768 989459851 658833129 684627060 182379832 219007221 166619475 375651997 887358543 970938442 73165250 935459993 122414700 252076245 585883131 704876954 990422846 996016291 154083489 227780631 931840501 970032466 661290530 839669502 415524888 918713750 880161273 975631719 892634233 948938042 217830741 504231905 983591352 988502855 787001424 972854046 885098281 975222331 940208731 968899922 546892019 895311640 530391540 954881446 759665959 816348247 285533810 829214162 491819896 900664951 596846369 636934305 626470579 970515304 95818840 604722010 328161099 797995003 397537621 565162999 535755376 550544763 850199927 876896474 387746608 588131735 135450950 540125725 70535986 570035742 705683908 728697703 453850009 997890859 89035335 102121016 48982749 381145722 236606031 450691595 974092270 987834038 569148471 906777590 308893157 374990777 746098886 908977316 815846399 991307776 99575171 881604439 345399561 576061465 260663882 870943021 23215225 726556657 405867222 842213565 660623221 707876914 49161066 951115330 137099732 584046073 616752693 638386527 763061210 910521086 266759135 815901357 695306535 751202309 359713858 425687084 852620284 922649136 157411022 179790661 676296528 699527362 944823360 982064189 212518458 659277599 498846518 789522621 38393055 561537539 488642419 984230199 954095219 970691336 168721481 701746560 849544793 895427235 1346819 375278079 532344871 995479907 136034359 737868595 642224572 927845206 665688520 885395053 281352998 959087664 291803579 857497830 218999779 639750484 668501854 872060817 19177976 340027913 618482126 784344142 264228249 924431034 435911297 822245846 120294510 175822057 230338837 610292470 295939350 514719693 4565393 779522746 826293392 890387990 77262332 793574529 548072996 565893150 206699889 235478283 198574286 883960275 745453054 920724337 783164849 926233737 426675920 717460995 229260996 701704980 204927749 670374782 95153503 99893333 789246939 824178964 194641677 299807176 449866181 962214546 176678602 913097962 34779295 207376294 529412593 664260863 298530356 712282615 589353346 933176750 165307512 498917747 747181577 838527405 507684801 852907199 961214065 994749199 910661024 935480977 522017021 754558475 712127099 815779704 545563107 764106171 633568676 713076430 88989149 226842157 276802010 954951209 495362554 868163981 753473632 979952753 28485735 266157895 53170142 810772528 898550567 926599294 76757738 956960911 825495468 852189667 224512070 599540195 642458633 802573547 356301205 438678572 375034624 441949996 280005807 313775941 475026528 703587607 685137079 798002958 23569117 737783748 829386832 833540456 941842 570953071 843908936 848790490 237312250 542104709 873378364 952432472 107306279 713694661 912834566 914321228 733050358 904669775 435641390 871126000 307898381 978439016 614585450 658135520 242269604 903706393 837823048 998905908 920562488 988997563 436498109 719982191 147840264 929270818 253128965 401279725 694355566 869310381 278554592 317607634 685732057 840456086 751339076 799552314 101628158 592953552 556716606 944536941 178168332 665435024 734636162 986304421 927556322 958785741 576047020 791307317 200298117 431513333 426754952 619117857 226406763 277207674 937758933 999510560 490223150 951283702 631918431 768649074 686204749 859394843 144025128 549685770 688858396 972044774 170507314 869255683 894319235 912463730 414259165 421928826 439425469 827457944 812450480 952373882 166971044 848893085 906495257 947083273 731334247 997515529 676357456 685942866 488918552 981225627 192602179 324981946 319919975 976431245 308762426 776442146 184712149 459730942 391330266 696700007 18109806 655822094 113021862 796981621 715103381 770107927 354847657 728031218 893599284 958910994 63469449 259882742 135266378 264148868 800122057 957410244 704316499 996128732 820928132 933828880 562688417 712779178 988491519 997159077 779136121 982573985 747221683 934600538 562735426 712927028 893089988 931071178 40082721 87125322 268421955 531501632 340938312 644011756 796193887 977858362 87755422 458545436 955309236 976530427 389678154 506133344 148587494 922770872 119003436 445138658 706146168 855212700 564427421 754040900 207061496 268969359 923060560 973218928 639774300 872112110 271312954 427973974 965286127 970610376 347100671 605402805 107422799 745660351 381781010 730335461 784019930 976959747 529613614 728856563 145893584 999742406 234793279 432897680 287407472 957925296 701637125 897388200 361297681 884431297 550204530 647162930 462879087 578111048 17874232 872838233 235820784 366768784 369721889 994247772 58974212 414185725 650852630 946889943 148590563 179146062 891666983 935777455 853737597 865596481 204345289 727324350 213592299 926789989 100076120 211948601 589068140 664987239 461740479 577641258 492346117 976970464 671566846 962785338 822620180 976721740 371813234 787631648 669866986 795514960 438923849 509453513 549984694 874103652 10239937 719237891 579199480 713922116 947043090 996164607 811759022 885772794 971079603 975207201 34402049 410871441 742521114 914283082 413857184 576466136 307787336 600485145 853605746 975129790 910868130 920914813 555275372 714935909 841428479 871911365 523989904 711528681 235690480 757092074 161125637 400027601 541925923 873197087 862978312 963279199 536852559 938013440 955981855 965056873 768738246 894736900 871509428 921702933 619928057 806577057 686130771 894399917 528617407 542727150 624950866 965990055 866294319 946239558 244813009 386203305 849215259 952487537 734698215 931837111 967967920 996030577 84218531 299749206 555074166 765015380 316667018 778695310 722553813 815455247 354561990 913325194 739417278 854817230 660796738 831486176 821266404 961556780 101542760 329259298 291851409 295626952 838632174 918093125 246755382 269967845 547830340 981487076 413836836 487237866 8491955 770452906 631833105 810310087 279581860 629576197 542601097 551281178 552539890 841092255 21138433 748161303 313173043 798308957 180792024 214594964 645106596 865597087 376965812 592935728 477284452 796387316 340763298 697674449 67314938 172410632 212321378 341405536 683908059 834190531 57024594 212278464 386453199 627091587 280937228 871303744 139275725 209269217 445747473 578384540 753856808 888229355 806219609 972862220 972649731 995200777 290866285 600249537 51969003 130549338 163495003 207780375 385676457 956792833 135841954 511661228 751394369 952872879 918903454 944077381 679319316 899220642 518505654 671328166 91439172 102224475 63824041 613491319 179271045 710435967 408103825 804085595 161077432 946125390 336169667 976001264 46109392 312440573 564048521 760197357 774295718 965354119 533018597 937189720 91232294 767722000 51055534 972203912 310146109 405822093 540068131 644208409 802484084 942101296 615796420 916085466 493311169 996067561 503158500 707688157 961468598 992187522 256557574 545855477 250260353 352129098 309149248 366549467 356116973 529710638 574998971 600656698 846465139 875750383 757135499 912689663 52283729 144605756 602014098 608627537 81059296 659852733 906416804 970622044 46878435 612978779 819906819 864410858 177049306 520120067 320936624 328052623 669316312 810342361 591176116 683483294 259987226 612585067 339301848 518321120 236506849 497499540 337066440 965584242 32832033 749756989 811900397 817835539 456715937 831819785 879003552 972453324 588422664 884165432 107224839 131078562 999687125 999864196 850004758 945935662 95381282 650617348 999479521 999737768 868433182 911397661 859888362 980060044 117249158 763118674 889194288 958328266 527650458 932757880 760974794 767211932 764901805 956191232 316658748 391032820 54535654 794340334 953438023 969700442 243108336 777998015 884821795 964194080 842065263 969894177 235660659 513172225 907237008 907835236 851306915 972807488 122973067 805690890 747093588 826073179 341227104 844716085 952559264 994383726 162397368 713850741 462659673 737335390 735650321 764372306 391256666 402787392 942584445 990149049 992105765 996424801 480775373 531913544 822400205 876535578 452696474 756710932 230122747 544051640 291508003 435725287 127145263 386801884 423702185 840880261 365671797 645476960 107792629 163005720 512824833 680336514 589678646 667779388 318329873 458382505 143134547 700367598 541970179 610918073 634056350 908619621 857544416 965157843 563728067 984830489 866124799 974844582 914469787 974961651 355134025 939128731 169979989 475935739 159060886 527733265 691530129 932631612 359521335 376526277 172858702 869766258 783235059 992876186 232342446 907362415 957493506 976513678 812789575 824599599 775485613 786287131 930639235 955858079 878563541 908171759 492781818 831376990 933612245 947291150 117703320 196261847 65097842 160048411 692055158 754210107 13207089 418771876 720312448 809416185 349351532 859224143 398594242 825926116 130224207 373554928 697396287 732270339 569800370 842270193 596277342 930115886 34896943 35540053 998022336 999370602 626224650 829185021 399643777 600010450 881108356 981553673 449345171 656098502 521531138 585019535 707729279 739616550 545212 345387893 370515626 517896572 498146263 853913804 842167946 905997704 90004865 879894745 111421308 535966044 964894375 976251499 495273674 686069932 424521824 859077504 249581337 977613167 553239583 689527971 387079869 851787030 234542490 270141002 701944932 967837417 563003528 976056353 377607217 959527023 642845519 800203426 336145737 550378880 201658817 788109025 109800012 553716999 933667241 955808845 953821647 979870427 406376672 555076309 760318809 851728863 60866126 352346014 181103806 629870610 237762507 287416516 177601918 381527871 11501211 326173677 234062045 716660208 962962488 986118772 640927132 915496816 41244371 992047508 300653009 311610627 849043670 910125732 633658339 883551600 536193582 689011443 759668612 878208206 911954664 938343251 263578539 333100273 139681043 354342342 366190779 898890239 683134616 876343011 145365670 476580664 338955932 350044626 43508433 539769805 419834266 440123244 268400563 664662207 625288477 778453853 914502826 957793550 85210683 731052789 751584962 907492610 320032640 985953574 779965681 820985693 500669143 528260697 290106522 408331504 162637836 901290675 140683612 201916670 892254141 905308669 555054085 661488233 272238929 804399111 382882287 923831191 402341512 761193866 800411144 998509489 687417790 834754929 752922189 879031722 629009999 883296918 60368641 66392080 383310997 559207262 653910546 946256602 697810176 938668257 244059969 643236351 943981484 969455808 498357417 533281465 711107984 959777313 649916604 784119842 690769179 899752309 834056244 960918029 256875010 395111437 339233935 833394563 55353502 600915195 492806763 708852522 966374087 998965446 569242427 569276758 413983176 814965017 417227412 438882496 300498797 748660634 28826171 341637687 169419498 821520546 780838710 930963696 266039263 440775208 235654516 238506681 144003297 961714038 719092855 847217118 293583118 656510268 999131214 999197109 479233636 789395141 597352327 657765310 785877004 899828773 34115012 200622752 836821254 961322332 888989702 956310839 27402083 866974243 885234062 948393157 996058058 997072416 647725039 775609387 501402978 991428709 969433210 995291142 614996020 823263053 293065088 446707459 764104585 884684379 887869418 892112539 324313178 573639762 858448121 921583172 197032642 595899879 169873476 979777599 75218594 262442795 37953772 167955470 408883621 597207920 667317297 679769782 371868843 978521497 541740218 789947117 450112230 612995737 491901259 753960702 81029535 975865523 431211546 612763192 489244252 630261784 766965905 924166414 570050965 821617634 139855098 705238366 50405535 246197646 691789735 909014455 606926336 901443936 192356125 521293746 72756656 144218699 585400778 948641768 41183333 396714478 775408376 850508696 804622650 880481140 661591626 865974769 635918815 670843345 950400017 952335003 960853367 992495079 646599966 960343049 533198557 769262143 911837086 931667566 619905278 624008786 455678555 881986137 31480352 490242943 619242747 909657248 160067892 815921870 506290233 927470583 501099075 676957816 316929919 977152315 413289362 945684298 202998067 973862924 82254165 652107127 279054909 560582470 345265177 711825636 256266125 501899347 310165174 649427400 976719034 987105223 583302795 621896684 853631497 980980845 941954803 982866975 443653025 567512662 309433458 782881031 107322516 296209436 471665441 641773057 703589777 832496226 56546164 686898325 146140611 555951092 242202083 737936925 641993582 939915196 835704713 953085570 963366485 968022540 884299201 989843696 66332608 139285257 702600908 731384727 457299294 820157969 208280074 882069303 566864919 808561169 502756983 623098047 427429249 748723272 512372821 864125722 644108058 743676919 495678236 837269201 214203870 802349788 299046149 464493888 775476142 979709815 908477135 995939075 695361513 991402806 492056232 836662052 68301231 961842084 947616507 999634514 80400264 902786862 188696086 234164051 54460463 748509685 815309827 943085249 115452266 774407841 270009490 814432413 807274776 817511500 771265198 939722155 819710095 891472908 493788851 863819682 974011793 997343675 824854672 868562202 233880098 433411568 367839887 465213118 519586265 874687451 342184647 998980350 167206019 421569093 42587239 173041362 551980452 926155335 597235013 896824572 615298824 630276075 749296165 903173294 353260143 845669924 781421931 828088311 34245819 735561135 993782499 994863558 740122759 902937822 304561018 733338190 344085869 524937828 466802895 946334750 529977192 681872304 943947929 976989446 255265954 273780867 835487035 878930938 447029197 583540286 723454751 757746580 709946844 843420364 420226005 552689463 38086954 283151083 2453996 301500178 747799391 911024613 569927124 905492707 218351789 635052939 330302709 535578992 186649721 893351906 255726002 732254743 135983537 627648055 419027580 630733950 133397901 913301562 791689651 929669526 878362 830731334 668431172 702797240 303133067 680540985 768952664 916306440 623059245 777582855 573754907 939682733 178160276 583652303 348659133 420706869 681031073 745239897 380722047 505285382 213319098 417547136 574210563 854170209 997353116 997887212 678814486 905771824 203610759 874643047 384068623 795414780 693256610 933700673 119042015 317673642 199692560 299294083 548320858 815996730 190700293 927620724 249366479 794017199 9373260 966518824 163416920 381757974 378421682 564188041 249833901 274932256 581310159 740515618 330872876 545916333 900517023 976269666 825146508 880775997 491941454 526625685 317159513 798951384 607309026 969920800 628445352 706392580 499185293 881170537 658710807 744945849 65485730 130465137 236775241 780433116 75000665 287701330 830480003 933035764 244396585 437750946 174274490 973294139 471442455 960265390 109259773 228286689 371303128 536378279 518816891 728570508 243843602 635450092 763612057 955451666 712457929 720147782 377909164 790529390 723771545 867615355 828828212 950179509 492353009 716611720 463026900 989717623 974610342 985754563 839150889 994244980 256918508 977181698 605347058 662865484 124639066 789267220 9323173 764849740 707404744 770649720 818253765 850276225 537667080 549467511 164442938 875766398 303816061 657841045 934007647 968623658 658059679 909602074 334254721 847775534 772985725 857104165 413879875 796370031 946162253 989904261 712781010 878750318 314610721 705148738 585565966 718003861 22128866 296868763 770657299 899713788 870016920 872152889 153669234 360039036 29129523 639839998 484973349 919315200 304078890 681806702 78102696 647960616 94707925 516499263 160843378 675819201 330515004 597636395 928051871 970956933 991249540 997015111 460997729 869038765 707076007 735132291 132932707 686358174 795003696 904572004 599407452 912432667 258384703 323741279 86270061 311689605 919994941 955882467 599494449 626700650 940175325 960166315 829768643 984946356 400262902 828358618 256764539 359967564 299227420 353158886 800032417 873032282 222873430 511169463 469584183 598695616 769487314 898720719 276311079 915460910 466973136 551090736 815964040 978491235 673201696 679515041 882193259 934785044 510253021 711207390 2149389 966836027 464980792 872619675 446279329 464796668 196617652 222568775 20468526 291032111 401296630 713330173 58664734 299434756 701611355 819845898 468653451 663572438 784951119 849559318 899886307 904016511 851444028 957037057 151179433 328755228 688890824 956280428 157682613 645585058 893150858 916220738 688959756 862154715 730410431 861150591 676424703 916580100 371843103 656855546 17707711 514890565 393169110 731216288 716476640 786007740 997456216 998538337 624050528 992574945 922351948 972099921 115710511 680225006 118952816 712811502 659107778 985725692 159381257 824480405 575507960 854498759 298208148 687850120 986521110 999096127 818301499 932129449 332703545 472363116 663580444 686518721 93092487 835596919 937969820 977107915 889878507 994108390 475036871 744123924 758905691 915674752 324715358 889055439 298359346 478121802 373693238 754360905 308737360 880695577 521073204 733196743 998511220 998790409 617797390 999999009 841555408 977152752 599472554 620153697 533550625 823437308 200076113 375722694 795589898 814246271 617149438 993848051 780916251 840722914 561664912 808887616 909953970 911398491 618208218 676268158 588568462 999652113 289537213 336419690 278395648 378105512 420249703 560114353 766759388 878057743 300910310 509452138 227285709 298958858 481838532 894051255 171031134 780852538 548484162 805738267 866374916 963160299 114797445 716372254 6117973 221337603 215418001 793251722 671094853 681982622 866240992 928121532 666160314 795690514 276503792 696713097 570129200 582420952 7033131 196126827 919714714 969913166 772750187 949119102 810274974 897961520 180284583 911743182 496643449 557121980 718168770 999234242 440668723 650248862 187951547 904375069 992285452 993836016 846631195 966425131 375714448 657628879 418588787 548085786 767649790 964096754 941129165 988974148 536112414 785303746 213949854 219178757 344074542 571721345 127894677 883335334 858746901 939080254 252760727 983013006 357373144 463216637 555148615 919098803 112035950 968028901 686952250 689891627 467747246 548298304 172564788 319061792 671947053 848583392 93079571 205640389 911638154 967443623 899862027 923965912 974478073 978945490 52132130 436017379 718901652 741436924 864282788 981873659 638811380 981943253 99535715 892614166 669147049 851035620 472925308 966967470 335198680 727806110 204688786 491703069 627093011 775820606 310043652 948199786 334682720 923850771 838000257 979574302 643431378 859981705 754348012 857373499 523699947 886581661 295317549 600748537 239435523 458204356 924978153 948079177 797934921 957922487 106996594 118759809 527305398 592853752 703666325 980995938 876585988 987244404 237860927 771493699 672956312 835340591 775684133 996605570 668410043 758381938 280434661 695671157 245104080 747285734 946928230 987167076 863335471 991880051 74516968 115675341 210059277 765486796 328892505 373768004 487706378 834354692 936647801 963092190 476233066 915776422 174394004 464160388 868951491 953171894 894111022 971281258 936578157 978738675 511995917 789353361 446522158 467681773 512337918 680970604 942972539 999558047 981060532 995027185 993380956 993917991 432070616 630565751 349985352 396369443 874958181 939342868 42543640 775431869 386685064 739302623 670997585 993872209 845888012 948433763 327694166 845685029 783350452 846516116 61580132 432573281 784414012 919306403 178264848 415461486 670700996 861075126 574905634 756918709 699044657 713772824 809211476 942739196 836560120 862281722 687244606 742661178 522466164 856717420 880998823 919563224 312102155 323519167 826456427 989311903 712938771 930139776 424623622 694926318 495837864 862590100 638833551 995623141 33392602 419737782 190367681 286764679 714507917 994627026 140441468 718735724 438549826 750089222 959166864 998315641 190921058 724597593 761410129 965922009 964118780 991703064 863610703 946881048 410774220 853751421 303800804 747144427 135586983 562250207 584969058 752442519 870528667 896954714 707376891 713187450 719696433 760436150 624571611 836918923 474684707 893644549 776376619 916266412 626519583 653534552 921285348 997109812 974656711 985540520 65246315 992649042 326561861 777630305 715640968 935836576 234263051 595846015 597547718 717872023 931810879 989676703 401263075 658522930 818720936 873030493 956127802 966220304 553330814 789378602 837869102 990655727 938619077 947630494 836857247 942393080 619727189 892388605 577690325 742736865 432833043 675982771 743452524 985784483 924566172 951204053 612299022 624085004 700064701 743205185 850409042 912556781 750206957 959156645 42502886 746012424 106020204 260995092 540669560 717855693 973197560 981238998 619043130 622122915 327499024 596123296 525553937 727334749 138689428 390910623 992889513 996023842 125876194 408846270 702880509 988099538 90277378 241018976 213622067 841346148 508263161 778436515 81694938 616799128 700132014 878327029 727590274 917467577 723500535 733487963 631598876 653392408 209932206 541983472 483376330 568795716 213511896 751597787 932130414 985643587 958783555 982647976 462385087 660274580 154937224 600358554 129161519 973013026 878899264 960725012 178479597 777957985 161271943 645344246 738203672 896333126 492718379 813754397 642191816 959236600 613963006 873988235 947469578 973876154 823894885 886793125 896237715 963161873 166799527 301138473 395415468 634118455 135863846 627232170 960459853 966605445 141234991 742636213 831421769 858448051 344764527 587008093 333063780 780670287 771314135 922502696 693368600 965244081 219174020 366129419 667539428 949693374 831177442 994162800 634970105 921144038 465954705 943337164 849287079 970772718 734758395 935216388 659620972 907001374 989457902 997696783 676986512 870761007 297510203 907557920 76770726 981252512 196666765 584252517 730568630 862716071 611364480 724933056 511173102 946450324 959341201 959556024 415206263 797138927 156642524 419184060 773054023 888445636 607424680 825961635 963470144 981527614 586928712 765483618 402679183 933976555 745685775 815678308 713690712 939677692 420924939 540569495 372778669 952557929 530137172 588736967 716924634 738841667 989963446 993887183 163111493 356271240 356353591 864119330 93648623 235701961 788871984 991420954 191511370 398084980 385403178 540516989 174356196 931979662 958566842 972560203 689517007 851994380 283254521 772864526 910478296 946737522 355282071 408099294 745914916 823606956 414961496 430813835 898473146 946308781 412970721 802982481 279253497 519319376 913682270 955693423 646615832 782212017 27652390 364456513 627527320 695515767 67774452 920413981 6304190 566481556 336146699 973362518 983483998 985999132 887849546 960782222 177836360 539039533 428503680 483285237 91153382 635171908 132097853 607736713 779198328 799602784 274581205 448353412 710976048 827616045 503365632 599209520 567654955 998364909 357255724 830392891 760107704 921180743 501834130 730157551 642251723 652856784 760362014 761683459 79639410 109086727 628551611 824901419 960308387 993841439 664483852 981642190 881676138 984909199 932548436 968013676 583377598 811004202 648368258 878633771 174042328 770761991 290344793 800159783 860871089 865326292 63929163 680392532 998601898 999306845 778665719 850422375 753054797 815525291 5853043 613845904 631977899 927835182 557344954 601525248 731741473 934668276 384919961 865871781 974075286 991299733 317142883 446242079 129626667 434477814 918256221 946668143 586983832 721062286 616870657 639416792 343400163 530225155 602201078 979257806 449256171 944132477 885400342 930226757 508044260 557391933 122689990 596678770 68005827 786996242 820452300 827757799 811999839 839389328 122186947 608217731 630899388 664861924 746690736 996824080 169894350 190160266 121289570 980493823 761204134 827065978 677763066 920933789 645356017 981338186 485763865 936246880 353951338 631454315 280807494 560080579 336531622 365400340 848057791 943826586 239393293 979357447 962833471 975868731 542563865 952705331 700687672 803637790 609142031 801671818 80822802 659787144 349165028 498834269 369231859 596412183 223953274 722759870 58104687 244141675 750301308 818681897 817361261 992621715 94963257 279576291 213707328 259820503 304173293 928462714 331963110 716176607 132969033 178258287 224667318 976476283 891903009 921205172 450495249 786920040 495209347 996424471 653466015 871611081 691896313 698102159 348261597 532258211 144908731 976096781 767248479 865564214 924864539 985062896 413401519 587374364 875141727 906516503 991194085 998030997 15769498 588113523 541685908 697341958 994516242 999375018 180906709 326595024 515660500 543565265 744093500 814600178 610734647 630300416 124632829 188881684 416970232 511858666 132216790 849563828 422375704 467689556 18724848 197150198 656051771 909093175 108832250 591362160 127121489 745541361 794408799 967047990 88133688 639608648 731210328 793758901 217921151 308165815 473504045 988828803 233209099 845067282 823266772 956226340 872872703 904406492 540114444 932318320 58157550 838736001 399016546 839743426 820643463 888217006 706615317 790613337 488118762 570198978 18833109 125825983 753807106 924475230 298463873 660398858 194242193 987252176 690443672 871062107 887737834 995189879 868258213 971003614 161353394 964747265 864428503 894524201 346152128 699392606 168218508 967905006 937843004 952801129 305239790 535611819 634040810 748786622 275450726 340154677 374672126 921593724 951853104 966501462 377824686 684229158 261771175 637831689 296918042 677083443 202136229 360708543 897539608 932906749 185495564 308360679 104313834 566699850 422958486 635969972 477523642 636984436 913096372 992539431 931551396 934989956 860358987 885279287 844254180 936846141 938297087 946788804 474241672 975147378 742434317 783891069 110428078 299606975 941365453 942540429 267236806 571933201 936843550 977509794 559021002 576038383 915172756 943890531 415851595 890238314 663573087 895786548 539993296 730941595 507983840 925203100 154104053 526159168 166315877 881950267 189019608 888708340 667127440 983003479 796560157 885337514 732757107 936275264 948105808 995221479 459871259 609554561 455417732 765299242 876068964 995952646 936037219 950626159 425304432 779225982 150751778 674494836 778704471 967520848 544733443 631120015 836205428 943952452 6134290 913119538 435653276 871841131 29750967 609381923 263922494 313938134 930218291 970978058 959890731 973820134 97941190 370496284 138481938 964576460 495646077 887172273 695586615 928906637 800592142 858071480 82587236 836059549 816745913 824241517 21181344 515066273 932935383 947004642 396019791 986222433 940087963 950699103 35374187 779636070 599369626 987277057 24428588 449526043 247018040 574136375 2557780 3423553 708995154 984875019 118448826 587060492 131782077 797236111 25828250 231865768 920760638 965097826 388081063 817692369 589618024 624839064 172294280 883729566 950841803 981083712 792909680 971034705 838543451 946531408 75654877 903423727 834276531 937030495 588801041 808599035 40318597 776495585 938988808 967926570 49556689 233292223 584094475 825089618 400543557 692416985 266518949 922620766 77333836 605801682 684100969 774794969 611773696 835436320 886675335 948261782 460746126 926817538 315302773 549656382 86830404 681615366 947323152 989996819 144121614 384871034 49480320 449624791 706372759 816119440 582464848 657643789 766311320 893796207 224698675 263199100 33946744 817206126 29602703 923552478 641492960 777857498 175056407 183501619 212673410 525858490 711127484 788268085 441991484 949958570 288861633 326149164 39930778 989693030 467325341 504620194 446656181 489649678 364338465 552020698 412723401 492548034 728776799 874771315 515037744 719320716 724515846 957057505 179396475 688220234 963146664 964854850 448131769 753202400 62583273 76372396 890874509 961798142 93625362 950204957 810717122 938402342 59209513 455969967 577183395 992409125 948389372 981225939 622655336 648740257 532388149 731730468 735287683 882908095 66792298 158524623 927115446 958403644 499743886 967997842 603806424 969923210 133198455 170179661 955644575 995522463 306093459 574638622 395430018 608909416 998967382 999230941 379709385 516606955 440077940 575624724 347158285 387877545 717907517 840523077 489080872 717918340 890339949 901725671 664762836 889300583 792051897 896511705 986734138 999365477 515783706 739872198 768797712 847938937 274987179 902651559 679845030 768274161 518627125 910063489 17858058 464179209 163511214 511061123 420547707 946788112 99286968 826483815 875835448 946270819 207766787 458972476 744033655 783271008 642376277 844985416 894058334 998026582 829762717 947414226 109524252 866863925 179627908 410330886 610419702 883640864 464365966 902592757 854608866 969182298 110895543 489970275 701342575 946474652 862415831 974757755 733853005 880605516 371967121 724483839 215490331 418098429 936307283 988834981 44318537 86958049 331642060 636612458 428216145 463701049 731258358 888841017 666224579 764955691 114879398 335437423 5808735 176547164 600518412 839370188 889763523 937957299 288665034 693469370 604914056 662311767 703842780 764766032 375834233 791870838 629835166 983710547 517310618 891748613 336530371 392745608 711049249 898711733 880073759 885130278 257985350 258806149 356813178 745612930 332781349 433119657 176963788 622655149 152847587 456718579 264717201 537384596 80720542 968911323 313148011 321619798 766234772 879598769 266024426 943274774 652054168 938435914 742105076 796241587 943472281 997750855 753618506 965276945 410081115 771048167 719439929 921622993 746568817 833135717 251816565 474052689 170695737 943402048 122725743 418166674 617827066 935882570 728028069 992642482 803929529 998773742 415685816 677743865 91078429 470430241 888282523 990347915 418179206 965174859 61430332 398759827 864575059 876951846 341282097 398232516 821338448 894019647 330879262 435280466 24898434 212357067 324497578 922674886 818735135 921348795 900955817 991208781 465572701 710450935 967031658 990286035 675254204 928856487 654699210 941791704 124161002 793251035 959887682 985831963 847959524 924837214 879145437 938695364 191441843 815632395 889436949 961986381 602043398 619320256 313434345 405787147 227314043 847852957 840424742 989265247 982511363 995371803 27009432 611397340 925308474 934134629 836902198 920342654 881555886 991945397 338105341 817604170 466615394 682447457 303126002 999075564 644594887 784016440 482359554 625355231 853420835 886268533 388321504 843169763 679095845 793264525 461244259 830252919 221870198 375674933 770780333 874033521 763263019 937819952 908566143 971323400 967467710 970481060 966964628 972001182 594646362 809271190 627177383 654063552 626097332 925880790 403429694 745897614 267348975 429080711 819919416 982710484 624079033 750741538 868818499 928622743 194413557 382778702 589764592 965890712 394598618 674200534 632455395 765381339 806850553 957045246 687040582 933117845 119333062 874086862 192230513 795533271 622642483 780878622 795509333 880298882 926494357 957713766 685150896 876710376 333899969 498777098 279281390 813382417 101337269 652808308 692093976 968930536 685601531 990929163 561069427 582157472 13722842 32973310 69729737 420400751 200857931 437253675 648223945 697013559 142766065 862652122 862966775 969428687 412636827 518323104 939794970 965769507 219937780 712061736 429914495 738906091 128300889 668862858 295743568 514685393 508664160 540904747 918165020 994244965 486462939 836704289 315143373 794283994 982740586 986755277 464376137 909958843 983542667 996446186 294129467 432726107 434403835 794394114 493473487 943411571 828385343 891147336 463163037 588586544 750700014 822918926 753023206 892684603 604092181 981457700 459041700 594787397 825360576 974468776 546644752 893615290 567219419 942715370 108473759 777865927 447986474 826728680 208027569 640600491 904205831 952824833 662089965 934004142 331193100 992091451 395570701 886074959 764881550 921087220 129586494 768272401 563876865 602791686 646601986 810887541 777345620 909641677 365201117 909836106 638314017 710663643 121352710 445608005 440419288 764912338 279119449 689290417 640880426 679465203 807038155 938129332 483403804 574976548 606696709 956432252 332984914 344431422 172691571 457896302 30520867 669892196 405284427 730355625 263281782 984287512 545570615 943824593 518881197 627065239 625301597 737995724 914534915 997494670 680900199 863760358 669205227 699815885 762769954 801401401 679110963 714080110 510420756 843499650 285478834 402305961 337074875 491293174 752537072 955522304 761754113 982856198 450199438 857112299 936755848 968465366 364239914 397333942 550569041 684254309 634390490 740884745 100923547 707694057 732123753 794146883 929800899 963040292 696767265 929592583 962218708 984279059 819490953 823510660 2430520 144462846 912056082 973995299 491309654 895054312 487767622 703325615 576308653 612297783 419242675 686469127 365564201 525669638 241341972 516111137 349399680 806902683 666176116 795311634 465742316 612027513 474691861 807004710 947736378 995407572 818219694 995501473 353061173 941862425 830402781 963494900 115614912 871690812 611670626 700021381 581091615 879797881 998465256 999297565 473231422 613835827 777784141 873295992 583078325 995816256 20838367 323206361 630496083 907122787 862511753 867138475 527229208 714428728 191818933 886734778 795671886 840687480 447260943 467640110 602150328 925126397 787728793 893333948 531314585 859608858 620336134 800377811 187796955 281350913 801428830 816773953 504011547 920814589 177609353 668798734 154881989 659128378 241250244 911885294 24819821 630891764 32596749 481756514 81904623 935419393 548995812 946343423 988703632 996506192 304168096 884611750 143881760 421130709 400583067 615956315 105516821 471516793 463498347 753070410 437780813 600060652 200653416 836469114 622346887 949076745 672196782 896476327 550980809 687796435 297919508 312667061 184541473 870251213 838060268 869722772 60973106 504771273 674532033 935706650 473713433 614900687 250876526 536315423 703025983 822483145 811480147 984311475 871313622 916010415 522674351 858260129 940060270 977928901 918294836 923437738 601622757 737072397 904999663 964290415 269142882 781006412 802882398 806390387 947082578 978722001 243015907 358076473 123905724 657816591 717022268 978922589 786729696 829615397 661307944 867579559 317798582 920896917 496381488 736831987 566001009 687828760 290046913 729608131 917964891 945049504 426009781 869455369 535902585 890231539 670555348 689922196 372571286 984295690 971245587 998938737 525961350 646951026 329484059 955532609 862207914 967206043 793882603 881798151 337767902 683903824 783647156 914437510 428542825 969739500 88316195 124640226 126301826 201578555 549735496 793745353 524861915 628560794 751246026 810401406 768297517 871555228 508876440 559120257 731212827 866305169 902327473 967102763 410179438 579171402 886994580 962175515 676243753 690561340 110559501 450742758 343261678 517809109 284872852 575073791 793623638 959693687 719484720 958485161 589339448 897903126 360861014 934622454 722397956 957720499 503808553 685269932 60249114 937988105 218558342 784907568 12471950 761907815 697537717 777181143 62405381 613810275 686658957 800222439 791314098 936695217 385819615 526691336 963991261 967018469 848391676 970021175 381297072 809673845 721243607 828668611 640250061 873860539 340738905 608663336 687766145 696753633 177071532 422059638 123683358 933293857 356325403 897198291 614650741 997743282 50196246 331862335 292278975 450134279 226844643 791007012 392336618 635067071 203829121 212152908 900043753 901112146 141414035 278629652 702321438 782293690 170380841 273828998 698781241 800740357 893397207 908675711 428052266 914120728 300890282 407808329 59238341 831131213 978118558 984773320 611887742 932511883 871981326 991612785 83233235 681507623 734467974 944308452 810500410 855372135 602885222 616680937 444274047 946513871 185002410 578535320 118331032 356124201 807251015 939577993 18295551 350796773 928951770 988178583 449307148 758920740 202743547 756533502 695678463 841597173 507211951 513475832 404462462 653653573 153509488 691784055 933560750 940210405 380074937 418139886 337284718 897250871 904300837 913891890 306391075 785381832 892552687 923004305 891457710 950766529 759673153 966706130 412720868 573301395 106154353 767256823 573752991 756134608 375645884 926181490 114647580 655911822 720433059 906670750 409028278 743441035 674999488 676632550 610224734 935586376 503430607 759859219 66845924 172459171 139777904 382432482 301300086 306273732 581647028 613547749 491166260 691815778 745413636 982897354 944793068 966043680 805578514 899914740 794543798 830617883 787920485 854358010 259387857 782136015 491776239 497112930 370901167 613904316 52405722 87704970 4931078 24131611 161312926 535322895 963744908 969246592 199146255 206465299 274111902 594067773 801280882 989874294 978632836 999166505 310829948 512226797 670101396 905237539 848766690 983911867 149079168 418270604 560341313 924599732 850829328 969631096 336805242 733135265 229308653 522657414 53772436 726055605 165437435 827106506 570570764 685850603 782947708 806583952 106022234 677209831 672405005 795903244 873447730 875365623 211148670 491469900 183632733 633076124 671786971 681353418 162180593 648084592 873428104 930458154 570407695 616970189 513438295 622874093 853864126 856745762 113409157 685823150 630592025 926475056 492124315 798666755 974409410 981126792 606566082 840003148 26186220 47389087 497113211 544265320 644190031 948419063 155767660 985945507 298974733 885178060 391867652 576166302 319212478 442733951 60395314 454937647 957349409 982688121 547116741 790148563 931112500 940974305 310685061 585157654 310129130 909335235 934259684 997390989 957441035 989637165 122430432 736938285 498319155 971264246 168335784 890314706 246159116 972235539 901177512 971386441 368887514 715316029 807999749 889308536 55724197 121321060 844348424 905921527 816974964 884355082 818556996 915875833 713956601 801007481 902120521 913590176 704359650 953102486 67792472 219063526 232973532 805806517 715871344 890479785 863495515 898419552 606753206 647337157 552003229 695204196 685385522 966761870 406228160 979744040 877990519 895424787 889744777 998704485 949823804 966723977 715819834 817460448 693994835 907773870 439071648 957916616 101052649 801013454 77601558 708255904 477800893 976892143 118353293 369522376 867568686 878472211 882172039 923167309 811669696 963177633 549464805 899822967 476132927 810996782 522177968 627057462 456544828 930220464 521225223 891684409 489849454 742630797 920873913 931981040 9683966 37294482 615393008 900096294 943320918 953963915 596801027 618002841 855890974 876864734 587986213 826571785 874724332 961270376 814097391 964916025 74740968 276442816 802115373 942084405 388115910 997391341 345098138 825537093 607962361 690617495 239119183 625241106 524774579 952223831 332510008 679475373 259227290 308775390 547135578 692905957 29714769 304741583 562577861 843218542 162907613 273024060 311014268 724839478 722959807 998835283 422645531 931688445 65338132 294337377 356250242 642683174 663684669 981931749 299035511 910635441 364966825 982219637 502609428 583596323 835640561 976139580 522853770 640288413 143441594 642057526 850449900 970474822 521738876 658461130 139969236 193411499 190819349 263531730 496942427 867330700 809639578 939459962 623556830 969562281 1880312 481235757 2148895 183850044 721240815 981891068 256746300 984539884 885706718 998172725 820593148 856579866 553935548 773772067 328951710 761919154 345427256 479932767 964378190 989381659 226758813 683261876 976506232 994948338 672795123 974607188 181368242 593502024 161697504 244558102 476197907 710839830 746951529 892593392 710577593 911721029 432829648 434860153 167283477 185871459 548246356 631059784 726064509 832088675 527675449 786138139 98499424 701428368 803037238 828450470 935904871 989096014 847694404 957616651 963406448 976022195 246152799 960745146 329595104 501642686 586450325 943860947 322642864 539718931 117345637 742565184 132774010 359014374 106164960 879192584 797016227 996044544 326909505 629016467 800019991 824989672 553761899 698181535 258214030 325742888 870881171 999638704 296227950 584324122 638844927 892903566 989447174 999830425 599175810 712541876 587854299 826136952 126157267 841648020 822532232 961129382 568789603 582257278 378157988 599228302 381223421 637477126 64413738 675009820 236336681 619874531 451743145 767317263 204898105 537129719 833757684 905193217 579799829 813511563 444893661 968595071 636189495 839591477 707524222 965481200 471010714 554047778 595722617 936839810 426107439 705992932 693772589 934567695 15603120 438229814 224060131 595013408 520929322 633834927 546037666 648606424 152046542 563476053 888058671 920025822 193658763 360853578 471285642 629059066 397589310 470223406 266262018 683998478 316521416 569989296 317812047 708910755 657218518 912392980 576886560 863863607 306072907 513689322 442750077 787595732 603139136 731638880 642776636 978388173 407343508 651881530 905039777 921579845 740538442 868871136 781232583 915112521 979421367 983605346 160917053 662623012 217452512 289324683 402760671 487556171 248281252 472551378 566969809 673178189 485128826 744570264 270740060 484224393 111654750 976340823 516931578 555261759 466107069 665688308 874231809 938654013 12335545 921105670 443684141 843651723 496441431 638872784 946639508 970363468 834016095 937839581 787245296 975154954 801175576 880487851 420813397 779759005 757909660 898981607 392720762 504767259 650960564 832392688 154748425 687359838 593058164 693154013 853409220 971219195 811429427 875158540 670897073 927661044 691831682 759717758 727692177 913572723 638283347 923884379 216662247 434348614 201222699 926486901 908038031 937117415 503253657 616034383 492483559 999594411 950849383 951055248 2427972 512859100 614282916 839159788 667432439 867880921 638160653 901213224 248468351 789479912 765001895 944529631 4425646 172232693 252656981 830286005 360574029 940367003 187804721 863765648 846547926 976667573 215330794 989032177 182081609 584728321 25687888 505240611 246312443 295214440 958377664 997737343 652933439 975242896 457967890 603401325 896759180 943643627 214696543 343129825 153793647 431248360 616426066 624028221 439657239 904745239 194827624 349745367 946423846 999434815 937829198 989005939 742943888 865626648 146980860 558880160 769459829 907562677 628949432 796545325 611137758 837734895 490214147 706219773 663119147 874204929 64581737 790658701 155333936 711314802 91428362 755022204 666361358 925226255 537749600 918286870 316009872 442285413 91913231 418842411 617128942 833445257 37834295 871691367 642135136 917864236 864187555 865267522 264777159 998298056 238445394 451049969 45876298 974681430 457015655 784700728 947009821 976341255 653192300 927788551 463702748 617708626 597356852 665948303 862992063 962836600 184871478 211286289 121825700 308553133 612490 35767059 112443772 842569364 697612271 813266058 696841748 826426313 913213927 950118272 186698021 298875787 896497828 958814762 320887489 837238670 561038604 757438852 178057792 845057000 566811778 573461590 546627328 690521895 799985094 945473991 183547131 433138315 109408819 818608854 254386345 352490014 164784664 930360097 573672580 967291234 537582109 760008724 346460815 889247460 626182831 959281886 517275281 947534505 467427188 867603319 448571966 529852465 8419908 951819874 13704827 874359712 122499696 494040142 1815839 653815391 800584324 940665601 995755821 997698942 957826228 989477386 347611708 629327910 477349488 552765970 901329746 993457122 903175554 957111580 148627650 175912290 74341639 272797863 129356141 777946931 472890272 607044349 512104501 646607309 285488779 434281329 742119576 885247003 983001076 994185817 797550632 803919176 259199787 819347488 361788228 410878148 375328938 923680396 668199042 691466146 580097954 913029316 514778829 828568543 251374626 449265940 615344776 847869791 386396578 619570036 719178846 986307957 881624290 885924738 408996062 964280966 239910319 524187729 327394593 698565080 121910470 376092344 777547890 808984728 234695932 771802091 736180911 858932024 150771734 914291878 404760909 614073692 291769585 296479491 423073426 834500768 76904747 248531718 224560173 713928328 319451251 822216945 685240162 872354428 507369037 830836540 395138572 813922109 32158384 125562579 404284845 822162310 989685203 992844865 520468685 555759818 620233874 943791812 449169660 464826225 695688667 823203458 943544191 991635521 681013980 954929081 85357700 117479511 413034926 574300857 764089539 880863214 488347142 490819273 487707237 750415059 215119206 335450352 556018034 843213815 827116673 836741444 416267648 968164181 235818093 885807349 698656827 758667846 163037176 791349618 440967360 782741022 480377416 567809456 948330161 956973223 115053209 364267201 297004057 529413483 396662711 570067785 413713100 575829425 33396364 278619437 232071153 788842821 805744836 911212109 50543866 175006137 649392094 861170047 639877341 942595569 481506690 488439294 184596790 953067504 86195945 934449905 829453489 886601241 996948190 997579441 8761423 644304944 363996679 666534706 146732883 399891818 225779338 482912447 431092809 613070636 603834854 746669965 853012929 898207647 577184325 882196436 586268039 832347995 983320449 995289747 855954160 880431290 134680337 827457029 39766598 732599760 314955435 982086276 538721749 751334088 765632019 981450530 869024923 940418452 778161474 908308525 675390068 814692813 316129553 931498255 103044936 675637276 229278877 701083535 349275951 713897434 336778502 994146368 440131123 619904168 28869445 482277127 698212936 992542447 168695392 525180550 453096789 617026278 28603143 314184735 816932388 881165341 513555273 553567004 198799554 719848599 260085093 630125845 533236000 781773210 761552997 956655016 967769016 997377423 664239966 715542043 935344071 985504936 107388843 174736196 191198748 685487396 117590099 966151105 657200406 766250509 591802043 594208482 736664251 872426463 627951364 897062238 136034154 427567778 621613551 913755660 372422251 819352561 795495624 929342598 615636651 661633450 505719627 905201667 585123204 704291439 798824682 997409020 990230841 999953767 544281965 626176683 249508554 775757339 661908990 968117741 307032930 463574336 628097692 745280999 87587962 159067781 2605942 82737723 942514643 961046197 930628895 956499088 859328423 980791879 543854188 664801585 102088962 823017214 695910604 948525807 565714706 832049070 135484517 156485404 826640017 995252360 597280444 708262574 795053882 824284300 379890204 448718873 858364861 999587646 129528817 295438266 578494758 936019524 555677006 609065431 368719495 803770876 579172533 923410551 237957540 603112926 903560720 925683413 235090084 334317421 384980692 390857443 441193115 573765139 249067538 787161932 902722995 944399094 103124031 331108604 344573018 654843393 109299033 986264540 98047520 950720023 642677697 734403502 864201952 900341775 949038967 997178958 832532898 990914290 562522891 643721229 692777358 956071823 773499734 866588384 953803138 992049413 105712835 896350987 404299234 647043657 279947474 399992548 848696267 987467113 70369312 282060159 84314544 132398480 27172458 784941897 917263759 979626913 620657468 649360322 220694423 702385312 369557300 917341802 991843460 992762662 554894337 709137005 698109974 717606639 133456911 138043666 499378960 771254658 477160219 742328575 745339460 983881214 233922989 656360705 805216273 885967035 574563301 947689647 193253920 875476598 642325325 919898947 506877697 522814903 139065342 657203497 519382090 698295902 816792000 932811345 626510841 883235932 1765970 730376225 40956008 953497862 564277979 713698379 299753121 549449739 118394320 158944881 295296849 978422749 777454423 960453461 816549531 869357887 390631568 630609922 525083910 539522371 604744421 611199130 453684276 481882694 734750587 747566380 341592328 405636890 278127974 661508821 515884714 551332193 396991132 504062882 133114474 493078414 443081465 517804582 83152750 576853935 214755428 261829479 553788391 954868590 533858970 713091042 156924159 246628995 377352532 610191073 850495365 855047670 984474209 994631843 343856264 376010749 262445753 965253628 484149520 688585154 788072809 961030002 424676475 710685915 51237951 213700421 925798007 961753516 602871461 937431523 575999533 607383794 223018724 323851421 805689937 811223252 213648025 651389977 3968023 792974092 407772501 458276562 667650219 690332460 848683842 874781991 262220404 551781302 317711998 334824938 244644588 285037947 579746127 815984353 646026466 980618919 46040745 151685982 206961920 703779581 41284815 288318324 668224648 976625250 244801751 535088245 791388764 835227981 933061615 987460505 700145334 978743552 833837015 974208789 776345755 777139276 126597094 270834426 545831109 650629486 694507249 785711533 915382079 971895420 29834699 460802599 373796435 990318343 27765563 619917592 383987700 669695793 505053377 739258286 709581071 987689547 21607310 220717927 765165254 956532037 266915138 350967706 912880843 992296714 657660960 871999353 884173337 990531792 171645020 407726626 360894004 935999162 754288735 854916201 15377078 91520366 184659694 702721092 343277437 832359506 383131366 494455946 222364561 990517359 567439693 998381570 998650745 998917775 254514488 606167407 859550412 975519268 320114723 802935440 579714224 603719638 465789447 940869398 151939878 985484908 689883625 984974289 216887575 345343757 24118368 809822214 869217887 879479317 638274922 752376934 200434855 439080863 153196319 962553296 989110893 998861512 570456384 793278093 820309479 843256103 19256608 814527434 94842967 559944481 193291890 344730864 727064129 827153127 381891465 915471247 969103156 973078049 782827644 889258656 164187340 433082166 965859346 999236768 367075890 596503578 318075471 444363971 339375459 683625875 827661611 885979646 412173627 703417511 875297222 904171395 46002786 218319910 675075938 715685544 956330951 971611904 19107277 390858656 962137364 984117191 925091060 979059015 220067597 614866510 974156726 988035544 810404123 815923879 180401224 492441218 303516620 486450686 539408815 917041365 551708124 711767582 938560071 973979954 268629434 873962035 432864195 437574655 688448559 828184681 70357009 393707800 785778892 961710768 44030962 390554062 357126310 525057383 438096631 592823182 873891964 983030395 338727068 833202147 652348730 701075942 233278172 859587983 760709034 935917420 720516900 906138022 732227494 991133885 848004349 910600441 204429619 486685026 159154336 257448675 552521416 706425048 553297412 666650770 343002067 873879031 23350363 107572284 148441390 236045511 202576201 684092207 914339343 935201579 548212597 858720106 781941712 958563823 836543001 989623240 435322833 977533927 270358057 841348130 341043191 965588268 528501499 835443823 49933805 294412932 725908772 783668145 144463861 235348479 135414560 366238974 992819188 993243891 578349428 787297590 728423844 812837833 466552863 572734351 615383015 874476251 919152343 963939086 699006246 890939561 226101134 989255479 299594030 675637186 135445546 945609608 202320491 748024838 633239984 708318684 406686378 731628273 101652617 536559522 263413683 364416625 726029038 917131928 771178198 831242360 496811722 955531388 688022309 798314671 879831083 910229368 873127424 883146221 335399744 561061374 863687343 927409257 898050220 995099386 572030122 845999405 625258370 769918978 369394744 410377955 78713993 233230200 175242740 634193593 382353045 455361215 331180051 706603587 533835872 905891820 324761172 610138481 95995434 852649795 118288973 843523373 324736045 603334705 281539730 952017832 993585064 993789519 161331843 985354886 4445331 4711819 624555023 923989995 407580611 473513744 433327413 560566535 709532981 951144602 930326865 981518344 914618189 925212739 77176959 803097045 669528643 863918805 316571895 671095993 254448602 796716472 201008411 513896339 463002609 577955250 657962260 860639418 234231284 835249346 471636175 645776256 43424432 686904967 978674887 985621400 206450275 289606437 56026750 384435398 763251088 905198167 687631539 984096089 707440001 796252519 920144534 932531284 168952873 544330990 431183889 787834629 225363359 935593022 480975146 994320313 509624786 798776558 13282952 551082231 518544355 743820707 858060666 879641938 831103565 889452257 218503618 375454438 387882010 649594434 11940279 484791566 365006885 725281536 729658666 828015096 585254533 606909966 853397059 868314888 49978163 346539239 556585815 864026686 52494198 744049060 716114737 759353734 642854910 876909316 334120597 856942585 708568584 722854800 422397901 602900636 807374827 863301872 761290801 799895353 847886481 850764459 901855383 930848419 889111877 941422610 178302626 798115975 878565269 930893277 961256773 967359479 758489408 938853141 577946642 696157227 140602404 480086356 950282747 979170224 748821204 782890278 317950533 338804340 293015251 465806476 510492503 623013499 230080738 988014024 358673824 462615543 81445666 836131867 509724985 647940912 527540310 935492486 866536667 951980590 172361799 764875373 595117100 704009019 358792498 901915991 561137339 702585139 979519959 983056722 65945975 677615167 351889293 521201295 161959740 949019562 650769733 676425632 504102303 981881564 230192095 582292833 635759727 871507238 817650257 990216964 86150065 738041392 3267324 415721110 698160674 850305338 402138918 449562489 899942865 906932687 73855241 519408596 680871516 709300889 284716561 457537596 921500896 964473633 44567642 646892795 172699778 747687975 339401823 398273651 951588992 999919483 913762669 947131750 230238782 449528181 394430385 657133979 980773179 983289982 264360620 985124342 12142919 865132208 875326577 918833518 729887682 891139270 515287005 653928350 364146692 798679814 968969952 985294285 719105006 937498265 639325383 880062365 253740095 992185641 79559726 817250243 100423781 436424449 88370229 657253536 745334459 927550970 540363494 628227231 664933363 851703706 551562404 716689604 801859341 875506965 462851979 482950806 784051530 859923787 228123262 294441931 563375974 630510655 926194047 954045157 544893000 781074320 306493893 565255586 904002761 993522484 745661919 949879993 560350291 605584964 785706245 959787929 922252232 955522793 978998755 985829819 775527632 971749586 476030132 532556318 304525310 381069053 552127905 818994084 871165689 931849362 987045194 990506321 756960916 850606344 537392736 777258003 874473803 945813218 231757965 556814627 348261696 414261139 753288592 840129921 327459572 331370034 207925633 971551508 397485235 697336790 730546903 781328044 748239092 895244309 845376793 943812243 437096659 875163407 226628204 586301902 861449008 953610748 427472298 877282237 848833752 850969572 274743330 310520265 838731639 866110336 332000629 587686864 753460463 979500561 980794153 992436851 875491119 922783503 669929904 882736170 300917040 310591153 101169896 705508145 826798893 864160775 826146294 891979307 940980917 945849581 243044665 867080747 588880688 703464937 856923002 908051024 985150716 999687607 1989884 201328498 169203929 552076984 708627779 971529607 601967642 726031379 170911510 793304676 446997190 846605375 9613663 936555761 685812774 900589072 781869003 966353221 31447170 808304368 433883300 894791075 278753964 493833158 817590345 929616367 485412080 985741639 123030025 919504990 510546365 877373054 622348254 915721475 38673090 545134631 909183432 940952452 756085955 992374788 661746660 729492728 269797941 479118066 168968739 670856995 889616199 918165054 93003006 727125323 153309997 891225356 347086182 415969035 970217162 975348131 168443401 617353664 388541055 553909102 504902688 781193638 659936563 935338200 953238082 957517104 802316064 870049267 485418842 680253528 809082681 820529899 774138903 813448848 131730744 162037375 350660622 769858547 113392768 394697221 418562078 755835484 289731637 293417604 72619153 508425987 34950128 245321839 887457922 913350750 483080320 597282715 868809814 892357409 755036516 822884544 937813730 995001614 330662488 659425164 743101060 899590631 616176023 977437957 758535516 759544605 722871185 867880914 539831407 578825948 859160966 959562334 588843454 779533563 278217045 501173402 465411737 969907844 261453518 906947899 73627132 481478865 501062310 850396676 238984700 423283699 385802081 751052780 794108023 907687268 807517975 943956385 39644600 875862215 763963174 896732537 53860731 73929931 719483476 773785826 259477219 710258775 328088018 712050671 393358254 796130998 250803947 509529203 542860462 656162134 793194775 935251529 927845880 988801785 651389221 790446722 85275888 292925862 34341554 688893758 727459086 882185523 747162353 859075778 194087816 958533441 496486926 642220401 635875654 807678108 477891806 953653688 629088720 812376590 502210992 830549014 719676986 983613020 455813665 836531744 181218940 392100168 417181464 726655997 668868187 692609207 532941009 697184603 214260621 858824493 686913670 761920003 998058768 999009538 528928675 640484083 166332336 464223199 118448954 762183462 301210004 458834792 509991436 949575204 705936044 753989771 271438712 823051791 582568450 909876434 198692492 614587408 446574249 467638223 512606328 935132705 825416603 908640644 986176408 997593359 633401348 910649592 866990195 973091853 567083905 846233215 483842482 958981973 239802188 886741952 195875066 252869949 195753233 713704339 319097392 953209078 131161047 589060109 908252334 937220479 819571361 993949067 801153592 890129180 189073278 862126230 837267293 946104993 980224279 987838643 443201475 857855209 560717783 918304062 463108177 783412253 789913509 813143645 634809238 869601159 606125351 784802789 364064361 607152611 265867146 677148785 973672072 980213812 950256488 989608756 645483934 899392113 270511833 521652044 577584383 702365119 817594690 960084053 439697456 819671625 276778963 949470245 787744793 836749354 436126542 762113917 813529072 948726627 279332684 517598249 252512608 495350924 978449600 979521734 149658123 264204919 589523052 917180539 831089779 922243492 648314431 910964979 608207854 631773883 31404790 629952261 964750195 992713931 513921717 525870359 212249878 259330355 335191020 555011487 761898771 967072062 782073452 863641688 978779064 985363665 99226994 565513024 639849941 671157583 510251069 569528163 889444174 980448278 762660688 812658752 629959841 730651502 316009814 956751652 321499901 691796866 1714916 349153581 81794279 384735569 449106659 633810687 747518903 785069896 944557555 959881298 274919422 293520640 619690600 821456091 731016220 805433201 279719596 536232245 606669277 679771068 305438712 888223241 870756526 944364978 201259388 515255852 737327333 853258738 736797967 849473288 992877364 994270532 10503791 286975132 293221964 856315955 240196462 454067786 25928548 519281517 227986183 990657252 720372080 747621344 139183190 381480673 184768503 198524749 524659821 665630652 1456452 986125629 223895184 234390753 300534323 484278328 974375165 994527655 388124655 803137428 456313199 688868067 377220751 482080125 614258378 929634415 451030092 835479078 332961241 666608727 104472289 435707456 952297524 994063319 564654294 965826502 885855945 982930887 161379669 199927336 886845262 976738308 766431725 961652236 747138496 833955392 105180287 217663613 143541678 642723217 183593270 240915953 303619103 404000792 738831111 791454326 798299147 876901227 373210773 903596742 938523814 992890917 988382984 991826648 251266363 579438767 270353914 792360858 355027568 442707425 909120041 984012580 466873209 920820797 371884017 921989957 956664704 990152706 228974474 488136676 880224106 955476097 184514810 620231910 47922315 598780683 998067403 999577604 58337515 859237594 573014180 634944506 874071965 896224229 498934206 720248837 455781758 847118714 243712252 428571529 875074870 941250426 632307580 674963572 690846968 901542329 192922105 967799505 552706126 899388684 85750868 651517382 856047740 942446411 114117263 978864539 994096758 997406680 292170877 510769859 962631479 977471182 296530080 802924713 262052012 416075737 794776682 825314670 472342785 720677395 918274073 996388721 767087350 857909647 619112494 683374984 265101683 495472896 629342247 746551811 33122561 806726216 904461569 942634336 418942485 476881964 574942832 616183274 599755943 873690680 679580517 748352577 524404593 794467326 323867062 707451312 575420107 809636592 653006667 664282472 561222439 928145427 687702414 922686664 374312906 908722213 500337823 764419045 294191304 791131888 871510776 962922780 503033938 591322109 217477537 830289816 620952564 788692400 696877159 878339468 349361436 488932978 809016033 825861293 537451437 601622507 28872619 693083182 547577120 641498469 875404887 900704778 749632012 889916823 413246275 436927724 867613335 971414990 95520454 607754837 143711908 745783076 776390316 924194599 102065521 756071148 967089796 973384747 913545638 997459948 620284052 688735125 775402163 811225343 971891526 981078842 751725129 990650265 289375554 906641129 994978634 998374222 881594005 920406396 526014847 879802304 519387984 975243031 466161697 928415111 100481152 402956673 49536310 271317412 693649685 785638893 797870489 988222096 60631951 136985184 478161756 561955272 891868657 943247483 509219795 811751109 282062156 636811973 893788646 948346439 253558560 753063430 61870856 661869387 379584579 504554643 412040209 686524627 115886918 689944182 816817254 854045184 535595373 555353307 71880445 511262295 706091594 798779664 393038206 991131384 670827782 939695320 317038486 956754831 369621040 408174629 700777334 835241139 21811758 593019399 210669646 294079797 413850326 760132828 311835804 909898404 646107684 859534979 765311939 942950232 258675611 618524304 470392015 519423343 498415366 784972485 56578668 499312928 623685656 708170211 475182302 500043512 584817881 826155035 42644256 684740149 479634198 606052530 33981212 582318081 258936377 615067948 526911213 620869643 699814929 978025481 497892399 880427849 737227614 942744454 128459679 829037727 811918564 812440625 325045482 657155367 212739596 458315836 609690233 827539062 236697352 720130221 685552670 696964942 227873218 323238874 104992726 602446302 744414263 816344561 702770384 929255336 688656953 779088330 472769378 689946392 789049567 923354794 596963886 809974087 863296052 898562213 766442954 796547432 198610235 950221910 125012583 229059610 255344176 609522572 502067417 933266103 983153737 989523410 458255794 828585350 899385469 917538851 69080706 995810753 847241107 891569219 889024431 982471133 206092746 936725397 901540911 965220891 399123799 602744150 348419527 596470198 397612086 863282640 848918329 878200227 112307900 220547373 17378894 257872761 657157495 779660442 45785782 728953215 263114044 478198749 780491271 808417450 29218449 332937885 236336901 855074401 476870837 874853366 736053558 902960184 436970380 636591677 508583475 702843651 822884860 997839865 318698117 936660220 509335770 898600047 595856098 655448184 427476207 791401677 986088184 993037340 607177457 772894790 997604038 999936606 305967744 878971310 359146698 618345413 523218902 862186567 811186608 982468858 176155541 922750542 570994117 661686552 111324036 577015886 773702943 869463977 876016899 878778506 263931081 774157394 647655123 975588455 674355833 960741291 191805032 655440666 208751990 592352099 135267839 342555026 724400979 894864634 79568249 733637815 665262437 897365819 210199670 493007713 53518956 820880540 999723651 999927136 803395954 961066279 64917497 859129185 697326233 869556002 390177956 520436885 205301339 984850211 72735414 486414360 287162151 768320284 894249664 969943542 154496535 550037486 607517281 928637524 917207385 931204020 783341083 878579280 763222569 878721244 556887687 946181214 265520775 997407717 547658861 924848290 9272033 889577339 116066963 595515224 125680425 962403252 608886003 923884610 470498127 783476612 11632747 406619601 282359941 792769147 877986082 982470504 806805322 892288161 251313205 898840996 259158533 716030419 588734119 760072115 491523553 815131350 513527027 720636430 717219455 940596508 560044499 886574220 835086809 975197540 13272061 766720886 52767676 549244669 581564680 611120477 513881391 774270031 784611567 878422984 8767962 748601890 694560092 936531949 72412357 669299515 705656303 765118799 678958499 891567030 435749486 521209876 355924294 870039661 369101321 993454712 824526914 958991221 174685472 959548377 97047342 919904397 363252628 852819651 357780037 893892138 23075769 965128168 872466299 935467685 251293378 420908107 257871129 321670962 938591759 979580788 481448631 822445169 748801989 910290003 716197735 998591284 243360111 516168501 273184990 666000912 799862515 948959834 577033329 833251882 592865648 837898754 298897024 890907206 504682945 802373717 901402639 952425429 93629243 157501797 202534328 957425547 967592514 983899262 820027535 961713288 586663434 741631613 993909433 996334443 888108440 901322759 703034202 821961235 855492244 964895136 939781897 968821240 329579205 641396154 195642695 529703361 947872712 998023051 690987806 768790037 908050306 952299199 863853848 864642259 454814108 598706862 345222532 851962117 70659278 358032086 396443769 688794429 248289301 264726355 303282735 602017732 399534518 503719720 776515673 814160740 412607974 510698164 873468153 879551901 389190598 979147892 905435278 906936871 864702362 928135940 172874669 381749974 659030916 726519017 219769909 728961141 698928129 784186252 535760820 836681025 597129108 661034804 269119054 860810315 765694832 918044950 214618364 591958728 326556242 691012281 608430372 849259421 615421701 818786436 160781365 387421196 98489486 758182536 326030814 851204214 75748967 837113121 460090769 723294987 807853492 943414808 760584198 940966748 415279104 924001776 794492289 955610163 57229916 496137216 848635872 953487027 249463577 602742382 414230066 449537186 938068018 956183008 638225454 757574853 177312746 738201104 266538853 392821594 728781525 953300632 996237349 999357203 903365878 938889184 474279134 829373879 850678566 955122538 413149731 823529063 647032342 852626316 323623969 471920946 482043195 576710822 262529996 898477758 105416565 121203995 660029847 960367724 588650085 882709326 458187779 810978354 199773206 949457643 498422619 658780416 214976301 603367055 490887382 739428104 652734748 956469225 262371986 991456280 506252597 664826166 730409666 956603562 748424139 808103040 956594105 986251852 751783252 835973041 955809452 972344167 422411237 553263272 961556944 998471596 302355560 523596244 552134354 816947737 682823369 696751394 408040890 839633557 880240826 899657634 424127508 505694266 864751520 989329835 286625170 818559998 722973037 801714329 325764987 766443116 192160081 433307500 800587711 820614298 937920173 962874441 603005544 807400537 379647566 477420458 857437778 988099618 878287985 911540410 290265106 704597995 488818466 554695713 730024952 832403680 892283370 972637689 867478483 904457316 867171982 888386488 403479047 717422774 330419019 440102876 269718243 698201083 22914433 682674101 754368463 810609874 177327183 593612883 975534294 979041466 74660482 701409618 967838671 982777967 493079238 793257649 785720965 791223021 234023569 967262983 462089387 867301389 586229104 901251587 361575661 406733180 228031941 325668679 963779453 995996267 638133146 748142524 403953008 483404072 312864352 656176046 349301230 378891573 819379119 977367190 195858737 634218408 391097517 880381202 656247994 756800706 379705766 545744376 866528151 923938581 803739253 818804678 404007684 444263737 604365832 643231085 312896341 959187097 436493997 882871142 532690045 711019350 532730629 939965513 643794999 901259579 543538075 571710719 35986558 854500317 2887181 567732204 227057983 831908962 807195467 954454660 367495862 470516224 9696913 612141693 230662692 715953184 599553893 912563373 590520959 937305129 851638629 960472899 890505266 931788517 116492980 728413442 678453085 789154822 734295043 914097815 141713485 844214881 37616337 776262716 995877056 997315827 9115762 42267203 773964 106950439 715572934 908987345 706662030 933066689 993114495 994136228 791380181 896190051 608618049 776445519 814271177 892458113 651225162 691331497 648036650 848664016 663381785 909759505 385483844 654782044 915850311 966381022 119574215 799133872 609440134 726865035 982188268 986197516 721865858 837389366 96203525 172577490 859750794 950228093 690908870 841490959 114676067 859663413 427650695 622899585 769087479 893085739 880139475 970572678 461394638 747029202 723045994 924004622 671297604 780955346 182710758 412414035 557722999 740018237 197401461 470435498 845364659 979693138 721566229 771880408 580975230 913294069 570419349 581414717 81831040 769043605 145470851 904082960 92756990 603282470 545754036 869628219 224000747 332226866 638228555 832908368 920293544 931915035 867468676 873633462 563703249 755274761 974951786 984482718 19206988 370274872 489022538 724266398 343306770 365427811 848429575 901862204 180411477 230586129 973731075 989887996 926673419 964654065 664597729 926626290 744225752 892483062 726220507 757860546 475440899 730394540 916022487 986897299 732341137 818588563 107728876 239001435 817666898 821851009 315289471 745801686 68537662 790683028 792645621 996677622 976545842 985934062 690515704 816777467 332772236 458133596 995616567 996231622 616581815 756087942 385793876 975757215 756617287 930250215 130901770 769155871 190771496 320384856 324130933 583445318 245127756 679246516 949163211 954552890 509449734 572090946 666643213 762197641 467730337 914575017 571153489 655130371 279198932 874962365 935355521 954356407 25844946 609308743 536343718 860887517 787891751 888398670 586201439 805978555 260689483 640195071 15375627 120500462 281689417 623026663 356022100 790416439 350101422 674469084 591637341 629416735 511201000 529857316 694296365 793305837 256424296 699289725 653429415 935428642 226005861 482364971 90400111 916662500 466008081 540880444 214719896 711502883 392380303 446032568 611013909 678184978 858751677 871254007 658354075 815713747 795554985 861536769 242685608 509504436 52411064 836422100 25135069 503430585 756058168 792644640 312813389 349080290 783862210 956975641 351362814 930420269 616039539 879657425 895114839 975898473 635513056 961007378 230157301 524087906 236660057 909854948 76504270 182202486 470784707 481566791 891648040 996150230 922268633 993284814 542001033 722306236 599472377 805580847 790627247 956662855 993525646 994008680 188978568 837460950 574072534 701921953 135514110 323868245 898349321 964753936 220561218 539411383 537735601 539816602 251956023 996095976 525709832 850906091 803085284 940481645 269818188 453627141 751337713 838717477 514297763 856093710 541406273 839934550 239035607 944101159 959367780 978861100 126615563 692270278 227029404 857605071 935229011 954826379 527804959 575398540 940223616 963477950 933907315 952082970 901214747 907400822 388221182 403845912 642595988 992147796 13747946 374587575 562355541 873829302 22775171 580858649 466038414 602088956 959398001 987834791 248098668 261400526 514354309 822511119 517045917 623801725 286901424 855390766 370856403 648259993 70566250 983684052 753014967 780196524 623009974 833263887 379730850 625110458 797340306 924390211 48473862 255263414 931639299 936160733 987647495 989846918 395401696 817476238 998974304 999842319 490886815 764406906 177730436 494778562 870021609 996440912 741169046 967089326 515911289 612235230 966000010 984406332 947248163 955441782 83584607 406835719 533757419 855391435 970791283 975132276 88359279 792974408 626111182 654230139 237741099 736217010 248635555 791266280 691675487 864556794 239327457 476959448 707749436 825922050 679047558 781018802 777423087 940621822 630505629 675892283 955240973 957692176 414976159 537835026 307775779 850127492 842797618 860271868 475401503 956439261 671855523 676418654 300297242 731444630 19951486 647011376 500385675 873889156 508735231 693173298 706511713 993040066 24501942 274898766 989059935 993765501 309188374 345639094 944842498 980774758 710011386 912219795 834765516 863497224 670575132 993855246 6547448 517079131 479325646 806324107 539314628 743048524 861344043 907889102 239570650 449501282 629247938 972771595 903871147 939427362 255983908 896907251 556510111 850240924 511276752 943037205 995303361 999925380 786375857 918233104 547608150 913203404 664649200 705937066 263448368 865812329 504050098 589153785 162395127 408299877 471815807 676183550 932863630 966017412 865817348 893922304 190120155 710183295 422333577 480747021 598361644 880899145 773747961 811625703 717737193 936094509 374394061 435623538 792140400 978623548 605640523 974641021 732069768 915124599 708437582 913481507 795794058 934991131 938694489 998766119 174570467 763538055 572410870 785365088 578565691 965586059 866652964 957505743 571369122 752109822 337069442 763242414 179805910 448682648 963373914 984881048 935396549 976421981 62067487 953224586 714696981 946057155 140185581 940195325 182189092 765750792 807351545 885507303 36346891 908441071 630047860 899702684 728510842 764666318 482484984 924383147 577809410 861816483 268371806 983664042 344544279 478317957 602949618 772790826 349172501 575525995 737339690 891621421 596720208 925669934 244734525 890239175 186461579 591247517 523865095 839689123 847638446 967387382 689510717 990716056 53862691 741355679 193097856 994301923 945320490 986363920 419131669 784602412 894449197 984919754 37871729 51678624 929193010 936461362 396801727 846757861 809197751 898232103 845872659 922573202 480959544 861959296 90238781 783691057 382775027 435828387 647604001 749177133 245607252 550366269 428285226 980352249 9938893 115179372 503679721 533626472 503768260 512108759 164305241 952858160 354498825 887592999 268221457 368370696 881908971 892923797 233828916 289076150 296130597 739735904 137196956 223345776 178278613 774252931 575950359 916603270 579206660 857369501 525584282 982927030 156171547 863518695 697940070 959420989 930175751 959191422 998045907 998126241 697570744 980805959 747763507 844546378 492655345 758721220 488318803 917921186 203864028 525907536 432666572 591752545 583059089 614511948 761556256 917503518 588606479 996550317 416814238 822531581 862815957 895027320 767660879 840474649 261493898 291313041 714760851 944041476 62980480 853150026 91698712 219378487 359647554 623517546 538879221 814884540 413111746 524881149 178347384 637552119 719215458 761892356 915508981 968296165 522848759 859568569 584344700 995332392 403542700 559402812 44746535 501742102 43563678 973737302 515034206 605901295 708108474 732150278 108250350 761750997 398970850 720775934 52932983 361340479 467379214 974424337 55827538 202792712 919160690 956094528 195496588 748266856 464208294 915310414 917055663 933674188 952934750 960992559 819733845 926019674 732569851 800826789 177121229 761796651 282050937 708596083 471576047 986408299 143765387 792553206 904804684 996526421 352551368 358900149 880508186 900863649 984519910 990654864 764348340 861373623 802693266 868121845 952580464 966914153 246824248 362246520 206651426 754267293 509326032 526732460 52536323 808428611 56694401 698826190 881931076 964086956 306375626 322141280 883454651 948775907 463641675 936884200 380207899 858056247 330886466 513917656 889026325 934617127 780370601 874639874 306630532 493304713 480074910 788337585 272930232 617194747 934330714 967294317 535817431 894536190 719918703 907278700 56884406 387243855 670829440 747889580 627145156 643273296 154332441 295001462 542103541 708340974 11996259 743212542 837707219 916010284 733457668 976039620 538004111 595426583 675694224 684755730 815451095 957332994 742422971 831118660 763873021 921568707 485472291 703908593 500284839 853188166 819832852 921847226 954876597 992463968 582969638 972762609 993182773 994064758 953428156 994984085 100217162 804966755 873637105 942772977 611461129 710094519 860161135 893512970 778282647 902117512 756148749 791734727 945349092 951216975 186971172 782496525 10193810 314374880 694805393 960600087 937279225 974733352 769875200 821979180 812603890 959511842 853279453 938784429 794411977 816504218 530088455 709521250 823527341 894902481 739420952 921928652 297814741 745908314 492622673 783460808 834343796 928705580 672297425 941771255 705501378 898439843 196531677 723801785 36733115 199172685 399758130 620722074 550704515 576253961 226070075 536500514 484908776 624499368 456504613 961376885 518682675 623809006 967696825 983515525 873302185 957562965 56092515 650849500 167296102 423744541 520384831 930476460 987196759 988550549 203200902 829532150 957409386 989530923 794949387 969163488 993087228 995643132 321257175 487599704 914960852 927006165 621972678 754535968 797023010 819540725 324775570 932320835 884830978 962746160 425760347 726174195 825841493 942538809 591235981 812796304 907297107 954322418 836679379 852002591 60545335 198393637 202515417 973585948 41719651 886455029 79226773 535811932 788366349 825775516 591055909 758804970 122716082 536439168 973014575 981415856 250313183 476312490 102767505 370532503 697601271 951650852 363004779 997011932 973146514 999046304 25113391 446562406 901252605 932405378 357560782 611636583 465469282 784991944 510596595 723248824 695166969 880726776 867282703 869176042 229444569 640254289 508416919 942431857 994430565 996309468 822631771 891716645 125932978 933920741 17240017 649659310 261735916 914060895 92194716 544304675 605049792 979755565 522494702 940547986 817604656 908160532 743810029 795568430 613020749 825353500 7963360 109779567 561573363 575889432 713476279 902203883 828063303 989701284 195530624 284911874 895521063 994123080 787354448 891550353 385840399 431558249 469388964 640248834 695597213 922714990 340903642 836968526 50208444 631520768 717712529 758143119 938319101 992172428 758826790 966280885 34825450 313010067 515561806 902484391 194649099 409086667 371925481 594278274 149540173 447230787 999743139 999837550 126073458 329131378 991546851 998505812 842435500 962752936 478699624 964108926 34122996 398491704 121772454 476100816 657778637 773395653 318750872 735120979 931916474 935274118 897640416 980751855 272397497 402644925 727837656 834363475 882979959 974450798 335860249 520562421 709401805 753946245 863550437 989097380 924694941 974909935 263052099 787711689 393048235 724550489 797878139 983995610 60749065 769356780 8848001 567312608 262304577 599380115 822425540 931453510 682260059 801996261 63037899 403938364 930620690 954670099 903748454 910909935 19930660 837803278 483421282 771884739 359999056 725258206 594933449 989143645 49934472 77224993 759104625 827450981 445481740 767369838 485813078 651978616 300399228 679872222 99093355 933616271 425500950 983276943 886146758 941529281 296577820 485802008 543298316 711891098 564191888 619733797 278981869 730140823 571319465 729985129 564839737 731579513 987355716 997679325 587299494 927191894 626050551 876064347 621819538 724690949 906714504 984255312 115863955 370095545 8949390 674942465 507003766 872124542 200122179 951113751 571940862 687049743 929252570 997438530 334149091 541175578 330150966 598374031 396255895 639208639 854409060 948333630 234675037 262305545 156505539 650622128 278969759 326941526 950067230 997589844 444140015 721364702 798388825 923187944 672166876 721722556 305970769 844631843 790995499 964203514 43194154 542439418 77787270 323432442 470825584 794547066 631069421 677402693 617999380 878576026 181495623 282237562 652234637 904763625 217197220 963010527 963006423 977006920 373474962 700348414 162131637 188429749 769641546 941205331 113483211 479356065 577404225 579704126 697734745 986774063 510854832 758815314 692682690 872299670 553334337 909546860 338995255 689332574 39158627 530462872 292883713 392259543 610364420 746730604 755145425 969787046 221317606 821641039 996192282 996443065 176790339 291943535 611654201 646435076 132073628 724399392 495850430 574098627 491895141 728220655 112735116 642613811 574548354 974848584 849082133 892451737 520386743 851346752 331192611 416041456 840592363 882871229 867113314 912064545 505349190 744525184 211895416 273510563 715433252 958128197 646404010 651123710 589434663 801879112 291615901 854213241 183549600 779782923 206708597 309461327 467052773 606403324 699344614 885954651 609997295 984385902 942459530 962350755 390559748 998747749 901590449 991376093 778492215 937198427 521144021 790835427 577997848 631303768 589120950 639511377 546413871 969202493 882778766 916799691 683110406 711546400 476165324 842387811 930069048 985265904 525817080 984812637 202342521 323742446 449022844 640400026 931245725 994209597 834734988 915361753 570122207 943023487 140141221 707917160 155332316 326676601 173576656 401745520 152043906 808565814 332335216 708304061 602801987 937559663 556610496 779913042 198029722 446271184 943183887 948261997 814250084 821249784 506520481 821568916 258867721 602512382 632750060 907442814 223449377 946737337 261393297 723806024 455010313 571306780 370550900 380729837 805650217 968517029 644355961 882542356 544241095 680400585 766742746 776722725 799230016 810761898 532628478 864771162 909785128 926638620 98545376 882805364 937467982 938920463 887578869 999904950 121738866 825955587 727176582 921269504 781542405 878217769 43390082 112291259 133515436 900900694 221824236 782050449 290320044 588795997 932099867 966556814 309721976 923708081 208406716 320419984 600643184 996320166 276474556 644674004 267781055 914680583 14926794 371766685 47912185 181639156 971348721 991743292 974547745 990247888 724342541 828703849 105444785 857415470 246306605 257138322 131817075 135848527 855055555 917672057 620155400 631130246 711480018 899439033 941041626 978117383 668324707 866683208 689556404 701345319 59954753 407944110 803441819 978983256 333045061 435161638 591840725 814918313 862335615 901331536 118395144 361642070 334766111 857700503 482385255 548043700 18395710 75049191 762767715 904627030 842913440 969900892 91445200 573751316 927732434 956725703 479348337 676481820 886350378 907964967 832362767 943492485 166421487 908436752 647888963 878909643 143117068 757001402 245668970 683043584 179087903 233632206 954108568 973105244 312471921 777912481 457204954 881358733 378360557 872173296 568300771 837788986 964755841 970830207 750691599 791016678 966992224 979989256 320383237 797776088 960595273 971330088 222470017 547273021 671325621 677404328 915030507 972690495 565618520 864346683 900408370 995575230 414526447 841458611 447297903 830055971 734483282 900033173 405966752 409036138 513543953 603809059 65045873 731120380 33920590 947679847 487465423 797598935 170083877 780852510 207052085 984045892 13118710 182576388 778936413 787403056 255626614 858582263 851290287 993140046 736956358 933392090 627027110 756910453 7095866 454267205 344368467 718226021 536795812 550283785 38734436 490702631 620157030 848794411 684822792 971049309 841122208 919253065 755383181 959240665 434644724 633291424 667406608 923568567 654281988 717021655 279846201 432851408 266513093 786460001 566331960 645155801 830465492 925983267 272812711 345015786 930707812 973246530 600142496 847083193 915093600 957173226 904748747 978098556 217575593 293870959 612578250 621461233 296078700 776336360 379897013 595179699 233916173 884577143 376493985 539760406 315694056 358280140 569118051 666006263 703902059 895190947 670990327 910659662 973710479 998838811 605046763 753270395 298488542 515672257 843730029 996514238 628593381 823174999 286172449 551346074 981560048 998508703 705573074 938275006 888695442 957548955 886532851 930192307 803963605 832994614 519468188 894363157 834987223 993266983 277275911 595925626 50468240 691803282 375591513 745390948 142972581 459582896 245174043 265523654 950986819 981682006 904316878 932707438 258419583 279262249 78712296 523254615 358302676 695902330 981504366 982240106 992106814 997372404 920852453 976870774 378828680 483733049 804295273 836859384 793896592 962438703 1916919 799975167 413999631 746455458 56918502 212662888 740206686 758673111 543545159 886967672 35400310 738412391 5940197 656706959 468077130 591860528 839577407 955680676 990768024 999248457 273544513 664617465 981673748 989582630 22659156 330673619 23215488 951723288 761245043 955625325 349932136 617882223 43187608 179571294 463808759 741348992 937252188 949280388 619311233 947707171 12195435 121128003 365104760 725891282 939655456 967473290 735551438 938510936 154932532 167230453 178169655 628235747 431219018 989897063 156738965 994577625 276130445 655627713 62158988 826536298 520967320 628715867 684316998 969621605 774568177 796927694 938032514 985834875 982411998 990472730 649866644 713386594 243860404 782205399 832631800 936639174 378830534 801149301 760030737 783487036 300108128 943869725 515597579 655322999 776237038 784896985 755218338 983735403 228446356 560897217 785124092 958730682 356120238 752978558 193266060 545521569 101860669 597511730 295794510 853393712 128960233 213620981 884543825 930305440 461763414 717420057 153519396 183405879 824062988 988788434 228955119 705623919 893515609 920596385 895800535 960818412 647485077 817013548 731008389 774542178 463590295 543789729 946478274 989445907 522003042 716883075 501506827 834790117 803880740 807034461 20622491 562687446 972335932 984990286 544080419 851495842 866797496 941387888 38873002 168218549 110363786 357481035 25560143 135019279 827999390 880680379 157334048 627949022 195239423 667876978 573341910 730465416 158390293 582857678 450919405 708692326 863938683 984657245 901903491 969157086 607442041 849041359 472621762 903613233 763300622 871589911 200395915 233161697 657742789 832113364 940254621 984096780 886500744 937221354 482446847 671684575 521392029 956280773 694687146 746166631 87013943 620187940 19671430 722191373 714164577 780581501 794566611 895692400 663498963 758739912 457836232 932900852 474115812 498916731 290787678 854258059 412564292 507111190 82353136 561951624 740118818 944585781 691263421 758156324 102276589 193414079 761728976 897599757 233236957 239928492 494776097 874474292 809047894 986796718 949397495 967245308 305799600 784229101 888447871 991310024 783569280 835465660 463773878 644220792 240126445 758138839 69128343 346418188 21796216 568099465 89442667 102648454 117273981 770835878 353354384 720157913 277542004 992616827 596072919 868782549 791018791 918450094 389214745 889365060 937487987 995325856 615831975 960292917 553483511 948758491 753735428 882135356 446193675 765702884 794539236 869666866 4873168 206493708 310250966 504357637 656283530 697616757 751336051 966092542 751512786 964459831 956457702 997185379 458416416 568637118 675466412 711332608 965401903 981485890 632446766 669534985 522276109 959201406 828178317 890864866 218790181 504157468 571603376 824807715 853531411 994951092 563944445 660796612 79527372 970512390 126854298 211262466 990302163 998795510 127094791 472316224 121347188 686009439 561631403 995260943 322009556 640277752 21105812 965566234 115686814 289701141 228199852 263181661 53312134 555714632 858460840 981067642 447247420 995755793 683836369 843306162 750969147 966934664 644102272 806813097 601496784 710290428 831930866 940177763 109687319 513349135 552284386 967791177 603110814 646656841 162504522 574831936 533565961 877387463 338549674 641780836 234188095 738767347 21605251 266961327 617639723 636804337 315874452 418840729 63054692 678391919 805307507 858340213 736958748 995196925 400427960 586634742 305606293 866945753 878760889 897966853 877609442 921848640 955655682 985360750 233424851 732580536 887657303 911260502 917810303 937296273 585929936 782073888 883997948 991800602 342400300 467179902 96926360 172825080 512054749 547876315 613763836 988328551 405510824 922738415 167985551 838378264 325652246 951621072 862040677 983981706 93032771 353369417 227101375 273663879 769581445 912929006 239288024 870873057 433056844 478632754 650593688 714980960 751697515 805174406 517049473 852316328 351581590 755482392 289343801 946207001 510417844 766417723 954507612 989799119 587344127 958986343 79722814 440600323 21579115 994157279 818044026 870290629 14166336 628303026 66026184 752414805 982074975 982796163 861731696 969919311 651867560 848956948 503661484 919939627 69847206 132066483 41220564 370953433 656702184 805337998 687691049 787202273 329831609 830112006 826749267 896632609 329992667 667641982 20781824 420204863 257597656 853372766 508270658 939558690 808931588 908761402 937783936 994817814 134616915 171546020 301549167 651356649 646586735 858847936 276042056 293621929 846361551 901926318 234394288 927367191 677410384 962587495 397754747 985670070 204971619 949602663 475102797 784420439 899235246 899894792 545275491 823048541 459415132 803286152 287729170 778516098 677436656 747713249 839510468 942163109 15769524 933110265 809876131 866099330 541833926 598788119 845896705 923900107 75376515 797241459 629556035 719376110 912586913 986831609 226035626 734421904 201241656 769465175 411673438 606514515 872911953 977244681 884778290 890941736 581988164 604467193 915962634 996157808 721256014 886596299 937313025 979239220 270621093 593566673 648675323 895672710 959636923 989451037 937285424 987667865 477341873 918588549 910117354 917428031 503665176 741508066 634022805 976281086 466847529 487569826 832000178 922729335 339929961 999528338 394408164 550985698 229922060 918585539 23609419 655299317 744830709 897402959 16577322 861659116 15990218 479737236 382885228 774443274 164320653 381271917 257440447 553570783 358556420 571692830 388111569 464520794 112992925 562242831 248693993 509576016 984594809 998922020 872973750 884273276 417308182 859887462 592798595 605512922 962968966 988590578 332327899 412349808 220547996 294409069 672017287 853638336 846331447 979929087 914755573 929129521 196231976 295912823 222389984 623711502 566301013 757497215 925251272 969729013 67860221 539900437 484224519 857366581 963574211 991398999 249654890 918420093 884732737 919420076 806545965 808114164 931081785 990733160 228799072 400801937 854320060 854833618 4740648 501330587 336238294 510051926 46025381 909430088 398817509 898702566 427926204 579254772 808597715 969454110 849319332 995157349 252618781 504729441 650022620 823471503 134100481 414453167 346213372 869849435 466334249 557748952 25688816 94976393 315789413 804379985 39466541 445836526 676449086 946766686 519110611 855852136 489808933 633942048 647572128 763825768 932322138 946721284 443608195 490870568 638392372 824531161 831763236 963368384 437976119 672778819 766038941 828613044 694173612 945179227 40608038 803409383 313851254 382723642 753334839 755487456 27310932 830082577 759339073 965173024 889299335 941828517 671648633 688005694 133040697 417954740 359673341 892654329 680842830 736372394 80596715 171389365 11169764 957391534 382540346 803317093 604329183 669876119 307316527 782200785 605977706 704726327 956491974 988559806 691369528 811697548 132789728 491657059 479122250 982834583 660261115 904690348 84838024 529004718 39194601 388005544 187087187 313130680 726979790 945933475 731695008 943975723 942285633 985537181 915036632 919249812 718475562 825493843 677142774 879937729 226077012 273805732 397014394 533247750 391121861 817929663 891055184 929922171 866051469 903328475 655702051 896284352 187380374 767551833 224192551 820171921 248930245 504452798 848161285 854576802 945841036 958231894 484513472 617351501 91024828 763706438 408687749 669353977 882973670 910712754 103410118 851472485 391533684 688550141 198795256 750480854 137572700 610947036 382004729 968430434 218584583 733562906 371340137 455687203 865059531 946446103 231117512 457584163 391074007 717913928 909356868 955940766 925455314 963323415 448084346 903819383 508109945 994652222 318667820 918288292 326313380 662289196 103909072 378655560 641449256 991650186 860500972 918235838 760753964 946312579 597255700 644053141 902540912 969876155 13020723 593947579 822491138 873445359 493329841 835443691 660718076 705074407 642269878 708687156 692802721 994245471 136940162 300690659 768035802 849750772 163745646 762654571 357826831 940914507 785024439 859202950 20887804 849998733 12245548 508893226 17705227 227968694 102879436 989043059 66164840 386095333 765906113 943365015 434133757 839859866 502192763 715046151 795521773 912806552 842777609 911626747 272649992 856998542 183440196 891869700 606243111 922144687 763539873 779928302 715361271 907037437 348002955 787928324 750530455 965806312 875270016 986206045 76023607 728079805 793325445 829083701 991274299 993679538 171808432 823463089 253427569 963721793 250555191 388467028 189092832 924623872 533306988 626755834 387008928 399799212 626820613 913951066 258535289 636059230 313483196 915661573 165208879 209597946 970734495 985730570 634159041 803685169 345381185 401792184 846470458 866894249 275960130 330772426 149931278 722172893 822506147 975405542 148625526 676985087 349912910 611045253 329250391 733218091 996010894 999359431 740062493 768524646 860320565 960898425 37094562 705980346 658931247 969852948 877558725 949914641 793806725 989608712 579336468 842135123 779469546 872498325 505888795 890502036 722459730 822080869 632221383 871573446 596739947 715345172 768985646 784804337 396374847 446636781 244958983 371895692 680696088 867172193 35273746 397939229 819395103 852159598 766012898 823863910 277805783 588644564 215036599 448866728 658981866 788081793 671856242 912724349 992951349 994331695 413147197 671109853 417772605 957380221 544379810 616521329 229582182 405455148 238092018 297531015 936761884 964280076 940701982 969515922 881319192 883778493 263915132 875334795 736690967 739838423 318731382 675421631 604736545 614579740 634020581 840665706 489369367 739903316 455075794 989109513 700387637 852438635 515849491 580035438 835599633 945322622 75982255 171392879 543016817 924914020 81297846 513703347 661847065 993723769 326335088 352580970 668221785 720708427 65672873 415806844 519063517 587961931 820028032 827038459 100930768 530113326 207993640 540691816 117257912 252431893 795444357 811354014 83757380 935000637 25064573 760063055 296202048 614134477 353374854 636946943 756306480 957438716 428641706 785001113 1054608 116414477 804590612 950239871 48554082 323344904 693040855 754152626 132693936 159641372 498726765 853942829 715388911 924211585 682682062 707972652 304328068 677025968 479226030 732854190 876612201 914204250 624378419 757620512 63930813 213975677 696268090 931920294 277130569 279917237 913406435 928413578 532398819 825581776 5684503 809205588 682844451 726672707 307671361 530553288 687616708 937769564 404654821 852318800 630884330 739833756 817414061 905348124 797483536 901002005 58386483 728623869 306303708 990614169 625890402 927471536 61782103 751266314 922801251 973395290 510461853 581701945 240740130 538533579 603308996 839211757 20340911 48487407 373552851 610315220 724983517 750710287 662733282 710287755 465066644 518267920 560288486 706228597 143343347 922881120 856583673 912332672 3019105 118603728 407743469 466249500 668898230 697304387 631574524 770097799 646466424 833766948 129692217 621728534 362818703 488585126 529052741 716964636 423822065 849237173 945275857 986853428 936438667 965419365 697879757 829833390 649044325 862166639 907218825 919089538 632285882 842274137 273403346 539438153 973823046 974400040 258808505 866112297 68734935 938294311 576207981 742732323 612676742 723905166 365242083 468836543 631126335 746705599 601687277 731210005 909369213 985255377 374707457 889064452 225934495 406077095 139459064 788338173 789472714 984766620 32354896 562590539 824613567 835490858 268538120 619810907 601849659 662869147 496677196 890986185 438320103 870074668 950861042 999697263 609670259 788461264 193949620 284758182 109649377 338176728 37746392 801494100 444472318 706549663 659085286 716377945 991868500 994462037 289974829 292169985 989199935 995693856 632962045 679437498 429559481 843433856 781143231 980928307 499101742 975195330 946649529 983695907 196788048 790098168 639106803 686694650 593395560 870048921 564936103 857411255 144703633 586427167 251610935 596226789 29209411 236182374 169580336 895824704 315565509 638927806 212534969 271722665 646476381 859209982 236362696 909729799 625747206 711214199 62653764 678634754 301555502 833179385 636113695 866283324 607005697 630638994 73614226 357019582 283272619 847755381 546313609 846702613 812329882 849008862 490170351 940763574 182590723 610593014 369019983 392385218 140495465 849637400 904117778 937151752 943773492 972991349 493667415 714238788 596690521 925993968 4172558 95984299 815433091 951301604 854313351 878491836 880008087 976350021 229027845 761975704 425649136 686286744 68501437 908859253 843900988 869095524 84541691 204846109 516413283 953668100 470220330 797582246 103770635 918490851 663543799 767632234 778188131 842107583 416256232 431908544 272930342 589528378 178389855 844331968 152016783 207946534 24559982 96379545 622062190 946622088 417247302 726321355 955209499 988832843 661833172 995507243 813934414 953906586 399601911 501217180 482491756 800851895 391552649 475224220 186342474 500248063 322564897 914788327 543484891 567308848 296091197 739544441 433631164 821632216 611109902 745192113 426204352 731416262 386763777 570969578 57323861 398321877 824195289 970845651 235183805 910599353 28519163 855113799 928595499 938082647 918180759 958554322 311268754 537712589 726236105 919885439 10737104 951473652 888828827 924226422 769972415 777382148 817826268 874135886 434725299 541105320 515019985 979680485 319932572 474138056 774266021 849095676 865880885 904847026 448426184 624046463 395513116 620745176 145138365 824997331 915486452 961377743 532691707 643248882 774410138 823101929 426866921 826523734 365291121 657341208 545324894 809735765 721209369 721624787 375771859 622344832 241214866 868247182 447457309 913660831 979560988 985088916 82926175 844560197 145277440 168877890 290449658 941623050 243346403 583587536 601230102 696751203 676276440 757090870 565178391 837893678 932110549 975882473 556721002 792156227 951778409 965208675 15258486 162002638 74838849 169068310 245880957 425733193 565223383 891896591 135708667 979297642 938076509 939367980 729503677 885050623 702603469 939069917 456604289 820407489 117316316 228818733 927860595 939130746 582109803 802535023 399165799 889707215 322075241 782790889 736008500 835050290 913335892 914976926 693510022 971402383 238579413 986502785 680732879 784214295 452488988 714437351 229411246 640805658 766045077 995387171 463706282 831281100 987651090 997591211 681251775 836318377 85552652 608136023 478727005 934218320 515632371 982551725 219631790 376030894 172092439 415680259 474107129 821679039 238583509 708716273 817476586 938927915 692239729 713916412 744944250 992009495 566927547 639950610 928496266 953748710 879520795 974944783 635696355 856643736 496226996 505531705 56120557 399533058 90543967 555564486 389372930 495151271 784358843 953700389 987151350 988887527 811085592 877353817 258875196 901510628 392595872 984994260 281558339 950026784 185517411 892618835 792804364 950495717 585917531 946477800 143444129 657819506 535992038 620766200 886510788 912001964 259161231 465990169 303587798 642162447 328892320 880536607 637654477 986865642 328053086 979030073 266598694 674970194 272450354 543324692 853716509 995400973 730257303 941549434 661176709 910967076 450578929 780953949 549627640 835169692 555479583 912111911 601469944 663601202 392889354 972618634 825330872 849616035 887262383 999495013 653510614 982504200 137295349 563446603 388360960 946963354 42943895 797865225 357061876 379997744 884562844 911083766 666171628 847422698 755540410 998007268 26984371 890828281 618184860 783187819 804837443 983596764 235679995 355569684 310940325 682031644 770718692 787010050 656894894 758016009 580529345 636928068 891121101 894340093 121610395 892548747 277245765 897001737 568234234 859780042 396413124 578586828 635749459 742240518 700769802 739999223 149550982 603256182 187361469 445451646 718884077 931405254 277132934 948206210 575058598 950401731 63594943 75249563 829850129 860696072 15502824 817894849 640340550 699683601 398360510 456842460 621311638 974277006 452491379 654357182 490103162 592883703 453576295 768212347 27072036 759151014 531049830 541059401 41812875 396393320 704072214 711344639 835037910 964148651 931296126 998495158 43827501 264563106 822335411 998647295 690974585 756062379 168477255 961179012 556317108 582166091 414563282 849825377 807249196 810056663 277403649 969767306 24734155 803763992 308517192 654286781 897954498 978555623 398660130 735745259 23890728 461517117 376235566 609061523 615879028 771104910 720189498 776622244 922480044 952431144 336530119 440259106 30707722 551110693 725117089 876408925 602373381 869092274 179068645 861319479 260035574 769132936 45451842 377171221 917168477 957721107 719029830 976973597 72196957 755339743 738050148 767692154 826057581 997421658 155452015 275566805 404895776 659979888 725042522 806753606 630568918 962837000 249760565 626186238 974000336 978350519 188653022 868475602 348554871 476945957 868427728 923534975 227568508 227796271 455224754 769140991 184878205 652599886 386268918 964233597 696490048 880931675 849612528 904001041 822911250 885683163 597858269 625490747 727713895 981201959 85698477 108410820 642975570 700460689 758522990 768849345 891678738 947705471 395547167 608267760 172534239 285700952 852176763 860883657 291497131 894603874 476216957 909356013 686650318 785992192 376266020 431856618 649279893 794364790 505434799 722119028 594250807 833529768 124384455 953945652 129898312 987788333 324526193 920552529 866730993 914933953 679989342 839095808 41334525 566039795 811134943 862863555 997994442 999855042 5791741 936597760 424830356 983605550 646811071 797059020 562373696 715498402 801722344 827956105 863040586 969155648 148357227 813832884 661010944 873907372 605496196 830583479 962851730 981343844 850464475 996649532 661121157 812747915 246414911 730819194 570050137 866974687 250376080 942056722 144081604 781380661 52535208 455240024 597641583 901967903 573550477 579744692 497182636 849276572 822088984 892278676 179116867 441274805 514149950 659948592 861488870 960871882 933375201 955207642 996670463 998517723 386920306 637146221 395168447 978923351 637739256 654435706 110224087 371844593 123444245 984356493 762084468 992921815 104581171 171726887 667854362 884341991 646181997 738678249 579683694 700876975 105606082 327757571 28162961 469575101 498576951 897117293 764016996 875646297 203572724 236606322 634747091 711179917 41366036 111366870 106205909 847777691 64868941 984491698 171548370 492179190 550000011 842836578 527958751 948979220 379044787 476745602 300786251 804574839 931838937 984962010 734015925 953734833 117239274 267050894 75369039 551590900 596777121 820414392 796884754 820499797 743570590 909010073 852365184 955306440 346051277 493390140 735991599 996519174 491696353 919139456 860146723 865203589 292539262 539134656 575433871 630687694 780551080 934896546 398704518 826902392 446368876 992137866 646577103 835135271 831975609 936625223 417299309 604326083 147633495 856588527 344801128 753465693 86879503 145860683 536001485 751169696 847815692 855632779 952253516 975483254 233074579 606985427 38510640 64729922 278604581 367958315 572582343 925979007 825965214 838413216 116029460 618974049 427165131 996237825 306526978 681004898 376175212 489972965 274887674 574560503 992122141 993876813 922002657 970266589 118634158 846474076 891004088 893145138 669076100 981102770 597351439 793416821 163766550 558568500 437085572 888859809 87072399 214195631 357692733 854183346 672655874 838039848 912046176 974252551 5934928 522450061 310222783 808576951 415011102 514677875 990337270 997262853 75919670 678743164 509416275 992581946 811563347 850520549 826797115 847731982 994224677 998606650 384751066 657884386 459221554 700414632 142342626 332188480 762082013 877456388 849290520 922073787 747066737 856573353 345997743 964555663 270151202 305430316 871099884 988670867 440412060 765055390 103539059 149183355 586685407 926934076 993014515 995433813 529767998 903400240 733405599 919769009 790911757 984982898 456676654 817162848 869032088 917802287 116856021 958157319 53683781 83370847 48633456 582830199 56191327 335250194 820721646 981620522 606607840 789564213 799490836 823273413 817016748 955760081 631023231 738512171 917823104 970945552 828342625 924879209 124407568 273508164 969293570 971536998 891333522 968740277 390727589 843778534 652281643 824714873 141910867 167797816 358931572 909212050 299579872 785154769 740768295 825314033 434665073 534031420 949517823 954401886 769480420 928452164 412150115 893856148 246752655 771258809 406591931 661657097 435377563 871305617 826310920 857230913 315228985 351675535 986358268 989821251 654065852 937602550 83089467 999847919 978942656 991417295 94719505 141349069 979823504 996298297 887643893 916856950 195342624 266108320 566397084 774515523 680804398 832463520 380547532 488767252 410900197 770843697 485709384 820230861 442656568 888860729 788515345 828717976 574263975 867402636 619072337 851336941 643662018 824360512 448436193 621375914 122063677 723900258 112946784 804214188 214004890 857088903 744551831 954342946 48517135 860707364 39646272 392114885 469224295 847775681 93125444 996392737 548781922 917414383 473026585 759133039 378555015 855642738 225331874 679536933 524852978 532031454 560052831 823799003 158032323 934352199 135799693 262016481 277425133 628256025 941119760 968018803 21900713 646961439 91291069 582197601 474097448 679124251 409647468 506215582 897356238 983581883 763846710 764232080 751903084 793209010 891347931 898085813 992469177 996538370 865037373 947567771 382225306 641378708 915656369 957332773 200198294 712684605 506835907 529506294 723006152 810536302 805157442 900688145 79558170 714131194 976528150 985467236 183692026 606584525 854924584 984562738 17186867 110920917 37123499 692955274 852436862 889891121 926482325 961042965 266316609 725216399 162728752 951707274 474910868 950534513 606128 775935422 87199523 115559943 76994072 931041682 845954256 896449876 405647081 745091646 785456505 815215035 755384554 955965856 577484841 582780998 973600251 989842245 246854723 296171645 323983494 479005022 721985900 836940178 953304727 998039424 802190936 829641859 152999393 789741968 198063934 239547998 747650296 843957960 344432880 505058197 812776722 987586115 809078020 978308438 553030102 614163888 605229602 919812367 953650341 990707020 731991143 822026714 218666008 506579772 45257137 611453066 218326917 997039000 632204434 840616869 993949292 995103982 496869473 701634048 184695841 194603016 599013021 949519522 91842206 931493804 608732327 951180211 536993672 838226480 402249603 952883808 47826683 657303796 895096207 983106846 555686321 735952162 875170416 973670648 343420281 646063916 664652597 815002873 188107222 609762423 574962769 648055593 570457979 896067424 1684682 446898970 287940413 402953265 66012751 774325534 741700933 980868268 795109291 972765051 838669005 846368716 192402159 752380415 74521289 843657110 506660210 712798116 910622731 951650925 461845201 968837940 168052241 319404607 147474136 952071523 370762526 420360448 105036957 543891832 8480401 869322213 279790023 572255426 668580671 867630038 746755904 817115046 854470735 914300338 778818998 835691916 38569064 533892929 452897940 731755735 313215957 566796557 355069911 355667564 757116993 887252339 662006209 746852690 880921623 954735775 312214058 740074443 513698520 962042961 749114606 939889028 310564251 616844169 936930894 956067154 831858857 980989037 246115875 610611993 894720717 969036309 656175657 946906887 470828162 594860288 13493585 183199554 928096866 985704871 10121604 330227240 191914156 196975009 312814319 597438941 26505621 516162459 906140888 961464752 246109199 434587811 791273335 945831076 40762706 582035482 360907224 401893905 119791740 559728296 384428072 849648647 678921779 791034964 213404635 722933801 190241770 969768889 425571116 865682018 823400435 961476131 475584441 572946948 31491778 188685193 200601251 655123091 820370700 941132215 302134660 582151261 800400557 813935496 555182578 587249467 536944184 640264543 16213794 679020981 192474206 232481900 470421646 602335764 672023925 904904111 121262152 574653097 527229732 544812974 438061152 444512727 760804036 929541282 658776334 896012632 189245978 961234298 81817797 440999697 150617469 777070543 683897521 732292601 507959905 784599569 96746005 904000676 263609250 815137458 770736554 964089330 35495524 48036705 710109754 993596326 41717157 844880737 365937530 853353546 867766127 920838890 808764770 877772803 442926495 680565215 121914514 911384609 757717302 791665890 624825486 971367979 24010089 931016698 708213754 863816670 534645323 616803975 755164076 927968307 365228802 675054477 738498392 954906679 13922226 712557535 379697261 468832468 945970106 960677381 249991684 288436448 309658587 515224250 386246720 746541236 287283576 468639191 753910622 920116225 790521266 851992302 432139034 614731922 97140292 942142229 514934153 772782850 345806622 869121079 564149560 588274811 185637115 362981924 711619946 857089275 626316363 647418503 418458316 920891488 125146040 994552682 509637022 535239474 284129792 730937216 633126866 714705801 31361720 62267679 603221948 894350916 259045769 649149920 447619677 890364049 839855720 866423944 671300911 869095649 900858924 934129511 172716103 659362209 315659825 592012978 842304895 911548600 937630024 986485462 976824435 982099751 868022798 980362111 601032153 851985523 867192561 952077648 990393453 993207091 453674213 858919868 326197507 422975521 633085204 943781745 947751515 982909210 547041999 607507156 453066753 728415354 623056683 819042087 52206233 141132816 873311157 989539330 10365939 581064056 130583267 498463741 465371505 580621891 251444975 915891215 896811372 946319109 413816598 938557026 209690534 853817653 929517346 935937885 664781500 917837121 397896869 918623949 908296971 997678442 525060670 925868171 74111030 873321587 586471151 657629349 755260311 952066126 11476944 530637205 511947204 584934436 260444438 435513015 87733207 651197871 290209129 807873220 598248238 862117350 332229233 593070442 989906734 996579055 709372483 730390348 775544848 937584801 184726078 554863845 790421844 862958596 910507686 918112868 345044064 401387892 474568198 819790948 489719680 591664818 987540621 989229234 237545100 419015014 724992762 911119539 660005721 909425022 657070682 863096926 980285371 990383082 609905212 735454135 624198309 903173700 133858813 605036126 778980724 979507545 310493633 321913558 900095758 941935604 312413669 638006064 246596344 678938227 325680611 497714295 333814142 440688806 139620899 164446670 210107998 416740630 993796615 995122387 396389412 787875276 789725454 969852124 544101171 669411178 375906468 604462639 563058043 830589615 564495438 886363709 633392237 919150007 325249668 876205443 850788373 879786372 490692221 860215778 493384918 618000931 15769014 872436486 838465741 893436690 504209340 810316395 719175070 968647716 63528826 425582322 882646679 952378376 492431465 915604129 466315992 514767649 868799919 955828401 18817292 278516009 634040707 669160581 859799675 951065244 8708618 84347112 509273868 892446544 73341959 769371700 555462075 590488166 555006877 798408580 450810529 527504766 798288865 905146518 108684669 321307260 717319239 755959072 867169181 907824565 473416907 474538250 733545544 825396883 999848690 999964729 637217480 917155244 940760985 945770780 45601067 571451762 725516557 961625167 166882409 249235900 427836693 800720292 551627436 602386201 113373853 154344273 493852394 694422130 439839065 863706303 782588597 786833131 68892924 534097379 251640657 997772608 498934595 579484643 779660061 792749411 868056504 890880152 225985942 596144527 790607538 969211810 267567499 853751774 429672050 777133459 98858832 891780543 658275629 791917122 425510637 689741765 30613450 909078862 519017045 815287450 594247449 952316336 916266971 959074037 311551934 420950093 737051992 906177467 362060188 569946433 193827652 779520076 555358108 945644137 121796658 605274043 525249341 970186424 810956625 834038526 513580501 771361596 129135574 827317944 940350211 967546935 29641482 437796340 697829933 836626865 124201627 658897104 470068407 794482391 21675008 132451464 303911555 383381240 653728161 743853962 243297058 742984868 438732921 568887454 50230889 437821620 664148202 803424818 22712413 564721455 498432004 847086870 254889923 497443111 314880671 515086504 985035272 987495419 477309780 864576971 556258701 615885181 616540626 812080224 185999764 821932809 171693826 270898737 103741943 951280972 568201669 611006719 455779848 864406530 449440274 872906896 497457228 635671081 478419015 946708676 306700450 346682087 101895540 941609377 84204216 123576001 390820353 956172712 601083731 962188592 17521018 415343237 843344206 937190206 165609722 987840931 257358199 576765525 615914125 971169031 802899826 926915244 821419301 927903456 778644006 972624231 194896785 552251846 801635467 871663172 812366241 839399696 1748037 165575191 816134810 977365466 574021402 611330612 345116152 410883579 768456400 843057470 647488590 989095534 522081507 613213745 508770565 548021304 209110432 298563839 49543286 648518403 597636195 774006773 307860970 955040585 424114036 701242441 825306339 867662215 499924777 966091483 442755548 904324295 479436289 778516163 799979157 816273387 430211973 497812823 180566166 407139909 520275896 827537658 261015074 612939377 643085923 813219983 664016806 691156759 391983459 804588256 478070736 559329352 239769389 520000763 548908825 688390696 712338515 800464517 245674688 356922227 261392020 622109470 346407585 481296463 849372379 897020879 469651915 500247322 399397675 422287994 818957117 832830057 361288400 464788777 592495938 694078609 477396751 895411975 467998181 943812395 329225991 642541614 948048321 994237459 62972309 325659338 716894903 949478044 879020680 965800239 950620325 970595555 641774197 714148574 896535323 910575397 225206161 485827135 56752872 938928580 722462097 776258061 505689621 624332921 712523362 936901770 783256641 796916366 309757986 687258396 86554030 486191683 76362207 440732361 435790699 783809856 30195833 423302281 471667262 702567607 790042290 909238947 645504686 727977572 71349863 632439185 11487229 21750318 788352947 961539184 811269495 870522750 626630476 720570420 407597463 810921256 250621666 266241079 320226359 674203172 366189807 775612799 441082019 768565199 738329139 921799816 117431441 831955141 863138509 901249110 789504757 904986665 327001807 580881245 593554685 609013967 869803225 994687872 984402030 999313218 637165143 929070893 698961466 711663778 526461385 709545260 882010718 916148541 935454028 938006713 308776404 493158670 356738938 474935684 343923150 533249287 564159964 697195877 754796831 934142337 263479242 867258143 23309229 780500464 990365479 994136739 264272400 332985786 613022367 887235047 721984313 733918299 111151493 339416708 554069208 773346695 906770611 915956690 336895521 376523524 913313301 944317440 91840600 466819540 253120879 309083615 627149684 866440422 898257206 984547392 929489021 982669451 560246832 756230842 5741546 504111916 92731624 727643229 100928724 272911180 507718447 755380601 254721486 612616900 343180479 964138440 631595820 945048333 988802335 999566584 573575064 805417873 6659349 76022936 672731052 810626518 727962918 808565212 916703622 977090284 11116537 582440843 623403203 725337058 272542456 791182234 645937309 685222972 95802239 993062564 364262826 392487285 540196309 783595956 32038743 443061543 640228013 775985247 34764438 799370746 447114649 814420620 856443785 915902144 118602693 987311813 597950966 861754910 329909697 649969179 751778452 793879595 130286521 286837711 63174304 776200386 340259287 393754919 568234844 657633150 451759488 565252744 405110573 530309490 788645512 922712854 9438360 70001804 724362223 748782257 188886059 539529287 277204457 311873146 212365556 668510216 258192848 576824771 460231652 848115806 240805565 590899246 443654761 914326377 608843100 893634617 286741780 414990072 739380073 901565041 78749253 926446863 448725844 539419033 153762820 828858264 932301793 987796326 867601581 903808173 735394373 860340769 785713926 914177241 564494748 967792020 131294672 548190819 134168266 560112536 474267726 748457815 212382821 845597934 478200791 733049981 465351000 621563436 263988277 472501902 114101849 875568089 48406527 380230837 56290933 723977979 909689042 993138825 657893287 667077060 799488439 830543364 515938510 765352517 5271482 87253060 304380456 616213700 967581242 971359438 498443799 900818060 704879605 931997964 301493008 476239638 681949547 699601810 432712741 718821681 324229120 501491050 492119660 683502132 357020722 926510101 643920448 977630963 973456489 995514159 765340266 984524878 117879787 941018707 94360695 633603577 383264520 747425938 325307614 989426555 635291121 969542592 790816931 936505846 230607342 766311566 913951019 984978301 190639314 607820291 904189255 961463772 137478883 138969984 78334548 373739405 509732456 904798831 471814608 943962843 306824885 677361889 285492707 769434640 176165723 711087909 948189328 998499289 535390523 810126992 427883282 797644538 860413473 900744568 769998383 926122571 685251824 884494739 657951629 797021342 561369294 894071602 742603693 968886796 545401715 754044430 612009683 903254695 543326210 586008580 847110905 940608995 59840514 625587388 733305706 833005472 792032941 881008136 60211318 512000672 88357103 160123018 692466176 775663616 725638779 788350049 621127356 699449685 25812138 811706912 992484666 992781133 581081888 862634560 462769483 929158038 979226485 994021277 402173369 884989922 447019347 802471748 275110984 649245338 580871657 854159546 305327448 612519960 284668692 353150355 632350752 910032134 215574377 962717716 178046883 645553429 237871606 898978985 170827588 262788323 881183196 942339534 681499395 719785344 604931218 656564837 760770868 966059482 370509499 749953211 788134596 850145447 692885451 886139075 282196487 513964794 331002579 603038717 345974867 731273273 300480751 762860681 842658527 924681796 606540794 952960210 473028610 481175571 653053265 677481966 970951166 999888413 558233192 872307335 776984583 994242437 187817260 757136086 590419720 708226802 229122987 813045842 908219777 995168826 562575206 874744499 438247487 540390348 319302057 501683478 391212512 598351406 105576185 957741669 924995568 945341570 451775859 711277849 352485496 405132180 725380566 763696464 840008154 856735486 239511018 858207385 464450669 914621774 191724751 791291348 259252920 842311108 159547792 635101818 848717489 925185575 906012901 929707549 5177585 330749702 452482210 542052197 595007690 868644813 174371186 369463224 599324427 834426743 823589198 877023651 625165173 802975731 239327808 945415889 967079767 972203512 949984078 983697494 148685457 497572208 676003319 802091983 129391 51399604 901204108 999134694 545837148 856755847 718929596 894307585 32228286 509792674 722956643 858124154 582463943 870452584 285182324 765766088 76340225 645835483 455490342 803784178 834073138 841470733 962788540 968738901 638637519 914264939 760220202 967005904 831069789 907351762 471110291 540614564 489865980 564545063 635287573 692756798 843035906 899126218 260141505 331202268 773313689 861094472 704426376 972613953 797267116 832965565 666705645 676551784 115615303 555416132 970641313 989473417 660378114 878774863 301279526 407100654 912840203 968679885 556289149 729884991 600319548 988249983 548469355 705268489 865507141 998181053 246823471 534139374 562037242 717188929 751847219 821904759 463479353 804478044 769972311 962693357 785143615 906701979 901664306 921408320 114181990 515520157 589161780 856041853 826344534 944230460 356429531 684295871 410205305 708849219 656074692 883768760 470538622 613223800 687839133 748444074 697662387 707026182 895068195 905131769 361599203 934191935 224885347 482121953 668107743 676103827 231678687 704384473 335434768 635655905 208073568 640399648 634222647 744048673 549739978 965700453 133987345 443238143 833565392 940572665 390775958 516518760 16676239 144046790 829308130 967223413 281513917 750304212 496385913 878716606 744864061 884724006 778417420 869458482 150517053 856230473 146370539 557213934 159104055 217373042 921361169 992526098 535510313 573994311 743069251 959185095 674835494 999540731 440230371 884417566 36370877 524153531 456441795 659107847 988865978 992031284 718722561 957696131 135565498 877650297 866341423 948739495 668290899 921848673 161239 147013022 817660893 990939482 270434862 448239250 870290254 973722182 391599039 711198484 839810170 905080232 407053036 696094038 247531572 558584864 533080404 612306032 692018124 838438259 586951368 738717118 390770144 671595813 260507189 878143901 377837236 806720706 794105908 997856165 93101328 383701323 774988526 857560685 597591247 716725250 748089066 969854644 728924362 992946480 258762938 696635423 11472737 400736743 30612344 344472728 67638326 818701959 841749107 859689171 630708379 846115228 796144801 965326401 23220396 67185693 903788075 948313651 165960749 782801500 272585608 446240382 301498112 872437149 796095868 961589207 616620864 773125115 694134751 988864577 524551245 729572666 975890833 990256455 757307907 806365432 207623244 723153956 554622099 978105297 317458517 734542101 952485795 988685997 686742728 850457716 18138847 865212576 478809080 998658686 385986437 553468960 100489301 174174198 437160476 794457995 239283043 506124894 280466531 521654827 835341945 950768346 492940172 699639240 391704511 885260366 407260638 786586650 624241660 672420032 551049628 907142762 493403290 903638327 435654076 574923692 169263022 568725137 745987529 866461548 292749254 770182877 771243335 926786974 392056106 441849693 394097363 442637601 655753426 870066791 503455006 511277622 150464009 526760570 271359268 852488530 455883050 858387699 632755592 894105976 333692287 713500336 679310958 788991402 44283195 505615580 552387777 990195523 998987247 999735780 571923133 879219037 595366049 761139420 484084944 817759410 343847982 768230994 896970923 939794851 8073647 488855474 854992884 933752170 6490120 696534914 356283226 384448306 635648218 981403204 253212722 485320877 800094506 864363384 678103458 993109534 684954605 847409757 61018500 156532594 32688843 448430296 155884139 278396887 552252190 999906865 700792240 983616670 431735807 462035064 244478076 769195656 768701714 895121407 491574094 595455726 6478020 986339703 47091632 230943374 850594828 940904604 38215667 469431651 537657047 622630960 573633612 847494592 921991398 952970314 759518359 841584523 255641937 793109028 982925364 988934655 224204528 567284687 225708277 357954091 475504785 726249757 645441638 768447333 356747954 883247716 790671274 862866669 727050188 833034081 67690528 397148255 494491392 716716463 433367265 510737407 399800217 923452824 295805149 809988918 662438110 808219176 324079760 981793037 475732755 497261110 254492939 762300875 129574706 611005072 218799078 939150895 313471721 448605852 506315746 870774328 700418841 906444847 873612026 920284953 896676142 908342842 350019690 734196915 995737109 996386933 617676918 967386077 60976480 824750473 630063574 985253566 984538344 986498596 38863839 575254728 417453466 948731283 180029974 687116454 914119319 933301627 157371920 602804218 590934427 858284684 703046573 875484470 810821573 993823290 337160276 995196183 332676060 612985940 132531141 343415758 665574526 950783830 398539588 604542554 128977117 665277774 306845952 712888428 151689159 214747556 234174676 593772251 851787842 876691556 683013281 863423402 508842896 992699672 469306911 622112117 801779671 900364159 939220641 975365566 362264314 621123060 397954166 741555200 714287578 791050830 487701404 981741538 370030943 704474959 150412349 239180927 458302590 828101292 43694553 383462083 292324791 302519269 791673443 894086809 252452993 956154131 89828100 453702943 767582525 967573347 94162787 472562463 916629187 996877045 472687852 662706078 696103993 852527927 151207498 715550086 703419182 931375548 138102494 985417027 713020495 713189930 626131653 901981761 137113203 257929898 874532229 996954923 428833658 788270676 330977655 981657187 464865184 895242240 137290614 894846187 253425056 382411043 827924897 961064560 595603388 999728324 264825098 897979398 841488122 975458022 39730730 952643303 719815002 947417139 400633234 528666657 400586020 419674688 209293134 970104066 820114945 850858911 997263333 998651777 805863833 911571538 202285198 862747848 683532246 952011016 191312369 439212664 682973427 685377362 278113353 736199307 72924675 864111723 497911984 744208395 598720920 613022465 816343571 943982677 263292758 435599874 290880459 566603457 102728912 526052049 743181889 804228341 461736020 978512565 92986549 763407240 344047713 450478389 281152600 868061684 627527725 830045565 646932301 768807738 432673069 476147276 519640124 984064074 890648362 902985712 278772611 988906045 305211791 724253269 21239986 951335736 573189188 878964241 974779006 988139602 307021958 849514656 754667862 884231860 819638187 909011713 434651531 599263259 588549574 952237160 889270019 992856010 246013040 448122530 770646619 935329614 970746797 983741425 683420022 954630243 97524751 309982662 340207910 911676827 141442062 834057708 815406840 937825336 419384900 897926164 309890617 425357503 740505215 973049178 80499515 552034506 883052474 928441899 910726895 985304677 944460028 944626225 348351398 530110091 84516222 813684834 93555424 660235913 292055108 683794962 33750084 926136415 726562343 980082983 314440372 824129408 790984449 961882541 46074124 126545572 362485706 949819804 166484851 297451085 101315633 978618793 159522262 597080475 262922918 736488525 16467243 123216893 96502629 826371600 258429303 615896321 312357221 352461693 183695695 764482529 921232099 975058627 187589363 992249879 895419017 964822453 227767780 533696504 117890429 827418141 401196321 640653662 307399139 718654981 719290469 852724431 536552993 631947102 504798069 978189177 563424729 745377305 543140240 614892287 329060273 518443590 311076777 615951545 625597764 889067971 654806448 834295868 109363316 395186475 802568701 939040732 865261133 958298026 181443130 201902428 427726675 505444681 42357228 661661247 273219657 339050038 293881921 835328703 575083616 874373494 335232161 721864514 950075010 992649852 428693116 581818656 26849181 949394884 279554329 467784738 588269865 949392188 911873089 985418610 718956960 892370052 600986033 986150613 962218280 993340482 402132286 490884972 852847184 901435362 632218734 639377632 134847668 843462386 726582372 920330481 396836722 768297091 438556257 493595836 70883687 735703936 840544268 846658211 478427970 761638439 269245457 499750840 241044189 514168859 785961895 965366322 686667394 953802360 310250841 479945586 697921865 950607526 186239868 962433718 384510125 552172089 651216273 753698909 250665680 958014636 48172357 783980905 564321039 771166504 419063852 462520432 483781518 738575205 721284049 765279170 282669005 529482866 344637471 792754183 835343670 984780311 405052556 756501524 346059639 619500749 973823361 979585788 658870796 891591419 495787595 642293957 969899336 976370697 121278197 180954333 428269138 817127777 570917471 653663640 143160997 844735071 745519544 817209666 509116024 559075147 913691376 936089944 721602189 996254814 972511047 998969488 144630605 551845419 991147399 996769192 414021599 436067689 603291901 669000540 655109805 840256156 130975269 775126176 862922344 899852307 599140048 767953168 615347397 890671934 858250960 936659572 716300763 849384085 80106440 361555617 809627105 915468276 947435023 971482369 785311169 957552469 298758846 535280928 252765360 933640525 830238607 904733327 244650348 555215084 625147797 729164870 588131412 608987553 367908137 818309527 562335143 590880217 637261889 723707926 222275375 265800994 429137761 478238910 587256654 928317957 869660858 872525284 49176672 252690130 416277454 912889441 807482103 927090580 372535840 650932368 121226433 372657945 848632677 932254748 936365038 996201403 186319353 785794688 297818792 624071725 614735702 695505853 73141120 569700542 392164059 478711726 975387976 989940489 75915272 947971639 551690156 815201241 222584670 587615170 330511704 788961348 264384305 884438758 351193533 520829648 618774874 825708381 739696995 946755245 238808770 862585732 948252617 949441478 995988467 999798316 386208072 820298575 291179109 987643749 385973052 926839151 298654048 777485703 481735842 610566465 560843853 669311494 629305982 635495632 643247327 738327463 64439245 288761012 245037870 586958446 359521838 974769193 127680538 288653764 729438453 922422787 167273119 743720506 120428146 944233345 431745532 681140803 574225076 832559108 48305702 556524594 735929090 849163462 304500423 948135669 273750919 619568535 167575797 830827086 906382420 916127696 718824751 956477523 517204728 795701709 408014946 807344378 458189817 671115507 74828442 225395735 738543039 922639551 684199947 800018367 869278910 993090689 692171394 980892700 894862818 961242633 994659483 999920440 601110915 945035551 844877388 860361107 570118573 747882678 877281748 941667189 36727885 897434110 589955106 887105624 341777654 522211498 341791463 890420493 424072247 620901529 647440764 938115504 200046085 894282723 297410884 790362279 678511807 897436062 590683182 858367156 284999229 880306182 389144828 538692426 155391493 437912373 521826655 897703499 40243173 613030988 501310074 567577062 612870073 810022109 477943632 675377973 838663502 869977885 542675160 926397809 385570843 390568083 138021133 624868235 991108128 996322427 502263337 684163081 753456254 914201972 118880390 304798534 682914003 795751996 156466907 460604146 176164394 850365235 311858914 345859084 569334309 735133053 172227851 630258823 192695817 791746086 956671323 999172190 484267842 695527112 55296351 105088540 432976671 913652264 942004907 978739029 451063106 912273880 31889294 402643982 40053429 848023855 177392364 546014039 315074080 361509695 257054262 308865176 319949100 652970882 90230502 692082790 693805699 881064028 435488893 879516471 184200574 742677866 509488772 697533835 80411891 892609245 997862724 997992207 808151150 837472506 736328111 896019299 514744837 554682311 691217729 720490695 567492464 577929741 362671483 432702120 693189858 696656822 931028050 932752010 800919288 970830723 116722123 719437128 627400955 733121467 517063805 550067372 620172617 839433070 486232617 717906251 821146632 827903095 888450256 888595596 921184301 955763561 790389389 992799571 986953964 991951158 810774140 914808731 762366471 981692008 209055675 282545181 6262434 569992953 700465956 916488045 110816292 890658692 626523326 822904809 926041300 940816931 21826042 963359460 971142238 994654704 576234806 908198936 269476699 396475023 679730740 839413853 317493036 713647284 303423663 346522145 373668386 829391074 200741971 522168683 756533606 972396321 334256249 486276599 22220524 603543552 964627738 985393349 877692807 917568502 771771943 828681358 294190336 522229661 974962055 997690267 84550525 697290254 962597990 964345344 112927908 156663930 139787741 393302716 611055860 789912809 628267528 828721685 324127381 486833987 68814695 815180785 481176592 930168772 583220643 584957630 354601220 478186758 680800788 806909108 143268355 982701044 50612913 741073098 591856030 884943161 688025680 999959637 202544680 832360334 589957956 968761268 764444346 810510674 773736802 814296257 856752477 991527177 961881828 981616964 468060327 856462292 225537366 934203789 606523167 724029736 562315332 706271591 827643426 991014349 234365500 414297111 678328883 707546884 852147475 988226766 165472402 692382944 544943434 665711312 342354713 630846630 736430785 824400982 538708564 771701892 399887514 924381474 863682231 899810345 506519329 863096826 465094487 712925926 348525226 569645484 654975024 895386495 246364122 260250823 261088743 535595755 427110715 479687821 240134990 731251212 807425231 820692092 493558935 804698458 742897585 927015345 398552459 818308558 385015154 862310193 547795298 571078000 104525852 943613996 913402235 924163787 912911461 945086308 341227360 485528453 342865357 395161346 516377924 717993193 372984204 766289177 960277224 980187534 620341325 968421541 543665505 695453138 70781266 308675013 307592652 814943262 228951857 536251644 430259170 840093867 812639917 827387966 828817297 983183656 751000933 832155713 594860420 895370359 506146963 541727617 175724550 722233631 116670996 797216200 872465606 930941529 919761056 949572374 599606006 836274441 694871779 756168944 101133764 572952725 534271028 665372921 447046778 461475258 900571037 997940090 119029243 561972674 605002589 623940394 775731502 886608279 13066702 401435479 486811483 848168350 127683735 307354203 363436825 950434487 191560380 302882193 154864188 520348270 469697489 980252844 279519621 644704616 574300325 656180297 179653902 817342621 585317336 874214580 603714338 790282192 347228776 745143402 306533142 696769710 9635707 532925514 761190020 829102229 948654266 981270910 654646865 741344611 656798180 700354321 729508181 775696863 384263240 435412222 691264609 741201714 788405015 807239421 76354399 692151295 735697921 743991272 777796522 822479281 868217736 912845272 806652996 984049197 792596944 980796418 21010078 106299455 646436287 817724169 799027258 825132998 875301490 918859087 367175935 895654515 852341147 936139816 683894090 934368485 834311374 913513465 545933060 832243369 674220235 755522483 487404294 994579930 276620222 506135877 201437942 530798966 29420384 720268762 906384273 985476220 761355464 768367203 683663598 902280826 101422834 123238245 698038576 986163183 635690209 956219933 937817379 964123355 935854484 939442230 768381477 844308612 608527344 774215437 795240456 847598344 690774832 857639210 441544223 861874504 182661560 200018035 875460360 990676554 555553503 766587832 948927682 967780180 444691068 616297606 287407061 487471742 325945092 683078043 964806729 969917887 50668033 478287891 829837014 841904323 920307626 958629984 988098708 990135356 122289677 344396074 271836797 828731502 915583908 964397497 581632690 855064202 958829190 992018204 33320316 546099147 199610248 450413020 571580738 720563291 16959174 182212086 475263945 817405876 384035432 688640729 665256517 703879610 130310964 411794334 477360768 502216173 745672845 764987066 246808705 895613658 195371742 866152621 433250010 842926118 94424850 701917608 826799247 845925289 810058623 824450021 791957 145160604 257425506 713177376 558928315 571397718 130166856 163909760 613922011 809636470 793159705 938167225 23260770 572924241 351319301 742942724 82064288 595568740 529678080 968736826 807264730 866999744 739494392 872661479 529927080 686940030 571727862 687296564 569895338 604591473 717396695 908624639 471346872 852496098 266444400 980795352 299699290 366768584 603120918 724770850 982601965 998109183 558739899 757624633 521903436 652243190 814141535 991449698 884479936 962064614 942817863 944339410 393637578 412980187 713271815 979378662 409333275 577139079 405437978 739762707 207129127 499293955 242563913 623455834 109244076 238526912 456672357 982505918 656761420 693345773 993404145 999635395 550534399 965459712 673024424 978087158 886995939 978595727 366433328 784895760 219656539 524504046 374012074 871026120 97266876 313617143 925321346 951033392 233238035 932680864 759137956 807412991 438589578 654884184 862521851 990986079 406410365 761965900 416976651 639599382 984059613 998761250 841943773 921603629 647746158 754066102 719111027 760925980 314937231 408599607 87293763 728980184 705633088 731242887 842989112 980600868 793964123 841614301 616195702 628660630 630582183 737978403 736552883 829506010 745964322 903845596 977063421 977259158 378158632 710225313 404745902 979224508 852516006 870114335 914442 788135778 803923768 931523133 183721637 373843887 312615117 555204869 126596583 965743183 275791898 483423846 717060024 718357263 319854255 604483404 232366441 453128908 938102621 982138451 354534232 889709423 994759642 997100089 508631671 682214088 223838967 865736466 484586756 611918419 893372852 910645402 745253940 879148872 272107157 344255795 742214276 767166498 3374750 510421388 977935890 992907305 389005997 917651067 172047676 889021032 460253458 744035415 371084288 603872990 604954744 735657787 55586077 187482594 497770259 834696564 517083361 555861605 493190846 605936654 376493798 698085857 130299352 455018388 612445338 902610743 19505363 170096504 8180140 669021769 74193933 483502236 673921129 857040578 914180786 946946740 253210072 861788395 991515693 999635108 237265532 660435268 630545335 799097995 359431219 561070780 455225882 768220829 73120655 400568591 348588355 781130670 849864230 855081753 463877088 629081612 28356827 586331632 55660044 724537222 782162126 832911154 26659156 670604983 871818309 953118832 539128150 627167501 790039740 887412546 785850019 950646476 405458900 811317316 512542665 828483240 327263572 964855544 968887791 998092030 564557393 757834311 176728986 637543968 798645390 914280077 279830765 969748925 856048338 976213063 459692618 644013834 671756725 998588681 217442785 297040648 196910872 589369735 696766591 892634833 502195135 894905524 156678507 177552644 462265116 781110570 471090751 810219351 632487421 682045749 504547425 928168602 333144669 783052359 203134995 518060131 275625112 322586128 927773653 974309785 731352851 744487667 588764761 673244870 767447468 826884783 831561399 996059362 30990053 866146929 801232368 999852552 679053883 749802426 475123962 602707808 627469300 692590946 231204813 843128120 66202750 598290650 657864795 693778559 150991384 178427578 357360134 500547552 134270744 806808835 571303630 845321002 897460974 935200202 16975737 930566537 669741924 729827493 578226599 844471397 160230883 764213135 686710019 695870360 146409580 161109796 456896361 529672263 70965133 746840982 167313897 276267855 789083633 871426509 952939919 980184519 200597083 212106427 64619127 915159806 991887180 991990293 616146372 903396490 212670269 623190407 886214424 995808545 182228778 799211835 776518980 920171090 73550536 277878883 330296665 795758996 927792536 952192678 521131274 690878805 658495810 754073744 277342980 954608419 344719126 830240220 404051429 784814156 653410944 772478665 291460796 868658134 175154691 734912732 515217980 748714971 978668331 986003546 552059413 676795419 925163164 978802729 455513014 743577434 876596581 986736928 494697928 990692020 362784858 403503988 602553414 714367313 45544293 687100835 979751415 997537160 591322111 671168941 191501228 867791690 538441591 693168083 722213493 796110083 496394257 822153580 355206287 581194369 890924204 994187831 236001719 544858118 200840328 811861543 665469394 823601326 281037848 930471629 519393060 569376308 727224191 986340696 267192605 988680067 769020811 815116939 660319821 862647549 787037472 927136690 395911693 604277478 955994230 967268743 896987765 900028281 778246859 923766856 580684496 975624399 763779028 918218640 568654326 802393934 126141761 903199213 511715203 947681041 216375978 571463980 445658208 571296752 349088454 529781386 197443263 641556377 580059667 633842885 863825626 869016900 490678282 512052774 677090825 974925104 134215666 413261810 571521623 633389976 143748539 648258742 863221085 896386888 410395823 556080537 447907089 721538650 672098975 785754372 200740682 548490036 611511455 987309453 691276795 994904398 842207883 981788143 398221315 714375461 718372061 768361751 210995760 704856734 882628609 917502243 286012441 844025164 759023521 940085442 981221577 996327527 351240097 814227431 474026393 923867497 895355278 906316595 83798006 134131326 356524782 555119684 699285202 988943565 993455663 998753583 802992209 940035934 26599291 741326876 852451553 857157021 456519015 763331212 442384257 662441989 978764748 998942685 7891417 771946789 932123242 940212154 7222447 154355411 526435585 765500676 162772581 391471021 165026025 765711560 739612961 777538697 324193527 365691916 232086912 861186004 38617974 102326610 868479963 954929344 63296490 335014774 189831268 632336930 146817024 414898234 13462030 600372092 448536208 582766969 715408175 744369437 837937014 976594215 331292280 964633852 752323347 891488238 138375234 739291158 200790645 672266798 221692981 873435522 791987307 833963964 860810057 943694712 846346803 870129423 299981075 683421198 685497113 717572544 208140991 408735823 287935341 485474925 348454792 940570154 635279781 710829894 817902228 821968686 501502700 930566059 660038049 976964131 546807018 776414152 254681918 613843942 285792530 440902363 418889861 627179334 338198796 575136441 751370746 770224575 989024557 992148653 117786129 208017176 282605800 284680394 107525236 966468263 224914912 544608832 494454441 795758698 474870018 590640377 872014427 921099041 562215325 779991850 515749749 976946895 395639789 699233386 267080366 535960348 177540920 510930647 921404605 980942110 928457972 939379201 283538581 992160170 566879889 854460667 395742570 684366847 618147530 674744055 229397702 357545242 78418398 233584704 42408709 56595276 652870353 834811228 925185042 928049245 998577182 999037342 470768868 770050647 394580764 613599716 742155750 794334794 944146463 993357324 100207315 268676919 790465150 906089514 358120103 672512775 784806671 901513054 675672700 996507240 922630723 970763023 762820075 775946111 963188546 980718763 554654654 631561877 722048656 972030975 567781022 901747562 419614586 770985423 648677986 977846258 192374229 996913612 868699647 921853930 633512472 647449444 262729336 343119445 232744344 313082972 595931262 692480557 631183596 770687883 474179398 863197883 361340904 421970509 581141869 683833636 96565412 209591851 483246473 623219462 886792110 960915567 891179761 948168764 728254282 864970634 366165227 701130701 78685325 450638367 351887126 932827272 200765902 616503007 773413325 798502396 774721942 830267185 954681373 967830880 97165955 766104256 428203866 662657884 49981498 398475467 307989718 398046463 650992581 855511559 521048780 660573414 53691167 757403706 526166450 998413726 883068758 960222125 702909709 913179893 879202045 896535739 261076832 331585967 708975805 926505285 448940828 848975408 448642105 788703459 631441972 960599185 48305404 692914439 479699124 501121373 983974804 992793295 468934582 809602191 53250711 655419252 652909591 865979321 402188424 990014918 112251244 687597314 942384468 999876266 51388489 121417236 38853508 988788828 629919819 779377827 353622381 766169211 29729742 671754094 491464089 958317740 71025027 831137603 327019529 467686673 877145893 981515974 865152669 941665572 523134931 873252000 110692427 851685563 946247310 994339042 957839410 990763642 367216831 638401803 833252948 911305575 481344746 975454566 314760688 709773402 657541296 889349037 411968107 879274749 173936653 687146375 181470509 383839120 312710630 454563856 850619312 982248625 897475261 919814521 996881957 998767735 795788323 978815647 351582315 361854313 216663372 985497607 926809335 961871614 887233564 928310119 860218105 951631752 383673536 951786862 500913060 853531072 667886115 680961501 121337902 609689111 904938198 988163003 25856859 51953793 911011535 912813792 36229809 490977553 136338729 446424808 404845345 441899498 114226219 633743378 372643050 533425286 925988146 946329073 688529645 802784702 14226069 867182932 544910087 608766816 875121040 928834945 419180253 683971489 384347761 624034304 444541553 610531913 180963522 445692840 747367328 931964219 534752999 643636788 897751416 939896294 281014656 356465078 658879589 763754596 283048210 910217813 932034477 978342162 373813470 469995197 120986320 367969487 972539727 990628166 340951147 430571421 603001139 850958365 249291770 441712878 498812778 815664777 986926094 988864925 121383974 654541428 429982068 682310908 962161069 985890363 571874807 711385082 770111950 809686022 567859353 779192451 572016475 898185896 902211138 988244533 9700745 84570471 108914838 952345706 145293196 892349890 583382644 594699750 993326778 993676526 607665499 860274687 730227880 959827038 270532498 544367386 314015096 565023364 699883921 726736898 411475603 790599808 22229453 136604606 911273399 968381990 843077454 896568978 214518727 325645055 750752893 947978855 692769694 940986619 845578945 906035263 908664088 949832163 683791258 742942642 956742341 992341832 948526476 982105757 294492579 609129396 872539497 884192096 425787703 985541790 15413328 124989949 719635905 746457899 639537030 781764013 506463079 982262144 237319781 974718829 344463896 496201737 682989626 739411953 211304243 489679617 885375542 991750086 850735752 962226683 480046229 664874784 616428404 918306295 195456905 507114229 23899191 160328353 319812565 553833373 29070675 152564327 655329993 856531539 584477910 941151022 454833955 812864401 895743736 970221429 180381021 970585672 589842215 710271744 132295552 756117524 135052293 232187074 200753254 645428289 507157272 743575243 717837896 809951353 691076528 699561768 67220319 283774701 828878778 855656297 105400404 275137221 225089091 900668894 8751612 189866443 249597842 939468817 665692866 738712146 203366671 868594387 594845138 667684298 319670818 480459869 648953486 758432570 176346081 927850988 285812128 891517526 621370590 679421834 180361674 919742120 573889425 792682312 699945251 940261003 623600677 632439978 168410143 422316145 345171955 550609517 864773661 938734670 261676710 949569383 464453082 496260720 967320642 971647771 18393401 510477126 411897472 905237922 124196701 181669411 902512760 976707346 23458618 680279622 996378277 997428510 753074481 812802482 61513401 681821255 808887283 959660864 528669014 925433568 636193290 871450911 816788348 830879807 207669482 412548523 647668616 835994461 605637285 981499531 861597290 954249699 337912961 419476691 526835610 586858607 328755793 724537403 815890293 941277244 281371152 760663390 185253548 565119073 20266906 520501395 305081821 859031415 959082042 978103958 218180383 221672413 400380372 734826068 745252608 958912769 352854420 503672761 65860608 439801530 865385918 920500897 675892182 746428527 842201519 947307703 417222736 993060043 491412398 901934794 605285800 685183089 545065034 985097862 64436865 314983302 345798634 452392942 124421794 467071575 119302929 806341681 322967604 904364500 791916000 938429405 187421671 521294698 577886044 774335403 228011978 885207711 943281648 954454871 885333229 973837722 321174374 946552151 966857026 993207847 404049804 662735438 303663602 424368218 562690218 729498065 891045058 935975979 456067738 905814794 660378965 767183849 147845512 587513409 873245423 940037518 491021941 573006080 649943028 722492645 171636896 679034474 120091817 772686376 597170631 725868845 335471698 387268725 642422487 842638215 776132179 793174832 27550187 631889820 172926342 782669814 126877572 234916918 427403618 466497095 117016910 795729685 646912944 857035709 231379398 453918315 578927000 881388276 455391938 538206503 42445841 679606308 869062863 877156991 671499143 877502208 512034498 955742600 931585273 941678048 501977732 956504225 662877463 964182793 971605383 993623323 194520975 617418597 805019729 864777662 357555327 755326618 854394084 861466896 405633065 498856558 481482848 988242843 730678253 829236307 481944860 824551862 7612050 964681327 388263578 799682532 865997014 942014480 519057297 587036868 686192910 995874527 581454472 675733300 432502870 785208194 711737593 858856580 527650200 949527461 449218349 714759537 360659247 847086390 310222844 834720220 288503832 754088016 118706033 784221839 554338860 840627059 432304169 529621010 454645979 754094358 69289377 699869371 522193796 793397894 212676845 617597154 400353697 413099511 356208349 698290405 975402641 995052868 190273965 632595004 229293893 396617004 343821867 542204642 789626140 909546060 914030087 978841506 183791289 564163484 954835975 970713438 405895397 857280858 753876794 786348777 278518874 965123680 158528702 894596190 655828520 901033341 793659640 937601923 938632293 981729099 572221033 667025084 790700182 836511683 244959568 737283073 139318168 286379044 869305893 996233666 114762993 170382625 557688367 705377427 662318799 723724981 350836911 907881000 138803743 627451696 340553265 415527302 681257463 969726175 33188002 97742109 916821410 920749195 691146067 795080367 385076090 473890346 718208444 924223294 413606035 906475689 512633919 739614456 911357153 964145629 883277815 888447547 285718115 765287043 768740381 770658078 5380793 412845207 763367779 907867538 721991769 869829156 386222111 787084044 516621830 941888256 301110216 946445362 954937968 982040165 149779663 400301982 245298587 998038912 910397810 975441593 950185359 989263335 282858649 615521740 996144454 999131370 857991923 897888215 266108885 431140447 740075167 887507157 515506544 530341118 453035786 666239987 842226385 874819726 101348690 881968260 472271597 776069359 637017209 845032425 686120147 860057165 760366210 864576579 858502644 973247055 468229390 554989856 288494903 864787308 406451528 904626496 757177086 964653043 709054295 857867534 467781834 918883461 260521966 709036876 27993798 811073205 228771223 264015264 153668940 888502827 271455342 553478502 181995368 554138725 674876452 972738297 546474098 624956338 914292488 943609410 40421028 842325563 731818236 965282866 53181522 288996554 276552221 329453645 692731579 928204192 147621592 745056100 403775626 713016197 246830306 974004541 708040833 779198382 264990546 604269002 671788666 881389660 330555428 584301822 735826960 790176747 265710557 422382003 765099571 822429497 580005837 828774942 347228334 792655904 369895366 790778767 701853541 713351837 831454505 845360186 446342555 787707187 472265705 893615376 613181309 907782552 104834911 738178583 766030302 956133250 661651977 887428687 958524325 981772376 14829457 270304750 181511158 405568377 81472710 726659834 187314012 829775400 185410809 377011088 638330198 851484234 667922992 915487642 434200619 876335774 456354165 787022513 866793762 902690700 165531948 392525602 802092781 992963104 388806955 916411028 414654107 746181176 238527293 471293128 155637914 292161648 96952699 682323719 168963812 764047746 947587236 974605002 372905732 522455972 997435912 999153578 41631439 519635254 961232691 982326292 889147918 898738820 168533286 758611915 81659537 95281904 142217838 922582584 924013439 927723868 47904368 725135657 658994082 967217374 362466781 397227915 106354454 609344667 848709793 907435699 107485775 153554162 420906459 693215397 317222568 925775444 289769907 953415729 455379648 727851875 502229845 781288755 404298306 634731996 43596217 726105100 258156377 513526976 104417468 479822606 708201747 832225342 588872198 803056568 266634818 421728502 817319027 888907909 916372096 971404869 74897683 533684605 467343180 827526697 660754998 851367617 420033911 718436307 568232232 853613536 695258642 949745176 311328649 580282049 163814146 824896098 456878442 461935678 835385761 838337552 860586868 915714652 416466368 552029185 983567016 986702672 433253832 663495631 476651790 666152905 843104150 943593766 239169388 511975176 915440614 929073424 525037234 972983382 696880491 917927901 701394050 861920936 815708668 952385892 587123755 692280291 595783602 731370959 965581820 970851175 708358898 774355485 533449458 646075144 930871552 958763577 282672458 620603319 849351578 853557028 505845153 915395229 819445483 960404777 977543568 981432553 101696764 493880014 535177264 965105719 3002740 861832345 387555572 863517787 448798768 590209131 899539801 966929283 394861430 701624944 335143790 812834182 548369748 877859793 257798586 301093703 183349408 366686499 44276786 224360680 136081719 516357609 153225627 873874393 293208901 650209511 835990130 863050836 122414730 859628340 153897550 279907019 683214308 991298099 864719670 879209573 636837896 756910380 9601709 681882308 719821036 781084173 217877010 728965812 333178287 372040417 114239974 195194832 383210329 427181394 958687876 974809195 771425939 840709187 692653013 760591748 458211522 652569774 864161738 977345190 109902087 792527498 378064793 466535004 129981961 890051312 470185754 847882980 312055809 754972645 879574777 924732343 66607283 539858043 597517220 626110631 803715490 811823001 811519896 947175979 321483313 635684421 841410705 872024979 168029778 339765214 723981535 869042616 489833790 877990476 789006356 822300084 978227253 992853242 121125436 419443753 98789879 567150555 957641308 995591766 801695992 906164466 325125002 603199124 485211374 919192903 64567827 972407182 148093673 764582762 97555919 921632758 854382767 893806532 553006312 700764259 391882624 760941473 839433007 843435691 345562935 498141033 587420053 732900112 305162078 836295830 290988181 855559572 113701899 802990085 782936115 883661230 428826996 960135639 969926582 976257437 514677522 873628726 974797988 991998089 240113622 671035507 549353339 603247935 657284451 900888006 109714439 194069692 503725232 907516252 85391720 941397784 900078435 993504045 295045880 664017278 596641427 934477486 955799990 983018457 348111639 938766262 195840718 724912397 863564649 934482722 916044880 994069147 424643293 461858513 590415068 721498801 497366553 743840598 874087641 956707711 956047365 993313971 363950721 738301143 722011420 949272734 188822585 453564149 947742881 976445407 102045490 289970651 742942359 765499573 337187436 453124409 803562309 894700207 159068968 223964740 428718687 578870626 229428236 664617578 733857695 892940373 116702035 287594485 588606876 924029552 417104840 939405280 417312802 629694021 67437020 245110064 284388170 961846949 102771648 763115602 755109239 957916580 240018280 958263884 719181036 978289136 527340121 857653986 793161027 832309635 172408933 227816355 144625308 311920355 898922795 931522607 149071337 754097266 29879340 730691956 222855649 991058092 76668162 605341003 360497938 917289880 915801481 967691805 833429130 945108455 763581762 914557319 774803037 966978508 344983392 820293801 628555957 813674666 52632855 131438007 850946157 994815559 723366051 913204284 438204443 795231390 329437938 979488065 410213913 731156042 367525852 764566163 662340779 980963520 241253645 608220655 952164722 997722300 72811135 445611012 732455668 991883976 980760073 997542860 886192849 984999279 955006091 966740171 568249126 869031952 110020259 160302862 618630392 843315236 144903560 384278600 278298589 297614389 846618022 966969088 404671611 689748186 8373579 856606688 445545298 519078906 437208062 791748454 472583961 759570034 843346001 958811545 273476738 366040246 828697855 843607801 793527983 909177881 282603719 943837086 730175056 939780840 529965164 539387964 773569226 839454883 870012742 893053842 849020647 990756449 393009901 657661533 219120233 395238453 422807320 673395262 66439687 722147956 731125452 767576936 825349245 889504165 75684952 309481793 726055753 918022410 49308775 115404195 906911198 977691705 416261398 853539168 935479670 998782703 70807982 229206650 407399297 886435226 474580067 942895030 359469514 837752419 767903964 812840037 54307251 714800072 112572467 114459067 198948366 468800991 139247498 220011401 609008302 629836225 338410470 561182871 121021256 157233707 984989375 995871331 855517557 946491561 736545365 790619409 509520573 553904990 729436111 853720987 379962301 809202820 146941630 636174139 299724815 965269764 810200400 842325921 166248924 411217534 138369773 638961200 11592225 481073806 97153737 476838579 511118361 716687730 528544001 848727952 170436046 389369545 535267326 678887993 745770877 819652604 759854525 945380404 623062761 649979307 86479966 104259180 687394451 957519193 939338810 974907960 237819977 466382495 363744475 657816691 61936366 221629124 952390515 958195469 274388796 523436507 19876750 738241033 302963736 450769429 708013266 739338511 424500804 986147444 129557132 760328225 3809829 576432696 207701945 870205289 501504292 590161093 341006589 740566531 815594472 946831546 942184649 975071084 477386501 794599465 198732415 694576194 594104849 848875909 552521863 694924090 472977354 545119254 375238588 788325045 447818682 602513803 28722037 409500551 815503116 821313649 813018522 885851831 413665182 445974119 926885334 970129203 540335098 871207513 564570470 657662450 956713215 983851583 181443079 508660148 933530793 954526196 925503129 999337031 177290088 579386683 573958605 911962514 185556820 319396166 865100870 926080677 951267061 964830850 992762809 999631737 532551162 930231492 917372110 975245292 634348013 960342143 292184051 990903549 347063401 944130737 595382270 878469504 901379769 903326213 623476122 944647886 151537118 369051365 702503073 715820143 334000162 657963312 895722701 956905007 926584857 950631395 403646387 822355510 810681020 906632564 20247734 787363864 565833493 617470979 487072239 931405621 145751336 160515019 168748082 215768282 885325664 927580527 619902956 943302015 416123367 659207922 391520906 714411359 434943578 571909126 180758153 552607011 656117120 835342544 435093702 456403665 873845236 941610135 408488868 772941243 320581151 664071358 451266374 639075881 680378509 904348966 230235638 913064957 25606933 65757608 901696517 931943725 955943233 984995804 567613606 709650647 885581018 931416333 880730357 974215327 324572956 430537997 990494492 996666229 784573392 815789903 728454029 743463063 332586617 649276868 180165931 803294716 912024511 921937471 534717155 659042608 344285727 664234297 33411164 438729864 85464034 606706959 61834035 520751490 31773921 886364012 6250297 102899968 29309676 250447259 401653113 859786223 693570878 897291281 904835320 988963325 823011205 948229484 883579244 899237902 236543642 863028832 297805107 336949776 827410991 936942776 23157677 989641641 650441294 898190073 379680165 530019958 653490967 932275738 879441142 987534825 569124805 908829204 592156152 651243162 544991238 936331801 170432767 437081665 41117405 124454011 618848332 946022622 558485000 876432055 690476925 866719686 60952918 676768616 491701050 589202275 636641881 674980305 247815094 532974063 977744667 980424704 320933114 332531930 27155267 736873492 985573850 987810928 462440736 984332846 948050663 998775999 51640763 711535680 495456808 999870543 907349873 937624052 416018709 443910801 373176107 652370738 755494342 935043192 905760580 987936212 373758581 743129320 101474573 676117166 539149960 856151387 953074273 993536135 629092748 655126676 158381988 310132843 264799912 704710263 43609464 210666002 94751656 797843930 751553708 946211538 674325416 837452033 988072656 995412840 270951614 535273369 696952801 897018615 150497121 823204114 170613751 585778723 295638802 757828849 614216749 893757194 124050886 931919907 861568490 886765869 588554120 818836826 927503399 983714356 8357170 196605465 792765993 851874286 613578442 803987134 269063323 442979085 241110098 791138309 518003255 959070701 769915817 813478590 424633160 627850769 587837146 919288148 770212887 978831234 3161998 889994028 277766202 776553741 173357495 621545530 789306694 934502725 77343183 570406274 179272635 441590378 832307003 940403454 222887765 299036437 20826303 197122173 546318423 614379601 556304871 955980458 16999554 194952814 342504744 598204230 667744655 949426478 837829933 839369849 494873562 660201270 598814256 867286812 371432243 462440878 351149905 654162254 905431691 967776860 413392841 850404846 116721425 673005323 867991065 906224907 803601295 899952378 56094383 664716542 245404814 400665988 495678798 718396852 228867135 759436646 950278342 957089104 557364535 613212676 768630498 931945054 47503229 392824058 974288823 975857494 398539607 929884696 847374005 885447121 547505225 712926698 488706600 804025206 182780196 307437953 852322118 939515638 117575894 531654811 616377803 707088050 617854100 940070248 924913476 990549941 53671359 95706933 579881427 591567835 741464038 877771190 721007469 952449156 441583077 454845279 237472868 532117824 853475649 872478516 954480081 968831305 494944318 812497972 616869589 828196711 328924211 933411055 922808683 946026080 36144478 352278882 921008096 976811419 291596562 572932597 584677299 938097974 921735718 970585335 103225460 872456634 115704495 840580516 416347485 681435338 596153556 609798848 930591681 939893398 833828913 958272307 642108893 688600915 136885725 803000259 829131735 987793671 376999775 917065250 995618895 999315448 884575921 953806423 827813515 864296238 567551350 738368053 245260163 330249807 540890714 769170809 454271650 839678669 870551099 898053646 972212949 999091073 681978781 712183876 915862991 968615408 408028330 550342801 404100965 812180623 21082165 823134729 554745202 685210609 152341743 815432958 557628103 866091536 831643342 974791333 211041930 307958887 602467611 840174611 389557118 394645416 681809097 794089755 605627359 867890533 412847944 616344392 37184290 845727393 136933490 584565117 547411679 723530054 295792212 904383700 132603453 961269465 1139462 680147541 844822725 893396557 566016586 644154278 286989352 756504353 929623722 968297856 476621828 700837027 310397710 609402379 344766170 390079419 222146967 463611020 211825417 786226276 735728484 780292043 381629086 436119922 501262688 700251162 86642651 876714049 334779386 446665111 450829380 878179093 50719700 918309469 421968426 954816638 675546409 699201546 470091981 659190219 774338279 781958131 421452456 978000008 83149077 342400420 440488605 486404529 99794494 267727005 743866465 842174072 899459874 940648458 607858235 675513131 973447204 985528599 294258936 385695053 63834500 654251008 196793903 512743253 148229364 570668104 56509595 329166766 847106765 909076075 406688256 991370616 706010806 910774294 244446507 374967283 996865530 997708407 388176425 874788328 941656077 962976678 524782984 961099617 287264691 374318352 293748407 994148520 101246555 114485894 815234096 930646624 431243660 868983420 231189245 897652085 505529746 972546970 728617925 850633519 597749304 725767398 963540661 971614644 737387056 906884775 521102220 687441398 657022521 949181956 353209806 750801337 319630113 937395735 864414224 984725706 572752630 850510559 671047276 783380293 541694398 847499424 16946036 922819404 99246677 555267149 96215620 280511264 672913907 837256165 185515150 859052139 414917348 542263989 406456088 425685610 580368406 775083341 847770635 856747432 323545696 447745168 256572430 302210799 327761023 408700336 960461975 969499253 182924123 771298505 442652474 546905142 769547624 941206809 152979089 202374740 593510192 837003432 324572074 424949827 695324040 865119126 456686287 629172347 530361167 900264285 330260676 906299265 779213690 846709597 961221801 985448359 627010278 733686784 198381029 478881660 380532428 568237276 850828391 959042699 413602213 776024134 155556103 249909388 440661330 611647147 530812449 786844143 355815423 863865598 464999269 733768604 325680625 954613545 401980593 892236427 483088857 805605941 138486438 871921524 812857041 892059336 16986895 171885604 890854290 904729050 274910519 420823557 84776827 440296573 491900424 977848932 269892286 962323692 676152926 856592410 380238182 695496229 60788363 338623535 954276468 987251044 314908485 760455353 763124549 986828160 468554552 926890984 24377292 421264756 421372615 747619392 695122002 740048905 210385021 653870998 37923231 747516292 48929536 436810321 382867591 401628044 827118009 940865963 284842364 355868966 903664405 973249103 341076810 770739410 320288341 691917782 605403573 903388544 437170496 801078531 425846105 438665155 749208178 972320752 497378807 888702690 239890591 523220839 653862374 945282466 39484832 833591682 912489879 971905196 435552502 716409356 927754717 951265727 669739415 835405561 693849071 864067684 176048314 780409875 566596669 772800679 574198419 663851035 314249351 822563716 533595166 941176142 30057439 391751700 96102449 492410124 955579099 986330703 367637052 454829603 469176590 892041988 286255302 556581987 730118728 996185797 61660563 728348970 5229775 634445374 896934309 986912925 453554163 480898085 465541270 477701669 477379334 746809484 614723624 632422630 286000462 768723849 438212357 608186232 829593092 971723536 198776130 845052557 636123703 994542787 914599287 997481822 195214790 232438415 719715472 983420436 747460157 785493231 188759505 755864120 753272496 892304368 550162332 656388510 420867072 450145915 887874647 900556275 790619240 814989787 526680630 724605754 357462130 684813382 125133613 420226079 879917262 893722735 427792887 950644993 21889098 442171886 975000812 976490353 8521086 132142247 822286724 963412538 339248435 425603287 266905053 730202534 155485530 348989837 76520040 660503776 98487367 971109054 658639498 717209087 44175961 386037804 958649568 970158416 423601831 575552858 885681899 908521390 91146100 688747907 307927023 422447099 399165385 855057086 172449782 245207704 864582051 879310649 709108075 932099337 532107075 777530809 561094555 606967014 429675281 595313841 417549971 955403313 544638243 660473416 231985348 881779179 834979603 848641560 375570101 621449135 380250932 417986311 445167401 797721357 893284150 983406589 736725623 986773500 83919308 825167690 955615486 959252514 463727679 571561333 915258537 984191736 817371268 966967342 445584536 514511994 284778571 947047786 492074456 653525219 805934114 844077122 837097752 885113978 271897250 959881569 591135302 621003133 848369952 932650027 917864381 952178638 344749626 422336641 227206678 578886635 676008520 956846044 449856854 715275884 898609965 919069892 80115226 482933031 849126926 982603917 957727411 972002128 901899216 916365278 386191460 422923116 14607078 233250781 286258245 332956156 958790675 971347571 73173461 481343658 576548087 830000294 150506499 925298521 944129102 955324887 193963101 995372082 935807516 986729406 749742326 775249959 268457181 301390838 608252937 951539660 430367860 822087617 159958646 480580629 215540419 912013573 152328527 179793891 538352983 628428134 78934917 203913156 513302917 832654869 198656029 574189485 512240681 950788952 695493112 986372765 990606764 998946828 949583925 977261183 726199839 768868814 296673675 681730569 465984179 726021080 105385387 902453947 378685510 416983182 315075914 427933510 698128905 800281321 884629638 895594875 681188879 737291988 989638257 999861512 230521997 827111489 687158687 775360729 664572717 945457739 344374285 742389185 318199287 678477695 565258637 806363401 126373223 962888928 810763413 834249085 951554702 963008627 315889875 937781440 854118899 949270450 100380457 823251631 143154152 205123135 971366547 994706803 730636682 776956623 337105931 339358609 142754030 791793101 881361084 921365489 929796219 959723688 960976241 993647919 724912154 865809294 562735789 788536279 878431012 917699636 632787886 999508606 544800874 638068373 15348748 413292285 793707104 843608476 863287488 956791929 860056880 874883784 826834122 861772205 320455213 812520245 540619610 930253807 184153643 294266620 28165472 562256744 713823063 977440435 325714935 529996912 965886619 979004483 674001579 854749043 426460190 833068149 545031283 831764989 908510629 911717785 465428817 473247360 667915539 786259316 879216084 976979758 718503597 727354563 40129801 542338443 968721827 997451167 640161460 898257507 905962672 912418977 470448721 753267709 227184714 491886813 64431471 858765682 518751594 534865287 415693402 975361302 285745551 754270290 234225105 694883241 53133281 463939542 607266737 627395083 42805353 523068378 66392454 738510604 405270637 758531219 119963613 688285748 113104696 156238514 936450954 983534484 289958903 685601887 438754755 855508159 249332751 748256217 420120619 736762045 75294554 291157816 861325432 914527025 941442149 992410013 494807083 576675411 881516563 938261030 431499490 942915129 397342201 723498448 119350436 217342557 576944428 906863853 479545340 766112855 63613154 951410271 583670399 694041061 682853908 904967338 490921754 977696729 187821121 444891373 460470716 709164961 85726733 252056246 864404847 891804721 467587205 706499901 7673129 647253241 72100810 135930006 598741015 821766911 450885745 573544536 715281254 806648981 217909803 774133969 484180900 761494592 675089485 982354805 91764874 978535989 229832142 765951249 997516960 999071823 244197718 309143564 220924125 397030205 752505751 881805061 393890285 799938024 801968617 935474344 263170451 734336792 533116471 548252806 206639610 738782012 352159480 853320570 168066322 977043166 848941051 994508561 734086004 736815498 478090909 917040022 40297709 880307220 975034887 988983328 447458396 986002337 742989060 855474248 798637751 825965184 500676685 667471269 406439095 597285295 288576036 550392616 365082785 943415121 864212513 869473731 886351950 927009791 918858972 947878573 222487543 786208960 141568828 584730839 529154809 965816424 794575339 817669836 265851809 388142742 123836466 757458931 467047833 502298308 374206904 815046970 123168573 688529956 467378143 595031851 835615087 883167767 718368387 834102143 944888835 990483329 931171684 951128124 598519541 792008057 905366367 955212324 139918412 785646843 559629645 788365890 544672608 761357950 956684981 996634084 50934744 503273283 785155439 845631598 819436740 986751826 371561542 708592021 269937092 407083512 867708273 907685624 489464161 493344296 790786383 908888683 366031255 937477418 753032784 900707350 498613727 995814910 402886558 491555473 351694168 694103740 110493429 287844987 614957771 679539246 845533602 915738859 206553930 389760488 640805591 995337695 574666481 641174935 661052512 771146495 959384448 968961679 916104840 933871292 264532956 290985196 15300059 140495634 742814702 868200661 24084909 137765972 156614913 325233367 685126612 755880364 408438259 617132116 259980008 699572391 75131976 611258197 273661956 657459975 526332029 730254401 477231505 509222006 696070021 730853554 864551731 869150827 207878022 393181629 638629711 656776219 890108056 974003836 341423982 707124911 504271396 809604118 811746899 925948157 498637563 904160767 855580553 966341664 670119159 826850864 111342650 588578233 111852684 256587110 643331873 800632697 74039915 282712755 281284803 381743651 522845005 630015338 47920248 154284685 463400614 725140755 110661296 774921959 721957082 741663603 256161015 866903096 238359274 670682164 182516083 778863091 512331013 782010519 13866541 879191857 557233363 921240003 576199099 938751918 97765037 855920872 598356016 965121838 741950110 857061141 667268303 724728929 132603886 686540560 473113214 653268272 756613228 789958084 404240868 737723825 705266377 750300650 907838342 989671727 189220149 989630361 964940649 983092593 629196879 964838656 566241711 820009350 955888574 985915237 934152976 963498071 396251600 993967139 213127664 789738239 798628580 993553541 19873503 52209950 60730937 724064529 249297121 715357680 526973233 717500574 222962857 848731878 304061244 472253967 412139742 462362041 697583265 772182971 309262405 763761151 775803420 975276637 100843414 861869139 505560677 994721899 157733730 259315432 119500079 455360458 202955662 709081107 556344989 798034693 697233480 968150714 433276365 685433661 220674667 813240833 705094584 814943292 615594358 792163580 64127743 635450692 580691217 905827187 265166180 940155580 881081421 969784524 208107031 414773769 243932274 308238534 648566276 918002505 801052466 806120335 177943425 292979544 276353976 627573402 477111411 589677617 195832890 778946161 375045200 706070181 863720684 892129683 828861454 930505833 281167988 360053419 24546496 394700345 538371094 731016828 830846257 873436440 390963718 750360052 788323395 798129382 339143187 905020775 525579917 528124280 49637927 397449287 806732441 972531315 673992744 929146828 888982748 917695212 722307454 948887570 940829005 952509872 129623090 410327174 439377099 662329865 269763971 889202148 843099196 893202336 170435718 989289344 599971920 800162146 246284283 417613643 560511220 948837318 426461092 835795839 992916314 995546225 619640804 667062371 112084832 966286085 648316996 938585026 169675363 892693447 510159603 987867693 331440509 724334389 805647933 974563377 380009668 748460941 167394932 532938946 966147896 975323300 987305531 992749342 298665787 998545503 954252386 999617618 33640566 400306192 191919447 319703164 324313584 677787033 225514260 262923498 845956619 921209393 93375018 246400194 724860724 779599883 616076592 919643562 453208319 563037769 838298349 909507524 727012024 898802197 403237183 502473589 700167251 735774765 412699488 653781905 79003663 438068170 195397499 558521158 105686569 828475281 5646845 18074473 701875992 718663745 626811192 642348388 83071139 194594901 726452200 932928932 419701230 968812782 244792805 618244587 525582642 540056315 293220271 573443072 136671598 662062598 705174621 808909398 244977536 685088743 121892518 228503024 620294596 807779811 216113141 436801799 233070014 314734326 39877141 518723023 66566433 472624199 28710951 887076286 72652767 291811211 358394777 484440976 321770804 465130033 624344594 643808491 517313047 867612339 222231735 842636249 835029896 949783919 485317157 540171872 878877416 931084321 527883329 996008966 759405308 764697366 786390508 831378764 605550269 859620271 120740557 635065317 368285779 402352724 206680062 701002559 377735361 674659521 806509561 999873573 772145770 960111507 208932517 424568116 32370744 722162413 198634286 634486274 450761973 679458068 259524522 785309744 664092323 924632391 228191022 976865204 106107964 385005579 874169128 918940520 626996479 827946808 771128849 835277558 692988664 908171845 728633681 751470496 973873233 975774108 456210759 617439126 932618419 981169682 513484463 585330618 355780439 665082436 333684858 718146230 586099188 974383455 272888114 510952726 676940313 758782581 521225708 990199330 397747598 613777608 184818877 296274105 608276334 728923179 187245477 810009410 894101371 913854072 91391592 250706287 280689548 955574999 919091803 924204812 502030786 942997039 468057818 746983926 815650344 882440050 648815641 669752162 745613406 754898115 721791411 949050937 303053665 684900058 47700352 454728375 721007301 857328917 565163249 866199095 792013941 805948402 56482667 936036496 597337146 682120437 919194157 959528281 970315503 987194862 537194166 926552418 274635680 756545438 163757983 320596163 629814133 929067416 538011911 885430822 583253597 817763236 736610516 896720445 877620897 885132880 221571161 267135749 518723819 785247900 454912777 779727051 690887233 877947968 77101971 988356909 414098367 830461037 557274756 802006331 494366199 622778277 197478885 544407608 716601124 905394680 78988030 730518663 39639035 898345220 494727437 735562745 634891028 905449075 419349153 790037712 317467511 881545356 614271659 968321413 179119418 552241760 714486232 970877663 186166752 302291801 198558255 295942744 367991354 816815881 664792140 924661117 838698023 969883659 970590478 974358440 668385111 732832215 328792504 744155993 335754449 681482410 256436892 682734065 226255908 891145585 663519496 880642934 295358206 553581251 352197506 617906410 370184778 743745059 166157101 198060667 748321175 811308337 704616148 916506191 850255002 908781942 329029745 429971824 28849297 55997278 831734517 949605221 878443494 943577516 793066928 929836240 354777808 472184937 531385873 977183830 227543911 228123665 193494316 297909710 960333253 964853466 779167987 788059774 248856673 577895417 739219397 971596254 921209127 942797670 238018505 367008626 487834411 921514577 396032829 887307082 943945843 972301406 300888366 568064453 498948960 920103712 247442086 666978907 788050547 911590387 908344435 962872640 356971929 978984759 328162824 569518804 386792355 618194112 984474383 992679563 616233104 628329525 326958217 576107579 675650112 868167322 907186543 948253974 409179519 932347752 445825244 639308561 256101394 308548255 697079654 936858481 683038611 811777783 390559423 788681640 922051908 957838969 945442496 946860666 681693297 711515517 678388044 878238543 729725535 924970066 573287731 731686104 820845454 834075173 755980660 807474465 193617781 378381772 574244067 589591792 719635875 981147984 519044485 788160267 554506875 815403414 614845203 668642804 297209223 603012483 9053204 709551396 331475315 551789232 713837845 921937379 974242971 979853277 961885297 992038317 796106362 998826123 739842908 904580442 712727120 752224761 589238896 666296546 838581546 878993683 378036482 960176453 683753121 977310995 197546222 544834198 799120860 870362017 73891090 346172022 222981068 958560895 328187942 394656893 844397268 865194810 140177821 295520962 161219161 239795928 288834510 877980867 289140457 609429807 547937139 934580660 146732389 501548342 391604259 497446551 493068423 811981406 459322051 708189491 234738718 620482074 428491737 571614914 336743216 731376041 928937536 969690311 258468688 787206980 133452298 141504606 491523639 853773727 790755236 982814906 34778778 454342816 968542075 980002280 121212213 274355216 221426879 623864504 789594449 870372905 60745788 75673435 396898002 894815857 639077628 716908277 704486555 768533199 85837406 259230343 535376548 959610140 698212389 742916648 635511413 823541052 549060996 889807108 884068689 911254927 499100689 534336035 501443710 929717236 544693120 989207743 747232488 882881767 514184969 711477977 728790348 795518717 226304147 802919209 793245450 955744111 86889301 511581043 517323682 538949611 325352493 811205708 418765709 950139508 90703586 863610742 800363024 837863141 742462859 906717661 468567940 895380270 199297155 340366582 217542901 255521111 116834008 442836736 652215639 858836303 339225346 726897356 407755182 744675295 840453296 920957295 911927906 941267760 580513956 959088480 328758999 436275722 59986133 826637799 407400938 872039735 330035698 992261877 514714097 530092804 906754826 938756389 555954102 777259415 861869219 909335761 659194990 799624329 567516854 912503796 566618859 868455631 142383586 476862550 742931547 799569325 981542685 982453093 236338172 479746840 60345114 346435197 577376104 831867182 949626929 980055903 992491680 993169821 923750188 957381765 462102603 538809488 743405388 815028902 753936251 832473500 778399006 912946076 374279710 538640927 260556270 680970882 720455727 848719172 126311419 386478184 199209456 249948274 821698819 995632633 890565860 964492355 885446098 984790356 389513554 405597703 85937317 524943821 486566302 912504067 486765193 513785671 480359050 654272361 798803016 813475100 149349767 685892361 683112570 907792928 903538816 946365445 525295045 648414401 656632413 846912711 343186966 711886556 968465860 993057697 874917543 976743037 339746551 784750909 423800379 680609887 472378577 959614176 509798571 972569993 851163003 976883440 176147350 937743184 188776894 863569596 132333751 594328112 675290470 914619481 887233649 969215270 516518521 589247571 562871665 997829150 556208042 860070022 439705397 909516937 225805281 340612519 808426375 841835894 554544984 828044439 888388025 996524461 789538623 903916461 623986955 821485561 288076864 565900618 838245442 950327288 132565607 991693672 34975680 716951894 8613328 583439745 686803013 923506852 487588633 670256325 335397379 693282585 225583155 433753980 669631185 819805981 917477035 953970615 252997606 673997150 34261650 63321784 987185190 991132855 399433048 781623516 654678503 947224796 300992925 362412906 525623271 982742552 459065659 907896598 690696653 775208526 974714061 975752735 345565314 849502286 821627666 995369094 148994972 706038992 112478236 272455985 107660668 751818713 186254350 734274657 607080295 944690216 249272348 620704596 272608505 603957128 90902386 344173720 19204328 578026945 688263708 737342516 808855588 942840098 420185729 462740121 621730890 686296281 876437515 920862912 831054803 959405746 526265338 539957160 152706866 481518540 166659352 234181058 876040358 896090567 520715615 718773211 745807764 767009306 973335071 980807346 311002167 352430174 261711847 486089808 267795234 528923192 645873104 664889671 354295941 650986956 75371318 967440926 863936039 875197969 122338851 577592574 715152611 947488105 537963066 917583123 220037858 404599962 980945943 989255963 808968834 845520410 146242565 398940594 203569295 204485943 740143880 949947660 553268172 553753007 647434755 720747473 28300828 214098570 191049561 881293593 129228434 887610930 654229174 699817282 525652363 632759959 378564698 989716273 27661390 788217590 767032342 986599807 730656217 810772999 140493093 434218434 763650002 779863075 674046872 937734868 436214048 863967978 512996984 570189326 831855851 846317064 116880899 263633402 713882566 895341225 607479705 671314430 745004996 889088645 864944102 885117049 841677379 846533552 595094404 965186575 216128422 902113421 599780378 909656583 791312127 941794481 40097754 591968544 969853534 980930026 891929011 972531797 658026387 719804219 755324711 975097973 635464871 738497000 107640713 277420085 559314762 957972363 386219727 571596150 649716725 729405680 562288222 626771765 700038847 976207743 201030236 542294461 311846530 536072170 471575389 672951799 661097672 703779925 295294101 399410693 820679656 821237066 444004598 730306800 403031633 439895748 17742913 474486973 481444910 498680999 70264114 836016832 815128993 872120120 828049074 930504491 426737541 786031770 360217991 639465476 278961223 720330518 145452320 438262108 701706699 938580373 279608952 772465127 958561020 990640176 872942695 923859381 520553090 607456885 838522540 874964699 421473108 980488669 567582542 944288888 441591361 565303631 459472293 579861023 573716942 830070275 319502449 692493596 252924969 957360239 490779554 751906574 259764894 275936748 366360678 608087225 781831003 977118483 214778414 751267900 76179971 488811205 616862129 705282786 656321572 943455948 325826007 805994484 319084194 433725075 883210410 989368834 268239502 996251275 576490852 851989378 272651221 812643506 901266657 976535995 830884597 879544220 794979579 836911652 771617990 847044340 57565914 908013494 402874550 683043761 139923642 953691822 748285746 794618053 153230 648852859 41841856 650155434 271385052 364974524 515712768 517354589 146224268 919128447 521618998 815174682 899000788 947368627 803093315 819731151 726630252 838706131 334154066 782133050 96698204 808887368 318959228 545817603 465650255 549113139 141555757 263915886 268610028 725434775 40636125 718467722 543460844 778402147 486428753 632532557 409492344 752902871 433267508 508057327 13130667 918293317 142449989 864105192 625741477 793240340 399829511 624564336 432214176 519819967 492653857 978257491 80398487 309397035 551107171 905428503 709576420 745540218 731658977 953040128 877758560 931163463 442779962 883606152 801103025 898447036 223633178 513716249 22546045 514545947 702077248 866807002 177478891 904707096 105489588 257198898 914253552 924919283 731477455 875007161 366576794 680067137 256549646 538709465 535462512 896529549 571468703 837529438 958387407 984968033 508971329 844212140 545095208 680116213 795770919 827408826 262829422 719401785 879801259 883355810 830220072 925972035 158377348 474703190 543616516 966711635 451072451 546885766 745296771 985641064 294795884 893106219 786780449 823218375 180671107 631050797 562391039 621414660 630806969 769152457 579990959 744651043 860361465 916554723 728066294 909474480 301552069 745959074 679378403 733006117 575689828 643506425 962814328 970126536 40653830 472107821 431743259 969055105 543194393 908264399 481454886 897484397 318853595 803889353 737003028 947816213 211485969 808619013 216654898 671939049 196188126 636571070 738148096 824740036 88804142 602564284 186799461 491081349 720808158 885823900 472922772 873876642 883394293 998515334 260349077 686507775 43650718 185083033 976415768 990254937 884747779 888120425 767630269 819591525 601334754 707902186 999922707 999949084 549491607 847838912 938617872 984874069 77161300 598866972 926073100 941217897 905001594 951785350 14924903 669253308 239829826 589616003 438091761 591977625 947683646 968605466 973726518 989325812 957471629 980459870 675911200 821601997 604547146 945356100 785777236 807493478 886934032 935584844 14039632 553296121 663216731 791936440 285851755 345307952 843300570 975291853 156255657 747330328 606185161 663223806 686669074 914158019 852641368 950737991 748551955 762047766 537280144 559580397 356767024 831213539 568358010 990632349 451620158 691228544 994691120 999692367 87776867 637000588 645773753 826742081 416576402 696341036 846461992 854291732 340829586 400847717 468258526 814953877 833727956 982968083 830496960 999345244 702234237 863739402 657353530 955252550 169256522 735574971 905017214 978113971 773870722 946205671 311402028 472975504 717077886 765826387 310228890 486321854 798252155 815620959 252101862 558545133 189737934 511664748 402408799 661209317 588306175 719500376 785282020 902242967 567359632 854457632 638360207 793823246 675767395 994380083 196283685 915838365 49612230 327183048 350792822 561158709 709546580 976270026 580369680 884651984 966077023 989212414 212923751 730805273 998907584 999742375 418982919 953126223 913913067 942719625 128635339 845233869 548949125 921025300 103231358 425567345 215347894 613672524 717931375 886971082 968385164 971329720 66847614 864613129 639104062 996571886 406885472 518134664 755618236 973668038 543310476 821765411 163256736 185347590 315252745 916800322 545272797 603872779 269951824 806979614 177613793 518715339 626797128 808994669 253889654 653611390 404707234 548699463 453786914 475000164 388826789 669128806 707536680 930469876 437719806 978003056 21106576 503903100 937332592 955657494 977367631 987513986 91013653 770409841 972318381 995648972 360781586 836541587 782333065 785475354 318696514 992043295 879077711 912631391 955514349 990295802 426918383 747718368 578087866 662180249 585814358 898660116 379238011 545271141 87002313 963282609 544213500 945203096 356495612 769125150 36621324 93295685 677202086 877180607 743762949 831302160 738762059 747472953 486910517 876292056 503989351 807750201 726748018 878879790 234472387 953686440 608860988 693888964 777629785 806038135 613645042 626135665 641995253 963369324 496221303 956026678 228067428 912152814 150031834 168863127 567735281 900793977 841349714 965540136 703962141 788375410 246311067 388403833 141323220 606584466 324613526 408578560 614728989 870013866 681377899 816805991 314932429 342652302 438279293 729799512 457802779 497186266 872114888 888242767 186034811 338874270 36515383 960774520 380747659 850360647 939508556 980970772 686952124 876383150 644253006 723390222 744733270 782820218 133499749 609905736 148576624 505786148 193151280 197692014 945751472 991126063 244282997 780878478 556963884 563505867 510475378 977731466 75464309 469713879 448465872 641739938 870491740 873108426 240931059 484509173 50971423 409849461 253997907 555089465 414836367 681296487 596500094 883510654 640220906 648376395 400996516 759993590 472865181 876590327 867833937 974640642 380200377 915137141 103941744 324193874 720020 370166645 980247660 982375816 247617189 979947176 601731473 685832378 770304787 996330712 561417328 683909800 456925934 784425808 812303399 898766419 870119886 942853520 142223864 752789682 50661492 857016608 976114470 984132424 13190472 675393159 435911444 976071497 910525154 938728995 217238670 475208291 314676507 476471091 773030068 878735660 476225078 733182365 291910341 394962138 814031734 816609342 405534215 461147976 697670677 822169074 45076513 673900897 805939854 921215893 390427307 447787151 71729547 190686970 456506408 596829797 542430832 929158908 63593432 488207072 652665219 660817173 647915832 845054736 444751338 520511659 65041079 483533620 84192061 612178219 858973945 991252087 522803638 662860177 864346963 913290664 824434357 886972844 960987965 988448234 473180678 954451500 791271896 893668268 974624127 993347762 82269931 811606816 288123063 524873822 724566073 997341935 469520544 677554153 117086677 133643853 503380125 847621433 293928410 685742588 699661877 725065645 593885616 605041011 286703742 714814913 131268725 186300116 552461038 968984137 72103195 250929520 397680957 747220733 299763867 570131354 885998830 936947185 398222666 459469665 326634276 742998943 861001368 864745869 657500093 873220350 527916414 594682148 877989708 918258581 116302309 607085511 762046219 862362802 178362389 419711017 954332849 954345425 514645981 943935212 229625299 349189985 599725609 989381990 996492652 997233070 639520103 812778244 96905107 927897997 137046566 417426771 731448784 885447357 153989393 608597287 339123294 717176970 597810231 849474371 177356446 341835517 57734953 730704250 241048193 529809030 881621768 971474374 788003095 953534665 653975753 857631039 457876094 738804783 936678026 988445751 603881227 897803962 512291131 549199962 691324642 825111805 92701997 364658379 574717727 639075902 582952357 713822111 983373887 998929194 149187971 370774682 970728378 980175022 602445561 678998705 600244905 826897457 662669612 864710461 5195983 84976187 343059061 380906775 749528623 908274911 979364745 999180378 888512013 900998414 417218370 474418939 85182004 305852334 917010229 969180096 936579829 998680251 635875447 920345921 74992465 372299945 579399382 791606329 448943862 793606438 178084690 749071487 965255090 971131896 592989466 919645874 380400172 652630904 487833201 897149342 999333492 999337755 288227417 491140698 73612083 849718591 6443933 344080787 733937514 834048565 52833153 452497298 321830502 410070515 841096329 891669078 152237337 432255295 689919600 966651009 979240130 979512389 105986358 652241499 471400722 879839073 780599812 984622212 29679504 803338109 719750212 951890822 981127542 996006662 281320989 816903835 621433449 902519406 696569049 810421350 491149363 575879599 566204148 707119940 940398734 958678958 217549638 678427578 299256948 355936213 630597169 876102471 636047132 774689651 629625912 711116162 61779034 780919397 267925926 789680678 402868062 632575382 482768717 670456430 921606490 961526407 208404494 983967910 528028025 732374267 614918091 714033919 798178299 905601204 551498144 991783160 189106348 666953937 237667961 650953809 40362952 964910314 435539170 751561228 414530439 630803157 31393876 251318351 718458812 899488997 430536166 584741368 855479214 994545785 359280759 965083237 393529564 814064151 415735458 804541745 194912971 456078438 332320286 526942221 24400746 344918429 807408190 999784120 668087706 726338744 158606088 785521102 456143950 759948259 878378101 880267712 500535676 583221917 531835903 742872760 749435005 792383290 978086485 989018096 936370771 955969383 981454425 987499010 234211229 898298610 830239854 841570606 487664636 986349225 395533562 591441543 360707290 775742605 221538296 400561548 831298949 867264329 888903868 930568224 274294490 311584123 447522994 694194066 143209287 661373667 939715918 957862003 6662689 234735521 224534018 877958984 87940184 514603657 237790801 627482335 400832325 618710644 342635215 887947516 486194350 643301143 232684842 569580709 363200423 940902383 25068967 459789281 935062162 997293684 6055374 318637156 841860637 895399243 538032907 634350572 531542554 740210795 451722297 958723633 582596936 712193916 280183836 581459429 563304320 977443834 235528707 724611427 198366104 203697994 933539037 966127707 215851936 879264336 214525184 689364822 104394330 731122124 614657373 958008854 775292334 838905236 806114156 995531709 188092771 422858343 925300844 964264894 727259091 745256350 584588532 618995333 940017693 942821732 802673560 882036340 718505599 854960260 168429342 782068854 319675758 709824645 164840211 341686116 718882078 765770081 146018085 402406628 845209367 918964951 904200493 932527264 347767531 993320625 419158427 776590671 521193509 946987713 235183556 951844089 824805925 886741121 96679766 470346682 95463521 917542069 606504072 839771953 63539012 514476348 414084437 544050519 885569339 985906656 673623755 849603707 790104771 865225721 75369037 725226134 28755938 320250449 293463679 683993961 399222685 814878649 610548782 617258976 974746155 975186534 672031180 911802801 739623722 796115457 620469162 759794676 111527823 138327010 369917999 947051486 611304736 664193028 585565999 795746910 743016974 888593727 561293169 724114724 842943946 843599010 519268794 880948214 654098170 969300971 566897613 677770418 116563698 684685624 983037573 983357293 889748760 951997960 533158923 610418831 341347136 600313100 709523125 811123876 729327482 830850893 32750370 824289752 773887776 801762822 879840118 909580533 214485801 451324055 161387741 827506410 510232248 881627064 785053311 846174885 300720270 663553009 579862187 994131293 842004268 966756500 446989652 972182216 603200617 695911763 667844274 850858595 520531911 764577087 894326458 934436713 774651137 994036019 416667213 626483122 110020068 302894844 547865124 802686329 327154604 892010861 614920360 888634323 739835272 941950819 677680660 855257524 129088080 709389919 901108898 914348686 979577960 992303489 921940591 923253300 419778870 927295937 852773651 986586270 577415886 618603680 4193108 221540599 286218733 631753194 643445360 709451989 36609032 614546633 822275018 850289020 458388290 491370545 314973431 432670249 983571418 989603379 85166729 413564476 441452242 678735820 805973413 855796051 456310327 572215612 905660951 944097648 632589245 782089721 900729215 978023294 940918134 971185774 955644058 994358807 389889279 610678619 367922890 864459143 457574147 472763871 37472046 611907139 331660897 940334361 592729726 794986251 987862467 988065960 825846308 910268538 330986994 976445990 853132446 924401208 403556063 848409147 539343306 785903231 139137691 552324614 790693532 893444829 429333371 794362460 383113414 402381755 804397046 826073662 979155413 994487442 68606775 967220216 380332656 877682415 715670604 988679968 749779050 797592243 214317325 626152190 48751660 255812996 576340420 691131483 186595648 388510754 191254466 520074956 369976333 993446147 986889358 996112604 21999549 184787325 719414307 726013883 413863228 983016354 355613615 744942721 435090679 857370362 3272688 607198601 114032918 378088960 972881466 992539942 655048921 708364727 475578900 628924302 108520747 963354847 238484303 784753861 830448192 895415479 962759864 987788247 413396460 497613127 169463948 217770415 496077275 967096192 673425002 865650867 634914350 696728477 178205316 562147888 728586632 922955085 536686366 787398694 887030412 929632239 422224498 607385287 938552812 948802463 239621338 859409428 364496145 408640934 190860149 381182791 7710912 774495662 378384658 521298044 689214101 833411157 970895781 988421273 897219916 912075275 7466547 704933470 286005110 649008210 337620023 700118097 722766147 962646127 612552680 801081707 762439237 892364658 414388749 466151782 433196887 709429828 823128632 873351575 206186935 550673038 475499509 819345864 594197156 670413805 545724799 773559440 162449126 408232945 574143935 833144506 539419663 552966321 132596061 471678391 246431800 920924934 695200499 913179665 438470572 813648576 75776885 372336376 572183641 793193995 784609929 879927901 782708523 827573657 816122783 937971286 98144320 246168423 644941688 707261393 786814555 995502553 600960323 636668108 484884186 582645222 834938015 938587260 739313778 968705324 621931344 936468966 259189157 803258679 970862150 994883826 843846388 952189765 99145343 971513318 768875234 913221630 151388310 798768713 775510015 916506319 667174867 712727226 755272037 889299347 358283409 725567247 453239166 995903904 893492379 936427078 215699665 274289538 354454277 398061074 596191620 609387547 391918893 740528002 775059811 848285689 399249914 541297313 950830877 955955718 294195994 935591501 163762288 402710562 289726331 897967345 6545427 973432646 91580445 755743464 709465262 980502336 20044211 360184459 764058018 955959075 204616633 998160526 705337654 859032095 35123199 899737134 763680464 937649145 331424848 957484771 924992174 985394975 113647306 907063168 500613249 536498745 483875490 970722418 533245865 809261382 222706917 656197496 25946405 751693642 75048585 979162182 108604642 709568843 415894284 924336994 299651966 560784640 975194769 992868327 567038559 714346545 239880256 842456744 276972937 329068037 744272976 874559331 288173569 739074143 565522533 908429587 818298710 952233513 545210118 878715925 706076488 770502189 457618725 761940257 658307268 735461092 840541634 878371768 621957572 624171102 974316252 994634385 388215320 480403505 238240251 435107279 690888508 896717244 486666239 672615801 24344188 366877000 508434035 750379276 774412913 877050351 508169713 905464384 102744154 833933444 994576865 998805081 696991074 755899788 274518770 414781178 257280106 469530476 553122796 840192052 786062516 937493859 466513704 930660508 455535766 675409374 722682556 875245141 626390228 635307416 90264177 649960485 517390949 953296733 246722162 403025005 275403287 276282597 505326578 592846907 903352544 954941817 484735367 816675985 417639627 919176795 711915904 829980750 357371339 469690472 413330135 418515074 785028322 993332393 779983321 891055543 966865215 995505424 884472157 892757467 735663633 920479750 869825526 900186917 616351801 871250606 433219465 949838867 78412522 950162100 341532712 840793241 443500375 519855925 344612139 766578114 321574496 781492512 862677762 914768661 124592342 125788958 382735769 920005580 581849900 762972246 728231140 988619746 881394369 972462578 72676146 117443945 303255234 430151571 492423137 582180631 683959325 693800118 599902891 617820273 513900241 723025443 874659016 918488162 184019008 969026379 170194187 598972024 810852742 867768498 562987849 732334648 16475578 202088518 469748687 493056066 637138141 806500285 460972676 969025788 239742489 541226012 470530643 932166552 709089369 748156881 718431281 751277799 438522051 863569195 339922659 357661673 867837285 919326529 934360869 996617755 220885760 258379780 517049946 576492746 236050272 307828577 67255899 214410056 790334945 873965117 296021337 534166349 227757174 400688208 757304746 877535409 860243341 871725936 179596485 512321460 945707216 995103605 745816832 948535423 697186899 962407972 511062677 780379561 364527075 917070729 414218415 748988839 102632870 771597380 788919133 985793932 567382411 987203350 452014053 665862444 118766289 127139592 705334951 965637137 946997199 949754160 270449035 319659944 818543818 875770441 160227820 557974228 540481375 831227100 516331033 821382768 25525719 716174585 121937138 346964191 354577652 862534065 747985621 800699057 754126864 977955870 588753591 996253295 793869939 915393748 695460141 986336274 156401234 452031009 831115877 853875214 608331522 992529156 133937174 842761969 827042544 909453898 859863363 878402029 564380851 732577961 886798191 905902923 975229073 991707716 760584169 802652322 645243950 864214661 80162097 401075332 237671187 957909827 405848286 784093835 64395173 174625266 938065219 979516997 231352901 416106059 600507237 600654518 669951480 765577207 796962621 989299263 931848449 965538444 842991593 972035385 793454692 968600541 965066727 967258467 457276365 897162053 396889978 416437380 537166777 998769778 102382309 917954115 740490848 741410095 739386966 853811606 209537543 401939275 121158806 229571471 474785746 500483315 833587584 902302222 244365660 826389186 175181548 802892766 319561779 604144692 308103623 717921699 108042700 624086376 185440755 633167943 342899101 944662734 826022773 953518967 481229286 764487125 991155410 992037428 998088465 999107153 678685019 842053312 632956424 803212706 173475637 202053861 694040621 940970298 464594767 887643537 682528856 815010500 779902 235012581 593481983 835625321 297562193 911687477 768221659 837279863 408453526 445484642 987573403 998957211 681317800 800493139 344113636 781396244 756276126 784060039 521163063 595661348 727799074 802219094 737285437 987667469 833398198 852563398 969903612 970155950 195914306 961010795 601385156 767455648 636637120 724761201 521361826 805138127 37327909 179990953 754665984 954013760 284368761 663214869 722617560 896173186 629864346 754763107 477296804 480181313 896417447 911873855 450566637 548152300 118069959 849689560 428334037 642498916 959897747 992998493 177771389 516971419 888134010 920561234 338620541 613489563 920286676 944586851 612524102 656440314 910918821 940664667 607529455 915966584 298880850 413928300 672665795 708891010 480469083 949623237 328998399 858629726 65151466 573197758 32943844 505585619 531630096 618857296 972984124 977762197 108804428 802785662 827436199 885871624 59706593 816987735 355898966 517989296 744833863 860964396 502403707 799935426 524192761 741660208 54423300 842793240 594216729 664810362 487712245 609478864 665914052 901106446 312230569 560115377 337324798 923246216 417846422 782630938 939416204 963405976 903749728 926714102 4331020 976674677 675493464 685417975 696261899 946992929 46179887 555603241 16746089 721415378 40182379 948513909 988974916 994544362 951921034 984605553 731920519 816231842 747283346 903269248 865775078 966545962 556377990 872564794 229919257 280537856 741609690 765665826 449831506 700097051 601019408 786047650 484147815 817287089 980847137 993014768 240639900 888285367 413324930 576112733 166199156 420416144 667962219 767923935 126015802 763238716 260561630 429330185 795171406 827972977 569423159 966915264 398867231 762995877 518021375 713706881 23662802 370413767 624536868 801143288 151076411 540759733 205241585 676446637 737922425 805638725 448632167 884714471 244121458 267029837 23499403 639096310 479559273 570290085 165083616 792712296 86410453 195285350 626695920 762332360 785142470 823151141 379756566 528722842 421073288 686001129 135899585 984972183 701943640 839239795 582743293 835232753 143119233 922131203 247286767 882234955 424259202 674488442 385461416 969897871 928856408 999794980 957894882 970305032 22942537 638026521 842113329 970847198 91687635 702056694 685808799 820591077 58731927 842949176 607805972 666074447 524412517 642300036 164834831 620768541 164865288 691474519 167242538 564756867 392881616 731734393 80258987 525495597 961107486 977295692 47176663 169042951 444158801 914711145 207263294 519696688 299847921 421240174 264869187 554017805 275523476 441242420 103932383 227948359 50432937 346799931 211203794 690116179 322163874 909069216 705090537 985955770 821397062 929979586 237989652 582384011 362194117 380861529 529572468 706007112 413550671 473449092 828049500 960036581 311600707 689866512 164674972 538923654 643792964 859740070 167389034 280683612 856689002 946163615 379245384 746174591 775319299 900239508 109491763 313016442 311115650 881612352 563129555 596052192 212425728 808774034 762521407 871651054 610212537 709863459 391810466 938418988 63030687 229665576 741397912 744764838 968028642 996525971 127219280 624302227 46043184 250416333 800096552 854167362 570277606 610460614 198795748 669608155 112025164 473240981 500438531 870629721 669430709 741306022 190214956 425472610 348727600 877216367 623579582 750145643 692025325 995004054 553776266 585226959 908031541 998878008 369472493 473145110 302284276 563421433 17656249 22348442 873339321 900969638 77349345 172273182 632162130 815030914 345702712 427846370 167252896 706635460 238185489 356676235 850418164 940195420 414430557 708851053 905992542 973048893 792151738 943414832 562206646 782281524 399412166 643594575 772679086 887224656 660167392 743182643 552120186 967367492 655028784 893686887 734761925 775876806 6178876 970816023 186236221 403546030 357169337 380324886 917107564 922194942 547627080 600200106 174065266 319034530 702325529 768160240 91659635 357400194 145342006 585264586 636435925 777738046 447134375 623446307 406290849 900560485 959001450 970962660 393932343 475233957 139590147 480266975 534296957 564635664 749852664 761545710 469770796 532022494 117290497 615452969 109111028 688215354 840681289 989854136 738795325 781453763 817667534 934937438 429020529 648331005 145117610 443226299 833376140 998532636 757395355 865734680 73928885 914571458 926497197 930308102 772387834 937557472 513434262 832407219 119371791 455257236 324317475 965174923 248172083 777591273 912838064 970869303 794936177 891293916 715747882 726367350 372341958 628508893 63081717 416687858 101455156 520284736 24203447 638267501 736051973 854158245 803961484 923321743 284311544 969814635 223109210 728267778 217883009 313296119 979509547 995876515 81475327 472882813 215099125 239255392 453340536 906218751 568506627 899360499 109692261 512474465 822770666 918477858 501255424 645666383 575501318 914758081 293932700 573764668 416036353 458969838 102817753 693597626 12371205 971713223 246309116 431743632 305946224 369649116 968918186 969646506 70835838 599665295 287775348 881787594 799396636 841287283 359593018 818189211 719731380 872369567 890405110 996416223 542964003 620824983 750016138 813802979 464498626 665323350 638199334 896365969 429834816 613358494 172730086 801080805 638058966 967042023 578735579 717434522 887326142 991419587 797344597 968220989 761781912 781413347 772324767 822891082 537223330 543905286 850274707 861798882 144420611 199831738 234691868 947668743 456836393 761493863 59529879 363645126 87905831 602352478 725336883 759377117 753632399 866595158 611503471 792653954 990799496 997146702 100555939 630051465 500018677 827386580 808037582 983298767 151858293 742863588 705714637 779480564 804193016 907053420 52359286 676502788 41648886 372182033 142522737 248084514 636092628 904632612 840164876 969709939 346484624 595693440 682415650 874985066 445159996 679610630 256111995 291561422 992392475 999963873 937341558 940092509 927428921 983260849 801535934 995000841 668152482 672527643 664909154 879751571 358569558 982174900 44363070 839918306 248798759 751206371 61243424 876505207 223825057 426180972 638763652 787536021 849326869 889144126 639651314 907592244 637282779 809918666 541693583 751900745 80711133 981372385 125911731 604202715 584837510 608099527 644746729 950111891 630846547 642305597 628822890 849768087 184591165 626301729 248886970 577579666 561383877 562268597 736895957 907821433 212040604 353540304 953460205 957902401 803114830 838054926 155507830 595062869 964309488 987826436 126259363 616507436 628984021 939828136 929836248 964608716 576997437 679192277 944280987 962075820 665418965 954450219 22391389 505903903 860195596 881456526 577523558 824559593 516784786 701430793 547418950 959274830 899163449 911331571 362470585 504461856 700966458 845171988 231651882 246959926 817796465 942146146 496520844 567790569 735062986 962103390 246120081 826904325 340019833 868980744 713472590 780051382 905183677 925377383 644658868 783695296 809463692 979129424 436113398 460919007 219980853 684767624 753385823 927908575 993173667 993543891 7224737 909479260 756380718 788424296 576796180 774142769 200066702 740258323 832496422 891913991 331536045 664894868 59877927 941049348 891464068 946367336 445302576 987764803 729209541 743340555 943710377 981354720 92428319 560120814 313551185 988160711 431242399 525850415 763659247 868384607 630402857 928981427 302388495 534012799 871243245 973769162 929036363 950674210 858576501 873772271 157163657 795933588 221816988 502757302 416810435 894818983 846145342 935536988 626341849 761867581 840162133 916877200 45153940 459990536 543577034 761993195 375562993 436397955 410227695 636539929 21523609 818685794 70856545 780074373 761031539 965364723 303959324 593034765 485199086 898256671 78249477 326697960 701010480 835493901 834799 20651947 867397197 975147763 853820669 872857444 3399961 98901493 466680053 510025898 780765770 865641113 382712718 759380375 934813572 941845176 916886407 967846226 870214961 975494717 171083403 861978774 622029643 739474520 790586957 966441187 599998183 989245580 379551983 413144488 773968182 822523034 685153032 983807981 754334044 932556446 318594763 649231097 977572338 980307607 697822416 991343656 514708697 969416803 666067124 907100203 431228634 958951282 869468613 923194748 535736449 720346083 489696798 837370720 172018257 711888409 106323004 906103406 364852897 489811011 72098655 662470454 292173007 672558950 319632708 383388872 619375275 757342708 850037276 889219601 466370238 865386521 160358698 857718016 453176149 827967374 889821124 897463722 910041991 931090808 401797403 890146324 811401668 963448998 740901585 984984898 784930046 871766783 158264745 933111626 699567819 802116959 617460978 799113309 238447097 913486818 82283617 991184655 757000805 836156181 442631500 720573280 819439927 866014539 113343121 566133090 589278362 977526845 443046886 718421518 61174117 666264892 495937043 584703326 539403695 639066770 382057234 994229537 934194305 965749448 337849591 575582341 834332760 855764214 162939583 658570983 551380798 826255270 914603066 989527870 369392964 435532258 501361880 722867180 473604076 559925460 146519169 507172012 699147505 780139665 746589547 820646428 432403956 482836311 212422731 257999303 434206014 540255564 899435684 964565369 36108802 676695913 497913284 521753322 557493081 807957704 766232975 908408157 238711844 375171255 263813180 446666116 297007100 600894284 836625702 935332077 705667959 834385948 980411964 985106960 477752617 521936123 268207879 527326948 382118448 857294086 331803609 580367781 518000683 691165239 702317731 810728664 211778277 909518235 122693703 265963424 162708923 903988508 768991156 929396621 963245795 996090440 685169581 926614682 944101445 950329337 85880300 206718712 217057882 398286563 544323326 934104706 896848165 986656230 798555477 872135641 533763470 872637677 775201885 881809476 613379014 857540712 502065751 823809160 317182794 618635456 563024062 853546720 669420667 811369360 186930418 622884877 42258793 235179304 318677646 522397836 364241325 829839795 395539284 539086341 339706115 615604613 345821399 536184982 541688593 778222982 246837887 666753751 453173448 926677098 895873262 954887802 390131786 740855454 217203533 895142198 159216993 238379435 298871098 996050616 42880303 782238629 647203960 998052919 71333816 654315617 948409324 980333182 881225162 918085307 394051731 594957594 45751678 154212954 6283647 482767469 674125156 989416694 415728446 739665447 39364950 213895846 690319512 709731084 456156911 962145705 745933180 944569533 472967365 628412788 471186598 691720595 897693294 994853669 61773498 435981230 546843680 563187885 217932324 399775281 117028283 956778141 115841927 135814760 863410947 955994050 224852721 802171390 249265647 983501675 39556073 623335115 914025448 937043055 37442954 250536862 243998368 441922035 391327357 799282890 189966856 427222720 976534210 981408568 265815629 716437453 954549546 986914332 135348153 793270118 827005125 832017663 434782921 713631612 822800085 950646342 715125859 761756042 266558277 379165553 84783384 489763926 344655994 722125493 152000697 856024264 880199322 957341655 161126719 940291487 767086724 966731185 460583318 974917701 617182981 997823041 835483735 887324691 954992270 968870919 844364501 859304888 635315348 973456976 983165992 983372082 617026586 659833788 705958617 883775719 488541210 500425198 931078999 992061527 892225817 919081024 208352859 838528372 25186188 539015090 452629355 702061639 911650675 912908996 851198625 902331818 663586149 998276372 886270554 954719733 277042933 687388327 458648791 811064154 716757458 989591811 901467502 915185686 416606816 458761639 160635962 715643412 172814984 266205694 947019253 958938982 985425622 989154996 807642582 964039906 383411410 450812998 266863454 775724706 54821684 780016973 905603037 984539549 545494280 852032209 537111574 715117735 186375915 190014819 616486819 824192067 520091830 655051755 629479091 904367230 999332557 999972234 309046332 413521405 336707399 912950495 538884970 550670636 531909779 962429617 438283644 772014926 46149134 528358095 22878320 291572084 581223887 817946142 344074775 844288536 640917634 961392134 143524113 467725911 259358840 676183186 315315053 455624643 767487844 851660521 821280219 968344355 609360275 702595599 615067038 862129709 940846538 955774047 18072741 258869763 319283260 487486487 823236725 923274045 463821062 832659524 525912032 605587613 742183756 860187469 741567819 812853244 418129774 677671811 31975783 160138549 357454228 843947915 219083714 663688177 925725453 947218465 174872211 760075432 692307762 962915582 421088994 572039733 843458366 863600919 598546732 948553369 499577859 709274186 724952035 791615505 221069737 272918930 312450708 491803847 476892854 970852506 998192394 999430226 314972744 762785248 311589483 690641851 948686956 978739413 115267967 594926048 748401689 959568823 804055648 893387799 494951017 892903856 250790910 465886394 988606457 991632392 448771433 639281790 815200164 885191314 454979288 945374542 234689087 862764271 605185638 862750317 710319520 808103688 33214227 407490477 469703646 692677832 962173977 986163907 586940629 873774086 776959119 960697661 356668954 959150024 846512173 943728306 331528676 866687148 666101141 942281243 574123738 630242617 779114649 958670873 707044461 972191623 276705812 956410349 450987366 829050081 645779427 766960203 251667136 960978984 132954739 614200120 455279564 861244551 216567989 665541305 117152317 784518854 689947908 847574393 289200990 879914446 980130396 992083967 918308312 988098628 269040192 751254552 440175210 901289823 79390857 559971877 91248770 833755197 516008589 923914313 669720678 842188042 527876231 996434235 195404010 747555439 46184492 941265978 127149303 730416044 474742972 773882000 302385602 795285968 575255296 616840635 139423478 934471901 15447898 594036845 254295266 587704980 958484244 970962496 581173090 740032764 877880834 892631839 723789287 998559230 49132806 768259788 578521262 704908412 917293939 970081646 780344822 783957351 656881240 880507603 841073384 868686885 65580983 496520133 52644735 75834108 442537331 578939296 756931970 769577130 364191783 964429416 433362580 531303229 607570304 933599933 284088973 459791019 742500772 994525759 117853330 581235218 32915303 54223326 921125455 994405444 224535882 482407001 614687381 778027565 993986052 994128264 896488565 933805644 658516660 906786686 882420378 960414010 709228798 996140394 236942715 363566778 472260034 721915694 778765468 819136840 682571360 854171618 722602233 983597902 135484631 620699223 182286680 852185203 219579076 480215267 234433356 789578472 423630923 823412997 492644981 945042262 1535557 760874923 414018031 797541592 942970873 949606585 863696347 925284580 926944737 997437402 110427447 470940774 14823805 64052538 51867880 629841695 621668049 690888063 889055759 910126819 326859147 544335636 222416823 487766424 717105072 852981673 929950001 949854488 525081283 938581118 309903791 730834939 299111572 321093319 319047803 932169743 481658917 876774485 928668087 932821803 569553908 644565484 138536439 853568389 744473411 796983357 257496265 365962742 881141688 934718487 506790629 670790656 527560540 740382184 592139913 842918574 865974333 956359504 236499203 863691454 198179809 823755080 532650022 737456102 743619691 751633317 623078894 758886746 105425685 781877724 738723022 935191017 900204102 969229214 544914722 602312529 150036351 343748528 623083841 706715746 733237117 893563824 816798779 943861623 945388407 964202826 424858713 945125931 951302820 983943585 897800291 997805869 994524491 995335453 417178037 474737363 464878519 688815069 676173471 815350391 995348076 998600225 298873163 388990699 201352001 545697753 49823995 732844367 721341042 908344808 471917174 788222591 58482679 168763230 152864550 270319238 441608826 959330585 897032382 898283857 395250650 817856258 817281398 880287799 833294528 899585934 515558923 660902378 329681890 590711286 360664788 819126062 788729430 805719964 220825042 509708733 823359323 867936320 48749839 63827760 906177405 915400852 354354244 523294885 55010309 315821900 859474451 973588939 163752703 665085942 994698278 999552640 332181046 734249060 78096539 663381907 836408395 964270547 780914043 863391471 623151046 979748646 981095245 984361475 87944558 718561616 501136322 738608899 378134731 851196033 248343638 660969995 111847477 965426430 967161730 981865778 435160380 550530913 554075489 879176533 479204319 847421500 235585467 700042786 798532694 936192110 237708230 355595671 25208813 160361074 688714730 980986921 267177762 643562751 109760736 536207816 888168470 996155200 778811211 948967003 775710558 823246311 297017609 984372678 134544209 686427937 510119402 900423159 91090929 668226966 603110401 668066126 779819183 935274290 564320089 941929863 572882772 900950669 933863580 937732580 663083951 831102553 641445576 682941079 407332936 768956344 792348160 973915682 189169489 239082556 84419094 968811360 378742783 462099421 846318437 946108528 867613167 971360029 11615205 541463415 25239743 996653767 841784193 969593010 895670418 963139501 677694857 837558485 252555521 941313745 969024478 993254693 519435014 817277614 75844967 487261075 787447302 915716057 65637467 284726306 915153123 923455497 575643105 904255571 22513273 118899828 740060467 874448962 286738619 724815164 306013936 346768937 869429958 888023183 356364224 369830747 525570417 540666915 757150277 974944420 683178512 721087876 275353400 965271824 14932737 946785026 670419380 824918092 42660000 270110585 239189895 939970431 240548008 529854623 823250828 855112082 134627701 410586947 360849409 747673966 549998344 827799614 436466316 824774477 640110839 922644120 954627434 983294271 6736807 62397541 29119663 592231723 306507331 590668053 774058548 998220408 28614361 241318189 122786294 363055902 604729639 770647847 587485654 911651241 660143376 680580173 512325366 666062765 813293635 962068185 978208874 989788965 212515289 745905266 289317254 368594605 911399016 964485407 318902578 741647727 413556302 849085214 152718340 167723680 843453656 887732705 110335779 744139234 685376386 863679330 730528715 951194262 983281399 998538911 871650160 924160836 593790863 660214106 299202490 390742927 527826217 887014672 991118717 994382069 547147041 742303536 743475218 809434158 395074393 571227734 201684553 531327009 699663556 725184476 272734509 674938436 103518194 641346374 343578712 586913990 216920191 681970698 285249753 562373603 869217793 998990587 707855615 945358272 926288223 973483726 548392279 576936319 389472138 540317185 951971984 967093830 738119292 984532909 731511305 913402425 374083605 588762117 588285972 910664006 33932240 919335148 804951351 884982207 219573808 714604420 992386265 993067478 593373276 806422686 814453351 860296021 795650561 997238484 306833882 321143571 880793146 992786249 590724941 701064409 934113067 936600951 393978558 662958749 290801733 701271162 963932627 980490441 318930983 495302016 796431788 800001861 777206710 999380597 340428657 691519876 384411927 709732784 358856926 670639229 866038708 874591380 860146152 948518657 18619128 21064765 671994566 783073034 204686016 500631903 556793395 957821666 227104211 362816805 271263076 556541398 480300369 771053811 921352061 999854635 811954586 972621572 878174689 951874974 498244075 955553016 205616777 599973589 877468783 879901413 259821423 593513402 192206891 278773853 762575367 893968231 733644466 916660677 851011928 885624478 57300432 787497171 349943632 393926176 849554583 879239137 836416029 963494302 281471546 980021478 603218137 740620175 1651860 751266979 784889160 868932619 356351226 982896073 916703725 964846058 12826146 674519052 470128639 525367760 821033192 977147304 227828570 957240752 780164586 790119526 635345806 953905827 185971388 350931544 989322099 995246239 173718654 723167175 954445710 988483369 665525170 957205480 462051955 587210569 772650359 839387568 265634215 542677473 904544709 987366485 293082313 856293192 933576215 986766972 778010082 889683471 833416482 936809369 171242558 300398723 694322062 883869382 611844759 989354828 307215191 387808202 594419218 637371778 347594705 907376127 381209365 452614645 220930381 324269355 631512772 986839278 337985836 546048008 127886504 300895895 143761425 969673349 827059347 858600554 124124752 365602742 651533588 975625365 688380588 854459823 171259338 798180962 637978556 893340094 675401673 972631791 98591267 405682985 299174134 616836909 222840757 262253633 886107172 973998487 418696869 447593174 725813810 791048972 153799969 433033541 415628093 705506867 944100371 975982978 466066322 500873945 112335739 272679260 335386846 535312704 150128185 543245135 855631665 967153963 249264449 299807455 263657032 721496373 485243150 662826002 730055227 825096269 241213381 670782567 146149355 296612602 587089054 745818839 813916543 893107916 459314858 721746563 4501675 328131437 930071257 988679373 689508216 784327090 86870050 189470201 486007318 802519783 114176761 267177995 509615752 701432377 631760978 883978903 563022252 917670095 803604161 833175712 233060879 693508354 176153717 580820148 838778618 853024021 119638328 607650298 266976641 387931664 83980624 168911834 249158384 256859979 970195267 996896117 111494104 424898677 230722674 754983681 307406369 913469392 539977420 822028537 795122867 797709016 386734080 491224628 569930938 833212445 27475864 205105194 417087011 819621384 247756596 893952781 756838364 904784949 129240321 695037039 176609575 802751672 2603596 681486399 589262871 645656842 537402699 770834082 959051452 961731716 58522646 712663715 657363200 744628950 817737010 852782768 225883017 907516261 165218069 253797845 614815842 873866292 916783628 963441209 719252951 749163383 772017770 832596936 746317065 906257254 475630430 968237585 877332946 931884834 294148308 392850821 591844148 891575598 588535993 873174294 75482906 795874368 216516612 292763421 897665552 904202429 265240334 495438043 846557727 900092845 18020080 317144013 583561322 866291259 736058445 832049086 868611999 930610867 619756740 822359898 580547978 944858857 842397018 869294922 80608082 117033373 448165646 894420244 374487963 595961241 201730142 581744175 920080757 987921337 975584349 992681035 12452200 125783610 639142247 946190888 39455308 651625377 543879356 942353972 115643406 337366709 898465646 999064395 603592503 811837962 687611991 995278194 357306719 889059083 316873729 352069101 617753923 918831585 574177065 867869850 256930546 678371041 355958446 588756240 897394435 931443978 679200465 803858472 328375743 415380093 745456945 809390390 476255573 757901347 132535105 595998153 300695290 838464617 86503646 496696650 573375086 842616640 439610058 931894861 982388789 985099101 68841958 431462376 628846918 846296294 856211746 945879705 556763789 934294271 287269451 809329699 85497622 189325161 788257305 969588503 679127653 988999175 793394953 969895641 34636981 121544789 363196371 817836767 44571131 301372767 159793490 538375426 339818055 569012546 765206600 826011512 167999546 188961086 484067919 486127675 537717542 775633444 339862171 681536035 777172765 925176593 242801229 468815659 511419938 821098160 376898098 932943411 127543834 814115740 984874793 985984561 481960485 548287800 325793570 749385878 554183312 823157846 873047713 973926151 424764626 777833680 981646030 999329229 651597120 892594848 121657092 238695553 991502452 995617820 790109814 800961332 697879394 868231137 879139960 885441817 966252953 993826980 787078359 810344140 361579827 621786034 172350256 390824728 718068021 895780214 283012148 842296718 908493050 952918941 822715611 844007043 614571139 619357154 530952602 531464048 165271205 589830157 702488492 782978644 752479233 975389681 776381196 845212285 822060339 977916189 455421380 856872579 883619276 889907153 737990763 793152123 762808630 924168910 21251525 113300124 222552112 261279603 611956909 625836803 522993382 771429027 343701855 800608806 554872311 957712862 164757041 891109714 797742804 856847197 855677809 933223352 585905132 825068575 642304174 673874055 190139259 803977600 328735181 685377651 571975682 773678091 866165486 878889795 96036779 107317956 29688283 802957081 178808332 249000315 436316318 795983727 545182691 882516731 183111762 413404008 53250552 92806744 832068680 850055921 78963838 496095721 889668174 948963541 135317675 649173295 38291029 355212336 666319535 845667277 622374759 865964848 372623808 677436825 359772942 717438101 476569173 639824254 912747514 983581729 297360172 720188205 83375648 991664498 161445206 262899474 266785066 805166906 609510371 816886926 322162415 800543543 769337663 885113868 542714766 545102716 222491276 876372169 761836823 871957660 473311405 911906811 917948056 968947863 165808337 169868739 338032187 435912123 687674340 754559624 521064973 804452780 637218155 933215551 748051852 838637178 704842426 906862698 660915246 750225158 180543074 689258033 866148208 942469454 52854190 971705753 443831897 985161321 252474448 445248329 920897840 999152780 238920781 303602372 800703364 939403237 442480027 661704808 905359097 906284833 850733931 973213073 82187847 260314431 536881173 754744514 477728552 964169771 909052703 990512440 511920064 834785728 319206185 470796676 678599702 991119412 703268025 977710657 412898777 633327792 141945803 215855742 740362662 912472306 457995763 547098225 560548486 631816072 47334318 835033890 301829219 939086437 214883539 934503759 262010961 928956312 100241210 146350161 724966646 959513053 806275182 818321344 149408301 540874117 28267068 388732907 664011905 988412558 633373951 762521823 501728967 790561317 42064828 793109808 361361966 543423400 875871742 998988484 165338889 216359151 347745114 535505888 284143346 628177460 625932534 693897445 32381584 370158298 345380927 929785602 396936461 979280289 830904250 896335373 739803473 760987021 961855525 962583901 364618205 831829234 816861817 871143988 688072041 805053347 943200777 952796007 295075017 525292501 319710038 525009606 207525016 763617424 153845811 294603033 790790460 951799808 601028685 959257901 71720390 251967627 673797414 815495949 451274001 981022383 764855192 829215127 588592489 875830591 53334587 182270916 877579756 992143269 207240180 304022825 222342306 239963695 899744602 985052751 588280950 590615337 29911721 122378430 286396980 375695590 977061780 980594422 637445653 712513471 732575915 882609378 247229413 778551591 624191881 845311063 615085661 676343670 378592347 510118039 92012639 444979518 519280597 948493288 867488791 973092525 32417570 541190790 521931695 823779426 519032692 575237872 254301361 692990386 963689218 969306219 377124972 884912719 358891511 965858695 438778113 753795644 578501355 609670080 561228629 890009250 753311807 794496361 662451245 879342745 782155504 997048894 853176054 910383667 178257898 549448024 313930408 838165384 609419887 854524146 804370647 887240570 986003543 994712909 667118770 729254267 143592014 853836226 176670348 300311282 118517160 972931578 341617721 569213286 18243394 985611387 298114754 847736858 916555945 926463773 383505723 623315758 821096177 932713923 10713628 823272840 943819219 999058755 101452211 398595667 113632635 765968700 348396242 760833496 251971421 764425451 437146125 496810744 94470805 483142033 801584440 843042487 665530223 818452960 488085168 665120183 697560015 936259509 727831829 744256965 373707476 551908491 682076294 779248396 246625318 704933571 297022298 742977201 942502301 976358898 584490018 645991024 394124096 889459618 421044048 903118196 917494415 941640309 247598284 721029096 547592421 701688543 717213920 723041947 536570586 892499474 18160969 631440529 506968110 990631204 673611096 996182484 495857510 961890769 796292014 951278130 771923720 914715925 695473088 929394422 146949963 647732930 349458771 890285500 811514717 973834833 552665590 615847607 697409029 700115736 326378972 449675968 69899317 582797303 789772815 973994769 485656171 599754400 365890060 776492437 699643369 759880185 563166551 876357817 249605414 554579841 454401547 809707517 398733961 546070622 250744854 251931655 216693762 448848127 78627714 489984927 183854030 563202514 843225350 957103904 635755960 696901162 67954045 522380942 427707368 444169100 949053314 958524160 82494592 908219759 239473210 243463824 843117460 927237884 58295882 284498453 942186851 949546567 692437185 917814849 375922142 988589819 958433873 988420388 624653093 625157588 612758362 913173910 711523863 732219540 705455530 846342430 925348329 932017611 749923326 844063416 9375292 214855972 777451655 780626168 527030381 601199473 664031612 830914254 216815196 695333546 560837712 877309801 318973590 353708055 692736276 749078100 348671069 957251695 131834494 207184863 433332824 928651971 657909288 739846743 354112598 951358570 460486476 702988582 95736039 941523218 465221357 547592760 490274356 661925024 360377799 693596337 7226642 565554293 858465175 928819069 415482705 497668612 825199719 968456780 766163322 852152476 886176677 934979343 906658011 990651448 752642086 854588637 565764787 902484210 92512332 117700809 595892422 610773736 839345846 962625915 894387135 995696422 974148059 979062722 309624278 360325970 700806141 811541636 836174218 945482761 58076593 533639936 139895698 311205832 893502898 991107456 368825922 563060100 748870024 859291940 116377663 416071662 870437802 977866149 630383050 961465876 481958478 658755783 646982452 707776374 193393910 731528207 902368321 984577272 264638001 992307628 358724077 861182039 350805305 676271706 879806635 958962160 750083727 883314650 905772608 930074306 131443758 748051761 24903948 124864827 598640691 756358699 977714506 979283340 853314327 883873148 679260506 943053502 481093845 550549071 484723947 605423723 704346819 743740920 209618218 315922198 251589773 802739221 811417760 844416207 1338074 800122147 218504742 429325922 59686600 508332052 958439634 986362209 292711595 435639224 968901615 984448264 169172341 840498035 836935180 930843084 838285264 962541729 868404734 924289293 29744949 658678364 676467387 950436167 232818479 732810381 223792889 705127279 187047810 618621293 815679807 821014301 464641852 881586475 838233542 874670528 110007083 465182667 144217911 179152711 98185648 682639561 263852275 890364694 686273437 856215815 393774463 633383638 664095406 951261556 786202194 979098820 674724866 695011832 83704107 89523592 559159478 838018550 352599706 367574118 569756057 762106952 482597978 981490958 660119551 822349988 824019942 858533227 940776571 975506785 227553035 645069693 942667351 983857911 657780376 781477071 543798166 735713549 500836777 675074504 411423108 575692749 470516657 581184315 896329109 999311074 784934084 824500933 402871058 699689780 308599086 813564918 711740128 749358343 176097560 674932511 497125316 986981178 577569459 578989668 374322905 801185550 889898693 932325570 309775435 928820238 296227085 911701725 322982949 896482048 813591648 984688416 525338274 839364754 656853251 731503866 261652777 644612875 10123282 822590704 837768504 887561625 519628635 980917919 188430109 354054198 67628101 861179908 439859465 661725712 109371214 220666621 807554827 837298597 381854936 775043589 790625841 814409483 294500276 866099490 224677505 722976707 227366603 681935899 776838360 962892817 765977946 775584170 820789329 963383478 578047954 742863158 975485919 993129068 217041691 703782492 371770714 644646366 721408491 872415776 130666694 304176606 13264730 280945093 249792154 648764502 658668247 840078847 195920605 295185468 419465550 920876856 548515460 934740393 353101115 952272927 828890077 984259992 480014691 559852294 547897797 658536398 32163090 616527326 848462019 918210951 377008062 703828515 749738726 853656150 519292162 979325594 652115577 656585762 110632054 968528582 420144419 938969016 670908505 778567764 43469388 356439321 495154973 925711101 512190280 810326679 583728250 788933872 923347935 956694256 300100653 988152523 31808359 242249724 204429863 577454170 373386455 635982746 997854484 998854709 987213100 987815114 397356903 778663171 519067934 953874502 20499833 711837599 842479286 993583742 654649158 745949549 462302542 912063919 719703064 758782063 498726807 525678037 597353504 799903092 21286613 53809555 230550404 598121410 118592452 424312586 378673612 553582038 608232149 885745400 281542122 627851497 599987565 833001862 2768469 599198310 357312452 987325067 20282474 108796765 533625444 938538666 700055899 896438438 23286374 958708210 839443172 876413669 912305616 950267707 209642641 662100633 824542064 892888548 648786836 809906252 653868198 946078145 644532705 907153199 185454885 299949974 851425349 874080786 651785215 876638979 648605033 894053540 603438306 633566904 797175511 845758899 143018391 468722854 331285685 424414975 66092243 395654303 718290670 867131190 609344720 773887470 790645125 994681576 562901727 734569845 999619182 999879534 225925304 852497926 355742082 470013929 321323216 667719655 428378136 827387314 199118981 511729843 847509112 875927728 184849965 331405721 59531771 375050632 99945675 627188906 235855017 651297299 489066383 873217473 304294766 890932019 513855338 780209241 497723696 579854621 593055607 646034693 794797813 863679301 626620519 904680237 735085517 829584771 659768624 750208217 880003690 968787454 739464596 876790841 140893872 819204214 918803128 972392380 728267036 957148066 498456544 959921368 480176061 708483951 923407096 946784051 138806710 584330889 687704337 857184422 147982426 774936687 72132444 472694482 410105375 689160163 834641792 910207325 85654237 806291295 925399966 998980977 650511552 668508428 545681096 727754929 632047023 805895489 78514672 941124324 5387939 531151561 229205929 499083731 88589430 546590759 804180665 905905596 524308845 962670374 51973500 697335272 245337253 745982784 572270164 621765862 135740999 283511411 874126443 943148434 879247208 988314940 284795849 407252235 817350881 897129189 8376502 708912152 295304203 645356111 896829116 964096036 102566256 971509267 168094500 421775752 998692249 998781743 611099570 790847704 83932072 955915543 530348957 700769958 937090376 983973280 599304439 900875618 979532311 991419887 714396414 976461784 78564512 454923445 801714044 936979350 135127321 439381673 464555452 900276155 156107700 681284690 145182654 511198217 910666069 947763455 789101507 902284281 369863040 848829070 328273004 774251784 454996123 619755105 116328430 584015963 608372520 927331583 554384992 999186193 612836369 998790996 582040381 835426744 55256345 85200326 60628174 575163341 422275381 817540983 272358135 676841700 367736505 422090173 602488604 642082963 964862344 980987163 420091221 674215474 846503981 874748383 109909640 866872348 901265688 903733679 673216103 963183735 658568030 878962815 791277177 964141028 705572621 711227284 62444907 969803575 104659622 166310299 281901739 718881429 56915170 825296063 863533950 942326406 839728924 889786355 399564001 690945040 352487874 997665681 584314516 877021217 452020613 893385586 230336153 244930076 909132739 983679010 838821407 937268373 638571601 649434279 340759381 803375173 993235107 995210514 411434981 582178416 608726452 971479885 946776068 976418724 985430724 986811488 667955704 905862604 902024199 948704353 823041875 824952765 615438782 633989712 530071370 653730132 328556594 341741446 172856693 356004705 278943855 779057016 493869464 686403983 394739962 461819004 705771578 911720794 715420612 945078253 372271750 605393875 273029278 732418746 447709201 807919362 24275314 229255334 874044531 949071878 569492760 738325699 13401450 707636049 468358771 582124339 749355107 799023459 437733604 892323667 636028632 958942142 678629311 759816734 840885912 922666331 565791407 822167757 507043022 670176228 444884821 481991865 862484292 868971940 478098201 933316507 938996837 995346827 333294427 716536493 339550933 358559056 814768490 831931526 979482222 989602662 568787324 810443821 313344630 496813583 446806763 872379666 980139801 991213362 822989965 837589131 410673122 761951001 881841006 887896014 881770670 931456526 192238479 545773092 278993227 605491475 141286472 508807058 117338971 922494532 420925400 900437560 229368674 454394049 162678921 683863343 874622143 883334476 351999555 715518467 468724904 769411964 455841399 857808271 476183639 596684769 296978613 665792896 232660389 833406141 297533622 442270848 200467995 899298862 921307433 933854384 147573626 506587736 661829898 866875662 580271803 815403717 590398689 969344019 145702105 542390551 962488196 971121632 369126397 710807552 883381507 956236765 906436108 956710984 830569777 925726926 280367421 457048331 763451999 899420227 746254698 853220576 749387062 953406527 649090776 830149653 953561691 962714758 892447922 999802102 263351983 337179799 19650418 59462570 666330471 760504510 245913437 351255553 537857023 857487115 40381712 500791308 264361018 351744425 351553504 769573447 575012265 763035813 516470861 784386255 407607968 967031171 231431513 386629071 314346733 329607314 666502503 699375269 751295894 919374103 223566960 996513209 439912165 873852666 377186026 943146869 467512173 615420387 367825850 829745668 351140162 686648625 312861031 821824570 76146451 826453091 528633206 539069777 420344728 998628964 107436754 295011478 525069100 708059845 455010097 712618762 526346245 686481114 970339378 978380214 914461998 939593699 941771439 965141650 778857029 903629124 543118868 692651305 270894583 307671112 682803474 875204476 992942559 999914547 861255300 944161863 790495936 928458273 539490081 744847388 6528447 239340986 3641265 942084408 807300009 930200199 116610052 146722777 392112070 523129362 929337778 959454873 991255940 996806372 983869307 991350635 599589736 933818267 24768777 407643695 366733730 447529144 617100624 987619244 593187765 892432193 100346337 804575613 674955635 832890380 625991367 891157567 106750890 826144099 688277557 774344319 527109525 582781025 113312070 277712690 853470205 887580683 844104775 988248967 276626049 561488423 258611493 992505165 448708209 487353479 19200374 448348815 890709105 929781402 129706069 195337318 181516059 858372719 51196326 988136970 846655290 882338462 433283413 547478201 457398550 997957190 669358146 747954572 478007086 859968754 719033915 816331528 603647105 613078159 675715206 882660029 735007489 932788822 237388668 372001156 268470630 537847157 262727388 695832678 225264696 984131101 628669448 732548193 686982518 698966794 339572867 401448264 595210687 757809393 358815833 831175248 700457933 847368718 666296759 881274005 547354465 706743865 842630602 850386620 419920409 569877818 392082792 754932234 626273129 763463105 516785405 574908375 144533640 569313533 471953341 656115768 610714127 753311562 226575283 918834670 504961647 805413724 990992729 998132966 45095218 408796052 773517313 902028464 21273308 837958754 245259254 245985441 175466556 194490376 134304072 208721368 916423618 986236108 854666593 913283029 574508192 689352271 922186384 944877632 225212676 852454078 194738727 493452947 813185904 890347961 48656740 582419533 73404249 873273280 617018790 859970637 237211215 517848473 683672658 712143935 879002661 903143354 119943967 485014104 153854701 181676467 752087516 967227089 161765427 300122644 491520732 765738863 881526535 941924522 188563157 595611682 396148635 510706412 979024181 991318942 3297996 956593406 985179835 985405400 219042922 549139411 814529786 983486299 644210835 754806277 228219662 417129590 497555603 977046947 894032163 953974146 589547989 682357773 265604413 576071449 87503177 516580961 252377661 508537260 967767661 985378581 856004793 908522672 644375068 824712623 273838677 869604552 7090916 528081191 469672118 740790647 260509179 262997189 306049644 856290417 9613557 70456803 750282697 925415662 130970303 389287575 550817600 664303330 847593869 881551320 614587260 986155874 298456100 739111138 200004769 736608196 115243297 951041705 826041792 921392099 422445279 859459718 449634336 730472904 763819863 862477738 729002348 906051158 106221896 807738123 840594379 878696107 660269160 748874151 297181535 683013642 307188547 412249711 749071338 847432218 83034596 277320541 705128375 782537082 73360902 790779233 770289865 847052642 727313711 744443101 266458174 818164713 466046676 469765681 362838261 404751177 744340535 777881118 754641080 986447532 603367510 746171005 397487111 911883967 986626462 997890481 265700689 857932142 729481219 802153729 466433833 731509088 764161015 773862943 584228617 678365683 409674470 843143724 7289798 211686898 740309580 877989439 387663993 548217088 715276818 747547831 97930251 254361828 579730276 608782485 260697935 585651759 516819785 994563000 166612261 925333991 503292523 511903816 372285760 819605605 74546641 177677969 542576650 634725217 117005886 143201567 370431333 794479265 148133841 558065912 102607668 701052096 741834784 919695104 370470769 670521464 169404098 536851301 237530167 890433302 285250464 299143040 398842119 596321636 51060468 125149744 503072630 940025407 624600326 728959914 81982295 836612503 936826881 944724157 637745552 891534934 456143103 516674059 151586098 954596886 991820449 997156061 140294232 771153172 316025988 858672558 325384323 725174244 299022082 368494100 788800855 902417626 879109954 959906402 449472206 853872324 374285497 642877646 194849589 674198490 446965927 824763643 409193018 734110078 316042575 438165286 851333300 852605599 479076538 644583677 529334469 694132337 960397875 960819261 684074310 941865148 850528945 985377571 835310285 945828975 112255606 580846148 401530276 614760060 649400747 907412913 183108257 521133133 802941783 978439519 506583538 722936991 992410757 997166882 479931211 804174040 335125123 795110777 942259219 948020153 750986517 889482765 741469285 828512642 508648667 631831419 432310325 665832745 959595475 961707752 719052710 972262293 736231725 810419969 537216994 802057040 846742804 939423056 202754964 610317225 729996858 776373198 999888617 999974037 375311983 950000289 859582732 965922838 844917528 999505073 704668374 752911095 754576188 924728170 237501726 415753360 320522144 584959487 834211806 909593030 217605652 244765809 978521599 992768171 36540770 67315553 467940194 812093336 790026674 974070860 142694005 718409212 74182140 769159813 617077205 765054808 363114010 372562779 215374927 725828985 709497211 854143332 209227715 216254965 822670926 891249773 988744508 999333200 826549994 909848944 156923313 401259416 83951764 547198358 518450268 641276096 356071106 547938320 439480730 900398907 58087286 438697895 881217310 983430777 582336808 820538031 398984318 729626707 314287407 754863994 111976930 642284040 340390341 454342103 359689475 838206112 367664941 534255944 888680808 940663901 805797227 986497693 992453193 995461930 826557902 894135529 256251140 940595348 206093426 886294119 669030573 860695130 729644796 981451911 325404740 592966111 995330488 997865977 512036381 603857992 674082031 887746516 500803423 837734356 758125362 777080468 674987773 696196555 190660007 770355957 302959211 763210023 209779147 504908603 494703851 721493637 820030499 987805713 251131034 500447977 255542402 840985807 494816052 757020211 147282770 240445560 868193473 915487521 222316934 833922924 854414306 901402270 449542658 823167084 475712557 701888005 342457419 679136040 183683958 967351132 437358010 808235410 697573767 961563695 872143377 895040139 577719826 849433930 585597964 600083321 850891765 951294825 555677167 785940136 640898659 921582180 226626809 241092353 658778364 998945347 437501112 681159029 445383777 786770942 830296473 888955498 759680960 829415106 842488729 992883064 811974488 836846722 87106073 346226126 728075778 891281427 105340807 768312491 518648841 994650396 790016785 902425221 68130582 843534923 895842725 997899014 230051671 851706642 390327087 872386953 119224793 503762498 40522320 496125020 441237364 952622988 462194423 857872969 601298258 894996372 922579394 959494067 215684799 639115033 389990362 500632337 228912119 516618428 282438962 460443073 507582628 524327090 754734972 953831910 673187447 905358741 603660888 867537838 943097387 975340613 795811173 973683588 885133112 890378646 110230315 133812602 323130720 735771424 684633097 725198471 141750393 301091161 284620299 549967539 977494550 997571970 71064907 963402022 853464213 983293378 247889163 562429826 804640299 931174619 562742656 663340576 959544007 965952664 757086896 856842651 322385357 353721154 904784567 962551714 596055435 922795213 28293400 462804056 542777326 644768048 503071095 760429796 148290313 340891245 459518613 868930574 605460450 661041459 618763447 691139476 211855089 879601344 377293875 828042044 147714004 836264354 299700232 300592659 460704362 729155012 177362517 494147912 931403594 973591667 906224152 923919076 68409010 614829435 115762441 914684962 416687654 961915753 812836277 923303308 883207244 895348990 96670991 537258632 409484678 815697548 200630639 898606649 841231771 873110826 669204405 748637819 357613749 732152201 715926573 847477600 946400259 958786351 630113700 772496936 485001355 618563924 352331237 405529967 279834845 872165369 67901679 695743271 70986647 830000322 24168932 349867575 924297097 946001520 131142319 906436658 125996928 660328882 718839066 879538836 603201322 704363075 928848491 983575621 15404537 537068299 454949474 532040394 564052830 575726242 241333481 572735004 838072897 863826886 877235051 930872120 74913936 663319076 757983157 899280551 191256758 808383367 137116867 549280419 421578369 597843725 710382864 739988451 783214801 871783626 687880140 814901389 36260825 133243208 239667655 445518454 587502127 886185335 415180694 807591003 353762935 910303906 7570715 150072375 560600250 796613729 412248101 727988664 309876404 638972114 514842891 975541027 510684881 901752231 643228644 874765366 718702645 939412221 398393539 704433769 291217668 659005680 607213557 972586462 773857360 851934298 374987204 760681946 620502389 718426042 12245979 251328616 441330706 768906817 4741406 82460461 287765557 759346485 744832155 813779831 54855119 281975761 716040484 942657815 224717832 376719940 634381108 644851042 7606209 668230681 186839829 705171486 786856691 913473205 190060155 745779660 163274077 182208394 617192815 691923101 645333375 991963600 521717720 755569960 901931667 905340392 551404049 729704773 434064134 971917267 131840091 301091011 85972251 798029729 971148620 993433933 117732398 753314904 657889058 660348657 766179309 815435227 137830255 650586771 377843453 740297733 234591451 641723534 865018003 933194040 196374690 262389400 506302521 630591988 567960448 985562167 990611423 994955937 636293396 853166006 532033131 853180359 10917949 201512615 448239142 511026414 21809502 370419734 925917547 935641430 103769698 887276629 326039431 524335739 352986642 505367834 132700548 871125886 745972133 995765804 74379237 615058715 439013476 883094112 110089679 827203926 606899206 914207413 696758747 999360028 933125678 987724626 636850901 971790030 782724229 846138201 797881212 963368528 907974364 940935210 135987692 165907142 626614 600609701 721719831 816922391 852332071 913303283 177672975 380053525 756375320 830321650 761689590 782043525 631007919 697462607 339318526 734946706 850018883 887035874 92645369 967390834 391645240 974090740 612901986 642726785 232464440 544752478 511754036 915898771 536562655 754135278 638524763 943065379 237701524 270569965 880595078 955730420 732258715 820401618 975105568 981517680 386111993 630290320 358756263 461377544 749187361 833739451 897220032 916391203 425743275 883749432 444766314 855788220 22151967 898797972 864365670 999613697 442694154 664206024 326982743 441786684 34770644 538931865 970891614 986440081 491716419 687860938 589324200 645491606 964303705 984644654 556787452 586958500 423806330 666243087 557632746 956140838 848915254 881413222 790102927 825108520 592535426 654257450 859485665 873635780 620310243 768831064 19585488 274550885 37454637 414279981 931170404 994633996 444679545 726072866 234319937 738045842 20254808 875270036 796942361 966247029 589793590 600378294 715288874 724973439 738508575 812729954 49673750 160074461 849931579 889554300 105215726 468260218 375808369 820380449 312869393 324387784 144844253 729221033 690444042 980762596 118189100 964317991 303312231 678483636 142153193 168011677 540866912 586216126 531905019 805219957 561255362 642238901 396002130 501068512 412739956 702868457 287951487 309296866 632815146 878072345 599489535 870034603 41894454 794867451 217502430 872941147 982409919 999390054 155157327 938577627 64579835 671884606 961183854 961202071 433462964 524892225 916316710 933575887 709192608 752895724 741688585 875824269 68840288 94095044 626952864 872211526 856457710 907680178 279268683 759689036 356390305 488636403 680873566 876394496 436399882 807141908 631730723 869681548 628668766 882386982 899074514 972679520 775618887 918725772 506150132 578740208 947879573 983851770 58582790 566981002 53374091 376012890 918967805 998049847 34690335 733421421 529364611 755570706 22122257 383654925 703330664 880468579 136107213 496697609 485083008 584537105 65998666 493371960 265279285 650381285 683299128 972348427 277326887 319583726 682635690 862218133 269281612 579226864 494268625 763810463 517181645 877958435 760028562 896820511 447284874 680283060 794004002 861881561 211225063 635371817 778855688 917729099 659425968 789244622 542920096 613518173 909775110 958908598 883628461 900979024 550253408 707097249 751893238 847033880 705751733 979937319 163283349 723406364 934843146 975980763 460679252 933731063 428233259 890410746 344584254 605181575 526390773 865747006 918480942 922853158 420243459 666870758 621840784 641402636 98874253 208347208 467634004 779874659 407875393 480463205 496892671 779655562 575379060 610569639 569245146 914304054 670952192 956068822 983603683 994287731 54861723 902140294 347602418 958074975 397171121 896739161 505224975 568455397 366479485 936061219 215978902 626840417 239872245 517323414 251748628 536880210 952084990 957986057 352027750 413651504 707638620 722382822 821849426 916409998 271142388 507116080 664463685 848252058 932892593 944769112 745275194 843055497 190035288 210532221 758743511 892022152 61102752 772383386 621341916 795881702 861000758 868267187 104743449 837297600 907217497 964971785 713386859 902732250 873751546 947539101 302297828 453024238 864966133 926286172 134846044 978451692 857036905 925502972 96402798 642471492 219576650 970248234 936524268 962357716 521196164 529109616 673677290 834000141 887087090 906603660 107458082 145491440 354927480 771440961 996789799 999928130 963548761 993545985 534394913 804033195 249416403 907854273 826842013 932001829 519215098 573915582 161755786 863479551 225038795 990207075 817234342 922315644 770360144 922915482 727233096 743977929 747308403 788902407 862636872 924618160 209035030 355749797 447927498 448928977 353813476 514512090 320671493 962222267 194929287 555167304 613325808 978424401 994974400 996175432 805663853 810001917 337447343 471105898 200286594 943116951 894749698 923037632 412205739 960742629 594133889 880599305 105441282 299271736 270947710 389064968 539858561 776195872 270016237 717408658 43243818 560682672 484897446 815367413 291668598 980881124 616140213 872741152 113963846 364515715 411986793 900407131 603107909 944579892 251833554 310267646 713994975 960990596 413598672 976266079 255250263 481802514 218425877 912484211 786886466 801779981 180404690 967635949 301365043 684447837 179586914 714692181 851025504 987407053 28874341 361714668 593217211 704572151 709385934 868527118 659761139 732552599 510021501 919117280 38090231 178435284 677357403 933561075 713698169 718354240 129398361 648148145 987530194 991252145 17613165 394438935 37510401 963074355 688622813 864561549 733429800 864624620 658839143 901293933 865003978 887692913 462647786 755019321 447703167 516755591 470643169 933840271 244940292 763666689 319346691 462925053 842463022 877624662 397713264 663205449 243552862 975251838 704322929 946206447 595046052 712864903 35242241 442399633 729904089 943952911 834175626 878040432 862106388 973035901 615821793 770528582 896943430 993578607 504781633 696794034 888393100 925925508 79509811 627326093 668002130 994555673 246288074 587314365 819665003 986913441 534970786 625562135 416959977 552564752 260709170 288881478 102609767 783874362 395116472 723145958 801499076 964873794 974951145 997696656 520781267 570521624 995405157 996865562 102553701 893510229 686075904 944145063 250914286 974499076 84952729 165869280 178536489 247592045 689608151 951855051 499537573 903481548 374557050 444784306 772573600 941637298 329106122 616602640 59302109 394265141 558642905 689674920 617138440 889588912 952442153 969375378 399669813 544338497 304267110 305280761 892741345 982774971 920584900 975235657 455489455 827264205 487040955 989191045 184739820 659112172 33807641 335229021 396857923 911033964 669467840 735753043 843614033 935858561 672993401 977417073 841749437 975917516 631882731 730346954 508301632 601254496 351366349 507518423 166709436 788674253 127907877 287385211 285738193 758327149 17162236 301809229 473903170 683351705 105725839 614129206 64958755 259074970 515545284 898166580 169050578 252964468 466190388 902135683 510976845 526934024 192908443 643620468 177996247 249287212 646894803 789990680 166562230 331108624 520024331 814642677 740592469 788163905 888292002 888322019 561152439 864811959 314201547 356659497 982426503 999275337 351877956 486910799 905343946 959884679 351992867 422771850 442361627 596215087 31205465 725282577 648116924 819904547 743866406 903447719 432674528 990335420 645680773 831843168 470760816 617202300 883045607 896964472 120257573 626939110 53034778 172719264 287238508 945179357 676062635 682757869 570938469 600543858 794071243 969602752 747134736 911914367 805838427 818513209 586022536 782183288 15008830 208395837 305077908 390185799 408948242 740371162 117223107 256521131 475868110 484904344 757104886 842118975 399970708 517925556 247499918 436439670 71250785 335836544 832900752 919694080 595878932 795490667 243211243 524248000 234479242 734291221 532071737 586826190 784052332 862138928 193377544 758913040 41052888 271619560 10456722 882665691 398557000 849166988 900073404 901921576 541416227 873941077 185343412 917941230 613057706 904618242 478862088 534393598 2024967 454070604 845149755 962532239 514762022 939146438 658653643 696548837 33978503 586834369 236212972 326921635 601731890 717094854 14921760 627468706 685235309 977943393 176136715 331651417 537642759 831019968 109268556 917810750 789168548 800913693 787981947 880819093 708394871 931309813 631070684 676667375 66215331 963308602 451364901 777778284 637895317 782747375 965883641 978008301 81540692 825444693 198571815 308287208 23760463 788751040 351343938 375765648 218993804 237031104 799049467 880360603 665557676 962939811 394951429 803219449 143049212 186466454 827894002 946784981 600898120 927144725 494082519 896331693 711100934 866631055 45895355 363194377 607364751 677585123 647430165 901250193 579898190 891870581 86155612 324522765 169215745 590129818 944000571 978071584 982415639 990894003 429600329 505190670 888804974 963043482 916581509 954768422 49610004 127640436 563336140 670966038 17079084 767353730 639344235 681074234 714141849 798055803 245981193 418513415 485657401 539182183 153532351 637997384 608151579 628440468 705073570 809583795 301875846 585115879 1382907 276474179 306552396 474418999 363105378 542668508 788810576 959392443 499789189 587874828 583915470 708352673 648721048 988188326 919076184 976684076 140562931 279523482 697977131 892631557 902510386 909168662 567377111 807267708 116375894 794582002 793986847 811066607 596600294 769066817 496903081 728388024 158588099 294500035 128675794 469184239 667279828 798761309 768426200 950093186 597674897 962720026 921535174 979654199 803007497 830429972 43822791 615579832 588671631 698747089 643997149 968341095 297898025 710679287 755799764 923553088 743957918 927738196 453284910 791247596 403506039 799662261 558869052 987119587 365436554 411329722 740411484 976603667 895872732 936218832 277261072 621120708 58868878 527120310 176206570 534989783 71172330 996535486 89123410 585475757 953341937 990722704 404665239 774562639 676449420 995924241 701117799 858229897 472100385 918671014 845426884 845643491 32482188 743390614 106843259 987207255 999954694 999979605 266349620 975692743 901039711 908355629 683652706 996701134 434656200 747300093 55271660 720888857 52629772 694475817 114945391 139351205 75602591 479719874 735346701 853063142 493875319 811023500 67276570 121039350 680708916 769042769 194853429 538085337 812849580 979887068 172769370 794185647 454195772 890294638 38676769 884733708 927938574 991848889 265301550 779804100 72280061 926584882 907648861 969790224 804099026 927585600 711369943 719345939 338417101 753387837 459296250 566858182 131063230 645731406 25535884 786323582 758204541 847047769 87367609 501005648 78060627 295855806 360605812 893020594 458513572 670196024 953564466 971862231 163509326 501971121 755434130 904184310 287548899 939581695 627377905 897754978 600664631 963551663 491450232 834131031 542565216 691406532 151683625 376081893 805287494 963742083 53564732 803014097 966640696 992297120 361554156 882665708 322955839 699056561 357961671 514328083 904521770 970848230 124671615 317186142 785121399 805289732 635429142 720713608 988639620 995884819 889661279 924907218 978096253 983754529 848661577 898389339 665958697 708041530 145681305 953888107 678603028 842066602 316598149 623988885 344054580 973985813 725930054 909732437 784242385 874747969 889194890 962597420 677287149 975842952 235321249 717760314 470211216 938317416 392457101 724692573 635824214 989265281 788963454 879173411 782801223 881706703 546717409 835114160 729640252 788917664 138748963 639810336 208430322 255896818 390393305 462315761 237867861 531689192 806671525 984243693 912777356 958768791 331854671 720346648 676005160 941292831 437647299 777172278 211390967 507819138 798339661 988118290 106148570 309698818 398976797 965510058 943408759 990302627 99660316 621705439 373486695 514308712 94392247 735849263 671430345 997645350 361775079 913136328 313276431 924497880 86259853 498830452 670794220 917540858 999273871 999475569 653217264 941618036 137602004 391687217 792152640 805554936 31477213 402039731 445772018 678399422 466018655 626227568 68234815 674665768 363929054 636517692 251373295 290751658 631411680 992504060 496700295 551774049 706703456 858032408 435925508 913738918 577516100 807346779 191075085 270485364 423611940 637401011 508600534 882631987 932270349 979611492 119515322 329076440 603213963 760645890 508683818 764924668 518024853 867539864 596761317 912678934 483858984 991460502 448050789 500184834 168450645 381728879 122727116 986652593 288951310 461072665 1233628 810026085 929860045 948800371 723730341 876704561 339357094 817223826 28220741 286990654 975925093 989396665 226787037 567498644 660166 419168219 274019426 415659748 370023037 784632528 4220960 604104595 33430724 974105680 253750532 956619752 94244533 434546443 504681742 932620422 421382827 586980898 41017769 333165553 381780259 454648250 443730046 893825327 877087693 945545325 90963230 299088410 303412147 996831840 911677578 924316149 730475013 951078732 144717562 750009341 721994899 851923795 252433830 435544369 423906550 498570184 45809778 977954258 426178549 885780039 306607684 723994277 118817926 816058942 749468548 996087948 218139374 737045339 365189746 599575444 591686099 750962567 962963210 991479587 708553241 813084864 881383856 911867403 414985910 469064959 515907822 700057281 976027777 987114910 450145645 782434037 368698456 871528588 237616777 750700479 685882920 707356269 34565506 600950345 645377271 926433495 914795763 956289762 511485072 820954768 18540182 859451011 784058215 948106962 160057844 311460174 484650776 794744646 42942362 975899781 494486863 756311991 467336196 820589210 349383795 745452041 912446341 938476582 965355667 968358457 682252485 704517837 904896388 951085947 139811231 958051829 83462190 281271431 458865697 976408032 244013461 315788635 942462638 953859311 914782791 924166514 219875537 825261283 12400898 452581366 197820339 402106826 311361334 673884238 658720522 717896008 694076653 962513532 324159253 470260487 819872980 826429878 126995551 211781618 15080110 242127858 96110510 633597081 604589607 657709542 96809390 739362334 733729188 747235048 819491999 835373720 901448224 979288599 102352761 898990879 958603585 970305579 148206301 404814715 884149181 893325105 245574404 249767084 572457090 836940392 179759669 348792971 553051497 558552532 347247227 352070369 111539097 438390535 434138408 779413336 53636772 201978916 373488702 580133191 264871544 850893356 789266571 972881694 631247923 979921755 557768724 602677647 826714838 934916274 524881405 806070161 166202078 568297997 391416135 776106860 999343361 999375149 576299701 717494939 981852841 990699869 152094093 274705115 342221835 774916601 734788811 971642285 647349694 726056405 718653196 783297288 504224763 854859049 803458389 875195896 615790722 917371082 426476633 565665726 584152254 716196188 824197390 948125890 831856830 969635665 992930006 993081277 122123012 437790664 199391572 731207468 639630560 894921254 145729800 210237724 540367918 729439005 372449382 647974970 333115958 953307489 609916497 880907185 544430023 757572902 846360031 967532841 929977074 966455302 895114424 982818281 97665083 858962790 683376687 943917896 968980209 981802501 820581068 973435316 777110435 940491642 744449912 779585924 789682574 955239164 9074275 315323068 409679182 858056315 760834761 858809245 915708668 996641523 338944793 694695766 977677566 988726360 88361830 985425784 334454669 543401053 388786834 839760818 548429519 623479311 478564852 570669974 756416055 788799244 115530577 871278903 218677566 455435313 370160034 526286112 19404979 21615576 380682722 613835725 373047897 644063938 184310042 374642774 311680715 491546762 505642618 568591035 630460028 682900524 962581952 986303289 602239929 794785978 482604719 981697654 220161608 513342175 659148825 719515236 59274502 411894344 667603257 792787494 622729577 796708490 280145281 422442256 864694752 929856662 418097408 712924822 345902101 412556529 147101124 468102357 913878692 951918155 878236896 968995520 26668892 793825990 180938478 760601395 698611274 767801441 111577173 144297011 609033481 765328274 182725519 509372268 948362411 983314357 510197556 627320351 463111021 845648943 108870680 761016221 119355517 211891848 518602282 846942733 871338734 955799460 867737552 948449781 116528707 739003559 877958965 927397575 847911339 946862648 970701248 972798591 205443643 485138939 515881610 890360051 840625170 904362301 797307210 994966400 133691649 604346256 142133741 540204992 634933556 651235684 474612497 740335140 172648851 509761836 860078726 968649778 735941108 939254490 734975584 888415909 259013784 971013186 636709809 737801957 579898314 970293220 828486620 975704118 244059083 802830773 279601083 385817130 871708801 961024433 755361231 888831650 791514040 800900516 510640289 892276613 851120464 862605879 856353062 908937059 25236386 695139464 33164629 980532718 254040754 331863569 77641007 153038274 565375784 813909812 638485403 791941515 565368436 681402992 169514237 387999170 145924080 337004946 162620680 535509308 848979965 932059820 684207018 942017441 528863455 872839647 964530945 974129481 79421114 795022790 789467938 993754218 911504035 916358476 941895629 963170749 468771007 990884542 709123098 809191190 624569725 908387252 29063408 705528658 90179901 767356793 186526347 482131320 127890855 329294430 413685006 948816999 637342354 693809364 125482471 432697757 44907327 619232388 470020477 867324680 22332413 25395325 890737272 990882420 625568811 997751585 830004174 880085192 265459763 699336218 92531697 474864329 163988783 738324548 949537533 959193392 692804168 881558359 97411663 312258199 748819950 756313316 183501237 184550911 796462872 935934048 596965538 914663767 490765031 909239899 708535170 803857927 8515217 667560784 970813881 989772488 156997485 842710623 949031292 963034420 458957130 839321648 747542628 870256139 327625352 882549862 915244691 951963143 392063420 861030823 97850573 127199960 497547055 708042977 24469724 680524588 732321364 998990098 193306118 218400401 133539890 699538154 520623330 949043559 896386636 920576365 995421526 995555348 183484745 271641583 60868956 581083203 295160392 552297058 542882038 900446419 588524495 616177797 802194812 971847316 775853371 830184716 236606079 852829189 292600035 471671653 246830774 639026887 379696006 512789813 374560005 744802040 732082781 971278934 738887609 963941999 79227776 418748216 284845608 738728614 126440994 400082323 564295669 982631218 467761654 726502877 798554336 941296553 652538676 899325488 434181113 868411762 684107161 731823449 790896550 916541759 636806403 928342540 915352172 927549021 235221139 656189713 828617687 889402520 93282552 238082817 858868537 977829318 632573297 667972889 266755331 481183570 59636440 423631508 997021730 999106803 318958955 537145309 55801196 694977205 673688794 883454460 744881080 966556745 53519218 385615930 335194893 729886579 899376873 972120510 965316129 996816635 11090278 624882215 280494601 300705144 19014538 926198044 722218881 764684283 209237016 305139274 161844290 168316619 446037289 979460029 803941698 902561435 89500658 449562407 233791505 978811375 424832222 981382138 687065399 906007251 189114216 804351711 387072754 621981037 662564300 956652184 185372929 433142883 543684137 601866844 930029318 932956366 761231967 805469567 376445981 492559320 558381114 754223514 505817743 704452422 238418172 821895648 188693382 558559793 412851302 530693658 26211561 786295516 540121099 769737296 110131426 850607724 275842931 960567616 804007439 834381767 543814449 981007060 991100178 999502092 77219133 751597782 200103092 281117877 905077225 989810303 634794399 776132750 145416336 781208850 484360234 592243541 638106809 732717370 105079495 747157369 5468523 771028068 131436176 493817818 138163090 617873650 635202782 990101021 912613263 959017585 631731499 736326609 291941610 917748814 833353531 874942155 357521512 752505048 559959341 588720761 704214890 901448175 373861186 757314192 907279165 912303207 708968796 789943935 506736864 568370580 419061289 753332818 553866133 684917660 975652250 995216044 18256700 40845135 158018388 739111059 923579340 985365281 3687789 513188576 303190796 513994068 773441062 906458604 25442528 994520663 996857790 999841701 156583666 830078300 931960299 941263374 949091275 992497616 439405046 955251815 729926543 732466175 818622616 847516332 176982268 730401541 805482966 996027807 230820931 724215102 946267248 993920052 780720984 839573926 44395867 414331559 854655647 998052068 873993351 928131535 42684865 648949521 635189073 713415806 346124070 960498055 914605272 991853233 567796415 892596715 905187513 918418633 437515892 614200631 694020477 771082755 963235297 987314326 4094852 999346451 306682534 654367878 159997064 669141766 887338653 911593062 42778180 943287507 406686876 953665522 916605450 984487699 178476556 949864057 952286067 992967781 487302177 937655052 889293430 915000924 528947477 894735985 768321266 933172316 395406504 964304753 360946743 667467251 346912219 479169770 382369014 752045033 8339791 917382452 748613636 965252408 144463144 849603539 433835273 975580937 305160334 827262320 45725941 292784474 979471267 981670162 618200178 646531272 624371524 755461053 117816737 226848692 625854631 825097298 574168291 935995533 328845178 744887333 48610286 147145785 274832232 560917820 432994457 445041961 167196159 681530105 751698665 999843920 286136003 320507425 782955455 835445784 422470680 888673978 3794659 484148269 205937907 224877813 755798830 878364216 985608523 998155440 643206395 701528865 251708250 879171825 788134821 975180356 991934386 993626726 395607444 685275259 395424951 992718785 673754827 773176861 778327328 914578184 401687785 717347985 969671665 981263783 751492228 994079135 287565143 769224542 256967832 487279854 297749754 403711705 90180096 264423155 338200641 396785559 160342702 691423186 667499380 695630082 271120711 735369443 293805426 453838944 796194108 952502874 760889019 816237652 423262579 853648745 154999648 207381626 642797279 834871214 283586399 572175778 393717142 490819073 852170718 967581910 71872137 440484177 898447351 915945478 149004058 740535097 505532241 916282482 743987150 937933417 72848237 356571055 532372483 627518858 153693722 550542730 26680885 886238333 460521680 768686091 328410470 905564364 253964737 458568451 704390384 940387022 673126186 767085647 319794316 471653124 760369654 937566988 806301067 870152502 899611615 909602288 320108649 520992752 245659767 750014844 167385545 811806702 680391284 889370334 187492170 204081499 194451543 329877769 484320602 674859367 923000509 997925573 827391533 951331936 481016055 849458078 62635173 177466827 424737606 823809940 544558287 600405672 440205302 743829804 620646092 673705952 562026774 734873945 256654870 427286585 595051037 678677312 935406214 973962128 739887365 762561973 601479680 899755550 655668290 829563399 32410888 387957942 661605965 996703018 964277781 994420730 499648128 743389142 83889593 992911285 734476790 943372722 360710483 979365897 816633541 942330711 785637655 862930413 623113201 852056198 228454365 378118229 293816173 528614377 668505560 802551852 103880070 585435438 665131022 686083544 741064771 895136541 658937060 935423221 624880964 974696319 426402932 685734973 213342480 271752348 452769253 671687613 869145413 886770467 529917498 929014213 331380453 795857687 819969488 966389095 162855190 269782409 174565173 821138397 51107337 613340196 137294078 979078146 262082962 850894110 313816577 715895738 400504606 713399989 995897813 997850004 105851044 681107302 860596667 998110971 295627354 925699111 316775422 822799748 722090944 938427411 871088460 903834519 250500253 965973043 156968219 519432335 566420350 853664381 318355180 952928790 114491494 927817634 488520282 939752228 378000612 479585708 152946279 524382301 812710818 977508998 406768196 818771477 330224612 462836290 321423339 687191380 196553434 353480855 687320257 723999731 92422211 244976973 507249820 803638600 828076703 854553325 934062034 983112817 813232854 821284515 630430656 851958234 944509143 950791920 32779242 396407217 192481693 348461971 842057757 869815139 481852540 706237870 241246053 764367111 711253843 889953564 247235469 759926538 108502598 904582209 207586638 710410159 608995675 806309480 555061475 679612703 242046751 862317349 102788232 134882810 347849810 916507785 864206544 935207883 460147690 529278096 256431760 988519968 755469495 767609143 123981708 388534327 663075655 923979594 623469052 717494070 856729673 892017340 723002606 837526009 606739342 734855922 657458481 786138937 821035699 863664022 423458322 644461667 21646123 428627149 405013960 712302428 144407119 462449135 340434060 877502960 548271688 792580901 835975480 997102114 147098187 915090074 146931425 589329558 64781380 203221427 557106180 780704482 290253021 475977853 266757754 308680628 985888417 988787143 609264016 835707414 251239607 927179933 254571504 394329348 683726855 731160232 553974108 821883846 879379153 915935362 265486384 991752920 412580579 579848555 959433663 986105405 311074721 459443416 803574194 905587831 935267535 943360726 309693372 963456807 65245177 500950105 296628827 433062699 61437905 934672265 726438141 906040763 842253834 984542418 67531233 263344848 191089553 724659654 515189439 823990003 89320193 913458838 977051329 990583863 637843116 826096181 353173087 781803402 885846546 969767838 312045997 394938743 808375920 838692094 433330715 579744470 765591715 985233839 163727811 974167602 293922823 721626272 754498377 809112043 386443742 622544067 244578169 852792449 159959803 601899042 964027391 968586547 412392909 489166699 998108375 998264202 118134454 974656930 337840231 578242760 641715886 773842946 230322472 880787792 923206856 942029063 219099246 257466027 983079913 991186287 377706386 630239106 930820148 979942165 811671390 871451045 374423535 610782034 656027743 973735461 716119755 824313210 852325430 879978589 18962290 209147781 858688048 995099892 408691072 631241275 890440559 902870061 704251710 853945491 41643299 738828115 952044573 975620153 890011258 926303755 50064025 588502563 588245262 897003844 10063514 871107931 100490147 452988725 280518031 881010554 100663229 869066424 699357014 798014768 549191815 692321851 97239424 258668336 798135012 939480327 953932268 978663359 468162674 667464152 91755156 491288705 421130981 573206361 190140896 364956523 778190235 953542548 905818168 909070795 158668916 749427659 167326235 726771623 880306212 987001324 975845567 982213553 761152341 915841647 479926116 890290758 716163265 966592825 757093148 898768686 447404827 702566023 38292020 896924333 363683593 947677523 679365894 999031099 652929922 809555119 460980523 540524816 86071778 552985722 159431540 745494069 649849136 901056543 720314758 991397965 872917499 934611415 652134640 713640896 359979171 451235995 704578799 715118684 778325519 941292594 142484877 831336143 435690504 685390305 320824522 624535923 963300769 975347549 735447853 866359446 820507249 837907808 525231163 532824562 613812545 665998803 392057319 521859848 605632408 837346049 390976894 518442865 235944372 377444693 105400138 966706003 462240049 919935652 628864148 873690479 903357460 938242613 799342811 893574273 80958159 858075848 220572584 815136978 495730031 702790391 764251579 987353170 314858232 537759658 666697676 682348603 491700240 742259721 711538652 981584916 57666834 235710585 590710839 681067378 13397951 765481784 366253805 869502981 466890102 946975979 740194169 826946802 497724325 598497218 131731882 646727290 745260781 766645601 679532833 833222610 69593188 259667259 693191533 839755049 117636641 677531036 215220064 738140244 147766078 768501935 200194741 786565342 750893169 857114628 641149254 857411218 89195619 598946286 642377187 956387784 331831517 385133203 964601481 992398833 114936932 998503137 814783313 937818380 868793360 886285194 473539327 987680054 452920876 484224171 496492665 510133687 56486593 460347563 390539533 510238152 803738614 982989619 775605004 951615059 791751869 962262248 791771423 940307142 357154256 524567250 518518850 570838361 631794881 909749753 489557701 584328304 761631680 841189439 618814697 966146467 660458762 779109417 692980106 848404032 371465271 663512255 165040407 517835238 411833006 788397609 771649202 867462766 600829912 606435255 132612653 853805236 452515573 567079648 329661931 360435963 137267104 327660532 606990852 890110830 922616691 939375706 163522760 713871840 123318335 562190746 841314687 985831450 967965590 971473447 931074037 998419660 676743299 993487955 622887261 817853623 700750565 920057486 602733885 705797107 98392408 893987038 487014551 509233501 828725667 897940513 279925541 454910415 155574693 455576832 475049896 683558937 717354729 933743720 530974624 623403262 672063710 985059573 704292919 931396683 730534342 996202272 23235181 283784662 519166108 548738711 920518773 946238513 570758567 766061556 986655101 991327568 926812389 941910116 587739575 717499178 654796115 749608257 60700181 785803925 388848275 804740312 808366010 969782878 497590237 980107044 833252426 847075157 204823716 983877117 488895943 611892984 335630257 403958357 276383911 397621334 787797524 803648282 478008526 654337357 9301113 853941806 196509708 588061105 651960185 794982806 860476580 999015711 155240582 976009333 738470026 755374255 170567297 942268234 524669761 674095790 983808501 988054148 562132574 670258125 84383935 530132120 518817425 658552634 665110100 930554715 559630899 666973968 189305533 438241381 270894043 488739736 405519732 596677838 527961221 774435646 287052263 645484510 190909798 948000482 151792834 264132153 403646538 975310221 26652126 163064380 662407265 970447149 674999738 789714836 819640132 967486969 630462615 651459603 573699375 821471214 421788593 563176762 675470582 996578508 721865889 869730231 431529570 840595009 166706925 747466503 849824832 925769798 967397307 975628175 558138782 796783026 418624168 667230832 778988710 863126969 890771929 922427357 733917703 854321324 36654129 931762494 755194308 855341414 803065864 981537344 369126038 900338728 831350096 845445897 444664763 883763499 101064499 684478411 271993534 363457972 210226506 910366250 209579923 691210091 15006771 583648007 767534230 886477190 247061606 320951627 677953293 691660709 786062703 937844207 25334244 291051501 386950338 502434798 559657686 921733685 659333291 869006767 139276521 417235938 298300110 354285286 826319930 917645628 342792554 557319379 111485437 370566806 16534050 209927935 69745963 301603423 519235891 877777570 932690920 994502998 357423629 843201808 298408791 730825753 662047895 726270451 482836544 782448803 745830822 999166381 788718829 975235942 909450710 945298066 290200185 409281626 346218766 637672020 822062284 909106308 376462807 800972450 585653914 963667936 515245801 656189421 880181605 979884338 905432923 908985770 140481311 408301398 821755519 884632969 770732290 965542197 417215712 964953663 535943664 739197782 389076711 719766086 960645126 986815948 836304087 872116802 927774748 928848553 699909761 992551200 433170864 591205803 948274463 967991847 322409811 615700239 730664945 925838724 659385122 749684003 142505779 600089412 814068392 867735998 325964528 789603996 203097006 988596558 320939210 484874847 200175914 978407269 170181242 940403933 114260253 156597749 767867436 795453831 123244975 919060590 207922939 473800647 454472399 999594874 193467141 791317853 862299550 926722663 94458535 981820421 853681835 864769370 619753020 730726313 561205190 905364742 217973191 913351716 150487775 733183027 959138949 978468612 585151802 644901770 64497829 814733064 909054105 979081757 130933950 318643525 612228327 922020901 527603198 995994261 399823964 710020872 640956962 805138839 567780600 730001863 60264823 723807066 361200414 783621345 17842205 812615224 872685384 954497182 367909837 463701002 757298836 923866238 130862887 232957321 565725023 930689570 50006754 903077428 522724212 598310974 664169378 963440907 835913074 966584489 791677181 886082424 351917095 782188053 698734775 782616098 794260670 951285982 475195116 669978911 167172717 946041753 683663539 827264999 896901986 978986530 684462128 920650166 483767587 869715683 385824472 805463283 556068234 836929546 436522644 955680994 290706416 810384413 851267381 983545640 394429156 552418559 657155856 668023747 102551084 211961713 806066098 927617310 249971293 778177092 634423882 640071249 833727617 993739190 943905622 949300515 541687313 907753214 44668988 906455149 96073803 662620008 403271430 409336840 675260256 970084466 850461833 854400995 354079885 421478175 241306362 982694737 114253193 713855285 846364998 867714988 625601657 741492040 856438050 912487102 916041317 928443061 330821991 807718580 250606840 609810647 557029884 887425550 821747576 857743352 832337076 964270973 322641022 351346233 807663408 819629695 897830652 956454108 652457704 730617397 67400121 693102450 442655618 630265295 548874577 633551088 900506610 911289747 189894743 403038231 246894725 347586074 197525995 681642410 311055840 984942210 871234373 923375596 742262039 934890383 697313192 812112333 974828520 997517888 461342738 711802847 724014731 783701356 629002692 768675829 332016467 974396107 541879179 975493591 240310818 595225791 241870091 474033974 891866045 923064780 220462535 407693358 250636277 899828321 790605388 946496912 890274875 909566056 326288397 994561941 828935539 905065266 891328714 979992390 656983301 812442164 623359262 688826196 683465092 977027812 4844522 492891491 866247290 983048063 280879302 598384289 878718726 894480947 120159324 794477771 83294306 953780823 930540280 933423658 99579904 873656037 554541965 859441248 278976951 516158994 900768809 992076772 82249452 131331978 210899103 613474623 309733935 433930588 938075286 962619113 958941046 993412423 579468534 797310642 629965562 637768412 528210991 955576427 761730554 915844775 173619031 669769953 609231271 952711296 1688685 453761541 632264114 954392318 680718923 833766830 539323486 763487262 602440756 641161475 496833315 701515652 954613861 985396628 206174120 941375434 350658723 635934856 467486326 998837213 80411785 238962470 306282863 891950397 473781831 866798737 149638266 418082945 585838958 644822585 756621543 770773510 841640741 875466056 2645202 665374610 607867063 713092410 875393495 987296451 873696952 934934740 630557537 677590282 425569848 682083233 721525570 932961002 147907921 996944714 198487537 319823205 562426078 815602421 41969695 638510982 939168517 987591093 672704478 853405785 834637394 996778897 784695965 853348251 904249289 993521229 449841022 743444071 296011993 568199009 265350318 759293491 119455528 555566936 216228640 813371930 922013727 979636344 181544197 454647636 972570532 993962978 496983773 659048014 213050361 929408973 388063927 896931509 620433511 651351799 424094148 575449389 607851942 699391200 412511328 427494202 295278241 846036571 103551798 136956249 968079313 979797914 829899078 883826662 838809246 841686606 267775636 873221754 946098782 949281433 330634806 434390895 137698787 856228324 211628911 886834811 279742523 987198899 110767445 602330162 199916728 507271407 912514853 948716669 173464038 747515785 198023271 544436817 653684722 901182504 40963410 241536076 392829147 528213490 468332060 746894545 220789098 459860661 570643476 920760522 435748051 767166334 190992066 592821806 995895069 998241089 289015648 379457575 341748833 588661944 676033648 799782109 531958635 769328023 7523718 491565946 573258417 961043599 183532481 444331848 586609722 919256367 763058172 998340758 234578988 980340800 529330576 857186175 111030743 751369232 410952437 788417959 49230585 360342148 830128278 958517975 165336439 342922568 415385782 442944958 306210282 733773881 99684644 975500953 863560372 906322617 716399551 733598812 233048662 877647953 383586084 758476114 701226441 878746398 606985395 669291632 294631512 746970972 48589112 795819551 677965488 730764446 753630589 906948477 194307772 923885647 130319139 478020180 26684948 50277158 913837984 989031689 734623338 831251815 645062897 732410954 386666284 465930485 708544492 798191528 57378419 123231617 418448833 932735473 109875753 854299233 823583910 932609350 993457376 994230974 523841258 836808845 96531494 496268921 755663699 792652567 937816267 984259241 813924013 919338094 451663973 562939035 593795020 642256042 473232452 716365709 883089356 895549835 271409717 738028872 667165713 954427616 568033512 998085758 173765168 852735279 801995565 931057120 726973935 950620337 190709715 706733852 440870746 516183958 412726064 988008455 774253765 978625965 831765564 883484036 879711678 964018610 74789889 996725921 367826133 818882265 917953974 969650431 622603788 926380734 142705884 924857287 600893882 822511280 114995574 651605677 869576312 937714758 293586474 604905708 994871081 998109770 419277477 548220733 826673420 894064522 787456638 856067072 448463977 679037882 165102283 654366058 214355336 390880218 803752837 981908202 398424395 848864613 190995490 830173295 55545339 799780579 616191370 745985172 83487238 869333130 28510445 99598109 853213125 944231577 297434787 434052163 952095003 980493386 688067347 762100502 521721167 714055898 52040515 264705993 291202486 603987197 977266875 977598075 114803565 830231939 136920838 662800589 177344921 723115995 570161871 942153259 527398694 796925474 355532253 883850189 256404005 623350423 118047681 523129974 798395169 819307325 721485750 808012099 836892935 925858520 400971609 899460875 310509741 428865971 470665141 572853165 894885812 926162968 823544085 900958288 792037669 811003103 867085311 951033242 612579234 817479006 446638053 903800919 295204646 792771112 448463013 991909191 725581492 908629447 387337333 656810672 864890125 954012749 686534487 776462979 408005270 529448058 16939404 312096549 189521795 368926081 715224616 902722933 276182679 473571963 138114565 351771081 271618680 660824653 774291543 904844426 70097776 990823458 644042497 795705246 411725850 904086022 829005408 874023361 874919268 890110967 148121358 258332311 173708163 598819269 673065827 828529199 416265773 954116216 876569235 945938875 20374327 965659315 736870978 913114654 806158 406862368 296567364 750694882 224078699 234807773 415868998 474271039 447691232 636029479 801612838 834226335 105158236 405788479 291046084 590894010 776720061 890988766 782544940 965876497 562262649 706921259 853124835 874187094 970338136 982863785 334708493 691111466 11206742 621585802 793249539 945551744 293002862 811488794 158451681 301935056 34176426 575688453 132458611 343728662 330690482 384233180 76764540 594613415 607386829 777462962 632433074 956031692 970933002 979512621 477686884 623843528 681885693 751334596 434265524 916586368 571114715 614627036 455609470 741782060 876571655 976318339 162436448 554403219 725780767 935931944 854295664 889519333 906982088 955559544 641369642 949367797 152286028 783973410 677014023 846901815 814077819 929524975 891235936 918526719 965850678 974914060 985032418 997726168 470972953 813599551 195404427 382933700 262120892 613262962 503112466 660532396 96064214 614694413 525115802 609733421 268098327 401728947 728268707 984454988 644983326 918699823 962207354 972875674 912485667 950216976 758050768 873716018 970227689 973755496 396114417 588166909 859026233 952511927 886386606 938182485 293339771 687584155 207788107 346197542 558320651 640183843 968490499 978512103 352971963 394996440 667052557 949719921 335984307 618131103 384728678 550894270 775461953 946307705 864358953 925284274 216248892 439882843 869677966 983772963 985027411 992488882 779748847 951841056 516574260 822946709 897206311 965227830 327882424 595006653 597313957 657158316 828022888 891862415 391877670 897032139 713931946 890130586 940317201 945344328 337114393 462279750 445875158 827266998 586703062 987444319 701150831 834249715 185249351 719881756 704957993 879200019 32321817 462757368 200943540 779864884 682393850 852641287 629337927 873612134 805945984 841444717 615551909 863523606 455386789 751618786 755523899 933300567 198123937 688826527 671333225 750792699 888326564 944611283 686890413 845146475 323307894 767393118 933874056 942594939 168018998 762292379 53955915 908416498 567207718 993504440 813589498 855371094 318171075 782446613 225119230 335258977 626726597 947426525 368251380 583209436 394206758 816720062 616256193 617714383 187854453 674050660 536781904 831875102 186205743 242255178 306591641 509509214 369734420 787132172 33196113 82320839 453484163 867553047 516236946 950072077 356352572 571149979 674595216 855743367 839849827 879829990 580492430 844522389 309429294 873529778 948397637 961473083 126843710 966647037 49341013 485588272 28091045 345671362 194767902 298754525 70263130 538549769 852332234 990853248 332602435 767331684 141809865 479398388 380696419 530690255 217800842 741838368 117305155 522580868 137003968 659557631 357587205 962627256 366618057 966544191 194445797 878042503 412896130 568532412 492437519 710767334 474139832 488546618 935282021 951021070 888770321 980884430 532214473 984376576 893886345 931957288 670951452 849741470 654920144 939355362 214186671 332709407 520593667 605236897 364663647 932283759 526865385 587303413 292710016 780051833 289874946 324107361 366540528 573384071 461506907 759481539 592183967 652734178 310823514 640936876 152018738 905985138 827744636 907964036 810385553 880160336 701588717 751705678 39355732 777764918 732163685 843305090 644314841 819354350 543074893 840965691 156298364 966549561 559917684 653853405 976625924 996628612 836531187 867006884 685824776 778742062 945679236 998942991 699148455 815741390 902783339 932350207 878554997 966626069 454110150 942355867 703778874 935475414 352673311 827921877 563388406 772528395 737753725 771087785 17512401 371584820 54129833 157321710 918903750 969003804 456503301 519695147 137971193 933993060 663271265 762985209 292141357 788875314 878837332 925539235 100428558 768730420 731782426 921900299 793244107 865062617 768983502 961646405 747748011 880593855 848781593 865574053 945216069 995866214 995798546 999933388 330247161 516492787 848094312 982184180 671338589 781409283 79920972 244283991 760512046 965398582 413625381 646118372 765085048 944919406 419964361 973576787 510633077 575400109 947461614 957379703 656856351 841290846 670165558 942723573 838757377 892646392 648270230 668693065 584328790 883242974 311303199 498814911 617135298 850486420 277984559 420461446 688828338 756459836 99259005 457965542 362926503 576329820 791217630 796537607 871906045 988035533 152917199 173103160 996347555 998885523 339776872 426578165 518779597 594667448 649139450 705233015 189573012 349253113 636878077 869574304 145631927 252010005 774846520 912914820 236080837 697429136 582980888 954350407 532171585 778229888 336520528 798595463 566824798 583737205 232530964 738619974 861015793 999864350 603082750 935294580 488209398 811961470 306918457 990127631 423922181 428242804 196263746 380746563 611536006 624168868 694294089 753850850 186460800 917408758 203676412 776568514 107082513 329633365 764999035 934656004 918911682 927190686 936677296 960046464 970553748 994563384 391115941 456137598 243643360 523729154 518603440 927235162 983540357 991508399 384344234 452575006 981758612 985954729 540402304 567496158 75483973 699447882 677531496 903145294 614177098 695822433 457151074 625440041 279413836 782296569 356495502 512998441 515157716 740053159 556236577 752343984 856088571 856445037 140873459 909650808 502220777 659362687 101591805 856675853 898783213 952656274 715689580 886648556 6169450 864828453 298733305 848848026 516244543 959692153 997844882 997957457 329908576 397709715 989607518 995303160 120373709 579610145 352921500 527295956 325502894 906547381 137824071 950793789 187624282 427084816 259899963 942477633 955870842 964588901 8306303 526925849 358299660 408122722 945520805 964543348 834228308 956582471 335331983 990885843 87043615 365053088 670459436 913134210 964105199 969642111 56321863 919322670 283789333 489104910 813973812 966788543 65161158 748250543 175253481 650481810 137515451 672586926 583454923 603265002 121953904 476019197 865704509 995025816 64208904 749434986 234458630 946042714 240879143 622552389 774398413 999342707 91777939 364199593 172132908 372863406 532462439 538243231 564285615 778112938 150065142 875996473 790742659 895313120 945710647 982410832 132561627 670418518 554221546 965305344 640109763 775475517 477768943 556520317 51374205 549310637 234933077 775249541 927929052 949816127 495700705 729983301 878123191 914266967 300528797 639371369 855739893 945755283 417207835 439330569 654765399 837933491 356366534 502844647 41582436 751934382 442111513 540030203 569175480 769890183 14005516 156775095 928569233 946630247 67992989 862666232 320123689 702301434 7510403 136384098 252119669 534826123 416227712 523308865 336339925 976504330 446171699 915453489 169977297 829757202 594258687 992815304 583609607 747550959 327012811 495402745 714717019 837367031 268668461 773539750 670747958 764925617 472631629 749539392 404925868 533876449 569683562 633918472 473589031 851258598 982761445 994137321 918732416 960052713 432555014 813193321 177383132 379300228 904089560 932608537 618362214 944081852 52306242 930463366 187253415 597476754 758139385 846566861 944283190 958292639 240610247 414373379 227884445 246975728 86529091 632870137 605459940 812562136 277374080 700298823 343379392 973753001 721294090 730591088 639392519 885047298 827249219 903352975 451653078 959418333 713103826 735484912 25532567 769364933 664670107 806474617 313438507 768874432 241129622 987478803 825561909 901637735 62385382 935622767 928203309 947430965 750921934 833508164 43121970 515191672 241302385 507935875 588161607 932288325 740512056 932975384 293569231 999595944 11446467 664396917 817640748 982713017 319750125 489707020 192812827 291154435 561452590 600658154 149741580 687631801 952449290 969175066 201250770 454507235 400199814 659783471 670279556 928088882 134577469 398910193 354614147 739360581 470341796 492822174 872697510 937869240 86640547 769486455 658572078 928071530 118440345 748775273 868388503 931382335 245039218 513345614 728808577 864342340 28795614 386599109 426850728 764723491 834764320 968775115 408653894 640392985 193511756 373906820 392922121 767234221 895305369 943150222 424153041 481496879 865477031 953306718 597105436 950688945 346014206 385833455 294121614 981821360 500292017 787079441 357432499 701244789 659752971 778864897 876776848 996984635 940258599 988385937 69860186 152524410 860403661 966007360 660824816 893681547 227843783 306778013 448009079 906151821 91533262 793881248 125533210 368771849 972872866 995938128 843798455 961726934 49831361 992977210 918403019 924977507 606597674 639674221 302583951 333032676 639569984 722962913 710971254 918446562 19609434 264299993 21524773 489440428 750274814 917804143 532827311 893276338 511709941 855674536 390952312 485116447 75839287 108934692 888007063 921900930 230791654 781858186 536870502 720566565 230128074 809246544 34616506 628182962 577820465 962857206 367200755 648838429 273086027 541189771 553442995 856738683 909411997 963520809 842145376 882283303 365948766 825131239 591576805 664748861 804257220 940280968 509314076 922463899 75541574 666130449 126439019 385216232 627999499 756159046 808656276 814172080 38428145 718894374 956420927 987221789 832887163 836837628 185057588 879856731 840178547 992747270 714665205 846262256 974058500 998982142 673270685 690910808 172865429 914967683 19285710 653352363 999708160 999894008 841052478 911315504 536458179 551214999 109535253 146295567 680927634 948726477 32117367 668229933 973323181 986561938 736540064 933032637 156027591 492525424 306165397 753915208 290575417 645190229 685675379 943434615 798022984 833014417 398265688 577140131 885955454 923550180 684292428 702827107 524538509 778177154 289816294 546572632 135525081 890919085 506290841 699109271 6727793 313064189 65790156 590957051 295826433 733516569 240404029 875159326 816694132 985974902 297310066 932449109 232945178 601584586 219314722 498041717 180790181 687601124 569241573 723003546 835142590 866911994 334915553 583865065 693506205 702761442 52001280 343505111 218628171 799801164 490147548 559984026 176899968 315543141 462981725 994353729 720100743 830917129 994710656 998085529 225620777 868634174 372941891 555417235 444669134 719493187 377033015 642706361 550893050 643311434 43021664 416858954 124415624 162657596 34422490 102371316 444999127 470262924 241175794 714858489 445031927 797096407 417189185 894825226 259793974 555914524 32893241 797279044 402885114 849265314 720559466 834204472 999370807 999532462 341960026 827233778 107388537 510845270 264409390 723530579 950791332 980510770 374239360 687325237 638610204 785681665 462434074 803201275 342088881 655857940 185064851 783713431 777664131 864980605 944828202 975196479 405905527 696296107 798816319 998393432 305530047 990168198 502159518 719915529 53647276 848270916 122168573 893596578 244644986 696796142 735122680 788751290 993421412 996972745 876936850 984701455 743808672 749132148 904706703 926369903 233360319 921775827 966547641 991799272 265887456 393322346 997529404 999873409 620814859 910935131 874351945 924420933 240783572 959406013 815058833 953004176 308720780 545924865 903188291 927631783 974281121 984659623 719547890 894457340 110401864 354397274 947756526 957915653 172217487 721042263 575607161 711822639 35574750 752619510 575105124 752676853 596395152 768922253 504002285 916349523 925224333 955750313 190856957 274928293 58778778 515123411 781461837 851685292 673113083 894723952 433355648 695922041 804741541 845587291 866198213 980908215 202342669 528272797 442124515 742889192 585445155 901716515 99648952 303123601 742238848 981150020 659310015 876368689 516033860 775225636 202290998 468820143 44646086 530246431 404501839 876711708 926844504 987111814 477366506 654755935 196244834 419843813 148108263 230975994 296147062 672414050 433521460 628071251 228592004 414938498 684071497 717905017 213240177 219417388 860460589 873409381 626634187 739199542 76115403 180725169 19646312 329940836 120868513 550512078 724653174 982969113 6890962 225800166 920572432 988491257 544915445 701126713 310415051 855365708 419337116 456348990 812437715 978811603 779395476 920537701 829946973 966800036 126911135 771591737 549293095 571316359 825074452 875687958 306313276 646426914 419498421 899030248 181762244 391481030 742113290 960734759 139974218 851514785 618939818 829093388 581157906 902704606 236854476 979274878 236612737 921276350 811889117 849752622 727859188 793919028 707453089 795839867 453716314 834350365 203595580 612093351 137251925 694471907 348819595 984982688 280548664 928517926 340682898 831903075 748900866 929001377 816986219 835064242 111527105 986295661 168227924 933782626 314512019 941721078 432668049 461441348 138719138 770397536 244917999 644514431 59929829 332358015 637051943 877120550 644277717 828873572 198993352 303551942 697704515 853759994 213219949 393104509 593909647 746346889 818407887 923678287 381935652 732189717 935582087 949436406 131015104 730387869 240047731 946845753 568167540 660063914 466962426 736599899 194977693 862228404 769206919 819061855 316034490 454160290 921268890 989041645 94287833 890591052 224598871 270445337 36773396 217364789 834521437 896813744 294050508 679484077 786975623 796301269 805093774 826110603 626096093 845412587 674194173 819820499 318068278 909946665 874086241 980367011 556147308 605494101 175218857 273551580 887008263 988424206 165097381 919782313 142357241 897136828 552524714 750110333 253709344 429633999 128763296 631515153 887388389 970813497 877144683 938981114 485140 212992876 262408184 831274240 557751847 754797385 202627684 757027755 527747784 994936727 173748183 689153447 989647322 997600732 642117535 808035472 184950441 308593951 657560966 889334255 642072064 718496778 655501562 952510594 647624081 958063304 639634241 768751059 417494119 912887336 377576950 771899446 905231227 992517490 14529943 810524530 114010301 636922886 134351518 827225376 944427414 990624995 287495969 702234423 694142671 951884534 311602777 459910973 791508416 957834789 542278563 679438114 683736327 717064035 95659694 990610153 272518478 825183250 188038951 351876737 886138350 995430678 750097068 867907466 432295967 559529292 511234545 778671697 347921335 973098071 131551298 249158486 890803518 984418405 656181337 793753024 51684622 818323028 403470306 924214936 146324609 326867157 779035035 929519445 694239066 696522294 764077960 884768230 209678802 222464174 598639449 629640527 193312743 247298753 322633579 556083661 146148002 739907284 975420151 986723246 6241284 32378996 710710497 921819872 195994283 533983338 613762748 765520090 668712072 739289703 158645910 668046166 605178995 746915016 827923878 934549260 801953606 969494882 954736397 980190678 758499333 958636686 490058956 564331778 624598112 736334773 947265425 984970185 917466480 980100005 701446356 983196066 956720552 975531252 741215529 882271502 629820286 755732968 76564764 589750734 667404550 830873294 209571582 504906528 977885420 995370400 224962981 330062349 413480791 549790923 51456741 575228313 173050624 249062569 730453828 856169443 712034842 730153742 254567574 345373182 619660340 653143308 284963902 859078463 47278420 392695304 715502169 723835519 651908568 992242078 480613364 730983745 342770297 757711040 453998095 938163139 622460117 897626196 454842840 820820701 217062913 868310309 69539405 542009668 104830243 397529829 938634314 943434509 709503496 970468384 307249236 712045550 811222147 838081702 363479848 982810161 328200521 753788219 70587524 749242755 502338134 764200081 930967246 971693409 546716976 885339572 257460444 635091173 814260572 990041905 786307162 880513009 95307913 318489880 876997115 936238072 388902290 949921788 182076858 253307592 151009612 743572269 198961501 384466713 41017562 793758013 284771620 646859324 799912478 867368381 485171440 705908498 939527332 942450072 865892794 999568914 361456717 400919186 317876608 946815903 260751109 396388349 664100360 861563142 352520711 977879287 208826304 419065694 600802178 839700105 987150955 996415728 576111873 764111634 352203184 663171066 103309396 359159021 95189414 197994005 464819369 536428756 524458419 803622943 212356675 605840375 521737775 998626565 731994669 812495120 32091899 492203744 945962774 983000220 838480845 840322034 801114077 968244915 719953502 736599652 844564245 980741280 898116875 976461397 842957341 961973387 517595922 539658172 335437660 391947749 670264306 871897324 689984169 863785137 26983934 116228381 105925717 614509499 14988737 841268038 741001213 822355119 369838156 416298964 580562872 668604796 402297367 678928059 554513237 650666072 444080230 731752667 350919996 487748179 420284592 444389331 831674618 917105339 223694884 455601534 899067010 923626656 637672583 990540925 344735397 544333609 883502403 980880134 238579512 866610466 347517389 434956052 57620095 428807229 193179064 654688601 980630882 985859421 12249745 174281450 293104661 833582955 53633158 398319613 144521090 190537064 692178488 694986574 37441931 343664380 787302256 865241551 173595236 418225228 489716463 834619799 767045292 911834357 16406041 604585769 194305283 755442142 353366074 836426525 45777932 229783147 207895967 838508136 564513804 982367111 909525925 921438962 512459541 979395875 215234872 367526706 108236814 422778371 656483214 968662389 249579894 896413771 87496045 314586983 311503213 423405172 328328049 800780894 104332553 987782528 875037527 999176439 546435382 609373791 744400574 901641230 42598752 901498005 425704037 766862501 753330546 953252035 576167733 927461811 511311581 942997572 877896973 961762867 285069071 294941472 137353912 969247575 304218482 459816867 863678705 940079691 44668025 823760099 331020546 823489847 797891522 875521631 376212977 421063563 844773011 989958297 229605446 530202914 120994301 717857935 981894604 999892432 768806687 899154661 769435922 925672288 275891797 401794387 215446689 315904630 79561234 584105728 957029317 965933704 623843865 681051925 693560740 870500507 399446993 787866533 822898984 965649548 403194626 982157226 856627715 986211314 87995007 238580089 798768921 993158790 757773906 859602298 84765292 667514083 921830883 955171774 165092286 552368916 787187685 902233047 183005714 928012351 436467602 564501455 668573061 723252212 187310674 698808608 526269911 930267218 403032648 869628600 948231884 964172663 985259544 993157078 343220690 504155920 583330457 930876357 128170782 756916882 462273613 825978440 645127803 692518960 499774576 692339500 203679663 407435562 443846363 828725454 108953723 566550148 574954375 651459872 301818312 796402186 844902615 864085247 660168456 880317842 445965032 756080101 823440182 834290908 144413514 256504793 233952891 278446178 294674418 611754981 493656697 593203634 805785041 820721080 790687191 978346933 630184092 734946109 286880497 679507697 624747593 819717549 804177317 882711747 694970921 993338346 337194010 384608098 790293469 796900267 963475506 981854034 164629741 281966786 672648209 789924665 72613588 827628424 738668531 838389641 615705165 946704884 756198850 969700386 569516640 839340687 158644588 349443795 170485586 202558455 918949557 997765079 378083817 427751695 217139471 269963404 98869096 583085718 668768926 805344926 85046514 459457492 865264537 875532602 152673258 422912845 625505151 811013969 957269421 970805933 379348354 939297126 162016487 405465835 32291605 710194003 769109780 804324215 72390008 250976086 8973760 801281901 881008432 986471243 884993392 908540170 791061865 967214886 187636480 588766629 814837329 908457300 30837656 198585828 977975084 990050624 550199375 711083021 929145088 995374953 797133619 829856728 127369162 548474579 690206093 825843194 621602179 972722072 724391776 795749398 83378852 961542237 439509806 773693839 865804667 993339868 120030986 954772120 198964184 680966782 228964449 956517445 155726776 557086460 929472643 957579919 211715930 892769091 347638309 488188284 419816774 618440763 474436495 950149851 727202424 945604784 255573581 817452668 577740220 871039393 22239990 372491456 263034877 779890872 554494721 918572363 749051809 767718149 42963440 972601193 634508247 690508188 423819153 631795126 43434193 960238185 540760752 607192697 498100698 813690281 890041472 951296564 265694383 755062546 184782150 353903240 880189236 898510073 833460067 894489859 429537358 435971704 977517316 997380390 338007645 732491207 625122393 887608179 403506341 849463056 558408251 722786302 238445500 820418656 419135513 525244006 839660937 979821715 686007078 754758214 441503458 824347546 608129024 642104601 916440011 987088715 805747584 948873427 817957482 938300923 49111216 932016934 481601409 590834183 967481379 981867316 406286164 823921138 519219738 708557143 250178952 517276572 927870655 971327773 690463279 874497498 874799683 885342452 576570769 811081931 678043153 850926565 818692292 985976640 494580603 903044013 522761044 543653359 329429937 438698142 814310938 878479306 940926775 981161811 304882427 817101231 316500752 976950658 296350861 612987973 936473692 975152689 336191162 428509224 922855136 943618630 979029376 980713609 981444921 991013852 941151678 980660928 274574186 998107360 209869151 567546984 386457090 728883487 186708210 216794351 764883015 829396214 986588671 986733834 273484021 394318012 728076782 870314339 485190978 883882889 314500896 704616615 417869896 992480652 364909013 561713018 444880414 776901239 889641613 898777846 366125881 993331918 249623543 789225803 758383591 978933569 893444 141653933 471430128 519182500 957826820 964227756 948910612 970166347 863277393 886055937 720651441 914521968 760292629 964908604 34774673 468431457 424229764 730925625 801077779 867981290 587710438 607226595 27523416 893706324 581982596 628642247 636696600 850523873 36785405 426026723 304665232 630606105 962620058 969977330 301478535 708647970 374611925 527401417 32408481 708552689 891329834 989477255 875794093 982384055 518322025 744266503 582293573 691601514 150806078 581962264 585537479 876298820 568388612 627014453 157103873 570428743 640177900 906099417 516637247 756360521 515565805 824364974 322620424 629374996 784159323 806922161 562086945 610508883 592730284 777626524 655889660 895376474 505280143 600753909 711801386 842458770 211991209 442958678 789039747 986977776 393460812 662328392 336935317 670343017 735027655 935956680 654200527 930095694 672880117 903780618 13008415 607793685 333985594 882765545 812251612 881985425 329034289 872493545 445808816 947934113 412131706 760003588 343602411 463358938 229694219 712645394 995195219 996315048 736597001 865017150 363731915 432925015 395061479 400269264 54766063 882181070 496962086 591664302 397761694 504608038 145668611 336728878 541520799 639324853 129649990 974134635 910165106 942391054 509723852 605951069 652359401 895713369 341646817 672999229 538810529 736183644 174687712 410681418 384992541 894264335 33386846 605493750 208014856 232028379 925408552 970176310 176070747 251520978 135194630 556379564 595803519 637797203 253642755 965134450 886504837 983719230 995086053 998130740 924488195 925562864 988763444 998895953 856045221 858818739 605450397 634307331 498869823 867041065 581765961 884412785 540940705 666368462 731991386 775862549 735550952 799819347 269379786 732194899 187722665 811912174 945852343 993146063 230233083 796149905 169350951 504484376 778163014 889306276 110327373 978484236 350186992 965603106 63895139 341879861 182733180 207988805 618731857 623114991 743945323 990608179 993398519 995000229 289280835 434607884 948036817 961677374 354813847 677746671 438751026 796479288 354909373 523277321 442144207 623177359 989575377 999351645 652580943 851061277 918377105 921623868 595006879 662880235 829934256 882519536 779729151 926193704 947458130 973885747 398514178 670669342 302727567 857848401 864164060 968231325 465419923 523528472 744124869 896485752 607186229 977175739 429910984 918210548 686585653 816171611 291862611 694089794 287114173 377811592 383212795 593102023 177632408 837213685 665497797 812305291 978276069 998653173 910390483 931424675 387979651 742183892 625400693 676929603 584967950 695906246 712308773 885791072 834739510 930490468 550511924 667488034 726336012 835309161 58433536 705027668 963665281 990961463 499167494 653956480 401856415 930129928 569743982 652839888 859784369 994597863 723563033 906079733 47410125 536208343 787097398 862599416 312928809 911664810 19687855 523584937 700813006 938597546 132040677 990808580 678393255 993546219 697877618 834170021 904214536 951168359 288646137 629805072 713980588 973408111 593692184 658035304 725649739 901683965 389999935 808669141 305180269 961430474 966907141 977910755 507328095 684348230 446756450 780651459 806160915 906103525 252028246 666393161 914896073 989644466 279739287 320111147 137300429 612671363 380909596 754751577 518759782 851954374 632772438 821396493 960282175 995260802 395913421 575210740 337680820 438004407 147259874 413961700 1928107 486341173 718334307 930028639 764979592 898974758 996288351 997143438 197267795 931251068 219559374 308132912 955711497 997590343 41349227 443793051 765141965 792255044 705585877 832032547 964197474 978883547 435117754 822023921 868752199 983415352 65313332 717816692 59477235 523045567 35182657 142899632 50949115 494581105 886883969 934462612 100358030 792889732 555601174 741301684 92406644 258674750 791043557 846034510 909150053 939692259 681348244 722774055 939279809 954409988 133982745 278953002 168415059 754800662 785906585 927773237 19454662 437704399 121313548 580793821 822380552 928184904 664601155 925879747 58292793 172684679 379844391 966667450 738850799 864560145 591733267 796675897 384316160 594270775 768047796 989362810 189680745 784371758 47140966 287173190 120244594 306765868 648097681 667887645 314794626 622749648 478206483 489117966 504932036 692435113 774385502 879696632 628417648 766262440 687353998 725120907 328137567 950022127 736399549 937897887 636759606 826357363 148041243 667034962 391060072 745251765 446890164 992324544 802129787 803488122 522318596 782450118 113201006 242222515 774675174 810118529 393006693 458450387 827091825 943809625 568353696 753756509 727422936 906283311 774743456 910875451 456854201 527175315 41317469 627186599 880707798 977645540 824442262 882718256 456621043 682694290 408742495 943073019 113607608 127350628 198658566 725704054 443442006 450971109 539686321 545219748 155917588 323840982 226997616 918627163 488368488 544553117 48569143 829143115 856303241 917218216 685627110 758793200 109738888 276257635 406017913 896450514 331923009 962909047 889180929 920733647 892008243 916707292 548552269 854674138 656374639 772400103 686541180 899811890 773946189 980185758 671775420 937775950 729341042 895290880 701186472 747293787 267672965 496216389 120967475 550897372 296021414 433409325 640419169 984679573 887137674 904649677 92062542 958533570 285552031 812188570 290230229 680507020 524135380 660031938 602145273 812211132 284288214 368456886 193508757 305217686 335431985 580405742 765607977 873926253 45675533 262378512 188580677 195842690 335815826 809498589 382524552 981449043 507981447 777972628 843209270 982078972 314307197 419669318 275863744 346088574 605153706 785170306 313825147 876406271 103463405 163322909 469156772 808567134 786867566 846244046 219150094 631305025 472263694 930477364 24255513 736198830 52699282 344840366 727057516 948864030 41116226 759358189 234250412 673918795 794146314 913713647 935768752 972048986 640565193 697995161 894560238 915524381 416860236 637830427 78805955 430763845 925854241 953904127 467954678 678607630 914161447 935315215 369168587 590062985 972055193 981632871 809238381 825643882 146050740 863190848 816229577 941326977 514364973 796364506 415485638 761785997 346079220 346183276 781054433 782128113 821833978 913052019 197678288 898901398 939324989 964096016 852784230 996229275 363803749 917809212 477488610 763946147 875328029 981065595 300848743 364506527 321270610 913405965 922730512 930137815 165784989 374250718 279231628 946023040 265381690 881745270 197732804 448449181 11379479 774397320 701400916 843579053 853655934 919545699 826903486 979264896 126751949 129048301 123168287 503357315 28350012 871139932 899902517 931707650 47918810 517972964 717811660 979121205 48426437 708368634 688227975 820495380 903956390 932381126 980769309 986773441 539487094 908784710 144803306 981346747 93468115 297634282 551515298 701261261 345224171 586846534 8112278 876429470 160175842 444095622 429863868 532207547 224983576 846598665 486608361 954992870 766429913 873240822 717659820 982783609 10805643 374590197 405532594 535844964 956789953 961063870 651308648 836598159 115486622 853633619 404171204 520229033 975022178 978738869 772883975 866597299 513551136 567680283 123908604 290365552 219018619 602820889 775287142 925649087 641769008 803219785 396256106 714598228 329267506 835441331 789383293 808792761 191875076 238706125 384297332 550469934 635095152 807185875 28012062 776422670 819267139 940450586 526344015 636096155 215254004 466106810 170351079 594419460 264300148 974758757 280435613 304816730 315756296 997588612 263184826 482611999 696436310 757025849 133637242 479023186 556459389 654500196 685856595 753743212 83999765 679291412 490041180 586551636 616519163 655642729 167352214 388669782 790155398 835868021 433962176 917202870 907502392 995744778 925408003 942721574 224562631 410227456 609634681 748314916 945088155 989812066 508224182 775112441 675099454 848148814 674908790 802465489 471421477 591733357 582424168 680414788 623191328 675036705 253579659 345990014 15662608 573775589 403720301 640274714 33589177 82074567 814916892 866132643 36765603 274097014 537550416 707177891 479589606 492204421 895615219 940260733 446615495 652313188 782857111 838809189 626266200 817144595 889679118 943436364 349917797 969005875 440372504 622241909 428168255 638084837 700718741 784132218 403469868 916858580 754118075 989435182 470803841 514456248 124874710 466076156 824391960 970745602 902203173 942265563 894837229 930789539 702658269 959590280 873466504 882969994 806325257 911656386 668951905 967841206 959376220 988766897 892049483 945083643 271524059 573796050 319939455 904157388 552029027 978779528 511860661 984141491 997615854 998770183 848370726 912621092 603296988 809079533 927306065 935377581 622405675 857420219 300075865 348908198 968293284 975170846 218416543 532448310 461335786 768939914 906336628 974530871 335360886 925943762 908359397 998637869 518586614 897048322 385566365 443900155 94028038 563279479 529423346 719651749 204930874 383716355 181784986 254997172 618911076 811199301 431289795 800409911 247969439 599897861 996844221 999809510 452090179 934051232 859682115 964111732 337768406 741825811 915567229 929167636 141798240 591443744 567777646 711001886 140634982 958887379 812780255 938507530 360363197 688716181 66527844 505119788 182161291 744369040 789415469 882614726 480996839 869126569 443823647 682065946 130851553 707521103 741763302 763529219 256076405 395659631 433274890 489045944 474817653 733710396 955288333 966338823 478743757 540228904 117317462 782079026 215558102 364100592 663200080 748371641 167949818 484517746 561704234 932590007 172607813 548473736 619143574 780921769 575365886 789364883 441003257 557854168 545809799 936317818 940718444 958644217 519956749 537384342 837355315 989441652 169762919 710890428 736126147 828143584 471278929 845396134 804421583 830393489 845776165 941724153 673092532 874778321 569207646 629087162 115546742 952674659 762743737 901126391 832099896 903497315 716258836 955029388 194634300 760258752 537561884 669747805 117526842 439900514 864804012 967237086 136688298 986046865 894307360 912488805 23962399 250319290 304456130 737065530 376650253 430025295 964673096 984090369 736375638 924347331 858644248 957284866 512372054 676252631 401169591 814064356 438263720 650166559 264965916 438692391 753604392 949855025 343228153 406086486 772739616 963936735 760713096 770092596 367803219 879182166 169392007 191692396 885841482 901190759 631750217 635453404 269261915 322308534 153918326 771507249 255643690 637721806 124655640 754765400 300082200 700822049 647532091 918143881 938692893 965299059 55955065 162763738 426895629 477573120 683641851 760061247 214206947 652119590 22245246 429653988 743583349 756639360 501737901 636253942 26190778 738091848 796854580 957680792 343532855 757545810 431025717 676123138 472094505 903372839 917012859 951069344 669470127 693082486 239755224 339169837 132555031 444424277 985907472 993398672 672873543 702397087 107858483 834465085 589943793 751413943 810879424 830232197 941594434 981490600 318403329 351069944 910693997 952062216 606659874 848282604 682443944 725294686 761714704 977358823 547762166 699900578 751186674 906773794 531462832 858168320 945250619 980973993 165281143 314176478 325112895 770586113 309081180 716187023 4734575 503682906 154938520 953973703 48180916 185634249 393353972 411235089 648533637 794145576 690910754 823309719 510853309 596958051 263917785 665455330 864048440 931120315 299611334 797989435 998462614 999153799 860689412 987493079 452482216 839706588 402704748 586524267 142036172 319250621 400882343 824179216 655589044 971706810 73610422 308270375 431066532 628610402 538956335 889152468 476254628 916051104 304708251 331810717 569520543 731760316 828425361 916420649 90466359 915564112 508964786 754840546 88016916 873021905 940669694 970689541 365357620 753041711 901306263 964509138 895503054 931793253 550314159 597598251 457734293 536793782 170821291 421706662 918392650 937356385 14390348 788088831 850695503 878859248 966183979 995050326 630008649 636354028 405495445 472784845 528185203 929122710 695593287 842508669 223244619 243065378 174346359 463882815 269162544 654429834 352235968 714670650 521526211 721030033 261206577 581067523 118940474 538304063 937271466 985522334 194258227 205413033 837192379 893864432 571805577 864624586 849759508 979743948 502179412 943017342 934480127 998105178 670797532 927305541 837114398 967204360 124149199 517439978 714266023 969837841 947363149 995451247 623434788 756515272 794414060 969957385 469929853 637091029 550572924 856900140 865715675 897667503 152295498 389690458 529798137 920364809 334628599 545882325 205223258 866634511 982169323 992023666 88345879 536964732 884780583 970391906 570132972 671510901 415860344 786512057 729590018 801649170 174010972 510623626 5917367 383601746 804604638 906172743 212793644 299415511 704597504 920460419 314614303 404160922 37396236 919573244 531269049 601522991 145958323 344400920 179563452 735832639 972495795 982106063 96556431 695675894 385506887 738917057 818500284 914185153 430546366 919749235 946365192 976631392 153574325 217749698 284555402 532974029 286186240 716253589 498384015 533427328 449913152 619461722 11953504 691123102 985965052 993599773 989106843 994359491 704822285 926771689 307156229 925474242 37330594 801679135 596312498 657104929 48718517 121838971 721012334 914099555 868020964 926985037 129017418 954904473 19220332 303877716 169874349 476988430 435634936 896141584 338030151 868882901 608183220 739175868 475902278 673712884 254504695 941931474 404714074 665506268 954634507 969218464 512792113 524886534 851893789 948276378 420546330 793071916 909520926 998172883 619306224 866955379 209419178 242746699 349344685 582428368 814197046 961112445 346553157 693379515 547935891 911170061 111820296 706829612 323805015 746244893 642274116 913551645 813053858 934596703 911434014 913211652 934383180 936625019 983644427 996070626 517990959 816331143 115227269 300864480 791449011 999236299 315775235 986225581 849586947 980784322 148758724 480536754 82452843 845567396 79897004 836490315 634305210 924161840 840278445 848170353 701851818 923636867 557938946 914305663 934061113 954647863 959056396 986689885 793984854 947420296 505578357 684746386 692247562 943928517 710286835 764955177 641426569 991873616 655176020 835789941 44826477 668637652 680798626 895482392 884965196 903844050 766850546 787189249 880775619 939327075 258612784 530113485 884234735 910847469 63064898 860326416 270328529 403235562 917739687 960510060 914540037 983543167 502478981 531722770 700395242 876808855 450607820 885263180 270672567 975182160 379863473 911160441 739395515 945408065 284416824 462004749 794292741 991976672 823552952 908966359 706633195 733469485 511595162 687150901 971189527 983376579 134404932 757474660 582409962 986139186 329727307 382784323 376059997 427845219 228452845 998128780 577720006 983015557 384785211 926302002 802274930 943237186 315310503 601293258 412040702 456216294 922004553 956848749 237317868 443862665 483650042 771620890 500363348 535227199 469810469 748315128 626529285 674224068 99933130 944143620 365185380 712481925 636602295 710124130 83471029 281075386 704875294 820535922 447305513 791245894 216520307 496302851 676060089 965581630 864385630 902895520 129493792 715571226 973653260 987695131 980405582 984527344 312611528 632284519 856164439 949844345 94697598 849358968 424556043 642687251 270760684 947679348 947844721 960832660 693862033 763829298 564347878 818997609 282177147 611342546 334706194 886657107 767354811 979502975 568822353 809969544 178171356 317441043 915769487 934810584 10718992 889860933 67173995 240433571 447691776 677105561 236795415 898198142 59098477 955387088 819416908 863281337 260667191 503448290 72231430 984640215 746730568 975630561 557625219 577964221 542994355 766967303 705194953 800941828 395814434 939613277 781942256 890301332 942982070 985096069 736793626 891553421 798453425 890476955 689712074 871042217 617063142 896319909 110200052 508338662 569311933 636116765 648370969 944644942 21848714 380237811 152268709 706949150 541242422 938067297 937181643 984761395 155331248 841782231 817548702 904774432 641160799 842680313 130549818 765388214 629247380 699745250 246892905 375244393 436248627 989944277 41361489 161476565 739727201 886376558 979407988 981415389 651707143 789036116 837448636 893888585 535663172 914488714 206269337 395723719 406331162 546041507 318847944 448685605 520297261 590437557 589900914 745481559 642288369 913689862 307327868 648031580 790833126 943971835 711800984 899554433 791135898 892459299 209647644 472063872 304394178 341122652 875905142 881707106 465786190 897872866 201731298 872584000 758940084 907534570 818861006 840319900 385249987 574808652 54232067 295450783 922811829 949014661 425566900 622151617 404538059 568021412 800838827 988456563 537443732 670396863 83736418 488946071 762992261 910778276 243550863 465928433 308694560 520955144 826781223 889115756 810970186 933054463 619368775 907742941 938543304 997007073 2071516 769391496 66472764 802024577 8124935 659903857 941144639 968873374 143758814 771997090 532715736 868111561 218049307 228130109 878239129 953186089 784162197 943344470 519014714 536873301 504069545 888186789 428025328 932855950 949492933 984767804 90369282 648448944 232249713 742086272 818129909 823686184 855032185 987156659 775215986 778560003 783248486 954354149 987289322 997117180 186945399 466897410 702184602 832569481 685940073 769906956 625745468 773070021 1299419 245796820 918823875 925961864 376540594 468997136 76362467 889608877 654381475 894036779 841983125 937440996 572174013 996438479 274887095 830942593 811474277 883235905 741051343 937880623 185856891 452736641 323490529 632242463 33191763 950008697 25376006 166347517 701035626 881179170 707765792 987783226 662146678 876911116 684273800 877257509 562489613 765361992 807242471 999208519 53563054 693225377 397563302 519669306 501579682 615830633 973760971 993245360 438009971 944881105 711613769 734527656 25466274 456920110 305709772 557838787 617686331 647637222 570307299 966199374 953610205 964424576 331563772 961228130 750283860 830873228 999197138 999757357 560596868 671030564 760475105 924600648 868256085 956165248 365350326 488310536 119376849 280631655 991965322 994090480 437321843 721618563 649946805 730265116 706533574 898967902 599730630 747000722 113441434 883144546 565436133 585379022 394042551 915619024 295501031 394601266 225791671 274758271 561941208 725800366 173868207 819924068 668042062 689432480 918579043 937614897 228655202 416196267 38316483 271219152 425875035 814163458 721971123 924382859 66915489 927846356 327197033 781831810 142059080 613001402 308274655 499681903 562162075 713776337 189965567 638952675 477504660 655812355 176070953 317753424 392551355 406094928 33906211 419759428 412767745 604852329 294613384 648218044 271902452 331033430 340250225 557819929 392835138 453119369 65655629 295545117 138053785 530974569 864116591 979674653 403518879 719231611 485694258 710730610 476162564 945447187 144556637 574067503 492777401 598050587 410627433 613546234 11519519 778146908 627252786 875506844 300125895 997318412 647755609 727485990 469545772 523593807 345419706 739980979 672664835 748331763 357341797 684620943 663662025 706891742 738808594 812263585 11424530 290922378 834507644 964388736 52930667 140883255 240087350 737866598 496650898 994822100 971738657 986210025 105339389 304439119 420548443 983420391 675827488 866905169 551240299 885131182 823516488 849291587 151959559 859506891 126401922 765217849 82084153 715064837 187735828 519693956 606984479 869878624 465096785 815851350 989922467 990055658 263947480 931053857 663861370 716017895 72253266 385148422 783849874 948966416 825358201 894970578 129222068 984727080 289804785 384315562 433059277 747726593 741739844 939414605 17804231 844077222 372264080 982926735 847032064 940403328 123667333 532854502 98501331 521368553 194722398 444349074 741517594 869469387 67455708 343606113 860758754 959334224 59609917 733067120 285755094 839589452 30976321 640671027 344151328 463274110 565085358 945557982 586170644 681114653 354269773 720120374 779929297 899792523 185903477 870966446 247414391 605350238 785446846 918736138 924130789 980006310 771683308 982242132 21182171 535939982 626395597 962793578 158875197 648763697 67888297 590218275 397393655 666405818 320385952 561096828 817417264 873111266 145720646 761378704 815245043 947309192 962690569 997920081 316228349 703649180 350124621 518847977 160977539 371141326 734891412 857187262 991061490 993909561 633439769 890376631 918657837 979032765 225460756 611579023 118774747 431535533 752286959 786997447 978084824 992314054 376210724 693404687 937587109 977522875 520223778 859462215 241936898 545411879 860507376 926832210 80061322 951809860 868222176 906243760 289754237 908881890 704181860 943405062 402039263 520295639 63292772 233153546 15649180 262576176 972491633 981887264 283430408 493240893 410626597 855099918 619023176 947697413 557098961 743511876 602850505 817864890 939355617 962643774 432123205 709092814 470555995 786539579 317233400 898657896 579773368 867321120 744463058 996949775 505341915 674705297 292482396 673447372 946298649 974866151 337972330 617967323 736564428 981715697 971324187 983684243 944034636 950650550 70988952 704794419 634434775 994138539 319184217 686806629 161956436 836495894 395073305 504820597 293584720 843881243 307438055 853918709 823580994 884346142 42379865 667289440 712171280 972025719 725112959 798210872 434798415 580753822 94057124 844042566 728007651 904495544 36546220 907626019 555433258 691223001 685095111 726934269 495984417 777529108 934115852 939027831 625392609 633456025 209084581 747272543 616339233 935091759 338666549 706542840 281836398 394048717 905608546 910419245 150201680 637416826 105880291 615542227 641788721 816692697 319588103 594039902 471020936 567431491 450597136 632641704 361977417 896650673 776554643 938511136 230184934 234707644 151176723 613483855 617841202 845728540 639040021 682616945 213599989 219959620 78556856 834188780 677550380 740753979 839539616 989998791 230820633 985052130 393716873 896543680 74106127 903811835 188507834 679829597 676544829 856386244 940135743 970438088 453733384 755461153 104531250 178306108 656933025 699507826 832867924 937271193 88561261 242227617 817084681 961070904 427582442 954731461 226791929 497696312 807109757 944504786 717240271 877646232 168567514 180895410 341244317 602627025 602362666 947895640 193828083 640628626 44124703 993975683 219034006 761153103 849740552 856013475 663268830 749929665 535907781 899312102 680740196 812368489 888499640 913632760 533820387 972461904 104699397 965016500 401903346 408240363 652679299 768401419 699118447 958347927 303027333 652162749 349736 525239647 517576921 679386711 17095361 570180670 243424270 514140956 463365541 877927046 646383088 991802012 526529947 696624979 125591768 790524874 510960 599353198 227625625 248728890 345810584 668128915 158564786 627833651 86599565 119720690 231160778 751528427 625559032 641594855 5304357 386580393 193182783 845465058 994595601 998249892 994520270 997199526 181724761 840707849 946899668 983885912 309857871 776114684 463996662 902615826 932300358 943729765 90165509 105256578 284774236 944564361 711134948 988284318 395487676 708940270 332287719 977576968 187915289 860338383 880958034 924968543 427312092 658050793 980386509 981999214 873331639 934056397 971469033 989400646 109745632 991808005 585951400 972716429 173710319 522885879 990776670 992205791 730207337 992915874 305606795 313372130 935408827 996723515 194680176 752416258 575571555 991845488 894976711 951723601 718669000 863394782 650655873 793874759 659500723 681839025 360969895 715967892 808543160 900425185 705475608 862500269 656250671 970061923 810478887 825678989 479113165 595336772 869264178 943057368 578043316 789495012 632972647 730368892 630484136 689976228 39174099 384581138 206640456 467044252 783744868 913365067 193804215 350903458 120310065 823675792 706851547 806041055 661731619 898148757 805161336 986026814 414401806 623126526 105019971 761540670 997196695 998903195 463830960 712927433 278559811 940265865 616093912 810824343 997024938 998674756 340559591 904534613 498360808 937207996 801651186 961419771 715307893 812550730 171509958 431613843 995157151 997097508 466381603 511845877 266712462 443332703 616281647 665735805 721129192 902917788 53702031 766412512 746066325 933669818 369723810 526010331 722787280 926930278 394073190 647750867 275658480 717864497 854034965 911174618 893648710 914063373 923335769 960636422 397275344 823714347 278279454 376704548 315035856 389488017 784095667 894061156 333195148 972049247 994025711 994202046 579884925 861854409 930684683 993147857 702180352 944215793 77661608 771447201 288540354 861054552 610308514 748968999 302591145 636623788 319757915 775786211 502420930 744274961 202834691 288237170 89845579 620911473 665410459 988715145 576141960 639846542 999197685 999953552 709991600 939164195 76508131 102961256 328878179 478883951 576131029 867774156 555423128 871794410 515698408 673243353 730197078 958993979 860626602 992958638 207014362 792412783 388459541 565237872 358893663 676190264 234489373 893131148 160632719 345533402 452031919 843054307 741846583 954579414 795225702 872557481 844534655 976420539 458117138 927005644 255478600 413299083 134562193 160845794 368246701 758195124 870207771 914420581 245207181 277363757 302597738 784187309 133032155 259747111 785985840 919288280 649257655 723078066 195254404 370239873 919581146 958590296 193209175 285685931 811118997 974253689 471636560 555288745 530871921 740021848 55421180 201334693 902616943 918405149 766530706 795098473 91732945 100326951 493955810 750296436 845024817 846458193 527622474 858869767 393818573 792280888 580834704 976987662 217402031 760705172 134764235 143406348 319286757 983612428 390675980 605268939 652080463 867893766 728233837 744886814 164276315 530539469 373456492 474248940 435965796 756378490 48231683 729707671 380764162 686117951 570750546 796486011 104418674 413218558 374841196 601950370 78224083 311080148 84929620 385693024 934416794 942629368 858911546 999734988 220648311 239863309 529806914 544808763 124957787 357261406 718268984 721664098 641171476 695943171 232642332 271044188 334876140 510498873 199386220 797134862 285122327 325413805 534840690 642202012 599268352 938492340 183730130 845903117 470224008 558573691 87371799 508435346 838285441 970331713 129546976 584416962 297537338 844470935 207266679 284870084 170025201 982460705 911770869 912629932 357207997 540478913 958904132 960924413 992911439 994533995 502894684 770522335 417922044 977880131 984131784 998536894 70573387 787022306 931674663 969205607 896008311 947719668 431513254 564670414 186151952 937287280 105906663 632017448 50154067 241213379 735713325 789809057 305359090 366328443 937406354 981859105 124378075 663955194 977504409 983376026 910140912 965598377 631733056 750998285 674992221 877254538 960666910 990912547 538220845 783167986 749420545 784942638 210761997 539394999 371963257 943465318 310868871 859340737 84518964 369672614 192011998 272137950 67698809 710311775 340638570 775280727 301318590 783611371 60994462 241448413 750330063 792820023 363882240 836913071 428894849 516668157 637655518 846324185 86302431 648719374 354193619 620790618 889188171 989399952 581093240 612228811 672639365 977931291 823147379 991799597 374517553 686610992 155737125 858798190 493236188 825548793 156116331 221421107 711628749 887348771 423643599 791477284 568718282 604352300 531596355 595280864 960049802 989355228 559987349 659462144 563827166 960339597 154306273 814534420 368656534 989786833 212640034 652077905 499769383 941217420 983021948 992932247 838067136 888573349 317337307 601241292 475737124 758810315 275417230 692274523 924955898 989907567 820184997 918773852 551181919 676942605 609960488 792843841 555074834 835598917 198000023 460227695 132632198 631110089 581149324 814201571 374405030 599211368 662826389 885385958 157146973 243959043 800973792 866715084 517646301 767821263 86037356 792253731 547902291 637277672 222911535 426498102 722172449 989022053 807701381 934226738 893150211 904250544 150389594 706573516 851766427 871059581 286187321 948168495 338948205 843582103 181224391 274441144 58633895 627102453 460766547 716777907 645338908 814446746 153232566 442517838 105182935 838544531 493911045 931002511 162540695 486096287 62550561 376189524 681023023 943773812 460056694 811525720 755140918 910925475 500042914 897960732 264356428 731290368 727779677 856705387 380730228 519885811 841940202 917864898 133206156 761112265 276527899 792729126 145505251 456389838 769925307 783616380 756882865 842094323 734669325 958175361 725812489 943013401 177355341 843808914 462818205 701033941 963254833 977919542 164199668 539363488 275670006 956625478 99037222 411668790 221814165 619427844 452395294 873243992 744539412 922903984 945700091 987136049 932626666 999855909 392253522 618141345 19990862 394006672 121523575 528389387 507204000 822317674 243053209 452354255 304246185 960203395 465637700 729894433 961031073 976809099 531073479 692133714 265457118 601969739 711506188 749791879 8309763 427463726 688360175 772935992 942834808 946506584 562836688 832383923 512846 994777903 263270629 660575549 773057396 897169102 998509709 998693556 352473170 800031567 481943685 543459543 106712233 492866633 506410516 775548398 137127337 685460322 409574337 749010504 127251970 799144834 923839856 935582560 927030806 947590782 847227859 881869224 982517926 985959814 670848980 769004636 763504671 996359241 370007829 970954123 367517456 843692611 298176428 307982995 541175829 718993714 797988921 886425213 527130054 808402151 700222026 911869753 445894810 682249010 45264893 177952675 894488464 941414288 980956865 996817887 943807537 961616463 469075632 892276170 134284863 270754347 917895313 999631792 971723020 983412041 98072119 930667182 82244885 548362846 12358768 177931862 619616468 751254513 318615694 548072943 21145510 242718080 894285443 968448556 909203739 934589004 624242047 646838923 381545379 991209073 827116096 905736134 951987479 964384206 466019618 879610365 452699505 613307870 660315450 991394500 302138561 570877430 752114395 865418477 18128843 632699038 969880112 999524383 160101466 542842320 9573444 494092364 785546269 940714141 777633403 989322722 12422476 285720657 216835875 290815129 16441581 833420009 6491910 51502889 442501050 893816003 504489474 836585011 569184373 919585636 243794007 530854034 172003428 729275834 101908245 370625021 368910273 966453255 787883397 910461333 969024061 969780352 304295634 516929220 238238218 630750492 730527128 826893757 55026122 513731625 66560482 751222171 110194357 199756650 393356647 959164357 620817252 906509701 278963654 567198630 734799620 898482645 699013999 762024470 634303344 958418202 538450933 670769534 154822487 314289232 526304250 786384562 26983222 290708082 752539808 764427209 980918504 995749759 846215536 878891570 806692242 884612132 529235018 623305483 90767711 626626325 438363520 734644281 813989891 950389816 321982198 568625308 218003603 279541116 277418699 985992586 444620634 963977680 217226873 607854241 340123940 723381392 564944032 657061715 892359950 967065940 961832230 968220834 821747030 899410959 569341705 726497438 54916488 111174076 522493109 832380241 744236556 756649605 443269142 516834869 872095802 901254564 276146754 817956462 746599815 892282663 932019675 980275593 51219127 482664076 16177041 84375531 14586720 473239421 655726747 907354302 368895764 483002798 262834982 572354472 609101046 905424803 238964848 684422232 924552234 952810807 940390793 988307706 346221972 455540128 358627133 447955890 405986491 507346316 954123293 966422601 359049753 578860219 710984924 982467028 846466569 906247919 711910056 757855676 811838210 941248757 660250529 882050058 720926534 909561321 689736535 829992860 132334294 725972336 157866987 843557350 748873816 890671646 814566193 915972764 959653139 968739497 524341176 986866752 490408134 743892932 589361856 936547342 329301082 509578231 563463307 793356164 187023886 410363550 797439531 802169662 163523142 764522874 356795632 551270353 596078569 925189158 186629062 830343390 501138712 964759921 122078775 925116755 712082529 950403604 87292431 256665658 73531195 341272830 779286765 903815601 268143535 711441345 565310950 884753306 134899402 517524658 341154391 463359810 200152081 688866944 782660288 827751712 354438796 423051612 104670926 900949532 2746669 543672673 387759634 805509337 931426115 968244566 5675023 751869081 612545519 718718801 105922059 773014289 540390748 846812281 499331495 662161490 609836624 739658724 64199373 792593147 585724638 821552580 119156843 420018879 799851626 842914089 503309298 659857468 863646430 927338472 802958471 869996293 466612890 693977874 928150609 972565888 561932969 934810909 259131420 282897674 739928227 835592376 86769649 404899218 12646590 547007904 828802945 880421663 14457046 704720974 786222684 873475380 773431418 996396808 423726017 720521519 347862603 524358713 118209220 933038169 60597485 830712515 344214645 598107856 640975615 901554211 548534750 564114047 120710399 218074080 630627173 951495802 375487802 564133555 204911122 670263268 512899457 690042583 397909418 950606446 978989927 998020633 6802197 148137725 411984534 849625218 886599716 899368394 648443724 951891296 56258360 568064560 312737420 785872958 313766988 996195185 605275483 714808776 230787089 706937952 667781390 928469697 892991806 942765557 296112121 557881930 612459769 689924515 484178859 686872538 875946011 877069751 86125790 148171996 74086653 819200913 173011368 693309060 396641324 533884886 613098765 658134176 372404982 577806094 967659298 980009300 885787260 905150234 383375526 917510181 741595929 906553987 552734742 798086315 187075049 714547942 610678544 961587519 720162018 941709011 993824337 996871028 316678726 824983342 256904548 369854870 898107081 940423798 66055398 954759463 671514258 947980458 389319739 876005171 396171418 638196307 185401095 980744580 938261686 993245610 12828900 736248649 673016222 931564773 123285523 753630591 414201211 798976123 910110030 910509709 473642007 533431716 245141432 303046761 22230191 992183124 739248983 931021634 574556786 712567349 812714517 938406704 240535080 540930525 538426213 796326398 33770950 723629063 411842753 992102753 65674104 142887598 814708497 889328206 433536239 440350445 988293703 998629735 97716506 287366840 762989336 879986992 337361164 824147873 528094189 897248683 755594909 983573621 885962591 936065215 807066663 899190575 21105183 834745081 576496373 594330490 183939190 295431739 107702807 467352409 544432123 717325189 965119277 983049401 334145963 662957007 31316120 481087702 526394115 899098648 97111152 325031287 620819466 716983426 867250976 927540664 584836615 652706003 195239580 290714342 804573184 860684982 966001890 986933997 827721285 927775677 993757379 994414112 741248700 903805075 221216307 604401245 621750033 973493121 450410633 825892159 30642594 895583878 684758126 913294567 738602470 971271744 784445903 854544352 1444286 359252949 323286452 516224507 529823476 759200556 843722967 880462597 485404642 957955231 372536166 502008408 373854916 533650453 451966427 678243864 65724536 278449556 32066017 48146364 683420543 697532159 465862832 996321619 26363686 475211376 868387592 938203836 736867011 826713956 971333857 989726914 837269257 894076006 662771436 986567605 700765598 897560009 386334025 458757340 414637290 870497432 490713106 771224620 199898739 383908718 628987843 963787632 178021692 700719836 144933985 648451085 585753153 828199151 559622932 957678306 108858194 381427240 894533864 927262678 468612495 957351044 74736610 989554458 259700173 339725393 300689411 933435009 69027831 157561755 396892186 935405628 173477274 347662179 948877155 981210021 698913224 960133721 606959159 750663655 447283416 749365829 978881787 996356841 790878005 846741990 641922852 781808997 61078261 414083990 349600553 920877101 916890673 935921784 354721364 811143997 277966506 657164717 523621639 710794438 751032406 806933613 692164995 703915944 379041048 448396392 690275486 857270259 970374878 977687308 33275657 772915576 338223910 471028982 530731169 736782953 679826516 967895045 327755094 942536862 615216595 624148716 700215002 945212519 479911625 908190648 865675853 927596567 686188748 936248744 769004667 822958024 411224140 688918535 327953893 868907120 685607602 796782402 944578825 962223050 266515494 592308046 971171906 975089351 588516596 599627560 225718200 486987313 931814917 961019688 158561653 386413517 436892956 549553806 766458137 809946702 135552550 818540200 286504111 815215860 230606282 957863398 947162076 979540217 691747703 852641547 266906419 574541441 338268077 775413963 494877185 817125051 747977395 830105314 620435129 723737156 212871826 923149915 85426699 965339296 237611143 853808395 835574491 923561804 5040790 632360040 267189287 611345200 376743569 533899900 249737814 425229374 664775281 776346848 495408119 536982067 363132215 684077792 169824603 530923258 621528192 829270779 885785858 971002307 348982347 687216627 499824594 780295163 747418460 758535446 446701354 669051030 455190542 558132413 783223097 853786184 373863138 726538067 839582620 873114036 226975200 635929608 518715447 946192376 946949763 976068040 48120561 656249264 666991966 902744176 245304621 829078576 724792961 827350400 597643846 791555389 350884918 816683025 730814840 970894320 75318998 83147017 807183745 974480501 749084292 925140815 200382603 676391167 364656397 514139819 806633590 860981645 6051239 203131556 701484433 769001008 899437064 956799145 437166021 589885781 592909574 678768417 568127415 952010696 789161541 852080122 193350701 803855628 359960348 891504478 176804942 937006078 1275784 203167414 354117672 936737747 298335923 727002927 587227203 665760310 676662952 832573328 152422030 894851709 147950649 972781458 838474798 864287148 377938509 382974465 992193563 999887047 745660669 999881870 823592701 828625206 195894649 279439278 435971853 983512559 752334911 775986625 779147308 807931876 150820958 299923994 75779974 184304895 104563644 267096320 742158449 969295876 185640533 498682476 180642824 424171874 583291131 719939774 436568719 700219002 12280531 127305235 577354286 634004752 250457907 953001760 200514856 412260457 101917572 179465299 877685942 963479459 690728456 851198396 268188546 734310232 319415701 435933614 457888460 756092808 774799808 828129361 943813274 983944383 114994471 258125430 626606293 830590510 48186967 237120377 77064100 698191658 811981971 850977651 884552793 988830375 398479065 567142484 45858018 639363966 352085351 781711946 210786814 930143597 279015705 686695221 931796621 979528359 34390647 349621827 889733875 927414880 935183015 943294844 175077911 861333756 207195034 238883592 503460825 514067376 25519863 181082547 676812817 704205572 942868277 993739107 433401304 847955253 658697648 704215891 933093342 954158680 788869823 847423882 543664885 763144362 414613327 786915729 388135711 815776456 929257552 938754265 556208062 857520580 436692434 866318787 827704415 975091525 781127148 866907863 785451503 897864754 525599294 801106619 518298292 747868296 670727049 891474610 197199273 374358055 215107683 305692815 724078759 742429261 607257372 822719323 263979939 328748735 541302367 543926007 906222265 929826771 995562283 998292398 176134457 770604905 113906914 578019574 304169085 963518535 385591150 897374611 740933461 966808340 155920903 587472700 211874936 254323127 76554472 387633224 959518550 990497153 3408271 470427172 226847991 387699401 270237980 816453598 878929031 882202856 153836028 688654966 205404317 218005575 356548423 597960575 576890977 873417412 518850860 828900314 544337337 918302415 208759691 393058081 694318687 703564166 837399867 871895614 14188798 856113035 897427318 979650145 746744148 919418399 244109930 416895580 75529473 408724739 705003972 812936799 87870766 416865919 908541720 961975581 765185588 806592735 385071139 892949185 762643524 976351845 523143462 615835607 896231406 977411519 585051745 721813404 105589431 555777932 117057079 794939161 892148425 964881062 815980386 834218624 898886666 978093534 651494017 785416029 618912358 727602561 592220165 924783690 138379214 906190399 164657344 346955911 899125625 918243750 264978250 513370140 953615828 980303220 98866529 103879622 518680157 976653562 304976695 540989786 414142380 850860604 11732163 434153483 457898832 747892585 833346592 837576990 771820379 910894045 789675469 970008810 58882504 312574760 94069788 954335856 719864206 879262357 243695257 998625991 968563162 985896570 344004354 364011789 298597161 555447800 256230441 831101525 52026741 646316385 144587568 716568626 243283419 528110421 370143109 980102714 794002637 928918556 39548543 213339624 586156253 747053120 649151966 699441888 982802302 991526333 480347605 775204288 186664940 503521808 721484974 931175187 242690894 473393897 464801125 506677373 828602702 845362896 340853237 468397297 82302029 921983165 46177996 768562318 421795703 670556917 345872492 504820017 723352411 813053185 899555945 944432497 486462167 855734585 444880152 508558952 305974980 629439848 682109930 942118508 501645989 762562289 792244219 899670215 4011684 84668157 513177313 687523827 650435462 818449920 833717797 931465328 5620007 846680625 779930097 908389519 538484212 810790413 556799825 952098388 93133150 205325312 934003199 982236760 989381469 998794354 890802649 957340045 856496054 941816074 521262392 789453128 874174996 894939555 471666193 583152660 205272332 253210742 912070745 996731272 135485901 976283183 546438740 789267808 726858353 780627034 557003442 854395778 355745111 555979454 722897972 872203956 606949842 716783714 382158602 595090119 257807828 974440214 630145119 653573995 584422161 628058964 36882340 868352931 102034999 194036580 364069027 816290005 572674445 858856526 74286626 244225353 779902991 783230168 541350352 557132448 873844303 895546907 489884757 760930890 60782849 174224634 415739071 740946570 982437546 982459788 971481893 988110478 177288769 556364997 728336054 958488080 207991436 339048966 729455441 994910763 470914191 641478378 989555706 991083067 113067851 366231556 82934410 932156998 886207009 913329640 76994294 553506872 552363630 858269673 570285321 867612716 558499242 645253024 948804420 967742540 859575866 996542338 924618535 977944840 367811449 388348695 992585604 993274895 633634234 677536779 527071543 717613732 107198379 911027490 775010326 796457495 733305629 770798276 374850512 514536834 883782235 907661459 980718521 988514902 249476274 674781958 673301068 850331987 269463915 808189026 321449924 517621198 434214006 628166838 76155880 275683546 286762887 555175865 1738835 948331759 581528623 871006777 246020334 254637182 39090789 877019935 664516510 674478739 837392421 874127346 628263657 777580124 860944370 923218202 274004992 788835856 737431186 742337041 478742363 500594904 418394627 489919167 994939945 998244377 846552601 972056816 875003438 923750571 942911097 991500411 790450932 881275966 741689398 903483878 931813141 947690556 431667037 655639706 913158734 961557798 547752734 670853245 982938612 999233953 219903425 504550154 167977156 812385940 793196692 857428508 869951006 891556456 758908039 973405756 321344000 918967568 128599133 876294335 510389044 870424285 268696611 423034618 599441243 994214424 117379130 324582797 281649192 468441131 251118311 470111649 521645553 585931536 526322356 582194801 632079372 646799916 577120425 742629467 227766422 888552967 848616961 961251249 860665592 937407693 440197361 555841115 751513594 774454294 775331900 845471785 889810346 964286457 597173867 942473435 224282608 477085647 892657521 963494411 943713120 974146169 466515669 900700003 95443951 158852556 298773267 370734923 60267510 647464024 466915167 719875767 181505291 553465457 696311980 894426159 523972443 741705902 14630395 457208250 769337501 793257556 326256449 606638154 717991513 767548836 408950347 894361161 344389612 466902944 860291721 966512816 729645822 751164086 656135543 684307064 51454710 606283273 621084115 635777026 835844456 974004966 384912286 846417117 681430511 721797549 435473870 809076290 320276277 563989686 179503203 529242396 361425409 645775645 206124416 575852799 59178189 594638624 201308676 786451115 714074546 981426058 176619848 413217305 850718075 902621817 640281292 996914554 67186585 706743543 309886518 397071809 435126433 763975624 130282969 446081643 447790912 850356078 604156804 632027762 650998120 867140151 24918948 848279160 925263478 977855886 142406388 611125564 808302958 928419338 596044610 744925694 923288657 996249627 919263386 972940737 707495430 838096192 745761062 901303791 398003352 893415260 527028648 750109548 101409860 713701921 429287100 760568612 639366758 944029495 201425909 466227556 943147419 977553661 611809953 945194233 435935498 802122773 355308694 776943094 782371522 860740178 741135506 983956116 211455144 774398087 11487722 17747640 387018191 841709560 331016564 982968875 790947698 835373942 436831701 493904555 374055551 429180866 399302516 442200319 472366805 512489334 683222536 874713328 785182554 845678099 770981323 859987480 200712992 536920991 24251351 978787053 317324210 387328274 452527248 475770602 449984217 804308145 391114756 887209405 560374554 631051798 233965 518374961 636094867 726759022 890320886 892806791 249095679 417940058 333526277 767634591 483078846 936796548 208040212 369144276 250943931 573334478 525988563 975080050 392288670 403593985 228533114 666054859 362893389 579572533 56317120 151107636 862085615 947756862 311090298 513600465 894012708 937240537 813459726 932291103 688802026 987340270 530269882 687163486 89397327 567899666 889299068 895547502 117949119 222974697 163242049 260679019 596805224 860799783 888158820 922753752 551596942 573690600 874801493 994097741 687415112 701515268 41497701 618407771 637808959 644656852 42863113 672802658 259111118 414129939 387143065 750384574 647075271 954589626 655576967 962797432 727059402 768009055 144344717 211851998 949617888 989643669 571554661 575662894 103231592 249574479 820643705 984180122 612489799 800948727 373488044 625154467 678338996 899133373 19056695 541862933 711373897 767292723 278610537 476554776 140268979 428603612 219261725 788762639 254963030 313888183 559122896 823724299 947608215 990125278 869316446 989991441 374473680 634826407 798669470 908132690 881635890 891219154 108877847 547852223 919525814 963794387 311314136 971045726 791830527 815357186 406529807 683697252 626775573 956628921 854237720 974425935 498238749 506993022 810001663 948862976 292908183 785190009 821311470 879119337 654071024 929801144 384522212 835796258 962087396 975539963 119843213 870584740 983730659 988843720 785467312 982973998 379259445 549756611 242421097 893959764 872958871 982589879 910567257 952653600 406381804 916016683 237326182 593453827 267918010 750949624 402489253 599520500 40710741 359121917 16974180 736114994 404972175 869628015 185342070 477311903 250383052 719818204 445408046 736650906 889454037 957276944 823905385 958385958 244390445 631690773 602488653 892219279 985060588 995697063 446410392 692466236 171709119 242513523 791636179 935921660 858768823 948051960 315827219 419401705 337128645 675673616 468109259 953832036 354765700 780417347 798821472 927152860 70377634 557239198 143525040 941442102 560957063 760027641 11171846 301515065 618665095 638183823 58223756 176421774 754411991 993586916 208247559 333351918 693906725 837596903 463689195 493242985 511800236 628339005 55119411 555249242 386513223 769335459 855537732 857979839 347657758 774890893 591451694 889883697 595441836 884623877 719913981 964640266 85208763 488396253 807515935 886625271 706091136 890847334 185486946 959308519 175897749 835985697 531144795 815305254 377244531 899025539 733425751 831537180 950655656 970487430 644961065 784078444 89074588 613338680 308827100 871135051 358971411 903191392 226471012 910582220 620693491 823505466 864023420 976117915 868990835 881657715 752663244 762890819 61862584 822299155 288377482 782298512 579532838 743147945 489230545 534729504 49640134 833117073 699687375 820832599 595985844 636523639 1488169 292421875 581185092 766713878 820982123 909451950 826952047 931407127 156980264 190808723 278148407 815973678 198514720 230318455 456608153 619364782 878826249 992979905 141642652 535540181 921653071 971876231 312942621 339312790 595403289 907954548 828968377 957386989 388916614 966623861 543467570 596587118 145035314 348503236 691649548 911515346 726779213 835317510 224775794 784880653 727883178 786749322 924647715 998217219 206408723 690931876 459471639 899324088 197055904 389252578 637937532 957596828 249300692 679594395 135845106 838390511 866615948 891956641 37437083 833618692 731931430 785723268 142350668 479000758 745579741 964357016 575453022 603689610 865453312 997438435 218972301 599369150 208548432 966775402 806253219 937702164 752114299 975663028 466690242 856066068 213783746 242742307 561120233 977035675 518025774 985061384 891504636 891915306 568146988 787529493 403807104 966844262 854996907 954645148 849719091 880212283 109581258 389026817 208579677 980993221 170263448 740067930 685276678 961516231 145990259 287673739 915309632 984658767 936400676 985376211 997150266 999713132 863441046 943778005 907571674 951812534 13914500 147743988 701923278 798905122 959651659 966193325 624252342 733623691 173010041 427187077 174026736 513300549 727495804 961112352 26031026 838213457 601919170 618258001 707754990 763687120 151621430 371098977 71021245 511875684 750785910 982439434 169541317 666809090 958700836 983134290 406233744 407453968 408579721 897525275 941317261 944979387 814450549 840379203 277921222 290848373 834671313 862862009 347698171 489965795 918603930 939727806 845326147 849486414 783181838 882479935 896573229 980930470 796297965 911117050 973773408 998838937 726144175 958300711 459507027 881185326 915206870 930314237 958971717 973089075 11874087 623714742 727552051 930648864 491514257 684074997 783441556 861719656 19351389 256031943 517668461 945861561 32181243 492207533 694480428 850399576 999651066 999689810 468633243 617665380 682177579 827428762 727751895 736102503 104240384 723979420 225720243 835339037 473771880 692048111 179766567 524886862 77252188 189549094 460590484 595755509 369692803 725449933 383337895 644685404 620180759 701205541 764531235 993337332 902956576 926007778 185410108 734012751 404003643 832615663 234017219 922155715 650461624 913643474 422791180 911196040 426593390 626039821 887913205 943214100 243300807 491941208 669224070 851349007 535827150 869516697 678803911 823476885 500953306 563438253 63733663 585116620 882192342 898773898 513650039 696966133 709190748 856283127 448098391 805221491 922841137 996465830 647180824 686725294 958720469 999267614 788978503 833735855 441806561 860082958 754516456 833579690 704804398 967605840 917242159 967090413 58743467 781778757 915596193 932355814 974856163 983122938 49122089 426552057 941034205 967187219 421101356 599316207 701535090 948874534 166410927 406054456 913650436 931346884 555845017 568717395 879721660 980150031 756636198 907322484 315012237 368521818 846420641 851635123 589450109 879073439 439028813 455489663 858095383 939103886 957934401 975615130 768723484 794529360 158097863 683152610 675235371 711623910 988597700 989636764 979275727 981367021 26986729 329710608 303626751 522999968 210513505 509231110 959535155 998141491 39240705 686821535 154470950 295276971 798781167 964948376 195203990 484599914 287472293 699204991 473516026 768678783 639535613 835676409 252806940 538824600 272933926 365613503 963148470 981172035 799663360 819490479 539942244 919390938 23141789 970750281 331908655 681834502 210183640 375083968 483304013 512586279 782308190 864730328 637031164 714237075 350613232 441724169 122193820 324681689 312344164 549919626 172155192 518997997 467440854 513354618 790100221 902537998 996933426 997857262 772001171 793517964 405182882 602769240 23829885 801110612 681111921 860836835 221173924 800771301 864542635 989097711 893023601 939044895 4815126 212206153 513215756 926418476 419120409 518198827 710285931 721559952 736883644 867477559 101980023 940412741 678899218 983181875 272444241 958774455 711530041 869724904 264776302 562701165 508637648 623094645 735247285 780515620 197752870 197981573 81562539 789373484 288205905 656920637 279490557 344255218 795363809 965745969 741879008 810750833 620479833 706384351 971379134 992790353 848652765 888232075 878428748 940102960 364985311 713992081 799847620 811453441 414002622 935189558 812173562 961596554 383107537 971867861 279588260 983278832 223560977 274572361 792403141 914426700 185124924 481779419 20735588 157512589 822478147 850819600 602191629 783407474 48291617 543294417 693796560 817379563 244109321 590131197 420231937 794735737 465757102 693959065 922630512 942081974 839844157 983711862 626900982 950340529 344056197 626408104 176750742 837102205 534115059 628806264 102079735 658109841 351485220 498872009 466397525 663316771 947117941 977381629 598422031 675602904 602141707 712427506 893195285 939686353 2865806 435963983 631606029 910615125 471408579 885886808 365366442 926126421 325538682 817315597 227159170 858348656 535831525 847309972 967723864 971491905 50332262 726834274 630983242 755842514 869980109 916402219 31433925 526985073 468965704 909029261 732043223 862629168 50919342 242298365 239499501 934843735 240883306 647938035 173332683 696195758 240043306 842224649 455680799 887610014 779746806 954203644 377085172 395201596 733519408 748346691 904546389 921771672 890588867 991882557 400225879 618802840 930964791 945941562 136429047 729130464 104837986 369866890 818334846 848853653 153095834 702374595 796768385 989333394 611245592 835816291 330243438 651420065 759484391 886355205 973644183 987686634 126601092 980129707 918476002 969386481 751070272 898974409 775504864 826997254 471959669 794274027 214906563 497670432 422975087 945847139 891208655 936373217 864931045 953252283 345626094 349577505 783252688 981617494 82333852 890841605 867253354 952259307 817050021 854651535 722060735 899872782 14300901 276791640 133798389 911687387 281280594 526284911 718161558 820068239 522072474 959048124 832635747 900857543 91618967 970489600 130698279 446531637 301017945 791506524 383529458 757615260 622113379 916603689 220979111 627670557 604937935 769438109 494548330 557082493 292225586 734268732 925669640 969611384 744585090 843919711 939741163 975981118 726368932 987697399 31201349 536374890 910076038 937589600 524342671 667659340 11753412 322507852 230101635 735600187 673628377 831345019 686665102 958305286 252202325 672130717 696217628 713081870 879947854 981839403 477254012 843367927 873501851 998329299 760988328 873631744 560479658 911692389 763970733 984476881 879052752 895995432 973689673 998872345 556541085 652905101 796822036 939306946 948531769 949188956 404074238 831014536 27249313 467564037 479494109 725497890 608789967 996988642 510918498 931266464 172702214 901149313 61604529 747150160 652903136 964094156 852130470 942668126 514391442 884204083 978242988 985609798 579240341 669658433 692150769 961548541 52043828 137066322 798536655 814664399 479317219 669713453 950273458 955290608 869826313 943277031 259047614 336029404 669484130 719736448 674389792 830513105 242914225 966719187 154222395 909718196 23390825 58146077 571181311 654164265 65544739 596581285 343270033 910307367 923210368 940756328 121753301 921566069 24351309 171959466 167944063 917197062 828628964 848933772 616086687 969576944 295025146 490002318 425328204 765107532 683794480 746311532 907401551 965141459 79881895 224023028 616903642 648461422 501337674 920039998 815500489 854730696 633901152 983501936 319681496 908720505 781863257 891179953 298754791 609775490 137900812 787087245 768596197 999098748 803785275 861174583 196448727 805302263 297049430 591265460 556422037 829557167 537490461 644772288 372584919 934143004 911263558 988572003 610127683 816242512 96309485 979312281 465121869 984434638 997233969 997886892 7764527 209875631 68440371 197906957 410447760 749251975 473781358 561312116 310139939 904942702 572912300 979778086 950543556 969686030 857569454 868249851 547139987 634973765 628446770 759433028 730939171 964755160 76004766 557128502 35241685 935275445 885473624 937470918 560941128 785809817 727986376 817185435 578280554 872485863 541684525 913937127 897146295 953008448 404471269 722049590 685960512 967777420 230642416 867812442 517329176 523066764 521796626 987967382 57850685 461750528 878094574 964939485 564536885 930357774 553952857 906308836 196241926 772071102 86715523 700967358 119515592 318588567 306632201 847813952 265509399 715375638 147889046 710149092 733286015 999192465 347468509 543706142 371556230 654234736 777394681 873859324 704031558 749946902 666867121 852257741 168312797 272808441 748823414 835909662 733303799 875982894 93903466 588554683 106328055 223016857 431927527 435199217 296587884 435545395 292904960 499201034 853744580 861309744 630455504 768320037 561821422 805483973 108630144 402021758 4387327 943791879 15961630 240610146 559357291 796269551 894787487 907894845 577415457 666749236 664911495 767801885 617155125 801012230 84237189 680654157 115857192 273226737 789962734 937996974 80277405 542413407 415687447 469114163 202151836 318135296 668787762 729029643 432968444 534756882 485736757 532519975 544319911 697398117 123350009 393861458 581856955 602661333 734044185 983958032 111084054 507187185 230736978 403252411 962412932 978571848 47269250 662047741 509940541 650526524 841784346 856579196 677441175 806068095 439679196 890374598 273578601 590616470 54404855 299881355 952567489 997124047 201825134 519883599 41818220 655462898 352426225 634445730 581023598 844803010 711997386 738594186 337349119 475653128 535467914 751865851 508676613 758473233 346530664 702223375 661929374 904586805 693737920 943905709 188318467 493540475 156030872 363455988 681548996 776390064 470934382 491956765 497809259 823975351 233309760 641596586 273087152 555516422 121645861 761953340 190563181 201784462 144308802 667433874 970947766 979164830 612125218 934265503 189900136 672728714 745942058 799388695 509725246 995183635 550639480 781280898 634992781 930008103 412199485 530259224 146001439 261982785 562001618 919983488 420282061 575643139 438392527 603048334 591383543 818296493 757119108 858287348 58220900 172082794 891535041 900906652 777381503 921741141 90188536 872487148 567556172 678300719 749594222 803098718 200803587 467169492 668897853 943801708 356470458 603462836 352444791 732402562 35465500 162585096 723871913 947141637 892434636 918389868 965020815 972753004 897399682 964082174 226490211 991526388 783448714 812499941 334632218 609534027 267886799 352445855 277424136 973094047 653116380 656992359 374718162 858978301 720405750 731339141 136807878 786079549 538175596 757851094 612400968 733794720 218544123 961779160 758785828 864529352 17705323 413199753 877439406 916806464 702802326 708594978 905511373 962406525 378848645 927497901 267744380 543972647 997427204 997600496 91049236 413682941 507036723 594750912 338023238 568591595 919904709 938257831 191401541 910504432 954997055 977526455 695995328 942364269 451093826 789360285 397439069 773696853 25876611 100778144 833741273 972213745 258789939 761808707 786113452 831799726 95329936 518529890 842524945 879058759 634461795 984861119 32607143 676241168 907307304 962702176 118547713 283258966 782581942 815743795 894793534 941963655 837373798 884658245 249341210 756750209 111770375 509283569 739376259 853492387 274445386 573047403 364758253 611395945 788135140 862752112 547996074 958748094 798106374 908104626 777784459 823014905 420017054 590336903 694550872 731405351 982992703 992720856 182850196 970262445 47421420 56522497 127799101 959037429 657176376 874327785 470677240 598142571 761799472 779755794 175385106 210023957 117551112 249292476 337222611 858308846 31586967 758911307 275373385 873404479 954898294 981955554 18571374 866510078 998139609 999790525 228913909 422808038 246197791 823653193 579759280 967121477 645673566 651948791 316078530 866515313 261995708 292596431 902567388 973610193 264682462 479516689 329009964 414146522 514077661 655201026 408889564 788588539 14137610 621458508 291752414 750356760 707893964 816582945 542845558 610178839 408350166 523207387 607860662 751684148 13122851 432103201 99995854 641166334 910615631 998248898 379874117 818919332 517803828 794109366 520576621 936437696 304932793 910701430 677481643 794664230 547587483 732896351 849824033 935745693 894219728 935098231 331092722 443274694 484220902 603562439 393884439 714362631 914742395 991733580 291357313 292723618 684943761 846668779 745132468 750574613 237854129 815290290 78825476 896669363 30637085 690212920 485097077 581062315 604055434 832970282 376183820 816532217 844899020 906644380 59316857 558158205 962444814 976860525 348334179 877127108 133103643 737164479 952904170 991381828 721588321 907520253 705326807 746803300 662912938 881707743 889256606 926001270 320654351 851801562 114429932 495702912 825169047 941294076 976246226 992591066 444043507 760630243 582391954 902365344 69777545 727154261 704554681 737174512 348664320 820868151 626819745 997645874 450034239 861828516 296194215 831571249 609220283 931379175 515723261 555951250 312828921 490664656 197459239 473522324 889872096 917329855 353234751 445540445 113331643 980248158 241935518 528305270 583182751 900744541 967155979 976282863 941943696 992680098 850959323 859725990 525867784 688209867 846867854 873588113 233253995 970351436 956757749 958171205 66904230 681789433 946572511 960646509 730127705 922083340 213108489 902920217 185362727 233554808 806245948 963451788 470534419 578971689 388485163 842862912 930245074 954662317 368359992 662765802 95540337 220202633 45692904 318868814 669818221 815808046 196754843 931089565 200088272 410617406 644634294 799555679 521107269 562698277 192576891 465052252 889346820 903411502 557630061 629577999 314806283 717925014 836421123 987399495 636447877 913765337 135745676 920205495 759698651 798608384 519468013 668441555 8578585 214230172 548655244 859706490 348770558 632353915 282617034 517854113 538332297 812040648 769041274 907019836 896854221 989273326 808443603 965793006 289768108 817375185 899942245 957795249 257008104 538207959 276881107 533598192 614443478 658537842 40804734 578537561 49518191 496263719 656125661 812235314 139028861 569934614 665582955 729934805 534496109 574614229 445673400 855405676 765579098 841083121 41742830 199427780 759065593 766727475 930801181 945684767 621937730 714150065 846725019 908256759 381435736 654928324 421703057 591849606 625512345 704967387 651373638 981030314 702707374 938496713 679060114 830869368 830613146 934265362 119687479 376400497 738505053 797846532 520385599 561424553 407148556 534217583 361859230 857565989 87473292 271870779 921175405 926548144 360175087 524040018 583302708 793982166 888600634 936087109 558783363 724398219 271935858 537044786 717971632 849205640 333324424 409603815 80067866 160381074 100183582 838186944 787837542 815814765 801088588 933492270 605911796 852033001 461370469 846629675 253665791 278488715 90287626 679079495 15301786 410375373 990325704 998200290 283091069 978578341 117590826 781465671 181528634 659964595 183895779 194741637 760037097 901136805 995315449 996893073 409644937 902799838 737208187 863421463 416311515 461869061 958111185 978923494 611626627 892742859 124950630 592919591 151926007 550857336 82759719 719020358 373183849 721807962 838986558 937232943 683806047 782350629 411416348 981088520 881163501 895478545 25481282 357402369 946547070 969183826 873895048 918156419 288855393 382626348 520807161 592419076 166092688 568400007 768052939 778319982 168351939 688935948 540380038 629332612 865083002 939550155 711205378 855184288 918007040 918650403 200459305 477779265 948939589 991978000 543988326 696992755 544889889 749883149 418427116 619781943 267152753 390693549 440103302 919642607 427801578 945748320 876206064 906735705 305171800 385216799 889993329 959484001 368799470 532692575 154959690 644936280 836819213 983439856 297804177 626327369 705569834 760345440 449081928 520657694 897385655 905951894 744354157 930324671 948428365 989404176 462883362 531087537 730844346 972224474 60714758 442480237 70241721 720533747 14715209 986590595 598847554 761664066 305918199 839452246 486163493 602772466 75740300 318715885 132353484 651333092 662598514 859212881 454699474 736803594 416183554 453457200 460001177 474920884 787577619 998714384 812517741 900154505 253574065 691172120 556306344 556387974 691446680 753823337 555680500 970815792 820647182 938943381 467057547 489802303 197164387 882942915 139610486 234863512 785685960 912370182 513161704 517077170 183283073 406764049 707971691 749242924 71645302 185760279 450589834 669646059 513930381 539193306 249117504 559818691 261827514 940963752 797540983 965450968 190419523 457148480 213801090 892386959 347994243 554402855 548537537 872834158 397368446 625403952 254947832 455793215 86748029 696245819 930158005 977498423 257909450 451899369 11739601 621592475 112122105 560082269 477414369 775667622 388032974 686742689 567847023 870386442 977461581 990988648 960326424 983900233 279717011 408423068 725771861 799639835 355718992 746631449 13030574 147831283 838063021 973897857 584875176 846329142 25556021 460099731 634159352 880418441 559265953 591034044 366881914 881231663 585129737 907985256 500669381 913183323 858754760 962134155 190804738 209062890 486809681 646875449 491317845 774443889 680598502 954280036 353522815 903058252 943571888 955890627 535076555 982487347 221149370 503963584 412131687 460726284 446556295 846865426 241528668 844657760 532592988 799251368 828499983 955358238 953967337 993771035 997143407 998220059 343985919 400593765 942591789 998678981 5699948 465827634 917400247 955879432 744572549 747627094 582127565 868280017 306105254 485410656 661639897 761498152 563628901 800499572 909310848 965380620 705029497 865709409 454910481 966757447 373145016 988854638 580404899 713844239 84597205 186675352 221142037 413491326 404110171 600798565 484022676 536018421 93550283 310674750 789720698 994014829 958611975 974846999 658555364 815113186 729682741 863941306 609650064 777163102 166299158 455388069 420482924 919134576 601287429 939949561 781697917 947179030 903725851 926909701 567673392 837092772 895513144 907004245 219000564 741717774 381022003 635832625 345820587 662517967 261111796 405295042 910451350 910673821 642504949 783470435 816666371 839480917 372536294 602753633 153567732 750249033 803258862 894231301 589469738 734225227 927666540 929628099 625563291 954521214 804668428 984683594 97863252 528481232 245819000 448181028 98485077 681921500 222062552 929157136 65600896 871843293 836397610 956980356 305885005 522723020 982024507 988271713 916644527 973912755 297367784 746096923 701527154 817264059 717051327 958593870 651553089 696956995 933376728 977556068 935104090 977892757 672084968 859640065 932464434 995327291 685052400 803871459 250514941 332854171 826032769 993181706 862559855 895261973 814249708 903577842 804183784 948426148 632226153 858756828 663259577 678219017 100854914 605261802 682048664 877497513 177476037 638027887 309142595 949906137 570144821 850628490 167774310 244125975 471340185 733415805 564524577 998141894 853837954 876717919 507496846 637196938 436609741 835621397 328653162 488635893 822720816 986799533 658096940 996339832 374646151 967770642 923785690 949867906 61867090 128568245 507710054 971335239 978886844 993219560 96605527 991640348 757583015 988643486 595631168 623818889 547928049 924815117 233846267 739125874 74903836 641137442 449909250 624293916 923126982 995560495 457017576 618867617 326377683 819093687 793284533 812773099 641050577 651142099 97916340 458212421 904634719 960913133 768097469 946108505 16344 469962847 826885756 886365045 464844182 725724511 883626251 954130539 948723579 959769843 403688174 981389789 41426501 558507903 700742133 778297665 896936594 924843346 620997111 823494222 255460293 581108415 262277762 624911335 546605691 699847583 257350595 785327891 166896758 694761733 404027136 846062729 8812677 860456890 127613677 586411886 42530510 578747107 320261179 694923592 51672764 236629849 607726502 953800428 972791691 990458191 685696044 915776486 781965783 950252290 359299561 465230054 109418892 952117596 332314660 800402846 99057108 358295414 633768015 806589876 979067844 993520725 827205329 958278732 945655962 986247562 250301704 737309862 424669503 814484768 951017427 960825269 379417264 818059614 105542798 253589079 144011726 299025735 737150161 880513777 331541475 912796233 888165237 925898414 599902762 844001001 39279338 644685018 613640853 743980337 871454385 982041856 79350919 167226760 965463374 984687341 673711740 932051599 501081673 606789422 91594076 325260359 537010346 688621743 409700015 771145681 205193337 783802087 68544321 958414789 204788358 462921442 602892588 979916211 537331182 915972809 56596855 624331252 86537013 404950419 951009438 956039642 19372275 288949526 53948862 982854747 446290346 842324868 327406609 552818267 941026341 984221854 263796659 662266004 133016617 654965749 731434328 826576871 619082754 911239280 901196515 942483290 382277497 566940872 580299563 747995689 833493820 890618800 967210658 988826691 367249773 901757227 124779925 651291780 941427753 958334029 299870194 653691137 211298744 821045774 596726869 875501093 126028022 551009917 883990666 911039733 28274802 474496979 124231638 537179122 949688250 996030471 524540186 908761185 793823120 986107644 748449153 997839955 513820107 871271938 509606266 861718856 205611260 854440158 143690230 493907659 596740188 993468598 817472031 976722142 6204781 580311771 205476856 879871486 252181970 270581339 225489187 325421507 960559667 994816600 784095975 852964413 662342576 815784054 195092460 712588991 157840484 820891811 682309276 885717859 504771486 911804854 126329794 666567639 288953416 830852059 343082719 366048873 843712359 991501953 597069514 877166691 626476575 892146741 624185898 973796720 72505350 349807608 940713070 992046364 277007460 353766335 231128007 947840647 151846896 633876675 144237574 310276011 830447718 895267886 674082335 876446393 48606770 678738143 433529997 474917378 413461699 452570676 328991607 453713257 476444540 873725104 408820018 439922158 675288882 973241004 814191225 984016434 593546612 783571375 92902075 895798343 744355161 778340070 175438813 398849939 659520298 712987809 252560466 599632473 390081224 946740426 815292046 885283713 433109601 859074464 569299197 936592946 274071791 960085590 842708048 897953790 147099106 157661086 39412019 418960137 584546029 702999237 484742107 545482498 115849471 828220892 887030459 894662386 788929855 835575969 362426242 934591975 736998818 941603006 65792862 804896276 544222508 615680125 685504153 941798950 20666179 128518817 80750737 738047242 91006557 232347595 715364971 789004712 359824909 652192476 126853155 608241100 465043306 874366180 652436271 683621673 435039639 639696708 644799117 895089278 276801962 770638122 596946465 648973600 813790860 922050780 6479898 214351012 795121710 987883170 15739162 161514530 84459334 589594895 461594577 899603368 883759301 929824559 769747883 914219437 803312668 972484382 335087531 459655345 452175855 498784551 530858924 937268005 577769092 795989298 677871193 992162797 165342199 703290721 815951609 849066926 216310787 502737848 167649916 304690939 926138079 970607869 888597232 934610519 439697989 759953464 548912386 632111153 146574443 566289953 315899478 978660870 179235909 341563208 690040528 812223454 50829579 531608944 787296551 802002550 972551477 975055444 81273546 310689431 888857793 946806939 346375003 811691760 43380079 974592469 475040763 788512634 41627251 891631971 197048506 769146295 686896787 793950997 220299462 340914473 203991866 856932249 335908012 900075578 746152187 912240167 174233647 685856494 634550117 959317163 494051793 503738363 786864902 893058958 33306991 50487157 397246375 901053565 55320248 421033684 115033030 360597683 906116071 965491143 89799764 159218928 35775567 207218453 947068575 993423502 422601344 510463470 771127118 899457423 542880384 843120675 132884026 861085065 326325729 546973288 636194013 700409822 951236564 970759442 989187346 996564579 407695468 485915232 864316470 977621418 919467364 938477444 62862082 764884497 915124254 956366757 324425756 812958719 62885986 886370807 462996177 957480349 863283527 994934889 901361340 998281801 77808522 87846175 952300463 976363310 638470622 658807241 735466898 875887146 506488577 575126220 392515296 994802770 536969077 842998222 494349179 999065866 519559232 768783075 403150135 803662997 436068263 451850120 449218158 835127083 229180721 611844208 266599574 824881822 281095085 372215727 802297584 993802800 679701183 688177688 523919711 775760470 30140957 364678241 876948807 969621285 412772701 942788041 365697615 857118478 489270641 844386122 880372533 917364077 206303038 214510997 807151102 890198936 684877054 826043056 579862824 863471821 842155885 873676601 763945566 843432007 585871417 766148291 227098388 251537671 18682043 620682246 782658656 888098705 930329175 936787961 844297440 937169786 544894143 926470963 297245140 438422579 569790713 791032023 118848154 868950637 933237760 982872696 82611298 788218112 964276139 986775419 726602809 952963709 120026763 134436545 760267254 769135486 641550521 793387957 45959274 327668154 945227754 989315177 649030331 930202180 183188772 824069125 500413676 801614650 945543127 976935099 696490219 882817806 693404211 964504170 277767155 675786639 4510256 130391434 735788627 920126716 915262042 984280405 65728036 317835961 642742197 893436965 654144660 789727251 949745890 998540240 306586900 654743730 566593652 830340794 824918612 859080137 638126970 868860952 603411902 971795881 176628635 605328483 901981290 909503338 991538346 998955139 476250197 791825968 84340233 130689137 729611984 959630204 22648032 487028706 755019225 999857036 410181498 654173408 417164147 931037408 349125943 660192041 110487323 212270016 20171491 93811972 824059276 888369404 488723435 595503677 626378523 842653943 688092439 985611989 236502696 420509824 465034672 760810173 472746753 653199527 56365024 541741220 148264907 151886815 111154090 945149194 762351631 859681810 969450504 973009492 143715478 456971504 421763130 477247385 345864641 396594567 457830199 839167818 405240771 716588042 975918003 996670655 983061153 993386234 353516421 651807999 188139054 959926617 546263757 808119923 45700051 409779154 98024304 864564817 755696012 937432477 11224107 88760967 279146433 324917644 908389250 936041248 991109478 996133706 311587639 397895899 216384749 339700758 136106203 509318972 546396061 661116942 390877079 463123992 557255190 980215048 757088929 909593844 15600554 729815947 311928677 861182283 472524749 808437865 674288430 960066746 137935320 245607609 559167008 875738202 933026243 967635720 807340087 916013503 794594254 796721454 52733984 292342516 592393709 968290737 400926510 792380333 472235323 804555321 635937039 707055984 424149262 540301771 443516978 562064994 879289169 885383102 270252492 319948144 535525934 799307413 500575156 644300725 949697374 987051656 38550813 628478102 694862737 761174527 880255229 981946283 539563020 976804415 52293132 148506348 716435832 729217818 912571835 993155207 894745131 950626643 763418162 806549886 611276800 632824123 811830368 852375277 463914817 963080488 166790687 754318200 278867908 766182090 913861524 919096637 512375528 687839014 641877393 672488561 744397148 915584910 676228309 764896688 958295409 990775057 645959142 698809483 136119604 569787477 753908272 949974373 997723008 998401376 813705503 943654886 248098778 941019833 201499048 779067158 684445390 764152490 870246811 929076535 61011498 280079016 514226220 976519748 947652065 952996305 708409185 745647559 428938577 926904393 90310203 301257133 526810352 924614293 906395369 930353431 534321933 804919405 439705571 600511149 765070951 888007642 608631154 643645732 581991751 955821122 632015666 848884742 844124822 973035765 892985901 929302548 920809237 937557901 218241175 439730827 419567540 913851542 810550756 981085205 573991088 995933076 366546819 880368983 118829264 503878561 179692329 328372532 642757085 891231349 795915843 886994914 965051037 996486617 628741912 810219401 221187325 489749394 746695826 766580305 181741377 897801593 473360314 596557045 919256118 996122160 594475687 888292364 734163097 821378808 206255149 585739009 246348381 930074300 46616034 953181474 212078364 662018385 104418095 348829134 285240506 351661983 98241245 783113795 399379991 873010562 35560080 847940795 62736264 161736766 631199691 919967984 851451306 951654164 84215167 555782768 805768414 870989413 635599053 913469882 445116772 790972652 398642628 579428585 71542688 721221164 451418360 540510332 977054481 981092406 771524235 789727279 92815016 522290828 997829806 998890705 538760912 853840436 900614997 915103969 269895117 987500636 151151167 741505098 476689227 857005904 488362801 939593349 360569910 962121410 544195146 766067013 32073239 808106832 665472961 817626278 598460542 941141479 134342632 148835308 557771195 929295748 396854150 774021893 95184636 506958688 328342405 931745953 891515877 897302354 661797088 837030998 534648847 734926395 903295796 919772983 948493258 955521794 459061433 498913868 174383378 880630367 587982906 988617705 637008136 890749289 44081057 82910380 891218040 990506578 948621740 967298499 273402894 330553571 105815416 761285947 628416267 805814770 298652916 930731002 798468600 820465362 644334424 808069776 630914773 635333395 70960851 762880136 902818953 988240613 959219273 977353881 64129259 366243793 551194519 995974001 436178940 927287205 817718069 992854671 926935868 928452704 504879282 748549231 424690563 486605797 345684404 638821565 140558612 962589250 376962138 506087946 900101692 976381489 656432256 680860532 154301489 426989023 364972592 611551500 824450625 960956033 505871199 521157053 863569063 887916390 908684158 983017084 77504246 547693518 246900904 446561680 678995671 854271978 459299113 567830027 396430474 930042532 232680567 537018906 711272984 938489734 372614885 859726017 288338011 721529606 885230641 907313585 976558370 987074812 715794415 797445398 378994171 885064575 815874958 920381169 732885691 842111285 79139318 372333795 436284765 515578439 418345057 877594163 818112385 919503797 697300471 990511083 326391856 332652805 510306252 563483007 553683021 595183073 850497537 931376710 655400421 742700123 210401816 857907142 202553341 667047723 366475346 797369036 440627483 711326613 88781983 152350277 953611968 975486330 39073102 516062293 942285901 999529960 682438430 772921083 890768579 931209063 226776395 353103289 529501471 881366305 294108163 374034825 468475741 745274431 383385067 451816172 131027876 644593014 691062036 886271108 812912586 972974249 664775054 837637084 631128993 902304522 881550062 944636356 406129599 732229129 134845823 577662610 210828182 221506465 96132119 332159482 814808132 873252515 424006465 539994427 506216427 748166589 227221318 735356045 629122705 849404741 843942358 984047511 117225042 556878816 298381771 710610543 881004843 957526541 760302410 816233030 791279181 805726743 223894884 560885583 42900917 761163507 459616952 602500502 234105992 420097072 529035375 745762282 674091418 913720027 638396456 767874502 53714732 430497639 712975604 901129514 56128066 951771647 335014071 557541902 774988521 791613990 772269818 882458364 52978476 392677869 492874713 875968548 554139183 578188006 716584807 934312936 131133364 467104188 189776379 233192299 560937888 798789649 305148531 734940318 898700111 937445386 181829932 679672379 324840450 354246360 83903362 425818556 492788322 560656590 528023270 966450396 387538196 485837854 9899075 816934842 13522513 792140331 98090642 645592203 709615152 965970860 301103161 471373671 679598745 764239287 557270983 854963336 617477070 857711667 705983308 938052855 847838974 956193323 343248835 489011677 708936245 717709908 219586211 454687226 163727813 980025518 403679555 501542933 159616934 504799116 921581105 950204041 230362239 932035766 724657378 997985497 8681159 918941528 483721268 567178825 653372392 748196082 977195101 977736692 58118756 996527133 173565851 328076531 906095843 992783505 500300151 763720720 590312082 792546584 848265095 879674187 994806464 999391473 669954485 698071748 626089660 793669577 813592306 893078311 773408188 834484562 264733156 310333255 947647931 986849506 903683801 946037859 339487167 976900769 451901146 879308576 373811111 755504174 527591694 784206209 574991159 797399299 557623455 719596537 940836995 970805304 588801298 710473998 739170882 752827319 48625896 208125472 666376087 981757064 679606776 925857642 612778146 750596044 904374353 922226550 931945822 985703702 319629865 824175309 832035260 958007018 951565263 982142882 980341676 987062416 84738434 971448557 645964243 901093246 795006109 835326263 835593971 919715634 292902582 411352311 417658548 732403963 68366817 434459589 246913060 559275975 169816972 173544688 990510701 997892429 290152449 390876829 616064133 886961035 878652642 961040135 777847553 990901253 194667766 610723328 275069854 747731494 537469087 792277828 30133421 905443247 99728375 669623007 200315945 412390399 482052895 683463656 567933390 754630551 703420420 983320715 255930597 906366625 281214985 760745943 633413799 706225749 753113100 912654531 719492742 924806864 483384430 489311323 13706941 520406286 834360698 992940280 174238396 825536820 887332647 917290355 280447256 565247983 649484682 924139462 586206660 736005684 501490580 718540046 903560373 993769167 792416794 997402708 496719702 948336701 579015016 778796516 193550157 280789852 198731260 896135599 79753573 740994889 881996210 927531414 679778612 936830801 282004008 520046092 739171590 985430824 893879987 997537936 437137252 703133650 595338004 623607708 775786124 889020646 562799009 645955652 477362370 557025614 302899990 957973288 922362577 943156775 843722988 876929614 748628606 857539541 532762929 623389069 276418775 658523311 40055465 119624239 278343411 811517747 241459201 875774900 647712811 916595898 210892365 452461296 735358594 789758581 140484754 547452464 669316270 692363590 955978 896576400 604050888 704429821 194827424 788750020 876598919 961297130 581687374 771672845 127937117 405882795 235127618 700942162 808921911 889477500 48728095 934882937 43896100 725008545 353153667 640441815 526834814 697823364 164960710 900585777 152817652 218791994 237347604 851787267 387002112 411375875 557671645 845719885 703055457 749435996 246931981 446204627 916249080 958221702 697375581 795457093 234891321 511750903 76289605 818457390 842136569 931842984 219359611 619660533 912542187 912703085 790597844 979769748 494235206 665334224 624602263 761495446 801136799 830432599 680755700 925688360 199903057 797742498 873381313 960191984 914800835 920401783 166578223 602204576 875602266 898229294 867584370 881464375 886645616 935678279 946518015 997751555 398005543 476337022 883223688 962631855 795371744 962101419 487457171 692561246 249635289 552901557 487999330 948948543 492114674 954549247 866435005 945529504 631467084 886627942 198955698 562071520 633462788 855189077 913394698 960523395 711081995 798383956 475108780 517038905 689214600 937790870 582394074 865996800 42037656 93682534 13668211 212143198 585350715 638368349 44177780 368151489 343391619 496072820 39729126 858135084 671874539 737205838 781206543 883316465 77488965 487686941 206091425 465673119 611984881 780506205 912216951 932442216 124197954 671968585 74648205 792413061 689806326 767918004 80444534 411262941 362235626 648313740 482518119 626778427 662580125 941764826 359500144 782108177 920589275 925609366 338692865 433890994 912647530 971970632 726959504 775235149 300168954 583767805 11147811 740378634 325366594 739302227 54109028 195432749 785340847 939328309 697276759 906345559 385367529 439235496 963231826 985816171 856078871 944208475 649505351 728209161 735063097 764061860 496529951 533238018 910070643 967863617 524678374 716931815 411019663 502044203 751852718 957815236 364437177 386184579 707553030 785862853 256621295 288661231 761078741 963561658 541482844 703897538 530829914 829036966 748622963 804728068 956302388 971082290 799142679 942939896 881380393 904602520 509009978 918049392 923785279 940019636 655600700 885838849 507044786 809806689 706315772 785664903 909400459 929883696 225922731 750931743 205914086 616227489 5629873 164000753 489562532 694400829 847562987 897070330 103000505 784722263 275493498 870958841 916565977 958827899 410531440 721583133 134402821 656586917 336159674 997593232 880835463 949648856 552851792 773360975 27053534 243383954 694176824 868623634 457743228 522769575 929757590 987063729 875492244 901691088 979635747 997120389 457043969 930444377 563618468 636366517 450819641 974919616 243794148 352229829 338316803 847262303 535933076 660203707 66124823 320969788 173761268 249407662 611303490 912096268 205122015 559077542 845919872 892736713 880813531 981017791 165870075 991081265 482144912 844001031 159797906 397149040 94222579 709814400 867752202 879594053 858508391 951754694 720884092 995277292 548561435 952850444 147015751 356872721 338179554 352720739 787719567 984748339 429377626 895486022 448457945 746586407 51224215 189076448 630419153 780133020 208752021 779378884 573909976 597170419 318710661 822300037 952833873 995958362 436682585 576232252 788570031 948118860 300307945 848343761 711389364 778257712 905403524 965706858 416391843 510109314 495019569 511726206 343337460 423735410 890742318 906215701 999934431 999935639 83953528 305659039 383740393 464230412 153611455 674698435 826895453 960648938 77125843 311966336 171118784 878539758 315602668 341998108 383667955 969449512 573965052 671315735 337527112 515120718 871942691 989702616 618298302 653142034 203831574 546609945 313032175 857577800 200347956 285984685 323001171 323663254 117888084 881361095 217009854 729770434 711166304 908015329 689346125 970274943 796468502 988495723 725498956 804068850 829782131 943459291 570160528 787904071 767008229 832512127 953151562 954897404 441787850 577384493 324802567 485160073 61851870 545817571 520923638 549836538 119596315 161158777 1729522 252548350 346587298 771775902 572641326 899508844 350128534 575408587 703397279 821033462 835407222 992938046 86289128 931733961 142841731 687539616 75019750 976461298 132837430 171783511 918975645 937872557 629035534 838801460 517405396 900013184 529395109 558711447 76666558 571824535 469903783 707272370 833296183 874386838 336852374 825730148 988274053 989035749 171606468 710364354 625139774 921760835 693847204 923531127 586388617 717253749 152051497 395946589 393836890 586468646 703237907 809022612 369949853 775776797 689469286 874345015 751307532 770600931 121410091 997342274 612576099 619648701 884368280 923716853 195814163 423080616 247548465 520862853 736158329 882175514 629145175 716860731 432584233 657151067 85671990 597847922 752611108 855678967 772164253 878980254 162756151 859190774 587557670 872309997 216290654 843412270 814942859 915922963 238780418 703045352 337543147 747417287 161946779 581943134 745746875 814776843 583612345 620755413 300880773 328343656 81964504 954655488 867901721 876223966 684767434 976481239 799061304 952927295 387815870 542687147 293836753 344751209 356652072 540365892 466737901 727253894 767336043 801884727 948468408 992101264 520847676 890098756 887444284 932090240 262951970 653883501 428485616 529365039 248717069 586832021 844419074 952470318 167969407 627710743 68597527 403059180 734994119 998548509 521373211 715788985 838847863 904630242 372967337 738663198 17389674 627426177 223083801 848276033 429164216 691520784 44909730 295569597 694713266 944650147 77667068 134258747 476801064 617096299 910631640 937054790 58726145 718574617 102043425 231047219 728987276 768954215 326697107 535395565 606488141 675157784 13909039 666593969 514629833 895307231 871816897 904526247 305170490 620552002 550083910 876518144 110716247 685342354 792724275 976589357 885847083 956048033 612883155 803570445 994279937 999185412 550947243 914574589 267927910 919399478 572467244 688844721 944794722 982989230 751782992 933458051 616440164 913738257 802647528 850091990 751236721 979301358 481106062 642593047 184879393 251669600 876390595 977842516 353793436 639622974 730492465 777922352 783325274 919000255 476657587 891078105 6614432 18036753 540399123 674537970 66495497 709592345 136885161 353769173 477253010 998716953 32040947 943826053 86451342 393732983 878117315 960430540 218032290 401220818 534277891 639476713 270605325 385865488 155542083 216499065 661490892 793486935 92837893 991138206 402823064 999051998 748071741 792210022 936359250 962865144 256241707 383262791 522715563 705276212 23770330 300662588 792655369 873335530 649927684 778985935 763729232 993214478 866617310 982404623 246644985 347577919 911662504 997186568 900223087 918265233 672110161 861871985 657329335 941868615 703416285 769347568 107313969 545877949 792916301 926694134 711425872 812969090 546221270 807983626 726642058 773954091 235468247 304453443 471618220 647261359 55436448 470190536 707113149 807155245 122035949 387152221 696658186 938121984 709796314 940639043 433804539 695172060 38690051 364645181 556786368 836218979 129779076 134447076 378371097 961490400 627269963 966593349 267425376 654110104 84243613 577520664 112223383 498839741 843660209 929993156 832238789 989441182 737382886 886091661 197829513 448729914 344983761 736116300 326555562 523413251 622330657 703697963 846963454 977353874 746380158 793417675 516292135 986163886 176664491 636703470 375729982 439199293 769719554 801955726 254618382 479063589 142646806 226493508 356300715 670585442 366818544 932401698 929015145 997167097 507098527 997709388 454157540 498566416 52198876 958513126 998383019 999021329 925630342 936546792 958455725 974766556 272447104 795794889 957116481 958055516 765809313 869470686 400404367 915320053 782052560 805191619 79670589 936775572 511285109 671558347 26627870 248567126 50554470 509225513 192693647 964647380 231916362 762142797 511744456 845459983 535649009 644991947 957629982 982857685 198725938 220138437 447399650 950001169 146587600 792579422 132733559 155359511 261996705 792878452 36610377 877550197 822450683 940606879 777573801 959276656 184357404 962156214 236744401 641859432 25268939 35984459 539723172 595705355 767775109 954014421 9467762 940464376 627404907 796404560 32724367 768588270 541585609 902975980 88321083 625723153 217732788 629143977 637485969 637800098 243423104 800041260 7942057 597669475 402025772 730059219 388794101 572514625 329212726 763117004 422550711 848551002 107720822 286053318 455714079 586100492 100860754 937590647 813686379 886002149 943250474 965087605 382278335 580285200 848303898 937048740 522006856 602236088 210024150 463629751 640706443 892190632 919601375 939426387 579936240 698059845 988288420 999798753 283437380 745276164 879875897 969206722 20369791 644088086 891849080 902002346 16646658 579106638 845139893 915959709 283446773 562840586 154323951 354573628 590438533 886486521 359012121 771915322 590167864 747669452 543756028 747170263 492519634 833600313 586167633 944928201 679347531 904816413 164269200 709540114 137521916 416184192 604395055 650454100 422951709 990284405 590404289 593855734 184829868 596348254 165584491 975186824 910514108 942726960 114823320 878498581 104496986 412904888 18106570 647624286 6528145 330281043 912529192 992674507 184723474 573882580 380167618 621387746 698964757 978106524 471150634 903556621 580597638 904620143 102000954 129545355 508617395 654465427 16718099 662605469 387369016 472874656 976735234 986314359 258731892 284722345 8527736 774145352 499574943 882219030 349765691 721187645 417026723 778225600 392804767 505286949 876974165 962332918 466053732 472387364 70167372 557951202 273121021 617648714 986569808 992240356 432433631 829578126 907533048 953070722 812083546 905487285 433255801 908707397 594617405 606397360 584796875 902499968 346403241 693416283 193729531 786075108 989499481 996769197 7827164 822324410 309678295 463357534 758425221 823448727 181764866 489627755 866354863 947596275 52190831 725962342 739288873 962928144 625801557 937781183 623478912 849647038 987704639 998056064 796862468 870174033 367762951 984183993 929896919 978374249 22391811 589996522 838334385 924710132 24910120 906410564 772716363 888233397 495023063 702413075 6989470 505628665 199580691 829847179 811799663 986766834 38245531 266161545 611824479 793555778 745274858 975085997 698109527 879717528 854751327 876642080 472017298 904638953 139534447 543366442 386362826 584054585 160744143 351113479 654511935 855925822 850562979 958617804 479204647 966662998 30557205 973171415 565867586 635066988 131915264 823272675 59881022 940653017 163761359 216889809 583871853 867114423 901548231 977026129 405715952 879525244 471785227 950806590 896211401 902722860 818113621 849822582 937848784 972779015 445306512 942311824 341221740 713398623 385974926 737140243 920928016 952753413 716958936 847724754 870160815 951453338 291166151 854731721 514768436 790539870 169338768 191320988 994000680 996038451 739196022 761562441 54152212 625316551 194860692 329035525 786934436 838029658 380355077 747611857 453425086 809029242 205462938 727895949 349799765 772681971 915885647 979763932 819812529 991952785 805942899 901536449 753571333 843615622 788640345 884457870 717561744 949642252 238604007 492311563 839730574 910667449 73631756 174532773 225834834 592522263 238530224 378173449 894566553 953469289 17355101 954118499 248962672 337744732 735014003 880176607 378643555 703494948 442753671 582397214 946030377 964777987 538780221 568393744 231903026 537687144 623637659 790474466 129415650 983559997 109659266 692844276 366761956 425066886 324041081 823827763 951192697 999935253 47180872 481821575 833473700 982849782 443673254 614224417 265456406 562806685 815551464 886923426 902950973 975161626 312608030 516306776 929899379 998678290 822671022 844150539 28710524 493925760 654569778 936456549 306138689 619359718 368395165 889029648 106151143 504471910 255070943 599884996 608034348 645496839 186679191 390767926 70179937 271337792 623475693 978143523 968055955 998273511 716889581 911797305 642683731 813416235 428177545 840734938 616439281 704450347 408487658 518398539 693132177 820631558 536665400 585385500 344441704 454257918 568960765 978941951 11421600 479435584 4374280 114986870 289282309 857729933 362057370 879884726 810783426 946244457 983314551 990133531 314219408 982969378 319740421 505605918 430914891 763204427 532797244 778209607 861322116 891915265 449751181 975661839 30422036 413307856 695749877 912211055 681908881 697480122 473781592 972735669 428455862 715473931 442501330 707662853 44680240 373534660 137115867 322913509 566798607 901215469 845233958 934195306 140845513 956651231 883299338 935294575 834776774 969921409 402757250 937477170 412999629 543484539 943062701 951833757 931457049 941833263 131734435 708552083 142532377 380063508 225479887 242740125 681698250 920956682 224869449 884809514 542720920 942013151 167735251 795591374 189038581 856775912 862718380 881974055 730504286 969026634 63140879 398125227 937159785 941019945 645457409 742377771 475573452 589475618 467243322 972717463 848627824 963387228 850310708 959073707 660341401 675815516 795092359 951160654 618371748 948651523 641139470 833152996 411425621 937516778 327377012 984798663 212425072 813497096 746310424 888300701 645041370 805928401 400345681 905041149 512101486 884174783 503476276 678808375 134677544 608569099 217667586 807406111 111631591 408799044 535823209 887293408 469139188 586283185 755890178 776040409 821435895 992618550 718800809 966368058 382163170 909890237 460880235 848011632 59236638 142549555 399410621 804992996 520206749 939367658 346783755 633757248 40115962 92467007 412631724 606927633 938241513 987403045 76550737 166341826 635063439 826851362 985635538 990016261 407068917 576013528 678994674 859220861 485753276 617892170 326679402 648838550 341097961 851915381 330300427 674532318 730510671 831836727 581586251 751660918 118019974 243858611 458572312 928061806 249606786 588392360 393512562 866975049 918268417 931848688 198853852 726052829 915376253 950668050 547164361 650817351 864626525 916759474 840756909 958077768 249523835 271956944 780427874 929554880 750441167 774831586 819110048 882971249 258122181 692047863 554622234 758445482 477255200 942058981 304467917 453382116 286411399 555286789 721337051 749069973 847883007 872513494 958868880 984316437 215837913 972468171 780091054 954964309 914680035 915746548 253350655 996068448 755208637 769200297 5116779 432177771 762546321 905474480 592722195 802163862 864711546 885129525 91751925 516785484 264018719 913222117 982453459 988811144 222829434 601648906 240975995 817266979 662600813 927941365 144288958 432500474 871830845 948546370 852993120 884762408 485846604 714771559 104019754 491127334 130150283 687712422 182668425 279267711 751726842 759271342 886107331 922601468 316623992 841378495 943366244 981092278 506697596 604905585 370677490 987194898 209211141 469306637 321579712 459238017 194115730 677512220 322240377 744168806 998131235 999454533 574069172 813582457 527748862 690322690 838815006 905829797 517081315 594283392 542440902 558897735 485659498 488085348 410683734 506397797 262100780 515471098 54482680 760527735 380031908 806199978 896385649 942752331 884296943 898824535 852229070 898059655 620763026 747381955 489069806 648906007 789829403 976253672 854473971 995549600 785504452 935843214 406201141 983567932 913026376 990225418 360444209 822453316 856890564 881166518 773902951 901654345 754298886 903243980 197857791 254296839 654331050 822212218 777636373 873481237 294683506 877105604 118744111 994825331 450527942 675821359 308994228 653734373 539213610 938429563 53693665 519719739 91142115 357636001 429196898 900395792 543856806 727369616 671345574 851089491 594621922 849296677 300652442 386144519 195835503 280366683 18284688 238342438 956204218 978836502 297442803 507482922 40695112 822030913 896299872 961675707 909704335 962905732 556429114 850625648 896729029 965981357 102849857 241588578 989018171 996711157 879124939 920773858 613550358 899057386 309374337 869895423 973104563 999573686 670683682 939423369 832037861 904580155 866773590 890119229 853365157 944449416 517110069 867858801 939212756 967373376 584312886 944377525 965342035 996046696 922599051 930909068 895948151 901242108 648290474 753827783 566675207 749781371 474262788 676629290 172881194 520105005 300556559 465574426 910177800 958485677 73621001 422350031 137405814 957314809 707737518 850895862 527706544 553889569 309166162 937306156 958978506 993485751 177400865 930563877 894804438 967518359 195225492 627656951 539078614 596937462 951091344 996216465 268221568 280389798 214817878 619346588 23668491 994633405 246745395 775277212 724911185 849203212 544461304 885137051 461431795 540577542 652393715 882456898 106765870 330927019 921534576 934784269 312917039 462746676 100075877 549647061 824870212 964546094 378427618 644487671 398178053 520994359 597594998 998206590 89580926 885904659 663050995 997721940 860199766 946057276 429284371 608924691 215874800 853979657 309878692 906263988 793579261 821327527 689311097 746814970 492232498 667031102 531798756 809359214 925966498 961292576 287786447 529787050 142464741 315653911 9859843 496122407 119293480 266493689 909862204 946747976 828246639 988425901 824047960 996268921 219631615 278039454 775722801 887622910 143298702 765840730 356114522 963729747 817917890 957886718 173695231 952547522 554009834 994519893 451464630 850745471 559440238 769813937 320301290 661027738 485923567 746574841 960214259 997836221 636410226 671935776 481306393 489112739 980285727 981562963 419844528 475481472 31568728 467782961 88022631 233166606 858417511 929625058 443387387 974871938 358317143 948493534 465207600 879144766 683843647 871884081 571004728 834961700 48907578 896874238 765300621 887245072 463879619 748601091 269623834 321365435 698941371 880815128 147992713 520311420 593521015 709431403 781103018 895381287 82143661 295593897 306575219 676799923 232765422 421213231 905723926 945241906 283336354 430026171 515452216 758474670 786690210 855550109 736524961 957182764 660193453 822197545 692037743 985765898 634053776 816271476 146750705 742394497 400722318 827820414 916885100 925086560 74034930 999343291 274596606 449761732 83688755 533336135 731383623 995054205 502955568 613378602 765424564 934869503 975464666 980303399 819789789 990996278 886404650 936158744 66303142 549396742 804788423 845667743 356595061 506922961 262173195 868288704 859104981 946100436 717038155 784869919 718499788 959715455 698199430 951998792 646208126 821800831 183363731 661501461 658093668 772300497 335944595 371909481 551093005 933620416 178683887 673999771 84380373 974659030 913569251 981116499 282579942 713042130 56088443 456619336 513523284 934070452 145995429 266965290 475128128 874798585 596870900 754533643 645094093 992108670 607413850 703777642 156111801 290066408 416537094 715033994 72563999 775072114 682705732 832529339 822226414 867454401 875331895 926005974 815237474 874657648 609601298 655128762 892990892 977594574 757348339 811874947 136888651 546480461 58959448 98085867 696864999 882662424 576131480 909939705 333789224 556138707 146786648 958546406 216216031 661343386 420898101 663251548 189657799 265909648 385928097 580262681 402071651 442920951 579466963 643552704 904921538 958792575 361929223 742891574 800868427 802967764 381824745 429380717 720094028 879356104 589658718 956621953 576900186 661196081 662375802 724705329 645146526 659622843 458178166 630365038 942707357 965075469 622624082 764580277 475102156 925365627 834431756 865551484 481538508 857697356 827559166 972821794 559194596 757971020 710785135 825066328 601644243 697856068 295276868 568962241 762352432 867059247 360328794 898704714 585199221 643468019 408961552 572780773 890307293 940701650 525597015 968191058 740527088 952739875 995611036 999144500 108831158 891867858 425498410 599660528 463843566 771502778 301019190 802433363 67205481 401136572 668127654 710721272 596633936 732117088 556174511 823394255 724167717 870524233 147412594 442196992 858638042 878200366 444259425 991155805 11469903 938226722 162855654 265803881 918668513 973973865 90179 501083678 554307579 986144441 615217933 950696034 115747338 531857595 58113355 798080057 566120497 836621904 5379869 982763255 993212814 997225670 695206816 910956697 974299440 978209865 910638425 921559429 636919401 879221605 16465619 547753699 339665963 481405335 487556516 752400766 728654075 969333104 819615836 970965444 345816370 604099344 250239810 450993691 93312632 778599723 552678968 686891623 915778033 974705203 409776692 742887861 546807853 921770510 667585394 686210785 489174111 766854612 183116609 953013077 150115780 384572158 194947637 906831288 10823408 231377398 549303681 896650924 930029682 968135766 993223022 999591690 931944072 975019495 635723255 971364808 716341150 737351578 783983276 880860225 66172082 863031497 660145077 719548342 211353441 384380350 303968778 922346881 272833283 295430212 722444368 829359498 45285998 742458806 11737404 129270575 955012999 970967746 162928535 400784504 719288096 823382987 988595998 999380584 794287254 994318746 883307153 960398341 987192866 991044558 611031439 991911019 382976271 545045555 854788382 927797814 467916365 674788982 105856148 787123824 3927144 503521001 604153372 973226732 390326560 855680177 773656677 882970660 752839401 856212992 421485983 802272970 534789967 574686939 641680274 700805810 316176651 433619514 84219938 768892493 161806507 974909317 3099858 750739872 669591606 671993783 987560629 993010337 500260389 750451152 880622593 952318256 982931789 986866546 550057116 602567521 431626425 513535926 597151636 761195406 194345250 988416328 379683395 813501518 448154670 451549753 249195483 251292520 553527176 885261514 438244909 438449493 508110012 888744941 895076512 937640266 990143564 994468544 126879723 506333056 171122582 780987206 984679098 996847068 724651425 959478140 71317408 403900618 88697875 228201614 962961018 993570120 893373778 968885904 220710809 716962613 93063378 548763424 795961120 844370108 565311337 830553951 427235023 434884781 533694691 811621743 804621707 810652917 98815575 883678704 744976851 790731061 228213448 393564278 402402707 853374540 785098709 895346722 21522559 791200047 819188036 915222694 298521679 586621536 481415431 501456686 407520469 873976533 775791077 801018526 580990481 890948407 655048869 952727539 515307293 971438004 990701353 992872437 360634500 490201915 574002790 820577151 699104739 911212170 516082903 934277118 671078878 908190149 265579803 893328710 168921245 925470560 659216852 934827554 665761200 958009661 818269996 902112112 402330305 453404216 185176126 845143511 470828624 899958638 997483439 997880136 912990483 915352994 93619901 963832874 464132098 869502297 825566628 919391830 198848046 649301290 267507588 524110718 215576320 734447963 664705242 707259347 282806285 779397960 932641128 951402802 545699198 600210695 558226592 835960354 456187202 944595550 40989066 54385222 97819376 717511493 768621126 784699594 907394877 931090854 207294054 262733494 352326912 675556488 615439812 626174115 340773646 763110317 259948017 297985462 533065822 748658942 227709723 684191224 338264322 554947244 60968944 972393100 819735506 891781918 691167426 836214629 292933219 617909246 180535481 908317922 59215169 877025211 481320620 850154950 824806386 904376481 219856205 325377775 963038857 994404401 461101304 666691318 509833535 719735892 265395670 719682902 755429298 814106091 859490420 925713524 816837066 830896590 688976493 866758817 825711125 980671925 248254794 760374890 967765549 977353868 595291327 958098510 506812451 578522621 554986790 919290930 215822351 574965770 695302424 775033548 185843532 822740461 336764964 932327736 471711524 563030260 421285625 901724164 369377936 511556428 371851502 768837410 348726493 854653640 811869398 850479350 667399757 761272688 402428960 756373945 301212588 811420572 979441787 985131871 183088868 318321211 44527581 323870145 745186491 757852342 777224717 995890320 586452736 716133992 432278288 626095855 593189715 792233719 852940267 956817203 745802578 844590926 822013200 832304465 675000537 798672272 883937495 907262347 187963191 784537240 350862130 559263139 850958631 876679185 204301003 411479405 829820394 956118338 683910528 837422487 887491455 993656331 202901279 744257331 685949533 890071019 309066935 650965749 580657716 774895686 517293552 560090773 51187857 541008474 442660229 471934281 748072391 922666161 426086285 957883172 698172899 839170705 249237111 920547736 830934254 968246101 25690677 75520022 209160428 392856403 882972403 933138789 631297710 839080264 922250719 962709285 126520338 150019084 928703863 963110291 106485442 115232745 784163516 785859721 160155923 171763505 411436748 589168978 405019750 608387010 203491870 707276046 822799897 866118374 114473859 882014496 529153456 687240459 434001744 720209580 278487425 385703101 165890863 468723712 238612537 513537638 76556608 170714389 991337468 995374618 413642103 527516431 786793327 931498076 299589969 771266825 307682199 613301536 784137461 829067689 641962237 689955199 710500405 806137656 793092754 900688760 851356046 932354179 710213028 718099537 188360826 646850701 366409664 662225887 314165907 840606868 237059965 374177928 977931704 981374610 198322461 486555772 285559705 933693450 376999600 387634107 168146987 778906527 476371567 992030030 12096087 405676846 703135124 875485302 676619096 793176365 29063574 610588892 666522104 865073198 936769433 938344649 941638210 973861552 67619459 517549295 70674529 303286284 128224724 327753040 525203160 738391211 127828020 210955349 14142700 336548858 607603907 614207548 600178110 705156338 695991637 996468465 661641687 764970377 906117298 955636509 612677223 675041415 943893286 986940421 772532245 948584983 408175171 840467914 63966813 71432546 234827549 863980386 838597957 967865858 533065780 861841783 321483449 437710672 944429201 960711495 174251221 990726018 543547316 797025688 681897076 738737408 249332520 323419265 155545825 615175966 631673732 695876340 252480015 983801174 827277689 895751102 238343283 445410011 869372883 998246530 413190157 735502328 954774223 999252760 651775610 847687807 150369970 656219398 432943644 662845281 861256041 940834847 17477658 878194167 606250647 907812080 592716644 765038071 897853797 957303120 481690401 995884467 424708185 486547681 150369347 499721154 580050328 762780244 612280454 797174525 169006608 229075406 426271587 833203395 925344939 998839115 523217033 731288198 927800848 976614236 970277375 994562401 485473432 590414384 458400722 847050166 344431227 889764922 106324457 439740684 540388401 748666127 720498708 829278899 784134956 822315804 781089408 998770220 384490459 537878812 943173625 986943430 592214881 719352361 97845025 167332494 95982677 100011484 903063758 918943561 800944723 978115102 550424737 897422700 973381852 996435665 990136334 996176141 819334109 853717010 908408150 953858191 377095030 588269571 492540791 760780051 670689205 894317533 403208468 731383909 103683348 428610682 648418762 669521458 890474051 893601010 944502117 968109614 136899745 290732719 615840921 940346441 796697592 985383676 728237960 853655224 952091291 997914692 649652815 716600087 884210001 990738253 97595207 233875243 489382606 845117842 981126948 987908636 214800511 962032940 487134878 619060469 781973887 832980345 953518565 957247627 246182663 608748694 721491247 836046372 642015155 915136748 586757815 878013231 271887173 731029798 258277405 611952485 774013509 960483254 456647185 834867967 746927823 986980197 561766323 773799094 131343603 322047017 332320100 920828842 419060336 468050622 175177559 844354911 349813047 374120421 391536175 550496670 452458298 543672744 304181396 841438503 981600245 995540107 763275538 887267912 696014565 822354627 84336758 268500575 296468700 973690332 870140289 891155843 802949922 981020292 610707025 938432322 717332689 986013445 181315111 827992976 933335401 994566502 186897670 467282976 522405478 798606156 154678107 976720369 465657836 794680274 333674959 515383080 467848829 539508290 152765719 432996917 679812108 920561239 945414478 959537278 46661931 150251558 807230910 860459361 419558725 621405348 37496376 460925954 322972721 759264922 801684079 951170778 511758359 641139383 163030469 713585927 546162135 833300629 986141762 998137590 94922430 812549082 826743542 914170822 426175304 588390360 241273268 449258957 718150823 746272530 166437164 316130187 972691847 991703477 980592020 993055124 957312669 995252601 507633920 636161723 281118322 720425274 185497220 477228345 959912041 987239436 205763015 274792110 599242754 757132744 286709776 560660815 223291513 579494300 905896034 932568202 847586222 985188360 256676470 424500587 678696195 851585006 527255430 771155773 988842192 996706536 896294226 949603667 863774518 930957918 864898585 891831120 692148725 942280905 338157552 705524237 798835702 890533164 940503144 942838552 595491097 736390951 55714937 937192997 389134407 972387993 425404025 524979536 128584925 781868970 479438139 995423316 744822332 990123291 443734468 753751002 458361586 966892249 332902967 958648022 774773558 935563657 907989405 921910752 932078315 983466180 985457153 988560405 773837563 792460046 980126196 995590633 251628170 512064680 203194744 357838679 789002168 878361945 220571902 538649641 524008772 570819849 507856031 711254139 766264229 785284857 493970632 569215422 701560550 775921749 258190341 604531575 700129831 815128727 893119288 957767436 720909201 833575588 878568714 975934800 597504679 803469919 525216864 708976336 704504066 913362788 358494801 560236547 390139592 731623188 683373700 843564188 65448953 331225359 831631683 832964024 328573595 721682303 118333714 835263631 755158660 888621344 92262783 891887171 582786977 632895309 983173134 998326378 15769720 715087133 548370163 634746025 30872938 189020323 769478180 888255472 314632522 443736020 703994049 847185558 329417451 896532183 454395281 935971874 692349618 937052255 311504824 689608722 468867354 616170631 823936629 943219729 133324648 247986749 706217781 878552883 194672895 197667741 731473689 953065775 743263827 818987707 954631712 973019595 487521120 527791070 519373405 681983130 677025730 708390860 310618864 574003020 137932391 828953662 51040336 230145770 191579707 301046175 662599477 742582113 18014477 240251473 794867920 946577559 609233697 900786770 542780314 933650257 979134138 991036531 987905186 992629547 964157813 971756652 6391136 997535829 473237928 963035948 782933087 871714052 895635555 998310720 306674320 808113195 413489772 494744834 703677510 910170055 489554467 917865463 814367786 836037843 609986763 782881464 306878008 906222581 872171269 882878172 670887808 974539696 523972265 906326036 220634469 987775215 10152554 542787262 499355374 909770065 467168550 998681965 64538054 482569769 610951612 760495017 412249973 499138594 179957511 436143483 262381624 493433434 237930004 295356558 209336469 227223676 561218157 595400949 646517564 744311717 993657946 996871897 711076187 742391987 760546260 933231221 835393138 972461897 495259887 646365911 784147068 818035336 13916024 528557522 285406518 872936384 539169458 678723403 758920460 959153486 968428830 985279888 722331965 985717829 826631799 915034441 507896402 738079077 213157105 664912225 785229464 934967313 804578273 991107794 674923309 934328476 10980298 891626628 329872111 420034881 471388494 993218556 9264772 342546601 473010636 843291610 582704808 824827359 951828420 973185005 472756100 849597513 82184777 731533092 3930037 324565197 95964463 723685154 229904253 807299100 686231363 963531130 724472368 903680238 476357009 683825177 562741894 925117423 957360874 967873653 670364145 997016257 284367774 358760664 941867941 969728825 35971133 663754019 930523483 958350495 766840631 795069197 722065694 908172614 301948024 413662500 365754193 588287803 912052926 971004523 652257941 675599560 571558315 958617916 533714710 697287383 23422041 155335168 744958344 909416167 824113024 913484611 20197120 504799945 224551586 502399214 328357187 743022598 700192750 899449339 186479147 649276046 748348024 797837447 982655453 991542564 313883317 653436457 808946972 814215416 229124765 864838094 264301626 615759103 189228546 573095954 509522725 711858776 115541419 964563796 968197843 993316750 958463987 985848738 761010264 930852455 8535497 358299535 233861830 907071239 157207868 774688041 928804976 984629957 643339643 826162722 237176576 435563305 728039046 758937274 616798362 766519824 216220209 476072420 543652601 742965987 337586787 361270693 53635776 719853156 630214677 716873029 110488317 156363019 911367217 994877086 438895902 507986535 116984236 850568298 506857075 636397375 665538041 718547005 544805493 910224322 69967143 763698457 441761841 929978368 558160465 960911635 916287106 924599138 29883296 834468855 31027606 383448937 529937553 869997860 386730284 566872922 531937 250730116 734852163 796510115 446999916 838363165 806480103 855195747 86434801 511103278 381391424 710724586 645739991 706020749 628433836 944178989 301124466 587257977 151698182 807604025 462171773 563223497 682889366 971907183 808879879 930136012 475342943 491479346 3870211 716328406 766321362 956762214 189330355 559340433 365943048 865273903 111611434 453901820 266011927 742418103 520324625 983986780 774613213 792580806 214691662 376477797 840280669 916531157 21140130 160291573 455139891 887480777 525199956 874661966 30166016 353257806 883195577 956645298 348596212 528907982 206153384 335839902 646605222 740018623 857642430 994469141 290196816 888741347 513712434 933261581 45439210 448804330 638557201 687800264 483116166 764284157 442682862 551211800 512232866 932608891 135651662 140198188 386798598 425205454 300409465 760544290 531421696 554840402 322386774 926069516 260345242 788393211 823014412 951280972 61933402 782527836 392437868 880221198 445176957 514588485 389819600 428802121 303070456 706659662 851846556 979327398 266936612 713864489 891079879 924443328 971292613 989770392 629711031 858570933 381310950 768892830 91961198 952341632 189556835 895712716 854172802 925035035 630682972 812093036 126095259 511529817 285727469 712524578 927959077 946000795 582623589 588913462 204631318 845600384 586584438 943933433 896671459 950510081 984048981 997276955 119610345 150254386 22714185 27571657 594711727 767424848 362983331 704070070 406313374 566381768 526469 382263667 918135112 979871764 876606123 957094773 92221729 659165981 75624331 369641133 769284011 999197621 841501557 928252434 81522643 528355367 192198117 589496700 130414609 405200125 675026461 715925654 100320207 733905325 379384427 524833462 868370232 977185976 418890222 956032890 205421990 439539350 921183498 947652002 208080055 474970623 65171517 702603262 889123838 976175396 261913872 936632807 355205230 827883133 875062193 990031179 761842321 795836492 774880868 856318047 354836418 954193930 375610091 941457353 978921874 982738195 533627391 575537703 528483951 899473872 426600678 715159599 607881909 953121708 781179423 822779115 956203375 990477519 139417098 357351184 467510575 778990560 518437646 791061715 213212045 930221805 655008381 929612959 887121156 950798456 983237231 983303222 473707027 642223808 700810429 861237429 93164424 172142063 577976816 780789235 923809805 927625434 797129145 899128195 762708329 982932265 47111940 704788102 242884440 571683072 222699971 912721198 338747767 964676637 327071205 586591202 806310402 817370796 10594550 368952442 677711964 866851218 122182416 808669085 368278157 692862545 514473106 852123257 584260846 605008664 875936143 954100047 193699182 629946660 360937745 785839694 503824269 754150954 268506309 558411035 498590145 957274469 891238686 895843043 428001557 631297158 818951795 831712540 138599469 533695522 756634918 815074412 389451534 874217007 934823284 948708908 519521547 974758626 618589755 888001933 920891842 989968268 714647865 732833678 522546883 751642309 158218758 163947551 367080899 967160573 612720493 686708776 337249035 941782302 127220918 464075944 7680840 671476167 554248563 787664532 918870849 986839147 942613777 994314208 222395766 377757193 941489640 958670974 989677564 999052191 32231889 581809673 320533871 918726527 884289383 898391785 625684371 666914380 89921939 585350205 389550283 593808318 772308538 864942786 441495794 831060179 258416444 584675861 821650194 973360573 70988071 846356757 562466110 904661916 774187710 960255840 956031841 975277876 431133994 549819674 419360498 598262261 758047868 902284031 301354585 804346161 239774648 651447258 880036151 951394974 502876850 989231162 101776584 785573275 777396974 921451445 379521270 437069920 456062612 650078200 849305954 963260240 171674779 274370626 565054312 594809897 883580636 977551789 973858149 996459905 778924895 968699691 819916711 834272391 454801473 497433614 389277456 837786398 839344690 946492213 287160938 565281541 213467026 321286247 575004369 874753560 599373911 989206841 564811419 795592847 497505326 597951241 6046721 566832804 513201455 517846815 624292100 626700251 756908695 990240920 746991160 996919556 867963860 905842816 502650228 513207538 617029208 799543351 872552964 951945831 980438877 987431280 149605352 962914531 309690345 646931395 526668765 660509061 445459777 619705033 497927548 885703039 84200295 450568751 825337326 927998121 818271213 861017343 402570621 547986520 564014399 606637527 52530813 988006816 554503908 832958980 539467063 560961664 81340307 618601817 885251389 921594521 664411383 981229235 351544633 886938741 725804742 783618570 709430430 784706592 448265834 669217493 156489559 892251545 628457806 865287643 933687261 998901357 489318269 735060307 75280557 959117560 588570229 678633504 591152900 963746379 480930730 530246764 83890686 533468071 407778621 512935050 839547272 958472251 221718777 375078528 883117953 950747766 575357466 881640553 819919004 848736838 52040718 789788847 350848616 661586088 646003508 852047569 787302924 793520035 643235857 834346907 26457239 711374082 679004188 902989888 751685562 894439463 320822924 668014410 23953762 210768846 23400202 306446421 927409817 949167602 919250198 972656141 224679927 312641946 884910464 905802399 840422236 842524155 606354145 683396817 163032983 602819049 850777201 913207301 242241417 875469512 685562599 733707063 998133802 999457275 522814971 831891109 354162700 369799416 202344385 279216679 410607897 653446386 242293582 868715122 670894320 889041778 823341299 836051363 435446226 867751499 591235745 993146680 253561307 775891961 878948591 947740164 484697891 576562780 336183932 871445019 167550599 591191928 820618693 915472047 823549263 914412081 728869622 966532135 371164908 664608535 859358085 895132949 260157950 628115738 374145667 645582786 668976563 705499567 232223126 252051081 372567070 488465224 543135860 778211242 358783699 920349160 683250484 685803912 287305250 303183420 204600976 943377180 448117642 929885631 922327298 925569564 275772916 409682265 729550093 778944435 844325436 958327476 117454710 566841208 830421030 988851953 669144738 747973578 869817696 930212390 439223238 867670939 680018001 775504812 691888395 969790712 593843726 905207744 855201155 908763612 168471897 652194858 120723226 626566244 646007765 860919081 781939862 836697464 392032046 619755222 475301427 878766322 86838088 165920272 723003086 915447474 53454543 542630373 845720646 854856403 318964683 905556303 625568581 807439514 134102986 683305551 50499458 539690140 170128228 822175401 546955136 862270144 690661645 777160862 786048085 816411388 994041611 995687091 282820393 698395672 993096144 994077678 114981461 191482949 677471821 854334456 641681131 800624993 446240088 632761847 238709632 240173555 233607110 323755027 322156772 825823712 692827664 804596969 30984636 805675725 913526120 957494901 370829942 962219433 35636281 124674540 738101119 907231304 245198186 946798480 664102945 683860362 253934029 610580365 457066379 569291863 790579580 970016738 903946116 907812448 468610637 997955232 936728457 945125612 741046123 752671029 451582207 639893180 178142983 227072031 487573038 790393092 301387247 548882873 151397780 999712053 734878141 858930199 282033601 769488052 815705898 858808642 794433355 981084249 355277838 870111469 958685261 974862914 368418359 931241106 141320399 234526738 507825805 889240994 889821538 939769252 733042269 894240322 521925072 828277470 83743262 659757942 740768176 770425374 150762708 272999005 198530403 553396124 355380745 921839925 436691837 447368529 499660738 636532201 390886804 526821541 151678829 432520180 126694214 128082939 406454747 505686766 832227155 970181386 171330186 777386848 995619764 996388936 386523872 579255496 284097486 472942930 806542651 910052115 975921084 996833746 126049259 855004983 30180702 937733164 312072392 848999210 247962222 911941950 647158709 789350783 942147179 997658409 367718729 663039981 864042155 962801879 792796074 872062975 985302497 988966501 370992761 995509415 715409787 843506520 394430324 936513738 677062392 894142315 275991767 516245269 895511168 989441500 803079326 880259928 7068551 397379456 65831668 507872028 340371216 845150703 749340201 978062386 104048228 370462968 991448171 992844061 489335389 590418108 873519676 904609036 735470045 970454827 533843982 975183166 227593362 671477155 636623641 688546956 117971682 258287540 113565368 823442610 772404505 832772974 351919684 728065223 394668859 512180869 628871058 657175700 736753818 958856783 401657135 880694173 748462179 904343861 919687524 972921304 820347800 865424810 631293406 751736710 530541943 771273170 246631676 472383115 476442888 512995645 983558241 999447378 402006399 616776348 313234747 845810845 734240629 803734057 172953448 793191442 897122943 967978045 161229834 937783251 901342052 953858896 661844646 770239978 83961614 403279940 858202903 874755935 193775341 875503881 88596802 216763778 811068250 826323614 57313522 377170679 336454490 818610786 487150695 825300350 937100059 995249669 4350808 104640373 350401487 503984084 316884979 338885643 14832214 686098500 36148705 534493494 958285761 965601742 137696066 580693878 367402928 698502741 780780364 995952573 460361035 791333145 76788521 803020678 484752801 542392878 269774076 288394114 300317725 378543191 811515272 818108634 67839115 493152345 112080810 428722868 648538239 925607642 215919758 224471640 70359859 816904601 166824184 657673503 380854650 503058053 153400031 664631947 290108474 967552094 308121059 711240117 458087878 609055094 983147773 988350472 548364794 606995902 52401531 552991000 728697345 978766912 431111323 743646421 931312103 935248275 104171428 758292445 255436700 790298616 245888911 736638062 705708518 895397292 886632283 942042700 163069147 272683407 302123755 696501944 573398693 696106339 304805708 812577856 38821077 171292795 755566576 863271293 199769031 735820721 469316784 531708513 397135421 694355839 928061294 938637170 25346525 181557435 712169708 757771418 93653967 558713935 341288114 707646528 29185170 739173403 916140887 988559696 124488633 208036214 433548860 972552649 825215742 937355774 673305513 813492134 83802463 422799904 459545290 561684325 182716968 392537020 506134610 787852244 864574528 885292544 724549719 918284744 843787808 988200642 174595740 708241290 568437482 602585558 973530655 992177344 685909143 818320147 486800995 671840517 984651108 994355142 344652257 605642178 675256279 972011100 801319446 870439747 875940125 930369869 507448058 568381432 622069603 694593394 287701202 563605302 237385745 841349523 918218289 924755429 425352970 748856045 879216668 957968936 494596825 506480720 579242009 971621197 349899604 861316939 9245999 50518544 443038672 943458892 965674484 981656626 56657636 731311687 686324169 918459812 716544403 942785142 779544325 875613657 25947962 398837192 57783829 340729066 393142902 530473447 764789626 795436489 704624522 894695694 872345263 999041323 304014910 669608795 605372157 778429707 312217853 702616280 798197893 879767662 855891979 942210305 315539651 589549908 97376538 893813638 208677902 643030227 68287452 211773105 483653625 958639824 263349711 956277732 920669796 947742328 69101623 642215732 794972105 878987364 298060575 563550177 912603156 960817347 406031601 895205617 955833890 993585847 82111589 751651577 929833845 969492766 969688431 978274702 550444998 571914276 729411427 934972622 708450667 770304782 625287824 958335289 553790893 996857772 41589508 653161620 243595340 308318509 464484036 588474073 72664997 635609684 411465461 431254007 35466822 173334383 565490910 884631963 809173236 979320664 64234791 475055399 305454810 859998532 808350125 935254806 298691492 991954428 431841690 625160734 175322128 683994915 471929962 782875705 775313536 911511943 194996986 824048501 739893912 979254568 613858833 828685154 413761903 422840996 856518554 953112825 207506288 959932857 554128100 888042040 607654769 630331481 591846429 849931622 804346129 840520855 280261734 606643870 57711361 196772265 354706542 834187305 491381603 934743037 345005612 549402251 486115694 910093640 55329113 967454711 976526475 993319246 654435902 806313411 784155599 911808821 370475775 453638485 36942438 518947507 620253126 667845207 533304494 701925883 182582530 891342646 670655073 844536455 752058941 804841486 643632717 970555287 505267133 942531539 373274858 937786390 390508637 715609292 520876723 868692008 661719979 904766619 784873829 932127571 34416350 452225654 991398686 992304562 961168680 973588671 602180647 884805084 163552902 265805434 207492450 794618738 404476283 717660197 268916049 785604891 340884154 367207202 38349230 742045860 113577498 982153940 490201412 497514407 40336807 307726663 954021015 990526905 13448857 612959572 847203770 994430267 530053685 588865662 2823539 433470064 528714236 842550208 589427219 793547492 415544202 731603297 102883744 609745060 981177983 985957765 276126816 870348531 852142393 935920026 460389845 505856297 40547915 639451251 178029314 458073022 62133746 64438348 923723517 998695072 482157170 657753910 764040701 850685689 408541516 904582839 203965550 326467506 979445500 981501445 538754827 586970642 949477295 986585755 797181212 983530331 320718462 627448998 197370433 770016662 618389716 688491281 778904030 843080387 789989773 857256311 918752441 933619726 647195624 921168645 402218891 987969497 759425638 946877781 555393408 794738417 83266283 314458724 105334429 634711472 357820414 500533367 252887568 585611004 360245332 526164358 739549473 905509011 757690719 838975171 851090280 970818129 213131045 632465753 14665527 304978268 223955874 851990530 813761023 861756827 528118297 988865034 439848851 962863518 822570263 980563069 537084904 948426511 88546710 761556829 413069549 738654205 401094258 714873145 580441558 625710507 464766054 634507031 785753166 830700513 241389624 843066805 531256951 763810749 630886598 783175389 12238913 395270183 578619031 928899589 18849546 537385100 120553071 255366285 826726222 920934670 612565405 945060543 846901583 876230676 56805738 627361276 621413673 635935595 593722539 607259098 235783920 986661051 371249241 790368725 985220465 997164095 868478507 929486671 391742471 770726995 507783477 753434387 834635413 949658271 221215767 356792869 374628849 772505724 963093803 980954273 536612327 954011996 182325366 731301961 529123019 855051888 383756078 819321631 672768997 827727843 323646851 601010954 334858284 684682070 896616717 988636733 761991828 782030224 779378922 780012632 291779808 306208978 113525657 917371339 480706861 787605512 753441201 763693339 113522019 414345081 840696143 906840848 605546668 660619810 613328676 941769887 477460501 633793410 916431303 979640286 902144190 971970537 1092256 390557156 495560296 939972528 175610735 757560270 512987616 711987491 785336277 847224520 570229308 936721770 350489258 541351134 325855913 490723039 68855322 95006092 948271396 971826793 123276688 328419896 22682680 320514515 832954168 940455506 418581951 720433563 211594815 742554704 638548808 755692868 383500290 920179041 19376066 148486019 727784582 883771601 19829565 262318980 988711899 989449917 73550492 948564212 676483309 997931747 726806468 859306879 869876495 884466683 30853177 154144394 238705903 415747893 607193656 734382869 318902129 379000625 514861815 945641259 455231027 781348041 691801901 862434086 319234125 546750084 231080109 266067038 763344699 775683470 70346061 301360941 63634669 70922497 220281283 747032842 682891189 782140448 604731899 751208546 162212510 943138079 300314306 728112819 950659448 999801029 448327010 687188593 101075220 934957425 472657031 857241886 694827400 740658193 439813221 612896640 746099998 870991234 102712777 676675328 478344268 955782684 634601229 890153720 834209804 836442304 881251230 938979354 77473138 133622005 912046410 915340124 399385337 664968415 599037170 661469345 881928703 962608119 407240879 648574341 31714435 466888777 342088405 793082478 607020791 778229921 68084256 257377179 765116263 886022124 145680777 831770949 181731384 203512487 424188567 729745636 24372325 955050917 313924537 490708492 876449870 917604582 312619629 695506228 676737354 833004840 325182658 649805639 927940471 944038375 641531101 815352975 317241219 596053571 557843890 713314383 178014980 629016547 835137928 878125850 147866110 502871193 642196607 989103286 152716659 155303498 30042083 581146261 937967838 990094916 664134326 739966940 978740135 984004922 332572679 570984890 689442056 916848705 670592482 881991884 652562815 797614219 341571447 803659825 574015951 805390464 310836412 998863990 540512925 683943650 12901731 259611759 4763738 169084142 379103714 660100148 635258679 672101233 487947938 567091268 384567662 424379425 515397679 965633929 9206699 166356619 565113554 761686127 836679660 866667518 565585437 791658202 273679609 622786677 614879652 677921375 381139308 832933337 164581920 437319867 937366814 944113430 59380368 403393373 539644413 798283795 936289900 963684767 583542793 670018894 661148308 996075102 408505860 873317127 795650648 821329297 834549318 869859678 547063313 967533467 126771222 336696438 612081157 622981346 345674627 548662060 576107589 711491509 280933122 890202372 39730303 227756151 589273466 831190027 122479762 196942959 14866091 940496975 485886164 798777073 832284739 938533114 638002345 896324277 182426689 541849686 783085043 784585994 948417249 996981667 47198103 321605961 611886203 697359181 594181642 944806142 933238492 947949112 95223397 696643267 774433815 805519928 471306968 634071825 436762046 437676738 882453820 978458574 825249531 885342464 528753890 609497408 270834573 740622244 654048336 740228308 314014810 973396135 129655821 910064252 357425880 700263782 787447476 816002655 907892402 941143072 827136969 859573483 465830363 838966818 768881587 846744637 863864769 976393622 184305253 257736618 443942568 702892282 426678068 540587743 224059263 660626350 935077769 983244413 938670572 971019215 215217589 764710258 978799952 993826760 338502382 798164327 743850340 957596612 602181190 694387952 203998266 855061617 340187017 758496950 633019338 673511817 202287033 554988717 372633166 556414565 900161231 925642667 489565903 650460561 828279479 831770504 372922984 860741539 63090209 620306108 546283910 716957283 942175538 969315518 747573032 916164792 739255778 783212118 509800010 755809456 50758833 378615765 231004031 422010474 547922972 621021925 720467652 939868876 760896043 978013482 24711433 474086540 106064743 448866999 236246443 336634822 629321568 907729447 939160869 999903518 148585653 375115561 286930391 682654869 625424456 825422796 603546939 932009845 528800254 756357001 463323712 555863051 129921009 803966314 543192160 571321845 919735934 998862962 669771290 730612754 443377195 959544377 951416910 975236474 820888065 905937033 658451541 745968889 363528067 522522444 277495835 811576898 190737501 986326269 156975674 302247283 86255484 890546409 691141550 880680881 874441020 881405313 368930432 444040213 577717327 927935427 363013561 942063767 847589059 858494929 40788026 879511349 580041353 612468602 539910585 731360088 657129513 751000167 300203380 464281724 812934441 993657755 929427078 994823395 749944337 878050321 739739414 963118789 222032766 799814927 854373097 965586099 408376094 752506634 687697403 769069574 357872776 791945485 280187168 281049908 597180221 797480495 442387247 515107765 127212502 612222277 161792502 515670680 379943891 580748394 985025438 986568768 411067834 699816268 614698930 697856317 941166330 999915196 936591545 998548170 740889457 932444030 390237483 850683907 838902299 989586429 367824651 847128532 6532840 755082392 160340305 368199381 252559172 383340798 634787531 745171202 37301809 677468124 168411421 983957104 314327036 676605013 582994952 925977466 482233936 888498731 380000317 932324700 983087064 993109722 178531885 904419547 399455513 403427999 471817094 815641977 777325944 910681032 766534820 772817979 952963189 995090403 961038742 979643072 53772066 837177419 638808399 841672417 973824763 998950852 836159352 913891049 696799869 815176423 192684960 327008027 76632187 142189835 473672770 572024391 798956687 923163210 434919317 997137269 88854969 228265834 746821719 860584864 431244258 578212255 862297279 878181836 955035149 982825829 214143939 358601027 145277316 951500117 115126368 198595831 500071632 996002165 669421791 846756858 776242219 817087307 807994404 827128257 307794050 999729164 778621108 879304559 300683434 785309420 444961719 446676850 424413053 876362089 800779614 853207423 513087858 841058934 360851669 973160357 493369057 902555272 225837222 872265959 570373664 662152788 282585560 361903387 811679939 970991221 361365999 803360812 920347247 949268059 913986367 934313499 69796912 718887684 295516369 483543425 495470237 758895052 641282727 890188545 844080169 880056395 296498712 865517295 880376554 992273971 910578197 951870160 830674761 834673882 57467029 517685447 645436507 682912320 396464285 920110422 813475500 900221648 619054928 979035052 45646925 670777300 679484154 756244848 926613305 943722018 419905801 469272068 906821909 944916355 955460050 966866861 171333245 936854373 767982385 905803094 527329944 677436740 792479511 793779951 139647368 833484414 897726355 959381362 829785767 890608037 795265116 860473843 572225862 973645549 752645425 872849167 844984676 990551735 45727740 773704430 115557984 602985382 648291977 746350362 170719389 934555880 424637257 679149809 183835396 742644446 438203164 865905789 410260913 672219471 894688481 990868870 778444047 791803865 237041272 289534609 256125563 393293241 69303664 810702693 607669530 639458734 134414510 231350493 645144707 977303443 607103173 615203645 486744146 844242780 976771106 983495928 170275245 586524012 477683076 721165952 606227210 803533505 802985855 977366140 594525040 718111020 58934834 887486313 180106352 997698317 934455563 959811475 981998675 989652229 28734042 340386380 771281427 816898333 362296454 512695604 402580087 822098285 29824291 917190352 830331539 839412153 819138586 858745568 187029708 344899557 848344345 867194751 755692475 942432831 637843053 849439313 908586127 979407998 966838656 994003067 853419495 903890667 33425463 271056880 12970119 675780729 145227842 630948593 448264880 878617143 429121413 568438019 431186751 631393542 659170103 710342435 692287727 843725598 680041253 920883324 120469148 437191556 746963646 949871178 250569528 266517596 552170094 837309367 789903096 868694198 468296421 656434930 805948461 882617852 182222584 823218213 535217629 655877366 915511132 986088906 69493739 370752785 806681574 821925566 311836988 749238980 512014937 606672765 729512916 828186096 689129630 847768055 731922800 973128463 151264134 577467979 217735513 229488761 96850394 142382691 118888053 388701282 958845948 984995735 815998438 968357205 662050420 743796540 255852697 395843604 982672665 997717914 277755316 549616991 787247840 841275915 924007537 967998256 234557480 291072342 399544031 441946489 768709366 829113763 946691361 953094461 934573317 977810908 266354400 391306130 210023070 938852161 329087266 855690370 723018322 967872632 294638618 550150725 870446124 910603553 539329996 983044385 504968379 788557414 255839630 414741250 639655423 836732155 329998118 398219717 391695768 397771867 273073234 546027597 6575990 37958711 543734427 612746076 777072219 881012874 136265418 194097874 680192803 872399199 628380266 978313966 875277234 897679174 374403007 577800081 73169003 971915877 209505796 656420558 514013166 528591083 885221337 981103508 688414418 848405077 79680974 268869557 508710078 931431587 207100116 928337254 831865683 932770427 791540419 978488211 923154765 971665776 63935151 945108489 813771641 848322533 994322251 996447970 960092793 999067229 539734186 842653442 898523423 952837484 794662024 970416056 678103421 854880491 141952374 153501303 143675360 202441722 803338476 818796834 808722100 924477565 204708557 660294704 923262115 925999019 155606698 452024560 464454897 862381947 358790274 942160806 567379078 626440877 398688185 777519389 896292857 900438551 454449378 695865198 432285915 802132150 998945258 999398313 305104665 775894527 432037142 563185973 25803849 302046459 830302689 939456116 804541202 888705428 756053775 903737411 180631023 699741268 929281334 932976603 898181832 918677126 324377616 709987638 214605355 265242011 631865649 823499146 677670624 686854331 879278475 956305633 345007678 489547215 357533176 384782187 816531086 991801139 596064611 849253862 85570861 863149958 18503067 471972709 317657126 880050995 320442733 634622705 151949219 828294409 984020387 990433264 614771135 917519829 272672164 878955281 959669708 975357710 260379861 366093134 590001075 974767358 951068229 980772646 180789158 210457641 448603807 603701576 394833569 974458305 91537972 125142434 72736488 458884485 372056582 496297094 596837981 720997778 409906473 758671609 6619966 8826567 441342980 707325843 915522023 938546208 936320661 955714965 23169766 337279067 865004844 896039242 964764989 980581315 104466164 196549439 898190386 911060416 437197407 813034980 471676518 962426277 925616633 937374272 649024809 887889993 490999213 647466021 781475680 926090252 461834775 789121319 535510782 851718860 436197747 437915831 984587141 999225779 924180617 951555296 894194962 972764412 92365434 886360942 498230758 897339547 929811463 979864285 320793549 843617257 720066511 922969150 587255179 673101343 162670924 791635819 24848075 558280666 543285930 950594022 166466974 177441776 200533345 533365281 980041867 989256410 844891375 907753338 298708340 654599014 967887168 977469464 771154823 902382845 230503242 268796512 954783602 984289210 301945984 826643400 977020933 986276444 326442369 712858907 61837699 707682238 336840020 406716608 922236453 950400109 204307681 784333559 228135239 958072153 825285874 895451583 356925888 380834025 425076887 914025308 80973945 665993191 712687323 799405951 789877865 894739246 134725806 407558422 465718015 575188976 596327431 724660777 393437286 847584431 490589518 901725529 511147679 716899012 176288106 531351363 790077325 790231687 513511855 518033020 120819104 485313824 706515964 936004981 906718773 949839611 553155493 867623439 178166171 789410308 647469423 939418882 484319669 887705161 43751806 452574165 222520284 250755864 711597358 767209994 899147907 959724711 481729205 806907622 628911297 927913111 591450710 935176698 245648708 728385695 292170264 689850991 499525487 563583489 359138067 658473037 408798113 531366387 124439717 264661466 372555977 765019265 938886918 948459420 484788669 789899549 944189093 949360967 358551792 980604658 28769724 567929830 127157657 142517155 378248016 855619829 383008657 896440108 394256169 931212026 936241834 990192642 38643285 475288137 146815490 658552846 448467997 456487703 246330620 572728955 174330012 928755427 522441252 776299667 902414877 950656971 161041826 902755423 462424450 845697911 530685639 623182754 546808462 725333434 603327236 606838314 842930808 976569167 870970958 966758926 680252776 869259544 776369028 909727378 681860928 877907545 117827433 765319008 153600837 416169139 190315563 263578015 596538803 974615245 496192618 798454157 262307203 999476009 775889274 815725603 411189008 810787340 542052668 787298806 53303609 721185928 789484210 959598993 582338622 744831066 551730455 850122409 350958871 950851443 881877116 966163569 544954120 795053197 582541905 845613922 993514593 994778614 382184194 434742128 504947429 776051324 67012261 673441957 89173151 636325977 680856625 921301701 943975873 986769239 792215602 934466592 193474764 411964497 202109692 636785788 257748059 437976657 44051088 226182333 447991293 484772281 30378744 649224408 652314810 831638572 655492374 960207206 722029274 804183677 84585010 890549957 648584228 893620798 956715446 981419447 886905860 931936502 262169093 722069838 787738738 943323494 841939274 985249126 873475302 937586667 438773056 792897434 348470360 951980702 736025370 794233030 453867141 469746699 345877982 491463281 262746070 742098946 224955637 756830694 301144462 789868048 706681536 751444881 347966301 656112940 708948792 872552199 591678995 690379597 79761159 265063690 128076292 724282578 317945796 969681568 398065782 450886932 65848630 696427898 460221886 604454828 977534160 991488139 138215797 446602504 774196856 918842262 220167167 662092065 536623625 750913750 555032411 795151167 606799021 873929170 685986694 854647537 776645968 955125189 927221990 967800696 217069149 529062835 675531613 946183239 571298746 609342124 988229230 994364055 696744260 800935121 64180336 150992065 370998677 506647078 663697206 913475015 543873051 741914166 753748679 889243281 304961377 751602844 518696428 806137666 924991385 933130022 268891822 637406130 797189456 916720530 241305414 841558372 215408144 626562401 665639840 944086660 725525974 925910595 168398400 676491994 328600097 736446883 665265365 895831107 622228296 802004077 242562551 761715987 366937509 418497141 556403412 748443491 491693890 492752018 410029863 779217526 348074749 618995208 810409538 968589836 974668917 989030612 297101834 716204918 912650946 977092060 72694565 114403254 154950353 172539034 971593032 990580152 24639714 843630660 983854267 986227813 607101716 789205306 781585491 862585589 558532933 847143831 525030005 729134071 474863160 721153029 198135433 955151743 676396383 912786643 743212467 998674476 38072577 658462541 765790091 965395749 323702143 560102671 99606372 471204585 874854762 964825860 255705575 263855851 81174573 935654761 657289993 702505570 285410166 688495582 720460223 791546684 186174108 777919888 741986056 795516584 253984269 550279203 182921270 297293102 925415424 960231538 872205849 947483627 346501783 362196226 222886386 463834382 420039101 447135353 526470693 853379705 660003019 662617011 341354303 879928509 522139114 814924810 46266928 253780620 650657727 723926612 288265121 696534094 274406739 628712421 741692895 971114988 96533991 423290266 73560426 181796330 109747274 183465278 817885238 861064252 24913829 83017975 481061928 841689033 613200789 763514356 802143700 881755876 96478141 589490331 551391969 686477078 891894163 980391711 809192706 956746822 277256978 796160547 373842915 589463857 372823182 621105192 410861946 761787576 736761548 991249589 799892675 807876043 243382765 339295156 99089853 771401319 166109500 612939119 744857562 903417196 394561713 766472984 958721529 967382954 118734700 282896102 628340128 770427674 582903783 704428725 798253357 969069431 137444835 158302366 849640101 928558918 558599240 984947913 43455585 713884426 514579565 974178897 274723789 705397943 375271829 519182435 876760449 942711416 882068729 962153933 293110079 757538194 754187890 986517758 485141516 545331596 632959152 714834553 336393585 502232898 641736318 880222918 954926757 960218222 790920907 942272316 854324196 854968520 459132806 845857065 127919304 895383421 657834499 841365448 935359390 994064164 754588088 764130967 635597715 985074420 505755048 522214634 410880858 597252499 802244179 985335372 360969724 463128655 640683261 723809248 382850709 558015803 835103128 901208277 652579275 732925825 582043240 616239702 396453543 965198267 318264505 424647633 790071669 921625502 816029706 987893816 753282719 781516565 254616637 653207765 549639236 975230056 228503588 849927640 554497437 762728434 370684950 526177258 885072367 975573288 879084817 900483810 359631878 860502410 917420891 950579560 485006254 868520778 135974433 880327204 85558595 683423528 879258596 920699661 350972676 719540004 787341365 935035698 431696775 548370901 940081762 989337492 602302099 843172072 299731667 353554594 518320208 660555965 16932510 294875966 246532229 735902854 661407261 762997703 121885191 973150480 475620398 621720682 943468960 997540023 529883496 662580696 935231944 952642819 915385369 958393832 565391895 960983789 25724073 509167923 953701519 980868662 441155933 955021381 937245087 961578840 72113385 980267205 462064753 660004907 363162244 741348877 573840366 644551877 417171222 905773522 636412601 938456716 428470099 733874355 782553021 853747246 646508564 872492322 483290414 964259007 916138271 942075840 695145707 831538459 876865767 937876053 371761195 828329905 4447260 68272031 42184361 704671838 241240912 497819060 378330518 721685704 606385599 744185097 429146278 577067255 283431255 714234696 562443022 709559824 886109022 931793298 940340220 971455422 352203345 561057147 68702808 482309155 278709115 941032512 757373878 757671092 339701123 644656107 263413438 396964196 62299357 988661399 397328593 682669798 259355350 794762969 166127851 617101083 235054104 957222978 296988890 844465549 163362423 731729182 347303971 383667194 611939952 712386337 324756680 518013620 547720378 600000293 377539106 665279273 480196146 534577177 151507357 526729613 285474946 836271505 266930199 687169019 789457969 873777673 669359382 927370364 565768098 636846253 416484534 777878220 644235472 982646235 935778849 962008444 545905176 612744877 904894410 991045144 93078604 592277618 756069947 871400311 278339904 974645998 609928630 617061000 453938508 517204366 809789324 838517521 629677639 941604920 380066697 577123155 828832421 865298992 591251140 939997604 672133686 836056594 166189334 974006688 303604650 720833203 468920103 950193571 94856086 115076738 41457784 205011377 748789489 767416952 729139786 903814691 226513165 544345437 582412576 946556928 825663292 875114285 937614393 943865774 101274530 387339736 742541278 777208308 64398893 930230250 691348607 923362237 322692955 987402974 45167109 321381306 910080696 974576336 7087676 931015302 428006786 719789718 415843455 998560129 513070030 940230213 511391430 932740686 792416674 828851178 197483536 910324688 427099562 544856198 380844635 804049006 393197863 669065087 931304863 938584285 787702774 952246793 613385320 622235201 40358891 947843598 305021152 584891072 617135107 786965910 492254918 503490469 657555978 928834816 889890403 987268347 216930522 519469186 179612624 389834256 976685277 980645576 628887953 938787123 131516456 671832670 561008999 914871981 83316391 278044316 258837272 519924141 867206681 926597343 991275016 991346435 953344313 997554907 572043278 715116258 912685654 967915808 190030208 578119845 405826875 752480808 350518835 625250135 177957586 532190213 278024119 941179765 687271195 823276594 569952282 769011879 400684285 480680328 840319094 904513521 117407284 293163202 520357800 783763305 168543297 205406125 164352066 409416451 773412289 813812437 137607537 265611283 239434304 343175663 530099378 570001198 302812256 816812351 662562754 884768786 610630631 647969700 263585886 820307573 842035304 851928826 222514905 886032566 876034587 971666444 961931806 993452209 468117027 525995338 526239652 972664272 786203457 799983944 125409778 729640789 748146892 754720931 71279185 283489445 221640302 623066905 45775630 60610178 364750973 780615656 3240390 675955420 703799994 732156544 909957192 910267891 350151205 988948558 621750779 659758240 907999200 979067149 389232421 943858916 889843342 936487174 300113188 553666524 592579055 600063000 803612718 861318063 333128789 574246053 209320094 442854294 320111393 348638449 608034092 633236668 281914407 420928065 873419107 957660526 994068926 998452681 330895870 363537940 302825954 656064504 151862039 581551525 463126884 768458352 369851590 781368161 929232674 947687940 307378774 362996973 978795828 981614570 786995574 908364634 250161432 775765251 177903076 575383224 636649736 671337751 959476871 962216786 958971067 966488047 123378310 146431011 601665614 840856093 161010640 956347478 914516011 997055309 856673613 990899388 303686097 685097431 890072615 910786166 267564734 290267325 902740798 929607176 991857564 992153418 957149902 983065307 868063410 945289490 639974646 701691318 273855839 703473981 809700460 901364890 713018835 902310673 456454829 738138133 953756131 965615282 262840372 900000443 177457994 882277843 898243087 937267540 716266008 813913700 41371826 137552505 755136082 998395578 486824422 717800728 930617515 962288066 216979449 844790048 785747190 999713693 343269861 790588525 941777060 996145841 8092519 158681108 4216506 398802306 321828073 659943038 960656035 976944473 915211914 925923119 695712861 764253634 536565034 663473370 74854215 485386035 891126420 966700453 664407187 883437420 733002859 989270528 344581705 356092195 646186576 947645816 379613391 574167565 997970217 999882724 928066370 931411524 268147817 811837143 549910309 695371727 493230972 599392063 443826538 839707235 635179271 638782686 511682311 905360685 74348230 751436118 900440925 982170527 921757149 926435057 815092122 885050559 945407161 968511573 847508539 994218649 347116303 376136803 213746756 302075721 719296227 865035827 679115467 801305546 984663570 990614394 549783942 614040902 887885648 891409996 85950787 596247680 630699622 951450672 533033088 837228018 13512316 661406489 862335498 997735855 718181846 982087067 686157206 836934589 634819345 830061735 364914067 951251658 715796751 844155272 509422458 990748468 434203041 480645846 573165407 669736579 602797477 609603699 31548749 688332857 83234070 824447643 93366454 201392661 749235862 873960614 595944814 852784345 504252609 846911135 599528500 951721302 232728061 913514456 421963156 902282727 192731364 356569069 532720867 848226294 933118342 989088945 213594375 960475711 848002694 914590892 18309007 828712912 360159056 383855709 516797389 813408184 397460010 866067201 296856903 498331175 173217313 586999660 355590676 724641801 117445875 320827149 913586220 997076817 61823625 564892823 627496624 821239709 830992932 918485602 129939402 303860422 482811353 546234441 597853450 617560775 644918828 764325320 737415643 935830051 702407306 872602525 550152599 829282731 389346376 831346138 269160884 289591784 447088846 519003488 669100592 989486714 292946123 463934547 627860682 958289518 760067515 891134943 30398364 68802387 411949430 546720456 172657572 774957686 842716275 986253059 839301454 974903476 852677264 996346661 778496084 980915277 359340344 657644526 617971965 769349423 975768520 998769881 401306781 873051662 202674336 458184136 155478622 311229354 967844005 993770449 399307589 928174566 785878521 869875608 618564884 844066711 647147549 687855595 488645338 666149073 284527209 469235110 686888373 712109934 489780734 815276553 191942428 531058823 115961026 756497526 481281886 883236039 687782594 929533146 727322052 795649837 973928436 974112867 120815326 316170698 901001341 979000917 796638602 829520710 357027510 684017598 47362521 893644628 970723187 977237823 726346637 984358608 595211103 970210127 805177489 865037058 528054467 623346861 62809588 395867695 540214034 908693230 582204635 765655121 431996175 588229119 220229576 382600850 951940473 981485663 30854893 190930173 327167974 669081241 346189909 710860283 785235325 903561611 142301383 982807755 770174901 938297295 990907362 995401782 293118231 293495719 911560065 991218401 521064556 649244236 682649009 711081126 546107095 950154062 810628884 813543700 839006237 850036704 498383189 787827835 889663616 896537663 151251299 740820098 268012949 485730228 887599189 930506826 749679707 894917791 970442841 975429376 957934656 996148515 782902876 995945255 974201481 999381123 187586346 257076212 44198451 50190649 175205363 381566508 256200616 553128402 831402937 899564527 822875049 895596820 116026095 164887127 873203377 932755705 919710012 934492736 757961467 905720034 74952003 242423300 584838850 751516591 769103618 795709685 713321236 721603394 577762668 649101414 435567221 989103500 14356572 299947277 326936158 529230705 553926961 926579020 729899805 964851572 20779775 66244077 863422830 944714875 935549543 961978952 533694567 925009536 628615798 651986034 471863287 507075143 623567802 843054757 135057035 566089002 334433416 529984050 818684556 944378140 830469692 944911660 369745821 546622644 838947308 903990506 540253799 720778109 259092965 492676499 384898416 479233704 247012908 346261472 704712970 745997304 782197780 996424396 157294220 426425471 37205852 620655917 120232237 620621534 768324617 950861732 69181523 453366220 671175198 720329471 687264586 882289299 586928039 686068906 346628367 715464458 860260104 972964930 976473 759824100 832241046 884174585 293820550 840352679 10559775 941505880 477907643 827078233 505319065 526557399 687108732 717251977 209626486 730513941 84977291 865288877 128013668 985369030 515269206 956463017 629813234 878564269 483765758 898673191 862245540 866161959 34170212 203389552 503389466 953871178 11864264 667966307 636094757 731215381 553767162 898697376 843097290 987862185 22394402 897564844 482219931 829178141 406531315 590676525 343791993 657169276 616960756 892280408 803137939 936955495 791244636 791360142 425095857 995631961 115100071 161120194 759190863 885108082 528015162 615207458 773053174 949548287 61099742 293308522 311131905 630828356 755474509 817354881 679273257 745399104 730696944 774624995 587481110 733947547 152801137 985341304 897503902 985690150 119338230 564064937 70737960 134427474 120249074 899217835 473631759 513350273 29596630 672381000 480300220 517481221 91925184 176472833 946761344 989750646 408874716 812000376 394881146 779153621 681002615 700289287 987121699 989568583 889736993 926284895 25817360 778887621 612299072 763905517 923372240 946716378 611233416 634075012 970920810 995928200 324172128 660369115 450235492 522209128 25347525 802927528 112394552 940463590 941569391 957041270 752638498 917012305 989609001 990961652 110409333 914243673 384048457 476311302 827728052 961191250 662156078 889324532 682248110 737812420 427688786 643667579 525584061 966357184 963923095 986620083 700091614 703885473 311890405 381706065 475082609 522290026 505640960 687656537 826947713 924681368 386036945 662871576 714753121 715710391 582846120 698226756 355621026 440306553 239713235 709379280 109156542 369595122 637213590 665280401 720817755 754400552 63153405 106806991 328227264 493345758 845788997 941225424 167717561 667814988 782301420 994318711 622732784 874955805 941596832 946420717 496342347 838684801 544840161 999323197 970038508 981124968 56759596 461095623 279491005 910039668 442953116 855094251 552945720 668571937 1827949 644594419 954969809 989768521 783384061 851159742 21103679 768011688 503145148 684371576 399589514 468598935 326424300 528738174 326410109 362656218 476306037 604102463 524355105 620504241 670313493 956937012 106573636 412465008 377505706 514702458 541726471 691040481 683246850 738018658 784844111 959350053 191252741 901692166 444952266 852101956 278840492 591867140 738984522 967364106 712877969 753524761 662262556 867704460 795615786 906810216 799260292 848774983 848531673 960137716 125924627 645477064 642849732 711864604 313286065 418742770 423411726 622051498 841702471 910957621 660402809 713182947 312274124 848240425 673671924 681723813 204946943 477864510 523372513 730295409 400297826 911341782 907017173 914638976 876660052 969863088 316199575 442360582 526905220 921242440 967585539 991382224 760857489 941583395 195215286 531705368 137481256 633116187 87631223 728004600 175348655 893834767 530327348 953499873 119919606 907190667 55582391 111896629 987722419 995997829 533954689 920515954 661116740 944427459 93319799 674570683 473100131 973551742 244830854 438350138 602050811 752318256 882394623 935139120 393077259 901924412 748406935 775128240 800468180 890378242 441767426 511653464 394803884 775412694 802434617 880208164 830923131 869701270 151145827 914986950 173245831 425312862 77547414 501743840 830044925 910890728 572834762 850263830 191451650 417967616 298022862 645872761 426286041 455187395 461398429 977518265 753750990 986512361 345470263 431194424 454035654 631277505 474359729 763959139 493117230 618731383 130734598 770974895 970509198 975740352 922525854 945687672 789977772 882191214 181415119 662165306 498798091 997104968 48556383 558746032 298971667 702613403 363217872 396726630 591120809 796388770 152530777 969443971 322195691 456990314 567085213 645080114 894315924 950709689 566416455 678315587 858333099 923085684 347306280 471843113 722329252 938262219 422833048 754712031 489754875 858425396 581037304 766081547 101388940 553101021 666473208 772728744 666661379 952892872 214876811 626729222 319827594 614546176 390760334 559382434 498325191 661635507 623704223 948263281 136368572 987116696 421439918 723461477 57174592 922478076 661841625 674382952 414345838 610035924 896580617 945362792 109316937 174659663 698656167 949720292 314865063 495761765 953409971 994131739 765269978 769018143 645090540 693312088 647770501 859654625 286312487 520632248 145837554 651895330 125754119 581824333 861908382 974765195 437473218 500573851 555853954 655805756 614164747 825500405 603599965 605725428 534249576 744892457 901220564 946419898 228241600 338119453 334142313 706800778 260096836 979938021 482098299 575712010 654313550 769410748 460598835 533419184 305639066 429436816 398716225 657032728 549985783 776381819 232456578 882808965 211901223 234853443 960560150 988222415 969060946 970849953 394667250 526630360 139961236 654657249 13977914 381698227 302259280 832766495 475894243 949472797 195615393 524038880 545433575 897311948 344442173 376576340 79267643 688559664 597993362 997360709 433894437 797772662 173608224 640554634 695105461 864619187 650091072 701568518 345281856 964222365 99875744 860903611 206084870 506736046 376266813 839732471 245553699 669714740 82334185 270773700 112965970 488054332 879850146 953772938 488486602 566364636 51452754 513700929 390680330 798509250 47035070 622255867 119177822 233331756 546991167 948919252 208163263 463247170 669342093 998295716 262664457 866100675 8599394 789731743 453086447 960244422 550105094 875705949 300315221 693324897 816320671 870496542 831226879 970640811 588312154 683907557 532825205 565357115 834756463 961941046 293013649 497596765 231489110 644521279 422258097 663336057 73324936 925516353 464807961 476099985 444067622 795275156 658133883 972847881 614345962 695892642 558302827 661381391 275816790 400903919 654685662 670569013 80720444 892392990 260283003 615288768 475569611 574763851 566752996 924984620 950501321 982568782 858889925 999717645 924958522 927380695 861724930 982106654 335951122 621619370 952395925 961719316 311132875 781246718 338440909 479003493 10976279 114499755 194059856 290999461 488041120 802547822 250419479 931594424 362944431 627670889 632107060 775708093 366560656 414999798 992547608 996501888 558842733 890862928 666525658 793365759 487331179 666137864 359318285 447633247 409012822 951171618 297807735 810268172 786330696 859085534 741836373 885682960 262005321 806357937 608562639 667392836 585703991 725233747 703680950 798891949 795362788 900580493 86674269 90265340 320374524 857550480 165626814 377180847 162460911 588719857 613084855 911929202 244723585 368329969 490622063 575224131 305479239 358826107 407206655 429554339 780983579 946992925 288980605 688239315 574994473 878552067 676943776 712065113 517513696 566919662 845302620 913869915 886183555 971595110 891661227 973138413 468133524 846457727 151811123 507963400 169861028 393612915 672947701 809282091 738481493 775695666 563605529 924412903 661843877 775536094 719557284 788563508 124828475 464805432 797953273 883009379 482940688 829825083 397910379 630948120 846443363 958445875 545009552 758498327 726561021 834972081 90067883 782141167 602041984 745560775 510785893 751569332 248378689 845828719 747441436 940748090 462587558 836763098 129182138 277505794 540952819 739514893 444878919 980278117 893305589 925670174 316702581 586850522 766429341 929306566 868033656 988276194 641807615 893905237 684522729 812771986 63168714 386866620 394793263 720249467 554260355 619261557 111584482 862749545 220337723 466039444 73952269 554839825 360046337 720495586 684244177 762443311 206897688 387551047 417979916 820985012 626737911 741134097 382232551 730458009 464514671 684396011 810632562 821869149 87189076 608982065 890738310 983949696 619392582 980426166 319811395 412195118 806966893 975606527 644674860 754441380 118844906 332417050 303324033 564723668 494371427 899566824 35450848 772622766 432755950 440991335 427615250 891483927 962169664 984404280 777951118 845214048 3591839 345197126 188043941 473909655 914605206 942713153 537133513 812293447 919554267 955083237 799189025 979811761 300494617 947336628 998408810 999422175 90457127 613329559 401566580 429486825 749929541 945592819 168204294 819109594 19335014 993017425 542740894 927875132 414320595 635057347 23157238 820161713 967538651 999846740 663336717 911657169 827402082 934552938 737158798 790038988 586471853 845017414 155991246 594461873 871628431 970334237 102792783 727188514 660361418 670433137 621597530 987800467 802400646 993885268 472690406 725229389 47462022 105749722 24301646 590494734 504796052 833721101 901726568 936592943 528003738 839651426 371926891 943268300 778040140 825047123 956297743 998907874 352297927 953755407 850532465 867883849 808770569 867211678 460678554 763183148 96411145 401346161 573911470 977613858 87610742 776367044 462613851 696825309 858390790 965998621 799130430 993079866 274007668 975125951 584097702 833547771 587668461 627731874 466139195 741950830 872071375 948755667 106456448 465551096 89662373 116957709 210935076 458133288 808725216 899343864 396487648 684908044 933805054 970804864 68939430 638593286 790110374 896540289 472852806 580984023 869407352 884586656 216118737 737063300 657936415 964363473 775349062 861276285 616791346 630218141 198659601 223627159 772505235 790526591 862439260 874742188 895116470 973225718 223170710 348033447 618381900 806249051 231868038 946444298 518828943 673585398 385760410 689482103 69257818 192687827 123445352 194065184 979554245 982997961 277532350 886716820 731848139 932132698 303655269 534960096 924359626 995842879 979726050 996087634 709764065 939149042 991220839 995003790 660568837 852301458 577046753 729280364 568626842 981323495 683616712 976996221 592963778 850304274 535251354 852121059 855253348 898910337 980762709 995925785 719614657 956840092 204604442 307346883 980724021 980810572 217029136 257082728 234738533 956600137 529621860 655725699 226708364 958536305 570852218 650531831 192519090 372278532 631427498 689133215 464929221 884509523 663722842 920195117 829217117 973520200 635437949 767562445 978794997 980701225 138469798 236959410 963348021 972488740 910251398 994762564 753150417 943772828 683451244 994095692 953945458 986075380 282344225 868362514 791514522 946893160 436854564 657108861 350944895 388659304 524947710 872569732 728298434 869480371 542329770 893324336 940174176 943979467 922078174 926056825 810332794 990033992 716281348 870797002 274580691 564101939 24161539 650743973 912743412 960647514 32528731 292465322 522492984 721313783 355320307 887315589 547913621 552578660 879862011 994304290 652906292 696335824 923842543 995018937 644795251 878579459 158301621 484547770 886568626 977801220 42190091 181091319 552463435 565618217 658053170 849248192 224827439 688603264 412332757 682655225 709668909 924262137 77236536 744416706 122954096 683346675 151575279 539538044 554193127 699873964 887358721 993729567 777778313 887013604 700182136 887346362 532636202 647841497 356694829 432571389 123506859 747054235 974405733 988794581 812280869 837200918 949780037 974128956 521390640 576020586 272912146 807611775 686100960 695444359 144607595 664361761 153895440 468073322 411959604 817454372 10180999 781362992 658550784 806838191 756501805 993227301 988295592 994734114 293922989 777553756 273118228 698626714 139086714 549973802 630586709 831346483 519907703 826734647 745641876 788260019 25108555 432053796 223157885 973972408 558737999 615029450 58835272 924147562 338557181 652173294 642818568 871840601 595786920 795348251 637620692 997050888 225558337 431698868 966952107 970897712 299547742 611309674 17129733 305981154 60445773 173304737 62931592 307429887 184849764 230338584 909407747 972291247 609770509 929087666 490183676 679720511 636038617 720778837 284350272 393166748 540832643 770443618 53494974 942201439 576669222 730653907 277736596 838993436 858909976 970810753 227736031 945999874 445507769 735567213 194141807 776149810 346208975 404589638 270896016 977497308 76704695 681968222 808291902 971913855 870877928 992072698 659761255 707797268 45462225 730589425 232420160 343795126 740179932 773879974 427025251 914212414 79956051 419661238 861428242 993509397 926848448 952489882 344294113 568351366 81122168 558913431 740155764 953968610 748908632 794283599 340606031 552702685 45744012 693031231 633685321 784312906 390100416 878192873 246135822 843585733 320517000 811506527 780105342 796530983 793938819 882999321 617970804 938701775 688096893 900872210 522765942 584623446 797063062 979832251 445695807 968164072 37868489 878681460 866844901 972494368 868314291 957569976 994034691 996107217 198874776 855652720 215997728 278701936 628485995 764197716 547711156 749796701 807126213 996399914 474667496 996005103 568405558 662632530 232301527 381268946 263176875 322271014 329597485 773173520 313562851 965697813 552320776 783698329 85561302 814410364 695930023 911866081 921469845 996407332 152816509 422016913 434553844 652748004 67319673 574054823 229675188 511469383 134576649 357945907 915701011 922441061 26260883 471162949 679528903 921874165 23034546 109038858 822150874 855298040 954427522 983224005 940907314 960949131 955761989 988810542 224508373 877424726 298271051 345133707 571192728 971663396 267872874 924497348 176280511 695666889 337367391 563255210 363893383 935768877 596364010 839236928 141472986 314138582 121642847 897985627 767956070 868964110 513971477 573844244 550540826 569715699 809585190 976926930 565972405 751574260 298443587 800800711 879413427 895912756 763576303 854197329 53674761 811935222 466087825 983398678 786382511 980628863 367998605 427430099 164351602 467051241 372482393 658835224 257275237 813606745 506802644 617953076 671483756 837018464 529949938 668020875 162472768 340173966 234777588 759405974 482569566 795765999 732642824 897032654 391677361 902314708 291324540 996924128 899121493 922375105 689372241 842903718 599524317 885562543 413894395 488396979 210227204 619169522 106127213 130509378 722988858 858622343 45888224 759487037 473467619 860435027 556376526 975533805 698105386 859479028 445634093 514568632 876245360 975170910 722789851 776682314 331579701 755578606 545339723 820123705 596382877 937653910 490230418 736389597 561401986 848635368 591899154 746566277 958580780 980957790 303168855 412547907 92403621 335364671 530058750 858081120 741186196 823405576 985663040 995499602 345329711 693936554 778432114 907382766 542980337 548877938 190292647 637765681 941349115 992301813 473022653 507871982 441903502 870073955 472706880 617853626 231473872 511608484 678775291 906755933 142588797 539685498 28792300 59773532 52425329 552466192 246839534 486447451 572619225 947576783 434263971 622700733 767449957 812179421 318605460 946091090 738740201 923973056 783056190 814036159 577584696 831028357 426547683 544615930 546718141 565542069 527508764 901813165 416583072 824149607 819795559 853810771 592164716 712461911 929827411 984874676 650875478 971290060 415151495 599580622 802589139 959497957 737612859 842637955 84896440 746189053 132954499 322592289 109537499 181470048 355765566 519363050 808994312 862208704 798816095 899984564 1392767 169143430 433365033 632591949 173862721 227100951 207094903 411947912 610150994 637966890 414678847 550505852 131762755 254620275 854713965 920141690 461844710 550184400 526421454 836799424 631193269 739678326 394136511 625170088 778643228 966227487 147693279 687721255 464744501 785724933 785049622 982963026 696176793 904606979 322215962 424669983 628867968 702646936 123100555 531015330 881584982 904604780 926342788 939029387 602622251 746483039 70096863 175075789 552309121 841598953 41774141 636888461 663765429 726182839 509351247 616038617 446995395 960854952 804905335 953162663 968115494 973048590 603782214 859391186 584502181 892234428 48943777 901460924 845105331 898696986 516581794 920072629 705387777 860387917 576356055 832117875 922210742 949504598 960754858 977066125 419248372 769291262 69976558 133311206 391464767 940849163 734424783 754517703 632138700 870792123 910357882 931858228 446237108 615838229 99560888 735389510 539905347 953597922 750057112 857079294 537505187 628658663 23502838 587102688 67088157 306800006 862115058 881968475 302404804 360677220 803503014 885297936 647394014 700000225 143252637 795070986 214470558 349492260 328762547 612998338 170847626 395748096 430700508 871105701 281507181 770900439 869065258 991643391 162753146 904554931 642361538 986560337 190117169 895794041 39748352 954896539 314692449 640981841 888925166 891032871 747099729 823803889 554324635 865594878 715443491 881505536 253432384 654777055 143625220 199821038 424965828 606223402 96597467 656826047 51653855 497127682 452499197 980345850 325906720 628705442 169860227 548353151 473488379 947189248 113847844 425259803 19412503 97268135 200076817 718691661 183707859 942313871 828920473 869082525 983614020 986573276 171900652 994044064 562353030 832987451 62335223 878021146 579910947 959217595 47214253 697532998 717320306 841310667 889814254 891960560 742035623 944190868 764337302 814005454 118016455 815381691 88046104 186041357 592629299 819010684 768886354 816097136 793091526 799678783 847671662 989476764 743327335 792547461 331475644 597705495 97176666 676193249 828489921 838497190 472072664 911631994 735552774 775921476 159515239 427484294 46865708 341541443 442415949 508370886 708753041 759809519 234623268 828110493 757203565 777000603 404902709 613992610 443426229 830576152 294664758 825951712 828417942 978337679 957484099 991328360 503543824 629154070 143646324 448703894 393308573 702241296 870094676 899833859 38930307 301716815 862753349 911240801 86925707 887568864 789169497 842340039 978629351 999294042 334063725 409477760 304493276 687064890 129804717 296673465 935057811 964227503 702332538 924485495 675979139 856289591 131142821 888293664 92524392 297523290 475326133 886425780 963856130 970402976 77899280 336115955 732970552 886513033 628142417 946749168 471884694 514654854 969636667 983128965 309805448 444275920 681292416 804276528 941566345 955451337 798263576 937708490 920387219 990077843 437916854 668058983 889995684 943501572 139820021 704304015 580090800 914033691 742309710 840990542 924192981 974153452 492382724 937609169 442562142 488439038 538322199 829887892 412461594 924880266 570873801 628893050 4355410 320459759 656181183 804183284 55149447 710654131 520552229 788118609 710692045 768074500 462033383 957078239 914434604 927171035 133578447 418489756 35152550 130521375 744236786 980872155 127580566 572182466 236794650 485741854 794288595 803567787 219888253 689044138 417476028 665118220 856484851 893963759 239546273 366233756 301335226 438289620 974425063 988241239 6392313 869628656 890368693 926973595 344129955 854431255 53918128 273248266 946919967 977382584 157677073 484691412 601510344 956258482 828311052 932124099 893215688 893713102 502490146 985541204 877843570 927799115 204019023 209425168 933021594 988161320 96718533 734579255 525119687 860003100 525308635 823498702 269774314 456260945 238169883 441882541 960737326 989736127 751915608 839919721 170231933 274525192 87939731 443732224 931315515 988659054 542474743 635058926 277398999 427350686 181096176 690802509 720604587 955275784 991943038 998824328 728577230 914105361 536695460 771705760 82702416 423119981 105413501 140031109 302820826 552425552 496746134 924995781 777273844 799426499 91132699 350623972 38391230 309282842 935990738 973524728 372579212 761426798 453414938 572482691 937208540 990811735 742576170 746549632 921885226 922077891 212016625 968100958 569529581 721647295 817821342 930843325 455564640 573881865 739294216 972377918 46062033 219186542 176009557 284693668 194440863 965613476 297324498 519308813 396036375 545277947 508716368 724458929 129940376 631451637 639712688 907018275 746267163 868308064 951072998 981988757 420983221 425917062 168339193 850460864 876619162 948382069 750516575 805254982 766100801 965299008 59223425 930726132 423157594 734399696 67999259 772117462 304553843 521448104 117042467 178075553 845818603 928580118 330048347 369191990 496769952 528683045 538416056 610288963 915139148 934159131 700839601 704197306 891853862 984642622 574521053 870607764 819905178 823187359 696199998 723751878 25529038 433856076 468449629 508246086 276641785 740408127 962607105 991968587 533304063 725618353 55281971 222684188 721317353 728839481 907446949 923716280 466577153 586100895 399880812 931383718 566306097 633467763 188714197 215396256 703107955 784780506 769540973 804910378 648193451 958176740 713069521 878375948 892320445 959432071 844472923 945178234 486296675 950764153 751038242 875537636 117236563 984038205 121368271 192302068 539709313 846785414 754868395 904325882 71755949 325340041 337281442 510066683 273304626 309431782 492819347 664706832 721961295 730838692 114691933 423746988 139910972 844179159 392997125 775609555 510381943 577025704 645268150 760509761 789719387 993426037 183629778 669801400 679095026 940310394 101384827 651750390 999420770 999517557 993846612 998456981 345847654 413174823 353777558 531684719 311980618 565659151 512813032 803889752 137321983 999410232 443417168 531323106 323261916 636080004 26448542 830797589 404585872 827369990 961904686 977747729 307614766 534040275 68495577 464614677 974296226 979767109 776359305 901294743 418058810 641932669 627574196 830743843 80948186 335035690 843658173 936888746 579540799 669187293 753837212 980666723 650587496 900279275 991089855 995994831 524737131 570116126 542895983 590196407 818076846 891714712 25635151 889619084 154829625 553652806 870723864 919129182 286144823 896330406 201529681 604834012 135508121 848144517 6442198 751299107 664751404 918039740 928440724 993895521 706591556 845410126 478506205 675995079 148431241 750947592 823105707 963069259 37741537 261589723 873257901 936310927 450352738 921070724 930091579 974628823 122356199 536537667 251114219 630006423 377984449 646938187 555145839 864478036 975714148 987758079 924572935 950759980 290897369 402777060 596493664 911602373 580525444 748556142 824330886 962337616 355823624 997969148 537283299 773322590 902901163 941659653 257981513 996475610 751979983 815429135 567020519 596854592 443102799 840171391 249118953 869051623 204359539 343410811 793255910 893638118 502723683 521094904 344531690 837577736 345468994 622048765 79052997 938152311 65407133 683906064 967899260 987763342 299790240 792895402 269203012 356639592 763519414 827112623 612317636 927562286 719663007 763024649 718215803 886310400 333162529 921707578 263202963 468620026 503556732 758127282 734903406 897315347 337654784 802870926 455820836 697706260 571162644 717392967 437941361 500503108 820494609 976751845 566275770 693366306 959450539 976276644 196054015 397047644 147946585 802790551 173179276 446958417 414474317 573747644 469889050 567028305 111974107 886173692 650834184 880202254 928837116 986418466 146025390 646820851 890684054 952848669 313539061 981439724 107826711 807077656 969664505 987210417 402609015 745388750 540393371 824802555 825547334 847967937 655524260 757477234 41549014 219076711 218671905 657957438 112612049 551531179 489209481 904006568 298861400 460953938 158637117 318854382 823707196 959665956 552611859 645526668 194480694 198492913 74663085 955149781 437800344 581498923 240779163 973253995 82111222 723296843 341574447 746962868 375234880 908136848 330161110 766378041 391816698 468435824 592030385 627504495 476286860 659607436 50041435 688465526 265566300 548278149 12928572 781118415 986764586 994258255 960883738 988700129 490414290 805992692 902052122 949280005 843667109 894547754 970715230 987137368 757474369 983975594 672222060 994417057 830567424 924811509 71314731 282262291 574960661 838179665 60133460 292215631 138890033 864628889 981330499 989513012 807784533 835029990 363412248 967737485 269584121 880256614 789708564 853982275 994732572 998217943 819347080 948446523 859984501 955772536 498565683 624612785 454998090 547466537 128056867 359172075 66166122 232711744 586182281 738421777 789887749 885798318 72087889 505787149 15098193 728185872 684146906 920016462 511221675 526928676 584555052 711264933 332703046 548028027 168699903 989984631 297083277 533946509 439122651 884942139 462120938 471975150 983765937 985919647 171594008 827189021 812236589 873101675 301484967 333960305 694830785 740771946 12095520 335906510 483939896 540682486 116015064 344041784 225945885 823609936 804997544 887696013 626962321 952371770 580943321 907405508 718021460 867189027 561240880 930143743 625858270 753212273 829274942 976091794 491753103 529844890 657192770 866041866 43089930 743049910 816470445 970221771 159119750 792956977 359479500 710285837 214341900 951542506 863367535 998533100 253737871 843739029 594536210 750145911 947559846 961503451 384819485 504546734 813405960 901836441 520027741 744783495 218960813 605126965 279382871 387236977 27243931 442576990 329353146 866674377 490105502 635096102 844826126 999546716 876404473 929008712 613147605 983962824 980745275 986097854 89169340 562038564 989588498 991868024 725655592 886229330 338488913 740226465 39713574 924980745 918105053 988319447 271148154 897643394 437333909 482533640 116558400 793481549 289251581 337605966 277222425 948991932 422007658 785865449 80379880 831578093 954254541 975308926 250700360 655518258 65768948 402631180 107555339 377822939 870210610 959500680 178201881 720826887 461253609 640852066 228328204 719026596 797997237 964491446 90948580 91159179 341512819 407037591 127989725 317170712 747216534 756652581 846012430 931641836 60890459 308877852 733044025 976977227 382813121 661809651 263373973 966795865 560363387 794015018 517845887 991508405 921796092 994846693 898095513 898732063 487009923 662935561 860187082 870958939 774631937 949828598 310033568 630350134 451611939 621401919 115255636 820326778 229513483 654111426 796338220 986649259 966137287 998559959 977325880 991472182 514018028 950930004 672899452 704723338 924861403 969453830 517799701 988136355 186692507 448087899 358906116 661806253 284441247 915189084 576415778 726738978 561487860 774740245 222991560 854439255 218840288 670988473 664030123 703093480 87135155 301293940 468983418 509062070 385305171 773161905 524092925 604129102 764768657 921673379 36675901 326282929 857682318 951654910 473299102 919387908 467864361 702237496 521611155 743825859 264370114 947076971 499202743 709432100 320382945 451006423 898386350 939820766 371923673 878896431 555321537 762092009 239121653 653266840 173566271 396644386 32847608 413201564 521107192 567692764 2225983 896263182 379064481 848714765 357527018 498041204 907366649 975974990 907610904 947310868 834294073 971089322 239077850 779080810 504100419 955113988 810037875 918184670 133488724 297648063 638370625 849660810 691419314 819389059 825932802 914956587 307954119 541400259 341746159 617648465 715449635 926707793 102475345 628663085 781141216 870284045 871183086 880869783 8116930 667000014 203756903 666502242 176179904 898213607 913530087 989936749 106137603 809064801 371804021 721548258 559043384 619547767 725699673 858776526 115786490 524992287 168519132 380771400 575714220 969986758 37126114 719227183 953519875 966973290 693162741 857290955 137019840 306677518 184784942 436629069 114190603 425617343 863496200 932159959 655967677 885924540 705813401 935725427 698790732 961723576 160958328 699495443 283906330 639891393 992558479 999684883 141808051 368017403 389919885 545821464 66596000 602768665 379466879 680457634 551198753 620873565 148290764 225388297 196468950 780099640 31547523 914645170 699774226 776085580 840980671 923405424 331394004 436556890 227724474 357612090 648291112 673888441 299446722 745325726 409872571 687876586 973368052 986506606 926917563 963649118 474244802 956676434 734949351 760201718 929074202 959032568 965403491 992085495 763248474 790134037 880499995 956644345 385938256 433464461 993753554 994214551 879451722 946029382 715804010 971635468 998377453 999389709 722261639 869473642 10038068 519139514 641793850 735208954 46840377 641731820 42282579 266284876 190740860 343375205 942857742 986361553 494287340 646992715 619400043 729339486 495866967 776989345 365093870 509417297 186820953 843069159 875136565 996344264 686761109 966153789 315606972 602657323 929198439 946203217 720829744 955133533 334551823 558995349 265626873 748827608 493512567 799592682 439942138 515614097 719144164 798718789 369701245 762083719 836142812 959213843 537101496 812943432 671093701 830080404 891139259 914587585 488795436 740048602 733122674 962977810 590472986 590613983 448618494 592414243 639928435 693508094 233503446 358169253 646318101 647628313 759536420 773418222 136124768 483537891 737277314 899276795 491349043 940839260 876411413 939306791 133553100 311981674 732875552 998378036 505805208 790749110 861298325 921892323 211139540 960422751 435629472 443965413 202965923 948251115 851196954 933583296 911660806 994661696 703114485 870745041 874366915 961697133 315358498 684292872 107581452 765490538 814611750 894248829 672754536 809222766 762053398 908096742 872850166 990621087 943579789 956014180 386960298 735367684 43721528 390436762 94839632 98831935 441533622 754650503 918620269 983537158 289391866 306556533 989129991 991012580 783428843 826091765 212244072 621942053 94165996 566687921 689509770 917230123 308300583 358324744 8897974 614966959 586295243 689157631 874229255 897683133 875211860 996894755 210617803 840661984 461001686 905079031 822689089 988065565 541107591 638873674 684480468 965192199 502079162 630204546 859053624 920624625 666411353 964342111 568387630 909725728 134022671 182271207 565905228 810965343 143983976 252399324 830431546 876530237 846714609 992467744 198627334 641962941 287218407 684565494 389702514 968989745 135978839 282568561 832181653 896664561 484221467 529993021 157376756 294885969 193884267 974556698 168530296 801775842 344818452 457121091 966139225 993162539 733570895 780541112 444257837 994545062 939082422 952238848 233334391 623236082 741653244 804716892 91543163 384926059 879164384 884112673 779408660 846910956 985010175 987171347 515998826 610962202 924288427 952314892 53811350 113516119 810104090 888638278 66621833 737586469 987840838 998798926 241771295 843092960 75470954 558455559 307786730 624810553 301809628 968208762 627173228 754015455 304559887 562060988 974977492 997061859 671780530 837334870 875775285 952579405 954578645 969729823 613804643 619953057 276533599 834507134 906030157 909180831 395691523 711656580 176982583 868971833 85082822 566597137 403454351 987798805 718302460 974107935 218371576 848228029 976604161 995352942 264641788 894957227 272054412 656374635 897529453 919869596 509086401 710457950 153181632 592307057 759843191 773431492 940235872 977946821 838090650 869584075 318152235 399252034 692854928 728629182 959143285 973988332 161242685 547377064 894893970 995863886 435504588 448217907 752050625 862450092 567311193 767922950 746063556 907619276 481736293 826235150 952737586 963695951 478259295 725388117 978260352 990792481 201771171 920073960 979262850 980345945 211934117 994575226 46246948 871459935 801232286 925381135 124720779 919590327 872814698 891699103 831122902 922934940 797910714 863682192 816440274 975293272 614722153 916857311 154547122 805833809 776505333 925860508 189762186 341532578 854417949 994954493 660771502 913933871 930357435 998799730 764773532 896716765 738239240 992437801 389551679 392404649 953678307 987391027 76363914 792715874 69055341 452130135 620159592 687804468 450696254 891259250 603957925 937429437 605481229 937270456 839406310 850457033 596929335 830157776 723951738 800472818 850374560 871336269 485582414 732421145 835369627 933086043 266885703 979146642 630849471 766481428 865240342 913895070 668346602 937463174 289468335 579671712 559259539 624062274 478861695 738099568 81590255 166824412 318447450 466676193 978738220 981522495 83506102 746369640 959802347 998773823 891365204 915239052 756974478 773901314 827284320 930141765 363616463 898251847 881298423 952860684 116461874 177638606 630452478 667274981 261154668 821020961 641450357 912339222 19243790 863696125 353769115 592897250 170415997 867955633 268672708 435012377 520255257 833857424 113058756 363574416 62448484 479697068 262776422 861408740 191140999 713653048 363174867 464264049 100918753 704959698 881961147 921824773 544265642 885216837 541586573 807620823 983224276 987680140 448550884 959004640 615713505 953185183 918674277 989122044 791841798 863080410 771001963 945391468 654709556 861436122 217089904 513573263 450994602 996052324 450464529 608096435 455345311 592555265 379185412 779677336 353963728 619054650 553139071 879873828 370615238 591589920 65526254 367387879 226136548 598973212 479474878 879068974 750341153 946709098 751403848 891969263 360367474 712720383 297796008 997909618 498065906 867594424 121863989 966849549 605529463 970701132 872730665 953922790 454693678 534065418 815653356 904769569 147742034 579443793 236975732 331303583 969963053 993216410 428420624 920183556 418647050 853749098 620360904 833582189 792822480 998607057 607555490 782876002 721796759 927920512 59784110 927568529 926833355 952809059 608463745 771158099 105358582 620382877 998758992 999919296 803410952 892950858 622985596 938700056 220646658 525235826 390658114 896357903 590415173 782405997 619038024 695114499 299465565 355592456 449885375 595503135 791620098 900687615 601479402 707284833 381903298 723674093 885102082 988117740 374311412 791754845 161241686 969782070 781087796 917431637 498052931 788144515 654701930 688374250 170087432 713877330 416940260 509463751 615753457 639550600 737857025 936024182 815448608 980125153 257688160 669538079 116709121 933072636 156412116 684574434 560680147 963126901 125360557 790360637 294573755 435897268 567662697 972261074 292463669 452897275 433061607 671616397 229812173 273838790 29143020 519601827 141434215 404767887 855054135 976010820 149936342 617212402 842024067 890791778 378765882 802935343 84394288 938451866 343041872 568667936 587702994 735645439 414218837 793370302 438732516 944892755 274265200 560639291 876409635 904424640 216126477 901868579 154297990 285165933 746827593 941105799 136964469 590628251 208284508 646778524 778223261 975828715 806587891 984374634 542629022 582431142 648189113 783917362 950907959 963611209 607473750 849710079 445079682 536289058 533283072 820880053 512790721 550106263 365242194 954907757 833343434 980631007 341735401 531009148 769450904 839767632 708089352 825663804 73827665 498267201 573130291 696757000 474104513 486896493 356531447 863282204 846165493 999545043 549140353 670170593 630390405 906233775 192316818 927790401 31279307 510962706 816381444 899676106 325823523 791498944 908791750 968045093 977177965 991546521 444617063 727820256 967470738 987187508 588211370 872925102 342355956 743216805 663917370 812083564 259398099 968424050 294968148 990453763 325740531 591412959 994179421 997154699 931732651 984459915 363600257 757132011 417284517 954130540 366075839 467191090 231373729 409244550 804601194 878689764 203981306 242208220 837550737 898804857 150530764 465086589 913907933 969188861 112586658 777776835 54792578 388821800 668682065 932475999 954147427 974878272 61025163 966008210 558460770 684926821 653912033 801309927 652281441 955639942 21217782 264736928 494025053 736335161 951766021 968999996 689417031 728980725 692617623 914588316 864830766 963743036 623411829 655193775 423537396 933968504 803871061 936071063 252467922 896301407 86386239 744358798 290651573 496695234 436326476 439782200 138275703 859192824 465154586 630836080 799628780 968746204 806957739 815356407 691234198 863472534 907886718 978084400 574012208 722889979 361404293 671305308 942796554 974936321 799225173 873085586 88257087 716323073 86765057 757764674 746269244 867582779 28126145 140409027 873066784 901694268 602255240 884681395 33253018 917472072 977484786 988565305 172464246 536322296 191472202 925678309 998666323 998669154 988327769 994441445 769062887 881677050 247532813 875243397 156633436 862760285 77935782 712106006 404551200 915280401 912432352 930751846 394094747 546799486 339575521 727615337 562804291 937067332 453629358 844646854 691722904 892413588 171482126 302340262 126258911 475529815 402745221 932802722 500852396 984723922 842303915 872504780 500789382 871313268 813313740 920808561 969258192 991256074 209851973 454304752 104039947 201735723 624793899 753766438 676329828 686466436 171541732 420684236 562680415 731643250 727102253 785307610 206216945 533120544 568324943 874234515 415851072 473891693 230080932 868835939 161199924 374410914 596637351 777441607 848384056 965185914 522411463 530274610 475064024 714996983 881369859 979207487 515628078 721908116 801380822 965780693 17121604 909711094 878181290 896767253 733357744 789729852 756260118 989146597 351020596 459120677 24794687 223597456 779378832 921227781 440014327 519213435 971469697 991439250 937311686 989325020 691530788 804251863 665385638 981809611 642413918 990653726 261816725 391874571 159235136 938561086 313152081 898800658 54901526 566355025 306536892 764218102 358957856 359068430 777806479 835457271 854284828 954996533 130797260 420995213 82165683 334614407 68527893 331793619 128294647 917700100 208942543 961204604 319300703 859121435 142951577 483403003 708367682 847119333 327601143 431793927 585213728 923233021 773720248 774437473 391566187 494103911 276422811 794637753 849578656 871323570 585362712 790211931 563967929 817183110 417981850 893614901 267533749 497862953 18125175 158364197 302423143 372515851 514170767 527824769 645664974 837195786 600651194 618072497 534776837 979836319 420686827 473971076 486354276 875018415 833565657 965366872 574360911 740400521 712762597 716153262 137190393 210906386 8849530 69885891 805698757 905586719 266491172 578137196 835316117 954564764 932993222 993192617 823178814 995399574 91002068 839855378 238200126 489032316 166222808 587795197 341860577 401516747 795903974 949602298 488502813 993206556 316417416 983101069 774745331 852228075 346347618 898234117 564833013 606927465 2468062 490387346 484449600 745353874 711077386 721879806 653578084 889654943 420279989 425379277 278682631 329820238 689672685 970669999 293580880 824483386 178114310 613070295 602095839 682661951 273006749 634157923 324221438 838460303 460025531 885454341 34747977 284593205 612360958 649309199 888949478 921097809 277855524 655851430 19476232 856413595 215037626 959983621 4894767 327434411 976643668 984049591 662948974 832103332 364587592 659721479 571350818 834572552 374611602 445036127 750594185 785129054 133924291 198947294 698171131 860081366 976703742 994891754 373324817 900770687 763338335 870611695 914842932 922612576 333538212 443175655 936072235 996727773 62561227 246829333 722032192 733861154 828832709 910415672 57151247 393953090 446251139 466943327 849785364 980936729 957744105 959214539 801775991 892237644 7186031 926388184 556816267 926385577 531485258 957724813 659591295 899344669 65938935 993417801 464611430 555311760 813989881 967431941 480921203 780687764 196916717 475038982 613038606 697482862 733231656 807460145 839287186 873613781 675057188 878529512 518583186 833591757 722384728 985812845 866196547 933917697 831003374 973878200 818954119 969467862 217636064 578805246 841472442 851937855 379192262 635561772 683904697 736778738 299844799 354818106 477697674 732376761 930154569 964548877 390785202 661458659 965783519 969331111 584401176 868047606 935764938 952015110 412572600 617684716 777256669 815638754 369064136 407329530 565124069 688918373 660930159 800371336 399672801 620085018 123754255 874469582 779226187 796371518 645578593 800009849 945702317 995301173 520708683 990878246 99719763 461298761 967258399 994192290 586337140 764133910 921345301 953720029 926142328 989614900 403193240 678323252 302887721 394207265 195832446 451581349 613160121 765217095 299562047 991575062 634414893 792341188 222891064 307808465 666115631 976405741 725926062 786149956 679620898 824654648 627918505 807097634 566598245 748443764 11181001 840065102 971077893 996074964 748971358 794662720 324170622 539948833 915654614 956280908 680939313 871302855 485729344 672393749 473402321 925474468 566570874 778363430 85812467 332314875 58825985 483675961 200286682 555233580 386338140 586797964 570040535 679746122 674096285 723904020 779429842 798111109 171738947 399617692 183256179 294390520 206019880 679747230 183775193 999976802 625585648 725133513 482384539 857214050 596669522 806901387 906831399 947683418 760835441 901342068 970227065 989105446 491330873 980000529 344082997 756596069 180250220 412954386 291062411 521932705 73338680 851103373 451811618 972200837 637635885 945729535 608489821 629626761 816172830 842052657 459524313 669284457 875207356 994093849 70548448 337949608 609182676 963929508 964347272 973573097 671045147 676034166 703341538 918095306 678077372 844149346 120061989 909111987 378346154 627108853 909753803 965780848 734719847 806138913 862427479 883234354 171381799 214896706 233619328 933933237 158812421 759854548 664723799 996649812 280015408 640528185 406520165 516850847 509058326 598611841 260375332 681257375 484836302 529690378 513753554 982297871 193107540 662243023 315683021 665683776 89544604 780523501 359054285 830490329 968829755 979756228 441738802 492489398 903027666 933421418 333590663 518439382 685554371 935691172 82638646 672583586 862176792 912890353 924848822 931014005 292326089 450498310 799177777 894151213 833951842 935693932 547202660 659094033 328329852 576145632 95403992 701907337 287222878 557211061 13769755 511100984 945906701 983010509 834586350 913763975 427300590 888561375 754186098 878544186 852742059 984030605 863812757 959680805 280005087 676832357 539071339 696106675 903659068 944615462 346760896 391811385 824443102 899067681 364103382 888798601 409930705 782793642 409732583 605573339 285213021 606302870 686443724 996018527 159068806 409607369 304997449 911471173 530862709 908680273 24120014 505165942 686473836 872401113 574625677 617362533 101601772 105704168 537713859 839547482 794828466 875603362 765475780 888429662 412153638 824540728 216326401 767165684 126407593 581381681 376263138 634744853 708457182 922914599 154190187 580889751 311950492 385344443 877458560 886714459 255122628 653218426 51743726 982945781 264205987 381940988 351476046 617233882 479521100 693203765 447928870 687018810 236913908 762177265 86169059 347149252 824303055 982411401 539344742 613205344 449939034 906154715 860482575 996666872 474638478 704878641 73020496 403891381 800444976 852300080 323051617 747468549 950055393 986811589 557105309 850531086 497933257 782422364 407453139 681997720 782188962 829285820 240613589 295506646 260771871 870830905 449720696 947822569 674471266 937764319 476965512 786668600 841089829 956100012 999008475 999343922 630871442 791037698 845034622 856553788 793264539 804293725 458071430 856476676 261888895 387828955 908956389 958423120 715212005 734698238 45414628 55444327 899923263 927018711 367185156 921787957 767711932 900775747 680212523 732838152 842129128 932593000 446047377 756027712 828154789 960535876 660506803 969182293 679295118 824325102 254485737 309711256 156043277 221726829 863036458 992955201 594893373 712013074 662865134 817201344 496156207 963166012 523501414 545255843 627986399 839865835 505008859 893449423 233684568 933488759 335522385 338597765 265127398 806218137 429073284 469455462 134002479 479057024 802163126 993208823 508963418 825566621 204140729 644326033 20054689 107823739 70757353 314736099 196821207 417889318 205768920 694923327 454105157 951074036 964514241 968940978 659028463 857951622 317137476 842086043 441961787 599834225 682359510 860411817 415643093 703553189 39564797 700951323 763417386 900579483 869461184 952312611 557085390 731315906 312053496 694517231 315132547 342708084 333509693 879594260 764013621 789217033 977552198 979543727 873229389 969879767 33471057 770905409 802486918 933011353 300322977 505292350 472742993 620343638 934671036 943216737 300340642 930904715 454549478 597383091 15818428 598382688 588497019 692180178 561885809 853002493 462837145 468688763 126501977 267619521 907662311 916489827 95795362 999158089 577103422 710775503 565776523 611676001 463203519 618329392 902585094 999424167 418721621 572476184 970294501 999201534 831121839 856078277 799436062 965056309 48334512 476941828 912359131 927845747 675331802 855593477 353510742 811557297 545760901 603719126 890515121 988643592 334246167 882563678 703798232 903062956 55833418 722839726 352762940 619268897 103613642 230115136 17271577 917429826 412921508 447787143 96228622 993700254 513589990 584070186 39105054 281533458 810862528 960809558 12776179 966856797 860907958 982406639 935655744 974400412 857491180 874024063 659880290 705549893 822604367 933430138 842807138 844910177 705975441 994032662 462914570 731838115 821439619 889566360 112598007 691921134 243605695 771590845 495082206 720308685 962784187 990393234 586223399 980304070 978691448 980109463 524179965 903650627 935868433 948254388 243721164 696234565 33789297 535307910 42081770 108411531 335488398 774924295 901679263 903831766 235703221 366715431 33548960 61438599 662778677 983546343 22006399 152793867 318765098 646424248 861244315 951920177 687009986 839380882 698679447 830000341 982346106 983922919 304492175 930245640 650953633 809505755 872246434 936037165 154653182 510955641 242693237 902897640 55388954 983517363 884584598 973257787 751556845 958374586 983832205 993494531 484217662 789694634 683032300 946222165 287336453 946119797 402168431 763520102 593120337 658544669 249389090 884960416 508203246 545782897 952392293 959128528 703450874 988171862 350960438 632168771 616091033 842440390 83411115 598953124 762101782 982540410 859041534 992543085 10593553 487300045 240493968 270527137 711380726 848329252 424076097 975458268 47324875 840168642 642106810 992300166 623082979 881265108 414393844 936254733 331456409 676436110 854042 156417815 929788093 935560229 500319549 796709407 815930160 921594339 810748162 928421968 277660348 298954455 626417838 750488827 949302939 997833404 11014959 648720672 962222088 978324765 431833556 763277770 142932934 958322157 315016769 520316691 755758105 772827354 474145402 885514361 865194221 930013700 89176008 747330857 710336571 731993196 125035030 430261702 933668800 957354915 897391740 932209046 174481080 764977407 249825960 521979721 390508620 414512512 866448306 930288644 556413644 566651453 675960485 866552676 250892222 654883158 75417816 516234021 560438950 904177600 939589241 973641031 570238665 906137532 567865541 663008904 263180050 428670241 366471427 843134065 829597246 961148355 13816567 915583936 629729437 769188624 869897085 917673987 803553545 915870342 282178344 930127499 552607820 564768509 237647980 348377983 24576487 333433498 728410048 957972924 808907295 828359791 629448037 647409264 902620592 911109119 94394995 561799948 625098743 652713274 261233049 669050973 752025928 889824998 800220063 852126758 953806293 969509167 230011142 470570438 162742933 439075390 35199250 277741962 187524530 649841512 819685918 995077364 751242851 787927490 315613748 434643414 995960874 999049735 160631936 924972834 56336169 619027337 502078659 921574349 478046558 927247098 408124021 842687956 671726336 888161074 379874905 912042055 694864354 811256663 497703777 561623418 511931319 635443375 588802896 693132788 441114397 456524762 854189537 858209985 161247071 985014535 737252968 935052560 861935956 917138230 590362133 994758274 676261180 885447893 577221623 725441787 158987998 789147990 792053460 862013677 7065966 38642930 299020179 569928308 284588291 864711310 664808902 774018350 135360108 224864640 738685853 856933051 668445358 672863755 863362385 970309016 109052723 248972323 481276981 596444415 986874696 987435291 929521473 977002235 950293974 969673836 575388028 990358438 200530534 259539436 670108030 706863724 759633408 930414224 957290461 968818442 375986354 501536825 898099263 978301367 75938223 212858964 523643405 830141097 564468297 961764148 898977431 953183549 778700520 882446653 30385485 257791605 198424915 803704553 379584708 829552895 867365702 977943949 475770175 981564816 564256584 943347514 313261710 710535095 148047089 586026179 989413674 992720178 24381976 997140567 791269529 973967707 659276274 803029128 898768827 975786481 50358748 413726557 779310082 841528423 119462983 941780277 67026205 130539383 923226745 955587250 421262848 488318994 383998251 685948533 276806267 976659205 510100842 947566632 689970976 793043254 145863094 431783569 496150297 814202605 386540171 450061037 561828071 827795090 377507686 597384922 914993771 953959192 499159417 624040566 985081112 994756435 879478473 910566916 695854525 758449486 271171252 832879062 334704371 594103722 633935678 928852838 885244570 987256912 91242229 744930922 408826661 844726418 688794001 694519032 130745260 472444442 278651998 668133750 754644596 866940675 528924125 783895464 325609374 688667886 532662919 756681848 743224828 857928326 325288216 900079454 744945790 779089107 837975237 954516479 318977110 436287995 817834231 870143834 357408615 616722132 12825845 62852807 585600018 895076951 102915988 943526078 517415942 617758042 916228204 976503261 133310104 247921021 752032134 880396798 832199195 980714232 43984832 128072343 172299047 457464359 893816026 894532060 235608305 288572942 351646265 637952678 489163562 644839664 457717179 534660631 139495091 325397787 598223553 623708247 69681622 565171989 237985231 585622580 913714514 937127757 996716399 997567484 511993351 595826384 340480552 482247023 691267166 831173289 529056244 824215346 262051647 963680385 676280191 725529347 592076693 899512810 219499030 825694485 969917900 998601043 708254747 861784541 307886157 637681283 680787932 765690116 851910461 949027921 233222335 470773521 703097910 911017973 736332391 890570043 841793575 994217624 488442380 880009293 749052217 989822275 35455514 303544095 24085705 733718389 337890826 992565343 75023186 840418539 519031507 830110761 238019006 732079389 587682787 882622671 654931699 661776964 950574621 957566683 248255111 524168161 495802947 751969806 211844150 564991624 237233680 411472278 894009044 972055819 186196065 716487837 221285327 783151154 801609180 859479440 761399291 834043955 550126774 870846073 72654477 263017402 494319527 548605628 503920680 508168159 104399462 734729487 555804573 799120698 189695203 573742498 371649355 953825810 313703229 359822338 680067504 948774460 55620582 539885689 133167022 656885172 18030415 304506715 570017078 840986821 937761072 999564128 944163259 959805684 68623532 495310000 380786463 642343143 375960029 864535305 740626030 884694422 138747833 757435114 811737990 923167194 866484603 892881271 561920617 755767858 285379706 437900423 517757412 725265419 311839101 341472107 83103780 635290388 498849739 646484690 400691484 938677393 801263646 896447782 498757160 663500129 536356075 581716988 48019373 820525133 903381701 921372597 269167475 968465572 765783246 830263383 445477249 477832395 349728971 586530907 532452950 794800481 443005207 694563880 254314923 846419088 288624189 409946363 151572704 353813509 988074686 996806781 688622005 905949066 466434700 990894044 613891752 704664632 764813984 993562588 245535760 546998680 947787700 972873524 790421357 908787314 858478714 866460156 506550661 607818006 713830545 769890524 16509991 474037865 492052244 732350477 494316710 529114857 171668287 682558188 830325933 845485309 535090266 992737587 100805539 708487620 598869484 710289311 461964738 993324109 15461897 45726328 128153275 408363185 910868736 917901332 730809716 963361971 198869604 760159617 490756798 718938364 956851852 964215092 250929712 583286440 424557722 915435018 974102616 977328063 689853664 743816984 493748704 997833997 591630337 598203213 823210329 922765000 538831757 723378950 788054656 991285452 629810636 905826377 476814276 716269264 358710233 619339560 524481189 746612990 386753176 969088306 571590154 641758903 251772201 863605305 139906511 296214824 670220518 756597389 439685366 998689661 405367504 770799388 719194752 866196762 526572694 870589982 695190797 789389143 292636085 446332530 567898986 924272547 593101921 619871462 579636052 907185604 645885318 793560140 607895195 712537901 185066093 255123356 291267645 523919127 332855044 947960281 96738043 650086802 181350949 542040573 251400230 925249515 284376451 969194160 963084238 971785033 551177038 986182360 839063962 950108008 347727668 441301642 550770264 740008718 445094996 845032906 970914301 991712685 423826347 869148803 925522359 988847690 708673096 950218670 228756039 960035870 641072070 743123458 745294742 824623527 798817589 821600433 371642449 434420769 264758586 425428825 551443937 832494451 349945326 421230514 894086481 994344520 169067722 950736915 313084903 439057277 672875505 833525641 368064760 754539701 327305037 709533884 597226709 800564957 815245743 951023032 629531447 997992908 353677283 423825063 87039162 895399247 419640074 569442983 322405801 381732469 213719570 770674420 53445571 409645965 943781837 972891950 758002481 819741806 296141638 485227316 10899807 212773730 754012805 862616316 820932240 993812896 975026727 981037305 164557362 881389331 564767567 935738835 389192487 805011738 859966303 970914532 954571237 964852732 93412953 112289954 710427602 987415727 943361471 958901345 972622165 986163297 915996440 948883045 645580009 669627789 863309927 959892439 872796806 964520108 704915957 866325242 187377963 864313296 752185621 878477492 546750984 893674446 126786941 923487481 793933245 942751112 833215003 913236211 715814459 998863978 804859665 937663245 451651130 667230329 913593871 969698155 299598425 511015552 564679489 894903080 646969599 909013436 529991487 840370046 323049654 942995907 689115803 918469115 891956786 992999424 559509864 585447985 619772796 661334070 421692919 750082564 195237585 487358343 987238144 993825717 912102809 943025116 602815780 936356841 613008488 689429726 50714008 674472381 909758852 915386723 168648899 370797996 726236873 913735053 166575419 781776133 216949565 606006584 976480551 980640000 951632890 968874384 853744633 907405734 953095691 963094561 603886532 734859832 784246317 996461287 530645227 575722296 771488709 809597272 371648023 931952471 603575939 631632416 706290421 768154548 770541568 873524079 874816029 886389881 16358409 287939797 327926631 415638991 861011555 869690101 98829219 131825670 518587977 624783623 659415060 828523701 604570383 998018858 615177248 673191644 721147750 869385956 857396943 887899834 438079898 770053035 173645871 663701853 116563116 382868195 38652104 714630418 306760866 518509909 277693920 411341611 287426648 619317864 785547740 917343601 889398428 897992823 496846861 856961189 588992851 641159602 672296171 939164908 854370193 895019148 372989243 739523937 508745118 556357779 347788603 660997635 435904738 936420055 704349287 940496614 833153410 868647461 429127979 439707407 845117536 992071810 864288082 885671759 568216579 780794579 850306693 931726818 207032883 773878908 792465788 896689000 807055916 984217968 115666632 206837421 35969910 757975206 363809166 741825915 317468922 878927014 926873059 993502035 351987931 969067513 545475079 889703121 208348308 912368108 206210593 320085068 893757495 966308152 948185906 983616821 34010558 297060687 570730918 906340787 756929394 861478949 250966731 434767527 6627429 332382532 283712205 945053084 128544641 244592440 908911555 976048793 636528090 849934434 437983605 609493778 830741329 831059095 242897493 282104248 478029034 731699502 765440974 945890224 72561808 677196823 123978034 751172921 440688977 990170402 317792122 511061645 960097745 970462824 281762554 672498418 40357609 888887196 837680599 894881846 235069073 870561871 634741098 672091650 754461906 892102448 505878492 818336797 42425096 516780084 692432850 781148695 722174218 941210752 759833313 868260694 714347686 811608754 513385383 891205672 6751764 610689757 784103641 903588535 62377554 169601559 60309002 145163332 288053798 710371786 544155144 675714623 251257206 454289781 107188335 853599243 54830132 61460677 321893023 960940426 83738125 794627338 341266052 397740582 182621625 391961590 457971543 580581125 770703688 777920081 388911714 846412913 463802109 665899242 136050042 911183656 189393326 637174339 796188305 989868844 243811740 619577223 385944286 655281326 397996827 863602178 417440698 899124570 615228983 901788943 288530817 454200534 903191308 957043829 89107228 841824716 55558257 523650878 525376427 754054688 501626574 998463231 415025098 667902159 195743968 316406508 93870553 130703918 955008615 990622130 243067674 399694589 964344531 981330057 773119704 915919929 931391774 962252611 570293206 593984975 488102208 606702315 500131965 510916313 622658959 847877959 151198423 404910371 254655435 724096605 810908187 948234596 625823180 961009962 490915889 906314361 680675707 947643441 812682934 968501703 630228838 940276865 167728412 916973960 834440099 870274516 701227357 972261184 408243264 463674410 690312989 747166225 397695136 787925078 561978344 980722947 403460981 550843762 17307053 20889940 847184241 937516923 730604705 744911164 22388535 787807589 692530061 920811047 538828598 600802463 644934393 796287994 291198462 789479902 163188774 288757187 833624286 860346840 709480523 879373070 294426808 345781376 664352653 984310792 494266457 859704545 851044911 895653361 556307299 959487694 426647408 466482954 400236822 535478522 340154842 359274633 462109374 918503751 868079276 903190143 182947864 210069087 213722787 773255693 184256402 443828051 525603961 549551116 368444157 387792472 332942394 478559932 525291581 647468686 960196033 998912079 389159662 529941068 42705913 547999476 335544872 555387179 968627467 974949239 889627015 890911153 595032870 679542111 705089396 991123643 85029305 889312897 692303607 978116313 792541481 882562214 801202667 901707475 605547519 730926105 778591968 955931447 821854591 828023932 101756283 936122821 979201124 995938026 309302381 977816833 492170597 612406571 542716272 980811755 267663725 391048234 984650763 987439664 368275837 663160930 818259988 863201046 731738974 827869199 243582940 498608158 891392677 965679059 358314066 812555238 71837269 923846365 891659742 947950862 421349791 618192328 553987484 654592366 446762951 474235365 638598234 922703473 145464640 520318031 670819684 991488557 438802366 661237430 458040645 729828385 553840223 981424005 810776322 921125073 980603316 985064933 418182116 573171589 909054921 998398167 271573754 582591354 80949829 356847301 159803538 865508143 246142435 728023563 441045093 887159586 454905652 921663357 282040844 293940627 64944774 967995148 918062433 956701010 658622688 902469754 41296299 218336319 332790803 417632756 821298307 832668702 682182458 806545972 101852794 309992471 528248373 715611789 943018445 950619234 678462818 753540290 957000741 988444859 772088756 878982395 1734882 921981186 204210993 402157834 953025978 954054727 385177551 594245700 861601006 930978199 884012461 915386342 725624760 917156557 909072768 951847536 234336445 501797949 649971027 736038273 792069474 946976336 852370186 954561062 715758429 918681618 584741974 907087391 700855288 796290207 923461449 993067833 189394706 332695663 420321777 882035922 634683401 978214829 5869209 858751114 61788032 150970719 252362980 813789188 186944437 597066623 727604911 947703697 546644535 754755961 749482753 941772739 49822281 355907391 467417129 755142485 760719871 838963039 355042129 702367085 140862959 481220168 442195939 750469496 296762505 790465397 845630927 947939803 2907449 651840944 555882504 860798112 476040823 582864827 950501333 958160103 278985695 796884253 582766311 804665270 572043021 673178034 296484869 575444905 548418336 865265358 579663605 910023376 347971579 489704991 400199914 485063857 577068211 980443833 166914925 875934449 255585520 833010262 874126470 923820279 535446615 791146775 33619377 468060241 477580876 730825963 348179346 802032830 462841989 473943789 880250369 948599295 419698657 769414179 242616137 539704376 521238380 675241345 626710314 943776021 635255339 966062633 520053779 602228772 814147629 884983672 41514657 935423960 106395076 785399776 100948937 319066803 338528759 355333439 633357809 692553906 187894082 933993101 463295662 527255299 303826704 801000223 75647400 417295472 455777617 914051107 273916559 690718919 903527818 933483221 765770997 913466604 673591461 982265957 732006321 813990366 985469016 985967527 631164415 685390043 286006882 336202677 171000432 329313162 809258531 883358929 955447040 980240014 152765570 467796604 91382251 162458885 381445885 960488018 103922750 208924660 495013537 978832625 77787863 930270168 23376158 742305997 534040113 964150734 71447903 563998755 505650849 732289152 905478413 992990985 995880288 997019701 29625586 39456004 480206976 767040056 809524542 814810701 562173621 593088396 887505380 936275275 418012484 719243841 775824982 864283309 638086460 686478422 766533140 985998923 911291766 992230970 615618111 872186479 592240506 663581161 636616990 744157566 118586179 836293125 550473470 886120116 444756003 542295499 912817378 985080713 140791537 177880433 746014780 822175518 321447624 675627089 250511381 673305706 96433995 329456149 440646082 994677744 698680888 990355901 599123049 878380869 504793545 613016495 999409239 999618867 778059073 803598882 31928244 573933951 952727465 981795284 47699159 253253225 276341786 964605975 823883970 831051079 400268808 586829013 154959843 866844240 345813667 548924532 678795539 904301973 320522107 768928568 445182577 709303172 931246641 944014628 747430091 837421599 211728917 990713598 69807439 438629166 73900276 506968128 293629817 762675983 699532884 989482547 270490600 415925920 217365689 897684624 355313502 394059454 479097449 488981005 604941988 837348869 754142358 890847779 722288656 961922211 889192791 943991709 86884300 881862364 467236613 714658826 176611356 512750412 120590776 517764198 716789716 990941634 402899472 813928168 236444582 903237264 209070885 490139585 583189117 700535095 847948977 990463579 848366223 857487480 106317618 473197795 534058860 807107597 836814117 912170602 880750742 881770517 622818865 927776906 138204012 461935520 649620831 667538813 370530813 648995503 804593220 995597809 887839114 958985083 900513532 957256255 152864498 226480251 242417687 746362187 634564735 925251664 814854767 947920265 46036852 671831222 448245747 542862693 59708923 233015470 967912694 984829919 240686528 847018772 228861012 763864139 753704533 764534132 11908442 632242480 956821144 970012824 350710818 470784664 115399101 409001207 769329560 791097051 298136929 715926867 699387810 824356260 52724725 371031554 675244989 924621531 389286933 416560092 667401105 736613225 750912167 887455248 632525796 640770486 377874656 918438411 216884234 677678831 535752263 694483877 850200950 887466464 985573741 993400396 651026055 780390170 381428846 911163124 552665091 865304535 143058509 578708727 174674996 181212882 168083707 569389209 712661852 959363588 36992525 927155838 51303091 320682849 777303558 817476325 450397599 772566305 548845608 879292802 19046669 901441995 699789788 711373574 385734712 401745731 420540292 527557728 339341272 421921064 505317378 659436429 168631783 697766237 697615648 891830075 660091838 753885627 414960987 789434641 920740708 998762772 438245887 565650999 382507536 808849089 587592707 932006868 517076233 532353538 631227362 736135888 351581707 520303896 453518130 663484759 700602982 978457491 369296085 719419243 316455649 411668013 203977953 994001807 556472893 613218624 659957265 696692147 782692421 941037352 13153759 372017130 668162296 757613946 853234810 978078616 270637179 512027563 166271784 206227222 941202417 994008815 380746707 396207752 970058472 981851620 880734510 959420125 321819649 535738163 27609096 875891266 370861903 705796249 594274330 596077470 463230261 745397045 80674625 682131223 353882995 497884682 773280474 919072788 169688682 387360353 294419694 916871851 1835350 290507005 91854170 332459288 505049746 999427894 114372240 653741325 791820889 945653189 836441802 907837916 47600609 570251500 196585662 639606304 193915373 876802070 68693351 89782458 280096464 345368126 376586371 705497877 318860876 551502927 630584946 807360129 967816238 981792519 704797955 837705224 257737062 593308462 351813387 776777013 496725106 857740130 505565100 640004805 440789952 743284080 488503569 761755563 460667252 926962824 632182582 941650806 125130118 142780601 264142390 684915185 72003903 747229138 204729436 407879329 751657228 892916855 207756790 422775993 26056624 341631000 264113472 771238880 332147202 721509003 729179963 802889313 456742583 459929981 406048336 927937114 681007591 789551922 149125362 235581102 868495425 900938487 999248283 999843693 142573068 930762193 819754585 859731294 126038037 313547361 303219085 786803929 719441431 763975539 993678244 996672018 460867330 547329091 234727343 577785566 876651463 932873556 346449632 556823053 14647657 737303279 154292127 459343695 787757076 951169768 880743734 979665892 441386771 997314393 946321332 948594978 852095542 883587458 673920738 858378127 634316946 902590932 356628261 522603815 850133941 902638978 388245806 988058860 279987380 361478004 473872991 871869610 460693262 820063182 980447172 981896102 679777449 855981439 759917893 890642614 163050816 446622072 439991865 821695711 861823360 937282387 275055208 808468133 253320987 991115929 462763701 980023506 112937257 791932722 99672057 527091418 779304586 809188884 317007548 857864492 604264436 709344364 896070769 942894154 608357933 904661915 114263830 552626515 337030535 908035713 834520486 999621187 866384828 923470639 637059609 738204811 121249806 636042728 491475258 685088343 150227188 173493276 198631691 642411472 740750562 842934594 903880270 921686556 494193163 654756069 172349561 746761222 679751786 711940000 106042273 204235878 736227742 987215761 403766024 786432644 965708934 998481660 328975812 677335667 486476392 618518330 980799185 983978823 930832109 935725817 661950075 780109076 168436628 424803312 194616685 767981418 576806606 926016448 41882006 746546094 65138373 569282940 205226031 525992925 442761530 648183367 999310268 999818530 736088662 806892360 195685113 498299528 147807457 755985759 330489648 408010758 779460507 906130863 597521401 921000610 852523228 855816434 650276523 699724075 643291503 821233789 674217586 866027327 287657643 372151834 415110047 944608880 109343458 381681995 685500747 869765464 886256754 971956374 819038833 858221283 156717049 452891027 470135174 979418260 707916361 945260726 394702142 777068278 578734875 914948524 901883843 951296934 648825459 938297772 41870308 763309386 611613007 805522919 225371469 654410214 848536497 929250051 52030435 762847673 296327087 567707607 691701009 970605150 970012918 973494761 194188334 360816553 277364952 299484634 262500430 784454451 801702499 822703665 847212858 938830520 127713467 370398918 470650222 589796348 869471522 872272054 376187180 850202588 560548578 893887934 163906480 904333259 865617840 931352767 584659481 786864200 283322669 944960501 818564270 970910890 67916224 238630301 276510745 934349386 296818998 480975525 904006549 969604599 141408333 629938105 974750063 988171465 651827337 869896111 576536650 901322041 719306092 910683477 122988865 706823154 266465190 743754680 724320955 910641646 883301541 970114802 168922632 306183688 189637951 825261417 984713075 994626844 820255671 953241312 688491898 907718860 760043891 767860220 876020744 938075938 222567086 835829416 98703522 205008142 725977319 979623942 450580833 565520551 816034110 948850034 68732562 927300902 352343311 924634863 218574927 287790077 43168227 82260891 515437492 771325800 935787480 989367230 283850633 453579242 583643960 590137960 5313478 679075317 282369342 455832966 427404564 501465695 568243249 913452412 760632398 956804954 560215055 796487898 140115761 482017657 237976770 263767540 289574938 560873367 509432598 911243171 680206311 755781491 570035317 799063987 949345124 980103924 828044301 858188481 64997734 965063964 400219188 738074175 523212378 936479197 243401738 901994203 824003369 942777522 144521542 807912167 957920418 976979249 343594113 833747850 95783533 124012682 988736523 996629323 711151265 948886444 567261165 684904191 761830811 881433409 578025269 895572948 841390668 918090697 535683946 769913559 593086352 733375904 855249726 971407727 996467408 997006375 640070616 989688584 563231732 995421078 994902903 996892598 30530664 904846651 203884140 392129646 537250954 757654454 210421635 403350272 854188527 903035850 143403896 610657952 2476288 137786913 904297629 997948756 541747995 954324967 628906243 701849685 17244545 306029549 120662448 807633815 643798613 815037115 982756061 987361889 578663953 696822860 120260640 802543593 192347925 971845893 647133986 965244104 810138701 954646557 658574258 843708898 755562220 981511044 57488928 336809214 483179991 767832337 41294325 566410588 859508054 924255248 608697603 696480834 751199441 850817897 658727245 717223763 525581796 937064950 28606486 227954921 167821162 515000805 963739007 989010626 11649116 27379285 950157338 974551242 448900744 499216801 892251061 949521078 234555588 466802812 525360788 712990433 544811075 865737216 745431790 937401111 393099412 802475862 899369144 954532979 446135294 476521366 910232701 929995306 734784485 844459549 535434155 537639480 468216024 681936409 224152107 580897476 736600350 771336112 252493270 705667276 505971891 884383860 762009374 776892797 405374537 660224224 437811468 463314215 502988201 630894105 881069893 911258434 447310345 734598908 256819771 644749292 393452439 890567307 523686399 691523050 23003810 667585179 405696617 411532894 956083807 973843186 44952765 111505020 522682398 715708776 870320500 920552658 184803204 871470429 631831518 931319367 42291837 174130531 562214509 759952926 947876186 969759018 339172890 892590706 260741534 965090134 389903603 943732545 578547165 790733635 266867793 503314350 898849870 977221083 638571259 934341695 457611307 999845552 418797065 957540152 80504490 436019065 779047876 909527286 736794692 778604294 593917697 717442042 683122189 999395438 927049561 936163652 81950485 327351697 115091603 570495104 340171890 577186068 781364641 908575087 362921268 985291521 97655091 884454976 78628844 199786430 150582889 235622140 564671833 791243612 158414159 185153722 908008009 936615713 657711858 683601903 273270966 636971063 968990435 976188277 495383078 532332837 472890258 578819899 988731731 999561441 713998181 840738010 506579050 802355590 519079099 958883394 853750495 992627305 276925351 651701137 546905153 661677788 137610052 302545924 982383023 991337270 22358012 748161341 254290814 629254405 47277528 199023748 503200463 607122248 469779114 909890242 320747730 944622013 539083807 818876388 52459889 217429113 934759255 991607185 103445127 993698285 561742713 926533376 849522322 978358238 75790315 997269660 209396863 744457875 998822819 999237010 139346867 436143172 345292922 363069990 304354761 793830671 829284068 884779965 700979004 930339400 233658652 257995965 484990890 839715839 466954421 864704518 826545097 884441354 404601385 583215356 699105346 847398880 728741686 903597498 585659904 604817312 397649762 414867197 127731551 276321561 575808892 704068518 43032599 449891355 329448195 592447839 439284984 745110194 719583915 798410965 843096132 923228992 346077130 770993308 554978605 632296870 992006221 995151911 547749377 690481213 992686576 993603162 783870687 945417347 53742935 777675033 797903348 831276813 947651202 977069016 702241455 980738294 677822111 783237286 750715399 855074959 232667814 937475931 532143694 819919490 430393194 970900703 515868275 555932323 271875146 476171000 884412567 953663329 981050956 985615746 202739283 435624263 16273524 984865354 811552801 895058186 211123497 878635577 937117208 982109412 390837184 570738475 211918457 468714676 76708349 542255344 549378067 933675965 707781824 936670507 156615100 553360729 540814540 790810705 8997121 693866210 221343266 484643884 645143418 852835513 26681582 672186438 634880662 719026326 582883564 722228567 46955541 391115714 42719848 275657282 283946003 303919209 480102234 757585724 229618877 843488235 82438707 958752904 651465776 928665432 736097768 859321586 144487266 422738835 349026800 411367561 690043165 789449234 776954652 944707444 250552810 953313246 976220963 977331743 812670000 931998767 939131014 984958908 16277645 601903501 291022231 827591867 284489479 475887147 294285576 659559914 792026490 885351138 772588937 850000842 535957338 720453847 274648079 896773653 61442616 112739964 756614985 971978591 167109195 673820226 815008640 965080930 884660820 985365168 599414463 827017467 925556973 945245190 984460502 994286266 11342269 658683842 840309225 873375555 358333931 828349809 880069568 910084892 589457125 789000113 31395235 813550156 3414343 525947328 455891806 916367485 916710553 975711964 508665273 710195515 583730692 822526864 352826596 525070127 235532799 502394697 888170252 919824278 308781475 676872086 11116942 282595225 19960281 676765393 172512908 826618486 367316291 696829449 21631042 440190532 511016319 772970302 346938381 592611739 978643388 998656659 642320528 999165053 414594613 683660937 603823066 856206988 403396348 629915026 186150615 709288069 889946828 942473135 853592663 887466798 629924528 840926602 119692239 633182878 604908880 908570083 911883010 923446637 710785645 723974166 506855220 998424159 687751603 765941755 751797985 989838352 878752526 891854382 12864310 174937185 435557035 528306365 200948309 763365474 401049649 904551175 667526272 733649052 59577685 119916978 457022844 767998251 94631718 464043025 565417517 667135140 959562749 972882768 866547500 928518174 687536543 702377094 54609600 122883441 978275900 999497683 482759883 822453048 25187957 826415143 874540702 931695204 868561322 935194775 59370626 440002765 396187722 970917248 778302617 889493774 344245795 859253688 645096828 823153589 306228291 476370737 153334058 413974401 472134531 683973546 211635985 294821335 611861969 773526523 699308436 710761323 671161559 901923822 292226958 375175519 733496516 904111398 157260773 298114453 871855306 918872853 288364891 704808994 378134467 385506259 705022145 709289822 87729364 598393346 505566937 566716662 730830142 818632429 530150898 655378021 931638194 977894479 499894652 835110629 693242658 913926519 566759094 669086385 326610387 500325645 448635411 742850118 261603994 765830648 844175836 901186095 328930796 717822195 221745205 502060370 218806744 547235823 137056826 963429892 980751904 984138329 452547888 709659517 300261956 437730049 747843656 893453140 201946173 971012406 987570944 990844912 475862671 653039462 697089125 746956173 679017194 920872328 309237098 612386050 567738363 608468377 19354926 33946047 783345601 846893739 558890847 784962081 174935089 963095683 848735646 850672964 966899746 987820369 268865761 676681033 135658254 508380438 177106385 313414409 135365857 390319704 968475295 982901478 294460577 730757254 705564649 911299629 77555192 588912722 133131211 939911079 652243359 728990354 452800044 690931217 32575161 566571463 19070513 169924478 977721725 992017460 483296187 484227767 609972036 736613910 757466555 758101622 615249256 798228985 461502840 686369901 712033566 835390856 51585105 708050591 842935228 882227835 550069307 561432430 751342007 997622063 883793173 884990456 723690855 803945095 829943811 932813298 661905358 744374868 490408265 719717961 18699955 704260357 252948860 954664498 498353007 858065928 248713942 721916534 881186372 944204563 495480667 768623973 768864774 770892559 392714869 739670899 967910094 985739781 560815849 778204081 633843582 703516588 320000897 541912075 486094588 942181105 42816886 732659815 699423641 842115747 649153991 899064242 547690788 594812325 417073303 628683921 33681302 439836392 454303384 985300385 572347824 908908449 982454691 986820336 114660283 897170144 70414956 586890550 731711397 831444768 813762081 949328596 777601165 980900839 578132870 969561973 305645315 403283208 434576476 894333197 580641311 896988331 798081604 921112473 814649252 852659032 327249402 816027480 442285682 477534087 369610073 959600688 241184121 374966425 308464809 645635255 689798729 770236762 389687903 881309347 102771599 768359910 251735653 332013277 10806588 914924696 88834931 650190717 860777741 937064369 211935023 564533994 609206089 828997286 106665562 277495363 699078747 783694521 612892317 880649413 51981928 781365168 275558684 990283631 239427663 456311918 794575323 877498562 777313564 954673656 196128509 338374806 922639080 979110812 81084827 654682525 794658960 977384002 357898103 471719744 14862814 281445665 664657840 928394812 160148726 765875420 297075433 469001464 861340904 994739282 308027091 352752585 869334619 879150616 136256925 403837701 815447220 887792952 808276636 915335624 41635883 65110683 833347524 889571052 835522017 947575208 612206005 787794670 814791666 956952022 942680176 950648895 875906317 948021091 309941157 511505600 133074303 492678038 635040247 993160427 486171225 492173711 344770147 518549085 567129208 789848713 209241945 575154644 723677253 877601928 351751744 626074811 769466154 819004660 953542483 972217792 69519845 455444905 118271477 765645874 167834188 405186619 936909834 972760418 20695558 638719274 265472148 914277460 841746436 920840243 440559205 609955832 526989900 584475638 677025224 832204955 128241104 892033658 236470370 819528931 505783713 745449875 500844429 891772146 980001516 980742902 322964305 659266452 110436010 155528949 188578238 673426158 138226283 316894642 445332773 456660537 833782969 962241230 376789133 455477373 886152459 999922547 664465794 940532471 754550115 820782843 699158528 770179369 97578073 169134113 617770774 652557052 606581582 771339549 763499908 838594577 964647176 990614654 407598972 919401949 147318281 955669461 891443680 978602486 128597374 950632380 440256821 793779717 447926031 935764021 620178177 758139623 559665406 683808717 522607788 957176772 142147757 474266655 728760343 765252390 454152459 940634279 360958044 836925923 239575232 298855249 381069474 697713242 588616538 919322788 11995265 541826790 398528823 625719624 500588855 887253139 93260366 612450320 146374470 701581752 504793410 824809307 445484577 592823872 16529310 305756438 934079632 956276306 586936304 699648843 400307610 772469103 140469463 875788608 549833370 954049339 447679309 621716489 783428536 822931597 937348960 994674979 561372582 688555988 91611527 276453950 532932891 599616720 703553768 711353824 758041612 934389445 307356452 308871523 565462362 645779671 508138951 570992210 616331491 776269886 916031183 989112046 771272043 917378511 547055427 717974609 982657058 983399581 373277288 702756309 982794024 998653308 626978773 669074421 492832639 887423139 60371059 656745229 537892908 722202127 619365381 995652796 725457063 954871646 910968085 955842386 259812568 308911124 767457415 807731055 41790142 942044336 443669693 903815468 564738510 771157966 105517631 169960066 806066798 948492931 120824721 135483059 336105456 711507062 16555502 90861259 672893726 841845186 834468547 862050466 670302711 934575055 846468364 934255799 162580524 571887078 510153813 825840503 855940209 995165349 845700895 864178689 662962964 740681802 780638040 798031776 954600336 963964688 946851877 973751955 178066084 399408858 970352485 973451978 153017402 380705843 872148954 917153653 455864606 503682476 929676814 945643247 69412726 840767525 457670844 770999957 554499766 730562032 406570427 633194542 214537085 753495366 612751623 718146678 625960886 984343523 497195556 922413079 972585623 987932238 907674333 998371092 838615309 913149749 890039278 903282164 112779794 704538376 36730459 350574330 494963716 701614329 374279254 508430603 530618014 820458779 659088483 873075157 151343220 777767783 943115102 945345837 440416730 924649475 943120577 969577739 839431387 847509570 438936971 992150074 655413157 847125413 969947629 975478148 41589998 81938844 604796433 704923674 262442410 454637902 172641846 634105796 794477611 805122116 638305534 680436214 881268123 903546656 463103270 819943606 464226694 491268075 772474120 913873980 210689855 827176109 570550993 689261486 816885923 907794511 913107122 956543359 690037603 953339822 207748929 208759994 865427274 872388681 987964180 991840552 711401396 744351988 852377233 948097803 164984342 508790952 118101553 843411719 885768673 901015981 761984358 955532343 45351887 644446172 128961215 734226494 729952261 998910638 744421307 828549436 512815373 950021782 289799645 527934204 175899918 696432459 842636673 958107442 642210224 846417407 430529231 876982060 113345152 725749312 261374622 355930944 736123521 756417524 432394139 855235019 392287274 661881806 551415926 960137288 135175599 893614339 936445675 941035892 909922433 933800532 184929887 383687306 266823080 358844388 964725486 966505939 878031390 914033922 298757361 442192463 946232652 998112367 644226538 973897296 756657295 865028573 127198685 748028472 154636102 799366850 574666876 705922224 239992145 393032060 519285758 520438594 85586350 126749279 467364502 879304443 240609939 995307594 652692893 849072032 542802756 656340523 176237003 955356096 559452345 608835802 152302404 889884905 857831135 876587907 163473392 262312875 950617745 962743739 776431364 837393670 506421570 623296400 634334483 780673910 596888991 980954277 942735182 978101769 570095223 729315958 467232551 943184761 607947115 911909298 433354550 499193800 180432912 490284480 551769281 775319467 341507490 557960865 121641580 763696035 262237609 392633882 178565488 763109672 34375453 404975917 226953835 958725160 567463839 997638033 316924823 671753145 784043740 808861212 13130847 64561061 95430231 652647770 444558002 577277193 936753879 938090648 648048314 760015784 504911531 927620010 931823788 932481273 964356497 995595244 139053945 736311353 353993928 528802761 452583862 590127932 729959113 928906920 923367187 968753875 441622544 657820627 740474379 823919929 94824176 708799614 884093735 984688294 965916395 993872357 153495084 375595550 443866304 959750647 461945008 557829159 492980090 819003399 643216417 856815045 242315832 842064357 624903282 753631764 771452358 796841491 340640721 819446031 241689302 836152345 67890686 824823887 75147840 833514926 443808553 682212004 470519863 619544889 163698245 281710918 767189318 780562790 553168687 883881053 826343122 896820681 415115165 924528434 306208169 658335900 10505524 754699191 647629442 979183237 795096633 878780923 974564588 980728104 826384574 914083986 353766167 697948312 376456466 781588929 307556587 483505651 707196595 737291115 845195461 888467551 653514895 946960540 39428940 908065036 430340570 489685227 295199798 756680852 351850405 500839794 439896948 908957239 44012119 227774412 182382316 391911570 266422218 386990162 732079673 992010667 262316432 682982904 170589812 878536211 631156356 748310767 653611008 961243763 690767518 859206109 971986686 986653213 474849804 695937919 105893114 662243915 104113025 211422644 329537974 562766010 85486199 752293140 466214145 881575441 663328249 988079642 582798288 794122098 43157205 787577376 338355192 819700620 612690131 797565872 341718558 718769310 946607579 967237013 657267506 830745083 479814831 697807404 903077724 933342585 137313062 240009965 378283913 738568739 805438489 840405608 185556862 445865758 555623977 860465997 260082323 993484419 140992839 747331342 935413908 999129437 531356255 952379820 40208152 801307216 115114885 125024724 397023785 708227740 99155313 429871878 213701811 352538878 97673198 199760803 420848154 716743815 394790157 801468527 155588741 301425687 607666367 679023253 208755513 664698979 30197385 782467116 50446075 603013399 225059335 546749672 352012642 823733017 253242772 854339538 690241848 995878408 281153498 582702443 449462354 788421129 715907906 908237237 568653254 585868212 779163759 992438038 916276603 992019749 463579435 577225580 228279155 782066337 198175123 884063636 888830676 940419793 718897711 855064411 140281025 676248394 742452502 932740267 739351524 953445366 849468817 981140495 360298939 504159838 45366429 328813380 585972359 689816381 955814557 968352493 521675600 973344820 393863711 885718726 186979452 803572126 51585092 966144595 432061671 910160603 182996642 584987781 632135777 866219008 876451674 996297788 799822100 972682358 375241812 589685498 190594537 669911289 172206815 563382738 477493485 834323344 522683074 877963552 77059519 652399799 106605665 251799362 990592822 996034805 288797949 452400887 201432204 624784710 993694050 997882775 285163559 802310784 277482647 943374779 591306073 692506443 130811974 795385138 524856583 863427932 389292158 504576109 463867664 884360170 449915913 478576081 586840875 742292358 238480927 265878426 591992704 812758571 962251426 978940322 883254517 956324288 735853745 760130752 941052946 949494466 663342079 812388695 580687509 985024596 788456507 922736750 826991637 897686834 648000872 741081286 615417626 628373985 585111444 935071725 115436632 696603376 902465046 971653037 384118312 792527655 296240437 756448720 243787976 872147592 836945595 841265576 935893096 978279801 488272684 678480674 588499031 599743898 873400823 958407024 432018131 449595040 424421566 534189993 689688015 784934243 545609161 978831985 107711967 907511177 700702530 940980199 8586328 693450421 757318803 963095253 537628083 725227137 450739116 846564532 378545645 544874183 971041432 983130318 398660704 753394268 151730997 354306026 838256938 999157964 746188157 760130975 639879766 652987894 692147325 777067533 260545582 542565960 256002907 396626510 374579643 723536140 520969148 550411385 11358716 91748023 729917851 790852921 462345033 551000896 611652419 704479671 417022592 808358387 722877709 926586912 810684819 832737962 620837279 833014114 297857891 994733542 923669824 960806769 849798713 917680624 909395058 965457839 639390105 676251261 563683318 778463225 302548727 952353294 729941674 784853637 513358660 727324722 115398837 934729140 898234211 948864645 492477960 648133001 89860592 340745828 729307670 897698478 51967180 301636847 962825453 977623433 825973637 842847477 334353314 611747697 179485266 995384647 812636875 831023097 182159849 911355200 987819365 992983137 98742001 362215706 421008718 682616278 25422312 967594876 969312744 977254317 480659231 836161653 617312730 863777289 300097537 763462113 560132172 673320686 146419909 825671294 135992779 977070632 194398924 551714803 948330116 995846706 252029120 487116000 719028827 844340266 797453694 935154510 61813216 298563547 495195328 532449499 335821346 958445525 610319638 873810654 952802985 976557516 464723013 464897447 230488735 607407374 601760905 624041524 222488811 954765344 177020137 243090233 879934148 964383853 257986590 778458818 838968607 980274149 441270564 910949898 116053529 153327431 712225759 730623446 932282229 998802013 142867240 246410436 450137206 594525239 822316541 877189257 72332623 434515658 521860472 560500958 984502245 988694561 872998558 891614557 950118779 985629232 824156558 987910212 514096441 738212320 241664051 969129478 834699222 884297080 861671743 880572683 700925087 946284783 684018439 987425130 896188392 902928340 521149461 875060920 679130066 868224728 451000718 785547608 953394281 965847160 722555864 999547154 585343169 843427910 967295388 978378235 155951624 922954311 255021486 626596949 847984121 860849546 468248194 811290683 860781228 863601186 316913908 986350084 930881891 990453819 826985195 933471289 530507618 938235212 98441268 100703196 833655042 866208079 230457114 400708916 837285757 847613957 486470482 795731671 294729528 585413409 948967769 990232122 155734992 928780211 723624537 802696266 261641920 622116545 726754540 994989832 619128004 781163641 534711955 589122940 572054415 574377306 381649780 974489882 784176898 797412480 887934265 996757426 941758373 983960114 9247265 575217881 292257442 447017746 432077075 827379070 618842463 699571824 735083855 864582064 290880383 407019558 87876408 290218833 951176251 960142619 735677265 899765818 424980461 549695059 760819205 858019242 657662660 827033425 219530416 338596882 365578336 461911792 651379408 946060984 474403950 951125794 123234590 597562370 386468024 796796408 614211971 912578369 107163899 416824310 368187580 468165517 439303888 494266651 758018388 898719648 994920695 997586223 192509689 892352821 360062442 578372728 464798417 955790738 355515771 880665247 947348435 999982363 740095188 851952694 21795898 801002502 436349860 759164191 235121807 640983998 65068724 140759257 742243712 774519717 849217215 985835717 783732472 859911518 337179321 835351533 751706330 762122727 472932208 704714028 298044836 955436364 100838111 690952901 757079899 777609215 786808025 847326668 28057906 486541638 577352689 776573423 932259952 941424909 236509933 948701331 779682632 787070127 905683781 955181561 952539871 991122186 542466839 899034939 856814033 880497174 558650518 776772818 580449249 997858651 133272063 155748870 469447683 893849932 343417717 521401055 555332853 625973173 840853402 853403699 382903927 754874918 208392595 669745004 854320145 906220735 481113183 732017432 474696920 980197453 393643952 565833725 896565304 998014829 463090529 506078847 419690205 872283338 817679161 859789220 96419725 950829664 36909033 532106237 500745444 861474861 528945198 767958969 407594223 845495832 482682717 626197156 72745595 969883304 919440238 947170845 961675002 998930851 463291778 747930172 241493363 277799983 127182875 781143449 517083703 721442936 88287636 389668576 628147235 829799591 848090188 904286401 422789348 889025434 134573652 356454331 417212865 519896491 651789320 948710120 394655044 824448263 824302315 971274641 863610479 888109145 613957419 792464326 575937260 714865834 710835767 738970557 527950401 586686071 121759163 328941717 399465920 452965802 910655887 951003901 311868213 840823756 464131655 562682967 636232584 955457798 428311238 851967928 156244589 358315220 489408493 582591889 694630956 889178548 821826860 918035946 191146075 991028974 141541386 440339731 576038410 720278352 732223369 838779944 80250070 321929118 947727517 958421872 899278909 934199877 109666542 913763337 185199611 227715950 556494908 695544089 96723062 575254718 619133211 863359557 924726750 956765437 761339487 903197557 824243256 851201070 581040723 929665847 514650961 676980580 239767895 926613644 10470998 571435757 907810271 986439413 506591921 627002625 760921858 947153622 493819408 986802853 917141513 991347217 860352396 946868507 118699314 911019468 162136964 341398667 173758174 471221252 838931895 961589794 663371021 665172781 967182501 998248239 650416938 669313239 146383808 429365963 487870960 511154165 349486433 883265752 200854675 214907507 570433365 651928918 231495859 963443294 688091083 960502512 890292744 894670534 299077627 644415131 405258146 504442823 283748207 872798081 655765629 979088225 843369540 901181452 794950467 882877056 401234604 571260527 22483198 97282574 63005643 717731263 511426822 839127057 335878996 930410224 777682548 837971245 262428382 674366730 441428357 879969323 923038233 959627183 567824645 896092386 957989646 991371938 765788054 967753110 771779850 791989132 550441847 908472273 647084459 765991258 106582861 991569324 578951981 891843896 764332344 791728937 855245492 996709614 690413500 922642562 236923038 347437266 936565407 988041210 691242501 803206978 651249304 784451132 554210531 686823936 472478930 881972146 755892155 884208177 825917429 916758280 324583565 377920962 794546450 867875341 87763120 496188650 873466701 947255319 328973741 388972580 922235636 930193030 903881777 987016670 68215558 243878623 159145867 919573658 922415675 938631230 24757340 159979984 658327466 887670029 6687834 653664900 607679415 625194016 403218279 999007316 201548779 384720110 921833868 981715538 266228944 417485809 764075025 838704680 936875331 960483548 327033189 452313054 874792191 912771590 605448366 715701607 755362162 993146142 922749592 976679855 199775243 744209831 105971191 678216432 90962468 777928300 728534798 944791418 87901922 301650710 32787395 402940149 292758341 541357067 579275021 857129543 813981806 882493101 682600579 981581505 989886292 993502285 776897049 861909006 701299135 790860760 299061162 544293759 88849332 198805889 165966387 436222050 170387901 819403145 800042629 905348270 351831410 803251548 506277689 558743903 394516827 463160938 834380784 909819126 331648038 789868194 26543705 142190614 609348658 926769894 513941314 998233669 933555058 945084588 127660244 795900095 556355177 842911881 407362192 687974139 902533873 951203574 716095788 777938822 10568740 580258816 305402477 520521423 643709730 917522088 660276583 739340506 735712908 819484208 696955095 716740841 125262291 459723269 645344899 898684747 612553520 895547880 28246524 254577537 285566227 643289932 267466714 812825520 721246884 816913528 742597921 801048545 527276229 825691169 665659357 855118398 421518229 845174339 468495077 813220475 968374149 996890884 758298070 795570605 631447104 697777017 640657737 979515164 344656573 751010977 269217755 813980433 691430442 969487644 309693799 831441573 856608151 967629243 133608906 972982245 104740884 474953489 386626214 979670336 371155542 568571687 982285507 993340218 713864338 900930983 243440451 807534029 886270782 929891419 799782885 860272918 348742170 349237111 75393800 154074171 253434178 548248867 157998523 745941663 94959546 921538900 405642495 555858104 441396181 455052325 999898324 999901869 969590561 991725238 757578077 914316334 165662756 629575245 870327194 925982233 44774673 685327619 498334658 759878784 529047923 611006313 207050436 434475042 92322824 270244765 326671706 556818885 221184708 950227856 300314127 419513508 870590807 947102816 459206710 929335399 389419884 756253468 969257993 980887834 830851228 890378481 635240332 660226683 570725596 584789188 720612346 812674392 269915546 386025589 102606872 480056181 914609474 916220015 13730488 766306192 879978236 965443122 543483669 831343168 705986880 857134162 805214440 858173326 853988504 964733478 867484464 962617402 708984839 800068877 874860819 940825840 115983896 203909234 62720826 310756843 250587414 608386351 361373014 701135717 367678947 548350913 338576963 462901416 426480842 755504664 191933816 301090163 790590547 917507974 96496492 507199018 514558173 802501746 225552443 962509121 286107507 542814292 828336472 974313029 642335915 647311597 697477731 953016159 343313610 888868710 666801018 907823845 289307687 522931397 914122522 978591967 117769491 866944982 835388188 992310333 39670629 819649461 901089419 996253580 914599371 916744400 703582745 929873279 758682361 988916993 241435842 771155881 803969026 823470054 921388258 930150050 405103738 910372049 906727129 959123757 244411928 794515326 257660256 901776302 643769221 654276426 49826208 473080371 887179487 906284899 366427118 636892277 189402143 763960387 824011907 848855304 236052643 603787838 928887509 998347546 671028774 946232758 112259118 238064432 61253572 87430611 177542407 215611476 730672443 786012295 12688870 979271612 750729821 907767367 493963920 805425965 908630530 915710352 309878015 445856755 283146455 786314566 603073998 693761073 677904184 974085121 831288284 859531817 180372194 313840068 863725530 991605252 737931626 981589057 659718236 835238411 540164370 588215720 841934234 898598613 27828918 84241489 122432337 827471592 189538382 219840340 50019144 682536945 184916937 573170804 291199771 618768364 90377651 709016227 90951432 587008638 192773695 374205042 50450830 328300486 201364986 516552869 465657577 967073618 505579932 527754523 669771937 891951026 702328141 799666230 432199202 832163535 429444059 572077088 925518351 928342165 169514287 360471238 232011546 783516115 665202795 806809496 791068658 994175830 945253943 976534840 43147763 238375658 40748089 740618049 266395369 698179474 156619463 941503222 98368982 342766893 574269011 954282433 292388112 417928499 18046607 667252686 572641040 590285615 80601939 855117000 640958869 964556888 446364131 608842714 84078045 922916628 790103629 986041877 912252458 932361470 565118453 603373626 213262719 856808592 238925610 270957682 694202609 725131428 991625527 996197306 240568601 373481509 644839194 919495413 630876830 938240339 184995148 604014655 382003249 437383488 362510532 531225672 661662966 848275195 971936906 987579842 69099566 664034763 347948226 525498294 915060216 982898731 104698484 341329583 204043541 631871723 341308408 976923053 637372041 724022080 753903284 820433898 156915132 257000896 579995997 599855769 291018349 527259677 844234683 957871714 30984418 670791108 98158251 765114348 841305307 914711773 830475171 898252899 632567719 935680832 339526401 372365823 555764901 880053455 189162969 508459685 51623556 669982183 173005373 718398345 356795949 567245790 390090892 627953465 542258567 571881029 726013552 983145041 200453377 244527197 878001603 969909314 476669519 550594663 195847518 988077894 25019660 767981947 368185933 731874680 611567995 879705732 425541906 953584253 668765081 870418343 16284219 916278170 881662147 990860869 630314672 797760773 687714198 726082110 468241796 686647216 752215370 794877830 651000305 740572276 28113724 915008451 173010946 352341892 338090569 581868547 959798163 979978399 938595038 977713513 208787434 959427763 823655226 875223832 89312129 224958677 386588455 852812244 55082099 332237996 471118661 512033668 869054192 910835808 979506923 989716830 781215652 906895703 773190961 870466033 782980322 904931994 842197036 866779385 887786320 936764723 141275939 995162813 119739460 590318164 682306280 691890396 255394123 906643084 801374135 881419601 358615044 729415382 934164440 950097719 564389968 856215704 763936242 795695546 981887538 995113890 797754119 998807126 999578877 999658585 847716110 905643524 178280541 987392339 838088028 911948638 527574587 696067486 533716527 962037219 563318833 617377194 922177172 974624218 288626189 770575618 21480859 822609485 309491543 424005411 394279751 606269009 536143512 961465065 996511204 999253598 907707875 916772024 945830456 990853965 261485868 940002514 623555158 664882057 592039122 764209863 328158043 586113546 253652330 531011594 107607458 385833845 193254729 581459106 727669746 855130894 435620082 672961341 703484977 867181611 91717215 216104092 348416587 372054612 82276668 544089738 714655236 721107248 110458889 900647395 36604311 274008493 233640795 255939772 759297783 822145377 764728413 830732356 10674349 774655685 630790363 698011937 127375288 725472127 184494062 595034129 451892282 469199266 342119896 745268422 406383851 899457476 498474061 895006645 258071522 372122034 895099106 919209222 43516507 579137633 936515017 940568957 271436604 997068245 726420923 830003339 886039318 941525839 908805589 970451607 962122712 970208342 870136729 893849515 729372149 977359663 954773947 966182683 370258660 724599847 118959608 955914538 415687051 534213547 496236384 888179408 346953510 492734450 106721750 722340704 964279542 965918029 924314031 974083495 606912062 873250561 774860285 861760393 914897003 921509541 12197508 672982536 561937772 746973706 828919418 918186682 162805172 620215852 160489896 536109262 649421762 887698258 341534095 743561461 889195356 902916847 299401527 400991864 913648890 996530224 816164227 855101532 308951869 416895646 651216275 928928251 446430063 830571499 476249776 549938694 45286656 512751145 478720164 520614336 19513157 618632644 685313006 846086677 138643133 420041315 205310410 642654940 210585880 881928554 642470149 762919789 831611556 980092653 69191605 107724134 486426745 668680677 802260059 898417734 631250453 736996174 373575404 563196138 927649631 960557261 429016250 452895840 609861169 999921795 219041727 415256240 166505029 963710854 651270811 838187681 293509207 378792592 940219837 958821070 710146008 874163271 40297691 993475593 689214908 957344728 512775159 972564811 359775839 455986586 18590445 839243128 686381949 845210887 571040597 625369500 12827205 800142216 415755255 423560674 564473236 913836026 915925425 917303719 395585554 832499519 253611923 726391921 994608858 999069273 106811380 368799102 127642301 132259229 123867064 817161753 653957720 806712172 566511346 607630166 168408703 853215019 843122914 888263878 662331130 896324224 731782795 923889580 939780056 983780014 642692468 939637736 397417676 475709649 578091211 642933246 324561030 944281562 121924485 756429763 467597811 630438755 616085092 958988319 917810751 959189305 404503893 486663057 95083800 577622777 384516035 459776187 251381488 834926252 300592984 351838296 687323843 759108583 129269190 778228344 972474888 981655007 714266538 917539120 640861381 880776955 914565416 989729572 492691125 748994764 955013882 958869165 197636077 781055727 427280916 842925293 613074177 801877729 516494927 902856130 217317870 218326401 973241068 975864764 583923643 967261793 279958998 313756069 498838881 887656210 815132048 988771712 768018795 992980537 609054084 929197611 442074874 711641629 958234931 999268496 660438981 840506872 211390475 377526685 131800253 776708199 722386412 959573304 824940319 974902689 32973991 512010984 972332751 993252502 147038024 275553070 990583805 997108023 784121153 951831407 558168213 914304850 545399682 853954238 489603575 844058164 248801324 638571991 558716881 956184263 784493731 799303090 901049016 933512123 36337437 306325150 385867698 829831408 796021816 796590168 572834287 778520500 937666825 958834103 740367242 842967580 83608473 404590899 97544926 787311057 258428818 286194757 925370506 944011223 87207786 555115720 251399783 937744903 410136189 605449322 437224064 709173601 457638608 946180239 249619450 737221277 715088757 788534574 396540757 775944407 893786868 933869662 64668961 553551323 487259145 495320002 839543897 848696834 798446186 810814535 128171828 791333746 533578541 544550949 194021663 855158560 144784624 159605761 526579575 963680227 652105041 846729603 302158074 976172137 826700754 961055677 127047170 637290992 2771308 229152544 691819323 851966037 39991513 886991132 855744962 906154739 500521497 801694081 739981496 865927955 596749037 672689233 172501833 520534243 96331602 874510113 604044830 847355739 316567004 933743151 159499832 877663698 978044822 991552365 772845878 797167072 973817678 984294480 743972583 929882308 47682231 345004756 364251907 736038065 219749687 676418721 800753848 902760470 610599590 926034392 206738445 713555718 243059739 419514055 874954113 974139989 862805860 890314832 91642061 981884892 707929896 788979075 81342232 464072015 477158700 705229061 122805674 448088520 938598689 996091361 304779579 766457254 490086550 881965080 669817379 758580178 419884552 519666008 28932167 439685663 789252777 974007938 564660502 571713248 12595836 761812057 33116777 514833962 132667287 335995163 321200914 979063324 315207168 980135091 463553519 866693348 625369249 846920110 628718197 822264973 560079677 681615826 442481265 585650313 347574597 925983183 843988439 923042527 277088516 877293409 777948567 923258260 963395091 986939379 846406878 965517795 441048675 446287208 51561356 115803629 444597086 940866808 363365093 530041146 551214024 560830634 938857399 947366983 315882847 478600877 261982228 730470455 589824148 591323920 273368468 924402268 227773813 339952801 6344103 952476817 772734224 773624961 667564545 837368743 624922384 719734547 190629570 999201940 983968290 986788546 650613311 701763244 555299454 595909635 3105934 453457691 104669611 959382911 831111456 890809438 297200745 996195948 470571613 527112876 52493053 462785494 741902925 947026055 968701773 994377754 836764886 853614229 536474358 719407845 20800970 75314964 92179231 962282666 991783067 995459745 878675231 888615975 289571878 996246960 509552589 852733148 449948519 634768586 907406794 951175271 83516625 322915528 866665505 886299417 891454367 892165798 652507772 691980578 28226339 853347703 670278462 705383594 275753769 930592779 239477357 860952018 531013205 943288155 854369716 980417298 51076761 95934989 365773738 878940984 697439071 722156986 371492878 734353010 784556054 885652524 606495696 710378975 968834495 980124044 688600738 997988760 871070204 895193918 368225217 733769394 993935330 998300181 716471858 811640121 576511940 683107565 119766967 663827448 442361169 519997278 652235285 877228138 153719578 363129460 267567238 436237312 886612167 931347070 972218270 974658193 820923727 914097323 60296853 383318466 193587803 855983635 798708417 991506915 844102829 945139366 554004316 556898442 82927265 383131509 915056574 942056440 776304058 934895906 743541430 933753093 766942267 984811967 850923224 965543635 206220061 798342116 502291439 930551012 453027633 898331481 96025339 529901770 876027204 978778542 496067113 892579520 341358268 992418986 630665402 904687658 7426892 426022880 25676310 883253637 371394367 903780791 440415982 710405451 110798719 146794038 349863291 912497094 225482550 876541681 835117673 896972012 802392783 860618957 783750604 889978920 283503119 350182892 811789308 819917440 204958625 853118841 117945351 830514112 496136028 866093178 412648979 928738070 196414945 920810929 403199068 856243559 344876867 569255164 375212028 849958982 966592115 982087020 236911466 544721147 710516131 923003270 696820445 999103338 308668955 467572430 735424521 878566438 566084949 888623208 84921905 778524656 189063465 536429284 918665244 995975305 798860147 894105268 39778308 913184976 475371121 930399560 478702792 548483876 479891520 506584799 610769057 999926730 460122758 823934860 773296748 996347645 19510369 509367480 236804800 625234734 351610083 972296324 770282874 890070201 995146957 995280994 865181983 942870136 613437352 933061895 964001278 977576923 245361245 683628401 474262915 864619874 81561893 874370520 262157766 803696637 464900309 781437174 434981775 952078669 460772032 649394160 739789780 847170918 248011332 904366721 773100027 951964297 551539311 818055431 105863163 844319115 774015770 793103446 22658744 971348304 132399325 865149949 356172480 714151462 129122986 545971702 159864028 254458422 766624357 909581169 20015643 171144314 148020608 993997103 211041919 954227461 437934653 553690812 134982996 680745697 567323580 832484894 306711261 589855028 628105373 735801203 255167170 349069704 535951814 657613679 491638791 674920999 979353870 997621527 944457645 981698783 340615807 998463492 359318241 558148482 754594117 957869569 117945614 445077652 358525182 734498550 671796657 810336479 351292790 468239132 825358110 874976200 121747670 494753930 824070068 989552611 830568036 963901401 923718217 996698061 127495150 596856987 524879902 870295685 112729250 814185033 515847455 546901204 354995410 512698051 25180090 134979874 538381218 968893106 450154188 520674143 485519931 506448172 645834835 660263870 801622422 839105511 781909256 812238515 792439847 850672497 387195840 771145334 408771837 595724656 978604181 997294987 873436348 881143897 839545495 919153344 811971654 834312964 396789882 491269172 909083384 995420561 453205754 681235516 470437659 682685135 758866530 816034479 276317280 290727723 182158751 848470953 670533822 943929254 264225343 405383910 646472969 795774555 821948049 874556995 511062261 722115901 312450577 667439137 885758642 894343026 515847337 993488378 235786670 450511469 977937046 979196137 960641255 977701976 119984611 979130579 766733669 986953681 244998752 666831096 626937076 770893956 380918112 454136279 438550578 457377829 815057435 878279692 55569137 812267043 858359652 860205688 629172117 979763597 729296955 791081887 60011446 607001247 345913226 405208533 412170557 748547663 640233493 975545544 738639186 878963907 268539348 300095137 736998430 772241500 180521861 582247414 72740524 120377699 230526550 882689610 777122794 828252839 944590752 992372331 228816900 943182071 261220269 861293868 458193662 796158703 445722864 937403063 285941178 470491858 384912643 597489655 196490032 364914596 149116329 459573670 811427699 885435297 47520135 504841365 896822142 918298140 610489689 704839914 924850553 956799894 123222758 371239066 793602100 849912583 985684320 999027716 893107180 924946318 864083588 928430656 249103373 723153177 213829713 984595017 938002366 954553746 770856799 853573038 626426220 767116944 565204908 969278979 455279162 458621536 284513316 344650750 25866048 83676553 154349722 370789691 556024940 615467298 225774881 253343955 718403594 783982987 119463667 750615224 694226221 797920964 738982030 885128521 65702781 979452430 503571557 732053891 554628087 904429546 7080605 631774638 324776492 338791010 258774899 814782617 776134538 872533636 709744286 756890577 862244623 989171467 379912229 869103481 142360203 427707886 123572525 866608455 697632309 944185913 92259877 156766600 186129661 592978944 878667784 926319563 900878276 976730346 232320601 277646321 744365249 924084632 566567302 713058586 586191426 865477471 305454102 823385698 308258036 950722355 248070586 311159408 466143660 518921762 582066093 589476052 134500529 323047600 869618336 890139163 671747800 792652287 347305496 659343069 543585133 944519817 652363464 755651098 572452288 940825526 11643349 297073279 967698320 969257624 867951817 873112125 751623685 787661484 479169098 561264880 542514293 682422125 502484323 832124887 804814972 829194195 39077534 470223709 513678386 924816477 755204362 912956145 225343936 845579431 302147211 435725074 862433465 966391769 483381437 538439535 97338357 746960076 729717530 835382026 233371005 365616848 35941874 805999641 634504751 984195753 863021631 951572039 556386293 815058081 72555386 130498580 565836241 574870543 890890064 945040366 487288072 913934499 421204245 952177733 236206496 340230669 476557075 762624352 76170479 220655189 978633289 981886119 887146863 962922336 130672567 645940008 839105871 997293157 333125135 617234885 102217452 222153104 628268314 641098487 231491286 358241298 805571761 912712665 252889269 588463883 149181705 981759610 759365353 857409528 614442619 821517156 955357921 977816383 308701018 616143543 270628879 851454779 383972433 592464390 610496551 667314429 302195664 873027244 168249885 440971285 434717087 717500309 684544271 876760185 66363260 93354907 764503673 986262174 760190792 940226347 261547371 639281248 139761702 806177318 157464725 304250370 932107445 945257777 310701329 464229967 442341321 910070150 554951626 590437730 204852971 483669990 744250961 955480564 306687030 513174960 509866365 955611084 738516140 997842047 460246695 882070527 829536782 857709610 435453019 575313264 889789110 949119415 43979937 530233564 480227674 726893662 32737803 721059153 926147352 999852272 805453981 987232418 340577753 395213606 520871578 681516315 565990222 887107685 173147756 324333558 583820887 770956247 137694174 349647568 83878126 566460813 487539306 835896339 610672461 802597455 127406347 990680049 159118578 450096220 359850667 520108988 352671129 943504359 27303713 215225656 564859885 929423781 224745980 390617963 775084814 935902885 483696696 950328560 303656506 350880874 442867783 841972196 154220247 794312370 957149353 994337320 814064507 859808654 797432121 994243727 972538957 994185208 412373864 627054028 586181359 721003809 227092794 588516839 131852521 288433361 825554547 923265059 890604304 991579245 184479564 442323057 700159718 734438440 62114790 759404860 32261813 976264752 241046986 692100576 59906731 580316079 196582685 280995540 95616003 224529733 121529447 462321484 575739328 635349757 896524639 958398480 623069669 676399810 919451187 939652392 921739703 959633976 457577804 490005357 599602056 877328312 831834238 935581553 263878997 674213847 186126587 618984951 100450116 638894766 152568594 757181999 401486559 731504793 209497097 619049796 452054233 745782917 335292662 735092787 908768893 921784248 619269526 789440046 117010963 382652098 963308768 986367989 654891649 734875412 961315389 995040185 897451444 950027428 595402111 691064067 869904298 990469234 493216040 913368692 487142734 824206180 278548953 370945830 937133027 962942691 191481420 898392101 811920150 861645707 465968279 497273743 262156343 970191606 94181305 276208620 188386864 492625154 864301075 895701574 527731313 728923405 749356328 784683995 84347932 653278886 632584435 745752746 112589607 938225420 717064062 866072854 565083146 890150390 120827639 221677543 943853318 948630237 210915533 780474005 379231145 997938140 836695960 950176805 812695995 814375261 214334174 683341688 623883378 964442917 82437688 290897221 849803847 901851476 399214770 761434466 829764783 960539027 379215924 581333349 910094940 935255710 396333933 858726620 49736922 93781735 437356345 555894750 979030550 986355795 701708681 945430505 685304185 999318231 372891635 980066807 239391220 533709965 602425560 808117671 174705776 365081724 80448444 829050514 180582220 812426414 989532362 989637551 800177917 963626916 704679487 773209847 453916378 817559145 129119998 143558302 467496951 632754063 644488548 741856802 2735739 916832670 775684895 850061152 985119364 994700092 591134679 631006497 38105296 69007885 61863747 346062830 687058923 760547039 725888290 930439305 439645528 894065611 539042094 636539614 646966237 912640994 161677836 970042136 881316823 898989450 120352901 808895118 761832724 914831665 108204672 412935986 924023066 985817020 601785578 908231168 302690553 977962933 549122450 692170381 375820115 832052375 873403437 968783946 536941754 782575965 455873966 744691844 232417207 446641614 134337673 595805760 958566486 966048546 678234620 794151244 330129877 797351783 902079015 924960682 879776851 880467248 331280438 947352747 854847191 917663967 416278289 772112567 980381254 988883920 175851133 337259799 416759937 544975651 372254994 736572561 265636809 903592348 646263848 659181427 242943194 862471428 245893346 843035399 774530875 905063513 13944840 259590405 581193744 901442902 293289286 443730675 871119399 927800258 416442707 843808741 126914027 773695843 297824179 315190723 857349948 895213501 896957460 992371889 140777523 919846022 989496247 996063207 540112559 870946566 316502826 709786401 243505755 813309573 661434196 972696805 349970295 605484427 702277155 935731735 815537155 959240960 193337474 469538250 128530105 342336415 511420961 750576984 812541055 850028983 410309251 498296065 860108291 910200196 262805565 539458542 423097492 672415945 837306831 906167264 769859127 800765347 819137410 966656663 913450378 993140138 144075333 754074910 204236436 369685841 714191104 946462039 653324767 929761013 704439595 961321307 243490048 888448508 143884932 296379317 126924546 672354776 106384982 979822365 414067888 614207371 852347332 857930469 387588307 982167268 940925257 941290371 7068580 364822467 84514390 153337795 705250144 733857115 605678845 949618935 362514005 719651822 815893140 947769221 516593046 584409495 70352309 230304152 508845846 928506587 447960584 458853851 519066369 545576833 979194284 997501007 856039961 861468640 952659273 960194663 660081436 900389137 296734696 416154812 198142309 208489032 152937321 916497686 646684749 911151794 391585895 493956170 66521495 869358523 895940845 928503861 4361931 177053079 342862097 492544182 803643911 808249583 802791046 982963818 792114965 900448047 797893242 986542342 897038596 955054807 961891212 977424390 729290174 878842451 479736940 604075116 368488743 878943906 180132953 216124383 257932579 937836790 541405509 985188921 347923074 898580010 141959420 146970919 767016413 907713594 424251434 853477492 702518616 959444085 313880015 591758133 399086088 876783331 560727008 870314724 809308252 990357922 903797008 918636775 898693925 994234706 959090424 962485968 529572181 910892087 178699641 254837166 770627741 777893585 534585382 791703151 760169513 829024571 338126564 581254143 598997647 692005424 367716800 633870456 400636105 897401309 143611953 371567830 580574011 596989744 13600656 698730532 365108136 505179458 561992770 843361561 360377100 913576534 831133359 964357486 350209344 896018307 159664330 960702216 776156273 873954840 163494348 250517761 786826446 933090768 471184734 837838383 360221921 408299616 815158798 902841795 714550368 825080674 68225324 522684491 131730899 611592714 154987646 455938693 312970682 898677870 895446912 987770899 511328059 711466882 642567741 804506269 949250847 992984967 401603953 722070567 201433753 328800212 177751919 816024396 882576875 911361400 828437574 916921844 66700398 779435253 765418212 949800217 553783420 905299099 225095892 712559640 195826263 953164447 222643540 230931022 441600886 646140627 449016778 918383423 336372619 565380706 624547346 701688895 941120101 966670015 378745538 577534793 561631688 762019655 426632747 499497759 257639706 620807538 917180501 961261077 797418481 989247778 951213640 973578807 868522195 868576965 589089627 768408654 2116240 981404301 30649993 691802448 156045251 773192266 570507596 870619766 209685521 300866097 647281082 807528072 462845581 798131739 763853567 838843974 968712132 990397578 875453719 912537911 383725132 713825485 573831954 917275065 126711045 878541957 720159029 857724608 899086755 962179497 779869046 798156853 723521501 903160942 543765603 802624541 599772171 907442737 83036968 342876735 401009256 650218067 521326508 862490258 379477914 865750862 86736923 697863466 123296642 247724789 212849961 432767868 263505248 575289810 101913758 138622934 105696142 136398621 503908518 724091433 958518893 964086138 637004090 982188867 960673740 974107638 632053664 932854120 598482258 634677922 204390275 985293994 363763293 869862874 934128271 984598633 103310213 412598826 206226452 939392343 222006834 355006512 732290225 767504309 629660772 957741771 509125123 962183119 477051857 882277540 427510234 691926199 735003048 838695515 152359885 259778249 80403381 966871934 492599149 888460646 327523515 375905884 163365394 964083720 52282164 970221299 185491371 648668277 893473126 990555438 382362134 648769387 886225070 953019710 493093665 800828653 434978670 932382847 852404848 884547563 601938185 624517442 969740643 984055542 161631582 834686143 129412026 545138873 618778826 685783716 432225675 855877733 4536579 668452351 103630288 781375536 673528206 838944024 996284459 997858957 396381629 923328364 16765130 192263117 919213230 943958296 137140515 455642163 220164469 445788402 534874850 683873568 641440436 737437402 263281117 927175083 113416050 402106758 548107453 700378206 752465542 867013055 455926811 804476575 950080691 987175356 907428295 994613758 596402082 869333108 537168795 697954304 174363298 247688124 578251753 762575689 848400085 887151734 809359159 813653118 668674854 996782085 915664128 923282916 490001310 841473198 647642569 801121175 978108187 998160077 7966355 985974966 506616537 510574528 803781300 986913001 996111053 996362300 985038030 998120563 254675960 521006643 129053664 591242939 723046590 960923515 1515315 478915149 601242130 939793309 258450876 598374107 544053222 768790503 480329588 522493881 296853177 595381993 358833461 893897958 307670073 686837655 357555891 635375423 552201442 684215040 837470464 894991017 240406667 813913628 631648091 875246024 981903978 986779994 275674091 832707864 777982955 968516926 745074001 843345524 676505778 738875744 668582556 760033388 158972459 270673417 838909853 869971691 388945735 590539565 11793352 171456541 876658582 938681821 630050784 645362393 623997625 867608139 459526095 879103793 946501920 962092751 144949734 528098305 812642681 832172486 285005122 966533665 215175563 439153867 240128701 773843851 472964261 993520539 661512823 991717038 433699154 555774065 852899884 951665730 50600534 883933858 203794258 753118385 851681150 857243707 499025095 570188414 647738196 697403102 36563427 219342962 767278074 873410212 281633638 865282956 480744671 865707734 405887259 615425438 732541547 986668748 719303122 821015231 292083196 350893081 766502390 893098416 96248686 510249541 415284323 744660289 26569448 839274998 117932505 146497274 324348010 512533698 610784791 695099144 192065523 254533687 838171521 960974033 584682834 587391009 571109290 636551691 542945569 794175414 504848680 954540085 241624543 770490312 112214873 634436961 815473547 827055887 420365517 838706238 424650773 846524639 65840120 478787779 221282954 670030294 264406390 902172306 760128860 991751618 258550902 713835886 664185127 728279703 250666478 572213202 560274664 845106137 158370383 803103853 397849732 552492804 916825261 990895617 106611549 507180734 900264673 945555637 220840784 653598483 971241463 995602468 665958564 890009868 928127159 970469128 742291338 866636871 317156188 947156120 688302820 756595556 449671800 597817122 340737410 641554282 69871045 202246958 866509652 997539858 596414484 771678496 108945399 186237374 124553449 313567508 223711262 716501468 887152014 956136086 467151534 940981117 447243017 828463223 685090847 760508388 556328867 825439906 587149899 933840574 913462613 952874619 422547929 958565221 750785086 851262082 951616937 952825030 643448894 975758978 107749962 767645580 221114483 552174287 63054446 342522049 769859020 838689820 110493993 646027294 794339171 912577603 103326559 750186373 130114277 232464803 939113258 949117845 284711702 456399008 216595548 359825284 593361336 819986860 67134298 603093665 976037668 989703595 65786089 901677062 935895347 982951178 691054102 728490459 2527681 224196914 880287267 958767053 991192920 999079593 385539197 670693393 566970748 768425891 145518655 589432482 389432094 404368477 840225314 976648709 33282637 648654909 631233481 846945338 713503950 803633988 185944962 923266487 968844982 968978461 614792114 737118990 102832165 917526738 507885249 704158330 487528135 756289078 124954707 368859144 368830433 390137527 613270456 955241534 40399918 85748190 552758928 799121965 669879642 806752161 314146969 943515519 30840188 266028903 90271810 455882306 945510557 992811330 651571704 804779125 903048542 923380149 209301867 762682130 881527462 911352072 160921336 764715185 180456247 367156364 474436580 517101863 552526085 956196764 207334132 718053744 156189944 261497009 936453005 956115099 593904300 664219923 353653749 424183973 554243219 728506873 155905590 258734963 472556744 898871444 151087140 634404044 366038053 809818051 717892293 720804741 983542980 997783504 412420046 426513903 757987013 937941719 967739450 982424179 365797179 881739614 238663578 715186617 629093451 977593619 752140833 753760223 633212346 677524389 454961391 687846386 11574197 401515763 273938734 496316856 16458049 223344665 744975631 882630851 926629165 996370931 188137200 584464121 969058258 974032410 114931787 952201594 776351485 802427529 790050817 950800157 900470212 978359846 710803506 922889840 679532374 728956970 557935583 804122466 843380606 848459794 677727410 684622634 14060717 224330896 526360242 901874156 137687179 385670765 87924151 837911548 229714878 980659015 711542988 951279034 408943748 792244754 242287743 289256034 189099683 201393816 466415448 558243110 272540467 583917081 132621147 713320159 362258013 437767061 79996180 513481165 89908767 911214017 206222099 390924870 157598557 334467357 782505807 898568937 815829558 996031025 569984705 828743552 230754126 458934663 176833542 740633419 893482611 947014506 961806194 988482944 204473070 339412637 461143112 560750489 709993900 855878758 14122338 125096990 772756927 845174654 558891125 688946536 949716707 994666191 959834582 992408179 908746662 955929145 679828236 959030458 353625391 839667421 357037176 789177034 478128693 584406897 276633825 685066583 922968690 966924420 447108699 596085128 508133887 877380580 146468710 182638603 117875340 325009818 650569837 994473355 36731057 507329729 368334845 512813182 66324630 285804313 424473540 522717346 837107636 934963202 481079472 734807932 147570232 176043234 244674486 960354396 125975549 657501018 172438986 960062006 613634788 639670441 278844432 690718703 33165429 884828766 628353978 876830867 180639915 764721149 634987373 732092044 956034384 973089563 759155057 796723604 689861104 846771384 220180701 221759834 739657637 941452579 939417627 957367245 371650424 999685802 101713608 254578765 567363130 633476603 445765973 500169890 868990118 931795724 132194499 230544007 692392501 933095370 380563600 849824711 185427752 991267483 482020630 755610604 123242451 473536250 23747321 758165679 573244850 964407755 753283952 910790244 286154002 916670182 218405660 508566982 757452470 956396210 934345893 986273096 437960311 995824285 676960850 889660642 571320762 848095892 777209778 941707573 452214384 977242125 883638666 949256951 84357432 219912455 679794142 885537657 421737332 932407153 227895042 841724937 581211552 612589626 224312587 408449265 275507360 480232176 792061918 897743352 637394895 770548502 929797425 969606864 175690660 507408202 284009390 713806148 699944137 742450271 100209366 483471840 90260515 984471590 316323965 598320618 344324445 925521113 676447620 806521937 913805790 966209550 537680917 642068344 274793201 635452033 646088631 648749386 479276020 842551272 163980805 348738673 101448988 541375305 281467334 979584395 34913987 558940828 502990411 618635781 925138981 970625391 875360755 985252780 512261773 865008200 732295524 795240258 326577140 531987365 155193427 411520209 303038444 451031529 316454497 767962918 90120742 895785571 508504518 623818326 926194147 927307679 361248555 421740918 387228929 757426562 257013259 458944864 743544521 858755481 63694447 882172649 72829046 789042292 205996366 912584361 398808198 756798483 504178391 725741978 911249626 987875275 686231151 716814796 724624679 772723283 556653895 585000867 998799266 999570739 745771373 813379866 845838193 858733275 602952435 745157467 436343895 454528955 932129106 981605160 287951217 288256410 692407583 762609652 651566774 655660090 722040679 810403938 116106317 220145605 961091893 970834474 392197177 418017735 921539181 924074751 652848870 890062493 985495492 996593362 57011598 561821242 166134600 743852691 330573186 767693443 27888261 854288781 52172409 603476806 685693553 886783066 241747896 802625243 443207213 895520982 825074736 989600695 92941265 639388409 821482700 954362498 935486929 994000051 98069061 550586593 259823660 496342964 58806274 622734695 692983471 837252947 980433707 997344152 988057655 992663831 235993663 726101938 885937051 910619129 917302796 923645905 761661574 936397174 873316618 882530866 555947022 782596709 109825842 852621923 70602757 481094503 980745498 994458319 59224498 270523651 203835437 861887881 862587980 987153505 415242878 815475514 753217968 906130222 795993720 953186108 99926403 666910946 258908366 792141921 222934216 687679001 888769116 925284913 67867119 232153997 474885034 770247536 729732683 919114068 363200756 953575122 551703 355756690 144862444 693757801 265476146 700528436 613715609 667208052 675173218 841146316 683977353 803245419 812463140 900265828 533848497 963569704 888150232 976718004 987462257 997754808 896235042 987078193 444966141 686808954 170176576 574136742 401848243 729616409 758178090 801114356 153205361 516424033 604836866 946585913 912337338 994841716 969379318 991601446 943309240 947026889 278584180 398947350 398653124 575357031 126668042 429418766 637617492 943029041 557025584 766148813 554590884 716045305 389705861 532053680 239682062 537244767 2991640 52367339 321583322 736214601 771658829 865429976 848034366 871138575 948338715 954471933 721858197 967232522 72795187 600181898 623373804 770209108 207808929 572099553 921533086 947443260 346779790 963873303 791619764 955954538 80352501 593647387 962378093 965774412 900086202 927498207 867040315 924594516 548240212 569358846 762387563 777589925 318731935 906629935 519817812 557699223 62874765 611717734 508451389 964896783 693015814 711471952 654551669 759232441 633815221 674819772 154846863 540673582 462413226 766858294 168493814 335090518 8339004 554233518 547681010 857452170 53255668 414403287 738671563 942612667 36847948 708060538 753965834 800845190 678293990 977634103 465105352 617894480 963566773 967288528 332694794 564768273 501525984 898061639 189845635 594616227 734756340 948969413 939797845 944152548 504192689 717144943 192131741 657381297 942211129 971396564 7111041 46177840 207314499 755871785 457558931 926793399 763920641 775939699 935218435 978786472 71379723 561299253 612311112 649912143 614421259 868010000 104725202 317908051 186878592 276127363 862653701 908766365 273237283 913616084 22318918 623592187 216262828 594906224 634414835 794362172 278471700 782150136 275165519 840103824 986945941 989370381 248579879 774942999 679984009 810838832 522065827 644451890 462634651 695877161 9671320 273814018 797327576 999480386 157943009 709036150 612336894 834880895 603347362 787848984 308187613 734729756 295114400 644970433 500427891 645684969 980422273 996675234 811581832 994990346 975215001 984354948 127629530 264021923 391105814 835772046 908510964 959480769 129745923 670234104 124082206 429127076 294449257 821476772 736228249 769197764 540700765 571144118 760757342 901388969 273051254 344334543 958899312 984194252 157856466 526169008 771986339 925789854 343701835 467494047 278117379 569848444 778529661 992443110 112030565 540854620 339343096 779499135 745429214 999303900 640055664 774142664 35470322 52531652 654819448 944182839 299742021 722716504 162727025 740359731 521962426 958232579 182069451 601347896 992381487 992788379 720605350 897130037 48303062 580657523 202277945 451970422 760040809 945256619 936903335 998590073 374490295 492626936 887057341 976796856 337154016 584575704 973387469 992658515 880434412 891414292 811665896 938727389 4396867 492104513 101245947 253172782 695869248 857153491 787858788 970939574 675141260 978236919 958671612 978735176 158643159 705936964 873701083 955559626 640816332 705249169 83504336 786596526 815716526 883130442 400318830 487296005 642932064 947124807 245756222 913968448 74148863 999603218 673131134 774961234 888066024 923361605 222045504 605112739 810555670 868515068 911160817 936514306 111767555 434115990 766259118 832136650 530882846 631907588 98037726 639483089 883259109 969692040 520560764 554415980 5792689 665989041 563975022 876097434 74765791 137936427 857312034 894931818 116839509 255836048 441227749 570823820 639618324 874570721 801245718 994530726 592152790 967735879 789688358 849171959 156949396 979274205 318216491 839836862 324646827 915260831 196514648 542833205 730897753 797905796 241716891 681957343 155657126 809169810 371367250 541636028 965271774 974986263 752498350 839977973 625752641 633403802 772443263 999035208 617322552 958178791 3151050 127815633 303007550 305706114 599348484 980889014 875728880 918669870 946184483 957807937 798827978 988001569 648816597 809320722 561548769 653347474 289193318 469855966 371376369 539663207 535140937 627236101 355582535 532597659 308464734 999776019 990307121 991095612 349944966 596610907 130162086 419914942 738259816 873067743 543273635 950250226 561998617 991057540 104763629 333073012 882137170 911410708 668757603 744997664 256106423 815718209 766620375 773270722 768585039 788546013 913038141 949606960 982058616 993878072 103807268 751493022 910920626 983303760 315451956 349669239 561425734 995455534 475712072 906864559 632767198 934205570 178235094 613318043 90638533 637944992 16585335 915378515 769392668 772698604 874435353 917815855 470063399 724795011 117189512 732552641 683400898 950798675 194133692 662919407 736484867 815428858 936564187 958756733 787577421 851694752 395246335 758792243 541542067 670054296 581543533 984088829 243614594 709687354 355678875 764578555 664548716 762737389 583013197 777758936 760451218 948969200 431911093 474400778 680990689 759055868 450252434 803168576 149401570 876625700 508606085 517911847 707484269 966035628 152336347 279302174 833199912 845640080 951148956 971282249 45474215 795417041 271576794 273280230 20111697 261813623 468291202 679534577 755290011 761604363 65613489 353016591 719960315 996249636 601697438 980333016 423192628 452447641 626450654 800429040 96752797 802091224 210046997 970805976 358147699 732558378 566504728 692565987 39275925 508809789 726332350 777855576 800661869 948062994 459048072 487469942 178705629 264342110 540364067 773695862 74821034 961969699 662714804 885634830 883890980 972434294 531243191 995604879 145655343 569048769 109586099 525083697 811883154 922468747 152727014 889045081 983266585 992567833 251043332 655220700 286867729 697851267 762852245 893799478 567181788 577989634 805125060 861279592 990246142 996306603 834821154 894452287 832509077 998273834 460648073 687149852 538035126 981401060 573791462 842704518 490433586 937005630 73550874 410675566 979271561 990895751 994924365 995272420 765616807 917095178 69264071 492087183 265626201 670977434 11320180 240300430 890942725 911458539 719621928 972037669 811657015 956598009 1668762 693355340 831826175 887554896 917839491 923605125 186050569 802241628 372688534 627616968 297717624 845134328 912359830 941758783 364206384 665894021 35403678 311496896 564761478 924795801 891144645 908553986 284351811 628384697 235010174 705987108 498804732 908741080 301250217 351344318 661403071 897521874 702123078 761296388 349770540 790523845 294379737 785359334 801035625 960844321 907233995 910751729 402354463 928068481 332348609 521816852 505185708 644454328 546050714 908533236 51714745 347790007 460427902 747755577 148278617 488745464 689146061 848604579 278468106 382273168 830768544 894722611 946275919 976991386 496713552 572199394 306019573 529809642 220355432 984040535 595687169 626963593 657807588 686227761 849986683 967685249 2264621 927050941 884700714 985176951 350642681 799080734 258106100 505856356 312763815 475829780 275700562 992544998 219723499 921912433 724220009 772186079 413163957 723164536 797585797 814639351 125370591 199855234 173935707 520239763 402159510 856811425 23666390 915357562 57814703 736524114 5228591 656859773 681622475 999327047 747577675 807920400 446688032 891281396 816155791 873802839 234574695 407786841 164800531 345780929 434807317 656524851 415932424 968391606 370409400 742997849 402858764 594773344 471412553 675073176 687442671 833803780 605657141 722183260 377460850 855412048 437080121 443954683 79820190 919241190 899532854 981517622 519125045 851359631 801611789 827867234 606639680 894075842 889574980 987523704 994394743 998984251 696296601 731393324 59494886 910411777 927586788 988737606 786992907 907505257 163032217 328222298 666929212 968293540 447222662 703329962 958530279 959606034 341667810 730100975 13878894 578950434 300709527 880896312 697734023 811536011 521419070 957052160 890349553 956102874 636387199 666830194 386253802 630612234 187216770 924854240 533766173 866997775 930485288 988873656 822938567 901630565 47525758 877632081 807095151 919273894 359460522 905635458 953483706 976878589 312685662 562865448 512838820 594736093 869708420 984563688 829349879 998423462 956689071 973514264 338355600 546541405 125169498 906859121 324337788 966540152 294951530 641902547 7312157 308791007 560456613 930553940 529574466 789166860 962594738 981844837 470162657 901051218 396243658 955216069 111085265 368127260 114935700 321297390 968236839 983428103 81032626 700311563 509215665 813325091 329269085 778482715 453073130 797298981 162931914 794896887 553349359 905947066 293676078 391097770 959585869 970453454 745206322 798798500 564625555 855142505 440106793 784099262 139656529 972960477 663013290 717829606 517134039 776195767 41916015 409848436 248706635 973518659 447764489 816107001 812257355 828262213 45066473 554581068 848978119 985800443 330903123 972073255 240351944 293851660 284157709 423863061 27648672 47194944 708376385 860700979 987057028 992727100 228205382 990046258 956940770 965205830 718578244 983572754 638615565 944371375 29311591 383477337 604452969 999188498 918746690 966873114 749686963 918059555 953158669 955662655 396286220 554031355 849212999 853309046 437856284 944938495 573317929 686947375 773175061 866456612 880124843 920501405 330911272 828561843 141539631 821190637 254665648 639900052 519278351 775876232 699091431 993486200 191465770 811739963 622270809 681247088 260855428 382044256 516965070 566548042 749265303 800381071 741299597 927600611 111230374 270001417 336964877 869070199 645295834 836463438 275242925 789381490 933474944 964024374 407028399 465130037 410551058 488099744 276705550 505898892 921043305 936135261 581218483 903367980 900486413 918371574 98261176 245633276 342867286 509134558 826251011 965001304 502146004 808560816 358136787 859366729 565896349 754647689 865870396 981521382 218598360 738534616 651329912 667082103 392647617 717375085 264624850 641583116 678346231 962669706 636481271 854549319 228432998 486695182 816505779 947844794 538864639 719032663 722239643 752116818 208589237 339198965 506950262 769280396 674175059 936334457 853952984 964322620 588814367 904903156 295261951 459856124 493572983 704393057 612167389 643302897 778221145 828405258 890560596 921031453 443811782 680719322 931330722 983644567 796724304 931838890 811795968 870865391 525178171 577326979 53295011 353894613 991593180 995467539 803582768 930210720 697481717 721939113 900016661 921529332 397868459 621111220 189662669 492206169 789844947 843728968 967574301 969048772 333988663 936723006 961545978 973334787 601667759 834614705 312868304 596273920 832546544 861961855 486675003 945945173 491852269 644653879 990250285 998776525 673264690 777207135 64176905 612271362 699301265 885663563 55608378 592744023 362069921 976453569 639653337 728152125 605859247 825575459 935553633 942360827 942852421 963250635 803026061 828576721 950885084 965439587 57149678 168592541 877575663 938084216 412157487 933711961 154110156 311029526 896205481 923510606 735514723 914849290 856108130 932348270 790260424 793620145 39687953 817675054 436016052 632859676 719467654 918160288 815110671 941431997 780328245 911324800 228886603 486248642 121561375 849104546 122582524 769542187 900255812 975533238 474599425 780269030 189739476 371204930 753892585 783267077 996884751 997577226 787018020 809542097 88736932 651410791 373626099 651086153 696880827 741149300 426012940 594074484 596663386 690497098 677205752 684903848 29044159 507813871 651288623 998402883 678461531 929051914 73249366 358914840 889717885 933259261 379584052 646673857 742586051 857629741 839723623 907104917 886820632 979987024 333726234 861585935 882215768 999616938 613307989 997444656 814756376 860895139 300715854 512434368 747971161 869003285 434386385 478989691 815427300 904748582 314955888 516642967 683985126 768847724 865575706 969299932 333733800 922435940 409513454 899377095 172166471 319881587 148861191 624550524 468271500 974071369 8107116 982312650 974110256 982087228 996587261 996767284 459494406 550638352 436292913 791344581 443915468 954365439 832347142 965696536 127686607 824879637 304902518 797907635 873475196 942512983 323499920 885622496 196866276 497977184 175862438 994310291 764886843 770659266 562563337 690882546 790049245 990367604 135858143 892345589 521238169 562936518 732065820 785440517 336093259 445039634 192193 362756194 243586074 729737500 426570321 877628891 653888525 868290052 660775206 742001673 58786566 328372224 616708725 933809352 863415333 914663300 148404150 844894427 507578951 575068061 507373833 779388700 572758638 754711184 66424892 275560563 545153635 790488456 850186970 989146429 164900466 386679656 84183579 574796513 748998460 853731448 208620046 384833622 759372667 967851693 973670899 987123270 855744276 958776320 751589129 835930740 198385650 473883718 904471403 976148359 267487422 594353022 287783589 593851033 228700876 659731815 692390025 812218365 97465629 911202408 449926403 871231820 515609301 725513990 849181118 909846761 470492938 677774311 887111180 983165887 21398741 746083361 4453582 639277573 673835559 928731091 221554188 580507617 798799240 903749792 42530691 205612543 757499218 931369049 914394350 925587255 893228186 969536834 556769562 845129584 690710582 729302599 665150578 729912553 513215465 774282224 619389562 927153340 202926415 498688098 117136778 124602384 153246661 509805915 547605637 779059388 396868063 909048774 319573151 326240549 801693668 946288813 51028055 494766201 628164641 634347334 471155974 799622991 504865707 961037542 932183812 964869409 871078287 902523478 607121611 726790564 688226582 726790682 493836905 740072970 860882987 874113653 887919685 994221499 22571228 70799301 507630931 617655581 275590260 579056157 355577148 490668095 359895124 537088438 941608036 968009161 226093229 437068949 868473378 888096568 436594574 675181186 817659550 942565539 675525027 992770126 111194513 487972285 801560253 874120379 732858246 735872867 76499231 190671574 980560596 986634499 725421644 768907342 550691654 579544947 896569602 959787652 771809472 965039100 519675747 908343732 262252098 377218481 374204861 384136090 86951414 280192269 67327356 459491050 494433058 555870724 492699538 817529099 607358755 969953005 9665582 818031049 390263717 841450629 129692996 369802230 937787074 959254700 123772884 177130615 413072769 514818289 841642163 952835765 328965045 673300819 331276943 746237537 781335456 843112223 610479890 680824270 193514523 890115455 316512384 524403860 675841640 793807723 326922857 751741291 715503583 974292624 949004052 976027998 902705690 970081247 582575441 644415210 570551171 596459366 930596274 973895582 584036072 714988191 48325880 621634414 750243336 969309452 487296026 547235992 758975926 982602723 809138578 905165893 58595963 822170744 779899814 865175144 811904557 890661642 997749652 998261641 130644845 808779699 17428570 736554027 701089063 885861444 233782440 285699013 956916230 986349116 359086658 988778011 820175455 863827729 341486006 702012163 626985276 985720627 369250506 955808896 253856426 682879072 761077664 782849720 866038857 948037613 882824412 984524965 311651639 330424339 560784776 636294146 235235612 430813676 726935594 807915109 77607536 392257429 849646796 984420395 783685809 983299971 428565637 435771000 133994935 500793935 510587934 709021811 690810243 802395381 561306565 655446713 250319356 868750662 731181606 733612135 134627144 779705113 360104578 688606453 312084844 915733633 227106676 651528769 317198251 735125953 600508768 667795740 146712660 451310814 259222313 966081277 771100465 872014960 593206819 599233858 147518620 274909275 910613933 991389369 483504232 670405596 573742008 575174579 422641933 506465895 543990778 733240728 676329257 700471702 762480532 915646227 547517668 750665794 953529337 988796262 198859014 333697009 137219214 388575335 624148361 629697715 483148750 629531189 65203848 369611853 376707681 748689612 126183607 723412890 846617367 990946889 158072799 922989006 995586530 995748197 637622481 799211130 420179603 675822437 341087813 896730530 96743601 317867558 174915762 702325424 215081328 852397076 587642934 708251644 212792349 635925461 824490130 912107928 552669823 770260519 76605598 522027574 944860311 986627525 441125006 819356425 404438249 897326423 196730136 364680659 816240873 981278318 988951529 999612508 257892662 962529433 185134275 628180716 684523079 715694165 489627389 747296500 527603322 578740387 754944791 808829060 215119158 357059992 411381754 517092057 927535407 945892136 208147270 728445131 16435686 551167533 33695875 557309861 73208890 103235271 157810634 537185381 895965799 959578229 307301417 963609076 98947388 607203797 717412975 984320040 358581515 600833750 3617771 530570997 855575268 963714055 649988028 704427354 354881274 677410306 312969708 552046234 405591669 816505877 16641002 69285067 122234759 444813772 399205970 553571539 853533645 921411981 175642066 501308831 92643731 462912848 509124286 530832060 256238605 378494386 369044863 735277153 296489733 630982398 91962187 461040427 980551241 998373141 475657063 870585082 894330979 895986439 972733713 974234330 405322396 545473481 109356227 512373918 363151895 764387527 112433934 903908146 555993780 713292706 107494293 220170007 669972488 765763187 77325508 757636253 213687198 566667458 323148693 671899228 461225902 693133764 31635421 984472885 391046631 575418182 309327045 799652544 908797126 968254988 507508521 639242525 359570807 700362806 787763140 882543976 56661112 801679685 1658928 744335582 328152973 551422723 335240683 986036317 399624746 910005022 423232560 868384927 191627063 276921817 854129136 889454331 510260304 745367527 49615286 336634152 644319558 754754963 539384414 589773249 758204662 887431632 378229727 790584032 644633110 850596394 5476657 779676893 482137638 710193909 24120547 986555181 933566418 993866644 716614501 727901549 210639262 538501113 438561418 804144719 646126395 856809211 996306657 996874813 241975360 582127336 379473829 958162175 37153679 450415616 708612280 883279289 636049562 914302685 787575827 856347360 824570225 926526280 745013795 887754212 899811748 969755400 896608020 928845039 124494683 703110095 150442589 427143112 103430207 407057651 480951981 499515923 343030098 382948306 998533127 999157860 370481359 913373658 55060398 504455653 808677490 936145906 611053250 882081640 531917199 642875392 639086457 709173606 320331420 672852547 623217652 687454686 750292358 840303334 62966044 480089052 989414655 994788401 601950746 736006980 466165542 597901994 78473170 96111033 282266317 635142049 765825078 948911146 292032389 659615628 124089549 937125234 41338001 864092888 132797202 614280192 590642343 793331672 2926174 635604390 874558298 896183129 488579468 917049702 633377447 801629785 322887122 454363767 931904753 947676084 916038265 971087026 228418608 950878052 816204071 887309711 899548081 940335991 370844177 746017785 752738834 842293123 647857764 709382457 675167922 856573979 766732074 884736726 947346248 971630033 397014890 457623763 774309640 976767386 687072669 935262531 394793411 948894455 508753146 830221114 117705293 494812367 589493093 831285297 969435152 989537115 119879698 710729104 498650902 891039577 60838315 211339887 456289484 530463874 193092156 387308019 813864780 816703681 545262845 554157168 353301695 864281576 56669698 750649419 679133544 912510651 829652331 954847593 425222141 887079909 36018936 445262379 716954382 934204669 151593393 282919841 886758399 911231015 692612368 784007806 923325602 950540266 168614741 737897265 152505079 230400536 684486525 954047944 945095435 955090997 682397915 736911184 124419389 362702177 802212517 975673591 91217410 936071180 771751889 858700365 835336534 924592428 773669718 968294663 957981263 991986938 518905698 739818696 290377865 784078403 153416459 648254403 908092353 953513600 888370448 908326995 961630200 980093651 245272562 318431097 297045216 422393546 783881944 974215565 710161777 748446583 927728958 953729328 698378496 965874382 920393365 922331193 34301513 575666917 77972132 104198983 793564039 946347873 777432099 887461473 643801112 948061944 407752006 944117706 358605015 604014399 430077459 763053288 164441055 863351016 38067087 862928396 263014993 571595873 788822743 954445486 513834181 609520026 681090153 834217446 491330909 848401593 876194154 882379366 942023173 954870945 139093506 936493995 548914287 757025538 748331846 823452061 744041719 761569629 165666931 682053661 601349812 908374598 904519159 917255443 242380488 768261189 648986948 978130870 549084842 849860259 312933673 672524929 208588483 533649452 698921094 969106017 607779943 645833421 943270447 965021685 29761488 845860509 798168345 980656272 846494865 866969635 47404022 104553198 296559219 890611993 38990105 502744964 71230728 700434008 531564797 562827066 900376456 981234979 123305486 967364857 953072907 955848868 223734425 821199624 573706457 920632734 478583910 500140301 870430276 940527092 460595418 518658689 710747344 980817603 196315401 875992678 79094138 729887355 402501254 880944764 902410224 986774845 186743978 378625320 734918865 987466960 251025862 763655759 576863305 847638619 424665043 982834673 326267199 926681934 356470196 647043313 755002736 791243262 666968490 751288126 603836291 760775437 944931258 984693615 644540484 751069094 712903346 750094864 976261302 999159850 477879027 749091830 938017983 985764264 23487368 758737142 4406792 159029066 637614367 949998679 964479737 983799400 422693481 544963099 320105074 646889026 923178456 958405723 560476617 853663071 605784369 694998323 785768755 894095371 169017061 599774626 539968339 898525629 155453079 463915098 149844741 938572411 206144892 492051582 984474445 987479077 719933477 909627867 914418527 962017626 915611025 923004654 144077648 799044622 568640854 656687462 798308179 911008418 990064827 993901606 42807716 106599290 233931346 403800920 223648828 893941916 730140108 956333233 52295623 357810953 19154210 419933361 478971421 664684480 521479553 674487413 560740401 885953855 502148693 837233235 68905846 424337216 943024744 950175047 635471811 905564329 31519697 793843099 850200679 920375875 262891899 425668525 127990619 747445660 818119793 838183314 629738067 883182606 292780174 690500227 197930665 673750062 519724539 581329872 766010510 947315405 664932752 922111278 245729780 705636796 382476706 426131851 865856571 921600243 983000661 984609437 432240768 625513230 953699773 964354280 867164180 871608412 557433786 602149978 713472720 890007187 341647148 420931968 92631341 744297370 621198847 784019857 349862721 893860409 806426002 876731845 432221460 922811014 549174594 793330497 162049249 922844893 648604453 891922199 327658807 512978979 15687648 185516885 455458705 648643045 880748823 903600077 521856304 723070604 652124594 897827555 58720856 685984823 17224239 734383331 752789296 774403047 959164795 970836560 193756834 518187779 878392078 983058208 909374820 987181465 881234652 933253101 408209071 536338236 648001243 722836827 764936331 999776926 716487956 835272744 587504067 903958238 861390205 983111539 498246077 507939934 575077009 628697375 417512985 755109193 43212806 299057103 361925555 800800126 757447354 801979754 977478801 983599867 135672753 442287685 539640267 637120468 596073680 688188703 442731238 828872596 650215827 927366859 805643138 960102457 754717026 840572168 440045220 623985316 394195501 964197358 706308199 979535280 14004377 125035591 892313781 956155081 24794089 301173073 564561390 709891383 840571694 926940280 406044812 884838744 973343901 974616485 603574510 963545791 276021811 720048185 867953055 978221133 183372520 358115038 924171881 929553711 824317560 940493952 388854473 550305099 303463288 785148717 381868127 977110729 339730239 996238302 888995672 991958041 892426513 956416571 32922780 992850905 564611035 701989229 73875973 828387285 860527510 976513748 63664826 189704756 979043431 998652837 282436562 902083203 449167960 469597334 938067595 944184210 573094861 840718028 817097326 854259849 823983617 899032890 443816502 795870405 892589507 953052439 277551002 454898831 951736370 975424371 558629270 661617066 221993487 362696069 560988128 733388503 906669772 970183295 441283134 615844154 555175645 699920053 172081919 576881251 587432749 780237968 524996303 543228202 576139837 991264827 269601473 820471495 671978847 888063338 85326634 751007251 44072373 86690377 558526737 760671538 674568230 741368165 916601334 931632150 855135774 885465750 542296288 992707333 58395937 666785738 480811527 661077827 208675701 221392721 424712136 710420329 340279688 363737186 783574296 866484156 22852588 460967419 922804234 997886317 400378143 629776101 221194605 661195192 839944600 893908450 401064576 420996292 98595027 549003596 755673994 786310275 961706881 972052730 573226627 585172347 669040096 879699730 175190361 688800930 339949511 442293176 703772146 772315478 17431282 318572420 849927438 897178863 104484026 733576241 288196299 891350705 330088287 718734217 585108576 678562275 974592396 988167230 92436160 695814979 70280841 705159624 508439637 683316114 113567664 771941096 307250785 439791721 860636260 866558790 440735691 695844803 918277637 983847159 488886873 982421634 759947357 790721793 387199006 786299399 187451167 752165661 693787880 775327903 318661051 323129171 746793443 864947916 967192541 972762478 903475447 920249619 538066233 928878369 868410884 996507919 561261857 573747061 904627435 906521562 629153521 639919227 299445799 824714192 415728247 766463660 64203688 83796027 503277767 687371456 893971636 923466028 830365289 960159462 765514618 893025251 650060489 864626150 350176739 438869123 892749817 979172268 845587452 908732172 290084060 369650826 883726967 983090333 784909826 793597014 37360759 233712114 724785192 786269801 10312743 479875488 644595667 793724978 949283329 961620799 778047014 909990757 433820504 830223336 957190952 974002589 726116933 871171789 402496983 610057032 813252880 827656653 822036524 886401097 235094999 899402843 342583586 606441221 156909747 447269227 807440076 956526322 262849368 309341986 582297607 789919266 775384109 996361048 839097443 920679997 398248242 557615495 462961845 936257476 882515793 949440591 922681674 996291134 638462391 926736697 781239800 962009706 668655055 768178676 965509687 987134074 751190471 971726727 636777960 671606052 164207965 485704522 917141387 976998898 844296488 866011400 210097219 957461318 221799490 306282481 148844572 959292482 530429768 590183592 514185594 755848933 821657687 866359754 592055028 907395799 842761630 959083180 224257292 900205613 760778777 767285218 987572723 996989598 956826037 964827892 43428014 994181840 846917578 984641588 903994130 985192553 124351200 150647581 313843987 920253997 223903228 752739092 288028352 415068418 694988534 815410987 885727158 926951601 651223361 794332507 730051633 933202080 600677490 722633030 97234939 736134121 193962354 950800439 775132064 813554633 569271047 935409815 171307802 819618361 249905672 555347676 453093164 480032380 968670361 973003624 684090701 833900681 554788149 804112272 501849068 751396666 904909719 953268112 51421560 412382867 207043073 230998418 802119925 889564487 405805189 734850172 482949467 904965447 283210209 402674760 16394145 746618322 715021344 969579727 35504791 332959196 668450112 781399217 983129283 994538062 458656618 918990064 435723847 468394121 2729415 769293853 196218317 548574480 830043094 956150037 254851924 974419343 463160133 865885065 440655220 898779165 336151565 544407410 605503206 690687885 369204407 451926894 686159722 905627412 393317732 662358983 644354150 907049551 33749306 448618529 13784698 263089879 898018509 948292675 445222369 574942725 941790347 965904003 875063004 877266451 321251046 492020443 776569224 804214569 401710746 466719556 906201049 992236601 617789612 730937713 470389518 509525462 716125988 964834197 833626580 876279826 505306155 836509928 993894498 995961696 865292012 934721587 641253738 991376567 402089491 555670586 654293135 927353251 910251620 974568121 525822426 633908958 217401840 824045013 76455969 218947127 833361291 897195152 752540264 897122882 263337211 428097858 228711111 441518374 385726065 703793917 953886878 967926982 994696455 999069957 299961952 613752541 30224151 846347014 775579739 904255398 897542758 962203116 347332083 846278575 372760375 852984683 970788023 988029211 565559762 903477154 586789630 926394356 540604607 616507367 12090395 172434410 216010678 719737074 203962724 861959600 237473895 380716929 724654225 952831825 612057407 921919167 412236746 872638197 741111940 840882565 398854870 675988779 194271897 766717395 6442778 73539671 985397620 994380237 913931256 985029950 518049916 677046688 185121825 911206991 638273104 751855917 739585722 798519783 906747004 957270944 670893880 790435200 195203347 809352375 133136981 710350694 536030253 659367698 164328235 781057749 603919309 685175435 92384382 688661328 693092523 763755228 231135844 889266778 168884929 619677714 170997804 622464616 591333663 882831201 207250309 535652825 152157100 443328792 699920447 849665294 915194776 919814537 252940851 528171178 748037391 842869243 7449460 340819025 901281244 999634631 667272955 900893941 485235354 581015602 756991140 944781084 65682780 641959844 669152970 817662563 209193155 681604961 895364397 922390651 746113916 975646032 559010130 651454892 396504843 437732193 983814348 993013223 943200900 998674724 879713485 962943417 997708806 998518844 560338672 740072350 968818121 996519575 409398567 646515981 989116454 994233208 862081381 988694586 27640596 231674006 28833331 480938000 822833868 860470603 670675941 731678956 995445571 998657135 124803399 164121097 233643176 350237441 197414382 662602206 560819791 914133510 512430183 641367457 98981157 526674350 39855954 533331192 437744663 963393489 773910181 880672234 805878375 903284199 196941479 984580689 932994434 997660282 607677789 882453868 603030463 629140094 693942813 721279221 992058462 996029946 90398869 935442257 88289563 900824813 98921419 616935980 636476919 831046832 242975743 787977696 715575880 971593528 31875993 366012277 835739932 922402690 917444392 973485262 35988307 641245706 833757291 903169940 358634867 758052225 484328948 741836425 38464155 477100673 995735885 997827710 960164779 984170653 946648179 993961488 740256386 866685856 817353504 967560155 911842802 990420828 581384613 899884354 357122033 981079225 138239449 671445750 871925433 962021339 191879505 457747151 693848298 694899443 570957506 751970284 888856462 934345632 768897399 823129174 283383818 441895516 488557184 500656995 655971568 969528792 222306087 818902080 485540641 525697632 857537217 911130258 524090578 943067101 120972294 323422973 600530770 920173080 343213469 481679133 987290108 988537554 652801992 951419071 29012357 978304252 459707831 776577051 32615300 414458612 358212710 905685185 432765651 911495801 946393586 998500759 463951516 495400059 804199487 829842939 497790735 702531460 837137310 939626451 288509919 895516295 628813422 982093841 48306800 834269055 22231304 207170445 540098783 708175840 395607638 404269843 53353888 151044176 629623349 707177665 367587586 452374572 831187174 838483796 191786722 794766114 670500915 934339474 603585494 937183222 553752002 936821373 248490516 314155709 932440416 965113236 812507696 935512505 561987878 721630550 26717568 689473738 929127587 993450028 608195722 676466114 786985734 806238482 951623110 970239299 323343423 500417957 104906730 179291472 805169057 863224215 168035953 459157199 219105149 447212367 68359107 623205636 314625185 778417110 965331197 986791526 172882851 733004522 598576556 832554121 96649528 861995024 903815877 933764261 559463363 964384201 498751088 890592861 523077857 735797741 692279358 788916616 664686835 975717901 995574653 998177352 115412971 814907337 183936836 475832791 624570163 957065373 256039327 326013692 780453015 942173115 447880773 773055998 917946816 973388246 997533845 998599741 557387925 631836019 819667561 884752622 486204439 833314525 782140 831977677 637116585 658541537 754386467 979516961 272283159 414233679 750848930 772316492 499794264 510909709 3154150 793517205 517236243 930543133 507517220 781383444 572872136 867005156 922979481 986455613 118896800 953409889 942237453 987103338 794653858 869580252 72659088 392446292 720639937 839305293 185906425 434660014 73258628 480296458 570760487 834381166 666021974 955682282 761589453 877159154 737457344 902600760 533161904 560093614 94730750 410249010 685845713 902868866 260688864 451466119 761771213 959529588 669133706 741437136 551492097 688249094 824512566 869186454 750020126 975415931 152350228 950451103 909522768 915923810 994521174 998892501 826310748 885458445 33451068 553282566 3452136 12478533 76167366 760708838 796020950 902426270 13574692 447184288 460575864 953187846 192198130 205942571 642657684 999627854 503756552 772872471 996913967 999674904 290740951 375076995 753382147 852590206 526817895 923351612 405341897 556964893 642450866 775708801 653457014 667911333 152650741 558915685 200194912 897517397 998326584 998645926 879181084 916511297 474770723 719560622 496016836 626087521 661847531 953019614 605855065 911275720 655398038 884740889 711229120 890158961 456469575 631971509 271465533 970072251 970314795 992399035 96367576 918356608 136553029 363600758 864063572 908418337 866240492 969415208 535842502 953701573 599498575 860891712 154107722 481485680 428323984 925677699 817390223 963583304 46970099 610908237 959406052 992004030 276582080 305754508 236330809 323529197 867841943 974640969 907225809 910114169 69587406 634427008 541515810 857649754 694079263 919139740 37157160 216052352 318560565 475344656 347780193 348835128 848159454 920223016 552957858 704155839 711960925 781490093 20429111 705001935 773649652 830359704 866456048 894987478 890845892 962855813 249660927 746581317 925089214 959489839 825592875 879212306 637965356 954512432 150843236 690495658 261071764 829596170 548546688 930362074 75956646 321033869 196368061 704549338 553271954 594276393 443263032 951953725 858209098 874049106 593205626 732000656 357158403 992756892 372610638 969304590 707816870 753860950 101953321 910215218 727847895 845649779 816193698 987444427 952776425 977132687 736999978 923859952 458934680 962334196 735002079 781491186 462361530 795967279 765087107 807508937 108705273 531020951 662880981 885887921 378452450 663147093 423745542 988547253 568301955 574045485 906485951 943258545 901360741 934916086 716546620 825207190 358409994 380361337 412990909 666494221 233290420 311106689 737709647 933043076 476887798 771863722 750367170 801448266 321790385 469808043 525432804 679157102 778342625 800121113 415794587 928288495 686830112 988525559 213349622 779365176 239588236 313168828 430962678 973114327 754706162 872588057 567588278 636734746 263091635 482512939 842709629 999442445 802590351 970669850 414131954 438592851 80955136 566423308 464561214 818493436 539390086 886832898 876246902 983087806 120630302 825111363 786871763 803163399 452945507 484165176 132525509 231655914 926443468 947178325 635343547 716946417 178875534 751996648 805977243 877799296 990745701 993678133 47238565 793528040 195524367 629769465 624348699 784479933 119982866 971396588 237562786 445173067 902630421 954715386 723575752 832437665 671394294 998937732 69774889 81501507 763504822 881931055 517076913 640728606 959940237 971019163 789761026 844960310 275901603 346967848 667176703 766331921 567517730 706317742 144047632 500947088 347729098 412510803 418578714 766914999 442982122 620499012 606964770 642984823 353916739 524225041 642488917 791492812 654641198 831920494 572841727 762474062 42984827 594994199 909836080 956811509 658732054 968113768 575477094 899680932 190655557 198639523 230908413 593604593 988784375 997262448 947865083 994347710 40077727 357640017 304048716 766885082 896889470 903070880 456703155 500247101 305864591 658374292 441650354 990644896 931677916 985264557 100973307 576194531 814079781 991398099 175026598 334232215 515821439 913955516 126025823 736428681 239209450 857415630 371530730 590693571 215833211 276181166 234076024 367350368 673424478 943921654 213643866 430906468 39884117 112036055 969616316 997957410 897710541 938825923 223070346 907090762 211195043 242511840 780910076 856114677 831748028 908945163 781607917 845177171 861946240 878522583 461240999 465720705 173791194 434343553 386384138 603402296 342211183 783305143 948092490 948173412 96174408 914052479 87304330 556622349 953492442 996923552 924440231 986596902 785274323 915668343 275063274 303085513 57598697 312419206 269521135 893895784 798701783 828966427 762213578 950963132 205802308 894840063 530478557 919593616 484170591 535026515 254372763 848316861 33354042 170803022 849978415 987185466 505754287 726878906 772637639 841634570 103989086 254905056 204777707 298522533 935322018 948704382 171829148 828845455 844590803 959391329 531620055 596560817 57010939 835486208 2240288 860433047 576831505 867708639 575584915 929906248 357536646 401884554 741964417 773893656 654702740 760681207 182304066 473499382 369985849 873878234 171905581 526574090 432384449 719523294 56308350 278770747 735825494 855628122 34710059 132631224 750285344 934509779 305998105 755824583 461766915 519786414 745316204 831554427 402744939 559777936 104517129 973420882 412849760 650121692 668122806 912497671 234370177 474287080 229875490 873375779 905485529 929317329 640095542 695366880 601225260 794035963 668654316 890147942 884916773 934558439 468767093 778127152 534846391 618836686 505012193 570069059 71976488 559497693 16786627 252295808 791984342 950930394 928650628 959532544 954052554 956012447 445610020 622078333 827970858 989209505 559728034 988374113 581187410 725399175 660375617 688306524 925890268 971685079 368167747 394566395 853943974 874441407 459219991 484163673 67415726 625276400 297803631 953034019 701630433 952935495 328212650 590468347 497331099 566436583 378227232 994476614 805128008 864937000 888882577 963340977 628730246 648165763 282769029 795914272 695671198 788106771 866703777 979097945 308311125 473164704 262584739 783499023 486478655 635193894 271437805 511869810 563452376 901289740 711278196 795680017 821403440 858114580 445715239 898035125 205286726 329218908 956472436 985435022 311284999 368931753 928789167 993420976 653919758 903924924 917450040 935046289 6093082 893590691 82159108 934321540 559449365 585685581 27623974 801883786 792079998 901168596 772287449 898573124 136014347 604527391 790672600 981701098 391437312 753946193 820886627 874656372 16605592 926279880 528130651 547561740 796340564 807619705 320257232 331358685 745109630 878992357 527510987 985135479 200761245 917643565 237857675 709118598 740034536 767281876 293646355 849103869 641549729 728749111 662361719 666063888 147693371 554339922 757461339 954069873 438944138 659185808 517304152 552690527 345999632 593878268 225370790 505144113 670805905 938219424 17182432 935136253 982453396 986201513 632821899 994696053 539177178 639901515 705435651 933987272 499002731 727067784 405668056 691142473 527897889 580319654 136803429 291844077 978377083 985310353 889665185 942125361 790551817 936161183 472386963 791349062 511692227 900462337 246313860 588184825 376313099 522965837 330164091 802144657 920631727 966979785 537706795 929120388 334090501 672431216 802245382 978611309 85037771 197376180 741266476 785830334 342005560 642707169 654952316 737603661 419790261 477777275 364029923 777947957 64169134 135782451 428277323 605603266 338774250 847158801 704562736 885661014 583922308 667401259 708595881 735939650 606748415 961022318 744864265 885553110 841268957 993421601 314911744 695220067 250769537 645340136 535283645 688034671 313720646 609295263 512473257 571922797 605449109 875954333 59527449 494660755 894247584 925522011 872675083 993177686 623371695 809491871 519720193 884563365 651357951 714602683 308238792 553857981 789173990 966891104 276640588 507312893 994542210 998412363 159888010 238112500 482180311 893677844 70308714 498657047 614043700 623408817 743829456 835246484 659589275 926956907 821229988 946650728 173906525 222953618 427829077 914498718 310593886 848957079 61855011 629037850 126735380 783886170 223485320 935858549 253425763 363388824 16741784 699946307 107874763 803521348 780867852 868444468 970526370 990522780 432888590 804318650 885623812 898753611 864134155 972795009 565698967 722648543 392924261 835233721 622445173 800627020 921581917 976622131 584576259 758753905 57428297 607540044 236901179 472891977 595707966 765387725 334732924 582489033 922456087 977398231 256647545 277917889 318005457 601600908 817651376 855805269 842277799 885981701 792925097 798001284 621448502 714301578 614579256 670763691 69453918 580610463 219666196 616744460 32795970 285259263 125521514 720153916 560042707 976167542 917643837 968101639 510005205 606234363 210958979 458538300 815711988 934813163 328352076 627938130 605434474 933288701 786465123 848086385 214677868 706548917 376544329 691271909 401206297 889574206 908102102 998211086 245551764 752423698 374300233 939151318 864393942 941293318 926528434 962151647 334332030 578634416 522942572 855595765 120755734 168361492 35707478 742831653 407267081 765357191 570234068 651792276 821000446 936195169 721014784 867880000 142859050 530713895 261085527 925972991 143446533 659428483 276752435 699724331 819762359 898863721 252012834 727027794 527773159 535080297 450478446 952888454 765523757 985176479 803091746 867064320 165796073 227793959 130399936 969568425 32352870 228550490 457355195 530251863 351906850 639449224 981404028 989055175 374346230 453961163 81840268 261590053 698993457 819628789 650590799 889102712 597174162 950198698 803086808 828650255 345886184 920644597 190252560 701663792 59382931 817196954 8023610 22827340 113601266 134365463 652441909 931168640 552107914 893092597 136793056 743367805 333308639 945261830 127343062 973726831 904986683 984816731 833397687 878894823 575168595 889339573 565355970 876992704 895276993 945222958 487786263 523912999 529681724 695383055 293627004 474623365 834324815 988279297 176209863 583623000 309021223 466311008 499012318 511246060 612842977 925380676 170228370 605418658 532911697 752772060 248678935 525134240 42640196 474580684 596950856 810402219 772735474 802894187 284808971 372314213 594470781 882665039 564428183 734136986 589588035 715349845 652010427 778745769 603246723 739356517 682847783 895829608 437964778 998857037 25963568 442315344 870077957 930798621 560368974 913555973 908515828 917438063 775352258 877581268 376310212 433304664 845839670 932213332 335516452 755712076 158794089 691213672 133435916 785056683 29960447 616373073 859824844 996826412 742497760 807090405 364585281 461878499 165325155 726185150 428685247 948001267 119751064 606913689 18978945 471704747 357164503 787507460 552451797 614051613 875408199 935339968 191438488 465929684 751789261 946266140 485819481 923211098 862804045 878749873 670345482 938962555 223593960 947745901 54620590 959054012 794286096 937563117 72146835 680084464 299093314 998347257 29988535 253426738 526123195 733858186 173764179 469427670 502544275 876670132 139971392 615782575 19199385 316503285 347184164 536329910 171593790 403448631 645507539 797595019 651404204 830386002 175055166 592101255 269287821 334320547 774128096 932075031 80382536 116703947 688807800 760492833 188504223 614555098 862523937 913675635 940462900 971016717 897048573 918944644 446433343 563861772 103847549 687609515 665333703 714278256 901093567 969729324 319294053 394781830 285923995 929036621 339925469 428768567 629221707 671274198 866176446 886842358 305948569 906128056 996634369 997687967 335972411 655513095 902745185 970610292 778183225 817580215 247682212 582353539 390218423 748266167 480240016 653818629 182747454 486089424 437719842 623830033 998449777 999860889 991618171 999031461 587925832 669365699 440635934 492615578 657341626 668079351 265204331 331971863 314475052 581437762 118334994 329369205 78600949 507015273 347767262 359187291 86393537 980385053 630877223 859677454 963247238 999668391 404180788 621543884 679182288 866195736 585023886 690911761 750205506 976749552 713068561 944782901 170467672 213955567 972428513 983921763 641095197 976306302 663723501 880159373 133807545 661563979 591210751 727722090 666675362 973011597 38951997 438471250 147027766 241021237 932107036 982473335 172362993 238128596 200973444 654950834 180121197 881397748 943647547 964379354 951659596 956200513 770839081 799794472 827983166 881874407 243704663 795917946 585010724 875118729 309591481 911557345 351952265 368608071 865094888 940273227 568760647 821174763 405400305 755670335 580550697 945632647 979399723 986655807 687593636 730456276 952025912 972330597 904025305 968880846 637898144 854084867 342673966 831958698 355304212 993390387 219421449 641562417 666445913 841702318 846749143 865560015 316278341 437959032 181751034 397839798 209322734 434184437 171549326 588439168 31884811 842652904 991192735 994499691 496514599 633888625 449853073 482786560 35107770 449577397 702854895 770024860 190196190 704282362 817237676 976262759 473038196 847233095 549531059 854061538 276351116 918531122 868157133 902759470 40747234 334280086 748767190 868922225 9695543 667400116 884363009 945962072 655395765 956586571 904377884 949235617 337915484 573615220 355635708 784667306 481160859 810760901 195172514 794090301 930922636 977809035 886638079 893966496 294625567 907809024 616764193 821997361 765366805 778244294 479718832 839312390 751117165 758460276 662132304 728564207 820418784 848612147 206972079 344256251 638872314 655772833 844730310 886223380 651260267 745913745 507956943 984567927 44668816 71175122 763737729 793011018 258566595 613829599 764522492 910579498 720961313 785495490 235132787 622253962 83538852 609101178 644272234 877958465 310619851 348911798 670491863 946068662 132825903 321169056 816490247 923629433 169862572 857229717 829475623 914333065 214571368 232712703 544329958 864301154 138803889 209793543 505142530 874172188 858018371 871314696 621801384 832585122 238242982 884434292 426204364 487978341 815611518 944173515 156671760 776271465 218248067 793423180 248496050 556987302 981661220 995404659 205954598 842082981 866605138 912349452 816035589 986029619 950744191 968781386 729572509 991369197 18856089 419223303 920269472 944413101 433390665 856403283 800057920 863738515 868549213 931067798 447182915 879412015 674420639 914078360 346218953 651875177 673867163 937987187 45997478 859020267 785349040 877063138 854679770 939256653 853248825 974551737 977024517 998136330 813846320 869996592 962172501 980198938 768389331 854512057 567149974 821176352 176200066 945139726 198974690 537206673 123275031 465453770 483107824 504855081 431424153 997861837 292993444 573434037 140832778 389859960 36332953 384898033 855822930 996356153 574413630 963518984 599772108 941050149 841945614 979522089 525128273 552656276 414450625 952084626 302574152 572230745 116219830 812767454 854349070 984911847 46799508 777284218 325802117 548815484 788215164 850374922 160527008 366437838 614773 817223933 656173926 721407895 304684236 861338725 963188532 980418687 719235474 958713315 299597434 900139929 597429788 682344820 399068056 456231259 632535316 887123031 450937525 844018116 179882306 641886809 845952232 893738288 411203638 877293327 215424487 709951435 925303211 948137304 102826211 916757665 695374520 718948906 126227677 530924320 603848703 648536934 869764164 875420765 841174453 954116930 142580147 413061950 734927087 773921583 427421853 538692824 830904971 871223760 27070220 597922692 464827849 669758462 543178996 866009221 541628989 805994538 890267430 971545197 361861095 394712281 610977213 628113036 366715717 855040528 907512440 959810099 807366581 968461094 13387500 898471397 853116728 973191913 337298092 366354318 907896226 930057263 909151988 975785521 287909665 593047987 118093528 594440617 137586047 568759893 235220686 375382130 401495330 701953861 270337335 778735553 109944137 298442821 675233661 814362439 517072622 996523294 524825141 954614582 531315314 562493457 112961085 298611641 130360522 706811938 428718347 759397096 680025493 866011253 178777518 442967660 992685268 999275809 102122644 269693000 984639343 985373078 815398727 957338905 5009894 970081387 210071984 655305514 491369611 968931657 135839316 302769834 172155592 464479943 791559963 804549785 173121119 510587723 583096124 970834663 108006602 361805958 419843155 985669028 148122350 668270197 863728411 868285388 514160868 645301299 926735637 938171078 79218969 601187127 313620784 740026677 948914354 977119012 98728916 794559391 635140086 636532769 883372316 942234136 325288194 449900680 12491109 801044440 855353382 931579463 140228837 614054057 468312344 534869489 346286471 897333833 379667755 955049089 150572342 590850603 555157559 923832708 688186835 814990779 779632823 988946320 534680858 590204761 671935630 957396454 458164519 745056513 406873446 851947854 648582645 871931835 548351890 648366897 260216709 754374987 576286380 577514457 618054155 900412618 718000802 750165107 504548362 797213100 891154885 937370651 645875340 883104281 629537458 954193129 534420663 923727553 917792491 995960946 979151594 997324073 643300494 704981414 173053679 946105068 695442272 764651143 521939820 582730778 292819113 648819329 218795287 360976307 969153386 993526292 643312952 911867544 550031532 632879408 676730871 763352340 334687717 406552049 390687926 436204953 780112402 815196792 925812176 996257653 618671779 799297991 893075644 975401373 619307026 991479272 816436092 847957436 319726269 894075607 237813421 238571622 324462804 520952549 786080640 835373959 64071116 955840987 756854090 788493402 659147389 758369795 861811876 990792604 715986350 995877314 206849235 938795748 138436858 624858374 776126374 987714659 168329021 191936577 541426838 752261372 573438916 659210652 833010547 872400989 490188230 847739588 631746696 752850020 839644761 862715808 457023026 671729198 454754715 778545816 296357481 811496950 591690621 821114710 29808315 105101070 814478268 937328575 292158105 725005069 316585275 634686160 818505151 970667992 417463369 911039462 144746282 789503778 383676315 683976099 856948647 888435729 762944537 891250406 738469911 934596438 852145384 918300004 162896876 206141577 543172924 958151234 296956598 873461434 939293972 945805776 805489500 830104752 455881013 575760264 109254382 776816024 630768696 808615514 666191236 978833368 654861132 715938319 598484276 837479010 275834509 669102948 740293611 986244133 682619018 933231768 949354909 985060602 470027517 824770783 484865921 921814620 71105719 401108856 526344001 560061130 882691952 987803697 969741522 993108208 432438757 654963385 249411592 961813032 765332184 798541251 894216986 985013351 395061216 626076603 635219948 683224115 715229502 923898692 50118239 437129844 723872045 898529382 444888210 933859559 640388179 858144278 472712329 502099085 715286162 994894430 787807724 939530125 357558010 707256409 145857796 674835622 855926958 935226586 920110973 977067865 721542110 903657016 527302436 721074830 466945824 909730272 442348553 532176049 928093723 936427013 465055084 653172813 652714132 825057435 806303023 883393957 269276229 655549765 798966202 810870604 237194723 801431356 660975287 931420720 794509609 844464188 49005142 138075896 96248889 325877307 684602343 758960827 887519564 920452571 99280247 705700455 524211176 820188052 192704883 345721221 346626170 635324659 660100089 777074427 620773526 950993237 946760768 947711605 840037832 856538362 174285673 639830701 802205592 875219292 833906691 959685143 557884577 642121229 547348665 653301345 774089159 867426927 734139483 808267794 784102272 969428741 208140624 694904938 539514970 635350525 702475709 787577094 420528379 816749852 387843422 808381557 659684657 675712151 856575559 935256878 252113360 276376029 972638226 979754594 611588459 691072457 419619795 428762255 119370805 971756362 770941190 979460241 317724143 623764165 878102917 925124339 914883621 915243807 10040328 709069686 469955295 902128780 279781153 575936621 559560613 579932787 8077963 161303562 123559373 385110897 559649404 682847130 137010679 943526636 804780906 872339787 15509600 77270287 583371815 869808784 954051775 956282323 547902880 982703486 603884140 929264533 11480516 790774357 831141918 844739359 736780448 922652743 110981806 483188945 157600991 712999437 822383228 893287874 203201137 570603779 700101733 798342871 242116868 440391445 732179194 860233982 481273642 700382640 339061631 872008542 593209475 629352568 458719252 771440801 982418053 998186260 900868019 918224704 936101364 949910992 42976313 249100364 214576187 655331103 131993624 492178293 926193469 949193874 511424752 772674724 29014716 616305290 624235442 806682633 450963670 740584493 546222770 612188882 951742187 992547525 103960817 970305180 462009322 716931063 777863781 990573122 142305607 256469053 485278730 938935346 202865822 855524168 636764881 828765361 166438862 695651566 222982211 349698869 696944647 751010997 268077275 836192053 872952145 917909261 40350058 51192887 730390765 852454249 825403767 957320167 654125401 996633957 469861234 783942318 456061152 605925760 797203848 842171955 275999094 976877865 630290431 935079173 938199061 986786148 846242386 922822699 152760457 867984623 420384734 768788174 179857160 235050956 13002397 886980938 375205547 620319696 768565664 925488960 475023959 520397614 622381281 754474893 795030101 944498426 941783584 979367313 151841444 805399185 724208394 792300395 858385796 895161756 508988107 517168562 709258784 881375267 219056163 409622379 695515626 775749363 535081155 857224857 775384617 854998239 455021032 985946404 645409079 728326429 17891908 585142860 278397761 561011942 181845193 555180341 661614317 751002066 630464222 678097096 800103127 962001133 351806193 501393203 246642510 355730365 377196781 873718155 678808862 936881947 471209498 646807351 174568036 580401879 345747287 967489400 69649599 623495491 453393919 553743746 630897276 832736451 888472172 927873254 576651187 844644331 104490090 762332169 849771592 973039153 613153451 719410475 466222846 664022450 302037103 354243551 919415940 988891932 546118534 687229044 997989333 998157883 822067285 961781069 391776225 870074073 491155810 748245382 616698503 944509317 916601811 965419642 640676420 689189171 379543379 905356065 296609972 816834849 996582364 999174821 751109715 845445200 704568957 874181129 290646207 498653489 502044369 521961272 839911014 939638485 921580582 993108508 845370696 999220331 946700345 972424334 511463885 778859431 405298251 927592886 133479890 599860419 599535024 804740879 900483313 936436167 152928528 221462146 764069955 846716994 582501738 803441204 317640826 743611130 228352427 597033654 175042103 470674105 415146471 544563202 29023193 561339238 116419874 713236152 333952006 848074414 223509612 953483883 607402063 925630224 155497264 198034942 598608132 718060864 165676852 651217601 364077172 579676846 267381457 675140946 268198025 746966882 5261910 731438136 695690541 698582120 234085062 844901760 439496986 568446849 634854896 661810020 661423584 873489615 481642553 530331268 382659644 607296792 460393999 541069304 65124440 491240294 956382062 997075563 479494752 489838475 957556808 973523221 463292505 614500564 670610369 722093406 379425809 475327281 88200999 479874526 992771852 993888806 122930579 199336688 781148099 946041335 601578943 649172146 733070993 979216897 704967736 906370069 540376902 729730683 885084449 887489280 649262096 765126539 845899477 946066883 414404638 737657716 927515327 999568095 694162210 778629078 527513268 867755859 787713246 803451247 610598771 793201504 358412925 699449849 991889358 994025698 223253150 997690111 866557348 877307068 345517189 687877984 190903225 706468677 816040996 903630453 908553161 988425893 962775672 991987990 209519054 356656345 334098049 847783334 966179727 989917459 820211870 896915651 556792174 603840380 353236707 964216704 972532757 975218595 846243965 988471804 129116514 949216768 490218063 929043430 395894755 523752063 454620768 692339097 405883614 472534136 549427152 948320378 139113522 211372733 618770495 641354487 468653330 520197998 436614696 837723673 302788727 852716617 160950359 788217175 679085614 760601635 506523746 597705789 799260345 919625305 905604927 926209116 735927472 751938717 551210550 735023619 206553623 853782412 839383907 917055777 132388614 988812334 81112069 469755638 750670776 780288198 136384613 513963868 103893948 799675400 45865275 554956751 847926829 874345267 586105622 662124595 900939073 918138729 25320635 644747424 481819977 724804803 930068328 972001661 991284419 993718056 78783935 691025054 568280422 848851365 767683477 799336896 202765713 782900117 285576945 918008371 911944223 915559401 193314089 248101368 3613939 616503714 502738745 641781449 39889880 267901705 928310208 935527584 501928995 580463489 30495631 344044988 477342966 666922402 829948751 954869992 350842696 818527738 249867321 451633635 195617842 389727642 690063911 895768290 476810826 622911446 307292554 796267034 408248372 630788157 42868242 747365590 650088245 990483594 379374981 499569925 959613886 960271559 822256220 992542853 69186481 749138764 420678600 759475257 854786276 982880854 530028457 702226047 547745243 726420420 516104803 771002016 962082877 999881542 431351009 871123303 523915718 827003687 571272055 824591606 474594069 533282452 772785487 975887120 561069743 953503506 7466415 382999544 137544702 839126736 471153811 666662665 266176073 767370115 368001258 998158383 122316943 561176223 719829611 896433309 721132767 777196256 834250870 866813758 922229472 925657605 96002213 842820353 933100420 949294501 161378348 602887017 250751193 508102461 630470218 957510218 147304813 684962486 292296890 805477113 247691521 700517221 680934211 689186010 30269293 968073361 271537709 493863562 977306895 993551132 56806222 862849789 196355716 436144184 122658947 170604745 152879 397896211 134176890 216570546 740626456 893015963 143007844 321098930 82634263 725281374 702174968 955782777 761699311 902112529 755592297 772577554 776789888 868648219 268941346 358869316 670948330 693487281 823862500 891072799 338306445 397439383 825300924 859916588 160299367 638227834 486344755 733660166 319613674 528020191 205661609 328670006 51398778 104061365 597710998 885776547 246460772 859701207 754570448 831053937 425987600 691725926 197058797 421831885 816298446 877047467 29949313 626153942 204863688 665090759 669901824 904515516 867237981 979671208 432987853 731919347 957243485 975679211 733035403 922303575 907874794 921827170 464011077 919855321 712521672 809813340 920161106 946232346 900597784 995171555 745071302 784663382 433784815 859026213 778227387 788874951 860814356 891969683 740293744 988698850 100710895 444081213 975655551 986358879 551789354 573930321 662050039 747073225 899867320 970800131 39163700 483691759 766234356 785775776 803625944 928974521 900706035 957440638 217117425 938185020 913890121 945825546 905620528 958164908 464930801 559800710 192574310 715102341 552535118 933869216 946729853 995947844 957811938 988620966 414312896 643271196 838156074 861499859 157204262 932279338 221831444 810525389 31295893 737891539 237545183 465855663 888302727 936881974 299982735 458449877 621424426 889513071 936836421 985120729 565295317 805800569 498136036 789022724 53016174 412968612 770653159 976925467 589486900 693425887 805829665 939007835 546443087 754310859 759692860 867865533 478197270 912691770 461331948 647714198 49108825 99819457 974644398 992314556 428437425 933395203 462306273 976053618 820221254 954032110 589690127 715900032 223587972 236761721 204557913 218811388 395661744 817168317 600316350 803253817 532677548 866554304 219825669 622596152 814341650 855297986 314621569 969187138 827522122 865525990 506023747 516031387 870202794 959689401 692612779 762279096 659259875 790814919 301088028 805293651 582967014 865442673 330329248 788053491 572986113 792973425 90480269 761517968 46455629 606354725 829343781 890587277 475251974 959744571 447813300 588058888 768732709 865017399 739117620 960142617 120470086 503389190 863362200 935836228 437501660 735994745 444685661 815834496 190464390 896436492 924122163 931797327 766603012 816765863 765153751 784783792 134769066 401982591 500744838 833733388 43034246 453703823 52296878 166539459 120480736 543859118 780236559 787399664 420036135 828898138 882088992 922272470 818274654 856426342 412722418 510943612 503840509 989764369 63192401 630569668 296455450 675716101 453448037 569125623 373440513 441798520 653058069 687807688 46451594 176404422 300355781 829606707 78551992 728843669 69048048 800157651 344973827 799343434 14801967 97982250 466366018 606272905 39997015 316622579 47409772 936788353 49138509 842247824 8325791 948308336 709974977 883372808 899959634 926630349 685388939 741916064 434455214 597957660 883679397 918369620 248798548 458273411 260758848 451186556 570119645 684268673 135957454 569882115 642956089 899460706 315825063 437262816 300107848 716450737 286515530 867203579 365181303 602190889 167856211 456431125 317695730 753145232 368137924 864568836 586026812 628473426 770266703 864069234 915193869 925713136 98244847 942887816 222528501 383975941 345075467 607493899 893930510 945877966 544822238 979639390 296565424 977099430 304448445 669009498 617472594 978561876 253288230 402868653 459739285 519854051 390786953 968759005 291699525 791848706 862811657 986372070 748618989 912614306 365464829 848020637 558863929 846466705 431561932 529032324 513560827 944495427 833716327 847842149 922797775 958259693 669471625 958346592 384051006 416742808 136501925 195221216 488189200 538342003 717902732 749237993 619518335 798859412 888933129 929142636 858835239 902242860 655172363 981791234 20198249 31242771 922627821 999177875 277964007 822969341 709036191 726183558 1886678 462587830 459571256 990182642 580138775 820337420 115879953 309552600 795610657 955470043 506182082 843030343 403310681 406682356 982688834 990567881 252942647 642338654 611804515 931231485 791998580 891114652 18822151 138374667 452539539 880708070 499289068 569879392 493810167 569127519 188622986 212835508 853093391 928790203 941962643 988044694 934244623 948389388 865082842 900938511 622818018 624655144 460226637 712619945 927381133 962533505 587222523 734665592 30918774 833307807 178563499 997113081 157187293 373320971 601745511 685334097 424686415 810000891 233523470 264919632 580116487 945034039 990853848 992981816 990795272 996710931 466910024 779766867 504720085 642412917 608159028 619433955 957909346 960398588 401366772 416439306 57714030 525397074 457522116 709425386 850642602 985340297 292328334 540402349 613141511 708490113 137786378 894958843 961110608 998443281 543489633 638777508 455138781 829614043 555857875 915682306 322485803 989090313 690807768 894664000 105439098 974750397 602564853 786043300 708124203 732539728 11407091 890882382 972541344 990218770 814939289 908202547 652323748 978349812 869595321 959813411 626500198 760178257 274727103 881935882 43034559 910677282 350437729 386771362 471837427 995207223 742702551 904305341 911741598 974682422 944930802 985225940 67642128 471685215 38472904 854013170 129614146 851487130 192978455 675628595 713309271 925553534 701873549 894459489 639332287 891938274 882276854 985785076 47115307 594213906 233943645 320541863 919546879 978669809 844483477 950027145 116856006 377516067 738584085 802286328 974548688 990557972 611625480 712979326 67377550 593081771 353802859 652140117 683152401 753826972 785564427 867219969 613185268 699127886 887160148 928718596 310050571 695525495 479630560 997255395 226655094 988797300 520714572 807907045 8763064 977219484 139709987 214409824 223590568 747596163 901512755 926551315 281059771 839618233 481178079 815984416 604392109 926240015 694380732 767102692 541219766 545976357 65361195 775986508 492481480 848486151 566181784 997732631 506261974 837479235 307702990 686719003 424843846 992942510 477065658 703113256 325583499 797375679 83928391 137234513 820581104 892697418 870384479 970776604 230038509 892307388 598630336 902926962 503421816 839077910 391550655 636424192 368619937 509660916 417734461 605752474 905222573 963549714 954996638 963966230 310150203 770276604 611311846 887882685 204625889 239780026 993374113 995282307 997356238 998189664 374767682 552615407 845419982 932152235 145313041 683723082 592276597 668594091 267887787 680421161 442163262 787798208 248818887 498457668 582706026 909192250 965624252 973554285 149227488 678184532 532318510 785085926 645192394 789817165 587902449 816765693 621774982 656640188 790290863 987467032 113914283 802278641 922172542 931454760 328983407 754427928 263040440 377197059 737195463 988368309 322561536 626861357 253954297 729582413 950941122 966583380 327721106 339549487 77302277 647544782 531698623 691971332 806713422 900948866 866387957 875410981 902615611 992067494 754602112 889924344 672240936 941587870 238058606 961578533 986635022 987019928 668819575 977834912 446438954 597195507 416277953 832593671 965151367 982275340 967004257 987095865 471743279 534114178 236385234 719229729 706756469 738791437 366179245 448317706 338653004 793945629 641267560 862255292 583349388 901359069 893193224 986665513 876704489 962327368 487983486 618944541 873764653 936186258 477765673 979288019 293954171 540323937 323507085 330370474 108956286 679501564 788130205 890194336 9779603 577550769 969088393 969600990 226950904 759308827 459997329 641317525 726016483 870032122 372445671 489787977 497214622 928566795 776481562 858861863 712009126 740483518 4299950 873163548 70921079 448019445 567976202 733821648 35877709 398937821 743106092 998497603 638381259 810009074 378682125 903405830 197554247 437027690 905443008 942618861 127495203 136657346 756071152 848179923 824467494 959876899 196168978 605044089 329366080 767284028 374376381 783715294 854610028 915426790 559453209 602524551 259282074 915892187 496375444 871109801 469565926 969304008 875753117 981881744 601409510 783619197 384246961 570880129 518151404 943981845 314638984 446728021 375033845 708556655 163076678 267975994 68860163 704412097 355454099 415213207 56112036 864788465 296830067 367201086 282874998 745942009 772164075 822463136 311688164 870965340 881537609 995426810 830453236 840389181 35994128 301955801 404534015 745569238 779075415 817179966 513377394 547626110 989314348 998664801 331552854 375729414 959859043 963046456 447664572 994226396 580449132 712557787 515830887 836894574 725030190 971448597 287657707 726273345 887728050 923708267 276909285 685473570 417107437 825833813 495528738 505652119 441382931 477112526 52917091 906418649 385121895 835645847 851544491 879654314 479980362 894439434 705029198 960502044 35349951 787121637 123424673 680725652 435955422 982719023 197229679 592857980 84812249 306354866 581671485 623752533 528793596 896809624 907669335 978073156 229924049 370373149 879019706 981724734 752149622 883943360 878316426 916707134 243241755 670085768 654392110 780557034 686169028 832154277 257578924 277588606 471050948 954045135 377831846 992746755 365076494 683600013 699788338 850600279 10149606 439529350 395785121 558559513 367181664 477542805 566096381 987462440 390583358 401254290 790867478 796227454 5938372 431498850 653935404 850797068 56567962 817711136 932594369 966327369 723785050 788425468 543418892 643711427 743755136 924538107 388166450 812099463 97321910 549815325 77019176 363526360 278497760 711742525 892781915 942082917 991437636 996058567 691347194 695179053 279495819 586853371 531303115 809891733 255128057 542761998 890799565 988190122 783455508 991197425 152436225 346179626 195165532 656348631 11767629 625780518 279489049 870650265 336808984 579907501 891120281 923534457 329956673 670750652 810950761 933989009 285169090 930469861 861641641 935886932 586279588 590370034 346451740 523935963 732375263 880716896 450372274 471427263 618139547 957269143 166728187 682596442 116838315 398497577 641659249 708367998 469807663 680146116 514402403 597295084 287782089 475742484 644399720 719530277 754214199 918378367 586792087 725394515 347053716 856692873 351978672 624077361 472263220 873824522 822241745 987277632 155813157 433752796 276833044 286490333 395544738 779781607 214685231 513158123 263932025 286550122 90324072 317515262 691910049 907444987 433650621 828433466 764475327 915901004 113546908 756882897 674411844 928265900 906518223 941956274 983167272 984636541 330095841 868213089 581489086 629579084 406693998 914057701 517535339 653556337 101416302 275437329 589434920 643334787 287079822 739432168 620947945 685432470 85381627 250235677 119457178 208748927 725789183 778828673 715304191 800058039 755828085 848642107 750455985 797404254 207083418 413461081 220797973 784096566 562829787 617155271 578746677 583791583 999598757 999682480 121756250 507016072 76269696 307047426 331980353 684495070 943255029 962908555 515910152 725743222 9978770 147698815 614804267 759938098 154670566 710056073 721719022 969651837 195029837 453930707 46434284 599324613 67222780 116127573 857813903 987521763 539570721 779755732 710285402 773129095 471273750 559135635 128570323 298824903 724882221 742694496 966195339 989164292 177840682 985321294 491273367 801448882 683804303 836783871 85088330 468897687 23072215 259949867 500611001 504163557 551053113 734204347 427850185 713153170 9443968 930334925 167806112 983896649 667285857 738377607 130926433 219883021 294568417 734930608 32598805 202934339 257652206 894806642 978093508 999079025 954435031 968034772 500020196 744037577 414203913 486267509 960331626 995250345 984021087 987140252 775689348 821676893 843375700 885040568 412046527 788741606 556443679 736044496 821202690 891756853 123211717 155329164 795274340 930620177 365277307 982838855 646917214 924060013 886135327 992611874 868289115 960067751 732886122 742248251 975346774 976457990 593656428 797342438 53426206 459382194 975533059 980672758 355551640 513117077 25823970 940903838 643744224 933449076 33246352 932659576 88877374 851055208 203187731 640045798 677380011 846934348 720199809 857641144 317625949 340855972 53227379 439887680 430159942 738817084 335475523 541825451 464766077 783394003 331637237 366220405 648724058 694554719 842299223 876446611 333620223 349322244 992265570 994420678 200331769 714209947 146850447 418172808 990231059 995858597 874755940 950201244 768501468 835374385 133573439 518820669 75021465 739269480 116178600 611910621 790482983 926038517 803991019 863837156 993357123 996407977 817208681 907582631 505672589 908246378 102416912 125580452 732385917 845791779 866860633 914546389 482474044 568014033 67586314 241492220 832784901 874416518 959218606 980996775 573827316 612922441 471969995 792427653 755000339 759513897 649915109 660146109 791566972 977362522 634619367 748683967 190560139 968520341 465751078 842666186 539351241 698354511 123929164 861867635 883372205 900022148 66254622 435493128 120582123 347819669 967436281 985453860 513381905 708931159 929205875 983327617 420120516 523715371 434482530 966365214 334844299 378663468 847366890 864350729 38730331 691025365 413035440 595661037 221627119 290080295 706803212 813390948 755416765 861499809 217959669 379815451 770677117 839024701 258889355 449822591 574087170 903413035 182443746 715062989 679949473 790264483 667288176 997897121 423107468 769676562 606510184 793329727 442532302 565152932 242398858 750139737 754864734 987787252 491068580 996408043 290605741 551083473 509894655 665903363 962038176 968106243 701331712 784276473 60814197 762854593 453228241 569110522 483166498 786841535 708538073 794114779 240826606 650463957 688639382 878911215 596330656 985854470 55520190 849183998 693508865 761636767 82308464 866377461 774344827 877845837 865610292 932917021 910940800 930854003 93335642 408545383 435429171 757732449 619495427 964006902 490015386 659727950 843076990 844157484 596908305 948080385 857667121 953165574 860212781 963127811 898513667 948868530 619026410 679719929 387304587 415443257 46761023 447231078 854488290 909223764 671876685 706019532 722234167 738548637 234953098 867802007 343780029 505657407 660619647 665146241 482234642 554887063 330895910 331923096 323411342 650190676 397528224 941728391 715557497 914287089 746294119 851759883 666227227 775152074 614121065 855285020 701040065 944160571 146574766 913329510 498713936 914948731 413355128 896900825 340521431 596483985 974725730 984014607 912209675 981413874 89145648 867501232 439639294 445754940 996514363 997552106 491290943 882021884 571226583 926106617 247337063 484678845 169354158 259078799 127613608 256460000 181785013 377368481 818475391 879886414 646338482 985325697 694709494 932736404 326455642 688470139 546798838 933800374 880660630 952694487 329331840 505358805 513268774 909418516 202758172 755048882 812034724 828835285 30657976 789245526 89668827 176641056 51392509 868012900 764653735 916286562 560826074 991387499 874960666 933267306 903724513 996087070 66157888 733846477 894316562 995642388 511375295 945939895 261971282 638053064 393697677 873288963 121402762 563570447 739804246 811624857 740652642 915562038 945104409 972360189 885465516 928001797 259088001 711114686 234350206 418105567 178514834 193133850 838389893 886633108 285837983 397239508 19570841 242943911 662935184 787604098 276454683 422907115 577939675 915677103 928959696 987201126 522280161 522644110 150777158 716682233 851700192 977697022 221349163 852723005 112751781 462299514 783632901 836294156 60746910 894399879 300910265 376135246 714410755 740423250 566819776 762805628 533618008 917996503 202185505 454773755 396706507 832092935 983896634 985690249 44202039 559243010 156565119 698425442 452662198 455438350 637656903 958971508 751745106 932914431 240440085 331369541 365484639 444762246 43958904 107992700 953262513 976478925 664859621 821331854 320236339 507770373 467671860 822823078 146191076 162384543 18496365 430563686 330616145 483210135 179175081 329706749 73419629 461088124 811612793 985066528 432874220 785839020 424174287 551581052 5458448 192236903 157735393 920409305 674446394 890210303 265228021 764334995 457859724 845383915 486281677 890878080 493896584 873641777 48536862 869054873 224923008 281031892 937430592 952911600 307166705 805726204 890566451 945488174 903296636 912490031 760603445 867535350 392477848 496312040 415679668 524210895 840247489 844262662 463699454 560051858 435701665 790591263 898908466 921832047 246927698 473510180 612033084 681855571 459115186 950103083 262124558 492918224 52994761 720010737 312173278 880212384 375724794 669491222 59543864 379719656 278279552 434091609 368433600 849854134 504194319 721523701 293685402 633910353 773924243 871853955 31236696 619349523 500507796 734461817 168292442 470090870 203018791 857338566 954692683 963297419 68996959 825975271 533352016 747579148 685700930 768583022 781466282 930805351 553888020 568497199 822426979 863312269 10663764 678938225 930781474 983423667 419674980 813800633 671425131 749322001 503050309 859305989 20687705 623503710 935721067 951178582 172580574 698931907 921851300 952811562 202398793 753743119 216544755 986778624 483942144 584950278 68255148 464543182 206987661 321297143 517253182 866611706 769018349 782387369 454243027 782902882 420367115 516261592 828875342 981167472 5709800 85391862 866588913 881020106 868136778 892663055 691595492 929273884 404447787 871191369 125397511 376454866 17787900 637974025 31430221 730207725 942584587 957387144 325048200 943903121 595281403 963387768 39385898 395680147 347591439 483210032 997432664 999157593 641581456 728238794 309000029 800625791 599071486 668929118 286803840 854279779 172090385 478558403 666759332 932041333 991720080 999323558 691507138 804946652 467550021 723646739 946092339 955136649 534681401 956985413 274615659 974517209 299865009 982686093 840581517 841701726 620049119 665719353 74505038 371733209 383528152 794688493 618998490 834591538 84873753 108306706 913053443 932837695 84125495 584035344 334091069 791383135 41095951 939004848 319120624 671886310 318552319 625076352 725011770 792860981 759580526 844193326 623050419 731958051 487227193 564316482 819516172 866346427 608314336 976072857 915454156 983500074 498119192 971160401 379225178 893695075 530036589 632261662 879343256 887019126 852011986 897988270 248524806 576174055 347129003 626864195 647222733 918334224 45922158 953565090 2815278 756896044 146956180 883940779 282605902 462780693 389673241 492719094 202428473 219865285 857905728 888538266 977825737 996298277 438887917 605696657 720503941 963570086 568517027 922811039 461430009 862279104 177132475 404874665 286154944 419264098 361113671 732893600 756235848 978529172 751019247 792227348 684189998 696753450 588514548 916427012 366174815 672323922 635904644 817189424 68624385 621424191 84696851 107671786 757042340 919771535 875937477 955299116 158843534 533312066 35803072 530399203 838377025 860596963 882196933 974612597 802147456 926096668 142480759 935711751 732397084 993055902 883543759 897318052 549837486 585248611 316611987 739032687 698741783 943978891 735267585 865689325 16979005 561364424 497561848 844347593 918329945 933627734 269682643 709339771 469399404 748148288 368176776 582925475 140310674 177552305 223732101 642919237 759980201 979050323 999754392 999947285 345024312 626249049 240042222 691938877 948929045 982529158 546751175 609826727 237268310 924875631 462724721 789653714 158431787 679902382 475311385 613102015 276368071 704221232 38164257 565452248 803539472 851008695 722370707 928388641 778157003 896439578 555520644 795606855 482518420 984411909 656880527 716468468 859529471 977454458 360209668 441962610 846850971 933930740 11086289 738584819 757143298 808328598 677183816 790173723 412881941 427366334 444176778 853531889 224898499 951271238 571885524 587380106 854991345 911817560 396027252 768216814 769867754 992708528 782027254 886650989 941742590 943555844 359629636 834363070 375749382 954766808 443192623 452844402 85692874 373589934 513623812 515766694 282715121 897678427 793368582 900855570 724543407 905830736 36136240 458827930 319269106 536769513 567291000 732921497 949736314 954212114 758671852 972074792 629983905 720092900 353918605 885290529 902420220 924286065 536676660 594986593 813751276 947880133 888394804 971394821 665558047 777313345 372023868 723090174 951454684 979866158 948464907 983603656 138772080 476348111 405923415 456714037 341445497 499900172 902042789 946217417 955776149 961247599 166618176 649714332 750494574 772758991 223998140 800385363 298646938 497351669 916409407 999115099 959326035 995874231 264107088 990881435 845700894 906812795 611465607 759209689 510502971 818994330 703182036 784457826 855127358 956751287 952094972 962063494 591839999 673322735 209340097 730335732 33510727 132506463 836746098 972834624 461571531 759260190 235109474 641255280 133061827 156337385 446249118 497495068 875523648 928463430 683115386 815629146 812391345 949202008 20054618 968282218 989506037 993417731 265589325 429182555 761858861 886226640 630612130 652840399 939489172 954036346 520654179 897752743 259217943 491901275 583091787 888386881 71480047 854519719 354559459 368875901 622922537 708020950 782623195 796102694 483617477 814004501 872333084 900149186 988624189 994599745 819498314 826781734 953064367 962030868 690836101 758067246 160835916 983501719 75379117 931182198 950696708 994033024 990519606 999052740 740346818 927387000 529286659 532453245 145617534 571125864 764774795 835872919 28641383 352796714 743391679 865429627 878935020 898927479 637382 566004333 6782603 372415079 877537447 970550101 620518931 749421302 978832861 986175123 745624424 870030682 722056854 791907731 151140262 933175902 491846821 854321984 972615669 999146677 343478755 744360617 812078854 990248370 214560456 766931757 614845190 690278620 592493020 931565910 543393763 606113821 475765427 720650156 677351887 758738936 111706989 498049768 79279323 470895413 194774378 597296643 978882757 980292901 586581667 907716095 888496015 951109401 554848655 983610247 969393726 995368641 33125688 780414544 886200502 914211177 452646792 538915269 951622966 980976745 27624711 217741647 938472527 941347375 872897324 973864300 607048984 761697588 75318882 487364070 689275225 838168327 703690508 959464856 126196649 216075729 136820819 511193108 385963867 429992930 710729561 819950343 815702682 903423639 21542332 448150078 430145051 598048122 995385456 997207138 993941112 996080118 561808264 623275067 458161779 576208705 634003149 986763996 159257248 698526024 529025950 981199033 309366360 625190112 112366392 969030447 679440634 727831809 370566194 656570142 931386965 944692634 25969015 512962984 720196513 799372139 100738754 802897156 845040452 945278659 492222812 737686242 712166282 840989669 719046524 841819966 176809524 267519291 513489174 980156504 851014054 966494983 384057083 692608886 329121311 926665835 751368511 806616400 527252393 831579609 682535588 997087756 430961155 674172784 373223246 409590919 339373206 955451573 899947080 981386919 405825844 555705394 117760986 914601884 115484094 342272768 761246827 780864760 287651699 419910297 62457168 641650140 895094260 918371867 38179686 907617571 802755029 927181678 670044409 834624358 292293814 797647283 334188023 644195392 920457858 960550392 830863816 883028310 513784383 668035296 266675669 706826843 320809238 369064604 917960490 931698609 119906507 464932632 661329828 938122588 710243819 713977094 222046583 776922014 385577290 481137082 755278344 785651148 770968484 958331166 433088300 670723429 379722492 964706559 644518560 969128689 358125099 646144979 884475556 953919907 720056678 725013876 474942029 510048752 582061566 632287442 817781428 951879957 693275638 701360020 940869946 992799648 820090970 829674255 819318203 853823008 687285722 877571846 425834988 980873768 682592344 888417266 492064841 561786152 287065594 824957103 911827261 979850421 362194027 832185181 756160310 813847388 604883854 829798665 332340897 399475764 955701788 958449508 440128317 774282919 729242505 829401734 898476960 962465418 618902286 699180971 145917550 935682391 472359545 986242514 207501519 739191121 495014623 626992022 488180730 781857552 106244995 592095392 518038056 605064241 922373057 993019508 696102041 762250523 667518675 882081286 238658160 991642255 548087514 955485150 781856252 798094777 851042535 948994256 815640685 876403614 451749565 892913648 634157126 832837088 174021960 464820202 584478473 645239779 699862646 970985480 335571579 431894976 848709967 912840499 300096605 357275787 697857477 965390916 697120827 785929751 892383659 892506440 151582552 445917828 731070391 832218614 352989945 991096131 294348076 837744530 104204117 545572147 559148915 579572726 689452165 877575906 467682837 697992985 559305962 760504082 199686681 928459959 555205018 787137131 473415426 929207842 682258340 803783629 690500760 808320197 764455206 804342256 476015724 948723322 200860026 375397312 154809618 845953611 594332411 759442920 16446934 113357621 417587189 591617414 220191601 344536425 923236926 934382531 130347224 251777959 818189136 942202862 518660401 933195353 931571757 951771322 409981654 947126306 848827926 877993419 816863778 918475816 698753436 859512245 835949165 886582217 914499807 971249748 165099320 918218376 426289009 445400929 604541654 820673466 330582050 986409168 580865896 764338907 188384905 700112597 247343388 886491882 961894503 985109710 693022472 928685503 441964089 527772758 747000351 947876575 144682059 918203193 617185451 791936316 888179240 964697894 613839535 648506226 248295996 439582861 623555378 965353671 374046422 598004067 197334191 980292907 440606088 660784497 546713210 645339619 614920234 975083527 356566956 449867703 442502207 859675128 37539850 789579704 576644111 948182501 142893773 261989665 141870232 353526240 660972544 716442591 946176711 976717131 399906154 567621625 669676790 939989404 752902609 902445178 653710371 962702340 434910386 992470033 316297247 432716245 153214588 559020512 566609705 703750707 571464524 700962209 385773799 443933811 877995603 969592089 80131113 882390065 543256202 545187089 751209041 980633349 571512445 955757207 420228819 464068779 761815767 977073160 666817103 978007073 783771319 989592831 414712937 716094309 289913042 381241305 192840563 912068280 252649740 876125197 615820895 972492352 676950670 771800103 360216554 586795813 26607845 963374032 659683643 718991774 252101497 371604697 952968196 967911620 707104173 886836817 538095410 706391982 663917660 791426504 833015858 991236153 401512015 646882511 386687791 482459476 710139930 789984137 279441578 353590351 256199498 610096978 483302216 502776861 385262633 920106746 953053745 959892152 527800063 876082797 401901482 771405389 996638990 997314755 833047807 876652980 146181771 448549392 540582415 592970853 922442038 931699914 842881755 901675216 972642648 983705558 393682910 497471906 831895397 908840750 831750143 970813665 484512635 890093272 577095196 640600679 519323757 716297319 891527612 980666236 189168446 287920015 275989394 776647760 671541775 790822612 779840437 894631068 591722764 937057949 526489248 586448856 14372191 619063695 837318532 853414311 952955626 988917769 67482287 265285366 515437020 916067875 167733997 490722646 920626777 974345172 690773382 746151459 610658310 846589840 276320943 483182643 270576797 670940491 711938517 882641211 395128257 546947797 550094713 906673096 572189540 641018173 259975083 508702482 432869948 889867616 71251833 434941440 805502838 986744537 159803530 232345054 211305478 226838299 270527790 361132253 189602852 457555981 449528931 674420356 839902503 908432741 11519762 804465024 316552228 594370350 115952067 768362894 649824738 893123134 371699464 996091422 367609484 541265259 27984764 56554433 625955318 682594598 966066541 967484992 482908091 985295801 82744888 853099081 63717504 117076767 417362766 681455293 45376937 984902504 494202428 496819254 179878825 422372297 35331292 478625846 625967977 672570676 382015197 829676118 472457009 663706262 698223015 914684793 766092947 836848242 563157103 774535636 16680032 533878882 781816453 958648539 941837030 949949268 104478046 361556822 387408271 472293679 606999612 633155010 641138398 704487019 276633163 810387905 548749886 673995045 885348045 910443895 942653699 948799340 520216363 923938914 485325931 849004601 662017373 936536519 769656033 916294959 68809538 771767061 746850782 914304555 474420685 494854441 954296794 980204448 324056743 539680983 338778875 720360993 782460710 828500598 227759704 278226414 990152217 992545172 931557454 969361639 302794040 464097851 222534860 426316243 479218302 590479048 632986602 865037882 287346223 314464482 544343627 799145913 734550614 756472050 132420154 211918501 467239246 867970050 42876728 527078574 1590087 419228205 802275297 831810731 49109323 912536731 186677951 869979261 156855116 980005079 791436728 886697731 739598280 853275686 504154688 662705719 20135410 762875693 642290407 985557250 536470454 890840630 106872174 347591452 637969007 940294701 920808894 988869460 400926179 851104771 233641316 287552089 290571922 631787313 419612779 931309045 503915462 523236089 814362518 894786834 656519237 972605940 779070963 989547082 589017560 939301759 501253637 743895178 889560492 900155300 696625547 984886568 95726600 317113693 707574295 740305797 747112109 785596897 255970908 256523598 820976586 894451037 430385683 856994270 874584610 996800403 944727563 960817843 8121895 464090216 833586505 964260478 794847371 938563373 123503089 999352926 216521548 950013345 248118506 888472772 163640327 306123738 325512972 698316789 824674453 948559396 970813401 991953714 209481134 594657718 882668681 912879704 700030188 929207343 506855446 862103200 76422618 663376379 113859568 121921007 467776305 987459026 270934267 297161948 441734869 951947156 366230501 938632872 337766222 947090642 317222785 887487554 200769663 579417463 96828472 561451464 518864901 735923439 16090078 848043420 6954127 825516294 670317017 728915292 863570802 902102420 992562036 997672566 819967440 876986516 234458891 883003778 688609436 851001455 366142054 471381923 269016290 451063784 58040250 112869558 981860440 983111268 113451285 991264963 504680600 737603214 113128050 696352522 58548263 942815707 759956507 806486924 247799204 891739101 96268555 603871612 997259632 998707147 748679075 997137477 943586185 983541036 937948200 980890751 359455631 448165560 228078562 236261364 279289999 771663884 764950543 888832394 120201584 148296147 162678458 670644664 128969001 929796014 339384462 475382406 541706973 932230327 640890930 750240221 918993657 960668129 127500155 268178297 732513642 896211997 604389674 703176854 843020216 915489241 349039102 954327884 813975975 849781233 922456516 958282639 744999418 912409994 623474263 778339324 844203273 995755933 841336562 886163777 893252439 956858211 364144311 783536433 527336209 952605748 431035601 764143198 832804512 941344941 410391646 750882751 296461989 326777200 317888572 463086449 117945089 434150419 710950632 849748830 594066459 610552303 846339539 877882229 201994616 424670445 493572102 522438845 393430927 486448735 130246370 318971238 27570203 949838623 864828374 921954117 15117373 366729890 475135723 563484978 791814331 807994270 822996188 886793533 960675572 999747560 58455715 875250778 441230446 877906649 581364735 896827531 83321986 471577911 663713499 755214095 800428905 993913087 309424549 595467943 31664644 917332252 399091395 602486283 525870985 854072409 42438529 688455229 419013254 855641297 387747924 977292848 72771718 151749721 71420810 734115564 79137576 409651745 417083937 504773636 473104467 866127226 814466058 956645273 181708788 609723333 212379387 415845999 920397755 973665583 510433263 525909124 715565835 787689156 401885157 571784218 674350586 806291503 765323727 979378387 947794386 984644365 215833294 493860709 770075349 973350876 275813662 823621045 462877230 708594381 934969229 942701141 238979856 558396268 971083433 973175499 401475351 908025559 119168094 667038769 672517073 850453089 826321320 869655424 916892033 972169630 371545921 475802011 164771038 510419751 941953551 969287602 838832593 928395197 379352467 472546515 689911411 905672132 188646515 535315467 112608375 178800491 968300448 970522381 597494341 638281655 401721351 775462992 784823958 836640631 800309960 922768269 354929230 695244409 731213305 850148016 950418120 987452406 410176660 705843839 726014570 828259768 882224515 912919547 217233840 772490535 11311123 394467674 112428351 799273540 802264682 920379666 379462643 946407912 309565405 929895999 187824025 647430585 411177618 918086115 931210218 987447709 584721235 854949089 728633704 805226129 53867965 235024841 558113551 937321711 315590084 955060640 248571254 776776051 268450772 430026490 951936503 985246263 465165653 594444101 409834384 772915195 421129767 909128078 541808458 872937969 348028735 820292766 565024467 958600578 649335786 672269539 895927477 960594554 109071614 270069465 229577238 422979032 550475059 715544708 643815082 676529497 221694506 251698005 900477746 926352887 509287070 703301219 743611558 918448638 831759230 965623649 864519685 941698803 353543544 543208669 156835891 533091582 544232564 804455485 833842090 888810001 426074856 888458151 221246646 615430675 507794990 650327084 461749643 772415598 539494269 600355463 906674418 926723239 37747878 296309849 346989510 776065448 598334297 689942672 555630749 747372511 42375653 297692330 587039304 973537604 361730556 401962406 104279974 326899477 947752448 948321092 501061290 652282159 209530422 575628126 681575422 893962620 14896018 960735241 374299971 720560162 17116331 199336883 901557669 975506825 310080728 528630908 579296921 895347046 148109440 155419897 352491306 819047058 865107818 963096847 433519499 458029237 280187126 465717916 410753280 644455512 800831125 960723725 278038974 563552189 407776818 514868856 180560622 820558983 825063358 963675343 11508126 940508972 857744168 860248107 478798947 529767344 765523379 936003662 134109397 822338322 340214786 703393215 419248581 658571321 162474696 229402498 162049255 732036490 327420443 470403847 949192574 993902234 248096516 279755695 577532541 665818912 818290354 934691125 66941789 803449400 31705829 251846014 173630679 546795110 18628150 485974655 738421453 997978983 297652749 674672550 205089786 453887146 706945739 955665536 110118181 400362963 262756185 797962396 446999939 892833973 341260428 593668013 608276675 695392532 27294425 631036826 69822926 712277866 30886482 660383506 728563619 902813700 890169310 958617252 278311765 648745579 569384237 773132789 80009439 907979011 872465000 994125236 799992854 949735600 305334286 802576388 595515409 766691926 593391536 972903053 298661620 795451235 343425127 852994352 412645764 839799718 575374708 796845059 479440875 687095475 358989247 670839956 503019760 514070373 797605718 987685479 784041251 926416226 232517200 509810250 357992410 687818519 253304560 262216754 41478523 283399862 142518053 524048353 938971549 967748177 23466177 441810745 683599988 845755053 386134595 682120336 566292589 775777370 798144210 934256448 913735045 933436748 903816703 969731914 539754394 940551254 276840852 321111508 420672494 829330312 687190226 861122709 84351433 240014064 542898891 555320629 659000861 811743146 767551068 974922826 194243377 665824567 270235262 639687175 365562551 808814634 534037878 800392370 468163190 742715736 174062670 416697416 102702012 121491883 497705841 985649498 142814838 318777122 505481418 672470608 821586699 870490043 587517796 737080227 282746695 942586869 814175896 939405564 164035071 824970458 313822798 979328152 330247403 438137122 835071747 957458373 170513940 552047763 252758620 756079140 461702583 538249564 132177129 900698002 826761048 974088830 457324352 855838402 525870358 971163063 394105844 811822979 943378091 958379264 966159616 976811527 253742300 522983920 660526698 785254130 964136036 989547369 309318088 759287394 532062133 937497431 219138307 337647084 452945264 904917047 535930185 815077393 990036684 990257177 116492021 558531855 943121273 980956761 548939818 939777589 726299456 986131882 656699547 701083478 502370098 535690008 318070843 805069888 719111876 854941518 338816759 915384257 162398693 388351755 874598406 961062274 484307748 864608513 636023739 726279607 770609936 818095635 724512391 825411669 246584740 638223728 495248384 880862237 190476794 995511088 637778245 900232602 502123178 766913607 514160962 875998454 825608474 927511183 445753182 935090267 637358559 876673030 86650732 423685645 917249080 966021557 37056011 228540713 949046270 973285428 9915695 931068047 674922565 861774802 623998263 798815992 781824682 957696463 798467530 908837106 822934633 977075462 39380713 532747301 179253555 975988674 285374571 784813430 485328906 999060716 827991155 835213535 21580392 452353294 59821765 917590437 732304426 781748424 507005507 961213824 939620336 955609774 61256569 759439847 880913279 958457259 427520060 812196601 499028309 790855521 192770648 341758968 680229680 869236401 896121773 958600474 528054789 806283299 495983012 661000145 185430686 870425974 59597294 281102377 453266717 505305739 116764028 231782194 125097936 372358555 788027157 914406450 193202538 446889811 277296996 916026091 351965356 593607978 167727125 886772567 610173235 745928637 540718667 907625835 455562567 867510929 560267245 607763583 66390536 844192668 337372383 692772126 431518730 617576180 853605361 938301449 630200076 980855684 199744623 264686224 699257755 888166906 981127402 987802918 891361887 970870647 522803953 856515032 920765087 978260635 794530333 957006324 976085928 976640939 795943204 914602831 872617976 953183441 94782679 156377285 87464497 546245262 618434265 720564255 379344392 761358845 861792030 947449726 966041321 970649612 727446058 877197126 696209530 892144545 136612186 462663145 760990497 823539541 386193980 718116457 954384089 988574120 667122620 982323179 390750553 774968017 909556897 980014799 59272865 823990616 860477332 863222877 378880348 612868801 412970274 484919241 897136647 993312600 566652474 806934971 377807027 388282248 233846083 455530601 207821909 774422350 813280356 819135737 250118578 736755631 567802021 908471188 656485462 913320297 850626286 998883151 605841439 650083427 236835733 615501299 333549597 573232282 896596 813452995 640171745 898006130 507513179 645275309 259734621 743560644 207334898 532569714 294410785 600274078 872681687 972119231 943928157 973153318 704268263 932004299 837790581 993036036 492109938 959049730 815328980 863033231 333271680 776711263 820366006 900985049 876777173 938748299 43128328 803792588 840386235 893364733 184671767 891720639 478527757 880704068 525904756 824214729 871550160 925415544 619102400 996331870 327064572 328837489 54941880 697991030 509971948 785747178 987318650 997854775 917458122 954127752 297797639 497348877 965498026 999842211 457766953 616142167 736866016 927101189 338022076 462362831 579127888 751823259 914262390 917650256 435898630 734095751 479618847 727504134 19588534 211312890 436819464 751933137 87015268 660884873 548493832 899976532 728532008 898887922 615286461 932118733 102692669 195793336 760849465 824838096 234170396 834711148 621292893 964467819 104127718 117013282 54106200 440692622 335232809 873127532 943172666 987043413 253018545 617367872 351317040 586873120 406365740 874562999 702330207 975689385 346141890 889540641 182556797 763823598 413109834 941378566 777674118 950410511 662053794 944068935 834946012 910413780 212100833 277603472 926832281 938379525 954952577 957450537 604655188 617827400 968314015 977884897 351226827 532739595 292443479 656130480 58546545 67421380 584738966 828828568 354579176 616821583 531095966 818768794 56615591 893746466 365311144 427938113 462501867 747034101 605275941 835429813 960100306 973719929 835904610 884671622 424594522 854149279 730163451 827860237 743338925 840806241 255258050 348359155 6470090 604899569 97495903 480808835 820723199 993824394 495005636 519846288 174072674 819971712 935638410 980730837 963758754 969493862 800430153 841676644 706553212 989677520 595963559 899492253 511907229 734622917 141995125 587518345 550368831 715259242 823997025 881238108 202002720 631579689 505932922 857570296 985062699 988988698 51788843 947418212 668413552 991017377 80395457 358810481 728137602 955740013 112431603 357748238 439610354 475404838 30310385 35284252 904364835 905090794 870756454 928419622 868725592 950257881 478417816 629025269 985531066 999621567 532375943 670053476 580041978 822589746 788501749 795278402 888150833 986750142 748610556 766929408 887587830 907006579 22177104 152286499 215173906 696502989 733549170 835562344 499187954 772228697 761705348 954550508 657395683 975430314 492493874 959287766 833229336 882346446 236422211 820595970 700698692 713972508 756590520 849730196 114068464 304322216 555383227 666279016 914484475 926082912 785644119 898156782 168059989 479917403 613105621 923852286 793567160 904377873 203653482 852351733 302225976 810681642 601024538 634369943 607757572 801722641 342630866 518233948 963721179 990834676 181558234 889091641 314531745 318534599 956351811 971769161 818074237 841310278 672857490 987530900 224365384 550353746 55907384 158869937 562668770 599026409 671704927 712979790 787294200 901809817 595619994 738822132 219500227 570774155 266181803 280734457 178218803 588836342 581903767 884743784 876799779 963451715 987498625 990458791 585095729 754277119 214069351 231022430 673368476 929183730 828575213 973166492 242903042 715391510 997821016 999032341 710130190 961839696 828813937 961884535 833662045 942014284 494227627 540422713 940611150 969840868 605431055 791986225 740697339 745089013 215801748 418321422 797223854 951847169 183803820 644275685 460079934 558169388 915449021 990296633 659418550 849569494 372385523 941668921 928908044 987565098 835703467 983255611 989373070 993390473 52709127 700297337 907554919 972191251 834737497 932259413 88281851 488437169 363003461 858513163 321657441 831064321 490795527 864834108 387274401 607524322 130865813 656125978 946662788 999952282 552704316 553897102 333795577 504744556 63556624 831883329 799327357 877966725 80260893 357847662 110052928 116815671 698341321 985632596 828167560 905731457 764803639 855750492 867100545 921352290 725513998 778237230 730388128 866576060 922465526 980512392 913822038 918034259 20349910 553883523 850912562 881133115 136001021 598864173 642297899 873938741 727544324 834619841 226853992 702163346 145443320 276883974 298947503 696170972 745378622 920623203 396700881 746705431 96139474 904490375 848869061 966030607 615289047 741487302 162569401 393877421 992085548 993493850 212887596 408290833 676462461 773922406 971476753 983282044 292906385 778885374 720064496 873175612 703253185 912557065 541448660 674223413 378081769 720773358 633103095 717914705 17095107 828695939 668520217 773516635 691002777 896120957 435116871 519546095 519533886 816509894 423726783 855764584 950928172 980438746 821594875 951510764 361698446 654681025 169211023 899651483 768870652 820380985 844932170 970894067 375111318 640873830 363662377 590442041 634810986 843624896 867176509 972732171 815335835 858120875 653653455 781649230 561167137 823719950 967502092 991066243 418450889 946802007 893732258 964959750 580648568 950014680 249040949 627721237 705963305 884012825 370989642 452411059 617015360 731404009 925468945 925891556 378883266 825426565 778124722 909719271 320580608 341667378 866927330 889159909 869622347 931004956 705406213 736873402 54801477 158204394 688589466 787807420 584113367 837044098 537728939 612960907 666615329 925305904 651247735 890300185 69999610 261298747 610999688 798672523 28712150 110678355 584631476 851966035 323044519 491551524 304173313 324988287 101928972 898335220 278698219 653901408 719857062 728597719 631809084 692369108 337320084 993605091 78545803 84416378 896424951 912464455 920607693 961651672 580306421 856090595 51967387 82739995 291074310 316979156 864420300 870983376 762328651 779220732 469578283 981115893 836646024 918785354 556559065 718948487 369885924 406182729 679177529 935132404 270656726 436386857 80474090 250250403 329997758 567668113 333329214 624268105 787565145 917928058 417823160 860567974 540905013 723967370 370817324 410714702 80505687 512535323 650327965 651587795 40613314 259591405 314146888 424861665 766468866 925945894 477745821 937450549 512937741 772669823 317378697 355827310 2213277 565352448 996840692 998514873 492603601 966384311 104065103 196582498 839027387 874924425 861099799 868604080 108338528 877102893 42368919 609019279 788571261 984439058 385543703 636738740 368997295 614398740 872828588 937112374 154545439 906417116 422369754 908631405 888529647 921580086 785784839 946768925 596612747 958751639 485752933 523012164 240372651 696819088 787533843 970129831 706755184 757431990 639452997 906074603 6523481 688140202 778038924 927091927 170128502 939890282 825024832 831936792 184534518 768739400 512669159 628570300 646079002 848098647 498762842 745069410 476522489 984430183 408949045 731319736 159862288 319059706 183294332 215238569 249832250 341832912 814152098 979056745 107195122 593134999 502978893 883917857 619004743 794489451 830736990 893402423 150730312 660782379 499820620 677226147 135447437 410006783 766653455 914290854 557295068 804495952 263859404 900351131 955372307 960151008 993893981 998164238 336776931 751539447 379037178 380476595 535600472 779644349 135479190 727838103 35132916 737000352 830090902 913344690 789794697 902639762 649596430 851859010 756595748 925927495 253299998 490470896 37811226 889684453 667086520 841483579 916231848 959449330 107922135 670985995 882214122 981008435 746646220 785878323 527245900 873072676 377347627 931220671 355935842 874841668 767244689 771193039 62976280 334326988 685380447 863987930 42822829 169549785 325753342 454348866 28389069 578914166 348632415 633421348 534878038 660335962 386859758 533704724 7093025 816903330 739511735 878308104 851568591 975586775 291676123 907092710 446456694 580918460 580125668 839006198 362195335 818100786 655259493 863079241 578613362 734257792 170124794 807858564 223858818 600108814 919380757 973240290 452006630 936658207 451946606 717731413 123347917 584376973 850568219 858386316 827944845 984048295 679006969 859868071 125786947 142177581 483260539 605579630 932532639 954435628 66235922 118804163 882540553 941390724 790982677 904581653 452983572 531820834 936358782 988315304 279379530 545676731 250353413 867472847 397165382 477005850 611132399 833089451 600982995 973612426 623881281 629673195 182685353 509823586 354946020 696669343 167868596 842670722 993937743 999509303 357297769 916700763 279331133 301431422 649557022 817434391 892979567 920843878 303124725 727646277 547331735 696594455 160763753 797816819 799654108 977691698 970666711 980680544 823993189 982272280 163545002 250824981 725806768 860888806 717634414 730461637 597932188 852522134 825243247 993293846 568177846 690467657 511418760 742258162 590771369 702370718 92704830 491793710 616038746 644404984 802164963 986874610 252050681 380583604 196222723 919172666 822237467 952522406 253706255 770907149 576379922 779562149 915920462 918062197 124094564 730507631 140364425 332136867 57907328 741591013 800631985 839966833 868731807 993952756 752470619 902131490 376526551 790025188 572510475 693807707 830893779 846334467 438213235 460859609 712636494 930637739 488609444 491919312 614277436 954942317 640768740 915851016 175322528 336621561 593356303 976813598 395014758 663744745 727508521 998574491 813307232 896161524 100051477 458914951 913598251 933856286 168414633 229131373 179170542 608574238 184630804 242956986 913190478 928300581 347942445 579265629 69752687 206834955 321995950 700355882 601544118 698565122 695156462 717993778 796415047 963779492 152276168 267582589 931909541 957430947 53269479 729861666 360119426 853217608 236900524 968543297 725192560 783912363 894931013 959402326 750350815 916471135 190434543 981507477 666415391 906282826 973709975 982575456 483522277 933591861 844742203 848617533 433451427 450864665 648039488 881359717 147169031 182674110 132792893 330518994 535226341 671467630 895362702 975479009 523671344 876681758 830470152 890483370 354928573 618722524 234772455 884133834 998713721 999977928 208064757 390632442 920540865 963528959 445113346 924659431 335026901 468152385 775487854 998959366 527256477 973078722 475972679 896738262 50747018 248378428 353303770 608486978 321606279 830480540 45787539 340194479 198618893 802510285 873780665 893318798 849501476 943869084 596679487 626538360 177634203 476735780 765467273 895412724 975024871 993031664 385385021 909544505 152518412 437734819 950973404 964858557 51337119 466167007 651313833 837124495 782835760 909830402 139331658 962799269 459713319 875796502 520784608 614022199 403753935 497141380 92298945 571069138 41978538 515909466 77673178 942411612 15700515 291052598 929450293 960961643 924804923 969521600 63850267 266517094 794258076 908167088 973099602 977649750 798702746 873530584 423134243 684810938 254936843 874164764 307484755 440672529 522562313 653332706 342012422 976309093 301632276 326586944 196203422 576123536 510652677 670323370 611934556 736344347 721243086 881344029 30835727 265210830 696810995 830078636 420048367 590200002 449147900 756656870 546027055 994435340 832954338 899971787 537989851 604747437 677912913 974944331 999125316 999915128 530867827 786720791 818797372 870379000 504323751 863875010 592819998 835578049 836983717 894624287 253957834 571615850 18774323 934770430 589837029 874751050 769919983 800636966 64099773 865689424 557114957 757900510 122939343 851150440 614787658 928714296 477406382 664456279 923144170 967206309 38194750 577517324 816163346 866270385 267321798 979414877 567963842 576700950 312798192 743904899 772244248 943057652 205458287 848751942 29390612 36020294 63188580 527193272 150139498 988914299 494702775 504690474 4610481 716624988 797022695 871546797 119043864 680898729 481068434 841896933 975878598 988268210 58451193 515954808 674406797 995614229 173902039 792482026 200600988 859196719 315114760 832442303 175313464 689959416 931073120 936938813 447350270 750403013 941440928 993240303 523033091 847375567 543467724 567327155 353263630 683114388 881732795 983580144 402017158 406716846 329402519 924788694 178948387 690447744 152564898 751975705 457095985 904391263 11481932 853529172 3573173 945732245 925487397 962123729 574115178 785100103 902199617 973802159 829756491 987428675 454180869 517860433 29927476 622064911 542831151 599150244 191932752 630027246 188521571 736179128 863112775 989946697 371305208 813923575 982386078 983111542 775965774 871052640 374703497 567881297 986105842 991259827 865566797 985706890 786480044 922031019 812286952 891811611 377611050 552929424 925452218 971920978 654140943 793533891 405564279 985254745 241794623 734271993 895882455 961352096 331627248 621829265 579352432 993685973 86983287 535010957 3323595 770348974 408770253 735705167 468464025 644225344 302779703 625796005 980013984 989306051 630562016 707229246 984430806 991716397 261259833 651316344 888746647 942022353 948845010 955035000 382995720 453047686 973237318 980420046 594769393 770034233 285204723 478286387 998146701 999903114 865889698 940598375 938993770 989464077 940639558 971200210 810951644 934163600 102041231 982918735 890428894 985591695 784545419 981412878 598199372 862235937 719414279 863248917 856801201 981502467 336326815 449940180 395754213 630015332 653301260 908639798 184715413 674366792 794401476 932413180 385623288 666888506 498422611 983749508 945575679 952028248 564922771 834081826 373604543 744307740 190759930 524767976 545400722 881702827 262135313 267849858 468739514 724999961 147788393 807880342 922341959 950657775 326699852 426031892 810760938 893756375 386766765 980846732 238699111 239632697 839284803 841406612 434795378 577861001 350210804 745518959 388536239 499863891 762063594 805316043 864875016 882973597 110487633 836998921 208160124 537514588 109509510 143969034 814198017 857773683 468736935 901435404 700697903 950017635 305327092 674100303 653374284 722402231 495645011 712985862 394033936 658917757 552507233 870164910 931605940 933453437 106297767 998912274 156858039 736515903 988350234 999158511 876463678 958630027 499073223 760983538 551946836 913080263 901924283 952781477 427226473 714722138 737875819 940798524 578165382 720366619 15251167 700578432 674342136 906483672 162923385 627273718 978964785 986238553 899432147 934102958 37571146 344815653 813802527 824498106 480153104 723324320 494161731 658073624 222960546 655150999 115438922 677585438 432153995 727160369 467825403 551396506 644807993 735581869 46939343 553493798 86742675 361702699 355469723 425317707 863055025 873688519 224064724 437103928 614222069 727732723 295593390 387568116 314500364 871046496 705539634 981460218 473410776 855372774 462212976 542355340 605891235 903583697 564389797 867465256 319695658 461334697 241012171 241574769 444357266 653503301 173677193 293623696 120208064 438617570 55896191 65667389 989498443 995438731 221724297 316060706 352024597 786124134 768182684 985156154 406186331 452086374 747178122 886373763 696756575 733028092 140985092 266632402 125744048 313347644 33449599 989071886 568504404 719889342 817688028 943413379 633199065 908084356 40714177 793302778 912798384 926848682 805077494 880871255 204137371 850648665 175105061 622515983 227328943 482365252 81190952 508551453 628023935 932842291 528481407 563953146 348217804 496615543 946529277 982584619 937039894 968752242 438786698 694142574 248412504 847428408 633329073 726920059 642965143 986046421 407051973 616127743 830896123 886941160 143589206 978674049 121110167 853489792 688571525 715882771 897473369 953988734 517926370 753167987 525520428 833310155 935084199 941855882 98053679 307132594 572900882 776127033 35464935 206089114 337484488 796024151 161903448 668643190 479164373 576947301 587855874 644300552 354552440 822292259 624659527 872485668 551825601 600550370 298107781 472749284 57188821 149657424 43516 616350367 836217771 860615122 878216661 919160829 592161312 920022346 461869446 572688937 218334693 646498295 888278549 931160160 342074286 673347279 406445660 515973923 588064046 875213607 461669299 935697662 880327709 883761654 42492813 168162183 591085723 981789408 614867543 681629564 40393728 153342106 605635168 741533567 882735051 988088531 746016334 792461449 616429896 981474549 796087747 891510366 995588770 999421149 688951083 767821203 696869366 863935288 555948691 665539094 70279372 356780368 578681982 964488546 377282858 998896763 890235496 954891870 20451729 852140527 775707944 923164648 514504310 774387067 578047564 952407086 249659999 596347487 475626603 946220087 921434198 973284091 563139078 851231920 875286193 896422854 409548723 942581040 151071050 603619739 933828778 967888032 660518829 678177460 26416378 838804623 584903662 776088666 294484048 694969863 570615184 700103106 930335036 954292836 561271257 642394736 467574449 930972354 959397330 963889910 826037475 873321295 783714223 954998038 944880373 970514016 253201829 919471121 80784296 553554542 462922453 834251965 932758211 933268318 421635988 664232175 34504960 835700534 775280880 806713851 378838562 457566844 739435101 997616877 442602085 490813772 148122140 746188129 778892565 884018344 833284803 964172221 97187231 942026249 682560612 999640615 348402091 693709601 206920381 620468307 77121922 280033293 318256145 523295477 884338924 921421931 699938115 948923675 966666042 978771249 265143925 992661738 714586504 874552690 503507779 931696281 742383958 774336721 427302586 657993865 402098897 539668542 371265898 526244039 753914766 836687836 318819707 771510352 503211403 579399015 165811206 611129842 614652189 825096872 814989860 835271104 969172644 973854353 93324329 443953087 796351826 802973398 149992165 946407568 15662861 973250685 722615524 968338685 704568370 756849895 165787943 522850245 657996657 805553502 174151492 292490635 953545611 980291111 531940378 563486669 74388729 575137035 73626777 532525758 746841343 832688825 633587707 849404023 477270037 886796601 636067321 800109695 379574234 624852368 865259565 977515987 178935221 308365763 484965162 738120767 409117339 461604851 301886567 531984737 83216906 302205118 587823797 919669080 742547618 955112534 15840120 687860525 395828406 793946330 81150018 665242321 384233662 936898764 637140825 824974141 687183880 997451098 66112195 378652244 939787760 992626306 7859576 130935876 676009873 891550108 751678159 848079400 871721478 991975448 625929073 908304596 879823779 937982031 715841167 773554980 485078384 620990959 554956365 941644053 965839935 994428459 266744122 907295871 883052213 941741867 903415589 922656691 487403569 968890989 437232445 476501574 479099248 913775019 88904029 578187933 813935425 858146171 796196589 919909796 552280814 712545444 429157173 575499246 377613913 498108264 2272715 455590021 484145478 715167960 764582868 792113648 434339297 926210499 122522898 383640310 311973878 321885914 370552402 762096073 320943340 500916852 278365404 310834196 19040438 303480641 628613943 688688980 691266279 965334215 957005729 962489421 616968339 907020243 272126456 352458003 529083024 990628580 887307368 954383550 537655521 548678044 526390780 753650510 711540436 980203323 956094226 973258270 856744157 959936736 986532900 999901400 574248487 887203948 176001526 496533970 457195260 575455644 413036784 443598324 667007845 730239444 498984615 769990578 356346257 751321881 840625229 913374284 921523444 922437633 135233921 503020968 215486837 332202504 529615818 626202611 772709018 968694193 228145461 364747315 996145314 998076974 334446874 493653603 380940946 640951697 665817478 838066931 553566973 646207757 430851584 857745029 220271095 683040763 838060939 850680126 751748444 983770826 333337830 804209980 29506441 286990601 173357529 536283217 976329903 976952154 408061469 822237943 319561658 939434939 391857823 995432288 369734980 564092592 661839206 953887008 967120319 977166711 949774489 954440404 489299002 549571285 161748178 268743606 508874348 557156102 250874920 338069613 518068988 694898090 681092809 844889814 684008432 949274066 11599637 157359117 677688059 900058935 806983198 912648366 261627663 461981779 952465754 953915098 190425444 741293508 319658353 991931723 190511068 864630072 817417523 835705292 801289063 929621172 195412514 575896593 94336217 849100783 840414887 987445486 840636979 857309973 951406808 978716437 391123820 728965157 993248997 999220098 402840439 478345847 988885089 995252424 689250929 922505547 330560099 518676620 596815870 676977654 445824503 713250222 409239976 571164530 704085400 706198759 676752455 839687352 301017356 911826403 832919120 942753472 913436257 924768197 745872995 846522776 851819848 861558561 218712140 770243383 709242144 950559537 141415272 872880773 925504258 935981748 599250076 617200361 132872319 256089782 418450682 541854159 993793923 998887473 18804533 669780810 190093557 662535922 421292948 616357433 454800318 649533261 80644524 822050472 753806829 969569208 253670083 406589631 788988764 919718697 265844365 610646837 518868345 521502694 650630340 875575381 254699735 581696282 968460364 974698666 60983255 298253969 395239495 956168040 812003517 990721315 538296671 923889117 790509437 857678332 367654097 734053510 278742690 874648849 452236237 744123482 74403448 401196951 176884183 541327893 74178254 175425559 809515174 950187129 295159951 784343393 322240750 459176441 583258554 985624683 121941598 656501314 663109606 853928559 513400330 535375419 959109308 970837396 207996339 805454137 600005486 743202840 681632842 706924229 905277872 984525903 934393948 940338298 650061330 982058284 391151481 998379490 938161317 968576087 975986478 993647574 58935343 288300672 681208596 883720270 926337547 954700341 837390090 906176138 512890528 600631492 827138180 902976767 647963933 754089551 333908079 665228885 9803762 340210646 388354254 987145320 959926501 976567742 808623812 862086884 391192204 438715938 980360950 990130749 129032419 501774949 19218534 787855979 593120472 643337710 430158027 707097069 183083618 410301952 599976688 776534712 353734293 726970003 89786182 285090739 924491867 978043258 802964609 937841239 568203742 832076632 81417606 276717146 563205228 626444779 744775557 960118233 593119485 888010594 787254537 808929614 743260571 823037319 849873636 890147065 842835814 983388724 116395955 394494531 46037738 804228539 97236946 595079441 135196595 608418483 193882817 876290157 256097721 501213404 865428144 930468036 391212452 493490393 532539576 945711717 910552353 962583353 506072616 815237670 489477335 637060263 711563245 785123662 219432302 615651471 751907353 898568373 911445086 986791309 291804459 314456977 156620997 787053846 624540961 779847169 144278588 502959042 567383467 999376515 454282593 518659940 643675043 867959579 878755091 963507095 214764568 873121932 415800232 555015886 585550739 756106836 265293273 823809774 553853170 604899542 263766226 552658590 191377892 957369334 267956617 518356386 51669814 716479151 826908972 975525848 561552004 783377221 488764186 868321178 177075263 792238622 995209948 999175009 889744869 944399354 555098780 869507294 257479318 708498251 572720246 822590281 924691155 999076473 391132849 556641419 489054674 688835100 684684152 721140845 109397351 114642142 466214621 632063939 951554031 996318627 405004360 814050251 492815665 740607405 570052044 691339902 397396662 887201975 693087081 896261085 427741088 693802878 189130145 554062267 140249375 678480007 225220173 818311406 825216173 853452976 18250049 801137931 65298662 430704914 728450644 994812664 635026492 648786624 806126083 989125459 877678872 941911024 949781573 955362623 982965520 987204024 973345575 987667401 52189927 57322700 415393095 471810375 570375059 887033654 183498805 699385745 463272068 670645528 308430830 697504910 762576349 829293419 453353337 748667597 792351920 906514221 399256468 636104348 938036365 952009007 334627322 399128528 842861208 990245098 662877373 912929280 777596202 972589054 115545584 595415352 844796936 947758350 21422224 450255147 780270464 886666214 52329155 258631358 692044544 752376283 854361421 953437539 477458039 903300346 553385678 781310887 378039963 450197041 86704047 132740123 328340878 726719559 653693321 828907366 580276590 996474906 408720705 512522341 295456556 932169318 155590829 879953393 160306197 651668373 431818153 980680477 377304947 512030913 648164170 794310299 297268417 386291604 407190957 551253220 633666317 747086944 584241984 711366654 569298399 652463982 880490824 930819631 200897166 401774822 760155563 801201468 261394266 274413605 251727027 979804946 182558195 888719486 181283685 997226071 694498016 872896120 364387823 680603697 720502382 972796351 312750203 962038967 267192919 309064421 241685997 625371544 286166532 680877726 228221073 693005239 5535316 365588217 183453373 934663152 928367685 982285099 435127081 944928155 436869076 865852898 855078377 991899689 178308252 491031148 636731147 862955863 273044118 847355694 627301769 682212850 664165820 969263510 756804273 777060377 390904495 810458426 753464056 938729149 693027773 743650276 660334661 764002590 643563390 840479044 353506908 711393283 763892850 845315784 347997742 718749787 245857054 260599661 440730360 811096093 610792069 658131461 288009556 641476291 950099683 956007222 186798822 550853844 718749153 812355142 338643990 888956193 656939324 880428207 844609339 972907170 124599993 857592324 504759390 896425408 822145402 876898160 895629766 904898709 648217401 822961258 149154170 149303013 830791984 891587004 102680760 666156440 212097613 957797069 806515388 814619447 748594300 800036092 235361236 907214021 330689549 463236273 250595279 464311368 723774740 923034698 60237537 743782080 375534852 387140798 884070039 889259598 9503828 758132274 685592526 876623438 429575119 877362327 53497744 425700781 63090814 841179419 273765653 882964427 812156796 989463657 112328211 618806784 644254069 802143721 257417180 847158193 828861849 984999943 700521623 786192347 220764220 228310833 103471703 321141248 242033744 692397314 260756867 993855950 544507274 767407657 985563678 996718819 55120002 61243538 549449977 736220217 87144775 118062239 668583511 905574715 869558047 879253720 800856853 801870734 263121239 961680261 455152320 814811013 649964862 846674294 250880517 489450439 606559227 649094610 908557408 936630655 899462081 914151086 616247579 831257075 416363394 954937716 308412928 622771326 234297345 586288335 932641027 975378307 668277079 780098828 583451773 675911341 728327301 757172206 37138657 200515386 93911111 460221452 248855035 701123546 624305634 977533882 755407988 904893676 308032219 639378042 327004000 781747981 430406030 785683759 495089184 563851571 501299992 820967198 799245645 962920498 113266142 262846779 732434068 881609008 621109113 628494343 81320963 813426035 636027264 640437905 258522303 809215688 225271874 871978482 30486432 356073511 184368402 699932647 168965544 272418685 659164061 774487158 543996170 719332842 882024772 997011690 168868275 434418325 752779970 896192407 183063091 919300362 832439933 840605772 587413408 667065810 504399514 629598482 899521030 954166158 196709865 441613374 525915002 660783438 81057895 633168464 701600073 719079810 258160972 341619591 971768059 995148324 15494736 984155371 574371114 667834547 758692959 759942386 997402892 998942450 231105943 808516083 269218977 580157596 378076616 963275489 720480539 953435955 965595018 997587972 534154831 955972773 221091866 875382178 518045309 817753870 891049599 970193017 841159457 841184529 597046102 856661262 639997557 836005580 838337713 902660023 945613993 991681790 821410841 903795207 146892115 720894334 925642296 940668736 723309719 852511803 34171537 165509835 838333465 875780820 723369227 858005996 171071817 199128460 202681443 509975088 424741421 599272974 554821086 825722008 731767422 900258275 387629143 954724919 539886010 728493050 982559132 986940149 117772360 963533864 777288788 782774501 795723027 969343763 283139506 398656901 880726960 920157306 498846285 564507908 442279672 616682652 517519257 688253104 569158049 983449324 265186798 592402966 454233833 573561300 88006031 654546164 96019281 449247556 177646369 508661561 86604245 184290250 664985013 728930165 452799028 650245750 702772559 897519439 805314391 902377250 823788908 898102155 843117587 926814290 780797291 969048380 937182473 941336386 803457267 902618666 125908969 210927396 895502999 944735535 266994271 411296032 77689609 646632007 512212546 968321229 834674729 842980456 876110582 992677853 907216158 924800256 223340591 441825656 273825603 631188470 701357365 967409139 797789081 857628419 447410968 968192532 37409978 347106277 256709977 499364340 442259826 859169976 886757704 927427230 519703309 929308375 384745242 586759316 527958309 608391284 215792714 849391717 859931790 953530625 525159199 807863945 44231823 976410010 200408713 406650150 403880475 842121800 40422413 405309708 507330532 694288060 834369575 893530059 13751653 574919654 483383223 716128699 242760052 386721571 348903211 465207222 832167365 979130279 528264592 610808970 859202687 960344639 417661942 821096085 393283320 674696020 537845124 860924778 776194436 996068889 928132990 993121220 136014016 942790962 28245678 377128306 331210671 873999079 99416411 664701822 309027319 841669800 231922907 789737964 607284150 933391319 290898383 731218131 654701663 734533601 989250613 992958914 248314550 550924977 382026810 615652159 780586162 972463467 392097029 935070857 681847665 958320022 710547155 766318451 566041036 699066866 927065454 978799928 406908408 675258560 616034235 728165676 292001139 670572042 143263031 209834047 590615703 974265936 74814619 158661011 709440094 841638689 233163700 423104390 287692020 486598273 833979927 929521750 252345901 894097534 95179794 207081425 701330810 772866696 641123514 752260857 284322269 649240221 900051272 919833843 847663288 895428784 233794531 641098259 690286276 772028362 330439656 403473619 683529812 923990808 504661722 828533387 874060595 928785013 105454378 836681397 647902186 843300819 596734108 643610916 770667750 911017097 198214516 408178659 971071328 993159654 819047980 936397547 734956580 809576123 723886925 846772562 263392633 729813448 345829479 879208412 752031158 875100684 978539221 997858307 147806507 696909189 426157622 494460135 434914474 532717975 78433030 432469922 20109642 59543933 879565966 952002189 528001978 638074295 636592194 910760752 85577058 342137527 311000751 717364352 872951668 974397451 802727700 814618824 32556940 106075361 9362806 15479579 636401108 811267292 541873169 741644025 969286083 991704573 905142192 940532742 500378248 890171559 940363244 986344736 329682275 575728732 921598036 986898485 170066635 709095162 805944429 975077327 247996747 493370420 712651836 770813009 784352261 944750178 781851083 860958992 304417644 789439019 393452051 474594842 603891647 730795392 267972718 466044296 71903459 252195564 173517119 468893320 937054113 948394270 537254068 939597753 315657154 563312415 539665650 740539404 338615025 398175935 569868358 663059022 416941329 449112882 883836128 966840081 618550552 694595178 987740447 989096363 395107033 845108864 558405512 884818927 227787708 592604089 794769421 988898057 130446476 779717801 863987161 994272777 925370953 951057994 173566198 439313438 410180135 593991624 206364796 260535365 190554367 403184770 367204023 813587454 711871533 860901739 559097339 778184001 709100780 996461255 813681954 939267151 943195787 996929534 452359639 481157890 31842831 83326933 190840939 319188099 758543920 774033924 825693360 852126893 823092241 830551024 884904521 938882198 210421580 651583521 381319024 837955684 981192341 982056995 125828591 501347485 414803642 890213628 986644058 995617053 804553479 987297743 42035306 755899426 582664382 722041792 337144340 435069942 29053836 754061991 324330022 826332541 421210357 780077367 786586505 825232589 650334693 661879807 421781404 910357804 581664405 867119460 781136806 868718548 528422782 650544965 148368833 898788911 964504733 995349118 291069310 549222560 552374739 820867688 831492657 861185941 506125855 984559186 58056257 276703752 359229221 401756742 185118405 490088933 601474068 854218300 470489526 896417819 635496185 842345972 420948497 424113815 244595590 603243643 864365040 981252136 832967293 911541816 813979305 928536173 753325401 857088267 607965450 832130954 141694828 798605436 671475435 731725347 60822630 504073001 635290347 899549979 269698683 463304474 516517900 600290124 439245529 931683794 334203760 479571033 389880659 978695308 110777561 159492151 298384586 895542351 169587919 326835855 568401738 822503398 764189271 854629393 572123214 905708466 453315363 965710107 611641908 963699950 241204406 863196017 533340757 636064587 480193198 826987669 309383378 901458264 746656182 749439741 675222000 686929944 285194547 620863781 943268903 979530949 142973438 706380311 314681159 418560269 178169097 251726036 237660866 683742331 274190003 775491576 89535272 195138730 686893094 947489379 464302880 766519358 720305594 768935247 20442498 729929542 285019239 747520737 627300104 810631898 401167132 894357979 645454961 813779908 166812289 725178902 858711789 920506405 41939043 919597177 767369580 922137067 676034378 904415430 859663490 935761845 724763747 977925560 258892163 764999116 128404792 379732635 835234568 910876832 986142355 996631443 723103145 983280956 677048881 893567427 684828317 703921242 3176818 740753235 532311378 751524140 610051474 842244566 756875071 931248697 617921801 669225335 814506805 910317072 741612788 892766098 419610610 754851268 985812513 989814609 266109817 393797109 975759838 996548986 634786622 788039430 70019375 995865343 67998267 295115162 292175402 940103567 871129194 880820424 487685718 987202152 585986068 752582838 981726916 990104713 817199363 845955827 392817627 944089722 365352708 450375397 231860249 336776405 332523967 877278965 470334898 502646672 66673462 106210712 504532090 529148701 289252504 878374141 776429987 814218008 584772448 611201527 751885821 878833818 906530462 962802032 381507732 953167648 828372242 862591108 188943703 680752730 479286048 616325104 93508309 104160597 774704678 843261227 345944570 518780742 895656316 978616749 410459790 982646246 57974646 321731884 297898655 698795016 656224523 996365927 636649948 973566119 949036927 962603600 574650895 965255042 120952849 676416707 116110077 184953160 607081247 861170401 817232846 863317385 538703966 627399490 475992613 558231702 680663011 942448314 431168421 801062616 185412749 855371905 109557699 429318313 114482032 851269946 371308713 566363613 120129739 605638301 431093374 711767190 412621118 751070214 593703499 669020145 547713829 755083984 491473047 579209287 713770954 718463776 792766471 851662490 407007034 460738464 474550310 559342492 268101175 816273317 368482929 385448378 536905929 949642291 769678709 892592723 459759588 556999350 679027173 739348320 913366842 958257665 867893501 991232253 218637663 612567283 37875139 125028796 829455029 986549975 785033570 789747587 690905095 739097514 211668881 265842614 278588455 624034649 498570048 981388693 177629963 593959213 383846520 799296714 907107459 909990229 316191586 842161836 826832418 986890107 64748715 884442321 787069902 856649931 240069957 580878080 593912592 687238529 270086514 878270269 978519896 983307829 385739878 455690155 964602281 981055659 671252936 795848428 623852351 933627190 804764751 887751989 813643872 857114751 111578109 947758457 996798562 998428602 91506650 676430263 776220668 826325964 348336622 388748821 808265006 969354165 294441752 983364235 102771363 528019770 335943051 961837870 431187637 478257116 515547615 800513418 477768112 651110178 640440394 810963237 315617278 375554265 316281522 410417179 625606672 671266697 811991467 901621528 910999382 922174026 320935402 718193823 85575654 393972219 203802082 678369108 295936798 631510993 300332491 437932490 320419659 753324084 506812496 725416320 258442943 801795755 211002497 913061040 96269859 480103812 852901990 984474219 810394251 919859498 625044246 666921502 54688515 458791745 728735811 804548749 315348815 422984174 795814467 823731340 561135766 762574608 676898105 895276188 224917366 567521005 253431291 996553262 528084546 797183126 856987557 962082679 842630865 886195665 790955978 889716111 46429760 297556453 12114383 366128829 257535573 271749461 980717989 988445871 516793937 551915622 886191372 903069179 915401913 988300712 108607552 190480383 593209370 971777924 116752318 158973782 113924220 815357890 73187056 598349114 925345116 939465565 292167874 568174508 718462057 993625542 106151869 964757205 564216393 737291189 449793869 496298164 277047106 346734977 231111695 960897226 60572511 304706540 147782265 340503098 660579210 720950070 71890651 952455298 4128132 446459563 602040621 619962383 568939634 833972627 564388018 813344943 839470810 841428983 616285422 772480345 849271978 978968000 39508537 564550068 231861564 479288142 892501655 912573420 343293618 630289565 103803490 682466230 127492090 645104424 657770868 858397946 271509692 726781773 705512181 925843938 486748684 531583855 762829380 930973323 686192158 879047777 492689005 771376244 271743821 390910020 560641840 620360598 221236954 942060007 888345689 939782050 487880347 884589931 936634939 962814414 603344083 876734060 494896152 560067926 724006541 911057319 202256393 521472791 116364965 843234342 738498684 876649650 279842120 522199152 329480511 802129788 565612659 596991916 552945180 841141487 633023376 669666720 454493404 788644346 225183136 564529728 291311300 475692734 539105068 634603876 485841049 947026383 497247925 700774247 528914944 825797041 28240047 526577143 125358508 606070095 890852868 922364134 80614213 171453935 167368953 692186378 328852900 640574585 746761565 951149178 415016203 827896095 982811456 991310461 688514320 756594945 463329937 845233462 275937563 515448685 557019518 820460212 169049346 514202023 561564858 973775074 320874071 736903681 342998596 870882813 575423981 921316186 563681502 787551447 637073844 983736082 336109579 748536700 66540662 910516514 781207897 891373716 926327334 988706112 530485241 630417850 76914065 644467576 76390997 865673784 342889819 454022161 638950835 814325541 678819918 888640028 627469930 693446701 593594154 696142520 977021910 995323023 793645235 997033875 241382420 307611108 21530395 165905291 621544191 764776088 40278189 658490156 153287385 522617732 384134152 396708698 167065611 559103674 767472052 971711283 858711950 887849460 149777452 977863772 484351108 590116819 620547157 753758907 664479495 921213961 601661856 946377494 770580052 943875792 238468305 934337416 51326976 503262909 480600229 930277837 191963551 332388086 540192669 752015932 379408550 406028742 441246419 770235793 751406047 957484247 412868434 602692912 631384691 821850987 606778946 833024202 405668335 410589772 57132574 872283694 609758466 861712575 338694676 890068146 12301601 75235245 504775164 915483579 220511271 998949824 782999001 840755154 578888669 895025751 917640724 997203864 546185958 632635896 310705173 959177144 531874736 818802435 84469041 427924456 17072395 380589057 2377716 340959141 899290791 988655210 279120307 477501959 897634373 987323734 225051766 605816481 402370712 547130101 767855823 942550570 525715797 548652184 172412902 486060320 198485763 772604026 286179608 489837776 147871683 604551343 891375648 961253631 317217224 574418085 351825407 597426955 891539435 930340501 469951253 653001639 406484506 907315316 166335191 548033582 610655928 639505047 306347767 592378882 986557616 996311563 902298881 965701203 208063366 862252544 179449172 475427185 489998043 498707512 778511936 983041669 633966185 637604909 198601479 831232628 777766759 838676925 839714727 887309273 505767752 609633839 578714236 708565099 253520159 372490250 582577977 621404254 929202828 935843859 830758340 881160135 796345276 999161788 360793607 596730078 410611498 437280649 296331665 947252714 331441193 873413569 635560879 980685188 284866244 893095302 678971127 760619935 642186158 659984615 490768324 524149734 148355100 405825684 496853931 730490254 628815323 794183122 430609575 989784180 854248708 948824571 821171548 973724599 567503797 782442557 160166788 804643933 961388753 993952027 609902815 779798788 699888810 706374644 923252540 991622358 42888133 259244749 147463610 475625493 185710615 577732182 399524998 608263121 874865068 889407270 711572455 736600972 572043746 822661776 74730605 509407693 109617798 408270138 84279709 482087480 79605247 744610098 511223366 965434221 849105640 936122109 469215845 875443098 148630381 612824795 800166175 916453941 74815896 156542846 386987372 495189147 785886205 811733929 193465227 474485196 807698355 901477170 631184583 991788636 415288053 618006801 110263481 981631419 547813132 981785120 397369316 930265777 203902942 597378119 588441563 835928257 828102070 925231988 7640987 184288963 896546076 981099799 618142264 703783922 920753790 946197284 83421634 762736419 684374866 951765474 997782852 999507712 758185277 876720794 371984284 849370320 178985135 990421364 43840264 303034761 66118866 876828644 644966990 768110460 164075942 303207076 357726125 462330636 213860173 626362146 290276633 502724778 817017066 882793013 387991359 940036103 924729152 932610961 752508835 779298583 462077274 663578849 749473301 945147445 667844251 678289389 10614100 603180753 95369292 908898834 886638430 895017871 897090666 989088582 489687898 984215689 419194621 450324106 838647869 912708612 285470442 649587742 350881386 611806669 832670147 841980965 308603074 650705516 543146884 780422542 827769278 848045255 413436292 562115780 896465324 955921630 633392207 766357212 397843720 734620675 368816223 813310369 764795823 993706328 552750683 974922677 42370535 940930072 76405959 916109950 16156665 601411877 313236768 522245154 494857618 628673782 95430171 217400028 691890224 863309304 231386290 648180062 44047596 265864752 684104419 855070543 267240244 375237062 664983839 913295280 312286281 909623318 516029739 900479943 504407059 520258958 457917018 815934524 31358762 754478567 811550490 886147663 767088445 978824895 834667787 839580268 368940496 526146350 600063508 772024993 605803044 703022607 129288297 311449839 868995611 939960997 13615168 731007856 590940567 937194924 648636473 913066613 801424343 870262368 387326789 552569156 828966921 954416384 161388918 321582491 365392029 528525390 219796994 702434239 676873104 989219950 626390236 907000049 70725053 309496740 337004906 575387944 297047842 813416181 319892979 460981689 53969947 833271838 931047131 980884791 993824723 993884575 166481731 887997636 125377404 435329205 854932343 905937871 117716089 626275555 804058745 919538088 886018468 930507904 955142208 985638244 38510104 579091866 655325782 833516115 294285243 698081367 774210481 985063134 254304484 575898402 287504358 940734751 590852766 889501248 888994710 929139849 868947601 987413815 311057132 762258488 128987519 632079168 447001155 494448843 814688561 940460900 780933305 973806662 6954044 395511642 903778618 959045087 290236025 613757664 413722211 718840441 453559819 502079823 233170205 716257303 348766465 841861596 738961485 857602776 960578244 997002965 236811773 611809208 58007711 145009975 384153483 631804548 90717572 743911750 415118014 813958419 593690072 944902943 854278669 958691750 844401456 938332032 755838129 856033012 329690386 510384567 83957732 699828990 432855263 715039109 520198367 686586415 525421328 710597967 716632992 791918145 643725096 934588001 357034110 590753025 990474443 999112846 415076906 639610516 889664850 930654108 237935691 697657846 867464514 928334338 358755981 644348816 348058569 589843943 915965420 926660757 74124418 844613539 469616046 484486543 349834297 869292129 81933056 849736332 57076690 750357191 245609193 997439384 378680439 666644415 388261673 549237251 51960286 946869595 4012306 119790292 233399195 522498060 956126434 972460849 173889532 328979863 366049191 688610733 865605062 958963579 737861244 768153495 357150795 368321120 427086582 909282029 574319593 841933812 50759079 180781374 393156731 634451927 76347342 481752110 706287525 928123499 961047519 975289925 115173794 986659535 403676124 531114738 786442032 946579727 912782589 988074917 305033632 309587503 997681407 999913928 116120111 974885630 829302528 861601218 152267812 307565355 126805574 780563537 593192549 872231189 762300439 991919201 380544154 883895665 316978243 919118307 957365355 970987830 225322452 358277540 281285679 688784599 122129108 391398772 214540425 667395258 333581215 961684318 103804166 594512498 27783396 597864600 827391467 857572192 281549821 358431161 742527435 961844882 219323068 819913945 322272057 409571510 183330921 692647802 847165308 919151398 923772889 952566558 460133377 888318679 584300890 870864975 503595100 934468722 761911294 828374801 135783434 991307643 369922468 993375731 769395932 834551970 244592906 999386167 199695002 393407820 821055323 959823934 465127405 781024423 25207099 350714350 202276913 895044677 636365241 833451849 761290618 788239078 207309166 923899477 18592802 479765679 283370280 655833251 398155265 718563842 571507840 722403837 866531908 894204860 193100003 393795940 944394358 965484504 278816757 444228654 318110192 838272323 117419178 548326939 70654178 460952946 915750942 995378448 735933523 942230518 226209261 628737656 202316387 495595457 267634252 360471774 975889157 999676001 352461504 710006056 422417336 943067739 533184178 826812856 573528647 673204308 450283307 944721206 618656328 898192551 603899664 906090020 981399715 995048875 936226245 949044043 777896016 778040718 619935223 968007151 359471941 608392316 54282382 184683165 887082429 912754054 695816081 794401736 23303670 214574886 530801252 905843134 858109890 889910527 982324613 999534883 137233682 367745050 576686922 852609666 866620841 993437304 163709361 974467267 930845102 991191874 723964233 991735919 968931864 987256351 555236580 866324358 62316531 125343018 400890186 836681459 768999638 911405595 735758336 735863607 473995726 763261202 403295038 903038302 551290773 673709143 593029320 882637948 674637271 676489248 117606282 917809778 429053504 983396818 855308603 866553936 962852384 963303734 458383235 619606398 322543601 325554289 669667130 720946716 139300752 860562650 863076888 977710902 770491912 909830796 583837678 691754626 208003439 914275355 693123934 905436164 16974062 203800321 299194924 454829068 204965189 228037221 359571745 953741677 169108569 503105817 660910249 670581793 441268119 724305647 131843672 884092406 388212234 746829071 417275154 756061757 909366477 979816845 617404429 828297476 771831266 806502544 779687617 796476528 157313066 375445205 861308184 953731959 230013284 395757055 543708714 853406544 184294329 194595800 415809409 939590622 242935657 912233123 863270910 976556000 529594545 652746081 913546307 968387251 592138223 877815161 267939644 762846333 886510331 926172749 328436129 482900450 545499235 674152341 388779921 895160728 550479310 645434126 961315298 982783796 397006564 485461894 711368714 752653884 144457306 793155336 500464638 623906519 646931606 806935299 709610252 860413006 308991273 784857737 837724776 895607048 900484208 991897554 857483029 982109124 170562295 976437785 717057116 879411449 588690385 960032962 714522782 940054071 393763386 994883374 408364859 425060549 757485111 941216266 491079119 667184186 32185260 656413767 675812061 892785180 602598990 994077462 388459147 405539330 473673925 661129019 905700074 922561329 250341800 858898510 879408268 984498642 828102001 922301084 18530810 277816568 11152916 777270485 875143401 987762133 256476294 432964059 83359861 226032053 715497338 972926597 731618220 761373744 230971628 668821833 974145785 995013815 49530928 337951698 201992450 259994695 967694106 992111105 737861550 807015186 989486177 997372462 355166323 904210745 53711821 956165895 478941284 932218434 998625258 998734051 548405861 683674646 707583056 916961186 866596474 940876057 950829780 971928555 517743471 899052206 368561123 946073498 34459885 39754087 791652142 913771827 534918757 899657805 60884806 978121952 650905933 873543831 521286954 864779474 206066482 561613978 260927205 318993860 824709834 977384826 115222243 165389807 750946083 917381839 366737576 961451865 444526829 904223971 112393156 494975786 237131461 577587802 380591370 869037925 876788789 879303672 197398815 722911604 427091729 833605414 302215371 559343753 748026871 984804208 138692616 933709273 753424969 983709953 633711096 860512306 262219080 628586599 907949177 992746171 207129980 653107632 932548013 936815258 537096352 803264895 17133958 394729633 878159565 950457258 135979337 872960354 118422047 332463941 679234698 909808753 945213420 984242404 812149861 940359281 895306099 963491239 535509045 938561782 889649733 960583582 85470594 421117943 926843639 970279784 772459032 868948656 432332179 920349437 729987570 833681909 500523344 878434483 88665220 766866406 545137032 860442707 790605501 836119629 592937728 691051803 769890914 795787577 733460846 738303835 362562566 536367446 330012868 717041729 511750112 687163123 181541806 589823472 710185022 843134149 716831239 843403671 419990317 745423784 586176210 656932343 8734889 116399972 457035759 837215595 51631124 155887187 771982196 889657261 973388902 999480989 409271102 969285977 776910605 921380360 889841021 918679050 605979281 856422333 988110263 994023877 148487785 608378194 112262562 935623553 334596523 636128166 948589125 957875474 219691292 385266874 185550723 931967188 589089611 712562526 309929267 423698227 714968925 986206650 314717437 859740347 553514299 716727391 188820064 248312750 438160750 960959177 589338913 883931924 873254156 900369951 834266653 929144859 345955455 508043379 317172393 673711445 140977505 335983778 385540016 459547545 328045461 372893971 270320417 471796059 742164133 862708885 920017933 987684821 719297367 969206979 423702988 596955345 496841825 777750943 589960235 731379855 828542494 999621472 718523669 895760749 743924203 923662661 232716756 687537200 407732700 850416784 678047016 995423607 591902815 893777270 953239416 975482293 168676010 964723127 840355117 955307885 553487423 700109346 595197608 799489493 341720942 832850764 530607235 922768900 68100487 674083041 539902163 616018656 652970189 838280807 497453827 849380720 524424609 770460823 574877419 741430085 212224435 677607418 879114023 970450905 264716895 758956126 939774720 952222711 420000906 450170232 79393297 732521775 78765487 759074056 850681683 902784279 455121010 642539195 600925132 839543742 246009982 616043730 210110653 693732760 277527877 452560417 382012434 828907190 384199563 405673023 227946417 410389169 493693534 855903759 965755860 986818708 24745724 676400959 269806613 383069875 862218599 946305149 426995738 714343106 556752765 685218318 126842650 416429919 385065950 668809539 771100742 812158623 305651586 768298729 663747328 705582876 434754058 976330621 784337168 845289863 712878294 831363182 726333223 838614896 59447000 537790848 722604643 818090134 349727172 659458414 582519899 923738683 869822916 975710517 96982670 551542066 519935122 956087944 268795386 776959461 549204336 725835489 904292041 938157450 80980257 589827532 457483721 580673625 352018754 638160577 974745340 990085434 942578972 988251500 805496536 848071386 5744003 656827898 829924302 868005940 701765499 784110137 347075766 622982467 122650774 797619800 158371631 335338952 218167204 342240949 616316101 946446679 399447856 702312804 496272209 824114266 978331084 996038674 206706732 535890003 887787354 910694274 919194057 981421328 882857826 894052313 705878971 851779067 347526287 796666233 686708809 813505737 75823042 149261686 902049027 912687760 272980442 755703488 719581521 841206736 721278722 859981716 847747220 887257030 83755238 284909695 213353299 223815695 600558080 823701368 818712711 991521948 619882206 955867121 500145468 797869601 9413951 125218817 861700412 870118006 764256108 778296202 627450175 697176599 506991270 673313951 201027771 603498058 816750869 889700089 258049598 577266052 634706178 804893035 573644841 932316626 239248004 716063841 22518287 127243743 24294923 28115298 236282989 284570956 236651938 881266158 901209338 937035204 229065677 786036047 437074371 538850390 503116495 613850511 39205630 577127477 470915653 545681629 18240925 977623634 676940942 851204735 111276328 407399373 483569113 961370327 389653696 742649909 935469733 956137167 939873211 946345386 421954545 585926164 478689311 982863785 642665644 775897219 257924501 280582280 42345285 708971619 399948818 758779251 95454515 567863895 324928551 599682275 835924533 849873063 900004955 993752656 913070583 939019362 421492849 900311052 806390108 943928531 949196620 982860025 569810253 820035958 814143976 851266716 77309672 814574388 858909569 996633555 49747988 404463861 977898608 995928434 324638013 603828373 109845859 928083064 935992975 996658977 963318951 989331726 404138698 645170470 448817102 893512750 13260914 302147622 578628529 816364247 525936749 881770447 870972714 948000462 576263714 852467917 131793287 705289199 546400430 720195964 337996328 589611462 774622713 797537762 70785972 945079750 830527524 965145598 969479295 978587930 166993400 679938088 212815535 804961595 467402320 841869267 434003799 901972925 957854245 988408906 961167215 994641372 959681079 992132399 721675528 846108742 598162793 900120363 382645881 434158940 66814965 560751079 227158467 778350825 389933795 682165940 765137169 860969743 956400422 980784875 295464093 828490063 520742736 646479815 694857990 852100913 208819615 245465404 700058006 810819582 594850198 881386612 695840838 799393146 74170278 565305062 842517741 984842947 450491418 667469754 14627100 477559514 755557127 890659017 647928923 821294795 591724777 661618296 801006884 938428749 895669957 977949362 576255529 858336403 544331188 853123029 147248853 753673968 466439307 674932184 249921957 819864652 959539609 994535699 953824875 960034073 668410026 674466515 778108555 802526404 127530803 129395339 590595776 901764020 880043676 952276973 54514301 119684382 84428613 548794558 533092758 570172979 548869544 751943242 956780682 981732436 213254456 684540440 141290927 953094636 468828493 576367850 602765162 826653061 168784517 605229971 7277075 395815907 107690409 220634347 563397693 959877692 421854559 474615433 942058645 997142875 537284376 658237667 705012830 997682469 892556894 995258561 782079836 806757014 392298551 868467886 855095598 945145757 601257780 937464964 613084539 825435656 761791244 902075298 131733932 224611866 199606012 950703089 660088383 929588743 231790900 855180727 704372156 906244574 353635646 522638345 415882198 797972108 897453666 972775637 263650384 707498483 375493807 971257259 75782823 228530687 490880157 827217008 5814645 414772670 86733814 484493897 907076210 931244746 272105248 769547031 605501624 612833460 411074853 916662025 247844779 281864979 212946190 281569419 789345042 817442987 701201976 772745470 2752206 785983074 38701039 323446428 849556985 975067450 705675293 961286141 243668768 874192282 172409671 916617193 99609175 167983487 293457287 494331377 678374844 834235596 329250853 952616860 411275911 984190843 403095487 419952817 386493356 641915839 867135887 883793136 123898235 490242636 801831882 815252824 81262769 568196770 966358150 989937416 322191907 488189557 798204100 968663399 977953270 981586340 202647126 850464675 62983765 917262640 400470583 452378676 176599396 970897772 165762437 464994709 242547596 456820630 373228974 395676924 209643575 567137870 244808286 959150923 763047731 903592780 450620517 606424630 82780694 625123419 187080467 214552925 357399994 591777819 215621996 752339022 890485473 896666099 999082540 999947921 294815647 370511310 392003228 732116652 560126975 788814711 682612092 876553801 133211508 603157458 719229724 770223564 697534679 715506885 873853149 883371465 220621291 660588425 46670781 586178596 649924781 805400295 314526869 737038196 731224846 966951572 427263362 996002781 34618784 323714413 134190196 340970452 355912720 913986108 215267956 664433217 696878838 776107874 411218055 539177615 285020470 396984457 171791437 652667385 587867425 633293330 643358461 766144468 111301682 759282606 742017339 783604551 337957271 518801136 206622739 652398388 146200446 571460721 85828200 825330000 271108409 534689610 145182551 403404250 964575717 966579934 636507237 645426921 617593960 794494783 91055554 702703898 50343033 567546531 106300517 572128820 252892945 762636906 103355610 605582081 617688434 814390077 952933549 956592149 343167653 792213388 286481231 804578219 952701537 976685416 717707992 751144624 252813934 978562828 729823314 838874441 418066516 870751827 969972181 980548319 765455373 814788138 806824058 871469374 716602812 839902589 581507281 797426848 366567211 867579972 445137608 789201441 264960685 447537944 404353207 934686119 689578559 815400368 639179634 724166305 111658849 290645014 382095912 756218222 304738209 862670178 543539579 646961211 446077133 752774465 461236917 787532439 118147198 731366578 707451143 930754749 433293881 958212989 956796038 992231134 123945082 769859970 385842311 534920344 9002980 831391636 283845405 976222244 728979898 845686846 617221589 639070853 530236680 924357497 336404217 732747697 430317930 828094790 663130575 940397818 146960520 536237002 923308345 933821577 926635506 957793907 436067963 869053967 634906149 956324718 511394309 630517034 35319575 189016107 654535864 938188029 326104918 889445822 746467420 989378456 411944014 592338273 159822882 428352806 561262526 752047588 167718591 694719525 797565164 804886700 411551396 442597231 360833123 429157671 396658429 744687291 99599530 609154397 127933497 297750208 410488975 955974341 3278969 644369959 135025447 224862962 330249736 669806575 301042816 951344892 289414057 302341018 141646021 833577104 376807979 867838596 842596613 910672180 599355517 932678258 746381418 854910759 332712034 782333478 416716665 545823266 585690926 829256553 767922986 900662270 346283952 503773614 820001 42023119 261998920 542057751 284186336 543888250 695611845 799012003 507681350 922062313 330915257 770121702 441054376 489430325 735338334 895274729 453010396 512177258 314458679 710173627 612453876 988785520 720047747 883968175 633828924 716578661 77445365 771476513 654804869 783811087 208931533 765152138 339110274 629036726 677650247 850115560 800456576 955089801 683795859 847667193 437626650 483658486 126151059 274259101 205967343 781542357 942674945 990992797 579401709 923334794 584807254 618038915 708743304 910638432 365814208 537499202 291091793 920034589 372149848 477477360 346115183 567670821 162949761 367189403 745197081 863178892 361194203 579654575 972009587 975991278 41402662 387336206 907108819 972859915 980511870 986672893 628189728 850576707 457977939 540689275 614396988 863573797 367704579 982279384 150130518 385121887 396153422 858881295 1070082 387130932 431154722 490513340 390620295 698323315 174323224 747777752 92671466 692798418 449876818 825483501 367817259 825560022 573505988 998947605 849437657 961678435 634306213 691063215 516585860 724443893 179576837 871213992 238143276 793543374 213959116 441983711 395428721 865586598 109803657 863820541 551240491 884886276 444498913 925365293 139344647 866179561 877797487 901971818 307747927 931547077 654154499 660371019 904365349 971413547 530766772 568635292 626346345 728554033 747228752 766433415 983421227 993403398 529407544 707468636 916999498 934596162 503146076 947488750 91281889 945287849 817013294 888382147 499161494 643967405 699022673 753817981 433400868 713597735 749085426 864125292 882658969 987009666 745378238 951527856 214270060 724337025 840391247 995658014 844844249 869073510 377043905 841678334 88081826 857127743 841559404 930992504 977565125 981448985 746105641 993770832 101635697 548013498 535435232 878718389 668817427 872227639 766907741 885615501 655893616 864054570 316729483 550453579 705765514 781932557 659825329 858877125 875847492 950964466 812598260 995855713 154362718 791943586 810772304 882875343 183031637 856007528 64456137 273810210 822194360 854634620 778431979 891595263 820468829 973625862 221271289 685773205 347050379 826621133 104074208 821318051 992877093 995959781 71180616 231567326 577643970 784664256 298445496 310732711 433342125 725317258 519975180 960678286 503224890 931422400 354166701 660309423 473527197 958838746 44238122 632536760 929943654 942764462 530946450 841792601 382835808 496110107 523877894 799049601 694671864 755936927 613014314 787853276 214248673 561299935 640357084 739091128 31322552 942009524 566499946 869348828 367857875 755354411 873226629 874728394 658508066 702343043 579822049 647598860 837111381 897971278 11585577 476545077 959827209 989367267 52274587 994020735 389199951 480278031 122665545 581214169 601336644 683253710 447403979 549445151 599210569 906704300 455271918 712061238 802081296 920472628 940797323 981568749 468724885 810609206 489876755 521933781 798169253 817909772 297325477 558864209 577979992 763136867 401718174 865335197 754896450 768899375 31686823 46429377 327179493 436437895 535738868 672561705 529295730 908704722 561355301 833942280 935847021 993445746 832212175 836346943 71913492 108558880 22519249 118520240 647175989 721880017 693137654 976329449 887562838 958082656 856313740 921976462 765624252 973904315 260501889 795400095 402355410 610128680 519948074 926159093 149593780 458951612 454617369 921727947 50365569 592671186 991055272 997777764 241648704 659677316 4107029 877828060 667746618 829868240 415456240 847612818 932353613 958746591 941477858 954743283 482927169 570396536 926216124 937802436 300489116 681272766 269398727 323792635 204072991 721975732 285692175 867165118 44535030 247252244 291985575 589331249 841963356 901988995 116334005 814177642 245247746 256046633 599569533 869315823 234945209 584406820 405752721 780836464 371582408 598248080 791877406 943324695 215315411 358970058 167590398 634203799 823450263 965704110 956220497 961492510 168578212 421280056 216840082 582924277 4223169 136678978 971764854 990839988 934280264 963714010 918132426 982343043 79971075 650828104 762105027 973768719 362141967 842480074 244924407 866188926 430419126 433601327 205986417 984937744 112625354 968171789 904404187 965647775 83394372 307022059 938966745 957480756 170235371 413043456 749561944 908392914 832595800 929099561 118546739 169675836 683398645 850083507 36257446 881030117 446853965 539616617 837454683 868594186 916652813 944301885 192686992 433330128 612799149 778233392 993819494 996245347 847699791 965903336 728114440 941120009 692289485 896711541 718867004 806411937 328722986 571723405 995770167 998998830 689038184 888709063 684602852 709056300 446773184 876140632 406537145 489514547 733693198 887993246 423580285 514893698 724602197 939756138 947010190 968578937 988328135 997109015 96450267 140038798 86327814 736036450 537163451 783676301 861586302 915097474 394015638 726604823 952239887 964058359 386443095 766395326 190455121 549468939 625686756 854994668 734695148 977268007 479269332 517305970 324957314 740703770 998568800 999959939 425955314 915771934 153647923 840092265 999337786 999753566 181515053 280463606 757766164 833781408 447786520 807108331 344494498 589948292 613468025 685197852 299273672 649423168 757148567 994529427 132005022 328619130 935034882 963980605 296531581 798714714 866720065 890513332 212077098 838985314 598072892 681422193 551462324 568319100 46491179 264243580 137586597 648296548 329839594 382171123 637888057 772181326 318552396 386097814 682300129 825052198 885054146 988075424 529439553 979656506 374769009 966538348 666015209 766836072 613586556 713840380 509809963 960982216 799876807 877302845 466624680 552965974 896239550 951487336 751018518 803800687 62943378 951479519 715340811 870624409 256297763 532871899 824727711 848327941 297879861 840645926 516069473 921394365 468350063 722072097 985289760 989726702 144190831 898019380 352579163 474841764 933985756 953657916 709638183 878966699 892317961 933384449 318036883 418796501 688545689 960362252 349228036 749965989 480968904 573294387 500056304 510645713 106181525 257908668 14869243 121915985 492026349 796357420 880408140 978678230 664253022 988032094 944372714 947716467 651905538 962841322 222704955 991080613 551404563 600386221 643058456 649732611 925651475 957899674 698940409 967474921 350641276 734388347 35657289 581492946 764671960 994729407 261847111 522040828 247329477 254121096 578217483 797924474 98194291 476480352 146103050 576160211 508673955 630015086 548194986 597983567 179260626 295536215 314860119 750865157 448809168 853057135 488589459 812050277 743459115 847261916 173192255 849337994 611617249 797027168 424118459 748079679 88354241 537636350 464587551 762737565 162768457 549502610 317429822 730713141 97025359 832540486 880436930 939239360 198351979 960892251 369518931 838663581 126690259 764072429 620910584 899505917 151842388 551397346 401023272 551228681 57547453 768475751 972737955 980256033 689482464 757315545 349459796 845970710 653381406 935669885 68510330 920066601 304961703 659835036 818498115 845679009 232644279 868861704 528619559 730891541 63561395 118371381 249889841 458147161 331407655 682889206 755232568 878716557 903569704 975766850 952330044 972384733 370158064 991185970 659133578 766954117 802291743 980969057 774122116 978667186 38216909 206793843 211460100 752472322 87986660 999297378 468872436 645208562 437516057 484608310 482154484 958985463 810431378 906273424 428111365 722046288 849315876 900845836 243725591 383297367 149760463 682647998 570691215 826341191 141506945 764402797 350081237 933868814 827302016 970916210 278709991 489775493 633711719 764181242 145995595 753747530 379865189 821552724 337963096 524017974 81431882 570005706 647422042 739333590 581292371 641312520 262534135 889285248 24765441 845257886 556110276 996362609 474935696 849289970 838714280 856474517 518869550 714239935 133602664 706021337 570047130 832543863 900024419 959637645 839620376 931578683 858278770 870574659 687375802 853354795 260522280 583554191 231475737 885965228 45193420 80170227 751043884 967630811 789428264 917884805 199205390 461857755 741569550 840771556 365902831 571886492 659347345 745969703 565091517 941797957 200636298 973864252 285766035 532776945 500066456 907875964 182115577 577493036 386553349 870203516 967659076 985784269 396145376 656804290 281121633 756027413 224243243 859676014 276746532 552283155 50845601 146850229 40491160 953914947 341505208 685181266 118932106 120631449 698185843 797139191 320517230 814351535 886273044 918541933 469795438 646164115 688996413 959936045 438729119 990463482 134572710 316114041 244138893 955920854 358117327 935142493 761950630 819058124 988400928 995953539 327486630 476567206 670591865 853537877 39173602 915879850 270911326 373684255 199786471 376967421 532296280 534336498 954644145 971061935 379945689 575914538 204026053 973680322 108298107 458203477 246321365 777305269 886119893 948387078 540796008 803034689 657365621 981738873 979914324 988601174 460131699 662266009 271865053 490899297 663023115 902653404 890442384 957377575 761304731 779809200 764214402 930851445 927360315 947475094 66389270 835651922 716107630 920703995 345236495 663899690 188805017 708984860 785353618 975972531 795296223 992387531 978472900 989917267 962672899 983452156 45417218 610796327 240611128 274269867 842045032 847596360 573863719 714807713 595274383 910471575 979381160 982081146 657584115 997114758 858280920 973100447 305833800 516470457 154808651 710806600 547399017 573310199 455423492 937680396 62292060 316559951 557663039 687696351 970309284 993425554 771253851 844176278 875008843 908361325 360454834 612635741 757754605 963642817 136255392 408976131 483483202 791483909 899083602 917536662 218395485 369198063 942485449 962503606 423350469 906219376 869157617 990505101 169723343 622872849 633716229 950594346 762631554 772323607 57159617 433453693 164064278 958863092 907582408 984750462 776317752 899448184 928540552 992461404 555462946 617390833 323122307 743897070 878633239 968940671 478846185 914555032 720996401 722520502 572022368 949877206 830515570 990616491 676408322 834344869 152728969 418772510 283061235 679752240 201881362 294899423 278868326 323267157 924318192 986183140 793167535 990402805 787751548 944924659 848680882 994626160 267976634 864188619 740683543 747257668 899720254 989375349 426785765 749564875 661078202 880687910 413613819 824072818 309944068 821770540 858089052 940897598 664004603 987126847 411334567 568105832 762770510 865171514 956436059 958885204 615873196 951215550 573758543 702093735 345478257 472810338 656722782 686919518 672572871 812694946 947465405 964172047 348545895 546406590 444885535 843380278 843089302 983665093 957482231 990819522 291057487 620784379 506623682 798594562 149290973 725637881 907175454 946170782 999803669 999869149 478694741 579347930 531253782 542712073 249613608 727621232 469490300 660204091 520178407 789481498 973632746 974701487 43226253 873873603 316407135 859845377 286050812 394717213 63391192 687535844 879403760 898017475 545519255 782954265 623448292 913156915 638431734 738162353 640303644 759691821 771716316 828130305 13591395 259693485 912104908 920745611 578300017 855793826 170901507 675667624 100047891 771610825 890358363 964500722 504323377 803599772 710548437 952629203 701671713 948260476 169953441 806848004 978717397 982550157 303075575 632333171 522147720 532957019 358477409 398168760 148384181 272569615 175993174 623224402 698215179 806832880 907566902 940096615 952766373 997681009 615399034 724226875 636780621 979243702 875111342 898814436 603187755 967408822 738231144 860036128 73054846 869422230 693795973 700985749 250729032 270979394 107792055 484229203 745069733 913290556 820162252 863999471 821730071 965698812 446778697 494418168 197872655 986297358 770534480 824666001 455091233 822619352 349700912 397557345 284829129 749216490 570672154 780020554 51420538 626307320 346384485 576122266 436536322 788351710 747016122 761603773 195529707 847401594 39716094 241907352 153406354 870074244 572000734 728194807 419073222 877790543 849628214 942220056 60987614 855068211 106648203 137527715 421573481 473146958 883387777 956736683 326780961 361021169 512293646 561583869 739788309 892610540 302526760 562269261 829152763 921826386 457641607 848898811 901744367 911859607 108383681 462611871 450708741 656239076 695231000 724945132 690688264 735099616 626852271 944283026 616303423 814088239 325751793 338788083 862460622 870192016 466749016 839063782 445789676 714199401 348424863 481746280 445565252 470332136 54571861 557226648 288101252 936995358 321168457 457082054 658355309 743894816 116813400 976235150 136828793 865216291 337353332 747146343 442806797 473443824 850733005 856768574 429124781 770442490 729494663 968391697 249099227 681870267 872327197 921200063 278014105 394976389 806916334 956052296 555378723 636783227 674769324 678653213 455021382 792933380 412134385 527610328 129619043 272285377 764854290 921010605 549433881 924857438 583508826 826247400 560917191 945442548 933130306 953364549 739424476 950616379 103704713 505546395 978862606 998893245 463120316 783478722 206943291 445003992 875279874 912685753 449901056 851979044 411085083 838226622 571968617 632420417 781485501 900099190 174306266 860559317 863134724 914840603 24241545 353113909 360411966 894448585 759274356 885172107 466524880 664043019 862352139 862388737 505015524 536768015 977442491 990223437 373117184 401625153 664741111 787749226 121356570 332389426 608973359 989028366 822172808 913961984 760011060 842781477 340370798 567584312 95097106 895149272 746123754 751166855 700512426 883786993 760637535 847289949 285119676 651287893 511777824 755261647 569091619 898021643 404317417 694498083 371040851 665712934 338284599 766002156 498447485 645961406 400401818 523509790 572556557 674764114 855851139 891702457 70248099 541306204 567738656 715082990 594645594 943176311 790664928 905383957 545446651 607799158 802916626 851202442 725402833 894262750 443767504 848330945 117372058 226726497 124135599 228786080 899892349 998046891 377350075 798202227 221371434 787172223 414462403 643590107 616716597 823343712 796932798 846763531 218525717 655240983 571257526 755295681 571631432 974381890 268964839 311821668 968378518 971193460 819821288 925062084 884456736 885809192 29936539 894234258 221004329 558552677 886910742 950278551 847753046 935218999 788565486 794905015 585772298 614460737 636956256 753053897 773773281 915925208 332573725 786541822 489458894 723614035 957774493 965665556 264342193 854082065 930205973 990265065 532006892 641102876 716154935 808172905 552765085 741543500 406596538 709718156 947546693 972351535 551232438 947559270 989163460 999788476 40729366 59170683 263650345 818818987 749403277 872088742 844834389 917097149 784992360 878769218 508596289 566644363 450549957 574467670 564246200 586414141 930651732 969629988 66273811 306232548 741719058 997310914 831232466 849653432 316739496 605934229 269728537 850712682 32488666 806974557 733728724 936689240 647803254 909400932 700595284 719022339 884075609 938273654 479480157 598226099 469955217 855842521 845836912 944284066 304669937 913750725 633222341 634525372 911991200 962027056 822468489 896903316 904068446 925027218 601809957 669840979 655919540 856252858 202716821 976100274 629403202 862831827 229876983 893870712 983540697 984046740 758812570 987445266 847723144 990205289 98596671 404809421 659562615 895672564 34212366 881995448 997987535 998306201 227917843 743710673 288322422 574662992 325603348 695931928 381590062 435460114 7750833 121845066 18363672 522759255 210458377 740385957 538241810 856391348 976411459 992431239 421607956 960500263 552100650 934380199 22876188 544671319 462389812 770075047 221341864 823882735 735060681 877840825 909352835 965599672 242269170 889837539 586905512 782809326 845301173 858282629 940137159 976161971 342278986 345375690 557751930 601471570 911455066 982362637 918451067 939494704 597071978 777023052 241890879 341340214 432444488 682740330 980133227 995838118 637962557 765692669 942388488 979869454 780890045 980411763 628793471 964210366 967386086 993725566 989595081 995764132 848780361 872387907 314880322 521656934 527144383 585064517 739187813 791093346 722213594 821990411 923095393 926638665 586749186 799102626 988258302 998110599 284771183 971646226 156324055 518201391 235136613 902887837 316687574 926719659 886382066 967041500 561401490 660504869 804019330 984936174 825116251 892840086 433589833 962295132 473398585 790569895 294769477 932559972 968741475 992892191 641883695 686600813 843174017 889780413 626178823 878786731 44761165 916162560 12414408 749224948 337001056 650099436 890448353 962934824 114629980 921854723 692946303 983085697 955262233 993762562 963997177 993219746 255296435 954844084 339356222 487907415 26966751 214757976 685704150 930012301 171342848 864218180 679672789 743329781 843109825 848770330 384020040 759201325 991102228 999177021 140011461 267045004 138009989 844232116 791803004 870037383 992009034 994300930 873725306 984469789 536870203 675327798 620234360 990028950 714872585 929176251 158004148 565919692 751982333 872603123 444938030 962891897 933144496 984550301 320696309 801742586 544048773 941282000 455434787 862946724 649641248 936095150 818028979 892671763 262389118 635021853 360270 669174097 545027494 993140295 176466165 359840175 684528450 911764173 381757186 570000181 721220830 885811620 234644772 419803512 855002984 859401218 594311644 655855413 941451433 941730050 679423510 965209338 267620397 312732550 555072315 653718909 580967627 848639594 130346889 535004956 170378345 199050269 311408690 460087661 351973178 940298788 498828773 548643385 149526175 617712343 165511904 537634020 970820104 994600151 767893302 908914388 764790436 902298284 181619872 561408942 73354366 927950326 209727280 755798264 82719056 307037419 11783629 715705790 642222409 661723614 995659567 999077585 960456130 971377289 577419971 999100200 937340371 953604704 876491138 935462482 440336551 504338374 657753338 738870892 738100178 951943176 707790930 976070956 940490854 975187431 924479048 963427329 96467590 569355403 426886667 958933482 39353184 170678136 10486318 582541824 191782162 579249855 913109940 980264406 990760129 999369053 405978354 689826651 421317423 511275359 738446402 931639662 627570583 840924140 374260304 656605868 173072295 843630530 527381089 893885946 359826387 557286237 518584115 569258527 977657630 994529194 414680044 565443291 118601355 581179979 773465969 843448283 52146946 347781363 716827845 982067103 983385187 990548782 13696436 612636404 540522557 915941961 308509770 596105821 872925345 888079357 903451359 923003559 753169816 774883681 172477028 540028334 369842051 867145166 130738632 816466187 614019179 983076011 956091578 966746626 825905392 977818547 95534831 637367795 464769084 934886734 482806591 674599056 172942386 581337752 692767567 920851745 981618124 983563635 255858626 422252673 203756750 463515134 753405168 921845701 567890044 659266863 488010883 984028426 28150964 640426281 915100128 958219640 745741512 768575196 883798150 992605875 556690180 990483675 783475461 840920984 70001167 671840595 789189720 972383497 505545250 830890427 933569267 993433539 737845516 976244800 195244085 624774798 20156140 295096300 198482020 679576526 269620681 317410440 232398767 886589041 825521009 878601791 961786533 986839801 118259135 793277741 974669595 984056444 641126688 711494680 671776972 903554417 310543425 964030737 426537102 479670939 444307071 875035314 259189563 559299200 457328412 659321135 88492104 898666591 626386812 868336426 249528763 817514505 612644516 786082561 802091440 919970724 336317856 876384821 497353358 816571656 490384737 662712526 83750212 244936930 437901712 924778196 269438306 664617538 276268385 849163144 759778278 825680630 958315052 964365116 966646806 999856932 314762231 860213275 615163115 640980740 970545280 983162814 989784054 996198122 585412681 732148470 519126369 577470128 245599898 926620201 898593619 986215307 247431214 347947617 905249446 994489844 417710418 677258363 306180563 596145374 157848441 658164432 555347432 714587536 307529866 430454611 448517862 639260010 65448755 859478602 159467816 562137786 592682120 911413391 405058307 686143925 791390179 996683799 769852310 983676126 552191379 745359123 479725443 973743305 568719679 682547685 162674062 802095669 943238075 993935129 691643070 830561863 18256882 780248752 324928128 762119273 973932736 974297013 775956823 862365212 667692274 934322761 535814098 692881441 209989752 978996905 365554440 934063181 189699989 232185477 233617919 869025387 496896125 537599803 490887186 741809674 726382013 771428243 34140924 648484219 115546302 258624202 472468363 889635859 12785611 922388418 923715056 967053196 602685705 747361333 235653440 758057474 435210792 457035842 556704048 585473818 726285211 736284496 323131067 952539367 875835756 962338192 104089593 791368117 318646011 957842716 419914127 489707694 32467800 118420034 34363562 861857389 52718102 420253363 23286278 85147266 818064758 829200860 175048340 691758371 514010363 584254954 976958678 992804728 271638483 801301179 261583463 507500486 628376128 756340998 955927615 973139749 960226079 986060826 501911855 529115588 788856774 986138366 242940846 325572963 502282316 784999756 457080098 642201439 244959186 686025758 95932024 111302761 862988819 901660136 950132808 974353953 427295561 854285708 407353290 727364431 626313193 652183559 717692217 920855600 581013871 659031408 811999100 889142399 401443642 404886366 614182437 886115364 628430552 933496035 310984533 354708727 911096670 913675897 359570048 644713969 938795025 993359479 611903735 712523351 428636228 743605907 755131712 872591099 934171756 934537423 497819677 760215639 371649701 910080881 736450548 862783086 285863026 706722448 362808623 547769791 129562556 702002099 625523496 740620808 212934364 229396017 528585992 643813348 94122337 605344529 793362186 919839285 177925182 431332926 598375540 786623682 748596762 999965321 372948821 391252944 353116787 599040406 678148303 942220926 145213955 382044966 608110511 827085268 343952605 381037950 472294927 563279510 308412272 477385400 809144336 933882163 114302224 586349328 238779961 838885791 909388227 952653822 650292757 867496261 392016774 886990804 928199330 956081816 845549887 946602558 513806552 571315372 214005171 718659481 531206694 732051685 733854334 798076382 980535462 991057876 877324000 908880269 733286805 958525908 645385590 681783414 915507971 940888926 965113705 994105189 855090819 911427619 188961749 449047192 152193350 932067224 702029146 900844626 533620579 659166141 88701840 853638739 669694731 903183259 935681054 946803125 829142980 867188785 758310187 994357630 896236321 998782645 854559678 999234510 232414590 548044138 176899727 644737511 817179925 885658619 578733761 799467787 51396959 63821843 872194955 955842750 278067352 897411627 884433147 957517592 698986468 830366849 786991151 925812209 830031501 979426636 192852561 733924204 516802045 733164975 812835380 817447938 205733898 641551926 572250220 900456418 322320918 787007327 569445724 611219294 334911943 612234906 344247703 365941864 631816519 751026727 52017633 961590071 3379009 856480915 479746917 613091283 425814972 440411496 292470716 582853805 756252002 929021368 75314307 765549757 511196139 850047875 15339466 820253746 816331150 894131459 307398190 725905818 968555959 995958697 669442606 864150759 231997400 558130478 681942046 989158609 352987144 662297972 323065569 510565117 38006794 503354714 343115715 831109900 168259968 820975667 148634120 172306624 103016976 959466945 542921550 731720436 535179492 666512545 199764272 472285655 79578471 769725819 412651944 967938206 684243770 723404802 867785781 961760095 922161477 941873926 816209350 966832449 93210797 115828852 858093690 910218656 386849444 631354805 916798695 995781080 184308515 992087170 824766371 964351246 865904652 964640040 844576198 879826833 475787283 770846445 856769818 994451955 913030563 917176663 241266415 354099982 440756316 984663743 274170380 879688891 473194464 513207416 238441817 256305646 972786189 985363997 17425496 411199787 583425834 606203832 134730844 931040010 112524614 928067670 767847656 796745701 887130713 915773288 280685942 395492447 755250285 935006624 488404621 836662154 318989202 403723324 425777708 816671507 452048686 520267717 753840819 994698794 174213143 653612379 310029973 318071911 193275385 210626972 197414257 957098662 783127484 806024764 322512599 403506368 99774618 828444984 592587328 781162496 360872710 871570129 620950194 653369664 476609808 931419937 223169881 668780656 71114999 201236478 971599909 999008212 454770401 729067929 186673554 445484043 115685334 239722855 370877918 560258374 905526077 982209209 383219874 664935450 379139180 925045940 124687554 457914146 705239377 790391624 34928355 599580091 315234466 770999465 584291765 736752485 605435071 817401824 763220562 811871800 277019616 657309076 442189482 672622464 198167575 697730873 290478704 349218890 748998820 921061932 747766992 991633215 129245903 500943898 703162927 743127812 149202100 431702347 116043003 507082483 940497991 990775007 448743402 527619010 422843482 968971972 160117258 631848905 608625983 994787068 631724137 773105521 394167200 997709683 603627492 806806762 231649127 778046095 532310747 615285410 43199129 586103503 692798973 721000006 851958639 873132599 921237320 985975261 536280635 549376644 340685167 895734996 183400249 770265181 850500986 853849206 939407257 952184142 503522377 703786079 373735878 856403834 478138773 851502809 575083176 924079795 42689303 145839367 641348640 864758855 68147476 836746232 595243753 717410098 18363830 256760483 484849312 619964267 346903401 855574044 709226921 773910889 299477537 701215735 838689951 882573710 171043623 839551936 819900313 912988427 324148881 830938931 369282358 649808799 652204276 818733919 314886552 353889566 350109718 720099551 381355434 414096616 712407384 751178978 343134941 387985211 791928052 830738488 825833304 938789434 713898145 902196751 2288435 564949792 989545988 993047971 732689561 911296126 108242346 697843738 85658935 967866546 272837332 793775688 995969517 999438583 295906391 918379403 77945696 781743654 564958842 609468721 111438164 955776146 439235094 793463416 401167852 906271263 726953948 991615075 267905794 350145132 112196560 668648139 644654055 939923980 106266917 184289743 201560119 598266490 802838814 960345895 650064395 777147321 249619948 311055946 500810555 659171943 822679522 970350716 805682437 923387429 400497950 798045759 940516492 989140472 628987087 952789057 890563610 942482727 36535964 264817478 462431608 631761249 356854657 927881314 662474614 759657496 550896992 736787768 199018291 586167932 116904604 962810905 661599974 672083461 387430649 913086429 114703016 456216510 566353808 846365396 630795462 783805111 315859898 602193852 340706715 866195929 970759956 992326446 540865525 778898008 631425455 977838401 631045223 969433018 50971283 894086715 318270406 678605141 971459874 992780997 438720681 984441765 640036277 715495287 494624061 713746570 371368511 554079925 666157962 786999576 612117106 857363825 747501010 829420467 297346312 908059689 354215115 632380162 924613804 927516155 927011126 967523355 928047261 971522985 14101865 396810880 835248294 860228044 893279247 942437261 387239997 936243808 417896172 927452076 465303764 696015406 165174195 962892162 416476006 771261082 615829895 885460468 134154762 235383238 936145246 936669985 990723154 995485619 264391468 869007364 709149769 771181865 733738414 746504933 677685577 710242775 217603242 502806083 424305314 677729179 964468351 968233128 221643839 641154503 995142761 998471752 834944459 866137660 430162730 967451809 565707182 832798489 232612652 256111368 967248150 990533662 985425623 986323744 43274525 640729835 296637084 830898134 596358290 714393605 139607704 168918845 200443763 586389781 191703497 384963079 809977193 858315883 766193667 937916353 915245104 962369417 767634084 850832721 456584704 669403422 590115660 656996276 55696069 315669644 731112499 995544102 417509603 549391873 738836694 988022745 964356655 998954018 860769456 973637591 606933356 808530058 969658531 997595799 499697852 924458505 374575658 556294831 203905112 840642694 806507329 823147656 641001716 671806776 339059205 755723501 896942548 919613326 893810768 976532782 759839281 906553236 993676999 998377343 433323042 621657577 689288766 895447936 598574338 874217779 490919714 923028643 410570174 444017454 949966897 993091624 909220158 954794851 606352087 752035983 822897455 954606145 301566916 495721773 306745656 415414982 369927333 974445898 899211272 980674981 638186587 830484692 560485202 649254319 899703097 909851455 780515684 823933860 169045818 399875752 546940686 933627698 525657637 970846903 157800691 319697419 10520104 555129440 921494435 946251027 127002746 312192235 654169901 719474158 777416292 917484646 153859105 337974241 426751845 608179788 104924073 758172700 36851455 883241723 352330207 905254139 118239708 756261120 335533238 503386650 2287323 478590432 557575605 785082053 389026373 688701418 540549684 682326475 947403155 948329293 951583045 972550551 932446870 948709223 66188927 121491625 898657154 928155235 235598857 955787103 644729156 780151286 79585224 195741470 465566497 863119839 226461106 548044546 786771350 910507526 897360042 956054961 588275170 871500970 270234587 622258252 998081019 998640269 568810659 606691577 176505804 870601559 3155159 967339245 795452518 954809809 449394118 789588512 535287414 708383757 796660699 877704876 812159823 982857857 18540712 443645143 577746074 962322256 509798108 845249258 110289050 243481237 955355457 980584430 875915097 911236480 186873850 675197072 163416939 341311554 144966954 153930705 562918143 968671558 703530473 994668752 655816226 717699252 542381443 946126759 667020829 870347457 654830370 979627436 679474817 904314227 979303721 985895011 446307987 686358162 340336964 774175655 291854054 601679433 632896233 888324460 567746026 804881266 805952080 994822198 222139311 372305706 780247103 902205546 503396531 785707469 796036064 975377520 676776299 689135429 359744463 394953175 188955989 935677773 508970028 968169717 677622300 960975964 440299363 452353537 796270690 866040873 312971488 977053716 813007080 919054107 623083099 849404415 961001197 969195243 774998412 937450225 42473935 837038864 710570414 985108956 69382637 924733076 482572253 710919606 565988080 892133029 9425129 851818829 824837277 948281891 978902130 989077455 756304849 948265746 849367597 942722260 572552951 699060142 697600989 777366871 570760809 579868526 209825145 792826125 899556381 927126891 720539208 777896118 88559013 800558024 65408340 409433961 667804757 715821572 362362725 513928944 6100336 459629782 250223241 577773167 612698842 662949973 773890878 853955265 745855572 881647898 153681956 476857157 909326398 941242420 381672407 944305950 500481620 610793361 792396167 998005602 667063146 682238892 681977715 906687981 390986482 537396436 67070681 846268932 466838465 980944152 184200647 462802961 397169411 881882950 289409283 348296870 369901403 493192265 162034389 981941003 52441444 504132350 811617006 940533872 803472259 863957882 256481294 611713613 205119113 292187267 492171726 853384806 584306314 716200983 315638508 622373379 594353538 744959002 43921622 309325758 65289591 182708608 227795200 834916599 415836809 774848827 954932733 977062799 216858160 310782677 825214886 976143148 346199151 892328260 495748519 517632332 461114555 752830013 708071707 819847372 731268753 760318587 111047111 494752153 269720946 333797406 356915312 535855866 116972954 360849727 628712597 819314944 655789105 895231733 638722228 889041332 606380224 978757179 115286033 571237706 382110543 862268407 754897524 798190601 720792969 743033778 617382669 714939355 145819755 763591857 132828154 213906261 707715065 749450746 509150616 670218536 109943636 630710391 606240790 928499304 68258441 814681806 868245515 946205385 824124755 844889409 643359569 779490623 481544668 872830341 930552522 966937636 979206549 993512933 624167972 982017547 481886125 776579085 487138762 871045754 861432184 960619440 381477421 644643082 812841739 847464028 220041892 693681826 132983427 178734890 712932120 919004939 455354366 853365821 391976493 494726673 390424576 599582250 572219611 923090907 198339497 996895702 549757977 699587966 931639058 944917032 708940105 929873387 213301581 980849558 993449516 995032950 122312547 523764374 205398513 308050415 2045903 775554474 541778156 622916944 203053368 879808708 448253078 906842418 863013429 892504622 793515736 842847867 683467864 812439205 644022665 812899052 573977071 962050503 251853077 822927391 915772393 925655364 712415460 741000277 173429434 454543731 837519518 846759529 66114454 168460210 690920532 890407371 256931391 430613384 208769754 434335072 181347222 449250873 386202999 818927740 302719149 330043095 223555664 628186425 222818343 831260897 188224953 789914687 845867833 942440840 225305897 580580523 130646060 262106722 498685602 607446036 172719897 829807113 880192551 883609454 577630891 765065925 438448077 819289638 632932644 925881919 929174899 990531765 341258562 557368244 49032787 828232883 938804213 959973015 913128156 950039546 343720650 819022336 990492382 996243673 65827561 531603984 286725808 483074354 625955458 727579753 497883619 763685616 653645035 753770657 787611195 828371201 169265779 276369044 893475317 930212232 7965633 889031341 243180737 382586192 388447361 799180003 479305143 516169425 90797566 747595446 5767129 754376403 44788393 802889625 190513249 575322517 393354649 655384099 911236427 996843658 516174410 939208791 445439184 577055353 138651549 916952891 352733332 626414193 702434254 722080354 246819501 708755329 767226975 866322843 390511217 656806016 274631635 408845214 19894199 836118399 716390651 977000709 384709208 643030514 881699347 912452600 461881068 577378674 985839048 988330307 853235434 995573379 367347276 485628398 138526983 848551364 17380822 314938744 842258952 942381005 258548461 769407358 16763153 539193184 589678080 958048926 864870060 965135865 106698916 269446119 818066158 897422014 27864392 584110779 68517809 692804740 380632039 973693739 83537628 538778320 900247993 952615799 104175157 749819207 147968779 903868456 32149054 184181904 589703048 986672522 795418273 943957349 176692410 759982965 230045105 643771974 306364960 409003954 464913479 820737074 318379702 679908833 865962408 899433962 605873176 989776058 964828232 990470817 769557966 884869745 806845210 971231127 992979102 999613816 228931716 473339330 254470564 847259558 204768370 541643214 969057883 988260418 203035013 428254472 858915605 902106606 838930260 963939906 547160029 718425336 651618003 889861054 230723270 256410180 38086829 706627559 843408601 909058453 569798917 764800213 835890208 919497379 403869539 408815181 402235165 472125082 443198 960980317 498022914 843952341 636387357 859129371 981426920 986029516 802848446 971142613 769517887 809622886 740310389 957195792 941136472 966567265 59978508 69817385 578873953 685367684 832717373 853419622 944456636 964538752 960661920 978993203 255483338 764748155 378154929 982221498 737327057 947559148 826694962 845554958 255074013 449186952 259051697 431137917 628091032 734220664 92454094 600730279 857213371 995121963 195977523 503126936 453955713 905683328 459125015 790221307 515071368 988370551 87288869 265568698 537540257 917576747 185549903 353157090 304665426 608044600 146138126 975104982 310013380 652254052 215335641 498641539 778369417 866792905 10169506 208448818 49658502 250672238 585171532 895661557 659938834 892118500 429399366 543483458 390465665 743211131 592982370 869742768 507924142 777121278 838840618 904802709 460750658 655618361 185015032 979223882 964208712 983321203 417611873 969909174 338408414 545714284 401796966 403831211 535959242 691637472 713797852 897881647 192002242 606416399 133320563 519508388 288933567 790296525 914187999 957122155 276547784 881038345 213520889 390975921 337367388 923635373 553307822 810354810 400341765 524778550 540148665 753177680 927071912 959749011 366680165 643913015 241411981 444900734 157329698 617596752 236373567 545384684 354229822 621137415 885611566 916119038 411796279 488128402 515306445 729918432 313118644 534870863 565377357 922678183 648948742 808290459 843594172 888438449 981072185 997786565 979079126 987047500 423821661 733185752 224843223 907701498 828794981 960606141 909794267 992774380 445068233 518569769 379916311 803410330 631608940 715380109 727508114 812832986 203368335 573733728 936550324 966574163 487256709 658606909 616756546 988686188 29212245 179322873 934579030 971336693 955202632 979672267 814496440 904013955 552776322 565136659 987613579 997086935 823872305 831316552 723996123 992299191 136550561 735061666 659318251 893068557 501645846 634641034 961490914 993740944 26024928 984954984 695617347 779236241 41369119 432434892 486996394 860096119 946238088 977559431 752471842 788259888 192682617 405277063 99208201 670601891 717212689 846756651 633910697 856923573 898090704 911423745 142169056 446072780 412695459 820514987 597812819 876260215 7060182 21841143 832485492 941436827 195333890 345378112 838003118 868884192 706918414 987662109 65170460 470849900 395668326 560478256 321061515 667977713 51336149 505996669 890948078 893350602 911539531 916697577 895025148 954390508 998171800 998686532 688474531 890449906 783196381 800101400 776401945 833996248 118089589 595909455 143074260 486052787 95955798 951193646 423105679 789704020 136292316 497419306 951388058 964987912 568446633 681280514 88691181 261035433 37292692 340056502 697426592 959467300 365056 276605711 574810559 910690386 248272966 549365850 478315177 509487548 465697330 552600012 858236669 942282615 231931249 949702974 591667351 757148263 350961001 485944749 639325413 815989486 3779434 763041731 249496506 864374844 895713867 934555395 736394424 955040256 848848040 849953201 553831376 604190873 392065072 766719526 490670662 578620939 168912214 537719677 685583234 878673712 473185917 487360845 995962660 996135809 604634549 926276252 392192753 609421113 803692904 849574138 800288265 881862144 113001559 967203092 431957874 448219693 352201711 797190686 163110648 286098388 790559995 816495837 656718127 781483365 288935398 820695580 162837596 497669247 885345142 972554587 801654155 846925451 755678416 984431448 596478704 760890260 158762329 496150887 89179336 106271715 36141599 519933609 295504908 484132606 259818510 362696110 452026582 981625206 109994820 878553187 258510926 493391708 392829630 695787482 680030794 981044653 361498911 949007142 764082895 858117540 39929064 917982585 436363891 448977543 753171429 817067520 133334473 996310335 199253700 394922979 552809047 864759535 821693081 924395689 332926837 853128252 633678876 762081870 813953966 886649421 483199102 953602356 630028380 789459029 438476783 974230033 566812370 927473825 353558283 807750956 945293783 951454979 276361153 711623587 58704974 663565467 399800577 453398970 802762359 866572705 868386409 994285749 981344010 985121551 751748929 960838346 917184366 959279604 823973459 891984349 584895714 946703786 253420477 912394831 841440423 853526289 908515504 927946815 439092617 671449376 386354654 389822368 305077103 405791647 124160998 920230918 82869812 140903798 898752112 899201384 680744911 868663036 117065116 352981646 607350958 742905619 381317399 616267305 47709796 469114282 168173414 823277895 604532087 733738556 404369928 766258804 857107560 955858603 210981132 726370050 362383936 873137558 995073122 998514355 771818345 955458237 315986864 903466440 827152825 928400556 720878684 835966546 50374003 664000769 23182179 376450242 498632134 834272431 61595233 625108484 833229977 922444919 596653068 768295068 124164032 376712426 330451455 870206484 582434586 591026038 267836686 757498981 632128709 897113166 602050332 750804745 655965001 996274544 64733250 169835493 126529012 827709216 990377551 992763916 984474286 992718386 732986338 760905009 881083468 923674246 107955448 860574839 598659138 917237915 748290421 943985944 787829540 956415598 884713575 959626403 548026861 850073587 492413287 852581865 850419391 877277693 958257006 999776285 942508553 968063425 685396527 922960905 653018487 893458352 273765680 571088150 456185170 550961887 330799155 721230986 303056473 383892186 182574178 782928787 401687407 822516221 101600867 132762479 981090372 995661658 531164862 959747520 766678754 935954519 221016142 731882490 155438524 844056599 763842416 943735539 504528162 755099693 757799124 789700834 817091497 913165491 519114864 555021380 165571459 443680973 424899775 708934643 615618280 933715118 821387649 982904336 735362776 875518514 821491007 939084658 610606780 916242665 356113447 887134627 824792551 949432882 654924935 753220414 556813201 840272845 301192930 535226667 635893210 877582984 181831119 319992430 385942127 675993776 746587125 816626074 634510275 711837746 937940772 993324559 884804675 970953356 791576716 904819975 648864624 884159082 457839855 720336059 743441493 852475031 710531181 806628911 183939367 900051117 768862863 819180790 443416458 618507103 794509701 811790365 239284755 519206756 454502005 627416434 532179718 933440652 492153726 710167302 228071233 258606613 676481242 755404613 988963892 997184785 31382039 443313432 153538938 658340042 565111826 940560786 356309670 467575490 529676183 754494059 205641129 850703551 350940858 586711757 889604910 996502347 645447343 736541162 538450001 871853001 967943356 993087325 565203031 739949626 464276789 629258963 574165456 815192389 335323322 923059184 912321805 943450159 449392138 930635209 501420396 605844458 740915523 769863438 454855987 506450676 115616069 421813458 145347782 856027656 887692952 927981619 518578234 814110315 47341020 542819474 962784983 967135926 761172749 837122624 639545651 661804212 518658387 993594826 781269193 783253845 966240599 981043551 658656893 958498761 138392235 429676416 671202262 720295377 518307606 850652808 746684167 905626362 743237347 978911949 313318080 965429208 636509333 970290039 509635807 632167296 531311931 824436179 63110131 187017470 797559706 811285919 217685811 226882399 904608080 923428471 311300487 648006156 898826494 964053577 949888308 994907660 582017804 835911279 3472396 40588428 211720991 394461914 198690749 934493206 277089002 792683711 773341054 936432301 574537024 923592930 295680635 327641443 827465396 872099936 520849467 545846672 15274920 371126824 304418647 417862068 763036900 779567422 988683017 997760965 646053159 879083900 979411511 982197056 646151721 927076727 229545534 578541746 650416586 667088739 62373684 645161573 581889015 963335475 180247571 596801111 345061230 578298138 520217458 526015747 209807939 709101112 403902701 899566126 162469840 197801669 380936838 396397794 339661988 427957677 647243283 768999738 185952827 652134912 424546726 772845191 385776455 539500406 766144867 941369071 505662153 957023413 848623999 941793721 277925408 867931423 738979533 979803380 737975897 925707657 31922259 211360315 880674699 996943360 303786051 343028052 487297552 869764476 14958961 461009113 901691703 909597982 251607790 597124033 189235762 723843284 645837085 999906981 922503547 931662189 182347190 281342050 720933262 967033281 557284493 719550698 147576952 500464400 202686062 674459765 756567012 824500594 690569622 782616185 564939845 720956686 912193292 975980017 746005899 993495066 974164000 991497614 632700846 977526860 2930087 533318933 359019724 849347302 867259371 869427851 331938813 983451510 122650218 887538270 489442871 524552993 702736826 802950603 191345165 388629457 256930024 831911557 985589414 991810971 610740693 956199461 429956192 523315196 52250423 838933413 367769930 634581184 656859536 827418400 777650915 842801305 449482076 454257768 521463111 747180493 606416637 851439999 722102539 944437348 658215326 819430522 993239000 994554659 599693164 937816558 694922954 875054187 105496247 815577758 853165229 857690427 454895662 875673279 290491619 584029899 471398951 928966439 465111044 835079873 152409683 308222707 658072552 791740993 659530829 709517382 270787963 272814828 971769827 980486951 81135159 850083402 629240413 973705694 994050622 998936967 267913697 437989452 589486295 872737000 473020001 736171600 398279310 758470860 800414870 977921097 484980519 833444730 952210504 958599532 454317833 901399934 4366678 164780784 922451449 982040985 598767498 753794512 775750943 897098812 890215014 977452043 95813778 601181623 161430794 266057786 267613234 846599188 777541482 854603104 342478630 348988209 813141480 843531178 168797950 413749760 96134042 498387630 681600896 951308490 68841423 520587915 339636171 491297930 161214714 700573523 836198599 879911512 797396083 861814535 109086927 539033369 106348711 502182117 360186779 367339329 902158663 949299917 830664910 951916875 462413953 702928510 806524697 925547187 620483695 877517629 696137701 937123544 308275039 971101313 358909759 600116486 653705517 835107826 467869494 936361401 260757454 605841335 128848755 609708839 49162372 207555172 135222733 900631194 121489332 513525426 211747528 650609198 585559205 976736376 305470817 668092665 301875772 406864070 190103117 308681176 603252965 881058411 65527216 549145232 598129338 631097196 195781144 338439727 948573777 981319549 462223095 468851168 225587675 907396466 427869464 623753040 568583065 999429496 47031898 154661137 15849138 455238748 571982132 918795433 107270859 878633407 119778847 252588458 697358195 943766671 139042035 899037964 801869878 839024554 856457596 892754768 58253192 606415935 607212753 659343672 833138172 926200547 907999360 914012181 755660244 838636456 325254688 986086045 960157738 992590794 405262648 612864480 932445346 961493597 712115932 933943315 558063868 656875811 147880239 981295789 17611942 124126318 872270675 895384691 920494801 923265454 377484008 724868899 362440933 506157931 853504973 948914107 576602328 991326661 534168444 696347790 682493384 732322316 197979370 851446065 666685837 757827119 225084523 714671834 106573266 454559106 712641159 719561163 2973839 75427217 959256923 963624900 834864497 887641996 669460762 946583528 278308347 972635565 897561094 965405172 606592672 924614043 816523944 893103987 589485003 865945456 839601094 842830712 486606035 804076471 811597179 916364279 65545473 295749496 8249922 451686384 626518704 746677237 927808036 961558742 56828256 774372334 773140391 880847106 82103660 507818640 236808381 404873832 330171001 574317197 827452888 849033262 389647930 940986371 526928327 527916637 325569315 816941423 196384492 417021669 716137811 922632621 592751668 959114942 895924596 927975328 375399495 611306439 340213536 360412184 415710382 428096223 797695965 881239510 712639343 815147656 710457252 942425568 824332176 962179406 559613615 786807930 183163732 563206410 960729659 970569729 227567646 814125840 541739645 906441617 494332692 781187643 36459330 282426877 160312144 881453424 619759987 871628994 934054769 972680597 68910259 277314040 444516752 714334954 449380659 517179871 857801580 935438576 523283266 605263635 225545748 918989320 286552311 408235544 907480224 968049054 67712552 270022910 977105711 982033305 897816720 985205730 599777402 605014503 40198080 639739429 218154492 766925574 7631911 92250786 214797265 759500121 975146834 988149810 797924137 908756604 398739594 924099010 358709048 670034533 215032823 989753957 185542337 245266730 551830720 739584223 693134181 950299864 733106848 847589403 376952194 987657994 991162638 993920248 674193668 923197936 596880703 951036817 93208963 864098570 244900898 895327470 137386016 769585706 252303286 714204115 466422242 836511051 79344955 522841330 959571315 982762513 636427365 900594130 239946693 828411235 555349808 924868565 936635534 988223353 569235438 620856633 807379652 823580785 763102052 901962143 136806688 733368086 80781589 160646067 628303426 779228064 1669818 519266560 879214929 901146183 265882900 372156414 26732538 676208233 482233878 878666779 546788695 990387537 377819069 680262336 630843448 674679903 647370469 981964707 115868549 614092510 513368923 900261230 90667152 739677506 963535868 974856804 385758045 420004903 756633634 798266598 762204022 907720810 709075533 999791880 563006059 953368138 801050405 884467714 187094101 929963695 958711913 977298423 563060395 769060238 938943224 967719894 334274835 375423678 639916492 750703959 940989441 996365137 280404904 627301385 958054625 986203610 125958309 810978394 206269685 656225689 904702778 915463768 410921475 964248683 822575855 952601339 423500454 448880474 278804690 553208068 675057076 851160176 158369069 377786235 952598239 956833121 902321994 955688595 217043939 892802932 196165517 251811441 634025704 663288012 348728314 537505982 875363888 900557987 199963236 206293104 858748954 875528651 93318146 996508875 235968121 854376432 888180483 957664087 296363157 436685629 37976706 740012812 954706500 958220748 741482436 758715363 442034330 976695201 666116894 900204252 397853367 805308286 517966417 939579994 287894866 449913673 257458456 514863157 615783603 650114529 23136587 316446112 70195715 970992007 652608273 677880320 637732556 844159168 186166421 912464787 918229707 958441691 431876317 660864008 689558895 952547997 797382775 880388190 630346487 842556989 29621137 713588008 695745540 707333630 9268013 801476650 102011337 640950994 838727422 915366852 101647835 483831577 16702832 527158230 589099690 989759254 325375682 518731664 883250767 893882013 754071524 956446202 686302381 927989942 682052785 951095906 984764904 984901749 772524609 947689085 461073466 730829928 924224491 993536549 460171688 757124839 778437565 896272041 310392575 919793685 944259681 967180283 658677578 817345886 343077250 937315589 746173113 912928605 885202079 919569090 264559151 640588188 575175392 837335942 203628339 989209588 781490356 878008262 252730600 653251667 15656116 159497151 95453982 612302090 575768478 841482274 812677719 963784266 943143933 950725694 265926599 339763790 762657931 987452511 353155446 580236756 93484665 379875558 957686290 972823679 286277981 722893037 119392286 338834412 249265547 707048042 520405370 546001310 236244634 576551014 713180766 975253048 962665896 981222745 519394128 748393795 822245357 869553348 804219092 907384078 907246745 981529541 695460007 706317284 290372417 696621717 534518503 641276775 986409364 994872653 764699324 780444727 327065405 967412727 169807471 883441121 294841391 587268021 170919578 671049573 482324385 711353317 719304281 871766063 417844025 638271737 791503089 962223030 863574914 952828717 101128003 728782292 941339795 998587174 512420861 574315738 229980733 713800208 116622939 614652555 336344898 602373035 769869135 857048797 8015520 566815221 629497081 701039728 770138101 947460111 608306575 991408298 716765001 820449152 705113999 784766834 209246245 748452005 307761007 620161366 190404090 939026518 432643261 889686644 80926259 527315459 517046673 987922893 7499112 70320981 9452722 752343674 346728743 822763610 976045470 999276325 269691650 274766255 253915143 398688685 232109618 484701584 454380548 943671113 659776325 912756566 969773688 987239549 753450745 894621935 732616983 735815283 567993782 942082218 803427836 822537458 315257424 704297299 903014240 992077447 704220582 729942730 916982613 933348388 486487949 719914321 469819189 786013180 107397901 392542445 853203725 881100109 201555658 422768917 103263443 684817078 166124172 401372957 157475721 401328209 3650995 998350566 116125911 784208204 542241739 764280723 553710062 626775741 658355791 862490108 759023817 878207637 172396117 428646721 303499270 743728556 978441821 996011197 670162537 718664548 896134715 926886769 977832330 984469872 497111936 942769345 754269575 992286501 943447889 956682057 855132257 983834460 54050097 666467468 869662140 990399279 408112053 887888164 296005378 526755358 147359942 907740365 293914517 530255312 392382205 578850552 553397124 666620186 237447134 938006408 203595606 769706420 299293493 431813877 450840487 960772581 342327329 500542333 24563356 336356496 441318122 661694771 830806665 884969594 799137253 907923058 261056727 348140485 584042632 954999631 104445934 985487930 22007997 57617500 506835260 587883901 542570095 833106962 140197673 936581393 512136285 544774405 293281700 738295175 233127763 907376733 679486608 707560936 705373830 912737074 64726042 642554847 494763386 680532796 325370660 424099781 771158579 866801103 75510305 170289691 876035947 891058663 375686648 596236955 601686310 978355166 220799773 788990119 871442254 903565147 290461446 306608802 436456107 921439503 183342199 324852680 511489193 929150922 73632512 625477834 358166712 700403350 2260933 758727538 832157751 853884983 235026261 935042283 152866193 242018377 441816690 799139863 205508786 416384680 120495347 434294065 509592388 858365168 882905157 962461305 641417290 901696209 916563424 961026744 481347599 690843489 126110407 464040371 839396826 973455218 147207345 642995142 133114312 959011024 631678651 757845340 327674339 590334033 778417835 851790353 590097463 795070693 405714393 998145010 93371480 959382781 521265421 786757404 771100046 926803610 314406146 792319039 388942821 462212657 691626052 799837661 19453412 389675394 655359562 736531847 91381220 751765823 916319815 964149413 713323231 956182265 88291167 507743489 705905091 865573679 734363497 912899505 808773446 846107860 877241691 949402469 727660548 893394317 334957056 539142071 640831389 906877002 979915494 999836011 331877676 822731851 318945840 994432684 301448396 962160009 417407696 469777865 676585605 692014600 677455604 700956753 237582359 258926061 596556159 766871532 336554921 812228056 421226253 824424488 974535349 996767673 798534224 990437423 36990875 523183479 43831611 490267983 130243114 766977618 524427695 700582770 996554262 999792378 704958652 848023185 124258804 187853383 264423759 682939656 854263589 924106935 849016677 997089993 601835002 939820754 839733092 864656062 297347565 476931514 683490914 904018569 432744098 485924383 672382494 909900472 199827422 419148082 484430775 601708910 905642079 973247003 8867091 19441175 897667344 978405979 357658232 712844269 964869898 997722074 443427700 902123923 590449470 869244253 284254786 675499715 502666186 642673146 792816393 944532080 647192853 740638835 667445847 802898299 38064221 695628652 60791214 221530864 205154443 699719644 437389004 448101133 496436216 990277055 594106649 861973424 883856558 949950389 832871537 841603602 17451736 45481729 856289680 905176547 867057483 921910146 852880505 856735720 443698242 443954782 928582269 940865244 249502234 942636123 527219945 945606586 13782097 927757524 268413394 622008720 47374390 542376854 832449913 914836830 869311140 895425614 726692042 852697999 421120894 753006148 203974965 472545738 686434134 725920724 24425772 168747308 27066144 315717291 553581081 777993365 942862752 991212949 756474732 813383091 878813625 880345875 989908233 993285282 71336211 93499875 251538396 787026996 719931137 967727858 997115796 997375499 671355857 895757654 65465225 210411592 127508076 861347947 299161208 793734937 979514336 997517956 79639609 601345305 835061879 986852496 944345099 968243141 400080173 488147915 668161424 774868921 526670998 767966902 700692110 991772535 384380030 741260794 871259240 897000549 748507608 788393880 117012813 742956461 529923848 643613929 773824848 885612354 539460999 927742080 99336953 998461483 435376971 640318589 830695662 875625558 685146120 801616116 205501269 215659047 495227047 992495637 270503624 518390372 196691205 870260259 258523182 375616504 870912597 917787757 556666280 778375159 87946950 99861640 781210648 804003002 674416346 785570481 652199568 776921593 65753020 498654649 441906307 624010736 110592966 303274348 517920411 825745172 290736231 575424199 302923521 570071710 343592175 766580473 866191191 944741795 404645328 531037117 537351014 730946514 28524798 330069639 244913653 775161641 555854367 830433982 363187412 944530809 571219197 693398903 854321777 897254013 943267441 964874935 472815871 685049594 455742732 575126819 956086849 956432955 346060676 472342518 848749537 947503777 565774748 635119121 943881576 964023488 577613327 690992975 440959587 800257869 461525020 864727051 492631559 975646819 754517942 821332976 477871498 482964951 639128198 780909750 573671691 762248440 663185032 948053869 206577685 974084256 128227224 398780685 912026344 996539977 772535975 862352662 522077512 900885489 669985117 861697254 54744219 96542504 318973454 681372350 835808584 857579162 628790051 781093087 76593485 853025984 737567296 737628656 20940013 301050135 424237890 993385829 83690338 984084844 522860040 673333758 696093768 851272588 762770095 906370817 270813275 476168399 479720321 727794864 615258468 983266659 374353793 614452600 954156515 979683076 344680516 398816300 539890574 906046046 479732132 725162731 139948772 348784080 140143699 713253008 427010070 798163763 688084063 982061736 24495375 93664298 787633733 824661347 97761200 840258188 107579580 416753859 752870561 953228205 976997566 979105333 765180126 789579586 24327382 65000647 838237438 958539433 319257159 770980925 252836505 475235647 705505955 848988635 466664557 664891753 260073014 492342428 361274455 464954278 128570284 244424641 739841039 937146297 107902212 359696412 864505161 865686556 302397078 431088214 418552732 841119437 189980583 798484932 85001421 285273630 957877610 989554558 624787280 735600331 658409237 777209887 961900076 994662314 361447360 862909276 572794865 616911314 895446993 911204304 395971468 748631286 291099088 993724474 960087113 995519289 369482543 630663821 344265664 836176563 978824966 990041427 925623875 974165784 960444818 975954115 330883791 437443488 240014581 315723766 130026967 889531680 932615377 987150757 331875133 714595951 232634512 825299846 580604042 726321449 310754807 823919784 434572114 960676277 104052752 523379226 31009142 512299266 418479899 905884447 85670948 336903471 778233956 867863220 719412686 737240603 554189412 619380479 483704009 996887192 267470782 448420422 685238351 792202609 114725969 820111475 739208608 919603884 504710439 577923584 582744839 646127482 181146221 765433641 137087985 672297954 256092507 472606276 609332355 651278260 183553569 983400635 983087750 995373233 25436903 691504752 149698592 532641317 889389910 899157041 129556090 132416556 2613375 719447627 272196281 287298427 778739510 917005438 604949747 792082877 519541600 863532759 840060490 947978436 607645587 844506050 130200247 818885151 978991426 991815324 62444599 793631457 892946142 998768430 540744531 807088265 219094443 959470295 30119809 614798080 234609630 672560216 44250672 889558545 890375099 976122455 440780223 697924254 275449080 897613709 988707934 989390796 366025026 594850463 362196040 937004320 638179623 714379981 977498775 992492278 661426465 766287367 999591854 999773136 518664235 631515540 651865162 832755888 630808926 918906487 375296509 830832377 671912631 838535579 85525359 473064257 907867933 990754087 81233027 747102077 8103776 410350724 75085901 83889156 127724022 538399763 529619291 602614013 996760551 997264000 836066526 864050223 351514845 674908642 776882073 796060743 296153640 831842212 457843989 901382446 511377274 739009790 225326443 917935529 943520648 953236972 440127380 641292052 531943378 553740318 639215180 914687908 941656717 993600950 678497246 694672390 734801225 988889077 248229633 592677549 519125427 873704425 208059927 392758238 107660738 920911405 59314314 611236369 816045755 882284683 586713074 734498665 496556787 531456408 758472116 923733071 434630763 530543084 251813474 845633385 600326734 830503800 245284954 356294298 722508701 867045684 651164089 868402474 367389674 809141618 503427351 973039143 756781259 806211625 476516600 775807327 981291857 999260454 149222916 813036102 466089777 813889184 99313427 869390191 965515608 978983823 354408498 440569395 71617488 231564084 356606842 871929657 142559607 833789045 895979646 901350019 153994309 807883882 798517076 931861717 53562248 557038135 464071218 921620932 180771425 490336304 868525300 987911532 728800783 831462910 742566292 949360700 269436882 621987208 988443637 998982762 229934616 631154841 20971963 848694195 633263095 906957105 973162203 998674348 302086540 898084292 771372157 861531598 652670192 853192404 681092928 826806461 788890078 944666723 400927957 659982559 727807916 961157141 294665037 888049394 236603741 301931023 143535698 687001382 651475272 750762858 474533207 942135400 823117199 957171430 687789444 964573702 717218422 765660025 464157654 769281157 383816137 826594627 880448931 919774190 409649153 517196968 161957729 622517166 731691158 892796836 583667373 663189425 953797083 973756207 431649965 893566382 951984197 997140416 698867080 732264386 892420083 983489124 839954713 979920123 349042130 712348845 818079440 898786242 259140582 556795143 688925409 705065666 85285900 88493143 40038321 497017329 704986454 983512698 402090430 636425978 726847626 753644300 188289448 226951936 693897642 709022467 10835678 701990002 120022909 461209106 361610532 777450386 624435125 825054883 551757538 641492753 971489219 975533309 928795746 942229190 922720177 958737989 41571223 57161177 748640952 871290296 387020371 940606245 450756553 699232350 18994747 718338534 533217045 660178518 678362236 892121856 409409731 816480730 600250893 744379323 132705557 474893269 204258424 639517204 76240545 773550251 7483226 173171409 216430574 392158103 818960809 983601429 555046140 603923941 49315783 640888772 859708688 877247738 759208884 794866784 818645360 970554211 21431557 750479509 416834907 812128476 162610489 316970605 673138738 837531435 296583697 865657065 63821113 935144421 382671886 979010926 68456436 293914982 98436002 371604175 574529122 585939707 365574549 657255198 790147143 990224649 238782136 349315162 940124875 943633327 468910559 810313647 378304981 716580577 153212960 994851489 334855242 501231444 318860909 637563450 151431737 609807146 702454587 864329398 562450893 743124189 501538337 850640949 757510743 827428798 95757538 681579069 399714193 412019770 603575655 857898356 344445257 940034996 520212896 559520658 576085052 840592105 263561707 996528106 179747851 482690468 697783390 793147068 61409771 376327035 281509033 336358510 761113597 995411123 652029973 819891637 553143693 985913073 861528436 885604163 678398402 934763064 413738144 971830992 679145049 914183811 828036932 874125135 124787892 814882989 434934710 912838677 498071180 890071173 65725709 243099859 601720966 846628314 986302188 999214534 437044014 645024131 61417263 758292173 555089296 766738638 503477623 815013747 587355842 602256258 433961708 750855054 299525949 602182741 732084714 939149749 602889346 773885256 970516619 998906649 545735095 681448994 700413574 767726492 794411165 935876549 533831861 951401520 658815311 669273256 152178260 367032589 323479074 796998797 795914944 848403861 802550121 981748652 304698641 948104455 415822453 557607256 709055950 873917583 84775475 417178673 451213517 701047722 418881515 590068064 533225227 621643427 66643949 978077548 911933704 923704859 239795392 767926137 387279418 781796970 480106848 658075583 179902904 329724556 27654796 588047832 78411861 385543258 927390107 968376229 707687218 875601583 745503626 805973875 733586654 957997881 871908271 945253425 958015647 971286138 445819060 937479723 68007566 738791840 109774161 883527574 362715076 891714263 882358554 957389277 557604675 572988867 381830968 980889338 37123548 664534261 939912351 952586929 23801475 254250816 615466558 642028788 45089487 862005878 362067232 855872024 157217017 620573663 164280621 407135265 62082923 868492914 17500688 432344383 267256736 920804488 257235967 678130415 730547749 773560290 148259326 853140540 215631838 969578950 213373468 875325416 828082361 870015769 416478087 676228305 592634376 968792623 481849862 562589128 943175316 967947470 870758018 922666180 449685355 832526883 103771126 342947520 59431931 813649147 258348153 370262545 926348481 927957787 242472908 673327016 103564972 589679504 248356718 408797804 562319903 821142989 448045769 540094977 110507761 397148051 525636428 604637643 248172066 444200649 901315162 989396893 500593963 591413178 121340290 203755232 855390054 995679820 542810673 681030128 194221432 241135861 666436842 680914206 509688475 620147973 557040560 852917804 807535684 836965197 831187705 967920899 759871379 948690915 625470107 990193456 273278311 591428977 323694739 916159299 798696314 889835075 295469962 760858650 112732947 512508888 67051946 308951583 955483133 986701508 235393392 579176564 598887705 685743170 305637351 458811653 318546730 656185491 387851094 950954650 129163157 959166153 622687164 794508062 900053964 949889181 391882358 810380597 762828626 902941705 65387476 752658171 616100014 933503472 35649890 87513055 472970487 598279854 721722682 876806497 67927113 234230571 964834258 975813204 297526465 648832747 988273053 994319680 201833128 226961053 205190923 263522688 559282179 729777564 404052642 557604021 666586398 993542527 713414583 996116421 265933836 610110829 997763931 998740319 393062806 438911712 162686 327302733 261736974 794277079 464765705 945086335 347259618 938116918 159038659 224798267 49626686 424379126 936641347 960988563 455904877 811666793 210372424 237061018 895469347 966397433 123716650 283040231 437085722 588065164 257804753 292661418 708328843 893638141 660266007 783567220 489299001 838543036 729291933 735763613 330195715 393477090 944654240 960364607 970842051 978153796 92578298 860584855 752979124 971131934 877868727 980356552 614599122 808094632 119102569 973882689 727260979 778017327 701450175 740325148 155141275 725425773 278326015 805586801 852210566 955407392 836986041 956496837 108908503 410798968 206874266 518202187 238539717 372451111 231893477 521556665 718632185 950743419 789768772 937926195 428951459 800221096 105050764 991719779 341563443 551710843 433208785 748897930 27288107 176333315 181402634 283865390 509355002 996740859 721196950 967333276 884130841 954992811 240342358 747059875 640033300 730064996 195268771 562583402 903132673 911416572 772411424 973477715 808686046 877629168 727845368 853271385 784315926 921316196 324700583 344186250 693514954 892846612 387779554 431062320 100589919 451741712 693492766 956870870 653135265 733280318 764718944 962757706 806179342 859721071 26936878 938199989 171842669 436958107 410901528 549328780 480721962 912426543 630376060 676493179 967198842 988966346 205322517 570437658 888956040 970139025 219262931 376800737 742032556 952994730 923011462 937192072 191719736 940420804 88758143 738374684 718359704 939202101 867874120 923154649 695670262 865082018 182167888 744983494 334506689 926521764 447081140 595060643 896467 737159887 716457151 943537857 857304099 929003224 42312701 222828899 376656877 512801946 260028279 428132639 967692295 982276591 973181168 975614274 403729706 668636281 616686872 642543333 669169395 769054874 307942252 662846347 537730556 826812587 269024676 872598928 705384167 929736990 491675887 851196847 8765478 225366359 995621202 998641534 257160626 915061101 78535733 503533885 707267236 925452778 884397946 944772702 164628575 879642154 452147585 776529124 980486967 996677865 539982915 987952573 595878131 683749543 134033167 853641279 661606931 677061522 799045226 832647960 293289588 623690075 163969271 636783593 160358826 588312851 104692727 201609291 85217949 282672874 325638087 592844092 427276865 592810753 441041175 727692589 586693468 777117768 829992170 967309280 446691539 967040056 497962510 694216857 821488232 880273819 777250953 903361260 3574404 187634395 985710513 999957221 231217762 415915597 233416985 800104853 361006384 776829817 69695895 545446817 138105081 473598581 52199255 763356535 351291964 819400280 250443785 498366761 62881164 592107826 950075944 959429825 744240931 763602710 707734957 733980091 487009794 759269886 833036376 836767751 885426453 935903826 901889496 985400914 481037588 983309066 77589167 996822303 915947335 927883071 360213621 606868462 699015783 713602300 684930406 947161459 366566732 451518661 364150628 635532793 566338294 586825583 309130623 979562499 513112885 534858236 588492144 756106349 44400788 224576108 510498349 898215123 755152601 971972789 10819669 567376183 812797683 830878493 471224590 494287979 393142701 642776447 111900240 952112101 203042373 457898174 618131430 720246694 776117687 841904884 210000448 546755560 177503806 249465842 273113348 423620206 315667898 907817674 115685153 784811731 577855461 875420431 502559256 641224766 328534895 744307269 88817919 728039181 326980232 980509782 724032529 928752355 183485825 981495023 51858886 395320360 497003366 684944796 841170447 905326531 785390779 889038081 56204068 257074807 103774754 786519513 554729713 808407144 937181190 951618001 467069869 597992374 435444699 713790294 842971894 952138294 268922683 408766781 786385927 947927735 854481808 954477790 817712906 886491171 387886375 414566610 598496947 936218883 259238721 883939839 441777564 563753953 869042481 915056294 515435129 888168778 432390720 824126864 380579068 439021639 991558635 998971493 797092535 905347847 907694032 977166568 381694801 674380004 794411833 903029017 287795698 664873123 943531009 989822624 221764132 572218695 955264681 963105543 785519632 925061335 936602425 963248729 31676715 875626865 321181001 787295840 123327662 330671267 577718198 956642345 159400931 171475099 529331492 968502511 528507273 745454870 4971476 358780194 732616043 962754945 335037212 987283983 204289955 345805121 470565171 903992213 834372852 898268042 341984497 909522617 365208459 892663882 247065289 972115084 717369621 932924293 503740368 885152795 308388802 536796747 795608618 817729737 792752365 998042593 225399179 649695303 318663272 969157771 114147926 530350323 344209456 413269424 819738258 900707665 393549608 645120914 960997449 989639093 345664463 487223917 982622427 999248297 317603180 335560561 706141671 726832232 763898876 937316024 272140868 772748856 886928905 892494881 120567711 252093970 418267721 429379369 171181137 257470283 241371628 779279893 502786234 943400392 595384834 697242639 554933361 852290800 94323346 884618888 466343815 931206116 370469963 496079521 248330994 617490772 826640895 850514508 51029602 309544912 53543454 773471038 55945597 664859920 362691721 565394928 382644230 819592763 518122669 808897974 620133044 996282547 730269426 907681069 498092181 967284798 222490308 981631904 605364299 622531122 85606406 776470224 256908132 969456070 604338033 712798501 886102150 984709457 209360844 697553836 730399956 752828920 849556634 910226722 878727899 994011665 789442129 904342536 73577435 718629277 824920149 933860414 781882127 874591388 779941443 841467459 589592340 758365949 152665122 268982226 912481956 927542244 90272008 754616338 446864307 509887783 54035879 119524990 875890359 899169734 492643133 838572985 752824689 819809081 371922778 930983553 324093485 330606442 880187829 916768963 377021961 456068838 390926554 537767686 136231288 636087069 318136949 896403658 652678236 994088365 353970145 513692355 762008543 800552624 741467714 904262253 801131019 839151424 676614599 782144397 671690577 694782027 321100135 510076776 149855007 164768988 740192775 901565800 341717307 416671509 925480942 988577833 123127245 901597828 512825711 613650600 402399604 792614197 773919155 896516187 130326601 610503100 86687406 660505562 371211524 525131101 828378618 934608047 648827886 661747741 119203107 568311374 583836871 630625912 743871541 827512915 356289159 618347418 506020743 615308851 448006352 746073152 825785408 947285491 994897888 997063826 92262727 547694619 917746116 919548805 954280366 998611315 379472559 453373224 146535252 217882917 713839758 759196872 516254717 691303740 370682828 383655114 81313073 727659327 954935107 962319530 947404660 993818677 194033764 746078239 569283095 993954040 145060342 795603137 599288461 684702164 279905335 825810192 608907202 909926033 240517450 762813479 70548825 209518125 410546411 522083606 243951409 600387591 581562623 901968192 668329400 779247862 664663500 726293936 205322769 281129629 831792966 847809822 357602088 618464442 103985253 506876188 246803735 314723532 651500094 740123524 225112000 619243358 824437603 955319513 521347246 592952219 920730158 922705950 385453437 669568355 326871359 480219854 575585927 976580462 955636770 993460738 256883570 911825271 372185500 759004301 799163125 811455019 440819468 957030887 640189938 871307649 130668896 831070380 840201166 907596739 437803926 988838447 278714089 479784148 813252160 999592219 767076398 893397634 178178447 195817182 832354082 903091111 237102310 938284509 157968312 690441243 43319041 935942668 139602765 533903443 925662358 962001686 93708705 422066678 363453726 526383954 244397493 825427994 399104280 605332196 338352201 597495521 155186143 376965081 957203955 970463871 742383305 762007838 814832882 857314185 439403147 895292302 7586075 317170418 852244785 893436454 964137551 984086055 886975950 992514307 434500983 791102208 397240638 813113736 930941565 972561913 226818403 436818742 364049641 903994504 594875142 782901522 304042387 866087298 796599132 969774472 627589441 982239080 377384570 540235805 561995682 611481690 35205335 611827348 720637656 862575656 25397103 147136825 771991028 865768938 874469029 947648931 740246024 968960109 723216792 822601856 524838332 547725647 715357984 757620606 367649069 477108915 84469315 205536833 631433722 774757620 849299505 917237322 168435712 528228428 648523751 914918844 611279081 843782747 585955423 775529898 754785579 911139497 764932888 851321170 214844164 449293528 587336092 997362315 857537719 984949491 989546067 991655589 478933659 710237786 870436914 890213912 893020450 938995742 887455035 905960202 693474133 865450027 487959988 834512901 538580284 728144457 331665490 365864559 490788399 757215459 942556882 957912118 694089581 749748729 438777506 611863169 821958471 839874187 285294057 964012730 120607676 942296798 240971598 881768597 720478592 745776305 395746241 499238073 377258356 600678722 55828582 661531069 221088578 740357637 421150079 436848817 368953048 714735667 269739381 556577162 540402129 724393652 180345344 621226148 438575565 582907050 953524245 998116817 701447522 856801225 417975769 497861897 953674186 963244742 360022716 613287717 565524003 666965772 345300029 633289935 774963843 895398309 541833497 952230673 616360447 897217521 32432757 780724323 622056439 790856226 871949306 931302918 482764164 827577780 361711716 645406397 437494201 453619721 876847253 941806210 30650371 148113035 360433848 451652338 557333264 688317960 763540036 919141900 532354136 723850544 188357896 653323676 548281171 785606000 893889673 945874757 504733291 679578503 482370216 975958920 950701871 971480400 875620877 942747905 118340192 716946788 817259175 864223425 81366401 799784262 321293821 325339041 644054939 930557695 201072564 889617894 219901548 911466981 708068730 897215035 482680862 846991313 518208224 712389574 618828585 640654723 833648882 844909725 17233911 657799042 347396698 389392431 623236617 834666948 777984270 874953164 454297873 854247784 975033582 998496890 211328553 470990943 802483822 962012288 699393300 838372084 785440824 838203223 796718523 894896440 976233778 988003025 54049077 586354974 342846771 728464780 487049344 730625099 182963476 364969485 214518100 782552970 353641398 991945983 18506334 591602460 7868305 485309780 402540840 836569995 937996929 940872416 49833951 369629468 826350405 903863550 323215328 459893918 633194189 842799776 261194834 590801848 579538752 809739753 921284792 943243858 35315398 153815072 339626892 642402872 938132460 952381688 232448144 760998521 618035547 895221792 146900887 410515058 158992202 281711122 814861209 845437107 342810901 477013827 577939594 970726903 307794337 643741502 478428011 744507065 648609798 793326896 468816611 970578414 169128012 419995959 263168634 760098900 498062691 869080389 177515549 278112006 47169954 804100726 298989317 745635142 499063265 864421266 803557924 804794934 181043658 577853623 88070035 595282624 560748398 875397841 719814709 915847385 311796168 466833688 464871639 659478016 798503696 978254815 864511499 983371654 731620350 959421566 110289989 759924542 278376660 782272515 412406256 735249415 732919478 827342195 548836673 731523735 713552813 799891550 54927387 853604216 481713259 729275624 935398114 942325725 715410483 808267434 954208008 998204369 746555628 800231767 379426268 562742934 859212024 985961516 395409133 970757485 448661443 764166424 948923015 968266983 584481899 932554146 818844127 908760881 44588577 832895130 80713986 475857615 478942245 991124174 863747477 864442325 197056625 620665520 215833544 593681670 607607479 888020449 276942527 793607948 516130148 982264767 394645574 916401682 546727105 715549668 226453363 725606146 503814355 712584180 25929006 985535204 849403785 990455987 837040642 845718049 960705358 968407743 719260925 759131742 132372285 972257105 671965332 850194792 334519373 755949756 339966896 826278964 291214485 432842252 411045499 799674327 48820823 559296484 387254857 491688255 292001250 702733010 325333451 403843400 930051182 980133686 51927158 803782185 845131925 933203698 633308622 873784268 554999096 773165885 374708048 805002155 760017520 834248545 74495609 375783734 91457800 321756993 718901551 864594587 333949604 823283092 709556821 738223484 350456646 585189273 195792559 584340898 601981326 656695890 289352613 406103457 447105618 996497232 926957647 942094626 901319406 960555091 86301166 747987776 732025046 933609432 257331719 292890883 983490026 986768304 355764214 732672282 378750033 667932754 350969369 459395702 519555671 656187101 221651118 720930198 903515323 911991268 607227351 683586822 858598286 966160102 264905382 397728687 678318412 977227294 824719259 891520701 630541762 939250251 813069245 847423815 387061124 797658452 880061392 957356832 729646463 897521071 637986863 844780954 178709523 364446769 110613086 298085306 163265505 865598498 743704014 902024790 430591220 934277945 720562275 873623734 857974694 982159445 346321526 968104484 906295757 956945174 563667378 939548704 61898107 103412833 183322974 931625065 481752350 945560418 510086813 700311433 557318916 753231963 288243290 468310548 642042200 846286481 464654660 929674281 631468956 897028600 773535478 937894205 678678415 736200435 561603075 707014314 272240820 557144847 305021704 520394983 674540812 926422653 624923574 925898832 95855813 778188350 806079311 947781859 368681257 783395497 547694399 575148773 549015364 994605372 409539444 658035961 928787994 940556391 413517866 471063109 687094949 763247548 420597115 719586841 600042300 880022536 904614693 938783860 932580674 962978740 369447952 744367750 397682444 747800005 804087950 898881806 725242384 725284492 277389282 420279480 679381204 711765469 674576541 869026761 100617334 965875754 913319950 999360622 877028342 984180504 207124761 921942987 239677410 989825459 840782339 963781463 674671623 693701049 872597148 953123409 509035940 930602834 899693659 979932736 687003111 790557508 329888545 638290067 664497061 668261735 46109114 217887147 395812902 511137258 935834396 960761740 499837140 543072500 980952636 992161410 26982402 964196878 938414005 965722202 404832539 533736266 796093711 843624292 867876782 929276664 59580239 921541781 367260649 469214626 164246756 828521843 954345450 988176049 969874031 982812011 287509331 841711210 506942939 586073729 629946316 832201881 285369192 620316855 761439196 992494471 113928716 862481029 977266924 978797415 776099554 836328010 965242859 967072154 136325446 771231795 47373871 554838128 730102731 809498135 83258464 277769379 444689719 745892713 563329148 749309087 484977681 933317252 520673193 722762140 453400814 824607666 518569740 940702727 129269052 398050853 111805870 663229419 99903740 348707018 672780293 766094968 850558633 892028081 538073597 721223939 372035050 737552476 749888752 952941487 229796017 786908497 928519111 969341686 993677436 995757001 811448808 917801090 773725111 891348257 953608620 962478766 431108648 700415093 567057151 602654230 342589548 899919924 244778954 269300051 626500410 639055582 286956533 708158906 650789744 829986105 515284226 620388873 597719968 700382413 248071441 895471826 755718208 763338910 396999811 781041016 176678086 996396117 964492683 994144128 476197469 834498436 835783084 837241711 54070375 802450664 480929897 899486152 699579689 886811307 980840611 981112893 739037691 875905896 296014306 670192449 602115693 912231046 413026767 956058592 505548622 644208300 896635379 972961637 673462483 772368568 676438206 993229782 454185249 800537737 116379681 588326233 844666838 865908357 973581761 973904686 331165333 865487727 450925424 792872668 638258108 749161266 534354632 856989129 741505195 888360431 554423506 950765784 568105208 704083378 104717436 424214802 613654667 890814499 226559349 437672117 537013968 890687797 330265441 738300214 96139604 506172582 603037750 709966559 199005005 441406914 811081599 903735589 456590304 889711957 239657274 636245288 624327220 709899241 969840932 998508587 189282667 216655348 801733269 855326922 347197245 689004432 165128011 929984421 50735707 269537721 87904369 233130208 329522371 651885742 575308108 590434631 835596719 949539672 852806021 949059073 751425481 756173274 199874862 346473920 125368446 306212029 335408360 550125671 273662975 905449557 311863221 735381454 687656971 901676619 492977670 629296277 413170827 942204528 400798831 884397332 747300205 964361351 823109361 887907712 960308889 971601910 9009424 120384041 727778624 986295832 168561351 668309322 105824423 312834292 319556873 555375230 968705994 990085003 38703716 565078512 871553244 898146791 958038180 988962652 261293198 863407358 230439024 397734819 96777967 676027389 691743035 945114763 672139354 808534157 137888390 371710752 561238396 825205653 208972473 682788189 558826706 662511489 187101296 402257143 16701092 250701869 423198943 465636082 396204707 515360977 718460862 765447253 915633499 999148107 843875961 906520095 775256617 894188316 597023933 618054051 773592214 819875155 303611725 357520913 150172318 240369713 924113965 954342457 997521067 998379918 987505251 987848284 257572319 866326045 300180667 786658913 125524078 902651882 202926747 375161722 552713063 784590009 982202572 993483618 270203147 923667415 422898822 723194731 63331856 517112240 661259527 692814254 6408545 906585237 226486032 377231069 106304638 227684958 377036093 838855170 352105377 836216760 337783129 783091514 531220023 663794251 1475606 807935863 716025227 899731923 154143450 661883013 49959216 405063452 155313860 926361507 481327459 981162967 218980028 367030459 720766432 854744075 919626913 988561264 234588519 672231961 628621614 850297298 870971809 874133263 559479725 876351956 349973354 373383216 182897399 882380504 559490394 840540011 560619759 854865751 68880629 456467801 795423898 830172629 877148825 940516964 368465589 432296604 264333049 992421056 475469961 594486032 715312176 808040815 223466411 592150142 3664842 235826611 902910322 942120853 942259626 953943956 414188837 965606374 449906632 877325751 807662217 865760746 921600121 932234762 207484553 454606544 296960229 750044109 303371605 395407887 172268868 401625025 810376746 959921367 570112658 908814427 730601905 913502193 607907063 867958415 319134579 848291879 934976414 962554878 808241070 866528909 201498685 568587254 453267704 691410797 957643372 966905856 778528621 986224774 966981557 989541089 594611173 700178620 592892944 680822185 590108617 993044250 344385437 368464089 570924876 888800256 917348930 986313715 974115260 997425541 717734615 958477482 512238503 674040606 575985791 905300431 402377977 571317488 819127592 988625653 440354021 643408771 154421457 443489336 264553252 990373318 38477801 388013015 98659440 448445350 971242456 992102813 956614010 996588077 740241066 886808599 31780136 990160089 644442494 727943168 529811282 927946112 745677916 975689104 353596467 505110870 482002968 545578078 129997457 470298469 702288366 800116255 3350673 223549240 787860022 879789618 233244237 824957450 749070530 840586697 401756982 466865374 951887015 956832802 620103348 819808541 746525166 746559504 364763973 883243254 336246979 534301689 635722919 861301222 349591037 738373315 868681511 892430704 740348371 831217103 173763339 578117014 91622860 475129330 953369085 962680209 983785002 987214190 561221295 696612839 957872058 991369726 633556255 655647437 683917323 752426881 991928983 996294167 527852499 701323616 492597478 723716328 987297913 987845215 681341013 883625796 638913879 804464135 261065176 337798958 684557089 755622156 386985499 682244281 853433428 922894200 442363039 891622576 891003638 955039031 296014500 513813796 121168087 797707342 359986819 946253492 538703571 578772872 520477440 818742776 263443794 955886082 714732349 732648890 106840265 425378862 96934673 409165906 451414334 688182029 963731945 970256507 963240230 981945478 780483179 804708096 279349111 620114087 434392490 659154512 750604620 969054444 486377616 765326223 572593228 597804126 443347195 544731745 923520053 969239696 998650560 999825758 991684778 993435145 271997315 315532892 430349039 610349336 114789347 931468795 463816795 586709670 885773561 910351740 654523181 750225837 197423984 386465808 932130124 969185172 787600466 898654907 673661640 923353966 271378478 902988462 731014988 806612481 119380198 668415326 724265644 915746854 755110780 848279473 153182224 303081975 503235545 787322186 438244058 755802725 691177552 908970645 265948463 878857720 480891598 562180631 490938530 808896385 990647301 996578236 802500476 984322768 491735443 614945771 385250100 845790964 705895710 791870036 122150819 545363486 286622889 360769606 207774123 602893244 849532030 875397056 772074950 824063102 469489431 585585349 541858417 648923636 690629927 714624109 190966836 443133099 206676335 954215646 490524893 902201790 263683668 723415442 990074082 990702094 827681335 925642399 679856434 791180055 58262215 729333307 820935880 854246738 861153261 982885257 399165879 734473430 687521747 698331515 808928009 995904392 850270512 996155816 296010356 858069303 810709941 993161807 646244291 824632352 927912774 943748555 171510614 306741894 97869133 422954366 734921802 872145347 14038950 644233887 408845905 866255415 937691223 980377268 976711582 999653022 372889431 630850065 699305770 703556763 692960026 706455759 603605560 857498164 804391647 838465096 474336819 957483135 872977375 941441684 315495083 892235268 563782399 618067906 241012132 985298608 26490191 874123509 362055231 971605131 23698615 397782638 286671418 292038130 847065738 973653894 985218157 995498233 693905775 834638935 510613430 797347540 536216199 634574622 366135314 841378566 684060415 985891728 208002241 817403770 310478559 938562436 835673551 970546216 368737522 967746025 520384562 936062649 618515066 859352136 861740908 935417557 948435430 988524089 754512815 921391572 972112206 991301398 881954529 981942053 695136443 813826710 337072259 540466660 273862892 817761526 972803376 976844296 250717927 566506626 525629580 939219579 948929279 953203963 600259693 905519026 389883201 502175717 83891311 385553665 979592970 998543540 404260358 719114279 589360463 883425074 895876986 953740725 472777754 696551229 257810504 482839545 19515190 351214992 372913578 971284001 694551537 899228062 185251602 534788492 399919518 629346830 189751890 834826533 46641022 289301997 98889218 491036064 503220032 549028573 146347187 251013781 875043131 951796602 484195091 992235789 248533107 484104511 577804723 605328583 861050315 897948860 345050014 861382211 258323907 957322129 68297770 136637862 947772412 977071818 334039129 486956974 472429327 954860548 597177616 995471459 161966719 490711751 287084727 938585580 435450841 606217644 563178096 609993097 9517898 786400846 731980637 895764123 79266462 562053975 378140091 836242558 809744326 919004997 418418271 891227475 849352918 940568843 602858467 971935843 538861314 774872582 775300775 980166385 379784040 925798795 574063251 786988543 543351092 985691036 617188916 794259740 642213150 998535336 343484056 661551006 546093467 789893021 845502337 932445608 697330515 782753021 466260304 861400421 985705368 990702458 626152223 842995726 45340177 839508773 770689943 987805028 505744485 508813888 906096958 926883527 264025344 882339891 386115512 959836714 702906662 912660621 71389450 287543204 968650533 971646750 723135341 788638337 487141219 770640349 207475744 670447735 480445166 736164674 894584468 900271046 293718722 979279055 166956701 961625008 215571123 304712424 898457898 980765744 210562606 354227201 551155898 695182387 761394259 975731805 901306728 919054496 858649060 964228449 95058428 472713381 911417532 951234081 195483811 609108396 455402882 538391897 922777501 995858223 199416496 299521312 69508810 597995191 481417418 532861587 63106334 162896796 157790953 883288962 862317024 956147715 94847569 800738633 340159913 896535108 711582668 921957983 518294838 583885741 790895292 815227712 700615331 761944490 291713628 565025374 986868058 993528000 874314122 971532980 747105322 847934770 854984862 891563258 879841673 901624854 724624479 992097299 204512840 831049035 394816149 555139869 764122749 937938554 580475295 813066806 129908720 360670498 341442208 913354648 338907014 522228167 363702750 942789705 17391274 497913001 691154247 860151118 318506841 449976633 822091007 945589050 131327965 370903024 191918981 249917352 607398526 896750894 763264496 831723461 521377605 703540088 221643198 519437590 865325495 983746749 806117547 934504788 928322161 994496331 810648705 889681310 575576054 938066680 45691327 542526191 478271645 580827405 99013640 671971910 725827382 885006890 171291760 919060548 755113145 918946961 107146795 183291807 724507408 918807156 255220695 274531002 585479730 715006688 727776927 820343966 544361666 878365819 829917025 978312597 474119181 729585728 174961159 560092220 428917311 465601559 187052296 445145444 846437158 914283340 328496013 716140838 785357550 952874444 301170083 584645149 95368140 901710395 92214830 922411571 717823356 817312348 117151605 796684957 967887538 981715409 222835192 765961599 360312786 657093010 87769050 289867105 718330249 992724766 710474064 798827367 554842350 690095887 974713962 980816567 628272079 787983069 356702898 707607480 243677876 467989126 994366425 997220537 780532719 852679446 112959607 260498152 19081498 195139719 767820645 916377105 300392302 442288294 958746400 970140845 571622093 624055044 672514740 782301793 451047951 949250362 990037839 999085842 129498040 409845415 78690256 201420102 357823078 834881729 287024595 312510350 97464959 574574943 895332734 993729050 938171626 988672795 145853324 289375484 895772680 921406721 463151465 631532154 439005515 645148797 266524893 985394810 539806802 633250156 155042791 451339467 861265868 912805148 204798127 541965117 936344263 984680897 455600276 803897656 556894370 568977800 551122179 897537314 692369905 930709333 649238106 888059733 230045072 300581189 372765773 461778376 653596028 906078239 631202417 988072468 292440769 850772044 481089623 603028467 178265388 614598553 791010107 824121966 544585137 904478112 420205785 432544282 205471337 991648143 177841567 724327363 835780344 871218870 970058125 979607773 456510725 978455199 400939584 597194570 472030764 740780941 393335916 771935465 771511396 914819441 487433176 557228844 318654704 513205284 183533217 753762202 174497753 940334367 717508331 834342025 135347062 807041845 519400043 708136459 189681776 981155226 199717301 692814908 148480628 762809810 737945720 960523336 397708296 665902978 18866840 261740460 678551103 976214810 848734464 880192109 444261853 959101137 331265639 622048525 888526646 933598134 532062998 748003567 412310567 864458412 67245335 179465785 949359703 963596017 870925876 876620574 947972063 992958303 602593169 759049960 353067501 623000395 148194742 831040826 495772571 738773313 79570852 604147202 633619538 753820998 529024054 555262209 6571428 247306442 433137731 997299318 337626413 759225412 382740784 713074393 722337723 920187487 377691884 534691455 957266603 961510978 310910103 592080742 645706941 880404840 235836444 417614988 15528255 778507286 897894145 962419248 538037758 743643388 613710151 846606717 839250593 847510986 614834366 990902881 647806657 796044068 853422745 953324830 616011279 690595802 484328735 509942781 347582453 960660955 766399521 997093925 878410522 951522447 530892871 692710250 227147314 302596670 518676190 664911914 634598714 790544458 214903269 687870364 975572027 975991565 607113217 987427646 759276544 897628017 100835876 126545748 773649680 874930739 333776919 865826118 871186553 952104434 499290942 722790076 231836452 748959194 319981619 961094858 605153442 803453795 544117207 853008922 569895324 981080315 147980633 339020726 492268220 632785269 59630797 113556901 507048234 822474513 291005955 862109523 758851872 970307835 520455965 801735974 480107628 876407417 921145643 975294785 290453196 579867373 199850705 955652596 540090278 716259113 412574391 454949232 368373869 835292488 560681062 581745278 378520569 846365298 865388010 888850835 657580615 947666650 540665169 611017258 760258582 826294969 682547461 943350900 421614728 981620614 227047270 491974034 3717215 368443317 547199748 795585061 703245165 748196994 60090115 361752578 243120359 626142344 420111341 880343566 292856449 706844450 918600092 961598952 861148144 927067530 503561010 747048019 514305453 685924805 544345535 996065454 455333316 538155930 379347791 727251007 681647992 789992242 632741002 986061085 468454897 609700599 965125040 994613873 674814970 838083079 507187231 625867844 509994534 602627222 215410491 969790803 869785629 934467253 347764014 851570391 145877063 462117385 15582475 837013291 915646858 967406088 411759498 430342762 834265694 978205641 475404301 905994356 968467937 994135880 880144457 895960109 152652039 935483700 29949348 352606629 387656749 988759264 178006244 690058032 418233981 489649872 548599646 988420916 576845328 651941189 725198067 985542983 541543486 739201052 850635306 875573840 65503395 955063603 829859026 947745845 497145426 626846169 289681859 528810873 427373340 682726728 536740862 769101550 687116849 782025874 214016260 741245999 920763031 999690444 564089147 965161373 742128787 812411407 983431673 986875602 275572363 530658845 179707991 451820062 438298452 926835604 702858468 962109075 129713888 601235867 199204230 402226595 611883697 753972202 616795589 821200334 975066554 987010624 695316016 999100165 630172875 972753303 898871748 971037863 432149013 734949939 104063538 685660934 780174834 962859215 591483582 850803523 201199347 880800043 851917710 989240641 70953701 722907467 407105235 917991926 152225882 945238140 163801886 787922843 129626619 244545158 534298933 826210267 702628953 942452079 46968139 801065927 411305192 994145076 435229065 909842268 803934482 877053284 656092076 977672925 428236434 431928976 323585815 449992957 312274290 976560322 862663319 893130252 377941702 584618150 462099775 992120890 208288854 277386305 341065559 596434573 150334297 648451954 171155751 695231207 399074217 515279625 105275155 116620133 528530357 577704036 254127360 999095209 330387616 854027269 197720162 199109101 205504965 326742091 738851480 770938928 383106910 571751167 21647024 481129271 327650110 408922527 791145661 917184571 185159828 994265468 588524413 589117119 327125132 543237221 499223684 751869633 522407419 624330019 472107069 642359477 412803337 969874807 258006577 411415149 550174544 689898150 249199886 687147932 385650791 426871059 107647964 142505857 116776647 307349857 771427811 994380576 843898855 937783854 91113021 762095995 178192062 247544409 83170366 442384640 691391734 848970369 37430197 392612933 108404157 289458550 46842936 337041498 582213102 747749185 311261550 345906446 324496606 795730259 586668136 934704626 28170072 205125466 851760873 941151204 954618476 996368732 134502209 603454599 402190635 472979698 407729901 830744447 415578068 819790164 914797447 965127667 892333446 914362326 985605913 996135696 57016535 701735023 514877267 911817707 357441900 655697270 466415491 520935029 242854874 939246993 361737975 965426302 531082530 709173802 606202200 828149894 674097044 910598557 331549486 796446624 157940739 874628241 207429206 424976583 68876743 831033058 451492131 883114437 632841063 695455872 645729255 814332136 266043614 859682785 411146860 596584126 158194803 221943745 768691303 818373534 907745084 975874192 739862514 937077475 434725234 598148367 830886530 848420815 319236692 816598903 322072719 765471922 194665 550039871 151885663 692942268 962123412 968194599 442317966 969326689 451022566 463658904 509547492 892738355 715082926 747776539 89117172 349634709 985311399 990074740 451378092 803879370 370919907 937985799 182556267 728412325 427464077 754363409 960032250 983809895 698217943 921489172 336197231 722826821 955661298 955783771 942076608 993308636 639694578 948170438 73442323 755261991 66850051 181513095 939402124 998923169 967101207 973645776 943329511 974669364 627375810 643551404 242358224 487050257 701717382 897053858 158941317 612562286 650742853 909762543 696743199 838467696 790149686 809150690 484272889 811511123 428022978 773847748 388314789 413102530 850955476 979355003 574619289 576432015 242109615 409804465 382933 322256741 300551895 959832228 501015504 674106681 320682291 598578177 684530096 902915608 356836000 494905226 943492276 946106433 694774238 704310409 293127738 331675421 645720229 688421873 42778345 73482916 667880249 907851061 499498706 704647867 279871424 700118205 440831730 690004698 476359117 491607034 305401122 578918267 801421939 958917658 622292451 789828260 392667286 916730470 179982042 833045276 797631077 997770860 486757291 669802638 809496947 809597047 860961547 987393803 999556129 999913737 180776059 281559160 209113080 541574827 954326157 960142637 701381927 912676794 923868040 969668715 33863795 977314646 42321273 527563093 91113438 117399569 204292979 754793067 949247145 969846626 389155523 826411097 82896825 780203005 390943103 729723901 732552744 876862107 779141409 821795992 914368908 964503131 386844206 525842912 660397546 828488190 936294847 984849557 954219993 963217071 227366942 352652905 214684764 267795490 877523248 899820938 605995660 606587495 490021416 582634072 1039299 295257755 847078196 885719554 365294367 908919502 628607314 941581621 778121285 857626235 457992652 898272579 825709203 990015826 151483953 410599479 338910533 987361902 792490654 905606112 189137079 234717852 155798893 488679040 636514606 982498187 619232262 741299047 759203071 868781719 886291757 931771556 578827589 795714353 561519328 637417912 710761288 820460257 274138626 707256499 372672437 500456396 759293770 947536914 387751470 793415853 234596821 788582728 399399287 824897882 721946716 861332005 279210416 814169189 778049271 879105455 432935748 653382310 941279299 941992053 726214124 981471489 618872761 729917746 387965708 492656488 617229561 857817045 194649709 536536951 282433327 730242840 515100495 539584661 191757727 381024246 708712782 964692215 503626069 619976374 285430284 948171838 819504789 854194681 724901875 725328418 705211267 891505571 126656562 792296958 637023105 837584359 765372327 854778677 328671618 543696778 796651220 865075357 858167202 975633373 880923294 927062550 455410322 866023636 830869269 893395126 785938105 899630254 164612323 470507998 496276786 517842308 257370358 934268586 889188597 972371684 609051522 906142787 676712730 692955770 411793655 608362568 658149201 753398106 605058441 771461409 648509509 947211285 973663745 981437361 673227811 847385196 910008005 944228864 624970607 868990410 230137760 936605688 876523359 911854704 711531721 947612101 590842251 921909962 283823918 509158075 966160749 984493366 342344964 752925885 872768959 913544072 355256070 993904529 298685016 772089776 12501273 188132892 963326616 990778178 781462211 932716040 335406562 660799909 991145438 991958854 114819208 502891964 715308893 985290148 467034247 764717591 504420772 867386621 228601705 926159488 441000614 653373385 263539287 691972169 880926503 904962750 533897688 924065584 854983205 899988526 523405355 900928815 468475773 838635259 857733414 899754463 226452947 530684006 344110633 943043622 602821844 784632399 98535906 183518718 166506087 708963421 353556051 473771123 446646896 563515845 778601982 841534113 481001477 947723474 635878283 857922062 947217088 962245309 115375999 311166854 666645742 722040419 536278158 999081208 287804092 867051034 431618461 816324149 553938673 738732714 502264030 719835184 983174249 996873757 526737871 698201867 638822654 806290524 787861067 878950514 404319200 547359517 318374044 898692355 524779251 614574893 673314290 933607212 243309288 414967335 477527694 898663657 651373616 918996129 341745626 879540328 847943994 945173546 45154265 687169580 642243841 660944064 36950246 578630513 435036805 959213657 281890400 668136323 547933884 841083047 830888512 965414337 396281586 998744269 892773832 918166496 28685953 557325651 977775779 978740972 384783491 703483313 743341831 748931997 267481856 962511945 770939846 871528143 389761361 809581278 243239777 958016413 290439576 933981129 447489013 979365396 592425057 969931785 982220183 987080015 222552847 691907409 124968031 404932301 520013802 667313090 364260318 540177451 246838251 804767683 874478074 960219397 819618116 917969382 177866674 307327205 422120261 840541693 647911636 713564936 497826416 552094972 160908523 325857397 533079405 768067039 796704429 863716296 807527524 938436072 45034613 411932137 986031022 989133209 635198238 709353178 876071298 988861280 235043875 928084110 266011295 552918148 55904722 760414066 627828107 980436828 630048999 681731359 721053675 890923414 155709279 512915500 919894332 953187068 301156939 609773775 185209010 555729685 995881176 998486221 76549757 710819739 284792621 546720163 183454393 834456831 69289890 546165409 260872961 367656353 487804745 852904717 940201368 962100003 987542608 989359752 34140503 732657417 612331576 779588460 391411677 654687187 464370006 825675775 906246038 937679511 233412685 761723716 800798298 950505265 326498285 434824201 555944695 969821146 55939273 353910806 53963958 262759768 991313111 996490327 790596986 826062784 866871839 913218980 683977603 902097492 409183433 708516427 324693197 760008253 779427403 952882295 987614477 997692228 808480566 856789556 785750139 866753205 648668834 799416481 904885334 909125864 295857476 995553661 115771954 780248388 580267150 898526433 380770354 787807060 687644052 750447114 970195163 981763222 393351212 448337377 605421512 961296191 375800092 626806998 355442623 383461216 321290388 409832009 192338447 654863683 165381167 463611981 64674916 663874405 25371167 604896381 648964849 665494819 75027846 442542816 144920437 385095604 295668101 482749115 390932299 996146936 320359256 911687653 26314498 379804912 521492688 892638164 372609379 471004528 60380380 781787932 409941338 679021690 283577576 714430007 241613481 550332244 894002940 988404128 757119689 908945895 722945116 783687639 514308776 804196975 841958059 941312880 140377471 860031758 386399593 690653147 902178453 953855933 238795328 257355113 688330460 988012986 152395335 255663405 820111444 937620600 116470479 207432292 337314754 591531996 149518029 925251650 893967846 910488232 761815553 974417707 419854478 895976160 617676912 904590822 156592332 551178335 801446943 968642653 883339844 936542196 692553714 796380395 16408724 170234428 64806005 556467832 13796076 120264700 587510512 597618714 871023611 872394656 797679959 809334284 862362811 914152362 544501361 950705552 96863290 860807730 783438286 883711688 869333470 948941061 995892274 999214425 270211607 718164960 768190393 782563258 319615066 350419209 916692145 920236174 705334441 982525310 419934071 872536192 73116387 584615227 388209872 947960519 293952910 303493140 18664907 51405332 966977477 970841719 747660922 928900991 345600629 832576959 469544019 645865723 961980567 977327664 776560221 936165372 572906944 687484235 423734864 677417090 392780131 490837477 76372218 135611262 499772719 611148401 608522000 649136095 711948276 996945795 298133817 769108443 251652911 277507564 300665771 301339367 11598301 339567110 577684359 579047428 93777203 223921089 813727565 937676550 776195804 877827772 858655046 951103212 535747649 793923581 654075835 876928530 105306596 593364005 124302185 930373077 325780944 638540364 926361183 929333482 86859464 916481155 257937367 467782723 444125209 626946537 297632586 397192583 804604412 851992078 342404127 411556451 484127144 589194965 34005648 985700293 269398296 908472060 439962526 546316579 205538448 616842988 947787682 961553141 71283637 975422299 964402856 974180507 247926119 858560542 848875019 911512955 340050796 494167354 661419145 700500597 760539077 804244108 329749812 555922754 590908204 721447292 916855568 918061703 277944803 958040670 620303264 739646377 996125759 998345614 103749545 309742361 302786941 845850849 813738441 965641066 617245461 947628406 735257120 837165590 323677611 812736676 872470492 927783813 618392561 917350362 396662441 747672717 878875151 902723792 725700026 813168442 634474803 645412477 674014659 801367869 785957129 944484690 820257976 925636924 242083376 481254243 978533667 998411569 237620944 629204150 975983937 984530162 99028178 718655478 922226311 989322246 752893119 828042522 612634204 975178993 667048801 861175856 609214927 870354784 298089769 800539760 722633483 892678539 795663196 892456892 370695021 748942646 529046571 834004047 640604307 844425228 802159185 814989581 511682421 977678947 388467780 574790738 692744359 981741424 61042524 137810782 765386663 792592851 822730987 961121218 465018758 697388479 872246817 873099522 828227541 841935081 480407088 892236832 329557297 795334941 560620309 956048764 94882285 448893597 806344694 996296836 302169896 697928026 595097226 755483607 744735235 801266920 775887496 911657040 86806884 673526945 429959477 741353109 183477164 571713646 785222395 889384082 233257559 741103406 373690961 443833352 595024814 885004528 388455307 556332355 571626008 585843145 986720302 992058316 114940877 252187073 847102509 850152902 521724008 955784387 790716566 971214791 214174973 832900137 332025832 711530854 53768436 487773733 244184205 982886450 335962058 342150975 825839723 929168003 602271531 809398803 171714730 315214196 630060653 739050625 606591436 958491437 395998095 626731401 21396610 834836121 592928402 685657065 78092633 613766848 445601795 491905896 896960446 964040277 513236865 573583446 624739274 793681751 687302176 834435436 939335648 969779429 133301200 460093788 829178984 976125601 649117798 938841791 6233645 850959729 752282677 969752758 170825028 735093420 876024256 973335863 664897863 894888744 459686463 755791579 103221825 385909742 208671450 973938379 39153791 226723465 236891428 868770618 40213641 821534175 493473397 803081646 691139635 891100667 880598044 924980942 533002863 761185572 172267966 439052242 389381350 615956966 586415671 954371421 612482233 864828586 658821325 760260260 496830772 873893851 595270968 955285019 137100457 196991752 826931104 923865721 558378220 940252747 312302148 530036153 291715994 997422631 112228054 873409892 515634342 651945876 51300119 264011513 90251169 893486914 240849197 301864612 329129415 914094209 911574472 916115781 814909019 834548880 233349607 477856357 848121613 884256994 713002684 834809717 309676156 505676961 84901310 637168085 922712753 926975940 13695133 864122960 298952177 876800445 92622277 729316539 270914666 837236843 729085712 935367255 890594869 925208865 77915398 581358238 651990037 986335389 927838447 970897286 320293810 493804173 340575848 989768585 720628416 723528516 452117037 507332517 962701981 986418882 642948709 926911974 993815248 996151710 623997769 855003419 146227199 581786699 951754806 960861839 308377972 498448492 357161328 792370426 347205304 350353813 300734129 896482918 726335935 870803562 951617824 989344485 493872433 559921680 366832070 483798381 130372340 545799035 283382429 367122902 920662594 997585043 852710222 968563169 989776346 997085338 732070531 847293747 22720275 823566233 432651623 447820193 753011510 929985176 235656747 360676850 739539053 790438009 335669769 708080492 201789268 388603157 509900844 783460458 553584195 984322118 204196875 420375279 268506901 307619061 29305000 224255447 901651494 917814754 895652287 908255440 996749020 999317622 841935834 903793227 220296417 461058288 130175017 636100408 863129722 933266589 315573880 640425517 602345014 635690226 842083962 889367388 231295554 682428075 289750022 426132158 461981398 629357983 877181287 997742007 958829563 994500636 819781925 959830868 897821812 926856610 745677132 998034621 440343885 604348263 223957260 852794540 39691310 665631391 925063984 975563691 228714751 808256761 222930670 712552557 166197746 807573012 983392715 989577610 764166270 896330009 895098389 951636105 812674866 963882828 727839656 739015747 529725770 810762071 290945893 435597041 19146944 715577995 870782310 952642822 251118710 436966139 776442826 963547754 556320317 884174128 363829471 944912878 63959513 709061760 179167856 786349950 726084950 965638280 682087436 818598395 339910097 844851266 440758909 562357763 928051562 967858894 249051825 592621147 710033574 819922213 571540260 868872025 469951494 689809167 719252323 725215417 249754193 642075304 367363349 781792572 388364345 561382892 626187728 677194225 331730156 348407696 274641041 417996698 608222679 707648230 229208821 354058784 205482254 248280756 301566566 833643309 829066142 883388217 685764928 822701847 203181447 303705207 314518620 511018581 947998629 978677823 72451371 171372157 894792274 960922754 814591764 892192858 685907729 716569218 419285258 459702357 417756913 463020077 460426244 981481486 558084197 663303617 660795880 852506092 299762540 687778720 207664438 298696941 432765281 734993815 444281281 526032394 594421218 680362125 574223458 647162979 15255600 163335384 449885276 832329960 876410509 877721614 332287394 357666140 958619837 991126096 392788393 431721063 595494985 924177406 566185479 864156830 762682625 824394893 839003250 967037011 697390537 739430775 719521641 771405888 939383297 995624265 852799870 958332655 354721164 856433088 272161567 586623084 412658895 553511920 539131730 863017916 770167482 845336817 619412914 769350366 711277683 912141224 926604085 932348569 203629406 669991958 594924269 672283617 200576962 721854488 564421532 568057481 935659016 964717675 316986484 570686482 575017664 757489379 838090580 951487648 252415100 417568023 785495573 979197138 916435248 964366925 714879367 965808345 557936721 620627773 383884382 416443572 813692032 877212171 881306823 974225536 625611295 869688144 836251686 860609008 562304644 790610044 681687368 869221651 276766129 915277251 971181797 975452466 944653775 970051230 949002849 993016853 347832683 663965769 958734062 983813081 12900268 649146693 500947049 750903200 381317953 829377878 864273018 983821361 744375857 794635916 248006502 539908405 479749230 626454812 885545225 955141369 640781878 744956581 557909987 943438669 462297785 728814928 3824442 759515618 151269118 985785665 416081567 493849825 295647585 920267655 250882617 580407422 733476073 975363585 502747406 720448401 423645560 885570718 274992913 350038969 162485666 582996395 297718447 328809514 406773550 500958974 840296221 844382032 478681164 658424932 763993350 898284321 363683749 671556542 851884034 908146828 992441068 997238478 140438808 633303673 577209055 774548436 666802322 735740951 383457744 412561067 348134535 357587871 427922973 500163154 580047080 616561119 684287133 816621268 237030343 712868211 162669769 662564872 890940357 955898884 659920379 709957022 224285177 625392570 10837833 58373766 690223974 933016391 861609908 997325705 183550531 193169904 118844640 716081463 727347465 901149879 714345616 886716843 231337498 308277296 207442208 826101565 613099066 943737221 184341213 709844510 25865406 972463022 405346776 430445724 669277247 713019836 56030015 474285549 359742793 375610065 241890066 451408706 443738404 978522712 545882162 644482289 375507126 674046464 309811795 941190588 843217657 847061731 454109750 506508034 257020346 528537639 163467997 199625697 855481167 864645890 373210466 778932931 215930186 249375292 785520263 810515432 7737288 68751752 57245408 337340152 998970261 999729394 915301184 947666091 859187851 964490799 179640326 792497772 442730493 462404924 153748340 786561411 871201194 935588623 941175597 941424583 207459176 535080693 72178856 897605942 471428097 587058323 629644313 952498454 734477483 928746052 620253745 666746193 427175447 608346861 333274418 820179505 212342600 616454957 912469835 967072436 317350465 846975971 540736245 895709370 164788162 493308388 932428040 948549544 440730839 511632965 137289738 329818119 476761494 769985768 167104634 891137100 946541363 947114308 42261786 492839000 850411853 947100964 621515176 907277777 944912951 984575489 368688821 985271657 468756461 873413628 490018272 807040983 915422332 920002524 540836928 718618541 641420825 878415683 50679652 766450628 55219938 611914606 428495391 882004867 248572138 436570448 396151 977812597 972620901 983871152 582336229 845778392 488564882 633646428 436457509 810551666 605984153 712220480 97952115 940726255 659175486 947030451 841288205 996286841 766089224 960422057 262031226 836054941 275731787 944812318 264028805 626133142 827858736 914047942 22015934 143635484 118035782 697028522 710695925 846564975 28534628 835671857 991562305 993668312 792746695 975435907 858951156 902678945 390321747 504077148 474690634 539224153 81994010 818456403 901977846 968457073 820439473 952788558 531683998 671601646 705131652 763256401 548255564 712591296 363778932 702353993 747810226 986094339 359402077 785601570 325386211 857835579 518944797 901347343 390505119 888439076 421045961 841010819 976206698 977644299 886168986 964448543 774731529 809906120 420155248 856969548 646468197 862395858 384490243 982141908 636976408 650695460 241553561 903648958 715261030 938417880 431945935 548619772 284962279 942328924 407836348 898759445 519650076 844691147 747449727 800546721 859932906 986003096 135526952 935190286 712520649 816288246 465697618 969506483 575256052 978126223 419738591 481058740 265178110 638834752 998288530 999127216 509357494 932211237 793928428 951566894 684003262 786918511 899645076 910963321 910921720 945108137 921328470 969315933 626777000 984137203 693938312 994992672 6472239 40382703 490749937 526853733 863355925 911386498 304972927 553845884 980174890 999747142 290362971 448372984 321677905 686628311 936398954 957613177 839712499 898078107 808875334 895219145 14233181 72449614 467484776 633699040 272506145 320950853 317160158 666771182 655533639 990434687 887378897 994539558 343822244 931329754 401425810 405131615 224996900 542163752 536987582 662923617 449665818 700846502 387571833 524921115 227453390 324092387 76654781 816696723 288850017 446887144 574111027 966795000 12246184 948668812 496388209 812519226 456924151 971895052 278192663 529328797 679541928 748440622 30533230 556190410 592454076 791749031 937965740 984397595 52557982 579674508 979047925 982456016 988418137 992531830 878542539 962832528 587777610 615680700 52498397 628597379 307275929 617350735 155396752 829677502 473040106 697006548 61362576 746074737 216358853 634974373 33701553 700260658 268880898 373026817 504977506 985490932 460801349 987595699 124827370 517892850 804580895 953931107 454644459 746239162 952019040 956280728 99239874 401236750 882975524 999151860 144237430 872196007 981790584 988243806 955375292 965782225 418774985 995885335 299644615 893390415 631751544 884140378 723137962 809455418 879350590 898937767 984807265 990076769 183633664 641700337 886547176 903901526 34376623 267182695 161074716 946381974 59914639 935140845 787332903 886877668 199628519 919159921 142529826 401292158 428342144 443428676 470693008 702024733 214092106 761697103 578352583 724174105 351738525 654192079 842416158 902402576 426396100 911626418 307550689 997593597 381424576 792277912 290717725 539418743 998312485 999443330 831202930 867232050 870094458 969648734 238786252 799182350 600499292 740052625 274086637 460591785 359084991 447631989 717046227 733911054 305100014 659160359 103343119 955460759 272807670 991391346 1024097 944957247 936019923 966903201 320121960 923394922 944200399 971232366 954773173 987341296 5553870 900453217 243300567 593408593 195740261 674140309 744237827 941195115 750634781 775950055 287051226 555802268 742444966 843012719 267983410 911386315 724287402 996835039 547771330 737360353 852948871 978088511 508740067 531476775 576954741 587800419 764308593 964182061 103721453 894231520 331776865 348136059 854157091 970004390 507176742 816974174 223269883 406944965 768702020 964128712 380233642 783055019 224860948 520746873 33093466 676597190 699817616 973408719 810957148 994791285 633645875 985477529 903267801 988857107 10513627 987533910 404471869 846477178 294258571 828625112 711623475 753176845 540748824 658522975 103866589 741259999 208206401 583006109 651295599 770833349 146387034 406490038 451454864 660877297 768842945 915910862 111015696 649281369 116648900 201876710 687434929 767341561 462205059 723694959 147397196 825703330 282788193 472309316 696761380 902417901 265681364 276997234 409218378 658991683 420104795 689363515 242065928 298473484 296696136 334511992 493022678 743257472 355881142 678708474 977583733 981695884 384317413 615066357 131002093 673772620 609039237 855295655 811598695 845746845 657609563 965787143 596719678 903555066 916101199 941865955 206209642 583204709 166599980 607651123 105304310 600928887 111435975 262128254 400207247 654897719 159883368 173782782 583038537 808507201 170075500 510326398 942240086 973219116 355294343 371746716 89672633 680932346 193247927 915778015 193721202 600801325 791543960 931738806 298299863 334535779 358087514 789650079 415516962 839642837 315196500 523150250 810094180 925701871 118192586 599906594 495529583 754539699 916455741 938890415 881818515 977290529 9205564 975599533 815520262 826428147 451182431 613835741 662304789 890065476 344135425 683272186 122050338 404050694 371950277 537530436 531621230 854934610 758975682 797531154 120547863 523635732 727919427 802492273 506256681 557154576 618264657 661726060 159121542 780546198 279612745 530483139 395161572 730206809 887541526 897496991 923985905 973907446 900929818 986656455 956889171 987961984 879609312 986647632 7814367 835069837 169664884 507927689 839025323 957168870 888975439 976710286 230583927 251840081 189505206 362531035 220360176 309287859 830373375 986611943 621918238 900193711 477233150 802867950 538579181 560490233 937185097 980691517 80761680 580576014 743440799 884059515 290092647 861338000 882405424 914753776 825666482 973653291 773680859 976102459 248691220 853010564 518994259 590126580 960556186 964753473 200747631 440325128 431671690 824398884 791970959 852743472 898885263 909674453 156664909 230982311 42265542 596599146 582435758 884144426 392616840 401612508 693877859 967205307 145842302 570932822 810370475 920162354 797116874 870408859 124724973 864421313 545112959 896627200 650619597 929239194 359911721 900682859 342486697 991303939 587081774 838745850 560504018 701354514 646280202 659945004 246276762 765971254 634270969 672680678 260196940 474198036 110282655 515997123 581478363 597593267 135437136 206302252 465621490 596694828 159867107 851972665 326908994 938904269 990429229 996360110 803130889 883226656 540304986 772370342 909798303 909971033 693743254 733282608 4572641 597364583 713256256 842213435 351411452 870353676 905879653 923151186 626467463 903019409 19126392 214428571 717044279 997163282 794541715 823639048 349782105 671652840 339629986 985389234 160283824 395487566 697947566 944630070 366406543 630142823 528429599 528517472 342812709 630649609 425885895 792661307 824998787 855859606 4871623 685611895 968275088 980703174 677032825 913643018 882174399 941194026 553303078 639166899 928920110 957165885 747719126 830622340 683172243 829959223 701142631 745008557 628186389 793005110 966536984 973047073 168600227 554144489 375599791 688710841 384304806 657298879 792484706 800199849 205935777 679427868 47306959 974833021 520399541 528542241 736887761 859496031 413065768 920200945 901702574 986241938 124543619 492296745 299345865 990968467 800146639 816807485 850784385 910658526 604302526 746954111 120958243 871291301 887543163 943284814 633734174 682946727 293683965 413404192 479624416 697488592 210339528 225785202 966098839 973164725 485855197 517636913 211339979 736696660 84321476 112386298 223904497 592900391 159931208 224837793 512446147 729086004 80807386 484686689 411021019 867672126 568978303 999537457 971575029 994420025 810566436 914583385 458673168 722590456 92864789 397358755 647459644 678645800 290449992 713711678 81932790 872320014 468704290 954961325 521090886 867547595 498155705 929032477 257292620 312826310 797254441 838010368 378981731 544445719 914292481 956927325 619385812 774744339 334795825 378634587 86577875 472543158 431088993 582947155 190820630 420651019 669268805 825943857 877583210 970867427 833018988 929926898 922036713 972890601 200321381 910761827 567695340 651938802 264956814 360921089 387747412 930441473 860561373 964756274 965786668 985360947 947516715 994853937 510942000 872180989 112249463 715429267 99465474 553065077 917730598 980187187 390921396 433138484 680268092 843249310 298434378 478723961 37846909 48225988 263095020 379499196 209886552 561806631 814163421 831961306 111261136 175001159 260740113 380520908 565546575 991659627 940977738 947707465 317568973 898617874 708791790 828792061 810388004 950987030 628404343 687293266 636576318 991913386 587247408 801815700 251612004 812282138 1158200 93609679 670554047 731174795 521678115 985440595 771320635 808005305 791926373 892798000 382240954 539738197 132813501 525728893 901531581 983670219 491897655 959336495 10348048 226663470 759965091 959244863 556346050 802247411 339223997 430062470 440567121 858395164 613566776 994423969 296763934 658759633 697833381 802963280 310175486 551001656 63171234 731599854 196320570 876556145 942562499 999085588 906480233 937268252 973026204 979414391 638017938 667474882 752516273 810085371 542180920 717689865 918776714 938924804 256797265 955354978 841817977 958757990 596161681 610737865 468648840 853190441 509216437 677518091 342774631 619248870 808447663 872877568 71687272 615041146 550472624 969891485 632309735 946103576 589163461 955502171 803780066 994135570 484834274 586256322 404686970 583459402 556902706 722706384 306070441 854466940 759842563 811485895 642093665 835477745 122921572 593260164 675157634 793442320 309160796 414190675 207282927 706373668 937900940 962124840 98421523 964591232 251616473 371366035 993399863 997983993 522384430 830885320 712181457 808131016 813714537 915576290 479710501 543570496 336320194 364056370 917787366 925963099 967307426 999108483 961318800 987318352 225031296 508413987 688973244 788100242 808866235 833761089 762231971 913583051 505594048 995789321 615629339 741742227 664233580 671960441 588018281 767274560 924209251 979187783 692108727 705368933 307056903 551982708 655327292 748104004 427661455 953416081 873123311 992149365 721213161 766338860 191111669 915508925 387207763 646547562 480846999 853748821 587555736 993935316 161009405 956770339 833002796 835293108 161288465 710147141 136331424 167381563 14790694 98324509 100361802 449916429 497341648 674223244 738774753 810652338 387237230 865552911 464090723 842708162 141754186 455062811 657524932 974838973 732702038 920547102 58097879 864570587 513502185 758934367 805563762 886930951 135986086 220445038 137210671 198488530 744089947 784944916 843198887 900412718 769598886 844903126 448104568 612214813 985948635 992519882 305577550 960335704 296386216 425922834 520045368 693417772 667959168 700758593 940848134 982636329 402777102 510744560 902006975 932909785 856583126 920076381 637936223 880059019 374734697 389350229 385710051 573478483 233369393 985520526 691083204 723090465 98214351 741297322 942205320 986399095 979710812 993420349 32501663 267974901 263100382 366232802 517764588 775505652 39432872 535261926 929459813 976396044 40010942 877623053 465041455 937143432 124543189 405316006 589165189 945008702 937940789 985495847 354208374 673289136 10988345 628452898 783274486 836513385 897455143 947990780 857346074 886140473 700589606 967959207 703250238 945568710 616563882 851110168 911207311 917328419 976697682 995028123 848460523 936990224 57130521 971059916 521180572 812796384 206886828 794547073 56503443 892972691 671829820 955489464 881942502 948460504 386796346 794517663 256114916 548122004 147554190 934879511 437851187 864319016 840294285 974188710 853787550 943986235 545957654 669091971 334078611 450125854 640478188 774336876 833693234 977391708 291611025 478138648 291242421 461090142 868742889 929967089 697225766 921797907 56569688 573680694 806217912 993858407 822757285 823240429 115355197 178517020 309868726 667835833 552237863 880264890 411776374 523305511 657849892 982613296 780483815 885072598 302367055 644493859 988484139 993349364 658274063 870690595 639567850 910397850 301379475 390681721 655611616 676076802 395205813 589856262 664305163 944239207 410594935 969738493 673894724 712764028 650694386 933148628 74584179 675647303 896695025 944189574 638235503 760386739 892096612 932751481 539452073 793231344 73194843 569947146 298216249 896521885 733557289 919797772 484847434 766712586 297260637 402154065 733735928 894537787 457216918 612770365 466571044 995859590 987565484 996183842 840477581 944539549 214079489 675838276 967706146 989186463 739899772 773065569 373008528 575471218 270963675 566449225 710865253 794197641 239619809 295246146 672933450 680719127 224136588 990949118 687934878 706414846 414668084 811455513 164491684 829739083 288197233 486795703 461057081 741099797 41994929 873274442 688564382 821153855 914417880 919823679 927003058 976459195 415034135 630163212 431245568 530963425 682137 673672084 749607574 951702682 539168584 704472677 730938054 847177684 634590012 724377865 508810969 650408339 940711753 978839242 133541311 505342407 478913546 816380057 877102096 966189117 472596669 700549664 30172530 732298799 759367695 883447435 202649226 327544330 731156478 764730385 679541505 740072024 139448384 768338684 707609130 754271437 741782578 871374538 149385676 430131950 530158372 871211708 935122792 988810464 517657795 730052470 862228838 930433668 485565107 713981749 750243933 835323645 899757709 956320723 580454125 971321786 694972188 896255773 166319798 902444640 186921236 776451676 339270003 445304773 903460946 949104781 508668146 996295201 762106653 780869628 438217921 590692288 43530831 105288725 658975176 775567951 343147723 539112481 499890283 952719461 636957031 772416815 405071346 677373667 700506936 856823547 994287403 997834839 235014464 449643184 136731841 213073787 558810057 590446668 588014905 593245495 828510408 989793368 205468816 457225888 929724786 958306932 554399312 913150671 449140844 544365483 594114856 926990437 322530680 796321836 914574788 957349991 743929493 982872568 202078365 610242479 810247278 983993960 664685614 926757691 978852696 997818981 16330955 396336490 286329530 941686378 848440264 956878793 656274723 861652162 573095906 584648728 742841752 896397543 928359177 974172355 445831354 647144273 59596000 186939865 868661594 978896975 485620388 845973857 406363107 659471116 257198651 771098611 599441249 942947261 273245355 797600655 431729628 627460754 889631468 983043864 34453271 38513978 20328093 906291365 153841927 866139063 538589260 775403125 526260487 737486453 602400901 857077410 637688918 684832214 155904496 291317178 401613606 590517752 335434874 746832891 281775980 975282007 133036302 209632199 432870397 652230195 906926795 932843347 899714301 975964187 76907475 919194255 758353229 923343155 341093351 852740376 949467147 963570592 753875544 790932444 170515455 513272851 879688649 934235614 676871823 841781387 815885137 954487368 927358128 944421775 209887538 532758190 516064195 855930526 322723162 734259823 571087908 824012420 700042042 901228044 625002423 863415586 875589433 986686606 761574267 849039738 897975986 903464905 72073591 566178210 523043914 555533265 885349203 903420078 399503754 528839375 540473223 698061880 900886436 980324542 255700302 680047189 22293053 333613559 15261608 273673143 230857857 631904372 408159130 942598902 136360856 605838361 621619628 696191323 451198048 739934575 394100221 988480222 293361962 781563749 413712801 662274237 932112270 933075917 924041726 995921021 92425945 223280976 37714798 870615630 689066237 713916563 65384071 655424351 626070067 996927106 448558447 845730199 272436748 360334522 41220198 906023507 330129091 724223124 382534215 996281652 54121730 182580621 468831182 644966599 590162301 738398409 609169176 910751714 334022989 622208689 980764278 999529058 430003704 745958665 843365769 894093155 54888966 856014501 49969078 220689425 937519075 974416512 582369934 822440629 5392947 943562586 133636843 986247309 197396996 347786789 639645373 737358307 622359131 993405251 430225660 732338036 657096344 871068576 794395172 854865000 352791414 506543706 698588781 870181198 357456908 569659355 839409524 972443783 158597858 396114592 121826421 291571868 615127260 748273081 884315711 914865310 11967560 177207618 699999885 729023918 738645509 829464912 592043907 868648522 398053194 533466006 468152630 653048082 353645736 627604533 510353935 527314561 483397779 497920003 61909026 508338785 963095390 973439646 133560634 843511583 3892762 231696714 616099337 689207489 811714185 906204612 554046783 858217987 588401746 610666181 788821504 810035308 337126762 997314690 259946722 804096918 735262724 838910278 685528263 887162472 863681686 932356774 534580760 879948284 665462128 683087401 94591613 973695178 167581421 703033721 148941437 961947644 102300083 527711522 34800257 171645919 934869236 959211097 52569482 541278092 112297902 815710739 807856069 852086600 148348584 544785192 439277295 932832922 269937148 730260199 845304950 922383402 274574662 344897662 754666677 871102120 290024267 745804275 263622026 329955701 707517888 784906311 935264905 937642241 976820894 990572000 114501877 943199934 993718347 996931868 324155949 513550161 328457508 434129566 855575100 947757525 845046843 920236703 184111778 995926145 817165865 824535900 881998248 978746466 494763706 959271894 900281461 970395475 882484460 910048375 759536015 990221979 342841486 669644196 1448604 399274374 640615825 871332962 948948040 989281347 596491473 952234906 372533525 687060358 502836007 982872653 999057011 999429105 487707891 701494510 439299809 481780497 727551847 983360467 121856450 823410212 160668540 919433042 124533628 920932224 70537250 568611841 166784098 534502246 533971267 796982484 586955146 690799988 621907506 683939344 883337908 925327109 726537228 785628800 62635597 575352878 749510989 780290966 526006020 906759781 920388194 955127623 791606465 929305072 882399945 909833549 792672162 988456089 530524385 560006441 37392002 810020808 39552572 581364211 437242047 832239659 992032540 994318273 443372980 791640263 311124851 479581343 737448458 885254672 960180257 978301595 266449285 385901084 848259884 955494236 557249347 927672437 758131064 760245984 65810115 234961381 353201196 924978990 660557090 990205036 967431183 999282991 583340385 624069983 573165459 654225078 705796074 815087582 951628841 962094351 771439778 972091228 100998094 885390225 386123902 929262463 626838482 635442066 797800934 996571772 338651765 798635076 307061556 505061722 261108297 736395651 326870877 872478208 188725703 646111370 828479847 975241031 49764962 933310296 798430246 812936768 633901431 946937599 764635391 781195685 417598881 644413218 487768549 977612403 536718287 695012676 814244913 884433803 83888358 986446033 440508804 551948272 293669535 362813632 434311734 808814435 866852837 881122352 120955713 996792870 951496138 985299626 828911439 869882684 357377650 571790076 246776727 599591271 783955692 954296911 819585201 876904656 841766519 887653759 723493798 732217822 829427212 879318536 717016689 745243587 834803429 868422051 830373145 982567568 491221208 634491849 822202168 910964180 709150871 941879329 819751913 887330697 622725420 923720802 47516815 105685640 274115481 888060358 748526723 872259365 797907356 983968353 548725773 555079132 177593135 503293432 872374944 897273750 337905367 866056026 407182546 536737639 182861465 682473028 213136256 362566075 341435782 981375499 113924482 397608688 714155828 780155400 85038207 306436268 819571541 843432398 263722831 822206827 318063090 766738581 506551321 606102237 994827412 998906681 982361805 994158005 215203564 655849096 224033697 349208905 176401652 599855534 397898769 877513375 211074474 768328109 731023647 891065277 215887381 877639698 201346573 353041601 191812789 299661573 644294226 681804131 513671992 568464390 397792367 780714133 418293382 738758907 656565739 728000024 924179364 933194398 462264114 924229785 408800731 801091500 211423322 566235941 223150716 426994201 720739949 816881645 746119107 809607790 427934427 659424248 447707247 596437534 332537733 392408699 35898612 618969230 13453784 943841756 744994914 933954133 484698774 650182737 16612230 519651918 712305448 941389438 360286616 878549836 964224201 985714584 706104918 944131821 433916521 468153975 850308739 871587344 8653275 78330686 714600909 755517374 297163927 613936294 868252716 953918672 547404636 676555984 337505885 571738239 777472341 814924358 326043829 813047271 763442325 801359588 605532538 720381936 754208696 775317328 25968026 75242586 969210775 992312818 849488046 979555618 455664313 521713694 158055737 568096543 131089163 434380647 714721973 874083976 465930568 803799665 809489489 910791279 617177345 798957598 910304696 950000018 963641346 988994353 958317582 992765046 389803383 686978047 28807229 866879332 823563803 875585585 93877442 293261765 383384600 611245743 668246134 841387357 623677170 642535479 616796065 733611221 21235692 237059320 928776683 992375071 72649737 785820146 827616352 878215548 882703842 938658802 624279116 663926260 904025007 913793046 919925627 979465118 301870342 890903092 940820098 992049642 764002119 880957870 546212157 908715655 476896303 969000330 169738721 989370525 112097792 768579837 291072154 470258016 108538357 939137772 700366830 931275413 254284811 633366693 321209733 352651965 356203938 420806222 674018758 843608704 284224845 886030002 132348442 416455982 608799275 761924890 605309864 757536331 988822435 995900313 863859486 899379424 992748976 999805447 613857298 773258701 935442584 955355527 48026512 683275406 942923173 996719553 81828828 560556422 696531908 837243362 823881487 941768256 618721390 823903785 802335364 881392316 763240256 857088922 553767813 752200220 373310730 795077104 936520867 988524521 155922607 727888232 776025988 807901887 16574753 783137150 75077812 118692892 480540533 859286921 672969576 760557671 402182109 597147953 475165255 521411009 119887083 755426725 846909715 902877683 888776888 946619852 358661340 699080062 872499217 889857954 278702954 765035486 841707248 848186168 868806391 885426106 921722644 963098309 39969303 888875800 183525216 931657093 462078025 799630441 58299888 239938940 574039113 840379217 444821466 650854887 386867165 793374474 28951282 592358618 730954019 844581957 650448931 939005196 684681109 879953858 547846269 867240789 589626538 903652658 382753330 984229864 688926625 771649879 49908290 56152609 867973660 986944061 866301596 940572585 991269412 992044380 413347387 728198018 574347672 770874738 924927113 925321626 392125831 455989836 898519649 899689934 479990151 709973831 235023366 663455879 111312472 614094272 2305983 983408801 713732265 984974852 264285715 641089823 936844826 947573831 685373755 900118828 401359675 997756055 14510679 635456681 82250392 97659272 915887805 968409010 437275970 647119362 825565769 880065596 910865511 960379345 297590891 360853699 959669312 972709829 70398180 379839260 823879012 877554865 918660150 949727574 927385507 993273493 731729879 889260964 503627058 795242393 676285377 755247386 609018502 726434059 28253634 987879631 122445133 528226100 306385630 490064012 194525969 898514500 619147777 843301835 707827804 715097334 391061956 538878267 320388206 385549201 940464451 991691689 795957560 803550099 791075816 857204385 362209569 462141942 23589022 251394457 334208284 681300825 348667272 447854413 457854675 869706434 70442603 442311209 277004680 945700003 948947946 992519872 497424904 789251950 744668336 862125686 56097826 780834158 845588339 941527879 971087740 999909107 108952323 536351356 508288245 819000706 991076414 997317749 648817927 927403852 728622732 984710442 235304431 635965488 162705727 825240040 562412249 563462029 430791143 542219472 937458201 963003682 750487445 808872900 249301645 568702738 437052172 573446561 273009118 391557338 288591513 958399178 695132845 917566674 123082224 228273231 882695088 886799100 93152389 236433811 555996230 741464918 76049716 382602098 683071289 683083803 420873641 872328787 502600202 693885163 685698476 795471717 562391064 825320247 170450660 258375417 379433947 513343062 187190216 702616718 890127470 992631242 63906356 527015831 909884808 947894131 872853199 998220057 547070299 829634108 611796528 839417348 40407983 848835879 869938552 935658458 653503925 697437677 470486648 689320790 287662396 597732489 541173916 876315188 16966221 981375868 773264268 917131423 700553651 729620921 922683470 980988601 762213524 864034192 845674749 921839412 723892124 832163910 894076075 908462959 762812634 798335801 933741567 998308793 386132321 740508849 982495499 984925699 270682843 937776987 989164712 991735761 855295352 865884544 127954297 499003727 277969860 540383945 263559643 912864084 491344670 550844151 494242259 534837428 364959319 633449099 984231157 997317322 129917186 480901115 949556005 997497203 915629024 963716387 846568308 914085518 297162282 346257167 943470109 983152881 283132906 757837325 194463398 679816591 399644697 518041459 813486353 832977276 57577580 316791555 729545502 808749805 50422595 415405037 101137820 517791090 702762787 834304042 996215625 998840868 826768680 923929764 677499654 769769564 295977528 425948550 606172386 804492102 523702631 687924855 439070946 840227570 515084246 854284717 32225829 330124197 605718752 885204786 580659592 611441746 727934836 891095314 421921577 895334690 729672344 973576337 299543771 312661832 807376500 848352026 443916038 736898852 11222568 931941167 571755899 839472890 606055584 657180772 367975262 409969491 580569219 876398237 354048929 743184109 456481467 739692075 172658771 377632246 769185122 979403209 837033676 840623964 680792170 828500429 116309218 235621104 302057183 584623515 555007087 967691028 771767503 882631232 52343810 103432705 612748792 692148858 297767465 823764781 646561158 812643277 974098720 989811465 535313220 543892422 357955495 902832669 351046943 628839287 891156988 988860216 821323257 885362850 18908736 562810994 319282826 678547411 41892428 749127061 587165286 737189147 149071519 911668119 49884371 849270764 437614626 461081219 124627579 809703535 578230880 970016420 929421618 948742449 163161392 872353747 186175296 509902075 275735185 340474907 258977056 371679005 238595799 874577453 8630623 257121493 316606951 418906274 970379914 986940208 461962669 621322156 30153314 798456484 5126479 721039293 361655640 825975796 824256747 971585518 593067768 779657519 552558461 879340390 120260811 691138350 52482197 833390124 940109583 952057545 522461195 528472878 732170304 959607772 861978374 945783493 771644488 798930632 627579649 827694552 870335896 959956291 68917833 497754549 300734994 678221652 22226475 537622410 931034290 931904482 826132324 907381294 524252856 919772382 37057953 785494614 6632826 653845281 389600202 715058296 430599416 798091286 963294781 973919429 231677982 618457479 498770294 851289687 699143886 852495910 358901998 746964860 271644135 883966814 734413379 829365111 83027928 964650777 199036217 708975726 988136470 988335144 974820336 990422530 684332714 856805850 167594602 380474564 296897647 704251535 767369524 828144379 575541032 645089214 901505845 910490413 534630230 760891481 158910314 862423724 826910266 902014358 615784947 698494562 233111697 675034657 703397230 824828546 754108199 981914484 801500858 898847029 411031972 680121997 674571919 753057364 56236968 557199536 674707858 697528951 612721681 761721562 200019201 587306508 47820112 521329654 598178367 888793163 846283299 854442374 967263722 992707598 51793273 552000862 913190095 967334113 341677209 737284325 162474029 632438214 177258566 340354358 170340292 444894255 438413110 965744426 571707464 685128101 524931917 981834059 90452172 952289187 761531532 777256088 484459491 726906525 267906595 428733824 151335134 560167106 955190740 958055555 620616751 685801754 651757592 776635841 410635846 508695905 239839422 293988020 968408506 995728943 310539471 998451451 621280016 965190141 610919107 640494504 735124880 761868977 302915524 939096131 285482352 510226566 182205375 280792307 73863048 832667386 60052246 173580243 10683783 170047675 232405762 716892901 269018251 409274205 768219158 967246760 941305671 978202164 111402510 138885398 514659914 627570959 471247763 976265319 608963804 674787649 521833066 817700036 9807 484276967 67885247 348092874 271916537 693745802 961595811 991854107 13490074 622810088 19750313 733693955 506405305 883144431 799045205 860161601 672208923 714652385 457076909 831696932 135302666 405054803 80162364 169607903 698624509 734150523 936685207 974854433 665422167 887720494 143146968 327233937 56561601 877884923 984799588 987959606 911991027 997010170 791106788 958268138 628001430 875065882 995718156 998655902 643976867 856471203 807434826 905112418 358425048 866414024 901474435 935255612 906754568 981749410 810624759 984567606 679770767 966609837 821736045 896712704 656465872 847387408 497643926 535623919 178459273 576264838 525406688 625167720 676064557 758750294 669883483 760298967 350665529 523741897 312915256 978056398 485668131 809540408 523726682 969153861 63631487 951996660 460367026 636317549 321189776 450949170 197556326 694399061 44690538 47505966 452681892 717945789 474829645 845026871 648388094 978128651 384664280 394707970 662759534 664405517 526105198 673125652 848797024 934528653 730733140 770142146 49971075 727638948 863350470 986398072 618011992 842883910 230943276 675384051 369038761 616096804 431869809 879117943 315214101 928610093 405113619 598207253 701285362 977654549 910373644 910422062 968633452 986467125 979136171 987577378 596413203 902020875 752003405 826770884 836458150 882145202 913497787 974379005 785779041 856820230 640303061 983874469 462916657 695307320 837422671 982227773 422772620 921537747 807183477 847012742 414395488 444873293 960314712 974943609 174443208 783885336 704270093 838433342 41734099 940107257 721799766 723054214 354888126 483268251 367254395 638503021 16485831 695083231 167766525 534097961 668497536 801602488 782192939 947076935 588494703 903325735 933090640 971321003 650445283 980652076 585914278 922595327 191993434 395899418 978290288 980543185 567755717 678436383 125710002 280515673 804922599 893391353 306270592 859387945 814040572 969833861 557897346 818433499 456994515 800625506 432187670 492593017 69960279 534046551 775902806 834625993 614118860 815106389 193842929 971917283 710456721 945682142 382209605 911301692 408437561 444397047 30812954 581207852 635807602 678144573 843374316 849405000 321935911 786172816 20422526 447421805 951741392 999921196 91145580 773239207 542836101 808950299 506705533 590801303 437806213 674390569 645540136 780197411 652334969 844498432 182667214 299389336 391130178 938273041 504639721 998848079 728010962 731764155 757632389 973759795 466598171 600073563 214954679 525779469 271004763 621676853 681853530 717505420 791761202 901682354 189955168 245543877 879587467 974039653 954270530 974459983 218997916 822020957 397744920 711292616 185121123 493407335 989861523 991614766 571850076 632857674 939504704 960826244 955229229 982468559 29895761 246627258 879010332 961712439 805357921 975454282 816194122 942218556 67623261 655022723 185465235 712951860 747939858 831827720 631229430 959402212 583059831 867025080 511286512 999424269 956043897 968241032 436937273 544681609 736650578 879542637 48967561 760307440 637124874 947597992 765703054 889186429 811038514 939023628 622827116 960772094 177563507 990349425 22376283 890754760 205562275 644269197 652153963 898632465 679721048 706373360 801414053 829109662 425604103 839254961 887059512 927426978 223811659 694953467 567455237 615439328 366882002 394822053 170742835 691045823 284748612 756397656 980578186 986929520 933234633 984747457 631078124 883572049 88957234 956534502 652058895 964045690 278497571 849908800 161176009 315218410 129785119 916350689 939499178 950290112 976301800 982362005 347007595 470378262 635436335 935080454 915562736 960015797 219844664 380195210 186421730 264488099 443379508 962734501 801756368 928769003 808899361 915983776 166883302 558775489 326184237 570324714 286363460 396426973 674661752 956073006 793647916 842590242 151884117 223505755 596986750 779246586 486648993 765494818 3262796 94978565 616078400 720341627 89595594 809140889 839460747 865389040 738768781 792655956 657733164 967086769 538435905 996862915 196821911 779705433 674855379 897270386 889677547 918540179 889425873 954388925 23726981 136704191 943217225 969964188 900769238 969602688 503533692 631926943 405020783 782199122 781087233 822130367 87808823 217085463 59571891 622631156 590531820 898587505 814991470 952169344 711777269 826728484 745038102 942358751 598932917 974633455 976266204 976592116 169771135 216844168 743921745 867045186 853586030 862052780 888949477 949281636 266372479 968414729 836963937 932465246 487652928 654648384 730198966 850765472 160577648 987977396 32404663 935523146 33156703 915345018 978515240 998730859 811684861 845032160 217092309 292712031 496133029 700017528 302352285 453030274 331372067 532245181 583652299 797565489 610588599 838822742 692133390 839769499 238879876 653491958 595331580 713892548 875897204 914459973 618271370 871224009 140469909 406771817 553065238 657206528 214641729 884067318 799595283 912615950 268964915 340138786 837885344 900527292 792465332 912681439 370632638 702005260 16739919 885420284 855523803 930940121 528586468 640244477 431097233 731698388 97678211 913487225 932093919 980380706 438291917 878016344 198287577 313700456 807249155 853407840 217164810 578428094 717561348 782832753 477107158 784367688 620557630 924181805 933376365 987389572 325665933 406132655 286282785 358108404 844210754 895901756 961521380 971768354 960203667 974504314 6622023 23937066 880870188 922589774 956926166 962904742 789436461 916874242 792247831 795229418 782743227 786985194 702971921 889530027 317806371 755339117 893098871 906056394 500517240 690538297 978620365 995765130 111160281 755454458 950701806 958706518 906072067 963885626 144549762 300572803 162086151 956958975 132695972 141772722 352576266 567852548 930374515 934719124 415157553 615454439 427034647 445173536 956039690 978716836 130700571 745155309 731577675 818314953 81127835 749962936 747467814 827736714 302765857 771716084 217554677 905360975 902061158 912559506 29286898 448725726 895908134 938470597 707883999 982777243 862924264 929621989 262581414 905166236 896272814 947746164 78639887 581049050 127410573 811057616 476203417 856572154 403798627 987125823 613802796 941382059 914266485 980527237 935789689 969339117 649957397 686025876 384936593 984345020 83185094 518274263 566890153 853785241 171340691 980160824 883803935 897725351 950123423 986912490 491040660 697493872 853580304 893251532 62605058 986774976 58292467 142621018 682572449 860814850 405234693 570491716 222420971 338155526 146187364 363689222 356036316 829893420 627473161 975337783 483805582 770646134 745076962 760087572 162543546 858447828 790713596 959109812 379788488 942676019 845444247 948377049 661107809 662579295 928444112 994456218 400736216 421576378 96204045 584684161 256194617 429189540 136316520 704298960 130392974 339471754 904297384 966531918 294598881 369262832 986679677 988547172 636118174 962349675 254385944 771222425 553250197 609552750 912236179 914483750 394265548 894495543 813599413 838346485 702270090 905798448 864698115 960411680 539577047 808200918 878810057 979204669 835159002 837862449 339782046 467407017 513760155 868850776 715162241 795323933 411332898 971293036 941845739 992139528 986861716 989782217 921323396 988933962 708819108 834957794 87680844 997477967 555528960 720211221 548654572 649930487 303747250 452179308 847988965 881590870 55619083 759856401 700368831 820070866 602553271 998313408 957544556 982779549 905151187 910373202 67807053 803870639 529844627 856124124 923563945 979962387 573739473 816692355 81270480 891177087 660033560 728464791 504790189 939996397 542491535 645274883 847483457 933077481 267352332 557695865 425246044 618788087 476525377 476788552 912524102 946807303 849585900 952216433 498724189 903754575 94969550 223895161 129980201 568514898 219729479 652016286 715216616 968324639 489856445 578200606 878635077 936100487 547409088 693063352 209852156 223317659 316885679 990018374 94081057 139973032 992255915 996961684 633834048 783157401 638927121 804853219 400374521 951964631 589743794 740068468 942506675 987704258 43816078 561512101 268858702 924081376 590196905 602893716 707067198 983938127 376810465 712510368 511581358 911994437 698588429 875721455 187717270 380133080 927267071 959843443 732855415 945210090 219856913 247394657 199846458 619678463 827901260 874803860 679554311 978165003 385511121 892799350 18378832 621132324 782744755 923294505 898105843 940168417 489524891 810003672 366098807 488562979 502834988 836786937 867509700 967426759 422218410 967364244 50067024 393697142 368612038 985650451 953551176 991211164 824009881 900494238 510359774 705257669 199805295 894895620 671815799 777294627 40797083 288111858 915545665 965788049 891038652 972580413 48649988 416950771 881742855 913486438 561311508 742430309 134248362 644235936 399582104 792887851 970152283 996232333 512043304 705431591 512769386 748648935 202974965 953817122 67145957 617505529 105997889 193262173 347804037 995173240 626121297 730232786 122346846 185812604 358124710 599422859 581631326 731602658 634468445 722944984 251388275 880508516 916673461 998325656 523433595 530830817 813861900 883041602 376641762 433461201 490079003 504814571 104521197 783592398 576828526 665425262 842362531 978456576 915088730 917177339 184845075 199168918 592404991 750808005 901672122 992116699 693797381 999911341 94385579 321800991 741248480 790813253 421065394 445491640 484684558 708305677 585329202 751255390 625975497 652271622 118816546 635914179 197682001 882783259 185165351 502577029 380080078 890049153 540682012 562664553 700050618 739416848 72810150 996472103 427974448 838497800 223188885 735618236 985673183 995983445 552098577 990067719 733901689 746923374 975419782 980516759 237874723 729567333 110070447 791258851 323302744 828317976 505374129 646153554 200043537 539265637 258281547 642715523 533001124 865508052 761508986 856742635 286196509 636002439 880176733 896262964 211943236 582663018 388097397 835814182 238815916 908971963 581620068 796597022 404092171 844415645 929371600 933771469 1935380 765608692 813199893 841813284 662837538 724953955 751944184 989823665 682208813 702234024 186815335 247738980 932277903 996986108 254154456 334961297 906900051 978755230 674753099 956396760 175004110 877729860 452434073 920435482 357398338 743497812 414822594 906083025 412199081 481464692 954761011 968286115 233819651 402293809 832734497 856765666 904894967 993759690 444775995 477793338 697726447 729691972 924784987 938823198 176449336 313333377 82281966 284617302 408703508 664470018 546160674 582894220 430901490 802206808 614990704 951131794 758959064 932266540 310631063 383307957 302528086 404564808 119160842 807307334 15008936 608943853 788086751 863773059 562839260 640920665 439935236 971764333 38535121 450306125 19227611 536579132 806877336 841835944 172692374 252442976 748209580 939826887 973555251 989582599 220797772 346370340 960067387 976835689 65726274 515976969 679496246 734389389 842872837 864235502 525252970 538482002 928807516 953327004 135365153 766020979 402464842 476196006 607451310 843827444 256738193 781346055 427875845 505392461 381632855 827722886 640608353 954677016 867262777 881630305 261101515 614854943 218933377 430945031 161763417 170050028 12423542 708161001 79396068 171564504 508729441 747295612 463843192 914673157 870276032 964647915 498987449 664162202 466180046 955172168 922435906 932277551 48800735 498938236 760515181 930741477 129944032 316058516 177782670 458777397 876295526 962829027 235130769 301667598 599037511 607539113 185902897 279437614 737664122 766120168 651152857 994063279 771475609 842682597 692299780 757314028 452538204 478895025 520719113 774181282 992927519 993550418 355453356 446561219 372310154 526289292 294280560 821870290 707478095 791149454 885101962 979163717 882595207 893732162 948447883 958155433 99874270 109989602 894875343 935345816 95683055 937696014 110536548 297359957 705251710 772994875 918080692 951562426 552530776 904238468 417615716 668138949 95055207 458146609 749174659 868713099 520801998 615872640 118431094 667407223 863099815 904940458 660559494 987168696 641033960 946217689 529850677 866749971 101759558 311317080 555829858 570716489 111673219 225684022 753615615 952617785 46056338 600838499 739423432 818774131 649237114 874980673 839601805 847279972 809086776 892688118 125364355 529938422 125272987 333338730 97499786 747879659 405085644 992107010 446481423 463422169 575034876 981096453 690960713 913253819 840140025 993791341 977892951 981587895 163070924 174456130 646702593 906676900 606783827 779967573 875023575 884708776 693617445 780504076 639368176 802628514 540522065 840002097 548953415 956700763 297383061 897248356 464070617 763928012 44697789 655925648 423651468 536935800 130008443 899667358 360410250 604523778 939492007 982703536 178172770 962916956 284832716 786084972 285215529 446130679 228912914 249485781 347274395 911520018 342499316 513078032 630607739 713934626 11651704 918478286 450986204 783230981 24140370 718332082 806559363 841132071 31836578 476376871 842204120 849516203 105891488 489345758 512038198 801229381 920392467 959686455 557964763 625672206 776078513 983753460 593735346 619806661 488712913 535024071 553588444 571256115 746219795 887336530 522403980 970712977 885953780 991751859 814938237 837380949 598036434 901355961 593877039 600798106 906646617 908030340 5162530 538722958 859973118 946090712 422405019 822304643 213359877 248338598 645988356 792031011 375052877 895973986 58066770 398642823 411352106 850231361 870181497 991957710 277267386 465919225 547397638 666448321 776073053 785560464 660113593 661783414 176612845 599649930 817869958 994950015 752477890 859836564 634806333 843113459 644657883 692343768 948834874 999982824 252872367 785239321 683031147 692094683 866079346 945472605 805816512 918617673 18799767 163446537 733203449 776983583 704624478 710120463 988562290 994363904 344973927 922112513 596679199 706713138 270720912 926005001 488294326 538243110 28656671 366117310 178223892 599752850 299594514 586429755 780671590 842524297 99672439 117991660 601774807 944212975 711788751 928864194 597110843 616904797 952028336 975098341 587711751 779044871 986966121 992929802 777242020 824302533 189360452 465007581 543134508 591419401 128184810 270434733 473064876 604103660 408459111 491100640 29368736 634993623 782101133 914630516 594236868 779616787 697070446 703278432 294617677 398791689 988073360 990778593 132809624 967288307 16193025 633847125 683085330 707724899 412894742 967615026 448773728 620494556 546513567 816822690 942145065 954309478 549222811 822547647 171377883 549402496 282887395 339472691 424529501 599222019 504951511 906298489 584072303 893161636 913885744 943429670 722147529 772939419 321148363 432821050 762765674 766125926 880722711 934422437 657866843 693436684 50549886 644210435 689950935 725694120 780715919 984988343 921710937 940652919 747235044 964777404 740009492 914406876 662937343 804751824 176031852 857221614 668167404 938601856 972128157 973859327 250137160 564179982 861764801 989349580 618367078 950153192 549462595 564224579 918125180 934616828 584733537 917997202 500758201 674896881 727774468 848885565 44558918 116736492 160220490 990645398 526782348 974850820 362191639 867446828 489201479 832158478 956328843 975993388 912031217 932224675 436105114 983248641 958826073 977962803 513365435 564671566 458004416 935651700 844325966 873989434 435596188 549056645 183646064 517500916 308915474 438695426 533064887 673149587 213032060 867622666 671547073 758674303 461272660 925722249 908366079 966879504 131417961 579524541 293189220 478315542 812518089 919968450 238703538 395149251 608215342 971448358 493742171 907633319 19897266 483256011 32966311 939476843 525832003 839399897 642502838 763776308 650951768 741375523 545753210 729357628 892865533 938024827 179025516 284293896 228886781 520409895 677064030 840430686 674586125 809927603 85863382 815519148 233850987 858780849 158671856 482794191 671758926 918831022 392139491 835997163 159300675 778467071 320249 545978611 690867192 733200411 773168127 786560663 649324490 934699550 40328818 346336648 154130343 496391826 271950097 493444664 483479091 959276691 712634205 910123456 401690632 419894105 471728687 713743000 744160773 838508812 546981308 640826027 946686092 948927598 76977280 827765591 169431384 595442373 298841562 915729329 444545123 852048185 87155019 267459053 862100525 882208512 533716639 701561526 392584035 957425720 937181137 994168308 910661469 942191063 219919900 451075845 25523312 979361823 403771499 899672448 93038029 313980925 806014024 985329638 990546873 996892794 112413980 839068479 212561692 827184386 939343575 985722844 424653147 690886124 693149689 975651460 516831081 827603951 902069624 979276827 24925800 192432881 328775341 522156283 144446163 206684540 61469775 435777245 584340758 862402139 480207266 876281716 526768919 791992585 904343799 918566709 910254195 922442688 429279871 642439332 307462183 960520881 777521701 855351127 993098639 998797286 147809699 615218343 495624353 897464022 420894239 756589308 470009765 795903724 134049904 492174800 539855929 863006627 281057452 923837722 463402750 998626701 240428728 530276800 944644414 985586478 47771656 494254755 603583606 843034697 395069951 518364502 201789081 498942954 137362000 811750000 23114926 736908280 713199808 999361973 156187216 599384292 860619479 995732565 919177390 966776381 948299713 976669263 347441388 347724582 434052932 763604359 672545102 884434051 480963333 601820985 543980635 652440362 974451544 997821088 710312248 849372853 788110100 878017207 30841872 701874560 29543231 911743557 586081664 941608387 211349728 761467722 607981068 942501696 224588378 432016630 255372334 683160395 551674237 980530216 546705601 577254744 805134305 954563741 223026869 367214684 157830488 237636636 231568303 379699763 639342041 838607979 995198404 997963862 915944259 922137415 141913012 186308980 225933903 763242115 409324788 688224653 328101888 594171191 904010974 993716722 457053598 508245828 561783303 570825136 857897218 891238583 73832098 553236118 598777566 756724861 503493682 749490775 639627659 640417009 201819900 413788581 958300273 968920108 796918685 802083526 890077410 918584412 99742669 448214792 472209572 502698727 956407355 982196212 73472562 728066404 470212254 972188059 152564675 549617811 608715707 796866323 356993488 622035002 494670513 649108773 981214805 982734561 339106496 923119197 208433767 411293211 838625451 874931781 824421746 841272861 271516239 964082312 787601033 802070945 1793705 634945908 735676344 821863605 112081482 816707006 57506918 478007029 57673458 861247764 40076350 209816254 433606454 718919299 50167176 994177991 400418973 832287905 430173810 797984116 921302694 944312646 149343631 612942693 475508721 622014058 841421755 976842967 550458006 610222423 406432295 419312866 839290981 904115576 601994435 787902655 566283252 868870881 237366418 652316919 596158013 964905685 851315857 975445392 176967776 949430313 98925961 958386396 768876373 912856227 65726927 837834388 774146401 916047491 100776142 439161706 103749703 407901202 3706066 416734609 939275896 985707774 616434862 870324915 155161694 521268960 944741728 978104362 245519669 880195614 397578977 739624056 488974391 985115263 228751518 656736298 617699571 951652226 731072928 822540467 219400620 479346068 231996847 981415425 222372072 701643926 56233184 135830940 813657250 903092288 876303508 960010662 989040898 991825120 391042250 472964643 990635605 994958015 515934887 769558794 826171305 947996414 705282190 751083283 988198532 995028432 909483043 979751964 449445576 980598767 473266997 556843646 233475425 532248417 791514739 857396468 21464273 862386010 16478477 196734785 272092612 339634737 856485004 856652092 662802625 756642979 512029000 971105379 913466279 922683399 831902859 939003276 509778374 993839599 615124860 783746031 393833874 657751161 656828241 816899278 246525115 379818503 243003571 573348475 947922013 968326009 862159720 932021720 52302006 821863883 546698712 582408045 685925840 802051201 912691420 997229353 188731370 458010607 340599161 975146198 102891765 533779046 83949199 866073379 553516121 934082522 705639104 916695849 262515744 619882010 834570232 993630585 999725050 999969582 712220989 777025997 304179406 354878718 757798621 869423441 564812029 932643306 506126156 689480467 196141964 203839013 93570231 498930525 40102709 909203304 985912692 992267308 460598581 657472690 26976376 439347472 387273511 879832894 128146804 217770711 61017037 356762718 808675263 961028614 224703570 781618930 521590582 674203433 882766815 960792589 706564578 976401266 973465390 991780602 192906957 868938116 462112451 851414171 586532692 814465668 782587639 848248261 380323837 980621412 559227328 770249069 376010278 928743924 28849173 806350376 238063344 412700041 861082473 868402047 742993390 785200085 440799162 631467209 425171797 505663178 324120377 504783992 804293155 976255902 844431399 853657062 233492926 546058957 62526334 996317359 771969218 813928519 683239722 854254284 830793993 942872651 242425105 520788068 526912405 650647082 28000154 791227850 451362014 718637954 579316011 835933878 279732423 802626417 465076498 508138977 28853038 491698841 631083795 661095464 157307691 518746098 150392486 527789227 49049495 778451336 723479344 911952566 541421199 883578197 723705739 896120869 58142988 529891482 935979249 942299620 879924535 992087596 635505499 952763814 363990698 900678568 345530085 526944772 869491184 920153264 823914343 906364837 639886344 842841331 454116745 545222802 918794827 966547477 616411370 729882170 304212970 985338588 99971693 476388332 127014034 981863524 136946885 835125725 856886536 874727016 108858913 455137749 475953243 748478300 110864604 246960721 193335801 905619429 530285764 895983083 796612708 843903152 955431394 988080325 910541278 986723607 965740617 996621182 408131132 982870377 353365854 440011103 305696001 646302205 612672115 664497501 81636637 525671889 327233126 627379934 858196256 861483223 583544581 697312774 71818218 538052634 472036971 613969111 732020165 734840272 35339449 987675693 898010123 962953904 216619104 753049397 124333787 404657276 549250506 890365564 158072184 171799329 369563646 438857595 923205316 982442657 342714359 464385464 448488541 624400374 407636075 734449998 822782202 955156905 957053267 985353497 3984160 602425068 417497879 482456188 996824675 997037641 376474605 863332002 723422947 988142860 494713713 879511217 270429670 513149671 656364017 755102474 157918494 416695512 902498032 921880739 780657508 952101115 497425682 708950719 21741303 64213309 406652885 740749623 785526418 970193628 253965821 264864313 330134367 518255814 183003041 442396856 247833343 747931272 970279081 980561600 299275324 535090898 756593130 779439882 602567601 855869398 206349415 943307497 10041444 33178554 610085757 866721281 132981288 720338385 173603968 336443411 327066006 603965507 242407257 262975206 187111871 838454606 498505210 718752671 753100504 941236561 168612724 928623265 649284744 993247404 629539625 886327204 121385683 348004312 286841070 385846581 177305725 663902064 513615215 765077438 90690353 957409020 316248739 596068100 59635681 384369778 354515120 396994361 39640985 440746342 857254204 985462889 293361266 491409793 154260477 706344570 779126965 804148979 591664414 622423648 713109042 998454321 158441700 594884219 126634732 825697639 357035916 829305723 391712389 846663710 403356703 589673785 526538860 761956625 178878776 412144581 214817956 758862753 872759088 995220899 264000384 531840210 972094921 973955698 520917882 758640296 888558005 929865783 638475709 985370308 775895907 779754651 12544687 913460735 304568715 907491232 695582353 910867831 202032588 288811934 442176409 743351055 417224553 786079132 589425046 666655282 832571015 881471523 579294473 750074790 173653903 958823053 71130210 141413038 979451758 994233803 840293474 920851571 942913072 970604701 192537200 570800230 787403422 899106098 155609159 957641183 762118247 925910437 313631274 844972589 711920220 713604713 65171735 151332227 206546544 361628188 354604657 476132179 464984917 618275822 478907582 644406692 540374426 892020982 477656133 998618636 688619502 929943777 719540016 740181901 407741659 799116619 767286048 900141475 489736885 647340249 217307241 667419531 534055582 743230565 575426074 943585574 726756502 994013508 611388442 681647256 845852476 948572301 895139300 942682840 253747975 921480340 556260797 598675158 895064822 956616102 486964976 640655859 58843940 840102910 63037911 891576580 362802860 618660518 257288391 310463561 367994088 639882239 870736967 961228058 111890849 823381581 667896421 797099265 45513422 49678211 926626449 979425665 759854125 846168391 379471050 970690434 627505987 755603946 998850322 999016744 693403026 730965586 142505136 918920537 774575622 910902705 33059972 948371500 751206785 857839033 567723476 818591736 660509885 853744953 845738583 922726099 34326188 669537205 169276528 423030974 637883351 827759768 260364384 723042464 406735410 655566844 686172646 881865695 63474431 857834922 832244952 851569130 13293060 942705665 916746199 959919721 491254848 678094949 11259267 906522414 71952816 650116648 780688598 894338093 278293485 459988161 106486586 715752945 267976200 358884274 940489133 983054887 535265582 848696906 123760696 303308339 783666703 856356462 582493441 917859244 345960997 956049316 663647442 851928050 525200325 914132301 440566040 961938131 927969506 970460417 414523342 679965800 955018016 980390807 625580648 687329797 931534910 993605945 349407741 463409283 992614730 997482014 602596663 651834551 354305438 507204899 307517933 511121331 882193487 998043460 42214767 675598106 858174613 871823168 180534572 872386254 360819512 838564765 147881124 838661777 674267195 907436281 310264883 755546273 501156663 792887210 90404098 288521656 334238170 846685292 490981950 784186257 143123258 936008994 295482660 611656300 790404100 910202267 825018851 907220543 429978278 598948477 747441325 897062746 991441235 999716351 667650030 819659439 924385648 927060670 45539922 906683553 172640412 479068546 35495155 768443338 192443468 699049871 556602668 929123887 119350651 790598272 229982642 797411883 304790575 362961473 854538727 909133184 135056098 612931686 765642336 804709307 263722429 668704407 925486639 942600934 55854321 349056591 910786144 937943060 300190607 664128162 508990985 879519793 901138686 970426079 986563176 993168444 786548769 902969837 196247124 529818336 667844009 930475459 815868823 969968922 996867606 999968365 480148832 578098594 56162280 698803875 536561228 746752081 636602120 998620198 618470613 862546020 977841044 995873773 755387525 870790439 321407909 409494435 857578596 910183996 904940527 978616821 178571638 271204259 234162651 614471985 973577334 983348484 52827869 364631963 794549863 989617475 809605374 978466890 639111138 890543633 890750157 899109561 421375851 717289030 904709989 976047693 747140578 942690213 569986336 846824179 811274848 837408100 253798820 932807417 584861169 764170356 572900252 639138215 21093810 739690619 296481252 680782919 690726991 964770658 94884603 962794112 920661002 980632208 898290394 930236253 556567504 718370223 952635276 973972934 159627593 943599327 623282145 646933868 681995559 983582765 487770452 516976522 858702761 903977660 963986883 982220709 283323789 579417134 388738835 624357150 808924377 839997695 967762538 993193656 772552519 911774896 207408804 756440840 821884963 963282199 75460040 451945373 365339439 770574337 42879379 718910916 211966547 216671627 511847911 839769207 380080395 971120320 72440250 291685319 286991175 441925281 486798895 967460015 173702425 532655635 32950132 478199451 373388368 939553503 395287625 404169786 547501622 974766933 507198749 947393846 254852760 370217908 546932692 770917701 236635864 267493987 16000547 152958776 129460470 763038135 507608411 718650670 990136444 990174968 506991153 756892244 631530385 653089443 822556946 874160099 244804449 603677508 648044716 991534269 793483285 958575584 481490930 919486876 282971159 437790511 711061318 920880478 190995311 352920354 339736440 515435212 840268074 973931082 812383920 882808887 876910869 877731221 660505404 664059562 764704380 783198665 430186087 551534836 842893252 991205248 906152378 945744706 674039649 982325424 506288284 640790925 326453140 736222671 326419035 533106668 527176526 898078481 549034515 555041769 583970435 846967686 862241560 928536832 168211504 676909699 327010327 633394399 232342653 563132109 947529871 952312873 969328078 995224312 524763989 909491350 602215559 753011804 492676577 903382569 539260052 909715006 894148774 955105255 243297457 476142827 46392210 285989218 175352952 512968866 370998830 584907889 852246403 914073693 927201323 996318073 776352297 985811980 97726931 665783339 230114876 576036330 477088357 788006790 637955507 925525751 737731813 901415453 381315374 587604576 29032166 685031932 410926925 752685069 786855324 830576216 978164905 988749186 576808766 913177430 592702086 832451105 707969122 754741005 284301129 768472772 590024152 938832302 153447869 619253940 780616445 984919579 520653440 864553280 969108815 974293327 541562667 584953621 749657884 916612203 132816031 409183037 671915225 732174381 94873967 635782043 75562070 933673607 330138440 443724878 148724919 978210857 79052102 443061450 700038738 879936051 20498995 441732393 144658762 885746367 521806131 722698615 433104485 907055391 12493556 912981709 437513392 706425177 927905272 952415071 570789895 906614986 318135282 435824731 657320999 795593060 519780776 768944546 653274758 962581535 595711997 888054892 90439230 360779957 893492004 986470023 566280253 619509502 697110479 930102374 577916417 740704718 764722955 865819257 874953177 942678705 714832726 944773093 889634495 907006656 902927159 919877157 976557323 992397718 987608235 994644040 229885844 481557676 104117333 824436568 324658734 999877302 77884149 226346038 137251360 159100668 244869410 551421115 775749152 902890188 551298249 782238865 65811778 845114389 815494344 983507990 404882626 979654795 753985474 787392806 112978036 456971519 632158276 918769844 633545616 978136678 316026298 908224946 279524627 974850390 989483420 995709610 888551831 907653435 633773990 710007465 499015352 570524510 703864228 733689856 734524368 798468731 679886084 814573282 994736539 997145454 556198465 863137177 486813742 679243347 470986994 644765595 268530388 667130988 364256716 627403197 900561871 965415399 476570941 859699861 18843467 687140938 329874376 365863502 67036539 573755151 894034091 935482155 950432809 958521482 351247893 822896536 395625010 477861834 570597542 847449536 129259639 907505602 654278150 908228218 81414419 207968164 43414146 764308985 486641061 584574231 419050448 654939159 546081234 860587641 22595951 304023308 122097910 189644366 388922970 742528537 47049989 448737854 363184011 930195766 238973783 421248512 792504347 984699100 302801806 499267230 302009911 524514490 561094359 970951121 8286884 965885566 701472158 925705965 254276351 421494379 157713959 818893303 772005898 815936932 729241328 938602291 723548981 760096055 992432234 997466955 434890476 577665721 396436092 930364686 697427119 818941579 795624601 960072390 733872341 891044962 915134384 959807286 907108149 989484842 869622173 922975266 155274910 168690115 783387952 821421708 824150804 899607861 607960607 819744141 827184971 859406888 80673889 256637364 905705768 925538883 320601607 908636048 325569153 880858047 407953622 805356915 10434814 450920446 941426065 944449097 43104180 416708018 923353663 982546065 826730063 965496508 111631321 873376366 71612389 513228613 316664840 732288738 980782043 983052383 30206430 728432019 801183578 862732139 425087275 894483820 731144365 878911348 841221263 907912567 270307810 741699245 595721435 640413329 773707247 940517034 427862962 571070407 97031095 624176019 897807188 954719366 794386330 973273265 951905853 986130462 472422735 745030685 673576723 721525735 464081761 744066076 953389474 986109083 322854256 873607915 617636068 824885595 621987137 747156670 378125748 588849473 912680996 926051816 796212844 825266604 558635762 666629260 788943923 871139008 890517199 975753210 914865802 926667938 950354550 956600653 517821066 572583798 586075342 685993960 171371567 892468044 8986345 258795538 605380468 750410896 360404175 940622920 779016934 854788360 711583141 789381453 180698867 685878164 110079667 237092450 261398429 601753331 498627248 708743520 346815607 935250974 12236582 76113238 460166676 530028306 994258100 995844258 317386770 639039578 267830996 736619359 322189791 751117983 555282113 849787863 603680122 685428287 291876171 766721450 233005451 530701171 82799763 924666653 665857961 673368838 71711122 782371547 416253956 426408807 837035836 914550258 454008504 725054148 698439250 739470798 759009860 788979434 137021720 842638830 140876183 890064700 396555698 421105782 487953375 550239803 885999411 974996764 488250271 540856792 68891511 328442259 279087033 983206180 402942339 888988563 518432021 784468666 223265341 585567763 502535594 888506097 808720621 923507108 24087172 767767247 191137497 292702178 262922775 281683841 915690781 918460437 113212678 676702271 771463337 859652380 322885371 776579167 710080716 923970685 826907993 953142313 487313222 851370504 991052670 994382873 513487574 688336203 559233256 634210611 597304781 913513209 241246747 836861902 814882920 993327231 218272999 490383251 362485600 517120280 936778886 952530500 311292638 640822708 351074859 902309466 443504206 765464410 545156533 777084628 500864637 786974081 424558002 761988760 439165394 911570402 120511360 404558396 140518292 539928497 431154841 628966564 456273036 727858491 621913627 971403442 79129249 304480921 349876568 733901134 313604808 763694474 419338289 641533189 109472413 885184849 154652453 986526739 965111890 970886198 734145266 822177546 735441004 796662550 673221625 769928925 514706793 828038979 909739983 994868171 197503428 532920230 329599956 652395565 299576760 940591160 41609013 550833157 693696519 767492399 634427850 835455158 377899999 873191301 445487587 903017813 555061224 879400968 728606836 764111902 574890123 666086713 555432234 630655394 905012132 906235644 141983422 373400710 352463226 808179862 749539469 779370377 230140575 805550817 459579024 461831990 359312326 511038649 723397398 872564645 490151432 789702675 635672473 743066813 789545982 941526226 140809048 619883964 599484919 657268246 684557259 920874433 645611005 819196182 966158201 972381575 36810463 873827462 383669017 629906924 629514902 976705693 513063465 871270611 205484901 579160518 436889459 839611380 590982858 862039890 300665594 695873685 686532054 781258420 949212380 993089461 729746885 874939926 183007455 665429963 356023193 928963740 715910829 947201113 125610316 187370750 737040109 924547840 999835064 999975308 869887755 969081024 316654795 480912329 735631452 761966592 187483249 338516217 26036477 910946858 264636114 464243633 742789504 830057092 897394157 961533314 623286693 930736799 479511415 677929594 139877868 596832706 716170880 726589967 407857686 960058232 551240034 942643444 345835864 374020845 710972782 940457745 251799611 986874868 814365113 816605742 131693769 632381254 475631971 987095859 735536402 921026937 868588434 905754909 495715348 832485668 255062730 874578660 705863588 837197849 420664815 943194747 110355998 901491199 709177913 888958402 904220089 955067661 687076674 957754701 54727533 391283074 843923679 902020958 432735502 477358993 850713138 911590523 721257985 868864970 162532725 338406931 511441757 709285715 222384600 656248507 530839578 786281574 232098714 752547955 725345247 739822629 327549911 869772799 492247308 758233990 478412684 836712964 277704278 628718340 754354671 910357492 207369149 813785961 488904740 718648046 763699981 865677486 827868392 913316698 855740220 975247958 979653580 981884260 408559824 714398716 702944619 786794737 191727998 225264328 3532910 225787152 529851788 860412257 192232115 559894059 611128236 784159309 978931401 988867018 302647328 750527111 716508853 882463401 302768059 811430422 865254273 930648999 610003093 902025528 982581722 987956616 651414818 914149315 302684509 951756295 918793207 973723228 494286113 753064793 451953997 948203280 889861000 974303859 877628142 956375107 12471028 558858055 676608024 751488911 489847062 648947604 306438522 551046680 197506488 421040701 439507614 816818816 700376211 802283824 422633591 458531440 706147664 843856704 177801483 706420112 654642257 701293091 875774751 898556336 979735645 982384041 274755286 542339218 581315248 869840150 485855275 815124107 144776004 212658380 895061659 946925642 45884035 916408221 347333279 602098238 798881122 963572312 676690148 713267521 109621105 443231774 212666603 696263028 494574562 998253012 36422185 839152369 677977303 714886708 922337986 923373695 242470951 689335825 845094071 862742852 880177288 900142772 126260344 898584329 926120518 951058529 762566051 766989828 320302437 538568086 744839796 984405730 184851014 617192004 769136503 846291450 902064959 939296944 595073200 847239133 389354886 491026071 997340486 998477626 214562718 293534362 924347637 971024654 750271854 813020450 495654053 985063172 988702332 991673501 233004153 981402105 930480610 941936023 274931630 727583432 622687227 791416062 634556876 961271539 919006971 937909823 510691963 805204666 590468897 980599835 539672637 899777395 30679812 902876455 956801330 980594633 54950571 451076198 911706748 997096987 246035870 327496119 804616411 967939783 886574132 925811164 335210797 992429871 606860393 663277591 1758927 844323140 698923731 855759642 118751960 459784700 640652080 959747254 255786830 426532900 81204775 553350101 979986339 981061016 509463113 727021615 700173767 874460942 227292593 450852463 351820466 656364343 962201659 962470662 961020698 970040954 662081516 742161110 258865849 609043444 999964385 999990245 534382283 711696870 886182133 991688387 480475008 797480819 729391786 848323465 273597848 710860644 949255092 960321634 368960020 387250845 308308780 557141935 277884354 766718842 373126098 904652485 711783552 831077457 115884858 568131089 218833459 599438685 764939952 826976770 99997935 178063880 753127096 823910149 417016620 699491767 441275879 921582116 678556906 951165374 481898048 535794068 805743931 843092829 343285462 601302800 505436735 876076708 758623930 988529657 116490837 486812616 406147298 593702574 453671980 687437349 506878092 612040295 33611282 878677906 472337084 618681753 703140128 843507379 476672848 919771526 371353950 880507062 555596218 649694395 185658513 528594598 77993932 253042021 841049415 982986809 860848777 985514665 926442597 978009001 555962985 683143633 135647604 298724561 344789010 812358799 632891527 971817739 881091760 895098418 922808781 968452187 334703903 716690740 69746477 206230176 758181461 763957285 291326430 567467067 397581682 406671152 647786970 809369478 952160048 970281922 449724310 667237636 640383338 697921373 792240709 858916311 725914637 801949259 667545157 851219103 894892997 910890896 121999315 237540344 261239233 999991620 17766824 915671629 197064325 755928438 208764728 476331301 621887480 655311583 540216205 987273802 199664679 557291836 289648760 312833578 435370 222450432 928580060 994448800 708959427 838104186 604015861 847334571 692680919 710888315 847027678 920855619 588601974 850914239 121731341 402339872 552642511 911702783 430125426 857276510 69890741 305152752 740544773 917136973 152120102 298945799 44789670 966002256 327714091 915616145 413690259 520597249 441732934 646589504 526935375 770960118 652234348 928286360 504791820 906066476 772215586 827391610 483269965 647942984 740525837 961922995 997774091 998076652 759368439 813726960 626716646 819111660 456696889 618693453 87966817 262316872 275013435 819087071 649492930 672785496 298433445 309686395 867532671 987097127 634150584 999848840 503236705 937441158 510559583 639592107 871538491 977903580 752289863 856277879 603732402 989683480 147955996 465859397 426263264 862231036 791539819 818737032 86068961 706987292 259208735 266081465 982071218 997681475 873374390 945039011 604204567 977671837 270721784 605651338 100389355 366711273 579836383 770874876 695287999 726418900 190778380 569736992 55090608 517590701 806873407 903193474 339858235 664542972 496967453 577973619 527713523 979143642 383581033 681111045 47857227 246599942 750767938 966155481 706013003 717895862 309952694 336602574 573148737 791776118 740692943 964099412 848330387 864913477 82653017 869685505 529209041 658927490 367766404 799605443 408685802 963884717 139778682 450407868 856581457 868392159 869392119 991074351 967940293 992183379 663557018 878922061 313655118 353257876 647617474 852022314 989961069 990996974 714282987 869783522 835192686 946579780 675612614 999678746 638767356 755124332 480306302 487732129 140164185 936333260 92266332 182707447 898258645 991791044 872440725 915110380 470995974 773544661 11114181 367045156 600450852 773502489 763910002 980172418 484328509 601676546 498159208 656257115 798184210 863066650 726727282 886457080 388475072 691033305 407075517 952795216 917216132 987287213 374276051 479275597 111376100 187215924 197286213 346502152 794750545 957257939 172087275 971461747 705400163 983587516 150233962 393398787 300469422 774060528 523114151 946341941 97455723 948407239 741035764 804828871 48225781 50764363 39203447 213223305 406787706 706090188 735566139 950691301 326513685 877779851 11505200 736011128 327592635 842548717 479257165 674529922 620859969 992526485 76495251 89836824 430223879 922943785 476569655 585501656 724547967 789756024 860797802 987429142 308966052 656821413 467285252 561012840 967711572 983091208 989156780 998413065 686930140 794650123 191142054 609672363 717857383 943354779 796015601 989353317 186231805 533091846 88112492 128066051 951871090 986971862 453931286 881532225 937272650 977859268 706570306 902999421 79097189 791259788 287877052 942257550 680128414 936084937 967596337 991668951 152325259 700298602 67988990 949317510 93446291 830712164 342744847 786272153 98430181 943187869 642993775 749764794 674017900 754947681 735315245 850940086 478571231 662034592 668728224 962905586 343217988 388891528 264398949 964587643 529405349 606770036 299499889 987438334 198669471 922903599 397705984 448763982 600071341 679416838 868454228 953249665 932102515 944210899 547158981 920722683 284126750 384593063 266631562 592275558 693202929 935682528 186263715 771254962 236904486 870020004 304341277 400120264 567117430 878238756 161560380 692379710 649478538 985152702 383734095 783645580 276507498 625320980 149555449 215456435 779491123 915264328 948755434 952279958 393601780 613496581 247720780 645960200 927630133 971906141 314955951 634911357 167813861 279241209 332706317 996306899 412586085 931790483 204161645 831251733 897414877 937794097 294358560 379236189 553303090 725611775 966973926 977374663 499779050 778860780 713329473 935191279 448950174 705711953 306742289 953093182 54931296 475763258 623771523 929522570 503514697 611939520 603394149 694612455 965848046 977705730 625678799 832729892 171159137 583927269 443518103 902007097 208755961 920000169 919560124 990094619 639571817 936507986 204034122 443474027 348791770 944174800 246781935 490970051 61825549 209782120 323460768 997826855 372859787 960985177 327961928 373476761 870318413 916278296 205364141 689589971 803207151 891248043 845975290 983492199 454253416 796511152 711348012 895809524 221052596 438111774 502872372 806298032 182657396 428071020 277570190 277970999 558586127 881198815 388886671 489568775 567820815 949823661 14131172 359449169 699266684 759764505 317823949 937918028 718079952 727960024 806311743 847192321 294556931 312297759 869353805 980032260 757593394 791526487 427502240 492169779 715926619 864535543 664221690 691721106 460934431 812793113 301762389 364229138 709599340 835767466 836549239 931921945 129417799 870838216 510534304 601931933 675559773 978896184 787963737 849654461 317814778 666508639 948460770 988942776 740307326 863248467 798042096 814941280 500756724 744766092 357147550 584572780 433057669 986953227 734577410 893484077 921687483 936209481 214088404 273102654 652450540 943492608 147064414 845271353 906585406 996907136 912047293 934249285 421790529 798531688 236425904 814712549 819325011 985834568 405760000 578231440 249770395 433476503 167610783 740791737 453486645 470639420 917535297 929808370 576147114 835111000 89323902 731769517 800092378 919806196 906357586 952733415 749968014 815683059 765260233 865797566 801036870 914457938 316713388 713504541 517103754 685702313 927969241 956457478 323473825 599114393 126518885 892616317 340532219 980693543 308366284 981208421 75086020 570726572 243276602 327305884 982787378 988098670 207449640 842920587 392870161 567153980 867672483 934356497 882570028 967678239 596688960 822953015 991300959 992555424 141764133 347678964 138813208 583309852 173883782 383639351 685886239 767190517 565905734 729166220 445988435 903244551 353659335 553198262 691477707 699813637 625569708 802249968 327993976 769789724 582483138 816942717 927116853 975259413 611759821 899150245 422304468 884297596 565803615 642726453 118750201 886346795 642737893 686417898 395843301 987316929 498394137 948014540 940478408 970475996 230512754 276877296 168658069 198213636 226720115 403426812 172798050 846189758 214516693 284008714 12723097 784055523 703391540 707227863 539606824 602671157 456556492 561702012 79061810 964736066 33637297 951343076 523817414 707329241 434062806 760009233 665834345 683237184 721167104 806309926 264111959 286585193 815758185 877311679 254375169 507270646 542659385 917518711 319670529 345970121 195038284 699248193 739041296 845788919 485630739 555870865 469886803 635607680 567610487 797293026 505227138 840007440 827190664 859554719 629979697 657528418 794968566 990408648 124020939 769092854 811442008 908401451 869596764 884296324 778256932 992534904 822255535 856923467 400119638 402841014 331719051 954734786 454373060 921393793 585738597 877775051 903692805 981730439 257971888 746576164 153282169 324146302 653634986 863523739 617505627 825339391 933376530 982026192 855479282 926872863 151535297 495752242 621382827 717067561 924893012 989214477 10100096 276630345 251358919 951289304 760605128 994011335 154055142 417369950 792917518 938004949 919132148 947920223 771024723 815134753 316273848 756517094 775589946 807068627 309218532 726274079 788003876 838108363 904141948 952684984 927362884 929456490 351564966 533712771 236280268 961757733 511769561 993732162 217467561 430454181 781607746 929883030 296404536 848441765 247138033 637844517 715855459 736912576 371272745 725137130 430466613 976107773 659917660 971095249 472492797 576612258 300449481 307787235 785676732 962456373 31287785 551551340 246395341 834616938 421572995 666385979 521953739 658839453 298400921 352864495 886546890 949641365 851935058 871698208 142022161 431354704 453595750 630176425 658401960 894878608 115699816 550450074 349099370 383758443 682278961 741333564 222111933 688922070 52836658 871496593 753710262 810200818 870027002 897322371 260612873 742198595 8465964 394045264 904559359 908449170 782305043 817702083 639614437 745919199 865558867 898750912 24052493 275384496 126039933 837505982 249611929 729401047 849151092 852464397 474853713 777414808 243518236 717559763 711060786 723328342 223691910 389879325 242856374 764495952 263920163 870368366 210442661 602468169 944942846 983796042 312879683 969102869 834347316 996467299 833909782 895987036 809982690 958524202 747438952 812876067 839439451 880492630 846354534 968203125 131255137 682997586 882283909 926274757 276978244 728337455 997003951 999615756 47539529 609175087 267796030 380687071 188995060 949277106 893836842 914474985 702850096 862906894 373765276 617891898 127354071 833575412 706295682 761794335 115792622 521914910 659973242 760740630 735968331 867631788 27776956 962591100 441205595 990968146 11914111 920477448 167839538 415759274 720150586 827087363 465416427 862311491 547672044 771122489 421143520 907088384 173470303 629795777 743769810 892083405 48911808 80041621 198982869 538716955 485550864 768017211 433473125 478727246 806257596 901177173 930906182 941452689 527603863 650024678 156555953 688337430 523573873 792022303 420635512 463586743 721202020 879566610 110358018 753538130 604021977 815329920 125161058 564217988 336010912 949201502 981470177 995277659 154995224 493489032 777567677 918755436 910072556 971081915 476327846 839059279 59156094 109225693 960737288 999070830 350050712 679856398 736539843 874389196 275507465 771964687 84638869 992704391 374125146 740774270 869878728 947220888 817334396 939567601 839003941 857967205 801380365 820587315 305384543 317720029 546178744 850832293 151168092 380264930 904271621 983483380 660006832 799214743 569021900 908110028 392139098 700537127 840657206 907774032 151594141 330880629 123893806 884870847 911041178 927540580 326909009 651008361 899288271 959121241 829096141 946956941 832627031 951581446 658893344 672619660 824800401 995870576 611788884 857960272 93132173 157933240 357034444 987907202 349220541 871651846 420428787 766266450 72209585 871494238 606444294 810898910 124743221 138414147 494500494 873798247 626184848 626838901 162076180 225999387 791896918 929580897 644217126 969952551 998108973 999699507 682843622 921780679 993364212 996919971 263720910 428749307 753372226 879935606 520514905 626003365 70424551 387740783 661096977 899580496 935889934 958242237 442670693 940633314 479865850 717744232 491798073 791126562 746375242 859154314 729359221 892271782 416834164 694816900 739285581 884830023 581937351 970193389 525903396 859760399 199117590 850217943 748413139 841947666 532331767 812412875 623698794 702295414 496878467 998250779 320884806 818206743 342721272 591152481 808538489 918852919 148866403 253869927 253771192 668875574 351120354 592108037 460994534 736425778 531547684 640860813 578008569 629280625 970958824 995274910 609524968 750878071 273250593 823971920 73154119 173831430 141517417 845824492 92976729 987231560 77766063 962618223 668279244 743653410 235911616 495160916 983759937 988871787 881984744 940497590 4154420 47883097 208769731 486950830 917214678 933010155 987016853 998561605 278255412 773814782 397799198 936035572 687126168 914976279 154702817 793516319 446556465 697129301 347093660 709969651 213117461 446852344 286228653 544992591 124271812 238139930 599801925 669093236 319599689 332820103 801671524 803060577 953379908 985405458 189826779 380714266 922342243 986468097 776136433 958907070 660480420 967217171 428812937 635382967 419791439 665976153 3269569 549147272 455353804 733908748 361581917 708222390 414888039 768167082 271136650 353954553 203428512 864496555 531186457 559172130 736067941 870302757 743618083 860304436 641333051 686127048 54503425 534861286 453583515 742475278 582002908 767843672 792463522 802959708 509540817 786013611 977719141 999072457 492620467 801958627 921658857 993614477 99750462 203077445 311170727 341545644 728886032 809260243 671943678 928296408 898538770 985928163 402190474 478427445 551368600 846496922 915420035 938681541 323542408 585990728 267752297 794124838 633837455 783068283 706654378 904496168 417332530 591979521 361920858 596330564 700310231 982188853 641178515 857615545 624534844 861262456 829151815 947511506 464926163 884203925 502787664 774059387 569503072 911870577 197610245 396202776 682522436 935009554 701567044 943552768 359604241 514043653 741189810 741272278 826619282 988453892 472935205 727337616 139310205 529573554 130200427 408463594 630556841 639563668 207643288 880377186 669624259 725261971 962325341 998119164 37560768 68494746 827606781 833078247 478799160 625318257 155427786 975340463 181104967 438422666 916857255 946855448 338691896 575274067 927098966 991427367 32582766 980679044 452954968 941193470 976585494 994904230 851288158 886516360 11056402 691356102 201681097 904330476 538466289 649951423 903412802 908878553 440532774 932687430 765607121 835770626 31180204 920867723 146739868 347940224 924482883 928367195 789554491 944487553 241242049 620098190 188534636 712202131 464592967 889263570 316564346 443837517 827353161 907712044 862779311 874155991 449707824 802161964 19158112 797032923 283975261 474473007 119556337 586261598 632089909 649816151 362057563 415799937 658020259 768245106 394840207 972017545 640580271 724582328 97026648 268502237 167055798 401260731 57356398 990451688 24593285 320562697 955930942 991586079 240098770 372714799 226003257 338076176 177096031 580997626 664343883 751064947 106988380 136673424 22507088 672435168 557993621 736495971 677415706 711602303 938729995 959504120 995072352 997520202 822444123 834156334 592211946 795471769 545692193 834388517 66555207 890599078 328853593 494796602 340889318 694066872 954477779 955706978 979231967 986419323 835565410 895992327 290493565 666295470 50737571 205096241 449153777 608174541 939598630 977028795 200659134 874834938 534319990 682462433 110730770 737530881 426905821 770389240 276914621 396820552 212361164 935015006 872108773 886604522 517395898 922366451 177775893 401141719 958080035 958422181 245976296 698379363 121449714 325548175 677923589 705122363 601970764 889230803 346004751 787357333 497943446 723540300 86573409 109930425 116795126 386852539 339164775 481184972 427110083 478299167 763684413 777655046 783296783 869608849 720305114 733082017 461818980 523275403 680986669 994182841 217355593 424092739 191007846 342909948 125653330 818235986 784749892 923890649 321682900 550632922 40467099 981968826 415557878 578542373 622604382 797000726 397564896 653399345 748312514 865586404 306969213 347580406 516094497 940710233 448435693 927720882 977137393 997600918 351674807 582088208 352319728 671831562 216550537 417256419 464126201 706499215 786863457 861832595 67815770 275285334 838372010 869403825 96252615 326335695 697999891 853092974 385044909 397093065 5433847 105269904 408741196 938046983 436151142 951899838 40095729 100122296 598241213 782151285 204160182 943277076 250206793 819691429 912761384 915732174 338346579 440442245 901312297 957591459 353469806 783536654 877531520 898075194 30936626 422644665 916335190 947803712 797343404 835192011 605805532 941690641 267727078 970187926 222395309 466506333 64314173 490009266 33354018 98197988 237671859 932356575 947346706 997378509 309541951 502802255 118994781 441291069 655003744 704717452 921771600 971395094 196194830 790140606 566594831 894193952 368025705 732421130 804093779 976609587 667460311 673867612 822820896 909210596 502879828 992175098 483741148 572553499 721160749 973105140 697028765 845095826 417770728 848462639 300330266 764887409 59535977 581981623 816856510 893032631 664780819 835011560 46193791 159083143 694275457 933437338 993254483 994283897 77465594 346285579 727383082 734435953 201876220 719322368 509660446 713701388 395132130 655809673 278135392 871516427 584941345 591379014 289917160 656983845 109711876 589446305 908575927 989552476 932543864 950114612 894953067 923942959 781825842 941798107 732890037 924490726 980711906 997426060 935898660 950793268 655794804 722843550 724018053 810919884 547854913 583133947 527764056 827248695 333793097 883051515 63891298 549692432 47881222 922102496 386713427 840300218 964969168 988201818 382260462 656847039 881802108 959925796 58154674 91470470 435149474 769703558 923504987 965818412 846534387 864636843 589234013 661645546 47858987 110714024 134571944 246556734 916519566 974475764 846678408 978202408 99504591 205654614 156950913 726639496 471465582 505567207 576959933 909009462 521112448 660625231 504665815 663414504 193758834 523939044 450020640 731305755 468005805 583645152 401518334 924457259 330316885 798467323 603345635 716236378 454145794 632674148 47273961 320552416 929029235 945279067 764857642 794185962 614267110 637794327 773780086 948335798 215802573 825291881 133167035 189133302 691335037 997828053 122529373 294670906 53674127 116485962 67217866 642554315 251194817 397287848 445826332 791491325 772079910 865688232 997717806 997761244 573694600 982209508 2194816 921733857 486088718 701336515 850682931 895174973 96514072 272832631 600205965 940625232 708541651 754668023 993214830 998423013 923731905 966013266 271392132 741831757 689619913 829970581 676582633 915930689 47226004 669224390 500740407 654777013 518901831 895258541 213286917 773325094 67134593 482991915 651955080 775300458 167271009 848178780 83651945 749624663 445338306 896058448 966221444 979750832 508403499 664102719 537501738 784157348 878437598 970926318 787092186 849826488 842400684 926334493 973417774 990427544 735858644 779842240 883142908 893141262 79009720 81486241 416878200 807901640 63743450 818176887 610973104 886647492 708759676 868443449 621319936 930599572 246743877 429159204 301815452 518196509 104110289 634401290 987783332 999985528 209530695 254782194 636407985 783781009 453653099 932254820 598638732 803732844 684634918 757360365 233327411 784861493 248840701 335753388 871999311 984691470 163688138 881382129 631892760 706502709 204224130 287771448 80958584 927759539 89664509 693543321 206434326 606792233 416260294 491117009 179962437 798782955 581591192 914940086 164761483 243971547 904685967 984745813 309258723 836604265 476766586 580810452 159706937 701593590 309141616 664997864 242631119 647468940 915189796 964919899 442864875 480719631 305143114 889297776 899301549 996061350 567461112 650332614 710514278 719665149 182167664 990312590 109836238 760736878 492459069 640606653 728817276 820578998 180097328 578195131 62940439 93330468 954255283 965143715 51645522 921245083 685846023 929569256 334860959 945250586 603230512 844156987 937922643 958716526 638888550 712653403 89741331 607089359 921627752 979996755 457588170 542087126 185271763 416225462 484957931 808969535 320802589 845041499 95166368 778855599 585628 210918604 897769371 941940429 570953028 742115288 500489956 745818329 381321106 729983110 662585050 687589639 758352869 874229116 634784346 736724524 89678671 284676021 350336530 470115030 866430550 885968160 868923422 921196313 916866197 993348127 494769154 967320711 866523651 961940921 385932584 927531151 338741884 804569162 354166884 779186539 189418752 797563103 744795697 926062641 742117396 752754365 34445760 950840979 62130037 125186925 482636284 846947613 360828024 674434011 989343702 994317258 185838766 534373119 67243581 591418620 193402478 729754395 35637278 141702338 197433316 766647377 588086094 731913033 155617868 887384566 578355623 703156270 756969999 902783523 202461281 393208745 291729694 951520186 578718625 585400095 829938262 923976843 139256032 909357671 246067942 472651809 114440513 119008407 150939354 345019311 594251650 961471990 85995953 162488194 816640566 914810935 73149085 907850936 201039526 823554503 276647102 480799710 159293054 292409465 620325867 963718833 766296893 880828165 862954587 934846546 671819213 750851109 32871721 544298034 710855479 994174102 838434092 971082660 306354238 932538748 342587603 484613012 857292988 922122560 673961159 948543247 11907874 114738675 458815846 479411047 592902869 898208641 330900367 940132001 822851508 884760576 372853496 917615794 853651164 973885613 436688943 615289725 992226659 995090334 844745717 954098485 77623650 789689401 152568506 769123251 94701903 989350230 420520309 885652810 865557920 885130676 38321761 376581180 115444678 914904388 781722916 915537630 955052505 965702847 141237019 913764411 321827541 968811209 882842767 931461578 514377789 558865896 298187538 711829475 819275482 889150550 334231467 533690628 550452178 903085751 803097016 954079752 189342852 314646076 525656261 792407109 374749761 379198089 401377799 406313025 999397692 999731534 843410349 974915120 227910690 289001288 949244275 949663761 818385843 836590106 327655478 337445318 624839103 841088978 915598476 930677525 352639517 719478781 23879547 457301887 242670078 413729959 523164320 994008472 228638547 840574832 8181527 565858028 935483333 977797787 219281513 284628254 883438879 969617624 888262486 892059193 25891922 292770797 66865208 126797265 477743429 493963420 22145084 526664077 818932632 953733840 29609883 819272331 301883117 390918728 134040849 923030727 533583581 802399354 757696335 858954333 524686145 953204080 538445327 587324547 675476591 873908635 350349078 693902709 63052773 307385622 52633719 966160677 659595959 688553996 303763332 747663177 296252480 308778702 307269332 931274205 925816641 960595652 773381018 918961658 138110226 383845228 726612970 958261814 328006194 714390748 491732212 920965652 620049394 921150033 771590553 969805381 523851454 701568728 409685128 429625461 661142952 971405226 908628852 939997589 701381537 913284645 998214824 999849215 302397403 924331344 35848000 694104985 647725221 936325249 778196477 910897236 422727455 611700831 943388885 943679282 905333847 970268255 591204313 749492051 689738090 710204866 71473728 813996366 305304819 892594262 337579288 756166107 622893225 816372739 774226282 961670749 416838807 874715347 476869302 952468514 14675871 710111353 860235014 996678784 433006487 589747245 508467033 893608352 729922708 844534888 766180306 904569353 539020415 764308009 525973672 621049939 279330485 952527095 513173666 671222268 652376180 673167983 70267467 254403633 282146305 472769224 442172800 767537566 669858919 931803591 236124941 931925330 144203423 173325206 927781556 956740066 164316494 551143522 323605549 326685107 647885994 884027487 262366881 400522863 289390211 593566215 212751234 226710125 345346641 611494831 140755988 273901186 905866782 973227245 895059567 958912916 268205482 815572124 287484016 378076767 269556705 799445487 370797278 808542414 215153534 902830280 347959853 854421001 513190932 548707666 228641528 665327933 479650619 511405087 485058879 692860248 305789696 684144799 531087099 644731577 204604797 353368705 983334425 986479505 609070310 887405495 359305583 615161137 84762977 175117695 133674423 722017193 614678570 746131703 506277977 738390888 309393587 406151311 830233510 982517617 993844773 995276261 505125358 581471756 766645753 859920669 243920199 349727886 749174046 985688655 912221638 925008054 97375227 141996590 370632814 783458345 950978836 951558467 426976455 847821921 607486366 770604818 395971862 497428408 767549316 790137833 841363 7893536 5249353 723676414 793904250 936318946 875035768 982583327 542480940 746925624 291044361 492137966 904955831 930374391 153648590 422990872 482517357 903990845 466238049 715829188 270451810 819315908 64630456 860562127 114414080 335726679 328288785 926852437 69127358 310551327 164236646 744717781 256238132 351004799 337774407 394910640 394841181 467275787 369102022 911104873 492493472 506575710 550801907 929062973 544221096 611832078 447834550 778712537 551025189 957061432 765510411 992330442 485569046 527101550 588989613 711809035 125243091 619129456 894406102 936729012 304952300 552662401 545879880 841967740 492764495 561375505 809106728 976956036 433329382 599789462 116783742 813536861 794565566 890515027 354828537 937038550 414445093 448740070 72155517 768583875 499517873 800483241 489906419 604289396 439810580 574332180 944771062 967309438 390661737 654591815 628526562 962433104 192941191 896002023 591059995 992229741 662086758 967220249 816784227 908866878 508954142 628270790 391827976 823520144 185032654 501800698 413289414 442378729 936506049 949558893 121408375 797161409 99682016 245805469 162050378 689157126 960026006 961883884 68550029 405213523 35514220 156821235 535793456 599927913 522209328 746262403 60791385 395547347 660870942 921199256 914361048 970757247 29828719 197368899 302090311 834714660 296979631 657782215 737710323 793025359 18498160 88700315 952699264 978308959 187081862 335483057 724810950 874968080 790450109 807215361 967187998 971798996 365326883 645932705 593158982 596885570 356947856 736331460 893439819 912199309 867002697 877347715 845293768 929906969 98123444 116104369 848851943 862003794 724836255 902840778 523759643 974882345 202592418 953698084 208124524 609905033 859547389 897738480 477001828 719400327 816472909 962265708 314739966 685714302 224484019 623480206 620347266 878692772 871958158 917133155 333150776 895623082 336857643 831145733 861078779 970498760 519220253 590964304 798325843 854782103 888522909 979937234 544259948 584369749 925791691 962729983 660019989 819461685 247618293 812199305 84953172 177048474 127762471 151139471 535193590 935104045 419976393 679000383 54095073 604040096 743660910 760009220 158068717 821116859 657093383 812720212 473953875 885486150 448777405 708387309 496978449 559522946 135568308 561038414 281725177 519808674 607399632 965684921 981796621 998527734 921479689 944235466 731314037 906767175 995158240 996389034 450402128 478045954 938737513 943067206 488962492 876069978 140400901 323971014 446797475 575513932 341762696 449013506 367720981 694773451 471213380 520485713 884930794 887240285 581887497 688949629 616445546 672617969 178343564 762997346 549525549 638388843 125556022 639255726 833021091 934073733 911556733 968094645 380238508 665964020 989513362 996169214 533677672 681560621 811614813 854620973 233620578 814430965 746812172 919166601 322135618 329195461 555335002 865417756 646326113 936989006 242683952 262850075 153270855 295065239 580252030 682615143 904323533 959099411 246588922 720148738 929560015 953117797 500148697 797966625 500659949 606216183 663193202 671900443 693720975 738537034 592638822 647307534 878016784 881476224 422027064 816603412 17744251 836570708 741299718 847454064 676239357 868833976 51896865 884411414 376475305 442536330 243467806 538130677 307751179 779784381 460459633 804395797 808908235 914436088 514205113 777978312 407330662 767754520 583556067 851667542 355979357 636671370 24875108 774679927 112712264 315572006 333801460 720374156 982232322 992999466 65864369 684374243 196251773 446403142 978465350 986977316 7757438 803124993 827243319 845207706 237633984 256758034 974646088 983616304 39222932 961307931 3214724 563531854 257574399 637532385 163289254 550550924 481100094 679606675 255369323 488890331 618410268 793516828 48668299 90960367 974823424 989184399 135189870 763111081 996754869 999768506 453885602 682793033 818975614 951368375 814049134 990142850 392117704 640767043 100020769 381334871 887525051 970051485 102823813 829077212 412888789 794004069 532645092 859641110 817913233 943083682 94132335 154977566 253427222 821362321 228442087 391555320 834765811 926926133 894970791 976846500 355542140 859017104 566817800 937722608 225427462 802382865 198816445 382636546 412966079 865875814 151559068 303661724 627053168 832568945 56144441 655009205 582481831 993155791 972371127 994428617 552507616 718871206 988546362 994659571 485969721 828841246 531018467 605777570 176669591 345057605 540925861 625791619 277015763 955423528 1244923 506797056 272553526 708597043 765284692 915418050 285588471 493720476 175394302 604032867 546299985 982509430 621942746 849834709 252575510 909827502 907190857 968317596 755033604 898592190 853910772 934456894 11064311 642258235 850061098 933927595 130601364 335183591 905609793 914950883 79118206 451356533 587110685 781434790 631806638 710882324 754263220 984719711 254766025 336228333 242833372 894623734 121797550 514319915 244879975 394514026 350361029 649952414 643906395 755599292 139497283 527864534 786797732 957631347 170091597 176753001 565019317 797666839 331634161 345328463 486411854 889943804 792880927 904620073 52571339 983275718 45817289 347103232 106774979 551977040 581309787 882235682 327170018 961833948 662471181 865501755 295514616 653019480 796583337 996826292 87050514 237957746 772118524 904380476 555491565 976934219 197746310 420801243 633402400 832472078 577957826 579119851 289270279 697941557 128520888 440280657 850129023 952146681 673764287 980567696 812814905 880329738 115414628 564497016 366798044 679969433 75375056 790978035 816360407 831303819 558022200 879376042 138347870 562305655 526969436 535922572 679168199 991394589 77899798 918341175 12424972 797527068 642498083 992620773 14518465 840827841 558348129 988451163 36027659 600071791 226150319 494750787 724916169 868066343 729781808 951394669 145214219 299771619 267542513 809341951 651945537 884535252 873473817 947744621 601000271 899716878 961252018 999107784 924462849 928695619 224215522 544596038 104986756 967990716 541077111 629102639 113038427 245703484 90011583 447075519 869527643 945194509 71307882 173773919 710296724 829466820 671233640 724662187 98725463 722688647 440338567 712307131 395629588 538359285 412992788 899121217 246750428 689216172 872288325 939012423 910331783 953783418 816308267 997116649 755052625 925195593 757548410 780145138 622472575 960789857 202457130 992196712 879524889 899111448 66150064 472367323 531015555 802928647 401061188 475622044 81262229 988788745 784591249 969293746 438939947 511077819 339703657 421934978 112426713 828155896 816453955 839350027 800308023 940004509 981686573 982039786 565187229 593271237 294420648 352445536 728033832 758931139 792383681 793544199 284412057 781324079 345047575 671741429 400602676 479008991 811922618 931854865 998381237 999343140 866736775 870502566 517810083 837141320 230476045 484485437 324620593 697685793 138313033 758271595 221339442 290584656 484720555 711471281 965133172 976983138 879044930 941328648 788804644 806804086 262234997 602820044 745186072 928060912 146578448 496618489 934797089 935367172 781509773 829810350 635217084 700374301 218618475 253747752 279043644 336496894 514138069 729288794 659361242 773592649 611683209 760229904 382380296 584448281 273267440 914089392 791761643 983282965 288049615 553318334 250540846 698212220 457004751 913781002 698413498 983112609 309928624 992510506 457128712 542440130 52949885 655855194 361100974 414369690 867053338 948519726 756721928 901547897 326882786 983278887 231725281 941835557 551482155 608847623 168071666 761051160 795321244 987005612 653114908 704738536 810373312 901357429 448451545 695021858 58952900 349525591 72971062 554417905 235419334 971871000 89138019 378626894 167455526 810013127 331590589 425706640 19367601 540591405 642613507 988028892 462178310 472128087 759272768 894797775 518767656 672884017 163217969 486791309 353843932 684019927 998040218 998171854 137694135 764632477 233194702 712603690 911470501 914034426 487867864 772811796 605221978 740740245 698767375 843836405 173337485 670551834 204910663 765324035 802979078 875050045 64992973 654390337 895161108 933465847 440479640 832803395 660215558 908517573 756084937 956134761 131686017 402465441 377304313 416440707 366641989 558960443 16432012 784394107 31868556 148847659 380186404 568851538 536632925 571861744 192027397 985284998 483466883 667304867 260070014 296298342 772254427 840228813 120562026 335597013 606153879 633216643 376422040 491460842 599291870 918801634 580800352 581258797 31779864 166359100 846558437 996970804 94024113 229192583 637673813 664464070 40902997 213560178 590767103 918153442 212678198 345749057 543371726 722665930 980734913 988091018 752178832 861878015 733019827 920602020 311283486 784164585 174284632 689176003 155444028 298471355 162560321 717171025 529469892 849089986 483572205 614842664 719892698 806738580 667308588 989007882 716573589 775031709 473286864 897187053 663619881 899009104 106897126 774414013 920047360 939831625 351131043 676413228 562335078 922594937 287100769 953548510 508514211 907712496 181424582 442754455 824233551 996351880 943183871 949199000 316095269 807842235 992030805 999651711 734209881 746901201 260377355 710768586 266366978 463856798 319674837 616838465 659692311 660222609 586307188 702168687 742543788 954108495 733116564 839951369 55732587 197376603 329190389 924647371 789679389 961757165 715808325 986865040 954896773 973425697 755035553 857933658 685614641 915014063 103929975 168151494 703393788 987814414 521636652 891004918 530583083 828833642 779841791 782304515 398648950 825391637 626806441 978300358 828270746 839378633 596496803 709836259 113854960 193084286 9511760 345754820 205058652 428089816 428861251 826480120 868682663 882567681 249109129 379222905 702203280 864047967 265060711 507731318 377461582 473685575 60039973 541769846 185173587 688328389 206336346 829095638 103607534 986916643 324181296 886241278 812836404 882932718 762649602 817426846 176451668 901236050 953496461 970882132 32169024 253582664 767718288 788160323 954038763 975628878 184351006 475260485 5902353 668624251 907068670 968597954 528761808 847009165 402016554 456307541 531779710 881416168 852360311 892870993 913642544 931726102 502458455 885021435 516877203 551726264 497929680 875601043 426448707 908634362 533654362 583563877 616929452 701532537 244038450 507724763 715724971 938629146 649512118 898107320 742690950 837628645 814630525 829873494 96366887 268196079 985960770 990967309 49708030 319385872 438296254 454060163 199821067 569299422 809173031 910186647 902545068 967842388 223789659 260614644 783468721 953899615 709231387 716151889 901948400 907345769 212544060 603318761 130972329 494150125 419976655 650891201 579462545 671205848 889830469 890989686 267571491 433947594 43489830 560485223 9882801 204453392 69475399 71547716 438406342 817777458 642063892 765400181 110600595 120106420 257922587 744826984 961851532 968423838 924882436 962807803 700325313 932986452 549214806 617908617 485139176 504525604 81811315 370091647 548768019 818311609 622386123 872131308 59901699 399464992 909318002 924274077 788352264 830502301 901313244 936329146 111330786 341987286 171037478 629546991 548334488 912980368 974137066 989060099 790865834 931206524 334082983 731548954 344924718 491518572 61996821 986636591 46126540 195125748 347886273 957711361 304624258 381653804 333575500 952770604 316819268 722356101 150942466 518324142 615962323 710353234 613512637 892913288 373622566 637210215 274300176 882851870 45895660 505935303 967963483 968007409 144646261 534899997 409102012 936634255 168076296 766915585 738630498 894951740 862513979 950207357 245526583 842007358 76919705 640265755 85837200 673761642 88831162 307325066 472923925 868585570 738811473 870901427 936255402 950902860 892558599 899228756 180813112 973637567 8783096 494844907 981284663 994632566 875388306 898329209 578516749 718402570 68683119 780564327 35895731 976406190 364685832 434365400 741599650 900566229 751069388 995671658 879954233 896415737 536146329 576746385 604620436 765539847 201476569 374196775 310565819 331604380 534942500 666981789 178462922 293752571 481195822 484588117 879879224 989087895 663615514 704198801 617377971 625979020 441787678 657347201 900729837 913052821 825109939 939977940 855481232 986531898 700575742 835474403 154691418 689155251 785619587 812568854 568242426 937503618 722303588 931261666 428107210 663495522 302433959 514521111 451554961 979748298 341216667 749735359 682125826 824702357 461092259 722226681 179470266 890322454 195063992 606278207 119740370 748272771 394593036 843204869 297702096 335808365 119712142 228017065 577756090 937789834 692174869 818208220 317739817 499870429 299334248 598342071 39911139 141847383 485165278 564129875 454573341 793732830 200691507 576611700 259582167 430915028 142858182 918962671 534360175 578652020 923899678 959465324 773955172 914022119 816976962 910550087 54503621 268209951 142566048 711377131 547732090 730770677 353041710 439736721 653804210 937507510 638967745 979651874 187639007 934230701 783653059 899071325 687988676 799600510 502671305 830145742 122550552 984702495 693542587 826371250 753871202 835775427 247603562 451451838 608127927 900101843 896666441 999383807 118200390 221730343 680173667 721560353 158882641 217116075 399442472 816347777 987253035 994048901 482406441 645695311 928038342 970192071 928372335 989988284 609250149 667373145 412229292 766993466 659669600 758402279 877291993 895009661 926238965 995271806 780540502 975871853 664908503 950068164 32086797 738327053 496350407 774924136 316986979 691911730 929399562 981762627 498036330 700684866 257938596 603184797 970186617 993684084 1528947 643306664 57197435 140088350 270301400 318056308 349441128 470330091 749869750 814084269 462156533 643331353 61378362 902164463 548765209 696656721 900642966 949905999 242074473 603353086 114915817 549846591 782478656 910243012 177828692 857005001 905797024 986064218 60740393 397472245 603946791 841675659 413069892 495413997 577737375 613793452 467357176 732732036 775170217 902789378 266321660 576395243 747551459 977171176 861653251 931721036 460663443 610301553 344179004 688801390 42778436 288518028 656310498 723197951 753252017 883685556 981975572 996322600 592204509 979097718 295798890 385630539 693278717 858414473 287785592 701597863 586651729 621553387 213565255 506746583 540874224 748892884 933006939 964446220 385147543 752875062 540488988 595032480 173403068 905201758 938646791 940499872 802804761 911391019 847292165 901797597 928857637 953253965 946019561 980949862 734443994 897717643 18486696 253194039 462268893 606010875 880012941 921156269 12333149 489466764 519840872 669170564 838849103 995894072 612202290 942865344 719279581 794438133 69955681 902721361 103270904 601171501 837011257 923864001 993376212 997957204 750530866 865203196 703421461 873922440 895960321 918149977 817902194 934112635 933369814 951235376 831001257 852808964 830829752 913502868 347874223 996468295 5268422 750265640 92087977 341043651 226259747 318461740 409811560 832026840 81938357 288582744 662897641 921043496 431658188 940868442 156036745 523742637 567503076 617599380 992866587 998987173 311636078 319949531 335240495 475904416 678823086 735578969 621658491 876078129 604328184 937507163 669733259 974588600 469103275 607268317 49438864 154036023 972638018 984580721 362617959 634511717 445472194 625170973 232761096 947107493 184968375 358650695 567585516 954581767 473612990 791063452 47043092 514591679 473372524 684777685 686092672 731011990 601199236 727441464 961821115 981959903 586090888 589088196 818525094 999261952 336779259 874296519 151650331 945781490 631433602 674804360 388101970 595577814 230329579 377931765 85522831 850205123 41311795 863546866 236640158 827838401 997270204 997629861 241968957 881536462 207316940 294564552 1982391 861836829 810007994 966660353 933634165 985126409 243581717 945974598 759812341 801009076 87678025 631311264 638741054 845210297 607857363 861002123 388120991 869869342 607323401 747955857 347901285 667967361 120678373 291045897 346838949 914327730 944717035 945297591 959653304 976228678 140976147 860092610 943678475 985022143 996913472 998645411 10935950 37351848 556013083 992118167 220013325 677375410 372570387 641245796 153361899 724020753 790175423 818939145 183967350 562882572 977772158 997327531 8197741 854134155 439884714 750730419 514457736 579691272 839268928 919951034 545695496 664248078 11013431 165669216 717956282 886232018 838233068 975686335 249285016 580283994 78605048 422766679 938029911 939390453 428166273 612788450 4399447 433040154 385243196 463386091 741562560 794069871 828918544 842179027 528650251 529037261 322404273 391334846 852748945 922599821 198891800 993828477 989619447 991659271 528290659 871937551 754617101 807489070 928743971 980262508 774676756 793286574 534440462 838378362 767918102 874114755 471743758 797865623 542381546 844910635 755043744 992449667 661279216 722673299 592738058 741418988 159955320 465795952 56225506 647977596 130114578 424404548 846953280 926245997 951487712 977066438 415525156 460442596 357637238 659021700 565952365 969183853 45783611 632211969 521789359 754604541 574253967 695219624 609500533 844411991 746958133 956369514 401645561 849166318 498651340 892270225 94761230 882828658 186739359 760816912 96596306 292571178 735633769 905221476 194212875 490819287 857165157 947822283 347012311 919800174 96546880 392139292 441426060 517094371 430051076 802300864 408788614 772638086 395285010 921379029 299014422 778845614 487632239 809705522 813605955 917733676 377236974 733704313 722545127 855157239 665834923 979464724 83597094 548738872 272288044 784948885 927744308 992417243 169377123 629664153 63384508 613625676 331445755 572168517 957542040 992872776 714394213 935253938 277426972 773322165 560611647 929128750 812298988 983462570 933963165 935348829 659778534 734783235 314992154 543308055 364451630 647328194 699525171 811899657 393106915 634452855 325305663 499364727 984819164 990989938 958547143 997030049 820433994 921092053 487875497 503797721 913027137 915092553 887627589 973651079 267784577 726127255 704486814 727836550 208871365 600639389 323232494 790960923 370099458 494239422 13558931 681821598 824056290 908803533 567420079 774422699 443929616 847620555 122589649 267703470 87717237 994530859 47289295 221554720 349412073 473141812 976726353 999700617 669312921 981272349 764545167 777971180 310970004 475512793 276739525 826434926 250899394 877220115 816389865 866551383 619583614 972638091 636512524 979301357 689097692 769429584 506625571 641651178 798977128 826384613 23997099 844339170 206037679 749177323 907190860 915836460 583128092 674646349 34312525 99650564 714784748 900720789 432917123 612681279 683959505 759014571 996075828 997503707 166621697 866269423 359136677 778325307 112789516 222620934 742096960 784041621 713222285 834161497 921346542 955895341 122590573 734121056 903477803 995798724 960903003 992888389 701138514 901958441 592604299 955466187 198144143 962877384 552099132 643556704 49234971 360854777 917011308 936334824 16877501 871915248 797717700 960021372 441557953 931736570 827884141 891675381 113424880 767514279 794449886 965851205 557769894 569376502 629709208 922244692 572126740 647327228 569364248 653030425 26198509 596842933 560362292 733760291 419088653 974311385 537283165 722434861 338778896 870121868 457368319 528228965 623657799 748589124 896089310 982545920 542150055 976224600 687003968 818497770 338520905 545956686 132149660 257976642 611861402 953957853 299733476 872246275 815757404 990164522 550426629 569904868 773363264 961205935 543542204 667722945 490207331 718684619 594887821 726173341 206580451 997449670 324235247 625347088 974207062 975544040 52164426 612327956 634766037 644421251 465905086 941042695 432876095 723069205 738342383 937252128 177002665 958460446 910719363 981260112 952769401 976337661 353683253 685536480 320912908 762865548 98679722 750812236 847487240 982807637 86452366 403646302 43485565 497765557 159373439 706638240 196976332 296697230 538320002 549230906 104547571 818716408 117970322 332073773 168650338 636154785 140206526 377500607 843751813 890199157 761080696 842436815 707059608 750073680 882210255 882636505 925206634 956670846 765543798 962850334 418910087 746643587 315198219 704436983 401107320 787034059 848692574 972781938 1185866 444972058 260002800 407266409 876413965 916804122 239928929 690631101 541614060 623133328 43849769 107766102 524727739 574807193 462064506 943329482 796992064 910979546 355730288 690987360 516634031 772932586 788937758 807961481 158786660 568380874 565624681 903890187 178308969 307804846 69831658 726931859 701261054 884092688 292073515 850589894 548084109 700800404 644195573 870016850 600784675 819665028 809345268 930306255 228549539 787957545 508552717 528403575 685211983 791827691 18836378 747932496 384260300 470165902 284754244 952625619 379319605 508676668 39789339 331207751 977267925 990288352 776998059 877865171 18162452 545378460 25468841 440664168 298158952 892788115 541327098 992964400 755793163 785535085 270600506 909776484 325708410 380069264 928406369 983146950 575311992 847188578 889956400 911348962 680872394 801311850 818915428 899833935 759560217 879729961 406006609 794856763 407088750 879248436 817223760 870706420 447721327 761229069 761894209 799926303 263420289 487689555 864978807 927424286 828080387 960243404 540009844 610192933 899256850 914216584 537803487 979488267 181083101 465723001 692531576 896301674 833568545 918325337 613830153 764475393 692053145 988622569 417158034 772389228 195009539 311199055 878096529 932877561 3142595 66500592 352119029 409714601 422626605 626131643 3127515 351356445 867335160 928051249 674601665 758917164 395562817 584909093 13213520 905442888 578939728 749740381 391779549 918481745 70332399 821441518 192768674 667456086 596424864 798823915 160233711 477675855 476843345 612091633 72069500 922227272 674498584 867800801 158972592 845568468 295424255 757717598 330448705 598258150 631245089 888959226 906221628 949412601 352215873 743126909 835874640 980386345 304697517 810370738 640560460 713272202 546328961 716067541 994983309 997242608 678303289 908305884 290225449 722301126 334647615 351981840 479643380 786395403 33063126 336265959 79599923 796750739 506554341 694002557 402096812 829821156 411172679 723231176 881524019 939025881 509213644 592000753 367376300 964477359 791429710 861665307 974813712 989075321 610983542 624296893 732413666 892509667 243822067 550390811 284105434 384228609 527857013 991249655 849883377 920804950 855864346 858237469 274187906 500433314 739450351 878687575 492142284 563014157 223799437 353888141 857129034 979438897 582781134 625572789 948894342 985900907 741952614 968627532 832025030 869016149 651525105 994009679 536320210 820768572 632460701 785123528 191959398 335142221 757181444 799219320 186914469 618771533 548278268 623669812 607811612 765572246 952991663 980596085 693325167 839507704 665352377 730225064 866167190 966039260 156172276 961611491 577870286 763275379 131201582 705746808 594773147 922282706 818423222 937356004 252027270 339398051 215213103 337747299 858880158 988400078 879145830 973445085 392168193 865056857 887224840 894508653 362090530 888493933 944396906 953183898 308621537 738657668 686824887 766112243 532446462 870343363 145130908 776022106 568191725 762700577 471909277 603384574 63595632 780876247 851262082 995449506 27424393 240652849 727482359 915547267 805275312 831341494 492556297 713226529 411331378 799311946 894014565 900910073 229962331 275062286 176626691 701791309 175496869 984157467 260290702 749724903 945033800 948525759 244813899 877742037 705938962 912544243 961894521 966632487 279125527 549735498 536787016 654573070 536810597 630759591 561572228 598901155 785300574 807109962 299310120 502840526 912192243 954135692 786746968 823163239 470707609 521232383 444843932 850032850 902475519 989446895 407783 556020118 199340578 727114767 122087153 560397084 907589943 921664585 297717698 679408882 198727633 833697471 222424413 931838294 597697101 778463568 504103047 544624992 681496196 983410639 19644435 945207457 239846939 388635828 3528750 567637244 579172482 713643647 55761493 335405536 915343298 967218661 875075052 917123784 318462140 324234275 127968476 132723314 575684790 634878514 957605207 957893101 534502918 973047496 799714236 937629782 128619627 642195695 356603235 683401175 921536382 952007306 338334051 739228998 737188272 802623013 612528727 758398741 816579032 917565545 982844629 993390777 933650814 963570073 941743563 951064116 252115737 597949954 237454933 821927695 983951255 993660516 400488203 473487537 694851129 971715080 252004539 861144188 880599020 930896864 319231621 390665319 195612164 210278924 498498177 973487571 790959410 974078536 463597911 929066542 212990012 232161909 717038591 845585579 345843001 506450172 514011858 740287345 838965896 959411205 11533963 36095691 427070863 714988429 36449141 770342996 332948704 643113052 473946445 829439690 675280311 708737749 539506224 906062349 5395698 271139650 166756358 868451669 436814030 538536694 362457635 708097138 141148550 401729975 8415225 625611884 972277838 977172430 771286492 835806291 340523811 876172827 726812302 761457324 590812926 848770424 560323780 603114396 595483352 813873262 290683316 797637077 530650004 747938821 178143724 525106090 370981784 632217563 244562459 562123380 576652530 909667638 400583574 680190804 974198466 980032093 658613441 859906103 479611120 534257678 686368847 945657688 552252082 695004806 110115976 484882416 643168977 833770523 521700560 927661033 952416966 953895092 489205764 551146003 257177714 374008317 344638545 883841278 498470421 866589862 110994425 154694461 796778919 955471557 649822097 934565900 879740487 889916652 958722082 988037782 88015380 177930089 73603674 486676554 345023281 950264034 798175294 858172669 125901837 825453136 12463236 446115838 355217877 512240571 405466227 927399216 666122552 969901223 575684534 981165952 351130317 606078597 492827773 933766306 852437971 866623320 216199945 290935417 784524498 998913775 116242524 484612203 449502178 645111170 744763425 944936351 586990363 724593573 751359551 991301716 666840439 809508418 506022508 980558685 325869353 655169470 550864828 987360477 603342081 840624616 580279312 730499940 899080201 993445286 809983377 818899795 337670732 428287459 793232107 972266454 513808344 594700579 340812471 972125719 413919625 896189624 415427120 951781230 437636129 953719945 210843572 217016350 137658734 402734299 262412785 734129584 956376422 972843597 277861105 606496365 48505638 221645984 252797979 984816450 918057112 970337942 222510938 782443832 831476243 879501188 484652063 740788460 883527257 973094334 80651260 119445690 326416015 586647885 86464715 151406264 269008407 828368416 982084292 982348405 329860824 879039611 646176513 810021069 633303778 805197719 481250347 914862070 346408365 653134977 945572095 995849787 715437213 972749938 179846860 598671417 423556195 489431951 282126681 529802652 159532495 513550301 36500193 385437325 562981879 614279892 39747008 378257788 391523218 726453095 655896711 874484355 421150629 719679485 689276536 765561840 591018217 594368623 229562090 543215740 209698648 628725710 944440736 974473964 809067714 928927214 864311749 994192109 250655993 676032675 363095942 550001848 490432916 647564592 323092909 416853742 161821242 766357366 542497 237656290 626543145 635977843 765667862 912973634 637485350 688394115 897026356 940633459 278073283 377112474 958137514 961097125 257090418 807998628 187709355 472859488 450320910 997696381 409126809 593204682 630922288 949693645 776154135 987884794 659558949 725735138 979204340 991059615 713970146 983311686 93668315 808809162 845794828 851829315 396118646 756814404 674270469 857783183 452276832 661138181 980916533 998225185 677694377 793304351 110797696 352166422 938207328 984262711 198883409 597532373 230404368 742616547 715979816 770313805 624093109 647617037 353150178 847364037 812531741 821108356 7372813 832377592 693267615 735286769 88119695 330933487 231941927 946288430 801833819 818446896 432323131 444991266 435849482 944950436 85006348 882641282 279102990 763720883 422080058 563246921 450412126 710236024 804463794 900163560 989755190 993240743 726687875 739935455 190421451 480037421 83869137 721414261 610705341 968753608 998188467 999662290 679074783 763058797 883503491 919864139 467162703 883749162 96797510 211114674 193388821 727307232 757293584 846568160 796893287 879343990 777493018 992517750 934045155 955619245 2222292 318796080 950104267 975526364 387733313 451518114 238904033 353494804 447188846 813189718 291055131 414780297 967596624 973062735 671596687 682001498 615743804 747117277 835025670 883368223 117640408 910834832 261337033 586772125 739255493 981607674 517840970 695131156 352982301 923382718 815254946 826860088 727951985 808419850 651554042 784991791 896161421 914543281 756639770 810987588 326984997 928029359 504905160 920119573 742664895 909069812 910061876 977482471 897777201 938647064 898227766 974744274 749186742 877633858 18649511 309385294 716572513 923278152 796331534 820846854 328935674 426658108 384455323 796298231 826399015 860132979 805317517 991017680 204714509 829444051 466375553 610258769 328685717 340675079 988796700 994613745 473562624 837270145 375782367 386481583 1358316 554879340 747425385 980161614 922727562 933110161 412991863 809421773 842085 679835669 591038347 882859997 85322571 449112245 141784628 636330222 30343114 345864505 909046152 941703872 13210755 500597433 170428493 603030703 152710034 983937819 673706501 790521016 902502067 942645153 356983642 438279916 972771829 991818683 709558351 987350846 771252539 912686239 496921284 498213757 318124479 706879332 716867185 737568514 671013295 883323425 212437534 722089045 934861667 987585394 331329302 589734702 768127135 835077679 653252657 672558408 642038875 842554102 430196428 966682735 255867765 649158412 347169108 570670003 96426020 683007578 786076190 807718484 802723809 884786870 351220041 677187706 407165289 516286121 636299970 928294563 12835814 492984715 272304321 951019512 264896124 330994387 987633609 990464751 924129684 955803362 237605318 339980321 454902983 651364825 928726144 975466578 351293766 733789408 253413297 545637856 125390544 430092154 907436804 945749512 646828665 834127200 760585450 814958001 688794020 808976268 186928299 855920032 169758278 860979808 383727863 891931784 524882829 838019643 900170433 933816044 393117041 578900731 378821628 680025023 733291285 757477973 934733672 972288259 839033229 907052396 448704650 482983414 502528091 966553627 923057682 950427973 191430893 761124132 896409513 945543912 690067274 722900383 473733654 499745960 828941877 996966214 9744908 167490436 717343707 991946544 745417579 955766650 766826185 768330202 919844397 975850288 183629272 606110486 806650956 933975957 767509662 953650799 482963284 790352979 511412943 841147892 312275752 344319492 379796413 672209820 161079228 850529394 100260745 514493821 722952610 936637573 359330069 551410903 1386285 763134624 399078143 547362897 732210847 905274247 327859372 708122604 602399212 668643225 612866220 921881166 425010313 489943296 960723699 969352042 650367104 681792161 883718235 915609269 283821831 995754329 220952051 274630463 629901527 751106789 875320397 887827939 429229654 863954264 663527978 896511576 934332448 993096922 360121196 840129473 316671393 399952850 890357316 953250772 600500869 842330244 902603398 964136023 204814542 987336183 398031857 842420688 545709576 720952121 636331886 661338408 903744756 905149853 363830732 389870046 508958019 990417529 35018298 862061317 945481703 948497521 280377512 737961922 178283664 899085014 617769032 632653855 465824253 624735362 209872532 918479222 739369446 779175006 7621484 432417678 631536612 941491930 49608469 720884837 241360937 814959639 293125191 697827436 594604801 773454402 965553089 967404249 209025747 468985494 672995337 937429066 906097859 943010413 613174547 877456605 754348400 770835694 472354451 945003741 490871304 593551851 498526281 817237251 384259139 564121587 104114381 221179376 759783247 903421182 714708713 847467829 48322612 418858626 16564883 38455092 238124852 250738889 587197504 895265264 304946884 362082494 905811729 994343950 667898386 769017511 99109313 651051219 238765038 783633545 128761909 759018263 296497436 580487473 367108566 613331916 133810483 247457313 866973014 880468392 113099144 215223647 372496685 661696188 885872699 936530973 750217961 969046812 605414080 868981191 641471611 932545418 694494971 766755995 766462812 926371090 576742307 708241527 903525957 918639944 989375140 999502461 588722068 822944358 966192086 975602293 81185444 309001708 46099355 789865151 853367601 854641272 982137387 983929721 433746068 867131937 644964116 880545833 444796011 633166449 846749883 951093411 447361449 627509611 536941503 741034078 792692711 872047097 747978156 758954306 354976827 678140449 102513786 350277647 841623501 927711007 490962714 763309146 917889547 963037629 350135193 366878760 81702035 259692981 713460979 940042729 325082140 908810779 723590381 844752398 399188166 481841537 149654459 832438561 858630801 912608586 72268395 298814046 114651540 955121446 957966042 986923662 78323516 948266088 434632243 847813739 769022926 947241500 899076797 989659583 917519776 984954310 376612765 617113075 653447139 992794432 411415839 975617251 575156196 941824310 800980170 808755817 92686122 255734877 690551167 911150935 956539065 998225066 497825389 965158235 128794738 191905943 456445695 688589683 181768613 434847708 423291201 825545613 271177332 683726185 794320886 860653689 830115333 965626349 465505320 979799883 126853255 899144365 354468839 903155826 155798516 480598022 706901796 959308946 417690255 987564263 731091056 783689334 327784033 992261946 214637192 766030819 700836731 975826388 208798738 972170756 986343660 990764035 481222633 670220037 282420989 965580371 594846885 744641742 314080163 314774882 278294181 384476550 936475141 971997659 426124239 913221493 314060199 483215343 985141193 996941082 149521087 488518441 628019916 779036054 861233343 942310338 884059588 981031212 667536395 818830534 205427104 264213816 855963827 876566247 828298015 876152358 560812209 847581807 559001411 621397648 483090666 536726828 73797968 109587003 699534183 763336085 144301702 535000130 899163140 992803240 657364360 821000518 463765795 755302534 345057472 689667800 749996919 867688838 634610484 654273311 964691817 982914591 65863278 182377731 540583151 842840094 216332796 617777544 403660951 539679051 399597117 980291288 71217320 977427970 662776260 911642774 804427441 829629301 197575282 619736244 425819645 644210707 786255617 928254423 623134852 853408019 208364472 602666646 997066545 998298661 883298705 895101067 173147820 586054230 754048051 993414161 411326333 777690275 823605983 895920287 462980728 857446920 835159856 942886953 492882972 533687270 699771752 843268882 113653790 470978469 76083176 282276244 540633407 694451579 932006206 932624883 553600812 772929673 103061156 668529290 571633528 894001573 620142475 946305511 991401272 998551789 147311479 581636502 178102079 493213195 626092984 902901119 785081772 945782805 587870852 663941922 951067269 981234104 878685233 969544587 161672905 746885018 719408022 793480435 155841819 795729735 787976060 960031663 67765340 604223076 547337394 890306547 165719311 559914484 671682495 886680488 87981563 793150051 524965681 980979410 994077890 996013699 786077270 979824950 61139580 334898055 151322556 799382593 914791689 916388567 623701673 680297450 638806027 992306713 869838224 920978791 878524761 900159741 5438106 422254493 768486596 971765536 151496004 618487398 501747402 632697717 706941762 932515398 522795266 739645246 332337395 857351938 417835256 986340863 418421785 609098547 893304866 932219243 153111969 512857506 258567002 301731892 629806812 981517808 242499457 305723327 937548162 993937388 147378949 305009082 517250010 928830430 577953132 775461618 637957808 790788865 15232045 844166375 498903289 890648253 405265221 430445926 785677120 878357722 443095240 899016686 458157281 861893121 944719800 953734352 185993400 762593923 67090083 72239938 116200907 367429534 953045705 962450141 461216292 851943994 927118207 971706593 439787891 776854716 549031365 870985414 704602463 874043502 255960916 414458247 134925082 388784369 560457365 593940217 32686017 831366370 955443577 971306916 679243103 922228331 172639704 705863374 912036636 983007153 340202754 656114553 117854844 626374393 759514518 993395793 225334394 303423593 690793161 829682683 504561551 586118825 832159216 840473312 166968170 538469870 359284646 545188838 589717034 743565041 130307303 920314690 633762916 898149476 247232806 416849811 801705308 910209100 676966071 782787672 500159167 757584108 460982018 669946569 38989699 178840211 764714001 958756539 497121006 611689234 845473012 870877411 751373121 878759422 306313810 980911588 593059164 688899411 51288724 484242016 710625370 927229529 21277511 397838097 994339909 999728661 892573971 917408474 921829480 966074638 368648484 768930977 815827089 911265666 83201905 486566207 757357558 853659284 276624330 625287105 426238841 694233654 781252985 799758944 1514487 935269151 632430781 817192883 819633701 867394602 388137770 809546442 504962 959541984 92838399 692599491 550706978 983000260 399151943 911409965 106283491 877116608 153254985 853308742 521643663 812821398 788245102 820121646 40601787 652404632 355767037 740555733 74331422 123151788 682196228 727449573 227624749 735506355 565014006 980909287 105576966 882170281 138908531 861115248 831890587 899221096 88401507 359816512 355942089 424716972 184872940 322952647 170089557 347436106 46986933 166470616 825489565 885010079 87452516 202224992 488231271 793755009 64428339 985366217 518271779 557198178 283652661 510318557 829604185 985514675 434665187 955267414 104633776 205960136 301743831 859233209 437399400 478842729 582251963 753157214 917995452 919496859 403795636 575071080 951477301 951554900 85714140 482033242 294266702 934570503 137098616 509793794 935716460 970226688 155392891 547253047 666965647 727525633 43750630 771876879 576645064 669398689 966115141 975973163 795851630 935576735 827043822 891768778 712539610 789385480 207685531 385107012 657647073 842664632 136169358 565454987 276679868 612567928 189449316 536676281 690454977 793771904 646574669 867044044 424397802 583242457 391794068 841263322 716621792 785359456 876837650 926591528 944398435 995101826 626456846 750321867 988278018 988847983 549282478 725814084 784996270 926093487 493025652 822066264 889724945 961755783 323973862 361811379 7133743 606517149 83916071 768662685 574206308 981442636 663406433 664447692 84101215 656795831 883640763 885343792 162522900 891263984 52812428 813459034 327380394 652554367 916852334 932819700 570892357 897330176 827732940 952212817 762941461 972335638 697894417 766576299 90449159 660439012 951280299 999537927 460565605 645693081 232477025 305680422 898016096 929026305 794471747 873779547 270011110 639624163 458091523 874856419 851735417 903597856 711800177 807434542 230246719 790777965 77581682 680888138 587098642 662056568 957700022 986682291 524652035 939959134 419025065 902518564 158263536 315473359 82243284 523443468 513446546 994692795 690258554 822912582 381334583 762180823 544813193 850484394 146692877 418206987 35122250 709343547 823539690 961297490 552954750 569920049 356515637 495156561 32009415 202277902 779841016 973686184 871900154 996888184 947207109 963970303 730315528 855305659 698889982 894876688 780256855 780447427 828905199 916691509 281072851 454836391 959643951 983756039 592070686 726840287 426560330 949519118 717500236 879362739 880347948 933147106 179544641 274068224 765929420 807144067 782590552 871082755 856575015 890213891 117165686 635649823 212606458 397951610 536905684 538263078 981369573 993612297 88150642 327957437 715726473 720702412 800524239 869051993 642225991 924514908 215236334 657216205 930654584 953124652 405985014 589481324 917680753 957984580 721712913 846348049 291506403 784311094 473422130 974747944 28163587 861627922 588265571 917749338 274584385 365759178 745545394 872200378 373382111 578303460 674280452 782071138 591991973 795769920 341889111 348107372 846435294 943335283 932606665 984669163 32097049 701438920 416665284 463677946 269571442 814859050 590599577 811174996 493370791 554200337 877524134 980812950 72767103 283561717 101166831 355585896 525332602 678109173 767859237 823988550 486373275 696768966 564418525 872205249 379248887 554746195 510837597 760509334 671460571 836328194 343030605 637494440 408441108 970110411 323864205 532021526 555209136 851821731 953088098 957063052 343351751 591674748 848614631 952210597 627965214 826926899 738263615 903661942 830010255 870751892 915920929 915927656 711068797 936088243 439450869 847720188 209105340 925574382 429875441 563344943 770580707 875400003 162466993 757763896 57349108 404254696 550699983 746813660 572873941 600335264 940036014 968102780 10275298 475119885 989832274 995752602 742248027 958263108 601013385 717055006 496192285 636261393 919281670 933154833 82139823 829413519 512143470 811976429 467910853 501922464 542306214 757671350 342434668 798407178 91803046 653346997 492379201 537054124 750731137 990609173 393470346 432076874 201497516 475550032 367854822 884824362 935477027 948058938 865844423 980316490 985493753 985516011 84980492 308485366 155115195 482129000 115781569 516018228 596724491 772042103 725134437 773562233 507638354 742374433 951240236 977552993 439878175 625641347 232687704 819525347 746492629 918295920 584805862 731433012 728647709 850358249 628341016 799597445 211273230 923809251 60957621 330221169 386569537 863540542 147489715 970826347 34233004 526058788 100733432 886629340 986975019 990185047 951324115 998582598 603238938 645953656 84208693 617717533 41145033 331057876 779339570 857808203 354619548 475562522 408646484 579412993 271425474 328456074 314311333 931374615 587790660 705292255 354005790 476871917 331571575 358540960 548590800 989412317 411451623 485776420 992286726 999889705 747547141 971364147 678921722 949717225 306892491 512332690 225846184 507751813 799150622 883209586 331178949 518883373 520997032 669916175 381376456 853400139 402482906 768494612 824974581 910805682 870431368 874165314 900048413 987991746 523449925 559518047 392165355 956674683 385871204 572044700 758894929 839699155 557459129 637407404 255970700 745187826 571782929 629010553 550212068 713780268 639673665 957735003 333251677 546261384 878401408 883972390 779098836 915071674 634079190 723184301 624680222 842420425 937793031 950653499 802747378 985244644 113377481 718613994 529974240 666139606 620689200 658252005 320034490 875069254 775833139 804761146 771052206 991242647 922585839 949899138 856241409 906850564 911554198 968547328 592787283 838233503 506809951 695838759 668369431 900369806 19590141 765519665 746549552 769868279 281601071 805524936 245902765 783423893 785166976 911873267 233812871 704693395 816401662 894351598 377476452 445280854 966504882 999683346 725713835 926648146 507578026 987257701 123937062 794371891 4618554 742739473 237157157 255938906 559310987 707144256 286617603 463796302 289186010 455874907 177883113 798595915 211045637 912123281 607725393 676571287 928413252 946926758 96075506 643821434 607643735 961213606 534100614 921362854 346713368 369237053 644365838 679968004 985580056 988102275 281726559 813983383 129971873 709758781 764965685 821092196 871774160 909689100 256576354 585773833 50661442 645286663 123719467 249147118 101102015 482061493 653369463 849495663 960845905 974166808 260923912 272524711 846347818 922544586 49546631 535960618 881623195 994459115 814309682 994517680 609932197 720335485 467238783 973778682 829365072 867816350 948909983 966456497 773172714 970020199 659254019 661432980 936506457 961964061 410224558 688557959 723539513 902876144 138433089 290695532 623647313 752021636 134413035 541599032 294979773 906908978 443476368 479445035 368442934 795365395 390371040 830551045 819288126 908743472 848086295 878829678 196992083 424661866 75994455 594411440 23882309 501902892 869200755 991758186 917499234 988626300 66967236 218055940 99642220 172198188 999143987 999281194 30012897 673963029 278233720 440215820 404516148 466398185 137250433 396652615 195323520 773642697 812055841 980063013 468166869 986332669 56015780 804348568 186387956 519482015 18525604 710250992 570524933 976330144 566952712 728289483 422144810 704480725 837117608 953239161 824871417 974833121 856044340 931929048 88310016 480584234 179694409 348861079 814624777 949412813 208788756 982513564 729068182 744837842 122781595 449493819 329294563 471545916 238683538 574157472 31835915 196974060 921345160 948407555 830250699 851451426 738633737 880465572 178297146 534196131 432336076 683138288 822804539 986364154 452221308 503695388 692485079 847392148 394262715 471748267 741995399 955679801 743079634 857698031 199247262 867686000 893319221 977826443 424188617 891338413 998091219 998259569 636113309 639280630 298308724 623518212 943444513 953783077 164811239 676656327 334130383 434608902 38288542 285007108 108106698 493568060 231765229 647124716 475406101 828468432 592431752 704141702 305413804 837434439 497549420 811563772 53859039 355095583 944967390 966088426 824688844 963200400 943593122 995283037 188197711 875397676 620619542 682283166 292559461 924934088 581171267 589954664 612678376 915330594 864859534 875057066 840329436 956841820 679061151 773192242 417845853 609682217 889057170 934284527 706782537 729476553 263319445 867601402 822299870 922602459 197952916 255539326 524274134 640719512 857744639 875532344 196136294 268486237 655098866 704361826 136515766 163564526 14754613 502690786 133146007 210652956 184407748 186509337 384820485 517740901 267707247 864979734 498969104 970023664 521458930 759222473 583010657 966462549 942436091 994702825 803310726 978316506 760703449 812193769 739341796 864831689 939402687 954466966 205574632 753242672 271510882 870322357 355848819 873366907 77154873 392879262 965239538 986655110 976620784 997521746 792326283 863615414 857913673 970479922 402096122 844576493 419219791 761217107 63762761 308898281 484353872 587187088 92536429 466978730 447517885 615266829 302823409 799846034 291166594 784507359 330745152 477646423 753078609 774646440 949990238 952696063 850120735 981039082 425845298 453140949 948904750 952669916 607026126 747079321 505346715 753012649 211490904 928382086 246043566 912364915 918883198 946635608 196474505 227119654 212937084 413234878 223909989 746059182 42138339 790316005 207028801 812080671 413797794 417596629 114451680 670106138 445235103 514119831 694821699 826526782 362032548 466901434 50352374 864375216 416966775 576087797 701147293 914009252 712003283 922413593 752218648 944524342 672776105 722089178 190965094 319935115 230019637 924415272 667557731 697062117 198090992 884893998 814092992 950370411 39291046 237231311 779503224 793610158 330033253 416811909 48070927 808001895 767234568 922976470 954997702 978036504 208551922 669414780 218273654 695513974 446469076 991772391 771520770 794431484 745672245 836991002 291288811 983211670 902553587 967496403 928675014 933642333 244537965 917433405 88406249 524600078 778138600 885486074 925486435 935888857 693578400 884562416 899113879 934013608 903773637 916499018 976248475 992953731 160498028 387768755 542434991 721860289 976501739 981241518 138926412 940660252 807335971 915634024 57937912 683473374 182232545 763051455 662677118 948478627 166797513 247744856 944105302 950944650 218355322 456407988 320416385 960882962 956030719 971482462 707962662 945243877 420687260 842910185 287821302 974431251 143266050 188752243 616123874 823401763 301594155 545769570 991612420 996935289 383991924 846729254 863241643 925737862 491660732 916417748 337253395 603882050 151755741 430974947 501113134 935147004 965198382 995792862 14649028 660013854 640684606 711678851 971705216 982056039 957306366 990816994 613960014 949940581 494203366 722632933 413040059 474451749 330719157 736150196 156924685 682334152 2554459 937359964 911021771 966651371 449070919 813208595 866636422 868594708 122823568 326309368 180891493 824672864 625127601 814387047 754146277 957403139 780380502 884614820 84129373 318753316 818904028 936542474 788399636 944281782 197353584 880888912 307118243 326471271 352885022 452464800 137680822 662855330 679208678 757573556 274088090 804125736 272807903 636840143 267205295 620788444 411158782 980672734 174208496 452013827 408052147 413384955 524635552 816700274 338745752 554664487 49932963 446347895 724371025 733320130 605492348 706574308 904995359 988543055 303433075 697280969 908904295 984893329 728054883 862399554 355653420 966406849 782870162 961834246 44687464 424534654 116335712 701852681 71064970 272012072 641661825 828751777 138659830 715706592 935779048 948980924 518871728 555557653 191383247 757677447 803321533 867357269 50099211 62246015 678357223 804963494 426103932 578358017 411379541 493042250 667997508 956146248 183375683 251259282 537916502 929720398 997591010 998675764 438778469 983389441 795971705 921187651 664811290 665330333 800833169 851291359 110117115 550960622 88632690 610419104 454994864 910070012 217304048 517473920 364143850 429415583 957671932 963419651 75065514 202972002 681981391 892320402 460135549 485142545 212696392 996906696 790568999 812097477 267546363 598610014 399515241 616543388 362719382 809502427 192521529 906718075 217101627 478754071 198 7659051 703790880 968520736 395846152 461177759 163954803 801150520 685570249 844452527 608852376 610499552 176296118 987683014 436638506 477239998 784824958 785795166 534976749 802103939 507746076 931032196 522692081 977260230 330252686 601333102 378057977 406603579 798348529 917578903 661873337 764733955 852164198 890195727 288469752 764733183 719424824 891232602 397056110 486717647 690238038 894570097 911524974 980628021 113996246 855886576 310218567 527546156 523322852 818230432 378525774 378952448 802255415 803146106 578306334 651218428 349015586 585132526 418780346 734406451 309561193 565394444 984886936 991596671 232112384 647381909 405785437 564806856 27617114 614396806 629644577 948198462 482703772 790848491 96162958 386865728 940259536 953605779 403595638 554788923 80257432 945797779 474194942 478819035 378329750 383011622 715060913 765093456 899034211 976013147 40433932 862278234 158596093 675129480 836645184 946667033 969710160 972803188 7077866 583596626 865079456 913716160 188524493 980271962 629353152 782540802 964925385 991176746 611049113 885890305 341388342 761563588 923485293 940800324 402894472 960883683 903674352 906301588 404348654 895706961 655999638 818987628 643339050 647560148 794908199 981282142 533174193 733015087 905331166 977150054 450408819 940871384 915192812 983981818 664218638 907960458 788505011 929440398 172619345 348053789 674520295 823472404 274909159 619694303 248817716 884882767 555525712 866220832 696876516 768007345 914475798 948742638 558983873 873615488 401079649 674264167 61196334 648167292 153413081 264122087 719197891 831596374 793920715 801996790 437793430 882490490 215608620 556100517 994958759 997739868 816650610 825312210 102594945 260428300 643020497 923658180 563272874 589264546 4882493 894269810 83844657 304321334 366088607 561602662 910650479 920078790 727171894 938024264 285181082 631768992 914665574 923208100 521146405 873075578 471947054 510339080 984785090 996872806 739968442 833092115 390922882 655419264 838627678 997121056 570605818 623341080 779676567 825753467 638957995 669901130 841586577 901997020 300745334 514988655 589469335 728262811 9924685 796795038 80904991 596312787 394215589 748206457 533879758 625362196 209193185 760078150 322287891 964657258 262073463 948010477 926979149 942278347 187350700 357665428 831220307 878035818 169542377 301168727 287449500 393382795 221798551 386684212 591664534 660136266 752085993 757668056 311578730 595171944 326056048 510092748 519801119 948945407 969315212 977343867 780923943 932829808 361330717 565415368 808422860 832427302 909704849 978133358 746907155 748119563 249624573 733994106 666547409 988764730 991971468 993035021 987716312 995522145 832576898 951276859 371325957 677110240 158191934 696501149 883139368 959143948 409993313 657733001 606499885 632791601 450527957 761798077 669283614 899072446 398670246 716127252 523871884 704509628 611744933 665876607 735738735 803210880 415742319 629895473 500930933 669787343 394906202 726635356 940902977 940944091 367544253 383006974 162550514 677866243 494684017 609562973 422871397 514733053 675113578 729083868 473490133 719256031 989619241 995762680 490016419 756172924 674946356 792934444 814253532 952606230 877182777 929252085 986895552 992816010 923438635 934536483 386474201 661629029 636332620 868126562 197406177 697750604 330228027 342703431 680730307 991025391 758868382 857683078 953805376 973569616 420543549 477522495 369255375 895457473 366805452 954908636 205957593 354055774 661147478 666259456 182005375 546309107 180213690 737809813 401890247 874993595 126830836 274773137 717438513 805670433 978188695 994192775 961382519 965242085 178330120 192467870 394061586 519419404 2538720 219097409 995020956 998410310 725962040 832304919 461680133 723551544 686149891 869875035 24363703 510878901 29112797 345734065 824822406 863637969 56494170 544972560 736400246 848643947 26856280 736074235 166281691 221756690 205390033 982609115 9717290 323193061 447325533 833192853 510468796 770747355 861811406 948516624 496842693 856960732 515150199 709447082 881888970 908479796 897427946 903904902 748794440 924522300 732596524 777159481 398420545 804015851 991061310 996315685 263381834 601886190 36035645 578181626 59636765 926339807 97410870 731232448 979803988 991354818 585734596 826037471 905046079 923587266 91416415 815971172 897800872 951938846 763474545 880239401 649168980 803401483 744589740 928428601 129720680 233595475 379354693 887971284 832633898 945863885 579810112 814192954 600303677 888358683 589190763 965733868 505171016 523866738 212673014 276792030 143108404 483325241 821519109 999226927 480131087 599003360 453658884 533821584 383359786 665395107 327638293 997907559 433768100 553643474 258037775 368559402 574240357 904287319 566083012 653917365 310431743 354815236 329676440 498834421 513019828 692746865 758431832 982381357 684719795 803104277 81781173 466569302 371333877 518394309 846791138 901173891 831596749 835315444 424158040 638802900 592887056 755877986 738190938 799293172 171307871 804578506 905867836 980584573 589502517 668721203 194528452 628103693 433816463 853739959 715870440 798414774 585349188 777408608 450300868 900802262 952323075 986068289 547382226 630850901 622705427 793055726 474723097 619120375 615414650 952373568 196611283 939225349 763307883 999328878 887140044 959416315 587843504 802056773 327458821 416407581 689082982 856319821 740236103 868367399 834131117 916942853 306354828 953172874 22953518 791180591 967181394 980931330 188100693 865683287 4965563 977906385 298528560 509283600 904370644 928089444 921088578 973373776 262923564 578178532 929862112 989826460 99687890 99894825 860488367 884496876 638583574 908414065 508008894 645383038 169579939 561771039 465733017 858329916 912014315 927852581 269357340 941150781 673273072 881065617 436444991 757414481 877394266 991376778 32407573 629552093 695934751 800939761 645101999 968726849 772909867 977037786 88666116 780361798 350860113 591302683 227877040 673946785 820461058 923302942 853104301 879903708 142248895 279910801 210300100 392783810 327232434 413688380 661633629 941632632 909811686 965498368 343239251 721908949 112129489 759127698 260896377 719419152 805339137 811900808 453941153 816146403 750939530 763510811 841826562 999356410 62518889 773713069 698686922 870310928 835322038 868356771 542618153 571936127 565190250 936133760 732164426 988846817 442778427 913968303 576763066 841923756 183005337 446829675 981446886 991828991 80248882 744467603 592044885 746966581 49986324 856647565 772238665 788503753 253425471 405391771 354237550 800735418 632620672 702125088 146278683 422820747 777545113 910638071 801279266 924864734 265515573 708154078 958751828 987310784 305962136 443223207 487463421 553801470 385095188 765294997 389733245 692549666 57279857 591809975 820798699 980619254 513713829 964801421 959039823 996099723 601831239 694190925 339966136 620842477 568778119 736054956 638387725 912926721 168414721 422439260 584428218 625006348 411278450 451171901 367756949 556883923 475625417 735240365 226594016 406410654 94614973 513570044 5885148 676425114 287460600 861738823 331460859 655176401 817385439 897807956 85818498 521469120 474621653 549551263 941647970 982095758 790322789 960911289 462533427 583318166 804013840 928552018 309430483 969193449 57690678 857823284 66202190 226162044 305230891 415800557 725924214 893905849 502304656 988914379 18791211 441916458 524588925 619331474 392276753 887153770 692355687 834959370 906610790 955762957 833691274 940487455 60466889 890929570 946833893 980120762 139780838 176839084 438794540 784358570 557725096 728934801 630448689 837144342 368772086 794918161 621610549 706202820 235761238 382827471 807337985 852012307 109097604 273204931 296278113 435503726 34061210 169573123 745610625 914639110 613456861 872221390 191247257 914849595 968964605 995708909 418742938 786152514 687973389 783081517 281358429 641606914 110442139 140266200 427232674 843058934 744426832 784868213 393883122 949476788 806867993 857219075 662466285 856898654 830278373 837128016 182767182 549009637 774672151 993367202 752093034 995027718 293929347 407295630 528774890 804899834 874994639 948334793 834150053 959256300 213674488 573122697 6598989 567634994 747386484 928149591 655232584 886163193 618842403 666620302 881792853 948674067 600293638 923533976 716371865 831590749 833974800 848002670 550619563 913619728 19035872 178771370 82302920 964810548 954394519 960649194 176511016 965916352 214343620 529649423 73780932 866272586 484715866 684149826 94287619 342768625 27620851 868918177 833803904 912115733 901329034 905156698 993384012 994362042 491573476 498701930 609777794 823770353 598891626 862073901 968225559 973107800 616639141 769343672 54214952 585040229 334011816 571202476 457719955 511320283 662745228 808947087 308058786 737729230 991230510 994864278 510347339 740073257 272426852 744511188 890145312 908842955 976011698 989515081 512403293 885899623 962441753 987082987 978375947 981484271 698893724 769058965 959619970 967042118 947501276 975700590 127803614 577848187 977399324 989515382 530405477 555450932 82470508 569443738 962842444 968438624 331544686 955977823 920312902 969296679 979393377 981971777 304005602 684706143 366126167 937576162 967683944 968528649 929837061 984307458 990986085 995152864 35997528 515694309 743626039 849701921 337800077 575889376 312500885 703721088 591647418 773446441 403874369 813442804 192886193 968462263 507391131 831818556 312855432 671183954 863326869 963297706 703683645 842602510 938784950 952412985 903202304 951322981 859177999 859429826 251023157 682049620 296768244 800930370 772282812 835101653 343458699 770213340 624332972 846172894 968599640 997401815 805595202 940069107 324397721 546823933 995087242 996019228 587555243 896222663 732964467 735637335 456763679 613768679 615292699 969784499 209840162 699143777 501345279 594371464 854891953 993546299 172682859 449709782 499651692 536253097 271029219 479088087 468871728 898302947 925368275 960840565 717712867 833746183 79670719 489834287 693063446 758311890 325043282 383103685 507526878 923635442 389394030 924222373 17865706 731087147 873297399 935909357 843383637 940913151 735758673 839312348 754791978 972514165 872933890 900828128 904387035 913230031 534938831 636690624 237778918 290640207 959381445 973236964 181931729 869167506 655218619 984990665 822297032 868370192 234042914 805937775 697596077 875111348 334982684 398131989 195805594 344917375 101524440 192907395 967107087 985560474 382640460 985227877 514206377 580752317 740084172 864082379 589456063 644907280 536482942 828512619 61675133 280256277 38541105 355391768 927022653 927305729 309021509 666407079 546598922 806740444 107003227 172867328 425591427 489547947 949530405 996722931 468903047 530365084 643288297 695969503 436846582 952677482 87553108 107922195 965508050 985369565 630136362 962568261 215061753 741642059 947480175 971432682 671177657 920899087 830062377 939299726 473301718 841835935 161666988 322951536 453223313 752919965 143829301 482960769 398838046 705809126 592594501 946295055 665948770 950989929 985867563 994224005 859078791 883461021 681018392 764157919 427736387 667804592 606076022 788101196 552703110 613579485 374366576 768794187 97198707 445244975 249955726 980646167 932838222 955863467 87357269 251029010 277750006 772355916 604487673 629925945 284812525 873481061 748543405 926299667 4239099 643799181 696731181 720782990 83028359 130079079 663352834 796608047 993450961 994698248 605117621 970945924 48262342 123472622 638142738 753558162 355288674 772975622 976313463 985890067 270231955 996747187 379436261 899180773 726095782 989902906 820361527 977908132 312869800 795968932 25458085 563552685 738966584 759151520 607425257 884588543 728848580 908045208 61644114 565201572 589478538 714981795 6127689 372893311 494039009 844755420 681561383 814451524 696600236 811883874 451667518 677115822 370165492 454612915 856368753 886688926 357518390 494099483 700723955 734098579 246447948 844817807 687042438 867999560 592305935 836291297 664536698 721220079 58881378 688958047 640236266 843942852 478792481 539278402 335167051 866066491 417741351 625321841 369714322 622888321 943743378 970173055 213044631 800923998 276120599 763012312 686033536 905454337 172294783 590574195 386757092 504532462 776622441 896365772 355747436 722495142 602015891 702774767 493534112 780395185 5607830 998384227 610251447 968469984 323815221 864594069 885668209 994753319 447018829 679045855 545727973 565241486 762351711 935415263 44721216 550788865 857890347 962863153 414079976 480533032 788665188 884814726 82551891 101788517 851218753 855749141 705950685 901433645 908374341 927654976 850484316 903813553 802303175 987887836 32069164 646460098 456031482 967058976 62533825 506139472 473612806 602727356 291743247 706238002 314321531 449561314 772084364 962776793 630510819 730840271 293310035 737707205 803749018 864203773 695094402 812116682 84000315 125276130 661203937 698908700 658659962 684695487 91300275 572092038 15559498 927966813 102260855 344034126 554188975 933960995 851515628 946976861 915120012 992543285 728898391 781768255 830538346 962175485 260825770 444483582 132765623 466256388 561942126 952664008 815296047 914040592 651411574 761482374 416475984 753763246 170071415 965866494 949969458 999791368 145768201 958391455 486867493 713386257 413572467 750378749 23132548 299600716 620281598 842695881 57625539 371209930 165297996 669764806 430565957 935310664 626824733 951738027 838357456 887756186 232006045 376217767 410843274 784401074 411477302 498399110 487337410 944717538 688532509 936884579 335267546 759913763 198477327 450186235 138587212 497679477 587248631 943357038 821758987 877311472 901072660 929023536 541086081 925558984 507872610 650592966 752918372 854740381 990839644 995484906 330174794 680809680 127198119 855117329 639761334 688724177 395586395 877367743 722502243 906733776 64547783 565062340 158762339 478099507 607977471 912324698 197621568 699807926 767709137 969304163 320237630 627324386 852448902 906398431 733527786 752357604 247358561 499152515 621179898 845117636 283670524 860319950 624548340 921452960 665952709 728909656 277019663 542803287 838484875 855012623 636214720 867787655 674689263 938053782 134643757 672610974 760816197 949362854 117988586 756903145 884118556 902616325 572791135 941662643 209513203 367483889 305802978 851386550 591865032 660861126 673315689 889766591 252639910 446641171 576663833 894056440 863982091 915455184 649786575 794809899 846713901 874071993 970197827 984197920 929427326 993679993 730605370 922511089 647760912 841884406 370904125 651144554 255695802 806945622 451120341 526263524 703912181 970141583 63673689 626527460 516343299 718093926 134793197 276849345 910178576 918649294 359259150 855852865 555935268 945193094 763586179 824075605 9995827 400683065 97746213 599921294 432802500 716558627 658857401 689177847 865945576 930792574 921167761 938348533 380791877 741205054 277604714 286312312 11458294 639210360 411483683 864565779 83336350 773711934 153806104 791027305 370499467 949813044 139263285 972899400 210650806 627061170 7660861 99245926 401650796 641894298 431441736 457486574 246879252 778410044 115045125 893672778 524382601 987735349 582480637 767841193 248196770 423976118 309256125 405177207 856113534 986706702 954799538 961372533 383739601 778930410 534613073 628367907 514764524 864850409 968675026 981020653 86811034 687458833 691093235 790635808 512399389 886370803 116510469 736803220 670599782 731503923 739155665 983877966 552981504 805249237 555899502 924556149 685301137 700829551 218348277 987550240 316641957 495491579 665701952 819054869 814024754 886501011 292837430 983027112 479258713 766911682 205076030 619144177 262090474 533602089 877398931 922888577 66586753 727085773 197127025 837700862 964249993 980736392 55751444 58586739 780787021 849118109 803559811 884674117 547181880 852567780 578614021 706783962 628228650 981699828 95882338 652167693 454522009 937542124 699391838 784272584 795085648 854061413 393252347 797151842 261820353 325074255 171693914 776106101 994276767 994424729 752766035 898179068 726551831 912591143 535480414 547446641 408296058 544143252 355301181 878260938 419563575 614680969 17353 316124333 638877907 703011911 262239550 559260966 411154835 904938871 986557349 991933074 437165980 832431769 399561755 729679896 83948571 160221200 607039625 943379142 622786030 909048165 177753534 858565712 776093088 926382593 895423056 936174468 870629414 871014187 34078489 270916197 868276988 919109369 591961210 735523544 395692872 632832167 823967517 968821547 454216794 699009134 886095853 934886251 114650609 983622349 316930079 416764398 11533369 443255795 57286729 579656349 921862291 984930615 339145286 435525367 389920284 987144853 968813778 992269457 480943622 543025498 804939527 809987769 401413440 570564558 38058298 676235500 554033432 791204079 452258635 556998631 757792983 807236372 641231394 730299453 666490381 671411268 334729100 720567411 563293278 751748208 39099185 134301302 357822601 877477369 425112445 475989600 229185022 515509893 842818146 907693390 878233067 896348945 929324071 976184048 904103911 904458280 632059685 779307398 440894798 572666374 766596047 879179551 726144931 864712885 761460888 866534461 705265134 834765944 16465690 259601079 146985048 473812511 701844614 723862002 938348982 988703090 303243093 816105035 836019624 865291637 488924575 840751365 959744720 975918696 294287174 606795550 228028743 703993699 116237225 799937454 704279199 944186367 856791811 866869201 977336607 991994333 532048284 696905228 418345079 627473957 414891476 808012795 605745951 939538844 318419258 548919226 635481565 972891139 717305343 857281798 474676773 809076622 332364913 607981951 180274158 564244727 4348254 320984813 848268106 945698361 785189635 930105095 290333654 521342629 519435840 528219096 587087985 802531001 703019084 838411433 572857546 643583558 280742477 901823632 188032869 599432642 757877701 761066512 142991278 734388046 606569940 979856982 124409818 925138824 594574511 890710565 782687072 858802292 121285700 841467398 326273892 829097054 538839365 660876511 408451846 812292485 245887400 661471204 735606409 758727567 448943451 681947155 885915044 991334878 406261840 435028259 413676720 437153945 897865806 981334900 295702933 935540124 729379902 852032652 590024310 754402748 18160591 676184291 784693082 953363866 626935181 635272985 935710062 954274360 834663238 990371224 463569531 895094006 310872510 974729963 14995198 340386166 888872966 929929659 346282832 741146675 113834987 982309087 424390545 991587298 135900077 430310185 765551336 965423350 356647449 894406977 943992545 951618521 351918835 445652538 244183374 613724005 77396568 251054441 624450696 818790879 881348745 911548180 701929432 706445651 141621345 367957293 562449872 846607381 491144721 807028419 426386912 716346303 614675960 667827598 610687051 966194331 177216967 798796450 38256387 245476491 927647453 961212609 231533613 652547629 918127651 944157273 108679134 215373913 808922451 903073838 39286997 854850932 256946600 811864691 686240998 968314832 463919549 802598048 774859665 875365626 607526585 933652951 102928418 331717921 139993189 722828879 849919271 889790859 203905461 313205881 959629055 961663713 224359768 899860045 400532215 421548707 167783497 947049271 617560853 854478970 152145052 591689905 476507519 601628746 542391663 647880759 695988189 849457676 755207152 826582078 773405375 925982200 783575169 811281029 993070918 999201906 732043051 816164538 679000823 927369266 448233147 602553113 663044073 927494036 497189956 885284088 720799172 981476740 133128747 761466936 102848148 612880520 773115319 988788151 367083334 898031030 935327439 944351413 322261713 973101477 387540669 793993331 718929892 916400957 997505891 999828526 677422191 733136403 244948572 746571451 685367702 703936243 957718797 968108273 883805593 911172081 75319924 837244613 808732997 916570830 908945233 984142481 77001623 309527083 426833113 701117936 810034780 933455776 561620066 889496303 452512759 790513381 363428225 789828659 323730790 914041754 675072937 870086687 295792424 877468450 861095876 896332090 505159421 996154165 904152779 959969886 713044467 737613459 286057602 708577503 38657059 389278686 679195931 898922013 180006377 469286475 115485571 152341829 751112785 863725505 180567720 972338819 964807848 970316334 827838244 901507284 780634390 843196190 517923575 882216421 502892692 549900455 750820026 891844788 634890344 806655373 432660096 440967663 941073661 964225879 434793948 930136578 179976093 771897565 973552070 977955554 901570226 926969030 659031612 861627760 910233043 941663007 862000635 927369252 755740257 793686872 179279944 271748712 318019485 547166014 50584276 355023361 425144222 824888587 423247695 490592289 903323071 923693664 344054497 347221830 386304684 760259469 275117796 317193969 165058823 542581464 808810542 924730945 481106202 575488912 17945125 301766247 661886397 812078243 498006418 623483845 807867196 892018140 839257425 905837362 653254412 709640827 614708285 791761278 64075117 179621136 683857957 842642350 783503718 980448991 234563601 455721138 206603419 536556767 572481329 636610811 277141991 630624789 349951954 695848592 680486873 934120635 554149820 652533751 422469108 954785992 98259623 794195347 628183707 886329251 724644196 927665805 642339323 828994467 174461867 504529616 262104398 939504474 304467234 733056152 876611838 992132170 422739095 791144841 25999620 513502632 101633187 171313935 822763600 928224156 626849965 666017308 892608038 960728128 464292725 744100415 523897431 847796645 84226613 751838752 273644900 706085847 789220611 797329225 287293247 468692822 732100154 902037302 691347699 856017521 1355099 308753289 584817995 757358319 275760727 503638723 265118184 329468930 477894682 637329252 895553221 972264789 708663737 904817799 965368267 991885687 442844536 937919265 830548365 953936038 129347443 941446980 329729225 625302015 406284899 617328796 305717536 744301894 305966670 563211218 603701682 801689468 102352660 625876465 269215832 638646523 410330712 721966827 650470042 841595538 619857890 697498120 518321920 979926132 202659297 215099554 778759247 880497221 960286284 983174126 862431590 927024247 618936399 900763445 748519899 917466692 226200894 789132143 978821011 991788339 284353183 378796478 736728811 980909508 962602240 981149467 157505249 410086984 528324009 758430326 781226289 939899682 833842930 873420631 751989016 815113125 552809765 892061846 644353832 732882475 50987188 873093932 389665511 815988841 513771485 794480191 54511382 602866044 256970864 879639256 356946399 789377476 479569847 888756759 147898110 576928408 9130040 701445147 981880543 994043437 711270034 843963680 921845247 978228308 846229963 967970349 950885917 979115962 833067883 997790946 313374633 978365572 641577968 839377999 326173890 817107157 651885398 903929004 61138793 616895371 713775598 790675900 869955993 897724437 783627264 911212791 968541519 995855247 942817823 966751627 147681402 592727035 17889396 497602591 758537905 842630973 26575657 853563926 323620563 466250011 256365412 260348964 350971342 895885791 795843159 862204295 454088924 569778493 739570673 959064832 121449591 527492678 641960638 642688613 905712888 934566122 589826439 931264284 424461076 728980382 686208463 918803312 237964335 428711066 275446125 512805864 323521580 479160059 126146332 445339238 574466335 958739250 874899902 914264444 254556153 676703998 900441614 953399664 734766392 780904104 959050559 994054076 981313662 986783788 101593757 335695976 466435091 724287726 279004875 295438199 673509641 676821276 237384761 355327919 811272345 855096651 900899102 923144109 23373726 684677858 487000271 553792355 263156924 529547482 936202737 974270809 887176928 996577878 467569129 864882935 730080751 991736317 443547406 859541389 186238900 630479145 692379546 744672129 780885891 931157028 819734620 931419612 97675368 411221272 913513111 961572023 254704372 485592497 128487596 688894531 455048620 830320660 228449917 560507013 344216333 998230824 581597371 660474771 869015303 885918295 745718595 945372292 658269128 815538639 22670414 759685494 602278820 661548853 539221303 937934116 951101327 966556651 168939574 467511665 140120039 353232875 316656362 464239779 734154907 795832154 108388016 399330653 751754745 919748487 943351861 946353167 448974195 835587796 946190189 995046908 754976230 996950238 532121254 807334821 590150928 760969472 97721616 795542642 112276694 442175813 210666418 550209521 290502712 540294478 962456529 972840698 85739505 847605618 816795537 982819146 297444929 923149260 195723121 233745288 556577520 967572242 106952660 795837099 95867947 312821987 356623035 781311238 325845930 555125524 842118377 997321417 754461418 975225639 267553595 763043717 359451835 604148545 552598124 887563088 366963127 610352660 133219292 695005901 625668508 750582697 214386713 486904226 292585728 469586335 924319990 959248263 827589741 879193767 887491214 980896588 323380349 448241753 487060709 933425130 640592865 899185213 24418495 87870143 126464400 660569642 639678807 810521665 726289623 938084165 373722699 411155456 492773249 986338289 96329533 237855305 237232754 310834610 530372259 980021638 514252961 677118527 138121602 723977240 77693058 997803212 899334402 935121300 339122586 805603610 872401985 961566512 805987520 869070135 662700595 737062589 116387889 727938649 906258383 989511009 92812223 713407398 775251462 875915264 625166537 862765151 606214559 872503534 626546441 817353186 180854908 227503890 688030572 797348224 536211727 845257630 560250608 732880023 476294181 665917251 951731426 977585935 100688422 636174764 119302055 274263019 475470527 864311730 790845246 954190831 573837910 834903798 677115226 780540045 333180971 691560816 620551819 630602887 509876446 784625042 460907691 983282219 492971346 571574611 510377878 887945339 265337838 861125735 75661849 374828654 889096376 965612491 39523932 751535583 291686557 557355623 496931825 670518150 325220694 676859138 906850348 985408873 718604136 909858298 719831170 800159366 519863817 941603275 131094305 476997586 33267096 72528313 741323436 806253437 831759432 880192610 946474556 968771136 261940601 283000153 101820609 632995512 77904202 294530433 835674676 944109168 774343837 779653198 817300979 996394214 321419877 944128691 404955296 582040824 898133977 958485555 773182693 775717686 310383712 774452921 83851400 377095842 946333621 961811145 339833089 921374351 535141692 760486566 337595252 639580770 861023087 868306893 880721558 959477903 258107401 736079922 938168389 946541465 839378886 860107587 13963142 269609421 829236556 881147538 867641418 922649688 321411008 566188253 88194306 471367464 941772261 991813355 79961717 278517785 318374169 429530947 856635177 941590882 53142542 512753840 153811717 809756502 829148311 877913667 168620755 767531186 548481304 734408949 81494661 833691334 328798146 415893210 986391259 994799556 323456128 754431586 935988786 939443516 28978566 128078247 178345401 546159665 620109735 881335468 886511774 928630206 804906806 964144081 609354073 742919750 398425359 945908775 104568865 634729169 399287120 594921878 796508600 844719968 991386208 993445097 262375217 659530735 438641499 502991322 305478512 490701867 949685587 976029400 565040159 806266278 319727466 485608340 144185686 847714496 441551705 670638650 434717611 527673125 525362177 718743357 311336789 625694044 748182540 811923104 448347246 718531416 568028659 616661572 908662852 922695742 5781397 972403202 538289803 828215451 700922377 954666051 60007593 770745802 490614776 837558133 443990910 550774693 910532858 955336224 943752378 951120779 122873184 505035760 819545220 831761063 860310241 962128162 681473327 906013007 25180063 391032239 162932754 320539640 995742614 999739215 727093657 821789383 228479921 338901152 785881897 926335020 88363994 951911187 341326556 840446766 906657074 982971122 809112811 816799093 566576983 803276146 759233442 999841543 290923379 945259139 684457610 706468178 561084785 850985053 463869525 733760302 888403644 970993846 27238878 445335637 413710213 468155410 204176552 521894900 521569610 873485280 785481947 841349301 555316832 612510161 819268881 861863238 380670111 580328572 191664720 389573795 784971453 959622679 160348383 485023070 384342043 433144768 950454035 996228417 530181969 802641948 413038885 568200288 322465951 741613064 441155305 819690407 46824740 232078608 344103441 716457827 729300928 909189028 824315674 827661009 360653745 579964617 715923432 940418019 539113333 958182638 519683553 703091568 98768048 654599946 564799427 612784472 516792332 795331760 934238833 961283984 706598168 860165838 785529623 957408876 615876297 896993396 730752874 940238353 38315495 90902786 930564483 990057614 484694116 512311235 793646838 905498181 147900940 288351452 461744712 541275485 12821080 608451623 911730982 912777505 688391064 919089766 110836618 891682370 890163558 935881783 442616910 663714022 998372896 999790197 143767428 458306140 453744511 913623656 154372531 264269328 589930136 755703568 733585276 869671217 152434706 711932625 724445464 981401177 950025418 975080335 996116757 998550572 661115634 925834217 973704650 977666122 423719580 730209634 239230770 671339692 437705068 486488653 393243033 911404740 229337220 981420964 704825140 727678475 789334772 914178750 682220255 809030651 136946393 727667843 487830822 987506316 899107561 990966206 792631629 990843483 30398894 430029516 519098430 953920113 830058281 986382031 213751220 310039935 819942775 963013726 828255766 972390382 167468989 292234419 181985741 561079598 281719151 615401268 622210460 951987452 7458540 574313891 370969516 582944864 821560655 856691427 59389497 984227753 999386184 999629702 517262346 702171109 286748644 925878561 768532417 836413674 974558511 975991019 244117916 980709953 668511591 690514035 239356947 998023438 334002693 841878227 261122316 924525860 768418535 899575635 646570592 696368755 417393147 632356674 67511606 213506158 448107399 803522470 401368332 749430327 853626474 994274047 972369856 991753569 186323248 467186821 800825193 864749263 53684918 963677613 766392800 857536301 964834008 991838078 574362149 904741187 174772335 889166509 223364606 480296172 68889541 468999681 801144638 817955834 759703380 848351232 715381140 923616343 82551509 620179558 249812820 336398738 272053778 456470445 749408464 947288746 877761174 995863122 582889096 980573469 389336655 882498727 269789030 570238711 459937215 723940995 953120692 967240108 409650840 737095273 292823413 297864404 186893889 356108795 609346177 668411227 465144928 632813432 363740391 997953554 142387993 462374237 921042842 927307976 516244507 686962369 885912234 981666874 226918115 442506429 106378683 318128468 502886540 637014221 665650598 984099123 129119118 343810565 220024913 734372035 984709574 992486238 610971051 833254852 629043481 965649165 92506372 420328771 927701119 986768286 237340580 331821333 735380820 953509023 688629109 863147999 922490807 995001083 6331164 226087632 547747720 598527506 924821987 978477593 627629783 849235725 394500135 756955735 153349905 402424166 278596339 554916497 506884503 885253986 303762626 508325262 449807422 851577302 577527299 642131688 956037704 978325033 320184768 832175822 355168953 431267289 73704802 971420473 28596612 812181333 639591517 958151554 703072727 729872814 660818726 858293838 862431665 923292532 875575512 984757065 730908145 916319711 572671590 869852553 979923770 995526271 581614353 997623510 662735346 951002631 537192067 730013239 805906232 999732817 561910538 601563405 190311584 964125091 628951041 888252806 671235962 704970188 32139766 847985385 645313280 866371289 472630611 977907570 340217896 791920347 367669247 720306646 81905765 841010873 699149295 749032281 882988217 896775696 274408682 352319538 904151973 986778394 926946037 979826853 746929193 925136758 330621112 578704680 884276297 983736318 843414260 953211672 64763996 480332635 71083781 837535630 644205711 691955922 796034310 827970635 276238021 372096741 232508181 577261084 302193729 672329420 116807459 917167391 209942421 516436685 749694846 887021486 842786781 949812999 788792774 915384281 206805662 477869762 545925018 621393665 11584402 618041029 982654203 983309296 200693710 400246564 69943950 401156318 152784671 624263127 287212995 943661909 568740943 640150905 843638672 971834721 30655803 713531698 400992824 620121426 983077798 985362819 621178622 804919576 906245211 914393765 902974784 906038177 699385154 719208456 900034801 995039482 154631274 960349483 11258076 299809296 261186858 723233510 294919210 749656699 549505021 651213531 137309520 805258388 396234375 620923568 412004144 673448733 216421302 896086624 963735647 998992810 621312891 955372637 632908809 776249035 881183593 964488746 772648679 981184353 882555376 886435546 272622816 768150518 618859618 711754703 393941500 725695003 425428991 717811159 813856674 903406887 446551125 972159135 946138859 989908968 898301768 917230287 401589516 795343492 287886414 668486308 342985938 982139054 899096604 959839968 301891849 423297921 204792229 237212149 115342627 493854847 958554154 968587598 616951287 698272549 570579073 709108905 517510237 858731452 517020470 592002484 345295227 345643856 453050281 594220576 83217296 935442659 351010576 452980036 395199276 874261374 124564665 778104318 837595633 903982996 159979042 845347188 312159151 463594659 399101842 706792216 718597324 982684391 500163776 931223208 801969639 848926590 488284794 687786273 762315656 994947282 744448325 864909035 939063274 988135465 142675637 639691528 99076039 692277566 863786535 864446570 117690898 256046336 539877006 891044682 406339307 703538810 637344320 662074323 157746751 940774181 50593417 927726503 510474775 839200363 647750457 976633813 879288040 929989361 335654143 606646013 268744511 797281499 49928607 181428675 979099975 998181840 749773126 833640543 504676977 863761945 562201006 901471430 774549990 950989415 539910872 884792804 675866639 767659983 539185286 884838109 112848048 801607980 7811056 901928331 224047814 951238519 691081473 862766046 215447284 897580449 713252804 773327121 22850452 687057681 505858198 679157137 705707583 946822304 987952732 992061377 555267711 574384067 681539517 990849644 366007454 832019690 52328832 971431586 598188744 962769138 3959130 940455800 416732 519655200 485402286 782564287 203222058 889671202 564828434 965841739 258903297 817845094 720400782 929450145 70530933 209814258 210107107 926746438 502019183 670938088 1082627 905423367 765328753 825913626 304716503 990474391 383911829 549299030 242627214 608133868 523893259 681263829 464975862 764316692 884077549 964920399 31854517 720729853 54358215 259653840 448249072 781605427 479757542 500327950 70025048 428257077 775188306 981574952 119875121 804371110 965446717 993725514 682727610 694635842 670740350 853386183 346362 229567735 221862373 980725480 641077502 873274891 913913585 988256375 541154792 735031745 248386077 489070495 147617516 540672928 651944196 782583943 424881400 461143289 901173093 924589671 234539725 274384847 342623884 872524994 686236272 930898766 463731627 791267726 879364534 902067181 289699036 423587068 338909831 404092205 994709236 997751554 707217328 917190851 647569655 724065530 330481833 651393770 220020686 236783989 799845486 815726813 179755642 534039497 653974418 710904724 14766200 95729610 673153439 840279504 621024549 853591345 711815423 947594262 58286406 813276522 525936850 797558139 775328061 823597465 381999221 414317365 360056139 736708224 892007229 971152339 244278950 844980592 857858982 925525916 209504772 666325044 427176037 876310428 201584270 470160835 213526404 308754534 21234954 649423613 642070622 691703642 577265459 653763161 619820022 648325497 218868340 240649241 571075552 946380988 432457526 921058307 635844130 643456856 880985551 959521050 30895286 814030633 543693720 804929212 829570329 961191890 931966441 971306776 126965434 543375824 862945639 976448506 426165748 703984139 36619599 773421757 197176465 778815588 45300415 291011341 102967846 829914168 723436108 815407072 485070665 608119306 83826305 644223310 816303094 867586534 934928871 975466555 228054481 493142342 734653848 929600681 569403646 737439869 127811382 834591685 211254380 953860062 698544495 997568352 881820770 918765310 855715873 932540557 183491782 799259205 638005799 723810336 465879563 825657430 819706216 907885515 211449498 888839127 128100637 321776626 244996348 285814414 807586742 980616965 974807703 995483753 195622281 467935663 687352118 746871012 995675211 997884498 206657043 798371092 523287810 713997846 416916207 647688491 818452775 827858416 74206827 989188560 732202790 950016274 159534530 762584588 236580309 652668503 378763922 577848062 154020589 297959668 58866417 940054090 904209511 913162082 835238501 923492551 667884824 707601730 110555431 189654200 148080725 188051651 133334848 708067559 151802493 614348072 51416489 52834665 266840350 320620317 369951166 820640608 371487391 943813133 747451908 922511504 469887779 881448995 554150633 687305573 872208941 959793382 947310081 975605138 607438813 734770373 207042086 902892751 596958430 956353084 162582513 310878421 141518148 409846698 472959625 925981059 127635939 870241689 746884794 924838023 537514954 680620421 469509164 819165998 750480751 949151026 899121695 948964847 95176112 893954052 682980822 907318198 44573295 694234619 650512927 773046753 850861903 907689555 499783964 568435742 798056328 872727968 964265284 973083331 376658232 733903799 847339902 933085151 72916661 957422812 848203472 859446425 907332756 908832240 239432943 871185897 481625851 973989125 406719498 953045900 41994461 122648930 844829274 998910293 351503198 948906213 110995297 672092154 965846393 990486311 778006730 995338928 441073207 969626229 840121801 931621352 247123654 854965346 202542885 490741568 106507463 216517856 137921203 560339210 461945815 695960805 37313310 370516847 479068157 717323579 818417423 834828977 381151251 624199556 127676073 487856759 490769494 903670483 226325208 279053527 619487992 939089535 196164814 967693268 616447003 669571084 22390156 323325444 725881532 729770335 540857390 667056322 614335205 784596070 678328717 758755861 100067037 936327653 204336931 928145896 303536160 936028587 568714079 639884463 89070753 773346780 438882426 943997999 669178411 862897260 534554849 989222999 107444759 455896439 114140535 611417434 957768161 994439066 343098263 650902855 997504592 998691352 533190752 959344524 764084982 826078497 676714468 691936047 763025028 795614508 101532296 568607991 893775663 972081098 380042023 547900433 185659304 850187486 363359347 920835035 269931335 350013472 69678592 178827396 179022307 560352378 183618660 750818163 665983998 744038710 969990571 980312736 368951406 810449569 102634698 203394806 18207159 303760348 187034447 826379270 837817504 974166955 754187782 991279635 151694896 383252989 810622567 996367275 638180161 913621313 479251754 773317406 427596181 841823156 446442688 937864565 695827952 699999106 767600432 898202367 482725237 528993890 373012545 628606259 783158248 802996139 993868885 999463816 914313309 953010730 625708755 670772806 649759371 820691310 70375251 786299139 941936051 993764015 357696382 564756135 131934133 776595236 721467384 990607203 83533698 490866769 932358968 956230389 990917326 998961823 182365658 198064574 984465742 997389075 44214575 882859671 468932814 913367061 583155152 649681693 313709110 362718811 668423522 888288356 752827817 947468030 390147174 727769883 803626479 858622893 659908371 956365713 760811682 804671206 959792161 967829310 109680047 871916882 826618020 973072694 996640630 997435037 565655204 892956148 835704493 884413421 120465463 392536773 183945053 519328647 802227454 819055800 188054824 375912415 779125077 851664515 367675650 491834102 172816163 238572715 371432481 640923183 528439378 583093517 187172181 979696396 419336995 919936052 508304052 786404977 724467493 933474258 490868839 584230646 847477667 881744872 41372169 53151658 32342314 631311104 659402920 940588014 439105772 603285291 710013563 768489279 102657182 461634656 452142753 687654734 991138128 995810957 826623824 941373892 554074881 705593051 235026517 550855997 890260554 978125259 40344819 311761179 294064410 382665103 523342229 575606630 474014894 612205055 641602620 915840307 336292838 776129541 526945540 664719007 359335858 636154242 817581267 905196304 999911438 999942481 589765105 954991908 610270663 650635594 891229171 894247367 675647287 814221796 397230252 780035685 737560052 755715627 788143361 960384703 418044215 492943061 698105200 919517476 248379271 739046781 453763653 771832471 722185437 747957302 483113771 898229739 564408939 874526307 314525935 467061569 29952787 460464212 30048144 835590899 377835976 951460208 946888557 977097681 140783171 588719502 420893052 604987209 664830396 845411087 408075295 663368024 69189879 966724154 783462060 899498007 30934877 906329218 797741146 921170759 761147773 762485790 448333856 512548708 650176932 739548476 727966811 848991226 773051644 776522471 462447216 878254979 160036641 902401849 101077878 509274186 552714559 676906814 365590598 757385875 299906351 610722172 429013840 584366737 180859733 822916992 354285445 880692008 646619507 756669724 964626122 987864379 272681842 739665371 807955926 914873234 76482189 187767068 698894123 864541186 243874671 891451356 438973820 476868414 49709343 379922366 665804932 869304044 143851240 386343626 430359525 704465918 529563860 626939791 926896463 973425042 1020664 339331080 630170394 945812449 158568984 372753023 746241935 970139583 560361443 791606815 593885341 961239214 556240549 865476347 286616526 439549524 134839662 686814047 248269617 379204666 789746657 978777081 454894048 479908462 828157971 846889302 663949850 760635315 138074614 226975407 818966682 872840507 947624910 981944305 951288962 985990688 812033205 854397102 936764144 965734438 927251400 991537825 254511887 825978665 1252450 619652252 512115896 547023834 523589125 978326513 514079347 703997787 627480657 939829322 18706532 187166583 565734493 925915397 157259201 587117153 801856729 922686671 82862203 266034805 249989442 367710908 977799775 985797162 527266460 931953848 523720435 851792093 767797468 918458808 9023042 217512304 319325756 638098841 476355272 592366422 556715229 963560499 47735014 681290209 353818287 999487170 652526175 982785302 559176411 881918988 893185817 966514138 963700684 991059880 944545977 966826621 724769471 787178998 281019785 660885941 816179961 816286002 569166230 941778990 905116609 974365349 682236529 776063340 541531469 647523263 138671658 690794881 824052890 996677266 64099301 127570128 857904516 860225423 777597349 802428573 306337391 726464190 469764404 674382320 574405127 767651202 986151943 995125123 972587253 990452176 628173298 737416212 387910025 874922651 702130958 914928224 700949222 918380958 118767494 903608402 332376726 877517503 479426876 646163738 565517809 682489284 32464985 906494969 798284787 814763436 442488604 851131979 727359084 951763633 710832237 767808532 924650876 942649237 545174545 903274042 315656986 544837900 303172958 373611238 703725492 846683701 550555497 581918862 475372668 920559694 128652604 345028234 962481811 963094094 642069651 801561375 683110856 980765124 963563190 991535926 66172538 403840783 873294372 975031845 272746496 395126703 808229992 994658528 976028742 993995841 558909261 775686569 746080331 938543714 452098431 452550531 186876532 768178670 387333375 947528306 629627737 665537968 183257074 984119038 68866865 765614289 550443064 965663649 515695856 527307911 365428956 452435647 261341961 547483184 807971221 840506752 320027035 907764585 906964051 957923602 229194323 665537197 617963767 960973772 531076697 874378120 34196116 155131269 882898774 995855328 868118231 872125158 522398898 821289493 963918841 983418810 645490767 833344726 885400452 950101676 206787005 745957747 736871308 754181400 748714165 956664209 159749921 862821564 108630485 986888893 977673548 979127108 887104700 979401510 262494210 815499333 445454820 601848564 176458873 514107775 166193319 569111818 589059462 732884203 781932312 895513876 752198778 762193084 424200276 857479598 52831966 481908174 325362566 996685284 580838785 717004344 966444624 989124834 938434532 971585431 448115959 650978813 770754067 824481913 605294813 802866445 450898731 451751757 499769711 819922153 145203735 502766505 26456132 109130315 640950331 710579471 626528369 982917398 248032811 341591154 655394650 896065157 538916673 876087825 312212878 519620653 401463332 572476843 96683447 374257006 860292549 963527806 361054647 948651348 543177717 674646847 469859393 791351009 869004928 914084148 905694441 970520137 833585882 936411917 8556985 15627519 709546578 865867765 748687225 831467152 781429687 969025906 704013891 850231253 768116269 837339813 33853526 674326228 158741732 825543852 484325548 842953305 535551532 819004951 881196666 909879123 678133090 889094178 118395069 203235670 859411136 981783745 381414523 430349155 584465352 596398448 121558485 173561008 339286392 481242806 527942594 994860379 908236472 932494715 979752159 989988061 112634556 138567622 144481426 210718666 140875509 232345994 638053277 759999186 422543844 951300390 998137667 999602970 114202564 944466000 408262474 728438330 987046580 999099618 914213517 992715649 719198493 791684325 633966085 889032440 417315989 887633018 161092399 812918124 690916718 809435558 142309531 534293168 260261740 970646507 335680347 484761602 351687828 809769702 401046809 513873180 879500266 899446346 269625436 692046573 145399420 465807405 53876248 770975355 579666582 893039459 892032416 895161408 698098175 867543561 364077350 384050318 211090937 542009681 838942282 857339741 456351090 560508181 583634329 795888999 249890147 685666976 481706987 898417054 414020612 429667477 266195923 362425317 35007945 809692993 256196653 727037143 484382594 944457841 713488817 986573445 554336819 785829400 177318082 813745260 870284519 969761629 689186630 778314718 553463150 596291726 929673665 941561556 982187 965245480 464645122 630395966 4710035 400754848 948301807 976689721 933246703 957281470 822471319 918554156 832745957 979089669 440090901 701172859 780864455 825490676 389095160 642983672 662104283 839066443 907199593 937682627 820102337 950764940 270366886 347377154 488828476 761417650 274039094 593518965 650859640 806811881 120580680 802704150 345587020 434098173 729661910 972495231 145068240 556161612 962384788 986779550 398665450 803306283 849607045 978757084 857092305 947761942 322272498 391377529 846112363 883120494 452457635 903840613 734116531 835329942 40668543 393425205 790907441 797147493 771693547 790538762 412506219 858559522 926102207 975155611 825297785 947893164 66621615 296897714 304936822 798658720 910640199 944392315 906685926 976547902 763251724 910293382 286494020 560394521 997479310 997948559 666256411 849401277 219435107 782631574 441615448 974229822 749353821 966766482 546739701 684274322 553530184 728701934 487051956 994244774 356945578 593241196 361757244 761733019 964423851 989080387 302401906 924836001 722871619 751535950 523416338 528711508 832466294 929711643 187116178 657963298 213064075 693333442 407455247 659916203 433961773 502301759 798924130 888474277 970891527 996449406 695485057 737920579 530696005 727661999 542615956 881955346 703751248 975334800 515379547 627179329 542821758 853051323 372956447 593963303 452380565 669681867 35667017 460998677 172682753 708776192 872572827 956189474 929003291 993897479 171355019 963093132 342338657 409872956 911188145 978156063 503880726 524165254 421351904 548695864 388951008 607382888 274440436 781594688 442265053 921260158 952949684 960861607 344547518 738840245 552260267 933444717 497653703 715265651 990673872 997477964 494607369 965607012 325623758 335260023 350838338 518864435 447983651 813923327 18340038 945380803 67189829 661131625 936147246 983303857 446466855 449891150 295291113 604976310 340704125 525962029 518446528 633657558 629218476 765495565 730985476 983876860 493268793 824104985 790597686 803304075 208990071 661326951 397596898 643262213 922682195 942996856 679822117 699659141 127421265 636477197 837463386 848731277 729998548 998118166 931046612 981449349 8157924 100513312 182466212 255309184 34831405 592979926 457098459 880228677 684569501 718228874 877113048 889350716 835093012 848581287 893210960 969343670 640070299 698956530 84508046 581629834 797326925 819371309 581457228 943077259 406092873 842506230 758792009 824406665 876169048 934974029 573808394 866287285 808579984 946673805 852494526 967528282 632418571 812124838 859101322 992816194 255961825 860142165 993340808 994387368 332384894 424356054 259008593 351722115 858056881 963555943 237914899 515145295 282412422 649955168 97968903 451175154 490984948 581834129 596327168 898154214 219280335 913867480 964658118 966868249 231601303 631254772 602669451 838907401 359490198 821075359 276366934 891538405 357517329 991602898 120370463 302626841 151921691 549899351 722224794 867779878 291774230 308964469 890411809 962705441 442531212 886498651 332915275 932674996 483573430 688132160 799593598 954471916 278257906 395558150 921082387 983337571 729029409 955577843 246767675 565385566 947858335 971289322 905521638 926531059 860969817 878482331 106185907 295737332 642898262 806903485 136856521 227707155 405418029 784175045 789539530 977651330 428549522 917619693 176690554 669587516 490572178 584216146 991697639 991976149 300084055 618992863 180833429 951012040 998142970 999388462 875554727 966962950 765413230 846030500 291405094 616772746 226116917 924337332 857468297 881125237 962880478 991471941 856200813 875224953 601850807 808542894 225752942 277717612 572979381 632194850 545508165 891048248 312729643 930931603 701389733 979362781 205693408 344767710 480023206 589565291 535913982 735975551 314918161 983098118 89912602 195524494 695539031 849475629 887868119 965017455 258862798 738824297 246768628 646978142 538816045 779335211 267536214 538692406 272433476 627584845 869454430 901056617 14199719 415446981 915325086 989094746 193435931 380664239 515452060 991104793 782226720 799426132 137503276 935891541 728864239 790722304 447102028 620413077 196788746 911995419 251276601 705869103 135474184 847953361 745030026 854822984 467754156 856275013 398013887 518087065 177323646 442177800 567803576 881330568 987353181 991924150 522482654 967028504 836379572 903633988 218909235 602663873 271905799 323956330 366281609 927733043 322454820 377227490 313049621 449195094 388437475 432104609 969775892 977385051 296831264 949017033 836935629 840471870 460228865 551567774 194886647 418944872 557616831 581669738 82016683 197877857 606116014 681987323 8501916 350610111 240720278 752521963 669168334 765001626 93873008 241295162 515228458 983777834 344060148 955561594 726793412 867715884 563474134 990910101 90753642 289387144 481675409 885956036 361629044 656792098 617713096 713919253 620089348 830302962 491820091 650960449 814288267 905798240 307597600 324811797 768736733 859224886 735612704 742803684 191377429 573257204 434674441 630396882 513716632 545088475 591162495 851894536 708457302 752146739 800234429 952795329 743346540 782582754 510377921 984189070 113715107 340222589 894401430 966617491 171271906 179821028 953090250 954440173 939380618 996236005 597381157 600425688 824628364 873316077 396779548 758689052 109232412 451417505 209651903 404364752 342216865 719217896 173605147 763947112 705923334 809115856 18402853 214167356 479153471 647152295 645602213 821210800 420629138 613620659 126378658 815786745 527507672 803686195 685966649 804306386 496925751 811811323 352101856 725837988 350516102 821591554 808407466 970628044 515917691 533589289 555092643 732805843 262924052 990258378 298636760 631341192 597182998 818121175 1105979 191504944 279859389 437500901 666135451 745083246 54795824 769125885 609745115 627896701 355193666 791209950 526386552 788436596 965268765 991387453 652116387 669074378 708164066 780932735 250715645 486455934 252652990 334291175 4493842 226338215 761761123 855621467 617526157 731345336 511705910 769043891 190767677 213989659 474649953 954664093 912086942 915809117 509884719 568647513 40151696 437836488 109186683 918142355 39026247 817050210 657688245 738993548 390238787 971878654 282416629 319034060 616483263 656615375 285057466 848623343 209146112 887524932 505731487 746472333 2192053 627287604 460118876 995694748 898831310 899478827 544286687 934762415 886740123 997637147 265626432 927346613 361528706 751601443 529683308 985876935 123788331 884984445 128014825 269571697 434942009 595514438 18624436 412204907 79291834 597772570 99399285 843892432 875606493 935340007 842320014 914183401 233584967 610766329 749825192 854832662 163317130 426862430 669101073 887957094 546461743 829583995 538462709 979532717 881164066 894625769 101675915 540805595 981057449 997454154 14558075 790604088 475108545 483756329 872222481 918434427 405067615 440638971 613135992 674476949 877607850 888983914 242737706 729102464 646433493 870699954 661005372 824522965 944359458 974975587 416969961 714077359 257862016 788208502 505007043 687683642 168990315 684452774 285545909 430718668 482201957 581624623 580537160 721131785 106424263 433906358 185609457 858467909 598637304 861798018 968411540 973086136 873033879 927757627 377352776 896565715 228299403 606858583 784635484 876956304 107347706 338225598 761495359 792641015 631386652 853118117 759849881 899190022 676851699 816104073 789852787 950250898 270044038 584214634 488476069 942278631 10030487 587189903 493011872 724103903 452871713 562027527 993933904 994482482 201829736 795064844 757357214 845006192 173444657 878474798 247607347 842334578 60304601 334148641 777918953 854507297 569245215 988792481 632792603 944810449 899551301 944671844 937338009 942176837 254103159 833362776 37378842 413855571 838726987 967365041 39323629 891985986 875811394 992910766 761501788 973869848 572596613 714098430 798766769 807292745 583062385 847717559 197218365 529045899 369835894 535154506 153182313 258531047 697796469 865945552 453731068 535232024 280882236 833766542 824185239 900217173 706227727 919255898 688258102 732695131 833694785 886653771 276944677 445101946 49917030 618037606 229610462 986493387 793007132 935128667 174497903 296375538 534443194 824878822 512630027 679306785 296364380 940735178 980539601 980740979 351527048 730742859 9707986 73682571 866986689 941688842 847025255 968899270 163000702 751478247 632792468 683765004 89688321 252623132 710159245 934130545 945641253 974587698 624901065 968812779 553041395 756248253 284940011 873332692 374248895 442305604 890011262 964872614 443956555 824410501 492987166 615447418 450656721 574184033 74347993 367776034 748312580 858721586 644680336 829362999 190332221 218418947 469520552 749583437 12068264 28760924 725879973 834944136 22370101 598696548 108090969 249335536 533974181 781340921 397148446 412065532 180532508 612225375 263925160 855965135 874304723 955438581 900536285 912725746 749286671 845221705 184590370 236094495 729612898 760387077 445410572 480408049 832928088 843046250 157795282 211638960 994646242 999139402 740031039 812824716 440493878 783591372 833704825 955713060 697618327 912137817 746218451 931588559 514508594 779698578 659676992 943964602 458966056 554592501 989665674 989764169 246138171 557962278 718243071 899832381 558515525 910429473 907061384 968682689 859048183 870135779 282175853 797333203 222015043 637694561 918012469 985201870 287191708 560390434 853554607 918209771 895566449 896233784 124212135 139130879 753144819 883250960 403557122 424379733 924476486 940877086 491176307 967213890 301628938 625824374 232333913 702680982 385582439 746327372 322005042 951601940 69372439 425122988 873427925 874583184 131451736 295955646 207700948 855688074 27513249 347797933 814952057 850707638 653532094 671915534 581057819 935272769 94319725 488649010 709615801 726538180 36151418 899981576 480264145 717825727 619823989 701412051 220238193 679348965 94751287 815950774 786513427 814790081 994606253 995142408 734652317 745959798 990541099 990674663 290883600 381714354 251651838 781234686 846645398 875828078 623881916 708559288 284444418 385126485 873835636 899354791 817869843 826930363 647743407 815066758 475615802 684292539 874002846 923646178 318330110 678869907 260592115 953487541 523726266 534227797 938203050 971609985 394011788 729641264 995710183 998514232 604526359 829023742 245927341 597552414 416983559 789892723 826769430 839827144 851327604 921146281 744437824 874766129 189393072 886857078 139684620 230797360 30813669 918478687 330901004 501569436 971040757 972412124 254401142 342512397 541062951 761942146 172839765 289092210 886507960 902205258 333296981 510849914 622160867 804587262 444638937 458745876 4147496 257376795 975009545 995406824 805183072 867794762 774344528 854502433 223162927 704700470 270305469 695294501 54675474 334344865 690786162 702036570 385535727 606298891 289060194 428926813 45377574 117172960 375113718 467702942 155938784 510995564 913257512 920137600 452948421 837425574 482836934 824355194 431072221 550620133 976287625 990813393 500426872 931892918 149918382 602737983 310172562 598017981 798217661 872012633 350773928 362481097 502289837 634041277 551565636 794675913 235553375 806555870 537455628 537781965 560266183 970193362 109405189 888796422 109962126 756218276 906689190 963686498 179857157 601664988 729165305 991567316 126711189 656393967 303352329 386524039 85822354 293811501 604593463 801712791 390944139 682624281 560978819 702499253 177860276 246705958 698593275 753144212 556671304 847202425 945667780 991421520 708246078 909383610 817576261 840045468 733137880 842895721 651706753 725094596 319482697 508240266 712221838 837304122 301109153 805042963 675151847 770338731 401330267 900851903 129291711 748597796 900182422 981398018 628927952 889394080 494399702 781647605 213819877 975779899 534927492 988292412 186953821 833865866 989409432 993406769 837226616 842608815 536893329 972333007 437199413 881373655 976356338 982322674 559172278 778350026 225819348 235442426 148598507 368869223 546996368 800739604 213528236 370574442 502304885 746705676 696376686 804254833 637752337 792667889 837009420 930508164 625234545 872721607 561043390 791386755 926068383 945861167 649799277 679223683 86632924 524386158 872155744 920127702 56078223 973466619 183567424 497467452 179175209 537965990 240041463 961393891 921425156 979571836 519758641 740524279 834979083 871840204 366895165 390811168 195888037 444640564 633556402 878670296 410209734 888160748 754824304 843109252 989060885 997680649 87323928 308254469 760309475 834962561 835372551 861534312 667219968 916298855 666490352 771549733 315680937 744276249 602549557 995784863 72275397 630696825 592673941 939939087 291079114 330217361 421068581 932035588 88951873 846363744 182189270 445234091 862274133 966754650 153496573 488161022 348285287 810514744 517626681 874553720 328280585 740283878 936169444 963167089 131017001 847648934 624514433 630252121 921701520 978134763 465809796 504238821 355559837 951092017 690676812 994879202 376982940 731295216 405579974 407523932 953960877 965894986 105004864 343612877 456879048 465768870 5268184 335604023 690172683 844680896 288125862 889531649 922502888 999716391 388232000 690228013 890019593 924644384 566938142 609755514 37477643 917325202 474350255 890502330 442967695 798491491 104282595 773369900 572909236 852353530 969404447 984040305 194603335 778521732 659224881 734989890 331615322 930555326 698289890 750055937 974853887 985388018 852327768 869085983 693124283 904364323 359240535 749219773 471799300 817486157 38875946 187448844 459735573 690413178 250715082 926400435 137830835 311555633 151925248 727451970 974174056 983957131 673485201 745080568 258730842 706908476 504470347 508262299 100966654 377497344 65049471 319870762 913640835 983849941 935275311 956959246 619325108 874726470 419067889 838304666 278168266 283337308 483668017 776006970 870903910 915850162 823821540 992227549 461204938 721983634 333920129 645851835 844651184 905868158 811898857 964247809 963592670 980600169 554554732 970808703 15570661 122083312 715687761 999958350 205736391 224088265 464121459 583956083 441706574 460544245 39348632 187168513 673722001 976884964 725698755 878483912 130680942 697306048 293895942 519177803 593347727 963497504 16676543 454416975 209927440 510530356 548214307 680846119 240794640 327110351 853682074 935751285 293560981 892222397 113675552 810356077 306112729 648372342 518692324 957876662 623168988 715509994 597965664 785516273 373585068 551820838 900152058 931516119 118059858 774232057 935569010 978159882 461438114 549637241 124628421 136163254 910798007 973572915 217234914 607350419 570789434 727328992 487603005 514438577 377598716 425412128 450737491 666094422 187208795 548489054 338770470 496120816 929496141 965799995 646500258 848738440 432938381 701382223 662149682 771857161 207506410 329801737 443050841 958794946 977543563 983412315 67074770 683153331 807040911 829919710 72648548 220311422 104188032 587771541 950366872 972062919 533571083 750770355 821007175 958674028 531992205 964108873 537471705 623201138 575918593 772003365 12208849 883033830 473463629 521011390 162868952 248285735 962080290 995562700 594386194 878593392 772514342 842127043 254888281 686940489 735969686 943566472 854222201 995932561 237620904 511914570 506530786 965888484 262395396 940841402 810011500 998552249 834051499 987003960 167316193 489350815 931386922 936643203 39045505 924849658 866143506 883031680 334533113 877204120 80757965 318342068 344764083 968788749 674869920 797526247 970676611 985028615 373747080 939028714 26550915 573169113 480391207 758566258 101745426 395326236 858872905 937061644 866298380 952459471 740827180 840132927 412476596 749583142 368657480 548481713 139383404 706850435 3817925 128719306 628510942 975799908 988429422 991568873 271139084 565369490 746197618 809031959 250348487 522875617 241550009 956644644 713367909 935188191 740217506 937384566 1769773 18300429 417951065 788064154 330095841 441617437 954523738 964743780 402696865 600156380 95823479 506142980 805781105 955465719 283357336 525536828 286039313 372130369 5345110 255644394 164522445 531598426 104022588 278086685 683595083 984310856 492281669 710406430 988850606 994547273 224601617 843012461 240832538 249046108 913869384 934274053 910040704 980481840 702414645 892761524 976022740 990912336 446210519 986670608 451665006 607786047 79991342 684686470 558372647 973405080 443410004 470548099 801832566 864560728 187419882 412696336 28940550 410400238 881958050 962207496 821853020 967178803 323235212 969962321 627570388 748262972 229231747 463760559 369326392 674427744 305169161 308571042 503817731 922799767 778183200 787473149 115152557 205616417 452783425 638736372 495485742 913394750 342184033 798506909 766147356 970001362 341511621 610039350 397258944 643616310 724631070 821199783 465819782 733577075 585543913 789912193 803803028 875815630 63573284 700693944 560963260 631850945 981175609 986903313 468883200 729780006 506750790 507147419 74649515 649064412 237197003 593304921 48130127 132617520 432623604 518245483 953379833 982434996 423504816 727571526 120697819 846357244 488401555 654810363 455816222 856384022 621336173 814031096 496608143 879477567 101161742 378125340 538684976 721968542 131342620 312096914 726405311 879781871 104284750 474596469 442397288 568862649 18926469 503711823 301873364 861422839 582376575 978925953 807538477 858962752 530356092 817336197 114567128 804454277 377092443 400844834 764094917 854476328 642465273 695170091 616775089 910371149 597617118 828418649 782129641 878573564 300560480 496526363 597675976 879170359 300311000 523426007 613958337 626965298 862417393 906017099 342364575 819558099 662542355 817789154 739139431 873157635 117821165 309721564 8411142 102263299 638355693 693796291 835840876 899691333 316829773 662846918 199582877 748126360 958489117 995383670 756478700 874202843 885438127 957263747 508047155 580914329 695440831 789513134 478427807 788266987 281983366 458796539 755366135 853099604 764179589 989408279 110061869 591641191 742495542 958592879 452126350 702845168 351877667 866966706 400288769 467266193 598609390 969951640 199630398 621584614 784196339 832759650 304903356 878104915 307210821 765004654 750908633 916653321 973169898 989901063 515088246 815672705 714233758 937860416 59571813 734590823 878829721 900855648 36763563 507184156 963115504 991938855 233923223 289194590 923552490 961236045 803626843 943893678 257273739 389211457 119104809 186613986 52702684 708944270 247471486 402882675 148703926 738900503 73423142 433970590 214602675 442266071 933885079 997773021 77450405 708346704 443481905 537584691 40881464 261576992 999953228 999978930 346177595 918764222 525013027 776168605 87017162 140065086 317142733 649818025 58051867 205627694 427350627 765538125 297141195 852339638 702974395 912720164 723933885 879464106 951863709 970490154 621372434 755818012 899556376 983218192 538555065 542630643 865569435 956757918 3603667 606064943 22026723 344171595 866008868 937742050 858020407 939495795 804536980 850164695 241106446 834738910 987455973 996771091 630043115 932883000 250315617 823146754 800176916 988896905 11742801 496266701 378309904 989529595 488240515 978167525 582576252 824557582 93022571 848317575 529551879 890103431 65230784 818644381 43105786 796490876 140718989 888530225 670305232 794323527 361974504 536662451 380274717 982585691 491543540 952023010 476257743 622847115 733524723 767390628 292407784 346856721 197268973 289419802 793380932 878147983 690338581 702665776 724062715 909054839 73518174 174484169 314507240 661026894 223842618 508401574 184581729 594752344 461442955 695843967 231408387 249076484 447022547 981325269 738854935 841378810 901989767 937946610 365077629 733126187 809148658 938084419 591909395 922689483 391452912 819352772 146504566 215815933 85316530 337424267 130692362 731194017 301288013 636190083 690630268 769700548 981899189 993057156 374742197 583332493 153235002 826564317 993471109 997942704 808294233 938946393 647229122 717862920 169522938 297185579 981376014 989528184 962244853 971883561 748038513 937843115 562907538 886500552 147586505 254591448 233939372 650925845 831129325 977404787 924769862 942298963 909683250 936676493 947960892 997453040 284843844 431184799 65717604 668138100 244793787 653480456 546416238 628002306 893671497 992376968 702155703 871232034 552107153 877373206 45976048 972427101 450592557 764714012 199219781 899385655 571367808 830257564 822012441 985839243 46003110 229905656 392219391 462399734 30633350 957743793 230783717 554681536 631705597 866986079 629637506 663317959 898831524 979661295 706956712 884702745 53441554 907469193 10081553 45177503 271928590 753200013 546542102 662572064 991247563 996253189 693564840 777352579 582126640 696081431 652799295 757541372 431483084 980824464 763855990 986122023 594328229 785498071 483344476 959419326 998536223 999260027 895475945 900359924 239792697 334186571 190976335 949720817 170003531 549836137 729756104 988904337 648354068 983245900 574627470 763823621 681103810 930093028 989265347 991350521 981661421 998535258 750167524 804148471 590041059 674812098 403620306 454346811 636716649 858604205 947558226 995395953 679734139 838951210 858831302 901496148 284723229 946904059 896407414 990647262 411259550 986706701 429599748 644852453 814953162 872095383 276121530 346621221 250224669 846134164 980766455 984693796 845366286 918531633 493851451 633030823 889316908 902842914 68267470 240115074 778945111 974899895 214441163 786587909 165383619 820192955 136188191 844649586 381474803 936131477 372974054 826115072 710518808 999041149 169207415 774237576 310628047 522962695 594529530 680648787 747731477 750619281 644994794 889580709 192955484 778142434 716470786 723088108 796505439 951089536 375238801 840414290 928797529 942370232 971931632 985955159 39708525 619170259 31646451 401393120 6426760 136191725 417037460 790385580 975043605 985555487 489982875 962739643 429214989 734770086 608919442 755667178 949651080 952874733 908842847 962632326 336740638 930171378 2280993 132337754 543737593 799550286 90583986 463881750 50076170 928081838 982046842 992677516 61524237 242025526 593811952 992680042 64621441 761667927 77037805 406153622 242362047 316172060 455014798 714733740 981882587 998096816 430259402 445945876 881507697 916599665 271187351 538331241 989582016 991149257 818386096 936074130 729789601 989392964 554478561 821256672 613591236 811296432 644236442 860164213 58874887 542877833 64899381 280215074 205834956 420904979 944469394 950802064 995899636 996896377 503798100 959528330 498385799 932506998 368235945 731097573 98255833 905853163 143201343 203421997 24059147 954607808 365362839 388615152 692444273 847481775 625714249 881274015 99240007 838002593 573701677 975581095 56625893 153657239 978872850 992584118 435907580 788274731 808336342 819732691 604295932 841381813 583661439 589932915 997160288 999690412 410155541 812430453 280905996 732424975 179319674 993886458 969167324 975918809 970680531 985684388 900625445 974150430 407973790 990811790 304587755 918911702 215464854 390495747 845907243 891425882 81322475 246461527 359669813 575334964 126686767 905981772 276326020 883667723 174341830 836875184 508885283 810891902 729186830 945108059 408773664 451975157 682935215 792703664 469969463 980351933 188110815 765565762 798977070 917160446 774758487 920799921 369218803 395429465 608884529 734310099 764155880 993961787 472504846 845510982 773549123 999572898 781701887 879430033 762307199 829977996 170542538 617218163 325084684 671875891 909516811 999567328 310571569 390846386 379452558 674054739 456481105 567159139 593731321 992808759 203880905 511583270 530450507 644707008 255364263 937605298 763241488 884329504 947676742 991742760 253740943 601016651 405808078 855773050 907440661 997380781 566665328 987119215 562871670 611640964 489977489 800751041 386439283 749699254 130617528 267102434 986988320 991239204 795225146 806327573 999599153 999729137 174104393 497112516 288141618 847653520 287808573 417536246 156309522 502865377 505085825 527829824 392831304 785236755 153061334 818283535 326397284 937334349 514966609 558664586 125365197 263870163 835215660 875415806 633973960 678573201 391864863 928478195 874280883 997396026 710338762 804632712 710424318 964205176 179999102 235750817 453707938 862942897 430619591 621468313 75331958 823147775 796613941 991204683 596412986 605596137 95075890 295731184 491952657 953530173 478904636 797292741 458737753 901483478 865015509 949127967 674494158 887497004 180536488 993746490 247645991 768367838 367727757 948073967 238107534 590471991 671552728 704696996 947044977 996561932 671791631 816798849 495736546 537813390 12471595 820334533 228149470 774699113 73283839 440441606 627217265 795851910 977383680 989020858 581696631 652932259 981900252 991273698 889684735 992783234 578892936 979625031 854263760 888913225 377246373 503478260 636523325 896790312 286706851 437500736 760556772 998344275 915780974 952534911 932304658 974911875 126033339 221814190 727748644 860838018 615977876 620220393 20684073 638268309 202783641 463607814 349862202 934802807 921411863 982180434 303617983 844668156 872197411 966628092 913202279 987426221 705537699 869675132 263828077 301629259 671904407 847969442 894203652 951430968 981899089 981921932 108942587 602427960 52552228 882593417 445980971 842038778 164143126 411195746 171644478 535591028 92807215 267352559 254752808 280015689 882234973 886457068 473243864 845526240 761521104 872309111 933683304 937333848 539537017 736018997 352606912 696639108 276557506 909857587 670120753 711235487 348509514 946117882 877234284 900689310 167864484 447395251 51956689 265420639 765422093 826938267 87087095 443868052 137630102 888916515 926553668 972585874 941170501 965774641 667460259 850162668 445125771 992306999 355468076 791159806 785769667 940476370 881863885 991900606 576925591 660548164 469359039 814775554 501569477 829010749 630511795 699815849 13332845 89869401 993771076 997428150 464638109 859730028 218527884 410247230 26850235 877950746 786487391 886723644 354774255 517315418 883373166 957057213 951023985 968532393 38350989 892110414 157209768 444217705 694938337 901600107 930205482 942322924 451135584 914187285 484278015 493540666 142000697 887640756 87772884 680561470 180292993 665228326 151506687 730262908 950161546 955289674 93607128 933579875 249766375 957785006 83972725 228184577 59778329 873033690 441619683 561736141 840870130 961617739 586975526 975877225 594838520 977835768 948774656 966046490 62609104 138803014 147189168 712229787 820442198 883410330 773406802 921747291 755906249 825797479 731439080 845342556 111364614 928911473 403859664 534957275 959991656 998796036 88144629 214909112 322717261 567430491 986928307 987936334 485645706 910690428 850246085 908010256 721160978 721413790 761789223 890290831 55354618 158998236 111628012 454177879 463686816 601271577 366307102 602572318 996962695 999585742 688433427 930478164 105973266 960960401 19442833 655335227 758965115 902227541 17558835 338107775 30033779 632189916 408942657 795925086 498390008 563300579 518221804 728047604 907628859 956432765 999632668 999963001 436154109 927435589 761836557 775163428 148720725 757925847 797093552 861380167 123080036 303402118 114330808 596193119 516173266 686611917 751050795 778103283 30093600 213035466 311756963 344180839 574374947 870094380 881968580 970783467 930847886 995610563 26991131 604104320 133032875 214040384 86471695 943888196 876266571 901196722 491920485 814599594 78356584 833220454 677079815 696662118 635478781 941524762 780756709 931051580 323033237 748095230 94134828 794278608 823358983 981629154 838384919 871222578 885551460 927515292 748558694 789059477 365403978 757295666 43913396 565733704 169091027 227139549 366508494 599412815 344276279 413276850 787983622 850352728 27315434 934007877 479895881 485555703 819522924 986758573 967361484 977704978 709839410 948337600 286272607 657145248 152073505 601697155 925271973 928245623 648176159 967620651 83584801 555610150 139379251 494690304 954617826 966601136 857329253 963115581 380092849 786400173 305507007 792049946 12889894 486492769 594968419 885756694 416140327 483575824 257632517 364885124 548879225 996573576 967935894 981595353 942961067 973124474 747463317 819264619 432389322 598885674 666252911 928066903 993556317 999355062 824421489 972080515 272033562 760368102 357540093 836535449 766411146 778133316 740505025 943532148 190424109 943036725 548566907 962717523 992710416 997981983 875180996 889182523 591034313 854107784 427821786 460579789 185443400 839023547 177327985 504488579 378402808 498915763 643272611 877129450 19186093 503744947 665905443 851957583 543502949 962779757 573794849 796775644 173637369 427936837 588174687 899713442 900633578 967347760 993134859 999938520 167626504 783803181 419196048 717755296 7231819 938936895 768970622 904839432 192665863 878462040 814868500 975345235 793524427 802577136 300557561 758230925 429090665 778624215 331130922 941955840 305843258 539422684 166264386 618999766 55627656 507407690 710647962 744385144 839374227 853863058 183148081 557710798 842236285 860005863 656095758 875306498 394123579 611643147 80637602 215034383 774672518 888646311 536530379 651649054 524407904 666350088 198420426 381584212 513603295 778826730 195156328 600516313 374420157 574792322 137689652 388752975 863013176 928588635 866935320 917436918 41336435 970237453 429569277 559645218 386767069 913717531 105438251 493239581 804685072 853512130 897876344 897931421 205956295 689974847 172947876 303125670 92386542 151257269 73299241 482189724 23776143 847184094 853381752 942899554 866050876 930360069 402516287 935653507 981473444 999619132 917560628 960956250 269200920 294069682 38596213 202981979 327768529 815185535 68988143 447382482 417373118 733732428 783100201 952677872 317213314 381611000 428446267 810844692 965058485 978972949 605757003 631544974 437179693 678805679 105141092 393123092 355091252 851062773 235986666 708271782 640119257 840549864 715038040 879046435 851871216 952535910 124144100 824296351 395793767 720514237 426737347 458359274 244465999 934828820 245113585 531572702 483564153 516828889 381964901 564298605 615387033 863795230 27158361 671561159 370293973 506877011 936104099 945703688 904760935 993174104 300717298 728781666 517093524 688398321 91631503 254970889 369954813 649232122 84839828 376490736 892677635 992016861 852165407 919684601 416830604 717594813 814699533 946706282 350164341 373888111 589072998 718653544 735382090 878999694 626945892 906866413 438128864 519738535 582229244 674356012 881105407 978724238 365754226 893971215 364861062 838667450 860779958 941301204 911789178 951863235 826639680 968564595 79712797 245116424 930703176 983042700 426651083 977253962 297407198 628425493 167679914 571857121 345483417 609207876 38574574 208108817 108241285 969064028 189269341 420045195 223775254 576726522 898587235 918837535 435746272 831185743 856382317 887496778 325510007 843098023 255668245 336703048 325945223 917946191 310018568 549233976 508477250 662888715 369533305 567161579 308332714 509808302 64608053 168625657 748076456 889646445 33296690 575199244 572039575 998098223 334796963 401470946 171381145 415276534 600186899 802874925 577826033 583596264 25966515 258481972 425530890 720106767 26014395 405289625 261394150 425691391 177402579 421513199 953621911 970930959 211389755 686334754 961547102 976651113 906978617 964196177 587033356 626516912 115745091 933591395 31127376 585389070 741197494 945745020 883000797 970697646 827360422 865208678 77786842 116162752 68925312 369043733 749484766 890806645 718006594 738809077 594727886 794504782 964483075 997487112 652230369 702776284 845758822 908242796 727476893 752654305 275105346 756998909 516752164 937756137 164764690 445554470 135823662 476780810 536381195 983480479 925523208 982779996 865376438 981140620 673575201 894804536 463813102 580726969 335587868 378900005 223186643 295050084 480052422 729296106 432039535 794508123 152864433 407375614 223295618 396244531 571182723 608074618 770929895 995808854 249071105 975521916 50328435 189927902 904849513 991796088 445213953 689991461 646868359 942075938 381243938 515212410 697492026 954953005 652314086 953385845 544010357 550075677 850928844 985390139 647128071 825190287 78241175 742346056 286143299 594933620 59707386 474806615 479508307 708700150 902262138 954672985 244317207 460197598 485314424 631284374 330568505 887312663 429460544 706568220 468700831 801868708 977262619 991313903 268721535 589219562 44612133 611941873 382634755 672015099 745311551 770589284 890159914 936074300 460099529 663943790 373285971 386562077 403272911 417520402 49751544 774821965 431472586 691583437 208837077 472094752 679109237 851930803 447174611 629211353 611015998 853653487 674081867 993442049 220228806 970584010 792445088 999233902 516371169 816419955 248853588 601028939 513734370 990812708 272970737 788720373 639062448 915748374 829156993 927843263 337612952 462922794 32264288 64365672 762715387 899823411 236803208 716613007 293535685 838803587 506301604 868666532 994439909 996146193 630369474 967074535 152322400 901829732 507086151 747852310 628613256 895542486 995642094 997557944 571216184 918860526 958295775 996879172 583218115 895856361 741403514 948250419 569764434 661352183 492614815 968384701 572533307 778449064 941927455 975911987 363354919 659525637 504029687 790141223 981904576 987993006 527575059 904535906 788351284 804466667 414352494 543924062 52775655 789418397 372468808 655919782 460705996 593596237 400848533 710351394 790817291 992853481 675558998 795156441 425692160 879797826 295313481 909537059 976831942 995765021 29852196 591008153 624510999 644088400 277808028 669257325 57804982 876282019 552451205 811896426 988295840 993480333 383449287 522187982 363913178 603059230 105886719 706913103 894563967 961081202 785499152 904922592 650006020 784525406 501325349 719450990 518660052 555675262 436134140 594327260 736418099 927728791 988623080 997205807 441892887 570553614 484261674 608009943 73895236 514203324 485569265 848304508 207321179 441629555 258607025 277579592 244713542 275181601 812131869 910415724 948983089 950579551 610422488 998002871 599242673 723762766 995913180 999062971 908019350 993069629 829589167 911751551 600191002 845927229 428928074 828388722 865668875 969456846 280867707 835608217 360295881 512862478 590944363 688602096 874475853 949552909 675466765 723452606 584312667 628785518 50368715 434617143 159078660 517889963 519384985 598968244 58947856 469728460 759488174 826140223 526774050 647608514 848401769 926972662 71538600 349572013 903794348 937976902 247570983 337930431 31494449 146072960 628458967 763325496 45309423 639017498 289271593 432531750 588547957 809743839 192194947 195614143 189343716 531741089 320570097 664720885 173231531 792301552 350772073 547520709 111344192 375167172 509922049 758726470 168662154 425370892 248279932 820033748 239362877 457649081 901817856 957649084 875472979 999534494 48005998 497643905 303758161 728773540 398751966 985145868 245356726 322700376 662172933 745645936 355528421 398194162 159883278 503463660 599130481 840189636 529202572 880815371 254906226 852477239 532321127 683865920 196972730 492779476 440865077 959914704 631699184 853729843 80121128 978921906 649217911 898427306 387960666 638441224 594218307 882334201 891516526 898709414 523551631 724662864 48693563 693015648 983670490 995139385 985821159 992488274 761454003 882435506 443817483 637362458 855514244 951942605 455277102 638556786 44737911 367283370 440411853 859215681 397666950 477855578 840972986 885573431 202575445 710113819 550071682 775341187 719659359 863688957 96160866 908611700 73526987 518872556 967390800 987395436 622778390 737893326 451696499 936767166 918894085 996577371 279853745 540438194 211947620 554272463 526911424 835700768 690190187 867555738 730611451 949272464 145386840 273826136 825674636 841236335 644786024 887565251 277332508 317959097 960150464 963381218 728270033 898133169 796948263 841966771 894760242 945367126 138273425 662304846 71459532 323990868 475172743 533292741 923722399 960784346 167186000 628696387 809399592 877268444 892706496 917205515 7274306 178122468 638827558 642273496 522359486 525254809 638586441 663376455 774191553 908840029 153181553 697077438 47908174 99391717 330024467 577419844 513668588 533341134 325188071 953140361 406542118 862779956 384158408 549186158 605057035 818510315 858244056 896956030 93552736 940866981 294258481 786088393 475643422 509255696 223308736 336359454 806992580 842707843 117588567 525441874 565363234 637168309 159491250 889954640 631146631 884466494 903418669 903679891 469135851 604883843 88408012 684038105 678618129 997500342 766854920 841585109 321109781 564282145 361709399 649586587 14514869 275652620 608094229 983963687 104370239 930315140 682852126 834273105 155421238 710410731 733174130 944730045 977782974 987852401 177178277 616457061 522931740 802910969 453881695 505289733 182601727 666653847 744385366 975878059 718913294 783159179 553852166 835265840 711145569 871910144 262967393 860554448 66294518 406203706 295459080 641512706 998119323 999662326 711123857 907641555 187123146 632756244 389332609 717492379 571276612 911248132 525647984 736566008 894678764 993265643 797399442 879518976 686486690 945435797 304485981 913125901 634567769 658892383 158964694 498234298 698606958 701022907 875051510 948564692 136741656 515765157 7006632 544238049 527389717 810313862 423837653 586683774 171512669 441928497 378924206 998627102 682832609 999576176 378154152 836065849 917718176 976239965 380820603 452754163 732785157 741628599 312380021 466221036 39691514 207120582 430422150 532645893 18747805 176023040 26977962 240950426 529923665 765567232 700818334 858000286 93628778 930568448 607803101 963017921 700076916 904095643 387137302 599444181 913810943 921376203 256630340 337795727 413378135 831385024 684019171 976731206 58808712 436560330 488096153 562893805 954965639 969063930 139270422 474913377 944420294 970696779 708827964 984530031 327121857 805825489 17495611 328880452 951564628 993412705 23754491 120853992 542115823 891273963 92112160 246761118 767153709 804639628 298600385 931715623 105874874 623352618 202064652 881382386 786450286 812211478 445183585 565721741 125425670 738885727 408429068 731173908 556219590 578434689 605175873 729694832 365965404 706666264 905828184 949239513 381818405 624793739 205797355 867762367 862683660 863556225 246087209 572730098 42828514 96657784 842027870 879386275 923457532 932603345 534726340 542862723 701783059 878770461 673282813 702787421 72353699 491068597 65362247 116029474 506566142 797862887 617451001 621791180 874938616 887244740 832412835 863167011 784301232 841929902 810414788 850945445 773328237 801041432 902971649 972953195 116897435 170815731 39919938 111044183 113634379 860832151 495165608 740038096 898584789 929482525 912799014 962687657 210348088 936499836 837765499 904285832 360030014 889675467 7127638 600541917 453033888 638780547 218253064 493501501 578002556 603485034 435607127 859564655 317957668 709333278 233353676 679022410 345057499 868109756 705559133 936034713 422596436 453450157 989190286 999731454 440140896 475985155 908255586 953765838 66298089 425797358 786136791 967565005 405471432 951270155 388346964 810116120 644111357 724480042 499513877 636598231 988418249 996877899 379563108 903730488 96773861 426757956 296689094 538751778 440525795 679106837 72218391 763502488 781708055 926891534 815567823 908079752 889721768 957960457 352608567 364930129 907483674 963951936 802478027 930549141 175490885 340301938 355978744 849060086 844394188 995438718 81898746 892885454 604353541 789347753 794016892 796687133 543940949 681925755 306060084 629645183 724415409 807351180 894635037 958799036 708045024 858155317 818744756 962727847 674369051 801068229 122443106 411849906 304575970 641566327 780640237 794554378 881754721 905260084 572352069 938311358 320843883 607553121 144776305 887978315 486554503 720642823 717313623 737448322 486466597 493692916 788544363 847991324 187653013 341003698 243092454 976656753 481715872 726400915 646181276 919891431 46332023 626022788 972540722 984736237 732612415 811077367 891572651 914153200 800344599 845811782 355108028 891543996 56199326 168283655 687335136 721891706 887973676 969398586 95714302 678470128 674117268 879354779 759704614 906987958 984185661 999435772 15310910 576675238 638017070 906932416 401006633 712620089 890816567 976816156 116374511 971949493 449582031 979154313 578579772 791159752 741203513 948395566 835968678 871913206 597151521 749716690 925429139 936268715 262849069 537086396 878318534 945003069 665688433 721350345 26043409 127329441 676260284 846339464 265483465 563969661 783313235 790224348 416623803 929278495 555963191 692039191 307526617 639962254 240361544 896850591 396174519 962518134 538902371 772026656 675705060 974892587 236264883 775872422 278956248 852348985 167992831 297088494 924646809 979431666 479040585 785955409 370167265 596217257 67523377 703381337 922160585 966056418 774127174 899685276 537911442 912497810 716314931 837792008 896665119 990978004 424046076 727042906 668998658 772257089 742402119 883243108 773118047 966747293 818320023 951433220 333043884 888086532 267632247 280081773 770844813 961827579 935688958 987380113 98364777 882731113 5215639 701130776 74949137 420342852 852596166 860189858 940992907 952544126 798345077 992402615 670526051 835730572 253169287 351861884 151429309 171311300 531076125 978950560 620924546 744544669 325509168 338118039 692947030 845248266 580010986 732452506 323692790 430600420 956651970 994994032 263488692 304888825 559177848 920488054 641862671 911546530 601262479 609130291 412812523 630320478 156027397 381465959 79793077 497786688 929171478 971545893 920079277 948067400 483646921 636197781 539736080 673743544 236044141 637908652 45801880 622401358 431392672 734211091 20262585 44813540 999906950 999952082 392707426 800258936 272383106 400463237 614761819 615889195 334426046 456613849 560532501 924775232 728207146 957087077 845386862 921863993 539687991 944426565 754423159 762361231 360349446 538506581 566057957 748510970 287455058 630433954 995866721 997830606 409727960 587541328 354571956 934767872 243085126 259707615 492047085 533824043 280446505 386192759 781147959 801328891 969519894 985007222 148953617 379005319 615215303 695644714 743450394 807513448 127458995 170982954 760903676 999079261 115826641 486522764 50061727 772548483 75527604 848998647 324994619 691901239 668873680 786239801 206314788 868143573 967578476 968367724 559611642 679190381 171194761 925617680 607691949 869112481 215813603 614072546 246086518 371129791 214043958 449993449 241512442 248117027 396824936 979141887 99270564 823599340 799022422 832440005 992004651 997489752 369869095 416650364 881685768 977896121 787179691 873634799 651597289 994011318 177345133 907649264 4964290 260208509 520676792 961183207 830845513 986581556 319901701 990170550 375056046 403060653 664374491 957937038 897595331 981080481 57153230 585865709 575359282 723441414 353736927 835662628 979157784 999150703 736500581 808825905 107932458 629985247 330315297 474845379 101835371 584379716 818830335 901268187 158585152 330499862 408752618 787014887 56610175 755295311 835440866 935230271 350621549 655263671 971648115 977846040 98948547 937785308 111068424 477636657 890333771 943813613 309233758 792767235 987338282 987584944 680853862 710218033 48086990 638031090 273165370 297002095 897878102 911913906 918690450 932294745 320658533 415662396 725016850 793472392 87529257 268006967 404797218 849756279 628020701 889536989 755866440 940386177 997590148 999120988 635965710 789989207 927767071 943185734 538964060 899734209 923315394 949583780 264394003 877542820 496624667 791316131 638887799 690750725 231782882 785302232 9572945 431795137 94110851 819241970 482964058 500037700 167499582 393977859 787040992 788742726 386402188 581132392 536052 70329321 151759553 199573666 664548327 762375526 721833016 732549928 437609274 966604177 228498825 821460915 156584218 866539462 745238750 835602235 368892443 901910141 966518378 986305524 910052385 972402857 219494624 951108213 74745541 185636159 427499315 928407824 597332494 930031536 217574176 280265093 625141030 802389024 120676164 729382092 258392437 787297160 996393887 997665849 732468032 734693772 365941618 899202470 92199318 763307547 876301851 907403137 205459979 333136340 630103531 713244949 833120787 986908444 465503291 649975732 16965364 747551823 72472237 747567533 786337398 819279693 866365835 877360981 966440940 997990182 180128176 896893386 621764060 957008767 197278561 385220156 974595268 995157698 139568923 884645840 713487798 835576989 822777426 848972117 988222168 996616848 783970321 821223939 909574454 993258239 758812359 869233399 446895875 497137959 131106912 911980513 293469450 654377735 792916102 838017579 521446011 531990945 715430114 926508598 710722725 893008582 64899289 707632814 812212978 957257146 308416934 576936512 947623282 982700549 590744111 873662165 421457177 687691436 30662706 31878383 914048854 959692201 714470020 955150832 181615239 298751253 84610074 176377782 257838576 375037550 639858198 790253175 276443747 598338627 59313272 210204130 676387473 705507001 787727350 893835716 223884141 500285190 988907816 997578517 751042320 894060170 997535850 999385004 917172627 993559931 683580825 737067728 1593721 557387043 261942744 377165436 854157148 958262667 595148801 658919189 138959294 924571935 450955843 615880640 333906503 804629523 812261587 847904669 480175076 903925914 547829422 796646260 156065967 557502525 582353883 848832994 513809876 797904233 549475822 648694479 202609129 884736339 96354906 509256203 969104499 990421409 8786536 655393805 832809090 865264750 939824207 978223149 838588802 882073892 110003485 828798491 69839782 101791003 964895558 990887462 788286189 821899432 6742435 16121943 258926943 988889520 180399705 746536383 294307311 427250789 893650743 949636342 7962010 12246780 216630880 616035965 995861537 999609786 975729994 984007550 830065880 975086635 266568666 405654836 370581658 562334062 673539374 899141195 416530498 892017335 352800406 391382800 920119708 967513728 720056420 763102731 621083343 840112254 592319258 678458144 63057085 830065098 969432575 988767189 10372243 386780081 8892842 708544580 53834515 498031129 749188454 944474355 975700851 983214334 701014387 721199684 407492101 752575643 873034150 898659246 705926801 956811237 5937389 429595031 787576445 807238217 447601106 935686274 399642075 854480076 984205183 987960473 354860309 631648633 138751708 828387284 646829352 703688858 191991366 788486950 69872099 446701703 57246066 132187223 33705026 790240440 746860896 897121953 258168449 531284579 738182516 925793503 947171766 970363150 821675868 942768429 285472846 438996036 351065974 929260980 905806617 988776140 823801637 962589835 554609830 737166151 936200603 954194279 531482267 890346899 434839018 622838279 936697521 940376561 891459312 895791017 251305057 416211709 781287219 890279636 704836350 756114777 314450958 676155886 628697538 957871975 572246783 864138010 468592923 671898044 569337576 981126258 159638273 691664663 861062643 942705044 795318048 977527844 775451929 943615451 934160705 996587109 772557055 998195716 64507275 793854120 167560623 736980589 145162594 838322424 727835461 911549580 515399754 770783642 225805393 495533605 918177870 990576419 595709793 743302088 748908314 970512773 305532850 736420570 796384273 826877419 547404846 748660064 934195195 983270749 191478205 483140221 298599174 789238990 465309287 610444957 622513859 754267317 170140626 743586934 215401394 837508617 133850516 848819992 200411765 726878458 510173091 578289079 831817215 888776915 222429389 661277859 601592702 863958681 141441683 489351345 74340593 377487255 414854929 697939521 215915365 332023819 586492392 783272691 955632137 968366623 374661317 609534154 344159050 985509217 647527724 760188789 296798350 850293065 951000089 958535663 595251224 975485058 338286735 973903871 570948183 639851518 829886058 894180192 585316078 790997021 453669612 974318994 87950731 647026491 369090070 614494187 685496412 807331809 319327802 609432036 678896189 740384602 516249561 930941397 324229110 553060362 398980651 848529390 96731916 784389500 624370620 748956860 916411256 994350333 283519659 298484489 356223712 372311619 382029125 443535776 50971930 727313846 161159112 856439013 584048384 878102607 638906444 714462674 239084461 772857896 661437127 705990387 228678901 285230762 961644166 988811924 35060733 931882289 321145636 333777167 713721183 718132205 382822661 799437276 421311657 720394108 928191671 981149419 595089536 812997860 151399620 440770538 250983868 305961290 845672343 983493013 869685345 882670015 275017987 834748045 312316453 704142929 562402489 730617935 409663172 980641256 193632801 942069826 887498105 952674147 334787446 948555110 886210427 947852452 821125404 958626666 351648431 629185348 460124980 732894328 16706690 252012348 278811438 612463825 798428762 852934943 834646839 893981836 537372451 556115211 456937229 805168442 491558203 986548799 295280137 551746826 845172133 904398140 481059130 834097947 913681044 936294126 944102349 968915476 467061015 912470914 980889425 983517818 649287336 714931950 914570299 990531086 801254453 991757571 156717919 406719801 96541962 213818728 32681920 812296043 35582700 334757459 494753939 994336225 607598209 828885723 356848368 644366228 712296353 881273558 122535939 301289814 813504421 936023269 23741843 702579601 768523792 941396038 857430612 930070266 823383340 886789132 955837901 984414714 43722468 519033135 543091676 751654349 405076124 527787218 710342960 850614755 86081954 773763606 266194717 778446533 702621575 744307296 331114764 355650205 766726412 776690109 192633408 845475812 993240031 996238620 110713417 455460956 242277183 836351085 533251674 803653071 843171075 932227985 440971838 578122956 393573647 623514027 192735421 466279946 590521604 940932695 449021971 736343970 872438730 974886406 305198903 594910043 153793868 879333677 957343764 964901696 122723292 768657599 240873520 898393369 822885736 873487561 640658461 953785177 202969801 223425638 54861238 147371520 822407343 907001096 132094542 168776197 691008137 758022737 113931415 610361355 831180937 910372403 751227872 789513245 928925285 938412717 996130344 997929629 589738399 987010857 938415213 985925890 38194084 173857993 137435063 948890003 201340233 924561065 445018915 731723627 673393886 821154612 61440125 928939090 550220949 758335106 157393966 413984433 784607777 911401705 670493500 677525746 861605625 965325654 818740192 896042219 50629833 584885091 393062648 599731781 62157169 392237285 881323500 914143247 329916577 666515074 604401484 792200350 708548186 934209338 504014467 547319032 44880928 986453417 289427462 625997027 993718476 997351916 829167043 938409127 334129300 896263805 5115653 734241223 924781531 924793328 543994223 832707473 855428373 925149995 887865724 942524967 894907521 955824961 446352764 981518407 954278841 968324768 338070822 999986886 934604945 971136370 303297365 348963930 352500809 617370948 736325671 815567773 78165100 873366815 926234550 996489642 844833548 962839012 530332794 936002293 539525705 634454571 921600583 973957126 159874039 577419213 667005432 755809599 900234597 935186061 190026965 642241971 76480131 278423568 479357641 629207825 359719963 526362715 504792227 707040042 207370886 622760534 157700818 916448081 510910216 803254609 569410311 653024035 329198258 644377841 629838449 811511697 282422059 650286167 196308677 610420248 314487659 871184380 319356152 555311457 951120982 986767063 477669352 622623266 411549210 505482074 996027736 996721728 88528575 619191227 881510560 933529008 281651978 773823477 234723001 282132939 665533280 686054882 777235367 923223806 485198488 720663504 969714270 999509827 53745051 984906354 100584254 658376889 779090043 867994959 133870092 956288314 509343423 848070066 418371183 629833001 52451308 264987095 779206320 820179110 510843001 629587515 926397572 971549179 602479441 975012124 208884168 578316617 872694965 927580882 329987984 757477735 81654535 797553711 273117537 885071821 612517269 812257587 646059210 748183803 279987736 986024704 898229074 907661818 557890573 907241518 609004168 888379464 96802788 559553014 647458308 752093238 606710775 611990502 950127404 964646654 882493644 901107814 94736868 864794526 165680875 537508505 658584680 838002532 507461758 667939129 194076400 240217966 659146462 977078966 223397302 303893827 426800885 765002535 941292884 950132479 608550884 626197094 657249180 952612220 559381189 732792143 127344166 981034702 288091834 999213210 760894277 821952881 763823030 919337599 321116358 970748309 636171901 786391589 731223122 886261756 241054544 664742022 918145378 945870000 454635081 647271211 853247503 978133789 756981753 808666321 338756999 641416640 242524221 800853187 913499640 987927239 906360114 930501171 905150738 948364962 940124154 998692034 312574758 852963094 504420347 518274128 706635601 841503470 20651609 139318474 354174276 759330123 246425062 722278903 500311971 773715159 348728368 444230334 912866361 990970046 283755912 415370816 404065117 708409829 587576084 658150867 205188221 957382939 304235386 776855309 853741220 987816363 280503195 440527973 789796110 970302083 436932438 478253968 341623606 534055384 890489456 941622042 303135274 801290060 48591656 54102110 316420049 862392303 509690027 598522600 344790117 783509687 559433135 882456386 640553300 680739397 688570911 840625573 26890388 187741508 538176828 992082368 960718144 970344236 321836935 702776994 891800607 935005555 544519297 577798683 573103219 669666892 496843414 825533349 294617953 744103059 484528957 814670422 696118234 791583604 743046774 933705314 427243123 618161018 509379860 851376818 166413647 835330159 796122300 902035575 724482157 851196256 418496470 593303582 571918772 589679262 165439048 910582071 193713038 775316192 587728685 716531061 123793241 700604547 953770451 981848432 356725746 438396686 309249096 424005719 711258095 836623692 887814135 890521930 526631031 914718647 424044159 948609534 556463053 748481358 566714135 986038157 744867471 828131982 606216088 898718444 880978976 881784314 415258810 912851516 447759796 745706584 974202043 985388557 625948030 708300858 10286585 178048067 406613176 441344558 421124186 902350891 988934548 993247562 648636974 870270233 236799751 970827500 778124384 973468295 57458942 251511651 940065985 959540965 152175656 266217376 463822472 573938118 762321360 855091776 948811909 975892344 95410465 264650999 736351142 863517264 177391649 738290137 586220586 856608148 955444811 974434218 153050363 661116370 845219345 937791742 305386459 549259609 895595241 998225396 800477370 840670884 228482869 508640517 471889682 880430586 544877456 973187626 971055833 994959467 750675598 924544081 430183591 544256608 983163576 990589106 938692302 959750812 162272434 296958788 903793441 947223938 563487328 986085399 59146558 76158655 422888550 617148600 233617073 800161860 9369047 492981375 260418848 847511111 954757616 989333674 158638672 940629817 408994705 962966050 55149349 240604762 895261898 944843070 349305376 549782601 619199273 851719306 467355552 753955045 373529007 795259517 119869619 920931366 663674885 790675480 519983425 749959556 674034657 985818081 849577096 855306877 734741797 914298549 706981110 891685121 367350254 987490709 871743971 919788618 962036106 974527386 41438318 432381611 996692038 997782042 104120819 428142779 101136834 828725276 992537509 997269817 267531136 542449119 428281934 813265576 35738494 360073676 132371245 585409645 868624465 963080882 165625113 413580894 87871822 554309536 847663131 986216325 545438496 750566601 308149652 920057751 337322297 800680435 924769342 998720035 220678469 386217693 921711816 964167942 157089703 908270392 85452409 876213208 833885637 932246056 871577243 951264556 855020061 895247044 710287829 857306075 121655687 400206971 356460998 834594856 70003319 445793866 146022155 576992728 395969771 656722282 333459634 914686913 239918010 660368758 726115633 995367598 728663850 963976699 627204761 774325868 27129367 320515859 36293241 698961160 261736720 454292770 724230244 799908579 774153961 982036619 790637661 830935457 146224600 206748057 98981128 933892360 753829800 867099594 799995925 901856144 228493018 862087984 673046597 707421007 543457344 938429941 702118438 792942930 626323678 938521113 472187168 881959209 865405386 903542941 389828175 424448974 597165533 807557805 791987908 850445155 281168836 799214282 911710210 993286445 692720650 935508879 340949143 489740790 789694192 844409719 942057570 963727221 499180752 788506448 968984569 987697131 978575258 987683625 270085983 982154840 315593603 445933820 535905673 781203060 795101266 946976846 969957514 971136511 794318373 839166243 501248220 556381745 784843707 886916032 338573937 833791932 43967704 130993781 883296114 995080249 190284058 677697265 329864279 998117712 987812174 989445589 733215769 797174239 361577628 797762876 188868719 967788462 995428534 998177655 814451375 938972463 18966270 863931083 728870955 756629543 621127305 925586548 418418707 793086643 447339727 563993692 626602687 996810430 599011058 995771493 909468522 943984544 446804909 550718607 811061870 841685145 221373602 668982866 853666900 978226447 571192349 594774223 690757807 717498071 531241927 591075444 820178654 860057850 540852833 995415297 473633382 930854496 904889784 984921912 542577938 682506290 407978263 803204941 687279655 827152417 790648674 994728027 602624822 667538529 819611173 895240585 354397239 549156577 281200943 906220939 73175478 681448457 419350247 945787065 616021933 900580618 379108611 814065474 669412203 703222859 46465098 743264823 959810203 984953987 10646442 689618736 72202052 376661400 631496341 898391716 288267867 514757479 511390873 859062077 2985932 979552570 76598617 959096662 231852002 733233575 184206614 393319539 75129685 487607177 382739551 774641786 372155036 718952152 520429717 644008734 21232443 761989031 461769289 634318112 981416610 991488684 936297474 998855123 598900076 835225230 540086748 789391740 413364733 816261713 346662911 564622083 904132767 948331957 963739539 969200886 98943131 820673136 75824846 356108765 880853595 961440164 228373862 944417145 552916003 787051959 233191387 528247968 269508742 886348096 521398288 558848357 416931426 824222585 657513631 952414475 575706579 969237704 54144035 938430152 901413940 981129554 693608652 865434060 307637558 478122197 652099765 774109067 73053428 242671858 361118780 476492076 852945509 854006787 81399611 707398952 56017923 506561844 970918203 985495196 189974537 878796604 405528747 753480003 389407766 449376719 654445656 998310826 157680294 738367560 720636264 747522340 724279567 960744161 601007581 717545141 909204023 925259517 933036847 937286778 367927818 385104428 989532689 999478622 769298063 999336734 962123893 981449371 307723647 404085364 424725953 476273113 388943582 839760595 276725035 544881755 759193281 963664717 243512450 572923670 316931118 478947350 924275965 968932942 783259247 802145444 124061584 553595296 623139701 708168564 802952016 809908658 887575341 990589721 350157050 403852044 528799228 763545136 343889578 682077674 841293345 962901701 946023534 975904115 92530119 935548462 410532015 600457997 363253730 368780856 379619615 875718171 148134350 163272001 398373911 757774929 253349550 622896456 965544443 980331096 337104969 651394742 280771607 804759958 457906381 658008511 772350707 953871107 955695435 979738095 788145134 888493850 523659966 741575607 111785556 739597535 750320911 800664522 811713125 956755481 719897205 858786419 30586284 829769056 799637310 915011774 240726853 529021037 999994866 999996154 442073829 600258781 878203065 965451334 959441527 993488432 406357604 853445162 561217043 916811178 59594839 407241647 975748358 996408011 187733581 613433069 98801909 789622677 96256165 641190224 193719167 336400797 233374437 247525423 57532757 983126699 694806301 762480972 426190245 735240295 546208561 705094168 101714140 991954011 909501789 916311772 803589398 904030759 915532055 922468275 361628537 992863360 809735853 916039289 609636645 744536218 463636264 537385540 13978075 945472978 191589416 526642945 842339649 891258499 521245709 936198389 190437173 405035718 786544639 860761637 167275620 258845044 915642552 996142782 778368090 826176962 242143792 571200317 112340977 520679637 316871010 594856675 387408669 726956787 849040469 888341619 772851038 990697164 606548831 692527417 625288472 770087889 134818327 404394661 428817726 911596353 586700883 784561381 186851433 345977414 191738250 350509904 164734151 806767190 458871354 671592450 803899402 936240212 980030054 992027997 487041043 705048371 136607999 969531931 691811050 889543100 626657764 690482713 824815387 829285163 798372530 864453874 968832121 970458858 691176673 858951159 487665635 599202540 285106983 493667377 462452176 708300582 93411234 757748140 964859045 992275394 656341109 783436446 117013867 775088688 692662097 811787051 438383379 873234146 418001981 447028922 71297060 583366306 269839693 622294278 120142193 459837315 286954799 660058465 200806194 342767297 49846253 63113533 970306068 979478565 570345489 910739995 121015966 523498508 120029936 162670953 410170349 512363141 489193478 832382013 952437072 975247184 766370066 918343714 254932292 532320969 583666752 595206159 892197601 951620869 28761822 370148384 655603956 771825217 521105382 860287806 670124197 846745048 522870649 998100259 55171109 658882021 49978841 633192063 347539802 881626483 707541960 969580864 120410190 766973476 764690216 800558562 64208371 317167819 333584107 452023218 127937913 975193294 123706331 466909340 423201771 621498276 383415474 614313068 532147002 906944568 786634838 899218231 997577213 999522317 780601673 983533322 384150459 902864076 972747840 985242920 533745404 753704567 225758691 238111194 198189259 939509133 996350772 998301963 261296458 451754888 233421835 365457291 627561076 926334583 354683261 379146928 779329971 932724306 895476524 961223708 486275598 769653345 175755158 602556718 16684075 960699024 514362061 973890522 40179870 383669283 875604815 902629770 917780632 968808562 965468318 995964850 656648825 851957110 153399978 577918867 104615746 276993679 906754394 914073490 983604467 984479099 86525343 732792111 297400504 579159179 698843154 917995701 335069157 537584367 673178212 914212352 872670989 892858814 706650508 924605482 234721792 344447207 444622977 942157611 899017798 949053869 794391949 804955424 947182902 968759603 490518370 827157359 598946135 755854358 446592044 648115202 947261121 951837023 931362863 940334904 420046236 616164915 259441358 697491277 930651289 995513224 176437214 389680876 151452377 643017643 341706499 749712819 319501811 437675479 441971863 553847013 436214892 697465044 908951240 941918848 799620917 885079460 526692037 671450982 397216089 494148579 603903268 816102118 80633844 618361668 581636865 684097964 806759588 855789371 104772644 875035657 452422070 552111180 185883655 812178846 817747368 986659829 249031381 707976576 674567757 814821937 828556350 937918679 76033117 271546555 564303059 705430891 303933842 458739390 292281407 928699365 498665006 740783630 908080016 945299002 388528346 755942767 62160613 553270675 473101361 873390335 289602622 707965201 356062944 641143750 981866748 987278887 37089948 60411512 152425042 715830494 475678820 686807760 901325255 910119321 252340588 469872405 611315676 705220739 183275499 609988273 663841608 754610757 659507650 884499209 543039610 786676117 495898464 869796473 285075811 703112898 201778496 740059965 154382590 425640933 943244117 981849331 236585537 790783463 690777453 925045406 604676165 925024487 496038373 721008950 53422267 603242782 420936480 960403927 19704243 571296370 459574752 688777506 974654157 997113192 106270042 800289268 639173823 953529958 827111697 913377124 963441519 973531069 966668181 973416245 12123582 358541259 159912420 334044733 44335414 419074646 962497405 975572190 869102048 935001019 901977943 915194619 268363877 493917810 644692410 780324890 641471622 917615250 584621375 767282849 178184776 795978184 443082804 766338895 687751779 772208930 811448800 825676270 705901236 744645219 609011848 744006524 984169293 988041129 40532523 669582617 59120945 631104537 380236516 653038969 505126009 927216998 792925169 932896929 650111 59169545 587820468 963628549 207810899 784374239 642754527 996418706 594543788 868618464 660354077 962014363 9603366 35959137 691479664 877773268 152904183 939511149 407519111 621782924 504095850 895697214 60752023 273947747 827528114 935735692 634737074 876603680 135050321 686281112 379069037 444810969 146403405 330932445 780199971 785437258 847870990 938804588 198067111 441718277 878382502 967947082 7706676 831589937 364817900 958801507 375560792 862896594 115397147 589062368 386737231 928639236 780507822 929799869 93519057 128450522 913603294 965441591 161105309 663462564 620273991 777472817 560258627 713299612 945157158 959479076 85887695 694200876 632550946 993264737 474934487 595229923 57662341 721042097 372061569 604983083 823117977 978094465 23872269 734713815 282405203 982379769 64055926 752296310 661938617 927070353 144269848 421260402 684545263 691223856 128227430 261643092 833546082 988113551 436091033 842380168 885312971 896314129 608487681 982302444 929550118 948539500 528218582 577699451 798620386 868184426 890180545 988036000 969361649 974386789 881279273 917506624 523890494 809188006 765103156 792822757 447802436 897277970 182147126 884039403 108878294 441626728 197031399 487207121 318663128 445810293 163639527 516976650 428625293 854806381 275042746 906120869 600689143 963384778 294904556 873657345 793776458 931463525 745439110 980181664 428770446 726549390 533525133 694627782 288854168 509814573 836922277 975891998 771555432 815667738 542305065 597703459 333882951 522622693 656813482 873173364 743136665 932458945 92012972 157543357 555358449 918490474 552986763 718470625 635277698 801984607 941928255 990220332 712346999 746147908 172525478 962530819 503741334 936371220 459224619 744548055 274828253 618335572 809380433 860508353 538116385 804687313 241455455 626655559 152418395 361447226 859559858 983784237 916717381 934517497 383137879 986879821 300895677 370568260 826660530 946659654 742348708 960214738 860864941 885258491 926025549 954424605 826821248 977183430 389146010 946952324 546061956 951711686 237775116 350898666 254849335 847962454 503324220 669281442 15396878 919262317 426940502 590732266 720056116 942961399 117379985 984453765 944147702 964011020 691773153 918729050 108839871 741151592 4998960 809903964 873703098 886596045 341288126 831089203 612048441 732129307 479524856 579210787 183909695 223270204 378702066 944290503 532048536 817318504 844672462 899710867 708300460 745337752 676851122 876159541 292053188 769852315 506409257 744566103 602260724 772292504 471999292 570841084 354892519 611478415 808201324 928856788 410535489 707857449 924213336 963229302 45381059 994609373 282605525 577373777 694343827 792874689 170158485 786709536 588555909 850169038 718813317 830879672 710652029 895863790 334365071 916715337 450567256 738156439 89297010 551712233 12254954 557123095 557624811 613469553 986128200 999500462 991606486 997299747 733725115 937406915 653033021 665364492 875808599 881820946 516730353 973872521 766469698 892037818 401358854 567906146 863429977 953108790 259525749 307386532 26528725 581036775 213044757 360188160 509002858 715035892 614969652 774344852 953465353 970085439 658870758 879115778 846375433 905922124 813894209 964964311 408833079 774671738 105816910 484049422 112022184 840456136 789534814 859737721 812750672 836030964 575154087 979076473 890659256 895867767 600020559 906696243 346232038 366999825 208357851 914074889 86799584 705999514 991416444 996592374 46904539 517803901 871862480 874820155 760089748 857096599 172898371 966366967 824364750 863905462 859055205 968685079 783850103 850113644 194595774 640043474 295332217 551693724 895223974 921489377 621097595 800407837 390861815 944827845 27211706 153320204 380195423 850499777 776698309 803135713 978021946 983634605 885929249 953973059 486969114 514888450 891908402 954838725 554187306 864618298 184399578 288205249 318197205 343493885 761899505 974384015 521627336 634309035 813022481 847194533 669119026 815171134 276446463 920048674 55630226 800156781 519292334 611484756 481811786 584174722 744414941 758861934 139251163 691882840 91550912 548322027 335024811 355697756 729733412 775657001 203769591 346170392 180183706 344408624 189236930 821368146 570094290 669823697 868111588 968392649 871452231 877927803 972875271 985765162 438034635 990752423 304932944 354466048 63229639 213788554 480421682 788119074 250246576 994722812 565867073 707375105 930501061 997980091 210912112 450050458 842445327 970768811 564610113 963777762 266878979 482051361 695844703 711458674 232441667 542758340 582675680 946207498 689815000 996105587 898565101 950018600 616476364 938760416 250249107 330563895 494615322 951629599 549604297 951379954 810343006 934937234 471401586 571677798 720564335 724338829 33323080 71982181 590322994 838089297 813562044 867661602 789759325 877489053 992343161 999974234 636473788 778313188 233186295 927655165 667691903 972208857 78220668 115172474 581775318 931023682 810919320 936985086 379059056 711423129 800976558 889010144 796382698 996354930 400179621 847681055 122364221 566410240 76290061 672341413 885362792 914124100 504612715 979573571 174760713 810761430 603239866 889459408 566352709 713978746 913169551 915848089 940828880 940899947 730569561 884683507 819737300 839512635 755167346 928984808 24425663 81990758 602028354 624411374 129020425 830977184 590375343 597234894 669504835 892036214 389750199 588609015 451776871 731877099 749470128 923294075 289065634 551380819 567806383 765675844 984685384 991051951 861462876 901373511 2589597 677343438 3649226 451178952 456363303 989486910 297719473 811082456 177805976 550044230 55491167 190605865 12570354 493668091 1864061 728683078 868789786 915369751 627305697 651747743 616223923 989036403 133943900 471971159 457187591 749263436 60502258 466623665 553832473 974533084 17663454 969143801 41078756 949579016 700038405 890032704 710707898 841248759 901330992 988536490 221541102 380768185 340424256 434018795 892642272 897666831 476148280 612058872 610308438 668256529 104798605 387411779 45177055 778505836 456293373 514211950 204635966 593707030 686342924 892177656 12644740 391022039 902804462 966110799 67223287 429346582 229620025 536641105 532100670 560370387 535320955 824988736 178947342 397665447 159368855 462061322 215176889 277939258 144615571 564186522 841705110 927187237 171206062 870938254 643900086 862632533 740954152 880912807 348400705 552885553 662609863 764612163 13594160 274957986 537870469 868377815 980329058 987658579 524509222 909367660 917019271 950270981 461210519 945973150 224603196 455764089 216541842 493978333 240621221 441763936 50256798 752539695 140249625 569805225 793502913 953671238 317931318 798083706 481836069 707018739 11886093 377777101 632475407 761856903 478624451 613184995 635964928 856396039 652281735 737267267 296349686 548624227 472714342 792582560 134186706 332771188 977265902 988430119 597872271 607036961 737484911 820644033 205846177 941384265 169054395 841384113 374864881 593578015 246981631 784184424 24432870 938539397 12288221 894173217 279325949 334345991 624252329 887279256 672679233 941771131 559136426 820847501 901451145 973448349 159435463 911523274 855809109 944997028 203415895 442497887 193732677 288191480 141885434 296586294 85243931 216047329 216719039 929934471 283657586 913495632 569039152 835288490 383591872 812005342 483917422 948187798 126910595 193357584 983750414 994199686 40843180 43200241 46547302 356812668 968706104 986362083 374599531 677746367 379705970 859501935 169614471 429162200 170110398 516252793 222293992 328851739 287850517 418704366 745840846 997059564 856726197 964217723 889052027 938892788 568923838 639801307 828635083 998147085 248525039 310075620 208628365 705657505 500490775 704939440 235509441 730031629 880244362 993516965 950688201 988180912 115602926 953103147 672173776 943711052 684936401 825405404 661093719 998597105 619906634 800221677 617511859 977881140 395299108 408531176 833989564 848909029 610640917 655086467 747488767 897228242 178437725 676688423 284580778 749736283 740609518 977129209 154971968 517700169 966693505 974571566 832302204 880270918 656646789 848486359 716605759 742592577 704380152 844351936 529222424 953257282 968224335 996031721 240376386 506669893 920335709 976384958 265202391 429372865 729230705 969995441 260301547 556204635 645823133 683710260 509065420 750778059 252102435 704902704 324572880 521467449 850137290 866679968 387861747 867126236 139835813 226181819 882777737 979973139 939878374 940976241 345299398 952019144 140775896 609467734 498402120 552773381 539256139 589463972 100328200 833961355 319788306 506778874 696714621 910619559 81397184 187267331 684098829 758940475 730420399 824834660 919232158 924488249 272051256 936909051 840600452 872103767 788852495 962658262 665617439 977542343 388165984 955332567 547395210 634450419 102148611 335540974 208511462 827391114 237681852 295004021 655185483 916873968 159758000 562417288 631850429 638004220 954320570 989268780 544647554 909123104 927503541 952195340 631305134 822462451 877697337 896193555 44345114 110278919 541573773 936638638 450731292 464353355 6714565 238355814 219355486 360559775 918948798 969133959 651895119 894215528 729763700 957700206 587839452 594423389 472678061 506713921 708627159 957245289 848049535 939756875 568059298 889025288 531077489 989582499 772233519 878767499 137623698 740193220 608266375 708441688 765209776 819053223 935873589 957487338 599724665 778262826 576710253 600805407 33496727 540868542 638565949 733624014 636784739 862404633 564649726 764805821 832216479 956026768 148105749 587074083 493433999 602644829 649545305 843541188 509681247 623405543 502271712 670967873 519223933 900903624 131027843 977454111 331869282 987215703 157469398 889192709 595204422 613379180 496611584 553802379 938339398 944378321 885078866 944393461 137814494 899623483 468082071 589775723 782997640 824529101 815774421 886215984 713432868 946294144 2416290 187840968 67135955 825765335 751864268 917133734 505084507 636349850 49313754 439209081 55394714 314129408 731652029 781212497 392984284 598774381 998936950 999365524 29254409 729599989 949583015 996738489 498392378 851696600 575731441 741132402 732288852 744324634 889768659 953782701 42522470 71628510 85741053 714862181 424829231 434748259 408666378 964532481 337166713 636495917 305302964 670438933 848746770 988527383 492597124 905517558 915670132 930596268 742186878 888426695 719309990 951120072 786213978 970937949 482476844 527376861 91748583 385073177 106607415 891111710 533840915 700386160 584029389 832004179 252438804 387894719 42117965 852660334 473829326 999996809 684860028 942700330 417219716 714225916 917323255 986339252 772473861 975450686 525217605 597846682 302901463 817815917 278608837 931027801 688718073 786468215 830215097 855208547 290112709 817865392 807710756 880181751 534066715 577651683 606296652 650140137 478091978 895714481 264206128 277432060 274775840 668505036 218811349 678655984 26929083 593281665 150638120 908821600 596775871 745611112 737353012 901468475 576842679 652054807 37799761 698916467 955729638 982291354 639382444 714350815 689166980 854338055 972013884 975511832 402618162 687202297 788812321 923106501 577013267 890490963 408799352 435646948 504563468 505081162 914054720 945956874 714083100 932359669 399855085 515484647 602074949 751445383 34250559 878846671 686843252 694419452 393678060 505654477 844588109 868851520 207930480 342614440 573083696 878863716 587460671 901644454 599189201 795973713 111028566 410349485 172669426 487832076 186546857 521664500 399922308 710935886 150048679 159782439 20765971 581530449 158141303 450794653 691195172 823983304 444259015 616740088 188582123 503192938 506860447 909150710 709763173 972904279 443959923 587048653 538211217 832876169 141297419 738289925 661808868 940723478 392643918 940845833 561813952 953865646 415666658 789370412 352889304 757083806 23846087 49557764 180977988 745375838 454655176 779106544 162825272 579772172 66045541 704820737 238346759 989800060 7982121 417351675 581982145 777948496 482878716 778308795 214296251 812986698 906349920 985805571 45986135 290377089 921729897 944608834 706381044 774412447 27409230 41742286 139083610 240720395 742030900 909106620 761993099 773342370 932139402 973688194 701126940 908082169 554284067 599365581 365658391 482383382 291460772 602351095 563006656 702832203 758439956 836350463 962885331 981173004 931874712 962513526 891543734 898399993 638126489 677209218 651498618 653937850 397803145 924646522 283461333 891187790 582468311 607011694 666501143 942473991 478765260 863977070 207356986 743617139 749908418 970159681 426868553 761609992 208553233 917973370 475925282 693469952 100780610 794792376 19519462 679067913 175619202 418333767 572051820 594594854 789884140 851104617 825192381 851961343 653170086 734454041 303935204 545941118 163819587 521773653 995021132 997616221 602777597 753579812 957192186 969428371 944698821 983365900 100983068 398837999 715737167 845267518 453241362 488305928 929423734 995213502 680833427 888596043 313882354 603106473 974652067 985629888 575632681 781989459 927404132 985317405 782754951 911492410 979031974 981181129 377912494 400860272 115421480 711133222 272755459 818346977 781367802 994416699 901051431 937318700 392115722 846125261 90398827 995105963 974017596 985938230 66312699 279479751 163059086 326693772 251084312 362587999 338557578 781817957 39467252 501996173 755572926 912895975 412115862 899295932 237077799 317931393 734057119 970766092 609504134 925315937 1011837 158654810 325639982 938784648 595235612 869101727 121590432 504709256 219894054 440385150 988550644 998506951 54721440 500128876 856092325 962161865 944377690 975153483 926684426 932046191 188492207 517888678 420326475 996023880 753516753 867692628 168898747 720831229 569949214 948558476 59184429 544705134 207403874 410519032 587779349 905841815 58338267 699556305 482516659 877930311 793882610 977992474 12159300 672819514 670897013 715734777 923047908 939452374 74313874 519593162 750412497 795770503 941746061 980287166 487221175 898432012 206831802 843113833 738262821 864772879 762710633 793665763 186154383 265291867 945048364 976334726 479593975 490155693 538515900 891958230 953357802 993588073 933403360 992877359 393304295 589200239 584240296 639573886 139702568 192513609 543615079 679578382 754263504 852309205 330365086 838952120 231986159 271577752 703934331 785888627 924369089 969275390 343740524 354415041 574429734 982792467 628373877 709546410 932750494 979576081 782348572 836907154 160845576 373633207 164017216 985061466 339597579 495794122 561032801 719876506 672449943 702406553 39666612 136591442 983274884 993825360 466893463 580510445 678399145 978915446 792663931 944400421 682907767 788805867 479025219 826678871 718906312 731619434 238284850 289221606 794198579 900279179 980151328 996457465 276189794 345551572 959542528 986183036 453787470 558915109 310536802 796450932 250431530 394217613 40513290 418265154 946902219 968367434 679839455 923541237 361008731 663716119 425652842 835774870 59671654 339437626 508591335 990539988 211958076 781248554 40999456 602899739 854322643 936375595 979247440 999187821 922293335 974399450 674158124 832553508 667699069 960407078 553675212 862830043 18066734 995738753 726120244 855929343 609428716 748562356 818361133 946084180 228198896 288888262 442610979 841494698 877247116 970627861 523766591 919751988 14755976 412864177 843073826 970760426 475555703 602274757 331654835 683204480 440346825 754398443 884792742 913242559 755969644 929996223 477977650 938079152 781399135 980585243 386173770 730413205 229278941 292307663 70047606 74057255 122336752 367641706 15065933 936295513 792979565 832968785 163865429 581835864 346357844 932834823 541311775 600002337 875338348 924953110 94978248 587195199 689509046 786150862 987397708 995138112 819192134 937200259 553595203 822553537 487911610 863875893 861802247 932681669 245677347 464519593 243340520 976516025 235495568 478335749 25797392 90568941 566099607 810339452 565005113 834638829 45812819 977270750 423707529 894131120 695067983 847340922 241886946 679762463 826051585 915772944 986617232 995819556 574440031 722790548 408415655 826524279 339845276 522704460 288329961 996885102 595982216 645868057 828952520 853451171 757371506 801641775 659198923 929304335 295132757 672940481 456080297 556237324 169946394 468658381 163863725 919997470 138359485 328900475 404587345 636907298 61217860 459062625 200669895 422095415 26998426 230912532 489672267 591513647 201057472 305274254 971930346 978726593 775851303 850176445 396957647 675555194 949510795 957333244 463360377 979529140 842683008 892966179 130585198 790134411 246429593 828282121 445751272 719991158 386157730 649537272 822133425 870065017 908318742 984384577 68880571 896262905 63037025 142525785 113623583 136336455 769244945 803075058 694860923 797968234 984124155 999059463 717454665 931743763 516085040 689734659 393683063 688698234 202319528 492519366 170376436 563547864 947734636 954454763 357565723 913497940 731976882 844346321 176034025 679555859 94300043 508514989 474593324 831177475 328305951 375102132 100818973 698274462 927654765 937923222 43909496 915464773 946848792 998594098 434020858 614448443 873177188 941294782 437649499 762934151 972467370 986799266 841740746 877244402 528586296 997056532 85176655 739866834 778423649 835603921 717892366 832772166 719682743 782494003 622975160 651797766 516595695 974773957 560580000 568036618 32457921 235423984 151312511 489992183 755789448 950111773 232503904 718644090 823811319 890192397 892747130 933555567 274530750 801210296 911748963 928788781 905732461 938485202 163771203 550080221 695304317 865335471 731759869 923728846 778174899 845825112 517218761 640958010 845255202 991712884 145920186 837581723 591096162 782340541 520084127 553095870 403100874 786280271 92630801 266236022 543739182 814572613 800592248 822062864 316910431 678227931 992196135 997322362 847885826 889821691 199086193 750919521 457965359 860990609 604165077 887953272 922171149 951669039 216093903 228951349 724608854 789252182 159266035 358618294 357363979 986883459 804696833 889094681 518886871 541899489 915622576 969799694 600362549 873690319 805932509 908569849 381816097 383264638 866280156 929774238 679418783 756043814 89813176 593642517 53089877 655495262 47746863 667367526 855737467 862722214 783431368 820129169 482567940 674218360 291238230 777226773 785190954 833599164 47795289 722287391 495826649 886656001 935290684 987383100 215583402 922298121 213631462 327421786 856262026 901360351 443968763 629007078 702006275 970352690 63958000 285005861 462370170 883414620 308386593 908868751 468911902 766692695 115839229 442338940 976744075 993975211 490258560 968574259 7773668 259093446 900977501 952955729 515853120 641774559 683867986 769706921 119353625 828309239 232817490 872004159 324665249 617147738 926084081 952513182 228467198 587894383 332148695 876971721 908657400 993736232 31488740 275738875 602222740 650393926 205589107 820334699 516972562 843090695 632570586 954585533 164072554 199412706 907035102 954728300 550463872 691949504 607393613 866869008 507885990 637458839 56811536 547291043 774982838 809506284 776926190 916610908 70330729 419847777 650756572 663648010 824494060 896451686 809388955 980831544 679610792 724521468 131248977 465339510 640989491 974317445 990048124 999254158 844109602 939653629 487616751 985523520 209116591 434549719 175011511 716651546 238345056 650015326 805568918 843039361 794422580 980327100 798218872 849396373 681060095 745415204 401923257 419045842 551232311 607370513 539106072 884046626 114220939 465156970 112884409 166582068 588595330 617336066 111662186 841103523 505763013 602477715 33095333 178621640 199567078 427103730 428261725 566706952 512179679 637825207 298882560 541216585 472889014 657053573 18378827 180930701 6594484 510826095 288921563 764685808 137267776 391701721 12192863 487194652 871772318 937483298 187065602 788134384 503030699 572288511 277911223 625838318 108310419 380620763 666438922 916631182 921495522 998455909 579252930 783821630 382718320 454191173 528314700 806970227 187778505 333280803 601211293 632848047 581916360 803763232 365648124 482149917 285862140 721812500 660508511 958578375 542265208 618092233 789697672 835351861 152144891 932817872 163072043 189728763 173006075 294986947 95697449 505829291 261703743 343458713 665118449 977668282 254647062 275323656 235807488 447523104 987551948 996778008 619832966 706225313 600341893 730370361 223272239 725393109 778280175 879226371 793427574 883191334 731033053 879958774 82255410 226823592 123379220 821844221 772722111 825120929 335901721 404450483 521607668 582231899 592893886 980736055 688163214 905082548 397185813 908266113 678574667 965046921 564744894 694997492 854493005 904627930 498899203 689897914 557094964 972997661 397301733 844694818 661166881 705876443 457280199 880575664 541998476 830336249 39622999 482321755 52940304 834204561 719380123 762445647 145384072 493459867 780475489 806873260 777865107 985593362 247282052 678453090 866149941 908312162 328121230 623954815 621189145 790232441 12562992 752858975 985219639 988471785 900711549 999945595 444531755 863449687 11669922 860536560 926207205 934200104 655920439 656876600 302003672 490270740 657899916 792539817 68193253 613695537 336741807 941229923 103296286 392867871 779670723 928849165 8819017 842487000 581993842 884500119 517926909 835395129 543742378 764823652 471847 714774228 767332503 916338352 626517676 632316724 47769564 837194062 439479748 604546137 25839357 729204872 7236310 884015205 72166126 940649350 142828608 297868009 627903341 951774303 995103119 999220834 997824088 997943209 182056554 695583435 303791190 749619990 677975797 705895250 392176214 570504063 574171498 684021127 129719848 184231477 692770452 772845939 117557357 797435569 92215996 145531971 678796081 952918310 960185964 962802864 935822040 951068771 510314524 940227376 425692038 867440938 544250025 958441191 868793945 947927781 917190589 921983995 761194999 917119024 283415112 714726497 747337749 884932660 782758830 809452784 280155541 721854669 592932731 793254180 137706456 428787733 461089707 638033792 589721471 711427263 339099287 824774923 13412375 700018520 76079996 868758241 382052412 640234830 451001881 938698297 499458352 534853207 605606217 844350164 528588152 590034150 371578032 816301435 936963432 987465879 808757611 975101651 971048675 972885187 451696542 978680464 362480361 860517662 156513666 407006803 142739833 278438367 278000886 462008280 77688532 182193247 830421955 982308003 392501848 497500912 273192536 560052964 606900030 682643969 352492526 926879007 414140333 597626517 350880335 475276900 864021901 922875640 782564860 956588846 471139820 836825804 241633787 658564845 345977003 597133157 875127376 959541047 279118087 941590442 814941810 939591306 297040913 503239203 241720771 962640248 724334497 960467894 558737775 633509750 922342756 970309460 735733610 876978267 282042777 463736844 922796271 996645131 638355379 902262149 459030677 655530416 225842081 754179787 720829752 852687354 233405523 408234753 626619654 912369666 67411791 932896419 464676236 703121621 228262932 651020628 448720904 662929907 899740588 923292578 262927107 885593792 295249049 452771083 371882975 958910341 474166029 859269198 121589711 649482460 401712214 554744046 132230572 177057565 754827031 964732342 853934776 993919369 197877967 198388649 83282919 686613307 518656564 740966980 168723910 416416285 382657471 715156486 883392370 950341346 365415544 566956604 96229268 707452695 748113821 840653525 411705929 593639729 196730227 600417601 764064644 835701128 926031457 959820990 969542242 971244725 989227538 997098885 493301462 843348000 198836974 626201356 391414735 777026366 798507200 950297433 852334823 962818351 83869510 988979889 468605398 637552334 646163545 661526180 272798538 930181328 589139573 886824247 132728010 691735175 797656969 900910901 780646153 894971288 962287093 997555930 958775362 999054253 498097332 590227506 555829008 580202602 644170833 690874825 898777896 918786435 63969867 236170625 864023379 922198393 48229108 582678923 538183780 568280580 396338201 733822378 999566936 999581217 712166209 866551683 91295527 559363168 453084713 481293619 115225591 601290273 971170687 982508288 145179431 180379704 788234595 867020053 773994710 954059002 97950648 360355599 706578881 739295905 947902980 949901831 347509673 979618266 464372381 851449886 497381771 699630906 753733184 822038765 962707043 974513322 481344126 725123247 150046458 669197487 70197123 146862968 472390588 771930522 700784084 968535541 495422404 866724918 979189675 997857204 162254170 777864460 447370915 675343043 4868163 509591110 285090963 750914708 85337562 775412433 480809778 806845776 45318466 895122538 327501022 522007054 310837393 589844084 303756256 609294859 969436208 985747152 885049077 959075031 193541356 215942985 482164262 687672249 824561098 861822139 36001118 57750595 701004894 780037565 712584750 757409925 808897576 842519927 57378032 783252985 935074617 947719323 107562904 460545732 202832973 876419807 307676568 519706216 4170520 993042686 988480104 996705261 149930974 615640867 107129776 642050820 115943927 623903224 37514084 952873986 776863830 913910253 353982244 571604446 522568470 604005075 351315246 994044660 699706591 938461298 617647328 785770587 768247991 810596482 865838154 996206140 121422487 368662733 107147550 306943292 117598403 457176154 550815039 707478961 57706133 880891264 626934994 659524928 471853120 475423688 23680494 102836342 269450932 678507059 845540148 922718453 5560461 407223864 761950908 770930820 128427913 386798737 314539412 807435599 414925919 942596550 263313801 371537705 765854321 993822487 894109676 896174772 970826508 994822608 405877546 805935173 856769952 864377143 171522377 295199791 19789447 306261896 660081093 762951010 529706348 552834486 642023459 935119137 622409977 917227813 4491754 419800804 315424387 479345824 881880624 957094321 623995097 934172080 316172189 775681005 381865991 646436924 35490422 372043406 932482680 996563543 6734065 476019080 970160623 993855705 727302742 807335567 776580688 837853441 216565387 771516782 89190762 600596361 812119037 926023096 371702480 394054881 543572907 643330998 458842746 587908014 786887657 822536616 520437639 593119158 31944193 133554882 705838536 910473804 411296394 458245152 491363503 563678351 545506559 841326742 422962859 874117549 844076755 856947327 574228010 922025519 57873921 341508280 216448442 779820942 537754181 589169314 482070230 827557398 868927077 992766454 175285154 900211394 121409830 827295331 802736442 843912545 893669671 941904122 742779524 880583969 936422413 947787939 255617484 289732360 427241086 478634562 251367489 276216034 73546441 225323610 864108752 867698595 898675016 981183149 848441036 893864260 29454627 922185168 948233468 991886761 872830485 958137898 995982584 998867767 901480814 995335614 935402065 998203695 459700558 531427229 40682749 210502062 545145869 659146867 381641945 795781486 638156619 886439385 623042210 649262815 699108547 991480382 226226269 306800632 62183062 416872262 166105788 338008600 168995425 957843693 800290476 898040265 703937121 754612018 50929677 137950036 171214559 305607567 652535743 741601598 445874353 927736667 524527762 866963040 509531325 530872577 857993897 892527705 433949161 761922396 923437724 971844466 284207183 814374828 570714169 767959543 600898113 889649011 607897958 649994851 94361778 255504864 872594121 957698271 463759722 764901757 840716143 886681703 892533880 896413132 148710581 624077898 93228514 255297774 281624483 930003363 354081671 827258683 277544348 934994780 595568384 896662176 948439758 973878725 154816588 996332277 380091021 707791705 92834646 850658172 455271544 960714387 832918344 886802974 957524865 992090504 5908298 799188359 408211250 520341335 666060136 991325531 742960104 979586647 830309966 963854737 609468835 662434641 169895923 367426731 717077096 790787440 736267258 742206342 392429170 552593298 335467325 525848854 303953936 521126761 886201873 987611677 142595958 696401932 843082141 972972100 516037571 991801345 697671418 771511441 346450726 562101793 327523508 444160994 692232731 933849209 419030583 637615408 727953072 996025154 143821469 157383204 693576408 710041851 728677187 764230416 789953096 942727396 607501873 693691380 455479138 671088690 986282616 988971190 899872192 983225262 479438639 788904463 455044913 952210314 768248778 791884621 427408648 639782573 441593963 477315151 988572699 990678134 993195561 997949725 314510145 827467383 427978909 866285156 897567338 935826609 23110915 440423780 296104843 361810871 302690307 976065800 881510866 997117458 228790619 297732949 882894334 991202094 946110208 965738852 647102565 885825128 544132989 684595755 734488 834936694 337259503 774454358 933773552 979243952 305753069 415142575 665798948 803952468 540047944 904675747 425460279 719231339 241928926 621604149 394512213 998126759 292276978 572237621 727600190 817262844 268909525 399737654 732349712 795450330 266462022 522693663 947103986 951077009 243630958 936087656 676389296 788841834 70227507 874134875 977848792 988067400 827651131 960753533 248680663 897450355 817921968 937098807 73475466 960794610 256277330 496141273 988135101 990452284 44562594 427555852 258519777 759493758 597687640 816679267 204114067 780007783 458335728 705876395 798355962 996215543 282526789 460724505 730335462 964948290 853600058 856073679 561756306 598521297 693889737 987767617 396861322 802216530 763312786 831638870 181858866 420563500 667969456 968297893 16815473 740762733 852243097 950940512 888938496 986795491 956203782 985252846 238821124 956949973 790986452 847347616 683814266 794926021 691592799 704206042 73974345 344181980 684432947 997099630 794970464 870419442 456968486 941143247 805060379 824136679 19833284 549017404 978217748 994496500 878366768 935590562 114344012 220604332 543038093 581542546 883314386 888278017 249430431 357649743 881442747 890401340 265290577 426551395 86453113 304965039 193281780 882992541 628077073 694311303 591652398 770708141 634862796 794677856 282053361 950306516 32380815 513107342 192003491 732662928 764800737 948905809 76703369 252280296 312625907 955765749 69354907 590907528 642198170 728188397 868659858 993256938 323486016 692098618 989801408 995488077 954423050 997137855 747819702 953102998 336489030 535631149 684133064 829049312 100956569 186429080 51438061 872040402 813102985 873717915 324914 209555041 67164812 973962788 877969186 926953535 664664654 820123395 59039905 108610849 843450717 973907543 646655550 960783966 711152153 902344217 183539669 438722604 352560435 983357483 992311764 992960745 11445297 683694719 627836695 734897418 961406542 973626616 621120333 880642212 760579846 897626101 109624353 818570672 226531545 562353642 749335672 909686485 346311727 820815489 408166650 866227634 144210727 884034574 957324469 974396322 126848601 759954435 261742294 956304580 721359806 776351025 439621454 933863245 875670306 957448539 494984102 951248983 966019198 991474085 676416482 700275830 566033991 660478456 292366573 744358890 326889045 615296681 10438651 708616348 361595898 578002676 587905377 905083861 543623777 892385623 460805399 524128759 591364357 855308086 429474874 516986736 694042594 971961605 353618909 752742747 741956657 876381047 303646697 662005431 644468787 879678914 610069299 777236219 690954952 918345724 725933985 872142808 20043679 300483719 646378163 721701712 995627199 999116197 57292685 980887020 987530474 989888476 571611281 944909578 716743946 719423979 99639340 957117930 890209630 946293026 220074899 701070440 244925547 387795034 330333548 891586694 901830769 908745920 534444139 585305820 481494986 598035447 928896037 980278262 616423897 921269008 549259918 856577926 928893405 990546190 314235175 460178576 398780157 697558425 91520120 852970837 688472291 825336245 10598757 402640046 692939815 944782556 58398001 898075692 676332521 932409415 425485276 923269080 236881907 843376703 821140934 922383303 89911597 676592226 465402111 993527996 193226041 777079189 363250348 809444827 663992286 950684661 863171071 876152314 770543619 864179982 778964868 783956883 497594730 777303778 194407607 689172550 824947378 911459151 315208939 839612757 473749214 604316336 226841438 453163874 568055622 713941990 401002718 879381066 613576478 786192580 821872530 974659618 364421488 733416817 931850494 959745265 907766670 979163730 522920260 882478850 13201449 689688635 201501087 966953522 366038123 426561139 151064342 834686398 166239343 840994511 108730657 912716396 279469448 672236235 915382052 976455193 392243886 787246257 862560847 970442980 880705304 958858802 794717847 851622288 831409468 974337891 258299921 596401224 908989093 985543708 964366359 995350149 333835013 790815083 929704062 984481943 408899818 544564266 729117388 779245554 350664035 384570636 506757869 722002986 798187817 902162582 848813610 887299443 672309850 849266149 163760125 782973575 764316209 839428794 638449368 794127764 129929977 599289138 879262429 932371869 776560901 985334386 160014450 636738959 806315833 946414070 501851164 826530260 880235526 991624300 38746899 509469691 76462000 934097661 337025179 827714841 842633786 856152701 875576493 963700302 274473517 432880892 201230179 798588317 940326377 943247308 855592012 860522542 539307959 632941910 537841826 728256778 207466209 713611486 66851643 150539186 213211175 395672589 292393387 425291011 190916167 930186462 667918546 916758265 569713955 909088853 569150754 874021528 575369757 867167979 517077443 679541907 439355009 570251329 881600806 940803146 163234920 198847777 873331730 925726178 158613730 248395393 510232453 671378018 604394544 652545402 611671196 755969571 127315641 350338866 686923716 958083085 917982984 958132322 980992855 999324567 935061204 968643463 171057267 402274629 673373463 773844506 260520425 379695633 950400790 965732992 443243112 615942594 164445913 176100198 688049035 908380062 19480684 473961252 141775213 733594198 983188727 990319880 182117119 731495320 616006714 715631297 130125515 449541792 753443508 928549037 184001190 545755787 874862176 969479908 631138029 706442401 616346328 941114737 83095392 205369358 69212011 386381136 908659898 963796741 859081929 868362755 382719767 499601338 667641950 915549605 418007727 440801747 819156777 898539476 295571722 816593975 366568352 660402356 767851344 867705288 731938637 949115500 215382873 660250953 166191254 656864274 469334985 957860892 168823381 181005170 766795262 845704937 872801968 907739656 262762533 647729879 428087790 523942160 615746440 804537668 117367913 515075096 922555423 951388412 83234063 567759168 666815132 871770015 428789930 903782810 65652863 315009548 282928859 712854704 485588753 504417521 380622840 845662662 585896145 768491369 552978700 799612369 971768485 984997415 44201358 678889903 170727321 212082583 853972253 865610225 626168606 644609469 757602315 764054860 663973375 935596413 873510125 989564824 33407452 595939243 912544338 979656238 871739806 924139050 294982871 459983804 87336098 732034693 609775740 926396203 394293426 801894005 82099344 771770796 504749133 700423091 354060056 470560820 622119395 874437576 313183391 673194296 246641209 665394354 652948617 963421357 198342041 546570164 371530721 869499615 224147046 737693722 778138669 987086555 734208031 777515822 541663526 743072372 33875923 122271969 534482029 949889493 379026957 604594383 162974801 456415052 310313029 775130348 289569969 476637333 475205682 604593059 953420462 972557966 766742224 973070282 754290269 790349752 11783297 946942226 349726032 811938207 597599134 735603912 634250913 864390577 248161146 288175905 37953719 673965553 792118273 903792408 882941444 971313276 284440559 662178381 355776302 753798492 977600283 981019169 634788779 870927344 477077912 694890313 717422719 993432219 199662500 800564580 862736115 948519550 531765890 901208552 128850813 561846129 232218017 741440210 573898102 597215068 625504955 910341355 713981484 886136993 356868078 572588314 694374013 994558266 37480487 649846020 233481349 583564507 501588616 594383310 642266856 875652522 730040629 802370412 179558440 234534680 445599068 616523072 76885910 435637769 535422886 548607676 413620199 508932771 82357256 858326646 465639125 698892035 296772577 316265343 514289790 771467810 969347861 980790677 369691535 802915443 259872219 922668068 744765452 839721479 534918941 932516847 793303172 984647336 204964248 549712057 317096888 321318753 707734468 790785768 98965521 286971560 274115998 568029191 825097942 882789780 811258631 950058743 650290170 683307796 669038747 985597150 304607650 792463357 342409231 740125865 14875657 529567565 592804554 896883774 726282309 942785084 211573745 746209622 240562308 505373476 881389471 891830099 66579937 480021618 793479634 805496992 57230293 612741042 763048113 920638045 902026712 972360679 62416698 271434454 580805145 854938938 442055335 822669710 377644609 395640924 451917719 868216580 2158390 248242165 233748031 402681777 890161388 897157520 825056169 900493840 22388709 753837751 931911075 984706873 512314156 968819045 103909147 576304714 936999430 983646009 633444150 858814899 126428718 281650864 952684645 954112121 660924208 889725301 469508232 559884011 355291381 804235219 323348095 643999959 884964645 919480934 237892645 790322573 803357854 963099952 583500237 941318559 956911728 990940487 88285211 812580134 154680293 451294097 426615231 664104395 728917530 990504102 185081420 468518488 609532047 942923684 459981781 877160017 257117109 668013021 701187992 898545750 345100724 723126580 366405075 388859892 225621574 608514083 176563587 793140635 426475776 519021788 614945881 874987390 788428828 901788408 47889387 489851357 691105471 881989307 631904118 639372197 667853382 847859680 584928428 888132911 978307388 983344208 530613477 714230413 956174429 965489088 902828020 913504723 404641978 583704290 916162879 994280392 56932274 417879285 434521109 999233833 209670578 304007039 740648155 952767265 343707353 707854725 787030879 813650451 129097938 919404305 295732115 905094941 432047481 888819465 984415483 992978051 216295134 485423867 59974681 525833250 621883709 769743629 633033706 937090467 740943396 807697439 339603905 341360583 483373404 905091724 458803382 812061197 928010238 989883355 119236460 575211057 740869089 921925408 830708754 903157137 398414652 466052793 732453000 936561847 709286188 817417040 312189425 514713759 278283476 908742137 345888841 983053566 597895685 656518199 106894864 578479629 515847591 858952004 161021697 916024653 993505486 996285406 781007051 927895209 176094762 568692991 130927389 390127172 584328607 691151569 752995547 900147673 399345688 412065142 301753708 619960482 44412487 307136004 150137560 666012637 283205809 717726618 329384964 358056480 277228045 800998176 356699626 825881615 262493796 984825280 439438784 562364135 558194956 598860409 574394405 646423016 624313922 682700985 267358293 732349678 218493784 399635275 652161026 675498454 31944690 45233622 163136747 276591941 606146271 965919074 249008907 267261373 705481428 775065665 814276419 946920782 200300571 337363068 256836390 321215085 818529206 962016727 99901815 153508410 528406885 932011860 646118486 948168570 425728015 807978509 413378888 542467646 546710313 658774022 907486586 988600868 285827637 766533028 237809256 327962021 907450697 979394298 339460658 989648308 140988353 817792956 501542780 831630556 874768663 914108152 432741174 934359094 171327847 806197929 936282412 949979994 419743806 572740424 995293282 998024774 133053300 188577209 458282487 955240056 819967368 921390703 473039342 679930488 500762037 830327140 576995162 586352272 986253428 995849892 731538626 927728454 34822318 862297107 599078401 827327901 418420011 946385758 386427912 511675739 56375710 757797433 499046182 637592547 525850718 639703532 861841770 890433341 173202454 930454515 396905323 981215080 931029285 936012447 54463795 619795680 785072806 941637918 207885706 320717789 433681909 741550656 291945595 813136521 708274482 764999534 901450596 902063542 978458091 987636963 705773843 941934909 604885431 670634241 569888925 828838307 487421920 888118068 118392228 401169124 553961458 912658921 328609193 669403596 822802058 862478904 402963945 700264769 503494656 785206901 241821084 534755289 647142395 993640569 372194903 609425098 36859458 95396281 702788062 960951003 612559886 964835347 143738959 557361564 268243957 623845390 279848954 641736158 274742256 501404745 851990747 957970094 533976017 672691859 903797290 957281499 161708212 871777314 201338291 459005654 227089963 587421756 672514949 861380872 669907968 779099036 388322459 661277696 95784559 729082415 29545474 552142464 194261333 563997771 113697514 728419692 687626565 749713954 478772493 915168464 681626799 685136139 455327020 854710115 981223193 996211929 614573893 744421214 914764958 984796217 292150937 358554048 825675343 968935518 64285618 482820156 636573774 913644250 13911118 996198381 975444306 976332159 255820581 909072701 281275388 586917808 406525361 406646950 970128537 993640231 93429007 836284672 250396721 287821763 115101629 741891715 936354028 984364044 605207830 830489123 797647722 822502970 521007302 816876427 930650084 986111912 741356772 885979236 417989558 986244446 488888915 597149781 168664017 206692705 362643577 667642216 884226617 985007258 591149649 724296706 380552076 869295933 988847681 990605638 970245690 975829966 645793655 981379927 120748917 837212929 257246021 537336212 626123509 842702895 541233162 981279827 218835500 734730072 844874479 933223157 116607512 821765732 975231047 985313374 208123972 914983173 139770661 240549827 318521264 972880084 517314446 796046817 54320578 947385548 605339044 935052519 58057163 404105956 10203483 629864565 52177897 840799751 295870187 880714496 711501932 721377305 561836241 687957529 543726719 796830868 80628467 627592706 481275133 676753636 569737555 669991864 901388593 998687131 649749038 843004321 45828414 90366535 742073499 864419229 890149074 915291607 524067286 854132758 886970032 937922326 886444705 944170711 221972789 368863426 93213039 806903639 789111783 972318283 459912915 903684630 530199653 883383058 22877708 443078130 545394302 549020491 509936402 843466480 225837152 476418934 78375745 501533935 617108262 944758919 508124793 533784571 904293688 935740779 878136020 930996106 80142964 753073801 749269728 921052502 992275550 993294556 611552719 635632294 754124739 828639304 18145036 364620865 935717258 941082115 940196950 998866518 221175516 586770805 429127361 838669346 361572118 391596698 202070218 333356302 208292070 510614771 637034826 817383189 196204935 889656856 689365862 726630654 192240906 822764129 989327868 997702255 382336699 747718998 551579705 925524785 889965653 987900416 210611164 922515555 546958461 838240112 618659910 864502783 548033135 602933425 344017334 831422478 230631127 523796206 341204832 817585855 928513115 970057518 847608439 880680422 632916523 688545850 637662895 903366757 761700513 977582662 333106287 974461303 322052587 834204245 202448281 346075486 655657036 846018651 462555418 729399169 485666826 855500491 522669752 546751435 251860805 897678683 773804191 972227373 730176630 992600012 418567741 600176697 839676794 896196527 663078591 921895102 473787001 836804691 481298352 978032884 136683841 288921574 577854288 748259243 571405943 587834543 773081637 867134492 787172104 977150391 223931452 466245090 563930693 946658682 98616778 420846396 990311151 995666135 999523906 999953210 819749136 985219753 862949956 885295312 602750563 631639341 542641609 565242140 764205367 854273466 896882967 938919397 412467417 624339104 849769101 992717099 395526674 775104392 249118315 423655248 428651065 719629537 738032579 983684900 183602030 606960026 867496508 882333552 455443276 791786775 581717239 633886602 276725119 727270589 267755630 636631090 438562168 680337136 185439768 362182748 880085526 881026415 717064862 942475453 286400464 628899144 798393483 863326148 637833131 760084925 467061472 822358867 457941200 736291284 685106490 726106644 740191788 813677711 697346993 713520630 421312944 775368287 146493950 823281450 173389092 422464495 206432421 304446567 401809256 679394008 298671247 644662300 564098938 944635167 465791404 498193619 580239252 923897228 651034891 806388423 302214658 774295434 332737247 932305925 112389964 704572553 877172605 989750492 481909129 834753226 11028654 452044485 402438474 466266739 396384049 998205982 588773092 921985489 748052985 794506962 492117135 853529368 15234665 214042284 55695338 159028583 692583018 922146815 901073970 923817540 638967297 886122259 185255813 476208349 55739543 783347666 551616946 625619341 986727807 991950537 601611998 961386835 548722276 863876461 240289087 928853202 542133106 759145007 592568453 687204267 515318588 537788667 144547283 212742273 880646004 894063551 108140061 367941249 556829865 650921116 536057445 944147841 399492696 904333132 989356151 995648647 954608202 964764754 456712371 850806425 130693492 169899670 970296430 975585152 291540991 496584409 54951852 811104765 194975468 957536017 137724891 415278327 473937312 747153823 129818551 644605249 77222985 535109836 819986976 919681911 854135616 984671989 753043783 962168308 914944735 945510382 220641914 874034952 450099859 939045401 210182384 728046747 730272487 749927936 550783013 745526472 149970738 256004976 468448088 745726572 118258371 602337284 471930323 825834216 317726332 932619004 886784751 986571487 589275269 625238563 848289356 927780881 798069973 889133983 662539407 918875846 232809279 572170546 598863367 963229141 279600498 348880832 724609412 796017898 164188760 296568983 990827161 996865278 746344105 917064652 241533367 843655815 398882488 864089732 956341955 969462537 285063276 691240227 861922405 869377002 39908294 142122652 250268467 951517898 879330394 945844370 656428478 932557050 61792509 294723216 731115142 902851930 73826762 320618999 306077611 962194534 75428906 79297178 24759272 983088689 17516693 735092228 845813006 850561578 615380229 635094740 753868481 954750725 638995353 906571134 6846306 235688130 513580179 839952652 203416053 323504553 492817964 879341612 89604989 169404294 652093106 946137202 292930234 928687896 597377929 795748037 972992315 999417115 412265660 903104516 906947765 942058014 545668096 911646358 571545859 712013493 26200690 438852379 938745142 983896498 527984470 771512767 431397236 738297168 443534212 466184899 890701826 986618487 101038750 742470013 237960213 555973747 41295908 280769021 666818815 916409514 765477960 999519013 490894752 536722720 137425069 857951517 946911979 973479538 466885162 773836323 754117275 840800568 116810318 350991058 609127834 690573215 876982240 968945194 288996834 705935490 266551140 772527087 835041470 931729202 607485314 931418980 521643716 666988602 528828169 568824124 566625792 708348665 804191549 866034515 883798429 924784071 599998582 850692168 441196027 784010277 208516759 486541339 375893733 434692992 184588047 675146629 316648772 487224396 61689913 535425698 305968646 951420956 244046924 574971212 300756132 504539416 207596752 288840876 104526550 912397334 774376503 946818294 310383267 653670666 499104747 780270497 550251384 647211570 943512816 976737713 31845892 437101695 48025673 263805185 242860006 940242987 80941610 213923896 408727553 409312527 697343005 705501503 501624575 681761927 985939312 991462868 536215496 817524782 364123938 780559007 546610384 682830717 844723483 981121822 60276043 317087909 218816178 666195831 195024776 697562165 497713824 542169717 823848096 894156598 908474596 997445241 903114317 972447678 796168465 955137360 560555617 953235176 727650521 771138012 829826708 980425336 732138800 960812807 258145907 803302876 407941498 889185010 444684606 873978135 619082673 879188823 189110944 918661276 462207155 971803210 995808748 998711241 854604459 922306314 608259487 723441236 830877536 964678442 18186042 128822175 463723714 841483947 214415102 822010058 209562924 485336695 251151736 344846578 375292036 590283640 769944385 919503453 894213662 920802189 881644764 908000332 7812629 238719041 23045592 52479028 834260651 866465716 299302745 299325988 981664087 995159734 948871062 962794859 828249795 896784136 256255060 401290249 343300244 406811843 226311904 324235607 826138688 970202992 960833638 983992217 737275714 998926090 47336870 314300302 364411770 535389370 211588993 844529873 987533148 992418927 875458737 890567088 490773911 952841604 645693692 999315824 106021955 883291680 974914486 998623233 736003201 745636881 578028415 963771652 231685541 368845960 749444266 886483115 942250346 988739386 681506719 760810830 547957777 999154000 51586271 358703561 309123350 737009972 622838729 784854998 178865198 183726539 902668507 991260495 625570904 972140455 987032532 987562200 689057705 984376624 945670028 988535246 192179792 615922142 695906423 813991342 531698824 651774003 769783492 846875438 851098162 958765551 625648898 967472209 236054080 839433962 755293522 780980574 508883700 927039514 441118867 480335287 28459645 334677877 610074292 681220456 591184953 778686751 651555513 796015474 778782157 901762553 893415095 956094379 305035546 723495692 822306290 955864750 75708417 425614357 912996909 919750387 716290402 797825416 559390482 668304524 761837496 959228595 431753078 898776686 788446934 863781073 567488515 976566864 23588819 40461770 717120868 936772769 934983537 974674598 29190844 415856665 117881786 503800549 660975962 810102763 101723801 623456235 929490027 968099789 105383836 642849674 683999045 841938228 146885508 514722582 98686797 402077785 776409562 905648972 500541309 569358483 564059271 891188096 164195919 297140941 887291306 912894985 359906787 626663434 454362761 853582429 119011295 796224599 244368791 783765977 226370793 477268346 309090096 805888734 266363766 953349941 636137798 962558445 497187557 801940510 388773980 604552541 705319863 748243989 245102736 720244446 312871817 983991471 814847329 967621989 228488658 573016714 712537396 816746676 226717357 647660377 801644453 910046671 58866600 948220414 78336482 599743831 95567975 570873056 897083285 915517350 156915761 215840632 220138467 694139121 169887464 540147029 104729471 202281083 867617076 882707926 746564503 962151868 174947402 456706778 324043962 769713496 694686055 956268280 792252194 856423023 253912259 838185397 256279141 354374593 887282048 956870474 73477341 336864922 76863271 997831590 598175221 627475541 426497231 793296837 335481028 852317392 36655572 726060494 206835016 217238257 914004207 937903284 697976451 843062814 202560729 526901389 847367514 893787960 586930770 846142185 481368835 516768074 742379872 889039448 386343913 469384023 39965142 981918850 474686710 516319742 762852310 877844084 882258332 883362817 775192180 906151481 889917016 908465375 79244470 194091280 734495915 910845078 322240589 690427698 66328993 997438747 347813165 849471774 448533250 811412691 335200037 423228127 316873324 603742242 925522109 956139185 947625767 976258424 119935451 294611017 676792579 798752606 369326353 995169067 197172886 799717929 250286320 752613382 916404475 937230792 451345194 919241622 668388051 948806716 308248595 530755410 314240444 580590520 158436612 916663118 150068082 294601496 267070987 720692642 225526969 372920429 576535418 991792271 681285317 844083264 914142541 914837163 574787810 755681203 749240545 980234815 79335211 561246670 338805441 629908945 642811485 751260479 238708491 750443665 511788607 764211641 569687343 627586217 98918720 230416807 311697454 448421455 319409083 458319783 474327475 674995554 308272509 702046351 553369875 926644414 378254986 741778067 256365976 257018508 54101863 537337523 770044439 936084247 156224962 979154330 988188891 994261380 394621871 605449401 708251803 926708887 215784119 670564526 878519167 975043167 205625865 433207716 289304972 419802819 782754824 931910501 809854821 877671044 781609143 794666173 990802527 991759162 299951283 652281628 450935002 549139513 790108284 870289977 345392133 738221361 204851078 461050923 798215263 840560927 434079396 980225309 910613951 950875102 997431547 999268630 119326505 749630719 573003554 965438952 256505223 927719977 557084239 933400197 286368977 817336887 248512106 337356468 709157325 914238791 823917476 879124537 720003228 829602232 725560456 766354684 936935413 979121189 799273802 909217692 147238508 856773896 723641046 919483926 628445999 932303744 254266256 429510692 182444479 892644444 92826955 386148215 428193929 835079209 850596680 977304832 906916471 931420918 988010201 999928846 760341186 771155129 236071384 509787154 59710228 632899340 844172350 866693041 592430891 779581124 440410866 972278432 171498036 814365946 186302525 749947804 909260491 948380846 443809594 682324485 968836360 972486526 882290631 911552686 907314589 911516295 783343933 976724814 451317730 822762616 778522080 987833989 140850763 741557746 315231303 813103262 486789693 717543178 204284808 541361120 717986334 795359405 218551973 289884203 115697195 252553967 751529626 919768197 346425362 906812652 621466756 891507333 730002136 834222085 363859818 866063170 432094604 574716257 58649341 790559040 744569390 920612112 44021984 404941361 896845827 941898361 685701916 995980655 530130711 887624071 367221165 606015363 829591273 974977454 242647868 394039695 144577936 983334347 9958432 63967501 581806380 613623889 499490773 722498856 415588555 595051243 515861902 895566409 565863494 985475135 520733455 539985754 622590821 790969993 1574119 454021924 308916797 821445794 830731969 856750235 436435415 619689912 597585209 986499449 44230621 181003923 950943957 992733363 314545910 913782251 118135694 971708768 307492645 849723710 198724906 858831739 807390391 973192307 997235222 997556652 99925628 618834150 437104621 569210045 560728528 959974429 89652060 466411229 763306521 879520785 423563582 742668430 749458494 994648385 498334126 649309906 936510435 947054899 823045083 850907118 934506158 978575148 261097432 359691023 741114107 904909083 482827062 718435606 536523868 717529514 639837292 690976264 699035703 781311639 532342248 683823454 592806979 789161482 320470990 805711339 551229448 665825282 402583913 498770287 843302532 953311986 702519398 862772187 684699793 694937302 243212019 412238800 411723761 515851622 307642794 472428697 684944711 919344954 17372081 832205786 170745671 734882850 322965187 635409767 129599555 575671566 578562582 954890022 74574547 551451548 989529853 997210772 654711716 682147730 779846336 993494700 2239215 351718718 695099238 740060975 578625576 805549190 348911819 743642958 9407626 316923380 531101394 733937229 815525464 912229849 53376070 715862874 780779047 901282379 113352490 708911258 550602659 620389382 787367341 927932050 644953484 901140008 301623276 800052841 580323476 946982575 355515039 812784437 1673133 624638843 401301358 781390850 128661479 848436584 446085418 855464749 452539581 673452233 868573992 982490919 854456864 922901399 748934065 844856273 390604742 417012315 488198266 557596575 666287531 920753283 847893102 881504352 533270859 589467232 226855440 327339013 838768335 985573171 467617320 477168650 233523564 695636761 92579922 823066889 373902546 514336272 411572805 483445510 701428400 902356879 609468775 978858557 174535041 808434357 361301026 737765094 740795247 903083633 854039365 997764148 382560356 417785338 945591959 980975468 482038622 524827085 124631526 670708237 816943702 912493439 791996011 955074435 782672154 821252548 416443856 457447665 880786794 961208863 816139361 874698002 308326495 522423906 250524172 917416106 768212574 881899081 870641619 990732479 240368459 849961768 743400739 759509250 848278717 853168776 400970990 474341734 32464922 61696256 588238733 704181307 690457148 874352654 407403443 562993455 606111584 885351394 525251595 560787658 507638499 595528350 625541930 836338482 519831145 955379548 339191001 477883919 447007011 972125368 812220474 921665642 751181262 838848955 935989793 992826747 105120525 802210551 742607755 976412896 979818390 984527640 721142561 864699904 323041440 568795201 767244080 971075554 279813407 418373027 858741326 996503025 48512646 674201217 879285890 973105128 853937695 999704285 160122171 986873535 547104866 587323677 428892620 526805759 490314954 922003421 459708361 547545639 247806554 379381836 418367128 985979164 131439156 917356347 118047838 380832365 215835969 902511342 797572598 937888179 514115539 697280210 455179007 681951589 412887825 447670651 830731070 956807955 695524017 710484731 194826031 245508115 266641010 669588086 173447102 391965142 761836612 802190255 667376289 914845999 363903934 575148825 534303891 543521980 798693678 888566708 780846562 892143356 460051986 532659780 544531572 888725114 88371499 365531711 986965550 996898137 330163483 622071812 769315495 806178539 62839102 734447000 84587603 234186413 629233448 770943466 249385268 979188885 471296172 804539050 971152983 988281708 702180886 955499233 859534235 866459808 991807949 995526540 959749209 975908350 682159245 840230673 5823971 650477658 217971191 777686014 96927073 235602948 881176204 962237560 133385974 414136515 292744603 339412630 292785713 386997049 831176 410838442 642188283 709064719 514910161 666684808 784351665 904058099 916700869 955685173 744216100 948295752 569421195 570411097 146188713 629793997 492655970 974312912 35709634 824981797 997578107 997940484 44945862 373650092 859983626 962958037 597937284 881918321 337377815 426254331 714676895 715780173 551220215 656862665 679420454 682391011 866601482 978763221 9563143 548217013 670834966 970955968 794661934 819747948 868605552 990432644 614937089 948592021 418758533 534720311 468111225 630194472 689626626 944402807 944120771 972670956 888208072 953897210 393135665 840143589 455873322 980474779 795508025 813503362 475532326 981532582 374123950 790814993 502160715 734842331 101242992 871879534 2111613 371422086 200268896 975203050 583431864 695566354 781477342 925956972 226941876 328409126 798658144 935027615 989360616 996990371 593215112 960661541 574579885 995177081 540091300 951861180 921442 260637597 203110280 905922509 520358045 569003811 89065085 791746828 869537619 924504382 598046358 889333091 971449063 973612136 426366696 742199426 362923308 852267637 943317217 977485842 391011576 791551142 161297433 490157090 64890748 366004609 259395754 283693606 127358646 984864783 451765596 735181076 304545805 648315024 513367391 743709376 500561294 992821864 991209661 993323823 329090270 493355170 162658780 367761288 662764506 911696173 895232380 911125745 627747981 748958794 637036204 875498595 661643481 719987151 728179081 804794982 187983494 637450987 166079009 760262713 423785776 440968597 588082336 956941993 667187751 925449875 772561522 948278660 894939547 998793320 775597751 975912393 400966090 579218988 820740915 822628600 92218288 400636074 65426654 170681987 529353560 822004609 465203083 835508151 187127244 898385641 856928926 934802814 521378204 729976271 672848932 981248952 919485387 926560551 57831931 234926068 167066610 735498206 341964696 570426788 571182044 712661723 399417193 984452573 640883119 643096799 497381716 674186716 153087911 834089243 962999788 971578695 910766965 941854654 557862240 828531191 532650978 902493342 723957241 965789262 997968062 999552379 38489941 319305344 503642405 990510671 278729200 785221988 477861878 625365175 358669111 590593935 609896681 711631950 123220131 529312793 2421550 658341308 601008437 976182692 16434204 389730905 703021535 909917021 79703394 528765353 883046445 904992778 742572637 797932996 196549136 982441895 597302521 971075382 535377243 705842740 64286284 863813671 807601528 997372407 633160089 973683469 643022300 794857706 220901420 777436772 725148082 982424779 314631854 870643492 825471781 997891602 385825260 787541564 449001026 974003209 281093473 869680727 19632415 637202874 187384909 531477880 891766702 997072927 584162416 894003799 699412158 878446694 734301367 906947248 118175380 808488851 581279602 667099070 420909970 826822525 625835231 872543002 991861646 998239715 252430139 933443955 721595137 752646701 947926806 999059812 385393426 779942853 974819498 977413629 845140432 866333309 378807223 844974336 954699245 966756873 484018944 612114127 234356464 382188616 312080342 371755861 979988087 980239855 772574886 948753319 546221523 779860666 819235709 877541581 226750189 778203377 204821628 670603527 187535300 934839939 615721088 715702505 199647916 610584708 653526040 999408739 656231210 896306658 980770540 986352830 832033538 904184933 622692213 978725514 154827217 837553269 438660452 762688109 893204464 984316317 873422464 997862979 79212028 592731357 41540694 260681285 161755419 205911474 22733190 696926785 213256614 231522114 466146851 642801536 79818279 469678866 237323564 466834424 231594344 619162069 197639146 612430359 717531930 879552906 186392197 405497032 248128650 510737257 853861892 955829014 605516887 701463564 356488677 591751227 276124966 518446026 833466627 854842703 993166709 993672872 993608127 999644908 408040824 922568033 356689170 761087857 861145892 894068900 322052145 557336070 323372846 729240493 690950422 757510637 633754034 838313693 106504487 988791509 74496468 726662620 811011808 842785525 779521757 933886579 848739969 982552315 579625030 836651703 318327071 505405589 171833461 197935407 913644200 973665695 875382280 993653250 94020385 620264259 398062638 564085613 812348217 874008378 997524233 999266933 108106731 606025584 732809577 915446076 741724496 862040435 728475183 920200770 207352514 732579676 951372069 981698482 364045152 934769676 231245709 960436178 368686037 530239774 388828486 534893265 328761276 883954983 185885591 977478508 371069190 768875334 240458984 934262966 908290224 968163675 934554206 985374923 866992268 907004382 803119497 816879308 788023677 821675085 389981854 531479822 281015893 637323247 575402508 824936986 786646049 885755760 629506491 685118319 184273526 608177493 503886833 784111253 188916119 894712685 903557388 920392456 785247397 929450764 333254047 563632289 138202794 474317349 739103993 855464562 349001233 351610565 29005956 932632898 899156601 906195197 998159074 998965865 243214557 287853211 25395763 596914507 909168988 929927950 433135283 889705911 857117824 958210418 453185971 692782497 932576821 967000796 967810875 986047986 379824816 393806966 786687617 825669039 452265887 609343273 806752134 943327873 86603964 465082198 633546875 837428933 644031164 895110601 442559122 711550172 45938296 134536360 548819266 767430585 469063896 625222798 515342824 671191522 87875012 262743589 262647883 880540312 172637013 269104145 150467372 507585048 42954679 883688874 4804021 188274238 336984582 786433926 180660671 854042783 831538556 887359028 585529680 742194869 876376659 877788097 435578739 534247018 676874462 743013998 624308621 798134834 775567758 908462328 615249087 749709161 46416578 950177347 467149434 924597138 727632604 965147960 183227301 413078937 764788145 903996376 45636308 464727881 597959608 653796394 213068514 689390366 80989804 700048866 201099223 966992639 732719164 790432346 807756943 848036100 481744794 508175125 692726654 898955422 918386338 945319236 365504738 884201195 463292175 506057278 502400546 652948691 487555930 558769933 253267405 386753211 161822855 948645940 605375404 624960368 571664568 757564791 591424849 827278118 551624121 990092058 919389327 970415938 58354944 974380317 166069887 345879819 6675087 958912572 43514617 947525664 762967662 771646776 529452123 667814744 373812301 451477047 683212364 915025463 901873486 919542187 530410433 732624555 207871143 639233856 172110065 370229062 33839661 710551453 689851183 806739439 320083385 466923535 184976753 217576468 728329878 912617887 967098275 968645835 160594362 676087233 176626927 634986360 253271881 726042801 818643729 996942516 362990246 573626977 493490998 904638712 853768011 909674562 517842949 863879718 317141094 460193449 373397709 547172200 519229867 779202504 961891281 977082927 339502440 674185875 704674267 914862175 421771879 886120122 277843729 672435468 479797338 623074399 121034498 168103068 725454567 856742104 516668983 652128342 115822071 530115295 830262737 921037073 872486617 926350378 609902477 630226137 439304998 511438006 788476639 890317460 713696329 877944045 945630112 966757206 804803029 866416220 659041478 664240583 984685268 992889938 728857084 812185466 225679968 321221247 509780712 756315564 918582817 963507010 676355910 777990260 380032190 863215979 132911134 766220491 971243197 986781953 375922677 776084125 777749867 952688224 542101282 559840236 533260489 586395541 139097954 346323018 806605999 941722563 625560630 895274356 323177252 553165058 917399693 974675990 727839027 968569580 287036298 300194598 53763409 732937448 376517694 825087690 209454899 434358581 718981316 927199802 951325217 981473530 897695848 939690603 741917491 821846223 761705643 777283697 891001508 908747641 917476247 928098196 681473841 698962042 940648224 996409865 268987190 824654699 603960072 824842665 852248726 921426644 737087353 853460924 921486245 932425869 50876597 705994404 678949669 786710467 826908185 898697723 804857850 889558874 529536363 655544903 770276838 803902235 813541020 975680043 827014586 951198091 703250298 722562008 525563421 983995855 167383307 632334436 613070551 901692793 190156769 527587498 99031182 514130023 816639178 838119975 160702824 232592307 50266504 966591581 214630667 347200718 276413023 689007267 115914023 486307056 231929641 262030952 630215291 907448401 112968894 522521881 262320371 814359104 580683159 651188063 921078243 963870363 566383917 615399738 712603012 964949314 342346016 911364270 924257971 933582111 459524876 942214601 676431576 735025839 864021007 925235938 794973517 879863658 731426794 970864120 829717878 901157475 850243897 856029535 118079994 152852231 990255291 995633818 775859372 785124887 746017527 931254269 332531709 795983996 141929014 402665026 331686784 632393492 896844582 931256252 444104087 670402516 885675539 924380315 826670276 829854123 905568048 907804787 555413070 706845785 256894326 297320054 246208196 323167242 915755361 942087475 266106894 625057452 169274874 625021944 527386638 532286951 727856672 991046311 758825813 766282534 531586609 825928459 984519645 987422594 6168874 924079355 568447594 765389811 648842933 777064376 68665270 747441135 637838429 817589628 546922863 653523956 97204388 193960096 742707630 782513124 725972772 808216505 158335559 401726628 659781215 817996635 547681142 627064839 624523771 817869131 259353482 329631063 491504062 521292455 376297979 944553694 803247961 827138725 282302146 730213493 65214519 359631381 551437600 964921411 96568598 860307896 532168056 566595327 398239562 559955025 91153007 500549564 739685915 763594794 298116585 433698943 897088927 949381127 87183395 520063022 965340343 993309564 371182751 583106765 343385276 934263323 280847635 838771521 18281454 437616298 587725454 748889439 547945658 575983574 396714548 445362890 530260142 644201635 806500857 942010714 307060677 456482287 321392560 611273551 228056661 755965694 129741744 907641436 911169490 934227711 973008669 987902952 728356875 755118703 716227761 982809721 526411159 532638377 961689935 979768780 845559200 911408971 733015160 996000903 67415104 119837669 40602602 919920936 733998679 843419299 292621615 454157918 558166712 910936525 695830937 912203932 602007446 868463414 123275697 762648350 178388138 315991882 857399330 955358733 264830007 488881652 821395634 884782406 503817181 860864715 257959996 544674384 468525462 499782564 757432822 865496221 746168554 880230956 12482944 244084053 563435263 998548516 163786229 570691827 568718320 784416030 186825 555383668 199714770 495858931 112764904 629417346 816302497 939750669 237812021 426948202 487001619 981653534 697961885 720290137 361057406 681363175 637605880 851958774 746208872 966725512 457571079 979345465 357681104 724800693 915758588 947967598 705511258 910633729 778589485 835348615 383905937 547906911 530102181 708779139 416966006 501144134 723088577 800312656 32691732 840560412 288441803 441676635 403937282 736694897 189164704 532940985 745190791 906011056 235839718 380919310 788802315 958893745 774885931 865510285 827844639 921387716 282858537 643229354 555404595 802503604 715964023 893569161 541213640 686274705 95101577 155367837 100618545 711752693 84412214 981508426 808617980 943122177 144598681 779148163 198105038 588809278 76711019 657382842 133870064 760509893 335252489 560074770 941624565 964834992 665671547 936527883 617580295 759128853 112333939 940014400 750712612 854981783 696099673 742959308 162601989 477345278 647452569 876606753 535047875 921959489 394862982 433978799 164267832 886036194 688736465 716914670 883868399 898539784 910946793 941264885 112047688 433180233 902060039 930170917 831578032 988729086 712639350 907157093 117273645 859917623 404118649 409338100 339169759 510508874 751369454 906981178 364815783 463822231 715476301 822384672 638866755 688429875 992972652 998894915 641395100 804210825 619787159 940492931 317106851 378958365 961896838 969799960 646963576 980685133 187619099 368830126 537364267 649550311 729426151 767523378 538713099 669095820 687287154 934248184 890071028 992970207 626886875 733561644 258851798 633554695 633260883 738380385 800622633 868614861 42050156 157267133 152743286 942192993 820653733 847762188 676102548 870247645 24812868 876967665 614166620 925936749 63060596 387392546 967557591 997936017 575079776 935631115 711798797 857431262 411991352 605236213 794483515 861448935 729686777 803094471 57224074 315602070 849351763 850673215 922753242 927181331 548608884 549469519 689388708 812846285 910287172 954225247 358758925 826098746 17775721 660675035 830131055 902398714 76182422 378071095 473919605 655523312 535118383 845663955 480361850 611234002 718733011 975608682 956723316 963708928 337723018 817876658 6233184 166607670 812668302 905540150 483821480 824875853 460533265 683227214 478128842 577585938 356870710 552947675 439197760 845198849 471150205 640758315 788590239 791615586 889103776 913075656 68094134 322701253 610323142 754754804 426385108 466599756 427169976 716724691 288123566 916318111 256966509 522597590 242239617 826757264 68907164 986532131 430175541 783511816 955332808 959412415 419200579 690030049 707984439 865939278 391598955 412181014 809197689 846694234 563578438 943169520 647963632 923055921 757552834 762482838 314218976 352637201 773617096 948874227 668341063 732127656 924462956 999922860 595272003 624793621 165847858 224141811 56222277 88433241 292271310 938849287 16945624 872415997 845367135 964859208 107342595 386337663 58533587 912863288 122679756 660080380 51128615 501250965 258518717 811072367 606125799 608620156 736905836 965234545 556235692 936168404 55782790 820267845 663443779 674882437 663501134 768958838 199001718 451542005 323703613 349033113 959553500 975856613 567114416 595035763 673180585 805770826 256785597 971265076 603294838 657374015 303072287 563930603 317139732 526901146 135959072 642278071 240741779 377990907 578139167 717547502 889381432 998035834 632302153 808043115 786420755 875155063 493800874 749779136 113170957 399481195 321508278 872498104 511730574 920279769 122596637 786290443 999054326 999975442 712767485 890481900 37838149 609027466 434352419 755153971 896771188 947201845 972678459 989381650 789987489 979712754 242482428 990702665 391011230 644810015 409080561 972024823 800913639 830528119 954794949 976930776 591244516 955728694 708051290 868964615 122603062 865819083 999121803 999942701 2206030 496555702 139636685 281886756 960311941 996000479 274521948 686222954 795105321 826612703 808463204 869837561 940724470 965897561 3085290 318748188 857354440 986199283 510256767 978661436 274717019 399418897 4913502 374617684 890948171 932749214 235089485 423312044 133275279 954990720 920329726 975619078 532037243 755733968 145383218 258665225 289311177 321979775 604395751 923339340 206673551 384944617 548269413 712595056 891788694 937162524 710207421 780989443 470290954 794472334 967954158 991751623 67730152 676286209 249298215 892559718 284303644 997018135 396781548 898809081 500596011 573749554 331657441 570995036 674124687 799478141 442465668 926275563 629746610 699591564 337016068 968408681 917682291 918302642 369556818 737091479 745661481 780264544 329450665 877084010 358595979 867309742 247513148 395697675 540248097 753724412 277170479 937926209 939337568 959557386 314054269 692285644 605283400 748960825 824528604 855997801 364059252 953776692 363533318 623585431 633592597 823114821 71143543 679046747 63834739 494262383 429276426 745719583 493059757 647276817 808913407 925860886 97673690 363086516 703490455 876880194 734536750 862683065 926920624 996679572 173327956 906936780 759501990 777035235 317980458 870524939 398012544 867942758 130175075 691032966 473137721 629091243 210605052 955324096 923885000 997608592 294708983 999907495 547272190 772934701 971251377 991059444 371742244 748428139 462272218 689004197 837097203 912457229 160336984 693507415 633665561 653251787 607091521 804477263 370164933 800701152 999270951 999784364 434325129 923102659 839075600 912415199 370245525 969048828 378014360 926545391 946834410 950321990 167451846 746922951 461391311 794347074 108174373 287890272 853695956 929242949 865028991 922996872 270209167 713418896 711536738 808365485 827801765 903888338 911584485 973805219 125012195 514270797 929377316 947045874 793680878 894828796 992475116 993343625 416314579 949175403 939789601 980285429 70058804 430878707 712658913 807731075 5919957 992442894 365416768 525133068 831863752 987080634 381507904 911944045 401092820 716677157 449858187 946638172 728910621 744249229 80449921 297133123 478950646 647464869 731536908 832761704 363812179 743574521 500293360 511906735 114295212 688595333 816304251 874326089 7349206 326462304 929661085 946100290 384619968 413599804 152055808 530730516 623763935 869653635 315485622 859349393 851914088 876505591 93525393 420969030 192021903 748718674 57982715 686600043 8028735 53286515 456808479 570228320 145996142 329298243 893295099 987823352 274800418 448418467 457100801 969716278 141017190 649934117 765584981 971862483 107098035 364767626 603388879 626886967 945917675 974242187 252181912 494868700 577124821 599929531 363770441 948885611 286414307 391536248 964053688 972798603 333816751 410950866 505170832 518891052 235094461 885706002 18924164 35374313 419163820 966267265 653501625 831276623 359878838 817665926 782368145 960468430 245324351 409169555 148300527 673671341 120131968 927280795 865609100 975404679 79485581 300246456 740169000 868278814 855855973 979430073 424851131 841846914 103850439 742311257 664701220 817404188 56257241 437548158 688745477 936187497 192680991 613163317 239458115 853318244 911278994 979928332 264858218 922364646 704174914 972502590 989771640 993768940 943486985 970464888 55293949 780305769 383820474 662585984 593839728 754270984 774011410 961522997 611977225 655202009 616628331 875731835 825004366 868810714 241526054 663809594 427916516 783055117 506653997 622112708 852084674 876242522 223703633 566066159 125810385 954870263 497621117 498605296 960531201 962661650 146639826 835413765 885377159 948635077 439239431 880175734 546516894 977004578 780447782 865447788 523986352 713408109 712802501 852158185 620550198 942620988 441302312 785493266 903199354 953230843 202003435 268907525 344495605 447896989 88862140 387984940 731230606 961646865 312563109 667256852 27729049 527666252 691620352 892690703 656291750 906294705 861336191 920728325 741784626 861040712 668354180 676950491 226511810 361435063 305935704 805138171 291493561 381807944 956676694 973647258 607356432 750364633 961641627 976470348 105673044 952705411 102420103 869241073 74544017 145624677 693868092 910924323 909633191 981415833 951982072 967853182 94428778 334079917 306916622 332906129 219716378 265656468 618094543 998786711 526220975 837102277 593236943 802615583 853537259 890954391 84555122 107193361 69353615 675820283 376174325 825512937 365866778 792901182 655946156 931210395 876180438 998210297 684869473 857518949 396243716 668349246 551670217 595495245 779314049 996808308 655588916 748223124 804075997 910349958 880130474 927748726 506035153 779294501 575949081 789104087 327344280 434451260 133258870 492863889 824198747 969222118 512340493 711307499 839526475 992581722 575028982 630985436 500017945 555566324 223501688 522102480 987899043 996886128 381394760 534237080 315762187 536375749 210990479 855293174 160659654 607691016 482991019 585161888 321888394 945179486 379728154 997965463 688879082 760473366 536860453 554046847 292732677 715745578 447048399 717042910 743584529 953909098 798577396 814371995 831364387 995811875 733737498 808724038 977627864 991840530 997791294 999446803 745614668 914429123 991684932 999252640 832132399 858647560 5572404 718592752 443657183 899829498 421677705 997172347 724848445 976909083 180775803 836808591 770721835 842586672 969413121 978552329 97786826 176785696 948009280 982529531 12926697 212505546 187636151 921713996 280361433 342750721 225646480 752867219 918459485 929190645 140456744 884022734 292635033 613747641 263800797 759370470 325794412 544380636 974482774 985731439 942910559 966244332 139398817 912710153 187947919 512531645 944268642 986969015 896831216 896914866 920399471 972970026 32494547 258057292 806575820 972411355 373712642 498511040 158225626 886600628 445579450 478975409 315796977 742867139 239215633 530826282 83429492 819241875 661457395 854819363 289656558 853260993 301814364 768813085 819155780 876989859 449178793 977908991 349364886 765195263 174532412 514769570 973698674 985177456 838802926 944625000 323132602 708057858 70506017 174577821 307441447 382468340 460051664 881873322 747496101 840521504 535607433 643251904 660046477 975720127 330583075 764842400 681792277 837937923 956034004 978146049 730434995 844834139 830705746 978967852 322210927 359717958 640782278 804205986 784962797 959084698 504793534 655529090 898319527 995965670 90273606 428430953 108740743 861860699 306206131 611876866 748713591 983810402 988900278 995041019 799545376 888357516 282207509 942974998 166496547 943650829 560523144 733786460 440032939 857179209 352931516 706957525 814487740 892234177 660277986 672427002 8966185 13801071 950661586 958898167 736723023 924250875 54894028 775259701 762675352 785335028 692382042 748860989 537750834 810120929 859091583 860295418 752526868 924323224 669051555 980439116 107897618 160112077 395227174 559582110 889585893 931057534 907618568 986566460 607253366 919202872 867636781 995271630 208987845 472762009 874355751 902619177 58929486 582700527 593115669 762658967 61311746 399066893 518065027 867453319 952471096 978646525 940027262 993769181 873000329 977163976 428207745 748961887 576818464 742529149 269005150 681507805 774899259 956030114 982051442 992118722 10661632 66899180 551316598 655071416 1520500 511628837 805635544 854966819 888702713 902253101 111449467 910897339 222827926 718681164 178929728 519252371 317705756 517397848 301283134 416232467 908214249 911869366 371185683 786180280 516109096 870041808 919764421 998401787 963451003 972810958 266262793 381077339 773011582 878294001 20951312 473829321 906797332 940827280 736458937 764432560 486921787 510661347 762161391 834022165 187439502 360345698 928803333 982016753 721407594 908084913 877045021 965681042 812766092 886862516 595024578 602346997 400934884 444956936 165763298 385663822 195834070 544952527 637464418 682157351 219605427 389017191 467770996 586486628 520955977 739109860 683437499 709917467 400247288 455138265 123960297 660570260 890970766 932519021 259607387 998625669 847372091 961630234 157996128 961510447 849559224 891965088 48161871 796378781 498281709 849511462 660124269 844425659 736015230 958280610 315194617 992132853 125030173 407726727 581832561 647498747 465296825 748846059 404101798 658335461 280684404 760129065 288092519 675735681 142362554 559707714 334662455 493039849 154720243 509422845 502795241 634549850 883550191 995981052 13605579 683160394 465520876 971960342 986766258 993174278 647664143 990357276 87373328 999452658 844259073 998820133 897371735 978950786 192113374 602841849 276772399 571015064 353806639 939810359 929206398 963088198 582025342 660150458 417616610 747669727 188864719 711969083 842549389 893654286 605398034 868819348 26579349 128417172 6196480 537174058 811182112 812466397 24869397 46556575 843912240 923379470 78186682 491504926 247240570 956787257 891915950 909641754 478731157 685511216 898436780 898930647 411885775 629571551 199750921 251289381 707128205 941369809 444604816 754444745 641460799 875250999 635881917 724804403 548900971 910233816 679655636 908746215 834953064 837968369 114597794 354869082 525987759 599541097 709825246 925442773 732634205 986236304 162380480 287385158 801655696 995035510 981470376 995198095 206569891 681624723 904320943 968968348 987180843 988170312 11172273 971883607 21953233 716061829 386848670 450125240 656838183 910254717 472291306 649904781 745933129 868779106 636077304 962831001 778537642 861664559 95647428 660951687 904017961 905943281 166268626 620819573 585592710 648603828 271709049 955917594 742567025 997223726 38612752 318573022 418951256 908767553 904284592 905935662 314365500 615539867 541034384 673156074 234011550 299469819 735969686 862018798 57194262 294458591 894194245 945102696 608839813 944571083 742774590 809685098 222049525 516175055 876422468 924942715 127021729 320661749 580353358 892881956 536031914 635005977 366155727 920881656 306822108 396502532 972385917 993866968 447407145 861053901 791505502 992726267 149043805 549154576 614817678 754827757 331554242 513699633 842269317 981165664 110313678 170309567 660842179 978352898 268709720 505978814 686053593 990723635 719731720 875265259 496902965 721199271 752113461 878648690 892908502 997966267 327516384 913930229 727245788 899988185 214563097 336102168 574618468 859066455 961275965 988363064 67219171 612452473 10525227 188374585 70168890 670995350 967947839 970701094 616304016 872678840 166533656 474443257 940763117 966329392 451497029 529389532 225969008 299744978 511621507 714579771 983273654 999894823 610126854 843889670 269776119 426375548 939610267 958713231 996033084 996052773 849566164 925517160 857480831 984526764 383076370 738144877 980099803 980655558 232944055 482812673 75817875 431380107 465212062 576662467 633401898 810804347 164531438 332781177 316475638 394392383 152407944 810290031 239019728 642482502 719060318 848075790 416048191 440799638 744046895 845699714 216977646 843454396 686641642 757747069 76839052 796068529 246403938 877481167 561104664 832330985 465755687 668473872 863793655 872448417 533154999 952568548 146996459 681480329 453487675 748148004 106070312 544763190 740619230 871149332 783384139 973708352 137688590 825672743 960010936 986099001 105161602 786488271 340367351 811561181 413238431 821123026 373559230 400270790 846637663 967002509 153298996 839219950 745871445 783895547 194090579 937738303 484057869 641392020 298159882 569245523 49207568 96202641 308494827 811010376 761702240 885466087 229891295 870386172 728348382 769341968 196938046 597318003 929772673 992387827 522534102 754402638 15908865 675139889 778207795 998424442 903535342 920365119 812214983 882816887 478282362 576674010 487852572 882282173 877196970 879558295 721229902 802217546 521545180 917953970 2989244 832909828 230766798 767632703 465315208 642109586 819288984 957391863 91248216 546178699 733776440 805094093 140025846 320171591 25233391 917282539 433663584 773195643 720711714 958800257 403973804 494920387 419222764 960772685 969185075 976140871 91622092 590575360 311114538 852656837 346355104 646958937 443254747 891343054 709967241 732276074 406709993 440523514 599913259 987433477 432251897 689504570 695245896 923868444 535170415 811677435 981823978 986022476 323882992 753566534 908449063 995384822 433571463 797520097 559784942 694608474 497023496 577010737 258894657 485456490 519358793 586490584 473930551 818123144 691507656 890758915 182255977 184091352 334987997 951953714 594865965 631003194 667900396 989734379 250432470 257180104 799789172 803357288 435370154 657393155 586330553 655817405 651697655 837383595 146498589 568013891 130524221 517474385 879614243 975482895 279148623 648448641 581226898 926259656 562599240 995387978 785976496 788968335 228800253 856859400 541325252 958499673 769208967 956042120 77076791 970414212 359327642 550323631 715409294 862526946 11280313 117161959 460336239 809238490 65383201 434761804 744399964 803380728 161268383 797549427 827964494 928809675 767816518 948181308 171338714 366193062 576487603 849784186 518077715 765051957 526409346 670140492 210822355 313571027 611559529 971546357 181656700 977151017 592225018 792730879 274618339 419403632 102066422 877880619 262624063 573741333 237576606 804477381 543744295 740453878 482038186 742369934 351033237 463290555 28766947 117140235 289223491 819105672 761037748 929923781 491170652 894070404 614308043 962007538 380296964 447449008 605946552 993279343 736957512 867808974 482582038 788653243 37174377 580405149 536634455 889893576 223209213 610003670 248081291 809103575 9367395 240552248 170519208 845099121 400057617 632064886 993820375 995510125 566626921 886065029 492302518 925730357 180609658 517077171 785034571 959318566 361337832 661997335 856947046 991558173 833930696 856250594 257680640 419498254 177629232 405345696 626438301 835861432 404402185 952020732 22314630 172039299 412747807 542010342 359009750 993506204 237538106 424010597 185889662 228060660 97708579 869482017 235896134 598751701 623985453 955851703 143771474 632153493 159571161 504784437 950408758 996770466 300534350 849588365 884609098 955516753 939634124 976400106 229799138 956668968 606743693 752106854 837844028 901487827 489125407 909561596 841868674 998620889 599512000 931311024 64644401 438295744 781082167 970670673 623755475 669600118 853404371 913718169 41548578 567728628 934758156 990129549 167883553 527978198 758274115 953238601 592222969 812951178 231471295 885522492 40963930 163216179 449029127 963012909 641033959 742071620 310469785 339608997 318652923 646891151 123463694 604873026 166597865 709959849 27630432 741824083 729937807 976154928 618724769 812526763 415657748 746172495 626791498 818345383 386365278 609994379 806515646 941150805 116477963 917411986 77943245 225182820 80417273 307109038 94456186 969516616 29461218 393340183 631949376 971358555 156211748 601905481 895181001 999164430 579747146 657921191 646025927 995826210 944611708 992946487 501459520 666808291 571976396 592812017 638543958 773821855 96989334 198129566 310188158 421987395 119985905 320501527 134589249 378429476 826067152 901641587 548765537 815553902 331804601 509662597 475070994 556783746 179638781 323292922 771592279 950956571 908295754 981108408 995238863 996222943 342543686 695869601 716999306 873287540 769694811 838589463 616129921 905050060 676596004 934712785 773436822 921168058 499389041 705472317 85212369 994606971 600775409 804809336 190405844 291325313 8001522 10722599 493515100 740001218 591131647 595257215 508063872 845467156 744883891 817253894 833846505 969085851 562712471 577747723 470799589 839350422 318668340 622666942 65791102 689889098 340532359 663443849 294899640 805349409 482621859 954741456 255178745 359675998 767250779 797365649 51900021 957486499 644974686 904354984 319967086 687692453 861929576 942370846 850505412 989109992 235762146 273702260 2266279 766458925 822151369 924203540 816013634 859311038 488017297 612980280 210404883 921609060 608077285 796410971 265899063 299853823 450392046 478379852 572012310 725422818 580950988 679566197 427302680 903284953 447122614 870773001 960084384 989858709 741676609 784234026 951381146 990050895 680345369 823403559 794038381 950669606 676381035 892386694 911755578 926274352 840854691 944401562 350784240 502557387 678553218 898999394 135234482 729354906 537395181 876784975 704337621 797589592 957321658 966064181 818886211 959185395 28065808 937049587 506629281 936899208 58862237 380030125 266894304 943550200 766836311 963722453 150119388 758944244 179443080 567919666 84041450 880887291 79118938 632080866 313437134 771822969 442796884 975222719 982487988 989971270 898628170 910775946 105934534 267450837 990308151 998475077 836812519 875424409 643361774 652214904 49751119 248857192 172430922 658674353 376035218 796735601 852110570 922533135 977817245 989443623 856021086 896457348 31355729 181360007 151757891 721950969 312557352 506160165 580330892 896684973 506730441 751683238 287328289 984905476 460383778 604949517 729793976 919435385 128272086 232298953 170015971 980167022 643653098 751688760 971429529 976279002 250314255 958935619 692981265 844632194 38467690 678670969 480113734 766282051 842498740 865638834 835715962 855866530 705706369 740060157 592636647 797113445 114498507 127270271 697739638 898485358 487198054 568079004 880009339 959064821 553376097 701611523 41920019 275498000 872894573 873679698 195834688 474793269 684992858 929321716 410118025 668602313 134241452 701184161 23615365 680616350 496226709 595645611 190227759 494245750 256423459 960483296 299395987 936242840 378060599 651592920 826050559 844276137 429656571 627565068 708052894 802807084 907224889 917035626 956498398 958670730 581923862 949086929 586433178 932455644 321341639 435951984 31385237 470730932 757579882 830863732 396757093 797277812 143355589 325489839 838036863 997340677 822870904 937261737 647735057 894293640 343096919 812013983 541226812 827146921 528854347 692732762 211014220 266731490 326895513 901861843 545796755 980663099 459667008 803370046 249421450 766601029 105421352 247137344 341650849 906776654 467762507 651639497 832068273 938963133 830923668 864508743 742799799 977965784 246844503 805191681 719639566 807231738 632594637 690712507 80483546 295706818 189973655 298054266 971913692 991570738 880146546 982285589 12314785 837664155 722577370 932820574 674745197 921706628 70987419 937391387 648168375 759944874 496680090 631444280 77975197 728554294 474937760 491910741 442175395 941747598 33161534 131728964 215123022 216226166 217914994 607883600 706343255 708273225 85998297 771153629 647011746 910284263 456719323 464799829 883713197 931906116 265688667 869927760 532604669 890899474 710176553 757113477 609149003 938748936 964436993 981841473 123120831 901974856 405391813 919783150 214140498 365730714 936676979 939708101 796990623 844091969 990018172 995758550 83868494 182686477 822871547 946312801 888829585 955436305 280030222 445028516 391234200 531289664 681935711 715870901 712336608 906032088 304663650 370940814 109631145 998081590 30447267 761271311 891582932 998895687 614879000 938921390 444654883 872420684 663704411 842038919 803245265 835345736 895276436 989220874 318815828 760372214 258566883 865806911 620925863 992380985 644337735 845343642 788459951 958118753 980829890 996595305 934280527 985438867 961012368 999145468 602248274 971823397 34393221 877215439 536481397 962557713 72440792 424245390 510275912 690745375 669934998 935992181 444081751 517442883 267960793 361233502 154719089 250633215 574628808 717241396 357430506 664973143 486121973 981978850 998250782 998295109 609836291 764581621 795715277 845811592 642956131 920634700 649647260 706681766 784632061 801385881 512101007 774891170 183750986 971773481 527565067 892629354 387252295 865241771 190059068 666414749 83591786 465477050 446661234 804737937 791350040 939482318 895755498 999493246 142408008 973536383 348973275 709424298 515557345 712761959 235952231 566037783 707634636 805453587 132177691 566688282 112597939 274741838 832107911 877463333 694395164 740513544 72978697 122722490 39064347 464363844 782701543 846942399 255074080 784428711 867786313 890316605 100487759 589306362 820760007 912337895 762727197 988006728 695358006 795695840 168590831 532633650 728006752 956928504 883360710 981171189 969109295 980581072 395521044 729593376 370274891 620976407 483817796 979915149 188158259 518753314 460262597 504956048 893593763 968095780 832154129 922723809 383635990 529634863 328984091 921922378 835571524 919117165 604006848 879294124 526234550 949700260 520798555 712329608 211961583 396930767 965767795 969396481 334803262 600259430 921463517 939354700 310384156 497594112 634546522 844390185 505417573 961123466 514053651 714384358 964468709 968742696 853913431 861991084 472592187 523149935 844570742 958498551 517632807 816662497 360100199 376943054 276355075 390691122 277251532 656295970 991031128 992481591 356518567 469659861 455772651 995546038 11259913 393645166 288104040 845907340 799911521 896982578 1484932 465431071 141216791 317943994 213210086 709535788 361102505 582854960 342741320 525699613 471229831 831723219 954085448 956450168 773069316 799008464 646062351 650244651 12941411 589610072 746661155 798823551 957750748 980455971 532854978 976623227 73954626 349011015 973180078 990363562 517229140 932119781 848219993 928070824 316499214 899063507 246964652 670456288 44820889 994031784 789190598 965070439 775801735 936374689 744436654 795905675 751843828 960138844 349756109 666445890 320486568 666496923 592472049 838186585 121030263 414309495 424834633 682532576 640871268 967250194 34457731 562749890 253739550 693680336 448164124 541486498 307981464 452445966 403505203 816911019 12970276 665369573 834419804 932540152 294709603 931551446 91985450 108661887 199787640 831580880 934295182 977137141 955219337 976800030 909771834 979784231 127261998 164488085 466094825 744191107 744099174 971926233 615227312 644857128 207492681 552031033 270444543 402439823 960323281 991884719 441535513 842218409 604498959 753432873 446448327 911096044 271071781 286055848 687923641 880167204 422083233 565089252 546988367 743727749 442384480 711721109 56819790 288303032 791920199 965361887 782102068 891066674 355629778 467515277 432410492 791832832 903611654 912873330 196574843 561871630 584276727 958101428 394144403 669027415 986076886 990118764 273015239 799645343 344214562 476016195 764520335 937726680 63825197 285253471 440517774 545049679 959713087 978992401 454007267 493595521 535095303 563127700 764059688 932145780 670568772 756832550 256658485 658688421 306863207 463665469 461470941 617528759 372421121 579477440 522510654 584318500 380038378 545312227 776894599 822447424 931315928 998770019 697068170 797521354 870209306 926417725 790288246 858688186 706246859 874925234 970307225 977231059 81000167 661707597 95837493 235627525 335931226 640251393 798935947 980668938 28323446 231442257 449745931 506835440 439748477 754527717 915888240 977437665 159530259 370515554 801944029 842198343 885722103 973257149 480317783 598750126 960970469 984504607 719805624 760515490 474337794 969364605 485753891 746555191 821330898 957942172 202129672 622478374 174950517 797378229 407651789 479303982 649187485 702662894 929843162 984900617 445478035 717371130 957464367 961921980 116142632 464761736 460164647 781243787 523030967 847832362 805038736 946439152 840541310 850112084 754002052 990063945 877437771 925015728 94790867 618830167 165890219 427877832 633569364 913871483 705616463 746974358 392817075 457643805 358491041 497308616 213982593 535073241 119476778 581641946 564077268 652754573 31810993 88178307 742863621 809780497 605389481 996312870 813752306 856574516 780574494 998422909 893136626 963233515 750340058 992359444 205234681 327707727 78956295 319766715 593355063 711100837 413803621 749842576 957566228 980440222 565242979 599888284 776580805 896215969 252383581 516756336 831910939 871298464 339252023 417037588 139120376 913301381 729896569 820459541 293135618 958608651 911514536 966153871 583860441 680481115 540467023 831555136 973339095 982854939 254532664 841823404 201091867 230719726 669804817 857893564 263027228 374043535 223186807 294592278 540256235 752180049 948575831 960863357 400322960 931303843 579424789 827253961 487373648 983008361 841436601 889721973 315211693 862036209 258827334 646526970 340106573 971982378 641297661 680138037 550580406 600257712 426599930 714502500 586792481 771089923 314401231 944522494 892890597 899210228 220622348 448082608 978642326 998071215 980386472 994116818 513656088 764323498 598285053 758423732 354143516 990496943 982536350 986549565 75764586 724947754 876053633 994781769 867740560 963734965 203550850 781707776 703074660 771970776 730371400 763467143 8701255 784964914 163817816 723087745 191210611 903878736 225658099 399930176 703271497 970852205 52339041 97019028 632141354 745728688 955788148 992192935 325948103 870005694 283350918 390906602 56619362 351218918 4995217 74774320 216516466 498012779 96317023 456518023 778861352 914069087 763633628 837426781 67275453 955225351 325415743 734308343 838858360 934643956 550081546 606266509 767559242 787641727 646590894 789917263 556739386 953916548 336072044 674485337 945872848 997136720 990046035 992061314 7176688 699654881 53957278 973029672 672599773 985141955 304204555 433536065 762679653 767411985 780172296 789698579 904937078 921143743 938653932 960626187 88828736 332100381 40811707 171744385 825951122 912739034 503734803 859614552 198946687 433808234 48206849 944349311 143696460 607012572 356456476 689146370 880065960 917377635 580785506 715015271 511657778 739702593 227930410 852008503 32583137 739673748 692966242 712516155 674448606 943933514 661787574 936341946 439858375 789011749 915247414 978294630 800415681 815714386 500741532 741901797 572751827 816301427 633983232 915297515 563158443 930961519 869572159 928183109 26694890 122194893 73388803 282752407 626458197 740270568 578943744 604981582 69549111 240844682 341448896 542110575 254045834 444196629 208336269 443297909 507697026 661779843 990234795 994230666 209925491 441369063 228328716 805338500 157828157 916085852 419177489 492918952 231000973 250370477 851231251 873702663 674249171 805893342 290617632 565787234 951991921 960601197 312284210 556053418 13429233 204067873 625092607 738405828 399619057 999868213 269695681 463169207 995268385 996420453 882501359 961757423 987989102 999558334 473220477 493476764 582483850 603486028 914359986 975748715 388386226 792574815 298461380 918770125 849243690 891238472 597140750 703520923 213260103 718811193 349224511 425921270 367733443 961437515 442713083 568370103 799633311 863685165 835441294 900864719 895186256 948052784 728799256 756720712 707708910 767517689 375746392 570731420 453026294 840872726 99355351 771715281 775448247 932876735 643270371 658285557 868123812 932729316 851279702 990805600 951723531 955627508 717191569 911929742 27729358 980070600 386964402 934349000 853869126 979068197 370983674 982829283 193078631 389764464 880967027 949492877 319455552 406340873 508883597 842096123 374656396 616592410 647573218 937897756 193111670 449299185 579323779 883754313 938022816 946811293 779901981 852567107 880561298 986426007 789000108 953329872 575861613 827245859 193438052 337512056 343244428 506851747 335070708 690180321 709238709 902590652 763087450 993883392 892762238 991332353 960385446 966230064 877443698 943030212 538415626 777162326 871967586 920868219 30769546 435958935 372440088 646284929 889140177 945006905 808482440 952705841 101079570 597949992 950232811 996061251 662859228 963541576 929943094 980484706 508535460 511592158 429254517 993086364 813954186 814842517 747630874 853964624 271395979 670073916 137590798 957447433 244627855 447981872 50607491 162317748 572675457 949327845 529658818 965824761 160561025 581329688 343865218 615591305 742175778 811763574 572876165 720154925 305294125 385562923 317767484 390892748 386574487 802753680 721381544 842909004 818311750 939581532 981344640 993884326 604782285 937985125 617676791 695703508 900357867 989197251 741132706 842542050 605881962 913054800 908384094 986750020 540784154 811659686 483675371 584621432 937137302 937475083 105572700 666410707 81819681 472152512 748720953 946520497 4935369 80646032 30150351 895731058 857124749 922507228 976445667 995183940 675764858 711243203 198674706 786646655 674810166 947663484 450475966 681058023 371804626 838158129 501475665 743787596 453752181 506139653 316804722 397859865 189491629 348422999 756333921 925692643 330090857 454161885 168314402 307064041 405821553 445206538 920604316 944248612 212742047 495362440 449950671 875714328 362685416 634877814 13338348 686432547 501349087 812277015 70837081 134700061 775468392 925030266 256689498 354305570 852780815 989240908 461667481 533014611 158738519 938038131 577196494 603281195 316230523 657076926 37222045 414132120 957982968 969574913 312397075 832246650 167566819 718177207 96433389 915641237 947449386 950456686 727553914 907075680 768111059 943692769 233255948 515014866 139888063 524913486 438245459 946991754 259928104 612173517 508126080 993049871 857111156 869718604 129727538 560987984 113388693 585964282 86050523 434347279 283901259 449399406 588887452 831872409 569063199 748188396 55729587 845577502 285828488 966759943 75532969 866091241 928537885 954287534 746398956 827540749 329773455 783548244 881107188 915919959 422653267 823543592 449785186 468465499 332025922 802268239 702152455 778659834 159250725 891280172 68258587 613694506 570637433 915756723 702927485 839475703 174374942 181508382 870666983 940334094 368862597 494767617 876648747 992663886 744586528 857453276 795918141 981427004 73261411 156880251 275902704 882912331 798733241 860309026 190026602 381194421 194473963 859610491 964254371 965058974 407158204 705474555 30475390 126118264 945192799 954156612 167918513 301684406 50994253 705399236 928478817 977208119 326117082 466426411 801763282 954717565 515877758 698580483 729883226 730373208 426839245 484327212 500772093 883793992 474332454 773091980 287629366 386853342 484322454 662918168 221981443 259202981 351658725 832358886 226456263 379018624 898423057 916737584 118824488 483386861 78551174 970116247 541039562 584395664 509948780 636929921 546899432 765144024 950562901 980863798 593568387 943668025 895521675 901214039 81599773 430542090 961596678 970585279 810683369 871756262 166358344 354035632 451713243 601812283 348784959 668580223 243031535 322820417 886876196 896499219 315478912 816758523 865870933 940171082 881448646 905570836 147148256 150719017 618898595 814679701 668105089 795309465 574999314 916914695 627476717 909122821 545311685 903140080 931267484 953211150 682962159 978315295 281249063 870122914 137668124 552889307 37474289 61711726 896890851 925050443 288799160 849268882 686685653 944054443 537327325 653442292 492570161 773374746 420166957 540840311 763578479 916558921 893246716 970053118 727735271 804457160 609832599 838644276 284813497 361954803 250393959 449205908 527195584 698998804 236550362 521558446 267525205 919188196 951473939 986309533 213387027 297770174 4702217 572804662 667444172 671882769 57638012 489272565 111788431 781420620 978908095 989528383 670489123 897583793 350929403 719845773 198182294 777709191 412861605 626345905 811235603 866270668 829539660 998738938 461818570 733221558 640965866 922450109 921456308 945997524 243514086 869356298 855613096 972263790 645718458 654067273 108595517 501061098 427867523 437100558 895985006 919970096 119395843 997244695 880242761 972784559 744594310 952224251 786916616 912827302 646867203 865928503 933187654 946637655 814968708 826237331 66830553 711074137 7807477 877150404 653287049 864618610 398101770 683568790 456595369 505261728 709049426 804684905 940549166 985707233 375285273 471906265 539217754 793126414 167801469 339920625 373761132 510283284 469737889 523444453 295571769 318196844 174308105 421664141 562764292 933651292 336355710 918751353 201832406 534582194 34581447 236776993 842350905 978647051 184629081 239056613 575646238 971214167 576734544 999779718 228031468 950855921 536082266 727463293 882194954 938007778 108857657 140735836 48381020 399011203 181601556 613929450 244159586 789393846 155360634 171489851 748689635 879582401 438537909 544767285 398904924 495020181 936826662 971671738 690789340 862167664 727961267 828571535 869964054 996188511 329737930 793671613 179449195 910465918 137176861 367250567 721224843 838496904 31189030 821425712 995815194 997808026 65483939 547271437 348553153 402224010 569775806 944170875 544146593 681884847 76165384 714217682 744234973 848780190 361719525 727311517 324615599 770668399 12082979 618810616 86522863 678947349 534414317 801302788 235771887 608596936 705225615 819372072 843776120 859599143 370083136 751713096 291193104 851711203 379198316 856086001 758321518 786353863 749659502 925940993 906785431 974521222 184088860 194568231 886095178 924442922 751887115 807578455 895989662 956269211 448506887 664186546 304874454 653957054 988427697 996772584 506732734 963229368 894629985 980002243 826308770 831423866 253478322 303818960 723178033 729255146 438758604 960489310 451778741 957188990 719194484 859062057 391088666 445454706 189008811 474798410 103278725 999595726 188135498 318369223 201631745 298953172 570214239 625528048 423075105 508555841 202194146 531443985 532803204 878640948 192266345 257866137 239618791 297159904 28156223 706614730 333910437 749084337 734887381 922514198 924383924 948423052 842307414 978903425 460596488 969380654 400865682 521742476 808449293 969773030 262299816 854463750 418601329 760976101 384534732 564739013 154205195 496409645 347953946 532734684 174474520 849024521 968454981 995571797 839220679 845357544 614441120 806415661 317994341 329411963 682763630 967037189 280543797 548211080 265357682 370854062 671344331 808211860 309509812 559043615 87998722 537100605 531945630 913921057 150584521 502264305 733012238 995992973 5556744 350075214 992992445 994565530 13162716 564568514 910570103 977729414 764105889 846900197 49264995 918300613 20923913 53869360 415592050 738116379 436134505 469118149 754936748 878072020 586831302 682992425 727536063 894022390 433242627 669520787 889404410 970755687 156091884 237255186 93532577 497881943 149276862 696749935 554356454 601939300 583899001 828746243 672232979 692552507 161868453 557602221 939266840 985648089 302951371 671068093 251910916 522714238 350635517 469808804 25996490 76756511 882033112 919494865 32651077 598742956 452226294 912069888 787222684 845398329 397727725 799491883 202444477 528774678 928124195 949655541 759206286 782867704 815939216 912875695 805679138 874639366 643471359 731163104 643117257 765281523 490200897 722442425 879722966 956848719 919841559 922204778 543080910 583265930 291247547 859385398 64191582 434880328 2268742 900052673 117692101 835118677 176064252 741061125 184093823 329487880 709317395 821837165 912879627 947073274 311082244 654974798 613872992 879105794 143176675 246447223 26557736 992109218 964988778 994063372 710083740 942190189 180792146 281826647 255218911 800249677 35320999 942155095 875331165 895173519 688963073 857498419 433676900 945481523 552860642 746654801 150507307 512333913 229638620 893511515 540684621 572983649 790303332 810576484 275492056 623791636 219556013 509511747 827812374 843413553 486306184 691142582 501544519 509830933 577397877 783666169 219158968 288802329 117407828 918753410 819880628 968976861 228709817 485865616 706587240 728977205 68302094 321383371 790316786 897397700 491999403 620061106 32123542 785060540 1700538 104746366 56779025 378473160 623423187 745740497 817198472 974166788 204534864 777174860 232038796 723717954 957608338 978900764 394439690 697783507 711597748 768264547 983922471 991287138 475654044 711401475 845332492 969658459 59489635 783867796 455092607 960667949 78803084 843258255 702391792 784815650 265791492 671620355 455104408 860426265 240984924 663440432 749539019 872262907 481567747 699010243 318926397 899599111 295250786 756583847 525278743 768915016 130090582 397094540 148261465 456558803 431673672 700237429 932015986 982353652 375552374 423263330 278225950 751508427 714482310 934214929 953758554 992774747 152903089 656340347 158980147 793220390 726853375 969920496 632003481 718706006 947593244 957251911 470478514 875301176 544453335 586227876 484868757 857956828 479823887 836976410 309756788 973900389 199289855 966300452 542437882 685045423 469317328 818276590 941300103 968196128 279209723 950860592 75253494 706697485 550617175 786002631 174972360 823499624 696591162 761002959 954590004 992894414 140232129 749004289 682406799 794305800 333638177 500052943 245736280 626282476 676207 926553699 147786330 934984334 578072807 601747261 955868130 970967710 409678836 531896676 79351969 528804471 217913102 833178564 946944357 975047792 746280608 978602189 945247501 948302780 376823876 638089429 70058247 820269597 358990109 917735534 212185505 331319861 412417527 898196753 151350645 160627926 941403997 996487961 869127485 962062366 425205453 950478822 813157413 908124033 319338899 492236685 345361036 735693148 427837802 738326410 725889619 755515493 443957406 963087770 110369257 521088923 66800107 316939187 371137167 894238306 48857472 825962995 398228156 818404800 381041559 723300227 945616005 989974580 938797876 997139633 316218978 597312318 770377537 974208713 33821596 343544617 9590456 665664838 951957208 960334738 837793033 904534354 310766423 387914041 415149461 917299319 837677570 868753533 687642829 944892873 369203532 873279200 320969600 364349659 565858666 600621729 494633598 941256000 812886844 814930131 882223839 943577343 199587142 229223968 923685972 997674204 353120893 706698246 170313917 189384408 915250987 948199378 489427050 869582268 496683182 980913627 953416589 996834403 453069262 848385274 338461503 414001876 429061260 864786042 764969859 906050359 616249228 938827902 811163035 815217663 949229781 965520211 704438008 874192473 303924469 461368665 205064739 997323373 542862242 857463114 361220980 397340571 672552931 940971934 14015044 229334629 290898856 886593387 548765042 769762275 254229137 949434616 100577613 619888751 231192510 919433676 471788214 520859783 135143863 729962467 404649623 999541061 337082241 652952300 762177888 949383833 699838484 950528727 39005990 434377128 157024781 983630563 49745156 353144222 667299679 754611541 639269772 785653555 739560567 830950819 493500349 802786999 759088675 934896267 179760454 508048162 212606516 627457246 951974616 953900910 548752460 560210152 404882299 892855867 630084756 991541404 78104722 874256589 569344941 886968900 703246518 763587674 500854223 734009906 891887295 939899191 494941753 753372993 805368848 814253592 53151951 703784489 24072734 831468444 974082439 979199550 268726644 990184943 911183424 915635809 12190676 875772730 290045386 787741993 289113467 841015084 604644539 838338076 349650965 722439227 561982817 601702881 903444475 946414819 367160159 495913079 39749096 724150699 709031504 970606679 310773651 755006321 784489598 927821784 745069312 914601308 882132913 944574949 104812454 449184889 605515620 839210246 686225876 997106914 669927243 960127826 760737887 842405545 510446917 894010340 443146653 915548859 668145060 844541098 260815618 525552454 909332908 914658767 498544218 555437989 604565946 620641049 56274102 913014541 973374612 989119217 648611963 801995596 547519098 645678126 934868480 937465311 269519644 876715687 214068873 230672603 329926138 616085496 13699123 908305537 190188269 585470138 84019063 563673847 854856700 891074575 473364406 627836818 531448618 623032941 399030152 592069109 189700517 536015239 726100720 843590073 725885466 904132695 651571833 888145456 159130048 514061035 779448160 858848115 100181227 742649062 232369531 341949124 8789729 755871368 507063463 622007144 726046182 847571934 380297519 891396626 814794000 873793428 68368638 792455838 368979210 874443869 38716072 497438697 515249834 900020304 574914580 736877562 16263519 324586026 898545743 955385916 224736353 922232621 8436966 621301643 113417210 214278812 180591395 561614365 38923526 701597061 602272401 618613147 709299436 726885224 566625221 683326016 891702964 909557569 524648863 579244067 676659580 773402486 587363806 940756241 324557851 550375984 596005571 965433703 417154807 538571198 998873426 999030823 495661712 942704074 7343809 657320973 354907733 487253602 139020684 654646209 260560009 895353433 600670938 877026752 448832225 481071343 821931524 823118079 517446199 521764862 641755913 934451514 682533479 774171199 20838634 512069818 565148288 963014757 148163045 609123837 831159891 855556312 38798193 214127906 969848943 996790320 926354830 979574549 430181241 830656225 572537068 847935626 110026140 591976378 663332356 691428923 128183073 525467513 446212499 624936580 556167901 786954765 305939987 455778219 278344845 552288770 127716070 760965045 533231522 695500545 954986400 955283315 951719413 964975397 826820657 931976203 453348715 638210745 760255155 972303133 994576533 996019995 483973833 828072238 866931365 897298652 705620979 898665278 476983570 934137136 704312114 711376607 859108707 953614638 994577470 999597657 136872477 490053558 265869030 284806045 199184097 219766563 229467986 797623004 293459428 917659403 912370720 936492518 261876368 351089128 81424809 503383622 742961520 996228298 284295310 380312499 146525283 232595481 772896024 810339831 800271307 915161892 97389015 314479822 733309633 896878314 843114376 930893557 291377661 914467066 165853199 617106647 621370058 652613806 491474689 839819749 384489883 943366935 105565873 146173573 598211634 913155127 461055850 961202199 445036799 474327461 856352080 867986037 918790731 960262141 427470880 919087583 494139774 743068620 818387724 850475371 819652837 871555006 778712801 949965123 639789276 925037746 561341889 753690354 678316139 854451001 639539588 808744016 151543478 879060889 661500711 664300301 777227251 864141329 976786012 983012510 186414192 724641813 943909303 979920344 819975436 974673700 105039659 673144016 494088967 586247105 984429333 985657496 569824237 884887652 13424000 684300799 47227288 603482614 345643248 747807373 767324295 946658612 415910890 427653447 462723454 710302003 451064483 734882650 709702001 996782802 715692029 791595358 75608383 273353294 831912656 929430114 163730781 539009447 602272969 857591493 626242480 630057553 563025384 567653066 904204024 917068962 200497593 717122006 273091735 852566323 286247386 423609870 245944249 313869779 505836331 992308664 607686398 991781716 764405051 839638998 944322733 954109607 868563168 928650754 421706613 425101651 138354377 344707801 650616513 775989204 973486988 981252988 848771731 927851511 491691792 532745605 527807309 711032941 129730450 960045598 755123283 782671917 306627966 681231875 327508385 454997951 373695285 546441034 954237087 980162637 187701474 840876197 368762236 782368021 258183714 700672336 583722866 844108801 503452704 846410618 516362979 562001548 161814443 720759768 742282486 810451382 536295900 689816578 666186009 940111021 521680746 564392050 874431415 885997478 649125898 690152307 773789626 886929196 960275367 972342431 959203700 992488947 993006134 997007920 202275057 540775703 867739996 896241691 117047412 172465172 1855702 919729506 245704290 284979708 139640158 630854796 193676337 784021546 662227076 736045853 286159787 965451362 917887038 984209289 298031333 727498267 938309925 957585717 981979737 995450130 17653100 181857899 704253652 868599605 577781468 875203948 784343622 802486725 257599075 393341973 269871042 649837734 616216382 618213636 610486192 887654583 726376413 792180122 579846423 782332717 821129350 988204901 618605568 930919180 115963843 668272159 953136392 973365331 588975855 743942851 257508730 991380258 735776752 817325799 517898379 520783942 152974427 334058808 74908334 607579495 289604963 315991145 336692112 903132396 971009169 980683293 765198395 766503230 329320619 868006569 545460111 698758822 665748503 793918582 871514309 920624164 114772772 291465582 471224760 753363142 447640716 699033433 538922115 573412668 420274908 906116382 236083376 303196397 853990539 890125874 898257759 903148747 418038134 638285177 182882975 327884594 381243586 456541139 665283093 995334411 222624972 289952740 171144024 976790816 538409335 717224694 561270335 580552784 38518020 173050633 46068540 666546435 498443230 975134887 743148415 943236152 18197733 131008618 227028748 726416485 89365778 219047506 959899937 998054162 71385693 742616250 722054631 741175472 406617769 875485609 592087237 935596316 320808231 551673348 912655135 938706048 780174121 963491489 131840384 666804551 373957219 516677527 562050195 882743399 369196810 769421246 336452868 779530123 293278189 802712169 666378512 707281265 897137187 994554950 283865094 487872857 719771986 824781802 427924184 555103245 996297957 996919323 112280002 543897137 314652890 873641089 556711106 972778369 787182237 871086026 819430884 905608149 878160710 968982575 455750167 520277745 412652912 505845431 499367401 946446579 96972286 352323085 912843983 996764214 379204483 893197663 734332592 869842408 81572147 600400253 492799213 878985039 404531289 968072200 654062463 743166520 87106053 649678330 24652828 27496318 988086374 997633421 278763780 504754149 606682371 659628599 727978501 910619805 771118237 956062228 754073011 852348481 653137698 764338864 463356973 828469351 865558092 897853540 219348254 873340312 496501038 879386381 762077025 984989051 16561026 772425408 727648228 882796204 523750084 705516670 35121444 374597547 40889716 170572833 614143716 750810361 487897551 612812980 756759844 786843440 172509880 644690981 970943019 975618432 832341995 943558587 450152231 813083884 237735443 531743458 534269379 673275385 897827343 968900834 908014730 990427361 18542426 34645676 627538902 764526969 925251087 957424642 676095196 919726297 243383290 479122718 220703173 626077834 323771175 933395316 427710143 840347108 595359516 739287016 732182092 936547192 209648988 391574639 326512794 407686518 115363035 819455010 208081307 888840040 148639467 575914442 216221457 378521837 558037116 995390803 622360004 726618200 820042575 897180044 443779652 636538655 811328103 889088612 463833468 473512589 355352009 790919663 537731269 809457857 485127073 793587181 528255257 766636401 161846651 804177843 507325046 642603739 699266426 949126313 964738928 990426921 658065943 955574345 26420688 211593162 886812961 966092311 16810608 933711077 501541602 855702361 980853027 984067989 135660497 635870636 518174376 946516300 989429526 992785092 716319301 744475217 304062546 715575810 199111972 424249805 274951883 983821070 402389876 448305369 16033258 947323571 77048036 475148398 104945906 827583739 380648716 720301359 13781174 919655321 128676664 477293650 982075904 985552763 871913089 934445796 968894764 992436176 614535920 837003010 759135510 900343034 242339639 582713581 591319484 842560030 963882947 988624712 734132818 859627269 636645746 651282910 527405856 916974376 691496811 903938476 951924254 980548655 937411070 975716371 6861633 336893302 987319970 993926436 10332678 63365393 841800798 989994502 217899501 441726256 796317691 995425231 74177913 512261114 796135024 945168391 239539577 743684266 920174009 973869102 162773382 722808662 965084330 965377024 139948944 791118672 546193738 833517494 481801475 672873759 602579173 976208685 232901896 840204870 931974316 975832493 951228307 958603855 70404203 949269283 818860050 998396304 22985187 493213113 746388284 746674549 264020503 420297979 193102882 771976524 749622692 903819752 310881064 420980595 755418829 772367178 111904775 799473293 365970052 696507154 357673069 729491141 109076138 684732798 877077601 886605847 293461812 654154770 776675878 815839991 762102085 981977961 125832722 950518428 50621662 795385480 781612363 854643731 875776984 883941950 761632948 915959861 49425795 572613122 316251293 531080646 639615210 738594120 139574706 480347440 67975204 378772867 103831985 736092780 845905836 956391798 707587011 827121090 169252885 358751139 452160421 872807016 722913758 821536632 474562867 496170759 353075551 483517098 958409777 985873163 542017641 747166285 675373403 830282767 474800745 865267239 67201339 346454658 637741551 824408035 465780980 697028324 385086972 809817293 789057890 796380591 248279510 578434067 121580447 515078486 61746790 87007870 899215016 931274472 30606595 912324711 356634332 652370636 712210274 818505493 43217650 824049645 328807604 758506904 117596400 127652578 710199611 999730446 853819776 893874048 335089367 550747488 382580030 627805109 542064815 775179947 801552032 848144665 615784505 657476303 868152974 920272683 140595549 422655771 819641344 881480416 402428391 759181502 547196806 612687930 345430017 628093194 259885426 887880870 185631932 953833536 707601794 946807977 871508076 935222787 285855559 852199147 565624404 938487197 347394684 413632649 981044202 996136444 277717613 886932727 59278611 236771089 834522023 888331708 490085756 766844235 554414630 805648608 271142435 350841456 725002342 758394371 137294551 351634205 337418989 881033735 641306747 684176749 266700694 585479906 686249944 807001849 671843294 680037632 780883384 925244138 645462170 955685018 693321307 972236665 719204592 854159669 751649541 929632947 737615479 841566042 469714410 988658862 128544946 187076422 748330445 825023194 452318548 582674907 425378221 998164324 48847369 466065652 334382784 972859892 912553305 952937685 937049355 984697167 856956209 990418275 643638291 995135028 875676750 985275195 513316691 948837531 119428623 438494870 876777064 899545796 452596835 622234183 492692529 877092362 569957873 617353789 393530756 768863238 727260580 885479224 358169526 775745619 212101150 912528141 643145971 706493561 26557592 827587720 175346271 286201553 549308765 638641908 837330925 879058970 906693840 910173387 919273616 947004697 692163575 727980038 491953632 715504554 499536446 603609715 406293644 926246235 994327724 998643494 131581020 678723053 581217296 728333824 570020978 624015666 12767096 456397107 379171346 813137439 179882835 639039232 302577403 426936301 602354435 998582372 435814778 972540216 281569455 439569958 828539854 897882038 590040341 596483539 581745263 661118669 598374693 700264875 199633241 716967134 709846190 760058760 868537875 968586143 134339492 329853193 723645259 805424677 659176610 692999388 430290677 455969076 554629200 808853611 539371743 881321861 850059478 979999542 912661321 973365652 464589972 970017485 39426098 964308494 392666208 799574487 742633969 930027813 844745999 939657223 779275234 899204543 734529343 901165311 214519069 235690983 878210504 888030309 412447014 700033426 85944002 707691103 179520350 898897586 417312855 908568211 209805721 434801970 671668367 687737435 822733272 894489732 665189385 980252098 295798645 418099673 375410799 802541266 784225188 952686806 903207516 916513612 385156955 798238603 409847763 866306764 52511548 295096739 203255582 632941628 627348214 816213191 214478717 642247721 161962065 167672864 480012088 608062108 475160009 996384166 77335697 595261260 989036380 993663077 767814358 875640984 228001023 613998332 718515546 894600551 402170055 727019131 812061243 920752408 626624741 710887485 858402712 909923967 407035738 436301545 349142951 393726813 278819363 512147853 702650917 965252772 145915968 290217319 258620070 601461590 156443987 731246938 570706182 789287200 912606570 998529418 677888982 957186188 868591447 957033258 850828877 898981368 462333596 550337202 748721558 922523019 127274170 724002510 472902237 789336401 912785548 946203665 37019147 613408624 143604527 663795250 379702657 797705834 93524552 569201968 214539714 450541337 141958262 661033363 977040176 977060322 214354885 362784641 99001887 477521539 127062638 313334513 928031726 992530887 442119078 856553160 14301949 237566969 234705875 236643135 400060235 465181522 841942323 843022457 561439400 563308360 531881299 625562197 939592259 972404993 613890760 636435394 924017913 940655261 166249956 465981406 271170015 277282074 705406057 866426723 719214187 968209534 213445296 292600797 774470113 873510633 106737251 424258121 70339020 447051809 489120900 656051580 71894449 648071627 82768133 997009172 409890178 564303644 509077442 987807177 225739866 336233840 623049464 659512585 895738028 910008013 972979836 990553934 200952589 594358533 98419921 563586591 248976205 810017048 355661964 593154349 881288894 996691809 999305766 999985861 289938939 388466701 188211110 820752777 267112724 766192588 58887807 98957166 458279200 753155112 158592500 516060706 302858168 908301160 876071006 929510889 675933490 841698054 393987596 788445683 979740763 992776015 794723144 854751137 888684562 963977820 108470848 844162512 1708674 28514211 198403868 554336955 521746293 757449500 690517308 995250726 846017112 921571477 790832781 999074905 778240575 787430331 620366669 921357152 238708154 771515347 987017772 999953488 969947387 977238784 117749493 895470318 694536243 812890510 918438540 926780616 361340032 586688779 651783422 802644584 247214212 899752049 850815648 989893621 329419310 872418092 493838438 549183976 462456487 721426908 242705912 538111537 391384911 460618393 633743288 809027073 623386868 966069258 82316290 518381885 93126521 876661300 395782244 888910277 818885942 838192511 407584320 625865954 441362274 726739560 633077703 788860338 279191416 399532397 281667915 430216104 551795813 959348479 94057829 247216018 461450222 953155819 93907302 416438267 579101943 847269630 300635237 573898373 321770818 795842895 817454750 894163255 394860510 595833745 67775983 382274427 366505575 442317656 384040712 690638501 401269768 515610706 50198648 691327426 491864425 512919705 938456017 951285371 449406804 774820904 299084827 962028929 44386731 912319054 373451142 685023431 532883968 635621852 582605323 931671934 175073486 509567247 74964868 401556345 402169334 532239514 205777687 748808982 734809087 897097046 940066450 974587872 227625422 335524412 903823225 984688864 408714566 672780768 682052912 999188732 549922946 829475422 842142022 947150151 48149206 695833608 443302815 698162353 273226792 651833029 632044345 633160370 225019547 856537949 617326031 934399256 808797817 958713009 621223703 882994534 451429464 850795299 505802655 565107185 728613051 876422948 606195162 727352996 967302120 969935411 210880553 297781221 450790152 813114792 342100918 392872171 825118136 876619448 964097439 995878645 389909728 700061190 343022545 919472634 529044212 667618197 280811846 419866444 346485626 492798451 138934221 849979541 387708590 692946444 417330124 914053414 96311808 572114907 1367823 272590008 133023376 447267681 795891136 902709121 544864273 620034274 875222219 931197737 755368535 954322127 314821081 674662058 119905032 567835962 343330876 740453540 151861478 711352402 39458624 478890518 846134513 994405951 279296854 962371297 643534505 915941636 926557923 963286543 539693130 748497752 104373190 200162331 174758592 734403994 659317514 693169200 60607103 755602255 710310246 987111503 252573857 357900034 803519162 807709058 660198540 737554235 616635874 878440646 314052905 897359653 832022121 849213711 798319865 832095242 318585819 526544702 813271827 900232559 8125594 395505274 416558067 762160399 346031635 976563277 937812253 981535801 984033748 997151120 782073937 819741950 331668736 427910748 766223999 882103436 471300052 836492366 333104861 927521065 544460989 770136077 16175800 481641032 215779997 841623889 864378098 903865583 815807900 864789139 615298344 979811158 535148629 980455087 163986566 972626987 177582668 935405474 915808361 942308018 363694089 394602261 719733134 831310038 411504190 413533651 414540912 684347283 272007739 702716056 321899682 347892255 998412225 998528887 486098890 667589034 911902893 976453754 48525653 321066511 989188970 995025193 386728727 689899409 673021369 988596132 236405528 539209017 350130269 894444563 825935266 870325056 362983996 588992340 927237801 936448368 736706279 768235333 912293387 994880867 823067731 850109480 752370144 871636888 964068038 966621508 165359551 257681814 568476016 618655940 756427016 911497563 511743766 993821972 155035979 936659973 420533139 922388927 837756917 919682989 430912690 973244493 345441801 498245566 323061043 332285448 360242649 361248123 659470890 891341421 920307997 973973740 600808585 869068433 96134633 826316257 231845139 787929455 66802099 446021563 508089682 874766255 302824516 892135965 966612263 997463460 733750225 986636655 100732425 690023235 308991201 323104947 290600303 613747586 72485080 579113301 342170582 482954866 219415141 650329714 501450669 614149923 218942570 816046743 339506450 745427495 787966840 811966929 177073905 856603879 651254928 836439251 220614915 749538012 183884741 391723103 704049450 890782523 155939230 191224961 536579440 542437579 998075343 999122250 574630776 790686271 292131458 561264901 709718084 926267018 180884625 914495770 500950863 944462953 951482500 987936232 713579585 769806193 896344718 913314261 653344187 746264047 521492917 814155397 163683207 505898305 40877713 863034074 389086024 568110172 655166443 701268758 283519756 841337071 827457362 895281834 721275678 988524917 500962055 527873989 685768971 870542558 55211827 608750470 193423512 242024327 607289671 753984863 109960941 293545027 864253423 915937174 233549892 660969945 406893502 671998615 605863280 890579499 288320582 542718960 230372838 417486027 978872882 983817481 82214967 603481419 210480619 397366708 425661041 631520825 162729522 403218447 775479981 929071410 875173225 895429342 230103605 701282840 862509974 985336025 720579186 733721404 824146887 869603354 390685383 692200050 679976841 943969410 72533893 170339893 385692805 641455170 960297841 983576917 723558968 826942016 570129889 599542864 341003325 674083374 284677266 917212496 894682162 990651528 512036040 576949855 540880697 951456161 656395222 856994180 124909512 693592520 759191842 902079523 289414950 982717419 829063452 926425759 494209412 778575066 583322446 657010085 194588036 486892363 402591559 551616696 469348049 805909579 759351789 884601893 910686331 981659776 671919283 803643653 232791137 835877041 592102057 597378925 219437363 513177605 681094481 750826135 305929427 341978804 623213780 680077448 98859207 208314110 196789458 900036166 245846074 528204031 462845780 482014755 589606283 730630549 974353884 999016574 195582465 366804159 224847378 368718770 21747161 780538349 660376256 844142712 512976307 664844436 802957512 995110226 633024184 955321214 48348618 836458196 554857980 986248734 579017338 939715689 445849611 487946910 846132047 939020771 710926348 963498461 741521094 856478490 652371252 900905573 335317112 499943110 121794394 211874028 86961648 174568759 257358053 817187467 461592152 718346388 88287676 784497545 346604907 576157344 400270678 557288139 509501266 599679953 131027258 150511583 17954648 329914364 29570132 998169472 953127594 994662566 263922270 754901459 228133291 460923825 873448939 927579816 634974246 899174356 220712251 445012682 764268050 770447388 346342633 607942931 37975471 86129188 637673721 821199803 151797529 727169780 229477573 925385952 188763908 574945704 951817899 975052294 474745776 515508714 210051297 244775710 303367974 599697997 95494778 258276474 544907825 833592481 269013214 470657170 943145395 951334986 330530194 425618141 117465861 918732130 915607158 984258161 645724549 701742856 722192698 738573134 801271845 941041224 459813885 753202136 574406196 711387367 891421752 993150797 822831036 895155311 184671983 472751488 555989323 698290032 867671770 988990083 628048697 950041164 867340779 921307558 117196979 845969499 417898718 793415939 908283778 994246636 92945921 876289185 144625596 691165733 711838997 942831235 506498075 576244548 839134308 980051948 469623375 574516499 596822550 604348240 678991844 729213148 22514508 114963632 88351548 934648392 990786405 998889497 273752313 726734502 998473606 998888759 945453817 985142385 73205071 267671145 199697439 925447681 90091494 579817107 562922795 568831669 432021579 756022227 231560831 831094416 958517975 987635054 503622245 888266902 15232312 253645790 23935722 855226422 881943594 907550467 421153446 923993210 553757918 724069986 731329625 898256929 771093005 998009933 144276930 346650080 465766658 831997953 201754016 932319607 807433522 901349481 469681713 683647882 133648529 348457879 603347234 934695085 180620352 368682250 579828595 644253535 820846861 852131323 886581899 909629751 776950413 958014986 10763962 681267346 503225698 552330325 662422365 719566242 217738067 511153316 586059151 648785830 49877538 853071556 342140066 492127837 774236952 836198042 400764310 771834649 795798281 961544545 825651060 951306916 250006104 305515835 765177048 800921678 223228977 993913128 996055747 999997728 67202531 538659278 12446394 565587960 306233052 983705384 804669287 850297257 307747834 489591056 517953925 862986018 715727942 833409657 121556414 475491548 653568420 765518192 523611555 999631747 824073054 879041878 353482350 497597622 571375888 743310783 923115238 965072228 312404365 946501205 900236356 940370164 137110029 389142596 714273294 789437761 417153005 572691814 167020680 604770420 313560223 550203910 10127647 86121437 128164154 741797895 550087410 612472669 41383019 116879512 505449712 910994550 692431187 750709788 837294871 912979164 214465632 586082907 248152272 672033234 407322653 991875800 447341652 453633436 821791686 957847362 612829467 736077559 810101353 813173407 240789915 996145162 308797661 666938674 930280985 934654166 491832193 860026688 200647495 504162091 257386063 398933954 806075243 969437063 898062025 991393270 267333055 824886245 210542929 613072456 195539671 884296659 376651755 390714760 673731616 940335360 759657482 964791753 908977905 961965077 557667627 893442724 311617527 786677363 189118901 229210764 642363733 806137061 715817490 869774264 208227671 624704358 723604228 970557097 843482822 993116785 656867889 828587362 267536347 961127783 890491270 926679742 798568094 992089171 176281169 628921686 38240900 704485734 418186357 499534228 417797700 745424751 184242449 238582111 643371606 715835883 450439580 713107907 619034899 724632512 882677658 948845037 587905264 708952559 938101189 969523906 749023492 965887747 926606539 999177357 819756359 869804209 578834348 862138363 697523098 700429354 923263730 975807904 478457282 662238561 398923601 532731093 296858250 513798276 852925827 895187128 528099817 990875158 62825372 834483853 928844227 954476516 464048772 978852721 904717690 997063437 113912358 776909779 968885153 974298344 650007767 885954752 806720421 990331447 455730411 539071487 824682825 871931605 586294317 846971986 792954946 999560811 787185358 898647726 769915338 904029425 744541591 975426658 834853282 970677553 483773740 631091566 608413474 881161606 693976698 967442114 288506457 302186521 73094095 609043449 243623540 920599672 970583426 994122241 969265679 980196329 31103700 368102283 993150052 997954285 506069594 538067788 457837442 703931611 687513536 924149000 949510877 999507867 836118077 950117958 177805099 754656277 906068005 907290378 745068338 821651055 324780754 975060155 123170557 517035623 73503371 602406750 435989489 951469825 224441549 265338622 82420713 432504686 849771468 900813271 817096237 999227230 520029801 739671281 728952084 870490501 82858762 262911767 962285660 975694996 122438864 935837023 955623724 961126283 723196250 997941835 856106973 987455911 635003916 910492058 766753908 884412814 606939783 917987540 794200752 882988369 199611980 424634582 333865716 951352448 733913417 856665424 115241127 614369107 521189669 770998628 324889953 374950850 385200019 538245732 981193592 985329250 208133775 501143965 97477699 609328731 196948507 643477626 842926191 996150895 715296337 737638595 93396822 969251492 459883432 623504619 325676669 976879929 988406039 998322588 915455599 972541432 655675621 792960510 394706707 972605543 436317597 968827096 831939923 969447167 440680308 554697644 473887779 892180048 777958360 955920312 894199445 918938298 470808848 503982355 891434857 948112308 177757227 923331095 515430815 969754668 959508100 997532179 537306876 762810995 624495087 798651844 772599896 908293572 578375106 637775336 760426168 893387342 40331282 961299054 515021374 627679883 720663993 938744541 268246585 721528249 137351778 956091602 658243465 877624842 686288058 699011342 268395317 892046135 359214843 949141928 685639419 910606295 573151796 823433970 300925090 351202306 885186443 973200823 696757393 698267320 164318441 999350441 116666570 656925994 319114908 936473675 938462052 995557621 174308443 290625209 729555096 939342036 493917787 807531267 929343952 992270662 62125857 106500843 15251745 555217367 290970964 480932797 330955250 896096954 172179004 746937299 387340973 550263204 132317447 799690440 960157203 961636480 33404567 374096245 535221240 913239722 890169668 954774353 468957466 631882772 239973337 782031658 895523812 898660467 392646439 560081127 381704233 449565083 827476546 999960944 580229670 635174499 319364348 605154243 198433939 233742041 418365184 943254085 137958266 531832380 966434547 967377734 252346556 664642914 390677633 958928414 224429682 945447541 715089882 907593557 460045487 911308238 580718367 976015525 975341415 983055981 649704843 824136342 959501257 978440934 968397017 974178011 164016731 368973730 468747284 640867661 708840586 886467775 653903028 787781726 279370089 575847133 297844512 456718704 835395037 931815734 665045786 788698267 34618339 917667651 718815030 849923977 540134813 700553379 733120866 961722190 342418075 823097652 315878876 810864386 674412126 807395126 111779288 277579516 866295858 985215423 450416755 720560164 737499173 958319717 216368700 750695094 996496659 997213056 69380481 131855752 133502440 644044814 23518647 599488931 680672680 949577796 180847148 569402755 251525372 873156646 979695320 990609364 835442005 933169364 249392149 275162981 244696817 756975013 338747374 538095306 234381923 586957827 197018266 220147645 51254489 215252565 674981387 956239255 306049188 655168089 761324716 925407289 668516621 975216466 441542409 672876561 540974751 885707350 605280926 730385234 100916696 994025760 87426574 643126416 842728619 859936600 742961945 800261538 679089299 704908199 856607148 963973856 761803340 912981761 666481320 835742311 248106524 795699216 993904040 997963646 510755557 845934822 850293182 993271191 148638981 358302697 650564735 851910820 504317304 531635253 781676456 965139846 137587011 405131429 539536745 604218231 502106775 917572081 113974737 219104233 326016314 591094519 67495480 603386154 189962732 662507262 312109051 500025120 423126609 569144431 230892399 342277284 531984865 803741953 897718525 994912925 495633275 952865017 846391630 947626722 307433511 362891220 800239891 996666928 397910764 709008714 828863335 951539716 718449729 816370563 914860765 935816240 648875352 763733458 698155182 747504664 635497760 834651881 689605552 895296709 600156284 810517761 424477883 568023403 466306328 616825611 409305641 814436763 367858904 970688266 944366731 996535042 204806188 960548773 118872538 899654422 522165415 866844964 174049180 479487261 588972697 945637246 658107861 959070591 883736591 975345562 80961045 719204587 675798732 985333231 277026542 411134889 559477029 854705249 317221027 318566454 772819468 885561798 777281874 971577202 890496201 913750774 127356160 664711095 969616868 997647681 43086435 240721345 587512266 759019134 976330859 989332252 884817795 954628340 68139805 921840588 440969320 854706751 918113298 924650939 706072098 807387426 768960940 847385169 234295061 396830966 492978439 521406262 304403610 754034032 473462808 753304801 275814191 722565892 311973372 450291963 386361795 413661139 744944632 811033249 166069218 429259281 147175982 495614754 744463772 810819228 467754638 498815578 445599404 623754131 744220375 950086428 509881475 833417985 848539598 973044835 791280391 937208205 527077558 781493359 557756355 712390454 126174779 332244579 260753467 995668907 436666618 923983371 48730312 656029076 359915557 380688960 830867425 930444989 795777768 865624933 303245143 384378106 90663832 402990769 18843421 309055037 765211358 802145316 593204705 864562374 738787227 763963710 948707052 999475456 22532730 213085854 947114039 955532977 449888610 978508184 630440173 777588454 775467583 866191407 828783781 982822113 470460149 910961710 819268977 923319228 58720697 711512385 41166267 854875442 229495930 268648720 436738876 812202494 758490593 813634989 741836698 773164978 775634318 803413921 770928151 888303608 173673946 377486454 855523087 917522956 853625736 980406099 783076228 795008570 302631797 779210984 535649930 830950415 181529148 431148107 340589268 536072714 154085510 916427554 599920146 931558348 38224265 728879552 97113496 291941872 718975269 823294582 644959788 876807168 459864517 601033935 876481077 927041620 409894697 828727855 83074243 984941949 764574553 989450412 167329454 527992207 250349373 678524716 449285163 999058080 606545308 616018994 100864788 825012337 409307941 747715328 524010528 825944245 652400535 989414767 96216871 912916926 51100167 641248113 875360405 992923555 44016433 764705368 902464940 938398458 470475723 747471245 540937468 743428152 389402576 807522070 876869872 924204907 695818670 782353421 97085502 300682039 905073787 909739653 57549963 341163711 746042011 891110516 151411831 324868174 692404337 874035052 643022564 971080401 937156147 955372294 976146505 987051552 728171288 994148095 63770137 401680521 632118164 973294882 702221243 824171271 377711185 735336385 522194032 633415331 382544642 915421458 996845068 997553554 329460032 625241221 810404049 998840304 318253608 801969507 226865027 914939269 163851200 886415546 774504490 926939938 659392745 863453404 935002055 991719995 313550307 719445282 781207137 955712196 899313042 991105079 387442638 690513886 986437874 999462990 371666128 581788570 941893734 954851221 302697135 308288179 913380712 945492755 317319432 425806530 216603928 811105408 761446848 920098052 986368261 990597736 191917456 801655266 67636681 466004935 72855495 89805149 101652761 578836458 650599477 796175837 424900000 436741969 567665861 912656231 328002931 982251850 961583163 966487123 844364143 994296036 768691773 772268644 66550765 430065642 977026620 980439174 237541996 596128475 671211467 917926603 979879551 998316747 15636 235653225 286539768 851077215 673415738 892181389 985934381 987800564 769754909 867458699 15785568 903291802 506598609 843219866 685443330 705547235 438170987 462028087 475315069 841869099 980844229 986095838 917994 746516065 772462601 900514088 932157411 994833448 155580774 222509812 604069542 905246786 405960480 951646392 36551672 259460133 185688697 971595326 624074733 957999026 701631526 808312123 483523912 944004496 198752393 967609196 453370656 595876125 509734668 575185590 557049807 769046707 183635122 723993441 114059850 839294664 802481410 892017778 652639841 859694519 378404294 488953893 780800190 879633933 595831890 599818970 941082762 998992202 784754207 813926449 408272345 760755472 563580254 847802472 548456727 645356844 380160322 874380706 98534932 873108232 209343901 476838963 296164594 852019874 94155549 413857298 654071958 827254480 456354715 507246745 11508210 577269835 730442801 970862328 375595734 549743297 184597970 874587107 903303577 982206840 359898554 925917806 389500909 603909277 806664983 892340957 320702738 628903028 71220398 561351120 171329314 235138558 89921027 93804623 444544546 547702777 847060562 970821007 469084309 587806416 267066902 563432341 686342648 828869476 789146676 811463612 674306449 768235732 813408379 906195186 781752149 889556665 667937747 995398980 558602217 864358680 287044516 950066340 519156759 851587768 45141075 980786895 830159597 987684054 808925728 970701286 595894438 818930522 530295559 600239175 142550368 250203423 336570810 433278801 400988284 709436087 500932645 823911757 442309220 633595723 316057664 823385320 696430150 988385808 118931552 174524792 513585625 726520586 389013544 486390127 479722549 511792441 874322475 939884085 419210204 666152569 327189345 906751402 63075143 648809177 747834175 947188488 791814949 814333119 887756257 968663886 712083918 889883682 661294812 891280904 778790816 986763020 970266454 978005643 717046906 760619835 734519778 908304174 483766095 991253618 290048828 808123903 702738841 835742375 365477247 955840176 383594008 793885074 490728966 579545815 519006488 873716824 701862180 769471752 105345024 291360063 69827807 749042247 120360701 262032643 148222676 350251699 882077268 910722238 67021103 667675489 984363451 990192647 59002836 483020560 858277470 918493106 587029261 710413092 739064132 811815899 965969507 966770519 617194103 631282061 134616473 351381592 108993608 812325601 954155489 987386387 542988821 957422601 460130877 810170472 193020523 305892393 248031460 651297271 440005860 539917504 52020922 450225696 271357279 386855086 713245221 718261412 599360642 625004726 95027996 258509907 133370487 535948261 609421381 665701150 21915683 250828347 429591101 670015462 4178872 272886478 65952913 738391707 759601943 764277481 566934450 661107926 822170338 892507492 796207447 980931279 472169663 639811954 814412671 955661255 265177083 836457014 434905670 543747796 889381309 930214579 225051637 668371283 470725305 752534061 654701597 737643604 262375962 972402235 697221670 892281759 318646399 887734579 423532528 808627515 938468579 992314190 53216840 320010264 792043067 867286234 836996246 965896232 57311266 906472672 504356983 873159210 828810243 980960542 849624465 897103003 513026151 598378845 306635002 493666850 251397574 744559140 802635744 977467479 689015726 755450145 25386961 742645244 591717563 895442330 902278411 995565650 196948135 735172984 47178508 808612596 883951476 992005661 116267133 672175713 210305018 488976085 774069308 800459310 300952780 361608530 757572334 775666771 301534562 977934594 180686024 395748439 439294009 794689562 719614350 769774616 259259862 330635929 342471781 457737914 645334166 824136163 559482778 811347434 464261609 996749562 610606145 688364339 713214040 805342565 247722918 720207118 513334287 773439042 510813065 550236289 116243888 394261776 349168535 680949031 108121464 727200825 820913569 988050385 376069163 615847233 75983107 111796765 343732507 521972472 245908007 594509416 692503494 722026513 401980272 963552379 255688728 841372153 395181049 806336284 999175761 999917718 632193914 717582448 902951679 958303889 137383500 251051762 398648130 525754573 737165554 740841097 423114202 922535763 902443823 936516558 547490518 982620847 145263034 287046512 41957425 626776060 82469230 876483259 917932156 943106323 569960291 981420814 151717894 996231496 674223663 774368645 329250548 349418519 657570921 881949176 389162927 428800578 97259535 191354037 140969584 237500946 919666498 938461642 985019479 996233484 525013306 809863053 182030516 657136046 818951623 958847242 637850783 975924586 391596743 644947713 555685152 980853581 877649168 934233404 396196403 949710887 134586568 436811585 184936677 791299214 94168863 696874935 196940047 677321498 452738768 580590174 898217480 992112208 796722795 823627920 502191036 888878280 574901550 927819848 830805921 980605059 23521754 96576940 435850268 820698476 642433877 970541629 282373521 798087551 273688927 783245362 189151217 395418557 393524965 902527127 753951899 849528091 812408466 919420621 140863861 822227061 40368556 241144914 223448579 242616227 12910209 763130559 658327282 750409547 942073605 980106339 681978146 753535321 256408917 280265819 614229118 646091729 560184721 853470374 375903045 499246689 862712406 991879810 639377260 812327028 529472361 786232941 719859367 732573752 146865078 989763405 694879289 941521549 686353188 855433281 358796422 619781139 817174053 873650894 40643068 485605147 788141783 983020104 919609651 932625070 412550760 790860894 565745825 611470028 137435680 227346661 775382397 937170248 621088518 943461429 778428591 815245032 536347636 983340122 748272397 954913185 789070036 855319351 269989944 757895226 375896579 835755437 770378319 778279168 868729547 871428633 985865345 985865624 814015468 957243058 312591269 944622736 71993221 791479416 760145416 871370964 858079716 947833794 91853818 644032720 51466969 461296825 392821450 555136292 221514452 528069915 211707879 335800367 89175005 695761465 217170617 806679052 675409234 718129858 875070198 974899996 256890268 390530959 221033354 906926185 299361496 437320329 977379475 984454919 92271138 268750894 251367977 929655200 852255408 888942512 253453253 602751231 6891685 660121781 298285966 962328182 36155307 628470040 970194415 992720610 707765485 757588240 553945780 803895220 182828880 690335563 733925975 847564240 848268439 881921145 743952405 823624603 659255156 955697545 659729877 977424809 337660600 529262885 619624365 966402980 256789640 263226008 384124658 919493174 499520369 962099987 926540989 972012462 964056267 989030388 167701020 643561710 473204122 788405773 640939901 658766315 770408579 797267248 857546937 859298819 953770743 965890417 605822130 814198995 408341694 644259232 324168084 662682194 106018060 658266629 816297155 846243941 85562050 891612539 171645230 859319367 881986443 939382569 592904704 632120972 177592525 802318142 236505900 617805912 477514580 504670734 700940593 804783446 883915099 983474927 754012796 914966541 801268443 952302757 793158814 830961079 776883616 790505487 949940441 960044960 931936345 947555985 949798681 996655772 700640022 920927122 879918030 882656395 291897485 933367199 544520595 689966654 440211408 902152744 79843247 635186539 381544844 409855852 710351208 770279168 429943977 947441419 868221471 945005959 816122338 981882280 433043799 622572336 595314400 729826074 2491433 385237304 111664000 229499703 939197984 982797153 716950762 829718400 928439328 975154730 222374307 924640129 845277601 971919956 689542042 796930470 116261568 948831177 13128504 331532230 853079361 997238163 163678498 708085292 704709392 794287125 225937829 834690296 736322786 951499037 308311178 978259510 962597407 968804370 581413177 741116571 219447471 779349608 253857226 294759928 720793690 952019779 422952752 878430559 920426335 959874955 408064103 438406643 125272298 481321934 593620978 896765119 165564046 483185445 853491713 894352222 311377838 757752668 410540412 978234409 824228531 907037019 606895209 911104584 282783182 674077421 415973261 902658280 947411887 975594016 592362690 969634052 510812995 636161591 732082143 971419948 353832747 833085299 133623985 695970306 695422720 929164788 707210275 962419939 834361612 868209217 760132676 882312093 943157136 965768508 959786694 964493042 591626421 805297414 896661360 982671907 220728972 369432273 827142084 986214491 24670442 963907604 531350928 890262297 753667531 801273428 829440652 866275318 6757870 949478444 415287152 990302710 581245904 788125640 783299974 963407054 874007918 880395290 275778783 567585463 854345660 980323603 12265317 377750438 340203099 442230199 593086302 675945341 951402778 970599273 801508568 814493389 547419378 999516042 219400377 751164955 940461527 991005709 931615922 946284093 178202853 359341632 245006899 466862128 557630626 909812730 885437707 929181361 891857721 925066467 736948889 797898912 523300734 923828441 59240461 731342908 768058607 811657889 445840639 755011470 392701677 819979724 972625336 985069705 477347941 919772997 481453913 584271954 24294938 993516281 159428446 577011492 299863318 826519531 965926430 975201866 136908416 330226590 867784223 915552418 26453972 550425950 752544945 962101283 339114705 424214332 714439071 950139124 313095032 324196861 779716960 921436453 970651906 972911150 430554471 485424366 273907264 582499115 106628942 858303816 344469244 687495499 984747528 997629786 95427960 416392116 57435508 105886041 839874683 971693210 896231853 943625715 783181874 844543634 368244686 397643161 933616166 990713566 866513883 935472648 397714761 856469295 276669613 987288371 69512631 640018433 559406604 897972827 833231695 994829160 790423835 795523712 606998365 615727746 204569397 611685808 759440161 996584561 478514142 987445647 31210380 891542680 512071906 584241869 198106055 380909646 242965873 348863455 513938474 658676642 713473944 765393757 202777014 814732140 69838015 693251332 383566987 435695416 407991575 659706463 775646190 988004679 233309179 619787564 867163771 925475884 655122918 670735803 773992800 929890713 155574700 399300498 252994434 740270671 557942060 790593626 950975028 959494659 386223210 433850697 52455249 345441139 706094613 898448204 113757588 120354892 565268448 592696181 639874617 963722590 519181191 700145761 977758940 991851929 282610419 692521974 566898670 896382187 503958035 535897284 169505150 847963696 340479517 510848959 729574274 901674019 165743683 583723262 282805481 996296027 756818210 924510223 632336208 659303055 241749440 558601788 144404994 685813082 292631269 605485646 381029154 866972298 472162374 742908111 848669021 902358758 797339965 864848985 469945450 912154229 306050294 458564644 222323909 692374057 861886933 958723023 760345978 967989696 987174673 993469564 267473700 524346102 755692272 920465865 892149052 917160187 504994379 881150989 606729013 865019854 395218280 412264524 331929783 965490735 742467834 780242378 818457559 845996288 313809815 595985613 172640829 532476059 272204831 549972929 228200992 528885871 978777564 986973290 818223302 857182749 422592820 843931114 331591666 920286948 877409464 999011304 372929883 779662873 306395991 899669764 553687584 844478313 539446614 617839218 215993004 390117379 447057958 590964750 482325571 764111004 326296872 509153838 918201006 999985891 896018923 971408342 371338112 780673074 76492562 408171366 193171439 226964150 759156671 928937854 620235123 865980120 671167100 879427865 936055908 980182139 593312127 984959126 87553644 765259897 734595719 822148931 764625072 826080897 455115694 986778233 549271584 853614059 798549886 844075372 791516838 848491792 930566365 989626021 911346449 958072971 957588498 972799993 523277226 555284003 839480592 995944989 985968820 989123329 321466299 503310986 785649365 916876012 57339243 828747978 728410848 872642169 465858098 545391522 790548239 965530664 133146626 302972437 175782150 262784240 391501841 778144004 201377472 932170096 656300833 807338780 812540274 855285792 530413293 963646046 795592465 828020012 750095562 948371654 380673116 918995766 121585440 533801682 748668069 771354356 597724688 669757793 47824447 841896306 855205596 943872030 963546954 977558694 512312056 685218102 381385170 395691692 833554614 874686122 746594384 922191137 951991560 959901058 36874222 502220207 544835531 967656480 207714087 333349626 345019027 632574106 321905563 847248384 767902743 872522260 67576961 404632493 259032825 472352113 868491669 894095582 664996211 831002353 105783548 281719877 219323887 983094032 76047393 204106378 537533739 538235350 384147557 401447217 769576377 946205521 114726156 422154141 657421407 784316099 914429493 941334181 520074793 687750574 434926738 516809498 530853558 951906097 687877556 827641040 79562580 299705698 174800244 234991672 288061082 776026403 33491450 744311148 709217571 740938204 946517910 947202124 437949885 530061721 290006078 568616413 413123848 913086770 672544833 696975851 905486133 920588446 742942338 956398295 131231178 402697501 406685681 953402910 530721718 717427584 789296501 969258946 599672385 739387889 232910620 715552556 122038850 555775634 189865889 799519035 942737940 995778675 717782942 997779795 117611566 170205583 38791553 676238973 815027869 859810000 946904947 997474758 499897914 684466900 866891767 988125386 980991242 991223544 814323322 836870721 518215644 867659330 904976338 948139428 422609818 761329875 432818942 640283686 12955554 519529115 263597084 457166664 670768536 800593529 947987813 992348798 864944041 890936001 112210146 341667388 468713159 966589708 23325758 591564294 455706885 506959483 195474851 547788913 320384807 680384178 898155218 990799158 153355730 584819218 719140334 812743890 288396073 473662854 974546289 996344654 707810780 804410913 322820468 601591414 873991886 879717484 782305727 832722157 33522296 801439692 602857627 610647446 214859684 231746877 537170356 690607962 921665749 989297402 576331045 639215172 991042701 994114347 908598909 955157735 334894397 676305901 788424893 938974952 775935142 905217863 918882390 977891518 354432823 373155994 577373442 829016413 458147001 613353556 712722328 845661262 754474931 865793175 336836146 607658172 826765444 964773002 629356065 717110721 749756686 815520668 702212072 845047443 24469943 228581297 20343540 227066330 811500633 880136437 117185802 123865227 348995195 918444923 946903972 951017700 995110686 997651766 94692978 794462754 884090249 913835024 895005463 986022877 272941856 559427098 551316751 776037985 963755752 986662782 217036918 292518890 220209599 704666671 822295809 838143302 880303010 974256707 847177063 930889275 11506612 287350961 616129788 637493101 628271411 927656792 802878802 952049020 772964156 774510378 672481303 720469726 355375307 478830977 791342089 970723882 903983716 919473262 87212295 989703340 235587933 750532224 887015778 980065689 189812127 501064370 363899251 406326604 613765488 852416376 972428595 983657436 536659970 830006333 365068754 823272659 704465782 770613467 469741706 808071999 272820201 743627043 369651648 779602307 862439265 906195823 160999366 647323842 315960696 607793245 414916498 561944972 511571671 742386250 779387197 847393804 672864197 695126429 855836997 899868945 154447989 924687272 793683680 965195486 925149385 932398914 459397743 592313413 808381972 916410338 18268734 806060778 534274461 591114338 319211676 954202111 576885069 718435555 887548870 999809548 157291247 699413982 459829143 898194240 49055923 821210726 318709927 389328577 903015994 915534665 145041732 229912355 631285762 849020425 933495286 934580654 475124409 903731623 362893490 941941520 508456693 607343934 896846520 918988870 707757035 741217441 536284026 737366089 315343143 840115413 645744401 706368984 420683502 748405493 720557646 911187326 710269696 931746055 478299748 610900645 540998342 673979135 876550582 947413434 633743588 968161493 461777723 531169029 649825630 666346831 614866963 842592735 280149950 524663618 650336043 742561631 318499487 658587124 839682948 847749143 321991083 447868188 926356228 998764003 952364816 995767159 457610328 826841228 936038299 951783338 767854666 953786258 157188584 271847403 635662891 757739231 989958989 994437224 884303074 979438416 817154098 876854401 558938981 883743049 841240788 974216577 337016315 613041409 381460626 434261650 103525650 124878904 236654285 481472472 738001301 784168252 825893616 946162208 621574197 969406358 892914946 932558400 138210675 890262803 393876832 611957878 55582046 866064837 359885614 583286389 783806407 959569812 768714744 848446461 759695819 817981689 584504722 895779654 750647040 802630547 878774974 904126283 149907885 950072665 579252818 704234671 90698233 817576230 903185201 999174081 249445118 924880026 886151974 947484535 960778675 994949967 87341794 646961810 933863106 994313778 119156646 939618074 253085220 867541706 38751826 583780008 510045474 512837348 602249731 801102487 534862417 551116562 289665100 752312122 918730495 985487722 560139442 858889677 464785004 702771251 911381099 919221703 611160430 868820058 595641221 608455080 951004820 962438017 783666320 886719278 869523952 933775292 633177949 902946671 391354169 913635891 870326271 909072904 363065364 671401799 622545440 954032304 516138011 824724528 423340114 537548216 743692566 958839727 595407526 966234189 106191294 535381916 307956503 593064467 170825249 642915368 992381617 994494644 964509327 972855558 999491613 999673562 882113249 901392126 666767294 948947467 406702728 407291097 142414596 454875832 762075801 878792315 372100827 614469748 731930600 794091597 184424995 324537049 831809239 985440274 160798502 653289081 281574000 397384795 509515903 933706544 96260903 755505713 103726647 181124768 989715947 999590573 249974530 851706299 991332948 994307259 443167095 991039376 534351021 784640066 826417632 836572026 394804493 422048390 277637555 693792193 617021409 861325860 718572292 989109893 212716267 514409706 516879274 856941087 331087451 558483363 156747009 432007163 182594536 771764241 429973204 910342725 674446114 776898867 686713990 774595696 963263871 971046004 555310311 768933612 4205601 33326635 500644232 927589401 623903589 847258229 135011194 512503024 574305896 619027106 936467778 937592536 500177897 914430791 665028208 912546138 408223979 994520687 63157106 538735559 177183166 916178361 303958402 588188516 41521889 304212033 406162577 736570801 395576774 484865509 679152506 848801004 859400894 880221161 614400256 666859017 15666996 555042962 72034936 955021902 944327242 969442258 334803051 487375637 430488306 722758650 484847371 766896044 74766876 541780103 711109065 972232382 33135437 288054286 514927465 547435788 406527630 722528918 282075330 577978242 750280404 980287242 69582959 925856224 403664631 575917231 946537861 954303451 28970801 637905661 771582112 858372705 204564577 409302221 57364709 906895135 974425958 998080508 763682577 819176154 550744735 695876371 957917946 985958613 368000074 927605942 915449608 920967078 799608662 822963259 907566381 985608299 176077574 219867641 764590108 908527959 573950296 584495108 136240398 255087234 630862846 637053482 571111693 751371137 98924342 962607401 409003395 868451556 619361149 929333625 648817353 781551779 305540646 707759843 916823265 935249351 630217729 693053125 681988061 704970200 903764657 904828098 736107582 984742905 894639838 902048037 757506165 971436038 18138984 955272354 548459994 934276846 747900777 800161822 855792813 999623901 99361427 338968795 751290251 847908774 622930873 789373673 964570422 982565392 508855742 957743800 137207268 231691547 617918648 916842192 634003930 896003762 653634453 836354799 391273374 925044621 577739796 699964199 410342014 873200199 122498434 406002644 364576934 653466956 688145460 969660840 475995758 984414743 488044115 855200025 294037532 802833259 417770335 653828909 584338711 729650816 317487472 660398109 467289438 589762236 314842885 817677674 417606077 706112465 113671484 265374166 658829104 714739771 571773675 822302422 884129570 981184261 582319502 670179221 760248064 902844413 296341760 684179048 508074844 871924602 25346450 645866287 722500974 934989064 679456205 821404006 497036366 637331090 671785901 871330651 249919116 572237504 43723479 567284189 644341406 835836723 206891150 895070273 623775124 729465851 640394684 848163180 839620132 850665374 717874221 919962354 444874874 620363989 240035322 729459371 263479292 475473348 892416141 929088171 729684563 945516553 870471782 935720360 254458852 550229872 869907898 955952310 817249347 935350387 227755418 782184307 63784791 433387307 178232048 407043056 120295833 916515014 640842207 876965361 933135640 962395912 817023551 999569127 29305826 196668637 436399758 989198463 578686843 637830676 770151425 878138051 772710004 997527306 770304094 816126227 549577883 619509969 224568289 305614171 338351661 490086342 412883372 895493602 481481569 742434683 900669239 997760552 835520494 959715792 645904993 841993139 765326056 858140416 579434224 702047960 673149768 790377446 522363544 843939578 256614752 406751637 558566620 782186584 415856704 765593694 890655483 981135225 172651206 923204801 747425141 771651217 833856664 977889883 649892820 870122031 657482943 865365751 36933070 149684570 666909975 854623433 748861030 972223760 747490412 804113345 600926238 641278409 790330773 819334493 946127906 973478241 621504339 668245575 312306567 385099726 805622377 919136544 979747527 984346190 939991944 956140574 900104155 943106190 909535936 939024830 558414125 632846160 837199540 882505437 355058321 502308406 127265808 947199468 887902811 921046687 615363275 892538824 894592880 939713620 618501550 979874236 590885012 988082163 344556494 766938081 615791160 920116559 496305482 624587663 184683665 737333190 617505024 871318451 65801152 899903788 243668079 857280791 478471137 988139486 467111901 652497735 584555999 606189586 433383098 978469262 25911791 435173634 227911675 316361244 415380069 718304967 484357784 596732197 526938003 690263816 505285420 955973665 822208186 883069771 868241190 991357018 244233897 976281759 371018615 776315300 858651386 911560216 691877550 823339604 1994510 876074856 573325527 670321064 115764356 747612843 774312624 944224826 362378737 644483907 334780495 878356264 588815747 876776068 305319271 610243727 860146567 880459130 66992906 793202907 483572410 885177401 3493804 475680531 383000690 815980424 231726042 732780140 553492216 699998205 160187950 668465213 846129349 913785894 200876707 295461581 157660449 762596399 464067005 970978295 774597718 965911589 804535735 850786479 277886669 303471699 891546304 971562867 402920862 588089166 758783597 867358399 737196051 825309234 812015285 988269012 95417732 724376364 175819314 387276361 597428937 642597204 740712619 778715313 610294118 649171111 38953416 93477063 822421519 855199939 295111683 914976369 448640949 712492977 973226462 978699768 233614321 366732512 143320282 352475675 624698208 803142160 857906716 872686042 993348587 994274412 370148172 537687871 19575068 490197950 145341214 813948794 387685304 770276984 244236881 948963412 286426301 709474510 303297714 762897793 500567014 938735154 693487480 824907980 565989220 895851838 922173262 942604800 388683091 505421572 38478283 819718730 398309948 768072682 751262495 883138150 86019885 501543050 176199014 623527135 77575654 589762278 990832142 996338643 907850016 985682566 355612826 717087952 674172948 923601774 104146789 448965675 661574143 667119087 103478532 444310424 116372175 874829191 890311485 907454294 961375216 965653414 515176078 949265805 6765742 153561430 148040691 706764481 867024631 926700719 732910085 918593941 116468013 557197958 51848552 303311660 301249633 814729632 278541647 511772094 240568594 382395602 496558592 986750241 272530426 715057115 649445491 931075819 224032193 686385204 406275606 810078387 851641722 940593128 3369067 799021955 588446221 854317627 582725598 828467965 888750495 921393709 201686230 313536990 617847882 767406520 31082442 464503001 440331374 854768788 380087022 980155864 521854934 634517656 775290213 913082505 881672307 964854773 791649929 883883568 622345514 719448812 960076299 979770513 430533638 483312372 995968188 996201830 578489500 709774028 34314805 989167998 105486819 186148522 5991121 804473075 15881751 388029518 50464109 530769056 84621530 858718371 96879414 912685453 257005187 628861072 257868300 443375243 451836429 906529361 782410535 986288880 761988578 955729349 690253999 812374400 640900632 907993357 229794394 477650305 270961678 496667059 861357547 898220325 864976073 917899563 891469496 920491691 780521593 945669603 964982625 978865623 790800719 905658604 408874558 647582382 104543940 837697188 349017636 902044967 28494107 167499909 865236157 922799316 935708173 943837020 662111899 859102141 867831725 911195311 378793836 509957478 131807816 838564696 277453252 680708583 596373326 754163111 53555577 441185344 937513595 939911474 159776886 721893019 989371667 996549316 220445014 565253220 924722235 997243809 733873259 781279565 514329929 650812354 446295543 859080928 751874704 817392528 949872365 972917152 537720612 856734597 230079890 663324195 72065308 101231384 151781199 629588884 154830977 295493732 841525401 895368161 598332782 943489200 222760897 455447654 365575053 855252710 704545173 862588155 909707116 992774861 810291127 933856176 449334466 873275051 119262888 954916710 684425399 752318591 708666613 789879404 231411108 877901073 798087592 893541151 834139699 984719884 851345906 909211600 278831341 571909165 459675636 706169649 644060279 958329853 60178957 186325611 345987760 762392874 827286260 938726008 872000223 889302423 108527093 111193968 882891599 963620600 838692264 842469681 932202224 953768880 102985395 233979185 866691901 982882341 26138256 601287667 281230363 746498957 895431691 951449469 445518562 869095052 255783748 606535700 752820240 849605641 242836384 434348389 161535192 166778410 506980533 709543611 209305072 723835829 232392498 779321341 938906412 939736513 814292 303108208 554215256 816398241 380022356 649200369 370925230 781675029 952618134 982157061 8763797 617882884 842734264 924769654 752280516 945639581 367567868 474654759 846440139 883349784 447736826 867686826 295540279 742221933 262021626 807389908 590718192 860348112 406898433 537345860 828306027 991571056 679064595 683686411 735160554 965012061 857967459 948774420 11929368 302715920 836025123 883727281 429043720 656320402 30035989 605871368 461111247 742717662 145216394 577550120 500693918 548439437 496935559 539127773 701137546 731998647 678409414 986673744 497492629 910367417 114797430 801579356 525451117 833734770 519310140 762304385 168348279 521803810 335849044 877677883 223299351 650013205 548004280 879649084 645970924 850349714 497329677 849414487 296333348 526145418 956655046 963280015 457015906 946552225 919358044 963825535 173138992 697696634 991552643 992570559 342594264 667324264 228576361 884171185 921359429 996286836 711138881 761362958 551020643 936495254 533495582 611260647 316628244 734670109 209068570 278882841 250795895 407456750 994483282 997756538 179371997 379886714 458792586 783243208 824505172 894869014 171806959 518446065 92351806 430083947 156882424 736104782 187491828 452841623 954564033 969806280 265058754 558234328 737142136 778494587 365538606 660740249 289660236 361991764 703489010 846089812 780648425 859536375 156580027 976484680 116689976 752905646 265571604 946392199 36169271 110430815 161549302 974267470 871829116 882490638 528641430 754842024 355005465 845537662 217748211 882984652 694096502 770531959 251063245 421463369 910137641 980686869 696025197 950047110 661460896 709374369 907466574 961359138 418205834 799558179 97925837 408496462 44861366 738299181 339380309 508218718 978662189 998004129 715242764 800391262 543609565 868438186 743066 727726821 337932550 931069032 308253052 328082241 912613421 935231591 53596398 986721251 680342284 916571939 866530808 926834719 411269048 425500164 254373963 819400595 980484028 980755710 428486903 784285770 654022086 708093792 863959177 947530523 54741587 723663236 507368566 990360733 165268096 278898721 902963804 974473293 892344066 995263892 293939568 628919492 862519840 961290129 925705299 981426415 94774036 612276006 136130091 975768396 856581026 951760396 989963983 992559497 733779042 908349825 462776925 976221970 775056654 952288377 766382406 780181671 600024381 611769710 94083947 973077320 407431059 808003999 421537211 789396824 579264852 845359805 501066215 763836660 597243482 914982407 934195005 944520070 539358365 850414588 518208060 621674380 167725760 619256800 886138940 937540106 945928594 963885799 404351356 738564700 57873898 847740000 916145237 964055303 570110703 674775614 281692954 577857667 311879066 902133666 307938883 379461966 296435954 502714048 970951700 992146266 319758718 602363160 119079661 189483182 879111720 962183378 77239068 853752875 124495184 184304501 980592182 981766351 661775410 715165357 969780142 971494220 920066385 971991499 254348644 705972763 709093783 743272134 930672606 989376914 171474064 784778265 977412193 989619835 68887535 590422191 776134936 983420013 673573395 943195426 561670361 643861904 199280868 579995797 660134223 953371863 943364223 965051972 302924796 460354649 601258791 988527417 705065087 789844280 420116238 472405912 251847982 336642754 248871727 971571197 991070630 995382490 981786517 985908590 394524240 480356898 433560412 987356004 670596499 990415755 136743874 851667341 888994333 976348021 519559939 668353937 538253793 842420632 844894822 857832332 73312538 571326546 964752822 978525334 485676237 620143995 107618219 365158033 178528172 339215361 212021125 598815905 800509459 834099361 975047081 986303806 510793776 946115884 782593941 807492328 64577488 313492800 517824284 845296781 847640118 901403951 236686187 375597517 821384052 879527294 755699177 876784001 49671806 491578440 492639542 998966767 922316108 939376742 240931763 905628716 474867046 924755308 365055810 674135509 640091324 836539094 279907662 328602047 147470709 993627822 538876563 581826418 389142707 847557764 106200899 765524199 29078497 903350477 700651402 730475024 26430308 389372651 330082500 379471664 691685037 947837829 383957142 955939696 811030139 890834833 990161516 995705628 879120026 971686628 239636891 648718677 187880621 422883571 874803145 875857989 873532105 881091508 315057065 589722927 311350003 447588399 828509320 893712376 837792322 985199676 386907762 627914905 730731840 760999547 109587078 562156615 268360556 998192150 751929896 824613973 957429079 995225855 437484937 562324872 182063137 529059063 696186443 941333982 431084530 868320357 273513838 872118375 57066033 265513010 261963105 498537030 7255415 396855460 443253211 909177443 631491403 655158772 648004731 929144862 404460159 951204584 152388985 373267179 501055721 723191864 67552095 434010638 108410642 766709850 502889681 705369017 383541980 512229584 889594794 996509698 804186097 958331231 258508410 674831110 738415114 953314332 953755671 969003941 242099329 932683933 351553489 692510654 733887166 820149350 254492740 862943810 551024685 915270915 800892107 891514345 301207134 889410577 554628913 783663365 803393980 915932233 80122663 211195221 930817442 944856098 324289089 824858761 133017188 406334920 83105252 738810187 943647287 993280156 921107399 955178177 135232154 220593109 242181491 609087794 792139415 908649280 913951038 940791435 794948916 885617276 946022717 974652231 125407822 772186693 515631119 747961055 791311778 812200725 611762534 716953984 810716959 853056605 8688874 461961826 844880666 882084256 526184955 667866316 619478740 900796031 644239257 806059044 198081053 991389742 162728094 774910659 91312425 718493215 654693426 745521174 274391956 970143847 55856472 501937567 663544737 667440182 935711765 940903365 367366046 429188075 499139627 620919872 975823904 989583392 581708351 846165996 934654699 966189584 942736173 973688541 334585934 655715875 141841263 156479807 215302601 390842098 944440379 957592390 985349382 989419712 187109146 645244931 630859677 701600956 664325306 804440564 705153547 991804281 662298426 867427723 461700149 775383635 411493362 437264059 938947791 993887964 784794997 808919862 882948761 979326702 654535335 975188202 104870776 383125385 162818278 472664571 897201982 923023881 124192936 566650342 807778827 936453810 439702335 792800526 124323702 933115096 969485392 998095208 136682641 828185872 803481840 912094852 428447141 660196690 383086859 398281543 806407006 990425049 949092295 970072181 548433771 680347461 672682754 985254080 440554476 540003540 979386648 995112375 241503941 513023976 538165811 968933071 794524605 903250051 568686842 983153285 911787743 973571481 379288458 723906205 686399736 888980000 589517508 801152762 178807613 336656207 538830266 982818508 340193873 587354450 802283105 985190573 71817017 138671118 459928127 848089152 420770041 591435875 921935650 929149086 144468213 814056863 947927748 991104642 415343180 428159586 700007808 978897131 294765420 506241518 969767144 997106672 394160483 511263884 725698297 729188114 24013248 807253933 444236745 815441710 740613628 871546620 884961333 987837591 757006524 926289175 767319749 982717531 989353680 990038504 430845432 960334294 947088900 975497535 63320687 898323422 31491792 954569152 25741093 301690301 230163213 550525931 323409530 333979816 660228224 918192275 365504997 879262638 464088427 922426948 835206488 859860389 38867288 826625066 408662923 719781070 334107763 736119442 727408106 778421912 98978458 390837383 320891289 336827052 788881255 800962658 851870393 879340975 180902825 610664410 356856924 845323547 407089657 813778507 197041838 891768656 463104080 723737112 332941722 687267939 748968752 976911909 473275843 775263049 925885520 974323686 28376641 647327089 291851539 292046043 413048214 997933867 709909478 816697208 814587168 920434117 989991377 992403944 859892653 985055650 747301699 872854308 661385443 947973593 225027691 309453039 941988572 962697027 727498790 908313872 399397667 739002549 319253348 506488344 21093875 561200302 219087128 357369268 746724831 765258157 160663136 522104173 108234603 832294621 145368226 840082273 766261179 973262538 467135587 612005348 315091152 952467614 364778887 367507246 885297133 977632893 445870083 840124588 361821115 701012440 676959105 836965125 501984012 693488642 669011237 990391688 257877470 598554153 266324819 282282855 837220771 990920454 39694726 114556356 805478550 835138393 466242174 927576157 473794260 634704480 3438590 172787263 7504325 856157816 341334008 563187807 89124915 648190283 770974207 995371176 117822258 530035871 684713244 832758164 380048330 910085417 604918003 882421424 248911445 394456351 806504496 879870560 764941559 879867709 612998970 797678915 345489626 913891001 82809572 361696936 161668539 650387165 488780051 614567129 310064893 505043927 566843690 618728335 931075730 969260877 222760225 646610876 37647440 492715783 472766047 561966867 26241464 521965696 742228013 808726519 729782700 950030711 362036927 564021447 291124341 565090843 467538704 623179973 155905800 186641478 770069431 866772204 54997416 574693108 813110041 893854624 920178696 987209387 458744423 712093758 378913590 651893460 715891498 727913598 717067220 772116244 551507376 876943687 737728570 839804220 757403156 999645731 233085829 601888081 359635587 835663718 808727642 895422459 782201475 827143679 593829562 869182876 149916394 537943262 354256151 671233154 949244856 992893830 669446260 954079660 8627308 753983803 32536086 921251503 47600940 216430887 277511820 373470173 118074228 671149938 848060777 902440669 117904982 565098237 230917243 914939371 490829794 887389222 618199186 938127735 315302319 516687164 411065477 836412061 153340195 680905178 714644342 738123910 194364947 614136642 390322401 663780769 966163426 993055699 12114327 844654981 705885228 928851546 567944630 642581167 446837811 941637132 366389194 897976406 589348866 876266993 912643511 952723019 387975200 916481294 824454790 951143267 19686711 832295514 386664469 774018538 754198501 913643944 102800613 468535663 279311774 415247057 367929519 591996191 705908626 953844417 776534954 977710160 263702124 535051806 853944633 901286611 941701421 949240233 941773982 982322144 161676875 798668251 359378344 766003370 945516618 958848744 980083481 990471382 411689258 995165703 995917815 996826065 873229762 986841438 742248599 835365876 72747816 517026287 571210030 757469281 549115963 644285169 530645886 930179062 812065714 959377663 207939789 690177690 579692209 878969435 143200448 994842532 792863434 922821812 878011905 926846940 782245185 830752371 177316674 326053900 476828030 983460465 801342547 926619865 805787073 866757967 187524333 793216636 256926010 939048085 889569139 997896145 651260301 693183986 577639006 738952838 58500553 505795628 92976311 709933575 932111062 952310342 383347310 944187172 415994982 715464355 799465623 840721475 114752695 996863753 18984944 63040917 420869696 482355076 804444685 841646261 801517554 834842288 443172577 572068945 56600057 215993050 6430578 688357260 692446683 820600076 37273686 437607998 41816671 125429137 371298484 925029776 111614101 163791150 543426104 611296408 798483030 887419484 251105634 538888864 27933920 141671623 285974461 776341344 562890092 899269170 414863390 582842008 417451178 975761476 811534932 979615777 601892579 791556665 463410979 629570821 675564275 794247901 656062152 795331421 858150915 997943806 218275352 254087555 703320917 781177299 864018757 918896070 441509808 497097078 340181260 357040297 301995598 579211827 959598089 964404838 165891833 702758029 935461404 976552314 862903257 863392062 95320049 125247145 189135351 600774981 958723439 997796935 537765567 883742353 118631594 885541304 823477298 974168056 296225654 300893663 427975812 793128572 256766101 501847466 304482409 657375344 78479069 518455408 827989393 862629679 209939365 915048048 715137139 833433169 536424436 629509307 539890122 602655734 975907655 982651286 563985617 645910363 887126530 956410654 566106964 821463146 904225290 934331176 307454510 657035289 951947903 995297286 918772619 991476918 77745800 554123133 912389930 917467925 703061015 940875363 933129471 941762337 821992184 916092774 332723253 882745660 770253052 948383864 278845985 643462479 446129129 569980634 594965733 781600958 472424141 639129119 916790457 961264768 523468927 890021260 274010008 686039759 212255930 390912864 636988103 742002045 827645257 840087323 812735653 989266118 34153181 312736091 384540898 971940661 487430915 602398761 397369343 455924947 15337950 453625011 455947466 706313123 260679474 310468780 427798902 621414032 529091583 828510474 791669868 820233904 12207195 731402028 378622513 481278090 850751404 959700862 349976797 704148803 37318664 429953918 498136148 939253477 926737114 931729397 411167880 845908580 711250478 932926614 959414227 979246635 630663380 799197922 322354531 621620494 522192813 854125038 279964356 610188805 14997148 800841392 636608150 695532311 522267670 587658641 655413114 925160419 357096111 545533273 32267742 482449199 634793043 786856699 595507415 677317950 762044127 911463841 857477744 886540103 567324448 916287562 207453945 653865983 817250884 881460428 713987822 938595362 102125654 321695509 386507583 906500261 434826929 862251890 815619850 960258252 163116879 664377246 199115012 451159247 562821174 720223509 519922911 607355735 951990412 998165020 158511814 457014661 407514865 853918845 114740259 255783750 844857004 933152778 297542593 410146110 122144971 279879730 23085411 457180663 85604627 477471344 593774216 687698911 225021366 314935159 342091622 794011422 444992503 676435941 717892303 749085061 191593008 806268035 491630536 913888976 886997841 936537768 395469655 664239144 194103298 346808622 35925499 827770556 811632254 903940981 26669559 965859787 963572595 993209512 201908480 589870756 479183281 849083151 960142838 983541407 130543773 385961021 64822198 780159929 327946240 416114546 989698654 991148891 958125387 979485720 85252984 551220785 971793780 983851237 300197953 965744696 710988236 903577583 290593229 517310015 105308989 789481760 266123715 497147437 258703738 995099989 155251381 891526136 811246526 965805929 944181019 945230708 953840166 983952212 891342908 987345670 160426625 385378781 624530305 980547962 215153812 300890358 298658680 960449150 911940058 988703723 609615426 974297985 825416853 907678845 590272592 645482584 509233162 993907468 12812761 103930177 348016554 927998249 193118935 823786720 504949565 976311192 983052252 996319705 63084640 781054637 825294382 894327610 756192468 830243702 55969896 654765586 243546283 828184887 822638336 969012408 131708041 678617339 152954283 679227443 643516368 675162406 258224370 710883819 617289283 722036078 802082606 931522107 312894953 960551853 968531319 981485577 951110188 966368612 461574422 510602763 527466671 861241007 689270764 768867504 213661664 515926496 856781839 931196495 706354456 966402700 109654471 928743254 742181441 872345561 654590871 921407177 949574052 985180905 863656014 916091161 716340633 914706687 454781832 661332596 204994042 396538156 103758149 680439560 61240218 558354453 102746365 900686225 840802499 947152786 338301959 396349143 414951745 681742287 782232372 999129009 958042340 998104520 739789803 937861667 933669352 995679199 436186110 844334136 824872108 955464329 203067864 365040989 586268219 950579163 677099885 987539300 669260157 990742822 859988233 881142695 749957086 891517513 492213155 795203601 831185764 858144649 164825361 672888168 545899342 601862048 781781614 905167744 361211219 497841601 654695115 859511435 968098274 980772984 956777446 958554266 460566244 497411749 662626173 739950209 807059996 860197543 983524569 993323613 75681342 109168074 781183004 967189236 248508000 315908041 439817226 623123333 798399152 964244715 355104139 999030655 256997196 356025183 745581154 956220379 140290981 606268037 371380884 881003041 465483220 734189745 199346279 287650206 141855263 321903371 657342010 883649825 999773079 999834361 526525972 759170466 337161871 949555759 621469000 831989083 918752018 946245999 46776176 518137602 919477661 990967532 802151564 886626270 436964842 725249304 462526252 721444704 24665482 204299334 909365614 918597401 108122294 584962514 638430527 838429879 671803008 781003832 283370593 794216759 414665528 428388643 253757137 670147615 619010916 708323496 306234922 996415008 972142650 980942318 125075770 967496427 353420758 576400041 125319483 998676389 148046325 901343339 224737819 834301259 436039926 973120711 227850350 501767397 964462982 965092026 873399645 999780424 480671194 727089443 630189966 730176413 56815147 561554701 823162171 900480441 930220857 963086714 509462663 651208987 978447688 985388420 198393293 912095392 416915782 985813887 773092960 931512759 349079120 565175141 585464175 661521113 140227890 690134754 642114716 796509170 968924130 993386727 916855891 924020656 18226465 213035409 332372534 489007009 904254325 985481814 472085169 593708049 849720491 965396412 664586730 860724445 12582650 766085600 161356266 806586892 855781783 945833451 368104431 891012006 677221140 752847100 692129532 911937183 881613166 973532055 133538535 446123669 970644629 983152107 486385928 876411004 324657002 970876936 747832129 927724950 663138605 777325795 483653521 797889211 360628450 641903432 734712015 842987284 51597956 342122821 498757175 534166348 792517463 824680158 237266812 706327714 145235701 196004604 818830554 932211095 108475597 630295269 475637433 921040945 697477096 754306982 556211422 912820206 395212830 994545963 90877892 379267522 504298286 738526380 259130437 740082345 954689764 958764326 582672120 965843584 374409561 969131573 240686654 875674090 690144531 837985554 813002509 959508368 568789367 893246549 816798972 942328740 302270883 798556238 44107270 137194852 262632350 463145467 7764903 37274479 212884415 277447555 37198163 550904825 844536250 974963000 414893733 911694920 53483655 765415835 354878347 644195214 570936466 917242718 433468510 576400259 373373016 936544665 769954188 952927721 637694076 701108829 673817434 923067972 581159615 830210700 610858626 672620474 834535143 925857755 416696222 882666122 408220540 743697234 307687142 620079332 756885527 786063981 452858639 469283476 527484939 857122769 601818201 989088343 362220673 750925164 37607332 712301725 152976455 783594082 469196379 970709316 546977355 966164227 427956952 766392256 737200047 947499310 863215642 919794251 605562471 938943420 423483432 545576195 732255673 762235753 464303922 733964035 548950315 939313038 10174619 561769030 509662982 878371961 941660688 949840461 602090062 966981023 940272838 964299618 956441156 977127277 142601526 927545795 445097305 568583129 730158250 912926748 532904020 973781171 245944635 891769886 857284514 962135704 257337983 316555493 132439609 414580421 637592167 809706006 513660809 805093566 25342323 587437540 228355451 818192318 953325570 971448291 583778878 893884909 527374822 624870385 264023214 749059784 212968525 272050265 221015972 785759072 862802684 971791696 736470687 821604151 395016392 653860959 954359952 971344791 204623776 253919532 796455118 985861082 329528973 580269405 825757373 962142661 639658812 867521299 995033898 996091620 944358086 995167429 631122023 962926403 978370882 998161290 316061933 807715643 231264310 779333583 105452810 892598040 274407264 721430665 314046633 728948421 542853585 859677406 690561658 864640126 469999772 882096121 693226010 736214990 59274834 772249800 10191021 193875249 902786059 981062929 655170362 730048524 46141104 339239851 907853696 910725905 128380056 322816000 272331372 922980570 441387927 876038198 360763007 888806631 802755657 872206352 903871310 982376566 78193123 934021191 578147596 731384484 852298205 932758277 953931260 957434133 914381040 975171592 974231149 981552997 970333392 972113368 294581657 766743217 228078736 470596256 3044481 249551773 116623420 993575497 295321550 740030961 650588963 872385879 897019265 943397677 280182188 305203988 770895445 849485114 294042204 354889391 15296430 479743751 33274439 318343807 256036721 720567988 903714945 968825372 171213506 833376149 543691731 811975136 998447275 999190909 629095242 904297855 16138883 475637183 836819528 883085965 308541368 345066822 916257438 920445665 618474052 986453458 612162839 654602651 710951766 941903701 684116744 938939301 177199066 971703151 163426478 619468057 130855620 264185500 392980432 842339726 496796249 855021461 942813519 984004895 105903564 627187199 695049497 924531792 425500509 870082284 880230481 969974663 939144111 998017251 58343682 807131940 340121359 792011367 36691614 772394952 89250755 951646636 888312901 941411838 242351339 243304252 300970523 880618501 901756638 930899560 322710959 723138750 901144035 985111997 851832686 983412308 863661757 913267826 164046839 915542013 739808046 871518770 665864574 803248684 104069937 239514641 149966513 915972212 258949590 683485115 152587359 596601182 614026186 744583999 333765481 727937730 958983090 980273443 722131032 758876092 930168316 961906456 258883654 650369660 206678444 966857266 390602989 864086932 611933516 895241019 39339107 59040289 197506696 780819430 859377705 954254065 678685596 953871353 738792253 801463416 121097631 571893284 498830006 883603517 614844704 852905540 461180943 720953925 90799092 743005841 1410680 621308014 545275930 920094809 347293875 689999442 899294765 951475577 234557408 971622091 836319590 931207113 874667603 933728960 341896399 788382053 639749292 846454512 41946882 754170969 444966253 723859954 750609503 899785977 291606760 997631340 61796908 95481000 390517816 567341182 217334764 651132335 271067839 644737067 724496772 880917328 480283896 792697183 702123557 913296670 446756334 817042345 597244879 868635454 687751311 860352417 300336200 797325207 362916317 814255183 72440418 380089206 914876447 998417929 127374641 392313293 817365256 846209338 984278751 994489632 572484681 920732809 472176047 992349270 60482540 844113686 673661345 857892308 494540986 747102883 934104534 956725333 853541218 878599689 756216281 927493300 951302799 967333897 414829489 903345142 731544472 779559704 72579338 398823359 923595250 966967627 71161004 382129288 342801727 725061289 497282362 677484282 949639603 976262206 874544675 916089749 742516121 914749011 694041492 822228089 593550922 770754736 70132327 806754076 102966631 678669399 866278339 987315889 787865956 997521706 172822519 796696145 109319919 753360199 339749213 698813096 857710073 951940193 519595805 735868065 736687147 967711640 76894916 192642515 902845833 949326442 484982934 714774361 215833383 720448850 346023276 874060036 233007634 801315666 975088997 984686173 226544377 634010133 320282386 886679321 794438315 807816895 335632051 878885307 705172478 883648051 477815008 800404101 406640004 965673817 369278178 973792162 848265820 981002943 539852421 624104276 559421569 875478038 589293474 675574357 337662440 482669549 718287521 872299724 223494116 426311495 361299598 436347465 929649958 966279134 610466494 738203326 706556064 999831023 21354423 276167783 449306359 746886696 422181297 431281523 761040039 842371745 562117220 578750078 740815596 742070999 164253065 873076817 294711042 314310111 965362981 998185025 616879687 805095593 357828728 590652548 864564302 992664508 340639827 562591290 678662948 988475529 649693759 676700864 567606043 884280625 198212257 937065193 604834240 811820623 858472974 935049227 491359880 657509979 113257889 865210904 278186657 630097357 824939831 851320307 433401605 658574824 906244480 986786567 107953735 632487765 683213458 706959570 385074166 821125637 784448373 921483820 141724487 892269650 281505418 516514397 558009480 578257527 961490078 995933385 874196398 879416036 190753275 425179046 240652543 737047222 816603987 907520013 634711506 752009950 483406336 891261957 832066000 887899908 444938305 971673378 983186126 996362153 637294808 818151413 524668487 845559693 795068939 896364592 421663087 591659070 295446205 329339471 139042237 715934262 317400694 470441246 905931280 955824015 446046982 572870560 384058170 435978052 761125050 813555813 206504907 295181534 638352405 902670290 311984491 948388609 661164100 683496265 603327834 622826817 929648873 962592949 295612840 547537723 675491144 821193780 294949879 574995730 452748378 457555322 61984450 75433417 219817113 236118157 664935574 926867181 716694510 895580851 729585720 760271350 520555513 839919250 985948697 999059906 201627138 431329756 274459170 530573750 18159558 418992742 970078203 986748656 314463618 907163604 207063776 975520716 183107324 731466245 575793931 976475887 307758925 741929263 814264191 880638030 728215240 982930343 982942252 995487541 817352621 835159829 656502358 722164101 188237966 475842264 681710853 726968140 487093020 607404090 400093031 413015574 727007636 908630214 994066330 997395021 829770387 958889902 431196454 693771709 431718385 573244490 440346946 721497676 557874439 748645791 699162426 904982972 992630747 997474973 257455734 973105179 272950330 456392316 822049875 899443038 251989468 510638621 301590157 534074270 556203847 893436006 288116691 527750727 771129790 869052124 358276816 441134515 3393806 837766791 586462727 984012729 642282036 908200377 836547813 912661724 125927547 916035191 393837191 536276332 942478803 978694029 696403875 760078139 120221527 795848184 459879324 989318334 820227298 990314914 930809023 984975711 160018892 589988288 88857824 975730144 355323079 445324245 628085837 646238226 374225874 884311603 13035594 703268301 676999722 972911030 994896213 996201334 234101899 830883612 253464122 744132053 61028073 306875389 984146749 985759536 619465870 627270105 547395381 794607135 396542786 762988430 991989090 994572265 672994643 806428235 918705250 995140981 55318037 754448611 493971896 627499881 563017482 703067720 843854161 848860585 186241835 568831536 441999584 716385949 708350960 734255003 665654963 875736515 621321425 885531575 779869406 954832150 592278330 997910265 303417387 805637449 873223273 880339302 906816849 967658845 144453413 772312250 854162098 913830791 817624111 921662310 193795111 479285847 654057309 759806073 162574660 626265726 133999016 921153678 562215227 780964800 253176916 956352399 198276294 948607239 373451326 666660222 328208075 825252766 430400241 837220012 235082411 701122422 639730014 788671551 755335155 756420720 550691780 893697575 971949157 985144691 323091405 648198281 769957499 935314809 299194525 989656480 189250657 296528956 269107632 277809004 401953185 536676344 335207776 651837154 791239487 870684170 736739644 818111220 825825345 905696915 553906859 619649301 289290571 627049856 180270171 471898088 995080880 999634848 133342966 185723888 692490109 797579641 154998134 867005392 869322169 932865783 295547234 650924898 540556071 941548817 9396753 855647370 26087992 325528050 430633307 813720927 104182060 912131572 718602818 962454330 160377636 870514052 45803913 371059045 207643845 958517683 342852293 832278600 629514359 876200025 59978733 200681638 842726216 972137420 484060443 815576716 175872943 869498115 543721929 985138897 381716668 408956736 119096089 535025642 280977026 971537942 794920826 952072991 554776226 687602711 10024941 625078371 284236737 716426890 952267293 971952823 363857670 620247067 364097764 656113738 13045369 169656601 98508462 355830963 778026281 934163387 523962786 947054826 229632254 845086089 64548817 131050016 922670006 974072457 651901313 897382255 510221454 715452963 823808788 830920394 737149179 947339746 296379001 480452306 42038635 400224176 158553084 723045006 428160520 874584045 161931626 534198178 73571774 780097887 139282758 227916003 837121067 884062397 758004950 908622618 934729353 934876607 199614591 660394713 34512028 381475619 272635787 450761360 124616361 134239643 368011007 588468067 450812625 949008135 267454350 670982841 236832855 673733420 279115250 926203971 320180327 399239109 377951224 479724506 893881982 900793198 410152384 953345452 169474917 792004313 981416119 999899986 504323778 573277010 882180952 964818292 108127303 901950975 880910648 993039158 533788605 620339491 178792036 209925882 29591931 998875758 889973732 972710226 425180732 704832265 477001423 755672957 306431994 937261858 492517163 533939942 687440113 858547082 524066180 848715325 984512690 992391861 119541100 989405318 403933289 439447157 846357252 864211890 424048944 443123500 491944764 956338678 684509199 773120536 899750941 934036834 719993071 828493261 612238117 841672785 985150854 993245346 164642067 186027137 790564937 959139720 555246622 623609086 772232324 899273677 474437072 784923589 324674952 705932137 250523687 453306930 905576043 994426104 666281703 912968186 923750211 952048261 118973071 544703639 748956717 997930709 255367909 609820260 162050625 379292969 624268117 876374735 571807694 920040072 16384634 698784077 957618942 986169409 966277377 981673656 63719331 123482726 513297451 764687683 459954119 722913586 981183766 984334451 866140661 896577434 367850787 628042258 152005426 508528994 568879999 854309655 193127428 863893308 220489295 805598101 87056848 761849418 61180444 441089223 529844150 706321947 906493224 969509483 517860946 790918676 63343191 449600152 592028678 682536644 521337367 814061881 920382377 952871592 821520047 861327748 105242617 201609927 96447068 752129851 543036281 894324859 453540229 948326941 294195126 578983594 391797789 786011948 49068097 954894552 42247059 993137806 483362999 622390636 639580375 790619180 121276541 615597741 228564668 512569356 530699290 853538424 890347212 904556965 927860994 952602153 802322134 934022281 20361738 774671124 970578350 974228262 153719269 234341432 298998158 637036576 314875581 608835970 239007400 343145560 449723834 620342487 93868362 353713493 876952506 938575439 911556127 954240737 175520425 816049560 983252608 990828391 796595486 935281033 992055059 996301070 174741956 372127253 311757763 965702455 532254698 694266940 402104433 532567922 260384356 897667445 570827764 832833992 18237658 316199273 520906806 913609377 135517300 135559333 295582510 321732788 381011761 734677340 220523626 757125881 66139659 250855813 844489205 897053841 418702066 703449698 844829417 978934153 491191014 670006645 544428902 737893291 348624712 621400157 282581728 869665140 866824551 970109489 990382513 992185824 505049115 558372870 687951039 823257690 391421688 480998546 891882239 917927378 702511778 984174680 289198645 448173178 354831130 359921238 466100810 596342719 23324369 321740845 465145483 825824070 452497928 779368730 934867864 945551564 389285332 489934542 536781450 636447424 959618288 994181422 177103717 310580726 322077634 756741519 634796557 713924604 330702887 901557081 124042721 810388413 347472324 638583070 60079780 998657829 801234908 938054695 329967500 749562275 540347773 628687287 478167821 850839787 220148037 477706680 117939378 580014683 973737820 985975120 627419701 878378304 332800394 656207380 89754303 577375666 451172553 992367288 94997453 161776949 780981130 834561273 47050936 448462444 78299773 111427822 696918559 775029825 859529881 973516660 553313696 930149105 982082869 996601958 841523507 927902913 166029250 185537936 356809837 884273552 47103657 174300535 3298326 72950983 499361576 720058242 496802909 735333404 275509048 392113555 251500059 553541927 347551841 683638348 707196644 754420762 905862873 937661540 209582467 224783416 582107489 681974226 665267617 814425525 272888761 681474684 71072381 462351284 112473239 425567000 216733778 424431572 189996863 663129210 667600615 760465038 291017198 807244201 56045287 526553966 681178599 794100377 269258832 397889680 260631906 575465050 383723487 882197192 208603061 450266811 199221089 975440684 771882771 904358695 719310871 756108923 73272439 484655132 52418687 685139615 525695803 572680106 53098358 938904181 477203071 776371003 651964216 733227968 24919851 873972176 466357397 605216657 172879899 586946410 179046260 191339770 907241540 948652763 955195876 981568190 645127011 839431195 679438498 770966970 116580475 387078668 27103974 787908328 590252746 606996147 231402588 916841829 431406620 569691491 405591312 675397732 499698117 627263809 252359184 628448711 218064195 268972159 211641965 301799603 743838270 787918626 808190941 870678396 681917484 878755515 62184804 191034570 358702812 568970240 115236587 357818767 475505123 738077728 484406104 974409815 413266681 524142513 569735445 810386472 784432551 880791124 545437392 715918603 742176987 981250690 602510071 868764023 186202819 564362058 702882675 905732398 131943679 629459347 556911765 813983420 137358245 544392259 559579330 899473818 253282914 293263339 626187065 947978964 940819460 989797283 465421199 686366849 955402321 968404740 260083702 570280418 431779501 671902645 414079788 554678582 241216907 533261412 487719732 738059537 3758993 839163198 241851226 993279254 227679854 872601512 633889872 861406851 452024396 838894511 478626396 823402813 883340383 987155254 628502515 888780532 845175919 969205655 370512532 563620985 676976090 818571378 859215079 981223274 439615111 574270632 440824815 638879258 53459269 756089302 198527661 392981622 425476055 456234426 513934546 594027376 740166004 813469210 219775995 904014798 456489738 571213136 240875551 657480096 418202242 738423394 314439642 457208155 882398309 893602003 632102452 827282870 826141691 983078328 874399124 974539455 65497144 958115588 991754139 998004075 386171667 436009156 846429853 886976658 503552023 679327166 926937291 966233200 542222785 641436957 381385664 686281679 274828711 984840097 12634288 620495330 778637357 984086588 982994840 984655449 58769250 148140975 72262634 774822389 154634284 645387842 929018665 997550583 292013470 468022792 922629137 994372643 236389953 910747038 2167566 260454145 29156485 733397976 491368026 515061407 69019582 214529179 47417508 260917942 357032663 589709956 678267284 779822979 150526351 648213563 700363636 764975748 956274586 973545920 800252889 916314217 498220024 594695645 246865635 990281861 461164302 888393373 576911551 823472404 759725373 939940856 192112175 503073500 87938408 387726018 844571702 848689585 574371456 584356190 902391316 917149842 457423969 938408925 87241813 683476630 460438886 637018196 28076921 697313930 975387357 995157805 941250833 966029912 790537212 914609301 843632291 936181315 108073018 390503277 374656117 920055501 567379568 649439422 955924807 967492309 150907879 182600885 776205360 965577713 216264120 759299079 594310696 690906051 694106648 966644101 218922015 359656400 291656237 430178305 460517214 945487272 959779057 989650434 929596400 968441640 423911838 945123833 436156696 871206082 101051732 540713361 197138825 403392520 697878643 924337207 260846409 265481071 545371071 790207434 62293832 273422647 994894207 999009653 700568477 841089046 695389962 804855204 603963659 696445229 809573152 839546563 43121342 743247948 645009996 651959968 202192036 427434881 430366141 881438431 197258416 963784231 880052924 928797151 181043828 274334376 342630214 978979957 733760815 740344130 104606357 161400296 918638882 955838013 134161332 666519122 508332093 734963837 813044072 946048051 920323246 962119785 205959153 768893417 854704866 934541150 527605687 648853870 340034517 774262470 104650037 172079567 279402550 816895650 585907225 638352102 811297985 836841763 52648031 89813466 95817982 980430044 67596699 499534679 583680596 844964281 228741269 884894672 863046225 984414924 173583310 580894258 354246758 609663778 785204747 912125048 801078723 951802140 604217284 913527070 223146649 614725406 751239855 855139309 448646689 774770060 788935931 898425026 962233596 985046134 173615825 946470352 503327045 906559060 663563741 680035536 611124658 644838240 611153952 905858854 752623511 959778046 800259139 984700422 578188559 896419848 554662077 787385860 376836103 891284949 964534391 980257176 496845818 969395681 514378408 716752542 475763068 816520924 763418748 862543503 314921264 508131594 483368514 576156375 702806756 769690432 612823543 653680978 976181765 990950481 685745330 774976882 240336441 397545519 677417765 982184164 626939033 837105699 28223752 883305348 560359228 731522293 791566413 963658339 945264969 974671855 178715751 953050511 962731908 999797422 200216541 429451833 151362214 293831061 622344774 642036462 326505149 397220320 827388799 938789768 793836167 942643832 554544756 815526037 379843402 465040659 576344528 935623615 481429943 584292756 741748571 797513746 802244858 816562733 675208883 801373603 915156401 941255557 562375889 882577009 493085890 997710098 120961363 658606260 512037807 603017463 782312997 863850598 762935390 798901891 38056102 112878045 585886332 935937988 355786871 453424152 510611302 654601239 778600250 906142143 430020895 569487740 485268398 946434940 37633771 143940118 536261566 546124770 392057459 786832749 375172973 771467969 682982542 742767136 336281354 996778033 206661224 812627219 360919067 666471568 707405953 953787766 437510864 979594748 645023343 817782780 390153489 511598118 865371033 992406806 829119654 975862824 353622793 612826110 817486268 928698276 916563175 993882104 439688163 925588626 428010022 526412829 151183237 765007435 579344100 815826323 576026174 637768030 540329032 864626064 962223327 998200887 389388064 496620493 503425627 730883946 182475989 399702408 787366626 993315914 63576539 600343235 359285360 824525066 839670755 888132919 511854908 962997566 537699329 550426291 949187165 971004948 334607817 983590080 451819412 727230745 100831848 428336490 395561435 431790565 274214018 530376803 573292360 831827782 753158153 916213694 837119096 963283579 538744976 686119738 259820218 510917846 559016849 935668431 152993020 810185188 855169884 916784983 336724257 805745435 730893025 849228828 835305692 853033797 96519129 317102802 79245673 134973684 827344986 960800420 602659081 763724886 58988681 105081649 752619826 763813846 235602787 640481485 397176867 856334742 470207558 714226823 56905350 111383191 15371781 122480598 799559923 828556851 878648633 918452369 690950594 738331602 599290012 658694040 365152591 680645735 757042509 897624233 202361296 832773300 962538571 986417676 849721823 992604313 591938689 742597197 759392981 760383558 224698246 716314537 609420707 782666090 660423861 951364666 285754559 599993703 377957882 642318900 893986014 921741372 112616015 711591863 336718231 728626652 540642809 825193870 413581179 855225842 709328851 791754586 469882681 957240884 273632627 553855593 614662021 959150318 904926389 987009184 874681833 903917450 997263783 998129751 36106114 140990302 678796388 852622576 787504100 944620431 918201460 970755920 32668095 271328057 957210276 992051091 636048651 663126987 894164251 937427943 197851946 555636078 156215440 783087949 254875987 323363743 463325738 751201639 225153949 277959809 366365288 696434277 63871994 980386124 363735980 405372924 249686232 981087738 908672357 937186823 355596550 420381017 420242162 693338704 351353193 811686682 742280513 900377688 51945360 819691856 148774954 296274908 536384203 926106980 39467333 318835461 920077393 927685084 454180639 799259810 182152714 732818298 478632717 925045056 392934494 416234205 810025202 971771819 928931464 929801476 460664714 874797262 334405205 782854269 881889172 972409718 336318144 457599905 140913135 606391403 175344824 990502121 190776509 808258262 98964627 698866453 453139117 704202552 864463838 876249746 644791694 939159843 986414275 988466892 441968810 812705461 496319016 709294710 373642518 728640492 1197687 831877437 202939927 849697657 328831273 971671879 616258275 997272011 700119516 920287940 263963325 532803373 287266789 648154374 707607453 734335320 692392131 745873560 966169717 968753561 890578767 962725912 472677197 616874455 491123595 600311749 589986625 674700644 215560620 863450184 583603925 807727235 190740468 842816672 50562421 126662764 172086308 241793491 762572727 988714442 778840663 798215015 39628384 429618589 506165200 677117638 604269567 788920730 976536878 989035995 806748014 830413674 414285391 679855239 972184879 998384091 392960647 873110650 614071949 708179300 65618583 926382686 853429013 870083932 655226545 684573567 182936311 495625861 276669101 467120848 907252946 946962942 367067664 565391538 626759710 694184506 221173956 859524850 363096676 474869213 658312972 884746372 166102949 446705098 827816233 872652508 653109134 814066825 769903813 949506778 423175279 450425442 918832334 922880943 8977428 955533714 134795025 691013696 132348048 202127312 347318031 727629085 117678165 693324421 558372627 729395045 212440502 235374256 571032811 982128416 390440865 890550728 306622889 792661889 767136781 921492563 790403564 961163047 55520356 982626025 491910397 996670707 926626210 994995836 998222071 999501802 443335078 691429118 152560104 169075663 472261406 977867108 476518027 598203856 812934908 886654630 103988093 680997791 77506266 391344872 514288214 727831151 612786674 907380833 401876840 646113767 642047546 696314777 479520940 637232779 877154478 932078658 554328386 801178294 66679073 598210490 87347590 694366052 618865684 680759320 324502349 931579481 325877490 464506143 735163650 900137940 411778790 817183780 209866062 870810734 654829264 966128713 176783479 636351273 426115260 742137029 496612208 593551751 884469077 956465598 281963328 484318967 194903050 331640136 700750207 942105553 386810123 956215091 18730747 265275257 299582451 678045705 814185194 876312207 469051130 814625183 682546305 910348532 450723420 563391838 4075540 479718491 99478039 106704158 868145191 877613239 185000067 891311250 54364514 107507351 867648673 940439137 952882979 986043975 806808867 897287522 333137554 797487942 491788621 986962353 69345488 958688141 298970704 849634826 100649923 568330584 668968216 781590981 743334988 744079470 878482209 896811468 402476807 803476377 957795041 961065437 225828351 289797153 84538063 444202979 686457058 880154469 529476716 830376487 950900836 951302793 624830572 680680680 452756159 980041316 401992472 637911138 357503822 510588359 316823380 885649274 956455035 996729396 806008870 856646946 173020341 812524367 713338459 978947380 712295703 761116399 780682037 849608007 289231519 292840044 433706665 739148363 788881329 818590336 972763996 998306155 493297210 791603341 45770743 430821271 614089833 645206294 835660997 935209361 555745885 571036166 397894243 958443846 525466147 761657494 66617648 312320709 244966429 461461206 642548343 729896307 248482531 280389693 704585436 721318121 217666442 711922370 742192017 929890316 895556251 941900641 512567788 753652829 221704064 927929718 749204951 805853755 172158026 344354004 13732550 454670198 196361800 746845501 432243153 778748613 193647234 321128819 366571096 598494864 32172752 818491632 771725601 959851682 478044774 892968637 506063210 691124294 7433716 837844716 906841054 920308815 650639781 700989863 203071907 581217763 5004952 244733288 628083797 808773769 357873425 783422917 691606054 898863650 94012307 317431322 414631082 691699022 35233912 943121101 271259109 425205004 558451191 694299338 543927267 555526709 222795051 516762067 189002621 889907749 9626714 11737535 274987141 369316497 324242890 715580175 449194666 928512659 497246455 550919857 382314393 699972704 115793980 866127050 55086859 517056663 326768846 338478683 971259924 971849414 630719297 747555623 725895888 900583795 241006705 645893612 703548613 975100129 180461958 581231436 123587173 994290179 302476619 591862954 645221033 807760058 557644237 666104949 515819519 578606039 842661288 960900410 361499425 598180689 322894584 748736390 896855465 898559612 617031920 967864992 267815046 610548990 216006058 634858759 41101828 485418832 686314137 907874238 896242128 910806005 166664143 490742630 927043848 992314066 353563670 454918178 256239987 696900393 65096862 129341325 5653294 606937723 91760374 210373369 777925841 934989002 486977410 738467159 133884921 233092883 609189811 978263534 915716455 975876773 886351337 994605703 183932214 461355037 679719904 911304242 51086763 680773381 693884439 975595545 39280795 274917583 771056500 782629399 468214350 821767100 95122289 180726854 322585592 866538940 45229567 363915859 504496178 612849272 322211503 652324820 685994317 897950536 464529269 947693059 841345771 877960096 479634065 908548395 3774462 564878885 241361155 747370218 229399802 292737636 753385492 847725597 848436811 886801429 45858109 244785362 371418311 581695685 189819731 666820499 343903728 368831053 636111291 684882783 171913344 748536246 848615497 882846010 513851230 649778147 867424633 893468751 898477545 955523406 511665181 738151559 411234448 752954082 656535586 896535235 791346402 964593153 502991066 534043084 395006559 846067672 180353464 965320958 774382173 916260316 745364829 994794875 18504575 322245291 911106787 941885775 123667776 745920897 585444324 841375964 163770668 922184290 808691617 893218228 360126099 856693026 375334896 440984651 62130210 935484058 818062828 949254307 229035299 272905112 742438818 971698596 740324992 895334909 508306696 862150082 986390833 993211291 676951967 791398457 413266460 448006415 288612781 585426546 564330067 596457808 378336554 733773487 623617696 652182249 821237993 858165417 696729417 724275612 669482998 929261802 489160842 790985351 371475496 375640785 208790514 881363534 884915042 990117339 704533417 824982489 38052710 784210926 958031009 972345994 138035020 693414907 51926377 361134789 628637161 644928914 468051755 596851139 452244149 716100443 177803617 672984963 947678362 964824092 660936194 889588753 864306846 931371976 735244137 986293628 478437300 787004656 541809082 985528510 255819483 417563612 166248228 292073068 850813744 924028811 459036766 993555598 612375506 906213974 329844694 368723806 265827244 764784784 96198166 610131706 947077554 998258825 255597629 554968019 219181335 927413700 92959708 464826596 659809566 778665496 357219816 621363022 914235964 999803037 456173279 644125598 657038837 825367052 523654969 941887050 602614709 874436521 248896755 402071275 596116676 930280595 920066709 934851815 560777119 906149257 433148120 999127439 367266549 444094561 888734334 990121238 903260333 919839273 266252744 485612549 630123810 973855208 192491503 964420228 815738698 835208032 770804177 884831547 915846069 987759849 384898097 722794770 697256205 876319983 657238108 699205816 232966433 533899550 636292144 808786958 136042922 949543140 623699182 852668071 177517590 917580725 306937133 911056558 668177319 957846670 574724952 929670733 373491031 514846177 520824681 834696599 794260226 926542410 804129248 910734229 895536749 942109027 351349768 490362381 765943340 996031269 474879418 842072488 894162710 921573431 130671524 924423522 169596385 377757136 742966888 905876562 154166419 388141144 427838770 954444284 886533284 917949269 415543744 974340993 841365182 920644310 314079737 846716081 433121519 478464285 214188663 672740419 144821692 431147295 332536185 407480364 667729796 822677518 986864827 999800622 19275809 491537530 966399408 975976724 883333430 953808497 954323163 991748290 805144820 847132509 897207244 906601853 72619650 715245758 155904079 473505889 6590976 341974122 490792265 496360964 656573676 820113548 464890617 633733427 600421493 759197224 638401150 725662546 365104235 732187515 933411075 935068716 57630582 716014271 438857511 489836905 399120381 487114080 657047742 909101754 934009926 989719308 619087449 684526368 840786092 927991366 744539429 861886623 862313564 919786804 652635074 912330174 218746484 929691781 347734336 389760936 19748098 815332960 422599124 619480798 356374267 378878310 460442830 813191613 674124886 772628345 147790832 382553660 61416343 651565309 568517348 625783443 99699119 969438505 352737943 917414265 475333350 938171992 646926648 775759933 216345418 958003891 933729055 974440681 899192031 911749034 710467106 855538393 110229454 896951230 404879176 419832404 636022919 987459073 490112230 840404369 563010832 956486156 181157679 498974062 973651304 988315660 956328509 983393809 859534009 878595603 389806237 911947646 760700996 824693262 381335843 434548097 900194856 986274768 974440503 975543413 158687181 159368789 239217325 935989039 590176911 949523810 127975004 440084617 975546283 992826179 932537853 983422335 9639016 733091861 642869275 930758070 155784665 657963531 363192468 902594645 690806230 842458146 69031491 338187119 573195635 950800046 308652137 453274181 444790398 931170987 304215823 737665340 999405190 999914783 174928515 907926437 358400910 477301148 853534557 894711453 325816496 968807167 597956394 715705001 663005889 717484525 562030031 686074143 924700283 926391400 795998129 891775883 21198734 943550632 487665500 744734675 186808895 564619193 136208314 577547974 50190 17230124 124386790 450687897 350223672 445711705 592623621 917594944 196949025 950915030 605413504 993933575 280770712 402631154 753926031 764075658 774803358 881206401 266707099 862145484 955421777 990496576 709291315 817741859 931678676 961375190 758092056 894178205 518543983 558652499 668924688 725746785 259282430 780684324 777655681 850666717 608298330 718330017 694302735 885440253 362293484 776482354 942165441 950962118 115048768 206625998 457060778 759212785 346051338 387537991 287969445 778733209 915360108 926477315 549280948 816316606 168351655 677976773 923599664 953374758 470529097 801791281 588917453 978176699 396032676 479022412 515707501 974332953 697351837 858579005 401266006 417843852 630674416 782310372 717444313 914223405 892685014 975353581 906814253 946998999 915334203 958284126 88161230 973937843 285727826 798066686 189821575 207097611 640509050 828693784 147464853 644952618 892242486 931974824 283905660 518269199 128088377 194219014 932240029 962570593 318305164 921465164 204988428 610148120 935476934 991072974 403963448 572128318 793018324 830366222 64935184 309870953 755242995 939043953 987486112 989755199 872840812 944736166 217920555 369779803 372682731 948024614 182084350 534971159 28717633 48970236 514792995 695979449 2880711 450182761 724230006 791274752 554493954 748162999 455246786 669565099 470162244 711874917 69957794 734025968 34344520 403897687 798888059 845299269 330868786 705665130 842721739 984844983 213906970 608946444 813382364 981675039 42214783 192114851 801578339 977168246 933922981 965743515 988547599 990839362 916698031 999340999 294709535 384669505 120589606 703273240 864329012 954765767 650220744 694136561 690046997 909842377 34062245 858532370 791865763 960978898 121914997 372602530 472574787 691931589 39761560 406970711 2094560 52784085 988461751 995082398 886549229 999908650 403380319 844523373 334723785 396613832 56670488 756802742 104179242 672601423 867273061 988523676 249170803 862768887 60857882 821146621 743241696 994531859 95740774 896828204 834925664 955523760 533834564 879179276 801222878 879229775 113484056 697910752 519784738 636457955 789551598 891845583 167646514 829791266 63626995 561037391 533053464 590127773 696635302 878396785 167155937 273509214 450951968 674101614 223929230 977640261 584577767 890248971 149391866 487041708 263984005 407691139 493270951 893470922 269896765 752946295 113368694 312540901 814279190 982320861 749698208 929030609 975716711 980723339 220425082 770076110 480725720 844369883 107409152 405220818 990115772 999814461 348198828 702045169 565599228 700376337 623868723 712582140 40200996 822537108 2915957 307870964 430054736 707566587 334252716 960530862 299169584 459580823 565231975 925280832 484181096 743427097 832889240 841668323 599255516 936854392 424938222 474612473 57499049 382365199 764072288 843812453 650778977 832286994 567290335 943247030 384669176 468691307 524466302 778774205 319022114 612203177 90210448 602118827 484961857 711838125 480235316 490490338 391995590 392033404 30865059 137670614 528191360 664398677 38891007 631012457 784052109 853194106 876442052 943214000 434478053 950913906 623871530 722130891 750406185 861211953 280672098 959483312 252575623 489176149 131476905 222706422 390959466 749805630 335434596 493026936 495010467 590124724 418475960 876734561 524420072 955239500 240262036 317536118 527014998 989205968 55359348 474739544 353175536 812000410 322228247 838792972 958712298 972802667 940574725 966304457 588162385 719295907 387380326 458054394 872699674 946494836 145078723 940193555 148275221 441811459 597727185 995112949 582594935 898604932 201965486 675300290 40484006 954234585 766124440 937310249 718634229 862294068 543067912 619570732 972832746 983796034 400747538 416500095 74147378 491716615 260421491 279793842 132762583 685113523 248684788 951627951 928568172 928707015 721433356 993667104 603132210 971317587 406018122 726319432 966494895 983685829 966438455 979340235 558118833 744771496 528358366 762088555 360377987 911565800 421522590 778584945 365603417 410892661 172426690 708580014 972969707 976623455 223391684 479816920 499572255 717645462 580349276 883003480 631112923 795915308 320566083 570088696 907593146 928425313 885777085 972594542 776067098 787425387 963163992 982082160 35303898 467307231 448861606 515025084 340563237 798338248 29121920 577348798 189133953 281197604 721829806 770301356 176589219 995269219 788707153 979011136 203872273 913497118 125342955 620915351 991707567 998400642 415423676 465005438 700754401 909983314 620192227 889536858 271476093 481180112 355152250 757549057 819642510 907810768 256812702 745131345 303954375 771812713 510514734 712843823 440976156 531469143 390067235 597383291 234887612 880660054 780104550 816575451 683169088 888875987 815962874 904307390 225639295 231477584 568654410 825666993 289911603 741148211 813797607 893517321 244004114 826852868 924999287 992152378 806977867 869550465 550064287 931226065 281256600 463040914 949624442 953504700 548435566 849314561 924641964 941225714 938513043 949042938 711046497 936576573 938784471 974376266 931849572 948723766 960226061 984191519 858708184 979124665 45827570 297899163 500019343 733143763 869988695 958949438 637687657 769635730 314645443 785834019 43211849 928793284 581939462 837688462 20647996 46546269 836007857 951477894 435608857 896286876 243757852 750851699 710753877 917665048 241704934 577263573 142542309 505728107 578803267 690263867 491936876 652428219 289919032 318434069 707196807 921196807 61633124 153705960 896872915 955301141 565940033 957342023 555909585 567290406 158851413 620569864 70944831 431629290 373335756 574206691 890255246 944307672 238070137 796902516 540946636 665829521 643150317 896187350 175693818 624985055 759760452 784558409 689562848 984459071 501712992 629991378 747909234 967258689 365406274 804403359 1068721 911356743 599658469 968795474 613659728 640587982 523217210 616063651 841569899 894707599 591702737 803024602 558020050 655975635 29990472 939366906 596786756 604583420 673220320 872492456 892869019 982151107 341579215 446938301 846114095 846524824 659824272 869029178 236417225 602682725 203746986 567368815 46296397 378455357 569386026 862556812 300391468 485361320 964266193 969674115 159712893 978263501 682870941 933642684 126628663 494733261 876388679 931485744 66949666 734704473 8300261 992289722 355417118 776770898 407807007 655127829 947971402 997940845 321283384 408357235 953103744 969696266 345963230 414798666 832977363 995359360 428513419 983227635 381179387 454704953 162395652 916237230 465105525 897093122 517404746 962671851 505736533 746018425 182050422 675815594 490855664 654985751 468948017 668138253 447413209 664603739 870956919 978685387 340954710 804396860 782127630 876413700 472734204 955287372 793326645 985670170 78360235 901177559 885317405 990108277 686437256 786371863 267623806 809852156 939833724 994914181 535183089 662746395 949956767 957293053 35564422 737126804 873838352 952664167 550584536 925711910 473741301 889125391 106529403 722761010 48913143 951973005 452613592 578590452 814088659 972642217 348832434 546571849 900753495 937535152 181741868 531241350 506417252 935672088 780131120 884622896 614680848 872084563 556457887 916383539 684402207 696277653 33280210 430932205 783112140 971691041 805192237 988599806 958372370 973292658 502022131 736952735 102790431 444353621 56445666 134069201 327886791 952014643 614651643 622674218 968312293 976303132 692737060 744045833 927893296 951184570 629952737 983013758 30482134 650089822 826109961 864647630 723729667 909329455 278682848 872791817 32462097 544126615 860282866 908266050 574631038 990420357 444427069 742646231 287968016 791030643 117255170 616051212 724869882 856239438 279100210 847872358 218957547 524253099 406454539 751685949 942473288 960010441 832931168 904743734 179612682 881550133 920317354 983298006 83871304 499033957 20298761 304047785 837508949 973239257 763083286 946399326 798003650 940643380 471703309 941239742 69737977 292855548 722457374 886136071 378745707 949147592 263854499 832229024 966009177 999893737 227727718 909714156 202621328 655211376 74411458 326329712 751981403 766442402 500048517 617803894 823616239 984389698 979737841 980989449 832475726 903642106 902360993 907089985 278901870 538733644 407031822 894202236 232555100 810129665 113541502 880903542 132150566 170546055 603570102 787656382 279000263 783043615 517408007 909380422 339811684 610070393 961599982 985363721 653577226 824277140 8148763 407950954 345269975 663123636 769818383 911253425 750360090 788296602 323536028 525205207 940673002 946547012 603131431 642569675 466351148 798202937 597113358 655920874 759061300 931102716 274054780 444216884 145817491 511170194 746610328 793560129 258336223 389823712 806388519 917273421 854349977 960153463 352852268 823657359 816488822 959337966 983375383 983710159 798541434 892193063 588983984 860310288 586498403 970606749 612680875 675101017 173740707 317929679 223033238 515530037 957407871 958569338 252713442 596070372 168171912 691448186 927309715 936974305 515236862 601042300 825320529 967406135 567125250 812555072 762824415 970507202 17667854 652773446 98902621 901776486 676058503 910512403 920800707 969153123 730354379 815949162 16007937 162546720 967767907 978602778 484448028 967151344 852226840 965577749 92383430 539811241 231278865 910334496 755151904 773980840 857367679 866042500 301901644 983775780 903798309 947642576 485818506 553329785 682999544 719647099 838736761 980659491 916893583 946821329 173631819 954777363 555808466 795475519 124690107 176667937 566566444 635926457 392009992 923642190 26735421 289111221 392461166 519840200 544234583 778365965 177379691 973937714 21147202 954083654 243528186 350867693 977441485 982992192 293860753 400954236 553986702 816612693 802231120 831413475 135607110 244897035 53101709 609959565 47922512 783620999 337647683 854381588 282547293 966838417 635745087 908404714 633059918 752175735 4011762 225479564 601721480 795357520 548482669 700726632 67474400 198393760 706038588 907537942 137461625 375068094 410605187 502951914 408954633 973318287 187308734 236503381 629098056 951721036 179004900 809505521 260337742 428126389 259481288 888458716 448990069 846972882 911951259 963758856 967219950 991937783 343530864 599221480 831560067 976615683 664595987 756023734 697823592 854473545 78392028 529713558 157212728 922010826 300899737 375866708 54005476 721894234 60853049 160141141 338818335 637854353 77643702 977296632 385070224 632529881 60324664 262460472 163713299 540351271 585271240 603360661 514395476 718094093 480182909 497516484 906352751 967945527 53581075 900179265 109982541 446940001 659222820 701175427 765664010 973824269 786419948 861714678 412696569 992482090 396590320 915604884 184817603 336131419 121620651 494883435 792263803 971963514 51786113 929738816 670628592 985115721 635659702 998374557 200501268 598747935 531353210 830890432 290203702 412065163 432566311 782692476 775379651 826056639 533074932 681502375 233082327 860047530 176372837 710941625 367083371 971967522 515251944 688577191 899250956 919552921 529353194 646873988 659202920 803246986 308313582 940389433 86761388 124971000 768382869 879704766 969002844 997015553 64352141 542504373 573985741 776871211 956220272 985125930 810443427 981532348 788036650 982823625 90926677 241220182 190171737 219934876 299920150 529002526 149159923 280181298 918710070 963445580 177202638 634686658 245239409 653539303 496690200 855606718 191117451 710781004 288829353 745549715 544837456 651662933 200730097 593199994 62178997 79349333 282403407 462806872 977484382 977620127 409019415 704759659 692226595 692363828 58668792 474539284 669065201 998235488 822173630 930387808 988476215 994720373 425042170 680715076 32621394 834466386 231017322 603501711 398304301 675918358 179610944 907268924 562820316 825514762 637556478 962934811 769079137 889607452 262285096 518586327 196618179 624746187 469214926 849174855 614635420 933542867 716090034 831567157 301109432 545337404 412879914 771211942 489242017 793296587 654172863 749278374 272157046 820465226 268782872 469270139 278529665 474693290 591708950 932653348 897966802 962042649 14872255 818022886 898095563 940757539 366698145 737605650 86560210 424984968 340261980 518199273 909286304 983153287 373075791 986285192 279999036 595825283 378416186 525084768 807894497 954335857 541580900 735146603 975114832 985501969 674621563 975863113 609855178 771178752 859615687 968795598 722310149 927386388 198643054 756221911 440924682 548268727 872293030 912026205 715308412 734095959 128322796 570652200 658550544 937361047 603685427 828640660 460512299 657001739 467772661 965061340 294235281 862385553 134627513 485459566 327205455 847262014 302229035 685049312 217320015 926324364 931757837 965822250 811805761 964196818 64060275 295732519 701804722 828713458 661637791 943983713 793393356 848441787 529515632 933169707 768619724 848307010 421671930 946536398 917999610 994740386 476079723 844830340 136787607 842841081 326131927 890892639 855897815 861739834 513681995 948513162 768642496 921532493 830897353 923463765 479872813 712569104 646341701 972584311 894385359 943907516 162116226 298787685 114692192 196145588 385926294 839751738 97169 893952257 342751907 610094733 182338 248352897 20134242 754845101 822638080 906703359 332772898 357609302 256891526 632380933 188488167 766299553 308334664 516701633 717564348 760724047 959203312 967094160 458688448 971406214 363163000 767044366 116137967 207601400 776360350 905429349 131942033 924309275 861402023 878342736 944236318 972460328 122052625 279507120 584573966 608065754 994949870 998877228 493738230 505264631 999306719 999923052 365388045 894750926 759616843 794297270 956706297 968811419 659409398 862225287 903168399 925447582 962253376 986141316 829401290 974144751 340240710 963400025 687000785 725529805 714306445 745205025 729402130 919518437 614066127 820516078 586441690 629270099 268415409 597553464 967799564 971686071 923977736 948247316 318881995 679591094 37312684 469027504 202701390 727024355 664750054 897926615 451188165 815767295 805707016 972169338 143719302 544078881 550937506 828144689 36535161 468402153 546219562 803099886 251301879 442960352 788765183 903621224 486714958 740847898 54181020 439735788 624943938 879105185 277428512 282685671 678659730 946757896 202736373 757607120 22632387 44645697 547418642 765480605 336657727 792875811 672723552 928152807 586894789 648038308 182951464 256372955 458772897 520209210 17898831 31892273 776364103 929264836 255739532 581330434 144420221 221826536 16862484 552374428 550019639 932025743 884111048 956637777 387465947 929166276 279966345 776786423 680328740 908465585 294817503 508051904 831153159 976186136 309396916 848848856 191185101 947935922 533419677 805727218 459328264 521451613 713010143 717845673 738447750 967014419 98952236 749866058 416493121 656527299 776419015 868276163 779866506 923739767 376149664 916460777 631329107 751561299 709607627 918413125 196542866 534312739 319682029 355857817 781398753 957643899 17999942 215727631 2548674 715536914 321480147 910992045 58225642 833489258 424180103 967353592 194362249 720074591 464804478 880201357 739579322 807896220 899398451 904693518 663787934 795340862 918176439 995828414 265799199 855974758 216285740 545380251 728776340 812019180 656627171 760687630 12269704 94443016 500192733 965586147 719337972 937466783 583773133 923555501 713753814 947738153 948431684 999712186 362087143 538335102 674066846 921945498 477093730 736947090 256644391 343451096 287367614 608804591 144681376 581442663 30799778 268976304 627723423 702207683 397852941 757748534 444570386 548205436 994946637 996861689 972380997 980362516 940200110 972358844 916198427 978663763 700475189 793888841 678657962 782372144 492969314 987291987 926845330 957351026 350636439 789471970 85577156 295026825 730852517 989899678 821802317 923706842 181797655 333196736 117251411 939981174 272218692 885560443 851189395 871046097 181702507 412282708 735142092 974870285 775505181 817291833 379227267 456798373 71126293 910928715 862740586 895025484 129700067 817247083 188221661 873513318 232110741 748149216 90050462 986084438 322942948 847371690 64103795 856682463 280446295 319548614 124175631 890680878 259082843 976031111 733822041 857510872 751095578 975016065 35469654 566972028 706378450 983940303 907307412 972281291 254710308 528020209 314111554 593371128 545407892 686309884 915109453 926037655 881267855 927793215 826893915 855529451 137344183 716123762 788807994 908825137 701247421 747632477 852301089 904538370 793547419 820461311 974377574 991781381 790548171 904623912 986421414 999546404 201513639 421450713 845195578 876371136 715866374 771304707 782741688 880671684 887116703 967182742 932595907 943920418 275262122 950769852 251526409 868510927 491299640 617967877 196794123 625175195 168071999 421465053 919741224 983201691 421569160 698494546 974887541 997866976 233201405 324155784 984034833 987482198 789188243 852282785 979213231 993596996 800637257 836797256 647491192 764892858 680608806 933060068 28330367 832207348 798819159 874086107 481861995 638791521 880068193 882501382 679457487 933275972 972902978 988291276 990827043 994648832 959631858 960900992 779610490 875122237 19529476 451613673 904565651 944611847 2654861 346540945 494897176 917240518 624532368 990755542 718632750 884346013 354109481 827668232 148348563 661916547 224620066 250523652 418466386 857223116 841310503 876055828 243438396 519280959 813212284 973638931 673867380 731623790 620984644 790720166 832645217 906750270 353681147 705699688 232096395 801975108 328289260 783666247 401326243 520743822 764139772 877122765 592233738 883738707 260012275 498927716 871174172 983934853 399332301 696685414 234649724 382391875 584432883 796927912 834483397 872040429 387239841 673017909 683825540 819092230 187984926 556832802 477000891 988227869 947795591 958681770 347185784 583027881 225995598 908620451 183253241 734835700 215455249 650136631 653440113 728076998 50644617 162793168 906448583 985654556 146849386 894529767 990537928 995198874 293206768 319198299 818543329 967509371 556797896 673079151 490312640 636955066 214834323 417751653 565206538 575567774 62247852 756108578 916926627 990679354 867837508 881296293 735907486 972197352 713281090 979117994 596379167 957100904 851243490 924539213 562630230 659745833 637600033 802273788 955533506 990912797 957304517 987160525 483204261 709659882 634652945 776374876 984452247 986019721 78262542 814011502 992775198 994293161 427323432 552423684 110689130 896924306 821057620 971189096 513975267 703510816 170204623 612036072 658310565 855138689 893236970 952456283 228573025 263783870 237099837 359421475 167147744 200688126 6623385 379967394 724624005 898171543 687170906 981148232 417766600 632159490 650364948 687494898 810960582 830293956 639223518 706426696 923424815 984974444 388782201 860764050 797957248 970489780 382157016 838185487 696573247 752609652 758425323 891393010 833056340 904174733 870049410 975356349 666474969 767039716 519121385 637482699 444803401 527515932 976158857 988563681 904062078 940168500 163887146 963433583 344927549 621731176 365591304 626756293 640834434 977912698 448095575 739323334 310482998 562293137 582498211 921495748 364988833 851765400 825381114 884880962 621239337 925386982 717336879 933318223 75970924 458854481 679288303 856114470 150408697 758567972 509304433 628600013 952616726 988049620 458576267 986951622 66893218 313622490 836743458 933293828 76272181 601182053 396935328 943167759 216274985 589976568 577051993 728265929 27858720 339691774 450672984 829877439 979507403 986911705 420712209 619882589 930545643 985159099 665793882 738565478 925268014 995653611 136984778 925166896 520863096 526099399 110515805 658604966 968302158 998212610 92384830 163354921 836353981 941260539 372646589 592180021 286650483 532588375 797809390 840133503 411778735 660724000 739595102 948851134 98191970 140889356 501059245 964403420 900940095 902969744 232991550 367278515 568980966 796765011 574477881 880647182 375723359 529379948 832509984 920521325 515263383 533352804 34999926 682237124 859260413 868118914 100159180 795040562 748360577 796232941 306417637 390991661 524520820 628862368 113397352 597415028 302832014 757641035 465998997 490242521 435006440 563286309 459329454 566867498 661950252 809631829 786472710 930952355 987523132 993069223 360485761 725806287 146913649 957564160 165350457 306052813 800633503 877741222 655796292 714933340 809199940 897695620 10822299 907476241 624283980 875712367 727592694 971083923 87891617 887164448 800178860 820006616 488255028 700107112 709962396 980104423 573758758 736506263 301428565 640719705 227817156 842375745 947601168 987717740 728401170 835991145 363000603 831147506 564320363 889640312 128460459 710987670 612030702 771096465 124094931 256239463 99702310 790933122 809202635 899064454 715200993 754089888 296323130 931591203 318398880 630617557 447969705 999549782 258125356 780387044 109105926 888011691 925637019 977824552 693635731 878803441 791285789 807729950 12653463 572943807 96995426 917854445 865967853 942146098 270956367 359745838 723870455 999569112 493203678 761430017 879992982 993801158 97322211 690295577 537671005 584512222 911825134 918298809 33987993 71987530 519367968 827731947 270379449 525613913 432497280 575144225 306323057 701794126 433718561 891733044 86728290 441290347 165996380 354098584 597418562 672036018 208687425 697326214 191734080 488808854 963162368 995494611 822042988 928935263 173192141 810300241 176303512 829171758 967093953 983886550 946654548 971123156 909166356 936028362 399412036 515201460 327009681 879856405 255496022 898406812 426552335 825782725 886263180 976943760 44775068 176130082 18968774 313817745 347259035 711107026 944910842 985277842 406278212 699617672 732001613 946428085 692796461 810830831 109666261 309444757 847588100 908835369 279676338 340918414 184087578 649664160 891398576 944656008 32839982 325237605 971057593 984555667 73533259 710037975 218721096 267031487 926823386 930078240 35500177 477802773 45175863 283732314 857400839 972806930 249314233 310300163 653612873 801976550 966241819 968804172 681441547 836867968 407927526 695752360 970751541 988850901 734550223 785160152 105302362 872100562 67910403 535640491 840157958 944610697 923319908 967372348 229030896 938912175 543025087 643632147 226014903 993000055 443207146 540847473 398625493 637114801 923571394 981663892 581670136 948419992 578940266 635343346 455405358 611115250 292995414 546600012 303937285 500397220 984387445 996663517 732104595 940450547 536083116 552453490 735988074 969714274 777808523 977399954 144884787 677337002 378601164 945964577 624959487 797952007 123249963 885114330 647281193 820564198 636174614 961495312 193265699 690514649 561760342 994582741 910700035 997400182 412628476 894193206 418026286 607139370 620663891 779527406 87936750 376108280 36733444 291198292 358815340 815141524 664840224 723689065 176109574 559565889 73895697 737162922 777291927 819329997 120546981 354640927 133923497 717849623 377725195 880474405 902054072 923166863 93866997 396735286 110602044 871365719 771564952 784061151 416640012 857819521 219039144 794768942 761834268 814277343 411085904 570138334 487283097 695706796 231502142 541521259 83159354 453991776 538477178 805453527 755908387 993543449 436899594 562922464 692482324 898512149 764978962 937243205 396939304 908746501 444610237 989416178 31983489 632609685 297353728 495171591 635048994 874870267 461983383 613333061 133006074 755835456 638417564 805616006 463544084 873112332 880675917 889298767 171515887 803001860 882317683 983453944 726661505 894097126 410145961 779997614 653811146 994649772 581135881 840064583 213008332 539983941 154927029 277707451 244923579 953521467 938889984 939302460 22559048 337646598 960802894 994370474 455196314 924243595 75058822 329996470 871960719 904887841 234957533 288296195 415541629 463622049 1479539 769526378 116054181 308392249 465496622 470298635 258650636 523272188 37704319 523522192 262426992 533316540 114488184 503478687 135023463 433211671 124465666 333864295 544619053 984453048 904690608 921009618 374735275 951422738 383108997 925387873 289315891 318826808 916751042 922608738 607575125 770748262 593623500 752785781 317732009 342736558 711774531 996409900 242336901 999670067 273074199 414901995 578089199 873010216 815367964 839768520 610305714 717851418 728054146 972513814 146767195 591792645 485117835 616393276 294713103 690439341 56793190 387424287 207891992 229143455 596303869 744440003 348699197 827228276 636165264 887554509 935908618 951067325 558004269 650902448 174532653 538841939 780705613 786717224 506085232 742398338 637591220 759496126 562534881 914830255 124577512 247695136 946975071 974045982 792519890 905301543 921324355 931952674 356613750 558984563 101106850 682655958 540741985 764841200 646507904 762793677 140032482 923760971 443884412 686563629 602750453 761963333 608050505 632806751 126013202 237938649 116012009 786696340 644402299 713202742 805965846 904333228 256924448 547192224 133791459 287443338 117558452 903443203 51454127 278138844 614955822 962016708 312368190 701051419 735005440 820120783 168675335 303529270 449938216 817900550 377152260 690475582 584299307 909268723 830426587 849409665 522411692 554103618 414515965 753512818 2978019 955710501 855836260 976000671 370641390 519231741 934724234 944379287 894284488 954850422 151700 134810206 717928772 912940035 684552204 795907848 145731507 521797121 287776466 839283042 760882623 895464792 976491465 977067384 6432866 434053704 639775642 924197858 984270556 987031363 743890557 884530027 664251507 930185361 944620914 982355682 757495364 853179314 487528002 629893463 289372771 736716196 571085148 734073506 456538824 798568454 985230358 994085959 941517770 999191548 785611132 892916788 230594044 428823780 477180823 501748649 559467850 578469233 440956227 932587670 927941161 986699776 39449727 969441424 892953847 900606554 96561141 551692050 852882812 890229932 128889228 647970554 132807168 284156306 304266449 458224199 735196320 989590738 320297303 861791659 972042723 986018279 628524863 842896568 5123829 253853483 394649568 709794730 560103186 767753135 927447507 989407395 132376762 152627253 225153668 793663499 441139732 748635008 815884531 973128007 115085300 828416489 36058599 991149365 642622338 954547361 875016414 979886363 790024565 870484491 631475643 903148769 749869713 927853890 154174911 832003273 469273578 903850397 11007209 82822396 698606969 847893360 997592937 998529167 268098625 801840899 651858313 904633694 121281672 207088465 322496196 375618703 554811568 641000376 890918274 926768773 145376857 541248837 226914521 336343265 734461512 829385240 542177923 765757641 154352052 574174333 639943017 713762168 716103537 765760714 828464940 845840358 698320381 760093596 882193339 920527555 610745690 711528960 164566987 319577639 523693932 845064249 811697926 858075760 300215181 867615258 833132451 907733245 426168057 571255111 339289991 849659577 276112098 483853715 296880955 371204855 395341089 666907521 935941472 961484352 969706835 983447439 268466828 878396907 529933310 760427889 771736115 954249829 677362424 929398109 531193537 707345327 513266135 712157738 425520436 563861736 416123989 734166776 231238208 545422692 595538716 805833707 383486313 419359680 316920437 339917260 507788251 936037684 404890885 578004656 56174573 471672117 52086703 57178868 923728670 927063971 173735233 694312525 293660512 830089810 996482408 999744489 751408755 910302910 842050091 967195686 223022850 807732916 983135968 984051650 945379481 997093426 728477655 979418906 878366773 975525856 499345665 881823888 68656902 756505418 337972565 427517341 196834981 754103358 296113944 967405781 553398738 609199616 902655772 921400505 226770002 752635357 982395591 990271183 151241919 500708356 714746314 950708135 828989283 991977490 786766971 921202041 846465059 867627909 500563073 553339282 329900267 439337774 315640054 408670608 428363969 876884552 28720908 845724913 831974271 906832286 889592236 998989698 820493008 846349779 883883938 941915939 307526580 540015644 243147322 552568978 574496913 633275218 904872255 910617840 716819521 899345684 854034035 924394409 359693325 535375629 315373912 920202199 463234406 650596206 751022222 862902029 453395438 478305879 160175321 820176849 45354073 646448218 983381038 996620453 779339707 823250359 875335302 923031609 152932644 728368089 453867392 922461066 223869223 899804467 203323715 648208932 828859802 960993464 868629584 898093450 52884581 902226186 634133190 805239691 772585328 935766893 495766445 747734505 230267674 922927073 986570927 993790189 553721786 888937798 692382175 835395793 583369532 690150106 420926006 841319759 660320530 944241851 974726761 992906310 910610570 956968154 542759595 630128610 736126262 932866816 665940549 832988574 559149045 895062163 302326433 381865829 463854638 818254758 73061670 289121802 111496705 754954369 759332927 761979018 305551035 750378982 28507194 857909058 39732455 596564939 287842207 428529614 718894034 839866085 939298591 983449673 299014674 830819054 830035483 892985173 612031393 620370554 271801214 528206315 696913619 873746628 224267346 771522923 769151839 960574478 933755761 982680921 875152387 905973591 555743034 841379001 519760075 574170348 182669434 280141296 591803691 915420407 974062571 982499165 55132619 603138457 534829484 864484181 937881231 996934314 753816771 945360782 473360691 679436446 923832401 953096670 237254946 405927418 626355561 776179472 12465643 70410693 901821676 932267469 318995439 971889716 162824923 530337390 12716243 113836222 255379526 563430424 95994113 689223576 292580284 309652034 93591643 532791505 833572642 999528670 833152076 891110869 990114830 993783324 234204277 404133886 787946098 912830256 219837262 851722858 308918000 638566633 367484560 999792155 531392480 586005098 882037735 884560860 186501606 974732304 320566987 745292747 866197438 951704773 541199462 949860388 253649 16945548 898524675 917180959 139755288 444965400 243062671 386483107 600280158 788229564 644792653 943533922 87369095 697307957 218542831 382706478 214412789 705627203 268998374 326087200 871374643 888227807 664231231 892024494 135404624 449169150 213228153 898635999 106052519 484185339 255753688 851402707 250967098 995898954 365230572 543264582 429282943 809400300 792500769 855251052 963252702 980474065 367637651 647035133 161534238 890430134 649211277 729679692 128558590 169527286 538166796 891755429 671261953 765339676 731175827 871746778 580990392 827532472 628741664 933792905 132124997 451203922 754859482 787259863 280643574 716720053 229763058 714895104 32097644 938302070 921582167 932031261 53003853 698844590 988439158 995165337 855391689 977175053 913774125 958476907 28515597 307680867 98254839 554957468 241095209 584871018 526287881 963316365 971718086 990260106 628437098 767172990 558051793 885736932 429544348 951004962 640709265 722332431 528879189 554880663 639773262 950441995 463525856 518051684 765860495 972709595 615278367 808078693 306016524 739995645 662022302 705023996 959374703 992561025 974881204 982881381 676261449 772952745 759625668 818567782 312107497 964073064 682881697 864773710 267140948 710306162 902080519 954326395 666877556 774575776 189034806 465511723 697644583 873109118 223938374 232932253 357038571 582973751 909721012 911179571 853235488 927035956 338101846 953790714 299639512 412869386 94315897 514402861 963344477 973547473 917734179 986917966 345351124 449720961 897873132 902615708 493109269 611951824 426973434 971090901 380609671 899497171 415871832 713278219 225232802 829357756 210645556 232607412 616573675 825822542 935664710 983127060 936305018 990484530 208976832 280274143 905135158 921333428 748981260 826104425 494837820 549698228 764692630 846732480 841421429 890860156 746549371 979177814 457763339 880552146 895010927 997283404 909910066 984722688 392280111 694585909 281116219 460229929 612874497 707488925 618579684 978428780 736332892 764624218 764782877 891044649 371945596 513659420 948565672 958912619 341173527 413376657 664834412 733153034 814729411 883331521 701435822 965920179 97602455 176597299 560299245 686530440 650065175 953447894 164368556 479069802 1585236 133479432 923595399 924194933 453941322 951927756 618171214 673333326 738463854 768428394 165318806 244714387 468786133 617786068 103054899 536625262 954109029 976205329 82680646 163834248 28825708 760826635 856094218 924448305 703366375 976075727 579939294 746076836 416292726 475211420 56166617 445908458 778304554 894918199 501067066 559048015 825196578 851892695 968966850 969491269 272300768 323226138 82192190 96633439 334456361 907478553 285532301 905138140 966338804 985703895 994069727 999289761 850470836 968106110 15737297 310852809 238672313 917440077 645610984 996019178 610893180 681498728 354962400 436545569 859328328 964304527 529246644 971552439 62917708 349282990 386266859 631605556 597140912 818830135 188480366 813710984 747806802 812936592 208432742 722854473 801777480 941022100 205586098 692531212 879418918 917534975 587086762 877490697 872259108 964619539 628205309 947329008 880243399 906349903 663189433 671209146 484433772 639421141 240729062 457080950 106217199 936329325 791132838 991872514 968692654 971682079 833393719 987651424 634455387 909649448 112741861 461239966 987005854 994013063 934873228 962838584 303777763 578310563 889484373 919005744 390972443 826646680 566859635 585765604 765710858 811321060 343511789 776540798 113824430 595860049 378541734 927556506 4040466 320292773 303393097 865679750 630416257 930887132 613998890 956806951 907363019 914640225 698191141 731772770 868634657 899070206 74306644 82236272 925642027 935502020 583737880 845521623 512729680 918754113 965554149 966868710 417906060 423296040 685242359 941994924 717940654 865314126 882017362 955231470 182792775 530622382 563832730 953329610 520747468 702176574 538066391 641261353 625040557 650024433 512411520 892090873 561216905 568018950 710996545 792785010 127525413 618580585 359790071 981248078 768852642 979195976 432555171 934617587 194306603 845605070 75545882 604103751 699493223 729839878 820214842 937737901 670671014 884852610 771333076 842940124 923330720 980077314 134502143 654850760 500852880 908737616 322520823 925361660 353292977 656934561 331758182 861412908 113743834 923872532 701996747 844053001 514198239 951469022 237110752 923781773 521691684 904934120 354096001 973563672 91291232 992988861 820419548 929868233 803626737 969753606 74562536 586758341 465154354 603177000 897265054 977708771 338419061 650615755 798849432 834383514 166547717 351551391 776193256 928643839 259698817 749592602 593495162 734365470 818520249 885016504 164351475 899721131 23204179 189026340 742523357 945028046 452652895 534602137 424035272 519804391 895427891 912703338 34822378 161156444 180773099 889258144 412708460 640924356 299099252 528239266 22885570 130834206 138235363 629153902 834041318 912566273 79241712 107664573 148947693 671715608 32783205 172592660 956859330 979744426 425466887 710931624 533950319 888319131 6358370 258528698 504950288 614704872 19870520 479335254 927818685 935606602 477284416 896899581 32594146 618409507 80613821 179410535 348374031 586510737 379026099 403966197 743246409 965768350 704484201 879163185 416966216 559421475 931975362 944222945 57283079 911186972 741844394 952182470 207469843 686343719 413764826 863577074 170424455 718721063 46330332 493359104 884032478 986897726 623461837 738031279 117280071 525282914 492777702 695297894 970778772 987937340 754753775 814323757 334240661 575691214 82548040 362621262 646239145 715985298 602456665 846613529 69746290 948673385 897964004 949776272 818643353 979748813 797298983 941247573 982176263 989928424 910784501 911911082 941531046 944807788 155210663 776098525 545082312 639548363 150913177 988312880 300117419 515919609 394764181 584796501 603133872 845401477 648403872 783856178 550077245 833218508 352861059 828641506 176981930 526133551 113230796 959133352 898601306 941911202 478311918 860276508 783961466 904312281 141092592 753957393 736383698 991546979 236653010 985111238 721168097 840857001 595767653 704932527 403992672 942152203 712084800 834564319 883656401 968706414 257436211 860313593 43100315 976850016 545980892 780948466 280856641 606454731 682206514 765477633 116645027 796874165 419213848 554276126 911170180 982452391 799364513 888249468 679380159 701350237 127240413 889607064 776744939 792719673 973796021 982872620 409874442 728397672 101146002 844408123 359286408 732501282 23080154 307515946 909420400 958288019 649920376 735586626 479540650 614673958 126523573 910417405 935724982 979287790 560288567 859222343 612672367 647088810 375567199 614856121 88525729 279736425 703947582 880665517 991638157 999711402 904979716 966956128 247737579 413948473 619967356 958693529 50292008 267284862 943221327 976803602 533154225 851504377 832462644 922721233 750297228 950230660 323202696 810363875 144347710 316810728 641870820 838185863 142808260 386175825 368418827 907659795 251898845 817502103 427060210 931063443 290732479 791002035 66751367 800454986 528027446 800858325 375497092 474233849 405619319 680178996 243930408 843453234 942346232 957243783 827024965 918449040 822264546 901186165 29021711 865292828 231811187 956441042 1323290 744667067 709879118 880894388 937165262 996022283 431044677 937677928 899845873 937357131 880966509 963668755 47796638 323367854 838013541 899754504 779849816 958351717 440939503 458347767 254902939 324683631 313696976 368696246 276169153 280202039 472744098 557661663 892671244 997148132 119250169 655894381 184315499 966617398 324277786 324435394 976314396 987715700 866805416 961393978 723232433 929103686 734023008 911121006 170729886 252011777 827581107 866147776 905491202 953964106 235094363 781773826 942751034 963585393 978057592 984812247 223896296 667235191 240496831 601064268 858613551 933502263 93357471 312811207 668302424 750502226 7658867 68263257 905407761 931921952 573754421 873550676 814503061 868349499 363420685 574292405 490881627 739672150 190093174 659886869 258305397 323949490 722997558 963508056 38346712 671997053 211530635 238162354 262585842 472564255 102240251 685199645 345537876 553422526 624209874 965990819 607507711 730720122 907161407 999315761 491112884 564366975 470494406 753056810 409666087 680686654 806427260 830759860 947378257 978468934 60535642 613586206 261653513 448977043 219201529 774341882 794124322 797264898 199795207 612375772 572906434 865879890 5168706 356416786 287460802 781644449 483706623 967102578 556392906 785822911 999939091 999964914 247460500 636145858 31799946 128211605 34713942 197422154 520578943 985249594 713033593 718805181 772317872 827752239 860272656 904714786 639654058 960644369 447329903 794339413 111819995 607050798 162831925 847774232 207131897 372286235 137760644 713584698 665618906 839819004 789514259 918087265 111383662 635853409 104566453 919956782 271786517 511310804 59367589 839827318 313265125 645526185 502535350 549342675 377176783 500982700 174681252 566773791 603794159 756290191 837094444 840900492 422660052 608594578 431540209 762135438 467707945 530986269 962692687 991320680 577091697 762642362 695402671 800846797 743617866 747814552 330689137 713271000 538846723 828486180 351642162 589886411 249655856 390819750 492612297 950506312 473862846 822313707 756777726 980643838 245018937 457470545 2954184 621177163 795911808 810469174 280049268 981002929 325919285 959996536 765203824 914270678 540705767 991202538 26981503 345536233 738380860 761717963 879030940 935359240 88772858 876147304 916040288 982839301 367988085 692409653 16985411 434900885 873358316 985705374 70967458 894106828 610640623 751573978 276515700 769418050 444481132 856202073 211691987 924712620 523535798 895003218 547988986 987592207 480923997 551254801 110681851 524422971 395937991 462298790 349711244 576452773 83667975 895970055 730277082 759117265 674909403 775644751 795998799 834119611 264539921 460471687 602016002 636150008 259217086 504617710 174547790 788700185 907503599 986072876 646291995 750676281 735348457 840095209 536772856 826801916 431196721 448917666 86985169 743226506 410369976 911540120 504537002 624693523 471085114 884614314 166125851 179794410 581321362 793544237 172827116 213030494 183191239 744553315 132274605 448509271 20908802 957992298 41986039 381140417 385937386 416926927 965927370 990185253 541254396 888289670 711694690 941659294 54651196 288601269 64625039 495654846 990029402 996722288 732126243 791350472 316774045 462328671 912874172 974798489 238456849 595205542 973677511 975407103 907440181 930966756 712955143 806627886 474079080 775426677 834901935 962539458 912550142 946085895 138215765 729965424 453207482 834194225 119953257 998961447 48282364 255114743 95265843 497812144 558904353 827755887 233488558 856797568 764327228 860051578 527169595 683956555 572223973 669980905 248293721 801569609 728215861 954824637 179607974 731844453 501198834 646574028 209528102 671458614 274303503 550079277 190354769 580488417 523110811 756939907 399966982 500258385 625809598 761403316 825762600 857218629 606986657 802158580 54924946 349283272 946978836 947068047 331439315 676031244 784543358 837909563 321890302 640139017 709097345 776652033 973389301 997687834 720153739 916020688 953611122 992507872 465998618 571321228 253573611 673475005 289129647 855459060 297361564 569662496 591904412 603931452 238153112 250665606 921588589 991753756 78563288 711608503 504817565 708534085 704647170 875824952 508734310 970320300 282991104 849820171 493487995 869664019 667802804 804698892 618121504 792301124 272603928 536074924 722635039 912480558 601939985 706006772 24549572 792617520 295845181 726970216 436108652 807160428 872715122 927727762 664226341 959161329 756581605 906390890 775460436 894851302 191468985 759928512 673216673 712731713 730509328 742551380 193229862 538108422 500273946 539950006 663085332 742714609 808610604 830350155 465929161 783986497 515249195 816261783 372556183 420792415 748034168 977925799 937843544 950859899 926290734 963177290 180981171 637085272 220027018 697217319 276540594 483565740 942041101 954591453 866988942 954461022 177292489 996847701 417643343 429084308 984560993 997826296 828071931 993788606 773056493 795282649 264302719 313824158 489962470 813513238 544012106 835954867 796521814 948147593 631253606 665996848 247771673 508568463 174244227 603267799 279444066 421571577 735095091 978890268 299039469 317907216 894848077 947459618 187874955 199723170 29482040 920524565 262954485 984230018 483278351 926450831 683813026 942092245 935111160 958072335 28507240 198801860 434418835 866594241 22525021 42206406 630726165 639306072 744402067 962893086 652523107 933548644 998829621 999550444 113501724 154540977 4854906 791928552 445081994 792505680 352173050 467246514 233199330 653188123 262058567 329842534 373250105 700787509 869617256 931130210 677241929 970536937 41552714 531210554 650338983 863428739 567942160 993734220 414142859 877022590 140900768 716791613 209250900 610402568 301220228 683072035 48590143 294891403 223529850 260867167 485917332 863569693 381602626 615057990 673494877 687412700 240440395 546395441 387864961 918739168 24496946 828515754 552974830 822678186 319408149 389908329 845858033 972388352 268235576 309855021 785744984 909667064 557821197 766608305 59183994 202552437 910781900 951656359 49764919 925399526 306331302 372308887 324779858 741587086 302218100 915420927 442687988 490969881 99522577 921546078 811978727 908088027 159143722 259399847 614429237 855996402 963486283 975147649 743407581 774138947 86362281 655693395 610412070 803028580 926176967 967757688 514732826 636509002 230206726 982416338 851719340 949798559 754491641 867014675 631981951 792582531 219564196 747147744 799061974 861942799 662470805 691836240 50440385 309387360 531941191 960385242 671633127 811980388 227696091 312144115 489448669 634550421 977832716 994806786 556073482 904768638 227169665 491445593 841637274 870062275 395499628 425578760 524811581 859085335 134895566 806857811 897946356 943287247 318007447 782640502 387874901 461804295 39726834 382311917 831522520 961205216 591406194 640927505 230488458 721214942 724231780 769514082 334909814 733908013 861400058 975315151 231326390 678976114 11242595 741503463 436044425 453647645 809820442 844668185 51958720 666935836 582281394 675054388 640600291 842694175 516562533 699192433 247364028 354471083 973510510 984175040 244333710 418036359 944469530 965126928 957140517 962616510 865814453 996376137 433578832 877344937 629668551 706810845 108454635 488371185 338689335 854998100 644168419 907604493 950657241 965156514 283350718 927541122 544745845 895984961 273684352 309383435 392786596 637217307 519152022 989103425 804816524 920613511 788502701 982007736 872124955 921381438 40773574 475558365 621258384 996868436 343662073 414221496 893581313 952606675 203173657 936943741 284250314 921843609 919585162 965472813 614809141 984023657 705627376 782899920 710988578 769982623 514438801 864979110 442167062 623610959 616706042 751271344 327832931 507985041 187858613 997252065 95853864 801124575 275688843 535083593 761155446 824444671 237524645 262849806 930526714 995781433 773015119 861700243 527541173 963751677 813173781 896569425 803913046 849607608 462750538 717978176 784334442 928020674 828292535 928483500 474614923 532583453 861523075 984078591 446458629 705054725 598303618 866518589 682215903 814535081 124806547 693462189 100264598 550247760 562056096 721534317 970665431 982652440 698330157 877008432 582936255 655313351 191030081 605057490 531198529 704892717 748179828 893048409 788636087 935642810 536492554 946662576 409938488 477092287 36077971 133587641 528170697 867985060 247989017 913850805 956968856 964341307 623725171 736490591 391635757 906331485 330942623 693666914 432119287 639952978 275925616 597666821 989068087 998663739 251969143 260332638 435450106 569660405 875343098 892005504 429411903 495661766 667745431 834459647 248331480 430629624 56955138 176693540 60249206 301689986 647796773 860304116 96663422 748477097 580762762 652985483 33298364 707522052 327523484 508838333 184155702 848644981 996233365 998873952 59308309 120946055 592195014 597146326 761057127 827662873 627927378 769520893 956316799 981981636 5841526 873873615 350585678 356755459 322508914 693358261 604680378 775461446 233366535 903388708 466083837 686368734 962222985 963005984 801854401 970157180 790831365 930441500 230725985 769399606 301454184 909462361 929169250 938158284 203546249 596734158 628373613 756189743 989064680 999403963 148746267 666918707 971479026 980107306 577325911 827470848 298268539 471667879 504127725 616681578 237451174 890724694 547345733 837059336 525231565 883584849 940013436 978353512 460628681 831824242 725499833 848591639 523790231 654444174 611365563 793650708 901225738 988159491 922421931 989574779 405849147 705518508 541697605 730701760 677640949 837389264 740811917 745603301 224009687 603077360 344948738 653600951 573703911 607941991 591323493 973551069 906466011 925183415 556299284 742380094 783260446 849706449 307865185 474754134 28789703 662316202 867852011 875697122 164750780 873746744 49551853 425183990 63248143 923069296 566852877 941161201 492511428 712133328 508102032 804619592 679458306 858292696 774748108 951654304 473214228 913321147 5274826 369897087 402691740 653047203 206084227 904773166 875244467 926144293 955190209 975995424 575022960 726625363 77881208 221191340 883493098 958141550 195040356 729304516 219509770 378490340 211832568 711299931 298752484 298930391 494951250 594185946 731484862 876394360 155395808 504392709 810017934 986414475 96600429 287283620 829319435 978546017 985251846 985600621 833948695 973157455 169873196 828061272 190716552 671243640 260481670 566341929 524008839 959278997 150498962 189411214 712717958 851195288 320150544 640248684 95185267 274969522 968884484 981802291 289220233 799397424 824241639 851158959 489738888 608927622 897514566 985562076 645614585 836406987 686884167 702119120 399382648 408917794 156339315 554793429 888754277 944642915 345037961 446142735 106300378 904368186 229375332 871068187 158427977 225893510 293277611 447243537 547725246 562297676 281827642 584290137 461289201 742913512 527557115 698245088 496790615 686844653 247655469 473441946 401558129 750905956 435819291 777206412 235546546 554734845 358583998 858268081 705658885 770625947 680355043 902218317 473350373 889721364 985396478 987139446 469028315 631346585 295379909 383680561 649849089 913566984 975415264 989535151 302258673 836893333 38084746 102907434 268724700 919983863 17588378 942486058 766916432 821539668 863028529 964163583 713334809 984159944 713831062 956902620 558401327 922625642 202219013 406117903 444746112 461245998 383743471 497216012 470721621 687530113 734053881 800793837 383222885 529380018 448902526 789096546 459291795 534820323 867865768 976202400 174811905 453921916 1269683 736116510 140521495 180671378 276930837 837730415 548486619 731174597 896480194 992299917 274179614 519674099 756536142 943912458 257954946 581765679 723746663 912347550 308474998 740938925 223647134 658286330 629466013 629612070 380570985 700363745 286569380 441906525 507787888 592244448 543536745 638348310 107269098 327136004 899733837 928510465 117626294 403772122 377280271 992264240 863412905 899615201 540506070 813558161 202640746 509307412 65559779 752065614 685372279 831199557 764330833 924212204 958766260 966432044 469855503 866654364 582605563 827510104 7301067 86269093 334545518 963580928 835069005 890324327 471929777 819297734 296732009 689622901 758629645 989539249 129822752 886312262 418429803 480793154 198696107 538693190 452706939 997162941 900833441 925278579 809190916 890631545 766413903 772591463 88684115 607019914 201575670 749108271 197171336 495529116 963758323 972101462 311198075 440409342 575120315 586346630 990867103 998096006 22649970 661567094 275629372 489964233 49728532 304825649 226884509 622364917 268587107 349405560 154658715 534144582 740800903 978877407 147210742 518695418 270203360 972979494 450014176 459864748 264700334 848089724 134109643 829774330 91483260 346148926 329576830 496617214 552376690 799887203 494799857 858957020 304511950 424625899 287733203 319798515 520448505 678748442 615271890 961050562 909401448 931180283 961411795 988146990 757197775 856892195 385832291 456095434 201682759 244652475 217941584 306168879 851216223 969946597 198255043 871915144 84811756 605430696 850157891 926450167 355361196 572509182 947567914 981524870 993369256 996027641 823990050 904946101 719021221 853827148 780817392 935738747 537111910 548005702 681900827 733330823 65539163 705719809 298619627 412206621 565017455 799810807 319705219 818513572 405281912 683448684 582923308 715930172 861465590 992164480 631348683 802750993 752668509 990137907 729640414 873242763 727540254 858375050 297256463 861007087 100196893 529217927 478007685 638696007 296540869 334910209 918607653 922264748 239386864 858137571 485088337 515255362 556954043 812945321 425951220 740923540 658562519 910380716 906696517 974542164 924899167 966837086 348686244 871939904 829963101 908962068 927686399 998352872 128852456 226655655 113074440 310149658 890517705 942621666 46160136 630878164 654853250 878653063 77207684 954583082 182547636 871045088 994843455 995595329 217272224 277047030 41738798 877687309 618223775 998077245 573035141 926681074 100920054 114024047 446411380 883284978 414644076 839445105 72554073 409698555 916868213 998088219 473976049 669404281 218810434 718483762 607466282 861660875 281569555 707243781 117996776 227332936 337978539 668984011 291254032 907872092 656287743 846214555 941954211 978375028 710463108 853586484 704264433 775653473 86424983 473295313 831971300 997652130 500447206 664118831 454747151 766263213 737509735 979350309 917070100 965694232 718564411 863061598 928352493 965894333 400954635 895904024 662541908 764164928 571592667 711959378 661243150 713388930 852508351 942280668 320370059 346119763 556522514 988283553 453140681 712215278 132198418 475543821 464998120 527765191 575693505 696329018 246345488 500281282 861922551 888721379 23585885 172815469 397560639 469666203 391857628 952903226 719033757 967291187 443360877 660958205 788487430 800836241 368222129 618488934 950653509 954313162 223876004 320716428 140364001 385182174 674804967 906439115 383167211 586762677 191033674 706328978 191916129 475583850 894171852 947434835 890441444 918285968 310232980 355404278 122544985 771044695 416195166 829938189 195516902 759029597 472918109 665016379 949147562 967866346 440780709 594668069 269010998 389185622 922344843 937660974 493740885 957167603 346450941 508295391 154066334 742396999 936316291 993213963 171015994 838480441 104433392 317494546 506764718 820558923 917630626 997849860 128074164 500494821 263419850 901411849 968496650 993535679 90457826 917680343 868070134 945160308 611649254 780770385 516742623 863143440 106699116 773871664 931125983 938429391 805228327 841222103 638162427 716180412 998893658 999859350 337123102 861999390 118590753 777226657 934619559 955807542 138606442 191992599 615039558 773876479 720784731 929555530 994306303 999044318 255748853 648106898 191988860 452483614 667263123 668340863 602000011 732039965 918988302 989745220 279401119 300573452 723537838 855246525 531697236 685666210 93631892 559940306 101291049 297805357 939363468 958599817 40410569 301158252 249227192 427672388 13224563 449582807 168246680 220827293 853924472 996506562 420069350 871724800 565859419 724362642 833233228 888005718 837412533 924469281 994541322 996606266 748766627 894904343 950076753 979309644 237611817 383078277 296105408 779180484 700515529 840214194 509533277 976629138 323554997 449813274 947626022 958319533 240174875 475616729 611003174 846717507 759602206 766804467 19580695 971418206 506337591 919104708 801235928 992821581 795575138 881364103 167259279 672065213 782611544 962220593 305374684 783614116 932970154 990771611 544549066 612153139 536894082 715224762 256958844 507766992 463122349 647352437 911485739 954736989 405887667 637283822 966200630 986492645 358497073 523197957 711155729 725914556 423288941 614041280 6785089 867432853 537161029 965822609 803521953 895057033 679108353 728928575 384455868 941632588 360940944 604954569 920714411 982550400 365841287 639279492 640257136 658233436 837247068 991661916 996744346 998009501 560379988 889217758 959826693 967136451 532936958 698202121 232062355 875771183 378313860 418604724 681007615 953434962 676237240 866341663 450603280 613089721 801466431 856529157 61175737 909290006 753060012 879243394 393627711 515282027 429214968 600420869 451387167 966260776 566953192 631121318 140463725 908130892 916020979 921490353 678287674 923239540 103852026 733780226 220548392 992233537 654637012 855855011 960647192 981975247 482169608 745884851 24950695 641574473 456795762 718944708 964852609 980422781 977782579 984323024 956752573 991386206 216592621 714955182 175623820 868444280 591589531 601045868 9618784 40798693 456914656 582741729 905290709 918750924 482828197 556300849 318337483 547424174 955340010 976228939 478630302 954653648 318538190 869611756 354732426 721850200 30278058 953045592 309793134 510392694 554722699 806955228 499859160 692471088 211742551 509169022 644155702 651954234 544685431 719752440 632256856 641425244 171069738 198524945 354417841 572823831 965212352 997522219 582548429 656806650 414498199 638883888 688776904 714365980 425248187 773359056 275106761 506446655 112600291 352895075 542172596 962867828 241646138 261173186 990829625 992979926 545403754 567925072 908367479 921887335 568164763 680893784 769964418 901712824 462632162 926906878 885682532 919167030 309382630 835869616 225316648 683984684 892006486 920346109 701833452 991492974 508008641 965587048 877172021 943410317 562042402 936914182 443567425 889144018 796619032 911894094 359472757 995830460 497554346 785365058 38073385 996045815 902797003 956403592 766116399 802669058 254829729 775050647 232671877 769448611 762116061 861167718 998289222 999712883 899486468 904493367 529919998 566820495 948840237 985840721 730564727 787757145 345058147 674961003 1722757 716427477 336241307 918039634 300768750 648438188 588111056 811470440 531501445 929471716 419868153 955598257 830175842 879395370 682161546 917669209 924911913 927325100 571420222 874828694 736540589 873713965 589501182 691030063 516277738 520207361 943264131 948660610 542325392 785407550 810709307 851367894 351085702 747729093 464552921 924870376 752635057 868276857 106266938 562968324 535014203 904882159 750450880 847493848 415354498 710394442 185946152 347095385 47811305 853814806 145191886 180419293 885689771 966045297 150280198 990862781 799771749 933680708 322502225 672550476 870800263 970506765 109986555 421234261 653938726 852045929 828838112 951411780 181800738 817505672 240483105 852164727 335122458 570009346 869439508 893135203 625385672 745252703 644444265 894470922 128292299 937411840 188304652 234967511 626418453 643591800 361669259 377297178 82733289 548553823 706589314 957169723 582422885 783209105 133875864 561862580 686246370 897700227 518638912 992280801 778753079 886402363 737603397 850969440 516079675 580109984 205167916 830722366 667702195 945832536 820638789 974975555 458990964 459373582 811558353 836821585 627912398 900183254 191545587 412867137 908285487 926038880 300917264 363218238 197457617 287033853 96313485 761144513 589596627 697473011 300152702 613220132 30723976 201904101 327914251 728680169 538262157 694649681 595521187 701409940 619652037 778562399 893860965 952663897 715656984 918261591 562823604 689057072 635857831 947834432 528597036 918859533 420798833 683686581 517081724 716063637 792408342 975209249 924510776 941404546 432069527 531658374 817535757 846429980 24613576 687126030 983923746 985675965 45279767 976909856 425332885 827632446 719447212 722414328 765376756 881525613 630168777 774396431 922957057 939855845 116213274 764485169 829684539 888071170 655120106 988988345 573487367 800132514 570079739 680279597 430245973 618557966 425194213 976751540 649155285 978074476 655387246 943885640 563158993 837630948 117144131 990130710 419853767 738117539 663317681 741822154 292860167 348470282 485028826 495687884 444354057 954805025 146137416 483202146 453856534 625233519 157670753 849802840 657830776 831416926 189959990 738144685 896406868 946638881 366879548 607393064 692491209 693045374 802757076 968993778 814244376 840789207 535999489 577755330 405192045 414778631 903904315 947898998 240782565 665594025 961821921 978719567 941921492 973983729 342293508 862871857 343054840 820012493 704214579 718744231 255289861 424586537 143720322 831851413 672502129 801895441 977721735 990865290 644266454 837155135 634604955 924392982 622173942 841358483 916488923 958170214 25567412 370403762 494634535 706758387 908753374 933714880 232581094 843597610 535990742 996391383 260624556 843454158 200768939 667281115 806113909 984116602 919869555 930890221 311958296 737622391 921708556 980360291 331695786 626057134 869381936 955577190 353941709 774452049 89139396 870692161 910502468 956497306 425520221 595966558 337623022 435429150 410739170 849327079 827213471 952473852 181330980 736275323 596028707 763908109 756040561 895077584 239287752 805078332 682374395 768849229 861669453 891086946 805888162 865468755 233852393 724472777 492142231 538495774 906350925 998950987 557098528 591633888 243265448 644005616 564074134 834989172 159286190 565850965 526584335 989181294 145331232 671157859 460266567 697391457 865197122 991711105 699740243 888250875 987117485 987788606 319112253 583170453 679960002 992966053 918583044 944362795 653226114 959314036 865757667 876840281 127386257 278685740 738781272 835729949 664384480 980625229 715119664 958392233 616628276 892655325 73633085 187505982 237286347 273396778 881198351 895774980 238571793 633746690 420934555 964428600 7498900 586196591 474814468 692754106 884775805 908567691 25596817 926891751 694222570 982464068 971805586 977415223 179641059 509410245 233125355 447171066 149419394 801417623 520719558 525550947 635268552 717404761 897116602 897892984 124303221 897215259 722194735 772739010 374791083 611087106 451356184 575892589 317303729 456477096 927285545 982217997 249213510 682446631 656407850 954205481 380039939 510455936 362101913 867266216 965059171 981037007 73627789 311563981 677068150 890919632 757910977 761386035 164776054 255612028 947199918 954074188 582075041 820804976 988588973 992887247 517873108 961844687 315425511 413659186 838419186 904293763 702936384 780297689 71358209 650869935 15709659 565891408 429294310 471880143 502766857 528517327 147451274 212523969 128081085 978925321 243454863 435287354 114407288 883806184 336833242 717547823 16199215 982987743 230570147 899219656 609524696 635957900 913005579 967380076 587041757 838421887 27293529 390168817 799032425 836893107 381794164 991410873 270279110 386104800 472854886 825121638 584097838 673781609 844259327 894636311 577957416 835212370 774984544 793539773 400890173 649083467 474823168 852440706 397290966 530382204 493223228 718973278 473343106 787939034 953992647 990696209 61116667 106189364 410851825 835902546 519629478 868974190 97056738 904179641 640055811 662554561 4289447 53506481 391546940 889216880 915994917 985798440 313117536 401278529 765984534 894701735 913276389 975648986 767106295 924796516 528286133 927949019 778497132 805070492 928882955 985786335 318227586 805104016 905824220 999285876 191240898 937355832 247886479 911443344 493739564 747934804 508165496 518733840 248531550 944140999 970323745 988743209 292749265 504229176 895415550 976889432 819598316 958668594 120654688 809851281 896275395 958013545 602670807 638125272 795763232 972548758 817005877 906213135 555692083 788979214 444717539 745478388 259150343 394772669 435824479 940966450 192199087 651900780 663165807 699612794 85867406 675399907 788883862 992860660 161304774 269433114 224760677 496344029 473570558 702008325 572148739 956961994 379628991 725708511 999290495 999599264 817712954 870507861 781504331 906719052 188223445 424192072 774232159 776419600 846696132 968661112 706780723 896795978 350038039 903879893 561693285 938656575 180154763 579324839 338574158 875693339 389070806 640027114 446050321 845631381 17236856 219430040 844058709 911835999 336266428 620316919 246162072 588367810 649674114 818399927 704211803 714439469 725232520 735029594 972112894 979028714 388654297 529795733 918278755 992665332 202840073 477209090 563620176 992376340 197711363 831175268 684285598 704031362 296496134 705564082 764624468 842081798 210107526 435006457 624406115 803981574 669770820 944936070 880478687 952763916 565716944 657453972 930598152 964088355 128570777 860819769 745014110 882685498 234483677 339363166 569246441 985959404 353965441 970910359 780080208 896322195 180772014 790591810 360187594 797820729 713356900 719874419 55071020 416713918 110497754 123535689 819790894 831738215 618968370 854281111 271045933 606320242 780610020 974834882 965281850 971394825 313425099 487674973 292648088 784688120 132071074 372014425 33169487 49452436 924299342 964774828 813543764 830582858 947258432 982363942 846686161 932713338 942341823 963182702 20257657 373119744 670035471 758244318 702395844 993325221 347324272 834665064 250255494 337545488 900538358 923974769 352512932 399638759 777965904 856980336 433534299 837956083 405481920 721627745 53139394 741733441 565224485 608131408 704472263 751205909 622208639 844468134 731804724 959304543 652361257 833705925 612347778 792107375 868980992 988496071 431094491 498886491 265251140 485722325 676591624 727122792 436006792 450834010 867606124 962374852 596057721 887396746 842685738 907538866 937588253 938402417 162051970 276511112 944495919 965073302 916213553 958595956 41893891 263349461 186088826 635633016 601957841 892001587 808552425 960528604 851567425 880497841 40774080 320396081 313282009 893974524 452572546 469453505 668766581 986899325 865466691 979899286 97450499 976192911 164643795 433319042 474558143 565245224 914735680 994088870 950485550 970124286 460361321 721786514 238295048 777174816 320481593 336354131 733131449 883554247 399060978 577596201 841473533 923198069 422256024 767361453 556608149 997866040 212675237 334142927 265374631 949334203 234085860 322960707 731178813 821145719 412605947 712013835 350287911 849806280 620361200 758665448 964298042 982175633 299467225 960577179 177166143 777203962 535856609 666093983 395999096 472887431 564520681 605582092 337757376 416116052 609701970 835079034 790021154 954021307 847309662 943422131 705830299 728269424 560148678 936846491 500638643 845261342 298708427 814264472 526555031 713372363 392919331 808458462 199206309 991600338 946382606 964403855 308362535 749196840 540851166 726127533 464384070 549933387 902624875 995095952 519459262 622049066 146168016 922132927 534368670 981933869 589204752 944792168 733991333 766986932 756408007 854345329 61470124 184182142 198117177 527121250 248525609 455347336 576872016 608266678 756911692 833291840 92389705 550029128 603009259 950206130 548506066 936470384 582805792 810669009 260712268 597653283 869762830 989106080 846554686 962362113 891053070 910226124 485237735 504240102 303154839 858228433 678433192 828086629 277561530 682874177 836880218 949153563 463353973 530093091 908152235 934261690 231583216 955384573 498697697 628206508 462114082 619070063 630974926 815400394 759568321 864447163 472830763 638015622 172428632 909773040 503091397 762712803 633243534 789558432 214611421 585018949 283794174 297718887 251432503 338736538 742489764 947099080 385856381 665061472 806652836 845417870 363733222 405170688 133695580 411521018 151460914 417361147 210584307 542258062 648967955 781286464 828501315 980545691 999766611 999814627 555755778 687115752 166707751 880711157 973063671 994587688 532044999 608193982 257778926 918773491 136040129 220751608 349309916 756526162 666761079 941789687 557630442 826978702 635391605 710252907 227604185 823006072 44471 981032396 970241396 987243426 453941440 665612095 322956012 887904695 684918243 913265146 661735609 889284352 837317326 853834594 490651723 640091790 207811923 843408326 982990805 988733782 299937783 631709312 145427725 370699031 184413238 510087843 978835317 993979211 164449010 617605513 171136378 215373631 766418709 904711369 535182930 786733619 498173423 726774076 183319327 673412011 685601002 975897747 917630391 929609373 129518020 520875494 280294885 918934336 355545765 518587080 863880498 891984127 521779494 580180980 761545250 844832456 520776281 985573359 593393664 833510591 972956745 975806643 179456914 520774717 826345106 927520116 68398254 192119356 899261947 919427534 840588111 984528496 373097536 478795658 857368052 887763118 609663255 897774739 165527695 220165403 952960757 970891185 834485718 919908195 694407385 722279038 249335829 905554420 53468490 325376043 868811841 962288292 921183683 967903406 491537892 979684069 276341115 627667880 525004265 864032757 546024853 713227597 950986890 955480912 734790307 902240389 786237923 818159117 550775033 720614177 272563852 685844926 698043199 918176549 551716469 926467517 695610594 745691921 721279365 975227007 4149146 150348359 872790410 990090872 624430540 999034509 241403230 576092767 330623910 359900819 977892446 999577125 721914687 958494033 332543923 564761612 302210520 824658561 539989045 553530680 613011689 642663698 71631657 769267673 852450167 931150824 18180968 721614551 685052343 954713219 593249067 740560706 381896909 618703327 5817589 251739809 957308520 991378871 161252873 898480542 444886109 768851553 255097622 607137520 716145718 725114482 630276397 961720264 645568602 921200214 135737624 719708313 902040425 986092560 758184272 796886195 45627872 624718713 978800729 986426239 926269158 928225696 575435299 989190866 260016906 533172542 803911100 873326736 816575188 883740793 289914268 677509895 534170855 678301121 764427990 833680952 38382797 508342007 541579801 692108940 975077096 986631041 142199548 823405264 493058364 606656911 733693501 990581948 301893732 785090515 756025555 983949208 457452140 472075936 349306009 548589049 939353976 980624308 666264341 684325533 779567966 959516557 395476532 851727406 929713073 950240997 991688668 994619878 335985494 795097579 825873585 948716133 599944075 827946022 693497783 791605125 807128035 865979354 327716888 644501282 369566159 514920348 171695272 328627283 469560915 848289235 269156149 838799950 422181028 451756658 667893008 677012638 928301185 970062949 782348410 845583906 964471706 968914087 115740402 138793312 36757063 132772546 545031965 934921254 393459892 968579825 730197156 775852344 529686363 797327044 328978707 436406778 133161604 278883437 288930271 969796862 634109912 691192277 336884415 989248457 304083478 572565406 828766418 996231481 130792376 443882236 970444527 978369726 791151077 878892927 672921962 820755424 256592079 485176819 909297415 935004336 340509855 734068300 374193415 855885050 602225187 827113962 237808766 255343425 468144489 721351592 790282648 938754182 328869317 779967345 864081083 954291858 738515637 995569411 734947410 757624531 385764653 802257392 188146879 766534913 137452330 140497071 452530396 739077840 746527969 841421641 888564011 916863705 269103015 932520440 486716008 628738364 498076201 883723288 230320919 409794140 31712217 710517179 898751156 958717251 468310605 613171120 281479474 679216761 756822712 866143388 346356418 378818974 260325825 432502660 410417740 417180140 138589234 897951559 473517570 634946571 980832749 987434995 606678540 954553023 849420130 932710355 775905871 907261597 845015779 847698622 482055506 605682328 881004740 942671650 621357573 636650100 266278020 423217926 157799682 956060660 263520562 531272464 808207232 960540351 92535192 993678507 206003628 801337624 670568535 903341718 104262223 836472528 484914740 911894561 271341852 792696760 414909540 950184737 201740112 205745964 54233677 687219791 890223857 952132087 490997703 602496170 247554003 767177297 250683135 418243314 534793473 678996628 582188438 586925723 476076302 503756832 52607195 534353453 932632995 992197262 178576150 599733126 40469522 876400679 186525632 981550688 658860058 827964643 855325941 910585156 156944478 970454619 713020708 891736768 337023228 673464626 561834263 963418057 153449442 900217952 268227795 323556792 880965963 917078512 137732909 699883240 962266604 965662313 781214967 816694310 65410048 754750414 932435074 974173098 331423152 532349360 356793327 881591282 71910707 460967491 783333601 802443011 597468983 742394405 241714623 414207433 780805721 959826717 4571737 237364669 513769921 748669652 121322742 378500133 287446122 538065440 728326055 909432004 196496444 620804555 123947860 419242093 867289196 891385526 172324580 386096878 984487692 991403359 341104573 830792139 182753229 420785398 349211605 673045303 533505571 750562359 900594891 937531506 554193203 878171582 763309719 771955238 864413820 998290255 814463704 941706889 265071787 360149589 676715798 923411837 679915736 690218642 380027084 386072159 442568372 554520964 296586350 612282349 377440821 799347056 393385947 620519437 695316935 701290089 752909568 753672078 481652033 716522107 245482811 824485748 432984885 942289078 430862069 446476701 271644133 605438945 789098451 916357013 438664391 725615306 874798927 996512126 671062776 787465010 789538528 868397374 622598932 895876092 231000379 273462664 371837135 539671604 787488795 926836925 426832516 440788160 864895436 943790607 58072960 955380796 913687663 968983548 887002182 959814801 750822699 760292865 90306460 667220154 976893602 982717359 655227983 824804140 978074902 996788618 967975733 991439555 532413775 698503280 268204317 268811286 644726920 708521902 569261436 993207302 186991012 999435040 683950973 914143225 286654152 952167185 168538482 745025134 396314422 396844811 489093066 539153322 481949388 951652109 736209815 874692225 990934181 999596332 682249843 868956746 507115795 829951267 106417449 392562785 936425389 963404536 755254393 973783952 298799332 695479863 661326364 831476575 35457504 574753945 918167891 946935215 510595646 953158160 436968975 827355721 480670275 667179737 798627818 881648693 793456468 943607759 472793857 479457558 669286685 702173332 282547386 655478587 829701926 883283578 274939746 398922718 556647839 751171582 636026029 653166097 873860197 925087557 134698881 152375843 702492021 881088794 704573599 798212732 165304150 607366557 373883890 824695638 761401655 928226323 41210783 185941721 685333278 853869362 836331746 961235755 254085290 931162076 360628702 427647440 312330446 863941522 488180506 954218399 941918257 954856805 492011448 647912507 857963091 893338227 237343443 434574411 557983365 646579569 900220829 906986403 661373213 745821446 153391102 223814917 796519966 801641621 910813570 967845791 144242582 473795352 110508058 387808594 367008105 817392539 670279948 874039421 338574837 849133428 54910098 162245309 359768684 741027879 368056241 759200675 616387074 862187844 258729715 833400626 854248349 990839768 830834143 854208653 149482037 948919851 804300036 880032997 326040765 696920816 600682407 871870741 83570514 687915948 854208008 968794531 467434555 780417580 389051338 877817216 738591565 778936920 222201940 286947066 773001843 809064030 64955826 348486850 158300576 503942425 983084098 992974822 136705410 873875446 179349332 440917165 457965841 763031481 758416429 936821009 513893080 628190280 566760593 981471540 999357083 999735265 54006040 467046941 231828787 526275329 486436181 768638575 283961942 295154424 234974126 868468097 887729233 897785261 670770001 998583337 432208305 846651303 172496173 718723648 913176385 921163249 947234071 984478191 197215655 203366675 193243374 855376433 862520600 945508100 864682795 980228729 405014307 987900071 353446204 611852789 548105101 570174771 764131710 771928698 957180705 991732376 72532482 544134780 375634970 491751034 584849044 837684262 713009037 885277644 935626390 935890113 783002346 984102893 359754362 903991750 900039544 988050712 713599195 879580488 367048313 385022026 752479548 950519526 366980983 703087139 887227702 982659749 780541701 795481627 326448421 868082452 487216829 627572593 204418241 793000176 556426998 881474683 550657558 696800543 292657226 877926258 399753128 675781571 894539794 959170287 694554247 992382996 233575601 788641615 365274450 913203982 748952261 785765451 642395433 800162912 616476728 758917143 59810062 295468382 798993384 832102132 600882155 607357491 201837965 937927261 725647726 860953144 443639052 543320655 545757793 658352196 86640143 193595507 614080163 960703250 401403684 659644170 490458943 867205507 680941448 984641518 91132417 491723336 715307401 721474791 278680352 617640648 198243399 582844725 748726800 912009684 792604218 806284400 250885564 459037343 66311235 991585785 782404236 960719639 350107312 695204555 593354739 792767545 302598548 506838974 394245845 701791940 100218992 695889080 302232545 461108353 280883893 680639030 682555297 986109868 834716403 888019391 466483711 784429501 316646519 367397641 376085699 534069353 652711935 853486463 170047767 739772027 755674492 906808981 511656038 887751839 538907995 718218175 169367236 204738033 366726024 917569160 41782677 586193013 753117963 887992899 755535263 902917092 195227453 708042743 950941990 968477905 641401283 883528565 1940286 488620436 115144701 310656488 877696937 950289657 690014231 929308637 86610112 491476496 785600065 788817310 47239668 700349126 931947021 981427754 510338154 777926348 109232609 818230906 829704907 870377010 250425999 977291015 354082080 624266120 737717474 906296072 195379393 407909785 529904795 866598398 700673385 999965138 679642335 768395176 854431882 957421112 266710525 756340420 809822440 976967433 426354991 939725894 361880352 432371529 183581638 645412565 219923001 970602146 893425463 981170965 91585166 444468579 145161225 179234855 469805792 495902694 914057539 989502903 771860977 921526831 566691047 805222821 275609957 558583119 193684476 795380454 578444412 696358307 207294088 356739461 859113714 947294048 167261219 833429433 197034276 353352031 868127637 960072683 824800148 948972997 680525913 942250143 910146564 953589207 640717985 751037091 839939131 951712632 334377278 852952792 667309247 767846913 122483918 200585067 992983152 994821107 978338056 994096898 942681067 983669605 122006673 426170990 132828759 193824657 852137847 908135332 885912395 975297751 39348737 408426945 522121327 800145125 78865867 932346491 227972465 730813825 837628057 893630250 541677110 970077980 819599096 837510817 246293661 495021849 701018049 840566433 757548815 974453187 158455972 791090232 226477128 263029808 191790413 815185158 77096913 203445144 526796787 756580765 903951493 908406505 581419542 786447128 455203387 671132232 57625991 201855119 95778436 752024268 960077756 977398671 160036515 622825703 767929800 784998020 187754329 343925775 207506959 252726302 798695506 891211742 629744817 800257326 899526719 914912111 520840756 625915228 77307865 713009671 544178432 619115604 201461618 334073906 248763419 532203068 76911205 719811513 488145239 634609451 897510120 949423495 271438998 940033754 689563865 798477578 38197962 161725784 632645192 783926647 416039030 425278816 305410723 359149100 560206073 695423813 566370495 742681576 314255587 677708586 333799821 421324177 812293036 892961827 980815994 985141249 310000494 545293694 984215968 998161514 806275434 933863169 634973073 716393226 409092073 418942715 404543294 736610682 141100182 901554390 846505644 871696561 394088388 902665803 887587579 921433220 569256461 741267769 541391526 865435024 399274822 582281393 195408705 256600712 123455455 593797364 606179210 998083690 160002820 349763824 672906618 747949508 129981255 218622947 563804339 692364723 236578211 551848600 637757807 864317884 997881113 998312884 359914378 887502340 224446282 874752507 525589665 810680376 376512213 753112750 412408272 546635846 836452260 994937055 764531140 954100494 95701522 183102832 884443070 987420620 379438676 964420431 477629747 768048254 744569037 749059655 317340647 408184335 931527515 932066918 644266002 920918285 567188295 622178807 30387946 895864460 550545528 783298194 942692238 984883942 342729256 882959557 676547758 953593280 127457930 976233799 472189716 537396150 998919492 999790533 546927223 736032918 649966156 867461334 754588093 756580307 262727241 371159206 797044397 946928104 776128684 804749781 914140106 992997361 311432885 919864068 872862466 951180231 735939657 983436008 22746563 751772534 85252662 871135897 72281119 928584424 565274925 787977571 559279475 778564511 618278599 712000558 98883603 581434467 18677258 478362451 547235567 643346461 992897420 999855201 65207440 408187626 597867597 672215359 142310007 449677362 18650383 53588582 236559793 576688679 203783891 325385927 870206757 876185215 404292251 823975162 800048537 954025109 668024624 680836285 287035161 300188101 18898230 315206553 799104437 870159563 969284495 973811492 279481738 923415858 837378535 959374558 786993196 898654306 464585794 947706383 337155730 762650770 691418921 846865974 325718561 825203522 706765377 897603344 315217100 350143323 270490107 518699042 879002236 914186401 340385299 471756324 470032195 826117458 6117819 889026648 676220148 900473078 871493547 893669661 427352815 649589383 305296123 469611575 895890573 957450601 426274261 735863518 556872657 778107411 79626914 327255949 389084208 723199082 848981926 907967003 600120503 604260021 661611633 845596139 782552509 853343923 868391996 868783423 69437539 575218797 163054258 398725571 652642215 910024493 704777820 826486300 298019144 949868028 636832360 870838880 949110037 981945015 680525065 857444434 466654898 720983945 859748491 963573869 763291419 971355113 917415469 938952737 571045594 907529062 350591847 453317393 851998426 976475331 184283983 952612339 785186874 879987406 757675120 980085581 218107942 459891509 379282737 621886855 651306204 734417737 725513956 854042136 86356296 617202449 206399319 610718311 727772602 802176647 852704873 984763733 466429473 685460766 100599522 854626474 711430986 874344342 487462407 741283556 337816625 967551193 668139673 954675552 434851833 829244891 64605335 973162324 422216532 591270713 398061102 912197835 520937588 750199199 135738516 686302773 265792516 673348349 263977450 457653961 277355884 405181273 975390909 992954981 267990561 590367725 787923107 887985980 794696422 939373471 845814879 990975898 96553715 278208681 257880734 360602267 100463497 469371534 2495758 612035084 40543776 88651176 527046522 840049496 870230268 907996666 990510684 995443551 527040367 685980740 555079806 844535258 703182043 879915839 582308357 988203485 480797826 742191386 602001598 717525198 603638781 931906648 742364362 780063681 905115388 931521019 608820412 838627164 886065287 991802318 375018783 904520375 520872942 974484238 198796067 480020453 970634070 983842471 44846288 383322322 179182605 792827704 809555029 990489414 893669481 949010343 722790184 886630871 374905390 736229015 83490786 526001281 546331350 649550977 479649943 578031339 976056878 984658168 420351248 924455554 714557020 936588428 561370563 927528051 586634714 963895986 946513895 951110674 892982052 984213412 339156708 358384860 70278414 604393970 898321857 933202628 513505143 636657774 960204937 981816741 216336516 980473144 201644231 465110622 802998068 909465641 415119471 696335934 447033628 996796722 891673486 932046175 173248185 503714596 558598290 833836666 719983276 868120577 700959321 891127868 598469309 890397994 679012094 709740501 659917171 819838562 971189130 995331078 944567993 953465154 947544009 991926739 226828747 994823462 425489658 608623964 598700675 842309179 120438899 810286891 562360725 966857114 322253818 792892183 875391721 902801164 139605016 208605419 789219380 968000687 331287057 979632709 373118118 785373793 268477149 981300426 833456005 895243791 248845957 331364881 209740441 529676898 628443201 838573133 904319242 907004905 66557867 915061459 544752445 912845255 919802832 952299399 115678179 717248892 979446536 985919405 775306463 976498759 994418622 998007999 939702030 990094248 808773177 838134423 749228692 797936415 974343696 975648728 932658932 965001927 543144108 724190003 138456159 684792782 653530517 974449247 893070538 987865923 476582474 851227506 595293071 664924527 447374875 995426569 126100679 939465968 752075136 840876969 163368599 970792517 208409017 980524968 572940294 951511443 733349989 838803924 515468577 906698726 987660783 999685076 885665491 975927345 308370464 789253231 70313519 490924643 626667178 820113518 837825514 892805499 314003509 329247646 628205515 791922358 118795041 729182260 858827604 967042179 345198752 739334034 108315427 226631446 105551355 466084458 571919712 627540731 915701911 940920187 999658457 999774554 312096180 346266156 183013599 634176851 414980312 666228369 802490235 875954945 694248122 763700526 206100485 422212054 356679820 396162932 60847889 237595583 193913726 516080373 52321566 197203604 172373698 201026813 310824295 346339729 550911529 917009495 947240996 971356136 442781781 886772820 414889216 858301798 558166168 754869324 490054231 662988262 148219576 371130005 974794322 992161170 558801734 739879489 902518461 946221246 802149014 988380107 616466101 687793608 388521133 883296523 342495053 900073174 459822640 601561128 798149231 826599092 364955757 824742983 450833919 600993506 601281691 899639441 289562684 508130619 119314644 856811680 208115336 212695721 351260188 472444672 835270792 893822564 107917517 902570204 115347778 924439869 52791599 608745449 525721259 785659519 952802375 954686376 939090780 974529725 765647068 780477921 287828366 369141448 596785867 981567657 376565287 388022849 279956164 762277488 959531936 961165865 66529467 128675284 511277570 941621948 396033171 398093912 272927853 912876523 980627831 982698069 533106564 813479709 774563127 784336964 904946778 986210010 138164526 344350553 343905231 476727510 697372238 726700744 859992330 903729285 268994651 327555415 531180556 992829196 159633147 256073149 247666756 943117578 140445332 407851483 624243661 808561148 909516349 993822930 378498140 383090582 293411429 843221321 447626551 643749319 725010988 960071984 445224160 980796975 555668047 659743400 395321625 767651555 963514662 978304672 424039756 441940282 191587672 207479754 571324929 770533184 878872901 995577464 36642280 954970877 912566405 941336305 15076376 782863280 304033265 946684620 327708604 647011172 341376109 604196168 207235119 739479799 295009653 957344437 569592105 666900434 947665670 974279145 513874047 932841330 429679108 464119670 467117098 778770279 382746665 383179004 290573004 619122465 180301816 850068101 903324217 986824376 169107219 382477541 915172931 969874928 767251155 902779013 103303307 800155197 402462390 726324595 917596490 960783350 268081390 991991619 756111044 796849420 390502245 818158896 983191273 993349427 120592133 727516449 58628061 347605961 599847093 911110839 239942099 613829849 559257661 601362872 350352697 587175788 790859790 934531065 744923454 902547461 763905309 859078977 612392514 767647933 994705595 999572151 289531276 329000479 833424701 992377937 776964238 937545582 697755349 810311716 473895003 809904411 18192200 864292088 133126267 204584110 259043472 399657973 493047824 752092882 190283992 191905873 727353946 820679587 545431934 774866459 427207733 897270173 170169755 220574127 218221427 251230741 203769803 382603940 654465743 723637980 62334905 988797237 824675636 906240141 317924547 742971946 303215257 363515781 310138408 821088050 84618509 502786135 64827953 457514517 43807536 868620411 751045238 995715235 345271178 430037041 47074074 279866610 540059568 884990439 480850436 617244314 966030409 988527791 290641028 338192427 526257208 608589140 956402683 965379818 338958549 358273050 11414503 289667783 621418485 727607270 659332107 911671895 852150767 892325234 553121521 609526849 713670173 771374425 481604200 642074808 570320221 980701773 59720582 380015556 235725926 988057079 609400394 809466923 942842975 966597816 957999856 968597065 149552341 927990939 457676999 508032960 299776603 564257884 10894 624469454 652613584 818520107 649836293 681122754 258779459 627254541 803530378 955338372 316928972 702688913 601109584 659257704 876043941 935045254 335146782 464938201 762303876 828060077 865424362 951114480 302188303 797455285 422252894 975219991 970624320 982444779 201449554 205029834 327735963 709533434 746281670 873014779 796183034 892004839 170777805 989837684 833921484 838748984 704564302 850546362 940494964 991426248 40204862 242467557 245361437 998798220 457667956 458521633 585176213 914664576 489994152 886014533 122977973 830756975 876852553 884849985 954594135 984850607 457248380 710182440 43879624 733407392 50057371 480028934 522762425 656619647 700518594 916855365 346778714 639712887 102209252 908039740 128367965 427388094 839444281 918696404 887625347 909473157 830217464 962321088 693337147 855683335 472507758 736121729 864809861 954414430 893429980 969140468 437781817 552503648 849896348 902145434 834938076 881186393 719221788 754426393 736223189 956183606 198691792 372312848 724139676 797069517 948757007 962936543 569513232 936029860 443566247 694379444 980617974 987746770 526253738 603457066 853721454 893980490 950162568 964391471 37232786 275567609 417214726 773056693 208223724 795804328 309203863 957534098 97669063 196910913 436531650 639791399 229846307 301302053 652333161 711582597 804103987 976823338 173435472 479602884 371700691 533332459 502921587 606637283 7313774 345145389 255791012 472284091 199217606 635841645 938159242 988089983 785965075 818166401 923483575 961985925 747950016 763988631 602221790 983982794 625757844 918324350 47533014 767070531 596854895 644699675 26043974 552640319 249571132 685890695 4999580 420002558 188524920 531317582 328678311 735923751 155729296 629775843 797680599 818419753 135502485 680865541 736905679 993056824 986103356 994661956 402710977 410288859 795918950 981690099 452799293 822601414 353385347 734581156 918586940 963848243 543692927 604065932 523869873 617607113 252771900 993249448 45175847 587386154 874255489 888088765 1072288 398867345 321380321 872818754 778401874 848973607 783708008 999741277 294617511 778507570 937100585 944506484 442390165 988308454 3617859 264654064 457295004 745108926 410503799 755016950 769635205 802256076 845292342 869782876 438551665 913160831 788560139 994591468 666384828 745992419 720674844 819388041 361474452 945764376 747032044 877280048 267811189 942090612 854710876 968581611 705564604 720782137 98809812 535868871 389295987 608465991 935920609 936662677 770983164 862356670 591180755 859145213 890322375 900185289 214042635 840565183 58542987 689631587 379849403 883531008 811006735 925622899 484682688 861223022 273694689 385243199 7379311 613245928 281204916 904810678 953588182 980963838 159697273 221182756 138890386 434325787 485806188 964761120 887103390 986736125 14214040 798930317 25647647 188695017 142379770 762904154 684846456 930958074 382088030 660654833 74026900 700392138 588345113 936548800 436306185 533577900 976396135 981021245 797513961 800940270 517487571 818125699 139818401 333208529 984558605 997978662 816263177 839669320 880537917 999112617 189853172 474371383 712560458 799996028 511612182 601191553 904989707 909265483 301037879 875055018 673011466 768763957 332789107 858571830 674972327 745587055 36781302 374965352 151715749 235912340 932991563 977703573 900576923 918554121 220918628 354180508 264059928 373327963 837471241 916230200 927307439 960240834 107045263 568226240 387686057 724590965 935086970 947932704 840487286 871919931 998176911 998313244 620427092 644038268 532530080 639136409 807680734 988353996 425055112 698982568 667441996 898245980 727753477 895094636 489868122 742979001 453127717 882430897 730481997 888710471 284165287 630749300 643765364 723697202 887042894 914405779 988135979 990497664 761398136 909501310 475548948 785195814 65831574 726069648 589494734 963396604 695358030 838005076 161964302 720699095 952306990 970399259 649350306 828984224 144207087 500196635 303626881 688129815 714116108 814221765 712578287 958501230 353947157 874992749 903136806 962964427 130639758 904613831 210119407 434382246 204309637 961657855 79208403 389723212 420647800 959690706 695020219 977124158 271067014 611996799 391865544 445802206 538523485 996494483 725863430 815069089 951657695 994489717 395865895 831457457 193562662 431278932 948690357 990638134 600774696 904295124 263906352 977466035 527229715 595074457 95491184 760469534 637542812 858257377 265407990 357227647 124237366 964887655 917140754 935092581 967145168 975323951 795412919 796743352 879980071 906946873 239285527 813507034 920233364 968115739 654954828 924412290 910217131 947216520 467751494 535060346 660553315 686278318 287574352 758600484 684902553 690723557 322876268 431221865 413848814 467427148 798731073 910870331 577592468 629512385 793231541 816083043 931234338 934761592 82047443 725807028 830748220 851656953 49551325 993018355 853017747 996577153 724853557 788745701 440230083 766089228 477181521 912972313 118452041 983098463 317863945 627175808 787607017 801291328 82131043 229547374 292448890 867933849 963394040 980185857 574085133 951808871 695968799 924342476 790932949 818471173 780235883 905478465 702726457 741950883 421897733 914834904 406068698 877852561 494680967 581148972 218043847 825504650 286837998 531139657 197244631 373277850 126836857 285606401 99849629 882628162 33284499 741045175 34871767 553834286 71333533 678755253 135975691 291853993 818993359 954709827 257011202 671595945 144408774 868763646 80408343 938837291 805434756 901773774 824381308 977958717 456326676 749361224 601613712 825232014 877830609 927112736 174517125 874943987 110716878 512234673 571560537 586632631 816884293 991684524 14820773 305109890 864251438 973464671 636656935 750998511 353724534 548845634 25905016 220496314 806306916 904442384 959167880 988405451 396618914 678035908 720106576 821380519 425554553 433201058 507972544 943587771 796703873 973250229 714326105 990728945 608616758 916922629 710823236 951490718 878979607 994805252 674807395 847424279 514206655 877013651 199787578 235279515 145909290 941468369 256277504 719096408 294312727 323680634 270853913 967641685 510822677 736348529 666615798 686136245 108720934 456313500 901833264 932931621 199919489 883842212 172169446 190266007 808396195 951419912 512146600 720029366 903663414 987677470 698321668 754405923 282410313 880879970 5774754 432117247 48556871 515589113 544576848 700204549 312679440 560410534 182897741 340274672 251456608 652376696 706866459 729408932 104170521 897943018 797728944 884390202 275135763 996545885 629316504 707639051 320640121 380599702 104236872 167891383 552860613 970087088 757529361 955753478 778846725 868483003 194635040 614867345 118533956 969043516 898547298 917669652 380201167 850112341 307923805 452289122 42837465 754570028 14428464 955360198 975463016 986680260 819691973 944181858 526335000 759221374 561865977 688881539 127190441 398767291 695133771 972160921 202619412 284070336 985413877 992789475 768844032 880943822 592659833 881871669 328644318 974010196 291023815 453291129 266837131 700003767 250396217 532759434 32507221 882406834 689020062 857785462 861554838 887805228 974169289 985175518 396750014 589054884 70963658 184603346 976139793 983950034 867365927 984484650 595514070 831730686 678885690 922177255 286105208 712281914 79960698 734451039 199856198 580655542 936197964 987005035 99424583 761360775 631394880 793764393 959088672 973879260 16033794 350839261 801624801 894319457 793138061 812345497 273838125 889445115 242560134 269300476 513137097 800661383 444034376 700972342 68830085 590795568 222695587 255727226 800172294 882190080 331477261 358779993 785507417 915489609 664812625 999539657 196107736 377508038 352538078 530695473 75644017 269144760 359727225 912844906 598086539 823569459 843456206 984839900 932354612 981381431 186542837 321365079 788524312 888979884 534093882 580029957 86462389 806578451 367708666 410481018 967137284 969914929 447660650 606257323 748439522 937458496 440754946 941721751 916121932 991695075 904366540 965326819 749923766 925522802 700047937 994851690 207061282 753801666 894824841 997153392 312488635 377730568 315153695 969075856 928372903 958048516 667565661 955042770 878422207 948652383 337369994 620197855 283251799 522023061 576066498 698273137 654485544 903141740 991782242 995419837 91866720 444993919 545223526 557276635 345415759 763552288 676283655 938676821 578107364 940989040 987914316 997580168 983117126 990985540 755366775 826456545 824857011 973210643 804272608 830679047 618593742 722083700 471941114 774888653 116996790 903245210 32640717 649760594 193165094 200621260 822112181 922798456 206463248 948110127 801509438 893007830 732397939 812950215 909949590 923892627 102189649 274841521 404312555 904192076 280254696 570900688 986689919 995507258 913483020 978024437 128672925 945017966 8354955 954473137 146101629 884045377 739479716 882744433 451880255 892392715 722888371 750604455 883749327 897999463 935590367 977842936 890824000 947365515 786604729 917738655 516845550 681292169 561223230 808604535 361202273 414891089 820387612 956721385 61687604 660371819 873485400 893554479 270897003 462284467 488686025 860190453 528244374 574484314 534117897 983166302 290045959 564326433 673140679 979619662 557472461 756819433 435928511 642903952 180719451 226809936 967374386 968762730 630899180 697409400 982447884 985927228 601037640 909305799 190266844 293468478 183987946 197469562 373865258 513088896 526684691 614291407 255611562 658405644 729457210 764829542 46087954 52923564 41522468 63165163 383408686 859764758 183509988 428782077 669217700 813737906 623328299 796369142 919862915 942678214 601745794 867375945 651193901 680202477 136563699 597779964 149801469 993709534 202544415 466685596 715759724 839547416 715578475 824158425 94888041 716473483 634371821 924379359 938479896 987741826 886171818 938626445 298511956 994204947 987138483 992897215 326456380 610743685 536568011 904818234 419525775 991113910 127746485 135523727 873734257 972118003 596271342 924457687 807610439 966711940 257900316 430360686 386702812 738694872 297101649 690950299 85040989 639746461 898370623 997758519 267027497 404844963 412589362 551003037 967012438 971374205 35539020 564345043 952543411 971310204 739622530 924707225 377397839 955731951 119413286 715419919 193849628 512291456 717210554 982090503 906283079 993734957 790379070 886815366 439331389 813466257 826916180 925405080 29429534 837979392 351110517 642115676 985822459 986431069 53879855 641059044 298614161 560098225 27764392 862741226 672803904 904728310 771085002 804361579 217161751 481793807 447729513 775716328 815715253 882174908 443433971 651715998 609606787 930173570 801678669 985358414 927715590 980683589 86084120 148936794 133055274 582801572 547401060 789060348 849343041 993189014 451303269 599630008 225717009 982931200 655376338 843102937 280677175 319950051 175196777 494440820 646540273 757259094 68659087 343476346 854131954 953500671 945592765 959083223 642924474 879477263 252452683 591493957 241328199 737919528 970684192 983105467 858485700 887668743 627936451 723214778 984838046 992822280 671052191 765018267 231866084 336609772 170700933 797992754 639683283 803368921 847039981 874372412 132013722 192318852 196655324 259600951 78964488 943072457 536411521 810682452 26668255 318979541 203541651 714471144 528246353 759172268 180775337 845324669 383792865 563465285 58807912 729673876 243414669 525781069 125745234 389667065 946010201 994351272 465812246 961011175 350439680 680618945 201984796 232073144 36094178 667841560 390348916 849274832 353287224 515096625 829009542 941934428 447730715 814814268 619894665 871936845 170707873 438591136 282370661 836813292 184925356 496817754 83458445 614835664 414160528 819222920 211129583 369419804 105615782 657544240 107747784 994381081 323153 898803012 196794651 708812338 706303343 826247560 709515764 774732923 610271060 665398309 545164682 866924620 118898779 420610924 71468091 569821830 761524757 905120295 62350858 348017566 7936943 338619780 183766246 694099323 263192513 730930874 442109707 715511571 777657547 967568801 790422372 931235558 104929910 742038190 361407631 955741074 701692094 863024098 553430224 898498568 206337284 583693728 371140345 506524606 979497949 996377898 799888911 914038731 923416341 951454118 199285876 983277958 493199787 842178889 308379942 724267836 487440904 882777245 71626132 711692895 511066865 616907869 141364689 904078589 322649558 728285657 124941254 607321215 977976195 987741635 457296076 635272700 899559646 908443719 513725075 881695375 261160748 730851049 993406674 998936508 462525718 584425302 790225318 954846169 49576179 824860545 578169262 715346243 276332769 852169928 434789397 438302879 172066480 190655137 648636784 679960701 808380623 955929859 558956583 710043719 639300753 871459708 998261581 999364896 611316475 611318759 948292837 995226922 282757308 802291567 674763704 829842230 795881007 999487950 196848162 762530984 476272382 862803731 214885905 898891764 161782485 818900328 48394492 760050783 461929019 514700173 81055441 727221856 861437309 920257820 321081936 648912060 233684622 962789384 812155887 906871150 418935353 964671899 105709717 685177008 108173523 936135313 47640077 799928109 574506509 978023214 588363552 926258841 651023094 827081891 532243701 915844539 340372186 529399122 949166617 955728620 364831936 571502032 247453254 877133494 568021719 950920394 344993290 581174083 452678353 496690817 364749592 528183041 188134591 817241700 591114989 834805963 746128722 937881424 694350210 976589863 378406385 795254321 418944414 774037058 639450822 658471177 863001849 866829349 480938219 600162699 180387344 664678991 854180970 999239297 753905243 794742609 523356309 584378103 9847532 454633672 360174636 705401655 850090382 968012280 807448301 834302285 153088012 517882572 94589183 769050081 105323725 726467898 464304982 617249274 346398961 939462910 826466689 884133232 445410028 538943099 70675658 659195302 878045033 923950497 529659168 921355109 344369630 470915024 394571689 625659001 459099623 727857490 593715609 633261793 452753560 489945229 787619836 878105102 195239072 893800758 482264206 512333473 866033967 926609324 45567009 97850778 339383210 964123892 899894104 948616769 580301937 763443094 367298620 733406070 633075130 805948033 72436268 643349612 199307126 505619819 129674408 526909853 22423380 245758634 556046386 924353510 735462323 761041929 483774124 835850013 556822935 815386853 537500054 791734627 128955899 412830141 365344208 468956403 255808549 781877970 461397145 890219926 992395161 998507739 45617790 321176075 620750943 943668030 146782421 523720666 678150765 791791592 939385496 964713119 754093019 809081439 372602647 785147505 788102782 956956707 839876982 875404088 637289586 767001626 549775482 842444743 915751740 969799168 647124942 793799410 367837495 732216042 556032684 840852327 679960470 935863223 673735664 863678715 890183820 964085150 958238917 998108340 146229582 164241116 845572089 890799334 172757554 606940470 560070452 647725679 288391089 374993593 591243642 902754822 120598723 650872770 607902373 974976788 47134828 394874530 712292820 803621029 816380867 830172461 301090135 388672535 866364247 885792892 261059630 686811401 908849371 926064739 231936550 557258661 896894762 908100184 907443275 941589217 234674142 511278268 245381698 887562617 459880260 471289280 2379217 586636603 281254827 691103450 366817543 893732768 450793395 901046829 542960216 818963192 81090790 554222499 704619582 951736286 342787802 367289073 478779186 991525543 989561893 990591081 379950469 843382591 493740380 643435282 692159531 734049324 279253437 402974444 1746957 117390836 817367266 888347248 884135307 885022980 230319206 601392860 425364510 702584956 555464160 563853453 989994768 999815567 357253777 641212656 139293335 595020633 441772588 579547038 148676523 908036006 98511273 997376259 285303376 937159324 863537164 997188938 191146850 819561093 603636189 639464184 768264717 916527813 287311041 641951305 803537960 918701228 676817409 971856015 868058208 981742968 75580099 293276842 117185532 360686779 923637205 932614087 242066871 935987226 496324720 987998242 111880794 442940018 353967132 385772570 218357385 377350711 532677829 549377919 532828413 738882361 871027999 904604084 125788855 517849810 578917004 886749950 906063950 919590852 21180556 245488271 729477900 789127726 260535746 788606847 561303692 775867848 793109865 870802111 222168509 828509208 205512437 657319720 394008378 926223047 654086604 739334049 995822894 996668638 315747006 543743323 307593750 646858678 708115519 953665612 266089008 599528495 234567672 730685602 179099109 439970743 870334433 899438088 916143881 956559081 579520049 612757138 623695247 838381619 900304845 990205281 759914156 991958545 6264658 606459399 264738051 618334374 43825617 695720423 325522338 762423791 363466824 904405800 101823282 731189158 973527597 974280367 855263727 989222659 327166716 866389589 95827718 157446124 53809553 884483693 48819852 542058320 850346455 884843013 35714072 973335431 634156245 906914048 153354756 396445729 866585771 913963131 986563093 997258964 445484347 530740983 244317000 935077418 992742445 993622043 696086386 854528522 798891987 868798250 3950480 429960897 481654225 491794348 704051154 918788524 785766467 995602434 425820018 657843634 296364313 751896104 379089556 704780838 10577070 694854391 391113681 647255352 424859080 555727112 216978919 521220292 790522105 894410108 170896965 640527079 191252975 703082933 486586726 951794470 571540986 596810342 471729858 711123811 608190401 726533644 279881060 451063518 3450094 974804568 443525064 898705070 891450685 934587501 606464450 612874563 557928006 614699012 435469401 785262509 311244225 916475499 871085993 987152039 796371607 932024799 40101227 822328323 341729346 630150501 583351278 706104376 187242555 982678843 641727671 777774595 286337934 757693926 202872558 504016011 330074105 828518830 491121496 561852301 900529165 992353619 65423072 961832837 579379753 766907214 434345326 791454660 100642482 874469772 377225154 683732405 296070722 805968639 251337997 299908938 414489905 973956930 817584382 849217233 581242314 719690478 49273745 196505960 949885050 960892952 963874801 995002151 54460265 922635744 556667842 693401604 896085356 973173512 494500952 837149466 10515900 917434699 945753104 982497730 819295177 889414738 608755717 681763301 193857945 552873734 341486229 842737707 507770095 627726006 774041750 865328157 286341988 748782637 24418657 434936656 213038835 461443635 473314720 949630346 795801725 868904964 467212356 549442653 804772900 884661088 904293746 984058712 537810489 958639876 205998526 238706101 204918000 995774033 900125904 965906421 106200879 285518378 190014161 501286522 881816284 974100641 772650342 876730806 493960744 979263455 870237203 880577842 848636582 895926901 592758854 924822407 604484385 928467493 648490263 976091767 129126572 204398541 423977176 870616508 292248262 886973075 659582732 779552783 622722100 969952739 484619453 716602097 413747545 511478626 880030305 893137513 360323505 575116888 535394091 770307876 535318071 896785452 395188216 544317317 359158343 917542031 115152642 375313687 875292862 967371183 401646480 562450274 158214347 337691835 770800022 984276776 752687829 764597414 131954764 569633622 872450021 915560063 429210245 660477048 192623661 407904419 111678625 398306888 669287542 764970307 123507508 631260369 285095365 883313365 835864958 905472286 810395384 871085339 864354991 897055499 890789576 984309955 21018711 457320370 501636241 813492254 57067448 793847526 674308239 895716465 961241009 999188351 110411446 867816173 849656225 850046851 311250728 407117242 392738934 727943142 428846790 800129165 929510664 943765736 995874877 995981556 828857133 915935242 166542018 344657581 897118929 912433142 773642755 785985195 301741759 939506321 665216565 896604159 652349909 973002061 987907464 994614427 378414807 581177115 983366278 992940050 560379168 891243259 452370568 941998698 248267040 423658921 989312667 999023998 951397624 963043319 667828615 987787645 459728367 885166227 836905163 894673384 585440121 898933433 589572075 836375079 779399934 897875292 403167319 426998616 527859391 684850864 642959480 792074652 241143021 250601711 561580862 577719773 492305719 685563195 672605974 783094351 296655145 838383498 518848857 619653318 535748852 839776471 388372755 726782177 555328252 686133146 652267741 813855847 289039822 545303388 864990462 948496477 702624307 925690796 787777512 867776957 184348604 768303931 789067652 845635027 329453105 566993730 529805260 588697334 845638199 987761758 333905095 986636982 963455461 998415183 462673897 739800358 280969738 433795673 480416283 926416070 807311243 824489676 512573964 709239410 827514336 943306203 295812183 806077723 393908915 626157983 575053761 928822122 39801455 991069440 467936265 904447018 800587778 850818673 916495568 960067432 296399870 719742987 663988782 919461968 984968736 997166609 479945144 979950359 56323843 595286705 15635367 995886533 373913651 598141589 802182579 922792272 220346778 487782365 220238310 327905579 641305568 810326983 336848106 942854382 684825177 954812142 522317409 742817578 540021237 732775569 88962844 345921256 625025166 797299425 374575457 480502786 900552166 902203149 980592889 988819792 314849238 364553931 621709979 964521490 283259500 511308925 576803817 984938073 452228070 761528630 312585417 630481994 71430284 82983707 477128276 753150329 630205562 994432140 969934643 992189531 475009246 570691821 595868583 927085043 984081480 994731070 990921666 995184094 984305183 994102944 439995436 676897639 803440366 986391621 854249227 923529737 991679786 996113772 27015635 777712911 305178232 464256397 851573628 930402159 741151705 803199077 898846361 998262198 842214467 990899707 167635169 705665234 783214150 854905099 929483457 956664926 358077308 505890233 135632700 817998101 25447555 771052719 589262154 926430668 830629670 941801532 989261748 992881393 756264133 862075995 792578050 797929913 239018048 868212752 678637286 931755309 657734292 986207315 787120156 889640848 607038376 834039850 417300907 602727014 199414688 358330974 471087622 846387053 601629753 976391401 538551203 602530785 370993169 733752707 426189493 636552158 564662108 737052039 769595522 987867704 16754013 318194259 430822518 658941025 771766211 894295887 51663043 777649920 494296916 965697838 610841723 739643243 242815536 578929108 568595587 832417949 267334832 528206814 102560896 877820576 395158939 947781836 402732739 514367479 470247642 513893454 40919688 710834413 854808252 935127258 504977904 975644505 564599231 932141996 780538274 917013792 519412862 562743852 774865417 814784983 533575043 813077755 299414919 862916055 256541723 425850197 569738498 906905970 396580640 468325600 412246750 666321293 357622727 675770170 587239085 748611990 474210188 704737696 820762750 894062718 90931988 468759683 607611543 810502911 15751678 500807187 859677312 991794819 886811764 985676805 714860938 749221178 198310793 241523919 488056918 766324878 817605284 981738491 709166727 948938301 549355763 804811039 149823754 915783629 979367309 988131053 814942555 973598149 436391748 480015807 652472505 765904890 191064103 935026809 97258078 713868410 677420615 744408015 79221627 766945545 853203365 972003683 120006250 395336021 551821346 938961341 753038406 901456267 687227640 925485866 836627870 913459782 96426454 829113115 344677292 493197777 767846862 972986989 432680468 538353249 307973131 754163638 30591680 676169551 793138003 977822774 496176350 950373720 274668103 300526803 441713863 667743773 494667219 588592149 774440959 873165553 912813089 983694826 75384423 478867998 945849064 992230878 19703608 727969516 312876773 547851136 447835083 559845583 518231974 838542057 499701631 853744395 859415745 936714691 299024945 549932575 557142818 625728167 150552885 854931614 372751795 423297407 417338122 851700198 716544029 736231162 96501431 905459159 747394587 877942541 562592822 933760650 702866797 833627677 812927015 824408535 996072518 997439715 537331716 720828961 610851604 643741622 165591952 713054280 682641167 921239794 721218038 987293364 560390552 647668561 129761955 774313912 265647891 918940702 198404746 477594431 32194374 68370758 637691307 943098782 249243154 897467617 846589521 999103956 792284611 896183339 154425583 652405690 984647675 988694778 704141096 857700392 169276019 195729192 530671576 916230149 967806221 989462671 736234596 933583384 380119476 548040382 321477977 515501312 900784682 945061833 639544444 924718818 154956161 946760000 23659999 710847549 888957559 958272941 943575525 980180805 571559110 992892832 489443795 946604809 961402578 993277115 464257559 692960023 255617846 279450828 141750487 216877152 843399240 969718004 502879083 875484831 208370073 372690901 341608290 699158591 920288053 972828935 601553580 845901816 668779966 833173657 741284037 828832447 143139139 512640536 46432506 700449481 700882265 871780546 232030218 376112235 110550681 444967779 634023331 948119202 71380162 972339871 1509647 235985333 770287838 849204923 811996946 959929664 857427009 938752449 860897673 923157989 221172663 391521269 737194470 804054715 891551279 975375302 901306347 965361401 684377084 722308737 525794519 763263545 588790646 968391693 739207991 777838202 442933875 522310807 877882100 964548333 788027764 843805278 125255292 609214003 395073277 965179506 119806241 661678226 373005994 444973989 566438190 763146353 551219755 659636065 650483630 674414631 974985672 991293933 765726732 859187957 719558886 933377023 968919397 968924643 258132784 842202805 702462917 943244798 629753601 762265971 189174320 451490688 502551046 637239782 165425212 851195903 452445760 611699658 129415818 289175335 819106833 947991894 491446751 771704505 10136913 902345882 992648131 998855903 994631648 998162968 585006804 837489964 475779269 950903602 842575823 847589563 803889810 972413847 638506919 954623066 79523231 834765556 850494162 887544228 775547418 776655007 847521707 935398255 230512311 927836664 776686221 943144736 506654370 529887241 777571931 797020653 634971257 862973221 651831379 889307472 884561675 926075782 898540638 935556680 239030655 482980675 6043217 798406113 922098236 925089454 60471028 394736654 258853338 693072096 814823969 839636828 430158144 569278681 321183704 584405657 531562863 879238566 667826268 889709761 111132932 170996498 465340455 550535712 516297329 793429534 348576367 529311335 816074246 959526056 321995898 477987049 299404425 577963691 598544374 945829608 95950160 99246181 924703264 997700844 272307799 376088045 429836206 773299737 97760824 882160126 452777752 596968315 507651304 510515395 141217428 951792345 871580096 931836595 345515418 483709439 175331208 901433823 493291532 893751277 819869615 832395516 451817086 475043145 654048815 712350043 744679402 934902367 640236391 681259154 204785983 687853955 122039273 412978943 296014476 395059922 607694860 865721357 146181267 701649103 167902303 992320443 653625033 947057554 33230997 49533706 234077734 697683432 612610771 629539642 490619114 547175452 496271040 972783115 194511165 629159453 529891612 616765792 715850891 942912672 31269973 423222272 664912272 918067119 263218123 967244264 248140056 321615188 991090905 994884855 745649517 881163607 579244869 907047021 551957485 650645001 803014497 816538465 541573833 682359699 413626791 934274128 252092586 263725218 456821039 468223827 301192358 793943801 583023826 681111807 870148883 877034227 451306406 764771836 68588763 159940958 236268775 521125771 208161718 477954411 824610011 886712315 398642714 644076338 652833173 827442081 408732715 953419740 284402419 676384329 582330221 954632120 818301692 922991525 255054072 263786758 82804465 777027727 201499706 686400588 850127430 893209812 858436353 920127919 271685514 991512839 853866323 897132543 86058737 885260234 499378712 792642739 684684197 810270538 346940893 909454922 556186933 872554639 424267081 868497717 700993936 905652173 56576535 361070669 515561871 696331957 580597820 960291638 622536752 714145081 935968016 947781293 670919388 936659807 440147559 957678205 495022936 691001328 564091804 773898642 595241355 825666576 306738726 856685299 868910289 921510812 420429761 938585481 718388572 732848827 204485324 243564429 201522890 515047661 318765102 922892963 221205751 778010204 131800178 747104326 780039805 844732200 441661223 531223098 102991876 917353224 829284300 850709590 258680481 880175192 913635986 914303483 856030621 917288602 172343451 694090222 778162695 893197676 329414699 862660088 746176107 868585099 655678130 994466305 530657757 626185818 709509475 816820415 729987089 945657023 303277087 483372851 281277698 684974969 218838578 423736892 408202612 424733544 303070088 684206205 43666580 69285764 58951397 921119875 145459528 970657584 48530066 857499684 6773456 66623953 297383082 507958557 503130688 668075765 657204683 735141816 989577753 991371817 572389375 740173999 525386508 971085666 867738324 944194971 285085733 989219567 625501142 951285073 769529005 847163964 587064726 693979149 779296183 865144292 449111675 598487034 811332181 925512966 721749492 833857931 565757731 572182741 976696517 984110282 77136988 996004780 90765896 848448652 871679879 912229743 383435070 727319167 997687008 998789315 76614557 686585877 674068304 854531044 834617852 851470532 124313593 987176438 429048386 594806500 318586772 598559670 882243442 997945904 819798085 970714614 345266366 514428027 562258714 694839598 800671150 895509990 597869220 958989547 278119845 386002204 358176623 394381861 206948654 357729541 16995552 377412926 457733948 985183930 615846104 735485591 74142184 588574095 239727972 417979299 753908724 995240173 881699789 978618496 534790019 596897815 918830860 966519919 921189857 978730200 91842787 173412138 753782545 948909692 68054040 814097584 606522800 633699944 759527542 923461298 410297654 431067342 812146502 897925499 991149222 994723069 632930447 736375706 488450305 645031720 102714083 219582657 498353055 870831723 432572949 550303375 929708476 947028530 112002930 515669599 267507565 783425713 70092614 926801720 33423832 654219177 835630880 847134659 517624541 839151983 548845415 817304948 87966895 595823509 570473392 667429237 151591312 219453547 390442631 717306928 568079166 629095017 280616869 599242728 375460999 958790405 446901979 762406431 885440949 898692797 730100970 985999068 553557003 568019256 973688866 990268388 588640424 657291476 734958156 968792210 708183166 983442309 722989856 823050705 464177476 603978059 107322603 422120753 477996563 686667605 316952083 633333599 785504818 939655482 559345741 840049235 809463934 869734661 894149588 975215532 672957967 903394219 250137693 659946960 156438237 237760954 688740812 766945444 326893327 887500767 313867711 642883705 922275754 954728772 669095449 941966617 552189707 860334078 76029478 774367827 294958636 546894085 734642421 804345509 188406305 905607167 21693514 397433982 282776972 747517596 263914538 812730029 150506813 422259400 988025793 996181865 818282051 981695931 534950834 845250858 132069633 439461204 457663770 771282500 72159016 296982838 863313939 910897742 297552287 655844030 447015394 645187533 559534115 866275506 79708778 441081767 62397636 85528009 456289962 760959816 776335328 927231948 773135646 808675379 290571623 491631958 636106155 645142986 398703937 731432961 265976844 980112191 922407058 992450185 768060583 914085725 286604281 503634728 11315794 348921641 420904609 850413927 890549948 913822184 108908287 360014632 431142296 800249247 221288736 381584852 343101397 701299383 497561460 742448872 373002934 628945855 714693026 933364159 651517564 756160905 50551418 116092453 216563395 266864140 939129709 968055095 359746599 474615719 445511975 919592538 936209526 941348455 366592832 449586312 688262575 966917891 723532749 763280216 27387259 241061757 963204431 981319662 11825163 522322575 43198713 387530163 426420635 922747356 592254035 922821578 325047335 543362925 548688618 640026098 306973383 363673605 813817177 842740366 449156254 660681133 391197308 895679773 731990077 864624357 826865900 935865192 142730899 376197297 119405687 932154885 469461979 757579350 749178623 787225783 761644315 936582730 48156452 438183547 328720488 439166203 117641021 586038149 74334707 900793625 151442837 233671605 128701401 727912756 635037441 694245671 335433278 541358460 495875184 879686497 634688187 788212777 210034459 844268758 280487992 800783894 513493182 559245232 760367534 796112933 912296699 930574171 479137923 532733075 886294465 916470546 557288427 872009245 136260694 922740491 493539788 638503059 97292689 527854262 954863847 978467418 378820144 580112823 578527047 974855334 174189110 333978116 802103762 916314737 71512921 928422066 868594645 987271780 762597241 936436949 979631388 996107994 269694910 484575693 537138936 669579460 799249774 946937465 251750454 340465760 52153799 467247495 202795525 861807387 833368288 938741094 307255435 742743471 603484795 947067081 365769041 788709498 718057042 775427970 150077452 522763104 295607774 408963784 683190137 874942672 875357740 943439874 221448508 524039711 277985735 444880712 818192455 930901979 769956573 978967063 644698897 931096704 879607809 974358570 996729403 998498906 884096351 908540818 93645625 737461350 465555482 997498753 741670745 863642997 455001085 480936539 159240510 667933992 672627007 864270689 175702484 664436816 78480114 932791598 892392424 926388804 227524589 340635621 792636367 904111902 262081890 959590586 181099788 749601296 87724888 155937048 56885421 717455318 182562072 924856058 9220321 616115056 347287325 781778622 47792810 880071824 426838386 460030146 96858589 450682153 82399887 817814182 763954235 874787645 346547221 435982316 940635203 945511338 772371201 968708763 638219617 741364726 210482728 529112670 464635217 473968432 553401373 902165037 222467240 982004806 239307249 726342061 644613492 963279285 356798854 931053397 23452936 162550298 606317242 970347911 615970922 839704773 298212443 778480385 215645091 303286110 721485915 955907270 390941207 398208172 131385806 706987164 3223016 638498457 870625582 984053051 277582777 390935235 451377371 901418701 792594472 953939409 305675 911029467 236603262 961031277 987078312 988948015 965949464 987970531 706229279 812061208 843405406 872161526 412586125 738651251 489783280 648925768 978281028 982952601 624814806 752488095 830718648 852199255 702675318 777672902 862188993 887235593 832647015 958506681 717412796 870675213 823622521 950775831 831584065 842125752 761063102 874709757 752319803 848900926 887819264 903671915 719422439 883668357 904197314 957480063 142180044 805383851 394845908 462726759 518421775 895107128 980316581 999018139 364871027 673341893 454736765 602699573 744123139 915108121 108233265 549137709 486080975 518975786 783257822 943013686 830971671 967996532 765421811 819638895 333077889 538061528 541294921 728306108 31302231 41229389 55416834 928700135 21728630 672451349 655026333 744394919 931569911 970022944 421537231 924874893 787449677 806412668 162083931 851761375 283514242 393074515 910974818 912575867 935554293 991549261 46625752 717648328 338447118 771502042 363909733 854243126 94736264 244949568 924480088 994799422 839233015 889504624 95006301 434118670 708752525 889169146 631380115 758751972 715821627 937269844 194250086 294017615 310791191 399534149 721584709 948135032 531729364 581037948 614675127 656853819 142145037 443487295 926591071 966356283 698599213 866106475 835521110 979346115 829796907 931274448 280938689 618075030 63268107 848482049 360696665 840902362 271467837 535517758 583829415 698850754 802742343 909448121 945218872 992861505 573847179 591738259 939638479 982207341 392418021 878866904 133512362 332351094 542957744 651157750 177816817 659783240 925057869 934753078 264189563 840666533 258148654 554923163 447589962 694526899 908742881 999554067 623827617 696993043 988033191 991578334 931167846 939297015 893497389 936025772 507669527 942192684 141287750 367033877 220850612 753048213 327885583 559349161 795121209 896943952 722316858 804730795 681476703 902518456 587531116 938682396 569849368 815405075 228369282 783559851 196866582 564029705 320156119 414692052 746653363 904152980 210966539 655806034 633636534 936141676 952669145 992162732 214398402 793324378 993476503 997120933 380521113 785971820 867896140 925074180 59736653 571782867 374637961 741446032 782307513 883753336 386612277 747370605 625074405 632828864 964992057 967951598 461871579 641220463 950904437 999726955 389288844 885205482 284256793 745054417 311236407 745198629 57856282 609018752 147309870 394043805 265980230 444955320 428130259 866931313 297872465 584502476 921273905 996533047 111682080 333093551 612410147 967283694 325617915 503785984 734222391 946476409 355175442 811831697 711736418 716578670 89396604 592148837 763489293 777036912 222969619 887827450 601745296 659003342 667894027 943548947 410140317 895589743 630337614 886705967 248404955 489073042 245566189 520830054 717804310 973626913 42780406 342552066 374720912 936017525 862962237 912746827 472897539 614835289 898445940 950049164 408340226 814529856 711173997 804060180 443815048 617094312 826203063 835770365 369036799 440681737 670625705 748581788 796914890 995276099 123619212 784934533 474196377 869735919 615564670 761816906 177263486 496510260 203526798 629694838 133683074 390309605 980166662 983530332 304685313 667056765 730246481 938710400 46031922 597693380 148727529 974910410 121339095 855810816 814515431 985369129 622527097 894026342 929812638 975428089 625664818 882312499 779792927 983542954 707793098 911270514 871840007 942285826 986064972 997949972 896050464 917819068 488714242 925356121 453642147 919343034 195652250 911395603 741161844 782228395 684750777 823382208 909347562 924719685 962638601 991663884 450228754 746445714 961586964 980494800 665312359 754906649 244534974 933576463 83749516 301495411 376591473 398502358 248538295 866246684 693630533 970481726 251598839 404443146 896188038 911698121 936345798 986525162 496366859 589731077 119207563 402761647 690819091 752260008 988409035 997480323 36557602 154279676 971570004 974747308 594507301 665913294 726947793 835989990 386701933 674559609 504507332 771438777 528860889 970667472 378624452 421793613 284012869 985754258 739235749 770516769 91808094 706764048 520777208 607390999 19487335 395469044 752686535 767179230 790268663 876728111 939454808 981475535 590517917 650759436 467734453 936035101 880163145 970078662 949529661 997591457 41237478 173305268 468315302 492111179 587940392 891036684 514292884 946419958 66143826 826997194 494754084 931329348 215277961 371754840 616773532 634349365 284632183 353702295 61035259 881471237 135325073 542060761 16316532 276383602 996219078 997411335 522495342 820542041 37353841 190048860 441929771 902158636 653993983 814642443 256790113 871759630 296234127 439120430 548219530 970531520 23250196 153196211 787363522 998533832 924384466 982375975 977967251 978695258 815400828 947740999 987474811 991965906 808139521 808563294 512656282 581232885 893930337 914302581 424478794 781966154 32026545 55914015 397436003 739304592 897240371 985575901 708067788 818344321 621460551 780689634 194226988 485769207 662948046 824489272 290387483 661072606 216894822 350913443 496894742 842116875 802141840 802482717 313537984 761572440 649145307 972663982 859542702 948616425 295576354 502762104 152037083 398742758 584180183 822522506 470546206 712533885 792768102 974892896 59054674 116342581 98309085 874432685 986881936 991040323 348374539 993789663 398526757 585543694 806233380 976096361 327064947 384920014 802493306 940560176 873722320 892595343 677201150 749019154 997586483 997684385 222802173 259575948 610691552 946785571 878216585 967277210 335412307 429838521 533717276 978797749 577768496 715191194 135362863 162942403 148136903 814808455 309536022 480129702 370830084 554217830 400699355 897063603 431979415 696013923 669557796 895098460 182856750 760588628 917935618 940594877 582268871 598919638 727369531 749507228 269584502 949018755 838746534 882518609 664336007 909159779 656680911 982880453 946688476 966516252 901697255 978656859 845327071 909496093 66151364 425550396 951729630 998627943 905282756 944492688 724333148 736342087 780777513 830637652 75076934 124744258 311728478 893181772 516948758 904749825 592087674 744425870 761574624 919058409 58758300 260544746 301166145 785931454 362302337 488333030 732674984 865253260 143249879 893899813 359270731 593908157 658150028 952461830 618350390 710170747 866732174 878488757 360103398 936807443 136809917 171995449 25865849 923732377 175492405 571941006 923093567 973940341 745069317 989415611 532448600 586831113 383840521 807518464 727215909 846200990 670484681 971171884 786367813 844352084 792345510 972312188 674118063 761413027 78929174 211477958 693000478 912998017 96972068 101971711 719885037 855883929 830910090 877170535 607849878 924210091 89419343 783044036 515712154 877568888 239752653 249848004 234792586 817148016 234845362 865609070 862559161 915229114 640751460 706717525 209052933 933814154 843983266 853197578 748074201 800624801 91672347 195894328 354203281 378951037 310603815 644011195 59992374 107932880 101046035 541921304 594397384 731806300 418339883 791524347 566796567 567146104 185750175 672812696 904719831 973779708 86603127 636460695 692853284 981018171 426881770 876365036 127294017 140573957 807567578 820425172 707617314 898596027 363765042 981836579 272621367 420661493 797544345 835923701 30907075 513558428 578981812 647392492 910651853 916700852 888589898 939983923 704009248 987900971 71054032 335548631 772669042 828785099 693015875 947559776 980271787 994004398 792380560 844400784 207683030 451428715 878549881 967664097 584797252 807137671 753136590 829121386 995239486 999637519 15244910 257030605 699143117 771144753 477728744 896769503 48514551 736707289 362437947 950726277 461151079 551368695 500836961 789028490 126856172 998533971 903826111 958323229 610797181 785378513 406520750 878393414 550484300 613073690 628382760 923087263 788619773 960741137 874488780 969783467 437659102 988629383 558625871 912998485 270831596 526105445 806578812 890946806 517680542 566012647 372908719 985482435 251354779 469358914 282915770 441502026 871695060 984594425 865557530 980214686 237934146 776412892 371775068 982911011 336004054 960244222 74116140 938657104 845781506 974439697 727464314 832410783 39350420 664492412 519299877 689246501 280259198 510885746 236675341 270378019 258458094 694239216 867036778 935549436 990993478 991834096 271739740 905640906 914179860 924469781 490049394 648326186 938852025 976568987 80079704 739850706 431151309 888142409 468130078 870487528 518559357 643751132 119240137 814755680 912242341 932950697 945922937 970358319 213206181 598774562 282695436 765474790 47540709 88474300 245077266 843601003 175105825 860396679 568367184 671041081 213263632 323804026 901304702 940479139 638260350 906807396 270870259 559377523 66681648 933306383 196644802 761969007 925241989 989842827 803453738 858536013 209608952 563014201 204850592 690825542 509760913 655788399 61759035 864334886 21958725 858798787 318455095 674406548 603526391 675888972 213833189 295588876 304500452 974140729 813097645 938743797 144062905 220450451 733024787 953233709 461065116 567881535 945944062 981939352 894710851 994502621 118143241 263832343 54215731 170507800 976531513 983972451 811743036 952112007 149704522 316290255 194350001 867251768 149161744 327285049 75444333 963021973 127324299 852027331 806928393 809749311 742911882 745043509 212241575 596274586 366744156 731155204 722729414 939543864 959390084 977831992 704888627 842024227 282042879 656076625 711699851 863873177 503570187 994523476 666865737 822315392 610852513 713721365 250614794 409937191 862179923 990268298 956605115 988287789 373078065 838957295 611979361 940874471 641530045 879402732 761898454 912341262 798935379 910003373 445485651 653626570 438310528 593457322 252049878 942217957 307143181 426221867 231300028 888373142 948104183 952988539 650100634 869911276 415121046 509960431 490317194 572946414 495017767 786786395 255844056 599535213 913200414 915966427 267961928 507768480 24016770 960934746 665547263 815901722 400688129 529880206 87354190 503786833 714312935 736346401 62728201 238923919 119493943 811265855 574436688 607633885 690179086 871700519 484640619 905882252 100627159 489865501 438977919 919312145 796994673 808996489 553527913 625505763 152687010 606069604 81423576 870817489 972911252 984689304 61750602 305955858 83362822 261990628 825506816 900624184 742992689 926160795 178056798 748078824 622089137 969695085 875931723 991456568 672710276 714112680 748210554 994602699 54199229 657569392 175574599 315113145 899524328 978621449 385640414 899789757 396533915 563136368 798881396 983472132 897404244 969024631 319314962 590087472 634862097 716775829 355390753 465504657 13927211 158852170 120931140 273539895 396310165 679718840 672596084 781189968 155863612 368906052 405076182 726401055 506556284 823676945 906316949 949777629 244524261 277718483 70058333 354440467 228055426 730452187 817659352 999571670 217269312 710029456 655759877 803867556 185643865 787816811 243004407 581367635 834356452 998517691 303884488 918787466 22928370 174391148 254666978 273402646 649092151 927690320 205924706 890608825 696477225 847516429 319013975 432458152 989163425 997690847 835559974 894588098 325249752 358424231 663286813 903900496 973181778 985012665 198845800 359588050 534081540 592368683 792448962 846204391 636910942 869576132 277327213 908427466 426846723 911828775 575853180 840911022 112151885 318668027 287152133 949590651 417254626 970500738 472541480 836229783 681352917 965077169 871760494 920161334 22038238 979186088 90217450 207462162 40625857 857077560 417868436 688378839 371085305 690876776 846943236 994414522 206521722 524110937 123291967 730325969 587279842 776803642 230803787 522751428 373666389 866262819 164824786 799400033 980250799 980639095 203595232 924172613 711782673 762423915 702400786 872367762 975707629 991597564 504157972 975611238 162686605 837712266 444547370 912617931 865647699 977783072 629696118 836653294 927390200 986369021 258560036 746481037 61780121 635568374 833829131 963241864 153044654 908159486 451972643 921001773 178758673 697777375 582633455 897872177 807737521 851757727 352134166 854669904 574015470 957830560 802073228 979358632 502756883 797754710 614213857 712253446 684915606 737413286 586989264 785396018 871915711 981714072 372988725 842182032 748841006 768763442 421046722 654148188 811183787 818538045 131147398 345685332 239837150 680743832 794864445 814019271 311345983 986850124 21565121 83339450 363388230 529964481 573211925 757170013 525521218 817107976 490345843 853249521 71091916 472536459 161241557 336594670 121129422 478787951 253894028 574858134 69175189 668337104 859077532 890019039 512203631 696230915 556989924 914947507 711096542 956400567 1193608 538094783 310951964 429259552 1303325 587837581 441229592 982633330 132757978 156129687 744457123 927911527 299250214 537962559 496730619 889841902 678393847 860436256 947276424 961906630 52129061 388505262 922049595 966763830 840170441 870349209 164380413 227903960 790681284 857360997 713728950 994311978 187743299 259125777 527188143 746564217 815554910 947954912 539082865 900254495 343723148 865578360 880729082 939232632 682753771 964926999 159204814 801516088 542933921 654327620 330739832 712892986 455225268 486342530 762912964 783753855 862479769 928046287 933580193 967556059 414193345 881358690 715056516 756558491 575322181 637067142 750368141 914030717 400182807 748549062 96040809 668306239 683257245 880617376 654986484 957072039 434078609 646415419 694075590 797454896 433234336 963961541 378574857 969646556 593820053 875648371 434173390 762313364 441716113 576815139 610032030 996296466 671201900 932311830 271971408 891117900 223904587 472863208 990946439 992627046 613029496 779469244 410633779 462876485 368153202 916404529 366251544 922788204 459185806 633124872 113680136 386855944 288400936 853663218 129482355 322616771 150490872 916265388 582969416 879706349 305028161 967452321 204659834 679898461 669405950 786306601 146843318 871626688 419552621 979373555 902773172 920414305 53774062 903230608 742874431 832385873 1280393 937228898 223177279 589460040 381131981 838694402 426159459 950607009 635816533 704345028 57094264 962912633 212333358 943392134 295603066 789722653 79252299 998137253 603971979 892970740 390132733 474795062 598182287 691978303 728797458 833742993 720964743 979680545 761403948 998964446 516687854 754669709 383243479 529570953 118530479 432448294 849875095 913258046 662421669 752233910 552298299 941247223 572648539 894005218 555771848 759717566 867281036 891358231 509090052 810607247 772281777 997242324 711183543 983341001 952081712 981332854 270297466 509362314 920061460 973488071 429632583 615892150 197271730 220486160 210847417 445090712 147541968 881018380 859819013 994881592 371763993 390758612 609423858 895926939 742423907 926633938 542789724 950998577 204430623 409763160 602012115 704231230 548761765 921868646 511238593 654331727 614870064 675879515 403192556 957333308 641027277 702804556 151714308 171122716 686575968 745844141 544795734 986179384 227795743 619097340 244334759 505023718 13687628 942046846 999858548 999998222 870983312 873802775 791038465 988803319 160007620 215050055 528243590 640785492 95188526 433557936 285528803 413001839 6016750 573872051 105574196 867059276 226980706 334801428 623645940 887366718 47992930 645022019 129905428 395771920 732488709 806683201 427427988 821634902 842728251 928434128 828721438 833588619 554440521 906651603 996058190 998067805 67238839 471097147 94094154 847486310 288969722 727168401 626390065 957580490 587000036 725424414 745850390 788125813 268725469 581937867 176600517 825544024 261740582 575234349 817595782 922653560 283723705 398986954 761977920 771325064 835263328 925049957 209540673 437184144 416270299 477571152 728555481 789224451 603660563 635200960 315302182 937696156 791449111 872261105 43213973 989884158 114828620 258939062 335790361 413202876 11868420 806415724 125325947 418826609 641406712 697140250 186851194 683898079 459566618 794997804 969798776 986560711 554796982 835707661 198367089 880163718 443686670 970336441 6181421 889273573 845202403 974214727 658993333 782691852 804915023 998813280 229876510 380591527 562583820 761050617 801658683 858920355 438929179 818896652 412526607 964721642 7072273 895442569 363473936 527264757 676067017 844224591 847983604 931464187 995258081 995848320 217232691 322751721 93567871 965310435 561921750 916411082 715574646 853713427 891071739 895864709 921596222 969999494 57952885 862743294 476183146 816329837 127088651 141217486 321486380 391784279 895359329 937866468 573114404 909651853 699713248 915809927 720692112 941336261 795585979 851538089 872220136 996181857 309132252 734877830 651501872 689518226 901939434 908146494 903132116 915242378 776782304 944279594 883021651 928515228 934038548 991866078 256636237 941620284 77687701 186751492 545429838 744196246 117521966 428285990 701706933 972325270 111762497 478328286 349804629 739960266 220478280 344766374 318689444 808179650 842442886 902648670 510096685 539397410 579532293 911891014 940687397 963090871 334524969 582490084 691537110 736513877 279203646 721403228 261941731 566802966 844460816 969805351 187607686 194341177 989448041 990448409 101723168 438594904 215052069 582619588 396043509 474732641 512300613 576089824 394222545 859746728 173768930 833926721 98340578 802753295 951344180 957674571 619240281 980741503 294551079 975819637 886172985 970449383 105114449 323370370 689382278 905873150 127701890 742333512 508549239 904532894 930787289 979169875 606978240 645362101 318684202 511234873 235994936 386986351 173069535 378735942 88134970 425594054 930311278 998804022 11838850 729474900 951518989 981742613 18034040 509959300 605232490 676003295 479790164 768822045 969662304 993607091 990937129 996066030 26234218 989319478 20655424 170109763 117838001 700162735 519654801 760978605 386300977 732774930 396463101 748248042 367432612 859530875 376845974 618625839 68798650 919513577 472755690 812400942 577820504 737505338 119862915 456988915 950624248 990826096 772479587 852177673 439464522 846962177 230852785 865148111 336056553 366739855 129065065 810864764 185810998 294373151 251085600 280924273 74052031 131075616 70534123 378534556 677484239 822551239 776770935 874628842 833152064 893577745 527511741 903257582 478399056 861936071 509546274 744960575 269450737 407930118 51333592 306196914 385249485 593249561 159530636 208753325 143578136 941036539 446467448 631572888 37148901 635614751 458978766 892338595 24176145 142874551 603757081 835188916 407460679 769816918 424247903 941926969 823261412 920521343 911785698 940537356 793202473 802576823 620535924 717041693 263885143 495857718 157288283 648400892 184007273 718144614 812354963 859800073 994647291 995462485 388190508 922335409 609770522 690024601 688696791 741667370 264431056 787615993 865887941 935451412 233431687 658170340 492860389 761358425 179561913 602466712 168007326 570559648 725364247 989982618 555462410 967430915 185113805 883699167 123812440 941098720 880718244 983898612 654252636 945482085 967629587 982005071 341597261 926756214 32063613 240325911 62701033 805065230 363599832 887579120 666357428 666897726 524174868 987742602 892582640 920727466 470054800 992023933 754383412 982295948 251304659 786075789 486950901 830232632 615237589 745298068 172813655 262608248 213780103 282187845 758421451 826039121 550959974 650523988 777926776 881502961 800634370 991119332 629015098 982742788 673862780 947894685 229857736 365981368 743430470 854511850 985511717 985519836 880115415 956620138 329698417 927603156 620053649 691671704 479955062 957785263 994096504 996632406 55719021 173989325 14183796 140088632 235277268 581888218 645802721 923288444 825605153 848440688 759888909 995505232 38717180 995969333 485851266 753884101 371833481 390472662 606158595 731597355 93980706 754369748 247828654 266497422 512630752 610996785 177960317 481480050 727178878 860833846 298343035 434268503 939868024 974010543 33574691 864926303 19563299 461733136 2511681 686195481 86956322 931425036 774612819 910602280 233940976 637144955 550412683 995465929 629417750 824535321 851625064 982118871 418403223 591328078 705652611 722272356 969291384 982188201 601644776 983223947 951988165 973789761 271629102 817195786 873694 182653351 815824943 913994641 623160015 754666980 647530981 758441942 984287845 998542093 651131356 882723557 231655822 780124164 687693582 806384336 202660588 628990339 53765444 598943777 263343187 818974122 337412507 529846283 966075343 982947472 429981939 714234204 220577677 481128071 68825265 573715436 877734023 913216875 19927803 414701295 330179364 801603230 488811962 941167738 751928183 787500394 655851150 849049352 251461305 421144302 520216851 525251789 411856345 807813664 68460730 838345424 24068660 191824251 603672119 983985517 83062212 587445595 158928293 518629066 135761149 170936038 861653765 931450928 58191419 368207407 115137156 310565488 671991137 727316651 880024482 909692346 772774321 816062858 756593999 956167482 265571255 696488075 926489628 953688780 155425673 320400394 79062018 808159849 631026292 767627789 376449073 801224663 857873986 942697717 411822240 938594621 846665300 896311527 11661100 368928543 383460859 873694032 682684894 984826262 535665759 951224905 391648841 804140468 403550890 884974568 842420156 884036193 457255746 869618828 7724722 661059168 772792347 919443775 468742771 734993003 610031010 702571296 124967463 844716794 933322323 961521959 775279245 961363297 853851963 884160305 161408011 488833512 123263139 430415887 901049107 904097560 195301465 394628227 422858028 458011185 785835698 953236664 289602270 945510304 477127504 542052060 666677013 955632152 75788891 557781386 192702762 641102573 330967552 507797841 326981338 776448622 327959369 458300099 238260444 723565561 181832157 420392919 575153109 868992896 202476466 659475402 51464769 642344994 915752893 925411555 429924115 728138982 538531036 627363471 339729501 729822032 102640261 841041989 547318087 930559963 516001241 608418301 644361777 808913747 504080443 772924336 836468712 964412329 922525272 982829001 537766728 584986334 272598768 318549868 174480315 855121516 560489589 815999861 249304283 697851124 957451354 973114021 26263146 672298917 494527956 588257807 867507225 962118202 208920554 949779165 643220502 749107915 450876955 469749879 773240980 989755021 57549916 874406870 509969525 937187735 256837768 974178589 259634494 920791185 312183831 799304500 245027542 932417265 475165730 885453010 725216004 960977286 531632102 870199235 266841723 577603298 322964681 709368561 807830210 980760935 606204343 729224369 883562474 993141803 499876282 619961982 541885585 762308161 487389752 817099498 633129678 891516442 684991729 704571011 347222717 516561146 321564820 518747653 483956378 869026571 606997537 716753269 271767217 962075742 699871279 943020443 605918893 962165452 88477770 994810297 284710973 594452690 806041539 961689039 599769981 897758969 138655105 623473031 489123514 507989755 595445591 910794414 216129753 836252525 101242849 683752743 260199260 650578093 737041624 996954055 232682985 550413683 839889532 846756776 236766240 584863745 895859683 992027942 610243423 903825107 395626403 761266382 447025659 471588151 828012245 921698930 969239704 993613613 585785761 639771305 596309214 728466249 723602509 773401171 961701419 995398712 794963708 992749588 6758260 173107297 962603960 977932728 114684738 226404138 421084335 651025121 335875499 933740091 357505789 599381582 755766190 771854405 730095752 748588150 195777680 840096347 599052125 909630258 298162461 538607368 703587753 998629640 396112138 433135926 699236947 748670311 405135100 740591431 761542353 995729085 476783525 615183216 519278128 833244501 947671787 968951610 121337803 754102657 802023529 966107407 746911531 883860536 145405728 455704257 592075621 859537662 666417785 940213547 733003928 909377836 318527374 955277802 739340060 975903992 635328191 643669839 939870045 971621688 295898383 311361214 890196014 917333556 204517235 729798205 824476624 840249922 481369285 563236324 95906603 648438435 694310215 741356448 821556725 831962214 495518855 911130565 937804816 991559244 587830733 666303036 627389724 813257741 864689349 977291971 35753129 875550743 861063764 966544872 335199164 530322154 889637783 890373423 531740219 759114387 738289926 756447828 824393391 999157783 62371563 275805571 928694388 992473799 317886388 624324383 995316139 995522005 802388085 990683887 122936581 430788081 14320150 560477464 437995373 893662598 984786444 995892689 435039009 832130327 766143420 869535209 88254596 554475608 259003427 987695906 714651731 996378572 961330631 987737078 844474726 881609672 272720361 856666576 922615674 939802290 168729067 701114034 323389404 977752721 863310340 969490789 846433206 894827169 458454577 511321334 697804209 939858441 786013737 799206957 250602270 600299312 768331840 819445506 788778994 888348229 564104538 749450574 628268687 801852169 214899698 330750670 317981739 523184371 242298332 554680878 249388933 481164932 342262992 968380579 781305487 814053565 560161566 626604406 62857409 206850381 526828979 595179789 632955183 736655247 453699891 518175822 707546118 884983961 608319808 625780856 922006374 962008791 241489577 910868129 595482078 975110927 333428731 976431561 718773532 781536612 525334314 844922930 736529036 856978256 14058572 638517149 730480202 972644867 661360183 855971044 194517654 616705589 880339874 890621612 987286191 994129878 515295457 831171868 692597144 819637966 65475464 370127585 69247556 142868292 273502148 407184806 242978447 309440516 332733670 660636103 268547899 407583311 202973057 620080477 213897914 639549513 731576538 887376079 35658418 215964478 508848895 829540776 383381824 402378713 915747261 931998287 375459789 811007558 656827140 892171708 244265261 476725358 263596796 813947259 286464114 613389895 881428883 921217615 105124356 771934659 775967493 979615621 346822487 347589713 405652926 655776005 388296241 973967820 846144108 944684571 24347312 482717887 467812848 783283655 212573534 516216884 695811140 889489943 483439504 774121326 409244469 877199186 267596931 827718594 838267104 890053514 201927809 975864968 277660225 414015883 96932291 486905631 38177402 606438332 663229059 923658044 642579838 871638039 299976138 884794163 679180399 781617525 119949581 326306246 273533904 720737067 503759752 788162051 288359620 748885734 495356075 568221285 876883321 931034407 434980118 776525482 474587764 487140583 826659350 925769805 286764635 899068585 710623792 829452626 900428550 951678435 13879082 435969962 65828578 442860559 567443378 712593086 428222146 837749297 752547203 903697847 30120794 76920549 689625393 995322483 768014654 995023872 7429310 649570501 403437772 893754572 133335991 914476334 130437427 888589321 605951134 741078797 122931504 605723760 755288802 794499415 792830492 918966543 799118924 956028784 487100509 544086693 441568454 633988444 410509268 643793259 95033730 424084119 356767907 780101443 685384213 981842348 204847653 554500498 285874343 503578326 25155275 812173086 992265790 999960791 566133024 800603783 469948129 965608308 960767209 978178199 51237314 484989721 290357889 459662198 40762735 858015901 438478550 599992749 902180179 985038981 498070479 735509430 488688775 543557035 271225298 716630003 332190634 661711698 302301410 468153562 788394332 933155136 625971204 901064711 279912919 366621371 195814224 884526303 84122789 939786042 950045437 980301025 863038961 909551888 587953371 913033891 542161514 915825017 463200476 666353136 545979620 740762545 718598095 867917947 119875094 781063992 728718264 982951971 817444101 924404777 754658110 893912413 578921303 708491039 438461967 456354793 325823439 656131502 440193206 849039310 765567022 848198470 990901039 995895494 594987415 671589328 271701924 812052380 341747682 707927842 142907308 187300294 565021194 742084936 775996001 847268567 946578467 987676237 588817526 804168752 534506126 921269084 298542882 360643014 913578195 940309253 73175672 770437349 255663486 747384336 867933387 937594555 514584870 721334207 56523411 659188500 549865853 790319050 442453132 992022504 704519908 873531164 327942552 997285405 992238664 996718048 990205456 995034216 513048503 697821802 700004092 889846623 5168982 151384179 522757065 952333459 266652180 293129121 673627214 721200134 120731041 925830075 320137387 504544799 444295202 882921766 51251202 392259140 770751045 953506377 602245993 749822020 77719313 929446926 637431848 652583440 505902918 630488051 680321862 990076279 331752146 816678242 825828686 844457124 793324634 868509783 376280192 683161554 728965910 739129137 99076997 643279385 376802355 582486055 43846651 320183974 56671268 712538798 608011078 910718768 328015599 836908409 720282236 755560194 239699795 760221834 138716704 537317398 59268487 270822013 401143108 586982761 823029573 893526520 54633357 999255263 57855002 467314360 761717649 977284531 447492305 895687914 41233108 958987857 415401577 483788271 253593551 407400176 172259578 682005385 763178367 866818064 27779710 108715445 195995116 722743972 18602350 582351335 719086951 844367283 148595878 301185143 150742017 842161232 45914757 729314771 288855757 815631839 417743365 834463380 192774295 746073130 63472978 877847620 702938367 740067881 39979382 587943362 335637680 535735602 173310744 590411367 808038585 924873554 440705338 861049483 981239861 998486520 710092450 977611118 195464677 542403721 418316147 611245458 28948715 785893569 949699744 978423546 875866374 996932897 34952648 459806120 142547504 475589562 646719729 782750200 191969909 234535273 781853122 919687787 452925945 697647035 300299224 783845756 640334033 750231198 846200124 877816599 984424278 987861893 892712246 897921329 942626415 981162264 898818698 965256271 940144760 977880454 522949429 726625695 340214520 990924386 298276024 575644434 694098938 888140352 881242561 995925189 791550864 847202562 503920787 563717199 591912263 734280649 49464898 535921536 861609666 895307353 24850896 742533001 826956932 897275199 413528713 480539621 168012714 867892355 162725857 981785650 389374031 691988925 297887195 722228124 950694814 962975846 15505825 571354280 680836874 820459159 459837424 965664635 701523142 753806446 185711118 530760504 583620461 734477524 639074367 913384354 549098432 935332561 77893632 707557637 802505068 975467876 813283002 910659924 626377822 978214445 516440818 706960321 130612450 594837939 311097616 586379130 286643375 955205175 822134154 874816547 751304814 804716152 238045455 929536208 251984646 319397541 515965605 562904027 367734760 957208226 510589088 747685365 100429195 454110993 926714424 946575184 31142568 637857999 536366695 564792016 1137878 443409054 496918460 696809731 130101174 767296873 619305933 947109833 901880826 944525250 839056728 933585366 359507813 372226393 433552602 688094819 49430547 779978488 396710 16586366 433514622 461644862 237310134 690618840 927388662 945801830 152069755 662572309 800843892 895079604 492199230 645259555 974267690 976608870 195119847 955393103 622321977 831010751 250986374 818734897 159718589 590284671 18154761 507149587 909853019 961481159 494182409 633710538 894053022 947282262 73314990 170320946 688407583 698180841 241773230 287257923 874522590 949791800 269793392 479839932 616093629 987243270 292133363 593670485 762610478 981629584 461278984 833095945 615326298 764587433 600709506 939237013 670245059 858146845 130502687 412825997 287471548 930474554 146600398 680944907 645932239 838370307 387579937 402887111 786451507 812234003 275146281 417934838 426446007 480157176 335691072 513766877 159944570 230662279 608909109 710487584 993372235 998382783 513631428 901825983 339725904 597673319 252574929 945212814 557747039 844856235 181366550 251611259 143011926 923178489 492698698 836988751 118702691 868893401 817421008 880814442 145811444 541477296 440452533 542580916 627036741 813991269 104394203 761860025 450504931 539487006 563230735 684222096 90362266 101994791 321402417 793415324 575729651 747989716 706759782 838225411 654733910 672478541 582839821 995311351 574402975 930201494 29523683 125276617 709004218 986747046 734439375 878997264 794507790 801991256 244012882 673911663 359162615 418768914 974045897 984966651 185962700 238691945 145283505 642533808 539211126 868404217 939036483 972169574 22717852 319041257 795612197 908842631 288055605 322891197 787512033 803590460 170789382 810329105 728639558 822039753 403632289 893397242 600161054 612053097 400618842 867628244 960676515 990736449 446964692 938641849 734354921 784618291 425285942 686573136 666936637 968707107 63463794 420205551 846522054 941970512 168136595 265936096 182890153 348631615 639654325 693064921 524811317 914312512 720604795 763571433 73954263 353086503 771152891 899898814 291251566 318782852 486108008 610743861 260976599 514871728 901948936 950186629 13862668 297754240 600464551 979135884 772632614 943448675 372142846 481239826 74639796 156825471 551043101 738435351 31467690 170479907 608301386 854425560 43397491 742290295 846169983 866696234 196323659 845136536 497142452 825215429 819212633 895119048 911999876 975863218 600839878 920792257 809274221 810352595 728687467 841086455 62496886 833626453 374622250 473697972 717172043 836831050 681304961 848740910 327970012 639772917 120695411 153302053 546934297 865013353 401654909 473108164 619644180 683562333 178359455 782563361 442498950 968474002 859025774 905487980 360024261 908801516 557457339 884416462 391237858 770801145 469734603 852514639 532616533 597390356 264004684 560924681 97442341 904035742 227098617 676274319 848082204 879876689 484118716 844297257 879718675 928165521 902130829 948278588 794731620 904492171 490569372 934551574 592962343 888818402 748305181 894680620 336849362 566533400 881781520 894353138 136536839 970175726 724453094 923711984 591383101 672747197 27241509 679749641 240348703 834089424 781742510 825458901 49893717 914368201 879711313 906167890 412936515 685310503 820499379 857278678 33644725 674112368 206675670 882009497 52536617 328009422 337621388 739219208 828642097 891770961 382468179 969749069 398749313 589206611 145707147 263609970 833646600 909375988 876546680 904338619 78290871 698863991 17917938 893882011 761972236 942233156 943048321 963450376 473330221 985667501 241639734 952544807 861699587 929709569 262680019 567167936 171686991 640223256 508457028 859300569 245785749 893956104 808191104 973541319 20884730 185125686 32680275 792209788 840114447 967015747 248145010 588606845 775844682 830942378 70366593 324420460 725647995 888567658 951649127 957634997 725540367 739873359 767604681 990570563 839397517 963737341 424449141 637836826 480279542 567492446 46893336 874880414 156259224 725438186 884075261 940722088 503237635 710216823 80568042 777067302 106682133 421879926 752742254 859912582 127099513 217155589 103596452 161295847 8604782 958321595 111336359 758110122 367396046 565659514 172285804 257291497 890509467 943735057 342294774 414549471 141355764 551860273 520405593 898529449 303823702 678241066 749081179 959583090 407627011 737602703 163804674 426158774 565831853 590437800 594389900 791316881 327210765 705297926 872175230 964883733 501971522 543848145 303038111 477657685 419792991 943129594 172152254 347700169 330464919 847314258 435946439 497357168 912693875 971105539 420179632 549095508 629485389 931106513 51580845 619823892 391519830 817785234 267688648 981312729 936515786 997838907 47151388 377222816 217443286 278817910 368068031 675581305 369977532 875629689 291514380 798662312 641840220 907139473 458338600 901698355 328628942 771172450 23048932 123201963 263238131 407089680 892026000 968623694 420765390 486646940 287742740 536238837 770569597 888238602 876775213 888607658 675256639 727742230 60124447 403599504 50109796 622880398 931985833 983768854 967094208 976189428 884701137 954653404 649465663 958457106 451296213 521413298 486334631 565811947 839426387 859642619 764130946 767382086 678813291 840662096 460400055 850995282 125126721 664428005 84383128 267025461 410673902 462042015 121385713 645776378 795371500 990314829 719162237 765491301 64552162 360134833 553021438 830873476 323360576 676920217 612897143 675357698 582141379 850050879 835848345 933309816 830967779 987265221 235679731 728420796 220684023 832280769 788972877 795653007 866818853 947201091 626879831 818629319 284082426 759068323 95968429 268578026 461757339 979518035 228513331 364149795 198246603 423603050 784939811 871827214 278304544 615679938 378694943 863129006 757848014 959351363 268378025 662410837 49820659 877238376 300828807 519688234 646486697 886216785 904469064 908948072 240909034 617594953 798431858 893515159 353900281 546817117 801074562 910426974 945450078 960143355 725631058 808164849 92525937 350285635 580775626 892085731 955905632 960109754 151870080 588323138 98351324 954780234 449774548 848401360 617841876 636499284 805751843 915819406 63595438 557980012 438235539 792724551 989468579 990059152 357670195 539549559 890135262 994906432 868984576 969174330 816592252 966836623 571259546 648201205 729018670 811996325 223505314 532665367 243885550 465322785 583096936 665178288 354913269 407228955 112814081 114711191 387828595 496757382 781144477 989743251 671226314 866522128 43368476 119642745 801693738 993937474 935504414 945157141 451034223 914223446 273483692 723330009 83379519 343602383 423559905 546291261 54451030 680624712 109130853 416606862 345914868 403362879 747218451 850031788 195806114 548635968 725085277 973398743 612908234 681548131 109454252 504224090 537937909 700815907 379664461 993117392 905456970 960837107 46900468 163718593 581644474 776797230 837776390 918018569 578029112 725876977 857814230 984337597 302231170 544395093 159090285 617249833 766332665 815569023 722155604 888666785 443950085 916300543 255070032 288362296 963205672 965179712 251553179 807490129 189905061 590293558 247191262 772097704 254060883 739070436 967803463 975322034 280145271 542336295 778894590 981199860 438947821 961891335 281651812 674199697 705843209 778425983 254690585 968913121 289543970 594496500 79775819 142337587 234928941 781463975 5465137 931964418 148029815 228161464 13258593 455101486 320833096 580182809 426148489 593842594 160775204 735163866 23484068 943158013 454862286 538196069 591231413 771749117 844227670 934778774 619736467 764666900 385257397 858431942 657334166 681525314 991615705 999692914 848042777 991283400 269102108 962538986 303493320 507559364 86871295 829755804 805621928 965127912 641176520 919698159 981513106 985933402 246939063 865830774 684861257 738630530 452222565 982340590 892521556 951477309 187617369 961606149 12818409 283585234 256774328 596886391 220017006 863067284 84709998 142544465 383652838 908211518 52978199 306429824 903182491 916936419 220174955 359147943 373179423 513332874 164186857 175845694 357656468 839049722 907008630 915200809 834431495 991949626 174742541 708486691 210383309 267539041 309210616 916986748 280328057 362589658 131493720 230362997 785872023 970168682 176998965 223361814 432335803 889555004 283402496 534533287 665666461 759196524 805284924 858940600 395399050 659614545 303274855 617252928 782377094 800192143 820951531 918248118 12139362 677097791 674869996 995188010 831528590 878836440 92028269 758468806 363292110 811742621 200700310 443190293 516051847 883606205 438220849 898521542 61997612 743749796 345676334 755042160 133548990 475916084 770304496 878115538 344739713 397228861 177273062 672516726 15039014 908334057 230019392 323223510 271306376 780017027 537183982 857691831 391933078 425376823 974356110 984063283 825366064 840690834 306117304 465903026 196310088 924126203 714891247 881409376 475670302 993540362 972592527 984739189 582523360 974444903 648215899 716392148 138213897 154253061 904441494 936075111 627015078 698517392 630551849 890617262 233182815 250704696 95174084 740821140 706104806 823761201 833642049 899696232 950216609 994595906 987805279 998192334 888864090 945551397 497654018 857347951 481218354 567236869 757563940 924112192 861477283 984458733 632234596 748368205 239428341 465596260 659774722 950336061 111684434 827691713 836690214 994538624 491358436 594692915 907679272 925800660 674054563 822432375 1717988 616832264 996263421 997912217 688203096 857812651 539801340 864226330 585467207 948168367 4475423 871095775 645920894 994939081 415403223 606718351 494497159 886777145 92455412 994505156 721812208 940019308 451727936 567678493 283441621 777418637 99293969 470429183 261392485 887363823 623263311 895155539 105062689 153533799 963452278 998106679 771446013 918543272 96072459 191116881 508740011 705842867 772532230 849018317 970032290 983436236 897059115 904906354 182594422 930046928 73772896 996904853 946061232 995316450 223578528 343162648 464030079 958595274 113149803 705698836 455084293 931265206 373566330 416499688 897518506 974213231 537492460 605754587 586351579 790800268 62225991 443025902 987152739 998088473 589881334 612604087 80528583 458622934 561999431 709142492 638954839 785057828 739418466 976585337 548963596 609889227 308648622 417889270 741834713 847322986 837447767 961606123 825145490 997261297 356854388 452049195 559335866 617931865 824786655 929433893 459757527 770895871 222025612 702379933 420062881 485348732 837501917 906324462 899994346 918229805 502616350 615904842 788953177 815888701 133365171 651725362 383458025 947951236 850844502 916567874 638948282 732031687 661030611 706459472 53055810 548241807 534202247 642655724 778731357 978368123 993601474 998576672 88789615 667350474 98012531 971028468 961220529 979839850 653000733 666141897 78915241 749199346 874046951 900275865 468186858 996561645 612596385 916382175 150301933 834281911 558176112 870976830 213848382 562413789 807259015 916254243 942266443 964777204 453399557 682123570 82367696 592941022 514697153 869471243 635390485 720849741 499434457 522227613 715995204 844098321 534568934 833468596 367742370 756817338 89011553 510002524 181898304 943141447 174704580 310755584 857491409 925807389 889103110 939200111 679617540 716919071 273990993 576051035 40808751 455283004 557665486 881486176 151488611 921507710 665098640 707429071 728024425 746104735 27611819 102401708 916911944 993309087 720081179 986408285 796543288 835652819 236881430 338341065 647668605 729958915 739665469 996258145 667739742 742616227 611354774 835555860 881521514 894473783 23903347 782356774 721352563 949665120 79943991 613894218 30037973 547435879 932036270 993153052 311226889 719424206 706974159 835163974 955959234 988591857 306217421 532684579 541492519 625188851 56185893 188549910 837383226 975315085 37376069 285912333 907089662 925983736 423480942 961131528 366459892 689530377 744971381 759429308 492920729 936595633 486420460 809259214 431694091 684243429 671929347 729758865 431464686 717460697 411574401 524321821 831879760 935721795 786480847 845187364 251248443 742967111 498639557 757868932 393595560 617745676 589042961 650049817 81648242 683970225 573538476 598751284 374268176 409655886 977736172 991194590 166666009 889806034 46767648 458077798 199368981 398744291 827499862 922757753 786446253 857982516 164329907 677212845 406405915 753125468 697707712 738900934 943589422 958022735 853579544 895423649 890506017 895069847 775679321 914341898 129117356 492346961 358465472 389392297 811905314 834657845 691567594 994793221 514465367 516774325 229241702 296707346 373451674 816821287 477751987 632772810 483066532 938716346 717118848 827477116 256625970 402851881 24915894 743245232 499393166 747974868 154817593 275593691 25011999 772067416 924057650 951415906 361299892 836344385 132876317 885120110 350135997 731639629 356508106 968113813 748632592 852054214 912592390 991290822 412143535 727067592 45802639 51304468 114325212 835583196 571816813 871750977 458582962 972096247 287805523 642945662 946103259 960861400 423944401 522675191 784359978 835191058 738028274 813720532 72054238 519566317 702920199 819441573 872884327 983239092 817829571 913990382 413364482 480740348 106622524 835308748 485114610 843059149 627348179 983510192 646443254 759995739 531109219 694397024 197019695 381943094 406942376 528302700 753829748 985591377 481466395 756410563 938398761 997395930 55072787 204654677 682321755 802438270 188592320 958174804 168687152 634544681 522039877 615668426 596287867 669199538 710062036 726966289 211461647 352112263 614043273 838424852 770702152 955517167 340678068 427525020 528134637 758608189 85234006 339757503 745905950 796615828 367266927 709243580 486868486 492256509 249143010 566258668 274732094 582452789 435316353 946423232 563247558 803173776 253019975 611013792 692300456 979819244 961971126 976613024 129754142 623794762 892437294 943244108 483438079 925804303 29686915 819571349 978728066 996936333 334963928 666572464 954494690 979692993 233478707 763910817 137581055 729579012 35365855 483468678 619174341 653240801 21461620 674098578 832282477 943120146 213584685 982280084 234006421 623985431 876961940 878405528 674323449 795825175 903852935 916109692 727526309 939978050 23186528 987679699 937039083 989218237 106157451 939238634 103757224 828284159 765921557 916189882 220189244 619126769 809922242 909144621 388934536 922549843 304013546 699711423 191224180 523294738 453933938 868485432 676677369 963357038 750488664 950850723 621062140 888100903 721163497 994083548 603151257 614129797 289476758 677834752 967422841 977980114 95840452 119402290 233541541 755204431 740452144 822037386 166067862 265349477 454398512 956013624 397272760 899801181 2282104 345069531 750276129 947389291 806036829 968866759 870815375 915888554 12535605 481683409 355031369 537834656 553956176 627687958 866008244 955254539 134440726 855223983 982816894 984486111 724935359 891450877 109817032 781671152 372508589 503635527 292129353 471523181 198275274 801746874 374323281 501701553 740556873 832802811 240289922 522199491 646404176 969889921 38984397 740585420 691166059 893916341 148155605 724380033 641463700 643838071 326465939 650102236 61917223 94825252 132145124 280370051 211939186 349040892 450845673 651857266 405373034 921449126 469545284 850476086 244886256 533811470 129380919 816645602 87143008 303122663 4811007 378862089 824907578 919833571 14616911 202010624 400295825 891253721 778041136 995315287 727282748 837981895 929733320 949117864 967773323 987505689 337398872 708021626 574842769 946928332 43915495 221208070 180762547 346208386 637375196 639156880 538090458 703641994 560926487 907141006 76125307 684373091 424052322 733639851 797695498 798279806 412659656 796071718 537260946 606513122 872948637 954286425 135879293 167265108 360929319 944581413 765550602 828787515 989072758 995908413 787826225 938940369 687978521 824119759 919814633 980974512 928922164 931401174 213221373 566398441 660458730 813512249 243448100 564539309 444365618 817266510 823904301 863349860 451076289 459689439 174935658 245734757 107424896 527733237 119630686 296802387 925770129 994491689 134850678 500264808 705457810 880392184 316672673 433334586 979563107 991149792 903459394 941185436 359763313 574974919 899934114 990201388 279434667 702185089 105766813 740810917 803081166 910856954 662404518 852286127 231684702 477558634 672608644 947982655 722233401 916117644 939948137 998497514 652698350 834142264 703010428 772341921 224193973 450887147 359468140 657291862 852093148 971851761 675501550 680594830 387586325 404263789 156189823 188733033 794103310 908956778 210885229 261682064 31889836 569668612 15432662 592391009 957803263 999432543 120558030 634376178 794055048 992316933 765093863 827193841 858382942 868830564 476030110 862778294 478916079 703155036 663815570 844944473 468436989 960986962 685867925 918330533 708604006 961045192 690710660 697656602 994441783 999813754 43611368 74911875 337061359 438316677 129131310 913434746 726854141 877205036 24104878 128753666 521323822 927417542 331002281 614814748 387693448 600222285 679996610 913767081 790418968 791843136 749401553 858897012 255666011 591642373 338751211 360472662 512746484 898257282 614339080 734695553 670479700 865752040 368423715 719576524 692345377 781822302 374042247 952073212 840734757 873237114 288635097 765143877 717601256 981437557 354403692 462794645 268550419 491451068 513703569 799581052 94316420 622932471 837112111 994836603 979164091 994564026 481719938 872383929 831817108 955771877 286877838 950710482 170747628 997874765 687427522 881102735 928819275 943799018 700822514 793220233 535282598 790085696 709540868 934689168 400580808 839027995 115162263 173443696 808292713 914148926 456784034 520770449 286848035 457207093 689854041 769409328 871265559 878387738 936860312 956236066 801687607 842041592 63600186 807791606 975155033 999023915 46125554 870400614 709264818 830103863 83282332 94813609 734346656 886730892 270255822 744083984 863819902 998356811 396101541 505449522 63673043 256365823 357672088 374350796 940714117 997532723 917801830 931806630 319331292 673898991 21850246 306993929 265464438 987164872 534696439 645713069 625171875 935297502 829704106 918548917 113816881 214404624 781782090 918393877 180156390 332691371 911389066 934749281 288174271 298609461 19361837 874895947 457696287 914528104 18719292 162238903 683493404 752043518 120127261 968115810 191918402 725135931 160292520 595658204 733213879 901354147 722799529 824513423 69965703 406467592 518131657 736948794 607616195 912693316 113055118 349888427 822101341 969866658 600178379 988889062 907166604 986013751 532693884 576510606 6806611 592943067 850835517 869074637 660434845 733372576 633877204 867820702 950849490 954029932 193471349 822222019 125942049 337228395 732758400 856215190 772364061 883298919 77170554 785692669 399698738 546602546 681531857 722669009 267162447 541129312 3770812 893988353 380931719 433639006 127155267 922385534 477037877 588241825 463483854 636500221 539655198 701282183 470516127 796269487 5320094 677776282 878062136 925957632 347168916 554640949 226137684 899764279 526087430 830216049 415915589 790444906 170038000 353933213 895754101 931550392 593754426 710974755 756824999 913490121 52023687 265170238 222875545 456496145 350482741 973023787 706446657 724864442 916248823 971574573 636191458 838033206 132963288 160703341 543660645 991065283 100057757 136284789 787828476 924916454 314259884 375018392 806811085 886804136 718991172 948010552 886362646 978724533 436281758 809774507 331749951 603334996 780133355 941573384 116335361 345505773 477117687 699552791 635002172 951156583 339210365 477797216 928213136 940188219 395054242 857817077 723055457 796664173 487262532 728820237 301630420 658314153 417191364 559252400 221252726 664771400 754444630 885374503 32148673 430107381 695385035 927374434 535864528 931175369 644735152 898872377 937316554 964209716 553965691 576649221 883637724 973616199 601102441 631222566 663637339 965233355 173115108 388681458 736911077 772384053 232335864 339663137 321591830 718816281 470076380 770311627 375383666 896042862 997470927 999798904 265939850 409264132 376108724 521800905 516740596 590490743 101043504 893171160 817356276 960210047 399970799 901867580 889231001 897732571 27633203 717421972 868367806 925830586 376126468 730586243 836870383 950986230 484573748 988352143 663562124 914339914 758324752 946041962 271700650 891199829 576428225 902713689 368737154 848635527 872283026 950438020 195371911 863863869 810390577 927591950 353850539 494277672 172522605 774211208 132370761 752445321 726341574 860464341 694530565 710948583 69301634 454856651 621672795 938595406 408616562 528351574 223186699 778776367 800231545 883727428 848010128 963041385 181598889 535312359 930899298 991008385 21198683 463393909 705643075 776977955 607260983 670243802 643207522 942866669 127965834 218777211 428145291 834013529 936285639 988133303 517521909 894683056 910479885 938520265 537709059 740663483 18972406 411884735 139259775 203520447 758556718 766851936 432562213 772826537 728139954 863313320 958747656 988791838 99462493 961679716 266321153 788819947 947709007 960967155 511620798 739701038 901310819 996644124 440978865 953070352 138838745 780670984 956895202 975919893 501503053 583825940 805798197 922888541 289322405 851256696 879733718 918621150 147753770 645830366 389955156 842037009 144144804 255288251 649163633 861529557 738195152 857354700 60395161 374432855 277691132 637924614 731071481 788958675 496276929 959349033 470560097 649238283 900105969 900674754 965319600 974270466 172150216 500894367 742357004 768308060 934592734 949436403 858164824 999691658 23699971 216084976 53539417 305538953 105462078 140227418 967507815 970131577 662624862 756842044 269853376 467835457 647159600 672019824 986735524 997172076 351303382 973066936 507605743 919445844 445018031 636552981 579773386 806252672 693149063 745482047 390307490 500331124 931945364 997836095 127465782 630670566 868708263 992837497 561753862 791678832 855275863 905210556 671261058 905521296 255599446 559281956 912741100 969861037 40610116 261344949 402610541 896661716 734642774 837090210 420860789 468432001 27873423 637736205 377658346 479235304 59794946 171419075 219499202 264672870 15411765 861661492 413538657 761941894 358500545 367067077 4691393 67563218 395646704 965988274 158022114 919397064 21743614 441046239 791920655 830491978 80886609 263208145 898485338 964920815 766735057 771985545 394705105 928116709 782051616 846716482 262779830 815954553 872020849 886940148 873333400 930429074 940268278 997333129 928889471 975218973 984129961 995444729 337979914 663733715 310227303 564116078 798670745 825758522 604948637 663514787 502786197 690076026 492835805 509912866 340812690 643603890 177452714 947967438 542287974 738646581 804803802 980341817 244706347 575484001 474040814 979000769 856773814 960122428 846503807 966750417 533339472 690664840 824102984 868093069 993684913 999748099 775560022 961553703 230831358 788651454 389721012 819348873 779283572 883979078 971232228 987553496 85755686 949480767 795921189 801208804 169597927 814772270 381283194 822258051 935159007 984303317 1685036 859531303 612957137 681465564 904296692 910915485 441804493 819637237 517245941 936313715 769220059 790762135 956724797 965478437 743602138 947413810 322141945 527405018 713241920 989901088 810441511 829192259 711297054 715326444 402387877 840070754 862851592 968118825 499819534 749004315 3432515 109380922 725449794 901333023 460599100 491586530 335934038 558944700 767951275 788994199 449067360 847065379 15218653 362486893 870353595 924952819 731261243 752334205 642094878 663096980 872849755 930080645 559380953 695794668 459686917 702442780 712175413 824624430 634592412 987359167 896499816 920959926 149028857 311987630 601550027 651513261 459216991 510255035 128130476 819299236 776706667 801027790 637084185 748493492 778607122 958382573 603192689 680536793 500050461 681400293 31219827 957792647 254804046 516643552 400655562 994968244 897616243 968374773 946214458 949436609 610765611 757445424 579494784 689158044 33229229 769817323 34578444 841484212 410799811 821329517 318042728 481482588 630289176 736967874 16923714 61584076 679521508 712207422 821121489 872346197 744960194 932406532 308450228 789480174 130754012 884276119 657469597 890758551 195220589 867534351 386439935 531621150 778864644 872341676 346630102 586482039 348990261 364390619 833192457 857507435 116496026 965768083 108625520 701471251 102483977 574505695 380741885 502634158 944087164 997765276 760276333 802757110 115837871 228232977 554843199 918880400 389038294 957096057 427435653 748209563 545812731 761668908 790169952 832579376 898895169 905641746 306455628 311778704 704523597 894595733 35592490 525472143 433898072 527076200 167688723 780584078 447603953 737562093 366383523 794001808 549917142 902557389 779691101 914513649 886928688 951339277 349740286 618489665 388119654 519932240 47691277 275603141 657549562 832308314 792072992 886972821 922786805 972534532 476052184 714652209 133829515 940271783 140126355 716896798 438597630 807508533 604004560 907895340 656065258 777949523 6093845 152144158 314474069 561849958 159805192 175010070 768891713 968414865 122583597 431153545 473178833 792750747 448066222 650960796 375180041 829758628 923777331 965900209 278097220 829562736 771085559 901946879 518025758 721919340 978651872 989987023 676240368 750003169 280474585 931178220 795367656 841437562 140293816 657546441 160742156 697261810 78800562 646567537 129577062 327309389 890210586 976490273 174684103 187717322 171842031 233965812 771243964 957773569 162590818 397986330 580671824 856924815 62456624 199723021 400256435 424878491 144802359 933677156 385057039 889623407 632783751 842478623 360994054 773918194 371387773 403070288 6803275 909852907 525279866 793371277 13944909 704872558 784928293 799215999 669006712 790493893 270523207 718828558 294192096 673944454 748864389 998426769 753411276 845513268 272865873 591545487 372492075 415279754 743556796 778532343 577498009 689655259 124404473 328308083 468363411 961684949 447783168 837500592 341631687 565393613 146144175 903561073 636286651 951990265 811698456 871424124 288627004 788273306 418124314 800083157 627547608 764716628 372163964 385127299 263558551 390486535 254413496 995590754 489229473 762921617 311791759 426227224 44513977 520019290 195923408 253124566 422031252 930814749 961930887 968203926 848599985 969213617 72622097 720140377 902077735 945171519 791953716 994260801 218712119 734056998 336282441 821547474 379873845 872522809 303431844 495268076 848500833 964031044 960886583 973690923 492607820 800137224 672724244 939522162 587284067 937371856 734840148 896561106 758846508 897068759 186388343 682541764 446530252 961853979 918690010 919461244 677564502 913123608 626808269 808789377 240192208 928532261 557767412 958401377 618224695 753473165 901078328 945338804 330295157 882729309 879473019 940094327 359469746 509658221 565823718 693051859 520932147 608800923 683108546 888147390 606180185 611041308 72361787 936827340 304310723 573997047 726148291 855172374 251795463 323613070 604858001 670462959 802866893 952182785 553126841 754583513 919678061 996629038 454300873 654387376 97986228 129481923 147649609 612653400 531006382 849322178 683510426 921610998 765879065 812354287 163361745 753167663 414859270 652899607 137098944 266623776 41550121 315950360 586952413 622780539 523380952 721228686 785411043 930069957 787109612 963783825 181348854 960283264 901063748 925206425 116243495 180457987 776003469 887332558 896495395 982131428 109772338 784109787 498865579 882097262 97518965 660172008 516126948 778693047 880725582 954851961 211332988 731008962 312285340 459402855 200956033 684110924 618586874 917877128 522408315 996412094 775577815 872167710 221763628 477815508 501141398 786556399 727473834 830732504 357188756 699820292 592108814 699732120 938193640 987217626 221108309 433737013 674460980 836777160 519670018 662165008 809903951 996603705 622318828 829621750 22632180 881482495 969258104 986385368 293820799 939492277 66928305 554109089 423965264 754830266 707431924 841420633 815591978 991466343 957657359 965151886 626329858 798576010 579661288 820173640 720082790 831146012 431095347 910104035 138584618 579770378 256281422 292237613 754642415 804998437 651718678 819355406 858981053 982419872 768467134 900987184 594590318 932789010 731710133 872624825 859889472 882406967 372466632 628395127 213604392 295632325 678504803 712473924 366696968 827101937 134816995 927842693 98487616 101762509 410660602 535939170 975593494 985451457 460088518 694515595 490514488 849142844 406292205 542725612 747806708 967066311 551738276 960964980 464415153 789344025 191361634 222008966 632061351 977727721 184605584 798706046 688752940 782235716 89029590 689765584 59397585 543211248 356516117 455883505 729409939 946557620 892020707 999148939 488844727 956021567 962197388 990742526 728854102 936437987 520934642 883891237 901334662 930578307 485228972 951063297 310823702 632822155 139707853 911816626 61804192 406827247 773760800 805268007 502246063 535032128 160512224 183965667 685036810 870710378 753890725 933681005 880477082 944376803 134993230 444869433 93650356 388706808 17789752 360496240 794044826 807287455 346500080 859065184 209405446 679079216 625231979 738022646 424192022 738657373 435190349 880859021 200161154 645930011 288498065 431648854 791947369 843150313 568041960 687168845 993578735 997507617 43669258 880184729 360853050 695421012 554119091 837512196 240566698 309098371 761466570 982172453 628093685 768870334 831550092 991049908 653032226 904519342 468228766 617223501 666472526 767245134 587025196 971079605 554935984 983003431 989384639 989562930 339299012 536497190 887029079 985682380 671402277 965229604 3117002 416422562 71745222 432842139 825702510 989547440 839487298 975674935 504774786 598634634 909582330 990937762 347762553 953696997 565234984 762785656 544560280 708460926 969489070 986679956 139736138 462150548 915041701 954297700 591541240 624000895 263818124 678837878 433680568 840240317 532609025 905904276 870864498 909164137 615690497 811369216 368732366 617966667 121448023 601854907 737392219 966045736 890205397 966291849 422916113 846962880 505541657 875760985 483500192 491436482 706466011 879746401 69322089 988446070 408842001 955187900 828671886 832341128 981902090 993460216 895275293 932834941 890918488 997517542 638519169 949699572 60319190 180429648 390964306 873013842 699083408 888186905 927087955 965084911 754723297 921286143 329534730 413563774 332747033 910661434 322976666 553414566 731119993 796289945 331105780 542522612 84564233 97055893 858829325 862215228 381028727 554505293 212245817 718696751 864991298 894130026 461576148 763261855 569887138 578420520 975895997 980901920 976704343 979389133 782237571 837064635 123806161 586365592 387986845 449246420 674095447 903688073 563436874 894001908 703764522 948068449 355247558 376099898 203152041 948328138 621467097 964804793 987217394 995295050 963648723 965894481 530909215 631509863 612680566 784628379 232801140 455239467 341199191 403954582 290846388 671878849 40139800 590953350 452724083 793569310 516380579 618797315 814267882 834026288 988919880 989029998 226470872 419877280 938535826 999342788 340386115 530609862 259587709 910156656 511401861 576694518 973791081 995405383 679713614 785604979 854471038 878054463 30911907 963958842 129745555 468349591 422172461 828546144 609166445 641187094 949628666 964112716 472948338 866472128 551590815 858631882 11280636 797187191 522684573 865951821 119659666 715803154 960775693 983539340 927024880 986543057 324882131 876841125 977505136 994839359 475593995 892580494 485055766 753093721 558297538 762394457 784564788 830286234 840887833 859543759 722241635 948063423 912861289 976098123 57710517 823154240 825039578 926490118 920060797 992559236 679569576 721758410 224352199 604080611 318101302 652573349 734965878 999927645 154613846 258274139 83019794 348609158 234925683 524863809 285309451 963901770 974857950 986050214 91095037 794690399 111434137 249701177 702298385 928203919 686715123 737971450 463340562 916332062 379032943 758427363 201107226 664744589 69985518 768853610 866158592 866698517 45240045 147800539 425784977 652160508 484593266 927484831 355680955 421585620 215712059 580531837 396734263 935891404 48014199 682588609 883267401 988876285 361309338 887658923 885809219 915960302 259061668 895340602 653385981 926728598 642456315 841212266 199384702 891180433 613866936 861084112 559887278 655758609 821741957 835063575 617014519 769889013 635603101 690256238 707134333 973798630 301948617 471890092 588049153 935557548 269993914 951672939 865254957 981255091 636062125 688672142 896929217 941044038 543740400 908639616 833318967 899562002 393017052 996291572 851217641 855991803 973688699 991463548 526524575 995672293 608084189 769545057 33540522 400165203 570685650 909158605 964360499 999354697 241340569 705696909 474337533 833865563 248398650 350601440 703175911 870495077 616289161 644415456 223282861 661266556 720907830 797763702 895286721 947643841 433313172 448086763 510666282 689219938 998178780 999626971 662327379 764737459 435409489 732466483 449137357 603431780 889207398 962562935 604669986 722125998 61508636 988005481 610894980 809747078 417178696 462156987 320921341 820073699 179884748 259994012 211351688 616122887 777758437 922014266 980777098 983613038 895023903 989876688 491262598 656751356 617373510 708100099 608463050 640255387 398798795 492474599 716931938 870189364 384649238 645290515 136206651 711500520 461638274 795291316 198788605 493623486 219996897 993600717 619548034 808467419 644368349 847856645 421967199 697305998 446688840 765857630 888821036 938022296 170569369 489599032 672647921 935655135 755165227 964371634 557740923 844554096 194381500 222166634 966258980 988739111 250238949 376647812 693973532 777479559 35244044 645910232 910228692 998789589 530187949 764799020 550387841 735743259 386417686 757253293 142850580 979183042 432947493 817955873 996426713 997661857 451401131 774231542 926851717 935669153 503718924 741193035 43443219 286573196 986185387 991539757 26304807 828496111 820014604 893873000 104468322 278315116 108224726 752641190 52892184 425445919 833684945 904057758 993572541 997586813 771939767 930562359 742601509 767542675 233849578 986678679 583148399 947802432 236336124 708640602 585339175 764487774 932696383 959870358 939458049 995878250 25325544 940640791 150270864 864177326 776745701 858508780 703777890 981022254 52490207 281791213 89115510 239334359 612975550 793710554 647708683 921433799 521233162 955354829 77502600 482815745 612315915 994930369 958026671 966480418 205684332 679595063 454397522 653482216 362794364 519632870 271495698 487396749 30732971 144380935 740121458 998297150 77517514 829373402 546802767 736500099 822829954 963524932 715401140 756951224 403583494 657122241 736871912 948167793 251467367 666558335 709721607 779030346 602486612 816398772 26613972 895714316 568532821 785578105 309750986 755633259 235840658 721334325 592009304 830984259 506298572 931472314 266394251 844145358 979530891 999752124 925607926 938312255 498981583 707228292 97714021 177960657 368117354 863926428 534135764 923557721 541441741 649500434 55113686 140448748 82033311 713774585 842495625 877866720 402616354 925515854 546425196 841350308 254588297 511236022 31676037 352389539 304644308 502408011 912504432 920861084 882537597 944300452 16925550 795132335 158748367 934295660 89299840 493988122 606599632 851436111 716022977 825648352 720927063 887951196 867277690 941380280 725275316 859074470 494922689 952688575 197332586 283617486 630647328 879661812 958323686 994384982 807013027 807379128 272762900 780695551 107073155 386633098 947059375 988171144 211172866 635119581 228417022 572365107 304970429 498351020 108795751 464679825 200327274 827321288 547718107 600612314 642329440 846825412 476883555 486167154 667863919 927938924 652869049 900688601 472990879 474807968 561589789 906713966 520679479 700753274 505497293 767982336 4708004 552051483 428700737 650687015 767193439 901221427 628666307 651966237 595403761 611097604 617527304 915328746 366066317 932757018 800141666 860122642 400301600 431520487 123067679 933830527 672321404 806420638 650733379 748198763 821324137 918723930 217630081 660745382 769841818 793941346 428120891 788185339 626228663 991417148 627014254 985304193 818906260 838027122 935080320 948443539 18957149 769457795 202285922 975122248 641257383 866653999 892366333 897872713 152226923 527604397 988810682 992994035 319381141 790914251 681892279 733228728 53539974 959036931 454058642 708017981 643828176 684561508 36525506 431059683 946552402 995929276 74136120 541067001 684418243 856716369 530224917 679800628 843088448 917218757 485388690 614125000 708318747 827380131 715116561 864492816 450473074 609986191 618987800 889343763 335390445 708880398 535057934 819411819 555781844 938929421 953685501 956619552 642635019 710554479 624194935 766831345 523363021 704135971 263883010 475269458 973012853 986279493 433551288 731259667 537078817 683323477 807048050 811202208 186510490 839151035 481665625 870740085 656645460 791195672 523252821 882272148 372592978 748062896 26663436 877713972 579562137 815600551 723805468 978919727 968486408 992619890 850336156 886901008 310891177 908033917 534580681 933861507 264299657 637503520 122309424 910544713 295722728 772495581 581326100 789037900 225440510 925094097 247763106 999174007 4759573 504335479 30894433 724536999 194328661 347433304 935996177 981836885 552794665 729999486 184270109 804906066 366670359 828905979 199931464 464693156 101911590 330430209 240136247 487192795 17655984 844016598 822630361 882529566 885824651 932889159 472028749 852849456 659711475 734336726 41627846 214104156 359465874 375716730 625316863 656351507 469088736 886647799 433810416 452545142 507882402 762751217 461758277 482160692 266486911 874162548 402443493 778913550 768973769 929421288 114995358 735971712 758299455 927623408 738539929 741809074 653046531 776390523 450745926 571014739 212172739 341584511 158840903 678226687 616470380 892657980 262376283 993029645 489777009 588262591 586292500 771779910 166206439 366526381 670360599 878710155 902911901 928443040 79174351 746634211 200018525 766885742 756359066 953884464 561812687 883713822 953607696 955903123 815625719 970706522 212330250 716606489 255221477 431060339 475643825 728064446 624848638 658329063 975860012 987219882 445950347 769596989 352380652 871505203 503896551 998759359 869470780 878071754 563680861 840338260 200787794 370826769 623425682 992801403 734675394 964009000 401075961 553219348 986507632 987972700 719818918 722775807 546267069 753929918 951186106 955208426 691473435 859625900 729554958 915584258 761651219 768335043 927886793 985386067 453129839 567256032 510640060 579459485 814948623 860605617 432889910 479354432 645456913 880633615 908601590 937552235 274587047 592737582 633099719 770766903 50195318 257875902 149472559 581652275 854070416 886699920 233288524 929064910 648140784 854907528 860393954 979048898 361655437 931514186 207825609 238243580 435401216 531444282 370892258 860381185 182694937 656367830 790268838 808361953 434262102 800614163 309590521 633694196 189351258 224722918 896735214 982798856 797934570 886303670 422899298 769258167 682532083 865722515 35085007 354749007 47113646 454492587 669514890 985486300 255632090 355557657 368951607 659432321 974917048 990238735 163956905 364445591 928424709 929059444 410479264 510292764 913296732 933739810 601913033 698377545 845286154 962495076 121773440 804063783 205669242 669663800 292613650 565550925 446615974 754376051 524917903 709595239 778906745 881432419 63947757 225031862 856556492 994141609 662947780 786298237 184506071 754601785 439459159 816364847 544795215 786311370 33713640 180337094 448445645 852315507 123541411 393028696 356345046 823922048 992007599 997611779 936616188 947195537 483328853 623521694 578848063 873934828 696773976 759193580 884156054 965228095 722136442 820317207 953123350 960765100 600326395 763313500 668743914 789421371 56753799 778450030 149626357 198059995 497873556 636463956 934395220 979859320 531025255 809213580 221232972 875018583 191694313 537784984 956474841 991750565 878438442 933346482 492772395 668590139 166105893 947375157 731248669 773942736 389810501 475645385 440439439 985943594 44811026 91661086 488412086 989378992 341822232 398562452 226806556 409140939 643347525 765092305 886516784 941177198 464314864 565837641 719861205 954129661 758689461 906147199 136183347 429220387 499253564 976120997 621314916 854760389 37443192 678140193 323065349 625455771 402068502 818148868 922892880 938144027 333167139 839136318 288180788 523507629 564368631 982464993 458792776 757154338 357619201 688223330 575239258 987945307 657031932 735319639 70852790 693002381 118545195 925162061 868912322 883705758 57589133 223520625 208878795 982091428 608166439 950055313 947506106 957108416 122616891 655540378 523881388 597858546 91355759 673659596 958421018 960810621 25019809 987079327 375909995 864398914 892430804 940378419 194164297 493950067 993996271 996606003 535385313 969560789 820898706 931510590 74131730 623012473 786457753 877910409 861483611 918549399 961637442 980489938 413042399 426239131 866157039 933167569 88229507 496563459 261919731 804057937 223011176 354514798 209735 526748563 515169464 754987762 632385213 919749531 452500466 605167094 651886796 928295925 718703987 741688410 964849407 985752414 558771897 840204713 239856279 877079489 851208632 917251167 345107198 923651043 934981506 993919303 255080185 950136661 98880355 915983634 446991022 700919695 167972477 735931853 163000594 796066649 918224290 935038364 355289422 743293687 147420739 563006410 243362103 738716528 46163836 604196345 429951048 840629889 243536020 694867761 578665917 995406703 5502338 171841676 720969254 966761325 25113788 174694829 974950792 989966989 624486992 913297424 689000408 705000183 988764346 996715495 342167811 974245700 206360853 475141350 595461910 636135665 859369570 938024768 191773861 923483772 469911798 905824004 601681944 686304999 820015699 890664765 924633243 937953677 14313709 355349914 723298061 878182443 381061234 945534665 882667761 961027878 607521880 835770567 606108067 652168377 239901130 509384931 65939785 952871451 865919999 992935304 97902680 241673579 454778864 464014501 383718799 998397494 828753784 862984473 988096667 997580010 86350387 760692113 693470812 772848774 575061397 760949810 436440232 590219619 11124650 694803887 85771644 986959376 967865900 968469625 941743551 962055301 791720480 932934838 241346887 587832915 918188852 992609796 773569381 921159721 285753179 677070590 309222974 824948893 788794218 969071108 870309735 894229920 576386740 665003802 719211706 770054218 459324616 729051190 369037843 781640231 939873310 998106947 565200977 982503058 396796318 944362620 619861376 727648558 805944841 945612885 941286143 975277519 138760792 173966170 691060035 736482608 678736664 837262024 310097193 426053497 496290079 651634973 530370979 953315765 418636274 583231645 250219076 291682991 468168535 675801443 884373265 945111410 57725642 364478606 964442565 980278265 311093824 491563118 730030599 807486893 796550048 985710933 627992337 797534888 547063487 876490397 29662034 802026543 70657928 435008006 993294764 999412408 83306941 120608249 401346437 757362954 631367627 787579216 630711768 974665370 933787037 961881632 912415811 966016332 849529884 876285936 931897061 937531661 14765120 232263115 995588349 997121843 754019069 767206253 241732899 316046592 871346052 885501114 111752860 394067153 910894888 956261690 584356067 600783723 724888478 918988061 670826052 679666981 733044109 923120676 245642454 808754952 988080785 998363206 623952339 849084175 873547525 949803575 198511792 978114688 963373181 993793541 314811353 898679751 240907621 323435639 393962044 949668387 757565918 980821008 436707679 733984876 804379433 932367173 268846474 426795547 831358907 960841647 197777290 648231715 446542747 648977914 236922499 951425142 670621692 679124231 707661557 913092691 448932516 593224084 290298079 618370838 233176513 484892284 753472151 767817718 594059269 932298071 584996276 613724229 36728748 973282426 684073389 780166861 113979622 460557718 631615922 986981338 100257932 345218488 580335491 915586550 708316683 708962736 45654160 285038906 665874789 981727248 130742191 489502330 208458526 943586058 661662920 975862372 928636305 963356130 899928691 937610059 244716258 392780507 949177159 959950200 644941094 918438190 167794661 168058602 317617900 329281642 726268720 777890517 706637758 953215294 912603860 962768080 682862045 803680245 760645225 922410314 53151644 80677298 646433465 688338857 268003056 312150887 705997807 845177265 470541183 792906817 67716361 834589471 7119475 251850621 426531555 917677004 437637777 991709319 134738194 751137460 779360162 933668497 521312621 685340314 187632744 702096448 693116933 984597342 647913397 781921825 956024925 988489961 354169954 660428737 106737026 874246932 305524159 559235347 260060992 787677721 231389878 586481027 474930174 669514922 432963714 927715958 609638551 835441651 863578693 868146936 726670151 814080837 672438015 858190878 788245848 833316030 447295397 755581326 738823257 897048159 341635555 933867686 243690281 478054042 265409815 751956029 499377351 835360671 703595216 952566657 12925402 718119751 284737106 586800355 498661427 775650968 18373280 38053526 118150054 317815156 137138643 760626068 389730865 886551910 799146 205288910 825427656 939485896 19343715 129077259 634039491 719839773 457127169 783192419 516231965 858327415 995858053 996139019 891288762 973621933 419512798 935941239 176270022 286344755 154710310 625051572 9153748 513721475 829452633 972878033 314235051 413226597 904998797 972440407 440211009 746109316 81978966 203378232 992301064 998435176 656025937 940987780 155307354 629969352 446251488 708842896 869623077 881257868 709526632 869099824 574373287 990196395 917957318 919082536 24973138 474101542 994162014 995409575 327136835 514880911 600177337 625422860 771200503 931475951 541297052 861939277 775028035 854011893 374054261 929926985 928152622 961299720 354203552 527021247 488329861 662003631 803052813 988463236 636730848 806277972 14351071 414505811 721238328 849369405 613522764 969634574 359091318 618782700 558685032 827127740 461697899 723623168 357009809 535067482 264708135 869651946 832661641 874877918 123633802 715890256 936558103 997815905 311576125 605540958 162053771 355722600 118430770 895403537 88693466 183038497 575019996 944271359 541853013 856564433 488187395 721975542 485571565 838163071 589344658 903887785 959851085 965397972 177307163 566457953 644884571 785108291 796821910 957976288 635390435 914440423 976572180 991351800 933739578 969236127 330061599 577290878 924410968 930952151 195357145 254819963 60065165 975707516 44204631 119243912 968924724 993175781 942372042 994114355 686454688 901629936 759200946 920400064 602549378 883426890 927055441 977380293 871350171 957965255 313665681 814757971 518971333 622033117 411259158 958311645 134967866 989964544 290158837 750992351 950205700 991368797 933318944 971926663 842777948 958160282 634429398 650058413 511955591 534726093 619465206 731319865 619347967 993769746 998145994 998767825 584962907 647332795 746161958 877358801 289162819 314484905 923766874 986461908 460841864 721109287 591911670 734201834 754732821 939492046 316179063 355397127 487428023 564193710 502119380 838660000 399774519 903728099 666258828 737197655 8400506 437252770 283251158 339161406 23100692 608961265 106061957 568840598 362748068 628663133 508522548 677327801 534655044 757357707 699661536 986041839 691729996 996183689 642089212 831130823 595769078 672758054 569937464 725536372 270491627 334180596 77848307 245717953 502354270 825261234 668562699 984434364 995506318 995917986 881678278 910431720 921529300 928199833 952285566 969783616 706922028 899794048 436171684 645437334 291167904 863992936 956789850 980615140 172647259 394516352 521007476 685925535 717758031 844420308 849153251 913170998 760733050 820654515 310557147 655983137 906846068 953043084 362131947 503477848 962236507 990238106 877243645 907081434 957033235 965203690 210916202 470796340 209848334 689915303 985615194 989486154 596117139 752888491 840723047 993998338 322588854 571958870 999538113 999698384 639048984 959823962 881116081 925656203 483451403 504980407 155974958 194408462 440729357 801236180 781394390 786734272 292353498 542967400 615474327 858901015 869927354 929969398 2792401 503057570 235945895 938968335 463795846 569896616 386240619 505740561 150186053 741614071 837147994 985879366 991412654 995432306 45903725 842744255 474061316 728499996 88023045 575157358 471989794 584394165 671584811 776399925 571013332 915937732 126058429 193924090 497053937 832271938 265300004 299321767 451649756 552993892 486335221 824412832 973587787 987388678 725336627 761778194 299557098 417058853 38815007 591800428 686220435 809794874 747524232 976829490 68762221 685524350 49424188 421188482 304936384 996170564 46936084 222952493 300995594 310318790 802716915 910382259 365956958 685555230 913950566 922029768 804469202 998904824 740347311 828468324 750831595 780251745 715212557 837987313 201477935 743687632 320002104 377786355 725298670 901360814 361170542 604288515 236090317 377044314 402018316 644448444 798510121 956490189 514008734 931752650 817541491 948677973 470998373 775385717 613604550 646515353 552226453 578335619 405083159 473959334 176147665 981061486 607405926 862920425 747701712 887510962 665566404 691776236 851226645 987112657 966516605 995117445 215996296 678371664 133983192 806838350 720906156 834103909 2299930 429078370 39161536 430897514 38869540 870360543 836011094 990538351 790455920 843118210 407909603 797041118 23201150 98663631 45991820 823928990 428121664 538596376 342035104 631102338 383034325 884941930 274811999 404201106 35959870 465739825 394080650 788466467 742141801 862670352 900631603 931694004 702633932 995426044 777626227 828483295 801611971 833748853 707577941 944275140 156624272 509000589 646643323 890984356 816279065 898622610 96278959 250571644 924103855 954291338 739438043 774036100 426153369 710167672 527176646 635694202 354801086 600735265 288745227 366381169 56052898 293161427 515962830 679563644 888268249 890555988 942910851 946876728 409961271 474364091 216698885 630481345 731927104 802817556 944085806 970022547 767807217 779551126 790080038 814419695 96571782 135401875 81403380 307473350 646038218 985845981 468358012 655977872 916053614 920169667 739981949 740933346 124444 697719537 136810914 872561723 43826017 592379024 918789410 948430155 574397118 871498025 421434203 998042592 788804033 880598289 105387813 270654666 178399155 803664379 774415635 887685196 560763859 668896757 192165133 390449812 963351135 972574018 619791312 657548523 489118753 996336525 256027295 543488935 597303818 981042421 413819000 923070136 303956739 703916762 312635475 526601404 957097947 958397130 89256734 858465199 956595467 992093510 513242061 544926768 604958876 816893214 248145948 826520154 421213520 503923138 178416627 890445998 880301732 925319169 478961439 560215570 873939714 966870624 373644340 678960702 908076082 910951593 457640397 901356821 699964647 766452661 927195293 994093379 372581656 537398544 858500783 931993385 296780027 390029151 855909053 866382267 831843257 840724838 423822247 587386914 659900829 765313914 742700842 822017718 737231476 830232213 621030359 719991677 462220507 766290953 877511067 935388398 52981713 330973383 993483431 994701686 583082112 618553271 171712661 181813070 680734205 989096884 736999295 898042163 664984215 823704225 667551797 859058025 503472104 971858457 105236166 551043563 905785588 988144483 810494447 949864012 361966688 711018341 498010561 862477134 431139837 652457324 70877242 785722200 883748 137187074 793821698 929564029 604829078 990220223 503355835 664676825 750703489 789289955 620028150 712960642 602139088 832781759 318350246 979428947 608874485 621079292 265145157 751843232 522288875 897789850 572841531 700926318 594135189 645280986 619556110 847179712 326088059 835165382 885624174 985862386 705928087 772000156 393555001 688771026 309382947 595056557 210324710 800968146 92119349 320158387 774781465 909207366 806576636 930969568 105456555 612993848 207436788 672607663 784699882 819746900 587501153 611168802 923233972 942971751 820402118 996048058 430934828 676039676 806486438 926069132 991854313 997563477 997227711 997973569 582938184 677423384 842776304 878362745 867604909 930684240 201260855 919948418 659490891 672145047 778892277 882910653 329000184 587800520 418851851 823930371 29591846 90191947 114333552 308272115 586262676 864557346 396529395 728607134 289168320 363634444 729684102 811772919 783583957 826741545 441955507 895342159 91755095 541780890 387443004 860752634 547787456 951927741 51392565 73942031 959143628 997550783 158278122 765438223 836178123 854271244 2736645 336527679 137160776 206080635 365679599 896247363 615793274 723803496 429030592 949108649 396396262 776672302 541406576 747283122 181949582 420043266 80236486 346410690 104699068 192455753 908284779 943320804 573312807 720219297 82400272 529287898 610143009 704815095 458173241 820293345 871501783 983183255 944421612 948518326 919288630 959523481 44006036 953383484 476153041 668779037 148961743 503005098 200952879 470498481 502042081 742607698 924571841 990702527 619292601 956412188 679296598 957129586 6880545 52185972 395486738 778967598 504393967 801518099 505707962 981392851 145047855 544456666 705849969 919088736 454590697 748712899 160362945 488712162 59655349 107720470 539989703 894513572 986567702 990695752 738679302 855482975 326695938 516935968 307996167 506615547 733399834 829456088 21225706 165058257 260945254 644875788 7209530 442655493 307084196 350936792 475112510 759942810 416287351 714781416 902947241 916700001 953302921 967145910 629827449 647740226 195244463 786465035 358823250 964287972 829883305 974671218 834653871 954901266 118049554 120175975 40440345 850934560 773785021 814279800 267394906 550077798 356961020 451077740 417888147 827447763 405620812 567939065 302110824 985976786 798964352 850752746 171479272 962822485 784547179 913953015 510567085 896070052 953320215 957075943 188420379 372299862 608156951 941585385 610265170 851256337 183483130 611215466 806250497 823057169 374371416 695946566 354740087 469518098 977999972 987921335 314797548 755390285 619446805 683923499 219069640 314285338 528957740 904062159 222677537 442597354 341827646 545541084 483885707 627307593 39212311 493670760 107979552 295030819 413803179 615607452 791748050 853437595 972068893 989859963 648914519 794632021 564296488 649470404 468187210 567184660 590725059 701017275 209241857 861787085 301964209 471161058 547049761 840093151 421151744 668822735 614158533 690645861 808507485 820126648 862975958 908118496 964484479 983460828 559247977 889251920 841368758 935755980 710059301 890409790 365860870 504641581 310050666 893553658 871932149 984699284 297463356 827915837 420617021 543935529 788216035 839692620 483485865 885429473 843365560 950973470 167137400 494700272 561823928 937642981 585563679 766829997 551858471 823697609 598896165 967217959 54531689 631365509 72635162 397736100 546382102 949081732 713063710 743928392 690800053 705511054 206266538 748225513 306083119 455569379 977570745 989953596 462299663 567211248 354026525 951055486 266369041 884493299 678592733 835481483 780101980 868215246 271334912 873490548 999253882 999327454 502084522 837875318 831515712 899693325 854113757 883656510 514178739 809062618 90757246 169237451 382444171 699866079 837518545 842368418 101136352 451005569 508019940 738873680 361435399 983974751 464168921 582157029 773944092 840907353 481700521 957820011 576767458 772410544 902614066 985200287 611442607 983050670 873369788 885309738 417789996 776382570 151883400 805335648 328026832 392307465 706072384 788745636 302650531 784921753 43966670 157378860 674208747 732982814 772456411 840249760 677791667 881258715 767971793 963346793 238655616 936368615 349496766 477121189 168299038 798136559 288910715 727605104 581141774 757687289 903035505 932551812 664262893 876633530 645127435 657936815 887947701 989096591 571500417 687297696 154595228 921063967 257076210 468381294 277814423 597123589 338178922 679412637 72277664 171201334 352606909 563978290 683159549 779352284 519084400 857525050 548230001 914085929 17083981 568443776 482524684 581935613 858990987 982120621 828748360 878341884 752607345 805082759 507917312 796250126 459690569 925802229 541182481 613552635 366627190 919086778 964649134 985570166 419248522 658686354 356162470 869359416 814410882 900105770 649178962 899472452 576702420 839025995 540861282 672735260 118956467 289433047 407425601 474322966 196697347 664723193 437550406 984700908 841534290 842596597 305298808 864216853 786953808 973434062 625473441 772837432 919596992 958151314 411686519 817028428 195329341 851140319 404186459 863457230 17064897 807920010 502751225 912679787 155382377 699956631 978147319 991409113 985845205 994986565 692923467 693629390 430868618 500513219 811608586 899078897 786990096 904020994 485795739 866822243 365927377 677474519 670886490 816996140 774617984 899903100 402067188 721559770 498098728 856126576 215120001 486456585 706867817 869490726 678502262 828263474 682607627 986389442 11045167 427275372 240807112 899592713 345652607 493066153 72159551 110424134 116829132 337534976 283242621 783555353 131758940 929451644 207098996 439043977 584051800 856823681 469535693 748836341 260649116 346497403 985319301 989369222 978744167 994607757 642848562 715169655 228947335 278962387 171103944 738334577 307238702 474919301 672708173 948981900 636084934 719214607 819564287 905598409 658033150 967322952 889119879 918677107 538891620 716369198 67171921 401728743 83722736 492559975 830476441 896761300 616330450 958274999 371623543 575313905 208291958 242221176 583160718 666129250 344842186 479367857 138673763 632226135 126663127 979575453 150053659 695294241 376184411 845545803 64265524 481104792 213606744 517103491 934539057 968691109 541470055 570448565 337151231 475961646 423713741 998126618 547383637 795323754 78022186 734050990 753211847 944560637 452622161 700438845 106512695 282306984 2572352 678045875 876693395 937364807 542782300 717016480 45329199 848045089 818925955 884487461 801532321 818307346 763713113 873343295 620245717 812936181 950487369 990081110 94003015 148649778 818001637 926743512 885264583 987871191 4196955 927623210 711971576 848833766 948789248 955779793 471800905 941857691 832631928 834043737 608687155 893187286 76555100 122192895 934962889 995732297 547642859 903215794 565776101 963280149 685385657 739990342 981083292 998274755 629898233 865451079 930552675 998912970 805059995 932130251 41598818 990474005 598077641 678580215 183303672 689759795 560376345 596631373 10448254 127632842 586285151 699455006 503127129 812457707 663555056 881959390 933176907 999707850 968899172 976930469 337102910 520363324 508434918 519344678 237365933 366188152 542447235 728065727 851467466 947804331 996228400 996367229 230033422 825180826 859946442 908935954 489398572 771047101 667521912 951871607 801063298 815534655 677547308 754788895 16159356 268791228 593565606 664128711 12087231 794987558 890045243 954206225 720995279 974756614 717024998 866858968 160235457 981442385 867273480 970998285 53044822 530705133 860664339 967200797 282816124 698841342 386753505 400425670 432025083 829563066 600224228 932340987 269918259 950801798 705480752 950616528 193687800 297224084 650925597 877714891 724544167 738051994 504634945 897875839 249499121 384199215 968876307 999221930 758931737 872832741 74838023 323319229 743127578 929822194 777672693 789028856 832403391 995600714 722110569 938463547 921739714 965050886 915616632 918645835 778841992 982875651 178293501 199708315 910380820 988712318 653696533 933023586 916688394 989414110 191407894 881795386 57716320 667907801 670884502 894105401 17579885 689912116 444667471 947351685 326430818 607149470 9542359 540105609 33979868 840434365 728129852 744839573 66012404 520047362 233085326 631465992 798218303 928884249 192746262 857568477 857753122 918577927 984777402 992762144 577130476 964516486 502711606 544667462 968497193 973565121 400080281 436336096 418370173 795096382 4488590 919929223 57365952 63434931 801615323 926700250 302917612 346422229 719155023 875249914 146348573 508255112 693159502 766797879 421085890 690587998 807924605 811599099 894192975 981641598 974569336 994293711 31278615 928832675 156130744 192877338 925258138 944687825 938678922 967895926 448971648 647850474 548931029 821847490 196819135 562257774 798395890 839088429 302631168 876601632 3703588 597581972 344157850 446575225 524993202 573666961 740432237 846410892 797926183 943316941 944836280 991887223 270292711 298485157 545801782 951393526 451618872 818737251 29645167 396790946 162412935 344279554 617873253 929398527 185793906 743060348 77237990 679164833 279054396 442507795 948837191 980330085 40131790 596768495 522489600 584442285 711952360 959225447 21644026 811264776 923048699 932291589 96764844 699778063 644120687 905038438 582131157 627650731 949630164 983749432 778678975 951072675 358795219 683107980 760044942 917000577 559825508 961580410 990856566 994544436 419844796 695058733 376458792 637694890 579231376 856357123 261134270 741796309 707285669 715941308 584262898 798915633 693919117 933318646 854953652 994867965 628827012 684442477 627522874 983829147 266667222 910841020 439198088 444615224 231716549 868116293 74808330 174231485 139838023 441047570 427262134 660202300 943118103 981462184 512105668 893182376 442690673 602213550 271679817 925097999 882996916 888639535 384195863 408001593 892917321 998070960 426425297 648774231 678079410 722998517 876438666 999001065 55114234 397983392 626481603 923174586 561787279 568847558 264190367 692233625 650882659 873803873 774139338 964171494 290342228 833612984 922318216 947459320 910086754 980704121 229268859 688171145 688174645 998911697 897932358 967460062 855760622 886821721 866679198 921649326 925821107 970480973 780940181 926518832 479342309 619980300 807635463 894501828 165628932 999014304 795610539 965458328 408120768 959288461 168679013 946504130 878583463 915147795 154267535 201661572 707617664 974627250 681457179 746972130 414661997 666373941 316994066 420168134 201320890 891472836 361163190 803075101 303998220 328643998 235583007 657253047 551445447 775058798 8257783 171211208 553917810 641367916 915027836 935477713 153800561 572110630 237296472 625808818 144704572 589937286 17123511 558234621 499685722 961698414 707486136 732743941 100561884 792437969 403475940 420727115 911009801 981422744 805450123 947883089 459890543 935555939 887833308 945138299 424252965 515519061 897025184 967775024 558145851 602174787 516081811 988842588 152790874 625582702 621103914 889005348 221688994 833336826 544305952 844597065 352966221 696183155 488338596 860280186 810345134 905474705 998911900 999564955 583118837 790463151 470511985 769410086 461991088 893655405 6062353 450660557 7969344 905040396 49250497 788013433 823577730 969695074 316028576 810954591 495016375 611181097 567922791 897727766 708768948 875324244 581856994 893813829 222625933 331243664 706620483 795186463 876076692 877191663 969196798 977020645 114070305 579360542 531592093 886943841 681397974 821163740 684447294 767237381 538178760 550087246 428856414 742812418 845140133 929045647 566136610 725846099 319412427 389614181 262388197 844791223 668445974 830611227 651846640 935367248 559649245 685703942 937468488 984464220 474640459 944144028 848766292 920700908 296894253 916220586 414300847 698272772 143300162 596565056 600810411 708419819 531260339 726740679 844136366 931020978 683869028 830372349 41027885 607718080 256614936 500669346 27244411 721025829 591699192 846930019 447824961 734379944 458681617 844440170 145875905 262584119 832060642 965824110 632776486 710764025 618664942 820848834 52032705 687431914 592570173 843096133 631637496 637096089 191485945 664330730 295331746 936640538 664434807 705409097 527658518 663090615 527702952 681957703 922363497 931493546 655018769 788574902 165343494 327108245 645022586 796264780 890395462 948220139 790147338 828059954 392668304 572147080 816119906 852118845 42062168 629175573 680621546 956237953 681245929 845556925 793959489 988086592 633701665 878496959 271377728 559469792 518686485 541196887 940913327 995629038 92725923 817034821 992766917 996711985 277902504 382732382 45936729 239715681 822776716 842401517 326663372 852614235 290595452 450843634 151486460 246525724 218883261 409321731 758199930 854482042 256141960 323788133 368991076 541956792 236927402 829400875 50847830 828589126 396666538 864022791 15322730 151723074 145460404 999763647 642356056 765369832 751656665 870219470 758729556 979400215 549757951 688048246 115023021 553333644 620307976 944967529 97887208 198241867 983408499 983727821 971924606 998488764 664896362 704438900 292316755 364067262 10475703 939959055 596576102 830235516 978609422 994456364 279213146 493455692 500680754 642202140 334915580 782863354 881142659 897753717 298414825 916734232 355048640 920942175 797356010 872875991 68044817 529086772 199577554 992158656 282473951 815193586 874092885 889661530 222655636 260203131 344557994 778419744 190209955 825268135 448603680 678960083 555055868 686447943 481184468 955327270 41723814 691245890 223855615 590759999 461540796 509222049 238403299 645542562 531402388 820927137 478941612 589047939 107132750 137117748 280112101 362568492 285508687 387324548 70210359 755139727 630100393 861194820 852214409 930304085 495248793 563864834 68168357 517097962 836493281 988046144 472290999 888794770 90113102 897020729 919053873 965338062 584848654 848689353 290527714 879122130 859873029 988098774 287142382 877307645 14249800 272143783 903967355 974217437 505596042 919160660 552013092 949786848 86860473 157686261 713084116 924821072 845350749 862075673 513609389 970092026 689841458 983443800 398617286 955161298 97540274 608710623 544637036 694025118 157194236 989631473 942320995 974676384 922086860 997256801 687769980 777918473 383030935 888754562 907733835 911140557 385629958 528851490 899622551 958070915 67596233 384922853 219636354 365521915 216872855 720272504 514031499 846988008 538991700 546454474 93381935 392638364 738277000 929489387 673693773 817706148 991603972 991782092 377931321 601880911 466226122 872589507 584264843 724232990 992944278 995038972 319880528 741382347 485436990 852245900 54288737 330045116 457220896 494351495 398359797 655203255 392314923 428974677 40882985 964643015 211490273 898553577 711555735 719372697 814931196 924009416 563884403 879097573 360746039 794585617 671251699 871869036 320807620 984822065 550410787 744491297 511585598 512971271 168365411 754838674 898474698 937545290 841008680 987638535 969325456 987923098 746871199 864802725 129985411 684347241 880870849 907854213 690258399 978636845 17262334 241079799 742985752 904440600 849936402 951657783 927180907 962223595 876017639 950759176 483477427 672056899 2946669 374578155 72230609 851957116 253014412 515477012 573374567 978048748 811771960 887720742 57427825 746956237 885650251 957596187 47043964 354374382 888421751 907101903 426350374 835897071 777414325 802390398 865281998 902704875 394008185 577799855 45950552 173606418 137358198 624198653 607085995 924206117 308347590 778976119 138288729 697463631 550240054 619967542 350930903 752978280 87943439 366464972 430070382 730909296 515746931 530951828 774128254 937300065 297315317 478554932 182383644 375057536 338365662 502327357 263423050 919460073 784226658 891933899 368421537 734854005 15396426 48344726 412559500 651586928 223322101 723389363 698792008 939819450 455863061 960312381 796725069 950742595 931004678 952670844 742343510 813671658 662949742 827181485 85515101 113592641 177495164 437670894 909344918 957105401 417983292 840808407 624668013 638763350 955607589 986395574 910039417 979179475 482274382 551144524 232316962 320208575 546216173 764451866 116712188 784241736 48395427 612250778 549857365 623563532 382469829 894381967 737445632 986591604 169519907 836913181 80372896 99981733 106859378 859209945 573063269 829290330 543652885 597741985 231274496 685284112 122194085 964136437 176252936 833927728 674395079 940375705 893136555 935958851 233155220 648923350 874196945 962256722 482449141 705466181 694199876 783257703 897443367 942225047 881743266 977050390 676469350 892999487 674146210 951280029 878512760 955177614 552424278 818802667 373941818 673427059 50901657 473122578 131663675 495982828 267842241 437854548 710405505 841098891 655787837 727512079 863197286 924899399 60073645 694307161 435660616 437516007 781326443 958675022 574843405 727882664 723321874 889201458 836888128 854276106 774067586 784226337 340326291 518780975 158903999 317401475 929958300 994103069 32942994 50513593 749968818 759799525 284550986 556738643 969049377 981283429 215654447 254905595 583145295 643301010 975887645 980015232 221551515 983536096 542932596 558391558 673506574 938509281 840787628 931424504 848023985 891440103 572801806 994027805 687164986 954920464 672295196 954548559 5756249 673318449 30896623 924509492 928835909 960302572 794555285 962130362 321837266 574960921 756497412 853704450 761379586 992760072 218231850 703506710 812902954 937510593 88189197 960757972 447900817 584528822 330138741 334797256 115513927 765008079 900900166 946586303 329319240 475500709 591742193 748192063 234849501 941587280 780547159 854256516 750970573 848688988 508412052 567445127 289201047 502133482 797349693 979672981 10866403 704143510 322345043 915153957 832646712 907114588 141686306 269589544 827105077 985681917 253294116 492318230 976875974 980388289 281914219 510959335 406608451 666775920 40127129 450753382 17746632 557955950 457999171 924397538 450529788 559533959 399293322 552446599 429581361 903055677 690950297 887460225 375833896 897750479 834066341 839324617 932030889 932040692 390257749 939054128 787964693 987704257 996991398 998887253 504010992 515965610 988267104 996020726 845321973 919750422 970713594 980592174 704833830 920809102 304422148 963979008 893792749 967953444 219778638 230068990 2229620 483869357 203828840 870580831 465191483 518717517 762528727 992416485 279415794 470662692 73245374 412598763 566293854 971554294 53953676 944077031 939662132 981907476 180774791 203484668 474437521 756556758 749867272 981366734 128733260 805770276 78199470 198250788 254726957 966825875 173718252 397267675 634866538 879654653 573410688 868242600 672252937 689422281 864978819 872368761 720568582 918833927 958938528 987191368 192529743 541209206 986515014 989092438 140547031 431658185 950760272 995121181 387796977 582643838 565402248 715185387 232738523 295851872 697248986 794495605 38181031 857344728 128119654 347680613 4750230 790025510 254363345 808313417 881803167 916629235 435848265 579886768 630703035 780492668 40150343 835437573 547932712 963310817 343263668 401187451 327436727 791819338 742998097 999578080 356183972 601956212 991456029 992481521 425394067 482162321 431581004 546860927 478323449 936714744 690938586 732341829 358823123 866264685 853613902 938653956 760975995 947596783 314982365 532103421 857667501 872822980 413839500 479815708 886781534 928993316 30733402 241462845 347000245 740075179 204619014 359735313 768281150 812293367 428046671 616802380 162975655 871247001 572592753 611466443 730877595 908214837 341053280 415798422 31478816 415373200 999554310 999602781 573316408 937394767 541656922 729880821 354665650 838690074 597077472 699610406 509255317 639909396 608076673 620628327 178807320 338156977 829454581 931275800 324689267 357902337 275749186 540730937 218777698 434420206 932372899 940221391 140532322 675408831 314801376 990963825 113713301 897490924 201598024 780522616 783431852 898048252 864979893 984221288 335640707 550647083 902499785 967064786 33264361 867055353 323906518 823760723 925507996 974302723 696552771 781657207 19089140 72380618 920778803 931825262 404243575 585701146 39436099 534878754 650478416 705317188 961125094 963593187 28257459 947927124 223012377 229031857 61942391 184582613 669376546 863110244 525802461 767038258 975400405 995708463 281931215 815055616 250983915 334983063 559481480 733980667 723667348 942678670 637967173 971888760 690869956 847037318 205241503 677750825 328644739 593778653 933290550 971785229 42340098 144626701 718098866 969016821 733942014 995443164 623782355 884059235 41563478 959946135 172188783 723346730 8288801 826648326 987423418 989354037 486447188 741577806 963037013 969077797 626366310 988734431 920402629 988223720 456796339 842880172 283884420 763646145 7844672 24150257 24175802 250550900 599858979 787047247 29762967 202531679 20643921 910167214 751347174 931008192 70263252 522448698 211417592 549912143 232480755 540810460 800792868 839221792 881364546 954050166 188636772 724801548 327298841 455540011 783097041 905743034 214136446 652614143 256713035 663234962 834691493 886670207 223213885 537056266 196438830 198527768 621253441 718117963 369831500 402811707 56942933 298225931 747197392 814668723 760537385 886423709 690580095 733448133 319306773 678866782 868030546 906081702 688464091 932513758 450987848 915425366 337683649 784904830 477998995 796060048 825839116 826352032 853588903 867755137 57920484 222726259 535641693 701152066 886560901 943011450 743889130 845986421 381935758 420160498 700485260 784117372 977662515 984452361 746094693 793857965 181919297 919359386 268844466 629806924 600865275 884207344 371753559 712345114 563845131 946798293 355280231 574392031 978520548 982525677 22950041 664322385 774847667 888157695 979085543 981351640 5567942 854635139 831680161 921281635 209800536 852021272 840296467 850133292 259874829 921226820 719908658 997415329 782111142 790893562 694715091 811131156 899016467 918132846 995252875 997691411 49790948 468421339 976737112 979762374 146919486 274369839 813455680 987805315 339147276 435943784 194246038 901030362 348658862 847085528 291275606 825900178 262489324 531793279 221013361 906411710 263047482 859507263 852720803 958258019 174865430 259187984 986097317 986725709 230598600 324063029 754873130 853941309 145875638 531046401 19313658 380888935 530684647 975738287 62696507 666589844 484764087 922323736 266914888 676196799 610232926 817068777 782177715 956949013 184378530 262444203 887217468 994074130 348070362 423034320 820040434 843226883 631882489 884432415 97677607 362403538 212500439 849024216 963720747 979893625 735126625 791473219 782837077 792741919 305271914 799994395 367584791 883233648 852949939 936734779 338103802 461957484 415470333 619686142 619680856 718012046 250809817 422861740 771497093 855062765 931049858 953807183 944175591 953875361 198478354 927353090 384360639 711571212 334593499 872077456 234000029 426619788 225885348 652879350 472790846 943227798 208508148 642557118 609510870 745706554 783496842 916113426 834125330 990352981 473667430 908244274 89722832 392666379 723371096 752665857 275217608 735037139 24980735 604533928 176917723 384023954 669784681 980742538 568131338 801839782 455664809 854194435 126148707 504686240 151757288 320564270 142203008 293983191 101818139 560915933 661328906 855298591 674374083 748668753 969504254 998317177 454241764 907102627 564252783 782295005 619868173 983412888 161636503 887934799 234858059 641701016 794337428 818254680 46292677 58020971 308218622 662930623 552437735 791528653 971691163 992766425 792408645 915612121 98460241 471891025 689008991 915102338 998018790 998129416 339020009 942637990 625198664 753686767 23796593 499934947 654600728 765523449 148747557 662380606 695004581 795862767 331374916 534787932 286326626 742097231 799395503 980224664 169273589 227943096 343228499 753261801 243481425 295280753 199702079 347802637 615015148 862857005 259350018 311203962 496755493 521553132 535684005 909643377 549238195 703326256 377459112 385729745 93843672 324350199 572441209 581446741 915710377 979477613 16794115 348173596 685614724 912034268 409702651 931677132 308777477 821880872 167293148 757452438 284167977 655973749 58268051 303514355 329363012 982155531 69153728 280728683 591553371 941194488 652054242 701615369 507532350 835833509 299067382 799989555 354060896 876667447 976364105 979467205 752495109 865183486 650746056 764903107 995669006 995751106 132041685 596157087 965581252 990078660 846178367 870884843 313972505 842884321 57024726 945572502 488009902 816673026 514316461 977553947 840817850 920801194 276342501 947966371 950842954 966721778 397858612 629392582 38959338 916371231 82971404 642029396 609084809 815519935 161036205 487377539 996135926 998541186 468073248 489054284 173480939 726722243 782891772 930220970 766425656 902438593 803205393 814977396 688401348 743064962 730688098 926012934 272978418 511922515 313379882 675845199 753619579 895930900 677619588 680282059 629728192 757224607 522703689 964434080 390351696 661733649 756398316 801610478 947798594 999565983 392468692 547163912 364654716 909990978 476912606 802765186 712193321 726653841 241586639 456761741 314183210 726186259 694899609 914296781 993172082 999550365 579954922 584343079 711326800 788176692 714425159 935514368 184730002 912188691 662578621 727518999 514616249 844919535 353215786 854408732 751163092 861236483 312579251 334874639 621797078 709356877 508754938 587342254 817284291 840116648 417186872 493070611 653949480 835574134 932586696 934436613 177633524 475237800 881852582 898986139 431821136 805482370 930456882 931152357 260092234 789448074 64580334 864424356 73344182 865139412 379752888 685623329 277536640 340258805 17234819 418559894 892529943 946036313 261657186 990324001 38348371 834310739 79791468 269143490 140143616 599844396 335905256 604247314 73857479 503827481 613408721 974435173 716082475 867966113 830882783 871099875 502715099 582277892 114658102 931486525 346786506 805957185 209783582 808961535 188176918 776506014 914460356 958974962 848713565 885698949 38995321 84632477 265820864 963786325 928278968 998726604 639457323 752601886 936561588 939557295 160942539 605070024 233307129 251581996 565896207 797539075 154809977 170665479 680357225 775723419 47396936 901020067 940689459 985225812 203847696 343835629 821230045 903705665 81349927 587882112 216179736 241598889 294612233 741321817 740089020 761607132 120491234 647276210 645912846 699195608 74197086 98269555 481255896 608538991 447017189 578799485 824298854 892327455 885414507 921857174 596443840 685759214 830130301 837249607 104747106 447628249 755700099 937353541 630611916 647889118 57440310 84439279 995974742 999164150 18191280 369459530 552347698 933057116 618941247 866854141 781410967 932464975 266809590 836904433 199726668 992180420 942057771 957022331 376694394 892316979 923837555 997964016 2525777 527835360 195875399 446897024 896574131 983480148 338845125 702961562 431976197 932836286 899359705 922042274 323161913 788532344 797080804 993317612 46670968 112951767 821827129 833517299 173397922 891532449 915545495 919428489 318860761 708399458 684103762 711723840 406495082 612204979 388423692 961369790 697471439 789161804 405772745 904764511 238934455 757800925 266774863 506302885 777266423 983345817 162262720 663642955 671949043 931275475 32680519 802174930 758092606 869750146 946577447 997118543 299693543 761246205 472994757 530113543 848583748 867318866 126033582 142478544 392901811 471943814 768142107 905683001 111697755 301557844 948969743 968700724 604131076 950399866 319144458 507060114 101800688 989560285 487828012 754133697 236339104 890623360 953923225 974853605 871191113 896178245 815922835 931340995 870599369 949333781 898057941 923149447 298182976 608196453 893166070 935597966 587855986 689953208 716787719 762073236 76656584 803858591 418615555 706265151 859232871 877034395 813362941 828476757 24319511 32367942 771121312 804512811 60480241 692021660 521632359 597951057 927673379 944893654 862260813 899508968 686763945 934929655 488948605 659029703 563496309 694821976 290463530 574462375 548274121 558698540 692303445 915650411 295951417 854226776 616356879 836526720 234779637 364079773 859003875 916847984 251680031 585726973 979172130 991809425 106766204 160335173 102164814 946368253 435329831 754952258 63403113 639676081 364584479 896950803 302688996 988951602 992078811 992405196 93816470 167438035 834249225 934069739 893750074 910604443 356491036 462049234 773060184 913632461 749415073 918382774 531426627 681137816 159901949 353047919 98601220 576018910 477545517 886206254 911681344 942286365 945722936 963948560 969872818 978601637 931483119 999517914 312955077 449359818 627419970 745062195 17719795 226560898 349461057 955291648 688204506 932998053 450998461 950755190 995560959 997045736 92816328 913663218 556632012 872316924 98725454 885918413 438800932 760338232 398958816 785672933 595089537 694217838 766430871 839164103 355597798 417903596 222941837 452522706 852924045 940886659 582961579 776900636 944217231 949845535 656258025 894723141 285475326 396009430 105687848 198836800 271506458 698743666 9457392 436321522 43287943 363381754 22417928 736886480 903524948 974855803 719712547 743920865 954552490 986461893 830439409 936223974 956551671 991645760 879002363 930474892 352258184 819535371 867699645 936980258 583813858 957194759 936917233 974223013 310682509 684517432 902814195 999494488 862800223 937425497 142949830 292619485 384149524 661328053 419184880 691727867 799167443 951345182 372507623 838677357 817626174 989575234 727849583 903299273 129332302 152035163 962509848 995565485 381295456 430756969 266905796 809832595 188042650 201915520 252612835 724495703 619673463 658618399 395777119 832795300 77155022 147475538 264384741 988729801 439827780 972065414 6691764 355002722 168665011 383907550 83252795 709265342 222777291 858120845 878170292 882331759 364385385 675974127 720588986 724761255 386608489 972190423 297064786 922856361 240515415 927499905 72478831 909888790 888345085 933972730 319042310 737875265 779765254 950966647 109131763 463527558 298635271 635372941 775492792 912616457 851527448 883862793 353899464 399887950 89576799 438422048 284742974 548362689 441813880 443386684 572632844 903792724 24702761 428349960 571634620 841402047 283415501 847090692 272044704 497804387 975642351 981445864 498450217 787473239 931795397 973089425 335618072 405468169 179148018 193130036 807492164 985645056 111639784 933519467 191781038 684311237 346688435 533213649 725854218 763514262 57411361 99532413 544004610 646807420 213400078 271043453 48193265 727074194 730926685 830570404 808277741 969642493 135529190 927675133 614915069 819268892 178427806 774950402 959181496 979714643 744811190 862274081 184598613 466594219 980162120 985059876 280207270 356371915 435536716 512893212 79203314 805028448 637758301 926876177 887281694 910376789 615076352 832807818 25519859 607609708 48199640 819603116 32503388 853740816 534633063 699451976 895830815 936010621 886303708 928726898 579553113 626185956 760177592 871676143 80825203 217126114 75629925 489818943 426136003 606430613 467550269 846742185 9571524 852628003 422782914 790177555 564334096 671913607 478950166 697624583 488721231 567910520 933899049 976769810 269761902 385114345 825298221 850448031 664096819 799887173 578968024 760625019 625038633 921221101 426070947 671398791 418265597 899180405 225903623 868756278 22436171 740856837 121631928 821378652 937877226 956964446 299268043 746614400 272502989 632841668 293108898 689055501 601754407 644020175 754126654 877350479 708484744 794612685 675226034 743627631 978066801 979089811 567513584 826595941 972075102 993954554 773793546 984082059 593750786 860279120 420124673 957719277 548620887 747089569 368952664 606454030 868368824 911172191 814458531 958792232 614933398 980215062 296009142 956469752 641148052 865217195 961101642 986964601 622843464 641652780 704378012 782709495 27073591 368724131 933189391 953239545 986775763 996871754 534538500 680137089 983394018 996733417 112385282 688170826 400572324 805142770 63802412 726873122 559268916 606848529 5672751 601841406 515742668 604125751 169914154 312934789 718167784 891677593 465056578 715378128 824431628 945839523 714648591 752467097 27994417 437369616 97327880 281755229 20815656 565923055 572776093 589741253 893902230 901032561 477343033 493201308 151121986 761900474 929082838 969040314 353779487 441354910 16070172 313987636 146409948 989543357 233176371 797652795 964344100 976099991 434070046 461926805 953896303 981898838 822566517 837711729 836653427 886800890 842169139 849404690 542053566 749383849 52537300 975311136 507219590 522573290 2148794 191632916 515567336 687693612 645460791 720957186 145198813 699426541 219386050 610193810 715983841 867879252 299725786 346140051 928082753 946657316 215001001 959283532 749155542 988597618 337344613 450140255 685134090 795843815 136697880 595090317 787600302 857055864 619360132 643203482 452081015 530359484 269407520 799638307 495888693 902379458 622517581 738169862 698192010 996974329 777517121 866569586 55319295 244234288 985575549 996700497 333379506 481409995 908637249 980599056 934081571 966100055 429759799 774367408 245933778 875513798 483748266 535382287 340180539 860228766 859738883 872080657 427060995 883404621 546408326 814621276 983146485 996961377 634067220 929787156 987978563 993141520 743354097 786144940 991513988 997841904 496241624 594457849 7508707 792383204 324494646 409804424 397098102 544217053 251461927 714144258 5776402 126016157 353797058 544452445 358720186 667484106 667248776 819702784 526904994 836534231 590064075 964509104 573726619 657879300 570444366 984059678 180604149 797711474 859481756 928717603 552894681 700666821 266059631 494178964 944422899 965601636 348625277 543376698 882995165 988865798 371877308 937946834 580118179 966109537 840138044 995751816 434997042 619037357 705201619 752986037 678043707 701615959 713843767 825453173 829953526 978732428 603534613 972942465 346674679 751346718 628042898 755087672 41672298 432801218 946985080 960516612 122183791 662616076 405260890 763940350 435217447 541387134 174506985 203923309 569658498 679703995 674673752 763804853 97874332 396408681 345157738 861436492 933430600 944118828 582984352 676287683 886856150 927404767 804652911 969167645 692306770 807267385 578203836 641418476 879114265 962495220 943449990 977025247 8188509 769339913 771373223 869793665 25870651 496547383 539287771 732954788 650122080 911391389 630836881 778582290 881004156 907899248 868110807 889558372 381541283 392717072 98349216 940705365 914169983 920120785 671830821 964056690 900148726 902906857 476544403 848626918 293875418 569484923 747165067 968723436 400452589 545207077 69305902 929691237 380281565 706002650 638919597 852764381 289901506 712074385 460934291 867942243 433194565 871656072 226817879 887565839 126999266 911153220 634813527 752619756 191808850 726630639 613827329 908601751 663642659 861808331 300454195 633588218 465104046 838835632 907692262 910651459 120562828 854953241 349821350 979746389 209928764 711976916 690487847 769914709 760959305 965200117 579099824 602764839 143231833 983539341 192383779 477460908 42376043 684315847 165677322 314306691 559582371 789450772 196495717 922563580 757958261 941550285 811014169 911218425 738827314 884862046 447757699 859357356 564489757 775764404 76187867 215157406 543486907 572548706 607811397 898736026 475641898 840504812 891160817 922118066 909575200 996725825 515651196 984593138 54240340 562945391 798027081 979776114 126695973 423307351 925568464 947079955 602858398 993344443 985361953 987511501 940377710 999185932 996879238 999409925 364379505 753491300 862181706 919274782 44077929 542652225 553086595 858137639 377610095 480086066 985974316 993124292 959791484 998129923 46937541 710034677 863812952 896384163 70048354 502470095 356817186 466573541 872667015 934298269 655448414 964773467 202015587 401116638 862225007 957660553 759772884 859837544 130040916 415804402 35741762 143685157 283832951 626158973 97592756 152821194 291631018 377043673 213600221 990142943 427627564 656269072 154291586 244439707 363151108 619354705 223802689 933889096 301445600 687481795 379520470 976055774 797222312 824020874 564641016 920459790 231712475 901113087 21112286 523447702 736621646 946612285 465576863 633313878 804503616 898886558 707241410 837928786 356751183 729048450 70244079 148154439 304812270 422740517 851774062 939588663 979485209 986114806 68016971 227218883 433804448 591422417 926697743 958211765 683662863 808588095 713985093 870333786 894353785 956159512 288240391 891255838 673276843 752735871 45851377 695829749 117124857 711178134 968566786 972620452 516110085 674610589 981814688 988960822 150486861 900927110 177481916 287321483 27388921 329683416 614659074 775670800 504946752 935853960 411282574 743786858 496446693 777353586 126451761 684577338 437989323 821779025 378977833 702756783 214336194 951736343 26477216 348988847 92562316 587224349 71653465 368422616 52139693 531819445 366324883 635170602 873026365 971111534 412692667 681113542 51737744 930856279 202266239 656808244 426597220 568966238 445109416 627080914 399630328 951113823 80701115 933269729 883031720 884787636 527869838 595789000 473762196 871116101 39490249 298215753 706448608 892477092 226197359 358626130 898628511 926113528 865201672 907060109 519828645 691259535 802689926 862318780 762449218 784069643 42580921 838230112 55575784 117891364 344677627 827595613 285065723 447190449 461457800 758392303 336827197 799315515 539902189 959239188 443927378 626378593 460137954 749962348 829629160 893055499 894197005 960089160 518062692 785368710 523765064 688199941 244816807 627279118 138303554 630204671 120538733 739952700 968805770 976833190 282015680 799863963 683045957 762399332 394172358 850795297 407058191 985565823 902534133 973319554 716826013 729896045 331635572 930910001 335818283 957071067 50242658 283806104 774092746 940909925 56161466 569698858 629473787 678725194 597084437 969780049 88156994 822148681 161393798 578903363 330412634 475045430 859824504 892141109 457621917 678489395 697016407 980685540 640807866 827150002 205726279 659860004 225048591 416960727 288801980 818031431 499309114 565707266 548022819 871933484 83711860 236299499 579206162 879901067 297262799 707974143 736983522 907366012 686674284 842444526 71364429 757208025 400988412 476620509 461151112 737262131 326211145 613380684 426115764 655699555 995458298 999419592 775575667 776972467 649726190 652195208 97227009 964613466 933727648 981479388 524709159 920771833 980432585 999918236 270945240 623233985 384890378 445922761 481874814 821968615 243333524 626224413 111103429 681452642 608197265 687197129 503975983 639313782 282902293 300760100 571132830 973757690 962660408 985184643 481701820 767029931 836127321 884039721 298579489 641269422 74775917 617027119 946728911 949003254 378808573 849289477 276332436 768789040 636091288 906958658 601606561 752675230 166083220 955958185 403314817 578536594 328886988 874321839 331099413 798994122 847048048 899757972 985456217 994317960 917512807 960047033 902551002 947687434 374829175 792376192 143865535 953502787 260576679 466124195 851456654 947639938 981696909 997346317 106424535 927657927 157712384 844962736 956461222 986413049 573578685 618782616 837415995 868915825 600250415 732502441 69982079 208487352 796853186 955888992 853006918 894731761 217907809 992031599 833046814 945046595 109036006 469620657 267792466 273134565 691908119 789532311 320786944 481795327 589815153 850080361 532679007 900528753 259862076 261164339 63532744 507211175 775991189 934128950 845599013 892955917 215723744 256186119 979461449 986140300 205610781 259069843 166483834 204355320 260655309 752345131 848657710 930712799 187466406 555033067 520492402 895664420 553979249 610904860 503510960 854004846 224964475 553254139 734004911 938554775 39082664 867077968 200899563 820467153 821187866 979819149 954469414 968158162 644519833 862557311 987421555 996667658 838310367 951334375 590248368 796152552 612708086 871086555 530598445 707289574 392729450 898268371 457068202 774960992 431295573 831476600 175306303 384841310 732015863 981008768 419121464 998232186 167119440 303451889 128129365 464607270 34659130 458230706 967259119 970324821 225298274 666488128 435701779 806203344 338020101 644395737 345605968 713256506 823626232 845166476 886787407 976893844 74261511 854233643 356565642 459034726 461014062 984808762 850829054 945881594 512739553 789437996 333815514 788913621 682866456 978952081 252524033 402532597 725772255 840037126 577921432 928839682 268582102 431667454 448569297 794844488 402645924 743832843 750930373 960240256 968111544 977006351 673315157 956739820 45530140 213313698 157611444 469503573 356248549 689341764 368167542 665769789 851860910 973348014 236065729 389942372 505158308 527453848 74379544 395602584 390008319 536291875 170097086 480206729 162894194 755053215 908046317 986304310 690215039 810256941 492831353 516050702 788433310 866872483 969537105 989731999 970476237 981420902 400882432 425500070 644884443 708061913 905957244 997852743 107092229 300276902 979026708 995244980 149581 443513145 851647246 961258408 497629420 628364417 523717496 581666148 168645682 467200054 761136935 774439048 745512884 747554064 427491949 543557290 731181695 800934812 204353454 300056372 924112897 982186780 251589574 349124525 81927425 322504874 896067142 915761427 570557048 614919474 943085873 944264153 315376504 977630630 926889342 984370135 899096274 945063107 922135486 950690653 863008540 903378215 123429310 357830774 863725876 892823634 254189868 678440155 719353329 745401044 240811235 409051562 651109500 753202872 508530111 882417286 576035354 822278639 848406215 986334604 145610338 794607933 845008906 911470321 741959774 771013976 432550881 586390004 461804497 668778907 796251368 854512404 605483430 691478198 607199581 847729578 292557790 652460278 607232614 882153063 61134130 924567820 566677359 945485572 527490147 533818269 914265889 985504427 22229798 397315777 365181451 477367755 560603125 763440881 684919321 688576254 396041673 527617527 660220955 660899667 321724687 720568250 881493315 908358679 78407336 522720341 216608883 479814016 94803324 220369147 342651475 726170358 785376702 995832525 890495763 924275599 175684041 728254873 484498907 615935180 74273941 600145784 364462590 563618879 584003688 982180284 304871827 345141439 390319417 459409761 554090999 828336049 58146997 173807018 982322093 996692448 71887262 91234815 485057570 661512762 666327991 751891894 487781295 690731865 297646979 403896378 815146681 882863508 521192079 881740295 89413108 106409064 49751482 275861584 198034828 999148568 414843681 744652115 258588658 684962164 508204296 689075157 710233494 793734250 604843527 960372313 783046974 809062656 219973782 643988504 364821613 562084343 98267085 534784517 330116649 647508702 171812847 587052176 688748846 941619876 482898043 511803398 815679476 955032804 269188411 529692886 65045350 575114790 642485272 984968742 740153785 821678680 953183764 990742666 246824440 695988815 111202328 977353604 457875676 733175094 730756455 942345703 375088275 497996902 792248135 924236839 281427937 456548689 75501624 795528995 399362948 887812782 499091146 566534539 979130650 980163657 3529379 302293200 224851 961451512 647534636 682699055 258177122 830997473 976312611 986754143 205410471 214263466 137059422 780087809 982126513 987205444 146568633 225640434 462095942 586051873 724755266 813989327 9908106 872479826 59917014 878230523 356533004 689766765 546308070 720805031 219510878 860857519 687538790 781483878 386451174 413784145 577729154 843345127 584260481 660857402 815301918 899554475 28319575 548314857 871811062 906860703 717102007 787792031 147267179 683733774 870717043 960582039 742364328 784397051 8568339 795129940 585030572 967436254 155364734 756894645 591537188 623447440 654432232 985098960 521416108 670873955 523548506 667228525 250391103 944458160 947426779 950050261 426126726 673285231 11589953 586712217 468362335 798791079 583880474 731327829 762233373 970873887 522461628 926928268 563718592 584456059 963665364 983867390 60328788 676780601 983807277 998891481 603199062 868870280 499812421 590242856 735962741 762815084 219875700 423856204 777302006 915337242 916250956 924949247 701904939 965286810 302535730 618859390 521178518 711445868 691389874 878302330 122209284 148914431 104195953 607636788 49374448 222350261 442177745 753035086 509521272 516367725 310330017 963712912 198323869 886010704 295134648 716929913 474350309 955843867 908908640 995173441 318070341 991680508 912284439 963118044 620793737 921416391 168542640 804728524 405826190 876267374 573809910 782546851 93165728 868150589 261552953 898398061 161180622 238252397 236388037 676046231 677643462 895485785 964670952 989134344 971713829 979887026 919691591 944089495 159821079 461377633 436282361 758521222 312985738 895126071 8011632 443823890 449509816 986901002 643767263 842027784 444651654 623546647 530295535 596229456 288828085 552233070 607758797 669750224 383977632 849391002 615761887 962877837 972506673 976561658 607524867 922797334 595492285 909196329 684500275 948044937 646426745 762897945 778158819 935982069 984461411 989495381 108153287 971210590 301423837 946648743 161052015 237938532 583065898 940545417 858979719 979939797 960929686 969424067 148903672 191755890 178513975 927643713 388890962 724229150 532612432 562460370 822918183 943486048 35368014 355442310 988499034 999645683 48927604 451161175 461408505 740363864 445775370 974555744 919746799 970722668 586167072 947716441 614348821 933980497 252454032 386072576 272538834 706225810 284620011 600233732 662399202 725225311 131094612 809528660 761915120 817900763 477862766 875138420 147398095 910435787 855443308 966574851 871136500 958351837 398591152 730711275 494500820 597677017 20088937 222806343 733033117 829244346 370861368 965165579 878964996 928334824 101016894 355302493 151162581 731463399 822585799 882381799 429631992 790374933 62095095 269206067 445584235 664479633 293769335 356067562 38823397 219200086 282214515 377366530 247105959 861528662 505964515 716898473 559462892 947953388 373044400 930390668 197718576 646237893 748767703 901023703 583752911 881180418 483470078 789082161 704074416 920581368 852888269 907683282 759760240 862157850 597905467 706945281 725511985 850614676 29480253 728906172 475542929 984152312 611287359 662881299 529464512 622191807 629040593 719178152 722699118 764272222 570161038 586345357 106931428 548365990 388882466 519020687 959326199 968850554 134198919 511257704 764350234 955496987 952679159 954116132 422507263 551068213 710255890 766658499 330544145 918973493 347930811 944384273 690666431 854726867 462771256 919738760 800014548 982097512 67793532 253888802 956727534 993348572 845622841 876720579 235513982 467136408 171158737 846305269 963934247 987441685 980270724 994978875 584649360 767058354 150715518 169989363 320875684 580928526 89163865 716102230 626849637 990687679 407752936 691708146 807354042 970856445 466149277 956586933 465366832 662680724 777289298 920018513 612514856 820631086 652847134 775163253 272756898 392499845 502142397 786085524 335744330 863355575 637806997 679990558 227002734 672974435 553622671 967854619 307061220 824844676 178749947 744718284 466405420 872974311 729752364 837489762 495428399 814624591 193489416 787371747 970674298 981439008 221438228 584379375 529603734 616041184 515924213 619232685 93413589 169394285 152235327 159364326 369613646 893654650 857690159 950752236 43059725 787550851 814870447 828969373 914726255 919652266 861034119 936185817 988036450 990174536 409198383 423316432 136487991 258136659 786716249 800678593 244247340 821734805 424827647 427083622 842104607 936225516 299680481 312398937 819253782 831590999 690409877 822712789 930644076 997742995 817248338 830931186 980977243 998912802 729296185 898608349 123433140 483555719 958770913 987391403 164075979 550338172 253276801 350168901 312566243 827571690 397967415 858304257 140312225 583479154 403266032 782225116 839513090 889901813 334739764 346436258 33768344 735196406 702005406 934690995 610314023 876934294 515600577 632106651 951035535 995629412 486934326 990320258 686566550 818627150 668896108 869388148 150476203 272842842 806277602 935947631 386128955 428700965 987642479 999900547 942123605 990888521 487277613 829407727 386806735 839529819 458038227 828270622 872381499 882389837 934276427 982233824 605357291 884342979 846103406 915775245 98654859 822037231 107455834 757361676 120804439 751668762 368315380 727833460 626629007 888825401 59652060 294927639 373298115 843806847 535464916 834918107 743309446 745157630 672122310 945169586 934424436 941819207 837539896 892667076 101597132 737130641 625471221 739648589 884534570 970011228 231714744 662289496 459233101 608801892 969812980 992250089 620175976 815143841 26076461 831851096 760788015 813221438 272118654 826336278 179875001 427669263 648944792 918132383 258656367 857581011 201701078 311948685 488282568 597859384 77092166 971538892 244610319 986055941 464103000 669490621 472168725 898443288 477196308 945830412 910884725 982134266 794974467 975916954 541623734 594342038 398819313 767218836 158186382 357529532 254568902 359460952 70049699 871441969 88006150 306874221 410593564 857420237 409667749 689501983 417481844 645717181 69573961 422388397 543142049 815512421 514325849 845418012 87937807 987325438 356833305 780137113 34059783 985383481 482113984 734242253 750001669 819677884 509115480 913453111 78264039 631455377 63474788 407725599 317432670 677268025 481231722 896307574 11872189 130436428 996446647 999349152 615243840 946548682 548019067 850027724 838145493 910846367 692162858 750490604 996763233 997893037 835805523 850630816 838639723 939991786 951752707 988287781 140232119 961745505 571283612 743108366 556443094 781100860 550482830 713922017 30457738 738351752 95907158 898532982 902106294 972484449 142625086 724959475 690056411 738807900 425418586 930887648 703981564 978087118 503025793 826909273 83601056 455233512 889657454 901270663 557792036 585075368 149349929 254910676 615442000 665138423 496709383 581653574 94919743 529334404 97894518 310021308 124627627 333128479 919912630 953467159 490046418 959217835 710790664 738969091 275612171 412065659 369220814 932419378 385720127 963356359 865606963 907778087 49261020 628782378 477534466 697367315 20067246 82329157 204609064 792204273 216583717 961823522 950317326 972788254 856910884 892542966 571617604 578966865 50140915 949018282 640994646 674746737 939420600 954267809 280961538 597601420 866207297 896420036 818816892 951000433 523627607 898591440 43096896 126225136 825631470 859864488 803456979 825851150 336630969 571634005 368516863 486847114 805247269 883906339 471092500 532457847 760199869 853557445 296597503 603532711 152338317 846160062 684406095 998195983 646798042 927258366 989026101 991566848 770983361 808211060 754073532 989111590 665749286 826460460 295805907 834489992 448871177 674463166 504451174 842217536 450773894 759934116 597695891 800313472 638582125 778435653 700806064 829751760 250351516 866163154 283127527 321497745 904110148 968819966 910832578 994933087 200816277 678065205 626746398 848211259 344186096 600937759 98350477 594641537 102977898 150092901 915481792 922475848 326984129 837477363 941130431 963315115 494062601 943475469 766747077 931715408 795360126 856608509 427937979 692031405 223931015 865979510 339715677 972520698 587752476 770760522 834474745 844441253 96894958 199995417 252318592 390185395 749374591 975347186 138281830 447292374 272551676 374454825 65449026 657564922 684566418 782944473 599848551 910987839 191067048 847770524 262077422 955200707 257904356 715155911 544250800 921564434 139963958 795768042 313155105 690752343 73161052 951062835 586440396 975977558 617834420 977307689 900467874 942790754 109254247 355526630 452722751 925365236 853443651 919345408 193148104 916140444 954576932 972025824 385302498 885330344 369060628 923133454 166657307 358034194 289777299 616201789 392281114 701000253 705428524 994469928 291160953 875935208 321296532 658712058 857867695 929533073 196133025 959686963 351232635 659772055 168792147 495074378 353514792 378585437 456908944 963292881 99117435 686487879 681925018 851283606 803057158 984624023 835645881 964540370 573574743 635312238 848380693 937785888 243252123 949573748 895692274 919660911 293766674 931118771 677161589 768819921 577739890 857114940 410580988 640838686 483961464 826711081 969246061 974346543 803275743 873350861 689945669 691790265 518401797 708608377 674067702 968484414 767149685 867975241 462098651 658794255 450110972 946400254 567265813 892008315 737436440 867099189 713787323 996547341 166851653 465302073 52520736 372120309 661105703 768738653 284970419 882931923 545131479 791949380 467451804 779833519 860170900 951261369 697114398 855793992 701699902 921928096 350293503 541887427 217498373 306297629 697519795 714447083 248710784 482280215 560080832 921627039 927811420 937197506 385797937 549791640 679026761 778768417 963796400 995273155 562836315 824319932 858625953 958532507 930595301 962931578 625550935 716968036 361289907 745694678 982753032 998060927 359152893 941754030 451161312 813142624 686961246 912319453 63125775 979724296 626653193 705708365 486954799 677934721 583025915 873593781 324046184 983245622 108871163 908993963 624207206 684695737 55384669 135804657 663733543 886293084 940113088 946616936 679126715 724071921 407107027 498367071 729306915 836278417 807235457 951588686 936836376 970275268 485223333 699437617 741326623 894746628 390902524 885427057 967419657 970671083 82526846 154711136 766166251 839936241 951694854 956835706 834072499 884503200 450246961 470758176 507512385 899176933 878239580 909447281 324742953 432288073 99677496 305929687 544499875 893400682 822944506 856251362 475178937 526383533 289418513 748877953 684470358 717503669 850560698 918499813 704177459 960771910 126537264 140958635 500569826 553341967 202475843 360688701 990121394 999174675 946904727 993386923 699014172 886522958 231346412 418220998 719845727 759272157 524960873 530486231 389015231 627391895 583012297 583989258 458553055 973416534 577631188 650443837 608038975 787164225 457775300 975032452 997747238 999344650 22234695 180294003 947925449 956973233 149905485 824519310 496726571 709100661 920594288 940535805 773391630 842907502 747979578 951604674 740912493 878984189 878040098 956278190 585849349 876684979 814275072 953928244 792145195 969084269 433394829 471916985 752943800 862289980 657389043 919187081 140701785 482605608 407798751 890976116 909250441 937698147 999946969 999983798 743118019 854652330 287395047 642136311 51966030 689707572 448017937 828401346 278390549 671440417 954300940 985985224 936458652 972194052 536534776 957488194 24393743 499035121 396982585 903649454 959478906 997312607 847324890 959242431 397298217 638936052 924533937 988444369 915904801 926529485 989390592 998598441 765791752 904745013 458621860 620906731 507097313 943835594 85292839 912806085 721515934 847328745 161688937 445814283 663335120 821385135 905061812 999676614 545975668 881357015 745998962 980536713 585662639 940192325 640116114 886060621 869336564 919048244 198906496 859447286 110090158 241918472 637844040 746733140 95845755 216407702 827531417 940775002 212797683 937577218 942285425 968647292 289711186 727710007 18705325 661218661 785243181 974151256 393305847 521617318 131057021 787730741 731716296 944962019 937907124 995552839 190189968 511446839 374495810 877023394 99006885 317903954 113024468 893945808 142126570 362938909 686649170 714181207 3433712 741064554 108372127 186439930 840719528 904981428 742539883 911446357 650010717 932192313 854281819 874034755 25321715 865913756 930982550 936993694 717181863 934147078 134727645 540697065 886816597 956583781 596779858 619636028 458090554 658351156 789827853 995861603 865171358 865641733 141882468 899846434 114984970 205605240 527421486 565955318 933379384 947024090 813012735 971595702 552405681 575874994 85721080 954697268 156616777 223147989 701671907 934700161 75190041 339624062 322246770 965945678 499479330 784113724 417852252 721682001 260362520 939311192 570557929 931307316 330032018 380606203 384475032 935675325 87082903 959199526 575373268 767015293 933246512 991871139 666886194 966969676 736641976 754955837 805322467 818398832 702786089 705843011 293975898 425895314 779980929 786640441 315251523 863648573 623178537 980494242 915434734 981890839 811661438 966804308 967613375 990832745 465426377 962235652 250572589 778852703 568408951 784365942 780317314 789689141 410804321 722083712 624970513 999701603 653421944 979881259 12817183 552749835 2620997 161169204 120019053 435640997 349512527 461497013 475468474 910375969 541809360 777283724 243585889 723095009 200503115 535107217 705043861 746079360 8786081 657561988 809960965 892889195 65997197 122907616 425449189 663349113 580859502 665424826 669219935 816612979 544445410 952659896 371718374 979431677 68447343 535805493 545742435 583069934 542469811 792534496 2765872 184440057 124681002 521645126 395821850 550447023 430708979 941690906 148466314 945236224 262379900 517590707 225093906 853589976 701330050 823426484 794493786 893999482 904708108 921787667 971616644 995617300 797838517 864474209 509987426 874088429 631719512 872000376 908314635 948136383 895275564 958775682 310919607 441225113 777816040 819998640 182654804 946289610 670914450 853815553 133384725 957512077 804298503 955475712 570217508 874568540 626746852 977528280 907317368 980638138 553312991 712560575 776487095 978848194 931179219 932419208 297747797 878484052 27140692 837591441 867935652 993810605 399479764 464594610 17903635 811693455 349534893 802129573 370117043 840904397 164219174 839553711 334639919 805571718 973766839 983546907 216441957 477777866 89923010 434773875 667772184 776851119 132935837 199003062 915794523 980992033 46191155 967163847 547122709 707743093 984338468 984512131 560877423 853814922 513255161 668738537 869649897 895092228 429289216 980415537 522947168 540662527 145367442 510442833 780025099 989526221 26658092 79216702 848438309 961070563 203747738 998909906 553325512 736013569 344894491 448452150 753995847 993724935 776309799 856876637 722262585 877531189 388536458 784216023 78547790 474243305 73284580 192334836 176569776 186721539 555518183 890127135 805967935 912372094 842204631 914970646 467954285 603647251 392328042 653683477 859365068 867919107 338191730 998417498 689848647 843776439 442507688 990937631 817398763 956142931 798231504 898710236 848178249 984984105 594240703 922957728 962843774 976580239 418777837 823084057 829759866 938788897 549618737 969043675 676939357 963227112 21237555 482396055 569727267 670929397 942385326 963727373 657725854 782491747 285541020 563755232 59749641 379885467 179992720 722848198 118770444 872881677 860438098 947522819 339310747 525160766 128425545 310352319 220890461 550684237 119779098 521354753 646537037 903401385 621952711 728152093 478083064 801822672 595569873 977794056 360966240 948158322 904239438 999123830 421368269 679320709 151125007 550693703 139359437 473501489 743832574 833652785 964486443 968774534 797648018 925537084 492623418 710139806 994298297 994722945 580822639 986318150 434934237 938191609 15067438 856870629 578540247 935717133 890339109 988559729 382267169 609901269 845683035 948757020 455004666 728856164 588979928 639731377 504196147 737367211 493725353 591547864 307097063 666866428 573661191 743385883 785735421 903527397 170494926 873709931 81615136 865836233 433584859 725964685 706885162 751371477 715224453 745497960 353618423 947371109 770895593 803785906 853230178 921441531 55531109 120325481 419727549 601499177 889508549 936377861 489178936 664602344 514934660 722981636 202622339 998093836 76982716 776891328 323143511 740206385 274047657 670580983 716771899 948569849 954742750 984272878 481127167 840352287 956291124 956785269 11128148 936978544 194512690 998302816 482879386 712266502 86533354 312632877 41150553 581969085 536981731 955486876 812291266 876556059 653673579 945578550 469904636 678781574 991505754 997960901 28986998 460495738 244506643 365674619 505843965 858899417 992609856 996942014 178728370 718044615 205585182 867750070 271081394 565701401 197805493 743526978 814052175 916331725 734848181 815884089 980076230 999167141 113837864 320227958 652149240 966431286 468937932 725765079 443149096 596447164 184743419 654261691 643223782 847109033 92215842 498723250 103316416 372749568 254693293 592096167 356239569 466179099 251914258 532512338 261550830 704279235 725412805 868358885 799767169 995914513 295190998 317874522 666553975 960685634 451135818 810131889 907001082 994000399 846165444 847067746 191189885 383004090 830473439 979352363 501689087 552504901 638403145 865177073 150410594 586835467 911037453 956769565 40180644 514556040 998977141 999528699 318672155 786870371 220989324 848402979 330756334 342348936 214707765 428552226 236760553 449534160 636608442 645110456 878546628 958281913 114387265 648543504 81399365 684887848 145580123 267655605 156589458 220184421 505449176 760402854 413792000 823463429 424997328 655830839 989262069 989548303 938450599 963677332 241522825 450100236 304547149 328490934 859347290 988906854 222423914 931305626 810647409 875818777 25030126 705199992 28655446 773202961 315139085 514800023 509551448 517180431 611599586 974856618 794304598 995557856 540380759 706744597 200183156 913620470 521239112 764730968 796815721 931987133 180149127 378869093 535566268 543828228 912823512 977415405 152857064 664366844 559736148 801099906 956848888 979789188 218941606 662055003 159408924 206652108 815264528 816048435 579919845 601845743 770100274 771486795 399761876 707939734 92154493 368553509 364236501 767161804 607314004 809571416 127969867 842417383 303626445 729799466 579041793 608519369 765045296 787284989 148505374 304788047 150324425 233876117 322092793 960827951 250654472 393556251 171186088 575110935 157977435 421025534 477093277 872416955 175494964 807203837 773375988 906319643 39833003 752777943 630268724 979433408 993359106 999380820 725997634 993945395 980801688 989883671 222407635 669258445 178956974 525604218 188374286 245764325 816124935 860737550 247581612 376606473 764898899 911653758 794068184 876971985 216452009 847057576 330529895 346436627 21963327 406820534 360088307 464149621 266622271 815674116 117992961 951358954 99790034 229904897 929097019 998453644 394949818 849799833 349921886 554457597 351703747 552820556 230513831 306329614 462372053 803194615 162814542 376735663 660405664 857345197 968123700 969306894 825701655 840096191 954295435 967870452 338437567 766812331 506987650 675922923 753767064 957008695 310421084 393249167 611227850 993744453 499512712 637907708 747016625 987987136 333071190 588716746 801271178 966970356 896593086 927051371 456649174 604922311 521708112 792958112 104761409 376532055 753735748 811725677 32207126 848583464 949249865 990695637 395781974 776107698 110432322 987088392 369539298 673011156 3616664 505145858 891256138 968100746 205341503 798923388 425965856 505358017 356078725 549624566 673080961 900317525 381031097 842211294 98061837 252978142 392095374 496688324 846700455 952580583 912983067 999092200 808338483 846415263 89755348 276788445 890257626 899334762 868408912 932803523 877441101 989563427 62464260 563022705 714198860 994621547 21170374 309956817 45711482 924438132 319000492 448962058 878516272 993401592 947927429 964184084 920807266 986020281 633485951 798344169 785290237 905940203 378626421 916716029 717426972 902805658 44246036 655156904 420028766 502124430 61423399 868793081 114226455 778196497 342030621 753807300 175853290 634237082 421115021 873478312 262167166 295221822 791182356 876513899 25280061 718336885 680547525 741469359 403293087 994553482 468453173 807664292 655660572 768703174 308559409 391928243 633769126 670867936 762122015 964747357 292417701 967104759 109392135 646375082 401877559 801119654 676723339 729232902 283324026 979674711 371065147 864961277 176744303 184311280 215021244 339812289 982057081 984605392 164030728 795146789 516007772 953136681 201129601 302387600 205449398 446748317 400521277 728553755 395958902 939586901 219854331 444900909 674396122 682553666 287688600 653031029 701353903 851583909 442084784 450079496 944909440 969799402 176151395 216446653 263210842 566565050 513383824 874175499 895574364 953507318 776125032 790196603 750954901 980064006 402430463 885110099 849393294 940645366 876365079 983401164 403671518 874325800 758289874 831731578 311954433 960843393 515635631 922820042 25189595 789131168 719870383 977637036 381065070 518300698 238685795 518261992 503183523 756346832 979275613 989396261 222133925 256387570 222884592 934792429 490659077 695141385 147329700 448955895 75723516 410974253 403092801 721501747 382839364 469180669 312493769 549598001 276298958 501236849 310307103 984523508 381780724 692824403 371920201 934316407 188718258 386802991 877948616 973949993 427744432 703180401 994218407 998596526 998677010 999346982 838068446 872914364 512429600 774274649 868642442 908572283 89221064 961288635 44408744 601155087 718196289 738919794 738573993 919941282 253046520 752500915 750480662 997161862 989623761 990136900 2374849 647322110 31325475 519943523 996674245 998179392 854114183 985712749 776092878 947281588 756414301 962752461 608561476 912953159 732902718 914755595 495789774 693893375 369619140 531254673 842124795 873992040 735573198 825324538 938225096 991871755 65635286 261953742 528449143 898824498 287713516 300276420 236047931 711197676 522366117 702851716 509985367 789537714 903971577 915930133 238151232 910531354 368685654 954843008 67814786 598106190 95650054 956975999 166391065 678448312 979282710 999473339 344815094 943996967 964989293 977068757 695785879 952036128 335088715 766658744 533822988 665780078 545577552 642852782 134736716 965197933 823015253 885847773 288131020 993215071 295405444 715949823 969402437 978702012 402062285 729095532 934051324 953700993 900148447 968590785 174890378 308817199 614491607 854678358 367383091 583335642 26571868 473868183 745261068 856568727 896909380 919412870 577489664 668035793 401166828 911725486 143976923 503722569 353699187 556849197 541332050 881414694 345513182 421242655 507193209 642873845 707872755 926038134 683952982 922305130 871578866 920923793 680953013 801320478 97696410 100160587 565145718 960120254 87133087 312899830 277146745 424701157 673603599 695734840 188392718 772166386 271813215 884139014 294423669 486506588 756163544 789944278 296809415 412546163 505484876 817431647 937370996 977833651 912365503 945690784 715675472 988890745 103819266 148507235 475309172 595279781 957753488 972450714 120855577 625414863 454695838 467424168 277351723 796918297 84551881 529042691 604396997 676233903 83871503 472172353 8257931 760235044 547848657 667209361 674572362 890440437 640464988 863219204 974568847 996449425 958479538 972642846 600036060 871348430 947034798 968923232 667753291 762978198 45048303 474399080 518373077 909012846 986282160 991618242 502933718 968285232 791493869 971253444 666611816 707294459 608687295 932779907 90472314 519924979 491750771 869797175 247906142 825037905 771146685 847108294 542693431 742244134 766126368 859453243 361378551 607491338 182328370 480900426 278270060 587730949 65412069 678776251 653340169 939075666 707711461 886851504 184130135 675365947 133357565 996373549 528626226 666255501 490797768 792492112 554833138 992280640 856895711 989989838 225856219 401881734 928398034 983678852 644680922 655587142 492610348 609437761 677757710 822310773 556917838 625154336 1323235 211196564 433017442 999566694 359454008 643076500 904063521 912090560 949192431 965190734 573244199 620432813 724722063 800310407 278946426 401352050 981663460 982333917 210359043 991947352 869207396 982719793 54789397 195315577 24197623 609835037 536032671 992685676 63124765 125198801 154286583 372534507 251268134 934246409 812452076 891357204 189020035 263533371 607688310 894134807 264810854 480642936 726738400 792637750 728020148 918900132 512355815 672431323 682056133 973360987 616840803 784437291 864390109 926772920 480496413 862598777 215630002 433536845 121939773 819637373 738868935 871836328 999538997 999983234 289350132 949756971 39340010 87863627 120154514 802247431 766999238 836479233 357969373 771157273 465073720 747255143 990284949 993991182 476959125 732210100 493332719 505393019 510588073 910405718 320054119 396313217 267993833 559351804 996887130 997286025 724975491 947320174 973600752 999695100 929022330 975507240 12850062 797376008 125601818 578127704 46444579 789158057 624900708 986719589 311379292 836193505 847346729 999597686 732125532 751901876 807462950 895483318 200159013 971396139 194654282 789437267 846173930 935441280 580675811 599149263 543206488 910704584 324944361 673618227 862827181 876673230 654189414 892686504 456255117 527501848 172104038 703227157 69324837 396583016 618394156 956865716 885302239 987731888 244619094 341309294 630283576 776816261 711351157 859818564 392690477 430697352 738257972 784635719 970575784 994117690 963273413 968498599 956842789 969267548 678790419 781719955 47252443 284021913 394074490 538133690 390176552 442070836 726791026 761968693 925924079 993498793 618248900 642927785 540224703 714647260 666047414 924091644 771992048 839781683 383021727 596388699 849292202 969507849 185486691 681920619 180332055 832807578 272028675 901451353 965099201 973059602 630690674 985013996 650881385 865698244 46895799 164034895 328765663 600002800 249595597 520939388 785468190 788881096 627247780 820857915 767221296 783663487 454171072 777812052 566254399 950674139 869806088 937202676 734081665 915825958 134411823 838206300 678043387 825662828 824607121 829063248 945457426 946857300 390817732 813039840 429141873 796462534 249310512 733344855 470042638 784370954 72844515 529556112 257297636 469592676 921464070 997492839 663051006 741061020 61498350 358177136 335357255 617315068 730940333 996788000 128516868 346773416 114281435 989558950 495274808 910558544 132208530 137180808 831024696 957842514 727076804 880411837 613227957 843990017 758231154 904201094 704118948 826301637 16946399 459850365 220254131 704352633 780131434 795779094 992346812 998334113 419551658 820759063 613755380 772907090 710660780 852361590 550184458 988806275 191267779 808521781 936746410 967263974 839084680 845514605 204516856 754864326 691038403 969290902 809855058 913524440 663612905 851212057 284954551 670584278 115306939 436962109 802333299 840158153 150773530 947774289 872167498 966671282 730163006 849560585 949630395 949855395 50274644 585809690 137495129 717885165 156271894 273469135 269742288 794758788 682789623 692939496 234098445 303238396 909049215 924872730 601567786 812892298 599937363 600414642 377877329 906451850 866487307 906181455 571635803 572733054 381196311 961972826 299982192 430296479 847057988 897847056 186772763 814839323 443348382 640292665 228257914 893483549 443409410 966163129 205910211 320224326 77273165 257127436 123026930 313624681 35043631 960113600 947498065 976867663 711361926 715223228 393417434 773026837 809750842 851805344 51655867 810369220 734139806 817783368 148153932 644714393 27832955 901495862 646061836 765991322 330415534 828661123 827889025 968930933 580133462 767860557 192876523 200882062 144812078 173400375 972662454 981933705 936866713 967107998 125293524 559314301 867281573 958000692 388410861 650534642 553393707 945584088 186379865 915851414 144854391 267616869 861313622 999285475 932653960 981308839 725310502 747750274 129262999 887935510 727936196 887566525 128105517 882211646 192993206 453090397 915805577 991018666 910615228 952902641 73545140 912646763 108351048 251390593 375564854 521591048 355884613 740841302 830373980 889019333 351373789 377168589 19944752 668430866 260078461 990848818 616152404 910830244 923993640 980157987 432809046 722136569 109947115 564362403 435526083 852088177 58071117 98970308 137502115 722275642 152972017 421230914 486242364 751372380 939381787 953695319 330833011 712320442 219345615 222353316 203706210 657045775 578835551 646127741 564079743 787488997 110684595 516663314 513610168 872787506 265513601 611859205 970592073 977617661 549551756 552497723 86484345 661428323 130751120 266894882 988776809 990270598 911541360 976447109 194016832 545668552 813778627 911773183 52774825 991899853 362733768 395193365 583046090 643687009 724455368 901315998 457064787 894970401 403222095 976400089 753977346 804611665 89751863 530936906 510304148 615531974 232239544 339240527 167632443 251513397 122732974 348048450 288445134 766388540 792839390 960595175 317343247 992580406 198777057 597093519 499810130 921668451 290434916 411547911 673795037 684737732 630909101 814387558 467674690 778229370 67674828 708906714 936813296 950478421 813888947 872932704 732073823 770163863 503601770 652053152 561701729 944357479 212085853 263651728 768891772 947370446 70425972 522948659 826664010 913887860 204455256 556937317 936675577 959599037 213269239 874220782 790052595 956937984 715002578 980878651 131725346 585196339 229867727 288559128 307723669 967211036 875767846 944765570 974237104 994970111 596125003 816507883 272745634 670217721 671900059 988011941 956011507 959362737 365985059 437434044 300221934 889335806 41642370 544603305 743144602 962967939 68843373 773857191 312556398 866766365 198681453 338354236 576333811 895499953 119524595 664062556 790777954 792369238 542716990 787233853 108002643 953578169 541527585 620629568 684871800 956668050 9293049 824691635 958836558 981808499 973097657 981636329 63000874 358074375 496027761 925743590 848347848 901644587 343894837 533911738 847939933 892310627 418383954 560277604 476448301 997145679 301780 375157254 627820428 898323227 784749230 844160537 33508717 879744262 408711068 789247803 322923462 634251964 771465986 790379996 262509800 631791198 336226878 625224405 53513594 108544804 65918331 372052875 942965923 981816388 688031015 832115627 586909072 721162371 957960202 992369490 810510080 981117435 433678193 632418642 189426121 818145381 94923569 854833255 652435381 809303355 944041854 977539763 327171541 900040190 842170051 847409997 454496764 498229267 820467772 828704852 112455526 573450104 662495218 746822751 42950649 443774309 807921695 991062008 884678881 969460081 333470331 856944810 495311966 883825824 775173123 845472539 662688581 783462996 320627906 604098538 448494534 720198235 548997077 577391311 683392966 933598934 826618309 847554270 76065298 328077976 254887163 582953037 585115722 639664548 603270982 964648138 945017475 949543326 420101739 879016250 742181202 986779717 948843670 970545980 234729444 591984811 6810002 475035957 625389219 955420522 415714170 849561488 978577289 981458763 712777079 851567678 71558857 715704656 284768173 512543794 469597871 549334576 550430017 637237236 436347019 584293455 201418008 876908445 278048061 773336652 473649085 636571597 475153449 741967539 344294558 669924159 231479221 369567895 439379134 677832801 710298704 981619455 802257923 967023663 390880295 742594411 706988803 819295930 202253272 622241846 806344028 810132517 495753601 719636740 991833304 991893867 491420864 541703141 996912761 999144399 321748156 540528318 302734060 967860570 394524915 882667893 53128125 862925771 653493540 698321206 184314222 328635840 195626331 637905886 818652246 891964519 197039408 245413690 110971886 283174958 185594272 836070081 621920020 965870540 573205225 574776814 31028968 414147744 33619982 239885210 3116782 692211547 207850314 270008514 389748060 880582608 657756427 821928855 409231618 737547063 996752466 999824023 354938919 959624473 40985918 853830032 992798784 997031904 17235673 703265008 171389531 846573062 258838076 995357175 856530771 920404610 45028264 682569274 870710309 956562115 932222296 936210232 32626255 894526850 268673228 874320294 494012228 713739649 337498988 844970899 793742002 923860017 67066945 542057155 69000759 879543974 971552925 972415679 320087942 737815634 360621940 956908196 587948301 757900965 786581946 926147023 382670817 950307551 881540353 889129355 842903254 931988769 590185708 682050036 930184247 972994554 563926034 621348917 957254257 991362639 181106840 795781846 254240468 756711220 229293874 238706842 870637184 919928804 385833192 388725012 74944036 986314596 730232025 731636820 52204041 378609697 390449308 509102171 970467871 995803921 96566521 505642188 244253783 372213182 12567529 303582823 532390003 576521668 384124372 657498929 847237467 923116812 112550563 657148683 565484700 629154831 106202682 830815002 206925532 469680863 217029820 402152851 588747844 902190015 550947468 612481480 396143660 599661984 607303743 722882539 261906296 654577979 363781075 547183511 6634299 733757664 980468317 981265725 455024638 543607743 284668874 771448108 736088526 974406450 532533313 772322534 541901824 681508155 500046976 807981225 1136360 33664683 527932170 629274411 943014266 978093467 829656801 850719886 113296813 989072663 904859258 999702261 196011557 840109563 821282240 959477815 373433493 492990929 192943474 577307672 782841965 904912956 720726609 843144977 174416433 618869660 162754984 553488135 42720622 384594542 353817730 401534254 615161159 820702997 163503917 520386624 26966122 133980807 129859568 914194267 834815396 994280860 408996245 965254628 672291374 711861772 298907300 299127789 573755127 992342361 163874897 358290558 731994572 975314348 185885487 487462430 439516617 921112552 552811407 982166775 55611332 878844092 910410246 937048724 109603495 522137964 24631316 304830855 676088614 699165751 799713211 819996913 415162615 772082622 26400399 366600527 184593830 811418492 198282046 491854153 828091043 891070496 812935974 983281656 591812721 756350542 744645038 858673808 414462776 482420613 84283777 742855531 441674511 833003507 250991848 980657636 300753729 941224479 425908631 665552471 414941994 916720055 733905103 996986207 574852327 905628147 468061670 961572508 61369813 880789617 769733897 771798242 476347522 499566669 160123302 821328965 129875942 562144819 313471847 327244516 276295499 883097323 372064120 999614507 101826295 775549713 722457157 821138818 528386992 724382320 171361715 476371078 480803998 869800211 150010212 467672010 61080023 710446354 453590476 462801352 817555502 841982409 963921239 986021376 17833715 915164842 555160454 762197516 722585244 899997558 390241243 993529206 742094348 986093847 550244902 567535550 293264355 365036653 728211552 966435116 944390454 959874723 424526753 917199230 224645394 547732845 771164717 858744709 639478041 693148345 886706264 905877958 266309461 274265272 827371016 986907881 701570621 739586359 853393614 912177200 16987569 339389492 9749387 418399275 650873004 874321677 388727252 840930679 614599716 744032292 352456247 738452420 630002150 679228364 983733642 986329278 763588620 912925195 395418975 995210934 864322354 945782161 425389820 543752637 324699829 361104292 993956448 997699536 790530465 997622180 63088517 817770167 42224435 332202346 246619207 616229065 263169949 580474166 781156512 950229682 441202802 920688262 257678203 702425757 475569986 694670067 94091532 252942495 508917898 771508979 748236622 975204147 779280682 911062850 544865906 798299229 735285584 914524285 323840417 697141478 685945466 703619613 475725610 612638358 201441317 576403133 450248488 506011914 927535821 973499022 746120048 775418687 133777479 152022565 807829697 823650685 594731537 630793470 188193632 998201787 83000628 912249718 518510065 726284026 80101997 973832465 14701965 361993772 429344436 623277457 974239956 985953358 969049391 998360896 861862910 955629659 555599712 839700719 403748845 529432750 810689161 914288108 317859573 504181799 742604140 861196820 559308440 995956482 188041217 845645559 5437324 128185288 306323085 568343072 656241479 913145754 801868620 911476053 229388773 858574551 567961496 854312943 568525687 623295024 114165146 774685671 683593711 933385820 194156195 790174980 364883033 771529034 834311070 963313985 893737064 907449958 380494095 793484911 225271002 468855875 404691869 630215707 231402527 391943968 469289281 685515002 439884061 971340393 63820774 910708218 645371614 789441640 569904732 663625819 695269672 904911135 275019301 378850903 116366955 382611336 1631528 573810874 532850262 617512096 375448519 445112267 636671049 800721569 954778293 956117370 53581014 586685277 578971499 839349856 184274934 917551472 788531886 813958456 969290115 972070572 662397300 941804829 122171673 794715868 26317688 713121848 298429043 673380622 394203772 473846671 59430259 627204533 517354455 713924482 573312988 805417099 766387003 782643288 44954784 750297542 48351277 366017025 951389430 995307789 802885546 954287773 470663760 788902601 428913212 765748266 604404193 823592005 926137884 984936848 657084107 756837544 844593151 921832851 466723811 597139446 947351570 983272233 4740689 285940625 132214656 810773847 368825994 571403550 40884431 638730645 726575011 837249311 726129886 980628067 128391786 421568468 810921416 891827151 635188640 952403179 210089127 899996664 427232823 668005105 495314635 718136960 970249936 970420310 662215548 916682625 89912588 521299922 112268367 341647046 626478341 626846532 368620709 535532399 199421124 506081030 947963960 951233918 582782191 820583284 687960460 754040796 89136604 969224105 212289057 717817079 21379603 541027063 202620801 370311899 548008057 898048864 67818495 70621385 719869098 766855236 821630916 877552892 168891025 453519021 938447597 972939692 140661994 708476302 429014828 972412436 439405683 529533054 408367566 820081472 454790974 679369142 765871907 846820793 529580980 983663982 159626607 493982383 3676374 239159683 158770558 747012664 365220450 564022008 583919935 989404600 799840714 987326286 216213538 713061062 703281797 762519498 823710623 999988096 887474521 957715018 415770173 825634722 570899330 900073137 536829738 829214841 805297903 833320037 639153757 903265403 551073440 762592218 908064258 940775168 264161625 752426521 666362467 918220500 473907901 678688650 236065747 290367365 619692666 638801247 275434446 989741546 307448725 828684129 9079008 138645433 216867288 612502185 881199337 977036264 216424752 513294060 88729980 493143204 182996884 914051736 209502988 992560195 749176121 836063894 23360307 885182931 176856599 378232551 559784531 617486294 170551112 291296505 620209946 652457312 304755889 744708311 995993600 997955273 103991140 712954740 282662773 827235408 271034143 413800124 570328175 970330486 291106474 768094145 619400158 781362757 569851028 698064198 913808959 979606820 750689642 915881097 53302619 702010655 573823800 682019197 706001695 783954681 364154028 390799072 634224682 802126247 176953568 706649298 729490353 760681304 877117010 966239566 186373509 465051620 756093762 983906731 111401965 705797200 781812014 959022187 789339669 803949519 780860593 994967752 97688578 901412304 354919350 877994235 570241666 847812077 922019716 999909649 703116173 920969960 826025351 875505559 822488540 935780086 693119427 782424102 12141732 370068176 227783909 452891213 891130096 972321768 550138485 935537616 682489538 820083417 56418103 246570122 330623056 854399622 939804998 962179135 974567890 997958924 486902178 909646653 287557056 382822110 15949542 91369919 355492623 966446200 278215574 292668526 353235346 538388395 969224582 984566203 522426276 893334578 62809081 474015714 78123671 594851308 728430540 810696121 555401389 924117342 38052273 811681231 487207338 608683905 996764999 996899854 70919892 182807293 365688929 709453069 765615530 791045401 125606388 334107617 521356165 889783433 834009449 915277143 12726841 758640971 466561744 813913028 293813283 294584370 298141904 640442314 750867913 840637310 210854214 814867620 762241881 848857456 804207652 820559677 746724187 979083068 547739962 897695585 986448802 996134784 215334735 425588933 27514631 592753573 612630710 896503494 674192773 924405914 354373143 889141400 981478028 999299499 361279938 636213070 279326730 873259311 109105288 906380524 889666993 917981340 243879762 622695639 663010965 690777823 818499408 874096437 503361873 860912609 955301215 987640477 407834714 587390295 2274063 53647346 978060609 978301131 246102012 396339626 224445707 875375660 498354965 934797441 615376946 762730632 767389304 864997613 756048884 939191892 597622068 732244831 299422528 331523276 370648828 845803285 166863829 243596864 237329858 872893569 404817952 850609839 952989939 961190661 20295665 485717505 44149756 330978284 853488624 941441564 715843594 854260563 753520695 870722719 701511460 910767427 833712325 957670151 746575244 962479427 858657641 925956860 220145984 805502364 78241819 647462822 169683015 643698250 698601286 947795901 89937965 398805217 27631358 824824423 935282025 936527460 279907637 489970756 249482797 318814371 35741948 68066133 798713276 973527191 29013984 32418637 874393122 917648849 528911209 859313872 65569003 159266700 8258674 526173050 82683496 543881820 437101705 715867568 384338227 714985450 246573322 304839116 411570661 690920339 741432469 970407837 463484755 943797502 615932815 761947106 803927594 935362950 204265436 289444241 190194297 190587126 408411518 556478978 754663367 782435897 51246880 784378467 398563260 580451905 727307394 790398150 36030559 457272774 246564502 399761687 44459365 154165835 9355798 484772075 797371274 915761158 273842807 631115782 276410001 285611340 834063370 899368923 677470551 980192739 628333429 831929466 638723442 963232109 320483066 425964828 489727538 590309621 210427305 632572474 771733863 992525906 907462932 999301347 96228639 738809331 973649098 992799658 83961660 567441879 36372252 738254544 195314497 351801819 883464514 913416461 299348505 928054460 184972772 849299244 165930753 718266583 134705445 475456003 172526699 997650700 142431176 983065987 71738914 965093671 567018420 903810350 309736607 736538834 750115547 927535880 416384797 549608453 692381034 733087613 716342659 872523636 811851303 897863050 415540861 999689880 443902546 596499866 420565530 794561204 134782034 986269955 46573209 675395948 856466178 920703184 195119680 369501516 280629312 367574178 703401836 802966944 202929951 445338034 421925183 807746745 896645069 947846725 974294234 996174671 332967515 701483701 899869815 956399360 512512478 974293585 777496059 781917354 494145942 660316210 206654883 517155409 746036028 904163834 258993259 788977480 235621942 347945344 110932623 453129228 691259586 770701693 764515046 989329500 347933392 913631732 692032306 868295650 76502833 157806607 132210434 752861440 511016820 777914407 409873380 825142092 616984414 859527193 491311795 930599868 765879676 923964586 429350356 562062215 979164655 983422139 600223469 986242889 560690876 991657030 560893524 728252957 571879218 652863730 958439454 959953671 132055112 813679550 204088211 400626420 516926835 586299529 126223401 196755451 131258527 945186963 201876556 514723493 371589584 824958705 868244064 900239784 989010659 989613102 748188846 778201605 905979511 929953786 603959087 694507888 757619359 831096458 740048998 810584266 872660336 989812107 539053011 793752509 192496973 753998760 440232110 876306347 66201966 277449988 568806672 866254055 34004459 761039972 460717046 889990535 80096621 435865228 343790900 813272683 58276619 864135811 393842608 737461043 871479767 939142855 103058227 357567465 51463304 597879923 19297322 454737733 262681892 573733782 208248068 814135644 934877396 971245267 704394892 841258767 932590126 958439042 133254252 333787350 667907243 680044780 34009323 655326542 825314972 929635069 594661430 851403901 64925030 835211931 177233394 736377232 709449520 794506753 253684658 657998121 588912361 983095896 175131403 901186479 369608009 874592558 46153675 267178674 422302784 596092436 893820012 953893705 172890207 528103392 468589592 736996864 839575553 919114987 566223612 950695497 394282936 795708184 911939273 963671946 655648632 661749900 204595683 634773926 384254849 533591633 185980254 226413468 371633460 493918120 488868705 532098336 528561019 827736269 913477589 941569745 381540441 418287934 624212132 781339808 421184149 472302790 301207716 561550426 329815217 922386377 765303288 947801301 511287464 999884255 869522994 987481781 858091892 994846675 568365265 918971683 721847179 923367567 140906454 398444969 290770370 417576874 660735522 927302853 420322664 528699881 104749099 426942243 377582844 946233806 68197465 107740974 581846574 759670364 736870871 841566543 18250060 856361301 220387258 802515716 728669877 939650404 120710021 733633229 58481613 379591040 668256464 976830754 793982855 898080389 676289343 995674114 364335820 802016164 869704921 947201226 500214891 754175924 463699957 900082909 52637475 772189180 12668004 301010363 406609853 724253649 542354376 681030099 746669556 970677671 252008598 387640252 420987209 718572103 562212407 650647129 302849842 862120953 798717678 834096626 718910622 733871300 799857922 897971388 380447674 835896908 304738232 963721525 23312806 311396558 65258666 760052924 139685176 395433004 782051062 846409071 904544132 957975702 845016619 999928762 816169197 947137677 179722254 467185359 787567433 968584953 410719190 882448269 311955940 338081036 444814424 709573168 813613596 889768951 30704876 531018900 595379653 672626853 856467140 871419473 608740941 968192393 624135425 670431396 60299429 533677094 657451004 770353970 654456545 981094595 967462544 970124122 75500834 775235371 518329672 557133412 892424626 933053965 40954590 745272769 908877025 979203502 369468947 498252684 514833695 907654227 573227262 823430108 976273570 977364442 808311197 940258093 746981915 853152786 618562054 852610923 485770820 793015540 878025144 999171728 317665209 605389231 913821809 970990802 99828999 664331941 250968142 611741830 155546033 319815806 215237230 599567777 617863497 999043196 429131216 823129640 138215813 627574714 426496613 564846933 970584110 977074313 950002616 995005006 725656737 773279460 137851983 712447287 7341180 430163356 562909886 845228687 656158483 756618458 141486920 587259601 378726132 830694414 297949980 573798579 434404196 564515910 215880016 544040626 654777380 801252141 747033834 906214525 867646358 917390615 273982721 766874055 628518697 982437022 207382349 583017253 762019683 931476471 618786516 662150099 679019383 914210597 340263807 616850144 497207245 906897921 827107632 911587558 144768284 581042778 247570310 676602747 573477232 835416769 792502664 975686506 62298581 694625259 318056197 399876007 310040764 491395183 327774457 751962723 552147212 982640532 225797773 228021420 616043912 687198508 290225044 785972792 988682897 994712618 216580449 348957010 228277742 949696090 495663224 612403270 357551756 766540238 720310461 745377602 744945746 816761969 258940004 634988473 114886985 419436132 531850105 619664178 727150943 821704699 131850086 961263263 260988303 967752985 49849986 669879685 697387882 980194160 48517116 887331430 245563613 634090175 497222447 787613669 685202797 834934249 283302040 555450014 88964764 887246055 77063368 581724140 189727511 449304280 293914605 613444528 523131258 711440485 919337058 992312045 850828169 867406673 143779468 221108473 440954358 575231200 896253020 943622775 339854961 843764804 286182317 865162173 374596210 771396403 814647396 902685372 639375666 972657416 613578363 982076319 642560751 677970049 104572113 378935983 484369375 563122804 325083813 638363031 812617600 821976762 941028369 980643501 586799645 922368039 473058006 888821614 829365841 934221965 412493628 492096508 645894022 715655984 487917112 696184961 325238171 902155118 116641305 853350776 447450195 836886802 733074302 753702599 873961289 949951967 382047764 869593095 827848686 853729561 273751035 910836737 561848532 881928449 655602314 911168269 92709516 142133755 391077100 764465832 740661691 771896716 476409965 683688555 786628048 839745437 701468444 889107652 493877181 921317713 666418788 773635374 649257510 973838444 474258007 476296482 528764131 705923640 289876079 555836276 841527129 908315396 703837401 708489927 967393665 970360226 818350270 942042316 369984828 876647842 153349826 269230742 437461372 835313436 72538494 515169292 865172967 955342351 526960536 622707590 992207750 994453790 576678408 947810157 236774924 983691333 767135484 866351868 738534699 766129835 772471090 949878845 706425288 736442177 786074635 829381947 549264756 917672679 158430904 810658425 394780724 735112097 476440868 866925673 889106703 962610946 968435692 975593919 576516488 746019088 485527363 745327807 984796118 986631867 456676029 759246884 814237576 824940371 748030267 813196118 366391479 412086086 628068603 838289672 327824846 991369369 631663762 892425478 992747598 996358911 294050446 821330733 554074846 861209899 808116991 935174409 323564914 637211926 489496614 994009165 342319248 683096625 239167157 378646469 532852505 739505206 843356550 866223164 611634745 766535666 750306471 974667735 68818169 760727554 894410526 985469008 473709431 578516200 722428534 780940247 335724690 686185423 85918312 829551755 211514597 941389380 487732590 527607099 195747522 552476836 431004075 747009865 721798071 819425409 177107906 288992477 395118671 686966654 243472865 270378560 751962663 890324129 416546380 884600528 531447928 672402111 257772970 653625840 207571956 803982539 585335972 642140550 713790278 872784453 162382405 208167125 651896510 883988721 664761125 895371937 706958078 945049077 659633711 932738090 536442956 781983224 685271986 927544857 983816373 996606197 905795467 964902449 605556407 679541851 334014908 359905032 381832357 423788054 99620165 487106993 745773621 818115721 679544040 741217438 298386704 621935415 836811419 894726895 813422201 944458530 888022815 927136317 309085476 434426970 289768306 311489991 630328056 989089444 280686929 791250515 253453576 980953275 130993249 509769284 680966159 867894207 860745799 882270104 689532295 741100355 910752526 930664174 853146194 992558868 167906766 374403570 637821835 676837798 927389314 937897362 155952231 314625328 480752103 968872036 895554808 972021366 378330212 445646229 53888590 125369296 670912711 752689336 412192585 446528780 452017672 827604884 185274519 581155411 828767379 865468559 854566849 997024131 462595773 714771145 885453571 977613109 831416353 910856349 815769209 934542327 860267951 888711898 635607627 832075408 200421581 226462979 98065295 519043007 454028736 897125565 419256759 493899376 677871816 795932917 670084768 677366406 792586771 856102584 479895448 720748855 580573124 716652071 638881655 832868429 65070926 858675572 148468713 815070040 229986181 437850814 581685661 874665480 225715824 561760936 883576537 986335973 178422433 652840412 96825152 118887306 821788523 969982045 114360695 468126517 339500761 626425361 591749993 817696953 314132056 555598863 338259185 554014321 525047051 563364320 742234032 934092972 567845651 594177860 296097956 756189714 735320500 735849686 572102466 695685774 265537290 411535718 952536145 986884223 718457895 742539360 1196999 563713630 254351007 646632083 870512867 900164280 169659326 348550026 498836195 643702075 749197973 937559156 444004474 459706524 194209707 859770232 902120484 934926706 461610072 627880703 382319223 797434520 425041160 990204616 853754307 958991917 427165553 825337368 184497358 277643480 475772117 735152329 672804023 894455921 610775031 866422299 29444282 396193539 667151681 866724761 69499042 970019736 982327811 984284956 369054498 636356404 961694723 989257558 636500463 873247954 251524523 435967008 453006391 601546847 446778460 823400762 764668759 810669870 55586174 499221589 538175066 789861988 978960709 990287543 840468711 968870547 382273155 680320915 967003986 996468435 796359439 982056028 961466413 967197614 982287388 991782852 564310256 865653973 45565935 286083069 790095792 901227787 226041734 274510276 622861043 695484778 961086570 994738295 446357415 787501117 406579616 604656581 675825298 696549869 666953030 762623731 630145361 931332076 688822904 916180573 862732210 935034541 625945811 739158616 951608920 961508679 864758514 985425470 762150091 986835722 340483546 481454021 105576383 933015846 380905828 876226580 903317988 914634374 442281103 485184658 598451644 830620606 507195233 545786429 333607429 993968675 221080233 241968055 523911442 822984279 119613252 690204990 107992384 818795268 634694027 709039853 778374409 862060395 356539725 386612963 395424974 934399732 23506183 561265801 18932072 495452502 474863302 719374908 817722547 912670188 438476130 915503799 757680351 898036174 549327032 782928486 473542789 780325977 236390412 944389822 223525686 601545601 911219726 977335805 772946098 813252305 998302784 999175742 772226314 932752552 725407303 789441004 857262905 965760050 372196172 780183603 71993192 662339532 485457947 789860790 900254907 955810437 272805288 394915742 722257236 779803126 318719828 902446221 975480396 985380269 418232670 544838947 92491381 277093096 719902485 975687033 518535118 890949111 895905809 920809101 882202778 993080556 515910969 974059977 710993383 819411790 210120800 801917188 708745223 847095120 297129283 579715911 993608951 997082541 415530589 818938259 292049056 971917486 584578601 849758064 539916461 836639985 314417843 648149089 797857158 908982488 219191356 387262288 642495346 820430234 791231130 836508368 368699950 650855161 107398434 166789374 606246574 982616051 938108237 951197554 798412708 990035175 757736605 995744072 536994381 823964187 678603895 878570205 934974768 969988140 847771521 991083079 972064760 995961862 537094343 582877091 172187692 178747088 769997912 991932483 782520996 895331126 728172132 958316983 707433324 993768255 819067335 911374096 250085696 706359807 533707595 980026109 770128609 905161173 647618939 805772547 799465228 942648322 359607215 582208865 543478046 777882428 949406388 955640321 569421872 621920852 551757245 729950475 850101979 859054034 188026340 250327476 731204098 836506409 210135703 853145415 782970533 861136857 83429238 83529930 103629867 970348937 211408133 924134735 207524549 921388354 514463299 600311246 822043353 847809195 164343932 930477128 589188147 722052694 347007107 453362212 846346853 977062389 126674798 398830654 123867396 413900933 775962088 780226723 228723804 575648198 124071527 931109202 877770003 899685113 441225787 554426320 899031814 986678348 22723114 610236279 619153947 919828735 50607566 709876964 421400777 822594830 43581084 435125023 674164006 837679248 219205740 750709347 196894430 742565474 216811323 577638313 578215298 676673332 429637535 723801395 836309926 906931933 135062714 167676583 884508200 913056136 395046871 730264475 603494385 757690147 468680039 952203853 978967591 989703599 770466875 976694852 847143471 952116483 976910894 987768518 459746148 587665394 444315947 882725176 407326832 906605636 984830946 998053456 107261253 131001256 881441857 995004564 78641585 664654287 165332823 928336676 909100015 984448373 931429543 970470169 530417783 856890577 300003274 472868639 497888382 954130944 265801606 678460199 794178317 989877083 946408926 998248612 891527755 994979284 181665795 577158385 43025486 489891712 397953068 412632987 517430214 663535002 708837157 833049308 9853843 240071813 506510892 874395064 827468540 954187427 425390662 456539599 514033564 930411695 408086062 808549374 281367157 561408963 268490224 759254088 478400279 625456597 913351874 924387224 175739103 737163791 589368598 701820639 49267183 563320384 863819537 967273220 262831161 843652490 842766021 940547144 889402242 991568403 8604234 638209302 67000496 908133000 996945237 999791250 692381806 898764089 175551926 358702825 953293220 974876005 393628572 760936956 593707450 976645221 144367836 175082310 997791115 999510362 215781237 949117322 251908793 886166644 356047313 597436538 932558784 982111895 72020390 830350317 712450301 802192156 340129972 382229737 390970743 949713712 16901136 409654583 579227762 920496922 642962244 737001571 996552086 999284045 36898656 830705022 222831073 511368892 393946508 611156048 133090098 438799959 64141514 405264642 337029336 489953886 246865045 290431127 478231269 970226652 277146595 372323345 462558154 851995730 14504245 238872168 332728945 352226835 206925095 665861994 983901545 998270916 238709889 461261947 271493655 809715717 155828430 483852018 848622723 974894355 61912975 196792661 787689019 790916711 24861623 280813385 656013224 847369590 575272527 825909395 740764231 840215284 445769214 835740267 192712940 587444962 918907818 966926027 499591503 760840402 628415658 839208406 330989871 333682164 265505967 793222380 114884994 134108689 10686773 771028211 729320098 742339108 303462037 435663004 130574384 730091460 435871240 815449649 552065747 705326814 159628149 979562918 620942710 879262347 614297939 672199338 966413874 971365667 631896917 850139368 556122053 963063760 397835166 633578558 724443198 906161462 826202409 832203698 534500926 941208421 843339430 894796403 482268813 800837048 750338543 772703197 120640490 533676674 692780226 861760628 180453636 919145884 28219251 580345462 509142315 629544365 33955987 604714164 712427267 968268837 984622085 998225267 855044688 980123516 916452334 958805575 47689144 301424963 831070974 868603147 565653794 902828548 7099310 675327528 199577914 344840195 111173537 170481906 998273994 999504851 663970745 738383270 796456305 898577749 366006527 773876643 659340967 980172058 510323301 970011138 653920549 925968721 799932219 905912452 685262890 746249684 6096926 471653803 381209168 620705457 992395005 995200483 347948860 820646984 435020747 530666590 459773995 499213007 138022985 580432816 485964625 919063616 11234351 610732491 140993237 810240953 424362461 712123788 848597252 955007304 666886989 772944408 169589101 866355793 873718703 888430107 6592982 568638095 102995698 323732839 19659661 895775507 65748660 188999014 187631774 405155085 624711930 917795075 331577956 400142303 580193080 775118627 754179115 824111129 255547206 676781475 661881754 780109426 170503579 476680708 552271946 759686729 529190740 649400840 761825218 878433960 940332493 959342212 889160017 912697590 797757887 923577657 746924868 805752019 129776958 883438974 122327530 789590196 436203123 712314866 962935310 988993339 890741639 894693692 478663757 544010188 353860930 951327344 794759607 817237760 995557182 998300103 866760726 873839144 406363688 825389033 500357694 975355011 409808536 921590550 787465052 825447899 915705062 948114177 80374568 575452297 791034195 982294926 72185942 490603774 107680421 713373912 354781571 888798046 163222506 859547149 208028832 331129372 625947563 626883904 837079692 859001724 490497334 524494793 57673223 148794306 936695589 955505701 654496667 679241856 35702734 385463927 675770991 792560734 442124325 535804375 366927514 472364657 52208956 705185421 917798784 936507447 437730471 897111158 827957156 867997984 869359370 920645284 21630422 928338520 748228783 778426907 384222172 535682846 441964248 746858963 927388563 941946426 603966023 939523255 779785922 786737034 23232782 693889816 671926821 807682799 402452088 525839897 769205946 783021481 534043297 575106978 596423674 938420251 691390915 804845901 474205022 924927790 680987654 933602617 220355304 640041168 888535256 974904930 213244412 588104876 696548908 896790425 652274562 728923449 299778725 448449385 19221961 679138758 642006569 980155154 992866380 995015323 6802022 48438473 376663656 956162363 406733396 810199574 673716963 771204158 314303268 593366449 557817465 942646295 634866377 664092102 128276140 583895150 446767035 747902436 438245930 764761563 139279005 816064940 307411959 643599498 703913309 934703461 847021540 853172352 106190860 763827753 576419602 962383241 392049504 960217142 301666512 875418567 552497254 963597614 16089566 538587868 180442522 906602654 663548426 718608207 452431490 548389794 341996696 373939670 744017601 930633838 907423562 954110201 411557950 434500997 567354179 753860684 78056724 337025058 45203313 828015333 41302413 761925041 387534257 542284811 602095884 757060660 602850110 994189871 718356441 985458318 921491195 951412633 614296212 950267117 469970831 774494406 115039243 476393548 805791045 914871012 643993203 910412220 59550307 115448715 208564431 899709502 326185764 765747615 969434756 969662749 438127708 759570961 781829950 908926397 734047417 814055036 860443931 897378618 943405784 979295976 37245571 247616943 539726215 691758923 941639267 953042593 337934595 505731784 838295952 986105195 745091356 766986415 760540740 951414003 234246519 463396808 714584579 769221084 410898183 479725163 719183503 738537231 109672060 764673210 412054183 614725268 71759933 790250540 662113256 757234026 168965226 337863301 793947518 919351989 553422209 844175246 494478479 567873619 880071972 966387238 301524904 625139472 905572624 974517862 533266694 568405357 359955485 742517662 42878735 498709040 25144373 105734160 326924860 536247784 415153275 772213708 251037470 925581266 57046773 779610129 41032667 585398096 109094354 896364898 645461978 717004763 577674037 746696339 829031298 857513886 628046163 637253654 81785842 351441614 708912672 749071442 373871040 702709490 638495272 751031727 758431898 803301832 609947634 783268067 714915631 752717437 90327729 732811055 298126447 770454486 3681888 392731565 654344604 934991113 197428281 691602951 773674447 918960514 499844216 513655693 864446777 979313404 141112688 325066558 724582869 882852814 275420948 854269473 337806572 751668121 762762456 945465073 358328144 685086084 698814613 897980079 575976433 662931374 497848335 893226412 470481300 976482348 156773541 159668615 681408635 716869883 998199472 999583219 268446715 330136429 239093682 746816405 76649976 857737955 275909843 980140948 891490878 915236318 369069838 749064823 308913281 822313576 902122268 941373638 276928933 476577932 625747135 700195347 656818905 927340285 105657424 987916598 818901485 881533848 35333796 276434533 630065272 905204034 758146985 860541780 958595209 993077167 219974214 661375716 172762196 247809010 973506871 998324075 816525678 829583378 182079742 557652724 824660646 832082712 493534517 980720742 763992657 940735547 544280230 819304921 572872824 651849497 375797399 627550706 169808635 683161020 982587071 994812503 596086830 630302513 264617829 928064096 887217577 985327078 603131063 944471831 269211348 934032710 241590242 503837591 356661487 796984946 803983440 828956415 652764965 664907291 229694819 935605353 213020886 494851064 849218809 857132588 101353480 258541282 669429066 808911864 917838096 965520213 313173415 414278470 805717264 821340255 365318200 893022058 210565219 698789826 593941777 733179831 656083032 869033048 730053671 860342246 677504482 952203510 79547549 594640063 988997694 989796969 488923993 681542846 803747256 956218141 519798103 872175238 537122758 607062290 787336053 833653064 35489481 997954049 137041322 646833669 273525606 648939057 13534176 304714278 619359631 750236888 275804184 835280437 833610369 981001788 57613321 717381364 928403573 943797450 627824664 771619577 20389432 193155889 124439038 984030141 987639478 988155877 838696232 858214928 950878369 968528432 288077250 666010255 423947695 742683516 808112218 931339770 696902871 724562773 318659385 965460476 941398738 951914217 240227839 330583644 218173428 922298956 566249696 850248028 115043882 855135683 792746730 881301084 770084224 778644403 396565051 932175983 173692499 954534077 254335060 321022244 28267678 853479096 358576410 462297565 425185352 993665818 30585589 553695498 65280606 730280276 958110695 988791483 746557052 763474271 163608620 708688845 875750987 983627589 290540045 628066900 885045390 983061677 758527529 881565651 463399475 742298067 514974784 540161611 559392969 976840601 656480857 751757855 477154454 518455294 152834836 760867550 477144268 948043779 710389402 994218917 40897148 408294155 137722800 601811597 881990339 910789756 339248160 395339334 273213920 968940854 673446225 955266262 562402493 976651963 145444093 384313778 917557387 981440508 277118640 859568734 416656379 470028786 719518145 964806324 801702068 890005463 200284177 682476538 678378982 745663927 106709171 862440721 256502115 928274910 481972230 983055237 489297295 604086185 472482494 871032108 971675962 997409874 896737008 941315559 246439463 349287633 434582319 594830037 710879304 986813890 814061698 949843877 313241478 954401736 640994737 706875685 359375836 820910492 821182132 845120145 658584337 680363236 286215200 617877156 231238523 860223411 190478369 392567926 626346613 683618825 78656160 482613383 12080486 597955345 998182253 998984456 641889595 915813178 932322392 994902875 74869077 817924096 618860590 751826219 646274929 860581505 943129357 951224717 385821882 872435787 746651690 954362591 635924440 738586218 41704116 921672007 524874588 658135153 71747459 447223400 508738888 540506632 511821148 672202021 373534511 486426192 891148964 962140139 139476340 831779700 831071941 904811600 882573379 932397228 394141011 884801352 156266762 156759249 424302694 571367292 203150416 688405343 146787527 324272055 400882498 665367049 807733381 891938475 455715416 626643539 662487313 785136492 50823447 305497627 108171285 202573149 694536361 714587487 879199853 927222376 716502648 733261275 902003054 989205045 961329496 977749262 58786865 950462343 717648166 819916081 904942432 967807205 158350018 360639586 311619500 551895995 467179754 830408366 922397630 972822398 822940979 986924507 603151259 921289217 143902413 460518020 276620726 369265772 134797034 433578619 828652578 982335264 790341032 988250560 882569047 925399259 676563165 969960839 489254588 832385031 85704710 464929973 52374270 93534294 841816504 869030612 879637407 935942680 287280582 588335975 558070278 900490614 48041854 914612526 687221514 841880814 398879233 959162313 150513085 533993942 178584271 264465301 800884446 925583094 883084322 986853580 594418754 795736325 116144372 571357271 423166932 493037349 559634286 684835942 233947456 300738164 577806300 831504141 40254203 333738725 169523823 583466627 375423870 701679008 538011182 917090171 571885035 641968936 519784823 926519732 314734259 863267582 868719571 951502604 93921408 549857281 2583558 673961412 167851818 404336666 805142082 915648732 536813698 742419620 221136012 427550987 501829467 867037445 77365701 672877490 776182996 942290326 852279632 944297379 450561244 663514240 886537449 996248988 463742219 522285531 153932944 628307625 531616343 893269901 792219146 989786859 836739084 883509907 971100241 979951773 578830961 745088153 861591599 864609198 650850176 805802661 597049522 838170359 418088183 992010184 446215385 810039778 753680944 801498286 263601839 983581566 867374148 985872913 369112700 388732470 843366791 990358703 699587040 937114475 656493944 896175945 570038840 796227549 541006140 810573376 771647892 819246915 955020448 997659534 87820618 649885978 887364995 969038739 85642044 271042280 414857685 773073772 589151421 900831534 135578527 656524591 541281242 947368400 305326403 518110265 679600651 967986992 802336094 941353829 388553478 526736570 57345863 707766534 152683550 652539982 671544209 912176466 438195346 729112756 995963148 998888727 795817636 939052719 969254268 996270342 709275234 742539945 527510657 819471020 877199817 970881944 355820450 417299619 643637422 726732738 419216570 765460506 559710445 904193491 363591033 657541521 423225868 744813760 450429952 496108468 806298370 948359960 556469227 663804563 694066706 891974929 136998113 287152140 416862495 718447674 702212042 974218029 893988901 942094411 429499885 545439261 926107063 962591654 765327142 944854290 408850381 837542561 991280011 993845862 735833964 945553719 68383589 881673307 103686484 534824839 962034126 996658452 949799116 984974829 194567996 536224565 169159515 400235383 211316032 943995944 657805922 871963789 217480813 797956475 83711752 533499724 126218578 724553835 536214168 942088112 403906995 992224108 890571257 934535597 877948220 938794937 439152128 790039177 792608508 879364572 627490799 746274526 294830674 520044428 476988727 977623246 776769519 787023660 524931848 601274131 622897693 919872878 876413340 995385272 504373372 665716697 228105064 250351864 472140120 547678234 661119743 718428328 536487706 864242789 257911335 304488900 955439947 981746922 778862504 937128567 678589818 865509687 632347267 932591985 161379629 541214575 290174093 813643789 94950652 972004123 351027606 847832485 334806569 494497834 632112199 864456407 247244990 417963877 410950633 572283646 952979766 956814857 391720319 541365757 834469504 852659834 264179517 691559876 617346153 714127564 648231056 828029727 705624854 788505980 714107354 938626799 734872253 980642432 585249909 640375425 701522521 730464446 509853542 519546151 993896034 998200080 444432536 577102137 766304439 843399786 409430042 744920690 345655269 437809617 289095613 363817331 254508273 317345494 518131608 568174137 394698365 484705060 320290051 589237316 170816856 401295888 328439742 947969215 230803793 598880736 398254511 806972974 505724223 840361913 205029735 703530319 623525110 835349122 692843108 721921627 161939342 445997952 877901698 939302302 779796545 818547356 426608167 811452598 805004192 832842746 628859110 872699914 182183892 656892508 876977029 984452498 461438546 833185089 686189279 965841551 778262200 862408171 612563932 977765678 559794216 783410905 906595735 924793078 574158495 594145147 213802973 963715622 917617476 977589115 696523761 778255400 141894808 427767424 673345149 762618253 822309642 867651259 273045852 389668175 431328624 745729984 698728191 743163868 572985131 987533291 384607542 488648150 529924464 886749873 129880467 680632681 527244519 894622166 880310797 979754321 482921702 605664351 106995681 417849158 370039150 717252164 292562633 510651390 868304959 916173959 557113989 742349239 250379530 874863909 804295500 956054414 665610094 754500492 274527955 291756064 202182411 370382918 50821300 110711553 930234434 948218063 861168869 993115411 522535474 848281133 567974119 912827032 96489064 121015192 88789269 381869568 553749135 917184214 581938002 932990545 689265760 809485394 745829284 930968053 731952559 809447657 222278078 694598394 722987563 864249818 735291971 940149337 975188122 986346482 367876830 506164835 810779994 857746114 483003669 523941209 594393155 967565349 948941516 983996403 491184361 908004893 18580039 405671714 877490937 953352932 711886275 907730328 752663302 763924632 344065820 654359263 310438792 749029385 777057953 952711935 499960974 557814679 558082730 813786754 905017934 966570260 303908133 628815990 578949290 759316320 981599527 985295968 549602303 798702792 816603069 914646534 174491164 522445614 232173193 400000525 136142204 959554899 717790266 942552676 309766829 751919234 111492209 818711588 416204407 928713136 230019075 765891140 638605107 689108455 727099757 913751938 639645951 989461042 513486140 739644809 650802493 698352508 73146287 809811577 953448168 974508192 538212135 861448010 673273717 811203497 776734995 865022637 665264021 704556425 332681294 741479288 68743405 262883384 217324376 587311530 274124057 978275491 801580040 854420367 791938495 840983650 430763829 761311401 549468130 601279238 67010285 867356004 229167262 768441543 533473127 708933831 332874687 393847403 295853252 361529908 780650034 802985302 351151137 394624937 882643235 953252870 506387230 600140779 565329002 600231894 490138929 805899982 946038558 966897400 3229705 920676332 674197655 789796369 102267346 518207666 614103971 829574524 754693285 997515967 322252103 477437256 304086796 494161153 701807607 996023397 101466170 236226950 736582261 986940204 657624208 870728781 189279150 226038146 13635340 499006043 237096269 309684435 564807098 664368926 286518415 657924570 254282377 424990809 656346567 777494509 711676403 857282219 132682355 225935928 12106856 191939283 271786891 964891866 768216690 817765398 420150081 835218889 90195106 911617355 933983471 962447404 280041079 515385973 675930817 933596826 708453800 944589079 218836897 337517374 959677927 974926154 335785667 401716225 517235709 984978765 342086624 859174365 995518010 998403682 68632453 858060613 564938650 909228190 758768554 814535399 33345529 682998088 755403294 836026293 165838081 506644728 950967452 971326580 511130153 539734707 16173425 534269861 55260752 495722205 895791125 927154441 64026752 691075694 256944333 474747117 326591347 505460259 832358267 908551437 695370320 980032270 607861922 747974376 565768809 608468290 680527562 860891784 14730158 890808057 609249457 868826482 435345174 523339930 33730090 799522679 750911454 946241501 256825515 839052145 316415137 751639782 6868975 606834360 638845719 669987620 602224471 751640215 928808914 951971933 2041014 171194829 166196969 631273693 171639456 364408533 354169357 704486288 496148992 982834903 515276477 679299166 302002682 963259936 527787177 814209341 899886613 914332776 868589521 929053566 917149744 971078081 890204033 919817290 513704953 885395536 255750665 812836964 46136768 722311539 841768475 853930621 787816957 947307786 480780294 645132316 311299500 820172875 262603685 438171077 675116140 764940917 776288002 900199732 631076335 715368501 579226901 753823155 566665257 920506567 269008040 814582246 823409599 970752554 577639185 684096425 321315630 642459919 845452857 948631651 219066348 351533009 785150013 792463417 40198101 429086633 683973973 892834185 375323494 884587442 737788807 913664740 248098069 256523505 520915140 824436441 445118509 951060190 601222708 990976091 326516424 353911049 805483124 956337145 398889898 673861870 848054686 855350439 811874228 922194793 319960981 962024542 385053274 926151380 506432989 758354928 536793692 881444771 268006455 705714540 778134151 927416744 861222424 959987948 80747940 165572567 621158823 895599642 952352825 993334582 532745281 539870985 802209391 962383541 914148106 988335500 179497108 213499551 650526934 888493936 700578636 951446029 444418132 711802594 256257554 259657378 625217195 694904907 886748778 899974972 350675160 848704664 369899073 485874219 133809047 185790703 586703015 849331088 934026890 987420244 659982565 780798333 831763370 949632212 656067271 848423816 159940350 573700060 635732360 744635387 346114440 790817323 939062271 987821035 470656637 502020751 630620615 872809197 985437026 998229120 873194501 892428228 182182717 200917678 622381712 823648471 505094397 904782160 288663919 991822960 20938886 963741327 759553787 946580836 921299503 966890316 385278287 528934917 1718393 537285872 714959140 718273691 761898313 962752201 596785038 843577761 911576423 945383712 715030798 924642636 569018907 827952622 690692384 803046338 301379849 708795822 422715243 540621180 624363703 746783996 374882655 593358746 284074637 573176948 516094897 553912659 49394135 930208131 741671045 955236817 224061505 439036177 522322262 602833685 212526086 347576344 740036871 758246006 480218479 834183231 255975049 292048758 304099736 333605608 466896279 906841919 756514157 891852820 392410745 508782045 85942073 833526741 253684325 811117768 712850971 973400855 22964972 25291026 621185279 633625520 691547282 796736128 201952060 446022674 153374009 728698972 488000501 624804584 568766018 781382330 817850213 830656418 337000422 782715214 154424658 821656605 69598120 425213133 128799937 314167135 520838629 753602678 370732001 564496200 434573683 652661008 988020238 999010334 830683773 941260372 408571699 960692061 2813775 799100157 835302212 895523806 913930360 968429099 659036016 724709996 261396639 873347116 702514270 818841513 827942678 877310278 220884583 837081389 262017193 507674333 276453022 697906561 75034627 605069030 518443626 586026647 181146320 699668590 645405020 879711276 572976321 779327326 496729967 542976391 697458457 752044394 86125972 944197022 302354537 452567977 517077954 737560745 100684326 921646567 941822184 955794995 460708332 603522033 149785871 542586141 38426969 402016589 156814345 421999015 881512739 940481531 45067219 106930288 40361699 633677839 397536055 789617494 369506171 549921431 452484202 568371290 863433872 953896030 171143466 914280959 710620877 810397374 516512277 678571551 763570583 891890616 700881091 904552866 214943596 922544047 301427597 939284380 969271318 999869552 383163040 712302446 548596731 681315677 587843297 893247421 656825319 858023204 662556987 813248347 493351157 912575545 222139810 686944389 971407465 999501579 223669075 316146747 866651572 884503631 648327306 713652674 881346717 972762387 875642826 980872304 104300121 249166161 898923140 907327642 319869926 682907035 885455685 981335066 35691895 286720558 150038704 689312642 67638363 724339174 90862967 649459161 485699413 947416465 735619606 820945001 321899593 736061402 883501401 940578491 332759200 482769031 47719554 587682242 357125083 919386482 956661861 957427005 736155562 986541113 899814433 936381025 878355242 972853243 403123052 707781679 823435537 878824795 578903931 969904206 360188961 447998604 921530720 932819625 310000839 584581449 497147086 619187944 726489886 930761729 666975967 801592354 534872453 612242100 963088584 982019474 524498218 711775133 87134640 546662645 315230580 364360095 460174047 499283147 579633520 680827049 927381606 983927512 157942642 950255712 253927998 698545049 927415427 947414897 806253235 826025411 492017665 604365165 165595356 586827195 142842960 686346090 662836552 920659703 24047716 179904662 300165398 848337271 119299839 345925933 157712585 824070234 728651231 935285367 286924467 828629424 735174229 963994094 844634745 944991153 971737563 984012714 559221572 563584053 831951797 918200813 700181664 707816098 678608013 941035010 520980567 540946449 425156319 756382114 7826137 223675139 184164716 527009403 913401671 941849414 828366808 988531249 667297238 993833352 464799234 976212413 685560638 868947143 826143217 841460961 403464047 627971500 529080737 845831612 481590524 857718429 673846481 776916692 115802894 179715899 409154088 798694524 273041640 880223210 149929540 282649831 616676118 951269442 909804519 954162320 136628099 699282521 119426794 639627470 780832880 886228031 529982833 872059203 367184010 478160414 377604986 968150398 374803682 965182886 165211920 800118898 802064246 906506968 834695183 846407491 388630411 876070785 451085140 451117938 316913764 612963889 764944506 813638365 357924403 385472212 656185306 989512182 766509997 923239556 362870843 776784228 465347829 924738402 607101911 935915091 854278407 947339008 487218892 491787275 570140207 613857157 139848285 204545872 623894419 757125355 387543898 471965841 68525720 185546378 752539178 988965265 791841664 830223339 331259918 942751523 792896038 893619145 361038198 906509037 575185826 787330180 107789426 426249756 125753838 937223129 929039164 986164272 441213198 551112759 660382674 970133369 944957608 968965035 246521852 931531550 146851842 925208215 835239059 916784396 598462520 707561081 295464689 454325967 45496004 63247604 164266013 947297712 45869462 967802802 819405053 871654708 836285290 928517381 878977760 901335450 930653709 944993075 309959068 618342880 475231208 508466942 555917270 893401779 906634583 982016673 606013642 711150485 135255573 942671116 894517042 929807903 351421821 713337634 359199593 647603728 326966621 810719226 872933680 993141120 693561631 891349598 186625684 469802414 330022189 908005712 624970117 731647871 84091955 760384868 616514275 915183512 665991234 824437994 588933616 922523453 431998122 450177284 909748359 938594243 84100456 306066251 620146758 664895254 614150206 796400339 531352934 627758210 654342910 762044797 868221641 992287399 680895508 787365423 342410134 467210809 222615191 801734051 921849280 983409498 821401079 973808139 75380189 647028103 498022605 610429168 172596142 437538324 990059801 998877589 268864517 975567320 934379176 939560804 512585465 954083578 450021713 673781747 295232326 402785192 17103882 576290792 977393583 998084234 974180761 983153577 559085768 627445862 417766476 834949481 68515960 445442190 628971059 734596861 621822804 751583863 244298596 417369657 436471059 932782271 990400448 995360699 21483559 607409988 294360909 863395049 441324894 596014191 497977218 705588382 785130994 829973155 860897215 994370417 930979492 947790998 75135511 686625753 697243053 991923298 981601951 992091397 912566143 930559304 508795988 789265944 948326719 995768136 430549252 595850588 930614348 980690709 889490662 945002801 595178635 786843774 675608565 832721036 177128021 317816261 250006245 333538279 998668814 999409360 253421158 584648615 357654504 949443383 370575521 522107275 835085420 899541213 138854073 996305465 346786386 445955166 14186048 586260360 674815352 909152964 13735098 921765140 304574847 795721145 648791775 939623544 693901594 817646250 831621933 849759741 839659020 895969754 359325607 734146773 841203108 861595652 215125520 558025198 267481854 986331061 560306114 789834079 229169969 656189835 25062246 284504764 608865822 748690155 214586594 765843331 812968899 921874002 716769631 801149380 980061997 993568504 805270211 952058288 137306983 570833614 714157993 845651940 432889349 545496304 783678431 953186922 96924322 620821953 354332702 958747766 556291221 973654742 419741729 774765950 437796178 626601384 210524191 371157858 421849260 920178585 921799740 938707401 315594894 996645767 13793807 980980158 623838630 993237645 422388062 937652612 165189138 754065095 324331623 817877124 867072307 938807069 513396206 617462654 516837154 952713016 905911847 910593072 841826782 973101125 805227518 969880846 207210749 447255298 711665022 771061718 635682975 836254236 933644553 951321223 168007483 684877618 265126092 314254987 872595026 995439718 208130100 317351489 953587114 972925494 348526199 713002433 870656655 905864377 886221960 929061872 499546592 985282779 735098185 785083371 175608473 429932148 404573884 517908150 148188622 880213470 866084160 867691918 576700299 671901990 651979107 655663879 204810095 873985207 132549540 806192633 4805898 562987345 881669908 962775168 137993878 781547224 755453943 952299347 241771911 349935725 252820776 781166533 611678549 652031670 804518389 947429333 224832217 971031558 826674636 942785187 766959756 819565813 467869616 688720761 582260108 644337902 824099574 993320493 755122393 778350048 362016173 778144771 465376113 730870903 181607703 656443533 252689061 350138245 926216184 949826401 648981357 875116444 621149848 676772235 309730105 629739093 921804 356812777 229506530 837354767 473593802 749291781 373897246 852558981 441280035 805508926 351566806 727922529 57506883 734860705 216816654 629049414 46020055 78207155 924055403 988110609 460845130 580470054 901911488 952985938 729809378 999369856 986969912 996360714 259530448 773030826 823229652 974767086 433714644 660265353 721886895 949605105 811880012 941776131 251346932 532817854 275378787 522435783 826933840 830220976 284421474 419143536 460824829 753493058 37388817 122649977 333590961 570141699 32489399 852549174 92012294 386903493 321471765 829405692 723994379 914075530 727460163 845878027 835008212 956938555 166455718 429299923 819273201 932731928 413685997 714391151 669637805 733520447 542968351 605440085 726335547 971899526 354970570 380666821 260341331 309691365 295050727 513166728 520031698 664273244 343063493 410856916 977612486 989797835 144594164 822649643 487083684 972419536 851240716 963949623 690795404 920222583 167752611 880683950 715992556 857868019 909579984 942910522 656233095 778856468 398212358 420047647 354016 947853630 771488331 890198801 248691133 827829413 264887715 944610858 133781585 284730054 521981877 624990003 132258596 847353625 844831160 864291881 835518726 876573376 865939142 955839652 893767626 976541355 288789411 661891033 912104266 965997082 962337548 967239649 418012379 436038916 12355205 855145389 271766535 768311732 669901600 706157114 116435343 282815644 844936778 867741670 696791346 716552340 979804919 985368113 517582537 676794363 533945350 595650043 570353773 910331746 184845793 354035254 74447382 780126358 154909461 840970384 686659732 767706798 191140731 491225754 147644694 848680331 788394991 818795129 428746857 937126138 903503702 958612798 578239144 697909248 11653090 828926755 50992564 567177272 381775019 594742186 354303733 906093530 794544955 954700713 133946160 204664716 486162467 862743223 572399245 811455496 470646241 765316527 185185459 652631905 434766706 583185620 143542136 519946886 121614015 836423903 535414979 654203959 404295181 881691907 451723837 628876576 520548806 894163536 898720710 983037268 725100899 746977822 238424249 957079032 325282145 626751320 452943241 788806730 65828762 942927438 216784601 777283047 304990202 441612164 481421495 526553112 29909297 436669038 86873574 924260258 837689753 992721814 542139768 608995593 777687571 842304172 539758401 862904872 300053267 944020760 88865255 160369204 971654582 980266846 337530038 604888513 224303950 999006275 389930753 647203522 938537362 973696751 852268161 924267424 983829978 997570635 741533210 748579446 969392007 976952559 675166243 696617051 760115459 874776577 178788019 891445306 716452652 891626462 291533680 486595275 85853164 625179912 352112118 910771305 378935795 659912356 497848473 686499004 504778214 957047069 354985607 791019875 377538633 422940323 304065989 565118635 845000221 916823655 800109375 988636597 753590550 836929622 903037878 985509278 579961094 846466533 209986320 468726342 713861717 845854755 693363261 774192081 890299462 955218767 136030966 236716310 749608181 879864470 942339379 959500075 683030766 975463030 644866565 829322158 440345942 640738812 982432789 983975078 18260430 100024012 286505532 382616668 739210963 787335442 800645419 845133751 107154022 777902574 49721710 882711148 456292505 599477594 76806335 173454210 893679396 991573223 240868795 483756728 47386554 353104098 769812638 809953400 766996889 851692345 230141930 584684465 575742499 794924754 613104964 904205222 724430234 879926268 464047586 759534885 480646068 499542812 86526479 370161942 566538199 590940813 50784083 544032896 275301484 939358370 865070695 958947512 830819858 921886559 89804896 254328559 449133622 567063065 820295795 954008671 655174825 850821361 720205928 832362299 744086761 831763810 771707323 873073342 77028849 661111478 52024593 227783029 911992355 966221123 196978335 735103891 825515762 955431957 763848271 905277450 537010705 720522210 752252379 954772863 755205030 959881116 692124235 961097673 810934515 960237395 852078968 987116736 740448454 867086766 649457576 862300919 392294565 663355891 822455124 948126381 417390282 930419001 364706727 803223022 84732017 629845193 60942402 644884963 471677189 873721756 734985862 886164474 411513332 521716613 932162984 977415690 215370843 577711015 554157827 978908146 659056068 755509386 509731519 813074775 799169084 945272016 309917586 371879165 102671972 122829031 557756007 933254042 469366800 840820906 97189949 277813677 944539906 999173940 14115879 352092784 186737623 588007716 370696306 808328150 918182330 980065356 990460205 995500892 884344627 992342654 49290995 979654401 29775249 102800984 838860155 943027451 854727970 946550890 635245925 802193877 543389771 916850266 942123066 993226865 125686046 927055261 64977454 762585150 565270037 880301565 339438906 945505914 871871808 897509888 598278339 612463798 657925364 870236286 772877311 883528529 761937227 907165331 864929397 887687860 36414487 289459353 302117242 735085997 742089012 926048812 367822733 821796003 76412607 440496609 733684240 894425033 438751483 448404853 686093668 819526568 691807887 924175643 153262429 993558049 507752513 723114202 803372507 865333471 72145937 396169636 324989696 748422457 731253722 968298310 193627974 615961327 660422526 741130871 156913399 445082613 962369248 963910639 290327330 388526012 423374553 902010366 965099972 971115288 617441713 732197649 463830020 517303647 284653381 977604577 925834324 940506506 958597099 979218101 561127163 748227150 326511819 383236840 399431154 574314553 456872303 763838657 814550072 929852004 371740604 620183211 775464693 926926845 890853720 954106885 32243205 66913448 673982322 843221363 198443268 434901382 891072726 970934923 311752361 364218990 277356200 647276405 662111661 750338114 705313210 907512405 745399521 853369692 888805450 912097865 494345406 895434604 529672972 928044680 87329290 799197780 484795575 495202995 872076616 977649142 277832157 849064729 660177854 674780064 360606926 855436663 528635494 886482595 918390025 997897853 607095628 701299261 339781867 907792278 162031378 400819866 52757849 364931407 9150858 584319455 388021883 933280205 103495832 748428969 10460169 88406289 314336117 526999088 738055162 749469934 824069075 977470562 940048318 985659277 287472622 930512983 904739102 990862139 607784422 963909669 56374079 898101654 926007270 961479134 214062789 649758269 25160738 845344408 182448568 831209284 5408371 542693743 693340983 892919036 681400060 882522534 552686762 669916544 411561686 917332406 497010939 993732318 238864705 403296721 761160600 933196423 543019285 851671911 561956597 622107291 614829417 965319322 958749745 979774181 866608834 883296888 938292487 971697006 762713261 911539788 329105468 798218953 375821197 421247374 598091808 846053418 461440681 696229122 609211824 974161354 943408598 965042212 918511379 997826691 577212414 626506438 463834952 721428682 675413958 868743696 623387513 873407690 65626395 486735919 798318458 842475937 271829346 935912589 549057956 814254503 334855924 988746827 493437445 993951896 669528720 718148465 545731367 634090806 85070901 434880341 170957996 850700492 104986776 283239132 227464466 645410397 149843565 550699397 516650478 723611859 433414850 541726882 352659660 358840488 734812487 903919603 846956485 920701448 701624635 981705102 392592934 998887530 628078563 919663350 191034946 757684402 52358357 68363651 582865022 672901075 286633511 926576082 734391584 912127061 88711762 313813916 763040894 788910480 976975999 993774736 756747148 883958120 656711561 879993988 60943692 472765653 482193294 868290104 442053782 930993742 500801534 781620072 762416543 833980047 93126012 667431065 780287286 982800663 764906334 988127476 533713701 682690062 993158512 999330402 826768530 889581407 846369207 917671353 663041593 886931242 798496908 953822568 80582361 149805754 49005041 439394721 883974739 959671637 856973216 901555611 454657935 756638028 496992438 715734571 227079245 372779799 78985701 882612478 41450153 71599491 446621103 861389758 345114563 643957078 642097944 722806522 653506682 734234311 255206136 421140756 568204394 808990957 616834543 790029953 145393656 248190260 123396422 975499678 950368947 998022057 49375546 373972176 400940791 884120443 70012069 937103321 627834948 926590517 9070738 679283963 126094308 455896870 53817297 895259688 149493359 293681433 954009517 983919072 147253906 486772589 374362934 584734448 8003530 448391613 430838089 629817788 726295205 751432448 302534144 956861724 211743237 433569242 711804567 756016969 426755558 610256305 559827380 835559741 731276890 873594503 919786101 972373567 990002623 998885126 825326892 925589287 18048732 484906505 498619222 775078473 616156329 954764969 695147926 916236588 565078891 567044452 710306640 753033845 68029489 549917371 379611460 832189204 597666613 900799715 189550493 889961650 698537449 924932855 219408659 661009521 997739659 999593819 191182272 298065022 450881996 841932617 969369866 990842575 395355742 619290560 294348039 886700152 498185667 776453991 121340433 390989768 417550295 970184489 305261265 887527624 508550769 848465205 991237424 994219703 593656382 896332770 769827979 779984432 126867081 275689130 240411935 410718376 200501838 246783694 868472471 987758542 198311669 419590493 699535471 701794253 333116172 730788740 284826389 428060775 341623549 990054682 541470630 886226470 675609309 841683593 211072348 571343951 371120396 557551370 437577891 823288666 953227926 984996478 504788150 707284531 932192648 991157336 745736937 973605807 681401243 952375471 97458147 989586622 826400324 922234630 927468231 999360023 207937216 440886644 256938289 943119347 859302843 962459622 863614817 946372184 600652975 943415496 825519787 828858099 10505077 847616784 595288230 992571185 489259756 809189257 762979491 931281006 454006571 546003840 563584118 914345615 988392017 994179438 202471549 213802288 891035207 933812692 702146312 871261569 665541578 953585606 865243408 966933901 666285833 690734862 766677491 883173561 355812112 661350858 279121890 860822178 849723539 853086182 237295425 558504372 896532043 974188106 231416045 659563989 486208277 980009980 102650726 687929819 219819681 602540444 195005195 395448704 832085917 934741767 345070728 480420473 853428085 993015178 761693658 969880918 527639161 716738416 648406138 748068524 923051255 965268988 982826615 984226740 86582070 119646928 808561878 897027728 873822168 962993842 192922417 515170747 62074110 212241220 328811893 542241894 729090889 869977756 295477253 396359092 290208351 359164319 462815033 716131691 341596173 531397288 149209865 613521236 891962197 996572420 981895158 994673855 231041774 858453347 880865025 974045138 674519968 991591155 972068779 975361503 657770999 992992059 249700599 597224742 694077103 766246210 738927069 941181420 56346909 370212716 289615692 675461185 576456347 661049325 745157074 766370741 731042984 787911928 254778357 340347991 624669145 967149431 679829073 809868553 748738985 896780389 531901777 875122088 296429852 536227261 332045817 900615618 932168266 937608357 252734551 275749313 865830342 973506484 76526871 806001231 24923155 195655659 642230949 884700153 346919152 563170391 617959859 622988790 954795627 982884151 874759943 917943793 544636390 644166299 315185527 661228130 43000776 121778216 799145239 886041458 969047644 990883506 31276734 412605769 439655873 604935515 437542633 567982398 815692524 952013829 356382772 652528373 641493889 719401255 85341142 309947365 440666354 533179775 140799100 546045737 480797087 688144067 79671945 624442753 260646358 471629079 243761143 586306629 735546642 797201228 540103906 705115711 753681840 874849771 355012314 745931809 55991056 758600392 460355139 830054913 79569485 281945652 701737044 790819051 962161837 988630749 453330625 800128707 745694097 995947578 65290458 942341922 302443554 996843493 156410173 330557948 265029005 459048433 297726376 779655806 483243639 617443222 838729344 844749540 145052737 618983544 550331953 966478483 308982618 394806516 192148182 817569632 218660134 834506186 783604050 968413077 374995456 806278266 519984893 663825278 565743717 794059350 970112435 996887308 730130063 765158983 299107390 613253936 521622174 623702994 847560684 995101972 983297835 996054522 51501199 542190076 999825117 999988616 138683408 709057140 707959478 812983825 777345189 913442954 839523323 957967610 843199679 885185187 383783551 704722415 999208876 999793545 870572119 933637550 488438045 561516275 61404347 743742150 481915032 672943861 897175545 967532172 346340282 718259597 836255885 968241725 842754033 967184318 909492174 916447013 597174350 657651244 148914793 910602446 220481190 614160657 333836268 395022234 102958938 589803776 748639076 753744164 658094443 705897815 879417932 995795261 633677736 810336821 908106862 950986554 237673811 632595562 189230144 440820883 958596087 979577125 411302422 815218072 968691302 979947199 416064434 585662129 253889192 755933563 854156348 855762706 465961684 787091680 53196795 509204213 830293128 980402234 859237488 966907693 934543230 955548060 202051564 560642847 866586188 867354112 167258957 266106474 985652981 994728805 50257605 924523339 697154344 761519421 245570397 718540670 194763540 409638057 247847369 823039425 647673806 836044333 559479056 592781217 477176410 900973508 18878788 322540308 885285850 975270086 448219029 514996720 539362442 611137336 416556402 671470084 230180479 993900240 431976857 499697516 836629191 955287447 310018763 916186605 115381732 445294642 378212611 490833406 883114851 926320494 309078689 746188116 371659628 687555932 487291861 579913241 307767393 763168098 334618233 626455151 307447418 708166872 435923224 489654362 349798681 952195579 463825563 996534863 592785328 677738896 131043504 354750317 725887713 942374277 971152271 971887648 194769315 252493403 686115451 791728420 381786379 810198260 146561335 165252966 283839520 575883237 347112958 792767844 457180482 881377944 610469687 691940628 798361920 810483115 284074800 305394036 512567627 618608826 293842530 483051701 948601493 981463529 605354107 855064616 725466045 844736250 712800543 803737705 357320780 624183233 847116989 865118697 27057084 119073104 757772907 763152692 527560238 667679275 125936278 578811313 386756163 670686253 939034111 949697030 480790447 969987532 637926603 995076462 939378303 973917305 548322534 815579455 740141320 983975120 187560130 891625657 709401366 896615086 137937913 346504228 261934007 442426742 756403144 944450848 489993205 697795645 912209751 959011967 250084867 801383280 85667766 878236732 968820273 980619594 543565369 809303548 403065854 774727681 235185077 593516657 337495207 611290788 487536043 989624344 300523936 879854312 256067982 570756506 166312719 463847157 668365935 800059344 82491323 678364730 525366705 668356643 830726651 927283830 157633400 233305466 941492102 946188089 553154722 938027509 792087649 837145972 252796318 904274240 631691429 987346684 98700106 555748403 548389347 637662129 989270553 996113338 87579572 728760310 777659760 981852321 995626248 998146373 475636581 848694646 106742105 188000609 875558629 921137729 790563373 822223467 402013764 636501947 665331452 973955309 526468532 667764967 214721916 529954845 547748309 902801597 992201587 993815156 157146608 207780646 753083621 905904884 327298842 989512440 654385988 826553789 98022767 212958979 738731718 937748393 460173532 709527147 844652483 963852410 481380045 561336567 496545461 802905006 272464520 707669359 754987175 956210463 631947923 694451649 568328632 989838560 928181000 967202224 361763925 601332601 362319247 692660453 693279942 962753304 137091500 962810399 49425638 641637678 860326429 949059248 695884373 978469496 571549395 815616946 971506164 983633520 733212203 783549484 145379023 267214789 974598771 975797404 660786516 955141483 806633461 888508745 955856536 961498881 523670241 574834609 922546912 952632739 735738159 892047213 247212028 704325769 73431037 630296752 124650428 136857207 744324333 817622894 291922324 923312250 198378494 232232478 275387163 295011632 894723339 924460060 396039511 932359855 320826430 493769950 237560199 939436720 141895619 438676029 906352761 999724131 274169834 615368501 806641937 854349075 95101468 468419822 246790963 992097817 415471178 525435598 864400851 887751990 534098275 872746814 36334737 776934228 896114747 970418214 93840586 217469822 582508990 739980684 660069915 836041242 809253650 908868628 585247597 660923613 412806333 847462471 819279322 853534697 136545939 389909492 91430523 940112543 230969640 314774986 891613128 950944566 982441568 992021565 200641523 728399974 593383435 788420227 822467052 903436316 554664851 785416789 203148771 326727669 523959850 654093273 393718025 648380087 580165119 581642917 724575888 816321301 270502207 350222552 136649414 137728840 647558170 811918650 774644045 941133107 36606538 194980389 498072677 720760387 416518471 894266114 929638414 979651409 957706946 992236090 918595540 984427472 360096262 708730484 979911871 990213400 338468404 990804929 632359638 709019032 805626540 874082123 572529994 743687615 611706241 656487249 355645447 693190599 834406229 888805796 599327540 679237755 69967636 96598076 747152702 751568125 805516630 936976145 235643012 288098045 590497975 631946603 508790520 705874664 387585439 433571762 252934554 696574650 261913140 956996380 374021067 618230832 320333069 600357195 525229936 906775083 670751058 886801767 821289480 909245266 64499077 498122463 561988448 636275837 787191967 882780097 239017561 663995262 224997695 576516145 568565431 710903592 272179017 979036489 695938098 969195567 246607013 477333483 539611487 637224205 943165892 974642342 304902620 580701155 807315717 900975084 411814374 925984350 102529529 250594367 326752113 334756796 619842973 767801491 540875006 857449112 811840856 901580422 461174856 469299894 925279951 937072426 821176626 858150427 320797465 506669499 243428427 620109131 846904112 887514598 445515965 488614183 761332247 857758258 531330978 665646668 183820676 738440319 970095804 991459532 864616941 882251711 639070606 996036728 803717619 847232310 230384680 831898369 574830839 634126660 738875463 850757557 359528780 495396166 415748879 938413256 605435893 795217278 330024204 879341481 305642918 388201809 505624141 615673392 384962396 802810194 498295149 786457235 878040007 963174243 950544377 954461119 629741332 633912897 496313759 634886188 434685598 559708986 639281266 783050186 668098778 998780482 192699325 666934880 729042649 929272898 385096117 916436529 265052343 737766606 182073788 980881601 892483614 972635298 57735126 794993831 374870886 935044487 498390125 721519816 549254426 702725427 409328546 953799512 108681214 502069551 56323523 379654418 165098588 471585276 597012957 683796507 459706822 811924298 665762653 768432596 975561618 983325458 984009256 985693066 318519897 658441831 133879519 182248803 297418362 345653933 906921813 927267648 983764072 986259667 92433291 892435061 549295727 691459240 133476907 905433482 58874501 207704413 804506042 959211529 876505386 941311686 351683554 381893636 79496179 673937267 785732519 932237162 191854861 818380940 34087674 464599438 341726073 533268036 759582485 964330939 695518698 940570683 885164896 893151769 720993473 902915008 200111452 817880426 773119074 825909758 192768594 569143300 60375749 535030774 169755556 211411243 255541351 325504378 936286607 978527994 374640174 921473241 220077090 571846084 422708727 471499203 939807719 949824932 887519677 932399808 490107002 555684600 181137417 873324720 75883289 869504240 655775545 701284220 409180695 534536440 501247717 508982766 538494511 729187045 529869245 660296985 673713552 947049923 699021611 837864355 594898053 770859002 368518382 778952726 16361930 184667343 121163071 184167242 101227 153645952 90045894 731945218 998686572 999368865 156654756 214039015 798760466 818148365 352626557 552873467 653319895 759956384 506169975 880874347 835941542 995910172 558255495 847610327 815757335 979313587 154439200 732465257 563516990 875813016 466216630 855440357 346050627 897719259 826263144 981428242 937157515 963154346 354846738 555641614 801391315 863819184 325664631 633373721 221260431 816655468 23944421 659595421 107542854 374802715 882854372 896588115 961421422 975482411 682175484 693892004 867737954 970112993 925768802 955857414 226238841 398075142 212827949 373810139 825390672 878137201 744905987 808732252 133440737 293830251 180173844 291024621 567165969 614945056 805357579 970493043 502851356 799547112 374932466 683235979 12116545 992818426 273848444 542060334 978140896 984013531 979941818 986996690 40712690 890870390 854791079 933907995 324842629 692904161 574704678 693259884 397463655 950289828 869631406 964777252 376733134 740059329 654953710 954030450 743795997 764907989 196644879 606190016 629634480 966737450 332583699 520226005 477554453 595930029 867704448 909538306 422131280 537316748 368775903 530767802 383434696 975236242 504209665 832528914 789805533 907823091 19248682 637466514 653368434 858155946 854773003 999150533 670536127 773130681 110046353 395489661 408815681 523158820 300594244 948341429 909446227 977658927 898392039 989777710 748905341 926212860 542501263 792402028 140317535 995388249 643463345 883750312 76958346 437161433 617421041 802840124 296261647 916984770 568520592 937180330 620349072 929686992 980143713 980561140 799406748 924560878 545486901 990481176 780900339 854810815 164481787 865646542 415173685 854330446 468617440 476358232 694177979 977472662 141473628 841660147 270065851 666833803 552094539 681073772 834239578 849709757 203275184 503180388 351764094 365849860 132672075 262753530 121462323 934825823 282525119 512047821 374288375 699048508 874217291 964915804 356384218 577057472 407099752 410509883 31897914 140721632 919634214 930050343 950191721 995252693 232006166 346857084 974612806 983500028 957184302 999516389 619307656 798476879 148669784 292273129 580333514 972229347 162028682 561513075 222520497 438540213 714197782 843455486 817896820 825836939 772690654 858030287 51645659 210356149 356888896 541855573 864145253 908312587 66062008 667020491 257713025 563025841 320263254 550519663 826674883 907765154 468627336 661111111 946013002 955686293 587788337 649688694 449526697 804998239 777605664 926990299 602957174 892040519 200586056 550466711 812852559 902549383 896549259 952430192 352225393 994458339 696101543 757974708 663238083 726243955 648509643 672393339 3199199 188107541 435269895 619699084 736884187 899486070 308935765 723142347 97441877 866924840 158153996 850322317 796882427 962161247 421816986 580685716 806850311 974829746 325265761 984204380 697866850 842421804 509101061 966557617 613879025 815601889 326331848 997947876 546432685 949022660 779357119 968742236 114699654 259926963 549399115 802474081 749982582 889828444 332967161 762850873 324896426 326963128 306361996 771977373 477337082 724004120 391020265 707013480 271327976 458139972 470790779 623266273 79445332 90461091 311782167 565807460 118996138 153239683 683023523 722209560 41316959 682563327 938899974 955390202 860179574 901776050 911961948 982391146 692741562 984063139 448234813 571919098 124196106 457262072 203613304 694599091 686443090 944690089 692374820 859133186 436687905 769103771 357128630 444454185 28749468 780403631 866265850 925871040 981737872 986258362 15761153 292368519 53369155 193447538 107178660 696425255 671444736 706258244 100319696 881453092 49432021 87717781 630959184 959122453 677236354 991375932 706281182 959238657 811974570 957454050 417598592 476556245 725079753 891836799 990805314 994819683 930600200 968964540 45424764 410744992 745147921 921356754 495931339 574407703 732643200 739601983 586730459 605252318 413585759 871942756 280645331 797569271 651344925 824765589 391718253 513278975 492001047 691353532 814323757 884167456 177439488 679747421 552162483 948136957 798055875 893006581 19888490 337106219 734354216 884293004 130064209 365702335 737292457 876403017 203276166 506913113 935377300 989711240 753083037 978492514 278927808 702257010 830642021 946067234 733732317 958265886 736251693 845574279 368858871 896166772 245631587 963490549 560750267 691000656 690246113 891581618 901503492 907552869 298413766 936048952 371052619 394464362 335665700 849858652 920600512 991142085 996492139 997081883 265551575 612034555 788286867 958235261 386094636 919018977 461135706 788185777 294633755 798819926 398389229 978263292 511789361 532395400 639660179 724379625 295112463 909893016 642027445 644715478 399417448 767765786 824644091 978742382 261742899 651065753 254509065 760681830 291991039 377388039 49065774 155759080 44973200 372193156 690327923 831963109 812698007 826637797 961993775 963563727 220726844 760134429 23882706 194592056 582153824 690561790 512048572 576547706 193512294 329830517 31550449 281650661 826873323 942363612 537013340 548019321 909908349 933014425 396840467 729865723 649287153 782657920 573335266 738308390 144043608 728828418 495220685 928337903 431017423 560078493 653132740 827643735 860976493 865995033 961656556 974776765 988895710 993394132 571660510 736515509 468071205 729924191 734244433 877123286 625964758 780710428 405618099 829118524 635297923 810677462 487902987 781620672 323440762 724543131 344705696 409484905 556792914 917403409 607905309 752082705 76204204 838214138 324439868 539214002 706578383 938859462 261438116 902073136 406791551 775086352 40981453 409355883 948693818 951885372 774718644 947175024 783505654 946654597 230433798 485362106 15894302 928438026 948703499 995333485 573425500 998746733 224586903 296861712 501091317 598076334 742596848 793022280 235522954 382699094 546611071 678559989 586254963 658808378 222766573 867930830 649881498 699326396 344399031 478520997 755010269 807164307 959733165 986010510 396704162 866509075 816748277 975938867 865760383 908910153 175031088 650889492 41028934 310934247 860493422 933549636 186783970 539646229 838354794 992226250 863244512 942531564 107940949 924422078 456062813 629532945 443251881 972948099 252401411 439116984 384779522 918051129 865938344 938987183 47117526 457970645 186711369 763001477 85889670 911211131 565017118 748010420 170036469 575729349 657393790 685537678 488364005 974247342 544828367 644205657 660167764 858757309 467647174 818083741 393951834 974269959 673517250 953632402 969720917 978419440 776703256 834884497 703590471 825147347 678669101 888969074 903224888 915200115 572476660 621326680 741167342 855353754 167881361 189853107 300473527 361469637 229787460 879411078 481231501 701273795 738069725 811292313 395216419 759188021 333661582 488866823 19750203 141441173 238787974 993749660 442408496 665170551 509957455 650601710 81043119 189677618 151446483 840497288 564879330 924580635 514524518 931126361 597136447 997346682 428160049 700904084 85702068 724220016 413047335 781310196 531294516 628463808 89879690 416967516 811425365 850408247 799671793 831311093 379341482 923660223 406549681 561007921 929968506 962899746 474724271 626843751 505918419 894035992 540673440 776790149 477922157 747453717 70131169 889879811 77516979 449681961 840563565 983900722 370916586 518202545 154162594 556346990 654299202 727841250 848372537 856552916 733630977 937154013 449048542 520662867 800661206 927953166 395094132 776759900 464426729 766378536 495799793 850446554 865383828 956314239 368793356 619314484 378137387 744221255 925063760 965356643 271593651 488593612 297943659 831126635 762846334 824716135 671275557 829641203 888921528 951259860 260559350 440575287 191456931 419842602 590228265 635619984 201962470 481812386 876448017 967451100 172583328 888826453 497413913 655125268 102432810 880276608 171145757 298888492 134689968 655375615 812572427 889732452 322723185 984981732 687107761 687587071 273630875 991154134 355875965 434509182 604527765 663216162 204332839 463244197 307829948 377373669 575734131 913504416 615739187 720081320 683611978 914130737 327956392 837060711 615187314 657466957 317647909 781429294 417774002 671920288 954991382 969345057 599688842 678420069 971951622 989088281 685731838 813262744 338214948 436156654 229218428 503313374 184277180 946558275 837487979 939553072 866682567 903586472 376940229 706382352 37498144 962495512 288618636 349036370 409912263 978950453 176970819 306946060 113196733 836238201 430864192 595285530 989805260 997214000 683202065 843823861 524814411 639565660 512073431 661251444 569131878 905276951 514745542 853070771 774418696 819867014 583788336 684830793 367862241 445083964 631978816 730949141 569286858 964634293 471799970 743473315 428381139 847381407 12280452 297055443 959581812 970158095 90046251 510241282 884286014 884665565 884423441 893122300 258074744 771453643 63435774 492373133 534583011 662360077 84040543 923365802 519677425 754861421 498984868 744678026 210586082 534791287 615176471 713614632 364754127 885662330 917873962 990962565 468921575 941362726 487471273 651140225 487842642 839632110 929053749 958590900 157816151 628281666 346716802 902243902 381425145 489742462 74090622 590033157 639202987 690527523 914295377 966157855 629154255 978014524 367436590 518388750 851221038 962127407 635086595 764785751 393702702 710438337 447190693 718531302 455947116 639519946 996113447 997999969 326905348 647988839 58295045 774757876 518888871 969000143 3009399 904409222 727127202 920090297 681866435 892861524 894395210 966243772 136922523 736427690 683507641 710139081 405054401 842107170 905373963 919248401 178968988 986879925 225434793 328085618 599216116 994726959 340836184 920320723 312030059 322272021 725173666 895091681 600839626 700058344 433879441 566632628 898709361 942488628 28454927 973024537 977309554 997213707 7612519 989138677 790917114 843066361 719717654 911800635 440850235 532297850 593330309 911666679 677616639 850576315 223830751 938802774 854704970 999201636 883832808 961438132 753599786 827518200 500571742 747743581 47696803 546650886 912431682 987111137 790254880 815105385 295089444 808404726 196166744 518924916 958252913 971787655 395429154 645688797 864002956 990953192 163919972 481172822 795185692 966050450 327786573 473351837 575963663 973739656 97501795 839910878 12126485 44285106 910162503 911571307 37664283 905650339 65347128 529692216 344541485 439299507 911021306 918246458 632442609 863644468 254391666 712831476 764474032 877155559 96282217 120905665 246360593 444014280 741738658 868244081 772817701 785710273 167873808 221473416 973364474 999313618 271250393 762517948 737318297 844443474 311608341 971227735 524858066 678059332 267863510 715506983 283512053 761960944 500622751 685334915 99959079 975576283 709803536 769225747 957335603 981332043 748604637 963001042 999008596 999847055 405325305 693078363 217347684 921742769 835675389 973159305 704032752 887975802 168766996 207792615 900070358 967899114 664887460 999209527 149146094 583476243 619309728 674044889 709199599 958021789 32478666 836534725 68632011 351750327 320296914 635666069 11511288 399111715 133582236 139004675 70467446 759402758 702587867 729502845 244239196 604073711 84528038 119628902 708446992 983362541 58065222 244171845 565089301 874253827 299052803 802391111 811648179 918810659 182641939 632222934 31065070 892290438 304185673 869863448 862452921 913387044 93082217 725263989 66008324 866574471 590470158 692357705 56883022 203215602 617666879 852718969 796366031 992646685 158778677 266754290 634121137 920656838 755482074 889378422 780833725 941080344 626479870 658465743 57019254 842164288 416391839 583038201 207347044 232335010 345867202 746714023 508672722 783092493 114204140 603729142 278240320 693834737 287445706 873404296 639048872 958058149 700612056 887897455 502170038 528319617 909575200 978953434 678523250 695738014 278309848 757258699 469563107 548052891 977002719 985233713 834341054 880957659 81214214 270364222 19542035 283560028 517710695 840179444 447911629 938806123 922048038 996734578 792120761 794079894 983979011 999466825 240773024 412653859 806279444 885771062 315327930 352538095 938853699 959360064 24211217 730997445 122877202 777469815 656001878 960946297 251602035 548349718 33231336 885342842 497667365 539529809 194347743 284245857 564968738 783336978 869504368 909116433 980516953 999919696 57298036 92510221 318404359 850056094 713224339 802632960 347015293 812146264 972851582 996594394 506150308 884250295 797298463 825987161 303421947 859299243 32471084 426311575 253099553 967884552 506248443 679816408 464413452 939261987 588036368 893239804 191237633 730317268 535751494 977294925 940815688 995566999 852541933 901712152 638913973 674655121 913387562 935473155 858079889 965961129 362902574 902067631 510445800 797367553 615799622 872224328 85210288 234425937 890960967 919912982 144480175 299578091 112653609 619713382 915700243 997647283 969263907 983235177 211688242 821222685 177042617 589323237 856815683 900576102 134663417 203575979 35790445 92200744 739804895 933087489 371622023 859867446 699412816 915040585 130933161 542609730 194898095 414985766 187386210 300715413 633498135 973863685 505682515 837706812 860434114 972939318 115253950 598352284 548082660 984399514 75890558 561019297 977104642 989039523 465311248 677207190 829400284 912113809 543744292 583924910 20590354 284719425 87452784 277780778 75053250 814972907 93419152 803375433 152320993 977127490 26007977 129372208 784398035 817985456 828602038 858837070 712049087 971452386 409341195 835551482 677219283 774740135 782797890 789821143 582889720 918839242 537788041 808345984 308078310 577223485 582031521 848313920 850833819 956879235 826050383 999070526 496534601 651801955 476077357 998509779 362837974 630171208 518213111 597527994 688242866 910442911 291826278 523256102 412120284 844053489 503706211 872242139 422988103 911090430 566924973 816461355 603628683 860130438 650194670 710790237 844090797 996824831 755944647 768801471 671335286 823271763 835602480 911592721 415633398 438988489 796410160 942044427 343931786 890062215 361092305 938008018 479408124 615060083 711848771 902376226 609483075 624393085 913200827 985911594 470220565 744638750 704476969 814489176 594096423 637302891 801653202 985081133 210818906 327445823 752864701 812621399 794879831 857884830 356814190 939009999 244664525 407533073 886673736 910224189 843293677 846457640 323148918 718530057 116165347 246449485 103937734 430017284 616329381 893224765 338862264 603375194 489375860 708611101 825165555 863534058 408682022 932569172 110192959 937954756 488412810 500880106 621323304 916228698 678820314 963836113 850212253 983110727 955854982 977587845 411767202 898049113 572315296 590121682 292534048 760968290 726074311 878207457 785368437 898714693 674812956 911510117 760082067 856110221 811273363 837318816 681458107 864017742 491726029 530803771 90223269 597959240 312469915 470028055 794493582 994001114 447800789 480671326 494896478 927150503 432620912 730781305 604131891 687506565 815026531 938686552 64298184 764745834 65604567 445662875 194350527 825788769 64935279 927838646 928038011 931030366 670556479 971679047 377418642 501026151 654418981 780467237 815154392 957744443 658490071 921976942 409033513 908206218 326553425 695878874 377417007 912324772 338185107 942948954 602413413 811435972 517954801 545172196 51542055 645501433 845122894 886745274 440251410 796626403 721893572 953895762 396801706 511553636 353851553 763996172 371227876 849964039 559786864 820735107 703209896 869883856 117080295 858056327 733311759 856649085 280206399 343467087 518258840 907754480 467594006 918437848 952022252 982909760 336090465 576391685 528491383 958924623 659580577 681287211 630394784 702237472 973789935 997610411 588363519 819124002 27954210 801738002 427382294 926007912 735535499 901172995 112991392 836277682 592250521 756560895 96344444 228602787 5655122 601369026 985763586 997822841 924963738 972792875 663660227 707155139 657600086 932683681 118396088 782538024 224470897 919736100 946466740 993677972 380078042 657044118 329567319 354541031 66681436 274799564 441696125 495229645 58155885 622817110 762655459 935224361 927621962 972616334 342438853 367846896 764910859 949947199 213182435 549675418 249559674 588155115 985021788 994106104 132817251 669493028 180281829 355427751 530662959 627767787 80126497 675502077 952384339 983135895 783653914 920124272 764181685 907512384 354507782 851716631 502199796 652278558 738942605 956571525 514636601 727343504 874126794 894495661 161546853 802376892 174320775 508864620 993773717 997956911 651783883 743857990 515848503 995042299 981409212 989619089 700678140 796532175 947973789 991090431 149439212 962085668 990311485 993951650 259532673 603035637 562123132 895369424 955478093 979483079 809511174 865118994 612402075 776379766 320236576 693475394 326646385 529605055 118249761 469986900 134569659 575369786 17204402 442851906 552111092 646187257 199783307 625646539 546044967 958186451 378873311 694914551 252826178 745744309 943787626 999582968 776623864 988758512 892878647 896390262 852971153 887727524 284515958 469385375 548003486 934470161 27279738 63007259 837166297 995278578 465062360 926564422 636961144 661782014 270494303 544220159 691486643 829968951 622757548 988358940 780327943 890302174 553889500 642243203 942391866 959880314 228181210 655571525 313475916 674613149 214847256 503739504 927523533 947142917 792811791 824651556 816469779 953215786 650937223 871863645 983508738 996090653 673267140 699435372 686316732 936470947 660092293 983386959 252358711 603785221 768980667 920991086 937129159 965076152 837550357 983528102 684703810 869337761 386132193 733589943 868112041 998996233 100413693 106807166 606888125 641532071 704268575 848789763 975989343 998190120 760679262 843812976 799836033 952188331 374062553 886727678 861808497 988386775 773985085 899093753 172879318 865203414 832999033 915394397 971851499 976765655 225202587 472833085 354542506 558998858 174938421 269165648 799833723 870995993 376776782 460009831 681766049 737247451 886017393 890374417 96215914 566691002 260468543 469178908 113522391 391602976 811667824 950215204 634682417 952116255 119889932 753087594 539618462 723985122 617210634 844961812 83096362 713322827 336670778 905681751 953767764 971992237 949438762 970298141 563748850 629023564 987934958 993214722 939262676 958373648 377602250 530009522 489026452 666592099 550047102 908974736 378960656 780036197 31596508 372483955 681486476 996875900 157597129 876989880 158852849 485598677 203713227 272005437 308229265 572587613 668920226 879704680 734836008 933049516 327785112 944097736 712407117 833980141 68172654 842135488 497101384 525719664 907194934 972453673 465520863 806846311 542535815 733878237 951766562 972470713 239639746 734156576 412022366 457710364 769797903 901568458 388653592 717702979 336463583 615575106 609016697 711631242 202967001 504794208 11457941 682581207 272776962 404525376 487248573 508349802 502178682 568139445 173289251 892104745 744769610 925696621 85546881 319766863 236841863 872815220 267864541 336946276 259017996 857986819 96920743 105053743 104604499 961222966 777344942 880266967 49577777 124505510 874619248 974688480 611126103 653931285 776865478 798552081 176995419 384665364 541020235 803209311 225644436 508939149 239224467 792622867 876323758 941664210 701629876 976183415 513561693 687032563 813240608 951017128 375667274 562741767 722337596 743949282 851140156 941662687 657876245 868111957 106922895 546597620 183405655 738809144 430520157 860855492 699998156 953142997 868874841 869962341 344133418 830764353 370128588 440661722 753568346 852733524 402720387 832023024 925223521 942122409 929909768 971031726 771184378 818306387 584771204 604752737 815827928 946012272 117329082 805669933 383365445 459864543 699298518 989990940 47067360 246259789 840229946 952320037 806912856 883981395 744161214 946996451 689684534 751194191 343115903 852156545 616927675 759903765 373453597 614394002 993584501 998046883 229934703 609977554 207079418 652554587 919472888 931097165 596474065 817306455 101969720 688045265 246717501 652085696 943559072 975146780 293915868 396667383 282205138 466910716 304702685 999783578 524330246 971120526 107350356 305828480 75930164 539084797 449389056 894668788 457275055 540082389 979654778 989263102 156953738 575819411 644170779 770040497 104115883 797635145 134163702 508834871 278195784 613444796 926343193 968417379 160273524 753679335 789688675 825531768 902874799 968315349 530366383 951937093 489446809 498946644 251512128 866224957 145763295 855668374 472149424 481537218 875807006 950943417 767638194 840691541 577286169 857418299 158279281 623935781 798114967 987464901 389640733 413215544 607611436 861644567 358002457 715264634 311014316 539718426 742180167 871095409 380371406 990069930 839920052 874051337 825330390 916361051 392974273 530812049 549778004 795894635 969612569 977369604 75850067 491185784 518335130 976288923 302255107 537828752 621748588 844659011 299531653 927096322 208201081 442238641 629606840 940665017 291964652 901288429 488145190 718607395 509242036 944354742 736502899 993717112 515176508 566804216 94034145 165519686 805268072 939280897 418924713 736976460 752239539 970735990 797374485 842960658 814798000 855384572 813848273 975230975 301948735 598944114 995913906 997257052 58304597 544637836 126879011 554574171 987735569 994411671 880039910 937570787 901172160 983373707 949687272 951664844 702125817 827254184 803578477 809229481 973700081 981635171 784977877 815434452 365867492 426095014 632429830 662998875 758371884 767839896 431697277 800242408 686452974 772944188 103545598 268785709 334973013 865600657 434525036 927312836 833494606 891553789 89640638 204414759 772503126 778263359 917830905 940368898 711247291 931519747 544257121 994041549 748225020 776816436 425971704 989704218 948372808 997739424 765748189 838763986 714710356 944421111 40693138 962132489 941193786 966923524 563291039 565575080 738840292 744523784 440649537 859534194 298773941 778593778 442067611 844371341 829735594 984646207 508318395 624183440 848305023 910972004 646576533 904971870 41101738 381555066 719969864 992929723 502680548 772271309 735728753 850257732 609752090 863975307 733105284 940795345 192644883 910901834 956188061 988695914 591863437 826597396 294903109 997551665 582028350 807634060 184598539 688028290 805659751 909752440 183136397 557903736 815808240 844971576 202673650 297162921 822025090 981304707 179259519 526661934 270197987 483076300 483845631 641986140 577874781 838096533 695590985 796419375 692057663 701541559 367852451 973855098 205798163 994695391 61269432 656536115 126764864 690034773 64301499 194113277 688441621 933854375 263965887 794566867 498719414 966978356 736294948 806172755 262247677 341707983 620190980 934710105 528557779 974088421 350239525 981638627 574134346 959481284 346038324 471239697 338839129 557126755 850370626 876728107 664821427 819200411 205365759 237771688 545656009 704738266 829978490 841905896 433870142 705908523 693281779 953189249 510311839 717001816 205831827 567649288 634471820 854407772 639389840 718231413 100273741 273303813 96208109 451517344 221514816 755436396 43262589 159830723 260647506 434036752 813885874 930091599 359594557 601010709 497269903 947145239 738314941 750253053 831335617 882655409 357764828 694097208 293934061 769419082 530472439 558662894 123972529 906978666 324495051 948707135 92331691 151242876 876887533 888524925 451740019 822151604 857583362 993546030 484273607 561714321 807466890 941415357 771880586 871311239 576598461 796282193 899991178 906754202 50713051 723315117 765903334 770335681 328964005 904009967 829178739 964655748 861383909 891581559 454891185 571393049 355391885 852270236 373003220 485133677 88314787 306855037 805257271 824303580 878301207 946027719 215903315 466962921 146808033 204335688 11707552 414692999 934473778 965500782 116661898 688622241 207571744 542493337 580372154 902050243 538407727 963996203 521791375 996730205 470411916 993100084 699064290 828617081 82225675 818524233 376418498 689385739 593780582 987747207 53978927 468922456 10719931 821149707 489984559 624421486 934906923 937983695 42443144 517475401 370095732 417996138 455372889 862787538 490839828 675340795 529985819 780309473 195990297 992750911 843016500 919917875 330641689 617793074 402299779 511018883 241303330 392475002 516039955 626689769 157677078 643359043 701814212 764813459 131400646 228568271 584970218 928121022 497889643 857426331 98425323 865732634 388923219 562470418 664980945 824183516 849662102 982910903 913171803 941353176 819511416 931685668 478669043 519471724 450947696 648607643 307848128 325455910 529836049 760572926 954422772 963742379 447870770 887026318 305977857 980101138 100244399 574938771 591646911 911489249 182548104 633372851 458594228 912124674 47865449 149089648 839530971 999135915 774896955 801024814 469342199 636780964 14898122 470712005 856516895 874784541 233833730 460684453 693209447 967857449 956022471 981867777 838024285 898408014 659615119 710080340 313035242 495702088 458516375 569007148 871632224 999783775 632223444 664678596 296696201 913444939 85156854 323572557 817177807 935172634 280942799 746212302 118461815 589498404 103305258 235238733 658241668 669186871 982562634 992867764 13527031 149213151 953497695 987090534 948492471 964627220 628015959 995456070 351363145 942155730 229382735 580079974 73680927 642676883 98411812 465821509 287924515 807046144 944991626 959252346 14720665 842118790 731758967 766474854 356553169 480695509 8908365 425050078 574836757 748903058 473045302 940410662 551291373 802755530 864471065 890799024 661307893 982278575 655168238 839839004 144388096 413727760 793372374 928392242 538734403 938195801 198512804 479143113 733094185 997518032 204861722 729271613 290029616 486700076 296317095 585166881 132770924 398923318 709354961 850083434 481560319 684042819 197656239 726436584 561997647 915417315 408318327 969870482 443622100 996301938 540003971 973175839 935239833 986226990 951317180 969176762 55229614 340870720 888338649 920958129 794536961 955503709 591823387 622707649 817082141 964002944 103726947 530636968 729206620 862873584 870584817 957142579 798336009 868799755 479634291 587618567 180798184 474584286 105436986 578898060 685139599 882182324 837828434 911631331 495258273 848173030 909389857 916155750 86267058 167736850 561024537 884433761 490054896 578799392 774868060 786867985 56371553 265829375 546537523 745475603 240053842 708461855 770342666 840358879 5599955 563623185 272780138 559792715 211214907 924501951 123195364 618990923 494645248 902553359 879886313 913609977 231787552 826714904 686561197 954489224 926122761 958343932 868430795 898199472 647715271 754784168 844676598 963316317 974654717 982882022 135890898 664434677 429619223 787804942 786438772 832130961 289619256 579789227 919574896 939673543 976210601 982502649 167118786 891702788 451796795 917552003 967509090 988068158 16285249 309040618 300475273 604062721 207393091 243624981 466345781 685698868 30677316 730911912 44686319 649261203 419277134 753981774 695617827 785249282 496199467 835513795 855144955 993107450 554679168 760099011 328052253 359313062 866306597 893806176 150139322 239092768 699863636 878991145 788046447 994028349 627544336 902775631 230217408 563519475 117330970 617404494 708611273 884815785 524064829 625449763 528446120 784301244 87765612 688257199 675591078 701648969 495005079 999530632 510369625 741027598 420756056 902176397 543398523 856942130 141897030 598958410 189002529 965979058 274187538 503804896 825471477 990814674 554231581 753168565 831929364 927106700 649839136 952127568 608869561 667589647 487733714 551086730 873337485 896895929 547431696 643113791 864396985 931545475 581534957 586312934 66949051 75266670 883531020 977726682 118433960 633016733 693886266 990164993 99384164 167383282 447996080 833760689 406377002 759828538 25168199 63274892 616281509 766588702 944309995 974785024 901897087 939089416 5050434 28440123 703543177 732023520 97600116 810647926 420108253 442332961 172641820 508877782 516511962 854737973 181806120 451790731 865443938 877970349 197191593 628498514 103191934 946954504 568869735 601224324 477729720 712848478 595633207 993458694 498370369 530243841 639412504 846379947 299233871 977035516 985291787 986752666 511709870 677504354 668455333 807507876 932799517 963604511 705471444 933065890 663705257 713932866 428338079 452182353 156960212 969385272 285459513 491150725 869021258 969830067 946606793 971718761 48416689 562809128 407388273 415683784 290614770 600091243 709277730 788592697 85892266 428321975 25918404 47369053 19048724 274125492 752792906 973097024 760990856 902392373 349085533 919647605 79918316 831244498 586603767 768900183 959667861 964337785 844162503 859200212 924123395 961593303 348997050 650814011 114157535 138066096 466199339 976152052 225256568 537000214 339134975 483006149 70736694 434360895 385574237 570345525 769320720 876229912 235283808 791672729 757681980 865120821 329670831 471221375 217560504 285529171 673168762 675078445 115998191 717945518 493935414 758252154 771323239 979308224 634966060 667559831 75121709 213424280 745437825 757720461 362540355 947434966 82633207 569166063 773952389 778849459 580755041 590203210 979492567 987012016 100053782 419487405 34834698 954254804 345794936 728143230 387479104 538733006 272355784 774565554 457119736 520562497 68828172 269979834 834151804 877611757 979390532 992777544 46078231 844979840 62918978 656755731 984170349 993732187 671290427 828997044 115826325 608967216 345453119 884563958 484388577 762669765 624941361 930671451 282121415 472183902 483652837 889934767 417061539 925915533 440221322 946287397 544527320 699678084 816542798 860401325 672761027 673735906 579693584 912481589 82488094 146557654 61683974 84730458 522080820 680406046 823553722 854886287 207278185 317889716 991231646 996574240 896725356 993929669 465480431 540280250 632464209 729093897 556840863 576251195 497029761 814377515 968194830 995508899 220957867 408734936 932587277 980202801 597541339 641422104 524631108 757134927 823884054 963236021 800164019 975620397 995309225 995365387 176765924 485422230 439341989 535548114 607324163 642961594 287633341 922448513 161462099 751849593 403204132 738420885 308888435 433550062 935553408 941001415 447451997 633886558 84139717 659837928 733895809 983912071 190986756 540411060 810343409 985373458 55305409 68831920 790150967 828488951 619320491 916669550 2478283 959377702 624582945 682557055 96428309 504367429 65247075 454411223 919321448 962075198 419616587 426046109 172161636 189600771 855446118 886227282 394284369 416063351 809047463 988594260 86012740 267523388 69674643 625772297 604450584 758138346 484283099 885207807 403568169 465076832 730490122 953887932 692109283 976711904 33697146 751961313 139400761 956735108 480889197 597787691 752326182 913517199 373201402 826886254 292620101 891501500 263889430 365112108 119107262 505611401 601378465 705178021 486770602 826730615 875001405 889956087 969700224 996208715 778453159 851192854 41479486 151669072 953601993 975916023 981074671 997834602 220313655 403854376 839554594 989939068 677564127 888823507 449215214 766817210 407253118 572603157 719188004 829067476 540038213 947497356 513855108 771616909 409014283 494290716 812053648 905747422 461283227 915746434 874880047 901412808 432525589 963653214 535806824 613481275 930689833 937715881 953285900 999139544 577368093 729329160 195775470 817169307 463312125 479716752 700726363 798286631 893868573 931491340 635272489 951517473 227454374 570111071 772349463 781038048 475026178 820910207 775208795 935457220 807145397 819649941 41433201 178126327 448806604 907991735 814742258 920791367 170215625 736024176 779034637 978132979 972775955 986731695 52543913 560422422 162763726 392685316 47023796 508764975 629958161 821231187 856074335 891192543 664310053 880971142 63898418 714614100 121025957 126111676 771595447 999564178 435963535 662447911 917752537 941120424 307532401 687300649 705559258 841547760 676718815 882006567 26787578 264606929 580424992 797326637 465620420 501974813 61166177 402697602 393817640 628847115 739418686 979258402 745562982 781203394 334899395 667390971 989414421 999462964 691025504 901934085 822576598 929078760 162976377 534486950 990487813 999816785 874361173 876679237 542724149 743329307 138990885 452384729 113088131 459354025 206631526 412340167 53888872 937409118 525782272 829269223 110494232 492067954 15528600 966880689 526777810 607956760 127963880 163852231 7318874 477263081 521229721 685131965 316739627 828047573 938868809 984632882 449854939 930195809 965395758 969276478 687531695 840681910 337775997 510260451 474019376 641147758 483831045 903153378 322038208 960554559 106542237 942863245 212385481 778988866 961224247 964489800 940797482 973347450 241426511 525189095 16561397 268874056 92939440 534721119 295130636 519400473 714596151 946983450 849956320 921028948 803889428 851925027 343482708 970597779 410342854 755864905 603333122 802194769 982645549 994506114 660117268 680108773 875915789 916511422 463794965 985899255 196867659 295114292 242225980 295425989 288992456 409114229 177851364 245437916 356820254 774858596 178079733 385061290 107781468 406671411 691813427 858607286 334210268 978512335 995105187 999305162 569913824 593961650 899630737 996477749 339252367 788874490 689181720 771910781 18644687 372378170 180291264 890211315 755544603 996447182 491347517 892257880 271912275 570516163 84750034 488778295 22043957 685163836 251396225 667646465 514516510 635242040 37565680 268898770 474009623 881962800 263002512 729342849 253942094 936384396 893847305 986439360 653763491 956728935 42697571 714713047 303400143 667584546 537124616 890854302 650865168 781109674 302633234 543562838 79938172 875987278 777982988 843099484 874125748 976926721 51072190 692702903 715158782 947447865 673756528 827544351 874334270 876685325 269628290 563827898 212176481 869469177 799109686 875925999 769952944 924693594 554593471 861825758 751447807 878793904 183752621 880063855 519400487 824248919 154068683 973081453 207372491 781972488 220245829 646870501 988140555 998726709 554478740 754246331 932533076 959604778 783603476 887627997 37854792 105154467 387122123 546418081 779928804 819410338 427672300 887409466 249166326 379977588 659190408 861985830 56553301 280458497 475717325 589970778 451199752 675275107 305577764 350687151 315931335 741700116 904911159 997651737 250001191 567209052 493551130 869620210 753578759 917743060 746026836 835748215 277774886 652376801 397184520 621165081 396300737 863932675 604557420 836519946 854032099 934719577 762109598 919281818 752235257 811448002 704454409 795387467 93651173 513006234 221194617 854813889 944120664 995688048 984579888 994757289 84797848 254215455 867747554 960452698 151292637 563756554 684344771 958334778 906526486 967731210 759949487 931821834 586390242 723290547 768670765 798408584 930722787 976281810 629926024 829216906 979453434 987123104 128550360 790637599 995213951 998727823 178099364 731804400 151092538 709957031 93400168 562256326 557163350 906069705 879937548 932404676 899650595 995114178 313588533 658589026 810459005 909327614 403319590 514613201 911870689 975382328 208739731 454045120 509182974 694061317 180162954 909990846 58778416 611482040 526352508 774026058 144244299 576328406 499183787 976141549 36879518 742461380 556784612 739786250 55933731 973402340 631645456 679084471 774335905 997226289 835517950 984251972 119571822 264075053 844458536 993649912 62739939 692757221 862663568 990972076 19096751 578803920 669937119 981281053 84571312 539460627 603401865 615178366 726872071 862048923 985706320 995809201 240281435 519147329 380295777 931625828 313040435 876819588 772101661 791127439 158511389 420019684 72247662 85748319 521626618 646971439 883554715 910823399 328076140 462168180 933904219 975726548 255345719 506142053 900235174 976960006 123586112 746483689 293807558 461246316 460869757 781996421 741717146 765646909 630527785 795702988 852598651 855850783 13629212 461313091 959558950 990857754 366798771 781834169 536053747 894479391 36685463 425165319 736138235 972652393 864439960 973034459 606000660 839387388 98751546 224909828 293624400 778777231 936815321 938651882 20592118 883385964 86982762 540808800 347273938 347562117 139515937 309047034 754665301 905225538 851318274 963402406 735110616 995345405 506010531 854773908 624777819 844660266 418213653 679090884 173639372 921802867 349845908 827590249 28674047 216260914 569583111 850181904 749283322 874713572 312470798 364976544 561934084 584181404 592743180 915791081 573916231 677053010 224132278 403734270 819807599 826000044 300446241 892047211 268278689 951501450 966705364 979573878 268951809 908232179 293236784 489626517 773894393 910955405 751549272 787474597 895364074 941212152 541608789 922592089 794190730 859376666 417691244 787416413 52549034 622717480 943488372 951143256 309256278 377725366 709632173 777240162 650588716 911099380 691328350 718902602 180449225 494747106 507405574 749622518 324016567 398537105 746170023 999282417 861531522 982302177 465993867 847856587 219808155 423319847 804279241 950971065 19392810 446323312 512437291 565915887 591469124 794063879 829304531 907626195 360077081 553666461 512533273 617989672 510332762 746200750 227463164 731812868 589975423 622710739 92539758 599771167 398410793 808694121 936088028 958382391 64931871 822305726 87508413 510042549 340493239 596287438 807483869 852700999 422989755 593033108 106320649 229850609 831501480 841164706 627051978 838231284 778676247 960430458 653054416 877272457 360044813 770696326 422095811 629399370 768867938 845519387 620503020 855746349 714672948 782582672 500018087 644754540 244806973 650483972 580342461 887520567 315504945 443984881 292776482 371542515 101644427 689874316 507324222 920413270 594723428 757727892 630099121 957841375 323841545 440623388 971848462 993314780 627731114 703249253 655610133 745554459 298351910 871491729 456108378 907465861 692287698 809839359 65088550 636102606 804316330 953032201 743998568 999656749 51961132 975311311 300123693 964614836 981534205 987013547 569239483 756437572 301005914 340699433 521233216 636332385 381484636 403152423 317974083 698419270 740016539 781760098 929532324 978580038 876525675 951433811 123634664 461932813 38744036 168042039 610390081 718851801 193872952 790088750 602429979 812068670 627908435 674410433 673733102 795989151 701090634 800771708 707715526 939626995 387583335 776533968 194101241 301718896 812016615 850715976 380158198 596342860 198353295 710160120 591041632 975425014 580509717 597474326 80666035 591279363 39428939 413142050 368338677 398007876 472835351 985864183 489055462 585171830 397033807 522077011 27357462 837815670 787475790 957351100 126498844 989657606 760526346 771986757 253128581 387954157 75272303 250435930 275850004 283390603 514698468 853843770 441215258 747409953 100994647 355438912 950192579 953977738 637998578 686245607 718746986 997199186 930356867 944692580 538710253 652717133 994266245 997116399 73589623 231292264 694609342 743651560 35925231 540212330 104815893 592814143 662483702 699172929 636521491 668472818 253366906 302628362 777360581 982450247 131532162 338790700 826277089 830976302 566116130 673313984 916794814 983256033 625463462 792973983 938762514 993929700 565422026 871878541 63458865 299738945 374278362 809232237 942658279 980104124 445226696 977294730 109162777 658087198 986880463 997071579 741098509 823458965 998839809 999243889 288646905 720581998 256950119 438504354 78074660 835095593 597234757 601416520 585781213 913638466 343603083 432562890 829027014 894132510 164821841 516156697 656122743 656527886 54412109 375218469 58079748 923451632 189117701 814942231 346974731 905586530 140037766 292546054 798900733 816025131 408661311 671070991 891736263 924958026 244911968 857219701 912250691 981220185 577147284 777323083 440451736 932862737 628707877 773976837 974260012 988182959 172543545 186652975 416456884 778253682 488063721 625894013 194971136 923347454 858870793 994778539 98038292 825107968 559683043 953981782 793233735 833051468 758561256 844385328 334572568 998325052 37114936 621297744 116918383 915923902 415933722 534456400 748673691 830373904 494106468 826047853 972471993 982149390 605932082 718733678 893514482 978930963 3210383 680222015 458676263 698632123 115610038 283991272 751165261 875127403 441632935 578626235 874559165 947405518 207485845 508946738 430323293 715127997 175545968 729211972 642286399 757597857 259036863 588433601 463490756 886024486 270573652 275502713 113102997 552169990 506682033 910980499 16109493 860965289 434801872 671139131 238521454 370822759 483202282 504199918 833073809 966949472 886813499 889807300 821118674 882457342 105018195 154712866 845299373 855843861 782884817 794770260 713320194 931144931 228353048 235488308 3924109 921219538 864933128 957557881 485747377 683435207 341233028 914436282 497384257 835315568 736306757 739846710 365350422 837861425 721912994 757230930 642470603 986967756 95066024 484242821 155394766 323030825 685989011 777498713 155366738 385639010 990167859 995718166 767296227 837693027 833287045 912891837 917101385 970060797 647829680 811927009 998530908 999514335 83902832 575075275 572299951 734975303 301521367 903934253 461034702 915821152 291845026 549508200 700979612 995488378 582046989 987048561 461654625 817209805 760144369 842869002 314644754 634216142 228386257 463548217 81764853 316555345 968742473 996886151 481979960 964235141 233584736 979681644 982766333 989754381 725641274 883593969 336701100 771838858 715663451 833441239 107112415 718067443 220779880 236484774 743673032 785399267 224295212 228958247 835435348 878871637 840965272 991991779 437226845 797472213 111899127 224079335 606955547 890793540 505312665 947999596 916783413 954505498 295884481 899873435 200344403 939753831 411422100 635529159 934274295 953480803 904665502 942253501 137066380 883222298 400609392 568955930 305651384 334520721 574364276 768132949 148393611 429123257 706597127 783305886 69845236 165742086 401817397 475865124 572564378 641456028 267937057 669949320 947520392 987444485 698237324 844697778 699803190 836430589 679714978 861161799 683760285 954479520 20071861 819470622 53647824 418302536 289642754 767383184 240457665 987762043 676905343 861703559 67656677 716616229 631346122 654658232 86322288 668589574 560713334 848098498 200495632 902219046 753705413 805725369 345427900 546607772 635204913 946684966 564858653 693925674 200921341 699914160 782938314 820988755 629680240 960588756 645227887 772133988 510960816 617597139 355707949 856689773 440356445 980531527 512904531 568828319 61827713 174154435 567901480 584744283 760229951 932815268 561089766 599676084 584619705 648303753 615143021 943184945 211058061 331776085 672462839 847131326 943349063 975284726 164686035 400223671 60951508 337069801 112117873 951129847 529492908 593843140 628196634 917889427 672345108 974097289 118151231 997476781 169220693 736897821 656130714 775062915 448147443 896572597 182316916 841138213 473404418 595988942 163677369 356131635 216509774 893154075 515913136 776177491 84229972 967018833 247617747 311992174 8466824 53833741 587254453 828246575 554094121 630499139 194038066 462191339 288913049 482612662 269721129 477329897 897297462 981408928 26540956 165355103 124084984 129773452 656003652 933767411 46129995 460065901 899761153 976158097 716390886 854711160 104765713 985850033 424162627 533901532 581584764 892965106 367699789 779925430 885299303 930910011 523465768 811852103 190549874 833436880 753059359 998570644 922213109 975864563 97505975 274022355 113871388 197936078 534697086 988889157 794856311 805324409 541426258 651654319 194184760 884907343 48171546 765182631 634173201 791865380 799806897 968955292 298988984 752464006 291490953 660070668 247409675 475109142 312568007 778250189 741911563 832191943 541355534 961438707 589397755 944934841 62654480 807119718 583682064 844087449 358689746 418027433 9325150 219808814 83459738 827401052 301963252 834321947 755140974 880380843 572946316 990299854 921427720 932531713 800730203 886011580 906979165 993017669 620223951 741513221 288297511 336827931 425674153 825475006 762848804 844001089 598154932 676911083 263278105 285460922 160765802 858161952 739971519 915104449 71125504 622283575 37664268 489779254 463407112 487182746 839441558 884042256 394078457 461085779 825685221 874898371 202457515 279797637 178557940 935285751 391092723 735086887 900306917 933209889 440778879 510444767 251784830 846883825 451407680 998775779 798033052 866539126 226829906 781060511 87070923 205340658 215824592 297719697 75178635 464994960 97879184 596424864 517070462 692805891 820089858 934191939 265422059 763527930 314410702 751584455 505890418 774678524 160636212 557727745 841582503 959181003 937208481 994403729 320421517 835120498 905213754 940438463 583114987 826981307 316549965 906017169 433215317 724250713 431960300 540922162 264313866 640487677 33334583 624777750 294159287 605983587 25668814 428084172 316368654 431109926 154564702 612016757 940038471 944010494 284759576 700658677 423171201 708323991 632386952 762366107 292957214 951538916 200137790 929827828 989571344 996567415 160539755 535590677 335263354 546889099 720000500 754832254 781778877 905523806 493726463 832363179 871104011 907889282 684218453 697948046 334078244 962885619 408947881 754704425 939930820 951842861 913412613 930341376 417480496 635664889 486380273 955757119 645131064 824492948 189448645 419571249 952304566 970899125 40396761 241185175 232994068 501107619 865183570 908643365 909725055 981435183 609214927 835846229 669011533 773328784 602622241 734774926 587588347 963195846 74203962 420534223 392359044 590002641 466237689 874020244 842767399 898830114 837434314 998163677 482441714 554174850 738252497 770195238 598303151 961759781 143136012 620707566 131385157 518657734 832966521 946968453 38848821 418750516 918980219 921180440 58445005 750265955 488847880 888150640 710623988 993588829 410493588 944656989 504467557 636240449 318773616 938345764 528577753 839409893 637737814 738547743 394423186 636798272 644833473 957558879 248171924 870331365 269302342 964446733 399270613 532903544 787825393 942408163 450744641 815679154 767471680 905893329 204854554 209067298 188972733 653314062 73756418 829320436 484206591 995049379 403872179 931494676 708563691 710541400 998453885 999334419 675322390 948725084 573736799 719596317 712381656 983110686 172599166 643917801 523294118 931105443 829071959 869672726 38235985 173271396 89502937 538836431 651704000 871791917 598084580 718058089 82966530 610876806 657655218 711232563 135824045 694067298 371196953 463441097 400270976 756339566 979924264 999457674 849634652 866066259 637739453 805090893 441695323 964289729 822933529 941094669 832968422 934683014 751952717 765851287 401759559 803992869 661040420 784606233 352771671 370989583 688716173 716631706 832053073 927714454 622082027 673918194 80345624 207443202 230156985 303294842 899014413 983853896 115505888 888204791 346806518 937973031 352256927 509086586 171922475 510213047 273989140 583632775 868668681 997676185 132919060 396993905 629720136 742338415 110931010 502674908 689078576 924736893 448596077 456609405 631398148 961598395 957182649 972867888 805811308 854712647 527937512 965017580 313995187 856099109 509429905 596228603 402742016 845142110 515598485 755201543 870655157 892263034 236953433 596878818 984649904 990184446 245315692 792734837 624134463 823330985 870184899 975030399 237008316 273001999 725830599 968807858 43065195 204425071 309454611 945095081 798681198 906522134 491111896 690405494 488892425 512999936 573593583 694140203 592156180 709605385 22698305 877955689 708168534 987881390 630978797 985505417 372952198 517094854 753812890 954493642 137482914 934920707 262394115 836735760 66296384 249541664 384941737 481473347 630231720 785196876 134747703 155900840 401101885 987628185 258642445 763030286 427164673 882829337 232842032 591302178 645674833 806322917 657855709 706933616 538644844 905865703 192279127 605419353 740184929 861413043 696497932 704332488 389907171 742568932 229244668 286361429 217197950 483815190 828079311 979681381 263293709 633209494 391818939 771576944 263914142 902054829 263240169 357278042 740400348 898310019 624104434 855500311 273193860 628997883 965264777 997793121 171079996 790614707 305753846 409459772 462927639 564391115 803351129 848216847 127034836 253488610 510493920 716525394 953828447 964340033 791192742 821326080 550443252 850384095 5310855 833761816 292196187 381029163 446859856 986959236 80678215 150339324 946937492 993923207 453575738 884469185 765512329 864764691 537105907 593768580 108699474 526607260 315165058 673538042 764360869 787632503 870986013 993832640 454077773 680737352 289465117 714119439 110213131 851785468 19469221 629754814 806955522 857553593 280801142 700825406 753889284 997239861 6927766 251434166 255786374 680246366 656642808 943354778 117744152 206451608 556528642 933947191 635188350 639968742 587700177 902784874 482402890 890033754 484303594 491667871 597972458 873175537 373042352 909278461 570847926 708580799 61134733 931573260 805008849 866208131 447213117 952287802 37248101 697743307 409569239 410881902 702592396 937166373 975741694 983362676 687611715 714327360 640826269 882767046 238210359 867975985 860007361 957627908 18152987 148581307 625720837 723977299 998887890 999129290 888275084 896735139 237581872 954070223 233040594 613304987 246502140 949994742 37752008 829997425 745301757 983505581 690412235 794007816 531216164 561285656 686305316 992158188 123226809 827660382 199747643 345070660 431602305 557793454 756624989 879362093 135112674 430282271 668329539 700196029 999726316 999757473 793895620 927183245 257875007 294029251 505250421 540757449 460396920 792722098 40727449 130945771 401376315 842287935 455086707 963184050 224556506 362731051 726942799 903932681 386364820 528039113 919792521 966678411 907916264 950974200 147752764 462290652 992895338 994973474 76898562 420683549 280727689 849640707 85752007 628327809 817165789 927051660 380359032 635212886 969690064 992228873 201473073 546003267 796889275 834510796 550615759 696305622 887081180 953432911 521042807 799257452 473762612 957768230 985330182 987109441 685301961 858374595 293767585 767927928 501969058 795510033 148996946 528382604 23260976 419676997 204704223 301316391 847662937 867078562 545069575 947764318 410209095 878180563 967898750 994400460 231830483 675438744 548161650 605056848 573416171 812000485 215930828 929083949 109216030 249259134 840142455 993248728 728678530 772866959 61391321 711851419 650051927 697227725 36728055 100339841 385697701 467822910 98291846 573469961 552147826 931075895 404043923 439774745 401397782 763329979 123512034 711161987 731475397 758516992 623717704 859965590 771941598 884743452 145901869 740736836 93381778 178101243 507624500 671732145 958143133 959310109 539906870 973345264 826052742 842793281 720709065 875372814 177319153 658157867 204367448 932123398 654457644 947613967 29193916 297327755 495523702 569094187 545320848 743139725 78958009 890187707 543518486 873677952 326696240 511130014 63232672 540581993 557129291 736259729 520572315 994597670 615342869 616806516 97734521 833483255 738359854 840393473 144436394 320432927 267180526 471530840 471706460 950774371 474975829 887226770 599110525 720305200 244076287 904352544 457545224 850031874 882716625 903089835 265520170 881545039 997709677 998979600 443589864 499827794 1406527 683636268 904992232 985051310 874654402 911783918 803098708 947041295 613442855 704149815 57997721 457029639 296343788 700809335 357127849 539856222 491008584 746921652 349339028 586992628 20549054 816567303 985384378 993511171 171973264 433239867 430733241 983583032 715238833 907138062 743864326 761228651 31833025 262117746 120280600 438320781 433272930 785452790 138457902 347338535 220784941 623677071 413264413 545670641 433491623 936805513 850297365 958367246 563873617 831783439 53469637 214607323 594525321 838816901 973123982 983510460 354610888 486464569 736401923 982401941 155800690 421554139 969398454 974764225 960894998 975682066 344168287 762707103 345684634 551261359 552891737 831014247 581993803 623261951 627680834 867345809 171882875 502065625 112256635 476106830 32071574 699233234 448221534 916784214 28917499 158182232 28674607 753508702 567134660 689052836 519795561 924159299 579777475 870988841 216125201 559542447 595986760 739775589 467954230 590845416 481898522 907961683 149760107 721523480 389477096 677710193 329673780 992127733 466635290 725824141 363519614 531966985 310036981 359540762 658442135 702920178 312470066 994077571 985473125 991921895 583773450 785243656 966511415 990631279 3001252 694510143 815310202 908266162 814906205 917300195 106350849 585590412 319914425 791996602 186880983 950608160 772463625 784204337 360396400 363362605 732082459 979204309 524171684 566834876 228439236 483550844 989698664 996927846 120555138 443575993 115635023 291524358 79782265 505848952 448425634 508581919 683655874 825822650 15985740 955409230 423148692 715308455 483781637 792685107 490927049 981947529 828554007 859857918 228521640 992331460 114843444 958327829 407049737 458032856 693968398 991149257 559269841 985120165 323701942 486613134 879824544 996554401 522818441 539657104 961252265 998370924 351227363 467994037 810135853 920066318 34786695 366123180 171908309 497421926 277354978 519513002 671479047 736944659 495896641 616912073 15166968 952050787 343155825 930839478 309519116 924021727 895768780 951820931 877270751 981861094 983368146 990310436 969216545 989368589 69867374 399430791 416408342 890218247 389708911 981067601 972571657 974213900 789571300 965317770 997214323 999755276 142463419 389224978 256158061 342625869 76126291 719910333 751521583 888250056 248552696 321364600 446289482 760435669 257652026 552577719 68288418 677200859 43645862 384165986 499328183 901099983 505770612 920479879 736546715 790242305 732519786 792892535 789542489 933131283 120065483 747595927 472310454 594583692 689344001 819361937 541715320 588100480 713858199 829267155 620910399 799052822 389794224 411002501 149906198 683430567 729644052 754136395 79519632 176234231 230385667 520439973 259751047 684148964 386716518 688079745 704718555 988157055 575915013 886395953 832918568 891982155 873837707 991432411 390027432 496623979 379656056 669974605 841532406 873039483 320308029 664164861 52730966 245852581 259173414 871818625 276521148 303286275 349921610 508495015 383597674 935842829 842522832 867414740 937987847 995901959 381183206 500238869 578021397 978257052 8884830 796927325 480904258 618757866 405806081 580569206 235273753 759355455 614634908 782072936 336512281 476223697 590096397 603709987 578407181 997037677 879245830 953278104 230246651 517419961 464215193 693061181 21553974 648999538 699258824 773398019 979744074 996105183 61472775 100188618 696892908 979178344 382230923 643885644 963388171 977592604 669644866 890460614 368550984 813936624 270586817 297663141 242630371 450911941 366662200 547357350 522750262 694805385 198202924 356999938 678999302 967712479 177295701 434612928 28933738 97911992 175205600 647907715 2095089 76370726 981391176 992802258 596655169 674591799 162050398 311656746 125400637 313149294 625494350 657511709 845800532 898359313 802149987 972579226 671846611 924216507 973285603 999035495 975355261 981157127 819209281 974970652 176297893 847548417 781701878 871797088 992405387 994256004 631810792 770033342 458114842 688422884 94666493 264337893 714183155 979502099 510323011 821457422 246717032 481122093 248699776 765445114 722732937 882744139 454485264 547844301 798364594 939155252 699215879 908217208 775164516 905377560 621245073 821756713 228451481 572945118 406700518 808709011 356630104 907416131 498604252 645822866 610421529 952154105 328749387 616715633 477594838 851636933 424586592 595306557 488888274 919749171 596785368 695879303 755440287 818736739 518458244 869120204 537494053 915096896 236332066 355048311 157566149 519593894 27812900 788431595 63260335 817065945 774354530 865036416 627258150 990612064 417310932 546394786 650377979 699373340 795885755 953441308 729414139 944264194 152025681 207406681 356326267 850727363 761600382 884730041 605095518 807050226 464329819 963172190 541595087 569100268 649852816 757450717 856048785 856824630 314892880 502939042 573527961 959217740 419976949 477545910 161815929 957560319 935741070 976417983 758751532 849391853 990710401 999390266 311781410 484533994 564462545 904147810 946279005 964682923 422077030 626525869 626299547 713867227 869979014 956592616 597003085 893204524 948378412 988467841 878432921 899749774 810491279 923763508 249282950 589838355 948225964 986985003 821771091 893174344 580904913 786223289 493267299 755174406 267962147 655561899 64541136 433088616 640944898 833447258 214032834 900993399 418388525 723772682 296188102 312747466 706553611 752520989 960497728 975883693 734204012 916057544 416241421 594447254 669383241 988170880 504648005 623513497 871765501 886852430 495885146 559857518 507810466 522794873 496118212 974397753 287385651 315653654 727488958 864817130 300703279 847958807 306903683 791405529 992849180 994856080 311217234 618191852 832730160 907557214 87323062 896993010 175179954 467372335 742398303 967493427 521495554 860662797 828638647 974570084 399018601 972583912 419539524 598143993 336814822 628711856 504543131 548263945 761175654 842599916 159942999 322981030 141598595 699620733 59720011 777038771 303485931 572745109 351707292 435013645 834706705 859871593 682395957 965871893 250206819 569748984 433335094 470695094 642035177 906806474 979896904 993315492 645754966 655660520 800604254 974792478 306993682 530875203 942829157 945724994 707202585 906208223 274473639 804980982 976869138 995010780 726985385 805223267 110749702 193916664 753639874 956272379 237764993 655637122 560277738 683642084 289975125 619384792 26956034 337216132 389813608 631832749 805652340 934207904 892426685 995494079 41507951 844641610 331603692 401366283 233116581 394739486 103859477 966285105 408719957 756059847 711462171 871656377 786452474 837886893 798566404 985354563 900309958 996638702 396694241 830632844 525395473 538423736 695027999 843392130 914203806 962080664 69620354 180761580 446041792 589747183 187701051 355778015 796856312 950462645 325538997 826610599 265218839 878112217 577427343 726333667 889435720 931130188 537581147 971177109 487791576 985707274 384335425 882813644 282656006 614129955 733007105 913577279 447361897 927839048 946353483 989315904 255334865 525439168 633043649 877068447 208462020 828592302 989273271 999681309 142958975 998365957 399169609 418794467 347620327 992858760 162879707 788629252 558653099 724933157 755116529 805343479 998852674 999181479 36488391 177559451 201602245 539925164 854330694 857176059 267266711 858963248 336754192 564392118 89788069 291265368 324866849 539354975 516213391 774660632 634458874 720166275 704430977 933850378 89131926 435389198 553436025 849626224 754329018 784872719 217104198 847329164 885215824 902739750 667136066 796209992 327346436 458384393 397433919 869925558 42346022 224913107 676037613 805079983 995070790 995854581 816734790 880302016 147255824 756604836 826148664 858896568 973925433 996358045 969369084 998417049 251534516 935912886 424551913 461625785 566727731 625621092 534878065 868335022 277871042 685385574 400575962 403334725 681479309 997183540 745872731 997719619 878939580 998212732 837210636 997887080 378737735 614711619 923038917 946224966 860679825 942627623 125843403 826760360 168853936 743053629 828357430 910895541 20972230 928768948 510174325 944740982 32490653 151092581 225830541 361937076 916361347 943669512 486398295 494916316 854971868 960951079 344637782 491207421 279955162 751505884 905149100 981044259 153820849 965938691 926549332 998537601 23148146 692802439 722929469 976449057 776148944 955602372 284867652 303406864 766966889 790017155 768678678 991497395 706160138 841773172 271653285 636373147 401416775 709705101 682460970 699326038 277101381 313676265 805891581 844655561 2931963 895537939 468642058 899047198 474124932 906736672 717847332 786265387 197667399 517011656 627417660 758956659 723977201 803965757 853015674 947732993 426894279 612994471 557854452 680611522 937190666 937627590 7831566 325508556 895226874 998837534 174488315 984779139 335199488 469841784 837095573 996336208 143151875 947029995 66569283 399671958 611899443 939254864 686343816 979330778 923495921 988600116 414380459 782504175 972475642 993430748 198526449 824146454 618464020 768235553 986954845 993712856 624064013 806847860 892922844 953375038 372575383 749356344 699454526 924110735 642570574 703295041 195584722 703473932 689501384 867010962 201822172 910867779 483485203 882708671 956568000 989210849 835780968 935215249 241084753 802433350 468109651 606197564 658221884 992840906 660671722 888796443 579837509 881236558 117444528 228540859 223826008 341029242 35118158 256780792 908211202 911926822 484784344 952057377 953326941 987029968 682652627 726819767 118854247 770534139 679273695 821037486 143190364 577230872 326591834 955821967 680605168 958235951 426095488 765903361 301263861 753593695 662418963 828018114 604007427 646964647 917179302 928077866 373764360 764116319 396259512 705671343 879138135 928940152 309410614 859456658 600632386 640646828 353156220 805659440 188528104 491579032 198022001 909240631 378784234 663430954 738678280 816369734 45892173 296899392 90236834 167071832 895153118 971715457 355545799 711480998 680449564 970074419 39910114 364458073 665772683 824056944 871833659 887058418 415074291 919516100 87173947 400269790 941681501 944504209 609034647 849000365 34237189 980599929 215802867 368773105 191229677 494330315 299668249 405344493 620680163 712902505 205177028 921129430 74151867 334166654 334845836 359173340 194855668 614284751 167304024 923946996 676750544 860652278 922800319 941239951 549645053 674904480 320547265 907971680 589036478 999438294 409959637 678061477 90558139 945162460 240995778 771777701 412684539 569156971 49986484 826286402 525616396 791543290 666997667 911219691 771955654 920842240 627269252 721276614 603529747 922172670 278788863 308936789 47481688 913936281 610609281 993787782 836816363 872333637 646803371 950385486 300394852 747450938 706956721 948342258 899252740 921172143 64231614 340588048 234634507 294978203 49444906 357936284 234652981 296481903 499797438 999985182 593047137 761022054 829885496 888974819 4022579 542599836 557693216 635720194 368475732 828800060 919895308 942546516 17140845 642235736 7328989 618143143 984596089 987461931 78524207 725010324 800867638 852641050 10184555 458056347 491900217 878720699 379057888 795743551 122264608 885734128 1741668 572358082 523222125 778928694 846284497 919462284 970864222 993478899 832291035 865172760 224153112 861262950 671829974 915050613 150504179 837409494 221813363 467949508 525910604 907920747 43583777 227018687 431489525 993774935 960221693 980550668 596914368 623254689 460766470 819648826 88600356 470993279 328549291 717451141 490894782 897970676 579344425 765907474 492350977 531335587 266234273 651298323 755395444 780968596 140278014 588493884 780721787 871092010 920548675 932637032 285637820 646758492 127419688 346792318 144212196 189606942 35304731 132586736 363313316 709612857 771926753 940952248 290336430 892820613 828823618 939960321 411399156 794126378 919958881 947241264 10445022 226563587 408704106 583663194 218144727 946028994 792018353 884300863 792634744 975804874 807324798 998440175 370738631 650417561 402130332 750728117 690598470 861171453 796376089 857763920 968972874 994998844 83573787 912661687 130790743 624297780 144640440 639121511 568778145 880178377 578764066 975264000 647233515 704160454 712984636 976939309 474544673 476189284 175594210 391579888 527420101 624187388 232531352 304568037 790204146 910361733 803215726 934462097 577801163 734925581 900050190 902045736 361669929 631302766 274864817 925624630 412124730 604435425 661920941 715762198 220027230 417195069 423903784 443318085 830077120 937182537 275268246 366351213 136760666 394044056 782572114 848178250 691882911 829167804 258823434 430619220 584163270 675756873 214949775 481676246 265474929 494046614 697575905 762488293 245342334 296763687 277963233 660068507 477898396 639732462 996935539 998258469 729426773 776766972 604339812 811315220 313605171 891744516 151255353 578062431 216906895 838400067 269781943 730782523 391386039 583564515 420127727 816413168 63595880 992125659 61200 596092134 858070667 975346002 665634708 978163589 213764173 927135342 971456527 995100634 864445690 958372501 635256217 916644792 286981840 974014118 728583340 893704596 293421304 310781062 130589243 638630488 999027505 999168481 994629240 996127631 599866836 712681646 463119976 999506601 645793668 720696642 317415700 926331693 444599921 547003158 884545386 927287352 500729088 810416187 750866627 915736857 878734319 961255534 409538233 413768945 698782238 741534187 457729875 791182731 662249732 674170209 316707350 421231879 416069907 929081503 99267083 782218666 543993001 753076680 730041743 910867866 110087686 475806946 117640739 689745941 753128331 926303591 213777064 483843014 792782596 897467040 64278759 131704464 26767695 260124994 172889758 718819105 274959555 653513109 503589233 754047178 850259372 957030197 46041021 550544218 302054324 788035342 902984570 993288661 487253972 640671938 107875054 354597289 699984487 730458801 747906671 933058451 933351107 972281655 249709301 276922564 530057368 949014256 885312404 894897696 847599925 915526626 418303621 973185499 497296615 892806283 936220280 989172542 495949672 843656528 27707097 119665334 175597638 890271253 199652853 487394249 522829092 932547143 322369377 841122046 246119590 490504246 678454212 910571183 107147319 579742498 646933778 998933616 976083057 994360645 504923987 874301664 886926736 968843261 549122614 972076173 963761432 987076079 114897622 123687794 302359678 356357603 251252471 598644509 842880789 918590915 177484391 392989233 855280872 916463943 23921406 636757692 613354382 813443663 848239637 960523603 435773131 952682267 561576202 889202457 424237218 540893958 56599403 288732937 191188960 647549612 520333633 549675838 39501321 234657104 374808814 686732288 218450607 500851342 355770161 680368899 677715183 848583508 665449360 912430297 932063230 982160216 533324987 652210279 435258958 502692725 700747303 890075718 367380199 476732308 856902786 910915039 671073388 817657467 813266026 836109167 325943244 403557813 730057832 861635277 200413414 417954048 578136715 984543203 276565152 525731935 476963174 524463774 556170899 711063542 133297963 435868203 340099437 856019818 756916872 787365286 527211872 621936233 183237424 991953482 952979871 981679982 818209943 951142819 446195117 488562789 446682305 539903131 61591577 549407063 620238154 838084223 315811633 695528318 293636008 447411953 370207059 903853209 494766160 929815870 405682969 869862541 397239228 671833039 64491962 379631078 736926443 761201469 397046693 553182535 679580872 843238082 731235995 806958497 461864177 746035327 368974681 450172359 540026494 877279103 169387759 436436860 938730560 939478283 61092531 102622636 336074634 677425146 705964567 819617351 417895057 433925636 608780353 728368347 989099276 994372431 833600918 942406976 502929254 515319656 916813011 975240846 353041884 913177738 623611107 977487224 261345318 530477738 855425118 988559949 594277829 905667695 347630575 849619178 544485545 941160151 171238259 300143224 754553057 801961832 461509761 977701115 598643841 859406251 693613583 996869651 22677079 973467057 977714110 978264026 398132661 442994030 911975361 934268494 182889090 302570451 448419884 883064789 628791785 918533408 838169166 930049487 906322407 920412596 537347810 842129640 964922553 992778279 291438208 671418057 239880725 704729703 507371091 580033055 780580789 962186151 798942173 959577569 100241846 432692810 839565061 895440507 189069461 253349180 873862935 991496684 309176693 832899397 598524596 873538219 462316410 825065619 546067075 814263704 424420170 961926411 37602373 439739398 929781245 971647303 854656979 872075371 221713867 985865105 129983109 427069778 708145246 797107222 2760339 481607943 362739402 844383781 996868944 997215578 570342810 802354695 885765238 948721246 559815697 639245608 844681981 946480180 228899565 812211869 552237922 766918635 809565690 948495612 947279108 997787028 960296235 972214560 622890312 869107264 224445351 866032821 891204223 925876473 585383453 588183524 835498515 985384787 107926599 619185041 407358535 919476477 68511458 730240473 997095397 998655356 473789673 902312446 927341847 934397737 376029476 788589965 328366999 736771761 583376980 911838558 926631243 970702017 643165650 969996987 49875742 438439548 746852664 790906323 624685690 731074706 632907725 887212125 212890568 534039605 219782702 399784513 676169955 745381755 663262488 726001941 414639948 704727798 70102488 119130129 662567597 781350623 735975677 856111735 464562859 713730396 481280925 519241509 332756081 465123931 180793007 745654256 98626779 821610666 142255602 783025091 657637699 737712779 759793864 897934940 681489466 974943609 919436112 985534083 442823513 846098355 7786267 271475686 971536142 993846862 251767002 861555480 760144579 984538898 129022275 657010847 868167032 999997944 366873966 427474234 590717097 944500333 7803303 169089349 574484557 886033453 467991955 494762593 949877481 982744368 867809312 972855171 842811783 925010938 594407803 778400656 518581738 687079826 143439893 561812414 476091542 963828259 890923341 991387929 451180789 560266492 435002414 463927253 929570807 947801944 256497004 689797889 293382256 567549509 391049864 793781693 610459581 860584808 732942703 841004365 647939631 941970971 304264709 673457315 536800042 945247334 755128321 940950694 852582458 959193896 336159596 416017533 89515171 477590541 572218402 723086665 196042713 332381749 970183574 977157581 450930412 676083462 849704839 929462692 690494759 937353468 280658060 556973688 946411735 976878794 1715072 144300302 353072436 839873821 12153182 28604204 970976733 972009072 755249484 756772831 718251776 878822694 215020576 635910267 277392865 479457169 725622570 727887972 588436701 923089058 287785935 381164545 711952570 793612688 131150991 449050964 342473114 617334479 363901505 543066145 895560644 971963619 109454040 167174694 867547934 919860047 941973639 996415617 229875639 538297296 229107474 992060808 378673107 589802318 253312052 578599386 761861092 809658754 485764874 785427384 981276908 994351585 5985216 778148418 367352159 545371678 400057263 654981099 801653276 967581125 624833233 968348942 170287338 644938031 487503810 970210492 334928378 499904864 402763502 495689655 294853741 923828611 926271275 989046934 381598009 782882948 819020038 922181746 540552077 776914045 335396459 633229913 410150502 532194675 195218717 269124407 387553942 699858672 792742920 992094483 808303368 859364299 624275015 911819526 431972053 697133470 367277457 683854903 869061812 949296474 399061337 708187298 816405823 980585111 737440380 993477021 218341965 713051828 171162263 424251873 833463591 885950465 44963054 999714971 738545932 895625867 908366061 986329473 366862035 455009764 134132873 515396701 894557544 936347574 8859840 464043797 9236323 210662175 836346801 966975705 86814422 571382035 872369321 882966813 593336203 873753439 111686130 812931496 448073810 536483936 907087669 976244398 350177428 650434618 818248358 864326165 754507972 928136559 929184785 946672132 663672706 772852270 260300727 360875629 134938497 755531775 949636882 963843837 980282552 992165886 686659626 771925530 949472032 991812148 695618675 986892324 927132636 940590253 21080041 125408163 135538913 182921689 636476666 805702254 430893919 562351653 273622259 505212185 885449674 911765869 431864948 854060188 156445612 283152614 999837133 999875706 203983377 897198172 181508306 938521928 618720963 830555018 875656315 878267203 966706665 981819642 497582230 683172167 101297403 986969003 579049484 716823067 923833844 934225933 371815363 561011157 413908128 824105280 13315167 452003678 261587387 911071934 77415236 237296680 506983307 717767062 313901329 613176209 644865104 811539775 924012459 976581832 933306624 995330975 631753993 927637039 466277389 978695472 839843892 948724424 966825229 994181054 593851048 710365515 475723747 693540049 745169409 784866732 123167438 758225233 96337173 646704995 147216720 770843708 517974147 573604617 707185177 744132446 444649642 492661318 238041750 996118428 136646175 848524543 502193568 590391726 42159745 342507512 93410106 843983710 170973079 957771686 409554178 556322322 581035182 949661346 616171184 761468357 989767323 992833674 653302196 802933237 209679580 730588977 84158706 586288925 886535784 990808670 343962501 397797852 298455045 359357752 934639810 989767480 451037199 913978762 536431864 717828240 333359338 790354738 647256709 921029668 714301424 729171318 523611598 818289952 975661006 987769041 874458654 940975389 214299282 349242222 131866879 437578130 172340765 695536623 252205217 319245875 801689459 938103541 723774891 953466904 52669936 156491122 727188847 897183836 671042522 940117927 550099010 728184086 706069278 745697272 68921250 263773585 648966017 958497368 722559110 888991137 220175845 466687052 82959421 143108089 157826715 619770873 72435607 870781983 463919867 548923475 45696445 306170269 825688817 956163573 16110003 66124972 22901957 893789178 947968054 960346547 150984130 498957065 872147066 878806680 950353749 978451311 844642886 853448293 730841026 733242305 750785289 858105539 208271170 690956002 732880737 873948913 795682174 926882405 359490861 740749435 490511001 829148935 507989233 631119953 169067962 203772378 227928591 655047180 627852428 956984213 928158199 942412769 87912886 473160108 944210482 966876091 152409963 367748680 159668778 976966021 365025788 439603286 301157005 637431181 819247027 967480773 23840439 151940744 895332841 896452079 695702504 842165224 19184958 44978362 232254363 735397716 197946426 207070221 314246486 666558909 747356686 879946993 997275012 999450238 886291049 909904187 380085763 567539779 725611334 970601972 128555850 928829629 533617448 661619892 558465318 910238584 430754616 465490275 540129595 886999694 750478109 927658233 244939691 919604097 869285880 983268033 389148351 647930104 678903492 996549202 647900670 865221315 698337263 995780594 871110733 884321788 283741912 462225362 254621193 527005315 490681961 859783418 188870681 919440262 373325277 685135206 641959615 734169149 641526849 845082979 304019737 925661681 895100603 994655240 7426077 493231710 195359945 494041870 258331838 642794387 19790582 249179610 356476463 863419475 544102983 880602811 191481344 478806784 282518165 552523507 803809426 993767576 628613592 833761362 609528968 920164631 582076996 662282866 839515935 864986577 120519062 854508067 784608348 966772884 339242385 465234896 537653724 947530231 248684434 690691320 451488378 844397244 712212928 759970828 671006432 778897414 782565260 904825988 311838291 316183844 663764507 930934582 415464142 724360254 41537520 96104243 248487884 448972145 419161316 493327881 392265181 592943234 403528273 671384508 938148465 938164620 995951380 999569494 956815353 996403249 195018289 715496613 117887447 356659457 706801412 857407084 544224808 807798967 165863100 462271783 474310101 738978154 38357967 891687242 785968547 945509793 367161837 573177950 512889486 557433667 962533765 967442659 615517961 643297409 624340424 979966324 251281480 634500352 760873770 955897974 510285851 518852769 646345330 957938539 872543344 899353675 326565592 736209474 182818909 771303090 350574048 781030310 115934927 437055767 95142097 643110751 45888820 478044614 770166580 905001231 769373973 870804422 59445304 424010272 493797368 828566852 877856675 895109207 699776527 806835518 561832684 594301546 15421673 518434289 145113465 323229602 229817235 968344918 216316246 244087589 552281034 857917813 953082462 975594140 928718629 963373296 750319456 979362745 885815264 939532282 316392625 463216316 985150635 991272727 598345267 732455226 265761195 478618784 136653824 856936158 555511735 927929989 149456927 228255222 786868611 856640596 356094659 567010840 963916533 984971477 343204580 678811646 715927186 726020812 948593458 966749643 874857728 909010921 457639916 967626135 917158366 931681332 901294537 906213398 141219366 988563634 611807959 872007360 658167875 890987681 79296144 646001128 672006462 978098092 91733266 675940724 397187834 968256608 607604270 713021034 419327641 753312389 922995470 946981583 643668771 839305020 314519059 947736195 423209185 723083593 825550157 888935924 297028166 826972487 577463757 647487357 582040737 860879044 957621857 965517723 324013291 469816181 478454766 858043250 879790218 897014837 275046883 298699783 434132566 505536749 306376031 539174883 153000370 477935864 530419188 939174311 269124157 734385539 699643880 828295613 569459768 943309232 868982121 956976463 616163783 727087113 160891992 305402041 910095642 962728139 136702451 730894226 793850218 839010504 216401575 654542197 819889597 856850545 500945805 584465488 28659986 729083825 278641086 755915267 595963157 688462861 813914619 832875907 50078050 849712883 502374396 710162705 715989838 721119142 297649000 325867032 544293552 965144739 415327484 514929266 3776827 511497438 584303914 624383449 942192692 973096727 735571602 918715679 657164271 966002843 122054057 456717487 873637847 976598390 384489545 997063464 582164303 837597696 803219398 822674049 974605780 976072598 500323455 986498295 612879621 688563885 3250919 850614405 232720736 986157463 749185502 947409535 45468002 365208261 378507865 756243129 450478567 632811045 187921891 962234733 180923108 865095688 327080860 694275897 415207808 868795883 791799566 869832161 190057721 349656415 887705415 998154578 498086128 861212980 189942789 384791501 984107888 987140479 482883033 535178177 753955683 837869849 144032046 672676220 409585318 837227097 841898118 888984975 374146457 929825941 878040461 894414155 99067328 756197384 613045279 961840839 413005742 951341072 43295089 619796065 39793789 946982805 647075418 678365755 407209066 965079053 108529628 425786759 780241420 981893550 128750071 978350200 787839062 952773691 697850664 993056036 669251371 857473448 907326941 923232550 845325039 928615828 376304282 535470509 731213067 903646366 678053480 941615547 196144646 444019028 70923949 749393701 729671614 796161024 102460140 537779253 396522532 767684354 834439260 892199850 840083228 874867813 478219124 716108585 385309000 588579432 60406711 619215826 528853335 725993765 224738920 258840075 78753145 752075986 781978704 787514237 929491025 979317856 409792530 989245890 933368750 949417291 895927013 907806224 737793880 772315065 551757613 900003511 515575868 798323249 422870079 952319833 909425920 915344084 530983878 727327086 651056226 858518612 746709284 859171746 6581091 400935647 316620217 661595351 792552567 916050069 202933849 339580292 516612361 855091951 300861234 751398233 886329090 915431820 93210347 741438190 893253659 996113679 959741741 984571619 169436965 675549657 99492911 544141125 876870982 923006719 412792208 975009557 731478239 752523751 836084801 870539688 481076191 946019320 695495787 789667195 88729210 99433930 595827052 652624998 660194118 793144048 177380902 991219148 827985951 934026784 623092085 964090782 122408914 922884058 214261710 979162615 151241810 811433340 591506108 630123821 190484744 392441762 272312624 676043549 217407818 537558863 481448616 896069641 631016320 804713022 604924163 967352746 959021503 965036902 724077795 969550551 197682853 720605707 871608134 990477573 616018075 858038698 828683165 875804025 32599987 239801982 162293698 929511844 846185215 945325927 274397090 766049709 809740402 903891067 610950974 636736329 620951823 735930715 923113378 997940727 69438506 131956851 930700257 952958524 528071909 763046948 436668076 821204155 633295450 960794843 301848098 640755264 620188891 909330850 224934382 819659834 90711643 410344478 186865082 576372509 646491750 981318943 386433025 618160082 348533862 968000686 596724263 940047162 579092356 817477197 493216342 799608750 859340765 913116142 872909479 881902979 549299553 616861488 599194205 729114434 433664210 823544461 890045782 940798721 32789473 681595122 827250791 997129518 110857416 678886320 322591771 437003398 341259105 783392681 816083364 929126518 856451539 948767897 537603255 618238760 989116947 996418460 860163700 916699630 197506003 671431645 698382153 764627184 339644482 466938693 734042976 913902830 367806671 853613604 195222455 959693699 386970730 504665744 239058979 736723552 926024627 997431507 126021087 329683509 751929810 921598419 37811489 383278123 770254891 850204135 911035439 968625244 627616686 735348978 479022063 706500224 368122243 613324162 123700020 531909606 299544245 656848832 830404310 851332740 10412948 56455897 547382322 804921785 589678611 760333107 994062732 995898901 13360015 475193849 90052064 764482154 891043737 892713180 975245874 977994532 939060314 941394095 211060151 230407239 6785995 873641499 927661890 948466464 142810379 565783416 850027611 864889204 999378110 999966270 406759947 871824116 706806517 937728918 764713610 847849843 335579572 404979556 800290538 985240848 820165599 827465981 918411984 930990686 599904515 865174288 174184690 476171749 906955994 964256788 198752958 515129061 873421105 984738220 441797911 967108202 389365842 897005836 741827090 994879436 770977305 940049753 491826444 817939084 629189763 857018455 523360232 648124816 890343293 906493547 818853123 830697756 222538935 978191456 600606846 872076148 979677184 987189544 73854956 676435588 537603427 650087419 653946886 935118512 928655545 995136939 543478175 889763215 33649716 517167433 634791687 841077455 19659662 643754933 769791530 858424414 491092790 613555819 342322118 907340296 744453266 916051868 439315329 829517678 531399566 561068772 137740454 780331478 868562910 984259591 268265252 876336111 247715170 734132361 591331175 763505016 173683477 714638024 659514713 944024440 129223199 972864226 494993294 795558285 137452879 918379098 205428116 965418752 738559112 838832241 589716187 878078732 11677712 593487930 564276037 725056581 697761433 951253877 703360008 839848851 864210548 878903719 637104678 747700443 183530614 882783309 294845776 968086992 877150491 882626303 543605084 913983714 485811123 604367007 660388014 669209633 492253322 575513997 338371380 388630046 398837564 980383173 866365826 868390408 859096920 991146537 232324055 840557898 750657140 873186084 647269906 950972564 705971424 951271762 598229311 775017110 950270641 993824105 329523193 715087918 136021744 635930645 283296838 729748519 132328313 511043917 713032770 867168843 330075022 457509742 453499684 910724592 518909677 563276179 324011962 673851504 600983751 972170599 200618299 786370259 343338585 916450070 626435487 782706775 779173068 981692978 61679394 976954858 555621519 919945144 415167953 693184273 616109317 878192708 713555004 913075753 981261894 996235342 485298605 606550962 114010766 867784677 120297860 469410588 574197089 977312250 838922167 885636479 433235288 669711593 652244198 847694268 363705961 560920052 878676737 916999189 353526433 788574944 142951128 832194510 17827047 990728679 695817979 823162713 475144417 687708818 125238766 400250772 999220626 999810955 336640536 888542070 602308966 732510891 853143424 922177863 76478681 753441047 421394656 455720641 696616234 895154559 824167302 970642920 431902220 450319810 814633778 992278215 819868711 985353690 198074886 347436516 889637136 937165571 560642689 986279478 209707232 760611351 583315501 735562383 54698301 87036553 580879170 779166505 210568799 258258129 71348244 864852717 729024586 736192459 459936233 968802615 395838490 707263582 250383885 409899206 773581085 998999925 736693410 833479379 130352373 586999644 909694940 939206307 223126255 707445743 812714618 817854448 879192232 989062325 321273265 515323517 417854920 726892202 464632912 869527372 233528912 950106714 547530603 656730615 889149962 903092786 164250525 329186877 988057613 999079773 665505688 967997646 135938895 255388218 769485720 954627846 870685502 974009389 935589286 938899925 187993795 217864998 128112301 554108670 669224027 792546225 101330188 719739394 474410696 662062230 339442394 912754613 148585471 528947348 760106105 902359524 841237718 923638107 982455919 985618854 986536437 994139350 440410585 943119842 566757529 870845435 826591452 940289671 335181204 405966473 419326564 709903632 632187694 769369585 775344481 876822988 592583735 678593647 481596937 503491779 195789322 482928917 226050325 642676401 37197815 925369089 880650512 910295356 737916398 791569521 699803804 892382264 172898268 175275031 993519190 995448327 187935602 752650439 902374082 955448040 500938745 845304444 544716366 757819454 706738402 931044175 191740410 413443381 444070599 577296399 469247500 717068455 862197574 980388719 187965390 810141239 742948025 831249735 288349105 731214146 478604795 996910696 286114317 590255803 990130533 997361742 136089708 178308996 230923737 991924725 305719355 478466120 259839662 644542369 890866386 925923788 30550744 786443224 821744789 885205605 214757052 497635607 954570973 973890812 803286622 940692764 687465588 923543687 630559981 761675205 115591695 134980884 673647299 948774500 829830509 896363324 850964183 877991796 292255919 622192721 101246683 777502586 425576212 705713599 919865769 986794514 32833473 582944002 779567820 818527534 910783430 967098848 871405160 921149256 659029428 884782117 49483508 858641831 38455982 986878599 700676904 860175756 696367300 872213690 447586977 514706855 916974293 958707937 483363396 715124818 997151679 998593295 489022913 840703295 649064148 936796933 650403092 974426827 950785929 977334766 334958143 415804312 8791496 480978998 634273333 805389953 432682993 764784680 468577647 851120060 917746973 988274554 692504653 821916609 243227270 707465717 953068362 959190887 682642264 819587898 836500422 848527786 84805926 509254149 672212733 746137404 901746706 967828896 32294464 574612104 895973030 909177313 432628824 677401620 903823335 991242622 543689508 762638667 453819899 892192746 365599236 500658314 751175779 879039343 56211417 488579186 429005052 488346711 432249921 953992444 223821372 526308575 535645435 859845490 555750259 699526643 461338757 855128048 702297434 887813498 281578906 921839616 101905736 561350452 513946753 732639595 2926112 464264512 861511099 908454386 637338326 671872861 327299986 977478601 379106422 935040620 407335120 544440299 237363883 515970589 818443479 845273140 939015962 948153951 217630089 653594630 623256203 996732668 392157671 891877584 723903516 905398424 654329975 704235966 305064151 683764542 231927657 725845083 379095571 503095095 452746345 612472434 27800866 124339452 655481523 716717671 549456711 726944882 946912823 963071546 998791680 999103033 892668905 970822213 894902080 933555831 196460702 942115298 129713261 306503112 933133099 985505866 770393906 905460015 716860325 781736422 239812469 798138105 877815746 999928191 201421687 701773065 947405955 969510207 891348297 970950608 353235080 691822249 246118560 852426809 809272631 884185651 375526657 704264911 989111232 993087101 20991338 294952674 909546422 972673800 845693310 883205903 975911942 982279056 395773127 969173093 252237802 529268815 582562948 898630256 223969900 742583060 85543362 587102356 312071702 913582920 112346094 586382017 777936360 885503872 804212914 823821405 572229918 777255979 538591108 684178372 889588519 927180604 716007599 744122476 518192412 967240846 329525277 343839140 108000221 129019664 267556764 756437267 135469541 979946818 333470255 488910125 574138374 966425694 626893005 977856609 632188111 722234907 162348054 193259475 925327571 970606165 506664354 968819246 480751157 936640087 263033663 968272456 11812592 961394166 996053302 999307255 46229603 520792454 213798550 958721534 622749382 974105118 94724415 887078186 641466182 787532477 690448226 757978417 189137782 373738265 780485837 936765458 272901606 332038262 549486521 632010247 297460018 690214803 638968565 967191083 916944967 940856575 634828693 951376595 281120003 734696338 21132576 963392021 951961410 978470007 152882570 784263245 919855278 989961516 659252879 876099397 620990541 993678288 237798543 798296166 254462735 885033905 473994090 504623685 52759325 266497192 752880027 936933070 355848235 993243626 668035842 974830141 401451316 445725643 993482050 998604746 427239185 753775721 770928839 907268042 28260883 377676239 536926680 880479563 927915442 975563950 585261019 827249318 754291892 914266391 408479048 508117395 60048048 406320435 268617091 781093812 678478242 726790043 176454830 177859153 792924073 812575060 354164859 827515893 978302948 990484186 639034784 959497998 37094824 882234582 467092228 527404949 489304822 586845372 353357033 893538563 806473624 847733902 488115212 537170934 449153597 555978934 848040964 920680539 340726751 531410989 95594999 337383788 855408930 870425902 491298443 877012031 777066718 800197385 662805663 746196290 475356602 977719254 544887766 693173751 219145299 836578841 389329621 452115393 422874176 804395418 198290863 292348811 411465077 469573620 105657098 511420578 852229432 915541922 407237830 515449873 628497600 735866294 176873220 849386605 507321335 581683699 798484437 815654072 377182560 516458483 607290832 709300005 519658429 822001262 914355943 996723057 439702150 792342888 530915223 556277309 991458128 999720307 874227093 980971928 432580926 645673797 570316457 827931661 972736383 975977929 31196733 919112508 447242781 902058286 374873746 733788021 430858886 740593673 145965732 565091802 263559380 728131996 49120795 138597717 845006135 975225412 685307534 776238524 561365313 705077939 474493997 719867842 241325325 332710469 642239303 996171934 112146277 820692843 439752165 875442323 841878490 856993998 316176532 941433918 849897558 852907272 221356841 307274977 458155242 919404791 901664002 941236753 541832987 955003831 894935387 908046493 712306562 886846633 516668549 632857146 914921763 966992365 934986897 960507704 914972248 974943554 264361298 541521868 771920638 856260633 469289016 859010804 461514892 879097681 268845180 778049249 387960321 732641610 943553661 999946897 66697414 237025231 272154211 295012235 667367876 767396060 169108514 208141575 349007576 858494734 541728724 563343891 922250324 972606691 724646151 845777985 39614334 488167610 347848427 630731727 114730177 192672418 41609941 57990789 159349767 887265390 271517594 366393529 191111397 342846306 189335911 480888947 479369068 876982348 599497706 690165058 895425664 905660198 820187116 951695548 209431574 369419761 914271188 917958627 75456152 645028629 337545456 947829692 704699689 922006417 717997226 752637302 319704386 901421233 962003077 973530140 906135041 938960710 852740852 959705498 76485407 289602427 63353596 877730032 331291865 544408260 437805682 734999215 150440590 958902921 529266930 800197780 286025770 873993864 400271755 751840836 344809194 926819553 71452331 215018958 391224366 697331572 682168357 960231781 472411823 730103448 326990535 503394650 48676626 749952641 456896866 848390030 778863378 895933149 464731167 704867889 661861906 874363569 187703524 220933166 609340253 969478459 406597620 858402852 54468722 398748187 994538241 999830114 770346257 869577303 138640028 644868088 866956166 929541557 621786378 834543488 751597335 996619763 165558185 215027284 475629811 923790245 185834516 366905713 160023793 537494731 293659344 989007889 173990175 480834353 295796242 520891929 137255372 495660863 465884176 655417269 441921098 555888569 323880692 607592400 97023 58529816 444654122 668179646 274485641 473091516 951712036 964243736 569876217 591746970 367337305 715766871 820064465 931455470 770844592 944574017 983437199 999106677 503535904 956858220 508285695 524156799 21790499 855874373 772042499 790769113 918312094 974158794 745369221 876527506 940192841 949675575 829552976 912992979 883752245 910715901 252929153 927147470 977546459 980181068 464221136 635751958 340007643 399581709 541051089 702991753 414195668 950624870 931197003 997762579 171291681 934140274 370922309 530949128 739500029 873201847 213422960 536257162 267917695 312065417 584960975 667011823 512865575 732126120 142566851 480678311 912003765 955044017 317923275 468483931 169732639 797239287 440258819 786760222 403676698 696174776 800229735 958088900 720937907 943285735 3645093 71588111 448678012 753488035 548907734 594593591 419836748 926299560 689520559 751541559 949614192 954819010 773734643 909677078 545239822 994772987 396539101 762589191 79627298 892035048 998837716 999650019 9669405 724458713 195838368 812308408 721888479 732608825 858868653 895454307 862269046 971188278 766068255 836367805 730208168 902906664 281414130 740798658 166604741 235992137 370825681 388124407 989770744 998138548 652019362 863490102 353371632 532541489 984342861 986678660 474275865 662713872 107482761 911045867 933754890 991387822 191545614 927398379 599644345 703692882 985282605 996867515 109487327 721790511 814542166 826250835 585569955 743298069 433117247 468328208 582079155 947754427 958236625 960444219 590883980 623390743 508209116 878992623 36972012 295956464 943255488 961118153 389330871 494086976 412980390 592669279 400449826 739472758 636217015 958059240 100934762 965801581 778786232 855270799 1932894 549248664 463629390 886078511 565365402 764896438 557342460 891814628 870865482 931088840 690933782 731170741 868283241 958523803 526378159 905062237 30206492 812081941 413613879 436335685 527933950 805790111 512858816 837871620 382392425 877924286 381776113 572022412 888040627 960347050 766022827 939110191 493355531 505453476 369598994 965161522 393000750 799932546 986168890 987173203 63793781 685883821 825885097 964816995 845846100 879738125 898052368 999368262 387004319 605684958 360220501 648775314 982545377 990340389 754078190 840939212 729394840 861516263 603802542 988794987 994856658 998580463 375340216 977183340 707126164 760189773 322028204 599359625 453719561 909496199 377388385 413400436 60173532 832528606 341672259 656496459 532316172 626339349 228749294 423231841 817899057 846934877 457239434 780802766 417183922 776486769 350678955 960533093 907536301 920405281 413113778 419623234 161725510 419725868 131472738 546832315 353683605 613778371 467725652 623281308 471881452 757929770 670313466 877028346 202001782 603548646 426187736 448802822 158281819 202213374 115995744 338721288 656322805 991391912 750964207 870070051 531173870 825696553 626048530 821587962 437218037 650176853 391515960 774252378 657993325 873804549 729640822 894013833 559978602 734391045 4371699 327476980 747165501 891371059 856549076 964769298 267641911 589460473 137194812 778120283 795401251 933368332 571477571 901652759 144006073 785763244 280635260 568654834 812718778 815525465 583712555 689854406 506842357 690435689 10314301 807217147 370065361 446739930 765952660 863951008 116716192 820358246 589640680 655667359 544894958 902951721 586094150 696597722 131647221 722773818 846175022 910144739 402379197 422900874 712333484 776611478 661662090 799665607 37608353 501852845 277608152 713990065 349039561 909997553 879343673 929288206 114814235 910838974 483232542 549445778 145523163 407542597 269941734 758826942 971749672 985168181 112548117 621371325 387746208 455387302 380974745 507151277 737269678 812319964 124003338 926545179 943180356 994881473 665908923 783292141 769510620 804168267 441838484 780832841 963399359 976398205 692262633 746482854 165223946 603229833 953762751 970513712 235811355 362946687 982287046 996660555 175092763 826645611 878663872 893303125 347432277 919940782 456504449 763337347 786758289 895028657 112358735 941419176 595479250 641743115 754509011 761568186 806705043 894306188 80897738 858759789 338914358 597299801 464466165 913801730 177353351 327801775 973629828 993538528 275891310 316980237 79480352 820040437 723815022 851704483 549083570 770036417 988248765 988420356 20747700 628829134 632195292 966871502 309905895 514092382 470991527 713206004 870666811 971022244 500336780 782342981 475139168 607473788 333214166 683638828 189550046 544429327 5080005 17245160 397270659 606639295 452565953 937875220 914665482 986413717 660849447 933060035 605966611 648931375 595454369 980543157 827848000 882276775 754254296 824363056 45305036 983970890 715270997 775374075 825496168 905755777 549539150 755033098 398427732 850527380 823347277 938912825 642102840 856730608 166016127 389805005 357496130 555396121 888224471 901512994 162890995 709197950 148753686 329980473 893295608 971644598 128254410 881459540 18249873 815377626 80164624 836294647 391413445 571431931 258759761 547010440 637822256 748842807 738668643 998473315 252872601 850607498 436194494 567149550 898256209 947329322 626028438 632037091 261880959 560930240 510539048 870575881 941462092 978399723 200027849 398907822 592822936 613621112 262374033 309279543 743385262 996394566 5399260 9050255 81964779 325094839 245256902 346583651 486522555 694248046 332115698 348606506 787048237 950459393 156435057 470058404 123668432 432824534 749039949 891156170 736689928 973076769 657773828 671089445 565306870 633493394 153887336 240858465 572040016 973197965 656815330 796578578 346872358 555663821 501956626 730745226 180533644 829775342 914113462 974124136 683084694 849824422 794156444 835429978 570644683 601369551 573188485 841073488 332324356 683454129 126916615 849137227 572615028 925272575 833739332 968071367 766129858 833765004 440197748 902542088 460708196 806600467 709618926 802026245 777865858 830804407 751876777 841128327 191593270 233585940 170258496 294298641 515469874 797397607 356752429 543910357 262127271 948619632 962432257 980240733 761686174 793063754 916052003 962969495 3829983 914635432 562586492 871082515 377310568 633248032 543685506 717839707 737018700 902047569 67503635 548492771 119790843 363910393 646748104 665551770 325844231 761356050 878349638 948263219 393439218 443709240 930532621 948908845 954858077 976653199 505548687 889787465 616051683 904100747 257672633 968915870 747215554 803224978 189732126 853849413 438237846 466321638 692723771 921211436 470956154 602880829 676226628 859612534 300386272 893721810 357804618 874453264 484904064 514062790 16228386 981556657 305756601 632818414 191015403 895521872 231214073 314673713 59124030 815890871 844952427 873532210 178061850 276286139 448301432 487065908 616360765 771798456 435657710 597673164 290307400 549890357 509527911 689146285 585310896 636784987 442303731 877697073 617999785 846755993 501369757 532217953 190925917 504635391 857270096 903218022 580247675 912218830 322125236 715584665 299587903 762220166 513570291 999610967 983390808 991979304 537651743 857806346 155836782 429642412 189748437 651557746 684127889 811251230 68935080 711577815 805060903 918457884 885546813 981499076 825413418 928006496 621126217 811106810 611277413 967944180 763854004 797485457 888892598 972007746 964198006 996646747 610586740 728479593 376644907 930232526 46211738 493658539 49977349 588654113 500359047 589481268 701773137 894363648 343982426 424499606 910133934 962291827 292293929 411269885 789802461 826105389 469774606 901067485 329640630 932700981 171566293 434840015 755373594 898165412 634730799 758281437 239266171 612510769 587070074 640569358 448731709 936679224 499288052 949817375 139416287 674081355 326496545 653230820 238949312 770880785 364921748 755523604 829259153 851669627 745935494 761148306 892976057 914320017 777815156 881599570 617926344 733365209 961096836 965663344 431321791 687976026 656578145 999364272 737300404 955584729 863482780 978835693 477847022 976664983 398438023 448677224 720602300 782647288 829026549 924917143 393222173 852827384 570992521 999270273 519212277 579517280 235939804 378887607 41643648 164485155 520006846 544793732 521659568 684971649 363751202 896247300 657415264 909221472 739826647 934831148 700664999 821336878 360332340 410771749 939308268 958747198 234908715 592743240 843062439 861584500 753310611 805530545 575645463 855145585 493364135 703398535 422540859 805303258 61743679 852179393 686070863 755338490 446637932 560477603 981968645 995253854 632171849 647804051 946674600 967303870 841050864 909548673 707139901 775738541 247731032 458613098 702601548 715981657 811234974 868362568 675962283 677516509 666044502 743503513 916306838 923613561 845610571 955506444 465407472 636833758 965105418 986030542 772769099 961278528 91562853 686186478 445616389 693714534 369212375 812820109 468206124 775876958 116206966 908319100 753256536 775898361 301084884 908249018 150608906 825444895 444863368 999514056 698781764 985723730 218591540 487420630 517605258 674566794 73263878 134586339 819669372 847593089 714136156 767002808 341775819 876889151 213463788 891559358 542267425 821300706 55412004 975653620 279904783 528625536 443995995 876839639 110372782 577049650 932319444 948761134 508322543 684369012 914739427 989971849 784658639 941311396 210260194 627651160 405751116 796696421 902313911 977379777 116714275 399754165 729027083 742270561 994210505 996575726 232231113 482254488 800054231 977546414 147403215 848334611 491168160 772865170 854371173 962592604 18276477 110402655 323888375 355439188 413830822 992137963 967779118 997201881 558897863 957072627 688376588 709178091 877949520 908251027 66049329 671161063 475609823 792204816 542123172 974379370 114919601 723730764 92113933 376255932 610845954 634309245 37813108 252594559 683679022 893349139 320884018 457184104 177200791 568361382 715936694 717960165 128416365 737716778 714489722 874754115 462262225 501958413 750589248 894734009 481802705 576297377 882100173 934195694 843032535 885400605 851630846 968944687 422090900 913191578 837857696 872380400 765880681 954345461 829825878 993277317 650653547 796078289 355879030 987905241 77820229 502589175 568552179 657402116 367111150 502597750 33327226 545448768 414870437 722902692 812165945 943553650 588894865 651806724 281261245 293172355 466699596 834661606 423028764 425597419 443781208 928095303 139582499 328802600 968299222 970753348 376340616 481486473 273342212 768245333 138668550 287040059 230975511 754409030 292798305 903898212 298687421 721150877 385890185 563523901 599091813 748167316 605628955 982355099 464622026 619317730 558365429 707189437 343024602 388265412 379145196 459078520 38172147 274195598 65990475 118210856 791601009 926063893 875905677 914135257 307077533 988592656 718909629 911535631 545362512 948211210 55754974 754645931 842952854 875611306 139379500 827891010 920993902 989440856 686290702 701005944 716390280 947525313 136231778 839271282 929743727 945092450 480606793 564572142 555425017 886171067 469359597 907095416 416265797 815066319 512663546 978619757 536731682 996030624 297694860 729592375 637369421 965384881 300044277 594771987 275448815 337424634 119986952 370525824 550234058 697087517 199652645 533853995 235096680 740205071 549012197 855985291 710462609 788197974 405089017 820058068 460757176 847732905 378889342 945294631 815622025 986738109 184381576 215551796 300268496 389091956 466615793 929024957 33254104 70100490 583941320 743231634 569066770 979815429 665917540 931535150 601716100 999358078 476614637 763549739 230351193 688844417 238015476 607707974 523641381 678187119 339362952 643002419 584679701 872393140 882451127 976298223 249494144 667817366 548334524 968751340 463580085 834071620 454580382 527351787 455352563 733408054 53809877 553534525 429759650 847360975 869659789 894000870 407383770 600971297 994330636 997694388 353425802 561222191 528356069 957907589 811419760 912607817 678385304 885782991 488491476 919853652 201957629 582381195 411527801 632451907 602649279 920934374 254649495 756054087 18050569 809582715 546590035 845611840 66612371 856830809 146803380 164320442 476547441 536792560 775163567 957574150 271242768 313937624 804255160 897971609 980584711 996071452 504109489 542645550 777719473 918285424 190450021 350412526 710431005 832338707 770492903 788176836 457012861 839023500 726664984 916933074 883682211 964268516 511375699 721654487 481251579 776411095 241637785 851147700 381939748 597262231 875454106 928482058 255564139 402825625 874204022 944868764 694085001 937019253 711704997 998165312 884818892 972555201 878470291 903521525 921877326 953426466 572364596 800249834 771673547 985058044 173841646 981996414 264600070 694053973 664058390 873045929 676732386 911499847 104429923 694032810 77882173 664062995 86437927 163771715 352467235 611176905 855726547 973958020 722917014 869527168 901767849 944929420 918338119 952017121 408478599 692935957 481542335 973116434 781978292 959641563 81526041 666663082 394564635 436720765 904435034 967476964 409850660 796654843 358170913 931471329 925929469 978301657 737441076 756783948 91296256 186476020 360249290 948898544 460791876 797267666 264880778 655045053 559584690 670315957 609000520 822716464 84905534 141505018 266053223 613381738 90190026 328627197 586769179 911037175 213464273 397228147 752262101 989290044 400036890 453519237 277619451 663789207 46000132 867290358 949439611 989090549 314682635 932994376 729359262 815322407 615629829 701266510 933674364 999378345 224749424 638933205 381765054 583770229 713028159 910546732 934062926 965059778 606849322 661954445 926371528 948230409 810113200 971374208 599796127 639720099 674990463 741839067 943202575 943808632 656132249 955005041 341181067 909846917 413448378 877934004 90054769 952156095 435163625 964736978 921634380 998095245 574723390 658876876 324662886 484622425 733265736 879033210 882114052 951671214 696648332 958677489 522864096 754104529 312050351 830297830 119793863 245533517 584992344 849568358 108480366 870502331 138494981 996358731 402057285 632181524 634986824 899642980 252120501 824393493 362537428 665156635 289431415 348212037 314736953 925679775 930591649 964131598 312774617 502864411 143805792 832285353 995707534 998575904 787698448 795090709 18503 895881029 341098035 375297497 466764746 964062766 611720930 919512329 959743507 985972681 357943333 766018133 752550040 942395736 11830201 738485867 544869858 652210002 66486170 313011624 571590832 854865976 283642453 336906892 567249244 899170923 944581022 968771912 837579264 880757187 603952452 771271202 725653215 745181643 907593312 943315870 436950294 802647329 283020728 405998181 272652550 708932932 319770366 503968606 932200698 982679112 118744070 673293947 625863478 920856210 826547094 964221030 235334619 496249309 980943219 988120440 437984909 596850752 485485563 966633539 446512899 578583454 543119238 558728102 740675636 754257225 815324786 828359545 886596265 958475694 27024840 113317404 175645931 302534168 937728040 947409166 554254553 986341188 239522536 967687162 219837381 717186414 746178729 995519802 289983022 392169447 514324617 789018002 641910055 715209903 552648145 576671197 773523830 894952546 895227352 938526022 547758756 970703353 121174566 504932747 903507523 956490888 995305539 999777076 282024685 549504440 213707830 312381391 605739059 672084677 658003993 708123698 991567876 992387894 38355634 66001907 871488851 886677575 927011479 975069821 451444059 584472742 351762316 993123443 191827531 790103037 70278307 276855864 274757672 621926223 637784267 949815372 871125641 984656659 994151535 997760949 329196954 619133618 345981047 367100635 525236406 606500423 589022156 769449863 292333316 724558578 142238648 364500599 116935163 602050446 886761142 972432472 828924669 857323145 733408808 790889036 373948648 879496743 212537535 807793415 118669088 471032644 183850378 462441657 132935774 707123070 187237191 640421517 107600431 218128618 468483178 858802480 84675504 307623652 142194931 360328619 52487701 333717451 917483290 978717451 528507176 617640315 492696742 682608767 169345392 457580647 626957507 905363732 436147173 951130065 840687432 949843512 363542141 798506728 913747244 929442452 279103887 707556492 982144372 992591807 509358986 815022885 245380217 590569380 684994256 962993492 633473349 978946716 632070202 641905375 87082468 151032717 536795992 855023741 730576370 983103182 455584167 763924722 165366247 267785824 711858737 768945547 450640677 491418820 558778674 715165596 851461410 957052978 141997916 240844310 132951834 769160626 691418644 932835035 52021803 883583125 839878311 899269435 162812155 770931188 105962949 735699279 564881748 959492199 894556568 958839715 53400949 338102070 280493656 739247734 133845159 540637194 617027762 904955822 912940016 956800140 934609086 954184548 739214164 908303989 958302254 969986476 389325761 635362016 117333613 650585701 928404006 936698324 197666529 728541899 47375361 282873635 607137476 661189312 349724357 966490544 313031725 376421754 317264592 909794259 805136177 921830611 890031059 924439417 444701042 634165089 931083605 998768572 454501270 497055433 411193291 426071633 344638469 752357200 844068484 967968860 829103884 834866988 193958878 930379682 633608603 674302172 162653071 882536459 706059147 770901031 198189327 822932148 637972791 991671880 976953287 985656621 699431435 875054461 738207044 892491071 623377257 647639314 667078648 796873779 772182460 920394545 497258859 672064597 7869250 634463134 374670052 487211560 449061543 495323473 378666839 880194987 575271224 959917201 474037303 890641671 797136244 874126601 611417151 861683161 890316413 994105601 761941771 795161037 820882978 856698538 450625525 664943041 403862077 904818296 738220637 945584452 723370272 996261013 18534428 562201332 708222786 925520699 898994766 998673270 662525436 699062411 642075546 891492826 269705106 481028517 69097195 239092831 489961393 977524438 28820392 170807140 331537380 613404789 508895537 995473285 272738093 607867624 92447832 645608119 113656651 116182179 728067535 769218857 278073591 835216868 486203455 743449391 880322753 936801023 363783178 499486602 527067118 909313271 703552546 880080063 89153390 658096013 61274253 282251136 820004996 874829998 317233658 693767075 434099232 839526484 615936361 937892701 927235037 998201849 718800438 929276320 607878020 901715751 464863440 990139351 343828255 436779100 332486847 675137093 871541843 874049911 136694938 952794180 831286275 842049021 383806642 744864015 947224578 971804938 241961123 748979329 658667798 880471680 286231632 569899932 869577951 964309485 390494411 875906221 370191645 522384188 400226008 887541375 128823032 860989957 867631328 917746523 415431681 948892081 992137855 992846639 504765487 528002100 358169313 889858693 533250950 764729950 327390302 992816776 423968781 727112910 704155130 889081920 988101786 990576597 692294634 877744008 719904025 952487001 221625925 388704560 576237484 969875681 309936662 452774583 474929174 775609673 824016799 933705776 679539676 978329122 343192278 885308249 874862727 906793517 223764609 961476636 994239399 999363660 721911652 813732930 852344862 974652488 409309276 735073765 749738778 993167152 334465200 956759308 230677711 649978877 290948064 823556767 364315512 821372733 737745350 765198277 720725885 916668070 955968516 992111312 465709570 646409020 831113780 997740094 210265296 797208758 724112595 730486664 815999241 989990108 764898848 821977232 694297409 701308229 752368484 787680597 301987910 560075592 46108008 951745880 149024553 163076256 870383444 992949323 763633557 793680948 577803524 956087435 665410691 891558746 971393052 995976679 718660529 747702233 400172350 921491611 575354860 911710747 511070639 667704494 677441499 697273147 222033196 535985441 334761934 486463964 505659713 760471839 67841105 190800186 694744606 993256674 353998216 577982791 913944012 976846525 679844079 992030429 184018598 782385067 664562868 998397144 155541196 163117187 300704535 876655227 506055300 891075800 892363830 955126793 201782103 729407578 84860339 706216890 186316954 835015352 384248873 412179985 966655335 974641359 428994741 659470971 356641418 492959065 754288078 797318958 167491849 929698892 990029020 997112871 964642153 990822052 471754374 712166071 526498808 745422431 332712902 547497115 292724110 994800101 98034725 882785585 351433956 795374736 233521406 932196507 63755233 200596057 270329989 734675689 881394036 902868340 144712645 630787536 617106625 840063928 646864001 912124533 477157414 591609949 657786378 670474558 30358185 575935853 345410263 648496860 844429821 988486357 544163968 570857250 205580960 684894990 372113455 621235134 378802100 572815584 814099675 927480075 123606528 645852496 55818196 573767379 277950629 805459637 83757567 297095211 560647811 836441944 30333517 618235280 930753978 949871079 97670801 810634981 154046278 764909360 870102493 899145092 118681431 142558466 912425993 998616951 905385929 953034109 305155000 787740044 844158463 944456908 743109486 987535895 990034590 994566636 481476679 873399622 957989559 978179331 702206912 869199469 320615044 593030314 504141454 786989447 713183969 752196161 379379474 855518393 618656341 893758628 405734997 566398955 181216678 937678259 620916716 813342488 303695375 540627165 979358822 995670246 429155745 917795559 813271393 875673803 268111250 975070136 397744928 689687470 104182439 729095471 166244896 249904431 10671963 389144570 269583359 955937405 358556985 360435250 607819438 997091169 237656780 964139748 197696726 805376788 113746237 719717805 239114075 433710245 518880192 591876595 155625815 932708363 941796145 944451359 455224973 707770097 938144070 939062147 877712423 981618002 153652481 953315565 73498610 711724156 516385644 871821239 756906232 839073466 294605357 599858937 794826786 830239362 596826193 756585897 121773067 625306582 534368738 910734841 118568647 731990532 382899555 444099098 510607088 864684359 962389828 980811473 847957734 865895486 116020572 828688644 366132991 699886241 375028595 657342686 242255480 274312301 374681074 909122019 234690499 823033307 945338346 980407007 29724590 871854415 505517247 704630226 630908101 902619584 831878249 999983060 938960600 994688390 204536642 925365606 651830644 743211014 324746066 462256520 542251161 625495474 789763076 953082071 559954008 701063028 577465373 675352298 839862763 980666783 646535208 948724476 765953324 996433480 262835916 325355681 879608520 947369922 237977147 875737905 63545548 674439012 434076407 534340391 435928589 661254533 439961797 770930064 295649720 633272530 83573289 616116177 58541586 951778651 403946638 700964293 513455541 778781867 526527197 698970599 430283306 974240890 346507561 650430916 893105943 952404418 80523498 481352041 405975095 766720990 992014700 995711241 266258923 791288023 387902724 858676420 368428849 730105550 331459728 809585855 852867886 915457765 657862012 893650334 726048352 951451328 812380109 943174761 940851897 954929877 647342122 909260011 515736144 786647734 473376618 567338620 232552221 367266389 309065175 715065390 42706590 277937361 668265178 818856297 296214676 783685361 668077748 832766910 713971036 900396170 728611421 963038859 628581579 687707177 198426372 338639597 165721049 464355958 204203630 529904440 128901002 818951724 402882170 480208848 160839535 868019184 133381609 210903440 537327404 976699527 598141675 928097234 179539720 544459545 147641094 733138541 546638031 887821188 297739276 962355203 494562040 982152234 79876092 925764516 406376566 872285959 830687460 940583323 132091079 936348679 335661029 748741695 975932830 979815804 368570771 775653125 961848545 988203009 366314848 878391054 762821402 867762039 709487143 847721693 329649561 904434116 774874449 959810524 840172775 948639364 175000045 627096240 113952734 359205990 676861817 679945594 67261497 951082722 941382574 972221876 179210154 939763320 402697620 510841186 291236986 923521781 841640050 940558651 408548373 696061752 129286596 215224153 668089617 750108008 763508124 821654519 771218445 986849376 126901120 429635615 385405492 907720447 624992143 870270519 45898554 493967875 301419795 499346484 982509240 997084447 203641919 431019008 151179761 387788472 505789657 832816326 244115975 937949138 718662775 980858277 833599523 917274287 679771545 893431000 535420733 815996643 888732470 980031544 776949231 968242644 989366184 996524133 66946733 712538467 161182487 825914104 58105022 164737087 216604409 799124609 380793037 957880463 812838240 845866403 718644211 970805173 448108673 467407025 498524545 578758392 12189285 720243284 229672113 756968829 996722970 998708101 799341921 883428925 162709698 815302387 731731788 776392215 414301328 546956525 4508516 707003421 303246529 839602799 834583862 891223813 280549362 507828847 972364136 982651136 632654414 702298904 3472767 315052982 647281775 872469245 712475073 782442348 631718679 734400210 22490831 670057169 268150636 952535840 178764808 661710129 654679509 971946681 295983521 710616091 112010236 834531688 261571270 265178370 602432006 752783012 123339370 552929183 185529765 719749192 819065121 952964169 430787405 850851914 69934199 419875929 627772966 735438173 436766462 621767746 208225749 769901433 260904973 375224517 460448950 955685770 264637841 972115680 740021334 828338873 393177113 709170175 139740928 658712738 905658132 983964723 262743255 761115522 662710752 825161203 833967757 948162938 352769820 422426054 847727581 945110434 739379968 740563587 844547912 918673808 973999732 997493415 674807288 956019865 163853818 618099993 767055483 825399826 239797993 606958951 379405480 566761819 121098440 458321949 739155878 934486664 232147522 252602586 530400168 963195580 725697914 825281082 222426026 342713689 711910757 835898650 557908133 692662372 532302194 837108671 396661686 523740571 94866436 723129129 28267079 351285978 676853160 814140732 479879728 840852419 773185783 968017977 797361668 890382514 965039833 987107651 1191090 818993548 524000967 552380707 347108093 386907605 814950512 956132826 737622991 800718348 125248145 373150798 65705353 758789594 783796264 846504563 860780016 998220809 578004612 748496590 257202206 663562057 130316715 240557770 345377549 935852600 298978401 742550328 970076746 983352914 389268810 515072962 649792236 853690118 99359353 211380384 690527757 970957899 83486631 844321025 704439927 860267259 601274831 765862861 200107519 970557180 660385593 767054618 988163490 995756498 911659316 987406270 166442463 418172615 199845230 663212470 872347383 950463597 98219286 152997373 882626881 901421548 261269466 377160468 816281935 970477064 4123622 311591521 475621361 568637126 72416989 426073800 272886749 568806187 686251206 738113983 694955529 973493703 339172919 661151858 465187563 629732437 863645856 972998541 764213132 942325183 786733698 799679468 786976795 983957660 147321363 542643542 951828630 986525886 439253968 612317649 945558566 948473226 802030940 948571237 740250815 933433533 280423355 673413718 264472768 582763117 991123491 992465480 123514983 759027019 871469492 960605304 139794896 579383758 735342850 735461962 86268107 634467078 55160047 157101839 680013745 846777987 988407258 989840207 982815482 987705802 93537941 207144826 550339416 982654565 474327490 483885574 278625093 953845124 193870523 822191235 520341954 768581874 994996619 999568580 277672744 539624113 45196434 893727838 466545321 821284882 346021333 971768362 484946601 890661284 922073792 974490030 773725413 889529158 29573508 527988743 128287039 994899297 343886477 469767323 409190246 984771753 119145882 788711521 398291373 652650589 4041073 967096419 786735857 930172319 232208575 678878115 782625271 861640443 232331878 580321594 248810981 253255670 829891916 946334885 473071655 653589726 297844150 569628146 960893651 994966791 34744171 299621364 970660650 979450781 529997094 736033931 659151254 856923889 490654773 623251541 530334545 987961557 520843442 969097834 564189400 676713476 334736285 429955642 711452391 776528177 153737128 760077933 23826245 799227805 723883615 898984274 337678841 613201168 430897762 822905360 833627045 978501433 793593319 948406912 446233061 460607435 820919698 885992564 237779767 704409749 564903323 708752650 261393211 539837863 627102250 837063410 61800981 156683780 770657089 860310363 245334297 323928715 699709704 777872368 828963162 917681902 97631805 206329569 513034328 672824625 810844525 872865745 80822239 173727845 271142922 275592612 606506082 704830674 57467190 976872993 29977770 282048657 928813620 964201313 80580971 515819257 463116956 817718628 39534359 782061722 343193097 729314148 533865797 920194744 636934163 988131576 676249630 939116002 935704417 995165611 79775478 971325683 69104263 199473156 680171675 861728921 804622206 869678704 385249664 717685444 801087314 835278974 403731146 919099479 589133965 722200303 539854666 930902870 77958786 632329849 236519533 582606021 221570225 433144688 329404481 400302377 281782238 665849276 468988804 854966641 138909520 731535498 319281920 608244260 609499048 631844198 308290560 814834186 70616510 422161295 51335113 85672172 692938408 931766746 626229744 654975465 7019250 198214219 831317266 978385899 674801628 888028178 194818369 755136979 437552100 814027620 447326743 634160519 223406198 918423467 433498689 497942575 912636937 965671806 5505570 919401982 762537323 989389745 161976698 240036413 535171459 646536478 606239691 675230530 465317388 869370569 178703177 206653290 560329026 851732029 259507163 355698652 565492471 945014920 331010254 577280334 713508081 997679087 825726775 984508638 175398031 991166509 705925993 844585620 969043811 990409363 276717141 734849684 77225996 326827458 532021632 750534722 391879528 904158859 299317022 807867689 743863932 872981403 879780413 938763848 533206027 593008240 836150571 888461952 124100544 275925799 483597521 770773010 361185104 978165430 819824217 988989231 295810903 943379766 981128137 996870957 16191797 774682120 988914106 993451591 241086760 925735150 327469836 559915284 244276300 813762558 61857076 857217822 323810278 460894484 469589383 819007202 740272020 964165933 773926171 864692259 440586670 811248525 94506107 124852112 937914237 997605051 405935336 444079553 519439529 681878383 66164573 916584158 589538875 685298866 928118631 930100038 21973221 970487577 199177519 350656596 598207073 865776515 93958352 299936736 276604269 640576117 565553406 645561147 497683734 724250858 674736989 831240549 825982369 853351830 460337645 937861063 381498734 711934647 698285383 777535496 288655826 764260553 874092144 938798439 438456483 524630972 182169807 982532671 747871764 929902049 53471540 551160892 850259297 854911720 833198783 969946464 74847802 326759726 279676455 952028088 373658348 996226247 150404397 749976173 500898561 901944889 964640678 988011431 939432447 988642901 499662962 771024546 848505974 986698372 348606379 661893696 745024298 907638338 523067647 932013261 929595525 952266517 454445345 510372139 846809055 889202539 749486003 760960204 488354413 590701408 670862429 873529392 163725453 874646546 910716661 959276534 192558061 772335253 409510766 993676250 917712086 978583977 271525747 959160320 821153730 966576645 866065273 908976645 638505079 837018470 764219499 814020870 209106726 857309408 281455570 562122334 534736288 690959933 977232057 984335698 460108079 871345213 319487834 837380289 314960323 458332231 288351325 348603408 589701997 677061035 334191917 609400804 303161833 576491387 215662525 438542571 799666977 847438018 360219962 552968299 356113937 770175141 597718025 699389464 343276107 939874677 564930050 964374350 169439185 562362260 833064027 942041594 848850190 942558033 572269024 677043658 579360793 831340205 706550429 844038956 466668091 873946812 148538829 590765867 605331292 951132292 292290164 882034430 477757259 970795177 661849576 908983574 791200300 887214352 469590945 998654456 385275835 645328151 483528169 851594740 97239596 181088915 54211292 501854103 802955550 993708871 634030389 757236198 542405323 881817259 154395129 217105410 374950815 749152236 835279971 922440445 223359466 668269658 972213224 976699485 52653176 901085609 195922535 816943269 36506156 103648695 824903404 927390983 531246478 691182507 881811886 931031594 167570143 377386531 783311795 790270586 157000517 890414974 17137012 940711780 764635800 828452757 834503607 908678570 478510385 605459504 722720914 984314876 784698008 922398430 217261188 822567314 823062239 991250519 382889690 923841501 160644890 511473282 234678180 981453210 748735491 975337510 234860821 602328314 316997979 868749593 393247955 941152937 211216112 413857668 848626030 989458587 843865560 975525877 775991078 911078701 611604420 659277532 674998463 790974862 56488407 276316432 593910807 760500498 875084873 989869213 729411865 914729088 162595989 894902215 301469984 632929065 156390327 818567387 401218786 833264826 61837395 698704034 769942126 897682928 492323192 545124072 150093549 275048752 908426382 951775405 391787338 509434824 951591319 980053938 228134201 752971094 757137113 868712353 431945483 887546626 109786919 289058711 339677096 503844776 599231427 825405562 1073709 578082827 187499600 710206839 353245300 909520460 253381381 372699133 927293061 978755188 179367977 386134460 246532010 932624066 458436331 559024585 583971701 923706565 488589232 726551623 758639350 955548944 13701790 796636869 434014472 645109312 861276037 903166632 996783496 999810196 761249147 910135707 206219053 753351185 579359928 580138946 771216004 842730128 665917699 897113936 124409362 485430194 238887304 458647588 947963883 966770451 849427732 965898110 345475486 844259851 521971214 599034438 9758580 51742195 860743160 870700401 630381234 649873838 4273321 891571381 347751783 727231875 383405644 901757919 69224691 562193277 162414534 497174917 234927014 832288171 94517134 887551222 963369546 976506320 669958090 679864389 573452308 915156286 82106029 363281192 932598862 951852506 562374826 713329876 388947163 765048152 215818821 322719481 954559532 978928784 952180406 985174318 127296243 575821233 195099969 320670405 403709542 476104090 970335951 973786402 749872644 898223073 492194668 945331954 542354966 622069404 540438227 728110351 567693948 842406425 686629544 700288103 185569357 222708017 160446953 925253007 741842613 941596771 697082953 881166554 472747274 517816611 284197198 651900858 653348955 729497300 649324273 663530878 675814799 951749685 436746882 962520569 568281275 932082202 649085350 825461955 660978728 672795084 198093171 475346425 686961975 700123293 26398035 287947487 593591666 820870237 899215112 995780247 15783892 411583190 149494914 376574369 522464860 546348127 249762145 293640210 361400510 419812886 350929615 493283981 381106949 786264061 101481177 850781815 542799366 686479127 993105715 996074306 403744881 972918767 134845870 245124902 250475546 891706885 641763950 999323820 531129514 668532244 31888278 136906455 659727111 851670801 190531497 898034873 131176937 295521024 668229051 987616573 963984063 994240686 585653925 725840001 386384062 477490091 420410647 534205795 146648687 449957089 906247198 959454217 291117248 553735611 785378527 847890084 21879818 605381975 112537658 608999495 623505179 817048099 136010182 618386744 821648888 937033706 387196665 933250008 460568154 848734472 871305944 964267019 513211111 650652223 543305581 926347690 852808312 852999479 656912106 931998723 370826443 946949501 807409229 978530057 306411805 344766036 264764197 502706705 624109845 924115907 403585340 427520446 146017160 391528310 895367990 979841503 288521162 406149436 189681338 400900516 174954818 835655519 227273510 271687353 902016895 972986960 220286413 837177698 652004488 690374366 122151439 292792195 684211915 772376398 855262993 927574990 154294592 353687353 637243122 984854818 45474562 123645269 927860110 953156707 50969739 414737680 182423449 854485939 956366293 969064194 451862766 594403345 83700723 326922383 412508500 842779482 929321162 956645042 252202120 790865225 986039538 994977050 170739066 226166642 685759522 710294210 334194866 775988872 784173491 928757589 492284849 641574580 411222622 756955326 268998999 935769037 14594798 886954717 779774828 990537264 508245000 827525459 456472611 649967540 903499601 905011028 389113303 731469613 671380763 986199779 918793206 965648122 939621508 943684438 766649529 906741673 321880045 692606091 130048994 853782480 546252671 830989850 602520821 940882012 686773948 871691137 176020619 273727173 868298473 896275899 670858229 850160009 704859357 827696406 485355671 532058936 612480644 959084359 627325935 946085438 566427967 580849705 976958939 979324945 612100869 695072697 202950912 950263289 469533712 563120361 3846990 777160799 959851561 978869365 592417692 670361582 985034354 996686342 732679144 742202675 715070513 740164588 308326802 877648390 42751060 330407303 648560499 898149107 995724467 996472768 584480611 706182156 123019279 290122999 422603841 983618792 50626837 361712263 888028589 913596908 268000522 488490432 500378708 556022975 816079359 893290757 470300875 596260772 707185982 741320467 231914682 788319433 925891232 956467403 563015711 634346911 455109159 467242491 795109636 978295997 875014685 927203092 629523120 949543091 774361469 972729191 754928987 939086754 242580551 986073271 498913075 797169609 653109828 683448116 751477504 881523532 452038940 712580546 876231843 983848193 494408558 994381762 977568817 997528893 853622942 897126246 631774840 963857920 56263310 817003748 938460867 994198537 212400301 929737152 157072216 659116766 579248461 676433218 553807544 605967200 35635928 805142828 82268470 447092620 224619580 242571562 206306635 455797364 170611222 739225352 465905529 677608797 641611972 891643827 343557696 797455444 991597924 992956646 538436348 975351176 632807261 792050109 298975439 431080340 213713927 754621302 217071854 389296397 95385362 968887474 614443766 950664675 369844439 543880962 273295009 655312632 106448614 115760578 508255976 569021485 453907645 972590216 527300155 640247722 651264718 827695367 620893639 912524741 263316516 373938334 821149618 821973703 656815337 880150208 252591065 648430622 412249556 968195433 769130283 796659779 671171114 907286282 859298921 946561171 887701377 978826855 647157500 735959638 713094362 835842452 6330414 231423332 42975447 677037428 501354063 738195427 131580116 584334557 330063221 642371158 857517078 880650791 810751265 997424502 163100062 178571587 159610284 897475731 387848268 399445352 431362288 917888287 821210247 918132626 508575981 993542400 647715195 934587423 51942146 661226086 104571136 229756197 865688509 983089997 214443668 669826960 191252261 997335701 356488772 525206585 706470073 732808015 583124788 801529680 184880632 474605556 774404620 776441294 385363087 868810915 160187733 266163591 45716682 798079408 837496651 869035311 52036552 722456600 249377880 902773944 387756243 579785395 971615 536945538 648994225 972229394 181748915 187274618 423960748 703108577 688521583 789978540 911719206 914983597 855021795 874140521 562005948 562529167 837653096 859909951 229380775 667435221 626808522 980115447 454965249 989160489 608215869 939555291 751203097 821028271 642735912 820127191 575068840 993982425 221709140 851013037 320041113 534953275 722368808 810309504 216221694 690915805 577153111 974717610 217811544 839962741 489530722 599553012 701080843 833508031 638549158 819474721 196639783 910695158 48579261 342006624 924201975 963032424 426470918 688015443 548412295 798196094 790010950 991968421 576091023 824227833 70207239 750768877 748601117 907452143 155034380 847684611 301136266 730486804 982881633 985457686 170903685 376253878 27580677 543395923 970260020 996019319 379463277 886585169 552694871 558716546 134650556 258495909 970671897 979463813 994845711 999311703 570193810 702553312 798116514 839950471 927718395 966189590 708516462 917447451 875464359 982037365 961227035 998486325 581621178 683061823 884931180 972677872 435291158 777635919 676086100 839984212 432333997 603429594 544320255 784372692 238054140 251229514 896521741 898298070 803232872 832763675 131016106 140544764 364689959 927277008 266405783 929072599 645393573 702578841 124692801 415273076 75136327 463403800 501374073 534717427 894173407 944555200 631640833 695137232 51903633 423974096 56633641 971572314 554831909 579878737 288237937 649344521 643082396 780699583 135605554 229798277 453450743 672151080 826532283 841641002 506424396 979515923 104644430 915005279 890005910 925986005 965644828 988375360 589082941 919940439 383979075 926604019 123989630 207546908 67125505 297400869 339971682 535307850 234626767 424152716 386072173 913077754 675875915 861439238 386293395 433958065 936428344 957200078 339722805 394496598 639935249 986752158 273500958 636354595 879847134 998640828 589035647 846256196 160092945 941813442 37924403 779343078 534143954 987748812 449852249 572336837 324472047 989009604 433398435 529480787 702928981 916054378 20113824 941226302 399701777 438768261 669011519 677609030 976713476 995171270 743045413 777030501 298603373 706979787 432276883 483842210 517543743 642159762 348359847 558287370 329755495 874632500 867885692 913471730 586694488 590288470 672503589 772366705 227664350 480165966 866760 80379704 141267603 478793586 241172866 445728268 92279389 226594441 583604185 750586678 726772340 961067643 991922585 999793620 453937802 939700476 340154910 580120970 151567539 419273935 378951458 561871806 528767384 533750231 178576813 390884487 783140265 874908465 853972540 904849999 267364276 976175601 740532417 778160258 870855715 895410073 286268773 914213826 447742688 984370540 256459197 287282689 294997644 637122788 986495385 992758808 632449533 709625566 474506636 482793538 306051759 346944431 244417141 938580921 285009812 312108148 788426671 999640035 981980608 993450361 406606362 806354391 975523067 991204460 958307403 963404523 626888614 656098192 923620583 925481121 933496663 959463258 110516729 671037057 242511754 407850390 112784108 392056594 586144180 698311523 810262731 882751039 616494133 975623261 491617513 598441832 826764483 970629943 653511077 959788338 105997476 599208185 223033415 907661004 435577889 675218880 29158745 178255145 517759323 829869845 571131957 896722982 720427148 909964505 896490364 970636122 952691612 978193233 706080641 710511782 577523416 898228459 145653026 930638235 121866333 858798296 849773438 918714170 769596796 807384603 45978949 915298848 547490133 845722135 619113764 772887431 735178070 975314787 161862628 671863047 958174394 992163387 782918712 894138745 121137404 617920116 955983445 986209444 718106822 859657467 674946068 966369612 234794900 431459339 627587819 963719055 472017836 866633140 388584437 529988609 472604801 889209563 383924908 626341085 174211419 862698601 191475531 339739901 398055812 435163598 420747292 741886928 8130181 540109410 425453452 786038394 609756500 819370201 232250239 724191641 269332987 718018019 471889207 599094135 258080043 681414722 690903224 843300821 294913971 397519902 591197765 841194536 446755741 658141670 464244505 642607287 586866639 634636030 445613832 905198420 697269806 800306659 937236455 984229663 839705405 846545116 558862247 793996823 191109564 756924160 938359148 971653863 297347166 720547005 105496414 371932840 963309424 978614782 865933209 957637146 633589049 938675351 535703152 708667046 284510795 546751936 975154572 990294239 212801421 423822328 721967406 728664221 831843747 991652461 820408216 973878949 963870485 978610724 680878794 901041638 862199431 957124498 206481371 914357218 234761380 263528778 13654683 85861889 633660060 957502160 388528410 993692383 174114642 182550094 573272331 613903057 918442613 957487573 263470586 734386364 808083828 983341872 726798415 749385323 275111798 526868522 90096416 921534505 448126142 462695324 831209727 953311332 282017426 677506754 192306717 311896045 314325702 789247965 136227997 642009341 750286858 789450752 499166380 891378727 734683337 978946367 890499712 935877464 767113052 868548128 248423858 916057316 726563937 837975256 568632029 963712609 738331362 873781091 387240559 626726075 733089160 949564039 721371866 860485589 822645575 962475303 482768587 535995647 11465820 570242489 569719300 981335111 33569620 872827387 769069926 785066538 758085093 964822437 231278750 763032424 575440234 910559144 638688092 796918121 326795769 559477071 906367022 943431709 4155453 483652243 463133989 603450909 353323574 956095869 966340100 992653758 837439882 865218923 944222221 994103682 116223620 507401710 801852257 966415692 186831682 480118782 408083794 631029269 336275392 936888660 722390915 745824195 948577566 978645457 399251683 595700460 777881625 814870722 2804784 540161330 291734616 373927024 759221355 771878803 316822597 696097624 503629388 761836569 707789532 836525568 198662905 350384874 106182837 509524927 157126807 878592046 322043539 817920139 997025359 998765720 328782413 510186805 539943977 798529965 685405116 748453561 282472273 739068874 850000858 982543576 435264572 639302197 693401986 930097704 836159809 953263295 859305301 862231601 59579562 932848136 704803634 916465528 384944268 755728211 536485388 943732046 623868139 816328683 162700696 829091263 448427420 742827774 974031831 978469952 11236371 246235939 836950277 882081755 282340614 357524643 382630117 425632604 613953564 637317338 175384940 541360067 29556897 804672153 859421125 869882547 907553284 945119140 159966189 702222081 440470048 567679848 453249294 991029470 37771024 488283184 719380401 884913437 960825502 975534678 713801726 886910133 173260250 506008292 518999595 994439262 67127031 629481228 565097528 589173697 427911726 962744915 921162120 973406238 949564520 989167475 283036129 411732440 34278253 43945606 73225009 359787046 782750330 885052892 475095712 683072962 392318263 660225008 565572004 906207759 178482585 825905144 761120094 977168452 276725749 749595485 234799325 271538930 387919721 541203785 154077294 459324249 539546092 879126066 169767625 636686579 405933856 523254394 558491457 822648666 430794381 829086382 12390671 377737746 618324277 952909664 791237056 981224956 802419701 964356611 139602127 813389085 587297987 587331947 344496635 909947444 968878041 990222391 468453488 621691631 354563263 796258466 476229911 803622233 704806283 874669570 441899117 782431438 209007051 403008628 350382530 378199013 938771827 963119600 991061503 993176794 222463964 487533855 829966472 894148193 664118563 875148804 28458534 59172574 465322300 739228260 49351526 264739943 211354654 765939558 795401759 836460052 918378456 943617315 342810373 600997262 114097452 651183851 220276506 633913159 32214979 533667834 144843719 512280350 299630314 437185926 594573992 767849874 759579007 987208830 74094293 452614528 421264065 660323184 888514383 943046530 121094381 789796599 886493160 912628592 301820312 354237409 764974467 939594508 137531483 318895064 460000746 574599111 446770285 506398880 588849629 838397628 227574671 332441732 240478063 637355989 328854073 837907267 317124798 583775861 622014620 754897625 999772584 999806375 290251151 661681880 314335630 687208806 146123090 208486362 912817475 922514347 234659758 721713592 754769760 944199303 495311775 539648429 440498596 566790744 248969535 295477729 101746915 839667967 765292834 876759066 708626041 793519600 853619851 995183135 195242668 213155347 509434001 601155305 7542125 390362937 76501036 337618275 724059157 848723758 382995562 664019603 431110144 442573123 142184064 962542769 318382355 487753571 560812809 833914581 294044900 412447516 927869129 951985514 226667931 497851614 896845662 945154100 640804778 728550580 670805805 994377274 915905831 925415431 507393704 868629530 843328795 985882843 30021098 207173045 538575015 685403607 344677600 557012727 342412635 415449580 400856567 895678888 478072624 805994665 184651601 629631276 672060850 724244967 340340637 713067435 97464272 876023321 532219722 785573706 388662244 580370169 773808033 901989767 200935932 700652629 783824100 976042715 200391093 409572300 781037365 985835800 825849765 992340286 8681096 678510471 813334805 984853250 197995114 544528630 316275021 410666122 179235891 680567941 880660413 948647053 750192110 832354827 110595814 496527745 790492945 977615494 139267880 601071637 13926622 355800326 214844383 687297098 806834933 826323268 933290197 952226119 298352387 882620716 570788851 839441004 956634458 970297066 900585436 960179475 851442327 891023152 458894025 678092338 972977169 999550377 288894101 555182479 285360006 821120852 307608060 375289375 125791034 274178533 177415660 626200518 932301406 947617765 109561151 774173766 737551314 984853035 556055450 563264166 28915078 124381003 653233723 988201581 47537322 663149004 995310524 997707825 231363900 665974929 300507198 843557449 225243023 629071706 294336146 754912366 36112636 988575604 440842618 464613771 590532110 775227537 452748401 750250716 233682920 632662244 430826222 665348331 170857240 217860637 554921547 782578078 506979148 517895467 872552215 919433494 954933371 971667830 128530903 750714303 85261320 833834698 792832570 911905114 608885336 689615523 875897069 994430852 212110703 772204848 813718847 838885678 60185532 781002451 168192174 650322437 689784509 821657326 752608997 987646382 901574186 988453860 330240286 529365354 876826228 992188442 868946782 912931131 507180649 937835619 519934044 780985588 925299079 966180215 888743185 944258252 760758487 818520099 745238703 854327528 716220001 850071977 605584032 638830342 205007325 621607555 659667896 962701812 930813017 964583385 554009472 793030673 736852150 864407890 437702205 743454334 682092663 782497862 78246935 250037873 651833423 839215904 231622419 293521691 981324995 997786711 804682394 863834579 683178883 725323759 49820298 399098586 522763059 715108009 382943778 450520215 667994222 759560836 384790264 637222814 882704996 933934555 342853636 449802880 533507434 593313521 808144290 820398871 328192589 851383536 917877567 994919752 330152647 988880754 270426525 870824999 329740243 603334568 195470740 213349434 67879071 732809391 978130259 982028682 30380098 503769803 521518875 946928198 759747239 892969408 808153843 873236325 140473614 791507401 98356483 894968209 180670401 624108110 324420444 817896318 494220216 509050752 354625437 524082865 609710583 695570810 364575146 375044153 16725817 245596526 512213658 555893244 184535276 910210857 77607690 588755591 127319694 571201082 816904534 986419763 537174360 887112058 136245475 168751983 102228714 676768955 291895453 877316653 75037529 775537774 267927853 843672527 930756621 970686031 193160241 736753574 579227283 728374258 840571454 936969250 850483990 989926953 154643593 167718238 756387123 895988304 214259768 872155998 202503714 554012733 804359738 993379350 648758083 838668029 665338341 822923321 146933020 220408587 766498853 941490613 282240936 987690861 755413165 931309558 526529371 626221880 104273407 837239787 552577931 577196396 769526012 925832651 426648687 684911249 648828595 841489800 693577435 702077615 613590328 826669959 611751253 820100948 485459646 537739726 684023291 706359657 483472849 728850714 337174825 684515216 785389932 838079116 691482756 998239087 880860754 986577533 228427281 541216227 312979926 838600880 828680641 936636179 626458291 759936485 607136718 766251177 513858710 863227447 659023631 920098987 380125931 540902668 399507300 856624186 82559161 666669790 950406548 988379596 397842060 423017268 223197862 539133562 564034134 871496552 853383956 928951118 676288212 965468383 686792057 971454919 349989669 689398923 732938911 975752659 595849755 978344517 253004347 522368200 501200604 976587598 617097739 721810087 545952382 876863216 893405839 927603649 773141260 783485566 18015599 808001033 972320331 974572018 141310388 626862472 137039746 184338496 578246490 734300960 646203633 871222728 235270007 505835401 432588271 691192035 824422743 971365693 770417208 905608771 415016949 810094157 308659906 739598132 526799969 870547450 400136940 927614836 887067223 910537774 58236508 168322808 50849206 307876739 330251984 805358253 171841232 566692009 132626900 584275533 481954521 643856684 244729986 389573415 315745311 453499627 82552211 571704205 352042923 556812214 522902217 801456498 979739900 994665790 194592014 265683715 986543150 986994474 12940191 359483246 712569333 927622950 586469338 623050611 205192618 802531930 634637870 826476830 3628122 557126622 340156026 878156145 688492511 697526249 424821159 664599242 882548313 963406528 503291458 729811704 704188392 897327081 250142030 571311443 65123254 698811112 651240966 659232628 449147515 827837941 734044083 844844922 712910474 979389914 547041962 779651668 180858762 874654320 430911328 904870018 570361923 659353690 233580678 886026352 747748527 844107412 571389045 982499864 215444816 869647511 955818747 993148256 151155617 644078586 625021051 782220496 298236570 513406637 62540536 620070421 872147619 984071458 644162538 997588087 591758111 984525976 415418803 577044922 159358939 414263899 498952932 884942114 34732675 532230876 586462977 844927986 30290988 598374486 165698847 275932074 867121432 955322030 462505127 700819527 580822568 866151330 93367622 449806127 232373084 827031614 109522720 627801265 425452725 453030325 116822425 137902062 90167640 778534932 356312907 720216813 747292074 837441995 762759807 793558213 535477230 587285255 720385446 976959606 439874743 448774274 701072563 954183521 60644718 183233315 935241216 987035704 694170169 832559055 422726343 439453321 294262858 418385358 199014235 396593009 138775849 607522683 214564942 476102007 338628754 886480470 308353195 784054492 692876107 984218713 332855708 790014711 312552118 741405864 952077229 995755756 307514990 492872066 246042302 850589808 716087672 831966914 91395102 529054390 843163598 885466877 393106295 888868354 230352624 798437844 920867718 950588926 696580410 859771102 798977033 873928115 50188926 437191785 657426500 988525284 709912803 877884070 13988374 43658514 816643373 856993573 67788822 803809298 626776493 767305813 744468270 796720535 609036723 678584858 565645257 735836883 327820069 601727362 341248026 875786811 764661017 983172690 465696074 561937093 870985790 991099082 327057785 692830258 692691385 694560697 827767856 830383984 678212214 687014476 197890737 245109754 303720557 797427586 756753385 868673204 854646081 854941811 605524443 666368424 374288878 454522402 829760547 901145725 786158355 895724041 862813608 901704280 291763303 631337271 869718049 880689512 969293342 981669342 426452248 862769295 811657733 827756227 606786075 689981554 158409187 875291558 954663852 990192259 552446507 801343880 213435972 532194363 665504610 738430556 96529590 793185702 470712199 558491430 547327173 777038639 794196041 801712504 468697696 991279147 624191713 651751004 745376391 932169080 931998173 939689484 805604024 979656032 86901711 859600893 133111166 573586621 893573288 941866612 430363952 864182086 511406757 897981226 557964972 707277154 450047092 495614007 145232907 370199659 91751148 455532687 226512889 959880058 701218181 986412275 993035517 998658337 519625687 861183572 15953286 469918856 925505180 990595499 927389910 971064229 648014234 660590768 813899479 840207645 704965598 714674328 245108990 410939027 34708884 383199046 816412008 972171925 489620699 973779303 504470160 792108198 342716792 653989616 537595163 852611355 600350838 801257375 433435749 705646955 260117444 655896523 983545740 996146552 371299278 427531197 655082453 977631367 304502090 518061029 417221016 910896393 911425053 940257774 617566758 634592083 953239161 963785460 781209529 868662838 893938409 914034995 235022214 236252464 943023578 968553629 200317748 289544142 683659778 813863012 431598773 886640978 662711345 744092349 958339663 994509805 364596716 712679461 691625276 859335292 61424836 589888568 17232958 628538176 114836205 425185902 399238075 567518777 134847408 324375652 199981191 548890117 173166320 748230911 946198688 999967268 166569193 800871771 425395537 786052107 889170344 974928926 607848 374572303 130187849 453462315 772803981 916513948 274717643 786033475 595322265 932299306 753121126 910549558 825359846 977258475 696884329 777581368 289698759 911828218 414870294 971426903 423162580 962618837 83767129 256545103 564405113 594473621 207846866 335295825 797113035 871462569 910799649 952145236 763918673 867752583 592030574 728188360 502258944 554780380 720031893 724824690 506919605 995077298 879145413 966117498 21103259 957433823 614343390 877418278 694538694 912060000 968204856 979755477 137237601 881251025 197008450 816015406 692450389 798314509 20391352 363761293 762495923 996863205 935255179 996035000 794822619 831717195 691910110 872889143 521742926 825065093 315425400 774476455 963198218 966161835 249698779 738809216 649463369 855570982 833414617 870874752 737001185 737581689 883978492 939050583 484492400 767673835 726292383 761010830 70995339 356655998 383901394 981676554 302915666 601795680 791728241 937423928 542152247 650659590 411124961 778724110 550918063 896559281 507509269 833272191 768130666 926801025 299407174 608152700 289235582 660645199 372075947 419827971 837610026 973938475 605248328 729004412 700748640 846142359 339054354 487132130 130267793 131611776 69590029 114863872 557451297 583933602 860130980 904324437 508444146 713665646 623365421 711744856 594731707 916139914 287009155 714642965 522845817 616279404 690717677 862845489 802409296 894488965 266123998 433874018 552856491 678704106 531426624 789125799 983860487 986732122 360711820 679293365 93705158 101565736 556252063 843381167 359534170 952909807 280515748 494682556 636867069 946218033 349060891 746610527 388445406 746707490 528127038 644900318 391259064 872236031 934905974 989326792 442862026 593225090 149842498 554357716 977462689 990301448 819161417 982442563 43213361 138992506 915074476 994634422 557397123 683558013 767176668 874135953 194915700 899224097 594610410 809092315 889344763 907304410 879191804 997971476 518339512 546846780 394741791 812122742 648197071 702667917 107376588 820815332 990737514 993645740 340444765 560112914 800498528 940976856 783548188 893122260 170724763 553486165 392188465 575488476 593584618 597491238 835391169 925945260 180275931 228546150 631999089 754948083 133664596 158543627 885118342 960973995 333169603 405293806 196576171 772353198 51747806 693104034 717589124 908393093 472460328 478204476 553413389 817759805 984946148 985695789 168622142 856723453 989784328 993187164 615839956 916325883 387766711 391742831 372900833 797202685 664225172 939702551 505599218 939792601 944363264 981440916 960290118 987003767 214014345 799432675 823321045 931098295 639995577 794987231 677707717 760556717 730982032 953203797 461409200 869747353 512353215 758771467 914121533 974667639 167071623 503860527 966439975 966516258 999769422 999796146 397249897 643737299 226560456 964939485 642401328 800481826 654137449 949927673 93994136 754980376 38912497 810321747 293980105 992445257 926732478 927627506 198773724 637150539 976137646 978123529 50219396 214721234 839685925 973897133 207175449 506014185 217128211 636591513 373874139 423006020 522987675 874525014 506689848 655451087 787868448 909357481 258169122 768539569 76421534 930437604 649561817 909673363 103134544 261848549 472559995 848598754 112175456 789831145 874415364 997125576 103257844 814551358 104623683 746846397 728582738 826040707 125421138 998953996 835507703 980242597 914061118 952083800 262925110 775367704 420725943 618389201 491120242 977039711 796120406 917860378 4629322 791717924 509492380 513076521 469440951 732770548 621743828 913291746 672975103 812636147 271760296 990427345 420108587 868401186 162543016 839222527 745901322 846833131 333033279 697605426 958449195 961472928 894730005 981331059 798059781 812706955 831376372 984721520 693247872 818302402 232578916 690255561 486144812 761890709 535401986 961418218 795803562 901144468 922144576 989942733 523564410 853296501 859623918 928344319 75889734 715589774 823259244 930140880 170153023 236880973 884987722 968704324 865711673 869274430 738611358 931078304 953235049 967282388 730123291 782802274 826058464 833838754 785655653 970647513 943189134 971639234 32733733 388870174 195421553 825160574 711778227 726045769 562116101 808013184 548969704 711079927 849600130 921927696 514108866 733349511 558059234 715103616 95883532 513049117 517367683 887910906 590963672 895165792 576315932 632090655 276275985 818979982 252560392 510690493 892931858 972195715 118074974 719170393 771316365 814588643 169117381 543041177 716292357 883215195 863821148 910990596 662144932 990503320 120740506 133749278 870113902 896401637 62485188 358610981 961844762 970414848 301079172 443419201 949863778 952566512 662054811 736642738 725463573 860528880 26931830 587225017 847526752 947071826 626408113 787956668 892623228 900585770 629103496 781838622 995788019 998607825 777894253 861193559 226163807 270458735 936605882 976681510 994746660 997012891 255688559 872980646 321930129 703696240 405323492 659101711 738596606 922410547 748186020 880427832 224652733 767239460 378561404 508478252 945137438 981240194 24596706 508816859 744372466 994596484 55518753 174316412 444542676 503615617 348893687 451086308 419190067 979500910 443747421 642483593 70934366 600299192 680557327 894662272 630663689 977195282 197804669 413815281 53943728 768035071 853914216 989748498 501845532 654634701 559492683 929783739 474613623 912002895 806016905 947821275 285242822 393367039 839779363 991035897 107693279 247955512 262518179 771419984 520844222 888804493 87048942 532212566 695660216 842546483 231796848 720228877 65228184 393909132 741571189 769319091 804535919 880459274 715723057 794649927 915002048 939206846 449731561 543456014 170153467 864026291 174772998 895059590 463237179 544165006 654850945 924104490 178443121 811943542 640519884 971592190 967733794 974111058 159281732 991929416 163952442 833996809 288866873 665148989 720337533 768924403 207415735 961821325 859191874 880215128 622965574 688144859 572493614 597882678 732989211 761483609 713989483 811461667 285017718 394271581 698527711 890606601 288185092 967937911 177051813 401060314 79596110 211514871 305610756 479017802 775607264 868826840 781460595 840812085 133190501 889245498 921020366 958225067 122229814 165825807 430554244 623446423 304403424 976905185 310223546 456506092 310772215 681648207 923700554 966618633 716431768 957322063 516047428 970088723 179008189 534154510 291728440 891403756 175797704 671303855 713179254 827387247 9386706 595335094 996772632 997687721 986990601 995286584 608496971 741497900 159694117 354564119 961196787 994392593 575486851 904769583 728944319 951726017 234171778 567043616 681393604 782128696 105519218 605321015 823496742 930439321 732034076 959495937 950502034 985752622 711486207 851562632 879402661 999891937 895814733 924244837 170558347 370357876 199214268 732343422 631857283 816171711 954023016 982256508 962399734 998534344 475426024 579213137 859197265 881344428 777342039 839322202 355228541 886726378 819949924 860507755 210599885 466171146 9303918 49470017 490338267 590190071 905903220 973330779 777853968 788776231 975275786 979865963 200284415 266245366 184630408 899394752 480652640 506483516 634626804 731016237 704225459 928537646 938446878 963803988 795592667 902487182 236609850 413741452 401937525 753930684 614253242 931036094 672510715 955697251 616015624 656985673 826611020 917747113 313979011 874558190 273752119 610295217 351868794 378261986 705387032 758524385 137264398 228251382 286640975 320889113 806203044 996923791 421758038 908617040 514972449 804812887 916569651 950627521 969066889 994825311 153202842 316786772 68138510 900653699 209525377 624246186 882466935 979158474 862187508 918880323 758246611 967318636 13015684 38211641 528650439 870787098 163805480 654318722 330007491 341277496 335260878 777220468 279590731 711691796 670858221 703255981 194467715 486713318 858667775 989919338 635659000 662090180 86050949 232334433 735758301 981577754 286481951 645343122 407286472 884737282 714086494 949653603 669952363 774374814 846355663 882974671 190364232 329214701 231350747 687454865 521595289 554755749 753606761 945983550 603017569 727312829 209288964 767178116 26165465 809533137 780965502 906405673 228822888 449982513 258648074 520850962 196525960 259817232 832994237 922690992 316354509 463058959 940801316 975155003 740299658 859326205 588415681 887259005 299588475 514116268 870525050 967128154 632647374 963182081 531262057 738328753 1873829 484152620 304954423 858027099 559482065 937633157 486089912 678882500 796334621 922313722 370931172 406365764 901476546 919998839 808871211 833710083 881892578 914375418 106449278 173505527 470555430 830825529 209531324 244179306 130995420 908667276 946905884 991645665 405643765 704186099 525926401 945867099 411476406 992184930 324161701 837895024 795326716 910665335 869686720 891405253 254244468 593719118 877947068 982706351 749630863 752179029 210799849 928806986 456664840 910634850 714760335 971863228 943493129 993084182 9092552 619352177 64947916 341791205 875581930 883117908 218782496 426017565 329302506 767239099 790256756 842967189 653473404 979060813 80286779 543132211 569230314 766583453 664624285 883504727 750472297 934651780 138343356 979293121 378458214 730906509 713050775 926064295 4635080 328321531 160931851 585064845 186053910 444717699 910410628 983661039 605030367 631293564 498710286 775624797 625814160 843425808 716697244 944078539 271011658 936897055 328260692 393612050 761200574 771856107 414869149 656701071 162127451 846664228 981815231 992159893 982413504 983190651 449301165 591066606 825893117 915779297 830546161 861288460 750095578 934508119 671600974 758042758 249878965 754962311 876466703 883790139 52635098 260003792 257697444 596590039 427746032 656418103 835866669 890636320 690259582 976949058 744078461 884234871 974799888 979033672 827999156 977627269 164236781 994966300 984276504 992541048 746728020 804039341 941685197 957076757 873215617 889853742 121678238 548421814 13137751 561093154 836349699 999395225 65209860 653976135 639537677 969954179 877308965 933460092 383333139 833982536 863224291 947721886 373387070 546882087 241515193 333030786 663708717 821017171 601241724 968675683 133360679 931768496 859258884 957825349 686212014 871466046 277228881 768075969 891692111 987994739 300428987 874508747 940399462 967530228 269492996 831153469 424840323 677658093 803420032 825935218 151787316 583344802 469861979 972554719 845199185 890379687 747461897 962024670 394556190 603651970 353858534 725498941 644533383 875439796 314157581 643824136 473988487 474490029 500774881 541194600 50011300 653064307 342102304 896525294 965557561 967470582 656566779 807979355 287146033 941080733 951112062 966732213 887162052 949334106 513508653 549049868 133948061 911457950 825443969 895335303 202614261 872960254 781105535 972741767 558132272 821372995 424061352 871025451 153079672 212807120 578206138 880113870 304536343 562593140 455660939 957775123 998121913 999366603 569609200 624229665 973421730 995742499 765902107 850116610 901035411 924643834 323143897 504595435 503720035 914878153 748348202 990460638 640181700 757440825 385595826 854554270 183089848 327579460 813365088 959789343 579467339 879336910 425285938 895820789 365200261 414629143 783216486 898369201 63043074 105273960 891583460 940003899 598575185 990832461 778368801 979670714 205192764 224083723 568374991 852982749 170756977 503082700 727551901 756097784 707132505 836006758 509724454 758636407 294520935 435093319 345945317 557873931 794579095 962324910 767332067 828702783 502998431 555576112 197177314 636999189 518147701 541144736 317185313 670162985 879181652 916023666 176315782 826467863 862402605 992467947 528115553 958571240 903523054 914336852 242032744 463743040 758612279 893393007 580324080 776553957 913463246 985392391 106562282 543670496 907844411 946340577 40250486 431869022 946480623 963557433 19608322 566376522 626969957 891974705 45215741 572415529 626541227 798683179 218240064 909276774 929514028 980691085 404002137 479323580 127289477 778014311 112220562 702994765 273622973 585368624 708300430 764186897 204872765 277350720 293782399 478938331 948907794 999422687 826219390 938798734 487710510 568138238 96085954 930825013 456103502 683761879 698876325 714933603 979917038 999739254 454329105 732690765 77693263 367830625 887321972 898138293 795040022 873334016 645235854 783232458 741718575 988700708 33738496 517564851 270248350 469001050 611258581 986449547 685954152 799908002 64275200 885526302 946737053 949285605 260250150 408054998 924189566 940421048 905326629 963424289 921725784 957872965 197937709 871893612 480977270 790224659 141219220 752376069 277976756 580732868 14431987 835167835 948358533 983515269 126662054 343041040 171208033 386449805 525536489 707130827 578793008 667219813 36168124 731313473 823604872 871555380 566612040 986135079 264977556 470140403 966585331 997134794 918671505 979977420 101525563 138096514 130235607 732717260 660878246 876962951 734608273 792853913 337054746 944243898 266482130 708359432 379604268 918644217 314997284 900657834 573188209 965729979 81853580 212663950 308337825 340996000 324508425 956052609 351570294 406789142 661791266 681843194 208981590 753006518 107118299 990831257 921955200 958458492 919553483 932847613 897175738 933781436 484098217 767906476 664523115 891929876 369030565 879303988 767858866 909200039 13294428 905567961 239291664 972258966 925039040 935852450 982706030 985140279 758243440 869758462 904944292 981740994 793584756 815062886 910820441 974631035 186924095 251776094 747837347 766677128 475987812 647703058 827992111 902600821 890337650 932692983 658172729 898046470 14115902 959062104 55690450 204663185 995349113 996643611 490542263 672233802 881133109 964912762 219207950 509699840 226019178 530418169 517279839 767705617 218110510 990158108 557649396 649255682 11566505 490400778 933654680 984083052 572032899 741491256 898709280 961046545 407095085 537817769 153131370 958965222 138995156 464227121 610000819 748317761 390433884 797068481 96376348 995038682 927838722 941319670 593105049 829605202 664070716 960233173 279526251 697496692 345040392 523817897 218780105 505446843 553250891 631212283 734780010 736165173 143647481 638454920 629079092 997155154 947557449 976890882 396489294 979823366 825874015 874413001 694015377 772821119 338570560 464014175 37428214 590523963 380720969 431636512 52957954 792759105 974232623 986374784 24803372 226764946 168475999 662704247 874298809 903259517 803658570 809183518 334425776 741747999 803430126 870494117 38835 499749742 753527140 971035178 505842625 934989589 509555932 530371720 886340628 909673280 410348382 602101790 292190095 998994379 34471384 100499161 280074413 767934032 576199698 722408803 349382755 995145754 314110179 715051962 853043464 901560188 70248221 812729613 262365133 807196156 644339776 920313164 592358667 792195627 993850788 999151034 99577402 120825458 261924783 685424112 68830092 970353656 17712265 469961522 6310478 250203632 400366143 841101190 560615204 935117671 950635843 958313673 390855976 895211693 543269460 673640865 141319314 386288304 868008321 922733098 31979309 126443514 455440092 983490185 659067796 850010939 330287251 671631245 123463646 244907210 699674050 745874558 138408379 728695424 914283352 965044074 637296346 914583771 74849248 597049901 263289240 881538703 771326373 779855993 361896491 570430364 539096574 876167897 930257071 943254408 741207966 763674836 677430600 964485059 296086398 358261228 90440971 607792781 768907079 892464851 52602886 865520842 872868303 934027464 480070649 981493857 9052360 873843720 133353808 254467954 450096479 556637621 700348522 869606811 276362761 853808868 639689571 814719280 978535352 997303860 262735954 585932886 424078388 845813805 621851850 668151397 990694636 990793236 998169567 998401953 248305505 905750522 623456648 847096367 33075743 344127383 549461207 798660534 827032110 879557608 595335979 649799043 41133718 464614762 989659533 992005789 56926411 932351982 867114963 934582393 92893994 416163281 787218135 910248202 837078481 897029707 754469991 998861099 188859148 948366381 224530164 688062745 82611173 601916684 14195458 359876960 434144695 708717514 183959945 643157524 180895470 547996630 62798766 194821545 804258824 917270052 413543672 809868411 849185993 962623063 153525457 569605466 493063566 863177262 1582277 534205034 272910833 824365753 12185734 457782752 640582057 869403818 693372777 885028743 74694514 779688451 348222714 967273722 636867148 680146119 524904029 959941039 382799667 984281664 336532723 453412891 808279019 823089802 245262756 777118069 182981528 804221829 934376670 987300619 452261996 573100267 178707084 341238293 186821168 828024442 515350375 802036556 14788149 944865200 255007841 904872094 491307880 838030678 471521576 739076429 337438734 863602229 408015754 558248138 47018313 343601604 25206324 249277171 950319956 985855743 5118057 650576500 359705827 900447736 181470417 746856001 971455189 978770986 480658916 832214123 357189262 581543989 674520323 990179000 60229215 965571745 642299484 837433032 129545682 263558713 840555005 903249436 398300994 551973115 858011513 866417675 487102249 663317990 531725554 836539300 124192699 707927501 196271132 698616414 908823514 927394443 332679658 985693835 585333620 885062754 443519259 509194448 572642026 639929391 334526421 570797299 14792466 423971689 273958807 967900893 947086156 960075128 784827505 973659535 40339694 859311489 284296471 769647547 357574624 588413840 206332122 310570387 31864550 634077940 318316722 474402844 841103865 874717586 458588587 554713182 836571149 859998417 733181689 796578707 680772564 854551183 306707116 386123085 401171549 839772657 39065550 333163966 710492227 829562145 137024543 574986517 245895382 495270094 531816369 756866170 834519063 997798149 415009334 926502470 484958459 592646723 252985453 784886311 422349589 537598320 731757416 986057266 30329334 359887655 748529154 783853764 880030829 939206247 772527100 833699409 528532590 765955959 991882299 992858957 972286404 978791984 256743170 908293037 928648265 960426710 698152447 980796934 667721642 881936331 894212211 938002708 523060640 999960281 369585557 864919840 843515085 929805700 13647044 708199925 535368593 916211747 919141079 967663959 441548158 783860642 384657609 734528472 354075895 453427819 601434660 997664065 647675811 717268519 882280412 991291524 925191618 985121365 629554272 866281031 521155142 680504268 21445523 591168419 335733036 739766749 169962631 582430247 140971833 339757896 689945864 763915825 99868091 167801835 285753879 330060442 37719536 605542184 838606381 991639416 781031315 941842439 508683163 710794074 462365012 900683696 165223463 926151730 588911322 931216454 610261639 842467461 271180999 597092930 451999126 965941475 293034789 919160178 857695568 872048947 70159902 163270892 864608202 971043962 746617618 825443073 35074078 768230931 684820191 702334941 933749324 940356236 26782662 348721532 78446865 756082453 665804509 806669214 624566966 812773937 585980362 717891580 605156221 866177572 337571629 880850388 504110368 749959521 431828338 468078429 72988317 375477303 74772711 556439103 466174086 738962496 525970267 832490818 513148686 996908168 201947084 862380374 517396214 849403722 363891102 922573164 298422121 415653623 970083661 978295513 327111262 985269866 363384365 724037662 827425587 889394136 982462702 992650632 605177443 835323575 695174378 887557636 262029701 422079589 961434145 995334851 343495118 838195922 309911967 747388126 408029522 539099283 487395528 723814030 905172082 981995388 539932030 813603101 510719277 743110614 256100992 740794755 919496987 947243357 321600298 520039018 206674746 897081624 68968948 265760656 65370066 842246647 141796601 532777317 755840263 969715133 19475198 448383866 29672886 486442681 916859668 921582953 484111667 992384273 988221647 991184356 890969321 991636468 25553747 902832739 964124874 967805214 38397857 885665779 895278755 899106124 928298940 935267535 226953177 616736106 390817612 590549799 348628620 528878637 223294736 765767798 286661538 314045575 467089448 825599059 64316600 752103715 489090449 570044697 781327045 810219844 871595516 941808157 419784425 717062055 501959211 849004016 303868705 901640432 101358301 848859741 11554321 627387635 266575161 592242114 359128448 883154507 182667124 741506219 456922659 984622664 63840278 315119861 405829958 426465563 573921737 770461329 775684776 939853929 567566238 938894115 139230762 790235601 832869503 965948956 455235539 705371954 371709048 405391515 640953771 704917463 427625871 715859023 142230042 354953251 138325172 503156119 836491163 922455761 989362119 993012849 95664691 512306506 376133433 715258900 961206344 966860570 530541559 530807983 212559307 792147212 254565923 322048699 484073884 944062551 273572236 818235499 121427974 493985751 545993550 584987285 976648485 979201380 273354337 796032045 956186392 997848737 399948538 530188578 513731961 825305897 719800330 797705291 350104646 456697080 699681448 956754773 670408434 771331811 356125431 501962379 784925380 968155138 983621185 991216852 483074875 539877386 228293658 256464265 143682144 486238455 354475060 980849444 54641854 369875024 256625837 266543278 448670985 939020422 640421617 694884102 164371282 547198881 930762223 951079746 610507320 719680507 11411616 623170936 106512772 465101436 957562401 999079920 757234595 854306693 138301429 351534931 372470109 603791284 920905171 932004934 937303803 957566363 924049862 969177486 997623099 997670411 692815194 734826263 621029224 984113745 300011051 826565657 892836117 988015752 872891109 893222796 986725664 998645188 54939389 485737933 438356111 717816872 646013760 891191654 55172947 115956354 81223399 529347453 39842768 206682403 861142898 886677789 871155148 904686556 258906749 847944483 342795970 372614897 255299833 849610666 444587253 699819940 660217885 851585769 266604902 509831169 3672326 482763407 56549236 184497324 723858032 757978948 620077591 961266517 525132120 706000522 842314851 929001211 984924929 994023782 811748810 960048644 4709873 316531353 721038635 822676391 801946451 832086442 132333965 286801917 15649950 141910114 184162604 594802127 933533913 949384336 143502430 782699767 114134405 942118597 717665028 987932767 774827835 993916681 106440928 174377073 577369659 979417074 149728308 577218912 437680193 844420676 605557663 681327109 559779552 956858682 738992077 853378239 512854328 615320735 247323016 788370069 618322100 956693572 122644430 148319000 836200794 976462767 912390140 986321375 399783706 939199340 543017991 623735484 487835888 572688019 557436993 631399609 396551466 694442335 327978511 730429403 892583494 926285207 428993008 900498168 967647315 975146599 89377798 898120942 884298927 933441471 117596109 230400723 183000411 429001005 58839375 256097460 123394995 894125871 713173164 931392848 531017570 928798968 916041269 939411999 287428790 448569643 412057864 700279417 983547939 993255306 656563854 792788632 178150084 585512153 740333665 839827498 103170870 577199521 325605941 359905277 106981482 973980847 335028555 655642651 63489407 468545694 55422821 584208454 63472908 563120736 646417056 742176941 837584088 959222347 745848817 945988649 665946315 737072326 131003851 908984740 629990473 800258277 702247932 887265519 993640981 998060617 60879760 594550582 511383620 588268772 686807114 916171097 602482920 965610642 882873450 945767390 720651120 868548315 77862759 593328891 249341124 412957465 76625532 122157468 546920527 587763904 177616803 650309522 951875838 970043446 196852245 889452882 260984441 470355510 857497799 861598458 962390911 984094313 592391056 817164987 656841669 689178226 154293528 268788204 162709135 926464915 478327666 616915358 775404707 807535258 28352411 360623031 729194538 859359137 446788136 574837840 308271290 839743301 622674488 659263825 110502386 171666836 612937959 996821871 360821172 689717939 52452569 551672535 181693405 755610158 618702624 850467212 444820382 677314378 638829456 766726946 704634392 731176078 412395119 738367477 338602075 986816321 12445916 881226488 937115250 995548699 405519393 950812794 518432308 945612866 311825889 360341732 373524612 451771527 81925858 953699781 692831648 932714022 393035817 803311307 578484642 655055399 447956487 611049212 678026815 918702236 442711809 559726927 878441845 885698286 63912123 986054126 635163555 745638329 402385338 737580596 578780017 817195603 777735692 844425640 400267808 432076286 410568801 815407448 381974509 602170879 1344234 435839841 328760011 708343843 428506324 858743591 318066968 859034760 128555462 639893684 923802109 958616400 2979079 912187844 233791922 279572010 432154514 819787062 630694478 969923058 946226728 983584511 117794988 139338018 723093101 957418107 143843118 698887739 363195702 782863598 211357177 441590697 989642323 999784298 283917237 775748255 937534973 998839515 491210813 900416289 546131555 956816746 318385693 320149659 843029142 951563347 723779969 727050256 340767432 419726514 672764892 738833760 40998719 658593394 170704246 249842404 790692658 960627375 161499347 498454919 128600909 611342724 580681851 732969720 829578004 858317014 384343799 725991724 493452425 563089752 392685382 621037608 777470332 866380646 915337429 942402598 224298799 248541497 723054661 948127031 510210559 890908080 857887746 949705258 884652052 937305171 134985599 548301789 626351638 901674266 847155779 864424049 836564897 884281388 326873849 700170802 942790099 981957459 504649726 720581201 13406963 469068605 194327806 580097817 611417466 957248627 385697268 938975739 663930430 912144663 698939524 860710804 861894566 869954868 564814103 781811757 913858485 969573985 784647044 898580974 384546989 616448653 929029566 949767170 812521960 840159862 836272429 852826691 24700819 626388912 215511780 249195628 120948801 471536705 925276668 971562473 29781013 390086653 33059696 196066818 141589811 466868499 631519953 712534502 538381938 750660985 788191866 823824836 835739390 937386942 75170355 141244123 934032948 991714805 711407090 844318733 368146959 889303612 931516460 974120274 727261385 776051255 976540286 991698387 113500253 136117281 767506675 972886211 664850641 904904000 771356893 825531563 850929864 947808314 856000549 953699517 162262271 379794080 477005648 712727915 627373653 980127957 1548505 381857484 693418423 897277797 270868321 980445679 160153399 443437332 70985054 268414334 635382568 771132714 937388601 987563431 622118419 762733742 226165160 320159202 295208010 859346910 708947361 983429489 258887251 446179951 302210085 843724085 69437378 836204667 795583069 973729159 549889883 776862659 982037189 993457271 859735831 912112909 785859403 880460984 322670170 512081768 289741116 499656304 664063719 823322790 657318272 799944274 602354959 795539291 663926399 697167044 477535808 703002367 819222612 942470968 453169031 808502867 49828687 388643515 530604945 567665785 68657500 551075329 277482193 796664175 698652596 813720174 681958365 784536074 544070007 767136294 580048221 596002056 901519654 956458811 522753725 606515145 555188102 721848174 91682331 929124624 764321847 942198217 811395743 873217999 661183086 869117935 811190675 873787490 419351878 658438131 940933251 949970700 975554302 987181291 211599500 943241297 360606321 762482076 531727642 654898178 48179551 256428522 35794453 378353760 141530641 578784923 543352264 635478547 145668432 318421134 891256021 959579920 867686630 897907956 782870196 985288530 604398739 813239202 885499082 991165579 793920250 950693195 476803949 762335387 239805802 524765702 378457591 921941365 482524646 682155396 794578226 876473450 972391113 990141174 814372356 876748920 957438243 965172454 681636598 901170424 440282502 954289519 94525289 226518795 280547584 688505809 443356988 725816062 420611685 807468555 435893174 734723592 147506857 695281974 703166811 954665289 118506005 656403461 773068554 834427592 636007882 971259872 114226368 507022351 484601258 628212609 297404454 351508670 370879750 705600434 832990758 969623624 835365563 847570954 833796826 904119572 242958376 701637810 725788341 766505049 815401510 992499213 979465398 983763936 94467572 852815310 608877245 936827690 27121152 232880037 480619191 967401568 584657686 875515071 79644100 85854614 842937839 940192319 964170704 980981790 511005349 878095829 490917821 923371596 681881274 925637413 812860593 814377443 780716704 898511200 464422825 798407520 604530961 815300600 523175439 690390216 426216784 694969202 983900454 986453796 897514807 987833436 299500033 354095932 251795577 823882567 320608121 805280220 141319683 832157054 814321796 829519377 350896989 410144388 301501696 896737436 681864026 919410086 649713599 980813625 211233568 748517064 141384110 246974772 798408105 903086497 345191346 902440343 281438697 592196358 459136782 699999597 132138670 706965062 653699852 993821901 372120813 576419894 666854423 830807657 454328886 783400844 669893896 775204547 202174244 463114336 926039414 929827686 931313967 989830875 839814626 990741727 950320708 989808358 148705435 825315914 975962072 993223364 732805049 963208165 67943670 81421729 642429719 746129131 792986601 893013937 393650500 818956861 767255530 836965637 994704022 997446699 585755409 665502371 109739219 473721080 279380654 575282463 185273016 848327030 831788709 986315824 663939062 917304869 574483736 919103095 615738180 922685994 697151907 767608019 476795868 624936792 490617286 547768981 489968356 751912298 184170796 403652611 181564811 515190866 662110190 767795880 790242724 947576759 903405117 990056059 637240217 939445155 302609473 332279766 15951246 667900212 293274963 644286952 542354649 953690354 339869059 676559805 815163455 959844583 633990435 913831402 225385171 939580412 770569061 824031561 407911463 920945961 580864034 668514657 925182166 972941431 582921566 824669733 278841226 609596191 299078171 424871167 966866670 967931387 120291125 913410899 525410934 804031774 637052166 957258387 540324919 719654703 339446501 941535449 498912550 660994790 698337594 824911039 529344056 989928991 330902525 553560673 579633125 811123804 201434505 887679974 89196266 382951868 230976634 727704576 754858670 884990574 371715851 793975389 860979267 939318847 746100053 953044595 190910436 550813643 695196553 849433103 27261734 395225986 206099520 492078712 139410843 995969080 666300116 783314545 366209244 381211923 490545605 813210025 894012888 899224703 123223692 207194568 969278842 979335644 518888315 888242852 256587016 681881749 140363603 269688986 59591154 463372880 101832812 255747210 82967397 186680219 604737339 818429869 938599220 979858715 864184164 982964605 490382681 716678636 288472986 784402841 650724923 672849073 777496693 839769575 879407788 943082770 954933175 982766011 956125209 956447539 329819375 370678988 637236335 673862519 354720324 937290468 172161277 861902764 41139726 946949511 774050122 883136280 223747743 357904147 167959545 430455409 36038603 173293981 640328731 784324263 805679943 848906870 255181216 599150862 419811625 611625243 612237929 709373427 85851785 113562999 924567348 938584502 879996714 922326404 337206463 390907501 64191822 69221732 679717916 948545406 265326190 932907002 372606057 635235095 992743461 994063138 245890177 787750920 376789120 830087455 805050168 888189201 316711459 875672890 279845269 961038936 395256630 634066603 495431937 795940388 845538263 974502591 616314134 945161577 490374396 517379506 960379115 990765273 274541655 848593710 517687531 801249849 953312693 958293277 60611792 302562908 676140825 843319873 136748335 404027823 945786251 966751520 551577676 979795749 560563301 801700940 411894169 643133584 512724745 941940248 984676560 995028104 830516630 905935853 111251771 663451176 851349714 862758856 568348396 646348612 534049214 819525562 298000756 769461109 193518430 766647314 173511816 653519290 755293210 905547908 403741242 563833284 416688973 546292274 391447522 834316924 688806558 723491119 321190388 668283428 36632097 416794882 15379981 802015511 862149123 992939544 549654700 842539502 356276866 858256682 853659948 963059231 196896792 242275035 901566300 930176262 30663950 520800597 684766930 699995042 898890847 989279748 7435932 623517991 465580770 602025645 561865611 804231309 554807231 629050878 581854850 788919798 522086892 817868731 193353933 365601584 805335712 837878982 631663787 917559970 43138105 136658822 856027739 943169591 970033321 999240156 686367574 773700364 46201419 399007822 591966718 631003810 258254302 545604499 190688283 343067516 493183976 707449784 937136337 950414673 371918835 707343458 571493226 882291724 399283222 516442662 71608191 130879428 366019292 367460293 21318141 701204174 318545184 953037247 183496819 750684725 663408875 897616677 476427044 787683186 204396883 609022088 556967374 785222359 307217393 756002984 909804794 942565391 264823706 675004545 341553275 487733456 908174624 989573801 223693221 654474851 218610389 734424214 82566873 124633683 572144963 711116805 715326168 917837785 714704260 953364474 491295823 735319418 522809799 946272702 539512599 858527077 810999119 861470297 174300214 876967265 179993350 285316440 409480454 538732562 893162319 894636584 84769674 272100445 989910013 992072736 343866827 936229592 495100821 876992965 523238493 585602750 940244819 996726441 389357959 991395691 501495498 912547924 544762232 687359131 43968390 998942735 66640605 159438940 780722191 959664706 519565642 563766425 937657553 970829084 337398487 567750831 690270833 714507891 84679383 225030387 698824322 733349517 96577732 493454812 780168593 843056856 504400946 505366856 879732215 955674066 664284294 910980597 269278863 979096956 885476689 893879461 124466467 590994254 167833541 571046370 426857400 457834491 577794660 789082660 902440723 921798166 196230940 258980513 592226715 809325858 939058221 968449817 4356642 955796031 67595241 759491714 296667103 450818352 819553442 932611405 13056561 569000296 421203139 756486165 20109892 230385079 87398305 342018675 390889789 427308221 531833114 939837479 43854747 878653573 204465842 801445799 255102899 403636113 62992422 910834707 150271191 262664661 87565252 465337947 625073956 778514162 30026129 404504459 132869602 279536925 784647645 984586174 833757566 884788403 824494680 993026687 205476627 552588798 83428095 881849340 162062477 253842160 307045414 475758248 346994607 646918187 51103676 479171910 138799314 569406197 413561596 640708837 234352319 884066510 110590291 256098683 94851914 230073871 492662701 903196181 83259301 848547285 147591609 448049997 927971054 999594019 5120223 994597536 969885118 993841772 623560667 682328859 204180663 273857530 83904620 171946374 122600297 775507047 730033581 740139692 667817101 856688356 965473613 992463823 988513277 996775393 751803919 878275948 285596589 290993151 304063738 749867298 813531355 909250756 635859144 817330095 639799808 734443018 392801480 487464564 893294870 941543044 307071881 655049415 161178957 775216358 994014802 995861998 648956084 851107851 121260155 358019033 843618036 878238953 347319428 891072389 727448572 747158708 202023340 972055652 297269865 799298887 876951625 984409378 29680121 808788976 239337455 534356272 280076205 829908826 649903928 713853790 428724746 551213461 542711630 587048946 167631384 683314030 18119460 310703123 188441146 975486184 564109382 733288651 247645849 450760860 346548957 684549799 383226206 838890697 688833008 951277553 500189140 962358088 866960164 869717968 726968007 883133975 37801469 121671203 825083635 946750016 820340258 914941558 780663736 813339671 464627816 908221308 11213820 610797158 129310304 689275982 632049286 807005423 479203873 826620771 827322578 964284889 261629907 828625237 18986655 149202449 102673510 575960932 967737303 988531386 6740626 280606020 202947803 932428715 987557331 989001120 965429299 972016586 57822179 850189158 428520772 771889232 333184806 936363061 671271824 726201600 695984061 851783978 976807811 994309652 400938418 829492969 52711934 287976164 206351485 267527813 136202169 668899202 282330230 571458067 545934566 670335217 574845308 586004268 628289501 782212885 783796521 986905171 810417332 897538838 174364954 628258952 85439580 924173240 833262304 890282859 987746531 992941845 444557997 892531682 573523983 771359486 24149127 422442107 457506985 646450245 84269457 181863348 784785046 871207218 4093150 65096905 109745897 399094767 869497003 882209000 416000742 446838843 236823694 520327671 799961487 966171530 248516666 854061607 910657180 971723336 663414472 790283382 934482708 964263292 553154636 669473993 850747561 858828842 458359530 958202043 49037017 990100036 131639701 640568292 781625692 810878591 458044636 591051783 60565182 228757204 335592468 684300065 185797413 330161831 199866280 659058502 247897545 377996502 976552897 984806003 529161694 837304676 795366754 894701576 276886529 523160884 746851692 813945833 362949654 966712108 845584454 920769932 635122563 748430622 742593217 903655985 280526883 486625363 849435167 923994677 255809436 619052129 284116738 998842784 494876035 984418752 564288399 647603398 397292078 639498394 511542106 521085731 255921271 387587812 974786692 996830308 543581668 727762494 844897485 860936170 436156442 837923290 499334791 781900922 710877196 865755731 622541545 840690094 282010493 941970243 171060519 463427715 198631861 696461189 19005566 989256149 772777755 879614601 32837530 783095559 629228560 779386357 481254587 965547679 391260550 903777982 721505349 731342450 127661799 330463909 214777649 603152443 602690335 854122462 199852502 559787005 810606035 819263106 688437670 835177855 465979286 960685033 764964849 992363135 523798246 764449291 618691623 907154260 649189823 986172398 774264359 775563403 373496766 608576990 567741465 964987337 319014291 678286587 461883395 756282281 552681290 655146099 483397958 658123108 914143902 931089093 199560496 613054247 779480181 845824533 604288501 673899980 62451266 556227469 381758869 567246202 997442505 998302311 178676884 846044716 679075461 971879430 10321873 130252242 82900378 963295624 774383754 789276016 556809677 559641992 622372117 836514329 763959045 800841741 37389074 857326062 454672915 751463841 373690423 885882138 221085815 791112854 988137434 998778661 395674506 559133686 629617218 957289930 38492682 236218298 698295042 966291083 661467536 800169889 501240966 887706308 922149605 963693155 643795813 762767123 456039186 700232203 75395454 636380268 137394436 894388423 894522685 943244426 404995651 934261982 189073551 211338173 155564743 982946757 768567570 902596770 753447840 841906272 852362504 877981376 685886763 945064057 828572969 991301360 238429640 728280872 306364956 412471220 50359949 287103244 35108986 575828317 836765343 952533321 852112841 909995414 429615442 682479699 612438683 846407760 737650562 863701734 773763140 911523136 889746475 905202931 748656285 870201426 967002011 970115204 941693170 981907105 96942299 533754899 213072174 462513056 11621237 275552755 657748943 681903385 638293719 778860138 815072565 909350435 341483612 596918012 30760137 391737105 90957039 688710013 289695590 919017529 725447526 788954198 410376767 498471953 572194522 784024204 562317794 804866524 199223799 614449484 779539548 992247811 662321949 767649562 951045128 965536574 791079916 804612373 903496536 980906644 388267169 737773375 258703809 425636640 369162376 529686756 747981301 991956147 339915914 403347539 512986503 870580056 770743383 809078170 288295306 365548420 883969384 990527947 815565962 877202615 896922364 934081606 728415103 738421016 849809051 938649666 806867759 820618412 263309694 581754743 457889255 512543991 241615372 849806454 768848554 963462491 727734137 811062027 960287629 987514090 573441590 769355466 67583615 309363168 55676418 775834184 564475472 766238062 143526409 938495028 468602590 915015291 522009846 610884622 609572317 678203652 917091587 983415439 952393054 974927067 841896894 998601168 903717128 967501257 111479276 430161580 830995831 980490600 589145896 963450900 159068406 212617263 275436807 505534014 547205329 620842801 620403196 726648055 318064843 685080580 456844394 702632858 44766446 104326396 300144247 389170657 76959473 840506977 443057933 724712454 370408116 383704447 209147567 706676554 24826741 896829559 516854631 569524402 746419269 914390617 749871753 777484556 569684122 890478309 653140198 941748689 804993171 851612703 657645843 820686621 353345520 409719919 249887182 424791813 114746596 377697011 919961270 957239508 903985977 958217326 926156157 953372402 150339694 862387443 741277338 823424927 434192887 998397223 606531147 696233949 661700852 925571466 317694062 578459317 325851736 407764449 199787197 947348817 169174664 750432255 613725165 819875477 728662658 891636930 491487290 844328315 113297655 547005775 436571160 539668815 861417386 970506008 526349741 929305728 326818401 559239151 653570024 675793467 400328239 432152655 788450108 820748561 140180608 993838270 927459269 931787902 15699294 957690692 111225574 118600793 74705572 331480656 471090298 530800170 624071084 836285838 937136193 974529176 87018099 179964875 309970013 547823268 827978203 995951290 394930500 856225718 419239225 835754718 448133494 712830479 484246370 539224080 208286329 537589969 439482584 661942079 972770428 994500824 984072372 987404776 554774764 960828616 477008110 570903516 210398207 618906077 529636922 826442287 753542279 904027947 552671122 582072726 673045134 836398949 58417920 269906749 136686416 401662044 641082402 721132560 711322643 737630474 163127009 472986639 121325840 314070604 43777856 681099419 85535231 419735326 663802865 719203798 498578858 917628061 881866316 985531116 631010249 959121826 293037854 614734965 182479430 556982581 391498237 704969126 913386793 994950173 934354910 943587045 731463842 948479759 53284295 325156113 203149440 278407570 147680229 732496513 279949982 347426838 806033672 941405279 385247754 399338277 32190647 900632096 226795523 267392459 21595134 228056246 798805698 832956892 918323841 938825894 113411390 621611578 181230983 564375732 834003744 842404117 107812434 836378724 260786333 633494382 246832629 675770633 44391881 552320641 578534589 867588121 989614385 994138388 342120595 603431421 69157355 547925760 387432345 554028888 691951142 996690615 456694017 979775559 425003527 735927400 703935195 970829508 309018026 576004896 497571978 863677349 859716259 997748702 71096493 357687798 938555532 976257644 333213847 434015133 499108503 900743482 266591292 822965605 998409833 998933066 836760851 890866606 571850150 812084319 269306063 835425418 520463247 644562419 264208373 851947965 351803751 797995912 899429538 911524371 607185071 712707819 287320811 491131583 349462825 378024017 69278656 210384632 397117592 484899789 677476195 903018259 315389754 583707712 84518728 946115833 352747405 939156378 651051840 826873860 758737773 921600072 867879900 953741004 216943970 221118737 323656950 714983777 343419251 871027611 568433666 751744858 14782346 450594997 138753478 287688094 888488027 997630240 654277197 786737148 696697767 800835119 608205886 872944994 926457256 937004938 428948172 988927747 315177413 434790506 722683980 771957926 965448717 999976912 614897193 719380932 536299690 955449653 522400342 940673722 396365747 904016839 51483023 713066991 525445476 771210462 434934607 765825317 617165007 667140090 614118360 800555098 481451008 863987487 703568438 721113547 424034279 545726460 245451127 313986827 238409728 558263149 326684975 980759147 659386900 735434602 962005517 986879712 737317952 906653646 665325127 732444373 659366331 906909556 155059578 347794566 740523808 976920992 133232314 148035257 533694827 626632566 117747160 582471129 897179994 957853594 181746637 876928697 539605055 871713331 339257914 496552246 447698994 747112216 637427603 783082746 261999163 386927770 500142314 717823416 217104592 775556619 191966698 724178296 657980585 803109827 226578145 580837727 694342958 806561422 344426531 672244970 349725650 544003484 79271936 844916872 187956409 193477642 217589380 561988776 42669429 582665347 246688675 315783768 799876429 807233426 202263343 676108932 476758357 740768375 349114360 435405617 231582704 256003295 830281558 942520359 467988394 728567155 981798716 988904876 655572859 740323895 207566362 641274711 563889557 989334061 422803154 940550200 773818450 918500797 688548635 703823260 213744487 590826102 51942468 941709527 166746029 474559978 144600080 317553902 724789592 771697565 371938040 714750176 516149777 753403182 499664200 871379865 307687325 336748659 830013240 998595571 940519100 980549932 152232015 821401965 897476368 914999550 828395702 837326905 556459566 960897182 306035949 365921560 908584504 960490135 291421728 364281557 266043917 711354783 239519243 505386754 587676948 602950761 674213876 788218018 864424425 969895893 654320375 728042361 109984800 367047314 14156156 757318659 962975 18024384 620277252 649281860 433286312 802535185 369609999 374342635 767035305 787888377 886406436 953254248 615620592 838696023 933517836 991896515 322561508 985534033 657881554 873488249 578301126 995628630 663001096 845686184 101893141 414921136 663872553 896243459 373847976 831465903 259355557 503881701 294689649 668200996 880992501 986635936 796437941 913340196 962654159 963050672 193362019 560600596 578131231 920360916 610896163 819410207 893801050 897350767 343533229 842758469 126177606 897772215 385255140 387221856 5126189 273018914 904363130 916795094 297104498 626128986 100219625 277567831 99679039 837502697 313161577 804004636 66867607 190714044 150643849 208580442 340514418 714812365 548621893 873415734 732138152 847979227 866817140 901921976 416370328 668110558 191863693 875136026 354632870 958741850 448308919 640727769 228206146 955500471 469123495 761352209 842164374 894854159 348862420 948548074 427731324 969338416 262894390 416957388 48706434 630886076 224175062 832597375 805876749 911519577 956766040 965155571 171036635 846151668 868554230 881800120 322016940 616372967 367447628 955649292 990731049 998124990 874442270 930525375 5203094 735348861 258575522 528334019 230164129 910450007 975220870 979051456 46324824 508720412 967098856 981752601 932059456 961175429 181050019 305534712 721122154 920855010 46521249 303345932 360350074 551166961 789446770 990934050 623192396 857431592 276427035 659357235 335489498 844700062 413540755 448248096 268443972 990807483 280939923 965054689 858957940 994336961 37174910 67850007 198037310 990276157 390716857 680572872 166080100 822608682 555040258 791354625 117007434 741512164 862844904 966913837 600630429 878240957 625538976 920152875 836486863 963183021 163049596 745308822 146786078 877988440 623571334 887374415 844456795 860645882 571230842 787401786 888553559 931648596 549631604 666422929 383278778 583210953 362905964 545714167 102985247 395994602 626224221 965357020 857344441 904285812 876975477 881138897 148465781 392208852 269162901 907520592 45065249 660409480 598411958 797995130 976377610 979929335 41133597 965895560 648431043 774391232 318324342 714637592 367589642 470588315 16208160 94395105 422735660 469021617 763065528 880247491 710493514 822499600 548679637 655798309 212560057 317704026 438279662 941010566 848093198 885961796 838617162 852228172 121198663 907451658 741007149 970502115 611127150 812046416 770549207 989034216 889160680 955138223 108575250 330583885 310819187 892772729 394446908 882364820 986245011 999316058 351089917 709285445 551486180 616996050 166017432 241160561 303568100 853745683 54315716 649845609 49053261 959033167 384892069 746323869 73157216 928786886 514116873 713032908 972471875 996421338 752695959 761768887 363995069 493913867 866378465 888865730 561611439 746200281 352216441 393031651 820064060 957512072 546909731 605691235 149904380 308128770 166487016 283787986 555459007 624284343 931018298 996407404 828554575 990802758 712077481 803850926 31269276 728563292 47505978 924418310 876221651 939033301 974829761 991240650 35763501 300798806 760124816 929767513 569844640 918438287 319163392 500090615 907229513 932746570 463480499 968985526 159712158 382189497 890543106 943620438 717584456 966731945 204089087 803716865 511430768 661270853 512818943 829815927 448719051 907437983 43097621 59568560 844080542 855033529 119639146 451788410 877596288 990723472 194240592 704848328 370554606 711993729 668978849 914041161 376858424 627996890 583764495 875428957 618715770 728442455 187014808 598867381 113057065 724644160 419121285 867354333 388412301 433198295 94044763 329669802 859896874 957929372 225017273 677248374 431201305 586343582 682224856 819762270 850470342 896093656 318652685 988829843 328030469 624640533 495550188 533070251 901106442 979864757 503581148 681854976 640221821 711036699 113225205 290675901 544523174 714187597 269704623 952796027 241159484 423668738 164681798 562653573 143392738 211268034 532903610 645379161 793805944 882079939 26554064 96778108 402422553 837795208 354001895 521951973 535383535 923907017 901185488 998842567 221599360 407361871 918832220 958579171 669594856 813677979 503991307 703398305 223435556 614039290 418120586 683874874 305712718 768635841 920784847 994916134 311760492 489612613 203886165 602282815 229292013 238702356 557930569 697927668 453448883 549214858 164604759 234035125 144831027 866261167 985633630 995922961 178006308 310420291 573672021 817858956 566706125 864080313 524324814 794013456 624546247 988812491 982424685 986724854 278333433 639492700 116192878 883155595 964012986 978103190 308883208 991410692 325834636 801985230 689344097 994990621 461871691 621307623 526807771 951598815 190877178 798727488 520350363 753403204 9116313 209012624 24159944 970064863 644096410 765141896 850718205 933656741 866799170 994921869 304119158 386059029 2337466 466968346 789726827 838100811 287782914 879919343 285806718 781862559 559506167 655806189 989654328 995497814 880372944 910508068 958265030 970497056 851494729 951690976 30228072 141592468 956607843 975203791 714967518 913852713 567944962 943165556 880723306 930424161 132342593 678663209 201522759 229373476 119077445 325092390 572311552 778179794 118447480 281225922 988376952 990832850 241338292 991522126 125321132 564227960 146294021 419550984 744615362 906585513 147937500 968048027 604324239 624890915 605449728 958907200 134121006 997287725 634704675 781235977 862911677 895964759 909903724 954197643 491820073 977352451 761437346 836923864 553748409 895697123 981858019 992880854 732916134 871219798 976054812 980800373 378983086 499255089 424696064 586056052 726205146 839008344 926951606 998083552 929802736 943334036 206272626 241398382 147086049 849315527 346036064 919402150 279099152 283580955 606035168 858380391 126267236 815864548 956851321 996867156 59037096 520510617 4113263 475489833 731988416 872546762 625968412 955669994 448187425 662805928 726662711 964626912 789585068 965340624 451570747 756751982 404453809 855396108 763119797 948199730 897316862 993548474 537341792 700069841 326486361 991040023 996584841 998335211 94924496 649355132 506328865 896325880 887415372 978836962 448704921 767715471 858566469 952995085 290416507 580390658 519207950 954232232 130171506 371542843 916729223 966155430 373999033 405500932 298009932 621115058 283477866 644309861 526598678 698078872 189232387 372777086 463617221 545655066 42507114 168208097 709462743 882585537 262128585 326124966 879323507 969261486 122744303 336362677 206190478 287654680 992467464 996171737 772459789 904893620 565550601 786968697 751575450 915657474 974005985 991422015 4015331 687923623 941380307 944800977 279533976 877375260 956502095 975090568 3526501 754162640 289802837 889700410 127261879 263983607 107802692 722852451 969730590 970560649 642744642 812557176 210111244 707203228 655833171 850582991 412422765 767176558 574322930 683586836 581565670 907204669 484631852 736384095 122025114 949756887 94176818 854585613 169710828 431052556 565093126 872739910 286208464 474553090 648810775 812353940 768863695 910259769 908314101 908738854 984596136 995185095 273515487 990234248 223207251 318453949 952021966 973182387 888329258 923011315 290260770 544850188 536870705 808724954 146731369 756069675 154759391 630569773 610695647 640526953 809447995 917992821 886534959 974613074 610224522 912042124 952696877 981662637 507718353 520753299 893774557 944607981 240389636 960982935 575297028 851602569 974817106 996672444 10494503 447447501 532574598 539607784 283756990 324413814 2801468 930029887 42102094 469356731 851605765 918677613 144227863 242949036 836592581 884030300 927463680 984985103 290602311 634083178 354628410 988463991 591740934 953221673 129893956 465653461 889024442 952428224 888650903 964503775 564817580 883704726 211752721 308401896 347784444 484678775 147215201 196201665 928053632 999496750 801576327 901782081 124956646 518602181 785077140 951429147 260488682 603225656 702637711 860044560 529834751 716552230 572974351 743823170 498026185 822502660 231444490 581816734 303731479 338861858 52481383 706004193 760993304 844245791 102860642 883906798 369862743 702605269 572594464 859026195 598130632 611272100 197671943 328160158 314429718 624410850 394679629 776617504 656782353 856898026 109454264 587057289 812725572 822625642 42250062 825083429 138803839 635199512 694708845 755775337 199384630 581226094 420794066 457215649 215634150 355928637 29022611 819411379 949507296 957693249 13917478 960893221 563008041 978483803 226664779 874866145 825848291 911741167 432250329 810881842 285227844 420988144 802847199 812111713 911957282 972896510 951563992 998948211 817909025 864963216 566672411 668112457 63242385 881973551 927711920 999342671 774904334 810854836 174904059 986992841 617971745 663324154 252274419 939391988 963757782 975382243 78956880 948586441 415590014 950149043 235547690 369455853 94315994 950758869 167199386 198796861 751207876 968094568 160625230 408993648 983377253 985223654 214882681 720987421 166410302 865862774 443131561 663724133 394626577 908911424 647576262 814697397 655079476 689023740 891977620 955871594 810753865 866314348 273626268 870863667 671599492 813544898 748509301 874991361 321506738 525745068 172797749 287695447 755374152 759051281 260514675 759319355 308092195 449916145 795329646 885082573 430933479 453413378 548190962 979256090 756623532 878318577 89986014 753940370 642348256 769656130 58092445 255469813 556561770 680034905 797297580 903131235 677259360 912286664 729492556 809310446 552880049 812197207 620303661 863161611 105378773 318032300 731372485 987844098 669956042 697579969 38192045 921718847 241062218 616393960 686861065 855314317 671873586 884408658 76346639 363979474 803767783 967858310 774081057 845919212 701237379 766716901 982222723 989906883 822485266 923579808 768101891 771516524 603498802 724132501 584210920 628056182 935394404 994227086 444829280 751940765 343212454 455682709 752646470 833930143 529192954 875790429 668294935 881871046 88081745 234392662 398779462 624550181 796855489 910736027 802961041 994752168 465013503 962740109 673755298 973477025 221915888 386906610 786196184 788716719 156435490 796757410 887561756 985729014 617449316 661724879 967565615 994802518 542494844 840599179 491445093 860819905 612898491 890977048 590802171 702782029 650127342 818284968 746532925 785948711 916925132 973418516 421210770 959758708 474213683 553103245 79016710 648063712 461781818 773644229 153762814 683200925 208251352 221638584 209314766 999459404 905867549 984016330 841867963 925329146 543523415 601321090 889403534 991745874 178583961 521812472 175906339 595871276 14783358 613745910 495237744 840739809 988342098 993768072 900330951 911122337 236120743 855719857 278288892 699894269 513459858 617431033 678781390 893372389 310661811 764096025 965738856 966464354 469526166 751280984 172489384 496511141 159581374 638232310 492191463 856381201 763674189 827673245 292344818 696303183 266387620 636817240 492560170 958096907 655472652 973995558 916739227 926246358 314878290 514484601 246834228 919184628 356077257 455266876 711193105 717245424 139098293 456226864 810898463 932347634 300815781 574339676 885695941 898470245 815961598 951582321 948761600 993848081 9875722 469152661 102404989 241782111 764435578 881397379 253729177 713251791 830686641 890441810 613863068 915224127 159815665 413302853 833803542 874851315 227598435 509560379 528607818 997328614 460172153 802303507 521178875 573107216 687008569 914048667 732145092 868808898 685687959 924565752 711368415 936223389 815043398 927409934 638601576 827481434 128067103 331556703 182427086 864758423 371474652 946765695 455276263 661599039 414107788 608334212 508171514 644680804 592962148 954824905 131800058 704547704 388720257 964072306 972765010 996648525 836299212 853399797 503579431 651578641 845645793 855144511 715770645 744080361 15789409 86964257 262905510 560689548 424536443 761742971 79601994 893089034 431140912 993589436 196682132 438982691 871779400 892088681 708994253 803421482 603157072 769531856 344706857 829760422 478417527 718660751 499784313 798460338 974511005 984034518 85183175 344431749 265956350 428723717 679965589 926628156 190876591 406803944 499265855 846083251 637650629 940991128 86326799 177248504 713609637 801151973 770453903 991718772 377593873 969041707 381829357 492138242 623353896 682380630 539362710 865350801 72454559 197483898 131757149 370008630 82234969 689419280 67595966 564552109 560264031 618525760 915989834 932898408 242753500 856345728 586478941 789317780 323693514 492408768 566364279 710020681 458063201 852911146 747193045 796442408 406904598 632181835 226633955 687019607 588832852 835612662 73926835 933437668 52063273 578645817 787238938 973870976 653627176 692009117 905355239 998712050 530598398 697927365 526872470 778508641 130156513 669155246 938684181 974048211 296382880 567542584 725315442 741767746 278457622 668929982 998831123 999650329 653331257 867839152 880318097 893157065 221342441 634463324 441411707 973701544 661201498 694874198 20872047 869048171 812208697 916339511 382615134 679466692 513899620 869338687 861284540 896886161 680446074 738222648 383084476 668774962 784791681 986425889 929951221 961295828 825151569 905778159 109989651 511358814 278584094 973591719 744894091 914539607 926521250 933741862 307860587 776589087 273422547 577834844 219544129 948224272 245341421 855146587 324443317 487705010 152067034 268850183 321318435 729337726 530363258 889150948 338524367 373990347 863895245 907701027 299100357 540429934 19477494 360591017 149296 655872943 598667459 670580777 788926244 811237301 621749636 636166235 113682996 573030054 265421390 400956498 384919590 465522724 8746585 772958385 963897897 989294466 907167697 929993735 386468519 393448015 917702092 950932372 492962302 935700543 396583937 746063487 915242909 980278015 162522533 195459451 53460842 891339963 47297408 733291223 183694576 538362942 358112212 647653384 753850157 797527098 13658487 607813598 899300917 980775874 173464257 985726180 759033699 941473854 270376395 446303275 579985284 985031379 54034583 440581121 972609155 977211026 972131964 987249812 577807711 918826717 871354678 965242397 600023232 858310788 14009471 305506055 889642439 980962721 539756919 808792954 436014673 919199689 461170851 525179014 832983402 895667500 201706191 297149208 158397281 782350855 690786033 780008846 339588903 682887536 424740150 572756203 480154847 904202166 128344802 553218720 556808859 634572091 533260786 564467113 269629797 813350073 108427029 895892005 148535620 498326020 976946686 999921361 976012634 989372597 695703069 776467335 583282859 944115735 835637500 946983003 414983511 709057379 972768411 979281325 747372822 842327587 630326530 837133857 778950891 818888719 481009045 853880121 84284337 650491214 734249461 933424500 862100329 864064427 452755761 547808102 297402130 412629421 782739625 839988321 261087024 864143172 325656667 893076195 878924185 973514165 35838191 787240713 893087289 919799852 507669261 513145171 1287153 259004250 736253804 969242740 924991453 959117103 334387938 401122009 812456946 871170461 493290522 656204905 957544003 963124821 892076566 953232338 236993416 896614950 830486067 851679993 99608612 497088253 860684091 955677147 210153562 246271133 621746739 748494402 250625615 519506693 383106220 647089317 718637025 830176791 717214683 779562537 90554434 232153493 318928056 714170817 731546718 943841263 844608302 980310716 783849319 994317262 820489240 873079706 636324138 908448711 371018538 595475918 304093347 543143489 156428034 716104698 229306540 675239024 365028630 424314378 424803406 526314169 269605734 659379749 822516317 852241419 562606956 859863896 821446822 850316503 262368686 585920123 587069536 942466461 482131060 598020073 121404421 294621555 593139187 974429551 752241044 990282362 418702805 852124393 376916476 890429351 201546523 574371602 657517430 947275977 546044074 677833889 81401183 789562530 606556350 933861107 705254030 793746391 37312511 974526178 998929764 999085111 611264624 773853711 562963146 953704293 848234132 864799345 706731334 834631561 228354621 910945327 593917469 815129211 840233625 911196926 201054727 427879990 147491806 937278876 812689048 942116012 885518762 969268163 978290186 990087749 650111916 916044306 594021522 898693481 112490609 408092810 491064798 968084578 325604347 419311391 616949581 882599809 441383370 466506912 191757177 921626902 449350377 620796289 768847088 938397200 53568830 537651937 793431438 963925854 983143354 986944869 513495379 864156262 643340715 704082369 400748710 820787586 981827798 982645043 376926927 981380058 493567455 931347355 26597242 400039269 567813170 820278419 998646549 999234641 746453668 913369071 249348666 837460854 326228040 879033840 893860341 931431059 863172480 967363048 704606902 962900433 209788582 851708060 465836254 962139064 34557984 388301619 934177399 979847295 746334285 826054453 18305954 599878216 804259537 916801647 583939570 895464007 37018335 553868093 753624855 891607703 310144769 848141768 986927199 993989173 745530306 752053518 714037537 922350273 779216495 978443917 611550535 655517170 300606152 876311382 368320300 463244358 796776538 849035221 480758061 693675217 390948423 556472611 855549726 886149290 564146413 990271481 745321215 834924871 814011791 909774820 24484794 916713424 916693211 966921998 261636689 987307531 339196086 759204587 11776264 395721961 882787419 892946825 358445491 578389191 381161809 873920293 879929505 951104255 902173225 916424420 918846757 966651612 331312202 577456689 148818933 196385368 756812714 887357062 479106764 747589409 329483760 795515869 809793401 921885320 891224096 979626785 614146010 790467857 850636077 930941198 482975670 720595181 870350017 924080662 833037909 876534855 514005339 749746833 179024498 748762489 311952929 509901242 37413528 945651409 943405717 981848018 228255395 292755441 608048680 723775408 235554117 270495144 752322600 847054961 544634903 713612502 877872403 981260780 425198298 506579433 899712107 977434864 56969662 245010863 663656469 811856140 680004730 868007732 392140747 655383071 982048534 998496097 188698261 591251892 753032672 963201575 682200460 802131874 912617701 951336971 827879872 958913659 923533812 997937711 911737983 962800575 571038786 647404338 292535692 949262518 248298706 561964736 736651787 905372447 857424305 870918380 458868996 753227280 532839421 704898647 32772916 984857257 610104327 644618455 955716034 995712978 256266531 527069187 325991907 665526094 308536786 701647576 478807335 903708193 958396756 966375579 711877236 777645296 326279634 342666072 261571865 296193819 223639210 480523941 655923995 954530421 416391062 689641937 934553187 941368230 602071087 666481395 98615719 335871841 821779774 929031348 441522086 841500746 647742223 852048793 924863044 946810633 908303882 973393279 543988413 844781583 841320324 972190116 326051375 620967929 300208637 885116982 760053646 775857406 884133204 947413225 110232118 148872774 336847433 609784881 272246063 673683093 30700891 58874727 977073914 988954293 69489555 628432955 438495766 564304311 276944715 504053875 899861882 958068677 306325325 332511108 223649259 988645142 37066357 559086242 866266789 946284525 187656335 443211805 494553606 976466466 271383001 704221148 994894701 997691072 822765717 830821337 919259027 986761803 555894888 605689479 831410601 890954712 434203444 698786128 554103219 983578283 152625184 378565616 432129887 550444227 94532715 766761646 334049378 571793346 489605869 750995318 651863371 963886542 909706921 933384680 155235779 429388501 493865341 664121695 637957416 822280129 757429954 867042852 352854422 401007692 848177414 907922077 289484407 392213407 586732898 792516391 770788361 900430025 822931755 853202531 69190667 527386545 823867569 833253713 358370472 993107523 133890416 990794199 197695259 654136358 520890121 582970748 202722369 916217899 981357211 991647776 963346131 965830203 313089008 450177965 580218091 597868690 950839264 982335184 169616603 185346659 576844089 644480972 931534721 960973807 5774372 535457775 705017334 828577658 332478796 716817926 11654929 630933536 215496593 916036284 263714080 997879669 811935054 910880129 886161984 973513794 598152273 904549062 716798432 966575083 742393790 943162618 381842213 733372109 596792714 646357371 936430688 998944927 257899268 451937374 323086689 674453355 526062540 703148216 292070009 722453472 917549359 990515051 83434574 565591787 608589412 701167508 921684317 997812715 485993088 493363939 928127586 939652191 146711718 867079565 902923703 991756731 418113789 565807701 832352080 937623156 52804093 81415920 753742421 916982392 668501458 993228535 245276089 990111568 403166577 880260799 611406357 702141559 263189940 566079624 346884839 577064550 184639142 514706930 752171847 774423541 474380902 857870154 665515453 822070434 60283718 293649072 486563798 908802747 260667912 583307530 839058884 872600776 557414454 701114039 173069934 278372314 703419133 722268223 619237538 691521376 581903748 637314797 594954861 988478578 186249626 417403761 790412304 793213142 104318723 683929197 760944139 808183079 439188334 996808565 579794849 939239192 171176279 212325056 733495619 807967743 629860401 903433935 659703516 675532418 240149275 372040774 313019869 765833931 544863081 591377236 74660072 945919198 654444765 949986535 329932233 966181303 726250224 856770526 430559338 597921837 290797882 365265714 40593224 171647334 744501029 931647644 797136275 889046794 250240005 595733842 51242324 611390319 429950579 457628966 44738366 345066114 468310879 845106837 750876694 958971694 639047107 846158925 930775808 978143098 915944555 965827343 636178275 789606232 756300701 794772546 221529276 900412502 822174092 932828252 742260209 842340765 108915335 559535669 605184435 628368036 979376965 992843535 501994175 754638961 299742702 804896017 441070156 728449990 868755272 937642897 726065523 837839357 801809770 838192506 586034971 699127537 266819475 865924862 723002856 866194811 925670193 958789460 637653209 773717688 732884865 971916956 76958349 744600912 974740744 993172214 57214472 797589038 796771006 913335987 274615660 896049086 826377321 848118444 342316262 846121287 126302395 773592017 22715068 732191707 230250908 629230293 414621688 922892945 704368307 852125878 986792087 997521917 316065797 998847073 827084700 990695151 741998451 770157392 245963811 574181036 825598029 999573075 731545731 856308212 944949229 966822143 530325354 865778738 13377552 81100707 591448619 885034441 665021273 686796522 38323281 362978067 340209748 933371763 639958034 789720896 466528145 686703047 50163178 391826290 256868961 705232256 546815942 892313083 489138923 947623682 380452654 779056094 570560864 850817976 38564776 828519995 717994136 760472779 83182910 592916147 870894933 993553189 527270603 854111224 278311633 405520994 204715151 281292635 978368743 999036489 119262365 476085760 979120822 994396584 900617503 957615292 430202294 828113432 571850142 936193981 916509121 978816525 881660352 983555737 334940056 746325866 954772453 989880758 927208992 940234311 966381146 983822845 577504259 930282008 782599847 967709263 688568602 902671713 613784374 817199139 196227456 211135400 402997885 585064727 261488985 900369568 437950578 529032320 232801122 626829264 511996034 642300577 530530898 927868928 802634099 987066350 18222329 734167066 848222144 863628794 662747684 696102592 835900905 964242047 656219268 871651141 391346431 856174140 864390064 894449870 700123683 934843005 833893320 929651532 381432044 774316530 449036771 513106050 86293157 346231633 882833053 883002916 86578554 692440510 805666695 939724601 731127567 860114084 459849142 640951074 999854968 999859388 904407651 948415370 240120324 638578795 716129866 946085240 980610424 995913784 714756423 877132600 882812423 937983619 863455959 952926679 264822333 516575982 769150502 849448475 622966848 646038345 986308849 997045378 85608839 384480063 928647451 965906522 767838435 982546191 147012733 914293722 304695557 392992458 711709846 876341301 468762389 699558714 685594172 771915677 213474986 549496890 235314673 996121397 599660958 639171770 142670635 623941374 486453055 841484641 84586409 221448071 345507682 391358968 532901947 572653172 56025085 688287784 188646518 999374678 343266210 472975101 986054529 987296809 917528573 990609409 261532331 358872259 601893870 995465050 565652283 704428918 833528483 985132686 969695938 993917804 411787540 868939322 31187621 838573099 173692696 487791353 988410568 991636376 538758809 916877480 127441001 933783068 11872494 29264704 332137276 980624474 479238786 573492191 462983058 561808575 103475606 822578048 937089921 944911055 411263250 909933040 204355971 538686379 323707843 826291397 974897008 988202082 428513513 532224250 351484983 432533278 967618137 976892686 468387860 665570816 400802025 760723368 460999236 588545619 991686470 991982534 246313815 525615329 688418950 901393524 86518903 187372490 633315971 918029672 697207355 892604748 102896136 418587901 145729614 418510843 453778831 693983200 454282730 922481862 204093733 709110002 214945238 950988881 273602949 443047029 524696190 793018568 17083578 842411585 723024829 847684935 877169512 908986678 21277300 847870198 234946178 607251918 703964811 780293835 157074081 960716240 887983144 961369564 338656118 470993031 228207435 408524737 245037978 930837216 531527002 886783328 724756552 971271010 681115739 889546220 133679889 391965089 448236568 813429823 664603765 855263860 38562084 520416803 764889640 995988108 102611585 641773663 129482560 422570649 661059589 920351707 257940707 523997831 340974728 469832035 923394475 993737904 294118730 963219100 278005098 936328847 504812679 688660136 705574525 834638786 266612918 539566640 17735028 448583370 594856391 965196209 291945815 318387250 549452735 741851199 441131188 819010411 112353526 685639541 931357359 975328799 977047473 982153226 787023203 913399723 249607955 882198529 152927781 402403734 224560202 924207320 476954209 644215961 84493422 827973631 428371915 720916437 579830778 620340825 293146306 666419988 63973149 72317838 355229826 838838177 886285210 906437549 283739965 536455572 10403419 497373708 891767206 997900231 987507261 995555861 536664673 606141963 569247441 965320623 102024556 932359172 57338773 503694908 413982230 729933281 497326293 887015202 498166270 924291430 199182635 809812156 137205550 990840267 398137010 600824079 177488892 259879594 945830443 992797873 6132821 886878222 598835231 788691807 782009809 859634329 553830487 714201625 818053058 891029403 842768939 869976169 716530544 984343574 975711650 991757924 998185190 999494526 596241671 884085780 198808727 694560564 917178178 969008119 871437287 983292537 423114094 511645825 453135142 905126473 224376961 983823613 686992483 918051654 929372990 994600830 923156190 986633137 869238436 874494242 10488321 218686788 916335375 997895645 7534934 556735434 24989162 212658178 841787662 856360915 862961895 907185861 913457028 940912688 583499014 751371699 697253975 944308926 977399592 983165537 115575732 193103655 366973374 793151388 590545765 756151956 744785668 935506711 110116655 316842791 474352972 721899448 73472022 397787145 865376467 905704324 706889220 830341900 209478227 647759736 729477022 913553764 729762561 753251100 45138726 739419696 757179091 967084813 284487734 681436587 467815793 816445950 279378553 500771231 926238985 954047410 56561915 904759233 169911245 593676976 406979272 980943398 324038865 544935218 184005113 842450619 575196067 866920612 569501846 653233017 313111571 558520510 192090356 948306856 10933935 86477010 24579504 279135307 24127135 919937070 423102705 907912768 916904839 917610700 129078296 382458164 133143327 978450284 936231212 941675124 762476881 804532776 514108252 906831721 183113357 375938807 369243864 718390510 326850090 950351800 67871043 342317254 411146880 788784976 646743593 858839383 651486240 920973750 254566117 588732496 398927705 434925181 983860732 999629137 817788866 960424781 444623977 904870802 573450505 666550989 634187313 730138874 318323606 704622485 402925204 735926555 94482153 114987104 56767537 176056383 639637723 926551246 214757219 964532414 308107868 780362185 455998268 899817906 774227827 799138980 986110237 993278209 727704877 828641182 288101356 782966340 759025970 858841330 434443571 638524873 542332759 750966127 652754798 809829964 562269358 664145239 426752095 904679840 502177031 872773347 663107956 760887952 987186720 988043846 734788075 762608654 262080281 662142771 806062234 894375992 998853123 999622152 692335007 779641773 304360961 317830199 546899682 847469944 641286277 813665442 334974726 935817282 892875550 952163772 39705588 75912093 229478557 668458228 835212928 913851525 159344057 483229161 899899074 935073334 654109794 860655172 615315069 818893490 755360755 794941139 27131590 284462941 646746257 852795833 393161047 564499787 26677543 701636763 81808312 243779337 795749161 920063037 738106233 833627253 62891836 347379418 259283 690459226 939861214 994142359 468409680 671022156 60577285 713551787 800922126 875681603 14076643 259091446 993700447 994983460 219086057 485797446 494393366 901709941 604812335 961076311 944904008 979497696 79988870 325305269 159362703 941680274 669097803 981581448 524057135 916139088 841635212 990282241 858689782 880118313 396425923 857295051 798812453 801567369 730297260 749924008 266661804 978746510 102412253 677167545 477546638 531849534 85103367 388748315 746738770 995227501 671301733 693957297 447452876 542020672 60385126 618910303 891034546 965345110 422846823 811140512 195856229 216239514 788056567 835662014 584629399 716346041 169949919 893968890 938022672 987038924 734415566 887815017 217079849 278877955 636984347 916450073 600248521 790820251 881613247 891202602 486930577 875646248 925127011 971124894 644613793 886527472 733096881 901894781 637637826 840376355 824204061 928815405 550489594 686583213 893340788 962682955 561959863 843445050 720368448 962749486 753420617 950853100 754666624 840321136 182368338 851991656 220658116 644709876 722724058 937770527 669238704 962543487 127592463 591737598 859518392 987797954 32474803 918374883 864234119 967303617 670093657 816437690 888030467 921926474 77467446 238431590 339932291 486894792 873443985 925858553 264181830 988701113 836291662 974261716 466123307 732204430 683084346 910415369 239555016 698670973 958185982 997933274 860429189 905521633 520081056 641789237 736936751 816267703 318297023 907745315 448505730 591241495 840401995 856247053 251567128 927128768 428319756 689910121 38681483 878472771 318274224 428859076 733891452 787972298 530774004 539467555 93957685 315756769 79440800 328820298 876916436 889651936 647377639 772602322 158483378 298516591 891444034 977108803 50245685 51974798 527756064 977931616 433714817 660466119 420309998 998997491 211270661 978545004 233515704 673871647 381907854 679302637 967257858 979518372 668357158 758077840 259953414 711945110 936695670 970253789 904392906 989526493 206905798 531130298 229287829 397271814 570072744 767618382 627374595 777349254 649046258 710605140 215705238 568745869 48764212 127816912 672164838 943335104 87837454 325903242 386274737 702825227 594088646 648305983 638838918 755465803 514362695 627665649 54054904 76677144 24491710 827592476 496392950 604085513 174266271 703557127 376779915 431000998 118647702 542579837 805022226 923420693 676293655 691487099 867606733 957564713 72415450 152244509 236889349 329438000 576565261 648176610 81600658 217614456 456297690 604168069 756529072 935974258 620034864 907752250 391498064 913706848 525185611 828103638 429811657 588681175 896818511 936781851 970235766 990541912 734387735 838555930 849304932 877871130 969747303 999748023 128672425 839320683 7394153 113141399 278731511 684446533 409952644 434317310 343553706 661167616 219667363 717915649 408881100 887281466 355612618 398548921 973295133 997198483 144850275 214180134 248140509 482020449 808858439 848067537 11228318 18829378 95150115 862893326 569882205 896496629 749847850 812594518 516725370 793694740 259952675 334965773 64544173 815045241 73331329 427519927 145247856 305634048 426199556 537092501 292019840 461903135 662179606 696481736 633145190 714974637 784546884 933436202 509985849 953383075 335682069 904005836 630173293 954025278 717757202 905135115 15554650 239263871 751598304 859244308 165603241 541472397 585552053 867685636 442521790 656069013 803763660 897799510 395213302 576514832 839845416 868991071 729339296 767575115 781031151 982178347 177983828 485746179 177630148 451258979 789624920 992796004 31238895 115019956 704343814 793698292 340840696 720680921 912128976 939113471 877511310 973928400 931867581 989805253 527816656 902076309 719799427 821701969 910408115 961323824 504516666 606671697 542003887 703793462 215028112 719833770 12635772 646785389 226748875 684585122 571912267 823288655 168090315 994922149 51940088 350936657 275236225 897322507 685266670 811300728 437623319 832243149 426080871 429062823 883841735 959065705 50930486 418132204 486833248 624031993 67806332 818356328 321274188 990903448 619654772 982227554 735365315 814038439 953265627 955546388 543769475 628619283 899619753 908402281 369001269 562736776 822453340 834655533 684614281 844891619 244374443 297446291 918974454 943259804 216818592 461475639 177668896 607177271 389068652 631356640 116446109 484400160 671218375 786964161 381455206 571887775 160322261 917128240 63587684 606391813 333678344 573251532 14298035 938762503 776683996 801003190 757958789 874300692 643318432 743434603 897532115 947400572 971110812 990109560 512755762 815191664 218568326 660678720 496014207 866265201 557518028 835764764 765451923 939589507 994397368 994400994 850386358 966157499 208054507 692918008 828494243 941858502 364501739 554237684 591495128 664151996 177090393 424197989 832346438 940432653 888775367 904703149 406461820 808592294 196897044 490426460 611507877 899876193 845453082 870027842 21410657 524015996 868140778 881014090 53228285 426928131 492277833 644345590 958509824 987772663 428524916 758726319 526427902 980425570 170537339 299439215 771532720 783187031 933976236 950080676 682600164 787842202 316501664 694167602 428312264 597187856 886771707 937072683 476282044 951711957 839883281 975761094 514495238 762701016 608531446 764284951 561514089 619439917 468103822 954643960 835619304 940112466 699264570 929314748 761269856 779312748 6233136 826981340 807615288 979133066 796741049 979170393 974223937 979832161 57027524 852354366 761142207 954730012 84318981 254114087 507196282 839675494 871101861 993054678 752249797 865725966 94734628 177538636 568600980 963264691 352547232 459106373 507912537 608923493 669570356 903810406 108251433 551838359 573433248 790348590 402431668 845710400 684191533 756027183 348268551 480180113 223690055 917975135 140080842 872655829 154310 403846145 264439091 921204753 127082328 223493284 575510494 732119293 310289409 441470235 859808109 895742481 912659959 943016045 411243981 743914964 215060969 426968805 256834276 566339332 707225788 824584892 199024449 930308351 782799392 878321641 617447645 848586261 342882172 637630395 156353295 447555150 6827094 376640714 342571881 442302366 511334597 820747536 222207292 677755211 901176483 912457710 77507036 946016341 193101561 341931639 603949278 760554962 615489465 844588598 89956105 408923913 852438417 953832707 518267987 839913402 129023820 542813320 104032526 357887200 104014855 894241818 98254090 632292680 11934737 693008660 64652785 769835184 713118738 842718163 438081138 818815397 727306934 844831205 79626134 516983098 110684982 515395451 404772601 619455018 753441142 910676621 136149234 895330011 150496417 799635063 134446478 548462607 447487629 665498734 367310250 406109074 627003350 786032636 920980457 976370911 909878907 961213803 752023940 894937281 470995017 514258210 945359006 967961660 962379990 967884438 991088489 997598850 471124545 780316648 454071280 903309686 230957251 319821859 978115893 982920890 778117176 949817545 903105891 936483588 701565457 745220048 968805806 989914702 59902798 223592110 874462636 881881233 862720388 891393060 717501 634194608 750711473 986489275 432813515 929576007 832493440 926684746 575606501 993500710 593642073 820016266 445643779 446168858 237455368 996945447 691301733 837641420 120157802 427524363 749215978 764151069 482548419 929949899 249482731 979664308 851468435 913204466 908020801 975783091 482326174 745826904 630146561 846592275 63801365 252409443 213754148 250911598 468703648 949827711 669227859 842762835 959074142 982038877 359638000 575782410 298143076 959927504 667520420 904729209 144720802 243395867 498644976 761953516 649538023 992419586 568608225 920580473 15992624 516926847 699235911 796628953 385884024 662876439 360917031 619242506 51632965 253104486 597270978 797756642 819362779 907900769 700674863 865041853 117678397 888870551 546919900 628290990 617622979 701911372 441355057 488651104 241362513 892213892 280647196 811764204 758935244 915620213 834619631 988378519 477728922 477736557 735407656 937713254 775761347 853678943 548267295 592372312 396276196 944312152 413961403 802730424 301670700 431089705 881607611 973902010 377135146 588203806 286963870 718205322 489600649 892831136 407869456 663298203 257281655 999762976 218917172 521305318 467244175 738154066 449761495 576872956 472251345 829271824 770498139 848780268 394116076 667926569 419311426 987271093 167899283 397744383 606709311 814269591 117625992 907685590 632506159 909525253 220973109 839788392 254094720 446661090 708522821 859642311 555221077 612800256 278890257 395960317 363175944 926998774 803701940 827705578 435291961 571785552 240056850 754440418 403102936 820380558 927885210 933763537 986209895 986517607 633029835 655365015 708996847 950439541 606274096 803129477 47074079 242751243 88749403 603499972 798353462 854804848 639463580 872823840 978321156 980405853 133089258 995751835 956203952 985723879 168229415 544029521 258985821 633594669 517898298 889690257 778577229 864441679 262755054 712236317 35293390 766239112 226134613 891186451 220632173 724941928 82071113 173812043 876374493 877054782 699771680 952530318 92519256 251439048 327361149 439455290 510350560 623791001 801939391 886356786 675373991 833303083 111354919 996748241 347710882 409210911 528080506 732574606 897331521 991038373 248030286 425632805 551063682 900928609 173695292 380421013 838950830 950856375 843550255 963697060 499193075 943102318 383261383 848416155 304730774 722317447 342040861 593058394 852621097 943849069 816788392 971736442 990862776 997401526 75821013 768134515 247753014 252389992 137837568 329718740 303532890 314319748 880192670 917546875 326484435 404962807 611146775 930599090 964263003 978703512 719122994 802040822 588340054 978177405 96473429 420573357 125594460 472983950 329122713 948449743 690425677 790203088 688088257 987175271 840506465 908961403 687445037 689941920 566687652 961942579 1726333 469401157 424987006 811153826 286094162 908178966 262311466 536425040 565142603 755866008 534970790 594620342 878723341 950952139 669681430 967586794 717338380 841040451 114192493 753929330 363938160 717798201 86583865 323979178 968093615 981811120 724657521 810043999 684920626 950279576 458882180 489080638 374892660 959222898 490369679 925854315 331954543 741093469 752256045 814746245 649095329 781111401 500193872 804943650 368533953 827431853 914102906 954505067 967233805 990878167 608145225 633429001 425537385 681485384 654404116 782333494 547528042 832951457 152339736 814192175 98220045 602363149 603760705 738754718 941013177 950811062 359861181 916957158 803740980 865303292 507110215 645615840 873125315 955627733 133080686 534571850 940417223 953540438 715100756 805266114 490872354 552347055 181121210 395772774 801971829 977341334 876275608 978990400 327535594 909018509 740591064 904086574 544484537 970764896 689562456 696304975 33148782 962266526 806407530 925878786 368104582 605409376 568819659 746208326 618746223 825254445 755947426 850240090 916163714 969176795 529257775 580215684 607638744 829341992 441841781 949352540 56767625 936937608 38466650 465223089 93986679 664858899 255650948 888207503 407726977 448476710 539905360 704085046 869549775 969959402 387582619 720752552 561965323 791043596 930834295 987865046 652624459 914383881 766675128 833559312 890031774 911171797 167404997 938529352 280075521 762759315 813742365 994603089 122251878 355315683 816057357 840596820 798102579 843114358 629760771 723662147 907818300 994492382 537478410 862192007 252636009 382424126 764481404 907298558 63130648 73742824 431554943 880840725 163102965 885703870 859560283 873014411 547289894 775773368 817402778 898343985 211164184 891942200 750873710 864850212 913498386 959393571 305742620 967030947 226444719 562377108 404641798 565903368 45369108 885890062 137304605 879673244 457577848 668720601 815193594 985539356 56523140 455180696 30648324 124287854 68844519 743363770 868447752 989819915 383633882 666970227 63073418 254854689 664062184 966990793 134839376 343680069 509929321 838672728 258549659 268957662 237203550 623262299 495137876 637685625 755532484 988442078 258618632 933427472 311691053 530447995 963559764 998748975 608127869 988766579 868102231 920268249 179905347 201998153 330101920 682546249 499635080 647680199 88509021 167398994 178041118 422848521 208542531 728971162 603653918 968910479 793802878 877081126 651936573 850043703 215466431 520029045 500411960 945809692 639895395 923461432 788400234 885364012 258546977 698433759 446081677 640017223 330461284 749145876 174755871 264090210 162298565 611297339 732430001 913281471 169198857 727366298 471924944 484876911 746054731 910071355 10997353 641242179 505146785 510285752 252452037 812233093 979173612 992075966 281776973 645506265 19517802 429267859 372532315 437010567 162708228 457759682 878901094 917113083 14880867 363809073 571889986 866706349 858248447 862375831 882206592 964004066 531027269 756025733 94754180 509318011 256071677 561179559 604468131 742004301 119782474 480668857 242683760 714327388 446109909 878455588 650460467 989700254 809245265 896039167 95603110 952732015 609045331 621043832 184931157 627100637 176805505 902185918 729933980 779488473 920778513 970887058 406398050 905387586 52654062 574839691 626187979 741534086 615394405 864711770 278094231 832680549 479290849 634197288 414253483 490467430 402617133 709980428 860998051 888699135 451178472 924671507 762142725 990429424 732584083 798051888 410180207 909854356 625454478 890743595 632157581 721255436 275522408 997507405 94176177 408987394 702336429 931367669 784443278 980354833 848450839 848586465 511478125 619058544 218497731 870156022 452641042 714282137 868331081 959652870 434266412 978007880 66984114 824434960 238274439 243957931 822073272 833907945 547502516 733830071 787042932 831198571 172478825 685732244 764015367 829514391 765764748 954460344 549160832 690867017 291555866 701430852 924479582 987337760 420905160 433533721 130960602 495762899 494173358 527993690 331495386 405970690 496659496 783031997 339058240 935996118 977863895 991957318 452126080 810336244 917342707 934035015 815610176 854542102 415391348 968071386 699911430 970980514 711513431 838837035 885052045 984869414 219023026 852832424 496600119 842905950 314042259 887276889 987476697 998192690 959129168 985590244 566346391 627411975 189521463 685142054 875966807 915225819 783443725 970891640 956587945 978108768 891227526 977256049 538549649 900269818 723450286 857238190 993459886 996845644 498547957 960603985 754010023 764169208 396854363 606094517 481006015 669129009 825556620 884261448 965904530 978027561 944348841 990861719 605707453 633342573 838829988 896933306 528525303 721228748 605328125 609158638 249384709 719724297 145457607 301122147 293594449 666112095 834867367 943181163 469949142 974563211 631534523 764398264 893291456 923890599 57594133 742966043 630317764 784331560 733062832 834661530 451929623 677501197 812455866 956536623 61786448 554612265 988987064 999368895 365562259 514769377 546833592 642122359 199716017 415333112 477300928 918550044 53424279 719526565 825006430 861824918 434119906 716685246 442156844 647062779 612270341 811412899 775362818 883561429 86468130 984619312 201741546 355007447 370309517 855664774 469803965 852607401 405346084 444762430 617658959 665495914 254756533 681454363 147139760 382812866 139081829 283146271 176039717 575473269 649719052 944484614 969521456 983022255 349063895 761060397 210245399 707471835 476592265 691950658 783205104 890759940 831590227 898570305 359035054 572671139 929505422 992841329 190096314 913447183 867682193 875924562 615571264 705282228 522821588 906950249 453362100 600991777 24555077 508332545 625496058 913105680 914335720 992698748 913474358 973467288 58940809 844161838 913530851 953736484 892927428 936862736 536746263 826845572 840781328 947977814 318821528 661960113 184164336 631479410 906573005 972417945 743642285 808966150 823750886 940312817 313602475 777029461 118008371 332455587 83742477 166869380 463344968 854087818 681348182 841976232 372837961 815070191 709975272 938921028 835359687 898978350 610139295 989540223 581957249 951713218 810794649 839860955 976249926 984806778 38056711 853270155 51206724 511433365 485333237 613821879 157986830 469482011 381510874 572070741 512966608 593179338 801942042 883004286 721730126 798649322 296561614 767066779 443964321 862826870 211481378 892177107 261312009 416809903 683342487 684302054 980258018 993180532 589119389 961021570 764141103 923752853 719234895 944783538 749889094 825319615 695246621 796009459 700634613 844919098 278414646 998996492 673211999 908623851 875480901 955569589 721053749 997968191 263277251 390625237 655713475 922974859 717438369 885314643 225934776 795456213 48105223 818075195 335903612 358118546 811909683 845817691 328354170 737613949 745953345 816464943 846468329 976004259 236541757 624069468 706291754 826204279 895753326 925385267 446544017 658129115 62428358 795724118 450556233 718983588 44965020 999960099 522982074 889313098 387996512 913033739 337682084 909699869 522397513 628734578 963293772 988486144 823483153 846490281 827734661 958082881 637233202 788838999 54997330 267140272 127644833 819204140 862932119 870697933 167588687 600296512 545864125 854823763 83625048 777343541 18813282 814255800 779327217 903235735 235379672 524528269 700147040 731762977 191428708 401485848 833438497 870329054 868382808 932064698 578737058 792664949 56791250 915355404 946920065 983249189 803513250 908157866 484467454 952878495 460116535 583939469 57251983 841892195 615684234 719185637 414174714 507776615 403506174 779883589 551733352 712263924 572685798 787538408 342288998 995383821 989448325 993290301 957364040 989399943 220467038 816371822 749989128 947286548 880942019 994950888 254059279 530813163 771307937 905427310 772369093 781154442 41133830 519087634 252736633 493282965 851231626 905567294 637482493 697864678 841910247 900456330 777811894 801416214 624175551 834244144 338164686 574240151 845827063 956500518 953115338 994694750 142792059 403691734 262055209 850893177 135890072 159163894 87034131 339272732 957486635 969581534 487170582 859711477 663475118 777064910 31377967 590688474 479942746 808849186 151807077 726285671 657980100 924988765 430878590 895838571 20792217 54588227 661345390 789854884 72010222 164121023 248799798 844600759 588944834 830419570 781110776 962743609 310326963 364575287 743597852 851482162 533170566 578271493 958468456 960466696 380404985 539628791 432715624 924584949 515181683 965046833 796399652 908336391 762436775 965776728 451287160 949247617 440630303 538409519 103264113 249242772 7912715 250147064 99785574 110194798 816584384 999707623 84068522 326252693 857624825 867393257 331686996 657570978 235949776 791643894 919448316 967836359 13661677 907129793 86918098 682157424 114854996 495113661 477812100 730200347 62775032 583069583 924310760 945641894 771841210 854825325 463658030 968485244 159946410 296845039 609239208 988176965 319169210 929896085 717587511 725367200 486999485 880722986 116050240 775565047 612252008 672486660 477023581 855729977 853439590 878201682 289132714 424582946 11266133 566793735 665521822 691626517 373941473 866434799 854111185 969881693 492682040 937546964 280488760 789595345 148033444 573162561 932376799 962765997 471443814 909032401 276225778 633672936 360005369 971650759 974539790 998334996 357198322 446204077 34608456 895612353 89546290 287680751 28955838 955418815 780394333 995400181 251764465 908055560 896616229 910473827 104844000 534934582 565888402 799212558 618465310 693977618 544103351 869903946 730213785 952572012 721095995 974057586 203194224 649296789 292105127 575574044 988026046 988192995 128184428 628472549 976278483 987431158 358379334 480053746 27786115 224165779 739946802 925895669 810612297 977350021 741173357 873985432 931957947 951688013 798130943 813545908 753804937 856642661 607759094 920295761 896360427 960668222 542383790 875069210 95847004 181953737 38544029 570627419 326680461 571715175 27309744 36678534 673313585 815549577 132986856 591250445 504509920 620569106 138699628 862943519 554864250 646749322 772925215 950445345 57585401 566571087 847581828 899880407 647158053 752902347 989301175 989613836 386280733 607419420 939604400 960045452 936023643 967581762 801549249 863191466 524530031 745681578 337168145 902701555 243765810 481258163 892557000 990520395 521848457 790334564 641463655 864345547 507450916 731041080 220037097 468053602 4261187 194270633 864059522 999588995 942224881 974756266 421823713 993387481 599797129 654782022 914033999 920851193 726973836 817649935 474143519 708150244 201615507 274442230 253873267 806427919 532120646 734012152 22712136 789258593 209367673 875752739 285913198 348634062 650841605 747147985 76948167 684320806 896523765 964213043 786738854 854186930 693167837 707016068 547239513 666847549 903593280 913486502 579792156 630012897 691238452 834976372 645826245 809235027 829260579 917806503 16093993 75100348 535840422 908393471 211794051 317640401 681710523 979351469 122931512 247350080 87562685 375283394 507775188 588551786 40741025 523147649 336601558 408826011 268615927 575726086 138815964 934800161 495119615 719180689 40807640 65643777 651692089 965432471 263598761 829952067 648183929 949923079 121239928 449786433 478703175 809767622 995538161 999696485 134994588 432292046 851707055 918338791 251648421 877181021 485952925 487187359 90043131 965199107 418466020 567475756 805278036 993387360 595662900 825324218 923075443 952098978 384098641 751899295 386686783 892374686 77120958 491624016 308162118 529643490 517842699 848115687 172693299 321745162 338587412 430719974 274605194 778975542 6624693 438539139 223608828 268578223 140573940 796031120 805356344 868513328 850847210 929624268 859992092 911268599 993888717 998190768 370526967 495713654 81863672 389973677 129461958 500308043 349149614 971522883 854725875 903747488 816778068 887616522 956396170 964546997 830430249 904263307 870754233 996849950 34291748 719983971 58688139 890170461 719247737 755514186 605884958 849407614 26996263 996959560 454046688 997260781 806982260 891098130 58295589 854810768 405623043 518087034 864940574 922937462 967417563 996461983 829902385 950672803 465028963 574219876 433750394 703282273 516116357 643700426 755716108 941068579 507342929 625426276 288713442 880685560 890392612 916776312 205351190 851005183 779234526 889636436 272805884 323425401 716012945 781881565 372840565 705944597 264008040 308624882 956525872 975239367 976754796 986466567 71117814 541219299 740519422 931116929 146465885 336037361 511966217 848182508 246764837 502943596 414758159 777288959 57069470 631567003 177433906 870169496 214780552 267892270 297483560 596381416 959531787 995621063 802125230 958304218 269532572 694910008 606569453 857286961 928816040 933486937 32937228 580935206 560991555 939163735 970699778 994347504 986778579 994188618 65128621 75783224 924951332 950052208 698707236 906458244 43921504 106483015 811243556 971498859 619559175 732645163 919906022 941242884 704933669 999031086 555366794 625401232 183114176 657138708 188182617 195147313 43770859 136531213 664516260 844234337 862300120 863309047 829554819 923666113 829864455 999224769 716285570 784706804 530232194 652186620 717252770 746410968 569110266 665099205 411399903 613141445 460875409 478233546 550670116 786652556 338538410 522155358 603468981 742323955 810709334 944089007 845540050 903133409 947381376 984188414 954712217 990414325 873596829 929126801 216632637 426815418 647629206 810667060 747960415 981187583 580732504 610466421 7283580 566077498 941512395 973357642 215424198 615167249 890555013 936764620 723595671 827498364 231569858 522503458 145044261 610871589 906322747 973862860 415371282 540381530 768746088 868737631 355870965 750924276 931497475 950712887 170287510 560888165 754111800 820126664 306111853 920073992 962914294 974651882 276439654 759902231 8843169 266573814 269290562 892754292 678759294 849099690 138609002 834508675 856840168 935635950 276035342 524450993 54111692 314160558 757885927 884476188 944014474 978606408 463716295 938511890 882317608 993602688 759743452 851601828 437209013 635735959 63597216 797631698 617467506 702870349 680851581 721302216 588510253 884690903 679365731 801155140 373628617 451354510 580439465 679861937 300469387 541934658 434880036 712808932 304850608 378997610 428537242 956398494 716873354 869266999 499233221 975352574 769320412 880682155 61796872 820156244 733692994 844415657 7532469 25018990 986905054 994177409 235027616 814232709 103404410 508270346 795777950 813723117 720729210 971638783 236076238 330573362 207073341 227848114 796723919 802349875 180351501 894105866 351761063 584858747 412212456 466535682 768723157 882340516 28760452 984200540 878813263 992407367 995601058 999975109 705853250 788584022 64728910 642261543 331411464 794766330 956732227 972997547 325112696 517363812 203794993 655147605 403806976 435855616 336401743 475013669 393754997 474395626 95273915 998107020 26709 926484256 635867336 654756933 622299789 725652358 302115525 380586598 153248783 851718415 232663137 985379578 457398675 523608865 794156600 895064240 351591524 650850957 314114730 451734129 883133624 898713873 589384968 819697619 1379524 132911270 398634748 576299621 467939745 914009667 966185538 997255709 661830650 869144258 998419450 998483911 457764313 977606328 881303194 988908951 287016654 727292473 119413903 682358751 91380977 558804007 225817380 386076322 869248384 877085669 268766173 578544771 635974658 756341418 90585621 351084336 734103100 898205180 863535837 975662663 197263757 883697727 594375467 744664352 957665190 998783542 199755561 646281634 175731839 631062383 377713968 737670325 873336027 972805439 912288406 990346562 383679449 675989470 968644089 990806621 604913097 761428588 973683304 987204005 223646070 283617009 690456661 975437550 38424266 343622822 526267596 570336141 292546720 545217621 948640279 988041026 910840961 914003315 723422337 745413348 855345186 954261851 91520112 671515784 542162741 802204916 806449901 840158874 987516567 999461790 83509273 962960400 980381783 990221067 878585267 957230573 562352730 972594430 957757919 969789704 995065799 997323063 326602174 615657717 493687567 711268634 475026036 998821411 338401239 981651170 700218621 859932580 679775307 982131526 556448352 590769428 882509478 897029644 417731408 676546276 563962570 795314091 877138155 978303135 848412271 961523803 837509039 842330947 303802348 797762141 377006453 680345122 507351420 537421317 668781643 941656380 774664378 890299104 560231867 996282403 276934510 558663249 47284122 507166563 33964986 962141260 670786535 692379352 640099659 794548215 526755578 734626959 438212461 451231240 635851231 870287485 592452838 678364796 194297306 360980269 374626212 984125151 708753444 967390843 516261948 720572177 390819739 732701413 92084436 704199407 477975489 859726522 277996730 789514828 728806820 942978048 977763110 985986163 848389471 917645193 677963658 880073905 976731179 980951970 803732395 992961423 609337008 783643400 626556155 629209526 238176492 872538536 821564375 941141327 45993510 462958727 710747639 990640722 957708033 984400321 524063993 853254134 362814007 588689299 151804594 927214938 403097294 450108256 217722786 772460366 735903285 839252895 95264776 273944542 316052640 431209676 234260020 695897745 828717292 915590093 599673247 762850134 146462804 199347457 728109145 872677080 306328468 697049582 383244788 957893834 700216322 883709764 95022276 536370613 462923824 935274168 285293830 931698732 513301767 673362144 104724215 588026147 897758303 904167032 324972582 608309646 318561690 840057481 382495069 715912761 486299832 883405632 866193736 910069900 644235776 822267772 365515266 502740501 222472312 775796058 49836386 564815976 590309868 720165119 628145273 955117267 828196474 990953661 306605066 947805519 767724270 999711873 365566824 725169673 708847141 857394259 965445618 977998473 127005074 202024920 924807527 949908418 646505420 755012146 814633644 879512529 518328658 996312246 440291744 861336125 444974312 635987981 326182045 600976671 743227888 849572792 855294374 937939384 90060020 981605704 577911214 664051905 702679292 949643219 711078231 852109723 861886910 865899444 756626538 760472428 487658917 908528262 76679218 300929276 71884376 794893402 465079916 493402767 310706731 352920744 200997770 661913229 73414145 930309506 374120979 962910385 192843463 327135951 369633241 565651726 900872403 933763705 652090679 889231541 141386868 267468115 29473174 898694475 335651743 790041791 699482265 886362655 432114325 959731413 193494502 663160875 127774588 603231750 228055870 429404312 734478076 962047304 505588112 916100235 966333796 979860509 595329164 677267652 405267302 656700829 754610916 956738710 982293532 993542553 154714654 218527537 374762197 778994657 778044299 916050057 839602590 916722332 640485642 890984977 731429942 766776953 101173921 872034938 261197635 653030152 67288355 291068813 434726059 530503393 822082484 834007472 152900468 195252131 322058079 692596760 521805040 563866261 311761959 663742312 30702635 774591225 931432349 972536114 850375065 936937935 1535661 789086427 508215988 707889507 543361232 985514103 748556550 801147746 691015460 783029080 237703391 575266876 173811842 765397304 376544699 971182536 895821249 981408577 70735505 106822380 970448019 984254885 118786535 524056170 868540442 878583450 276103690 580994583 863291935 907848191 343344369 831247675 803038221 939114072 442479302 874300161 891904802 970521217 254652047 404706176 82357980 837236845 24320819 830254271 97397893 189425311 94793875 420079037 192295254 262190086 737615393 768768205 263991527 917694176 773644450 875469962 408581234 789102702 632122481 667963152 29936827 399808859 69404920 963923606 854928727 879597092 167064501 463023838 652769387 821041189 509394606 608568241 425297610 630330291 487659749 844514623 511013232 810910039 87390184 724651555 681153237 893429898 216186785 609727607 486287654 758371302 173352363 253511744 54514131 940284687 535935483 691909605 293664058 585592270 446429431 965499244 785809249 884853947 822968267 959088727 528863450 746589346 5408194 778158367 374122249 568888926 515340776 956778354 238748886 778606852 638014205 878769939 530630300 989725274 654867283 932873355 693788382 789781745 559685002 766026856 412341329 726509898 661147886 898489536 229127446 910028057 667420205 755403107 349810451 581153520 276579950 837554121 859911173 872444967 338714072 914448896 496067723 796194325 857212949 906368531 946120564 955646844 480785534 552726419 859080070 977293691 284982368 836683243 661169729 869762695 340932714 643210903 649661497 787012639 439190974 893745886 766097308 810373145 693748522 948207121 352737243 820471811 428078106 588799130 270819550 719086719 804596812 821482501 819131505 960480271 234346363 541409961 601499440 718032056 470925227 619382654 520455174 677562367 331437937 468619932 240102528 889629143 875393625 947544227 923783126 935347896 239086007 574604449 424732902 487310838 646341507 871114582 716112906 758745562 748554471 768988535 438393124 586330833 626495248 643446627 676607387 756093309 988490730 990843263 67065469 264454618 765151506 854027773 546891099 858436286 655331235 694957681 116118662 118469597 372463873 870890707 913316760 934851611 988144194 991624533 478643479 536192026 350953309 483223352 831571367 942207766 239683685 521026036 992375525 995114972 558283022 583936858 735196753 951549237 845921673 877606722 558921349 742318432 706977537 919934960 287954851 573040318 84352816 593952936 416911660 540165944 329711709 661164852 400571819 772268445 537072918 556991621 341547080 571081705 779889126 996416742 578678174 964703627 614865815 687719650 529080520 677601670 138985452 788503243 440836715 738824841 323702279 765129178 29334313 273292936 589674973 603940683 491579691 827163205 863382194 988239660 435560619 663075798 492779029 807406888 739111317 899926756 51173584 523141302 345225975 414228335 751506699 818553820 398768787 970087738 247938821 522898599 103250448 709079516 392487409 513487406 908846699 981408706 346491632 817269867 363125698 864514314 767068864 961577718 389901607 793453702 935465272 993534752 600355099 629478373 216363979 517782641 361481836 965442549 91716325 919803195 176479194 602355745 226849997 833900327 94117680 715135838 728289441 892765918 250486658 409001267 289692199 904371113 363862682 606833225 221690023 566218851 787474208 889034528 553880778 596446624 784648844 997649593 217970489 554588063 294914743 953969465 456680189 832532985 104169447 965190606 474129966 848170974 590982067 851637531 268088118 819468230 455212733 998259000 677865561 871668239 661324080 875983787 779223355 886072977 206049657 208089841 446015497 501619265 578221603 621506732 211778404 703669275 986715520 996995478 975360464 999344816 915980254 934584313 690578188 725247999 946401782 977123654 370047270 754289289 917430197 980459030 44915539 904645943 749970541 863702684 876682312 953220013 39114232 375338292 108718947 696911616 457791843 945029109 520480273 672067863 5365636 739566925 951679878 959097564 400573043 430612447 96699896 772400451 997326590 998884354 844155343 949510113 809268663 830701392 659340019 827395900 388210086 830355702 646465497 740947312 903436821 944021121 591708191 688812206 754565176 796504291 719447558 885406576 893258074 894241408 543134861 809044696 671320942 822591481 182372155 243927711 691687824 781051643 606499937 863337806 375933527 474843543 591317588 836806203 734421201 935573785 97659727 657323570 434527081 524050745 780543857 973990307 800187021 831908998 101362455 999818600 873159110 879781372 461372640 837840912 518769891 652889049 179006666 818738634 209282191 593001957 877245093 995628550 627135929 974429177 697195524 852895509 839851715 898760613 792544826 826706182 157132424 614400995 8020453 893340134 128474993 639046761 485149595 828127947 101409972 112120144 696584246 872402574 201591726 788041360 998356986 999226667 138892259 335690594 704001537 749971845 195353354 761197635 217384792 942816742 813803584 895606772 643499151 992508357 796950960 855104157 253562362 878895947 468336781 526440347 637634048 988636569 237872188 945387814 860160778 941619591 221880089 344893220 228365132 859979325 365445310 797216557 889685359 972149591 169449532 829835916 97199365 210951998 735227842 965468193 252989957 411584124 32140026 619501114 971821596 990300725 687405333 841171503 622604688 734974135 939756369 944943591 451541194 473127172 731479985 900868126 212291684 532315192 137360709 909764929 115158178 916662450 995745945 999574613 728207701 820876006 301247648 908350576 514668686 532794811 374480251 935862895 815085510 850119339 999733634 999862372 984862473 995279959 446730229 448249179 807082749 880002333 919684491 968496029 910162809 911235582 717311268 911619705 751699085 953517776 433774527 819620329 208597731 214501026 599626664 868996731 811123447 980590294 649871358 984512864 524654228 819404601 453569331 847485333 653708815 957130655 230172571 261149816 557655550 830214844 762481651 935578322 859411805 932607221 234845708 985799564 659776659 776921775 37278710 960622772 162608643 733131236 936929487 999135505 177068964 610616445 942567760 957841581 211709021 310237945 722721996 818350147 941915043 955971422 705262075 734383932 975646758 978057959 859679757 919748250 553328591 605672418 234163848 238428760 867914515 978747506 289436370 445070970 660194834 937626934 867731214 948288017 969911401 999265641 677493878 841937664 64031745 495047167 725260033 859930462 379034350 911407234 811699974 969955392 314695263 998829060 949726753 974750097 85787054 459949856 486237404 692346877 830767697 984950746 637414241 646877770 14431924 309202574 604761442 703596583 150626064 747176510 360056063 563758811 52659688 480672887 85040151 439405648 85115918 252704570 135689884 442177769 943224277 960624957 969579621 971357914 381113547 397812254 894703516 973988422 733496572 953427155 442530059 923077765 899364979 933008397 852367887 952754451 578107836 971185266 786870465 835067420 475131891 901677663 107672517 558160100 393648639 680494696 258294997 680084084 450192238 543467388 803099703 897570281 438162421 711347181 972624500 988638356 559599734 691127688 935681560 950922984 728248783 914812388 773064136 948577542 931363590 946682282 825973574 993847583 614057061 964751159 683787614 860404489 46467773 743111074 493018322 633279828 548842635 598976000 835408868 989779867 176282613 180572275 16965528 231784213 51999347 424210511 565460031 748998701 984761374 988069487 596260524 835285687 930125790 981699553 110750276 825507445 28501599 677280110 479236131 798305035 995993351 996109785 327668968 689603174 761627333 932698087 764141329 949598384 637397711 881759195 917587363 918650619 611394953 951020394 274793080 302761146 336569981 579768418 472880760 551193179 679194683 913631765 420520033 974591117 283210801 527219166 168412396 805627014 29239356 881534293 413527652 651468981 824910350 894859299 953448593 968274234 16313495 541032875 292109997 922199753 949975873 985488536 592171603 940558786 8082861 204116153 901319787 940705478 219302287 724257201 152101198 477023288 84361268 364867457 823306066 846785977 650865768 688457253 199001029 638863275 104539741 440672601 545997009 851457601 736437515 740485761 882998346 961520361 253454938 928318351 244367968 571282313 180047500 534057154 17302927 79945890 143502716 387601996 406263256 490748759 70613617 539200840 117494100 368986108 531301320 705249933 52074104 349615136 273033848 460343101 48003720 240927423 973847012 994740546 603670512 822500410 826483234 950357967 920855955 949738238 900373114 970747198 445689229 813223075 861718354 921378618 637413989 867253164 452196013 747618994 528601169 878055373 658584395 814981337 224484073 477108713 487779217 567073448 620281506 890026250 299913683 603875984 259554775 287380264 27730477 696498217 186100886 356996156 99924488 339959333 240760356 622860140 310842291 686075520 406440105 562861712 276951956 376612485 300080985 407663019 91359659 958203065 848504534 854206492 875826934 957847910 12129400 716256400 51912900 400112370 993901938 994334565 268852032 981176139 338856165 618684915 870717522 906157187 772905287 876388444 832130038 987103122 376573133 575435540 852293326 896249115 288550336 674210647 184038545 709335446 643728820 840805646 559494258 595628083 635856579 920247313 647850489 698319146 868325015 956375983 246007737 989394248 586670508 930279968 504456354 716389990 968289285 982020427 989267893 991477829 438656590 827055358 326667916 361829747 414887137 633850953 775734686 793754221 948037948 996849421 774260013 868739399 392881889 491067404 971011894 979480347 30214972 726723313 637480328 780767837 538216879 949122185 144868806 474977141 394734531 523599862 118195505 909241548 456290067 726096655 693005475 819298573 473665135 802114791 805529029 813656873 271350460 640865779 686421444 905532176 867762048 881067518 296522906 373284133 284646743 462063372 804473314 853579888 164684619 892693404 62194023 146265665 842530938 916235883 286185179 769892239 726963156 832520016 998459986 998655025 862467909 912893040 744062736 980678175 70312274 838559420 906228952 921915032 7209384 263579323 810274946 849669355 279696662 632639676 647274139 662240057 950484298 988705415 972677024 979020180 484986038 692063833 381596555 431393872 967782594 988448851 657511538 719977547 119127995 388114617 806696929 868983018 699737957 740173559 295316150 695310277 142166404 632110372 334897431 456651768 271886908 685762647 633405997 913649547 72412262 649246082 390544302 399988160 327713251 685359015 812845734 866167224 370616736 377196601 685156536 789879311 974431968 995109879 279454569 335883766 282968834 553425895 379602562 751701089 109831882 718590172 192828113 942775202 187625701 604674961 58520876 673440160 363037402 632387728 262927578 444677878 43506211 383426842 996092494 996455800 996938933 997197990 592573339 635518231 4749307 74670826 880271647 993764686 899837212 966636587 677364176 934749576 579031426 757786722 179244097 838667510 860587411 992703402 96968730 992697793 322694200 563270686 299962704 920771219 573258854 657022781 879427498 916759385 582932067 755250317 364726668 542779919 674897676 969925382 558461096 644217973 252907247 317221317 98151862 300499066 238974430 381858311 429728949 632507372 442685460 812581033 557221343 849935437 126065640 634322249 95474576 186613238 204106378 806722979 523101262 858579190 960297024 972138799 164423384 267667850 977858906 990068570 673468753 770982228 91735575 671026939 358821024 866105590 109904756 849380358 322680542 478095459 749549073 783274196 418041233 470989384 176047631 849982963 428458445 917303287 721883644 771996849 555275804 763102153 708530251 775657365 926648126 948905736 723133003 915989505 866134619 964884018 687777554 957522172 799343697 896470479 918551553 980087157 906978247 914825542 491471900 620779122 216945262 943586602 447326271 579844851 83578738 449947358 520569991 796902445 583095536 901375150 512682805 878886038 930245942 987656065 669440716 709815471 230291580 552157166 658860856 707287005 807885402 969821111 991145247 997032180 936776819 940709246 926776410 937377229 845011813 880111195 968956164 984560240 31051921 254301055 182242233 515481034 418154180 582731281 247782578 736844575 260603143 428075033 120693534 788523482 254794189 848832028 787667925 917863550 972504281 980771445 417041273 503101928 745604971 759792642 705780646 729499382 700531561 962494356 996027120 998726531 976571909 997905896 256455717 464960872 979756467 989169027 601845263 670236132 819065583 895147161 70323694 550277801 511959389 612942043 217263238 661207254 290066593 962456126 160682218 473552669 666140608 668762961 214819120 516212333 410865311 824618296 354714775 823381220 41960774 192978255 162267913 999519504 556922494 606792931 762294732 838797017 628613206 759944208 965218230 968816024 753369375 802560502 114431689 513464596 604597095 980528359 97054380 527455511 290802360 365790758 63006477 836860372 708220553 810948977 452202913 777370401 944667613 976429065 21902637 896747623 900626321 978928243 976497701 988229800 564612866 837349417 274140320 399322698 724728647 918993982 665272770 836416549 310133904 748592602 336493032 352686774 58236509 381361914 82924916 232743990 339598560 861099066 958068031 971947445 865308882 950464191 445671405 743685439 175025023 332414035 120172516 645308721 698641944 878831499 104268481 332998626 406415117 506619187 226429304 472401938 382430974 470450771 841454911 966553384 792708822 848105342 834000131 987714096 918571749 967668302 486098795 963124784 559122577 857910890 542495158 626675389 384305334 806044804 236699121 572465036 738138788 876455514 232114854 659500993 968016097 996539464 53752275 170797942 981366178 995227304 791350662 856312265 711783023 732912370 675209929 955177914 96269136 975464502 645541386 959227039 329468813 614216561 490607545 825657453 275546728 321461722 515342419 842976569 853553334 933238848 65081037 822945400 182967027 283125288 168178346 992209440 832618110 937998093 467857326 614322415 922895578 976199838 884733294 981866426 687818617 963969772 891460488 968520883 639925226 767593665 896106260 908988085 109533221 280497542 720275812 872559160 741930427 755785660 951389120 973066761 537685409 682477661 652716567 681333882 341952353 898279156 90121048 512097770 171672351 274293018 107520636 762301681 15684355 209319320 852025171 914543855 554780690 931184599 304761715 440152808 968885452 992868636 861358367 959319979 130704212 836829897 744128585 810769398 247051915 383187380 371411767 537821798 836161748 929501830 949140954 964913024 997326679 998052811 626311246 628993090 562986480 913298805 658656774 734126709 851391406 880142249 487846574 601379900 329627144 802834519 893801372 964364578 588659514 913845359 228022530 662081859 785447653 893823048 166862739 446797459 924921693 976545815 968844679 997301878 604644113 876750119 358747705 660195005 376986787 523423803 718113393 869282100 755261791 840376007 67520017 577440804 556583735 572735019 964548453 974049282 844834032 924928544 227555861 863867863 285340380 923276390 946141341 963314740 799936992 816971756 641692984 975367091 297077108 339669766 830507901 836798447 711284581 821852892 11689907 929564097 673112784 963776290 705615360 717147573 490725949 787656407 171883345 393276930 99735982 646252083 681837974 831008319 907236575 931794503 414091161 971899546 50906164 147421362 570699713 900043127 998827046 998852025 551725805 681370230 454549833 723785033 399959652 805398815 637660126 992893921 651404051 667003995 354329860 953339724 151609573 409980948 579251188 941837521 41221621 287821222 828504828 948849396 733837744 959662559 261697841 538290072 935777710 941145191 160773765 540034374 540038698 546562512 869856761 967373028 200325971 303981634 949493306 967667946 832221940 896742678 655469143 903816986 246752354 467725285 151948867 505930563 728017312 805889972 622904284 652462199 975179386 977754048 76947829 367231063 370645069 616963506 417286078 467088013 641109474 942162295 738293572 757227732 129550200 276825455 816636717 827416726 402850873 633195778 582994126 675846357 151887689 671848689 900442506 971361815 775273466 949778676 778204245 887043993 113617011 494310677 544578755 658887552 482554217 771052033 767507609 911722710 832951357 970241869 802705104 813888027 154189127 474066909 416750696 921864512 929691385 976576422 759665055 907562521 436923283 549497737 715224311 793536172 459065390 682979696 660826799 894056069 866654608 884123012 294870766 697132840 420650619 861899357 881553875 972264066 420169309 434266701 194543122 217173358 272238712 749828392 139241032 795936242 304530575 539622838 63114811 941707351 499892031 692883245 844093106 848615081 570620001 674157395 103397110 945898314 769983023 780726644 25028587 26117133 718541492 721894714 169850817 355998989 775960704 807749729 669618017 873758985 497734813 618787292 726360390 896172062 116502562 150700841 662035334 824883160 844542173 991830962 827037860 913940246 919166605 924246970 736468847 786906005 635242471 770781355 503068632 527270451 160102697 395143439 165503882 591930717 254664053 956058235 447411226 923179933 992069860 992500613 442781305 900999188 650035818 666187532 135473775 945429246 854234003 873115252 283053738 487899430 87360500 304082170 460294001 688309186 791598659 926338501 180316620 280909467 339984112 725952215 634704496 927105289 31182857 932243142 886684066 921434980 399196599 679832240 56209254 435301519 790776514 853837567 93068107 205986725 255091989 660773533 300422837 508037658 839250167 985181341 653317622 713295930 575845690 981588817 111887118 367791539 132707453 956610275 734456324 995942670 439580953 899644491 570689405 597283583 636027402 772972808 545342602 620821496 380633386 853795088 998101969 998850555 195048046 380827700 930040897 998618527 363455448 918189632 229486321 873241660 47804344 638055911 584534696 715150616 767556777 968400251 509910508 619533158 826391719 880815249 43520565 360134510 960463045 961018627 448631433 699200886 494701040 819035450 399190898 673122355 433998507 859670087 881028049 990483387 660410085 830751814 342681218 758981255 20488044 329754450 16062965 593446489 58841416 127715481 244011678 248121122 809492805 954595740 472663892 688767405 741533160 832178017 381783147 473406646 832020617 998704351 143756931 512245555 633771612 851909917 661299821 726174093 876858462 938077629 142142511 208843180 314454176 611024633 281933450 480465021 618851901 929595160 510334757 839533992 672066446 858966284 695588911 961270124 263707924 642444377 210176098 713677420 686021567 891416260 340320268 500795287 673409774 984369048 651722260 746141284 533882405 793966856 787215483 947627809 296840169 744646872 709974507 753227239 628457584 654557753 483227977 908362650 85131622 951921956 695054860 902997319 582478884 793146057 531428262 880536812 808100718 882535802 947025888 956617267 591642124 877788810 157526640 193156816 766462129 868176040 953700014 975312993 284678285 755806025 483320826 721319539 469829893 589319986 54628354 210093708 800204088 836665847 883222124 937459560 653888711 876583667 901973153 902389410 238251840 701697549 337366137 873103558 307136341 489490302 291935264 895214505 615762195 876411883 805080279 982346473 842037908 867959450 66071876 159211868 224115323 527096507 522184912 611978364 107380190 680725088 131711022 806800021 851534021 920932025 538527957 724216261 130322150 196225399 588660167 825110333 559846277 652058590 230538359 339646862 427182744 930419948 671017326 680704115 175667920 831377286 123706518 551949979 731805166 912447172 696079697 991712155 645816845 949512199 110024955 968235355 374027973 724173040 9774274 833090417 11543980 301871973 64313256 433179245 868801753 931824980 927154942 927443672 858056599 869326996 323075503 736119506 89542465 775703076 785333089 877930234 108709547 914263146 729552845 773274167 692771305 986110930 960993806 983930482 805735198 922431915 644102717 787243528 981552557 988947273 205718158 911992619 963393759 991133632 319251990 518536175 632880967 925650929 419342256 718297547 534134103 648731695 766656033 914678410 990197119 991797149 525821459 861909064 330352804 333278869 130578113 472798071 790664930 845577874 307980056 932329182 914251636 971661208 131165208 686980764 912686645 968850296 870364292 923215220 43155692 650134462 29151946 954225847 384983442 557311526 88202487 574303840 432217024 629534828 38914203 747517253 995606248 999709462 184796700 903811390 25246797 832199395 678641764 743898115 122259129 660341850 712901902 911535908 94476341 699550799 673574295 683526073 827626856 836769519 221357376 245558581 604232863 883953843 882764423 886265396 730735331 870512174 220897279 360136374 148889177 680259357 35342944 956763048 910878806 940591899 952513969 995568144 576684614 963871817 491798124 771868769 330546034 392083466 742687776 935733456 654074117 769345793 713367643 737628290 623905936 884057910 915719118 928632214 367373870 600051102 904074156 915557823 428893499 746481937 859898990 983937727 139041535 423917011 623682654 647336951 198158299 852199008 568723983 965004736 280965025 675758480 193374061 566116868 776419321 871815343 556282409 990737291 229413497 558088489 678492942 956946743 625592171 760429867 879458352 942025851 307489099 470555769 100206336 347974087 883439675 936713090 266314623 388224440 202345615 969408138 362306511 824182590 916958077 977763210 902341238 915297986 941126537 957684583 581109999 967945738 239828319 773854703 538243232 654443740 753206232 944234051 385783297 964535291 361761650 732995125 423232225 821793748 823105573 858815829 449862765 554089114 291977759 536177160 815847777 887766414 197864587 779188404 39483214 212705781 47071635 796418651 572163124 771285099 726955241 812974848 720494659 904561403 225996303 629281106 767783828 906586792 835260405 900466098 396925818 560052602 763131674 789901780 183927562 663891817 347222683 737933499 997856571 998108420 336508704 429330444 85673864 588220786 144751661 631166888 986651205 993159341 521669643 985616485 681040641 879444484 762981966 889434488 615870108 825279663 426152626 629253978 296333763 936161096 843063531 921273737 502967772 596485044 727529755 772500330 156791181 394784269 905012358 959657016 216091940 395130186 58825188 120937377 74017242 439560772 589016034 864925769 797459754 801594843 238219651 244522894 781277637 963443977 125380590 526055802 686626110 774036609 928935051 933562243 838383613 981941658 680090581 881816542 773009070 839227594 7618102 932922503 821716864 917792143 712611556 998100985 581342265 812918737 400348074 740629735 217175169 749295410 513233919 969293956 520117510 821556427 614164770 935841330 935055310 992888683 591053267 840770119 636670934 672265518 994197168 997545281 426491163 662580604 134715311 246879999 222215927 918167260 669967626 674243271 750461652 791106615 250051632 724071912 988339073 999589114 254090814 820226846 777528032 827928850 223110730 397063044 764762569 951333471 573776283 671161823 982080227 991829918 215948940 335229658 403486498 570327864 387012684 561731282 406898801 485912362 586384866 642144029 121760889 223240801 65409095 458874603 897441756 969573728 127501647 865933624 142562380 632187301 446920631 629767278 485262806 550063340 608474518 855373183 837680214 929041578 1715158 438645810 878833574 897747830 179126061 326097823 550565377 793062619 753324972 842836377 521903424 739298722 374995581 422596841 539160655 955640808 764586619 849415552 152662173 567813099 274002993 937454343 901442548 994509611 609265308 978406111 501492467 770188469 108074840 473927098 648800745 866036880 541181507 838165346 51902722 289686047 465178005 571927550 137385273 302266551 940923728 952293636 735753114 892206873 997843891 997928292 15093136 291113251 656303934 726924376 833812971 869815119 426922866 818445738 706673165 930791347 49471382 203893198 60519353 600951888 793891328 920999698 481438124 848069557 653943098 745413063 861823619 978293583 215900642 925449140 6172318 457382930 245198462 640984494 300309256 610309904 599013088 842137819 147749605 723520375 36157797 453076072 331083438 407022081 936184981 971631666 285015800 692796749 908210957 972912140 416450816 517550734 245925636 450833972 724523206 962479956 548195183 568332849 592704230 741271333 367888199 972627360 969138259 998433016 612077361 626150208 604026779 747934209 258436397 887596309 169225163 395553467 401557056 996733317 77873031 939120168 667045288 754146183 805153607 850522433 823804478 939784463 231075889 665370829 116810132 247891735 685657857 706413397 608122191 644124304 795511570 840242479 772165791 930449901 94659736 879035718 440226221 536268622 353544226 598094328 862985267 869326090 993419292 996827658 997559900 999721695 151047230 931668983 619597418 953604534 859800671 964283101 913101136 985985071 945611584 971578256 368027713 731399908 320975389 475780340 43013306 322475713 127219737 920104787 270579656 502732995 734271239 862024659 990357446 998097342 910082553 983188006 147286620 604878014 749490025 855615539 881794496 904432128 56793034 697755883 171122334 352595971 680990716 751883939 646286197 693573411 288094655 961820629 88515182 837234124 40242400 376697778 717757314 792651131 719348401 931724398 991750391 993721644 816276695 977510250 160749048 174038059 792895366 971003430 696968241 883509223 238110633 972500872 899058025 929659999 399269791 523241539 682113582 909112009 708459923 851092910 644859398 857420537 869159217 935732782 900601445 963718336 543859041 800355802 882168774 982459050 328962858 699008134 654728316 881492354 292544558 296889946 539063625 850092787 648717402 679015215 545356079 792706487 531749705 760764692 516144540 998090280 307608962 974315581 357042048 947147421 12857895 176718609 27819359 362551216 488503566 661561981 425584552 498345449 449447189 592248458 275050463 337571545 265860365 975936497 56947338 85025138 606940027 816950600 131312492 514058506 247450874 931908479 275648771 567491924 969006454 975170943 219236168 512790530 401473464 746130545 579478339 682908792 225407733 770063364 457847953 748052588 689443756 878632301 898831635 920996377 342164791 516211653 76085737 830545886 709795206 963791058 582209491 962587643 170833450 584537679 55804748 249520031 173299526 269443217 724574377 865576445 524045053 694760354 34352458 576124636 386820570 390506106 834843535 968700165 986606259 990855511 925391466 958332077 188028415 729891593 915712281 948708375 637942794 838199664 256273126 624092144 841075772 976112601 451175523 932939346 49019643 958962184 664205268 832930595 879105137 925384785 147261738 879272453 477123452 948293755 85980700 278776675 612850528 874680566 910165716 923204619 619615996 697280018 546422925 850942501 253567169 979740139 292083786 337112725 986391495 992029181 751702108 885975498 666927964 766135989 7042410 986429799 717125610 807851866 32528025 818529524 226803646 889271679 667567293 762934565 815613305 939366110 113927649 148493175 889157180 975898226 821300020 821531744 251105264 701010954 374157396 442957910 475134579 858269153 895009040 907374842 276884279 596665965 62863738 220025801 101284854 752794867 463123447 916538209 362356333 578769102 831492807 869241732 54906959 445059860 724675136 841948347 157293067 624232628 57572124 877984269 316149181 488784896 628698809 931953671 377868687 864839531 549873154 924443648 996656037 996789117 57727534 778216748 567321308 829403938 916385086 986026914 562979218 912674900 731363917 905904372 782722763 871860187 905271115 950012039 362647034 782900043 312761019 455518318 310243307 679775524 385286009 676635385 190108851 430100108 177550938 759875577 848933128 984483930 349126631 628670815 876368695 953010763 402485599 937300028 215687659 692260923 556459041 766750867 237401859 435984615 69402529 998826550 832858035 875062495 770177158 868690949 317784825 807385453 300322807 589933740 296158126 629582320 895823450 998679208 150265047 764921684 57798986 991440448 145307602 500835364 286702341 788383584 224132192 545969145 935925523 979678686 863887262 938140462 555324813 971126058 889608716 945503234 743361387 857266059 553959717 749066035 680148645 807427533 581038075 915654996 660886720 717757259 649233618 676329403 98743093 539136166 156460473 955000406 671065260 804160286 510289089 955797152 689314619 911362063 599790148 772330802 662112941 821194086 37916146 755579172 456951973 483618626 803907140 961285177 302036627 755824750 61151840 596847309 769905573 814258839 227124554 236334796 404790528 853344873 702905357 730919542 645788968 706842792 196983984 724095854 62852659 339059528 96131871 717603657 599503468 763043648 798458787 865585762 768233575 964340899 9335251 71122422 269914279 701687071 881699234 910683274 144612776 441360927 6148892 775442539 973628842 977113076 721016601 791405809 500411789 679225923 953195604 968739100 973863346 985782721 622179640 738947672 919926773 958954879 968819297 992849815 211365121 871955852 791214274 839215751 855594227 872291885 823761528 925130373 240345538 432155697 331298120 732772798 566167535 911566696 803896992 807804593 774741159 989446967 925643903 951610382 342335494 392657214 144217500 178239025 568428757 699045274 189419153 196479777 696637099 833635170 273009035 699757582 158769951 384075875 667921003 897386472 804243505 905675673 446232036 972213264 302771307 782158939 268446244 528268459 468157170 972441936 34579061 481752011 919559224 981224924 492917932 637125455 802786649 986603072 714772929 780625408 872673587 905258786 782999221 891661725 119223341 656220104 246052714 837956769 378107896 742487411 772912390 996627498 856352946 877508637 857491804 916747390 498411505 817743335 456621584 686942148 794751757 845160751 93193208 964299395 65567597 658555922 674882138 722990559 956605769 985205560 858779994 899755905 95649213 481385525 299707406 558106308 908152675 935367068 566994085 578466471 160171365 396265148 208125714 646338639 697761879 999884200 809759044 895751906 687047537 756813479 982998160 994662024 530640222 922281145 710095000 834000646 446114864 486873132 406983575 989149097 296578887 521672266 917430654 972611391 850371705 899349623 522237219 894623428 210176856 925528178 563005026 748815801 39205213 146959981 370791954 571721491 102354761 903661490 293007881 501184196 523911592 824588106 140311447 636183134 986137585 991298769 295437224 468877498 863013359 887958779 830043634 833478262 242111412 554421860 925153446 982216671 957412508 959188126 623294077 853913277 142307335 912716122 32022937 149484400 378014104 670445738 443268968 776465650 519978756 853380740 978691219 992223450 149054430 480015205 524472792 985575635 375709992 807410839 385228128 651551864 513221056 984873371 734593530 834312777 577505738 868764780 930918053 953508851 927374377 991026702 587422974 706085711 15271124 529423782 437977357 742367602 873527114 935486385 867071374 897676517 80332783 195649711 8176487 989117728 83861195 849632271 951300250 985571184 257642021 876233059 61840323 378825410 583199382 785322526 725407760 874682196 290557140 656229201 315791615 318718995 429325005 595607925 30956398 863931180 215060144 237721801 325817476 626792233 359695178 913295510 788255645 827716691 853970387 949699857 820594736 843507292 302789349 453293385 158728947 704138690 947430310 958482234 860212781 915767618 51407736 283790712 106417052 723384385 37518832 497420764 135245982 283977994 799497749 888671422 916521533 998295235 714635726 995268248 523520472 567156670 530370689 575030123 845939751 948175558 718314304 880049245 61248138 700310411 937183651 940488063 923078044 944895735 212608547 955843710 90692606 862617751 574991163 875171631 895825674 911989004 637095947 962371379 304383285 465513693 739503592 749554634 218122754 353108996 624561849 979608490 490367230 680429124 758510178 837526318 191388946 361988299 802502976 936403454 636336343 989909594 334173474 573117752 838022148 949309835 233898065 569814564 164212941 532758874 221672434 552878673 575193921 685309447 163270755 467978983 208763231 805538230 272572498 460104751 329565317 599976406 915737787 938795606 257882912 662641046 751259711 765537368 498349093 947181381 775111394 805084032 527652861 575791743 855086810 970567922 754110646 837786435 662000485 701083801 921067354 921650367 458618990 858568882 693046100 704506389 986790706 988748998 619855188 782472686 340350269 391609308 383036091 765900624 909997259 982864640 533512917 991159920 874804739 926477625 435256373 755683444 562083189 741057416 528058339 646718991 593532971 797908806 382833768 929475805 21668456 355185176 952583949 954946704 462764223 971207881 815978087 854364977 773396170 799212723 106683366 593888833 114858028 347738584 940195782 958583407 967091158 968862949 669857882 700381307 340142432 407852987 637928888 985673026 268747343 340430722 181945776 248015906 547250596 569136535 607610784 800430881 916056934 996292767 788706278 957183434 212961799 817382272 953282081 958431372 571908450 823773989 479731306 587118272 621072307 981910169 530779967 901269120 865593770 977926970 220592082 604003188 272825496 716838578 832053814 953078875 340080332 451940701 61685821 861823469 389172556 870071637 747406277 875055050 425024520 513597988 767926622 915166041 372871534 542296383 23251471 345047773 908200072 996022419 827839329 834800011 666994076 933418689 114385690 208732972 489807657 650083511 274099694 392180108 667556110 938236510 468501480 541042526 244358106 858484500 385916669 689510659 82893955 340840581 306883580 817426771 449478134 728622926 919936128 985291654 621088417 781950369 934390679 957328664 332048375 907187905 620426718 877643473 973717377 979269203 76755046 385282262 868984103 978546177 622247004 997240084 147758699 594848845 897054783 953431354 202326010 209226439 241140012 655745120 750335684 904954661 368132823 791397618 384532152 914061643 230322757 236249162 315710974 422780585 363012395 541079725 681212595 826654114 817698893 854321413 141298175 453084668 798887703 849107923 505483811 953085189 595386864 636872903 109322765 928530132 127546476 594916525 315623576 576813748 745088453 865354249 681716720 797534644 372575910 535838289 343360305 920150576 188801983 308641505 428661467 999760271 474596383 734540524 208041226 743425742 564475770 598418335 104442673 371097541 592884707 813457218 315331140 624852484 229945978 991426979 802561504 996200868 323696239 717359327 419974920 654346857 74176732 493878142 890886575 957496510 321351407 409730619 333480556 861778694 854437099 968411707 110860737 338473787 862927215 881359352 310475349 602559856 948320353 959993369 423855103 686134562 40794270 505805031 970217084 989252676 121414512 813700613 263166198 736198762 775439317 915334517 835452550 976587006 309500483 985457205 832380185 834873105 536348733 667959967 816543744 977329105 788836695 820111071 86557510 686493060 532375387 553902511 294656677 856410552 438801257 646348923 829945607 960573593 918578545 990614641 469557033 491569193 176600756 964848788 470819832 960208275 731379453 774507001 750233486 977494256 232791531 241861779 60324825 633877390 144457372 415303376 893774911 935825759 619715169 877110716 213731255 564628497 708396828 716497543 353909855 527886224 106935166 279902476 47979638 505097651 299030921 933383019 504818489 602853432 701597856 956481677 967001485 982710050 960262497 968250312 611549178 678390704 373823561 660638288 30154949 682045865 48186500 738259239 288930696 578329331 979468649 999609693 377692361 418595084 367802268 882443463 102996486 298695614 972413925 982486523 572596499 680099364 385360644 936622702 149097399 892939964 632524782 772373562 168121241 457213136 332259537 975720326 869021625 985178318 685847771 881778396 763834741 898626926 801868923 936229683 405533386 813667466 963252437 994811042 63945353 192440834 554068055 775518229 124772349 743338097 459871820 950045603 220807254 523626363 837893374 903177590 489144356 862690419 256228743 755866077 114752088 396472144 900795679 922818741 737546201 900207108 890193447 983393943 519859881 809651241 436693322 633570993 597601402 686801699 769566758 837784996 842790287 903840569 660278707 792896116 802396036 943112641 211077797 285204695 639490313 770425167 789391636 987463553 279005405 563100968 657500301 825175589 68667154 452398854 321062581 398735485 164482268 916740447 833406663 840875523 141416499 469334894 437117442 793526728 18730063 461148432 126803731 304691682 253083510 693371346 693233241 711672668 292910502 309016462 104296146 946717207 625843728 831930671 559357078 573668286 251310917 955241595 888031813 977514641 230400145 693795712 554536737 705147476 46458923 263902037 904242456 987312154 289025436 710607555 505592664 992996461 288500093 537707433 835258759 855800998 651050600 982051670 978322001 996400861 158037922 904360152 50359137 335282993 655327332 952504000 355641953 610764365 961759559 980012814 712983817 905187421 403782853 756345837 110620717 155281277 195768618 648463521 333125354 958002957 510500137 833664917 372228530 475087101 60441851 831127735 491135971 782847003 253910273 420603405 294753660 737751046 756838334 920356447 451754150 548443769 548460398 701653419 290051295 738015709 251929090 661129652 543718441 729139928 379999045 850119952 36627068 411992044 350093571 350311572 660206569 671336827 725170885 951966861 615522356 817797751 558608118 593037540 156445643 629376198 112598691 417818173 498941659 868691941 597568650 870144238 685676474 946348654 73879882 191726312 96696170 343465446 986732834 990356495 517472037 647508694 256030003 771666706 706228707 950208251 899512676 948296834 55036106 506602640 764615324 820348517 26688714 936232965 824068213 836873041 158347078 174289786 96640550 926436184 471111018 707521733 443550053 985441330 360933638 481435187 297636939 388616910 771370350 808906658 494698621 907172906 967945161 999575545 371332678 471113218 327357234 620047049 778042534 832261204 405973221 860150924 174671687 275034828 623477407 632450061 158087159 376831561 683188036 936195620 820851400 924546415 133648158 379815367 743766418 930010939 956136868 979688726 82178910 140143865 377990136 472503678 928098736 982654437 492197076 870340441 386544137 929388046 348731559 667943063 263710627 621876770 817325625 965948683 235295912 858441494 980946096 984961334 698797296 895356539 73929924 85354487 819258169 938959377 287826488 936703305 580355685 871164090 109658442 626331420 338501771 375707184 115358879 411207942 118422109 830504763 540546662 928407381 634513169 765536030 356601309 570369501 936116325 977141435 754145436 800261560 216258414 445775375 4418008 936192070 638493555 990574011 805215110 853430696 843372459 918176500 71668022 409882310 823708896 873333342 865973064 936885914 691713552 767882405 22028968 631723717 954032658 966597608 639120222 824996856 876917288 994210405 356209724 724119757 22772719 584336288 726526752 801113061 760105241 979928824 682400915 959812047 274881066 449120651 57905153 789194435 635245364 663397138 800642583 866616603 666607480 974494783 841625375 962229584 793157521 943048144 830505918 882759563 854444001 932554042 234494581 627326554 88494150 538145533 108025846 877653376 878732241 933792152 501819806 991558243 719787829 923230690 632898860 633241710 466622571 916500827 695590603 879868363 629105945 894364907 495827850 519072282 741674937 756828904 645221299 804720759 375629672 576727756 6112663 52749357 446156780 504598763 194766867 938645411 657097460 907514596 211782340 621307699 896601710 985498711 869730351 947622475 496974232 551525628 749099748 761356153 838543266 873573513 513362373 572525831 572234961 811697377 13921571 914543693 5573657 124227550 801866981 928981066 706825943 975568518 617285680 686348747 366531838 567508295 874030039 980711958 583096661 774286562 269346393 875861430 658816884 911099967 469337223 847981772 786807869 989658313 976957217 978952115 196850690 310885945 935992457 956921231 201200920 898605316 696975624 761740614 305003463 847237674 61033336 217292661 721065431 894852384 370636536 468370340 187002623 251152802 19806788 244446338 468069771 611575011 527285731 962282467 233619949 781506273 225618069 824918149 481940081 555719571 278359201 825757076 869052906 935202692 462472345 490801889 75937995 207139048 413699262 826604353 912681847 956541250 477985123 938487343 804928165 831912500 254403903 856313470 288479471 652167642 25651134 518594455 910240981 956129024 924377985 930581121 865775187 943976778 744658408 748402331 14712794 365431145 778441180 970883199 819907990 832575490 264891186 770404558 492284284 884100339 819737443 871232432 72513039 270289330 340039880 391547192 478512038 749950037 886263954 886469770 692025650 913770345 558873497 758063588 934336649 981523323 673928009 772441151 328638429 926750768 882849799 970295897 921141764 998439757 700358190 986851917 563878249 814983046 728113921 929158837 383865792 467351704 615234440 922693101 5005585 342368035 964624662 993130209 526368840 845048244 470987071 933409425 703350658 798310995 837791750 980633744 655950604 845731590 192295122 209104362 957979290 965048962 657161203 743150636 457452312 867775390 472590999 750695655 665542281 746998147 925511351 992564599 154781316 254907758 931031312 937946730 510386351 857641444 513469705 651616629 152044654 982922958 222217294 393187137 993035126 997464439 860576630 922615742 218063486 425398774 132778085 357730269 609189711 834852927 684477837 879325913 452717187 957466432 544064140 892869209 347518349 952642246 407722318 913720959 710487070 817769177 572775526 803106455 229710998 758787010 797295235 948491270 900163564 969311817 319727117 821544700 661509077 688707996 540984737 788460370 305498129 862710316 833746245 945786849 883696903 990556854 512340661 610324576 712835730 884527995 593610094 834726070 649330523 725223915 345145708 793708866 563850933 627179348 223297544 955639089 629892914 647361123 870995849 884809008 70962280 868096573 403384269 507219158 150057871 210720497 865760484 899842337 145460287 542922778 206704031 842768496 189391975 507289251 330349268 609337821 107456469 836606366 934522710 959078099 856379951 985248040 216270017 319507465 816431114 971426906 313203197 858632009 860386935 883367926 97998868 551207294 782642046 886934316 466593458 545500293 767962735 799968420 359494899 930645202 5901831 94593931 742028241 980293644 177225797 273645882 903461279 998238229 611968474 851624730 7899941 308380565 401344476 738777004 525249223 572823425 138146362 582298474 441105070 800046798 522033950 572052221 304074575 563667514 951066512 981380503 200324022 568498165 729898225 889290805 657677779 896426517 853450537 907964156 641727071 648787874 283390949 798526354 381257671 855207343 689498565 867696834 519916635 708985827 31921832 980755581 926585032 979413298 927626063 971449445 534899016 773995862 56760849 708997408 806963952 952561167 619193390 857006013 451332849 573816816 701205888 703738510 442751787 463411989 203177680 395038444 815967250 879814788 324895538 425292304 926409717 938410725 194730147 988322662 728826976 976568270 126721392 189260505 962254663 989630578 299335949 871543800 143359614 657520051 832232054 957225372 865935724 959963740 959390612 969757310 362378494 695354917 877864137 959522814 429403636 702026504 379046999 535654406 797441563 995804004 417089371 502580789 559231488 869748285 951650661 961602179 464809130 778635077 276053389 706319225 30716780 998626838 353143669 495851219 815745924 928139684 554028083 814433416 646681940 801253596 432410754 644504929 286055089 396127376 61150802 530713167 609597007 642294216 623715763 668875179 820489035 942477036 356139224 518165224 712116434 937251940 138363872 149884356 299685438 643311093 105683480 970075656 397348910 672933319 751962948 847762218 558216765 771198377 427042200 783253605 880037539 969115571 975466565 982047335 571554284 770298221 613723423 623833147 735704716 787398256 441386694 475152488 230274390 987273516 534699985 791259351 259623661 384621409 493637850 586252763 941795077 947077856 791638099 921619368 472465423 678646094 98434504 380276110 861067288 863643085 369405451 748273398 732204734 975288854 532563619 696006213 472553444 897688573 187590647 274904233 608495925 640161471 896489436 950904748 464540748 531559583 40381905 907807317 750210458 954641033 323719390 749203279 823462235 843014145 672195754 949946556 839491733 952619363 460078544 840884523 593546589 975572288 465624770 916196980 485673934 954814917 739040100 831144728 831790166 974055333 360234335 583827291 152905102 659417636 396106265 699477037 244008340 258945279 519828084 766402287 197219465 541775739 665068898 851659269 135340181 567656427 945956373 954991754 810916717 964570617 925887648 982192325 402229016 990607310 887382699 936494149 390508559 745221600 190460973 791639653 166387003 589213662 824751102 859677071 390955223 742445952 554873272 734088673 654961173 711658691 862926721 874037813 528624500 561637846 696503509 813773186 566381798 679460298 154009542 324657460 335266422 969792511 989148255 999184139 853383292 902811649 625513590 852727099 556299013 984940719 169408523 900511645 870891573 918491935 459344809 473814959 836430329 933735540 317723943 935735007 804140451 852592687 72265530 530776538 948440249 960025117 281443670 632468705 522944277 907437165 668308200 982554499 31539423 597995921 244694315 738260883 868753328 965450015 169898265 633877403 890308117 993013023 736072408 964930059 849510449 999251116 769149447 870423093 864166766 931991131 424286218 512373068 888757908 950767270 937967472 945291917 424934029 585608185 350002668 654002794 211446186 365709075 804485765 926699076 823701146 895440024 337056665 824238162 979803706 986937368 880303495 963174538 571908617 652888813 985229055 992628170 391449955 572420815 387980834 959369442 607515519 979538089 946844609 960431012 1715559 29887094 303087783 395206805 735862512 876771973 952492142 982413827 108483313 822403508 772419532 778025324 617668388 955732432 403506123 757676576 178599437 289263866 450627360 781665838 79060909 175428491 344531853 650179259 659401421 713604513 700316635 951654438 504608885 856631563 906516738 976965771 972339686 989240505 829584209 978463046 154372661 667802736 825122472 848811773 487165735 966426998 444803479 868645915 694181782 730550567 310575717 445945935 245090905 305783611 716910461 880244717 181960110 584830695 922005527 923070288 243603235 874660942 135744874 627612605 604419838 943910909 790685580 804248995 699233494 911431797 262271170 628172070 633507693 681399480 118024052 468423111 156037422 403819122 42347465 57317007 381441093 608638705 331516103 821177427 484572287 996161298 553751165 887372221 274038718 497503670 38022140 704409775 62795278 859441144 160676142 712090229 399964995 945524644 682725725 924052481 189976915 229311264 952898838 985409406 133114035 760938175 578327955 583832181 469605113 740127117 675651853 837990936 772219345 898739338 36130430 889558188 227699274 898241002 55544285 376107125 722638250 980123815 11238511 644452406 871185167 901170674 116147370 623865591 640899589 942580682 798226350 806510966 407680444 661137811 763733461 806438821 166431547 769057654 134292203 860252591 974337101 988973238 6646922 506748485 201272724 812643356 214149846 242709571 941276004 992401182 623183676 935133729 344490993 419470928 67932881 549662100 196888930 953787235 328055257 463305928 293241952 927780198 213718045 457091454 121828477 551203076 233735924 919633718 331106556 460741336 928768941 996492693 833486002 880882388 38321918 753634398 334709265 691368745 809669720 968643386 114272458 670739013 536359363 683290160 634043471 844380177 193210431 429510934 191592878 941342099 286918820 481597795 988593020 997759039 877940894 907181298 66171888 451733256 784850380 943387182 329768137 655704706 615466839 913569313 886527667 925255842 877492905 925188192 192123377 486036199 884711415 899902983 277577600 914395259 397575542 551062447 657861479 945947386 766147165 972516861 686523125 823407706 438912017 995645502 675839207 720921472 124959061 329009788 517469100 714520559 320382157 950290795 52357436 902968981 536415486 934451266 724991453 913008714 871583498 935469046 141161313 939773370 905284629 987851320 607557617 733260273 993527683 999587937 826095358 908822513 165118704 213163847 430843484 668707860 255040500 558556800 122945370 664038949 408160798 834462420 542597965 646963583 637538687 806661725 93953675 581862791 205891130 870021501 514039275 642522757 183111998 731782460 207650134 325179360 144617841 610189093 9613675 157416394 91161417 393380566 874603817 935461209 249239557 491932065 500110328 943691915 207302797 568084192 380587964 470243797 101818379 904561226 257172826 555717876 756274185 863013269 899728441 967564842 707492033 746716228 290942332 526345035 797016686 822193328 390519811 682762105 97208298 981005718 695858951 822425518 665918090 809056039 50432931 215941352 486546565 496283706 487495703 586597349 256281508 598704518 921904404 990894915 39192417 291100278 155950912 332214377 8739919 123751846 841855725 856140716 286883156 635454068 789724940 863079705 239792601 441974006 340499646 796357744 548058127 725132306 797545252 874697372 699809727 790324347 452876866 650103542 733948046 760889750 100319088 904447027 379519111 809859012 660384185 966711948 330241554 482403257 213659174 998051765 130749690 522592580 347875246 440643142 428625152 954865975 228549657 887230843 491092601 795414959 139362180 806211344 993317404 996547684 237100755 988111387 794424451 984837413 256924416 724577141 55978064 887815622 524167674 915520966 132688428 289928019 558749953 899145977 652974249 751551036 443802946 751541716 17509398 814394900 534444002 963385373 189208426 220748662 533842588 743693937 286804377 466769104 886710573 973705787 635754854 818499907 402911367 835379037 257187988 952278004 137621027 567585066 904566505 946746201 90633964 646351572 226524058 986388041 500901401 985981808 505642226 850672097 684594872 804843825 618943833 893397850 514213799 731487586 210938401 965212449 206490331 325863296 483877309 806966588 674299289 965349927 635513976 912469417 807629995 842398810 758916 197440424 811015733 899080886 95994915 249116594 198937109 680444184 59682492 63302383 310443718 803369905 636008869 693167261 823503857 955595107 235697209 527631818 52456900 373744185 713359945 896095572 428828667 900359474 775620367 946875581 113008805 578915492 331156228 534955640 435882820 553402692 589649266 986353634 258847201 425792985 974261567 988508256 525939825 663900486 136305647 330620919 333468673 819312536 142577707 152201811 625687552 734939003 311908501 459874176 992741622 994326054 938191094 976596900 151917038 775486533 773982879 935278978 823004913 919367426 619556905 640988480 906196585 915001313 523895966 772465804 845707272 987769472 225425769 384896641 505437112 855517532 550049908 999077756 7814539 165501833 278911946 731196987 667663247 689774816 760447834 945678338 549636514 625519937 521675104 951985167 567738942 593781357 906675991 951052630 673697019 799433670 15620919 326524124 577831537 633158654 602963593 844603809 862692202 894000363 888155152 946705692 129526195 932017739 507263455 531153827 735420336 778294332 19462499 89121437 591647454 960620764 933224700 956512089 699110042 808401089 335443770 488610046 605607052 660704003 832381764 841470537 645337578 823285494 278860153 585358271 379269273 999091459 341681404 344926216 784051893 932342749 997301275 998191832 385800112 710621792 728594569 858524747 352888930 933058731 541093491 710026812 594734169 969772070 255221399 382782110 835698110 984666072 598332650 654550612 464638460 643055271 932280671 947254721 451644186 662549571 392286079 554908477 294739959 428452071 65315285 531744467 819948783 856492907 566355061 836131906 294369402 387896746 934610653 948696403 83959671 596212167 117802866 930939883 85952766 540588786 738272232 838022968 2121887 927360050 235445346 822209349 27890384 829946409 317452086 755700220 331866940 809270551 380814701 628933781 922597034 957660504 324330998 551639635 126580706 287759606 734416914 801596673 540169621 785476660 258087880 637444645 198177925 459225954 344067243 918923957 981023700 993627675 775215745 840529749 552014396 978044458 993052697 996400247 154981915 490488121 867233137 961369682 478482265 701813660 491102336 567959254 514199188 561369062 173297739 724164925 530812669 659717085 3425708 530817287 943633026 953547155 907266358 929320138 818710888 837182010 369742382 408397098 581643200 930199730 279017478 688341415 254827215 306453199 159716404 360449889 674699495 997313649 407195134 736489934 830800920 921512072 549935636 934489619 33643742 267535685 31772276 331447658 585658578 713089890 230608391 474246033 19191959 563185595 820302047 875430057 383389149 657493990 212448766 989115983 135407083 583672248 968803542 982114360 233378360 305083681 952900671 955114228 703092696 755751452 830467498 955634700 637305729 786853807 671504821 883601894 698105404 779107632 198275840 216939158 223350630 232837296 945490132 980878339 711579632 846568674 248263180 448946795 831229283 974867176 418171450 964253497 136652954 699233340 37760348 246229586 464616522 784709467 562732705 733481455 163117347 723918283 317595577 598957109 544374366 618891611 660148524 802272851 526200357 745908061 100990183 748621960 246686885 847103610 523221776 701381012 748080800 865279207 662677199 715897873 171242038 511985091 639666463 702985454 835147525 861037522 742065266 985570222 268241028 334997398 647840224 897431389 320316860 556357824 105083533 450891010 684297531 774512378 239533471 542780768 77048498 560244438 22696765 624046950 985786874 989133437 494916077 722052732 594336385 922383185 166778429 830550633 510834591 680659014 143080567 729982315 145138602 294117487 533074252 771563165 537200672 820486436 260701211 526316990 155149793 726518029 994075707 998235909 215245092 659621843 699028243 765997769 21892719 927084403 651022371 817320647 514748660 854763203 666876127 705676180 20003242 552035351 675610651 941660906 897604321 988284796 174789721 613606844 978885115 984651911 61231266 632209753 589145743 997928159 141963002 462556550 875674150 967460352 555012274 825331185 273147512 604480153 854949115 902552285 306536932 879407711 327968829 781871507 19094117 669096809 411787253 521720149 551222122 551395115 38091627 386684005 201777193 599022634 682938785 752569241 101729120 914390831 316780813 757820569 864448077 918284996 620007715 936432586 734723112 967618500 326655595 580853706 951762758 956578946 558710445 925535752 878573993 981027155 635005176 689366728 149172608 323920796 235827057 758865197 724812808 761740691 872523427 993569745 640268497 759227723 684711389 753265896 673615367 943695258 673990977 997296419 187763650 740175994 754257872 986819919 612367789 723019032 717716071 832604000 494926786 678274630 342509270 379062988 13758465 380015738 63836325 964789738 495608874 586313821 875266075 992591140 589975381 960514044 333376492 637513458 371187316 714623044 652249130 898552074 370379526 858251682 284568576 989410375 762817301 874513807 309050589 810864072 291780845 859600646 516180645 730671333 568628369 781141809 116582651 786918004 254449585 537695520 929219848 993573987 453614957 591536960 182416316 194944192 627579715 800959372 125220593 667902419 631143158 637475401 784081175 940656761 444483843 631101691 870785815 999550847 110072236 568642289 345641532 547587675 702537182 948077371 701058330 727401030 720073797 889684970 838116563 908819888 590341568 849149040 660055406 732676058 674253744 973140331 474422246 716979745 626337954 987782527 681860726 723268689 984659729 988162356 278060696 303376230 645515566 879171892 417636651 745481823 604451024 820248462 764191467 863834121 821709010 953635590 67361479 148385132 439813022 590932164 288326483 625585690 151619405 955889334 605742196 686097806 307157667 450536871 193216469 202038111 380805718 410075054 551620215 787121138 566791650 631849799 194022 283486724 971352735 984621305 37257232 701139088 698470644 782165447 230631830 978075741 326151848 432504907 418899321 719828420 133176519 290892462 571073307 809610495 630887058 920640724 118469031 275973742 547097510 771741033 822801843 901080776 958753490 987841010 454472942 572747932 671715673 735464368 169578779 406982706 880793592 975995203 277332402 327505433 965353152 985960471 633060927 701776537 905978820 999135099 910297286 946674153 278303054 833584687 506066548 559629473 97164893 803089808 900923956 906305753 248567157 703217443 979470122 990213935 900291667 910729344 750525844 758783854 78249866 964108094 433557365 489986607 402665567 761802454 885109846 924669455 386445229 719223892 562070756 956342895 930648797 985000867 441543421 793868654 630848293 805899665 460136903 661338868 313105645 787789689 871141500 895388210 577475237 760461652 694874794 846979273 262408632 394848920 102547744 109058990 826555753 894608777 471989633 766493356 980497893 988767758 336987564 676128502 142147373 853957136 868395625 920421508 112322931 142536321 485489807 888747586 875588593 992876333 62237418 204678153 101253817 480120847 449085416 742235029 283606022 782718949 85776296 419916236 909689560 937990191 721775852 973815424 953937261 960604322 384199015 452575694 110408870 423349160 79814649 88539649 236035014 760215913 508840453 803661733 84659460 624355616 459112288 493775567 248887772 973404622 102596301 150529821 62692595 800916855 294760239 504341759 838585605 876815440 85373947 130172669 988516343 995916116 297009849 529154605 751989916 950445426 373472029 739404452 489326241 617002086 896410960 942451230 93558704 334236099 838262439 921089210 376078554 509330326 259083230 819444092 211691063 845190138 728630228 903546996 624752401 987141210 742739506 758065761 853531785 916058697 184742830 248939178 79165494 808861289 771811993 889288034 259326893 679940754 86934348 341491519 393684075 773471445 187978144 416782976 820454866 822261240 202077830 750061135 221012312 956857323 701268307 877245800 872788891 924750103 156014850 440234729 728295298 977585437 537732450 754036460 48050905 735728472 940487193 967957558 902669575 949277132 238760755 678865478 78018485 308227654 547454366 692186463 90923138 979636395 663286954 889365301 180707750 684048622 304048621 423265463 620114161 690953470 917650040 935409800 176625497 277502915 458668603 793485193 864749938 999314519 286155900 898291248 800850290 961236228 896686302 935102766 309668937 453089628 405446896 926200643 466715970 966781490 865215295 943168433 268585727 954900217 132323655 961282387 261356277 578330328 337384432 889248714 701351944 917544858 6061930 583681347 272267715 509426938 861436545 965587430 161804056 819158470 668018580 960183129 394041232 940854806 704557857 830396645 987738086 996910629 199372753 824413050 151743605 639347833 38313295 865986244 754172631 887245126 940310567 953314509 514823325 519054124 858303333 897092008 829913488 894036846 532475607 882883789 58592086 393265736 781282417 957087650 990296995 994253816 864110257 914275421 55904020 645225497 458598775 545145890 462178720 571101701 32625800 38436957 604118192 906683079 761806016 989945370 101185888 157165921 819245576 884509509 25305818 417185777 701027998 722178078 206289613 848904058 355705668 513870630 206822912 754829006 682599493 937663522 516846166 614787254 107466457 476884909 988745321 994967546 165500454 906582874 588688819 755363615 249358075 781130981 288751538 331674215 454360648 768852493 497716772 736889454 913864318 948080487 588537152 621240479 530175250 551597588 152484814 671796346 116805962 667578989 514979016 814649493 117397628 295800031 749015810 819443411 536164441 717601218 751489815 834009158 699616959 957925250 658366462 833355452 417412269 432601186 715198009 966381298 348403442 544858334 209758302 326579328 869253807 922436160 281976050 969261914 371977703 459255081 98803705 557187927 713648017 831745684 119049441 951632772 909838125 982248405 343853747 930514014 252378090 729972479 19874259 430177694 830946648 911753485 622349563 835100834 724271301 970459464 211406322 278633547 511666418 826121579 375887915 582914903 814057064 897758134 194375971 522440748 647459295 918097438 350991418 848630671 415194452 651907140 685677099 963075047 966141483 968755106 15661339 429178321 128488498 306793376 95441179 927659436 855452110 935976628 433347753 700923643 981890488 990596774 468763181 863096380 345339754 600004591 2502483 539034323 738850998 741316525 562258444 809485802 299579416 625167277 830456141 870216946 878669714 900725493 412022749 845402251 884261129 887473485 709393550 973590204 281372548 481566516 383317592 611839582 166070504 385399704 850449019 883473398 988029517 990793880 830854359 889389833 137996282 357524511 140680233 422542424 321875434 625448773 625643271 712857241 261510605 520372412 421826680 751758674 219336231 681810825 442466821 890463383 964107624 984546333 25812428 110845882 505318896 653068590 901725733 981434232 166421096 302708936 593536381 883305874 609747797 763401272 758883852 983000052 998611206 998730129 863634724 966543258 989310447 994194907 636024167 660025795 209957636 739330579 618404503 957282828 707983980 911955388 469797478 921200720 222775259 228997774 349615457 883429690 612941651 727657593 328533079 572237326 73173620 284263433 135245561 330825958 805962592 832855893 584082944 639365810 72237816 874552577 968905936 977992131 551376234 933651359 528814627 810405672 423431279 895537386 331895042 470118635 533655964 837844997 421934476 441628483 832770550 867796321 602303711 985937803 260140138 440167495 880994249 919527064 852226449 978186673 558069052 741297376 539701834 644595506 288762346 841140484 512434922 691197080 227021753 948101530 596406185 626112758 491091350 674193421 836522735 979184774 963200647 972301988 882433646 972072885 674493590 731211191 613836665 881652090 98913790 639261418 339888468 478738213 202982702 994478714 153331124 573038180 808279536 825939055 225497553 270629268 921819471 932873910 108288708 917848250 611852536 985239236 545714130 667193801 28615151 746567545 337823847 435386257 251739367 638318291 244599976 839246665 488212100 820263794 149687174 513095245 722254529 846804033 631962451 692954022 379429023 911866233 221215467 342409340 52090846 152473436 182623161 852737121 112970576 477659231 525743898 890380100 644798019 747702499 592996148 846265116 357459839 933202175 775659789 955590218 145088100 567341585 29561577 889201340 215465070 616514045 127650754 519735673 711009088 776408244 258231696 799740775 482112976 932907828 850802385 896430829 839164326 853952033 121320016 469038279 816693830 916618812 134662781 589955475 272882029 305945349 961239952 993295660 391810341 982731872 563322996 820151084 743265370 903277152 871701996 910118767 308484807 870845509 502345697 689445202 330486701 615070424 571872787 915835194 267380120 945956638 818301785 952423323 966384581 988914043 392472954 774001716 918047893 932599270 848950615 869106387 181933910 442136939 822322886 975393988 813450434 859794513 375821442 703198046 204368489 259269525 770590284 910343932 937251100 989603028 14524174 43610221 525591175 733950885 426021382 899103247 2680820 166801394 817375038 822463151 986058346 993253377 195582150 641533473 570266922 587395890 598303847 883222974 309561023 706567015 814938360 901493735 252311788 732693986 755335761 876095406 412554594 522460738 797956663 984072603 480828704 572618043 769990043 880880769 211030656 882873946 598923974 796871919 502188075 648308177 376135284 751046124 638790319 891689228 797274539 926586372 966887981 975483526 860392195 943345160 679438528 897398438 82268927 752129797 950823484 974084591 970354424 994152805 87682691 995203953 597922092 754674121 661373601 961315220 429200014 657536343 332947718 540034219 911243776 917143393 3859637 758845536 263252135 559698002 626653167 870181352 494443779 818599156 385366295 946911383 551291799 808075470 306982432 585518081 734909081 913839421 607510639 618615123 867465226 999299993 360066922 680172921 704548208 913221127 604338595 725093412 219009742 489805709 435122954 523868481 641394570 725242031 411155101 719090179 141667218 775739254 361581366 853759753 75838006 784346752 636569406 974006407 857626007 997446929 234124418 982468798 964171165 998453571 335310131 975511127 31804576 57741051 816337343 921351609 360954130 378594270 608399301 805195046 213888442 540449672 276775449 403070914 854679126 892016298 268225865 942418474 969748819 975911459 559126155 822539827 651900431 865063353 789596988 982868343 186666383 499636741 278124499 755807701 682238719 909863070 250981243 880168394 154480978 749349087 235686425 544479999 125340689 573600025 830570632 991853418 777500692 974269622 13296395 474540082 774898735 782558829 860380278 865414023 888941381 892032937 845850626 990721126 675455094 956935130 753462641 984770632 661196732 717186377 411399247 864718857 813755398 917453983 557400211 939271557 393325540 589595939 757517952 863211913 224435636 336118970 384766819 402280015 515437049 543970112 556781737 883634369 129522347 749435721 329210018 513880815 420506208 690548142 390004448 651531779 916691160 944991014 366466976 921472694 400347075 857087035 903974087 980588752 798287360 806532130 150111561 456867824 920535046 994212945 164449096 824108000 568182334 703630130 617179940 623823305 553892579 561298097 825898031 911746007 418994356 656374208 608130049 923357581 226328441 456661786 648098349 649154149 838291409 859024114 515920937 553233861 256085938 367802408 489557977 508770062 409383096 513665464 451108871 538298468 150719934 659116477 266364138 783362320 435774743 936273064 76347124 207808830 232076563 709222824 850652470 951334602 741152048 826393672 46091627 470626854 758804672 806978627 903859329 968697447 182474714 334127655 87906130 944351873 385141343 730891765 840710391 973255086 407619351 807009864 926074028 929635937 782786889 914014626 561594937 944756308 374119608 530580551 480892667 680165124 955881888 979159591 657003267 836164108 319946999 846871305 698750660 912790447 312589764 569112496 5911661 451484228 168873383 393835314 803656751 851523638 552953326 908300594 709369262 945685204 486930775 949856354 832258700 920474455 361829652 461014908 977972343 994093018 321692127 328472007 23355640 239212726 556857521 891719716 646292173 953832279 514938772 689813496 547320678 575166002 32533208 533097732 995211652 998174198 645535055 792563618 988323330 995535362 291867499 893556400 184030389 555347372 658640753 821912579 254725412 529251612 606844149 757481067 360771442 379343699 404183411 645524149 732561186 898027776 280557214 317082687 943951520 944287817 189107902 942887609 605821343 829742167 830989642 855345208 845005394 978154231 112418229 680367984 874998841 876975947 506416447 762281712 790743100 860292684 15888208 103423534 881797592 996895126 119554238 536451923 524003961 949565887 566968162 877838083 964325491 975667288 218929276 297841954 27438976 411616502 31341375 972552095 193796791 871656632 649858776 840253955 703466644 810318025 298658463 608923395 443039108 965539750 970020148 974032535 222449824 983346555 792410701 797106908 781256115 836719724 965578844 983473045 285921479 965481672 305249138 310119066 750874085 971865256 6750546 608147726 424974955 776674138 600764503 868445395 17256065 151849497 198058772 610762128 699883330 926912299 581973567 746084119 933401083 980516627 250067308 705913185 664067565 724645480 916196917 959117464 751130730 904502806 620963666 790351620 848011406 896794283 775301315 850844162 437240310 514546712 725636625 880169813 268395395 562272053 929080027 945821827 677238695 687765879 220894145 746380966 617602202 844061836 939803128 940977578 858441803 873581651 726957521 833459489 926390626 999947116 132730321 813206401 972210103 985660448 393983398 526623485 494552970 586387985 47846738 151686711 922459876 997958466 676146547 700853443 642718771 995296828 360960762 950937087 653838236 845309148 632745086 749954320 521775676 922188757 403613536 776991774 105767839 294977079 788596050 943017175 158321505 228371964 459089607 643925626 440315970 585578605 153701350 824566143 46675433 178170216 724214019 800614427 694600175 871508587 96107533 640242865 76254364 539024215 241441127 782422259 467012504 678081237 964432923 985193081 355180569 576630288 633246978 918295766 24008238 290572201 225797412 669610490 422306907 504364836 287275990 464883044 574887022 618163064 335084686 649725324 24947502 521955317 498794304 966444963 423703944 558267712 946358782 950182977 712735932 867200606 340986486 533942977 340932343 345885480 947783531 958998680 771570860 876365298 714437824 742460103 276759219 305920147 617390457 917135343 89906412 425638176 51095333 693129099 913863438 934620386 682478296 967977756 227975083 383785894 429395073 804165618 442751268 933600583 21926913 152487217 509403868 619202368 374808421 769033700 323506538 381038375 260974646 358778219 851284812 998307707 552685338 973955026 652415154 992511926 568991649 645959704 999546354 999924763 515755121 525829276 437195895 607937208 938076883 953511982 429511901 947474079 216210681 893609448 827064929 905508163 430432748 550193493 751780781 911078928 574307462 820662446 783706233 986297853 567600268 980554619 237332645 312373268 188947391 550427725 327778873 372208663 243079930 553397534 575516664 575663290 587373268 644445726 527181601 651463956 825793824 995221261 881347848 936264688 557651071 636973081 223872103 871285728 187579513 972875448 548376700 794525826 319844793 649108400 214760228 900263296 477354198 613061544 670150615 998952372 368855756 383661750 371550216 899160421 621705201 655483258 454422560 684717885 419630481 745278541 738343287 814874083 173317486 692759028 521408946 796998346 688431784 727692930 714157689 737922020 261740542 394717243 611456147 981804998 506095419 600185138 405052900 764254830 648429625 889153189 395428474 423729537 597711892 951412044 268276536 778131499 180664942 518230992 971171959 998299510 141918624 683112487 861619556 976335153 301411855 499190278 996656229 997409778 63098750 748618300 289801442 332944408 406127762 478157671 618011336 995761047 816067899 984198004 396552530 643661782 888163035 907419174 454269011 780894033 146815802 622942878 722042282 875803295 387956784 800239427 777104 481345862 36927625 724618292 960964514 964690167 342822762 572340576 268895261 793756384 54150101 611581889 19734967 69269188 63166805 796130824 227544723 267680958 408657554 662836140 862069078 895312143 406234564 453858531 280716011 722661268 226419463 430988824 912389715 923272586 375118130 537798110 764440245 930147677 448604166 737384521 650837265 862664408 422951536 472251927 652086609 837066492 661752419 914933224 823807977 878972522 546298596 667209854 191311789 533174344 884264158 939448408 217297225 279514331 365806637 385519428 408567416 794224299 942746180 992574336 572293335 761422086 742258540 878105894 637068187 928726319 367789937 800570721 214015236 742541810 869832378 942849143 239015154 815132591 653667142 867149329 2057111 349569990 353526192 572759148 262226939 586865877 287920842 934619850 555969954 976084357 948493746 951640492 958416067 966561320 663750940 897286277 587213990 766119189 837155683 912447963 161875142 449480694 921164139 938040053 225960519 973467524 460250581 778882227 786692448 884060197 116256821 281163236 898173617 966876596 897864384 898656913 544194059 710796343 693754356 699909894 416895629 430257340 60111512 893296246 271335411 702984313 745795538 877480271 514098937 808080766 595275012 650860790 125171101 140620952 536451650 801689981 775267212 868971930 993770353 997496622 179122006 894667372 227329376 264443364 59424809 794844539 545322570 997610715 563850471 641235349 280864004 729702232 397623482 913177627 101133305 895780639 830639197 943677214 624472485 911875621 653910524 738994735 783753108 895963046 550733957 608122278 602534641 713642485 287968912 694084437 997437434 998598262 227586070 796864935 969063843 973005022 25936211 390466408 357052452 620424441 20310517 360807286 392485547 441556922 172255080 277323510 74842412 338388700 515038231 979334500 239435364 882655138 499040408 870967090 72512407 418465207 779616721 928437494 990234876 995771580 694537898 739033675 223744705 309017341 470064120 624302560 809662163 828419664 75809500 461314523 55083431 342005393 802075997 862242769 836372597 901598415 404885991 880978347 940950951 957468458 171802667 925209903 116775071 454617955 766061690 831797316 421763000 486729371 322535909 332390884 970883658 975973542 430934072 982367019 135585039 937884277 92176424 248452065 684524561 962947875 650456817 914103287 760907594 910012200 436390368 969689731 583311713 855526156 230299615 323800814 248150359 749145678 4094118 651982410 959368567 977790446 665417544 816844459 638959295 697775950 163400940 768552788 523064166 701141925 807294648 836272947 301543130 443524656 489185202 847124082 590729899 845713375 632213583 748148694 544019711 733437261 137292573 370676189 515583914 942728521 361546461 486935993 872687046 910585199 462788214 869330232 26579673 251318675 764503681 932789173 343581125 767495652 967524717 993167626 273153299 551016428 580384629 949549446 310785291 380746237 3854446 53944521 93215135 679160027 190717641 593340536 197916430 393683611 211786226 976631438 469116934 856438735 923779753 976547264 823394438 889080326 872050737 898474889 43546222 892908590 145434345 642438299 386183802 975779716 666714633 946784453 284259591 731711133 768463019 916628973 826434008 966094710 233962335 283373816 846005119 888075901 767034602 969292827 41990248 126033685 761051099 863262251 980145889 982524908 756539092 998638662 812331266 891804165 877508803 971163716 304312887 749054639 577637588 700411267 797784366 966436508 523799241 623232302 174187862 209610880 207799896 213735295 481671994 576762623 98378063 947917153 80259667 581406250 385916060 646857018 514655144 755180565 666599128 957933728 718470199 757536131 407547437 788394551 198076669 905362675 819390342 957258869 372780866 849712472 34038729 263840409 176100381 332199831 303742210 781967392 574200242 577414501 326032660 928225223 109788559 291170736 38572441 689356581 360703186 558275631 39319239 768033289 23753728 514446161 298343728 963631086 557462434 621117542 503763001 546354470 466075611 626054498 877210600 962129388 154969073 360366047 51957864 255700393 38811914 452844938 59279477 394611741 980730028 998692024 620613097 663615022 59047545 958701745 582643158 948180487 613035748 756366162 117937057 820572782 55544143 800367969 988812315 990695258 969811706 998769863 554183864 767647102 64973652 204493672 119284472 650010331 332119252 420020257 357044635 668353990 559202464 801742658 770346042 896599277 202763793 933144131 272408055 474564287 176056060 292194633 177063255 820005764 823019828 988364262 901133723 944594415 683391462 732546845 584207209 611653593 229528370 851905267 292764923 711969052 316673925 586841382 267097089 812366471 251699222 423626815 785593992 945315335 292604730 369782452 119313284 325055447 842265703 850259245 576225876 981646332 701179529 930942738 142517236 273390922 744742527 999633267 670489877 683359424 196314742 812227489 295590143 819423024 157131071 271053260 118962211 535673912 4482912 194798887 379620992 954384150 891404728 920749039 912738847 963017116 131326749 209089231 301438328 456315657 801627791 887526238 75891730 847123412 284071534 334189527 447749722 460283209 207772521 679787259 483006062 510157858 486199162 999864758 871089329 875629001 89937986 741489830 310723275 376421908 819265644 898967233 742387627 955370992 964466528 997984172 409216383 635164963 248614483 301210671 144951441 905141761 231001659 460875705 618453135 799889483 17939765 839000531 687339604 949895339 209913918 418762208 410840361 609595638 532634044 936633303 202454650 264025156 661437525 890983906 228822451 817193357 195179381 375953786 305313068 339978806 861457577 952931382 198678492 384761642 247995085 271639960 461275855 954379998 219530070 700416519 596189965 956710680 656628040 715345521 626131573 836385315 370970971 373733502 695983422 931340987 340067542 737159346 54279828 915044741 492641181 635698975 99023519 120597201 265233834 807272055 894014475 977524041 527180933 603884059 838233707 881260420 287443880 415933411 801310187 829993417 592503285 976850372 296449639 678066422 975569488 983761079 67270207 915240685 619094443 682309900 214224884 773077581 778398783 973634767 579090132 996267448 760740060 908787279 765669646 903374514 658279178 785698290 207973045 378547030 833905552 937136748 189948783 282374297 603393051 890718841 121843062 766703432 567313760 929664771 490300933 908729586 37150906 861755228 505652943 943359360 948859681 987188460 728513287 862408885 212116172 832235652 171992385 398415901 845075486 899051846 285256599 809595492 433973211 809498047 922807108 980055244 734723320 798137451 749129506 910021794 154535133 233514744 249888246 354965895 953119461 972319901 15097368 910028723 647051659 867118928 278415354 967063507 357732755 665844439 786244480 905997819 518352776 991124329 721636433 794499630 873868403 991464174 671931718 820672828 471517907 840077964 498522550 863133110 596986386 810614370 506563066 678849640 888564166 970160671 105488055 568464941 823938894 956059321 389707574 715655578 221139498 615222816 925897995 943125642 58030380 181259506 111657033 550858506 546777668 742213359 758384975 961148927 277617428 886996338 450772903 726942622 986050993 988216622 859169656 903781489 199526849 638611934 54646832 171671390 488764337 840105771 698454455 908483445 950262229 974557746 70929798 239024879 434277201 873411889 61514069 798126275 288608378 304134356 534770129 555169252 482112762 670094513 314124002 908640776 813370679 910524366 42519515 703226003 407010352 899223147 503009340 691198555 287974266 772700592 366670162 485124362 964766362 997862609 13841588 821993202 332692843 454239991 513727214 626652774 333345707 895905291 839892516 932267818 410277193 934758635 948362868 994232014 700997158 754172079 914207752 978869910 870219922 972106626 202195814 917943859 215957184 455848245 340905973 365535934 865715010 946769618 517087447 963992325 59878246 164601235 496070751 604217790 677322733 930729193 392100705 428180730 587361188 755042429 724031681 985152022 157520863 819847916 700689220 719407129 22609886 140569806 744485267 872217069 452913612 921168522 604813068 925974402 583875206 611632130 860502896 922853907 28011877 107794070 467760404 745645217 936737169 955663949 581780616 594941842 214529566 996661191 460049317 735451186 556009217 909648709 148860301 283081137 266060703 474868931 650564315 881906155 425818941 456777623 524099602 583272982 484680320 698039070 5659628 425002102 303517152 787650015 437143271 464076004 820046759 871991509 623733804 652588538 359758251 592350581 948094662 978192490 204383098 620180793 217091672 807821195 143963772 235570573 690345443 752797685 453349547 915742478 212021107 830619538 347357153 891175370 350995358 651672657 910568293 926339410 672217086 913722861 759087925 909300285 47884937 699149861 483875409 562864246 785022344 965774387 868335926 984281198 261352674 911186988 31542502 510767674 69305619 282572929 397344099 645823140 268111730 982330145 244081289 389672003 825954364 944095648 797746662 911010342 556309042 622612094 879063457 911903731 334754438 680580686 951082764 968844412 685275102 702149325 388460377 822664245 89955260 545593566 254682529 949780077 536082819 569610362 650465482 688465883 563222385 873071839 88846082 213910180 160885620 444973664 683869054 754316153 166421879 611372249 848424497 979292066 736977869 817090549 61268441 371437122 252395944 907870875 263227477 322957155 313067290 466968759 612375947 945681037 207145621 844148063 293961585 362900498 92833539 425737595 733448425 759948700 359551064 580160328 764573877 845126198 792300989 994707171 158717356 702479165 325586913 686434632 235100500 927469864 31646718 369552812 780869095 829864306 718899178 884342221 683423772 848133852 356677828 487819327 156938734 451344401 984760562 998569610 882557830 894336151 241447711 989422529 272186893 930939941 346071804 690540371 913957372 914718441 652814497 835532152 250900914 482145238 574248392 808730304 292692076 764412651 96737954 862395521 88870717 620772695 437029815 594199021 501932319 569859166 111527338 309820423 786495835 982047834 710867709 734461095 117168259 502670609 901934571 959323052 639218070 854418705 850800570 927999327 325658214 343422241 681663593 706390122 368690442 434298753 431404786 439441633 308984091 314812635 830032128 866728376 92085298 787886547 543163627 767430150 358418245 583812872 746246548 933228739 474086875 495809577 531953781 733949472 260442086 910777745 384262372 833932428 456319264 832160438 782154308 936825207 84792696 299418606 429210139 633658226 540850582 639658950 485919411 645847064 927209003 940430231 451736593 521351199 739792719 949344009 193625112 343806178 714200511 932145186 697447536 706274619 985653930 989280770 303278387 322816239 574052005 850672439 811041426 893662564 36270214 603668919 73714196 865863249 243818624 676185574 22025927 169092289 849854051 997805946 96884699 226962123 286178900 381517601 759880846 885765157 809340625 873919827 987726828 991578558 478035073 504876458 446910177 528134460 719105034 927250592 6011550 205901854 874120973 906522021 79790023 125018517 822496882 999791785 123606691 159658331 177917518 841807982 118911517 388536682 14539212 740850809 192682262 998192273 9412400 691005450 330140011 369187272 172385672 919724877 873684422 910228450 657856965 714144461 346296939 409388261 398307933 425081135 513535954 595254649 767273104 977157328 612109299 620522093 755606411 988742860 619349758 931382973 741556895 801465172 526510768 699404610 272907236 554888059 944815898 969947656 268346304 831930853 819949466 985392627 784279633 862190948 412352229 510228283 997745252 999046263 590270723 636514047 329114968 826488790 484013203 925792600 44470948 130083547 388409735 957423377 866246607 976426494 332958353 526742320 89965784 465230706 683240465 778808893 498743993 945425401 992300325 993417632 265735139 880277176 227712274 673498909 348967925 990711595 765236366 778511933 21737683 536971536 236862844 580021424 307630979 551501268 18402756 853810584 418673056 681419744 244167513 546475925 847140266 950608642 873206004 908471769 811268188 876246064 318016428 730902682 588118659 682154269 218012532 527585413 390180095 883269894 471432686 563373380 212727946 295913245 911393562 948150513 49779463 395600057 605467269 875915013 420485351 588546477 152248216 216261219 615095250 670480730 603321286 743456618 830236878 864521827 435407742 613411053 841310736 997488710 240264827 431946659 959556475 983558257 996152303 999195489 317143739 839229176 638160887 958139924 232409174 672380473 991346423 995947910 554516777 649656273 479462785 726728880 959800958 972504983 94028935 753327377 670104520 717930975 640025997 870356867 99009106 700396037 511422868 653293571 409392870 973660458 36374812 958651929 449368551 618244936 100857781 776969266 557886149 662642221 912027319 946846557 227622595 701610660 895464535 933771518 494147166 496010729 540241089 833087157 764566439 858560536 291571343 866151107 233311303 640043939 56040913 105280783 599093195 764790298 855372897 899604094 663554783 786672684 895105612 913694177 374526381 724091882 933750044 960828440 264093253 277640716 731377176 835675994 778494225 881987991 35965244 651665497 916663994 980354760 335397283 660138648 474584847 972014581 614356523 857555025 24601801 166704073 425006981 973022353 235454875 789419867 357786411 390722530 337435737 769462846 961025957 992154961 131853700 362479553 482678143 646064501 670830409 717009218 600265346 936800967 442075390 712093825 550638873 715467189 779660539 937493048 625774326 920086290 633568688 896859025 285857188 867045415 488274142 684962033 958314934 990154083 229921188 757484313 416485879 435423735 564763614 865919151 569190515 946639464 444949528 713826715 360553656 745966130 417635422 991285409 483333984 544465471 547929999 762370230 303667544 846399736 555377127 895115173 597197553 944352161 85120824 733061974 501491310 840522273 368546170 676071240 53301983 936729948 552640996 928693569 819059644 938691386 322722282 816243612 71396717 374550574 359447174 805115183 480486166 614469865 350038642 578124365 209472835 935239013 213505452 489689626 880261421 890954808 554513284 901806015 222889048 394308004 223894717 854147220 605738024 791719671 1905766 455584192 703248416 847625345 175962545 551923504 983970550 989362425 380474205 566548950 845563839 935187405 713608427 869382663 78333195 476096105 190379728 359410215 805733778 985769275 924434742 936890260 435393045 833537156 645544346 692008659 316945054 765862470 46933211 518952069 640648679 748656910 609387003 897087144 565321233 776371731 640693457 823664489 683810565 842573420 932568242 933693938 825938860 949250404 368525005 983498764 640903552 661271401 882037738 917992331 995200977 998376074 571571860 840958606 447039503 814363879 593083068 995675192 878951535 961980080 969148342 993909189 428010752 673104401 783499450 975804502 356718511 811019338 867879233 918317990 46363015 208848926 767725968 986690337 174881964 744431093 630288810 689417621 388176596 421247215 828367937 986146533 831706413 864695387 373778881 886656067 243142974 813878496 450668342 486160640 402214676 904922462 83768716 265943101 638592371 954067858 799462482 820721085 306044987 777337824 259710550 434024995 102635832 167064573 328101797 597693502 218841211 496123121 732271675 869954177 679083553 767002524 879849817 905385757 135068808 469700635 725569714 743964504 562068159 606769846 845490916 949143607 758445274 843104024 159829556 935675234 813221848 832975983 645345832 743355279 789933345 846409886 878937811 974390419 881121617 984537544 458925776 676646273 15318279 746439136 787242934 923930289 362852476 997065908 839404846 891754251 473109762 876431339 145455155 289733169 490515959 724260581 319650172 963769432 892005583 946619580 396379487 988185320 375848197 651665115 720412694 733134090 285559491 611213875 114576499 715285884 139012646 455052051 295372082 656241740 238043383 862224169 693946078 792338857 842951618 853591503 870710705 889672106 242491526 458303571 621043203 798133490 25109919 810964502 51028857 620870968 69214756 898197642 806242876 924001713 549208710 611439276 176913039 290296180 837140572 922301369 601177411 715049581 149680951 188716437 8361099 54245875 142013507 769540436 564708398 791497201 605801769 822891284 322128368 982883830 863988407 988535322 442640516 935557940 911310190 975251752 404051519 452053612 298393019 527485417 941948781 975448653 668491670 861486880 987484245 989932065 592461818 624708532 275308920 841130980 401765123 896724621 11193295 680468482 110327377 789713810 581925963 864080166 881329647 978498429 875473481 939597334 586246421 925777634 675702029 711453031 584043717 640285069 507689955 546619133 510528241 512930595 807086258 969881972 687500227 689428441 689970588 751456213 322271700 762005683 969401005 986044938 534827270 643396897 863796920 959120162 800645931 944857009 274674744 886916333 656342808 824203847 468824609 935606339 198236343 233036023 781738678 961901904 713172718 893010867 114489544 990588948 912999465 971953423 658761158 986714506 916871133 993375939 936395287 972598979 686114752 988217792 778434541 970751926 295325448 827468946 42850045 720016377 696171571 792852234 375434830 618618851 982211006 991053845 972361923 980555777 926468288 945111395 961435357 974859927 217463834 635720633 219809341 401117129 158084535 404574660 504626702 545676000 723413643 725541139 865849347 908815827 817211497 968429757 340661426 799947776 734783018 898407586 562838955 992523016 273383209 628320466 187876513 970542822 103618745 504675244 741082183 899347735 263647635 707085877 918204550 987669278 372301106 555238003 178466018 894495507 505629416 775874358 542642377 580260378 792927777 970762994 708122406 838082972 497280805 550897248 319178958 801956742 196802007 971832537 362746692 932103833 881531939 925304219 834322622 889389679 13386083 740242250 180731860 802487264 697691232 731361441 45605265 826589348 204406497 308009740 255298074 486850584 167880773 829740269 136484493 767127958 572409166 660554052 981704226 995664998 799759374 875041260 643987248 814133153 525272348 906186066 286052833 733357890 21991796 804259837 679853712 688230041 128281013 374675431 444095453 961307592 559180652 667924170 228064016 445957366 583968731 793002483 927328431 959783888 182218327 215695041 231292632 675499879 815278219 835917332 369262291 649248680 738575347 967407503 966476942 996256476 410888319 711078317 96748679 318103851 30976912 258071394 385629369 530984901 990459804 992200248 412991248 993887130 424336372 670045006 715746419 774185956 675296593 843884711 432336988 953854371 970154961 989667449 352939294 467368584 278538246 395133491 214333692 757802335 774543693 870689836 516074078 898242561 797877069 818748318 517265487 852326101 346627195 832955980 715501849 822020868 677831450 855666233 262641367 394586672 472474288 493302507 144092724 436857557 436317186 856750989 937496299 943011830 620589665 726927876 564227321 569097134 256274221 781403158 166068069 249745832 667950947 903927541 831561843 879113672 26937871 500393761 411721874 935205328 938667284 954823634 314933709 448506202 241178068 589682685 367026427 778700433 103443796 596593960 875013899 994472586 725200689 839056011 430505722 940848580 43596890 801647526 132101551 454768644 674277167 902364599 20147585 495681483 799087614 925262196 990401288 992753523 385992736 918640933 319099722 632251449 840762531 913804823 170239987 408669601 190627747 668893291 42586779 800575352 32958762 747211814 842388236 958332828 855523053 864213465 463034003 467051905 822395161 917139472 34007451 748503100 918365632 943046562 23047316 572222640 306915672 607508184 375486755 587338088 67875686 596692214 269129533 408807731 824683599 850839980 816784729 988238266 548154762 973242660 988369220 990293957 756545339 856142078 177152756 185098314 638363668 896378916 21341361 410286452 443109442 532965987 147733500 228336870 16440401 992894346 558357681 889054793 80926761 786041108 225030255 734391973 135143574 642258201 482676456 556907939 534728015 812224839 629134937 748751980 722987609 868788783 818202399 960927280 452130539 972082595 558853500 769183478 572633948 765374632 514205330 946297349 724660164 832760381 64136994 330033955 797465232 938585951 539946145 640221881 438211478 604066018 775883469 994053584 416214452 577659823 301977975 673448983 913235021 949219906 85548660 745732214 351367665 487814348 232911137 982729797 703081533 879889575 469173151 598081372 745690750 985008285 909517219 919438079 67439185 372989867 903746585 946196502 643330186 670534731 681199208 915561085 949774092 995888647 283820390 287855423 633242740 733614318 496744859 968908571 348366783 875882531 786938611 984968439 986908310 995411884 474351414 736795589 266650089 394637363 86949594 235009477 387105229 856683654 827198755 926658768 254864401 683238967 268857674 651346756 999432393 999786305 927028119 959363577 372260241 890772590 424620489 627177932 883317638 906314745 811716679 957511878 232231382 604078844 481908316 878614525 690763191 757433249 73281120 625700550 514251352 919462613 667309473 767812619 332816858 511561403 340616796 660213209 490294581 847821532 273575945 623703237 320592166 919799098 321726158 447261043 429107925 888144982 528459051 723369477 46044745 100684691 761286527 866013315 305085097 529119230 680842893 879281506 656777368 691758925 170860658 937699976 26047831 45153226 703995610 904375787 643154286 969045389 661445298 868014403 923669183 957703793 287317380 939632512 340748009 354042737 212429005 444957658 537882966 892157150 810482821 963640263 115492030 394928127 347509636 851856395 252872211 406297784 921899375 951527012 802692537 808065125 524511159 582423085 722837625 777259517 402897325 674132234 31960954 606862117 448595759 726883206 18290591 768003758 795095260 800041529 290083373 564443036 965052559 971122517 80460951 563951693 77348907 307605721 667133650 884255073 701492306 866826470 927581307 972125703 400533236 514812330 964577856 981761048 603173108 675149475 2916918 591655614 545838029 776334583 379697465 520743460 481574393 573178083 50637197 904345827 59081490 368255792 488260117 762851262 23478117 384436657 442837299 868530294 23116264 588560084 720219432 788692076 156596544 216551179 999115072 999932614 304103920 948524869 572363254 910202252 13767813 621974680 311165725 927245291 80357227 573205380 14054151 27847062 928946428 993922409 496283458 516145156 116668112 164278330 806262049 922248910 98785139 453105639 80144399 868262402 565604570 971083994 704627544 920689685 791234618 880569619 28208984 920615964 753474275 901801149 442515265 873162735 536578356 785163046 531816020 544374352 101106859 315316036 172551209 843689723 866072737 879125526 958165702 960940497 953491508 962503739 617255163 933315657 752683170 885174146 75928929 972232593 158769765 205684191 536726564 871124189 877692371 882176798 848403848 982821192 665832477 909028214 200205715 925058889 494277681 959812877 655875051 873347270 669274695 943959007 589782572 646884876 290017886 414186321 264197571 646251074 453590775 480418949 660397757 737846794 633908536 809910113 842941306 872541979 740639178 966758228 941155653 957707807 17677260 708437288 926446605 957440296 881128938 928692298 822776434 890259588 28928881 249564840 842387660 920386463 79783407 218469244 735696493 867730606 35807961 387560108 271770692 881764735 853340130 907337894 758319690 859860888 462060346 808448663 961352145 964768952 488803894 499806991 86428706 994364246 217472174 806440226 633379402 661367822 933295260 967730548 266452145 354730163 605443507 727763098 537925174 889380919 37855213 857832536 153677651 283108384 617507953 971789400 691692668 806374717 224787273 451693744 840932119 962227405 134195675 194142578 85734665 176685054 917916210 995244456 350243711 374807228 996468349 996970116 568239018 977631761 556580253 761531780 305664171 875892970 658355861 799174295 178583696 942409548 632227201 755702507 442601926 934296166 797531233 943111143 719502912 797414704 785404216 938365342 994903004 997022024 496734611 937742091 718269604 993904783 973050796 981641415 598450471 860865011 651615985 930814022 823786615 956556756 451065098 710930456 323931852 510913298 832237489 855566411 975737792 988436837 314170335 519943526 293672333 367694318 451069650 836485347 100860595 780721556 456706448 587218003 765304362 795145989 748232878 798804465 495713707 503963113 111376695 951374896 511753067 803069541 756321836 818341290 715412401 799008362 12907385 143251947 8274086 149129481 514268428 724312930 835850963 990907031 134674936 312761161 743337515 968323574 453112053 605144224 736845975 869665746 140723277 889758276 30501051 963638452 277754912 849318636 297295694 508462682 485190897 870873318 788820560 864211269 738364734 965573197 499195706 593832616 269217527 681869767 49331446 652899787 590975874 712934025 744146432 808613658 371586155 381320586 139033435 751514901 699931069 727612383 730472390 915034196 285791582 948537438 906380141 921934354 722242592 889914070 897328552 971637096 650695157 846294298 912382519 936497040 179125590 226355604 200894512 786321353 827411691 930969239 224793750 952887144 608364409 961513527 8059820 491283150 176596728 380417126 631385313 739318073 392676394 624113306 970962388 976164632 618811142 792347998 813888607 859879426 62025494 251769248 242752464 508672794 322891802 813019725 63827831 767281583 149498670 806929711 682604937 943962218 841776868 942766708 601242730 905329053 122153708 305136897 589876884 876965941 766382113 890272395 131213367 701074841 745595389 860833217 384191595 668295935 996267085 999187619 655608716 750560239 470076067 803399477 115271497 434433434 37741355 836223468 674809035 770002023 86734314 737071387 706940107 980190345 929069929 989959437 725300443 875011027 363052536 730708216 823794229 982911988 218147208 644886585 367553159 852184010 98253967 242120300 146015669 799445857 172330697 750484492 533789223 687655996 968674813 986137282 46675372 437860321 12305737 625113712 970121980 992626032 914034932 953783726 118704312 492045381 603874787 939169650 698537234 882729980 78622715 593345858 576644493 995156381 532494057 972526582 655835662 774666743 889110986 941287965 374364518 934319753 341779586 750555008 250250508 769892723 172620655 656964273 521283020 871139872 525305380 923937184 634984176 652695069 219472622 314531970 800160832 857024496 108167810 911014649 683739022 792992052 835762664 866516712 252331215 399599005 817320047 916373659 574098347 705122679 938637219 987661251 95240649 263049180 70231984 296065804 190887945 726694944 10506567 472631840 762064484 826437718 757643136 971146494 886565544 957777552 542576056 980297395 658375738 672674045 493283584 859197991 865419288 967421882 894969087 943932449 125396078 890440316 419436235 871512631 466751191 613020561 210785318 799177290 991882715 994457207 886799801 891294013 430854291 892201559 918669462 939628278 536357269 596329249 572799127 885918158 789026745 852967047 299154535 326560358 530002412 628849177 405729804 621668832 945917608 952910145 27867201 246355112 845096125 893261269 265909163 438734904 211998982 628614810 87598974 891481479 631553993 810271495 51571681 505671543 904481859 999348141 836434443 856204028 562862153 642641969 238377178 892991623 561435619 748725225 437374000 811763568 571855713 988896380 911572719 917258964 131278715 944233297 839888897 857215869 834478031 949935012 252300706 931838565 559965551 929700462 611054938 693537810 451404886 758289941 971963256 994657926 541327383 917509421 962956764 969169669 684245249 775734190 487910304 931270092 255041137 937873264 392017138 924500801 960442571 985925565 105087055 300739020 943265478 997778538 420301579 879748471 462515739 920354348 545713462 688051227 960575864 974300498 408497878 621051230 257675892 451599809 670878001 816456421 546700834 963730478 157913843 174034373 104216104 468026605 60115385 853760935 457837250 671533270 913262669 985664468 463296626 994247833 914456942 949185992 97463516 209824067 416563509 796682237 4584797 416389686 756007731 878482410 350403453 499594862 949630929 989825564 656181327 713048176 395154504 726018297 439403747 640755050 300844621 639537617 912753306 913748790 342738793 814485193 73148155 119850072 446492869 982539009 484992422 746599746 910752210 913013875 254451734 579617779 623444062 916648786 443559277 532918616 860862713 915191120 792137768 829302535 722474240 818264660 159399774 375123731 310959903 895642814 765828074 787514827 580659236 620877241 724965708 800376330 564309465 597390023 596863771 833014583 677345499 850852668 684410793 842097152 352524686 485108056 901836564 952845857 40029170 336825172 10779040 290553119 171466931 626645252 426422020 675711165 314796353 688877412 703603935 729454319 626119550 776800446 195330722 535076338 716049359 842338515 600564693 995680927 56360326 294763776 235033245 419605410 606477744 627853735 801430181 828224979 479992401 498155098 365981306 780304121 169208239 396886855 2805056 286655775 554302159 710100464 69504553 428661752 417562239 746885040 152611282 542403499 314143951 490647741 203267568 365009278 825014164 982844844 980142297 985628425 210490245 487450610 894376392 982147175 899069168 998005860 712490420 896812140 204010366 732074014 225853851 342521529 257835091 833704729 317530351 675918647 781511264 824903506 989653172 995709462 937578890 983828104 700729544 920442753 231803612 984164581 731564042 741798494 287566875 831656942 534220988 958434524 381593965 581749680 618217004 641693515 794776893 995494976 42749677 618654068 632182298 918359992 332946771 672459358 32364859 618266019 107227626 492849667 575878124 952913389 575000555 980769456 734626452 874745267 352962240 992018654 218058812 376976909 29979081 975684220 691469362 986323580 124116894 927330678 271512114 403964926 611970404 845796381 375957569 945069980 721917580 887249125 306711041 327816904 246288096 504710569 489700607 775991791 426216281 458691309 880157781 987982219 658636738 921596500 444938289 852119056 67329176 696205137 780614044 960688644 571654807 802535303 673730797 887887956 58738523 836791863 498455026 744041530 325383039 903859159 466505648 740811711 22715047 770100478 860532048 992822019 935860275 941959329 925286878 946583131 517176663 930482434 125007816 538139380 874400002 952891670 304226330 560658090 659466190 930008213 416303673 966322166 329332836 407232228 844157453 946047614 850318143 919118049 651267478 690950561 633212496 704106546 646202106 689446075 880182764 993066280 422538920 739776246 848669738 896123822 676483335 809809183 697601786 998060429 196105451 822875935 792581461 896281332 23077714 893304684 762638261 896936794 270248842 332914149 723853525 881320239 83423741 779995592 792408238 846295652 383355609 552324209 585488923 654909684 466180908 651786096 950219331 972071796 226261258 428092307 983325946 999050427 193351710 954924336 282343293 666976807 232896926 626420873 41402095 77419208 560930318 750540653 950003665 991560232 310567377 881634594 353550038 573656460 445247691 565152305 862537897 950187980 874118797 926491373 489847797 806746140 345458339 538580712 504404068 650537384 963891722 988853637 912128322 988153728 897500276 971869654 618105685 887267209 829147533 907137328 483877697 971263145 178432548 615739793 248049980 865467365 883176482 965948956 979262568 991736781 11887044 765215998 856342275 874250158 599747603 936946179 710660003 969361189 266691443 587778782 272970937 414030357 124187276 594785065 964398566 973631605 725017725 930860069 881056409 988683779 811214533 819853855 427901259 657349038 979882208 986320768 307027639 795876473 43110565 837581928 581173343 763422113 490133871 941255993 768895338 867225393 54849111 712801279 786616266 805778611 377760950 811549672 459074886 831134496 503313984 955116282 591019704 911448002 229433881 353285286 203763297 640226803 597288585 981786033 568610578 979396189 131060701 634925193 840637942 926845881 433601109 706643206 419588637 585846031 181931989 210340457 130618793 189806679 624438354 992511720 420809561 604208337 18946042 359492099 64773615 125163692 508364694 898836409 690122065 734781901 204442563 796841203 2953511 724041524 911606850 973502998 302498014 329357066 940893565 956327487 540715794 673052526 758885746 841746347 994899821 998534181 854092431 878866980 743877446 880278859 86240633 176906729 687640784 943701298 175491746 856576084 374006412 425917822 60386208 114523513 492717550 600596602 321945725 962016175 586660592 647111314 521128168 584172634 855223506 990674929 256669934 758187534 502114504 513321036 841408148 989685897 21828907 973700056 714472684 896744994 337033786 923284037 978437625 978987523 87852240 787859902 133872022 316873342 878358662 967028525 335697135 428929011 710705105 888320560 940609422 956856365 465005356 680044827 205938648 458146044 329901844 718934742 371523872 888715963 360260609 898632269 467993405 983729641 389945288 602478304 495488991 812853023 862791103 897897258 212401709 995918726 212785399 917760313 48612674 904124356 764634867 882088488 843384128 993288497 155341155 728094804 467421645 924806999 245601727 522245342 170829252 237392681 586532027 756386343 106320617 955295116 370192837 418706922 925204805 945326198 367030835 957292440 125413379 986398930 730961235 774294842 559688268 661410519 748330999 830530034 952427200 973418194 136897630 434329383 930472258 997457130 880226939 997973520 763956529 772922613 770690993 822948564 545325655 819423827 893130232 944222810 340997589 749077707 401305054 692580550 801137841 828087820 122673223 998530246 153832122 234257433 902941015 997698461 637311114 743227244 964638623 978157231 587264575 872792643 396316858 831757632 166419440 449697415 258783610 386225657 856758684 877723843 82267909 283238444 276225571 550264642 952039147 989968476 222409855 969848153 829785183 995974286 519537199 789972655 391009690 454711767 601930453 858738194 10826758 676705648 210766032 875411769 17725566 96882676 139405659 648314746 434975222 746993503 224678136 639530614 936420944 981924323 879862051 999210168 631510094 646315315 527188115 871164921 575323180 761647499 146097701 963056720 763271890 863405407 148858854 844462817 547549119 653886360 131876178 344485550 722176253 906695991 934207412 979760348 980554531 991073357 411947322 437879306 998267227 999883432 812644326 955463465 72104244 610643877 338675181 537885332 647923517 729065832 970656518 997682329 797437608 844716654 591534015 881847637 304879280 904039550 265020788 531120673 126103874 257051104 413490201 669162665 908244001 975842541 377675619 549253724 38221559 46042055 472414962 686580928 893559560 910618579 566114388 773796704 177122423 725876030 188852120 943144883 959434372 980144197 553013872 708184915 403313296 730525867 726190936 879197337 36406664 654392747 132565030 859990983 122179032 148568981 243639531 565029648 983872054 991211594 860354397 884504920 887400848 905582684 396467954 610772007 955031994 997976482 172290437 684794739 27946318 78381630 844449737 848884192 742692584 780319825 168377053 401463935 776728479 927102266 557907993 731939558 624855294 721625049 670997051 851169363 223095737 805314203 800327610 834628580 980582028 986347069 642396333 820630828 960996989 972953306 120002158 222221072 225240049 446247779 893890329 937372589 828812074 884669318 532239125 711288208 722480890 738554995 886882822 925373961 218890370 976257668 37622562 328908981 154644890 936945364 858528162 898605129 945175033 998678026 384601853 711162505 205706994 215859799 540478867 930387123 267041388 812011878 336048711 830669416 695325786 993134792 540273818 595478964 239272923 808288565 991511978 996371133 858157559 986248681 490494172 790677815 462482937 742377653 566445707 980169010 353897650 925763166 106920845 624238189 160612115 549208886 395223400 398121319 824385263 961661690 25414396 319545964 24720503 302208240 754388015 770693773 708560535 810726679 534656754 804170029 16299328 890370055 973919157 974675881 399406298 805383530 874061092 919395270 834086959 845377127 432195985 520200888 65549223 555745630 513549649 554661477 333385322 533226349 198358174 528412287 640328020 793000495 351345872 877156013 76656962 225164893 507175383 872419774 544951416 603886407 631372499 850315762 131410666 984689256 890417557 972382830 757340144 842845379 38271135 975242689 568036043 730468467 514608508 597048666 740796657 969732868 758806319 840365126 852661233 913996846 469136561 564612641 959575341 996030054 966304578 990483127 139554127 720750643 2297859 832509603 259704828 441067670 954151543 957200859 678464573 908771390 45836210 298463746 204258646 451342852 824815101 844471880 63027615 374344940 837630143 903699233 942739738 973696939 988040203 991422098 347080965 890747085 840516317 898178627 996856491 999922108 566613311 942324373 297907760 666105611 780872715 966070414 399835541 997636364 245920708 313384796 707009807 945642285 778931327 821033008 253756276 763923376 88456825 632310169 874544361 913497063 994670865 999174707 848361384 919521806 766467876 982392039 709875730 901533375 856774871 866783485 252882256 525850844 940794072 968288656 427279369 757305482 68210633 406307946 123368628 445221496 678465202 828582629 603421458 851964724 894067205 915711196 185643114 994803406 955159779 963704377 76478611 469181122 20448430 301707429 572104778 900681505 974543413 992157073 899736089 912006767 824038393 831975666 90149651 140374470 916292737 952519910 423545133 504098740 785760098 899210393 960419641 990700764 84999577 863356372 477448348 888903373 386201080 756935599 130332595 765172809 809716573 826295920 520463487 535947912 853067323 865502603 913010493 921946640 661521430 877278928 560306620 883190225 639202811 872380892 57932879 716757802 550111241 955921191 110655483 479836994 890754583 960230935 506743692 816486372 6349326 755936604 823239048 994993084 913497440 953157898 179087325 351486666 948867546 966743125 269054291 613558985 850644480 997910107 778097562 966158709 886557079 921631669 901792410 941973572 381670586 753416705 334126662 732479334 207673096 509185721 550291677 641812954 76546949 212875125 482154937 595966397 481836664 988361892 860475322 982802651 188409477 903459736 726793773 882706744 538205939 866891524 945836161 952461920 871763505 926826048 120868837 560724793 167611138 332750125 376614606 422559862 621370884 889780714 468000033 478842081 331173043 497095000 653288452 844322276 242653788 593819813 940867953 946618779 395781920 662888684 552762302 834528740 757831342 791983927 219915992 721407623 90114804 291983426 99046959 827621369 653902194 892578054 551462587 849252116 985284217 998763228 945646664 998880222 170868030 819413702 926841022 963315343 370048786 936840531 188455665 462455771 734058508 947322509 874025614 993015879 929465870 981391047 513377139 689830889 212679709 617303434 202872343 973235471 840087970 859152212 675695902 776690016 517545955 969405112 436983601 466331798 478801699 910941957 657140495 728960358 42620637 478269621 217053534 800785526 25817432 950712106 860753596 961992791 885974045 945570231 587807436 672372968 892452816 934871449 119370831 823804329 196053425 321794223 993185599 999187424 314310941 383946826 975436080 999914657 147153837 796274599 875363151 921837291 945390480 986949559 587452344 814971333 430626542 486324432 860141332 940421947 588792452 910653425 946026995 976515124 511905820 911099617 134321188 879315666 704556759 848968387 844909848 944423693 566193724 956298628 662946441 832813207 978133348 997763885 503757656 834597248 621833446 626206538 676627680 848028281 558400927 661682588 755595233 951768001 825750585 948932561 46219403 559350779 146115348 868374893 193958515 289711775 420956374 453647728 825369630 942773985 896944143 949625493 283509907 841977139 444718177 760648622 551501066 767837712 515868084 998246759 920639777 969833785 258108709 483687427 629778052 685005415 301322627 846901309 84059234 709956507 647701684 649199776 904856613 987525394 844891803 873094731 52707951 57853294 846845300 894345759 525949628 572571031 906632673 996756443 409372594 637922821 405128694 876243643 817753725 892831944 584123818 595931550 551288896 758316081 726882943 821654195 565677940 917660575 429678360 741573072 173034375 435217976 750503984 928773189 161526784 397074274 436036300 564119374 318233811 559001230 383639830 839027265 970809973 983031623 138173086 886338623 996836074 998126882 664833487 672468909 894285467 961392167 356421220 896355839 309741220 318537928 713963168 760140305 64576026 815637686 742747252 774127868 856682915 858357427 860052014 940443618 483550805 860412212 58332490 159318933 814860219 861337368 452097794 774101522 804896755 862668006 646787191 929269564 269977243 937561031 955728185 999378867 741616150 838893810 471554560 861982804 892782284 989071263 73707300 766080730 996715828 997832956 31511891 631042244 29278475 823813032 196945385 417579786 509860719 834969448 67316846 519808609 194670893 359280621 421940391 527102016 8594083 180414743 971461615 989973707 268425852 557210927 323081844 425283360 660378661 824321810 216361969 306993267 760473972 790296490 250840439 393314537 592179677 906939752 303368256 648395644 595872634 873643644 435663239 606108019 356859410 460859534 612422372 700483692 357237722 981880243 325721772 895777148 73685503 459046549 585328954 862193719 768799054 963967082 812898248 980463039 85464478 802854193 206378918 588517081 869721458 964878003 722612325 849146556 782993876 943728355 388230314 727336497 373197908 761750940 384413335 800177807 154896130 382741957 198863715 623811332 865477538 981221599 58949948 544807407 431618032 819900183 724390974 995485175 79926938 572903363 3928311 786388916 148729105 305492865 789132896 913920105 844736254 918957845 81630710 95310727 744802337 900115096 800247215 998702817 154710959 523810716 536652762 779472064 502204395 848587599 729220035 954572094 481485558 928336638 635197354 955275856 701557567 861043955 547467025 692447960 806350476 997289652 806244434 939687147 20228139 903583945 504420389 948940746 357397481 395622439 489793325 974699588 540026059 673446751 756693901 757439838 627504042 877619145 854935830 982182059 147471790 277562943 481837629 707922499 317769324 456123118 8099718 245214476 329647322 633428471 818696836 847824261 983460705 995003332 174124572 253454201 851144832 916866244 694423923 996515654 147433190 740243294 720517205 796230907 79799504 891008858 249999085 676182157 60440475 280019782 257115414 732324325 462972411 916527727 528119875 835357511 823785877 930745855 946506781 961976112 798661373 954545179 751422983 825517153 93356150 391332596 358988148 508396053 290260485 523515184 126367713 404353355 872295810 992002842 729748326 876398572 325229328 692246215 257846533 841269250 348241595 791417056 543807293 834728475 232361520 571727610 220818060 686091032 100642374 778048501 683129652 756446577 320578902 921242912 577395551 857493883 322639968 948982577 271712201 777818545 916831234 962498705 680372519 736942631 67607775 107605931 979186514 994533248 461385066 637724230 68273938 425776220 323475633 354788178 363353956 922700972 261594733 645352641 263953812 406909194 233976667 551062541 510337633 955413677 125335881 599060860 983348394 984035055 682096198 929735945 712181404 816251357 444739109 961486539 379509506 872604117 764622388 907429952 134146197 584591110 54816909 722501128 800715276 871908415 796219080 930213666 560870960 992350599 294799766 456329536 887015971 896797371 686056919 777029396 751422772 936255457 847503023 999641602 52911568 903243090 865837921 926352449 159320134 717222607 522262509 762598482 50621218 223350809 346576181 390874976 208061616 823494187 227340982 733577637 768050902 925203765 796757061 945933980 678784395 761018346 849473554 885361195 203442329 961560411 648444857 973377198 170752741 572347173 4256400 262862808 481044778 963064238 746108386 800917846 633646764 956366527 33815121 927991243 494569318 615615511 756463880 859128974 739053287 871303757 283775342 357598125 34271877 459832823 319751162 568079756 957625892 995471973 119124216 179694708 163962811 898098812 28174825 441273142 496771780 842924059 434434377 856275225 236778633 253863337 751086322 754210426 554760448 883374304 460760780 528760318 281498046 313137021 596544137 754990943 272340511 973714424 672898213 945158861 702252406 801433958 863148647 991806370 677183865 967334168 676925351 920933725 73580962 867581971 272694405 406691491 910414716 926138951 188235791 523210180 950477657 961745889 870573526 909173863 674244749 798155199 538685691 562236663 47600681 981704982 293838602 894482112 171576965 907851353 325794804 661423712 18204458 287350202 783110338 849111856 546362807 789947480 64534063 805874775 389791389 531016164 566211926 889217423 179598992 489815809 164681208 570594005 8906101 910765363 255251065 475983932 629685446 758641779 325480018 616701930 10767500 936340064 565037621 901286561 936440087 997368630 948736205 964305799 429756804 841578403 640581706 659771524 495962395 637080037 492949311 852304035 273752607 484215053 246574253 704244763 591490446 638312064 268539101 853971287 673203887 879874503 23507081 645727121 841906934 969576121 287508885 605849116 67209564 291199024 264351462 377069138 383528570 424303859 649721613 965504338 399227476 992078880 320978964 664065805 351788169 978470684 483425857 575330489 449455302 822660847 277858168 594173012 513207216 514011004 42147739 956364477 771012075 851023971 611809354 740222231 851996743 987534447 524288688 598695041 24339738 768771124 852112631 876263720 482071961 577890145 326985857 532557560 548672911 970037560 884799035 997711118 635349252 865932046 371618613 573006776 655846746 864163232 240484806 999394149 110844381 497380904 315534235 419840282 504878059 767261385 802169420 984946064 357930117 365156236 356167830 427978049 781502514 831993479 2882051 767907561 592616731 833700794 466755708 780087242 934224590 974417518 530609091 578248319 993290498 994955802 579911512 954036922 827253643 982611955 709688572 944252314 994725587 997043111 794505828 837593876 738799606 964639764 644203544 722928003 982830097 985719360 363536398 368540568 928124686 943107966 69810339 601578156 450049312 797112756 219387333 469689567 370877962 389920552 259961513 792121220 699012680 929068782 902281331 918395521 932161010 951481152 867477521 947877477 778821269 848600682 85151200 639786248 755562419 864393646 932886068 955109354 354275914 723795301 907300355 955728566 532292090 784858009 918444216 962728102 748392447 909447580 934307103 973670915 592815678 847115512 454295167 903978062 12156390 164744993 225956673 404438056 737465675 918197827 535228405 893860021 156424428 669451530 274642598 846855309 865774331 946692792 438904131 509168396 804284934 966921482 628998508 912927016 89307710 984014966 603919026 768339857 48418653 171284924 158060125 188474649 939484141 977446322 265557524 649417221 313954837 334306643 558113990 940700341 239527224 806479775 693995766 833028909 733974589 882725589 177458517 258367642 759251507 791615071 968591317 989688417 539767642 815084702 780131993 794390919 159677058 746978533 933870171 985329101 371779984 646417249 737718812 992842330 508270112 621548663 522228004 820352124 205335641 470555091 28978490 75966469 484187991 755685975 658218924 916902633 813273509 976042815 469613108 809510720 473231054 544877085 649409694 809363090 483827523 868677353 725471828 792781420 319258238 567223784 564118025 788643892 57955657 296702194 693381574 910718799 84877879 842176161 618286320 780906654 736177066 863229035 212024205 494310781 408372807 855653824 574636483 855004967 624828680 666363039 981724168 991716690 949630475 950079878 318551030 550679745 249426003 569885216 408901691 968515321 238946022 820430256 62924161 982609441 280331051 671456404 950248534 976365241 251009095 888270796 582638561 855585991 302126817 456545608 206125960 276301477 668443927 728567542 6057290 434503765 697056135 780389997 802399847 844180001 150483563 517533748 139725921 581769703 116009213 825869948 169221679 892961417 143182958 742972109 845366670 979598063 133254778 976016156 511302494 650062142 611475128 779492417 189893061 688062770 364141320 446636729 712221493 852817588 643585259 805216535 882212366 951634416 485867250 673687380 43122539 187719719 704799518 806769034 143406152 361092674 37934861 67089346 996680987 999780908 551896260 788479246 584166819 913719400 980633855 997792407 54585110 713632285 456686344 594772405 185160803 208242873 285968041 626440462 800426647 885770857 957850243 982340845 139251087 481160349 571925031 845007696 998625590 998838557 202319126 838481576 788082230 907624445 498364204 583563969 1571845 598189685 995574588 997190498 662674695 952146621 546339099 993833772 237264418 513318737 21000075 667843896 936895772 984430259 866651707 955839853 569147517 760131675 332284460 676484967 782654793 937260539 156755875 217848312 29997494 356271001 745204742 796967033 75354205 557911588 261733578 744981997 389570289 409049372 98585625 321570800 37888780 162245823 694369986 953367336 673724462 841830621 235612657 295724056 718258257 869844060 339627567 976300406 170885399 623481344 909129667 982659644 685838266 763877520 923038839 936739037 531241168 700764589 110634057 670404410 426241489 667254596 52849458 770704095 62437888 254877606 459899158 624367628 37469275 664817150 529064734 682503745 849448711 951259729 701504365 949096588 389843879 628000944 703746698 813135310 221991341 719385306 207601186 927834440 978771367 996782593 668780999 757093545 573919138 701985918 732349301 813442004 129744798 633629160 709560056 888330291 634759293 924249081 964453629 987312253 761841544 984868492 54155459 187219345 921373481 943757919 139949989 526621609 275622554 713681859 677424412 712381429 355381215 689279349 103598334 116922642 874652966 884109500 266770575 775839825 481233676 873054708 557137312 777485397 848209184 999619441 59427292 786474523 654910392 684462554 956588740 993483859 115035195 651595651 612221655 973931410 162539451 979419705 217665836 590704688 35490102 731117990 75111059 242381791 671814506 908128603 414828525 439003462 396409233 409962044 99232538 280394907 71341664 528723931 686433802 982751654 887926639 925479781 199968215 343514301 890868237 961651619 812482340 927288251 718865102 824960918 575130047 745819916 507671190 516020280 164924854 202640739 489618823 641219401 283730822 540345163 620566478 716557751 911145820 927685918 715327123 716085765 330806550 486879911 935272834 984454085 247433211 764622152 715481837 854762445 427118713 963069072 761603094 786081346 290622189 685562981 951277035 988460799 623966910 782933509 884187142 998336252 150977954 842815152 975129139 998159501 880455913 956140998 115069218 538011778 423971334 531588659 206223229 642051425 429651690 803465268 965412856 991612717 858794118 947734299 53961144 563073012 871258268 970248577 507898626 642753522 76866440 271791474 892973690 893134983 123625129 266501958 479896510 968234058 274244430 510996718 173435530 738653618 377539933 413385914 75345372 815270708 968531742 970665892 941971372 948334738 11243743 27860903 723004989 827476137 781954624 997123621 921256894 999986927 191760039 458405025 1779184 597371471 462967821 979395141 258551868 915825565 323603401 588174898 592320260 977103038 417508356 469401860 875339981 883087447 211193509 855774877 349381409 613113296 721818971 932722734 596602116 971090013 652181520 983382239 968058421 983972738 262275897 566660631 770144061 893208878 688557449 769223698 965108542 970620316 906576844 984523588 844994785 877913499 608805903 704338025 31647498 329293167 30419548 337996704 247318298 447976673 65087757 440254821 493368978 541102209 754514874 971883636 27631878 158022607 45934396 625065606 314295768 999864271 122202843 649014386 275165958 649325481 124590380 184124475 539393900 892512166 919095436 997827872 759877800 869156914 953420740 983114335 246160818 440267278 33528605 623433506 332223667 589339361 305996620 522557283 85525194 935849358 152037422 234642174 558685309 768873760 7877296 558340984 957657510 996398722 658732707 988570310 639149106 862697675 997546628 998776187 341590760 939267213 507163263 883727393 551537573 783398588 767667873 874448759 750863736 816008332 72074397 596220451 75488981 821810539 615450673 954959217 533574741 580404616 986773811 997037400 74841533 883192502 130970397 734558981 623724446 817646013 525813201 577781463 832036882 842982154 423867970 845050042 899633864 909268417 248880156 647514837 601203075 863281982 477525303 974923442 285848621 427608116 184043557 700081040 674548843 772218613 66839298 322965906 693404176 896749313 417643209 843164507 140009706 798490481 392616767 408551373 242772978 439817538 799084857 897130914 354846502 659582582 900603807 979480766 78227153 444960250 191400312 204567400 257134188 992511784 223874947 631484554 547674992 927187505 912098885 976886772 774296340 866785447 871680242 879048749 961561110 976344818 966097154 972873292 526720945 781072126 833289233 987296567 572269751 781401601 889698990 945013518 311149254 649643902 974957334 998483033 194203229 270493426 1879522 697218444 89561552 728720806 537178567 578180184 520703857 773768920 92571794 597859867 251266412 634246947 959066680 982258716 533130608 692483613 296603149 885646850 310222845 942470094 586806451 861312458 786973096 830294663 199823149 240358221 933240597 936348510 792998333 968421140 431907875 817469704 51577139 88771974 515678635 976924623 116286091 362973560 479309599 971475093 200386137 227558237 400214918 643128868 714945827 924563338 53531207 327619217 855646855 964371712 48952472 808789216 515351597 836542220 78242424 227979435 974389404 985004139 575176863 711429058 16942772 238645029 146847955 489672434 751540796 773434926 446389386 702376482 339019253 831860741 200689653 217555546 513256275 979967291 714953831 985193088 495326056 515714767 526369715 938824571 290983369 662113022 243917613 726760628 30212907 785436004 874676097 889763249 732880526 761535225 440931380 714956004 478566007 659125614 414874797 612404872 914727760 960634580 270077873 447160840 265677628 649513944 673670697 898115410 929398261 993496271 72302809 191016177 465473855 522278073 543910464 919807173 752303295 790786793 17758712 221580206 744291418 923027475 542151744 769211374 328032002 768435909 132932431 301439113 732215364 969322797 151836613 449630935 629787396 740878145 966709020 990452795 65965394 506334981 642095710 983418900 230692518 931062171 180487004 272896219 979673168 991342812 687403882 860990924 212019212 248409567 858431258 948458998 788446874 811097332 735225764 968581918 952249105 990345676 336659220 651295556 577764323 940448356 332862377 457102169 72518561 847253517 37427876 764360232 662548074 781203771 180732586 485879719 293502362 552911432 628884871 828531383 751969102 905313870 671786890 979267515 100071444 426237738 965876747 979273731 192605222 535849982 172559449 439825652 652205769 780852481 7418473 417184153 552885714 574659136 460417565 814185037 165036221 582263829 99328078 285067783 86228439 993519125 957027962 987614071 369564738 689845367 936369852 997479119 955259687 982202272 131704099 858731552 156911076 848037933 509108478 861244584 286891105 431392656 625797315 668461041 55464146 314255150 736615649 895085623 591702957 821421747 810664720 898606061 646487474 845173884 568551109 765616008 503394364 831366328 212974533 521818505 103127751 676118326 793669193 883147673 945339401 980162920 597748547 945041977 245000696 371071421 729410752 846499695 460766730 576430106 518627789 773770035 960387238 978801800 13553312 603360588 569738419 729008981 704727453 891034285 404834424 781295294 556945680 661511776 846698085 945023269 391187815 675097549 667606066 997964375 596302333 834372591 434458058 924535121 643569811 989504191 208236541 918004246 502791571 558042413 326819595 837880782 22925697 910159760 348032093 365555783 694856972 996639488 887072596 996534812 27399792 868375550 706618771 939798711 270779505 804142155 95051428 991361643 327782845 477767516 470049683 875625931 408716099 751666021 122464790 750857708 161833404 698954583 929225961 990043986 512537922 916012747 870744811 937344782 766941654 908187354 766749696 994733280 132560080 899652491 506676736 881713498 72005356 741118289 521240522 572515223 219048343 775531531 531715222 656831459 268372493 767068935 68462737 347566011 590349731 848454004 733407995 947618785 535684846 790196476 229327977 963216019 238022833 893540429 690735102 804723586 211288815 422894718 200606378 351652555 466023455 530663210 648765335 826365555 706458035 872170864 895889242 947904934 229365947 351979778 20748242 245203089 784477460 966971577 248843455 308299511 975311758 988159376 750181073 918697308 717132769 865691765 457316665 598132091 526893897 632279903 453912359 615823393 831858192 940885772 163478319 936005679 554929900 681435717 732160975 758682513 434766617 903411140 760377825 883264800 191497467 538331443 709054768 941658687 503627425 678943986 204039949 622715510 891283958 920683809 543694438 960000747 414210056 761955285 923022861 943016406 876113777 917722360 526719226 803114521 383606165 782726915 928787168 978733038 716078559 825293916 239838239 349114460 372367890 816506846 777885145 930972366 760987903 844764811 89308896 996632525 126009869 645578039 213387335 245807694 863232857 894023172 438296289 853051165 544222822 869990630 902398605 914925139 137632832 315891167 696419543 742515272 194066747 380355374 336730328 794914247 658372495 919991600 315932897 740781383 78725159 741793857 351678465 353313197 650218176 925098932 772031509 990643283 843496463 990991978 64527875 546224583 151146419 645970735 139093104 717178943 60965654 833658503 369214983 775490856 495062905 553422280 371957898 958093561 65288114 375410600 75956664 717779118 6656719 16233236 960019522 961858495 883455551 899071242 229553892 898334680 23464582 38130791 394608851 580749881 371532911 644186873 161319195 829827221 3107546 598696628 323742457 470274953 544589757 841299257 164498255 867242785 475983926 703081929 301162748 480770347 200149292 324265883 466731279 621867145 381090600 948736553 172267850 238659725 449248941 987371012 23851024 372852741 389455862 875615410 600924919 655019853 736552929 935846720 619124774 908039349 686119256 806457714 346125581 944865286 515825474 644757891 343032896 432373470 653888284 843567774 697365620 717612781 856171831 948595474 898386707 979749162 946289084 967460938 650300750 886419998 395345351 451601935 156591403 378719419 434036178 696960387 854725376 893612654 302863264 681240487 912048523 962034134 988402628 990053350 33334872 670837112 932876932 933391640 989036847 995990666 644142372 647132693 826300519 889325211 246165786 386879381 434692082 735083657 243333881 951240073 661575248 915447072 677860327 916602361 319237294 799316866 331957610 718484723 900482025 911180394 393810755 588395131 678057878 723739609 24008878 909936297 96207436 355365789 721627916 895762603 814984823 987168810 416485545 874462256 831726214 921451820 532128805 858835466 678557027 726195982 839389922 895093781 377260965 686222748 365035576 458939548 776942299 812306569 998902862 999035410 839555549 926844375 585016333 953444501 38351690 306744613 80630527 996173721 713263723 821690956 850970205 953910394 644586077 884099861 405118582 822433084 705919189 962191962 998041020 998337567 183752115 277438855 215077413 932465610 497237133 576552664 882332364 930895597 390993855 906329181 776153151 777208296 181124125 497118279 331176851 415451107 189299876 916964117 752670175 828926141 36672826 466044358 470401266 993253051 885621562 896696955 243159651 595299146 683925742 751282697 841019721 980297796 377581461 504003872 734062349 898009318 190571882 314700890 116678120 693806835 816523301 974572737 515621489 751635141 412051121 488316025 239229553 581226581 387927475 683507168 830088299 898693643 934664666 985579331 896489915 945868908 427441385 730798745 208649117 465858691 14887067 968506060 587730572 940528500 977822306 995912891 668718779 920737376 656417137 942828172 649105225 667866577 514623619 717767148 589298176 637511358 746638243 848633186 802002608 994560384 576686380 960853530 453373110 595389749 828398725 987156088 825404990 959116863 917109651 963954345 45507725 475795911 849410725 855843539 901179826 920538013 481365754 687350495 184335191 226347221 980938923 999004730 41096603 474630468 675106477 681882877 340082322 977509875 111652441 847927082 672188590 938997791 380571297 594684659 104257086 623985478 914682561 948046900 234461213 745578961 14257028 98351851 385740138 675786626 815789601 923004501 308426890 934972697 421639323 520425087 574621102 798746791 934469459 943845435 584707914 725678513 590361902 773850874 906701551 953865374 836574618 912269476 348970303 778847891 856547739 995309315 796661639 982049437 410684999 941838678 624245937 772532981 640122780 890102176 206380809 362151378 398656668 695930035 391890441 869234258 769931844 921580054 71873061 233668224 312904480 713543683 898133601 907412179 910722373 997600773 951171071 993581580 34531461 435631141 461912821 953420612 90273155 660328345 517166663 767859534 890672618 958444547 181901648 220859089 455995336 822709817 600100094 773561348 487942776 622888890 625020743 693927234 209692497 463051463 867276302 932386227 678680219 810160514 679099327 763894382 799482789 818650473 22592039 151147855 342832967 810193104 735433758 819946380 40158390 700528606 896610409 992605623 394318634 787585325 653929524 779099642 337180891 488625675 752509908 920789639 919601329 984184117 840750958 888312655 823654059 908618029 744807447 966459760 617320637 779551107 319538869 484279144 117792068 844547414 41216054 566952114 591523479 856370130 398247633 480087118 315154444 462574722 106327649 411314076 976699791 982991193 306163977 602517553 568216907 802735779 154818714 633052435 110665570 927528668 474835223 878356732 982256079 990848831 953924073 957048742 230173983 447531487 92329072 506873544 12101447 356617497 886288365 991571327 904698898 913153259 847485437 918967531 270845132 875025833 908429253 965305080 859732340 899999499 725020953 956977608 926454161 979474396 614878978 921865846 288629428 483940122 165078829 509746142 407175643 532679220 600580355 994931062 905502508 907553741 665489074 854417385 207884785 853718363 154845108 600610793 817328542 991851910 10328926 417834105 665295468 929815202 108646551 300062520 186748815 886154565 681542831 838003795 646298423 897483904 164536699 377947629 602710388 901750359 694738080 872602818 817354343 882980191 64262868 751038116 755431476 768522906 724676210 783301537 954470395 965851389 205610951 329776379 302712297 415892461 329825666 865854544 35600507 643585866 633945540 729515123 296416751 304776859 437112604 491508448 420357100 816591012 190072813 663078319 856058361 961676893 169722016 465614509 374749435 634773093 268456424 762268300 722237067 945055869 607927059 705537602 160744063 315508555 609508028 930937881 574424217 918284809 347659383 710988775 416051390 635291017 919885772 980204621 960758168 970499570 582320903 861647376 722018162 863284253 572324738 804000988 765892459 848999121 467354776 561091064 158946131 799275422 825726459 877312401 193169404 553122498 729677717 934152478 975851890 986637269 522464071 658008137 736139275 956425803 20949054 31576217 966342902 981647987 372172255 461325839 809670692 928023887 672077628 815636066 765445899 983970035 670438062 899542405 290240634 422691007 312531025 359047537 337367016 595912170 150329076 293159623 828690985 941674218 471744676 842252495 530483926 617308060 308251484 671130343 175726104 811303560 793664166 946048198 148919906 825872157 537730905 848405885 527032624 934729900 539711172 730353434 605737989 928077338 245018088 960783555 571152475 924075857 911435976 921720810 844374865 851858739 139698604 394141841 893801671 943260290 329591625 884040033 260303307 553072252 709463939 719335546 540019931 989254754 172601384 748926449 706153441 805091328 689145902 689568049 225735126 859167019 551806395 838414094 795272150 948296818 156173225 600959674 579894366 626880884 656442142 821868454 855819288 941716087 150000290 875465871 680159618 886820979 484084813 955291963 520488713 707737372 946600519 998067148 569803505 787673920 310372320 923464570 823702483 850123964 166352722 598940169 152097438 883991797 727724297 839024402 260780285 816042332 548396318 877011152 435162778 716526100 276397347 948559181 517462510 673859203 139079475 359193714 350788264 619967071 578255208 801869477 894580695 948365245 576466109 777092133 776528799 796744147 200192980 486552821 341666268 402708034 505624832 844842091 918736391 943967051 359470587 560677038 348833029 569860376 324714887 385306630 183013698 398905945 678875011 822267076 579566602 689278612 991392663 998266650 716419001 850137550 781059197 865993231 24132423 715263381 886704739 898347008 322258365 455630127 62037872 797448023 534760316 947396937 381939802 684277782 613455139 847485046 458871413 986079575 152315703 748478886 690453071 975586458 481246363 758909935 901974766 977755050 260721123 852994100 77155347 243483862 508957156 540563875 727756755 987677027 981037716 985408146 812111394 859053095 885324603 953199095 846217451 913718481 607904427 997936223 857300115 884391998 111522973 768600509 961627503 970530906 884487891 987122927 188834686 371288792 631329893 857869867 570037801 723090265 449167966 998025139 575519082 631329397 278429846 784740954 128393850 908490944 68987449 491359849 645301708 951816980 8897141 311373563 823040967 939938523 292088900 911164786 586848072 610367340 584321573 861916585 937816839 970909089 8800548 691681805 770705843 981439319 744963335 840921609 731341434 869352711 315920050 370694208 264914394 340695359 533219335 578571598 289965118 457150404 13428122 781114195 339990047 835502288 547010789 939220287 783153693 819987853 698201497 938850586 503325520 743466442 591723711 726771240 264513747 645333318 443861606 725049022 599315192 827328874 813537625 890949786 983391055 996830780 689558621 879590834 95865308 822875278 567397888 804065801 278616979 762885503 48228943 754197400 182366059 420140520 875312041 971950249 870665189 918044138 919774379 980518986 516989202 523294409 266872627 665708839 687006270 919345924 199559594 571344501 900711967 937048038 942661979 967809629 541449615 922250490 532446913 953657851 428791497 439660946 117981568 317085896 23288021 284330348 260730268 505508091 988796820 998926249 106983510 805210964 932100141 952838021 48208657 722637382 792821569 890770212 137763971 735563482 594768929 903510943 499641163 794356486 546414103 861467434 394755350 658364399 362485744 782986128 193929662 591078551 651893210 841458652 752533802 992221969 538636976 776947805 472892656 824704623 857258956 944470579 601288734 763401408 65014196 415152037 819679158 970363941 452758356 942719809 64306002 774628946 956789215 976496519 148571076 502605499 104605165 729649787 601778193 764088339 228932708 944236248 399956262 559812145 483145569 571485785 439346343 681151280 618827797 830920141 714215419 729770638 691856092 947541819 268712734 371222753 97372222 146175945 772805979 833246677 187908 174560025 651222384 681226864 717848575 953726939 719956901 790847426 526904080 736335751 293404598 934716229 651217971 716092909 470178249 967281272 969798873 978641522 197738513 481900428 791416162 839523242 484435062 493789249 725156251 789869641 380533235 946502454 234965512 339560636 749923864 784603355 59237579 619137637 749787141 963547811 536508749 698132011 583580066 600379764 86392692 233413886 112673994 212190805 724911627 733486364 67686036 737296037 159363031 682433891 888412086 975908782 813313109 971065240 366981419 653291203 424899803 832721087 567047466 830531787 75750738 576966494 844170168 886787159 24786887 493322413 301848787 630737034 466223137 950027228 254979835 858751986 700728866 946470238 666131856 857321341 792303827 833608944 898750656 909735598 631195602 768609509 161815768 812711824 211164429 947719083 940193681 942755902 745047575 855268588 339368918 909064631 812778237 871028178 397789144 456453201 749590946 800709393 498498628 544937929 141638978 266385897 279670767 660462734 905309175 956651881 735562522 794043184 900082782 901010455 143430051 846253752 929172813 944064708 591484790 864088386 307496976 344832749 199381803 998488978 530618558 782220510 312382016 906897839 73572156 933640969 524655229 534501510 589045546 780897342 469709405 959233072 400707588 619979882 870003793 946406555 453121284 530373722 65819123 743196255 90010245 935606472 644142706 777241109 994194567 999749625 656065420 816831469 285959919 556132725 900275370 979994093 185324694 590970723 803354569 989422312 341263885 377390899 160290420 431388233 537060897 616163114 806889924 902148684 22533695 457912735 509757335 535666887 212174992 608825550 122357360 164528819 329520481 559990657 740119390 999924599 307444823 773473381 415667715 426464528 647691474 834208133 434047901 736337103 199073228 565642855 393074025 843294164 195182592 771193922 47648954 881240365 860707647 948293439 803999296 889915001 564581756 679797903 650181358 741603128 96206859 175657224 837701196 902674729 670392909 980515623 77829938 430219153 645907390 658497513 658561012 680748302 394854881 619973196 658975121 875052779 768416284 944595326 285317637 895494335 391863867 664237760 801085980 812261374 26775140 173542213 322503695 851257970 208659419 256772531 80323663 660682724 4738952 317879938 392231860 685920152 965035704 996981313 73624811 791623857 374025397 473545120 394050859 668827766 623618327 816137105 497359851 570488443 172692944 764228094 996970930 999759541 321876718 841327672 248753189 600389700 60670028 704373012 651678149 998285726 845790623 902908283 224827984 320961784 569431967 591186518 923939862 970013432 964903987 977014542 898007418 958596200 739934507 855452360 530999522 914452405 256700107 481667450 24099957 738734647 900580104 968014234 540531172 554739201 763200866 831062221 795760341 890206221 49987039 187505069 423559203 913542124 739455720 946624046 171342694 936016663 924558778 994931224 580496237 862679908 83029180 850044720 490690377 569274620 260045860 267906477 155754154 825798404 787201265 958278471 398857423 625053716 127994380 268799449 320903590 475089697 49103894 79408468 999770596 999854719 439210855 860208775 683414603 710283970 665027037 755415885 925741313 928963047 307808197 338559149 457042843 886373519 470215493 695194120 698924062 937100166 39753062 198304600 398727805 663658506 164391617 207043768 737671882 938803927 445825982 503354439 884832896 886814274 403886235 803282665 941467806 981235496 657300482 714405428 875746185 946589952 706612446 993815547 264786691 788024083 24092939 678935362 532641324 874878223 63632190 883546548 189982562 542503501 924304799 961716468 676004812 798444538 263344142 645463513 65156182 259658870 905901920 906404174 819736794 984471287 188993729 538546119 631040463 824542205 680809848 946600112 157277768 417232439 791655200 979714584 809757339 925904053 951884356 996270457 457031805 604431172 277053320 406082937 785893012 885572754 396780199 691186994 754001774 805615705 190125467 973592517 30341477 137509787 593677131 956331294 14746605 733215951 382015117 738347526 511296327 661275682 81451073 758089158 499064272 728982345 236481250 555635404 682845307 716666756 315362298 648778772 984414101 997955124 12640261 162449649 281745111 727183461 875064102 924756351 806569319 825587575 630070401 882011612 57002055 320151913 495312626 778288036 27146860 882081981 143919479 490819939 652126237 811097383 253720910 571109854 515537920 892282722 527878387 709640641 313390640 451200782 605759376 904165242 481585745 902619876 507054979 597226951 352657942 999251834 944760398 971826742 854002705 919556623 368783615 631821006 254301288 765009781 9289187 824127200 526592140 586025955 357289660 926518701 544094842 758062391 419406577 543362483 352382267 913398613 761009027 820236725 363240901 699336983 764936996 993939666 885847783 965289516 487364286 581758498 940608653 948531829 795033433 912327500 563178295 836701767 377347639 409675575 721699109 862619244 99714334 825578327 766154965 915604636 335846274 667602797 447202960 989797647 843784839 881642452 230487246 350744860 644293454 943768840 539891271 646776322 42157106 217111268 999155149 999322357 278123847 428003343 890600251 907580580 177676265 717140789 592250542 679733811 147390882 686107123 867359414 941474404 910430441 993322108 854481143 861707011 182229353 621871736 658422999 795808315 474437722 893724551 994252854 998328465 812507428 868782689 39624856 490887638 954773834 962818688 789285777 988180364 62434799 843498214 533837086 859092685 429169202 702969151 47732124 48916397 219069079 912041780 581674528 975589337 300248905 392287981 289265401 668332097 426005836 611213199 140055696 821795241 485383842 968259412 464420363 635741004 59432638 185793514 617246193 709821544 377517796 924072581 174905160 295526636 310146524 666242468 541231145 872500128 526896605 855905999 814648781 874915160 294273690 857744433 297760496 311027894 162318848 603881006 432448870 564019362 622070953 856340332 552231969 583003795 870030590 999795504 4645602 634561238 28942754 866355515 804370667 941982628 412836070 765686284 975303877 982920340 883188803 954010690 742247054 876786316 976939717 990914835 276933622 539767424 722247053 900458340 166119601 663009830 77131799 252613826 452578167 963663925 642733298 740187499 133116506 478653684 139405877 319560192 109293302 910676064 760032539 857411377 298254633 572805831 780080129 972708639 656469450 778918806 763671886 916274229 356470794 513005044 503002762 812096354 799964358 835914178 780768403 973877847 142962013 746398956 617982433 847245479 487626810 917216183 608230014 923433600 187550201 295704777 793730642 867908175 422795642 960471070 702220050 773305626 441811944 711031373 7732787 437831910 381984380 578202611 526144691 876526519 694984742 977485655 8822458 143172320 141802499 181178142 9165730 878182640 539692412 962609821 591318667 777557857 827369398 958231915 304525037 681806035 680110137 983641067 125772870 194634378 70369007 920041915 754158376 926884945 990080070 995808508 228125526 603980689 833132856 941173504 758845438 766972848 83784714 126335767 285069716 901529997 717457670 830014140 28827574 473329894 818442854 925997646 642997582 914063464 874149588 953848601 673328009 849671638 601280839 778768301 494669643 738896243 795034007 931812770 618338876 980179991 529257818 854822658 542051975 959273190 536075077 849727900 12598070 254294871 612941965 691941957 819059399 947990102 167168808 324582639 588671575 626181999 546652632 724076131 763650665 836653531 173531381 425563005 789542952 811368772 660118934 959091124 347181737 578877016 69327805 104683785 394298416 646852929 341829421 596177858 474489137 630018244 170091122 552986927 278511013 894574399 524750686 796014851 147132299 975579116 873785105 988149144 759219504 816002868 704116578 709051507 914165507 919464369 513864384 857347765 606887508 634488098 658283315 829131427 372923701 940304389 56823427 579724766 424065050 490933561 450841340 811319676 90227587 98748223 376373150 913484654 31695963 597748305 632467158 835226082 700470449 733626843 759952389 811822601 88627253 166675796 778925029 902443227 650770499 954033506 726535095 798435941 228653635 254716351 861962652 922313244 597614628 711044076 886235153 910120067 152680196 740336412 973246770 978411885 10707543 764888109 642804526 734567834 411523103 888003426 641713492 872728779 697747506 991376154 70631332 775411102 511533167 830087146 228114571 408487076 394958338 458590931 811016405 915088519 362353222 522538257 950114530 989689132 379516809 544268474 935267475 956864024 972904332 993448913 568976098 649445370 969735192 992854335 658892261 900712084 424440165 579608603 684865177 888331597 464274236 514237067 901412661 948145260 424855601 831610325 802723999 898213259 112407433 824253112 934904569 949975220 973340806 992906992 748081314 771932846 576425023 822682228 958863622 962877987 895331488 951560212 705245585 859443992 756691728 968402652 417117968 569132881 110490228 161170726 88861603 479009857 194013946 750505851 456695786 833954238 313408797 720599307 350981857 934250298 718338718 970710701 523612785 924634564 780467166 858906034 69258116 728873824 596419075 711668863 931418530 954804403 296528193 575898912 48394852 122892785 337968512 675768330 962144757 999506786 461499199 665944229 176053683 858223861 579941033 677377525 597024462 675980093 579740843 666245319 708092505 929592770 541286572 715172629 502303979 756350819 637153853 644697835 526440641 686850093 836671433 914669735 980382323 995773412 345249621 963813289 433209721 842224499 445393665 921995905 920139969 964064972 708080617 820287470 960145086 983162341 833254405 891540636 33776202 977755895 701773793 944314517 737178425 845081290 532865878 630824891 650567896 962995239 568314955 858246320 373837595 513249042 1337661 846374160 706473705 818515243 240956608 692059453 550720310 966819718 138304395 643621648 26139383 476436319 576572112 810884520 38150832 324731739 878088133 995410940 680994679 740709615 316255133 364065029 77004983 471102045 922145181 977382171 853299794 874096780 503619380 905328070 670562123 857079351 883673544 999901897 481788451 608749311 525074109 762355589 226471252 495007720 315874097 657109999 892992677 920118610 596327131 737670223 991128501 993866363 63775187 892677399 696402053 699018550 190934241 996566989 901000725 913691363 727747055 929306461 78771930 807816392 282690943 638044232 50905345 198482063 848462582 978715965 43760772 521102235 663107551 942300879 241907178 419621385 868041208 996747976 614248906 914287712 512834470 849980026 109461297 689951087 436541113 900856546 485256690 886046553 834803040 933125374 677802341 924166445 214914209 380055112 590614249 905385265 794172624 868584321 746313621 782545179 552799095 703513579 291129249 830319538 382260742 808150265 643949380 890124795 732564633 887994005 3635344 938402398 573266255 740257320 192224482 871783008 370358749 403804407 841954313 909570087 430830908 883689295 882920774 979443231 42013513 137997501 177702869 695042915 258029167 482021315 649092245 717150542 621337904 689115486 983878418 985178235 529693842 945062914 246942454 988360057 701411087 904823514 828067942 875768503 871338476 876659020 528183979 726944459 234628713 987911691 630175665 724291795 3938073 927670504 263931824 394820329 43532601 850191782 278255476 628856232 457754210 891398290 776101784 828548689 247518197 438333002 953400102 978549142 381227146 739712609 165442851 526071277 119688071 884036497 783288161 804707556 732339970 736575186 548825036 568225305 79792970 555170786 803613838 892555390 64257463 531366632 860839639 883899603 220083519 717266509 411249776 980579457 693585581 784434902 472791689 993091412 33627926 775058472 319576644 876884049 278844315 465754818 618807867 625232966 962463155 966869307 673019474 760855073 244447171 461129422 16699714 345690293 107229034 765492233 47552137 937232760 541990398 740137692 144234845 368325891 712274757 736813799 45534220 944911518 697914088 935002567 887310158 891715101 887483513 936462222 114798306 335483437 476573940 596684037 888528075 935127310 601288692 876901616 193927747 356379740 103565821 876082136 293539503 961809494 515647050 909185399 553558184 565158225 164399282 893153922 692311982 828972101 944875398 956109714 521384178 703315991 344582060 395158969 403766354 823591234 435302430 486982854 835222754 883682172 595066369 643046187 473124419 871605979 996222558 996776011 692564647 787332548 277285724 478814464 435363883 527612909 787999998 810747490 824916595 861301365 667697746 999181218 162587185 761977111 182182888 428857624 744972998 830520146 391454367 810258163 760645269 891222460 996122991 998228706 822674134 845529456 626921356 792255750 432125156 661761795 271578217 617013582 500565162 724248374 386072055 606542642 286536081 650295453 230151522 774130443 790815917 961167354 268163185 525072428 677491047 778008000 962703948 997668008 160737990 193264820 968672731 991463404 649264028 661396447 216478043 778430957 296308977 686729960 490960441 520273529 368345706 516433367 809844747 930955869 228000204 974392253 901847694 944477050 653386257 672642752 29963658 38823647 294834392 880428119 857064720 917215019 858727121 990146542 375656760 622398454 831536967 979711399 780244575 863935373 959655967 991914320 718814606 848092622 138886305 897915110 190396420 522728885 927535513 994061274 819001325 987189800 631966273 847217200 403668742 468748710 547181377 988656606 385550608 612513372 553369519 899095134 768091883 937857568 725862365 798819695 249389568 523888680 767082765 779668348 239170502 255871105 216930865 236718502 948159526 951355135 980618196 997653355 909673699 943953897 691417287 711430655 897164553 911759072 98731090 251924955 793327350 826102888 955830871 999065976 855060346 874809026 496829318 631277831 44464513 359798404 493128981 752620004 624289655 899111178 539946578 930471755 399674277 574336182 867559635 889945632 123778118 184464120 697172159 879767121 572445082 802593752 843329016 932294957 206625818 567818926 91264313 280692658 59445776 558990588 636795761 675827155 173155496 260030178 870816196 907770704 751734942 789188143 734683210 778633543 666220 232487464 52834499 718854023 717935311 993693807 24407967 679593739 124429916 527413776 838719167 962184446 281872810 708564505 699573281 955981552 547982152 904116317 261454740 312062294 254547232 893789272 728686857 941191127 903833041 947074492 279803274 546151364 940430009 997160045 953613957 957365931 607262276 867873099 886912380 996398766 81924569 440844078 713509866 775461150 746430640 784971043 797042664 842854821 452027611 853249829 333003012 983536938 62081223 141600566 113304364 654330404 807035166 825859404 534763829 542255401 803546523 866952294 483543380 735544600 694603788 944109340 171194715 542932087 848636882 989413013 279864900 764215126 50448340 985418465 469914955 720142119 928756380 982673175 97977891 514340901 429197019 447536815 28860017 222158943 858021306 899912268 516224111 824521803 557920301 651713430 706828046 869641945 65450962 225698041 498848815 983442349 125488191 525254828 171816508 576602636 628138014 972601070 410674769 412694960 917686381 941542782 579714245 674644253 645569201 890785996 293213831 783194798 928515088 970908648 920218061 941480972 859909961 932369399 174405015 911959597 217287420 217981128 475098224 630312756 298974404 851340042 486178054 811434210 124470412 404600371 761454199 781475456 326233522 711824743 117895894 454563247 340115820 398897199 402022974 924969480 742733958 746883917 19816702 430138978 877259800 980710884 850012331 850317809 981533001 992730251 313487759 796537143 62839592 679286293 132969687 675071248 124510499 801037228 662120146 957206945 690982559 708030663 746598737 845262602 714906431 924925853 347817753 864873237 61936185 782457970 248997077 421062199 253164739 690493018 988878632 991091559 312461985 934144741 879546553 989139773 955337775 971427459 671450497 969973394 80902791 457051474 391116302 756388201 862134922 904175618 450717569 989499316 613743372 893169374 351571134 678614476 59526093 317668833 161500391 804089316 131073474 700824397 556264871 948404279 98047853 543199031 876687965 990039698 689441535 966304762 529208947 727616591 41676272 981131824 206739813 602473602 158410464 712713441 65688779 990359026 803222902 822560950 469833252 503337245 486773528 576947449 513728089 763381124 462400646 571602893 696743031 742334734 595546291 926741015 904747652 933008881 200799015 396115678 522347237 854233337 923463396 992556480 642539644 940926564 33997774 937646474 140613789 938348134 837251051 843459596 289370803 654791206 973421034 978779895 766271959 772052494 51925684 167959440 530727377 935321749 372954304 881331202 233493477 831731868 295779813 367200182 251093514 281848554 745784129 939302385 722436639 940567656 306360494 749542072 931820272 978905584 537368032 698225548 288371203 738631330 574308464 583308265 927127251 980939122 444380200 954372999 345295404 607293866 1567567 65318559 84642388 117639568 638716967 754981197 613903374 879181677 323763850 591555892 580682401 664118292 523634106 599728466 419985630 495744728 194108124 322546272 667497143 753329789 963980277 995514745 92321476 433703925 682804687 904226569 351531303 933981896 145255191 416780563 948873061 981022886 358599213 437194345 528769686 741438140 142603050 724512000 579782510 883116940 749213035 998740492 242853968 777058439 762321793 924413920 966527400 985764599 650186952 906928457 880421665 984927492 953596991 967893609 765420584 799310274 114524112 555367599 312098378 526157916 392597817 469630408 91879709 209449090 301527288 805452076 699139267 991471526 225086954 517025373 149523425 809406825 494169155 989516583 515453840 701018155 151440810 497064507 854988731 864243450 892728854 989813583 892643869 906441749 380506280 450124779 465224896 832784661 166879344 332907426 436240741 617207721 632912589 912633151 25396429 97501479 909602121 928263631 726704100 810976482 345920980 378346576 531978264 580953734 951602356 972510174 673010093 801962485 273482320 887896806 734860323 993613006 497431055 611001998 975469534 975511250 916323599 954061075 324636763 745070849 330096433 892406960 832056220 929919167 180179968 269052397 10274854 801739912 591175495 679657842 296697086 719721413 437813784 655095917 625753048 749038804 537458006 691369623 161015928 317348613 679456337 713715032 537823708 839591486 398498783 959647967 176731924 448806040 873798244 993420466 867864780 921997159 448695755 528078887 322125872 952631760 100778210 774849256 413242633 889334431 483628827 874136253 252670168 352292980 351397202 685716816 983874162 987335408 782363971 883240585 946075274 958449677 979724875 997494144 233664839 921542916 323624057 703342419 890331595 896473316 87133560 612907318 573687693 930645403 74105073 87012947 906210913 998788415 853336594 992598544 875979754 991027140 705738089 799920909 513193777 767448578 415262834 721895850 460976478 489819291 94833145 777709023 985262111 997651137 512987331 748400590 910153261 975552662 549379676 979417221 530882852 802232123 543814401 998894739 702562843 732543427 898054823 987150629 306317154 964250773 876501138 940484297 375228458 687829737 153735814 989082431 309510416 680602490 138159097 626187274 579865514 585295926 58830446 536018434 475022500 735885073 911886978 921737809 359540234 947600490 484136609 856802684 617669512 767824501 378617053 586911278 304649835 632123329 134437082 365992203 848248261 950512348 675510326 746272908 570478600 757316751 760056124 825725573 365848880 993628615 464513304 879671189 646649680 693097200 309426394 459118474 34904023 983918446 348824537 598349247 977215430 977511360 818475443 829236526 464871441 782851099 873350095 902385822 369456219 473471302 508809582 523958777 166536142 748879612 304624442 752850392 192084557 819574400 710711075 774144733 780606538 924497780 207779320 781822901 306402834 752175965 339152617 428549548 995594645 999130021 321577777 996753821 564568988 778924337 489108326 867679927 932023068 940180482 275880833 597385106 26686701 770586040 199819338 533403475 787045255 797273270 777897826 858524816 27292100 218399014 332939676 499671828 931306390 936332768 723691009 958755094 717773258 899743247 195443290 313630552 482275303 530040289 358511029 895798454 851108398 858577982 769407298 809370722 465895151 523702122 928155656 991892093 942446130 979276119 249094865 535344967 874286642 949898039 139569361 496274587 741870068 770107551 310326272 752222034 156053867 543488245 434286135 949050010 308641562 838391712 534301953 964194541 269226241 834526516 801360117 871781514 785178430 955183519 2641972 627547445 870897634 938441870 377200308 631010313 100526115 552252332 280764691 578561333 376111920 978267177 538065626 930882211 418131876 861273616 667401871 815772576 497911403 723136054 774396201 835244017 530419485 624480107 846722516 997871248 411906835 859113859 345570446 560527905 417702593 418670813 721402161 816332766 798087914 799873066 937348192 979386961 137295144 378949877 181075071 532082217 12500595 804488563 60029609 585946769 582588184 769964559 781650179 830279349 837078434 842758356 437769318 956580136 984719472 986289426 731925811 860180620 70970090 924854225 573440412 781214761 510147849 972826275 794616719 865073286 969838303 991898129 387515843 535673156 461908145 504192175 770368652 936106812 228110819 930859158 949669209 966481413 345991737 606619104 290929515 869201354 640434196 733410160 487387427 998823917 180935088 782908876 530780243 636680969 248308268 806528323 648671611 744894461 24137732 670003510 918267119 961735236 836455586 968058412 695485172 925209686 434836937 763057481 934026261 940760454 744985194 801781997 666013284 976217512 505778725 615300024 964811679 978330744 311000899 727359956 477004953 853270505 259495825 946399583 968600767 995689345 763322305 865406460 839651737 854875758 333377626 648561223 78732060 782787106 494166143 903422946 590784899 641637294 766780416 911252223 706012636 851421432 463735014 789400198 418994570 823049475 481554435 601997855 320832369 363304405 248010978 419788334 732161804 842166851 429064284 828470455 896403320 969033116 526077411 760290313 979191596 998016287 554497782 703747024 950512734 989397745 257642766 917173025 667977385 678064144 329606067 853736349 307939517 496549104 19317076 382657271 533636805 661106293 272461196 272632646 522924188 611981035 45499533 892961672 56466494 745108550 848890729 978094681 324895108 475838573 812723358 831388255 504461308 623685382 726719551 849821460 243516396 887045553 792827575 977300729 412771662 854643530 6061800 265738918 791523654 930060624 598038920 612308390 385787122 818604374 438464409 737961495 643350530 849652479 179167780 594138224 6374956 602569977 190886078 979254247 459472730 750853156 841569282 843625934 265059598 489248158 617890297 775889037 346393045 990478071 388762126 553202272 391389616 628360910 310321647 442943281 745041828 935973329 469744978 472122661 117590486 618123120 444706075 827964009 780772567 814937099 181075086 788395982 233489246 350660526 694771907 939562992 511476455 848924383 517262416 592956006 534441066 980836312 831240147 988088307 805987501 871800780 349409969 596867859 299125258 564184574 411630622 676182606 269505259 346396949 597082216 600794936 994252630 996183239 797351524 980492156 881013801 957762493 198251619 626573986 313792418 859653457 712559517 735780948 472700693 594682931 601086588 884707303 389951314 777544124 822719457 984863342 732052803 889350136 465891196 979071514 584507993 856040505 886011940 951532844 561919253 831816941 173345881 622153792 328129992 491309686 972052271 998929532 743663218 803297847 101874352 721528362 818045101 849728316 564071395 864016564 487238269 745583602 809948604 929537162 367460773 879716733 74856773 722762416 568637413 802449683 664436286 980028025 468095586 609519343 616747195 839450194 52041078 557419966 80606051 237050115 282614279 867176631 51660685 957483352 839648705 974089176 134890590 386527754 249026633 930805475 874003002 895853502 960472450 983291058 241000328 285263482 95146540 877064405 850092653 997979965 992688045 996358678 983796694 984320858 743966202 790359918 786322819 880113464 15137662 161870064 719095712 821558632 486151958 847420101 960627785 998094976 662453476 780823754 745173774 846487062 411462747 432649606 897213250 933170113 734777475 903797858 210079125 925476970 397100580 966989998 994886748 997260551 823209375 916428374 844414623 904814256 190294448 499890657 951740614 970905606 895169462 946073996 938522422 944615446 146372063 344570582 172882946 666648795 481631159 682455851 196256980 833172609 568346367 956998061 929387248 987764437 110172965 977218443 397530831 622363543 199396680 513709928 389819915 599159963 559301341 571283699 238142631 883315535 145550543 639718671 318210918 758457708 716721563 759277791 361152725 709075133 198263747 734916515 913014637 958377561 593819769 943096673 426188811 642116524 866066744 868935181 575660248 800242955 83954528 390526344 396493121 704434794 768407442 825102894 271115821 321230622 519939244 633220471 272431078 796978092 921602741 996272243 534368444 654201586 160145134 594889459 126014538 422152398 615211333 976115230 896023622 945467815 18836400 499420007 365805751 554435484 280413958 886726095 303789516 740385762 929371993 950216963 330668356 621223684 613275962 729390697 131092615 192639626 594156378 956579864 358689132 616547575 961476678 986637837 193016010 623961408 163518984 972365014 10892434 650734381 814509314 854141703 191524929 544635073 573492276 998569963 127214020 315545152 952638063 971458397 129091683 851723923 193610013 427507207 117613369 834210984 134132145 317251213 186737144 455156530 340158205 350156278 192102881 300844903 753640684 764322367 546161274 701485354 950030940 962689890 769720246 983047503 852167011 901309692 129221849 898960029 964439448 970375757 222082743 337337549 526419482 604276273 334863291 862800678 571431859 795256818 166988378 630807298 242880552 955662420 336182112 381990430 656816846 715618978 77931965 322577664 193899914 844330063 802187044 874681680 689737230 883179802 799254975 960609491 455352235 919945142 12750019 363273415 15879824 391509890 429024143 513355180 293120087 661855588 137852264 875922546 575900555 946438355 596524624 826619946 483024185 940767715 420635410 740481561 269681808 574949309 702257762 763082604 529608436 933619944 662906793 966112510 59961357 677298267 400919264 928369622 836959118 911104921 999612872 999767144 481282666 794670812 167038215 460777502 92553862 312821469 303953295 958416664 828615916 830175184 107620141 786978175 462622027 759673928 346251485 596782485 859016530 989334504 391010545 790746653 754034779 816414606 443716263 873120548 611129361 659259454 106884929 897808673 13215766 423943574 707900632 793217024 677669940 975104399 820515848 850891608 93723227 199591165 246330933 667991922 545784272 751068927 827086204 867787641 1069998 40827355 938470482 943842741 963047711 985631255 127942989 431784050 550437380 691099652 245414080 262566480 582172437 845061808 954453189 972401686 186694118 383709582 562559558 977195718 913650290 955620330 119955209 516814668 866286676 924999761 120132463 804600015 519925582 918881217 846774377 893295691 357576335 821055694 63292996 635937589 87337070 307880518 1331259 861319201 605992186 906483024 192802856 347802620 486977619 731837403 356481393 464267515 414705616 978089888 761572241 920256260 586929212 657813324 374645057 585709183 959982517 974232754 909401921 963454139 69521457 611432101 397597928 827534180 656151016 794501130 658503794 831687407 760632680 812941358 262386536 809868330 526165689 710121823 320302312 831585855 516919231 918055489 173268298 637258110 421725896 756152393 630751980 634029191 659455586 813758866 909865052 968578566 554096101 602643355 245070562 771592900 178822153 905310521 618920994 626290604 622535270 968917145 597129821 719658689 648915789 996172034 949340737 953004566 335430151 693538739 265489547 899941097 398409699 589076095 422192473 470007755 925735906 940642666 484535329 960676978 658959167 953577671 973712165 984968031 614593212 858232952 59124914 485266072 89345975 734903254 364674612 523101955 530213745 821774758 626689236 921914595 21766298 995693188 421487612 593966392 186119766 828510712 398194029 815887767 287172164 978308734 666742043 925718781 542360982 927725046 226045170 855574073 217947366 371687977 350363958 572902293 873086309 909193503 620369177 940482921 191917185 669187275 770972256 881682948 940761569 946028691 734448294 976444925 736802117 763215696 350502454 506983984 269411984 593789689 959024112 970304686 446883361 901457300 474077158 911401042 318500833 608067481 368821236 886433378 139776489 942628077 692671976 881683627 793461353 904493867 702374947 989372673 534034456 696857149 512091615 728644336 946878179 949853902 805780836 850552990 932643513 950429701 45195365 509799145 262158886 399290527 754359048 845301846 151683378 283534032 784439027 884525047 106899099 411032822 57590397 263853025 233277996 301587619 246724215 505967110 115627585 700132530 595818518 784137166 203449781 541643050 836525833 857807825 915449041 958275351 339938052 555433416 430345312 510295935 958714880 978950527 79107358 420359713 560573970 966149775 936111440 981820066 49371916 131057939 337861572 361513964 379349904 906995984 579322195 713566008 453914512 607343433 861605879 952458261 358439564 854438561 458638818 690699476 209981648 440083914 171265925 354140451 556151429 998096279 182156199 741059863 278354723 841810507 701406969 842642874 782588642 982047365 669059450 681992783 95985642 943156432 930162218 987263907 240132816 931983599 525050884 985031942 723815187 972959935 474557417 957261678 101813985 633841004 355313620 686227950 316556672 647558253 247038966 337330576 905824341 974705720 676785482 855958455 394473224 677541399 366495124 627090093 942022534 985903185 156587820 780797384 386639019 607536875 807028272 892292436 507490762 897865050 406802731 706917359 723844567 871445750 626944871 776667090 418443833 753566307 775798285 870004037 595904925 995579466 821833998 935317651 926653609 956024774 967155804 986355303 14748142 336201029 750033877 805513328 602352349 624325128 595715045 633573690 179702197 694407549 266342003 587522615 254600636 889188374 496784202 710855591 181358238 495048886 172410715 617269936 647797769 762772866 881656484 958445767 565591020 893171514 210191597 217903596 446711067 589189068 722699906 900020197 67526518 424768766 132797812 363729708 419606405 767312883 9765221 278161627 884697494 895731346 298616137 419832148 874719420 939409082 90033057 455139084 312455122 654900070 362423856 383934671 165653714 934911167 535670801 994842590 790843231 942792330 425059922 596586399 748137198 934319045 152769890 520990302 500324977 561139429 928251246 976532204 73006074 427084236 379995836 621153567 621631514 976176576 677826568 921349238 963745446 973025451 181617526 335858729 325199872 966130817 140675705 813120587 859183088 947211870 860678475 899202721 549097019 792716872 45812885 856952792 466473852 801729877 895262125 994900068 254553368 602876695 508237228 749121890 497208096 779899661 87995425 732570978 293420425 297821985 527413509 757683674 539753727 671974513 10294506 524271516 780166702 856408587 682989206 715053723 655501146 864020537 52417410 356167365 750778299 809788503 444971352 724027146 459669554 548552319 265411100 977167647 168804949 416453798 263764472 346849214 299996975 946601511 893789624 940660014 666800311 965769320 134628722 863360969 238924734 390958548 187766705 299730580 948734828 979089162 673791520 919450266 476653865 571070953 397730741 496721189 985244168 987006309 696709631 819310771 553963770 676013581 70681394 265584603 398042615 586130301 626401997 635046043 595096811 836070660 386163412 934222069 25909274 116887626 10664023 338121077 341614857 371627064 564702421 923295885 8502629 93388515 952832511 998234464 276989928 733156133 422104184 827742780 787487382 979899948 537550971 792178197 536421081 578913048 215257009 300896527 856635079 861263062 811330147 937150970 133178430 316405231 970758699 988971310 823218429 835092095 760004318 872670536 325399493 555084133 2074705 384694437 597764113 791078057 980002288 998488839 986112739 999446092 201230157 535351774 446781294 991731028 5516200 821713147 867170078 975637010 530264830 845879756 427579142 913504816 974096976 989036456 774646923 959036417 558909008 727780301 67631881 259839972 800901114 931905119 501864594 726821013 425876337 762593493 425790220 443879573 744505513 913820582 308343270 565857055 123513057 900411019 914429635 928720390 307152269 423554987 824003211 926443037 712174811 746272092 742060811 891480180 375343578 762412564 805433163 925369042 985862994 997779186 367994589 457017573 291473277 409737640 649896671 971813094 443097737 983307023 887555478 921918041 544202538 677794501 382829429 462708268 263681359 891126819 630182898 721326864 238627435 971349963 340825997 962370638 949218014 975091301 793415289 803615982 905705038 989454036 10935810 604055158 286135512 725939454 932370995 966918965 710297267 725488134 577016849 703639341 889644239 891048026 243922185 673991925 46030900 83118918 848519807 966900476 469095038 788691771 668503808 784073386 155089032 707435899 508769622 889995642 468862586 693296071 323517083 876987651 362078095 780256413 601869526 822440027 583657699 666905481 297085694 310541154 367259242 533177415 728112288 823197366 697405384 939591350 646796566 864307434 397725423 496256802 632169222 728401349 970419560 994372003 161472411 866087740 972767432 990513385 711284021 939791935 388549289 725563011 78046182 346372691 766043627 794833540 523883195 781763938 179726532 993270128 945791096 983221547 744731193 936139875 574525408 638383100 726366641 928939922 348430642 532588854 609668535 812302553 887281998 921441861 46234239 785243136 987532096 997031669 713842665 942607483 80863239 266378855 205165212 687953992 487480856 991934778 8771391 522082414 265770309 717757347 137204328 595485974 57841691 682335970 121868684 304016596 786417641 946752123 735280136 820962682 837260116 908275167 928481418 967537424 47403647 323043390 430844326 768844063 933363396 993187201 444536574 568616642 737115140 851691462 829493966 983120363 278365908 616439630 328635511 971861214 45748181 499082056 668755398 833523955 923412563 990880857 917192195 986290856 678193559 743309253 638260604 757090772 855217618 981592474 379161617 590205979 896684703 902861703 168465574 281608613 405396591 696858089 347977443 951138828 172348130 197602503 712667926 971470008 587872535 831459294 774431265 927733601 451929206 723020002 791004728 827387845 567502316 945445779 533157277 750595588 951924464 980118890 122639441 310636807 307108213 790057761 768715265 837670392 553756196 713887326 140608105 494129232 677374262 746969059 177244677 886629886 127078189 959491701 336133466 889727202 394877931 935775647 651207586 658424874 339263974 765807369 472564227 763858116 898438271 932441644 125587467 418686184 883035842 906069988 493096111 738598646 712026074 769271809 410936682 466904417 709320545 809809467 263218974 908193133 728042728 791432375 813272047 995428045 614957671 905879934 413661648 663309929 543125835 909506841 660883284 946844484 262400983 725019944 413519353 955426763 942816334 944672702 351495031 711957120 406723461 773444126 568979724 916162620 653387510 828864620 414979088 701434894 820038926 927643610 267098996 678421363 178074571 776894827 967841335 988422371 874997505 898697606 212501296 355691384 854359239 992289199 887622655 918977586 204766974 960884729 351392906 406078798 13381586 866648682 488891720 684876753 571219736 647688131 569652945 918516036 107293667 667546108 845112649 925420593 866923278 913225326 966685033 985143442 927467353 934795038 283049803 988887422 196434584 795921782 560362966 842638251 951859427 966220918 214725672 299390552 387051833 903027333 571742131 635653894 603979790 919160453 414054841 581435532 720917339 807936737 572313320 580528434 406461399 631122335 564358784 976120557 283169818 885290925 391305190 761538263 238200578 677300220 572129203 766255997 776799577 880116903 853616994 947749185 799161150 942003008 2066384 799193067 40222942 975340574 457101177 948224118 261188533 961776665 785620098 860376915 228736902 445776931 911355281 920821829 176580710 910762334 671536217 715239093 116055702 216911237 495348122 680322155 623481148 849053948 55002231 169983811 806904886 868993363 590141982 701432064 253241432 710852702 253076191 849952516 237972530 507967416 775024046 834521718 427743671 575552568 62417361 987602795 597558141 901387855 939007405 993033345 846367266 852524999 714137141 944677004 315367486 713806122 596567932 688287583 939104594 946290168 342757553 693245023 977452346 986651932 43784891 317303261 958788718 986394278 308717019 950478154 346148207 722947100 491253609 500956839 670108948 790351281 762115050 786210606 909800813 965269172 241168157 491717768 490394648 929369289 740641801 900842164 80826569 415850606 650615548 809167459 891566666 961953407 697813079 931429168 845117877 897086136 939859313 964715893 597426996 997727607 642522548 885150791 117537354 136449813 584473589 990768173 746385552 901769800 93818975 680849706 875757263 919854949 820269012 969782914 9791913 498473944 675310011 988683934 562274117 751551345 867572967 878180378 867014919 898563594 987187787 997698598 423183741 922189377 33207453 790491824 604005111 633675272 254145368 889549826 93468563 977750535 599800688 748952490 66662310 331772425 285202746 418130023 568123726 734066573 151257291 296563164 550030215 660624900 457833143 670733536 997959079 998964798 380035290 712650978 284211080 294817986 535814240 658986438 353298221 923432590 118171120 806527591 307432427 722928156 562299139 567005580 525609047 987950423 871822303 960913908 925702758 948264684 465632368 622544664 986210785 987354391 357288643 824919379 655789236 875893752 354425684 705400693 98789243 771713403 781483893 932655394 195874288 744315527 677513237 811834067 994858343 994879987 531448021 892956611 188915139 338260083 642004682 816913280 20122343 625368554 445168128 609024772 51298148 692588534 349988774 436435013 623497612 798007557 67459517 558098759 420127917 944495796 963716369 978595385 742011170 808100548 9150401 269067382 335300083 668216545 935961619 947766790 224339806 956452104 669512007 746032753 153824891 683879603 239325942 927723890 104074308 407846797 672937547 984412349 461612231 986701491 304686591 453805050 679707044 736746866 449231123 881601931 169348472 558227947 447698020 455264291 314996960 757355805 611900771 732580278 775358567 802953525 725568846 932608155 582965678 680415567 34814491 499324386 934821640 976280764 752324264 839288914 126347428 473438363 996197555 998806376 679988078 995194258 948618335 960395779 589271654 752616218 800281467 874681860 249713363 302257508 732394513 746147892 127626742 804872514 715780201 987839559 857718622 998672850 670852319 772242515 976634602 978438930 368709335 679121963 4418276 411552524 834738055 972242064 932295351 981098480 81509517 147846245 129543285 249786850 569004594 849784053 861554539 928886000 525966969 844303881 450693561 952087374 819056365 882213679 857082626 876930115 380440565 855353529 188990776 453650937 293356872 460262964 337001121 476480581 381545760 799008546 593315294 867058291 583339338 783402882 447315921 759862530 719025425 955198094 690976254 798168707 251325814 551005431 76567809 542901972 695378316 702569201 784102431 840501242 117096506 674242759 504120569 962888450 512902846 669927428 175653356 969383360 798407937 827443147 490717923 696960210 718986343 819169381 593576829 622961139 127445007 487086085 238609525 461850374 663300849 695005641 482811382 748089431 676262750 844388337 796261932 985336035 259703246 580397826 135167588 963672719 922432358 985402782 778552256 989647530 959739807 968437962 383566769 777140377 144383883 974022267 191939011 392665380 35440951 439916736 134849217 890812467 726396704 780419194 606927812 620559784 968697327 975416933 246423644 829707308 428842868 985714950 202486246 254055216 387647357 500597975 559706584 636842916 311480483 644207935 168741668 975502088 118631444 492110336 834121279 954291150 860542401 999654195 273663463 960971401 570454174 939754332 505906981 997138127 737132371 905068831 526774814 546485276 272877160 652527237 515703671 622186231 550098307 907422982 723399930 868960334 909746442 970493359 669733746 805175141 176270831 331840387 54618834 188419459 962241376 963864205 590186777 771600885 982059989 994146628 866099598 989415957 622748752 651540673 530885662 679103332 467021347 664054397 59276585 427689710 10113526 351515913 89391754 683931658 84484130 84908541 430893204 788926150 619376114 707046919 627064447 663912694 114927939 892241895 632404937 800122196 541954019 978019925 684015037 960967987 50998291 907655981 255983626 484361851 1597588 471238738 706069801 770117515 983919525 992644728 349991960 662854447 561288096 607351496 88970733 539196942 760047122 766069812 595216061 710209357 457059524 796623920 321514845 393069600 437051031 475797645 412448645 711964967 187025082 627194408 965843368 997357791 640615811 674814202 406879129 814297083 79741481 813152256 826655766 857441994 946405870 958179226 883172819 969768403 380207762 876909483 875474148 996187192 502598723 921478942 547159903 894403773 986579706 991001924 574087033 893224686 237967475 529858927 907271997 963614080 755345371 922447005 226184131 483720262 259591778 812388297 681176666 821235500 594101703 745378426 558097238 921741027 310987798 581405690 669859657 946353850 173626953 649603561 403702549 404563479 135100718 464722515 428590832 977439581 539649986 936064645 807845507 927743380 965703185 986732537 952256605 970772326 230653747 477846414 742593963 843043249 245871920 664917687 421498732 929243508 330681909 638986022 450996123 852321795 113245967 211670629 867443415 886333165 674540759 943725472 544472103 823295361 562872936 631679394 779280153 952660613 259500972 706897139 806010768 906207586 153121044 193253570 777751646 859785515 116748933 993960902 274924430 567843290 210329868 843882142 373232110 946700135 833097937 838231184 481004591 726644327 259541698 768848530 971145506 987406533 350678540 795424340 20724801 711512967 677686301 759904996 111811754 639565210 88679450 424045203 865684553 996688211 774887974 856458609 171228718 318843767 921146852 944238054 598451930 990368641 921266469 977958078 474434497 809487689 231806604 454582407 194345958 456454350 27153549 909768705 263070135 700314783 892650365 943363942 996782434 998089112 911496688 963017295 581141330 586177861 264279411 304124237 892358106 893008183 791606662 944394787 190861060 966075107 927421404 944329175 38433553 213835432 901206570 935709953 315151989 610110823 624745481 914703544 287819757 815982124 236164441 388485611 826154036 959165476 640388804 717066801 224710394 301326147 443141221 479692620 645368846 807597964 686398200 962501604 428199631 681174355 892254569 906930294 657123554 830713147 405458022 737134547 506020826 783286739 754697325 917932000 690614924 973474458 514491051 998293806 945606433 975379824 984415802 994988615 707670810 811484989 504021931 758796824 61443235 531129343 894072534 952595681 920798790 973689634 132461928 910715740 59854026 386840226 662736077 808846764 576724733 812284615 821631573 875952347 34913884 456352901 856549915 941760890 83251078 936991724 573305400 925330985 38357668 280622869 478769922 905598002 201525411 861330716 888852030 945416630 859519504 952419202 542672933 640884934 551392684 574500725 896619707 899041259 677345480 979851152 114198999 422309896 931110793 989407861 370947061 740172636 508704911 887323797 892194735 970229366 836646743 883459347 309224227 990452578 543941301 966769638 532679650 859964688 196547505 528379540 847367342 976852574 803477849 911269095 378892534 874537843 6770142 330704372 495748472 814098380 859717263 882941099 605450719 978907149 480083974 789073533 795584741 833836203 500442915 517589741 611283913 808376315 680595519 941168351 927758453 940458866 698959403 822641667 775456242 942979857 424306355 983692563 968056049 979006837 491565723 996106775 898103508 934184818 74206289 695602361 765763869 958994986 714727180 892425988 243527217 408179296 543251555 595609857 393331482 768578936 246732496 668506416 353316231 760457999 603775651 735762552 300406446 481374037 10601348 691255176 56699508 495453430 595225801 690239621 621364687 945003793 813072395 917165997 253034015 574112827 166185257 297191335 155431913 569606990 950236972 978518010 353378654 639108366 529953652 726479295 780485192 885460168 619413198 738346590 145557794 429749841 658080659 899418673 321096201 993690906 728279422 922553904 7332386 155896432 278386405 701525642 492443983 892438763 164527290 305832314 547866053 888817632 691572637 872196105 666240559 810201646 720298051 769939919 206249654 607590727 239802787 277870553 235504539 639366730 77968325 907840661 329196222 346495905 15694431 907743042 192398101 948842867 401031695 631795953 315600388 867774987 561916101 929911910 342406296 521198894 85463203 414854117 356355601 784838116 747967233 910948597 289223313 908635262 775597167 829205578 891317751 903314006 722209778 784464136 167542329 589560752 778838238 927517028 930016043 988100891 153198633 784691482 993422006 995223740 485777743 748267258 675241620 852490132 161571298 853339051 822118842 985227121 920820336 942260480 335137162 647083935 729510699 992746759 735461720 876423888 577889256 611321424 746596343 982016425 739276542 840837527 455910046 575601497 483202744 762512484 329225773 471420205 959537993 977355298 950805298 963071995 766935713 933182212 593799335 635236350 756586185 769051782 3360466 832756551 164485569 645973121 464000131 476955854 384765453 813296337 894717870 922516880 194650811 774960492 224291490 360953872 326640089 653572482 864053825 997929922 112116573 703031703 575339846 994464020 840430441 850727846 910883975 916573625 895406465 946485478 199503489 571520970 338323242 813715862 970945414 975771276 940257074 969804421 566569100 874885056 639014322 736551345 888915757 955813300 934247101 978982091 916613460 928350962 768905194 963684189 142180162 664310178 12885931 975804966 847128227 945342034 699835605 804859139 33855368 520518281 149484454 256934239 696071930 894879299 258746851 490000580 460810812 830085467 136842251 296050682 416950130 840583902 69489454 333988923 840707963 931542957 20212340 351248538 384645484 575735098 836317153 841861324 3403618 569390907 574448337 779914476 375988511 884396088 320098381 758818597 741622579 783948395 276324691 413589450 144301376 633435269 329942773 966011754 629431492 869382804 410020293 523417628 77529096 477263804 17251467 410809483 535436644 962443935 665573906 841324205 81492828 91988102 45861950 533622997 698654172 758507438 626315783 674390482 835251542 940316304 339139785 478146007 953808999 964565534 768286278 889340988 17965824 240812038 830182251 853114542 775393795 869002095 344266407 434287276 311805841 819739898 583225167 600796877 408289336 787466214 288016963 949161560 340868476 376399441 90693469 988457735 409587339 722835493 793401523 888533432 41489770 370978210 76993743 886819754 891979973 966820881 53479538 993717460 940657121 948372782 718371032 721322987 655837026 937521412 739918289 800578013 402409725 462712140 183510937 921143216 180995199 971399111 658546026 788666073 566936097 682550484 552510808 837565754 404564693 770363008 28973236 341507531 45801029 161439037 572240331 903075249 675063834 862978233 834618066 957669762 165808246 977440225 400974615 501317229 6994469 563679416 267917178 617683556 86731906 158942124 881861612 973478027 247767828 260449849 610033056 864883076 876159373 980879577 55041878 614477597 750292705 984393256 919323661 979354958 926043718 986224243 763372045 976391749 55131071 635353620 362300714 886981337 460888802 586642309 596461959 752817405 355917220 468586389 588157529 892686737 202627939 584276947 258790662 655806911 411629122 691042674 222229065 586838610 837774955 862699423 537788390 657400287 325916252 589663112 235802844 295238412 419586605 977356912 410126123 640158850 985657703 992192154 141969385 750696135 258220790 504180877 117823687 543178998 713542649 928853249 403158174 903069468 467851497 641999693 841637021 935914952 51892214 872145949 114760021 856501107 658766301 733932890 363170592 740040498 528656535 824363178 640765850 917768322 509101395 516589110 562790069 567944344 130180684 707660045 427535978 852561452 140375455 854469933 668389845 777097080 16214858 996919760 723900523 953240406 17958634 820870682 137860788 821803866 964342519 978909434 908825574 989773370 441708664 570645035 625426400 965363860 565302811 951681504 745029264 961679701 228457877 882074261 791148553 835519904 16850595 232195386 181572603 842146554 734605874 921001956 757203416 786393795 356692139 464449933 506756832 704790505 134604120 328796171 661787694 982987641 860834213 951454877 40755569 619839768 361560296 573573803 995581278 998512101 948094475 999097689 141146831 147299542 538120347 559065856 119518388 385657857 485364509 544744767 963923618 988451170 654439135 877108991 702694926 911802420 197097351 883031795 278382403 939491302 377284007 458645178 471367823 485362113 422540135 796351664 422830679 455167647 818395184 877834695 167312782 979976445 830597203 956795787 364423517 704652081 612020869 990476881 588437518 590862543 343855238 887715328 431341456 972050540 271104995 641556638 919210684 962756389 286660570 710453368 399644567 856210833 786787810 873141636 245502217 646387925 38429469 808906255 398329332 433567823 538842109 921845305 958967561 961186788 690152850 863348332 653085458 829207838 680491593 948123564 592151117 927364951 408512141 953201382 988642397 990633978 402224901 962202271 691555946 807408492 634466619 993711041 935004475 971754378 122503183 353622269 847081290 926143138 917370808 961066328 598793466 649831435 341888199 579204080 908588875 955757969 870178541 940465593 589650966 944262707 669504115 941455034 255231103 290063543 209996221 512840834 659543859 887553038 791878422 937609254 148492419 876233743 485819285 604444775 557478908 769638616 425460613 578435870 400335109 975072617 26654100 82477779 436779753 894941983 569525771 882651479 969521223 988148888 808938499 977598266 623427625 906161773 907055660 929262887 483227548 486792964 583811090 606123070 449464382 918994470 528386489 559564956 202295673 380448171 680893802 982779711 163253992 451699070 522308480 947478431 161252598 646902868 118601154 510917218 291711179 646348345 985140520 991282168 62897244 457461160 301921433 963410722 587087559 884276243 352423525 748399753 482434938 892696926 317811905 817490109 447633186 702255670 528012075 891998462 417862002 877661380 198105219 803515782 17426894 292824621 452354121 963728863 14828966 77472024 421926046 998871913 58153037 106039694 99388027 588217079 622689499 625557862 720519012 796523874 76329396 203262317 650857495 857853606 402254369 521836076 255338479 871945078 200864249 457119022 830193768 868910175 601213352 622181359 668718186 834227698 640242172 983921878 936617724 999083790 969149630 985953317 507100763 711485276 816940903 995096356 956448936 978275056 940870067 979045047 152606857 481812409 360331252 899253370 371299160 826936304 627329733 689674336 313869514 846164599 279172962 400821522 121834991 184983804 843370217 875264275 197035362 317173175 729065420 913531560 423138380 926082952 437342711 739038098 62457302 201087727 49701318 571200958 572005455 740325746 790285375 987245207 906331576 923190455 613537244 726349060 615439386 846015909 413253528 544914210 261309766 675527431 586171367 690286067 493989119 621939654 759957570 930128485 703609372 982601761 983204581 984318910 246581476 840698192 273792572 901721709 618388548 765432420 900435150 941864144 393299306 479162606 859625447 960848703 222260127 823264149 763373469 861807478 608434735 790707699 662502350 897432345 625056812 711038539 807696359 915096675 501196954 944147000 813949322 890615739 269882523 461379378 879679697 891405147 690170354 773428334 96440116 161057860 487303262 535197230 276057604 961449285 493984955 839982572 377574892 837572681 476444579 498007910 699490800 789330055 822099888 931822057 404185713 966786276 223822618 346901833 419044863 771831151 436479849 778612956 687969531 821769643 352228215 704109627 714867243 871125919 879813762 998249245 608065997 613042480 472301742 473190341 260699697 486966019 649864993 900304368 131643917 253564395 576643597 882979519 540172414 835966440 539174802 887730714 919913077 974855011 787454696 888987358 388834585 561931305 161001594 703779265 402361756 409678363 702139327 741622695 684787256 928787671 960970357 967412096 846337569 885489369 806631223 961954477 556233458 893146892 890417962 890590885 220464452 517829322 582460925 792617773 557471494 893077762 229914447 711744981 257735198 853264124 309515548 652717890 212565897 862874691 163612375 706234619 28293432 602440048 291917191 995159160 235231033 379387501 318253858 666751890 548687179 931772030 461332517 533153198 694212083 838629956 776658732 867860960 474348562 754195744 957570964 963659709 370190541 841715429 110498008 839752657 640618508 916443169 151262859 847084808 217680733 639214997 652788151 856382659 219393216 404497158 381434695 668899820 596864673 863119691 627338308 933534207 148331143 520731253 883734519 946286190 2643686 201415183 467519390 804933003 9570854 520650800 939054407 975532200 929592525 942574379 861494689 997094513 952088757 959726294 611578342 790888072 48584405 360086471 428946861 885864114 459121402 555877003 867700681 900984788 735627077 971822740 178525134 235921438 21542990 442814449 259285452 464768106 485807413 787664959 633356901 976868827 595747171 727808727 217119325 474048091 842891186 953860858 986522418 989044613 373530026 696893336 530037940 685774532 242850427 854351729 37284890 687673500 789846661 834162340 56464943 391648033 201928816 328420101 459774772 492231690 642875495 856754684 276972742 303652830 468383688 476233486 792153540 833790491 58243940 349033198 596117285 706542640 417998864 800807549 102031654 187245432 35036974 854028834 130065652 424030964 262323961 898970183 1776437 714322680 84407022 484523032 314013746 486713424 567379165 568214159 903470873 985803677 441018802 506157857 383916608 951567891 417132204 868607803 526575412 562361205 681057340 797435953 371240846 828851576 941816041 955701796 297782422 976158388 227582634 857837966 918440893 985536760 600779825 706742492 115200710 273285722 725493665 950508064 475549334 654430362 994360259 997528796 95011631 156791671 51174614 489702142 97986735 887565649 570780689 584579977 497372240 883545558 63125928 556061494 433349818 770504927 336891775 619068425 592573184 688069213 287118871 955268889 765987520 806484309 569421795 881530274 572963702 998875244 490126069 927557367 92362689 547870365 702600370 959180967 440586845 724278388 667612085 796039600 338465145 641170539 830545762 879274674 806982661 857449293 919610383 945018722 616837085 718590414 387136623 938727856 300399074 806855019 620670744 790496932 224501774 582868690 765088453 977649975 844953960 876668524 211998354 762002035 212157363 447487237 579435238 619406470 901707621 929997943 210490767 263173428 18180101 677408971 879690456 913351153 101795780 853977756 521982222 810296950 459334569 496017102 199359820 621391523 711441683 712720247 223468436 657501368 122743068 601853748 107684598 923967389 563604795 873536109 741364386 909670299 734253375 945666448 944598375 946654097 105247224 356411031 889642838 928264188 459478856 936672459 211113586 253056455 604483116 808095418 921022816 980663207 341529153 884396252 1327305 100766568 615811428 921587021 30757171 770912777 104890325 690606387 218472680 715983471 939982521 953953560 662926792 895246053 442371459 600332735 178645585 399042136 392118141 663469607 783156309 873546811 92862942 421403325 583152317 980142534 504386638 693126583 832672581 919990524 63230033 792860352 353517610 672064150 867927387 948651983 800936550 945773003 906713966 955390447 515507939 552589177 928180756 959021683 768090677 796174926 517615319 647908089 152665017 820037228 103378919 387058260 845951219 878009286 270185530 363705579 897669966 942820023 889201707 910581289 937937452 978663922 320482022 385989365 923735865 965930347 141435898 571686457 119421786 187366262 93708351 469956464 504690668 904472678 957786710 976508389 901774306 950585776 388782493 739985540 593863355 956928882 992352609 993753072 961878000 970452958 181523846 252856069 872564636 889542043 179022753 268306165 750869918 819518646 796544663 889286895 824801871 961349051 662054071 868300854 592310187 897090739 821618616 882368735 602249196 947527591 686555577 760109485 351284439 744297943 455992652 474782791 509875634 842414379 397158066 598323593 893651326 979666835 863490118 984323688 545517772 964889649 983598685 985144567 248740697 433314144 251390055 453672887 945827460 946588936 672744355 726418029 542002496 912179793 454148496 598512161 674001054 764528883 64027203 232040260 206306316 698217108 622711595 986569813 548102606 860913060 318356992 862503346 852015941 902869586 968335937 990886616 202986785 917452839 134873106 463512575 714278356 754674694 949594380 985071331 76958486 938992444 172285185 902181618 987554608 998486575 726260459 768189499 238657339 960231142 67180919 390710454 776964566 890014912 912446550 989448230 859907545 993257485 166893856 631552120 546741125 644323774 455186797 908719862 290948296 572734061 922454148 989123857 681603174 914484959 232027624 964779066 624394529 810940666 813160052 878284604 628735484 946249320 549279014 721773905 303152782 626824246 337574319 727839622 488969951 958428982 617163990 908114566 460920367 810019132 944038343 961743544 746746971 908431284 332869738 539701677 940500228 996014325 397984487 890873957 765731320 811568299 626315371 830489571 859659916 908639451 670322717 935237468 499245014 925673039 623950084 907193059 751397988 967863009 557739100 946574248 199234516 270192369 750821190 850785577 348014854 743599042 967161684 975490212 363553386 931730489 925008406 943555045 998739079 999670253 440478286 874028791 557987181 776920426 235168539 913712490 908071246 921245593 259155246 424045230 977963743 992571990 873108959 993822452 507072039 561224336 778953764 971432224 115204027 118334022 70477080 398926847 419164936 531959967 566740410 681113992 194206085 318301159 478412035 987290265 961557901 972702500 810707648 960959045 439224965 748286632 32501932 441696251 937954379 963833548 647540135 714966931 936837270 943624949 578665424 630439386 347201198 534577695 496896571 498065817 147773755 518213967 131805194 863386720 920719037 954926280 821087298 881125307 472106735 608425762 620841043 680028082 43694514 162183249 357822472 392850344 175131260 708248832 383765818 415153185 310751588 838751826 126618635 534832764 337142289 712445705 828603821 908581826 307823380 718616194 725752337 916271873 421897804 771505305 754461526 998431923 959987391 999090363 448480710 643053136 386308335 998663304 764356547 857244707 379604645 419163308 607724635 675152552 753396151 895633138 188511211 447861051 434467772 778311274 114718650 637967494 744779043 853480377 226772447 252852008 133760159 162008003 448155793 778942338 348837579 727262001 706547449 982622853 812326620 927890948 919853025 946917427 274259587 333818298 406270506 869687640 837149530 953145148 409766454 912481305 231510211 797676653 560586707 931623901 26380351 427925666 762950955 900334639 596995827 806230273 697519248 739415302 883959817 947651760 195497428 795032035 573188162 797277548 1009542 301092338 412976390 984289244 779667512 953450900 638101520 803992329 348499010 815339254 314817165 653094212 721187527 967478042 272416204 615611136 679230523 893754364 171984858 832473339 263791006 762108320 853962141 863868155 761837802 853183303 926429790 968737001 695670984 796227630 122140413 383133520 985603764 993209853 846953121 962163698 6845097 181049574 767977937 859722665 422860228 755823779 854632976 928349059 255822760 487534570 284915106 463363842 377760605 513264267 657820496 879425529 17860963 344662475 720654146 806680115 434110302 644631399 246917649 283996206 880190784 951440457 398987997 591061499 622880048 799833410 251850302 790829650 618415498 967427547 972145836 985862479 512459433 782347940 932486267 978122671 560322651 922942188 409940084 574063528 47420457 308386610 151110477 985397891 627381050 866503892 770337822 851799562 641312914 993279285 151990326 650965064 668595377 695490520 412218793 936193871 3569085 281748695 9669049 882456213 914842042 930478361 5881539 96833899 620693724 868974474 935238187 937666716 282497682 598522357 505870994 910185980 898859509 983058156 278818933 890701992 642946246 717153596 548343990 598307127 587324246 631041904 7036145 468784581 945111602 967456876 202440551 495235146 802704403 852395186 406193846 770937627 723541569 961324963 394855523 797232361 824220076 989827829 388204237 428585961 624306542 817786626 918354934 952015327 937455614 970124038 525172838 679409395 554799851 954120552 63439817 207243260 298569712 815605232 819746371 881740255 105382184 234112687 159326010 982476245 567315858 883631412 886828566 946553055 386778243 530646534 364810806 515616588 743024193 943975242 723536975 920150561 504192825 532210862 462929603 843494473 300538848 516983995 683183767 918854963 156765006 215937328 994094282 995143669 111004190 959339449 408445971 662099134 45897722 312419219 272779671 939993224 481611276 911759105 87682923 140743696 870897152 909254061 635336320 906525283 584282231 991563735 456033248 921562017 305757710 582497239 636290348 895979129 37637436 412865805 57428022 960188378 59691581 831464749 447558690 780679538 753947565 975194263 773174533 811274017 288323145 612900923 204901786 291218667 659291143 894567655 370721820 722735251 609517852 786862963 386412266 642138534 723488885 930463574 668426484 680253280 566217781 587873265 320565167 522006602 399715068 684424809 426660472 493244538 10305882 738880251 969700945 981816592 990427638 996593544 402655732 500989847 801157011 807560855 88766590 782934402 72154824 540168414 626562998 736383766 249594918 835810085 285780262 527221505 441338761 624057379 92359624 891778210 576306788 655436327 782738304 825391915 923189661 954909669 50407035 866477968 943468109 949911543 871070119 978710287 37287304 203355138 826800390 864314653 317091864 480881116 649371789 791530282 970268030 988370268 548677027 720469982 215190892 860054773 314885441 397938492 871608144 955631873 625482477 731201151 955559710 981881118 622165754 815297682 840096362 859795399 157321935 605727363 523214192 681266439 899967715 987448553 144454984 597098441 701453235 842399331 352218016 742234059 605426914 680732358 635199007 841513172 272681790 701366785 86901638 643665954 227522421 264639068 599711456 655773805 943479626 958033758 738430158 786763458 658525489 747745875 356442222 688234836 187060364 869029277 431085775 482557729 604251304 658603278 945035281 994953474 228770481 399422952 522225261 960663910 990855278 999877597 805244609 861980275 938336174 964101429 321047011 819805126 751477254 785131723 981257977 982478701 93871113 161276626 308574130 606782151 770535500 956355831 64938284 804289991 824535943 951733368 258697179 267863254 45030165 791004640 884355648 938263194 262209899 931938527 903819551 972383628 121510228 450420210 85646645 299199963 687292566 777344638 447937710 972869887 697291530 916973334 43918355 369940317 767572278 795262974 354086775 911388784 301983364 418604805 504898000 558334014 420328705 456450615 463455459 608999237 996376986 997080557 359861484 400859186 642240499 650362586 285780886 458605732 790932376 934216110 188034846 286443222 818444050 893522908 455159266 883959530 457083320 821736664 313969003 599087198 139827754 294705201 759174111 921141669 879546433 940599216 953681635 976303533 635669515 802176472 655367858 932046754 247121533 989392973 69924 384055246 462615542 692817768 168776805 871085638 612702213 658083306 692765912 930078058 833902854 968911013 639429808 795582564 926225142 973535726 99260388 579085717 402884594 787850158 646304248 659177875 237905843 547981963 478073426 597264129 452158060 456935256 747536997 809113623 560808879 624905079 109511110 551188761 643099093 673961151 947337855 953867977 104441249 813200239 634410075 685455317 980458314 982864980 661150618 842304670 468110341 556929033 750001110 966981074 602181555 707487462 996468094 997827139 155015792 238561738 715483356 992081669 626253994 664721445 579841001 769491497 957085642 998307196 316127223 567443068 51622253 952496964 339150226 589723078 411230955 535505441 726693128 996216313 965469320 994008332 255009341 512312366 82333903 408894078 705493436 911358891 279164415 955112169 620152009 694264155 496227833 888540382 198370567 621931036 498510792 611867519 634638720 729074985 828478247 902778541 217630110 509684768 907653249 939848958 788847331 965204557 404253109 652137151 493737664 804941046 584026101 864332335 901711956 970756631 582199906 825090478 500965532 675727191 963763272 989570857 481093435 711114072 720761713 953900557 220221914 484134029 173018808 954713820 631022353 713602369 600248295 820730899 416535086 485085395 279811651 963141736 263087092 761024922 39277364 87202359 415627458 586113296 107995532 697713559 31208695 675302454 326973372 780663978 676667028 786490039 328792339 624396681 1143382 118059662 136038574 644278424 824787825 913745780 293892193 684574872 727629534 990503793 633745574 743251978 497815016 577974851 54462401 542431993 94166193 173652380 280383369 486299764 829381413 951104370 581992100 819563765 122437660 704634316 173653548 287259231 171352640 266653813 970863200 972928769 127216726 827012422 331028204 721788163 76532242 95856618 27662194 171949677 176795880 200737704 749385513 809002512 455342057 529168327 944386845 987288146 149202928 598965579 477113574 899887593 816555780 831352236 995280434 998489933 911759884 961615832 816367519 982863372 197933610 566776204 360396393 760115089 139681825 721523159 464956135 773153480 516530556 968642545 337139412 620074041 556107424 759448043 13995623 850808286 689272037 830599264 600740889 975024068 868664921 966223241 265865266 774109974 480476473 770833241 648174401 744895133 308503702 541002642 245232809 940937802 742505157 801174269 921123719 966796925 277888554 411391254 524094858 740517876 948713120 954360340 178831479 355598157 371331476 470488669 971620425 988805216 299699534 403417128 84707972 92624465 926184501 939791845 118782977 240204548 368755833 643446092 190748230 737977473 935372844 999360752 930053326 983660117 533223818 819361810 602290539 926361090 387905578 758386501 793193279 823698097 999106342 999253696 595501703 779648741 61356285 945518798 565328068 834434722 867311929 927218384 958222447 966261386 577889545 975669400 980256563 997014546 118184434 775380005 44735109 176598866 218873398 706001421 84939235 727437600 514762227 915160945 996074283 999831786 457291026 742949176 764725647 825974602 15093498 903480142 981474222 990870505 268452564 566979375 86674902 169219271 339239585 742992106 589683632 693362550 753374606 797497417 184570741 314071202 113085429 236161620 30489377 233549271 910685195 967604748 8612386 951938396 72914972 164583502 49360816 58868376 527689931 926223892 50992046 902149422 51003947 521889252 293946411 906406118 953820833 968540425 644395359 845676953 59682189 440221787 426061071 739760477 483098994 904469090 774352035 842504373 140190848 502230964 639168811 937428319 529948884 791359745 324701682 654491620 360273379 761101170 834259800 961685451 306526736 674273063 150243537 932342274 928558006 938478917 178416621 735293139 521453851 946251429 469834848 641382412 607986920 916803728 284392688 712881045 748327481 951556007 260182339 308086726 985417569 987776196 877159643 909519988 842652107 847849073 262473311 414509253 234870706 643195194 12391833 809897974 801923542 961546497 566082330 596808245 922112684 987935011 909869224 965467639 16028881 125195605 773671358 883172678 703536264 734417149 153078395 911640060 819582421 934748531 45416185 591301728 131209509 404970942 172284607 503562515 358680620 398245305 339999277 795035272 633835543 772504330 926075297 968619196 627930430 880387824 592330601 745354594 597116246 838708184 295917955 668116328 931891594 953294171 576434753 588761391 93261274 678874581 29187742 983697118 638065894 650972611 469974549 747252304 137594512 886052561 696793126 828572892 398992340 571096388 647313163 922070995 26492 694876871 637272259 892587860 752759391 957229916 154078982 605797759 871237329 927244300 497802765 588418235 85317586 986226348 361942523 788894177 540845266 620927965 454381230 573705332 159834000 243444512 761447494 934019853 690123552 911323092 438331623 934946728 167096371 503419590 550837200 799642403 821289427 901866636 95634425 243023300 305302866 879597976 819408151 900687221 418521282 561481691 360536796 433781829 547612512 594408333 681117925 810483987 910254388 912802050 939573672 993059783 765299813 908548888 18833349 797653583 397977278 539463999 977491953 989162493 119540822 871716258 87250279 555008438 564527001 737045890 614320983 963593574 489041893 666251272 831304536 842641942 989571060 992513589 674209550 878788032 35700658 307597382 882301560 965021321 489775478 557133842 776353943 929791655 567011822 779160100 502691078 911503374 296644671 902097701 876655094 981156994 977141654 987586875 821036757 838203684 319749205 537073330 483369383 915780672 431687965 723465227 319546620 334215182 133674070 289173266 708521004 854835922 283595237 521866420 14754309 859697383 606887310 652735504 670867899 703888713 485100940 523616384 301071850 317316227 931531782 937600018 96138524 657412689 21404291 27763648 92918600 839648711 93756861 776035084 342412833 543337388 440581568 838825489 612512166 623762018 727920785 879068034 851982728 857965690 120907394 124646280 933932008 981893262 459961945 885452687 164627334 827962419 160018917 337203378 503047006 685181433 702903885 893965064 112059697 378750055 898691851 898904397 825493837 831002629 247061802 820632032 581007159 599591630 771234409 881666930 600718537 751472706 442646402 458435018 614519345 920947084 581279662 596592339 622756060 858855612 879798460 898562043 586874044 811933014 712300473 817676399 831959076 872783581 328661582 561213862 99385555 203742473 92537993 619685919 774739557 821019952 109321990 222243621 797712001 903109921 298573935 870427912 295589980 961191413 795864092 890137332 262330878 332782174 744844239 787450800 241820549 347134623 723120346 761452270 604310879 761035716 249667601 291551713 696045387 913789373 198341378 558827609 497570241 753340186 597281805 599284351 242459858 342969920 173951053 984487381 216947781 629702114 9328267 988755261 536889194 643245463 773614913 864510863 225665653 231327595 534709491 604928562 408242650 653132554 409904160 633715390 725905995 913462836 924012126 963937481 269858606 686624955 846306819 997869394 971954767 996148778 642786419 645240096 53826617 572048805 361481505 372787148 696368436 890943678 155032034 167194806 877192351 946054738 977724211 978278280 730561981 908054714 202546855 561615995 290265216 817056085 464535789 512745145 176447489 451434697 245888303 949803652 474717346 504086224 110527359 988366763 989992966 996929922 354618917 467052254 733986376 933542097 282725253 786202277 556779423 864121959 612957756 846050373 961241044 999281541 286143196 440794848 499752812 658727960 492360685 842783932 845022852 895747213 539393900 943510204 3544098 430166423 851275472 969916187 722439866 765728647 826949508 956201097 387727531 845163377 147338137 431117102 39743815 476388465 599435180 993100723 871489409 873326904 974503607 999034281 872985751 963926704 161824001 808698479 138617895 389779802 531918430 744366409 251474680 831558205 355320873 921997605 725123827 959993497 643006658 863666064 713281818 846676521 472777316 728110376 565719634 604921146 723992728 769471206 598426188 847390667 108746466 312712828 392418410 632680350 70689475 852690136 589271371 674229612 483252212 744091542 332037521 373159618 629233318 905664848 231399699 719213063 12749023 165365024 448246680 646392216 319601302 609652949 739581284 995465793 398372462 822762625 693862685 711568415 387051082 962701136 80292251 223492790 643188749 933192619 954398393 956665793 424360176 552087333 629484911 730716877 945126286 945688769 312895400 425403514 536711708 900622585 307946728 737740818 359222217 980079020 4535126 122761461 761666687 940163767 873803 136517181 772854398 846700262 517002496 802061931 8408455 240847166 106052844 545158447 778712647 922559669 865984367 990280391 888624645 974491629 974367129 990368221 748760002 977632005 675422821 849304548 162396915 950327467 461315000 853164449 788429283 800355481 897241960 956925519 849551586 852574085 805856917 864932947 548969524 994796152 778473232 893682179 691530753 883246340 953112790 991581208 460838347 886894270 288441535 591956045 325135199 409094659 74491168 441896036 624456508 734202621 19599428 32756710 233416015 800456778 775314912 789228103 701833848 787500352 350834193 492205373 800577232 826756780 639745218 744304303 845141232 859889378 817459906 908913093 396361931 551640241 333600742 487756945 144086263 896277532 53739850 476882891 993474504 995822527 84365170 152061343 373312745 753665062 358571196 625420353 850050130 968432192 387538112 824369857 468091228 987689748 670235221 682208280 23354684 799153339 564430383 582526021 967097542 985856158 935695937 974104437 952543265 970656926 347693394 625833542 888481663 928863795 169747884 975651829 113531285 595107164 621387513 813839435 905023857 919358876 735943464 750317038 976930126 988427896 982312565 983999189 498077836 697242647 409218521 661919487 635129546 776888882 457660529 494812923 415635206 874486062 720496235 965313949 589082498 916090826 142818511 894362214 38178346 308025094 83817527 223404293 385505614 509475920 186191019 407730814 309996831 648067951 616929516 629455611 458004070 754026380 748636125 870283574 334086649 707785500 118416137 672287478 717663121 853743208 723241857 730506971 926169241 958781795 715209178 920190537 182371267 520771368 81920056 836096799 198178952 686205321 709729411 790008147 833549683 928469931 329791814 453744647 909361475 972170999 37088765 829080669 332110152 447244985 592115585 747172093 814777861 907056000 630486467 714642999 560397249 744115825 21490613 825152965 303170936 732974516 292646079 694750895 844654585 859811758 554107119 585076295 4856921 531283569 205961789 370716025 209446796 436552534 217257797 377355973 122700439 712396393 725756920 847918452 560187370 910369515 208411859 769887834 685506913 970605985 431561101 676175361 951795859 973929731 425576440 769764174 896738886 915049134 258790522 273559625 749558683 845960802 185937092 293328548 870301505 981888262 564151500 652381379 429822784 779522191 470190582 954829242 288173912 401798673 907335436 909597547 48245078 432626603 826634463 828971611 814705486 864805911 302302748 824497200 529072326 796440248 188306085 929888407 739714788 967290812 297422895 319319340 54643051 397979226 123492823 989687599 135779331 363932006 246000983 807124140 230108074 234564455 993222081 999195385 509250827 773670213 882595785 900828122 215873440 282211545 207502401 551314771 757970573 857932617 262477221 932313841 850472512 960824878 682138216 703685491 740862242 929344398 605686428 656053274 870322386 993407858 737639834 912749330 390660828 444617033 393290096 737746653 753693792 924134120 478700959 573823036 54122310 520221179 474326971 660567439 568953751 954673844 21096737 788601224 838755347 879102356 918842899 925574887 873778451 906493840 227050360 482557593 617027661 786038845 323166333 933470585 430174460 448271664 432175829 536786293 667267457 679842928 415733680 640941336 8684000 974077234 788806514 801404768 521701354 916861983 293879729 572642713 714940051 766286192 852681811 949511816 659489721 814401612 710876875 878044908 222005991 706418478 787816501 810523923 321875609 818558590 178673506 949098545 779557137 832654831 749685400 793592937 817274637 844340415 867855279 873315849 80162259 107713391 151359979 964587935 423512480 554244243 200933748 206047956 482984421 888208824 34900282 957791973 374928351 786618951 917289014 993467387 673805857 761000065 928336407 975462517 145789512 635949267 535905904 914977760 987146252 999820681 547989441 890339533 567882434 747346013 4703227 715005648 354657186 923055866 660708553 798766397 685449027 871737672 379467740 850850033 375948441 421093143 209153703 265543639 607662781 779451827 263307692 301623514 496954075 623117823 519970851 984617403 858582948 868456194 800568078 856237363 772287926 777974325 502356236 981719671 885953639 975671881 61904752 91117769 477592214 634536831 303868957 385329754 582251061 827275759 661175355 666375823 841175571 877220391 961344199 988555444 867789998 996436985 805240545 860878906 215637968 990582154 942702845 974529100 773422200 800311283 648720321 695904013 184744064 348139875 550674621 970358526 817180362 835994258 685351104 988812822 265208825 888742990 126160555 291783203 617346407 657619040 351331541 493949873 989634499 994789375 331706938 941567406 59076425 991395130 617657109 801053107 653429328 807068055 225739999 358459932 362395881 605057689 17570777 260867907 765906067 774943128 528789731 564644797 302931535 554821787 43948861 147772488 552555015 855569455 140282798 201898756 339606064 571531769 758987614 765186557 566700300 865503001 896849147 928148197 685934510 820118721 516424922 791735053 366888417 731085427 390047826 830668457 316062471 810106041 771532851 995419959 812537564 935395636 448567888 692126881 112656982 991833586 664746803 690569284 710729725 724144619 203270069 497426655 270985488 753327528 977776349 994390997 833244743 872972756 270477761 291043588 711798899 994826751 542684 676811161 437831041 813179542 292668536 826884123 401395739 552686848 290142909 965625622 647172613 710704551 878964634 976379070 862241918 942065027 670266852 733694434 631813504 966068651 253862126 988943074 531581810 773509437 924444510 971584257 48535605 210781268 826423003 975513036 208666042 783235737 239799540 560863883 6168902 667717346 768929251 951837190 152345770 523676178 350560552 623086291 389221724 553998891 756058867 970153404 846180262 966101127 413120334 670953615 548090888 919875562 212799285 903981454 163683905 376027081 521447961 924645162 785396842 845883845 940726777 984162642 931643927 935753317 583950252 713178268 546100517 690179577 759577605 946557470 357134522 716383119 293639195 715825759 458727700 994939206 830505519 957008872 577855388 714269235 383168710 625502746 356109271 893290435 59405444 885374639 737180977 852503196 511340420 713586643 670153007 929109071 342110218 641159956 228994539 900435619 849799931 993985746 394816300 411695836 100318878 664468802 485951420 541823772 893799230 980227756 749118718 807014927 830171426 941098238 879826175 931329405 182751460 436442819 273966155 871953417 757470776 801685671 165540438 793080196 280232753 578816746 220438443 302660808 227638653 740317066 4045034 505890484 175787834 972169520 468286632 522621602 907114624 941051324 933921435 948721350 192163079 245021242 532509164 999481928 280655872 798858407 403132415 963866050 788934129 886360591 831762621 924561551 262525715 378431665 645369226 922227110 506771798 746778960 171759427 657300676 773866301 991422313 266578251 440688874 591048303 921176014 345617177 715011697 501923626 903427528 975139352 984329687 979003057 986970746 280705440 818606034 898140666 961641271 634710915 967388379 877193105 949822680 928110022 983624436 836543239 978258863 667949586 843521950 570976444 824568639 852817558 943289028 802784819 854794743 99433538 879875995 215586494 476948611 169129494 458556108 448488894 704238329 669260465 903026591 672216325 963779829 351221933 814164262 717706162 871971157 826951332 883138765 615406039 838429308 761504022 807946988 79411239 803774978 751864863 889448583 471819826 893779594 589462217 976382391 477029686 956176837 335239079 979817836 685244290 924968587 319824548 980958348 476365673 850670972 519293568 801802614 480587971 657610803 873928258 937902865 160384234 674938113 575042229 789978259 298275859 450935430 763023474 873477096 185189435 329653159 367500659 579207427 44556395 795831960 877269841 933318251 411643606 722795539 72101522 285369140 60870384 554716171 259064390 837553388 742208174 805962629 610739302 913304247 158168923 488530016 811267198 856874934 169166330 564145734 889494232 930822155 182073582 966527652 764594479 829997858 461203579 862824403 940281274 954208650 806364762 977784241 830481291 921795764 900864186 911690940 373712062 579458239 13232644 119897837 229372717 292750708 113439076 451110116 318188084 421192569 223753880 408214486 902400070 910138017 82512629 501675155 455486166 466131486 967853594 970116933 347060975 862834444 51687541 748135137 340337897 505098124 615320092 774776170 21832205 811211491 897544167 913376556 537218985 802777234 911946760 916496806 948384703 992524022 205261210 678143451 970911230 996869318 216603550 245171344 305360287 807885005 842146564 885571013 508348961 863559744 698085302 843557567 458777267 787456020 155697456 863701697 615211798 930772911 177759027 623834790 131525192 871255194 610930213 940883484 481694563 786291401 923872034 990134359 297554676 336077235 205575530 758987542 884923786 929630254 97183543 788386786 372107227 525999685 219761933 814134447 195124963 356489382 486580359 569200681 135898008 282188940 675200117 809011034 703951564 797031059 334621896 556977938 568315056 920672782 624402543 669915172 689506588 830967416 300176965 987700739 943861592 990468927 436927783 825124468 898873927 928467541 388922984 463072096 561127192 612361985 489866061 885004226 749312624 782200614 490608800 795116780 371212596 855634969 310000439 500142330 209072268 442484442 746435857 768999189 153056083 212030572 113807756 336042749 719280865 836070870 23621528 385240390 339233997 736756522 267565849 410256126 241418981 523783430 878699232 991147713 537260013 769532844 677685236 709166209 877055203 997646148 203497160 691989161 459925067 625325268 241306971 419586228 122667661 710879517 412825588 558647545 967619888 989166425 829630193 859763158 742122677 787482177 864280680 960083876 822194305 834399192 221659870 924922403 763371746 978478520 356228101 787844318 580814639 635041929 698040647 942115477 325087369 992230715 173116853 772812449 843271431 977882294 393550809 718119928 103989316 789073272 537744584 700042366 780090777 801806239 808749217 952871113 220382890 961679508 721144316 756905093 123684153 240703998 564664157 870278044 210206153 985584044 952408336 984710656 124109301 757898566 520208467 673107850 456724168 679071064 1705571 536603289 125217476 330765175 86141049 727484059 890519953 947863641 18150535 23956499 877583336 972559126 423170666 724671457 822672861 968918536 152097730 343578995 307405582 415482832 382874911 675151230 142158801 685237382 149824889 404097066 366594576 984158058 58588569 349446161 357384894 759220353 440154608 468338279 301433360 910309938 254018581 785616694 659024881 801397572 847697259 911931568 213299730 373829956 206432425 284126045 790143572 934928230 951821969 953866161 869231271 953693802 294891496 300384267 486116540 992599154 619073483 940624009 161624707 491703119 145806576 221787204 686779542 778784939 376138471 709917754 291994797 379954665 39801997 464324226 120541799 948464704 421057474 863602342 479884734 562398477 810993961 981914422 917412114 971424734 652074426 834704315 528005725 647790207 652573354 686760387 403487235 928970443 563065398 791170814 969959225 982285612 757894500 810323581 704057246 848301817 316968011 860894108 589063193 757358952 970330578 976881207 828391418 933705598 98205520 560806341 927967149 968743719 860916620 940593089 386198615 678734375 630550807 886667430 17215468 797088470 31209678 649187641 776213504 861562364 197740338 453598331 687124720 911989782 106071748 279825175 26114135 436780789 127511186 280901751 125166362 446161167 977921897 997591703 798511229 908398761 997485973 998661796 136389886 647539435 769740714 792419697 535356704 665564313 101290595 824461958 454121093 537994578 852583509 916081710 480989148 733097718 338411354 827348037 842732097 895065522 939498485 965757697 202983504 309252515 50506904 653386270 525641038 984078595 76369483 883211583 336234729 806352366 697001052 806878104 376183404 529910314 121764946 399915761 865112484 874722245 273005677 726342606 619752256 941120898 387706903 944513494 912427534 946448633 968239403 988003016 945803118 952301647 709090139 987596737 959085164 975017773 117691908 847805534 912432351 930731794 339498462 434262615 772994676 899194168 347785720 861267580 79913374 728877637 286438080 977574591 23712148 92645782 974286940 982997213 425950841 771410290 904288128 984630701 332200985 504871453 278160847 391566528 889512890 974938205 17593016 409687504 295750515 485932199 155005975 976751776 968380552 981348454 883839487 948065904 114957590 118510482 911464876 928034316 961965631 969025658 901777970 998873775 753586137 916825799 928758251 938148535 845301603 955533240 944224096 945617099 633938452 634067675 878380301 956768462 573321451 601452717 670723600 968548541 228686128 343765782 288490611 872862083 518505764 975558417 741265961 862738737 362566872 599894547 770986149 973780378 970672265 992677371 594254288 612199467 356133209 948443853 298555589 759652969 172032421 502047253 344421292 832883055 95071064 689808006 772281844 969095078 443919363 896149275 53615437 573264767 919113858 924986413 393741861 964601462 634597365 778077072 664057313 758666970 598379159 872597340 242198821 705730831 440985340 628382881 768515963 920508373 748299632 906090448 287564408 520118540 60237782 771958193 326011389 522873802 76254369 334825483 363764069 798875025 70541966 234739323 503361195 839228256 90979405 871227266 820083278 940956784 778192079 811478253 872012468 894626895 201426847 511434706 890976598 933486532 310564810 988112296 549567221 783147576 988327682 997274772 769285624 962063432 765960835 830036288 832965574 883663635 610981164 926251249 256989908 757884921 999244600 999923889 56725580 501648833 108546063 958991302 840899121 909774380 291896321 710426823 856784688 971030198 351975202 356913672 480258448 691321005 920576848 992358434 825759527 971892840 753575761 873554538 249694714 366630668 134518013 755152834 941955892 951777548 333838209 962166470 856823867 945591583 554773500 694948076 311993697 728626676 385444260 655943972 348165621 570290364 495454586 696595565 341249707 730365407 621111660 988545556 76083308 523399724 127440664 509791668 836339023 837622122 809987931 927561697 23849490 624415953 850382607 885896856 227979473 518525599 663305976 774040615 25286245 260978514 791864530 910919374 846546679 899221714 527790112 807804637 164015132 336254516 393705728 518421652 933337581 969194064 282889468 999495209 76406407 596494645 363117390 918419877 406891911 985766105 260939764 997109369 181462927 709067567 890342616 919698732 950432054 970746008 975954969 991040551 970609593 990070903 534417849 563049799 890123278 976797121 17084127 293149058 119443053 897769423 289207719 549366819 627565474 962809873 3194217 854988418 500138559 664496409 973940024 983844190 647781303 690981172 637874278 879980960 478972148 897508208 465576166 749587228 513196235 846370714 38826803 773779750 806033718 817345306 890645524 964441772 310093475 436195002 23167291 802547675 714818283 840603493 350625588 425810294 169891538 588980585 513116505 546227051 711481467 723196330 595826607 643214207 986739116 995986311 592757784 963891881 170126187 598207550 645740552 992880324 878500074 942217373 79601560 314043219 244146120 354278353 835731020 973237568 323049935 669279444 864257762 916651311 259146376 737595000 61840517 623474671 31636291 194942632 658250396 814502811 929860998 949553999 812532924 872236261 231924958 903289978 120466934 997761114 35607346 975882323 638998632 714304243 99560985 365277291 386855825 933133461 647858313 865730627 205863319 730256617 154063298 991164757 162117387 822547849 27228072 659439649 551156950 815577326 564707642 657328408 423242794 601542781 391889983 987257976 349632640 690125110 916985897 932327207 192467838 259326414 841915638 847921825 89838864 719615941 53733475 510556198 275653868 513062342 83665991 609113460 177701584 663848322 624713944 959673476 761124242 970531337 748241509 822862689 867572284 997622444 685680354 867630842 872583436 905780476 900294567 922711927 403469051 855051414 740375582 913338525 410830285 816450280 30610252 431030270 937034110 988464189 279506852 968548945 71254427 160545451 836883827 989811779 293541254 847629575 813792464 955134156 229281997 619799573 868368547 888505275 736045420 910197162 228272488 558962634 908665469 998969611 850981606 930646985 59809977 381465096 293015463 906320554 826303285 905110853 278679670 684019885 178269058 656561422 443480174 497838504 332032947 449511167 218914788 689111894 151906198 394135376 952075354 975389668 843802132 954283673 967190749 981913197 864241100 949526239 243484895 293594708 734845236 932471637 825293530 916499838 4372885 477156754 233723153 762703513 815698727 919118917 554078657 620964892 352116112 438455071 262028665 689655777 646507214 857204153 850934105 959141175 732512032 926117514 495880699 775370564 914357726 932737851 645314681 767904330 117358125 137151480 18673836 808579064 79801314 414621393 574053177 665140051 609700992 737465494 739368364 946832063 970076046 988018022 539781716 686762042 519586716 796832087 557943310 815867928 566292844 999981840 496291877 780641881 414644592 973492921 414540196 891075674 8586697 952771812 621997075 841073411 972711632 983760093 197675754 819730672 770669736 857916242 129832473 472516796 87915507 674067356 922470660 965591993 841070221 964885856 738593957 931873919 485281929 681806520 311726369 918157099 239881553 570059010 105587156 614175662 132878072 485319176 592901200 808120484 72285699 125322699 88350830 664709950 141865555 988176986 56849677 753470950 833274423 930069285 572532255 879680957 385822313 526650949 439477464 643790179 28303661 362219395 299377682 652465157 39190123 322875974 806834315 947383129 715405585 732023100 760479867 802389775 530348150 847572313 123478261 464604324 674459791 976807622 929813801 977116887 974826557 991405974 54989428 927994913 963010096 989148542 869679717 886976533 764705034 900184395 619460674 729314644 821993840 929570820 77968103 578212514 430562953 495326152 83667469 298356145 875532338 901045383 188540477 970489414 282461644 475140733 936101063 956109615 742189922 864215046 21961733 373708240 208038428 434204396 822770404 870019453 967403470 996630031 887373809 911135413 405091139 898781137 784739024 990613440 789361675 840002119 442184636 559251679 579652974 709258939 654499718 796624648 342127552 931033410 545450310 771332659 505070692 658549980 829029655 868789742 871253641 959607766 772369090 925023287 768625622 861155728 50496711 151179146 375887501 609480851 513989238 879785707 310291620 906346264 605432700 669457207 552362106 632881748 924666408 963957144 404603294 591472610 459851458 590701272 404445799 578693599 235381996 734947432 655893120 822553507 940015737 976181904 328347353 794910661 127585397 552998338 564691442 984225862 252156622 921504838 747985999 914223487 430749186 842835878 876164945 981525110 923408005 969539236 411698835 452445046 369169434 553279770 976986969 985050196 801336955 818560222 325502758 688739180 933573698 988577486 542783247 638405287 805225136 943621192 539383191 648463469 531207277 728694893 419496462 693728715 918848213 967329445 124022939 635040063 521726430 726493964 258935205 278082187 992410942 993628442 277943643 972642448 223613626 473918614 527614369 913877261 935593940 953840206 599844506 847582062 433347316 696865267 514970953 665332493 538653292 724121152 967096703 975148081 141474481 993777891 537171035 886063139 910259273 925861435 571223745 816234594 928381759 960586353 53605478 976115828 852648303 990690846 75179701 864132755 200354552 492515701 660814949 712976023 994597239 997534768 426248855 830488780 478882807 800532576 205546984 515960961 341435916 795078688 784338979 855860525 758551509 885519066 948566160 969654098 117888848 979645715 422774348 443995190 297662367 605050851 792588339 968397416 947615862 983531243 5585452 787176360 286003599 562435762 934659167 935304592 304988333 798142650 288718966 390240692 126323340 280697966 84769971 755645674 508826883 839803661 233128577 381534686 573553745 584049219 776422054 926868719 682301752 912220145 322581160 889671284 580071089 834458076 898610979 985859116 822891633 867282908 657230848 793793308 818839146 944372474 537714816 839308915 157151994 221186938 513941259 993893588 674328833 932016025 883832236 946534646 997387654 999023880 71574008 458866871 711435658 737578632 803218907 972710225 753528629 806182525 387498188 921030391 40304816 435384412 327173347 433437410 319315714 732568762 283829300 452082503 839688824 917331661 379747582 598562691 16514925 612934452 951179195 959057154 814050153 996100802 930584934 948390064 410500417 857934315 324812884 547706529 63252249 505158342 900716620 931806392 553212294 852044661 154719915 971456572 798428961 907708236 264936141 760684260 809338498 852505831 408322442 935101410 250087542 660277384 149468061 425241085 994739267 999484737 657674679 817650663 569735534 707090404 631949747 873707176 612758836 946625283 14884868 662431402 799998187 937989149 455147045 474653746 706821359 983796568 82643234 796689986 708428473 873399054 877677850 958494019 683738396 976270868 54431516 918988212 591709926 802039637 338805248 586731954 215855647 815937743 787994028 928746294 625315613 625555945 132836375 610155378 358498210 379277250 499667801 583545595 232334385 995358797 951591040 975969495 131623064 625857772 974820752 980317450 530708518 799248299 132495401 674573358 417120110 567681892 358585141 392346666 157442155 398789195 722609523 867141611 188475499 619293089 30849788 435765134 154835630 554022653 775176840 806194781 951833949 960288412 151919428 845591006 186158638 386312251 213082059 249748694 685376986 956664184 542223196 651158436 432913143 861664744 259632484 272860706 74107443 195715975 893413306 911693384 633428083 655911935 423468461 470311586 204694726 364234103 964314683 993074144 669725593 824781950 396044295 535154428 784438418 976604453 747420744 912918049 9120845 472453288 160369979 956165155 546263523 673030387 733805546 850812218 692009418 820176517 913798228 940231027 677146369 852525541 330038021 804831733 902559640 979061203 154715029 431168808 258134782 856073688 390436837 825814669 971749616 971789204 141649507 785021768 83153873 99257403 483934203 639318831 693912914 890377469 268873433 548099846 65399242 157307890 138470904 406041899 366865447 912380310 508386568 783475489 783855617 871635404 451251677 522056520 673237651 714205771 907022696 988566109 330539754 997139430 54613795 335642267 499795398 591634278 775059002 992575570 66317275 385655809 870558438 939769344 380118208 701301771 794986360 811559389 965364980 981545546 820640551 850302979 590323700 842875399 704576825 826106337 694352999 728827505 517082721 722952763 335342440 474351709 179150192 409794638 97212034 508606203 395182956 761741146 754137675 973887629 915857795 987477625 187096074 543392427 60369826 929640728 35595666 279831676 235106957 289314908 699839385 701359784 606089149 615004778 218734414 270442880 109820896 975235391 94727017 339072393 61898560 580324889 327452143 916232261 922124597 961923944 562506301 928450472 109248316 652269714 766229494 900477084 840954038 968883730 299005690 702535422 69372556 160670092 293241180 813872423 88986833 293245621 59531700 667176501 460521 278222130 401308054 957887849 97004615 664880384 609015451 939761628 694536266 716229908 883498476 947679429 517743030 575196387 622544158 866768545 2813829 264918915 857957170 920498694 556357734 877941462 621918620 911480334 682580145 928827051 209545000 673353132 269051897 747985381 154506532 235670956 602197771 634518759 325217864 918549970 365113165 522177329 496311870 937029798 315298586 412423983 509501321 624084372 773237754 980002905 448854293 613674861 348270739 658131942 792450620 855775373 788803623 939411115 115238978 772909622 887423920 988762570 428123127 754056037 206588980 710412433 436765190 743164082 240031000 644044597 80786400 559613116 303779737 427595050 733431836 812808795 470738530 882643861 876933055 990069528 283355432 619764097 126571242 922224032 317068578 473432696 449548378 911199563 308772908 445741446 385726915 997208981 425224619 463472629 335216054 368365869 265635518 624742479 164695682 314574255 332151363 686282836 998986870 999481777 808802932 964929135 341479603 440772343 878638929 913649641 821545852 921634399 574238579 714569405 774394795 893665702 834743903 922444052 630898593 965553662 882269430 901943299 851403975 865806325 849335230 939150271 158686746 999987340 105418702 393393694 574640799 633035711 439852216 977701702 460155283 527549334 647713420 764541743 572217057 813136377 794694918 802166675 76527458 761598371 896950068 992186433 508771442 961901468 909827931 941981758 293857820 507549855 384948232 660699349 47558860 691388031 122039488 755535716 775194485 830691750 861396730 888895539 143548229 392962460 181795878 960112053 979069961 982883934 83810501 286290107 432301633 871898199 150179855 664251593 923780960 994974839 565939348 677195054 173777211 751736574 504001739 535667187 455862205 712490537 353919706 978802172 818722982 975741229 476935590 550671334 38362472 214173536 901680523 940982343 491510422 533232893 649305807 852079699 511751476 892039491 750072981 838038067 791254540 989346012 37228593 862974904 537436794 638446819 261771238 566785800 610367298 648080933 77250729 949801203 497778970 946375524 417607460 675748465 800389927 815596698 841016446 935800185 180805952 366652777 791036847 939500331 546691584 870169479 848896193 964461973 984095488 993348741 698067580 806267816 561591792 575381288 931161774 987155001 209709481 684899048 465220790 809872900 599235599 880532135 60688396 216302525 462663746 720664573 903822377 916262047 28503170 370461415 947741328 995722475 802029363 919652027 543500756 625516785 24997496 101826701 643972620 988634258 462175498 991395822 854982855 962766619 961015878 983333880 949107156 999834008 428091429 695465077 477274571 923849518 110966311 247334569 392889454 952051050 292147108 340180498 589633507 868763402 385306630 627988788 748438577 905829894 342583090 693766728 871352197 919540362 617593192 642508892 85972042 727172284 306838189 928046357 185997926 541650089 268467490 808475683 316886680 949743517 930492779 960343335 206130502 354813738 428809319 545713086 705313003 708484355 325069627 912911115 375650126 687557610 802997464 949521503 20591965 22961102 719879488 821133257 787481013 966936055 634981684 655060273 718746720 935473486 804489572 914023585 621408172 813897518 26875356 401947571 955185468 955725995 473865042 741082628 227598129 732209211 699330254 810309050 228490215 994410335 57194077 558583231 30142964 485562544 579899124 617225146 537422130 855485187 826635487 980204407 849787196 994709409 711761374 995250844 439185055 867930715 158377272 415982017 310990054 429647543 56226984 508694524 711605273 742786712 675293869 735207866 218384958 556805458 553427015 841034141 455063450 980630759 5064179 187691384 910574873 981093211 992078950 997768081 786529612 877419581 335663480 759061947 118032567 158241822 870455449 873022427 493998106 563051790 333139974 602887858 816183081 877734296 945487000 951083447 557603275 578017434 9826901 73123682 638336259 802840244 466260486 583294233 978083787 988274209 453052533 667919690 407317468 992611313 128080351 932056896 9640159 186865226 880096394 948577355 684534253 911640238 95670242 228166374 464304128 918757495 470873552 938307981 157389447 468851663 582950161 596005321 612595094 968825460 38317065 574806450 109142943 255512791 178510609 560938760 220668429 973441258 429041082 705410249 393212953 722840031 978019564 992607982 69576440 169230621 470700461 746363223 884163035 898399513 9126801 198186930 609601821 766121339 874449171 945494809 757317574 792569522 498237667 704636184 503355472 698556664 998236569 999139884 781261025 821580089 620287211 882026919 855616219 908022624 47065665 159794010 502687366 703984140 435383141 818232231 4702176 758468784 575986166 674668631 432487238 563761208 714621215 760913926 35784038 479423575 34601273 289914737 273415235 355512239 7830190 758368281 132024014 162249101 393783059 913573139 737857239 778296962 450033862 723253326 704661374 876363591 598000223 749516227 532981871 942098422 288238835 674419927 242882010 899696043 725288530 911637474 128641977 189754662 8828365 139796988 857114716 964760351 49339024 508503019 900469370 966112185 925963964 957850567 385840272 956438274 239244391 393616460 91304568 189011569 392550334 535515704 706880867 849163778 116214910 350334137 251069169 674227942 518055577 792467041 851260558 937628953 223540474 639672650 12370 967719271 664591127 748313130 437768172 673145344 726844020 785472278 746714243 904063243 413872039 771827801 951412035 963696537 303962803 340169415 554309351 767632830 854248030 900128293 739111637 861149222 449168620 672715685 533153655 857308778 109866794 599933895 73571003 336017110 122259742 543786168 414071705 627527701 157193287 600763384 76888590 807846743 978285238 996116988 794248595 895053779 131832592 535438670 647093859 818610604 754707853 826261203 483427837 875913058 131224509 972491913 501415295 743600917 708711222 757550102 805927329 813534717 604287309 715040371 478591817 685858251 479356882 630588954 858081410 959792296 647959501 706392154 902803460 968829624 586217360 899059668 349094474 782437565 579336139 991559581 263975249 900483534 595357184 708424479 591199521 695914668 435561933 792186753 657347395 840361526 560182473 932471970 658696236 846021243 553552626 683207425 74988144 953595717 795111122 963312245 101525763 259381464 948382493 962430634 394353836 582920933 752771114 812007840 162230297 990995277 520326794 667071307 349784174 695328605 406199597 813058974 474312300 761899958 7391328 156015902 579263006 607416241 142836755 761354183 984531031 994527838 157088704 641878009 161181057 548994360 334572169 442968039 814389549 837052201 268305952 274737179 48840079 877444185 817072520 984108626 633264597 815515686 482221119 774011968 135692928 465239465 382174630 940694101 551858639 590433575 181062935 631743330 810898015 891938700 20321019 70863145 596832706 780666038 565577196 999552575 413362366 624628263 504805215 963630475 210453688 888362031 883423243 898806976 88565380 326064430 105036079 927321176 779870267 874870364 323211481 986553375 24753621 855916941 678077200 718062233 931093043 946335636 932067761 982207436 91189271 283203078 421626602 550097154 539404356 749288667 776561658 783222728 720422145 775401788 116959636 850279711 207682586 405098413 880188363 887095040 427085184 969084543 924998128 981685314 456115780 983390832 881359138 891039267 206187367 806496716 170220352 939448640 717921439 854477208 859563677 936476847 846503403 890000550 17275446 748507376 875476301 875524996 688130328 770484326 389625834 431536199 354265070 449587350 330165310 704723886 748599492 894017772 304250169 779889577 871500195 942173857 846032097 994173122 918539476 950184374 215134531 930686733 765462550 808392707 255808433 306651262 375863447 988755888 357756711 524768697 885927962 936178878 948076156 948406189 60473163 770848992 279342945 390188935 689924783 775266952 745357366 923290523 875447037 877986034 903488112 945066346 381523847 903971759 102303241 745664956 165125059 261484852 124610969 779433374 650291842 874709242 76171817 805948519 765278665 981435134 373382730 614605870 42789209 631448658 537305535 805049268 650374756 824549008 35529214 603366327 437745697 676738563 35380285 670091954 3492242 39858297 576317967 914373026 32567142 99166835 74682665 385750572 959522633 978411877 357593792 602050153 122583427 139683156 483406899 993742024 521542092 918295071 911861730 945622965 219656750 406831724 857051092 897574729 967011031 979276264 742633929 752406273 158312327 370285603 609942892 641017542 305297528 939693312 524371960 754694972 498294564 559959339 904451094 909397562 122292701 137947594 93469761 427085491 189607614 247141581 43228023 155480731 490848336 912612184 921287450 921711523 534721215 778569738 298609706 344067148 649021252 853720272 151003250 342249187 581796784 814677569 706695023 747955520 761048332 983219672 976344614 985714922 215758987 244333131 100583368 296221506 290529023 488759336 62308939 156493217 811517168 832944916 937073195 953246091 964144181 965273454 778473782 858567683 994171506 994584458 186049644 465603829 475052285 678900990 899200330 933833889 684635054 738952684 56375045 757697936 633124053 921355212 315353564 580521619 490909546 707575875 253334509 500349365 515743412 521314257 489546972 910097879 496133849 502634578 901184771 909936789 603977006 750884432 127387938 206095350 791401688 870332966 467521901 545562936 590832886 745687481 233620445 922407887 445907848 888998464 331394610 773301509 28966883 64028280 468611755 999355006 677095111 873850167 330180362 983661676 814222728 932977457 543612220 630310712 227112093 392892860 786228975 897680192 444226312 890484288 470501473 525242907 178006855 673848278 890779470 987725278 602707165 951815169 84951229 288661401 64849891 150376236 870785027 997500837 357279640 659565752 898660979 962611155 582100397 758537655 327513051 624490503 914883248 973394705 486269411 791263541 682533737 749449174 49962673 437471920 817204871 996050644 120034581 436202505 40788478 446346960 261738914 880235984 632387487 664635321 392934214 925587886 304806196 318195570 696404380 909248411 597301066 995113111 128502301 276050832 143656976 268009813 350771191 741165212 625228681 882238327 322270288 593500538 784629775 912383234 31498726 489148255 817022281 951718798 515722414 699452828 455623373 458641868 786212313 940706021 395705769 761941053 440732295 980997338 907957260 944476198 269301608 777804149 667351072 992870414 944010534 958841472 874378534 987709192 652792263 944409950 267910565 882595897 472013947 930074297 740795160 887044020 39244106 395754149 541736197 671004877 828358832 955249807 810136988 907019702 972487643 974210763 593280270 990417670 82536409 210938051 601546177 992298982 472242602 710107485 280070553 410294283 662988425 965325118 856223367 993072671 2513223 288471587 63038878 572898231 296822683 922485006 905944523 949956611 152449794 416233537 312514075 941995671 236281135 472576646 570349244 583604679 142753942 608004481 751376180 949170435 825476863 995266937 46741069 419757304 844488062 863025018 423699988 654243453 758186467 820635081 793801902 923254680 900147747 972626301 694731238 807234580 206810909 422770383 187566137 440096237 737142227 843188826 625702642 798785337 320461478 806297463 888837617 899130771 697440526 870665614 995688814 998906479 430493037 550003847 229122047 419429612 145737205 890595807 703581200 711454351 750908204 994029754 487288944 633263249 787042441 935703428 174491135 962929631 232855751 723433227 64869096 663340972 965585580 983876905 567168530 850125499 65813514 152108875 4517544 929905077 192115067 229402541 121103130 950147407 360145176 623996981 177587108 580733255 121729504 266805044 989446830 991458601 440552545 880922891 771947018 993762397 206645668 962407638 150044909 187107944 532744878 709898011 30752598 307775932 454250037 558697296 198216023 861663480 42762894 184837839 282793859 939067871 549213364 748589454 463937066 500170408 274475188 391278657 348121783 581507607 576479896 676787384 466691887 657679061 583834707 829373611 251593066 620913780 241876255 648010597 472391967 587886109 27907375 864704609 815254582 900372009 687835104 913445221 562165094 937574856 336207826 369130142 248708296 882081350 365832329 610106965 907654559 977530936 86538373 520726687 27141181 968952294 18638449 462725515 606904685 719338305 405873226 602045793 957019840 978426728 632169160 823605688 132617236 534959860 464166955 833588159 472967106 950544300 842689833 853241690 49332091 687871420 727627235 920600732 270975370 864214765 981296798 990395033 460822235 676535666 464332975 635363787 702136660 779888531 149966354 860931146 482865447 655514152 127713211 839221307 48411287 199469611 428857173 745847613 704319311 990648662 995509814 997433737 109127764 505652153 693619194 833573366 862340674 944169057 379821082 381255470 300911632 533134130 580120421 801695980 917264248 963778624 334452755 899002196 731733167 821949519 437833143 512955094 218053227 297696139 667977727 984229343 56154479 298977622 976432943 980771793 100027790 388359021 467127408 978122110 654442985 679122335 360678329 763823067 874847683 918732031 890478287 899424094 605384105 624018222 766307137 826882804 562850512 655145375 891410058 947933292 646146345 753926705 596795877 754633074 127583288 417069776 409593993 741362701 11267825 54039932 566227152 936842489 402181197 761769701 425480249 450702997 352413741 700131554 451646588 664597151 343343262 496246427 531811047 702427154 998912667 999579699 569600285 707933030 902579812 912682563 57525779 311021514 702501124 839393966 713558179 774254982 359178629 582229043 675618944 826318464 428084052 835742316 91223479 227655780 834867085 960895114 816221381 922637540 231273068 283109463 251503457 972309058 59628602 569541296 423356762 929082196 73819156 698949465 62147 451011079 157759049 622288359 573380111 702684122 723400941 819991856 484527517 979154639 206234123 982385757 352078107 463239269 27667551 958039572 847337303 868091720 565127990 640862061 91078246 590993916 471186764 781285708 89870123 610221530 923921357 936614824 634810084 825771900 817627060 903166957 522857726 751461938 502260838 508797440 554487559 757031874 227751462 912572517 727510874 772756940 990218675 993756619 679919262 820135625 938798791 980821888 693960813 994404680 549779119 706877201 819542407 836724828 948674235 955514231 719971245 771887642 576323387 958842858 696084343 849229179 426683107 631544036 304326951 565085414 182406644 749298475 653143612 915617999 844533786 915746625 767299079 995085450 188919523 191976150 173705136 219965588 97348305 674176161 879319385 935948295 298575676 916108814 757204386 999607421 858294603 888292801 260338354 785579043 532022925 906235434 313849624 661623230 50792606 295840139 54934269 128528134 18864110 750174508 28875880 401156982 430770435 432665696 476359509 629640482 219647610 968953016 34035916 811638271 751712452 784269314 836670640 945291327 902691429 997532446 787762678 875391241 497503224 951978285 195076790 258848702 103174762 579508291 483466201 958426969 989762408 991775099 264344404 825648860 751853217 942360539 379840282 498045661 899159537 900747351 828312178 935025545 873869388 972117513 214031029 919931368 707686672 714899229 558132156 783201749 844003793 917916733 13934184 246111925 57701369 476488887 160172389 953719658 179845542 603565736 471440310 875867665 801858488 950158086 84552410 828186184 179947029 610115342 175045934 442674641 371406461 797902099 708087003 875368099 601513179 613497454 892120117 950630699 688663969 994271169 435380253 838372619 383009378 490356649 245183302 520884818 503623447 599581148 488614446 541254129 487576082 859783766 227418669 295037147 723917628 906741715 386256654 802500745 511348504 534371649 291409065 437819250 568936274 611241950 337027748 948338468 345345516 480842615 599554296 653961255 82737049 105359798 144388479 747921635 888841537 903175030 46972275 333500371 878847161 944666560 990401969 998338828 676361811 980472696 747661531 871720359 965890339 967914820 39545292 634183395 445764933 546508852 556100909 978511057 865650901 954730861 631826420 807001485 336740139 397197297 858224264 862501198 857062728 946605090 593489360 637740795 289859887 790814804 344816390 635958719 417601754 952392947 30673322 395698697 401054087 457819816 133524694 590210597 310595611 412046955 403486421 679950526 912994295 942067555 33652147 781504134 757803303 950298233 744014507 782215532 810296294 962931978 879198890 917626018 841023530 847106352 544175121 693208909 909822069 936506983 482203148 777775835 733052435 914568001 58067401 313807971 302269000 921535935 215020385 799782414 950283887 961210463 543790863 559498161 151757029 635155630 407701735 636680896 157704004 576166425 818527048 882371036 935877759 969129742 539621987 678173158 953199178 982799527 310111556 676486148 529514696 542069852 609276893 638201667 523429297 528825306 245714990 530462519 5635135 663740392 492921704 838575874 253878536 992768655 638842002 857701617 217623668 482196602 382104393 395479701 968515786 979189623 952151736 995707665 523760602 770989195 582381232 718565511 707251089 755867838 148031104 639302205 223980030 589784604 806505162 841783930 240097155 431441652 485586364 564592852 858469586 869975606 426413346 701341540 578055645 763085257 51911911 674260502 915498161 969007737 680531825 927092437 216743540 937411470 183483600 757767541 230579220 905642691 402397043 689148813 439994713 645603387 389866437 442886765 146639934 846678171 544228094 698488298 350011398 466565709 980651446 988141195 745056176 921121313 291803456 471360898 547614835 647010951 723488411 990395641 917176769 954839048 967671533 967786406 801751023 858262331 759419090 846266504 835515331 863403478 207764110 862640321 163572415 231289558 641002761 694908540 722376942 847132453 129055580 169722050 482084707 506111139 273312208 651371411 584142421 637292953 623692787 906234637 815725105 945830865 503485877 786000408 607104283 649705932 814563263 886565128 764261521 900113496 635631069 948478076 54198358 111609615 847619163 851564574 150033203 439730412 252903339 460000513 596719331 922852467 627070657 639682769 379399240 744549741 334147192 481199129 167704259 798577504 253863185 987052255 732211537 866376644 622794770 996785609 914028089 946808502 258717554 913364889 634421866 917914856 994512059 995615749 721330024 976508260 731300549 748554310 192317949 928773095 198337652 547164190 949471285 952118481 852210825 870474811 782917944 890473726 141502106 845275854 656652625 880458445 990578672 997661658 492815340 773711144 779091796 938589732 258354440 705469145 368299393 629417899 893468422 952129752 852399918 951162937 126240841 833453606 912192491 996297235 365889098 465253359 94538944 674205067 376225229 945950828 39832971 988083728 735894385 924742761 180517358 337741645 658605158 911369901 140816754 513223494 651344961 980368630 847702400 937183325 852782780 981117155 773547967 975631681 810124833 842005291 199344706 940875814 872299082 949635197 536881138 996399584 159396078 784957403 577682550 889102363 749719563 808505708 75687423 746600350 678862675 770445183 828182988 877242801 488404246 856381250 491143875 682906061 509517172 697957313 560929766 788380663 562550240 756294032 616797832 916352954 495653032 917614077 850507204 987476167 952636127 975983525 447704416 722139476 985238598 996827502 607331992 877485738 441113000 550083824 514771252 529582504 845082632 855145451 630565251 812126194 419642740 933288316 460381566 808077901 147415157 458496489 349323723 511801804 452172316 997588103 295022916 938078224 49894732 718571099 199326466 677328962 290014375 405548653 402641683 868252824 628323439 963814600 539189660 623047235 224785086 445768327 87255726 396665998 362151871 983645206 805539642 807627630 260580844 534983513 549005186 566445104 150914556 222750094 449845006 852788680 996700740 997835580 883207353 914553910 99556444 181364187 329425850 577512469 949609827 969874772 41307951 671332568 286577745 732007300 716282116 817224835 501923173 530922099 974551603 982092505 233679562 957559515 7645231 379223246 18049392 375476601 354007753 498026233 458915977 569639805 925069299 970419187 613710241 782897250 475633339 682962231 488908421 566227157 263433717 447877474 21768514 577691678 783845556 983743884 596533111 977792453 829605507 942195110 280298509 867439009 455998 127024516 184247392 596018406 137893649 203375907 94759093 585925782 936670718 975752696 960244573 981974256 536500645 726402709 861347856 867680257 259189661 913180577 465419820 782499002 752326215 861249065 244563764 756589445 191485757 943476787 191235390 226937707 516198999 691002533 420698908 673169565 115888191 915608192 10047513 569760390 4912864 529426825 239606064 581457340 701343198 790172653 459400463 787389494 559292868 915685770 340159360 996430404 462024200 842739376 347441807 896448621 327848092 893635223 458655880 818595103 480397591 810532895 73675732 546153866 802293444 869874691 354597125 701758217 680397344 888974298 783915319 807577201 835942758 867490274 35160683 897414562 608450433 766427827 872479744 936035993 411583144 789051116 687136801 810107137 497868628 984641807 686261215 782335102 949553729 988640036 766980911 806190068 216291809 645327920 169309117 201920457 952783593 989605095 4830912 279169412 634433397 867616243 831566283 997381599 403319567 689503606 134300072 517131008 219666634 860986959 765185564 766816395 536513122 585804450 650825992 748166205 367556267 478596571 717776812 765866574 931552688 933146361 653204570 954833537 385258411 739425415 247357860 646034782 539600983 714959357 201750702 598939214 112821515 825869865 308137131 448954610 901419682 926957707 617355577 740436936 812997610 947649673 337478999 579415355 640411457 745983279 411983538 730439479 784482785 856581916 119167947 326704879 238568608 651680351 245629476 747674049 80646790 432078641 255007344 675860876 321273278 333554690 958235692 965948948 510511366 650399390 761404653 793901026 719954109 975895976 41583991 192989775 455886284 875044768 831227630 987027045 198462124 896419180 800228621 827802027 664314992 981554746 143701262 476685101 698554778 801130762 644126062 721792966 229920533 904810153 612113207 944463565 936265729 958722379 650923118 904784291 732981737 968594279 379381150 857587154 411296776 936659317 698299394 788254406 741760638 767706000 948592438 957121218 76924671 94377445 90372489 920495754 735958031 738656384 454962627 837344443 714318094 738475264 580324739 809674540 181264870 554527901 197102897 701612241 972842800 991890192 284003018 812706316 499388773 690876264 460777788 488313396 132617702 608121744 41947671 443244482 994701617 999173272 988128965 993285404 389213768 739398803 194970168 244752648 950061917 971352149 707510056 959609935 47027688 823178555 665897612 781595150 917902427 954014632 446279155 782384619 484126938 740666260 145775012 787146355 975093452 981537349 598552981 798702606 509120720 733220673 678395054 778202993 705410421 735862443 585601143 733352020 54002488 157398850 74294111 856625048 24816029 549408377 698946447 981606918 523506344 562513642 710642177 884038154 900666879 929154160 661091657 838461373 884734209 939824763 354551464 629291236 315943981 841880502 579844311 992525692 223205089 302604066 210424045 733141374 523739210 585691871 778619528 850711833 400955957 423480501 512858276 868532000 542595464 701515806 336684237 870934307 267948606 716477220 995424717 997589208 212777962 376083714 551353052 863424246 744577738 748517281 151779361 517157878 383940942 841576886 179228955 576295457 456559120 867331882 691513651 994319877 165938832 615716510 495664613 965211111 317491732 648276722 664156336 789275063 660827606 764126213 643836544 813054730 654623801 935062845 136710977 388147262 987623373 992489391 457755140 561937367 711211834 894077711 18788440 503882148 163419132 284699048 147284632 779655289 288356288 774545911 901512871 914015027 630013627 823233895 175009113 893965374 77118726 618429687 663770243 736231597 854810604 982652279 703881230 811842846 512533481 704115703 684909413 960070118 788718728 866039509 786625658 852692068 64444087 238711044 983543604 987540997 962859628 975701785 21558414 611735550 354397849 441725664 998763203 999565264 938028607 991487245 912965445 990059304 199830194 988832006 233547345 623202802 239107117 589114433 800268018 812080015 47751956 351912053 606971196 912478597 16655617 868139030 61343595 176270126 311843489 970168660 489015070 683222418 225010455 329001952 671641131 996213261 645412411 929612174 286968558 768114721 142997460 970166649 656858467 980681973 132830839 940320824 393955281 993573487 371294616 723769350 904837132 957594116 875716204 998977933 207052269 920533008 535928906 746080322 594225408 859036739 42931636 658404003 542873285 879079389 781367364 929801962 657134025 732554201 885489936 994206449 258991754 579727963 981045442 994902456 664572982 891036125 608342330 687969271 152030072 605648397 400632460 698929294 952462930 984240346 946987069 993061801 457732504 636960863 802021940 886566905 14296321 232873725 522251165 768607034 556174659 757426256 475236670 644191166 591669294 799358152 914006489 927676247 603356524 778986247 762610579 860014699 544379256 975463442 38680567 587697684 575774106 986809897 328684740 766981245 233173659 332396788 43910833 266940329 499130158 643989958 309993184 564207682 121301613 892336210 587478842 822547451 207311762 564864619 940118722 986888272 144895223 354975447 274725717 421377615 159109108 449020917 562205758 597200340 410112332 937650107 705502849 959743690 248460169 933086694 603740114 670454167 844128196 877921139 568880237 932627019 902812180 976034705 782936679 934063760 67827002 678490857 681936554 687740246 70826974 427265268 838093311 942184710 715291550 986631008 33817787 660424089 238118842 333844013 147858545 959616938 130659913 210325501 997571652 997583059 380399179 696335705 407437434 889685713 750732063 921164006 6683214 449913397 533719547 600842875 484967526 572242501 48811329 899870090 406813247 523502501 998894067 999100900 101256462 726429922 705023121 805799643 96993800 342058837 587925968 986806175 649703562 677247503 186349151 753363215 259495731 874002383 159458951 936701148 57857069 322498467 76220702 785389699 69731363 141139427 150561435 388526669 303932962 754579726 603972502 840028680 865243447 913230835 928120324 934290929 127433983 190333490 633703972 940153620 780695556 888839340 408168385 477934940 947764542 957112601 895796836 990661717 28584475 845856639 791162912 915851452 692759054 860545651 135725492 774595713 790538754 947434971 600181310 956242239 767534958 808426313 939575931 972730832 937632039 999827189 533988867 545293027 115933608 498092799 727342549 780944035 220678825 447695508 388254774 526250484 168357722 711711004 93587484 534043065 290110263 620767160 724549198 924520952 157425335 813939402 743724706 903767229 51963411 991595592 808050269 862609233 948565742 989265695 152007348 900866548 484111992 924816647 391890551 714669669 864767320 941066227 887629013 913498541 397575435 580597867 659661343 822343823 887534742 971750574 710316217 876009938 817530309 919406680 757645077 984195007 730584719 877919323 60088567 211897617 666607252 983713481 406289406 966849841 976232468 994833572 632574413 673189800 34252288 726153054 979808301 992091724 297733175 610927174 358671348 725289816 288789609 600636590 927925852 972406892 306376197 898996531 792144737 963318972 822632872 851010712 27426801 933227857 808183195 838738669 828169571 829635257 828654555 886255267 210005973 569391510 7147025 83221842 953672597 957062822 837070232 962565488 585379605 730498765 81239066 561721066 605310926 768220678 210612154 476737984 659771767 901485376 789727376 966621150 843173407 927743755 869905455 986727944 269105206 505399685 702392537 972363477 249637575 429283081 373930158 396647200 581543067 884740018 801636836 932310977 313164329 868573743 306807960 373070734 886818073 995392177 630185880 731732498 244647641 464538519 441900909 586955993 333467614 830815860 704332781 909433157 710789572 887501114 941941671 997321068 711519248 950561347 689826401 700991082 367971691 818453110 372076155 846311471 288321594 478017560 687908543 864065523 790287524 841825419 566917124 905460696 235661084 560602385 393550147 700385693 512257006 626633443 722852572 743190151 376829964 749480473 627947222 767252673 180585569 970358146 362481123 988109787 192605831 744404643 23696634 360915163 943460126 944555355 561546964 603658540 627986856 666958067 321542253 948082234 945259215 992517021 110667592 236265442 407760473 703991314 795267421 878794897 96819830 373616219 338973618 464821370 594667366 726845773 669291654 885198497 804215495 901950552 753145211 997406515 116566391 844323816 514200449 517377233 825557893 932692038 95358283 786774619 766559647 811621119 473949690 639062195 445521281 819833356 507024776 548788875 185657122 320860665 160226928 212470780 870435228 871912860 379125839 681696772 251730972 774623825 45513002 55344783 670424598 923811601 591728068 667249635 902488937 995055447 63092762 147871654 725959762 738404538 377971318 941550410 825461597 902305056 289644908 725894109 111813625 283405795 489626160 973521827 903961632 955164221 839025934 993373032 145466481 364362066 653378174 708515679 329697087 821197423 855849249 994229212 808612882 837977305 883248808 921250688 322010519 918875629 360320339 665476142 925514867 990616762 555981401 890298214 23055178 978072581 183441458 978756910 416625334 609282140 741803852 954539801 131853468 729888831 393472641 401415350 439508833 841521216 965175773 969560263 682442620 904315184 813890813 834027067 188972052 480129816 80866328 429776495 387829379 887900482 95362181 396284673 810034610 903603122 683753308 853910752 534848886 922247098 713810968 913669439 16571027 160850797 809992980 963543153 463868621 942531349 321264234 328169206 997745402 999681368 23482591 711757024 757476966 918583336 593148209 936732946 528547620 532649146 200124786 847201714 174618366 356111805 321888404 588296449 301513054 582882856 809339268 987733784 24555923 169494235 874105311 951294038 293687889 758797940 977004902 994401858 905482546 957086086 201193722 994153753 415937380 818713291 574848367 887688684 646507369 792728481 103527983 791834754 105618678 395209900 821959630 891431666 834466896 954007747 827467913 998169022 962021139 998642026 387709427 906084226 845419 961939961 134308388 270104418 794585729 925257151 996729086 997307748 253149846 328764428 503815293 594662008 135143494 969331753 113873895 499026960 712761536 802531813 784499020 999791469 224860657 745511695 73655289 162800586 907229892 959578557 268857279 951379741 362820251 846350239 82906425 764962996 137851667 542789526 692255921 891304317 62354172 268014167 988992814 997647354 807645226 901109453 501105735 884251724 467869338 779798245 858628404 977382726 680106702 910839710 210187491 772591230 944119181 961656938 566926885 786832091 785499916 922771173 717473716 781804092 374621218 786011691 363129998 578118106 407986866 440636510 550908943 811100855 917173968 981155414 938655490 969392748 867204177 890262855 281201647 450175879 533369647 936130469 514558161 810842591 344527712 452031300 516026906 553003726 177665094 660455197 727406415 868519651 648574403 872497281 15613901 559493348 606426381 627176174 647644666 979713716 702398561 974082557 910401664 922116354 497258863 548336243 661205846 774598627 650298355 793747533 77537582 542285022 79546354 320667060 767208638 991991552 508006847 801378323 224345371 565322157 678155569 909540824 527535647 779699365 84387486 614672838 961621018 970668011 52603769 62017676 106691415 255260349 494093637 556356778 802614528 936189950 116320472 304162594 839955005 932426938 463253783 850556833 357635588 534774298 306512940 482443834 461228842 692823079 935588799 993006772 412287096 494607694 959907651 998553000 910109317 992773164 885518752 961999637 767004560 816764474 760337396 906478408 685356114 907521136 218447960 634937712 513015640 640863332 133886189 143515886 33864419 315989983 14956995 428289185 108667105 139025205 710978258 783414423 505838432 932117286 670238069 842389182 776727900 988719254 970248852 976750801 534014386 617614687 879561735 959568408 748721196 887159194 709216520 759698155 776756868 866768657 845242433 885275237 900732956 917330046 134738226 528490598 167360908 187695793 771333146 873140000 156236476 806809865 532437071 822275896 845145272 989584733 114258978 121912705 938120277 989609021 519944392 711005135 499208283 938741206 874753414 950077778 149443747 531552254 427502807 566246675 309470701 396140807 635013068 682206705 910454720 997712064 550781703 611191835 804712516 945968311 98809373 782292580 951915061 978166072 534265058 786004421 631429918 866679908 33086261 893991565 259106415 336910653 642840468 837899383 891471511 961422004 418789182 832175417 520352269 542678574 256329350 286159385 906162204 974773970 442985074 597837156 206358941 978703185 457786266 645665238 752225702 978349911 71280634 224402545 608989844 700333311 244015868 898451731 223558328 620479159 770289607 882743925 150591859 994574509 119569517 735495187 42441032 233435474 426849873 661957718 932706503 959776150 568558168 918272528 899751424 965126232 839285210 883201148 76567282 774116840 810765151 902604511 983408783 993765921 661803936 841797617 758516962 904351068 560347938 697658698 880295829 940269936 935654581 963996096 503926434 931562432 6268271 803244345 940025515 992123919 699311378 910372519 155764557 559062493 134800807 499719340 699454326 750553581 339259113 709516837 237858100 869325955 535684414 765191257 691382978 794254602 574283303 678248437 850094424 862264717 458282422 652640555 884632927 992184362 210736640 745762554 857049712 864660699 406509338 928134880 994361810 999582760 844519748 954730694 78269129 999589362 480457026 948637620 362529857 654738600 854579443 871619789 931040098 974473697 352411901 923339845 40722041 821595577 944366363 993211599 437143774 797400527 708536821 786868383 590554467 916476135 473264017 861009494 464925499 654961903 368113759 991105164 340776075 434657266 76940728 503335661 93307535 686620599 483319036 903654040 372686772 910787245 392844703 801973685 822908095 826032672 534340287 988972422 23485429 316011143 823083668 876986299 331804227 577227287 352586591 699902081 678175941 774994633 398140609 847846354 167024930 877873388 501748234 884687961 185821876 955887308 753964878 904161365 397302426 804818819 349529702 512514925 596712592 881093418 7165389 97087285 783715178 795241431 299966308 811348527 399274929 622200094 842941967 846914429 840907535 934305567 23243164 140628465 586398913 749740908 720412866 862754842 728182632 774794999 642155421 699815185 792879935 926910788 797726817 959595987 574891802 684252375 95874531 861180801 678363109 864385758 165958881 910428195 14441564 533809958 454958702 763603290 458917780 752428097 230551495 873532601 585004936 669442767 988729007 999797527 127543143 878906176 202180609 305211243 836180166 906906413 792922770 887447914 269653538 813430857 322670965 343533791 324118491 689065424 632310839 970443269 600923006 863241713 5380986 441886941 275472148 325821644 211654438 341722903 716232814 870806187 743008837 787484296 152526896 917779329 167621257 308483192 5114283 169347702 193205085 659561667 927127697 994272964 945724405 984893356 361584216 863236940 349567204 381219741 545337592 894803644 315130411 977183233 51503975 602609251 831918420 905928501 98944817 632031340 279284202 860062710 950786038 962252422 305834157 934129312 366758451 488453386 223838920 778686168 721526050 909468104 169931362 759386604 320743232 713172201 274114902 964941431 430050072 695136337 122735078 400826318 325867114 791467501 247320777 934489198 662651413 940771634 214850627 699858375 694881804 802625121 420414429 713379829 55470670 203535014 452454068 454427873 999361334 999569263 904369670 977593841 163491699 278833707 35521869 478951210 261414808 302188115 430059358 936616975 399355613 915543765 278386979 289389070 19480671 408380959 232645726 714401529 868117754 986476700 64267363 542988024 851738576 937227094 478660030 957047155 542828860 997482273 45070486 457437648 668334915 756048103 391113310 995889798 107179731 511568391 800610615 911415847 692214590 969897643 76435602 983518511 326789858 878817609 492191798 965195496 310845091 817123670 831176185 849628657 462417390 904697030 80898014 528204805 391798714 825172367 296789938 904292535 250337256 746259367 128648857 680752838 961581959 987420650 372243895 576483351 918452461 960946765 635086459 929902960 571093960 907918683 660116236 925610691 827947087 996598511 996530895 999830732 71246819 817852233 698458592 829270413 626039946 671693127 366777905 708274087 449830000 877547801 551016808 682326123 129480648 613188902 847543788 875723875 559947231 837866715 590769610 638672774 107598360 388331845 870573029 986078107 559470314 865323379 928896895 980160711 869974630 908678092 232884492 879119365 313615953 827633092 937277557 982456089 656634121 684415260 595594626 921659338 523127617 891519293 162423336 527765907 812969603 851644000 413060368 434674468 12894905 607708221 990186 111636700 960322601 999463708 360144692 865839653 546760674 723350686 881543849 964813139 938848688 991757803 105745779 885073624 680169405 751486929 28405133 183390883 342547942 610330520 697205489 998194147 872787300 968767374 673951383 905229232 794910308 860881434 135778413 283920860 587720128 743797205 176229191 189187516 869372151 883617192 933792590 979933667 200337810 293825727 878005340 921921246 6292785 974448133 773077707 866374240 323037675 838844496 696989285 764607352 324756827 889074970 231939385 300824051 461946024 630726065 198518299 685847641 769704806 940121764 538415834 556137389 644755617 649556525 396249213 586098338 576722467 605049730 964954441 976388033 547561141 907020117 524432691 943572662 899132955 961352296 732374220 781592271 547867715 995613427 438006076 843660126 437099381 818118560 266694568 329158828 596660136 878456498 2774306 361839398 703993351 723055499 608004863 917986122 813585882 980903520 318755755 416238157 795411151 998456549 516987866 956670399 908501267 993153301 275982140 857641342 174757610 557528485 813595589 989597283 695426085 791451388 504172007 542362058 745551896 752172053 930362018 985235354 242491289 553780974 87141654 521268230 700395698 917698985 961154287 983939274 737504334 966309176 786818926 986915097 769691139 810656675 917297400 997629704 858067518 883020090 205741059 550660146 595079552 922541784 205278181 442043150 738551715 880700960 540200754 961194650 475446818 731822025 275071913 361538082 799091126 930277598 401779676 478645008 356868374 506130874 189422404 701699500 660129524 747816303 92953468 554759745 305658740 792559878 930621011 990194156 600904066 999062368 372040201 587908081 854297284 951297569 905905874 990695092 589076356 623729853 321825377 639675794 524453454 870181413 488393982 751619919 732436013 870423407 537990904 583160583 288176152 930552726 824514124 846655757 112679256 667115328 558536405 720248090 32445471 785607398 78859507 497883313 581973442 678248728 672907989 988091879 206218069 613703949 920260173 950429718 469932805 658042412 201335911 537886806 336154469 736101581 906774284 999362789 763726683 878519750 375617093 988651729 940734644 952408572 961277715 998700746 453256263 626305299 286884940 560044172 499840132 503679469 425906151 958419981 574071896 918107651 556108723 840699031 772623823 774475071 764972166 896306219 543300059 881121833 90766078 867442393 252665374 292223670 566620883 800626585 500623889 908024974 802564886 983609151 918116352 987571155 801583700 934454278 292278355 687857500 434157919 883494828 104614750 984730766 269736516 598150432 662228534 765742117 259962616 716223643 433271343 491622199 808427121 872548873 450494052 843848346 84593064 320854538 812184098 922280665 243498041 777342629 907866776 955936802 80526203 127427377 450126419 611017949 444521507 619713392 53764915 512850406 899736882 993013880 505962001 689243350 459896779 766000601 296036020 537073499 972943682 979283396 365439326 547486072 900592998 962108133 699646150 786083785 820831581 974759753 407257357 656779391 59899067 226657818 578844620 958086159 57218498 754047947 592676309 811614108 620302544 936006036 599589817 697296433 533342123 694955092 240952430 998282485 521250918 774854993 126310358 384770174 300370763 398719686 387656600 707847436 860555392 985284278 193450792 508864575 626296632 862003275 379015759 831961871 643557270 724101692 426767930 742987463 451398182 774033476 278026663 394294790 805578209 998038776 462652140 604423202 926840345 963855158 215000297 618043784 304750541 530440920 560075313 719876529 56100053 566681710 617282414 663620251 134273628 905565776 878017162 985147330 580306998 742244018 879571218 892438293 916916403 972264111 39579690 964955973 180526227 826985594 648583434 833392909 524928376 815386094 710513730 902496149 186045080 939259136 398580703 601780287 807821970 876581140 15996989 121266084 889388010 964086803 151689777 703091756 472704289 925965887 887840068 950226053 479592783 993298195 21721540 278622634 579142903 711849197 332025797 588769622 743486628 838357634 9353138 295640876 205504076 248142829 443328551 859914272 263430810 643572458 250058519 914951269 530835403 918092711 922623788 945313586 610030856 979928341 332010544 767228327 486616068 531172264 662354678 931352617 738362055 999929485 267738345 723784118 757972952 765456629 965049492 969767840 634581328 983268074 287319774 602869155 778947335 985794818 468075525 638954859 471511570 579352811 816110511 857681644 843422441 917238918 690513171 770274331 198893594 959912823 69498617 196198476 354282587 703591356 696220049 829857384 557210092 924417889 249420403 648583912 287707274 423561475 717202058 820482802 276107984 761060922 604840343 961556088 841845701 936960230 198856557 598068800 406971362 828418172 93964469 384802400 634263325 724794580 509145659 921884705 631713614 894451052 851816570 915759624 899513693 980130171 464364503 908995637 895701991 939112443 732410114 984417734 224044819 880333537 157125912 307293763 28525049 171605299 50181969 109381219 527411255 888349832 118581360 391516865 267104238 450998591 544337841 737910749 783099629 900982719 241737056 615737639 768860239 833567657 930316029 976150649 41234924 979643864 855319653 990325981 547254554 958854723 183899058 942328787 886516031 913170895 239093607 899551798 180482507 898632267 483964662 799424606 640982611 754283251 341322491 789587928 645827177 982036364 535447341 933136555 465884245 789738445 777326978 837284267 73095227 639049676 206482913 701874324 209607870 339288152 122182636 967615505 80415282 193139600 671718841 976381760 482067835 916842920 561662705 803894924 227238461 958368981 82482251 868615818 635334296 969432357 749595004 817920728 65623132 910154397 600317420 791891684 6143108 820085357 441637873 455995320 833244604 985215970 740777168 850325645 303719677 803205705 633352129 966046287 88548595 262229480 933691109 999898090 428836863 640733973 46531358 361289021 968256988 997573784 399158464 538439642 825244471 941121510 232400214 539136585 722061477 760168451 597948064 919976933 657758764 995997645 424867998 570226245 643615612 927420410 13869683 280993562 744158647 984191774 264210751 359534871 934448379 979565798 277179520 282900123 715426012 863782752 323682070 963852300 945135324 967689212 939906646 970517151 121336056 160010114 552637486 642628311 241240007 602768070 209868492 255870283 654864590 857806636 990318802 995669667 766802086 884928072 257381077 984593851 109017576 925438318 368208725 502183227 336382592 680354655 683722668 742839283 223019171 884068314 200474336 282513561 701983129 794967094 298239298 302066822 361143151 755216695 563588205 578480904 207897959 365532525 789155438 849560328 700665695 784407158 330000716 586008064 916755167 936487145 56773610 100349526 40990907 408258695 899145361 905031469 728964560 980086535 79312880 157922668 405301421 737573118 570740667 892777546 88992251 290181381 927328242 938319011 928525361 932131301 37497684 937803362 12365069 713161358 316317308 540017911 315890033 686039039 717360189 977897962 730228638 936535368 500268491 846750972 382811945 729747727 305534426 746358033 839082495 957360943 91242094 856725216 294521807 956706349 196608365 303598063 575970954 584862998 484312629 797114347 494630955 675327794 965065625 968009077 797489411 975136014 737456613 838341680 654106041 925186820 696512942 721167806 386349197 746749925 702255056 757735038 41832372 101489333 234390881 408327786 466637467 703850810 979830823 988303818 510368160 768195203 852741980 937452770 420750708 864692413 12222954 987836948 593539013 630470774 675415273 932938258 670115322 861281307 952947398 968813314 729077539 837203045 808801404 950785856 562380491 970000713 569171900 940345258 706155411 837812702 984284092 998809466 65749145 71435877 848120101 867334909 376904797 801009506 544105182 753451669 157670002 735167870 820010880 848564033 335610041 829250238 864162185 970727456 690768660 863665481 21118202 971210218 767385421 888745152 680049318 784773631 951050409 977962737 252645306 752791925 674925556 741952885 493418177 987353038 334991727 672315617 400570321 524935292 970198 536066437 68356283 532614093 831735573 870293814 416926791 506077106 473357914 750782868 743670063 923697829 14090516 89891837 551186824 922873377 90609649 929216652 670528690 887013518 734367928 824002789 240201155 371538132 978765477 988441719 79305128 453447824 288549298 540484911 472204455 635889151 17586131 254746585 59777507 279226040 966641136 974708726 531027522 778708711 682309315 687171378 158190215 500678145 381316724 736624047 858383024 875825103 208441639 611714796 109071598 867756562 976563263 981569999 883202272 906686060 192317629 388864387 544799503 631345889 680134762 915101790 560339125 934119830 395773899 548107142 232922680 934827356 797044160 901581452 660927817 929520238 672648869 799137405 145062175 989495623 691458979 901263014 364924265 722273547 547436363 697912714 596784626 695753697 591087103 951627606 500619195 649387610 538875858 857326938 803371602 834854670 883833911 954826515 557414861 950827891 306 546813893 681769819 736323762 121012614 442568511 349433311 826157053 308399535 512037306 718173753 831147440 769719698 998997115 859398612 873129506 104203378 768577860 40656476 560375791 563284981 617247021 903083312 946280874 145366628 561546317 994603932 999250527 694022057 706376671 59577861 574278458 131462224 133766593 759458278 830355124 277571463 738442295 148112543 220483283 506051433 970412803 871861598 927440933 791677920 960114354 371793680 671548294 84724847 398332342 145645839 300003407 178842112 439103451 589991472 804125422 11890812 458802249 525815921 771814056 346390305 730156389 943814550 973901683 331177399 993938393 806595197 945102745 133574254 964443845 906234685 934912255 483716428 512145596 489236051 504629646 986965966 997841506 420746331 645695462 648247202 763289505 86559871 585279869 890656424 903127179 26962898 456089982 595453691 842929108 679442667 767675040 627997779 988547246 499676365 804553173 917501973 919772084 582136195 585576917 892863057 913320316 819060409 858874868 380723730 833449152 138791890 599995717 530296837 680749075 392980993 722834239 59213760 621431720 825702429 864600332 566351723 994145330 851723415 965203389 55579542 318888479 796421632 827957380 359408574 583545051 46426959 434502752 301095328 400324892 868751578 925488080 487598542 589930377 674572589 958380659 141832641 701550480 934354485 995160376 130955724 665747046 10987952 593969330 978545164 991924920 141070492 982655799 444018099 616757793 460911461 672178442 472754511 757246028 160960650 483615165 783970519 861102851 98302989 334215225 534090866 683848268 647613700 894695176 842471389 949245560 892721196 965945567 377761362 829148514 845474154 994154022 328164684 333581867 341477576 647683901 965456898 975732734 435259939 525488139 344022471 632043839 228392114 848882835 622208687 665326990 453984610 835105486 267867990 334043673 212022168 762268185 606305881 627246115 115599791 179372135 553445935 910913150 129666967 281053469 541015182 583936146 208661963 425482265 94314791 375326164 447896592 630801076 157611345 741360517 288472310 896395068 444913256 479700921 808337685 983384750 552278223 905944437 662633681 687404829 673951422 917747817 66536930 880901162 166910059 172247573 737837640 932539726 477522730 930240360 56936295 459207336 500676222 823833344 196212545 420077229 731149484 956343420 351813678 545890139 881824838 928074784 699895887 853558585 170011103 306868362 935516454 962520658 837890838 979807753 79799927 495637723 559433543 775301583 177307531 856370409 271330745 583719167 213124942 819032782 444681303 617518078 293809232 640813727 614144308 675700545 59599767 67183456 113496395 876785047 416975264 634225215 451345516 485836472 511775733 819916355 325535092 533949297 388184549 811203390 720086586 940896013 700652403 950075371 374244340 578046124 582037476 633590662 700225086 979544667 749175219 946622940 241308612 379245013 75275540 767604057 728265950 895907597 228422724 444929488 342455582 433086015 191375127 663586114 346376378 440117489 350479960 679416679 640920085 893528074 193480870 296675235 537295250 548316124 609115064 639202671 622334004 992343210 994110195 997235095 215503760 942866849 576785222 911415872 15283966 720079420 179932762 646192381 27178040 289045321 484771237 602818504 728534150 952274319 394112863 711322337 524466069 561816756 296668379 511139051 191216783 191783239 398888412 598559174 359914640 367951162 264100412 457384035 33585582 722819034 156643876 950503932 660412211 802987741 761506615 995219675 113056345 723063267 659974920 943995587 677818449 988330461 261162491 912665012 558407186 787184892 300545615 507362702 24548659 811320482 221019995 293318666 432906363 557639877 237329663 862496067 24231571 264338326 131161264 162143483 560404901 924220144 409794876 579135698 130802870 587376219 980480591 988358500 542653024 601045398 995052859 998571248 483183990 759555030 539506799 885063535 972803187 974039593 439088947 794423499 423152638 563705195 777306978 879264905 208862342 472220851 104484790 607839551 559690143 864370119 858295429 979442224 292896473 527729961 428263023 764597865 777384470 810317763 886760052 956443134 450060481 653904838 260641033 704600604 532755403 699400244 595346290 603293479 521088065 902434441 349499610 876815866 24778467 864874325 839993739 999737770 766237628 822303161 896257350 979069716 517176084 839614177 954940860 964483956 268380606 799665035 128741464 227718765 931917066 953094917 964980736 999015970 748661354 933757058 880156562 905755124 667865145 780515851 603962116 727638742 525122592 808479038 716249030 731856075 995727054 999666773 229073769 294695502 972739802 999683789 499886623 916042952 970536959 983451521 703606284 919045531 61508576 369173860 603521828 728334255 714956195 908840020 120128778 137163402 304432229 547725915 644020119 698598383 609556085 887763360 758986776 894997100 475391998 478286903 243682299 897210369 662477340 875440490 303903068 930325829 832920487 965208886 481903977 746894757 310526090 344579973 148236129 935970705 484350052 830954447 396306322 654231279 346667827 651719167 398286672 498360481 637953645 987206049 640317735 719670603 305031540 576106080 860924880 947740531 11229547 996798338 459473135 709352924 381489393 484446247 396596148 615444063 819266922 956431332 271109182 997398822 796897348 888907635 249047332 854108897 823855260 896096153 844619092 850562614 833907871 853207605 963735355 978038847 298305839 335073649 852991705 947218025 398749035 989854461 608572114 907985970 233477189 616777733 955806230 975146065 489688649 706881912 644229965 746591577 920535249 982324105 446059312 915872991 634382072 657207777 627359716 935758222 664271416 799519327 620549692 877352509 699598198 833693204 736537184 818645609 249854931 426165315 761894666 957827921 829580257 862851201 679779634 807113763 56632637 150572122 35617142 475073662 911185768 931574895 640625304 763247366 208670036 724571439 298828609 633447991 126535288 394084710 955210046 996415064 448044058 906370371 793394769 890321552 729246590 808991244 439012584 821259901 45407834 100137465 785288045 802483547 994063648 994499077 610545215 624550023 474908994 919398672 525561252 595110763 639702462 940711115 461695752 625676949 76317366 463537926 128742443 369525463 124270281 989386781 981283939 997117752 735005285 967609121 979086916 998499793 15583550 691882693 239280490 353255785 390169113 632671141 584059859 793870818 88529088 605711328 999181842 999962153 465504092 863214380 43886914 448757029 3282103 656422700 559629216 693275684 532899554 904140083 506031360 755841446 864315676 982244900 905546341 958005893 578259159 838513009 272073004 548240639 827850485 895959093 855825236 869999746 17779860 130112394 809506242 825479125 909639330 925087499 537765454 593489928 38786374 168914255 5587472 963747677 325502525 935595749 442641735 897201617 421668589 702660670 960573334 968315305 130281829 261975707 438869675 838590413 139947316 580125353 471236474 598510851 647029818 699032239 548026612 995209919 180026105 947002454 536649773 927290073 463646433 537522329 562623814 897104157 756837 987927107 491510605 774459061 447677124 523456272 606236883 632005647 388136373 910581185 512027527 934506810 527174420 753993717 991565210 991605203 280971152 920052566 83601740 200969773 400225541 576265101 735832796 842813828 859654464 926792733 230166570 534115904 976821582 995003776 886619784 901938573 732213175 817888035 667679544 895865645 14533319 105942315 878658395 994652543 980471742 986065160 80582369 720289952 420095120 801936082 494886813 754620064 373795360 889427455 203097781 556726419 261400304 870892165 57720851 746438967 8492089 182284171 620958717 962603695 6605874 605728999 153639733 516381272 668446280 934175067 528215862 887929890 581942444 745784426 526425895 964302903 840454528 951292282 712950637 938063145 351200771 664290165 606036410 742553690 97959056 530348856 22948321 665498603 83579494 713373058 830800514 943960500 579212007 700799100 724995138 858043580 95639223 487979298 577006040 650304626 772188852 902615956 277965222 616742169 467704793 499493300 401339340 570027730 873805414 926883237 774772794 892129681 264578909 685595480 381290744 826773078 877052245 979725223 454644400 494620297 366623480 797321935 581064798 755910056 918152657 961855409 585234629 746398275 434153824 860680137 382102874 573899726 429553752 434867283 459094499 569731503 709853051 855126755 836881549 839341353 562915921 769079388 333164846 543857487 862476747 927738298 329081539 814172643 956453278 971482230 874394711 921399507 229044048 519075138 397266376 984819077 337630086 898533475 425820234 907061429 779892624 954424189 125607211 683719505 242365249 398615814 845572105 884672578 899864485 925649308 335585986 665459928 299821428 984041388 303105298 325435532 725513985 743298300 47280131 424023616 569989168 902906539 674968346 878347076 367709695 371084359 912390455 994430435 477238931 524801387 234520360 237614293 226794559 913105448 426834217 579155788 316322756 383549057 928012723 979797394 783218026 843787228 734219383 933233834 741017166 812293094 192185318 702135220 463421405 711695509 786732408 860412466 404637245 776209987 428790810 805441574 50837258 382664769 402277312 969544665 382370441 949018148 904352937 907510961 586976513 949057230 18276783 826022361 338842208 917186690 290004168 458900366 123146573 510429434 251843404 510676312 393373216 471950855 364826432 815443415 401353070 799847651 850922750 974003206 580152410 727498979 53321713 183028804 556793770 899220843 780174963 888481663 639882011 978726039 5910834 811620702 890997841 899282492 442415131 509308296 452615453 520454906 317364972 995765519 944837493 958474219 485963898 575417299 495074099 644663613 812260650 901287094 190017072 274322971 942245460 965185405 880191587 978096761 371406526 938279357 411453810 610287091 674891481 720455159 384488410 915595462 377331435 781479867 720743037 820874679 410785200 932756252 643594833 667031001 746553535 870320924 695117517 846502266 716464505 902702437 429181554 959468664 104482017 672289815 247710417 943860634 105778529 866599476 2248011 607686182 328878636 468513394 786707152 956091577 23434307 831546537 331876766 452478784 817134756 898761895 615347684 953488022 835462119 910528617 887330123 944886615 592176749 840134926 812354386 912331657 296038036 667348399 732268299 990566439 670774694 789489861 813051527 830631682 866977902 891858918 628289164 924904956 72981166 887930688 897217840 899681601 780262715 783670650 363290598 973612753 909486894 978511396 167713959 647241176 761739409 976766899 330099519 356338198 572181395 880009706 357741486 631109240 3861995 54357162 342266438 472296225 608819916 936736716 238763938 931696349 373270635 962279094 376195042 994819572 132366406 823022032 820524787 994707844 98097716 453880621 279659838 477112022 433320388 957577538 239187153 771450409 444141179 811870059 683690643 989351663 964317704 977318501 57681541 151402799 472993313 610073783 633934636 918118976 840519999 974128887 28008182 749521508 887111353 992757340 175738453 810579548 735120919 979813767 181703524 862303594 499627950 521886732 509466564 784908299 888320033 900392754 823948853 836054004 6636344 562161447 368952242 588215111 108192406 410680557 177532739 641536910 9856000 668207359 474973506 883818713 975939699 984237363 771638767 841668325 50284280 499768170 231641969 963974999 148921954 999429647 512691419 701932349 510091015 857891124 670336403 861333111 584408943 961866501 808569008 837008830 38409874 896815347 374201270 587957805 520402871 612847400 156741555 838696063 193033140 612266366 75936464 915649076 474588358 771278748 148445018 425780715 981522294 986505223 491046140 889190492 644012722 819316906 660933781 779116231 139500071 378829337 944004737 979769336 476059189 951225432 964188704 990173352 822099166 964518316 845447775 972588817 853175820 867861569 120314999 626254877 568115011 742866768 224972032 588065958 439552370 518748146 930557420 970543997 450919997 781260498 963430253 965805003 7419900 873966783 434231573 895731795 161981328 165316886 546828563 610944781 107995378 583394813 804515741 999721294 637514524 980477038 57002408 476918135 98793074 538434451 401676358 906602725 875715652 879895343 218230575 517817971 579968032 741591037 496571440 559017155 87826859 293639069 593357141 888520645 824079144 935988712 823934966 912708448 537564066 590124115 150775132 794716072 566982637 741327836 868807907 918753117 78646919 444687048 662958322 686570048 726950970 830979724 138589098 182980540 262303991 994279505 794099708 972795816 818589387 863948172 464460275 569524967 356658124 820465564 16601446 668567358 928056664 990674930 493719541 634485300 732179871 750828091 278792134 857679178 756577794 875327564 780378938 949270966 197162473 827782887 979057701 986283013 94471378 348117861 626558986 948805352 288596663 514197939 213939794 362037678 67231577 566486520 31127504 795814209 893985540 918584683 147707242 565442403 450983762 842841594 852222927 959239689 979816836 988859306 540756465 748772523 581702058 987883188 224985959 320773043 760100525 915419166 109304271 655519646 508063817 997980784 129936037 525499396 360312690 501154988 56073359 664641018 496604824 928105487 486984413 791179502 748969190 799106017 970393573 998701388 278265114 798592089 635776205 834655654 337167461 810075256 668692947 905634567 882556677 951499834 473746811 536094800 866818179 904909258 979861461 984674810 513999372 933667170 947207019 974219216 827044751 921952202 587474223 881076305 26643892 393672783 936775403 985946625 313033111 701318799 793977129 925091087 416872720 645873326 911692792 994351365 665846292 933218796 788486690 898546138 847015970 960492575 704264916 900904137 621199097 961752369 871522927 884307916 408241999 571224298 861497720 935956604 783986045 955515658 860866748 917837796 723039230 737931048 797633821 993787434 389473658 784490027 614767419 630264531 939214250 990316593 974326811 974432402 73262214 687523686 259867360 429350731 940946488 944294771 882672624 939094079 189575346 844713366 409454355 458427776 763366011 949392494 303266839 725462538 399884213 731060169 571969549 814327066 182045410 311557163 263221119 945937846 327776737 431547886 54210329 897565994 792425400 945693801 725217697 829617082 926947070 934990186 894528442 977280653 959007075 959046813 29330375 498032481 90069835 387714975 93014967 768292617 178078433 722531477 905246262 921947949 486937584 738052813 865682753 928319130 871093243 987311340 683805358 730562626 471713719 475013322 119082025 853272735 746478388 985254101 418635239 492171783 417304590 971903317 843612787 917168301 375764177 711267778 571030339 714203114 551168137 630698525 573834637 963548388 569437078 717436927 189377391 815654220 952481988 995661757 146492137 353026482 10929226 874785102 5670348 537988496 497960178 597581634 313461885 500707336 163554878 565454387 891533662 981702492 723543631 756537081 439661368 472592417 948188124 982853386 160286685 857115124 616714121 921349681 684189766 952353119 706681922 937038485 348421877 701288424 655395203 780947115 210050681 305090214 82009275 354891166 37080754 77394945 105148986 887479806 606707615 816284682 23811837 189484321 59937977 490333838 86258484 100771164 213598087 261130841 739857326 776844205 261608882 733806216 707376529 710509467 464048790 879138067 584709928 699901084 817182559 838835886 708718887 799519319 677580613 740283628 65855190 868127023 654462190 724972567 402459949 486830742 909229400 955100755 806299764 863422572 532761112 825534368 269765431 609907351 872292920 925412240 91234846 666883126 159535945 551613048 498631663 679003952 342257572 835808527 415910835 890027776 409708782 732829233 786783844 885393698 417658663 786126080 928495254 998175736 379412661 673300932 771214073 912364379 361494288 474546781 896831802 953539771 715927013 983004900 593533901 782733938 525461524 789751764 223420557 413150400 399239019 751351556 519665228 614333378 222340149 444514473 934998275 997368562 325478524 965565406 391354311 575849177 667751163 990957865 393016500 679900210 751784432 964975618 197643020 630200940 93988405 589019230 344835580 622922569 229950912 238440836 19770564 959055822 890746164 950193618 355971459 723059971 568766221 887591224 246762691 911371103 345264970 392906833 640352253 891297693 586216805 680005218 369982272 814348415 140054154 274635851 560584276 716257321 726604006 774283033 189618133 423462949 397738862 664004471 304009266 909409904 136130531 376807615 669078154 993115233 411511584 571015519 635518056 825900580 163008117 639992411 766749262 949925697 825936058 977174093 422145765 424272849 881275291 947581198 363112399 549915467 170742540 451203533 734390069 802366879 526289009 941154798 543039754 690566806 293306900 697499770 513937246 631057311 95700205 217708985 325174201 774702902 722015430 816653883 382703038 728550716 216490751 973626331 264573874 724760256 97732159 783473302 63690398 396803076 743737738 934990159 931347158 954361272 194189503 234289415 222939909 519922070 381215802 648284281 674402857 782960774 594646660 792278324 331812549 532634910 914748425 984958579 698121521 712811861 493804471 579369409 31261546 742255504 387324172 635825888 590466052 886358797 3326718 664879005 921072933 954710891 334264338 388112004 135069319 772756941 797739519 915250826 258467133 392498016 433469146 810801616 300347144 320652802 278885697 898134853 210314757 420898429 172637156 562415723 939955270 981720170 980894908 985739886 499600997 818462871 679522479 906717416 233124345 587892862 99644886 391786582 64299876 666191328 899111798 923997730 404809780 456580887 296402478 865150591 31605500 301060084 131654398 433510624 248962520 757358451 92162358 865602399 577562336 730152387 986501312 998672110 924349231 972456093 3286008 792505425 669952619 788984579 715150568 802428727 73284873 682878367 494247721 920448067 603771051 640888985 206064938 584642480 702567235 918032383 911511533 979726278 818017345 841794960 938110592 948038078 35829830 223759640 323660837 716500737 601111598 969956091 198219941 918812983 888304371 963901198 844672181 895360350 944209134 951070534 373729999 448348107 309946157 789340753 545677129 589519984 125784071 674294207 511760070 959898860 849687343 900451975 776750431 958976207 94626537 431706385 492820507 652616839 710098042 721642215 44234248 665596171 90600450 604583905 914472363 920597573 783340715 983082298 717228375 911245171 259820152 973271576 481776609 619083157 492818002 937463376 308957354 900355437 670260382 806138086 935761326 975339816 972088836 987845702 880706137 901153288 355986419 736930802 78690837 330994407 752777955 891715028 208909661 738310273 651042830 866775151 956321372 997098888 970108526 995948650 955634643 998590516 337169333 405991888 611708497 673240080 995460276 999601262 939171558 988692362 682533851 860960022 275981448 641163374 657218090 772214517 340854810 527738622 956426418 996374445 773164289 969349838 662919048 892782654 837297045 985168691 286193954 919247456 716295241 972144422 339434192 418457198 486155693 986778484 464438249 645269936 409433953 742513477 128857821 402958901 783227409 914067901 225955172 421025736 272315681 315607126 600731415 785896394 293598124 499151397 184021199 991784547 207525320 834635742 656364517 867775834 632629492 786955011 638404430 817593978 665429684 673750443 217793231 869129810 778009807 990676521 271038711 395486034 273190681 498591481 252106785 551601738 484855278 889418256 572395120 875405193 936538961 937690334 744451107 813432155 768305407 900412881 855851639 935563998 152759345 602440979 849509042 929190132 410303667 443191585 83892456 359794351 4984457 496066105 501173128 665679524 939584236 966925089 8130526 183515594 430068067 725462220 447235976 964015919 506954307 681774059 41032161 374560614 240039069 252327934 167582312 729123296 860344998 982806733 847139546 878229289 984425330 996393275 297710981 834840410 532104443 966912970 776054969 894002571 823789583 984183187 718729400 899258932 660842241 897775710 63873678 403821544 24660709 280077987 314972819 693932284 569714313 768359438 670226499 754600968 485400090 809966614 423566936 889660052 910784816 926733653 288266997 973019969 455475345 915147922 294480057 446453338 776063330 813501269 98082360 264708606 871444940 879643157 100214832 158367559 471118006 695559764 147157301 812004520 20813274 22041971 459073367 616446277 902347643 941837133 865555816 899561561 650318557 997825121 39763770 735799462 554540405 775740307 417644917 854271941 341286607 663922096 266507804 342487761 510935525 524152920 642355003 933151668 807836313 905337414 827721705 919298765 259208582 825426131 738784433 788364297 371251764 717471546 134171521 878358557 668288751 722268843 294356350 649934159 852734670 885739724 125854662 404996329 831655047 972720431 748253055 796811256 693426085 766774402 181473752 820301967 218598663 232095483 134876258 603763790 709253375 822776896 350197445 802765795 107646668 619466422 511711647 762186595 623904842 642758865 239946512 349424912 366705528 641939510 343887915 811108153 716500524 924373411 656784674 774008156 80602066 144179128 52660799 956181921 622023476 751572384 397691934 425370536 516639252 968864400 509612435 932987179 97111888 128877353 610576884 881427152 11344878 872220741 883729449 927370647 274123471 969471432 708017068 819380202 66521467 95008781 225965698 438555880 424596230 583379570 283636940 974755052 326572753 702894265 499358568 721640055 640083981 920027792 412558902 673704250 222402087 939869782 151191832 273641060 626953870 714539555 398344431 437978626 276081337 279979077 477230596 961082005 631816268 990969685 76010576 572429033 866916442 876671125 741014416 828404548 13253126 199269812 774599497 996364712 355026720 723965372 625711943 981928338 523869383 722532360 578728582 634645151 947384441 996925996 655809886 855258684 558712215 671119867 728098558 852089608 546422504 858994915 910750827 916462639 954076444 975966351 120841466 563071839 136530643 705062306 376875751 811492637 313580866 422635457 119080113 753147824 134181229 321267278 907719118 941534359 736972384 904268171 775603277 781737967 32225788 333038171 312599064 614762697 709842392 793813930 469120247 874048919 346618083 641028812 809867893 901148352 873305089 916720751 99462725 193945352 131446747 987736880 413823312 899758497 783834892 925396071 820461888 837543867 185928124 805805844 856043365 951780684 3300899 13628873 313570365 493438403 415308507 989029058 548655843 913579037 119317152 431808114 481682562 975012123 395266796 881053232 805215792 999405761 327674147 847476312 150819342 638174308 940270503 998355403 319145860 620964677 739083172 752493137 691797749 858420184 366490046 974602363 410584372 553600988 204940727 298470515 118540343 466966444 699457583 868167607 345483269 411292585 245513660 781639240 572439676 934873204 161449694 163830772 395969993 748275444 227133161 446719855 814906770 910959997 632446301 845618311 778982452 922766113 349327082 843505356 988709173 994683851 666984841 874249892 694990304 899479882 320535300 960714788 428620496 729478856 832227875 958058788 291007594 704452919 950621388 961272057 549369939 845646759 791016056 793610010 530835151 532702049 790230294 901740016 285654484 299673325 964514203 981442205 144254280 899340787 94889282 836858810 165757743 629180501 303188017 653141193 202251618 805416791 14506766 540656475 50046114 125279963 664936934 932980748 411141532 740974220 754656561 926260853 821176458 874381491 829158720 925073547 261128014 595500992 630552377 821738776 937365773 978787156 304111884 851230204 401775770 620549407 48019208 749669807 26481163 501895304 904117878 953855811 728084591 765929391 904628425 953497209 35597405 189663918 236456388 344261109 738714499 837839306 744651919 784399984 309415677 974369868 950284608 970153798 734216831 831362552 392693943 535367189 223997271 740258367 721606530 997599598 490262243 902530230 361997425 670317676 353272331 505034672 248750343 694524807 365515068 703107712 70652742 439874571 958277420 990825922 854635004 903742959 726988210 970209757 692796780 790168119 867535300 895896718 118570946 475669631 938423570 993886747 127071712 382777571 672229235 775284970 323588312 568080846 764841821 813190665 695154307 697619732 142911740 976096620 71421439 311041744 672370876 757487318 551062156 801562838 71726403 795052453 561307996 984919535 340958784 533777440 121123374 306976294 259983612 735508939 345013461 471601032 900525140 986057514 80117951 163585888 568180000 803841502 822620703 850294854 992630119 999704700 316852004 706839885 337979849 845428181 263212997 741418426 980842742 993493579 257298076 972417630 959879717 998106194 203987335 820663172 554774301 769308488 277651128 394732886 450011033 869125612 870363318 961897416 768623309 933036718 261594684 452172799 390573041 792626242 861379743 873116187 198851697 458432864 207199004 716145868 519646203 836189989 599492207 846462359 88979660 273174757 302303520 533931726 930928386 935055391 795314175 896436283 407170536 628684484 286388629 799234941 127981431 996454660 739282626 941056723 593926416 669966296 391440621 677160495 548331957 850147026 100127051 378475527 714476662 833211705 318741484 364974011 374596627 818125727 238100445 832940103 96382913 398228672 517608061 643920456 32913801 502029235 767661358 930908830 658506897 661615754 624132197 864651344 194810614 765095321 445374836 907852442 58566888 484590623 88835998 532542408 261701771 752025762 178301799 941748975 493766354 737043157 17397550 98062414 17846374 326907547 679959174 969239058 174060606 386218850 788364180 799459541 333742854 377080646 695361869 765012329 506644674 556124921 655387017 872166679 355991538 725003368 735190844 822797698 689817649 915406653 42664297 835195395 149771981 864304800 849295696 945597384 875298655 900906769 351345681 460884974 599430307 910726187 548618772 980496513 901143066 923488584 939547821 952264836 38639760 911642291 891578440 961930736 421872158 950787626 234502442 845547250 275193433 597689950 672488545 702188658 406940596 536968522 153195402 749130256 309354310 474809751 339594326 803128622 864316860 981911691 282912334 719360307 343520979 828019569 715200575 759476126 195899779 892964088 688370310 876922040 842542661 992283995 13600058 407588877 554492343 814689407 35411675 495097130 325882270 354267905 405599970 487982902 910524315 993909548 585119660 678747603 597653127 955296411 612311193 726993195 645808874 841261912 265775447 699244662 109555682 986186049 882063430 932011745 716414251 874817637 73860127 877304129 323017947 873785048 346747173 366257367 320885068 707900568 969241405 987855206 119744063 669265314 271948350 346949825 969460595 976991242 167873160 418878608 527445680 583452592 33280121 608095350 323594762 524346714 381184786 535667985 58546936 904948364 906657058 941754643 666450134 721574771 691749528 979619135 628536015 891037391 716818293 832787546 709179994 904598848 260062592 679195869 770568804 956352278 849309422 987537048 564283963 888200984 244243979 265907948 382183192 771647295 574508519 996224221 302386134 787236052 310527179 431865427 708158891 711260859 107093808 673247762 41778911 660647882 532187382 936460967 371884142 681066872 513603431 747587325 518203868 748659973 549844133 752201446 152209942 708922943 360462314 407192675 856145778 919388922 71911385 195040748 960798114 999426158 664510909 947337526 857583060 867335706 527844464 533271355 455902840 870269640 469977934 883327332 430332894 456116890 318567734 429504531 656699998 739258537 910488012 993309481 952330135 962278001 287929944 486268344 211277615 478986904 65779620 720737325 652192274 901862371 544279316 774915620 405941117 703689121 726464866 895915790 307282377 818877938 691008468 781173371 73158148 152304814 341971993 708454847 969050036 971609572 982682040 997420687 815235246 822399439 678027739 938625825 300433212 938802809 823203028 912350079 794398647 855692856 648844659 994428989 23507979 676404261 178026067 627188797 852951973 856773487 163876338 848840082 863472404 929497392 43345591 408225712 796894847 921153876 39516323 122491322 8443934 567717210 158553817 535293869 109387176 436566938 520120463 740159039 851947291 996971319 918703741 940267592 155057545 582495407 947680161 973700171 920370892 932723003 570380091 684144977 193172625 450346538 976709767 984328488 37489845 920917685 353619984 401866688 516392460 662013054 109697522 275688461 548078821 746700169 769950547 855090344 767005963 950021922 457671423 909397766 973478115 986810003 1756715 127578398 583702311 704078845 42406943 655790353 74045598 674736412 148233220 533985038 302641419 307407471 98471287 607555511 50153627 745874618 774970358 980974577 95006757 367011591 57499221 310798988 442088198 960768555 505868324 580712480 454469808 673146552 965222975 986478717 745330229 955915611 323345678 656597871 270502534 380072022 928386048 943130411 783518348 829714298 304597860 889439042 567436184 656742462 384095333 484831421 350322774 826216650 908919346 935992914 35493710 993480443 814281770 952981572 810191000 922573674 239095990 514487541 413417102 492199860 521100174 890661617 262514652 829088319 654571119 828288315 309873210 815362363 118963933 423062197 862603869 871494014 152689168 996945960 382486106 773707515 659046379 935338935 844596255 897061712 427123371 960931775 174625462 561919174 534785085 875469314 874579584 919816286 640890470 857791799 663912263 836874219 585606294 880697418 182528196 747690153 234064623 976612425 36673807 760038233 250044605 399506021 64712070 860689767 136822341 870800365 587702865 703851792 298223706 844661978 118777592 454119240 24200641 603672114 593916873 881386448 650409380 989626101 489725664 727675521 693123660 951503984 685832593 726892698 906583804 975354273 122705952 647886938 359248513 905494417 49932827 617457240 146273584 634067289 806532097 828786302 525442390 777912956 711610975 853717854 173188211 482372152 862758607 957136289 743486665 791011066 195658697 837256443 172045416 488926658 154513990 753182679 826761583 869904070 277520896 279398250 425519787 693155318 372653078 751254049 122034237 880592161 426719299 952977626 138893324 158463262 553877644 570778843 840180234 875143026 933767599 988673366 778187739 814691035 3035148 48828053 738183254 934869182 8451586 636175578 363316947 648196760 552256614 919955099 814586468 876365343 770221707 850345763 638916188 670954984 890391766 919517569 771595256 914166875 256647297 363913976 380362687 522249475 634628811 702562190 758580256 958946830 805691727 947753084 996890094 997869622 434104515 936722512 579813709 865727903 923240153 934185660 414696292 432817048 241172851 556644325 827803111 938611933 345847590 475719064 472519133 507440515 885836908 988954337 248555113 932813482 653490433 730362569 714547458 855388977 23754123 356134510 410393870 671326579 527185243 946422645 953973769 991659388 186531462 423413539 225766536 730922277 560931959 613896990 391889096 558413932 958715648 969227915 158406187 473731524 647902160 699382892 130617350 166105853 641357021 854493028 945394476 988398012 961142524 970160499 964362782 982954916 369807310 521490024 512893567 914544470 661032937 855358597 939149846 975672313 645711652 880765639 102554586 371555140 853056931 953411038 903562499 940232767 49870546 600935866 421388500 969139194 114556848 718307946 769162552 901405707 453750038 639887233 862648489 979994078 181861388 646755701 447562657 595279073 731329004 910131572 63850705 990425864 820091801 849316381 792432516 969588404 536315540 670881077 468740711 798567945 517910496 816132860 492990805 985422612 93803036 246120166 650742589 694906555 879637021 931232027 450533199 938106779 627380278 813639779 890975087 989126835 164636301 555466003 976044982 987898109 896425981 999456419 666161969 844211950 868544055 971465349 611949863 781010904 509760976 512393194 533529248 707800420 512267725 678709688 119345441 212476165 308143250 459364385 33855850 982684908 705019350 869638523 781399990 834851601 99377692 528976336 950235524 951718150 687909745 754610203 666801452 887324838 356551562 551291741 585519729 590104292 874265675 989993478 390944182 706199929 257684273 356053389 855118083 965046270 306430132 912698394 84847245 128347775 736917026 845658121 581305987 850721031 95160017 800527814 485335858 838632351 492558498 572584279 101525045 178852567 755822841 997534263 946656183 965323356 4211800 376681785 634032698 925273308 380227889 927577692 218775686 857200152 163152241 757694705 732019546 794019224 340161192 408762709 310562512 967791896 896454160 926922988 947521009 948698418 266829398 817898089 547732334 776909873 403383793 601396583 561669549 647204214 203487731 925316369 208815103 231082062 382355733 489031658 207574723 387722363 791823667 823615601 424698131 452511056 446221760 539588286 160365134 603644075 496800625 907371627 182820255 585126650 509049734 973662360 447540294 994000072 105290109 917836090 777849280 958926640 416994104 519714268 122703660 955105385 221088318 227084624 988993663 994220713 997642565 999498619 103583092 629587899 795017584 934238272 845751687 948357207 76590110 581840879 887603352 969872953 259977430 675373550 598686223 979675235 940367534 998870310 630850192 717329017 456924563 835939541 383562666 947853050 311131425 813010807 736358132 950376001 578540994 922862462 191267720 942214867 818469333 903411969 884982995 943625152 34196194 814614006 235757610 809587098 496273955 771557669 474280785 729248691 787313176 857866206 744840237 947527917 191295198 758374473 633108974 847537883 714664841 809933526 640914508 678496343 996380584 999285744 910055379 964701517 322799317 647838265 781631636 973863248 488488457 716542319 605057509 809096282 908117115 956000881 358473057 758831500 777054115 819009522 420344521 648166401 426699987 570053966 440710701 450690574 578925602 833745456 717123631 747121458 982264336 989488083 831284786 920482845 624868189 847333454 141477818 762038568 974074923 978517490 35648991 83610411 768263528 807150534 487029498 513330392 504021738 758079376 701412173 716812536 504933358 867744642 583411026 882372811 685029262 797666877 624270253 963766988 484028725 548824738 336263814 476050607 462735205 715348019 327890845 405309121 155098903 811574167 743357024 808665783 824728907 934514480 263334333 652159089 604725543 726738129 637123361 970959717 283478865 884795374 587693093 823988542 93475241 108918319 132920079 617520909 144778258 800220884 792065489 908215325 859068970 991837179 591238665 780274379 70782286 994217033 978433739 989581374 413780043 833062704 940218304 955098267 472812735 717351957 339257581 990030363 202783282 323346850 202270202 955150100 400684702 932190413 958010937 977002459 417654202 870397451 757706163 916541302 50077076 460190730 960519284 976726702 869525910 956425438 830204249 854297310 995425993 995573390 345254991 345745890 229332004 502807382 449203481 950728563 118987497 648295221 222886136 381417340 527363478 903821448 615590347 631756050 854784540 862665970 511217601 760333648 68924825 455828951 546323495 716889444 541758287 756293939 861234025 940855569 446137310 691287968 157983393 663420748 176054361 477667749 896705929 945121872 241353927 586995236 323627181 412312624 906739501 981394821 92095931 450533359 441924883 816593574 39465669 289365807 158347791 367223069 118817386 325981203 748616620 789711082 469544686 666776814 44215299 708164949 430506061 745483010 328070723 751919250 166700814 670851809 64273189 264750163 301236596 564443949 173140826 416444174 88828491 499876317 935647318 981691185 67810547 380896820 746032542 989762756 66909184 287901264 814319626 852473270 655280618 831954079 951680860 974274698 93636459 411736361 292380616 535663161 31180619 32625457 628671160 966774902 706997787 912880038 739859397 860144773 597003722 801386816 80843372 904881739 36975172 924449371 115574747 268792328 325259911 985040779 873633225 979903447 5954723 390594825 683292283 945841137 747696497 985095316 43566039 92934083 847889134 942518534 796461868 916835403 982711303 996595801 529525261 602486740 659785764 779741354 899356458 943386128 558524781 597173971 474854988 623506988 951274231 996696688 554633007 896009031 246044924 943232250 940648218 948215190 414358794 868396332 908827859 937902028 141279303 887762772 848697005 932216755 334512333 711130917 584541658 890663480 899213812 962638823 711535464 747427501 295999224 615976846 6288786 751595023 825777549 926948260 373963218 543797890 595756453 727532104 66316300 330033430 689275066 854379059 704349046 844457789 519079863 792323669 429996874 645963434 644808390 987094281 668648486 962779710 826393717 922775127 302788803 475037962 748905453 869028044 379663571 663141069 514753910 792139407 684697502 704762957 451591584 574709428 375742729 726253747 184526613 699450143 898031775 967499808 943702237 983016906 613228524 811032574 857508819 934880119 581395533 677121306 832189292 958402498 833994433 924201571 250932218 540242919 860048742 916958574 304941027 549382887 814231102 888860769 276061354 338597129 133898041 921724928 974839659 977324437 264525233 930382668 589620634 703078130 448749404 476380140 56092799 790906536 117684736 259472270 611130869 704116586 630752970 989602221 35349397 567420553 748558896 806403055 262412210 901214956 80147270 466434629 694322697 908549358 7268559 407363678 971448999 992651414 232035271 360188687 800717077 939975183 445295425 805439306 928453113 962664451 70731319 476646993 292153004 907511343 310304024 867811878 906604588 926264320 881634341 895211535 926268130 953782421 986934703 992835007 894414583 924003541 696306104 961910397 916558810 935450315 213199486 247073684 949370960 988101052 758751268 769730866 982773240 988728737 256238447 467255833 983374590 993209579 378486103 810676067 930673696 975742379 477125419 846741074 476231803 948986273 775101969 906066671 507097198 744516164 81649585 920475228 966217765 986946333 628806969 854268067 933500213 962275812 605633589 931607081 869791791 948042008 752584611 944737023 568832725 569891171 117638329 132845384 253383452 619579682 229364508 722128759 824693173 855038932 195401722 935963538 120330714 746346015 760490048 956628215 880951957 891645422 136029314 367892958 964376664 971372553 143396387 269303891 707005204 752721351 842753892 996442166 800225075 868103377 578234749 594053097 613194427 744358682 730905703 791400936 939162216 950642847 244719883 515588193 662200066 952474287 136719280 518360704 974855551 984892545 133081516 209271414 286379368 604644429 630309449 846010481 919746857 933977756 842125803 905622664 793537483 859980815 957170808 968923496 859777372 941283661 71522898 108582684 575529360 961383650 732969853 945240872 578498391 716472767 396985794 563343780 487190632 743743200 811048118 828544710 748860767 855153927 925212456 934958768 237248817 841844881 399284650 552086476 98464564 574525788 293351180 714599502 54241214 79998567 239089790 476395186 909702023 999735634 253687564 667891575 61041320 272655069 344535595 569026274 524337631 686587361 402924804 954352381 453214370 966729026 113275890 945958753 832344581 879468149 481153147 504265889 264866608 602835560 245635565 303553689 110042115 751537593 640927095 772602691 768594842 881840592 584136278 965002336 203372261 748591145 174492103 713629627 474792731 812296610 333178771 372734539 343485380 903537790 700035658 877615488 103026482 675828081 547280019 860561763 825033764 952240377 572207218 979996235 768619496 938759686 601534078 738654139 336213982 374599223 520279526 596156450 341926975 696869246 902021585 968094006 125625336 805880474 467899266 766478125 662333687 851447954 37958693 423840676 708397258 871766676 814471774 828203411 484979888 594326423 729635657 733475013 694955862 848429593 229878983 887301920 58489599 560757265 919332937 967989806 684327563 708792494 96677630 973570332 84188653 660316903 779404032 946470441 718835540 840965878 594465245 775807704 492600079 749334586 244847744 757764843 790501063 890865691 369550915 844742780 900215705 933237590 354985418 635129327 902082500 995430013 939609871 964360697 269544582 817648126 690695449 723325977 595707567 669035274 652911585 759413625 195788720 771373358 467942484 999994122 741641611 883576430 570454409 655228226 257300857 436238709 728141659 826849469 289138415 731122036 851637242 945092375 814901885 840736136 884174142 897934679 760295192 823060293 767553103 852407836 609000751 655225237 689666070 889465260 408918868 583063384 719736300 788255697 271277948 844442365 890845425 916995528 318835641 743227351 792391228 847289102 289410455 469573006 602363004 737994739 158161524 956203096 185786847 319088437 131616160 655016698 338480222 612192059 79348430 988837856 372214763 630856314 162888176 828005416 655507621 665358160 600164941 839457889 441955180 822789684 150301511 633998194 570820945 741847308 244110519 865538905 652955218 839253425 601113061 682741619 586241294 704369059 74196228 344925012 80705434 859072326 255550134 556217611 434823490 641508717 171495733 576562964 229094351 616330063 727118677 802664214 900469518 915946962 631959543 867178500 182137732 887868380 780482414 876890349 918276314 988480072 125077409 767805807 151249320 227603606 550729649 917479306 708221032 892438463 953492800 967935558 994407541 999376620 538092324 613073216 570049491 848074863 6091823 508881810 23635811 331372506 904505723 947676419 962612466 971321307 454435218 509019596 753468024 846131810 169718539 462751320 858805277 908455875 504604753 756084078 345520586 824076187 204839513 596985275 216773502 431578293 721114583 950942527 5246964 640430350 376232891 883425942 724883943 742692086 637070917 868314798 621336031 685622608 496652243 901530912 332463240 397029650 274988489 717748935 568793847 847304125 870727488 901798346 673921048 879964869 85354498 813066581 602670935 823543951 953623044 989032889 110968578 598656969 638589105 803279800 510325409 893460408 259194192 431523976 141307524 222006924 601240648 657199909 437142631 672508405 558886271 593184721 67480803 294924250 656820023 873262477 822607170 962655635 643129528 752005376 633453165 850305657 78017609 366258467 295663874 314475011 214610701 528510345 349541041 451070512 551927069 893174618 350172726 506714704 565765114 570341406 534918990 593628113 254668214 630957265 857901925 915104611 155269535 379694990 696531230 702191104 954473199 959702035 815459011 995217902 45139025 90083454 872796598 901017681 340733671 921595987 53893422 472133445 287650135 680821750 178416600 527229037 877913381 896043756 487579566 587999453 708706607 921443158 528175404 672387242 197223302 658397421 692781036 805353301 544361527 963765812 915415430 985422733 19237926 883515089 962009526 968200998 852622849 918071740 489637492 492384646 661755936 782240876 99913028 819093864 153370655 362472518 839104670 981682294 774948971 836022001 757568592 986376506 553339979 619031864 394180553 449919558 386681899 863548046 166924622 711735575 646440569 990162422 206786725 739679782 532484674 566147790 813749117 998088477 252115473 587053509 60441649 201416067 961414014 987658560 610691680 888450603 953070802 980258570 972319507 982511029 700141161 943218202 129903992 193147228 556159670 691400738 813607208 900429239 733194647 811084750 688851149 752491915 864997566 982018164 544138264 693176115 542782224 616735820 279200255 496431280 99908234 668027228 69324188 279526109 627326976 745938366 972010481 993698518 954029052 972806267 469172398 479730009 407202683 861308490 242664794 549964994 901870419 997857632 885631576 940039394 213375181 307484861 77971545 395800700 864413899 920100717 70204570 402549723 600277351 738609457 224234638 402170860 753856812 798286281 271013989 574989118 785651054 898518602 508324204 591001879 192755121 676738896 605043233 698353230 572965969 825373738 589876372 862607619 623650074 922038850 792243248 823516661 997300799 998175206 903925956 957743982 664843483 982395031 790311569 861406492 856609671 859633477 27665608 892200701 285401404 524758175 441957584 849859309 465362916 680209420 420575662 957959319 646269701 981228146 508266048 658440282 571560888 942444819 880003777 903214447 258672558 637997952 17759000 311932520 807080871 991884320 809321651 934905032 179782497 629773992 400115823 885751541 466321347 994008904 530312721 660884508 343453365 712782248 154839953 946323757 711267928 845597768 720986994 778991109 882411332 922910795 907631013 937222831 639743432 770944134 515423991 927938904 434144886 918296260 539998762 787994067 723573755 960161033 214356116 747731034 777318382 885493037 71888644 211106159 706611651 887167028 68429621 165429056 362108333 883324284 147394395 860317870 645231343 805745055 334104001 906329072 292710837 676477441 528917031 649654750 645215648 810394708 256895251 512828261 514573611 589013942 227783856 610258708 393614889 788263910 503509427 986278550 40376935 166647988 864499072 908067830 474730590 583089726 365416152 902336294 345295048 953120950 789518013 799329871 563403847 736323618 573722876 610201459 429843891 692721012 126869437 736462165 864455604 968310501 836390901 965785879 580934645 972148708 393485548 830918344 67746367 156459830 199280894 783558389 75969722 784380137 307022778 604506185 716895945 886724145 37731278 628127940 707625130 865924969 46765078 523081038 605930145 903977638 582989644 836734576 958278815 968467854 592778198 740268758 794155698 921117365 602850247 834734282 87454612 732368219 279237510 401269106 163339165 433813106 404036517 405365781 827237834 899579547 445963671 529914035 221736818 347914592 803913388 961309497 872792491 971460014 656446291 955987422 677527041 849609190 816233179 939636397 488624494 657258069 260169544 696845617 785738419 970038303 816238247 922518593 415805273 669482475 222134643 451350538 810928704 939725244 347541147 479688871 586390735 625492359 19809186 963569342 747330330 774147306 308150455 976944212 145283331 918688217 595508404 666329369 737511670 884945480 820229527 964523163 532284009 566678217 482142314 628093831 847091989 871401938 491820958 954769836 290787087 597788947 500723038 671054005 145115025 797471763 462359236 602081325 184400665 259282023 187317952 728562469 626104757 707424824 629072538 978761228 387543060 905026386 230131896 347079881 365584468 367473536 505334059 631391538 170974323 884058867 861176370 879434329 600363469 930394461 740519609 782889021 378787998 449410001 729956206 936594507 861777833 907397156 477477348 769914562 460536072 782673510 783907991 968883764 57476733 753470262 692606346 776919086 109007118 570041070 133596310 315246221 813977356 817412515 615014472 795796083 964215969 986167094 602502510 733561665 798202004 862158262 550531233 602417003 928114082 949214351 508032226 745814383 38638727 601396068 333872654 828009798 34109336 158909035 233836604 863794896 274711641 779421827 235876181 891269535 46214337 722300777 868769607 966543656 471022863 764472804 88487268 342514528 443102983 882715285 724451950 814721898 730949657 789947624 302911503 801341902 707739134 819992646 351057370 976747909 556762064 710215897 394896988 505828520 692089379 808467311 44024782 135883814 379785358 923831747 831453252 889844087 444930729 492867395 288387725 938476671 184184901 508475584 714236501 897657542 963693932 984542146 64525217 753533231 759332333 819912945 776137763 788194686 501001008 964494709 574876236 678136163 715245564 879708706 638144908 748033650 392281430 576702807 982586164 999880768 516717007 948238477 448511941 825338604 573559402 998000269 951961135 978485639 651985556 666920923 640063710 938957927 831969126 980186801 846778575 960372761 582493159 914748650 531356719 788172250 766233880 781876576 661749626 690749056 199672433 456959056 451942540 978337001 223860240 793072625 773311004 898150081 647384150 666835014 323505584 880388049 851123137 932374831 633223322 693652923 167013913 407655832 754459444 848720935 607321404 935416416 199580958 608837966 12187405 613138699 913188348 971917481 215185123 592496765 664526820 986305996 224606312 713723982 284762519 452513603 992096004 997066769 370150067 427564536 301435930 843222551 375909782 460264630 472477585 863617674 513762596 886915381 874402383 884249122 825928616 874656195 132456717 769985625 592626223 831690145 643767996 956388147 114344613 657550197 691175211 752272424 381977826 820232455 761541426 892405984 895173229 973237197 317501807 961087472 732618149 973081196 217844999 411092834 145314379 829144240 940082577 965479986 251061699 980174477 401120114 900429290 537449402 966617430 347792206 571364927 97242300 600137937 235874539 546175630 143165272 782131001 411873665 918948703 247419310 934819501 12165021 108072838 380451325 459092366 657996647 901095949 751652534 900347504 744141290 891926215 956246822 998392353 52288552 867605059 148043838 968170607 313571658 468660964 104766900 863572268 989626713 989978729 449576654 746417214 769133497 874932493 205005600 387977081 124099028 245039136 863197165 900296861 427507137 819023356 854253031 975596844 882221845 931435650 816596575 971835475 384867398 936928846 70437436 981861064 860973357 980935357 356267099 370034937 336274338 451349729 474282677 944470542 648053844 954791941 970785298 986148639 916258414 986078339 995502939 999878306 500125570 601410633 753960485 917499688 22570033 383229506 427783589 916115047 493970927 965216960 623493793 648333069 303027626 629907693 367944455 762005249 153761569 550834866 440724543 506145817 822327184 867161457 856871596 918657020 63658480 923187801 470823408 636138558 699889841 751419780 639410096 685903374 782795142 944495383 989258808 999598558 706214998 816517875 318667955 474681055 248834254 676173136 985525724 997211465 671383557 855548873 205697110 422389610 810404181 946939286 765596811 843844948 892104953 931641396 944477873 998403907 541137615 957550061 63784002 547028270 935200506 963931914 423051263 942711244 527542829 664482623 609737825 687389376 238425721 369457193 602717872 695228879 331092491 505759587 324681101 987737493 949211529 951600003 135588088 572830919 557690374 892054247 247844607 988706654 164666652 304858795 271997738 356968004 201136619 871793417 398812752 829858022 501479546 595292233 884175571 987271983 276856353 614783078 855754064 908812640 705944974 887129724 754002177 815351868 489728880 616724304 932736285 997455401 634711177 932927622 816986678 987876674 502261572 599930454 238533885 750619623 478563801 760286133 806654944 816564378 245998654 825873215 354206515 859656433 260884688 877579194 493670149 495905640 227840985 369116837 70487949 200662760 948649824 967420749 336278628 909497605 112524773 749938855 316357612 691741909 942435214 992027215 719758121 752776492 988170125 998676218 842334900 966862372 447941010 539610300 40718780 448826687 630019643 938328191 860873522 973123710 865039022 961153977 314057265 481107249 351298346 989236862 607957574 758351817 510051757 981566235 749136154 981153283 500934966 567513657 957964781 997853342 79140247 885532959 220030421 241374720 477420608 680484981 904538586 905606922 823382138 998641610 106563663 538779826 364191602 766255467 783944364 987539952 116718267 939921575 873294713 889366622 24027196 523139591 14140787 506163163 44730201 72817794 818662822 830144488 146463351 537942077 639449357 654795377 261671041 930294931 510764024 808242076 434215852 877658569 778029134 803320383 22404413 766763368 243002635 502907117 243192790 464066043 625614775 916570350 345437703 602127100 992850550 999653610 310523112 434981853 820322591 854941676 450692870 862688807 979871548 996431806 992829860 994562775 420045604 955193840 910555141 937953689 988610724 997307472 318691245 348999343 38358828 613138234 337011602 927103835 986493931 995984442 21710393 977894398 184807378 531357835 569512550 982905056 166240303 736777014 391651399 882293442 825921561 981484447 38761752 959330381 351023849 617082162 921784291 975729769 843857391 908603773 781466368 971007986 729759500 906521631 844149959 959940647 829892927 835395284 81202115 330456852 190026874 749543502 564425617 799723612 475166700 782494773 350209051 818276610 678108749 707196543 965827575 977119880 491684575 607976192 466035564 883201024 440136888 888386798 299580984 792723386 325911424 346339733 981521540 984783099 405218954 586836153 831976198 833738844 193423427 919585663 163149365 732650675 130081467 225444286 7038953 975082198 625825095 775926705 414455739 533209409 405260921 501372203 480627210 995800809 648036371 961477920 537891240 773644771 458320431 559587839 815187164 919873187 129899499 657096511 650611747 859427957 366817223 769606363 36532098 93832649 540440503 847533201 236388095 840665509 373779489 375168233 974288477 980332454 9819263 131382871 128388360 242418214 639239915 812192809 608381865 646517060 675540206 748183810 107505700 893483659 284677389 515247161 105204842 312748794 835102697 902470556 185654398 741017974 845168284 940099778 961526601 981578317 333579360 818760208 348343447 604001261 298165404 759908555 609838908 769810100 856661544 974026845 272369634 555994384 87623560 627694632 536375208 865671494 806685717 914647997 894668174 975729526 32383427 158146584 324702137 567662797 552327226 706403796 493303886 684312876 629778989 992801513 253531481 257997928 393259378 622801108 3678362 699599852 430793410 985561589 927550290 971830374 516208291 874023223 706662661 883498326 140295950 574699614 345592720 654378391 423089409 915084040 464857985 585087290 802578642 939837411 331508223 608645016 210265333 915432022 676382074 798130530 321129518 916697202 570579605 652639753 584325079 955326234 189699640 782001228 906420978 916570955 504369638 853414564 229890506 869745247 76671382 252237134 207170279 687614493 407442995 974414210 860906364 888049590 28428231 246946361 119801515 888971208 524328865 715111669 133186734 794861229 879857256 915842139 186135751 807492292 121457041 227239725 807547426 827071946 547290061 974714859 978905623 990445121 932890691 936876852 307221717 682474875 720139265 845503151 144939668 285016741 408045043 529832897 786625342 967285013 62209864 149538544 400514107 577812993 437239581 977175988 997809243 998671738 20434578 769240790 234814692 853609735 643767461 697461429 49297834 604583612 591323647 954068057 227209836 682763649 950682041 965906701 785750276 813372612 342301632 656801321 945204976 953438764 261455837 737163692 437058189 936478447 422316589 610291254 380049955 677542567 111143868 829644406 481372101 533189736 162189838 459558792 99128027 242115054 208222209 811864807 358124510 726358928 118802190 783823519 851343728 897680417 165002821 696761036 286328043 748868775 11253967 283257052 684307168 972026938 761603518 771972463 693000752 920066499 195588933 856319802 955551447 996603497 434171503 609966714 208693616 964132138 827261020 869940974 1093069 60872021 586886336 921054889 324547314 965492224 430999574 699305227 767859429 828808638 605187413 906901783 505548151 954559139 46208609 259687855 850177943 937353662 778755714 967234874 593134378 681872207 571960401 743193864 80750524 620119078 828037202 948605899 125469736 621164476 837943015 937504441 421451687 647555964 278976079 587709026 397292133 856556015 772387787 917180181 854702610 890882117 434376123 901540550 153908456 329795024 826907302 840607131 627624961 906339459 22183646 65203138 974766573 975571742 931870280 956097695 436910457 555471910 35944684 196851134 983889354 990275924 806160623 982737838 366924746 897592852 57282196 839708995 808642424 929518315 316439148 904027481 321140849 874630687 713730474 966172473 447057230 571646043 838945798 903285007 203190851 771799910 580779240 940606981 285105892 414597458 961405766 977553818 673189987 729290579 482509996 625183406 359699961 363991324 366720789 373061634 684733066 991129584 177769968 705390597 739172766 932938266 124060592 649823887 102300501 292197696 191855350 860280896 637415257 669010016 563438265 623080672 451814431 832086529 952123167 956935660 822845728 898002236 972805901 982823446 72474078 984726087 390200528 932024436 213535507 832114867 982637606 996568892 560604218 637991338 202535666 881811014 122436568 884920876 843422773 977055380 728837617 881023706 30485206 236122171 977983790 997939858 603557052 968096863 309393876 643819304 726642052 955115837 108950040 718962959 635751474 797914730 503176305 599718138 243972007 306853932 859078343 912838686 901935410 952632746 254480593 823077800 537976098 833793736 487611216 709736720 809221562 906855557 859944687 976536891 896454829 914930771 657133848 982219316 76113678 352034806 710860471 932890297 256616951 364951873 377764592 743286946 848943229 958205125 475614780 913334355 420472568 633204190 608469082 959540090 916481078 949163959 902465524 985115792 924875847 927701060 1603439 417321104 361241201 972691559 383856808 720704113 678260320 992813375 877579613 891908090 127997201 556729206 538092572 975199905 461405034 941230869 452076519 575909403 773014765 876164899 773830859 954226668 252080135 974496755 404676091 665885594 478716602 841203283 154767447 438801114 914122944 944810752 388589397 589016288 437816704 594722053 557014756 752335974 585529329 974132254 715884038 747010846 864063579 877301827 704483574 913005273 717051219 848049907 34052075 781349264 515713755 949066572 437729876 548164412 914448264 990942796 806497490 822843958 462314918 687022473 777783371 913593642 196969007 274476490 926925026 959342822 313540895 913721756 137543126 349026534 534331655 689027017 173073654 187357173 925708986 985681949 37576487 477416941 33174017 179529245 4153671 488875469 391499227 841145623 818618337 879976105 105710340 583558774 209440067 274351233 320273721 970206213 844049874 956652970 663160699 675333590 685264206 821060515 132777252 483654791 954839817 962496673 51245973 141806213 791732415 925410667 965175976 991144065 772626834 903294462 909650707 992116045 333807160 860709728 303848448 390348974 149946158 528217245 331156007 480537290 128666855 403966746 318487087 846566970 823642409 931369820 489148301 889302759 907534575 972197915 206931400 319374311 309437921 328674917 365798630 724924174 513616011 729143878 291032348 703890713 501707633 614603194 585247493 776768379 896644046 944786228 420194240 585192483 937139591 937219217 897813819 935869451 406826394 520955685 890050038 900009483 574800627 673263147 53765133 943133643 469052659 608463335 770416285 795340218 151393044 837367516 167093640 589792139 53608703 971673160 549382541 780511949 546656355 963769776 334785462 702486701 899224535 949590609 932986396 976577600 815690898 987909298 112094501 244424793 342473968 974022176 441881265 746364668 8380543 152164349 520439190 941938796 275742266 884257213 780845136 784148736 506671721 785522090 649080127 745133252 97991415 860554692 768145735 780825352 566503531 815197992 757025871 767909292 19259219 291154663 332186407 903490315 528313006 828510187 256188760 575807969 805071840 898276516 664724219 958087940 933019579 964074750 479243599 502731522 945232349 962775191 175305146 646092600 536675568 739304937 629727619 690853956 731672695 992671503 232851832 335753942 826570614 978343042 380825697 596205266 789434087 848734719 644406960 993821147 968599478 992505296 393430302 599897596 761633285 851592924 740189171 992598610 186685407 725794745 451267198 490859642 907405840 914124777 973919817 990678538 267746235 809778989 88107534 549105811 156809561 221026622 804379191 897685736 364744060 442917162 89064834 231928637 211036142 363797007 920817427 928619229 156999355 686751996 453061167 965673959 532378106 690538978 681407166 710954334 303175093 777855484 968887282 996783590 338304455 876904032 252586758 925885180 105675137 446809613 6818474 193721432 692310120 888477690 338192363 973871163 707557560 998090535 120018832 877058878 236211391 696308708 667605975 893511975 740258356 932207551 592792029 646956929 293141294 755742174 237026506 534969586 972147948 972173945 340964082 456815995 314011605 906076731 526567236 969551159 794667237 931807100 26815964 330861409 349527462 355413407 529227748 943155069 238365747 893074394 923181684 951166843 847316611 914966745 955055591 955751187 529289340 600481207 78663534 440972545 278937549 870885475 24102396 555663397 941667531 988675209 446715391 731738097 865574944 907628236 616785939 852917677 485901348 893449056 249743883 709199681 821707667 945729770 483916350 555914129 370379197 774422098 124588742 944109221 415313467 510932053 755013721 958296046 223591408 751436348 849887342 916474077 252282733 815252065 517926899 627848087 606540361 866271939 29039821 370760077 10142442 929977010 655564590 947835425 786004902 807587941 346946631 885750075 51927851 397957147 824843851 939982603 136597793 786183185 923071455 939160586 253316476 417550152 558216823 568934928 577083589 622879420 672212339 944794535 315822298 365284588 871340088 997766106 473818432 771076766 93792322 608800712 71614446 749987192 473562521 702766358 986242086 999139275 716976450 870595250 192440043 317750292 567512623 820778609 17208256 710945410 121809762 215560741 925517554 987970139 617663079 671303977 308012281 681046681 107587955 939723382 972315283 987900515 237137042 355362841 796977560 918872410 433078693 732006095 221999532 655089515 163885215 870213667 547789125 819268864 686625737 913178277 571317067 896504712 553384225 568948396 10176283 795065977 720010377 761199293 250764801 355583626 829946139 911294819 11840403 353923375 178874432 941766926 160245526 292195732 261035530 660842465 975094152 987288842 102070403 285631691 125831318 523913161 477502612 778189937 797796919 945651084 67898536 159270077 999424023 999488368 115297339 926589251 560837704 697288118 521030311 525756168 526424370 854697204 722924136 994528557 235114624 236228242 584706428 640312323 375526058 965619966 434473046 438906921 73651881 277368195 432137299 852685397 733904483 884148705 878256491 878297797 598927523 979002020 614116838 808749499 248274002 593520241 655005301 738050933 197651932 722075593 958016887 963322171 858083576 893471171 509031865 794585138 806289347 809144691 408975963 773655484 522999165 560857140 155827324 621297976 646751471 711946361 415673231 884885061 553509949 651821365 116828970 138336569 871156111 956021240 695716445 706049224 324900304 686448182 846041136 929454632 171752797 725946148 935133346 975133028 5552993 172088651 871871873 981788744 706113753 891627530 866322410 928694116 937347029 950284064 628354636 746023281 113098500 499857778 222030390 566826617 977164064 999530732 332452383 587266196 455039374 723553557 643836776 916487807 467655261 993795922 648721418 881652801 537620669 550784982 760119259 844361682 874973908 968025914 44412269 942743207 320817027 539153844 515596244 891769291 240242097 890520504 170064145 339888284 728152338 803148604 456598536 688597429 613144212 966988590 532012840 682037618 730275533 942901547 138790124 963376130 508678340 819272075 784263126 917830243 588923015 939206396 539422375 947980466 791903196 869019317 316048847 861558659 384205891 431782045 106546311 730601158 136635170 598667018 328645371 522032757 289285373 653975269 920296153 972536102 792755289 856398385 56553779 120197249 112679387 962944631 647253795 726846910 442004395 712266726 889050241 983743214 100505371 477681033 260801954 314641044 44219215 538930626 114418188 824376399 497910557 550881656 247262947 758419361 646582333 688508399 298184628 827424789 559885226 760060594 198565486 660263568 374204047 568637624 943481137 968518329 892926903 997261434 577413964 877391844 569129404 907272620 331038286 648319992 209847624 665019656 868221632 981179288 162431877 441739057 744186851 943056792 438532834 651831912 656017037 702457876 875283358 881482662 343812525 383392000 468424831 635346413 613365006 866884291 612193899 832649358 500543350 900427968 185588648 223424399 942016914 977331004 609252050 653159427 77493283 565204354 229773368 600397554 677805828 699712468 157207430 991722695 110895014 336083313 84417887 217691867 389151130 628072208 730673445 887477974 886483508 951533925 850616436 929727164 466180793 620524653 81269965 881551804 926996929 977650462 428249287 709490465 925676638 932634067 564671261 925902117 407038267 587777829 673662027 701091977 325558746 541732264 377701839 919599844 2595518 355203664 746721961 938240950 124913997 161768496 914158969 926525367 897985157 989699140 357770084 854448319 933834966 971807476 242757775 349841274 419981531 570470968 79733072 90496027 587810164 847508913 716326293 834039552 496949399 565037961 711584200 957161086 932133585 941948865 969705058 986323443 336107693 689256950 990218151 997851995 883668547 898031933 815669490 929242279 764884664 971599966 297295983 394778172 587379939 989543733 316868362 859041712 579244890 772305128 307710917 527283563 540660553 906208975 29013307 920538135 137932763 692099799 337027411 544915109 143122479 623303360 696144004 912140165 71686365 912375712 991750577 997602052 608976083 909128497 130242561 810010681 180566912 369404123 750161127 843834371 790553020 851582852 304105627 900291786 410791969 988995951 102636280 982586775 929788440 946054738 615086469 958973448 53395564 965129001 26912063 217895266 564584276 742905529 579197267 973715898 428262960 483902929 674000947 830663610 108964771 529937667 449811702 819984525 200500640 973621869 359942831 505536560 439818072 967108891 476552241 799842269 216698240 947424191 671918621 992272733 389504710 672084266 101893795 810659700 12397157 982494825 395206889 629590371 601532384 851275043 425513489 678663110 309387028 385835498 656770825 976828446 489328912 521527045 476696301 916084602 316363242 367875253 513615995 813487482 942063471 975764938 454593662 749266445 678562479 983652493 606156323 669858945 311984242 694853850 888148008 972889986 997147996 997651997 516503336 681683741 810092331 955268552 528887046 567764946 125256442 146434721 727852371 867094562 888231910 950921888 910036519 917056032 982809124 985206428 164612413 349916321 222294455 772455040 738178374 738982365 561153792 772383266 136653808 732739005 211603530 420240614 890207395 907888319 649824029 673259387 620126752 925289136 961029332 989151406 230552201 420854739 539360931 884968184 50609534 588625403 85702562 676663599 965790831 979869388 660860968 821716723 900037497 976429664 188624751 947115259 476042505 565415644 403884012 988968010 838390710 864497042 408885997 961509323 494873290 969268874 832835163 970322226 847296068 927328903 607133002 711638650 228433543 320984515 10406783 759698710 887662263 945389807 476987443 980506187 302109142 389210104 876001768 897487115 924977883 996519255 740088205 745891297 101517063 122324701 462541637 604800180 452818486 478671604 743539594 761315262 787729 715285967 743541644 769879074 971841641 981390358 624099898 777440318 164178787 265207291 134678207 304690338 244361663 425048219 520966875 701089610 349742380 676584220 165868482 368164566 734759891 900646695 1189955 661185157 407274458 422130208 811505566 898197600 208478177 244233710 637162334 792963514 184748790 200553984 478793913 665999372 216730564 337506453 945961775 997714096 749013393 886206784 811444157 920420147 795867682 805178755 604219179 949357942 835520618 885242465 889793977 986833657 131299237 783269917 538287981 618162116 620863003 734726572 696592249 898266090 630525539 935507615 746897053 961141079 969032390 978741417 687458704 763023754 195327234 201129440 566762729 898075127 204905821 439435205 414505647 967603791 282153255 574768246 818776145 918021588 995881416 997417738 773157144 825669299 231447996 638969815 785580937 954950263 746516557 897398384 970939603 988757789 480096523 976397348 783763182 801981332 866137541 964940390 92587564 559526752 316244262 316566851 131812566 807654461 199926633 576003310 4691762 538958193 321857421 711854129 171126128 895347385 669490633 785873375 320829617 992179077 170469880 953031515 460992341 643855384 992621326 998066774 730256808 967336643 291785335 650123590 297745822 971627037 245946864 498826268 449359750 892832599 172895370 830003690 172095668 710277107 549776677 936642046 278863309 558453279 807966822 880018710 213056822 672897867 18924403 493064562 621302196 957239275 526077979 715990062 15830404 384037884 823579329 997832947 214094571 773088353 356837224 455395299 243820049 990310080 332186636 712241125 101825582 800510975 728199444 754929500 56915831 879298224 882385069 938114217 202168981 255707789 942053315 994968062 441871678 854956747 463570857 911110248 331520578 832006926 915783940 937219262 459736870 532558750 143478824 347667650 698356619 878399744 799848469 832945427 586794207 672714551 891074863 953983548 933756467 961927259 596301326 677028661 374911249 582960957 82512490 308619282 530844278 901123233 742082066 895105540 226801275 522456518 130288492 548769449 412249838 532775514 63197479 201371515 101976449 787316015 440647510 672783572 891650249 904358143 998805442 999607022 348522158 875470785 176772068 365131395 858992790 885543162 48050951 131951042 109982610 386604687 755491632 789710795 166219985 363955571 943461992 967024783 626668220 703629094 406826004 481966681 299915209 934117433 869023609 991821758 675716130 772801491 842888574 973775010 779188406 829815083 621979160 898063938 834031769 922774105 250436504 952046795 523297244 897575010 802045579 876011002 340158638 756483760 467885535 581212259 835940658 841145059 524051478 809255669 346497249 676234236 619997972 845082307 400988990 869637586 747946322 918383813 985325022 993239953 358466940 669834507 679095718 796673165 308213308 748866909 147287721 214937495 351194530 956217864 974861377 998096708 679593546 694896315 462642864 512992601 257762334 927922023 9562932 232009712 90200989 940544073 264828076 414668879 938111030 963887494 870210474 888623360 853382613 987655137 265061354 467360099 94887894 378384063 498038037 885046356 11570269 255447275 747074407 875406344 653001883 820854669 593933262 694863171 79030293 756666173 158667385 943621042 688294264 742629711 601557096 719859221 900141920 952209191 186391516 809466414 209129457 896137532 608479308 640919721 530366551 988891849 505582410 770145560 70439588 375239115 535591278 774351365 194842423 855349230 162400234 415803316 786665922 966926629 949597780 977966259 586897886 813075710 147458655 561348631 836331755 945853503 484353561 851204318 744698455 764148175 891032511 988305894 519899064 890469778 350405816 832866805 108003658 950085374 122722673 806474011 547564587 975133714 387676565 966978842 924416244 936857439 218455441 586373117 864354141 901991300 680302272 906437906 658987965 754752854 394930758 705327151 907211377 926846627 891725816 948590876 157951173 260294700 899061524 962524922 264975001 945909399 961155221 968768463 302382831 419471582 835680442 935064386 747672491 997828583 472186403 902914270 107915330 191283498 551658553 668388218 889664860 951471382 551523500 747609113 576122301 825831027 602601046 991553822 624490563 754313713 205387296 910240209 408403563 541510080 981720098 987458522 222291616 657130006 66714769 320942800 171149506 671190283 898096563 912181224 143744751 674985692 906889382 931021402 867251449 868908822 574230669 866054842 497397982 524827370 266161057 638971847 848607462 884777203 948153765 968106797 339056338 598710510 614449469 939227351 261975119 868845916 925889287 968537527 793370765 967354195 767184890 881464718 494473012 573644996 687480179 983577022 469401675 550302241 651060193 951031889 918196542 990826923 850924607 999346220 141462687 489902215 85354647 150355643 916952485 987794216 114290172 486799241 448102937 911251508 56029686 876511910 879693508 954104803 316532648 318994813 117727979 202979931 699529663 750380700 747957078 884786232 158365280 823722503 636218147 923508050 519349705 640819064 353609626 470410530 23814984 28544829 582485724 972406670 859730942 997079963 238651101 510118305 385148811 935911789 289204516 860165927 484530803 656305101 681628998 819061251 488904614 597657688 299853380 646314271 721945742 899198843 329261283 664945306 672651051 993458966 476836327 622449736 139974350 413020618 852842592 905893156 834245490 887753466 676858772 740239175 466416145 538842990 257116475 492410124 578020802 819924799 223065824 871582983 850096999 895368285 572666149 651213735 451178415 648739976 991975142 992214603 699204647 874364693 701576686 877019781 198066102 773164580 715537898 933761114 684650195 885106094 408534900 512540419 441439867 888942255 662508473 944928189 855532828 994022237 786175288 786836850 62295738 91290268 798579995 878013241 452560558 673650826 611050999 825705398 480899483 731256163 742614415 999620605 688803308 861196126 121694089 668511561 711693979 777278124 94828850 613544545 415732647 874005701 302890437 455402908 229499906 662553385 228116707 372898889 68965766 989931703 618686117 951242713 21373310 143612341 983873564 987215532 565932905 927373215 125538930 544047162 390732153 655298661 567433480 815117321 193379220 460598620 778723127 863984045 523621999 940192212 5409264 546489479 516314273 599192316 626750837 796842303 669133893 959754991 510387535 825358603 676081634 925862422 53670739 55179417 308791808 655181579 254224229 483222318 521850926 955407412 174323552 280725511 611378577 832839241 511724744 904574491 590287304 905793403 652670421 930413683 6280784 402857077 921841024 942874892 672466620 903718044 240468709 726995766 257105622 898575456 596085035 840318085 749484096 980885355 913486068 914551487 561328332 629662850 480641204 906036445 696648033 792331201 194148361 361723519 497268082 541196279 486299595 957473843 377987179 658122568 117804230 379576869 623341338 749020979 994051960 996931375 211541376 598786232 215280028 872199731 847909672 988317040 727687914 817876015 177105064 762186178 114001454 658149733 214707692 759029935 507191673 744977380 980910807 988730977 568930760 765417864 184771007 552149617 694880467 810943414 352544046 670534755 656702815 786265685 490463458 643076429 624247132 868914414 745902089 806979282 810797959 902428075 986189764 999138556 462064009 479047705 503791323 638925986 98815064 973961864 973345423 997763172 216644601 345620682 407881583 857270068 243484805 946350234 112159032 563004022 152996534 266790390 564729736 642045625 863895767 990848843 65763706 532199355 291810585 448919629 138300924 961098189 374235614 823291935 243457280 637080664 218043171 741411837 380570262 485371594 395104359 710490190 385395010 912156011 616773185 862005549 318241191 334600538 279251766 334888064 371633300 963697758 915724456 937895432 60763964 499198741 606601673 907309260 874821008 900149041 246686139 878101452 424286072 712973403 778680567 928518668 266662089 579993708 353976207 620939951 352273441 786625640 231586066 324258768 948619417 956242368 716227759 969179041 327272931 666966461 226566537 659627913 43704975 800948332 66836170 199634177 898749829 932068825 749306843 766032446 62740326 178754397 355939117 781052355 963070649 999858362 925060436 981265099 802606300 910118615 539020793 948323632 581499461 776643444 730888023 864169783 322207093 611860464 452972253 533203989 431507459 931832352 11710276 428342259 551305662 911480444 520846396 883822632 679165145 894544536 575177746 849633959 449114926 477058525 951707045 967250581 654979934 879061216 859073870 992498632 392401645 515344873 916700842 950222026 119146448 342135773 803037251 893525298 567002195 855831294 119063854 377640485 165835067 988902723 456856131 682274402 131323336 959688582 567297542 734614645 40277268 346969768 286621357 775555578 255787628 907185630 237359878 650819126 459213669 534167877 796088001 870692260 137942222 266968543 870984356 919193399 578968259 803435671 645204643 904343497 951218927 994887586 409587584 969552985 101292544 881221828 441122608 826671244 49873283 820985171 668176512 884546897 871327203 885489203 712411194 863606226 336959212 985670567 187883831 484801867 678757449 760890528 342473485 726391516 234054360 403292158 951171792 953889922 381503781 724154342 926591170 957176676 316442906 643849025 699312914 872846810 254180632 782329420 428612465 592347577 353386312 444505754 814456549 815974891 944561205 962085992 428199270 686157808 544493338 962377857 893490387 911620744 631809694 727495399 960689247 995769050 11118291 71672403 31154471 106328602 639656943 855477325 819422098 933312982 896048417 996581194 21661323 592931244 873528813 899293831 44352119 494513559 507372882 726919442 962152845 987261979 203311074 291801964 198316560 458212611 449156580 484608227 804813439 921169465 218776560 393383284 337262374 945646287 460046900 634346438 411997418 895599259 249123166 560045447 598270518 971157315 6543662 208794640 852336241 869803937 321375123 524564249 626283534 631299851 886976831 891834123 721258740 759361621 445264137 565684308 734429832 802989942 165531882 233089490 529859504 873567786 89327187 309732687 865283120 872491075 397706947 736333414 251471518 336610351 867269402 979251192 87886352 927608405 731526448 990919433 399883290 546054403 303169198 803767799 486972789 825604637 719737506 861200527 646244229 831192145 797548343 815587287 956642046 989014270 608726735 659370007 10610193 414621480 424057823 453930253 828475070 931878141 480642134 731123821 525899789 833413718 936139133 954885527 29020503 209308462 285559536 495956388 466405815 789573751 619081543 883469211 973765323 975130696 95438650 463646803 815785817 832242408 26046725 47309633 521089054 959577403 216989062 551619892 504853578 745913302 772909952 864907569 203587383 926522356 107728226 828139274 867460207 897627293 284680191 619183691 134177398 314724190 994422272 998192380 86291063 89991917 196232473 280016786 309203230 535191662 921172585 934852948 274938549 787037951 636486758 661692253 520201838 624212893 321583772 907481231 256405554 357227390 695062002 998075848 611599412 896088919 345033395 701898212 364848287 377689065 427991380 622701982 231547120 242850998 846260051 902899504 4899846 268925725 16967204 732739255 8135272 802295593 400938668 936932114 489760056 958936544 656428953 882744928 786873516 911325060 51902108 598973653 775702387 985798833 459319322 977246097 280966971 694018338 891036786 969597171 307727792 571247487 913649912 965076975 790965164 959962321 581387514 858289896 670089940 779802773 945994167 948935206 763750186 873640355 860701967 923601624 898247887 994537468 190305481 597636716 314951050 324459895 546408271 577262584 554425436 963687836 94469419 207713702 710064443 856679038 483286835 921678992 950539246 989105627 750030471 996938455 752339894 765088213 218838464 976446269 325602024 668064360 112312505 137475149 837676435 994966676 941957121 955868892 684033830 709614306 16935883 643465436 825006267 843859184 973755276 974228425 294901125 359528360 156464300 696575223 603437562 922042929 114746101 636224836 100866059 837797747 612496025 940634156 136400533 918924109 783117566 875446090 39525801 84416457 255728917 533494015 704849452 767882439 910365005 992139549 654015501 704344091 557390266 846768162 686771492 960004120 380154834 932194069 862763146 918396652 317582704 554765485 980048249 989838096 40282242 742650676 294669521 808589335 953263008 998581172 618469086 735440832 6672626 26919742 762366324 909701931 700707277 722436273 689801677 980824320 418627332 728681631 792481648 861943220 518588479 685782700 406599832 994048776 971157717 979120352 232575693 765206714 102192370 409490083 365734810 807545600 578556296 652961163 674487824 905252357 376411707 671815736 307624138 384271056 412818346 535924468 552422373 647215205 509982905 914743616 5286893 157257583 455900744 719674025 434747593 829320567 136760646 714377139 171391215 477319204 75464988 367758604 377223906 744494545 213504062 401890606 957167669 999013228 671884584 693718261 647269911 900072358 232811408 276796992 46962104 573990924 914536011 998740272 837002445 972614748 339074608 529452401 684487469 769617524 843682039 958740719 179092750 332654022 362259012 753368231 753283097 901260587 953365287 976235221 257914827 782642473 854950744 992539652 859485281 915593566 998721828 998813532 111201676 170891361 765100347 882859683 696914647 893122976 463191121 786521958 16084945 419966263 642257235 985687563 855499149 874065807 380187159 802963712 242713012 673651937 430191247 900976043 49737680 449324654 573797036 892691004 954608845 986977112 588379742 704127618 362601326 493199665 902443396 947909201 457159465 561199160 236442143 865670210 757377507 813778789 785504062 802036775 244011225 410626816 360185045 877420412 51454369 496889407 326729679 655053577 688830062 935329501 525988417 734704132 812311763 962161276 556027037 571590385 350780715 653084503 492084716 903262103 562548094 723280001 825143005 914887306 23295452 578906002 774681203 790373692 677867664 995669698 330679280 422227981 337648461 457170196 878210609 910560834 412275517 843256610 593761476 977923886 59053067 755690043 465656914 849270708 266952385 324264441 313435988 894111221 742761656 903327432 255890804 700799394 183760241 861064426 534571179 714161345 775052462 919128032 550380261 979183324 942917031 952861009 26539705 226473184 437932202 835208848 519723089 745079843 984040026 990896114 792633566 997245440 909854323 979324766 958817698 980349532 918084938 948654421 15656694 474838262 122456821 766570023 763321697 884373560 912746113 986972645 707489342 723049197 930246195 964169529 504236276 737339496 87677604 165594081 358177725 668452899 967882394 987010180 454159171 968565584 79112528 203701068 202200318 333627977 439156575 900530358 435677169 867707644 365699377 583677678 582769791 984832755 540196392 859874841 45382519 115322099 364668693 386285221 266089460 664773996 753365165 802601929 509587242 940868935 421959808 615558640 619352971 801404675 791115314 947681383 73851052 174879358 886246276 904809224 335997396 351816214 480480751 870921228 366020364 491911085 700424681 788448915 302886147 910680283 342166157 447324017 766204354 795577310 709900605 911132859 281967178 591543420 952380700 966855021 789950961 794847111 933295808 983358878 830571147 940686440 236841768 834419485 918975697 929678498 485828213 863310144 813214368 872362895 209858802 674408279 271762372 926436709 632412184 886357839 896635167 924092130 618442456 987161056 650918696 921620477 758432244 794304178 118886159 390707700 349944405 354856417 20701425 221745203 283399050 669039988 861176321 906522100 257060188 764041235 878950921 981420021 444956357 948765163 360457248 877204270 806172318 848564954 225810709 540329048 165008599 620294698 616372295 990820971 56168487 533088245 773223819 883848872 781559953 846837766 220283063 513434956 189690467 466104927 775438646 898011797 420403235 619936632 166171449 759864288 842345285 923156972 702129344 973523955 247902054 634164664 305827821 405282137 201237317 717948400 624934294 632488260 370388417 508007661 82335617 834577636 207716141 502614225 98282755 127994898 143770524 586754552 639896642 964055155 202345439 735316224 143980038 821297563 5172480 274473339 549111104 587016359 659206107 696287706 794856323 918088354 459100907 922519124 718579283 746967600 504564314 713392688 69714716 765228608 732386606 812714278 898434725 963513483 314135847 346195129 928939052 958215393 76531124 724873703 978108258 996383611 845745476 994994122 521183929 818867344 158799450 261180592 949794663 963078122 596924235 993654607 277624389 993875812 7793943 218588147 798349905 811567833 694793806 763831560 409528671 649863540 658463198 766103665 366884037 953771754 306200817 953703689 409022658 870794852 665738542 977619025 484076243 625238662 278560675 748969729 935686862 972297602 365556914 376016662 959370883 989598798 768671979 864105347 318975031 911420212 506380375 985642496 97920243 780835361 440600423 781126633 943980210 961839097 905012540 975602631 336658705 634720406 739445848 821069212 955896435 981114077 946026668 947236828 71398916 692190392 2806069 839236434 219062659 755218769 170466163 187402180 178658563 305999186 839222234 956996805 518733018 616322660 27621867 906589405 279544271 580079431 757569286 768573707 523598576 853178263 233678039 560902932 226332213 937316426 788516083 798121278 665720824 790340888 796988222 953521507 696136850 797091035 934960438 949614059 305695159 321085583 255566067 278453439 140108669 357175635 998246922 999499426 386317591 964886567 161362685 646903749 88899742 131062916 251300919 818956652 196890054 289485244 740671743 946798980 191661383 641665816 104997203 225693394 374755086 871251424 764809789 855060018 222752115 495037949 58195200 184418993 664180598 806402592 463152458 546365839 118187815 220296021 390905711 838231725 536560811 737021013 628433618 936562622 260413718 685169914 432175890 541773500 856932667 863823465 70456302 436513172 4566372 626102295 292873946 351889024 150686954 960793638 624674532 653366442 974361335 997397326 893753529 926018972 680639854 845863889 563600441 619506539 335541946 746796657 846149394 942762535 177704546 945567646 762047498 864375413 594282443 750219433 28279879 143426091 350220481 874844810 71544331 491331286 477095095 714942514 718676121 940587861 520170866 711683887 375290719 814337813 22135286 790381804 738095130 934142969 272522435 360427706 558833029 602529909 145708271 663985657 943763129 990376867 808559001 960233040 279733762 913686826 50420739 955189764 216050516 465411964 605666771 779856601 188951450 218272477 452352491 475426453 494862295 829338536 900932774 939523393 973917631 975070925 56217033 431875390 386225453 435742493 562096634 865722199 322371827 592189429 472447695 751883161 698007119 873728410 594903536 680272632 330318504 754734803 976217750 990826302 870060817 875947573 717490988 880020871 592283738 644197124 741998893 965950255 935877847 955068136 147052855 668775925 360620709 433264891 330186286 603624098 519321827 727588280 692440843 736383997 53793278 324180956 934431994 956130048 125235040 501937299 575337192 598282418 847252612 989570321 370255386 605018625 675888305 798309456 560036997 839321772 290308508 608279197 252384195 635860561 38513149 164032173 155613151 707229544 767490224 809381297 324329947 726619410 47109004 901194587 706676700 987265114 966544559 999299975 766452431 798631034 940616641 965005416 708795607 711126221 335476336 705948063 213093708 830816241 138746917 355797791 247253282 357552560 878747088 985538135 281465751 421759186 485368124 619077201 408071241 818088583 604871691 730606750 101396200 391702676 862102194 900077957 972299990 992557478 313096057 848686417 704891274 822713452 714815757 943769876 184920571 263003060 335947904 741245826 890860055 955262990 676368303 753421376 759473761 852712106 161919145 836582364 431324310 855725468 345184629 972666689 236108573 827082999 470235492 558101505 973314337 996251253 314377197 763531999 725308337 764490435 525012375 678413264 651094891 678277259 91009086 253290509 57766818 267596303 38035124 566753295 253406839 778120094 100895906 640457728 211040116 557477521 736038909 961899203 763791521 951571153 734729450 887667801 568084833 749465900 323022546 921663470 446731377 609260686 827565597 838788252 8631112 99940911 892133494 966609016 504296287 562566415 475449716 484005103 963247748 998888265 134554967 813035354 287522572 507265372 983294162 996450496 76072270 87204912 49927903 266496482 137389582 800356464 959835330 962592422 670490423 701561371 426392459 624810484 964466945 990090951 851613578 907653650 648736558 671101267 464838140 801239710 45954576 787140756 876140387 932584980 564934133 809099967 882050328 940132360 842663727 957404983 751412011 834374299 586630203 598512931 911889210 929530304 136620034 566708400 944069232 952782941 143727819 709204241 765727820 819498998 562154774 856616795 322529803 589842324 507740306 659616428 159262866 309361443 843214964 916962728 267458717 483497782 999396954 999885989 864299366 955385249 224006121 616531313 30675726 512393813 241223587 999776293 114312925 413100140 209706470 725177434 187223455 522720618 17661886 766894059 178172852 415218863 649351843 845408847 254459142 414923856 12252124 885998084 497031298 812006981 906932738 928172211 935613917 955057891 633720599 780566754 319148750 911107060 736019161 808814846 90927926 163819207 506301883 858247523 470060771 722647990 651630514 746397437 820559693 953562997 486656872 817317091 300342200 386123402 841384340 920557908 895024962 953487860 576103385 777403340 170274684 789548558 223624332 445122214 732818196 794896122 183918669 202612062 752948964 922941585 497136936 771524939 568134817 746858936 449731835 651620872 887579313 967252264 141178912 826970326 195108466 747819877 529141926 961422312 254917495 785305948 779331997 823363336 654538381 794223723 347231617 855851394 320506710 815251499 679469267 808058153 857110066 875523207 32053465 205793182 394831047 784128282 172819258 637204394 873219559 955717572 256010477 501111618 589121294 979554813 441697420 786059941 537257508 755274368 570950165 588359784 483333748 659340932 497999730 709462398 645124658 990292222 907020922 966185733 312911617 602326614 291244904 671078116 199520768 704360365 643577145 786705190 595174171 741884365 987777904 993093934 775232487 997058364 210369356 330308295 161692860 497533207 469396397 615747925 565161891 571454123 653850976 679494368 585296224 790402576 892248175 991232333 50459524 745863065 467710727 828651756 943877661 964215530 912233370 912812305 259390470 533469723 394946944 652372052 873180831 971231973 682217114 941067228 552622742 765681974 298226587 394747309 559136142 862606559 357506328 638031845 833640453 862875974 716742350 896957770 838009062 841667571 996149449 999653000 71558673 982140401 138609606 904880784 118071957 883220778 460364556 667621005 179447653 628971466 427519785 746385510 139290665 458941835 129370891 979635985 704195801 907878634 639408223 678967807 817560315 992866550 521239569 675226334 244315292 823700472 452719964 897437568 8304492 549701119 425463207 469903129 762831914 979111744 229728643 354598115 987261629 987657202 43055745 245472576 128626722 304109930 504969506 557819711 782862638 894937872 852126327 930054738 388389630 615204334 600993793 985825252 42572297 697670797 709189579 933683617 469776645 883733439 281133613 579101487 258497002 381081025 735336215 908897916 998733924 999254019 953569763 978700601 910111225 932749379 668949521 905255326 961457577 973119540 536845996 685089341 752227387 958435758 818763044 859211412 792234428 972943977 548494937 657454323 186184245 635220788 95235897 947089717 464181087 538397324 50608947 351778397 28999652 496566387 816478859 953148978 729352655 811993649 119816157 864475910 729873599 830082426 707738822 955104070 370136398 805161255 413481280 925252256 867856365 873471078 776125628 937672946 772602338 776288181 565513945 753634701 27066898 636742174 484314727 701689511 61745139 359425066 276914131 975246755 199891690 546214694 97914085 207938048 358217929 986786161 977320770 984289184 813774400 931545667 818918057 957916550 648854743 742828629 464413137 648263194 852898558 854791105 94080601 854698578 432907800 614883487 882520080 982825275 669012689 865900047 350269636 996680174 114860801 932104768 179118552 601702709 356198231 689338652 422776088 667157913 76343032 968628722 408516227 509375478 613929033 709481618 51758374 83861506 470263259 636948400 662215697 829299277 894909988 955568022 551780215 698404446 593118818 889260327 596241533 635430143 758515415 985690755 236782488 415628482 631973609 700001008 172202335 918484720 706071114 717981938 196414537 773782677 738335247 839794998 705340418 889853183 766993915 816871071 256249870 978486875 293353889 911123403 300508602 935901973 45828021 713620411 699224067 721431902 699632508 902977652 587439941 703003404 657387276 920213719 404121175 848438740 915555012 983476479 567287648 846508994 507863631 571022528 134416575 493565164 120423037 348230350 493237492 784167541 323012868 503367041 803864154 804991858 443324938 727719604 337890235 867504028 995576328 996317637 68746130 991021364 480786170 713885740 914066162 920072718 167607827 996740363 81760628 986379854 785212576 786491744 160393064 410204507 672119220 878088482 889638622 949573714 280222940 504528859 879534439 991892269 698885988 972472162 281245411 647669613 845328673 881474536 165516692 935897341 233022801 381835505 155307237 533874303 342001356 574217892 679797925 999972524 731505052 910565285 659675681 802334037 800801843 890715842 891035139 988889063 840635229 915021256 873110195 971660631 753507418 841001314 734459545 779882607 925690027 946212075 622830676 977936160 122167375 406532976 383520977 437421940 690557973 765039122 173244400 796820274 127043939 805787066 773198915 915789523 758205507 967605662 828879223 828925065 893005820 967531149 660416694 893660407 428021973 964469950 732751494 951910775 583983679 953518013 220406201 792801078 51557219 177340463 454370314 932797712 550446631 560827792 102825071 222357166 145554668 259186507 68140799 225514455 447267146 633269450 435048022 632787259 620286992 841983897 547041740 876411441 213750730 947113992 467163697 979766977 92898046 890409069 353573914 829245356 402131555 409913695 488916764 630740700 238131974 295182108 315073894 373507977 164838718 793066382 966590130 992721974 568965561 869998477 938328737 964844924 174886804 567318989 236037445 940933816 948765631 991419770 36904136 412410473 382045203 497736498 755467488 982753222 387648321 570613061 702418856 768889610 517259828 778553297 646303134 774552131 575263911 981440092 367334061 436370411 196294589 341903457 421659311 450790174 187913748 400666053 100921662 655058137 180357850 222644657 474213146 934128214 555455313 958401017 333260225 949511760 904562224 972936371 722547098 901657082 996422209 997301170 853096267 932051785 135755041 712914303 427372507 685461109 551727690 791517096 20556792 970240935 773192806 776721709 578832994 824414229 902558927 961403240 999181235 999913540 40804175 387520278 74019890 316874643 52801847 180786151 575373140 681233489 508863388 768522586 688349256 766125438 961355168 971501679 135401688 732234899 20490415 567072312 567271704 640274631 404173384 720410544 459777926 876703612 632693409 946640958 263511439 419046661 392518505 651272608 722851658 994560528 623937351 625367578 570085146 680721126 996716841 998665923 730387916 970089728 329932233 462332008 97301645 563320670 525008578 754074015 807507437 973839999 527579971 928639788 908697057 977343202 303714522 735900067 526722172 811349043 753962116 816675311 349843692 780485245 85428018 938603727 609603516 654545272 489635997 554103530 598031003 780078075 197348535 943903192 817477594 903464527 280583796 632904942 887612268 984510653 738118674 800572344 381655118 860773492 649233276 771215017 941630911 999788236 108660369 950113201 963147630 981203926 997322261 999655190 487972372 838126336 999616674 999951997 914347212 942222176 201793543 317957310 464103090 830422014 563236716 716273551 284237693 997935414 188455303 741933530 581445602 697856688 808456963 900403218 981773714 982179810 30428254 464981023 516403855 885215702 153585467 950183430 572814566 861167985 603775662 738355464 94834929 99878824 432424447 731286314 171684673 302491465 541278406 710367206 925428468 950084645 544060309 831802215 767900828 970393454 160060045 479309629 555208865 786339557 79510312 903083250 90056830 182904604 461297909 874713180 557935015 608114225 791765378 868819571 184753531 851199295 567013510 847338617 29313664 699728696 307136161 449639876 616342028 947189215 851990988 958336550 304897188 523499076 884592782 893518906 5582283 88365832 117686579 621977492 628365138 713420724 685934343 826478905 581455396 871992935 747906157 797202281 744937129 989252481 111342006 810837394 656547754 995818331 267243235 695983726 620132677 847383286 42978803 686104970 410597702 678793070 978763127 979079014 559554992 585694190 7711310 507316770 262065880 838721607 629969373 965585653 453919212 843311377 720773576 886679066 214035906 579251025 59650335 607924688 544693862 660810981 273908936 527057920 780652478 809872494 969481315 974631172 898837010 966520225 379201185 541398163 800498183 838767932 987680280 996078944 980528117 995912547 350089822 363340834 418214081 708324329 773197424 775735487 368931034 590038937 398392988 706064959 323205272 957410454 573438504 958860321 100155914 225663153 440887433 955254642 910146862 940855152 995628292 996465023 285818715 753499883 669673595 893670981 353184951 781622326 727205845 995974964 856099864 865380354 756405181 781576689 453163177 863293709 929456305 935149978 893880423 946261050 162140611 636091235 217467650 681658006 125325500 748241110 983851547 989390626 553221217 730530697 450201711 522730019 595891089 694525286 438931078 619752188 159308390 431957301 83355804 430769965 841768702 855713474 987294861 990400005 791026074 814117469 492120811 997841249 150265642 528720641 466666121 633149525 569390394 908800640 892532089 985435792 642731063 893879496 998982763 999088893 117793382 293936195 82410376 956049524 597195161 820988255 749553301 889624460 945515499 985196641 862223299 902537646 280430295 928692013 34607227 972391424 778559924 839181218 759287777 855575407 531617869 587094762 649306379 664851169 680584698 803490077 540333274 751895087 622776362 710210228 406614006 581318077 2147765 655742130 10694018 91629021 45842434 659197867 226489065 748408869 726782968 761381103 565755352 567949915 558903600 702341954 568452254 825619304 993452358 997941442 805750851 974817963 639316968 949878133 149503540 702004833 307685537 412700036 271149910 536578868 639960706 719769520 165939963 597186510 640349496 792499103 210540427 937195223 489396050 884146483 607763239 715322600 382338418 845248280 142519915 163783272 821627083 920839188 139463775 222188047 41388934 208946640 667942262 772562488 610231810 995097716 208893007 415309120 633409625 786258171 505784941 810405152 721587574 728182288 40700060 807072991 679002053 753158646 777255694 860199363 599613452 619586532 856871555 932014974 214431809 279173324 920877465 983519813 181743592 519096624 889907253 897994482 406791186 801036895 107696699 206993780 995504780 995596251 542448997 902249107 492718595 717573506 408817934 955924470 953407909 990545827 204757171 912194391 430939396 548565874 528635768 848609734 620215637 814216867 209694162 286584688 854362114 867164816 780581241 992086072 569492094 610533168 626526727 823616776 50976461 531680753 501085738 681261873 422743504 966325496 905063605 924495233 979369081 999133674 690444368 837295212 404512666 911266099 785430733 995039042 326694142 455664368 690523995 915602778 24425164 953405783 474716575 714676434 322476448 769777754 532497538 837899722 442580100 745106906 191638328 833661184 264017167 539726416 322133565 626863101 994436733 999370564 649192640 842480740 447490950 579986850 900248039 924165200 170890202 384142373 293351277 318523765 473800469 740184262 730595964 883340607 621491954 901372801 438454879 629557643 535984460 652043623 25790324 917736140 487497200 487940624 358161368 642802055 841347993 884853010 688143791 842205331 663320384 985529696 151239869 526629726 330380508 432424659 17335361 925305838 733365851 896141349 160520152 742577307 293303757 451734470 156250126 572330565 429130352 651166249 222093389 240360177 973803104 991131654 375693292 977795733 471483917 489328250 798304412 834685611 712074818 745146916 730651008 875801149 753006055 985523388 906183768 954688757 441490768 477717936 961905349 995857463 194750376 199395522 659315275 698353318 186994298 742003305 166613746 758611008 495103878 548267082 597537672 702328820 313224411 429731436 597783402 676131221 30525279 335612474 400599398 948337057 857460022 940063544 758653056 980392500 602892913 634532335 455164800 705345816 588976710 799502375 251150475 351931759 353876452 774539657 41934484 327969059 171727918 532794941 395546579 695671954 697279204 706759740 850149237 882091217 177814232 579046135 481361102 991944352 868028517 970043348 972426027 988121836 635393830 849594848 490772569 507676363 62729646 100417465 831516205 850616114 792742033 829415567 322173422 638685932 466650011 594148577 575052450 956129619 114964189 963905492 965958756 986749860 93115230 461044808 93548473 586562631 690681466 832897983 231231564 251079759 379939913 457135388 350807060 808711436 82799972 936367856 628195663 811612360 255393790 431592888 595058840 693125149 8802922 90483743 222416037 589711757 978142674 983117890 287979005 463322516 546120542 578542438 196310502 269874112 305236824 513343631 605046813 939641713 951703096 998918324 117715076 151983996 465808774 716467429 128020113 167385582 922292296 927868104 45384630 901350039 655795689 682722554 411434876 970556134 832220308 977269434 474436797 678153773 955216707 966268595 493579743 934593120 16693463 468278792 857167994 994264288 974932489 979848523 151138420 280525096 532335174 596272851 728668435 802286838 617068275 754835650 155805921 395376633 567130108 656966500 340845759 455802280 403701046 929470505 828786145 879729187 301259023 908266851 951630320 970583950 34355271 982890396 508771263 777701190 774172791 966568010 695167979 934174375 331686976 401065766 285720470 728940067 7810185 671371602 575671850 935423533 747596973 921292552 100315627 389694850 332032171 501005988 358587077 718526730 926593438 977419592 479270192 556019362 338367540 571544576 477309220 925541217 141826671 851028349 139657346 615846702 428736814 890428551 26177222 287248502 436628839 559256502 659710062 803115514 700864916 953164313 323215374 674823571 18787841 322425809 615828077 699800018 474225048 580741021 206067374 819489189 464739743 735897884 270559657 934319730 457497928 775847621 645230655 850447802 61987010 389547774 904571548 924097359 700188292 933388121 150829200 313899723 955408949 977140355 870388711 928503877 161517852 726684284 343446754 367131141 190632224 596431141 330393498 973706633 405586345 466366746 660012446 967482731 522793946 754151192 602959073 772818049 272588650 311385148 204219908 654291422 170428336 497606263 136022109 689346472 131284230 551263329 991133379 991522836 826618697 913058501 697521116 945880398 712281315 785812344 221107492 754463520 362027238 458265841 26516128 762722269 141392007 463694737 257432039 896106142 702846212 967657760 260474202 747125590 684780761 814668375 166465582 846204695 222486959 790097474 50824550 514104368 246294326 517714076 505357061 880253554 927945084 969302508 808985706 838332538 594249265 839063089 501100700 532708777 918938298 981931079 439057256 514115168 209253088 564821975 891356759 914618750 649678365 684132063 578432750 690440778 579547056 926201410 411862839 818035169 467065395 945598609 185814720 956915415 27993164 879066525 84040795 246584389 520564428 648776587 915937787 923084397 350587027 441096871 219404411 805395043 441516825 466819202 139524087 815446675 302387961 915395607 405179610 439139907 245861956 923380051 457339425 532291974 845481572 902693143 235069687 468637603 881255677 881803785 966737758 968016407 360581431 407250263 350546709 669719961 657355366 706935356 165822166 472493021 569849795 705824253 206069714 663681718 194605927 227537786 21979998 902156477 7193732 140712466 23495479 467537733 852956835 921980623 973598007 980537648 191320882 461782278 568021937 763595588 79815102 362546245 14769790 653702356 375261248 885824577 370612581 539211961 816208510 838157658 824093055 982966757 162197251 503279726 441785994 620795803 371900986 998178506 736819723 830587144 437757233 797440421 318775263 336094388 777105822 828765038 789405265 826670817 832480462 954032243 307370722 530663663 388832302 625301931 662118986 683515261 520503212 902458891 441167453 577989061 53251942 288972048 829862582 993248828 464328450 880008853 915004313 996313450 573793953 960987082 487319907 650991744 369258832 810442323 480532775 548827093 784376741 958043881 813908217 872843450 851344192 883857045 937174438 988405198 268116259 346584401 756027553 926167594 607155832 899580400 996823117 999603733 470214795 821277580 472131333 539449305 494898102 692909580 873765056 909066481 765240444 817264916 245312462 485056866 42760738 782692858 746468638 978799788 339081534 516910013 58112684 176804423 607728137 939677758 321900955 677961588 534800182 982392681 177705817 569209037 904968147 947279944 47093052 107751995 89405709 399141587 553950768 914064569 514746846 520599076 148429036 751770363 673738414 836091107 881081366 972207109 23084157 726670239 752163992 752701931 190901743 690722195 805831103 965102697 258358323 572508715 271669560 940751745 13762018 951481950 226265010 256469010 188443257 346640815 384531010 873192994 206174641 340615275 648488734 879743945 672035850 857886006 610023926 896886434 380966919 907051445 384900026 489323272 418593222 716693972 665395568 728585378 677627519 863717572 203983858 301585827 396427400 652285204 162564282 954239998 271317785 788129539 449014626 599404086 245546992 746182096 189939720 780144243 64916053 915706112 394606601 753628990 641359916 830514098 798676061 989646596 124242294 906819419 737582017 977379787 31471445 106724058 709535347 912304076 902306797 904793586 640087490 980527233 560215544 908898352 504079824 969857698 841225961 958126457 250696477 996398318 944796241 996718622 372558034 923612345 161586090 594757428 406911190 656703696 468787776 499075275 187230477 563020994 341839377 415656270 160188171 524825720 477620721 697697189 216598661 229548660 788136628 919053829 449234807 457758088 307461422 874375088 167304760 283173049 536737696 683454175 411267316 984578060 594927122 728799919 432124098 786683704 336573391 918554272 203966547 621728574 601429084 729826631 187030134 550529965 343342040 557708517 754472788 948641476 267880807 557861687 984224453 988429084 975740259 976064851 158729062 438487795 109726354 269965295 92825780 961115885 146277681 485470377 908863850 945521469 320053138 357373964 851649432 959290834 357950911 973061575 231300121 520994421 511576174 670681482 603862093 815308490 134284360 582650109 440491394 901086877 997113096 998350282 36793033 301831179 814179197 892832568 283976509 466153704 321393781 565205147 436894867 731376479 629330330 812215976 156343331 468349770 271052388 563667601 3484720 893232072 501820481 653772283 781537407 936209905 936950975 942330137 780679832 866520202 314469183 795302168 488101617 522137335 652940494 761997358 73852316 667880077 420362065 729352921 143703499 222563519 856679793 945632147 489814838 525758289 162084239 677062008 841212297 967449184 775706389 930722580 657688452 673609737 256606880 983254167 10357895 872262360 944257052 949895143 197225499 641368630 74611163 409620225 415986232 424894172 333254034 916988430 836729749 975246032 460627564 543555490 352258651 911688315 818886446 842937183 182034160 284151574 596687474 885215185 342275935 813552388 686382373 994580136 749368417 752290616 117828509 264776420 209785337 235297453 982658565 992200837 635282698 826378908 254114155 327272709 237732327 480226696 893701621 933490831 612601950 953328628 894894029 920076403 740026702 792641606 610932894 976991027 184870991 749897680 880554635 985510827 344257211 700610101 224539139 534851462 181949295 748204552 737370769 825731311 798016079 987208359 128406820 351222466 996753203 998210126 886198443 928041687 106121261 629114297 971769249 976106044 478070929 841182537 538284540 736790518 900641384 922950513 529942461 782830540 904535607 928967723 331529804 893127598 974174034 980007206 875422271 891381506 123256370 183780391 576468657 697596634 470479249 608305215 593837028 810773276 150772510 768949358 61159448 131014500 250510697 472419947 583180829 691062135 177238482 536116497 931525854 970784136 139081053 745062974 173239921 905563997 941360653 975539785 23147582 592897626 881176873 932059862 583476424 809364955 535095232 647414050 206572055 244631571 807285793 931429461 102120549 102369258 646408033 674700589 259155716 987398061 989243734 998828586 363511249 479246138 476384157 612360788 422142659 574708150 919392626 961934239 42122878 439227544 52508291 305871332 840766148 887317717 93912441 518010204 969482486 992048433 523584380 609798207 737837501 781676731 460421862 536651043 37965828 526620647 682571607 880310414 389404076 776913442 73024882 973112237 161026141 837646350 463808725 780296435 543832581 579693511 556904936 707697481 610719040 897939825 818277741 978086044 637505421 913901999 555008553 882971810 75110010 921445159 774685766 983430136 184165337 415680099 452234440 617303161 498754475 600108989 942023775 996721973 164640784 282675335 221077984 614646433 985653973 987171841 657081742 800672209 740320614 764407762 229061259 980391084 521200747 751100953 827305923 930963712 267883594 645582655 80416098 360585613 232949174 853797776 490026966 568114156 904450241 974411103 488415675 679245979 729082394 813826207 410347771 547381086 467201647 803976835 960529522 965615756 881543903 975909208 569806603 710116373 613422487 761018065 719935406 799077688 666700552 808611456 253962624 404581961 992091569 999106618 284548496 713558730 184133988 574752337 170367166 379236991 336157559 876001046 700259131 933028058 513963484 635781587 984304561 994925949 228699136 669803307 715742889 914572011 421662109 698369476 509183418 511897989 456013269 926366672 265114387 619568203 957945887 958846356 793017811 929284376 795843984 957765152 440238043 586510127 338107418 913815309 377433299 439578505 53569817 621554667 154257717 865594101 436702828 809782449 86808118 970772759 801049598 967005306 724739342 849240704 331242703 667734976 220922304 376285901 788784050 970227039 843469036 960183993 63068959 501093885 476199512 943173141 172768555 377546703 426289448 652255038 673141740 779098448 487048202 839297784 279600409 785451312 969133543 977136153 880920461 900699882 884953144 918754007 418971800 920159062 629029944 995503198 678853128 708645027 116868102 439805301 466917521 898104459 217212708 496033203 900389115 928802309 588517384 860033438 161133253 708307958 586853918 852274257 461731971 734572725 260400316 878636657 45060152 51098290 141212256 666968415 551434762 883003242 505508538 681645091 263802180 991173275 219722580 313278729 474963249 816326746 359314006 744285094 736867502 786462933 330741992 618978456 344686176 394490730 865005721 879812259 292692815 989627727 495644357 532733752 597107038 680190283 385164340 573526339 119156564 375114619 215260477 222393447 365672237 627447201 60811906 376094647 83257850 470492019 135476125 503670873 987238686 994011202 980213089 996545571 334639734 810779596 581632762 913471206 663527327 765495611 20962187 599422212 42553487 686944258 376864743 504565573 504409552 883749012 943835995 970998424 275900203 541884309 202851095 992183437 507895866 972376956 890017998 980573462 510212529 647611592 693945530 913434321 140892408 984648811 543163865 943339246 172037106 598871145 689765540 863304241 173070036 508342628 80819753 687927876 419781531 530932180 560702473 785755299 338466658 364737516 127466670 796304144 397568144 464834718 326490941 881267236 166383277 326944000 311297553 896709970 320603318 869574178 690893976 782863734 523239089 742400098 341056190 945909293 141367602 549984138 706228343 869230561 714408400 963758133 780556372 892414706 465582177 706037702 136656916 743551481 770468288 994587526 905064204 975171710 842778936 956973309 103449117 854351113 807942887 841661811 838974013 983626550 569154985 816856636 988779527 991053803 900367093 980407114 142568948 161319900 297941674 411054390 459650387 748054632 663017260 783149549 29023124 675069682 914635721 998336033 428426877 456812055 654269879 872955847 470916979 536510305 117016608 849165035 671441025 986109696 809161882 887584890 98489999 305697180 774770499 780826557 889271438 989321840 825296340 865125438 785353779 905115556 732365660 845656720 390684537 798046261 59371548 514769658 792415603 877325698 129076053 915823740 359424479 615540181 719836091 940517214 978855271 989005910 433832987 449896018 106620983 933737123 225165381 508224368 968777643 979272308 674400156 757053641 102565016 391495377 818232752 888397874 675446885 778303895 972764708 981689488 57532014 577873633 527571991 593874563 916845773 960759099 868227871 939403596 55419730 272751181 532698567 772789269 719863711 805715997 713852896 962633190 365635882 795046837 870306902 931365822 256521756 657303506 575785148 948282450 761464741 964052171 453703784 742255582 604602350 892109537 225082239 794853637 589785503 937689535 88870375 100579151 785807351 876961907 342464401 750190579 667096894 843694204 901843952 956771937 267518357 339575638 455533272 521003719 999173912 999699880 681768886 708348029 865081656 997431096 910200324 950535815 887229433 990704821 375750717 488849442 636068922 666511842 52321005 620714444 180479445 458222749 633797620 803488607 891521487 998857329 880046809 971359573 48284083 528753068 245548251 803881257 431795754 658630742 24615244 567303819 86178481 485433199 644315825 756610660 329626241 333653292 499615056 851922342 419199977 523721331 340036781 870530294 465533082 904535359 403723942 964860950 410490686 712731505 843740572 935526141 850001516 859826208 665899547 947217937 490715862 495022756 744098314 996327260 409962657 565874546 186007033 701437189 453502350 791171550 809680915 898040047 399073069 627137437 545802981 771280484 699519206 908049403 189932293 557289744 412089160 798765680 338907542 542934604 564592624 564671695 952804743 989858379 803777731 816015601 48036985 457784004 656278766 823250313 35686699 917103295 900055031 933576430 897165174 934432316 332974728 618035426 333102384 920059376 221893594 990233328 995870011 997646043 323720210 966769793 207061828 979719955 482411901 807375891 240693529 775502243 752668749 903707210 71317159 791908323 558456851 734617268 480894101 800450310 221067813 280696232 18341595 316150998 833969880 901297347 60525004 467147995 186752917 721000050 718076202 728429288 975580487 999981300 824194528 981376673 985813081 994440846 714443433 989700838 572549145 651640143 525238749 964631844 343795203 557343687 496558795 832011039 422040749 935028605 678261210 745540940 883704639 971213389 178559033 610663694 325675161 646715227 594456741 889613601 186618102 432789602 88824678 445015352 159617975 887449428 781518011 881066405 579446642 957668441 670610467 729803624 365794040 457641106 299155138 771589540 301276852 876744615 732219555 870035390 695625097 766409771 960187670 999447834 117132143 574294752 619276682 707819559 392879964 815437049 667471692 680846292 915880249 955432417 514412765 559227463 96876325 948994028 476864940 775498349 44821398 373092851 815483503 913702534 490843774 604190966 990097128 993866188 609071942 889121840 470826755 495843305 360742422 972467921 720157430 895022161 448716630 649654394 784130086 791171747 28343814 989465471 50520068 546744391 494499742 646533382 209409819 579065535 196459969 730471262 70419301 171143931 58204984 62831437 901832748 974594100 538460805 675980355 462472044 736628944 309909884 568937695 306447413 707831696 176881569 243628087 11516258 694055238 775973748 864633313 217531579 295092165 127432965 186116356 376526219 622065984 438597140 545339312 549662500 600271470 732474961 937404608 770432799 819212441 55057960 329611061 252059975 818934902 362720312 562524796 862867979 995054903 997188963 998420721 8873093 607274238 44341838 465592680 944518515 969066670 584845219 877024176 72717103 178263340 463223109 477773013 154819646 612360901 351339918 726952373 445174984 546897677 519470512 922168577 609447841 795351807 860334041 996346368 586989033 653562209 166658047 863926048 658940223 690348951 69082993 359427352 632035954 851269652 50297522 856491087 65080918 265143165 475135424 723027761 92055395 627427710 996166842 997239721 595273835 866366222 705139686 836102889 929048995 977883080 726871098 808640712 333445590 775705244 171961133 737275687 268762452 781669068 911718414 913597422 972296700 993814397 881734992 991560714 475674746 997014845 755113838 786190028 912835518 921815798 971581823 983126193 964719936 995635593 352185720 490553601 761981002 765063497 25610917 429986752 173659908 479223730 958082466 962080320 442560234 734670811 433170844 897239430 88778868 684402120 311675349 920012087 783538527 951667669 396551461 696592484 687463015 768391136 742592561 974396120 893235316 951871621 338467157 755728090 762151627 914607198 394427700 576012333 377554989 586783601 990024415 994133334 930088710 948953844 321557660 708364822 173304963 415101276 18812735 948653651 26933561 800634599 475668120 845299803 257674814 386449507 364929967 813291062 20018815 769595275 783700013 962351609 287788058 428178496 713366701 907640422 544913190 874738464 778090273 967753205 818201707 877190614 796640190 862479432 864735411 941469566 165952976 488348091 500908247 866478593 888623178 946014490 433850366 724635115 827053716 855057020 321330479 522957050 510443669 779285898 175927242 841336232 259461502 621891112 965359620 987029429 226262025 845258202 526444288 992547670 942245852 984859799 672143557 679759305 787096295 859511095 277193379 443654941 165498238 493060189 230346435 474107258 460664468 664546989 860371445 930087561 329277396 866135679 751269864 944341655 817878320 993631917 961120662 974791412 349779875 621429858 154576350 665489611 781471340 799914688 786997522 799846035 636239067 905190275 511974711 800913841 710225945 901598384 619309549 737267851 664315577 801450762 8218027 797326484 683209081 949376127 854057264 869685756 187731700 744321477 421413231 968815006 632947099 814402971 544300065 989997721 856573155 951334323 817938580 865755152 375641077 597839960 255523177 743349512 36749129 63140483 146401890 401950022 168631452 916555962 280545243 978379650 207234049 927295107 831591617 896308785 379961835 899932982 589114966 813727358 184923198 805958862 66917775 177889135 30614801 220827921 430701572 431532018 201847294 941978126 528161640 946774113 977452308 994454305 338488446 601138288 431857813 606665265 765368472 910151528 152814656 771169062 136218592 512754517 729380946 811072529 473317164 788215479 509512098 927370210 121971396 198608217 385647427 959763478 958074021 984250093 869470908 978496043 316520516 915591717 925322664 932775266 967553649 970480511 246472507 415177596 728449301 888724136 265320145 531659484 582341603 789878107 267370877 267608608 643908454 843821997 659380565 776106026 439473295 834895138 241067611 877728007 9816836 565036738 52253807 753082230 570502147 852925549 993016813 997849309 776578185 983170453 138894073 474552154 66050986 617955732 369621488 571538281 798913371 951052831 97754159 743740885 334808131 338349989 34241229 439267932 272747732 284534637 663688211 730489754 741478737 845647112 288401883 290075545 11464742 868431130 4167191 616247710 244131518 629028592 751227647 995523975 238189674 648596238 697171169 716148160 876357093 926965879 280274455 410010925 604924199 871754854 788401647 952043459 985163446 995007543 921203130 948124428 979742416 996850416 67050393 778880256 187840076 650282069 750259776 758826788 673041278 873542637 39217180 705171182 721960568 725287694 620013764 996437104 625242941 646201057 10879645 976577002 664103337 952144515 274561166 750519024 733423615 999224914 895253517 925744959 823318029 889183625 749556629 790502939 488844066 593990570 629377315 729170605 817278409 851909715 353989307 649412400 295879372 351378938 147708206 407102824 482346385 662631618 851127226 969856781 912148996 993604332 92094812 673457581 993044328 994604477 168476159 214935901 250714133 549135266 42959885 926869946 285415667 504153193 495515876 622530077 466437565 600450695 282953506 608564871 137307398 850494370 469949960 931296193 27036491 698873191 268499398 820937082 49504566 516784441 613768173 702521161 253232824 270389413 193207566 634410761 297768053 702884992 742749251 943974573 85011397 790864438 531700212 740487079 309440601 906798245 908718374 997605434 776098942 895115032 316632190 359199286 246904337 485421282 136631318 503061858 856351870 972302890 939179932 967945971 748245658 952814395 266926824 633971594 316006496 645334199 604824563 685963547 10049089 421024606 844189445 940009454 558813816 806364596 6150768 258556984 825508460 837183911 421430139 639992797 521085094 930033710 312173034 653450174 961701636 975107380 991995703 996368714 539167003 908038917 280355005 486499517 352050049 449411359 88044207 537325354 909708863 913594553 393459122 742820488 302401939 538059776 120987670 958824978 327270269 968591214 404795271 489793022 690256397 803041775 912710795 990779566 539956970 868596408 946897201 978253105 984742835 989947040 772918238 845848377 634637941 702291448 993940212 997184515 210305114 486816972 564332023 671442396 735105075 873481188 436645310 893118450 203814095 855901091 638222172 955044717 777484316 968085423 795963338 915937250 61087806 848987400 256896974 886377518 94227428 248883726 683303130 781208939 842134472 967528717 298855743 560467718 786018210 900194908 898694877 952356128 567434407 611278276 191120970 522480889 766976701 976075736 807265891 896435124 203477220 910753173 91950798 213953886 204191068 381591657 698373170 874855792 231748809 426715707 925897733 932221961 414870180 834713372 701317492 871412621 121132735 655946345 836328670 876789060 570329398 976041244 617772032 980476895 939486545 955244184 745141335 748160230 381799220 715400330 167180434 660230524 774576295 796223054 740563868 865124451 767863116 811304342 971977116 985530926 154842581 427570477 485712539 710364361 964473689 974789116 581374426 970006286 492266240 858901977 19137326 652272031 970004991 997748405 631657483 990723672 474095074 606824701 774932003 859671751 311847979 988446720 416086794 842357225 850590096 930308383 496969095 662510164 297662680 427967469 638974277 751218534 646680093 666570160 918189892 930038141 894763624 919158005 635687299 867581961 838981876 916771255 14529651 493734947 449541369 686344110 786813058 869730972 73506149 370329913 228632014 954894251 956794422 988710009 718304274 777617622 148771529 216949545 608101602 721768351 603900270 945218944 8533342 562746248 620199744 683745048 376710961 887108414 786426862 951547792 993529776 995919515 348391913 875639198 789431618 854112416 202240970 240544664 979996573 993877341 282279690 538988408 393307880 834063261 650040073 658359498 29693757 88609418 498535048 702093472 428572852 773286899 854836736 860317274 514458193 564354092 347200179 854732048 543264848 974112234 731046571 937443069 171873250 901221159 485808195 760402051 305457120 808861352 922814844 986092266 186790901 488445590 752972237 943885801 61890729 85066991 788241719 899426091 766315264 976375906 914585371 976913156 268742649 920685467 786993236 866930956 958926154 976077490 190850624 456495530 253051105 261236272 232322742 558441079 198176547 848140041 778344948 986610959 694950116 832149654 853849310 873302991 351003764 950481904 915306679 945899516 40137635 832497626 298582730 835507370 199462370 994181305 808340248 969856188 102789016 238366675 850313624 922910610 827702573 860382377 834318256 839045609 627327234 955771368 697501924 837996540 47371005 56459779 714960043 765961789 212972976 255685404 458949840 770519473 693316129 717609211 37792243 910867004 505770185 714498603 902274867 957666960 163167036 224541409 491260244 660126279 293840590 740666720 561838925 647642882 117665638 808482414 315608130 391558513 695122211 843778655 836489719 989552496 180095738 365820853 175897747 447875472 358799000 954395001 141139483 163791697 978805505 982700667 223533017 488398385 664307306 871094824 539691341 646552814 147938075 560062651 330526765 829839205 731795530 978670602 58724246 737200395 761698719 962855828 225906602 266864484 424916629 978227218 701412372 890518496 162462568 484676319 209981802 332606664 26995125 117320283 42405093 73545780 397291634 438951498 135066804 186697205 841652720 968895155 697148673 848380875 396293237 929951480 32108106 70392642 246552752 565649998 54081214 168925209 28479041 365870651 552140608 754275412 973402719 982523503 690076359 927208675 973112257 975122754 958286620 994417975 663366116 896553186 260174514 770821768 734126031 859445324 329755365 501871277 786568914 994596976 25764562 308628614 356235534 416643179 119008723 257285260 244951095 867689747 712943422 850362399 950680516 964509127 678377082 679241518 364319436 785855736 915183346 941868572 276775146 617823751 947614380 967634747 608276829 888277051 51950326 849317221 826599182 912743751 803381121 909780262 345552755 836521791 318161032 885161922 724793360 765824730 255630301 479965399 850871785 914233582 320737795 544892837 482262564 538136268 717339146 863236114 936197954 944109477 274188844 701647006 861426244 915809255 606188144 785924844 856584040 910870091 91705740 936385066 95543589 255962300 862231231 947971049 476209490 546719459 660403791 676057317 469524311 492365402 152597428 406954203 616129259 972305081 819609705 901697593 588899518 862915686 574989677 812045367 576546284 932891383 910530382 971927504 761798741 887852007 809823365 845597022 102657641 808561922 266484985 274448687 612602976 957929659 699347146 888535905 797786666 815794163 325502840 629056856 231372325 395341335 847850917 884074054 847067294 871997234 380558531 415225915 651535669 796793173 537458158 802888246 142424369 963797302 405131784 898408829 789832399 812582815 616708289 765077011 5495203 999306508 46831079 559367639 153909312 924061144 347517926 793070640 584114237 699482651 601639694 906800939 776854588 874710209 126235049 616813241 458582642 675728134 470571677 915416138 665953586 963506684 91769596 313894136 647545309 719779639 233082752 771833234 250184272 955019449 548097177 587013335 370161904 751286906 187787384 606440831 547519811 993842923 555188768 680234053 11704097 437864297 220915271 593987243 873891251 990233764 477879201 953610911 459833104 486105755 627551158 923009128 193670514 445693608 883025876 992925887 429284075 843335124 256224660 992451425 775721154 888637230 94695087 778516296 608948443 865378607 924574571 953897769 961128292 989188985 265266639 318912881 909178675 963089668 600670051 935355721 102602028 912723538 970759734 971714385 849955221 972537194 729058582 797247035 354107105 397272448 207427119 626600606 808135220 856771680 614585438 799450374 658631763 872668951 194930189 781944538 492394047 826810030 600223864 806957287 365526088 393290594 144401906 768079965 710060958 947790928 555594236 993658636 132380467 433741772 640757319 913872624 727448506 929709284 873044202 926360199 760147306 911433721 421286249 711359724 70537808 405690083 577448393 786214374 80389686 791562855 316701497 906330465 128210156 546417641 627138186 754428300 186926829 376252166 913038303 950702586 60180517 79784102 548331317 550092942 4623635 603470553 132547253 610247226 272965873 494812877 769267957 928586616 238240313 314817252 755661892 809325863 339905010 846747612 702063511 932505709 243120013 916119511 351051974 593884859 100314212 451158711 350663505 457745856 168067814 536442147 632924531 640639150 892511986 908305432 334650532 595487328 792205729 905882409 175900957 429062252 293509632 426440459 696501540 699978112 263173010 583078895 201911332 967520030 825088633 842214433 858324156 878195748 558217837 839321049 179611161 707208418 766559632 946896417 832865552 920230101 77105695 564838023 612587963 764037811 389397699 476123908 309646393 926276197 142792645 602401404 218187486 287312642 508034267 867178993 289694555 310107624 604925004 789544127 734422336 968451508 518539288 876674681 352231550 913821009 465653260 708282085 631249711 741082612 916001150 949313240 978224824 994722044 612565350 738059594 662794394 804160263 985984183 990488910 333953016 929606615 569959744 986194233 532259482 617485846 359409849 442523920 856877237 908724323 26444905 196279692 121054987 970284039 83790936 976401887 719103709 907184245 475907107 793188069 344781212 386656852 229827134 766493630 394379108 795336255 591530896 922435976 521497611 757040883 28796944 840797406 861171746 986626148 970543886 983723155 64426244 180530097 171018743 440124417 69953841 950152933 150777675 297555600 379829769 771704479 2647584 917069336 249326477 635687905 39420708 510121338 338098569 652608454 949824026 974082278 932679084 981374638 269010511 874251420 287832275 786486816 76147772 386811269 441790228 784112326 715467582 855803634 479867165 783318336 709917 786790786 284710352 842420203 357904778 686948323 424278652 630527531 333380338 532188892 8778292 917307424 82429160 878382459 106603128 486054430 832093726 937548187 503541439 840995203 710419527 820144511 932818576 960850751 578824187 935100783 729973823 966816487 836710989 886482721 873034428 988052299 212723364 303489895 485050225 578639733 805777183 906093373 214252193 437302538 311233355 673349352 333488534 930398631 767688820 928379041 607921588 899401288 832830003 905865583 876041443 954090573 641590296 771258285 6556239 247913104 170114974 238335267 915137247 949902942 533816403 779482728 312063561 406379402 511023465 898075175 949537979 953614121 168576891 215006702 671690514 719738924 803368135 903779915 169002099 371815255 365548380 616475565 944927595 958128323 161494944 495780779 864784605 941705004 87736519 932820145 102075423 340729742 798823837 984732693 999944127 999971995 433301773 911378938 390826725 557984666 55094725 305655077 816274666 859570953 398078915 675894453 508361219 898003310 989824609 992394996 470303105 744540666 72899939 475550460 436963881 685721593 159510238 657007820 742147497 884934607 131364840 535592215 267980978 300054358 398476607 874831623 200872985 951248756 524385400 798555778 564020084 945986554 351780343 794096018 194642581 765653464 385578234 503578367 253357474 838942763 858878013 984110916 316666246 770223126 819512737 978512187 129884485 736100995 190227699 300252525 841291700 976844023 132058271 534738568 878175404 946745584 71363156 230338385 473876860 722452786 760952549 902893014 78475195 376089812 587770802 666484092 462228153 813323941 378505963 670393727 450190634 546622363 793768667 825615179 632807371 805549787 700944386 874201773 39771575 691680817 878793474 961545333 56703159 617105139 192078623 592725279 716716983 905615794 244489005 959342437 379449720 420142361 28314652 102086812 458614123 923407023 724696709 744827846 506320366 795519548 35003826 494010223 826859988 848661829 617189125 742232929 954236870 962935125 641416068 661541159 702581182 975868078 430714647 620500191 239646466 447158087 142085142 759149615 137096393 431846224 130968096 819002629 241318552 879139711 847385234 953474162 138617030 570638297 348931690 700818099 753209360 990929607 93229539 401641926 589006132 883888250 541981916 818148374 430997183 676636612 913956451 984062317 672287365 812605552 39386844 170525490 900072328 994763207 351546715 895660244 662089405 829523823 291257100 982099456 287763041 857201051 53903601 620163209 748793940 850254100 975960833 976400506 129093031 369984228 538454175 950194942 321840784 612296742 279315893 381973019 231728372 701681465 544154428 859629189 89033874 588269264 918168856 983359735 206542246 683581825 285632978 953729019 683727307 918127575 381245644 620060624 118340712 202207128 167669726 348946333 856182068 967090704 809377868 999770428 750148893 904611165 218222381 908323973 674013503 754024275 277740040 536425583 19536142 484316481 910431775 966695242 534524859 944742621 697336940 827519536 679533061 700581257 5139806 23468423 700977359 946148855 819416293 930491539 880752045 950007580 150162888 489379535 878350259 934431817 338715322 751986032 104483066 342762762 570288752 619237916 188572202 302974926 550434080 742543508 399558621 749312849 237948781 315220417 67332327 731274269 108179901 891633672 74394635 124359426 373101101 840121531 291639090 726319576 627994305 958489408 43689890 556408829 65840509 616002611 465584395 814344054 943796768 980873237 72411242 452188460 729545096 843741333 35742645 917633488 712097852 921006614 751164790 771564288 30818757 272362721 711106996 887781899 645370118 874912314 943838226 968952681 93629889 555757067 792840977 795021881 324686167 476735075 680687005 764623888 859997140 937360906 443367868 799799418 372721650 644798051 934425426 972996339 867870258 895285628 811856082 968961621 719609562 975866391 653954722 912548850 420081443 938752857 111111376 943109760 955242202 989875531 970819619 996519091 135803871 882045316 307928603 358747959 817840650 880729272 263268290 631564109 966312088 967221478 114785112 476549304 849453570 944539112 969208070 985478965 110492950 926775291 103821603 195509664 802057984 815115264 474294877 480178661 964053381 970687734 288262707 300933081 57475732 571962149 346606228 631818731 974007981 992852878 633464155 893588499 707670461 784460543 395740808 806527692 638660572 793293759 187124311 279869195 239811253 460446340 825001963 961306108 774781366 945882143 781247991 807082199 596360686 835076575 583399878 781583646 75981543 817156598 18446003 640182223 215929412 366813945 394735543 731334539 109335891 125115924 160530358 596483452 891589115 956920301 302604174 546678586 8961975 146489682 121654738 824460781 24970412 617637225 51994782 914944340 56968936 392596615 827104679 976487301 703860581 896472190 460577759 540597381 63406975 155502234 233152357 373362212 454974487 473861565 424445874 566681936 949150645 954256964 613637541 623599072 658017963 942290061 664611766 952369896 386977322 468318540 197589000 518842197 45770749 265618052 861683650 941333686 341877960 359718262 459616658 670652771 401106306 859819174 391680910 603606391 61423078 865361259 803858748 856167109 649730397 838442506 994516472 996738741 549316847 775111985 294971949 755382606 384292531 390396453 785107870 995629417 112406633 596854398 793478338 930434877 405287127 544990718 546152983 711595697 391953021 481903497 845861290 893908997 345126178 547061730 658947752 904936413 212277511 609716321 478051293 853275248 341839940 422527735 219364379 996108503 538612350 893784794 615530848 689665514 592330261 632866248 516550322 873483139 283831941 866541249 628409294 745863821 260879529 791657744 702187768 903926148 722400725 912680539 456259296 595732269 69500859 808818206 671743469 793138535 984932288 995266053 792791828 834165438 121033160 945273887 362228228 679308630 653384158 730427518 154028797 838093187 532616143 554262996 473746472 552872782 727936378 771954148 710071366 917092731 743048767 751939897 302202683 810642713 533829367 801274634 181916606 253179972 567869967 972726958 845319859 882327377 259593060 783026940 318569287 914061478 943892458 955443011 964016358 992442386 94843285 982921604 564549157 751343208 424283688 944625730 821043155 896156422 137396207 746656967 283262342 810334637 813029621 983455001 211697547 649654621 106809023 974844622 341132741 872497595 481844496 967149291 672581305 747373319 813301306 842441718 692199061 778480919 479032408 737381646 783155382 830766063 557830934 812620529 135728328 343439269 246951457 861226904 167621213 858578813 113579840 793623601 189978315 980967986 922998800 962289004 105277 645200503 853011358 977303895 739106314 754889885 782592111 822146382 872022819 874626861 113646585 410077345 18359103 651420151 160536236 887156757 654472623 901685878 983496945 996183269 172196725 462908651 596477922 871215921 684282766 899805969 242661049 757293970 758207613 981189945 242254034 420944325 32415477 782472697 34956214 50511969 335205525 741739669 755369387 954330348 165819146 213459807 273762079 431248490 151727310 576144325 189242849 902307140 927050753 931686583 894152516 939048755 919111186 927935558 429031271 627029844 255184072 560788500 192625099 281263092 264465400 527072499 642822785 700259822 722797713 821180872 843588895 921327506 366919745 382370353 36082848 272793180 260818358 291339512 690929818 966507489 848727866 966314757 529174956 609848896 752198517 901080719 647768064 812305818 768992056 829235803 655515969 954881584 183522012 661132840 199111541 435780975 423848185 862673480 458973192 677902401 279593804 930165576 81285724 179814135 922182535 978280761 549546904 560105190 973436738 976691255 664301710 878702792 473231055 688279053 82633266 111263324 574316985 802460292 993582842 999961961 469609811 582615311 857127357 971687076 395084501 621639428 144037111 213945977 820629485 877969284 806199687 986769990 454993324 697448764 95929556 637469427 44287464 88180274 606612775 687152447 437550433 463581494 222120855 856409017 723835229 731302843 57912475 66248217 486335829 569247907 636780132 695359553 60582445 831663600 163088932 661699408 845428891 892489976 18109987 49164439 537102309 562258749 947284623 992515696 14691908 810817929 838704545 995507759 318842972 605132828 519286902 739377333 495750358 657838527 977774637 999126325 49802960 784497605 947394464 978546093 727082021 816145354 947844548 953232754 859734337 904843923 898305322 914493973 656358369 765953115 344696962 560737229 258554111 898177850 753017899 847346844 301900475 393597515 684392167 975432092 993674078 996359250 126119833 406120822 793206830 864001701 689574624 883189220 310455624 566416107 943195110 970754266 112650518 197750203 300361561 715505801 319664838 627112320 989947793 992565919 789578172 810496664 610484856 877059933 463888972 475958330 107406320 309527574 162341810 366316294 987944814 995441370 785209280 804895967 789945859 854767825 287627209 554108841 395918732 761973781 94911186 328381952 890135479 897536782 877906389 949434111 105291632 701625585 366631958 686772520 473119631 789655237 853054874 880947725 36932293 627475338 254806568 260043194 463252216 509745330 69245016 754281621 510135800 714779207 507266088 955563307 710034452 737708754 414864143 459783180 986553388 990069109 906183940 918484051 260820927 721779209 477498220 626188924 797384778 980049122 561541827 800415710 233010782 890343955 688375808 790743448 692330399 705598607 921898995 944287718 494906477 687503695 91820026 596884692 679840480 856010304 288120875 532902646 39687000 808721273 775423689 961774942 969222457 986723950 1980870 875565295 110943427 353056122 900490627 966206473 150732642 688210005 57716229 872880581 158716175 571202227 683765230 784436335 797296894 847322924 877411181 929936782 401243330 642707166 25954443 129125377 509905563 727433242 678838316 881014447 38958315 502737323 440280572 491000531 843785418 878522670 109628886 660238196 149880486 988599830 357390757 687071435 350119682 993475574 977570287 985134558 197176775 347285073 75560200 465418035 695133461 896993618 95649080 629126679 754445111 973204442 531093088 853437306 697971618 872165548 124384506 596449552 298305222 912299772 424235133 777716789 804880657 855946567 543564820 956138234 114560940 723549866 325057405 693413626 771797210 895113326 289144912 719870123 37572389 452017850 446681094 622173646 602172071 996760534 469306562 833416140 864759379 884994077 56411499 73192574 951066105 999543355 693967320 916738306 870859451 996775577 813816614 912945566 657564342 834654555 459560405 886047257 777842582 961711324 426184587 645924151 390016883 847771885 661534609 887697462 483186855 919396220 251406593 490412831 7283334 956584880 775071616 780130612 953831052 989020021 481111465 612581453 134596682 650793773 493627172 779749972 582628619 948714260 299324957 706503306 262544365 406658186 172782089 560823701 713680504 793073920 331779077 729511438 114041445 317155119 771044092 843223378 77830493 738325865 570191478 685470981 964550200 984694272 847926534 975878816 603860454 803939793 379963197 480563380 902146512 921721583 64702246 491727530 181005720 683425282 876566881 886866241 909271904 933808794 495556762 749370587 996849000 998885499 378058157 636541505 106511060 946486989 130703390 531699749 462147828 667141664 878550098 970952064 718020622 744648853 102791435 951486153 369668399 900755825 164968329 867020238 917448584 943434412 749671153 915222685 710935721 715294607 609440213 918607347 969693216 975157784 246502564 764943065 880236575 993186332 931719535 955281191 577369824 639569515 63992205 562498820 688117897 907697557 196799277 455240732 356979839 937350775 487060562 883624719 444180144 662066630 566063328 928105920 950155930 962440174 845734327 880368362 55506677 210037163 690665164 771803125 978216023 991858421 21255847 743888173 579397947 740190979 811419092 973534199 711283834 984275752 476210895 772196200 740302391 768445118 653850908 785083670 163636203 979410883 73001147 311542359 681951627 832008505 477339089 759839381 527977688 715397316 979079777 997569524 794210717 873328950 236612749 340862671 72810573 144835029 937522605 976548491 821680640 922137130 200605484 225207786 360872711 716201785 378568641 632379713 722215776 765238167 497202777 933212110 801502200 941187463 59783047 427383840 394651434 640893711 141016475 993209433 61413020 163227346 990285779 997134478 667694777 848339068 514441464 980386204 232272695 619960277 985844008 996101696 902414658 970878823 637596046 954320614 572007742 880925578 755504287 954303283 474570059 651028924 190453626 353536428 227695451 672536137 286525174 394725757 667958390 966693354 340867748 841365288 734127319 980031414 146033701 343399897 418768218 583685978 381797969 931715360 176835871 595059895 850636183 893199437 139282933 248011179 749015200 863961214 960657237 970515114 574134445 679155069 600392388 920091765 55149840 371255614 743919481 817431362 522435851 819076941 388400469 465210341 404718792 891944053 260950999 640898264 627676512 985643732 750495689 904771810 709520395 794535724 994511622 996655663 21896510 870155776 589127099 947812945 664989154 816973193 484842052 957782264 889578230 921467819 228536620 666558763 741684210 811960090 316545021 948409351 737901553 741781574 859615119 962230970 568046099 624911150 911047094 944800923 316844175 686062390 434871386 781125234 639630587 881115930 494019990 673613856 660312902 773852491 883542239 911694863 251997494 846093712 71129045 155148168 245935287 698459797 58386632 186382882 935021019 948091925 666896961 739810854 944951079 959235818 998917254 999197014 163646091 761888716 78103063 621127684 320304247 539577503 498711639 776912854 974630870 980618476 365514336 809853407 557178002 946165255 726483207 823525875 750541158 824988712 128461452 564598900 80230823 651831639 339284026 627105313 995178575 997205064 407427010 592734450 159698656 384206607 651096977 934798048 911489069 926354318 14703238 330402440 211577072 410620269 255140986 829734105 56543677 541737915 45948132 670740349 855390680 922059622 560492318 942689359 238798735 769572582 659702608 754747220 189024616 752930308 296135118 621723993 734979575 891610600 319828462 805383859 766669039 826240548 106157388 697676741 873461880 911636058 841274691 876651636 609586026 800678373 891409313 936335819 764427144 841616737 286468695 718206423 478662335 653793532 811339787 863834671 299312828 643717801 882682173 885293198 526877064 564855299 156050365 213594711 7575159 518007403 517315626 774312175 145378417 766553781 917037414 936937552 300895764 954731095 767800501 818208629 743992693 810713816 350851653 608826216 512612077 836723331 366778923 787882154 631935534 912756271 371741384 645900627 779122008 845882494 407014369 952272747 55937265 222199562 845456990 895671931 946577218 973921067 478844526 911324507 80332502 676863891 935996737 940146204 722400136 930317646 657407084 973858810 232975455 647367753 81398795 905937115 697023186 891691045 865687589 935099117 69303032 555153917 524541672 690413312 821463293 933652286 858959385 937725552 102589663 328598091 619421671 709838754 302537919 757560112 574819942 583275183 859349328 964444420 659185787 711884075 866174735 866733153 416249776 672126215 838006429 978251852 328528135 397351100 429685482 761810857 761803340 958205486 562061035 877947327 205736486 341043692 353193200 793342166 818158339 891961244 899201651 958303093 213778104 824620942 956403314 991963841 54269864 892426068 170221928 786131860 173980006 595125883 968304378 969871672 933792136 958368743 429658450 591876786 689363280 787643997 285903392 730287692 857662573 875499938 435524078 540772814 255572290 672238896 773778664 774271026 189112390 371139188 731556894 906733722 354250288 445042678 617725238 796201593 115526877 963881043 385080387 910507682 293944413 626053700 263273083 458627461 722524153 762332261 367439892 427657449 379543054 853278052 208719521 334271337 532590586 588130077 502154571 907442916 767116179 787831130 527062470 954203425 895748561 933803447 406401936 940802429 945976970 961823913 969515424 995770759 420522493 552480718 869139541 870885711 875390657 958391862 300883238 935296269 153868084 771322752 428975082 928968697 161274794 575582877 159439207 457910426 237938071 608611409 123054944 688518328 452399497 986369233 736311682 985810827 441724367 886147407 530092030 702694006 281516540 648001043 512240134 584498896 691743664 695012432 553939978 693470386 631187722 695055776 361450451 500756436 887608005 977428742 223407150 914197361 775784211 804821076 450675114 959271873 792707341 996455671 903446664 992926028 746384040 826411143 761607461 768120400 3834066 285458528 730954203 943823132 83738755 922242310 690509643 785913057 771886059 812919344 287590399 378865404 718972473 815650707 980610503 997419658 758168801 950920601 992656875 993898481 59179101 568735614 728490333 956991158 762572992 847529831 267802016 392783896 783079843 896324793 743996928 757600734 998941083 999617911 363975480 891612727 120680266 179099344 23970500 207555204 369442562 740883764 947757276 971954638 733207803 748835651 169561675 332432634 801147896 979478703 882770835 929032131 500928844 937817146 703018074 832002327 885504144 886190655 300379111 301305611 987648022 997680549 301043840 466333250 878883890 938429977 404742351 675572785 569129552 881149163 868259221 935848352 486128334 519014555 813570784 845044670 927110069 940261634 902523216 946702975 446327523 634509397 248135560 996570494 995868417 997639180 761371729 892626725 644668192 931774426 984605495 988281164 233106487 828511728 478908123 667164218 494869435 705936800 131491260 428855226 27871164 720745456 496559900 690677221 582021342 671251474 656572661 817976758 80692258 558365715 391998483 549447056 169499551 589786397 602253675 625369032 96339731 922196862 970386505 995320830 206204967 875497797 99588557 614607001 464567519 941238490 324903818 364772169 263590287 992367441 474927103 585146000 260445127 603757244 16060538 390895051 433726265 497990354 227029886 665594009 890966536 927074912 299513628 863465053 975819806 988971937 193847578 872558681 888301362 990678154 527458833 925621767 990929545 995268977 702399526 936410842 485081339 488149844 586825706 871455947 783452843 815177021 106397246 195339618 286842853 920622372 198701487 540243834 886610581 947696976 345180999 593909477 491274624 698696443 72165220 332319890 34443995 958634120 18124531 378847234 767116569 873744355 610725181 836857337 326829407 409867852 222909301 720509949 755755605 862786156 130239491 466150550 213986518 641669748 230555664 469662923 952937236 983793197 776383443 792071916 62356763 338928079 401621412 555830169 362219083 641642407 834075799 978064680 269708202 336212103 939560963 946747263 109589731 949802749 360471371 692803731 716920770 724236464 560478766 768382156 90202827 476412315 418939244 661088378 760396309 794023776 450057260 874203809 383659141 499141737 589833057 670736218 710291097 942062335 361591670 919311273 434299486 549107577 597545085 742864680 545348241 666884795 228630297 545749252 627334730 890744948 781591289 904023119 918811514 947259560 284359929 883238270 299142611 556505156 809948392 872876635 733615380 791182244 524778165 784548457 214380349 242719623 745257724 807920142 152070477 355076138 132478034 425926520 516378538 928595363 422675492 985975298 5832374 856778991 248409621 437404797 424130657 940118753 183630494 481873601 473932293 793009745 718489195 857096436 387703715 755833442 452496810 799675564 416384509 990010034 849759850 988576222 798149011 857278788 140732092 767132932 790579633 862318353 440757793 940415133 871173679 938441033 409928525 537330647 768781076 916882823 134177356 308788441 708166432 739710421 649140370 774982917 284088095 387119962 320246500 777082744 799694855 991737473 232631225 729140112 537303284 742870013 603746623 931915654 16711404 757139197 508043865 854202747 827698447 906083904 678611405 740874702 778768762 960368657 832305641 849303004 990311208 994406904 521915600 947957344 800045687 873974512 710627670 789348462 675022246 811752171 931715830 979918718 702260348 793024668 264682375 666768456 232438613 264760300 436330220 951361170 239106600 760590861 534746835 803097605 90669143 979984147 858176675 972889153 905354194 931086541 861674611 908701654 291159773 447892889 452230598 961946787 918614335 950093552 904105632 914192852 224266726 523535755 466030081 708393902 672025895 682296931 140484986 578414077 269268486 846216722 825054743 925795881 313658629 370481388 977339344 987990821 297910246 329845123 560574560 868282417 548772353 724442294 390586127 412764030 489206728 697469431 328999194 590139611 167435798 181559480 799935246 818357660 500698654 998180254 928705463 929093616 207889748 923735577 556969098 774457769 843784003 856574857 172660347 891972879 691786932 693106894 941229895 970041566 651161177 830447569 387727457 540679831 605360679 809153065 296776204 840125368 514649612 834564828 55071561 365133895 399888873 577807302 415368533 986167178 937446223 942542261 888786448 911521930 104137738 619754456 747589261 758028094 877111337 970294511 700183661 931997503 119811902 752564743 269435430 566601142 792117921 930876128 480716478 922323385 516105846 780669030 331544388 524516597 101461684 315455519 118664560 403283906 387043131 857965470 860686960 894855300 403548516 739325836 852867286 965654617 433807781 914359172 433344849 918959076 332611867 399980810 174019927 766919435 853018195 882923479 987085808 989912652 202552943 772415680 500186490 790631100 852413439 892323843 102913512 123403237 356917843 482286475 108928897 450597235 665837820 786471006 820222625 843533295 791337849 827413673 7664218 327280871 259005012 890541080 402283299 697364707 635643509 886594798 38095311 947440584 143539113 206900803 322323260 917992810 211159030 675208953 821825494 946075797 202980186 877121790 455393511 775886780 812480194 940457485 65009235 88828613 258796298 532636918 961829328 972600575 345782087 552120615 728841970 823616302 906236665 984175286 2269539 330933824 643491346 890982693 983237072 985822224 518512382 600783963 357047766 954248084 760106377 781278672 413272012 879929895 879609353 924845466 932165835 999802236 885557911 890593285 499839881 993924558 368484361 762415676 493191204 719511740 949137682 953602727 764772910 971742019 597193424 601921288 312988964 879941074 49010872 792389891 501462572 922604478 673181910 941197827 812523578 819601206 319085376 747556225 525439475 600492730 560143463 758275314 411416795 856294752 358307516 706129131 180247807 513439052 458008782 891901556 105694041 880631112 701701027 758435712 488744380 784174788 535497895 740721208 317692063 346316598 806844786 838567638 632677898 802643085 972992117 989292023 957619109 976193506 461716328 854139466 492700724 742959807 644478420 948440766 850431781 974884510 213243801 522917683 696093302 827809228 215734988 278624458 995644999 997808996 95439694 617010819 231338440 985472511 800838712 850110000 351796553 927323835 293980241 895314435 148464255 307940207 846707310 949728265 842939682 892513994 465188700 951002710 368016258 794517491 796065934 819178677 497794161 654888900 130996221 214171372 268258958 433833012 867662127 875121048 912378107 971317089 827549884 837583810 807929735 877820995 310078254 660211112 722541571 746523591 488218080 827243462 936191118 941336296 817454704 848745818 565909665 831063937 93168000 372306565 815743478 882379298 312448941 574715430 15802035 941968518 567506423 834553489 702375602 791049561 744652816 869463869 807646896 809810153 102924186 670333975 78793640 208874857 563391598 735649309 549663882 949820707 200767315 371084663 681662757 982037261 174508768 609498577 232394290 470565051 615765226 842260507 180092281 387172583 687323434 981878763 899333535 937752960 621584902 988474121 575870468 693377098 564968206 600594011 84694234 819548434 489276482 679960337 70072652 303739981 169210698 338690520 289463603 926163766 320803960 680272785 395503238 491117197 496932963 699243835 609138313 740549654 112549252 147839357 258766962 318428343 864665963 885912767 528842162 559280080 614810084 938960601 161698777 899272212 942331381 962513825 448496027 854294043 901226042 980770882 497802896 680443288 157001088 924201218 384608374 837130649 383405383 662737878 357131704 375863072 398975903 592956416 734647698 756447125 552396490 974275917 780185598 986436684 737808697 970204421 263225789 444012753 705998789 795406133 316315495 727647096 830675391 976791413 158234916 306160649 561334809 747841285 653651085 921302800 663262126 797473418 854660955 884836818 752064710 824534852 727173332 767192207 360985589 452732598 164734572 422346178 807448983 810369387 38683418 658201257 218340684 714842683 915054568 930925990 530270550 993910466 923871047 982217362 36560545 433628537 356695374 463025968 378820227 383334934 489227847 675339960 843397686 864546753 856153791 961378853 313192623 928195057 124913307 885144829 249811808 748390958 58113666 78411945 503180799 696230753 564416493 708412609 95458976 350128933 297198067 801461092 287867191 301069482 228698320 980992436 49274797 921744079 172480494 782369740 197098564 855104977 930350491 995199443 423727338 785697867 797456412 935973679 921818982 943185315 224847396 804078867 154368639 529081983 456552056 807516856 129583701 840388135 635373688 817703014 262827083 826846979 838361845 963770931 848661648 977317634 76785782 617983139 548471812 914390771 308337169 624379437 753484001 852335275 558639567 607016471 879802715 897389806 652787909 823792554 880288417 982021799 148015005 200454616 211505295 836650302 840830304 961688998 420267276 633920738 532793005 753508565 993221920 995203734 341490433 384333033 959209479 988959329 220948237 294246818 937084190 987975238 463838973 597247945 283021394 691587839 213999160 639332646 970079899 971576206 888403135 999239413 30575318 990215701 586794399 623536992 824369368 861599663 320586858 415656869 236138594 461276008 161789464 618598904 779617331 884374972 489764016 639257763 875612232 901135070 46513861 291748573 177864862 529890153 978377700 997226243 42545960 376000496 175451792 544970885 902621090 978019538 375773522 681881178 425808167 622038591 734321698 821398773 785994459 944805820 658019766 732415712 657964323 831213983 373343269 463797743 325513594 546813275 563199504 757279871 867199347 992363020 655197298 772807617 693243587 714830524 635457608 957269517 725931951 821007391 524017198 888777948 456655551 543477797 988594272 997811798 902589116 973561992 666252771 783143762 141223859 534381671 628214779 776353902 881483402 930906114 359529925 690603402 541660944 601177128 133687127 200612980 729167287 810020538 149341339 288828781 933827234 942005532 229038400 493609442 603057885 635974623 403373590 875242873 418094155 688606082 341316755 768728721 485204292 968070069 262237278 729250584 934943419 945520108 259178123 519249993 264683402 569729359 717744585 826384413 421170838 519430680 86955600 536176785 341698632 522088834 228213992 672596441 617048084 967382433 562555771 879222112 314614627 442276663 524595902 634484909 884036853 949340558 593767735 749691138 595162774 855091908 362569892 749851239 434927357 793629061 280344863 895377261 108404791 905683905 149372235 277127381 678406208 776963484 272685671 967826601 195921198 377386696 229626471 509564735 229062321 774455428 810216576 833370748 861553080 907063219 694733025 851270360 652251544 748959045 759051072 966000508 722498374 791112149 630677372 818566446 653192652 718356437 934286870 950310956 54004960 876271511 570348071 929787161 143163653 227179842 521057548 927903729 964043503 967526090 384639206 792707797 335515161 441367112 810866720 903875129 270033476 711505521 185162176 283663419 344041591 787736725 333962922 423475795 376871122 797973204 808408727 961811165 898885556 939130184 254078891 517922150 185365252 324278364 180255753 409871881 817882475 966695246 145538695 170395621 473036135 881245508 735759 321495010 977520419 999361714 543401250 607976799 346892727 829626676 899741886 924279583 711379482 797202186 966692658 980879127 129327058 879363309 853182973 967914968 605244566 941571195 981792024 993165082 89419717 221681113 396448669 663600799 20214836 721555092 534095730 666128913 270208220 852419374 491289007 562089839 56962012 84614487 572166463 759844469 285926191 313113817 356324152 691878612 593364640 994173753 610339496 663679485 860249180 915413806 760141653 916555380 897382803 992666756 804352915 935774680 51019573 906013975 206846709 632442995 396030705 807414570 836391763 997980664 752936090 854109720 593907901 602785606 332448477 407976578 268747205 398401472 143503924 440394865 919431824 967101581 641199862 904556191 714408060 836472324 114697079 247896103 176059250 511813897 879211178 934278355 7230713 933342341 390563087 498093686 543186338 894360492 317604766 665308010 934508385 935150610 523553122 621093490 962846126 980615124 68222967 958961387 675958342 962125844 735804232 865832893 450028595 622929936 218839738 993731572 898120029 926822435 481444953 965336750 878709395 927363104 756923766 948676806 169389622 318788675 73720738 257735896 329104339 798009128 841445323 960351802 694016141 697944214 259938262 590728994 721931198 843504714 122332810 611530911 817245712 903115202 598654377 937122359 826354596 970552414 805250952 895919573 902982800 971260630 499006986 697385512 756489209 789129900 131612931 352563205 103981680 541158122 561621391 633733019 272809234 937594722 158672249 501784917 377838377 706082004 276419841 820368344 229861584 752266407 198550727 653866618 791682980 872810325 611876962 715364666 258296217 264395476 769462277 978324314 717877123 784335165 594156377 848150312 738567138 915802346 318177256 318622746 241767827 498706422 521891494 738790214 524747161 661163012 692631354 741041041 196701444 224440355 114835758 837836455 409324160 963053318 746244740 870694649 325695417 810463694 843769501 888511519 241095621 909015918 909124114 943989070 948011136 973837712 516346749 660515747 604232201 783597267 839375650 897752266 293630821 781387993 745324609 905521026 466802369 941514711 88326605 217891008 928241660 965314703 442245699 831693883 729665514 817829607 556862168 800260767 860891504 936069523 382905793 385963720 689138721 963531178 918649536 924539940 581559245 646956156 41684484 149760609 194060923 248397267 941055261 974989437 555981079 645668679 364615783 742692144 406212014 504412061 168186814 675076214 550936149 956811527 722620897 780014800 48729533 987022287 344346190 908520696 680836289 734344505 885466286 907878848 371532456 928888106 732327653 738236466 140473257 588365979 653597439 750512347 309645832 783905111 625584027 696169630 238111412 526332227 914003085 927827924 506250048 863876229 437334924 972491554 888906426 920481587 753115192 975592371 872733512 899463539 965047379 971804163 724635891 817049184 997809250 998351378 93212236 720920326 884745942 971719474 753869283 946916014 975740776 997841814 238523070 944495410 694843534 925277826 542543162 886002088 238704718 836191701 802244028 963439634 500349199 652958187 827259928 974625200 462903939 728307710 267530585 793417452 883720231 980479024 446865713 992799451 982465188 991591611 415051720 706005702 163371440 959243616 710258094 841415630 687024440 997045420 619394386 708429814 103455913 924942534 144359376 171228130 710628213 924646352 526830786 900191103 906745508 962197454 620014527 665061344 974560416 996187718 117837621 476186805 63104639 979785145 246529324 820550514 563936140 733055697 124453571 383798810 619109813 983658226 556254307 661080431 946491216 955250281 598422513 604562164 908567258 947410081 278598342 995414685 533787782 863853784 741143147 956902571 508239422 976233085 748635278 770159039 868515329 929294067 18189183 820499809 607056231 657605269 570304002 722017765 960689343 988259679 346673784 611723617 696808976 913375560 606743081 698731623 280647351 597304626 42657913 804629873 601922794 907482658 578795516 761889891 296375332 733236880 648268694 899301503 187619066 597027147 951797715 956249274 258067722 868855925 731621868 857338781 323060942 419291230 370386754 721387296 902230971 996430377 809499100 974134773 368367918 533150503 178707239 729864075 582902948 639568070 316095948 732327871 713728813 919471821 954959754 992287569 59111719 885978982 159255963 668242625 537908420 679672819 203370359 275431302 374033987 492033831 242481685 665486165 164106997 707582956 10542719 732900498 265221900 425061280 766064412 791743833 921223291 952637717 755546966 811966353 737664128 946064908 157639099 410212993 360444458 696379839 589136090 647206982 951907507 987040861 327090874 858003060 798285889 929264909 354391852 385294210 457163899 480214793 418507736 868871705 804800923 890546272 182815432 570319982 53104968 555571047 817295850 945326459 794809348 974495215 573321192 740220229 979885669 994848054 146196027 813525670 649708075 737908095 642184276 889830171 833966036 903908573 960882244 995980449 348051508 772831439 761246438 887707036 577553159 876025173 721864330 722973340 254296843 477425714 742966911 809220336 262440993 717345778 534106033 862130563 593432208 915949537 412294922 663044872 560549577 819264775 553265872 839582708 956849634 980693945 756310536 876367660 549839143 714929650 14599148 730562195 967151492 973770426 332826514 701799887 324561277 932841100 198590698 343541825 116225341 808135157 581050308 686611037 486285518 741608617 323996029 421914183 508027754 529899428 563250038 931628333 860178551 959096944 483551341 937610507 771550068 884800800 811389547 945960830 424667990 949213934 826346747 977336890 940940221 950348407 825999061 840291286 216371017 945512533 699632435 893260827 309020233 887625057 940418162 944845783 403812899 906153787 244364415 729189966 79593766 588372144 709857089 735097477 566359487 849690907 748255786 988180105 872684178 936583691 474361799 556327697 715495623 902786112 338756893 547655870 356288516 472633546 701061106 921357143 933121043 996484376 822156456 893153353 36644024 585848826 495412788 879870328 249300120 795864172 496108451 706530182 914952545 981636097 850902999 890912460 560186801 862284847 517108181 648693718 651034566 738295263 586263183 888524558 116457711 519571322 552566968 951524983 230853029 695207335 421942299 865058058 625438495 994997864 893428457 960517176 502653717 966396379 699650913 875767111 966321075 976558096 161061162 996457989 401508004 722749853 42446868 200099699 607093533 779929497 915902717 963191804 721392123 983052354 426710119 957573944 942472767 976466666 558701673 887475716 13354361 432109907 570900855 944637127 457950796 686745334 419083340 723467835 605233815 872819169 773559512 912743102 817678407 819552330 849173456 920235616 725336167 752378417 527041168 911206522 591477528 758242982 56894799 859950854 779441138 929715296 365367004 776524103 601903330 761432815 195988876 206876756 890982305 991059561 366495254 653324566 251479642 305524575 72858331 317195132 501323925 767628451 877374024 987932754 384102464 991628062 247158546 383522643 664608191 919904584 471107563 836913207 254364079 448974269 471800119 826639203 361708791 698838909 344204870 776412942 903428773 905918385 399880191 809100684 112645979 577023055 842070618 927886957 770673384 838148767 41728910 808165775 141891381 217500071 191641497 733736429 969685726 988104653 318087806 752035225 789207948 842593075 98511517 877888844 6055998 591023912 576977744 657652159 965089785 991155158 14800766 901649219 796582686 874217314 29364382 992454579 513697249 831556721 503853135 926163399 666927254 970096444 982989594 993072715 999678617 999721267 99120997 876485611 788267680 852461648 431680726 736085770 952628814 961352795 278418487 791902097 699405070 928543249 958573830 962993316 993846677 995396887 562086531 606328518 344172453 523403786 715408996 716937154 247227649 988535286 225492390 940139893 727009824 905304136 529887195 638698458 242931249 480689336 884308447 903385947 427756562 729096829 856319096 893780935 948323500 948869855 579263385 664837326 699589764 813964161 66795565 358595751 746973294 923805780 78355123 486366940 531846359 958755614 718951688 906619282 231297627 514087674 135068995 765585583 500642191 690141447 655710801 656263402 209439468 538612240 191825528 991369117 968405543 970423285 923190560 997211497 507220672 669908410 903443442 922216649 392460254 469669311 509087394 845090296 268264804 713181156 168123105 395494820 872168627 957394768 628162311 742622925 579130061 671108109 513759149 756061457 923659084 986931080 599758610 790466233 669530538 991627107 727419388 986923845 711036436 791044573 159164199 280944919 457783246 916731805 51664473 967909672 165844989 757380928 557487315 773538626 890483860 937812295 386694813 474668231 479865314 490573374 420304636 886365635 402798796 960646149 878978984 921411765 950476299 955053870 520223619 791869965 750025769 945834967 869368363 901847016 718883958 982867846 194061614 849722687 680718504 694582181 169869851 434765773 398939524 910491059 392308441 746053593 162244738 675998175 184489342 938674848 117997433 528027124 607848212 679962783 503462419 507808351 956452954 993208800 63008524 544378355 825903641 843299340 753459821 837883844 26316556 65125984 58971853 521001650 778114937 996308880 299445328 304671282 503169172 785594073 388951996 788180551 831367637 875410832 646512222 860988770 201217508 343140507 763382112 848636021 360593986 913519482 992144274 998219002 954485271 969671045 544678366 840869270 401519114 921823162 968077634 996592013 548641808 784615192 471176601 733372254 737580808 857971870 999312922 999564822 969254863 975996377 726681842 942466937 108099260 671864568 932107401 941210193 840898341 889563291 375068990 901085121 337222016 877351004 607981972 712363239 52338591 213396020 38209699 600154410 111050567 113622687 186148458 787058825 992310670 996055315 512949696 763016045 537847566 601337043 54505626 945917677 839613860 868966173 759968897 787643233 52307280 819630326 815875882 917456078 419120447 811160188 268062825 293760893 627791542 769467990 798197281 861962731 596893735 988972483 359917204 514220800 218647609 284876445 530417613 897048128 915804154 983307641 260985278 774508260 806232761 819359632 346942133 576867535 498473272 590955898 694161236 996381390 720994379 899479201 573998085 876636463 759277802 961245348 43317293 302366738 811709887 970147505 501112793 964360002 906341235 925603938 468872640 546524189 43145994 195723900 272494744 407490022 547051822 683707705 346577888 835610901 608194186 866165139 656488150 926387888 982466460 988556386 284176559 695138728 52606185 572329969 801902616 901058230 249329549 572900618 171737925 442194547 114089712 701345117 362796990 999656955 666926440 890269816 206957109 683969084 421976310 653840144 545784202 679268594 193929274 374976774 999259666 999617850 290169786 605144550 887383824 904293915 348173198 658604254 942298408 991214329 801922416 885356318 552738845 651855947 643580413 680049130 510328330 709620977 835360863 886573184 602276185 742150976 9562317 582205833 748016762 757513944 111559671 910964991 805768184 935101297 888575755 939715340 800205394 911513655 353627221 559214579 994532175 997576041 60840681 583759694 668637029 881020613 560952903 651757711 622811658 946926835 544216835 879312240 52782695 142174344 464820219 530620527 358593493 429232688 435852491 890708620 976129412 991973377 851273166 865767066 162464048 748751253 767207175 849586225 629032531 788740882 805423473 951578325 361377027 553199480 293955672 425297694 645891183 694869240 336447678 950636690 397658141 459875034 670133486 900208777 461505270 646669285 351244372 372285308 321009221 430095726 626445576 656400538 330660950 586675163 945763102 960128496 803934262 854485192 123968699 533908834 646579720 920057351 146016948 686468043 742112292 974782361 880263310 887152824 832424451 841479409 193882798 326804363 557294534 740422336 469198628 738033262 290057781 374806917 707167141 751327674 89854144 651202783 74438294 154338049 527319236 954409289 20584664 59579568 96370949 468995173 940434774 996595307 593014925 642419249 191345698 667893695 643195667 655677500 736733306 891100906 19386703 356199396 102413095 121890750 385923652 640148788 849813637 880886447 484009792 621264033 697672562 882863225 762435282 865850465 473777736 677432184 187689138 309398787 855350571 946735877 81771224 713940343 22534286 705183773 30638950 110695459 302946923 675625597 352667671 844731080 862771657 987461070 622430092 710014957 243948816 383156037 906017431 993071765 268335399 502715687 535438218 796322031 660916217 845760975 788826512 789334122 876712605 910005636 481442715 809011371 482220973 646955886 359490007 927650066 972049506 978016105 810728633 973735888 844951954 965778536 787724826 871825573 300774982 321079312 776418882 961057748 645573160 852294076 628003598 755794565 41526120 526684018 559015139 713616010 546442613 548024103 490298340 647836185 783774376 874559449 483381856 644427713 706628802 745159074 399496407 579960569 208944438 942372172 348514980 621321159 123808975 908956860 128239879 502268657 202691369 549624604 708950400 937010017 657183796 813910391 178970700 810067494 952137399 997754494 663887708 792793129 4750773 987423964 568056889 667615512 439683357 610183095 852559767 880987266 535646652 776756136 404663679 585332892 379462535 960732678 546953897 584556241 121336752 784227123 967845036 989543914 429195145 788122736 739325463 744263998 696135606 869490451 234940898 722615164 322389623 650169866 672739990 965090563 118366863 935500325 624615314 737516545 512918198 911284593 93859327 103559955 631464750 856991107 575155460 979220480 74455399 496708474 40505644 281905072 521200509 976095078 182915757 583675187 913666844 913774849 478270692 914071422 450746329 899707994 924778250 967859253 616886205 637114244 201591579 747346660 659323287 911519897 723320967 867795603 126661628 847938435 503442291 637116373 294976457 909511092 247286011 636449170 688105215 812132332 964980130 987631786 755318642 772242979 951926393 990020265 516781491 977842935 609863889 864977405 877659679 931256001 800639647 988574277 949641164 966697832 987939394 994834193 918649568 956067406 555766638 896691498 37428269 887540032 149943866 468335245 757012736 814254723 70570819 423323924 199188665 590688618 67597630 362211522 11351144 874831337 661390118 736419026 605577620 772755820 53069889 195348063 238160659 304262715 594915912 791956338 263569469 349396365 642657222 724121606 285828426 851101232 496546456 678466752 325280733 791005794 142700478 641531475 13678617 741818864 376231078 755111469 578744996 971587563 220619552 298631939 374715965 667087527 494439611 790791040 288433215 559826990 351002993 721415927 884621528 892888166 293357877 921291576 357648827 850486781 974703849 992435579 317969284 318613527 855919745 921906456 7292767 173317265 843844048 930712635 199876500 910962978 400901175 974477407 361292922 548880180 730550044 838953320 771901926 897122138 686867708 940327961 436058418 600639239 871514331 972452143 295670664 804159089 878982241 936991195 706541520 760558221 295298406 737201177 874839645 895071053 184188894 955491762 583987662 797760307 651988422 687203304 592344738 643654088 293517183 906990410 164947353 919570343 172914281 812788226 531049832 966785161 308561906 642731252 829700671 862008266 866096234 981943581 589826567 994031210 456527039 846251173 965902043 975139172 988492867 990972289 397858184 682324033 866567652 918047927 315835858 724206054 981968412 984586736 951711920 967009579 592985192 822873933 330434187 788194580 220600003 562874632 927118494 995785719 287565448 743793583 24292390 441347537 718792979 985950266 190579231 250051275 135024162 923759975 563692380 740381544 293904381 899375641 588296936 912663184 289541281 796122235 806993820 981041428 187023432 638158939 610387081 669304115 152316903 759367446 21920877 863283622 108420887 203623375 359715069 916187323 300604171 676362418 972373545 974947626 153888279 937452920 488591657 779337813 683346241 776276034 485851183 959655334 645300754 779084756 939045500 977727126 385432391 634597498 362269259 643917781 595801917 789283296 819420863 864935961 469321250 969006478 839124372 874211675 686213179 801128506 304563229 614561293 100525615 400483529 398537514 606943075 645238197 663588060 24078549 35815443 254874859 606353445 316703342 734059778 586300489 649921058 834614267 930448841 814270556 840322770 283821812 316123936 579395140 912082329 56936885 358101252 630975845 760786254 282674920 735495036 500170529 770556946 129638734 348940931 337363298 403272698 192000286 763108592 831528875 876507387 4771479 81485435 717537007 797133310 531083378 709351483 415770044 893141734 709567716 978405992 63137814 933793900 674423944 945001354 886790058 935323512 81457649 663458852 44673648 191671689 982789437 987597900 256466531 401951272 668488301 920256368 112661603 520292726 978498065 999035598 514362881 875886098 11656966 779813099 294417691 349157360 692643128 921489639 287893416 867450071 573617301 716054110 891109600 966688617 279160305 603236634 291629367 571741513 8395298 233385361 294211173 499010085 492981262 708667101 178063214 322791768 215114390 733070067 713414458 835875681 873501014 970890363 174266002 948694031 797191732 902295822 381333052 696637670 981857474 996659490 794182854 961711145 63061948 495131418 362857384 877114535 765857544 985906013 845102025 907121487 362514856 795156574 578691148 764886574 31001709 769939500 756956210 818953080 785412324 990879180 773957164 945546854 459202596 754368108 601053715 642579514 568487961 620643989 385275015 427727600 855595279 923094025 162109044 661394853 839689321 849840450 919094239 969631415 948826998 993798046 628510259 920469552 777408107 825400172 677125451 812708387 699355015 937275926 869742299 998349615 2332303 614450725 393110787 873535320 425874935 974022885 884854401 890494384 584062853 643628266 221943782 596509169 314011414 378647525 66674427 864587094 951320628 972653719 559527752 966852974 590101835 743350538 898680758 928055617 562151493 592799784 234512646 823088247 10768351 906259445 14002830 656416659 599173438 681502375 647749017 849224013 774136883 918899499 319613493 795819296 126511369 707445841 590982897 797727085 425609858 779269567 826372114 873713262 707621185 919031853 856341376 960896605 169700939 418250513 836754851 967866040 677778797 705197254 674428081 980173041 629678263 723266967 898521359 969883563 973525436 973938595 490187851 647200569 555587052 573779205 894977701 927614440 356434661 700806573 946815390 984127568 179293451 908542203 603359029 872446350 793998234 966389631 880377828 972180966 500103811 809340754 979820000 980591167 448576341 662668298 542000925 769910378 381260107 994636077 191210146 609193952 870884296 995038312 856090104 889805330 110678238 679314946 194657040 243303763 681360251 978859050 558044722 790108134 933173386 979064462 452324078 456937320 323072019 353656279 557770460 857476501 362526804 859833109 390839195 639325148 40837659 665740030 776941600 945532759 410435194 739518756 364180582 964586091 825793500 910050289 34565514 738141605 866208903 993245332 296615994 888692553 200813410 566473311 748970638 802010258 231312303 349300160 979248399 998830921 698527551 719931225 786699116 812882598 120626931 441916485 818463960 893562995 850897807 870911544 637274313 984331722 910560774 983249682 927895455 979726395 364804441 502668217 662279502 907650799 337717660 939562833 819492930 927895140 655867504 674446315 733887115 871745477 159842233 999854718 344316875 768450210 862095996 919330035 120169342 436579103 249825986 990060929 643595065 659660866 421361692 712707536 444782255 824137932 984541989 993730710 744105204 999346325 334342858 431753695 419413691 522415923 622639959 975976654 874583711 918558173 756756481 966299954 962026884 986472851 616129296 936439485 712164332 895900146 601797420 917752802 310980495 322683143 757980428 806419716 18165720 238023330 207946149 629898756 808241672 839643671 854151885 866364339 73119365 258103297 825150244 877462792 205022395 600901913 856138748 927014479 973291528 994550426 707876215 726575675 212828964 785532292 506647041 649747731 561624381 764994326 688159648 818625049 801467701 907050627 119202042 296876908 675416207 838105075 738009660 926647789 584928443 723584821 983773796 991107220 559126826 780835934 502658658 727462265 206824113 908537022 819835982 966361264 181612909 647710501 352090340 826500964 460921603 840542118 691040656 962409252 188951132 497713328 345610385 528013705 43765881 806964823 470395240 677749698 480473557 840132970 368653561 484996014 872784489 942914840 356817732 408867507 947625001 953313188 186729153 235808270 602849901 699804171 881525284 942806326 681572007 884959584 919318268 961351634 10990338 227584486 824887098 876457177 208867603 865933789 895463693 965232939 986475579 995438534 335031256 758708562 494125188 911163089 244941302 256690127 353329912 574055803 168702306 792231269 4264973 174997679 660318995 933878325 522990262 722301770 658707099 733762138 464163637 556266456 785418299 908815291 47415413 715364153 895710008 915131295 231772630 572943278 60517955 766047196 710023762 722111965 498388784 964870068 975844844 996919363 773563722 929668330 932363836 995864217 767060481 968884739 710090223 733667140 581781556 761886944 73009222 575784889 2786670 755545021 428157096 684806235 604068249 898737917 737454183 931943226 344003992 574054663 677829001 926854213 876177657 964732524 585598943 867782208 799240643 817359432 175985927 534459823 307626032 315553894 292021250 946151453 633234958 788614349 321464543 482820159 274499801 459646243 319342608 549208986 584345641 656676973 766897964 952737526 613847682 918790397 109917479 504553397 425196091 525696932 859824354 908883457 831133849 989929584 224184253 461107851 99719338 962901852 48842424 748157810 499906031 820791726 592294448 958547609 105163848 954069251 314141062 853079154 200027962 473133425 925030809 991667701 852577263 952398593 453840434 514025925 977782416 993459290 484673466 820656657 663719127 688311429 534010117 788594208 937590708 979060681 249037084 643829573 751476613 772793868 668052972 938184196 888237858 999486906 575104976 961120519 943090517 966282838 997497254 998969579 186472642 274954229 10864093 679827636 760045769 821271619 165112389 898571622 643765347 715061997 904914879 988239111 33009976 968239139 329398421 921627778 416933428 607763447 701212883 817759113 68340101 216769104 805863309 956916300 970641146 971582830 720640691 792689112 490202724 666445385 287696806 326957037 980712112 981429617 576964084 895566645 641119782 760753422 912911999 969299959 531155577 713971246 90068290 880155608 787680814 809920113 734857235 798339135 856789023 965147450 773912692 856944875 727274881 731645706 459162568 736689294 280900107 569348573 606213331 935550198 174489987 303390131 868866992 990867272 849882139 926070253 759012605 859170346 890646016 947163114 175659693 550719235 680429036 700944405 40738979 89595557 861176619 884569161 310953896 376317924 441505001 716071533 503920776 934055393 561275136 951555545 850023779 999468739 334219050 742888935 980102663 987608919 523699885 754355278 221282849 478248851 168908275 382871977 957843809 961836489 199875000 221940368 951883701 985703753 321211664 656437023 873678304 887637986 136500229 925996392 232503093 561696751 275529123 906181975 842193773 981494270 374684919 521804280 423482293 864237052 15470261 843586168 559844900 888845511 516134509 988749787 731234840 879611530 778290615 781183359 136949077 318834312 907445874 973429011 207530104 834896343 16735027 891511089 585521783 964340209 386628731 556032917 269009974 423586938 394127112 486334719 335796315 882662451 405616840 487009844 232956188 532996409 335671283 666711243 342677893 974489308 621270854 969428215 366597647 575870882 898950395 991070001 505057190 666133515 814633312 846007275 244744842 629019935 779346159 959321535 54505502 236137858 384271490 758564160 254497468 469489425 3289735 561854019 851008631 936942466 667011365 683684152 465637252 552428638 532420094 645169923 257821810 924573115 610521114 876043928 989764948 996973764 486213953 946832856 776513223 825672903 47769888 462902074 807524824 975622977 730925836 855665748 263369288 751657379 490907548 620593649 914457022 939043631 79795036 634619156 79739828 855304304 886119197 908128870 771391206 774755118 512929632 764807302 859875019 946079718 579144774 581003205 155931967 629611880 640772276 716839812 973011690 983845610 763513842 967214014 548883258 911396487 229841628 355613195 44571166 172208505 410455311 879450547 14165994 246458409 103241749 614837908 181426107 192407196 286426596 483967082 396639734 779922186 436184048 934889183 419119101 865151187 784273114 804643201 794568447 900811079 357491182 471885275 464044434 495357137 118224997 771620321 691730556 717926851 16785725 734931629 911038928 945128429 924712291 948734701 102904104 670738249 795137843 970277238 562744299 769047917 925639669 967869964 219460827 580661343 256000891 434811044 999022702 999726323 985099523 997392787 976597818 991620080 833481121 840377174 554529586 966367593 11527080 416989072 133043597 674752171 436046288 770187749 204800053 475099710 487664034 811393358 32591132 681169281 328811807 596036412 763859012 796628408 793221178 863968802 329264132 554893353 289825951 923657991 510054241 831406406 769064853 822116344 908155122 913994592 566671349 778561090 282941890 787714668 471003313 996914244 125023545 713137230 21737350 197796719 409002572 697259917 490204526 651560796 366150795 697005654 344430813 584952439 445238728 591163454 98124158 941728384 186506010 389898706 703993201 832821821 679406027 815145979 534149666 877080533 821032882 957964318 387819677 855676760 576898794 723278104 91600670 895291247 324469709 957671844 393726070 623079861 158228266 290094990 889932627 952865797 671404242 866659519 999074329 999613863 117154646 208171730 7080996 962875831 295633865 575921157 638744908 834904124 477791113 688488004 904070254 961448776 486328180 570962514 265221795 953345521 983690051 993874886 900643380 908500621 474314740 749101441 110091902 685656387 124203178 162843243 730327693 852477452 724459032 780345703 741547809 915818352 434091175 905088777 927222838 947169395 118464606 993277649 625236472 748875290 360729157 479526477 800196279 816647086 258303410 800749112 951989925 976339507 122699284 329969907 548208163 893984828 875684729 923864725 915228211 933338284 641684416 947657872 170928844 222901916 313078382 349438787 670800691 762333801 130661234 405751510 499052500 653067255 856274156 902138535 413799968 966797720 470884767 596378700 917716487 943619799 420703644 598523164 901953500 954729761 453702256 516427706 174797028 347094683 535328866 947000000 170744961 720826517 114853202 377709274 513289915 602437801 768746418 800211620 375439222 603034144 145025419 441703978 639767413 649245282 737107160 827420656 794999109 871496987 828482021 951194701 853292208 958154379 526075202 719561747 733146459 879932119 239659064 434595242 181821632 364736238 884396834 932960642 864273189 970300230 970070335 974778159 277218911 869659521 805772081 913257869 227376530 842884927 389109541 810264561 35434786 570215363 975715505 985885450 785533054 915581522 873669094 934269462 841290808 992817431 932002340 940592910 893537839 906402361 267796496 670530608 508124810 889916107 463574372 946524531 697564887 939108081 669441744 852506144 742001773 806628659 699737714 901784987 581683288 970377660 375078947 968765963 48500542 809700382 423736845 504126601 489069285 515006911 681047837 908439713 414719939 948220356 646669312 961927305 67634877 594884891 387010252 770383566 951965845 980269810 511300350 996718823 670798752 920689724 492318361 810871919 958905502 959809834 183519576 592318097 585904787 685711251 383679990 716838917 440091772 857164076 827916793 831977549 160233697 214313938 686675479 700144366 952296203 994185874 558079991 715979379 426049235 800618328 927588607 968546562 568619060 733090223 571909087 702839779 693173615 751454821 456498186 957866524 893295513 939468230 383042819 819891990 829308888 913578664 465614355 706802647 327780968 409499602 929663539 977693426 919856097 976206646 927773445 930873357 416154232 974692630 952149805 982410015 155204681 860789521 820877478 969511315 337739686 773580114 856515368 895671194 565185376 771383070 231163665 494958379 346962604 539024481 682792216 792487235 829422692 963868884 129280908 173644782 511325623 915278956 890130256 988585067 796976832 856959995 342229076 930832976 837409682 861657812 823727908 867633062 610208563 893271485 648117525 996107953 722164766 911714228 69985454 895555962 875500135 956486559 649559471 872187670 673251979 800712769 891622316 986393927 26381958 854564793 478160892 606877434 289382938 904571552 676084046 848910280 450170399 928334458 43954570 447193989 843568291 897385298 755232486 764617418 800904589 828552991 702632073 800187005 284475255 791675930 660034480 670438513 282814214 569059206 158748550 175784643 941006299 998607800 992274598 999739487 581993080 902288005 500419164 992963837 137974662 723511879 922872557 954854031 495011775 856132308 704858674 966944209 355732157 669231481 162889004 959966961 907268162 926562355 908566329 994746291 361944788 404625307 6712284 911163867 642737445 913302010 447866544 900182081 769981922 839378879 147546670 451752891 824020891 971993475 820547874 948914831 328264811 543700128 622160536 697897239 116294255 964143677 105589785 350097497 563713222 846677693 48547863 376932638 537634101 645422076 874532384 930741738 991206040 993812052 541048801 705912274 968542300 999015265 22467287 752865656 871344775 974411839 827050878 956544720 859801085 930520141 240196483 504883744 535573726 834510093 246359416 335110819 987301565 993736868 407161870 526400750 249386621 901520973 892254527 899368923 999686397 999989948 719800576 913642427 175768666 575265965 526838028 980054547 499442339 683278882 708084346 907898425 206446277 382342208 319640427 606541537 285218237 505445744 80864484 618759081 55265287 732609059 760185597 895027070 347440963 373104970 824117136 925052766 583226910 763141467 584808386 704689393 80770434 851218665 920945161 937266844 146323399 856894987 448847819 501106521 161278041 175146288 406072373 698171882 501349888 548308893 237439308 682446036 791023650 801248155 367374032 646558054 66100998 307973260 570784001 625460768 762152546 934660250 180856998 605158490 406361521 669567158 508050290 679922998 518457010 750982209 591129701 682988870 71701783 594945830 884261283 952864257 376467915 488065309 34103586 270104167 846713609 967163557 820447830 939490120 759126588 810894260 158264206 711982049 241152686 744998527 448228135 624020605 438137067 573065072 843904598 875254939 244752095 742580664 379670960 583071447 594448665 847894236 118116682 965916319 575527489 862713313 117345140 752255809 155838101 775436266 647878851 857707088 466409494 547263403 502747777 870207119 377262596 734656436 936092564 966510964 105125583 183252489 624692708 996774710 455541832 814813689 697788144 779968218 843715873 853693111 496179111 694168197 672899780 787328346 58227226 255062458 964761555 993651439 205534050 537150341 395661484 630515726 466096551 975835595 803632295 838508732 760413008 796474648 362423580 424039813 502075151 744501333 301893393 916199751 787653012 962592367 601332154 923061317 158343351 177073041 965399133 978250484 78878527 679039882 721395459 795497858 986630143 991643855 245563809 737236280 526972096 852039922 855583504 927016694 855715217 874517422 342566870 933062373 328617044 444163727 627938090 638264464 319138069 435864108 254375594 769680029 212510086 843644711 972157109 994809323 542998997 551145262 758807040 758917660 235330631 767724607 148524777 748913608 238850518 878441785 86517289 637916842 778447407 797117317 813326424 955028686 38875886 324100479 448250397 907698523 187824704 639662263 824657110 991918522 418958036 799279239 929872189 958719010 710795205 716766404 843570636 896920011 105436676 535375102 266052063 430475872 622965158 668330544 790660599 999301727 139541662 405928021 494944013 697496766 117351257 704606784 297844994 315472999 198994994 342982595 417594518 912674222 881414279 892182877 280030168 936720743 160375906 666796395 127048966 167611082 154337890 449153305 507630479 910173313 435876577 789338595 224746195 485808131 111484830 805567834 427730352 904208859 653500133 860425844 921057146 979685552 928373363 930614271 623710498 849909661 995717936 997410547 474001754 995113197 680583997 983911766 44491171 353302584 804184541 891314070 694215620 848335616 169944518 751277615 222800922 382620290 348846654 436765075 893273353 971845767 425735964 516561205 645627418 695771574 522747696 930225286 244351995 469630124 943119309 966688014 984476943 993846366 365109987 459535978 387262039 781345986 594411496 788189951 422070758 624797220 524323325 760978738 402956659 996652057 20903462 475601602 683808313 907472442 950770841 955799094 819514266 926502482 325295160 831621544 936624909 949779815 296010563 855954659 216801421 296978065 222799025 999245171 594654085 729316670 828367204 863200747 678439460 815123720 57673798 645888136 509554210 825094912 596182474 775847139 378375870 452362457 22711350 505182017 895877531 941048738 112958637 521895518 253006449 375253419 417305957 683029286 731182193 923186810 996538362 997888217 591441613 694905156 75576516 262095638 457321527 788716797 895309634 986590953 749164074 980751286 750882674 996584142 34138199 980529405 224218428 950929177 281996512 847812413 55369376 178953663 531625403 613236431 909414694 935615441 677104987 921950771 951707040 983774119 142442664 182002210 819390048 884534453 911288722 941256142 577430770 595654016 951426229 952040299 299520057 753245412 603391221 764201028 161739366 842180498 651388511 787300824 794922567 976883640 347395840 452000306 426506161 854307248 158511469 273271547 83298866 626401225 866744888 897698426 191269819 706894942 578885302 589570086 978819467 995515795 622707817 994032661 147728662 221764297 441290380 585904354 5831309 373481989 23757918 86685044 676783420 693028032 385499859 714685434 86563804 597721234 648330721 725722905 873588655 893152177 70956674 293945485 887380028 975599634 327312790 544645779 216261212 470193943 39625392 143231831 694076324 789472971 970922544 995390684 823295699 936816040 926559748 978960558 137010289 504745820 575149872 795644094 142083180 358823864 47082201 925785919 95329237 553998061 191987728 343296571 571988347 600379008 591714725 716644345 895694072 902858581 41876878 156002014 441178100 613612814 485406552 800278609 570860793 988068028 914461816 966120973 525330367 704800677 741553066 756065101 332487138 966553960 95980571 320623626 980230189 988304349 777033696 815676600 431814861 976330699 896367679 933790455 246003586 415056025 490071242 592367649 554403131 795216387 173953800 588397828 997841919 999766393 239456827 639309944 703187945 933545277 606993778 939379215 441887728 803658231 976735492 988729258 919668484 950188894 648620923 714156737 396222574 950413446 162940883 325845209 180660315 994843456 784673024 811161868 643019250 857625657 28266646 670903583 162352947 837712792 228261207 467998786 389399782 434855778 448073217 720330412 771013389 812916311 304041869 316993124 834639472 852558595 654421409 706484041 258231275 942912023 343508810 636433413 262650963 531870646 503670822 922501011 892125889 938338979 768322050 940824418 729234763 987104315 944398146 982247907 881337738 984519542 38934457 996940675 198814944 881474406 823044001 920621390 947292006 965038052 882435470 962509439 827469131 894384546 537259050 826434498 72966789 563543877 409041552 973734528 705793084 954025149 160343368 573712603 243588246 792564657 47532357 233204139 378366421 534776696 629009124 649955661 513508028 953913466 111760729 592185688 142671345 156611733 941569778 973520897 764929985 878015283 757372886 860267526 630642421 927950754 989029 868004841 579394250 857283306 290866464 602217536 480874250 947029383 242453508 588122216 252164283 564157441 543619979 694054680 509013017 571842999 675892837 829180672 68351634 106628284 170212073 565821265 277588727 761941363 700474938 966296749 570808061 798656823 679255420 890898206 224032722 241152840 625345878 976782481 898734908 901879570 247830666 431864909 339319780 653241814 357732979 623237946 148846439 618281051 967035056 979227952 740308578 964194161 35777334 471942833 676363774 849374268 443588765 828778627 279828052 913353334 963522022 994017488 858129158 945234174 830746604 850692386 714590948 928171422 212235485 570809846 760232063 819072525 458015538 912730420 19149796 618096362 957336302 970009875 523134294 694513016 904869091 921088613 924966536 933974274 788210317 975054355 455737289 630473179 42723821 91142662 468274631 991446156 781293171 954756642 544508099 853291363 108469387 166149562 209418596 288740706 536988571 778748037 846473756 937825549 945173350 964147980 985043575 985332440 597932047 936754875 392129857 656238377 863010772 927736122 230764868 974903294 592595278 943901191 391048277 772315186 432239268 580856583 189927356 202128084 147574623 435175009 882505405 888604083 314378028 519461885 772084234 881908079 152349093 922675150 961978504 962409981 593806189 863607623 534781114 617048308 960653635 978911524 409346711 579147560 222032508 393662146 780580649 855919247 577262428 700575234 440850721 777143472 79626292 807659396 369223369 729735027 346040420 486047127 988160461 993581661 507087147 561831624 193060601 576350959 982705072 986991586 323561270 539197870 49002851 912580275 278537104 590752940 759279153 894297275 879376669 888115737 10711736 345749693 224163673 321600802 786488894 983024971 519518585 981159090 558363189 729092782 491443248 997012196 49437556 686403251 876297456 900125707 798897316 906582953 339284384 866356165 887060842 978538520 979543487 998068310 801933070 816731549 89263717 991440152 326766081 485811081 372292000 431082300 92776554 724607266 864441797 974714244 107246717 907189394 12363061 758390071 596343799 918846673 988912589 996737333 631779841 720810025 456126592 959601181 466859999 993055730 837033313 970814037 471263701 569897407 549238808 595059803 934021557 938121002 774554237 914293601 194117292 958879437 805485960 814237324 233969587 515060368 670445184 979208008 117115449 780493613 339484088 671977273 85949338 757286862 637723719 741062460 869394614 882953512 414010394 929171972 462973464 968181126 477073633 620842808 104815504 821665719 807435507 888611325 347046210 723378039 414411848 971968613 695329528 916296812 575790643 603203430 560245590 643080622 376510678 892097486 504512922 992394451 753287684 882210661 928891368 929310387 688379705 999518929 89429792 142730573 853009724 968067490 633471326 832106783 91319534 629487280 807277191 958205731 262925682 512351788 614660824 957765831 915601914 939110771 165386777 176006961 586097160 756334178 75987500 863186171 757419214 888550897 69948743 295216918 188895878 226490562 895374087 901319916 271676235 387850748 356688151 369126597 417031039 863580766 963243652 984561272 843012903 970328944 428211997 968444536 351542713 599624260 228153899 734581255 530533814 905697155 697471758 828427550 226655093 566625068 177381382 914363384 872949812 913179783 845875213 882343699 873571421 877982212 48335065 296116903 656471148 809890531 459030735 843935437 322315853 434006438 271878984 759238443 64397629 868600641 738284761 948418440 305803673 638730814 741296608 772896895 972016636 985939960 840344802 857294214 799091399 968884888 855056462 892989563 357817613 369955019 187690496 604248069 61177659 532699924 46855322 448950826 308048592 972855872 305411963 688781476 283349676 594959143 81947407 247876321 116459849 296629311 145018532 676293884 415199595 843148759 150871411 503807850 349090737 492387790 840045381 977114666 685626511 984466996 804475874 900615222 915312057 989298017 843897384 988085508 16676750 332025695 343281622 772220448 821497127 904820408 611323091 942317446 602263119 777401640 424602102 630537537 162390640 330056050 436157834 939762038 789709021 897021273 385374928 762900328 694166061 908570917 694132224 911841559 54386422 785449435 966445028 979593953 451870415 865018890 698666496 946693325 588062282 928899076 674549837 684610694 186043369 531518925 574925947 861614389 998503229 999211346 361635053 761641434 826032968 901065533 322850458 656314742 744146222 824194121 220545786 344004036 393763772 916787865 992996696 995302193 447481447 482853257 96418091 951801079 520766014 695922112 209806364 981223529 410126345 712801483 200988805 638796318 733194925 957010802 34704796 313762591 78846998 258476523 941212682 975707929 760087072 764349516 307182284 589530299 975194054 995478390 865835689 992795356 102109282 414589742 696372434 754922698 65522294 125075307 560962097 954785737 416927518 448422723 927347376 941414906 419329806 569763818 57158072 816449146 561219936 691710899 220616678 665304896 264521632 635297217 552139474 820437134 661362158 948643314 230776517 550372536 109430944 347392564 548396269 889352201 762565621 869279677 926049904 956647579 475575627 959229074 942698853 955924684 592510745 645361050 44248723 755437998 770051242 966910856 838283108 892300061 957839126 959296162 371136215 423541014 777774688 953129345 794154251 857584313 238514919 495835169 172136698 497069076 866671469 880522031 931623282 936509850 711633528 921993425 272975126 450515996 16194420 348468038 72794909 932940496 94817582 646337718 265118429 757802265 67850836 979210466 877716412 998633098 688055326 865624289 879544246 890855601 26611994 670603838 930203371 933747144 428278185 784872658 407799874 685017659 127406317 285433936 435623725 511265482 720515164 852486316 706631199 898964802 786623366 852204934 262148603 350030475 417336342 647940531 555216230 738250051 842830006 846790818 517364826 752782829 719167459 746271473 955446053 963965325 467754537 975481966 784801958 820263341 113373625 732705285 850023322 913859730 512988225 879890345 363220244 787682030 314022586 464647149 136776570 929359527 552432673 872301123 81393677 146396811 612968285 677924776 405347424 872602598 482210864 915486293 491094602 594782157 284379920 689481497 316958767 375741631 281120632 821464308 896251035 924241489 913948435 931384452 938018522 970731245 391281155 673596721 591114087 715750481 520892114 522118026 690769941 782588735 513591134 776843753 106935365 342097115 416467315 915860487 329029261 516051707 240024003 821866871 457453755 890659380 24609470 557948143 950644878 952199737 851326889 956151786 389700790 580367264 787893627 879769286 846206110 914153986 158682902 290169484 316216160 709313258 354652012 766476842 851816396 929913809 907548560 999162086 87595624 114044428 866230133 935146572 577612799 679088982 154868127 854125042 975188331 997850151 854348016 860672379 421282007 766232691 120964587 233836100 767082170 865145328 75657632 268734090 858769908 954516410 455161224 603267001 65237427 775310112 150443445 592754057 25289381 534709038 750844663 799817569 976089674 985947767 933346839 964370838 66538614 204904806 180486899 327732737 498219554 784806458 907545991 974583279 836827029 838633975 153733434 354672827 171467043 426073897 308304128 394092974 671473755 807855399 15962923 498581306 648632872 844701370 643707701 682803492 741296015 804459207 13293705 895290009 247095267 656637310 511690886 801885263 258763369 880513036 869864033 925144988 685147924 780914128 580550983 821970320 31316397 448616021 681966849 715557457 26740920 110656164 820965192 863870079 365533397 390197692 54912395 64796944 654791311 805014034 934888098 957981386 978889724 986803638 272913642 633088124 300483514 780655904 754930587 924072765 609225621 919442706 378421886 826714445 374973234 774428097 631374567 676292090 446421939 501244448 598857843 827355372 192256814 761527188 565987599 714886932 486229198 505388849 102765224 193982018 475785115 978312929 865694215 904453349 420588213 778172203 818607133 822777474 1317725 513283030 891576158 981141163 506074513 640918025 942837649 969463301 40135188 217700850 906831552 925785188 606821740 788945790 288393831 616488718 230389773 248350196 238437214 896293680 153663141 196015383 351880847 628305926 705831398 730039985 961350928 985913036 501633802 823526870 84603272 670703244 900745615 993066062 997474136 997954366 250441613 708865011 860108383 944798269 832081170 969729596 218527631 494467785 787338327 867907877 90312358 100147861 43242905 304946111 96087464 394371898 379556020 693493722 735004356 846921486 138514031 625591362 90240850 695378882 941934521 999761287 82385119 284864780 637263872 806036915 952909968 980651735 532135792 816666638 402651588 971668972 191994492 589055810 715945328 945635974 130195608 908202752 297705132 501186944 296301245 600739615 853975770 995263569 856143003 991093592 402281487 546001398 628083672 754915304 803062036 983451136 437245686 934335720 51275911 944771790 916150349 929989902 422903900 989647075 190447151 840852347 184485641 388290787 994460370 998435603 82662036 282002987 890652953 906807751 181532045 202558020 219936996 260399390 688086204 718884931 616128152 770497467 873033364 992147975 214129817 780531979 391234737 582071926 755310574 817707910 145528345 541874202 933785621 975447709 94891961 723917402 938881000 988709921 10961968 848272728 350509094 692753138 177179693 350059508 997985969 999216148 278986459 572654316 111641406 415398838 793401816 797502743 648401486 921147287 678463675 802772434 356965636 749568037 919220169 993533925 730620946 857608581 680999242 865763322 721916490 855964861 757769990 758953872 166444882 555806555 58158295 659072620 138034795 970675113 980024686 992847842 786656356 954885899 926280236 927613295 474695625 701028725 869990476 934615298 221068050 849842978 377087490 631353535 582516815 765774221 861291293 920738184 718870922 732600594 838505063 885247656 545872056 861184823 580100306 975249987 298543496 440293334 782808731 950181803 284629479 295790065 8897732 358310199 656153975 675863701 77811133 94416267 405458793 955892183 302293389 523371931 921583955 995135455 224813169 742693287 896090143 953576260 806970056 963946493 865795817 899386124 247607034 598301083 689759564 760282604 503715865 661020452 179367241 798658757 99653952 892673997 285726239 783189092 341578317 417311506 290083296 689625506 558748526 601250469 852226057 951202206 346923862 464643845 784743134 935307218 448652258 473988888 541942969 795382129 575171468 720434789 926317499 936445352 528292823 982034594 597024436 894391009 808955511 996501622 943561481 982961174 39760881 156701559 584082210 741481722 890197737 914395867 97216828 848666812 781288296 820536393 53726569 301368281 144972422 984603961 302986791 391113325 64821108 364604626 422050360 849049584 976828537 984914203 120042906 419346168 117114276 445887706 275778912 376917819 626893954 931056077 175180173 232256454 378369267 958103413 616217883 999934694 650036840 799413274 82117011 632403481 610795014 624896319 358334832 509411132 177611204 793501863 317078486 390332430 455664497 561616185 922506273 996342562 423393840 565840391 870292940 895716807 87929345 386800474 573963776 728067992 925341721 971894722 410962385 828774994 366240061 597707591 195976877 806338986 274475631 342606134 727066448 856481845 345851003 832798016 401733959 887262179 894454756 942691935 420151235 752049033 400526153 746312151 655464431 908818360 157458365 659182255 753763360 870138962 348357549 760026282 470845143 938553900 371102663 986821235 578342498 679853968 676532329 839010957 159599740 688598704 969903408 971531778 828201805 906270481 429717463 886412077 656518065 908351090 126597903 441186073 542509721 793119126 712333108 899994412 653764693 674126561 112512517 769208835 547260598 601855189 235829572 939984525 985409362 991638480 899559070 922558960 307235302 809030421 781450300 872139870 590866931 855929219 552966098 949086934 854824250 906762728 508020593 544937934 687198197 911026905 751777244 858334428 489996551 725542573 943976217 975908269 148339016 219978863 760153436 993609093 717867971 860258153 858378525 970929328 148374135 426947823 839766878 963078379 807743254 878735805 525286035 652187240 685159389 947588021 948508741 956539117 899656915 953402537 225430660 554744635 741746400 958512448 4402430 573226412 288230264 711369828 86277700 228504711 111901513 698567460 82417261 910101556 174525683 693757013 472837301 742365620 722980526 999317506 285497744 465116319 537174039 786838687 719092351 727237978 733399002 880491365 999589018 999828779 625739520 828662389 314143857 709825794 204727490 436639637 728058511 817829564 491889920 933912447 362959889 440663917 937239610 973219917 423556601 493513815 914720598 918138960 979400419 985867032 221084022 942969924 573438821 877549821 473683738 788476521 948242884 988550919 878523756 947319985 930592582 964773348 713974932 947371562 390278468 515184735 711056784 776026693 263243320 587849071 463749718 954997905 199585485 484066298 579338200 885221553 508746153 801530389 131801119 689302661 935533629 982368442 533016262 932773340 738104011 859146816 427180801 745446257 960638398 975993661 972149477 982114097 130082327 649766172 335423207 438077664 331133723 520270420 92067745 713243444 775262340 996490493 556510102 742578341 263005308 710434670 497667721 515378484 237439500 245043231 459023625 973704931 351882383 753529581 870761807 890611410 612406831 694790549 67979112 491282809 810402623 942387040 574306665 629756287 742321271 780163326 725175891 780072628 759862645 981043634 412853452 654933244 750946987 870941145 593898425 704534119 624244457 744618914 62298433 317350293 748089741 749347862 882705750 968197278 227003450 662594694 97460445 823168568 104196902 412416690 106467506 391598545 575146808 776805517 527686639 846544486 30058161 511100099 382685753 595621310 402839068 665855132 937187842 979366957 415092355 979762457 628443224 880261283 115109940 787324652 833063150 936973875 496727958 805722563 140362255 724806703 455925875 716599543 820093256 998023093 913779748 996600907 704751865 867961589 176000122 348376427 899530179 963874438 320843449 462215050 731881558 747431022 488860523 814886712 138017169 816180685 956055158 957769054 996081111 996882304 572249627 595042365 689597814 964140721 302528861 530141767 59512554 833900308 517498642 735298769 484136553 895117692 494215697 580597672 991061728 991790793 897126148 912492278 40227071 939304614 462624710 990784614 686806513 794971583 14975971 745883613 304473368 888819257 652444288 823147071 278382359 806277356 276671284 319816100 770860533 822932771 234796909 611246292 742399883 990390369 967714550 980851113 198113172 881790179 350824448 380685264 325503051 830790248 752371429 825539212 4495325 362083422 414095034 856025708 103364549 614841238 800292247 933116302 847056185 908769081 510120964 700520683 237054141 759598022 404688800 840355294 20354085 381484748 64201445 261271297 272825779 743945809 103832161 827464798 35581257 328479669 513978343 543571414 603217329 859934473 152615056 915996695 385104624 679150674 98043308 900263249 958794472 986922413 968767911 982090793 833669369 896996508 29252015 191105238 369216208 991974373 664686675 863134252 198872987 610236035 33366520 58642089 389630531 915600410 774777042 977293475 198288595 365871459 247428418 707795857 560272616 850917907 606358208 877998606 905159931 906191741 44253416 622494554 463473322 938025877 52983058 403417237 342323547 768319303 286858877 859435281 130612287 600102257 299359536 697989880 81115209 888922635 815354394 941057456 200485000 348807288 36436561 947110223 768802147 795087901 943681006 995745758 951216156 984228023 605798701 993259567 819970033 823002367 499161782 809413286 790741388 891638437 88556316 859248536 796751340 962075321 920398856 954032873 10615336 853139611 466512625 969494417 4073801 415224055 434309459 997114801 676702017 877150705 159122264 733442640 380776788 763771576 717794263 867047953 556374655 857790865 136041739 556713812 523359874 891624824 764687026 781101513 348462089 522944910 713951421 760200657 605703114 893028860 662294312 803132038 629129903 862589289 649783332 650122861 203795829 566751457 488834289 566069420 300760004 631009670 950136401 962502988 242078525 841276191 60390925 965868092 590500072 954995085 808315141 996536082 383950259 528466828 813264829 937585156 970326488 981344866 143039849 313306016 848108110 988941087 23825715 433363511 869497121 940805782 447781175 595302905 199322845 793062724 713187624 890135788 688178248 870926585 222926473 464043325 772671269 985038378 566826255 944041694 621866374 807779122 203164216 980229538 223066420 658334333 465674966 724698320 352950193 789979241 10223686 633648857 775671203 897148849 928053275 941206066 272912231 596115318 873401272 993111353 396353347 432281590 594539711 912638433 658057465 824862702 878780785 896337262 651768536 653881152 975913037 988876268 460622829 923266724 357031304 608233687 661715694 715289588 92214958 244984712 73948220 125705255 573315107 840276337 698120354 848346917 359079400 808271281 630348518 758173247 238088105 569897868 948621183 964292048 138772119 885252491 127829940 326087945 433801346 702914118 609217973 862857668 757339308 895397037 748757716 899333057 483345318 564088220 432439050 700045042 512872625 658672539 431958247 452808482 497044772 619868317 99852802 398771130 534749427 847904669 28528896 442360164 916434606 998926872 2072439 665376920 300104714 592963270 49597 805882242 775350244 990262807 134620426 703409520 859580176 960674345 134381058 504125636 862566938 932326333 959895748 968431601 477047989 486553815 412427468 592723675 730398120 764519318 313412209 723566516 647950708 846480326 425775702 981742815 672199514 843734011 618935073 763910400 645741433 765832282 154161166 777891368 370804664 876706128 384058239 519996481 469080314 501296047 950384258 953183820 928596573 952146629 737078724 826229460 7094477 387325000 904026549 980593848 225635404 439237922 27932748 339546039 66966308 914364734 749699768 910550791 647710917 812557318 613047273 651969305 922301225 935981714 578473434 936518273 239685859 808341511 690489828 873494988 386585976 417534990 446330870 502469179 461145557 883567515 553517906 612177933 654003321 986359984 579691331 591053130 434248162 601227462 520420020 847789520 450499881 888626058 128165115 227997594 122710045 535925833 14952912 955990693 407824004 912573735 708692357 906828069 898076640 906449387 358958635 414504938 952514912 954397640 971060914 991829329 40795288 646258101 203486747 314482450 434975190 450344659 773740143 801795510 245677745 545051787 414599303 988911086 885013249 921522059 742141719 862954318 22855012 778432628 733310446 771229277 449651261 612070916 39740921 138858346 876010607 957966509 818775834 855070029 859302001 873931368 750652687 941222013 636706209 665468611 824209305 836313893 262615317 697567302 433561013 496585902 293275357 463070351 146171607 925048122 70489876 353225183 706264693 843362211 325860443 436953342 209070079 480918647 120532874 616321613 143310108 263134731 726089525 940258992 882065416 947185980 888955877 995065388 556585845 623669816 286406887 883794710 907727811 971684723 102007995 848571454 169996596 364876539 102999275 785331227 774838116 951904694 880872544 981701890 372071374 633636921 983683722 991039178 143214590 845066914 717130409 970330461 553773164 754879018 112581770 374400669 376791289 989796463 378845731 826061563 592250791 789415349 173356215 333199443 871522581 944725298 499615292 632333170 955632746 956437143 380103033 775403758 794234116 810005914 634809744 936378744 338185449 458459221 6830956 254715946 793944251 842570499 443502043 834785143 679434658 711558952 553765700 712644933 977585391 981060366 7172656 80395746 933768901 946111144 682774004 762263996 997013179 997496609 162134676 548670801 533718233 778971414 173930038 196173341 870928656 993639064 745990149 932137531 107748314 367675360 22275558 610420099 931981192 957884606 826962189 916203213 388514012 604179358 395077218 685568240 297422408 618937614 667542752 989881323 928769318 959219846 252417310 331658348 435341388 768672510 119348456 244183246 979453867 986793594 455947700 710414670 354197334 544536077 23935152 907327392 902499430 949807496 884565333 957628915 573776659 671033804 687304583 898997222 204768276 509100995 963497647 967206473 274500829 723869223 158179354 979659124 157269110 581424590 409184963 830863862 719342817 972540862 4197143 952891300 760170076 819641080 305990251 586343002 462278352 515599473 672586437 980719589 539950934 866624787 37056868 131661111 120030151 315057491 320820345 538221141 298949183 714179014 224677056 664589615 520027732 631419761 799221594 862340773 61162542 99453344 53677945 227151874 362538913 935447921 835480448 956425317 924039308 938930279 380565259 727622887 558637552 865220473 429450924 947118863 167473109 584967651 538640100 847487732 657836506 748436623 834461530 900598534 860281534 989088965 936173380 953862373 635799253 828828278 141148139 830521503 194183195 316577156 34276573 196912298 417440281 823041128 596329341 669535441 384319639 488448387 467309929 552030356 14983876 921306551 719204777 913547529 536613361 583579325 143166287 887879809 532016687 601968208 376565430 604026507 204183559 271479471 2670397 698834896 448179180 668286052 672544607 807522855 717858297 924437400 130486476 280379510 296341542 860066582 390469671 949788992 925623313 975047071 310801007 536814964 31717297 195141329 526513196 894689078 487559752 927503774 210510081 299523471 740717031 862137152 792995346 959814093 538329368 575267355 404817371 773447309 614117413 987397576 528421571 635648545 440277651 475512043 738227407 806265200 882776084 946717136 684898731 887969865 852497799 971901461 560943444 762925763 913938238 936085022 534752908 651475216 686642991 804324043 218103536 890794858 32649080 792603222 845775750 864599571 532745238 728624785 467752549 677743514 673621891 870096956 661849219 795777928 322247620 338462131 887893600 987586334 837582348 932368381 542860163 742595503 348822655 516866187 169212627 802130854 701383101 705738810 534291838 904996240 920116011 942070731 865914423 930569179 745891134 848931243 394939408 436583998 567410832 801449071 983799659 995578182 663529479 812043723 554384248 889569449 254387662 432356569 339124822 719361635 949372197 986311989 837754018 860291336 782214799 793009417 875771917 906188571 280120196 999510063 625383623 668213247 140866977 341189482 404708729 436222024 345066037 893823420 174428709 682693298 404030749 529721293 695742056 931829141 128081001 616201632 484736322 835689325 559005730 571680599 139366832 428189299 644821209 801356902 976875757 990564150 276462346 568149774 134395739 960960390 860721381 945398364 209966716 365734936 759443957 976810352 422043033 727605006 792702106 958052734 120844268 900361968 946137732 965295306 360936564 962382508 488002938 580006153 132660083 310015212 941422620 957215083 233092500 911114280 845017788 899956600 179962380 551854954 612575412 688134146 549931546 716033032 437205706 972252400 489873218 697153785 910187050 910617534 382943440 556672656 480376070 758185457 249430449 779362326 143365229 346744101 863216168 913785353 813085832 832375314 613272781 838892437 12036145 585594655 969380455 985801872 65788270 606116363 238648681 735792315 804392691 869734382 990932132 991749795 773106222 941619054 148648029 788476703 493175991 908492874 695791907 975908483 909216765 978791068 228841415 902439419 991486649 997323962 465892088 981190006 981487288 989397695 265443432 330596350 500910726 820114513 860371999 944961358 651270536 704943758 597804146 859869253 201695755 478917920 963506262 997115503 499193416 582079236 481353171 617617068 624197821 966981593 490195917 930169337 817743320 881311952 813270540 816847332 1212806 417746521 566665653 584183197 442171404 736520149 502406824 908659342 952469928 955593185 435884028 803353987 384855641 737833680 534406083 993361809 611592283 752436357 563786378 813511474 715878013 746662097 227331303 359746457 157377188 884786559 134244508 797413829 484751369 755336122 993342491 995445141 433375378 996070465 540626723 753139913 848750725 981171334 936675651 949416174 710437388 717547312 11015183 858306133 120785319 513143820 716223033 954555791 386064186 647695865 808705054 974314421 872239671 925387474 546706810 641634159 737140209 753013128 384679616 909129213 373290864 966525016 712253769 883016700 854012497 969107760 188831551 783072369 822244788 830999312 46481594 186986426 508387206 992884688 695055716 806074904 8996279 763688746 151070674 911821417 523668249 549000375 925299401 929143787 845248366 994955160 634480142 757690065 525732615 599463462 986356536 993510353 742945093 919923605 823219893 980230058 118032641 733981255 701447859 878330303 74299948 441579123 90915179 533541273 648903431 791168752 606037011 637423334 172919016 988184744 469555042 538839609 797376062 970259781 916413839 932283263 267742081 992783744 205173984 221629431 927206609 944108546 404361764 472432195 2659991 379242897 371146910 997391744 58602113 734672332 505788087 597754114 562309708 618733506 653454985 967041036 636864448 867254042 847776355 925041643 760196608 986084836 254036453 978756350 467663053 730623158 800248440 995306453 978769560 989839512 976816819 989351581 679267576 829585600 416258911 503879238 756484042 779440995 684281600 806216865 269553619 960360914 618388338 971476237 140322442 842493521 638916652 757387205 922122719 934116992 752435835 873882132 214805773 375983696 751805380 958280445 450107421 888544607 534003001 964251960 600309056 605050298 604406127 867792421 403998912 806381447 769538632 936584105 648828448 873705171 844248349 906430597 272479166 772339483 587472498 881462730 949894782 964152979 283124773 425218934 873916679 895708556 782735620 998288650 110171455 481181838 732911144 967591457 571920368 974162579 906445811 933274163 317204374 472835189 211427975 681482608 326210490 621972488 943468194 980027575 785195986 808138451 669605202 983118154 195568454 931546376 248997374 460533689 566350684 622368745 340176438 979722541 555029243 783418923 41444842 860076073 79184342 845146247 982738169 994272136 805271254 962642135 74442560 924776142 926321964 990059415 287727602 893714051 522008594 845701542 76204868 212984694 866572118 943885582 907167991 945074232 726465163 771631916 650996505 911228709 599019906 863178495 699450748 798245948 429167822 980132386 706861034 852174932 739269232 828721464 493441481 632665341 511187989 746564833 800991345 992054315 462169711 842294186 942073642 985837742 512402640 811081362 935557378 948660074 451038755 801073311 546516781 959743078 72071770 376085663 886990141 998284260 299566170 322318979 342658606 798921727 678836638 875569270 758491828 768469400 672741219 719704442 925697368 937730857 195161768 937522207 465897828 687599769 341483892 342439587 782702982 879000034 301504318 993334679 923424457 946691670 398589624 604781678 122564568 297295193 765822357 890335090 154783563 661249454 687850513 689267350 861703786 960239237 863317378 928449588 369466111 693992665 383630722 478793348 885857468 906223779 228967573 261784560 637170603 786662172 69014612 73892752 409363470 420381552 103086883 135032196 180119999 524944063 447860739 857558317 199927996 691358497 469831957 487727806 324594089 908596188 508561399 888864623 814326769 922304621 348956751 853703555 597971890 859672151 713774676 933954317 307228067 502560299 471506112 733126618 114745698 542269554 272138215 573009676 426232451 576001171 850951340 946878397 279527827 524194439 890029825 949803853 992444330 993568501 779804010 972638151 443767184 996510093 937916458 938734342 101169905 757258589 699265337 868621755 217757840 715792814 627614771 737156141 277855986 642174160 417602033 782323530 240477273 605973694 229487695 794502816 96171691 691073743 792166710 968283972 599427788 663569321 379067499 820668552 646108031 856169943 693744661 955033641 912206989 983068937 405556756 515001629 309682069 583083936 526121252 821316211 507627640 928169545 957083118 978418169 787171807 943567198 542167907 691128781 427901610 744322383 915915330 986440853 3443385 112126340 352185299 422007803 519922242 850637455 868825540 890164939 127114347 981007752 127792316 893123365 522125886 724003091 877124971 877799446 361740700 959051775 82757419 549264395 461692593 569424395 543666297 561402566 959237509 967075328 610585629 996060164 18083745 336226940 712509737 847874929 680907210 748799879 637714234 848291942 162305578 358664415 65240960 403672393 551016127 697382458 42737547 793378978 571241920 671974176 631607837 772883764 658618578 800499341 243687910 956246860 224919692 275494453 836181307 849904925 850868569 868965202 343371133 918162277 175029046 673224643 234459402 856680015 536204783 911659442 838891672 901496286 101397045 136166468 369753439 426318314 526738194 903597079 396148574 970267216 556034481 600034154 169449320 766140622 431389835 572740224 972095510 993301026 943851712 946448970 630981558 955908264 995022201 996012114 631865674 634315928 614066472 947438081 25297793 712436881 378011914 840597873 323547771 714355466 500243351 725012161 565626347 581218227 756499511 968383947 631950269 872584381 763671087 800376153 630100777 806599258 37741328 875380859 811733801 977452521 595434619 732598108 75248093 505604274 324027667 634600181 405170265 644464420 901039404 923517324 350943632 628206541 607699549 801376935 688353544 849985357 568199510 614716597 146334772 810051201 186721894 216509703 88324756 758579918 105716434 225780419 318131863 756718309 585656593 976103012 791331257 934660257 998280552 998963409 874457492 930816401 996103431 999547240 445947309 500037186 933783750 965239291 950807019 959970502 190212038 314755306 693161619 831094035 758370178 932243636 742103490 995666774 200011691 393778305 487962646 571008972 303406165 867294564 838326601 957980477 226708871 701597195 521921394 597913996 736067584 851955398 42935015 483022292 228081504 886024635 663079778 866457803 72222593 925551523 494069856 655332621 938506492 949979099 56881271 742023343 365873091 767123107 594438814 856056089 334276907 979130801 342795778 458324326 87076773 867774560 22108760 148408035 440299168 786078287 901182828 987366378 210435868 874717593 249923666 637898420 986393507 999878760 22602773 74487601 204240445 506339385 260677681 401474554 354650213 754667375 601932647 661455081 193713024 613165905 128678984 953052005 705269684 713157930 630774818 800357924 125223958 950083303 47285510 599203039 337440152 901554710 676342026 949552825 198503005 961288697 127481386 345552265 34052284 299219878 655665579 719616623 589363577 911547078 488927374 712980345 55595048 864652471 181942498 249287420 206812202 774054930 369896922 480135239 202956105 566741423 140063376 965659078 474028875 886525095 797567008 861478413 321763428 528401623 460016260 932217305 843800346 929876905 450175170 946904393 836428722 838625558 243559479 329096197 99460444 808641066 543187666 855720055 614585436 945174599 329452965 586236129 596575515 736087134 424898259 433683994 71883727 808709542 67605365 818562951 61135830 328836707 647793293 662072472 745284535 987910965 416337708 941364806 280390446 993189377 42046609 611506277 470199320 861282654 944915902 945932992 427764966 557010278 774904047 856009501 169872718 761806647 129961124 573497312 206342921 541609996 653525945 922800678 314469851 704248279 562379333 609903993 984614958 984758000 518085079 923352888 484138560 527962161 106595201 997880409 919873685 966139433 394771863 997198650 236113049 459182170 756868052 996901472 6768844 734671001 932771810 993092547 740134719 996192493 117021893 653127044 543955809 828543334 760860530 885793629 831302983 955776197 875150898 996160098 187790831 963103808 4168347 964828974 722380335 896443577 322968736 991759972 741370956 959876532 943052693 984446202 778621231 930640999 221393903 488637357 948588732 977688068 523186708 914206587 507976732 896995204 50576857 427535286 635808193 946689373 76485387 684322540 723642141 974019439 967500619 994244520 223551891 382172360 916792123 962217352 730622980 950455895 338618438 817868879 488703572 803494538 214927404 704863372 914957793 948570786 710497288 922153129 205082161 313004226 293133620 817446793 789650705 979249906 581424126 959963759 580368337 844434684 569510749 735660700 398630497 519018995 646252673 663017966 135493682 204847578 966109885 997413975 662585224 713372953 639100887 677184687 567107914 883823007 418538826 834107226 785221881 853524779 878144835 991714509 141681334 891587382 815312417 905622684 815956176 988422788 751475053 922101737 611173961 947383476 610946952 849901903 514744183 762532607 169688765 478679526 851144149 906107494 795442074 804128008 955684496 966717750 659886641 835974921 103744466 511107062 252580154 799075678 191519306 767583762 426785540 661322936 483759159 601210476 347604764 858855418 548417647 943497100 253467901 789496623 936829236 956557344 414108994 456393234 18631791 45617947 839461678 895288986 784249965 889476210 284312710 865992580 985166436 995395816 908913197 921561530 94820209 946825492 407088641 806542505 336092975 594491369 125773631 764076146 590319677 699382690 892370086 984023420 619241537 860901188 649784172 988538139 422765069 432900605 551767805 829314955 392784798 565588975 36791996 161851953 368492795 723179894 893283738 927466805 461782228 840669785 212015031 575991641 421372971 750797597 193321883 757143089 214612444 644608186 490245527 576696657 747533865 838273244 777749637 918462197 900047944 910265551 956994326 974275200 817379443 932793984 972295166 999410203 888265356 918330708 160900984 846758135 238825814 793143134 32851327 504549413 729158006 906855383 263742578 700750515 417330138 689820538 949792690 997292640 847941504 849527355 503720765 677176349 904814762 944191021 143529473 515456714 681622650 945112157 833456651 940545180 143902857 450061887 873523148 899131234 756325388 962609276 194368734 410818083 775258630 788006776 638511271 906761602 133524355 409465080 243722659 901128473 198408387 886297580 229050667 504544284 9476379 770765236 832962373 946718990 662608782 798550898 354098945 673749549 580994776 622324043 360799550 850930330 272520615 521080714 153778386 982654113 755271993 983481104 674849671 700070165 773375045 848853160 967943500 978950273 8125989 137261580 511770018 925658360 393544877 538340028 732921738 827236962 819784177 959284919 781562885 812937930 949146610 950724157 775797937 827428429 863338769 989936362 108040441 385956292 172531236 532348056 835699203 915455878 882263316 915417722 350450506 787748379 768278652 979676676 88363471 663011176 660615706 794018876 581251973 973079347 268450104 513961403 806255450 893513400 935075626 969926411 825370040 902102023 191489678 589535503 763331957 796747304 844803313 858411301 906198743 933811836 816359254 830446823 790934582 963338966 393897954 475280194 851994357 935549015 2650118 507018228 305752484 452245252 722239222 989494305 316654527 643872667 676399386 849424705 141500183 417400934 20922324 170820188 716804648 884088015 160518486 331483961 972731883 985717171 500271220 997244292 624648992 718526230 468149459 754174278 997453140 998735350 854173685 859311892 532719586 970245270 387468245 520565734 125178506 596191905 314028110 793478689 860379770 979883360 925936714 955830808 869943112 911322001 260373747 822251099 101707013 904549768 766703552 954253343 830381313 852997914 419036303 483023654 676508197 943326117 251622526 781089181 932758108 975789924 980811832 993168005 673321762 824972294 243800065 439564179 952755209 965581999 504445012 795253228 690466229 738734791 885012829 980161365 554599822 708986671 459484181 740660057 185070165 815120783 515876276 803933262 101580067 105711936 178426148 990570367 617559913 813980282 229612178 904840372 520819945 838721746 492274051 499170651 819071126 826185013 387604945 739340490 855441263 962841382 428569509 707183345 507092772 567903435 956375161 997289589 303557509 978759886 786002405 787728727 26200698 936703399 937163521 995190045 105217794 879029266 441029164 608413410 430097933 706140331 972854749 988874311 74437920 221734153 659962647 990998765 382648530 610859902 149359721 994261730 681337418 848693911 223264383 402810500 416962345 854923132 485714435 833122169 424372630 548558302 773133939 986792209 70593899 299017108 969478755 979455327 563615014 723422217 222628492 924817361 755431295 829298918 878264481 989550031 190677954 592291801 694713559 864366046 282532681 561045199 730179528 764692925 240621190 551891852 781335646 853094284 515737899 545211075 921761031 966766641 33975544 351627108 790173803 800195174 147616006 303508565 982802941 994761637 215427848 510372984 191724128 697494407 131634285 779058945 319221523 321953382 879463014 971496756 463205896 735593548 816150428 885107279 921786813 930988023 39488975 332113931 857103787 919706228 915233742 968301375 329980620 778059642 589695244 855291912 666236387 739798300 555870580 854988130 557633281 618551284 277857076 930251353 960947233 975535032 71598140 196949074 364015028 942205355 897135693 967528554 241570164 273383193 681669529 985892182 483556911 487527452 876103165 927887793 91233026 547108104 352233483 890457887 629613483 702496920 621249008 827850374 346737917 929327181 815450182 869151944 738621254 822090911 57311517 394557206 426082788 501635591 632305089 920224320 389818981 740143167 695650526 698442285 153021426 604154814 95198897 104883016 972827892 983142115 506195241 899326674 481017318 844253146 863967398 982575646 468668847 876767855 575229381 684880968 267242417 984393633 624718944 774697375 894800023 963337900 546624991 936431011 397027379 847705472 624497596 711281869 594284792 782200893 802058463 999597489 637196308 813947881 927139780 980988971 218441318 488358831 190274585 386735355 550740192 583041766 136324071 986897575 692816418 758476461 812912543 901471102 284899621 370519936 987092336 996467101 812809568 951901983 877740760 966721936 928073164 954933953 387891994 480984921 625529845 757835953 72429943 770586558 892429277 914039070 677947219 843498649 105351728 489500966 601448759 683157814 278992108 646321885 105017357 378897015 976799070 994010681 605405911 868135205 155997021 550437493 864293748 924060068 470967410 765060919 849791185 874123774 520339215 713085845 168080506 202127544 876431506 991696529 696262518 933183689 351408508 774666440 987135661 990400279 121947459 237284024 317288205 521099106 169413134 542245772 279671549 685820123 262473467 645019999 818704401 936599999 864770301 885894375 841852497 881675829 458588380 794477355 371363792 982165582 275324631 460916990 433173287 996990514 569638901 749686365 692623705 945981671 912645444 946549576 809575730 981968270 855127923 895535579 880389988 996700856 839890101 926322899 712537263 724532793 915221672 961789969 911512651 998488030 355392604 507335371 815697774 923322546 645108738 838962517 518285033 757698698 573931625 941868212 616064254 894381414 996367237 996673627 371631659 854011630 972833068 993228399 617546458 655157957 365822472 586713490 329398321 898872402 966663700 974945394 544852998 622901126 519144958 724475669 613864525 960758136 464601112 798912789 562004586 628936269 406815290 891814049 687959969 949614974 30992134 354707095 900325084 913154907 250923766 378416044 302369875 823746025 578438337 633017478 33587906 608158981 662798456 995760889 122073078 356202150 368483548 483605085 686371878 964443044 541316945 598208756 105804185 275736452 145164326 594392620 19108554 514908612 346899180 551732178 762801624 816936347 856433195 934823578 900726958 942134149 576378508 893877907 671726541 933442751 607790503 753522155 46460615 317445714 915521434 930356988 746640257 941103753 612998679 869335157 576113950 839653079 77534874 794697294 706786368 816278993 441943668 622817965 298468630 755488312 90064504 255318888 593712142 749417971 973844206 990028982 368446759 979217411 160546022 785989380 372917083 738704467 497559517 630037250 451652167 508611445 320972177 915758185 927146951 971352372 692719129 756301368 106712785 202708411 589673515 997957996 676040049 819607626 814383960 987415162 503945775 710751411 888040340 920683954 556129267 632425061 224812544 552120194 410821438 689915157 165775693 625037090 837523322 869080328 531045837 637339033 436356133 514596889 906593567 981762947 205420378 528892024 188982323 491906757 87766664 349562348 150307224 992727132 433469459 596232770 529077687 933726157 462536119 572637117 825634169 860039706 765747444 794930392 2414630 165458847 939208566 952642336 251396924 361548883 236040178 963537822 349281011 458044767 815319675 849291340 78411935 446266172 622521020 774325313 2708093 138021180 550714377 824879789 7734696 210677370 942475521 946355746 842932459 997793316 297165373 638698885 336050034 811466712 646836535 974917894 461500982 674972125 804933721 806795018 202667274 458999783 974441318 987551812 613045814 950475130 779197399 969032683 318508308 990214326 556001101 876999692 489297360 774677707 61011202 906313691 308541441 673485993 551983984 723732996 52215646 674712662 762141277 906365412 55282352 410689373 946111040 965126703 517608272 714777820 913474811 950426386 190517612 705381632 952069694 971138040 537028690 940380410 547990946 865193920 927898326 938538160 222969325 791354915 380739819 517700980 44551785 600232199 274344322 372121725 238111764 616976084 318929003 566232972 699216837 861644681 101262213 680288002 160100136 777125332 645293837 699072382 251290952 608116758 586119940 924253146 385320432 794253968 887364219 918898510 989589771 992137333 730494754 748863418 528920875 713450382 3294320 406624777 954392418 986807708 232195406 611666173 548418782 760187816 807412080 934252508 944304952 947049326 612834315 726553858 905203340 939148780 536267331 898211681 261337472 666638709 755879652 960119668 121612674 128724980 399687248 523088851 846555095 900477116 120617962 246496383 279320027 822263579 254596679 581551047 554116391 822131908 164159948 217721467 813177967 973301127 712977175 863931450 58455446 593059210 534347890 559980662 735076644 832605438 403986112 581535078 729591818 988184773 556629781 837174498 814860995 917225830 31401246 699304629 46118307 71980202 473494490 920893748 54970926 999892355 219200464 359137939 123656032 426063060 476294869 552663897 470916699 524368154 64739202 977009037 608923654 829668854 723935029 836275035 693585590 860520026 386362571 739186365 907331727 923866183 37343891 312891688 597470885 978733132 628537183 839261255 74433406 468463070 867954570 945260022 520023338 742277975 500989017 973678980 278221288 890864795 833331545 979019208 9258991 417285728 444750114 735510849 206068651 663124405 836917317 857618026 936973014 986723296 149388162 746667219 446552324 458777352 364509493 935629834 256587600 671904259 267108842 960815830 665960582 831480466 688849733 875210371 889755566 969302660 788197381 974348496 500313232 560394100 721183474 825006585 386364380 640663564 203341401 597707356 244176070 299535925 99564113 514371320 178754303 935041071 79982354 910429872 337847706 729293426 872316526 889819588 521090802 541876922 19701045 796376008 815445574 816266860 848609897 963564916 519442829 607774183 378420409 449679482 74532369 192501942 547006286 702728325 591828620 746889227 51838186 376809907 862415964 918372304 821397483 869992388 997041091 999906092 665230828 758261901 376118765 602009400 245157312 903012054 270532991 277401941 551735236 654376577 762432134 769697361 110751336 495720758 410966183 937910301 873775392 987312197 975612632 978051077 679789330 712652881 432051504 931394388 224841410 372738958 377793838 612496875 701100416 731767920 127177071 773396920 355181127 459763034 630040080 713382260 297755685 715587655 385383545 786938424 852136322 918109481 289473529 770623613 511056130 532776866 357785336 555565728 649648770 710092589 623386399 762805162 698434856 758065834 630285233 815310496 660934538 861777789 577246497 730310534 50466809 300168533 572588789 839901705 727969393 799476554 420578984 584856959 427716549 598839147 70003971 479721558 695517328 871287226 450181806 884357220 529502568 810338438 572102035 852990043 125972913 457771272 323020042 984347641 636473118 986063397 129200212 626943894 453225029 494281958 620027074 785123720 837925851 959362931 113109968 120464416 231534534 362630798 739413834 940854527 562238495 873542130 134883002 910488441 785708756 879752980 883771222 974698569 549340221 892333664 230362298 746846071 36350631 480017780 99690026 385258161 106097960 905367525 133888321 908246351 197128287 475398284 247045778 392928730 537884346 838098233 165737960 389877470 509475577 649850780 759756087 846671127 900890675 970965027 141238628 242017454 44920150 440434109 794438765 967876912 576940485 930066403 41001892 825491718 556855908 818323567 788521023 855235847 337404969 370797730 492144865 915704488 314012450 402654026 671304524 783116966 318847982 577346638 127897195 659097667 346525814 837410523 448139736 645380169 976395786 995583565 790717728 969135092 155365622 640023347 52829265 703328429 980682987 991779091 206181971 927388439 94489066 714770994 110360559 480160775 948387125 980264693 731930857 733272238 993305566 995023930 576692381 714847073 74234409 152104239 691523670 845859194 156585830 578355871 727062699 857601338 17822242 565763530 902385835 934969916 502933320 612512659 968289421 971837768 571932704 964714562 686167115 941029725 327821143 848350014 872423310 887030874 669119358 671365767 809775234 880627084 635222772 871289168 754572074 784104184 71036370 274013685 214949260 772864778 43397722 503015156 626690545 639547479 504758450 732795711 438472317 852287604 104460514 155268137 181109029 912339894 185368033 859133146 352097231 913913730 769756356 995737660 505394265 547194499 253852170 703312123 258507293 856916995 445409191 594798941 848964827 940348021 456750521 746280902 398695364 886015368 505458647 878246198 570560772 594731430 731122732 885743937 856837951 978268792 220172127 281420009 547950962 937582549 153427218 645370993 53801904 511883811 437587539 840144380 121391289 231715404 382159158 669539617 435264907 726626189 763067916 880972133 954054966 976776000 208076673 984901637 615449841 693611617 385523432 403101808 400484714 459837713 211316679 835919818 545901851 650680947 429306414 448749114 905785627 983439970 196898109 809511702 446988648 921175081 73022040 550688969 381929195 657869266 132741382 883142152 703248929 876998420 479380033 907231853 873877219 998733036 32609846 569055604 608886175 797936122 476335453 735713693 234070371 248760274 936016588 996030076 573358284 694983321 75856949 448935830 207139311 578217286 87962591 819778563 687062795 811535914 890999463 990903946 742760425 888010544 755700219 813025683 453702144 962506705 18822299 135859264 478292300 657605440 783276810 996742013 691334830 725855385 143501007 627390093 248160185 509787475 922798395 935474181 144518385 983436148 40124328 989473190 940746657 981627870 764160221 810039420 292692112 389499135 263766191 703874102 674134682 923247987 238159132 933165525 444625221 877344697 494237306 610229991 858688454 953948602 273359958 533075167 627721118 645890832 982984013 993202278 17170215 637956545 855837683 923016460 597501157 696443145 731043135 932587372 854846768 874525482 231892348 454636344 17542037 764086421 951886701 998663425 767247610 902429074 166038174 507894824 255698077 706623368 152854844 906825320 334900567 558860319 843931285 983763009 277420619 726297936 725188581 895281103 62789156 751744669 251542659 568412066 256725030 461604202 745709420 955809927 252884193 339670762 112009531 400877743 172655459 418844137 627989665 799329588 144523195 599149940 721775748 939684649 711432 535482871 873613703 965157468 52865957 257118092 415924148 713311167 464982847 953546457 453182891 921742113 164497763 345848451 661325536 998587689 232887656 716055886 254709233 880905779 749299535 859975275 582007639 906351491 742531037 949802277 730506843 868602006 110471671 410688821 443952074 986894428 629572822 831417580 534483071 931979992 17861037 598480107 385920045 819465910 664013526 834846680 461865879 605324318 367936397 688652868 216894266 694698132 692071567 947334253 30022600 184126781 632615129 769242166 415986378 554609362 952858835 995646532 176656036 255756403 713406544 930394123 192522008 926402160 650975865 740744010 626522878 785166094 869221425 960281109 443236772 966507583 999531856 999571441 562027286 728567252 637814609 837350166 985067521 997095516 376305817 435798738 486747753 510782968 107910157 638760555 719885714 869596579 350726444 592019767 663960667 805770225 41237751 454594624 510458400 896230017 16480575 594559591 481165320 533114584 60653068 430470252 398724136 601544189 156807551 509114752 891330084 975328891 174920362 251315527 976625970 998362055 428709465 708792993 810547412 816572995 65109760 510213614 819596168 964511043 425386462 709716068 78051565 316914075 561461161 724912374 682049467 853640633 465711488 589632619 195836721 841955248 377505734 966168279 906465814 963423308 224116423 978112801 818239961 979326561 857264436 905776006 712928688 854197166 173841305 574846647 601632828 681142053 255728436 340252119 619067665 912871860 927032027 985023554 967919693 982553326 194666593 273723224 150928703 621176422 822458969 869327654 370507614 671758734 566948208 652687642 580725588 945822015 617862014 621731399 924257113 954142236 882937058 939380410 694915169 904496019 329434597 773353081 468478024 741465718 673930756 800613964 503116654 760273873 107827106 573978639 821153931 946389247 601907198 888307524 336492288 604804281 293915964 631928504 132595046 608245480 111497892 641930328 247944829 582478799 747541858 839572026 704422608 897561685 861547936 876811403 280610687 836582648 447216000 468767032 768348143 784082609 424345476 907787377 277357142 956924295 687102085 977793546 593269050 922381156 642463833 833843024 328897062 557526925 593421045 634246776 828311391 921360986 16708008 942963753 330908778 940465469 844127800 857045849 492562828 769988544 852950681 984742737 647584785 864813339 350682446 914004085 592593935 729412107 523172913 731870331 996408785 999728759 720055464 939723875 165101994 354987871 131608667 876038378 107163892 606512634 798183630 918222715 681156819 790983472 747559210 969040619 845776090 858101505 525382447 822447742 944796746 950828032 422110963 429455556 573522638 987036008 194305075 578194786 980947321 983256511 787110837 907799198 621484380 914633303 404841190 788941043 378898124 650839977 382758740 560058019 229604551 881398607 872611390 929554481 736696071 928801662 760289625 870280255 617420792 838119606 333444509 731074658 873045958 914166065 7726985 130507345 925756699 930407433 232621830 326976739 479188123 753607064 105688825 633904147 843601474 887799528 738678346 932561710 632834859 728785371 405317792 878271158 779834233 910963780 531742877 945032299 992643421 994844540 595686756 608918513 483865931 850525953 188133894 322909180 553336244 984746441 588017114 748739716 255656586 304070071 659287624 838801340 899335537 987693768 857897398 935781641 801783799 866496067 568904247 750199904 109087857 884322208 718132093 721277777 477481160 855769764 781795163 809321677 791037452 900638304 696836029 897517595 713503831 893578159 252399727 563118562 880085974 966660506 994070622 995026461 427446925 945392664 804132816 971356392 723653979 826965482 887705375 942879618 889939252 954741910 215951276 442292973 695775847 858316621 64057574 120835301 440226177 961841696 959401373 969339819 938092577 974988123 296512715 434136939 927704285 982940255 377339367 873769782 87303921 924894528 176416272 651606525 438933340 951887705 730140956 867268980 410458319 598103554 352672801 902153274 537587634 541093061 792484798 936126804 805362929 851915427 221635774 664172291 565756964 639224677 725591371 749036038 250228126 923603535 102294458 781724325 579922485 805434252 497875620 633896419 429672264 586037877 265887649 516866568 714209235 958326679 723330934 747261131 826540286 980721109 97697646 408625837 574804678 711144182 125249138 418071810 80476325 833589506 204023415 639174310 983415600 996264308 911287423 925655332 789649550 911483478 297033728 306011131 815132905 997766124 892784232 941145272 589247581 989713899 529560111 753239263 809565188 989940416 166172349 691861790 634584465 836427977 267072154 995961577 858899430 979495614 404437526 794753192 652080473 883383052 415744134 751194774 941274283 949949820 850725205 958190373 745203619 800679750 909866336 985956588 685887012 865450106 221708084 854292238 134803407 544567080 488401870 794944421 323761901 620578840 34860598 945046854 942309367 975095615 106053906 830993768 481678886 791609713 839697472 928727086 798472351 837449418 771954075 927141464 888029904 903349466 739678754 874469001 342079075 496119591 37380543 44095274 452756146 750520970 622917669 654317949 63066970 192779085 915568636 927655685 680485182 744544157 726144062 760082854 413055821 670715039 590183206 841583033 800475847 845582139 433080372 655005859 484613810 488250142 358054158 728714542 798184300 861062819 632363120 763004685 747073421 763726290 948393064 959199763 586026837 850098232 95588835 651822875 224146348 664398596 587507985 852531774 897546878 989808355 297141351 360744471 526703139 607681830 943710945 950792497 310058210 607048413 413913482 822838178 328819114 560190173 924372564 961819623 182316713 318841977 828105510 938085331 219091610 733996411 662379164 793794301 754020289 917905161 749462639 925208954 362319839 820956171 887817738 912454727 211724748 426267979 799995819 941542686 952288814 956239654 450189169 925199498 773174068 913454012 378502171 755573569 635520241 671991123 107399557 737256661 88700388 597783006 300560906 836469529 219662240 690399040 157700140 801113766 883143201 995228131 954546817 980583861 334019209 870033471 757000808 994800390 950738510 992285485 173085444 688561837 747638295 785642460 558682476 953925902 31048257 967323175 622480226 926592502 27923226 296190006 865433797 914251212 159051698 491625007 757236790 785496291 404273428 922426348 375632440 700699544 239929229 616728020 822716810 963242282 99349825 926786159 801218973 886982922 512377346 591843551 304071047 502002364 616738467 917202053 900803265 989689734 389570294 964080101 791190369 882361475 474208877 915417587 50932605 191683267 774714558 798364834 262024735 805887390 68185365 610841719 192863425 791635525 836417105 861933645 728685043 874649431 342637621 392043220 256716280 493585017 567881436 911637827 918324286 934699663 974433907 984554236 754348698 841114443 302886113 717525911 558501767 688456203 683906397 922525467 337666069 782777870 606099325 803734278 836366214 907911403 765920511 847952053 349433308 792205967 317841602 480510625 604864836 847787999 453243831 750889434 96416137 964258988 11023787 921171861 105265469 535891900 996719903 997958618 561136223 706494050 765457566 933552828 704639534 814175255 415225087 471977117 364140672 601639746 818041125 908472278 140788287 789212614 900545119 915738384 872300630 904047172 758366491 775276061 354161455 759173701 890980695 891019556 960401002 961775292 468071890 597573272 443367796 627847813 785516155 851773164 898709697 998101956 596117981 961916122 760668914 873482041 999074865 999283020 818457254 916302131 833276264 850605975 425865802 838396667 569122217 681141565 426240968 826545592 988066250 988983742 296716627 721881911 135800340 223634412 325792458 620379576 893717981 916834345 167626138 606595666 488043927 936910744 932825163 977331288 97270854 792358534 468399612 785375682 302237588 438233300 529576268 778287980 588469644 907801359 441356208 457645457 148299533 406082900 164801663 258847114 508977121 741371376 508369346 615725882 274853400 875828665 943606915 991655979 377698863 856826214 219162249 967102084 150561988 888441536 914231104 973747971 893355618 956667324 177370353 314770683 746128831 796535267 498871374 514473223 803909066 876440630 776579953 932850807 181684100 333354888 583684342 675212302 289395606 446476186 5394250 695284063 160535220 667981025 555967843 881265485 271219078 792730681 808139921 862729802 828473178 952481899 353626553 633945824 854045104 997967277 727747950 823311082 523787267 668673711 868659173 926769850 748318220 838437498 452745703 655488349 583650032 851436802 332830027 483398107 93766704 164280422 87229806 380677433 174292870 279569369 27833163 34372589 352538154 809206628 784821986 880661042 375707989 733407164 751880668 892135341 760999219 990419470 284030347 805993275 601711601 678657287 769904830 846768768 395591537 876363504 886295204 945666382 285871943 923151483 933726117 948627944 696617081 881194339 549094722 627735036 266627884 618139011 197788363 284234874 843697984 907556735 966760064 979821908 34073266 284144474 522102920 997273438 746434749 977236556 131165234 952625425 174516544 289006865 412302078 605785906 463840184 466625148 678422345 854076921 420199726 589944882 60091531 866801466 212558328 773401221 846311909 854197806 531879644 985960125 31811832 523025774 301152441 894014662 541330451 737149157 677384351 735265988 208688160 721677236 343585702 364398893 128204451 757863535 60064858 582168093 527259231 661071722 652003670 947705750 82275442 451837000 877474711 886333758 946627365 952475356 422958473 790939883 155702503 615203850 420025121 884046093 552858152 660539740 826705234 893185676 389071731 425181438 378803972 483206098 878392091 951853057 477804607 530662734 522100923 893295569 724676788 769439600 555513723 642609815 576446577 862350565 360220231 794957226 800483592 908449020 615657456 710829390 353622670 633467980 588976843 617058464 380629203 520930715 733257603 864094517 928832585 962256624 51849324 888382012 525856928 535111785 934569589 950262614 991757773 996063929 504163317 623095256 203948555 575503746 95794348 717582190 750666493 861290328 129293822 488678959 722271147 846716671 966669965 990618486 248359643 332862421 273166430 388080715 252745693 686297936 475564432 550154501 573115773 871012890 412150055 939760224 565853288 857547224 450279131 819335880 114309922 771064501 467000836 871982860 530136783 919468693 821300183 831571893 39880789 665322800 525411382 552653535 45836459 61826196 473897929 714020003 924415494 924970038 446322446 822930383 234257910 983046334 318426516 670610776 253779304 689926979 967234795 967522314 429015904 496322094 140869412 967809653 125777986 761529020 939580972 987827562 428786955 761156713 957243314 965599392 874753331 988024689 801091197 886105148 577676614 689765084 585231979 663449712 498708430 549349742 210115033 801372112 604229175 776516312 609757130 613370506 884614215 936798733 353319549 875516586 915271898 963678871 978111785 992454420 731025451 737701479 862992807 925142135 305430209 939694107 792423934 912040853 632890704 681071607 83109359 95421748 361079430 706615649 883215158 902024562 353652473 577999398 189647860 915467635 909029881 930942513 26419488 399414782 851567353 857852244 613035654 820078713 282042754 886898878 586510254 808069721 923897920 997653356 565710576 945667727 669203353 739284165 903231247 976052960 951476936 980957196 437476848 931101674 140172258 810138286 343800002 750601764 155900156 611848654 619494489 861406257 887055168 910554446 881050428 992692972 878894183 946478297 940926782 995124735 273983713 714223517 285335243 439168839 574949268 731474250 649765564 847081850 953709962 954957821 352354915 674805438 634211441 669896967 629883261 995560771 285501146 667975722 729477036 773930179 30752294 158974787 687130965 696224661 437027007 663541469 939972623 971530848 894352423 923836293 247852906 676126979 843767983 961114912 715067212 926483599 157106310 290133852 272881079 765426341 171998844 541303138 169002745 679713594 558828412 702892085 370078359 449535418 316635091 507854331 903258862 933661669 698996216 893422946 475980343 621346230 259289665 490289657 250518679 286910835 489251553 749306072 681820912 852259563 74806072 243749594 844017876 932986967 704760056 710839032 445561483 491943440 229474168 460414862 927566509 998454102 391799333 741868884 578137120 625579799 916723317 969472262 954389586 979953468 489549794 893032945 116135067 631545348 604083499 913128742 850752109 890614957 718107885 820681905 962703233 991714625 831119468 896747600 488303780 678534105 237806937 735204848 992281087 999875045 119870907 208663319 421678389 598151962 540880259 969518485 466576038 994897264 231306517 687684208 294217739 595189483 268915973 814553952 564645286 734078784 291429641 448645522 41067074 803753566 989901933 992397219 465872719 589776409 481941503 884058650 30271804 632431222 486671247 993071812 287844591 369511260 178678800 977717794 347096844 364467199 979356216 991362253 630924414 678360621 523898518 824232671 635726124 675015855 234458477 603642818 188211988 410060716 124847209 864300086 818598378 847550027 69001182 755283625 152242351 913122225 783583744 938773212 721245958 785348148 172008832 387222920 626342704 746382898 391511158 664903124 423973571 720578729 898133363 908488775 844500055 900480080 624082949 652822035 416247546 833723254 998221282 999730319 720475141 904371081 308871514 496905480 755592045 842014531 231561720 706502357 230303638 493807878 326736503 419963465 198213368 977516976 165005821 435035537 49623430 641609001 249923666 430169299 251925607 493285275 61384279 397960598 990698900 992730041 351493159 763935568 363647983 710536881 111267361 323609477 551263160 707975329 194191382 410612167 56276077 650899511 837037162 892673401 754362790 768788826 551764757 746242448 302712360 902287036 500319374 551363071 924168934 985589811 315374588 793641096 509278501 659949692 827888951 950580750 134587734 522902000 258699706 972818984 573756721 672867813 342625242 482210750 252720435 737596590 895025058 970770026 810028814 887012357 968748550 992146641 718347949 875916771 583664088 596539363 974378051 984658381 199067222 657731370 870150471 906430502 395272605 803299699 189188002 847400549 204696668 551736417 414530425 533012381 546652519 807046830 652068977 782759395 286213053 741148441 869041757 988662084 677208562 892210625 863977147 871452415 414633633 786422250 581482801 750910600 97202312 681746743 74051583 970541152 431065276 811638438 316243833 637129103 318704615 900322551 276217559 767343878 865360083 919247804 28234896 185973134 960256385 984307400 584521256 674638994 390961036 416013956 601881928 649387486 352178150 630800760 170122024 563313509 628467141 658837750 859066645 983285889 422751796 840829990 942459595 983334843 886953647 989816138 899129149 996127960 242818348 363277842 545582412 723533714 188964811 990405773 43258302 365463083 997291569 998018712 749875688 984337778 762449338 960752773 539695848 785252655 55185310 384127874 11587287 151968996 778738577 971583855 205818922 303482068 688191430 817698622 897288221 994593500 376147740 803786657 581450084 917425968 866621347 885250971 9498219 220182112 682474454 887316336 904299116 966936822 232354254 553745219 65730100 746713648 178165461 910436496 811936625 944316838 726754384 945798519 898548172 968900286 91149154 214350551 24065086 291009701 26511625 204024421 843627534 988923610 63925156 831197296 685337260 860486963 232872280 799959284 116763882 216591856 541529438 889098187 729508988 950988996 659941535 720834190 71647488 985754189 760554010 810022783 269976630 674583934 383290255 962636662 511069172 626737817 366329206 463525103 968548200 997937872 535625149 686383678 915704276 917392926 755177765 930861557 274019435 425785414 403313347 553893672 30805618 914892433 486365705 753189975 169418998 544410795 713028509 853493590 342429790 788406794 454723611 786220958 248612456 293965519 277855881 828599536 996607607 999920864 134902736 544947496 437661938 789220413 356522740 738901232 397011974 665607287 618895461 972715995 845759461 942568237 301340057 316866944 873570177 886396177 912571929 923357344 692849479 766005237 675136292 696531123 881440720 894681657 183833837 942364520 717793679 958783426 552881035 602611738 4437956 66060669 718299034 850057660 182962619 759612002 942415801 991373862 580967576 877230996 617651675 995163000 741323309 854693884 298077850 453993552 366477546 392627901 774919137 798456539 571098188 839550593 18358829 307818364 61274351 231398864 562959875 953107845 957452984 975189364 514896461 551260984 166752998 298649190 184590649 830620280 799619931 893586321 936490234 967726474 635435572 683824797 793354930 793728041 947853261 996508088 889616978 963432115 794660963 956977906 733354967 806758417 667278833 923169099 41376846 317307446 165852777 579127651 222714166 443975440 83419372 674015664 381713835 390321050 830750988 840593815 20271853 131273144 673704280 705102533 759177723 808554925 557178699 960529195 236685511 532817273 838308023 946044317 270678690 999091987 339399200 837439821 189797796 268004525 173601823 783783038 799988918 805477645 554719701 776590850 279859412 965452372 522369815 692996535 892490413 983413469 583366472 645721328 4922638 589276910 611839920 667874139 52418832 952368977 100833711 709452117 166815052 599181123 876369725 944980872 683770760 971480513 306165759 736261181 144500932 595812362 13394022 985894500 3597106 331242527 683755317 735321793 580138164 901044035 958375575 979274420 359811955 851688581 648048197 932303915 178322551 244391602 275320770 541248485 35958416 907848057 853964221 883101024 100544794 161024738 462256758 588596691 697257600 859399552 87793692 921987305 95697280 928653649 827308017 984630002 956603798 985627825 432042611 852654682 116621081 784188398 588429087 655155904 494740964 514872001 748482656 930603967 12301865 936379993 466331040 880391880 897911744 918768928 270882019 290449938 214656495 614519511 673145496 893617384 564457779 989161008 127800043 136598539 895100452 941754284 706904261 854638668 57049959 858526933 286022625 915797765 684173219 938354923 862636504 924346248 380279814 533293236 132701496 584428413 767732730 850022176 111152644 670759909 821960341 893716568 914415881 970507384 982895320 993461977 277553626 896232783 191012043 478488526 971331785 976924292 836051381 882702610 741953297 784960224 538769175 968202866 562303696 779577055 915404433 971343001 787263325 788146470 614166543 619680027 142272434 772758623 559068853 648587639 758173761 887263114 660093379 969233469 274373998 802867965 175120088 787306661 279812932 309251714 285553412 688777051 549759178 997292008 304379739 460575733 73850 782612477 873699360 881733709 922513442 974324410 730294959 954201437 735634815 912258520 481308182 606041451 831797641 980531212 890229738 922742352 437530656 608408721 978926831 990236489 77279772 87764776 660842831 936539005 5546549 622186302 826454700 959420950 901971164 926264374 226216381 551461643 877909933 995162630 467346680 646230608 703030395 722037306 738151558 818849452 227685179 241524237 640295873 848614637 845341633 915696969 122643688 442966158 314117132 912664165 992727191 996472534 89905468 329081315 869311390 939183511 149880107 167972581 77669556 705270861 801171916 832775036 551625469 722571873 566175542 645943165 304285732 951202980 991671624 993563007 536399681 641256486 63103272 924102215 214469379 772545666 28389943 431464020 218918903 938365987 952378137 964207574 486377775 983349609 223706729 766823138 509520478 603273875 343684073 876272574 950944489 993047922 388281332 523895910 923209651 926833072 464157988 727659334 731873877 776076560 345481926 627254847 761819485 935045459 823690039 979072406 285924593 760107051 165271175 351429048 946279998 960568154 319753270 885532394 400799186 462945667 207882685 447619523 601514387 765577283 900799404 934381862 883698619 972012181 374214448 884184497 851651984 953503819 17812431 353087404 537357878 855894302 194560566 314830316 570266952 842332868 819110785 920578301 846744773 887602131 519593244 544997457 288864288 374315866 65599151 270862195 186392678 499739080 14980164 818202022 259978699 415440214 212451508 526395311 637087919 686564623 968138145 999910863 869734975 941086679 125537331 367543542 82484655 796504918 557186824 927424074 214393033 843344427 855894479 894229015 233561777 717853454 338350537 735232347 730730613 956600588 960290552 993630639 99445961 490943270 784704474 965333771 418108991 443981116 139801036 439100005 972334808 988781235 292045632 527105008 109617330 837644414 210187696 643613205 958828271 989368080 488137153 590051075 120233040 735214513 949514519 988880337 658046408 814097591 287747933 744039816 667290115 780040105 159814966 660513734 117455147 223580397 234145451 785323476 611452913 983704042 271991278 706496828 481988689 974501912 596394766 834443317 300774844 638799174 271829096 892986234 813029742 819636405 191968473 616847075 320072011 358633606 99967063 619203663 239947379 447739212 415747992 837778462 587236592 650421788 870083636 947126512 148507763 620970466 415084358 951192260 194963009 440922409 957166120 988215811 686875189 984228298 316204672 966211454 606014805 894153420 946053292 972116674 53003686 930244045 64826315 205857505 496061532 663272990 621913137 840366903 893378231 988102128 284303672 911849509 142204651 199633078 220300030 968228179 313482778 725974965 700396649 896049939 999102807 999574719 585201858 925768101 696481559 809880053 316229383 700311400 21225311 147095107 370287918 842839062 42830161 499827911 990996579 996910250 435322476 999510235 836406212 862449675 847701526 861424473 907009386 927292361 676394745 958359382 988132580 996361839 485116202 534591570 845057251 886025045 253923859 307910879 384148046 822326056 870879555 994359222 453591696 459864859 192313473 982791903 188560940 472274038 133482382 464431800 541853286 991386062 217060085 367076755 243715096 464448959 253753311 614639053 833077215 883045196 515868679 846094282 498122767 634389746 730080708 907936695 236687851 944189492 994251599 997764347 633272984 968735669 886797999 982091620 802214947 906751256 252889818 949160713 336372338 574531300 577975791 643026355 58483514 255306670 660139688 743277708 730173166 996713353 577611151 713679043 695748764 960131921 729918160 824678633 433127713 470528764 531019940 875517270 363461064 653088256 196477551 732358300 626547161 924909340 879372165 969467517 327419416 962669772 873218837 920607549 384743044 399192576 616475242 890161890 294563596 409737896 847308462 885924508 131357415 516580855 615327302 825904288 850783389 860195066 159878921 569440475 356618932 610728683 886872749 892387104 362664457 942242944 652758918 939993821 712132688 826001799 573845528 866548074 928675233 964125530 560004584 578445586 435398834 733540751 138768682 145687474 418549147 659533132 457383277 505665311 420199539 945760649 205254305 979327246 119933789 819705499 289392270 394789759 527156899 799924421 893336979 980228597 922013076 933488663 656572769 892063648 620195056 671643649 677642304 921885616 660063775 820102525 52586189 139015709 707089264 937655459 588992046 766825384 48256115 632390226 390428219 665647142 935751194 950783737 886182278 969332546 135628086 344735602 74446796 708206863 450944354 701240780 15226811 977769269 418468075 721788150 390144545 739870088 775963902 938905184 120523160 820347684 598571879 613245789 602351716 950735410 306343370 728340815 785354310 799075432 495688702 657084647 135382093 509822475 421013759 790894203 182856450 329418386 173254109 262099005 156482297 553569415 660939472 888082416 907731669 945445419 217402800 479071287 119558679 723188765 311804134 575723362 708867806 790877794 958712825 981008950 525922031 967070413 838196846 896160164 674735289 983547515 249128426 799973095 251919928 547318850 879628187 948183512 456815889 931285507 466628536 807436868 89278497 324237680 376110642 545039621 18678745 298677097 297480897 390091956 394445858 500488376 240590435 761243618 11053243 474304563 646793016 943488724 266734061 981166594 582363555 781573812 575081921 983842521 578144283 704478888 661996340 768113799 14066782 785871923 457309841 940161242 932181671 980935246 473984232 851019949 294410801 904449596 243088068 483533876 768247133 846258716 404078012 916579756 245434493 291377628 715938353 780650425 946426956 997899594 782264875 963501727 767392419 984857129 534994432 965818508 646139987 719138988 78444320 279592843 917776475 948473405 592385536 982875497 617582257 809332343 957759058 960292860 207312113 686297521 523569278 832037777 482625616 526724200 901304349 974457361 710848144 812138935 902012288 952766945 230587297 763070039 45327267 701497210 28809123 833840181 183433389 762320413 381416718 390921648 3916973 117402269 693771635 732789476 964117783 994224994 765094175 903194960 55228185 587371382 968834093 985069668 144714010 490003318 973781062 991533852 238084550 309145168 695381595 802792376 505892163 707320024 742324475 817898988 987819635 996772243 89953800 732566774 910282381 943608525 282265474 482825526 204313786 292628330 788170100 994894264 602992287 854217877 381419906 427410211 414044958 724612371 763971182 937793065 519939107 842441503 859571086 905827646 283350990 680650330 817227245 963128490 877980423 956510045 498834084 960096910 402640958 913289281 33743093 109998918 970582451 972720637 276806314 402794594 825421396 853723841 892645321 982752347 453631205 973615895 675424199 940917175 371691743 893865359 622567999 951290611 440933503 588356601 673588271 841866777 734494476 965402009 58612857 564611976 545348036 892915415 726270878 801152607 435371787 691801049 982363835 991237949 958653758 998386792 514244792 864071806 152922425 335420900 525464203 563669267 255280772 595860758 737524137 783931583 205891052 436447391 894799963 923306806 214868625 445877038 441253155 686913069 752355876 791690611 139551081 672776044 865991601 943098599 776725722 919890243 255759037 821549835 662569529 930086012 863311708 978497832 993997842 999022330 542170420 613796193 663167536 663389472 153477416 163922175 101418056 760044723 833918155 859676702 583259875 868321609 941130130 997748788 987854426 997745231 147227047 946708964 818083743 961920179 427242731 934800491 884497112 887467677 30949595 539481467 653970058 736747010 868176576 949599672 467070467 726467164 676741138 823543854 260030839 460856511 201329385 617224326 669243894 888930724 687572706 998168516 826939930 839180106 167000320 248726861 602092252 782865829 196685303 529138024 478294312 800503639 925461362 987573654 759965376 946192342 423189274 470843068 435845413 438124455 110547530 956058400 690221055 874660045 303424604 819189301 964393456 993883046 911929614 928587814 697683580 701221165 605058431 917782251 863856870 955517771 733501493 795467369 803854483 860460896 48346548 357737503 343256121 481048593 808230359 835133888 338589878 674060821 437725674 470353040 64170172 768402210 678801242 718038291 332724009 442400556 13014194 74794570 69457819 95273978 372541021 492484378 90530362 892330947 163834147 665322279 356768909 777977555 768621719 981735820 34142098 150438078 18251840 853740598 720891609 909931667 885416611 917955309 890664498 935678104 563028377 956473573 98157765 739491686 898796808 990719016 627964994 698816333 786609670 787466495 629890636 843580980 170162753 513367945 827116749 943186868 12630649 431826968 11517216 827062978 851087822 900776653 477737284 935035519 776694010 790662775 653616824 759395582 291258459 450561349 301348921 457501871 536455530 753783611 567257391 904965956 165908017 268788155 640871300 708385061 814942655 860278808 384271862 841329902 348328057 549205776 4356301 441448352 472862677 877704145 997298242 998206003 476787874 746409345 794212872 894804325 478339856 731352137 673987483 754252530 358508042 973115885 270082915 656562065 402219766 878747604 819596206 940388001 992966274 993371644 27034132 420327199 25791483 206878462 361300863 576910266 831348178 914465896 842367313 988693006 692508582 981077810 675489310 720413828 328522881 563662208 510128382 606146923 481443795 486129910 776897933 932980540 40921132 284667843 519963390 916752265 48545235 496969691 267784824 315190995 336585866 948238558 510233917 667839026 340456836 932718843 732731045 951992878 195835665 644130466 774934028 918904137 414559565 933018416 448084105 458604307 127182170 346851300 700609086 831364127 750633406 985391287 992589849 994776065 191363237 776258722 756549395 880231994 873146733 928247020 850905450 893347023 360319117 415015935 30118349 38389489 770116203 914590454 178303421 390593635 35413320 236005850 976608718 979662147 169240597 733297384 766352289 895217258 902601926 969665197 800543561 959957114 421047466 805062169 137820873 466340655 202274788 874987296 918030203 967303071 103967826 437892695 60942538 768023003 296647591 862172816 661621049 941529800 641135238 846134186 414540233 663613685 508105686 936909981 727482404 768349698 3958784 575391318 943617434 998841633 442145564 602480989 288952737 820421366 140370156 745557327 85262158 734771725 523346930 994420945 363625573 508030325 209574240 761805439 614694867 795094067 206203673 670459190 944591275 962157982 209571308 453827295 987465429 998213036 63031373 502547092 340904378 518473198 54665596 230086389 120177450 147763547 295517292 948816075 557449762 955582542 972282687 972627575 416762325 948050775 625799237 657245987 242427303 654853425 713859352 804559885 118028502 808612634 339682272 848979178 146816267 258471686 995601606 998412985 30787141 207566348 617363923 808147990 717302053 999894368 415692090 775222244 162946262 465767682 487293990 856112274 862424922 898189271 622964054 921223685 519156468 852471995 510987055 838626261 123500444 601163437 799338357 911836786 905318366 978092047 761631593 816947686 791081878 909447885 528339457 606458408 632832548 697795349 592449543 786619112 196770961 422180684 425752069 743496274 535021167 550061627 722314989 972869792 595765284 639507894 11788199 569976967 391497554 895141952 96069627 991942148 191861730 310247672 985926440 997265330 183308702 454988002 150600845 548321771 321447426 757159086 367672216 787475020 620775410 710001481 179921300 561439558 5422980 310557447 676818811 972104084 119124480 398832506 298404404 555143720 724110246 877500095 730387961 920379802 165514077 481591850 492986137 912211018 165826442 593681196 88119861 133729533 896587417 963803126 455417738 751108684 62576126 454916742 426108759 654142839 650505640 972954990 424857759 574531444 71771079 994580662 953610206 995767789 792439980 998009397 13153098 500764756 915994089 950262190 215703385 801561205 504687725 682224879 177214063 860760326 383594567 589802447 208854291 680128093 933014107 985922096 320893827 413085052 670448923 853208481 13678705 736812905 214724399 318782762 119443174 810036418 625082489 746243954 310089447 794762444 267927931 487218399 327276824 742038620 383594297 776842404 415196727 718135917 587281916 612389832 926833314 976960141 723215211 898502484 608235124 765905005 564814946 879798431 354138670 688439494 702001422 719403481 848706351 930343714 755376829 923188599 256802408 552367907 163947517 369305215 358453977 462013132 23820746 77930584 842281339 879735844 829785892 889210835 35864445 380310530 520972285 659685754 168921293 658369748 387878128 972887424 5123785 907207578 886797773 906787066 294980841 514008425 590687067 645267014 688406895 952190471 357899261 779341632 265380038 927486540 960894706 984186487 333523942 484251699 245149269 963563447 720076822 860823690 4490612 522974976 31014968 745821870 35466467 102418453 468406333 790572838 966365727 978305240 688735849 846209059 499422659 664573020 939299832 944310587 277537457 935519210 706021077 755581881 325793924 456261153 717868002 825142241 95412069 480151392 755131820 861721397 110287691 786456730 304149343 990555418 104105628 999099665 633090804 810116715 228859277 474157111 277878316 800431309 946293453 975417783 844114879 913334654 277869626 365609589 926879001 947083750 697975256 770913586 615387306 919289875 404433398 540358344 953653068 973319916 453962569 872365220 599637462 854500863 308389673 812241594 122833862 713843813 448675283 896253610 114543575 268723943 868119964 985018292 353372272 535356517 495988606 682974895 845705465 848249073 391081612 678663116 200466854 321735307 274233776 547332766 456533954 815340101 821396109 855294748 71039623 181367847 463727424 655566538 513707623 747855053 564174786 994203760 716393394 947376716 182870259 514450918 108181471 348756578 5516570 784206544 666819858 785430504 229328198 458584704 186628517 521141625 168737683 418745436 516954583 600719475 284627838 971921249 76766788 673481597 302412434 533393126 605978123 651098289 794556084 937438206 459236153 904172979 472068828 592286633 257986321 609396521 269067124 608119383 697284370 942466556 787135593 824950967 989807588 990912933 181943013 575733647 263567496 929154702 727347135 844101142 272235718 960027616 401638338 931904393 878717707 891551563 38121178 352609981 471719527 644479732 785173616 802107551 319369341 613452290 406001263 905714207 491153544 586172676 478324979 732386642 218373247 513022928 194453090 664068762 837541836 888560559 496726164 886027844 201229771 553437727 872513005 961032084 517584013 795228684 219642449 522006486 104254489 581670889 248254148 822890142 984180393 999101553 683527351 783405881 962608998 966736436 930165141 957054078 775228109 983808697 649742361 693364282 438208987 798538395 213049467 967684708 203353175 316767631 12416245 801249512 223522697 364664296 361423806 603803483 552656823 877746915 325124100 558483759 819919267 863655010 948680213 964360513 819130296 961524442 451581517 764378589 218453933 525424191 691955088 828742403 234883594 818221754 593802638 832384028 66205746 243538198 55968837 318682351 606811191 623284953 219871238 365017935 689056987 811194194 811557577 882137868 3632704 126315869 770242091 965115551 308078176 611791267 328950825 492132773 727360008 961270127 380251653 422743318 848835758 982404417 690096133 814418585 737644529 792175467 978047888 996916990 201459755 854938101 695371377 789061422 715969637 790174288 485891261 673626055 945697522 958935003 924638404 927306452 681898021 903751316 181610578 862636876 897252565 972539771 211842900 458615326 81415682 139789398 904795159 968242601 578108282 760028945 152791512 316564602 911606350 994462789 795042566 841997426 900290313 927624628 421745581 896597406 821215479 978463122 854402445 929271660 956945033 989828819 245869613 595205786 206957421 379526132 748302938 948599374 829228155 946407066 179116493 467708178 305360232 962848646 505668661 823147559 266803950 555773512 98307867 841544803 497353464 600790190 38348776 333686093 477687190 929839853 808531540 935932072 542322271 756796576 440643643 927531105 740914841 785586538 609820189 628756825 948773636 972943227 583215739 974690095 595843696 642054465 536708195 964943755 796843648 824213923 376881897 971513212 976050705 983282272 492624908 681481793 120280039 460679636 444057097 492350327 575086909 983268820 829842416 905830471 479093471 952321733 486912421 740913127 764268880 764475988 772891877 885433861 807012422 886009064 67134800 727212902 252759865 974374110 317663508 925536732 37110495 106874551 87532906 389911031 703535720 911021200 89796480 174139608 248158946 856378710 565993003 832695225 252383548 433327452 655183800 874301034 886947975 999214762 173852123 206557204 814643504 957862757 62795533 845543309 825600968 946839050 999641178 999683409 189149244 352699531 757846608 851006406 148054196 670668316 590613554 816263614 471832480 847535856 904209333 979621975 434582993 874324855 1018553 407649937 470370701 923047623 109558621 427929746 401020785 642717963 451444123 576390958 303347630 388215405 749859464 923663212 97765061 152795813 419526599 958425996 753253812 952813127 187385439 491152493 500652020 533381922 454101721 963482470 584887049 997921160 14597843 738226486 858749554 960812030 661508750 775464197 595900908 821302955 566328837 645536597 919157933 976931277 470808517 840200527 526590309 730609765 67641966 199818949 214287535 781261560 110077906 723624769 970944297 983347744 212461908 605442022 950025789 991689461 632733974 701880654 438900958 987333602 595118473 708973575 859541874 974227580 436968958 703809649 829447445 979672608 841832085 946145749 212603682 488914081 993758095 996535668 895745454 963841861 650395153 656603829 116464608 782706907 274710716 765750312 41412597 152631746 713617036 910439594 861477846 881219724 971123237 979763951 289874958 302573450 885515471 944592847 116379087 818200343 796675926 816235570 449075381 729531422 516505988 910502261 296754641 590505012 82546387 539800792 331206850 390893717 533991725 690644622 321773226 785502255 855576060 978699181 751663797 969925392 472285816 838976138 577890857 811511166 293938875 786770522 536156981 824256062 218323867 667268192 283048099 382985085 642404183 934742128 132578877 790776906 233626079 815510806 625251712 879482900 203150224 487298683 517263692 675744210 877417758 913726902 964661216 975329840 365296637 792469507 224157832 379062987 920724360 992575037 726410414 834471418 934871968 943615241 879546143 995239960 830783942 924848023 284150232 352025244 523638454 815917572 274306415 627689681 562332510 618050289 894034117 905885497 488316453 650705263 757652557 987084073 540382500 757277984 394156704 927539106 41988423 144548849 811008954 891053594 762626826 951754026 411509387 425508629 435026548 777047051 450484237 575441748 923986941 981630697 96307789 154614755 471532041 555906503 670229566 874731581 217202818 527286958 91220584 295774682 150193604 552119382 984153404 999261746 421493631 929100237 135738409 162776985 49601963 397370782 372760354 679857294 59094637 98053499 380848035 694244430 222113926 907083176 333951729 509616639 779240600 864781086 971338990 990169594 582888331 773512811 619891868 700391879 939270280 978078004 758799476 844210033 888559595 947799964 269361454 471628715 671112220 907233691 718271635 739266332 486350342 976258173 244166735 928188403 818590723 848252865 183456512 186292927 315416185 873242378 38959436 85225636 924291614 976818787 300222679 681561263 323445753 602676540 922447878 969879649 487845740 979744410 647362060 906424593 202896563 633142238 418685278 706587019 809505740 984716805 277482048 899108441 75210904 539285671 314207443 832118764 882230339 936315593 688024189 972725717 97023888 523189403 734545974 883726619 941815837 988509160 836102331 870597207 878514921 963348644 446348163 801214952 425408321 870237669 821414066 905678248 717102889 857349405 753802998 922112803 117166146 759851496 944399277 995986527 139245639 578105644 564200179 677683173 326508632 339008740 349203796 843927871 145582736 703782173 156883425 277566005 104374563 712091109 559495212 646813782 551117773 740010410 194071550 567115992 487486104 521293028 645929625 693958194 919329692 995670649 202413836 786268606 535695164 717063641 385723786 425691261 493862705 728579180 89331557 489899731 338006787 786823922 299072023 749144706 817576948 824720448 918341982 950258000 542474334 766591759 68729127 724183346 457600996 625667513 103218104 419846469 521684904 764231801 539432041 939002389 95645998 211994803 644713773 794380308 438819242 486181469 165913309 360720228 40278363 882269848 586936866 951540536 574934921 917087760 714395227 847020903 993909645 994588947 87745615 755352226 138871341 355185641 614945899 810297399 410590355 908502557 266940203 682297838 537456023 597338224 742879834 931698271 321237378 518490639 408299823 467123531 162517665 463225174 918925437 948512111 941961599 970311046 416786517 613350037 599139839 848017531 177631978 741148014 915751536 939679555 397418887 635394855 558244318 899115350 987867790 989769123 649392888 923466776 663854081 842629696 292151683 337622069 26028021 971977947 552322712 860452281 169989141 272065008 662672501 921442427 542959217 981720890 291888702 975326472 607353934 719590494 687157289 930641983 458304775 943141344 215780673 912476522 215763185 284197273 703912602 798408552 181806719 503793985 364538194 530865181 724457574 782868270 142430722 991056151 1530431 363573262 754476133 932407620 332341728 338910716 801007971 910309505 391440714 855976489 856544066 904414604 981742888 984501035 549896738 668944467 786852143 952689608 849944570 874779182 622268780 764426015 429072548 852163195 470636728 795282710 457132725 981468757 839713179 955076697 397111431 674135157 641149301 980601532 11674706 811281381 387054056 578340197 580468205 934075623 571646030 727711734 412403004 509520549 568386037 743362441 384766478 719360816 774243856 799345619 479350807 550129862 535757178 758020678 707037539 874155032 425149525 626664413 482997072 869540172 771902929 955161958 151871633 240965664 478823650 485285690 307185462 669871252 834016611 931869919 493022617 838263663 856609733 863366326 47331143 672783893 27220074 987569325 400128955 956652381 367011528 943825703 744262008 885521233 184385465 963533231 577239131 965072537 335196284 960736212 631619486 769991197 310318392 844506079 856798300 905337527 644305192 872790726 973800128 990659171 295452358 937399303 684495143 725311220 752775315 983542953 438462984 495535329 131207757 395216736 539635940 593593708 344554326 713479957 421270698 816350832 861731057 870133640 121009881 823359323 830609178 954227551 818073009 883869384 767133181 773708332 151585884 832314359 775669413 835021805 187462553 816129361 570261316 711918712 711107244 911084025 170548559 723819496 578863245 799509476 263847127 695239094 251762247 587160623 950679242 998302517 710276025 932163068 527374887 533502616 125528618 214576290 282964591 756162048 63919010 211958219 375812540 781278435 613292215 738651972 507153991 544737160 470169931 582897036 759991609 905116057 744245448 983768217 507439722 875353493 496929787 905386309 702719014 959172637 612189691 746136293 907747372 975445255 587878471 757944495 889769339 959047293 937214636 951898054 932535530 937450248 709951223 718636183 605570828 940715106 82507567 376195031 41403112 520813497 961102859 980419070 6041920 967682088 165247150 504913478 627852294 809733624 731350829 740076896 342793152 532232974 783837116 890650864 223267078 632034594 231909001 440245477 442325557 900377521 569836126 846132771 174257719 297323025 530576559 693227425 929950824 963684290 832900408 938233648 798333460 944522863 656942729 881347254 845573104 866292339 852547774 924318512 395443085 808515114 405113421 830095582 714240708 959992616 298848867 652316422 116262381 605849642 399451146 589386593 985821852 986539254 537085749 757831808 830619654 949265979 421931968 714321290 954354992 974816326 129682666 576717723 662781195 665170479 78073893 770612983 131936050 724605643 303702518 398601701 982448247 983130228 756082008 798331142 68157334 902518773 270840029 307191390 487073724 818240203 232548135 296432813 735913883 887189131 102787909 326811028 5839191 561822417 350540204 927615806 127910920 948110139 852690062 918108645 639144091 921702890 650863366 703627747 173764256 256048689 722486932 794325308 789384814 839925678 188346568 880983738 74631409 103041412 780971407 969672002 620824828 763657772 594176406 725680026 826035732 921592784 641037759 969170438 251379517 284891180 684851584 892059809 534452887 910564521 162681553 428023100 466603106 509480620 527431736 638627193 195710865 762220002 64384183 254308036 749227505 824269542 77110353 612450189 862350719 917944936 65206672 999267573 491554277 594181254 634248484 919813064 54491558 637916823 142834396 289367343 15733416 451052715 207034262 490386269 384332861 486629363 361674389 978927582 757675562 947141523 421129683 860403711 673544908 685597347 400396905 932470202 428082188 667752865 494838814 923945491 214815541 551420036 557433988 734714945 427527104 436966377 145688237 471549100 675933245 872976919 671016898 977275517 478276528 544733168 314814683 907432469 306020166 988795510 595592557 634054255 911211355 974448955 147097060 748533798 464221791 751368902 930431612 974572294 729520805 959947679 785483805 995506477 680522392 750547970 185715673 791872351 281993013 768173275 817080734 966223628 625787503 797817878 965085227 992229089 780102051 974863433 508982911 709071866 580248301 998475458 799052364 976051822 128594060 624899975 404987559 517557651 522858002 824250150 673032277 820869410 170318889 615039478 744190758 934274663 616555443 734040510 50459750 941898087 5730968 873948909 225091621 572928864 53262204 80547165 236823149 438257977 821026823 929021481 28709199 994199488 901277136 989803748 514464459 726437588 258668775 840978724 587463272 867401566 835048796 854004207 18538487 736547267 563135820 674554045 869390078 892545661 465195426 919960047 20989620 318321522 274968498 760517390 268256286 832618547 860040113 972563128 157510834 401765899 528104879 750261386 469868125 714127149 510440011 798810151 346752337 952994200 578914456 672839402 971466367 982268434 229236888 734059868 927678905 952999747 195583984 269314206 427880263 875070543 58766765 478058952 685591718 919470390 391660393 891960610 63260442 131036294 674946528 710408324 789121523 888395132 840885164 885645293 488694243 586666321 416316341 791559231 18899493 922763961 981240774 986300628 817819558 897918682 524214847 988800105 125181914 648637829 365517392 690458112 314379244 686209469 278980772 335085843 583613341 698111972 622997105 942558522 695095487 852272528 412295750 743435768 451914557 596798083 996345871 999074662 372664011 873018619 919514024 994953878 91383912 174494630 993937997 996071097 217241397 321435669 671167066 897858942 299359873 945001876 879989123 976968398 150678299 421712988 101292126 429288205 552610436 842908653 939532319 956846712 598549036 895958055 40458231 683669095 744896685 943837638 956975533 957264609 976312179 978748497 182763265 525826584 778310337 920389687 32120080 693081104 837355893 850013660 978762553 999891899 242856722 337562618 617082804 712500093 529094268 586614810 192309971 491735363 213141643 464348827 609162507 913552701 793130515 854783489 227496851 786306679 8852366 221102495 667535660 736209250 880549780 929342275 485596127 946099584 138419830 980541345 418430036 682110690 149072017 476371763 167489398 894831312 568250049 729216383 369548486 931202966 39838927 396038846 937783769 989861600 140937562 240197891 465664327 937714719 496365387 879699423 776225440 870591711 301174251 345790802 311780025 791938513 727764844 780020319 260914945 319538050 163733547 981012515 49755175 717997427 213894564 471922242 497549365 713526110 743266143 863188273 550470978 767411115 477102337 523985969 66535879 325216990 305204603 445436641 370796708 415506292 671204091 742244167 223399037 224082756 7968992 978615853 987077350 997401315 80102556 354063177 820191924 991613045 369616119 491416222 942152204 954252083 12973132 134071768 261937560 448729808 781762139 813161828 789872445 869996574 622914482 785249258 690565672 753317958 683126923 846058339 278207891 886702432 923851811 996922287 310187149 693083680 481873458 698488171 746566800 998144833 893863063 981263539 578362545 985166204 794279283 989857371 118012226 358286040 610233888 898379009 835269398 948066220 231395973 231423991 937150496 995865104 275959548 979617647 95009472 357156041 994173114 996797875 594933021 895787932 93347583 197895850 812489418 880353484 590838198 981416042 567575041 731883809 504245975 837178407 839042416 917916975 672209640 744174934 860028837 918727708 607089109 857343110 533288906 746118332 31742789 458660282 182667503 537451827 279036745 517615819 60521948 445042058 697944069 710632763 121669756 858113226 171317664 344662229 406651556 916311691 657187848 787798641 379587406 838611783 291078743 798434253 104384968 677907495 786965672 791926938 403311780 850790974 86516040 766686809 101174660 706820949 747212850 895758313 884268273 947610233 333623001 706777231 629220031 954756404 133303385 886805249 563357336 953926393 825230198 846429245 136835674 146778571 395453953 495715290 949592265 983199155 358996411 439187851 579862923 872974589 276673505 419783511 554926088 692357164 83697487 133459002 36720641 465114331 434721445 613516485 995866067 996991815 835840407 917807257 375413208 742960588 933482934 961168213 985838216 993145010 308809 105482920 169686207 613689249 854831324 902129215 985579822 989163498 249545365 318658317 596273605 900231358 320723103 831286945 909120581 925980592 835182794 871882416 57865384 636121489 506893135 756104443 922710951 952815392 27517877 569544340 629812333 781515065 41000175 934723895 77047075 707750322 763180715 985418427 59585523 154539663 153920819 472581309 691168209 699359659 126235244 463533942 694461516 845451941 642189506 862202210 243776760 965477079 188865026 544411727 350536212 835873977 924644476 953716516 772959814 869438497 334467110 582788639 929193595 966934849 83506080 198929113 927140591 932619454 500534409 516496736 691967618 848470298 940217651 966973435 615650146 657802635 457201364 665387873 753237903 820941982 966365547 990990330 625910378 786343176 886101723 926632002 834365914 900746840 213264499 228121807 320326208 489852692 531666309 594178356 393791755 408682626 716392037 908572726 151045017 296017155 183134420 595378832 617117556 892673091 918801369 986343313 303443743 930160952 474001085 904828729 858966055 871502320 600395428 889747527 801540318 806843117 70374680 424901845 223522122 661538010 389250739 427824308 280829956 483213689 694448437 892953957 255366319 971784358 289964322 777677217 299136539 553816919 505921128 929088534 936712363 946977474 703833304 738189346 8714238 991281825 722364046 864343119 569724169 912346018 866714053 888009577 422092943 493428426 396191700 690021386 312121169 415786827 735868407 853097354 463712843 957733901 277336219 694752055 173752434 315065941 184607590 889498458 490636211 514480893 755180351 834427992 251220944 771953301 767676313 970709426 651951629 702146416 378165713 723519182 40836704 821469780 822780058 930270727 142706753 906247839 738732907 749339041 791626783 804448388 472702326 494268544 782903372 926895608 100019285 290367373 115259593 405006551 201105143 443655211 914518709 962551151 888008471 978783636 96547317 841774881 629329486 773304577 168336877 840350864 829600808 922055696 970805964 991057248 733638342 892726261 674621408 775132552 773414748 818264923 650142196 908057994 405172710 996731697 824900188 896976406 874134537 919129785 783262600 848287972 921960989 931864924 440773513 597654222 365320521 842792913 154375319 838049088 611278730 888272531 239373536 521845271 13478628 870453323 401758454 866836007 738750445 996438988 365895751 789934518 130617854 585074563 150451686 333780128 533936363 586962658 109810533 401020765 495708005 756948544 928656493 993884546 906437516 954461008 253968879 405706931 484772473 660988408 133869775 182058503 847221927 918298759 74581527 805051755 151948848 256479123 541210643 969835310 801110861 801536658 990516662 992259478 843408165 867841220 246728661 912790199 639898277 730078690 416534084 627536311 979785539 993528131 422554987 649793098 709917927 874047901 163933100 698399003 278278735 560675890 830013167 889861940 404224878 431851385 1013041 112446068 222331990 326852984 933788807 986828381 872558818 932974845 610472777 721030900 860800399 903515961 230838545 301549691 771220654 948738616 568475811 811666820 778551466 885070442 841582629 977632831 138771944 305898722 451313166 898801892 707942794 722490746 501857815 973909117 59203386 927714181 221564229 918741411 245719881 296727253 375530278 978578015 324267515 921041368 730532057 756735528 492790729 775832408 984990618 985961220 223836468 919339963 492539764 563226324 231945206 307170136 867920348 982646003 509854616 863259618 123542192 929865123 624474267 992093114 167862216 796371150 177276104 786393657 535282258 769359301 23047906 389799458 46793599 570396428 391047951 706400920 598219400 897679448 439733516 533720751 347318506 594973433 549088497 808934957 983308849 998985829 885750606 900571361 50966040 548652057 252651736 578979941 437180290 874036186 872194844 895468020 535079406 859380668 166750453 463010318 663091343 934621109 679907605 923025145 644632458 936576195 258045261 445763810 339610649 474186190 73160887 706724915 820738369 965352474 447229206 911439520 955204180 996398197 484450577 573058911 629504081 826179399 942033877 984375984 413654842 831622088 950283100 960145204 171604155 886996111 709560919 805600280 643089270 652115436 287607597 561788712 373786488 507982494 981060176 987701914 161703587 210497286 747271298 893005098 398843799 850693402 742144844 819720208 119568254 920913267 237674394 964760826 784802313 929648910 296283193 632445460 22827884 264396183 481629333 950780816 32312091 274191631 72074159 120634023 898077401 912619160 62259953 849541416 914204224 984159414 151022467 551631327 970276781 980688727 735726100 949468381 561209959 701554364 253559313 365228866 292140053 469497866 800174286 874520989 962741936 967325835 719184202 990625425 917510296 982383109 223842965 469233834 313433115 513761790 658456259 944644949 802217495 826979259 322622823 928575861 471905947 728882955 108818010 312000142 58251712 691941747 993943096 999118197 968984695 998672690 863020020 971177325 618754155 763213719 129473634 296564977 583379655 678790028 983774966 997238106 665411742 774981152 851776384 918616187 459697848 561094069 57972723 925948568 162770196 692767595 66127504 225346059 866232494 932755765 701072804 752930700 609379446 793109646 561111531 691316972 807698496 977198699 498213149 581018111 446872283 587055490 351875315 354304398 978252358 997100538 927682409 988790815 268457325 364505054 342038703 758777009 848463285 944827552 463897987 901999617 143313600 786571191 263888304 855476952 80847207 238051571 948130056 953435094 764158763 947996165 836738682 890579336 831897380 869681879 850322559 886777936 123390626 967905287 22668207 213751388 304032806 447434165 292008114 397896856 600678746 780175776 28604582 290040728 836731447 967762472 121581910 300023487 116546885 603815670 440168006 960272977 522156713 725279192 61625109 79589850 693362429 828701141 714672754 717932345 253089906 578279751 600141045 757801135 295108133 599621693 22181984 594952094 130257901 198487014 983879291 994086683 510173246 640630517 29632246 639151972 977798306 993174758 309234083 769624281 897034809 915961617 10733717 513774023 910997755 930010248 667801808 751992979 357559945 636005858 469588191 839459455 898824753 991927075 221791239 970654451 593949257 845955261 966725105 977347052 216303317 541678799 191510261 967230547 580373612 836277222 101397614 829922992 249652920 695265895 282392303 797097643 215627239 298755220 775381061 882892003 583379944 887769287 304062139 773133810 362372988 670764747 63843099 393789000 507289320 988399118 249161440 619111284 260895533 675582155 814235737 981679667 771946070 998323394 470650887 862821621 480306504 893231686 822479089 945610348 650739575 755536991 527252457 872928197 794329648 899765340 888662058 932144621 124238130 564317607 61813620 244347909 555867004 710811302 695840561 753577585 85994073 242527456 216945099 692128020 532881305 976092739 927052576 997450524 496037747 916486976 902263212 924766724 18274898 724450905 343989277 475511003 422568524 835504513 914409486 958654104 832244237 898066002 268863100 846212413 308223526 888913618 283969587 761413923 841595757 929828330 917807642 950067924 57299401 605159814 37565694 859422378 785295051 991900117 578966515 746451953 688950217 841013605 761623561 938892622 280854880 926826395 58702275 291795702 421364835 665122157 597985890 859326480 841021559 967339204 377796012 384153851 974113385 992670166 564336231 815298045 813334899 943356177 833114126 933378867 308177339 789198414 216054498 993158233 916779425 947626022 4535433 564055403 844582059 866664313 965767178 968538089 404156440 703200118 930695983 949392063 927867807 972073937 698480642 867568687 125094232 490947354 543271958 997504940 748137147 895651841 26400620 761005184 316025843 437192029 947702622 956796444 19034414 752695074 820870735 887073548 912498103 925161359 736304028 769171483 488854630 928202857 556230245 814362772 446885780 730142437 823019018 964981576 597785512 705591904 219007355 386578714 442924207 712139853 163892173 169240971 179421844 815587052 18302818 27501980 858922283 967296373 526687924 711602270 29835538 328207054 678680327 764627055 293492124 795769960 581232913 958199922 556214093 841923770 946530476 986630612 137232106 604211375 364677089 906201138 186662797 615834063 776611817 988033957 205329367 743253574 332157950 644965092 28885797 64304700 67588066 145593902 16823091 722612721 538484593 769443475 863942444 976213827 296328962 437898590 587581473 852711207 8291895 897801262 632810919 680949065 324348366 912354337 873818929 889051682 75870301 258777784 258609991 947285608 151808796 484214959 673600453 955446356 326389929 419714485 430134588 793451635 408045346 730985010 45999837 223223299 84108203 248398436 288147230 805274181 891570304 902592259 785707614 852112410 955600125 964619199 567554328 567718251 705228803 865846628 893753403 964283209 711782899 997515543 416057502 430858167 549465405 884907250 906995557 977042549 685759737 838225971 516942938 743996719 520223259 736196013 237389657 647753957 967037417 982583232 878230647 886721305 861235011 946166141 715330407 747301038 272442056 629588640 592624633 766322919 444902066 737669709 922136741 935392468 129024322 184851900 763332660 801118081 785390590 964930318 689032188 770529448 736280038 828405590 600495905 890800384 317175186 799784847 578440972 697859249 685279426 776590042 591777529 937210256 792222271 974817781 499873389 611576633 369176387 711968582 532258216 807202929 893916666 917940065 946191583 957046984 861764815 965632124 472712404 576992295 790749804 880313425 729159734 855850126 587792995 754346184 348521075 488115120 550747011 880191223 70800069 911567761 600514496 926707032 975210222 991522379 67481865 173782280 741065298 783658390 272761068 791705373 752255980 853182756 914242726 920575977 393260044 867832219 781410461 986345522 824959473 925598617 658150918 985932024 959946146 975848958 795433767 963236682 367547477 804303364 638081730 727598651 929975243 977393685 701901472 912100272 579656115 871808731 648730053 802280187 95287599 282175864 368136508 386571548 235312071 722368160 787036324 807907797 877139813 970016235 703090029 753492427 306184547 731723282 807894587 827931513 877184197 943994055 497938216 521735942 645321984 754840109 915271059 958579644 632080380 672938961 839183039 891482004 680208848 822955446 554180054 950624532 219787774 643709163 827014587 976813961 248408243 893349310 861193083 882728865 760035361 977652702 900357383 906572618 597041193 751086856 113901481 711940593 648638896 846129742 790317779 847553819 816037202 880299267 179592263 446042942 383408768 695162865 573122069 988816287 85285393 800570958 287680605 731892169 703491424 969667557 856062839 868745446 31454820 334071677 75631138 793686552 802692122 893104283 791411467 930970343 980356012 989742961 12264950 323920672 522985694 913541890 81963928 428572555 961358939 990221121 108683574 623985302 939927931 997817119 157803262 360579040 255426404 460852615 223281192 995935999 112468722 729993983 61836013 874128642 788518464 980155972 409574894 439271209 971522409 987351776 722781792 825074184 324108171 912193307 636594322 685417517 849839350 929789153 354182258 887403122 400369140 454688205 688974497 837859535 981555074 996044147 301984196 353682127 177481659 411836039 391691699 864924164 917420718 956102881 91431986 297690272 145774452 691334110 875343355 991747199 243916023 988816048 75222059 643352135 381640317 433155309 118931618 963113577 943733337 997197165 900664263 960648180 485913578 660647115 429548652 660561247 740429845 817447001 406133622 798779170 86492674 271097381 95605849 728273403 217982392 798052083 6140516 220932044 638526620 641220344 575581897 770943027 9469597 663756777 335042855 493834112 461111445 862899356 188756892 287681086 518991669 744601499 525139688 844014561 328786793 569603249 396465827 546041145 134569378 260119442 799792209 943925890 321440652 584486665 429487647 579241170 959968130 976311441 840940350 984023137 777273383 959507268 532001476 783570070 399577043 462137421 596888161 675388033 166484060 200136131 79688549 381812786 37129464 471019425 974843805 982406871 752615368 968338488 730761196 897608583 707747056 886644553 175028977 973875163 436120338 501920384 955851339 982442545 310183433 768143301 550651586 868446047 681367754 873392254 743677629 965678152 822508751 897685303 604892896 950991071 463208584 508911302 861523924 995278894 446845737 502932499 51492488 890956814 446808767 915967841 683307025 879882932 972030319 984105299 393479772 699038144 973032975 978790437 408603691 692892407 638934698 882680763 601782247 852907905 909452519 910667302 309669977 316213412 799195002 802535350 39283892 367086371 346319757 466769416 316740441 623654503 729151934 999364612 551144910 589599961 946474774 986452524 205591499 517179060 759611669 809365376 830256860 987262372 684794440 777931504 503575809 939592617 151880248 628644998 403331712 834573445 761724540 839397362 507778922 962515059 246157277 780844260 721489854 928998392 714307897 726985187 966398192 996471774 455562071 541489070 333383001 628892096 427208299 696516707 625459878 946592987 826130006 950059551 689062348 837039064 685611243 976421077 121816547 726169101 635375473 800251088 332713815 700735263 287523325 771985468 704297041 932087974 343579202 349757024 732197543 832463249 552903085 810387905 332695987 477639901 100435101 393272815 604662037 865142416 391373965 955829155 600839026 636506991 475675245 946940500 570336835 870812330 559176247 833631952 323585518 770167241 31264106 965706193 901132590 975737320 709017145 934667497 998090940 998581957 286354935 889550115 675599382 802985811 113472466 894385297 921182829 934311893 995272510 998129018 381838593 697987611 390888851 758298259 46452239 876706001 302340773 815882648 552164051 713525190 440551877 534919453 333556525 837765015 751414710 890890080 155333724 671788230 797275035 855315984 951988544 998426017 775742578 954943017 374166857 392317576 460722420 876876804 52223850 785061727 113349959 505438154 439859257 726267826 162240348 345244207 184040145 945002826 275431703 573413850 233291061 256004017 718617415 733564809 921043745 957165248 884486436 941870380 567307382 687372301 346729573 850684590 149336167 616083887 182567738 986306369 315770001 664774323 820506164 853848883 504840768 743696285 604731371 914071608 547328392 967362767 673033503 917184766 185880544 554557672 192665330 819097442 905224210 975991370 848546106 927578938 976333773 991191735 26027246 968216588 684924392 742877331 163508131 398977797 496354945 986965279 551219044 697731132 352144582 955631977 481841653 722912624 491783347 754673180 815737358 855437890 697967234 707247801 639149018 654897343 214932360 396848666 966076765 981408401 745014278 946046761 345703551 907100788 382263250 589480170 766842045 954213482 28946949 462777325 783272714 840989144 917680584 989000754 21201806 129602081 807729059 902751525 167818292 955305988 532875516 929556843 955649928 956628887 788361371 993208592 401131441 461201242 873180860 972223100 349599203 668269705 129349385 431873864 897821798 966848496 394994681 452534022 911394012 943994506 743591530 845764700 561490528 817536741 596583643 939785161 716754146 733122990 941378515 951187903 421795799 583994569 642135490 781120678 952464940 994990849 594337493 663182573 224087628 684777735 363082407 678176253 740789728 802763642 117589785 918795937 263694627 528494157 217566337 795265634 649669110 676088274 96588755 484715203 513262600 715245406 230763386 307413562 938330489 962858404 773170865 902800866 433846598 465243066 795413015 878366226 524038856 589592619 801037886 827536083 390382783 481049283 891673746 935348245 697374137 807185687 444378911 836400043 275161627 403882632 491585610 916084689 529992337 714666148 457777589 620751184 998319108 999651504 191006143 652325671 418218703 759350706 61872844 168738726 731764842 987311858 223420226 334241348 634310316 835858182 717124014 792078412 641064373 949989086 685644247 889138381 135316505 790825150 104553143 459958473 128989490 168957782 154414634 204464979 957720998 999375253 212111980 931957867 958739072 972849569 736931098 901696596 199686115 595377475 491821844 782026527 14399533 967591128 190412385 949451959 204032394 878911937 293496713 474311579 200667847 724940786 428415743 560247966 394546366 807148087 756434502 933598764 431483622 795472438 971621877 997209959 67286230 731392232 432803557 747209700 345895574 644247852 773906209 982286403 139082294 381176573 504076893 575218697 223801877 745125478 548453306 569420703 293634790 406724981 397463084 865723859 309700872 782181507 841929703 935800931 914915640 995941261 365782611 407010192 173382147 716714019 603777410 687867714 974391996 983360434 511040233 840632608 898707043 911905291 786247378 902663525 6231881 792034509 397456041 765739018 68622862 477927588 919065168 997620527 944538329 958804536 103021003 865891727 987721055 994675275 604074476 728836216 820450250 895159078 802073253 843856426 512647314 859601875 460670266 615567575 5289039 945871988 717772371 791777764 951117463 996392290 440654834 659987071 821953828 982939033 297742187 354057952 989113991 996310202 207243641 875994595 378846834 437887129 257557498 491519526 362419516 634174478 447168227 765790847 82927123 97912394 481160200 893864383 938490594 977234131 431234593 684623696 820121996 889171691 869769031 933847246 899721586 920755961 41189473 197664811 850466834 871204821 107000957 985436335 27770009 508492632 179598113 487196612 84980535 410827471 694257452 970665548 558189668 756051400 856937943 967805654 134125601 793542231 583136643 887846457 663917187 837799223 663029234 954659453 512238432 888856156 250113977 933767394 8482401 135816475 988208532 990334150 961179623 981247492 456100530 739956808 781418169 955752759 307583540 430564862 34490951 63809600 452044285 941879735 252904987 514852088 164011745 504191336 331911718 618146461 222882918 543333732 773970316 822501345 302748601 559295622 429493167 758975234 706541740 835805926 901193321 952982340 580345720 905352074 612541139 629723993 487609763 606937090 899696639 938446755 973680227 993928640 137982773 264928718 16498684 492490691 864021780 975940392 927630206 955217969 959367392 989502557 666119402 936886088 120256753 691784704 383623596 578286921 151453735 772478756 262576325 919241771 20864074 846316157 139543596 364234165 62268607 944201235 279615232 468239406 872106826 931440775 562580417 780704146 105593820 716439780 983818913 991830968 654555502 704778128 519892389 726868228 980856576 994455675 747348148 878802057 899381595 905228847 847096764 919756756 97239081 730630394 478783812 800832832 401115548 828161542 993521912 997147789 497630140 944395656 539801504 836573685 204037095 981521449 906346792 931329686 77114969 718501235 163430065 955946915 995327399 998188342 273281359 486207729 347028271 419471873 613361491 695510916 493182420 834280807 88680663 645176398 572526839 837309075 615494923 681012810 84908869 402882605 773354480 918777696 45387251 180532665 389557556 707600165 346656155 396390342 450836264 573952945 688197920 727607506 32038074 133267870 716703659 837669954 36160737 739611368 575590371 743105648 415219191 574948774 797066597 903791321 623117377 849274071 274725542 394087555 243977157 951086623 477477526 758280674 710646916 949359261 141787570 246099135 470103646 598812417 406668173 656795330 26550575 478477236 145907665 924546504 841059733 995173760 411376482 551866320 536501358 874607177 902755142 935086246 405739870 892244825 482110330 731112042 408521341 936179848 104656238 588178944 109810748 305035455 291092524 712822131 616079718 736367406 686318623 928901029 183301251 408386775 116681982 612678508 443115368 586127135 863634663 917241632 337160611 596563693 229364480 394354340 635127109 890705584 742302728 807501188 457258277 495797392 66255542 703169585 556520450 845606494 605257671 866985467 659497539 878274451 98476989 194177632 584115170 720032825 656306277 746645249 278707832 281199325 748142797 952429436 135292940 423342075 679160394 939558103 531757065 890977787 245232022 379969301 603933477 972773289 501355992 752424298 499720252 670231211 595484437 760253777 561523436 946059143 227712397 345737395 968432742 994979069 631899086 687254215 604649295 884854241 681663835 813865666 122910995 173112953 76163091 287967838 580816465 651147188 815359751 829571968 348838499 408666987 69883115 443362289 984179040 998477676 523328691 933611464 936181300 977161744 512926363 780837099 736658791 977700716 668096986 717275108 822788071 833944930 632136260 648657593 627785851 904871993 516193257 632185393 356133096 723089633 730552496 775379350 465522034 986978302 534373600 821448757 310454820 667624575 468968126 841926243 331963931 735636180 822061078 830138530 863974947 870146789 714282967 814559950 894715264 945718103 272095913 279747297 247174105 449693939 833227785 887857411 81844771 436592815 103659567 159025254 181776500 966276645 709024086 983322141 44391335 926813995 785021391 988163497 126164994 816613949 66123804 873826017 671514777 889716370 619931587 766399332 594298590 819219990 41521761 704019713 965055085 993947621 673725624 867456853 855532305 929081021 236541209 749925281 343629798 917555171 961468387 975200308 230730019 295924927 5769084 426619934 2065469 347727671 226455899 432559250 243406054 915673380 97797919 157254565 721861782 741624624 840695306 890416348 980196021 995357146 391951779 761177236 134667463 342707760 921146364 977271678 287190313 490529967 995173112 997665502 190655190 887346576 171367335 753711632 435660563 596326576 290017672 454616972 920594165 953668762 330054056 845400403 216041013 812777054 398473723 552513944 145347259 364915632 401126077 817580266 878353643 934437048 248652539 438679841 772081366 773034092 620211180 671201456 69886625 507591987 598448081 645131396 473549863 508740072 147364854 641593939 687637771 934087391 9140084 410912132 610480411 927334026 818194523 834691699 696218569 886634347 551222284 884618067 509914694 999240234 353725774 803396960 764687692 968666573 520332908 950685486 15741172 722859958 622337787 742414976 610197968 680234839 443840382 856376875 518427667 821641676 799707021 846705807 145172374 854077970 430221450 602353849 879382416 977061311 999401 371425496 840682408 868294170 604105189 827551586 634180877 777577440 770113730 993593806 610005396 758925006 406106773 679686433 840772337 919831570 202138334 655685605 127355246 956273274 727662295 842626958 125741789 581922675 68499565 973676382 345322131 718821017 329459618 598271595 904854324 992970236 91570977 325783420 560991248 828932407 543761488 950220154 941599927 951785069 440752853 512566627 741813166 967720016 610169190 727409972 510892528 879876675 650829285 944840750 713048466 818221594 704438186 923798021 116523754 921085623 581660480 695009341 808129267 811709987 437069588 916929895 376756285 830491460 364314109 851645587 729508288 788768360 874204467 986115082 932541026 942862085 436952842 880321315 577592960 753600529 807707782 831052124 115234712 761461852 509839145 727775327 924868044 958613864 223614407 629983679 420091736 611800201 367060269 771045116 264521112 430939373 644108741 855008780 543088249 545825098 898159063 968593163 757348333 958565812 488428377 826394728 441983146 454153040 315275893 961450249 744353225 886912710 562699640 992312279 698372173 965156608 819207475 902208965 419569911 919175263 946869813 975398655 167311226 406222797 483554088 948057093 543561394 906315179 463597217 822713992 320855065 781500842 399751977 561076800 225739645 325770913 769462334 807502427 651832139 670437970 182592162 633796307 892741440 968942525 815575931 845908083 352483351 664872370 930219831 999932537 181437471 281089232 889792919 925092919 160510136 663795990 327266327 388874803 546005197 720550431 197006260 493786115 657354909 763629361 59659384 102575842 554403954 783273937 199988547 969177550 726064282 764663265 425507379 646760111 622666313 903710583 979481438 984470911 744565555 780395011 469402576 637553462 643632213 671140521 85545089 171769590 217246284 624026171 359318885 727967789 342968673 912640850 431236982 517190478 646556008 719110537 923446346 977678541 941083235 998723906 783973713 980445943 152695069 552550662 646819919 843123728 195919280 520928895 522995965 670311332 221462859 815508406 359679940 861851268 347765753 554206918 782198976 881015921 682617991 848624692 636874269 831712230 333746606 534870530 122027534 981502188 333759705 726026896 217463201 420811950 956893428 967707892 543687864 763310868 565267050 764746040 338909131 947126779 512855886 626751487 250414175 435679320 780553514 933100662 704942657 809165944 269459729 353000814 964094139 987671708 351287298 969074110 15688462 923228039 893498714 950982414 685675265 717070732 828814482 875795701 38863671 128112015 813530476 824904560 569953073 939263331 964097375 993622105 620575404 763286147 246248274 638785555 902796818 943009672 381939377 565787462 98776855 218029536 814757993 880910035 711971915 800277590 507281625 952428015 742979133 749352285 586290302 876895696 96807413 247849874 257186819 499206484 362402159 698419253 920829744 986069351 146473870 928668763 173903785 354807514 544794465 982018744 946411221 961443217 311139232 513310552 742557638 916254803 866586889 909031035 908382435 991853785 683569316 927917221 520372064 884161298 987103379 992585991 807183363 836336695 961609382 998443016 541849375 607794301 418556783 814536965 336863429 964791424 968711708 994937508 179981930 280556999 510565816 594843196 558162686 756861531 929289262 981182266 36843936 313927323 974792805 999891657 440794796 715732950 666546696 715134528 709997290 787676157 603936806 984490415 841168207 938275824 889436833 891314152 290507889 390028266 630582370 992334279 84096750 764481646 267290075 471803595 343733793 550217791 181365189 877967166 803816159 954558879 336336443 456092169 689271557 825836905 139395401 423292440 937511220 958851145 711518078 757759743 263851789 776293012 842325873 979503285 574210881 874732770 43555103 203481940 143980314 736786903 849026304 932635171 934702530 982423507 871097643 968438751 139902256 493295786 615996695 899736066 425390710 660877191 255132265 681853557 635111492 742533968 413406956 688522909 718219799 739248438 966263529 975378504 513136098 565025264 351502418 759749942 423057205 428295736 882473522 914075596 470803415 766537047 886656473 988381348 865616372 927919591 610246811 884712806 404276098 542095182 741073175 885329629 643957478 987791995 721243724 850076167 302041928 315799079 927077868 984657808 886535215 998207761 432231512 502006899 918958240 993879674 760820348 815190897 690223352 866331702 613946675 778772807 38446518 664835275 202352937 523140388 550591057 991303504 418371404 945519041 968565912 999605760 692063759 739056372 3219814 709347138 992644048 996355169 842972191 843963814 256873677 774956979 782217279 887140516 165875085 507668565 762173803 958935037 761560727 836372863 627482048 778006774 718392826 826992798 814583649 859926763 865565350 906835125 263708174 492638990 48405764 324637186 818532406 833301759 532736423 638083039 883333635 926369198 133759670 812767468 238384558 912211680 67705892 707944790 181530629 915800279 681684084 729924164 636578811 832989469 730788085 811021388 938164412 976827570 754493688 900003008 225118893 885514657 883643639 994305851 350364118 540306240 92185529 579609724 441801513 606528937 541939318 590199009 193908376 243760663 28757351 56772139 427835206 748188579 938024607 998389038 281297998 326048306 413297690 917650742 197703249 749024638 626975090 736034376 771401449 803066476 664447641 811535674 438728844 539914726 121231050 414315765 382183502 984073331 847193715 983870397 536862005 999433880 180644695 627671864 588193567 987910019 666217212 953654932 747037886 790199383 35844262 297134528 233839085 354760626 542515261 856727417 560471730 904717265 823687184 985348963 922949163 983766430 939132522 967182704 87374265 366962852 948653065 993946097 417152996 550783630 446673965 795260102 890671965 974328889 587913327 653472374 175993712 397914286 743411508 792370198 306581895 357495532 38153871 773052262 722696416 956289825 97715948 647240504 498524155 811062268 662587946 675318930 932310872 984436260 114412269 494149665 519458461 548400581 999465471 999790690 959388845 961212809 353433359 629024758 114551591 733215598 786293090 917551831 391237986 532351118 515095617 663860078 795347570 911789575 354924604 451033945 854151595 954485041 86352157 94609383 120920237 427545394 606144454 649326923 900524908 953046783 102444066 308074951 351136027 559971810 32226147 500815660 439169338 555350334 311613611 724505374 769596541 783875855 614226680 757605239 237491856 713687547 873046269 964889134 296906872 784100858 916510426 932524810 498822622 563977152 241168652 365173524 206420145 935396208 85878672 786999774 510988815 735153327 89231516 427497139 193507192 376259244 906494736 930223431 79777710 643327173 721687430 871735911 312045896 600272224 701987021 828789901 189963813 403435273 252886297 886452538 197551591 234071337 893270027 977392632 966337615 981284279 95273946 642666200 869345983 979921358 169263910 540398872 566076097 912379941 515296266 933782472 858986103 939929938 109394311 638224614 711127133 883868152 320913113 681915989 293898174 741737753 525408537 878907847 653500837 885459197 793521913 950924687 420802928 954269829 427722773 754890550 382393299 565991025 80360106 266731033 862493937 902362605 248711974 404231064 442296643 711641201 807050003 948355330 375286220 641308725 718633188 891059074 771789167 928190475 877987326 950720592 170472025 765585960 985471040 995206991 501617605 580324034 459108555 995747826 484160228 793276175 603343728 890226283 260796872 824596074 543327940 789766873 395694525 781944854 747798768 908843644 362097498 875133455 495541788 755743920 799792991 857641055 708128271 859782499 683866244 869626857 829146620 946143526 847970518 925544129 933612858 992338361 295254784 406770871 928903727 991057919 112850653 297963507 789093749 850279809 867397429 970404952 674258055 720422967 277458340 615639975 498006657 842091863 971428683 993726077 842365360 904329783 169728609 881326450 913868434 980367170 504671794 752707394 915702064 945053966 609185557 678150335 855980777 978046848 258363323 715594989 40615916 471173853 785935202 976740631 670716501 693428248 272064669 780089914 385526549 801019557 887807436 966342638 153758524 290148442 508787002 712579373 383202144 685898932 912735220 992423715 640991086 805415607 489449554 562483721 445849950 941186443 59787427 880101823 878608739 907103846 666023985 827955502 191458787 936078946 846726556 943201193 507614334 576390022 555396287 845492179 388320939 421946804 954129320 989128632 241326474 353151590 472796712 989730449 995176502 995207184 690939290 722957021 554655497 776162781 730108829 981262459 35810645 298581820 208568671 803522432 759059737 978629646 592529290 941050749 507268479 717086743 339077893 543847933 882877313 883312785 693482087 890177993 691651344 767618977 286743932 844250411 403147667 877361601 326695472 881195121 65018693 549716999 597981513 655044041 732394135 912242294 425653748 775108752 130955137 627528028 204175143 391878140 190516200 367284679 653221035 750256104 686676665 985267761 489503560 537064659 608104199 641109732 14338979 455264754 154305363 756529812 410416292 702273586 411843494 628054006 623403144 937062923 804661418 967453706 917905056 919473287 165491944 900454525 31064310 990487050 509890197 663673755 865504965 921157202 505218125 903078448 471350466 561471872 798103394 806807520 595786466 933269645 478099776 717928278 408132956 641624041 894143281 901061039 980323860 984424522 535382519 685475368 587607120 912043169 198501293 840905885 216267835 707390660 1537883 8106546 688800075 733235116 522377841 659030405 770612024 908852392 71068460 315235128 203789708 667886975 969222209 983485313 205227329 495404991 802069783 855373357 10722415 537576048 318353902 741570176 98651543 766541955 250072929 605828575 920015332 964256912 328646320 397833191 818044808 977744354 347788070 697458714 834834483 919873051 915398222 970953076 732365113 891484878 774498416 817941391 972235319 991278986 240434582 447438665 528457777 797008590 325305199 898294336 946715692 977603956 494616578 520289167 181009297 547433092 329275277 804430424 64536518 831158707 804804061 952209095 47756530 212291608 125764185 210519132 130338497 712500351 143453672 579332561 813931430 971293307 898181761 935153709 178379068 429628427 888279211 972930253 568615329 673101343 206588112 519820227 364949082 554297884 432962804 812304370 828828686 914383381 670083935 816854889 155111598 422553238 609289783 736579188 447921549 943806090 970723922 972162874 654166113 967292960 666436533 827943464 243531526 495888078 129558885 224408518 999822883 999844309 609108633 994635788 230444138 900100698 22567158 801769464 865481580 938152800 498660395 813405628 659544572 966367946 32451369 341839002 315446077 502972270 56837376 573839259 873228710 885473187 360192398 919381600 676019377 819720130 213805126 823881459 711469838 742175393 101459980 791376599 151121045 584946406 719266324 738547935 240048184 936256632 325392685 810233073 826349625 985470973 783271663 938486623 308156162 850458247 560566480 888509564 727625578 887615608 535241155 984353424 239325649 310072083 318501835 425780914 668491519 893913491 558827376 870395569 271100419 598198185 194499467 635913177 737309298 761847382 35143947 562944829 276562128 660926362 794891203 930408645 226411513 983861055 306338765 918906334 952926510 994076155 196286147 382619255 405133978 920390920 984907216 990554421 501397610 573881758 533326714 625689538 148541273 185320884 73263083 575300786 610420347 632368735 251324265 637878506 120317158 337634216 764608198 850195520 65895490 401981918 329714681 948671477 859686627 865625084 606010872 735473815 820641376 942156997 33695514 281547878 474628139 590076057 362549381 395581992 426788619 818184735 738054795 747029764 833916138 858920442 626664957 662994629 188492300 747623516 752592898 897537447 803877772 841553476 553442551 696517448 101640674 242852227 734227031 846168253 151878284 863846409 204949107 703999092 655127555 681204531 352547852 467924380 759026309 994300509 550673700 933477473 349231263 782046413 555241556 782901311 899059996 991535398 77194579 860414752 337138478 972751139 420260644 789996457 544345551 621032508 447435281 697709928 475101815 829581018 921146419 960660836 975418952 987645697 635529656 751189286 115475124 826759162 773116697 919522703 617755243 976494946 59307203 400238702 850888156 988640374 497098428 742215332 780489944 797141019 350199765 706737506 389173678 846173321 886225369 990373815 508369532 642108213 36412113 277918842 246428836 759589215 19992987 864205910 614234272 645270935 769475658 955854882 304515369 340662096 991583035 993981131 267031144 808992100 579375893 957525103 18413348 667893665 659215953 724143327 480052472 566013038 875117113 956475637 559453562 636826973 439070085 558937565 447500519 723210969 585736844 856051659 518432206 838118069 814945656 850647887 644348950 811176278 610956704 656026839 719313628 912007530 125342973 721894960 833936068 921300147 270799923 518290333 564248310 785216307 223898896 533128899 924988902 947486882 450618729 692967792 765879325 841809557 38109093 348482428 876245322 897569427 895021192 965809355 3270916 601824475 844650588 874060046 877153631 966242597 11558782 374263708 839918198 853075544 398537125 644164600 508946112 804555190 27236904 325930013 539481017 693064424 128595991 770440267 217768335 708734652 199697060 393962762 616204404 998227704 417584910 445762188 779799164 874221856 194248041 670044111 739729559 774508520 806505325 844133182 409921634 652300299 83923500 364386114 971151411 988398372 797686005 803930659 708963950 934156306 352999252 520673483 372536197 553218052 346233882 941186017 192093677 652208644 46020680 402698731 559223458 773860197 556408882 909095555 926250420 952520853 954610125 972991388 703350717 722753570 531695516 825661225 55268767 951093304 604327654 802922763 159376874 869021836 805069018 870079567 378326080 624801960 941220136 959535120 746678914 927761493 571352121 860847637 625180671 963480140 143681375 798721112 783293642 845955341 390117559 527713765 804061534 918736112 336221409 894490535 874827956 914515086 168523042 800638984 21530719 411504424 961808851 970716798 772581586 872505508 572526894 960528628 223579751 401554881 957704275 971824659 672957045 706873269 793412361 854955165 310047513 381766584 143062573 670957282 503159170 838639512 493651171 995550039 277582654 454512288 270390047 426506982 758888628 834349375 121221457 746587143 197085184 646001597 15452414 563294564 947560211 968530435 414275317 658454699 621350486 916119738 769646074 961325658 388489422 712979248 433631555 861265995 586272272 661331435 276856360 452449195 485865150 541929833 36670619 151674780 81473217 790505444 483121955 693588077 889907628 896619833 155060786 744933701 611467528 892950032 383259055 636100717 211451623 779688491 656678785 702516383 415556305 660409313 5383066 229152578 455958623 879707341 78086974 256508228 225881097 262749384 635012308 815380910 795119446 922586319 497455619 576133466 870256681 977296133 217256536 737026796 211427351 716619646 110179934 308577540 995894088 998407144 562469197 891552754 24392317 200950563 505086906 819285978 724255798 861049853 124879449 529861396 719745368 826058081 751279239 888730436 799621103 986122904 333498379 820456275 603397631 847648842 943967179 990506171 607512935 900144737 471226266 765173997 499854323 747434117 668489480 878030223 179541685 640693140 958570481 977116666 859969334 984908145 311423425 452555352 364595645 365899339 634571999 637099312 413929361 693134440 993882238 994727558 310421341 460952635 317556436 699075952 886725373 992121502 726118326 770936643 223137283 793741480 560032327 697299337 824157674 885950482 599947601 897739474 802969518 913917262 475102701 501067427 303994112 992815563 83608644 491535280 695427683 781693616 979138780 985953269 500561640 780320442 346869090 863524141 180313131 463736921 775832031 828385503 949346324 959363419 603812851 775642135 661380238 846162988 259935513 667049729 585160940 927709383 144147890 754443190 626146335 983490317 990730123 995234156 312259510 780468073 410148284 726705111 87649764 556809655 354789517 644244503 181678180 964439489 45715092 49956573 94597572 495491686 245073882 355394530 478385180 806732007 185041784 715816649 498885970 581393759 582310419 680127088 413735783 742619592 457600826 816975754 432610962 501548554 25655267 811380636 820373700 922280806 38647758 683935730 413501153 543033328 876491396 993599246 938671819 956400703 140860122 204052130 1472689 971271001 508410953 916006571 532104701 773608494 935596785 943600002 50480638 533795986 67975064 404930463 540268457 575616951 447050179 929077064 959280012 969070163 986637128 990491860 955094426 984807277 341092384 978469737 707006379 891426391 337390488 726157013 288112075 525994057 173464536 430623603 755898961 998669671 131227014 924508604 29008278 661220970 875605186 948720594 753104291 979590061 299574256 470321351 930387680 962535638 471948457 734543359 317305418 695811026 756429407 925369027 706037012 715181344 630856407 923153313 147521036 806316363 449734003 992733931 306082338 924197768 425303946 747007113 975806684 990406236 16070418 443889444 94815426 840667620 255393725 875730668 279148088 942535345 383061819 397131211 180128849 211292357 34821590 594920148 568398870 996428073 503971537 934109874 262455590 815723841 39464549 318652655 990796061 998773609 667403601 702789582 276497448 779458124 510102839 545281270 531795558 917270761 624437316 655746323 625071846 756140145 424102563 812858201 654110452 988197348 507847371 856553027 808943442 904004298 711248265 822414266 361869162 587350348 649087129 653830501 473303196 802966113 601391632 607065909 928614171 933702712 947742363 989011340 955752040 975995423 573011776 590419150 143452378 239427341 697270134 893255080 320275863 445753427 28715011 261222886 765204343 955792213 316680710 809155044 23865680 262747342 337691003 746072289 477251957 895472614 541430934 548147667 263389849 670634787 704365658 997994166 351043855 754931494 949912150 952564791 802277045 962001947 613133109 942135537 800805203 943700411 411625062 810280258 383670423 454701092 338801092 824234949 62490218 556793936 681317221 711356709 432437562 820477972 340091856 362909865 807482311 996606033 682308642 916558841 470864336 954635054 203315583 810879830 338955817 770311038 66767919 683681139 684245930 954003170 470996694 552020439 678393351 820581475 511588638 571902122 864617215 866854912 733913374 807039059 411976463 964629902 255628446 951786493 167568171 774814926 543455409 634724100 315903406 978814080 682589527 748814725 958787287 965079280 457983435 927160727 752922284 801515274 140354586 333956658 717727745 725853520 818197629 999717675 89393114 677989014 282761512 923936889 223934469 748545218 867907059 890536859 906361659 979402582 654792601 993427435 870761704 932220840 193749319 429967833 762258968 963451838 91099681 223411984 328881755 753307084 364443304 997787672 995702279 996822839 367669613 619754147 717945145 799136361 579276659 781144657 763171529 908757576 844408670 925636533 726883576 821227531 459972392 764121832 701239004 910962463 234815341 489172689 180071958 384023517 60395146 756212757 534261435 886772969 700954866 738026838 180097941 374255082 543134950 904018099 625413635 805353742 939005076 998175140 793310630 838243549 529892082 532077279 240586758 726476586 45052941 457008995 343609449 362805210 818761201 848789402 895457429 927895484 747459907 987816814 852778394 915798514 120372372 433527271 717156064 860759698 233346488 283254256 997188143 999306919 78489186 267824936 798822305 969884961 657978523 682624059 795049487 795094210 316881287 748781038 623589654 816694498 162424976 878017185 435963671 624250723 659572854 885751503 871223478 884426140 778199863 880611163 532628444 573391245 919005754 954609884 742324760 915717012 194132337 513868016 520139033 803317905 14289347 762132870 89205570 243988703 269349643 388502269 494148505 809140214 4273885 328633277 432248114 440187400 679058020 836658938 158125715 428409951 620427144 817809521 363022979 376191830 218298852 582331176 961736839 974194867 518792108 746994440 664590071 833721646 785699717 897863399 889422650 946293736 830711293 966648450 790052162 882768889 690259495 828551155 969891582 985749022 252173505 741728363 490116739 709182279 676581080 885892702 92224964 139674239 174034738 775892655 310716991 693631588 999315348 999939672 380771181 587441522 543226265 991596311 8613950 649519085 904130667 982380961 298833241 693829559 831094102 912489031 777845060 887269871 248699348 726814113 529706011 551440306 522613150 930120822 454068298 548135340 450140452 994325990 302273417 581552819 491922861 862790115 187884952 302335918 315450457 840800824 624335989 892910690 388412489 500604745 618416908 730742817 43330462 698535983 591689966 767148925 945693260 985232208 747360663 826818027 118876336 453064467 247802287 479204064 819107430 845813858 153523158 508356889 206834108 438584048 395149551 722942499 655824368 910981952 561991640 588942295 746897732 758127432 329627103 501615425 861215866 981380402 764928913 868044959 805264098 868803076 498889762 585624518 610917779 930819001 24061531 254528924 407165236 877257042 571963219 947952531 715363957 770435371 192087250 374827595 103276071 876585266 830302308 884117656 606992268 761280599 489121075 643177392 317302708 432810477 938183976 952285048 788506362 892193142 511084329 921222649 154942978 328325213 152687737 926446296 902144807 953552044 242478602 739032871 328747025 392701646 726988551 730806355 228347829 838340190 213054568 434637558 823774520 908912228 363972534 998262442 210558263 559329624 988287781 994335992 871206585 966925628 651304987 879616703 220963325 538676346 286551591 380786204 713651422 888878941 769290917 805004023 233805797 456918352 883079 71803359 40371221 749017168 600548828 610637097 403539457 951912250 243059052 273608443 671295470 902682735 395931407 775594756 752042741 847942411 887691384 980613411 246740638 773168992 709483419 980612770 675893404 869534610 565584246 945437636 209565809 539693700 406294579 450523680 897609347 933886819 349952348 749343573 740334321 906083677 219625240 996470497 550159338 965957456 895048546 942213575 780668239 796814510 860501221 890003761 552100465 749603129 754264662 810094545 647909763 963376631 364373280 377896672 490899154 942207905 212960953 660265654 433885709 812851607 748554276 788140374 785168290 934016680 513710451 589201790 650051591 811030384 647514036 763465801 360572376 403616014 929880812 976697029 566221958 688231162 687134676 890839266 724090212 742422025 685309786 925369522 425838541 669668770 978501699 986230318 488758858 880920163 283471285 546455981 606820556 998990129 613533500 695241542 492817196 852205510 317290269 625566424 506479641 919998100 146425240 399480014 807131491 971874229 749009972 953981264 182975300 334434487 179263921 221395370 47738165 821950007 143890000 654774135 469333266 878639997 889078944 913347250 799089126 962605004 734284227 951111875 372476913 696201475 59408624 233788344 54718761 953512929 787044824 949369164 577938813 846615385 387630608 733981862 777346508 922823581 617264625 748744358 98046961 817849311 469735074 496101573 989481035 993080733 243944627 898137715 695103112 913372651 82843223 388165213 962397297 965599947 14328825 922945610 34353277 567025175 204838120 407239658 771809002 822436208 799530020 903766750 80728261 932219529 630368369 823411058 154533475 800514107 599981440 897075197 146694570 167007015 839640108 987457057 388284334 557945507 272264062 545212838 137268114 203825154 395557877 917964638 340310014 812645177 296635445 790226305 797432912 899968629 75526420 849136025 722569777 795723113 327363060 863328933 175110151 825230308 372674534 646891040 427985474 823501831 46223834 404571883 931401545 945812453 337097540 758434059 232700628 889246371 491834230 937168081 373163123 709234076 385695167 717332668 252820621 366551091 357666628 918751056 249727509 897793784 720977464 923490220 513412387 787875404 53085667 683231030 984169251 987628000 372043724 375904568 984286764 987108443 621262590 692821823 692041662 846116190 516038761 986810368 191819702 214780735 923812702 977421287 411388374 692675990 950680421 954427749 438484816 817094694 488230497 756913463 214823010 811594490 431363224 842400873 935610630 952067442 66846317 809560776 4053417 518191327 874455074 932918461 473439517 949635789 852186993 941149703 776180666 970135334 101933840 865593382 257755655 740658730 508599209 785676808 711250062 930234311 896786746 911680828 53997510 700446261 149386247 833201295 743391 884693660 170310834 734534827 542701490 595760182 527200140 653186376 516964738 965882385 393043467 414728548 333309756 958771497 827042170 864202842 223092348 496041586 49035099 214140883 581776726 766039648 867636264 910516048 380517752 979836099 467716518 585283569 354543668 739962570 127991496 306623146 292099339 767440093 857066359 998971464 199089526 402143272 408368294 754758774 908245033 989215725 476778130 940422283 994740031 998389036 250235304 812288912 470868955 573412414 801349630 861068887 35458898 931412737 822592728 862980666 831821434 946435213 80813660 320478372 370375109 835415035 734682993 777436323 619321485 665139103 932645895 973696582 63970269 377708230 134837908 497981573 218686417 296595793 769742663 973399708 152590642 734340883 488563354 572350035 710370754 748664742 411293505 557789005 170610580 197146370 470981280 672847550 31708931 712122167 388246083 548680695 891463474 999204056 780788986 995989836 997332645 998198879 943680616 976551511 944205021 955731734 855582454 907949463 41904960 736213486 846661680 868179262 779691741 998955588 527821330 777431963 922676619 991668666 651152886 921370459 751955449 917842968 844953658 936005083 247703132 366112559 669110217 787560124 326472952 360134339 90657264 663563637 275701833 567105186 708229793 835047478 65474674 557415290 999902045 999962939 630788187 982483803 596415137 609772474 611498149 877999658 281700685 990530222 330139775 428935799 249439035 903204126 822738533 905508543 510225115 914659602 221468752 846584070 263193924 326243404 666509881 691966178 234508755 932822456 852870404 907926805 680616615 795900657 74005118 525973201 626071532 716466018 835098875 943045686 749413341 910332641 640270052 833869494 374641218 726248371 465385740 849635259 712240960 991068777 283500473 762399413 255451922 566766076 719478840 907808153 322228885 761722296 257162641 737992245 998348009 998660609 945064259 963421337 820207662 899634169 285315527 974063012 383107606 773388281 734243501 771980127 477373163 795824180 18759188 550614199 659925944 882165510 101417946 431108678 950956914 965723583 697994222 699596761 65320097 327329824 465248933 812357728 83074301 923655298 901952087 957072239 81899960 837076504 544901993 623283179 69408025 750425440 880420115 980961386 415390689 890973499 457712327 755652120 246421014 756218915 636331397 948076237 946938437 994889178 463794583 542794014 240797204 517735959 33272510 944121024 815925637 882153478 321886797 417043442 22754517 250056943 565985501 683512470 539666 839356634 151797852 562110580 247181569 896265409 689915700 931557143 290303640 323258071 681791554 909686079 431642369 729368900 446013666 692338093 290176398 951616987 387466369 507624162 600009244 626211721 660619724 952321612 46958616 896134667 814632195 856332966 457178046 990305844 40318336 183957327 107156805 804239009 866368638 986299041 402020328 905166607 288643954 789484231 410620676 606685939 578373411 783515371 89206406 628420391 696838963 971930066 894947859 911389553 839266381 928073941 266485945 821365128 404095605 647050848 711698160 852662261 634287184 757966067 102505604 792292941 14106388 241458185 320447188 890724673 297113156 353546315 663263608 893791630 184426406 244654819 583630072 860227148 878957424 979639694 181136793 941918835 38319451 150343180 124364099 361360425 251104854 696688594 103155773 705085719 218134642 611911790 71335388 591558908 219764895 710911221 594595728 629733791 298576313 712993391 342548310 583108549 701668687 820747163 993676575 994903836 373195062 698891951 742472378 956353191 14420622 862089653 458156173 921100803 871630688 974771091 265292226 861133404 853803585 897841574 491074549 745712177 633094328 990442594 537541826 656136440 22167807 169124860 299872019 543467809 571413128 969624391 235264580 515133112 127348180 202255443 308960755 418730249 320336060 858557777 57183096 543431059 980591032 992347069 558915717 953487358 330618677 759690267 6637068 761821857 953990039 997575773 838323993 861180686 896003168 922932722 280281779 781198874 491122098 965049663 946817663 954859943 877822214 917216410 527063593 591104068 957409166 961597404 752444842 932848311 681823452 916947160 101060626 780103967 777015591 928502162 77173036 710190014 81931373 186281056 714383175 932094921 401091604 475455551 456524999 993777088 254682038 384573245 313770680 663652228 443851452 573945361 632835745 702075583 333987348 750981785 772655526 987495215 594704046 988493670 197859437 272440515 282481808 822845662 189883219 756574838 297269048 956507649 369608715 505404504 145437071 525316825 436770103 482266519 665606670 725798085 966384848 970987476 260627524 352857526 713563374 985871582 115679439 526148445 216179766 358639415 923660077 936545997 857869039 870264776 562484801 966113412 116631385 842210783 283896352 631559218 803570379 842839843 958255024 993139782 618409663 620852983 837982475 990676908 433639014 500317072 265595413 810088187 710919221 876851309 543815821 560712919 493994548 850262967 266747467 696120337 704313506 879724562 529256014 659375175 394453246 627787551 122794746 377274257 567978962 980645898 477618693 962600229 698303198 790270911 277125872 441515544 108521 417933817 997832509 999221087 876311065 898309131 942718560 976454551 831725567 985657580 442740539 609381174 312137987 393371983 540111719 700086241 997364082 999511346 898092699 948190895 696553661 929062872 428825277 483039940 343507754 469572934 20871056 423281679 551360485 939701596 866135209 880286111 452508962 610765297 244609681 675152103 349228881 631683419 418381390 956004633 392527273 662487621 589141749 682851474 122508049 474577577 980516083 998528232 501572695 598239325 884336737 959315626 642418688 760967951 481938952 611689682 53694474 527827218 843248063 930789722 159030241 640660983 642128311 686538784 355753678 695178138 29914578 704745861 530911725 765420037 551183928 839454535 117742925 912809927 757445407 918201669 235040751 406719530 742378668 777063431 404138916 754282439 629851760 716498088 123765771 496792788 725782724 981308101 43702939 387246959 187937519 602369460 358384579 713217928 455030465 907070098 450413709 451411960 797512692 803550174 315035338 903092867 626128084 767984407 932160923 979296436 99934515 615210571 562668675 821547050 697895721 810972845 141804996 828217588 995423902 999301875 873856869 990541317 689605151 758776483 692401580 813133973 409081575 661200846 141494214 420622080 918737728 919433886 958443881 998011285 82424863 651366296 869033098 957512504 325177698 457966243 40805672 486842728 457928811 680939073 300452554 301892501 817788744 986770293 514081794 666797591 423469539 971628200 853075894 886098244 844040835 891067379 657155118 750934308 549718113 680378016 994603371 995420103 317690198 798823873 76786110 712094271 883040604 949600234 860638706 877602313 307706889 588831607 800502625 879129713 761001374 991973721 857854029 877542691 211939067 693592739 197087055 396587478 301558344 624228663 885618591 924835161 495922641 814725825 235678031 527388089 637487910 841219963 479255851 641494087 317165813 890243460 131815675 258043917 959954906 990441362 556202214 852543813 566817021 726811015 637246284 938189577 722531634 936398605 638710019 663093814 182604620 979822436 810935895 999928288 518733221 650529512 644809263 927330179 180333303 462022020 771602695 782587999 283424576 611161587 592845517 668775041 466874069 587590073 56790495 192283537 261249894 875242595 709223401 929409606 623295167 895287323 691718534 760645448 877844066 907237225 861895345 961190924 250383689 845882864 42855254 124091219 82639388 606306207 158350262 937392832 821982846 937591697 890031139 893740551 190582572 690811891 297532011 721228009 301572981 549962173 934488346 954498450 247616465 294246563 596862424 646640054 816847487 842431558 885026585 889176932 793795005 835493333 860542278 969913030 257528678 899814551 875390595 914039014 48040393 143534399 179408101 517510209 732092928 896445852 951535022 951775695 14480048 486517495 309593853 534036572 21578144 196531906 642948793 911604278 119721036 824451770 700903565 925441591 430944322 560144183 357184465 629763378 730892340 795407220 795644771 847295609 637613517 768255316 677830904 771748272 656675062 826736101 428464230 695465411 439811359 831521221 711025338 801578206 191644561 249634629 193966188 266418260 317613958 860813802 531625007 924841599 492560293 697146501 743965421 825201345 962939886 983662726 185707130 198610074 763230038 912732750 528635955 757565308 693294849 697991852 429800842 679681832 678627786 804817918 67100825 326510549 319008985 927009249 58493871 783735770 234939465 994610301 95768529 827779825 268494458 726961229 292508910 963551498 963281150 976766287 75114699 349787402 801421612 884980410 703143857 774182535 480938570 875606671 909381104 999648117 416513045 690841086 223201234 651032179 468151645 891018417 759335024 797656532 387949401 432959721 778420120 994218854 813521132 863748887 285321746 608256516 263747506 349793695 892409716 972109369 27912165 176134763 951388534 980272518 340901257 790119259 510235601 567651231 19939375 416861905 960400601 961534446 776843336 947342874 199039943 493899473 267237413 970885149 270289025 926615941 400145337 894308763 127692483 611371852 263472164 654486814 774630577 831515458 908345462 925552931 83095391 844447940 914292910 948409561 131770838 267950352 730827481 783389679 567863116 792711666 323443097 828571981 241935675 995079051 869971164 978996367 42116766 614619818 407119161 917712940 913303134 955717415 97153227 150790675 895585544 947376755 180175869 964168322 358459370 963443138 938715540 981191512 385919745 509264518 305773604 603563441 176109124 515370843 236929928 287046965 542946847 901880598 349547331 743742401 15849672 235138778 744672771 896715441 117666524 451950248 583494790 760330318 909091496 968312329 763624873 801510442 754317966 953165919 176779464 885343127 759494708 938896437 37936043 662054652 781743758 837566183 626972016 653845653 700776892 883432369 129654825 436650719 924635098 984081438 846699613 973485206 359429381 506298764 679717518 807224462 455097135 866448916 704081289 706491315 335614430 445560385 913136417 983834478 297205053 383335225 116883402 203781661 526012085 643958292 240345353 541284759 559146450 900122537 512025848 646038927 652349150 919673686 845815077 855101937 399412588 459545889 748149519 913539743 782402962 920277871 380449543 833359907 19304018 437031963 929384690 993925068 206319144 665979534 907331740 978397135 95043691 342178066 286746015 555583349 884255197 996132193 755194948 976229348 859420369 940377054 34284120 409716959 8402513 353081186 300858072 794062288 87853285 110618218 449185881 736920331 34806942 875854969 250700518 802784621 87436819 753545464 348231203 792110196 143299868 195052335 774001207 834816156 565646625 811387744 335994556 532537955 250639891 516212105 142532693 386789618 710553724 905628822 831901438 940896909 982856811 987230532 156553008 206700389 974877527 981356472 987524531 996901025 310906164 974843018 479739456 750322807 418455333 526341210 449069237 658825521 140436021 534923611 427582500 963396301 186089062 600846406 354217392 741857384 71025948 912861170 900877337 946917264 801496622 871028070 269686793 447513751 174778256 848956991 518117441 558062003 346819061 707530891 65067029 646567799 210032281 844294846 93321825 221325340 180821316 879386328 749985457 814112943 207539790 486898285 488989698 509877567 967606360 969278637 916673660 998517066 787611676 792411893 391277297 978125685 846953562 976795761 201264082 364438340 979914277 995157023 117190398 656266370 830615245 897778309 755578999 967898686 445777548 696509331 663652363 670452179 995462137 999599602 417917932 680843801 563473390 870786067 367365728 973586864 390789832 458148942 893324214 961661762 10482039 863991100 450198793 534896497 588872660 884881816 434947536 438967281 683185122 833337923 983145676 990512600 857000097 953002722 216652405 589397362 853155565 872431590 778945403 988166196 438597159 480214270 779842797 822482223 408658627 518060238 152628196 610080649 720809324 842765490 484428733 503517946 924078029 977876127 193147826 601818107 211358589 224810405 958832756 981958428 605444308 724398799 326855028 708815690 748145024 907730543 834947595 948410645 445520959 870346725 973582734 977178259 396974376 870526083 498525812 553182107 717326302 875419888 202806152 271011186 180309245 186151845 299808835 979090009 347201860 958163125 144723717 236480755 2365217 976640148 72712304 543762828 301990896 824497396 634596263 856333573 213810156 798948998 160557387 469607805 862978645 999737427 73179611 416162326 269572147 636641863 753997235 901238534 459754650 763093641 607165183 709651442 849613165 937777538 187476640 949482148 105931807 801260362 82351011 277771379 894810607 937403455 341442606 351916657 961774464 973172188 507969019 542099847 331567476 539708344 507393150 698614897 345580033 589677350 634577852 805533468 422226762 620728543 25532882 53960254 20814838 477921640 995112092 998836504 512424375 533800506 943615294 956639360 86203093 670763753 611674054 992398388 73258897 387128903 163083998 867075764 440973077 724141698 493909340 640262664 701857481 705440843 877595163 986624826 809200329 826600195 148410394 713161410 291660004 532004674 212785851 635120104 439541927 651485934 909145913 988733135 399930138 522537060 216017651 613279432 915751858 945072562 63629792 999301337 240500048 283784269 501409196 764945563 565374263 962391872 536601389 894951521 628436251 645716111 603955770 857877073 694140406 741460162 902398602 994990128 338272055 845023488 197135773 528604536 988886403 997664062 299571083 884252959 40512843 218703941 570830128 997771610 590103130 700087112 611444716 615314580 720394687 949454263 848572120 993716557 635220827 738050324 702415793 825238325 456402867 482253109 76655350 366029031 743672342 934802534 55389475 100175740 650169799 893372727 106898777 999202961 697423442 817686469 592477693 995655751 535965386 910153532 577313429 998169850 240029278 540941212 363360684 732947357 471486764 846723480 186606149 694853781 981456467 988129622 185591991 366650990 465282104 813903630 998779638 999570525 274594387 620843770 740092401 790280768 87638662 202781980 976132745 985659500 62682215 230582578 188574311 360632570 288159362 888852758 542137868 665915756 148128942 305187651 171774078 237408704 308133901 940391833 992352811 992542466 986783982 990521607 989605038 996549752 901289930 953657018 193415597 507152476 847516078 864761256 932444179 968360309 791920931 861670812 840220327 914364191 952480415 952521744 277068151 473560672 912451692 970780855 946272408 989126604 176025615 382247683 576024199 811655623 277472460 281173904 592127294 688130213 358791440 665943077 355468296 794046928 858628586 859923330 601017997 856593876 538779940 891730608 820217063 960998579 212679712 218126246 446691975 672640070 117305375 930059051 193996930 922070505 858275488 883671785 981486208 991436472 149592201 539563296 334863029 679124112 882403366 999228009 107497786 625756816 364658689 489050145 83956534 665533432 583731220 771142988 769124441 811869057 645806099 769460024 46226429 87720851 334469620 897923105 4379224 536638148 526450942 839868666 867413490 985709533 31842328 800539230 489749613 728774606 941134277 963405930 678698287 812725279 365739268 457786180 32931560 146830309 377248041 503411489 652899858 663180004 532172098 756665468 520835226 943196619 296442496 981290678 974478443 974695187 528109304 994075694 198762990 240493665 641771721 769903630 327972865 835129322 833715062 922044060 192190986 382557232 849329559 851367100 158618485 337033392 852656641 906616377 769602241 821262421 305770896 895205628 551924634 635688744 86377104 412321604 157155761 830327757 583273482 706733710 750485155 841930403 12239317 985936513 638881594 877538879 15462598 480553463 822987873 890493241 185875565 211082676 963172977 993457532 406042853 486494823 901965198 947415792 227639203 713053269 34233923 802380833 329105070 590021415 430177222 582835371 158252879 648007337 981691178 988773672 457856125 938517801 623465211 651809252 994009485 998551640 144217654 242492067 552146637 686545147 500490778 685703420 916750184 933786835 576490704 980299084 868473131 873022867 135972334 401744887 898698262 990229648 763231321 926244150 207405757 437039052 447875926 547106402 575549162 696475030 128220679 847085720 461148171 569123490 614091239 755673468 124809036 208132729 51813785 834424609 321702047 629821645 61290250 244289225 835850834 901014669 641332802 644862624 299043399 458603220 104013752 385591318 149887199 862329344 226760084 931620811 646140145 679187750 716485342 858972877 461899161 688347987 853494536 956908733 323230791 961583279 523061180 993473530 151143026 469089393 317131598 633536397 738753359 760711578 411248539 873045087 816430734 888295581 205819419 406031357 473425085 597735578 548874856 889502410 21106833 237162005 579598589 931465645 414284633 616888978 800189200 849907498 71564230 265182295 469692455 772400778 637037284 703907925 429007556 468404103 113831192 747616358 656786095 765367296 508274698 569588455 590872477 858194277 148037551 895989180 376357550 483300100 362739575 705525295 433107445 932628788 497018648 904865197 177450855 671531982 271753885 963323055 226068265 725398001 447824995 672538259 33574457 205028604 537931634 843587040 202132746 313311530 268671440 350715840 597372832 746246971 751441232 820391574 872432006 935585174 281284715 706057580 229340752 267683889 146635995 493531259 191417302 512681144 17812495 760251506 810446872 944613658 965581631 980569627 973010108 977500645 575631015 771355760 760491348 772737328 633511827 898940745 142971128 744267747 882587782 980772692 185439478 441458415 822755325 999758848 269968825 596853251 883238057 940255432 157084932 614157675 160921680 424363389 118814991 627075329 594836558 867659470 931828215 977343662 764894705 915532927 249551300 845532512 912660335 932451716 1910149 833084486 918528718 949883475 10471864 998024774 496227421 669433012 800617817 886435475 467221616 990126777 986928138 997089580 281484789 597679951 822791392 948208040 872221169 994546696 475878279 553568301 347534981 410145845 944186000 975223598 698011205 875790600 756234273 781084266 633459402 972828804 409944254 696018520 157508948 635195068 719998773 797860834 711451759 937120515 83815301 297029031 938225032 992263047 584228763 645914730 50873963 108547114 617179471 802912927 654664100 860440942 127928576 478366284 474602796 554370401 103940495 492122719 235696026 396184853 657811502 694973206 270384507 399625457 769813509 783339501 956584843 965508708 190081764 953913380 951919764 997158908 315976194 775376367 335447854 460230871 103072842 646286821 926593508 999002322 821196891 939803042 223376956 827854381 160151835 229515750 993192613 996484194 202380126 816074721 269146628 293565358 292235548 334893447 883987014 963621831 167760721 763013310 80612371 833517168 905536280 909735815 541238514 832909835 938138192 992160543 581725032 732381244 189756966 579515016 61227523 806047028 39828476 196350695 438967457 851936330 190509940 496965893 23448818 809684888 607255331 969732867 296414927 749267690 380864636 445996611 251725313 571733709 553596117 852391933 585924295 885493127 691116796 780493108 144609030 594477772 551599529 910386801 180554743 746680518 871838356 901940327 909001431 966753840 433938321 497717621 479963806 814835470 199195624 701158603 31503874 556875932 130003684 748352768 594246014 987621886 340605833 409738729 136914205 145884316 663232293 989849093 370939140 452903578 23039107 862314307 174115566 347027162 596931795 681040074 61180010 813134306 156374863 763896433 998061294 999924286 663354706 900086842 168445386 460982076 135599838 683112606 434579475 987201781 822159567 985682633 695960212 698397561 600012101 835531239 252676223 384668649 797422107 918876097 915483945 974104902 299287697 837208030 359487481 759400890 853830459 931556857 554021455 986733395 978917924 987368966 714192494 903522416 398465659 548978562 583332210 735381568 261538717 821735262 11792223 717347260 804751642 854378417 316079516 838598896 526370297 713411820 713422412 913692786 76018675 813522135 60068062 370330038 804168347 921110072 869058212 889274333 305044835 930652333 161959345 881217339 729653757 941115915 530932870 800318142 310632572 591161230 344163799 916135672 518984951 555929041 534412638 726403319 385458001 504038065 114758797 464284009 857134299 858776150 323466366 649661486 668289528 748105421 793838174 937441218 160451091 461369473 807263085 811380691 905887188 992854556 895929625 905424044 902165261 963554479 970754459 996130112 448651705 624507673 228436914 919344779 237691799 436609380 797197465 847762708 740343491 866330819 234498402 877865138 491521841 692450180 688120015 847089847 65428470 327432042 921120370 921259458 583040781 944146906 932953750 951933623 749412202 760865322 77190948 844234541 49201094 156244198 772617601 796732034 728239106 738667484 331195079 677281519 459304717 476308008 459436915 954777691 304336273 890593557 580044577 634222919 627581580 912665287 975970481 997861024 873254566 883149856 23220635 704630168 458087465 729909591 863517775 927210727 288153282 314073861 980082173 981323972 154783190 910980459 827827884 950466279 655468794 719083721 450529762 616639379 269883509 992052532 369732285 997955723 395789339 525505229 940300982 952821154 905915583 962846122 389679873 923122257 738049754 979720659 938193612 999541110 282563415 325541184 695317507 730473781 834385700 871976485 629331619 768149313 353450975 970904546 706372498 828004841 782795266 871680514 760626456 899477931 462108120 994802314 195453019 722748097 360380269 632418784 961508151 986781214 304578554 641663230 533806004 582291332 953291607 973874103 121002597 350339639 963108570 991587169 90757734 499991017 459896062 695989461 302336245 948509681 753891778 897601877 200688889 667972673 98275610 680707261 726609613 981480488 983661280 991120224 37045003 475570400 569709576 997338563 55670419 631673848 214373008 760702127 952858047 983030245 810283381 892474521 444812370 834401136 456502700 520448523 744912860 768196311 845783244 865539974 490385858 501205753 31260458 900565891 324091811 356593770 72296914 936938634 413111502 828814670 152669765 162938302 918471903 922563738 180782162 792693596 441557931 458843874 728371566 797441089 153647403 186501172 40557017 777747402 531707523 824077445 332519634 895348905 323429294 515169238 20339565 163743081 945166369 954042133 111513548 587493276 929657533 976625078 312976544 931732576 376703347 483882733 264944111 947590890 634893893 988880038 45208954 600344313 865982016 880857465 947669598 981227517 817546973 914757721 889420255 950251419 526058901 788504385 193421637 428464295 229683897 382307433 994723271 995024667 799855788 936384794 591018418 595686689 747101192 799684064 156465408 992614261 251769589 326930895 894518614 939391534 297619391 477604512 961859858 991683275 902157803 962869465 285959917 714517863 274886155 557270959 368088180 568999544 936086341 954554164 993325364 996706367 722383569 804903854 15551133 250758107 841837038 868382550 305183041 962103776 901490296 951897621 684575941 778860188 278936544 829220945 218152192 953899239 643516878 708525202 53049030 777613617 119840287 345204794 253030705 888426845 259200069 515718574 476518743 785816689 882355801 912626241 988371588 989160415 825002530 852844363 79371731 946489934 185042137 467404143 669896491 783502375 488699925 607652666 908557476 966891867 453221560 667417461 197611249 531365558 988712814 989133393 544968339 901489867 539542501 931145863 202268950 837511762 831295778 900924834 580143987 817792579 16639269 673360802 621069388 703078140 461366071 862320807 408046542 581730042 945301397 951064209 953954583 971922298 293041722 697500392 886277180 925074034 525316751 865664623 615061773 827276270 68844883 205177026 806365149 818997701 416613446 956987291 194891716 399683055 873998139 982121059 643577802 673251013 551163883 963551425 991249808 993508025 579187068 723093151 29828946 73279103 879965878 954383852 157839769 191998859 335908599 661548873 496246465 756375383 217413393 226411489 217187598 490352122 161795898 848308678 732026026 849441064 821426665 881377551 852144633 853925130 206127763 744378432 663462559 835611923 279434479 709650452 18372674 368039888 861851912 940290777 249045514 392104184 336235669 362133465 180542981 890941070 689892271 978223626 358412611 511816467 177369238 688316087 395710752 529645706 440204927 715929645 163718386 544138530 942815294 964983646 940900387 976224464 880742933 914837106 290576639 520067090 95419712 216068352 881162860 993733409 45267992 962410026 52153809 785791720 610050313 707616662 451441881 906328009 271535820 935950286 439948658 684223479 520732149 933758656 534021359 655736267 15623938 621312186 934349918 937999270 761414571 953504853 946918134 965244085 923965007 924868550 426961406 599507509 863445698 921336078 342475913 496709023 881566442 942542816 266847363 630622918 39329671 84563123 725704508 975356871 436685733 485632737 966260844 969110775 278237564 504736584 401936024 458169584 475656408 987194642 876857171 997188051 163515409 748849962 341525525 568466493 560714615 659850933 236879254 635698361 458840527 830725610 403263411 899633058 62205501 471433201 377878493 590307427 671897559 842045096 154879038 577619412 647349828 985000721 876959006 993138282 670679646 704466606 768108390 867574576 364711302 526046792 97351688 713622799 990047435 997037941 655278905 743540495 596009386 780089969 714345910 742877743 328571671 803774167 320993048 745837216 338090379 499827400 203345037 778262082 809256792 920646014 966985351 973012072 414960064 973442410 393763140 929851642 824189358 864394459 121671683 451749215 177229197 845970070 303920011 839049326 505356892 865620006 701273893 938176390 345924426 923760021 980820725 981232884 751391693 891069104 174676613 353159829 294065652 469848402 318702095 510637672 34506552 919757746 275514719 617893364 398430443 625991433 20393893 468243456 734790663 914806843 230747258 255200813 73978042 448412025 628986719 833785236 728643624 963393180 863015808 992375527 288673342 291692471 173531927 531228211 789541125 978937165 835458380 976143687 937607709 969959961 714284772 738801622 601897038 862961701 601288989 950291453 515076328 811021198 306037765 694712262 933132948 951017004 715696180 762126647 683043361 711034918 810328136 912328523 133588225 182953951 96198064 820767074 564953049 733039556 17484068 649824985 247617040 962734563 249475439 607139703 163365008 428571488 863325077 961264129 188558932 379724911 664380435 808268657 102223120 755789016 381002149 404679730 511848210 924785850 240875912 678770277 73523750 486103328 59502771 172080322 484274982 937631708 839495085 892025802 923261795 928541683 311871612 363656718 233528762 488963663 451547700 737975888 797915485 908527448 244747611 938280257 476817428 660806210 847695947 996355116 422750108 946801333 308365554 611647146 33316078 972259187 571808984 765105258 819322527 971056779 662901960 853201843 675424848 978493614 78621375 652090161 310463060 386207140 68390234 655071381 340676825 536342132 461874775 623862047 56899754 87460583 641264719 899968554 189802343 354191733 462683521 469601406 996861047 997305689 265837232 649178955 766329021 928805300 780983501 877490592 289794314 919817617 667973748 902850803 239380127 852512634 855242474 882138554 326432467 945008003 27877839 428361849 573795441 925013562 676360150 733953833 761331000 806946626 170927291 450647392 316761568 511222169 711891098 736250695 320829635 825832711 935107507 968152124 393615410 858685797 29841688 33231447 372800242 655329263 573635557 728218624 908540249 934382496 645383153 929687644 775422652 953401477 280566292 751196208 705036612 925587550 355672925 563359606 363414307 773843803 543629746 921316338 45059920 805621094 667562855 690484473 350561896 695263894 292457460 482261413 836376888 957511916 380979128 473962877 267758054 633091547 438477373 667563591 321285741 864822969 336987562 412140634 126979298 364604272 216378233 365005043 666300855 981103501 198231 994433500 577600304 964740309 414354832 645036537 601938566 687402169 806064922 957723448 332380916 496848487 747357525 803624515 26931907 387732160 741943384 766976314 34008024 956468093 737851859 805009024 929831042 935958838 236232840 329276558 804651223 852119712 127950608 674894506 626660834 820792216 726213295 751053726 746274321 812753982 615580113 762064110 608539200 916508655 79480888 928289893 314531350 630783136 79228876 342062041 848594653 999799959 865050050 925295137 872163687 899578693 855578571 857518603 786997285 878852863 748749691 786904041 511364656 720048536 896314415 952240838 943188987 971671490 88441121 746634539 250185477 947072011 67589446 789046954 760533448 866807708 370260257 643833255 262773338 839729849 664084809 932441279 272990727 507985142 34018748 991541745 929945192 975158604 722167349 828203859 585746565 722327819 114593460 499565855 710253643 844140988 948148896 964247348 386547678 505594629 569021654 965847338 222805997 686004507 368962774 630467419 970627876 998811393 565017074 703629818 640406788 777894049 647969291 866993841 418959510 606550347 780345630 816517004 53578273 237015664 624646565 843386534 43416212 481629812 693652668 921147519 327140763 364431522 273281955 543765436 288713543 882207110 847312512 929024844 398079777 595905558 215590247 310244319 520697452 602338322 679339964 969704787 847164868 915108880 523934895 833520569 273593547 384296225 797827415 897765908 933423564 985336734 573096868 604019628 791568408 910013132 556537101 572876124 66851297 859576728 487243469 607468612 22728658 373120080 270486087 393783180 17550863 279189396 42137225 442528831 823701242 849114930 480120808 672233584 156721274 335546938 881369445 926318157 633696996 670784729 621690809 847447283 318070359 320141850 146402168 750433858 243684816 426040000 566550227 980443547 516912091 826140682 424316612 596796548 411807313 494124307 899350168 907811486 380025799 398817260 211743741 693034431 643219647 651562280 451132024 599620391 421113225 478689652 368156831 513257577 932044626 993792388 494464639 889500316 934189431 939358329 184290501 753888214 178486359 539712160 362544013 447025170 946541142 968695704 592909064 842261350 149963447 281293780 186026687 322204844 797189037 801828730 463094599 837366437 936712387 975683475 886971635 950819205 404646253 528763928 200909339 755981952 724267008 939853394 779657476 978798115 642637587 805104726 35881863 854744444 299174030 337304453 908493941 990205579 486913461 991394289 766246479 912623464 736729703 849560734 171316509 218005436 475177153 485182129 432765336 642914818 243442996 724803409 530898738 574838185 207915777 568499714 168041482 235901553 503969388 520180899 324880265 912017264 701797704 936190187 76767776 595092953 882559475 922273037 847427533 983690413 222464897 261226045 157045746 626429108 945031427 965307484 172561417 854032133 740391389 985995755 279292431 988327984 743627674 894760799 619245884 712794799 26179705 95820016 245630492 447069702 820597399 903704627 868472843 901395287 836813078 879328343 204109979 507184578 441256273 540450280 395143721 560996174 194603117 887865128 519750195 624615019 178330700 964432252 522057665 629100389 102656937 404632977 196184245 684901945 368646032 373295699 821618170 839383625 526647752 756260088 238970542 351960731 245994805 802438544 19610038 315592199 402542432 904192371 951623818 961029338 71051649 657874486 485931820 818141424 689203829 994121340 50393134 497702939 905618759 931612395 232950022 909764282 609718243 643776666 957523909 964135457 167618078 396609272 269960335 725744187 303438866 817961942 559934255 689648644 965828778 997414892 86580056 305046102 478031834 690204613 754989657 870083420 497043776 934838861 697985239 794979743 223061126 246641597 594368765 996094512 594723465 844169314 205653477 888772187 831772250 923860531 179961004 685703522 807036122 898019596 445271894 523969862 900526674 940276217 473564479 624193711 501979242 629565524 480213018 689067241 899732152 931174771 411768780 595812713 364554968 908969439 124264576 956820347 497136126 812985720 331932701 925854993 200141615 722724196 693534094 964679690 486851579 736189750 129386206 767292742 836090089 901385059 419192019 951066203 572470815 679896374 227551746 280993444 378712289 439878183 537974089 953422205 917346191 984516390 552771652 648790086 744437258 887019050 317209179 981489117 443475529 569518707 961758117 970061314 18163379 845466335 248875859 637516732 925051465 941149448 152279483 243611600 998056464 998112870 566870439 892717769 931151207 984481908 166409724 860781438 659958129 729385678 686241770 798294105 659668377 674890369 426027792 544659482 629422379 674089408 85119918 164764812 179188796 962061231 181279436 441220729 795126909 990890629 490519418 857137739 77567925 171706775 850641730 977120418 893190125 985394941 687706143 911065318 142349122 801226349 633538771 916268258 265763188 412320247 128049882 697767308 188260807 275100455 576515077 726510895 936159083 998859438 399032117 663786977 596875114 793163498 689911030 700058295 856151920 932384842 180815615 904585668 670761706 845226100 583343806 966313611 328209632 982221944 408491174 497970796 498143920 640575366 441832383 456264557 399634703 644901672 308181788 496204894 576589043 776993609 551126299 909010356 973873744 989832750 388501219 400851475 447839909 756624552 73521168 308223575 881227685 939700268 902153626 987959277 968557020 999888467 232332826 734624163 41117645 598559466 630241264 777728703 968670235 977672542 38136307 256902380 348081285 560833364 118670745 769455595 977565845 983039080 374000494 567614682 764584001 811437528 386075322 661479381 722989939 946096748 82897691 986293700 376341968 603750835 305924824 820910753 520915149 838269717 69428202 389333116 90813781 160642840 966712844 974646575 178794153 455880628 102472132 374961645 728959563 747542126 731056440 920102300 897543994 904998189 333305119 798736342 276560766 817702472 397009168 887750699 316986758 676741618 43478969 221120464 986899006 998403732 936754989 997212423 249747940 960085631 863468382 965102900 550803384 581702393 649917586 817239365 115825122 474746310 275596103 802337512 600845324 856122601 811799540 944917248 981723127 995682461 997187853 999266920 244617836 525917092 952069337 988858137 895295313 940038283 150587068 181066915 122643467 452467996 65602878 827962406 199691837 992271210 798326368 909521888 675855292 725074107 158600628 474019185 297367928 485853315 705954134 738212446 40789567 819667588 610712695 953484052 997277223 999043918 879285831 891406721 179201748 609573290 367922191 779604584 905050151 990412536 452758576 622977271 895939703 935639725 897938046 983471676 907516512 977881684 813852962 932815305 947445992 950624740 852605111 997406759 31985704 686943450 35605374 373055838 781159663 826681528 345504262 403807855 928132071 967228350 988898853 989644496 45732629 206746350 43822229 516216378 285008872 659494156 549188336 689908635 903728982 973820556 147092613 905684729 374746352 607958480 884795657 914866750 492952806 626361095 934566649 975181463 405794535 836071940 711598856 982825406 170458185 575035437 146782450 470178014 316418174 452043549 968928817 999691460 497331516 521417928 867094134 997017795 544264268 626744117 406184883 942876906 996271701 998509714 127844456 791595396 589039656 798390551 299801568 519744528 321626492 693207129 974037515 974513535 360350717 566216305 401063304 593566756 72013328 463294773 342408894 966459129 72205520 412183878 435580502 829300188 867673885 953201915 968901971 989509532 352234486 687185033 532028255 549076864 178951546 609070234 256778572 780758580 586611814 787483193 128497295 331441304 932819228 987541858 811489750 918690224 557099197 855449084 95791610 955187820 884508171 981420613 674234824 762169135 630165728 667650670 472630443 867678332 407455850 803387979 164861702 372388454 835889866 836473046 109557687 552063915 761545083 974227751 311218948 689550136 208643457 747544555 424263675 442057797 385395805 542222407 568857220 690423147 374212184 641691860 814725381 895617831 970327866 972148931 555758177 603750660 267718694 930659306 527251888 800580727 691764031 795514101 102051159 297977608 744757316 836267386 548735693 746320527 123174828 886572899 997829576 997976917 540712841 784246686 937930535 961359250 192252388 519839198 609627205 715850902 939732699 974544212 949698468 989008422 359175810 389599211 48474306 108056645 899329149 970799024 177616298 457798880 381797964 843459131 550632499 855247318 949710104 999102432 26542330 612866116 81398491 405180715 791632545 867527838 192083095 700648657 213711518 662307953 836771452 898669927 191447515 539589807 291165440 748698807 375879139 730872896 851592932 967820955 758066495 897829788 981436488 994408301 227509229 783293075 98784306 891746787 406208075 975738228 131660545 148413364 80795812 577777066 570379171 968298711 300546391 894942261 728551763 734073557 773047698 988013721 112342267 702264658 740693992 765738027 99907483 797312199 688736263 843439186 660725954 789870344 676647083 913878376 183151076 631089907 759026418 979977106 522175094 662965162 866107906 944434216 968826458 978681475 644591183 852113483 9927320 820538944 215218351 823350029 799024883 850904041 143508191 897946877 236535202 580562467 395730215 791302817 878535994 881710847 591885751 979723205 662610160 973708063 933396860 953658298 368814968 573008170 745253165 761813447 834510954 875898582 800975117 962894312 797202526 893751168 726948404 749916454 152629053 388148257 32281022 709028797 478989547 819835603 664999336 879011491 345209972 457744655 5768075 56397728 568504378 858157557 611968751 709961735 134964284 933512215 115876839 328001115 608101631 776045036 147907310 495791872 946942966 969104977 587654299 786964137 481461155 849471643 600708837 848825423 16443268 385696328 993003795 995775604 322839196 447434512 603591087 616459511 97640190 971058353 611649782 972923077 844969462 849897155 961853410 970618160 411250795 830774822 750597142 949362928 549476749 556345867 958498631 981627942 263225653 489683310 143358051 875073977 682287545 832316706 657398537 978159919 579788753 613509634 892737938 934287166 208744759 513130104 740265886 855888483 774062004 940799589 652859756 792309377 395246512 835714627 59548165 678243016 280844475 317450312 770264565 892158368 24789421 723398421 693231588 883598128 182195118 752478202 228797014 687447943 494110836 731919028 312423443 461804392 133381864 601959157 669634212 797354343 752075678 890088026 542225550 733723439 668042988 980558874 232507881 397899531 737471180 971217124 359293506 428878167 886003991 955049260 12779689 969968977 113727598 910728744 960398790 992959433 943464250 946088086 990698120 992256956 439764228 914909067 731579513 942252243 687377300 712450838 447868034 490427758 769099033 833978572 879975894 882925079 30573640 894033692 44544824 233107064 890565891 985475125 49501615 516091089 22926823 50221535 678865166 708013972 102068900 961032496 369632079 725025169 809958313 970752043 507510692 968733979 282362795 368457017 532145358 867014790 547437811 637576161 164654417 435968748 128822045 544327006 617545224 637120249 521876818 775881946 674808610 731536514 804700516 828060754 292922767 900606260 959854378 981229594 193564323 709870017 676447122 797453364 937742166 989537452 430923360 861417177 782175475 807856407 607444859 792794976 402424398 417136946 198076964 507993926 816582778 905820517 746170455 820519459 638338861 855659041 220436843 903670840 413928536 942913595 292950865 885701334 644089383 982113155 784613589 968104689 345677868 689846366 857532793 914199364 64589170 769527732 863310077 944881201 973016907 979460919 453024322 966508505 763756113 971461220 840604143 979025920 66619197 366040553 326220924 468529607 255852367 489572301 957564273 963381396 137388025 744972825 675992631 802615348 473481699 886772050 660551781 720748905 560469448 956978124 766342141 976631322 983131781 987314058 992766986 995548830 579087961 588684582 921596259 940422595 694303535 919379765 880169116 949364353 284337997 943368038 483695505 719512234 106476283 793083119 261830260 800328231 143689516 919248931 246373534 270218452 477204652 582075307 848383115 902327971 465955156 469595389 256572767 412323155 165327183 979812062 683056402 862189231 272084782 735592266 135523446 986491297 608230494 753189040 973401745 981865791 578537405 798669602 240022821 918217510 754665994 834492358 610105649 808341539 489586497 974998864 312063555 602346424 310006559 764975154 350251857 385281401 256184905 767156810 134871664 834584163 592962044 762061439 563988037 900100296 20062364 174831234 340884237 861753976 916497554 932401560 187527517 826289442 149427731 474932901 125639200 377002502 367677572 798399250 242089196 740713961 326550677 457181882 104228626 766254017 646741667 937419855 937628952 988963792 744743461 825775706 701064392 791685794 906603470 926624333 663832852 823570296 839336789 949363978 798465603 804070225 863178216 878031181 326175088 550277677 685342789 793584744 264885374 782171724 423482235 726344831 805823544 870650131 747874639 952573175 75219912 675366015 610555157 622967737 255900580 515470962 150432086 388197143 721006028 925982452 933813944 936741467 575650873 749148518 934644225 967727368 930867157 984916222 615523381 814952875 193253272 298762020 659050972 846422700 81277341 853064399 440785674 585716920 206095500 473418978 57090378 473938867 141437540 886457615 641654033 845319370 724566925 990423993 918256841 983136901 570726019 667526488 364977935 956157253 227069400 784527303 361371664 378404959 814511778 958733191 471670720 713644931 581198870 875755220 543279730 684596630 929900859 985944979 634471379 896511482 499756060 765213023 160654717 167310171 747125644 878902069 396755457 747942746 128548920 729423983 278252665 486334910 361301188 617742595 408845746 479291884 740988983 979533170 76587298 865732764 443493609 768137788 535025084 738112480 538609737 726539964 268705263 368897812 858659498 942800183 694798659 965100146 497369389 916184249 274329521 654584568 856001832 880221275 133611120 644238021 109077565 581062070 746007139 917877689 20688293 626284658 880198686 919211940 638029766 947264521 485979950 613523331 93129 48179009 425869723 730375476 121975225 793893872 255467392 456928808 786402775 841190313 426554675 460174219 576129666 698380669 898782315 985207919 580860848 605777257 182653261 940596070 60079851 536391615 909972317 963244055 838458375 945368495 254146492 957589724 483263411 485603630 720121121 768539145 979393405 980992463 591581521 927445526 767259234 988979733 510136624 572281775 427099127 883490497 225772513 741781798 556257410 560382621 465459569 760592379 975079863 983540373 942295261 953038001 631578259 991360060 681223086 795484217 30900970 361131017 79110606 889185990 280810351 890063490 641676776 942018942 306741977 986159319 621450479 843960397 861958762 983775687 103524422 663763808 395294288 890051173 553400069 579771861 777219704 993831747 790640593 942116537 221073950 831039516 608915533 819865792 155756425 843555318 819028309 868525366 636940134 878456567 468319001 504105697 46318645 911276462 412816335 690192623 651415793 841762409 442759825 986459831 962837583 999422224 70357075 851868353 379391183 620410119 372784109 672604039 276074160 544660603 961475656 961986776 531312532 898326184 595274120 754061779 209263607 327457068 403774621 513650087 434018263 570227516 583727615 730977646 484283883 925739308 170704250 312647230 20839481 515781270 70583979 993413641 295698747 894804983 907309588 991184000 928274920 980354257 903091080 985096284 124038385 954794660 72257569 764171865 687814300 985442527 830223519 948034146 595798824 984010140 178189332 816779450 591090489 839371235 902664929 966357704 377302719 565264167 217878569 507518731 358213587 595684954 348872103 575105845 301900915 726581919 778288187 912383889 835264947 855231578 230726124 969352808 542752419 777962310 233900848 706378443 655301500 715811893 792340043 972005235 131854193 948740183 134049531 320972750 660465144 854597819 407859956 743274851 969450024 976917438 174276098 331020364 728800584 735363285 607593941 877946911 44524178 728761663 67309529 216761667 85370337 729791856 961680691 982376335 539220055 683935379 230095425 318031293 382449407 527687868 465074917 641016150 385025674 588635888 646500708 952829181 231496933 508294485 905413300 909962333 36100595 744904335 572659374 694200029 563460297 723163993 698483869 819367281 276989718 574090572 49139762 552248601 903016643 999215737 166717245 871632665 801239693 843547709 534984317 868400130 65154893 840190200 750968391 997957129 389223620 934495370 441719125 552951728 733019509 828171252 948481780 953043405 738099436 797382042 492369577 648639294 189384593 545629643 765862064 827094327 424388680 932398510 726895082 986507772 775801025 865697040 754176711 876742700 450145067 702493433 239857313 721555106 883534945 998857560 459119018 995048678 192728143 808274202 275565221 525782453 715616858 918267867 394110831 533524884 162666444 908044337 821124735 949115345 799386648 858726865 444975461 669697669 544991185 714649402 342036880 555585092 547248433 843810758 558348282 835458127 753241724 901059194 250351693 667238564 919764365 961519441 297734365 566641182 162967538 257872774 626149733 863180251 863492362 977549127 620729208 918498902 134976719 979395023 3794656 722367306 717184539 954849887 424241894 796717563 170208153 851642115 628456348 695294416 992615062 998429134 245861144 499529740 524372725 991930258 71621632 816281647 398622298 481412954 112699373 992112726 919408253 932769488 60326634 486944211 283802868 324381632 712401027 719781919 486989500 521666695 828000175 893171947 343247286 674837268 678987664 981565393 408125195 842175825 604892760 722874687 386155336 907518047 979584174 995885399 567239997 858842580 798577397 810832957 161758996 501980919 633428965 855564699 403521746 492626745 223974879 460741488 633327319 721774558 477467566 669039999 358053189 377077301 279464390 851522441 958348783 989844562 954679507 978157241 135529293 818386568 349093426 543736547 787865781 842935169 687004227 882455088 999672689 999790785 785084418 800060883 624813381 697009938 309307278 654084005 645212832 984367079 571509161 628057654 822694577 870478259 214449514 407894550 319489896 547019358 273094229 585417801 692639755 891655182 179372442 937349186 686004280 785109128 98294678 106712242 747939542 776873541 512513100 843485467 952533763 983388544 820386174 919832361 355127945 867291911 317955838 448093143 932743645 959197622 530450939 699466504 576676565 707198070 683053928 885727256 558820420 957000610 645807030 843600007 462638012 837503798 564316965 595360911 772270557 998003846 427922240 972722880 438846915 776580643 50032137 314755061 959954942 992444423 745920597 921652340 86206671 673790552 415213165 772125966 47442054 93143258 651903929 660889590 493578256 709548998 908169452 938238325 853338664 971495275 3179313 251226921 293087823 757507299 362890250 913969672 387489585 426620254 388037934 518296382 991432224 998850054 883697289 935795815 658889766 892659548 7907516 373246088 548984686 582987625 535379210 688193262 596445579 716770294 49469696 626701774 723039568 813194608 188118471 779645537 81949845 953106585 600388625 643163553 987095687 998079068 938330833 965198634 991424736 993179627 813340507 905156322 237367039 680799489 591019097 871537094 853299239 916873975 574729145 699051071 270584546 482315002 160145624 519586897 778426762 871295714 104479050 684224658 766747437 808451845 820843766 976111335 368579156 525940987 23972495 743547998 112967546 782223907 930736247 987741978 210636120 545745172 860307250 887152405 867689209 899805565 337226201 409144133 117849145 960263724 215674698 869800521 555457587 737351642 502448143 513269855 282984330 365624039 317361784 415848483 269280813 492589474 537129289 758050777 80217005 966802500 63538384 927698256 234264532 462133034 143408767 674719265 128631802 760121603 108400852 867794881 599516055 844480320 929855486 988344472 757153066 891969362 487485448 954198241 238418423 438919718 62743435 148864058 901948723 925185915 891353949 913735578 960403849 981165882 357282522 899733981 162182265 305926683 261576814 755413105 642373638 704403698 475127887 965646480 226427036 227916193 927911910 941553072 556078647 680775635 136245373 958858728 85788032 833546897 296036286 691244820 239083390 341241968 922061942 922886873 527702671 616609990 23612783 388436540 752456464 852788635 936595994 984155010 459405410 670555971 989745960 995429016 139567048 399807719 218045648 868734604 911762598 973310264 632909602 940295010 12247174 176977017 353392672 397065090 562960803 826809182 687739136 945686677 685366128 896764069 398205253 630780532 194732380 890992090 755321888 791849200 912189389 918739659 783111224 945613522 604350769 874308741 831562451 956758580 807458402 942250685 595609808 632979119 93515928 286402612 255516734 653391664 162281904 792749262 455266718 490027055 259040938 336821889 305018623 768173529 989611692 990651043 323785984 827114530 108684534 839486250 210307906 466898442 226860695 931910427 796781990 970258395 896649843 972097716 527469977 802056189 456196140 523032455 628422405 962767324 650209191 796152158 210484878 740389492 449273836 948780144 247574720 811633406 206914929 609103334 708434977 935382216 313163070 895621518 375631150 828569376 815574905 887914516 672863446 737428371 8848421 634780131 819114258 840971045 758049085 785373187 829702097 959514521 247776089 450471117 48575812 49238308 397541775 811712888 944683752 959057857 90088489 569898043 722541033 771752398 978537268 998878780 404600657 994914708 84291721 492610680 502663919 755385554 77671961 337519398 681142176 729843229 318632956 429413034 51675473 311755185 45813646 252722791 538225122 592891171 422684205 792256087 607571816 703987333 632117193 678481616 752932516 783726855 222810854 434291169 115065808 766521516 421847709 886325595 66098561 679078143 687578954 952445436 663990430 997503959 932736892 980323029 986181772 993839163 159325451 265461825 752731505 992451940 819439736 917209688 362710509 539180742 481160534 893906603 117846312 343527080 328773497 935047839 890445559 900842133 555581144 637372208 472027022 472988920 529339375 766495666 248050493 571323729 175620319 386546226 409082852 937675382 569713699 587919323 869687291 960697292 729166188 969948998 68967597 256684531 870621107 924603023 668553562 959252293 790701200 844043750 106456349 395583426 477216244 924227613 510920577 586417825 688345928 947249926 896965882 989883338 579862443 596401973 366845525 981306435 947889040 980114369 285834862 912747041 175284079 201562181 255567347 270395554 265325848 802754351 167226470 244529688 130654128 726527447 275436426 514395983 273487465 538103581 697713570 807242508 245163160 430685989 761582636 869173017 936540990 949200844 463150358 661373887 111814778 336361317 184229000 460739169 728216555 925290281 389704932 712251985 645571630 714390215 909894130 994393560 852691665 894805234 77389025 788535402 514047678 671417175 469817619 722858334 196745916 265988000 764793222 998709856 904397737 942959813 564021313 811157006 634899018 719113798 255284311 967280529 640062727 950651502 979326332 998952020 177759365 921764386 279188654 323106686 797884525 868021574 802398447 849757926 125823389 785403769 731021609 978242011 5009488 752710175 528959143 711315419 620851097 888952135 181559483 762217860 255926586 791079854 189980483 442293344 948662509 974060173 332509802 813662372 529984021 926696675 731485598 867969548 557689274 973886638 724097894 948571431 163755392 743248807 463448470 717201405 109827966 379025349 882143758 926411739 313406063 833091640 746395347 853203492 586863621 641293817 136889697 574304567 667398577 778657554 254259648 799893781 258859151 529270117 251656719 489787384 227916177 942281918 155528453 604099153 713768139 855964330 730793677 917745324 333607373 673729649 476338475 544916158 28032810 667215938 906985602 942675277 921454655 941635074 421591721 664182113 308392434 903541105 712546235 992857658 219519913 680422191 138099212 175283615 557737900 563533488 806739278 918470782 715789527 907972964 289835378 524321606 932904059 954263378 338037345 865108428 974271558 991723936 936361233 943541707 887641766 909494140 838212315 951268958 25256548 833176073 266962572 572413512 361572392 668846219 720315079 848171689 579726604 942839494 239418365 873758119 458372397 803218322 499005326 832075460 912553961 965225985 126743853 733669015 542924113 558951032 402767319 975844929 903957042 978160081 708252832 790630155 167187430 434721135 177348894 485060094 685956197 962167611 166360032 401190063 585980653 667910221 484365609 840877372 325567901 964208205 640867866 875363567 703418584 722710017 421161649 592790528 724995713 958237135 303619551 447637357 857276237 958098350 525154756 684937695 321057505 777914461 796609067 801842816 12545925 231760342 154716943 235623689 81720123 445917433 231330608 835163359 970205553 973602349 693023455 744902832 731390710 786773235 437301603 733454292 738020868 958788211 890718656 924845592 311404610 633197566 389687952 942853361 853719663 980196975 836980973 908826134 971843476 990363475 470396528 644612517 203236963 437463718 344974872 782630271 476121092 623932551 591224820 643093897 268233873 391992401 420172386 938209459 391086589 948367319 130388792 864445161 638544513 999778963 384115967 976162498 500881010 674843965 498156623 756312356 360225174 883962553 842643838 871523269 933336631 986221968 562066612 566466983 262090974 332875989 418265545 863340913 27418042 312170591 54886741 138538112 594211476 848981452 598386865 709054155 541602652 832829661 214564308 319744224 624042874 624185117 653351077 919873210 276425133 353184664 64379393 630384846 413413960 863259196 935470013 968474341 923791715 982007608 6038371 770749472 570808906 659409297 369269828 400164670 260074782 785044535 364255132 541348836 578728058 917643216 827685884 980582997 727384221 978267310 152543795 290773382 155895988 663054574 283876175 311079658 735621643 968379796 943889488 948930280 622097041 704951529 16357125 429515194 862439750 974045453 137065057 391326440 416712926 612086069 841303658 876274596 614246223 984487760 612127508 850709667 951773697 957611668 206565474 986988838 545578966 552067204 429933030 879149182 899551689 964949195 535089039 820362385 154946860 291982907 595785712 695703410 603627452 671860001 221135320 494267266 906816721 983670300 524036230 703607725 409275314 895408126 442587094 697610438 772719559 776119212 298412597 304171020 828127025 857623367 898958007 911753167 662562117 988795788 800902800 831024232 433551699 711560341 36473846 768440804 892760147 954061973 877586456 946584774 261498274 569792104 270518938 793003791 114101928 787068662 350508533 840964191 686891447 730514559 170356576 617947784 966052266 989948665 842448647 923421366 921688068 965356196 372286308 901925352 545960701 762631452 245492063 755188535 478453834 743599260 299994832 825935796 422456319 656876504 996478954 999157183 280790870 357207722 573404520 910473514 872322921 995836547 744981718 763155026 467109590 816066559 175184572 825732601 453859369 524202234 567953344 836006448 341244468 657372346 86749998 735088172 355955828 632942117 217609716 693445785 949677707 986765531 504159363 752579062 859002362 998091519 794714419 978618257 710254792 867302148 437039095 867750101 752818216 948673316 553520118 994525230 67321997 865919870 272581641 546948760 621528865 658967475 519188301 618690134 434299134 930518489 31596112 243531261 91660580 736878835 862120837 892334732 452221181 833860515 152091511 899834321 175781789 224141947 918415798 929129408 68141451 322808511 14821693 636038591 799527034 981926631 340493840 342655435 428816161 877425307 77153087 115752087 385805925 949057406 489007366 753547508 829843484 979578020 967976583 990463565 624133223 837998098 182156046 802673733 662223836 994118344 718390155 962902457 710597064 806346952 355842864 379340535 597676885 722800889 182459769 826898110 813667542 888360758 189772300 808982179 36311346 957152667 453182256 469806653 167203994 371264524 677102796 731684737 387485179 555588835 515914784 774430638 472435312 711804221 853604089 879282982 267545129 652014686 261458571 678372242 695933197 847729099 394945020 545196649 244958954 464088903 51291241 413798929 470640981 904384649 888870037 947515143 786753220 957297906 529083785 721629086 695788691 837317087 662672656 788621700 809030907 834791908 486516869 722112095 860512079 984030900 53111450 164456265 234568370 705273925 793823618 862123851 611182054 620812059 973887063 995668929 71527504 654171982 503426230 735722493 549035245 588768838 282919013 720287886 221823972 824998563 834801461 954225658 48121801 547200530 286332477 655028662 297280164 448231399 504808800 651880440 948638915 974220527 130676554 676846937 330162500 432589049 219144545 887807747 839664175 933679182 171513224 622675897 223141475 936315762 864782993 933310532 439539877 556312600 702886035 806436529 717388360 726988586 280635308 905997335 719092488 842261818 598601911 945089116 11688750 325737157 914602235 915712030 858998064 933480330 135800637 490352364 740156744 999225632 709185986 927368792 643339652 948123146 285921823 794237881 279563505 562532368 823145006 973447923 960565613 998334493 208907509 297235505 148500421 535127217 494562947 527883955 686523634 709557054 530733203 915764200 227026875 582366212 809337374 905897626 852018582 866394360 135269084 686852495 276508925 520671887 554472201 583461458 551585430 990007660 35056611 551938917 561789327 612089909 389898417 654402209 529215533 628320479 63459554 164816902 147953999 993531366 199257571 736740855 835867936 855729756 176286380 816906331 968699346 994639893 671340827 775814453 258332029 473710920 550431802 590756947 697542321 927468125 729612646 836975864 836007900 986058974 81710793 638729876 920649633 952730971 304500183 503956167 475250190 536229187 558061148 803862297 492127382 823750435 452358572 760138438 174053995 269931567 801914048 987713867 62202155 838392571 548073337 636254256 542601207 604774802 189752533 429614986 797762823 834782708 986523493 992672972 898126747 982957548 89889117 863382201 618336154 790295402 941870918 981822836 998923942 999919819 887092941 963879715 259543932 721201130 622870794 648303629 932432409 953226139 606056715 830911650 3068344 825038383 213101055 309523333 846060904 929330633 582587659 634479708 305237834 385606397 582824413 710452905 340531683 741167050 212962123 373330684 481952296 935653063 580452375 876591727 880572704 924750287 40270349 901940328 75500083 128731273 989809027 991377115 820776098 934379255 817607265 877465112 210542092 278454486 632220970 656414616 935303758 965251525 726234550 749256904 679615033 913307064 258383958 309343117 660515874 728373459 689134848 743557454 584517720 614863105 773825387 824793761 534779489 699081984 881183270 929286908 820274614 864404614 323553559 962999033 818243281 942064139 56623207 724968276 118551640 539587891 295103613 453386650 396684198 963477968 544046688 819752135 80705803 180288327 738021624 947914034 802686344 974754734 466338376 883932871 317684233 929571711 412525216 913702013 159685269 409789759 725050386 808753387 668069966 737724747 523017379 568468196 139880618 414266599 584655394 672021200 790985942 898896883 274337122 937415837 520840634 597250173 943612641 947270519 160476529 210004954 266321080 548268628 53123503 560450896 78769372 613661083 72556330 568648892 780675099 926065599 114604120 648481374 379782586 855011220 670537375 755855239 80783815 710191480 721625658 908145971 525134604 587319581 309737298 506791803 774921315 987383243 578787295 885653058 886248226 943904028 20887116 917282630 546694935 876355848 610018102 736079054 120164930 988598950 948737844 963684478 799544834 866127551 359300142 403536856 532767399 946043867 435255456 666416099 252388511 911993835 311843584 705950530 622781406 903431026 24833862 875062571 879768308 996255926 742485099 984334134 396435103 726549498 596561383 820946209 205330479 867377176 875914610 994266092 59903702 541583400 871833731 884970618 21269699 661999046 255371420 533075766 217206658 913829912 683909493 904107952 630757060 862642175 901419248 947361430 458058920 941338382 355145618 791442032 345274729 839664256 699018117 921776406 405715270 600228689 261485358 498794768 166666136 871700635 201372607 447392901 928107781 941482638 581600289 635314523 271760372 626457915 127750224 970108785 536589755 971318143 930059148 960626357 711728832 934440377 872789046 972373606 257817740 669803854 797591156 919155354 865985467 929766766 450083088 733378931 812980323 964366060 415348819 483899946 903397923 997303803 223151130 278354516 86443160 950861866 126810693 200201510 871910037 941756838 172411682 460505670 165019203 745261499 280914211 658563397 849333117 990087479 204505751 765253381 693882176 939003178 842295571 919243466 246060317 989970923 679156507 930415255 543809033 691627023 572523802 762174224 685162519 736534810 961842924 985922741 443098025 443976535 450570486 852299996 582923845 604172072 115217507 799386155 692631696 937196937 593266468 735937752 746312786 949012884 457518416 836097004 246189313 773453756 9061644 485455907 520041313 845272191 396437708 750155976 297867695 755799583 714082917 829791559 723276049 791979748 704899030 986178805 187821353 682945446 472493865 956218969 609419054 912268087 852817550 986793824 94824055 456928058 769974816 893640392 241924600 413931537 697261582 899006929 508598695 698873383 957238368 961087046 218030501 497901499 664093779 995254463 699936018 906234689 147136833 752650336 809009330 817980700 773714211 949608234 461571647 806261436 139599286 339825267 477099735 860759130 268459166 772605483 191319763 956902939 144041154 307079098 996941082 997056605 456430367 835242286 857909614 898176895 956269052 978061694 463912107 897490860 182477894 796547879 936359413 966169946 42167390 367005338 116883528 794698600 189920500 469624009 210580319 317290845 743049530 937543838 15201631 554288750 755219392 839033208 3569353 217200499 922976280 995608103 975783620 996478870 130221791 685349592 363903785 365261845 671310019 890431237 993150321 999192972 993810328 999843334 775408233 975358570 679507210 942054973 140487851 789357724 343075660 455912929 119478073 426118037 65670602 133949949 583850530 744962679 423557868 772710822 235117878 567290859 196036624 557299646 302763802 950947723 956705219 966412637 923422569 924852712 946444162 979437033 267989154 295330418 266619292 930510960 663816503 923587669 308568702 892777051 236529110 371704154 665371443 953226262 412644506 477328936 252057591 388255853 430140575 512034406 407024558 856033886 84652821 366929956 518395461 922306021 327680978 703009612 563637007 869304458 201484525 799901887 717037920 741390250 111918971 359457693 838326975 899990168 62794397 507609631 308230000 911666419 908115657 990496512 698856823 766940884 271212297 927820884 611958041 753580453 647368128 933556525 476471083 679051619 853035574 934052118 986168165 987528576 715227439 771227863 310152188 588909982 815319019 934089342 144050573 721570664 596055603 731875969 485794781 578259856 895986044 962618519 978382411 994770102 776400148 974237221 139801263 510060649 209338841 353911510 1293319 52708566 220305920 642519131 706933017 755066570 899923385 982789762 323672558 779363827 210728822 393960798 300113583 507367253 404393800 476770760 253739604 917414952 220667756 410056730 315169701 917326285 438309111 941315315 594364891 824218936 638536844 765419088 9785643 604923526 229619371 487586314 196050243 329119889 350029781 903828813 538456658 702833910 659607581 891346718 825979667 948013238 429778023 806153955 21628029 162562286 920449808 988954300 398196042 438548723 454135414 609585229 878232440 932324993 524884942 726810367 90114345 791215618 552247573 583756458 680027893 870520875 512266864 852734925 356132401 397762232 107055555 828503789 583922497 982435572 378882199 977235392 479895794 912804425 110628097 277234301 18665935 834124581 507227607 844095899 445634249 913071957 176771256 734384131 36030836 977963547 885560815 966697968 312393446 552102038 458449566 593233407 844871724 933798418 926200632 959131245 714838166 875998820 889146782 937306422 409974793 841174402 277568169 864150949 590942067 852742957 933126698 996641755 971673555 990708427 56733694 390275943 114613143 270503734 507709581 694884377 801538961 878625184 212649368 381910332 666044678 975745464 557728900 923757899 662648044 684649897 802000003 961277055 52763809 546305074 868512193 923492431 806356242 823418360 245793224 680987301 907257084 991234742 897519644 930613887 290098046 947855945 643671251 787638365 937395664 984774409 396673954 438539643 200499699 546249517 291860410 560062490 867464715 906944204 666774052 853334595 894051117 965978895 219916396 878477307 78235582 196481414 639124569 843064592 161292094 703015697 133209958 679982697 579720451 764448429 127622055 374160828 949562255 981634542 704594841 794142602 888193817 982651385 484043246 805445134 962775752 990460616 318077392 769946915 595432343 628910815 788925925 978489908 369699922 428437146 629087379 821805935 803554263 869457651 896348554 989938524 707106869 908551215 451536849 686698920 883100576 960700771 380750120 912121864 690887195 813040471 116879815 976873763 222524470 949058027 545814698 628944523 945663311 947071769 28220448 721850167 30712312 730615614 699868702 860219865 383556965 991472200 431313641 820144454 441892438 697511115 581262150 948454652 565363946 587807834 405957016 955333441 919516900 978883088 888016785 902769948 986901715 995296420 619441000 934793003 609822901 893993576 201216474 335930138 728430128 858122356 830089987 868284865 176759013 404256001 998247103 999682991 656996645 974945353 378001590 562998032 885013350 940867879 735715174 792899978 452979236 494212676 727035771 895914504 840898825 926822595 228359366 773898600 588848088 993692941 41746526 859132929 614372242 773409881 250250558 790235315 630881393 800058994 739041525 908791306 716466894 985186716 253892186 763997600 629489859 634212582 328998156 923042508 952972131 956873213 415328492 518974079 240179365 981686819 196161385 398579916 260629498 349783886 302754785 435833824 793530239 916424648 378807020 690354191 729758976 947205394 285001158 447407391 90964526 234742992 324050772 652050165 754504803 971464642 162327746 765268489 756826944 890642748 805417744 899365262 157825273 273398328 470886610 882621058 147943773 756075638 440675325 673602188 637744856 648221849 344378248 740441321 257475255 766849979 306462732 606454700 106438816 815766607 892444620 900585360 722986403 727739704 823581845 844935260 379531261 996140578 365674977 775814018 40481757 798693775 348918738 656838943 241696688 765417517 711451538 764505152 70451610 293287372 489426421 682105537 518146322 549963741 979596099 988532011 401505279 716187406 524049385 990012973 500070019 687397224 913116677 962031879 692828285 996911220 729078458 780869054 715111201 917730122 173867836 484750573 323320897 333790704 259878991 273989566 721895122 839239912 205627913 701150726 923882209 976302869 158203126 912284036 334883133 946000270 341710691 907637171 693511561 948437583 11327645 541391690 807949862 836636416 789848971 840723599 931422063 996215407 592116739 800699584 120302244 612725599 359219129 666820733 814967397 912804370 582883968 750466650 196973154 368057214 153832847 937413142 351076446 815111761 154794503 358666403 502663852 633974973 583814574 885195403 950443102 985247196 920710597 969101029 947160188 967804338 770445089 986563036 167967188 735856023 233552101 889704331 436319606 737819287 297769469 473281451 149876887 228903007 275259382 462040824 656846234 873348000 203292237 355517763 925344002 989899237 734975363 865196812 170910984 725421253 174054020 867198464 19282692 133632927 245582253 988381668 941677297 978594194 729903362 796083795 910473714 958178534 520607168 805483234 797413462 959068029 771858708 807526618 51125302 593456346 66323433 90284492 394863234 564147336 285936475 453296534 691196885 828527212 434012902 611484667 372380001 828051645 735539228 847096783 80498876 895242504 267550040 683432100 264289238 787934845 462484580 726412636 282207040 315066560 928987625 946687459 824505238 825255214 514331976 699195189 112483385 804108274 854137848 864852241 51140471 737694341 961928140 990269962 135153620 538691134 136173081 602760969 869402839 870817307 705715004 810989031 154980991 935181420 249228747 306645552 577717080 604167038 138014769 810653174 400248482 840359878 473349006 950542114 868383854 983423298 501949892 543602756 951682028 977751993 108584987 873319664 420026966 980611696 689501587 887702464 371317658 410880255 356055940 739327837 744772977 764661221 358137589 881377284 56820564 732193324 172178022 593779180 82531859 824976417 829826733 992976262 337790952 583353183 17527602 271046343 677783648 880034486 55118584 536504494 603761480 778684577 164137147 788811135 902212402 925125148 431190832 478017499 245785199 372535323 703262855 923137116 272198292 344894587 975685056 999390900 931173847 940305010 959959141 997781912 740049060 896538152 799759137 913429329 471394451 899376120 357333752 836677492 515983146 977853468 178229511 618804061 432349167 554506537 428228500 524490681 411416427 866772118 648919909 835129080 185514860 486828284 116920138 596555391 373549252 645172749 233282829 977883464 774890215 837724007 790492550 794800425 581312565 993599760 716251396 908957491 95880360 433626433 596409422 915197332 102295079 585156637 165283732 264028949 936513536 976471549 580895034 893590840 248467709 590189650 96523803 547183398 293539079 777370704 287642078 771982980 918323231 939941663 190831534 987063844 175014304 662394153 767118409 861384966 798840245 877120500 255619996 292560759 910120067 976428308 136472217 956158176 447311412 625725850 324096769 892258497 537774468 725267453 159848110 428244534 490925782 945830176 682740156 828902171 676284672 996434134 662887292 980998494 241730902 374572210 164784326 178758938 415154831 669682175 64554163 744132541 600369682 678746925 292659826 470135281 533675666 706952709 317628517 441523779 211872512 489143073 568558756 987779094 568008129 778833544 267152806 982684145 627811176 754302093 208852165 577382288 217005382 374732533 654487901 919499773 591185461 936469388 485238551 634247422 819858641 904351149 698779458 887612042 755123161 856513759 575938543 952953319 687741891 900252951 654118862 760699733 756574243 870337470 323050601 373932109 919699945 924044750 270180387 914021759 965501639 973905044 3341703 169339443 592780539 958220404 491916227 837363074 452673378 743748276 706850121 710212014 974810809 992222218 744668147 841218479 312567922 319488089 63238540 312046921 452995302 824180405 388728789 701001941 650953428 831562212 399080653 564094909 997063673 998468974 204999831 936236046 865413621 901965629 150619424 775919372 368877555 632390851 231065534 339256230 42466158 620705051 684132295 822123146 786770381 860358976 42051786 793604052 871052364 892991255 453425365 866190224 961193001 983844163 738028233 843030604 530648668 794324572 953861483 964112861 551102423 883875037 597086201 969362865 146040143 350038710 371984071 410967858 340097056 839800825 357878818 681963186 553556743 688773186 43277780 140566248 262454653 791589227 425547925 817492396 393353817 519954524 583365628 896920550 766325766 826776720 651512359 937336235 242136293 784282531 718750452 984147475 787898623 961458327 938283800 968348915 436028457 806449370 978638574 984290388 479199524 671594198 426204189 856161361 890806213 979914078 866104450 984140291 754347520 930692266 63773134 929946884 423979079 751058717 26566010 936374021 270792937 730817390 276799013 338779780 934488570 960744929 834137654 930331461 375428551 673603673 770771714 853175298 453712493 795691917 426168619 596829641 726431708 962521353 983008165 989612726 848431971 942063035 135924067 727919986 621469832 828322241 347062404 900354310 728141229 953280264 860924890 952810748 472691285 494993422 516361420 858931674 244865375 462528533 616558163 770522441 529685395 641035122 227135111 870557375 97056629 345730059 223275829 505055182 420047102 433198997 568487103 981455742 447873258 877508703 766994460 863313101 291728705 602306787 736988526 977257483 940102497 990590208 708917736 825722315 188881379 230592781 607052922 814662278 747146982 759232794 207398429 402446147 743094703 747825024 615369887 920432722 139450487 140876392 562318830 765066027 372439406 799142979 580658008 819212928 136034046 269012312 569916612 862237817 596227042 826663260 378573288 867456507 620231034 694064424 775631681 847326646 105432419 766810568 872022165 872933179 701514506 781295891 470439545 868732018 312750913 900284216 318608696 834687345 407190557 959109873 59528141 493994939 486493475 767616937 40612294 509724941 562214868 856947337 506252071 507409412 92605283 269721135 550778810 782015066 811485854 835388951 243780619 705604100 745676811 975987374 534798277 592617755 292788592 415840719 598442155 758687207 659695638 939763636 690040305 759072647 208470507 459009903 548532970 699893834 94085753 187877583 363477572 427881773 532170504 906364838 556408844 633723920 908028713 963339313 785278416 961317830 873809121 904649525 769617037 832518646 363045768 452337194 747456150 971559858 933306803 943743342 521163622 521661713 892153525 939206612 772562752 995395412 832105057 895662045 212980782 844616155 238695372 324089747 31201045 712621903 33004918 965879428 47346543 79245794 764125693 904903114 221625411 726544761 985890608 989498089 271051384 483937391 104058638 844007327 215207376 244115994 880304405 998362536 630540977 880143451 75666689 826171846 165481887 193192144 796019843 823913493 886024442 990574976 834470047 958574275 773999765 984530601 460631603 795995006 959738821 962686801 128857119 929238520 129918022 952955802 166245092 744888573 880114443 897000767 826973692 904849939 945438731 972164688 614460588 858086824 348733431 724541546 324242229 559876759 443815592 745006258 564409608 715181926 448752699 456701344 52699523 736212060 488870745 885193925 485955868 553740714 282017361 588935973 790260014 881637619 44551177 164783622 186403717 736303834 804637190 951633245 525824351 611143758 15414880 338413932 37274520 344470796 52466268 825598308 203524375 982192601 606666897 975886544 408856030 935618032 886578222 918174356 31226049 403946466 533610926 766656830 757531998 880304492 739018517 982867925 913538629 980309474 837995467 952135765 471001182 784740251 241088802 839435184 411865059 732993598 462866159 897459664 969049871 980848015 706654526 805569359 194736437 952037039 75152439 761050846 750202994 939452855 744869188 808296465 157242969 689227529 830764205 970968819 350741473 807683118 524878873 966759116 621755154 805194704 258317380 494523157 787368519 863634898 835555857 935546373 433806403 451393968 231425354 373231531 811861664 993241696 698662378 805477071 354380836 441972558 302569360 724192383 888395802 918330676 482092857 759428914 576301441 843299035 322478640 710212889 811093470 846963832 685332819 729449531 446832553 547026102 236443644 808433654 488820781 513249059 156873751 496926347 373069441 427133201 292810582 958494723 343371925 742191799 74936217 902358611 694965981 779826223 565940233 586988036 99324761 235688760 241718108 725023451 187020448 928856718 832152628 873427284 381813776 923483023 477234833 808133899 982030062 998473015 165059963 671569531 733017819 809619293 584167447 941587871 565060878 633944702 96693737 727852307 884103135 968872710 445501666 846003809 24129029 825728690 100178861 930447026 455636579 586160240 630788525 927652466 132107239 385262756 153441216 691797318 325650829 458172690 802861693 846674884 280051656 395811412 539010995 742592489 806660847 834141479 568212526 614064754 706960066 956479845 806772882 884615826 263767839 570756864 4025700 167181340 366804080 440179180 649296280 732419336 970343769 995801961 412985911 546612784 729323400 742441636 664458493 853426622 442909013 975853164 476593567 534183997 844355556 937342505 206802412 477143488 451087379 453500195 597453935 746309807 702395057 828385703 59234950 741937844 697402256 892388209 524978778 733649993 349184527 948752758 371424602 776805789 912923722 959225226 509202130 889945140 670849638 836253012 204850343 484772002 97979059 339400863 278424065 586061356 137106386 793910775 477757364 948476976 152603213 839867977 611208928 966305406 706861522 961855647 424557984 669278486 989167498 990061424 740243146 942171626 69858738 139990857 520691341 896593708 774707380 917139170 265224506 893183034 153608534 451292759 100002064 793784184 290360609 482176464 450893191 570395909 268243294 773310291 97519337 334633894 205844318 467485432 315861400 684439747 790013351 846061999 726099770 860842704 227704254 251409888 263897332 911443970 266564779 289825339 87189761 912821666 451552557 500188351 722608673 743695699 648009798 661977036 335564930 619587738 870658533 905254254 684996649 941650524 36354159 832428184 106326003 903297733 738820488 983491509 71305798 94137628 196410498 837777933 857466374 871995933 269975364 691384308 963653648 996008649 328087751 912510391 389633086 687124608 230411920 482223650 785447249 893016553 57027227 94398037 523455301 812764849 281110215 434219131 277079899 821430501 903406393 909797394 20154631 89058688 72440319 154708830 810328172 831490261 466908304 575696110 850983000 920105114 307256960 728055584 550503121 798162639 417263648 759048698 851031296 883773233 235102163 970847034 714983524 998240316 849790754 942568923 116468736 728452089 5473269 240121167 89291239 654472496 535837721 538625965 354079353 739014041 297275535 513486267 645756587 790679632 877262111 898496819 220195084 710066603 810773167 815036889 623703719 847200215 188469388 774541122 235758589 703175275 554659414 987697277 376047302 869254855 530545415 855989600 605673977 798235991 460932053 619420883 492848131 944707620 287684384 486377049 619029132 775943778 371177743 963376336 822006621 889298713 668727125 692212335 204261516 806045516 868331325 981621035 238170314 723942089 915775324 946869222 764254779 812346175 422855035 624692564 255484637 825161416 819158437 829443196 149673379 726625462 943597675 982354997 421589580 897773377 15727229 847434359 466926856 829701810 544555139 638012211 455090329 762607135 457311550 655796159 52244073 264780709 404504094 827241309 326727526 438986767 152465473 878231275 89876459 976320649 610123110 802158284 397381794 634687733 278977007 653921520 664772896 982330463 234849874 679575213 701245879 921654907 284554963 717800482 580572728 696169199 478784609 707124341 551471505 895201662 453508816 899518046 86101025 236851460 581343380 741035056 762954017 884525195 318828448 783687692 222499944 759121354 898170139 940277487 360760497 849594823 970532168 985111545 248852462 613168975 795928531 925740838 574560575 841749372 496921448 541158464 763252643 959765777 624093060 919712001 108129728 585942621 591017404 651475719 179732535 663742501 133429423 207299221 541952662 800424004 420094880 581522254 674362786 845484831 578485161 606351950 292610842 727544183 81198392 617629962 961556093 978230754 907057294 990213414 499767885 735755519 934875617 942686052 659181386 864805837 882505523 898298825 495569616 855945261 334841490 635251058 227139367 914529471 570096830 856184497 559787585 588325310 1628056 270736134 706945714 813881010 271651670 874152067 701589796 793313432 311571411 927847125 5404888 591430511 998222222 999374933 997657860 999799252 863049409 930290996 153301318 591713127 999303445 999522118 963136222 981600552 49388477 594679296 743706781 872019437 949072160 995976758 730176904 801652717 627043747 733868191 643991134 952450082 51367799 392234806 421183470 449889580 300803419 565881015 869358130 891988664 959882789 960582438 331131569 371663296 707463585 757257001 611297129 721314871 824200979 837586078 580630057 970664172 986107308 998593374 185444038 694583580 120392076 375898175 264987347 652930394 953900623 978177512 497393961 501230489 641554651 666977105 648875398 657490828 810530515 902120248 109079768 161981600 365121776 567966684 988941527 994926640 251758287 414304695 220691194 918936004 802563368 854958728 761262469 861398711 929599998 930331218 848330897 974761696 220278179 943844035 736533507 812293669 935116559 957635859 29142677 541646394 876524941 965497185 5542388 118610143 949428062 968560945 749609301 896577098 839654248 907041748 186007722 238159068 846143771 876747793 561884551 914911846 770696669 902484932 506176020 545782780 339584604 976340369 7318121 359058402 464369486 697040891 468870703 926993434 469470221 753494425 27365414 177490332 55383391 847389043 770687036 893346357 326544544 647535109 478368191 752071479 789838493 930957452 203930311 698527128 291981944 547452916 132007347 149832698 200586184 505372848 732240836 831565096 901891398 980541967 915762083 948139422 211557631 877107265 91041945 272271207 184250013 267873774 838662027 901987846 535991795 635590079 9833323 629867330 203791266 464076255 474550126 628577242 351916388 439855594 648218433 905794818 54215384 645711730 552036077 948108528 450743653 529593004 516824802 534378583 6045719 828796996 646500300 867080155 361824256 650367547 816104933 902717819 806915259 869994298 51148790 335977267 209864677 376345616 872471173 940143607 594045762 870202544 103581999 120060833 85905253 175986634 257282296 613617600 803841828 910617565 686293291 712594080 160095329 621910014 357372398 492909234 326746641 544672499 991882588 998103837 173997005 399180115 622623712 732881247 211526541 458511081 700341220 889551437 735605121 894122842 61790330 944409593 56194869 693669072 651417853 869572605 662833870 721052189 384929416 610486974 715999295 816728568 547986366 742907524 186564202 442979525 212011826 431659650 894266570 963738048 98987488 798758632 584471247 781661798 665060277 675274126 67051330 673541635 313534163 319577609 82950735 331207169 467362724 477724709 488702657 605781016 329142784 996467498 519297000 875065924 134840320 637250115 393235393 402542456 486718348 979813980 626441017 940197791 284917733 386386681 527403756 562871312 277241743 630632085 823162918 896035160 918467753 952208601 108925961 383656913 948364830 957494530 639278228 753982849 158993301 771119369 93089576 415991550 539587225 609589601 96206347 536593823 115059182 230979710 903800584 953370109 599741768 720274504 587768855 921969492 841139668 964968928 155957719 544052952 529940489 635109506 255949763 452724976 877054451 994277654 410945600 810104825 411409846 635542667 670040924 874134630 174371395 219898455 837268842 875810537 154740795 463579571 632177978 985873884 210740436 461683703 344060141 513068040 785918680 997887148 728604095 944094169 902685962 923191974 4688785 896702331 353155281 482839139 565111127 925372864 741097509 915487579 7524514 846647544 65411357 683607811 3459510 246044752 891712636 928924313 978207605 992189170 69182034 890589222 39054904 153976935 242383639 840153998 796858691 829499199 367151158 392763489 726855120 930485126 721211200 780479202 561085389 871244195 964712816 978364683 265784875 498586195 395618231 447838744 991216051 993198761 280570400 347679463 115007304 181873473 311137077 816846602 569757356 751036442 207266546 603467222 256275248 483736295 545251960 949934802 975892211 983515892 524708133 696398340 162390281 530574742 934226974 953302551 468844048 948189441 364006422 605375202 993038790 998992773 953843923 973490920 340294283 464627967 457413665 601116775 695993996 929627448 320714929 654235878 564940906 688079407 417699651 514001183 325157168 534222930 144126424 498923016 77930712 534777887 220289083 769130235 640298463 878120891 222634965 603680029 248026009 602588814 303881020 866449399 672550802 857460450 129696755 827933913 804110643 858469967 221511050 970318718 81763650 910308695 611014098 932953422 371577167 472390066 135652048 956155220 800333903 802235192 564822092 980815232 690670561 745152040 892183386 990080396 130175403 589744668 431537730 731230704 70085286 250445474 506828990 546414826 703040254 885623668 577866929 582652051 192197870 725048789 162077493 215770306 665320893 684030192 461738371 872646272 392655499 560912264 215764737 412657230 958411042 989224703 788607456 886679960 269456893 735130879 689116516 753881074 110145247 463872377 378924472 688525172 899550303 971335026 872992087 893467023 131023189 254825907 909466517 947957422 825092666 837666710 264777754 868718947 660510466 736102388 584991088 763385115 269079723 510411544 156610660 361118373 845355419 904900345 100375196 470650406 416894994 931047179 190819367 382282680 891160541 944019518 69835948 807636429 363625025 779016091 624069931 969300823 687934040 886699249 562069840 948707407 12990870 449326198 28346759 28824933 794538863 950997906 96270476 692473469 952511372 996659220 271412590 473766242 691441648 764226799 951313354 999405974 7381744 937821458 247184533 844608216 821501390 886221684 352826892 949827688 924240550 954747697 201091733 306572515 586947126 985906655 682485351 849742467 667573637 834813029 297586164 977636311 819107196 997770791 810979603 975084865 842871051 948233245 868674412 982140312 486291487 504883151 566720863 839646729 178514646 379504764 829106513 910294436 348560543 470466300 494822308 549145569 204297529 657880501 396921932 846166534 564983269 835634650 764949591 895275687 714512427 745348232 59248549 275974146 278055382 341957161 316273345 783267842 762557117 811789350 458712292 546531611 120106587 600918412 585440683 615115855 972535095 991082894 447792643 816857083 829441388 896905013 168955777 260907346 675842749 723698259 658386006 891583022 310901963 387414303 840114885 885051203 225472691 288933694 437166269 824144451 820288269 833931178 619682690 647393318 832721455 856317336 198999541 468251542 508479300 926337904 921783921 933465743 607465 709284133 894691406 980241703 55880139 127445576 573080485 725580351 138159741 252103201 255236682 999090490 584342162 856803914 434334725 894356328 892215653 900674837 633659123 751685592 741163672 939139337 576684254 676487298 444072769 542987917 701122826 726289940 187873301 695710377 473933640 608862502 468840136 871200844 385916627 463849397 91626946 788445924 291351264 566104017 915959077 970705554 754768514 799269246 242153962 360747330 78211860 505941966 716779803 962421593 477569979 975302080 762404083 819818196 891197478 965599030 699157576 773731465 280359248 986314054 76234067 898588449 762418311 899061248 281494484 396207511 259286543 810286413 877481097 920183889 236118340 584847440 777528459 789683912 799553595 985879335 255576206 813560412 169551814 865817668 349147363 921299934 516264508 773304146 817459199 848081114 956468613 962897551 704725630 839547526 717286843 987055961 285310070 805651523 712934524 936433669 835877642 879136142 849985340 865282253 296994125 819395335 188051491 846508129 370065031 991668715 892268165 918607480 808039019 821481658 33866899 504545952 164844663 243420152 292338867 569367419 416716080 685073335 767402428 979715065 774098721 901927788 194610138 513383446 868765042 940535916 689789631 789331449 937785005 958560903 657466278 690726472 379199899 809721602 11146087 344284757 642412613 954834855 839805785 886715603 330187558 582568936 753353275 956258503 891105879 981707248 275233040 900576299 122618759 452373350 461086182 940405348 616261423 743143569 427060082 647744242 190810402 619243156 261300537 821604583 15366726 161294708 282437820 815243874 217818256 331946209 778468105 807302872 689958940 903024499 148999820 891816549 679432543 766562241 257486727 554518137 328510324 540799851 421164907 826930029 729070286 860936821 562476761 919703738 78896167 663528334 544460032 719149144 341532999 674039817 201684209 530047074 299541230 515218761 17117779 141804039 829118299 991790130 56637801 854378457 142396450 288242667 425023536 951192402 574733938 866284012 517929131 762058041 178727423 777603978 503263391 533920599 392559939 486903369 623883628 941970271 890178483 979041978 706769190 855968403 957374389 958345068 444630327 987862554 987387161 999765617 521380516 830180862 846955432 853595907 339593446 909326608 468666839 916815712 979941356 981637802 214597938 968513290 495526737 526556320 60049242 744304060 607743255 661557538 102032921 553334241 367296316 649157975 277588740 458541712 393051601 702750536 113683184 853350740 702859815 775488401 810518962 853316169 59972539 374383166 828601629 952637786 948022083 969078242 354805191 506036025 979760645 989633084 233182362 847940560 457925374 637250181 73502117 237028831 658659004 712356964 35914853 157421765 110787590 272614339 662652268 951683981 366052314 570606414 619141618 822455291 179242137 280503288 434078758 693256667 805635678 902977292 141506633 680372103 519118235 778505151 634560070 763677439 437208611 536320404 598345546 833741941 652993858 961689630 577299689 584703312 7503427 154017246 730237683 956692680 326299203 615741875 320927701 970912379 102441595 563768365 749166459 902597656 51190951 438184179 59408230 581987775 856800716 917653011 251962909 780848535 81218074 791760504 522186861 769420960 646831724 953751378 792476810 955206036 658589395 691454051 803898774 922934101 357879148 898743351 688525446 767345512 421339837 751988251 644271141 917610548 212393250 841298912 405800648 728181928 942198274 995670889 59803174 248233184 626262958 793838983 415781362 825935827 121637741 912165511 857122068 989079129 690553909 969659350 463819776 978289970 697385716 836408676 137410441 394877850 874620385 930052479 559020325 689291607 669013018 906113823 851169004 978351609 924017911 982177738 68091770 988355316 901124234 955075219 47914951 231983399 844488698 882016674 855491109 924621334 331426894 890127995 948303420 970618761 477944245 876760848 269502276 917910193 344847250 944301816 304839297 948829944 251812699 319193141 225363319 957170284 466942946 679809998 89841152 793684739 493152670 734204962 466070715 745309456 143858077 706609900 798716098 975128604 431039361 585162255 327279576 574569886 690880880 966988122 410387765 912598127 511483964 528310909 710723451 840593651 58358922 432584868 13711291 707513141 215497274 491948764 280979232 887554503 22467190 333415166 640872646 815906424 59515631 633429612 675617269 800895910 598028949 663454952 646276702 906283166 799683277 903892030 521049945 749419368 628384772 775226097 797492825 980241220 218550042 705000862 749870957 767036228 821430726 929838580 968216283 993933689 30911373 49371881 685393614 974262262 425600439 792873933 637345141 697482457 968704319 994203537 258570152 584874488 247386076 514567070 659621722 769114758 211816143 892982310 299924341 399218634 939091975 949051388 489659392 888164634 863182948 997686664 261403847 981043981 949091543 957084600 22806746 262539290 926104185 934927646 177310974 470212422 242687881 277980922 337430994 773696181 611472407 847619829 474129944 939260743 881186638 955326251 939026596 957675164 530648728 864777480 529964042 890868885 707376934 764697173 832589264 846276720 765854411 809342627 683903680 992193866 129114959 307575376 429645980 954162958 924318698 935557913 520981278 910231560 710065673 957309018 171027612 858401094 417872330 470141287 793631304 932624369 317703067 484126306 490157055 956310197 184607891 447711609 651368719 820110962 271267602 988175652 138987414 731071162 705653068 726122893 721557969 858712609 839647191 976487612 949003643 950199602 975995078 998703564 802783518 837736856 129132223 525497240 66765927 499753834 180615208 930865103 403465753 947522118 99642688 469434328 238555193 519330354 327163010 602799769 884509175 965984984 727220424 870455920 713955666 757358253 561196044 672080527 325160384 480437415 101229499 684437574 622897821 808639618 215846963 235754244 560505189 669313089 576602834 703912418 244733901 403307695 196362868 749415904 623729341 982636902 296609190 591708482 604026542 824453885 383470387 720229801 266935081 989142666 32118269 857478666 245573851 503476820 301787662 658150054 819694885 953872966 245165551 509585716 700511988 724939047 81885565 874165241 919127645 980690697 616896823 877566202 977928310 994447336 52721151 822317863 941921454 984785393 22676335 473223493 204853639 630665210 831551995 911244354 245007546 557556673 706137281 762807873 568162733 827054747 504408891 722808222 372039636 609070930 724994812 823167646 359821209 829685734 637534483 649776140 726431831 852559252 61152898 602305765 345270734 825144153 716687599 838778451 390124470 589877683 640335650 808830413 64929879 156281140 326003921 916736640 74479570 270332475 395611071 924697686 198697780 601067713 684571108 895293369 361821012 560508492 238765169 826158535 323324380 744793905 201619339 776517821 546251746 607928068 28234426 234122866 302912102 685881322 736302217 935726830 349039265 623935972 781872440 961885406 613415262 649147466 376556630 569711357 437341743 473711075 631076279 793695167 9406067 997669036 970670959 975620053 226410418 449440732 160374107 548558441 648127771 649171322 177537902 864456597 710807876 946569982 905104658 959660197 536317765 985622147 106267134 870095659 719899334 875360245 182765602 463951332 263612135 453009041 141647936 152227579 166351561 790314324 485004601 757255510 474346688 594869938 983185600 997621931 455793728 533836997 708587741 815271319 725737216 845831258 554199660 728919904 610774211 799627145 856052804 919789029 500283050 559031414 36514735 357138595 730701792 828441982 772139195 927270198 794279617 988262162 603432808 940185644 192892854 436107935 852393665 955129483 620236160 949836248 519113441 872567077 490514898 871058098 430140568 758963740 972302304 980069535 621110742 779844891 8804012 30864685 506248245 963995670 452864559 489025290 31992186 196469242 346155983 383590840 502033829 723947267 578826136 759034532 67825433 875941938 57234673 857468476 248553598 873413620 683379695 815955722 308683697 745711301 830460473 905327167 445448386 557184396 188407577 900414442 536936915 976069865 162411805 525406116 380426992 456609452 10265537 96622121 534252990 901935470 754033032 820940553 770743874 966549900 881618523 943533786 319287567 568304127 160975925 798715172 942415343 955039706 452389934 948998353 221813743 700682732 615556125 901257369 485166701 782414718 78211480 706197186 615355469 812686453 879994504 978104180 544199669 988328346 907234979 970071718 604437907 869425906 731647548 905893891 907548760 974824658 951541563 976584293 999417045 999977228 833752655 961466155 588971558 877335927 130520184 246204554 242185455 953704695 838113226 912066841 427472300 692756862 207638279 894560872 168221476 957542322 830879489 916865587 509006990 627030637 602889140 869788053 97125407 781400710 37522381 396616019 848588763 981207338 339532093 592762851 401030421 922290199 534168527 870818808 239200122 436869404 626651835 713873048 268231694 981664199 864619267 988771573 400994037 859605621 332628473 975467524 556181890 962759172 146439100 991371993 341612684 980969016 638105768 892626148 505788538 679222244 456945562 530550494 779029613 790218391 149386740 189650836 71514825 187628907 481005837 753454696 110695536 438515502 5311766 495405114 142345427 470413123 489875975 502071362 643225374 752732114 83527503 901691345 262384916 694629455 833166628 941613922 631006578 949642679 780949851 916688646 568138969 796916472 411471343 654961643 448827246 953904090 419494250 715831848 234178140 843806075 352040049 477215481 457121031 841031510 258436595 738014886 592810922 651608919 106208990 735134620 838257041 893973452 155798484 926411246 438036741 878515405 160519199 972570543 569843332 821323329 553552759 705199579 136545765 295884986 722554575 942228922 159053605 883193730 608779531 669855794 123456444 773544771 151545492 491463843 715805728 795456616 834796076 993420313 429884765 685405250 89554409 726460745 955888425 956016411 542006699 562528630 943835094 966384297 406167289 903610042 791103109 798909906 425498161 461919195 878781776 906932666 489339115 612518798 199463890 931335697 111417791 128446223 263597710 748435342 71935159 927810404 612543510 941445902 391124102 418940959 370281235 423634304 148486824 565068385 605351962 879715607 532586696 553017126 205404716 927740444 365423294 998286436 183900584 386052631 290680928 664401302 98141462 963816321 446192424 694600758 812548440 894596700 833391676 847524704 846648749 954266482 318070221 775712755 714145304 994347075 186020342 990351565 255939658 348460092 671814891 885535534 184249828 385534008 833501612 991797423 755490672 987171436 795228476 945031588 274637964 620532742 94115514 684527059 424206790 934916225 643010860 705728850 350069341 986408015 937085687 996980951 15193614 312485992 974287059 984577354 677581503 879173936 28030907 143417692 542217526 965897070 412119009 438159674 519442124 613099964 966977670 976718392 826490237 842135938 238599705 495940987 99465160 194056134 425756868 988741687 221947735 868409484 400835972 881870961 38338466 971657714 951745492 984173559 516658741 759510201 966414065 987639405 635699523 888180021 993169765 995112811 128658332 321075764 41003578 989935650 778295071 858418046 43034549 320788876 314867786 497292523 447398524 467757993 918668441 961430379 458420497 824048519 494309451 819493132 330129352 521424392 958842068 974284594 422949188 742770264 756395373 998180179 637998366 711332888 486674724 931160449 345431685 989560150 818070403 898443434 860082688 890786670 690734457 972381709 384306720 796301051 526426503 647458024 643401555 904471595 103825921 322801070 540485133 828466732 717513535 741727026 486987643 558856083 73242413 277279769 744048159 782694579 582780326 773192802 214570846 304284830 13292698 760836477 461325259 882747694 94537909 830190416 629155083 673396312 753047384 962595363 430931941 755239897 783014848 859945323 12911929 788160467 921981411 990411035 538861640 726394232 663385330 906456537 852127462 933169542 105776891 590207232 327452326 508433856 218950715 634081196 259212304 482908708 72557154 197775205 990371996 996971001 376566938 466563965 537923949 779376148 732797570 957845053 861455960 946819827 477968045 928000885 980234798 997863202 910687321 937123059 723930264 914610309 283500710 709689772 550133472 968154651 394558243 649452346 247196535 779560887 656666387 825669470 27578810 333136061 431255145 521692963 661291630 837631487 860988968 967311447 959098047 964517473 138141448 651379647 711157042 897464292 722955902 759489389 909624537 926835761 706122118 748209026 279612598 364995554 93251692 846806402 630206069 977077623 790229330 813072828 417331242 953711602 240696852 828417456 908482284 924472384 18683178 830656249 260729244 644885925 763659642 995601026 170814007 760200296 22757958 972951193 847647778 994366180 489208628 536533271 322589707 650110500 343161556 827728505 814777880 831782664 524582068 682146201 675712345 868657736 794144067 999588200 562736935 673047084 106724168 872639750 86670154 530225419 241832369 695974871 819441154 980774842 196558778 917454408 387605281 716629852 611122460 992996407 159062234 280823965 779016486 966654996 189966044 791521555 832297727 986706659 988874268 997875544 254180572 767145189 602136415 671901433 432603080 614513633 988203399 991961268 526379883 858716153 734514603 943629537 953151678 997451276 60063327 160896207 282602090 319844205 715369265 754689707 607156081 621379826 88091455 926588591 664265736 935860242 302573414 858249449 112067033 743618651 381575525 869758134 555369417 591819086 295725479 390639206 907540436 913077420 472968210 870680876 96643832 168753664 294191914 471794568 24107497 488504108 598935209 943525905 908881954 955987606 928988777 934640534 874005438 982100592 849681587 908779690 712756982 760249795 425833873 582538187 754495645 950962305 679400237 725205585 920422594 961459361 241675302 409634420 614640494 872222906 609923181 861987962 931188353 967643791 259832703 327036494 923115144 973771140 387159234 810559302 985953265 987947118 890183852 939673237 506401443 664072970 559794769 667856412 962766145 976482718 943353103 978149876 551065120 969668956 993627927 995355845 169684743 549657265 88162829 972953596 20644576 251233740 9763055 855448205 168398977 505645300 258831250 921275631 207518210 926716023 980684050 988435693 903353567 928546741 530719504 948583157 643251755 784482575 492207373 897705820 334254107 498413278 308116412 867581272 18160863 724585373 818425006 819164454 255424146 296154420 466021214 978569626 801239960 869215511 795072896 952852572 176339928 824767614 47392565 926689582 925279528 972175128 897961242 962183402 59230632 821835651 601482264 607910893 697440730 903252826 306862479 965193061 725015240 933305320 90476801 262898423 74720225 459593762 55501975 58282138 727055941 967819701 540241647 747247856 734903252 885178721 394054446 401713813 837318597 945803511 989440328 990574694 180846826 758040123 792696293 883956024 947085920 987413795 673125675 980216386 745530576 813199663 554787005 569847468 971021062 982091372 204535773 522368971 528137264 885103873 337955961 993863990 525938338 775214033 65316556 787475576 217115231 674319498 323849152 497450228 985794488 992557102 912954325 982845999 112604786 634996551 801977519 872840631 294175638 326691221 672583629 808591540 865212687 883957594 580466265 872230846 387870755 665934846 940810069 969624872 870580354 968614697 340815826 892454448 698986740 793347140 741608221 952593597 495913724 590402474 35470743 556344752 864871031 999396523 443849505 863143008 680635376 753375027 33432552 287093622 267622793 542323719 976903792 994442638 92161049 195383480 517135838 782237155 193728065 616620286 996883527 997370857 816013223 896160678 468290105 670283358 12014224 513611799 913009886 934187391 716272499 785602244 962040738 994345817 635991369 791891159 369872226 558244185 887608820 893368380 570631749 696044038 651012667 657011211 78564832 649874119 610309639 920725292 591316543 633341625 619643968 806367083 615021011 825327274 543350256 942304164 417484828 602209574 222732789 937366949 590616790 888549906 681485159 955832192 681566469 970256100 756811710 851721896 445496527 781912552 31949292 797368652 213962644 276021971 231312269 429014037 731896994 966081746 466710447 657213936 369489117 819042610 249011725 453416130 518864614 736629918 677025736 940118415 242291718 420208800 572582299 771236851 616056601 696798213 537074663 988760739 608613367 866968980 551443764 738582959 19448946 237149283 994612989 998059320 461334035 696717137 216815605 687056419 180705007 970982009 375267732 748128205 31749888 107661850 861146839 969048715 134780915 830325901 133980960 716324926 592876260 784704412 700480797 956521829 44532272 777081933 124544386 388553401 984784648 991470493 564588503 821696300 471396849 908903766 603249629 977687337 560683582 702429883 844797183 910050177 752241095 869680541 129513535 877552262 510592937 568121273 560626732 981524291 222907609 402823040 343189477 960689139 671521761 890244965 137885368 400626003 513458151 691531986 265813103 687428035 710999691 840092205 276800324 814705026 237661734 589559980 976155563 985780174 97136104 710410182 420698936 690169605 339798084 858032005 377712979 767211471 637904404 837096448 57131723 172265560 128003744 264691941 130929943 244954630 598967016 736784345 341414650 398121968 168394454 710135027 300623064 522034421 539362730 710901387 381497499 585098913 764819239 808472946 956221648 965579960 862188414 908148520 870973702 908804168 805147042 880022473 767337223 860851875 220103395 354144276 577636178 654843583 488961787 930242083 531237921 987680229 421427462 871562290 510938510 589264940 95881909 394541749 449400091 584803082 714847492 976655771 26523850 431433075 194524728 842209024 546512599 620771985 1240894 617170588 392208820 491490319 517749709 708903820 77208477 503057698 926757996 980920220 723914372 867889222 170373408 674272639 937392456 980723379 941106690 989214491 472348778 635264767 206279485 331414154 892931667 957158001 749692145 806717784 305747299 308084713 807827283 855981119 551016354 633710086 751543649 810111789 348527405 747233881 364016281 909712298 574726935 641819441 597513895 980141415 702653097 846887780 451339071 457736739 165990418 978505362 640234764 905902012 738333477 997180100 431967934 838558371 69128410 660340513 24558405 79225680 307107631 944625518 791419049 933055097 123523185 414274870 937850330 989958980 84811 497448886 648724147 684141295 794252151 811785247 980570976 996712761 316667608 651103468 232712479 586251739 629574813 857712554 734534239 969900855 774467329 997442759 230722079 756226333 301006887 966649789 308972156 711159450 554100297 648681221 763938808 909698183 366733303 740819191 449718744 911699917 54528986 133377642 255492148 981723423 483898366 506281132 191716657 598908891 782608499 921039767 626168096 832672539 450624686 669524107 174663831 494960955 967888196 981646014 458285571 877183081 951206143 967531725 944945764 962583541 540851276 972246016 812803900 972585445 351371476 814085402 601457898 956100958 183199295 857196709 133300316 523110109 216990758 454912755 641118311 641526839 930057652 955296085 136371340 970974235 761032924 812077906 332481583 542181664 436440616 734165663 287413507 981880714 8335953 919611226 581756445 818376899 742498692 962108598 606290716 896491062 137233679 504112847 9827414 608501641 735305972 811227389 912411911 987173067 943523365 976168040 390715970 535438588 42041574 943629346 65822101 312560318 830356291 892206030 549745689 841586860 481721670 766352484 489155357 956534031 412961385 506208680 709947756 776292487 610598129 873787265 932100158 942760591 706452754 864384477 986832656 988881411 190805396 488146104 811626219 900611338 960174107 971352644 886034778 910247407 235864523 574468016 186815313 921038593 938786252 956952813 436784123 961197036 783969094 892073609 913425647 953455073 940409492 983867331 51446650 612901079 176322210 399723305 177979234 835174989 690139448 977883123 647289175 687439867 533702934 908991716 624610571 642244888 156661199 164119527 243574696 661361215 886466882 938761639 410158937 741426362 392467903 966692313 756746226 831340948 327347434 894486173 973045995 993683738 290996417 730482984 516908699 884131585 225384509 739331171 791277686 839615364 913291376 931391969 819322099 959902422 575118804 966586542 331237649 920497802 559946061 807995748 928689897 952149105 119006353 289190323 222173289 721575148 685484656 835003718 426467626 589259450 41930752 369602372 9789479 588336140 585640310 869603153 67278569 276202325 549721179 581332128 952884491 965196734 6145410 475978246 766197962 848716215 137338052 286917204 935853091 961178109 319894915 956111949 127101405 275062424 966711365 990937998 620767052 635774085 754219291 958176874 758812656 924411981 851979388 940265520 255278091 639954561 660585903 707560028 329605078 786131212 608154909 949191426 632015391 707531403 903017463 927539693 885844819 952582983 552768612 984858288 38213030 581866212 926135466 997517200 522887485 839973615 201657030 526612925 867799681 958665781 526275484 988324361 194524416 740342457 561003678 754924227 752444523 799626420 761877750 769688615 6587843 772530424 658340261 793954259 665810942 878970976 594804665 941798989 181441595 895750957 746680458 997430972 19554649 87888564 89715014 759494257 729192022 734677640 201371757 393633846 941902338 950090923 254499710 596250566 319692742 591345323 946743214 991980530 205869955 964758031 950746756 957028863 297627329 303562716 959503102 970299791 837558592 927319957 583561470 765540220 600972733 632779880 722756903 948854680 934035746 984924851 15146441 453947355 339092666 434231305 767000132 792298726 629489647 812298093 220074146 918174890 778155705 996453862 545912184 924241769 521888410 635793516 163725537 194417102 215662961 841682288 555096497 724277453 282897806 414922225 497453993 913844810 636435880 933166750 893201073 933077170 7539400 688912934 598184327 789731662 885217979 911728447 134635207 503430240 33772212 583911127 392728281 515869653 424669955 847714935 216472833 352358822 844227160 913041418 177782221 771757308 163950940 175100041 440030175 788623589 557725220 945813853 905448666 924995245 566304318 876895928 974060093 997911945 913486055 950041848 632245239 684684331 540621034 684294985 970240198 991952929 257077531 731928615 917953793 998378255 322691363 916527906 307228227 752642005 152730833 791890856 124316339 419270690 898768104 933090421 347979525 932801920 721852193 922663865 724581957 895980199 755709617 820224654 807403014 939002150 896269315 917547817 633422839 644414369 207471113 295232040 161464116 322550721 769390578 842862531 59361705 261770633 852022101 878887047 699152008 834896737 30995512 54710949 66078169 584716588 184093911 811383323 446979180 493006614 520554568 630727302 256754288 787265050 588125073 942483515 515521573 961959228 847370221 901418512 96713255 676070150 743942629 942186984 625251380 910419110 258024527 966738035 772717451 930330291 143269182 607966343 122623535 378348958 172137692 307849868 166427471 726033723 559442172 642262529 745197162 916957564 68466776 504449621 495431457 989420994 364673904 622127277 386776461 771977652 771311391 939434757 711212597 823229507 395087813 510193590 313286450 952554556 624146225 701965838 280308948 302984909 430676377 583051241 70669700 578483506 329487845 496563989 829444712 837992061 168304610 791450283 21977717 94674411 293059072 874234858 829353734 845047340 289760526 734249172 930192557 949184469 488207911 963634660 952844267 998258918 465715096 761093900 107815044 902923047 228600622 750747302 169456079 963468908 595436655 820751400 513684862 925427957 498348842 991979183 995928128 997332778 379499065 956251345 444752884 860732061 649899293 663897158 695552788 977538853 156709086 838249178 806516729 910067796 733035095 877889882 379359477 722657131 150951841 255503406 661650003 998814739 851413892 861578092 872918190 906621900 633891173 816936832 567506217 711154378 159299961 308464558 85387799 352452488 75273507 536759899 536188954 732289561 252517656 853034586 605269792 740559984 946937450 978994135 359967616 837677875 637133534 905914215 61970696 441101389 974611106 981608946 582874985 888596383 14632391 68980394 581364801 757873960 703713997 836983452 819355179 926679438 914776263 922492272 845161570 988032129 505770766 709292585 787938687 970922383 593664900 931134650 195800757 423577292 263233513 756625914 775392969 886865017 825571895 911826658 352576366 884141982 259443969 533233743 762438101 766644302 737445114 784328721 470860828 855565614 41402204 957624293 929899654 947203079 341909591 823483170 853815550 861850314 812948094 900878792 274527310 715801434 37208450 409752985 757951326 979587330 131427238 683224435 88631591 186842224 191561995 749228484 539438583 616165714 574275245 676141619 52925920 379793110 354141325 619369226 10474796 258214687 191408577 533882575 908158930 909024293 12746881 701803320 293327890 639333050 247752727 842767445 590636092 769742011 768611530 863820205 362474229 667765602 305515031 778415792 657113324 816477778 606130140 814803983 546211020 637928758 977779984 981099630 408938260 866487246 678085696 700335745 602535777 630608635 809153432 904071204 75692505 261863523 584908768 636701416 194012306 954301350 973572308 982553562 468104797 489029351 803734081 971914340 248849803 668139664 81474298 859616945 543088293 575241927 384485164 767960858 328520410 637660677 559614993 830821922 117011315 785758780 374791509 608636866 587600932 717438986 891495668 894353015 236467719 967085125 174726824 177660822 479521464 978653235 819847030 954852132 697634933 716381584 5225135 348941895 445391687 662150203 988848096 998032410 324976598 394863860 828026838 896585768 24958465 602963513 946996226 972441969 621989341 910420821 53741424 438182903 677698878 731180730 87007701 177203860 207749362 212863534 127877466 647126742 276938018 871314929 936208207 936904702 839188755 950066956 676514414 691220792 442118969 906639911 995219484 996772293 223711719 501406918 27433342 75796544 146140910 709840409 724947218 999071888 476276051 535936491 786466234 827472737 935766467 981594587 27544728 226018390 905541493 929344939 292401542 686400713 525799334 621918625 551535709 600058795 967239599 995743596 981861189 987162964 274480568 728279728 928352046 985080380 964434756 965993299 356266803 968155018 753058983 990121978 783373287 986236568 605176137 893226672 309606435 593955982 288490295 453641656 909100265 946398410 692673894 699073551 519158743 612077709 556070214 992591874 543666249 616265262 544196308 722483343 472480708 929821634 167102200 190534393 360000769 828362266 805218938 826637589 857605584 941575681 274088019 384526267 960104690 966087387 877015921 991003508 50382875 883944081 293968045 749544446 216595693 409082254 80346591 281379353 606263243 738750960 880781196 931862121 960171511 982860160 405118828 832529708 757580230 829655471 631405087 796774115 667726120 782648775 279569346 414178758 392402066 508883883 324041300 327130483 21343590 561833293 869147109 998671925 854937346 953774369 859999417 903671478 225638489 526930041 541062564 615553027 784860052 898711760 795441739 973299755 71628068 633442835 40257586 952900905 747784487 941390218 418625245 504763418 935627400 950052156 198089611 355068586 214427536 257455176 619067939 775889314 309003781 927265995 629457007 840103206 783855339 877574559 473575046 920518402 336335488 613059524 533582728 639249450 190595331 304572387 651371521 843196111 232873421 854444790 867711203 927479043 782544763 792182114 810983653 837046484 420516667 922137374 155525593 426604622 847637294 898466050 173760641 695541563 421962384 588328358 484221421 626690927 939334496 983588576 92022955 215511116 652920221 949075279 616024221 954281513 308290035 426279317 342097601 559700767 743751897 965067144 514247070 854097877 202852607 861646513 622809881 911900963 101984319 497871364 330721320 535704884 487342707 661099595 805216390 820906206 696833047 979823895 563432981 953786487 43321517 635672796 636419486 899084579 999499516 999955865 352821142 702274255 663526185 951294273 561504055 742627322 479082972 597687565 334716462 837496481 601267071 951410855 576897648 675557446 115981551 924473425 997199076 997404584 145552955 729555976 589879522 602467827 884977169 911295462 341740121 963207840 877762394 887799654 186146228 600950299 185829874 762580097 924646225 934573143 41645540 94495612 225647958 834473254 463564947 786909417 562381766 606629401 936129027 952778951 860016579 905736230 7420012 669389939 13488663 104828950 892003954 915200675 215016344 417453607 348393165 760475683 40196200 364279523 508777543 591775958 290446260 799000743 182190174 856779875 431735924 836745698 816698250 927853055 435857215 633743084 466383740 765567648 368221788 412321084 409864754 869925304 472134920 652401449 978189740 982973829 326667313 829241371 485063801 920920888 897075620 902811538 831731542 892462779 275471658 847042736 538000698 945280975 418347822 490636848 999599472 999866879 642416121 655661067 562898624 756980211 951909286 976907557 659676850 683456864 265051610 360685430 447362678 687824147 535263412 612144752 801725862 844197556 218956820 585040865 983504873 998528666 970540335 998215774 361076183 514894727 5831144 580680645 641783752 909383575 908817477 932104588 752091963 829441366 900355190 929127602 441031680 644189973 223147981 781190705 651102676 868897371 705825330 883396283 681369066 930839257 378799209 808217928 1514218 846469005 210104761 968536308 418450804 731479322 9251591 934112459 852459735 854160275 99907325 107609246 213173107 258447527 979524350 997391150 801633522 949136318 740430902 855673410 669409770 958412254 485006534 878606321 328509798 390117356 64794640 160383456 40674615 737559587 650044564 954309026 992247859 998363334 186183708 805563708 608787399 833664960 788917172 939697348 568747308 823297625 89836622 524474479 904126459 973391572 792843853 972111090 103825188 698183838 791824208 835485116 671002892 896349785 846016208 974544486 686108215 888294560 620605295 812031104 93549998 169216556 38053917 433795035 834026015 899015447 913315562 982181160 963556616 993930554 383865259 599786997 38825545 108145779 597440438 866336162 813422506 873912514 145432163 485446527 118724655 413791223 353373079 646106061 459240578 815338500 819189881 836893466 687361607 859861052 474748830 932816790 650028752 864487634 732550577 894930772 501302318 992428813 959636937 971647775 164943472 197342278 500252008 682072448 341978568 828871151 660687481 760520734 245340304 335859700 242893825 271215542 545196996 666537433 100716874 875848965 287792384 925154391 808899913 949442686 26128297 431881303 587004439 866268981 488325953 630985490 92076273 237038134 687194063 778588588 313321482 936193898 518787011 611110787 936341895 969614408 269567233 600733954 318635611 391343645 380341587 850064503 39417855 997231376 472401983 613610707 324233968 875225263 688561913 921221451 561910821 803214209 731448400 736879765 545759339 778139922 313541440 944201640 464850533 643334180 617112069 815364784 218379448 589876256 388806965 711369915 691409505 927845614 1932853 519232266 237549825 567156732 835415692 912961947 374205898 971451268 965182883 974569539 141241970 649845903 714978899 802298557 557016516 848463425 116319169 592656945 768644089 798969076 226110231 830336147 190433258 235054046 588546550 601224282 793386448 987989115 877264686 930627679 455876854 999582776 707048916 762709250 930587156 992591061 454835732 809052301 31165622 768055347 555629572 965819574 299587006 375356250 421012833 863128042 791046839 852911930 306501407 314849200 373754119 856646402 966867191 970995003 260512138 276033016 209564132 778739741 984777743 997724389 342294492 980332749 994139338 999473154 183770806 836068622 600057464 824690748 550721293 569165823 832157554 990710183 598663315 677919542 75797069 959965063 689772938 866475570 292854664 568685591 75391211 629095144 607047532 873223471 948586744 962146778 349156213 779016097 382455299 929235840 552192490 883974071 419983844 542094196 466333975 850693155 592793635 648966869 360072552 455874288 243801654 721663505 734623429 789712250 721050353 802808865 913371729 925070560 319581852 537670817 503970442 976331525 897832110 946760808 650113882 952537260 562626714 841888182 740083937 838877199 264303328 391245305 528890443 999397219 680351685 877359266 946688851 997031512 700613531 702112530 105332309 258091296 411414233 601783506 537520960 732362175 959375644 964330024 983024937 984918488 200792249 720653356 445511557 622323645 149813542 332463632 986189593 995700858 910879381 939469055 908760161 926489050 176664477 883233051 819697737 917106620 826360462 846771838 949117616 950151525 515123640 631628352 546077881 747547792 484897722 882306892 336255542 441854352 470377604 676185545 78069444 107182089 643856360 767466087 55913576 980551223 160067057 204056501 223911209 371083761 75602414 629412753 929461131 999553336 473229148 941150015 147564094 579625150 234429683 352292065 112307364 897542222 947391171 964401531 320783987 558590579 387254790 719542847 539333332 966063289 295128011 887076314 124570040 510843073 732136106 942143066 551898461 916599202 11494495 679672528 37004576 663760012 272758558 506960894 60208033 541973774 665282642 701399844 767081805 984791171 994680896 999269731 872735248 884049126 802264019 961493244 870338140 950142378 997405661 999250153 767347646 955094333 505443367 933160875 20730071 461967222 199452892 497630515 843813942 899175757 146500254 392383881 789852088 959913885 701442475 760131497 173274935 368554032 175548027 816764140 496501669 581366578 582849544 945837034 622153345 845901819 330723462 798716212 189057047 808521436 359359753 623194194 919496576 978403477 311844221 504859452 292231716 917944311 774620422 982191165 40440370 115565414 847483768 960250636 349020622 473789352 468947055 743286826 644682353 860556644 114106969 806219373 942923334 969000442 790054719 887285264 913534022 975399444 351068718 588019753 193162664 611581996 797688842 940619498 373820618 756523642 535080037 904904288 826610055 997632088 204344481 657719602 652805618 731552688 790601064 858886678 95478248 246947928 988265779 999264276 62414977 107832734 995455033 998330090 712360782 983792865 723012697 850517910 514280743 905185519 721504192 975318394 717312418 874219317 976115296 990759274 337617448 906769824 864014857 924146209 472757690 955797398 697997799 960892545 618778098 815075519 296883935 544585830 504279689 598902585 956339203 963872251 195181302 985119189 337020315 449083507 638760074 876513257 692362858 953202569 461130589 994596342 688562675 734095969 183993140 617873424 451424298 687199301 215481195 621244766 439543116 623384764 266280969 453881048 432174863 881933112 757490243 958520287 161525056 165539721 649507452 658162670 707197884 770588511 335606022 480382056 127383299 802904166 555415650 885248467 293929877 809740896 65494692 911059585 747194045 875201943 929461245 998769533 694744219 872630781 470980747 850489008 258388394 980505891 672500392 788042419 712292178 886761612 594855529 881967585 316517563 725115459 293603477 855109414 589030256 627447145 945223727 996098906 573893739 693817012 378352665 822549677 824552064 876669947 271614330 706684733 972038878 987204898 77223414 851858530 646210177 711736217 560076532 934355608 918086027 930784840 287930345 776447099 659225723 883122434 23722357 800362483 404086973 893885968 320360962 347061987 528179777 728745842 650698459 877499729 260520106 534935893 240611093 263059864 595889906 661032041 439329800 669969739 431598839 759949570 69016192 554652913 87983238 804822521 347972825 886414736 164471375 450323997 827537268 930560149 176015011 327487046 751958137 886300162 796165583 920209967 171237239 597678538 180040657 869705886 33434302 337758719 609418643 809306492 101491785 647346474 872621683 923978465 66878513 895405262 999928091 999979652 187346962 747679961 434368148 752435029 958008682 984253272 881880384 967928841 287873665 352690214 913070914 966183534 719312887 943756413 685280664 698374425 771114489 993122476 182511176 735990805 857593120 883348817 902680643 997186120 662768260 885129567 302040341 393639338 289214573 685434238 903565539 946637917 659611700 857477914 984302235 984597493 838988973 986505330 848630471 909355269 781852166 903234166 720118600 724759054 429702283 671196425 922349824 974832806 569238899 794229685 633964461 874720267 928715173 967666075 245676352 628372812 333727838 527048642 648752681 789713716 806837948 939629464 728412777 970993968 343058077 618242453 34586813 604714616 525664850 605515767 308123673 473010329 908462179 961176574 283677556 295750488 389315874 539476954 245108599 703002380 886039179 973907772 262184308 337353021 8661511 102194159 271599660 560505971 976022132 997157555 337994139 705371392 117146906 862134353 795767666 936008606 718455838 779516047 577294925 948048921 681729858 754640657 546577701 869274597 845967631 855299741 212940066 267169014 287690512 411513243 688251985 807583171 36585813 118233190 408500752 948983718 426543815 999659694 885902643 939629950 308995853 744682592 51418939 267660963 335031134 412004647 723824084 988650004 502092950 964753109 437073005 762773813 978499598 999651083 423585717 691148536 452618496 661775740 172056915 516496137 806093286 986501843 220376960 309101229 47027591 994425282 986597421 993393395 942997536 951076198 31123612 805153599 909229403 962061606 22148007 959464133 514667918 765749569 199083072 664975262 573412348 872962563 474186986 785858383 889841733 920422329 366429614 861099612 896986435 955534920 296486092 505610160 285144620 341928248 473031686 610316392 18543975 713005311 729782910 741306124 43067636 179898535 42259633 59839669 845177073 962565785 17070235 422538497 658870814 820222936 484476271 769296503 585352888 817045699 203990438 926038882 232795754 599326736 98905737 633307820 19509607 408780017 281596582 913975091 400513986 440760429 416630755 863760928 76294243 553244175 690469879 879904363 270913477 899705625 484134657 626590125 38235160 734035443 63564148 829925936 142843980 681119122 727356824 745941659 625819655 907748047 232206976 874167137 26429937 798872948 925016197 969570115 271937986 645909104 272804643 302909486 348701326 438387904 57805987 885157674 481032022 622410814 490335993 660861322 46580746 940030671 228164322 780170864 743368111 819730721 734010385 743202659 368191977 638702842 810129152 880506821 416554327 981768608 321201724 594621333 892802737 947476178 595489708 895424245 158619693 716622248 209606170 366192046 509957717 831839202 338113672 576672155 964714680 968630602 810298759 979872366 191490796 270130759 459851851 934873795 181941367 200969953 939455490 964878785 381035789 474440121 699525775 906122208 277936600 440395715 436918573 622784682 471306247 956888786 371806074 435226696 141528792 166133201 592022326 682924911 634391319 832657796 453081501 683193057 29514888 418613790 135783149 470731781 240464297 913367138 186083953 345405443 735591356 909525426 241399470 498868577 958336056 997786658 197626851 874799988 594811915 844420070 234786954 326665131 194804008 791315351 801591960 976052627 122659435 831319662 685257442 790015465 825594214 842228419 419439834 616757945 73004878 654012972 521320150 647826347 638595372 662572439 232210462 337616663 604013135 838340178 143223062 184213120 315384243 401036630 762953306 881624625 317520537 781613731 233255277 628780768 338933224 951620944 164375888 697388962 299477514 482631548 734135061 858012160 250073711 656612299 485368915 704495589 154481330 419579244 134796588 600965723 852217071 990916017 235690978 492380172 158796436 588128440 476124949 499812570 264246343 637528027 984703260 998988829 332515332 443648777 972810188 986721460 870938460 972728173 501120329 552791021 444267881 824156728 650615168 766905175 458670545 849031147 888822160 929909354 69584447 450659604 22892022 382511325 537059464 587917496 799463481 927439180 905687640 962132107 256040866 911544725 313621438 674012996 463341160 971924944 828194772 920135088 909337842 927799375 18385594 746254408 894199935 903480144 744501340 873724325 512210756 876750893 662620400 739917368 141377396 265555291 39357963 129210380 358339124 678879796 572821604 576461350 412372261 887839495 349191293 486695473 504847213 605392843 36035857 200001876 306942919 931353417 6692011 289601994 88896378 672477086 686082111 777910117 610166463 910798012 47010427 421137383 384849845 952904097 607593056 937257713 340048790 459808474 971026675 989791138 733932487 972524320 553378062 752117055 841190024 859663961 18465795 240490837 63300722 364209848 759488768 780023645 425981047 655939887 698233219 710824597 581246904 658730981 35515822 939803338 858145836 904321968 411379160 517831290 329951772 630830242 103218788 184074483 482620362 751969318 89802836 271363803 562847348 737360328 729827014 876517064 12118410 282720035 295028418 499480502 261931934 448857094 478243951 532510126 5061729 860191118 732531923 895069056 264646734 752769244 236540856 342897803 846604695 977393711 395583664 795404537 193967110 385618436 461655948 827672481 554674221 764654508 227283050 473523149 124173026 499954896 72735296 435452347 197211537 380049737 335667319 968040309 428520826 573616329 785552235 965900594 50545523 990113214 469232194 633562692 444125099 812497093 639480595 709937870 332796987 460235551 62534482 397700845 270221560 628026156 146081147 891219362 918434377 987103384 262682152 948949108 425487963 806350768 209251314 553606964 716214731 850581685 208267649 379528554 757187631 924792001 407165855 815631455 494419666 523545574 305980008 758971176 901190581 996598344 640903604 988182654 222864943 760049916 11307308 44260533 432645227 435623326 7146629 773372841 507978623 652234071 42425216 400747628 701018612 794147877 541515771 896509672 99973392 267714253 280691941 345275832 299276204 994634035 884581237 970380307 43012247 834181708 828988816 862817364 769843700 944880481 124128419 236959946 937852131 938571214 163373212 752836118 367211255 470544700 350299838 800258563 673777360 996769427 711742323 968828662 228112017 734807455 106650137 979574477 798699579 820211521 827253027 992382148 2416358 435323825 335071766 346960199 272664824 966663404 66560617 628178964 16475746 860173488 781762046 869505540 546560903 713237137 478358909 837701465 184832482 821587495 304223439 459439273 390069515 693761352 974474764 974997785 661106124 716585571 440713683 926436789 593779101 864869266 183112587 924803080 567412128 954159748 201191781 750634803 105539678 346110394 476508320 832481539 854847394 872792630 440563387 777440622 658382668 843727161 839304802 933760168 550135645 572434089 436435168 843081207 982772569 986937390 474117143 643865606 217793116 977003891 564376483 853258024 260892469 545509286 715486371 808195964 118260274 755159707 422057825 821487329 392706421 906081270 381101600 593072641 747550253 960443515 34906147 93008526 719945071 794977618 979712779 990256730 687688304 913639337 324904213 584984579 995894723 997196346 321547791 449978835 897113712 971813037 238285804 505037425 324052329 905169755 617416708 855939011 924864867 978869202 525754837 894545147 951790402 953169077 537263557 794781336 533164517 852308461 196975602 418138322 181146067 592356689 649313366 994216088 757169689 932116275 953690738 968732286 755773838 878906736 936303386 940031479 409881383 619329917 264425681 938480205 653675409 780730199 127915570 219172004 152561281 470788917 35862863 856636941 927499862 963387382 860446835 892897808 154073145 163130073 364680216 576112545 786965125 932446005 495249853 817409319 233920999 747031286 576731859 935939656 18954950 40605375 189491091 403540061 491170532 817829746 297109478 680026621 973316525 981881217 869488952 992665813 622963676 940550938 613946439 709194937 103317994 275046222 314784872 538214673 478695016 601049988 573512912 811360778 497477950 708006921 482568161 537363036 792418284 968003254 850053159 901323147 815908868 978532441 550913091 789624987 318098011 388776302 997512542 999931061 690306791 731326499 491666861 969285366 977955514 978101544 211260018 898429835 683303765 779485854 190786100 978223532 943085173 990658368 123815725 507523449 862861051 884496952 898605707 939442441 107246869 355304076 605347679 798833199 744237962 778645011 495649766 986299812 618087639 882451196 569332836 868778964 406953807 522752078 260300567 368146548 120643775 287589906 579042492 882582468 640941933 859990901 91111633 252287135 176797463 323211176 778041515 873104108 670637790 715124545 781797717 890446105 798827952 910355856 42124904 763882482 946129629 951170869 10307016 748382317 807476541 970839556 906244770 911015186 816424256 933416977 934217936 946800634 825022185 851379926 44619564 271839940 298012047 409995108 581694082 638659810 529966249 996782622 168105698 370367942 606910634 638681558 414184208 910404375 297175572 411608029 481934510 565711472 35470216 692074135 920900771 976901351 152586407 796940886 122197545 371156485 674702954 674767627 640561324 923487936 110661178 426709000 607555073 980474679 815253065 817534417 439585983 925030413 248319610 751437332 64514072 320549082 467652494 972370256 960882184 988009399 832697498 991489545 480462312 672056265 137079466 250933013 708979982 999582358 904951038 954246183 854327791 889608828 360633481 498592524 132443147 882480407 578847667 777775892 946968009 960834695 28171936 206395079 171034631 178970297 995306691 999325030 486755813 536390834 559597643 621313854 193895392 232941639 600262251 970627720 826221683 842814986 664020505 931172301 242648067 750950021 287546392 973043611 840221078 983310739 762674086 986841990 546373858 868723427 470765882 935759262 312440 957387482 102831302 384180507 758601530 772601786 795769265 997168894 807602434 954189240 391180235 893095358 115581213 703417648 82796575 143032658 863052336 865823486 601376952 882608719 7795792 221625714 327475643 634263979 182697855 830701338 237092465 930668112 132746732 312435551 347802541 662395511 916586739 964113451 229824190 710720982 642498717 679111096 97839605 140672255 370471860 886993607 107903123 788948255 599273908 885792452 942295154 985986527 25761832 727223099 233245860 725614342 559075079 931185646 841804806 942969770 371398676 672547311 293647201 897549249 137504640 587666537 791793879 957909094 399465370 966308882 112201255 128997899 365218785 544352592 592052196 782782349 887525505 988871065 350249291 783089525 901006517 925929170 76788830 399998046 193845303 979977275 268189985 639956205 450276519 678089124 719916746 766668880 482449293 526379584 142602900 576077740 340896661 923209454 356946133 649529311 262143573 500501582 518493433 649212989 799779116 958249962 972566849 980407009 991002405 995493151 561104717 655020646 312729810 440447517 173967256 357885075 547421251 860123534 337013525 416917805 839198071 888550702 915789192 950166563 162185273 525990321 827424438 947691175 739439684 809903910 576791397 577390647 748428330 807522945 157146286 497329225 346285903 759472329 484941567 543607643 818113106 906601479 475893166 783766426 790046419 987254984 713395314 880423813 585096930 847956755 80651440 685470634 263641061 913969566 645577466 924216569 336863550 526446318 230746581 548643496 709502571 815364092 597759375 881179891 113026187 407960803 557653627 981411434 733688378 797682784 953844716 996107446 352864671 901916079 23326457 958038446 172975536 185263820 348831989 588514681 991843941 995088768 183610388 269265105 663371440 703776083 244323289 508773595 526384103 995544913 217460885 337834838 840376354 909116511 531871904 719510931 289000803 649184129 451023709 858072068 177990185 505305270 253277311 639335732 438958280 743007683 206018600 531743797 152282927 235728968 797264486 892456592 295503095 727138559 213853388 701095217 919469022 925298979 91627108 412431068 617307242 844308438 489915267 873505112 642560882 939729033 975527795 986021189 414031700 622088011 919493230 965083725 361717706 803177139 863949601 880919388 379356122 959065733 359585590 489914781 747068343 778500919 558029965 930642248 572314470 969866929 401935272 753346714 869440600 900395129 678523497 779230041 841147769 928601817 4007712 520412788 497001433 747722079 104599518 629960854 929950285 983195997 57690539 515381772 119199508 777887167 482352518 708893809 89258393 954894093 76427708 384870818 783461209 958539762 585093090 995140595 949636258 987731250 327074623 942638428 336807510 732755025 255396284 565182940 446816364 937772144 43385809 963533654 956133561 981493764 489099018 879262805 74878779 240755956 187215710 297571245 799809028 968730791 191213905 629826336 309285016 699126112 518450278 528900342 598669852 771010659 478245033 748899119 635823102 844832678 732866970 797197246 498557432 839205410 793682861 800948843 898140199 996054936 208353070 822521239 90600100 829419827 280113753 948619702 423244052 957618120 453352737 912544710 875438451 992734643 111842900 517598369 397371097 867078810 71290235 144733074 102124808 110243598 315848658 475127256 614607759 810641190 881873839 919505162 5216566 858749908 686740279 983511219 900773872 923107895 365861490 766914549 833567365 865284715 80918498 602278309 411549340 826960968 397680294 705157711 699199887 936923581 540343356 706416307 420450287 941357825 378521858 820221072 641470738 976653055 735019628 974988543 165727539 285206682 229669349 240739921 43549463 185738896 445029453 900551465 582301787 806849465 632204093 851792308 790285300 932227143 790203903 928481411 310726542 816314797 567672403 665391647 713340155 937512159 300271011 545661326 821901684 829506684 102578299 420556021 555738245 815807480 559929668 711777376 730816163 913809176 709265016 990190457 536838522 887106317 444310361 483762481 173546902 867407636 908457744 929079329 237629968 847479423 652444163 672814031 981658893 999528116 625215872 969819589 319279860 491671785 503188497 804592749 958406891 989663777 572844267 875593349 896763165 902451627 208107399 873428226 472966264 964505263 880466505 953694553 475988516 695460473 622055822 692036108 101013797 424551152 329136703 850335690 52594455 951580323 465832948 684787728 691040369 839449692 224409258 421523451 307933645 357455622 814089597 971840135 779969928 905026197 908866929 919250515 173718123 600950120 245768285 782051732 79839944 446170786 598885910 815962562 305458819 648265648 199386966 481060484 644940761 911919406 553872799 747536922 39650810 633089615 473458881 970827948 831446490 901648918 320816873 463516680 188051222 679150472 746236906 882693924 337679042 612777016 322178127 758513444 686088923 928831925 982825656 989828966 259934297 682289756 902498130 974849461 518717512 727646011 905556439 977675740 946593803 984274309 840214834 842470754 635108986 641289439 894187611 933339321 451107085 928371863 214093684 390814343 686786754 978616246 614866610 707165542 555112149 992142478 701079869 763388561 165445202 236460823 595795148 811943136 200509285 852804143 55820008 112532956 411606963 941026140 6354724 645266966 994300192 998361819 269484863 309694645 930468676 948447398 151594530 364530477 425386431 978663781 950725156 958417475 179178234 300162733 26546037 835757339 439323136 541270426 521832031 532599381 682030681 911633054 882673815 986052917 545819214 693208957 365535649 583597861 297119878 339475481 264194249 639198797 95399309 453110383 127017561 288188494 669946337 823172051 864564583 900430193 972413799 972538961 942794358 957621067 809786178 983132913 662638984 788428428 356398343 969219392 578921324 964817096 130957334 330446154 397064137 925196632 257220605 956236918 498273666 597594774 747025262 975294065 531221432 903443995 857091657 875465449 692824578 792200461 310648763 787115719 272875896 803229301 800753545 997576810 320462297 949194195 694529098 748522558 186269331 607471306 241652069 546453323 735151842 978153619 254283960 710483635 261309219 506255022 439200850 545093550 160030212 994498828 851065163 927938886 832865549 935659169 688195745 694053797 2908834 50037979 203314254 302790321 59935888 554410040 654763086 883593911 694575888 776282950 436437497 597778981 896608393 959194097 14431347 282996871 258256750 850895295 398981358 412130041 44904675 588469557 275476019 509865995 235390590 721707651 695022831 755053009 868869455 876029128 383600369 898582195 947487345 991754421 992318745 998223289 799346634 932799509 231383449 369645312 183217898 369952041 634654156 982232638 44872678 613781513 100967483 741707750 429307748 799933403 921039893 928099756 107365213 602093473 691927532 816485030 817069372 823568306 169810495 602060958 68028889 237245543 872292596 994200423 33683526 608093671 162550716 416409035 254175457 915360613 634893634 657651479 32632823 294924154 347876269 878742482 332376297 520230243 450155052 964522977 187819646 831170071 249024018 379599820 247694300 291515199 223775337 912946857 81806465 202306237 418616964 457592874 342595613 896617876 330366979 645053456 151207352 593387509 581696352 969021327 415511443 865526811 410840176 568794843 856588821 873223465 525108017 860350943 968278147 990195643 529099359 983058676 744976838 879835679 201054709 350507894 52965335 727079476 495941664 921912104 673442005 841887926 710250497 775472855 533311908 773337344 642325582 793059568 342073152 428059839 17861549 792070090 406123623 704675622 815741400 959228730 202763125 923811595 633557754 783155487 938409767 940401477 842015526 926607552 146668134 716489037 580160737 885388243 824853066 829111297 383968762 784081983 961611582 973387131 961859562 969226931 852314837 902464589 384652847 468092263 671518666 906179397 661484163 695664424 689419954 863037743 508571612 943335021 718108711 796858129 865483775 909638526 60157946 930151128 296854110 372388630 475772459 984014400 512435127 604688209 859826464 928301082 998230674 998351459 126763523 421374905 893743514 996711064 263847934 975053163 976963471 990054863 367588716 857205835 459054899 621878406 586460357 937051812 601992235 986035822 248820822 779219353 34034205 478632416 286022619 552011603 414048621 956915262 657248429 925153000 217703023 977196477 143178669 822276663 444270083 701074359 900343805 901443579 361397044 794727246 3524910 240529116 312082660 719312762 906948030 947693852 922579408 968932858 809432598 871543975 287100356 654281119 159972713 518449694 736761484 757784081 121807277 853976450 286179451 591878941 783176155 996785862 788136750 796823451 38300284 443178475 301485703 708762059 455163507 852097515 767522021 922339282 845640236 901003792 600942559 895555017 411461447 444615223 167425104 596495285 437534315 925070333 683096135 713737872 254994775 332386259 876957560 887334463 942503928 949558768 235748031 965353188 774231710 867021821 226723312 739072436 791824838 916568813 627542859 782977876 292706824 626818422 668815796 948592853 853503132 923384517 876487045 962548686 387531699 649928557 562703380 750496048 64163009 303243286 758174470 933434301 943918025 967778506 341346607 557954518 506520202 787508620 506748323 685404707 205224250 963304505 789551346 962247154 905312543 907054936 977437458 988379384 126591477 932742940 756771057 892616545 144750188 637175379 461127695 960816619 467563536 859641828 452624376 811588328 264829784 955981754 469525988 845597527 245891761 863209851 937904607 975379039 595794363 696879274 555701604 952497737 562956556 571883635 390629288 951527168 394665473 959554247 433580166 690486489 577168845 696735857 962890382 994170578 469216453 642507718 686065506 972723482 502066477 733933271 218991870 319084629 727286216 812139057 834573921 900117703 682101350 722756231 43352174 291386178 765724482 923961679 426308341 436864096 631680872 710122705 490177467 902489291 849557459 866097926 510085949 833717529 598777298 840903177 673754335 682313732 472609043 703680672 697562251 924138504 882250472 966753972 261492369 703064320 915110443 949639632 44003993 432005045 23335700 534206639 361366316 414081707 287360682 665043700 64927147 549942782 937344542 949951174 332572967 412845802 560798002 631339790 405187098 515529505 553841880 637292032 882803335 986520050 711876917 954284898 163512442 694213062 944055994 983529066 445772780 506975921 341600607 994688697 996226556 998989140 590608596 974092162 904844324 950301383 365061651 648613231 488935294 650819811 879852745 927562882 274809854 829692029 571954183 839183039 369514268 928949423 974137238 999695265 154785697 524039434 205888726 289967636 133652206 684799410 703373204 913063419 797712750 917638122 911146117 993313294 221953253 642032349 867265007 880572625 499732239 672352593 113024617 669185115 881514416 922414804 203612321 564931124 892757983 955909445 39300163 221193071 513801960 622711495 772395375 801436257 130112748 593730012 497394189 991132634 790011495 809312068 734321231 793899410 674958957 938897721 676883966 764121075 921048503 975768361 376905142 959678160 231887977 543695637 589427248 855132080 852502649 976336016 254233477 465820998 12433891 579626147 61922657 861329959 161614778 502440499 262679583 295902380 79726961 573138949 929424366 936274634 709604153 864325088 296627827 429867671 702327745 868926369 436552681 990716203 166428665 705453622 198758410 508048153 114301360 305517058 716077096 965858350 980309792 996521272 950755297 979253438 130646566 227841683 480795397 550723369 610064786 889444307 462055511 919851068 588919027 966955374 207852831 275659481 584071245 675929324 203173033 887085431 408428737 927743628 111565479 930926071 229008645 809127837 286637121 642002948 464710376 551687286 862885742 888392061 214040557 346582219 135698894 771626096 663444004 804176760 82203119 629691367 903569994 962297437 295699454 817372513 974077607 989349991 819033425 929349549 390476294 835482155 148525177 314258148 435134801 468340249 184717204 683227491 128239293 946464118 724552812 981065992 681446091 801193097 853776763 859721638 366698414 756050962 542949754 706779910 842198599 971757134 582047939 751432936 518535125 916333980 779222338 958779825 75269645 788690605 403453245 777718592 935493562 944099842 489377161 976089368 584870044 713853660 240954415 534997363 59193935 949667663 985808076 990533872 66345317 212823048 366225436 623711584 523522254 885351628 804050545 875056191 920106652 989031815 613117455 928183961 90161694 862046785 314116714 704074544 671153473 903186893 727042780 950625285 827367297 835035686 887456264 996563517 733800176 821019783 96736510 425479474 773407679 789092273 901694525 906449364 143199728 192307920 474999144 542281194 601489484 933105138 194944523 495139810 576495311 847642693 774045734 946541713 709612375 797122349 399751264 449533601 621059602 899886308 613494977 711390524 732085439 998341273 475016097 597288809 440933405 702358284 282674742 514088378 64242974 265194644 899819358 973750152 40325543 898327392 898196147 988184162 879985143 967954681 350250068 890538973 878191284 999381022 68939079 925766790 400392391 774843197 841988797 948176664 100082862 865494375 738184320 977335345 613460895 960908795 287768918 417904829 853394595 983525849 422683214 832000254 310463981 959900640 729442408 732116149 247655491 466271976 16864834 845444730 710511662 839097322 359213876 463374081 630617807 789452033 698316256 981549300 108930307 699258624 918110642 931729018 793674958 904563470 753219360 871925357 67769902 402282347 457279382 929057663 715861869 860065713 394527980 943834553 175630617 808905310 152098028 554341264 928756140 988418798 283929384 365647439 51998989 287728947 687519502 939974350 417700880 892070854 137593018 425412894 10378972 116824515 47599800 371447764 877320674 993873097 228472810 511835162 596427008 945732933 481269853 985801736 372022744 431579940 110267085 867502564 409341031 665979970 96930571 151178015 78093574 455797508 631543622 813314412 436453630 900463947 247976992 853753897 602273060 653762958 148497386 210693080 85942086 576087147 725819921 808617468 851265196 974428079 588054610 893503576 209834960 286924706 267811363 990013712 534015713 573867264 657240475 745357719 310726825 895978818 760337677 988484392 185233203 675399980 256719796 561927128 968979915 999659593 334887752 873047213 909009955 948870204 189381226 516660497 456172181 750335998 940347407 989250729 320323251 444239034 468190479 749278586 973020386 999178534 561523745 693013112 328001795 654899672 980286165 991843464 234247571 533324890 489921802 714765863 40110445 592142131 715520511 764872680 385633549 920536377 257471895 265106414 957127546 958098748 176452665 431587526 597724571 830324033 542442348 952464789 614834647 623346224 85316661 658783565 597849832 638556033 917252475 980142851 899325929 941583052 863464585 962439026 427180016 454096861 901243746 948679217 712531899 742270318 531765288 810946065 551479983 825284267 394655850 870283546 652913709 897711340 394759791 894372925 479541156 624062731 288618735 341233149 525415942 984690967 430804364 939284052 925529522 949301033 303231812 582312328 152973613 438859929 439433804 882535460 822914353 929009254 431519921 867427807 583177283 666660077 762851645 844145504 10742047 452704304 936675644 943076939 773032771 986406271 332440875 501095708 264186616 857149269 153123965 302850691 241739463 941313365 975602999 980939131 686478528 926985382 431438027 814470810 294343483 883185227 530696586 906336372 141045595 776096919 632335801 640609286 900644729 919664082 746042643 915042335 132119139 274655381 811509253 943625456 558092355 733214119 339049262 628908129 536592696 705639231 126630889 731972057 471255216 544430274 872663686 938046805 632302554 862707990 239704859 527214041 185190423 621956116 160648903 422413388 786542473 864747036 126294483 167778811 831483478 958909250 905201812 945807912 77601752 117116602 972617049 984757166 259509308 347675850 609610345 850634500 791572140 982785334 122184835 548420876 6214106 763944340 865329607 898329467 720721416 801443851 400448939 508179666 122778365 463154127 530876803 868875386 959197728 999112206 334564166 686978633 370649655 376896228 377331908 608753867 311545457 780630839 864745799 884837142 304421154 442345820 795033615 814746281 803128258 857507542 868619341 932270012 113877758 337610101 136411900 650928315 532892309 896631832 989976464 997435249 569645033 826910825 308381147 943558725 848207964 965619145 233932970 792472815 901208779 951788725 725877494 769722197 365505335 386760961 91632206 574683552 914207366 915375719 427283021 483985952 827144981 974602884 191065984 843774581 803693197 879754298 549384517 680298515 129196154 305907530 317472987 807296897 556650827 601599650 289679277 350331964 762916947 977996869 475163924 885542744 352724118 972967338 978079073 985656158 800866166 884850735 333211905 472222876 386784449 812584247 683914456 964605826 4063600 463582773 968745662 976784803 860000144 902793152 482873964 719098559 47349324 948715002 634312238 776842645 474216422 724153556 558884720 989016176 593925942 878685808 588844331 895583350 546265165 964376353 848148770 934096833 282947431 718692815 439842664 960999283 69324303 927896717 969693927 986246189 187829883 209579321 162744654 358262173 714116394 996631088 945638734 992186116 859411364 895644949 894301655 986466369 83702479 289676068 314646837 607943903 17017805 814371972 502326052 820009190 206699295 219268236 796415152 912037065 340059649 608408785 578395969 891877071 621611491 964226323 152105898 315114351 510073797 515752306 782050510 810225916 554191454 787265727 23201797 950839063 791418780 957265198 435645997 994131010 515442907 700326080 635323333 882790852 105897572 755817521 71050143 850447739 293858771 834663577 54443068 314380934 767798529 895213783 672215714 839701038 901527402 956154546 450261660 688984427 37407100 114984251 349617818 543218547 312637452 501471747 801459094 961944205 16669252 705629485 926095462 954562843 145872127 774978296 229356443 833675562 337452952 557334701 367042202 620133566 741603833 805241610 375507602 501095812 887356989 915792535 385477543 676837248 871840128 888707232 83443974 830477002 993287416 999413714 962563660 987049304 322663881 476226962 660595350 783488740 385489572 560303902 973376765 997128417 298732280 551277025 772450997 896829508 624791027 805620715 423978189 766265183 961741983 967083306 734245642 749058312 967153489 974105390 298943357 398069902 273062157 814397258 922021137 989432983 684249339 884180416 544922375 706242276 491538696 756377481 114477292 648227722 395436438 413124494 67114180 963381165 698469794 702224144 214987444 750152639 968760818 979685189 952572334 966621458 360333374 682549216 105047441 303260724 636810110 645059778 968465855 981069495 537168267 913132310 571596890 929323095 722476436 748097688 13944124 872953789 803813160 919123475 230657417 926888755 537017953 869802820 819781597 983496036 893000184 972639180 624638789 997085938 631972838 671308908 399102304 519133339 643229617 720357351 905353355 963529950 802026466 977776393 153002601 675433604 749003104 761645627 423769515 519707708 611134086 879880724 779745787 988188905 879210787 923258407 377816536 581530996 880558213 911829234 60402154 721107013 718909786 879460622 257477597 971177207 178208604 895376791 734122980 994501166 973349840 979460421 346770295 792303114 417754495 894853498 545472636 642680675 145230144 524965036 674232144 917587011 412561775 537937176 21384159 294273413 161036452 942700774 644492161 793534698 979898002 996302383 831113276 890975076 128926394 549758887 157013161 940382625 39154432 771683389 57994016 256508619 623353988 685175628 230246237 667338353 864921288 873094959 823985362 923985276 710121694 940184180 271129188 329478329 78651783 599092697 472269423 538438788 926347528 994373652 172019686 606790227 339701471 754013083 523347551 983607738 424127877 923931861 926106269 932961837 883724445 978854245 58828451 901871377 465821215 894370837 647852550 961276935 229205587 929349986 833754777 924196155 259901059 341500410 992179903 993749690 80896340 958324355 501226280 818805574 713409541 720143857 137614512 774555610 869336767 879533652 778969931 910007782 148553808 659245520 773745573 873024739 366775949 598648466 4184040 424624093 927379766 979797615 957131419 988823623 813715314 990464647 369348425 462132103 303834259 947842147 290889443 465025455 318328314 952146782 537616716 735271311 89151485 488209642 493582275 964621615 527758353 585213732 89904959 867186898 282771459 540522039 491787875 607681388 195258685 567277260 785358719 852800385 546728114 690643693 588821519 848654836 656291285 765815174 572391967 838848600 508985995 764074479 545789486 669333177 60939879 61015497 935582141 975780294 946247398 984087861 342503459 821847733 269992181 649625335 142620097 358728281 652904560 822098652 700469043 809725233 421827539 663728318 566598217 577943115 1673462 552426596 146310366 534733088 614805516 918328491 933652621 980658871 436509181 689249334 608298532 815633152 278535270 326557643 971863434 993448562 91210163 563917647 52806599 669469690 68799568 574906605 130342849 615749998 345039559 476296864 384018933 871886573 903377336 999597067 489078253 891631663 11296520 859251560 846757369 996199010 386089672 519614135 106868866 396346072 848313797 966103829 193477896 496521930 65487791 517684451 767371855 957641595 981883454 986375639 765092473 842107954 164828649 360404400 830936299 898647665 425651952 658686686 996875809 999510336 954867166 996855187 453543973 874346561 820945748 949013238 37149670 848753974 197411625 596471415 453139652 967619105 437446521 755064911 833578242 931462115 795396577 989535742 26616894 981181664 965800403 969986559 953849794 976442808 112784051 888567189 99527745 385683934 104662977 250689158 959624885 988571851 238109012 748468598 700061471 774925156 248809424 636715755 549911003 842960939 36349218 457847165 987013954 994622120 662070919 839894521 242332285 707462739 162721646 978697633 274460916 361160042 858194585 927805811 957761965 985742382 907034871 929638597 298054395 942687196 363174379 631624628 918845628 985233083 873849773 895308830 999629302 999891868 416390311 642593686 977219235 999157449 59228 66415707 515505135 556234441 409215412 518134418 764288416 843345234 414331490 648678258 179723869 959833311 673061104 993242368 410237630 548498844 159084294 477543258 733339502 774216267 739597157 974496836 737208504 773568076 112150024 464891879 458760816 792125292 136956830 882786402 277894455 399656013 634142285 721672949 177124575 450290818 79334223 484586896 292223294 759429553 200807106 239282556 28179409 514197241 745903041 926450751 692397803 849105065 460232458 786135819 931051766 945452165 19590798 296803081 703104922 982304093 190759866 243550857 639512597 699203707 134119410 437681767 32238863 511950940 818029369 987387794 335880673 622326421 608793839 960631591 713288692 993148388 234658094 653934991 967541213 998210306 726985607 836159050 905511307 946905202 313533146 559343674 200919292 454751023 905512255 995541166 382349268 533748871 642228138 888508578 741339191 824348303 766717124 775896357 884329695 991829708 849099832 966014673 197107510 644436461 989488087 999001537 581724997 905044058 851452771 925812651 850419968 869197041 817567710 839926567 174615342 914213663 456667955 461829472 929099027 935523941 452355714 733710476 593566097 754781923 599976140 882303229 366058420 765510001 24396560 528555650 394543195 783137975 634824993 807961232 237639321 348524223 310041535 868157506 148286825 404251853 15374246 593702153 474902036 498337402 951483514 964045947 603631698 860921960 862349936 985940935 340341782 905786259 34567829 829076137 174827121 376319722 547528616 938006256 959787197 960909224 207472132 965668236 580039847 931453819 189068262 390907076 936505825 957813633 69446129 756480870 267286857 855123381 609748656 837407353 892652682 950505067 525779327 959618654 274903316 605805961 98474597 634130018 935606171 965256561 638584968 717234389 826490814 870813950 189686904 882561294 736841597 765714902 531568662 582527048 88471267 931149801 592567702 972869524 765123178 993294073 667476376 861152966 153979147 643170350 356525088 610523427 600230769 770293786 617999956 870590789 137043296 492667521 939009609 980820245 21595783 426588109 958643136 986544354 111654888 668125413 567565265 755668046 954361566 997816306 300200800 340131093 616443021 870678840 593667868 790806660 845137817 990963402 385167512 603119888 664194489 983758694 823579242 926747947 80621017 92040108 802298290 811503650 467971490 737572050 791459092 941789431 799785208 981604218 613739462 836028204 480980848 664361723 212227462 826634200 360183364 380961459 515008377 712971044 87202116 576877077 208804707 911280813 509777885 987637311 828838296 952311114 562413090 728644768 429787777 889448634 148130695 818396676 127864885 300056211 622642636 708889266 777977792 900898335 333234646 881319273 809886083 815288004 315243848 895413271 447563283 748075338 679986659 893264551 51695523 724530271 703462113 769685749 378418154 668952955 136308562 479138913 995145389 998980132 893190459 909769554 766406575 873470527 590504412 899307189 420754993 611220058 287692715 586885376 362679002 471499318 213876763 513389108 314964081 352889694 263182830 492840483 118868124 669984949 102951748 204069695 187420250 422599913 115376942 469504895 635452363 947896628 335913166 619338318 287199245 491345525 843328019 887611541 254251869 657965642 37460446 712612469 63723343 68069308 201395434 603805629 407809383 521444178 946775113 999023888 581590484 857254266 410224516 458742251 194824126 448797581 941339790 951754519 336568574 757574301 644401952 834647582 289981835 542454021 755841762 758017586 654973295 779591197 195699863 816422993 515116002 916528446 948221060 962205811 87978319 830941514 307892515 507592778 814685447 960606183 780600264 959291454 219508108 816958758 899822887 976035358 485786895 988257148 657923903 925742175 834689299 868853691 212199040 928066110 909461628 958249241 959317113 996730269 17728865 996005460 203842667 542975322 631018917 757619022 641089242 648903764 362537449 833496125 17147168 966062067 873310910 963655602 918185880 945391117 762749548 916037165 323579293 519116217 731784709 801160750 646371522 886365545 664282932 824336014 664566563 856419678 432909928 800497256 230419356 912604129 429164439 862071712 197740874 767467701 342949256 365495956 691610297 964562577 256249589 775970320 768255169 824934949 538892673 722979121 4551815 622974891 579873095 945331419 192126612 969313697 687798863 907570609 519881790 587126465 962605256 979342847 358517741 380016698 585865584 933680369 368780529 501079953 373942749 423099497 145970741 942228632 777465777 920574601 608062657 629733780 900155742 955197559 109565669 198410839 432646553 746050231 447704829 913735802 224006756 568624123 161692194 972364822 846897914 865946859 437408379 987039685 698642108 876504626 324145308 652257177 231558206 760979823 529558884 551086836 190780805 441798785 608148025 844609018 268577037 729370761 302192401 685344563 210856985 385447259 91899518 988707719 103771720 520005587 17870059 796245416 816102020 944202935 357885578 861960488 11592210 806811450 68196404 195823024 668006914 989829425 349823647 922154560 24965043 32916837 296770822 484176102 969139433 985809060 187012056 706168842 63876302 540010600 190996802 914325100 583522693 811220482 567246695 689155620 368714542 870010922 730095413 744745679 823684917 983301053 885835906 952667402 240252848 525485122 226433711 376367154 177509169 786464287 445355851 540095366 279300643 370943698 771094222 981924219 541863947 857449106 697314973 908213308 741158281 900128116 788440854 943777830 973708283 980971965 633153311 658479479 139570695 642874062 527963631 973152295 84544744 119793986 857997017 995724381 582977326 726281998 852570873 899072567 17790354 238120775 929438880 929982565 541826818 979118912 343888537 737957185 827160703 827892988 178093184 508507487 847890844 888775195 30177132 470902698 133274907 725970628 883686590 929974222 499739128 640609725 891831335 932009307 895552451 915651124 201438867 850906974 187878205 808201968 13682295 476796637 216425083 912131814 670520053 827716697 608668282 988023586 286688643 416134432 659775336 689506710 407596273 917352293 2111512 477723770 661408259 962262920 807045492 889191749 158315968 738036161 47962101 590251060 886514707 893918532 123369694 635513738 493703612 694866766 815679606 983600873 25655250 371133859 513318371 732700730 832539979 957475525 981459134 983954488 456683721 508199421 246891871 364975496 399853732 636994636 324991930 685692430 287990229 541467444 352166049 450633724 816320329 958756461 873875343 967395726 249490682 315692603 729205156 999482464 504534131 705978557 839179167 866623536 128176158 672469749 686131173 719497695 689044933 782712952 597806043 787662426 845292761 874464298 4605675 85705707 348368425 940410574 324163509 753066276 248087671 511139305 231144759 577545178 71411519 159298260 210081041 534541384 456510847 828070234 387856691 541093899 495578620 630917861 786777243 874708774 259787851 873143704 164951360 922071091 28669755 657493996 451730717 977221523 378550768 829174888 849495740 881529514 912722923 993699769 298349054 525485434 211916214 932664443 879373684 891755429 271946587 726334527 604722151 818313742 751073353 800785219 612312537 818084567 115204921 425410935 18215755 638846589 451229202 789964808 794626279 906778731 487796948 919453755 311072146 689945914 655770302 963630031 757475219 835009807 926375810 967306474 676438141 996512734 618102059 657458118 326603767 934784995 982956735 988382330 291116087 311985738 270574532 349071578 734027276 960735805 132508588 982986613 747456660 858533555 247190172 902724798 960833336 963431634 546933380 835930014 705193947 935360590 40015690 513126174 474533650 850180775 28521625 304704043 289660352 891032783 806387964 813640714 328283267 960291559 21956434 986045775 910785661 968463535 937939258 987868808 966589691 991696662 386018928 667668161 596845755 805289299 886958065 986246027 207764995 564546643 213470782 529407120 40455045 491538892 606610415 960041610 530879684 973645457 122835903 265989999 440915884 968729014 330301827 503388644 966076287 969253549 259090285 637141693 294860201 802536661 408256133 453816993 811075215 989136228 117019152 670196410 574465853 718574641 952040436 972530294 483358373 505622694 511666860 614336924 265142411 834723437 177191664 708940229 415706954 902149209 60613730 428757060 904849112 907913615 620927213 745463481 696542255 856989215 607030660 689338002 59818447 934242704 164781805 287510466 841008680 897644242 544759157 653700375 282197630 667257854 553740644 764738944 868949879 878855237 90312313 637784347 334242219 816063449 192169807 787717897 669207406 823491615 521418931 974795756 782037901 935431613 398244270 694279232 943733432 974772427 467651304 898674644 324860572 386306426 873844559 890554294 233548311 596706007 578956891 605608631 783283217 835900517 202884714 304536226 183577616 331535057 307098011 784046639 631986283 754420563 61829986 802596655 908866237 939793633 312560818 865963826 160236360 669798467 331765636 616657702 856824968 955916026 944470377 983804088 814225001 959092431 653041582 801533856 65300558 715353802 892147746 939024666 599052076 715921737 885216720 984297426 373042799 771141354 244302396 404401978 436668657 949279812 672283822 959128457 57383209 369649200 256151175 653133100 596429797 992535004 930634479 958629260 887922596 959507286 252353479 586156744 706493 509451103 389707087 668512891 357267683 413009142 804201486 935174371 62673164 872730828 467151052 708138671 394100579 923789575 125145361 318983771 703469970 844033527 159916038 962723480 4396935 738417876 467749237 561253617 94138582 813526745 709249859 830753332 944403723 960358575 933875200 972811523 276051073 676112592 304216489 822809217 747436431 757923907 153264876 571738784 735983071 994832913 476305794 540255492 441249979 915271755 660863810 785230265 467427959 964664839 428764261 604215853 937389764 945582862 305999073 873647011 808228638 882896690 78863384 265655181 530265892 866860971 839387778 905815589 916890175 988518490 588558196 779968436 896657056 931326583 521602052 868260271 115554776 774902544 596780040 877367488 940960712 999710506 344069720 684530877 149704128 500304184 909612871 954551897 415313392 785385233 511742346 754389830 274686065 787251675 531745877 938364627 264120514 949412972 376421095 749305766 42565812 223354233 571316545 728978600 139971466 908838142 899745387 950029281 165984903 169176872 764060466 811360794 906669686 991644378 333869149 622761391 602434795 697217167 90032608 690828609 189383915 639735555 387710249 696007867 599784927 662585618 176285386 351273738 749248154 841304492 114234278 665801358 412527247 657066138 44838215 283520370 897081440 938803173 315093378 979243767 413762168 702418927 926547949 933114246 151175580 269503243 313716355 934073619 875315632 980724224 812356558 833849827 365114576 752304843 601295875 731451577 278624571 368217704 293678413 395202972 768858992 874834672 791588188 910030778 304204106 799515362 248511191 417077794 440630597 471991132 436044224 546184667 505553195 996446212 736966572 912049265 902328713 968954209 254858577 540312944 914006634 990378758 849036779 994684297 868427146 877050900 248778398 452045861 219715110 991233187 896554039 931392605 916128222 964070312 567160778 771754652 894234066 989344841 350263383 483349537 737033082 962366182 93762112 167217759 196513703 375958056 450299794 950436251 778016899 986979429 803151859 980865212 237183750 271644690 893187215 953392270 30507340 828648325 149968611 873286300 20195039 726934926 315346046 448752467 792637249 916313774 292775831 727813080 819934463 969322514 241102384 576180966 132466389 184158894 730789084 873382798 959245122 995135251 37633530 329111446 620389113 641342244 219432255 912065870 853569713 907022158 143130785 413290277 822610416 869020422 964633373 992573353 528976507 989822333 110972164 119966219 635492537 932491839 404131335 788281337 624797638 904087550 77413134 655909252 459630839 896552380 938079940 938248129 931857961 983177011 564679586 882839043 611695483 865331832 22994897 637457910 698318176 849880623 495443596 594859609 154357239 892592226 681671290 822232940 232794906 601944665 150041984 440533480 226627813 764392396 842784661 999233058 126816938 693663718 475394254 607938416 628428298 788571839 479081625 908584633 619044087 663370494 918895749 959753959 520558377 544031354 193637291 319662040 845579910 878071738 590430363 811491278 35614847 361293499 428256345 458257053 576870971 731128511 584855898 809437363 230014292 570016128 215840165 585444646 486972444 724180351 608360528 651731020 451266061 759386444 105419234 261768918 616044471 886894425 609826086 637650816 60904093 467316940 285027550 495032803 823465222 899316665 990521362 994951488 326113711 764892834 850818842 984130272 758000963 944090084 983695775 992108310 21192990 296988250 89660215 655378601 363440008 828911571 611470963 616014748 993454398 994037139 805298249 866014743 899943789 931456383 330916242 490553701 510923253 609587720 866949245 940298476 286633348 600241284 964529701 994673835 14780602 136689682 867174409 989322459 734272920 986977962 577880572 726081521 759963567 789033471 196944325 233720855 496883981 907991934 214524190 949895881 39881924 645634302 871112065 888325422 848729285 953336934 891457730 923488025 658035576 858075247 171990524 188805416 810036710 887824879 647770394 667840748 891702848 914002117 332183604 559246007 605886866 635908302 379269941 886430564 723805956 848943124 219640019 873125940 241394396 567738716 920943991 937823153 162384640 804572803 872574680 918245264 616081268 683434994 947251616 966273929 834333660 923201504 571601268 824836515 142808572 378767443 754015130 809091445 874303403 972004843 982059288 993291151 320142858 361736151 596732959 871715171 164707233 908581959 162128945 484657115 720515004 729292732 628561398 653432078 860191929 946915607 846508060 857114214 175452306 503451193 772920974 888469918 781177451 944283232 434760320 723137282 884870925 988087240 896512734 899366739 488042696 714823605 72066057 551915732 942150932 970161519 103872285 890147427 721248694 943023483 978963503 999485925 457662511 918772212 563444557 584814873 932393135 965701770 268967478 434429573 719549467 952331322 666315711 854115556 761031459 812613582 341672836 836352564 387087640 653397540 82054077 527659332 622496485 703547100 824940094 866808003 204416311 995965096 941494785 995914791 391370515 855792461 160602724 289193498 373247473 693608065 546201470 554281209 486320253 916265746 454216057 992748612 119239307 548391195 475526314 977787539 724488895 741909017 508930298 894274117 229119411 810524704 631252118 919802883 169514595 424731936 232109928 870154308 549633180 580094163 176573085 691138650 380618386 648451470 107986916 479671020 951543858 977849594 145976250 784115382 288392379 744414410 124957112 653157216 971478994 998120994 717661108 903330233 654750254 803379866 351187835 977832922 73098278 631547403 443458869 548796578 443667687 469715930 349313704 366731672 775347068 883870660 521536013 995121989 920686147 967729080 124211658 627393269 120813799 744332002 501901454 977413701 675101598 731916119 575017935 985792299 721694925 902775250 349538839 514885394 800456725 978328192 655852222 986090263 716614611 941803951 516794771 618748392 777611585 857795688 421875301 842399755 395049988 882307079 340801320 807986079 141010106 677352642 313877162 337905988 405814786 879032069 185213634 707901250 964342234 999588176 969441998 975563895 321989504 579488113 964143663 995893051 851129264 853024061 610926728 944718054 355127213 971468978 256774803 874369805 717666808 890192973 625633989 811552366 341029228 808050913 630589068 655528848 334496588 869295113 613951650 880643855 3349497 186128549 994803047 997137797 666502759 948746645 651169229 981714381 836516627 919203421 922597667 928529287 416273057 709610336 398031737 616262593 826263748 893421179 882781187 938497441 882803828 917031589 618531732 787520329 76114016 758189717 742992592 867694616 896657551 961187115 78773595 844783508 154107769 860996229 976496632 984008328 607005991 798309119 813444010 834421461 26212001 563956649 55062716 808857953 93586543 304066397 200914897 309333817 304011964 756442414 978781649 990684970 676572117 928895694 482191907 602773156 252761211 962742733 97820531 755332067 991250779 992798180 526082594 667067539 998390003 999103353 709961525 856742771 561578316 575437744 174029964 443412855 685470320 839711481 929829150 993349812 158931242 751754991 87927277 369081449 868326131 992393225 551371150 738884587 794598877 903197582 818903461 836688335 234907417 524615050 589068252 902282486 905758498 912503219 481274611 580362341 416434055 594288471 761524627 802967021 153800277 832143098 975495268 980786901 811033917 992114729 726255901 761402503 934762236 979662191 831153283 951511687 132377345 627261348 123879586 512208045 903503037 904777540 56602618 849599205 472446674 895436684 69299695 704691418 205407588 371038178 728163448 996145994 562847 530279603 818934122 884460111 550320466 760890115 382285234 628045411 771336314 865367280 455435918 878572270 768763800 847784661 751813343 752955476 183044088 189996956 329042682 655168761 479410718 792735612 165809560 675546742 775458895 776666070 867090065 886932525 189416333 401779993 574773395 700788600 651058491 655943439 402967192 566244193 15524123 524232529 456807480 905643871 497269585 804240681 938315441 970983454 897335984 961274058 324266850 516831679 284373584 867354684 722229631 869005979 563383751 816488283 701926430 915801048 686079170 774576709 898679691 919186521 952356309 957321209 142187977 436929687 169293166 839023980 58989675 710678287 370207364 833595079 224296897 409942034 808750294 981348622 525382753 879783119 272483630 948829080 107077914 614453455 515046357 866366655 177190192 529660025 743060444 841056472 847226758 936776176 566665536 873810274 783813177 879864748 758689626 922900380 173345622 399838070 687183338 709621087 422015593 728770316 673821732 889068915 767000333 844678147 212656692 562938650 291334146 798100659 173748507 726190674 735344822 886930090 252802204 846339602 564344013 776828043 422164036 438659576 671770833 789266210 702687363 984393437 32426630 710483311 605312252 882158760 914972517 929548701 321829181 874868447 82263138 754752312 924698155 931853918 93577612 876978693 516301210 767264998 219830972 859084732 743283226 979790459 825445055 826224806 412254594 467024807 275442326 283324539 561844523 999803231 513865291 802164876 907316185 983643264 821913152 967366215 976494597 996640504 492232268 545919672 714728471 733771477 875324557 966767906 199205236 879111656 368453447 900151899 384704773 538771613 814004782 906054200 825117304 865352637 890610292 937602291 156803812 304667108 359624360 444606723 360603796 588140507 670550483 964841747 24052042 202873126 964415914 987649347 854798188 913369396 973151985 976052028 790167388 854545787 629922105 712599424 56935755 959496536 545959198 698988924 459248004 485044307 803767545 930922741 571676883 769369144 585298401 892966987 415509796 574429599 54666634 548139378 622896133 809932469 691843076 807762096 610316305 707493035 88437880 421312631 921412562 943270220 91237582 774207903 331962943 526095302 559366675 985683863 804628127 845346532 397801340 682536149 43993586 598437884 963324020 998671605 161041619 988920758 978061433 986880442 901043045 937350538 367281735 862238592 412039013 617141552 790046711 817932600 142983162 204992389 251599989 737687807 843064028 872051748 752313126 864880604 527555679 766598712 112292593 745974338 336888603 984881962 963716013 980295659 513408546 948682885 281702771 603586958 375549988 958069479 722355451 977149125 25288581 35332980 330406726 605814415 585802401 665957331 729347657 986940129 244455395 809206647 208982526 571002449 652521744 751061073 548787093 673355943 367238504 443209066 410621278 473599150 965856212 978530210 648376281 736223128 351468420 517060760 956220750 965684106 531152214 788720632 271877986 956851777 998137175 999117102 642305217 750318712 434131615 952845329 758094357 783935813 264481397 344744661 900279605 952353983 195862242 667861484 49021018 373467957 418193608 796690842 319595615 887794300 402950377 596531395 986916555 994113296 542835384 597342144 510527101 685662523 367541112 762094315 315513508 592625825 820644662 944328578 192552036 654501451 823440419 882497263 1829109 983782725 51802799 208986610 23963583 53432537 294887917 331679296 398423674 644038701 80050900 686815525 391737252 540836186 871558671 941360368 340626685 614531894 236033658 638259863 453295871 748255595 114969945 361477264 204098154 739154517 659201069 924397605 898487709 903785531 529857861 746198339 821755281 832630509 171272253 309981715 692727744 905903672 786472718 862309527 702113740 995919551 221993326 265012761 352219734 597874362 115576744 620618867 659122514 976597489 846525106 978151735 530725619 930998164 735883384 894043207 308399507 529628902 338415962 442735483 283651580 826262206 245384346 463364180 385714828 963742650 663081219 741163758 209099399 935908388 139950757 487210779 236915371 384529139 637826525 735459421 969617630 985479354 949253606 998368399 131395694 535180427 85597180 984132539 80158734 794563660 893205279 984258924 713317602 962497618 983911518 993997489 599071790 907919417 413080994 500088780 842208909 979654355 708183430 839913333 573481293 666804792 517914261 756439960 350869888 763489511 226860180 849977179 782783562 901739642 907516457 965717208 933398419 974846113 528595622 624521103 505697096 810119257 118100365 370835099 607882804 686016667 565932038 936717018 913842380 968149469 559571593 747437905 964422035 964954699 203737924 891747504 888639261 966332799 681138994 816073423 446887510 751978433 358565748 694413467 506645411 510441931 259833741 959394342 126990654 553732092 856148253 949325878 445382043 672482695 782112364 933812062 961135290 976384318 234710713 792136184 521328271 937716478 545472152 905305558 784843385 799384509 949848015 968168503 953771041 976698754 894087410 923220321 818758281 957605565 327302477 380527048 866422368 926618800 831863789 868780570 325623129 508115033 873725326 950713045 24631562 135503861 548703785 637895316 56944139 426687384 274940400 378541130 653211841 677763609 794470916 845281103 409369300 465371426 321502851 997309991 941525569 993679424 805681828 975764450 523537162 579953207 240892167 614330189 329668727 684291074 780752254 965066536 529110906 847014385 865278990 929015904 17342356 559890684 96748090 753231297 303519044 875064104 789101001 947531319 58745642 702036152 722161989 791087882 626463359 800266106 369159723 986075443 998966401 999872495 10702021 143989807 569983492 621555684 978530808 982439028 815334149 926330316 488936366 968777840 812974476 933090357 42440057 732111076 866327923 893006803 691167129 779500507 564514728 891838543 399236063 963882773 699399456 789322045 39965349 612752801 935576942 966389945 987930698 999426881 974737731 985695139 711157982 792975237 708589299 781757479 289823892 481064155 78608511 481596021 496243394 553316284 826213217 990444766 207239424 789949752 6039921 640805844 515821812 859270605 98113706 770208884 241057729 498323633 142354135 310233291 82402933 484311192 8239506 598081407 569484473 837423268 429114630 510419956 874664129 995133194 911501079 955736298 391032309 547589152 30692555 910947821 457212014 731630790 355472039 573355787 509169153 589524920 918980998 959258568 844345515 945926164 379463357 958597196 316333009 899956444 291190950 589783057 978774454 981369338 474662880 793905533 545492043 797081254 992894720 994387132 525202025 766483019 736073424 991616105 769715023 820994324 975377747 980762513 897812634 918471566 720071243 751077572 389516952 881368577 4048458 763261971 882762120 911985916 641613195 936947603 805496973 972670529 254555669 339215018 19252456 918536253 556982469 897559504 696641481 735906980 357828019 484480886 114870059 180612312 397267735 650880326 377791507 709671836 565163952 768908371 660513187 801612443 144809871 881119670 813499268 945358093 465243479 772299765 148097533 856956186 320366173 517435096 735905886 761070379 380437876 472700140 798638517 890565298 976247814 995513110 920898380 962298749 97945533 321511736 842466 662555554 796197790 859335848 876274834 887020242 85896790 684531832 774293326 883456642 520250516 678151744 437713603 665862337 702338221 881808413 817668142 845340853 928256241 970500142 184135921 234585412 255380258 602137338 23492226 933025205 623827051 649581209 58701148 819038044 573951150 671056997 749642945 796140418 38570678 123549043 803620578 969789848 284242764 603510430 121038445 721912449 498091990 646520183 861771236 998223483 518587694 663337779 167432856 592948183 398582347 734749765 373658262 544698801 742485255 780381242 194234502 623677293 929769188 993282241 674783916 902020935 338660861 716979210 744616367 960514200 24549484 365409527 26493569 245156867 7169594 395622905 129165356 912937562 914071386 983609531 906514843 940391736 942458732 991443287 830898040 849375936 139939855 362025698 735074939 769611941 86256257 795973514 685270491 770971509 383271685 558305214 598661710 732128717 281536806 825797613 279626245 804351896 685465409 958111038 610567449 674124932 746631 339183958 742798891 979274196 156103373 801243549 468130844 895792654 105302210 813518403 236087204 638002198 266275876 522713911 229790361 691505620 270400216 638983704 538927824 676043822 202426146 909065673 511743114 562223731 939661796 952374066 280984042 581696661 981464584 981784459 825540268 978187272 873250126 882235974 615815302 808947001 402984745 608576599 782799435 934889892 122252907 843739916 953866350 977231749 852874094 966986784 762540539 927146987 118182165 736981218 992350017 993658324 417710909 511055555 718080530 726016420 621265434 733072765 211141869 722353328 21372306 996809965 416702914 806824206 490518788 588953571 263878380 844740073 198912737 389482607 936294564 947514296 911455603 999228787 592814714 869355762 801742573 917298287 271885458 589592805 227913437 536755709 505649153 536735945 695504580 752062932 790353711 958599918 749874107 930269836 340786282 413060658 257580361 451632722 685515731 735771619 258944222 362885681 763327427 766226383 951289513 963139300 462870430 938849062 702782431 793032566 774288861 834536616 846471963 952578548 358957959 412550072 803898405 923930655 175641187 194850811 162248985 805622332 930382985 954297530 317528997 726746191 139777835 235299019 644345255 957278375 281626589 564119633 51800245 639021030 101166290 979616756 939806030 957544931 8943711 154499823 641085015 905443254 451624494 764415487 238081352 693876929 707605322 973222035 113237982 738212200 61900658 852618357 425349548 812202542 417739288 966003556 165430503 223218201 507060895 574020913 793786645 822395464 953279736 977566434 693852812 900449651 71084331 119886551 602625520 884298650 34330346 382919289 546244854 687221455 322561121 557265112 268762511 481556074 56113013 99783229 131373503 742774543 384706126 862693442 52284704 478976775 833502646 868874945 397915763 422176282 584372078 868253567 230851871 447388277 210697540 702014145 652663186 877268657 162846818 592507468 259365887 857898168 644678555 950260117 785566874 960679377 391423495 721915559 728776407 904318307 754448803 791740906 156001136 954354782 705768094 903859754 103649864 332768235 533051559 978300938 274799128 423674929 633743819 873390419 634695911 770911239 940361927 945205561 387546399 742317647 446515272 822186218 643519942 787917479 506291270 791349898 736976212 917818318 212717429 473675404 39222643 924220127 138784816 975997009 755870735 916917829 664269212 956883233 288096720 443210859 938801852 962690349 364239239 699957393 835332228 900775017 242849473 315631892 400339497 978341061 836136563 952151042 374619645 486127269 455823102 990308922 393652816 796685568 871967887 938751990 655596581 831524896 457014246 634197971 887079775 965262206 543865605 696190103 751788801 864768485 843218464 878570756 190476529 789936690 814688924 957443740 644783726 721721678 67145931 381703243 493468971 500076337 991177290 999597934 141120246 347335578 17792662 494045831 248139897 782150426 926191352 961325649 368189824 654810893 633080690 986460162 606938877 634876344 295738403 359056220 72296062 340901459 838940221 951090717 148776792 517065617 351706582 554950816 861706586 888448268 48197766 617852720 84419484 719615454 912165057 935138625 536670412 995599043 906271743 920183692 769606397 873183861 635371418 871346777 878436381 913190987 147507676 681187526 822422291 943495519 961732537 980302849 436042371 579777042 81008910 955235604 524916649 670989407 51273779 738580258 729597095 995273735 40342073 758939944 493700937 951353206 241372638 431629141 746306449 851412882 695480245 764998442 362728398 371747524 833216407 869029074 194847411 755542130 543763548 739060142 520657515 647237379 673409402 695019683 253390501 816535325 293340875 511077356 395581142 438890091 576054967 894473847 530071158 617517556 139190748 492760859 197328340 743677787 878648827 989221215 349124679 404685313 979463729 987868873 915845392 942852867 572581655 961572707 7795435 170705729 376222775 742990838 490572848 729911612 626933665 941092305 446977582 612205496 318581266 676983102 164441220 743351191 696311554 803266851 90541507 90823898 303675474 968705933 30629243 529815468 135435164 670289067 479613076 648474174 130878468 815373939 475060079 780351199 514605752 858849430 65240576 972668641 568837726 673482176 581260571 709575376 413911355 700537209 283957055 438818582 933792667 947493898 955019776 973307343 61308543 272271157 177360788 505821067 325415326 870155489 613469479 632859418 827485976 940459624 667197057 765744095 395165944 536706508 599514535 873873511 87894697 203805497 952121542 996263344 173523715 216162415 16365474 659373372 117505752 827655874 863334916 916769126 662243911 891482130 950392746 996794025 183726378 189942103 639198693 708757862 258072078 587782206 672807151 714494127 540436694 758653638 450822134 723925419 144338438 721746911 18451920 721053513 387152634 700501643 700711909 832201756 722705868 802206523 437430264 552410632 501696893 830469755 980919415 983061671 338205001 476313335 853547064 913354339 582513230 720577473 80121532 391196568 677092562 707562013 218386622 599906469 822091975 842434192 397226179 697813893 13384429 899196411 956213558 963988120 403784000 993200127 65902950 698720352 720625507 775763878 953246896 954531564 692783301 816705486 419958469 582999695 478836692 755656964 27508528 204227227 705925495 815415285 658849827 908818759 813543446 897679551 626091963 675579674 267174865 402657209 602772243 935831363 696853043 818172433 312054829 374906888 43460297 491834918 806568392 813312788 614660704 801578455 235706101 948841135 465807938 825229053 845539582 965322588 4460100 327724155 810613594 936359825 897873156 957256479 465393190 669761865 604973957 760608185 357441080 634030500 482024463 498538853 129365194 384035304 26289275 683349223 568249047 991463603 119295335 606546205 703173988 881598655 970715164 997409942 490295632 873128084 297409489 592050527 36361140 940897890 608824038 971672098 45477670 121885857 717995989 750105815 365590104 891636993 146162162 809080020 103043502 211182392 198767323 409535252 728349248 735794218 556249612 811656459 73746406 700895087 18352898 917315739 918492695 997179931 227848484 334861764 396097357 881872008 525780258 935641770 787660779 898456897 21503831 456634696 601339945 695563309 399919943 633953092 762976114 797039953 260958331 935959381 79439857 666391252 27234680 225288816 564439753 797143630 37792245 982031806 562555500 924934983 598818865 831845697 461388656 720910174 247114152 384247622 910401966 920759617 579196157 762086812 211555708 437763697 44515547 815149531 815919950 856064939 453141011 596237373 531475474 928935491 970026906 999228575 148722606 421797689 271314572 329554628 849001559 850152122 906236649 961574977 718040011 895749167 718729479 805619465 311816879 558005027 678788430 806622048 199642350 281775120 155665994 320778501 587111158 630576878 316379979 830746373 326165635 667184113 158069640 581248239 659297734 916161162 906101257 977767368 788282357 966721376 672165812 727467671 525421692 705202376 906159958 946932845 144951347 802271347 844456577 980122012 641093969 826954973 601213684 876298595 888602847 925379907 714945390 835270779 710378919 954503571 357045030 584165564 552793607 942422957 943920764 951268973 461355316 868325483 633590643 748741151 121972209 680166105 294819740 635487184 610734797 806794003 986791851 994119052 262913171 839270036 482782381 679037996 857242613 997346307 707855188 979960752 884066577 899759410 183704137 266813974 537275217 779930637 269406452 485561768 162556971 713344210 458175710 701383064 48072780 873782721 903656136 923242946 489098494 844233020 981378344 996753989 448400493 613614021 533013487 568552193 385437503 823737750 954070009 963542960 570342831 967169313 336250222 974374330 70123162 403778146 122886019 206086274 467405754 902743988 390014404 651468852 197410191 828353712 706309895 710279126 959625381 999392560 313398719 441654669 17079508 595705202 959249540 976045018 409378760 821632778 187795353 549987903 439931940 738953468 668858613 819520860 309039351 352600377 258384538 757659156 480332330 577032639 253321997 465123898 262583770 787131826 462840855 637043533 668447245 801696544 343303835 557185650 312826278 676704868 445211837 643901781 706217636 771619063 419340124 919076933 680852980 942498345 3520057 226753716 806466799 837750924 244103444 334169955 493774593 715929371 391016075 471811352 575981016 904142496 521524684 651459365 870297588 952827699 404233054 920552974 998076558 998602728 127936758 571495928 432971034 606943992 590798765 937946546 130864153 209734140 265597796 867099334 176779756 342219717 774260563 913429683 512898364 778761316 121780661 566381962 236164056 387947657 152068703 604517086 724899430 993462068 107590600 810738591 80660361 451692041 265490623 668510932 455022715 753972872 451548539 556608002 8012992 131608690 286257393 994004972 137773389 454032998 281056380 463057978 853523652 959669109 930219671 970482936 180430699 962281930 873147232 924399902 583467847 802330862 459444532 622179991 808574486 850719307 713352472 835166853 939864580 967146626 581222044 936884481 329026389 671468227 358853311 582399457 300883251 859669978 91495521 556901877 580874145 820575409 629147646 867513802 517847413 809509807 292359227 415080607 958168325 976231234 396531946 940810296 79096792 516521759 451517834 515407393 263328715 307842019 959547887 973197781 399928684 886420096 122870099 238718860 745746215 933810718 547188456 565356972 874653608 985643792 903896154 943900219 547478553 940245555 638903836 887631672 558457661 780584523 314111177 942115096 562947478 676829130 699703447 781412903 702831244 903799004 463418835 903152709 258568200 895119991 535439792 864839472 182193557 457654259 862767020 917819533 303638230 855607659 682277377 764537916 437423644 605003754 238980044 723911901 387460139 786765826 647080777 727105077 872396821 942513512 740707144 857432411 346671597 805374233 824447962 990495104 893663621 909116654 34924430 912998278 739126849 758211749 894546107 977255339 729204255 735444568 933758606 989847029 936416802 978360509 154727242 412212718 51911751 985121059 320761652 609214730 418056428 622277996 876739937 983585737 341523174 594066876 769597261 897339199 292995448 865244827 763004327 844997230 809255714 876544009 911485663 959269632 565574865 807999265 59551511 128163368 261113727 491130769 989826009 994042255 272194240 566396856 704464964 820012333 759192639 891155141 925073358 978970921 593437097 687463687 137671182 621430236 582092955 926140336 18503442 411840164 741832423 817709392 630072029 692389559 77693672 897537406 806558471 978108369 323146054 852893185 783686200 936222960 681804554 845053808 268148766 532973844 93302249 447576342 553353026 867160205 760549588 912313381 15229296 402525650 831470167 859846462 988531410 995125101 14641960 836045511 836503141 944372019 1855539 747058569 564663637 779252310 755958636 771575412 997919274 999865296 403086081 858282163 470919622 801851958 955482696 975501292 206487464 492977292 73276027 107474529 258885988 939487860 619067659 777756926 329374408 732156051 41911399 274274738 363047433 710426376 968877542 980509483 542655004 673458858 102432069 673885273 43470558 232569421 829014096 853530366 371855549 793318168 181630340 886955330 336483476 762121805 926708301 982083167 381890830 598993113 92675271 695406804 806418747 936594050 683723344 685415742 314501756 897443139 604760712 828010944 923942531 998185525 779666534 951974359 612245191 883344378 441767275 908026330 304189348 402815275 273678002 524688331 30328928 812474422 780096222 792623253 676019553 934821916 318806923 664946971 289618860 891673622 330235261 928757770 560035524 794517403 734417401 965634859 799875321 880743797 860232995 874507603 933703754 938224992 465862366 473865563 584490832 964245062 359299217 559757112 621769514 622483267 982101117 991460793 996545775 997916455 845918592 905397714 601752920 781314551 650482941 740378535 56448124 914317880 805709884 860996411 287437727 968299159 4659981 833925056 768113955 842573872 153472563 311565788 494949396 735093062 890333560 900856709 865324602 996138329 56237134 542463900 254883889 619885725 858902035 946625839 593921447 850517823 321581340 578133249 681814348 762332344 380096991 742898465 51015868 97258156 68437001 986425565 781695351 848979902 732231305 976439036 147178355 668799460 513563601 536136649 743236743 943636114 867158084 927879196 116054585 946842451 456875284 920796745 164428793 532251754 197210501 586304041 803590858 885605750 980248804 981578799 271190242 606779809 148419608 323436328 421325172 694979880 380874952 749185600 461396788 581828505 269738111 869292666 105884367 674928843 58102056 877007103 649673758 744350956 971542729 987994045 391695048 866505472 396102764 928070838 489641043 495390825 408149508 592097382 21125418 604531872 350944714 365340191 430120267 467472204 472487015 786923087 151099866 370079103 796838377 990779423 374921988 988550236 783714506 964931685 521154441 864746199 851083882 856609820 180993589 206389500 874868837 945173316 139603170 592672965 80270845 356017503 533266007 947438209 70758783 346566381 443094234 937718908 519215097 794412125 252587141 808945793 249264262 495428912 395234362 563751523 741016410 798236987 523966965 610699000 470886818 863829715 801093118 817804660 348871348 740572353 808093569 870677607 916758221 946925035 847816900 887756930 489027061 772639709 646440960 674222211 975165131 999029818 157063863 827679140 22883474 401748308 502647458 507290000 686829302 862329141 435619743 621709716 897944132 917855349 748841277 777029760 545926660 936569807 128860129 901571686 460028399 479367029 419139152 664216801 852133661 997008958 969798139 996705997 66717247 651329123 503945034 567000990 160326219 631515001 574151714 578410561 259493458 951230111 709814527 716784731 664969597 965571238 542686915 711148139 989383630 999590265 909078955 983636825 388782784 479130597 773098794 981445306 807155553 826696138 125333118 726199259 127533905 866342939 471814618 698388658 136451611 474006620 455123231 625679019 272638804 565826101 950085368 998719160 55947368 564505130 964663802 997309178 760495829 885007831 368370159 686791980 119858930 767435989 109538601 526517062 779265954 832315012 633064670 763868664 272156963 525354009 179386600 307469038 886983055 915177072 488570067 777288026 500650492 567695436 630709914 977756781 70108509 279715771 674650263 905663869 883192692 979166178 562926354 940784234 593361994 862433210 768149480 889989377 35067048 441106577 637808826 858365724 221129753 703456212 162278390 271790618 815629300 871701397 868598702 931942329 536059940 904503250 730028011 767394414 865662986 999003360 570240642 944708874 245075046 788740689 140775095 953246309 344757112 666699495 619592163 640433343 840366702 913522172 13087036 395170577 211154674 707279565 939866871 992168735 866985479 870588442 406881216 830649308 214298092 564189852 110364283 812718897 125792466 494550230 918122262 991429888 178290811 466185656 656818696 659671860 980920365 983673912 433060334 782824120 835476484 918422149 415514686 930567866 873026626 956213734 491034015 589137991 279835891 503777410 812628433 926427346 943577459 990187445 165141480 924551837 426071880 771849653 22953661 99560890 617674677 639747871 469558180 723968656 785778168 916908510 585790060 994016340 783773460 858414728 753366015 890589759 840918026 945838894 9423350 611932550 925236909 942898542 434916336 886859495 824676290 846668977 622159587 623853983 680362368 689354515 663542656 808466288 954979003 962715632 587423898 669024114 381468857 526292413 985811944 999160691 544149961 625942399 582674098 913695170 201818221 357932208 208720825 554472801 933421955 948821645 132872497 611356958 443998104 686429621 915436264 915762648 637838531 834476502 843751354 946194760 453798798 779058984 458495927 699945864 372610927 671602967 486091655 855666359 329511485 660897111 477931009 963823729 771948899 868996222 677561297 775356675 274457051 423305802 104557280 906400778 13946224 712723355 304036381 422503749 533664986 628626487 231920397 724405941 606162081 673835340 793633661 890632618 554131869 639892841 368337126 408049127 749553801 997306741 362993874 815233954 191639979 499127647 934228799 988562191 450173330 646665724 119544159 602125371 452491557 607539041 366867861 530504310 897173577 928122479 560455777 869922853 193373703 659654642 293791351 646739764 913358092 939694293 882013126 966285811 817965041 995347317 62883885 226612038 394973108 789943742 98550065 767472060 501849613 730246131 931730646 932691791 883470547 949907576 140215470 377371623 906324642 964132734 603683146 844960903 797968193 983203993 141376270 192474455 470686012 894405430 321031724 822001473 113283611 932161171 654740624 895193920 704986733 712227945 437623509 949867764 59517670 301289139 301955609 712348933 430390682 642128646 649825935 922401862 526307209 925967281 474185619 954563646 530223371 746252008 348368593 822702041 205576058 338269704 880277392 979711432 453512784 510073344 886185508 982244713 657300838 875009627 151880832 503392361 407618930 440876647 563249225 683146032 595233392 824685688 288174670 428160730 187048879 783030114 297181661 606229584 948933427 974431580 295093381 909461460 974124988 980155461 445580262 855534815 99046967 840161885 451514600 936927227 793943551 802826634 94154924 647618335 607314602 680893198 29503960 935475858 646326079 650877173 350267092 428719514 510404265 939245412 227807671 740810826 617079012 995828472 785619645 823978440 880209199 996429890 428203533 898233033 425666086 786284102 732124541 733795109 252094115 924250134 774020411 783351873 540668989 745795041 640841321 942119478 217680098 698299479 955679420 970014639 77653722 239725015 363407357 958344822 960003227 963484207 791738047 854370134 960808708 993122401 661813649 666687380 64052267 259200054 771578514 844396796 267085618 450112257 378878110 565745041 982836084 998206492 350299998 653961850 425048710 970226347 536766346 892498645 796886805 931823900 871613041 888404912 531742442 995504844 555200309 683483218 945131257 962339574 421809183 745495271 457404987 671318751 35531584 628885244 409895207 654592839 644228324 773409771 714515821 857586792 631348926 945871509 931984086 964944828 361374366 828665529 276846139 940761438 662968170 758661802 301631669 918945813 749899790 768813702 215447829 422284561 751946384 874589905 99144866 863440186 469863800 552119979 659442997 762297723 357604126 468755614 118735455 696633242 234039274 854360821 949429917 990855801 150696347 164598182 615514621 717158463 98452438 291543187 882648679 937915546 639368350 724939290 400908339 487591772 948782521 961407993 190271045 984602108 532237194 865859904 437774396 456478242 696243786 944205410 67868423 996805252 300658287 972969768 530528482 752939034 185424863 267021557 699214197 856772839 59293051 798479666 392880476 498699781 81765657 618032187 604254500 825675149 763169764 929730358 141305544 380432823 300244100 406407784 246165230 628578597 351208529 393376066 905777148 963947483 142286648 351464286 284108719 582701498 513589625 715313329 847762263 873113920 691979896 692507272 18100982 268151021 266038867 955664636 77676711 88315890 417935855 453623455 613051661 870991538 186686883 855387627 896369621 949642797 60601096 671552267 561008410 949105453 552618106 882605064 252941511 467333784 505921210 930579882 43300474 471161151 106862481 467210935 670432240 875390454 482795641 817941594 360949213 682468783 846498231 996474219 905016052 918814946 307618259 760966885 378911696 392475484 655341568 989602551 849745273 988533448 672582940 873284756 773349500 826725740 356921330 988432956 637438737 825767073 227046033 686423402 279303332 867374364 726000497 947092190 966217143 977225595 56466500 301663476 712718917 858471575 161434018 733118268 986674981 997590448 851284631 912856716 891461148 925955902 755648475 914290632 758097890 919098709 808956125 992670357 466566631 855515484 274413995 716110936 487280628 489553114 53587090 144750101 152075489 586712106 779007181 965105611 835251282 881232306 97449746 967684402 136947418 397676882 874164514 935505063 679033673 889446350 856013879 966321510 632255819 905743512 491843835 533887272 802942213 841206694 116850651 331806101 57874203 226996725 308586449 553603789 742445338 920186343 127867567 133727868 210228450 900957524 665828723 787957245 910395764 971525907 74030813 477977134 697816554 874582530 234364098 678370050 123480809 247532898 829640362 987783815 745937604 951554771 49148293 617048570 618100343 964481084 761437718 906330646 97769783 307413582 320868901 608861080 810454420 942106353 655696739 858891262 257810842 617963066 486889698 718608574 146195217 478709973 966596240 971468091 423591280 740439535 782311008 989700884 415287646 783058798 653674732 698300733 894757314 976682513 714661138 723150245 143546385 314077367 833316362 919571907 704661643 873286933 159734470 584027500 563070296 812176149 765512448 925744933 947121987 949413427 550408755 747668759 379888098 878142809 919732469 948264421 986213453 988449196 550028687 895021151 993621721 997196858 26264732 812829442 957801666 966957433 820883073 963841210 602019460 657957090 547791259 888605915 263816336 509382052 873458859 948320005 759543946 839322779 564887504 742999743 313380399 826050201 639523242 893139503 358979274 499668796 476272567 856571697 923228634 955274073 97805004 531533242 301057858 512264747 314476196 935941104 272407454 619342197 124366173 825648804 946744107 978862739 543191628 834079853 649762057 859394305 718732719 925815601 559709626 783208192 24421718 155620343 856661982 909084152 915940353 999626340 487160369 509847139 980158959 988692556 437796144 928648922 817106417 935924192 300668765 711479534 395646317 863521047 2713756 377244836 667023323 847420652 265525663 994131487 681398294 827544034 666027941 961528162 385835390 403870389 500379311 638159909 433308249 961473963 898860648 929115601 598613032 719771175 942703862 992136408 661285237 976033247 348242511 496633732 89667117 680406238 821319680 833739589 595886209 950825654 195070518 754804438 216983823 762123964 113832878 717443147 681088658 803782101 740269626 999304156 970182485 997971098 842227046 877836327 694403646 841337625 703287515 705862592 546784557 650374636 856615056 963811782 905426604 991341674 165271294 331626755 985977250 987461054 265621794 683299114 441137284 937697717 481762677 588477624 86300222 951314660 228348682 751281326 277909447 837917643 903591589 978591741 281578647 667654455 861110308 918037853 694114460 878204156 555406280 761867919 681778642 843735837 448466695 651127518 954961165 969837626 234944306 638806837 376412638 532875112 740998466 840080311 545295429 915439426 524212096 590255772 971658078 987963446 570510845 903469716 339654997 946804236 288750175 660477512 661905625 844662240 807157284 870509946 379974948 820031338 912169320 987021458 245927990 955881087 728365783 816724836 799608102 924012578 776735680 814426426 782229274 951909527 843612107 991890467 891567085 931457964 618708763 748998404 849412156 868295087 910063277 919803575 994655334 995359348 403943345 760501485 476061129 757078494 981687155 993843231 433131342 548700218 917997187 978320792 740947348 957544123 342121751 599243191 343866935 828776484 345940346 560253295 723523391 755026096 14088518 902438023 44775722 199569537 384381479 574170933 484963815 951867465 330247377 584530369 471658071 562247218 925838604 959625322 133014322 968522965 460550495 859667646 76301187 863847814 208348308 368388439 983275043 985173773 683507713 693482006 165859112 996181852 681320435 905724439 901502574 964249060 546853084 592810837 978530709 993851276 6931795 248835303 302222025 471105021 990992777 996261016 127844830 776126763 629296746 975068468 992914786 993718551 363768646 632990694 860595924 928069136 381391164 622373770 789588773 906683949 397651141 398248829 53968383 985681875 856236489 953163837 783853749 812799070 325490928 412499259 143382412 759870670 288563335 777214072 425247988 864025620 123266669 219194214 159410403 897385546 536098693 987441886 416168658 631892120 690961572 701074533 914423141 991172618 653408547 691633391 585642043 751946911 923240057 979764782 267015496 334014579 528114887 823444589 633606031 906658818 327258822 696287209 676051777 776151720 426703460 696477910 736664659 845887009 588369519 810896217 253252486 530444572 488781078 959832517 813041835 825398578 422987340 596396414 96161886 668011929 386957742 569330459 817476539 920455501 972098968 992259317 534584714 712482406 460088506 767341489 90651812 770808689 1844490 661495079 542702423 645548336 516469491 829734736 31575731 302655337 238791610 410639065 86999445 749802746 385416300 403727684 671623009 854298565 560499907 840756421 71366637 639605950 482710807 994278775 307318554 559522650 292295428 825909702 556089379 655961163 463439008 684454742 396558605 435622137 333289883 789587475 101229062 113910713 406202306 534979533 184804863 950075204 852589582 908103443 36431551 506021139 854831780 941708189 519582483 800222798 471194492 584052786 244096920 922507324 496648886 822475511 794669562 993374885 71369118 110368720 794893663 861314956 237327824 808269914 93435829 968356690 581610698 834965750 276651012 423732321 104891586 715771446 337413361 414455117 910378826 936842405 852380251 950837467 514995986 708714928 886992460 988515228 84496304 765008148 192089744 549614317 376546332 645258818 893265208 942185271 367841082 565287758 778719130 780040980 608851538 705256030 544397629 625091019 350913687 762855531 551459848 963497726 906657067 920481411 520904370 773615208 762638034 978899020 209570344 327666977 861669999 862307754 798194345 926086943 743622047 765095434 485905866 833531443 414460513 667043800 145233748 951667419 77194549 319014664 692951346 886989217 539940871 669630008 69246741 248969456 540584614 890494023 433272552 711012240 401930247 756877393 389645297 696518098 65326743 527912776 769924287 953595823 623248579 725736271 172294391 760204605 424273333 607209160 866742172 980568428 75229315 147461547 464706989 989245441 803054801 885794602 606413105 862327946 191121301 342826470 626196538 663069158 201267783 318673941 441560679 524484316 193961145 767856436 81830964 512227096 52853652 533333774 165958901 345100626 969419303 979897231 287828657 885948945 944747602 989300268 224859251 997972392 242905170 472266101 119553456 717893339 126174064 566531425 732657735 815482008 896270739 988520720 548037153 641845901 698764605 996907040 207799338 707417874 989492932 990707199 793858750 940400675 233051252 617292545 343214756 351400873 984929085 988383902 133231196 879766441 308343951 625856455 936969281 989437539 315397522 913053356 798958365 996363808 808657359 861816869 382375755 786245381 623682960 722615631 706547887 826245552 479744696 950254991 181374845 785508912 733410982 830339172 11197065 611247831 852062459 902551009 336887077 837715266 655936428 775841856 923150588 947203407 332274405 337796196 396776115 891965226 334293569 554879107 744492054 907696691 279062422 299514183 711047264 913074614 626119774 686030563 212962609 703017297 744694438 934881444 245220227 287374923 89255691 537841790 932831100 934626093 121691491 809016443 721418821 807211829 166710971 838257723 354525754 535273708 188233379 957911197 379454582 585796231 505736625 668495033 655432723 948021196 134084411 297501756 929547543 939939346 243197938 877758004 391276544 773039017 691267240 750820283 47419260 726920951 272473225 427153120 60271940 886035064 431302796 753011100 707235242 728942645 363018231 885310983 785306442 941587293 106566695 464601007 472526112 949413477 915679020 958415678 201923094 900384554 556222521 597712359 438412707 738876675 308246464 606097925 981451317 985718940 960806734 981246522 950834626 969982926 624090354 706356822 729577686 938143717 619566817 989767160 167637753 833880478 12702662 275415011 104174030 593630958 297219619 605047587 338082549 831029651 90232118 213328459 915894770 920740530 249274310 502758149 871488960 943173010 48540565 813880905 597301218 767463272 496172117 857571603 633952163 951405888 131172400 606899959 239421668 304166147 452506340 719175847 435192848 897512322 801964430 951617658 874918208 988169030 559492739 724410977 417637165 469121704 764709623 814698750 165404828 790719702 519418380 980023293 46813643 392014649 216689829 327536197 25457295 236692615 200234635 440241349 94099393 182652870 189655209 664404136 177485362 673163120 690706535 692786299 294848513 694522677 93278760 523515192 909624277 917584663 870777568 913119096 133208841 705023681 93351462 892978362 657451833 878004488 372926239 824368552 992254153 993466448 299107567 318882577 125879888 601083918 555260114 852604890 225350405 288399608 79919210 278631202 223861950 393220750 180821503 591925068 54633371 826287351 318876598 319670761 685917099 840602245 512098540 572329838 510114629 712703621 647234108 817544738 883355049 973841522 282364490 771330568 374168229 615171200 747514648 796229925 516791185 775705176 63261775 199803627 956393415 960247576 44013745 649297539 269980219 396398302 783489597 807276357 640648022 723708517 730077277 775692207 625314823 686630509 191496369 310838211 607110281 620258235 961529196 970284615 969029908 982784414 975794962 980512668 19131998 906258289 760118881 974761170 93030857 845228491 408259299 576875756 178790922 352965851 546880341 806592238 877529132 895226658 683100174 861125334 994939621 995230497 75586425 971316527 672095919 780079292 330192219 847706376 928379944 983598084 896025558 922061852 577255715 833850423 737232761 747561664 90365687 100249865 150396748 728585478 683053096 911187770 260125690 339043312 424932522 772341137 169393358 703805881 318083189 886806150 702064303 935122328 896917419 905094410 778500340 831090028 872188470 912083776 327533262 408704447 285279702 924576082 224820304 579487781 129266261 890588186 724316742 728924882 781020541 956298796 219831054 714935910 517435631 885163581 420570188 935497128 430092594 616738668 754728364 808615128 225605941 975875839 221455966 865999104 637762878 996671866 498648507 802507670 900892872 958299968 557590674 583177213 266886574 599113616 992319360 995593873 788874120 814104431 701456016 866409370 66993074 208419388 735887942 861724661 632102353 917196939 123950212 214359762 535218699 954233624 247562757 388585700 714285932 746726009 231050901 872614120 219148958 581277648 46125500 112513852 411465196 752037034 188034343 434932817 15212052 688045737 37900106 244085450 291107417 799697326 702869870 928465966 437047081 676774604 899518766 968193662 126747425 834815409 555423160 864801301 796713193 832281709 742320221 893679706 801563227 894785639 715698409 964160971 367736636 461036985 734602420 964993399 581006267 880087680 869661041 949121926 988737608 990385163 419118039 748878179 249163519 698527028 763049958 897176044 735263919 982178780 691192038 826135831 553218957 889493863 717741333 829264704 501057787 841952099 677997400 965215062 286278820 971350634 845652157 876862302 643673864 720921178 568052664 916873356 839449065 998869971 578648041 711921817 517362537 533843845 179753368 570708309 162654918 559797795 361476245 973093552 259006719 351194411 452030435 479499292 432565611 764514213 967802450 999206892 928289397 973884819 186342272 832989092 241381525 576629490 871220731 979461095 738207635 997651764 925400825 972258934 577736635 658946506 905939078 928936869 558351214 691622642 239604427 385048381 33975101 868848848 25124509 99549167 708887845 911096258 915440783 958618061 617292932 781491861 220388682 237852407 821877165 919631943 285675860 445154409 778486560 899169794 771287275 843220039 899174116 976598601 187114064 722079791 50912020 909228806 110547142 314162744 953973114 993766668 891109012 893796896 725874159 738106052 165604069 444393675 632082211 839082975 966529184 976853827 699942866 979894386 778420367 983667151 22181700 664645731 892528013 960850927 483133625 867074392 853843870 891431989 102986906 132025693 505336591 561558309 260977421 824555088 445784678 484211112 989370669 994991454 92342636 279041647 277869602 932828183 323331567 382473510 187594159 529736579 428696526 520544690 915999434 987143376 452910526 807325100 313544915 965633100 479030320 822317815 787159958 916974842 136762581 491477610 979428172 993429714 248266033 625877328 742228730 992065083 843041307 985177999 880257265 947582697 463724785 706034261 377072434 672295777 96055343 517729269 728471368 759439151 55644387 596328635 270971264 286791697 284079537 606244928 961534306 967175499 212607411 429670214 360855236 696928253 730885902 783608293 865429286 902629641 325455772 685956978 532983609 705248137 188020857 743027114 824854752 847240488 367911381 984527448 673518817 711658231 435549765 816819955 969390796 997030079 82812466 582691812 333912649 667105646 967908032 969448340 737688565 938978583 926628873 946651189 481324925 699917236 546794459 613813915 184440514 292935789 900810975 997088086 518868152 649570215 145958731 985853392 137327262 832909932 577534847 838695583 59875211 80857539 67035659 732703893 402219965 864276982 253388080 750624574 427269236 726550776 155346316 358264513 759744100 819734694 453220018 700083125 897011201 934965609 326218766 937621895 148569512 180888388 837102973 874034342 441789072 664134356 477524713 896823625 921953455 961628827 30793685 676356630 527410153 683509912 361318362 739022710 227926858 318909249 652345310 831084686 508323140 789097200 982966043 996684444 395872280 580631687 760381185 762595102 595431510 686058182 928282569 981786839 309672513 615395379 232142362 546984381 426030607 722228651 842019049 991915488 866276375 900455553 936406424 967047875 621013426 750094939 423116537 861637065 546480484 938403543 110267558 626888339 350692517 494929050 849934833 935203685 401308983 699073570 685591659 866407372 283646761 409531690 969313678 988866100 743620327 944810035 3846420 749274306 768743916 970034018 821972814 876227704 423072343 898461331 535947073 748390264 991788998 997040988 669779439 893529223 308209041 543292596 211644157 522316250 314006859 949346261 297091196 536110569 555033820 646410938 186231499 683093042 429837928 967730785 165887793 614632557 963717814 995836900 472723584 915594550 763057028 823862226 59902513 639410337 218236404 844006035 264538615 321825488 705673944 990850295 886839944 988727968 586858578 676370501 382682837 512555159 860909292 980369967 193337445 609338465 834199630 914662284 821929278 927426159 653612537 908192342 410666778 568207788 424095426 496901492 491068954 994419680 441022555 487762921 805678496 910685079 519542001 743288348 859323840 866607501 644616609 937428225 759994727 917866478 680577943 800852106 525187047 614242895 816833965 899602012 990802799 997567003 431909593 913282183 558156535 795147597 294032836 999256272 475244376 888740119 115213368 910754099 741787593 814786134 49946516 558791450 968629469 968884723 768962908 789059310 879206433 995582775 710888168 834510010 37126984 415001218 553244369 642625769 176641599 525981265 10058336 925878647 34869171 334344445 543712907 864958822 944881714 986688356 613721884 723656564 491037800 526364506 959290165 962501685 446182496 529113253 945611466 964018602 688593550 858591231 472068169 942035866 881588131 883688360 449894265 470202364 124982335 368079783 967683154 998868455 125258644 265714219 70232190 126157190 727113947 983563368 557793536 695673740 264743434 966107792 818943557 986813169 810076446 952394995 882115994 996171958 671660259 942744476 122271857 520809860 602701759 829318432 814233030 958364532 428351959 858809836 703690862 979696678 22859848 433806269 231180411 800008087 956657431 977508125 364751891 496611527 845022513 947561413 933498172 937286070 795549307 929205752 72816019 833679020 148665263 841974423 385192710 477216079 516121139 552431680 999270356 999961113 141297555 585091819 577206463 679058508 174396473 214740222 560626301 862663401 325533086 415829629 853668701 914257051 633697617 777238941 664318152 844237382 336091474 486722741 571419085 804093617 293458528 872564274 377625337 612122174 189238591 563733326 980846807 987413784 352739537 938693186 878874606 955096791 162179910 922515717 285633505 840465486 884633328 999979780 166783266 680942334 55402354 120234586 489283996 821953573 595459729 716895563 784723485 908748114 67039432 361648418 679460752 859649500 403126451 461392774 766140681 927361132 994256114 997391672 713185998 834846231 862628702 959485416 670455032 712409022 416242507 854453846 937330959 984671080 221550214 541486736 277977554 639399850 330841025 895702531 732208923 878274128 770763453 782358237 806540103 979642991 635501289 924335713 807242089 948949070 182645633 419327655 657463275 685342406 945504037 979533442 209688356 363242400 182258486 266910357 491291781 546347856 803466690 999920270 727924362 996587826 252865653 996951008 804598002 915209200 238499462 691332416 7434807 689332256 559887212 739976362 300554994 471387335 868148300 918407053 12332813 723440079 314783959 871071650 724765626 955932500 344709499 952357409 954451578 960632552 84651047 682150956 993546940 996679313 509640045 902257047 462550620 597624294 236165373 692463014 678561582 939086571 205309481 674214664 235764870 556464021 527049207 892121686 581484820 637952512 660800702 662354762 244930470 909348397 483357732 963428569 941486152 980877247 271219550 629113479 991054588 996656228 20736227 470064304 312825644 621947825 306274824 443344766 956093087 977020555 82827050 717377660 93785005 861091451 414496422 834396471 950895871 996327139 439608610 923884705 335046513 981440321 326928667 591011635 304886208 702947402 544663321 752642622 619324670 646197911 250348296 896389547 22957691 663741857 991868948 997624715 243102380 887868022 565798910 884555067 950162752 958962309 43727879 718926920 221106168 978209403 968050220 983209392 189632072 259006348 897156042 946236894 349486655 382021544 779396577 847864909 86691594 309057122 531706271 885846986 115864214 794186362 491206519 607104040 319476925 576531794 858623910 947851822 68994170 810775731 512231184 854024312 435407650 680061087 908274783 993092993 290450665 806192772 849372899 956595575 626654132 827897978 784175578 818494666 939070105 981760058 148120482 504179534 4705234 904809385 445466983 921725560 463096109 827157844 151787977 329163882 930670415 944473303 64775390 526113140 648059036 797580238 779003074 842685756 794484963 942354415 54241888 951775349 424155385 960283721 389539121 681010660 132571922 817831533 5104416 832001056 192669391 685905233 686816257 734746388 954042339 984809303 14395282 454222899 615241298 750855616 528273223 809425018 601950212 925666066 243659104 327479490 972213269 992984679 774418714 810438600 896541381 955114158 159245489 578354541 321124100 648012431 459018714 655870012 128579850 792447094 549248729 565945467 341663927 688058422 230462105 617542546 747866802 750513837 697089887 765888273 621870747 996630797 88603293 417819684 531286481 692397903 733840098 937700094 725321258 925722255 635141547 829705621 533620490 903636484 672818176 967505052 124719219 641932816 170990003 740827716 299617018 389868032 281340995 555981500 616778366 904460473 560676197 801828246 744571764 829530419 795564368 957554251 939337683 974275501 459700380 618548548 570010787 685248296 585008281 832790172 861361048 994603935 453066933 796010779 517360652 879234758 4482302 227774924 511703252 647254031 197307424 558491204 511362698 972758232 896608658 972416116 821465401 868111617 568524081 949758561 998008969 998657076 120020997 639145870 710785942 945230272 366856320 752505792 565291959 833088010 795237618 925323558 287161390 803345077 772063350 927912418 198213627 730748430 634799213 883830275 929250476 956929902 564883465 948927234 335340399 392225486 924022680 940639884 20419062 317245463 172552249 472396529 885678823 935899431 466618757 561415986 69426993 205999050 743988550 932814345 259903088 472762262 481739516 971356530 890976784 970321412 984190717 992640256 938404424 980774052 63612154 451131142 142363107 867935391 774611101 837545291 79471123 831781169 281465549 479633706 219160876 254729937 380467111 752526080 454130735 824751873 766161839 986107086 84105017 627052304 150878264 643576807 21841013 260844706 100544071 512846076 844672363 882272601 799386308 806335962 786972695 955475177 541651633 602647511 557646775 968814271 831675474 954141486 160653937 719364407 354245943 749703740 194426511 957091985 131931597 204878542 224488025 506386658 819108565 954063382 617286081 668615163 10147744 140877904 843146953 949487430 114131016 471142490 687940439 798621323 659763493 831249661 561761405 698342364 12819621 294264179 550519921 962757525 225985487 485883230 630533413 792480750 545218556 625231580 549309494 888607409 730033115 955353197 446578166 450479253 558548613 702295843 812202891 942834298 204618285 354747863 687857540 777348750 189879147 259041587 635223255 741800821 953296956 995161408 977908075 980928743 291369681 658245984 671577989 691220528 806714937 944220076 39952517 346549385 495222027 862148671 167174467 986658730 111367368 499400981 114487419 815012630 123699713 960377625 673247105 770054180 296086184 672971927 435202498 863127586 473459378 497288578 917837965 967093531 57067834 629618577 611174147 688285826 164817356 756997859 136907714 863102045 676214347 730904794 198369443 920931851 898093036 918894297 370222682 786396323 419604919 828350908 624336108 913452215 163501497 355340319 979391755 992255847 52757378 306648719 24584628 849174039 158505224 703985832 603560622 940670230 949085310 978410307 145292056 828330501 37186055 77398899 40294935 217659902 213395626 865268142 775904641 805900813 138201799 598842285 745127819 770747157 276230714 863494453 538573692 592749323 931012079 999206794 385852814 972804234 557634284 575242894 506482100 853822085 502269269 720602036 445448718 736913749 788132125 968880840 599306940 881042463 380159069 973110512 516257000 641807226 581254099 588140434 541421190 677305879 456572803 743192328 549563027 659566235 276631398 528335218 304857203 751517539 136874174 788933092 307127190 851164619 53703999 158327551 815424732 892583829 196198193 749445440 27341120 532315994 213493356 922806732 348491057 713351565 692141203 760615842 328138144 408009909 18991873 862467697 623248962 986190358 883875861 968626480 723437903 782846985 83318157 116866084 802667543 922777787 459952067 857833006 694592268 728701396 926239090 945673246 831808395 983721594 317022705 838751684 90441939 326900919 99562344 998051409 40898144 442952239 623375727 755895083 85308349 164906821 79187875 777094344 832570852 946957920 829410852 898249016 405954481 702759542 994058841 996478127 18507494 304680883 597170065 881783798 993722235 995105411 568423099 975081368 78351778 321836710 278797329 558211782 262314478 494744666 46565168 558561630 113295181 251189565 266270619 703326684 403120714 956422549 557108101 723056672 28536732 850463314 745772426 884504163 283359454 890173607 757259479 788745997 677261217 802918773 615888487 762263455 289211417 911256711 289645967 672783980 420143642 507567436 209817820 802189377 201599932 752530893 144361655 333113262 586589515 724496158 637763761 723711486 471030699 982620468 891578521 990101634 919239759 930319243 849707582 878975374 380186194 696833795 924288142 990028938 659828108 965432080 710735590 740608340 127542458 282711051 758065418 970743012 149349901 278802460 197944968 368294244 748897395 987022905 316244142 599186020 904181145 991062455 505097953 682862587 687221969 926552381 817544472 876288131 250898936 430899020 726441103 884512286 242937733 871229426 408855031 846112635 607334437 626713151 784009517 881765710 228648700 252225834 81378143 610108910 279933812 788165553 235019493 730767720 374256945 874089484 377557778 625471449 341788264 517209451 388098804 425096800 206814741 432083519 453247749 999590364 389515930 797018631 694163698 863911584 896782385 908995450 134306833 868570433 855893583 985850015 111787493 556867297 358850864 788132435 917178734 977811461 544146030 671431615 879693774 993977439 747134721 775008569 72935776 988583024 652260474 739414700 920213449 991267737 856481265 951168794 435510569 856795801 201943672 212130138 146503443 646878052 974140482 993651203 420121352 753263996 789819647 865638194 118473422 198905797 152675922 651174968 666610195 997451348 727679989 874076853 426137740 579839682 166080544 829252916 161228849 786326353 928524776 948688854 930343833 992630083 228419082 737346210 856209970 934750538 990928099 996386050 22595011 718558666 585252302 811459534 33289274 156135409 593379098 607435557 488584893 778197115 25272106 780876670 937063042 946399815 376458695 977924082 162812453 185512685 10659791 534591492 364619472 762827559 643894356 830860153 849781188 908005658 25682846 224951580 596791790 661152926 683605714 858492456 913152680 992576081 122884469 705221992 703821093 842253216 167756922 323410243 625190577 825844269 581999245 598544058 635456530 879511815 394479057 485068725 196608857 538817075 775610405 881367098 98762630 891400996 381080039 432430046 573395628 733177762 310357935 317946034 827163700 880157140 697475485 786630660 984426198 990696730 390934166 838028058 673059894 701609784 986343476 991239208 21346901 127262796 706532220 992409612 196460981 316062870 227607670 589338939 970438299 977687146 626259668 992291513 52644724 984489700 912166581 948966402 903288374 912164266 150024198 936334768 592258680 651254536 565544140 910314912 162453931 489200939 536423445 649108350 703205655 731667753 135955301 254323154 316487441 895927377 920165009 959960473 274608390 948363320 284234654 610277401 957476084 978181294 700384857 897237193 676217408 980508108 560455604 746339523 547159294 820632429 969557034 977942387 278206598 668595636 15418164 361861566 508332840 649226429 532391503 681767933 682171809 964454113 196342376 549164493 35360715 683348823 901904097 980316012 173268719 421320200 137040083 389163728 718127039 947078743 562196252 608714535 131922028 741853145 646483239 906045060 369200164 580864275 822425375 872575552 133641950 661984987 392856543 707786965 377084192 830856526 819425949 976363847 958268881 971152493 494702884 661035251 745721439 834668554 842926096 943011319 66744794 268108130 812519118 852166328 776061064 843522567 10055307 694584150 818802208 865271349 411177971 864201997 449581957 449821338 71400611 341446377 680413157 895979094 333242129 552194078 657059110 833739378 897640011 941345694 813520213 824903123 989408583 994041038 452986400 789960026 670846047 938456248 60457248 721230736 466242825 501762531 986261679 995032593 48812666 503655066 152958243 987659919 641110528 963878717 808931347 838766057 600124834 747526149 631484570 923723839 573472511 589748682 117016655 259432788 592931804 641025423 906100850 969875944 274566046 436639128 974812582 988597690 54580995 583977658 191173250 818198400 773062036 960771441 739698306 997182431 45736021 345323409 561645779 766317097 366486697 957503088 667532393 761843682 434446750 759193975 799834235 951798276 165509551 845532015 172578097 402027631 926831565 969547939 643005683 682964338 363895148 934846033 349999829 888088643 452925630 525560371 876448728 950345776 22647614 699177593 333831514 953843536 274316240 686259847 904855021 967067083 340407482 354783615 210257547 676796303 375287924 831082934 89323305 665515479 384667090 603399009 829959990 892467485 305512777 867537968 183500007 403451575 895652451 975815149 564210440 854550661 979432696 992934262 148546924 291783142 353306738 387853382 602466371 965354399 465369101 903742314 895655685 980660551 746504420 951370781 360275859 638198902 730531223 897622551 748103659 760939609 290573479 423292779 524431697 570280714 720592322 777090867 200208192 501267800 582837749 740749460 857472642 909184543 992152093 998944460 736245161 957156383 78793551 803273604 379114925 960194961 919493676 964943495 856018884 867884660 411766336 524896426 752383816 838625465 922527814 977459803 332083164 670217711 46120100 281470017 669441095 756271473 997393024 999492099 28515725 252577554 539886224 726516566 292460551 548176433 620401843 913854844 895797763 952373950 815933610 906260136 359721277 823584833 737748399 836594208 889160803 917805673 638378358 815591906 265564246 990018346 257560022 599441905 493723036 988506666 542305116 586381107 923274757 929012279 657667138 958105682 791584310 851428224 566194300 860742241 282567851 888887662 974841060 977479750 402636098 518929575 5570928 922992345 739424690 964496194 305020284 713400780 733096021 834207024 448243424 810890682 240030266 604620928 397167315 913431385 23945181 74667613 672312535 702961760 146322457 736790528 31496706 420936377 567465449 842890047 29235854 147777494 576108896 649239979 145056507 693806057 805375635 967577511 876093444 909010365 338408721 967802289 925155599 977227546 125191015 362689243 858014645 995954064 144976741 175422331 558248168 674285094 509251588 662855171 288287990 842675323 802067200 872833172 56795246 220229580 100118828 517199566 929813134 955466766 829649473 887332513 48313919 861911570 565885618 903236138 568761697 860485687 718430107 845167083 333923763 476800506 873502431 933045254 676776914 882768597 866719940 873818806 643391482 904963323 678750309 788802821 586203294 848351626 316164990 783862182 121253793 881226377 847664727 849681020 620320641 707261811 405655875 909998333 38958520 478432277 838338353 882395394 158001812 569372204 167343736 632765470 614095270 635020478 433066825 839174318 383910181 962306121 781804583 928561796 172628171 970627184 976142356 987382857 757886651 915539012 579296897 633529945 251341521 402410641 262094266 497287709 809007847 926598971 783686322 872390198 579579284 828030562 692435490 868046574 284744558 561593228 695153209 987682400 318370719 591013080 313211338 767979988 170948777 865621352 96204983 411570812 808327929 883709269 354438759 723928428 948320199 975567447 783110161 859808676 126327867 494133837 544792217 906467547 545233081 959999012 185958126 935134870 298737512 695767220 265706133 318218336 70199432 387250788 837524373 958663192 341959429 766522557 139189729 885484727 507221258 648669998 667623658 803157078 978733131 985882328 863771321 954785883 860442304 892743308 631089355 992238996 54343810 681212361 930871242 934832094 365502416 910673318 937104441 943147493 54067322 886409320 540487043 771489603 947737664 986981303 565918790 619817539 998360249 998604367 81660172 503733731 896557701 954759349 134236564 822612952 70363078 583570356 52045199 927141951 942156376 985033721 496635290 614003880 537528133 922661627 669482582 909491530 860400227 926165938 714189194 968970628 872421169 983982890 979840734 987154518 469238777 473706780 168646399 912812108 848639633 996182865 689560095 816155875 734699661 853351224 546815295 606969578 851510961 957429994 670709111 963291235 463274166 824452293 119365107 756586562 62494415 85606050 290136009 501489438 613267074 946447234 534523085 837675951 647111020 950578844 463295265 741083959 218477971 370522823 470309521 727214095 222457290 983821899 423749193 540810159 320607205 783302365 173708901 195536070 680261779 704702125 167737095 528608233 217517302 833482426 933822440 936975162 650770787 992504049 505680845 580143226 253802903 422438552 658592828 785685466 974734169 992130124 872893866 906355034 943872426 991472037 867878465 870129608 949220928 997884293 956560632 963283073 339713235 852303552 304980655 586927341 458204883 879553695 41296434 229341155 915111429 915467581 50566616 72805744 410876279 686887206 88642285 796041616 972268920 992020710 615203843 884634667 568494601 953004615 451510625 977503290 650934751 788714510 497731906 624345720 885263889 978649811 623457979 734607143 782262889 814741143 839211963 891319519 392961052 943127779 297225777 680151178 383315273 798114524 776652274 780676878 180401611 555536970 329644955 820741534 168969385 462976693 762621997 826206089 952803057 954014447 255116254 648679581 801504621 878311064 997358435 998252334 775523465 993244214 359432047 604072158 612507535 759472003 676418402 754858140 537947460 648752050 564988507 597633682 983139955 987494655 759183472 787743165 124902915 531222668 412096559 949094564 851206364 916149759 183495079 759823907 497582822 585824978 929200720 998224650 304574786 746499870 922509527 941128607 112931843 525781313 316742528 779541704 234142815 918041743 824363383 900841959 389481428 573203851 365444280 397173287 316394498 668498837 54642169 839415047 580986357 817446098 549756142 860837389 630710712 918345843 129511906 737545637 528221154 661222633 681961663 787759248 946903704 976782137 441494691 747878933 107616594 946009026 940529563 981690932 726923010 796211575 764650706 890345750 487117778 816412795 625834314 639756357 959938753 966378944 991816715 993933735 708199058 814308782 514927048 876625490 846591534 859978984 145559097 487072124 353755570 954752936 697591106 852332690 782214083 896943605 715980233 794213353 416864193 804966919 517604640 705058396 631819678 881838039 323973639 839843891 925749801 931899491 594834317 736451598 884770192 977057103 542809855 975995270 267902192 536440132 801800677 961805510 331362270 558541028 525058078 783154543 288641816 586400998 216969303 384803849 228293767 248515689 474321470 667387395 502085955 791920214 781237412 838801239 291350600 917462654 916171291 954877474 177138978 437859227 908769749 921959745 720126560 792521020 141158320 691393563 673070506 963728037 597788945 867566618 784021816 965308197 577207784 700979045 941867370 944873963 581740985 960637623 376330272 950030525 622267220 891932144 115314711 182172281 478555419 517514857 783875646 833652433 163983646 268052087 647230034 712121559 248858549 640467924 347481927 574217933 846234889 861400846 723389937 762731719 931743299 937989362 987091154 992067478 631584600 982878854 386594050 536866913 538144589 825191639 810490475 871361172 4125099 605661648 851499216 882114687 127794770 357877244 931894603 964441141 884854211 959753361 599731524 746217998 219052051 254873087 805982192 889636977 876927685 982910312 125757155 951429647 619056544 775131088 864785678 882474657 836464541 880775469 561219913 902469003 373518974 419575219 923286325 952832425 683359508 788494829 776971889 804853834 710208191 959888658 158682152 220172125 791354517 910757066 737083856 919062682 514153272 772082475 747527129 846551536 163107950 955037404 684053192 920074591 958055443 989700111 739947336 807070182 355086263 605279711 983858998 992931512 343997482 659314311 941241658 993192212 606842736 993716192 13006830 522183504 961231685 993400628 222239696 323099948 777585970 953078546 916754947 981352509 338641169 455234428 635944547 669042487 536015908 650216819 880762098 958545598 27144947 908870129 640964975 977427355 441612778 517429848 501050564 616339761 78846207 525219900 607961059 702103981 347965047 783392726 50051443 600364973 154735818 902215932 801718537 831988518 96482987 651788723 290349595 950676851 287078504 304777842 929263043 957836802 158434186 989094498 117888981 625654925 720833726 941534156 736414097 947676830 187906475 511260769 262116941 600477363 867299127 975321055 414654434 964581094 249511025 565978287 238210977 503817917 292089315 306942233 261504560 670269768 76754090 726415627 653401900 881873482 236719385 454863118 338272529 474163584 628935769 841826161 404458683 446978652 562583593 697483919 864408808 933959906 113198264 205992518 194332734 544331184 140878537 441874479 346688496 837448133 190734007 485739873 748387264 794509351 507978282 744111832 633421052 999434658 619229701 952839133 955867490 990168112 405765281 533092945 4501297 763076703 927651615 996713078 427323361 843417129 454026412 745561661 933485584 934009184 760773821 924045058 825655255 918670087 717989483 784807983 179916660 558042562 306937662 862280188 304632186 670893140 948634029 978701536 26648175 423084122 654560904 820265856 395731737 677708841 10498534 597175055 264521367 337575665 360377396 639345838 672534431 915569786 663173980 958330857 876097596 895350593 3526072 745600298 727556440 752159952 995784681 997626146 757198976 873251243 621015692 862122792 361584110 426546527 684878821 837916982 362562932 466067462 909261074 921925954 624560479 795890412 502962166 902275449 220159740 494124281 306959378 349018827 59230401 767590077 504961865 789946332 137558876 443294686 288211131 571387068 873676111 956873614 807145575 997134303 771630577 824235051 399822136 556197977 299204873 548719897 445883524 803090951 648401848 678733156 390213638 852428818 888188093 960286898 212625251 849722633 524476421 588012173 607127080 678692018 634536950 896301903 566290613 939743606 207816978 682331145 914695018 947722865 510080009 893100145 982329245 983205544 745626645 876636361 509313611 580259221 358854030 805813567 563753993 858962456 567550195 723322514 963531141 972350144 411810153 684281112 305377142 729413365 548281040 952960244 103703802 115880597 364434989 879782074 631257846 787440551 946174357 977350928 480029392 760909893 308676148 402728735 423637903 564771883 138575808 296924050 65862504 630550755 562258432 634735677 671093529 714672440 323819672 873988014 989966105 991152650 552048888 850778946 318327538 744893099 507627764 912936804 979834607 988035225 874871431 894657791 47296502 96063589 325842356 920652769 47132024 813808118 521054721 815635409 337293138 674285984 512154320 534963697 140032836 510514746 859964230 976217557 7127663 100304132 432042945 627470151 97137746 628241445 237639939 788744046 461599796 928433330 597180288 618384010 839293385 858872434 178483249 363627089 60591458 487540556 140287149 603998916 994463427 998305483 574928375 947149944 658648786 674298555 499602000 880219052 798719360 841905455 367027716 748693994 505339363 645369075 806039310 829926992 449541681 629286089 378213583 850370390 808473465 877482401 942440427 957879673 896508210 955140353 748838609 998751513 251283816 976841375 34953046 56179756 278544243 532433835 764038663 954160967 741031218 771556998 719850189 983416278 401468404 837241587 963271096 984948413 371612049 417521883 718880293 751357374 740047057 759928685 334813228 425447953 980694003 992101495 8416914 414475650 56326393 649015820 459340430 650361682 841782485 887685695 787626802 968409876 22807127 396958409 464869582 639003430 659263796 661044683 861859442 939252738 878664642 908219369 914893174 995505970 467189529 762199061 479884204 980916187 741527559 817745840 428647791 485162068 712840096 856871152 695218796 902832332 265114002 917141610 797587469 904938678 876899337 986348461 356380839 853371214 968825836 988701915 680042335 714491862 803721563 974563755 714102949 772580314 390951237 594743712 42361793 657142718 167129413 352203377 391066104 507931066 96615023 674075457 49242474 717708419 83135768 179994107 150276887 320979312 289726272 817159519 677815930 745667701 390960105 855668246 319385583 583498288 263975771 470008509 441558576 545458053 495982521 749164606 848067498 913393341 865134753 935201929 474307640 566125709 806474624 849153575 779357443 979489023 911799042 984839030 292468262 851437662 145450375 369327601 917304905 994433003 174790381 221790822 32161278 268759439 884278790 900996967 401613286 843761592 667220005 914560209 45388684 547722923 743755855 774557012 360987836 471591534 230760979 659473128 640825551 868146532 934092996 943903834 580485226 754089782 20836569 376959521 995170812 996978556 749592291 936959628 647940696 961530215 755363358 988813705 835769350 881282127 656905168 776079740 706973282 804523094 230828979 429195871 773511409 800653356 44586444 199914231 731944415 912487051 517990807 682380733 251033830 425623833 687843793 701103021 311538208 750925499 729676778 892675802 218544518 451672271 29008586 737616297 984242426 994841973 227368998 763699661 670907744 809110861 79803075 772492709 260974891 972375033 659392691 790231028 148821426 267674560 959428952 989798727 479844561 633756539 617994390 777446493 246054365 282723903 360197034 578311161 290762081 712284293 96790136 422713345 147325933 530398871 19108188 420565216 674027735 881317803 170354552 528828076 242830213 806983651 89059023 590227165 370051359 711594167 597561009 894098389 723561688 872525718 108160091 548320240 893538170 906645642 557416356 593107878 63683149 339587543 735671899 907553591 445952830 841168536 142372982 351703447 372116632 791647111 309708371 452731270 3587016 787937161 544063661 667996353 813445528 977824984 286787359 953245987 759237645 892924180 438902592 542147406 884941601 931289697 320035309 474896610 51727217 878679702 657663625 846194305 293315200 579164686 328316268 425952066 353852149 771618199 247497709 404177786 678925255 795329142 866110748 907617877 443550211 960878421 120439936 296709941 683035566 845354711 444940413 884782201 848057214 852116496 773063806 801282135 287132344 771173760 278584264 936206583 210057280 210715318 293953242 753260934 585485701 594937216 791595967 840866564 763415823 853871932 630278733 905481953 214907503 791700287 173293345 682889897 394963432 971032898 925762661 956960241 338478567 466869355 973418681 988214701 312925925 680178716 874401272 904018016 756231684 805332990 348052332 553418974 862397487 941232208 559428268 867580685 510163808 573385975 662278207 709611912 754370665 957923966 470577376 839447311 59663053 61164672 204770262 589133733 898490589 967981914 189390280 339240275 470927403 487590738 63760550 439063945 374068001 747958713 236517403 827080345 663741777 918009412 119684243 388426746 639855652 914623297 836322570 838658003 49204050 861175091 818431973 949180592 678449666 858258051 684256194 957988878 613768374 748355000 665364838 665612350 65727810 915491891 538822808 796803185 420086243 771314345 985430971 994534467 824641185 869542792 621364558 802267299 9902264 744163437 241799378 609756054 702970113 909393947 708012787 978719442 219586134 944366161 414879743 700696281 147440330 603994484 751498138 983900685 713951065 811063961 81604284 977208330 966442215 985668320 312461823 355521790 702283858 815011844 739918866 999718474 493803846 988697104 905831880 935738982 820816731 919092217 304683503 783568556 462721191 694419472 230774636 357897291 579250349 949574137 657132099 872221897 844092843 957823479 149931318 205881246 104015122 874693549 873601344 884091953 544612045 910049793 799146332 984706481 547146121 581893265 761841902 849761894 409782596 813327749 14665553 897745698 977775637 991742104 355827439 725227302 829254968 912402427 867242428 923281924 250392882 940058512 258641821 487557343 630170180 907940199 691923933 728209375 876858114 918657555 846422945 971867483 779617160 874597642 502275777 904330849 821942836 850244678 677631121 863600894 815529132 965612595 479080026 649960016 176318646 972487430 265750063 488065412 777614086 935104783 374142653 389004769 742354051 823790007 561850818 931263658 855245743 977195894 323437975 838296256 893845716 972174381 280154356 625882527 352741931 981467022 132381289 595302046 146985633 660285816 876395131 879855744 256397414 749597796 462692678 466919927 439514857 520387182 399338354 974870842 431628866 443063142 795365051 801126120 888761699 988206892 604078512 610475447 719403507 870543812 488220756 752889120 253993344 658504892 673154203 720535012 144194125 661195235 783537453 787961899 753124351 829943156 367283085 455674088 574964056 951996147 90000828 200604203 11312307 521955698 556788002 776806522 549572909 635505065 262647793 491975210 140054382 672020278 737651066 761850984 183122846 968139655 965495402 980549949 429303877 671523300 713299347 804187966 853273333 896283413 873705310 875549370 472857641 923003736 580280152 667674369 365790631 495062336 439352393 713754492 435315106 886523921 374310044 453368559 626738476 723112840 834746641 900281054 606834130 748107373 683609630 737217364 956238907 967169232 409291972 826711171 44454779 227844629 409528591 616993765 105094583 649958026 925612781 955834987 910366376 939773208 892144248 995297168 565692641 588444726 479179544 544292384 931441104 965005540 979748606 983316241 108888534 852956567 310758549 628078266 675789616 748066188 146916560 149179416 395425080 897872203 176804671 470475459 539292195 651241510 967291149 968751123 268819966 927566676 508477504 701421874 880459726 997669106 472656268 528727130 802102555 848694585 941574554 948428220 616096844 648660159 329770173 690226383 393740952 476851257 466702895 913651484 425036375 823217546 187324469 937445806 997745142 999267546 962034114 979857504 229448243 787399487 501550273 720016310 234879267 296109815 735582220 895817653 288230884 632230129 870322163 929832464 16914059 911422049 377484356 546690062 597342381 621561452 450726516 501961817 901803971 996466909 24020641 614620710 488616413 885073317 991134041 991878841 624815896 757356020 498745111 620684915 133366378 987904033 472990643 617227726 702601762 874590775 217093535 729660783 156206738 649260490 86292737 558228898 979258229 995955697 233616332 429932655 667877389 715109714 535631807 730426538 182935147 384749348 86007219 485212310 627426547 710516085 190319551 964572365 21087868 123239779 228620138 785476672 275725070 304793427 116304959 352691722 58109005 345344118 771177071 866293387 183399374 502314170 136426434 283181661 692630500 939586707 836533192 998943804 541127469 772226172 437288981 614216502 262982126 765661252 199846173 802655382 478079953 898101296 999248667 999505407 705048622 734982295 969786988 986896342 76055790 316382190 812228701 945757516 620285542 635455239 231768018 476789663 179176444 421052639 618819652 998561524 169760114 699722734 679472451 710788535 159396997 319609818 474878075 849286078 259642110 896436830 244380308 928753773 838044307 971066408 456001716 596976068 448001951 697824690 191635222 830494347 579701771 938512029 187333137 803714087 392072669 801583304 834009210 950280953 446933140 465692804 175656815 606990922 329544889 926064874 87034443 269846508 681803537 940721902 869487808 887422850 928891548 951146410 121237027 364041145 510831827 765347985 124987227 966896268 891764266 933537146 510733325 992467562 180854183 560566994 367194538 609946610 576637302 656044203 589297083 699105978 490294279 722165677 497440482 695119160 103180510 587524051 818855443 946707477 36287974 688885926 222260737 789232260 719524660 921818931 729403474 744606847 228404864 641171418 669276756 919540377 271396890 468460270 810544602 990152021 91117710 701412075 969329006 986603834 991739501 996034575 949518668 985302037 687602910 923014419 960134991 977098738 793872871 929081393 221505148 703737703 134724606 583965075 653852972 755686031 722401693 866226340 161412703 517620887 306244038 630989970 476518615 973865699 230729270 655207841 137509169 558915799 365490234 712571503 638460093 947123322 494162876 865544367 713547664 938215783 882552276 900025485 584104177 918813955 286589668 304108089 493243582 772766935 965905331 996929224 897211675 979399663 545233441 962068525 832471190 856700173 835391411 874664571 167619503 277130668 42663303 288176382 121433771 894283535 15947239 934121104 594116373 819552017 740121904 768239530 969718222 998973654 849156526 924900070 841358882 927359121 552052588 773782489 626678948 690131994 55426543 64620151 529399856 740778946 601145906 897498483 981597935 985459914 77458525 84402464 609905438 617085939 606130347 726159588 521791125 925358070 212477874 292264437 970918374 991659860 536708431 793388016 311680129 884584799 111279342 167398419 447439513 898505464 277291501 390219893 96475077 289460134 490890761 623487740 242713095 699585292 606414861 610027440 38327483 942546230 700457141 783163720 926726659 988967679 856795830 916140103 249245202 872915749 932030990 952801354 447596396 594709317 245657041 854060356 557664963 677848862 85018134 150229067 436383227 687869897 983849271 998150993 191742867 866227546 380079822 961697777 569814696 782031770 799935723 827305363 326012309 455496911 513046305 763360152 928930091 967308096 482487994 642734710 588406867 623795979 119206476 813744384 166246025 186603514 265436078 369363057 122976528 988405374 347418569 472683520 568620079 664954753 934610660 999068918 73566344 122206040 293046809 376602168 149429029 800040312 267020965 780798435 399490732 498988066 589707047 694615117 168141556 845269080 279435875 950207200 756811580 927661475 563804545 995600406 892156124 970661128 669980617 686132496 357671821 399050538 263615178 487384748 592482344 963820420 423265432 801989995 870114264 983071869 293034191 744596738 353703357 663509191 782325289 802481214 360228924 421314549 748757183 856370746 17885918 620415546 578152710 597297137 145488581 400152640 171113564 992241207 128918220 693419865 830002600 909291651 976258656 981946616 477425430 735175325 415826998 456369496 834138117 902618104 964463141 984174268 958486678 994229507 816948746 999705305 776621326 950974089 403061400 409989232 795041866 805606526 8198090 60712488 213932999 979156872 304624587 693151432 638638849 823906080 453544185 767965002 440165006 997997892 276735333 718692272 355295227 403339343 372412220 645474456 189500298 887574255 25218166 902005860 512811102 885249941 672287926 674526751 117619880 796755596 444189140 746961297 795740181 961883720 841552780 978940561 475279217 876851319 10668102 379134562 808009877 825735280 505977076 592271671 608488644 663519289 414527516 920856626 973815323 997264572 329722240 540565512 762386399 835132581 181327383 232999005 468489575 608407346 513080766 626357223 869237905 994756161 675582509 884504926 418947796 438985625 246344219 599412968 193249162 755048828 478174037 825586585 991764416 999352767 565644509 795801152 702852603 890201755 44457853 223127520 866884223 909622475 667003880 812062923 534970415 855571031 369968028 498849740 946487824 974799852 696699933 983832707 105642294 353526721 925000816 970185133 434066209 724381513 755975590 762810583 444091298 709058822 896566633 919746480 804615453 852595975 898725413 971708867 495712909 831375724 268168940 845095924 514925118 677309957 241127173 692797526 496104497 614055084 682084533 703688220 115036712 997429553 520793277 772835411 187258951 302795738 694774090 952434745 467442153 992352350 20817432 245312091 530838844 544294358 539788931 715743988 444782548 950244814 596084839 728187280 99681521 366884514 974283934 979107371 161393973 708032115 8262795 76729930 378016682 534091671 651402212 925836338 791705064 992934558 911966796 959007420 823110116 855507759 411593465 449607078 525980641 694866453 464579437 828247561 763399301 917625503 947943994 997367024 844304751 908856544 226449915 750140985 906205988 980762995 723134151 829986182 389135703 844067561 364499596 624430201 336805229 848578954 494114848 887815576 828487363 931255969 146892397 843312719 256670211 659269353 82746706 856149743 163881748 900496371 498553973 776855004 609989759 697300680 883720447 970169667 876276321 884309937 121511497 592376501 256869867 889929681 249584124 472050055 721104522 862354514 557312250 887239345 364670881 506101934 821105918 957121906 543290032 696202960 981498691 989395970 435168939 935772647 276256774 425307654 719393616 974137921 930109485 990796500 786930080 937448558 332809482 477143411 597617984 729044316 201536055 338687133 182855849 919335715 172513074 868283779 292307181 662614285 982025755 998049185 205196807 577808252 818182767 818386617 379236881 467079828 735723019 818914465 292031600 475331948 545150783 721632839 744043804 898549368 594103647 900929391 171762069 752985582 595930099 960831480 941609970 972067347 719191429 910651773 960252185 974267107 882316637 970857882 243746237 924534581 406257740 990533966 956466396 981282129 957014036 959069209 799975205 888946443 14265008 363814335 417516431 843935424 841671886 953103984 597396289 966376170 112947915 414749482 536325925 644784652 339475557 631411094 717999889 907292602 652563579 935394195 25817303 208500655 49696742 895986515 178007709 599322348 32113477 63082078 145196970 316205565 593281694 633974077 972504045 998738508 379012416 607939575 610311224 783728224 37219607 87664074 226452147 557627405 590925193 905748392 237583786 897330881 386881320 414942405 728337756 941301007 235015077 661698735 17620072 680284179 901693382 961569559 128690053 614534371 434123656 871781053 610706773 955630592 793538756 879204605 821718805 973866837 883060550 988217653 970703055 979749795 72752220 819752232 362494294 818375090 900817852 960820103 788192140 822728922 147112053 259273122 605005260 962108719 383790588 805855461 672973963 944892544 680017242 954552591 546441165 686548987 677480564 852820802 2030836 989026297 997207643 997337917 174360703 239407400 205252656 671405490 149781101 687117876 871116027 922878902 146457324 272834946 733668250 780722738 360552057 459917511 480119514 903895409 333756143 411206185 369493134 543055327 82354594 842136416 559086658 603989197 882949520 916513382 444646111 464454665 442173964 900122865 128077778 226689942 647044774 786879660 845949355 985288780 793962352 912042524 756214292 890879641 652290547 812887832 972782413 981018567 318187156 892371674 176105149 243897401 368845187 495383073 272840291 631838102 374555689 411083452 302150688 392940373 111441160 777909627 450582771 779732597 523293260 566613718 500644826 845961591 810422016 833785703 387999379 610302621 818003340 872063195 308152782 644697378 223131543 655361060 248543685 919044152 199168697 978813044 125177189 705856723 369074954 871846136 592660790 995651862 647948327 804245948 54433706 368535263 618076246 970657305 905382258 986920751 447045145 944739755 182485690 507597874 558425154 826476334 741992270 894715718 396252981 804281566 94687756 791815753 50924623 821834976 76310191 917794640 799750570 975135301 191895030 772902140 488662424 720522422 770216050 869317072 216327803 267518301 431229393 843276199 291975472 519642661 871616311 872651710 643372000 889248860 100444700 772381021 547357188 558899505 51324444 445262666 139578268 876000972 492478948 682838181 741919279 841219949 396151092 543372278 360872283 520904918 799052535 892769346 509670605 886338025 729038413 898279654 433715131 473139492 555953348 971180118 666588697 842807852 443883985 735000353 917557550 953556290 527336507 897245833 91858682 774798524 200944656 626530726 821219858 954852368 343785984 964157213 42768486 81409452 637289756 794770687 7764673 725826354 30640172 603785427 66979446 474269086 397344264 615127754 54994830 108880582 495274850 639724247 20233935 885979718 335620242 754878650 405563099 459301429 826627354 987147436 814125592 973875056 825819899 940347696 152694549 774122576 638737532 827391967 458586880 902851812 50289432 400629664 493097135 883038472 74305783 944407651 631648213 998146996 333722840 471503591 427939664 943756014 385194701 721149389 714382124 999468590 31571738 944992053 725759058 727767400 968917728 983560471 537788704 759755655 136943413 950314604 912474792 945153330 423411202 811079436 767770572 966557258 628102465 835203717 749636762 999624718 393396798 735229279 328834028 460485419 26474179 517649759 88055180 267160420 253702846 836064392 262457404 699273221 866783712 915292889 78120077 501001418 471078589 509404756 282376145 529595899 89757609 668832377 487638581 670632809 771082267 893409245 907788259 980787921 367198246 811129774 891169047 949528927 911675699 968122764 566889482 772517261 467138419 786375520 560827283 813082423 551540057 932861580 176012364 749749962 597577475 794491015 40287290 552660738 774734359 932966802 949775327 999969651 826109063 900378537 621624610 655514015 565900909 840703967 722223445 997741375 818947376 933914949 230272123 813821757 94343933 115838144 646916046 953385468 229698064 869423532 106059216 616950395 177197585 267278126 621280799 742200489 400276340 754363944 293022789 625347157 710618000 909688907 553945740 735988060 902496462 938435683 365291132 831341644 432057234 607059074 442381920 491855404 865232786 872363274 847483918 886522376 68679632 921758965 878848628 984201224 303169628 350925315 85373388 584658017 670072298 729118627 389691331 815248322 539554082 907285374 24546480 386479707 44720401 453470733 519809969 941443499 20187597 356135492 663327468 802134343 116408406 276229758 292053971 363129234 725510185 782932712 741679895 766710322 651209124 717748201 411099241 916115496 348351247 534494015 488992960 553562770 251378650 501210051 148275832 786426257 28081966 960692792 380744984 795844328 481109468 940038074 504387896 799686983 78153917 829332570 917868611 984565727 172979005 839286851 610443051 938207900 296054078 906102211 498004183 669473907 330578065 360997557 373542708 627508545 626612816 704129398 589465347 651763447 791564724 928076750 126498675 727395801 446354664 504978115 502055140 718254785 31198548 505011687 860545043 987135970 167659445 414986531 238657969 884610031 239175351 559813706 815500305 824326744 596058930 884063518 144597062 469953854 154990289 192805323 542520445 647829388 983247670 988566662 178915601 701888366 166217389 394803123 473137546 800750552 279146999 910709664 3905184 500505174 651721974 737557879 944924255 976872046 563397533 790262417 498668153 856612309 721606177 852327201 484465035 950677178 201452552 300460200 613103128 812262266 17095619 111364414 60233948 80901721 558916528 921460378 879088923 991204256 261922256 626795137 300698283 678136150 352833430 685221106 416891992 802400852 48498240 403704333 264614202 345344939 519718175 903252691 630941638 694814988 779720760 795197866 571156023 931716317 835928317 952390173 149427166 619430972 302289166 805133235 506210811 678073773 46976911 656066381 642229315 840850106 598880917 675472604 12774342 230485693 216474899 320930801 779013971 965621098 169928993 561415797 861794647 970545743 319156778 901627958 50977875 119658302 454970518 965708201 949393519 960374493 922482945 944822169 69505573 956203239 44256453 673817781 438369898 868240234 671982126 683665661 995302339 999032551 922385030 999364180 941227492 971196938 679129734 910087207 394072607 777354929 438959477 599327282 432161257 435479559 845779208 920599499 864332734 975943985 583640241 796892518 617764092 788238827 79744167 227068445 782246541 976436904 671448999 736492125 661860002 747131529 752693552 776567430 442523624 973130482 836801755 898043535 685264641 899704973 131912337 792899292 849674213 988135328 86812310 354522894 267984033 285185798 438577048 807112098 781623735 921330761 167921703 332176983 223241472 257735842 806917135 976764998 693425849 945350384 7439795 226706394 695061040 794146863 899171404 960950851 997606984 999521381 227299611 894457821 177138149 638774493 997768850 999845203 641189804 999991993 718918896 914599041 828880187 949938019 733397548 788224103 416372562 882529253 919181354 967475073 791980263 820655016 52484603 419382377 110938563 791155546 581700581 774288638 723737029 960613635 586482883 950502296 158572776 219983130 321776441 696995218 896540465 974338886 808457048 845103009 461604686 968066856 227749554 237049806 402718597 890419116 575437876 773006082 188001043 355479932 955680731 986973267 906148498 985227227 906659300 983806910 385513178 745231138 363239333 562760017 968843732 980693346 395486895 853269985 776131523 983161672 810506248 913983237 573253840 896585372 500941458 656431066 329706299 793118436 481121079 759746168 228056723 300910348 668559406 888945177 705073274 781826219 57783574 510563370 208883306 509641397 552502151 866356905 308176208 595398271 572367635 991771408 989613792 996388096 600501849 710336272 427110583 776295646 688595616 893161506 586141456 646170646 217286714 383895658 795833697 840072446 898833686 911622619 134227770 475266318 874662688 929962688 984066179 987879419 308830524 675494181 415568130 914506350 734344262 978262402 279355138 394431379 225495207 346531150 84163037 944740231 695038601 977095329 132731117 444511614 811657989 875754735 928673116 971922534 977016625 993186502 218437373 444656761 66053406 504144397 903775325 970539949 610801188 959292255 917163 714204970 930817191 947557076 174155122 696069620 651669073 744689191 507546579 675646887 253092049 672250653 171467090 874077366 188938350 448313974 384539401 571795912 207303754 816924448 173613994 948905195 810514705 967312515 645980201 701487131 862745311 957202847 431300930 974314217 529273843 799005036 390744150 649164881 263100115 326486390 229703780 372234052 36051488 927925804 934418305 956509847 753827262 880244216 254875068 614027784 523067824 686942930 191370607 550242825 961196841 962003557 874509424 960663865 912976382 948424326 322048306 379077871 330578954 361795039 795871751 999978497 492017982 696035539 789159252 819576944 677788944 856916717 909314543 915169666 876835453 917555805 647450483 809691300 644002237 727171851 635155553 903159366 331887718 600013745 571185344 931706741 725585331 815038961 705415181 789657722 404021292 881792698 477747066 610218367 557194251 903902950 296527136 628090473 881786072 995343975 740842282 987624381 318508132 894133592 179453702 516821222 212404764 998197568 461596938 932561671 198420043 427835342 840936101 968633950 559529628 696737326 431672277 774110138 934864221 943858418 196086574 431924292 956178451 972916207 259924985 371688127 958969204 987248461 644691232 804076735 832066209 992762773 795391359 971283460 612821123 859266127 542057229 662226102 759090762 847605906 304166683 862201029 500382506 936700806 41586291 135464865 648766229 990160558 961662001 993600153 553443949 662711352 340009350 780596144 589996699 696588845 267433919 593938230 783523537 821708688 666332145 854198047 409727008 833321908 573411191 576556252 172188857 302938444 451953007 624841626 383358318 686746171 336940776 726162047 951585481 961240666 676378462 728266939 120587711 146631973 667720811 791203754 843296182 843665819 263674837 766240347 659655466 929737196 929881126 986973292 483453923 951267569 957051920 997033808 710644385 871586995 136458571 700479398 764327289 945486983 720741280 928518657 488313435 698841028 641604744 850805522 335486907 575871616 246128809 769929126 903151338 983330217 222826029 480231875 778237337 877006108 17148527 820556766 425741320 625148307 349989180 761633532 542527603 727509497 780753003 809190965 602458471 877083931 889807291 910414247 430320922 611757425 618203526 827000385 364064368 856783513 297300972 319843658 813036997 963797756 33983255 201679337 305290667 315635056 19067306 90274601 481633724 614923610 727792497 795382506 296831284 933197752 886866276 925871459 633674852 760145263 51111423 500276411 343257362 485264665 484146725 733859817 453310173 721827369 816367588 874188730 970854042 976811068 284494274 508072302 642719450 785230569 836538811 910455400 215745019 285929588 138398098 395096722 653467009 733519635 781454991 841573517 991854382 995165307 915021635 970246575 741253185 910336833 631305345 778997148 669922881 715290946 910422166 948057603 39172899 170230197 187978744 433659329 604377399 900544958 31341143 424179939 974772073 980615020 322595650 942670695 287674959 811994534 282247313 611127677 36757570 826896177 328565774 378375462 238504248 891996016 860861018 969197054 928552877 956681684 671701261 947410826 64010571 245469310 611994071 690419782 939189663 942662759 633590087 909669267 829200270 854181528 146989573 699665880 850297477 929049532 813301316 823403284 917666986 920025249 325452137 976460077 407034882 460836075 363626516 741939479 228975684 807843034 522915260 650572011 422302162 929777089 967176252 967743450 511550761 772460430 889582989 899352626 410911874 676364170 719742399 806047169 267715459 968773508 450331710 677145847 638570107 712266803 580038982 765048642 740043565 978146056 781070998 899670884 284891714 382563828 209147263 331209467 140249114 760048960 690544262 733555065 339290538 524565949 54933440 203076949 312615377 926792624 945687608 998009767 695879065 746406086 689234319 710177494 798157390 898387730 1931821 98891284 732738142 919686157 335934363 851449355 298742268 976985825 463831457 751283595 640441660 997807750 373558907 885245038 744166912 755950799 840794988 892399843 315006896 483741242 562626287 722185967 504375520 805355183 389439710 763281519 279693009 391971728 634569640 991089711 507284431 700492711 263659896 642492076 724008792 764204702 407278514 880029938 329733478 753563076 458570300 644823567 683791145 750372621 920782113 938886815 244618041 377739004 449145071 904385074 66879000 615288429 566397847 887632501 492035590 993344834 5031390 184678855 320323796 674242902 24553675 83693313 308430873 543233513 304143227 514026495 129289715 208878020 153855912 476497256 156982635 801889884 448713261 764135639 696860847 891393733 410914527 790581127 500900256 673598835 581789906 875809263 918231955 935405913 255810206 987886528 446881889 469676683 995495820 996070162 272881530 583720642 71779588 185235664 196501368 841976408 666945621 975193165 813899085 878150927 286338395 553382528 285219925 439694012 975977597 977711655 106639436 932834111 669041231 893736804 991249877 992387287 449221000 710915932 316283499 930858287 176344299 225087478 64530293 943244603 258873035 844435050 769397579 794745054 503694804 890276596 843771555 986353780 224528929 558691809 817671997 825121000 11150310 427331114 320261237 774917826 127360156 803832873 372443818 636724405 480720334 586350738 760767024 827765045 509670397 545302664 366459080 631925685 319842274 966645483 482443355 906818536 360521422 814013363 220645943 445415167 900912816 982455940 531961963 985536719 696763698 731673302 387814010 802669832 255985349 279837036 88521411 255156545 655322289 972827008 910540320 911263570 299529128 688000525 957801472 993811330 581204863 940237591 273910367 942778980 264624060 374279137 67898633 168784712 968109699 992610495 873546070 982055110 122167262 476725838 949693254 988250917 997053222 997576403 254246041 663138089 921079974 934644075 766465785 768088562 97304351 206841114 180693310 875325155 878483181 998257196 468803508 639413856 933929407 950751962 378428267 798909495 153213381 527832408 74717667 129180050 322855152 544595643 622548484 943182219 395354882 695214836 35060537 201135017 281926140 331744944 163401048 181733350 545384825 715206658 596751023 793253983 119946072 476036963 739296432 773410325 271076489 858517382 978351722 994100543 790860695 814927283 99579521 937350851 289008860 987382640 510481817 612964483 335669571 918685609 946737757 949888192 24683382 445089475 663856263 667923833 858250026 962491285 213787523 605319477 17168510 908156377 723275057 796711304 925055632 946655985 475966223 550106455 25544311 685543183 203291066 323317010 612044670 999030644 588896433 800324285 885013026 936977443 298596548 770530603 232973731 827262489 193790246 780121651 416539152 570125351 914974120 975037043 614000016 943575981 506628709 638983003 77454964 581679930 475565270 725641832 774175915 818367580 86554648 649173546 469430255 890001608 993746775 998135517 794067547 947790083 802674681 906854487 579806369 683930060 556678841 850352264 19137371 55577750 386677352 584215069 617849040 857056257 279597396 638516194 985814889 992232548 973059577 977736386 469457751 536596381 135248161 173824802 93031543 836815887 492419605 538015304 447528781 745898417 138138583 951597371 548032485 961975207 997634469 999855980 898053336 979452198 525235122 558057939 67918455 167809624 614287056 847984722 763797670 969867284 264522592 280747544 274445671 744007720 2718892 600744963 710645143 940140781 36823910 934002645 149661345 908467662 42621180 367159543 324103835 431388986 705985982 983317418 348041871 464009674 327958179 749845352 486868748 535750709 200281321 533445594 860760915 929271388 926456550 952958065 958589011 994364329 222598600 433107187 730666585 918044135 698009542 718294116 998634955 998941515 871539349 996062647 184298392 318818643 268759811 806996599 176830297 741911320 30712435 440673344 273978146 325159798 418114508 435325982 500700226 832750484 103169364 727621625 116115212 162794352 495955281 528097681 218545552 892109451 30798268 302675320 364649181 835395680 812584934 870835416 347716186 978523941 190998556 931755001 24471593 816248441 17876015 278777171 658857939 734420616 664640397 891903331 679997260 740222031 153563994 776600907 901624202 983658237 950731652 969456110 278450619 914124998 376314277 755799121 774429705 917903655 204996436 522826337 800175140 928617170 653959422 654310923 43710154 929884072 599333481 778213509 159707423 694407634 532025010 581521672 391768805 681994003 833417545 896567287 89210891 109165158 173489242 710280967 821574661 970602802 821312093 923255736 430614152 695401031 690014360 996702433 322432493 874252636 463057251 576891096 840059414 998997411 643742175 918200749 110042252 882584044 223946170 632505430 932874631 995433629 271604968 661405522 302587693 867016423 973783910 996858353 958663227 992949702 721939651 840762800 507038716 698462555 494521454 510861883 224901850 336103745 339694908 873346591 702264980 881669380 610981713 745003775 721175751 996185435 484272700 844248452 485853545 528424448 299802487 435760392 644921545 748823044 408207821 686713165 429269295 510576509 725157982 847074071 937525782 974482461 940489885 959762212 616145253 963846155 927501389 955486847 215812751 756666532 969269576 984208188 847093399 981053479 104014280 596839382 57465721 528747291 599046656 699296999 791211058 848879725 315700736 411654330 833115968 879552214 727446375 764386736 862816626 947319717 822402709 869333423 74401139 778594619 434437532 878869614 149296404 262401253 882296738 938388456 268716795 976592219 547323892 660776572 671938373 835881753 616675802 648999053 72557643 516975289 603087115 826632554 988507637 995765846 950134856 951104392 262197236 416287375 645383622 679104913 197222037 467435727 489585096 850250420 506375116 770619245 52077012 814901247 574949218 946757691 583233160 930494311 397540747 590721394 786431392 895074673 914215079 973762990 547770968 675829982 276053667 418827342 162916093 514697310 205371585 758120884 962572440 978286055 877185128 967938908 753920405 760255294 450610319 786896541 437679558 679237990 289100509 952436958 18971872 652931886 921123716 979005742 865693469 999143102 550656086 839758944 356302340 909519797 165679250 359851108 236354102 731364902 31461858 800334505 291326276 771259298 756891081 791631382 862416690 870249430 493924477 963684536 45311399 953588969 626207740 989623899 622438439 886744356 519159607 675895621 544484549 941181775 396247818 587364754 472505220 720483501 426646760 565001369 248249590 331243899 810046633 865539655 928093341 941316891 49998195 832385993 67570592 577027905 837983675 843025533 177094848 607261702 116460061 709159903 656428673 890084016 364219600 364890403 478322242 836909203 117754714 872168997 547765067 837842801 38628032 687093078 729900914 924708798 724847170 765230488 83407362 459768550 4471290 546243469 846374298 908212888 171476437 635781563 800077902 854968168 355611697 413353824 744690875 900192052 859671064 871414658 439297269 779530540 306114492 808613388 257741720 939006401 543595433 896220936 853797728 869704854 858149663 903412061 661131811 964649983 187055847 840271431 891445148 962112742 849888682 893599297 398889816 540952838 959888405 971037032 439062720 824054318 940080019 977623210 509775099 685842204 579426968 689909420 828194084 997942937 41354316 292591511 4545282 778525658 660834227 663763784 946483042 982260749 54888967 313000621 462467490 569169850 843183128 940612430 132646052 674381945 786527168 883297901 724766678 938686997 163616447 826119991 617030656 946053622 495080247 934440675 847546862 863392505 521987553 729138412 364361910 800665807 779593045 974979523 827417628 893063971 517260366 628555392 557533824 734846514 881904169 909696140 257865192 453987751 798990396 875566081 856449719 867482982 68620572 101147665 695920457 786340874 698703788 892453597 148432679 837548440 844819125 965165731 462780962 700294166 765830041 849703576 979255600 988564415 397549336 576115519 89138234 348389399 12395920 304158240 558069553 751138133 7248470 569171304 847409292 891343268 171130584 269953465 12886307 629413765 859589619 939078161 863703401 885075477 41934732 787275102 395022290 406865976 772369923 804970946 721638523 733924119 96315021 553734058 589461681 689325573 226579655 463729780 986189383 998067439 509382866 927551347 37557821 670745332 141075896 863010415 959198818 973064569 235733641 786835801 452121848 574925036 629022080 883948050 943930435 966536004 581148820 950458328 908502102 998362133 650665425 902406157 93638082 456014129 392048911 915631071 699393286 703069661 359731701 679626878 823048175 961876154 679336157 881251233 815655049 864162280 188341616 866108279 344280832 432587244 493980330 525172935 391616159 576332810 240024244 740712720 511511922 703776339 683836304 689068230 93307930 164328041 330499402 383103101 812032349 847609607 873102875 925333682 867924476 888783508 267168286 495902817 450449548 600801402 202813724 788160671 366670884 631056240 570821112 833503485 531908484 810510607 512356149 620395688 926657745 946409819 98704751 544896463 766495334 964210630 923073304 941164119 4239259 34462466 515833813 881688883 720072103 816715197 156770540 702300447 499960484 898091413 40678548 748909225 793559569 843620227 654793501 966360996 497342870 741235608 426687297 678124553 270465227 663972855 383403967 468858960 912248419 928454837 712253293 986438295 585308464 675954608 603455623 715023015 135977380 770953410 635220391 880470514 71234299 806226861 166507611 521020583 232266039 352727351 88806156 729235152 624198569 769608489 419830461 483644447 434828943 464545646 96794803 183689897 555584987 769623605 393293603 784300545 980410447 987218748 794291125 954662243 652679054 718448095 832927662 874779163 546831805 710333954 544263955 960947218 999264574 999591149 105463847 392848249 211900092 784431210 522395326 623851805 657680812 920513412 324825282 905029832 4502785 191331379 166577303 270461882 857406544 896763983 4209718 12667712 996466545 999251775 898530287 916474668 457584252 949823259 665271262 710360491 366058565 890564984 101019900 349856774 609316075 942996335 836755654 856807405 986879275 993793785 872844197 966993222 505581808 780806805 124358633 777361838 10860430 957407345 31327827 363113189 826574517 887173082 757997328 814412846 155715132 674530234 366709963 485606710 974845593 982387417 183993206 203068456 714863787 866073076 958003747 971076158 879235081 927406371 984143804 993332600 667638536 916502001 190339008 425487870 687710129 929125484 19161656 82094691 783878320 789356524 392679568 573076590 214596911 886144184 56490917 85251084 599734794 964992190 545351829 653893591 345951073 440339714 596160565 775201469 327590378 982335590 312947870 626491204 653669081 880138008 991277127 997231000 513432772 793412825 355510672 677442838 330478383 536534092 163245998 748053221 23936878 456442306 169329469 511615251 564893977 691505765 602894261 699847907 551326419 922315972 908782481 985593840 772557902 898501380 323906223 351538556 727379174 974827892 433600000 919434141 16154452 644965870 308729718 317696578 624880604 682005505 214702757 909688622 759227384 851974080 666007963 819785581 323651660 803017107 500459928 801044811 992474779 993915291 809407558 811746820 988149814 989390134 989539412 993333920 357967274 969697306 600355012 828467406 426146952 661868729 871745793 976557289 268965562 399370520 90372077 944221374 515967054 893581915 704611039 911718176 111783479 479778549 920277492 951985292 708413338 836638634 601794790 676637111 108932921 749409598 49016555 485193115 146647249 225978520 576739993 591847336 395568533 763683724 972279754 976035020 918936370 930962883 180029755 443314243 894899751 960450740 141050343 519097686 950222871 976382692 237313577 334270178 832331840 869560143 802849334 961366774 684781596 691339211 615693309 965976453 882377882 982677800 26329048 661213394 169374614 512841346 532485525 667142219 904487805 969121062 35127204 544601931 418828651 604086876 588491217 770356415 725828277 996566141 172347106 560345018 657383681 997425199 705944075 728433598 482469484 787431014 179266400 489954811 907259373 965947140 115461968 962398441 611455403 934987961 506806630 824221009 881280795 939688773 541946888 654006689 500263556 971747904 397552856 530568090 539131722 630823430 840962487 905249991 822450740 996715173 307508484 611497692 876943142 897546160 724469413 964475852 719713070 762053311 619039033 995252960 707536272 743720892 575184555 925411179 663619656 779204913 692115781 850492956 377140252 651075277 96766726 464666413 403795712 813841439 804314727 844859449 310403724 922255962 659117610 765689830 770807091 847744104 252778406 386475059 284144944 293417550 567699944 933498670 150108607 208124931 870526499 976200582 360591013 545825875 142846765 325994089 91868891 631291152 681960005 998473417 759626858 834754438 552575088 927173521 506846102 652925463 665506656 832164265 128351329 933866222 49321195 626914885 670615885 981136147 774834062 850608245 789502626 990740363 51443399 158630821 284375251 820158246 261582809 790712984 409062323 432675874 545732963 703356573 398975546 753807007 734792358 952348219 317792677 781439806 854386273 862378426 999736814 999870899 311406108 406621580 361631738 756692951 912814098 928875843 895694716 972149539 393625080 734446952 825402821 955655526 382562559 711038234 260440978 639529868 3997881 571643258 579023222 960062861 820771605 845615655 818477735 890899424 98578580 693902620 160590407 739127645 934722193 964516121 982457558 996438708 197931441 664207485 921568399 936502909 29568910 92224048 350877087 568320085 47078270 357317997 117364913 903972794 226377887 713198237 630283886 673507537 200850530 497910397 193761725 495026272 459109115 922062226 542733365 600029993 539780153 751940361 163187411 371904835 519507808 776227412 654199293 906994361 152037428 916009150 532780148 883244590 879363807 955418584 237430091 350750862 732579080 821891791 497799479 503958277 609858841 663422739 321634306 352194644 240696866 497640222 279090948 932574294 694219834 989120944 109944368 394876952 208668567 785498340 948191667 995410650 476621410 546126786 221226609 747502072 935491355 936001830 558624130 903657528 32313319 47339718 953524115 996571356 461295443 788675235 194302058 375705709 378095049 461070993 617351207 816814644 570802017 588665977 872982389 976969146 498399107 556138082 565471833 768795831 213455455 579223117 974377771 986013919 756399917 928618128 977661401 991756447 965141273 976959808 68575493 631282500 763764045 877152363 373076266 913974565 379244568 705889431 428641708 903733348 73490934 253580959 820289330 821809145 457790654 985729590 115713452 591485877 943946046 974016463 310442685 493365502 704464911 712674044 972729674 998997519 456267606 566464378 36056952 131886233 302135520 508709825 2387799 374500232 528468170 675654178 922856336 998052964 891486085 969201730 583924456 899021710 71512042 438819571 250568068 588804549 435756340 686449469 871072994 885953319 950896138 991630092 736929684 933716446 764851830 854349713 598286273 629611166 128333566 636168922 858707875 875815081 748671683 817197890 394737745 783725640 798851545 883510191 847568459 922201696 369283759 471633720 992497189 999130721 958048435 965371394 910823134 988692164 53308779 578219080 74974847 751849067 553400917 975451405 245814816 253590757 316756615 687979599 591529850 884657342 668553167 884558082 836193652 904483645 200919215 412731704 776928280 881287841 218711007 761864654 418306655 805422629 624614298 898636006 32969983 925832370 419077326 909494145 884200134 981998351 829355741 853466057 28872075 784482766 84766964 705051906 927654071 980120245 4266738 320192011 596235358 991729416 971025977 980747888 391248437 966965247 367550935 832964846 265050847 360950293 272298133 305035380 529642684 665978194 80297623 108384010 251899213 992317637 291915844 725792353 104842033 530141278 930696519 991063373 336891547 888782638 832507698 981351345 315135802 784189940 891189349 984061513 11869500 739503343 645190746 856067534 180053397 249190304 813300322 929234994 534338555 701137529 185842436 439061811 68553844 401125569 48187258 689890620 823607109 924730363 179880711 669878656 194183027 908092806 795138337 862065566 186618152 967715035 305740810 519121612 826612818 972578682 315935499 496283254 887557058 899943044 13858340 171951068 481531325 558452387 810305451 898414671 38042631 455639120 785312287 887847296 137740429 947899695 640625790 705759273 105138903 882184306 227809488 373394315 555843654 674284641 250492858 682163385 854287881 958302939 927528653 978663957 697074267 871284309 642718423 867968849 450956623 695570711 278419498 546317556 487470562 713700027 83156442 421504561 883386520 896807068 893419739 906384034 993350786 996400367 423351421 705688136 10659592 538425007 682468792 866398600 211136381 793805767 760802769 908198644 702676503 921423228 857192741 939913129 77423821 176393123 105154238 491308647 644029757 831449407 748891813 904435467 118486750 565720403 695765644 780118584 513606538 621016153 84621615 510406364 23586798 353942957 916803612 996264573 787077117 823866815 758374003 955626912 760471254 865909220 356006019 998305141 454382966 463654203 668553685 725761453 679299804 806524922 779727786 802230723 262434953 488644349 276378307 406572184 958888132 984728933 500215582 585213763 438889803 585084126 698765978 793604468 42204271 658067463 878960381 908177144 349501442 803749705 992593826 999380345 359326310 481407434 926274115 973535937 699156797 800396497 272093668 950131921 528854314 848364263 299836831 406129810 669843400 957451907 859788030 991336784 499425304 990184706 116354614 961643213 617186326 987411166 438932115 692049142 761465819 934397859 636076837 885856868 791564447 830276082 362738365 493323355 706072430 838525885 469452533 770236235 57780259 371520615 689904797 700628352 16120254 703080743 916631192 990822801 522033952 607357110 988094600 991523714 239642866 829446756 260471229 916794528 395525304 473765293 124997903 839678961 879536525 941710868 473403515 678731120 505450827 779229226 57199027 733326242 962735313 970890994 46520582 448252272 846003645 938972406 633619279 821373358 398268926 450206193 718824979 794577152 889119175 893560557 291489187 931451310 258273853 585178785 993986423 997523988 531726297 587031095 475049241 578611858 292552037 871115362 413631592 940207232 96454417 487127963 874494044 988021045 255745693 283639078 856134187 944111254 740425003 794145340 388598397 420100038 21158403 732964907 994778740 999695043 667854748 819967443 295366751 981688614 916984239 989844033 791228624 881892682 492843631 619364177 207440411 367412680 525349529 838710041 245209702 988650161 460200169 791963114 689923886 961350034 614855756 982784266 859540525 937319008 312212621 820918958 845700516 922872605 447117071 676731450 507695132 784756129 177533798 217193962 173928030 582269239 649967171 665643737 873524268 902091756 811425872 866507519 901928253 930363722 836380748 847051428 492783106 555861560 234619302 893266118 211055186 545866464 383746541 796401220 281607727 522367905 913704458 992810425 271576143 388024450 23444870 251653723 742001378 849142788 76248668 213540135 324774110 971177297 455768640 544301879 901727149 955617109 434564328 536132595 43015463 540254772 519103601 594757586 238659334 686329211 840455359 957308595 533824859 890521021 805402456 984457600 483529390 576684840 674598772 726194939 790160388 874877826 68958307 339666512 223181606 560001293 460125472 995832791 353373916 471838660 148692342 470620645 988743409 991517933 161051098 761045752 979752994 998358180 147411266 154645214 526908993 663072326 489477398 977120782 760810070 979434501 209502296 329886939 614889191 850229136 96185054 955674821 868154552 988392396 246780665 380987890 702715830 765769284 459428845 869742594 314956385 501718830 213970630 646898305 36011738 653513137 464500255 738714236 328935266 973263549 371982563 750988476 816938036 854454076 458888151 951007964 628099401 915544678 62204487 393874235 301208502 340888423 163009585 897227045 657458652 821807839 69647392 363445690 660041372 779357126 169023128 973500490 1386285 378759470 265676733 526567730 10352796 520500529 665293066 756990358 667044804 943978474 590842173 925454278 444516253 626754679 601445209 686454123 438819319 956143572 907096485 916416212 907461067 979419937 372028766 411389502 855742022 908381049 226406520 912011682 805798337 977195498 142442699 225843305 121881841 614694243 317081133 621082983 30577654 149546358 59045715 387527965 42574500 509617607 589762025 683256414 79379748 218538319 73568902 317571965 226293271 506614746 402925269 987031432 777677730 915803085 623327988 795175165 368425294 435280614 797693970 820941884 24539805 358558313 676582353 709987984 383499997 539692956 605267203 629710154 15707650 795281298 364877758 777658380 609491059 826963318 956835327 998710078 801506695 808600018 379321202 701299670 533170284 793876281 841109825 889434508 15050496 441364871 306338778 380361799 835935526 958459485 741860243 871007510 755296 851681912 50498625 240473806 987845455 995892288 800874125 988731505 31974340 629205948 866185426 947996655 231093750 825225766 225453858 776677056 833723545 847976292 115295438 811849044 386356932 804822937 405897794 914133088 302480436 918169600 619506715 714217765 837527502 929184853 610705440 819563931 525259032 746732032 2941497 960957272 988946521 997597541 101991208 354441558 726261934 768376097 440043329 895866649 982446262 995478314 701330770 762603890 463569648 897602923 825291472 872055942 991615629 994127528 46411515 198801609 958297153 973008935 947543790 967739359 549140854 748103958 613752592 794009103 419829373 511330611 480382985 727436118 736452871 946477366 27185626 742708827 708289781 733408995 699598413 744089509 628226627 973780260 448574791 997810703 965542859 974904313 76846930 346785676 338746231 529794330 782956080 892065425 878179411 901693710 58992629 256681827 180025606 878069107 879564295 881867805 185372946 716130450 966436294 980591319 225207832 845073562 550403670 719810428 741515014 785211908 462505970 620007211 353170552 627380448 184716644 992773313 311730668 803428451 590707004 870256505 497790547 663582286 839314610 948750141 921513255 969288028 679762988 969170631 340835890 544361501 143363217 608036708 325873136 536731910 238751415 404751141 634564758 644629957 795725966 963730847 162021507 847101905 11797138 409031257 928604085 970471337 380121772 436111826 226699400 634269939 86454423 816570523 567599469 763791333 525011388 807454675 976486928 984165469 163209143 589767191 437830382 462356678 295597588 336627010 528183274 868930456 964295130 996804813 394765279 732873762 185502074 488663452 448890097 486022194 114932913 901894406 643278408 988685351 847767749 865409141 55840444 523857097 290715133 483704135 865996710 870321804 645841103 935010164 77234443 941794892 342642817 395565955 213541843 307445535 775675151 902615823 731605055 820625251 28124786 991033974 514664963 813918202 729045727 978298765 219612566 809119899 750985154 843318958 587816277 685125437 232395024 306455778 773699807 802997788 42128746 814954770 858636034 942991651 984793839 985298281 400475484 653442847 52223523 322430058 287814705 962878777 600202838 850095322 750276877 767644494 281829299 313250109 326965871 672172266 687204690 762562014 251722908 309420459 462139237 592476730 183845963 668303003 536055856 904524012 818041327 904841138 680848643 978049251 437915636 618547395 467891180 496582049 821789506 962648530 546704607 893930060 901971214 917810204 75846965 396570289 385343809 942983820 12196558 764600578 726504477 951088915 417259334 896966159 691669911 916927972 138763702 973983241 629886653 988293174 280164611 647155886 166922051 708489714 615980887 867951390 734832616 958440142 555403518 739575667 412193398 428179925 475627070 589186729 8252627 628163489 127809132 534958561 432649306 731379779 929330398 953032260 959315815 965465268 70544773 541521124 500863770 878988039 456941312 917824910 646019948 974169257 667218830 805706859 193265336 520500612 805808919 834689945 145461297 480006577 400879517 888526786 106248315 823605877 169278000 909940230 608477661 667852327 152136737 527898498 307197600 423874989 693993209 841588829 849883789 947117353 130382474 719199029 97052924 398538235 453363354 896214624 39186611 344984799 574203399 931812020 50302198 795427413 69074624 334531146 226182011 966867965 115274345 784168261 561481794 693000760 432486010 949837971 926456244 963193276 607781968 810064627 406801170 504950782 816362873 986378582 344828726 633123628 41124545 682608400 465792476 545428279 679312447 782713095 758461201 965120437 51064487 157601974 812151696 929116991 772106748 813713676 989892312 996225620 215824927 908665509 924858474 942150436 227701765 590373284 598785281 909025420 217355752 859330604 811190642 927573851 354479152 539123247 604636066 662316802 306252295 727285629 716207338 880699009 322568309 950423696 797766242 964518121 37188038 577683660 852832424 922669019 519022784 634808449 245391240 631921970 436381 990288027 985585729 999311642 582723060 804708168 941945672 970319066 679165836 856651828 584197647 830727955 814538542 861371209 607193254 626019540 413266014 936923555 371335632 417601652 717355617 825692096 283780359 590178369 236100755 299801071 356118732 994982920 217106293 966784006 440249070 583707058 810570160 836582840 669402779 726808635 940967038 985738346 508835978 782899298 338098275 726520502 892962091 912565040 170918396 798268925 57474049 823031154 320623900 802096491 296520080 964499937 305069682 381532825 419824635 562104828 366584686 652204889 188138410 743402284 478406411 533900716 963041763 996400474 102040479 227790463 22860988 38339993 731265351 743606046 132926976 843485361 902781617 956446179 185591418 377782093 496668663 814427694 116702957 461773628 558506474 841612277 424444127 745599149 860844332 922065748 395096176 793083933 279086718 726373877 490090300 925065843 85104620 285905985 565211671 700151247 870677856 925238503 981167353 997524774 494219416 937540087 506774176 513375450 103724066 491345097 939604374 958127996 569985513 665740648 426463467 754534117 730191727 921733252 696408406 720578622 665975570 863005896 534107770 535543219 119441240 485645438 136729566 444810073 622780889 830755324 656315581 929791992 648410870 981149633 748889324 772002481 712034455 805110645 860996090 942561079 543928168 837155656 218612921 637719875 312870526 795715412 921599619 926204417 787265076 995287824 412509989 541799830 108547197 694999942 954155096 996856969 591074029 963293086 119814323 947210097 365695741 744717721 884705860 938374595 536684759 769781814 652143765 755914587 728450781 797851934 225750462 648162264 969514121 995927285 749417515 800319949 526591338 547846199 405374906 675354871 285390554 757252136 984301703 996503722 744224719 916385135 668922707 686531187 787774084 804567025 562198417 892575501 248858709 437048578 923628438 953299911 486679046 802032917 249388687 783850571 516467197 645239211 876089133 912309909 743184717 904663610 334682203 813374714 376980879 629232973 822134403 877564762 122634974 951993052 53747890 924149309 451800337 868454777 643351125 913656448 85394971 831404042 88186834 749853715 199241136 383056247 859604274 905286343 388300692 389827341 785205483 974099600 265398200 571835511 905345509 951749735 848496723 888187374 640067656 799602346 943314779 988565609 820757465 933708030 510787054 649956706 591345185 695305921 356792907 690595756 249133491 836588932 498334387 629582962 164210164 776328248 13815000 645226751 510677100 817070764 537349505 941246323 44460689 188857306 781092177 782604554 716090715 968288094 975086689 990222432 497451391 995457697 901417262 971867269 407422977 550980289 488641302 953247396 718531010 878600678 774111841 996512079 11925365 609687805 300441590 602374240 527080975 843831064 738910199 844164888 953994322 975757993 304517550 818318612 296486304 993540434 394036647 828377959 51503357 531518648 627149205 637383236 465371505 616179109 907412250 962776418 445100332 959684281 845564804 977495179 627318907 763035780 340485576 613301595 927722567 954952001 231119130 317552280 278885240 424770025 603328526 809680220 170438214 959762259 556320908 953036295 511883460 673895646 31637373 893592516 183291272 486293668 6466404 759838872 828473880 895405980 23621035 955209963 590356342 688271185 735921448 907852493 11071208 284377050 265371358 887380407 778401798 925255057 933828552 951178080 145897976 698368526 732020542 791926043 159056034 860488630 77080391 626038378 335558574 409090679 196647010 346545754 922313257 980827572 41977484 633147056 19354759 891199775 291142784 334389476 507060174 573124710 236905378 303519209 513694638 564984644 485834245 546771939 414645531 834433757 911225486 968026552 284999643 515384137 187584993 227635247 859094143 871507177 625246023 839537038 843474388 962540251 262370395 469338485 953252598 967170049 821045890 980462244 264103980 852044687 912169390 993756685 593865908 863238602 696245544 975766956 653911618 931229280 223464515 685966809 519250435 808166918 66578284 94195683 279703747 838710202 154146865 297599957 156322403 932516004 624590261 827531752 561529688 710041246 187157290 588348300 79296445 991709200 532363839 763577710 482767330 777755076 652478015 992943270 408942034 461754594 595211310 644864117 330715699 588524183 582435920 975369768 841622542 907332974 417441382 986930979 596279729 648153742 78315675 789795886 190795335 893080251 139711301 546507336 225548741 583516788 76922925 457075150 98448115 116082177 275169804 825647088 314556828 984251554 656727852 728632935 105538855 309603365 640308024 657723172 778150336 921192662 976692736 994524021 28200768 195583273 825329170 928810183 959571343 959793156 112581499 725384971 472579411 644168945 623910581 766608105 556550449 986933875 130223809 941385868 690284995 713229235 616040201 976369890 515462649 570336333 77170289 345420488 788091469 870082477 468204883 798468165 636085532 861701162 208868018 630581955 969245414 998782442 134791914 928979614 804182987 986585492 533500843 886833543 765962248 797268064 592619469 757737049 766746270 829884475 107036396 220668779 397586782 476150661 643715537 894365343 643645593 997513711 378705725 982697038 870574333 975018463 324548858 903276973 351508381 575691054 449052566 644027992 427748907 763634125 227809905 403188573 506211849 825217799 794288352 925703285 447891263 838748743 878060006 904209234 863043715 985615957 959172113 998487452 384815942 887331108 371873226 714053869 559888288 867860347 533338579 790237230 295108320 572785267 327981949 640978281 495519968 554640764 106227953 416223197 467772455 525219213 692274554 767904053 275055443 355842833 988748312 990623660 340420857 588786393 429989986 816537084 196999290 985405338 670707377 779900048 737924447 787677745 906815142 992159828 418154834 739067782 626400954 980503817 433107782 755067064 517354344 800420827 311325500 589256359 838382826 996436707 825647085 945813113 81345063 810372888 701804806 937280971 386543193 813347836 357053486 678972204 229108415 945713035 328189633 467147951 577021847 764197723 506059825 766438776 820258026 992201246 195584974 354042766 385001712 870565219 181204177 609690658 177996919 606067176 561333287 958751395 6111160 160854513 13608842 243967510 905725837 910244272 701275026 791045894 241906168 315274683 296774762 542740248 410159300 636077346 84236936 370074127 941073115 981826944 610232435 912884437 573522620 670404215 51495296 960485980 588071774 866717524 599481673 622527855 41542956 456560165 134177950 419117736 149240085 341271544 913750962 958109090 634900764 638010824 587586913 800067811 282252975 429867561 170601463 620719706 522104646 563718399 352100794 751261243 463303283 653049514 763214640 899416251 541496781 979807298 39368 451414374 289887722 576709402 69134976 361438829 373840006 898885884 743532269 814995018 408188999 421772464 780217126 975016603 386943135 778929366 895922765 975623622 153647188 502695870 621799045 660017478 326006992 514301715 829699790 912535585 665666043 703060068 944889000 989246908 485607491 732597497 655481945 749866287 440872194 950255569 152114795 392721183 208173893 249081890 582026947 903408051 320773179 620710578 39380753 605692440 388552763 779670457 639930606 967604394 118195233 951049467 577958564 972163316 978782802 983961072 91445624 412062547 239505343 495558731 554607382 793049422 685990445 771940371 890687955 958951795 803788217 984991687 532584077 544742579 855925377 902641190 353327366 990769654 190079479 788143289 670687948 896598979 709968687 868225512 520235617 749711227 489760358 818919728 553210208 884450990 905724911 965681422 241015309 500076464 810551193 952211230 538019582 894823082 836999835 890263105 529602780 926595030 175915830 669524890 335534337 934138305 610887084 853701591 21022172 413960170 269636036 611984233 51469937 582327196 15503540 119614022 664352789 742226561 588343684 668694018 474098564 984798965 7776394 421689344 9185862 133415917 880421532 999623257 461329303 509136614 904801363 963230876 368539531 909372223 169929361 631280911 718457236 895578930 900231355 934125521 731097971 979304109 153453497 935473122 212453059 307818241 688102149 981673486 843784275 850869948 899327985 928747353 109492748 416017963 595653718 965631021 888727232 996209686 710740012 740579324 715451046 890784648 33512706 567797138 624508069 702852074 21753278 535144482 233518707 573941234 963266249 981825019 891419846 994261818 554933552 879055400 653325966 959146086 514384692 763307006 844990548 940269902 788703532 969874314 978069901 988704595 403765928 896010127 4686505 854623329 153172261 406256400 475330312 845148778 616826645 801241992 524884143 636984078 741710539 745784083 635208047 858666652 541120016 709677745 206044385 481481265 394416629 441282035 205946667 343895017 103175483 985222593 718067613 750628321 124759956 940580075 645532904 677959076 690643076 734787242 289157136 389922533 682803239 813349745 814466067 829814060 114760913 618034921 839878840 892739878 27628244 420298557 233011677 265734199 105505786 116008455 905238026 935737729 775961119 957966420 328102040 699980147 51099829 717369231 763054215 831332962 39244012 334093996 23571915 671406015 832916171 939938362 446479046 574429364 854168435 902837972 135193281 473566075 240470734 924935927 685893230 974556704 993507884 997879251 957188616 996254425 589894040 891765762 93704160 547171568 195748957 417828763 173322579 980386102 521398934 628517521 238414694 240236506 847492400 878291148 187557075 535875770 301812410 537763310 834830589 874599108 56159936 579436963 712583867 967896481 195803659 949331546 744504594 773660053 210230094 399892389 602884384 625064827 241719421 813433627 633560475 882110459 128807163 758789670 152863376 695290130 480118861 533147895 472180283 739726377 190191777 503658637 15789085 538048395 560979168 603379882 914780814 971693194 733464074 831625831 445876739 743933835 454320119 974527050 595914224 674778812 846877029 908404187 27814084 928776307 286796006 618731419 65888889 685654322 282113807 300355270 351793843 505007354 481435273 891096294 687422450 919792126 295941281 462120179 639164278 763562742 857278229 910572222 224461959 860186804 225318077 678148833 393167783 501471054 782439661 988553332 825316935 964798864 97801375 959897975 86018405 150976402 290933247 719515428 118194887 707587478 425882737 491326380 922180158 951121706 402966059 979888631 929652229 948244038 252378798 633307692 99399692 255235707 446762845 815487758 299833494 513619435 808671726 893941243 605617968 702111938 517229159 781029248 582439046 999129796 110740948 235735724 769109148 859140033 468825022 742239918 558302146 558648667 587973364 778029820 409454672 847545042 238722725 265900188 413998307 916019832 615187661 661825331 594700623 739369575 489167179 956460902 751820168 806611713 400857515 472227973 727133745 734926276 297208962 782171919 370919146 525382446 727750321 803262550 136328881 570989797 467483865 549146667 651835149 963800562 978533795 982307397 206938063 827963984 595966292 824299375 991837161 993366857 679044247 956887094 136922901 245153900 323144458 461399354 861094635 901993524 184767662 859167259 47565671 577366601 225918785 980181809 748901843 989646131 307697190 504828090 355349125 472222599 387820408 876480607 404224626 511454815 76869294 281175001 61714938 686824669 890991772 921809766 689098015 909976330 345477940 447860231 375876253 504481025 698640715 795680138 278832986 799638529 820603428 937328492 331210096 850927995 247064424 783160251 731294992 774538956 657497543 931869582 836751266 935009444 450753483 488424813 179525609 220302326 642954438 987728587 286384336 954243004 496600431 868094074 518843580 645110592 570719749 629342859 577131029 808357638 590706036 827019889 414471723 772727796 32482084 434175888 575331554 796241172 682182950 844645313 954311152 990917861 380035183 988082620 76258752 170914485 973345303 993656082 19064918 489993703 644260563 647573034 327280453 740736377 205198885 480717596 223521383 458430268 28575772 121750251 957408774 976683487 39236421 573275270 114224416 201341280 183522025 247281643 622852786 649432685 745560365 841495218 925850916 936349630 324246615 749382141 499270072 504992946 674206408 792927076 421526691 990433511 86525073 543757968 314349106 321785638 823780156 905163600 555990716 590782892 136373024 534681081 372313154 768142765 458338715 962402680 447247429 656933445 672899969 898367389 425674507 952981358 565290195 706378580 680116282 770319327 724139954 744281168 700956894 798783067 604774690 781855048 19067405 354838686 633374902 723607024 76879611 872197637 861857639 880573025 636962617 806588909 170643699 341957422 991120032 994310922 613552684 929906767 773550005 954365098 206453491 508328482 695490323 754582040 887683197 895720779 115686742 594708598 230301312 481098124 924588641 941294909 507514357 728487061 781188394 975917360 653025496 789971893 782307418 915154518 920712437 928747715 321685174 805228894 192855627 488046334 82599601 282394773 452814445 804461693 594204505 670116392 444553261 720155801 721468338 760072104 98485141 956849603 642323949 793881537 159294789 202346816 985587045 999634709 271178673 840052523 725318985 788362831 418303340 661512268 12170826 563128796 351935841 855624471 43614617 113496417 107480461 214250126 400237829 963475618 425273668 962028812 816287014 901108481 130080531 451553843 858304919 950230571 301754474 624361041 315272947 589727438 280696093 479952131 397588091 766869437 790171468 918511578 160105741 785414385 88834821 756713690 187950244 786304934 473939825 779159503 536457650 762960955 105407714 278417845 280527442 593920747 66576933 567658192 1187807 259203396 514673327 874093711 854025061 856470702 436201357 672487351 296046529 301797359 489706464 870912641 936159362 947596923 882101084 938905109 663885956 905787863 543590114 659840384 752467535 930925743 261482771 851396553 418969781 806922367 515403412 720235446 918169051 931998836 720486932 832762883 253788522 333961519 266506481 769168592 883448668 937308758 820362960 843182400 699646620 976297449 547996236 889785700 875557123 903517381 56733501 986440629 321484758 509920520 805882255 968812444 527172911 719421966 801449146 882533992 915521953 971816603 910880450 966078681 464096301 784824841 287473843 318096898 751775081 942035794 15602283 158668127 749695462 848654290 620760096 624252744 854308306 939473322 863736081 888809177 420212544 945943520 380266682 403812860 820974029 973802525 348571128 380545509 544106079 636099929 426937879 813415425 332779092 468180806 109927028 149662644 344335846 804712763 438676187 440604469 421562029 885864887 302934330 534091763 665439850 692457989 141489131 670311681 903507253 907584689 283637248 866970712 118802305 808479190 564480325 610059537 232569626 713177394 593154016 594866907 124635696 210074286 382986137 984081647 624543434 839601092 503026909 834094686 285079627 520484776 813560613 926103445 656936024 754471090 631831721 866831248 431423706 913624066 855326400 939479437 322265466 890488073 851980579 889298980 139464983 337669506 789419570 960198497 938699391 964669375 316097068 682179304 256153295 288116728 188940449 221378416 951109998 965851036 625733959 956384387 805989974 935845177 497942924 570874838 352655554 383923946 73795267 851114411 31089107 821993535 338493332 587498215 177205339 921353629 390862558 491172137 186463839 922263256 326476003 459695267 554792933 715532622 914566981 954124108 16399311 891991648 422981552 438726687 32737009 516720956 3430017 128783936 582546111 688908248 82809990 990974855 654350864 836955215 487864900 933254608 921886596 952858717 974594198 994785689 845427998 926168245 676865739 854481323 656412252 931579400 112188228 458888480 452133908 816264604 852437115 920096951 3326087 250443434 985260410 997450813 223298543 742316682 339065048 967645225 4333954 605106184 267817492 487063040 805403857 817457119 679637274 790181287 968218104 981141689 530890655 953608410 335855912 981261338 103940008 207002396 210423223 996111410 206736117 790825657 626338418 683170902 392211394 963675528 710240886 948474416 820899395 844026744 972081007 992778145 610688807 945045805 508339593 583605919 133124756 644483088 528682430 559931537 152507903 912458173 789582378 803819153 928061650 994006444 116264529 843373802 180614049 664609126 664342335 785387143 852271073 907161786 713203338 831066299 150539842 443220673 320724631 797639944 355278852 941468144 808765096 914935549 905393 957017293 746841665 835913067 563964504 698857364 384888096 638584429 222355346 684676212 807682190 901208241 905132996 921831256 421136687 822328400 458907468 572115208 753565905 784310830 770835165 839275528 175260568 657582110 873869932 958679172 796413302 808436223 867300357 931808300 727941774 978581456 481816819 864515755 206942658 611247927 692253229 819694776 907575260 952203696 445171565 827838340 344418637 963302843 822590617 926295265 800772508 968399390 990127485 997567397 528860811 650475051 376685707 665192218 140705477 666612467 128662432 474652474 208092560 588972801 145488443 519871158 882502312 967460170 974260395 980469686 529270247 954898082 987381178 989670814 32609364 494179666 156320229 381289973 871412308 993813705 192918632 944588847 306231590 939358175 981317298 993979395 233772788 332844960 421508998 529534367 927800945 943353944 429896460 985625904 201587022 292351392 514000022 622368367 85124897 857842823 596363785 716017263 86053412 732219664 904263877 957835624 380825808 487325261 486901215 870254530 733957578 802647666 147721367 941605463 350114789 990970944 520054643 957426103 326197261 815238701 196860024 472307749 923239976 968406574 368437058 850639316 684713286 846578574 257697281 410009964 931420911 945056773 106864379 977750996 943349922 986593973 621115818 765323081 192521711 578630571 671861330 955106987 489701836 866580040 19526556 154263859 460586698 863474289 645251613 803959432 597442556 644903698 864638912 991171900 663770812 805264756 806656387 967422018 552036663 947195287 82694687 718886290 256462260 807521943 300833176 520498088 917722533 972890231 427864770 775768175 999615063 999903058 810939159 989385175 534729762 896475419 244321450 838373516 627411561 765026947 383992469 655652139 117252201 221176836 522328338 817071066 791355755 989059330 977593327 978158599 15599436 353228675 494822917 511481406 646195129 791936880 853760310 901830541 258021359 652184040 582986665 759261422 604685321 989465473 340172048 342726836 151117904 753959993 186430287 527617087 418721617 852429535 20803014 302748473 36635973 253312909 830507353 868161239 329434824 517189621 871340616 928081230 882496130 942118141 353693989 829684666 183876357 452279827 105604955 180368171 953351205 973483496 7968818 201306093 63155995 404757324 360157911 530787642 959167583 990777702 885638354 983057713 510578898 510672455 720865196 872469113 93244902 159260718 952405582 974302442 202095240 414017868 877250139 903896469 673144341 780616337 713579747 849125773 446777223 961688123 953809697 954357761 612381511 790048255 632085449 820117872 741562434 797822531 437051640 670663073 563507175 900018583 629159089 916095901 434289256 510431362 888762516 922633343 245835138 901148580 31103648 450668326 106589628 284997189 994253944 998245658 776305609 995714716 507011335 662712156 334087421 847325345 123698515 358280029 103975675 820255844 592052065 963629951 650300556 736034373 559143045 586231431 582327391 594998783 803967625 928575845 427102768 744724896 464147223 720987683 90707983 737727925 213869979 708419124 538557700 691542390 137536212 294844402 84877437 898827512 562896537 601056438 475486693 611993790 93597693 727586762 220600405 774218367 821159877 940510005 38864509 981075499 910973419 935153134 25703328 937355315 74801450 553845114 931110034 968412126 442686274 471346466 201189487 577728435 816106009 970447708 335845729 619472830 492714551 959376988 738054579 896219598 830836011 922095714 919752289 957280290 305358660 330820783 332598753 372611757 967007038 988560037 29873569 641499772 359741841 705659821 31805675 470061219 802621112 938031158 583627625 978585529 898894260 997995805 766208148 982381173 342769602 667450464 407726898 974703433 301507097 345788965 828755903 844198002 56541749 716865869 30828274 524859334 436870970 513181089 948763909 993704415 670051039 765293652 15475501 230546962 745448775 806090294 185111188 842559931 862941828 864970453 759248236 942317193 292449540 541300330 781044838 980065118 869884478 903067081 70669466 365901556 736707350 974065221 403567870 867377488 767336635 887098414 595357347 715385381 382578922 923640472 951309476 959538752 628385810 843496240 285851216 784541658 920569087 982755231 465272879 570621080 42617795 573090921 675668153 734062550 253513347 643630541 12994847 689299301 687498882 982080158 575306856 959453074 927257450 969159586 625934922 919966828 863018427 892049203 312597089 351515373 32496582 519739693 614325243 782756280 107550715 513680248 69527516 823807937 985428245 987769942 711613808 880575375 782983183 839866002 810990043 997213698 256858276 763600786 313244021 737246049 278994516 307722409 848444865 965308488 144304956 978057556 507255943 766336110 872758268 899214376 506422301 703381867 311936922 582215410 218364817 310486010 319416116 446390354 382312967 676212452 979098577 984876004 725638544 891681714 754454520 792921643 81450665 688602102 635284151 779008133 942718168 973248790 687096495 893141431 499998843 878973170 489092609 976676131 444405843 680343474 613620852 634407941 639642099 699741892 658569184 996272730 346743940 802749758 193801985 517734087 263490703 842210476 442450926 950348572 115506613 785226168 585735652 715495308 550724010 859712661 154557050 384417550 799241754 983820336 841721839 945370541 726609550 998427274 522736305 707147789 634645381 859368417 767654537 907824254 562073000 893819231 950911077 994620086 843066415 961171206 688187191 828666784 979566480 996990426 156027089 435452217 688524989 759518501 648479427 691762325 291872359 948387681 559613460 698895207 18678199 361151901 871509663 937882300 711870111 751126128 251304247 507609522 288671898 353702223 146345605 795370986 341573829 348354076 747269154 977140133 404597306 975124086 17392513 105655779 94367723 468316365 994445198 999537230 100475536 366716680 824912665 960359908 260921170 937311148 596566717 827965980 348780535 533655312 277905552 896489122 469641541 950532063 839034468 994818315 94812401 619725164 237703289 668625188 385101418 544947149 136992521 839361608 717924411 986000757 335335820 497209331 727799053 995337256 843365880 919291726 906286220 945814150 340586422 615517670 493113962 638005614 832344358 980300970 540226310 646850494 228038077 795997855 996104989 996189547 963531537 992723972 646169847 975860014 633772073 665039543 266914675 978654598 377300763 695580384 597583801 711792752 527923020 878920883 369935806 718573848 863638536 878879875 776818925 821744420 635590014 702411165 999699346 999887035 66622233 341154496 978715599 997106982 861152380 943679828 868193481 975182649 92314960 914918358 343337316 699822028 385874410 585035264 719532941 878729687 486708686 962143140 720473752 920620055 572757266 897243439 869524583 901796089 217742450 386725331 715533214 756169256 527533547 591554021 67785495 688956277 895977260 903097992 599409841 835027195 181446546 724650557 619593159 835512085 922608930 936883977 739279956 830930631 523512402 839676418 51565111 224526193 629217948 888570462 699897568 841844160 10841300 175739732 180785590 846207511 459722798 728033151 77181677 82329846 56757410 72977123 608922317 882398875 896026079 910926414 450777889 852835992 977366603 980953923 461031132 582121570 566173338 765466146 331198427 858830382 689188050 707208408 647459792 748114146 298816837 422211462 251897692 982478960 628429131 883773130 999580241 999864971 407584634 695754656 212135387 940323346 153546874 373882654 275563429 607091795 647276810 916340835 101227617 171354803 944240297 978936155 268607400 991165217 123567841 470021911 688760029 793724473 130449252 665992475 425341830 646040649 547482141 731988910 885614709 901002914 738320785 921679142 857510550 943462449 326383754 974564594 552236818 806379832 713180275 833138691 55761802 168890327 945111603 952775270 792202139 944048937 719165468 750338324 53149516 450494272 312428756 619265216 214348391 732639936 9882760 874291859 133707329 900578581 546562112 988355852 748240222 971520812 606256016 647268308 921803710 979043362 337462863 441582762 363818590 573504669 321256629 942096791 142203752 157730544 698373305 739660743 85217322 289513701 543501536 866549073 639896914 703959975 731262536 732506507 384159967 811451302 168664354 668020717 757468404 930140965 887306610 898694387 418626653 885627541 943779523 949104648 617841568 736703113 259251626 608457978 906463307 909678571 194487716 529164489 813289298 982826144 354832480 819580592 165650281 670143607 601677203 772015445 587306212 796349337 76978787 967247071 233761034 666484237 865521730 918712737 562131643 969279926 644104274 961522345 913722523 946210567 454378418 936812330 699279796 884711709 177262516 824727265 356781659 828685323 39167501 408044305 277394949 328411940 149532576 618450078 929842748 940449612 898176223 959830506 310248378 428592675 91284284 576353899 903255214 914413812 621447673 648929709 711997059 792150845 206350316 393575902 201771677 861837565 246365004 501003599 638024480 957206107 747042061 969521726 528660915 569504254 195568827 222976012 71961484 85990059 433806129 880732088 933842999 969641632 150818822 463176549 103585874 189498887 387182090 820741276 277029965 382288357 450421959 697338624 61733840 284858196 853760943 967093722 831552361 994947089 30022686 130071223 927398470 983554722 241679837 765651835 165285032 506830234 83263117 619113596 29716260 820584318 316033178 385575514 764218199 865757113 791436632 894443450 401100181 578344235 167404723 825229352 766731505 788315467 412939201 423702603 724540217 936663475 243459795 868389880 849029753 973794904 856600522 880056772 226003227 738271176 143378921 231842193 475839521 844411827 698042985 761720926 389631787 466998351 780218646 871219715 755862700 787277272 391962783 982372174 210929114 551650301 693482537 854060085 362889552 799919516 144723318 284569802 403077368 934065171 274060330 997655872 768515057 937879653 490416733 852729971 488649478 836174053 405981322 722715552 334494525 964282871 610334365 867140383 234566212 272191291 191726259 623233304 870597959 872432430 864099622 995232153 542622140 966609224 812382566 815460542 3913945 118611685 518154115 688087043 60451698 571351010 854253107 923991668 562829708 777337974 330424883 861655769 551290386 815482456 719998119 922127058 423511289 478720082 213310589 876768490 650919914 817321069 449516522 528092575 163161280 645758886 372344088 458320640 87914081 618748430 392827357 513898589 661370765 846513159 445479054 725110898 800129772 834359892 134211451 379233960 702999949 900563515 974044433 998430656 816666435 858583429 594744345 704445525 685008671 747778666 18535076 928591557 629586089 804240891 396742570 843446523 127228054 517650086 858152999 949450694 855086328 877329099 514107231 901044299 158992253 839858593 410159286 921074805 847095229 916267656 248309655 462661855 749043451 858232586 57013922 289104274 456580688 858262655 473263612 823144014 944343656 950339719 400099144 831658123 648462558 679231689 280283842 370034502 262950415 358092222 670817742 718871690 788015991 845108450 114292625 581807904 573678044 978324653 29955331 461699912 916657665 935580241 101416553 765333646 343694953 994633447 871966300 961377630 694058007 804847910 333116959 841544753 599045588 936294737 671464487 950493327 82124615 816863456 718599848 754752374 990612396 995167621 189263409 684369155 31676482 891702054 157191951 811581183 643895022 645722130 436391109 959232721 127444820 336329462 441759923 663935714 831586459 914744545 577618773 833251080 264875700 963346255 762606308 824799782 482130626 570936737 328113163 591056098 350980582 771742634 703517280 811154340 624546912 857999645 216852101 693865066 425772994 903977167 689135999 966061354 207443587 239043809 224788379 537476914 351785285 561328397 168749841 788523582 474451456 889275998 471197051 820481981 35803482 176435773 290359074 370698918 708606765 745929962 858637811 878481925 793249515 926369822 43473309 971681540 878239481 920536869 316237616 624664673 446807053 886406012 411111013 865904176 79455304 412428835 604550238 682789378 284385261 492450887 631106052 747364050 653674968 781532731 5249952 495085235 181049512 786042583 533233190 794440373 210524819 786476094 630294196 702667445 642039478 776749201 908414988 931729896 581830216 668853492 419732246 745256229 189962322 909284858 582997524 928324061 802533800 834418544 978889543 987082659 536532835 593000801 133960889 877465742 736217434 841739977 179117971 417070236 741524695 967190891 562941666 674943140 527182687 970178994 589635533 701679909 409672918 688135970 422062480 887318490 541027202 566008544 437112305 784448489 951348859 954017669 537646957 693621774 80819608 232272788 902351811 970259755 351088358 978087008 994417292 997757013 965850882 969866116 216201458 827372358 849641838 953964621 435773545 468145108 366449848 877764093 526224319 557101327 276578525 613765080 975590372 997625721 614377450 764798006 194429818 646329345 2374526 957335789 960499437 993253282 889883681 985771157 523933508 866008257 247393940 843600320 723910616 726394379 761708060 784681887 183163801 536062021 519434704 823009600 939229943 954040194 287588074 606237808 522202025 881438944 513726231 869948427 724650993 858972202 979286412 979648154 88288359 808866704 613437395 946155881 447495335 904704432 895687888 961855563 79910602 968906774 575043807 924178287 827113059 833321936 158228008 817561618 102771064 252064681 483330582 493936339 836215835 942652913 305370566 794836437 561653901 760999558 18112747 588883512 264602906 540646330 81753852 876065421 636129674 825474802 516873981 774663592 489258708 755809329 458390826 785223657 723010565 748849133 99631078 279911276 416669568 805630821 400501035 912518959 633523919 985747677 780143325 797127949 230217965 965360426 587425575 952307904 483290550 669352535 914061993 926521308 316469031 706986234 619344231 916516477 151562739 783801156 910912980 916503074 47785859 674132750 264747706 888609913 829258850 872471462 607352174 889585522 487519423 979956591 561666479 569066061 401333876 595129510 397679788 741523402 561383209 672245998 605384721 613132307 219394657 646857534 420664602 435466741 421717006 639829454 994687455 996199601 856490667 958126888 206294773 887147745 95984724 877830796 810480161 950448050 952839957 976467261 556034851 985440675 873048074 981954150 501603580 606189848 813248331 979221344 101851437 579931293 999286278 999349696 386368096 549617598 809807163 982305759 940547465 994125819 819348744 971329029 509948198 941840926 539684830 611769388 996818223 998950565 742867359 977106205 430033712 631634181 618910076 785942025 66452178 676625980 620644283 876332858 102420329 437533086 628915078 881465198 164328495 199397030 229939522 829757314 301058343 587319027 342533717 692574924 347213683 354757706 35884225 314790459 109717577 187800278 740803265 999636123 596581971 780125297 493990935 722904318 845307673 959935651 880229302 982022584 615589416 894059084 105142612 725162820 938870607 953415068 181280880 666458892 647012655 972453993 643349125 720470511 463322417 723511168 269673973 924892749 20719866 468346784 976773331 993892335 570268088 578211299 724384035 918026411 146579588 595327089 535240498 986438807 671883024 990537876 174957132 246748295 489967360 788074987 660408216 860971113 589296954 865657910 471826323 788020154 392152772 602105697 10233409 46196605 351970581 579058076 102742850 226383788 996381164 999058703 853972215 925138124 628371924 971834133 871341315 952411014 816179683 945527927 41660720 460679752 388271700 684054451 414172084 435627609 223218237 435856766 133429537 671016227 658156831 977947877 227171396 851772500 65728634 607066252 569271003 671251876 143254976 223216706 793655224 839554717 214642152 296953322 45527289 849121115 764582692 965533399 84641669 276440608 106810471 388374240 769443362 869584080 726578432 902172269 954981656 982340768 795850633 945244382 672519556 962064598 379263619 675825505 893666839 955990727 656205098 812839327 491128382 668504964 613437202 710134267 522626534 778072527 620083955 638206347 21953301 755420593 996714257 998404210 428276999 960039706 424035996 560605376 977227035 985910289 933046547 998128429 374003425 801440232 726647747 734600685 751051844 845100477 611797816 622838487 924920701 927340570 957864689 965584415 828449876 864407415 594763214 842675985 255678495 902363417 381385713 555836109 871893806 955248119 934295571 935400219 722040234 783818740 504948269 524412800 72894579 996022261 455546177 603490074 103786394 120372803 236524794 967326768 496050352 546092524 898177129 906501770 906248599 993080830 169423529 240178565 907170224 938598216 823007032 886277990 870304858 910103307 828398874 859326560 607691226 903675393 961048072 967067210 350215824 362080611 707744801 724704042 298315067 776186937 601850069 680919293 376063148 623343412 627352779 932441644 337052576 675172379 411574008 421726356 802681312 876639656 400322195 430715213 148313733 214616248 196415559 409583469 247436271 792579908 373120971 878078067 144816384 364107574 342133811 465458278 196238275 242967864 623522987 700902145 226666894 985437390 815722403 905727364 72348849 90622609 563781645 618814920 588035459 749117094 652016142 766645477 652581269 909737303 248730704 918041143 172091016 997061410 262584984 836540105 600769213 754663716 553044973 846069429 6517491 816702861 153055304 620387453 706981913 779099212 468420417 597630240 687343096 762733283 413831827 914923127 444388795 807012863 382635032 392498844 953622170 983566114 516511387 741322858 149615917 771735362 457936449 872846351 873721256 938376409 291692644 632224112 308201971 714733483 250652682 597437299 933063057 945426118 561845195 657350020 845234541 951378101 304705145 789932984 202494041 489913960 832976414 873094668 326947973 379885927 439764484 443432246 869004307 875966589 677172957 816136424 414863561 560603536 503569807 567577233 573800622 838650209 823733623 830254631 125032162 414955949 666704700 826544511 722830362 824195507 497732907 964074574 249584299 973411147 689748468 715301101 492562396 632885461 884777558 929436325 870317885 920995433 41875768 892903140 599414512 695100677 799752925 948137830 907733359 927669866 169349546 974155298 43376047 175049923 857712072 971072300 291531414 975779524 958790718 995527725 987643460 990262335 681090329 702088152 878929389 906169987 105410218 709538857 681650570 852175622 888471974 942876508 291069755 983436790 572203474 614683128 439250001 507505267 203289840 254534123 538099541 897661635 91681211 476177176 315938631 494640452 605091830 743491625 248232977 506456607 566642352 649883633 855422624 924280267 664337676 710231254 977708533 984583284 10683353 428047701 314694504 526843798 463104827 989504027 183071331 762521093 813880259 974405415 512933468 518710751 176632411 334066677 989197487 989226535 516914819 565493105 746393589 834872702 138765441 890862655 60678581 195155798 627071883 800609652 617236549 830549926 636199049 845726619 217349997 715182330 403452110 835939678 240554480 708957532 379532960 454318432 819877454 967145684 826246619 841255883 796452255 834857408 291493727 441619195 460076583 906726235 619391542 848332180 101775846 935156979 991630026 992996949 678203735 924419016 675919280 803370396 518633579 539919604 952661668 992762616 189353394 910835169 765343502 882915242 590740001 688113292 387566965 937322530 317003212 999328586 600327770 815477572 879534627 930297765 404286370 961707910 605963127 924313676 610829782 779489747 300387655 311224639 590303337 845400371 195846830 637161930 685966968 971466250 15747738 753677422 113909304 733830806 747146615 968067976 235100847 501826409 489278585 674627523 882162235 961910906 747759181 937792235 978069571 992481243 892979316 990090607 840899216 968077450 138885275 642557238 262500447 590236386 346026561 554263729 530021304 987258025 889252630 890943086 383034056 967352595 449761827 976698738 749287851 883181509 659571700 697552535 950822222 981005048 835660619 895352599 325568199 418565371 958602081 968575756 910857674 921161246 629323466 837094480 974412390 976674511 128881672 423928006 522177496 757843019 883799041 953398243 501965478 679690894 490883287 979816118 617129652 746471966 404897951 616844362 954777857 970755064 938933599 949906493 501774452 560709756 893276611 966538783 803532125 942844191 784708146 987542168 806379560 841501292 788534196 865163327 112338342 902965430 485570354 678275826 462833453 491357592 679404791 790426391 86099723 362431315 982703888 986982839 548492898 917764333 235063896 983686308 326352858 730305667 244384291 601238876 526494448 666365746 562373180 779872309 227823564 588426630 850224498 884315088 824407171 984234153 669572803 853931036 23694876 623003730 473245271 726908327 921659770 963099732 696285389 984433743 356748355 648278114 164164934 332818023 875263459 957562477 92400673 458013334 562136301 835506690 505859657 937503470 222524672 983927151 513804665 977450586 681450886 900138509 86925601 246720856 540215451 805603125 581102187 765476350 610534811 728377952 115138743 553566043 790146312 812607806 976812537 981107352 11978047 793616091 883940670 981483395 246270230 834561647 896227162 961457411 586985382 849148508 957487971 975628148 969011485 972427892 604009294 784640873 799849500 981970325 978066283 983807977 335707159 894810840 730971993 837625246 389919733 770934170 507897777 807001861 180378490 583358034 271978999 947937300 338685434 895146469 722864878 800432076 288952839 549664197 923974500 932833686 996747286 997826248 408808374 846652978 60920458 679615257 940241926 964398722 652005831 893532622 506386184 809990258 185273013 407182540 92551731 549592469 250065868 793015924 99596206 652068580 500486223 597172448 140025882 488572709 409451990 431076703 582322935 596050187 652196738 868859507 924957951 952039434 351658320 460559799 626778445 928470269 838845297 841472858 712026625 798548035 43871969 246328456 656092060 814169632 450599917 520971168 393785758 664409592 268197894 327242746 407679689 699480680 327035067 411014452 675176204 772416901 655076946 784215209 428075561 679710356 740793582 799584055 289119344 830595175 440985454 527220665 728598303 983597648 198108153 942168952 366534574 383206185 793435563 890971102 875499327 936127638 954469366 959930889 257148968 765767411 173337706 231048467 552159685 745053025 458945501 607803289 686445875 708139614 438688268 959433532 651776104 938294583 901205568 959487877 668774103 762362396 928642135 930244995 468643998 957951814 888044721 958420679 369842328 695697676 354147002 589649171 321094064 704271320 245931293 351111827 190090488 477569344 302375513 392473295 595049507 836802263 92060615 515065549 142494495 907609636 3445978 523408779 684245266 850647775 378247356 443709489 481049502 951508812 204947825 868484987 854654071 890857612 244148428 270899838 755772682 884679180 789217819 956222594 299582383 420481808 306918183 967722277 536606226 875980344 924666502 938981101 716792425 816736194 454471056 725957300 764015022 877373770 294539507 661295997 978314895 978812502 500785924 915066774 728020026 730905183 128755041 467601373 15758401 305682256 911893606 926109419 285775111 551697050 262821784 827288922 648408427 826880061 656392871 930851778 899760188 951195102 227928405 934716388 479882580 771575815 27792392 256323456 612316277 798027752 870230528 953192328 884358946 964089409 274549312 283463771 587061655 853104537 950848969 952467063 220626261 560022296 44080666 242225114 315356074 715243959 546348080 633872306 243277742 357348518 550286340 961274847 467526008 614338929 62544590 78882335 562110939 632931076 289630343 344849640 970533533 971547036 440895611 457665183 128151313 555403893 143675699 264615495 367299642 836187738 957857858 963673748 6225885 283199430 163241573 586536900 872778765 887972997 410013266 523523406 447710975 972694845 228907712 548070271 391466050 754081781 432549198 686956163 85891931 457581325 834525023 902990356 507896436 640107689 717713927 970740025 807955906 936528586 548612381 576209566 574515332 938318806 536862390 653602534 980014309 995356563 563326649 705548597 633992541 837611691 462144159 877667514 683212528 850421174 349978969 707862874 276983511 465091814 64630198 148810742 197638536 745502663 754798148 826929293 187187598 483969617 33478599 546216492 904731368 979725541 688068227 823630592 904718838 912989145 154996625 712553635 343223146 529305796 800988448 864677436 96679614 450896353 638360423 681082822 614194496 934453157 701918823 941145088 85188019 560910507 390289255 998105579 99101435 135330714 459377552 582880510 732045287 950098212 512349875 729844819 655185561 711922881 563338925 629900853 96023638 599763512 983223901 998470330 567366935 780033982 311884869 361944707 657167248 775732943 218004817 752104972 721282536 783925953 928368609 985537813 901209555 998961099 168810719 601900904 772068875 873006320 3139177 554678752 599793282 909239315 806834268 890042438 964577982 967289624 528527634 856030395 653544624 894701522 348808875 857383196 94696709 679947871 17889717 118248503 552111481 741468137 91905271 296571051 51564945 491811438 960242329 998078141 192339064 825503113 904840415 909354096 941431653 999021945 81157262 566812688 549923098 929666001 928905738 969516932 237647627 404936450 157667996 449812528 169853903 545142062 207120789 864551530 358020808 779824621 120251729 630309337 312004553 783556578 789499080 819160754 243750944 698171488 452496733 522351500 508809652 738350159 266515719 873369567 916728284 991944470 136674530 362927022 182802825 429434147 14320254 445410296 998613769 998795835 345264062 453182675 104470545 750970767 954267089 956668439 770403723 926558400 542974330 956815604 949066641 965259623 930789272 965522806 628911551 878934659 14620370 320982150 175651357 720861294 148344026 264258216 44732186 146076023 227186690 752028289 413298836 429989010 108207781 292217335 532290021 828738141 519581214 776714516 346277204 382269858 860266254 900220971 530315736 792149224 886365350 963087072 952255264 999407432 797733079 809955156 48282394 865037318 402566986 487219959 146321747 979987686 510118246 715230999 625339169 733691073 303528605 900513949 892158522 902699734 133755044 833735265 289364113 797909444 251722491 689202510 89489297 672873464 743084690 785937121 67538787 207943358 953043521 989386490 186697358 325348460 77578876 661654208 668457753 774165247 619707517 867848650 553062107 939589703 514384921 552414378 991682139 998957728 853937858 983332518 206162144 439453017 634198189 988862413 141265113 821240856 328570303 666278764 902477538 999989615 804649841 991181763 202692761 471880456 511021445 566227847 770536121 903332473 244927391 538500627 90110065 654636339 488691826 552480286 448857660 794152724 826377586 909957339 144957412 355223065 591895352 957487634 953463173 971198417 548330342 879749184 298298811 958148011 38425088 857801475 681139550 926512013 586699140 738098382 186378098 472067078 257755111 959985052 574075870 886774475 389945613 428639265 201652669 501379229 716187604 740850658 96880784 848481324 398083630 664496117 590712284 752714649 704069193 752748156 592693467 913510601 264160523 409464831 562212040 966118259 930417014 981039898 734849729 829545656 175595978 400176852 583356234 595274976 782073380 863628566 730980023 991403477 702175707 964917776 347168243 991055358 873274073 981284376 416346493 592859027 857639467 878927904 538782445 836795395 498151189 828830468 389519671 658340648 57336294 814522924 5275837 707746957 731871040 770355911 370355840 377044644 866347632 949884656 970162140 980887621 705729749 849543101 834107358 927759791 66651443 914900713 525346111 850528232 849868606 903570168 437543444 474857295 315579877 578764477 927515973 940704182 718506403 937591413 199282688 384803806 759901432 981177475 234852357 300283935 643435019 721578158 858789511 938970830 119615167 788837115 827290168 918853015 134793831 703479075 945568783 966573379 125883124 667761548 104761287 932846628 37524894 593065973 34864666 660543135 50233474 91113964 489735933 739276233 119567459 377771455 551837983 812372363 957786712 973950754 39502401 526471232 560531302 626970121 412788024 656451092 966485513 980990500 781675671 923290056 106980997 678589237 832198337 927165327 800265928 933126694 146386684 189910041 736288803 849484446 328559393 660137990 852509077 864089277 944713962 974248823 978392169 978883743 535605499 738064589 199179126 282434411 693450723 971223007 31632517 615694823 349866756 816379470 961224419 994920782 94898042 340735228 807553624 947518431 709473974 957753691 109048019 136278248 438635648 520413329 465854470 535050726 407156805 981683885 625716102 998386991 852246773 871190503 975459913 981766775 473039166 537508641 535301873 763356047 444857199 500244321 296483364 316615385 620734614 826058552 824903768 846685711 748039851 767224882 797029082 945166996 578990704 989951017 111924522 692352173 452668021 485275631 637664949 967940111 265899494 640522912 523423541 555039301 584513476 811243795 776717687 993641911 509346702 633040604 527347901 557809216 383205107 746332146 835394722 909253185 898734325 996721744 860476149 918311312 481232694 681393227 909060427 940446260 590539983 797305360 652378577 677317934 835781598 915264531 707170154 899964332 871110941 949693149 660669997 746148944 733316497 885856859 16646181 976182591 569630996 814680159 857484377 960054204 498005974 775801505 632883924 703686929 473797750 938656986 521793882 928413087 398452226 777469299 431280977 787869037 198602014 616426940 816161285 997229185 900188047 940203188 972552995 995335341 978206532 985689132 802386900 978704550 266817694 513073039 540814711 542355349 590401674 952545283 327191521 828899015 102853972 395292594 423913752 907940432 829225573 864488705 957341677 963535134 537177897 949217938 25285878 758707459 53330425 391969292 984712154 994066019 953791424 962179848 323984607 338376991 963506706 988110462 388728518 616868780 255375069 399747162 614169815 620666472 163775523 885059012 435178146 831924233 198492497 877100450 989693099 999916694 459067701 632205699 625247414 769384157 816760730 869394945 601234335 917074526 314684562 992770964 47549673 810163401 446426926 907086845 994686978 997750484 288471384 646339510 141935594 188130946 751863055 977018589 62359738 210974681 742717869 816992910 217164455 645072994 697968610 846663080 177088323 195749052 692823456 757475587 766713116 978966155 961796615 969518934 738120249 917244320 464773761 934043407 602921626 834720291 941041760 952052805 722458322 825733489 605769269 691782592 680351935 897818512 413637799 439406799 992256706 996854387 155175841 859684787 175447304 939164706 326973996 437059913 649678085 920186118 571716 8963434 634670782 934360184 480044324 867993546 77147615 399302103 187215016 964585730 477459057 546087448 860359931 935614048 8378884 313646876 388232921 402857092 501329622 996180020 982125768 985954557 2085868 226928120 518739311 729554353 429822585 885446097 637710027 892385429 201833038 775576678 472094876 977200182 896942769 981949498 853516495 981135073 975374292 981308343 913722737 944504804 267415146 309064710 890499838 976708438 517139640 593057026 838348002 889414824 434015168 891347249 609834909 717771548 496309060 705820273 412733533 871030871 632189338 684061050 721341520 881963163 785353242 844333479 739315122 987277355 36720811 237124667 906908628 985330944 262026557 675869876 149579860 472925538 880029567 902426504 678887205 913350345 136150838 357051985 471908076 709679645 507862279 589171617 53362607 984909334 433166975 931580546 16970009 234558866 544853735 853347398 478962958 561959152 364786423 561155066 669041622 803401848 602327980 912606165 625452533 949438996 388312290 418166802 997745527 999806712 172511812 574076474 260907128 325100541 848443354 964717699 386515951 939496840 96386304 317701121 719472787 719968793 438483694 904499802 441709502 980703872 124436884 474593184 89533765 847632151 849829551 962632469 512540781 979072039 838418638 901324191 443296208 725919778 524986855 718275603 644103305 995189014 233148804 416307650 613496171 978243882 248588124 641432880 631739925 687612366 869905450 994764787 897972331 910094346 333181075 936767456 729867500 847482729 705884825 706640734 476330076 567592542 160298773 295230501 26635629 595470744 152706002 205676966 192463729 509672987 413862205 750625065 955729350 984841410 656824679 995937719 111034531 524208217 289866325 461060187 193498582 926335881 30626856 400146985 522198225 957121689 258355503 919559853 768650290 952472720 242331290 796237975 493631480 773228241 554546017 692266643 16818084 61767276 250361221 267761643 754406330 768691307 591020903 889011324 35118599 398841881 637699652 996302277 345880399 548335785 233876851 976386344 228323864 605097836 637888104 754006147 321144072 955334812 556033481 744266746 18226808 978558640 35129670 358424376 123406594 695911417 696046926 958322597 191678625 623301554 434250329 746041299 973436866 990422403 891221883 979011888 212007033 857539948 526786640 786607207 146215809 466630331 296392473 856403585 566354283 592632354 633714649 954100349 907399415 984236072 641413507 874406328 123423574 687562707 197501690 734170341 974160122 977728413 416842255 510286109 970853001 980902819 913474585 941901321 668851599 977136724 186255621 652259186 271852842 747846532 547255785 927362327 205545626 678239893 755833483 940796691 672586451 839642801 841412370 882922300 193191220 202823130 667943646 809677065 977673835 983304447 233484406 410762507 720071426 981925290 831024938 886025463 587626206 830352621 214883119 739910935 327218745 927377356 326988776 330757153 769295078 818049326 916023824 923212755 424577933 426401237 983496610 986148230 761030975 894756198 894949478 997302260 434684891 672887474 698149158 740139277 7809476 355232874 631653370 801164484 141274200 165865532 768594363 843435052 807056498 924772842 708862862 730777737 186794694 552596654 811825690 864951452 595029593 853173705 384423086 687278145 6487473 912156858 87354086 537494687 990575235 995329490 79370675 363310816 646147655 705733817 957686597 993561095 468304332 731199049 585999801 812825690 41999669 209023782 528618387 802500855 82092796 659120533 869658283 897198518 484395227 738491817 755834478 821758333 384120933 977382019 688586290 768959417 155416007 574048982 783079387 877677535 425657515 432052824 364275975 364890557 579499999 807032935 631743503 657817788 214740202 844070445 842741399 925795448 263928204 928733848 938883659 977157500 375699055 711306336 562435166 612501798 425005896 689191571 436914169 729141166 752254136 787149503 411385115 625732585 273623041 758149853 973905806 982883136 782000114 938099153 486657584 538584509 34465706 823331153 709366101 921924239 821890395 835645729 883369662 907736784 170617636 214683074 643305871 769817240 872513492 948957467 120738677 193456044 234558543 766982255 508704402 763018074 513275735 989792510 950959360 966738813 770753833 939048483 708125243 816012896 524090599 716534714 190998653 332823487 169841193 710590496 330351615 699104360 729615812 929549687 458226509 467208188 683532221 702268062 867104973 987978523 980456021 980677701 886013570 896933601 284039191 672057361 603848234 944823165 416044828 529929724 92757586 783063428 291548385 695581376 56191277 333048707 677799692 735846956 791926184 946824435 247578741 360165245 101924684 925349882 487859519 702689283 347944607 942395014 899985397 907592228 751819062 780265345 68525165 155768630 990672919 994796779 73549912 677464983 140729418 330038201 491365381 523251577 378915754 429517112 783445178 947493804 759409207 900974582 805037986 827387680 808454360 857155742 794272959 843610307 844800491 850620161 304506123 970453037 809802437 814639317 442196146 762005089 376255857 396109264 220560127 316864519 867983222 888881789 334436908 671570888 826041773 921936377 525236425 734777001 714849284 945993687 315674788 895626097 723271419 987649549 984650377 990302780 834249683 995530050 133584396 849373394 272519725 933868824 75962452 236797753 65514744 237895391 511731206 786448345 337176650 919183257 289663694 292836731 863627666 922636450 603321905 760711660 937744486 966117004 75449401 853736509 563085521 947516442 936152658 979211034 491209102 581627113 784098921 843192841 325721727 544148743 910495281 940513066 370217878 406354776 11902037 99140603 561725067 909251732 693602905 865250106 505620202 942855015 602505450 912116463 708779591 983396499 430272560 894614807 248303171 540140693 475280574 755242227 385469983 913881516 312369005 622911835 269146072 533590898 849764105 971112773 13285029 189434089 825585753 947521502 53083431 582158422 805483649 904828494 132699823 487202709 787305472 916071746 751424254 800386691 637382251 919723525 737108538 819520009 915146817 934087917 644337853 930624235 223911186 298877816 723935475 745831187 660372060 699844966 141242312 699389569 649072270 978355887 935086371 973825409 843970385 932855643 267440116 615055674 956394228 992252442 820575199 995579713 941602502 971377272 809360062 854357707 359252971 892446100 77329434 987158058 220986994 833577355 786744290 806463589 913403184 957262824 442172538 553893717 297080002 817121280 822605035 998730246 3378385 267999889 654705195 743153279 380015132 883605115 87007621 418475670 337087620 517080536 623032515 966742185 940917525 997840968 270495113 707488508 606759289 811297622 979940551 993870725 462376546 559096761 580465781 744497798 251809285 728922675 622934605 726083840 453968815 681477590 523695682 907916727 73459650 774489812 857046960 867104484 189850110 681207982 218961163 848344023 411867423 875981082 33656668 980749501 950817854 991180194 727178198 740119366 429406583 951506295 397296518 774280967 666285700 733702284 698038077 813669339 649634603 998564421 369206068 810696370 849989870 941952254 56807636 171257167 236096951 549344061 831708937 907620664 903056719 912264481 66895692 808376575 671372323 967745600 740513004 807251813 322982742 323402904 548977744 566366359 926694735 970961961 767751865 970323175 136526221 984718681 539641163 583429055 711415925 943763347 894407569 938890370 985590696 990034001 788967162 798512573 787401065 920876220 634485915 783491923 251681540 271511007 758862460 788064929 731109654 973879752 715728260 962808416 599741707 995937155 524339034 917759190 32836158 757708661 51124342 580870365 717601669 939622056 213342602 511704359 392524013 443331177 477391074 935796094 764448526 818825913 397359389 434445300 996514700 999018846 851627143 980136376 360558467 795576413 823086266 979103357 319565479 371154945 189475754 496559406 829627872 896246676 275439323 920695237 7313573 433223207 378833488 774955558 751151521 974669418 522283382 618788844 698538555 951878214 223007604 693836010 698701469 902717185 622650901 965176669 311861819 964641866 558148887 903045062 73294521 433979319 735990020 912999402 574243177 761415486 65950816 124644982 67154528 508832803 545385623 613333690 828453743 982258559 112722775 571084330 211899441 327232427 517204056 574227621 302343099 870590092 846893392 867057552 296402618 465519814 389811058 441268012 596971094 700792279 650340344 784276449 985207917 996328981 704972933 966380706 659070715 751706078 55495810 775194565 466684476 813343511 228573442 258701078 625056000 838461060 323905747 936911329 58393411 355152835 552615404 626579616 56563673 736274922 945975818 958209638 595602151 821993346 295827824 740942135 179982582 731638915 319163041 457571195 323233035 963736951 712134070 993234618 323810379 840939662 486811620 522542859 753968698 886155116 284588844 625966800 113326467 584873161 628434323 849121249 180083738 640869510 425458734 819718312 551580158 633629195 818036560 944891008 801046404 869387428 509931577 896598143 96274354 982897391 349331736 758347695 796383910 906054683 867563747 881676981 546364787 731714781 971405694 988557329 790204546 817746942 141052964 982132467 350445314 884553758 209383573 702751485 443919258 668082518 86556867 273267532 729400579 847208010 808659952 906729148 38009908 768387278 282699584 905424748 657128858 933308829 779903582 822733289 900159490 947481297 151243889 830936369 112193064 263883004 595249935 824884662 708624326 805933756 920878477 953765829 292133158 635653358 747564743 913682328 342317642 836361470 821137962 941890167 650768267 917390328 286697333 933228269 268058502 908433921 837284651 905114642 644724502 780856549 602308309 847629513 147819618 652016246 836087562 848643490 505565468 796445606 913323685 987220021 507467393 971793339 555048525 821317189 346250617 505620220 69062190 437598436 138541473 957060109 47489477 387816634 436805653 737865146 194219209 415540402 422797542 845068107 302470009 775243452 744082066 935434692 784122799 977305121 678418683 681789311 113157054 831425982 945245781 997117028 810566194 821467509 863009122 950903892 672337695 930054835 189559058 805458338 394733762 396125300 867284240 977818232 697106255 921400769 402642292 489686889 871877633 948767585 962366562 978247154 265687051 402679036 431392440 890782233 737596471 812548502 457896287 947204999 98985382 163902257 481265897 569232079 716961530 992419840 132909826 801674337 565638484 732729654 32355774 442655351 411876298 881047634 849147803 933955613 658975216 693214358 804983543 872049872 902514816 987898961 482310851 794345399 121560424 978111892 542785557 615990651 998279996 999449603 633519269 723583710 758808898 920405091 414606191 425446736 79607746 818439256 686199031 901177538 837436692 976028518 404672448 406395568 351632413 910408162 382709237 668128564 444430621 497767096 128370052 969273571 460100049 463325653 611263652 643303845 890289405 998529103 970488289 997075741 457653186 675249388 716105756 896333595 911152506 979864701 576035436 987762006 264902257 902950840 981679504 985995302 487389865 890191745 68545577 338886324 281211857 475561590 483248958 761911875 869856922 974319357 256426049 390815422 319356886 483722998 226025971 920929494 3993421 872741304 48771511 402754190 213635952 675415037 363958962 758077352 693493386 876755841 390100768 662259000 878365624 996809091 757900379 861604616 6995649 58679517 553727442 829985112 342346156 572448746 374668329 948798499 263569553 487837777 82218103 583471331 918544709 951416032 669925263 716703978 968924332 981872989 615090537 985000743 610803640 848390302 87188127 416499741 871687355 946693544 741864089 806017472 727189194 957302441 870236390 876041630 616364324 679131620 339217327 402066153 299085022 571610960 453088009 739137898 784979080 980682207 315075431 933742091 643685085 763097754 828166771 967803629 356552755 431304274 994587264 994859092 410241437 924661910 121388913 149785593 109587083 463005448 314751006 859674397 953987317 962483536 413674043 529243976 367542913 569723044 127778276 180937994 695840399 988914771 535594590 879738561 648469379 822910570 763787024 905100162 830768861 909119845 982814220 998834155 184303358 752546195 822144430 957519742 705312584 842459182 840472677 979850128 213773738 916931312 923103965 981965393 550831429 627987712 491088382 840639083 464062189 676308016 808257345 898744644 285791454 875855201 850458353 909157748 12227528 600217538 813124820 905783326 853012145 864184787 717649249 828215748 815539171 824179143 598113085 847430231 90005861 708683697 183727785 343160364 72371533 445811753 946357046 959726420 941290177 998683799 378516801 804133204 524829006 843260882 474685070 674651991 749678281 973396103 274194426 905906088 490689353 500688211 732861920 872680605 798218231 898850007 717002480 964349784 13096081 134382613 475899712 543201207 547518365 675443434 720337156 774166050 15495681 108854617 681933140 861559169 228633018 926827818 78902572 104486084 301902020 719556640 522693 114183013 927058698 978073110 704888871 936276682 736024042 909614248 929343787 997534055 531838212 954672168 518871422 847224701 800985173 817599026 50642662 949729474 210972322 269098973 777176405 824181646 587450581 793897005 793119760 867390553 195395931 960158983 21547821 766528422 179299839 751816151 34979594 801797209 818767996 819795561 463841347 722818225 794746186 828416296 533926694 727792114 395607987 763876662 351211593 759099052 587242483 693975196 856342338 914096095 335327943 454757593 871152895 886294952 632490636 727453713 4692278 755349487 2606574 771536414 872064821 960266112 869910413 971865423 708810410 774024321 757949817 997540166 654160273 711687943 80397705 508719863 144219015 601641327 170748950 762420147 894822542 979881500 55196368 849415676 810158854 934489190 788224353 932913244 695536689 746391579 937083805 960258293 11529684 960406186 910461093 929817068 102336456 383831737 914426744 946013602 42417058 969039696 537233486 954384667 395880600 704128121 295347095 699200059 292418919 679446333 5044616 169868859 692303946 844205379 594189201 609600792 660167176 753769035 457405312 658307029 312839636 335123708 815661033 846123563 487042874 559288265 352861579 775243833 989053083 996209599 562580380 566578501 728099261 803590374 965961352 988733284 621522974 718461688 847880587 874220594 593806318 984607101 956484612 982733231 16182646 814218045 713258809 972939145 814643360 951961082 951707396 958130255 649268763 984646269 266241104 834206979 818927399 889196227 887539763 997818279 846261490 939696437 426580898 818522161 632419745 911359921 614168008 707668920 22310988 971623896 176390643 967044538 514889907 918672610 37918190 739743957 428911302 910617865 753269214 926167793 193604412 624083268 478291946 941643935 683296876 796155195 486411622 944998340 483974431 934089780 540414565 946196348 413594162 549261224 99197019 790450379 544077658 972974493 734559678 960020135 479229288 879375280 464273788 571385516 606414096 912605844 858712585 914379307 572283354 960677202 510143447 726105438 868918300 969720167 975203497 993475087 96687878 247609033 369293600 369966901 361221735 643498032 50882281 264909340 168280708 793948989 237342690 491561697 886109719 990311206 460374394 752310366 405427032 571707492 661687824 835836387 35533720 982675320 686481916 704581116 391566696 425515532 194694384 691895789 160856640 204766211 34329939 246905442 442268450 860120999 529884020 957895058 832320001 971276125 569085392 941876903 228642403 327270198 539303213 718139336 640663817 788144377 298315588 989908873 734535415 851291543 229923141 439542417 451346377 599544054 34663732 187804811 787304511 894243527 388995285 461515427 758883347 766321423 386622506 482199275 644511212 860972892 19439315 35726493 549459829 853531970 181692934 722672434 483650480 587862430 828465067 926899842 401695978 840995992 358412135 866412262 448298921 668689251 848967243 920797021 993299708 998868104 942541900 996121999 276285129 857644413 96225749 307036872 423987620 744016440 368792327 492184426 467479078 988386355 988334125 992127725 215963500 343091758 707823445 895400693 185808088 820613394 539363435 724999195 219334332 806011835 506454467 896856165 67094491 215182825 924441519 948813254 578446137 733232374 893834902 908329197 737804263 776551593 25910192 142364702 854029674 975352086 962492055 971557488 690928765 878846884 203718522 353127436 921307507 998377956 39786708 75137293 211063610 918593742 124070963 452094924 765127900 876385446 410960900 928189789 380429345 485452260 970312471 992162026 362378078 978601792 100867008 141746437 224362336 788815378 359223407 557223638 611484935 863220543 972716264 973398190 586181247 685662790 962411137 985307324 833761436 900517551 321697847 524888921 315361822 345071200 259055015 427664312 847631465 901045665 87013655 669852747 207091122 450178888 940594450 992514806 25387968 801536795 730816565 883142155 975995289 991126012 515421107 927059633 354752471 931101444 750673709 794842408 459208329 524470765 680803183 778753181 691649629 715960271 270729737 610117117 508408846 867404081 339923349 875736983 682029897 732598976 819542770 842766466 504517202 960030655 279437362 800231717 334219895 835274373 961395789 992706199 65089207 545884243 724026945 806099779 128072445 673813623 212971960 220297681 166235986 245159281 21184712 259481580 593664482 863372221 763816147 866894368 833733985 895792374 430800192 794538212 557323422 834275698 695776681 784327105 761148128 808222829 917400866 961274252 92626606 759231753 29668264 248085297 237242279 351114120 181925854 350083502 696278192 913311047 208057486 584911969 667659312 754038317 979964967 987615026 719203538 828542205 466758569 827821177 498478856 498543053 548434565 783855355 896704774 997161885 73474796 337233742 743421951 919150022 387799748 497052223 925885006 967582249 914386363 924455061 458473023 862262186 233103171 303255077 42341482 876467753 873834920 982762305 323234892 555135561 151461947 479804686 905263336 934127833 565182939 644366282 868994370 981912092 687985024 696967514 387561495 801680253 807253642 918287313 759125218 814819001 245927552 983030024 506202567 771259228 56253834 641043244 683631208 799347793 978507057 995460586 596560957 693965979 628762141 648672738 451961009 862456737 639915216 755971599 20061568 672106711 337054597 993877900 828063679 922732192 246474810 272405378 888157271 896441178 518429183 696688116 369141698 916439205 514925333 998367114 29970361 635065554 687645465 986863807 947224085 962549198 882251068 913878312 34220999 660864048 949962379 981001130 5456748 281676301 819563536 920791493 848871748 991166460 300161912 499408743 228832323 647811106 942667840 960582998 721017679 935842423 872081243 919491332 801578078 871962166 365122733 909821985 402796025 503974125 438713478 678245405 171132752 208148938 482662616 855743733 519727240 831297871 22405762 973359108 808242110 924373101 802035972 885195640 635405723 978908886 322367181 869733143 900628315 904390814 673234992 673691537 480444654 682422328 341824413 889027827 960541461 982277332 577842184 688681192 372876901 655453687 193887824 616921061 374558870 912256030 149545748 159921810 261276286 834933010 461515184 770010586 667926239 842929633 170811502 330651128 110246952 374782183 785417402 816789998 766789342 786465984 729748764 731523476 333791267 501274719 520741449 862113487 223031639 629151852 389297688 399482933 860040205 942218609 875439229 893539101 743810806 965036648 617733969 920728525 829680946 894723525 496760267 616393903 259668427 334288146 528295973 979121391 745944444 978570553 637598462 916057879 47380460 712553470 629349840 721786633 640928038 946660890 234057810 433577871 544956036 764983873 722491723 762477764 611728628 759967337 631755640 724274013 320795874 716840730 243056734 767561079 232083477 344382410 775246026 840039245 957392325 982085190 599094067 825984887 412873978 543858396 599247369 885340858 821831555 927116976 410174258 958840566 799728471 928069787 826400458 875429999 679553026 978313211 41635624 286519240 57662670 709950057 959470213 969609578 35236672 957645849 123253898 387866424 320502299 470329983 725302777 800719032 339802814 717993598 526483189 533293851 472463459 560850778 951008812 977888680 527767068 603015939 765459960 794527015 183489798 808932012 484214456 833845759 223811271 910408910 14401491 425227784 616691997 908006416 885113052 972101105 589929727 697723438 640524025 698162955 312339384 384098586 104079110 441107310 970478099 997523009 668035519 736386790 499029450 959572662 902442797 965180197 912735645 994506685 913439617 927290088 896350062 916268393 158378107 992540449 112174717 273803751 482571235 876760141 244058830 797332212 161588441 778484931 886258455 991410078 809695969 931370627 339545349 477053207 335492389 814840238 125860000 717867732 971470447 972901246 347464281 908479768 679423919 783259251 120824600 132920150 757588942 821060873 875318265 939316211 480902984 925283481 113396967 629673471 877262767 881391890 485906856 667190239 617506540 787410786 779585151 863878272 727849960 782142527 989195055 990364017 325047615 595740768 298042763 512352360 777615511 907696435 229869147 328028599 985065928 992880349 657568779 840325134 314256706 464783702 355897186 559925815 531518200 553705762 241173613 899525782 165501212 345887178 813576055 943559696 570382455 667676369 988593276 992477493 223358234 879121628 784921375 806003967 193932830 340359721 272368687 773451032 501979833 750030312 59296430 505088089 13759792 461370815 179092596 933711023 591053175 668338252 700022724 738699136 272835950 515295514 733805922 762626402 667159628 809577724 600556012 821376203 969582023 991107486 68557546 543358625 537295886 969687353 901258962 911913393 292587766 411848880 4661865 582403866 25439161 371698402 250096092 482852388 164943147 649089791 711343205 940824555 455533352 716327249 229500022 371742799 767603427 910355612 688328870 709078710 587091882 964449450 163120847 759488213 567713623 966874455 845130702 934520818 888327568 987277342 206840193 818375370 376343504 734316767 758448140 926019394 10708091 626039844 698047657 799784442 168528159 561974318 490604629 524733840 23018210 233217336 525847601 788666244 697744753 728756774 486344499 616181472 310117572 411206776 682369245 823790786 351765733 366640990 775394960 834412493 818982355 861881091 472601397 945916129 765338837 905034758 870154679 950080167 428832912 719866162 559877678 789732849 836351186 845989672 632745212 851326783 231268319 418524563 636566965 797395348 721034174 862680141 832067427 895948496 881839077 988949800 821554067 973076601 329609463 585567769 23111116 893986638 307430524 693384502 51146005 271839281 706696104 922471340 54017464 58774271 388436576 454086370 514288975 740242254 537876587 852723424 876303627 982184971 543727292 940778458 200982078 843995120 483119945 967423150 366890488 954396937 179437655 595554447 521717356 636317303 630531740 711077542 737038449 942674911 480330118 502432906 454531642 918226100 754471647 972882212 857581297 861164688 432069192 785156059 493731543 910685299 527793776 877466311 531516350 759110215 723622008 976061927 921235757 986957038 897342063 990484535 198860977 840265646 277720029 461097779 254913097 787047407 929960072 999085439 924926627 948441373 542772095 896782359 828442392 902001009 680443647 754205070 750081734 815282799 380438068 568849953 887190191 998570536 329651866 795429131 484910311 897945241 21679491 97396561 765676487 928451865 752220300 780126465 326776541 801665681 253469674 601765768 688483449 722832974 603186186 832794676 835026503 959621203 82590986 393271874 165104681 312280330 739938670 741211015 665580246 836034522 928330672 937426194 151234084 757126985 303015970 553280765 683015838 848102759 365183356 498539417 477035413 661543031 671241376 835391929 574299095 856331650 488847082 536222264 575060701 756527431 720880604 950483543 148388059 235884377 698487316 807101952 62772047 874824634 326169775 604813504 82870731 815086704 295909716 702564272 681556485 761862016 263428200 808670083 422524853 559632125 886302771 974840431 553859343 660307500 395657577 602246162 357168205 539028768 794044013 958709861 479801319 835632109 757264729 988918197 888826492 978385571 254214296 559778819 800253327 990635060 140925665 426745446 947879126 964239772 649688466 899334287 405320788 692472177 881493449 912874144 876483797 991177552 29604269 199032923 852884668 985319948 988714154 999763089 238157735 413636414 529005156 919756300 737088004 874251259 495348346 653096872 349903611 764971588 649704420 901058913 868574288 918926501 189393389 880057910 254102844 909335115 421932034 628195933 441341300 702563797 432405270 896804493 724243990 888817013 455738065 639402473 62824945 179997639 362796738 618240831 940305291 992417661 64115174 701389150 14160730 278342154 969487720 993769773 835035331 944795885 511736244 713897841 486355372 603445003 344893363 722248239 927380164 960264366 656177958 877426158 661915681 676513840 650684899 675424378 369732327 504838839 959005732 992591059 533347553 921824313 449558661 763993021 535308988 772482394 666759349 998914434 781768882 855778274 579882689 979968142 892858058 964818412 961714491 970563512 730269838 932859721 23279940 331582427 145856718 863333728 650830146 798944053 929432114 931689643 261594800 684141596 978920660 986534363 162504161 259800884 809481083 816303044 69414366 125124224 604383271 936423516 264192619 700914828 517145917 926609007 494780615 527652070 902751389 931097224 959257469 962824119 273888559 366020697 368832257 412842800 83523363 85266625 145048270 819460956 458012122 682961628 619344450 684420266 458199347 677073924 417952817 749164289 364861105 710670033 651736719 965157959 424501083 624020939 67440439 197705298 196701064 598170484 999510888 999525149 355760818 743726326 35051773 404053151 113124629 480783583 509881072 749195320 302161417 855932448 308382131 590669104 481765287 518959608 227291169 434748247 181994069 803057237 97490858 337890784 731906088 876071661 806825787 960408696 92830783 274359338 801242809 839620594 538866802 598826855 230469800 948084894 567692866 931534601 754987410 965252548 601383675 901875713 831914968 947995088 133528841 137425498 251455488 697883475 392757315 826249341 846866490 960537414 700632881 884655068 657998313 981556141 401507843 655283337 513230773 976872597 484945222 608589260 490949490 507216020 567588517 993867839 366692529 429862350 799569034 834779601 367666976 750195489 10897508 552524203 51634910 222803015 969636770 970593031 789515003 958908622 150369089 601377308 675972984 689703362 85385039 305994297 379399672 889122282 449266332 518945060 268123792 879964921 297201097 735250939 537773037 700001306 263848912 979522193 882686278 987830872 223394674 683705326 910386639 960380282 542879117 948949306 596891900 620744676 712578110 834841098 287437164 453704190 120286841 307569825 235847031 287077999 298745421 941767147 223202751 731813573 279672100 503175177 938324533 974217331 948728908 990959955 203057411 383811463 663466723 771619988 27268556 529902923 364711721 891258382 151539246 981137801 629312207 879606636 707775693 941240954 957331029 971483277 489869239 755861131 266308443 452841326 121799429 300060326 335714789 896444655 241054231 865887858 892016791 963200014 118102156 758172108 158717607 569061497 381278509 687037712 941872342 973810759 861364524 892885994 809640383 927375705 988759285 989557731 945737774 948365298 517561800 948599472 174567957 248576905 948712453 988326224 367672629 503027378 469701248 506914856 719921483 738915401 691075456 913194852 575245900 615464021 34761140 311302240 189451896 832577587 433871197 814775201 921793433 928198554 208292324 761903306 466386995 568208433 981451367 984405439 210014040 370888868 973615294 988044763 519542623 827419733 124691660 145512086 378114255 590791730 459454169 794700424 158042836 167496368 275584085 487034507 653333400 783173686 68433981 349895045 440843149 460568673 47421925 979133434 655756714 897790768 964025034 973682826 488978348 800496370 304188024 999911438 221159555 530265085 285295034 555233166 74364347 465504699 981070637 992795328 774926707 898926559 908532411 971731239 236045675 537053350 879596281 941235935 887415904 896757514 852631769 862649052 384830464 869099176 561601181 765210672 599220469 840385675 723978489 828982115 478703189 716279304 229771106 354454658 179302687 732307912 698769894 784320917 964949175 970398271 234314392 543594336 579626064 727904636 887351201 986401598 490249248 999880522 989432746 993442914 545015954 737888030 210415747 885754172 867333705 947820406 624672627 888398436 238381887 317985459 316028649 414295835 907291177 988570399 255873096 264703804 404051555 873068648 909211299 990161695 186031529 209532534 88358532 481732386 736077503 830225284 595834356 931178982 676980475 865778025 801551115 926315321 925970718 987660280 23816051 176166934 142150645 657904199 630548044 762214066 412911402 783539633 76657104 709406418 79205756 801158872 116186682 492587317 800566089 847185183 523668594 644013927 548686366 871039311 893739931 954047951 806878379 997794679 765275777 799908444 592706597 623691052 505350846 941920107 837644782 984935969 851496460 861624181 334906685 624857628 453608159 901926142 459094048 860471230 201320338 652046074 9779325 76022304 40993217 147605127 542284471 782284689 294035875 808614980 522898480 591183744 45881786 726238056 767427913 918055208 173060184 380055275 128786488 997503111 328866390 966047593 188343428 443146648 527128779 963848179 34054105 910345456 326970824 588841328 89867418 971337707 695720034 703318641 343637057 912967709 916440062 953366627 995417172 999738518 107250228 331487277 974791295 997000397 866609726 919276404 653203196 681950632 315797966 896705941 316105696 543689397 930338068 938472814 136297138 806649023 888692458 939397848 887580131 996633826 866961267 923709764 664321817 746816900 21330349 410851203 402637606 446976431 516847335 921130838 588967724 812404764 553216644 697288591 72300487 534339437 168299564 518216053 71974539 546600314 562071531 823802333 807983322 943673719 929899913 953897759 397801855 822870116 413217718 940676520 833433070 873320285 713051599 867069787 82219778 985013512 859287449 861500832 504689782 638504866 854527381 984307820 775028469 785142647 431908178 558506429 273760484 783532714 597362366 703040537 813974849 965622924 173774568 720140500 851675644 876632199 114871260 120129168 903109530 941328928 850945670 997927334 957497258 957793119 742519178 841172457 113940141 581132225 995772274 998485519 128198587 989206945 206208659 854980354 678151605 923028937 419335065 811618534 771930471 837616789 948308894 950321667 215687898 732085477 465915219 646729046 599562619 806927012 74634932 940284969 665731178 818257357 822190779 973749697 710502658 849163714 172678833 213114019 244348249 732607309 106233871 383605138 283674056 478748752 686929410 997920689 675530904 967940968 129906647 998981803 108364640 134080930 663907798 927943777 594509785 603827745 369151804 408231355 505244936 795092651 466352905 628150265 180843525 888677356 50507461 67765847 782653287 948753127 163757347 618386625 596771724 613909487 389108853 672240456 855253106 927969827 241026417 535334714 62884065 611705771 346940338 749520282 849619331 851287346 165105893 238475696 726296067 895015435 341667198 416574269 942138663 974083375 596041313 788599243 286648914 696723770 933749065 968722819 334854374 803113750 381143342 548899247 265241225 899947435 186703654 188196935 317995810 578094493 189035082 492969542 900460044 952132815 20340463 813411774 523699470 539257338 819597966 887248020 618836075 820586367 701151837 922320969 737254691 795540812 668296183 879004337 7581034 608368940 630446233 764635860 871593801 920202288 201485566 668439248 101674791 168790970 224517221 827068683 733503557 948093077 879239273 912397145 410600814 701943822 48461771 729683650 480848869 913967435 24490950 582793403 449854700 838807084 788853800 818975157 74892358 760886832 145877439 283066387 172970714 681113355 923366855 923413403 651791109 664098681 47689719 481970318 241025906 968194396 665187058 995843678 55901374 857228336 104041015 390803411 918662217 949163863 395989477 831049685 152725589 384282924 83827604 473917194 654051433 959034601 962518508 978675715 836110695 908727821 584010098 725895685 385235618 725679077 668047143 821916119 804678911 908075354 964375624 983560225 475587462 687717371 437050527 522067171 147231646 372885520 133606412 209365755 84428104 487974968 767392575 873670411 974880514 998933423 683114253 949757482 615077300 888093632 384009804 798422518 492874947 939639303 43199363 916507362 180233197 587446293 601523377 786830900 273548417 965772678 110799870 741055666 999907746 999964201 108877201 804989535 357894134 988792880 643535618 948721845 852005848 902914634 427049319 854049291 731119570 999003896 123375024 868269495 722178752 872761910 297471136 772599842 255649542 273006008 856009191 879744837 751681 503489184 794154751 842844641 3507573 552664747 149958598 221398674 870857207 875285552 642687605 937440612 214350186 833538354 432706208 788459480 845024439 945857420 245380137 371218970 868294779 966276350 140852361 768422793 489102413 700363690 311280789 855909725 983463305 990700176 190166550 699170046 506999433 555560416 848749562 894220786 333801874 674664458 407487470 879389366 31851770 648786879 728442163 797054385 89209265 922719255 440221876 824265547 194325575 842867130 879975434 986477212 150922658 197489505 661842129 852665341 220391935 323625997 122284280 409353176 897653802 903625422 463137469 477877883 414914942 420654809 350555096 939486501 648660528 961633760 590500537 975117759 482198805 920085781 399049819 935290917 225016546 410422736 52136743 900676742 790658805 878342613 704736887 782585550 448817377 860984979 801626041 905367010 32373176 722149061 333680864 771074932 989624887 992563223 163867392 426327542 416059049 815570438 17746228 675431327 115498301 873068931 713369949 972287988 436515278 616240933 416991413 440829222 417218481 544941526 862980720 994901179 624038246 637831592 557838389 776367700 704659056 941282252 1499729 297316518 114767055 427195302 202852711 971684785 271933617 849968997 338558649 461490508 645865609 738766096 894808120 969686699 203982114 426427814 784279477 822481867 709576288 974436712 301886268 609073080 884665813 892183979 148299634 637615837 354883373 931693364 96434470 657652511 210291386 869648120 523373866 752379968 289125429 939718133 376828401 942918130 180424592 567483526 733709156 912589471 384915368 806364291 687145370 699053789 447181080 985200608 199427144 664625296 679920007 812346122 79415782 608724176 946973592 994805013 868363956 943172583 616642876 977621480 746174802 973358471 152449372 786351908 401067747 739103874 132389120 621135664 484172593 705892819 288397285 426387336 343899103 770315814 374707071 700385449 106663452 753631132 669800594 930575074 250747973 389429835 474916210 745862980 924910239 965502955 555160098 740712236 236825554 610586751 546843303 847273346 27110689 352602974 823231667 880194133 522954149 720801428 26448011 100588588 761238496 810252219 789444959 840009262 196317862 664066680 557355702 978143850 595502281 780468805 142202320 408529634 109432281 878953137 275489017 480116747 714843208 793844335 571726379 798146468 930921804 968217332 792758576 869776763 259771695 585660207 915098185 915512706 277365912 324293409 456765868 755025978 162934973 627356537 440846553 926559926 837738476 919112844 988262746 996052776 666990107 856556058 36378789 510949171 913144059 964697562 993026727 996499444 493322230 761090329 192632401 953038345 56881418 584577778 502017410 794497801 450711564 701468479 189406115 777948130 435409564 478392905 941984725 972273440 625657795 867452806 865778901 892701073 943832586 969751138 944632961 987971642 712781433 896010643 567499515 886994060 473588033 618676772 942144509 995107907 795569343 805765848 654227114 675755464 107613966 359760122 98489982 683733105 166549186 381143056 115784693 490545879 214187248 230565040 823121998 855409249 941995020 942907799 326476157 459573204 678196775 857323872 935474415 940538098 742118361 888457740 913164464 914975628 938375033 942815684 288683017 781997434 660031870 965868239 624810885 703582644 379293899 509443623 358674637 717690431 28168920 176645140 772272811 782705788 380795075 685036629 321131383 903235752 278603812 351037168 789777119 892408580 822889632 997363873 697211442 816444493 618012443 718398785 162133625 216336989 525420405 956407050 539284493 723682259 116004099 240977300 318499210 761486861 520042450 841829330 651874205 729357051 822283774 940766960 55629105 105980501 651419670 760680144 473504893 763339363 797724617 828268300 595889931 707054750 758499244 873596202 355968242 990062660 400652425 450644620 426702355 697146752 812428734 831054259 179574701 257973008 966055069 988308715 749554352 945836066 161762123 241730102 455601133 729144621 789228567 809149573 272098274 657167633 695850418 985216260 428073297 859182947 359110548 422579485 487750081 935443896 131959087 277623064 337535011 657195610 529396519 820745699 619221607 907445722 792556103 950144297 720926486 812244326 908103488 965032972 728439148 926357795 219392797 835514540 817057220 828936011 418011748 537959028 344648970 347295955 778660094 976417327 972364761 981763477 744755512 801938255 575952617 913045691 857473747 926232055 634810643 694437459 834910315 998154512 944461667 961522621 571634873 622989332 922970519 967020070 322999684 877613915 236362763 482773732 263623559 426866780 585979610 657875791 897588637 926599636 446432638 945561212 284846601 723824790 780455200 967691005 149048692 331161000 780675626 898140632 58912084 653155072 22175918 921979603 312210766 437334475 891116162 914532512 516345722 936229478 408068559 554543609 538960252 969681375 705021365 785357974 770350326 981750298 644073300 760736742 257192340 913308024 481324002 654948591 299282278 918214395 774476223 828994492 3393396 942618474 390656355 589028942 981102406 985822466 998815630 999523405 80472720 230059064 303283668 744128919 272292063 402745265 18544688 343362763 129066722 625897146 466954960 884900165 253002702 857491971 734816174 923330380 13865084 480819528 217327168 403457459 255938043 807747126 603096722 623299981 709893441 990210417 307385882 686137180 672784874 903298852 700303758 948194618 758421092 944703208 606721317 762661001 745615791 796844592 487480397 522809472 836440138 932006956 435743544 827230077 121379479 863931410 151504208 969752554 469034743 501120212 141982462 868189500 519185423 648830513 95817290 560368338 141929908 932029162 6648985 363258003 380888959 448089117 863250730 947003224 944930879 980233679 337771835 491897306 647327680 694448421 806671656 887410098 176921783 892704100 726741299 780005784 402945810 881336132 518010843 679415165 463928376 659844856 129350162 446559849 543162604 784767601 520529506 668289887 942807960 943406999 709042969 936969477 957519697 981504945 401350950 564453851 434525935 973949332 709106881 865306197 444871854 574358807 150020498 511190924 310454415 941112668 695294177 756931702 727669725 989547865 580345137 788763769 940827299 976107659 76107937 289416352 365141404 884234305 634415177 899233640 613623453 942357961 675036504 778834777 666356265 780808644 522810452 711768774 121625200 532187375 304141568 890447009 729259406 955836333 190740149 995806915 138272671 225570720 198411643 758975704 847345021 920284091 17101214 30445997 57261604 72876028 763873064 895414576 682026747 693129558 945190676 964116670 153685858 959391655 3777823 212422380 298570094 564034795 96490075 568002373 941329004 965202970 138514879 841866814 852985769 894427012 742066352 917141927 243031819 713002070 518579531 519773148 720228111 986442295 388445804 486203671 854913308 940833717 240344468 890461031 899481993 901445875 714256117 726740807 600361675 950951983 288703581 778226831 606323872 692195304 62558828 550791361 232768754 297447163 582589664 831954284 124736732 615964606 329462504 946870380 198056156 886236813 641762244 953765050 791144844 859789054 615992724 917676883 260553983 456780386 613927325 995263601 324144003 719794057 37322214 327483930 463913310 709811810 459567585 851212808 535695452 818847928 375651274 460276438 382821124 870207600 38727412 540726954 71796710 511279903 898153573 988146683 973747233 995606435 509878850 634026453 150435304 817081999 878377594 996081551 116366652 550463149 115106465 865565021 832574825 958784187 375554271 420244899 947317778 989932023 655792074 805071368 550637072 754800031 672655823 880131341 47624687 120426599 469516195 689464565 318112130 667600911 680845945 853883002 63565073 737414481 323380161 476641846 887349743 949359075 55415191 63332381 961845430 987626313 605233531 858114430 639715282 713023609 727385080 955284859 875069062 949557854 674789265 802647113 484102833 953636622 972939103 991219615 472789450 653546012 52622997 247754759 34525585 996519165 4515820 217239563 877034760 934349877 860610624 862617728 856837497 939518866 662823828 885380474 187950393 351828071 582252023 866169980 598265945 983554812 987141168 996073314 761972251 937731436 463997663 574183080 100234890 214424293 199920168 908851118 645102517 877514612 313252680 928162700 290969415 334827793 810584135 915913083 843390260 932075235 681470385 808765029 921223282 962990492 119530390 224477259 317855674 643900198 634285290 898109342 628101094 952639320 214245215 736921040 683580258 691330586 340924678 835537136 553484904 911823170 108070680 887164390 679565808 942078325 433187950 705944975 516887584 549213807 173524573 398387395 210270824 460325974 413621802 704015772 934251854 985272930 98560751 463404823 531619122 752572866 378784762 974026537 702241956 886001800 950772047 951933574 579509421 931374393 45471809 573527856 891817655 897269378 600783301 853186403 473246177 945766681 324601227 851333523 931945671 932318210 838944806 852373703 402451501 821408999 422332180 430401802 855352737 881660212 673831720 727070349 672611067 747094307 147713176 943806283 532860481 629444379 331586495 356470901 916926859 938365461 681604279 982714691 890955263 984650102 589834577 772211458 673654887 898781866 674706996 718224167 895300769 926743243 271433939 615568896 433155586 904628179 184008630 672002285 32087289 268819498 531667973 865902034 82869948 494548268 564472736 682927127 506433969 760770521 569580259 947617107 914007774 989885955 267858376 514780066 708336707 733737827 311975109 496315226 882545357 968109014 234760187 375873479 946795362 985586809 530721898 571020167 728728452 733480664 861941863 927176849 177441750 854473368 597832110 704627443 628659442 847098770 164492565 835702747 998886671 999262977 238986191 266155220 941010839 970410319 932400332 955694992 624398644 984993439 469768269 971799704 121790911 178133703 513161126 666810096 277505434 881072241 670582162 926812311 439377877 520926536 846658518 943950192 196389095 968612366 99143650 968956164 74565715 81681093 794011187 983780314 655576257 737110792 76567125 830067328 779634155 855143539 727010069 829115700 138795990 904396895 165260303 799962281 278961573 577481507 461674075 850281781 814328666 906072243 377138349 571513252 969786557 977818844 814089489 977321582 105243994 693633986 587987437 717023394 701590261 844640128 866739703 966160270 573582123 997509892 978854481 996164957 308761081 988274809 756511295 766686498 116831436 962347179 328426154 755819935 679081787 765362139 636033178 765703296 670562463 906184423 729023476 884260834 346982391 870510531 985915418 988712156 997023137 999749624 453257644 804518539 305805591 384385947 981888873 987895888 70408784 727561687 720778490 996625772 869477649 950896469 855335043 980429190 660514281 938716454 978200972 984285312 116719983 535146696 510576550 713057293 817146455 952516787 349497655 928217702 687381303 729226629 514975634 977923531 94161512 640475152 991068093 997799723 597632049 749341809 612393976 796339076 668763271 895264565 77775777 877014222 775306411 833866040 876411315 942311391 92254711 887838849 180173381 405779696 560154096 653604960 143248663 832596637 382957346 743900890 2994263 403426772 34550640 215464561 106149053 135908111 828415793 974276730 683506749 685784145 88839630 767212948 175923800 197490458 667371787 800586768 334599566 956367826 563304636 990896859 843755462 890312378 483845208 746621422 671919443 744244018 565578002 978626889 626084051 837575839 425384049 446007141 212197548 678961605 213479190 689819856 280190853 835368474 185507117 259777376 611741345 883411184 558759224 584532108 786742093 810215888 450673862 706204989 132840177 139596018 982045269 998783432 405233936 426451032 649526680 834483761 778299825 849816878 598953705 883440105 103785275 274082892 590794005 742767081 548352260 957535914 898167660 994677187 357941862 818840751 501543117 532107320 242406279 855850858 641464746 724085408 927759101 966779909 417529264 689067818 274561952 367768994 330051357 441609497 226394602 770423649 839229691 931107773 386776097 862145675 921376281 962685454 114543279 625068513 489321321 697515016 502145004 631441203 433929681 770839978 976701010 978958827 306858042 999790953 342076187 968490900 41575259 313669294 287509355 496059731 633047814 932892673 273870869 997687551 712063276 965405563 78251693 450540270 160608131 514701548 180027347 210801985 555128601 887854694 431478083 862046842 839045755 896487459 542292655 950172274 193814953 916805544 615797338 981361452 721033086 790359956 157280229 606840199 10959801 545789274 71574061 307986985 81612003 173660601 505732258 568830107 598329875 722322976 233866298 838460462 724077124 900679209 910873680 978803682 868925514 877694767 164420736 426726180 918246895 952293215 429836797 928056431 428761176 728107556 340662394 670069238 455579047 485222116 246128266 914730670 637041158 881058531 232597628 462073743 208436917 268113427 89764115 610430132 755365167 974391140 772914659 918566603 964104845 976762136 412959343 482111454 598683738 904067295 823892047 889259511 590047603 936913599 932717491 947759750 620952133 892259340 215275656 784312623 96284883 176997322 997978794 998723348 871477500 934294946 331935962 839207299 849457294 981944641 612631520 937785882 385292826 450653931 54890224 154051292 189777974 821962605 398783593 538760743 730661766 972128047 492699812 835673910 34547024 896679383 834147753 852837557 149134990 693376232 785031491 874924644 23446213 263516470 77792502 603923895 849294115 864258781 274116496 449295337 732521999 754840600 334959324 737448778 156921691 345766367 704893275 992426492 156056668 807547542 792557753 949995808 170478892 753966160 458266268 759558544 387427022 948238482 819498951 925894173 184105969 481760152 630864396 669334858 121604986 769623889 99123918 554408091 851091161 934939107 197333002 493425741 365070382 987782107 436935265 457622542 226634627 317668869 282894855 418250279 449421953 828242662 89232098 695668219 216506718 275861842 968455339 977447997 417545241 784197592 612075253 810066824 266481744 769445847 698804598 934590156 696649134 937731728 51610142 436130361 6543030 300738874 705782264 767092878 51260138 870428519 769366076 890328184 953704952 996734793 840932605 920124156 778693235 891347910 985331621 988719450 830472016 831888341 817619331 948738884 353962839 440742883 838968029 841569675 230110751 556097364 220282945 611678440 671496426 966034123 150679854 421066347 770582942 996727818 660047495 841990633 529648969 786759129 302345621 510461450 566250045 720872633 541494834 765728253 149701550 381283771 419539609 567047182 721714540 832721675 734320805 815819023 455436432 816516862 325576019 532032231 78509375 287457127 881863479 929753272 218497693 828971188 234910298 919191095 770435489 997492875 646621081 825922686 499218361 831235933 891657474 896890869 783083480 896630141 601196300 931036850 197171220 664527120 653826007 705512604 904446497 981806352 827857000 985309613 504022301 816561173 537293358 599807031 26122101 203983260 693838931 876829195 292078506 420633967 62025603 834143011 242572132 541460882 140022260 678274161 367687123 516936906 322930408 872129796 521010700 877482687 868192254 924753704 569477360 707912977 542026661 778118200 277438987 843483896 945100815 977168260 922166459 972002452 932840363 974977295 320865792 592056839 758764251 901377436 394261405 746159136 331958633 601837714 516043487 690379492 349160533 690403743 273083225 358522986 989772932 993628373 81031237 471464656 757622323 806845663 315286273 805794856 620364543 788836498 119425089 678809439 112759834 385746908 947935403 978581351 404443035 555075737 183956297 443601386 651229118 726372054 905948911 913521678 446404144 791363607 936635213 975167055 416301680 698819388 749506052 944042064 888131724 968967398 261016391 380411821 881866011 909682908 321121195 601583248 528758925 672134612 142104247 252081479 352999646 682646518 856448753 996744298 231385811 687729797 723454499 865576023 283841785 458120890 844006934 883968382 779978286 802845764 665543077 830069082 120761605 127972958 882803334 906784798 914241110 966965898 427788675 525610462 691276672 985234781 72505674 951669642 374510445 739112040 185003318 859189645 936285869 979697088 437372171 993736142 839753359 882903937 25842391 884993654 804581555 905655733 717521265 954939586 894052119 997377647 900336460 928844468 412258316 529219245 34985258 464106950 219456756 790347659 364056105 421762349 238554480 886849217 705286888 752212929 565839066 892706746 833540367 880496439 353738063 485419920 920952211 974264096 515112927 625892172 897420007 989134680 727864240 875193655 50579256 121322781 175791281 847861850 517908354 718538983 990293895 998881101 713604226 976131942 496541853 757904242 368978082 648100302 839845603 956856235 441135382 832548650 210083640 360936306 308655173 513405087 142611358 601272080 530597543 710105252 55947829 619159359 278080277 599377172 921181496 934661433 174162910 957642420 86102743 406992464 905423834 971984999 865044326 990639026 299498231 706262218 189338653 259049887 72695521 596248300 423677911 700178081 876441214 887412315 896295124 936657123 999152818 999439374 830195644 968230093 550611051 623218090 420392433 443078324 148219938 253551401 39417786 972802929 918283296 919858526 900714056 918410237 137381779 524369846 278017598 947968344 639502299 942252213 271248678 560094965 247392381 364507054 409019884 560680274 191625004 351911407 970912758 994273056 484548470 826745958 302723301 964343606 416991404 862201445 240186010 797001945 128247455 153269753 77738586 141396283 510260414 860996230 68561032 657272012 339097907 536511873 941376394 986528724 980803156 994219811 611889751 730941396 808273156 968025555 512457630 789526335 730650294 885365788 248377273 516591923 321579285 952310985 37051208 222962086 683840328 939742870 95228177 297892249 430048564 886576533 206587276 869699041 7738831 615814463 11567320 430039021 707411138 788934619 946524210 950543283 132022617 198611846 605922766 880213768 359758830 403521628 309360707 445143235 309210534 628180834 429597186 949320818 233003167 458362252 539331624 906833888 949970717 956061312 762368448 769439846 138406317 963530570 674545374 759412657 417447718 507361235 290867889 870101667 17900464 575582941 718739662 926482116 152147651 628125755 223506676 839985112 767388956 984342342 660697002 928705119 716640018 801741911 376979424 377411667 418263821 844147480 718706693 756577984 897043161 912022062 633359702 637973038 890449746 907542587 691413646 926421106 671847925 844220897 380006974 727651485 395692643 456652830 813728788 950763641 512476346 605252383 817426962 907583204 894396350 914588587 917572393 918977382 719342164 727122815 351391032 834165933 459992197 787457218 565518581 696876460 109512570 908866296 962037916 976573848 775212684 976455810 144068736 756680985 965362119 967550163 551770076 792760806 61561141 102699619 424306263 531849680 462903840 538931455 648857822 709406358 214968026 946538198 321237494 334026070 315912509 929998442 430547363 978354012 422422258 493735300 821664520 986803847 966388384 982998440 803657022 969736967 61384878 381623714 941941418 963659879 809051820 854561361 79384518 303721154 161772202 746796061 739330108 778614967 302695337 419233229 793046047 954221529 802553678 868849346 304730302 995313673 175714923 455867181 575505590 811279817 947164248 962051740 217261132 809326783 70335167 719983189 289765328 649042912 389415391 827922973 826407895 899406117 221338117 896606973 574835740 796065773 236393119 397240296 914196133 987370589 347245689 883974500 662162557 917336173 611128626 777264785 865816000 867028151 160727865 824136635 55788830 786523031 288194450 322918991 576233388 773277627 911407391 974711198 446066962 807049181 400635302 942185719 717155361 940194799 18224624 51114480 873857206 945750880 772881627 974557011 372805345 401987918 471097244 766516468 134807771 882410765 598493284 615350146 910031046 963050855 846516631 875431691 378766807 570520873 2123415 18695541 744640117 920254302 230582074 349923524 228772882 983282417 582033929 923151410 861876853 920806629 148959086 704379549 881190728 927607847 80328663 83451282 921928401 939645764 584347213 804958332 683520588 939933293 290637962 897031327 892431173 984690078 513382118 911590311 533610842 850127603 218357687 906220582 28654526 191702573 631259313 698007626 434306383 724455207 574929095 846053472 265622835 305398886 43535319 158348071 726183794 787505543 954511289 970361423 945834730 997338041 384719727 638393711 863897556 870984830 212902872 365216327 771351423 903078214 119045089 176259222 322900544 609184589 463335761 553272474 423760459 441487521 500038490 776730525 770072792 977798026 520469861 701090641 458312011 540721853 861975316 931876644 707785208 739615563 476136038 620550469 915695494 992364211 531414051 780973331 856443793 953935094 920052514 989157981 718427925 749389714 658294440 789174344 99812350 554195524 794662509 933766259 341822325 861862687 696819633 979610639 862364208 983749728 163963649 401259911 329149176 851517585 468789108 566316106 342615273 976443592 760499033 962843069 608038506 746654679 282528885 608905799 121199817 501406723 317287981 785836230 933228511 978420831 815629794 921484029 384706860 668346258 996416258 999552776 377728168 581618304 512365330 850808908 578848632 890824937 953055128 990039789 927409665 989165372 368733697 372046375 304138339 559653100 503176602 808253762 725394052 735303257 4569041 968344346 531445505 731134615 554728037 723343227 263203635 672838663 358589468 734890553 847582356 883615971 468868492 818831172 154924120 653219953 532295179 938678928 654446332 771412990 452625906 998227153 631350636 641377393 399449130 634106388 357949878 647005341 415325958 947222585 593289621 809169020 770831312 890911157 973286791 991839453 902057812 926270859 728024442 861917710 559780651 733422200 186613824 243903311 498173000 889597109 138539291 741968354 114463196 180243116 214920327 621826570 326366773 840125941 891482287 895469942 495547410 580020705 523190768 838220203 473726782 902120397 874563962 962257780 552841286 693500660 142405190 910228652 458054186 678681508 188135347 524380139 567053388 709362507 773848923 786500902 350714820 899227530 609109431 691035137 280645260 838806274 451370689 648714738 917768026 960964451 620248000 717903378 688312167 886144643 577745628 928393353 984684038 986291710 863134960 993657380 35727020 699053557 573014881 855600508 486455159 977372618 586728048 703664908 888471093 897737475 356248670 546976979 982526603 985381211 930743405 966659823 735890910 949638599 857770294 993289352 103379458 227522856 28696465 254257381 389322493 791937519 121678163 136207783 301799906 807169197 618582089 642514371 313866924 644343380 213314627 935808523 138935190 868341682 117729844 232221135 169419432 598823384 222463066 596958789 515318092 559608721 414033895 879502029 976722322 987834421 755402013 870333551 689071270 765827109 907906478 970767353 660858087 816745188 512691911 642267978 621621041 745012381 239589310 817465427 364769310 922459926 989113639 994437274 99845619 766431886 942090836 947867139 318829742 974009581 947668992 996446057 612839194 637457713 389527345 961144298 966487796 989258820 596872949 780476978 70875866 785929270 615952654 679281281 700524681 990772545 427893796 495317076 569520597 690249196 168101735 551047685 627862214 792424592 497692147 801294722 906840724 956014115 513897233 969693129 250233530 604339746 90379826 148011393 228921547 817248651 417343613 898258975 780791266 867566411 548340010 666894392 743817240 895119966 540840127 884567117 271476519 965447364 678169957 728194318 322074249 808231596 599744802 682484675 170490548 251405751 348335135 363867109 642880555 646510183 311652245 779972931 789987179 905650796 157011660 619606285 740988508 804352769 968988874 976762607 442996759 794746539 680000657 977726978 125881628 189627081 270326819 565361157 468548665 982648046 501916593 706529340 574858088 728270509 126053430 626350836 232657298 961998044 794242061 924037502 246561925 999540091 52675147 254813811 883272593 995087589 726034835 764688072 981460908 995253888 598640945 764349257 787656276 878649627 466896182 911894585 639344042 856029670 531730959 876071968 583520229 648517549 853818580 978263292 963622382 972140050 17350677 398713023 680653110 691016525 884544237 958582664 323172019 667264573 930926745 965646791 954884051 961953527 994352987 997306964 92362098 130142469 440840640 638435051 46921985 944601016 90215957 828017746 230344681 604510699 166639916 514927172 362111150 788356063 98418643 455187724 226707315 557759673 841121102 877198920 836692916 925849176 395611573 711181858 360964920 392497194 259293391 684033955 654226635 703016434 710259662 837414863 420399307 531995645 537572952 705167274 136722381 314980381 232603845 733159157 827956038 876952533 800227920 846668374 740191352 921859836 50291785 586944262 39595580 372797889 780756504 827433739 286670233 889010174 964345748 999470796 6761527 156635591 39418809 453481849 583093640 687551583 819363187 945670138 255393213 744093421 116832150 156160781 279264418 341017107 905815315 953446727 783057885 813662675 362534727 676686467 834302294 932868596 474016069 519950674 595641368 785428602 425061616 932160476 168113560 518299032 281249354 448276278 294099095 600597321 119058304 539606349 209471554 757302322 290533010 721495512 884877545 927376942 639500900 653857485 511253063 798866736 436634036 664178766 89668006 702989392 566143426 611743582 710681528 848515191 875028793 951347163 431893711 863473974 892825137 993673594 602553991 712562911 720511047 771277505 398872686 924102506 801977823 943522361 777883405 945803307 289419973 328445409 66967253 638104447 863599343 933415626 206848623 824956009 389121588 948977868 498603329 605094648 708176823 860745270 50613392 898367714 994383493 997053640 489758681 811163895 134776977 278496346 779300169 827437675 135866069 442634469 820590840 937692778 789150401 840148688 78097775 291467434 279890936 624802642 507592506 685027571 233345695 337061823 858798662 890058540 724926604 756555017 584367411 615944235 416603245 612875329 23070207 385881164 979570134 986785981 345268282 909889462 509519634 611986569 489102918 956509812 666161738 968922910 286954392 595478938 936849534 977603585 126800764 583301526 561643855 845586268 236512513 307229136 819576583 912886567 899778859 914076251 40253980 426284302 788536836 847669068 941901182 973644733 466941515 594830816 817520481 843259337 540427125 824274092 379470402 504127351 976353154 996421220 530438094 909484577 134042477 612546751 965190784 992097820 686505980 927457829 82643684 959761486 909156056 931136664 300682954 531410102 408282924 640885364 676214130 937013652 211496651 710199220 112593586 607065118 753293389 955957679 27567872 724645195 159020494 712646694 691650110 889452051 133376413 435185492 58037906 221183061 385364472 479492214 43735854 494042515 93306741 742188694 638750314 663992806 398104047 868275340 731780907 797174662 459224998 918328622 333481811 696806874 516232312 737506814 995454298 997585721 345217980 485739522 51213221 850971168 949319994 998201854 179772851 264241470 569335566 900890232 410187775 901968281 46178202 569785209 435388481 823101598 37915573 633608827 459597859 978726900 693116887 817666959 37931992 467983863 366639601 472671941 373801533 596832615 307348086 584761601 692168422 805124732 691630762 979225768 155092560 440555245 553179230 648685141 283760286 746792774 802412082 892810577 31170240 639247358 866472089 992888805 436173277 974220553 237140321 831690373 13473028 92052885 140530991 863606462 279035128 673274894 833126912 914964271 754799293 880247709 889551968 998845985 586777949 967461873 587768000 824750954 199344354 832944735 918544112 972299103 67200954 205796414 758447239 951153933 931550523 946704489 929854161 947910710 685662833 767187386 205049292 534646528 841154662 983139665 705649741 830483130 963370869 992060717 129730234 753469635 715088135 814880578 827907191 984378009 198623568 702977275 600909022 898761611 223551506 551650399 491746093 790652722 766656734 890853543 876924894 925701491 709760182 734885970 805463883 821873323 144929373 733510939 452013293 720489988 443069775 869243689 671417129 720441066 355225699 927203302 338632545 917192971 351074945 542152190 831840316 853736988 544873715 631420424 714532935 922983575 536451272 697218106 545518144 592903947 936342784 991585007 77361932 359093826 1845004 233659140 105120455 811416169 201635062 962736747 901608290 941745485 540702896 713698928 681867806 854127890 582199631 831283967 623529654 939494819 278081217 847372180 366842829 727078286 914042821 927506828 939373644 964176041 290183031 424281196 192632401 202001024 368004384 632631725 701616179 821877653 972046964 975279224 727798025 798488126 247155184 259077246 257687064 493768155 709368614 972882688 339890781 602779661 235135822 782118976 752702977 951351854 419986672 795249692 727306989 894143977 178442690 886673011 989595496 998289413 338913611 518560276 484833807 884448557 162615737 919925002 993683948 997357921 184121420 758867721 571644330 698169502 253985163 440904263 942213755 952766767 340319595 596248613 499577066 995306649 595918458 991479223 401499 407955045 745481066 996684230 253667922 295149185 534720992 732558921 778707375 942626311 848068430 997624895 230805955 602145404 764214332 772832298 101289500 922292708 631111386 997836347 936407679 951412609 277536756 765816284 417757713 790449013 560844555 759226960 979371273 996223501 3124094 538626727 319211390 653249731 455909627 547157873 745166457 932417873 247928633 508956268 113314579 630815545 469820630 804611886 194650248 814486200 748489953 874316106 186433053 336847460 123078419 513773369 341619647 527974454 13761589 546164460 611761211 672715992 485134125 700060377 456264615 616976944 235767990 677339399 518572052 930366360 964651972 984944311 368229791 519550015 938107617 952134890 605654751 827587821 545117436 725471685 918044619 991713425 411313595 873525007 437338732 455113202 557115227 632631170 689375782 695777532 33093715 385497731 463632554 520583345 383117615 891620721 406327191 680899035 108521687 235637417 9297756 512910973 713337292 900546483 917655502 985451091 834898344 973750548 339679151 446864365 303174418 488145417 318781713 801706617 325642624 529957897 595382300 724301634 267391046 383507028 349971113 605292822 365550419 384216127 417061910 504561672 78261497 852686461 113358166 743110543 336543656 789684778 365704332 619402835 239563339 789968293 772786631 907792565 74640160 632946393 127574811 837981076 160244422 784102698 428531566 888243067 427374185 966541846 109767827 370343843 35762403 699328740 815696027 841697459 357470738 611924967 311970565 527934323 53372967 692582379 277317358 876572632 970695584 972584829 508361529 822022216 121490379 886268659 793077848 818712897 289501127 412995640 914385660 998509065 529094751 959376604 466471529 807182047 451197239 999978127 115212559 737505180 171551304 683698172 399347792 427988076 675001611 690875551 818064953 949718474 918851966 943411502 846800432 975395275 663065943 943862372 957352795 991256943 783053345 895009465 484010713 561435640 921715856 992054030 738682257 951012790 102911264 229562674 35768725 422390434 164471757 355575088 317814705 511405062 451591416 871276944 825632912 913489474 721063542 824016521 749033381 872923395 969844242 972360629 618095949 973672841 485422092 864472821 415366183 869037747 116135326 546156305 216078488 495285102 476056520 564386153 147886465 983335681 650641621 748294288 677334655 769581025 486940727 832300698 190960144 278934174 366188328 688787660 32445890 782097072 180687915 707781702 796424022 798962168 164785183 534136331 990794721 993881684 81669514 607771267 236320214 686032095 171675882 240008505 256428438 970509740 680832968 702049368 543941245 987808915 84078065 928605288 38358968 535479198 386940724 589783982 55024134 866838991 351439602 580292408 736448358 738103983 267188926 878668710 962359505 968060708 290475357 952011246 978526325 982771112 364935827 495064372 774566399 985582858 202149144 587823465 222712228 900893781 867089201 877513961 90738785 372295270 746604697 765147643 89739326 822064537 202162056 905028758 359032657 483698682 150779552 295421625 344484567 494447764 222607522 283939637 419600331 760976377 555234821 935862091 931434374 995328965 703718871 759920996 748028967 865337341 511411348 848137395 424992423 457560989 78828421 768134988 889395244 918851308 442652112 896531103 576893012 664283661 934452795 965318666 315737625 430730842 128350506 928740556 835318650 848485929 554305344 605236993 686233783 930747069 320179304 758149862 234087130 491196468 258986206 457320022 543138086 864644015 673051829 694025189 141151003 598454373 141905600 918353817 902516785 975890020 584994182 681145183 870357795 876718702 465817187 865823650 788027053 796013587 759986009 956234247 492584121 702056481 131977658 499520752 751901124 781969913 610130210 900561660 229327791 454173625 719110390 834494205 377746757 984336449 764111456 972454090 557787638 840580555 181438497 600171966 414036561 907162684 676094070 817112931 65788099 955597206 26356734 63912754 902670402 962812767 116190526 338798990 166221258 444370405 811788424 853460262 888241337 979772904 956782983 973313796 21884748 65634857 797714327 993443955 355189839 900026474 509064633 540847660 722047862 905199651 245951105 914746533 983956408 988610865 391791552 672163322 53336857 743021060 501591835 810016087 60427643 718821854 715988156 873066672 477343092 643625490 504352785 844323249 334499424 818590289 89953063 388489940 692644799 761826415 757211830 921280542 34841752 498544206 29427392 347568544 486742360 667849490 78041468 627277835 263867871 506796096 229017459 720422349 778826047 827487143 102611955 398027553 328167030 530999082 431944050 534609857 611316559 827074327 729549457 906422694 833908856 862004963 458354589 888828541 200682639 319721367 752683754 864373062 90764127 404632366 572232678 904876723 51963387 466425860 831743737 956872775 261183390 556796052 535494117 951357372 29318843 914986613 448690695 509994613 516334525 634248011 649432215 883778099 645288461 865404261 240595249 256877492 38424736 195481717 347949002 538970393 527827999 727081611 70412448 461666507 861528591 996260069 546185645 952966372 110558641 174005655 731005705 954401035 509198405 661839296 681570920 684729356 524113059 715404981 891505144 930249514 176556761 989320199 119428695 531925335 197966421 837023199 342783670 793325792 493932443 658471093 867715972 868844444 627658711 822738865 204970431 479531712 956724437 979195530 901489335 952772223 430815073 985795924 66345663 948932036 515884978 859613805 653408419 822902312 167706140 942064532 933276699 981974671 117653638 434711100 236094755 738475647 118693181 236885626 311433112 978099767 292690301 924833443 930678405 985957960 815716482 976382985 467793132 863031159 594045867 792418655 191850342 821677407 102520905 364639725 700112058 846415337 991129955 999770718 970307124 994875788 223874055 337245138 863062162 914973478 355937660 867771681 66265105 286044704 508650538 718116632 834461714 987716707 88445924 759253672 236411282 420990078 798164967 880943397 392550122 613485286 141559804 973060221 696428230 979861301 565752302 671612762 802913296 825770728 657480956 718811474 596397878 622632431 441259952 673056612 804096540 906072759 480831902 876818841 716381064 719883320 981065156 994042064 622422435 948275940 288842658 842796827 376379078 456786464 475342348 768617999 954486716 968269209 955319029 975318148 200069067 527300355 49664135 769862502 198398576 805949101 305253385 557101746 917595920 982282326 302747088 341957554 100307431 571644055 995256064 997950186 787927465 885162913 294214773 434175400 176864936 483812732 110458633 411107757 977375966 977551350 26669987 505669174 161772548 924934456 968746524 981058533 621297564 807474621 710260176 734955212 938560928 977317788 489291440 913090749 827594328 911482401 422687165 504474331 398146085 479920782 362809956 588053126 901991853 958702792 508221683 787399721 563713654 776218805 3240832 96942540 839482094 941226054 657558540 918344545 421720007 629136336 913067413 985968907 687441908 766488603 627618558 738201540 555841181 858905928 883314103 923697807 542869216 878907634 502151598 920279112 30176691 998078318 774067227 836756381 241333114 516434518 197773003 474992190 32952442 118517759 794536605 871772179 806905574 861766352 581677252 832299517 129295207 675087490 896729572 910188037 916830667 965356990 13961902 333695099 162883976 175340105 775998375 926269769 855883188 880302928 234766448 556026858 350992673 816808594 463105302 907055401 600335098 694193648 653617809 944017755 832720182 896261758 355255179 821725882 339430679 847228288 787715427 990860579 192358090 375210452 214345634 639365732 406429567 627159534 941234822 990877598 871025803 956825247 434518772 773701205 523141273 586704413 525069876 958125738 342855677 617459186 916414266 963275811 453315057 967780529 480417494 956616714 378915601 543433885 292405914 713638202 10342867 559095530 242802468 944953760 291972673 333075424 557071635 733893189 893884133 923681740 538473980 865628032 464960045 684411557 9154810 730887533 648077568 919900903 924940120 990708874 105930272 625003500 299888520 528314263 415128959 783904830 120286781 505808270 804188611 870693162 413341181 593143565 383823413 486641096 898651358 992981606 517556470 942264950 300409009 846444748 839551963 857258836 731908682 943389976 340818696 375272479 366179393 738394492 374182125 588743673 625347134 632325260 755346462 882018127 443948255 832747368 658395206 805962986 859474959 990531385 772969218 961922798 792804180 969789195 929549809 932598842 364759119 432411237 64183270 404465335 385993032 745336475 791736548 943973531 434380143 557270568 134284556 708602298 355813034 551479220 945591522 997736926 506744434 985089489 826084284 828860864 239981353 851653551 780302519 946860851 308951790 829980055 669339103 932499778 725873364 902215431 609625021 796821951 526640610 881660545 203038943 779571179 104629400 320409145 679572279 896620156 663943710 878629879 746597111 964390726 757309824 830940455 277752480 438318370 444511029 831649875 853806889 992888757 624497013 920413664 573816600 804247817 77010794 371087205 278954087 533343674 146184413 702802542 647970911 921294573 780901164 951640889 706932155 816389796 943028822 969604897 274778402 318083744 491285715 528515598 456327366 470213586 415468490 436310613 578905494 664207753 676034232 941988779 464943635 507707188 224138471 535574125 227395323 249182350 589938958 636850785 534752074 548529732 344152274 818723986 455128978 964565796 52045463 264535834 748747379 971772388 618089116 938809460 650717838 736379609 63424137 157007668 974521158 983670823 737606355 912452603 311119135 979713243 361590079 570137924 813687455 850547681 533963189 549602163 823225785 835661700 115981002 815319139 457938093 632569530 678959590 944642800 27316278 856130428 130086616 866960695 981686802 986580002 261906929 931035704 192200182 573364451 426484307 946519336 349371246 825193646 546369438 627968375 213384194 798520462 581682715 816120902 957613690 974484724 138901299 809826119 756559735 807702380 153621319 608405893 668903145 985762173 350249356 631638281 579812028 812115629 414165249 722367915 740047396 987436238 993677460 996868900 220287701 548640751 521299134 588374941 319936410 452425343 969476306 971940676 181318224 972904696 930575061 980478541 981383172 993117073 767109718 954534277 282440128 899784493 600800131 768893217 621073805 653120779 666353808 854093581 149949359 744770927 303398702 916084367 839538819 913532068 545548019 874226920 16791013 166466089 331649677 709950358 167296216 210713893 20267576 800703569 297580836 332145066 965143590 999831059 339868540 783226238 805815228 946725231 484941781 887599199 142549584 344854617 902150560 988648201 378129237 786809508 204656801 963589606 326770603 860718755 461943841 935363117 676897916 841324486 413161716 477478147 516571426 914115727 973104549 977012805 209563843 257254597 122736682 222736522 674181957 895677967 605991632 833504272 459227232 473453984 946427511 991095802 875511055 983588666 106430788 270179976 816907229 827574465 281215045 987427658 583168209 675936704 584059025 656776384 338641296 840139521 997154773 999381335 2635116 707189949 482646058 913936504 528828579 927861116 595998575 974013514 465386759 694351928 918742958 950519905 838025722 892155612 525012424 972733737 810773186 943452708 650032256 780667647 588862616 934357928 753594151 890943357 296221143 928499190 608634036 722085474 616185640 954501648 598893951 835959509 979741259 990054331 212288293 506675665 276606402 524127235 99927158 323808617 405349477 445649747 296243865 925889332 444528263 920212617 560528176 566552440 881576293 961746491 493263067 853018610 756332340 845961643 670161845 797891407 880342027 891101488 4197112 796429493 383011243 415438577 466341950 580483758 294278334 823418759 76278987 450327209 292267713 940840603 240052583 804000007 248861633 649551309 296511185 358241881 51507650 392002142 875820402 896482246 141918538 357211513 202651760 523971567 227311971 406985490 274320733 436984347 76128309 680267414 452694006 709413885 35288542 904797242 667322284 824114565 651947039 763813028 646139191 698693215 692225507 916834001 551564019 683429861 311533301 708680162 737797715 955912515 706031055 842969749 211954175 885861651 555608219 578096163 117907063 496006853 171165253 328045590 620250902 996260722 563008145 678578855 463095340 544438472 956978021 974966147 435600828 882183677 822499605 874523301 369982168 617314297 512015512 887691480 910192393 943106109 50218326 210435890 57192324 779839873 484114289 841589031 834547406 896083248 661056809 925674837 733239745 958730463 255731259 598279488 537874106 569661476 96093063 418810511 498940180 993494533 681748798 828864406 14612298 595013454 177618073 995759657 243168434 321393251 970754781 977537440 532769109 655145368 300131893 484876408 895855857 985999247 360365573 607327304 707440024 935580648 473703414 555279216 7863950 90871428 298157209 359079995 589910513 929897770 253252436 962739285 340083706 575428711 680745411 758322790 572619776 667703304 295080518 316613343 166545270 754499298 795583331 913570644 156254368 958448679 514063336 878220811 590228524 787923660 571572272 688172927 282086485 854529151 525331681 555166294 48305657 626534929 868886713 886588406 788703464 823582777 304675061 870214754 916283071 946322338 406060332 789513712 302504329 913199971 870803666 873020893 945716281 964970461 213389868 369164889 710174356 879215453 468611047 865680729 435759057 926220411 10580357 446857439 929498742 949774926 786542035 996860260 53837688 180816679 122046265 394333241 612865191 660276234 306502883 979157753 216020670 488627903 475658550 807878510 966872257 983592563 277661245 893343732 244376116 856814480 179031903 862151157 113222185 271717503 937595612 951621128 570979411 939336233 522373850 892044112 858676995 870103493 355771707 537480837 775703191 791408820 284124603 675167567 352503388 840536508 132485541 548233832 653445780 768332811 379039087 853589219 95513650 635215184 406379386 924309454 671425098 818567691 173903854 395528505 253973768 470152822 895780921 920966006 873418461 981898776 679984817 807397679 134244826 513976698 120725250 457823553 972528886 987244513 718436713 741957218 827658358 903102627 512767371 538103136 130617947 555276598 998116078 999507811 803292962 860482148 666425338 979745393 753248392 780948200 531847011 852085329 828371462 867818427 33745327 868980656 157505345 632591198 655095012 694227606 761378875 884569266 177934759 896362568 677444662 851006394 837742687 988349325 666064133 994433423 557803181 721424437 675171443 753157725 222961271 866942675 636960531 875839691 772455715 794592076 631917350 972415471 855761664 935715328 481858892 910827833 871195217 974711039 506527273 876954863 846857794 940698087 750688419 756001015 667034114 933147975 830181765 896339481 530417997 621397828 93427049 478603786 927065833 931002591 280049524 526291781 483591101 601559303 283925458 908874962 39068219 942002493 796038987 921783794 38920927 231841323 575349253 841835574 651739546 773259037 843939394 891718999 688889731 903102166 44325399 735971525 998533452 999732333 997038281 999785265 156925393 907409283 252507422 517789627 241829645 902707135 822912522 974404790 33759330 104791899 935596477 956084371 156651102 881889116 343057507 629732836 97028664 537932713 927432879 930613638 276339311 283840158 431514925 621829936 456572445 896117252 874379933 878592552 182602923 875988589 878408294 930618360 170823442 185796400 890028584 925263222 806240455 934710116 114845881 571422219 150635283 988623861 45005727 721195300 648042414 724197220 49597195 476840808 201751936 432552084 159509640 617865624 316431868 934233127 164370959 822797053 223384453 401591500 518782603 845002672 899057180 919902905 419087067 441169133 11838701 389397963 477400446 853831304 113763063 632845100 659391083 684284562 459410260 538142074 36757579 470852891 64997945 708576081 216181873 902514820 443969460 848006451 915964563 921484083 677144324 792485875 699382844 954089125 305028493 320484658 480057916 809963512 40088440 124905311 857280713 937117036 733359066 834860444 262648738 937412374 794746797 866974219 120073972 791709822 338158401 480575921 850656386 898838541 766193701 892694115 871275614 995430575 281185971 769560544 160511475 624225449 43313478 581561027 519900023 916585048 644714776 695267518 564713848 883539278 954560392 965222084 196490723 529380054 528064226 736969036 531389597 930966546 622983084 917915249 249500392 393090365 954835028 970852341 782712243 851000530 718106608 807124621 588126701 992994955 422554507 511468297 967479159 979141809 547832020 615696208 747565311 867131991 560280201 640612633 24084818 989986998 459300662 533049768 651126706 865971552 780826820 930145954 27759023 858684201 334469056 527283957 828290090 862269269 23857919 112095273 225196077 648190362 359356332 693485114 239476438 882094631 88957061 447673242 294711841 425196338 676165975 715188764 395987894 546808814 58550054 326769935 30465235 969921178 78614069 928009130 887593022 947474380 657776213 869958333 424981117 532889809 720997800 876979787 772222408 982010093 638839773 727731568 992647618 999926591 606756879 836292911 799474271 998405338 441691324 492069595 179453096 382424129 201284130 204091918 992759741 996752388 174745555 429121700 74970213 525837483 552023087 752234295 464151347 803368479 135676297 850653737 907331573 920581260 774914048 893471959 685461348 858023813 369116115 485130619 141099549 388122271 390036830 884186472 550989779 858102722 558375379 827223928 63303496 445921778 637254312 833236881 210554309 350895601 807136246 900941206 257532931 316289892 210219692 416974777 429156708 978097976 286998504 890724142 785559580 791397417 946692836 956535996 917239837 922926052 425230065 711235472 537172973 733740591 691932657 997022369 336698172 375707339 866354411 978652652 68090312 927219082 155483024 472700588 719641017 963371223 2923853 71716510 932653939 988136949 822738115 971620202 282876424 471546411 760162366 979629702 256851736 457696035 695906760 946872479 282523753 447371097 520577528 881387680 496343246 764196869 67804131 702122254 598411481 704501851 805257768 823013557 784940136 837658505 178808011 179840781 64112495 596252956 140659716 922262544 462415028 568238314 760339285 996818028 362407417 683322601 71184792 817070950 821903469 847355504 785625999 986615834 514934601 798439797 265891718 813120164 315557131 541827190 216435195 884503024 785398751 796849429 451784180 535810949 720630369 756464793 857601226 929925310 842826024 889913899 463364685 982429179 650969813 859300535 726007306 766252331 267666515 571799456 23094775 532479172 481841981 615960463 340698358 733512975 591718785 690493347 870319526 951766724 121832793 932752711 134783308 309609531 519028361 625425469 23985246 158819952 620083452 718135648 915531037 922136778 387345712 421931709 503177378 545591084 173445963 705844419 669970783 975737200 266054883 357558624 622693067 969587626 395847529 795970731 827188681 830478461 309414057 512484931 975729394 999257860 457129330 956397455 798991285 884387472 29666578 613694637 476835110 610828707 251960639 553064162 932715731 956839447 931570454 953341700 836314263 872706740 75647988 112556766 28984724 312163042 609404225 882900313 194425153 210700358 807456375 899489670 281356785 912271089 616288233 701952344 705450529 947500750 582969667 733360085 276347620 649062198 863600476 935279223 549908776 590644785 240855233 798646910 996254148 999745941 137415033 344976561 27643946 57136534 754594961 764149561 671002005 891247234 863023771 982098948 36947929 710759591 749805022 980974013 867887987 920367833 432126655 527572510 196595351 495024150 115800017 930936491 221427034 561722500 808126736 990845052 131781320 347134208 608024304 998416771 677439986 778968869 392928876 626788121 191770351 721620250 247494965 798186169 711480814 932818214 138716955 773925213 735172877 913319667 835636679 948976265 105339148 526702939 584433560 960989533 638770827 889641177 567392325 637487336 880180117 886094820 320478424 713150686 716284990 878460173 975061185 983299949 520522739 877672185 601598941 714074440 400194235 936689286 46455811 64773480 336266304 797907128 165723982 449284089 852893446 970987086 920615510 947610010 80492726 518618693 38433534 388968086 88642395 285748126 608290036 756358880 902572731 989727335 468831492 830704084 231372606 416834652 500860961 813612995 131262931 711825181 387330956 584974113 661724083 846344548 25404503 134876042 631539517 964117300 58307481 943683970 796191230 867493888 165038604 423076732 226341400 327936802 957217526 967186840 528612343 614308894 30524659 466551430 924112969 967136869 250976141 299474031 638450045 963241471 313474356 455865179 813340713 912859239 73339874 238353929 849728254 855135322 434436443 781052276 491394562 909215776 852906257 954685616 177680672 587275024 738889699 771677641 432399142 711023734 255852516 561185636 738905478 742915950 291191920 860841471 252381208 446704252 343846036 636235374 523408269 924229827 946571396 959797529 489052934 617164505 991670207 994384710 17663468 821058662 879106372 973379608 652032146 953975685 989999181 994308461 944855488 979776696 452560654 904926655 333075212 352774906 943525038 992851844 319926532 632847463 429070511 601814927 742191870 831531881 404175146 953159237 559290794 878781181 912203364 914504714 935266524 951030526 465883451 975866311 571829457 958463822 500001426 725693087 933805334 973829241 441675175 742888541 588159216 903472722 767756851 825951868 534495768 549580885 412390012 478148497 139120213 646962925 252380953 849114934 848937934 951719827 580440577 591007939 350342994 539432467 213186850 216763471 946881328 992424390 803661022 915191129 592736858 882316216 933095915 945652446 623175081 778351951 795818978 812668609 61375361 664681840 798687330 940490284 205192460 461180322 901360222 923785377 6036162 488345005 245544450 879052419 683703173 949868559 324963526 903140056 585427780 796397214 218859824 723058017 569584292 973423794 783993632 819488572 66312033 144865478 932968027 991336454 366728276 809422618 227359467 351282463 929156646 959765446 99001896 972275212 555886883 743201915 308574149 420841509 366436133 389871117 240705977 588853012 22150890 158755615 323879911 627652708 903353111 998558690 927230790 995382932 825377764 908733350 871836864 956849755 839916911 976853311 585210695 595380061 722864967 767188287 972877782 990841767 364272814 942435301 848070892 928361360 514808763 576456830 190159513 265569462 368821883 594768870 14757740 46195327 723469322 853916285 331955806 552466556 640904156 990288945 874304832 891473312 80055988 537509784 345746429 716895950 677510109 967229979 549010190 776595996 625155790 906907701 374635414 636858419 649358949 855661338 438685169 515968673 695122001 799221165 473777081 823303926 599525574 973704627 81640278 231751677 100426955 434264640 686199667 796939795 902968590 939022598 639431038 875401331 573116053 936759688 414379278 464250045 729603550 838355094 147998566 388565418 109536997 819645972 965562892 976937776 70218935 716433032 860693093 880000893 43535745 569050455 553225695 863649431 336211565 391456366 501262054 710977057 429958080 851819251 725447950 975275083 461030042 579318031 296458320 843821024 874080521 898671788 91167678 779347477 372271448 791633998 526117420 567387865 159542250 571240864 356507675 766080416 486547041 643742949 244856408 744095270 853067599 917447151 4842914 817802323 630927950 808837441 707531791 808882634 439901162 629379151 135571343 594974742 224406142 471977373 979969789 998828117 256534477 913425241 799704331 871626474 989599080 990859794 623104482 868273350 701439824 792759489 657307661 697532191 939318371 980502590 448898201 747271796 715746209 982689723 984629377 997628872 114511187 160296136 488277984 696469912 480767209 642554690 984974651 989599742 985849882 994452921 248984771 406908245 125003560 388397915 856913630 871210138 565759425 832020766 305609451 812834836 66182165 868349451 594796551 908230978 497713162 822341732 28925880 970806681 30742919 166032665 544582192 563571210 7773045 467663130 412242173 716872180 459221953 838445757 331825044 471134714 871046159 958108622 992110768 999613256 685728948 837919020 626951261 837400737 188588398 727849253 54037628 377158491 993527128 998964290 780001854 791778680 812365941 942264826 162358602 606767516 352563564 803164199 532708858 684847876 854190192 963123061 320283137 521008448 625681635 942171955 562121553 881178611 320953570 788184878 656332896 938500278 793155877 972192279 356342366 492479823 728039344 940652289 661564844 995504438 96344124 316056045 5500199 581419238 651130409 774462697 83275445 167942451 274915533 308575613 147812281 881349565 327681915 371023987 811589160 920359827 648660286 801557590 208287656 235142231 92724707 136456382 687664781 698046990 245782448 257929771 598711735 730405104 359873061 699016458 965470453 995355582 853681699 976485190 869719559 908088426 323251765 740062909 295365533 646808076 258797882 622752991 756342152 978186802 741526427 921544072 855642724 918133229 686034950 828277713 806027851 810008221 78946862 268814263 501013708 538828975 860658741 869768613 157229829 485304061 269759019 775907867 830565916 928270189 935536039 955035920 993752237 998114581 373422483 880484438 57617569 593633131 870401422 940822821 375799338 529048640 470348557 501248914 196029458 930538912 870461617 881282242 824141698 888452400 935527127 973935841 425921596 591625172 101193605 358344212 675321729 767840372 12653581 340523548 105832564 663501798 766784271 968083098 235726438 293009538 291482879 447568912 588994459 885674127 235576041 677910150 949637126 989498164 425962573 438729458 715008795 996882651 360502814 632360464 743291559 984825721 243873890 897334840 43370469 709303365 423201532 832277359 979718890 989646097 668259198 682755883 333937174 698024088 593476183 815081202 658991517 891852710 76293961 584509959 826530331 962603633 62277192 289285474 113715532 625763282 861439237 925388112 938621208 947328000 928756137 951817390 793388064 992663450 906836203 989798379 531276462 561354975 262947131 576112009 302090434 786874559 151690738 950296450 407966532 877687910 833709066 958998775 114285536 371945971 266749821 428489558 517316033 877569134 422930667 575701283 66325496 601140867 183059996 630285129 642404639 938138337 332264325 482292401 575947645 611637004 71004271 129923826 638722315 954205440 441676802 889602021 467956415 491382229 267620596 320361431 430336039 541130877 218819502 764688018 212018860 281293232 888829143 960123721 998231693 999029185 537225095 871864474 704886039 962891582 303017825 991343567 498526004 846354092 47777011 292554001 141030673 670775932 378462094 943874787 783941728 958206959 30556353 639301319 729559180 976416378 680922219 908051016 733094722 863746674 863329771 922859700 588985611 857684618 910017055 984005646 840605268 950592268 664535160 767341805 760832461 815347600 686066861 990391496 61791552 641266251 187848034 503601307 900265373 946998318 373678934 850919844 115201336 990528907 256655902 856830494 597819098 922400363 436935801 741602624 932884633 990759402 849631826 936654133 762291294 851082818 81031562 206475950 602595730 715830712 913236047 945297364 245463187 904944025 453150362 881263218 106158767 944479927 835393106 991530449 999418711 999759625 254107822 344500430 871271396 878149575 409811977 928857238 384259815 614586373 402683705 808473113 984339313 987430904 720414095 787727904 375685490 661721695 251059741 507698030 866566679 986705118 536608345 756965956 645894742 784075931 224294241 300130256 592904605 829030431 426393447 812903732 13443053 38278612 240968401 608764861 252620905 893436140 998722314 999262791 294459672 734752499 792115155 917033388 947753951 967945680 338070510 767441468 839863168 859286379 118685113 345594848 807068800 909096883 996686242 997689929 358761921 943849195 80919599 775030130 676641390 850485403 444312588 952617886 438825827 441011783 72677662 848421939 357033300 945891607 80291864 393246288 233132923 696614835 506349680 566166311 513570051 855669585 973284724 988973374 952240402 985704774 634314861 953102066 395469909 860652465 456551330 595025576 395591001 542371115 33683293 130461966 276626388 533447321 337705923 663244361 902788029 945868096 717231831 783400905 707945651 825962131 25558695 103916266 689420799 754404675 259249238 652108417 833622879 886820177 99059575 360194806 10934697 622561091 985333864 994633652 912173790 936521788 811676401 863281558 710756703 775267423 102482099 620388869 357914611 660883429 602700945 940542603 811159719 837499578 721668223 876867147 587960683 845023576 292634300 645657315 13611660 393941076 513203478 612880173 483281623 556694379 61501892 795801579 708051721 911514485 583733718 688313182 301559782 938464977 112511430 588910611 823226518 930527265 443515171 641157970 780769403 943426594 208173214 374843526 418380111 770423556 843311160 940759492 394758262 946292056 505984305 528090260 557499767 775611416 185584974 325889746 96570065 475191257 687976226 833634203 602554251 727195776 654908444 904592343 704388286 887696918 766618517 873246036 831336307 953836056 287511124 511614585 894209387 989707621 757528823 805999027 828181167 883102551 523793165 721242729 395272532 943949681 4570190 369044950 666574616 741622131 745116485 778507383 938439913 941350372 335510867 648250946 82262333 914307323 531084414 552007137 489678002 496602655 1718260 189956214 637645989 908277594 280156288 833083792 488713605 762827098 335324196 867938518 960930655 993483580 1047151 253595276 26071572 956217191 507122152 692694618 483651396 641451804 569979743 697658132 428501612 710897817 416837268 419103580 991755642 998602144 288650670 476716961 58568173 848335453 334535481 397746811 83201982 307416126 647509169 918375609 221786951 503606051 42995496 568781720 131141314 567256570 434330491 929636054 822072280 959603376 22006910 26174516 620881289 982046960 888162520 993919015 838112819 968521787 890836761 892685147 118261854 926615486 588506786 757123184 102600154 430985116 132745139 830913759 531436256 791112455 316901114 848362286 235222789 983660073 818264382 839021597 391538416 726694251 343409262 716553040 126603771 967964378 885369975 988745955 365255234 418395668 625372707 671325361 885486191 920857575 957917372 964076380 947307378 977590822 776189232 892307012 628398180 927494337 632509340 983243615 219122929 898862593 791477619 960373448 228893256 323196412 709982671 941787289 479502261 612454979 15153255 794459423 762933041 944877837 331113179 883822515 64033504 422797766 688569985 964869934 666734235 682279216 20227522 395088579 724667603 867339593 714555684 795695017 57547005 492724093 76502850 156779859 253436346 992756372 568020292 734959782 960532637 990194592 984610225 994188126 72153025 364402403 651922143 873066302 278948196 757180122 602746414 924717718 196686335 359227097 272457773 511504042 174090229 378096141 824333056 976053555 612199209 866338460 992526318 994435093 815802552 830378175 851061352 885037511 863059929 944726304 525664175 615149447 990097795 998579771 800321849 987016529 12770873 162103464 413410113 868973337 423855780 666829190 631079482 732648657 309930705 600839330 545475049 992293963 335529290 986121168 967256179 988066636 905284795 917185944 761817291 936045087 253760433 566471039 831632213 904809483 700175102 880826538 36423414 984170977 768144234 958095656 141697219 454741396 874341398 920372071 408057432 743585840 946351975 952609679 520046963 723958080 588770307 870435569 163539564 871002018 83818022 689352069 578953373 738882771 1818777 603408596 633847023 699039770 655190617 990808289 681427334 859701448 524532667 972269637 567364208 673380990 542157038 612414707 201713764 341510108 654428369 914573230 418918650 418985061 276047858 456986197 879287722 995051999 867014974 952402174 497184454 931279268 788545827 974254461 226223729 843672695 926398204 935922361 862421060 957987728 725195535 959464032 939906315 957718796 885646277 915448172 582181186 849724101 180324728 537025566 786711750 997724004 423279954 581288656 471570135 762830194 844016404 913045482 963907950 964317860 829877158 946145926 280595883 867883510 680593114 753101202 701827148 744197882 358741217 921883438 98487653 977788063 734180753 739568814 387923525 951516513 955149653 995477465 216355942 623699940 12447519 488053784 139224232 729296592 182615556 186537482 18397359 640886388 906333998 918514633 495234636 514068186 501108891 776176114 476656307 775928309 294367856 852827338 590455183 865785348 727046214 768064904 511960489 923326515 827138408 887108906 256050069 760571591 440494467 723272387 548516534 902471583 468575234 737978217 696145503 757578629 995128271 999563671 273360083 281521940 326861744 960522082 796636862 981848923 165456374 358609862 265422471 419986489 190901182 650554642 706926904 754424912 968137022 989152076 106080681 195598291 968225594 983638235 687048077 936074362 53490702 848543650 119258535 686639434 300132630 875690411 920569969 964855796 321183419 782124596 919636863 932449104 842204153 976233607 259087583 322881120 540941990 653600138 883224953 972870165 851347855 864023180 47516932 282345640 762543924 980902963 595337794 656418025 403300875 889366973 361129202 488627847 693777165 742239639 610752334 627819872 467224568 676258904 69171852 528111872 24015921 395140956 313355830 980032161 214689897 564174300 532379741 852238394 348484543 759606921 621105255 929075482 495322126 612835762 703920481 791354868 257524167 624789234 902772847 975831586 570196372 715882543 648928922 706656248 642302941 985095553 411023782 461479501 542605202 959177043 390725411 567947380 188188522 390140682 749179159 774316921 203445076 399627127 190900213 336544730 794170415 868918472 780557798 926133542 337249215 658121084 711433664 851986962 173662222 641077841 647244251 991494592 449820513 494799371 803741755 976148836 629507028 726766728 911097458 939002269 945146588 994559756 784395726 907908883 741723830 920736918 120767267 437036755 445937097 702642114 839612477 844189495 806124247 918905876 874634762 972026835 183623928 580027272 378172658 942210324 988652797 995364197 140234748 850406581 506611093 715104408 581267916 785701626 410250417 876543128 172517167 983292761 117263061 983121110 216542772 279321096 80318387 667062341 508795116 813948713 242745810 629583850 977227697 984141803 640629350 872639208 109851147 958826845 677076195 769086681 351209941 766452037 716497011 741705931 454668297 790554194 935921105 995950962 538130508 610798638 633828680 950296654 539871117 695849972 987335236 995582542 835324258 872110393 806747118 880977844 748075644 976837398 439316430 555085030 411252229 608017510 356781699 750450102 491551526 494161383 126356748 705169329 309834392 679574592 515079613 843880455 158096030 751864020 531489122 814000478 380813187 923348917 35707526 60599312 538163888 557640982 150253210 305303018 154379618 669171744 971737774 981772036 519079450 683950384 989666492 989933616 451992284 611983879 721834675 886297207 30884638 433207366 333843401 908260750 898008829 904301673 456508877 759872806 398441452 445398055 357078669 461354405 965954271 985895202 596958391 668913208 476976081 833885207 168045143 754388559 920999253 959231705 296104560 865112670 291192198 758802664 924476326 932844704 850353957 900145673 563460272 689959886 18354511 597267523 212219497 518851782 538931262 961172275 620281513 714227816 904872697 976145605 159449537 195045092 206186610 500833709 402995310 725023597 768482607 934527811 838825158 872276364 397735920 772324893 647531831 905518972 513365936 829334512 673087982 852555254 912989652 969618489 761720298 761960003 326094832 804297329 533909793 567210709 134505608 313039804 442049382 922939175 856025250 880116282 357614608 635432805 339076031 978202265 445750455 828273709 914381273 919531083 387150695 891277552 21120630 960937440 318338872 553445306 200020685 826101782 431019787 690392091 126606052 905194288 127901306 523322346 44862846 764733825 298993438 603696476 809042429 931667560 10638181 758466605 284100424 576668820 191019844 682690995 587138383 589691327 705310239 960948717 316098823 382825263 25312242 59232856 454027786 724135713 875535688 887910066 818077252 855548279 830062272 867715975 456717943 506806469 717805337 763504155 503088941 974732302 309134568 662775528 822449389 869598205 719079954 992266277 799071754 809244667 472255064 508687073 814389218 886846252 849630242 976378167 704311772 789139136 88434796 290911937 963304750 981765597 926649425 986853311 225461528 659983976 822368566 971845978 900207890 962918761 890516192 953324153 549574142 674152236 652623257 655396641 984076844 997227068 468592744 800731121 278298084 966312505 104965086 239353432 243530134 925294121 10786203 121599148 977470372 990457911 319780130 918056137 403968617 956902365 770643773 991084328 952494723 999745108 687664756 714993593 268649747 943843096 152569045 937552033 936951693 951764439 739815406 996684513 547133039 600700001 873868664 897197031 794356305 809455845 389752815 600581394 991301036 991345644 300598161 668213319 986055307 987835610 561177672 743368928 928446861 941152879 328953549 373663030 203349037 239498617 176719815 629331351 723724548 726854763 466133756 877317698 385993486 820942743 671151075 682737689 91044099 333195206 801375746 939757136 184779530 863336031 12625414 166981900 858518456 983133155 697842095 870203186 250943166 636250958 52025838 880599510 683993970 748800229 409806103 839869967 711648837 799313935 74491468 185605637 524985594 541744572 765914101 831271243 712698376 715245695 649599737 922688336 628681737 932472250 197720604 206372305 81117557 160408241 255777630 492120378 83174603 515879084 550745609 875610678 477967862 772871659 705598841 712210939 705529001 909833517 960748514 985396748 701680700 783517300 755339341 836495462 171119977 845602979 373684820 993901419 145810128 271875106 516982926 695487983 100225399 478442926 931851926 986574360 221892379 878271915 872342300 947333998 467212576 549045737 190166054 722594360 520576705 826904922 879074652 984615895 529639641 991011022 642510657 756875186 905108739 917585865 944144956 969635272 275280941 776377527 177723015 886875823 587289964 607874470 12589765 601239705 668261524 740112022 682310264 904355017 359463228 912375551 771167545 873918470 71840673 726309228 825157209 948399174 738814596 828323519 158178985 969617832 559978925 955765150 221840326 292553597 885738504 914854412 446174027 955688018 654739096 856333937 59522461 403169347 652799460 866318784 111487237 400635785 983180646 984978363 365860113 896855818 708433336 871112343 762546693 917129833 691509725 747352809 895760127 908927383 560392987 872479713 814145253 941208933 899192935 967334498 160156223 788363184 696849374 898576746 219367144 311056820 9085794 580501300 605260012 914460460 306468118 732525244 50723533 164345599 754324071 804162847 709286922 918221197 772234700 933676247 612378682 800286660 438321671 991446199 614591880 914008243 146739018 995604697 879336156 937806696 42118351 287144660 577464536 782787488 705970838 986331705 328984408 923737019 684335091 971148080 623344928 625108623 943055628 977158837 802863504 907164361 913948843 928424175 991439363 998333279 387657571 912728485 925843870 961519161 655101279 989759371 406817129 747116168 542556598 769714036 942060037 975034908 748965093 969253833 33273013 790929404 122602613 341292238 141172765 846181769 401149651 539007014 452018744 850893336 409904557 894687326 757682808 862477829 960228664 976600778 801629554 906088361 757801554 893170221 625325441 979078824 694847656 842876462 423976607 884182025 298005310 516268089 550770265 776984228 246789636 454312421 523617197 791562484 305411143 350272839 767317211 926903079 858722426 922398909 93007692 775967677 851404168 907553855 958976421 980702953 310038789 319144369 386713506 423094624 315243713 897465371 126953076 777589255 394248425 696287305 975791990 980071466 92828502 322723725 514493448 678105090 289824022 331390633 944411987 990050021 861997683 871316926 596572465 937042370 710094850 739721157 254997203 836300159 935970463 956235664 351400263 679287309 871499527 898746341 943169221 973682028 652596660 689064802 587202428 706461678 976935161 991682114 556823985 868459862 861691515 971616879 662335312 943563700 276532793 644356530 323742981 520640241 947513404 974327679 200774276 257939188 299214994 772805513 477264143 598480932 564142670 814285928 67645984 640552354 933041001 958778819 954433164 995996337 621857254 788128889 451987908 797243958 904945594 988001545 719568889 791348112 294399666 651818048 706173790 770362825 921912187 931895037 769524961 860877479 24505436 615385820 890031183 981024378 431780481 960424127 577755274 971183401 332879632 473334932 719045678 938849725 682879785 928801042 510590456 674843897 936314417 936912979 15269893 229039910 199554656 668846629 920723217 988651506 768356703 887290311 416585080 513334035 784284954 889445303 183290794 495678578 44423722 368449194 83290957 599682933 798235138 832287870 533453649 936771334 414553318 617232390 585801975 907643782 566548095 800738221 917912052 989359319 158907351 311317722 485984679 934677533 542225186 551660406 735182651 987635875 720026838 985393481 310629165 855572256 774664097 850441052 893092971 946143167 861804588 991491509 445061678 555662968 782556853 996086660 941948996 953065497 53002184 402602304 662339040 932251076 725832134 811592762 301821505 938125412 854929603 904384170 944056118 954103067 396134715 946675962 429162081 489359142 153579329 832220520 23381967 718803721 20712854 982294789 907786505 958278697 878591335 985199780 785297640 831026250 439150275 912440594 801004061 982623744 978138534 989157164 126723323 260418311 143932268 390650329 728059256 849630587 667639414 716644463 191579514 708846156 613236731 916695221 538316083 914042660 480306596 506256203 664601811 701453538 181805947 644162215 275687477 677442239 888710663 965293342 724580733 931910938 607860240 996987420 964078869 973259023 370863165 672883656 45455174 631553825 983818651 991486208 896466845 908484017 747347809 811041475 35784682 358662551 34198575 935078034 383064655 452657495 586628606 665767195 242673125 430878288 292714694 454577780 685676075 898195709 869138649 980716741 109580101 153222802 777118068 849141971 791218473 820703593 899360299 981867757 643307981 885102558 447262371 720834071 174382653 681631713 111483944 384194487 314651488 543041028 231176124 438572695 660255701 981563513 427867700 665387707 391959550 479820607 476693106 842827083 791888247 812727962 248060848 546228699 886719766 909762178 323098993 985664418 413982800 762396057 255423237 720164611 693541999 996560492 175483579 673676664 240937548 824925991 556096497 933792709 193185494 858365188 547659573 750657793 831911884 974137307 504851934 833043036 877727103 950171373 202232843 756113266 693640882 997672803 262443963 593942592 949942543 985195663 699532810 802376295 593494490 840319936 634880949 760625727 102617019 898479539 307250701 446538244 982183405 987577842 608151676 612895550 961039677 982725782 855696770 922382976 833832211 903537812 65019383 360539598 225645982 902027395 567214459 888299451 759623073 938928170 268080344 602357256 952997606 964587396 575343144 874043273 932604046 982151576 270671420 808765432 732916039 922885381 667958302 869425733 76921542 331989048 63552408 324882076 59143781 713598529 795049352 878953189 933674224 964677500 380898034 641094675 862541351 986214697 815492073 993482048 818112508 869379506 25488147 84895444 214460053 229634444 852199155 900434800 9580858 413364740 898728743 937376343 67744105 952657302 746268353 888967236 55108583 887712220 811702168 865846691 716943472 937474620 844693768 919190329 965181988 980326498 206982864 772161007 910997835 927764818 445603209 769015398 5988509 221540386 589140506 918044762 245069884 292837721 221876801 955260469 731260234 873603484 230390688 392293806 688353117 954328570 598230642 873615602 32512336 180114394 188191595 519594530 484641545 834186327 169901543 935203838 588797910 861943405 756193210 770899804 343624258 787725417 644717217 754721970 448337436 654047582 961627780 980422766 609164118 795444473 143109234 189239068 365532313 796678749 125526826 195030418 65206262 628390987 199024985 240116061 285411487 880418538 954613835 963957268 915636453 933192328 3079148 603833296 187105475 953617145 189771527 461565338 284993336 761063734 30494478 536420861 769470991 800359476 226145898 250149234 585367946 815323414 467388251 794664599 235962824 836596313 488979837 633354858 409290980 454585975 427643670 635812387 663865018 926121284 920024427 941978960 773685240 958325387 186520786 190460105 281580759 750013903 862361506 939608106 389626965 408307456 662562189 938050027 29370869 182177292 983244651 995910971 663189880 760357595 54510651 87050397 934863544 967664967 178150646 638798033 635862182 814714107 50585570 786079325 812542975 930805042 940379185 951787307 870066617 984430239 460992813 743897470 491058341 653323764 700373800 821554224 893385805 990140094 774406454 840316655 504081550 934265039 632329237 939080734 570150524 738122287 863166944 978804002 642106952 819042540 825315274 915953216 763893996 961983104 674943707 805470021 531081271 851326450 603646813 742988603 140504494 935335123 458920650 586763175 76714495 194362411 121892546 571503086 139360455 358959260 772208910 880809147 907997478 989725347 577905158 689047008 378801652 667450698 741360215 868458996 867723547 928701344 755268166 933917658 374790757 645929641 356781531 612769470 845905563 932832478 834679254 948743375 66097 897416185 648357549 732036198 735943077 888044223 654401813 656346282 394990925 530033173 865551196 902032423 208562315 464387559 16796276 288325977 801004329 983920959 583599541 820964424 803980323 968560018 696185538 721204814 424823957 565614996 367673761 606582832 267967917 658004392 72737772 669025743 837290783 862593973 355851301 921574693 781161753 840082755 684478197 775913767 703087853 809277234 223827841 340060644 775425030 976065336 810997431 811534768 600611207 898222902 173492311 935148055 397635440 539527401 538107546 553544471 566771899 622204455 954255847 974302622 122375813 900078599 627144478 686886144 144466342 644976857 394754952 540870105 177066558 314900264 594335447 788141124 904427506 945855961 688986978 789860731 937543389 963204861 957727082 993778888 905074787 965158786 147880134 956407253 689609676 733425435 105086429 652935980 258630050 618387107 52948903 171946238 489499750 877358137 20945239 78655249 286485939 385162373 176152170 705629905 899217280 988266457 701539882 876128986 246928125 335673761 559242278 928823207 363105313 785684109 22926154 487552212 469160657 587231404 701312407 946161902 800131708 862100013 160488764 796546636 656789093 669186832 223902547 891898774 76308503 92659318 665105548 778632053 856033128 899140886 282973364 346902974 362032641 668729159 396397713 770455067 256770486 645298898 918621052 939212102 805480499 954051982 794373428 909619599 900581683 973261490 611609974 645329049 702645677 808278530 922460053 996825166 89320770 389922879 888296526 995451845 392536066 826826864 607796345 729221030 624937676 779975037 306275575 606159244 929120365 951197666 829271433 887284243 706006768 906772371 395533538 452666681 806753268 852276168 282512995 537070743 704022694 729966821 416981029 958841084 959024487 972063834 994090370 999301903 216862778 365110748 273285424 299838818 933784520 979756177 101131118 752572482 91908535 634685771 58568376 254941671 83724646 607796111 798456190 966623186 111140624 529306697 878191259 963410780 926140398 972830688 685484953 800794567 860939660 915027875 109077241 264189279 958708350 998291003 770598657 802799966 183476377 517415846 616631147 742961032 205544821 980076811 190482085 842761407 13629933 701627872 131547024 663063411 327711756 789514734 931260847 992515284 481742849 680352292 535001677 536813133 746062960 766982052 620448026 749741590 763991132 951137591 609154877 824308889 164491192 314377988 256515687 739677563 35984405 230186793 815502090 988350437 548962647 843445955 909830633 978533223 101199466 937267423 976795985 998093389 389239596 395899838 330510111 676671463 988156799 993955781 370695298 785487776 541806759 870848927 412156415 868352578 621920739 894739551 289725449 728553115 824118153 864264799 692904546 962536191 529260225 578913865 42432193 993120828 978766605 998818266 625623050 766448007 362840701 709270682 765980605 945852212 542287255 586625375 421246217 543869423 435126889 491276997 602933531 866311431 323504001 983828033 811183648 935950192 596888652 671362853 55333263 246662821 717904089 820733688 594984846 685248771 951174728 994623840 155082342 426009256 241024013 722988415 417952012 720640313 661823885 713385776 592362929 901536655 113373084 137038929 992272475 995030761 103608244 369900616 298100760 783121527 576811150 618883987 561810092 670668309 246680030 764185033 548743726 878947945 429222787 647369841 938517617 985922984 846240533 969003805 866642274 992751972 899669857 925952886 390058493 612649673 689874640 998795204 620981598 657498597 988188818 988356792 190303393 366336835 472250808 710894256 422745572 671662697 291832232 989821158 771191960 862337847 702848866 779844346 642456542 762635239 979238295 983635661 504477918 917940834 777991679 780577570 713412363 954623936 837940772 897435875 616268455 859314375 112839944 777552949 193010567 922814922 911875395 990467504 352920802 912782331 903662336 920342823 34444616 691786712 829544942 999914302 499819041 693356849 192880873 491014133 882803312 999532763 398752998 884799452 137702785 213673849 893213297 977347838 764255812 781921672 280156919 537604959 487622969 947896890 69151377 856914824 131056895 811492633 318181691 408436729 517043945 893255692 853827716 854671306 670503681 734127583 359053543 566495890 278557974 987817337 351015780 680168662 810946130 936846084 390768412 828071633 294737186 850027111 171244234 921384073 773124261 957954372 44123754 591050136 126646256 457045367 491980297 706669504 645499062 726414832 295428602 300035864 547091389 556746823 548209488 605409389 128907718 774370562 501272130 562478812 906480259 921517111 228249734 474166719 315497933 589294490 980492102 986139283 406742438 520726552 25538445 593643065 700619890 848138677 526519520 891019528 909874338 947948350 955871202 969199048 359643948 510249296 763483756 923269739 103444612 581386215 987181076 999213173 819429514 947276541 212875990 769014727 354957556 442849166 275293441 900084615 262507763 661211910 136257354 386014215 486511229 767325926 418872432 770888435 929331214 990049047 378752540 603361506 411649198 512271090 21511546 187254879 829246038 835239065 651626085 652064454 73883054 776844703 774153322 889619165 577410462 635315040 695026273 761233028 890969332 999420679 520460733 636736725 352896022 499291715 968882862 979509531 967659150 979105701 493623228 785483354 222951783 515581888 803992117 846398879 408313675 984156462 327818935 508912816 372409607 433060269 285779170 839771341 397061553 597171902 270349845 609112847 776606704 862496733 556042308 820308897 182193438 992182932 714822022 825384364 875546159 909155398 623633730 889210368 206168147 367218076 539007173 625925448 328089265 985291171 958150972 963571779 923555538 962968580 587809558 608779251 98080220 229972022 77704736 158155569 31614926 134579170 60450951 147967105 984987889 997411193 567909631 898827735 738000054 911031935 268676673 684256523 958723379 991028047 422007254 799433555 589947084 896302792 179815949 935072272 384214714 792985912 642624976 657774783 820926280 983476969 482921090 994321940 652026580 856970769 741039814 854033449 710217511 853517788 662034835 867630233 138191639 945558885 932479655 980551673 108325524 228953566 432843505 884008585 465013934 765873956 221216431 921315767 740781754 775643352 620277463 741722966 578312468 589182646 106841447 798714864 589617282 710158646 304942002 708362473 475002261 799107868 379378284 961769182 354915599 857171745 666237148 731427387 829603665 904817456 904637845 984340579 921819577 967455559 558694869 973597233 612729607 895634254 277586102 823809697 673197297 705118785 879820964 974468760 687889041 797306091 472418767 683977097 479511398 727870815 811557849 881167562 721585379 909242200 75287911 311660103 305789442 496452712 568030925 963932910 727618709 918787561 363814878 389482623 601033683 851932197 417628179 435874706 678556701 968532831 692280200 745078641 415229558 864949604 228474701 562620231 1302921 478385701 691388257 931225064 384905443 726825350 578872960 911048009 944668562 998784518 396795673 445761539 912576117 949349565 648763612 725299152 59960065 246421333 692134102 996093611 488428213 748016571 671028244 692997211 324694947 403742403 214206202 228074308 931441343 941322649 287065002 577292173 993076787 998967585 20566625 657843047 762253865 971242167 709426505 754983585 183302744 760027192 748515306 883905890 213124545 866244341 957267542 995546909 180950602 932710030 891755385 950532804 136355057 547475512 720785086 727631271 190765485 990081183 953023631 961395018 524966586 867881306 911128109 929004066 467779415 782260209 319177249 943155763 575764027 705799938 614189606 945242028 976665314 987764233 672211139 722172080 135856287 186261823 226041312 933530348 135406578 186821998 71699637 699645204 105470867 147417653 395558437 582220374 323872185 607298804 196538913 254717739 94900498 354123489 538385127 868831031 421173229 760002978 615278235 972966111 493092534 892588741 478431330 571935486 263409607 434461272 47619706 391623875 309284395 904921974 523147036 581887918 321767952 421769120 473650424 543173803 727488307 803698135 251585273 569743494 320146757 639652745 195484805 612548393 977239286 986723209 527057914 867384988 791170840 996114946 306140267 418711898 494871759 889070007 570642702 785345944 815295581 828775445 610711905 726004555 246704633 620690175 702778202 828325393 139076091 495971581 593191664 749081359 602773401 798875036 13023644 201897803 587813418 893005816 285688638 808346363 152234817 267340420 460965832 657509900 315920638 365352651 987870318 999458405 263492422 380455327 935360430 944046472 712827013 845972367 501290538 579295326 940155947 990351198 818201344 823373014 715112455 799080649 470604991 677797421 760110353 867387953 356073924 622199064 302601438 790911875 142761082 207420430 683409513 776164746 97331692 244249954 448193928 696973757 714649401 983773076 565968430 676534016 328303917 948307254 748957503 817600482 872395072 983481622 112442401 481466383 159287488 339198204 238226299 875670657 564701074 914786637 605878642 631533717 894754179 961721191 562826504 606519254 101995891 290525711 860257454 942295024 159341389 718429928 881496052 951972870 750441648 858888894 521232381 882367493 59012696 455169212 275784093 881268471 17761893 738456258 392096197 741399794 408357317 889842485 625331089 745775253 984897067 986697863 239987330 898728150 251585664 845189884 230418685 380880572 382382951 566272168 202332242 573105738 987240260 998093413 822668637 920339951 509070283 870316500 65816716 208314367 213784963 738189520 586796346 709114644 113486889 372762893 806651892 817746412 222290016 282595160 710664997 931073011 124414729 749940025 212841311 772826233 579231156 897251414 681443043 747339626 980943263 991227494 718539368 901944083 15343746 773169056 393660407 752636690 329934399 554867537 352759547 518370593 860232579 901958928 828165749 988852403 814219139 865881919 702432590 788943836 564155614 838594758 881275062 958861982 590077634 809384154 99876865 318543680 393691503 592550505 118265773 281693418 944323240 947803972 959648978 977009195 639100045 808605215 618692170 657391748 474060156 995376712 352887091 933826376 398291614 550797174 102669462 546979600 363683812 453866442 405054326 827256950 338533028 927639906 883936009 977340635 123965893 194984887 968992282 987367321 345328382 886486294 138738096 402535461 299193071 778648051 624917550 860827167 729681846 912850117 684641684 724909223 537523546 753315954 276448453 814394107 86671302 458324930 140951846 169166302 718707078 784351556 522678736 820322218 188908935 304578634 630429021 916439662 901822536 986997595 571769742 833079242 989403896 993687515 828981771 989026353 751898855 975398460 633480158 919283492 347474741 688265085 32882981 872553582 756976046 930666515 484647819 529322251 744162560 925223800 562439674 615078791 936695496 960305807 342465621 369743896 706415651 815128418 139319870 172226564 279727898 422896849 325605959 833029161 551502890 685875667 68774625 905967988 48429819 924215031 112858629 975713345 339763201 480599127 961461398 998837637 338713527 397238958 816592505 879247325 642401330 942958478 512054153 749472346 668920053 721016259 473365134 858358684 815987768 898007068 332238030 587006664 596606364 708766021 982752849 988460558 781657501 810050234 698855974 817867478 229657687 638776363 666297688 855137776 862036254 938304674 502586871 899504102 697910158 971426716 729453513 928923457 548624446 584060233 308667576 935831602 863153308 895453378 865576063 936908321 546294444 914072263 870782675 878491307 553329771 923415780 810356316 878852756 232734925 444213013 846753897 957955185 534466129 747113024 866690204 869752662 722756829 763517223 299026956 965303283 857013213 872268238 135859865 579955682 269874787 736686892 76966152 594862294 161633015 256255921 589923108 962900032 109088835 655412067 637901645 707434814 175782781 880988054 495089548 810344892 654050151 865690502 165643653 422696861 654970018 800123242 192305862 628457516 51515191 131536781 42715121 65931449 816115777 973165615 818330457 901643599 727622429 742847814 430743409 886589407 737180033 917915174 412650372 593988951 86414606 694363447 798892223 945337253 768175795 859045797 915266893 925679830 650863827 760797178 796908983 816702635 24805760 950218909 908602684 989737959 166321467 560819805 310099205 343043904 392994785 538016397 394177416 398497043 153613677 982083632 732270017 873828642 916054766 959040763 651657623 994542197 85978989 710304106 577429437 638527281 936267497 973817280 811935856 893437063 398288717 532877633 775195045 993786256 588290210 663932815 70665616 546571313 533228822 655705192 902538765 949561879 186185868 313995860 787503810 913257410 575994174 845529276 850388469 933323591 228024311 804257947 44730131 676729141 956768520 976715933 248792426 363854527 339620402 530147680 181984265 290423532 989557514 992870810 775945162 787187669 91752586 95258741 375883906 593968429 99380809 358241139 703461729 738945653 962520266 986450457 465576263 783542850 166527971 717481793 438101506 589122052 663180063 891748893 426830801 628450204 613640148 921961000 726923696 762148860 901834813 907896565 271545910 608218961 992109159 993929128 494332666 803426677 785886087 847474581 501451205 919993328 91331613 788564213 854609706 975016876 668427232 816238946 260180148 698894828 984339019 991640996 238272355 487972274 636136228 698511391 995321438 999060741 640355073 709690198 969654140 997135107 613028045 970399166 57456215 617127326 560276599 630343749 429763475 518193961 184192493 866573088 283374961 319745989 846051060 977563909 152429022 324498981 610939572 763710754 656394216 796494289 163078702 833986661 57365657 599504951 693188398 869650265 671782689 728430292 745940826 897766983 668421795 745763720 161479252 563157394 208190576 767706016 487323561 880177454 293934500 920259673 448925622 902406229 623026259 699177732 957764259 968378057 417721086 538799045 636875189 816747286 665002621 740204449 23785158 475729979 380916255 981932370 907731672 975251212 911483361 976011380 774981122 838275642 927308397 977838317 186600258 433132269 870578527 944425554 946559209 951919349 455952164 859157152 686868123 755257262 41598921 825170579 407096118 409388486 611553840 716455256 858115786 985064971 312458631 597073316 446043513 974003760 591168640 786796499 210831217 340502295 72387013 688617786 407326179 556668045 836609242 957360053 552620726 618751508 667739150 974331533 690342206 975533544 134542157 389369466 71967425 597020552 872726700 938048193 914254575 991098049 164417076 831245686 687085483 877676702 130636499 551915412 882886475 916566950 357802901 685700408 371331446 610783217 405792433 660291793 632722256 871151756 48369867 243238564 42099906 652208887 731868345 993325961 499883422 528311937 1456706 91022153 780104053 880324688 793007223 823757122 20616675 32130280 78221005 988176841 898874462 937302923 17480168 808754034 594153702 846535773 990354302 993736984 645650850 685437285 470038759 649890682 213841196 490912253 686272729 891324518 215745866 687632817 938402805 953324071 225520501 823208668 399253862 514133591 903824977 996040318 80337847 426437596 514579479 904032192 975385403 987732941 503214585 972140632 919364294 950665232 639036617 694690857 720491717 964013201 258171442 618920384 14766816 971049529 551180888 911226739 426883406 467041371 185386292 957438724 906871906 960763712 290992215 444015497 3600279 447004377 460315715 994155235 140639786 192771468 328784238 602413197 96127642 836700989 883408506 978595654 211447526 783557993 224026611 635082836 229139484 589787520 809582300 889485237 665106272 943587859 666106756 767006597 106427653 361374553 40234062 718847316 690715995 971147620 93410526 934231376 979103919 991727314 153628370 894537272 678000440 709262730 863674093 880264997 258913705 848443217 42993228 216488465 578773940 912563160 286079633 426741686 501272720 608914061 895004037 925516143 125378108 811231252 434044676 893115433 774936697 846919999 697269202 845824863 161173704 853287293 79816702 168438428 54602680 943412081 508355005 538322438 615701950 813337959 782048978 890529425 27902921 807123566 851441709 918458020 609960126 895900814 533098924 667080337 200355503 647654161 254976528 729911790 513395401 608376757 753344734 859277682 138465911 804038029 162324300 211195792 310980013 412630694 344764241 967644341 761269268 978601242 20980412 644489083 865945753 963138023 266916644 952350239 739211301 785782456 257553778 772693457 290335169 912623629 413052345 704058442 365691786 578823414 215813420 222761322 792223399 856464810 704830592 921182474 359733832 660406706 97665668 612482090 780256065 845992581 213303219 710933572 997622018 998204568 221304184 811421704 522142312 620210047 261562305 883709565 292111759 774935929 840283420 926939911 205495612 303931730 600365060 859238098 653783993 906208759 246551710 297977272 69095057 85876000 788314287 974198086 281310510 856177226 157179586 661491478 953942980 970332172 826914875 839670154 117431901 483316784 316877279 800529391 531030185 679348683 908149155 954748372 45613780 662078238 36980767 575743986 753446469 937706670 950259151 998855102 129287643 610760525 292259183 315787187 421256143 733981132 7494526 707515487 409314436 970827465 975901644 998962870 170182199 288027533 186473585 210951377 77229938 471805519 674964124 954388140 323079596 767305165 667171961 682692743 8967589 646188530 275604589 730383574 714432432 980806887 260583621 924134798 734380302 803341504 56737595 495246675 695685947 827736705 67943180 339813748 148049014 834221262 150111030 261912346 484214615 625570764 975977516 990536343 425200347 873028561 354093391 433961734 120244774 503053022 731790729 808581807 988388948 995867286 629969246 761013684 918769537 978688386 37186644 724579690 965894158 984270038 38044032 122323745 228782268 711626055 966802993 992490813 904726324 964348686 432453422 990572024 132146304 186597218 996321545 997989091 371723451 552942731 948139612 988679051 789718886 938225322 262662009 367145285 599541308 733660758 606745690 911327990 840036401 867830456 659622107 717928334 52885671 998926835 431264876 947040205 117014956 599269132 386425425 796356399 637560417 781885753 692711485 980852244 252974278 730486678 871628415 940739338 807147076 867979080 95463479 966285606 502108464 813676252 150153862 319979099 805872768 989671340 804984392 907931812 812440989 999323406 970689553 987426972 556848855 827725304 833793464 873982589 299664587 748672549 710306310 885087311 586519037 754004558 964574031 988989738 84273684 397172722 271581602 451280353 867996710 990727358 634254008 822370888 996146653 996767825 656023953 768636331 930910474 931193476 774768577 847390070 478362912 951714611 588586912 782615238 172731189 609713397 655277039 972052917 938737552 964729011 999597547 999643471 205578229 932876253 38134164 227926816 289103841 752417810 550115786 560869411 22965856 961286130 561222516 843172320 247036057 660090377 418825521 806186160 362806668 381601191 177539483 798683303 46128394 308988924 984612891 999938526 819801474 905084295 821700983 965539994 858787395 949646756 509042324 538192887 107000612 902803425 677232750 786630327 533449998 711315112 918891147 977285202 376107276 664286843 529719729 919345946 911847413 950890509 604031212 680883189 227023599 247874218 168391712 635596482 13697759 263646364 827561434 994957035 284583895 680928132 826878015 924946604 611040157 620521166 733936022 843562515 422583021 975077980 663214112 701122891 575263612 678247437 720707658 734794230 224485962 726934972 385493467 628014794 536450469 779376946 965081716 971932454 862238312 951436970 304280648 869606969 293806752 970106764 479526095 683063416 573312286 656740178 850268014 882624450 64094126 855554062 881172677 932856182 933897483 943422520 764994800 945591965 30546112 82876411 594056154 951664894 618362939 826072250 123540973 972678515 507265141 611334515 106008754 894420761 571754319 577793473 878002243 897839379 277035433 449916111 627735444 816245496 332987195 964029047 913761215 917464736 709958525 798716000 138746331 429914900 717284345 829143437 822226273 888270310 700775917 978362846 807913815 903286743 977338308 990006768 185702611 553630414 595592822 937306273 989131839 995165671 261219708 736113031 170468450 822114905 541031152 774816053 694475899 778986277 388124772 727067769 179674108 190249209 864140360 895657335 946104319 968401496 770592134 807439333 529968488 907906642 282141133 407966398 868035189 876452417 387637594 740562835 725536411 758459417 652917679 655303446 323291398 556000601 709187572 746196142 108542077 534650491 701842964 833835794 934051420 951997124 850459339 875467135 804604874 864029621 535708243 732061726 707944705 946938657 699860329 706817773 871397619 896653096 147364805 677525366 828568115 840609525 854706055 913917976 704905309 846752729 625045257 630138607 430467871 628573453 155379793 229109561 680226942 894471409 331135835 976336563 518009042 762217326 669251681 916312862 236002488 842612500 844097312 884213703 996675724 999920820 129092905 494541515 944716778 953199064 554976533 589598098 246361237 887874234 57055556 131398615 325884380 372113561 766961439 939930582 236090584 358459027 689952992 944123680 967974059 990695998 259092831 889085290 374022903 415321169 646751533 923799121 135669671 756304023 545041098 837694214 444378649 675652280 571904959 838015630 81804080 129448906 317016552 900320211 330939678 379816595 483747953 875814042 71170036 99936042 654328350 846883292 621116266 933328926 661695212 992879080 332478117 891772200 502511431 762426709 393393051 926419580 654402106 977955054 956449672 959309003 642065530 700963213 848911553 937647956 480011130 885921638 409787390 718186957 164826013 722252621 836544403 893750480 184317124 673852276 656743996 779042036 281021350 648862141 541815907 579664839 93708193 894661426 803289378 874550599 305172002 440746786 269266158 848423303 641260444 924340823 346448108 549109522 204759027 530633418 513299794 994647533 728751892 957646559 575224410 769684432 694852394 939420900 679834578 907030286 324209751 343439140 328549482 674682411 128435401 675531530 214741629 817799386 227265482 453319594 614976906 774603061 775607019 925186254 387199846 595453962 675567440 857124094 56881945 62002079 144297587 925772331 140073533 748246189 900114467 923992320 197396949 793665741 705391660 781031956 347197490 935362091 218881438 722895968 14205362 50927705 768164733 855148486 302412678 665635645 700229451 978630204 612891590 923116981 885294441 949411296 779517359 851879946 627080 697719315 759751133 943290987 74251558 195360693 680532555 996072197 625404833 718377166 789064401 867197299 294316020 963802669 645101657 778621742 39151052 382751863 586660161 789100336 773095394 926786188 584027107 645069981 627446796 828269015 364090992 574670228 258608490 900259390 870055366 907738631 625483684 711292996 473472904 881033567 851571639 958139275 312450117 767257945 969034927 969454596 309444154 505978658 778827409 934073276 217986975 507028844 577157201 878058531 675615063 681780283 380984081 685106153 265795319 759612554 143937220 208257474 294312488 851634000 341393323 486255641 84134427 431365789 571948952 578930892 666751753 769181413 106050470 582103532 287151173 673545859 580600531 804700221 471384518 665952723 883073553 911131673 728979083 842552807 637479382 903061463 446757183 624081472 725497839 977845277 822530219 842197439 864375220 985038006 65490906 844389098 86715044 897425972 117369127 276043885 192371168 389492237 722982284 803068550 6331309 637805787 708471363 901487868 186064255 191097775 681336967 909063084 381298478 822636791 602935640 875340443 322687842 980803471 78966528 928087549 528525471 793501634 248454775 290101380 403812599 703705915 911102863 951454602 524771302 967909435 619512986 819546052 302715580 706386115 554123610 715136623 34291122 201216755 384966862 827299544 144561537 785655032 575189136 920152452 467842957 872242543 898317898 956275906 718822992 751974618 987682052 996744078 505506238 733691033 128577687 879487983 48777656 316657420 405251684 924479518 49735587 520042585 438675433 631159611 774082696 896477215 300662608 847165211 675000411 758396319 636599746 749474656 233364736 579500868 138579468 286481337 538401595 943501198 355504806 777525226 67452998 71587963 172758465 571335878 571895542 631510770 903652029 912035382 202449479 609637214 521876443 789879414 489622280 734477515 265368590 940264953 282449469 992472477 101152031 264769472 361025380 891998634 566838147 769288001 225126419 517087431 781623305 844486971 771259835 780190477 270366538 279437112 711262330 764588514 601314837 723234665 582400440 870448412 370470967 942389165 405291853 969443306 136688530 716152797 270277192 625114290 488037010 772160732 713104861 767042072 895606787 902169048 300647334 734685718 474238741 774923227 662330697 778561236 121011822 733991380 983736733 992346079 128648908 832456897 627639691 915754254 213462570 566573037 589521763 662882586 464054004 859574064 405091864 440565033 122863590 553251234 148100930 958908573 655923132 679872342 853365368 924320147 315439846 538881516 731141880 993475968 24199689 906310872 34471941 151857301 550240218 842190142 561439210 606904722 692089590 854502751 160584183 693561497 658605270 853624981 8689061 773371284 332071199 523141262 7960342 73940093 63423339 891080981 43664502 554975260 74515587 870356566 692133910 726208407 926444518 958835265 518953651 970330920 245208790 286166565 932059155 952634274 330279352 636079611 65054706 156103294 248704363 428853738 185101658 570560810 32643290 688243334 835590259 912462976 825735598 977685858 953408349 985687204 591306227 957264349 593966856 749406920 890942748 951084086 346895251 495957211 613632748 814133017 441320215 817871577 387362333 545638715 518418966 542080352 480509687 922099531 746079989 788183678 97730603 813452780 76893380 303783504 549280636 953493873 58181762 917429687 617887646 878793943 761111545 836089647 514897864 884567331 677495571 739183063 147398753 496177380 283937443 883747839 3811455 520948776 102446369 685662965 53870069 325399281 750622672 950352749 38846987 260117170 689328168 712324494 117249467 805291972 125990264 892114882 618550759 846227686 458418357 885754548 843450748 976505351 67058997 316684184 824791839 990787765 311400118 868239206 758949095 835591842 450202733 842891663 386636096 863843581 449308269 596066291 246247746 940635172 255359767 992015221 275975473 499897264 96365354 440846405 665810760 905545485 648735551 976314937 359642006 752473233 76256132 280979290 403244748 597104728 804416587 840007426 836606027 994516302 474466529 904834624 331793262 922042981 585482417 638917003 629052530 842475718 389239701 794608480 969970330 975066229 608517721 670855043 56432443 115484573 740618907 829735913 951502579 981524380 957110683 990618055 286307211 533797297 450768945 501422562 542963272 817625127 299499320 717641227 652207927 837331315 764296403 806028634 883890560 956498179 275778714 659119891 722712445 863461233 145981257 371972172 542934512 626124569 695619086 864238010 202988333 613703994 561648851 592126540 912323797 942591331 706882169 977311976 411482076 568169738 709684300 896029070 901704504 940923745 454496416 524125749 150411095 604292228 446455865 486099964 732555411 974420041 225816379 409448980 99047863 497398509 13592660 472620985 457244001 974602077 502791202 900582048 294918496 370321324 68699382 135255647 385237701 417576334 821728240 959744866 754901835 973445159 817939765 923492057 277238230 510907201 141828998 671862030 747203440 998724527 937196818 985140928 916403003 919753334 563134403 575998340 407495257 770246512 670374097 983310332 341635086 993107939 828937549 864453836 416955097 733751429 959375953 988001866 419300686 732604668 874977623 957152871 336047349 702530756 347625596 769058983 968602011 986400041 178678557 524227189 774272919 994947094 821041484 846128606 195044855 289106652 364690848 813344341 820342647 872100312 871464906 876131253 229081823 392554841 683071819 899215270 924748800 924800103 399224982 947005149 304582032 812650334 170175117 540524412 585016055 735216459 598505980 929748248 651780444 932613477 2751375 666887487 902416642 951398376 689997119 860217989 343453464 810488883 860908222 918385895 286547896 471584884 558247363 652222135 990617186 995517542 249601797 373976219 239150756 992694260 986810625 995046972 189207195 219761034 802412494 966686805 392179289 464783765 406379785 931175818 825625234 971013714 369585791 627002007 64152620 592811516 54980886 388961710 199986547 294483370 830992675 947122974 428490579 899809419 238182454 477637686 469399929 792645781 290067649 365081537 684750239 796901990 109936553 747139747 172747855 757667181 653189810 721694916 471559218 773345039 65323115 93592704 530030629 614798101 983734708 992526452 554657227 922794156 330113608 573187139 965219639 965998968 306621118 739192410 621841521 783505134 825521544 942804641 594830050 827252829 868767623 912219811 884195999 975423066 353763334 903491355 362074255 462361753 995324970 997990983 745696665 912587243 948990869 967038304 665075366 700548907 976087305 976166917 327844326 975990100 455577989 561794880 706876075 713322225 657599002 846985126 613354423 953759856 38499661 169917022 68593592 226768693 270371675 945250231 701564094 895645357 915548095 996871028 572181981 603504440 652347102 806246140 947006479 984040929 162834843 355065742 672683502 968218464 154037644 584231478 137408608 203981775 201073602 803549726 92514802 331735542 739688271 886369570 156458828 611537424 315577908 759452758 514606188 566880640 486442500 530753222 377059908 442077070 167397809 370888891 529981124 839198373 262999817 886616784 528851928 639485185 402225646 604057032 198431898 335908318 890189176 906567689 732772947 962905891 972086993 991912973 452078700 746784816 594321408 648614233 325712496 710828276 833464931 866545956 653179834 954570257 783553257 966272743 685363840 779869772 849029887 878580975 846264858 887171803 479882703 941610514 443873088 935230631 123899858 640130769 603330497 695773711 156450269 199497632 507638942 535028744 298229576 982575415 433922961 607259987 696690880 795300847 158570043 816805410 341852864 728617529 868527499 947227114 848194465 964291108 431010134 569458562 479141997 636070909 140519991 973420860 898025408 945590179 665418587 834490890 923005567 935685898 764244145 971191839 860622293 993326235 313926462 587092985 710096288 836465219 133284575 634037917 127467147 352454324 405767751 720165403 36499499 509837499 459859826 885937826 461435199 772480699 406650312 446419598 113962873 773180108 5507105 72333731 463389775 629938678 349615998 659459224 385772718 738660645 132008586 786328112 87057810 225924878 190413964 722599999 51846554 375553240 928101540 983458266 124424433 347111898 970118710 981443228 359611383 446634446 273025449 553613699 26532843 765445302 179604569 276726523 418602208 942248059 824197494 831993803 180836364 353880640 363274225 578120307 190333811 636928042 741181795 965366164 700702058 853505325 516375339 797823163 352052697 825780250 566100918 984126603 598233552 710436013 897830658 964867364 167920155 902555929 483004193 705442402 277564335 755558571 765691379 869574008 574432043 728773270 153658864 928753685 386326821 435397055 515118365 899708734 537100518 703484673 650063360 772242939 847541261 963594394 304661931 580953038 45589011 127912450 295485069 659811656 41523440 60186099 99910261 626415604 226496679 560773914 151354182 281004547 815008526 978911960 428413482 460128783 844857053 899427137 399154972 402908895 698173456 785516879 96057467 769354253 711309320 789423494 115068807 519758414 265393706 577785968 776524505 947250370 732431752 849695569 857614195 936851013 777505558 798126743 694984101 862723111 94995483 439473384 153370066 512238769 218088942 305919524 424033022 903490205 429854406 734843218 443503354 744046011 781064200 852183598 681282350 992623501 864534823 879550736 592610921 647540544 723897268 837487298 704820869 804649546 661882949 674820754 215866752 846111217 996129243 999697502 505141720 788365088 579053102 705776152 480496906 554791557 900118757 965587587 913010415 921571706 973174615 980205172 4680275 75869638 585184754 962417247 902296636 972722405 36507951 173237327 324856403 470114793 343655386 477105247 653405570 712021474 548695951 944818477 236211428 979239920 111143169 312206795 182724027 831920855 722224088 763014671 845729040 925853257 183366767 848000372 105201194 148441559 803247368 957768412 271335925 472380846 488452961 562857640 627826155 718579081 87848479 93103223 299797701 729322097 569760443 756772821 694346633 814414057 158549021 243393398 404889726 489458179 658778985 794181152 254090267 799401061 393511496 965968369 579084199 701066275 491045747 503499882 240332830 243344006 887698641 938028837 52100525 627422256 772314991 942648582 258631114 468488513 734134358 962927136 315522117 480573174 471964104 822880559 550246153 836881462 219704275 849509124 712621752 738921931 795665669 916372124 133516325 952589896 339926408 465999759 200687303 923820872 681442244 792006904 687912601 912432266 906038374 950342337 792712720 970519575 143281314 457907275 395606637 615334476 779656130 838520824 520100788 891212639 315382687 639537732 389626977 673398234 8219758 295896963 329099736 807833196 359013599 789464115 653522167 959318705 484363575 991397335 781329857 793749413 135088252 409932308 865772820 989036934 578703934 878597430 407840017 440418121 287328411 399451171 502627595 817944917 114444477 470115096 174712072 510271941 683097777 988749464 752862947 920573710 953106956 982390200 624760510 733123392 342128606 402209356 608215053 850363043 258970015 794973860 794245635 882046036 210428679 382423909 683969325 857290241 13763845 436398923 322818081 393629278 267423 94202713 797758407 932134104 193768594 367715365 482100081 556243237 987217813 994142562 372755936 832561606 106112249 362415337 993344308 994027655 136200792 645857857 454113182 882201089 311500694 669850915 703405680 817837590 858660951 937321777 701607005 811081027 14009269 695770801 210617094 845507161 733622868 967905428 696017451 975000545 212915526 922195814 599652046 947046986 778908058 823192710 352172601 848324257 509977613 674790355 453589272 889197526 971617804 990617256 746793511 904623953 802847360 821642581 231265390 653014403 794820535 941702074 362783945 721724282 169212637 333009818 490211615 722482237 341377537 461026932 56858005 88125277 779430929 790868664 454400246 524049577 869107421 989095837 176241957 567415351 492788717 895018305 857753398 983611490 570281722 999497140 940891031 989334382 511523880 753069073 769147632 816843683 703583165 989496229 179275652 410590249 169819305 327761210 492966867 588742027 439514139 804506703 456318344 975174041 9569427 200292673 396807063 821385145 524542748 756555370 113596265 319655845 498449904 527396868 293440352 589317186 357615598 891910570 700911747 854396908 847557075 958128237 694635544 702762379 310545772 431776630 432579289 590305215 348052551 948478724 799630994 917189360 476555300 935827891 607134516 850805747 413498435 783790036 52347174 754719263 713643307 915702968 38834669 80239439 19152189 619369294 338730423 469282222 808970367 968338477 964809288 972414738 379944601 812987914 723640804 735962337 907658097 936500040 456043730 685379944 636206047 936659604 626640905 889888257 419026066 637930781 55089496 473665583 771308077 994872726 653392125 891050432 579790069 873828793 794500522 979628260 288033142 459836509 309879236 409795350 552031254 667031549 616807419 676095637 332664783 931717376 47868726 930441326 329811534 400929643 495300690 609194355 803703091 967719469 761968586 935710318 279638759 367051802 936707680 970893755 742237875 906390341 859161993 867793490 638997126 771265673 224562478 507598052 21191043 150296153 3840888 972673693 896265751 917472595 181184429 821985803 837559082 916819331 971924114 990142589 947163449 962687873 89146943 743559130 11488379 202253190 126608771 607869526 415253240 692518787 75984842 683876459 88377080 238967062 140227463 442284181 905079825 912546315 568236767 655893298 920352770 946868341 730198112 810672108 967846738 976055892 849137949 954782644 679500018 747853601 427943577 938612118 512278776 553659435 178250085 214419222 51422945 540039184 18567950 572967082 803653030 965124219 736537280 789356008 541558465 640254600 909734614 986634718 544215031 831636407 158639058 481660827 257054884 637379428 19248213 349710410 640852971 877996241 190237276 567002422 245174529 467231582 809365859 847851372 671650440 892770370 596258191 941681279 965616511 967461458 3039103 116936968 226601908 395894138 65820291 553203935 612708071 752605735 538323024 854842383 282247768 605238630 739827433 845896940 527453107 960311346 937122289 949550563 708545649 861106686 811471038 991944702 802080743 963801797 776781470 919564782 471687584 848440232 932848920 981011636 474230744 688444762 394800644 550658634 678903883 708300660 172932358 193323909 34348169 821715443 225578435 824183672 914006648 946723333 884176747 895088815 234113144 674086515 66142034 507311577 304266345 548249485 882985163 940951493 42135368 275314270 828367039 864123856 529857597 649074337 769584581 885246035 594064936 995571783 736377876 789040190 348410455 493636848 503142913 712260505 800415550 835394008 320335506 443290593 987009248 987983828 594945531 610509563 931725818 935609635 478953837 623033077 815518097 904133375 139130172 731009984 398104909 510776577 933955906 973435500 319013203 743602644 122899402 448691398 314307068 428622882 451590364 646918805 827164467 991630950 840765794 906753377 250743721 938733249 611095779 873403808 419816496 445722708 321225435 648312613 976437353 992700893 968465881 997270517 610172623 623016750 363855449 877580882 226408855 674133326 453248411 723778949 319976154 615667524 656623154 766127965 536601905 547486491 743043447 962203106 450456784 857262666 444867032 698863133 106077258 590997763 742512403 933223718 575320989 746531483 420560989 776653827 486999858 984200440 36001214 389524392 940866955 948133460 213947008 502596311 197726538 434394951 637167648 760901831 385197864 646267363 215577501 910945547 203806388 268777703 932210000 964031213 480722654 930775059 784647279 856866192 601973100 855414577 177364236 492491001 282581492 841463796 818381423 835463290 191311 836418381 577794164 721567223 34310768 268673797 97816562 694523320 935283612 968809404 199705511 654973649 960559799 984410630 195669682 643191548 399354619 436799817 734013880 957612518 917607427 967783243 733803776 934020529 916006332 970221572 816680440 872404438 771114027 840795140 320972246 473502257 3372380 703423155 90801545 807462495 95646681 166257449 945724423 973273900 860305821 991447509 191433592 920162708 339142535 597114820 292595384 775014577 189441652 288903508 54750966 386729220 433964057 671215655 257991568 328155837 77142429 281665815 178551312 976202766 438320662 892809083 207471094 274732732 256248670 382739885 555080956 743817526 630317094 800581132 35941005 899965735 487898201 864032933 965581477 993077519 153593994 982592286 591817091 717506801 262462227 342668645 499460844 702369513 220914111 292774424 320730821 686355699 768153727 821514285 101365482 344419316 713117394 737380840 825631689 904883004 244065190 298432730 726046670 843927502 586810255 868294031 632191857 945289480 928118481 978273405 243151848 715353951 738809141 985817797 661389821 990448020 844026755 889975609 874726278 964608917 921547673 929615390 532897254 869677070 668588191 724191109 284273589 859037619 316499124 655914519 95942437 281999368 473499481 536785770 553601155 747233674 462975616 559686274 220586258 777402160 888816415 976060918 788453175 837144405 148414781 213489751 30358959 976691862 9983072 482478222 823964846 826840268 168461694 692745119 766380634 875970646 269140300 605118214 500989163 707132887 981609840 989352152 129528951 627170392 378697026 431114576 235690517 952207792 489650195 562600581 125933918 433069954 168942525 266205249 827222481 866278085 162426403 958968086 840610975 939638449 403524235 861844580 112631456 855745941 517828432 830877009 775017558 867891216 765223847 880057197 214386624 588545284 149732269 573558431 933252099 992848119 926899026 957511574 744273869 896836791 186019055 296574383 497875594 915252468 828807926 862631149 699871218 932895866 728789155 872000752 896879805 990572110 397551457 985772763 273179754 991921263 603577573 913407634 141392021 156965111 903301833 952460184 741853979 806822307 281526288 426755203 534105468 858205598 295742636 356855339 907251546 959735919 401832746 494655053 371470741 866787585 745106157 897032698 428443869 513583878 508805562 967402871 621670849 872931950 513781598 942790039 691068020 697789261 175554731 656972812 888767246 944031899 952639472 972325038 651370315 749166969 768492278 835751626 3748065 814006131 533640629 988776528 114664474 501636477 27632640 366544047 104534043 646570496 252431110 389279739 834629329 948384946 299793996 415153841 319323168 419521516 321224663 394912331 765003664 891670861 693528695 751432259 322620659 932308042 310012084 714885341 756510570 968863344 905669179 923783190 134363008 497676807 684508431 734580842 985568034 995937498 964603738 981051808 860784612 981857056 478561109 970404349 272035176 960330761 210820956 272753666 383321271 663391045 849639528 979391978 780774261 970960953 573252852 952562591 691898021 936536652 133005907 199192656 922210315 964778494 682851080 927808721 775603823 836460651 488299915 873404861 675401504 709751393 590797389 695838877 753691153 999837985 516263396 593608568 856487559 879381452 742711835 939766694 260455131 530204999 199427408 807105839 79500711 259975922 676926180 867923484 264590960 610390930 21041275 160472095 537259557 685006500 456883428 645314630 559009041 832192826 975062252 993219241 593007896 647984711 177104204 910032138 537599326 557079407 319063737 938766844 626807323 829397814 160488159 238036879 887685777 924116343 929997826 961179101 956654548 988418478 61885301 451843841 129462538 669912221 497339760 698862629 978702809 979458036 739111411 888326689 742053803 806791768 167106187 990281284 97141975 405300785 147741968 435750865 184879786 253523858 345710070 736970238 382912167 710343090 455085356 866520617 883935276 959241129 747353077 918857697 525649360 668799170 676006470 883825893 292400319 889773547 649590485 729166360 377119460 786536366 348391132 594109897 549926243 666617836 668638615 708580836 573494553 972318014 184428489 851521796 868190352 900104215 48717590 632642534 574053239 587537121 15950034 684617372 165304449 872543044 750075151 934114691 977522272 989066343 367113170 517873728 966263868 993785780 941264362 964589490 994020987 996442420 193460275 559410322 351228543 545511822 237151324 336079006 835892101 922776619 818709631 944238338 678071708 797688176 369230103 866205017 967773893 974140547 461654366 896593753 262951190 694188335 963156589 994901881 578104858 869853160 146891821 684731028 638693087 847610174 664494415 768059741 838726119 937858122 554731389 787483457 816563341 961863342 631974151 693559828 938041368 953079620 963287198 985705704 955845062 957822368 694131734 890402909 688603029 790168090 56519183 62021662 230152842 524217357 208986406 389011366 228283377 725570904 901847470 965892508 234698828 419713322 606315214 724955797 854554705 930454425 991642574 997548425 533274083 880644058 947394338 981441968 886635160 916833632 163880883 889202171 128454799 873986240 259601219 680390557 815202220 991754745 924300687 962092237 643864507 824147470 305466509 362235285 345095592 713941005 716845547 964748749 712765676 857245172 396737268 665395389 393457917 820520749 278238107 821804848 879949927 980184529 262224463 446462574 907221681 986439472 780613409 903732451 273333814 700755692 139614839 770144598 777787655 977910403 834715238 992635122 581070919 916183865 778683047 957191616 552997920 721844454 357816496 410515783 421078099 805260959 394998785 740323961 44125057 505333484 986482354 993761617 299201512 436001857 712702356 777076017 807377696 955384364 115600570 731434338 337450130 454765854 316267835 713685241 555340863 695902009 723333728 937764871 391061123 912099221 532848629 826769993 520867572 590021713 602589687 681093132 647471731 971640444 221146273 932791514 17685505 541094060 671231358 744251748 576560647 877286421 771255525 775338791 931056462 971596508 508938271 553981306 373090913 772166487 719384909 951844951 517913637 527827643 974491590 987570279 576083734 674369766 130919461 587649630 288572968 568345979 393254382 647654846 981744328 994122881 212127720 451078627 305762400 987036366 923426772 955824631 447316151 746343231 458459329 858785797 79870540 845838596 462448598 685644699 452229338 646477428 698111046 966438736 765885295 913489851 447915693 746798882 960684308 962818363 58847717 338686905 544936468 686074254 518767950 918116346 57102117 230905161 997477828 999807481 140072800 422925645 171782809 842324777 104894104 450359280 968448062 974748053 63457366 134406719 904046682 922752985 449139941 576841876 355989750 940340403 253029299 346118499 400243767 485183501 244257772 508643142 820245990 863486246 792816839 851286132 270362721 477489246 329964864 377832386 273528157 313233875 797438881 976767780 696302577 704891226 98826324 352437235 555236154 797829807 519422052 692437726 273527771 882039928 547640794 805301709 361536172 940652721 725449902 757734929 293405942 306031821 735715495 782592826 416845514 722834414 813852921 893776907 97450132 545892629 648738906 859542941 639420333 683185594 212138789 652116770 376649931 904539178 10265812 304746148 280932457 500631346 339669138 425010555 352242767 569212467 368877754 445202694 765565972 891394142 521121927 691847389 911443754 948399349 741791309 863927368 868284144 913666420 592658431 649038958 969114678 999160590 322070331 358020234 766035514 883538166 973662982 982887093 708731235 761479130 904085526 923959418 654388454 718781835 434304124 648898258 617948027 950138111 921454567 984774822 542087237 962255801 902949465 928789069 663411122 882066062 197981004 882762043 450648443 503215299 604603867 650374039 213567265 341649277 743746594 904425744 968367308 978688239 537484403 650465145 869177005 928974783 756579844 759858306 10479395 874571397 336929434 607572483 757660129 993797080 587005861 631384156 778731247 820546256 679154395 830318488 67626448 723010949 240218798 558191421 802638000 888594645 624096154 804054040 33485587 737170570 876710278 947002781 251039305 691050291 348935557 379122507 952344334 999419960 575357459 632603501 418817547 755950728 823567178 881693712 52388033 332085779 931709897 940731681 93765233 683388751 598705826 882582531 747866295 967931099 695455813 767604170 293555599 476447102 699775008 803177345 55002506 559026060 39335051 276802387 41384601 152747063 205334939 860098470 889898099 893275999 394885405 762793793 131534781 599147086 223410542 875232189 526883822 932619591 153198159 240617489 343075797 830569662 136087822 839697599 279394660 894088982 936746289 997468610 898645947 946096837 368004173 813853474 314348883 930864162 238049771 457063812 252198054 487396812 102965641 387996518 300820503 893664131 67414843 196445903 42430339 390752743 667824455 847035019 400555120 550643175 615614480 838646066 516275851 943187416 690685132 748587025 9695150 703339282 462272880 632129174 740560661 951567055 170435825 290967324 263104693 363245193 609808202 999815056 401789710 792595145 346030654 886848083 16239658 268116477 918396692 973589123 491324983 545728321 834939199 943929666 199063248 600799558 239302604 612980428 261512635 763922970 741157932 925817415 126009042 195852114 408139229 839315706 948985071 984665182 287186694 868177025 923016997 996007786 84970935 624725171 411753793 537698974 863889082 870547225 827259325 900544805 657552543 898078338 606471566 909561045 448456452 632217884 274715932 662008710 63582541 121071307 789727277 938294763 743954030 932096936 6625321 524577564 500471623 503369662 56365963 69741893 597980838 812158684 860134766 982175845 17361146 215820663 758049542 972163948 379741928 984182407 269159109 461555661 479186032 999495554 268857614 875439506 194469601 802821945 131657720 473338191 174758217 764709571 430844497 475802695 956288614 970650409 664207081 815390232 189444591 770284013 511316670 565471210 63389580 928930183 312008912 793862997 487862831 769269614 121816424 604705085 297910744 893216637 865785 593615536 902518779 956974556 196522126 588078657 9486165 932557484 922656509 937621276 776978085 906200896 965644031 969180256 98554918 996896738 716569474 935707205 399726394 529991861 123665090 636892531 59178298 971827369 317004777 534499647 772368424 788403043 63217001 468514622 770334020 917036711 562196175 628569350 584589982 614153990 664426944 833292120 258565137 867838022 922814612 951504018 340480919 788567138 263398324 605431602 519943190 915415520 860874392 892349221 841903267 866841732 355169767 953076477 300347575 678692519 219359280 701097208 982776285 985401753 502127827 885154127 920778278 997517748 12951775 206168477 140252730 255789108 966495525 989538311 873830563 902352566 381018332 385254955 216565611 721198513 31832789 774205238 898726876 989081562 925977939 945245159 194961880 594128230 998975830 999437180 552287705 810130876 874151234 986512254 379118036 532510659 834544790 936586917 294941506 304742923 414271609 566838414 123124633 585795028 575512899 617784959 538532089 917875748 776305071 849140840 321882411 996989804 479187134 664582656 329187424 645142634 747211248 909700049 739931078 921801335 977595540 999636463 361388871 408401603 402180510 916704441 964201084 999074758 143270333 928194555 901951021 963094500 271923646 596574292 509242386 653701505 823331248 915071378 15150310 41353001 110792137 139316339 466423496 602021182 265194123 284182371 513845912 918212221 281628048 800218665 712209069 862222029 250860900 495952083 417459735 741343306 983859038 997022131 586087797 981271083 83953328 103290514 33347805 201771639 35794460 577009715 435337125 758680259 936185119 962100641 26915070 885866620 843403455 918450755 796568280 921505382 760782507 894816813 688381492 778272078 86644019 183321889 880768070 976897167 648713353 769409460 671476651 685508248 151508886 639375465 393539111 750429979 412563681 760426060 217789789 386731319 453751794 793770224 817033456 888691850 565250287 663344295 437079902 624617500 77808534 706836769 976634800 997826467 395683390 539757339 468932194 757134512 708693378 909540520 759973053 782424980 857943779 960059008 235496608 786745525 175763029 197921514 843241471 971038027 151566584 740678476 964507369 973768204 936193341 955130249 370920254 877074531 862739608 993482589 571164130 767299871 130074752 536707526 627323310 801573944 338758761 794350982 665318876 809243702 884591156 913667890 793776640 898604312 430751131 436624989 175528935 533531565 275169217 558294395 598841820 820398002 137998842 312478118 393205787 888585207 101141801 370990457 83061499 344719950 908169301 933519224 851977365 930995596 513536296 698391416 833152809 946759291 774018829 995031599 42149190 581924974 675006100 881041960 903986788 976811506 535763374 643752080 99233126 216914969 831577897 919036995 272888313 539202611 429397083 451949501 953398012 958200755 361392581 381793979 154481214 976642024 699630360 769916168 561366467 826440709 646240834 834314841 547943213 699930843 982010014 991937039 344763167 404656766 33832575 698926127 101218439 471862073 562686145 618700926 34707396 269726232 325131747 785762035 146532600 953377547 521166718 888197206 71939128 172346695 554542736 984459704 962935066 997040798 584306183 656075540 889617043 995247476 318611162 960790576 122137566 515881563 264640561 842708025 504215765 561284349 468924138 953069212 240040109 384424910 519035794 651590349 306569201 577511736 173968275 185279525 664589799 917976314 73606830 123917530 943308002 957317380 852344835 960750095 752139819 949672731 461926847 563122539 556294959 743371638 660682651 747381185 382977728 724345874 155692833 759251521 175650938 850356790 98802420 244344735 498722063 667678021 628960923 947970483 116931121 289512077 746373107 837661978 78869395 564450666 853043542 955648788 494535358 536546775 141552364 292016464 809540375 837273128 366057206 566756850 829412941 956304647 257305373 625208446 394720034 715983532 608185983 878462792 777840644 829848741 990665054 995184726 766663087 934306767 313987232 414523565 302824111 408703134 592667573 930024655 213202628 683103430 602695111 717477566 660173558 860990973 761333589 908739331 615390511 769734102 318498983 343960514 717533690 864950074 112271647 595726563 22387217 935703216 575139137 906811903 809955672 827358320 974246122 984443735 228415111 439153907 480303053 722655309 811252183 899641872 931095714 954238029 831913869 963457834 129430058 697959719 178478256 762509598 228151163 879759714 797061956 962239134 77374723 998484033 765769238 839866797 557501103 867237242 970892514 989462480 662123841 940392154 854381738 981657386 859651520 903285901 223640706 639249667 288166746 339400476 580297901 646468078 734692679 877762944 97153325 345734666 146680229 395737192 943922492 978118154 80813478 498771487 708025531 792653489 682368918 916163347 557836772 752879068 901901022 903943330 303647510 545705874 282815516 285746081 390191835 669807252 377660290 771888015 134348628 535008274 151133323 467608079 929119960 958243712 844593284 948900738 998663854 998855625 604233749 949260037 180607084 399273141 809584332 869002251 25701703 693493884 723151434 919309021 844641803 976174906 620935240 783223517 133608640 269313103 171249493 889594507 553437258 654070204 274063705 824824723 826927175 946179126 195737018 353404911 972820405 987965234 527196998 620881196 558711671 747860688 143241618 984734465 50599670 270433942 770255728 814683960 822662980 822709367 602820433 726965223 148384121 793789669 866432046 939670067 677354929 811961468 94582895 142748729 750102392 993171224 945378502 987475913 614711384 772940242 71426152 752569235 926578166 972825334 624740005 753484081 288251873 599034953 737886697 986382096 124447374 807280948 799460019 930151895 429202188 810164999 475046763 982843363 402526381 581675104 41722042 923648645 233874174 518352092 416072338 932741778 750319689 881390817 131115596 141060288 965318396 984059723 243339611 644829904 505440272 808712196 749339742 813323527 279484463 654355055 683258135 699616384 720713154 991504771 95772569 812183627 525909232 926876181 246104300 259074898 153470585 605181778 87166415 172588815 297053072 715869746 582023018 939653721 403754776 403963267 798691292 825319771 349825184 849124040 774224984 884789065 762070564 971596004 861399505 962107940 393181654 732116887 106329183 659525571 763799592 777516752 153762747 322946988 643863623 874368333 904452744 924370337 649727714 960673389 806466490 949663432 94376269 593185957 624718135 746062449 191089577 726462116 160463786 324029874 831294553 904485891 928494925 975369601 601492557 625477036 743348674 885464014 823379509 919097420 431472792 617438869 59794559 583170190 701967509 746161252 861495709 902906879 309056252 371495610 770382434 829016865 596226839 751802783 364520966 536653584 389257236 844513534 770372886 807456248 896437691 897734503 665355794 812809134 119960904 331019808 675142099 857344207 308792613 547973843 175615350 756523349 66726985 587697052 17900661 414958217 504301171 970839618 464406995 564029299 261567252 708903109 46256755 260310097 662793768 871262092 731180071 946890068 975127207 998877627 236939896 637567552 402777849 946909189 58708152 867269126 677192468 857251126 239153081 967599748 989843884 994035586 939856488 955702586 840605567 941313246 55895349 231927106 57322834 472050511 426092643 508621112 838943512 839553856 144756041 771196987 884154491 908000395 968738839 973119318 111118694 550089786 682453730 790141496 519597126 816194156 899242880 974984809 66725382 92258804 483864219 773071519 331066642 797896919 584934727 999686888 670749782 764330096 157450257 214835719 945240572 992794104 52223383 103118630 132295527 733097257 217962453 248171317 915823586 938480954 292312537 847415693 698085202 775981381 872639567 875867094 145918046 832071453 277142644 784352557 93962781 604446441 327446700 502015141 196757373 561852272 245941789 345528266 94012389 473640257 479928686 795477609 274680253 839135121 627550536 980372943 969377777 975623475 705230373 934452521 860790865 956724620 886925192 948740857 383759135 579239121 98052350 464809572 663238764 700090620 195161229 918206340 271508490 589248769 872610551 905125183 171206284 741797508 200453960 774679926 646424508 699504595 902274460 916791389 417616017 460682418 880227043 932176019 345722245 880261672 871769964 873031073 315045187 750054369 276704090 804682566 369853789 743865581 503527290 929623143 890686130 968282264 834860887 953304477 103836690 960317186 520778910 532606321 84920349 581355392 736838882 928540755 242322856 757846335 409149402 419168873 148043328 310628372 49749334 106456770 158702989 582670360 754315473 952048207 434947309 940644981 994216733 994485840 570731987 955571019 490919576 643654026 768753563 934617810 96344353 272759530 955720833 981486559 486414751 879079887 242060440 252351526 23804374 102305493 544336977 857582527 198600944 326620546 249709673 304188085 572050352 731907915 34647571 323292557 68523346 521686218 895556604 970530646 719110689 973253429 613167172 988480836 288112763 580278508 165968654 254754878 808751359 981266950 391348044 668217166 780457171 959072665 757740875 979420905 64338275 193290234 781583137 794401228 33241645 656146222 771660871 927314033 621944782 771524100 677013722 886142199 581969335 770409525 627451494 763435043 358064290 846186132 671873465 729709402 439613145 867284680 674404658 768213740 318878387 495624524 943991828 977797498 824873925 862382718 504874653 898027630 814578709 952184263 968081561 977175628 83891471 149347763 415724244 965321591 89144072 311737173 950352738 956811583 332815898 681716367 836897245 928819081 626310608 856027399 308071502 856971848 357643158 582310112 736629325 877358357 828148010 924014487 77979852 772879203 851760292 979560483 570221523 678138109 648257812 985986518 578636 155642622 638892312 886783378 380002945 423517668 278773722 879829867 829930242 836372635 522982233 903971105 938983932 950632120 771543158 879540108 615582503 757994409 989612431 998156943 574890733 826404379 525848156 699437314 123970769 138343276 770332447 807278773 119865283 479133522 75608161 93132711 788912911 844562198 130334749 170216708 911747299 953997178 6697732 22985110 903348795 935332638 650336771 881435607 329348518 916921818 890787292 952953630 897381981 923306332 663677981 833123353 290611560 438608955 409244757 859189431 225233709 272557001 430285222 784799666 257961896 322149263 751425362 967850097 862612172 961162622 924398646 988477564 496347143 779928711 22537366 331886064 636988512 884043386 1282996 248948496 465131014 535228857 189787465 240764622 520168438 928626442 653399561 816903330 659566314 682178051 255784610 331757370 654922054 772992547 596506652 644262787 205414098 383847966 464298150 768279254 934031599 962986214 852011609 865225561 330361694 370170548 59309621 449212986 882811751 888798936 429696975 605374848 945881417 956819775 74742888 346140072 423809601 805860919 207083235 431749285 812305347 851208080 500730590 668448811 453150788 508135306 253027923 830285213 830965779 879639945 421803834 736167610 807991837 982468277 439715144 736172717 870060569 969918818 771488449 787293727 67525339 441309040 587078255 916397287 178761177 328084609 606343750 833475043 247318836 779270094 509559736 737232829 424354158 823352565 11217601 689947957 79772700 324154421 575066157 788636881 825877836 851091129 245142699 376585222 868059494 945756535 618174373 803484064 155523541 882082696 709067464 907407971 421402349 746897852 378908176 920848491 442807521 964701660 633092272 692079666 741827447 762362340 461983494 513736268 821365605 955867234 111143851 337828714 356963986 513818179 953813206 989844687 601780367 625705752 380337565 778289515 823920442 959912440 2869190 24873497 634298397 786561242 693604051 815082774 608764914 810771482 128265780 912888862 651587348 673700188 13753638 869892574 42584986 837341111 525237508 973072273 354175410 805294766 779505289 990800267 740184383 958852677 971513579 976580176 421593142 715329112 754801139 868046235 13559970 89905818 733829020 745106082 533011841 840752061 66498641 636361427 629930148 867046239 824737658 899569315 315203650 808744367 121929367 191917985 982029536 997032675 174326767 930357789 755311828 914009563 716144521 781658215 158930503 614185751 870662037 892881181 390215623 434636639 480159367 924678637 202963076 519718507 206310440 415914090 13949633 393924348 705387642 755565445 553216670 816456316 191958960 395184310 58925625 810139527 525431933 764310505 895079298 931345828 199087879 236901915 257635088 365840567 951965111 965993933 358202621 426586912 177394271 389380233 730625347 895491687 561821543 746652790 388064372 716072120 847900180 978509645 534895729 966901859 411468229 488502235 758562221 799811568 480927324 933082187 852747278 897107066 184792852 976235127 971821783 998792481 671801142 889085102 71186826 127488961 894846030 895538012 573475550 996776211 50313622 172582987 234261537 414666799 345109229 592964937 304128782 567842608 805310619 919216603 218311711 632731319 97970931 690308031 789399691 896667655 633724256 723759434 819294482 895933363 47398376 728554663 299155658 888930471 210881628 687203091 321433385 807611149 129418332 589220020 551868001 923355114 463957097 728013713 659035492 982688858 586064636 726712566 482565051 606436066 835805831 891984965 78457496 251531635 309469993 463857399 368759350 554152971 514033110 992415459 571739681 892306464 321666198 695001886 160566136 310963058 187860337 992236703 178716158 501642947 893941655 900732511 521350669 839668826 715145822 768178414 88067167 189810487 265876171 855773052 204437066 529821733 42202646 963125433 677920818 694357873 854387902 875062767 533742458 768621121 106430035 858591527 452060973 582010650 615610938 973860080 542719447 633602681 94492876 759642699 152538869 786321412 524615390 677149237 382635470 983240769 176668694 738004970 776115298 964867621 394598300 439684050 151406015 198897977 41998870 592826722 745677849 985103304 151025952 223121076 252782448 303409058 885109086 979682774 165665175 548065907 303700803 319452355 723567387 819704004 936678481 948959138 592417374 832295052 342690229 547974576 846962766 926806869 254817057 463638949 681670104 816012023 616537131 818909594 123973225 820803401 576661561 878338390 208827365 776605504 641827070 835212366 44954093 794774847 496923160 956190883 874300704 991991886 622973568 929780160 704540658 743539245 718573578 985617052 436026804 654112945 789937160 931407833 17407992 415808444 484936012 642221498 489273038 766078201 345841530 813268530 113553375 613739499 266231318 564521156 991284159 999979398 964863428 978692836 464304435 963380568 977338352 977586492 154338341 964165064 999852391 999967435 440002331 654799407 309426946 539073674 360685679 834662431 862776060 900044991 385768291 714049559 310693569 509742333 970229871 990499349 392677971 628826049 750588559 898657233 963389135 975461408 316172691 850440587 182784641 313900876 293682560 928420513 287401819 798724249 263777226 527366500 156357103 602004453 478542024 787443046 598143940 724612053 42252090 825086201 806607861 816231174 395040126 891393316 713429347 998146866 958375455 983395155 713228722 759081518 928841093 956453100 117234971 796693767 325753280 561528334 165710826 877787700 828156049 837588814 928125541 979689431 826011296 977212064 42347963 210184192 704391623 822343677 73336998 737773582 746491899 993967476 349041113 827247371 475567545 627350247 203156441 741401628 853228414 893869121 255866638 738786416 355882266 612726323 417674696 490989662 23813830 107258237 668903674 995406803 177715241 590190894 939135596 990812210 818959465 821291742 782023167 930538161 721675479 775878744 869444730 872720798 533798122 605305014 741208356 936061352 532826669 999261590 447806352 642255487 328716734 609236306 369507503 822320682 884404624 957205297 231264029 694045877 408884849 694828551 746156106 996171301 140003698 631641210 660529034 977459478 41995176 957815593 979802891 998373734 365866309 393192686 338803454 489501448 367967589 938575908 624908487 785906922 279302297 813763106 592683094 884460621 887360999 981636288 828870860 863950288 206526243 500219818 455692394 679612420 257725760 656826599 903968753 957902894 77476759 807745784 583199230 781431209 745522576 986423254 562648936 576047325 75610744 817751408 324509858 978590817 737253168 785651324 612059180 853415705 702045027 985229204 508715528 840594018 48568979 256097582 593395939 847179200 664595936 750540835 657307428 834356328 959898136 993266581 142542002 910798741 871150959 930103029 566994706 901088822 986608449 994669170 685342627 792010206 630471682 935341373 44683784 178673242 968634898 989051472 939007434 940688050 176451069 610000668 233868245 771983102 552429391 966540458 152919139 958487494 612621988 908259335 318709731 983236697 881184893 979911621 615934848 739201654 473762436 602291879 156016573 931663387 783126788 888641392 363780044 992869805 374020540 998740198 745592223 787927239 107153426 370198809 744391306 830409627 440734227 682448516 531565083 592988896 4179809 504985175 102063215 846337194 83669390 675847940 721303358 890712703 941386732 972443848 139657044 546071784 603329985 748802295 886262798 886846249 388776976 709696564 781906304 872304436 803948657 955945422 101872842 763840062 848549628 986884593 811831759 961462094 596851488 963837202 648286961 652926568 19257529 165582886 969489826 973285054 111253162 960412838 952752326 982470558 12802985 669346989 274824951 705551027 609424936 618636626 254004911 895728152 197059081 580590331 58259046 283507048 282393020 373960394 577591572 713196810 10130015 962555612 268814030 739012798 584054163 990103251 327375508 498108436 362287461 389634613 310054877 429259716 871056810 886994357 505907819 857063201 872848792 966852509 96358977 893207945 512299957 800843881 83960681 163817315 17881569 964986475 151720277 979373017 652328243 973510288 776408800 880941919 803934603 833561546 417356578 948055320 183411510 201131576 945148744 975573204 414248702 557579277 809875621 949719329 103055168 496263044 75203804 893496080 751492777 768586497 82044139 414835771 53072334 331744925 949620674 981447421 111017049 964323151 103482396 660609237 860183133 961768937 632863326 821360673 976747547 999091107 485231721 602062959 979940686 994210465 39175231 815574081 477386480 925133325 894069971 937738692 610495597 639621510 381497527 845204741 630581093 843576971 866759905 935213456 294720322 961727342 329583756 376220140 774099110 940702881 851289241 964100203 567558482 653025549 424546776 712254326 469696987 824338335 790866672 824932739 731497942 836895675 643575099 746689863 506352500 664243204 882874156 958249386 365287089 366123758 889654636 972127054 232029701 351803530 123633532 922048045 851602854 852012770 360878250 395483344 527547418 860941869 969368018 993940180 874553281 909198753 849791012 881739975 541283819 934818634 418813134 494831707 142045766 190921263 174323156 666252993 746353263 800424099 139321838 273146741 718746567 883071014 221959677 304882567 995172837 999353543 854802710 891373661 724939643 970995966 769306251 840266555 819959015 931654817 489545950 890241416 289040841 660328599 858537125 983647510 424381701 928262145 475935176 517418416 508254151 944144656 830306574 994160811 83493104 693079133 94691950 806162905 14902903 298993268 256787111 430153239 6695753 237145565 176699966 651854788 527006987 719193875 849920296 917543428 862212427 957412255 862636284 919540715 560279673 830212652 346331313 430927559 649381145 943485032 503528454 627525859 149182088 443608617 316685227 626367949 392823531 451388736 325351110 748248553 574855508 928523584 430369182 804613330 834985252 902569308 15032311 529970623 863155664 935759347 708413436 787468033 70477677 744584773 795189371 918156124 600592080 820751531 413112290 677640166 239977104 866847655 829581505 906736048 68191815 963605090 325831600 929040462 945810618 994555170 307835092 361704942 317832192 999055785 523539641 735575894 689511826 979662872 713690960 753394454 123838390 748813136 159971514 783819668 718304567 719588471 191363481 447807851 283653126 951719258 549537089 936640643 229922799 777075282 399014431 903686136 680968806 778298160 864099965 892089508 352766759 666606788 638668338 670922461 653219978 678919342 473041945 899045504 888070609 947492084 929216063 959233913 284339397 993967077 431312610 684179772 637778017 778728106 941630244 956668531 308500523 476817097 501183721 857749234 324143940 456596237 250317431 431075672 200192541 814590650 420991953 425245907 15015343 807871731 504316000 663695086 580616283 870103112 959826903 977336906 530495608 703528215 507080108 624628024 712946291 954172853 263964859 579020833 5446171 487594470 35189471 601231429 708600145 918398286 66245109 345052021 206712863 259447259 786782330 829726046 906151086 971420259 501700943 896355533 881439603 915475166 550627594 706662773 264766747 613098344 131367103 718262670 706208288 872177183 852866954 992869847 705470374 967228814 807079226 931229646 461142807 860294065 500899278 649609842 669581847 883916105 205246929 630356094 298134030 453181489 977692494 983187288 534258276 659436906 961029321 987813789 992553907 995697415 800939227 844350001 23374568 667734234 835653511 902944136 719725699 816897530 956765619 991648076 216096475 291506194 801739136 872883465 988609514 998420525 183138605 498000962 159821901 169868932 951967586 997080033 900772915 969380036 148873432 663824495 518754778 541689221 733906498 932650801 927684086 939338518 933310035 949369950 849007420 971847442 488343546 653077926 899712392 912031687 496241279 758761126 123281083 721023925 974406403 999039016 843306654 913825929 305202296 927875495 94741624 951336523 486488441 897128875 348326055 571118118 98913172 348636593 100543078 551296723 452173553 605471130 914514976 946245470 333529703 774910066 193239103 475108257 64447550 801090348 132064031 660188272 756644380 850452769 954685024 980907114 411902648 811754920 586451712 684402130 642844143 644466664 962499942 966886521 824334669 932363698 863313047 974937592 101210426 514810430 299826514 719601274 474809897 625181060 305982012 996939741 345657754 745601074 750779266 960262976 107433462 344671298 385275167 902519387 789349441 999310314 207145961 279365078 720390142 750548097 951974603 967203707 584474872 789451543 225932890 704535707 856659279 953679147 427404499 877591441 152234636 473165751 220108395 714361876 823137712 843215269 888194975 924809071 910581781 935529157 619569987 852862332 858231850 983257495 720610199 724681330 150061295 448495139 78952970 787155338 493155683 824354345 719914392 727515544 121667306 199031812 829685978 888191749 482070342 536947667 140457528 449991200 888929593 905772198 312812060 717149705 594792027 884325296 472139881 757653222 311981192 899785082 581631391 718549762 865254275 956506274 770135322 789856569 250182122 867798389 495915058 574866920 728029063 807526899 599465941 791696850 81068743 695485948 360348965 829593908 285180239 662745048 578868463 680085620 416567125 954264808 809636152 817042911 973786857 976659503 553261958 934991528 740066756 826919075 171308588 564286952 968286950 998608895 29361919 104394960 909094365 982604812 839332254 971847639 802729787 816862452 588630575 783052852 805927051 880698331 72376953 817751534 456602936 476098518 628729681 662131779 606883310 833747508 873632193 983060399 248404895 453690008 315731453 556787248 573998373 577462379 443877483 450079245 884769186 903469612 632879091 957894941 969794988 981834956 468272822 786438758 444991951 710699734 121842192 856206694 118820113 296412401 685166916 876715027 420629883 452990027 58512345 303867592 76323499 970981849 774708893 816574121 283277422 906467875 686766130 935984468 452049734 604632601 923789270 998726468 475837467 794047323 180731794 455829919 761257494 763374887 567885357 599378143 902394229 909982159 896919393 946779095 156059274 445729830 772232356 812741255 687620726 758078322 445976153 807879762 251726897 500586208 267691196 381885629 573696087 782757347 391400866 532640292 210430799 411050615 412194273 463368238 463402925 520540478 640980322 910642374 34946082 543840201 261393741 762775664 343627798 807420037 612523089 908725032 103390656 946076308 110493380 523943478 213506356 422059626 2194848 233668401 984134090 993116315 874301467 957665028 637904479 995903946 913651551 963089871 918476467 935515846 293165621 484176727 676165701 964578175 597231577 871715205 480814271 591872021 62007977 276354247 491165564 575755797 717632987 787076524 51966105 255081329 206315742 905342131 781628526 969729705 35944782 745430553 531330964 688135601 382295908 654039317 72248585 862600975 710892020 786095533 923484849 926854874 503842508 743014959 771953118 993619862 1678242 134911293 305403434 540016101 382644790 632088419 615437788 949258624 227643942 249980666 241165789 392741993 490063967 977991373 710977346 728700636 764906988 983827719 204265127 406481728 845770545 970189552 73762442 238359392 163752968 502183545 677733809 983858908 272769170 384638087 613994229 811688758 680551240 925980117 739055621 899687108 436315911 852113573 435489630 782396228 533656132 785012357 857473009 873999134 911907995 915272812 592952660 943297372 758390047 903744099 13763261 937790105 329493829 902186498 424515729 990218381 454524021 533259019 721763667 944033290 539456817 790484646 974694381 996549839 46640989 426569731 127621664 850401648 560688558 819325763 582681225 829500742 223574751 990398616 413803883 835978106 633771397 738993681 534126910 971614373 203269712 232935764 347354911 399635892 244718582 931608521 354570205 830336583 745228608 783385658 287022679 308876012 727326696 777873301 174183932 927999768 755149046 815140891 659379169 885780466 108264555 154468239 594487246 833363590 479280826 567804579 529832142 927213120 938253843 976492080 843835186 985626253 616562726 915386750 108578937 613908678 57933593 452886309 964215756 998501491 827467887 888554577 340235626 725059195 576135348 801321395 146297735 824216043 11990688 758018073 154848873 329827109 635087735 887635625 475520650 476199277 139129558 909527575 252322296 392121834 54011645 665013269 599671316 948729210 721289609 791554382 501641118 628779581 836515966 850372887 637499653 803410866 20341865 506501918 566824712 610572582 341539822 551002012 491385010 673826173 407444826 632715389 18389733 557035437 155437470 810897538 942360477 953168599 127342729 837658493 852063898 868098363 813393556 853972812 355932862 552259720 964219306 994842713 345964593 995696662 287879065 946939278 63088263 331780984 927401882 997318702 257623494 349162256 127226478 698908222 553897797 985965273 933128676 938661521 544991400 686067040 449376615 732696471 690529017 692637360 561481207 931552304 119719780 637706827 674225979 683573434 540980511 653377686 970213295 972764338 791449350 814643967 654909382 758232194 857822688 867390173 394356200 809005232 184355881 631364988 413106738 845473216 485996694 713666448 776346167 840174545 729709196 740140798 510515164 923356552 99154268 535938630 447715150 973730681 465465860 469247008 343994185 962852987 509592675 883190982 336328627 525745051 716093091 823516588 278157434 485326345 3144897 940051506 322813067 587371680 652117083 850011752 689482920 734551003 179058266 713075859 212385788 823799470 313218434 366862322 895012176 901825228 417892511 564429765 601086222 691091197 574631117 630346770 719791354 932842488 1472927 166127200 900950009 957467592 679927026 761297675 910548158 992527235 394138704 480131175 535614556 919108057 925672122 927193437 756242511 769813206 993856894 998343273 423831118 880978848 809928884 876880306 706932742 901732265 708695586 897501707 949248069 950045991 121397583 922129379 108765110 629443012 638302509 759242435 760290266 783739616 971828285 991613014 681233274 687169530 93922969 897971132 411091088 605482403 996271821 998022197 455887966 615418345 752224057 978742443 648663581 906436539 390965568 575451312 760997980 762955758 196472262 570090862 934217576 964403612 277291333 645780019 119390669 153513544 247991154 506216997 423250834 441175922 141441616 385806060 644585572 788928149 942103215 944815556 381002437 767546353 387231999 885334638 484653061 546252323 958229114 987988600 411537237 486726795 556364547 659185844 202629518 254863420 704064478 907874779 926991556 990555913 100433704 539102250 856245515 937053845 834286567 887847730 872271298 893148656 134562614 494401076 560796880 928371226 463348316 593168180 516420373 762127145 688292946 970083032 989192540 989834178 52758734 801252860 653911764 824178518 244254565 284444029 501483965 667336532 1202511 641832627 304153921 421395879 53083949 324980784 543948504 880456480 881464386 960275081 961005991 969656111 499798255 903760502 846575812 857778813 297139137 798964975 654893939 788237674 738932105 974313297 519026413 791707406 963064599 999518538 917364397 975132387 587836340 696010457 156718124 716397831 642141411 976539448 135635660 713364049 197553561 528786542 274002721 620221755 291376479 313507875 779473922 996140585 236224042 796773167 538172149 745253553 432012648 873929393 235809881 314584722 764982349 919586060 777803088 936602409 921792032 940970396 314824418 673039973 97089061 389062092 278030963 762410616 134852270 204955527 567850794 679700806 704997707 977391359 445001468 896695880 788696174 897488341 610914962 907740541 420644931 610591591 95046502 915220419 296975947 936620563 784162276 939109755 632676952 977947943 700942187 805495252 335007772 824749149 864944168 900922915 40673068 791449476 133907013 585092638 610099662 618864907 446463183 594836402 815981253 889151225 124863845 194361281 575348456 840642682 796420401 844651039 28960109 457316629 213289135 537371537 161465492 469305892 873578677 930207835 311075922 884360764 191122536 379354413 277686232 794139901 235555485 336671068 164796762 281653789 925381591 944920227 833840367 887865614 450703804 891059044 116310784 587777094 327693384 782960974 460530117 999047079 822209936 840972120 955053380 988476487 676047722 776913258 870505159 923956735 509632287 582109936 754354122 795000582 613843207 848628006 800338767 860177669 955173931 992933829 853321171 926691506 485123571 628563871 99208423 833565352 20537267 830840423 517975365 904586486 202728873 590207840 407562716 469452059 743341946 786994155 418743287 572557036 794385198 830601379 889462506 956563558 203384513 383798140 969148795 989161092 550888681 570411273 456895867 991897270 888655272 949672474 505319463 816909366 912016700 999464963 468047698 515479422 83637378 612095655 759729605 819114212 247096785 358355541 826334746 954001024 980858834 989648888 344332857 922643771 943644897 959084053 563487327 865579233 440899096 774521153 903346323 920728226 326903725 661890331 559546551 897094099 42530141 139104643 305469310 876752147 18949485 56789517 803389443 991770325 368669435 781159514 886822731 994963932 49078338 973557972 51068911 333721994 585750022 775596847 914813510 996120490 30668691 220395346 215639560 710648004 103559916 695460660 677074030 885644150 405564450 849354011 782204566 983228607 657270747 873613466 774756146 875188700 715254712 803602637 844375842 915040664 511736956 837330142 125117009 543099735 534434443 960203556 357341760 979946857 608230647 664821280 392431218 833594392 328949434 923536272 924857429 980384329 169982059 999261407 210726416 754075271 907917914 925930531 394556124 450892426 747970365 816358194 543787379 947400456 395370280 492776247 303850334 737697900 325814833 840908626 348257173 952147357 787700621 819685031 590447670 893372977 329947273 662883825 464048255 950281657 178323298 327585714 708796377 912531301 471900348 947635023 316199696 870039511 930134615 948460767 805663246 890423741 110721723 806159683 23046652 40055477 173783247 551632197 430904697 565867729 590004997 963905970 871263590 951829365 400939983 637063050 305100722 731362674 106673158 635240796 899465117 969181823 304669513 912429006 641896797 990444326 386485921 951450549 342309897 698085287 940788314 958179312 567000469 595868019 447400204 531787343 234118427 274926684 70521042 95203055 960936818 991221755 392131887 558337657 662598202 761013404 457909659 965060817 253369218 277730515 548783645 570754339 713590872 854840253 708234914 836778676 230502092 726940274 502300793 807974497 906204668 998356744 178752776 346629658 909783279 961981392 999368753 999880907 604713803 836604461 118527569 313907629 953532344 994758176 19062801 99450881 975820454 996563272 234845337 321428458 639280988 698378087 795853722 862343302 558345992 816899124 38009221 584172491 546160195 818914230 98899719 359665843 160792018 799459033 38095228 510900424 219304649 651547056 855061662 887530544 892140195 946543337 199154031 350816648 217686542 445594367 421343285 683286073 400728005 446842386 398914933 819464598 530734924 814358457 19121520 934593820 181685606 575730831 221567803 282302738 314266836 767265097 438816651 685777800 7528265 114119101 549661703 883421223 632098859 704968788 686625139 958895817 298340618 424255834 740824212 787459138 96027788 745628002 603233758 871847093 850763993 871288269 439647556 794691596 852129442 911966085 235240868 875434589 321013544 765307889 879133028 941519412 321665719 611971383 975002527 994538846 307512497 742173941 468135601 906388315 325103678 873332211 920150258 999982282 949878552 951499706 969582444 984086177 451157283 820128029 310686110 820287239 857519375 936339134 423526875 875769874 270430754 828530872 400987870 512419352 545267899 617161024 853599141 948391138 817777387 925733713 154483351 308398348 925316772 930485401 115014958 836093433 134764806 594950441 850064523 857408749 127118921 525182127 600374732 913581100 144095463 560875816 658227915 971829797 545451250 734612901 303443032 959598861 138676479 525505050 859709210 937253758 792754670 916152561 553540677 886868856 630390015 641947611 25497176 26746785 351399798 913695161 919216502 951124205 969933158 988877153 517121190 632646893 46425593 47138282 590710267 682156534 769510294 979588126 416743471 821018666 750066480 887104383 600363264 856611178 606875825 833347120 920789935 958640543 440072095 941403166 971712341 992444947 803059137 992009283 573882817 853306610 81656997 721178218 900005601 929336726 984203382 995217422 982598430 984756696 677913817 809161733 50196137 560986024 78077703 902358342 255247771 461784224 979771480 987713293 762640790 916660144 754489179 841372252 92707863 446516112 44775196 121740590 384761574 858664324 873054577 984838608 647845526 689567077 128976396 712334962 966445486 972215691 576260351 820382403 388099402 711346974 615617516 977260468 829221754 858366214 884645893 915192382 265223698 331095630 446051284 829224161 195602149 796415922 861958040 909093400 454746908 663167364 869730200 880753713 806628401 986262292 860141243 881572341 382803029 592443088 936993283 947266977 360102008 603848737 915344579 931631306 871728794 923274862 847218464 989739239 728404520 838816783 458999885 479373927 209449573 998976180 120407486 612145987 378417772 381610756 968594962 972498423 213091322 630864013 777809904 868420747 968504561 975098374 497137641 732010176 637633888 677970998 676313462 793996141 271499641 329758169 453912544 870922872 470629827 496863088 826084883 979734109 804762438 871882186 77499217 143685615 858791240 932988165 13068703 190643829 300294711 833274824 980097707 983217424 39735927 296373192 462561861 980457209 28310720 246138084 757088183 810202757 483538659 881919085 504397167 605382990 16270298 891737557 308268263 338143702 87267964 917565580 377406563 563356984 668898645 703214022 862492359 956615176 342751139 572037537 514597555 648223643 322990435 495063151 474271379 903027905 244023697 569646225 815161024 962155270 306157514 676272624 641135528 832520704 590239147 808135038 722458453 750703316 334129902 927944195 936408916 948366791 884451047 983666561 116109132 612883883 917496455 924593259 94661294 671851933 386937468 924290854 814627726 913278458 640633520 754839894 816996971 917729335 633700018 834448680 118762819 199831696 884473974 886470496 552203489 588742551 188767254 880094167 370446591 759536397 66476841 434757212 776996657 896778471 744634802 964706347 945047876 950249997 979734506 995976032 771889034 786662159 512969299 601026038 389676131 732658732 277392510 339813529 990743490 993679023 432664546 445684054 700709316 782773798 938987973 946371998 80795590 687101093 231664990 394990784 763508105 889768800 102792720 347556921 563655124 898825262 179961172 862712078 605139194 634375770 857264572 968711109 949311933 989753347 133278026 924132855 894181487 993579488 991151781 993355171 308474697 731152872 542339502 807586974 285736308 532180405 205092403 663710996 660809228 689030239 412154997 874768970 369883592 847475610 630105518 695744601 901814013 966825825 153938963 876699582 732019252 781453488 955760359 983291487 306658754 584409720 121098063 270894884 110032335 844301663 549340504 965145697 821823036 849243939 256779405 363511270 167705702 231449711 509815700 540542208 239489728 571748663 326378037 479078270 274510106 687238911 775044386 778209161 853483006 966939014 227753894 696591328 242139369 520095301 885557610 920965083 22587641 306989146 96831468 420023683 956249703 991039149 255391957 955685607 167836655 506833659 385903559 782904185 577413995 936698391 653252284 856723232 670552953 759419813 170705280 749026535 508331499 652266103 981147389 987973255 976490240 979298369 716099986 836119034 324475589 425994877 253615014 507497702 541736567 615901309 395798903 454755124 270613735 964050563 569916018 752299767 663790849 717451415 353271052 482807093 654811673 761200077 968390131 979883482 224334490 748935202 244309421 611703861 127073874 974248591 400108273 917492416 865003719 891418398 382080588 650876682 211700750 794505140 384538426 708591748 639247893 798279697 196280673 810567838 861929893 903696567 377734323 877395739 285056104 491528589 313758703 650737455 316911933 810611363 809277486 921802541 419515387 830496267 377022410 902961166 84109455 93809616 799597001 931138503 656536158 896133913 482268196 723519438 312602738 747122389 979098693 994561959 426993895 979964222 950273380 992914102 138527462 316799971 816003773 912526515 189263643 390909440 164077494 754241509 678305732 831049592 28269166 495599725 528973586 785757491 831693809 948877729 11361854 596290762 988936122 990462424 307613653 531291145 65231326 952230743 48475738 726365493 394164935 694324960 341180936 705416154 992857631 995254258 408291439 626513615 822115830 834892418 533683459 859511574 32079959 171142978 49272700 136650144 204567501 375176316 109619263 826673896 734675850 982829913 343155045 581821918 854240341 932983776 573590665 697395683 870452692 922087764 390548679 445638194 169456404 932739851 785532021 847737645 390945373 487771392 528440282 545617408 863494726 944441138 697819830 986852764 93482220 493584878 58633729 339711154 938514649 948654752 203845484 579724036 325210476 653899670 65990216 701121604 607567139 608118633 806065148 929462531 970005275 994080355 881217480 959101630 907927073 947265293 823692420 988754644 141246483 490649612 680746416 813511644 279764291 470656330 88154437 801513026 887452076 893191920 80276164 308711834 441724793 550552372 314699584 985598907 179664202 740824128 584829812 735098873 179690397 941511595 453388616 662586332 621682644 941247295 924057354 996676650 846588947 881435570 434406514 621169743 122883796 356593651 902988866 970323348 347555430 646967579 785811510 817071740 900704720 976234409 635905464 802582935 475151299 952444207 167946360 401849079 102343892 525489898 133734560 292752176 890822257 932418301 478362857 531823785 317841603 938989269 587844613 849808387 641770112 666369650 716925785 810678725 814839590 857181295 639177125 776050774 659734549 817277926 567346284 924201293 879129249 962636714 470638690 623426077 26955809 590493925 393359803 413788806 443608651 492220928 836749010 884024497 754528834 781217023 460574591 665445335 131483735 884616529 735040022 953984505 41468616 75917877 882509309 995670333 601572116 620280360 797651490 919183948 606909733 763748792 179363690 914077063 932498331 954889278 459237065 637073780 695284243 737825434 193222020 693671595 546483166 948833430 307037860 529323189 965489026 996682018 570976613 805080931 674366052 880852852 778904795 882040996 750828165 815291778 487939846 826029261 9409651 59389400 384082028 642889291 851266240 897260786 642339782 765138349 977142213 985848186 983132817 984650848 752219418 851767179 470695932 917878278 204274467 205112252 475667088 750470973 128687145 994901689 215917835 308931096 167451966 309740803 12147665 30718437 82848046 341586172 469585111 998361285 430602959 863704339 666145924 946028739 88841879 558504420 24399629 554513583 856090061 994696171 739212952 929258579 203209817 274047940 843839619 983652526 780040880 875291081 966197098 977244960 679455848 754730403 538900616 910398179 895167881 909632281 357218213 915402815 245039687 542029183 680992946 852702433 102565005 206515830 603022877 783666731 83933773 776408158 537399516 681605976 224144080 833878844 829720922 848043936 848530595 894852146 235991471 421230048 256583180 740316835 190514604 852944115 641338138 793197253 584692588 713678423 568100686 860312408 727201339 842239961 374774029 835359502 292560522 845659772 73402113 672852846 103842370 368634039 138450774 796425109 778098620 907296745 176514869 250249437 168583989 925798521 986079751 996959940 944360121 961339458 435782010 905625807 860722717 949783452 821443524 835977236 116640011 894136878 766144681 831835353 238269189 510100045 544003594 866334363 525738370 947096272 716622397 830671829 381838640 475851499 391232608 872689992 223167405 767512711 670947613 924647329 561776748 921209876 340507216 879263563 267698480 873461993 585566076 670442262 138306750 437060702 168042646 827016486 295201794 422810965 625673075 913760349 849592450 999766726 950309012 968141572 666390699 760984457 310693063 343999176 708114905 851966457 547485185 637631929 225289687 238031081 370603151 961237404 573579029 907111794 448843406 711135264 555796459 562208299 112108003 742848355 154567680 994795860 509049179 839133292 294728000 940806889 285657707 608984286 433699557 943761839 841946947 930479985 649446268 697594567 538681353 998004891 159272324 823085797 500862793 812028806 442343076 599655667 134484250 646534981 526486395 793730251 77373062 495566444 733957023 927406936 670284567 754340011 776754429 779632879 322683914 720198110 615396676 877276365 567562497 658682123 999254444 999388293 781599643 962957679 909448041 959477208 5866403 930651265 615509557 853527191 762391411 934904335 694707271 792227692 74900160 557706998 644108750 892173173 165773769 706989820 546704631 897152664 173748369 834003188 530164210 882434454 156378289 326261006 759202161 783939579 498953256 986452168 379598503 867568051 425002482 958460658 508735027 541191275 292705754 851999746 654244829 869001774 337310870 821237334 992053886 997554603 715604977 794759434 488199712 864014552 268681216 753546219 248048558 871496211 514040849 772098485 38793811 283695977 861779843 941940416 841039992 897780181 228257042 725668504 219896023 541012983 994326424 995771843 705715408 743182487 694089253 940265547 560175689 663670150 897064980 927428404 435575583 472140759 408760822 948672241 570799206 627763625 611825075 700104183 362224798 629630649 267096973 965934375 1417243 527893648 76901635 315652307 425994345 676893061 929046458 948064712 794898000 806638366 766652432 813231919 370459734 584579182 809469980 943665594 496810463 693730036 921026256 923271276 897023515 997081634 960482765 990943363 433179875 922645311 203705191 855792168 14675806 794469513 112951623 148649300 336573351 918643176 315086606 945785740 724331770 932181236 395014575 931500348 559822730 630185656 543054246 875086630 779066723 841497182 740845616 772147118 916941773 932776891 306067711 735770105 435838084 539863255 492859109 684295904 958788394 979149285 707726351 981768500 689694119 701172671 51148389 416153332 604314756 989638771 440091813 680855160 267290304 418513872 612500187 834155843 382706464 890245853 504741907 817073282 777301866 984146407 537322755 738110788 728627432 737599558 632021160 654282738 378675095 679699113 96397891 294400276 27331404 781212678 796804262 988767845 501411515 586339426 362780008 667816171 537248243 781793181 284795146 959539030 466928433 844389350 702325438 721883513 130056225 327085680 295459636 567058538 50465596 897151890 189185820 925475349 936261867 948736638 444453089 486985423 101315162 242705915 987385202 989588215 731472748 868588271 568049831 702567830 397991037 985585541 554586878 739209740 517678494 622803849 560520205 928538664 84149639 625161296 221548139 706703839 920855677 976569175 768923868 999584039 536251867 855734706 971256914 994667410 955187125 966045935 704606611 946532620 989738788 998881696 534716026 865590203 696142437 891082019 675787110 875355213 222795823 679489637 630090099 697971863 308771096 345105192 318718028 875422648 683397470 966380452 684439552 710326674 681559348 940979380 484407214 565443458 844445561 853750710 845983209 852030280 603473227 932209658 965924697 992574193 861135447 895573199 439462112 967817088 44428617 886443126 718613750 720059921 271646940 314897938 453184794 883097841 565540149 765528620 305951277 828667262 29446814 598735450 887556416 893770956 48580348 742780594 904928917 909931005 560305358 966843879 792296400 813239663 284706913 504716816 877656229 906373659 79685859 521563657 848140384 921319420 439571325 507351788 860228591 886068425 415918256 857312587 239678166 445898665 260612736 661761288 759037475 869292133 613851082 662953980 784796225 963954629 136030041 743186854 809697863 940030409 784112175 935974511 716554430 748900906 203536465 378358759 221210149 383110037 444684916 709509854 938208443 945998761 540272222 644945591 765504405 818583568 172100090 462024006 693032734 779570395 55902366 900952543 673901950 954390116 95437803 538420172 145458871 832067756 467347366 871705570 597188567 682442500 996115493 997846379 555502602 696776129 171625461 344338339 251071609 482037654 819314866 928598292 314543632 370114830 789044464 828095809 334706713 868431528 917608548 930948325 724855560 956698168 253213125 786146386 913690441 981346050 557551068 670676506 162371703 587654696 663308620 880022130 680569275 718844729 920105836 972137304 568578937 599400946 701739618 761242762 214538224 521520903 729900499 829233583 960284508 983400545 639359421 815610454 819669225 823926023 867158504 902143763 643529323 718012676 258065537 778344933 184402124 744644026 356649531 969506750 991692106 999622983 243684012 580572796 886772551 931505134 370725016 425628535 206278947 496864035 808488247 814712323 517604324 596955528 892957661 907128439 169576222 177229415 562442326 872676832 206922013 865874051 241703974 947128550 608557538 847980886 399317207 948498792 382215501 558132437 218630111 753873248 841562891 947329935 467701786 642918011 466389512 489508982 369103773 755419132 316554908 937220444 26256365 858297222 232869274 436266694 767559888 863861617 512392455 604567574 28067559 439215894 246630337 631273267 853088488 949206290 531084247 744043248 211548605 529660687 302946626 627492069 448840175 685158694 732003454 904563469 433941976 544742579 444980211 693990050 623052088 800542174 404841488 971617426 388700728 723659527 296644632 997534422 924723044 950859480 391430023 813780296 918811216 946735987 149734074 957665904 846150863 907315368 371148133 776302023 228919861 752873102 138307498 389826515 181134458 544556163 239259889 713436687 384284327 702219599 461451672 721850948 179430265 357127396 48841141 585294703 337269138 836855684 180791117 395675998 588407089 646066167 255554926 978241877 312659630 631325655 848704467 902080933 514253420 759462366 307777650 826889250 49006221 807436335 553070662 930775453 178698980 442208036 890150552 974398617 58780528 903947144 926364980 958617546 379464181 621552387 868442815 922558060 857297992 907218556 435258342 908642335 900281950 948752399 899841994 941690571 413146868 935087209 429788573 967718546 495996809 807426217 405451192 923549371 518226352 972141770 947551278 978434606 730717018 832482267 975953172 990539169 838651811 963478022 92159629 906804111 826855629 977806271 636299850 951741909 154323386 974559377 849267218 853124547 432962527 711309536 542417419 648248707 325142081 703574240 563490470 577270580 412983573 441014620 259165181 683158933 191955697 727861813 224581961 299025817 142381461 908637464 352587292 650358616 888464449 948473019 370907856 546262237 511507099 958579564 711590775 990376063 596379796 937190611 914496964 964128984 953773912 993626103 376198992 503010027 910270816 945250598 400238289 745875793 198876927 787598752 382639904 663056998 342329384 715143342 470334597 797423133 624754573 649586342 636195998 916885963 607963249 748955561 598248319 937115870 883084206 950872019 180844737 337229064 396081189 538975022 988012039 991594171 733374331 817400382 843192077 891154339 817748428 883553697 67443510 406431825 162947482 480964791 222217916 999401875 238505908 968246753 300884312 675522736 157434723 365866000 186142500 412211978 310635563 771525660 288936668 323837424 369471502 732249178 500188624 646942375 498197447 535802585 16420765 949762395 520900949 961173441 800866403 848811345 557410400 615555194 803222427 832180615 634129084 858894018 422481417 958120550 828878611 837045765 183774173 960340590 359419749 568728635 539371080 540496481 929649493 994380155 619909705 985624412 238604377 857651400 347337784 844608715 425855446 773827778 133939654 682726225 903676301 999600692 940004581 956375213 293459527 523241832 373691330 759517389 931817615 936765973 593333808 808744207 638418094 886561740 925395799 966187799 930767404 958862137 92362075 373155107 247908869 276179903 751502110 771718982 22637163 211943639 930298046 961624259 696447594 716143679 240936242 486247714 127138061 636789407 651439642 772733298 468245945 576819807 436659159 709141431 782371680 958803978 53805811 946644415 41647287 409198198 823873024 927618544 700457124 749185539 216408385 956832848 306010148 925195719 200204355 346036677 465009052 988349618 533239350 693326646 303173761 434176750 807083647 811867645 324652246 774576007 902722208 936265034 278285802 489782214 644126865 929136161 626915518 748663722 125793170 918085375 129792698 525187455 81625659 136278531 321740099 953525698 624672654 982153263 108721623 386561822 991468239 992923569 665864788 973394511 227777639 747642012 446665540 521011763 986182851 993062107 340162841 687175845 487222706 911998689 688151788 793613220 66313861 150808264 363675821 501819106 88960467 522867453 305415359 310709580 280237616 826434475 471657686 518103748 956409661 978908950 305168657 599209032 238188729 261850285 748679591 985369606 575908084 818020228 237749887 725629148 365349144 432217412 240590449 696463523 846537712 926309523 50861982 869525656 625241466 668290596 854943515 960268935 457759365 799875909 706485310 750981761 184066185 752199803 723686622 957194643 910154458 934817242 851130535 856520086 578593633 887477977 655231396 920358044 49495426 696300382 79236997 367944836 32689823 457047597 705574653 784498169 60399741 239551535 740348645 797716913 761319720 838931382 244313557 792524568 170302860 530127193 356077601 802726300 153110624 440571885 626062456 889717645 524649303 747264927 290401640 574205240 706930802 789355932 131468349 550768125 653811560 769520494 300185063 701010801 373971587 743113290 408779928 840338883 523923613 725093220 18396806 142004981 554859492 815153332 548090048 615989600 820481471 959114186 994395952 995298684 341047594 491503372 473166781 825033312 660375274 672858405 859906238 968126202 642998878 836887654 521809234 932159570 463700135 631893382 59855574 612297413 616350477 824845247 845762802 901986746 111364132 975144963 757116588 951761502 753818191 794717608 482108968 746829641 486944304 739682743 385888499 772319405 732981190 894198545 700143458 711128039 249858966 781569242 402736258 826292503 865847159 874540621 57619641 575926072 321200607 618911332 577122520 597061604 359433283 765892274 689579244 919869083 212450223 804542220 390033198 757558498 992797351 995431380 371276637 682676204 243467302 465001357 266489310 275839638 518041653 601801959 578694742 935921717 478996325 808373094 647627854 837344238 388028997 688711358 469626410 489077546 104684043 578824596 253195559 932181383 28575868 156702125 223241959 601527631 890438455 903661557 243020744 689264426 867112858 868792207 171027523 833012106 541200776 890328427 991474888 993010863 600912636 978098048 125825968 253769996 51714091 866416011 907334381 985663351 500964064 562284571 565554592 705932961 954226235 970340991 596272378 696091480 49026416 546134763 20312099 306161376 740270581 784688506 17066392 239877890 30632230 452386823 318287707 946956816 989694337 998008105 936161861 992882850 884551099 976866124 154912949 514101271 234161332 845326544 804124668 955911301 590500614 660588774 279417589 691641090 515225100 864354399 921698538 927263887 843946388 975934975 23053312 159189271 27946107 472726512 286262429 841978097 884947850 887460709 622317946 670768871 287411211 980830804 973401255 992821803 561942547 936136135 54581295 835155330 113609254 678357053 142161439 285613936 165979910 742995733 559233611 731467413 906328867 921612884 34672808 578655916 829990514 988375015 404318008 777191149 562701798 761513157 982015999 993173713 668128873 915442594 172387106 348606272 110129302 673215164 120210030 724908307 502461203 921567679 41542275 964116732 683035794 838847425 285172163 477312849 692855546 964961531 360508179 717939257 738015834 809249903 73660973 977259682 526586644 807495542 26219580 271426907 128077933 304662386 787534645 904306312 610693213 869985051 725533165 755295393 78320577 951775949 205538061 381495848 217642495 273092072 816890033 989617888 805006540 906519412 991222122 992127583 485420969 657257711 924915658 957632085 44489488 778910035 154730358 901570842 361030501 626956625 690147930 926019341 609910895 954616242 857227095 978901714 135556333 867752022 650391505 919474951 22700058 637420501 829239536 980925714 499717901 735187787 560269710 604537938 947452149 999019738 829726638 851028799 915372476 946272498 986690964 995811910 987988436 999282302 134281740 403870200 330812899 657993490 853670112 930532654 973596680 993642470 843416222 966948782 504012250 840936888 573387634 773067843 314042752 769286013 542976668 969205780 791660273 943220543 164234892 661984009 364224294 661188403 205259938 576038677 71336441 188470596 807574084 966706553 111438326 866347980 323478074 671955236 281483641 742459074 470687543 862152549 630573971 838558741 853770309 865219533 978766012 986652126 708227599 898808203 593092366 621058493 103965093 407494197 200990034 869231879 283769285 293658214 294286406 983396338 361672630 823796461 917443334 928705600 175486742 747352681 524655634 717294861 515636086 566719695 852666816 867456386 198082553 284423086 370937058 487116485 186652426 282510557 417127231 895088968 983485112 994949887 909989306 941614113 355254420 802578270 378987019 849447182 113809002 227781886 924172114 948004844 789418882 824916321 653025099 880826139 536268951 708354158 107616288 566192310 791873914 905689034 677733051 952730138 982425086 989698880 747755905 967448759 152321964 217541955 578387537 599415689 774079796 888870567 746592862 813104968 381466605 683187681 332114762 610771204 231478172 840286716 580292784 809865698 58257807 472117011 762296608 865392352 454485953 832989779 923530415 946939308 598982275 824217878 90026987 318317244 150906727 718102088 416417153 690317275 481226977 482223190 914037611 936871453 557445044 658814259 925798100 990625562 541345040 849148896 372553389 995509399 737857753 823955332 735962778 958799295 796000532 924891567 522158829 658123891 945929786 971306935 724292487 819774622 906671235 985524813 642464411 970198736 166671796 576126815 909872436 998262308 512972187 863579660 859527849 991074905 153278586 725610879 628680401 717991802 899405174 912485455 86486755 942056533 846236111 925081064 315663566 793060406 356880306 486201276 297516741 610163833 698766944 996336256 767726207 911440266 902816627 981964963 738103318 994212213 605246812 699547681 101671168 113841456 786015225 832068434 874779736 923595536 821618742 873896944 762194114 972725436 240112166 921351682 300526804 347828390 915082567 922395352 565772395 779716257 691665770 699762615 756819906 842538878 301739062 861179603 459211389 499139281 868478521 915127754 762906842 802442659 253898934 545648602 896323569 897450293 343810852 466701268 254558931 511840082 345515909 514656723 587667000 779590462 531219156 968615124 322325341 880992635 435677155 514033759 300775836 537627439 449204072 882212254 451696600 505318639 99301604 799167478 760216698 774524524 498032703 649064819 833155739 855566947 674140059 948610081 947343520 956395286 566671483 947394447 759797626 861670634 920142690 952116639 924179614 949533478 879457364 894066669 902235427 968546555 415829066 958283197 656312067 945483683 707601572 913691194 223221543 393354424 222175136 870227307 445864780 891710555 5044412 224054188 924408820 938385026 66020957 161227262 854263963 938240359 538068050 735465215 811378838 831424190 352479958 853752815 288182887 807544927 359583735 513208928 432480711 511411515 323494580 733221187 242096117 687652903 409939364 764080515 431595425 454148041 837934651 868545061 666964517 991137970 578585312 625704564 392236817 817606514 735567550 788343702 45340569 60892855 48158497 401993932 998886654 999090192 393937153 734477653 158361012 430127132 88420106 177918348 147107264 168629127 967121047 990813177 542883156 643225497 507188633 993859339 488106045 955991367 353762709 486601208 411503954 419141145 363997296 629391692 431770404 646473194 302886441 392226399 581055809 729492341 336674346 771911605 771368235 782920070 23350000 791013557 581791727 797655757 383775621 625429596 332879571 942795575 144622280 319563310 152038110 336262938 700729409 757817116 626843052 909421643 597718826 773268494 21556322 415480503 490046227 999339282 450788696 899914844 603456947 765704200 591606204 867241759 344666120 358944645 406726143 748491355 463180964 945689025 736785899 820305894 598777525 888595643 243008389 912871096 413092364 752051029 941982982 961942208 911297381 915375615 702757326 957727825 210476730 876918283 637914452 993246570 280055991 565414036 344357563 670324366 379375488 459211823 397713239 778892282 252770062 487192881 931865711 934098541 909005570 991829693 879995394 887685125 667728059 702267038 669721624 858614298 710759148 892406326 568208780 757737690 490996524 513559560 855266834 929124734 615569877 910859723 565712900 606656214 728657684 854594384 154259286 886803870 676697938 678702363 298389836 818587344 129338422 218372718 588163243 897825879 811120826 934274738 486314621 946201333 882106544 998097785 371951307 399150854 960826566 988277945 40969364 127245811 848558398 901005086 693336234 694871646 876820017 927971338 917935623 981892103 702652224 847575493 527150723 855244407 269580175 439242634 233652267 820942056 155378534 647738159 712723792 969539000 713547721 852971771 419173422 714846529 839290666 938297470 318657874 569785070 16852416 779373702 29185231 434065399 176633034 751110398 125785723 792591590 570527459 644392455 85997623 143180056 33391933 568868716 250897755 533460017 780872910 837622872 496002616 816136890 739153910 976787213 98294335 720648797 837894934 989891471 458052701 503919292 961685597 999852147 181028094 447775974 588152633 891668262 7214618 54546385 228547877 430999196 255717 837702090 931802667 994395908 341558560 929541546 35144119 711087175 678193281 847593464 697939820 739613604 32755547 199330049 431211498 932785144 691692530 827592907 286333930 354651071 808453327 936542293 882891623 896126833 820191774 992213674 683503970 688849293 376237010 708315230 614470932 722340976 344577220 497126979 435432632 716108151 96815874 721908044 874068183 922329921 542491110 886065313 496710156 908972039 567442355 590225493 229761295 504009384 717924804 922109563 69514613 958218207 148060752 774692482 554105792 735853180 800009055 864618455 84151218 760315364 320016905 574291937 839623719 936876158 866590384 913158690 810626437 988162764 979571747 995070974 954027522 998339503 225595364 783152882 459555172 474365159 30559679 149801009 733836362 923107915 32130306 963938410 89392431 170965162 359378169 937531901 892606821 909522901 18581606 179898331 749835155 833550529 423579589 661026663 722030094 743484776 198054811 412672469 837792156 942650594 384603506 843119579 551469354 885208604 840186744 933837568 230882797 395138727 145894125 287018746 901911531 937727990 224667438 367885190 951487604 997081168 119311101 346034816 87831788 594180738 376217580 468956924 250869864 543354700 611997949 671544916 265578130 383196726 682807055 683373478 435499540 796937253 799024020 824049564 724971919 983010852 952950488 995568911 445085048 790909374 527699223 811718246 876280302 891316641 764262841 841071703 874334031 976219737 922432387 955819985 417116882 638911190 450759610 907785794 831774464 865323756 80403188 163690697 625693220 661666090 246557966 457137323 163761616 713263155 387289494 644752134 575192163 645555067 791799021 811694395 647415342 889032149 244613233 344771368 236211915 252373626 781379285 927676090 800909986 992041449 724011465 937453988 989209138 996087225 116612142 309775809 632744140 663701823 141645687 744826211 624038319 995116535 673142736 967938821 342635465 511855789 334356080 342243822 96883376 707811813 811553229 871532343 885275707 984945500 905874472 980522649 539207934 949779999 116917805 773514199 464769040 781772371 280784290 520986759 777289227 800064624 608664575 979944684 562129497 650975045 332707995 368804362 529313897 720090059 534602703 882386041 986761337 990810448 560062722 921328791 949127174 973913570 930235494 942049329 812132369 919860981 254796607 557308091 20118614 219642588 482183558 896345411 618056161 783425244 528131187 661957371 507227914 668540052 622425180 927800610 361936248 511420128 438878477 864080924 108758706 642348297 649196175 854559692 296504935 933544957 45171527 136611310 466659866 989459477 472169764 832476988 117210172 383805389 748460883 969880227 247987804 750506962 731649393 849769344 244135203 692169607 412326722 661677999 933671728 947368491 442459410 457847537 60013191 220313116 69286476 857473927 301153409 675818213 111501532 168465914 426730453 507331399 390145123 458502412 857056238 974088367 935263703 942289295 454360938 977001285 484730005 574819827 569750176 807668445 338338982 848257909 750628243 932986761 834250690 987020403 999760182 999919923 849660105 873661923 118409485 159967625 777805984 934974216 503879325 724971639 966937466 969930616 355511312 930409265 797313139 970556511 854233857 995372597 993519759 997304217 207815485 706471790 185882309 307403835 477231655 971112998 78101880 620515601 525148496 855534862 282847328 895442654 766542665 851816402 664234092 717870577 74993601 744740167 293743293 923974157 20507042 409479020 68475943 761348663 172537546 586884527 643830811 969940897 232759097 297228845 101126906 125914400 116406830 733618148 655259079 917958147 479422839 749193632 732413326 950349808 11855847 518065728 953256811 957463857 575696181 963901491 47706394 816687962 36286341 649831152 656419321 989417410 793252557 861986845 822384691 843251370 616495865 778374636 3614865 173163645 169500646 830670488 139268457 791100725 505062222 800149980 583872171 720435158 698114347 920664181 11015531 702385340 738898117 896357724 856325601 923139359 599452640 787614639 262559705 883532370 913593420 915325038 547408543 693483836 868127623 868517878 33630967 270263840 64082813 746415370 210574054 293605021 909227956 910160917 562750868 997215900 521556294 819201848 692663831 884867783 847345443 874555191 361130317 630448765 364621403 488289645 923000791 982504155 111407551 610243422 896377370 922775916 393480901 687834588 48504784 304407263 703567741 800306051 540706168 954589033 522666405 920120947 799025992 806953064 457482034 988989598 831394985 907565971 882568023 908584086 297846102 627714621 592937578 827009576 755783439 795878512 759921793 927634682 489625001 589666628 216454226 895349662 727480683 930814752 252247314 774545026 548916497 868316900 328516934 610697558 295261367 385254282 722661834 991688061 19974695 482543693 576860085 921606861 82313631 153576921 992108605 997986568 86487976 543499921 602895662 970758824 511962948 728851862 848225908 929578103 164924665 862987543 237773777 593263369 940018019 979090194 667126892 723458161 628269002 742381804 169371572 429145469 987411933 989131833 826697299 959397751 548028000 583513246 595055017 726909290 441935493 504379645 890753871 945324516 182387095 822586078 597233694 817428769 949085552 961065018 436241764 444875700 428426185 642567559 218267429 842576147 829853816 987626607 633595548 690323211 509542277 722859196 975958523 979622042 844152885 992404458 493052310 954377170 479416720 644830294 310284781 417469144 910198122 932045976 81660319 159542786 141971325 317836952 262006043 755448217 832543169 894448226 221594829 750399445 205914934 526019446 108290211 320834884 40857272 990131060 881026992 949634132 564396386 816332454 285443166 380199256 36719367 693360632 331511876 470781086 542298053 681915712 50810126 469132384 382427599 973628609 455496257 814679156 689154817 951574693 338119369 915557342 529585938 748960606 116906354 498121949 176146901 503799184 892589989 963228173 770033750 876008066 288583098 484707000 110280254 619853208 760602379 832057125 566949230 585168791 577818919 691331276 902517393 913684911 90052354 462894819 951399051 956151630 763718786 934154005 814159892 901838426 596820851 890605683 798819601 820196994 209692412 261041655 318961395 648620022 269785052 421311237 721199638 914085446 991233433 992932814 935511951 996599959 582396156 944915993 949001422 998609230 169171985 194028804 765983628 767028066 942523489 945653213 893532723 966502969 846563993 956736341 290042147 443191424 120296619 871395363 116911368 383439091 903006963 916381917 53961011 193508250 486224835 860223933 77960112 829463546 901933306 979474573 576805286 895786868 919471665 928264889 116201076 893110126 279936292 693076479 368233988 707966476 16772733 75695653 890415073 895298750 481024988 790391870 731458119 968052675 13861626 785669550 668737292 975068622 526138577 939406651 324782459 523677119 347195623 917009809 525459090 623803804 512855133 545591500 770917922 856654128 552378189 585945197 14244064 264029973 268129573 741410124 905557655 973285545 16517813 605216153 29718067 508328645 62186759 305148165 377788630 679086871 36252180 515628335 952090066 971757655 308964287 479672943 805613648 872479563 834303556 907118050 898750977 992143225 254802269 319556566 5900111 618849421 575250243 912629858 213929035 382738841 679361655 963974076 151461082 735759789 143353205 566444854 793967448 820857045 57805423 205868439 580831859 796703765 841811520 943582289 350391612 821635632 199293989 307125314 202446653 620520816 371935887 966402850 770616016 817211608 968962902 977981606 975980341 989867447 85537299 840403023 623279873 704526288 806239034 850963098 276849302 558858469 84490688 658475774 261381439 621317763 345202443 503483860 686294858 930388663 128372441 566377343 250233258 898398975 656844857 862825813 436649336 714664037 631371072 963734190 610364416 855664336 736806632 999229003 773782972 878855645 986112246 996511171 672516442 930529730 195554669 225033290 624124043 828693795 53300338 874736269 369609059 687317070 153389863 481017338 141948417 579126559 382642672 682186516 152271646 596217903 144680902 889945858 483429437 554234066 913336651 994047024 188928700 533068887 164952715 613339180 880410568 950466249 633459976 698142596 65502707 397012930 154822483 584889132 580257570 791266600 132341724 387624262 49937731 327228961 831798022 987474618 66902997 578252112 956525964 983215043 764399934 995007427 69988455 588809303 674010984 765866128 751952373 886092316 184388071 212035344 519975936 838928141 467496091 798204859 177422274 301928275 464365944 812628711 407704222 652745638 81846570 122500785 423040734 640265840 207488753 845588714 391496476 600963650 771333870 846763181 452492946 770037811 708803996 866166565 883498130 995740335 794245950 820166881 843335330 983631472 91428885 175612564 41529519 733542905 904061689 940536153 989986626 996475254 748329079 972470234 278192952 345058286 692940701 750176299 897512591 997175100 646662906 983074799 28791432 675530845 624610448 825069047 156098503 730162964 46600433 928297359 339059682 838148552 486346631 863055250 73054501 665439878 534310976 561420612 8432254 755766009 892049869 983726643 578777733 998224663 264983065 604093782 639277099 960605183 843993087 953092648 424597521 991454250 474155007 496341101 159555354 590491489 200332622 783179775 118699970 999024468 240493950 678230881 716852611 778127969 667883327 771146324 600340098 968876852 591467170 816369493 57460719 678510755 852098149 917338441 401338543 717149288 445606649 700947032 517557595 863672832 505718760 509641272 667181222 822421320 78927074 962300207 960506525 985850654 617439217 937116466 644769097 966833744 113016143 292894079 807263654 849343742 354784520 536065228 685525508 803008546 691487354 932287902 578795886 705075183 899169691 902579814 89937446 440629191 113143058 613496967 750097959 802203541 82110351 941448082 70725460 401259048 618066494 826354533 482700096 645329303 916562161 974408151 811616463 984201233 173781484 998553500 698604722 731398021 194616188 763300574 688270839 778461559 689200640 725020848 798200428 864492737 156911629 858680972 420593133 943166261 801245707 922364278 335119217 806775794 164975349 235416382 615134409 770039529 139299310 489648822 866623665 953374482 793563632 965301995 136594468 854305739 535579638 859932493 513154743 546198083 687267509 927788075 371984954 403439470 337525828 381644109 597507419 879402169 188539853 429878086 121813866 921404850 419163758 767980614 776202480 987178943 247681250 436611538 589789622 709965139 725925284 980802757 629042826 940786386 864162555 982607048 594575650 852824966 660591811 989596546 747536135 792186745 151949248 978682957 851821684 896710694 419971955 806960690 930200912 939519130 19762313 588465505 931555647 953945133 201040982 514515116 683879346 777129908 585656269 960494496 748351065 878091748 188287050 440892905 17877477 676909165 150550707 409690198 674586997 980692117 292507845 686260836 43788359 882282881 163165755 444923969 925256452 999217671 321534935 657057947 343017678 899585858 671139021 797103492 42783644 196051515 420550523 654506155 154578563 943832229 440408127 673296666 459516534 719060762 355694906 744605471 784621843 997111302 602476581 828670190 287976900 318990120 214940254 942209798 883865119 969715636 136123459 639082827 410173676 528665130 719063790 760080236 619911259 789766609 295675278 501936175 588607007 994118474 55039 440295633 72065970 545951801 527033075 654807782 615290930 771490393 282839283 372409289 49547156 272768250 539339556 832490662 512498384 556269041 823083789 957854973 544764907 782524774 368902104 625252586 259522498 317046754 180320501 320500321 146490985 468439326 455403568 725057250 71442483 603272829 730935494 732560460 192643903 927032577 168618967 576312194 798692812 937233160 313920456 554020743 1302612 496663033 87977203 383484694 376178684 517855083 543833992 727585859 101543038 383614879 305101867 586289308 536449507 774354540 106730000 860925684 605155580 821821474 727616982 794250907 574701421 585524079 12979101 98862543 701733885 945692847 220597823 500456431 418541606 640352725 481103260 940302811 342015629 996357717 219850418 843168570 192090194 708882473 94186726 598305993 601714337 993645802 857725069 919921698 207297924 640179702 736538697 938924479 585858310 731174620 414762495 615311476 816179774 967722309 684222953 711580788 475128266 587311339 554499709 569983446 53508031 111079281 966160448 999911073 933276454 982114938 508423600 855507821 445732818 462386380 961442509 989002687 956357944 991484847 37909986 160178611 584326694 903200901 682283250 747276700 332715626 921147231 792430705 928598143 752228570 891526436 573548039 773686500 554474745 972893336 782470502 898639437 18199849 884219867 691662760 772235551 222119203 586313622 167233858 337723558 840017552 987976129 510595803 750058918 775269982 841513250 749065100 815738286 256100680 611180130 353358907 731179143 915140634 955462928 222838854 913230518 879521290 917559684 250355288 629542377 506148672 740929193 460499441 732207184 637456786 824793674 323143638 490398911 209839402 269038108 758314149 983395674 943167640 980433477 290121342 295681982 574133755 987049613 529049185 623353028 307329854 976211612 349693466 375352186 803890615 861922435 275864849 809370974 973676850 993112923 869355821 872978991 666304768 945157814 349825032 575293164 733229924 744232498 700431664 893082430 708794482 802719985 392005096 825207407 887591978 985930053 576193466 683345329 871782856 956848950 572699988 862558982 202287545 933072019 464572125 762403139 970776880 984791315 461219871 761547250 462490352 871598120 198168998 905305060 145964367 906994808 85366078 844304337 466010833 930816863 296128988 767938746 999677098 999832833 422039687 564532182 531023219 943581070 291415688 332784467 668080537 963009094 649002133 939109485 175901249 497438623 390827799 414362710 770232608 870079898 105927455 628169045 945623868 997416513 992272642 998193711 782182724 872636239 102593109 241936205 123616620 874533137 438622115 761430422 821027907 884420490 312653829 688089372 65329509 998349316 747394956 793090191 625346343 801846461 814433127 867544270 543000460 898912707 321945372 573754272 523797853 849127395 999338114 999642004 49352777 389451405 63032735 721624926 295488460 454900730 587495178 733157961 831187504 872644552 366813560 614867820 179357990 717854821 962666234 980746420 640280102 798710995 219242471 433761868 137983908 731365025 991370455 991520808 735661492 877636062 105579955 415418164 586758647 854793161 981102005 995484470 284179154 930886554 353164538 454653637 594321758 853178270 982909389 993292655 882157198 945192783 976355271 977694740 441406591 928215804 756907080 998600343 811721516 960162840 900946544 954593187 206346037 816671686 593041672 794263698 441533958 804311330 411291970 781110254 471197567 624046919 474449783 724587011 410307654 608532488 404328366 445775395 243471973 907266137 844596752 847930948 83665594 483290292 380745811 612799175 754991325 809106152 462471379 852358133 326541105 412909558 705063622 914205286 134637747 345264303 964296040 991038105 612954246 677974837 862636098 898272719 54010254 863529629 167421476 848247471 228557588 272372965 227421592 975346749 463841476 823159226 572828089 640247371 502075960 753142043 6146524 803374116 981011247 981622553 604890713 618254794 917573725 932787844 760729886 860697066 586121525 673532455 927871621 945103741 978640224 980706566 468341018 760927932 20395311 449618674 158611301 255682107 767121064 773864470 736969667 946081213 991873377 995423260 12771697 545638988 941505244 958813647 253436202 768384716 490228656 736074157 701456205 997229415 241894108 694782532 866058444 963334085 696373953 781644356 473561453 601919760 45556384 597040263 421359791 796258812 64839495 285412805 752920276 760901454 511446755 610101831 10596814 230250516 421495704 862943836 760717883 869524686 166012472 418148105 544004844 675802233 679388790 748757101 512842853 689197662 323324799 429707321 209837625 578335548 577633704 730807025 456432569 899967702 716771606 747994581 146229853 960560957 434722256 930803948 238887590 651592246 1392457 959493889 573896743 994945672 198981916 477428980 816880985 937978794 264518346 812015513 291117398 739377208 629775920 832286558 625308938 782849584 678318551 716668179 471581625 897531572 7358477 451918563 342794190 996359585 549199882 578834224 966603436 980162961 41862660 581647701 24994617 460763674 437636916 876717582 499168866 750278227 409470232 485821174 45243744 736568355 85720548 835142807 812482673 890915592 450044121 928247188 745693832 797591380 637674943 879769540 66977871 753748551 828630756 888713237 666452331 853358277 210359923 732765222 174630591 296353148 214988082 965857543 582680524 998370042 171131806 546945653 929387237 942741636 183162077 821119533 429964231 671020728 9158737 861296507 521592902 960511460 20097859 251173637 61985042 471297546 769329851 830214345 83951126 492082472 974326622 995407384 595460316 692282568 645395232 947511163 5177865 239752947 577849588 904700692 843605352 845476934 461362462 916316471 898763140 990552833 526078754 632248955 940226871 986738798 779222916 869178095 932652813 942076276 960102823 974107418 115008013 369974942 838229862 946847784 758836954 896253626 713120705 823804858 329519694 503174671 931951130 992566614 65168877 542917699 69925920 769042366 701142586 841005782 124091163 269896160 440910671 576968912 324581870 695556463 964068296 969433907 788960456 929249354 325402040 864997133 363825054 710432523 607463137 943799668 259919814 777765490 633476514 863308184 726652211 760210926 601485434 882596752 945451 188524311 8331362 126998003 158679089 447291825 436319964 529885308 358512847 956543268 80582778 647962714 423161401 564197159 308188317 920976032 484740015 875038784 811333524 861937043 498999821 837012898 597438847 661645034 600073435 843178161 231363563 373095529 27070504 78547411 662753215 835429788 105853349 871584809 712438375 729077891 329029699 453932234 881853480 966501198 963943811 984095196 547409749 563033523 103123209 296821611 244940411 818252402 580572149 636055500 756992215 953667687 481335612 680219463 701376884 790555890 297938312 898319320 20395419 665739623 924621541 926298612 756565379 809751995 666330882 676962008 180359632 540090815 397105488 955266451 241877217 650765817 542839519 649992591 936397654 952006334 399764861 483596667 825977257 883844539 683574180 820736227 154878031 436072143 563783114 714055600 44499005 369091267 904829706 945027692 166505104 564731119 195542539 964073393 421936504 814433374 668123300 974969962 331117687 974818028 604343237 950942754 390957848 845400409 882126070 939761780 959079625 979165753 210158067 694099138 56070809 667862787 523858965 752613597 990257325 999586761 561314953 907586854 984341904 993764783 568806978 778274183 554117599 688631561 355491229 763224359 959875940 996047118 764643716 809668465 243002395 329560759 882270882 897596385 901128299 975776163 990816092 992428638 427449647 836585454 886656803 937563850 159056803 345696333 60516687 686343425 71457162 204264213 562885080 582867121 992915695 999627086 250901065 479720290 591506238 708583122 405955433 543855134 336244231 371438947 696404886 902142170 997198429 999221725 523852721 882617429 593451709 844905038 907406638 988462881 6185939 475536868 248258504 728996208 979044038 979181167 169218820 842555239 967464852 977474521 392544236 900644031 507493190 521250380 519240905 901606488 326881196 550768241 732201792 910073678 489934067 750945389 372894279 939905195 15038825 749911741 84895571 629867839 31872073 364117202 790668867 879528098 570244322 741861245 822101999 953486624 814136548 918560942 717516449 972703211 263570228 500489371 669844393 987391861 365704270 792338268 598191971 864869319 975999813 984909458 553390346 739856628 289783633 911995735 706953876 897211431 168481667 799008906 612580952 909935490 193220176 536789307 30432110 537141748 64217059 372050167 413385483 887978245 100405169 259191214 834951711 987329925 346261210 941404660 58812204 77568725 18389628 842718764 294871101 580933716 687924101 822101238 888894865 965367197 307394583 907600780 877977617 921158806 643954906 661585183 555023024 967759444 956707366 957129417 145275419 940928554 436415902 496425770 974204789 985728329 155872864 762160057 731038940 861181840 793814889 914851565 336043126 365396576 297930729 546987527 997957930 998028513 375582448 909011441 956957403 962822335 269335370 607034537 997381259 998018444 348079442 935109203 419782733 493229769 554106617 869972504 705121417 797560772 180079577 680873990 885058706 890760352 623471981 938877261 256956873 655913827 939863215 949197501 159385200 285786522 860159732 949686526 65274131 639515861 799391457 816616131 711460338 803583117 3330620 433637193 871668859 911862495 732700412 798664327 906260066 922494931 301409028 883773735 317093670 781144037 251351575 647321982 682884342 687758276 146360499 300317634 555962684 942430355 536798836 750748086 348095283 923994101 994594389 995743863 394470562 435018252 523529805 861695680 320778371 369292823 835788166 914765740 356312706 666029060 522163492 595480221 491862251 661472247 567476497 605389915 660294230 951443725 409020573 483747620 97810588 287436551 411468612 833955067 615230095 836921650 411716633 991855333 915824741 962204767 839898338 855343030 336071598 409129867 182594652 907043032 543169029 989562538 552821566 673802836 35888230 46403348 384236410 395007723 513447801 677998943 615333636 964392263 347743085 452891995 901284084 990326684 288143009 499074020 132534227 243807331 203849950 875883251 346745711 404937498 394083190 819888427 580412757 652507859 750224441 870019700 437169723 470814587 807239 565272688 828977872 862496795 13703322 854150310 965016842 995563025 579415093 985406281 974840432 989770625 738280759 886432623 416901713 636883532 516390027 774228144 560051635 580688165 734611725 962914955 340441513 468292044 252112352 328243104 403164661 841044566 936362690 997621025 209904150 993564208 535295439 647074185 871228114 957922228 613415246 732093355 515964531 736417691 624525439 729486906 542087824 945312217 212004192 660539825 219229015 723013844 623401566 742186903 770776312 871373265 476450149 693699336 276662284 773515401 381961676 512599442 47327446 991679675 397854302 479744229 192154956 652935399 828933378 930068585 719445603 734458989 885722958 980593203 980331327 990866612 865977465 885140035 435103827 846383070 263840716 489916494 988008020 995077359 274329501 486205918 71929713 903784290 492040632 558203429 386501347 546988381 526002190 707295448 505295960 850172457 881941633 890397717 480271642 486965638 103744266 492184118 369173220 971553155 637180259 837966685 446901248 703504837 977151085 996537507 905946255 944461256 211971978 768960394 404382456 889328477 210006132 521705555 268251787 808985645 721760072 877903179 48240172 74445380 21939591 596114932 261754802 806837374 203971004 942576600 646222637 709327344 297138424 853672184 603937068 789811395 992174235 994037446 624084550 636547081 210850291 295218823 790891178 919943430 397226483 876860383 941809106 981416447 110098284 970124864 693545271 852882545 473157096 511362616 834075226 900565513 521863243 571267426 332586447 574774757 526811631 580078958 346012514 529157232 255664531 329018897 35619636 641604552 801095755 821430527 438364848 819594050 749363096 797033721 956810538 994316476 875393722 901923946 748004471 938657025 786045213 850099949 604973939 727131266 638175574 870150304 768896264 918916985 723908911 896517290 903347715 917548032 106453852 712754435 89887783 140177803 960526819 963707080 810473678 959789535 990275723 993569622 895708570 900084440 941233724 960985502 173191012 630640252 997208284 998916818 875446123 927062669 624791275 856145583 616784704 935520790 925324532 930671388 879798959 974634061 592264654 883116809 609859951 625808080 707166526 790532311 720914068 874324461 178206192 908486001 39525810 924260183 245323654 519263942 898399063 968908240 177639128 292683169 70844058 818632414 763366757 865983146 999351207 999445735 49601844 881801998 315809098 766770633 844882871 913186034 398734711 778316636 567030609 973841213 198571840 375061263 425298531 824407698 955128741 955890672 494077179 690142060 579438467 752629846 13216723 911430958 989459062 991643800 847470784 871067680 792652639 875360743 446283138 737341702 789298818 913163775 35986501 855167015 226296531 396794567 521577123 974331393 438712051 736980278 871769513 929046567 767818368 899976658 197249361 261031192 562871283 584821874 706019174 999929479 440337608 834648907 257394453 306418222 474485540 613527557 854018281 870197383 161542045 377874821 327651699 438049012 86413214 338229423 168748180 563271182 189375648 514654024 902210921 919384613 712410719 996312490 814974024 823270539 688682348 823013079 158334140 716977561 991903697 992493611 219969241 821716498 505031162 856483603 406779910 886884204 722195179 766194992 183128704 483687901 620966698 856641485 163862307 363160596 43807094 517877458 657606331 738757561 940600415 983451444 607568864 707665669 649516695 741055679 694630930 942943446 828656388 837123704 462376765 788112572 634633412 653023484 877197922 992127818 333429841 398136612 869736455 939202352 46479244 245358646 994937462 996115982 688013511 872550228 666393638 770910224 395323074 918874169 517291739 800653516 484422342 701560130 121099680 642794428 562222361 799193611 747153689 763737237 260997027 606374040 735464698 970355628 742075468 765597909 766203578 831558697 158435802 437860731 639810642 973825744 128676497 912868082 607071469 917007444 242846408 995396676 231409798 629681978 436875112 862736301 922632500 943358213 484703741 973295461 745671579 762315688 499941715 999898747 599181241 887240689 334752789 396785798 525378710 603667227 170320560 301097598 941998453 945432047 207374981 615028876 910752914 953675387 941513769 972539525 928054968 964103382 964029102 967266809 63043506 128979324 46159401 196836497 264480814 460171725 726469511 969659656 931183475 945749836 850974747 860700128 596787177 848186232 100385231 845763812 773290128 835549763 462297507 920768161 604296364 806048995 231101227 341224045 688612547 995968237 157936306 668927709 202127197 549147149 94949217 95490474 94347997 597677427 688323798 996284154 554250185 963075183 412207168 750883494 259063149 943708951 429869407 613606864 479392033 643829866 831524851 941911352 756108450 816354127 140560817 501366011 293536278 867500411 483816203 744219526 409751646 772895764 484080663 997593008 125104331 191195284 531436933 916534134 350159421 799893610 16952764 292118081 621684695 921400890 240593204 272450175 254956170 302826778 872780801 881426374 291325869 604529287 572247416 986347791 868047194 991014280 210283169 442764343 848263545 874823471 171757830 509965162 288113053 658457002 933824890 942272644 437465622 751027350 428436476 935695169 209670669 453549300 192897959 702645599 628660636 632752331 262573841 382383819 109775974 357740473 452322314 705839756 306908138 349043356 312709077 571414051 476338971 773877669 518807835 722966060 650201812 960254022 398334808 929855949 18902219 143780724 263330316 330743760 473916552 667992635 604375761 845508284 694627162 937663353 939605479 992100861 983394495 983721274 222993691 704791939 795546817 974101233 262274380 961021097 18499354 273999332 196092880 471038919 282252193 634911895 397066963 543203920 22717683 242485757 639981850 804201878 821914889 937296699 171747870 683610537 222394067 828262919 965127127 990748045 365127127 731529861 630018408 816435522 571830832 748714796 655095044 929767831 683216164 741626351 699354095 956536859 295346869 521993197 109756916 743714481 125142269 971091013 600647236 917587054 876445780 903624785 886724545 901168128 633154006 919834648 453426807 737537586 223376690 997362835 71820171 308732611 154978692 546515246 656147510 732185651 197531173 817018605 934507501 997094478 734222402 856720719 627710356 688906265 905591890 999474663 686423603 716066711 373085662 573880258 516003782 757266611 606643340 616338109 325468510 671667681 929794174 982593248 204602241 513712568 874463631 931387421 517503019 600367464 208016093 497786710 79643434 269768972 684972957 756143807 461933210 658184615 384663155 811653973 113425473 380288385 400389254 448125927 559204979 812367470 596112904 704929383 210828796 927256516 61588604 301715473 694766063 736587849 835110053 890010574 711702489 725345139 671032773 776142125 799001524 932851290 631705731 674930010 880221629 987537439 755029442 862569811 673641360 834034169 572459582 817382567 623581985 948323377 266714558 682271141 601993418 980914717 377052736 400550477 19081177 255343094 400795559 506403581 9059827 152962673 883114825 996797724 133970850 877523669 229131802 395554794 315388509 623261988 458716290 916299755 453082861 879617555 130668285 387012774 346330109 384709854 902789153 969972544 286265490 562858314 826737018 923487978 453400280 530780863 882945787 986820648 677745815 743303531 608064527 633858518 421171075 905965481 12417757 558522640 400444304 850907445 922063930 943534545 831888076 926151956 522759442 561253996 509952998 989682160 683123178 719658869 833610934 997168743 376932196 438260960 390628554 400552182 129831371 441619424 166122901 977856561 799082966 849017866 848751397 933745801 326810919 983300159 416826357 716660105 589776909 781664666 870752895 905940282 453223424 777128084 173824762 200051552 510811184 782871393 694617431 921867997 624545828 902715930 834187108 955941532 454085610 816328679 712400053 996822374 56926692 76999478 190336023 921523689 537961349 538845865 682422401 704887684 784526934 955638429 366528345 381038201 462208118 618557036 900758791 964257397 424258435 661079506 642876569 746893943 832526817 937125597 428616541 443517789 262558252 417590570 216414497 432385790 606139433 765169511 818953241 943532308 239345365 314221060 578503337 856549767 884829704 956912124 364676644 501204733 911326508 977058660 956992951 986173759 394561890 677042339 337215974 634106406 637223455 951047375 674267593 862773761 25164213 970909310 833215032 871469807 135232922 426533914 342053017 601725426 800694651 895231482 283269562 985950061 118526229 376220169 684792007 750206565 108064129 336589657 509066948 704112805 252167629 643859464 163712354 369352563 254664986 684198791 465540519 914256674 328141076 961843609 346513163 502718456 747978397 881802564 462462735 675486221 358128112 358560975 720476106 772506626 937316164 968191027 198748611 349550866 185609101 455872271 508226529 982398886 799276095 940410825 139379656 146542892 215896550 229468092 660114279 800330508 573833569 688321996 508130486 525184195 491612463 749326170 434564475 441482847 324313123 780064441 524577483 563307784 815855912 999055855 432598224 820628094 949818859 995897808 492227983 813450404 953080019 954568423 370362420 934011248 135317745 273387353 889904361 920019877 698814380 731162607 565169977 596554944 301900035 554146120 458422266 664605706 336888255 441259566 465344161 560253814 63487024 525298022 408300538 911093032 754706811 817798099 781151004 889554920 954757214 996465560 19908322 102402094 398752411 889095420 549608951 612821669 334290630 999866839 894739213 914137668 869086687 884785491 774651006 962789080 876496044 978122722 517820213 767406553 777174229 807942967 620581844 666908552 941603793 998727321 850224397 981005486 398081836 603887702 882549768 993158586 896596801 946485860 965861174 975798535 180021411 288901876 694876452 906749588 256841455 403226482 809132612 853418220 526569172 871811944 190244723 471741461 859669544 882027249 901254440 962656866 993246654 998274242 870995099 983170512 719037282 835416642 995242841 999349636 659909118 796230699 620066715 681593200 31276792 190695479 918169275 998065742 74849481 749644020 495334206 814067282 608722257 887609801 746089982 760974571 867936113 909812856 178897085 487387232 621901136 906808156 464286120 836545818 248743102 265284864 937678772 997457606 321865737 474321112 63893547 707522147 559741891 999352272 416169962 926107346 434521564 937750022 448608665 656804887 772779797 942437514 631729763 861753074 506255430 992719582 941622578 998367716 732389814 857123159 314722854 706800363 743448105 849232691 565758165 905369408 8608282 246000420 259751380 907686258 291227202 612023301 963427017 978839182 526873770 788044646 510926568 915049189 121110057 753735412 312040958 795187583 252541620 641965592 654959753 793618010 932014948 940356852 404902550 948880131 394600118 675485305 873789396 947718382 622361582 842972921 16963695 422090680 10395358 490129472 90336840 134800046 259607158 860960503 35335147 355165264 370550485 733120303 367303563 641236010 248799323 946756668 561894960 962243186 897184435 907816299 247398248 434376295 505952069 995451946 301702581 890879826 616376336 883776028 934168930 987958290 451649646 525652131 763313959 821340368 382242088 509372909 462158734 907519869 76769538 474323687 100980747 664375860 770290621 986800702 518905890 988731452 661877041 732741211 540537025 993800965 111666929 910995851 524093719 901901983 15014727 421778233 946167317 974703343 673653638 826924820 464048929 582605084 858023543 960007116 655784769 768374560 346235423 998608205 995782017 999204696 381078056 640140998 105278418 246286810 987789859 996687851 917261883 939906470 92570551 965278594 640477718 843552318 488123862 740701209 796679652 811001253 611557860 668080455 982260193 987361573 416115853 972461337 460654749 750955522 644839257 733448935 958194998 961721703 12338842 384874969 535739229 736016467 328375259 940897444 317746151 937752029 130989395 604783938 650308982 951489583 702553860 976809326 269224966 617189683 360133909 781930542 119228472 985201055 583383015 652382615 935157624 999062213 677944660 890172805 583699464 876807701 479762142 499752497 734695009 870917100 153328941 894239491 26125192 471332035 971961811 984128064 489667128 731527390 647256166 881786253 635045751 946862602 405086637 989931803 314533700 914167480 956273579 993795736 429783597 535623840 58991529 401844848 214049805 292074293 9158981 251339894 196479273 819462843 769340020 922851294 186977690 422194970 458843535 901362640 803061382 990170054 953366646 960745542 677678542 823372066 347722558 478773715 112958123 147251603 213035806 900094140 111011861 229466191 204007549 638554152 526481937 982531769 513529169 579462609 930744053 944290764 319748962 704291754 557979820 986895993 568405921 807690332 457433807 591582266 180692835 986940421 727119200 957790140 694829473 722669957 88118908 729319707 351476071 356145503 482731996 814514853 740578708 938036764 354479605 862425779 987391934 994801613 43046549 429236327 676576983 835877706 521126801 894087316 725557309 908578435 63701507 136779182 406585416 868349328 717000161 847446076 680500922 934387704 180758361 613309929 704032489 836023298 642775615 895989742 774597495 968316893 820732417 853856912 389077757 830407123 198152019 496553262 152348757 933673004 419558096 973165064 53752074 392209178 291530365 555358583 327470429 831089839 170112830 959680051 386092441 396802729 535211079 806249956 921508407 935245328 129707252 200632798 777453569 865103039 131198703 261657267 182078973 266857914 88240421 311789305 144738667 679678433 123119210 254653701 55592784 745147619 84722691 476379356 730253480 831467745 144526199 863408943 328649337 710763780 854572216 948263553 641552257 709842478 993233124 994926133 118470819 269682206 711608695 982529909 77361811 802533218 474362582 915367296 351303896 582467164 374161539 839206769 542550804 674254269 657311406 776688394 153612744 463664546 503093876 697366492 321639499 870096564 369334431 873387953 395120126 997180137 240782671 921480328 274180463 938163657 899299778 998438142 603091489 938844010 698674856 948209166 327396273 523632189 740439520 766178944 432584973 865065840 115767967 564462490 159185692 365546275 391909131 469979884 510682973 661374298 946857992 951715512 14296040 215330826 781791909 916474357 522973664 828619071 748214476 825523297 84693552 521536927 430752718 772361689 421289823 690122464 203101919 899330734 584055017 827921135 668540428 859264220 69428961 576953714 667069120 888876395 7394224 376238937 142858059 805404738 312472130 399759179 487112908 523568076 684456768 753225359 537313014 615956346 315325974 733317493 411258045 427242613 842058651 884406333 482537652 521885994 95250492 949285632 465877546 644935090 127083486 510676394 856996786 908472321 893781952 994740571 948961343 985575265 131089446 512789549 181329246 536436663 464928727 631909694 489399695 994452189 556475140 908602797 301058040 319876181 913653923 992860288 612329849 771934862 209259291 637463955 275428519 811066674 941387806 993052874 607613485 860872831 741903125 853141341 861222 62379793 766224169 919318858 170989376 788218149 607652813 757417211 860758042 991247741 701257882 992942683 829720675 892328948 707294846 734513819 481524955 854536209 240257097 400832255 383468986 472246465 273243997 670450797 284017958 766022783 825108850 882825681 245026699 591378145 147844990 401671052 167527125 249320387 256705921 999566071 271159674 279727042 713881363 866176160 840004787 872554804 459688400 854477651 797970443 849747247 257091201 557916737 69312757 568097345 335173444 630110443 769385209 953212022 599653010 901700534 391323603 950972427 404166460 623717351 527401721 956680927 514341407 719855883 279427312 360730573 616484919 650470013 212623989 875821248 648359761 981991498 758472553 775983102 154106865 740536671 776139624 986800651 941034352 980509531 971848020 991262311 485302909 964249884 528125324 966787106 911716376 986751332 12140382 655398104 983942682 985880669 762933103 884947108 963762578 970696446 421538960 972169356 327169341 896099308 966853359 988501464 553707164 751396370 843524892 976294847 509384817 860166652 928689261 991610450 370599557 653191439 542880137 596656180 231111008 871030098 526412569 623916323 914676515 940482448 156895252 894459951 534268537 826742526 28396274 884388584 512628139 994546232 545436391 673393206 888694946 947252236 599998552 969628703 692511725 964300134 275973163 851951070 176992163 368240146 981177828 993950402 258124153 675872838 578979754 971113875 604954632 850497461 259974605 799015066 480399594 711707168 893566482 990418483 521739252 636500829 351853686 497309272 604339392 995692539 250531268 898213274 263909716 565590865 393801065 497434041 908054384 983031189 117231464 336560330 269874047 430988709 775167888 830879905 619284517 822412691 183437541 516488205 416946331 931104250 434131151 982841364 814343924 903314921 489540171 640347797 253009821 382134121 356005030 971253710 656863136 934010531 791150680 891174213 48398238 645768975 23493206 723947164 799951968 911346323 298169470 622066014 311250606 311600831 104828022 388700537 109278934 776669144 470898784 668882051 703495369 929655875 13190822 769492127 732888854 832218706 45280066 131884828 324915350 732433366 572307786 816303943 559747012 748273960 264130554 681985593 330777151 395547624 882382604 990435074 268177455 420545055 56042209 478361432 610154686 615121624 382006918 583388136 309298438 488849639 620820786 631194829 73456946 526422954 718297248 886096667 693294911 988586905 829498402 964337321 79462784 789204767 241213168 740778713 335214256 380863682 816813346 867504491 234117612 319526625 395370171 472166601 589133626 882049411 549609125 682312932 719766626 740756342 674757254 765530080 360548655 848260328 937779461 940820060 393705249 850477577 648332555 891645869 148880388 777994766 334162551 988520100 956450166 988494824 912884332 962309469 589377958 779741056 314674188 549547255 318107479 793558264 499308411 613034393 691692206 697471864 555134232 888437517 23455514 197209112 749756243 992370102 67981264 735998997 325376493 857018889 693930393 847569990 3036552 856481478 489174070 880085099 316659307 569911238 13356888 550102567 169929404 760183000 917466884 923392803 827212871 972769837 13666324 197384227 453925641 751072241 856899531 882392641 258158631 333491179 485096997 541467646 780515393 798686173 863331602 916097511 643305185 943998376 356944557 658614725 489199902 514815442 549604802 812649781 339302297 583478329 655729839 873611867 506419327 990122220 697506538 946105506 975385087 993867364 62011288 888817892 209633020 832700768 23485997 577267019 933187973 943711184 828339857 966299868 547021855 778181131 64884226 922684684 195251470 781735912 755892895 881190235 754723606 763369508 660474518 824910365 691936251 835864024 614464820 878632025 503328353 737208546 637593710 899416515 238943007 650721114 658660649 894092817 756304403 791103356 181641453 640658027 340235369 762716056 881592499 982550979 735653549 953227265 606209751 794664782 552730907 555837575 556351599 585893329 912039107 998141078 214952978 628852431 685972542 960611305 251723273 533212795 858278320 964416639 548827601 748955870 528625342 997803505 840656550 874072115 126010053 578316885 848299894 944807565 397033919 787112758 255409928 784320152 247270609 703907862 388575333 431704756 943237229 964022324 721226835 794268645 783286802 925355263 353737375 581163357 895237769 897634712 174053335 413446216 461536171 877135379 284353772 972771529 680984437 941032479 86310991 971935115 339016189 773187184 357029911 428217808 621875645 925746557 279479698 700841462 644539225 759099762 734043496 940831215 730954974 750836232 602610980 820342025 568659674 849719399 664350826 854952955 88380808 502249963 511760532 670042424 897811698 979353719 478292759 638042888 78799254 622850277 721028065 951782573 782202097 982398575 508898381 969993314 877611099 998780777 44535607 969999323 642213158 658026860 573962234 988829436 513288429 888615900 642194220 969251000 385090827 909074280 900190168 980941006 238974497 557577392 883426137 949156641 702968962 896072357 869204348 996589393 191714580 353051583 871827448 878127587 373109996 819668762 329840935 539677618 727318211 835753614 833417240 935826722 111013689 779926905 627694557 862822219 701042604 770975650 749696744 961934236 673990216 837237040 147688526 691510919 396260692 615093854 30780765 66576171 233419220 826328890 623465494 877624894 762483644 863440456 15934287 554895624 399172087 942055935 327609853 483280990 798059957 942718707 953225162 980961775 138132029 650376527 706985323 776583774 876718511 921349496 807244855 863815594 480017210 650222170 950435687 993348191 411980194 687181662 785331557 820159681 994865175 999346883 460776488 586226456 894770938 906063247 862212195 877243451 734027841 914928259 292138035 415184300 647066003 791476193 865293347 919617582 418335826 747893685 596160531 765341849 188270504 289215904 725361006 935893049 868742819 875576611 459043187 843267315 810921652 868935704 240183146 343601461 190831159 798461256 405599105 778542791 719759229 969064342 274322671 531251601 462651115 892756108 944273659 962196682 247243195 664098419 810073346 949340442 313590029 664360505 84666044 750494356 867451262 953224552 973936200 980800606 501239679 901817247 492170816 567946736 507732026 666185108 57968777 943967990 15465935 398787812 521565822 849592149 647186226 961785548 663347572 941394770 657965210 902311882 813121873 935360615 778490817 798172061 993144461 999125965 796758628 894477214 61201997 985267653 492523247 813732288 252003605 693321934 299680991 950685506 88935944 545388153 74958086 429797083 772787397 802115477 653824372 886922685 835262743 888899894 973965206 976893032 813596993 902985291 528363177 590137869 732079415 741681606 392059027 522369411 772022386 849099365 794786932 984896449 468955584 571615023 278396895 950160592 941995899 963345635 703640001 924295514 107512132 190474546 601369370 671630444 750610001 831401319 956743307 990284522 467597349 821575024 327176541 412715298 911555584 935264588 48187651 827334596 128462362 684555351 147469814 410545000 935981552 950997564 154602024 384859723 609301329 750276847 290563109 555567037 814803692 939609421 406802483 874363695 381371553 621131952 607548721 819221941 589333506 877276256 3054162 511729105 199992326 577564381 865597132 986784887 944444918 975949903 847075515 940968820 681212607 823504780 193596543 804769291 785385853 800206059 486822889 552378450 152665972 826756620 951175131 981734995 826096281 911522957 671816236 825852574 955429596 961186381 750355139 786944643 550930059 766868302 956242763 982672099 156312649 793321260 501475602 559135025 467965162 653332523 40099027 989781247 521843764 757434558 531397448 659405697 177698611 282049002 882874895 966347199 132360695 202498787 101946420 241904482 722438877 840915355 427730442 519877305 644562286 989703139 894039986 911137213 177650071 185142856 390234747 552752736 9861694 802888874 407322666 843887439 373028800 375956306 227044960 360311546 505085977 817422087 254898333 452488979 96359368 723911119 164632109 550692535 42949345 674440608 559144758 582421942 544651824 854325313 611830288 836448476 972301955 979766529 586165040 744135043 269011565 496521141 193065292 995108379 267743813 924506240 306667054 639553297 581322271 899452336 684921385 874784083 123174632 611206801 563815342 738650830 619877058 894798187 299878199 865013124 643848193 958835495 156177477 481768838 760084499 907617946 930382034 971519510 313542183 431561954 151535210 474063124 594922756 799296662 814095325 828370467 708099301 962792671 605558156 986464748 666975616 668207770 105613105 324853922 263099810 566340511 850636275 996751403 996937564 997947505 838698402 947905425 467681978 735046665 505245850 678634812 838042403 908729329 696074971 738743549 424133371 716910505 210328176 940212657 287845453 601422097 845556637 901446867 220548139 947291934 524037617 811588977 743282829 930073217 974832296 976101054 936569241 988266826 236748312 887723034 39929532 992050354 801019525 922494758 203554714 352418086 204576024 206519999 869214338 969989573 466993734 830428567 811578630 992125575 370338025 722916074 516520707 651077250 426750061 997950852 551161222 840106794 525851537 788646617 804486837 881305134 163693430 656170065 363740389 500900477 477460070 899536824 111179105 644397023 187502697 633226519 892071268 898958554 928960787 964360476 169195873 782630376 640121646 768953837 540083356 688546779 254834551 435637411 675429146 902910480 700874094 886542476 897467338 984076951 980536730 998042310 671829692 673120259 563491947 951954955 372683225 952890584 117404423 922382375 536076866 774636848 411284310 487017749 154270864 413108790 675038425 847233814 852959787 873667862 55385748 455485536 993116564 999746191 158496329 760084401 828023611 844778863 532896709 648015911 5594127 477312174 556431891 617714712 878738085 918003635 68633602 414719900 656745147 667273016 480467265 602416602 140450566 419049137 235084024 554714144 944917951 977593327 556556662 794457796 212823628 356523026 688819916 889336559 232196749 378882974 51192277 133232719 914048556 954222132 600205445 969583427 528859579 632677825 98825503 982606889 379976459 937318501 775582911 959117905 854811063 939174628 317854362 339117547 821580031 839716648 705663430 729156797 142618608 976022353 655993384 661785734 507343658 542056689 146296627 697908944 974874708 999183608 520493680 622022215 118409930 578338753 434294490 788507445 608030052 835271640 276521625 395007934 354139378 361793019 305083546 405667711 244065138 897042324 80158766 739109648 205078921 707030866 883086896 916046283 171092191 730963521 331476367 595192815 954439258 967379948 777616087 820652529 788346892 869386307 952486928 958059730 254901722 974298801 994887825 998716072 379608287 525619974 398314251 589702643 980647484 986093747 693827080 738450709 576719271 874493870 975508389 996572784 158504438 989815275 63381821 137053818 514603889 966144716 464885244 705996757 327176683 489550224 606360809 777256469 253797385 538541428 340482402 400998877 921094194 933176979 358393729 419405084 637380462 792728200 358032674 491882008 230937327 247461302 573573327 725001816 650667814 652847905 177468141 562847544 580638286 811432540 198567804 772480612 408395241 817035140 720236157 722110639 962864556 980921362 500350592 657730427 155695985 428989903 886263666 960991946 484382092 598810724 6320558 589645644 964698723 988534776 984000317 989950450 271650823 508955443 32972622 57499012 860437583 922973137 948285613 987608774 218090163 340907459 669326260 988388885 665442972 918344032 678141613 899762194 873446538 934498486 701677145 708472292 85609343 642117731 150575514 548387505 739663507 974918896 549595891 561029856 816459662 922238759 4722260 154201632 755810797 843770717 451568306 615390245 948624017 996343302 611262575 892261729 142055749 401120183 275465631 865410136 415780630 852891675 841239567 842177626 659061115 966828221 252250932 847069710 404228990 911872236 198588146 812315385 205881962 737557268 792802835 851163155 543948759 634398868 991598750 992542584 528679532 563533406 393757569 764758710 315257582 728300085 211679745 740467874 47222000 425600169 281763090 558052908 900648346 975094015 336393635 896941054 340570376 407723432 28082663 432074552 435026701 987388939 248154059 527369264 998939461 999159787 466589478 503253337 813935462 865801411 234781155 872025473 562186439 817248136 87074263 811793048 643414916 670143920 592156930 656795410 490986372 658252216 769950923 866875935 97386669 918986978 669374676 820105620 255405646 591182663 259459748 360651387 93137381 105190869 512127032 584607795 936494221 988618065 210004958 993508444 855475006 993202094 352125521 470050512 418751794 632628478 507752584 582704337 28123703 862704724 7362252 789396103 216847823 715873006 636103350 855747578 17030022 608847858 510004625 866443759 268814941 644970760 83287211 486262546 330755325 456474374 623789196 996713660 555765785 557677339 460490130 821086361 702176482 987733240 140086009 544272601 590280733 712881005 339257400 490051064 939882182 958929126 260162054 580530953 787815170 900638292 241102670 879068852 328665102 964030208 717076892 722471470 894025700 961372759 788866805 843575122 360516826 934675756 712681025 804618115 198224074 864908169 226186318 251592669 522506972 894599983 835970630 854906924 296393773 381105997 862719945 908946094 114702315 554404572 586231784 771591447 864604618 900334194 102727574 826664843 331608304 786867313 317836711 707441247 407243496 703271161 125623886 727199383 62351646 336991283 903654973 988922529 622812495 871431604 360388975 757736264 81371843 344619793 505124129 760698408 429651464 494297437 497196829 951837033 701484134 946772911 153630073 392908325 656604836 975417798 874795581 903994728 759890229 880693172 655448509 824148973 867060984 980028208 405397437 434592282 173070866 341813657 594565837 681873767 170531356 685152090 491929104 627760070 493723630 658901179 19943131 347593197 371656500 510517147 361385445 656795145 725593882 750911025 71444361 591262788 810379063 975911331 122771952 696140351 445972787 766757339 512142440 682253491 247900641 837353296 97277406 229057209 932509367 972098901 847493387 971365919 482044291 784378961 955423849 993367829 129142735 923224990 384165584 746715861 427966310 569875323 69934303 690654080 988654161 997622535 743813799 836612146 134566905 306856707 954880637 999659513 973239061 974422841 892268281 928981835 177881239 293098804 884099291 930716472 168456025 670613695 34728264 291712124 858148372 910335954 540298995 563081990 265226378 446607536 653031257 951125812 453259537 497966184 52576422 469462928 44494653 965204407 289003200 922207686 919646320 967151188 585608392 817201736 582924300 946091896 499026411 994361211 111024275 572519230 162761904 794360287 614645408 960945659 273008128 984323859 758050052 949791905 960185358 967956956 702517308 957166852 501337803 659230500 496406422 544623270 565848438 661522112 967868856 969934937 837957518 863818495 562780956 861849665 195544785 317564586 603220689 812692289 486955396 490751571 33609726 926232650 404012909 521695373 122570972 222613087 794209017 803469396 620385163 829464542 237582041 459138864 101161054 385960800 62305079 627963658 742747405 996257430 818173649 915253349 323702827 435407173 85735146 757849757 38933466 789068955 205807945 265529071 212530843 743609341 457948049 842987781 396782404 805457991 576867687 674799946 271606879 781571317 180032011 562592643 11500730 44249182 980301947 990420303 965997637 980244046 531397264 971050221 538609823 560833778 899906584 954085133 939266274 940788341 970940621 995892481 300845250 860523894 788210475 828569807 853320970 872277650 821374243 990273152 897104724 930493843 931255129 965861266 404586429 562021221 859319406 988053891 377341579 906424465 368153436 758454847 57825179 74861128 472203467 746320240 807512053 990832007 696090711 994062320 838045582 959446457 891353485 939639004 67566805 584063735 641913339 801229001 229191068 291598237 113404748 313740511 808068364 989335868 365926068 494996304 300874688 531298740 192400583 326394539 533556126 761220522 871281048 953616935 572526933 745218420 238375776 390894412 153846529 967080115 793464950 859056095 18375481 866693757 160482616 364210252 877526054 942887438 27786449 935338326 421336005 710853791 260044537 442888625 567826495 806207493 311662389 679070307 548654675 741863634 569403933 968449554 626294755 883984493 142988322 917622376 763916439 950699096 4863218 888403218 256687643 465478402 725624428 837045048 932115 324988155 914625964 970513841 930377084 948524676 534640271 810917151 526962574 529573013 7227817 507541508 782331141 853447835 235061379 696226837 11736293 876455041 531763108 703215709 697422946 718981898 862107420 915929840 83120212 626756677 813981386 831771381 807352893 985013742 902587408 911432593 296725189 491858374 902619349 988126507 935631520 991286780 697831339 847490913 766680144 974736871 754147237 898531652 66704502 298354207 875618928 960466534 703173217 794303217 664910073 838002747 644473713 739076367 39814165 907767744 888446765 954591762 210754543 838159747 253031352 922368494 901747810 963357450 594982303 796941589 527389953 662195186 811435736 942779537 122613726 701048915 651556065 842507471 825649133 967412232 481377770 762989945 807003644 843023668 202622387 681245617 249935368 522077152 247043118 341468554 123389552 709224399 979524711 982403963 803767519 884482538 21177993 819188602 224577063 559812050 27527771 973993381 622117412 812070108 192757417 987139705 21139996 620353858 411937683 978726261 578266778 613107640 546942357 825514384 481637032 813843404 409455776 808222063 509184017 541266145 525175310 883793773 418534238 473888564 559151092 567466848 796445867 949463729 448276504 767549676 201738842 358522704 508359002 731429842 390187484 852942772 975202694 992180252 901134764 905183100 787385802 980775252 894122124 979248152 698865456 764088768 251398564 774980734 7403117 235138063 330945246 394750694 321613860 394031471 256104600 496393895 11916764 616449078 477439144 732797639 279425103 606064849 360030309 438475934 598168045 624948437 854395377 955375950 231235478 284466426 432300395 449495742 196868690 800918260 152727275 804558512 919728066 939401621 532371534 564296707 279415969 745063039 801430299 936195830 576919329 802832587 409178893 647548113 771445697 783421545 598290567 850004348 767630930 943041679 527517664 590545705 78750165 108539127 189917162 888472815 794524087 824141911 735400538 968795450 795392029 966461780 977163748 981152378 936740994 983265219 545036494 792405615 810064923 981692221 317473816 357439257 237995722 948962667 919427641 927976067 384219299 775718306 892168331 974436640 466797332 948562454 697494806 718186163 912631783 952387373 155887649 485600217 470655151 974283206 103845569 888854516 163363018 713794433 22303369 46624923 561685945 987227543 867896470 993554451 139397769 572220410 59707524 423212751 271544093 963524739 671206928 809088404 79255487 315010528 941307182 995466685 770727859 772349771 82284452 730865227 103635147 747341591 294392591 614605792 822453779 841451289 314552870 688807602 343436421 495337363 464919290 571159053 723354102 758836887 274403917 780548154 792504666 853109747 856116461 900162369 110181060 739532674 273346965 948565021 398154732 416539319 948618627 975759182 774510370 991841002 50704301 676262070 741624084 858849306 684810321 751657577 8534627 514709340 42875931 247948039 953813925 957470390 873232093 917258590 703892349 926912808 412042490 914207122 576003925 866819589 233289497 384781123 878505883 956464428 394216495 670947694 839582876 897221188 204371559 555705600 536867451 572751930 246354176 789718148 786794545 854729396 864896729 902030321 957714934 995833223 514652773 565212255 411128614 588633281 415420296 916059510 436272730 658929786 796627441 994704433 795580457 850386943 820301897 961171649 360032683 499352723 524791121 679048148 411123878 879051668 547839290 789779061 869058202 965813419 985625806 987197150 510735513 805494350 785981641 899654693 3764789 335904674 307394433 913283654 691360222 733990718 773538153 951095713 440039556 867645967 524701506 539684398 67852873 502383093 87178986 568039117 839359867 872120845 135706329 732766657 633140067 806656777 17846320 517056859 513992862 738095763 901191428 912830669 705999731 902139308 908525660 924617627 79665027 413148930 140639115 356409024 678173453 841951860 546354681 835877838 82999900 345773081 385912060 605505857 185218199 931247559 373974771 983797544 37069342 298092596 104073068 795802956 321920108 875737308 206640250 959080471 607842153 834231185 542185296 858322118 201525651 756567384 415869847 461378107 71739610 625069496 852793490 938243793 592080361 743906381 176534380 620393841 635448628 685306639 391669271 861354175 403953300 674951068 304914186 336465271 366943076 568384946 966230781 971333556 29818446 40085848 600964792 772997901 105536518 556565035 934118935 944761298 555210612 851026693 269554542 574773297 438934196 569829709 21175649 750017908 151255760 561559127 154609334 801957091 809774662 916748862 106184644 784869706 254534450 575257973 643335728 824439820 606155941 658332455 197030715 292765507 544630510 966768275 842710213 942495729 591250138 706070651 747233538 916508053 534884261 550450384 382686329 621096163 260041734 755154250 218623085 829117944 565437116 885552878 288728513 801867870 423381916 979827703 303705365 585412075 726436202 926434152 510159100 580599205 539683170 583211420 882008381 886465051 660473222 912208993 772746034 846766068 831822484 928887012 961201418 980841992 566148320 636286495 716446591 784837566 479283234 977454488 402684278 594303178 716111134 948880591 878261716 881297773 871935466 966879505 103915621 546910707 1754997 334037680 322653157 688332539 671995975 937586670 873782273 885529938 318242138 787755760 140905427 825212568 3527401 140603539 785295797 903760148 773381947 850620058 350862524 490288741 978571078 985446747 676794966 888372762 163351860 456140409 542102738 688822714 897191935 965312912 780624665 976461699 983429324 991295281 333886672 949050736 62778081 419828820 589992754 923493718 551993561 865257296 425576709 535971177 188337578 812328275 802185486 953426519 498862510 513341608 661812281 814583299 421926319 595318687 535839131 901538256 767112934 801245257 214006428 676531419 453229338 621272578 726080498 807444688 507438699 587934835 620272504 873095787 491270164 566941385 123805787 877389859 200973221 841836977 323921103 791251074 267054419 511704544 559565628 777686532 12257484 968274667 492522465 785476060 966346231 981606750 962061188 986433187 327466087 858740193 627657499 739116871 708636918 850078069 547073516 816286866 722233601 836123695 522094645 725045576 55520883 428372436 201746907 204990856 263949372 896610202 622305038 764157751 931966310 978011836 10469282 282829121 126273802 679599422 185631236 425711564 658815729 691105988 327088895 579486111 227188325 961630264 5012731 638673637 7158807 164323778 713879579 922356070 71897234 667822203 212858883 386933674 83720043 398564953 371460250 900079744 127385104 960059095 348525555 784912417 961735495 986590491 436067204 589143500 264001877 867073416 164248491 192991312 454705380 631288019 50845885 54745406 489778805 987532850 58468003 812843308 989113723 998403375 463021597 650996496 829420714 949930389 236167455 983485283 821203829 859644169 458802804 485506009 765525738 970077643 954420327 993897726 38019664 122800829 687869019 995678997 113576481 813142867 736237348 945885775 382473024 454620480 94538520 455904073 310238568 900938564 602660747 880166968 254137821 898478740 855997727 907853780 430307567 594325404 352987307 926399805 629789715 701119023 639245844 898415152 897538756 921490093 770657750 810794593 212183240 767606790 541991395 841492503 228331070 309452908 406098032 458711910 362446328 742371620 254345623 747173896 304027928 968701705 681078940 684354272 568217864 719413208 553552787 986682700 759363585 869839956 151516666 410261697 648648303 762526761 650373311 857146886 388234522 457124541 699262181 711294888 485537591 883391406 40206967 606160892 159905748 250285478 90772806 177096216 583073173 659322848 249872976 411121802 89800756 290290597 787697525 843755780 881361592 990682781 83786773 557494144 356470502 648426676 261316516 396091471 642354377 918356390 283760425 496458109 900979169 994867034 173491898 215085615 413502959 692821639 3571512 683428852 646954399 818907645 122390434 804195487 189957951 865073973 378085968 447956719 628544476 760052393 929830116 963614446 771541748 855666620 82676752 707802725 562777530 750545009 865751909 921770530 671855842 688504604 431194071 563226086 952317060 996096690 712509356 826058736 692870036 813972698 361219600 642603023 794670954 965023960 500645227 896330259 825659404 856698250 415627509 786570702 944693008 962934198 606911706 819878321 210541118 588383505 46319172 329899970 700371669 716947961 701249415 889152718 117692499 789099218 990295435 996384857 661022231 741664279 156100513 202494071 303345090 664826016 790037651 979384968 74782951 164215469 562207367 813927006 215463997 889995142 504230317 629291046 893073119 957844840 648894623 965922754 161077 241694337 287740941 290640922 246538710 696227524 288514242 955618247 899194653 949409104 30719568 352838212 963524006 987522109 536159144 812748828 739281701 931171572 900750283 950005178 4055723 394919444 514543145 789658781 908584094 974077325 1941533 429214592 27325795 277819537 212421086 565823226 559073279 811048320 934267924 939123268 772667943 939055904 424253722 856019839 100500448 379271644 947407864 951510232 237492464 462386821 251451730 363705063 29740106 253086505 627753496 871856808 814271755 956649937 705883698 929979835 254288205 533128243 836871310 861881667 474208544 622054030 885794057 940919712 278893712 628121726 717965081 870239572 991612094 993508293 22302987 308019352 372023950 432461814 604482440 943258013 631754231 833937365 955791690 964412998 790047574 940590078 76556071 511713886 35965148 710150998 309393316 446142540 451080713 573526191 302542153 900228710 510226157 554429805 485686860 663912613 943002562 979510427 933388501 986211487 756118805 938819591 201926770 570009602 407462569 647584887 400000476 739990192 46093749 732111826 328978868 356018996 516255538 814084031 460649186 517732167 228059847 434433965 237220086 287729312 361406188 914128957 865721489 912075791 655379423 963265064 52160025 434642901 889944823 994220726 414081451 680445289 445693241 544907696 593251934 919826315 110752033 642586797 214981002 573874558 919825984 921852372 68945349 677004826 552678013 618077479 363607072 863767063 715302856 922175805 783663268 834596137 702565436 863713339 916999790 986954139 480846868 936982207 950777148 987719683 756057280 795483831 495723875 867214915 228405354 919114214 66996079 411608617 31949294 524813453 893758214 978232468 407654119 752712849 880426856 901820065 731866775 963179132 265013304 346520129 749377213 888997869 265793949 581656962 803987196 991182548 13259101 480990072 864865350 902867116 794789721 891120873 411261842 692422028 162705270 535546353 111724290 124784261 277062911 807974795 197392296 638480044 558949837 780611429 752684968 951325191 938469342 939379404 564183269 850280560 649616734 864395256 356152086 989672341 447900301 751710840 575156190 662313781 852620907 989284316 769227804 967071654 51501715 308007870 606828834 824408578 174883602 743150506 997431169 999688844 383747327 599013509 455519319 817379626 242026736 870100108 201520953 621123805 586401220 974570174 252089787 843932043 753241291 949184669 490978634 496572228 758097635 996566293 767227496 925667017 604893625 894861702 911606796 923441298 48551723 910604743 603133188 896736723 338755568 660726342 684593565 849921055 728505981 930656002 413648045 990981972 672355853 683844556 883947672 897065267 444225415 784765278 162991423 712774335 24965073 928062154 211020264 731324575 892617083 984416964 522448003 583432759 578799719 667267688 976416238 999144126 57196613 648540458 783407327 846921201 516185709 835970318 835861170 837758482 856533840 949132642 314400177 758981673 485905426 933878087 960296260 974926110 537625956 912772035 20862824 733292554 658460726 948003257 905145394 961144447 988784129 991968202 777807244 990125759 645917251 794445803 874132108 976994325 934220545 947495169 756681571 785334179 752580813 918229734 69794668 969898382 982632255 996535621 509936107 769787612 335472413 961972603 78991648 512545931 732005797 944370717 290170790 510502300 765196059 914371295 438813737 439603680 256882573 784409918 286278171 443336075 925659375 926379476 260149874 671206178 368998303 954941958 746552614 859332403 992228092 998269374 980552209 988594250 914119116 916635276 551055964 834513063 786824230 904225590 128960558 814229961 833301088 871358451 932590881 957363397 992435406 999647546 788347025 857288073 533407679 978788433 176526758 391860497 452573756 903457036 99896781 530844555 192106900 216908965 308790785 608975434 36387447 453958213 315806480 987650682 249175754 623664708 145070190 548787594 880286337 883571598 927931285 930597313 436801675 930955232 838923336 877000885 944351196 949019256 431699645 653785888 645084840 725521883 275365680 971604995 548538584 916633114 349441428 780773657 786190386 802558185 773056962 924321425 977312881 990618246 927896830 976792880 945799887 964841006 282220434 657573287 515404053 901824332 724728934 902706991 310766109 582580272 718317647 814992314 4634872 148558889 820255549 829890680 49988142 643853734 429056302 754729464 890904515 930464999 654576968 864243253 577922013 820124717 184232569 430758615 388036369 447436478 174636367 686419592 638128285 782993408 576981787 709338298 849316026 968065635 238718224 265989467 563271715 812084983 577848202 767782804 425054665 975152014 79860834 562802972 230766235 325012629 823646497 837390206 980644906 989332376 593788805 861623356 997432513 999788540 312435801 886787165 543291840 574700745 255569873 303464106 680569933 817192357 633819078 745205585 727861719 842513311 564001927 592577964 262114471 529080972 399305569 981384328 837227949 878655203 163359443 219336608 77284348 132685342 942027810 948884673 862542597 992236204 506913727 788234773 873973962 916414444 936695169 960120706 263634106 753626144 650472093 763988132 530875593 836030806 607388174 961303825 623502718 809636205 495890641 776483825 68419929 887361687 696023447 854799014 471383825 742098725 460591349 776305829 684998920 982186955 125582853 754139329 524826370 656158092 239902265 801183989 886408149 914438848 197370351 976646818 995700253 996730634 930955842 983769844 97088992 345715858 486949904 729384794 967648155 981018131 928746747 934118690 210317495 876199843 351430786 747469556 272815020 886172157 496439689 498732687 76333462 771700816 99661810 637365784 564261961 913481294 442815559 811448762 819576314 848491965 94600346 508934678 665450516 768646172 608871894 902179597 253933986 429918727 81084646 577127586 895168430 991676718 351325914 640775621 218949632 990549938 783396725 933484272 421885993 958693831 805870430 983185551 998221376 999444185 634774648 767351582 685817753 801594796 285418761 458261836 967709851 988802152 56385520 755449326 143892891 295194082 489050202 689806235 540526523 743849966 786909934 947301179 463123355 473099844 796072070 949157026 202474355 517739631 456671760 994316540 388701949 680371882 229958888 552508802 696975037 714537298 13162317 846380768 401986340 804091765 611549033 637423787 909306406 985349400 505059539 781086594 726797277 895078565 241651918 441871873 15953955 922044877 837713673 980983494 912693592 946123492 490744136 787788594 728285591 973300770 805502426 821230392 888007018 927396940 304001197 359287100 947922009 990807348 215512290 491283362 866166511 974473475 974856209 994182354 922278140 957117663 950238144 997849593 811373508 829264133 22210589 822941796 17526954 156317107 617664428 788206778 48296501 805087653 980751188 991292063 657849535 858283327 924549083 983448314 985378032 992557257 634727428 910302354 576628187 856339117 139476707 258696007 169950663 359326035 663996383 685337067 415203159 582706772 416318265 536137170 220678194 272095593 827053854 923418629 25253608 768811844 194165422 216112842 604000112 891186055 958033755 991268417 966065126 974535335 910713800 934911639 808040355 875657726 677412786 716750020 191035585 243157102 351967980 856034314 9727258 523554100 119102574 644615096 69573103 372825230 728900915 753274797 74424462 283034017 520961667 905784289 674470999 796444293 980138620 987613691 982723994 991088896 39303963 381935269 390919950 686007409 389838495 515643701 231338192 533393574 117131745 444091483 195762430 290892931 877331689 896819517 356779486 654927421 546416528 824061030 64332644 730256581 929501428 938258474 138275441 953746513 603529693 702354175 476803205 943530528 327346012 401259560 550294968 608635071 481303239 579533773 44851670 700147506 820484082 822530466 124401206 808168715 342471488 666707646 501814494 620745394 259894604 537054868 972819924 986499258 783439058 794465330 38984351 947270651 338843567 559587440 122956754 417937888 326245333 904588290 367645785 532250172 28414488 947301127 623173505 700283357 662322113 884279031 99932322 980923222 575738467 666656391 283666184 451858270 593939222 805620856 669052215 841889026 748499039 863490050 482936319 846210040 576227717 817641653 537398295 731960842 456420868 632880264 217855228 808542778 674818042 971491424 250886769 989951828 239765739 688168732 731481519 899023013 650206609 887560790 715056047 749049704 602345964 750301436 755171364 774181719 851570208 899626513 784135893 868595963 396412549 555420629 714194578 936903635 87541670 899907035 115581438 939019763 919100453 919616981 36372015 489490118 285671054 989873009 69471097 168262480 442169776 814696577 269538400 899063150 4808818 581891842 244533421 597069228 337500393 855408690 704838306 844826856 721967169 926103570 434639521 659485962 853717005 901461495 229964616 587575777 804162270 930527302 490071921 647193002 739300735 962488252 194652887 907536985 202577169 668791229 171306401 959728970 975756242 993495349 105421455 337721309 238256020 396917576 289552774 761170456 705540842 768850830 444918160 488752863 236503389 355513717 365363164 802029917 539677409 629288615 934434930 948761715 106716408 855336908 646988731 668843672 956965970 979065583 12706733 861594236 538535042 597468034 53620378 282329694 709076450 891290210 740672025 981257098 744668680 755679373 848346218 985827074 783507247 886136842 593905389 835568907 381061951 747923207 59526470 783387582 281949621 980595729 59835344 740193916 198679927 793366188 830545274 890123411 571860752 738902842 571978961 749637503 333590261 820323200 736266215 740332235 489772417 820887288 201542352 566201291 429682389 684633889 821936997 827184779 296381521 916913764 995034341 998202150 45124567 570849308 224336361 511343009 210103326 640417446 211493786 731431444 107664836 254341525 774834690 940289531 95390129 156792210 251535794 457722988 559907884 982432723 269716577 455192647 976491365 994954905 925717788 991790804 730306846 904422274 880403729 896842429 49818129 927344678 942625711 972730233 591879167 903888944 467097066 887228543 779110684 783304125 136534749 610129714 715440206 763073161 332461887 871091614 212938407 805162396 7294808 568515140 361356361 590841204 438126302 500057632 696295984 757113375 699001075 766817224 964974179 978001928 472384645 980912802 272905802 979147653 393252091 508373169 517698091 779821863 627175518 791564000 450510477 473531556 803048191 913357569 347251174 809933268 903604330 924626141 849364394 942766664 929968141 971993362 37903606 89551589 483078363 970304954 586921579 908464916 625051525 784542642 183219006 264445439 868030900 976459224 794997295 981221785 992906430 996808255 326855619 905383823 921942799 946794047 672323386 716039716 759452772 971465571 431076622 874144076 427361966 762881306 250498683 325266146 288551972 944677122 599834169 601347920 294022896 294383164 547119771 853071025 190676378 626831571 469305713 884718449 148653441 651914505 717679936 720560590 620368258 845771329 67329519 189765682 960107642 975663059 117201310 754954449 223117221 984301729 79035004 403921947 782604611 915811424 385272342 878697957 354304657 982176344 162204054 970202675 677911582 994698954 587222923 732423508 664152948 980355018 8361949 596290734 807618090 905191074 891145042 979410645 802312747 903390344 276268019 346357037 602668564 771644865 476414824 814895354 236529224 717678606 827880531 893900455 513314591 671405417 286681773 549777215 26877164 151170687 575604357 743007454 554435284 742186734 734239392 742761674 327870912 345749782 688675806 978337436 619977635 927965650 899056613 955953278 744301004 839850668 550021505 629570125 74846300 994533311 679890332 938274825 145218287 780810212 155204447 800858881 438196686 515912469 621097724 795054799 559504389 810454755 730396837 870211935 799047069 884478096 487030206 684049022 80759520 470650484 283574563 732154077 196039105 279237591 553117375 883729562 778282062 783134266 343159971 654909230 913917598 987443102 506601571 723966574 181211142 675126511 868699955 976441929 605301035 751312286 831664196 923055243 751106732 940481992 908120991 958579808 316031994 360025509 494667692 496791922 261274500 304485489 927529658 948808255 865177553 952910540 187052154 620356048 421334434 729992528 691130554 946276108 324054705 900269998 296226495 955561939 135165024 590893987 544686508 923018880 408562118 626091482 665657464 906023560 474065211 742381970 807605623 930877088 681124932 984652541 926042887 974650263 150659726 625585575 134490467 337635880 555373289 782276999 600531672 811321995 603138046 745871684 576747926 732284747 386133805 840419118 878481553 939337254 253343438 818271218 119933160 443893385 104268406 275044928 31623452 488091071 11842859 896826215 918504076 964396588 31971107 435845937 361969428 403347679 602811829 669167171 214274345 484558306 997659325 999624862 692522623 915235516 906241499 988892268 111343096 147895043 222525474 696058656 432809068 557277926 209123333 842327506 874197570 931790134 643807847 856852228 607388631 836597115 374174545 587625867 64060162 814892209 341273789 699780758 145811878 770342771 970565289 998705943 920647096 987225023 186568142 555841611 836949158 840238142 309676494 504095340 824754498 922299795 542088511 782274763 708310078 967921982 986134758 991039536 572014473 966330197 868439634 893465995 30559768 794980119 640796688 885149734 382800286 501945480 709542166 772944793 915896729 976523863 107478525 679616642 551165574 558872565 852129264 903159772 166055979 998922755 41694940 557836456 157584331 735029767 250407815 443106464 183491056 885763547 475910015 500491777 928879396 957075027 36536857 913345453 920904011 936941893 184154262 538349821 169195376 406038742 838344751 907571897 400209435 930293010 514913085 669545140 256977103 358154821 499418886 867930553 944067177 947900748 482224369 892472649 931365555 967490866 572513010 629734482 635780770 961140052 317168252 678948757 839324898 895094693 108536324 352594755 231501020 666949393 134933790 980183658 477106423 850625890 90034392 286876525 169117168 770859631 109492885 889160792 626923883 804630372 312588292 817682220 125746271 768582936 638511984 695366556 566504718 665374735 449411382 737868575 976049625 999079370 651200133 697043556 789579744 831668836 448722870 559301098 485045897 697241394 175534201 697011081 661230936 816215391 775441060 966502760 290339916 505745184 695842433 841032446 177373089 419547016 876059423 962457617 158894648 862230115 974888175 997334355 3272513 781991938 905102073 957875376 209058467 267818766 342968083 943868354 976235509 998351579 532432887 966776196 632927793 927500827 839284616 924498307 113272384 651426869 824552777 952375951 139336014 905799322 410949267 777324602 238057916 747491143 125555714 522370618 899704637 942127080 393333878 948054268 656358460 977786561 965686575 973538528 340345723 450797677 721751465 738456024 855905209 874448260 86255404 481659260 661044430 829167785 439011984 966215576 8473331 112838312 142600558 489524716 36364731 402138069 625307665 954826598 157705840 780364463 896329337 988743437 277962275 755549737 699414048 930574019 806380422 899060079 981980756 989996509 139932082 457843953 969359480 991888064 831438971 886462491 239037808 515822382 163899387 853744400 275566237 346049180 627715736 853420992 381985018 509159550 532305872 620242333 639777737 691074665 874728568 895130902 786494951 796507330 51171287 359797455 391347548 683841660 423903580 677316892 409675758 724660692 39733164 873199746 421960006 787694747 128368355 280648547 642526724 833602271 909923518 938503222 481173695 591649002 34706598 69512711 731777678 923699074 770616730 982506507 140438265 950742639 809406160 960007266 995710118 999206752 999127030 999517145 424813495 847930570 93089370 600852665 47837674 779955051 731238391 753286204 584334743 768143348 84741407 91679820 750753673 803481428 432479917 496819528 232395190 436718560 755232570 959398807 679294984 987334526 715973632 944112785 510420719 646603734 493356254 721627375 601683654 912116966 118184185 205362396 466989926 659252744 313134538 679086195 532808241 923172743 550181529 785579650 846901955 913181668 872747433 912250652 872752420 903863544 650573940 945042156 549552361 567902898 943122090 979887290 498975671 848938682 24677767 792522038 206840503 485662929 395675822 860711419 266952205 643608900 346754771 424182900 604004126 706423887 869704674 927014622 115025329 228356812 691196930 938049087 935301317 960462210 66955927 848605412 886205968 948848566 378979991 786896011 790347560 864658984 727117314 864150869 190546020 994020813 37954219 274541955 474612778 695326345 35903654 544320922 805008910 999252038 447476658 771197692 247468008 836635264 717414863 884114540 855290969 966808809 887631981 953175705 243260939 810571078 984085913 986887398 556827852 729806761 361167276 747017973 174835101 468185195 89273335 607005418 25234164 57293168 781643828 839286106 619841845 853894500 229253910 805400694 394590263 861197633 878121552 895706592 986636214 989306012 510891504 845700857 721535293 893822115 691457978 819732457 507968189 572009095 895704073 920874335 874482097 888521352 632259355 902011146 397060074 402089997 339338241 681256317 259602116 999082193 823047856 961500902 453397660 816296347 402810943 538532202 540294310 983918745 420373904 470437598 522658162 828356119 313827032 431309097 818127008 939616794 774398469 896395979 52920644 263411264 550551552 768977107 447346640 684823169 887836703 928484922 743933574 789126762 323202100 634830103 574305984 964627676 914713611 977751292 345944906 591639950 267873071 697071739 72456412 920954370 247085846 432649702 847953312 967303788 895096744 954161296 120627539 177535629 656742286 916259187 37271239 376368504 863218877 929972620 878954737 972002091 368838228 622144446 226096191 694554888 465005347 567569950 613617412 945927319 550475238 780169100 778434930 779868807 788575445 947190298 405404478 484815205 116225971 297328755 745721127 941521231 181757703 414586398 914695584 944742314 430854868 822619965 704854017 804406668 390491531 401086021 508460799 990792672 826073114 919918540 888168273 930114968 801030738 993178297 543083750 681094462 451828922 791179974 745107502 767226412 268637379 709945779 128865571 455588223 342487993 957254544 240516368 580221346 406137764 997242692 765061448 900550151 562096080 775020395 705563110 786718054 166418623 584249503 844670265 995394877 166988107 727916703 229437485 746181720 818603084 928426289 853201993 882910243 559285882 903345738 95737243 692463120 298372529 789521488 149118111 204032328 888880257 995255905 998799673 998855333 272409633 393432988 860429490 998740687 460590962 744873788 948315201 954076143 444692561 747930365 35436903 316921244 419801472 587205425 693505582 938370989 125460091 905370177 781971378 896259851 367596325 370558971 684915719 705068542 580500791 963594473 36005935 199261243 289302292 945028546 352200961 948403363 43033611 67248080 753617565 983552802 754008828 914066085 90543955 546482658 666928237 925117955 33404423 808007922 32089673 722868866 715171304 814843376 978253995 988312973 787026360 942929205 828536 15909024 730104267 945027341 556484801 622061255 860888099 895846044 329446110 559182057 513173333 848982220 794881735 837219609 484299707 660605451 807082705 865974432 162025264 699399807 621065038 763135445 973750317 992873820 149075219 853112528 446492955 953598820 471249140 632137087 574655017 582599432 576817406 981434499 326011178 531948492 919555230 928550177 544367921 941624357 325037053 398844417 308717345 396903686 934895427 953693665 780308532 872951761 705574055 707723889 239752802 483837892 564735743 893615973 536536751 590903531 332978248 636135253 391990078 862785337 260510272 596841761 421417701 806621190 418463809 877535206 470414292 977513489 112443062 800570520 810447116 825882469 219391488 254300793 956791281 974575017 594479822 980897267 761626749 781946488 300249610 515135497 812239261 984266525 410321406 558210218 262841933 665453051 553152604 848999900 116324688 749957182 393724175 408458226 920354633 962147172 51429711 188765549 294753649 380999357 553089333 630221487 905958505 974590272 406074147 572108004 929039080 935893874 654614290 744340163 265944151 836024410 928207345 994347272 882760130 993821444 40923729 201994616 402503694 947418464 707323624 942712854 700596346 984477448 107998816 399588574 391159001 498435382 658606742 758356802 279044453 780531551 534829229 857351660 912440236 962251076 365692267 397199265 175382093 751077986 983709693 984738432 508347623 966816006 647295092 755322018 672749804 875882887 530599093 779433137 468040156 933371364 345019442 906870013 311869070 874312341 200086371 210071642 934628635 973991576 18207550 254683213 124854003 136450222 400685287 869241312 504354160 982299889 906117616 966186633 995518304 998560416 482599123 588626276 46851054 729813409 861202879 955487034 984982181 993162155 695553876 724245449 101829065 351341167 785850983 806555717 927197362 955180427 39157595 283022149 826433613 978599311 627449458 648528317 818212668 973809629 907907239 923963688 231239447 477195545 363177818 437050632 736028701 760258857 171460143 828351790 594508270 675603487 624196538 638670491 960637691 980017970 370128738 724880275 54546265 298154496 368022385 692394244 693928204 904031074 758498005 769165528 256773487 679526321 187774475 261090467 513227967 619705108 667557122 677809204 327054884 980460483 290463849 561852945 624607011 629292815 352011772 810645744 262393044 778040450 783705543 841774520 224542434 477550563 978241818 991995108 955471367 967397910 296682539 377423169 168873509 331719890 545384234 996637329 753585784 881262837 446720393 914167502 530797649 594483344 756796649 798698638 73509900 225868345 44058019 941385523 126177243 485608656 884880055 932241056 853960703 934945112 121846426 248866575 246041088 383105481 381604012 478302810 868389236 928504554 595784123 852986881 489704910 852856237 164584333 404134663 105103261 825130883 566760070 681694116 115693032 305444645 897566957 940966344 256328212 337115199 161398865 446653862 431172032 561293917 539560852 788743355 561980750 596036176 637951832 711082351 853967959 951168692 67662809 342893248 878238727 933732843 203459117 439185355 561884170 795815210 353826015 729049166 365068800 839783584 895528678 916224739 578374668 743309108 936145291 966047355 176498118 398706114 772775866 895364698 542977023 807081094 735978532 995151326 753199986 993423525 865004463 942678996 166373676 342868557 103586530 707766556 315178984 558755808 529591402 929738011 15452958 738168514 713692461 976472935 393602507 669634811 179627861 832228008 161749467 413619620 978279171 983300834 602919492 834714758 229100152 259161050 95596876 395100185 37855834 208959969 578594402 658693332 264374054 503650611 812184160 941793617 711165381 850942272 865777977 959310661 123389773 220519069 667266922 829465512 11630232 334082868 10387757 493767641 685162640 688552753 465033106 538020801 664164734 740567733 681164667 895776393 586171346 929263175 102539890 181799302 36209462 774646015 479226614 979932282 220507173 661440082 479917218 654965337 94156435 157607490 368013337 681455542 169267090 580853679 951937842 998067317 454157413 745418435 929070495 943053482 945122106 971980744 87047414 638297312 459601165 467992546 686600553 889912169 357743683 700278911 669456825 891141434 675364696 828828743 40582595 111174204 50221354 349659672 786355105 791972834 67429818 515159890 987006749 988059612 843354992 956749967 704997949 799380705 604952230 708403833 821317725 825725438 939595276 989692727 700018645 772364344 499968979 892094574 154870501 361745744 118653104 650792861 664499967 813512222 339129737 543579529 281689275 310777285 493589339 590125024 456201148 750832986 448420801 963087844 807406134 921862576 574281074 817194965 152846762 732069218 752722403 956050077 683783026 738700613 603962123 882586444 209225617 260356699 323236013 530931011 339623073 413324206 310836809 766331175 237810451 980666075 32201712 350547134 336066448 799772425 340871180 605079428 196536866 289639597 647329661 734824736 658517047 663187631 460397372 884164528 63201143 314955564 273110616 588994708 509366869 645027728 219898359 362713422 192791424 308178077 699444395 982134503 804879589 921535856 533790803 563905203 987055032 988138973 564423324 978852207 240240017 410636684 696841163 911628618 532284758 822178276 612877546 641332432 807421577 845826137 154172899 399284332 212908814 276952522 512224637 955123329 204352643 208341894 291569747 739025051 292542920 738750649 455643137 466840706 483253664 586152225 918024305 966904637 125401852 852551838 421265095 824624941 486462004 821496235 131332185 515335940 222172261 792603436 521045066 877065190 879785785 903304171 660899718 808081839 264780584 853937852 721366293 876251423 653941224 980815201 267816329 469027475 320872846 597538120 928017549 972613549 404999054 512025116 879524741 894635470 39266306 430213281 891070820 962679841 556352653 833147777 775343296 788966924 743439983 849636583 909141712 913463254 900705710 924003031 851871266 885618923 452186076 997412728 401704271 865371755 750214722 940134197 687697151 766732919 274080108 559383486 254101770 857680334 264404168 723988107 720241612 814754939 832784020 998878080 186828551 458621376 298100184 801174887 314741683 615119255 866862733 902878588 62024336 338572627 94495431 265566471 833884031 838277068 219138489 891430217 789430581 906968405 270585609 879435608 46405455 223395108 606404968 886950880 658115491 957928803 354976378 446373189 680686964 772355848 712792907 989046839 286111500 670556993 330422536 664237718 426094037 849873504 211261222 698893153 424782273 826806585 200608315 590896460 706346923 919490100 464547050 886295510 958395610 985792133 397311611 461841774 597639140 797843405 92893382 742152037 731197479 827019627 771205269 777024537 780441892 984268388 41898933 993045603 137101660 760660182 840777213 851141083 677082724 891281867 619736737 953637239 381532988 786504154 633302374 927978659 240938353 441781624 402957590 490858078 674849444 696617424 717560799 745630716 17322712 662495150 927665752 947050887 949506797 961646024 902392407 970354751 987008984 993897051 924695667 942261348 369290457 601198670 689470521 914835987 629634326 812164466 723984246 748124501 248794398 835069139 790601120 861671116 389900028 431450592 795799553 866368758 342665360 815580815 471178399 535852547 182596585 214163965 18286889 225437235 803283216 950066403 198253315 454606246 829949604 830851387 273107021 537897208 212102338 693154014 503811265 732396571 129616368 917665843 447122896 806303269 713756167 888907880 906648345 937243378 651203228 769253863 932547018 994370114 343168732 898300342 95773576 232074613 201530268 258764298 504373352 900004792 702416210 970708578 348373502 483776325 543291714 637618407 553409621 587243877 606760446 708853407 824863500 886330180 54371963 61161883 372890995 882339383 236994084 748005516 332995481 771873625 416788424 852314024 996117729 997803088 935451711 949113014 238080050 935474967 108709248 465969142 85123350 907808653 757694525 937823149 425030860 511532238 628141089 750362772 483628937 601109261 428383904 901770757 19945848 318134628 728568982 883136840 645537744 778982796 197750867 719348190 654223597 780072717 401122770 993064498 941897462 961035469 437375119 891024627 129981466 616849369 672115726 820563033 190115449 737839253 621640270 779768664 199024107 598102944 667028295 701801392 496233173 839251144 56135899 755006462 10182698 55261934 666383242 866071881 269990362 814613527 705741867 986700480 988357738 999866811 361737697 779351059 145498732 790266567 657758686 759699537 77310290 559262012 174719630 450442095 758870397 917937462 824361506 881381184 829561021 946654488 951103462 955399255 839700300 917808009 323407667 349239358 20720037 87137044 27890383 325698523 602436007 949507098 874471020 900074098 875347129 884099014 449290711 699214022 163447582 501580821 198928950 667257700 477959454 718506552 340825322 973248432 864641336 882360782 47091517 951879530 939234530 945665679 138850969 800536455 666982712 723970699 669786314 896362297 948956841 977207435 317428112 468066377 23889401 677781715 329155294 709622528 197187938 891317301 456421325 991491440 44793580 955745810 426368713 564126196 67794538 946524276 194988463 482898875 729462533 989017216 297366481 849659654 752476229 831360552 332399601 589365438 114959389 456974594 964693001 982417173 519166253 623673243 583906245 634875140 185380406 801373057 97957989 111992426 118795017 617912195 24359869 487958036 184368422 672482205 320599114 713232814 182254857 591363234 613986490 711130716 454078714 927712151 625229148 854255873 130213321 558661230 974848859 986599485 94584293 233673601 823524886 923062860 523125910 742777392 692458782 722353011 485472361 568921541 469541848 472355786 861431015 893796469 585304793 733971769 909038580 911928912 673526788 801648475 750901271 785935814 308752530 992906425 439126669 493016570 895950714 950599543 12411768 821364636 511859050 704600997 394502539 603413693 668756620 771378975 689575477 741566114 121952766 816892168 183679045 517786727 454537811 807060132 953605706 971390680 131984834 773529480 901982422 973682688 660676337 944911352 337578188 370782177 879091709 958680661 498348041 552447996 448706081 810942710 474775157 518203367 955449129 976657991 242936538 722353990 284671307 916048614 582887153 861623392 504728468 708291987 970956856 973802647 812219351 978674090 462610711 813485345 777696702 912183888 862730580 980248234 422065738 641837434 503079363 911798084 59613344 204895849 525937339 915244564 990667548 991073885 909767709 950922916 676566269 958703181 5446235 514425983 625892543 704355913 529232788 926744951 919038079 964622543 357271919 640073559 797601424 827951142 947289142 954803718 214387815 707921583 939325498 997503172 520535692 907917220 571431617 787727267 61004841 216273995 200775613 680547652 334695645 436688144 498018537 515646745 238730015 429706774 991222969 999110286 506351860 763393846 713574563 954134395 458925652 918173601 562401059 994677702 456174415 508496647 847620674 885459302 58376135 67486285 974281612 991994781 65284954 733935434 442869229 740464458 753906017 907158034 639951889 779407285 737089933 881107076 895202660 983656153 629241986 679557040 798787893 924094520 142352859 155515755 723715290 884974142 259654577 948723371 259938600 453400902 584342749 634568369 471677032 570283228 705808144 793624514 412099856 600284213 369605300 866311361 565979565 624176412 634061207 756430619 443668531 726239362 178682781 360818768 319882731 956600394 847198050 875519951 520158041 838801837 99862418 516466012 212839997 735386339 498275310 743675828 769208839 908297789 432549395 793306323 195227395 691097154 493376843 903784675 777987845 932062117 628258216 969371134 95357239 404658086 897953101 911788435 132636697 511094311 638098582 832867766 998770838 999379462 398353168 683285510 164742601 176171845 426119960 884484002 812740917 951114498 874137954 949989833 442200188 887524421 945682214 955596519 295979476 730327395 161538953 430119457 14243272 858261973 14394406 677903542 687907027 812719497 544529648 880883072 100223755 465580377 419572903 488985513 889021126 917005558 839619967 995147302 307242530 433742916 982011796 987695663 797824998 881517390 465260093 786382098 195594204 993883564 883992328 917448665 664572097 900147341 420537373 677840392 681566489 832079582 24757674 706473716 982700800 995363924 808541493 810762142 805590775 823605986 349897087 797190779 232673190 648294037 581692615 704407373 536187032 855295344 502962686 595829956 764788697 808493422 301248667 521181907 491429083 587876360 416897777 587647769 926687485 983996917 867811716 952488126 657685605 789530938 733627243 954452257 34521864 366865518 230888828 351820292 357467636 374073723 294407173 985238970 834909486 910227910 169379516 773487873 240976624 534621135 617757939 894359517 464357117 503602701 722585123 892778306 214452451 604945545 394482340 995679380 543212736 696175352 665511303 841412397 795389293 909192562 505013641 648394905 814443869 986117902 815556501 975804886 183225093 426955539 60048278 571909143 942795563 978831824 651817383 879322977 295297927 574364286 488815771 749622034 52836395 767238832 351168410 580986949 744861563 919681841 676173321 704878949 590892369 969223652 447833003 958302053 557649053 655278932 552700061 742773066 863197716 897013385 848016839 991816155 709558666 888957171 191328108 792519194 929286052 934971463 391947372 897706874 657591381 737676962 773380727 852150860 27261850 542768041 71094174 137492983 926076230 972548381 974674596 985987865 896916686 957640233 572462860 953136496 700366879 920033873 780403569 976160984 654334260 853411001 293740147 866590458 495230786 681871653 8316882 168338483 497810348 630635425 235973247 740599892 543873198 995022858 85600513 711085230 787907515 870663259 983318192 992689401 534723540 973249058 818132197 915948466 707025310 740208947 58559322 196368884 739807965 867524106 953125970 976873649 970760381 987955601 560438733 926243404 608789079 748815514 465088652 846450075 300655631 343148234 240143956 411573381 735094923 831103570 764148471 778360171 47057687 771571440 652182664 676949565 105794684 176224886 723423148 918071112 870538819 949003974 844033833 906133083 434401878 974010135 131835422 434459003 508810490 971862214 573254809 581958879 915992027 978907632 971602130 983130529 645920592 803667576 82971822 616448683 657058028 876344919 285931609 794664702 165795178 916452231 729859156 782044632 966530966 995589491 484737684 648195820 711441343 794368384 345124221 851982422 868839788 962453729 174885607 798703886 454501646 679229386 783010922 897367061 308073740 497940911 570866420 895374318 621959817 928922357 870444544 876193643 199701250 495675820 383085192 531694531 348648765 639125259 630181223 839410430 100347950 893448032 515711741 930162029 645913918 752905137 286751404 822249853 972662783 976874493 727390748 819966738 877474481 971297555 687391948 700048893 966180659 966514083 596094061 775735103 26639853 107911017 93984571 545997582 209753943 370296108 572072219 914952414 770514419 782180873 716067199 837267431 795199317 909598481 338677051 535512991 393537422 887470087 52404408 953170225 778551753 806887960 330230441 974028571 347501991 435918400 63393689 673660007 696573818 827297764 198430026 963191736 621200135 694640057 302323749 481906613 378429170 622610681 223598452 951628392 934586953 939187505 216099948 661046961 81297880 719651085 400869469 773674445 154931484 867772239 47684001 979186125 492551019 967392186 171349100 803239492 816654760 922688733 102640121 750133787 366085109 432060726 164956413 449973895 294743973 655873371 717747610 804687644 228088353 621826909 296154047 635508575 792674213 793572522 423840401 480001817 763632570 881896167 43615824 538317341 593834189 969722859 649123937 698771444 418328057 695971472 226735012 260916264 122213567 995391221 324140884 459639291 909689615 989617815 807028804 986004923 229425355 271722537 457433223 756512599 416916817 561694488 183528635 626717511 175863209 401315073 715493126 906016614 659867116 694068560 942708787 990792879 964286268 981681147 41527722 659817562 710984989 791188998 375317351 838987026 852499185 929980793 470875925 623339660 621955378 913511096 103892013 517205811 631977030 952106985 678932207 841830340 531970434 783199437 432879600 682833848 308512022 456197664 90827764 605792577 882077916 968379934 963904786 988307343 662921885 852751324 582570707 907942531 386902380 517828594 238257430 584821624 965725867 984406868 887799996 889233518 188928036 407676776 610616710 766654458 801956944 883614954 712466984 729156524 465336166 785155832 606957585 997439228 331495247 583406331 624078568 883131340 96263874 864645834 68689207 170968450 704863473 726007585 970667308 995676926 763756523 949312360 914780137 962704442 982824066 986748225 573178931 837187908 622050997 990115336 803351199 906882743 384417893 865212524 790565197 945265076 366498450 652628154 932103620 973419330 391022204 927932403 907682917 949065571 742191055 886761535 370033469 558765718 103018320 613510396 295408931 897485275 143273137 515494871 544546062 824550628 882730419 976785378 175903826 352482562 376358838 653102102 677515508 816036081 772695467 948318455 887281966 978880845 647577339 658360267 838248552 924349129 267126567 726853063 584397158 796089684 361809222 560397793 141888345 322526047 693289327 915851487 751141123 778404830 107429209 168574020 902345603 983206965 620210805 815829271 750293356 898659535 160332872 872445268 422956461 989500785 335151744 776769649 925575941 927945040 102296092 295266791 78805937 731850938 975048261 983075902 560358691 644376751 629281117 925622722 767487634 800449447 328682001 921304871 278487004 992315603 805113567 924622754 786833523 804870857 872925718 994802046 476126925 673859557 401724379 802927143 630663521 889271416 338305620 744456184 555265570 760873418 970158195 973077110 646057813 753717841 533105842 911851526 662733949 954031488 523217622 530337744 716986989 965152934 135277458 206127197 845018229 944631952 241946640 359558684 495510782 859382865 237772658 890284171 90528283 586369650 981134973 996807833 718893800 944285167 315382406 845962933 157858594 290214149 293576026 483000831 504983639 558911469 512166260 603680069 210374736 931037206 883784045 968333281 12952588 151183733 647095188 653104292 466828673 871597311 90989514 435163106 193280396 593844190 44594932 497590058 61160586 301377345 242600572 889849084 994629136 999539502 547890461 653378507 581275183 828267720 55474230 687092235 785540094 962222118 259356321 602929487 901191538 933112239 193707264 996525825 836279655 943704157 718156433 931829674 589339413 699678889 245443319 493906670 212037039 434820062 735209445 950933450 898441375 982198331 933070841 946391981 360671516 958766763 403297289 713860432 586399412 743303837 618976359 792594267 94769377 682900462 727441567 906988256 529207221 943219127 657852569 705798407 80822358 608697699 929764011 931253388 345418283 847755263 830413066 960790317 849789955 856095081 949330602 982578493 868738044 921767045 269156858 274993875 31865723 251129927 701288436 812621833 629573085 993404137 203108269 358885364 280386744 485550446 886995555 935239038 398719003 926352316 428973593 921237770 519045995 589084643 552243543 628800043 925941257 952278969 769433262 814027634 316421515 836476436 378216860 534949145 889362055 906814692 576514443 619616263 93621947 946302015 874528051 941705563 844706947 890001344 688713158 868178526 135765931 150974995 855872182 909180884 942581378 994919896 326693549 909453681 444929541 862474581 260370252 386794154 157618791 693664368 46587973 945916660 359845911 828478437 365209300 633370047 35527403 591133163 799659417 895970785 280067408 970113201 231062452 567310601 741404336 764255413 245243173 569674201 666081859 848258457 478430945 878748223 737492439 788437644 554208111 831284331 885404362 958553023 524050633 813296142 561695684 732218737 138162337 543199576 39800766 800103599 953512662 996189868 284170767 980821230 838333322 990138736 962296648 980927678 481447291 962145687 68463843 122783056 129632912 148905194 742463708 912265227 819798451 928621288 522225426 967132238 37740842 204533363 232156292 617585837 350489413 880997117 215498677 777906955 679178959 897596758 637828356 921753551 567944093 571201365 190139370 247816665 516851087 534352384 213875694 371045547 85149499 193414495 317043222 559119525 772736525 839918920 299288330 625663937 67119259 411397122 218523824 250249227 150846028 657660007 799118082 835960904 166039462 749589960 300658357 913615394 252124154 791155143 130457154 418871191 495559103 882638799 59311398 232674889 39283187 790234534 465237926 481169559 842858901 953025700 684660536 828717720 343003734 888500599 65988974 180022971 798165682 924834428 339664850 662273823 289178117 905581284 799556581 962071686 65650913 121519696 306648985 365014429 309666571 816919505 550619861 651305792 567370709 789036981 484703144 953496638 131029235 438811422 107035795 495814153 95415917 162221107 21442194 663806639 684372848 840228905 702428616 982102295 831579062 885962222 610673859 901759470 245836686 822416840 385921885 391231135 109332357 933144230 216025418 845981498 842848721 925108254 148557800 518072736 8001 653513904 167429360 412982741 925998467 962655003 336896775 950629372 537486933 762363560 274692291 629463653 437721113 538264213 157265238 940093149 854016867 930142473 335100924 388842404 527867794 927001060 715846653 987743508 999643353 999666067 686713526 782007313 71554386 602839583 744116471 775718511 73616502 959147549 152756979 917572739 725186820 871782401 532468936 720824902 788324319 977208351 462340074 756895185 182225327 700318952 948953522 980901018 694882174 787666534 38163945 360331378 797454585 972119838 991170198 999931167 2836302 329843661 580917556 746599449 932762083 978624057 12806708 639260437 20674442 293613948 735311683 851267551 575986795 935885055 500035808 670471054 691007853 711221443 149687344 750428156 647348541 913971729 427644848 655443105 91765218 588074915 467553844 606835146 736353794 931309095 517733849 705022665 551110441 658935952 698801419 754722813 283110364 453367834 549719296 715227891 226550278 414995333 186605393 240013467 970214151 984136585 905495284 951155678 657829433 782838232 239569766 383185197 907696647 919525419 778016109 802722935 148697434 453006122 707411282 875152738 73488087 691559045 930767613 994473405 708999382 897354496 385324748 836349421 341668694 735820954 35064119 688705738 598688609 958195377 737532113 958033519 425014768 507348594 289562885 712200949 903574227 938985842 837916429 981405291 597247320 807704845 154188143 973467863 646322965 969515594 41976539 327636419 685398364 776468971 959054762 981907320 521768064 761705313 369852345 883098471 308433165 879898466 878579569 953547299 973579639 992863800 40332213 744600460 980856970 990212301 394599367 743848982 823914568 934321754 317039013 998493293 154966105 824641878 472207501 738808108 401188845 516098291 891168567 948611122 730282357 853886470 844965734 920850745 265643089 917614148 942051607 951266754 635017679 969892674 823508469 941400949 273261883 755168929 461702516 788893983 232389674 495889653 204541329 564948426 262633802 372248931 225105785 739914529 73314141 97367658 770171613 915816814 210055210 314028214 830790211 880955959 129568533 739760555 434908256 866810486 306277613 971121775 459069671 745153339 228693604 365883984 438194828 729351100 624579163 740495909 855945814 964598398 56572912 996671855 677814654 811537879 586019714 616662485 553108263 799655379 874327701 918750365 305306473 421723606 751984927 786940788 835327953 894075928 131042520 668004216 718487384 735222739 739549693 995527655 406408400 695600763 760859705 800042556 426562051 683452214 973009057 998351786 304656667 504177285 256127528 952922141 325571281 762112460 949836136 968612366 867841465 982361678 755257587 823061288 127995644 751176704 355157279 835556298 103443085 476897361 370173308 727372108 802886387 885297741 218525233 242254135 558410627 610881526 392002689 749750191 162867900 991552944 341212555 637664525 274614629 393842660 491750967 903063546 300370953 481449253 12093723 123033887 226600501 732407089 745493272 886098323 805322918 848145833 544041592 879847687 313973835 759061261 108348517 656282616 329633630 499043726 188499851 519989718 345450194 933241718 869569612 936166682 834229655 953338756 290255477 459207371 595430009 840114576 81931289 633712988 255984890 935367782 291770057 474414729 685632135 906816082 154859627 956482571 440386887 467120696 195682710 729821765 152179506 294742592 235874873 931103459 24635251 317691617 963027334 971811592 568908680 884096121 538815451 612302531 685246689 923839769 606287400 668919707 11777262 274710374 486140240 850639774 955482836 995550382 988706685 993121019 114295663 725956072 144212384 868420695 77336485 411930497 540955005 573299973 68102407 890556791 204888689 453104163 169623651 319620724 391952861 638212772 170784779 246969255 13144229 977618663 235076934 366833250 262685169 490365498 406638502 682712746 811391052 964791893 884985169 942131753 456693306 638475644 331096779 611731972 611566775 802020086 260059685 782057278 217968469 792734460 851313683 899803849 167717401 366651227 348505804 874238907 903915754 962137407 848754478 884985226 365330866 749404103 557901514 689052484 39228244 868607544 272661407 972664297 773069577 902855279 246896232 950129150 138476771 357743830 638871823 826561955 623366949 835972702 954927692 984915099 82957964 442479013 59188064 489176953 9799332 632530363 408953240 455582807 10183320 558684536 312967425 721441667 883991675 984846959 657603547 685552918 224891629 537057159 742776099 960499803 958898895 983425133 783700097 960511327 637675010 795570965 987261517 996194174 446769361 975192399 144715275 837769338 475187267 862083760 119259669 379324889 659110451 795114667 70004517 692147152 380585489 821314302 304762978 493185159 199291598 547600640 797122309 899308012 92612373 394825515 569931066 666793270 327381478 703521473 374822707 907218919 215822956 496339225 796587136 961636357 757618944 875894906 438954791 757755691 668898680 891986660 256121570 308271256 683546444 831916952 472400931 716434066 175025491 745076594 501687074 992095475 506184385 650628024 889787474 964007718 935614338 994190538 887632752 933500973 5825838 706803780 930658284 932675714 67689805 296843874 81896 821148893 973915060 994699203 64955836 606791049 391256857 913247270 736929994 823899388 677254214 696553018 314767062 938832402 59242359 179636696 887310698 923807271 275336017 724658936 386827482 506552175 326265742 372286765 365419221 515015843 911175877 941404354 609429846 869602464 903647145 974874527 149664846 519815364 622821094 727597164 229846937 727473683 792049885 932131079 575602779 745594950 143535621 574724910 512739977 546232224 816366885 834735456 383076678 539422953 943484868 985697922 738902988 794884868 852017265 929284358 27343136 956213093 274420342 842799176 858894385 919484063 968680330 987597595 917327407 950934949 389674244 798224111 119201649 725303422 737495856 785762395 589270563 918049614 788759748 865215397 207652643 438695969 738714716 747875363 488409721 562062358 58163136 505277627 605404432 771690256 908456434 952375756 971304632 972227285 280824935 946511444 98977468 296427472 129977984 578532044 70714218 943575235 144061700 216844512 612221210 637450541 582383422 922799073 33582283 454996831 695226053 890795996 270568322 767641882 675207882 769723924 485170968 768684997 535766324 790922181 753473650 856560706 487236147 922659912 800570050 933349628 51167103 683085816 449996245 629730187 651233769 753668715 584834135 665076304 173312582 300113789 685504928 937150888 381839754 506602310 1134323 923161684 715684040 937472327 446266940 891960251 670732491 761898821 920607772 995819328 181163670 222702476 919097658 943999824 309431014 533161471 541662786 730420398 578518545 762941344 471428440 473750393 187845621 945320843 767043179 815857377 143834947 376857256 385436327 498651788 441808232 516553286 135392693 774819256 326146770 684232846 526065291 853761437 275988160 408716105 341200640 722566743 597332844 670628851 278908885 682574039 442269124 800814264 902738456 906744861 679023863 720832102 659859669 939516459 298078500 508850761 372539597 372996945 211445385 561322471 989909572 995089541 951308563 977610332 130464601 781692142 795564336 872613706 457525391 933133995 692383572 940021684 903045277 908179668 193529410 750533389 845740559 891148608 896442663 976081724 44068270 342807253 225396576 484665619 23970391 252734646 193306131 703077897 841679717 880742306 157051929 485381720 594734644 978134904 205346138 466948950 574070684 638836913 2571041 421213955 905449076 977236476 60315159 277066429 881603410 951131709 233634061 586653270 307219612 592363198 306584580 597604373 497718307 975637024 23772520 80476204 233137666 925831823 287850620 342602450 740197011 785461485 987127745 987947262 84598914 532479573 778616078 923192291 928063725 941967945 696631441 853363305 13262877 734721300 515368093 858873595 658797908 786885650 289755821 920787235 483568766 591630441 318600574 423029381 434146796 995020626 102633586 502859587 511098595 707135257 755947123 890591491 663347879 906606492 766243488 933696785 531420910 712911879 919690912 970740881 31860668 512802342 773997894 807142955 298246894 505836339 617932980 705602555 215887722 789998424 490469304 520066218 723045760 761512735 389508148 461133423 326189330 473473591 233172227 619896938 113034160 617054357 388562762 849502107 641527347 659955868 181459000 921333883 52147312 548726824 162933400 381938273 996796505 999681201 916499769 980635455 403077624 474957519 497073780 865254402 204377152 465526068 340132969 877965697 651455886 776016805 188948246 369864730 575902278 943469672 193171948 849764915 37272748 977012031 103642311 193775314 380576927 815138617 78665544 697963109 373521219 603725327 947761848 951070695 630220202 893160715 467113425 868748238 199665361 382050111 760061145 989089572 539309960 926662774 830232496 916523000 826930013 864157491 305575867 969764113 553356651 691875934 247695995 340751022 594183468 706730007 238945365 554475933 196450341 270128277 308448230 953012895 346921872 844055353 47537807 354147202 116814718 413668267 262059157 406756094 193074567 939154613 827441346 907447419 707442170 787549820 696240815 838915064 197543503 417887596 245221792 480942830 527210947 813134089 335269702 789157319 252213942 636142393 704906033 851970257 250596939 276017553 199403600 584582315 502050014 951779565 123424659 823323866 125107552 927703959 40678771 218150166 463184440 838392204 971595496 989311394 760916341 969514683 118923039 156884290 313244929 472007697 5412356 152222583 986183616 988358938 601767676 671931984 672077843 944151416 33390512 745060447 956432835 971993151 698743748 845862139 865430461 873761369 215793312 463153780 978201689 991421586 225904554 918115183 426440501 658207760 627876125 803025105 17176030 592888679 328148779 808052160 362155616 477019750 949161688 955409982 323395484 766681560 983222012 997198036 984007233 996540637 636964331 752489713 699958567 723122730 593675954 743191790 605892774 921377623 578037874 857562973 401742373 419110549 362242052 968078820 410590173 574163283 361861952 817526859 208922914 437561672 107855001 329356767 315109826 980961173 797107266 927541865 828175356 853530480 493730421 812859798 99354744 135745303 714915622 900915920 566652099 910871589 316268485 422078074 359256611 441575355 222388561 283019462 210387957 691457674 132280076 845693858 550391756 605057932 472135278 999074170 930668323 998391831 364577858 920411580 78975582 769889275 35425780 198382654 300961555 625824561 372555280 752316957 271679285 812142010 186258709 748561233 723704656 965631472 711723492 874638208 386820100 830595210 95029238 898091747 316942795 387562378 552256025 985423295 631715543 985538582 30050437 865459508 532245825 643331204 346089617 787381456 328815401 568146591 410628791 935309650 570204441 659564997 238726983 882783110 520424429 732608707 414146016 850550039 810640395 863430135 572311630 863787209 674115600 960400830 410922810 922213407 417797053 584026405 871153919 999574322 568571178 811911429 635813837 931911030 745558302 818085490 201610568 620203762 964785359 968982267 31300387 957837504 273918156 931941201 985160783 989695977 240832178 403954583 772218009 776521738 879411357 967430950 19245648 82998652 930888761 967121916 643386559 714344416 846982 168228494 814836515 829716636 963183820 999956181 343920124 574274807 229948120 975303696 168040254 993899635 167256114 220730310 941953581 950473367 760715549 792873802 85287999 538849179 61150450 503547412 274371420 894416279 463526206 843031287 388602938 731769411 574983960 940757020 701509016 817234526 272714633 973594569 689910836 888243541 781892852 954267286 585638946 681973143 670458453 757891234 421445451 720008232 978750689 999924070 665402508 741170939 445410011 512016689 943862912 985000201 578909874 963965794 616956192 918171320 668729854 884909337 933553374 970844436 529087908 884525228 147833526 869143482 301089645 467629610 675390338 720200891 259765155 823705636 130239025 590800461 139803271 803706500 527938619 945691219 398590002 852572311 545230469 742799842 906730234 953090249 495652382 696308405 925649809 981075923 534725692 915503308 103510207 845034769 297262365 384396856 630900665 957851444 270579166 345111856 303327060 421337845 387130130 831009460 959819086 984545466 575457151 804406286 894016170 968691440 528662498 584945978 702808030 871741717 515630478 777081536 910518321 941567983 28604209 868583073 513309733 660782957 736467166 938855302 603972357 953747052 598968369 697505711 694036789 846383603 562368284 698610785 277354718 840262219 123477078 475710548 884697100 945813241 663847823 757844413 120494337 348148760 500339941 656229861 457259401 825382094 925315567 959512532 718493209 966756738 851362647 941872024 222705340 897060318 356179856 665201447 873729992 900880310 67911809 94358822 866492694 918158034 680864793 725850568 877179952 992754022 32902208 685811580 770588624 779461848 378412802 470712880 401126841 863123539 285752184 407614305 939894267 976234712 151005827 635533583 816385814 916975845 403563898 539522285 158603840 682756971 834879357 927574222 446976395 703448167 392600308 547486373 995200624 997980155 906876513 975637965 602052879 622278214 284576997 754925683 148548532 326257505 576833087 706240958 427377931 970642193 433716973 770717434 180912586 915681888 316349424 478594031 640960865 836385117 499307440 752360131 349671429 925669976 861697856 899121529 329813352 674792257 869573173 991225573 388729075 479094982 754737430 763141781 765358481 935046375 766683552 942860736 96037134 809890886 983272484 992866832 20502229 205416139 453241058 665915290 131777030 604283132 602663 284758594 373448941 968420238 474327138 983080015 117618455 517215546 310212500 686441099 555681977 688532398 925107139 936852058 178580915 742136652 940546040 969378305 541685212 993610092 819739050 877083806 614079003 631679242 30333251 667979315 564813208 796969969 572757339 692324532 871687154 989574930 205632514 910785640 691837971 805094835 340988029 983396812 16195541 708221193 61874067 279800448 826717266 843369926 587125685 776484579 327263401 432432717 295205236 765676563 932655596 932990694 674484365 820234625 629190000 637018490 257874633 479884610 382645246 987685900 636211165 924827695 400307520 610954044 510609344 675964175 929439195 969873293 493343182 675672398 422470804 810823387 708767676 976644461 15636307 375154373 494869250 670648838 388727104 584365231 802274967 962238150 288560149 929744463 998170069 999728096 518833246 780159070 937302497 953994005 549880209 778351010 521265344 970572866 299453917 321980702 916736219 942100951 587110385 650510299 176376612 588356258 169013779 894254716 790434732 808349765 925360760 985728701 238868040 604600471 836180466 840176952 748712220 906790297 304597794 974520714 758147770 895969404 154826806 574496629 58859667 524061888 831852851 926952460 531683478 652194619 984020720 985744948 611506727 985614965 535895801 889287541 741350594 997489379 877870251 917410016 295527886 692700471 205138982 423022835 419183033 740865191 859617393 899321328 259720012 894851389 90244685 860055777 476326114 935118362 291119558 757673365 935859286 960700402 164978456 352108708 328226959 412169702 633154240 947383102 658867685 777885182 199537048 969814093 452370389 741031207 530832154 855962629 775517719 786014123 19341409 196780611 883219146 909914161 291017676 866480488 277159519 452831431 740634031 758876673 689043021 973706275 85718556 670454093 921648491 976644026 928813081 972164979 958640052 993840339 204613373 802605844 844549670 918900327 380234004 746642628 626775641 788016179 552969993 840433166 668727447 918325219 403207176 476057784 371030576 385911380 702674986 924633644 206299197 227955734 785833247 803890193 417642372 729869670 280963324 879371057 916560302 965782992 793633010 934453882 794690351 874816329 615325251 917327696 622823530 887515893 206707436 508767384 450187162 801940347 233461311 775916467 776261369 864627286 335970716 712553129 725760679 774536546 211795230 599470933 973003359 980793214 132511594 203382145 189521695 622553304 708230851 854937653 304997626 366612566 43467071 329288763 224942648 794617096 985815080 993838813 129949364 196545434 286309712 966069566 293335348 303648675 629394049 696463456 115204893 631770878 934332490 981788684 244202671 517017044 449195626 606702221 118487307 160984904 177759996 644858859 551389984 979406572 175287464 758438537 750091121 809960226 688364569 901097867 852777203 865149778 682350628 799547387 641126081 836153666 170662104 430409503 365255415 528640647 980162468 993566002 878871498 953622080 404621785 738410593 272435473 498780910 350642976 645687297 86563887 347885171 411078686 820551015 442252995 472190332 882969545 937578677 89709834 510758478 62674237 684393847 380117593 712847442 756370822 862943728 141255889 956812473 715963006 727185820 175629738 503481814 449372 821512060 19019869 719148802 31616392 706281224 320151109 544018365 790898674 954641833 340907404 593093255 738383838 841103110 502606048 982654139 437878216 856810138 766786258 893712669 932620210 989383941 975606053 992320394 794405548 905240289 38447972 634790442 359404580 656050064 844147575 938159355 488554214 618375299 53528031 116488081 476071438 781899462 705223078 843525538 878650769 993080705 257796637 675408035 90706548 989832921 114901486 935585785 798616834 819228668 513687061 876582937 163761288 470323243 871238162 944200632 504998038 990689562 781609816 923983789 361975423 392775380 364671807 607244375 240490812 379465633 192306830 394195238 153797425 414809310 521206580 872107398 49298939 911670175 975245756 997567908 629156976 878435596 998640671 999158538 935725065 991329157 689579470 918832059 638311441 653886546 646837320 883846275 674290010 682652394 429838221 967028208 977886666 985352877 723533162 725242489 513407596 759321567 681042544 831534872 603015832 706963273 506029798 744233455 982870328 990519116 685911367 807824386 223345138 309589909 94232586 877138074 135542438 179869973 762955505 817406621 327899993 819236591 601172226 997661578 399597787 449310899 838816211 885147528 237223417 601486923 946069375 968458514 891362149 934639582 119705152 138811888 68858038 740997805 645519294 982994638 875088711 928183320 86213487 868031492 749424116 987267786 512152567 826228159 518882156 844264366 53559023 301759014 990754103 999015547 646689655 764874360 266502902 578989782 923596601 981908515 601925299 632036260 504818802 637765500 831929763 920847740 446157923 773575924 63466109 81123694 203735227 524835587 284158822 494432501 436950844 837763666 138486506 908107515 545299296 553378623 329415103 382381727 243105603 497052648 267409614 426544801 306794227 355449316 37337565 71103953 120752052 203836125 218070138 990153491 809067533 931067657 289443100 623023468 329919315 518142783 655882942 784375642 687483114 697252203 814602834 856260429 267152697 870355897 580587511 972285312 650266637 666292597 376527494 881878453 850338242 895464523 710004610 792746236 118620719 191705638 744406200 802664225 210754901 476345516 782733919 922747907 964489095 978054451 654981646 931993967 807487822 934331383 324387248 500595727 177086844 467459380 124519575 538328144 722463794 789671256 277198189 797851223 81261448 146338411 154221526 704271825 72312178 166988628 244839934 344986141 932043820 991809819 258610100 838493083 117142312 706849554 20927212 169037321 229740219 791205378 686619414 710543018 352888902 753522493 992097958 994353168 536041692 622515250 541280328 585947719 709305733 813065021 615384691 780754991 586622744 866284222 795885190 865321537 77153279 138501180 717607663 953529053 68814539 617779965 656891424 674454856 475095227 970607011 107445339 792323966 514976533 846914959 786902475 975303172 56785950 723861717 299341484 872147388 472620887 775121833 938452346 952634301 949065026 985043736 521421097 719572530 804167920 876500643 53784971 68061645 665089849 970199654 573049707 911471485 311551025 706908348 503973990 907272906 924154719 950085448 173335772 999724458 558738348 625126060 651576766 722878407 27522117 66249570 330742144 608447135 525686414 560207394 776915979 895289998 42292027 216210943 189929247 915819856 910571690 958833216 615374849 616001893 413345625 554560048 898297264 959965934 133269864 244950869 630238185 920413990 805519732 930297353 737755171 768507382 374619843 612661155 655957075 802941666 375802471 518024273 788088517 841747711 406260245 672556242 674211108 822316039 714375819 838382924 574982952 692500081 827555978 905830014 710119903 914926878 950979772 971134680 773210794 926522069 844307254 998140942 295137847 717591635 433288084 667428329 485893082 649268388 504032911 814951758 948680249 971983763 466981053 931103564 993357471 998784216 609882979 668746092 696630778 835698360 55211043 271364033 141603794 362044127 152863910 398142892 321115585 890445880 273589132 465970533 177447602 984449085 211850205 579840671 560736369 797163543 837756191 988050070 190528012 652672261 364345559 509345344 289058059 761143499 323184682 492982853 687791155 790351559 595827892 853256481 328832215 550481055 652468344 825213708 99933083 402142489 681418202 768917190 188519043 804485379 776534676 852771008 692350646 996800163 333499733 337503547 849655476 995275296 862261016 989659523 358621898 911115386 567089872 593693000 900375313 971683636 691230917 990771095 848520843 965736707 182645504 926801868 246760577 294027750 651890737 659326630 420000339 759234053 338183635 393695168 962428740 963335338 966489607 998544052 631258876 805638821 112278628 140662566 530599168 889303337 208298990 602936804 510620648 635378827 747527173 796088435 900248623 994842585 67751443 466737747 516095572 620397205 29392058 323066511 586461234 604737395 803319579 886974511 87555662 947239633 602569260 975721872 191956511 642475794 381260429 405874507 55859913 565587533 752987736 772642070 495022258 652876654 918903740 943422777 628861183 855969355 782795567 962653348 520096068 545715225 65148729 246027862 776128714 917191769 883301308 907409089 71305910 270582311 346032144 683332342 244659954 441186770 676386261 947347487 107874587 418320927 36219830 62252823 113849297 802780909 816190732 881632634 597893298 683612525 2182573 972566630 789800938 867008058 640399485 801396844 260790582 742525007 410352374 755095233 922848786 963029545 576821199 762172276 317072909 728525697 497292219 574684467 192004569 221209654 688917707 721596627 476028150 888100925 436984907 906147516 236639929 630327995 801799258 950861167 849758933 972054411 784910538 821746430 943929548 952801252 636354410 777678635 166967894 460254240 310419397 898789717 801834681 815785835 971806006 983697361 722437803 799576672 554919157 787359287 375265476 965138948 591838938 721214466 295797472 335976422 936687434 959955989 403567372 746307195 50352122 544042429 401484059 616107411 439758352 567543443 235224688 812558588 40727701 892946704 52875668 609021507 455830501 520548604 332092149 721468356 599067665 987366515 882604662 942525919 914278136 928434971 952366361 983964368 139423216 256609383 59364785 898906589 277779739 805975279 665284330 804285553 761537922 947843622 868730695 887370374 323238518 544639933 103307101 360481098 359062917 408373646 834989780 896999235 717690734 805263701 827187601 951716408 979573940 989140832 402348667 564618286 18866603 66158026 483718416 492160782 838872687 927547020 777342332 995267976 238016915 330871389 754947990 951008054 207840071 568794887 738449092 848839290 265807067 547638630 181176316 249490029 915755460 998905401 48005726 590537479 560970485 803374010 176265422 423524590 851215885 990002765 702476925 863548981 981392214 989019163 300159474 462061942 89081574 846738288 444031983 817274748 51208875 443936990 230616593 637799659 400601242 778357034 957367616 971089971 967074092 983435830 230434797 738251123 576908399 983830296 192579127 958743556 712137727 807033666 486031345 640058843 952423543 997895292 323531757 447447497 486315237 908612406 886131142 984100588 138715949 882367373 104563041 984677580 283054471 930773856 156878394 828222102 625296689 662958680 271944705 744384399 836923852 854055241 414532443 934786472 217120692 365264578 518781169 606606985 113768874 172936203 189043905 845037798 498474439 526997078 371078487 864236169 222753800 237759970 434253013 821252186 613006281 955273888 714926962 859940028 461654350 622229473 563543158 576005482 887773980 917948985 915569880 915685531 829224619 928571681 845667644 878193266 996729409 999755741 941521646 974208231 735624370 740507293 541633516 855999566 408833778 896599125 230370771 651208959 597001579 943413845 621448108 685823088 155236455 698008562 180543811 473665590 438139908 974906659 576306297 607527393 390695080 670165324 247871387 722849037 754454567 843025459 433261629 874836956 898414189 932332103 568134326 791643970 949748298 969972434 644017950 930399807 708782949 709171054 573115516 785020535 107524630 200500938 185065679 901006265 850743666 872260975 170967884 912044456 794442649 834014237 279163901 334356357 729633080 878250340 945957044 994864328 689112654 936818525 75597468 510616989 369604639 963850826 22346915 548798933 492353519 671237641 976945703 979343690 75669523 393072638 399284464 610731273 501163384 791385984 209837109 577501114 675931942 930698828 268283138 928862799 428305304 958511193 757329477 971388185 204621134 264316905 825669212 902621834 341278437 743037837 102960735 844373325 146511288 291736099 866252384 902143415 747600366 938733725 535448827 664499172 911154151 997558442 309077993 769083151 141444468 641445199 120809459 372010874 965647103 978095987 94056029 736860843 900785961 935308498 702470763 949628485 560559920 926028846 409965165 571368363 44250940 201308312 224814223 831511143 442247645 559683709 996927317 997679560 854991309 883235350 118014261 763750277 216457762 754338025 305878947 764061604 973026301 987135755 114384742 296049959 843156968 902795783 968638561 991257460 752730030 940119406 309330139 890808088 528243938 927846532 155892098 325709135 146377712 519072174 752811909 820886220 152101428 352522371 794923755 985046420 473829752 959869907 47056272 414326790 223995396 470206133 801234402 989312705 920622096 924470217 783550033 943725301 424673408 869744446 253726523 581377828 160994878 304967723 971252999 972061590 452246345 790158831 600557294 783911304 214940032 657346249 859733932 968506756 817068198 914358467 818560512 831171793 249028945 925751757 611433825 766080595 471554523 766973418 777012658 985969170 490184326 718997705 558186514 863817370 932834290 987943419 460622173 650223804 741659911 996462234 52046763 898901024 749082604 994670332 764903708 951077400 661494703 729837195 722428043 910341324 120516567 953788088 514927935 563782825 31524503 768107842 528832435 531339285 886712967 987936493 666596519 853779635 940051717 990341402 497286014 908020381 417819443 970783945 826246722 859849505 367604303 393628863 182806782 450682262 689684994 853939908 784719858 942310606 240196178 763566155 618561752 902024911 3592669 742936527 531194050 863409353 752791445 858687821 48577283 446145020 829123153 914092898 77889063 557529650 44511806 511698151 398237799 450578042 518044108 761092210 468113695 714889273 632176227 792223607 499299739 764140579 517523398 520461196 324055445 386370226 627815107 630996179 659108570 852395970 767041280 958801635 472873124 889602185 294988425 865995289 61982110 153832973 716651519 940806704 247201732 427540696 162568487 659285391 669553369 790912873 583859166 587442371 667240758 962682882 224768356 418897591 413208799 953587760 505254569 687673895 372858866 539776679 491326588 581231618 303218246 489251644 284339665 364260960 604121141 960190994 958603146 980796584 274091726 807761342 851503698 903364852 790755100 795276609 110593747 826513842 835507797 928096177 273119611 681700552 412848361 855145927 654651037 994014217 464641727 619671504 299682183 903674093 167162779 978991145 202983222 868943411 95692785 309964030 807335869 965014445 168606139 376582068 736813174 870561309 810672752 901939656 604832917 663851427 243875871 900635364 296324122 557413224 461914486 864218772 381721186 392120207 768956963 823694808 22166699 477591486 380057908 968383805 517579583 725771785 737252906 754916264 157555202 985161637 564406464 632071808 804669686 986954807 293576961 627944057 776441388 813058456 779515648 867483331 914115076 936799281 659375661 726100548 98596106 179621078 200398884 755638197 799261923 952727047 509514287 813220288 792505415 832597153 327599607 679317300 486785499 666444064 466629247 982935430 172094129 216266220 379665915 709429402 580191810 759957702 780794438 897235996 614782539 690278565 913368634 993788338 933287500 981784325 106901897 514485961 950155162 985601857 285547916 474716547 447240973 777722747 885509534 889115432 508917133 763977653 207443146 407606729 264990147 578756222 995339488 995667990 8158201 93571819 123819078 301238355 758054405 769979625 201993698 697508836 962667491 995506173 289071570 447405829 344505710 797352704 228321201 499709168 146150519 439799373 532478569 643961588 95848611 911257739 895686639 936967583 388902750 785607948 721944482 877043963 705115559 986145230 783211458 801325899 192285476 807376379 631128571 944594849 36495788 819221270 508054481 810767693 742365661 984178536 336790561 828398396 301416892 445882674 948768779 985946023 406733976 921212777 663279119 777131783 26111378 315710375 359469958 999174404 23016548 571870816 298331378 937440777 200066480 207831660 890521645 944668500 933265747 982987617 447687296 707378603 118714563 906331104 695439903 885783311 416342723 780434597 992345881 996307529 649518765 658167296 284722150 919371265 46674821 756923394 572733838 889878815 210706496 827072775 916484445 945255389 989055541 989107016 895333078 976328775 83497297 476317559 703496976 962189987 424717030 934163861 230271114 292337264 728868773 876538599 702276195 706563958 358912075 807652284 366500411 459025015 540640927 930465259 134877417 907633941 233993849 891093869 537503198 657610841 48970560 59218055 853856334 973545129 89890794 480639339 691084893 902407000 596846504 911650914 784114652 871268889 300642619 395721014 842484669 917690530 366971102 612783507 120714772 524628135 496775023 699301095 691739387 880382979 42968959 330300437 1220141 662781119 307134488 783294555 627193719 992278502 952771078 996298309 705570163 973874961 926325550 956547962 655042728 876386096 674147808 727013694 832352775 969421774 136966080 820971974 543394512 610437819 25708239 439682725 278703404 464872479 216137770 840433574 403034919 552604241 777347739 874258427 159365142 394766556 173780947 686311952 301593646 550724526 270126209 519044132 326031975 918667371 498082870 850174547 186225426 601521934 83417659 935630531 901731378 927427730 762190299 903428836 598501838 973040576 180009674 879828270 588679148 660684039 682431623 856867050 51828142 709419385 919295749 934902120 623892555 933018160 859188194 931226053 685955292 788291941 150066383 468029214 937870276 996694880 675899021 959689135 849662683 976299737 353979742 667697221 8791315 20553442 651180111 815129228 35770529 196055576 226120375 322268613 514195402 856044712 85290147 905982647 956453739 987613106 399784760 668539556 595032760 642155584 694352604 951085925 524521823 757195169 66476849 727008262 94086458 611232910 348416856 348798453 860114136 893302328 467049581 567701388 185127442 796050399 487935979 624639144 187822471 314606369 724525179 946206940 154323376 985925332 828835301 880391802 353028334 694574624 631704407 734846564 128995052 946472055 78926193 555571799 539505618 952677466 79636800 819482575 545632660 884741085 275898853 485725062 896194118 926941836 547007852 604375515 221754937 459994837 406527892 491884424 102826499 152434828 655978336 970498177 936219554 995639666 533870875 951600382 789779497 912762190 304762146 933007639 650022461 848257078 193518172 259669413 44584195 647008996 273327321 384900320 137395475 511201687 748324098 961045910 222783473 395256338 967122275 985532933 284469594 488042405 328886870 454914662 899879898 966555907 873959649 906635883 704007533 872956906 194530772 383770073 223416358 405350699 896121072 922595533 838255720 903879123 445381925 611992657 293788162 608861780 845879814 866959678 683838604 834111899 502466393 687185937 404423805 817249088 338003351 516988817 764303472 842374184 164344584 641909412 764658405 835617024 565100607 717970730 339219482 546057278 633393204 956557732 673461954 947085136 519918975 522732223 813706809 862645265 817470065 824839479 360480652 939681316 994266871 994394126 49063862 518567853 174322122 797188715 880541083 890504318 659460860 906117984 867452308 980062676 945208064 995511222 826900507 922750346 418653492 423896513 377745178 637624373 753691077 860597785 187847308 831806193 408650699 711936284 948106965 982183428 78185954 858199124 557255566 801679550 596944355 702406513 105641459 191813294 844983741 915571680 850925476 939388154 391726923 511957163 49689805 903626544 696853559 793225789 704109707 931758725 532593056 694893261 178077894 374507115 131350616 865374257 342953297 808110513 600203279 950053416 347301387 370576723 299864778 897208978 587026247 880693707 870851286 931063814 142336307 546286938 538085954 549954047 250135233 687474694 940743393 957717410 257480483 284194451 648558028 708424831 8096100 202365151 45959990 705898934 393325245 761442528 115334453 378448612 332755841 792417102 982447688 983231858 765837103 966916593 642427174 870227068 141410814 789122355 470301413 858608786 985615727 989101469 923369213 965719673 865252150 924145235 924090768 969950392 719066185 896414124 980296740 984724470 241660447 499364225 823796509 997702025 827257616 906557125 569171921 582922402 527803005 867456870 872578273 991618955 725068934 969150279 517296162 971619328 919010491 989404604 922511171 956307859 299844065 319350847 562276911 827097906 13724729 102652873 967171120 978406924 939397090 946270398 127566350 957776125 830730892 918207742 376008595 603018017 184610709 876754580 723188564 962303340 531171775 725049421 697835783 978550219 677567043 802385062 379860015 778223363 741956743 813285391 504008861 564204315 452525626 512068910 43509602 519152258 661704646 840506595 483597553 650570915 235408245 513603559 260405081 519859469 230442230 928455602 501742315 812876305 96950458 559562082 530001791 537315812 134040839 506360827 30400056 702526799 924929424 939285973 405050977 603519898 745499413 944104038 414824461 976345389 272719803 956738966 101000823 569650256 187178225 894426737 581729363 867685569 977011291 977453317 420387817 833124422 131092979 222859620 13448 177577635 463707345 862776294 175869648 650428000 811310319 956768512 372235066 449858891 535635992 959257308 900055485 943063161 49609249 836192148 912212254 928053983 616199994 971735634 189940075 417144926 122433191 760692624 183442560 249125955 245333465 669031391 383427337 882326384 148698210 882346673 501702299 969849115 858950755 922010818 303665810 680490966 122041308 614548400 52593132 751247033 463098 61145861 99331450 888611450 617930840 653168932 454356485 935267925 490849532 742510692 251885972 978306266 289445828 366693982 665996746 670220769 798763793 830859698 889287592 989812503 458804858 716597689 417107132 753672321 244103183 750610327 729360668 907760656 462918938 703552147 770178323 915428627 904248529 915677579 78178472 591915000 286665097 645663924 371962911 457193917 220036093 415871052 921589108 950922328 413491421 591631405 714641220 783816773 53847716 507469825 435548780 933420118 163990448 951090717 355884648 906918641 98438635 631278887 179847076 576576802 730894042 803337747 577941595 663087314 291015790 412299181 305448933 954476978 557711817 748109470 815024441 941884288 499515562 908358059 105795737 372189169 194330433 554113228 153210662 254227465 934467085 966186435 593197810 939166551 253454646 679957159 259049025 449200281 184278302 876175080 90985093 708067192 625641073 992456933 512068533 861126202 335212853 598118486 893313300 946958112 638540169 968265299 680726993 682997506 803224813 813583465 32430541 898829501 686765022 812862258 879077814 975378917 961244497 975182620 116826128 366954227 29092343 354215886 671171605 764189760 174817404 872310945 838741729 883694572 825158659 959391706 728740314 862203153 865700185 961446727 924287185 974473383 859220045 990129834 404947504 551689063 219057361 597156796 450227180 808715214 400047779 593496520 290933100 782682921 92941016 929744096 570916168 778883784 854324954 993655902 73848485 514882307 312901723 541298382 69418732 978950938 350800 264317770 118250271 931583052 431713849 651950881 99785140 819049049 824462161 894576111 153451750 595186208 551875461 826078813 492930180 891647135 649582880 690063741 481537019 882263302 426749927 659589060 815090434 901845696 528697476 650943837 777614332 781792129 269029133 336933770 628013450 888982683 453392306 541132571 591401164 895576583 168281189 538404085 308219659 792775994 224902037 558822913 423389554 686364129 459736701 858343643 949159186 972658033 264705876 817544756 785429920 932693301 828516801 979206426 951007155 998030548 870734921 934813334 280769945 932252764 627075075 797009577 287292280 957845817 857317883 926673302 766439814 785386975 606525799 926703155 378118006 421449994 624761507 804928569 413443482 423924180 359661212 837469849 658836789 810290658 150782194 166764423 164398115 709528854 435170886 954534458 761452647 904507079 324422869 962410564 453754594 595685130 462213116 854774663 518498610 716303229 101520279 436436992 370258046 421295071 966430658 998416762 483515623 757192857 914403064 950582649 611346350 666963744 318427678 714497624 337125383 838006524 641993475 752516461 321249195 808374425 659261041 841181697 785580552 868858938 236753062 805542716 608833479 943435947 976082686 990711341 331837595 967101662 599905016 967894215 382138014 413664372 784524301 932939562 920775491 950416725 761863611 816340330 810052342 863574633 819877113 970165181 524111623 537783581 283924085 407469897 545502379 663031591 676791644 792485952 802243932 869917144 485868424 508405466 178948792 402802533 559416159 927757190 124994807 835730584 210281277 587256304 594111563 772999636 316477245 372096550 434795077 571937058 820796669 878590709 401152368 448475853 618434321 770579686 224233866 663127030 743814287 960356107 231360311 252280957 240875696 460132009 409018605 615954138 986312238 992960028 906322533 988356063 503782451 649831046 169392914 830893309 714283430 729697728 861006000 948567341 814479982 828037324 524232213 622406463 556799803 598480925 256415480 344824998 123987683 856812443 423835564 481193977 335934372 877807438 890094185 934355505 259402511 640460985 993700734 994846528 360040134 564542050 647872828 713254003 860531865 999085224 946938109 961444686 321914338 396311132 950427875 967915126 796588424 882073888 857088923 859441020 824987822 862042728 207692111 480939739 212069037 546468319 463486937 654531683 619292269 967348765 758559482 773375724 475780922 486101529 528420075 560860274 48817284 321400898 515288518 821094480 738125038 766616993 983651240 986440656 459462278 670794931 671203074 776246760 333241517 772972985 323065986 415549401 459098912 838220212 769768520 903915904 893188593 904820838 562934521 863853271 585041775 678590070 709668612 962650433 327230055 805375455 765786973 875553632 278432421 978114938 924518329 971221808 854457671 868168108 837254491 977763683 832233898 971128673 79493371 409106156 98022842 350914791 468759647 710018754 991568734 998288418 774077367 896838704 578692611 682724458 926434957 938984184 429220111 719419908 113782166 246012991 511411282 674638991 679386159 989377085 60395492 439769385 792525823 980060596 706164374 843506347 321611122 350943400 348627990 558817340 673405018 832210222 349826801 627043864 110093160 537828749 686322025 732284115 347032403 407046251 838656011 976295039 705170129 998215737 633942778 986235333 320052425 324143471 706246946 855564149 972415293 984685228 339713178 776360959 505849783 791273904 401571613 743191771 767590364 861726424 139806463 233257560 855418858 966712447 352227697 698220470 948893944 960970692 674343902 682818079 565576594 803176479 405676133 890743639 260317194 337550549 305429765 778176964 614722305 863531341 173851734 618985551 397708402 535545980 388610504 957447301 370278483 740053809 564599945 784491590 814076771 878812415 116265370 704820099 447314204 789834255 424302897 782498950 962265089 978761004 738280676 776664724 946276707 985612304 535317029 900063610 789447086 893359554 291515843 767731063 711147173 730630953 449743903 943145268 906327770 923853413 537070085 597460304 321250660 641734104 749093050 762186680 804926333 966395908 167115209 929242388 392127040 467145565 699591454 860220801 134304471 188098550 142499827 432815081 778360393 955365607 973983869 979225947 725060683 861324739 369809742 720322941 274303164 946889029 803353843 942114405 11984759 362479331 409142334 748687782 143255258 952163445 961433926 966142510 767545906 964895658 165055419 761268106 180872275 430447751 821079866 918614545 892916292 960348155 219057419 442633991 193091739 225801406 850755496 856084985 731630903 970423440 404438187 771058748 292368046 818661205 733835042 985914122 413944870 549128685 490286084 873315132 44924968 566943097 317747621 974579064 763122172 931854921 812746084 842195537 876531082 907480286 974646962 985629576 423526239 528645572 538885420 769049288 749518538 903627166 217471251 338264664 877415535 938549704 645743472 938338473 316786002 634979421 763820791 788746330 458441603 602163460 41914782 507382165 959419366 987043866 571343327 592214750 511096262 986751416 538990330 550187032 755720277 845227046 492539375 513909303 835704526 902070158 750857541 919528531 47546113 548414459 419697856 526806241 846608540 875405602 196094411 335238384 786169052 920865675 518194265 679045929 798314904 927071489 589915720 857751315 891221380 913508731 793491054 918967056 402602102 746910560 241846931 861708165 672505007 808325830 126312653 348586600 63206432 495644866 242439395 283584670 107617691 363308521 630385338 779134904 383183836 464633423 195271263 198692690 611042259 804897833 669569323 932515487 707704549 722447100 87065998 548306215 853786330 922003236 239521390 939613963 864154322 986211157 353984342 635564109 639340220 767192612 430915778 483523464 325694626 448099112 403202236 646663596 612785895 786325165 464425322 465325958 155583504 566791130 24558080 443873544 724376181 822586041 783146352 897945824 224683003 685623796 625387222 937459117 502382616 541529401 526704137 841414951 286481400 694945391 387020488 800624674 983661799 995266188 310324301 541570352 727963278 892297039 944228483 989596927 951996151 991726358 807042629 999555286 823442036 999782625 915513649 989701889 21496330 809576662 78337941 579858437 451963587 981057109 550078075 794131738 852590555 898509919 181710354 285133887 311273985 793958162 530238953 542813762 862222291 986817009 164683190 700442752 98651609 671046863 959300074 970925310 503150218 838843974 289023119 839042777 161881844 263627399 507352757 796376418 42630412 804474195 493269300 763396241 392537203 408130137 721450675 913043326 872527043 899860934 113216165 714612121 891860635 929524018 766159053 890678477 1791122 506779947 104756371 137113956 625418103 873404176 93980079 802421420 221095569 587796119 947792607 948180626 625758768 961779468 694456510 785577220 430929711 476192957 968677718 991934346 155687187 324411868 154385146 958833212 62160504 192584358 616675424 991542632 975210971 978683529 67868333 920916449 836116708 883161436 951427510 985075460 28237382 382032284 796147163 815803402 216546537 419833193 750948218 912413502 544764942 858082468 447228808 979209174 493164847 939886251 168302998 474813558 981572182 986391575 97783902 556473259 986946289 990035938 314199828 516878925 149609682 488866776 19762188 292871098 195775060 305962025 399307133 996861995 514709464 668732728 354140458 570350691 760899802 987360937 609886998 942015112 313449811 393308942 421842295 809494166 615914128 946873231 387242897 671275913 127694914 629133207 926668948 978492494 934162858 970142793 507746617 798030485 331162050 747370008 462780012 931588669 79580350 747784765 692617911 847228660 266202046 397586259 329850194 389057164 31610032 828845664 476918373 477834230 309591801 896517776 669015212 899862578 917159042 963151233 482758950 711561891 506144704 998928728 495862501 984488505 302958728 521871429 547938434 846586826 372430227 422463775 790518888 827279315 124412950 443472404 776667629 879137652 11367706 12389507 446808628 905693761 798113815 899338272 134678 756953367 859618620 943266956 990000589 990237708 869205546 971411732 737472437 767798088 888877250 912284952 738691522 979250400 753858147 770632818 219675293 887321007 935046718 972625251 896967004 922177012 36454903 691131054 407013395 550093508 545046352 720280924 63826332 423368872 663852414 777481916 728805712 924271200 462779998 592790743 190506441 527843004 657276783 836723054 857530839 906855967 210897637 620644064 638128346 850182259 266052343 852478557 374628025 637472474 359946617 958905352 223974265 377269700 222060900 523980160 298909976 995121713 953408635 982284264 53507438 363191816 415189053 449782378 806886119 987243285 534199662 726515081 270302521 958590741 200423062 461783979 475619566 790839032 785134464 881715731 989437730 990270999 767270234 963758597 794220616 932228142 10882374 421351609 433029211 558873908 678556619 940626178 826107525 867103861 965117003 998948865 857503206 872970097 924759153 968738698 506808267 901781859 243455234 247011619 5669186 155943927 594832546 794080369 846481679 959929582 24920747 160444495 408598529 786938818 979495346 989420840 751129358 815767366 35824483 868033894 636720851 947150140 568609885 849578640 759442105 969208264 312361334 676899797 352725610 890905218 908948091 983595932 707690040 920685687 854402349 883288882 58968217 233767429 276745160 796714207 75841514 703792301 744261147 884503484 267016871 810576989 214972272 734359981 935581296 982709937 371409790 661693460 425494784 432241672 809620921 832809359 232940451 476689868 175807206 876647517 153330786 504166516 581597389 839229798 531776223 820239360 704035888 766186962 952677491 967217105 708257224 799702754 150287801 615578514 361556127 420468938 979944276 998053058 578064099 772667466 512948633 736821526 277952735 860567491 464255813 573110547 248927128 984901460 291893301 548854387 597975054 711624683 695760570 776392598 692131206 898062537 952852767 974853108 350267949 422432296 187566483 948378582 493849752 765356796 181193628 990716897 569010686 956117699 272402515 368366505 893954987 916390243 583516990 820974994 710891160 744998555 38050409 938725404 253776489 800565103 920960054 975703206 778614594 848676003 887613056 948450198 602932854 614712378 213041832 704393638 271620865 756405848 785953117 875498312 790109380 799296031 47297666 328512029 202494054 777450387 39900090 250418988 341125910 531635668 969155167 972611925 602057463 677662079 158378374 891349037 181693775 739129835 115896139 400720777 502355923 932142860 502874860 811836855 143556565 677830589 663721306 946394008 926993136 972793078 637845402 862554692 919573437 927274807 647809827 898503585 880362454 995447914 368110276 881536064 337112180 590701868 8669142 687785907 524627012 794830578 629787759 752852275 180405549 199607551 954076911 993296513 439431223 800375112 319717042 374166479 932595291 959684399 553453962 905096255 968043353 988190166 419065977 763225570 798189946 906326808 179208116 988435264 925353171 955287074 271071839 968843610 379918425 983046834 424297405 896013637 388097251 798569100 157031995 497291997 450959792 953600916 858561875 987158624 464902296 541202820 265380922 419160876 345329406 677985326 332230993 943881633 315093574 364161290 890489890 922351213 222054902 361249904 855415862 863736983 164646966 951455606 795242865 799229380 350335952 373407244 483201293 603333412 456408867 882818623 1408680 474281809 162552918 828307606 380628451 522324308 910258471 913577934 843448131 907212846 217386241 989330196 601614963 949396343 238880045 786983984 319315575 931930534 965956222 981571213 689510788 856172622 3193617 405613203 424820176 747958969 647281043 951180965 890406256 950113293 865096373 995373581 596834690 754870579 246045284 617701221 597781499 994672418 570721662 867996618 432537327 654999130 640971208 658860566 478883602 853961903 909030095 929414660 853111052 879604307 100469807 218257623 803954309 946434426 995386778 996736649 487290593 543115419 252233384 655186622 846748642 885089602 704689200 831798687 541864167 656462435 587883374 928603218 534411958 881232504 511555181 631447851 39955406 567065971 700983439 927702762 992716570 998706849 271124869 382476010 356780359 994397324 974117794 985749015 947611415 995724659 364387033 469713580 865776700 996957978 599981682 924427333 769021944 877529276 136865686 537414354 786341245 858285915 251044609 567120107 252547964 461446989 961093680 964540252 623669120 826061671 576923363 669515818 306358371 807183818 202534425 900046038 663793727 875484725 414195357 517575300 585642298 644176796 366109625 730403075 175434957 586108541 957797540 967185858 241320863 775871954 871620789 923230768 157246295 605276994 622651466 884559714 699828742 706601926 934923676 949003172 364907129 671416529 762079491 854920322 401538890 701464639 87273396 599924826 158981919 492390715 103337058 176893633 725942922 744769133 939975219 943507881 278253102 910691111 323953353 661223352 980116579 990344843 758729963 811345952 922529504 927275184 907917757 965884723 876168392 937350066 748821010 845029013 572171510 962245552 623594663 892763903 324931551 478483728 819731835 914555270 987238434 991056606 782382586 925176759 512198233 553470644 403748189 791938356 233110444 962269147 456200247 460195791 370462336 983986363 413211509 707140108 148608312 901748947 289695504 865536441 869765231 991779112 897421243 992339600 134838879 936566668 941700219 962073138 783864134 879215146 420295658 483499007 227485401 313133445 51124984 732039920 113073906 127458675 494581801 934798992 482084273 581123181 896898050 926805022 310022318 837099287 46835458 191347636 912466679 917230301 67875896 997230588 132334155 420621334 854889952 898580032 752785720 772452883 339099901 524660785 185946062 638423423 417703908 497964951 101535431 840024404 409890125 843871415 832245976 847738769 673869960 791766256 596034608 659963573 519078379 720010311 61747587 104368754 194861377 777680146 690062985 690946488 487530440 701320023 988436513 995095397 473301096 562479241 266201069 641603567 960387332 982987535 112551468 522788674 850268238 938453712 136198493 592781594 277563495 607116078 865670670 954450623 730703920 742524125 793815269 858216644 994262744 997683018 632442503 775477948 718664430 932752316 384595097 743442647 193318761 423184817 320345370 440300513 703545700 957814365 77682015 844337794 187712710 448926331 310743282 743304850 909856154 936723759 301376075 721053459 439560857 927782774 779896340 881796046 962638987 984372573 852309706 875820342 846845677 958288122 530617748 878951898 731044247 987134827 296758903 452600426 888335394 913572204 643854524 801461891 339926669 661936012 577698 149603313 325292862 574168171 539451315 975589117 799511954 987731234 14863394 641459531 281879314 894307202 652090274 923697733 599525426 608992839 489393399 563363517 623738993 735047632 528994037 584783853 484000794 518793353 950405890 961642450 652427903 981103474 422394625 682974558 673770136 778423715 740758651 741616880 749377080 942601219 907776466 935261014 119312310 975515798 230183232 758869009 362487984 562736036 345777683 739945085 526937042 827596239 812421983 812474398 208921601 984571386 842069866 855654152 569560760 999136403 110311208 616968960 107936360 777949038 598236690 946487380 68469187 324042398 551507520 710369671 489391479 584381861 410631431 887654631 696025595 862180583 149434196 515815974 759190363 915005983 686408227 762581341 676498788 966792693 783014655 930359508 409013156 754165969 677266728 878135973 670293798 672898787 222390656 367659075 946421332 959669578 802355684 879448240 432196882 518472303 859487870 992681571 592771336 977639472 721270408 994195656 683939127 726453500 268893586 301084828 724330464 998723529 513084101 546617838 247754299 821763949 996472845 998276969 485403766 932584094 454959055 808152996 869275022 885495903 3682238 68580728 815514161 843794786 934885623 955767028 330691448 734565762 835198161 968571024 661000468 738434462 836229832 935304458 634840745 816134381 698265485 964830599 730889033 824969109 180626594 729696896 586030814 739096715 805168102 925498619 923651613 969180663 425404499 604242570 608913962 984710014 249004470 826714799 628526701 672357703 86700447 813034440 726872729 761690589 418148620 792175387 533357120 550854288 483629650 699252749 426604789 950671382 240550006 560320715 296973975 379638550 778715314 874275568 3264539 536920232 536110415 592367663 156715082 719764752 146562551 329743935 897333414 991049607 160499060 544738478 697919071 769881085 622148525 798062213 325124685 677488216 588297498 760293825 320015097 696866413 197758839 479088481 731728025 737300329 519478523 838962428 404058293 836171286 353991524 469161690 863519963 943665136 935287028 966451097 3489343 225134056 973180941 975440687 803149766 815986958 987324276 997750247 13105137 674374200 892894686 945319418 727396182 759922169 977164952 987163359 918415080 946810486 14498861 962749708 239576 502811788 950151971 998135176 163938976 247356846 508394720 840750916 775942039 890226253 418147455 844714912 355829154 710022722 317946915 649571610 115845871 789521027 808876424 875038495 117478469 597743444 654419732 967200808 391404141 641029058 399106900 954195376 623269574 716039503 898760945 982297137 639315462 731929491 716141760 938524868 289954019 741136647 630574870 815981660 13399864 958780541 851143313 884723601 754449301 920919132 11260567 930101380 807269111 954519468 940040010 980079914 57118047 963427289 104235824 578908086 719317255 969872015 339191452 817650503 389575326 442578483 369490513 423554376 972118794 975070147 411861572 998175322 140158436 628989195 708341943 728245720 210552061 348329881 973567737 991830516 118324664 250967157 870594365 911429991 145256917 810691449 124188514 590826989 866784098 924343827 744266885 880819147 62082007 897316285 352279652 686108926 566028766 707090715 157161959 576318444 817639858 900128705 719803556 988044369 251645691 803590473 906840133 966687985 607851752 982915696 494108833 618062726 749576522 810637045 344511522 934702892 230591072 944680102 128981062 654294558 785826379 787398227 383830914 551479278 788146202 856438850 715382729 914796560 653678382 814509846 217676234 280673798 776291530 990653541 357501313 751453504 717949724 781908404 972020611 976691444 319109622 405694238 61562684 224690178 223989756 571709079 475781672 788318914 696561802 782575077 207858139 521538804 127321723 508016499 276620452 524868278 644927270 922542579 613260407 980908643 220798583 783262477 26689386 413515816 81410371 531587120 91154108 159964053 592925547 660972514 35559219 789714566 412686751 843769876 174150754 774176534 803333973 942259088 39127289 122129247 200424729 448702983 813380030 903658646 359462959 767321250 597197252 744541302 330579623 709510491 194768205 975245079 783618859 922425091 359698842 879246154 576853000 896111375 162553161 572467421 749830510 758599703 74248457 895046870 435824155 597121224 449789381 574869945 60052124 62756287 469920448 810882968 465034000 901511429 821199906 960419741 473367883 808759733 426690484 920060620 739240136 751168827 988944462 997766842 190050231 974318074 362877678 821977708 216219682 942814212 470736339 952474318 704010545 905952556 537053305 834385111 994235422 995122814 950958061 984719585 89455139 545267749 945793877 954477621 279164331 831414252 491258974 565129532 657738733 758198535 258599633 740844967 178980992 223172291 361012984 515504357 555826600 989052924 75309482 923200806 473895290 680751202 153168011 660393910 125703722 873840217 721537110 731253184 941698530 977412343 547287119 665082529 634121608 722861751 927924373 957793617 713010489 741924929 394243969 435979913 764861126 822663327 150393480 752919276 696907456 894069574 580948858 776355390 678946891 776782005 791813056 859675732 203278703 532337908 983617011 989129617 724636379 842887696 681227020 956324526 198605783 586694319 787010853 909009560 247980825 577998169 622727141 739045795 806359364 981792432 319007677 327958985 656999879 889260537 395029510 832031810 583425426 763963694 917442509 987590058 386394365 593355366 70727663 776398503 30459749 102319971 61281175 471234533 317597009 716179243 605797171 947507418 794688624 850945509 431304991 777719776 311665809 833211788 525223981 679758741 498909144 897371584 827036122 960992268 515398180 594971481 426876028 771486782 103897101 524291771 299780944 510174483 762329261 919040265 245886932 862034961 167686738 597079784 594155684 779114110 474098500 760596992 480518967 997311336 778566047 784904255 636938953 659546864 678440640 724912253 554925931 693161430 443649123 832260096 390630257 546584137 546293354 880071519 174976107 738051174 91830741 579635965 760694489 912525489 326295334 607571408 331536227 474490186 472588947 475497115 813212844 886391564 697644151 864033699 299867631 454329751 926510873 989134187 598260212 640618685 741794297 835408978 735057995 758331004 723828364 911242626 212834415 469694803 506081894 917041158 526074118 789450303 508444684 734324212 214317623 268564447 269329768 308693847 902702098 981287794 158403483 189693602 258108694 349151181 304355484 363431728 338611635 998025760 546251408 652817991 64789957 235400287 468420924 919254920 715242683 895774552 943481552 998911018 555799654 878088043 844753780 924600216 953585097 956904031 907733382 954810322 554171873 948571246 694752189 934159545 874045036 942010851 419006967 909738027 24495118 960791042 994679269 995595567 754036795 903176420 930652695 963051495 968941314 986867209 977530577 991341964 304159402 620380761 350908195 993146812 133842375 710621583 598966682 656197949 287139522 713775674 881962599 889467201 41140975 700837233 711377119 825401998 877340757 926582700 979310569 995870521 171029179 359983536 149735965 777345576 9204416 913930229 291703981 317848415 662602759 707686038 36777627 627460574 656584796 743905235 902000738 990830188 115646127 374434768 428292805 692274827 828243853 976470601 538797984 877279755 194936891 570158697 507322037 953653724 802016677 812404822 220064999 384316185 650944640 678885034 784699768 903915645 790415996 800818870 211547434 324610569 988605854 995353359 620823124 973452395 285115939 571613583 202594029 468863684 504926002 858970876 114198034 435889796 271024694 711889287 804472184 894577165 175755853 268054984 667255484 676352217 600695231 611326785 792326546 988994288 76066158 855495766 333398631 774842235 946663867 980246172 385046319 515667189 962843075 969920417 503203897 635359493 994858253 996044256 756079789 816632039 990964865 998801730 966133382 989870604 135621321 612777165 779062601 913404280 379804592 537599169 847386391 897571518 14029975 774502411 278352755 375285343 701939336 740679116 435571117 947220503 501043635 856972574 442750611 917133841 113070994 742299465 474139008 538813332 593148063 597483585 293449816 895226812 737453890 746155911 765555469 911063087 900182926 958201972 503314853 692151004 565975615 566729444 919825907 930502389 817582735 964788036 290140676 624969037 64050267 622190962 386789214 536063848 159459685 878601817 850819867 966569611 127177915 163633278 613731941 753263792 479190276 802667824 676397392 860214943 952679859 965271810 561321265 839350201 296934704 602864967 587169709 798447370 304449572 418675807 806697264 966761949 133607750 603203050 793228872 894134883 733647323 883122648 142841893 611792811 612458515 776988871 675587540 888748444 285206933 365606220 271824100 605624859 88278760 192932794 191211540 945557887 104175967 277541777 921968320 934598253 269917226 310432689 304763997 952342968 292119447 477095656 767671660 894029188 630114785 652836464 901408726 931883420 574027311 785994018 281287795 757033803 160627306 778441667 205362692 897751927 478257244 762824483 305804890 975241381 264697098 418877328 747128247 967240241 483132019 937763819 203126406 474368559 488532458 646857065 344766745 795765901 775529781 840946297 635610204 974693570 358630454 673557726 429710025 749639590 636883570 950786673 170903232 776863113 100543827 578537912 387277158 401132048 870734548 948753891 258200726 500097702 980636715 988825888 390287794 951350190 991021867 994131696 954016041 962815544 866551761 886621382 203396779 683081764 545010845 712595805 202590366 815011427 804200462 923744775 321228960 748873584 944323015 998493621 125057245 487190731 14460490 867048197 967789870 979060200 659690607 990065586 865342344 917282300 999828422 999907504 267792324 324806405 928514549 978942831 411730026 471657879 873649643 921930399 242956736 387425846 21315145 455226280 704042481 913548264 228740721 507509613 856351374 920340976 976768282 978988168 368469683 575950691 838913656 893444438 5928595 384603799 930510833 941727286 944338338 966972116 577115291 641919844 365847036 767280124 17036874 197935735 481132484 889898877 435772142 749196106 229136810 625211039 512019601 655596453 374644425 575015818 4753876 123259246 130656198 622351927 510141356 813575176 116582039 998860437 4854031 39003585 269793387 917889784 883173532 948628130 446926659 835567148 639568133 939151400 72567351 195860227 443187357 839921922 799269178 828766904 284428802 922814347 512341927 889461373 408130016 516602726 492433693 520651188 160466047 522141201 115509530 468176308 471939570 538671893 969202437 996187489 187043637 755525877 446388534 692360121 201084949 357555981 767798852 958093271 655533311 835346147 336545563 901702015 225844106 805507473 972051669 975822067 428642756 931255006 276357752 645130732 453820473 508571983 508456580 860378408 422773407 564411535 779048392 918782666 782918667 898514120 575944193 922971993 949379280 954812983 221643299 953751566 112612177 248993527 145998001 895193575 97406229 731717277 313160640 710520564 528375188 945707137 162620145 364717835 204890755 261145347 655422306 864454575 914395396 940975355 872220452 930030160 377046146 754975601 336410718 521952843 658418696 822820776 892389493 951193136 247926855 629863158 238971247 684162536 800079826 948624417 471054993 788711422 434000819 810074027 600022626 951229121 597024765 857059490 287678423 427394882 660930906 811870282 232818723 276617768 675119447 744040834 511235038 972597453 183617011 878867758 240270669 647513633 850523653 993635295 625376393 834035594 474344391 703587100 835376244 862006603 444200057 717766192 107101798 823124245 359637402 419807887 529387483 855178507 878136884 997040004 8228827 997129396 762116740 794310432 829684319 878842234 26530688 679674083 253099627 884286783 538649998 795562943 316276941 555083634 916174296 950281194 331265880 721555164 760711156 895713176 252507443 830546845 478339590 951972727 788108845 826639532 920432907 990152068 616232877 656730401 334677883 606441117 265633529 380109088 758363870 955471382 87078878 355149673 923077404 942324533 595148007 747871955 160240070 353423005 195421576 451483909 224692767 616078904 477272005 960821580 344824893 358043263 51331258 499079536 14150300 688027765 175006944 302444659 211476502 546626562 813371872 956236666 868152795 986634069 932462078 980261979 362159797 660247828 796944235 882836153 904583571 949271172 189364177 392789453 223334194 718307839 637551690 738780428 352648885 358403792 616626435 981053007 243600148 323203345 132328975 752472495 782450784 924559117 996977802 999008210 933591340 985079467 843705944 921775216 965055622 981834180 56037593 561615827 449475691 876526632 963024310 990537922 910127206 954586590 417843552 805275931 698096993 972248716 579864598 799195423 858329602 959512460 317484813 586804234 281168789 591384412 184996322 484713854 939356900 954492285 608775714 830679741 418026159 940528228 546673249 731010241 265771623 592887066 840611125 884246433 800963645 922323357 869940598 898599394 24228888 138371543 972435148 982183734 982297490 994102735 742359943 836813182 837244282 927508037 179986000 509978172 78535719 782321200 854002576 857076588 267235220 281748767 553214685 921161687 626869107 699062810 277956964 330999558 565987365 642653758 645767115 786105515 212588966 536512144 464162304 777540523 568684345 888523662 884768566 926132084 810382766 865792077 489488081 728543063 128305652 608465485 369089822 943230738 534415129 975431270 768784413 873061937 748416625 770419484 537236157 827622035 798516851 864495914 990426348 998696919 857512003 903656593 177807070 258339733 338747268 895211011 904648830 980531239 671903373 947749753 549599037 847537801 604380062 862334060 218900819 915601125 564156593 972465753 687395052 994817296 468642451 633012040 897502141 954919601 752463160 935088037 830898890 836467756 856734874 924128038 889209330 946920380 150580684 319742938 945309308 955934713 784229362 899315041 949634977 982374065 621603019 749072485 243254118 887413140 414869644 891260134 425126264 754486346 714116002 747382890 112427248 396039172 994640181 995601942 130252161 899897644 374203718 593136407 142245696 811922681 314232844 592423368 440138536 739647356 432477373 646178039 513333708 538700381 176178145 530491688 1607994 312539539 308632709 998299542 621864642 629373496 880246788 900382259 167157051 529660908 112076367 301302061 574609597 808025593 128432681 519647514 248442802 389139848 430460948 649703063 329387059 768569638 166756257 187672439 753835896 922897019 352373665 418261905 536393946 697772776 611701128 692153621 921306551 971625489 512723938 841413832 612960105 796499432 977155353 982247525 911971241 912811052 811906877 939430241 185188685 895452796 758144098 862368134 33465825 940792788 865196493 885585468 667689975 995258119 936107338 972073734 389623712 459416385 977301164 979277441 328151188 647178620 652078606 985474703 69425272 742536959 101554739 814834061 847300750 935371906 368880482 782405902 470804211 603573649 207758572 810357255 826433566 837518203 59056379 432162899 671367852 837159209 896095071 905045671 375781493 446555520 649541950 838360393 607269500 773991839 52196836 196390712 470247894 941072166 715261708 774204560 543843327 710403038 969820198 997463047 266280839 668776366 967424230 999033445 15543986 139589730 398797411 416829215 677415887 960952427 704480890 955893591 540435895 865524674 411256436 889631407 521701812 524591266 918196890 955908537 777532736 861032324 33112810 246300321 571441216 877052805 376600714 741714298 626122116 954410382 104124191 262218714 419891591 765999848 790323289 973544264 458910197 833218596 866902686 873325817 499067177 920824240 245609206 849261035 304946453 603362262 656622626 786114650 896700748 964564598 321012285 423020544 524180476 770006096 221025361 425695302 192354067 662170838 649047095 887842484 356941277 642465415 869531437 870301087 153168042 580977648 886819968 954482843 416927676 423902871 594477036 967727573 507929441 788594021 446631956 632743638 494935767 648224173 203129550 227944510 397033668 844927959 821417252 904339120 379952674 505118721 398488705 486091393 230850896 618769132 765487501 981452695 162056738 482532516 971501994 987360801 723808235 798910292 981797753 983248752 295807176 584803073 900907744 908770682 385055988 908771309 518192114 959267004 668779547 764458542 293754627 487169902 904598658 996659816 611430282 912839715 252499646 844813413 236519510 435626197 648333020 829653313 494741504 556284013 235972514 547940831 111812611 627293790 342983364 921992728 849025732 967285821 131402915 414212485 683827209 961509123 141542596 936091955 811073016 817739443 497995148 593122277 391554673 831218893 147991877 603700882 351003099 843223253 731558789 988093437 665520121 936849490 371241261 567959097 897210258 928030237 645335554 877614094 808755369 812825834 764304785 854641626 748322895 872402654 229331717 896174785 754596844 856412925 994800916 997565273 31550014 285550733 475466563 495810795 150880316 640397663 687012178 797204344 570543675 899874033 152875193 248818612 912151866 999674620 551026621 921805225 307936400 309080198 920855301 967789044 719065560 721345416 587305053 881740700 538700957 869756284 841776688 948191878 642568790 872603402 126644739 744211502 328242063 957216138 292334451 462805354 442162279 660267354 30395394 327726155 688726688 735322462 320854981 852146436 897147049 953082124 325882019 883507814 626746315 774183103 827791561 966121296 308546548 777272148 473153184 898803440 532354607 909557818 827245539 889815390 758649494 804312283 525314347 584129243 944517624 945590889 730138169 805410537 308752038 467058709 686626455 984441076 214583055 692108713 80789744 284754001 123709700 710197087 518094852 594869879 714077118 925327344 706861902 771496688 865610767 969167300 902363335 935131991 51338281 745803198 219324552 510678455 186318061 257663485 356849984 733569648 853133639 897078033 411040828 866202979 656562577 810386295 504717786 922047577 769483633 863004539 542460998 869332766 750934734 982643844 641654563 725470743 810221670 832545742 477912 487353571 855981400 923570951 837955135 920111002 106411535 215769965 837871427 902403638 213650789 357585376 320183079 511464288 776727019 888535040 788761415 821051555 533770203 857371555 456952289 956956741 817298066 842997523 503752308 714459681 343689482 714514472 140986448 740840760 483751505 775884631 527965093 963931828 673035763 738533279 568174487 819121740 763360732 931291831 803821141 929123506 181108323 515099690 755111936 940046892 291235859 985725921 513568173 684426369 363163989 478786459 496917664 915095513 864190498 990655677 919394349 986774962 39837408 213900212 649258945 776886009 763875371 956977542 215154630 859045785 125985689 586591097 393930942 619971916 664149863 921853849 542204541 775410887 442453180 978200540 223657224 303175587 376320324 807027387 538039580 629316583 542825693 843449973 613925720 763213171 371314367 914858736 359688631 519557454 130707394 237580659 270802474 621465964 27915960 96760733 560470655 566763728 164078171 314102042 665408541 816590994 857486880 889510769 33189524 182490797 444931981 883692669 172526111 818287445 914229090 989705490 800431417 829408034 217518170 664866475 816688835 868798420 406579924 594091248 554225993 809327494 77501086 545004742 552470679 737862092 413042306 738070804 796636308 819283974 945153621 978521366 10189537 516266077 666182863 781499827 344757283 982101064 904822166 970442034 583748523 676743293 827912349 867273692 892349774 930589607 210315934 216331300 77437898 196557341 500833288 814996212 125236972 221212437 214402375 337760940 865542948 914682170 68543242 927986038 681810127 795167182 258133783 539892619 271420513 821694950 116396915 839049317 529364838 733809757 561475194 692131027 22510266 691430963 783643842 923172793 356373437 604766148 278145280 756879913 436276094 472917219 419517213 728491390 557617695 574687350 683898792 860765219 392462265 578752862 776427989 828683220 835863354 871530215 232987235 356400236 213991199 755602641 973070693 985004711 574608122 890392265 759822519 804053380 459871787 626619307 60309071 399276709 76776162 184227497 333326093 828754241 898531484 988438392 384971199 556173303 69129734 486593454 444247854 716378255 486010098 878195692 81965371 202569867 298863609 475282859 753863182 905027551 401387490 786069464 305199178 835671030 305851321 747061670 617008486 639175022 254094637 876936165 499618209 658748408 297066777 647416684 200989100 512398563 636205949 957149771 575412278 589036057 877255133 917325113 969226078 971584553 726762782 991642334 514798821 733829583 695805128 752654465 340635633 437974227 931736347 958329558 319952459 498925567 508049653 798720552 943871937 960740671 506746093 651663013 605764626 679357461 611816946 770844986 773891637 876766144 385656762 590287998 99350685 904220137 766029314 977588462 179322367 390420011 631275077 866784057 879043854 988930997 236465786 869067346 118354394 179906286 269747524 654818689 541017008 829266400 237454657 308480947 709463972 805034177 421839037 922076060 650700320 663961863 245223262 399483121 603553656 748638690 660319981 804123806 561212010 787236694 845887262 888991696 555707688 921510508 326389908 665870175 515605386 578403860 532619843 942684603 694215115 763531893 793666691 881544790 349428299 645300784 78502757 942565587 4424130 674186966 442311635 828046783 338681609 691978304 963700532 999459934 736347661 912317636 849560544 854026409 125260722 312555236 337794390 708970853 833031724 862707632 993212324 999429735 39023579 538517372 657226514 867679071 837399691 874250104 631557365 831136448 643934085 816874748 767838335 908530630 696440579 792188711 166148854 278819797 391241545 864426633 810229387 818926288 119091298 153812207 50916780 908553585 264950924 437474315 837436736 923463201 906448589 962383710 685151933 787249731 775833391 849030281 260901581 592222494 546420819 775505208 603145106 851365733 389191243 893662640 778683957 980312540 722508390 815160617 584377892 764704526 653235071 922184886 328272404 668701708 730107079 885439714 312071532 727761206 149261220 645028120 209643638 265353320 474001200 789830310 584104738 915861179 623279903 944433040 767061063 768183032 33235004 309672924 632304691 812044630 880284039 918327695 403269358 491886174 995998319 996647981 908884579 965449197 163129053 685643320 719967162 829110518 183262530 951897315 220409668 902793278 424129195 613440097 477799364 626828608 662506860 895791907 239588499 307468793 910221503 963959220 455937363 683200439 831633677 924567419 694272367 833314059 268300926 699287322 71731471 524721324 68575486 101481746 534494632 827078768 894364341 916012248 396017280 881916221 720578498 966736449 7038940 376631252 555403256 624122681 123823492 389195203 848178453 897743565 60753322 165503037 841560391 976368462 150104546 972061869 603282793 941087314 24309393 332706635 391773989 804590956 186479995 804112562 227355320 421503556 546045187 757056225 12390162 663576517 116878521 435858004 177538157 347691142 439970651 853380137 559570422 895255821 108107235 734657473 109907035 365240813 754323076 965884274 276500730 775965699 385603207 596800084 213785499 427755727 221295337 705588652 471297911 748986757 700922123 851236574 415731219 707733868 460056692 574254168 150591766 269986527 486742171 592321288 441474975 806886874 319334725 549311138 172223523 833613357 278857674 703378459 822808064 866028803 430642169 990252259 955967739 961023570 359694619 479388919 233455199 843354492 345718258 908179789 817135161 937998231 666406468 776135626 908256934 994257461 675213260 927794672 520785913 894994173 597093646 599357942 572800574 864762827 21513529 480153973 261602378 817892296 622830301 855763232 963211572 973917172 942216696 985935038 666919395 990699335 686012793 787883507 695170193 905549354 790244117 813439076 860549062 862041442 87229113 731086468 129575976 919978073 67503348 148298587 77511350 362167002 264915901 605633299 890506877 974178138 554268479 803747546 390385041 484031619 501511727 826323677 203513555 698258618 526731798 911731463 733716499 771969956 217447149 748731136 456251256 627461487 611576573 792908979 541743897 685175823 174744975 581182402 780255249 784944588 90269442 914933055 458556943 596679431 172014284 804357629 64615193 459509216 250742369 942430728 493524146 964771164 123234145 901615706 765964950 871540679 850642682 920120473 316822213 467615805 251813510 326532913 842245377 907731244 974363299 979719156 930922603 965288986 405346673 667668082 905576489 994053944 501466688 926803328 107104976 447734586 539974454 993621669 860129768 940809945 315263967 778344119 783976026 944566718 312793579 768890846 850772729 902116285 536005988 791884902 831533826 963995772 407155119 409107081 148985455 280933256 449903833 871006858 112680565 207096298 227181837 738745448 712473293 917147116 571380693 863175834 62616111 819577131 604444715 924381503 879847973 995173458 674073208 847809961 784902480 955282557 5465609 681514652 475747168 796071231 464175476 765285729 738733167 961671886 699098478 900219580 274142863 611955959 256690528 523080037 336150234 706259839 346432499 911402514 835351474 923770747 367950227 960879383 751863857 848968856 218188347 314168126 287348120 997870473 254759840 672718445 451904422 506654760 994382351 996121015 324152843 557771755 253740398 629578857 571727542 628665403 353262133 970616843 54105467 319338487 323017050 865563231 824221334 835781139 789083363 876751111 131150324 169273374 933698666 935924290 333755262 595843607 88267035 628153086 574279191 880849165 673690083 743946700 903118551 948829149 479664035 942921459 359710049 497943345 469580814 861916451 704681387 778235434 169002466 203993643 596727498 752968488 520437824 772135426 862851002 874991768 850523957 927433564 779176694 853052949 762771855 796813159 726610606 927419583 115851762 280687432 925398614 991748667 255649088 546319796 389798006 931187654 646745791 649743887 478722020 774448083 235966245 541441962 46737573 598870123 115902698 668819957 688296979 725858455 775533914 865206674 391685371 697381921 3712714 56523822 115927295 894862498 527386607 548844007 486150076 978110307 68105305 595250768 563276917 815028309 427203459 937735203 644647848 750131868 123540453 925278172 183468923 515559847 536315095 817185408 223333752 642972480 220256501 570333741 404498305 796679985 986090130 994985261 799457010 913868357 573864522 838089523 554254156 703021680 781895651 998731313 619465613 780237938 283474498 452911027 518783283 853022281 686570538 763735981 89276002 803201744 458095432 786941010 632106281 840669498 321485392 560187891 107878220 576764501 447479635 570249468 917922970 957865964 453773326 871414812 925056482 977278144 756213618 851791125 136552977 657254701 750197503 966444584 971612310 998667287 358513614 523221786 209888033 401837413 165870202 313578077 534840899 717622327 719305634 858934572 483517868 967314346 227964900 590716994 869740407 880762033 860662068 875670038 302219797 684817801 589488236 830185509 276517941 293786331 619123050 697069428 573344096 660852342 945466893 954632456 873215785 921384233 798330880 909369731 569237850 863373730 266835516 385692865 372634099 648077017 334936784 936793483 503053308 820001435 636418728 659394862 560946393 838589175 718712447 849440342 854656204 912405209 400177397 692602779 677418016 915329602 496147562 664288398 305875901 795046431 633542807 638937791 86740277 231709699 472293894 591964424 340554435 836273932 62024164 351125998 456791796 817912832 1142276 35253232 232058123 797194687 133510478 638364158 401205427 768250272 430142957 749834295 682757226 999612505 90313573 400031271 76081665 288405720 716802818 964795338 203850052 629914440 16833889 314079066 562495235 697093406 817096914 888914428 406559516 494767632 352730166 544207356 553199625 701066665 962565030 993038317 585379218 926322595 816395915 887820091 389907870 635464076 337535865 477804411 626807248 968202828 31269157 858328278 590763648 803081311 774357452 913078946 307551668 411015132 485095301 714998447 804562233 979421559 80699404 889044390 416704862 848928189 961704145 972007079 969196380 982117473 724755478 933374616 910241103 975733280 581618186 651832914 62664476 423303519 197136081 481326515 537920351 852892355 558634722 827081808 516028535 819050435 974262074 985808395 445094512 561219825 250194898 894963453 102373590 632258156 333910936 401408599 197604866 855325323 351108709 956666090 848042476 904969367 498803765 796371950 190059340 991442994 510172069 664954303 718939214 996070147 106440204 121091715 106749538 118561302 850210317 851986009 981835046 985213190 69726141 606495227 764057031 964834844 258768464 658744532 751910342 780079310 167137629 805843423 773020434 865859178 915862537 986092081 893874088 985798030 785342972 987762962 668884491 877451812 857602744 882817605 418775506 994948465 785697113 865856117 996252000 999894122 873673243 956852254 521224975 532940692 532191861 784352748 98893074 728998646 373011408 739171657 398814801 473512112 977813929 983915842 146314821 903271787 391944605 512593226 124060349 870166500 499032110 676797786 521345826 641676299 341131689 975206644 832733108 930041125 580987848 790248725 882443380 887189551 120365065 919629875 240390893 679102376 255904669 763750717 65783482 617226843 914349972 953001376 879636829 895215814 110886402 773903254 379171766 988221959 92484454 238564079 113825299 941217568 812494758 825223938 567387096 778104595 762589359 799629738 927765220 950314424 751958103 937437392 681161465 879267367 903959457 916332852 73980298 825609388 133117302 679950140 538954944 564055695 630951 42604637 980162304 984894212 703663593 753016477 415819405 609887339 97068988 895391622 431356102 763634472 796863866 964903255 485560783 717690606 767209725 839891952 79869403 297261974 291718470 979631564 134830811 821527142 650829432 731579009 282916566 895813489 177130269 883196237 4200358 243085821 414702298 797813521 671648827 824531232 371700667 524251503 670891107 902266763 270642653 487896054 643053018 884763765 729850223 997662343 550255985 612869372 245378255 391370651 626114287 889484415 792394776 941226784 559238677 590902827 339546318 593068142 324323631 923953100 714020599 809135220 545968635 730906494 108519573 901243621 126907106 666304767 848888844 958043038 693096463 863235994 673367930 823041383 608542816 897063299 324197546 512226012 906671100 933627580 607368229 670214447 904077629 924245573 597363107 641905512 388073912 628281341 982691141 990661031 827052614 952844833 107278666 192839529 989239971 993370915 142123546 951078325 281441521 315554855 40766264 401680443 397335144 874780382 661974656 757626207 193113937 819122032 943285997 999069132 506595014 879022322 739314095 978443987 71161640 733541520 260658751 684017703 370138177 740238136 57190763 527323916 98659274 561632933 656181732 957818644 73384450 476583090 987471942 993342874 65012968 655429812 240314748 903073053 246543199 848134921 886854091 954340999 439251759 748426305 175584247 436320134 519602182 978882021 591067031 709967608 904630504 964078348 638310374 826791006 772882979 835073233 638120806 743380237 761836785 951773759 572213965 756240003 400716706 501986997 841592453 898769580 755771674 820103215 364911134 915008984 634879190 944022693 670351945 996168942 964606783 972916698 306989904 648710137 550225452 642195055 367194944 942971764 170624760 887415548 309352714 954672975 713703934 890092103 456362272 686353052 420398885 508115134 511618070 584223046 744728533 822692080 557249691 713307558 844595914 919585041 559245226 662278811 208117607 884441008 458710571 884906520 568104432 755549705 658887316 963495727 934342083 948451489 119917365 470186385 726246873 990534713 25634798 277344962 577677605 990029654 260676988 381793165 362879945 460589212 393626609 956332965 790195079 947020417 217048025 676250158 178066645 726256551 198772243 817378304 829612167 861783227 364458662 525553813 60012135 931235482 833749617 884477373 552907795 749130818 776705250 861675851 619220051 940338973 958281873 993715857 6847789 350167926 193289281 968719452 101062789 556108602 98292480 218586000 719748619 786687419 582889949 985086842 203785487 525682656 99944966 292507078 928925903 962983249 288591159 650786486 2181912 366420128 976641291 992962296 808032258 859049484 434466645 929619793 669916737 921968297 131096843 434073685 156630187 791759575 496384779 985571331 30360432 259022876 591274902 911876783 584659176 979902238 922955382 989406107 146293703 625826007 662496762 963857476 341823341 634118492 133219120 840557499 217829865 764356301 206682982 687050100 964947137 993312521 754586979 972577147 261618265 931128906 489912845 738560097 612426129 929191235 563113859 720628432 231603266 832760279 13253873 743899596 490902498 674764697 522035955 820663248 486558436 878029998 762772381 767180758 140091008 473558371 965344239 967239968 359775618 526211619 829318965 982993621 981444064 990708278 194084649 947216871 923905057 957111079 499813273 638797251 889390755 948314635 128727801 773283472 310470984 657173042 652785447 879187367 436063415 857356865 479800691 482003799 200966516 317669302 386138947 886304704 455182826 767447956 23412580 87117024 526675874 929212594 763460999 933027481 327918395 763910124 318367020 406475184 776019915 995925753 820045929 961230145 654681175 775236147 979854389 990215204 175712022 733299137 556593788 844199940 48652686 457605408 215590156 803756864 424002780 816644858 501660365 637266100 77969341 249666868 876779571 980728685 685314105 957126514 861982146 983532024 940281543 993557306 695096568 733022244 275866867 362585268 843405264 860507087 933305984 951001650 700310282 873560617 627213036 732865138 133454895 969335483 452457438 993113918 214766631 851038100 647370630 963086141 855796566 998281042 273486092 470410300 341130536 732489525 396841516 397953745 309173681 833797850 214768674 738642558 809754073 943384882 245300699 638883283 672689832 819349382 449424462 772527568 660991036 895559867 158460525 502163633 789886808 901520923 953861033 966442914 229323037 367937520 175830475 524366589 796726567 901816981 774166269 797634029 443799989 575269572 763831706 772051487 59207126 624499089 624698150 805640843 772276986 778915488 507057390 669757525 189344626 974327050 751469073 934426542 954279231 958758410 632187650 994775338 415188165 653888612 398739218 639144842 933509553 974587584 81177403 939481511 784976238 941150878 473282022 554000770 261657465 714518866 137737226 793161795 847698155 988473873 806527312 874581305 764895715 877607778 824880806 957068668 668274805 969518100 256721271 865201840 690873522 739170482 419067 694776295 239220756 395536271 347888624 611230227 271912398 784747667 952604808 963144292 931092267 995643062 111217494 420687883 828828925 902882318 534417508 819084597 426959007 849086340 256009237 924860642 795804887 928675352 518149625 594986542 181547917 316212366 894967494 898127842 817690412 985175052 244251495 311758801 851785698 872175674 33122605 592078583 262784975 401943912 883174251 956389654 859434527 983360324 118086216 606798204 437917623 529814481 481964611 628454754 877893571 909549818 321333576 672329606 390228767 466625491 327355062 772939042 779691071 938280973 29557997 129019312 635371965 799278315 157578754 428638081 843431052 895582215 572559226 580320030 859459250 966124171 625345201 896284764 650733019 937133193 346585306 907668087 114702904 805227772 917542026 944355373 948874695 954746353 32498008 372576167 674935068 788723396 197207956 509112018 807785109 812742429 154436341 740668135 86155549 482745133 362996723 904745871 566584093 814656325 544680478 942724254 988895919 990495978 935342665 955413603 61967670 285919793 664677036 710303023 400513896 962879614 914279229 943719590 357356170 624286401 10089861 487901003 449858246 784991669 745957892 977849143 418515312 749515466 729673929 865849622 205329591 412419559 474212067 968242986 349481280 952751751 500025103 941382980 74814778 531664955 347378957 595433952 621716080 681339667 80427349 590655965 965551916 972524371 823616632 955799224 125830925 604812377 804308230 835153249 880757116 885607532 45895374 657037037 338837589 879754233 510857334 736655503 656958780 885071245 283881514 822908524 538720546 686887839 689707573 942752529 489312442 499603297 86994174 182081366 477862934 861304451 429250046 560720327 684812398 692741933 368044767 844442495 727687608 791791692 104997054 675457288 555743562 965286013 378495971 819702038 844482396 961558505 952054791 972055699 975762298 989322149 11367151 639379775 33140712 476508344 928465422 929030124 848330250 851999771 831631989 876524155 859005035 867672190 935767288 964449009 369369146 724199254 402380372 958394018 930186149 987456363 58753140 452940991 695420659 893361799 134631876 192213290 958064211 973882755 482063210 889520340 968559347 994798746 778702540 857660960 665174136 729226626 233158941 275237865 407087319 893636610 58736133 936989201 532677141 807174885 477099159 821708957 579582564 726132221 958014663 985412424 272501229 716949113 177838151 595085171 304151393 768275601 909332329 996711550 603197333 636218408 928452095 959765351 193684238 221083134 516715647 606549549 458505729 816125199 89103416 309209669 512066332 587579305 681052714 694503433 164310313 407182566 64773608 378232772 273732869 372746914 535533944 548441848 435384860 975259178 583251878 845672306 943241767 950931002 45532171 273848536 345527470 729956977 116685203 419171672 400841965 565055268 371551133 525580137 941901783 979798593 249078154 689546958 610152491 770726603 168373126 328058249 210871025 450982762 367471081 790045192 483353070 566537911 467891038 670982882 393113463 815267094 580374844 600479768 977624920 994267739 620817451 663046052 72065241 387657822 446868911 458363098 323858191 997989760 518697357 845207790 811372670 826043177 617219809 874315977 194855619 964264057 43898249 848464212 721553545 925169586 561018434 595927864 445030320 495259560 988338897 993672453 424853830 570729235 972059373 976268014 890408633 914507932 693099561 991958825 263070933 330597844 768012210 817066140 724841509 982153922 522073098 998959669 753901553 997222246 42864978 233632893 36917329 808386494 809888777 812419123 643590151 801990547 101722268 317882880 754996217 931795239 745701297 790728739 694654538 992227534 541342102 865468058 465321837 885963963 980018884 991792585 187402437 720259920 604599516 753931451 765171116 959777287 26062485 894894997 861760995 907666057 434047337 983350063 663135593 673519245 101469178 625676619 314812908 439844059 470252329 623374275 149609707 745743741 604439838 955993934 98146312 121375898 296594253 771295612 10248434 395232507 929469421 993167051 68367106 296217251 518136654 761691072 823376624 838096718 92069168 498627841 358326742 410986255 424583514 459431089 991383528 996108421 601714795 739673793 993379318 995311770 117831676 468937131 606891366 698872275 718169734 774865674 422262348 840437290 483547769 741314405 997036089 999618933 248027178 901448803 220880365 943928890 146506013 931576606 271803414 667119042 567474148 752293829 882339438 998758505 707869473 839340899 434968470 693611313 414542610 585853857 509773204 870327747 285450689 513642848 846406660 959946082 380220889 494984432 953110099 962642539 391040495 618375958 894287200 906380757 81839014 184842084 163014984 447489400 620930488 639471560 496943373 973092151 436901700 450008121 119829910 311169027 682502218 787220233 10121667 702388687 143463702 701632795 151493280 898151015 328730915 629104536 129870295 363590068 9153117 385760542 23143346 392704705 290365329 668655701 639907184 725505475 253059012 640090744 724962293 948218368 508607775 898184729 983488121 988749614 63187945 830270573 422002729 528783793 432197456 989791177 282668869 803000176 556238536 912112618 992320211 997082119 174344036 213670979 669756904 830017178 234126665 723449808 932256580 932471803 934598804 938786317 82697436 472582692 241389145 455233793 966791144 968125348 48013590 839218050 646790640 905083104 172362017 511348963 719404450 900473069 545890097 775468739 799422979 984289209 406514222 922706139 274830680 562792321 392076010 848375003 262263137 656939281 671967678 716412156 622571073 841311914 319531550 908124840 807086240 945519944 575418605 663878329 139281548 526261915 51603358 749810659 370407992 531177770 180783373 911125354 451090140 577755451 645123812 712241791 93072272 112443149 52108690 868821930 98855032 256659405 732542023 906690877 353321276 595314911 124863653 622686431 730340484 930872811 758350644 897036141 473335229 582577451 339550769 577647837 485015707 595631902 951616386 974246853 638769132 656546749 628545970 940758023 467178658 844564498 755837203 964792805 331996054 776957778 890900641 959279567 123035866 742775106 128674311 724823751 868509236 937882024 626757259 977953779 298235158 364752901 177001780 930497685 648918741 857694656 624717129 738515805 143862242 916143537 830388768 907258232 311573738 754356374 862761427 948076747 943700270 989306959 140514279 776999197 935412854 973986241 362503865 983435559 780674398 808931256 146049734 758157647 772924295 775935709 191797882 535126118 873517395 967643421 483902449 592191197 733071917 990657902 803908327 890982641 711655877 773551215 620075496 652623844 98818605 173334085 225904814 656524641 564886795 750125313 201931702 809239900 221580567 886960878 392319586 484567559 840595144 842081781 550518808 822582668 21470528 612325910 77885185 584118747 712777633 806344998 546006073 932249093 597998351 861488717 133047009 500343283 715005230 993279342 297217196 306135063 204104869 237929698 846367038 919462370 160827209 900161535 869896713 958009531 111529036 189096469 208669695 817932421 120318288 161316681 656211599 936753682 483174136 712610393 855844058 905844487 350140488 691836257 216256729 824255960 175299153 404381614 166285372 188926386 466976133 527967545 364650985 894061221 888542589 975701106 605144834 856172472 77639460 589178868 358551012 568492830 403591690 972526249 592224501 655007337 454273454 817894530 565030281 762243404 85832461 644988467 959362387 999651535 415156221 914280290 348570045 788106748 98090537 525185902 142186888 153672183 431599804 687635896 739062964 772985194 13092520 166699719 694396214 742184596 78828075 260181440 883073253 968162316 88800937 678375669 849003144 927229131 172762547 311713118 528323777 576181376 922466188 925011058 69812656 948009765 459601224 550579767 416725397 644448174 242454218 591781743 24295563 857115239 779309714 943406579 604551339 649914887 87112590 91146984 52191936 580732185 393026653 564387881 975177480 985743350 737513900 911534867 15407516 821605598 838813014 840489096 10109726 461520351 659476591 809079636 416405043 842638937 614645081 671680049 29920685 671418896 482841692 926589675 339171568 771909030 1802676 879999162 66458965 308646248 991811671 992025210 658665452 733260764 979868076 982736745 514938815 589001390 744988087 825752069 655015463 926421799 391930435 735503438 11820848 317232353 952620189 973266523 771033585 792982520 823212484 983180619 716285330 989476676 332207947 877973456 338187093 798201404 8573425 849984704 577087955 833260759 632962275 914818449 820297449 959367826 426709135 812207175 208353831 739065973 109392185 862791111 731608235 936108865 157467449 820354994 58442831 701712827 560987111 681785491 449867008 487215681 984869565 985551128 341341011 970682238 285431369 670057781 354657947 995313227 663315818 766088568 98703081 188123070 507979086 795072694 47578344 744847860 219481850 945522642 583868921 841296904 855759502 888587910 43279240 409933499 911055252 917680950 58328119 240712077 209355812 606245383 608861954 722089341 913509378 932725836 925822605 994729426 549237743 895813656 843927006 986459094 928707359 981396301 669834439 952225037 945827111 978241488 338123892 767909552 306657538 640563667 695451672 954433270 351502945 469243733 182827832 876398803 243825242 327878883 251659707 614012610 24850022 525411568 73638429 401790993 284834554 295884227 955964505 989696346 655927311 976693841 364116006 404342643 113143899 350434027 451129091 568965944 269531101 363522747 713268729 793662643 238881228 605004947 347959045 646249782 602581717 626786816 690095539 727361217 800800375 809553698 352030406 368869762 871822037 978363261 803421718 977569669 963671327 971506587 916414261 945697536 449130490 730515180 875043707 916278936 319625293 879418298 824166405 842583617 41507390 603111636 64829101 105410504 679938481 752461518 986403837 999340296 245707266 530974884 299830131 454548870 677821131 704516896 516465361 568640861 912040595 931759472 390664527 873564339 281105034 323772254 19817224 296122410 877935730 881964436 65548531 384442474 281817263 619924219 796510465 970148653 879032472 954816502 364632759 717146749 671147432 768639408 453017213 697393394 748401140 886273132 740619562 750684807 562658151 970200170 458236155 862227478 482990143 581086922 214912518 295226649 339522162 342634232 69387838 165062079 162019308 716566364 859398735 995176323 972635537 978952693 92061188 623967751 793490225 905350192 845924584 983396829 584560191 927122057 756380245 873270308 900811557 904878174 855181259 950802319 410940452 758563513 653544847 917239278 305758440 499208351 257031686 831545316 627976771 710207558 211302814 672014674 541422166 877752274 283279704 400529770 503132590 846907574 590457716 817517433 854147049 959297170 18228222 272186701 739017207 909484644 912402208 994421873 960736350 983477187 52987452 505364716 425269355 447967908 126987303 225038552 537649767 710329951 902779095 908416933 733708875 768702255 697102076 988742268 370268034 983952310 824860165 833102521 57428040 329572941 120475109 491779544 620425603 703232333 646678111 972850799 100895297 262099115 565104686 770339609 176881740 651663261 74087244 185744508 249545152 573982790 479528964 640553100 979224581 980832419 864343709 967657359 325376532 502769260 785080929 897092102 973756260 987003634 105583285 538689536 234632651 777633987 661239742 900494549 626795741 712902109 260238423 478810454 340728215 483658086 279778971 763822311 843288015 875506081 636084780 755131739 407182759 691217815 410693273 997197649 330561562 460529349 19778008 698274651 246413396 564776026 724062009 763343297 465091764 940627829 377678467 417797637 840388821 946386400 274445968 926132465 526168357 934424259 348618139 544906693 491413337 758745504 558450863 559070200 344115215 510844422 3558849 806690421 769009427 961898953 412039100 481175490 542136553 895890587 233727712 334378337 124953966 311871808 609051529 903255747 554305502 932628878 605727487 924414258 903046656 921357132 818625551 913580276 43552551 230679192 852207422 940008032 275219281 541774061 421800718 870378005 516661116 714390650 669226104 997480253 487736976 883016805 336186164 561584818 320568419 484918638 7865989 999807889 87914784 95512563 993725089 995262670 478541801 589460693 708805397 918538481 364356987 368377758 38755752 380171116 576992255 651941577 266539587 730626826 251285562 966691970 728429740 980165507 314288887 599527271 632530838 774303073 120652731 147357711 675940812 723221813 72564745 148440948 692072374 882014887 906230734 954259872 407617319 742297794 42835618 721828654 638557966 817242196 75131750 795684578 748850659 899438285 398492974 917988600 432199147 892324050 883008875 915023913 300471718 893214484 352779711 943361386 606918963 934000812 851770057 993321031 360464627 398186542 520500479 655843407 605339616 671412973 902567698 910181391 822825579 859028649 310354769 870784660 903624262 906478336 551460997 800413520 341135666 352755666 127559518 940815568 22724971 340778039 51798398 504468580 604345824 744798900 153809669 382722246 591235597 779217462 215279182 234950977 411334121 434919389 376213435 653709733 574748350 940091470 460947768 549716122 323603678 391739732 954565809 980157275 918036680 952712952 203384061 988635999 253578187 399421878 696578976 886300504 889112223 891004836 110368410 673194034 44574961 874994664 511825853 602427640 640933715 686077992 540793138 995984974 220434267 557921098 436058463 561701119 959691047 986350944 787829623 994182335 188150630 645769174 400754337 952019796 385525944 685960144 51580095 309306561 202913937 899767729 476462805 877319074 177681112 642901401 588485061 853035766 32671565 662384376 546784749 638501117 630141820 781038936 242034609 915685448 902811828 988033439 247637703 346599773 44823802 842914555 106751947 755789447 921340083 979330109 188374849 360440882 902108457 961623560 464818732 636593278 618872016 809478457 320478363 986160584 902420553 949260054 312604437 377118188 173350585 183266221 965115317 984610981 331646018 601330671 327522833 640783664 267803811 911754014 808942436 896790509 369877946 820314004 111163710 208556592 156290326 554796090 15750061 701496642 465230238 780658237 877820317 948958728 13260320 581391010 58451375 805389820 650659799 703334093 121937622 356469006 852669809 964227662 928389428 993696305 934403455 942349029 762336596 961278182 306785753 780747519 763858529 915477029 592511370 740978818 798382695 861337630 101591960 685524308 701144328 912855836 11294098 241289620 816481557 954980568 693179801 933306763 816424670 997595873 705641275 931038395 922266164 998695125 629369312 894154508 448334452 867763576 332656748 400917942 917850718 981829990 808065006 906257291 126924981 178398114 282472637 718091056 143841989 845624729 99176934 820836665 484093811 488271551 476419279 741773241 157931178 730405159 619296481 821818834 155681378 768288069 229673681 827661079 661673383 792584380 868401684 989196665 431951064 660062468 71279500 827456511 309326991 522068792 984034365 987167879 347369893 785677954 449653209 507641355 429126864 550942084 231443466 720978704 535496811 916329235 731371431 872297987 773270952 946759393 871235397 978471258 800956777 934745641 426438901 586732331 993345157 994734720 80066184 904835272 43638951 627704358 852651570 933170362 787025576 993895873 570037499 865482207 2841778 696716936 176329499 287983096 795883793 950718091 874321841 921624064 76073753 489794553 981865354 998650630 772083009 784787673 576073002 730335170 472082496 862862222 683012815 806002225 540519682 777857864 492738080 877730336 333141090 596321139 787788343 872178460 46709037 796230557 311333653 600129337 92805151 101967787 774956255 859634717 354469728 665368683 732272516 852428979 208699797 659274781 612719706 883679125 274001088 574414415 934500678 995865904 757725050 983958071 131981699 711221733 257158463 825404450 446167978 768322185 326149574 502489689 53108066 161972070 818120473 845240832 141843776 789455605 425129860 460156969 377370223 444219269 676453002 943836364 836460984 839869369 615549751 719291939 677298688 883760825 698432114 900838504 166741536 500222429 678630230 837937401 10776048 478966519 879341463 941647969 133987526 322230483 503928951 609699109 821736292 970250783 725100962 752091943 812815872 911802582 896166587 923536368 468206531 691765810 180058871 852578574 380224789 475532022 850674591 942055147 770189155 973701294 561236195 856233730 792052738 945613903 318006577 569079978 604259931 825556440 639683255 768623959 44380880 731125790 843174440 976249641 624273595 924838951 887860469 958716658 105293664 127000151 913690817 918492023 232442297 930678997 996352862 996967768 788411477 794185274 685548208 767240187 987396009 996943903 893638443 929136897 352094258 523508861 310232798 816099882 949316239 973211516 77351391 372605183 462065552 916769412 535065777 876048861 393802073 710570859 498292325 586512223 149392590 297351351 36771984 721535899 726363376 944696506 54581268 437186907 860816305 935320264 758871649 966493604 62610215 480552943 783074299 995188277 243190298 257607641 397096077 787727762 367768683 499109164 673936907 844990884 998505620 999427573 183452510 956535157 356122068 487850357 715772324 768720833 127682048 394119141 57057616 743658751 536240491 866498128 259673650 610606811 819541295 897228590 270262660 455720990 57717698 259005303 525606002 850801605 78037402 703217152 945084979 996223770 118917888 817167328 872331263 874495988 542814081 611369828 26770341 162012150 510786363 646569129 400877290 903090645 677779430 793589068 148645873 915728938 951665330 967764426 107399191 916124977 738750904 944316206 536674687 666723546 878386126 889008887 808710986 811201008 99415994 627662148 180968559 560638385 790990916 835280147 219971696 578435588 43128011 676596930 95045003 799227269 50468424 834033948 462079208 858995729 796679012 828780187 785125346 966078847 657216392 970775004 207443759 976201481 221195977 564296734 50644163 450735463 837547852 955063162 878614995 923924418 989832263 998390156 578274440 945972975 733009074 824909424 781626866 830198215 764662557 999408876 296198421 439426244 595075017 778961367 454457067 663008709 790955602 943142145 11598601 297585284 315403154 807345254 78403641 515396378 14260209 582171458 328759970 796798590 888636372 998900066 891568544 965549773 555610196 753117979 248968190 380675832 445322880 666808621 29162722 740467173 172265404 738045075 644917127 749562719 837510935 945297475 62665703 382266712 180309633 995008124 383606550 618830566 943795944 992985456 216075063 476638652 777173181 995566060 801614455 983838213 762004640 816238410 42701328 992905683 511760697 528361405 837277546 847674456 692581394 833383680 801289855 902563810 780143269 929136725 266045473 550384881 40921742 420543385 726542334 856839776 521845991 875024082 25762449 961585464 308586914 801089094 440956538 677005360 7752826 837864555 796297506 863350054 82735191 140586569 188265690 287992466 595907042 947571452 990811765 992401369 153336009 410708498 339546469 812778465 498168256 959173671 515059277 883250252 393754452 552196465 812053400 950890801 561458185 900874244 54486287 814525844 250913214 961232914 27962794 362316925 117248357 601015079 193689810 389959598 314661279 414853819 79447837 970944491 699343337 810211826 290444775 701725144 252011850 942632558 518546971 959923271 127723059 780571819 975960592 981493392 619379275 860479385 564059786 975809731 85430535 657341046 502921089 931068742 444995049 884740114 85681704 440386617 648446338 669604996 562482948 708012101 628867861 716521364 579107972 638321366 535299463 789649874 438506514 731522410 524723799 870696822 624687408 700552152 58995531 385734286 325050192 453510782 438587884 514093919 37732713 808436446 72539841 776319121 903839504 908855916 762014022 886781430 475902636 555248338 814938311 879571220 229979140 862654518 152807334 997926593 949039304 950343056 459789499 982256137 313865619 446817862 365016483 751208771 467958165 661952177 769614380 998090714 373036008 875244140 257605123 746905742 804838445 832303590 483898918 672638675 502236709 964333818 576568573 992956407 917690651 977064433 506124314 893606808 388232679 634656329 801159754 910741194 303053845 357577699 903958680 931607108 404522585 688430591 22380782 47677668 398254598 604720393 698290662 822120633 88404588 860493557 287324784 470306097 552826679 563524811 810903463 884900982 281024980 443193874 214727156 408783700 898988560 959600975 835914360 964975248 916656075 943621557 124674792 406748587 720527853 728966760 38624564 79037459 69825268 392066647 461348202 710637543 646467232 966234955 194785388 666081288 285304054 402233720 551213855 975668431 693044004 947563260 155545682 352027559 970913602 985069081 652205252 976702597 278036567 647768953 707066656 801031140 690784855 761145104 940174937 946467647 225679559 328127038 966483110 972118964 527861722 746996759 788352869 973442327 939993993 995531576 369956128 991252207 138928411 353459955 875746437 951097513 275142507 783140082 330818774 959960880 930283218 969369750 353621068 511083508 779355828 914238729 584391096 895002860 988998501 992106360 302912006 815209661 550220067 960934373 518492255 855933442 346316987 417789748 32914414 970141614 974692240 985833365 320273515 337128446 96165464 202245328 170477751 592721533 515657762 685868437 403715741 529745745 877231627 894686311 387986969 717842043 986110657 988046394 582026740 724239631 63108638 102779601 924534560 953068406 530135636 728419481 210368874 232336687 389247540 742848175 847050984 872694029 90476040 565339554 745923541 979876764 255033961 573252411 816027476 892625312 550233911 970332103 965080003 967231739 69749817 625393795 336779116 338419744 489402661 549639903 290743969 603915925 448487254 598498567 905601986 957388720 501879325 767511271 713477968 950042453 265661476 694217359 169644388 676579666 464747318 469405180 66790130 133277359 503781565 847006630 860819867 959016972 25607493 661774450 944311800 978608883 614210053 993475890 141336357 725211913 586584115 846349408 659352561 940483973 668983087 706295724 729279603 930632444 733770198 881742198 253848535 940404837 164191234 718042321 446903057 795604238 874208837 920282150 723191950 772533109 999763094 999818634 35319071 382903677 182372678 932346434 887115013 914384389 699929359 756393309 755586081 939229991 553997407 948766802 773850406 940277206 968294430 987761263 719466118 917078724 566283173 980176439 199592560 867291036 238698566 637154378 961707331 972264069 63129332 329225068 419591658 903947579 621521747 881302803 807395296 860125784 699055290 927366321 219297606 267251770 598836853 908352883 23775272 588971706 546349247 874356417 440585150 964820754 515618526 699957827 277980410 507289660 851557083 915715872 591816732 896144352 255823968 398486658 351603846 801651298 505892714 998616644 968771537 969577534 436393138 646519048 666443897 856082942 716172234 988936465 311036941 914275200 146155974 690350295 55175887 119720888 986252489 986329582 362841261 748253567 586789846 850457059 711837899 924378351 304915892 839750827 77347032 981830521 847677281 947983878 328231346 466960808 497201761 552201302 583696606 781119830 301624692 893087182 313085432 712185718 320322473 462857899 78102703 978265497 864930434 977439484 445709095 569683937 665396704 809829643 542160978 957376371 373880019 416643823 139231319 286314446 246232072 482871218 877675969 907426127 938800070 968241311 986889286 995078785 993854900 999973874 121041221 721566696 615221020 837157512 483924571 617457873 292249825 352339790 73874873 366295472 657958947 778640992 704996212 892864659 465508356 937130505 432623 724382024 702950603 806393643 123701829 871579035 230425862 649604301 959646096 985354436 625943 965014799 527719868 556143204 304446307 454029297 153072116 854332198 291558216 609213418 517307569 711270072 522544678 523933096 963396534 970404617 341785599 867612708 907830388 932743832 232772691 537725857 221576774 409284754 580069254 895716898 837545066 881508535 639815959 702051991 85494592 703291375 300372799 738420023 662303337 860207053 321749469 494972215 125523427 407208364 345735760 371467953 811682213 953551907 264005223 626621920 771399096 934910272 320245828 499762093 73630715 944364825 707781204 946552745 662954720 673175665 366439558 978877817 212215871 426304515 388953040 790902934 982399878 995586905 874191535 880428329 483513108 538897695 813685138 868675444 800781625 849900454 637059653 934406554 360053264 698295556 339546981 676436449 269557596 396438749 800917163 972619330 824654434 935615467 238082649 772910694 484147212 997722428 812309107 930785949 459938340 883200408 585258732 993649864 413040053 867724295 167775457 256949410 860264463 921515057 265953692 598085041 615661023 747931038 235248736 365037009 984606226 992750813 745623416 929221779 89378570 458018603 51540816 776737924 661970764 988199459 181856675 348215847 993872520 994643641 413405926 970625921 525051212 653153839 385394944 879947933 688139800 752537022 533606439 550058556 54700737 122886999 526828677 575906795 760879698 786160680 30260419 238887691 826553192 902764916 584885621 602562758 9182639 994715927 826744924 899813959 777723513 805157164 140086718 852878752 444323419 613610345 391680596 766774014 963487326 979265309 921754297 981234544 587493469 989121711 16809515 904944495 566244223 942567025 17162490 753334552 847357952 939415696 227004687 766474687 705463108 911000898 323698441 434847242 760788797 868844839 17992718 848756636 681827718 920890553 569125975 846707182 941517761 976842641 967354699 978538631 358515564 789590742 894291551 952515284 708054567 887882158 240978105 484408317 331765451 590597234 596293300 750495915 609504601 721293450 108258308 140192845 536341402 787333093 45287597 301898086 771309031 836289265 497871056 860361776 309459545 437938283 726430775 946085390 817105832 843142286 292290346 409845825 103884766 454092450 729924769 812635562 109973374 737555846 196347440 424728770 384649563 794672789 260574159 556291789 840981633 917270666 33411749 541446765 622134049 938319186 275312901 535780022 351602450 933398762 960549218 990001731 314095730 743756538 416080887 784219227 133539130 923705337 954629828 992994097 752531014 840371532 441801286 694276787 18827543 47393245 331649128 359102117 985070193 988739782 81803876 205337276 513617010 932484378 685066061 724275253 444298916 641279086 226621073 576798777 571204690 981225259 22622839 54362411 908947202 944929361 670277238 970836293 788504968 892896659 269415112 942801984 156114825 878591117 237943949 624974746 245740128 450513778 724660460 902852469 698423698 979729736 925951148 984823638 586005301 824832646 386651125 511047649 215732310 872784344 48372671 967685604 304025444 679204528 584932824 838212585 564772023 763141827 821120353 942011048 369806723 843852283 216982066 432275913 744014100 822893131 914352096 996437346 973128341 992830261 368602010 808827160 224435817 797536978 278995528 498422424 625890476 631524896 794131023 967024075 406149614 918991462 853244222 867549366 922565132 994767706 454621055 703233878 470990222 741565050 754226161 795569049 502979753 765414223 378623751 696248304 114374411 147692375 633809406 748089832 19742467 323290343 183117929 361583485 798365209 852248447 324338588 428456747 602349541 710558124 682331203 854883756 759787047 838697410 23569761 354051251 614696864 645356644 640453653 991011029 798741522 824641112 10853962 361724824 652042848 999994940 401931860 476113975 563706059 795812037 656368144 770005067 642964560 759077373 114554804 184745089 659548107 930144430 875075128 910589777 167483201 646809235 412482281 415530877 615754700 648851395 5506473 77439785 542383676 602149932 103073997 773024227 683959927 932692012 823669845 930088663 240792028 495276304 983875582 998063320 877649630 946630537 496167259 498058657 930265511 936026511 917516994 947096820 679413549 844843461 194180401 424074079 558602866 765080178 459358420 609105044 669487453 922408699 812366245 968489709 325260301 460492310 746764766 992424165 387207902 401594984 215640445 707900120 982555850 983105984 104557648 438733348 385356160 633421616 497428609 751975907 479234451 887265272 173115518 674585863 329249980 337560993 993788254 998566493 21193257 735625667 362915346 883308509 973019527 993748827 712725764 918467827 897578509 914078179 306818771 520163621 487006375 757452306 871556866 938037263 513103919 544706445 392329772 754497484 26204664 790841041 93180910 377793963 561475261 776131163 898557470 997645625 330010362 563172785 660798085 939196643 179700471 389166737 199655029 912983804 318003395 769111236 920888086 964860102 79108457 864626341 853457748 944901113 628549323 942389139 931028193 954899886 977277980 980571789 747296360 775462167 166603798 325619274 762334411 904755460 765420984 940690176 391417361 915717625 313082190 446858805 433351151 985419080 12145012 243514907 367199813 727850517 214137527 773610352 667100493 801866045 739042126 959539747 743428429 881124139 607523803 801762901 755395304 828078194 332272152 600202805 686508697 745815568 426904267 725974091 358358229 925202260 49585795 650623123 382060950 392080302 985041953 986147135 489267478 558208659 463051398 467869262 153169691 836292399 446411759 491947394 808182464 997763110 755985461 810096623 498811951 734599062 926871043 959514852 283597220 735554907 758352114 907759941 335107251 683463488 371707961 492781888 734826448 736234216 896260485 954657704 476938681 850516105 392419133 495872128 366249286 536988809 61545499 77167554 962819198 993471953 940549789 962741887 898874635 995872439 364279545 599502307 42189719 650688206 953900872 961660600 399886852 921712184 140210139 419066375 974122123 987868621 981159381 992982693 964659999 997962552 879676350 913324410 279984319 961944373 560439602 705954045 738098169 876589036 486227350 629512725 774758492 840188546 428823712 774213594 375604954 832403396 509065376 724515815 587970913 801237222 704997462 825276650 804200631 957085246 938433040 980802839 269233696 993389410 316777890 710118068 295779429 855339400 702978881 994461695 308671860 741562643 305514473 558709262 622994372 762305886 904819661 987697394 915027829 972060570 279016629 928012414 208857716 808886391 742655488 884060370 574721833 989710344 118841686 450915677 81748452 290400408 144611185 781784213 801682824 951623879 460802218 723384322 671089063 857492202 589013431 642513911 746160361 817486401 721981435 965528492 562968045 715424852 11385897 450049330 328053775 953778160 636764201 679194016 904906840 931368066 234015031 976750671 780741773 830364285 576530261 833693973 382079853 433252425 536463377 591275130 590293886 734251207 317129629 351508566 179534387 258209269 72637355 187201528 204023756 672279304 607114141 787419516 168270098 705203547 481001871 990675759 426898384 848879073 343092881 895415568 778817124 847109488 473978539 710264272 372506987 485594558 705204447 878975797 375875441 715445977 329596071 533028392 532569330 629101170 271177882 601963208 33938690 606211125 791558940 890575299 520260568 579758681 479495136 701515541 380632974 966062177 743873192 799115582 925586122 996730292 689949016 994087764 533656902 765474641 33830365 584627337 244252790 271177102 595645481 930026674 757565154 814795201 814214454 964062016 456388052 967114309 95631015 881343584 582393918 749910024 738947588 849843975 339681159 466003330 828622449 849289479 125745796 449881637 828337650 912409371 302001560 641153041 804119039 895655406 626222127 709890581 266940392 885412853 604593480 628732065 72136607 555714484 596354083 956066805 732578758 921195441 181936304 607406436 80905024 847340363 477092011 933320576 397050623 644078300 784819607 991320831 959166407 994606707 31923115 291971191 198432639 862120517 6743381 754578621 796695146 892940261 723605290 775790856 744331613 951732829 463173431 566109997 607867968 783567773 872213147 904451186 696181426 752356598 19405845 553143869 128910153 517307953 213469602 255525620 483092607 599201577 183568920 955961346 47020491 854071626 288668241 853621323 225383612 685127744 39749261 880206789 862195038 903587635 568193381 680009448 968731195 996270133 940760457 952504696 719756894 725163827 826214214 953905818 716991406 764778660 161855992 471753660 490672516 861342695 280883527 508667330 648993400 937732500 556476772 667963764 184346514 753390615 497611851 727595669 71141921 207500615 255317203 872496219 177348006 645345021 207523430 257118962 274725351 873409962 815755002 856800809 274342105 695609608 461979167 769704049 732288498 868587150 25908594 356998739 638511107 911245198 349563570 610057467 687386206 771257297 493503718 862047635 705035065 746273511 463090890 627007516 592812995 605554841 613713145 927332267 188859310 902943888 732371895 941848786 809144483 845978261 177321703 849925108 943003553 944115270 253584682 800956118 278425623 766224197 477245927 928322510 175420707 569131549 702060671 777387707 972958686 984363906 90056176 416401152 445908430 867999813 921024900 958897425 43853467 130399794 391064149 678630610 877072364 924129889 620488101 905925853 656658152 661667790 782400243 861559884 44913741 199971320 50815001 675431041 858957731 988456565 16022317 114749463 413300207 583606417 244446941 939396384 304441103 578579802 133750487 233706646 145879427 595079909 882082248 968958318 3418510 905812026 195133943 972789760 879047085 913707212 903788846 994061733 945821426 975386030 739374131 753124781 382727121 748099382 569962785 641746853 15124145 743780415 627808087 644902694 775993618 802259085 775416958 849927723 734196291 742034764 829531676 992364620 995617581 995972500 265685330 708705764 672843012 740775121 45672890 880101764 707809724 839987103 107938975 596231646 20736123 715631375 933668564 954659163 462589266 703305243 537425054 974891860 303036562 728832984 249330023 972026682 327192513 794547855 458002062 799092399 215095370 656177052 638979992 856953070 455675964 525235564 921660496 994054920 877119902 929193491 624258197 845108436 254304434 481746804 163360657 267016579 103651104 281937450 94566904 263860602 823791733 836024422 679360001 999753867 91325794 450930076 247497090 835714700 171415125 596713636 787193690 804492349 547467617 848876900 729482628 923131142 575834272 619562128 822109116 942266829 432909840 983934546 727974435 910076113 222505842 228977578 437240262 530907389 117729477 851349467 127128993 228848485 552125234 799815660 801588239 870222274 515558928 573202334 262740931 350045559 714963488 807854166 923990119 955958019 228668206 858803537 157109015 827165700 598893256 615961272 355907272 751647263 414884121 450993933 151466789 799090535 418103515 560522020 794093853 803502674 480075768 738374844 114093091 566520899 753191142 759419703 439179549 448029887 428291647 457169709 32505227 101987006 640170260 755634883 418575905 949924580 828880552 936000009 396638842 573487884 617799130 822006892 4160231 586174914 373131568 983517266 590491988 664410800 299622258 797800485 123584910 211056460 241406481 455566316 217416852 449369615 642328800 867301030 433459370 716192334 420092511 462166074 30758730 331132376 183204216 607585965 900472156 956045373 316715419 360390965 510905333 658208740 322775949 820102185 663420866 843948276 533027606 581455893 403033414 544150684 789273786 793662072 850097685 953821951 594997163 820515001 423568317 455677785 720418073 929716588 759514132 960189853 24967741 759225924 734539655 953927295 666037142 861205428 553635720 945122491 47849541 530625378 696462572 725929598 14896392 216150048 126374380 369072249 248004702 897110597 299521384 918040656 622191081 927130770 41143106 332738015 330595456 617415185 312110507 951395399 225290316 695107440 374644993 409718405 174013804 995438846 372225042 562165712 472350216 660741690 175568858 928000563 345143630 863170490 945614975 948414986 224101222 552026794 201545247 302938781 523730071 930059595 259225686 390378009 536795577 818383699 476456121 875931378 382349003 737572426 35362262 214418382 553209766 920259355 863033400 893115107 417277494 457593683 187239763 587666033 813539749 848530930 834167937 984095010 538529751 951681297 142541005 808995764 294973438 394994029 472401421 923259831 994843137 999468072 874383755 936177968 384246166 869189088 55681822 468789252 206991285 219372476 481082033 984447069 197663426 980013864 104369493 684258189 294938481 408905635 497920038 738293722 744417618 937854466 84731601 329594050 908228154 984392504 73580264 316094580 1192645 927094911 140249431 337595868 223509348 576769897 834773203 861914213 331898911 382969219 451817774 950969504 495191619 806772457 356752464 439805202 563680773 648984946 79787268 294162961 98796106 236411730 304985997 646866638 908360367 997674120 767953666 958869001 376303392 796983070 461747415 483861644 725477493 949579563 438103216 724572002 480140220 870958751 311814681 764120848 87247835 331907621 37666141 236449931 613901842 980021049 671073409 868994988 73722476 252185897 447410219 733773943 899286474 935330565 450816274 781216976 772003580 837843617 266048062 962325996 956841128 996596541 833922107 891103785 72920664 268433739 834158631 942841202 994183843 999431607 462478576 876656099 877212235 998177747 540969090 632702149 132863697 850702765 20716580 103676192 43165837 841830605 42802157 430536997 948953923 979005159 286089963 508544068 322161077 325176667 386639320 480702276 222252144 774759340 189884422 597411237 528133362 764516965 502144845 684109411 129912013 529511259 915968090 972688592 612035139 993948384 50084284 321178766 355539419 843623012 745507728 801308595 473809601 799030994 968226840 983189674 427204395 788739574 992289978 996371305 193416416 747761990 849785248 921851961 598346623 714562527 926935098 929943087 280912374 835641426 554281520 741425771 900454364 923139934 127110618 869355436 33865262 225268913 156628696 247768129 331009230 356600075 441287062 473890741 342244853 919487488 461315120 837974243 504929867 668505426 401683580 970066083 58168834 409475447 127496936 332017687 508367376 829457034 69390631 253502074 142586100 420808275 587897640 629073638 610051663 945293685 765440146 787416173 215854617 969370046 971619227 996482777 272884020 728318626 514056453 671828064 809539396 870413650 620371115 735930662 900692307 952613116 943518948 998655313 699060311 787428608 481785450 961691438 632789645 908673323 860572436 883035234 197083212 243546803 98145026 585828417 88755653 946380356 975974473 998054927 802685127 932997330 59432298 222211515 51268738 183040061 708325821 961012944 925302435 977410113 454293786 983863242 61069446 190925702 627523563 845290045 934954838 959549686 540949132 572568996 521135013 801253261 222605733 869779779 741315027 887314259 766441865 856500220 129805149 590925884 319254425 341561591 669282608 976416487 332041576 866680287 929959670 965436734 514102323 828859712 383467954 684824468 472274480 835910603 910494351 973860501 749249842 973848762 384050358 401656430 366080256 643328711 925843675 991369773 69262250 679510602 956057729 973371405 109966802 389107513 704442303 821250556 210409982 898259841 436417034 656053602 722492813 750055860 668723382 672014466 731109815 953555441 324531679 457969356 537789373 933048867 71112633 720599483 939963695 991012071 960928958 999587138 116636624 846498319 130435446 774172835 643926141 778448471 129724312 507488690 72779581 837944156 756560774 803261049 19754457 163653845 87740333 434183635 618139541 945886415 757790647 973336745 189315375 526188373 994309330 996359240 509100170 644650623 194649203 242366556 820384864 856022019 311202418 347543065 428437052 450789692 340529821 680868733 974199487 981782917 415850576 851468683 362360273 455046080 221314889 792659540 244604317 872381436 69048158 799246747 66999010 708159906 996111979 997544208 25177640 473697425 101180370 115847616 978260617 986776030 569469381 599252965 238322554 803423496 641497125 679509841 767489803 771011740 272402318 447017477 212598122 800463046 518484453 791467434 945220237 961285493 563905439 641162813 201065127 822547574 537110246 582766876 373487078 656694146 676309009 902100616 121006157 272897539 782861341 867832413 741400967 791329074 360243897 365071434 434358189 988602662 770508629 838037226 397584641 872278461 252147063 358847156 649418253 987287936 686597031 810699224 100569410 566697880 44758527 388210801 48984938 975829152 924473883 948499016 90324426 430110188 694427854 876074747 803193899 999055468 883149919 883969225 128411685 728840397 670920590 794441593 643932658 909143207 945852683 965091081 279780987 494047388 765682835 925587237 64952107 973320841 781401168 837740886 377610728 948510803 937190334 938592764 619070706 715328475 601405386 847336282 820353684 877819064 181475030 804465290 334704509 906415329 853084956 965001610 553849887 692276148 323468279 576048987 994195626 994476097 737276160 786844615 157469296 613497787 874567507 980165605 695428031 791809382 720520707 944062664 702213618 730072193 739030597 985719087 383927232 385667615 60721285 264338743 199851512 702607429 826971273 960351323 741188766 926800089 573723865 833041596 43328810 826711228 13095868 548745087 584325297 769825820 312449960 564637689 589773412 599855365 335807074 973596973 325159699 644368055 794199615 848174293 476079467 527468215 19900662 897994423 766544474 948635415 974843444 997022781 317871436 866876095 82475478 652005450 461227656 716289957 93071232 567821904 27812238 419375794 24003650 638769069 655904468 844453679 616574314 850871536 948208681 956073042 53455975 741836267 160351047 746579383 431130729 787618180 113258819 543486864 680552508 738161073 422921936 703415495 337596991 780156742 981484995 991405608 380280794 873606122 721146458 762488748 318445558 680454184 864180475 906904629 981703870 993771805 79371954 846227228 760566775 873161459 662244359 747135670 881334360 899670171 819902914 849756112 168173488 457705071 38189127 722843302 93472377 404342802 186967472 740115074 201625695 243058940 650043674 703123325 521621894 547691536 396995335 449405088 85935528 925100901 155865864 600717177 339807255 927335441 82051275 727442241 549164485 862648280 234445765 602657559 933311110 992052130 224525795 674148965 665524038 670123108 917877626 973649086 183195660 236101432 889435681 918023486 222631789 910393434 633341516 762807775 815642275 930278960 721976478 930327374 15724822 888842310 969126303 977616807 187066075 699087159 467746924 530375211 911275533 948217485 73576996 962047501 697264568 971363420 881682795 939449963 768641150 779600550 469906955 640971568 510222573 530085663 732255075 978540580 873138648 919327351 616465692 936768634 911750362 981037860 632951871 906314862 960583093 976048223 939644996 987081866 216569695 510673871 132281061 728215198 948726889 955706729 162217902 974922559 513495286 654636598 130069141 229721390 521492319 962996810 463785723 494032334 36357049 862251100 816907808 872857485 559855382 862576452 265188674 689893278 499362723 774544580 838098185 928689813 496306763 500408842 442943801 894688689 910742032 953250873 502790918 867514183 442229572 869978117 17054588 529272325 884257871 886651302 638715180 941228170 614895099 667847392 874096090 975183660 314852944 596439213 458946334 576425402 431831530 832603412 95211573 390760634 625449535 882020158 946115579 973115929 176016073 219958869 94181750 754518694 137685495 257431870 194890752 508690034 344245955 467142402 822453637 923215039 237851430 420431847 727524110 811577147 946659393 993607246 979809070 995867220 35048329 939455627 499139658 533216751 698212468 880494328 751365764 790922544 517749684 930631682 767126150 938775348 674292475 693032110 646642872 888314915 366588461 825039929 330432850 923133216 397857412 752471459 141744067 282539047 474027597 931582954 581985464 906516659 852068299 866433880 247997235 515173953 548513051 716653117 421394020 896279872 503896318 647615098 797218159 921128236 849423800 859849834 254361174 390568708 651962588 898681450 217328936 881843408 10278836 159449388 363391504 831754576 806058280 812099208 273164117 402881313 264221405 370424091 435821387 487331640 871176814 981770036 574562628 939228305 318304926 774614365 302675900 837956233 635814614 881865206 526409251 606335799 722814270 937145831 224036527 299711888 913363577 976401228 49578608 911071933 220763406 974985739 847523528 854757051 415344774 577313198 459335972 626330251 699757695 803506287 678336843 866144099 989752134 999923935 327328086 482737536 509882483 616641331 242823021 269402060 778101518 891549924 351520020 665642893 5950327 395131661 482190979 513394784 745090084 790737607 618579273 829007007 459384608 795568178 145064333 197824182 66657474 122979706 692349481 781243144 669886093 996918662 747070854 908846430 460272617 548138943 957214993 991728880 668437630 688396964 453132580 520744128 861865948 906746377 316059080 509848387 713781957 920101805 124038133 958208922 153854416 351242792 543022980 821732626 789959355 968741274 215950425 783663011 493858379 893647107 20094928 288807719 412543183 852146960 737531585 902806370 651580975 833554989 709046935 957052157 416468924 691369242 214004932 376876313 122649507 790109885 669942662 942165131 438837993 506292884 92123703 514262173 552055109 815795483 372045120 772492470 94848851 355902489 211532344 708764281 903394194 941632510 54774845 201042164 879723317 971233813 899270924 967633082 639679026 717249364 754215068 938943111 803370025 852365496 323982294 471301168 454634625 593004043 58124352 574762255 932543292 947023669 312166076 806364614 717876031 838639302 709851038 723528738 831108985 899032352 195422024 236654972 578051874 823223546 444700678 767351421 215880458 722314843 114977225 549300927 810370364 902689874 776624070 931222316 423170955 887945467 996119321 996965213 906643594 916830973 22608007 560533777 266327169 758403600 511371015 969910679 264168473 817590676 412614416 969162243 12806621 400852307 80547251 103532746 739408519 750640418 378807858 674175574 295273936 557058724 498768441 771995116 963281105 993951861 312702945 828634270 796470005 854222842 154278520 276320707 140750065 673387412 556950123 573530968 361694647 684586961 69318138 441140389 231493327 298709085 289656352 486635831 135149064 179861192 805480236 927646593 669136566 722986850 433147699 592324112 938007733 938758858 958706844 982908728 211465808 243233757 737079969 816701946 828367552 848763434 38318506 345903193 45304070 991260707 404372835 483692174 641209007 961348951 654196444 925059242 498624402 562838412 656674099 984896768 19794423 840757599 716839928 958681963 70486035 514283652 95816662 669361612 27333250 183057644 306130974 857256001 968878876 981671772 602417082 661714977 52802236 278079085 833755530 964489617 444740904 586243729 103074026 536706646 310543955 771106981 451842547 907293821 923247692 936628190 236608584 780360417 177181186 909249367 568170012 781419696 406741533 906621477 560881019 631034644 404880518 532198240 881765264 979586642 295162674 683699671 388677828 493317470 44819580 753154226 353197099 720607471 184726403 317764235 964521161 970053027 303130867 540378124 380842298 819000594 389019331 478254405 991560070 994739087 338443870 615934342 950966758 984955008 114824007 202601427 741897630 802976207 609791130 833707257 728757164 914971579 955524700 980302305 95347661 734123422 173734313 581366393 650486551 715196956 653565822 960269480 811907103 884265393 359896904 725038734 692364419 945966740 391871916 444737825 145004468 282736804 20189563 662380031 595052306 685250731 854676656 986837760 215634029 412438493 801459751 884168066 19817240 154026040 945959670 995720034 420628017 863218508 173372257 461870116 814410263 894338670 845214340 969365488 619791181 972449602 244028669 614264291 332562105 794684855 173201050 230046380 622137934 969147883 690459767 936918975 326693636 851050858 491040501 807254560 459242548 494677592 693739297 968308089 814379734 919033005 837772337 917377741 709714479 872811299 172640407 693249188 124043179 188136483 438537017 982281581 384941284 824828199 476583955 600798320 943949369 970101578 474191193 618487689 397382566 792359540 986781301 992208952 435069713 480890904 75501819 233262725 688143473 770145179 739705025 908063163 642331518 847704480 159412953 606038029 319872022 976115625 211190748 392850024 869756949 993332850 212377357 275933545 721028483 957327363 82948195 524778545 502822983 843950413 354757057 938900474 309770496 673034242 853988691 886044287 420257020 980564349 910023289 921401183 378438757 705427595 52539829 60448790 743042561 821272366 29283155 251408861 47428461 557553087 500721641 613824884 231829463 573405674 429281052 645939311 191592930 996781416 836216851 846405306 693726918 971278628 845693108 903124816 333386556 846770574 655585167 726190534 545957818 959713389 807050288 975525575 472069695 565059986 898586755 991982922 925260556 964075914 368061674 539281236 746652312 983970942 451603378 566802153 243275060 764338120 557684331 603171407 87183136 723743516 492327646 831308275 843981206 970442565 118493661 878851642 322311920 963728960 92908470 502658501 186651776 488148929 72939603 119562544 997325120 998206186 340682157 728145534 828317889 944807178 676558743 739157887 346210797 768892628 406260434 688884009 19912791 389818407 303000313 677645091 231305270 747704023 370614489 936232330 512618877 769617410 141926130 440727093 757928113 835084094 971563851 975428067 168858765 930514999 318840456 830058434 885228590 913695328 141761550 674681242 980641571 989620118 483305229 973538327 932345480 997847894 920897341 981338545 762024520 955497562 84709013 575551711 546544155 742659895 658505197 957494460 943151761 985789472 150184586 682119832 318456096 369648206 636139633 838095240 26594960 671204807 780190535 910344450 426184230 498094220 823722313 948662730 46213857 197643422 819757792 950824286 854349949 898456499 111190165 174470426 678051959 864883863 734532275 780519252 999656538 999748076 866581440 881832835 889494475 913443648 110157223 290185364 628339552 978800208 932946712 944238067 291725972 555023884 723291603 842762822 849544743 952061272 321183740 412398204 272890258 375026582 318654805 787798517 232622516 638576860 404834116 406854242 301614046 697929274 694358031 971489401 442419194 651674335 282537142 802611486 331164972 629077225 522393978 955817604 862100878 884222895 505268982 755627269 350833784 353746904 936348906 944155658 355889408 691984522 722299676 812815837 687275937 957456143 32238342 295083604 997960865 999163387 594878904 624496721 442414794 702514048 420052877 977800153 562882716 855913304 360508636 771994117 746430232 977700045 292733940 961809597 364871323 835076884 994947433 998491696 801646100 902609987 32977606 35556737 219613355 827793157 994583555 999832917 387758865 522599324 889421231 893828921 577325722 996229780 884715393 972112730 29800998 603454996 268601653 523190702 500188253 565632437 744017558 939433139 773755018 892757130 576024726 956802423 573471499 659627600 528414053 752981708 420871482 818465865 957270758 957437044 307222251 973959412 274826501 463447304 285866670 683361203 497216408 756615795 693406507 757225524 14163422 599897428 614610552 756350895 271160114 864486223 793730908 957202672 967148936 993395237 357783138 669725755 386422642 599091658 127350115 172384386 722876397 859362785 48471584 768863349 691936421 776078393 982984395 994550726 459861190 791097170 127677108 906072932 411593901 502064344 654210977 969454074 779326654 863083782 274064231 926515584 827090802 918630290 959253744 989047976 607392112 860061935 265488906 539739124 25407991 274845637 328280387 896484827 681478957 921321941 89852396 113205104 430655934 754586460 12124997 305648541 622017478 729192869 12802023 111933648 718714086 751370154 776881857 916505070 417523784 750124686 880646070 901179934 400828475 582411001 214483645 260337004 103246103 610419514 452650556 559304543 220082754 797169493 988639074 992429572 911775049 986224976 929361710 968909347 976361931 988178058 263194864 686005512 914581116 993548148 381454846 554723366 430825952 683482764 425074927 432142204 483252435 714636517 556596588 802713398 760689042 873491748 755543587 883271191 76485674 199788010 466671449 512014309 700694081 979432742 348083393 402685577 11153039 810762832 261072548 581271169 975618957 975943424 1147065 398965082 419502912 438391922 24536994 75644442 687357395 689697933 736865109 884628897 828794726 896917720 412833033 416278343 752079436 778504094 991881577 996355690 11659365 48201948 461044423 645736104 837266944 923261858 298573763 302534958 457276463 862379261 264980935 779694831 696521323 724401914 270570622 512634702 296156937 743461588 499406840 851989834 910442053 929489755 267160334 914797998 50116596 347003865 648162182 763219915 204777596 701703773 364190750 598538014 344361881 970105749 85175215 878822036 356529291 616535438 19054827 138479243 628587337 904744591 843191344 874846738 679914257 986807223 517126807 986658688 665503835 717096049 396992795 790575280 404685207 835562083 213275209 423401890 432589314 707394657 890449217 945943159 6700825 895733091 16424171 799526027 218471280 690923269 545961060 991563692 720497669 728610086 565909255 897761608 425538382 891799889 326981231 432709870 763393579 939188235 526840438 600884789 392187466 535366457 48089072 977455630 360447040 692808533 517429453 735183585 781054307 998112358 655498010 991009347 855269599 869380687 324527910 343399074 191103497 638332602 790063114 965984816 3262772 112667769 468851023 779423683 102226488 300665047 890747960 916083422 153351641 172038208 209099191 234229953 126838843 210680048 458688081 978176957 476594226 740083279 612511291 931003945 5074242 388453546 655260561 923520685 692740413 869332938 740410090 935523107 159024808 688334821 292302038 783434586 581630924 699198055 682302153 734200685 566079275 606662260 632777939 732583884 275322296 369843543 565069633 920278221 48918506 449726334 163989414 331316546 50418261 749306175 996327873 998671976 191512970 539936882 86980722 704104786 175631116 810712114 342277474 905075800 497507925 601271926 613180251 870697132 109098104 593250403 930383428 941744598 567341840 850259430 121336756 532117162 753873012 852153644 133401951 659024078 212069852 515310996 677577569 873023996 856317531 990568855 158721938 553638632 743392746 752781236 839993644 897117369 441307860 784119619 713940648 978274187 957980287 967512645 244350396 675278943 908076048 977642633 14219167 16793760 479205762 516613677 37858339 225117027 657974126 776390912 701428362 719407851 733868502 803487727 748860391 772257517 77430239 302006811 136809514 424459070 933585734 985433340 618127231 847352144 776113696 986705545 237130224 428909986 395908564 470873526 150900377 925953764 383656157 992247226 787651451 911858819 311609805 906738791 751181280 974088809 869487848 920272117 477970166 734685024 129879350 484411875 195447166 737588727 642486358 918798026 466105614 692415697 5282606 424347846 168575256 969280019 929599478 956627806 556891151 712463450 553838530 592732579 745510377 960572925 332122591 669070529 339516138 833906296 724141417 737536380 388599098 823543356 694042822 738413705 843264676 914323918 442822525 597983184 962042852 986723989 298921939 413472300 251149013 808542123 155983844 791775804 327460373 642334363 352517117 857131061 902521026 921266718 695409013 763432573 765133755 974901912 589826184 639287944 647424683 663453664 113022428 623586160 526523851 589279887 432434815 630054636 902173037 977348090 663230551 907497135 839409630 924876497 519789608 991750886 331975591 986165608 414949474 481008808 250525371 813044111 571325618 786742507 236063752 728410286 756194698 938336975 885740178 966974295 277855345 861686903 903912455 927878697 420473391 918048251 711606040 738579905 164593651 783738149 663425994 826630326 514249431 741231313 423835191 445599345 396116423 726666020 728227396 744953010 450187860 681788734 59744468 461999641 962887288 986519977 529997928 543772223 825393081 993455322 356371921 668383786 812688900 972213698 78194663 676262727 22225474 308234437 668532992 774936969 749073082 773639085 634655234 649219019 637877534 892069151 464418607 901431992 185419229 766259838 999474257 999737382 988009924 999131942 136184683 721006052 336655399 621079044 219409250 800258294 715715529 788496889 401552270 998856035 80944740 595051423 301475161 399991985 32584648 223734742 139193670 840973488 547846974 747398521 785738653 978573144 39994871 225657242 334702295 696785860 626545060 739147519 666015318 853505387 32963209 86011248 720956509 882495052 479919588 707228997 269309067 811878946 38288771 748124066 484797524 770051239 774635857 818533622 357374428 467666003 198571937 738454931 700453464 999742312 734381530 959717479 376596520 716333137 158502183 659053771 963091963 976107210 281575072 646469610 133169377 697280531 459268379 701357491 931495726 936152227 871675176 886009054 568562815 857574962 97939589 907688301 345812129 995439856 759615986 813830461 882979394 998200093 453497565 482414583 421951153 994294190 118906399 870132132 136473334 972563539 394181220 875528190 245272411 658896768 43528940 557844795 891542424 980231903 844812129 981691283 694865855 828887616 758792455 942501918 190746067 818474150 460551602 668500014 628905210 637704082 111212432 387202764 37768177 184665908 299428991 671233265 358362721 560975102 919227708 962546159 750830759 827382044 809448616 821100747 238182379 286756616 828496794 940013950 365836749 542110251 760202969 972287374 534811169 776881495 122873275 323177113 878218575 991366035 161196585 222611161 297406906 732339885 40583010 654530719 306552186 958209815 682415761 937841112 220746648 299602454 644356863 973230008 843776722 974891888 590004358 672652743 323507439 566702743 342696349 655351451 619090033 694310052 46920381 157542661 644707727 678332100 320722804 898749760 875154496 996921748 131463022 474536061 448088773 593315950 199332499 759575050 278545735 850126428 922237274 929077052 540071651 737669071 430618242 687683800 540524920 713637151 306414974 938778553 392124040 799990356 271594347 615152016 757408068 968573943 136633686 857849665 421855458 860481736 137452686 171945791 80781142 510158003 289707525 408518576 647804542 766866176 689570997 765384804 171326034 226186134 607849108 905683673 730539338 767899157 893597157 936717955 994999095 999260246 179972363 368271846 892642701 977695989 105458412 215136127 292556009 417682384 730563257 896982939 947773395 960728775 881651279 890832993 437683675 771284524 417821698 821574882 758183511 790397073 313348916 878570818 378352671 517089228 944966189 977713100 891830855 939997689 290877459 881121227 264884068 420079369 633489249 942829312 238243760 830695275 816184948 829632260 705252712 899244738 413523530 424937528 85053653 183352364 759304403 868383657 343494096 678091872 505368613 703808651 878017860 966826528 389420352 801348993 23384087 896139632 777541679 871076691 727030177 927971725 660486265 854726397 9160751 364001292 191946122 322713364 133296384 210884686 856647304 899396611 49711613 897048187 704239185 977334109 933050792 948897426 146696560 828375388 701323739 784340514 479730118 655204101 416141953 542898817 805831087 885342589 819374328 883660149 4418206 562246446 531999557 586869594 804773365 871332638 675152698 695544232 682344232 985545399 942110665 954484938 867387892 868258511 102677124 283332416 875994406 955116043 823467737 978145623 90890476 216270527 240907370 752368993 64943868 923458805 8137796 495023506 970844479 992816499 177898535 313035449 174385057 651245324 164472069 293137309 867834911 956858051 32233353 237738401 336598758 500440479 395388136 846348124 101352502 796520739 790497796 826342347 729166322 901240202 162554717 509351423 817034291 965972827 121079858 658103376 235218973 859207062 463670818 701984664 436559294 644454450 561940529 732733938 838669668 925029635 722395817 836281847 300055786 693553947 863303735 972137523 247528349 564624555 300420482 484974791 236289390 362875409 649929584 774377595 574810244 847119347 439834920 962994705 677364739 845248334 763952161 778350365 192947392 861655608 403166972 669891502 838189182 888649798 401877544 524455154 852660065 950269243 415720676 480644207 983438418 996150737 885286560 998428485 948970527 985519947 150373014 416652027 641497667 787395881 815388555 911688534 722885671 958234790 189415438 944109704 880862821 939194601 65568401 921288855 399158771 415004616 856325949 895223401 80996755 951041333 626942665 758833090 726274429 974449002 260281077 830389105 882235044 974832572 984168324 998784321 717488921 996112024 221082719 828259919 949085283 966460562 954010368 960977109 574814628 895149501 480619798 867865031 439895236 693534570 968895385 970131887 467243978 826519081 960572844 986069556 392854554 468429968 394302559 580655300 430782411 738334016 697481386 984296449 489637938 702979101 976448124 990279139 712277508 920259006 245907684 643328975 143441264 283946576 761874117 764868956 497098572 772976540 167036781 375543891 780899379 787163775 850024360 869992047 989370633 992329262 107393153 488456968 603037359 811613004 50663460 854625110 520079530 902770372 46669875 680702892 613306974 649183614 277864318 926999748 107203374 346008834 693772851 842289261 357105578 850898702 976156298 990797469 969396699 989742452 651021676 663607278 819639149 958614821 726983235 776671464 585640392 876044547 205423992 500621822 274935053 312870247 393148374 400187613 366588181 496506459 494184108 990338678 875481274 958097326 789289077 793584920 117277935 136074680 568342072 643507934 915299549 963704636 71285014 516962356 530037821 964856303 210406119 802251162 6389515 863998961 485460054 569170409 456598729 477421399 890098884 904408286 405175380 529954034 356478371 908932214 851369684 919902852 149514848 605070533 120435880 210065378 129924373 601266587 522712493 971208212 904074265 928671682 676676625 677494682 481179092 888821146 807432756 845500384 563940800 865403272 323645980 736612534 867657281 986868688 384998463 523501223 135221004 369133152 4818916 759062049 132947877 306082751 870617239 955967852 266983198 587977532 229700746 285552455 308514630 884995805 265434004 997444928 572534854 825051291 189705928 330334478 447979223 811590937 537381855 589898429 236243281 479105647 733894257 769670590 662308356 769886383 599729634 908873969 705058670 874980223 374582866 457535935 718833950 819815325 769399267 797241598 945105835 973354320 266284328 719189722 246427646 357431796 661310984 993781554 700433369 920844102 691861268 957487710 993724603 999473259 628925589 936927812 988505806 989108438 854187442 980873172 112037562 169765046 215879417 388078076 349786969 767568821 259005296 741777430 551008324 672076903 951165143 978873096 596305076 904909807 18186697 649444334 482983427 621167591 4086753 372919198 752511885 877411271 946599004 948105231 324312788 816939635 74607233 682895513 272250869 459875943 884251940 967614680 482490723 620842271 390978863 741885635 661351270 883002698 64640620 567576578 357430804 675352154 869807384 995918173 441180430 490521249 549136288 604467793 288793784 564716213 66390487 733031491 303793270 763442011 794215035 908673744 259157812 922626664 293702834 740140605 150240067 505524867 919225465 990603936 758130703 818805679 906665593 981419765 844990647 955781558 993546562 999788965 154279614 341730365 88263865 636647755 833217722 949051561 364277398 401341951 325853887 868768157 148467794 493772623 732563416 854870923 591318568 630567515 648091035 748271707 430360887 652382747 805845594 852742243 524539251 807202373 480547949 980388414 351534009 458995590 684237864 707979144 419551687 933140612 158535306 952033714 947132728 976483021 519265772 598771533 811263389 844371620 136666994 689924037 534190432 665642681 994588965 996509622 178316990 465096071 292574978 745919388 753989359 862989741 278745383 362120625 311881293 839030267 775075671 812372596 966331736 981214873 278989391 881767620 55291383 267271786 970364551 996896814 794103017 982630302 565083576 815552565 43021392 351576323 174940884 303810583 141619591 353112875 884411194 965387778 807192301 882177568 221362096 965402934 976493825 996721955 249623877 670599670 43482318 521039531 538702560 692649353 355697747 700466661 83931862 887594707 2790082 24527980 129792853 328292429 639781328 712644928 267275934 609958289 64041109 667949676 331111273 817628499 617118011 975957393 858984494 989584671 207268258 631347100 875268611 936331241 370281750 934292216 798108939 851079592 160936579 218678159 880598599 943531481 374319617 884900384 952158006 974627439 910224163 946656035 237746429 882028222 578123238 667308366 505924810 915648022 866059469 947058594 702710541 822362470 297556942 867449489 33018301 798763154 687822236 918852791 891831900 933681454 944388125 981112678 616240260 987581415 256455162 451116472 662345904 776201716 494957792 602064001 645631008 883699989 652552396 764003366 114323350 925769779 725566433 915530917 941437355 965169826 632165158 917889052 462272049 734738738 498673278 669921719 484747774 647369036 19624865 491378257 485282572 566336006 285679329 422835599 866971065 968809675 583391419 927792126 992092550 996614134 416536838 741254359 651282333 981244807 584420773 918713085 917921209 993538894 580306507 982923363 484841519 973804923 509261603 705863933 824392114 889834011 437180187 706689179 406282430 599966903 802926049 875720240 534474207 737652900 929889509 960953993 758092563 782214632 828661048 899725884 616493046 908535556 692161701 821100152 264565852 859277530 403035802 868397601 663821701 934299872 46238888 147675175 780640821 935899094 36965782 934066629 873678584 954999339 314563384 734249015 809248219 937952160 766684989 898502240 692024228 890139253 610149813 947439935 262111251 694199478 170639709 747013204 853957114 969372391 288569366 988116070 871749651 903895306 938863544 990067710 498028679 628904443 673327955 813115619 313772780 432733716 65227709 417527817 811640830 877093006 670365013 922382698 543739690 696860141 272799129 848064957 120674854 986158882 241967565 783211776 474364282 888056738 674105694 726250070 750123939 956896996 52401046 899694210 635285946 943315085 879622925 954978029 441451836 874432921 666861182 681345867 10118719 542082455 843171433 983515757 889308826 891468973 683203282 771316918 850467184 870298534 92538910 493139889 21230710 321099656 848855632 955187637 849143124 953006626 270914120 371962303 414236442 489211151 328881264 576830167 800848495 975163044 800867559 995896435 430497218 685556961 676320196 976758579 298060590 979123738 128248038 908826936 848461435 860319425 174690120 195581493 918151004 927831124 165135886 405244669 173819781 673924771 67781739 181226370 990001834 992990057 237002263 860356451 718672612 795202784 64293201 789001081 768774239 870737175 983111567 987772632 244610921 954451166 149389966 754554269 490720602 868215309 46638540 80859067 993096610 998465636 505519295 913764257 476892690 700038259 416584499 701743811 621047709 998412125 567505049 923218939 917721368 954527663 979886498 989317066 28258564 389484902 18295096 394708459 753985939 969002054 671941877 985143643 113205303 463285697 944316499 976267856 749761941 884345857 294792743 350119039 889346196 922803644 806580455 883494609 708427438 732846586 489154238 790934657 498901393 915435719 390100688 738013973 22955753 771616095 152545715 722373858 458818404 750881125 679503899 829146064 263457293 502327459 316386044 714947144 37044343 146000969 486257847 512143083 491339667 993674106 5845698 859698686 241480532 426756666 229750820 831239810 955641964 983501312 920997700 973365045 962938196 982590812 272399608 597242066 480825321 558867897 103508226 263722967 605036158 660623195 478210224 688746655 760456531 904560998 422674891 972026717 43845937 477002425 8905604 569306753 881210947 910081243 820993866 962828939 343408003 598133216 939623397 968540083 249612766 489045959 839001315 950969710 328573126 992428770 981170368 987477214 584039840 655716727 907251060 944164742 286826469 697672324 362655302 923358346 368482916 514935252 295209310 752026660 986946673 994670042 306487487 888428593 36093963 622554270 830344508 893416020 510092803 874109958 194648543 524884628 189676775 952395510 751601590 888739534 437670228 862081818 601904963 624014555 280449834 889448067 42153073 919830747 460527406 697495859 451115910 561197983 952255539 970993660 127002089 177885219 655344047 753554129 16553650 828688118 670683438 776991037 826891521 856231905 87921466 589271950 233148731 529722663 64591052 901254373 425679291 500241289 737377124 928067218 842202008 960369173 735015097 865612928 859170273 937987105 290271444 355265061 496033990 997078620 260177681 712247368 879267662 998129553 803262855 905652945 30392163 459153117 292524284 988165057 73975653 821742895 106702053 143974290 95515706 118280619 595759656 746266471 8090931 935349962 772092746 813938015 385493795 820057286 512499927 944757706 294026586 757389988 296577989 692489159 319312055 454344822 603354294 875047130 977467643 979026519 14057846 162117971 986396454 998655266 59872639 111671206 534728146 979938957 829284814 869403258 364282552 677647089 30901809 845335713 27273539 302299266 848566100 883556570 825640467 832705327 533330756 635595193 461452988 504211827 590974388 707007174 842577837 980400390 302234601 398505936 924173031 992860387 212349944 615800792 704937811 737273312 103003761 599856875 555149081 566285053 208472734 416631805 335729594 797903376 588374301 915219204 344004387 714229357 368368918 536534630 220357341 551208696 675209481 832902675 631241164 834459532 729252041 905314513 972822572 994668920 288715433 970977904 982674414 989574949 888126225 906084746 91067179 993436507 383407329 735556544 24918551 679844306 231827507 447452154 169128064 479665096 330978543 709182478 129509056 703069425 665260383 802955783 128759806 836437328 773268173 778277430 159416500 953909635 453200145 720152169 857979819 938045476 527436145 954886979 120111468 295593766 253994974 664444781 371935014 989879527 700596340 705931267 538505534 808272303 325801125 408167991 526172755 754307284 541424783 889090089 516399944 801340338 184934325 992672555 719524413 801384127 143212266 813256059 535835698 669128008 352722739 511823074 499780172 560822105 237275485 562207690 247908309 276176832 987439460 993510720 668145034 899017343 559885260 972692192 697941951 750826286 705243064 734727401 445059646 982452715 730497933 904758222 725688865 906636860 943759617 972473777 620787876 891771312 936509201 997758649 404095275 871423760 788503496 849578155 959524006 968927535 84719583 382249756 257787475 505921337 401690028 757460554 12565572 488114025 87708563 668944400 495777978 970605073 250364910 527031826 488268693 773048915 766434693 782722582 527002366 574473686 83644822 203097527 395934140 933703219 909453039 935620813 167540933 486058298 592450986 700138021 538619185 864791226 404079630 762921418 944838715 949383694 508993927 581718848 347900487 806104908 524311499 886983887 332535822 585354018 241137715 656732985 859362944 901763047 532746380 671079209 243819481 548281505 845895721 986234168 511071997 674053422 633100021 928152072 46159800 459688354 916612435 964306650 472256105 608873727 598011424 928355657 700938925 928550774 879846758 893286896 725227448 766768872 224887343 726762298 905316871 919779534 32061158 238546104 303902748 742626904 434406574 861202296 995551163 999872416 149349696 391315281 304319356 973740324 829308289 967536041 861948110 909121141 19311567 292876884 786522058 842558939 639278597 712400223 320241405 371287328 517131412 907237473 633808586 640151033 42190371 855365653 175856280 913120799 715466307 958769068 85908025 184375428 601073657 654207238 704279867 905686327 312946044 623819559 614984308 794224949 507910783 734587026 548463835 617688428 446619859 677956290 284433435 728670593 769450621 902352200 944932361 962770581 943297958 954740389 511721687 719691574 779094490 944273661 887721536 957044550 407976259 433592302 516197997 926140288 2308777 792271345 23558032 609445385 535220494 601186701 525258677 597012092 271761495 627592177 36915124 929453959 523503252 926869933 480584991 909752833 179276914 521620830 146957801 360926773 649717881 773638167 673349238 775793328 80722226 791959953 449265655 490080542 80554112 128788027 657735009 731489804 460732242 701108807 751923398 992382580 428205946 775263636 688987698 834439012 44594816 933194883 570308846 732534651 250095044 285363207 107112047 827410759 419554380 689117773 109645256 397456820 649595812 811978533 560229508 752911614 169008689 363572249 506557945 797380338 781931348 944801856 135499113 581533966 919264408 969968179 557740823 651964704 683087167 803047637 141544407 251534288 329094015 731423626 290972679 921213325 794141286 905790653 808478026 865558880 123562681 997116665 319671311 369823147 915284991 964304341 385881056 839111196 368368501 414908889 784300554 987323624 532530403 607934307 824005977 945262796 248593724 368321116 437744701 932416953 831319115 928372906 416177947 867262380 837386600 876412561 713896733 741142674 122930514 946856690 100888485 183991172 995285620 998161389 394728531 435690448 632645804 993571965 193539394 462568149 994884699 996862843 25465214 823922269 296465748 506918987 469688991 748907919 518181637 783094820 297715448 421907819 20450772 519665128 659955244 884717287 784416476 879393067 231407949 716722273 733631892 882881576 424362250 701406584 686034704 727573637 598311810 956400984 346681133 509985714 417890935 571352247 420323100 910117686 635172854 958736927 110035704 967233733 777621073 856798821 470902180 694404908 711349466 758566228 664932855 747414014 944638000 962058293 474358087 872072909 134623355 777574720 194708740 506014764 637420251 771969025 569392082 777135826 211802370 573723422 689296732 997624178 118685129 129487103 111392874 606608705 239485011 693926007 675452723 806273317 896081416 936472406 500848014 630618981 969816116 983540822 644937353 977108807 142238976 416237384 736756870 739689722 853886092 966317999 41015020 173941276 846754654 955043697 372959558 469872219 252517216 379336187 638002407 845569841 841934689 951250260 208984474 233782442 270092727 994235093 786173503 983979003 457308079 761316636 924853867 953479800 824536426 860947346 289097305 519957382 556734012 649181930 136743030 739022387 308159807 411556740 549710205 751079481 895649787 962266109 730965417 798117930 196667479 998557378 946061649 991931065 309969482 989915942 787166015 920528920 102827063 751497512 566647533 744574261 297554709 349354607 4300427 581337403 408332769 527966629 396931951 831040552 832825259 932510735 888284452 899119997 965593726 982796561 270180641 664985257 875793674 898474665 217656448 419358640 286521423 341842141 711482013 837683540 23889427 373454645 212928555 799662373 683402586 754253722 789839962 947603827 708797634 717080066 331318139 787645173 837160731 932640064 869167593 974684689 90388462 440935551 505173165 930382159 933270550 972564856 90555293 146603940 519667043 960123363 620803269 906339502 75346110 568062420 489756692 810220583 369631591 404161276 818782358 869151249 152580165 552253829 532865587 725646041 284892224 583169596 412930000 860087444 550530079 660942590 492601939 967850567 249621055 594375815 228059485 718777640 796508949 799371043 518037 786487755 263076670 570533316 891029532 911160610 540390593 727830074 779728057 996524727 372421810 597730837 41939850 389724532 844701237 906935458 951400639 991099635 942288206 966269717 931038084 967890364 697894577 973212695 586615423 994049038 830659106 849413046 578618499 869618295 148768936 975487264 572450353 703401071 876427621 915934476 558773294 863328761 875024064 921233177 727162964 895128643 685793475 900077621 817287817 967605351 890535587 955087056 733792944 748686190 733936039 935891071 223937474 479597059 147907034 436491274 579164176 784981203 581067257 921563559 570052001 646245091 315944909 962246129 996689061 998712011 490953988 768370988 463984587 808276295 768143709 899527678 387980836 990283596 224526118 608983874 875912173 908153103 730469157 830537733 202297205 660153523 953728613 983556324 790011952 840850096 973877234 989158108 425031169 761337487 765334733 982584898 332638407 687391173 149180817 239958845 682602314 987417128 300719638 346553959 261679642 470622923 476513190 572353921 701335591 944148567 843663094 952261591 113190660 340737828 663543021 718605852 429352249 787992465 675268913 726943785 455600368 671777067 75179378 86464714 401223147 732850682 779474866 796210959 808020249 850214440 115388364 277579744 873548195 896598318 911680276 924831223 910419237 987081532 593135609 637319750 648000599 961429671 930902613 995929909 678938556 821464456 146369292 922136857 796492896 860359169 662044487 819379096 176001907 995248691 86629101 90799680 516993354 771684515 639985524 781306760 436441277 935803374 267357568 796170518 189554213 941938488 988110772 996151193 908016069 915726652 321266983 773666663 717668449 867421323 741436310 752015537 128928264 154931389 346258398 541966367 690694266 932749916 689836084 761286738 935184559 999526026 147000015 275129930 97991973 990234947 644058391 868181472 649187949 749490405 259579587 857771344 85154726 324877814 22987674 96530862 964201826 982702087 525187444 563197401 965686451 984979889 310791327 476346094 382332749 504043810 807150213 873801340 642378812 779082021 416868331 620797916 795908463 848246734 564716757 656602481 806305005 868115111 371782094 620536217 238972709 497141562 440468746 524958927 890254911 957930150 75312266 167033623 606342944 906315441 429790911 953185054 412027378 814551331 11895371 102259995 41271491 993407077 883572059 962150595 872282560 940102636 548972961 692197655 592298138 783343529 222255465 259520631 902785100 962789276 565960403 740761464 231719837 947352746 137610606 959092412 173000626 495999125 485939610 997619370 569799197 781475750 907597148 913277415 848337069 946177211 192740748 324299419 789760253 849558637 241744949 434256794 394713461 802291809 620461038 884763781 623711017 903898093 472555143 542904976 346895252 925244179 88378402 618782824 434469351 597916696 106758834 513529680 955851689 995526886 949507632 977317844 996486027 999480423 286107711 822866037 715209743 793868857 377082581 886986508 39277753 618185748 483997098 956237090 435946106 635789959 875910330 895926834 160682259 394030762 668977075 841514253 601287534 623923043 423721776 529688306 94532820 653589050 47097230 432354019 357212504 668312972 231491754 903329584 252719009 285427805 65913814 227097522 189682315 448918862 253589918 560874946 627667910 902189157 968395978 972553521 69311829 514583682 518683531 688090132 268618111 916328984 664266571 740328335 880822864 912605280 148729423 520784013 59273620 225942893 284585269 591696183 743396612 856590144 569456180 811390106 177264306 487664832 835728560 938436664 595413736 944940623 250911703 464845852 29977814 166028841 48029825 471233844 747258054 998528843 436011947 890819566 914223787 974003065 767383369 809954382 477116449 539851917 586543737 865568857 167820284 253772460 114604758 444101587 550993135 698083443 251195040 387965802 691618972 708436234 870830881 924643232 721642290 866733255 684983051 955006142 492149918 532034117 17874072 508418656 480222821 725747708 96684262 112120451 249042329 997720594 609808928 702259219 968743406 989480228 311319158 710072149 239572924 610495305 185291333 524918532 323426777 902259843 163725005 451991797 837467912 998928339 706111818 734363722 928399257 983817072 623018658 806883835 119053108 393185909 327848703 873851721 636208918 779824387 786900942 795071068 965169661 976535372 633874778 926235048 292287383 952728890 988229739 990909975 600487885 619983062 560733990 891863057 728346831 904800180 330042030 347290470 99633535 268877273 462917835 785910312 942533240 942803521 365007957 839635100 173700272 210893994 694990655 782039706 432685427 548386400 289748084 455810492 227545403 820102992 675297678 762448321 536715969 745117849 110438927 302884980 575880289 680018870 270240158 675125976 672096832 709935942 779473563 947345351 904858082 922791532 431956958 860274714 381687547 748105607 254629664 580209491 243984516 663115775 745273238 778220885 699495616 924787258 932024495 974057466 22914477 523864172 777075006 927872089 787014504 978141131 637800380 875611681 907683590 960576750 866118712 952957275 764745330 896825763 969700268 980373165 203257754 977763026 136884443 328110028 578040218 956033497 357833379 421075061 750694060 875238623 560151235 816443680 639597401 753330837 39052495 284231118 118679808 971009495 262119760 310516671 508924104 634867017 720949167 824045730 899122610 913745525 782675724 799991195 720932903 813511250 877386313 929023729 825275911 998165284 467277253 985543818 56962700 69581336 705138042 773336109 748045879 945554022 16119112 199994831 119052841 324163157 381005404 486597396 762597667 820069047 226481096 311554596 564149252 710759738 295594842 338652707 406384165 588416503 916735468 959705328 918042679 992401593 621858980 920626593 959061375 973688560 731632505 894797536 601155758 633165620 500223676 711615267 142825070 980904552 277953742 737292711 742768216 797674528 748581462 928571564 993683440 999409860 86286743 820156813 965784651 973270383 767944881 937668786 786455681 949938988 715619272 801918387 336805890 459813261 578659099 765561619 471454349 634608522 287488748 332889645 579038535 687389462 143212086 911544514 981078527 999398899 385116663 557087954 962820547 974040955 323923945 501017367 390974223 498443374 679777806 950627623 522792137 789116969 592549346 728476434 93149327 609705523 331193486 366077256 488707293 517099495 765126669 888396360 747463264 754713467 193181205 219981351 871296711 979727087 54752447 157921839 503896505 629817764 517662005 996622245 951784208 997804346 289430865 702929233 825584131 912068243 574586600 829090788 473669510 571743701 190466464 780398064 972466041 985825704 941970881 942602163 448845963 719372843 282315302 355426937 897845745 929634852 504849548 883854212 799232888 818398822 615918964 788587437 604078439 894146416 422056357 554714881 624074290 713014173 10967988 402348536 448464501 843344262 336119380 575522872 718445336 953258782 864135230 908047208 676554179 826811397 153997677 293902091 346980937 894123345 973005775 992741562 917570418 994401142 654586564 783842298 585343956 924619829 102037201 738732168 275997263 630469397 743229856 782401905 150366917 608795231 834310902 928890104 435076292 782174694 903612364 932874238 942831996 995054602 561381203 716639083 602453688 806344957 672367307 807036264 278469626 405407352 555333385 760282992 825658114 825892950 949318467 997451977 171740282 280302104 521509999 562109875 833872967 940867129 252636892 570934196 840146509 904270495 730927397 846104462 783951576 926887695 240966499 578237998 472208996 583556676 103961136 624527754 959081301 965767281 921387782 953481163 63747650 544653288 350423143 444611270 911654208 938478372 799821543 950815436 392036586 520109215 996719131 998041738 48224978 573352674 508862478 918046494 133182620 964433637 536430609 595583390 943387383 985641335 387993495 396225766 218855544 974418537 42112291 811195683 503140185 742354874 921443381 953141313 749079983 978009041 424123500 951816442 398854954 928924418 923919736 961195189 475002017 962911837 989986827 997354583 354075567 637583319 64963844 646838772 220375280 269655422 155802169 277133859 691462212 919566901 768912134 881353635 99885528 401574787 964860759 980597708 126261966 922354631 925058805 956195918 4280745 923378638 452248289 637443197 519842705 719455958 428125153 564724352 321142024 789202410 821131821 973892077 526552577 658118579 447374107 574962018 860823092 868272070 146271989 438420832 510005801 647496756 367458576 744363060 150870963 704101859 728681987 837582519 39847803 978143476 875479952 951030354 952664743 999191552 219460004 771993043 660162062 677195028 417746185 710003066 952792479 963852415 127515214 802371825 450977956 500826350 146534944 847660929 319343420 747494818 95976236 455043270 82359746 352127487 968918705 986372900 243556627 514423092 587274639 997208965 66109350 707485969 465105726 887140418 2599740 418224648 549761678 782435644 877658449 890746790 921915985 941375705 328028308 693868975 23199230 293867506 981514021 994658714 499745949 695322206 297677589 410799352 535454720 615114238 600375750 801919479 185203224 637369345 972725561 983429955 281942460 927066731 938278595 996075922 478100056 510632572 399903155 824567876 424450634 439590419 209296306 385784691 958571612 989341765 828973384 924737294 570338888 846647917 745325408 772263231 540145324 936514704 867294388 976910483 255286722 444185029 846279667 979334932 803592250 879160349 689740424 757343560 115357741 844419198 470179827 889721919 782058285 899018186 521016136 765972548 838722916 955380862 836032603 991219017 96346687 141117563 799087696 808673950 185628782 959370538 378469309 413613248 584927705 882711512 774742326 834578576 284325201 473118816 854533607 955796444 588130864 760133784 868871534 985610914 762035401 976377276 766001040 870946502 967455752 989399409 330159545 871074657 532078988 667475906 711471338 714333852 147963326 400412724 951780049 971166076 419870949 556069085 601762193 613236119 694367352 874630866 460004176 826865657 488993418 625300667 980068980 992825563 775395949 949359269 76461657 904660198 914083856 923984376 848723410 909331117 832722438 992093344 343207007 926231363 154412577 371509148 34570864 815424892 681898144 857971749 549335977 634895436 779554871 827812976 749682354 758769183 554814077 837894972 776745199 789626065 771779752 862583771 367659942 517397658 359556222 387576507 664461799 891398760 237446352 987442577 746859317 870640716 514848541 902502077 219035845 979864478 164112153 619916870 958373203 998110227 28216598 69657619 759065244 818681636 651667191 873057815 242729127 437103368 654177906 751394303 162513806 241123833 774029870 846393875 298261386 835688520 330170917 410576777 321107546 460492489 498355906 962524698 277514655 931666686 374852109 845150368 109287129 538026775 478164763 916536375 495229582 960334684 805185157 894087275 629271238 731288734 108352196 145386080 257066802 729717209 607736027 748764487 263186693 542586417 635642853 911723594 247274060 962132685 69273669 879006612 801871268 839379921 860706301 981294596 58178350 408229276 548979778 799609150 756891707 772798750 788864176 812275212 797746445 981037316 548963865 587649731 839689942 898343691 839055008 981755753 628279301 821988457 747057429 951860728 685058122 807246293 667845092 901275386 923437076 981612665 915629777 960776138 736578954 862161352 584400114 881195057 21091651 770089037 425579720 640217011 651851880 782962208 566815699 940818501 176323569 468861058 503867723 994530295 937719092 989267356 586196889 965273921 738489685 962041624 551411916 654075906 384451359 913940640 143118349 650660316 225076329 551006589 771145961 979288795 375901808 715629277 902563475 959300632 864531484 984408084 7578198 91439089 925820720 962773944 504800824 956631552 756111629 992690705 104041838 816070854 126733090 653435205 743519957 967997561 886492924 928121659 793345840 897729145 413230551 605118177 91592387 763743767 477844290 926951230 363340555 709088786 682506082 728381118 659954748 762004397 587088603 953249831 366215706 865551531 756379706 863694262 505463786 802607226 466228335 788233538 924239878 934832974 698408277 979139582 109449528 822421866 410075042 544852707 82412518 554040811 864482242 896293039 345891284 502907567 383957541 813136360 305466355 400464540 336302778 966571981 110405884 300096143 259240828 770203045 113416277 319673025 551932488 780201042 539161189 902277936 425479419 878559115 424477274 654780751 363764709 743933978 168167824 348847739 918495595 931292635 186691932 280583591 453311912 564915715 756922305 806978989 506337570 534666892 755781903 952667876 749429184 820844092 519090320 708131327 738063881 749448402 139709421 895847317 38633766 350037752 905631291 977441732 525166071 772643233 29399870 336272754 738878888 919025976 996731492 997122447 523696873 963517830 420799339 782228768 189671906 206967891 791019060 831939013 287332504 918282915 559954344 879302114 625969574 639888172 689981924 829399174 270716821 707898342 455199774 482550558 320965449 671787274 817752216 906360332 821581205 878662031 294463187 716799121 319575327 938096138 128118805 728849606 487466604 747731679 753298354 833072954 770333686 804853443 816824812 891765740 321606238 464404789 124694297 452302102 210142221 693941291 982494766 998864471 913865722 952921505 104536422 236679393 776698868 969168671 873845696 885135114 633467419 785458994 77400650 221438611 599948238 884133680 988635386 997520908 407214325 940505646 516335886 544465342 382483104 687393627 541885459 961375118 279692963 632843995 37813325 774495985 205799181 601773761 989170493 998868188 270269442 961798013 628852110 943443163 730803449 737932991 1650542 718818434 364412167 512407654 911367716 935732027 627075283 852125645 944926300 976122049 938310871 963748333 738868520 889721674 334744975 591624920 979749950 993787898 413318595 831450385 395309259 624389614 467429521 725192680 707248125 959469500 856856314 919777870 264869691 697633003 700684295 958726936 720457854 760923116 452248028 935382946 543625314 952580934 113561451 238471078 91787865 992693877 14029437 525279149 802883000 845045546 616619638 921484478 539077682 881445943 726908595 734736299 877426078 941867884 464034984 991212442 683014649 971680287 213505701 498890573 351264687 753211911 932149398 940137330 3534441 693456600 493067057 881491757 403702627 979152684 973491100 977139120 299336072 502221834 212644678 321621067 119268753 767819492 196775174 329199971 847788114 954981955 445872923 817090230 157037143 886397580 645000289 698656002 206260453 416677789 672436243 960636596 382446695 896191340 708325616 710308039 3312109 85421768 354531736 676076186 848127676 976324986 309378524 581104852 795241119 972856680 765483807 769701720 711836533 763075293 207975675 607027425 81335027 863146131 463990297 751884280 777376646 795742840 297569047 831734701 913100711 992748078 247491697 555090116 876888196 946570366 130096192 719598369 429077845 667899173 58228933 83312071 474568784 915704343 237281714 554378497 819676556 898276068 595463352 950538590 528896463 564896385 794673486 821356444 114436750 598266793 554091712 611459834 583174069 659419502 805623983 864879345 515105747 585043845 170828870 298703972 911445983 926512684 859066103 964365413 617883681 772448287 62738218 854038737 390947704 904306079 889816017 952563475 451452483 757979634 181598889 684278640 221664293 280464663 976183857 985677901 514057324 696450838 133097085 761701047 995579940 999879321 681122831 915251187 843157067 877351656 102196796 951183638 462815353 678491012 454348669 825747456 320641060 337205233 466250899 759339708 966253785 987175760 741504244 979675582 42621384 292785557 484728894 561470948 894997997 940936123 257899283 973025064 299411994 841576939 281835235 983098952 414115602 580058066 718645349 942609877 54296861 281050151 708776106 740914438 511133707 530833486 227623796 431590048 313828039 570059314 218402854 642724214 933753580 995491100 624224481 788323828 719967910 770391698 998699604 998933581 830539052 968299789 494070107 816162839 125552165 127484668 951014973 987283175 742889082 980247303 190975999 517660543 454017754 593949763 588877566 959877141 802857015 920860766 747466030 786446267 698697164 900951621 357559834 853470730 535961661 617317316 513818798 667436263 331295840 964410843 422880120 712232998 709621023 894234838 365209970 670092627 316421557 885894344 417786977 971216808 652530159 767117984 506687140 862252856 460273032 963875276 956161524 968371166 775415295 820809354 781954948 789585659 311351598 560669977 770512182 936117023 608922500 641267932 702366907 985165144 93728098 270713441 385346546 450101259 994147680 994983041 521431242 800052019 488776207 867909593 220505519 338367925 126717550 204290696 784572199 990939472 754529409 929957891 737722523 810121851 165517671 927777684 759624917 931215132 622128737 843189659 371542282 436333579 520550712 682386291 892543103 975220314 390835428 589189768 464857345 595571120 231619299 936658067 155160946 855791705 836997897 979709957 505483472 957846164 487789565 959497520 726902979 964882377 486854849 502610295 286350925 289673450 398236728 684131240 596028320 995766050 395318480 630474454 864848887 891597696 706764885 902042286 567689995 962921177 34966488 882342942 630754600 802118650 542741721 922624776 115110473 576552934 532339336 772710668 519582711 814277871 465533844 842693399 910078742 960744970 284176733 438783827 845645481 913156761 17859233 272975833 315830748 460626329 680280988 989041426 190807375 520521213 891703345 953758604 578373984 932359646 353606539 605947638 166677897 286023751 11062967 933719983 189547697 480606646 16862393 179019026 966123431 989012360 892523290 947880871 946524064 991819670 666447816 760809856 945210532 945694222 267909729 600695910 338897145 816551928 252553120 985666830 207070333 974038228 68132581 272196225 174434381 177090975 196189401 737995036 596418333 802370497 641236971 825932650 495354592 538477728 539411789 763899686 716769171 934683676 411916642 673956518 346537471 421231187 296318071 536770673 631523133 721633111 882759898 897283961 113272147 408185473 171752585 418605963 273942507 503329080 34614917 455394790 935008156 978401365 506352438 870337709 494867343 621953955 850727309 871393153 15534111 117488412 291478020 907743056 534755200 730319201 710636710 829305885 55108275 510890813 713790207 734130705 923687052 963094961 614606691 765937702 169712421 854607890 256599537 866208324 952152219 997592324 505979934 562174028 344073510 588190708 654669935 802949831 432066018 971210211 739870673 773997843 982138591 985951399 782198999 955945322 98134191 973873231 203690748 651066844 414648665 506691914 759956727 931782331 469847745 951445348 231070221 325710772 285480058 427660542 459826410 620310753 708634756 784052160 695303768 853998740 250715907 525264727 857249960 971267803 510709083 941886378 737003728 945513634 233555311 449229497 884939152 894633439 315424576 759167670 186897672 660016760 648627699 779093978 978708973 995222935 949992160 971848209 304951198 411276385 122974714 720920093 393588063 402390235 81714449 433661673 578008861 794503403 377700029 479454151 395978987 850822329 926345823 937844552 211570467 739232247 935520441 962540946 589846224 946089721 397730402 626703552 959549866 959921391 497148319 668807222 815738627 908835336 629229836 828312739 936708574 977974703 830095062 940119797 259143942 820306777 6476292 39299610 863106511 879182129 210465804 844044232 687077878 810440628 93765942 728689553 876417004 900901491 897380708 903269616 335786790 445512088 339293509 825506138 435900154 577634034 978613368 985363702 951302972 974981058 370813005 647223509 256018579 684720646 83295661 926752744 754147147 850780161 457006024 755198616 126974680 627037526 422449377 631859129 316031740 999920910 14611510 83234717 50240699 815597692 223543038 482247773 47230740 370486556 140948521 939506655 909524034 980187143 218820692 484115019 683377639 734019620 933212120 952843902 225968668 779750104 355561758 915880680 688578834 793779835 179764374 563072320 61394579 527499964 450791954 748061042 768493339 777831104 394960551 549882224 693715345 851485577 797960828 934045863 786654371 939368266 371073483 786416515 215671461 250777250 728718080 821561770 585731829 797857569 15831114 467741796 899131696 928039748 829223981 848204389 300561084 616949700 118427900 509544612 816501718 969109938 654881151 721080425 161055705 673930272 807171285 928932698 161399415 913413224 234159095 801075913 432480175 565842200 54311029 88329971 60840490 123114334 371818227 717154907 226037742 368063062 740549782 946289832 177519013 876925593 788524648 997238759 306604168 558201518 308990978 716419707 426137579 848159836 173423926 921059044 858069266 921048706 470235936 830794542 413001488 801600313 886113524 991700665 438747399 779403746 214074643 490348469 894993097 908251715 527127509 769544627 982783182 988751281 864984991 922267654 462983336 495447490 56432472 230771499 415751957 988567296 346287549 642485336 498855338 570975542 141935437 483272297 515027127 982959677 591015032 668555710 128541345 558199425 899311372 988756150 118125699 206305124 164847367 873405256 627047517 709884048 250939008 992448576 825375578 846336891 834520927 956468035 614017803 717880974 658040184 791432216 256619330 557997868 580421686 802613167 697065762 911772675 735916750 940170571 912607146 942356994 170649765 452330179 887504993 915958894 548701915 623615601 789371217 957880746 286074563 719498390 579313326 950226837 286543264 526046244 193215244 515869466 95915497 566744934 172980268 235466944 983752559 995750147 742499158 905207211 713608053 893237969 975503656 991804017 48373910 882310382 108201279 377677453 415810481 998783122 705358261 999768014 136384466 250382387 75502655 614969837 264176329 886573893 930222926 966995109 895922574 952487756 650810931 719649448 394120918 733433596 704122427 775555766 34572515 576779739 642150595 863964182 177789781 537819362 246647492 286232827 425698781 918949467 216461651 493842975 487172887 935946585 638979802 767119646 445754801 455962126 559713602 813755920 835324522 926859358 763707423 880974182 631741658 840488112 281149495 706797594 266811301 972093362 646516537 647267304 443372675 590389805 494403098 755912444 309547806 515550294 969346989 991044526 534256740 744116339 69374128 320975467 574353399 606083624 881461495 966448809 295781574 529528600 359701090 728294871 364682000 704592888 976093155 985414180 929723904 997625485 629277332 672350797 566155855 711929175 583103845 750063255 38587755 807074822 889364727 946099223 432522587 849808137 200244356 519118255 439044839 942799396 241790798 659652150 443058257 525953496 979813060 983395555 211176708 834973344 851206906 852713092 903176897 966137091 318390953 704862088 637144552 858062138 209652578 947303828 566020745 973538741 552765451 607179336 382981038 640884836 667517242 977190936 260900236 318433544 739191020 969817796 674561355 898028869 337704712 832845181 846205254 935592323 519488579 894646493 192305130 979610173 887716920 969163605 379768408 472975047 621313484 657050996 762683075 934202516 921324139 944265982 685980663 915598999 569168180 770579018 683299944 932467587 159113944 288199682 179257661 609464766 498725657 576548824 468029161 766578829 383856094 607771783 897247634 933981116 770591591 813583364 829965885 869032666 838009057 899493215 749564123 974992150 886510456 943196868 515817399 562458177 924859653 991739971 296847308 456907488 21041442 832073640 665693597 870436022 458904972 473495187 144159222 434236437 92317673 216702858 989501834 997835404 770327110 816074664 220459989 497975315 942988696 954029166 475052186 575677727 963608666 972212965 299484315 338337128 942696105 957532645 38049029 147963913 948677149 971548556 947175460 949245668 684840308 864853208 370842923 437532587 513382476 843801587 119751911 844287386 577624197 598635701 670125633 937420234 648237682 751423381 626048640 947090259 294923060 337772999 410940077 914497222 776016355 813925003 589734099 607557564 251524652 762048008 133314122 763061554 102742020 767761715 62462817 775542424 156539544 507079814 984344548 988105617 517875361 923737117 473539782 975377375 177980 946627101 548866236 823680316 415015951 628825507 307889696 902933244 347536332 376791443 321819371 402381656 396081613 640467289 814637055 970374696 431743616 566924813 770356518 806955456 20888394 397974558 821980813 977319638 970901357 981314258 62308885 878032452 597498932 867134326 533766651 740162862 751511792 941948935 44214961 432587347 608326482 738353880 833985576 885415182 111139637 877178044 810115739 870541082 66947849 376731975 804848178 861618304 447675858 744268266 329482353 534650636 23476696 319603205 223746610 557349215 968696226 988916481 635635714 761095285 996321299 998844001 68768514 180236455 332687511 357450383 674954964 780594675 823548684 834549101 435743458 900028636 478144458 573640647 326732796 789171837 710919124 954452967 819861403 976257917 620335633 847506181 472552939 919873352 396666020 786142189 743183308 856190529 145986041 151041991 761129422 861845189 349454244 986047954 203243715 648930496 599675127 993677117 819768086 965943006 713510551 752746994 111463844 894103973 864729287 938754299 901212731 974374930 531092187 761713853 910049287 980418450 748993753 782344228 744426387 870708505 409926254 865176074 532030530 712685047 563817864 582156494 929544182 934733059 616396664 712244100 679519951 767045949 705242539 714318663 747013069 894863433 128134530 839405124 178978579 506079742 859609073 873789748 803898509 986734901 477414033 859443406 873509193 937630346 44739674 968871032 675008922 752454357 870655653 890221899 70379333 480204316 483404233 720205029 50273303 963030595 827625235 946488511 869081220 993513347 8901689 769769588 601973449 700267026 11740883 457142808 2376212 556846193 470697547 821427122 673006765 844313159 492714987 685789339 95287020 886854093 862347826 932849784 888172289 985449708 657996836 919897239 441243806 609658514 395012938 939045548 146370198 770358622 560562020 694387476 920654570 991972166 65704129 887769878 497607802 511655250 747607972 884147532 400820579 513129044 93835601 180347776 123537046 966432609 200631801 369844808 204659481 517724223 861414420 863575700 864735844 996360176 661934796 891138854 681709572 979602010 333984325 442008451 625529622 991580718 734987447 740777922 96020787 395765280 599472470 981441064 207575731 991010547 113338023 493150857 81018535 285818543 54586777 110691988 78667696 527943115 768992062 865202314 647023781 655136339 457577596 508848299 274525865 758374653 589070280 882003724 187392222 193150969 467005977 800830155 920965962 945028348 433336532 619880857 988419831 991683718 144360242 886219073 24431687 177134119 476175476 609557007 900339451 979217735 453278105 790876352 451411842 668176803 348767003 781752217 879348179 936118478 678352105 996853750 664589677 989163106 332803758 809600431 51516503 871942586 311903618 746872499 101748397 402783133 145513205 356323627 845499384 986263664 280544077 594531563 334127351 546227827 118415603 124053915 498539709 778853230 418657417 906926854 961271614 995430582 731669397 948426947 734138198 769308556 76392205 577693233 380105203 630494131 555512332 979462538 523285036 791389914 970158089 978946548 87666666 281208860 586475432 846964284 775128473 872006891 79521027 963171697 251793266 737233450 419728205 553010024 971058494 986259739 200364311 595718708 554219221 899172242 907756866 969239959 674872911 704310971 435583069 496505903 352031124 875113038 27478190 503198622 698379951 828862581 772439209 776267346 916862194 954007852 805042228 989285044 49758388 669759263 18721925 995435366 154574235 829478256 782500474 819955118 867049501 992076307 848127516 878410509 56033900 56658141 77205769 283892368 534801901 714215119 516673066 807275967 775445038 839091427 964790526 965610204 172818118 425826755 432804496 944126391 264933621 311896858 333831515 492924758 87359759 890611333 629445716 802662805 543006156 797510638 496805436 550238138 980024753 989815612 904802853 905529809 990827166 997621217 467880912 688973752 18033279 692364603 783758819 901494245 790917383 870802043 9870476 583443024 696109029 756952148 412330344 948676961 532314665 609576590 483822715 735157684 851078037 954292464 720430989 925595333 750924655 851454724 359647566 370375732 913103133 965754743 666765051 848002126 97119037 120704648 559683351 785529201 73807111 623368455 421544734 831086947 592604011 682826494 920610587 971155592 376494647 830303778 176975241 925471418 745087006 845267785 282628640 991758543 308850031 894639850 123402276 882334251 334912794 813651651 587347189 966280460 926984780 942535981 922047468 949689455 497508802 628054296 910291092 978929516 630303175 815166691 440953201 452531643 261158678 843756922 192758661 454333609 459917859 980829378 535870808 547781640 252895970 454130378 768074273 858221978 751934798 790632347 219732451 623028268 928982713 973424157 620542577 865448439 732985284 779504228 468365277 868019786 34216384 399703383 619275227 781330366 745848197 849612247 467686994 762115653 54153555 222092762 615616970 647211785 652856171 687797787 216287198 326445339 934546898 985906826 129244999 994982541 11657981 785768630 975900104 993180847 61893414 780153506 582585347 748182421 598767850 933540942 601814202 899503163 635527539 977080275 464198016 679721945 477483271 592589110 246270549 404295980 966033096 979437859 638304486 736121474 346070702 560407344 5990603 907341287 250256454 297687799 374558799 506106512 481749119 729264731 286140937 356264561 486574692 740263964 222894482 626072611 470408028 957526995 68218661 870815443 150425483 387041117 765110275 977483278 212349821 419930870 426107852 732018381 816379283 997723205 475927353 882593579 135280453 681399475 664521562 719137518 639532235 811500066 387607292 775569108 899941165 902460049 13424034 620409919 836865333 963831690 592082696 947896334 983224184 995692634 165082895 864057001 733826058 855888646 732430895 953117000 890863983 998919757 995071036 997179225 759665512 970511452 275324077 765323802 286593647 747416265 823695630 839282366 582871923 613864333 4227436 92353659 343660694 380725593 97340621 450853085 815953088 821482853 846928372 884320174 427473539 709756203 11667708 221622163 269634391 541075420 315498112 980331404 986870668 996329490 255266194 353749664 74141564 952751997 895647078 927767887 92359441 733990830 859878720 907447314 497077864 847796461 104019636 366659606 179434173 415642468 903817156 995502256 604660066 921894924 80398901 846395766 741803556 818394769 346750954 396548806 593796528 946022664 810678885 836057946 881537626 912771137 532259380 604895022 216451890 473380848 613332152 938828393 555711093 790041843 699517354 839553654 303212904 722689176 30328832 768322438 180072212 335305951 321988610 507505291 359134829 479266694 893803060 979841156 109934163 917582579 899716221 977989817 392509100 451975141 923393099 938933972 438335021 823006507 959870810 961614698 919524557 987824025 615409519 687631978 195225508 356811009 582091776 852578796 785801025 903188045 128676002 365528842 180728267 358265718 173896090 774482074 340123482 497981540 962384474 975329815 624449920 902075036 316247929 899693095 173781437 383179667 92218988 214359251 117238977 552579467 595256656 939453754 141200737 143904941 705771625 716581912 762131666 903741430 576416808 825856119 997428817 998474534 116122714 789168570 29359856 888571617 954218238 981153374 935715188 953194744 869855383 943982828 194948607 848785400 961242200 983363592 649624144 807599264 175269136 713087841 338557541 596079380 726469799 793102658 171437717 679374490 192241352 254132527 606471658 765724918 406494885 788308015 203127604 386671631 943249433 957478149 817465270 932491794 859355179 935300084 857423034 984816542 467448568 609694700 617019033 882558931 566578323 603187543 978845825 988187753 271016322 461197896 720419379 910657709 976828907 986243046 365531893 851080116 64241094 933380756 450518915 643427870 943423514 983512941 634454063 984802713 854504234 919679135 322333534 712800931 751818705 891450712 239554778 920009171 953791487 995064412 373375250 868450059 543255350 804045829 317914221 720061913 195667815 204793834 330978048 411656078 280106065 517146713 334272198 459271188 185347182 417714333 327583607 883861914 653340211 708081378 516820680 847907178 903768112 960818622 751744112 814354021 807110427 825512992 392969517 966375061 805657385 937560340 640932787 817237753 369640119 412627751 542098784 864552583 266017492 601014914 768411694 875712726 275921745 752516827 284434476 510962098 128269089 142894264 181506053 712523407 173284428 375926419 588868308 952784977 742708754 985030491 72512655 734896937 674796610 968561511 273740608 937251149 406403323 982740849 703344681 875699586 408601896 998218654 570759880 699303268 366426069 998433964 188053161 336260445 753142264 825776438 525063355 603072738 54691142 377550988 262831794 979610127 898259166 997929075 970834049 999973351 437265684 690707854 671789080 834307398 308288825 557860721 301236585 953235735 218517383 979168863 418102481 819371291 608224535 887597127 241011844 521922530 11760380 956092931 187994146 859312916 196029203 196148064 312364669 347397139 887586019 946576087 659852554 940902180 299427633 397932863 305455408 497544976 246725477 908739924 299140093 475879210 574290976 821279822 803586658 954022372 15423445 849731293 12786502 887338418 867782664 910605929 102525306 798325527 905921092 940998220 469291609 742246102 94810870 509279116 150384199 154533907 606059207 862901134 13124444 80640238 833421695 977566914 526904042 753315309 225983161 327557072 108832545 814048748 65428716 259204091 363185730 425707286 903992846 958305416 680837142 972908083 582521944 863025546 175718607 944027408 448033744 917631216 349884357 991276138 593120618 869723690 234184606 491254262 513187997 869786065 116470981 775143272 270324724 721558979 388558488 464636044 313279088 721126222 210291442 368562382 352558128 866516243 343578353 969464435 265119083 885381560 374856607 614505987 304728465 695625424 918660647 963869178 960880552 987951810 582224982 982243757 840807941 911644159 229961758 383087014 235180438 961776945 236471729 827972814 940244266 948648429 746204853 893929225 494790069 815686335 589348663 862248822 463563900 668621346 640794009 772979545 856049696 985192570 124199772 629213594 991947904 997452260 963951 110437181 881880672 968700511 178393498 454510440 19790969 532536730 350661707 806650598 594890 369526786 728073922 922663409 897694543 909890972 364503935 997471941 784002358 862618176 626675677 833638520 851216009 874977360 813862932 861252454 963259848 975566920 325424321 702604934 831555603 956668984 840333268 944019604 9621771 408100249 822014906 847175666 679422253 860131532 160765741 658085775 48524054 869443881 7720274 336220926 140893653 468236997 480061231 908247297 439856743 662898623 272544441 619975083 620939847 925439754 908052569 942829137 448431846 567882879 987945024 990499189 111801123 674729911 950187438 962658648 436909261 774631691 197542130 681785388 233753538 666064756 892650416 975363831 858302959 900850948 800450851 981952253 749196058 887073470 333578648 378421070 239496701 580432409 26577821 153341857 309682537 473237656 226022404 492404521 508513475 811901547 653890769 896760433 73549396 236053165 313655089 577132313 484200843 704989151 744679696 963347640 419138001 750460449 11769273 75652495 216422213 429036534 279071881 813025529 740610903 807932347 151437171 209049129 457624489 511263179 209441883 612855987 772974481 849337552 336572823 953447235 214556295 787636397 190786156 574462589 211359481 722624014 297901029 914284739 949183510 994934415 345065479 611224904 41973821 908004611 903407408 917808698 71768891 955443360 997614648 999725873 213284358 519891838 90818455 310240814 74936103 879953879 949656799 990119350 315718977 571077520 664467126 989556243 76621682 338308921 36811089 524082304 419878577 537732394 911894248 955247277 654518356 817344598 779035715 980810203 172336866 919195256 321549700 663508675 32812628 829268317 552265230 709840347 799068004 936147273 486972467 736604936 367746187 521203795 300682916 962646927 763627197 848647819 533091432 543592058 896348228 922235549 145027282 281487512 964527656 993637244 779006663 849776655 267663958 686390785 600977013 881000012 23280957 166735503 761344291 991600050 266043913 414925147 896948535 926923733 305664116 527581419 455554488 923747320 408547043 909016287 382563354 437627134 297745847 813630077 168431327 529613549 595603127 965038504 87319739 315515001 188690858 575062473 544433895 782161484 421295634 531925381 227254335 456788800 757563458 759897230 782913752 892079498 687221931 991407647 745490009 809377350 814450633 939241156 663367491 664094588 133189097 266322084 6896694 949531913 193530853 918152063 611075035 612469267 588725940 725080629 545362699 862270653 838336116 843803565 518245358 533241601 214334613 373933394 181086360 598748461 206006168 240332110 919566049 945906283 351944261 660378782 982628891 996555018 425315176 906390818 761904552 780606865 116620170 779400286 201415291 584197073 297437399 396067859 982434885 989526463 853376403 868075188 975191461 999822632 622191504 759241088 989045330 999064075 87951783 614247971 665447470 683171877 202386994 653297000 564175382 632265444 148198230 900966328 849645565 997779848 564992129 955064686 825112910 851900461 312981724 541674474 290724464 859609254 45568640 406601508 175465286 780318057 280500874 299857941 685638924 889355558 526706654 772259280 352210216 417003554 673277957 845907126 577601515 793691032 893861364 981125842 199009753 263626462 103830341 271618397 793933484 933065006 945212406 990552731 862955611 968082165 132500679 622611643 668315444 992445671 603093739 986263132 545333803 662460379 904260688 992295721 736672699 896304004 177048289 974492850 751132853 867907626 376185147 814328292 258070678 424777153 614267638 722621450 826712960 932690079 78546366 230260071 601834950 747837175 674496039 771963929 667609479 767499590 467094359 487161040 572573659 739653658 705661304 774461951 517718586 939953485 651911896 792026371 572409427 992393716 826909711 944575899 230682587 888702689 668046857 729374817 985795048 986111826 730664575 970037800 61976545 629920950 900778010 983724082 44304639 659579163 649838576 897026573 467901709 871097827 913705483 984895437 19019714 400374842 888860600 973472298 112744551 879294691 722077339 938601920 609951398 639152655 799498229 954206094 288913337 563178829 158762412 214593604 306272108 351918748 853170619 906403379 714904103 790295950 804729329 983390069 915239265 936790448 440321778 847354085 266088018 451313968 313932026 972703761 118870166 415734214 985144610 998364547 519897452 977283955 2411067 880298834 701733413 979068557 973963152 974699116 472702650 700339385 721932897 802071958 437957839 763947283 784889499 996381546 896704995 965849872 711488337 761450205 723568978 916382229 384824829 873822462 403750213 516702308 569572063 800584766 104619382 455623039 933948763 948817000 382106066 551248845 406166520 735937252 802704660 958588813 67590299 734543944 949094043 975114229 967631129 998284057 711771789 921430522 375461739 913059926 185222032 258229246 237746745 736430958 43571208 866447709 149797811 367728280 844088067 896504743 863301920 909488647 868370118 919631630 513532946 968248565 740726782 962638395 549526897 864016942 104005008 768337075 728199015 830270843 304696345 695626697 340481867 630781018 417443317 890941348 886366939 947163360 506491260 765346932 721233959 854219017 28240461 430105402 194853812 645865911 879138802 986060752 668640592 697559349 731189813 792490525 198273534 396292931 388678943 541232406 732962680 893904103 980764919 995352342 833246412 887432541 689347697 961175247 584420194 771737698 768566295 818038180 764696509 780493082 40396522 284794831 163427646 729991860 679311622 952552239 937191985 942824823 320814987 860302722 692169398 868864438 995056739 995392963 208404600 641269946 507892157 652588457 443715704 453986537 897629595 898289666 715389720 993199099 890775273 925285428 710278173 920917231 734442925 831625766 401186571 499731852 775444748 780024995 970374353 985761129 376851368 736992246 536472787 857922995 488510489 861537994 476590242 518443505 865705785 986750175 118674903 530366461 389136656 796886338 675649593 878014829 684528470 985482120 212345677 803174424 60045489 207231862 246697675 959842923 186822977 764993661 357801391 443584065 607240877 925074455 311061720 427754228 854197569 957759238 538273435 857668386 964102109 998275764 879371879 944777960 900055561 970446162 390134442 869033559 371194386 739249603 775812505 786040487 129565464 870269768 747346202 788646103 2254107 776256086 514274187 822412231 390891749 494902040 969516051 996094508 327016608 422695593 656173971 764562929 180460128 708787805 510249553 518661075 39255318 172476363 324698780 835624735 13481418 562342179 672895824 765932859 581294015 715177701 799971694 977459732 889071702 951496002 673424345 703907647 980160418 998870321 151594093 979127805 62985296 861376618 746094989 844516132 381274691 660323515 47786923 436368317 842312109 995699789 168084963 960403652 29759388 910135848 117983946 539782225 139360534 441091561 32374570 815480207 170995447 370957402 57320383 196490836 181343058 883519499 258187940 546341701 226257665 553413807 514950479 887851299 442403135 789545770 129443193 460727860 169043264 892319452 419468343 421146405 258532245 705035119 612712829 672609244 595293507 653187563 983142662 995562876 110292038 654269545 742625532 913566555 120015746 977106361 570536742 859426333 87858867 142063225 634361542 932744781 282314095 864356269 149524676 675127148 911377923 966696413 799493393 926881368 74473726 708997099 596600204 876972451 539515106 952589568 110314083 406976345 73181411 562392762 613208743 772499626 844229615 862606415 667898788 725619262 995568277 997758251 537420411 628370462 308796538 819594562 897104522 906239474 189120372 402741915 564471449 692017113 692120669 818100162 151195034 181886572 513635519 578518576 745430568 922605229 579821344 761714299 223022700 652901037 328493071 768273293 808615277 979851377 855664013 883908532 149202997 232180818 496397137 935772626 220218638 636627028 290876342 559040953 606571796 920775100 347494517 480017423 148854627 563294592 952542857 966726222 989079108 996373652 891817700 905709935 951602776 998205631 112504927 135119356 424095323 791497519 729006737 971651762 829646401 883053723 185243636 218597925 707327601 898635593 723211010 888901624 659053826 866476074 834699466 937643404 162454743 732505501 913352145 985400641 520947954 933628335 98831274 315720809 228678392 924245456 720121990 851293307 165959235 441416574 942702821 995997384 206317898 847273571 592584527 836392501 66162551 657326240 904447046 968208186 707741593 808515297 387544130 642967561 608853980 844322943 476863005 701558370 459480714 682312567 963458253 982940990 998374884 998516366 813960213 950343439 278768957 755701315 582287245 798670823 674940149 966975071 180159523 832465043 127449363 415805974 30744337 124828267 266705884 388384290 307296761 511945105 593092781 769518115 326675608 962793992 739762669 855654721 5774702 10594949 900592538 962561915 178694195 513727912 152249149 916979832 792014258 965115776 180127469 656392503 395041323 857440693 814474641 917369076 678916222 698364501 505999033 750061762 612911492 977936523 175819144 584983491 413256841 466526565 721825464 803407117 248611875 529459905 681763642 841718990 622347565 985906941 423805201 869718970 181208969 282284139 604736115 686607761 442137712 619171200 553477409 617528328 578280437 859146565 906255677 911930182 235592287 442915635 176087932 189425330 538956856 782662157 182649780 486727107 38826188 215358568 648753575 795270276 319192922 330823629 252970607 495810905 582202273 721882356 581277828 633785617 697834863 829102362 124582281 903598205 933378760 976964776 429115966 945905565 256797441 780226527 544247926 679068632 668581619 704220383 265462264 417014031 501070284 855366462 696742229 835314154 182434012 853393365 767792313 840702720 975495889 988997066 304772859 454550781 366021746 549791108 95711586 368936636 324688247 378650095 895453447 946145699 361047642 803723574 590114091 944287003 309213841 709419788 753273430 855465180 150201077 652145888 162338622 505421531 529966761 550954448 708804331 825180952 857537273 976193445 35781178 338344642 978968207 995267741 599874555 666604222 124652745 480015898 122458513 840390344 398960838 643116114 983377290 999236446 774030139 814987571 806114994 858913733 352821465 388166694 512985475 893376153 328722875 949095897 382426572 419430386 264344906 940823546 401702655 875899628 687631340 728582057 109267993 282687105 786297982 868022056 465787097 799648537 40601482 875046732 153678282 475694532 724513854 822713241 958611952 972011386 403105398 596795403 565532153 573806284 545888681 592098866 576104348 781501027 811166124 926588079 491543114 984558504 120102300 514052876 567782879 956837843 170686361 293077793 823280864 844680171 672351957 948686144 773709189 997887715 115551120 498836032 457390583 831141772 492836925 959837605 628400156 925496294 422775832 690093327 42707000 536510717 978784106 996948757 675463043 945584925 68291243 296252564 312592437 551040996 325771213 380523062 212778504 377550842 587263858 805572692 176491934 804651798 46151334 543970888 118419185 274506392 204836780 600265929 499219858 752941591 9638517 880884453 489564025 589214852 186828695 675577546 245196192 293481976 176293228 671325645 779948351 880276035 456446876 861913669 109106270 325344401 815783715 964666818 787965017 996937638 822571807 867322801 363471617 888282588 681497196 927508829 788950140 895943567 657410780 785777928 349343201 370816612 909536427 911845484 856438397 992504367 396956607 533232263 433523019 489538330 553389420 583398819 165813811 470924601 646157329 678850727 524192595 690329728 93285320 709869258 342390558 697541154 747328282 832464611 174933122 260472998 203771843 868000494 145982445 656262698 644560212 767358228 604038032 622239857 433330469 912158601 261646088 385708148 552659634 622565503 2465578 510178670 354959046 902515179 878058954 969372555 756666739 809184634 638220690 815649639 274465758 431543110 588863905 929693219 424305190 876148928 933734480 971942070 358249809 608282302 789367724 933813579 114733880 593934665 749706374 880809850 598674274 805831025 241922294 897465530 955596057 996068802 543645637 734516434 626308482 626785231 31119221 251192659 854825739 870530655 777562777 861449989 497792181 587166437 708611612 996757101 257123106 409892150 273039786 394750493 681693025 955717283 582923403 645584072 204677300 896057326 882861749 896341709 373895713 581637162 607639633 644584921 585751209 730761492 445805866 579687701 142385735 766042639 4425970 100003521 296580583 714258888 258945707 764673747 703396818 863854295 51265816 93238352 46750816 486230947 100113252 638403213 257283002 748527746 93759805 510342239 281836396 470667983 954839230 987900976 286968839 912204006 120996906 921686298 781108213 934308999 899323564 935918550 832969211 989776059 896377752 986372377 219628323 470810397 33322879 446069977 590796428 687990070 156912616 863262360 695267111 976460813 97088541 665765443 714907492 746006528 830422928 935022757 976536893 988194507 70909476 823703144 156072078 867907660 346232005 888972718 838727517 929222468 682297022 737928549 371015140 620170693 714246995 722353309 859329034 951414452 309126333 588046616 220107134 673032211 877626262 956756123 597124953 644498691 288877668 458515141 844059554 919792280 672732711 910817301 533418342 634775935 822284853 822746616 487091539 605587458 555141869 667823415 204911970 587985273 115168908 929787288 161922787 629127905 713270082 898653095 414754717 482041841 245347285 284991567 87294730 137483384 73287021 872422090 256404620 642822557 212754776 919223622 738651934 899340565 533169995 974105755 374795491 585662059 482967272 823766039 679178507 708592915 655809866 782674137 16223251 121416648 171783392 879250447 659912315 924197615 827092894 873637841 125906490 907422038 900413377 959423717 503775473 599326107 507015805 695605418 150943186 732161299 360012238 394566668 495806969 819633248 113561063 442263764 391789136 773442953 878110347 878555722 17414724 117486533 415296744 836272437 378212903 382174471 391706234 915850553 613326826 865956001 6978108 40178749 54618510 904626948 850002024 882650274 254533534 391188878 516850541 931107734 6105078 996842543 846093108 941668863 459976109 830101118 358446282 977175595 255365714 323767641 609202854 927676183 140876425 921007276 435866807 866034076 897224935 909225613 715295486 992050862 783746439 996587275 892639038 900430662 937876699 943410683 896710650 942330250 917894954 924104667 86931791 497056206 61603530 174832047 556330937 594033535 674329880 842394296 76421223 114434935 864642604 985346713 283646047 592114505 405560303 860557319 227945909 982861870 515375507 714663705 597120244 887487444 423365137 815586919 17931881 376170822 260322627 522781508 854120234 959586810 825723170 826927245 548707791 670700206 177900572 886838739 957064692 968719162 916233199 924464488 778518266 909458981 649963261 880401115 140396601 236890534 267729067 898857388 218362885 950031035 488098716 931742189 380836601 802005918 618914260 765502793 810442918 854155547 463806277 985333602 67883026 561479061 881257852 941144097 82622640 803433171 514733774 717672069 808250845 847325375 916999261 986063843 450650577 891198933 69023895 542312020 629357594 796572775 495734516 894301732 525246007 647215422 205130059 484707641 710888675 871433193 697868605 712284166 649477245 890159476 694781723 769934981 27399950 644247667 36711873 398805192 323669066 352814243 392208530 698497755 272313329 646455951 770438505 964854411 708147782 770922673 106179831 541674094 235143342 534916498 792632221 834267070 670522803 715049385 344042706 770268979 770206506 980954709 621525519 693051992 878026533 973689373 629608041 914673918 417181195 704259316 734997601 926924420 877608560 984853922 69259034 891143472 900862326 959124757 861329978 899798865 256557668 582822362 387365320 802722469 769095087 778208327 958385885 958459429 114328282 917308779 939354217 962196386 545805917 785202765 635394146 747641827 232003809 564527394 751742058 944756329 285434820 886539287 86890160 929665157 910473838 966845492 308565417 641678217 325433142 711752008 457280221 766318837 411129052 857347608 737842624 806123280 698705009 901123597 884844515 961948505 97370682 338148928 418873284 482713018 283693638 288759302 465506461 580770554 910430432 964525775 38127791 806531605 326657673 525036743 752917313 801698393 814299865 861505909 241714998 518109060 160524087 649125686 503609326 945602821 628979132 822602026 436200626 598356802 248974496 761988337 82012979 854238608 615156302 935630603 692649784 905884816 66073463 324733734 295059158 395806875 749136447 766587328 975871636 989476717 586411725 642059729 280570882 858011844 808398556 925767518 645273098 814177197 566293764 599349765 718316265 939446498 61423602 700490026 437843437 953816766 202293478 468762629 790330141 991248546 308237137 421787365 980409024 983498762 1273529 118619768 787930279 953618792 884936613 995876737 380648313 889437864 894543221 902236575 837520334 913482061 908740874 912292147 294015268 655624807 11242216 294922429 508243570 976825130 669211841 689486883 344942524 922096003 340010556 908321228 403004961 860248701 124490370 940743024 222012067 696858885 221350547 498292493 996297918 997056813 326954144 884382923 731751089 963368462 914097743 982347046 204101045 771287212 137435509 625915912 195101740 660210057 390728823 975889529 364440846 970326440 282283281 778775215 727552175 803031123 937412413 986469707 433726083 594888076 939363315 969235940 450665290 673024771 236352501 559193418 538904414 554277695 418100559 705822747 116646720 473844744 121605902 841104725 766295490 999043471 727691661 904272503 577712812 971749244 538575522 592725590 789685773 952357201 322751394 612416991 524608218 873421033 291160049 576613031 697338346 993397420 29570566 974408882 385825794 818049177 642718387 886780953 945785872 998986531 295689608 580122554 530718661 674011855 142656606 917707992 342019348 664449620 943992209 974026471 655951976 974724706 141959342 492157168 575451408 608551427 839782423 943518802 202711283 219126562 63748755 101753677 482106432 905665299 139640800 869464371 924315005 980725104 677995208 763820270 117830188 945435204 111857704 927430801 377571302 605688115 246588709 886514525 596440842 680839459 656859888 770954214 926739418 975880319 860814953 919277501 337225043 719872130 209906011 371500917 997885936 999655746 968854101 997658599 940282113 990870700 501903587 583954706 302111727 440646096 251354046 801761029 61405590 839045878 449556991 511503575 101496284 685797882 125522450 805700280 40647773 582975710 538685177 998901787 861474577 984505306 466436742 729853460 850610751 915816800 487236742 545632198 544960944 673018937 43761406 264459867 546582662 678550886 451173910 489901812 952466587 975862807 290046276 332811771 531234422 693064447 36548594 892750793 580960300 901882367 510186776 768703360 205279332 288495077 816318432 946456608 237378207 426300265 546238635 970542295 946787614 985515095 408569232 923891651 470953294 700811854 909119436 923662099 99432833 158944357 12417108 292895349 332901497 541642301 951818828 955564431 107247045 113191566 52595570 299258379 407347107 546688678 595798793 729299227 663689267 962758103 360417775 739250877 905259232 908258525 60623970 973034314 28888371 175079862 20172191 33452265 637390416 710178154 350001718 577484713 818563030 917095888 37321568 664707935 824786274 920778606 233079891 372415450 432707888 435733648 500133151 690804293 847317197 855271516 863101083 943256610 421891321 475536385 335788817 697612172 772298007 778754430 239341895 995476972 18710736 570700198 234195985 525831458 442567086 763871484 236881460 429331157 801710651 831778342 282329910 746429599 403313161 770291757 325627269 962758195 51759394 509231099 684564343 941202375 289238103 572976165 903332511 904561641 114602029 525792702 648366979 897617914 845828524 919824154 207722898 616012615 721707337 902865444 175712566 587065543 732388683 903114213 524573406 859948902 515161876 948153211 254087551 919797572 371645749 701151264 145490671 554589731 675079572 895571835 450384414 611816835 869847310 982907805 291406838 825869477 185928235 825359496 302224182 859303810 810035773 950542241 64992574 296986893 361500486 528487562 278805692 341347524 196751039 786028016 224644313 995557241 667226947 781865613 491444042 991497250 139583735 719141473 456266690 691757302 521715357 932074423 409201808 570281362 492247517 873454732 213311521 841301154 472384836 601344694 593485727 872545784 964179121 996743437 617981670 710879166 349121678 352588041 95158027 771360085 483924137 941305112 399605802 718344548 640209845 974388176 624187188 627470942 604791902 722363349 951072391 983718589 717395188 999382677 257233562 780815476 583130996 640967413 635397652 908547918 92935863 774348618 164475579 353235463 403047512 697759490 283089350 678110623 177328612 755680519 301034967 589057191 481551529 906753251 685288356 914407941 771372905 844701953 345869354 600181002 986188450 987661627 418501249 527079761 417022238 827180223 745596373 981497791 806165689 875435184 921398689 930628806 176924670 573190834 854915611 870578440 868799696 960863411 899710006 923130254 208386529 498405024 521875267 967398742 387821475 564158593 148327294 936037241 904253458 951560813 902300282 919850944 690768791 986484340 259046762 591454608 208482925 828426031 252395478 319480396 388095347 516837250 885465296 941606357 772844415 996068670 721488868 860026285 392949025 697434215 549328435 928936785 593379593 868276776 52396423 155860887 424990315 528190154 804061039 865099296 436939364 634907399 241104646 847902130 225926751 979321344 553602383 803740097 94284796 486209372 559597493 610789539 561512442 988453788 604090779 917710604 85473079 368528711 191903761 908893363 949873243 960696337 490902166 980416677 293255693 530307182 151305912 363500775 113768315 851301388 213044075 676715174 956922481 971436453 311853861 667902451 313873825 933131634 650146893 670379647 314314665 733330258 85998663 103695418 340226016 538171113 374866864 955413441 273498844 535730273 43466080 696848172 290531700 882838507 77079987 184234086 971323789 986689792 200222499 907467923 642009032 749001497 178381620 713316125 265324963 958566358 278040684 977373391 267034173 341648858 769750394 984153112 369188047 525499988 45029537 111364279 775874245 904723738 510110755 530618954 174557551 406562422 377752202 937318961 118023654 834514474 100612334 398575604 367181609 636560230 431626461 497504861 454843658 511491399 748860113 950325731 224014878 542293336 946390897 959220355 967171220 982660028 100733768 569499792 778116074 826288040 303539740 319868423 999155759 999886997 4200747 602308761 329817786 534934172 423978959 665342911 346825984 696148435 673777852 959953845 127635541 938674406 855383148 914412550 947698409 983962966 482296560 604529009 451359515 623585910 142901188 864943850 74559600 930564367 125911321 173639513 539164393 705163369 437526661 478160243 162459725 290317227 231251119 679161655 184287181 603092978 440710658 459442211 689947309 948191446 164496696 767572110 29068591 306867297 114770963 688856448 940386207 950864156 623946954 882843929 381658551 567365957 275430708 667762283 30449573 431828309 615038625 728041111 503304745 896978948 959438044 960377717 978737220 999712283 728532315 843241401 590741021 741510662 651633114 677062374 867125289 989501400 494446515 527520115 951048491 961880646 726870611 755003009 317665013 352377056 222487254 246895235 476795501 562375748 574586475 955560869 366874060 945755646 705053361 787749995 148581867 906707163 237582281 577564552 197938220 490192827 13729366 257463155 301082191 970519201 739319977 905224904 383146790 728288147 289850030 484517512 737988704 755300933 392149888 574601128 501908331 633370434 87653173 359716127 790356389 992552965 471695081 883018495 892941087 955582040 984714426 998327143 62619924 139932777 586357182 866775724 811713207 935374535 937120527 962453938 36405694 511397044 773535646 971817527 925828430 986107433 972440679 999696826 944846429 949889342 724523983 955746950 695590315 796282939 695784701 776646794 622404740 789502173 824411224 918142622 3733974 199780629 165344004 924654704 295664598 617806801 966187143 990307499 240532928 386694243 578077815 633336828 300554189 463707012 117441064 655721444 238902726 620939362 12269405 547283830 981070598 989503121 880772694 913905406 292609062 765385536 525706037 531566752 665649995 956149460 407276551 999892346 700232822 772037747 801333989 951001459 234785673 395172391 200513681 769942612 704998718 738530411 417200511 430275844 297960060 716659678 536733513 932260836 63583691 518915574 733573213 999435171 304058554 616730823 36153309 61103115 479061876 672926730 603036310 823430470 274202114 414391234 974225264 982765150 216915693 357977709 6570570 519282681 378369254 507733549 799423966 926640370 55048716 127020437 544506481 817183074 90111503 334135200 67841844 390055297 86770195 420700209 740944524 976406035 115167993 246848482 64846286 716973636 60229081 479666317 993840273 997004899 250043744 523649824 219891619 580502806 149678768 830486369 179458936 348330210 679599406 853608899 218897208 420183064 952424727 986646210 178551949 348572797 25459444 420736438 723709489 982641464 152578371 706314983 229216640 566622971 32546705 959109241 852200313 977470990 867503029 907877104 544793030 792857038 453144897 556060898 833387216 851641597 910469260 930472388 921131808 979193926 610702088 961826570 539432086 771101549 362450902 410810237 959085521 966893503 151657842 901851622 635565207 904188806 421954880 779186003 33693427 764663735 607986376 692625536 355659576 512057658 184167369 773531826 689039830 943366033 762965728 804632232 468895302 879371129 252853100 698259094 363656851 722987969 296657238 396174609 279966278 578332237 366529666 953657848 453918387 956651291 691357732 773736127 893538771 964499832 301312433 768449763 301224777 649886814 248398567 498944311 41139854 181326055 860826325 969143387 360498177 849812256 291275267 920509028 797096711 891360501 606160705 968642479 452991662 693602599 709005923 729924907 164116262 947200816 75014864 803411050 125282433 761991822 426335609 448148777 795955736 901278270 13559723 157926875 944781043 970575483 384338688 793435360 24193244 714553781 972016408 988999598 149052838 505995331 446995317 682313549 462281324 552496309 67256050 595874187 873212807 987654703 98453436 902511881 782378058 977742611 387639263 923866774 446066914 456504815 239724254 772400022 246617725 693602415 362776407 861484225 685201908 781072988 641593301 652027770 31954453 487701629 483622782 853867811 757028503 899565395 351801208 825855843 985187392 991329147 495442733 762985076 206275491 797162471 603245613 992505245 470075752 720665813 354502320 877606767 699254818 983403965 227055437 302321524 234088760 494839890 700057715 793779402 42895136 485823960 617733761 716431468 421322325 651245807 277151067 292314599 898909767 942371426 577504438 733999924 332516803 516842820 554445203 896371481 131109715 165754866 733752452 859130515 656790238 914307216 963202281 969469998 788578271 891951104 873782141 953991979 357745126 979907081 950251866 959815964 131618134 452977175 679282859 977512921 954617899 962651039 937109730 977572191 82242118 850164038 396333691 411008792 797831676 837813173 222293432 559604408 928704839 935257485 210410196 822140021 669424641 870514886 68834214 642408795 930930046 987693459 780384781 966264743 560430467 917487806 264372759 471766534 882059885 987738204 459698414 769275737 714473509 782140792 247124126 998035657 915908023 952484640 262146130 796796097 147050579 854420361 998281407 999294555 628126122 761967869 432230882 522384060 513984006 542298827 729474354 769282647 456478706 760823503 245835008 372857476 783620736 947990635 769324125 940775422 330817379 690348551 663035711 819786970 178016065 587331497 676478720 746945674 564824457 877031001 956407083 956889839 676954635 788463515 518201262 549110897 816232791 999550781 231325195 373090700 370872103 480819806 109787945 736541501 431370733 586316206 367783272 423598333 639813465 766748647 747586182 828389904 698750773 778013663 590601160 727278137 73806122 777307941 990202637 992284991 786104583 788935603 837087210 965356198 178045105 840475767 982488236 985468186 483531535 547806124 953655406 964400993 307280912 726699051 353780535 781170324 448380923 723076310 696421551 790948690 131790236 830802503 53266645 526022891 989451864 996113262 787277887 883500835 695818755 729233689 421474664 465998849 340133552 715366541 779843878 969112122 148556887 709215272 219864686 749634832 364315993 923617998 692796498 893640730 364423179 576739380 916765777 938940690 275054723 960108316 28664954 164554328 100662982 127463020 442929861 749198838 106221521 827230454 853546507 948583217 39933759 399328549 421495620 967818917 648415774 996381054 530673585 838464085 289376014 417200591 11509175 439051300 284407669 610090912 455746219 729257806 596322511 621787905 245711255 828031491 725473176 846575377 274728197 635734187 399495787 595062201 958296109 979594652 647697513 762722565 401688290 453973025 531266025 810750742 418768317 659039295 819442176 873163385 347315329 638851508 225499135 593009134 439371026 591571273 528580581 725869578 796326954 960396516 546435780 742848538 451143598 761390877 145960201 869910504 13377767 608939068 725541688 972246203 874586065 899495740 855112527 879035193 321308209 733756382 220402467 282317306 243230636 967751596 375406602 406347271 933681895 971941683 150417973 691978166 252577880 588786341 958435127 959232856 576117393 826128197 818876171 823497203 401733981 904196030 606184290 608559408 226920990 842236445 267101532 812624602 209283706 316400626 391735167 555491091 731153242 869298412 151764207 431502596 783040302 962146261 431244707 595571141 666337141 978574166 706521418 751674047 660329535 857367050 499826422 869824014 213392678 813791200 726449880 875307601 274315611 321944174 290941889 746549160 463752775 778702636 386528351 522346011 796320500 956758246 710881524 939537257 628320085 870207039 765399466 864995100 906104463 971324315 229328908 796859578 874573034 906376757 89478762 619586164 558603750 615252365 237726915 505959725 799551389 840211735 980114558 998751676 693302835 764744672 487243681 700207884 843871416 994517250 230608069 967751042 486145586 789759180 340173060 802768229 629656744 913778710 46847106 689757691 613673754 860634764 568254849 743615129 975371238 985366813 147379989 988209115 53051411 648757352 797338118 974493063 373135875 492174357 732777514 913969105 800565189 957589074 637900825 879103126 660591649 945506919 679472349 951530441 663317152 877824172 226776460 611013756 322358936 522902471 519714023 755486181 113233710 376294309 893350498 995787102 685252803 885231931 229273831 348506534 85981355 261464255 863131600 931674727 764792445 968747845 30266380 473674519 5578955 465793696 492020432 949538855 442711351 784115086 93588704 136581017 453252763 906051352 383928427 607030756 558423107 847883643 318436852 476176916 265013692 276854351 997681338 999491942 26023020 547287424 217862039 931334839 467968639 697238753 695260195 785221536 682007898 774946324 471033041 983408035 475342497 558248878 285499119 918987388 83655299 148290721 664042840 984848334 124379251 207166280 361150938 671392010 640768977 827601613 836629061 942638740 745712434 968712896 972294902 993627133 856300804 885971094 505825943 715846560 687666884 727948633 529757961 796878698 17070488 580977234 983028024 988959412 296488657 577288563 479182103 934056238 580947347 791230699 354749169 811320531 111449069 227737383 153870196 542582638 620866101 650484357 85273880 373811915 937075431 941114809 662151736 725922217 53561293 728061760 146905049 610177211 351169771 418009511 653463676 942769745 122888946 310342005 34345293 253309049 267243559 418252660 946334207 966895495 256000652 259750497 74627246 324077950 149227026 557705184 690155184 738573948 775821074 915398885 857487041 961031802 686098432 837964505 848022939 865687899 714036816 983307576 773162887 984463519 328351499 382654218 786363292 969898106 484525905 896264554 745178248 759184889 954544608 972898040 861906730 909951982 645135459 863720467 504147470 855388697 163930273 176752141 388380760 925253237 503700631 730139713 482409211 577334441 311213301 719271603 683952568 756441524 107415956 990485279 701635403 985606371 602441808 988046791 336491652 644717036 711488303 786299313 858391283 909736705 503842201 820896637 999622346 999774643 745372163 997879877 161562484 521673864 65403907 761511751 958967716 990954317 638740084 947783604 25404416 362729932 857505222 967746978 534547793 744240776 977051443 980723457 878735230 884845185 552825588 989339326 514223525 523191290 675402328 953188591 117491841 596650457 703264459 730864527 63376001 625154278 194302349 984786268 125464135 385348593 268116928 280887394 920748154 929406568 60620114 970573117 712628340 945479841 560865681 875041039 354314159 779121138 870963552 893880323 872598050 927161707 127997327 467366931 12181623 304145412 436413001 581894396 417561901 896130987 980864700 983279273 747714580 987373972 846549313 986068853 820611916 972822646 684388703 730067111 562650999 935505268 571533677 667366823 601208388 639361925 424522354 755351939 452480654 662760929 61999296 218752294 865030300 928532103 818006889 902415199 437403402 965602978 243228810 328476020 748687745 996159916 723410922 832030961 864010004 936799141 81792444 638435230 297955761 627114972 776209704 838566025 254450561 392921528 334475471 505887706 612555686 976703110 872136816 960238893 917914332 995116750 94064868 254989388 406256104 410533158 53125354 736380460 233787288 481040652 853498691 935094845 323764233 498790522 358723671 989625287 635761751 862353181 436774412 930017554 273671979 631314181 697046237 744841700 413475491 901242278 521515919 627418866 613184358 878353417 608524538 932090542 767382634 904183341 16113405 450798032 43290854 716531657 253735396 269279430 219915518 879446457 503015015 867259835 816620421 873787795 17449929 836968906 121676406 281316269 474657308 896164668 49651438 476424483 495112204 643088847 399612039 856031088 796088633 833744430 386063976 828784746 35283593 786792017 11316941 274550388 547978287 710757568 248838600 974012900 955088904 962646397 321793477 912337083 98845678 412980802 31953717 700860254 524029697 638899144 852001929 887693591 776013601 983362376 579428554 585869032 728816462 950312593 447912435 656509830 503987272 718251173 681274151 854549780 664386439 726722082 439226050 700223767 220924516 948111890 724296495 796122296 310470743 803832218 974136115 980975998 493897626 540675617 700493176 794796593 89534938 136614652 919399573 964105271 115515728 658166581 755820651 952115627 326780176 576179023 618382321 863012954 862148337 881157028 200548726 407587383 698301232 980568463 576235331 692421513 574567903 731788332 152229526 231543634 332487141 803027826 722958712 725191822 210767268 457932917 36852984 617495867 224025753 331557495 976235605 989584511 370300349 994796560 840472998 857237786 221918945 442619607 950030521 964600696 306126358 721826632 173210946 698978957 30874740 195632494 9651162 144031974 800987483 816013550 239744578 383997253 77856186 588271285 591163064 715299047 952036001 992223927 30227700 702073474 414101513 822844901 91781883 330394931 839384378 886877155 415608821 580657789 25265029 176235300 650706456 991102978 557249975 686238361 57269556 789991094 676582879 857246655 645797393 795174580 481742424 532734719 597410404 716497111 546444398 728661492 821398940 872008177 223761850 411090089 281802343 536065283 761237942 935798852 642095445 679589527 391948171 866037880 84182224 779805229 253829454 647152948 325493438 998685217 559617966 912066689 292471941 670261905 76104744 365380817 867204409 927178350 248386139 392788477 487985399 582262016 280321056 461636233 695778708 815237317 29967573 141677639 161362391 733343828 739754167 763482718 917550758 974112937 137449706 640157854 126156980 760948383 69729054 693208699 734771562 952289306 702965951 833388400 574700614 584741298 227462878 640628826 798110139 865269879 207038839 248384476 470049542 563867747 655877607 943406276 955202905 985873956 912235023 950373567 623679626 821903118 634600997 842496433 810926527 933554486 684259851 926374314 687982154 993442275 138474996 147778908 789555990 978439617 932394010 958948199 72954288 530603892 762015352 885069733 124090446 681072927 773416029 822611066 12466332 624438842 904642899 948333351 81057170 636634132 644348577 823651007 565342939 941419959 133273114 341363409 722172133 852728483 906194085 962381397 811281203 990926684 389641028 468700482 879179625 950605618 921582048 983930234 514201623 974552746 624438648 717463536 618587398 983081928 773883630 895462029 699357219 819846787 756580743 883057049 727714842 961561779 683391840 817117919 266036143 936996436 793678773 812543738 752584271 928495123 204767162 845790668 696194392 888907134 198886485 391356739 329801674 623302045 845566534 869037872 864701630 954094253 949650904 992581964 221588105 960818532 75085852 942725207 923250053 962895026 81676295 279377667 344056238 507173742 566365273 862695725 452625177 944880977 376559354 696968083 201922240 345165842 433370731 716666797 190103460 522124660 762327761 837191602 130170834 482831887 679812907 858675756 359802559 909542956 242916965 935664735 150285728 940858120 901830152 929772388 23895833 162806056 545130818 580958278 594842383 622163396 518176341 964042411 556701612 728479453 586621353 949337282 627598242 714996594 630458097 799768625 439904061 823704158 857202630 954521873 183065875 312276068 219885851 955522434 668217868 796722021 199277755 958999085 950856278 966913143 693265537 985776270 113077802 577255047 23014864 235523640 881426347 991234505 889246743 976124261 209086970 854712173 893991062 919192035 790400173 921971712 536522776 750833539 595896677 949694749 203879309 746171125 711808900 878965282 881824753 993273614 780778270 973901317 427956498 431474327 828650465 964313852 11081261 336013676 959816084 963215398 901928591 912633053 58400687 87184110 13116385 493952268 389831755 404336920 314367260 632140910 352683623 526310657 282933506 788414400 385339917 991422180 957547004 972943108 896286980 971502805 667348300 945629263 938787157 967121524 682071597 734776477 114081561 817865400 259955242 998576204 810200757 910383266 943861733 976310703 54734695 57491013 148386707 863998386 877707749 903430720 893782839 919528943 23386052 168045209 990030274 992933245 732658179 820849087 239211558 514373412 344215060 957392174 381565025 879503736 880764590 939410657 225603576 253410916 964457876 981000451 994088962 996809000 126460024 447914670 546721297 673676313 960807580 982243455 971678961 991204313 280708122 384592043 19291185 252527309 901961191 971652344 595983155 851673319 569455847 705413465 106166469 366715600 817784041 988990438 600596206 673559453 209464327 666681544 645701345 789074479 132877775 518462442 41976217 420986482 399717253 851592554 30791622 505536357 467663529 731011486 976897514 995780563 367102681 910935339 413492963 536353356 306809145 326225226 304189562 787168181 468182794 787262737 42433220 517131870 705622415 973758941 8796036 165099600 376059357 891275394 57889406 980646624 623386359 634845025 229542360 684812093 693407206 964896369 684721305 824937777 657088102 865602655 132901674 494170888 515839109 752446651 845188249 967562801 334327635 973204892 813957547 878945200 929367330 980994586 400982468 598959109 776463902 843013470 142850302 261769764 961174060 975722867 476786306 886358461 548971439 839311588 537877487 685185136 498617765 916043086 166767520 604821771 911099066 967829296 501800796 982886529 703785844 896169721 330753651 733257895 65892678 645621903 365910362 725573241 308317107 640722378 965995577 994148591 677902632 970070356 506363913 981776641 306905592 563156486 641145222 896084181 265960659 825058042 825824833 849029532 643367947 728007242 533643572 893661377 102699257 765687565 944620532 975599589 748889242 920866639 18354821 28220161 566960147 866855608 154600990 984441627 858642301 985254222 407600185 629440242 229371684 418994834 640445667 748719519 3110510 765948700 270482287 954396944 51261924 141678894 568292933 796039608 361963224 822667653 958335851 998992705 168578064 594332029 833278753 899793801 273605114 442428603 807407730 866156205 435794514 607372261 752552103 905468119 366544444 792603301 878012512 879868392 334019701 862587904 228416000 993572628 800158981 964760871 650124115 883221178 506604183 612392230 814571992 972988358 921137240 980565555 854679422 982201196 942177575 986495943 78634162 637633687 26442557 234136594 458751603 503196003 476388381 790545619 552558161 744696705 525707044 777650798 555203099 861334939 698492484 857303150 841516883 893444504 721557773 752147478 528247155 551228824 736573507 751232717 608096102 813444939 277523678 992879095 627691041 704032150 515306766 983303352 419055742 920054307 131046732 699334720 758318557 928636829 509700015 900356570 196134775 389613954 533952798 977486665 487516670 711960760 665739267 876873561 392586199 477699266 671664376 946882893 6976546 969706807 760533217 887864930 146072215 146271968 91060799 403941596 22019918 259390420 717470937 831496980 166406385 772599239 140454371 440765818 538847818 754703198 593493371 979210789 433874014 919955801 520239739 730423954 665768714 800978335 284887929 839885349 774712444 925293905 908305763 959371848 937422044 986769922 223389862 238112950 16054461 950564500 674749277 786491564 362109964 580188393 452981557 461802748 419323923 480710636 347765478 858685230 471299875 831767524 726240244 945299284 327842989 409518603 197754550 978420336 40238312 865188058 948795426 971164547 821235658 853762233 20771804 229230582 409931428 757711999 232299014 235261153 726803231 925432553 780159211 904445855 631863001 644805350 32834495 769692052 791561493 917558221 442612283 757033932 495289400 946092259 644447878 683520755 264405708 332820893 797014183 874110171 718740507 922105169 841251579 913728876 549247006 812596005 447326358 912071388 697999226 838417030 940967634 995850404 457477393 781261993 319109443 707154585 654680143 779486300 433462021 636694424 664130175 877623951 959503994 981130758 430519834 809000199 100127427 350326707 442264473 967982212 561577348 972304710 134590238 733305523 650323996 990546161 156746494 996294683 445995822 650936589 946867910 976837001 481494417 841869175 256941408 970691472 740245938 834986573 662827433 851207213 925388643 938350432 845697951 935343103 562767980 846914592 86223724 486600227 537662677 544641886 891932391 907680875 495496534 863767013 660218976 918130413 403957115 622299216 746510570 841577266 44210289 868408708 885726545 957331358 648867410 860657986 159098183 188098479 777571501 783978635 665790122 772868445 776392752 990850538 832070248 853439068 237131465 551890861 342384114 763416974 8317796 784633221 813628644 967504657 352600954 759549390 510876994 992695958 877610748 887228448 42987453 238379261 523577876 786408728 427342770 648736543 67668101 817461180 704248603 963501664 735010759 814243547 251090401 280298700 679472951 783862737 488800275 676353588 613277481 829651206 787987220 949107716 458822810 893609719 589778246 889839851 977884703 988339918 409795036 933406783 970978970 982595702 90562186 979975651 878213678 913690965 907172870 924850081 935576575 990951986 482671223 971138008 336840716 978999962 233962152 390941576 303737231 750129332 506898735 954222015 770435762 873606619 894984290 911205947 497120 510163799 257290548 556044497 744010760 803500727 922056345 934786602 149248079 352446106 483079253 863005794 185561232 688929641 868349475 955419545 4463866 282936540 784628027 952915927 68347046 332857634 924649344 941889595 620815121 655509982 582993139 996335261 272348613 490067421 290748381 612372722 838982731 976122366 390716546 661918911 68929043 356886408 486321226 872407632 911675276 977800764 366337823 535049344 357663330 362594503 77520122 133978153 630335627 971534250 262158476 972218990 121245015 402555025 513887845 959090106 958024916 987705021 29194514 402193001 859343288 946260301 940406550 998857034 539192403 852646714 931463574 937189459 289557784 701231876 447494499 698770015 545457709 924526835 809158398 869543625 270353704 968344521 729237356 773477244 324534590 776170143 706231584 770075615 297276130 643977591 487983649 753468187 239308139 677843990 116172270 648345662 572733804 731582766 697548225 771571820 364524340 858628653 346594957 670554113 143691463 825005759 741857167 926847129 701509741 936235692 327075027 550786657 721435755 932291935 972358694 996050558 420032843 804409166 874686383 915177920 821223898 864733379 837923179 878605340 67082119 156145845 860364962 983791401 539236802 874325542 506997529 769770755 217788650 519735212 582005058 966619418 240556840 474302153 660882934 873182222 50494043 881487963 404371349 607555696 499906618 847237376 955172828 976037998 163119095 891466552 799059781 866256898 218454800 739569744 820656069 943962692 657234070 791690168 575184539 580802893 744579541 860124459 438250845 850018838 783219044 794442069 199175302 301123277 73659822 649800393 49369814 380161333 722507624 995923931 158120530 947765265 778112363 949098685 917562957 920323887 709175267 924768354 911092196 929573242 216423924 736161288 691451846 758868813 628594555 908241699 757239564 880574863 272089818 828385878 504186896 936920302 54863419 329756142 95603389 477875741 124073389 252712916 920955643 966123376 329035989 976658058 641300006 755223066 36443449 164835291 720475375 784421649 358768473 835490608 843503045 875529226 810476177 873289616 78659369 403100680 416572210 484055576 846368235 969319612 557330314 742902587 231284914 922883831 18075594 176948634 742714492 848881992 169809633 175034960 129546782 445014934 414869730 675318065 283135247 711972042 310144307 676494907 902938273 934020961 918123527 968113989 863728647 914354028 898140000 910103666 426925811 832839985 261174003 834893561 160107758 542271367 311328796 853745769 628527995 740616346 585721937 861506597 996269950 999841303 336094718 486133711 158671506 999934243 487075692 655116200 750222508 955967290 455810949 725645101 683102526 703596708 24393511 130812447 640933102 757782317 86935361 296702318 80938707 958983157 489316494 912584862 734002209 868817475 368416325 842981618 625291832 836760188 399000209 782363618 185992329 902835803 521668546 979006991 99026025 517278366 54862174 647868145 50145436 652637330 615454078 947975826 871733867 974544755 907568536 907862306 356680677 435668834 514872618 862746451 104929045 929333809 960232220 975182896 396399525 647351843 770336555 920426435 613680038 879767361 811699608 896482791 399641772 688284586 910874352 915284732 45234201 82999532 16506284 880858762 772545615 808414895 9919222 475353930 122497925 917580891 439989953 767319349 794602751 880836199 551245102 821227297 759880158 889262518 742261379 954821949 531991653 823271008 364285805 877174525 989679462 992906034 371043929 540727581 149252336 339211232 523239552 529174128 786758500 965136192 677891105 863720259 570789217 831279132 661537699 926726901 78800686 864373080 480805009 706847033 248693682 922183162 813890470 972954946 946353614 964128985 353252184 990158946 373391100 871208428 63786469 158947643 971698795 986745936 75685566 899945544 219057812 852903205 384581638 538357118 188255734 239614359 714089392 867134182 445021146 913265387 580734992 826657100 627070575 732235216 327431294 758383427 913780427 999427108 190232134 981910300 428877325 956877729 45013088 149821055 725202519 801750660 214813509 740162538 721518134 852614836 305849237 835459485 894969708 993159283 352399393 764718332 640323068 644926608 957309992 995306304 567972224 646096659 784619537 794236891 573719842 744276407 541559980 696972415 556828003 986015903 196484062 788565151 804303767 898369192 589171392 668871270 852245406 913487584 56378277 338141292 553680301 585166677 581479328 660617510 561102157 563290357 250459896 821204462 964935899 970963388 807711327 824405076 132540474 637897966 48361254 665751376 320184506 695531665 576323475 983700001 702314668 799806588 432659553 784316416 44966163 396466286 347120605 904186243 79779036 367946023 574003418 815119337 762744107 937003436 586047724 654642650 566476772 978942889 891481035 983182197 176450894 998094261 88282333 174929230 383327145 725420871 774256264 920250433 122163176 581644415 966037697 983407426 333691040 485792598 663330155 723367856 512450013 793404257 200429473 962292046 489501560 831073296 884176011 897113517 39397517 332102473 310427846 865341158 566188809 686197991 177003923 536116355 936100079 995037506 891874757 973050616 626220714 728994014 506498532 642028622 914735727 930086521 406837648 672903398 876729855 916055859 997522776 997546431 51382352 283481983 108474524 842486731 691416776 979523589 421322302 845605970 58013943 666256000 633236988 833353633 227561919 978099462 874911484 955168759 631650644 874441762 374039763 379721587 64163867 420168027 411278091 655766959 638931436 855095923 378259695 402582873 178464778 643639215 712883116 900392766 628002909 865033117 100040042 202826308 426018576 954030660 532132065 864614406 869414335 888831765 586482923 774928631 233351455 453435020 522415341 959292598 827210776 832389612 840304796 845743121 922130103 925475289 544920505 581003258 567917467 944319310 863619974 928198009 271245997 977866397 564987445 731917239 376405838 834639155 635137668 923367808 492404256 831064783 876197680 958455765 455203165 962086028 374277230 415994414 3200850 814474446 610948702 689910800 401889872 757233564 111675012 320920982 405206207 934384977 996425657 997541150 396821867 633225038 180226516 768846901 228616127 941295042 846210106 852858974 77149216 335672629 464390287 785736861 744913968 780952356 757028437 849884086 13942638 577612736 366697422 825354201 852091660 949180719 59585272 165953527 503988287 552061462 49518114 780942345 305131022 413136795 881034215 952502686 553029398 641545924 64419583 346782257 916747582 926966258 286620207 827222308 202432311 621668099 556200461 584612219 959743473 966826810 900203563 962423490 503790575 746337088 163142315 868915407 788280823 926083630 137552715 551315774 434201588 994566207 916329107 923522590 287951881 640003150 968611451 999375556 871486810 986106849 925126580 949903041 711985939 900796955 7649294 11926523 715761917 775381157 382931024 644857220 162702741 178427074 889138687 928854032 392922962 990687253 816629570 884640409 835423743 932695575 504872408 530420079 382347180 403076467 258544695 992282277 899781947 939367664 157293851 786486458 947969945 989663431 35929949 660290481 699614620 916454268 482014490 774395995 9749873 408023143 311774243 475968687 315771333 703856306 449414575 727140505 426921414 882008923 130074834 201728882 708820267 875443296 620071165 923829766 177653901 362154564 842551768 952400593 7291328 661305827 739896960 825943943 51246630 770388819 862370754 988592114 507951282 905542992 719806640 978768635 771367260 826668179 189038475 921356591 878601635 992482636 969498056 971633152 612229922 936624605 600276693 796146679 413128437 913058339 532028619 772407698 863475777 933453717 649145163 943427743 334627248 928758003 564451551 824701528 447877121 737494978 124958621 908898480 574162855 663809874 689675578 955386089 400304452 872059500 408661099 778831583 743574923 916254188 758260320 876108183 72065591 160829442 500173562 957788879 346641172 634008618 622939642 895144827 355066340 699885132 177279909 204408371 727948155 780863484 631255588 982843077 531791665 879148522 214949118 937083197 669139719 844099430 805386291 886792997 933158649 939865583 214985335 958777310 773378205 849434759 730721161 830055923 959881070 973910872 988609449 998282106 320801903 587525415 31002807 347179443 911888123 951609344 903265173 924646352 41749566 515053724 946812186 971271730 738216540 976467973 297195180 481118694 395483177 772003807 884058221 944305709 125663508 869553770 240961258 859199134 151979073 387607789 288649377 741441350 542079682 984194288 629775494 667008251 207454272 796792671 404153861 534495481 592495296 817697554 487052073 663981443 688009992 917179850 170636082 858935223 535697746 768018188 561918999 871045137 576136395 612866702 665758807 821046684 63921659 416726493 479329606 515505170 511615089 720268204 670567586 810525366 596906597 817590300 564080991 680709209 375412973 482883128 113923856 914361525 38404670 941763870 405484775 963423712 414639079 811854136 905773961 923597680 600185713 689850292 600878181 680875591 125962620 593506717 310535763 857369677 338362909 648000991 773563009 936822559 386061409 964653507 385054929 524264062 57643571 641096495 715333342 924662039 349687615 369249308 895373048 985248329 975466589 991773612 961904797 993512937 548892144 716710081 4005581 460819703 412159419 683949215 709031925 966465978 557522727 783756685 463317858 723189606 425859135 571455279 817443282 867639170 292823645 815566226 963829205 991400785 385214832 822045077 223356293 363246078 791630889 913152455 573876967 879153002 129331810 936396606 252800769 669921615 470248693 647708280 652638033 935266548 114093905 621459748 410871602 835424255 397975527 969129383 627974191 726000140 319725828 343222798 46197847 596333512 941370729 985726208 27690046 486192881 725782973 791901082 231196760 859773916 737627901 848987430 156840623 746323422 823403805 858251827 691071241 720982172 357068367 885763124 50348243 919897520 888456980 905379513 738799828 855936332 954068365 976619684 157256707 498141464 915947658 999653379 456760654 880678337 329595157 445511769 463506268 649638859 178957859 960568384 139229715 816628092 258468268 730566442 42510925 519306497 393079909 834213083 493420949 660564056 992464025 999609079 590577723 878314546 823823197 836405028 329222645 827109764 864795088 962733181 421823983 880076023 164226125 511012631 869563060 921092761 933003502 971237623 243624042 725052813 488581090 592310138 568823462 954684146 895805093 970226455 7910364 31112237 368800417 817615385 608529041 644670090 964135705 992626412 679869876 723184754 814249029 990824699 624325707 904088297 235654041 581110326 39937436 97236278 925014359 966068833 416171694 525415976 752177786 795718043 751410248 896972135 199470312 443980106 10445955 824190576 485240805 709367170 754894025 758168836 305175390 369439612 905676619 984006066 808083409 932101411 944627328 956127872 927533468 976852015 145768640 160553688 107678808 237917032 826145842 941707271 380593328 858082202 140998736 861353026 112044289 761281079 49249905 718339014 608525507 664921937 197940184 449402877 345775432 635755278 933491104 956574598 894262992 973054248 39903441 85154435 822290041 865398404 597026465 608361414 268023767 295315160 558995927 931046138 289003315 569501402 656266514 895876625 723166814 881649327 467787756 706263963 926796225 997920413 797379560 917216316 877020461 949851599 413571736 859002691 456710021 825550762 661393817 662460932 212683479 430021559 388400310 707932562 7265092 120973332 891863952 939540890 291124869 644107842 290807840 332875028 535158918 917285825 730609015 981476671 953333345 989886673 232111343 463321016 189960159 819959950 188733005 636630612 981315003 985863923 992756017 999891241 377946432 878033630 564868428 939357301 511115180 739528375 396803140 591281993 573295485 660311813 473196725 969466097 154747325 211978496 679618935 775661358 123493022 716806875 528517686 709300828 282498485 650559594 235892134 377593851 762544878 821659188 634157060 735932354 771887763 905031513 194409010 405564417 61660728 385231136 823229843 891913544 765727921 857988141 579489696 968622917 463364525 649510070 951402118 971428670 965651868 991590398 889976678 921453205 691365945 947054169 484537117 843109963 100467299 932313900 732624373 814632246 788425758 807488181 935802831 995450177 654854412 971833580 626530954 902912577 408686269 416585908 989725070 994653015 104733116 269876113 713691602 740399424 146329062 398976829 556850500 796020690 343037392 418616944 997905727 999705517 466304895 645271781 756377107 996633138 999353649 999795336 890117820 899907038 517542111 711666834 753338725 850378830 716935172 798551874 802144477 851863602 664386404 833930806 226348976 737161469 290722693 421527085 356266766 853222866 922677144 929248438 554176973 592305158 941994405 962932231 606895213 742097223 326805704 491960341 667855369 673970351 316219007 929996737 861004688 936901659 804897649 903415425 784822246 896617621 267959782 374408003 68623564 956008421 881813741 976747976 655376727 682057036 374732752 643269559 742832625 954823872 283897696 612953948 32889767 154206394 352063318 883329507 384723070 632910377 882197434 961282948 778948594 942080805 93163152 225737731 125870497 783802463 666721057 726700542 774965307 803576971 959508756 962159856 260125146 465224703 857759090 997645086 647204207 724824005 762175326 780049441 55847506 461726755 110169660 191087687 466564843 549799538 413101440 826013286 150674329 872606588 429589096 776123918 975334056 983772210 499344130 801004116 34351190 303911217 619407184 923731007 827573384 860353863 716065682 718371655 29192349 534329605 360197309 492673564 234311595 966854780 899089956 949724793 235196668 270402818 905831532 979276600 610517098 809669208 751700063 978724829 401637863 818689279 630322591 775774323 375391695 375760713 323530696 633788229 851559897 990638878 223140230 458009547 160637425 641283366 427170289 924651697 382760359 513784026 224249877 860676565 222255588 794033860 743969659 843075126 375724547 593502268 723489574 861781781 294711239 924453110 294364230 715614264 951199738 984731887 375061432 544019677 863322222 877379060 432575244 693871344 568913934 690604247 300284739 575517220 908240314 933034406 857877055 879827486 757627263 904970308 556710115 610664368 860667656 867265891 583882915 630047615 104546146 201345855 604663522 905808717 635103842 773663015 920371761 970934883 503796806 621607444 525703014 532149189 575529888 629769142 946483765 947927934 636019575 925269035 910743207 958342845 659401882 866501949 733666031 824895536 545915080 656680270 511990421 960897805 907408936 997045948 126460614 367365358 695005787 770118894 7126805 150219485 840771208 879407273 398819933 496381578 263851352 365422681 386927547 967748715 250278158 555683817 293340491 533350004 899498386 979704488 824749221 961838369 39397192 176983573 480399198 943924213 382622639 461305651 308443877 321040831 163670405 810508313 40313932 784360015 273796490 380414314 242751264 377981592 508455584 708844886 853074589 935620601 674165918 954920719 3838016 194977503 656061950 858261424 673067347 777298188 803753448 832671858 772492246 871032410 713017762 875500639 681497758 963515371 489882688 556114251 530584227 794825216 944696903 988372765 839415081 961807020 245404142 389468784 214434154 783635592 769736021 930787902 63683928 428891746 684899424 808958061 398341605 890031654 663480778 929583596 98913298 246522903 561601616 890468313 344918019 662735728 161003447 818875650 456952049 700611920 212136491 667769369 677776533 702204450 260577094 667107395 928651740 948459537 742871677 998816501 636260962 707990641 320824305 655733027 766031769 841693126 831232028 846695066 799693768 930323051 485958656 847627609 566280214 738418926 834151421 909588280 294071831 594092001 276007098 991031383 321926898 811719109 18725948 223590784 457430257 898307586 752188659 883897803 465219175 846349261 674114525 785019758 987815384 991263451 304438835 863416001 4286303 992141400 613037749 724934177 610879994 860264177 414813377 896105331 174766979 743488584 959286453 980193233 689280376 894170755 429924700 684027260 28693159 280797168 957961779 992338455 351462969 802633587 334942295 659964394 402364371 829151693 400317248 605775231 481664098 746471968 211528627 563260314 403275671 600452933 854162970 966626549 6026899 977393542 518143062 901111047 561803856 794408004 78090759 267000226 987989292 991272525 781333121 826219365 375873014 667884152 649047883 839634154 390540580 503480819 868616308 886211256 795931043 824475921 653801594 781740670 168067621 306695343 48746422 764622560 950626245 980740073 760599388 924707303 162348327 739020938 341656610 965082098 42542834 632078765 184324191 666416432 688284160 798632961 723614696 733864022 452458071 806217591 169906459 300548936 835190439 984311943 656841604 851686463 632076804 687625725 119853357 898692632 395061460 855050802 896924102 977066427 752894485 932116603 979911282 999814675 384979391 844289116 855618757 991909844 906508713 943625843 997111590 998184834 382566253 819735732 769747644 943214271 638436450 700975370 179278806 366935408 708072279 863789391 814738334 995505628 852382970 964871590 985414867 986574699 571915683 915303731 551883195 874977867 465278630 506111933 796160585 851192108 206396689 974251683 297642946 567099917 501428197 962217881 204894202 962810585 308322422 437107503 601252307 807534002 431178516 648516205 498230443 959010855 213918496 262323615 938639511 984140797 143560546 959150311 554043463 752195749 211556852 956365322 140202890 460311262 326684579 389919383 394158723 707434152 420865303 473328188 613456196 747358547 153205923 723180674 939177902 957624392 646305467 997507221 350770161 939025119 871025899 874767444 918940761 929096280 391758529 529569975 657417077 914968427 567805856 689345601 438615335 801650385 847407762 915420446 669375145 890262169 310530838 779901759 151214252 955675870 762336438 848994649 833587196 986238010 358624342 639205489 998195732 998587788 245815739 704903535 422613441 861516802 807627763 940738336 107996239 763020958 151852998 303212582 364463187 374057080 647399975 987350552 645395902 879248589 604350809 643940298 988208790 997617527 181927252 506768329 835510609 988765433 227169812 865875400 75520610 849612982 375690799 563717824 987716648 992478668 633044587 764991450 522968366 713645770 969695030 984725667 133450408 629589181 866618203 895430313 573560825 881088946 605493058 812973236 548601950 873014044 64479102 684253780 952598235 962185499 225751108 884676031 343070452 388927631 221678469 970685212 389690119 424786406 743886028 918620196 757108019 951086660 750962319 854207663 87081454 216088517 613656707 772860556 873976991 900940954 822639488 826711830 367453580 450917678 184208473 705894282 82904676 801943995 269789352 577397836 54284742 957189609 977691718 987827258 701835515 899377366 687743678 861866213 783754393 833044542 810299333 979950745 646198496 947299169 41426136 288550009 273511719 463848520 402087773 751372444 271424609 296294788 61383554 399154127 622755057 758108878 404889149 991249127 761028425 831435421 539955641 542228354 155678717 701238399 795464986 982234394 284625718 650614465 189374828 941263108 689969872 756275611 684185103 789728770 398201218 873572897 819498088 836217282 149410991 371644489 971101349 986767116 576870584 857470753 345565510 565510375 287819821 988595150 260172589 629118602 750942594 844224425 117119648 869233001 358921303 981947108 767952492 840581242 291485638 357867527 670474314 854636311 805752195 995207413 698911310 885786062 252786456 995682442 805091586 851397174 775407023 888557730 716456779 798469255 858894752 877259743 951390451 967237421 424455424 934982042 629690516 956624053 302302640 881191346 936028776 993655582 87424909 830964453 892672874 953478910 273066779 633948091 494817050 623962106 774938262 912627919 402169804 430828654 315515775 979790978 269478412 528911980 317480520 911172850 768978539 801987449 282015396 371700478 903852518 968624459 160326857 215178522 612447516 712441973 712234813 935033072 135705298 374741812 696657294 838345829 578426444 767362549 405425675 580410029 756763432 858042472 263324564 372725794 653192550 697262351 28306230 583085231 392044768 659811375 683672437 839118817 797300287 878395327 162770698 913929002 717400862 775729857 533451852 823010688 759621979 806891842 61844192 972718711 597721438 980224426 528141117 644652938 35358751 243684078 788031719 986217876 745359525 821097567 116196940 939013623 915195519 928510163 971375943 974163143 792577492 935612183 548493219 574665472 954125895 964613144 89177137 996746963 207992005 433491819 889672769 992873749 990230297 991169019 116690620 416885566 404942287 594347662 120252607 508621716 351117134 448946549 625612578 928695266 518324869 821896214 351857808 833930671 277365920 314994081 888164459 960293160 141312979 947060432 412367042 815603075 105899337 573274775 915879340 985131786 400121729 547201005 405075574 974777745 422862038 794556186 435370262 908989867 526759763 968751066 182623911 219163772 628905092 728853347 71260021 234726985 708394211 897758552 651757354 896296952 127594398 232679428 909908783 987493239 35099127 697149385 512058550 913406340 759034688 959927004 387734986 633781042 170325733 939784512 388563576 796154977 261646873 686714888 36629032 468918724 490649962 659076919 859712180 880528761 872142597 893893985 218678425 633409842 194761318 632658500 729695719 836523549 117637332 322214381 527207048 624252115 173252102 431327819 691925174 845948778 704619207 927668518 559353874 905751568 501784071 982654360 595164878 614511860 925224197 992534215 159048725 574722088 673072650 692984941 832936359 966851220 927728914 937128104 913416810 957353990 554986806 736452119 117547178 226118227 855450671 979139978 537637633 564039232 718715506 778020817 84979415 614703683 130517679 343287818 64768645 704094001 8634753 894730288 642790178 748122299 409815710 857108371 296624857 911747822 704385321 851545972 118567553 517974422 346703115 511381755 833347056 848843774 377341895 727367623 604785599 998110450 470674381 724921563 796504800 858455258 827094672 993845175 756516231 852177197 207837143 553751386 182422304 729047500 46362693 365929827 528348966 647873025 793073127 944169973 837628010 982213904 61250047 296904023 31728969 648342562 971433138 993022601 767679261 820258473 395429652 955603930 241779916 582020707 279860265 754153716 261446366 831100352 18832945 640858213 288968364 912145523 674696070 738786820 982468544 999080026 254433654 449665545 552642484 962698443 787447289 907145885 171853859 404391267 192812609 938096541 936692362 954274947 90628290 383678209 554650696 707057230 702623038 796816641 461675612 958066531 303596838 428376479 617536386 740952780 676520451 923945689 886578125 976750487 95018942 424854008 201591051 221871679 679977069 977876290 914421388 964840349 744534015 863519091 938830811 988259731 698384458 968463464 248159009 791574955 640155930 838664837 632692760 911326451 792004829 832344391 122968820 243408710 396682459 812086569 829732834 880659380 689534207 718344610 937989013 953377131 784360377 932381572 537526969 946743347 303177017 863101595 407671027 614059642 702582390 915668388 363300941 831509041 998550491 999942649 615589705 756477221 355288357 766809991 668634799 890516210 326993113 687882547 88094018 811714560 207498461 998432434 290673567 782147295 69277712 226261466 444581716 794226736 249201542 402456338 678126452 697564326 466555740 799458215 60664572 590823095 723803521 789956005 779536855 861284323 257696314 972574195 963984132 968407500 345842819 798023017 390363550 453474001 19608292 809639165 505382111 891907840 721887257 724926938 822871009 974420683 698797555 937482949 480879886 635651314 522540696 594386143 336227076 882166487 491055412 998470011 574000730 688950903 455565119 823778066 400435751 637107981 192436287 821527060 823666030 849336465 268366370 440252886 551581694 774897077 394624199 772924787 779021573 971499681 390584943 642154095 608283347 856196071 59846769 801414777 994792647 999687870 908545724 960317691 251444392 569760594 460154429 712939176 849409551 857408856 133396532 483621265 379498990 944714468 652946691 655728649 654991484 870386443 702157593 723149887 956634005 998503342 763887005 799651134 890170471 890765674 335710581 420276725 211368575 692223604 468910772 565308148 398807404 690051937 564834092 633666519 512034878 575156384 503639994 900618752 496788653 575863716 32058620 399109600 164273103 443086232 545307887 854978530 40429211 881938894 12384052 635414879 715547941 861133603 735192705 909215304 587223259 857352762 426005870 720133705 802402712 819287751 39568496 633309992 111811768 219839372 363625406 705201749 365599403 799523665 949321475 964429083 255912102 647543704 249922903 448114782 173012383 652562433 387440012 881622879 686748094 951015839 11043149 942989599 422352253 653668859 983999065 991814548 66921017 909648676 221842910 463716765 411784645 440660548 297804432 689512230 934930140 988034469 57808235 379657691 787401645 990461496 724946455 831008305 979282303 995458115 265118822 449319605 572454798 989398183 45363338 246751877 560300713 590817648 884916714 905692316 133388192 971320713 850061504 992420493 593852619 793094354 666305851 674327848 321596355 936892640 128059550 601683710 436411530 475984928 753219946 939545585 258661394 474195506 64420265 703604923 940660210 991853293 249719615 937172552 171745642 377979289 528273998 728693380 14135200 523242028 164552965 201936718 887408071 959852536 824951362 836214687 649395735 742232570 772177061 944223185 46709945 891775269 660209737 671685475 66891254 463228999 352703298 475708174 680047732 772530472 420378239 823534367 772914999 996991646 545378002 617803375 416922553 440561554 221188322 890842270 342941255 685847833 485643627 638962551 374708371 603948347 287233449 376027577 13221239 907575697 315377764 427551300 784756260 831330680 754198892 977930512 673467161 887183471 154192185 365126179 987148624 995539119 83424450 476536265 47427930 867384309 131185371 905104980 569843256 594023851 325695032 605076540 366957786 827401438 751864324 886419959 186798131 670444648 861257172 949012862 144622205 665453957 65605106 203300543 33809293 485200539 581468042 593345632 558647473 790518634 973396460 982741526 269111321 345548002 750337523 819632161 575623702 633024097 265236372 341384629 43721661 864782279 979383168 995524627 129756506 298081681 397626679 979186260 749483643 950204935 264714261 672460233 100010559 787643550 504155257 534067363 299552035 368224381 432672272 946460608 381566590 778228303 349815985 873802412 173023616 414363287 322368416 444950710 311580808 997112644 35404970 614421349 160144655 700839226 574995199 894047457 517708112 563108775 391250431 951441007 203587199 952692816 735712122 860944173 269125343 833292878 943170633 950096381 37502605 207013049 167320015 659360974 426988215 953451759 880486232 927704171 513994020 674808930 561581666 993960220 643944510 700239158 132565502 572758269 17125143 469498835 205806806 602980216 611891623 640051973 823383623 942858894 227921473 860799008 624156891 629156360 795436365 922696949 223838673 744630719 564847247 589807867 697142109 733916890 87307529 664277033 474177835 867140491 965497900 967862532 842982756 861325381 903422891 967281754 453476892 628798564 991388341 993571155 546330517 973885005 448465646 503719235 543888737 572091373 713004073 992530178 76895138 161158990 176020555 843331774 942284257 967744886 788157900 911747573 290098688 803726984 731070872 779441254 93059116 96892225 577683608 902520452 456509830 947897321 831794918 954871495 368719923 705019511 218190771 777714548 533093507 555724037 802815350 821185604 18740499 994630919 251617912 261692521 229066498 585350859 734200154 860932799 451489081 734545783 845417730 992320302 876720263 996149066 823244146 994767665 971183395 984256271 618582605 869078525 703385242 881236076 966385860 989326013 108633633 495224218 721484654 840971126 152150571 754559822 730132584 774927050 525400624 596757908 246720180 482356914 52305623 668167397 55317302 341573822 110607254 768851268 448455754 534899956 896689496 962483796 164149811 898315040 543940137 886445926 698161026 946120620 130412850 647062757 834727316 988635462 471177438 587075085 558292461 753718345 858067161 974145574 656047054 796236375 946395942 947392869 695834655 999026112 150485742 821216483 786425084 935877680 535267446 648453355 704022865 949815996 40254751 824516901 591553559 972893330 100647481 763248197 362613871 615445074 907770415 965576114 371643739 785866274 283961383 930113701 665211632 802761061 757285573 785302203 471325145 708538828 39852886 318613486 665785158 882480812 767624505 849855592 96573707 411806713 590379853 832339644 41136260 844161006 371451228 687247556 270145082 571517628 352886974 373344867 32581726 873938082 260226489 710662823 298053725 457480724 841930778 971517209 667024003 822265374 44025351 396889526 374170869 502082458 848694111 962662772 836686732 994097262 936962861 988971713 972414909 997278533 991395102 994079474 792633609 933638258 815107422 909849619 249358794 895557435 3442347 924744838 42010931 502535711 691794330 765547272 905147772 909824766 341976175 930502593 48542151 164550101 446254601 953898315 550058036 717735721 832702520 996863735 432732284 520120803 269412995 542202807 115533391 519399211 583901556 871225663 141669586 454724068 499315492 671990010 875032022 955633734 247885031 715021325 852275528 904378560 28351506 215581951 957897689 977233139 21454699 670730374 461557972 467830748 259413965 614603293 228992065 289394166 847906504 959189516 677337428 816623590 144505056 941645035 564568739 949138429 660353765 809750500 643686988 684654429 148304165 970486177 561044368 618880774 441156629 931857879 386124781 613758562 149198416 881502160 969142265 971096703 793153354 809239095 6518842 618060183 438339441 808723736 718649996 763277169 529572022 984844011 270216299 788328041 83378599 837042283 628650060 708024840 404201265 803367359 140334926 878563158 144854511 879789429 725066871 834836541 817659574 977915796 668842981 710200591 756560942 875843593 280092542 909502526 459752453 837157826 276405977 939715693 348898772 427500360 827842546 827959351 996744981 996831475 297721609 310561400 610799967 892396836 703184019 957356083 332227236 656027705 481868593 921652191 674919395 738554683 731644908 863220830 157753787 906873620 981247214 991474314 744281471 902081990 733365362 893898917 941828636 972101681 457392811 913250180 977428472 982293111 134994120 983143154 561906115 653897395 347723350 850143261 767173870 992648617 977963831 980317991 288094907 467616662 550932071 986295583 652976609 811990001 237854185 300442095 755606826 967218881 204952824 361741314 574587619 820996023 942568418 951881299 379480595 394396902 326655697 754681923 723532902 892166534 593945105 702991177 781610661 850128813 910766787 997292051 4028514 593562370 313257342 987744961 328619923 517146351 702372161 941908963 93421509 802087928 142400609 381847502 75153618 79110351 536848435 641811848 91977451 639902434 373509919 449836802 586187616 699205722 817020289 926071215 502282024 778002398 93208622 939236468 156281128 343383124 722956243 776421353 355925838 605616054 463117697 577032631 207272239 401777726 657966944 868104984 260917697 554602534 211511021 825397444 513288524 980616448 955774173 999454000 229537550 355761095 194748790 700757950 511097730 566745637 619193318 650132510 546649521 557883396 695854898 704906203 90332558 249539503 289758855 314538035 771538376 876516646 726634170 897149948 886139707 891153726 992258952 999195257 715460791 920719346 917867352 991918740 441686201 479657162 291628818 934902955 802342738 873854051 70068633 895792205 739144609 837155640 866495385 893988571 250192937 366386703 938472808 979632705 826565904 859938809 133265833 585396826 222039873 996423165 134747164 187524633 903900396 929284099 640242863 811092104 322050411 352724422 491512520 525581401 427376727 769547593 575244909 977635162 59426006 237328652 451360750 718909964 71458734 196718910 73847194 604068135 720242242 805473136 754410812 858654015 421458514 469862816 144033506 764443198 761143501 771807023 809202082 858881080 17172727 434504913 761020761 852205130 444563709 765633855 895275457 898784657 213305151 939255632 449300208 700773381 99747465 576226237 225546223 398714138 292122142 426471689 617556750 729566681 992771840 998333199 224258398 906898683 990827857 992115015 755763278 888521327 943328763 971955356 470229056 504470992 2327197 468788811 43353962 436014113 371907888 746513147 336115675 917328138 347762869 829745234 481052055 740286727 437856629 615905515 517636708 765120211 449661381 566546070 334490355 969358054 698153697 716845090 155796351 921768018 993191108 996403737 853472094 904289582 348672033 992079845 152743015 190403113 283281209 567446910 464357618 772662639 848528712 970334875 320385919 905457236 652119544 819013051 64972015 654192966 209191607 499848498 768162763 892083633 230786547 304739755 331543814 785320071 900795089 910053524 678034024 714207942 584473609 659218139 156868081 504956208 6115334 448764711 299767008 696162908 709252143 934455768 378722784 967221467 850651870 988337061 296376133 536735174 956172934 980601296 601093867 870018038 486081953 506727616 875442836 949913676 468780353 940554622 560125547 630217013 953359202 960347664 48360017 782785261 761196364 935597153 579797155 937073738 56045602 142350243 621025183 760000495 964568728 983385903 798706973 988445516 983881918 993877331 592708356 647429063 96943543 526920994 258279588 383727260 852598993 979813394 696450887 973197417 299396943 580848342 839938052 888242222 684261078 835265451 407077006 913610977 105728597 940445465 100484814 927624141 265575966 306766868 924683359 949567506 729058829 823552126 407021824 525848848 539717965 943292427 763834689 825566585 526556421 653111938 960665965 993782994 420359277 547071731 86907857 877690183 585124605 795625660 823134831 892531827 870190662 970118745 720668567 832630768 5845882 93124693 827829433 936620988 59055903 214720887 573277450 676634209 113807840 419027232 740624578 846090808 705245731 854610501 578831345 632335275 889717584 920871045 581012769 743766888 152444799 940556375 538149187 884480885 987469168 994383603 788440552 963813271 856234966 885030297 605645569 979802673 628457130 908034506 32071787 113115050 620241386 864250988 529420063 714749862 783174064 946911256 145003764 649737909 298196108 595879532 989639230 999695358 235965166 978394395 397937199 454010838 82044251 682970136 128405606 588501711 359738714 884276685 574307158 944424532 113383344 681173639 274988205 362585869 732357819 766604972 533900240 975433373 530648175 708385542 850739458 859145530 722100101 980050199 857878476 891210751 932411794 985079607 652244288 661135425 758150713 949901023 9652255 547122254 68132904 367202222 591592880 849145716 137111811 356351297 948437367 989578139 662144394 994901997 247799825 867258150 506719651 989418531 950158266 994752644 572635734 667990268 381417122 895715389 935729063 988897454 537178943 831899013 588803156 595503525 624040825 941759552 450264369 993703604 332444943 493618378 744449381 940404706 890391896 902158956 8438580 622922620 775424070 982482935 302791438 571873587 229632252 282449116 880413706 910996038 996014168 996816432 746702428 874270728 512943694 640009381 853107007 889932530 531130636 563929373 780906396 986520205 936387996 976454008 849421327 870021235 620076604 967658231 781508058 952199938 731341276 965103086 389020312 541851452 572611880 611392991 729817939 963827742 580412942 760114204 984427385 993744001 361352199 595815980 165189464 192360860 960532804 990891179 413374286 850217842 83185245 704793547 280569491 487003953 241232253 613313619 212716452 650234917 314785660 765608806 222514252 224500645 879865209 940026186 576255493 977875601 781791317 912349489 162459731 959758529 347681854 404732407 25405596 562002080 593015322 725326611 971495182 986455929 846767079 924318712 463234607 646088319 879833714 976287746 44783538 997864394 445243506 611758754 251345799 512254556 477155360 694902916 630585459 784639690 112162913 969195318 587568356 611544000 287934907 637900571 600823161 880789782 241555831 412788320 832761252 994564658 828387671 917217529 500281865 766288882 485651333 942442361 371600718 955892583 247845455 784211386 270735833 826523418 78604948 602559789 170665471 233737490 920668222 955946978 881558752 910277717 444001462 473422602 786227013 828487905 768966481 806752675 75608610 722026300 900383927 973526004 97282118 570932497 921547027 948557860 550957650 888517447 134638448 168026532 502968834 507239763 750029061 811384077 131543180 670205742 101494809 791037709 370224139 662254527 808097206 868623925 52688641 986248444 943243177 995372203 835885133 845064573 772353489 854011659 35598745 533247502 702973625 705630690 236379340 421169289 598536006 713988142 438232552 853331380 679065380 768924206 28599728 534102981 140582434 150036932 514078547 618781623 294557668 682162605 914472374 986816009 273402229 562499480 668445875 969805592 39388990 903333942 780845103 850673050 435918617 796068064 197136773 464448772 376246613 691565855 6751418 774625270 886240338 891590213 10768533 672340138 167772174 274634831 938866310 982900587 856152859 909393657 774935923 976700488 100785674 561737228 840442239 937809791 12487030 296558172 835915998 898370688 485851622 906141275 590009755 915081029 303965555 703487487 682600573 999615448 531235492 834243109 728520026 948141915 471744304 951347773 372882047 748904874 31806585 980210081 168679455 951950909 482374736 738585915 683136491 760320216 749207555 863752421 254281168 374921240 32952664 991290962 46407584 67276854 389924531 626125908 838575658 910592671 10216717 374418498 166655642 711486678 587080744 837745116 831148723 864249598 224423717 740330573 71966672 408693363 673847659 856343830 562371742 622061129 138960543 995174267 710008783 715389781 648059317 709003900 111462310 494438248 2829485 836022286 63886408 236704344 528828359 756309773 296834591 406806600 15821741 271988696 342988625 365179544 444576461 741019677 412471484 807037090 728072915 947588687 165950095 318381276 678136358 719567066 14870152 510870728 935239768 993539652 99260385 301891861 708204335 835131010 787777535 825643932 851115375 930621991 352810192 936637927 809577178 984137853 796693559 967185323 839415370 976597491 494203260 850229570 898484501 964268603 195478423 644236166 388608783 951273903 159702500 847764541 976629306 984117656 835065079 998655574 741182907 983016358 120064191 538673424 695991789 833415897 633427382 690417287 36519989 659732288 805660661 832665944 251999838 346025331 384043920 669935259 911692110 961522980 571332297 657299112 820344961 848724555 137537689 347703280 168776227 395011794 51853132 951503605 196519737 794329648 908651508 935095333 620056376 952066656 270388756 969757462 369586348 533636879 145021713 273246615 189535256 450293547 256978791 738046492 678375979 822782434 754901757 892037470 521693938 603724115 763609161 883358200 604148148 743675434 478625415 900029470 749369452 917021464 585664113 764764657 844385681 872312683 567817385 974785434 150455043 317583901 506943850 619779541 742800439 870818481 413993705 740884350 70477986 89203987 674566576 860276818 130942419 363653090 879862377 879991383 181027815 320885788 803810582 918945751 738016752 804915525 619293842 803397234 272728209 828749862 463248142 961828600 717929874 910164261 388962142 600468088 182079985 583407204 530827672 809514775 860695987 907470078 998380608 999580034 984903006 993295836 841918688 847558761 436696331 935096640 296325595 788902140 520127455 732569550 518617304 996158994 994454899 999173706 132221358 676884129 730124129 769561857 974905227 994268662 507670293 579902324 358261716 402498506 604217896 835459958 744443026 859078373 316757855 614316549 738948262 792151831 58289673 735053800 535905387 975366891 505961064 636323247 936744250 943794987 369497418 493208529 828260689 922405756 660269131 917496528 884161113 967591030 18971567 435775112 794421641 972389705 494612259 952683756 147804695 437378029 236093803 470741741 85596148 543158567 259267236 706660616 306097725 886743450 95145288 325548303 521653127 960261732 680315121 749205906 304535278 398619665 605160426 697916114 746957652 763528859 801119878 933487086 962547235 987385968 697786343 946013700 316714405 800503513 102410704 885216458 870615827 901062642 137170304 304094526 846067048 900920134 7799165 907685621 758914383 803984432 108419270 319134307 571245138 873536072 14841696 518883294 131163494 948148360 218455123 302464982 204838507 343372928 33837887 68333842 90721408 573317786 645698776 699510588 342903536 460648586 817435126 824391602 974505357 994694371 711217606 849567003 974525900 999551209 614948718 656298907 198798997 758107585 939814074 960587221 223856608 310099836 711603666 780149000 413269395 809965249 228294599 803207753 770470342 950011173 261500326 441943561 447327634 958792901 307350452 399349110 649883516 747343658 805699570 933253870 271466846 455655535 723189954 987116264 283926594 451380272 56046047 788327562 383518211 782076713 153007412 479620063 238675662 385249281 788116827 940270110 496296146 876111164 124870852 923950056 458960550 472969073 187974986 818129824 163327580 686000545 687813162 880239713 410043676 535609416 622912739 809568595 995961746 998827685 961754893 978421432 632749553 872230365 627838234 750156042 884197023 972988782 502031048 919676745 327652795 591813177 526031758 801251481 926959817 989959469 605001153 946507286 146076140 717058926 106247308 901079107 984608940 989936563 862832775 883576996 87323810 678495321 499257542 738403666 391983153 758163204 902736938 988364230 778703243 854168836 705807962 836467049 580530460 763913170 955716694 959992734 701752354 888094867 663909707 977046694 28899600 841588876 255141805 726544154 55581436 957788578 136379262 177359386 505153624 719955027 203000104 892674346 223362291 601049678 194387303 753200983 644214871 726447074 332938737 429288895 877688226 940365827 453630179 722259667 770268519 936343507 794355384 818843085 590979457 722889430 982099265 987687592 634078511 880640428 39509549 714975204 175285363 445135530 96134845 414240221 202047335 904466130 336207169 950235726 214119207 773650908 273885765 676053939 849709072 925056602 366877077 585590665 531689051 764292079 738221038 963854616 666752587 884863414 155400132 331721432 253419521 258191226 298661891 903495482 363374377 370209774 537805221 839503539 767172921 781214036 201914989 545420111 306997326 452556941 782988913 866841521 613513690 691442566 851820717 889524158 268769560 494877174 612939952 703768186 658420416 911027294 352262714 759566128 655810160 897578854 740601960 971133354 644844160 824920953 462537409 522383854 464483216 755738593 722663615 982446469 356786767 885797376 489162671 711684965 723032553 946294225 346260349 502212179 337333689 834219211 182537466 857760969 49374188 715730758 399492645 687418105 492963345 544107201 66432796 925328882 498705576 898048873 142623928 720920338 314428252 792219790 69188855 302060524 104386508 146235194 14410788 637972542 588531291 686136340 251832507 876472614 58584117 501528554 527059138 925073828 700714729 709867161 967601279 992782943 572726799 852324580 570091210 813221534 570114090 983918725 589856737 953798095 854745626 992975362 687208915 790489485 806988157 959869962 552036441 747140873 317029956 664132556 858162647 967364211 147434236 387504640 435678977 763574267 910814012 994697017 883252284 924820106 712033080 721035964 165516356 344008282 522411381 704614893 612784544 937422320 567073709 987847903 521364632 663679978 508272592 607211624 32925151 716517197 476825889 573060607 551527798 743800251 213459387 982924760 531583587 828609595 216278689 950606415 521776973 604752055 875199588 965118629 16015193 711448946 764286190 989721986 142176354 836315943 161020826 853384299 851418432 992393615 940745687 942480069 272507140 637417557 545797146 823529527 643566352 865418562 906983511 933597840 885544685 914479089 563340454 748510978 578806436 893449157 882889167 942167590 69559786 878971646 277715447 372566769 815300481 983690832 472266139 498587356 746989682 831414932 677094237 784113750 667415532 717977207 61010931 700971185 642410476 974439787 800472470 998146846 317616513 541020698 718286308 980884245 463260616 533149641 104200660 792090903 490414312 740715723 701384867 746972181 993920623 997146437 795098010 966388537 565531458 919667874 345796918 979595470 412705717 982432877 136186365 514975467 104657440 696543598 469750167 884381980 699893388 959519402 944688041 991617983 771670812 917782708 393575162 926186089 978949071 982593675 101977955 302756705 814740020 827440346 824407231 978983038 403620096 518526472 710394903 842011496 653704749 994371877 801296966 853357625 285421003 365605332 919389748 984861623 281310433 758751220 52012298 642534887 368175694 804002437 425731413 804127699 260124156 868145591 98228621 684134929 755670263 844209079 363487925 772879408 57091368 73053720 484457815 956642082 432552434 927083718 592030705 902754095 125406573 884025051 352810025 784942779 268368019 999946169 52332784 889422184 425606170 644695035 535126483 751416135 960916848 992523998 153608069 223979880 556163263 658653939 236526196 703583983 97284839 648734732 704531710 841666230 853356762 996746496 124644903 922978114 993185729 998750696 289595737 884725471 279229745 787638178 838155806 978538707 106177507 259953836 776467649 875738146 180183249 467364501 797004164 973678554 784028193 856785919 182143625 730256239 940153650 962117230 785384081 812045687 934111341 988471459 465034657 910730765 206391121 643668414 616829937 624604036 499717129 807593108 729324658 924438127 648732021 702641745 922105465 950170361 737214791 968934315 564285670 721692956 886606743 914317465 838916405 907683344 732679148 746510968 660811117 864970729 913788176 975545394 432927094 810110987 653625768 663693892 457557673 460457615 158713075 343792519 237311902 639320408 464758837 676734481 403171509 705338089 462136933 750833944 546889763 634148082 761830221 825336636 159925454 243151745 112849136 606616450 846837126 996796323 590182632 932068180 655972836 764348249 101416882 389644097 827699282 874718280 981659953 983827848 251549562 376173994 740186673 846716928 471382844 768707995 569916625 636401067 596232004 967869343 465473007 474002549 837458615 837883079 760512077 982421239 865528619 975968990 307014568 646305680 557101431 813187694 13990362 879091206 386621721 885064896 69476576 232168544 502938124 628160043 191491233 349983667 135293237 280024253 527426141 735285429 440424180 653828678 725064453 853447285 390178079 658902322 150470668 707459092 402363141 537255768 253393743 541022012 175682440 991311101 52374207 862754742 95637656 451670036 230445641 978034222 846469783 993819986 99889624 868476483 542637771 759589360 770647945 771687150 382890524 964052157 388755142 770630229 629540090 753753178 23990140 555604309 824035578 923464643 511258599 690266290 446208253 669971803 87674678 496433025 41784966 136041393 85152175 916502618 449186215 773322253 341050776 542204321 459361273 599816742 178304583 633089663 862405626 865298704 329938672 866297930 312092914 594198029 810509369 955476281 775234846 776847116 201186166 803322081 812372603 995932967 223476031 771178622 9630349 527817428 331518820 923398613 581050605 804260140 281867598 381249793 979322739 996883548 222040031 873188860 881999805 956322670 31819204 945254198 257293560 636257805 941253355 963200609 269128331 490657571 630681997 889735510 472539564 551433214 913128970 945350302 442489613 933656277 431237634 863668756 535291605 739685715 655425526 899096326 414881367 720738517 451722129 493599622 220170900 538777185 52489205 981604525 513015956 819984390 789736470 997598651 3220373 643433791 575618866 933723707 883602835 895130510 540043754 572084025 220700872 428804179 873252961 908274255 514269450 890604787 194997893 527336641 127960406 453719032 133937588 574567826 591166199 748761249 771618261 811429480 554270878 612087004 917821314 954100062 969483353 996969001 915675211 950124233 723881778 934133313 727753339 788523366 990368108 996187184 295089069 377842837 660991685 889506006 728775841 978921782 543727883 626465729 342902861 872523817 779168444 995517767 471851835 678012919 67554142 140499765 189033563 790818616 15978423 235577458 180154775 977558870 253250891 831163910 156549373 530154823 113764876 721873835 423759162 876246621 420844073 788158267 957144639 961204668 276398901 508945340 52429696 158727675 949320288 966570448 575810287 769629455 447609458 900398325 709349327 851055804 870397734 984132967 428334035 830542204 280312032 488273586 386474682 980915916 378868939 397970994 66307145 352761890 65130651 518741291 153796371 312240150 784090678 855100793 135441434 753202972 183959322 647400299 107638727 364463029 14162248 794805137 699414633 860014075 739371906 806294686 807276816 844477350 60862124 154519904 197788633 415901632 94762928 888788765 865873173 964195327 348155877 672664804 181809001 862617668 938876001 970382106 906350882 952333877 654871495 749558162 853353300 925969340 479622725 703727227 47110066 344490219 843556973 967909465 347393069 367157459 388716171 820777691 279217652 584036483 591341556 878321863 181706106 252157841 66067700 583993878 624576182 680998037 464292042 615022384 91106213 190520133 550345924 939611699 627683409 729284052 316998038 454672790 639728723 705749511 945987463 998902895 444764173 481921838 171577133 935064862 486019082 497784490 210338593 389019428 675982739 686988347 20378271 444799750 392742215 822770092 496704551 686700678 800023219 847546134 266164255 770699377 563479962 715440349 452646354 997424440 950547226 956118878 587284743 934916451 864538250 938974667 968738259 976706511 863562190 903497738 425336252 457726651 841567639 957104695 594419593 804006059 20534658 633866391 736290029 832448175 99499542 114542894 462565005 466310786 910127801 948377393 918668397 981151619 32260119 754885712 83324092 109885310 668619567 935159347 978908697 995375580 839916995 861113116 995351023 998240786 1035319 817475994 98116864 339563960 784847494 964756231 122447190 957916563 225068382 621289813 211427364 354397430 359170446 652461547 415570629 745493632 830460957 975330831 758616180 818375564 519202358 632505359 422160868 687007906 275227653 925637032 646941239 924804408 750162297 977718431 461166983 751727924 310618637 518210270 566510761 750184953 354314089 753224351 95512122 885200608 879734465 972489273 177293300 356166401 110843853 407352697 452114822 940869987 462570776 578197173 974181159 979166812 55287170 355763872 670000521 966988736 659996299 831235227 457740830 734656093 745207945 851438136 326243993 577254697 50424638 356415404 704384958 916107861 128110410 472554827 125293392 830012582 405554013 822685589 129776283 198753762 204321504 443661192 108771282 798368363 53271824 463850202 763362243 890600907 570817397 627598940 318325289 859530997 429150865 548168747 330926523 347867008 785941358 995182250 416748962 954458071 144022211 693204050 655072578 969371728 826496912 831212958 436220881 893487520 253801702 282475697 404018268 943216911 9861752 935074197 970367440 998421323 164692563 329572378 545307913 689533895 175555141 883393256 578953929 754398784 126211707 450577433 170276299 871682015 726771466 772809756 91023704 851319758 78497735 190115757 260659438 529486913 925270679 940781537 535529293 628254385 758707102 850235436 360087203 744642690 56811338 987084130 844137831 879430544 659299933 762118813 115575999 510999772 673618959 809503377 240429662 358966309 940012140 996841065 590006745 707344159 130258805 465013365 568450213 945659253 609400137 872102953 417854835 807887554 857722776 928651138 217276036 929490578 825524827 878589835 512102994 562745053 181784278 366119014 715597247 765271746 471573909 635576552 942431386 994437643 821787135 903744154 994365147 999553841 133844589 993491893 580037996 942584451 570558240 855005684 190567467 701054672 705077249 937861068 54470930 297975384 363971573 431637854 372132296 446636556 153381362 433740330 628264678 682423850 4054637 560359727 513690422 860081574 46116214 437807798 766722944 991193649 809968172 830664337 40738745 948735816 738588917 811027361 927435093 968627293 570572059 680716365 92951533 846582156 971492477 977415475 233545201 273891838 518294397 592287150 368141787 994917892 469355264 773717236 119664200 734497340 274107021 388294620 121470794 675690697 236919821 541449618 535454966 734611218 261696758 283120939 382221179 599803125 639240204 920735981 911145328 974385670 389064668 861343563 869247966 984051744 527094027 596887573 371381836 440474576 387258549 455671814 228340691 967982068 816995674 868643153 181202461 400641077 133545426 320467063 512198598 730523510 209574662 973265543 420894451 673441833 327617307 736634639 9027053 174911113 948967915 963074948 269299436 789858101 181292351 564392475 967795472 980813307 225997963 725179866 852672856 856014912 815076030 904143450 356475587 997109720 344433540 764845438 611026662 622633010 378500665 907352250 719404165 846146193 453054594 893205043 909114531 947342152 21277647 567801183 703145082 799972631 192406839 913833836 201293779 840324985 864168097 947931068 540690634 757683488 114879925 225465340 446905737 685985659 596202200 722644902 293669431 875950253 800143310 957316417 638173436 990968752 935085240 945950043 938882285 992971231 108417113 161419942 73611701 820311986 661599882 690948415 616427355 716298259 60897815 157511048 908421294 932467870 289402687 898796057 785586003 898690273 135588169 738704672 527157759 881429712 932975180 977399138 789707693 949480827 489155483 990089184 510258885 603213345 935728793 979088278 959642614 992315211 694690240 876988072 679785505 769577809 102898010 206790086 452097720 943973713 423618476 830183050 883115138 947117488 335105872 654995595 863607279 953173741 519010323 992955213 79746311 410243925 376473573 595052839 21073787 445752962 881523235 910856511 720039288 981405517 364845631 555721007 475512553 611224543 807289685 970786906 801940472 873399716 650496456 679251515 523464730 954102789 187392138 879654619 256419877 756411820 728991060 933353718 739745014 914305888 398814916 600078682 16082531 348921718 997807469 998255381 585833425 857100269 152042730 836311375 724659947 944081193 981756606 984110219 981633711 981649977 645518920 922531651 683037924 918690535 203357437 386092097 191740080 382225000 628158238 738213644 325120787 873595396 765719161 893219962 617838120 727777480 284753736 722171123 658670028 884027917 913991406 930341509 452863010 522276588 709201230 928583807 385017766 745932421 318416916 649748371 530519181 815178924 517550792 849778541 136094158 259159921 204484453 948658798 859866266 966875089 53304480 216512261 420306429 492998551 157052464 415587133 737775175 777401679 749205408 924181879 222017557 726878615 86030441 820532566 495320088 507208014 448881430 765470499 825321404 949116919 89145367 948111522 578032206 963070670 515765199 745935447 822874800 931291330 410421405 450889532 104120576 224743754 662996951 743565759 195863864 625824846 285371552 543842644 857626396 871421057 682769326 858946071 521743992 527953155 755103519 991112936 583082681 594472745 998753950 999306319 757200485 774263889 312305492 434884779 77077116 480508604 243069651 657690536 990424674 994633427 130374541 620388276 171530033 256523250 117985475 862086532 989224651 993626370 718034357 829219072 612299586 827366920 272347250 374032917 777903483 892552562 971781291 985165852 460685554 568859659 393000414 543246436 142364417 374577588 157427350 528695498 4257780 494056377 183406167 715865356 30204205 107561718 450150800 673552077 247711654 487488510 92525908 628932976 427182139 658108267 388251016 965813353 825015151 898757537 464274732 639141782 401961620 903257128 716220382 901482696 377061801 816903443 25874235 67841871 137233422 246371445 791919613 834523602 93110229 382988987 500415956 514551869 774817688 879258783 411236924 633429277 235876101 708192367 569275803 996203565 688197420 732940075 793905725 896914251 141708978 721426503 346690993 652616344 793610987 801604899 303604618 496565216 72833097 542118070 656067239 729425159 193383951 506862964 517717090 908318043 59247101 630105884 538755725 957834660 81711493 989370694 258995286 397752670 33211578 625513180 251034909 786754176 97551929 346182680 207739490 816467642 828691321 995897943 294926971 787402955 598343016 601056354 445565596 526452207 699894056 860224400 345310772 798042587 183989092 249639478 661822659 881966769 883627662 986107716 735367098 833850482 275481442 667288585 298906124 981783060 421365398 532927072 916809324 969035121 771295936 797072581 894085832 950317674 753353238 814542938 217623703 579232780 277156744 618457109 576378888 680549311 933612187 990455362 650566388 686418473 770171845 946295163 536793966 806269599 671360506 787718696 116504716 749536168 505943126 872102836 293532246 849545111 701860804 943143576 294889882 844761724 222892101 966728222 853212659 907110381 971807097 972313315 760955466 957070708 946398071 999828369 724756424 761499753 764230742 825369807 315211320 466464743 539316519 923710736 573368265 656976676 701337180 799424248 860184494 882624191 96304103 121307724 424372874 680542821 972112587 994693441 980873675 983771293 361996103 550720813 607046210 628629831 871282377 963172017 687875767 761748961 492020465 955059792 553963935 897501880 819015135 854571105 769789851 981721048 713213440 767692841 942343246 965227353 621922863 833845238 943551763 997365553 21190931 895122167 119005689 789812187 391003034 916857497 89758096 146433804 854112888 992583602 124450882 169344577 336198565 992867674 748842683 812666801 847934411 953713073 471703239 727766844 299980070 711410688 839052941 971966009 630018105 781735781 10713389 128414096 890211718 935599291 766158101 826542442 815492226 957944715 281039884 519162637 173133977 848752336 154514717 230482184 277821999 701159172 778572476 970039188 822248117 900383805 392268710 395653049 810693484 874505862 802434611 943010877 703660099 868835430 773753797 806445341 760680396 953710624 707973393 898419188 170508883 679783493 989324509 990861992 466881900 648507159 662142329 753927752 831284708 929179969 258509634 447919873 567252627 625410640 964580095 972198674 370289233 488251165 978337195 989559547 576156929 622143623 277929908 450059583 183311603 988501374 803837492 872503816 528409406 808034411 251049956 261068704 254602855 910463049 192628283 366518068 629270662 673705470 962140369 989632177 209692323 777403552 377392521 476026858 13106736 315439120 782401424 841437626 392286079 489402339 769629030 923704355 461678178 511405173 179988561 527334779 259059014 512027155 296058123 504698629 527402655 680911967 202031308 686162139 152937228 161436015 937449400 943875738 403500867 597649193 887459575 963317613 768065712 844305639 984125562 987081945 961032769 986785152 113243623 789813628 31162446 423371047 46863893 505304522 823579994 845884260 225048091 886329919 760148469 806343807 152201902 513006819 813966388 865030541 474107567 811593939 356041517 464340386 762614589 898596184 71858870 832338179 756769876 787739858 914682652 981416728 610742583 801700883 620576749 626772352 930591740 956686837 85705688 136639523 163341397 762186099 918334348 970677116 820151291 902141943 151239803 208613345 612767129 781981131 132075827 358734560 317102688 791384642 963116037 967438023 68280112 575332705 62736323 470028933 923953987 932440044 892276466 924994909 360199065 932510380 258499621 811837430 511656811 625263710 950028142 976531038 557386896 590340614 691460386 752604047 569231254 590092821 349174003 982195969 675902202 735756371 755892339 763860552 854042950 964983549 854775515 870286960 495062691 662592167 534934477 854731971 209302401 683853105 746294666 876653502 892892275 920570379 298975063 519638724 461013226 990501143 423464597 698635492 648201860 702790707 419900661 481779187 606297771 892143124 468343515 655827274 197145609 397734788 706716269 800202251 868658677 997547704 882804225 959244459 552268096 902643765 410845787 854611119 824060172 981812132 691088363 907543796 275963278 860629940 404598869 532184153 615512643 698645113 144175125 822576853 801585189 861382709 912213400 995884974 705610666 779091502 256912844 826220622 115613544 352786253 777701344 872364139 783063471 998222979 867072883 873208648 214606328 486933027 556742915 593455261 226384084 558225367 747814376 781088895 353003357 978401641 928391344 974293722 135338890 378966890 147960063 754080460 554012448 576334271 85095083 592807284 714475112 854122674 759920205 935904134 838179163 839659829 577564542 726297200 344672160 885815747 128659365 797507355 274147308 410900560 512505985 763581405 131239082 378311458 290375974 622441363 150193518 171863186 873682480 975545082 840673600 950761231 800215809 918055210 220333032 323233721 932560300 943754871 227598146 594437773 399622225 689863264 995666996 995871320 828620088 869013977 999345570 999702148 419895235 627000694 264007756 621361294 597707191 952132548 835348369 947231040 832042920 833795484 380598875 616256601 379893624 438386872 353125114 760108075 624340652 913739944 551344766 711388493 62923456 293337247 432907301 673656322 312042068 342148852 515472212 846830584 205511068 505575441 940864181 990725947 544374478 796417994 776121732 932951225 740619234 941296113 990460397 998224560 118720879 918362256 205871967 491508422 858902855 900937979 567696923 640708400 598966137 983594418 253233317 975240304 34888608 490909154 58458851 161863347 308365036 731902435 249916360 275415701 37923316 395735667 242018899 896365380 356639069 762940708 709328416 823986569 336147120 867372663 561851758 841879089 356587378 591461358 384717567 995952679 185308698 262490683 882680994 976430796 248103122 913003745 56099135 247629334 484282280 792099284 427993183 631696903 936869644 996956918 35581578 61473266 311245411 487411157 734604412 845852022 78922306 239895652 428745005 927504658 950654395 972083870 959307805 998973213 878176831 885660498 41841227 474498858 522572006 814805719 266831369 650092643 98173297 449767882 337103282 881062684 393639265 822111638 325023155 651569126 492548149 667509898 678259619 928619552 766014336 996515721 167822003 660951700 138554733 545020655 820202915 937679943 138566307 388468691 903862194 992060526 746262856 927387185 133185261 949684962 6111145 62906532 838183374 969411540 490022618 867687542 40073726 359069028 41089277 226203396 824638644 879584383 217746140 268936407 804514783 989360491 860542083 881784839 590304670 723413692 66184030 789273487 547066756 751630861 264518201 306026150 772093762 793039493 661843845 993544937 423459980 520429739 512123750 760783962 894878595 983920060 63992798 155854763 529545445 742016737 378164081 862995989 267574591 670173952 933697111 995971934 479895817 504451370 171191209 872980570 913390837 986428884 558468753 675527641 201997000 405272469 796370599 966625206 596260781 862980330 545841984 760187248 155370654 831919581 116787459 476747081 182979812 297210519 508750756 737723567 92525965 942823116 525108760 862594574 301401890 388130515 278298024 544818503 763804293 947655227 896403888 978376384 744377541 870672990 434306055 687682555 353296791 605339164 182747171 600056283 931627969 964994731 198114731 770182802 528828051 655277980 247191474 289331302 619029365 744532449 886852138 998596494 8137208 305335546 21562220 594154541 777354076 871127765 922636525 955092846 694874189 937055752 286530645 379736561 504895396 558094657 33954068 351794003 129136573 675573904 456351390 631602109 458848356 845162793 708613321 985959921 345772164 367718395 92912954 496011135 669474285 785498608 668310296 818008730 297682588 883517622 736947834 757657015 260086068 937785049 999338714 999516450 171330771 965524416 301967720 310253143 907357491 947400541 53830573 641918244 823834079 851598107 354551909 491316953 400780126 853695286 530490725 752472685 913932069 943880912 722994942 951828036 75256343 498328592 410577943 933601124 469370809 957210688 257612777 416523130 124799779 917056537 555019386 781900479 229791965 251800871 339578092 998916950 52588495 790887338 928496576 936461044 966306517 994454112 386566395 607208865 508283516 900849248 588628553 961889544 383835826 550661968 819757690 989734383 533491803 823069401 161906356 476685204 623697746 774848138 678962247 997009270 705498294 882401101 738628891 814984990 469963877 948836781 299775352 934064148 353495742 492833770 755810434 938747522 350851524 718668464 980536250 990744781 739803428 838946717 68394864 148640419 894561879 980898655 52442181 288707361 60004839 628966314 395315570 840569618 994022479 996510250 250520170 407893510 367119189 438743152 904690666 922640951 506276422 600254343 318087510 671466987 95092188 410317832 755809943 904176630 419009737 795186831 602451690 791929353 154238969 438432422 222944402 822409036 38435014 321995267 815796483 885845868 657140259 953021981 583521758 790250914 34730677 878925747 890878643 891017465 379322267 728790346 93406875 103171700 399266855 651519947 336725635 494822836 465545760 467640035 804447568 843225013 603826459 997429336 568849431 746674470 866497000 929083983 953017622 959437333 439377029 527752069 431001429 868609642 622099105 668301345 9782649 138747742 25248484 75045945 391386558 659048750 772611694 996757812 13919518 103299666 751597860 759017865 987179607 992858102 178917922 979360317 797259852 999171363 139956318 519943948 844671298 893493179 517038873 791520733 845966769 938833435 7355184 953113114 224144917 933906744 519071801 901167646 472496392 731749360 336420190 340644085 767477268 895574840 363598057 981753614 203411045 794563952 452739822 453687352 301782746 334345142 191968818 715118848 598194378 917942705 638450726 938624393 14718360 366071319 474948840 831544028 703227098 857643415 4652025 570444724 554428239 903626693 246660837 932005840 955208477 980809785 791720132 894201803 434537259 532601395 619029879 634794177 130933866 377973678 873691617 923801559 482449325 766771721 588732277 695748659 803866420 961403559 726613686 892212475 865141177 991411396 51724040 169934803 842800397 864097014 676312783 989326087 532136698 982938564 398869303 810219397 224826242 469972551 176244681 588492910 662574525 819268543 996232179 998577922 295919490 905355082 99694122 351296134 699941697 867704787 402748906 926542541 954263178 961156856 363358836 678949276 273094050 790068769 706963101 711368442 777073863 974630071 65271627 698131883 966387550 991624506 998455899 999338945 69129161 476768469 971087333 998645981 243321966 527248532 380847096 995849745 709839655 844952984 824148011 959924550 947972309 957273887 142558036 886126545 64032006 622559126 956072581 984908394 671402858 861551012 309523935 522500008 258054745 422425336 533224340 537770403 540509308 974937299 14081850 542359377 906226300 961597732 896678458 909388262 82078021 787527443 899783347 989166185 405834004 876467372 183436089 203822764 34408610 55730770 261687159 804199068 95631640 921665364 441588854 940042807 271591597 507294710 929898033 954933296 998158558 999100539 814545604 848545948 431674274 773528869 872486936 971087365 935014740 962834185 512336569 953205490 115462174 755373840 201558399 744883161 510767988 910094810 761725890 879783731 13543671 657905510 583280402 703496142 917907285 989382178 193985944 444416186 355094276 523963190 586951267 880701114 11368042 790341790 488838860 701716804 754299660 968561044 940526268 990535898 468118906 593083047 969938935 985796435 9431596 862666737 405155876 819211108 632154570 867393536 207757140 806985260 888989326 924827902 469784197 782912017 690220445 877131116 442516476 993812269 833012479 982562243 43376773 932538023 286024833 827910403 520177063 771845333 15447273 530407644 820641946 964081481 111801795 769517229 507765553 826483639 431368980 924703291 403637915 554116937 595192109 789902751 785337249 801153365 881666936 933755161 716895366 873604641 642034357 851409518 704272493 869346208 449565413 734283709 417836 266801577 530911393 685520454 488572721 687011774 829649616 847380394 347531577 904742929 398008080 656963985 236344873 714123580 668859478 832052300 646875422 816228500 809941959 959512702 89949831 400109299 892863349 933450381 925696013 932449249 212503125 655124932 474835363 945843291 499832490 660565542 43293831 198160821 901604955 985031980 186005264 637050688 536196322 710635412 55823860 585885789 460199119 913431699 885386053 951925574 120923753 528166997 272589985 498005263 992142062 999560454 233215315 610286361 183359861 510275179 876504938 888427189 766229399 950750161 141636952 970042397 631038215 852367617 834691348 838709907 724262177 997534129 212219967 939975718 39005956 433801078 857157464 872640061 895720666 974011410 480481111 585088405 742229247 927004907 81836533 634082757 184623670 433710590 104146476 581212200 611283006 664269095 791608071 852532857 381897700 503273360 213026340 247540522 538429807 977885125 468437537 812148832 540173979 894006968 817767628 833369328 700702090 727651997 110300427 884008557 862800010 971227185 463656150 622147704 521544650 971173448 365481391 551748945 915698123 923648290 893729466 923124656 90050134 965793081 773441386 934377575 413596101 724264652 773493260 811350828 612128493 791977856 934055456 985908856 347325630 773845118 746769182 890096807 113983062 908487757 699162218 916915219 483710690 781736484 791476907 946920001 175377928 677030024 642785416 961531125 493765066 903246536 605500445 656537528 546895901 834507244 13446620 224001174 206364295 728000113 862026204 868725003 972721292 984246324 953590607 963832460 711819970 713208586 256071958 992730550 503047806 818706628 183157734 249463707 63625103 409759560 42232117 987427457 81812447 861664217 287861921 995345060 375421237 567601678 614045256 686626256 536294935 607084999 958416268 968048397 292199018 411497321 123882534 471530764 481950120 561212403 255361134 924504778 479113030 960448703 32067102 853381183 446605669 836447305 687279147 871251906 503717147 540175842 533792235 850907927 993339594 994457818 41281230 362469220 528190874 828402391 620864793 848160325 294267286 522356168 554145907 936251005 444356755 791125426 786141377 838629720 112631582 567461210 904906241 959895231 164886005 437831395 625590290 744335299 912415383 915125578 796802984 823993226 375103779 757963696 835298694 935909262 89689663 744395803 706360517 894859522 751308963 986360505 62422068 666148980 513533056 914940610 198096647 287929141 221648996 602065344 761918294 805099543 72788510 197590815 262136202 486819469 501419296 869402816 229801140 394888740 758579286 996899955 572502188 736948575 157507242 261501598 211571023 381909386 243793498 572267896 365501950 644082658 535027917 956882968 522704056 572024447 922467927 975712418 204408224 964111615 74921654 90258349 134139120 223834399 28479654 939649823 895304820 990939336 530805003 916642030 856438711 916822904 986889892 991862813 502355318 988242628 602681271 958228847 150279071 375097894 934663837 982986825 176461584 933405265 748502701 756919994 677808032 837895297 739705278 901912251 867147718 937712909 389273534 948272187 548476507 993492407 550168914 725686187 492028528 951378680 315195924 498883892 15627675 561261812 71839561 357352719 189566774 224082566 470878650 776550885 625539000 845272768 627601811 672203991 811251192 921895207 600829482 606648848 509811002 840131883 197860994 742123602 694992729 786237614 144696520 464877141 869849016 897823871 46536770 226632057 197089977 457977397 197942191 798762789 671800488 753445169 872928383 907934003 345413409 826329524 948004117 975176401 500655898 530931091 9513614 373940983 583879026 788807731 731441615 814078615 850027614 894674857 331831558 702914634 80820437 591615410 314972475 770473953 742818949 832548162 682070283 715409740 607162130 996373496 447857689 469618361 442712688 783501097 725350094 904329214 568666628 890191713 963241679 986754271 490982728 593814192 27068649 761107540 955559128 968703740 851982214 944987521 73509 487550699 316359120 954411940 516525929 699908521 793065914 807445227 185663397 885621409 22699980 943874330 840431975 893902831 446729425 679633568 519160583 623662343 263093136 732609218 967052773 986502152 325038732 550119476 27498948 563980350 114900240 525382690 241699271 321228311 241069778 246166273 33663951 475845466 871760528 957834973 687195690 939962275 776342959 877998830 567617862 604546947 716542060 787164973 637907809 807936383 58561630 69548642 873819477 892838088 780677637 873581114 875956023 989519245 399500546 720348898 75935303 888128308 71753734 907108830 759288280 800287628 853698331 936001933 619570614 959343490 665066360 964366287 666462468 720321590 922973800 985994839 797520612 815412603 92571901 163344065 764443418 768470611 310299956 372646071 547395793 918198388 247146280 248252734 705874089 909431586 753905944 755013093 341264743 639119924 153321067 273085259 774968410 840428805 48743888 480216948 182556391 490603524 877616894 969780311 785841533 829425691 354898656 989144006 395073711 990033197 838635641 990320372 448738130 920668500 656867121 924227573 424235544 597097798 755047975 942494126 883123650 948504404 569478098 772229025 898870295 991107829 890152563 906612490 813897378 892370424 140149949 497432240 611050210 662323209 566482194 756850769 920770475 942799037 82836373 704100073 582528251 886675192 90799780 763975285 22177467 638119651 916018090 917075050 554826855 690545437 503157423 807624358 569205060 575024619 752836049 959264751 81092552 646556973 117205800 343281721 610394737 670741550 300902452 452856502 408798715 578761269 320068925 444645462 307716781 831959846 630100237 798344045 85224795 417855332 405678948 981061982 792667091 799656333 493355016 562608378 963057049 973336107 681936154 792759118 938430891 987356046 827948722 980564031 470442702 735677468 31085313 604955164 583137893 686529542 819155464 821828282 28142455 919134288 328888053 358323813 170478931 356570073 103004430 907655452 155520279 482895830 123581541 618613873 358486231 408879303 961527328 978357344 372843242 666185895 435332878 611884828 197885160 412621534 616084427 800229245 893399623 946749753 936023023 992350351 321647597 431819577 875433769 977492904 181831737 675796635 362411865 584110094 649695785 907599551 681228350 778469039 375630467 604470702 374273404 421775842 158585500 719034374 229813454 303832978 469776580 502856178 605962467 805126267 309269646 952051261 928159774 950010821 138766440 280055702 829793381 876933262 418376369 962669452 755919038 811384805 601637221 734608037 703911355 934508277 714389751 991223963 406513109 958080871 493397938 914589267 37198103 673678311 121237594 213382606 1060349 936190054 351959272 806553811 412961344 666027252 30111734 383403832 847117086 957329198 29942933 330247227 381519773 934240541 314271630 894060423 51889498 930089745 784799505 983437704 160777831 332330953 214674391 888101723 763758419 936270670 578042959 885276582 7149833 255776378 529714762 650164231 58259725 607398007 6038152 996192885 506851810 526759857 625452922 814953944 833571605 988113065 664429504 666471744 796335216 925592173 841668686 955357476 958750626 959642335 521139534 956013144 854693130 982721685 323898182 702557783 192276950 502732516 936709872 953023273 631805255 774034132 605845468 968964253 845950518 851309004 517226530 668596903 380510851 616996198 664046673 846131451 782084511 890911768 588792586 916842732 550427832 917027795 181157727 737894165 18346214 152404488 482740502 933225034 436999695 629520476 509689034 538461603 768927382 878858087 708769580 738490353 40550951 227073264 847887818 970766629 851126400 992113418 126308280 321668045 861679743 974792565 438114196 540291937 783566637 791537219 554063473 723786229 161881531 237237364 553688672 604933775 815320390 862170239 3554960 572975628 869716621 888962348 471859738 683001315 86366555 327460584 417175364 655353660 719775994 988171481 672062590 675895063 426814628 577395370 840692478 979848110 321839356 587173854 955076868 995552563 520652516 894648954 953550548 998610742 593767164 925404065 785435205 799291616 446078914 831540697 157166908 495148775 248792344 532614805 405931137 637324354 333231238 924357630 404080915 568547963 148995112 379527667 176568076 885478967 16828067 538858145 316686293 499251564 962857083 965433401 154624100 681377113 907504047 984937122 265251647 776646037 374201813 385500011 995356176 995543432 436166973 479278381 57496636 202255064 851178481 997807652 718180734 838870159 4164766 709194948 120494423 902016349 892416148 932554207 694185385 815268358 750000590 931535242 455232263 864594647 30381078 784324441 359256857 401620447 37406331 843942643 534160356 900276208 153546948 252077099 533673695 880071341 340801917 404618154 349320212 701315012 969771749 973467506 559326680 645191051 237115789 446117027 66594813 395538018 445336334 771828083 822226650 946575909 260232320 394320461 278461807 626531701 748469250 913424320 687131211 745982175 719455055 756333382 684144448 725411863 337393407 541781736 306221937 409327374 713757942 773850160 399371463 973946916 292335710 850663198 353607906 752215327 221893976 454602572 199141208 517300584 566856505 819872951 97916096 593197420 212364694 540114502 925330420 981442226 36033277 223861333 410299917 633359434 661806070 967116000 94639312 402017319 467370134 719044410 920813886 990728540 633842284 671218048 942448394 966522839 677898692 880819294 797322108 819267563 39535862 420832150 331079684 571632874 929897640 985925995 522351678 640945770 839662129 998635675 77165693 586710719 332086742 720361860 696055203 849247358 925164839 960965974 707472562 828217996 189851788 585151217 239027234 280659035 561234799 770068322 637662880 687100993 308412317 700699407 505874159 617883544 832656599 868953588 229952305 891955827 781990732 852915180 721914545 964298038 796834161 998605865 123817432 642498092 756502436 973896174 941119772 966699919 581025323 997643026 262207684 721664759 667983948 787717701 619067849 760250771 102090602 732363874 651216100 955811070 176705715 445887182 357439466 819092893 635834211 985957976 18466823 471216681 954222921 959332585 992209354 999111864 265594278 566027095 853736293 914095538 306449425 408872423 182532443 906968165 943041240 997363398 22734276 872769749 642962625 954705275 936370807 960968283 709305615 970779074 687502414 936435380 544701377 877193055 342282333 530137645 556464657 962469598 214763260 386428946 586746218 911876977 863678961 993938597 110624085 647769441 993360381 998531686 656603119 945032798 491314033 991761313 424925576 915765499 980982223 998167596 924889904 960264283 927572173 936943366 431781103 961160649 120838614 431077639 147166980 420602592 814050042 916645461 683774907 975290178 622650799 995900684 223445109 726763917 287188146 618817941 680058468 705185408 308221715 984668539 438445552 507350115 955188030 983366745 130081134 502240159 27521032 914215162 972433590 983547266 804324308 926673330 161910661 491490061 105081391 842098503 266400992 359224392 680593376 851572914 130486260 157430330 456759833 695829317 981852298 988623815 943076606 997312488 163684996 331368449 896244829 998554544 62111418 535305141 51959643 99773628 50849621 760566269 130502108 666664258 333097774 577943853 857559475 886542765 461416106 685035277 831762594 855769671 917980673 926324585 845748470 877142687 71346007 429311989 872776614 993832409 841315547 932434081 747565509 892808307 20439384 946545095 237718016 876400243 120301148 591133146 812650184 969618268 663058105 882908971 650064189 734535552 902975532 937146864 720177654 842543740 600038254 767297071 202850069 962363287 641014589 746033618 195855099 670242852 595721221 929538388 533277299 561879141 65655798 873453423 523433213 578536416 25399589 91579924 834779943 960152896 915727484 928785355 863879103 944766261 475157942 908077982 879959631 935917206 122273960 508919073 120313841 753172456 800103377 899637342 645690049 921345892 906598026 962932147 458073965 595075310 883211324 917204289 728810213 893716999 260563124 900615402 989453493 993233729 911805894 924458376 528730868 737301517 122283529 639523031 11044813 427166219 57698771 412733559 349619274 400405958 747577412 852132084 22121488 719736575 945953679 976492825 257601941 780934407 256777861 701440110 148497625 273993748 91601711 814046571 820814496 828431045 354114422 548090634 663798840 753807423 131542323 707517029 620218514 647433119 943124958 999923443 802065512 937600033 123840756 828907112 691179896 740560387 564610811 687129655 733879806 824572464 805679857 994485619 901032489 929523653 192836558 693275528 191631608 953885503 892898678 938985494 925513175 984377972 305103352 389518736 199536136 684603457 431892520 780573276 811029038 911505047 274163506 844160387 331529419 445631315 310030592 921202343 802790357 867852538 501858165 621389962 711409296 736022448 800864622 939491295 861673250 889984394 674217750 944387308 424550322 928499145 84806279 153631814 161487828 580927413 329983909 639996143 824935720 858133561 711910166 858087440 873605572 901215958 683293353 742806506 998602781 999150303 504716498 726507286 465215785 968291797 805486203 843984522 586836649 709507447 469595084 543734959 254995097 645021005 231877191 765048027 246461184 858709027 779484927 785200398 606048002 639953649 823222327 852841314 452748429 822713874 233871929 684393254 999173969 999918688 8615816 384220131 76075371 640615369 149342830 870321716 145590749 714673896 852271940 975133312 243583761 334698414 33053060 870801143 27603245 482264540 512057888 617328033 300227646 646759303 869799359 937171304 764223195 905766778 577306776 917370955 859499466 887927298 394708390 905825266 793082405 891186565 257584208 566334864 617608647 780103078 268444934 573613703 957884442 989541351 625585697 677528991 80585439 433790220 482810962 932577074 574251824 897826313 364521066 725278551 37284808 450248452 942945266 953130588 572312755 577273670 397270273 966034422 710930687 974147416 437359030 563064106 301953087 787158132 223577657 540217768 13582411 977182420 336167241 945034017 541349169 953325666 269520400 939092187 47556935 138083336 913309789 963656512 812044039 925909218 160195271 373198792 339219472 612572378 454035382 975888385 113316000 365258018 383316568 590567978 448653602 466531908 480740848 513139126 45571335 205075980 782212426 783772707 792383463 938804493 999355852 999586881 396400116 971618021 752071465 820851451 729539512 982549186 377515171 556308479 686272968 996708604 620416700 819466809 126607336 448589036 520423645 797603088 884996890 911789994 237759885 868029609 178785105 635348227 568053799 720809724 866349990 877062030 673533535 869439238 480374508 753924280 104688571 442112155 875574205 981976128 779133094 972951241 165346280 409893693 854994256 891016003 867733265 988127783 439298852 908993417 733766529 949998770 4055850 69355456 725522160 987392476 1778648 66619286 986299371 991425349 188997330 323160067 473870934 694188159 492443987 543699134 807729621 860809177 81138466 499541939 248204859 983583324 702571638 850580022 60277027 123704197 164099639 623799212 826251495 950790095 79416175 368165804 247256298 934635388 172208851 318896916 337042616 838910879 901644169 922383199 495833406 649821180 970896005 981979244 593100907 895712712 916580501 924331616 870469078 925094790 390716742 944361946 236259106 717862217 891933828 907400640 194681928 736329709 246320737 541927334 812761201 975960775 317246245 322107749 742695532 850025687 372686865 977950439 198064985 688447939 485426003 945503690 709179238 721787743 415815089 662438901 798254062 909799627 18813786 914152178 428104041 623735180 593407940 940704290 405805445 988937695 931178621 996871728 80339139 977631916 403936388 687553171 199564279 711383310 494520983 873870775 874961161 985463336 30914981 344952310 959779131 964353245 471551803 812847447 465776776 916557766 266276668 722191945 214550086 475962641 556830627 744666867 170757501 438543885 119461796 393940268 229997043 314350687 2190871 994967049 648697889 764377824 583658377 697025208 188116173 201099215 30003029 835774718 831660010 954933917 494368412 598586130 230462947 347643505 117578423 914146236 322889231 780379692 622059541 996631966 824210566 881701802 765093590 780643325 723863869 922798763 641604130 667151751 445719597 497460062 245951692 864687567 123582483 346911106 369434579 465912077 950497133 998962971 377261231 981378813 760914421 847491304 898688821 994966838 901507635 925742099 215853417 532465919 274588849 951390455 797799703 875839107 768519765 860623308 380047862 928133004 306754394 328341079 620196564 807488265 796565838 962495372 152363895 905325500 840335553 845062079 684765271 791743304 797442573 836055339 580423361 961464983 202867663 699538021 443357714 570626897 962936818 974156423 743239594 791125318 393930070 572897493 245043626 778498298 403746161 615600837 202247775 402442328 617756226 923315887 106591821 474627061 518911194 559143395 784576644 861866667 632551438 891909819 718718728 746873344 924902250 950549403 188413948 920791318 262873026 349834611 178640904 649209903 34191974 712479451 21151347 146883180 644812738 878281493 403583381 684994527 192705389 473659217 96973543 143214171 813711148 855716839 298290889 980901032 896276948 943346716 859078071 999277612 511741453 820168719 552144938 981714654 989066240 989962058 811257015 859578115 422460333 524988828 509247616 641514669 956755129 967238189 49213367 909744927 937688478 948667942 644287944 712734485 868298598 881254095 477076127 600321386 446623208 952501470 574770864 704999448 612553947 811234804 122286180 308457670 40356061 75696255 484395185 485764065 597452773 845384930 357356604 383784368 447811757 661056823 672150348 859098125 972023432 978797117 482692858 864410505 761204172 811385542 391106865 844372766 951652046 971198101 926230615 948192694 82228408 761029931 76016808 464050309 110583468 919712973 839800677 858386794 634040519 921809635 483964739 850224095 507790908 684947469 991168972 995950171 617808927 926589844 940241608 948292004 58844624 94517395 168249261 446676624 65581828 216891691 202033812 667553494 169083987 786176117 491187788 873347103 988568167 997459718 298614028 873868424 196111366 874600097 276109881 871833743 766370520 930739582 333835721 407775064 232220214 612351898 561646930 765506499 474500918 798213303 963843041 972790487 690527015 878206135 543013329 711884774 159224561 814340450 501479371 911015216 332144222 608162146 418880889 917596319 715359074 788999159 680453858 767634346 971428463 977138319 177399859 505541612 220794698 690481422 527218423 609499676 2308665 18741865 580143360 728599759 102977725 550102332 167344363 998299765 403614297 424462226 897593818 993962878 999446433 999862954 511785318 724163180 912439025 923396839 174010645 684043773 81392240 327359142 980280746 999632347 253565587 309658602 176875213 394602698 836439354 917315483 127686138 660260395 610038154 723827628 236714667 292198911 437099367 810270556 814121296 852282367 88507270 939710042 339863035 495050233 43459465 660614584 787039458 859969083 647256063 886162597 87234975 585740306 928635476 981032181 745822327 995616992 628591971 987102857 451714144 604138513 588138301 846252625 27858069 853704803 116032972 228483796 729548353 791414733 556775539 612563305 844862272 849355833 632318975 889877070 380608813 751146770 317592968 950322885 550196799 832731753 223789627 466539867 230003140 412515934 696474061 816327454 557382068 583919416 252516588 395198185 60697960 827512189 91564565 212574732 359497034 922515499 644435566 689067480 357459848 817226567 749793822 916130310 604561900 714331763 830221125 993104332 156856781 326495843 532700071 896466105 63533852 476163930 9025812 702516347 727430391 991123996 999611794 999777142 837309831 960582812 863420225 918039177 395984106 897631703 189633240 402321207 719802097 962085496 800262904 823531692 107931857 499450298 277190561 827018011 951256590 967984462 295630048 716520114 147429365 576464728 632106473 927503872 539062010 996356261 97365138 311995280 415231556 903384994 25497422 496933043 303135763 602559622 691024884 918470297 180920934 973555534 223103516 921016642 566908306 735041887 262615156 938731353 98144176 434415908 661129651 772136567 514422 868157978 978252010 987160447 716780454 840173435 683228792 762823304 401151528 455349313 911439052 946646461 97026878 906650528 455155967 558195942 551320221 884046844 858403625 935294419 668874598 787158505 634662080 675787118 875016935 993551989 948974649 975804007 45683536 850822085 907019981 982369541 606984734 918527694 307627805 692002457 39202333 884604321 33418101 347774679 207274523 815607118 15958955 188024341 532787442 873530575 88263687 720127305 92751284 473276756 339236268 580704512 891208757 897652353 433706785 664993133 881305438 903594730 281552467 790079125 780343418 973100856 30818664 215621171 986432980 998558046 291494682 718683965 114862795 780667651 72058568 773427054 43130700 222623785 51661919 355374519 601520251 697960791 684999557 752110623 649280811 855737604 451464056 562592009 845915190 895982217 556293575 805808806 390451168 820054762 733446458 758817686 277907248 478904600 687586703 983268819 212274309 638050999 137409064 236185187 513707272 747811766 29156564 92772448 262369542 650182257 761306300 901584811 423182091 427664429 266592918 372493826 250028972 491313647 657544988 994229204 511171239 573541552 154907050 731894197 628447428 903310997 559966153 831940247 563135311 809905155 234638251 511040635 551547683 949362661 795625664 932136911 85566214 277184445 334861746 815963047 929658926 996061201 622849628 854544167 918257514 941828840 825369774 924062129 751225098 822606217 159774149 718329346 213677113 803702862 811276102 938177143 502093128 966325905 696035078 793799696 905288178 959901995 249795556 776773944 245577500 638528447 848520549 908603487 673093449 756557599 263441516 277864995 629515022 965708145 455716230 644503406 277685699 384998866 574724986 831832545 918249317 954033494 781532322 920083305 123867620 736703924 996878414 998935088 379834865 948582648 909710128 945644043 928040767 946115795 422993132 611661841 643038677 802148422 253991881 930178353 340747672 403209733 434966230 583227640 328805378 599319689 455761419 828855359 155890543 468888373 732646012 776565923 53729416 79510053 399228259 965150640 976822864 996100529 737983295 752528888 532014361 832220681 653420327 952203156 863964585 917448984 412404943 742267577 595822863 930821713 742827748 897378971 772012086 850868732 628300105 908363892 849418926 935707994 802062980 889954369 415133093 499828215 70448756 774544326 46527664 557514262 196163930 445342979 459826414 621600813 747669277 985983615 630422679 814476441 269582373 424582218 761528370 885025590 20505668 482768962 767418931 848530352 633102560 665919397 152578451 498539364 46077468 531552968 127230449 666018783 631476229 981320122 482891331 744264780 678848049 810200411 417118100 759607708 301836207 453048789 510548059 698453708 257670363 500902913 593570574 986706003 697399288 949315041 528766819 636091765 180577744 283545518 34264356 283319260 349155802 599600175 793337103 844023488 476097800 508245739 135072697 199524071 527591815 761691532 81454433 750563239 436756037 652803561 90822815 528131807 689526424 938602370 799855380 822826853 282363493 521552527 364732058 673157231 769820037 894871673 231000592 256154866 447348475 864476006 692546263 745609888 980503123 992703466 594640289 965991742 866745211 938154191 734127379 890665280 439543771 594427029 273837491 765195782 225019269 800354562 799211296 864478350 5176441 178903722 95653320 907076757 453835274 577883533 349582899 629330805 601250198 674652415 56834977 263047583 77337100 508761977 779458640 895806576 756308411 878074524 150511497 978048054 853573013 911621331 668924282 693447113 270997647 723901284 778397291 817436756 778699525 943380424 848488271 967477855 383925716 810947294 781098094 862840085 640723944 915436796 453965396 852019887 845675488 889053833 351995791 429577546 669568652 703408862 815859910 899698537 413207103 815919132 397675610 685185003 930799004 974414052 567080298 610242937 215835753 789967022 943890840 982467323 512139850 592553335 495823565 877279025 679151218 923481469 995760686 999461719 397364051 761242708 791472950 834275234 719187197 808164980 645990275 825031853 995981462 998145309 165706207 241912816 759524853 774463393 419761765 552376101 591221605 619412890 425835614 840042009 830851563 915195111 198585936 849319179 271195109 836173722 170162857 188883875 437541490 846954240 888245076 934759913 735896398 980002469 22058640 256558272 272075903 961849620 138570959 258635432 194336213 780009819 871624057 927148629 927728004 985765563 585390790 898132403 655196391 891956791 861082696 987432462 197496691 831401893 126894390 344605036 969833288 975698694 754872541 997032882 311814959 856468399 652729723 920683257 834312434 903008288 151059021 265775910 317305267 687568583 57594204 958427297 858580804 984863694 164371042 416686030 351451461 729176923 44594870 290930907 833554342 896341611 417607737 960119518 945195582 974834721 840608771 896286329 840973492 979628071 139591728 472702952 376424373 862343875 215978022 963002739 340598880 619188877 801444079 893385856 806169435 833589800 122348202 592765060 283219441 750742793 338204033 532828109 70824549 262176315 246957659 980455063 286539462 738091160 78622359 759850040 181937381 942714751 724464727 981386422 100327307 143415211 230521894 449437111 128011618 704138349 148516306 980372401 724015569 971623420 718932904 872239871 456768430 853680762 916009037 930935089 471708522 977344296 705997100 985234715 720175246 865675105 967097227 991782780 470668495 794922653 353188756 429366303 898172148 991111428 301882433 542375358 26233401 219224701 276201309 310791019 720159148 875136908 678076484 861337112 878025162 917273260 434502603 888098173 433785568 505655149 576674775 985603485 984678387 988954821 385429615 391451633 290929243 515887232 248039242 403597650 66166413 912498403 552309338 591360316 662075944 765739657 335725641 511677507 588448849 862596884 955324482 969074862 623637447 722070956 912935639 996464470 890657142 948780810 920033162 938713516 802343944 906646914 385058 163725507 334834052 808063880 620401409 949485739 433712897 729664409 569671398 842482429 205956275 583967097 747357541 803171660 188705664 659508185 539754387 838397605 202160121 740437232 970462488 975275839 158770929 627576434 785492482 992871749 596279770 764927208 887933047 978124565 354982763 372860953 157512615 165315885 588554924 794537195 751809260 795282773 907265596 916363278 540833304 574000319 536500060 708799699 859814227 989014864 999703707 999835720 23579582 42516449 260203406 644978016 255849003 638810516 577821379 899786599 117511965 840576666 35427472 569214546 922133924 971742334 796854723 887625183 725559643 756610794 34137858 780991537 739888512 923351871 563601038 815265429 858435550 871162968 470333347 634696794 77396596 141993538 533407096 875175449 865502729 914005761 492145544 951474778 30034281 537018142 845300024 978541445 394301469 847909231 323529268 517526459 338809722 541007032 629637336 750973965 392592324 707908780 213919532 249062089 77554723 138501399 434228042 938891146 823393798 847719191 565483071 878792745 119970019 784267382 522925418 549358657 375887270 389136568 483526594 811377793 827989402 989891350 206342762 929274189 831927832 860649961 355853895 722733552 704917824 809363727 348298642 503497340 665345601 974391547 691081226 697859585 858845216 912157419 336020474 394527239 758602994 760289221 13861197 774562999 214214650 805415561 62244685 758378960 168113691 847513741 76174367 941584747 748459676 886150550 565931368 675695494 984318702 990971853 604558956 690952235 732379972 842287471 106627722 863149546 653544977 842998278 492478416 647289448 904432100 970698974 662865977 806805823 393376608 826984407 30692635 607132733 65894246 298982663 213104656 822520141 425287988 602418233 411294337 671672704 383704885 908165819 875585754 973901999 632017689 736895046 551977929 683878550 976519804 980978784 157940781 232325286 496880047 745143749 626477993 945606906 289958625 755335403 165420649 875104215 100159310 416277969 537090678 968762139 378614938 441736790 287974684 661824951 430469911 573343167 373006232 602940559 48027261 233769930 558942617 928826709 332596616 807977248 123299311 533372279 49807862 582651724 160792348 428162369 279908411 873511117 594586325 937068413 19504487 347506577 193505641 730551890 962303000 991015455 410202252 491849223 731177179 978541999 157128371 926664500 851823384 907492978 251920077 388908174 518803796 781548394 219913460 457032276 639478142 707265765 893515305 960549985 84814175 619480045 233186318 362951636 748203345 943452414 164726218 835397083 51866218 823329971 353958268 953910246 275959002 415132136 960221940 999483652 216255741 850604792 15933518 632928055 445640047 473385722 260617572 334892368 774203739 950230121 370002958 923298121 353368108 470281799 803120471 847986242 276480030 846100817 969141209 971663575 215396891 746686667 672961453 921347702 557840635 805148226 708177970 948120213 711911556 738363816 50134884 482225291 361064802 906877748 686936053 762522345 435253103 855561218 603229343 738052912 695365500 826693384 355174164 611553070 211133729 310437609 865199075 897853193 947603151 971712994 248471717 940217710 238031120 432934679 379341518 942492866 447674819 581488129 254092221 314675506 610211931 777056722 267062247 875593214 997665136 999311733 262978443 709813978 381849146 795926773 452581749 511759794 337075687 835237113 396364920 442774583 764376965 909387688 312794603 412927520 610651142 615391297 87012507 856993268 178535572 209280484 742754638 772118281 187549341 444699213 737092286 795519637 8401680 17161352 980775464 983545206 543351657 870869324 703913499 739769246 340668150 772687011 626200338 684860431 167463729 529506880 996498267 999341966 267844176 521678036 431628358 964096603 777834516 921418053 799563231 891861578 210312923 892485394 295297617 740891948 379718485 866109819 886511585 992377431 220297380 784681551 778486050 814867018 514053753 522866846 596988144 652780916 63707432 349057518 139486501 983084922 368569877 941323702 447114669 535896768 267776331 598049797 804138779 858739219 938061112 940209100 6708058 259196844 720998904 746962719 977177740 980373090 304702729 872229010 825586326 893401691 753127892 852843552 243244851 867511803 715266139 732606057 741249687 947452403 747879849 846309542 393896435 483260549 496142432 869451177 76968361 860685560 196957384 473343748 152176478 425332495 782021004 918111931 567900742 998728454 598634079 616410558 391252505 841544844 296791753 616431129 7595524 23275397 752139417 943415014 827176086 833099405 772859548 969947655 411995680 899602124 678997536 855114854 748646830 886862895 935256525 996738392 744891849 875364122 271819955 743051094 608710789 676222947 445242739 848653251 616136012 865583672 632250616 874196145 255163283 427098002 344060996 942112947 41185796 420147641 743875055 810556081 730220328 793990181 518304769 819007245 819785063 863201371 366649171 755522665 314800636 977115995 601567201 949276989 134607300 585410239 568609089 866986754 56050989 984397905 38079404 583652747 415535886 868841141 7101330 264547168 959122509 972423953 666296480 679246235 20636936 870048022 554168229 777047204 634109419 767412560 937786195 996836412 470878960 726889930 76783554 152398722 664446977 821242067 117149929 507866921 892883282 893681917 713606327 745501394 771430554 890110792 18974228 277592978 117036405 399284078 936675889 983328085 152749627 690905082 320746198 848592805 410736929 469106909 813692196 946025468 402123813 809735081 345639073 412492125 476173829 858114592 243854073 864385228 752930321 941346939 60564101 935112007 436645747 614980568 618872218 928869076 326527140 614196856 27439905 837759803 16502836 38380494 537293072 699595176 718592280 989845962 857164154 878923299 910840761 972140081 387837286 560004054 22050539 824030491 264782516 937699192 723089601 878183332 800481850 913134427 432650061 715630690 486892645 783106522 93999563 997478674 117679766 500471661 361392746 954889213 504549328 913128057 939456391 972698771 156809367 360095799 194134980 746609644 276759129 685987007 998049549 999998330 718823746 967768579 447420668 577214826 448414173 680773104 209498608 439589479 58250049 350365534 116708742 608753593 632616788 735745192 96703956 379117512 506377274 693436276 165709950 769156672 292360744 464713561 644154434 726629667 851372696 993928767 478807466 712079481 900113234 909863171 235426389 746163262 651808553 795254082 162316916 453749768 855566643 922541581 914162073 938112587 727200275 806750151 994927177 996948309 846641418 974543122 493791089 670274501 295033175 503327601 68958687 743397609 615950398 994421668 928509827 995338626 376814779 913076602 844727706 932592521 839743898 992189499 913027047 976096157 731255603 932452508 437318016 463040811 969653870 980209400 177423343 318369963 748677832 793937542 794517298 983188350 492529 770309673 952936752 995714895 677057514 902898036 297696943 718399255 372690286 406412109 216134079 366493361 570774273 794931440 129528764 749628969 493935618 787749960 19368115 912167614 998048178 999623407 689254569 823594696 278814908 410363291 642675843 959735791 273568787 747934688 389370660 980709437 572975736 983264444 235959464 805958301 838686072 909825030 653558360 894999325 272235816 971784684 908116363 958241932 219861350 253552101 37198903 966149809 698552928 978925640 51042370 389878934 943748928 995405035 963264020 972394197 846540018 876199538 719027951 825771846 542854345 801150968 318327028 765144023 863836192 978332308 96707904 919179846 473442378 821992655 485077629 691142718 634250008 776617484 701272463 921151065 290561646 771803600 690866849 932310148 476052281 750367237 987416458 991455468 645458853 759570806 409593029 438054165 33991734 791415610 552288495 812714655 46495568 512385581 373601848 837098534 171775275 196725517 430888959 470759976 856982080 935946290 191147367 404966509 288427689 419064927 10987795 350966577 497385179 745332286 838301833 867520580 323926433 846126541 77609776 469699215 722355132 950957723 604608768 653356239 386093816 762930630 783106017 933901982 806540377 938022208 364973495 813459049 697681837 780226602 2260227 441732934 721850779 837954508 274235937 840051241 671137564 799931379 422270208 630246586 293204945 532881154 825507549 943752738 544273640 683456704 545564891 596161639 485854890 951185929 404640540 405968170 991481608 999119066 479410493 708674439 215792112 336168025 376314024 645698337 391997963 970336855 331834785 983070357 965464225 968299247 240041440 873815537 62355957 946035429 86455198 875427899 348268832 874376081 69576322 163341750 29921057 871720681 765301311 890147079 680939977 863002472 958782764 966589020 430413049 472390392 482940151 788636471 208433070 375440066 920542687 985663414 612288838 983854304 250846345 461401205 111133246 128216259 802116282 900755300 242811674 781101832 216452889 890909977 645387087 827082075 39834062 193077025 81532497 747024785 348070645 964345923 9899832 157848251 942186739 980495400 219144525 317825392 783699519 812574893 939408341 961981850 869035279 900763184 830598651 909478623 3516128 794368810 748690989 997203519 629776259 939657152 228202817 852106868 398907032 921356227 53390515 654865384 675470855 774723030 761745317 991996886 423905680 618014586 507860596 577642937 355147511 908693282 675445912 893194582 93552270 464103564 309558639 660258913 729430157 850478649 251651159 886163125 753463964 905439360 407820478 930256508 6151535 342097700 324109520 368304646 92974218 146278333 751357093 909014590 263155303 920500944 896231061 974257880 54923475 706431631 910480269 951574497 126940452 198100298 376771172 732736678 482868509 559009111 516356452 753452903 615475452 765806082 663215138 828717389 446405260 629246353 546550948 941945434 738256720 894972348 242810322 703963137 600491299 771678000 940314722 975762016 895928864 983856677 269180828 445066376 155766955 196687167 186056618 588557647 919206089 926591046 936219953 941277360 81292173 247953902 107459816 636204676 188544803 852579105 896007531 970522227 531850261 727981655 134061149 992405699 411528921 936133124 467755347 768527101 212848684 686860630 307573988 617340009 719056806 902184669 458239605 910158440 388705884 928716467 118629046 668245596 691751901 749843594 661417962 998721795 308242302 829482393 163970048 897513323 456356898 869303423 698509413 936005020 453201965 976042643 559565406 708068261 785676839 990366344 958310238 980264550 382554749 602859726 71813628 956414349 202528473 566054195 162504392 785848340 911092612 942263994 49344095 198497031 790525216 864019135 21777981 378729746 512854338 562241070 997063088 999519860 987815205 987918648 468681050 515765768 83059295 86820028 709603789 991802985 598690957 961219165 37790844 797657930 154218438 778301910 39031800 345050980 243038441 547524324 537268694 582127181 173243247 649207614 122734343 998228607 864202047 898210431 890736432 935117606 250524173 745445503 900495391 941414012 571669357 658919697 606052883 861205589 400889270 848858975 551093474 591367210 441673306 644897005 330858505 407046381 801359018 993627572 673290532 855009053 96662320 428911743 356392542 992596247 78007258 513026220 912783219 986289447 506959637 789253507 18479583 994480473 149462474 217087114 177705199 709903517 309320243 699528469 683100510 971201042 97420771 723171197 152218658 707016323 642732875 672538634 658357557 985134425 105247887 831685971 904827045 965219457 336880297 769431656 34201231 484185124 352337784 808676562 319381402 328473549 919429962 936383184 178611760 903324041 379519878 569071553 99292365 687708543 103526047 929820850 181264452 702832623 171037073 685144844 604203799 893901415 541111640 577785202 641209282 985570172 361254712 857772041 243673924 587072909 340515345 657564488 414266761 699760217 983161670 997453918 322985035 611689214 666142339 851103138 450590983 872583230 505818399 566572851 604671152 887136952 470116376 526012155 980482618 997376412 676967894 932016438 945443425 959647855 850365123 884334073 125693715 272729243 202337286 789015934 561027890 686474935 949337307 960729901 655334594 749023738 184965013 860757393 150155559 824741026 158139094 806137711 646536205 816641005 809083244 946952285 817460184 957798805 174445223 618247797 110498090 357668689 85623330 262777877 764824870 967174576 289244280 727788446 172868206 943686644 219882972 618988474 273668354 875824996 632494604 709521219 179624457 454671468 554479003 780808187 973019352 995896727 829540193 973840126 68514445 164722655 465192630 995896557 591911019 759277845 459689932 907205357 449677299 457410046 228404979 697532329 563769165 964642645 658651704 768715213 931644525 981373197 856221232 867883533 97879779 925158239 336866679 840669793 872152966 939354390 755664647 799880013 973665861 994789995 664053233 836822278 393183872 767914441 480991104 517730219 493254480 576464770 919208147 933480429 759952317 808423610 98158130 288581984 740435888 755857012 390692596 783618782 675500696 902261425 879729475 885654461 517274600 795080668 517984897 860590768 424090942 934512312 105093995 893276738 166236346 272717681 190581584 283558733 443007050 847122157 210556522 699369469 115564391 572905682 758070987 820185530 726214838 767634122 903944148 948168753 219309003 640077156 377548328 393025439 828180286 837500291 100694144 796395412 466695575 885868084 838693862 999227763 803812511 938507756 129762053 479764526 96605733 503688023 238518421 959480403 254927091 721508707 511484431 825423272 262791938 791757189 90874722 964051757 436908624 543509817 415580218 628258766 766791617 921484534 642410305 850656127 63697620 850135982 411881390 866831361 53533388 846692061 150253472 803193236 200023980 628173548 57841892 814078210 295967172 789816266 873674131 960505497 119778431 616525660 925018988 963398916 542633753 594421504 157560298 525893738 289713613 630079962 191172886 952486623 634444143 775063411 723640296 777935857 707576002 884545425 836656696 886769714 729783295 808024294 722455044 821189885 687936503 895579411 407700544 491648377 170618173 320331450 425133937 516562272 890800030 915384685 859885143 878442412 434346690 646081686 972434567 987579681 77432359 387335570 195718853 892297579 550293447 660168726 754090997 808841590 4322696 344796346 613715644 674067289 181285144 932925012 43467042 540505054 325999496 628864222 355669889 682537751 275268284 453924823 470235573 764995356 871399059 907574222 947784833 987697767 558501011 876391182 101775518 309872391 658055195 923866258 306879808 874415767 374958710 886860696 177493574 434616235 691561461 834935273 191682664 864187541 850946527 912522860 343606581 674803843 394679548 553543803 539697568 677432207 899782121 925099290 936700157 989727234 734033988 831338209 683921937 864515150 102187334 358935424 701788197 851614511 48181522 992923637 82947548 627212655 1164085 934581724 990734886 994496855 149789048 737557144 557730873 648987869 584134614 709446255 506168582 645050491 51161187 691981566 596946406 872594391 109812108 798021629 642336078 945740851 643621944 704101822 898131585 983114843 806941561 866515784 583973492 990142496 572884273 907036959 743114648 987641465 248157183 663522326 359519742 665670027 15114630 682505060 717585900 755987717 372477763 983655211 664228195 668088023 382379022 429110144 565904911 820547853 884311200 912039428 800008153 874682401 4302054 650435390 731731661 865968334 389854957 743755361 755796828 989761180 57451584 446314831 665607118 744626797 425505924 730054006 357753026 428973167 620816997 828705186 268474383 310765165 592953858 915326549 862627249 951643109 430245134 504334006 949395958 978635760 410619336 455206525 31009744 255750466 397329815 456607220 771148625 947239928 775729103 849709464 253322214 573843965 355089885 811247975 622065784 758166786 136062389 978564193 836998607 989552579 853956225 933760438 595619511 931339944 347400723 746683137 850966138 882023127 109062785 352674966 450718284 635677807 673284101 969797690 227636651 954303565 761668887 973235698 943001968 995196064 943167583 961211296 804870871 874385689 184777359 562644910 529195311 879586120 991573514 991634914 207833177 956727965 246742638 951672538 128918630 560726188 635157525 963304017 433172619 963042194 906266533 906467552 656562951 657430429 117583722 192122001 988010740 997322270 17332578 615970324 515861168 929151731 421686868 833572165 44491538 668229020 3138937 517496964 681702385 899365078 583224609 903711456 983299550 986661684 363019279 690584507 776364496 839895325 872639161 928123513 738174721 891928006 702303449 955212301 144210560 427952576 911788549 972029156 175458161 176659636 61050966 167788340 356319775 517056971 106050400 817607139 365922088 571053960 699151125 716761472 630713439 640571234 912456741 920462467 596688052 805244748 455707516 756193855 425573435 840778815 487230045 859857259 317220615 894661581 441397614 629578398 152019317 292492203 244020471 975447421 912997652 940728866 220222870 797722825 713346862 736201941 922276208 996821348 69113871 208905104 433970914 546636663 930168900 987751608 934514730 964304884 887934652 916127302 478290706 951563638 225094269 263649939 465493685 490043051 488935342 885135349 934521187 936010158 875570626 955754715 192070453 917325622 343936307 561442910 431677021 976893864 903599036 911704419 264762231 786629357 695523636 751700083 430480276 836738244 287120010 929012158 772065105 996446047 309028457 750639417 531496403 815075365 59155427 994799684 238322352 322187894 122849332 984996757 556803214 681102743 899479736 909633149 284481058 869237471 651667192 744866200 307027002 452669540 149692379 326881845 831855839 981972854 775560588 958650974 450005093 976813552 583315177 925816749 895962860 921214630 751398257 796575793 795678781 897487085 530286417 801741942 450523042 541644187 301213965 537921951 432481276 845857698 852772088 948354676 710647894 745377147 563465510 666859123 109540 98192610 716255567 887843862 869787773 998388041 461543022 488063434 782473908 904569788 287850391 472274703 737753320 857803387 434498227 646359889 710757092 824297612 672265928 719880350 878501217 890952535 377013062 797507000 436534440 938571631 808736947 871222370 209271525 803380496 762024232 906648598 686786231 872993549 693731689 726069163 269085684 771892688 177215865 614454446 840758891 851460824 62254677 642896719 753493842 915055494 486372419 642139421 892281741 901516914 845424264 973584126 267144640 872932868 601845909 929188632 16876462 284792389 914263590 949613188 473243375 808301715 331207985 895831417 202536996 631586409 783382147 865498827 96182036 593542213 306227414 698381730 88336253 449026110 101027991 829009592 233929282 309102294 251266852 934465858 471513459 718860063 993230886 999233806 485395056 951790118 367015550 863036123 603050196 697020157 710672349 818458723 262352986 858046120 158353821 540935772 282509033 430643667 169881103 442440905 253053428 992842573 827645828 844145235 297000482 856451310 820456897 930016783 177467004 185577220 240490785 545900091 691568092 939433228 948692169 992081356 772191475 986550714 385483828 661985210 633906051 855712562 705909673 830202870 163040992 186898314 771812616 834241016 82660616 607888198 851943135 959026175 991869143 995074406 458283595 975329797 277314834 450263876 490115807 961243715 906993892 945277258 986186212 997713746 71524268 466165750 159924350 735233077 401950594 570427281 626195104 895127472 62130404 624388187 549553251 608684829 319354494 719965184 737201922 832480753 154551155 877915890 276975248 531613690 169421381 215579897 593335297 780540608 257693053 836245112 975536688 978758851 663846928 666218721 604893346 644738524 514428690 944075405 583676918 913502550 608470839 734169817 589373426 856157197 571214991 767262206 232641058 339692549 208502273 247512901 69350361 194425288 718317540 734593174 546694056 755491961 561594198 670178846 224714589 982603533 610621078 911072589 832427976 865267006 536913067 906015218 71596682 122053688 54509211 721480995 657734002 910885971 639013142 918125997 492532501 965482782 72844097 915480842 257187673 888107094 202937970 655611489 645009529 664699560 17599127 976793591 535032040 698203406 715697704 725042096 330122159 433792702 372757529 713168480 131314021 737728693 274584179 400070343 500347911 608297076 248386290 547909211 993066437 998565750 85156469 810162043 494440822 967493488 524953321 568458396 687445785 806165297 590057261 742644959 781680061 933218504 510449184 590268979 470174381 559948895 39651562 910303776 777961888 918192708 734734240 999348874 307922630 746493737 575021256 631923282 150991435 481388041 434922519 962593047 154920649 689282833 856008062 893529944 281015484 326303399 229916309 582230844 734739562 835214379 201668443 450129335 712461197 949842488 63442897 100666429 780162889 875123307 50185585 81045349 374553813 471249997 648555731 991568661 950990979 971388255 510810228 989975857 710105297 837525012 940317471 979067609 449909714 453055069 914418918 985347195 126272565 160621020 407886537 992186892 955096722 961163434 458393754 506328983 99158859 855453574 7103090 430713731 519728640 832001413 246897191 502709219 332442934 719951775 286458288 792576930 753698483 992554406 565346436 791055433 274525178 397505712 695384134 880879780 329946337 648922296 795466148 819345840 557379171 617673976 986648655 993383209 825872700 830325569 501624899 527608191 84194271 697583165 748853559 970716472 351290577 926007850 372054788 919332037 31803342 193642552 365739191 839460425 251429636 505047668 616966583 758565803 23712825 671613876 278096781 471529081 355775450 821898763 67140638 471443803 409475680 609193016 975599961 989397967 550074617 933342850 528615875 904278630 332022265 619299240 976862260 989446912 727369578 887120280 271534936 878046319 232084244 905079070 81522543 571530284 661683636 777707440 989242275 996723403 211167205 217688971 83964429 808024767 347004482 744219653 847635677 984172083 659811327 909595226 52373332 986626756 787918944 876963318 811765563 903016879 768560285 803862627 179843660 196896727 921661398 978497357 588837115 845754535 586217705 821348813 736261065 806430639 308110490 922020585 190797156 525490253 328368195 689922398 126780986 300107500 778878788 861615353 32999981 518350834 69349025 627621921 343707620 647165645 936367748 999533959 446259709 463469752 536704395 779523993 281438196 309467323 408655506 877271713 747497851 761611432 681207961 687229933 774753218 878154460 743973310 772762898 911273214 939198156 838779422 841557940 23308078 679287859 423237490 441099390 993189056 998535516 540853436 722405625 366787198 889323139 693465041 837029457 547540697 660194841 489136079 497622995 640045030 718284337 597160209 767276416 955084309 977233349 955821155 975288259 886961259 932976297 966857861 970453666 679965071 974511580 964475362 967624752 190082146 611059988 221079195 768254173 157471408 883858063 238796777 928076390 724384649 791637144 738553333 823991828 330154889 521941339 93898907 920685991 322208382 899456070 787009408 965464040 302443494 617100718 815175918 902128742 865741230 959165813 229004201 770256890 567332762 573972343 717122639 809969968 41039044 860328518 258085938 656163739 791946824 955241919 998985925 999762571 708564471 916913968 764564952 775004578 599517532 899236486 545810406 830534857 43286186 595424000 121104160 707506544 799906899 870204249 538369992 778697135 562104094 784794346 764231969 923566177 103568597 475633245 255693544 605923913 765850332 980694810 702254134 849522385 4603477 486299048 815591220 951326190 777774288 811393908 462206269 470438404 55913310 672726590 493637476 881704817 81289534 83140815 793168764 961037985 144520888 250538310 126321016 196046845 803211969 907101226 573380828 644853410 7461944 630084775 275006200 382358079 981930361 983821241 472706685 614895233 803657560 852084077 563057555 653193667 583629858 977986922 245909869 834829474 930665489 977682777 551590283 767291023 630409919 766733762 661912381 790951056 949758477 988756081 795837463 881829354 129341037 676812832 402544871 447325479 278917456 921725949 505542644 893398158 789966146 874737132 493740457 973454206 780284584 854165129 966518292 992309195 590747570 617241899 906033187 913762590 760702312 912091170 462121979 863404525 581316687 791406677 97916397 286758424 380291456 841295678 322157952 515134802 34850313 430134896 729385780 972733957 137989196 342479445 434697807 751358059 521619384 947793517 365004089 578010759 290290761 443945784 386597251 422634947 642641277 739345187 694047373 740008923 53735402 777858940 964351214 983855173 302788528 963743249 498191579 577304811 243575802 588331849 407673686 528303374 381992299 410971172 811745258 839665910 943578517 948360212 969083166 990616838 460552299 794589096 208674539 350967433 577214712 930421376 313296413 756298087 301612780 433939448 194617830 603523229 627133957 756307647 75911015 221247656 165228767 994222526 926581576 975219766 971400148 975903224 81476927 315176392 480521471 929595810 738874971 762533501 44962402 53955246 813945388 937513059 422177390 849917703 335855215 399842927 829833041 930531499 129941523 828907796 728409254 746365482 167782779 358944786 924091684 964888747 345217689 593180918 368770518 448783398 749108489 818215366 816293651 845351708 914754541 968589714 375961159 526570415 802933528 999309288 484142845 999489343 402202550 717064219 575210849 718643403 847907024 970080871 474607160 991078821 284516456 971130899 740602215 962365921 311195495 477040209 322499114 480579068 951824030 995721251 239279207 604531872 726692137 755491094 30209921 467914337 546256472 975839740 68824604 172027110 332019610 612240940 655449473 804746755 172647932 986035381 840654497 922166745 722077111 850212261 710468855 729559744 71951293 934570128 319475996 753025460 392574251 846264199 280546685 629926579 467319536 607415546 263406817 748248477 210028012 799532642 537044301 930475480 950590949 951596413 517811440 737797142 10284102 71866998 764176942 996208949 996226235 998517414 423711769 649010549 503498062 943501659 795878277 859078260 697341753 731973162 255522536 479360587 193340222 520179061 562389887 988597455 501912205 717781173 973276746 978797063 713308923 815119197 712138312 760791487 646225243 893337321 710755548 866677527 257658079 871612890 955686026 957925796 727010861 775079440 884179523 941294649 122625730 648608678 521950364 766943102 108822932 787590622 622663561 770208225 26690249 773576217 630539876 965585964 764191902 852260813 740066906 784491778 108318313 871537412 283320423 552177390 92761940 513992555 743222813 792260399 737541900 983249809 529162598 943758059 842943098 933654779 157460063 346859492 890826732 892876069 833994260 876370569 233116749 876198578 814123823 886519593 946314151 969805029 825079107 865535980 914240 334935662 782905191 967074942 862823431 941890407 509084353 837484292 681124429 859483904 990530021 995958620 712090494 990794013 124272141 718726089 822818263 879471031 965659938 990986370 743699115 746216965 718623622 942816619 210135937 958375184 517716624 566398780 353844752 970685292 513463336 645481342 724393165 896808902 325521904 878599788 700657329 962778848 537700274 660347797 415071121 667009724 33003557 66887317 261264635 725066847 573310903 831105077 493402280 786954949 589008981 952258257 455695687 700831670 416947036 797861325 111302530 780920254 54477731 432233963 477495298 718718415 686476555 792003689 377287181 932476800 17055634 307845560 346469161 897135599 278759405 468889954 723285396 903884690 861462867 881721665 840068457 982020954 98067989 515558336 23735981 744046649 543369070 938422474 252826083 738647400 46256062 94539210 258517723 672177466 70635994 483725575 51916983 600586337 700783306 725756024 311000665 842055539 878008180 946131883 294465615 330123531 78747840 379363200 469669912 486074877 59991950 441640252 699889921 716541603 952769601 979310527 270798282 832981362 759009978 955351029 586806736 941310820 15894570 213656325 338661523 680030040 546025663 993270847 377372199 447655077 456568472 703422655 710084133 839040414 136606718 348590772 286531184 348576067 396600621 416332589 539486826 794553498 661232849 999369410 285894412 847008618 659236710 803195457 412536942 896264156 809953283 840860919 235745503 725611743 520020990 923518783 801049818 858875145 833163035 852042587 635224204 961541338 633083357 855105141 779002358 872221435 641363578 959638098 202164737 703645796 993138220 999980582 589757559 735940284 621540957 852680681 840770585 885658583 16380676 764582421 836471259 931499869 561187334 696994467 356003546 810764152 737988754 793131977 31332096 44530223 356699246 990660516 988257585 990710862 406424065 925629789 576448284 890015892 235887318 719188019 252551203 781392896 572332151 973069448 789783226 848951574 736535968 794674716 229176469 976952991 278446068 307685249 911688467 915475852 47689053 829721893 154194480 618961695 631953030 779070746 665055560 903130406 735914692 945116170 523347822 696774677 855370423 935256556 589082788 622605169 767622351 847413891 871179947 933814185 608532800 812198446 301535812 371610109 440079322 797982094 237923836 251738086 677239449 753821888 438397150 459804223 770118292 946494970 850150070 909947210 204804903 211141141 464765138 670916096 356179295 974887794 991404861 997004521 785485107 862658170 61060609 278957416 188070133 292544573 190736446 743477869 808869221 996732805 176140909 768252550 839691872 857429286 847426586 911941171 368507754 413043110 396499345 627002534 343356287 825582778 81132528 797874057 622038884 843254489 55854427 484499723 335533543 608235804 182192859 427355373 688647418 716252311 929768096 935628412 968729782 993879533 823894496 873428443 961431339 999354271 103994863 354733650 332894109 916927499 486351199 797963418 871697167 896425188 493839978 561486030 736528995 838245498 181718782 985067383 9202629 68050448 200924668 488654639 666620291 805348395 943079303 980008673 882793542 902396664 12879104 781106120 752649448 780375258 934814117 995049661 82755592 430300675 149975786 474752491 917159869 987769134 523647139 981385585 433359629 518624902 688818103 885217986 972809393 981850014 476782066 851858901 510307348 701241240 690108670 734155800 372317439 872907217 877685720 939521884 733838161 765823809 51161504 927281377 240111263 596645746 922382704 938668503 886527889 926590169 797268044 842511729 437348842 902344996 150244478 572922966 544710835 928404809 468218684 938142412 61676181 185954576 190677552 950460210 22192683 927994690 892568073 944122710 33628852 208707946 285192464 574397614 579152316 823187045 629177523 925312314 937487859 976197446 390759632 830509488 594223597 904103333 30664226 677541805 36155675 873003349 776590944 827508147 151799042 669950549 636289392 739518199 396924571 866780200 537364922 889183692 226947494 940578733 610376291 628934080 909596339 938678123 865715162 921108421 729281751 803267219 942045886 966140679 813246920 814009101 910596087 974711574 476403288 994843837 133508831 454889746 171824528 505631681 833517620 859482054 723753741 812532734 643619004 874636985 927672762 991891762 628022263 790036792 813996161 988624039 268824503 522198452 176926235 687210382 499864814 942332958 311807779 490814129 600030074 641232788 611956075 679558513 573622981 986903071 933755433 986031515 511573560 748006369 593804129 713179823 683849152 857245725 17081741 234703231 670536138 864928139 325639211 486122308 212032471 582749117 330050147 524323062 965341817 990632525 953761093 989333562 571368115 645011825 708712715 914445030 321898588 905486306 55910698 400727995 956229733 989600302 356139820 940682148 245849331 998201359 967842604 974987385 73378188 413331474 381014600 632342476 628459759 746850740 947194195 975993742 523774152 729902906 349367004 628597509 762251837 816777419 498040331 538969478 681475470 912782217 929845285 971965647 988808581 992340979 661532303 683715029 588675565 783819608 267887174 341358040 510523298 560432389 338292579 412256089 710674447 794737921 273878817 702853452 975805950 999433013 855340932 921993944 133919258 958000832 655631225 957679467 609710713 920782934 578156335 965917226 627220610 663778389 862199920 901036810 221165885 746555934 543990725 546809663 524534490 933261043 778629604 936560522 371057914 390183151 109514141 711349780 166760555 378003382 138424402 923355224 658062231 815812335 511586683 731940372 38745206 815894680 913017794 991258101 50052987 299621930 116340919 193792040 318920109 602321136 436303273 908380885 114806458 175670959 36648467 325229058 98675340 909884912 512350031 949543875 987899239 989948006 410276734 760027852 333224734 854491622 685839635 992756643 900138290 974626886 587710840 923063490 632784612 808740715 822517026 836877684 585555483 819686048 305904913 632576920 817508151 870634014 635260459 714748611 526455661 846297863 619583785 628074663 300792490 831400065 512731128 970929143 384851627 780799486 386772083 883831442 626634287 878018224 437488604 761526411 967262463 969417481 43766570 213686097 475186662 989508117 639207454 795435995 634957724 787190871 124812190 194024457 572409863 851974373 763895311 911875042 311817669 645508744 660125460 798076703 763143918 977786617 111056117 875819925 532959773 706773166 150812560 232922102 37533136 615385849 460062345 958042187 526551070 596555619 591310867 808048724 713362304 889699130 464386378 596147623 291612275 566020451 697321435 907821119 472732313 873308185 825989323 852051803 536632863 671834839 987541952 988799319 147262593 439854879 304133332 655632908 353783152 888776389 508243112 883958922 5642297 788791844 345197688 774280185 278116623 591362433 498555556 975148412 341405608 471407945 536622966 672350144 834759355 885822370 462273042 882558709 844551481 951659018 760188580 843278487 931026954 967081257 434123059 809938933 33677796 923038289 830033202 855764379 753596247 801295129 125768867 974679534 507491289 773150510 405307855 690327752 556171427 718851709 241960237 924100773 353402279 517767527 536210271 564687145 22450063 176827151 382497696 555104312 875985601 985031641 369861279 525740299 438825444 926013361 531553367 617487976 39913852 385027476 920779492 968357805 547565315 766081799 989457109 992685985 36812629 85833243 918472363 938653581 978703257 981810395 141487578 247128463 812120419 919737523 123521180 605694758 656252725 782447718 147376712 691878104 330877183 976792605 472927138 662493629 846566769 976729712 194267744 408724258 706410830 964162773 352963755 466746820 42990553 163570180 20171012 723978728 324217414 711606786 585179040 717124298 88500952 478439685 494384560 762128428 409947379 949808540 348379353 595515145 471907519 874716438 696494257 947635114 722213784 914260460 973143191 977649241 505070547 770905598 525122046 701067879 409220453 646821756 558680051 979669745 198286775 697127834 749801515 893331165 716904344 830221507 385957700 537092021 528904149 814061599 767716305 810701402 723351606 808888686 527600795 838898423 519482634 520723774 914390693 981594802 669371840 735919135 969533349 976025010 986905153 999088696 947706761 983190849 870720621 918289353 274613663 378242948 277807087 643945136 819139773 828452139 494317824 509111649 941643571 958362308 1208045 877062135 34899126 903161101 624879569 986585403 307674175 451135949 245063941 599221881 312074377 987407501 785610771 935411042 126914298 641428729 44803095 712125130 864529935 915997457 170340193 818731826 214597418 621636580 352700486 810350000 280146267 421478447 721088821 801951321 761643444 952707408 936987567 988620599 129565899 661981737 342129254 755612446 868718327 908674850 237331691 807877052 896094153 900158626 495561364 846670067 298357935 614475207 693183860 702857440 83553562 620140343 100960324 662456193 322354925 716592362 391945691 517059929 467677504 566434455 33319366 772159022 671108793 915166334 760011881 831731741 343208837 901521407 656774479 880067751 528608938 763948751 972273025 973554132 745347765 961155603 626820902 666750980 381336070 933208176 303128290 325734786 268249621 325213113 557696608 779353877 397405129 591681401 27052567 180576353 449899593 651991646 579425603 824418366 702078121 703880397 953081076 970264977 544078981 767909882 405438158 596195558 154533701 341892326 575454318 786302021 240994046 287420813 23311554 377275961 78225308 280935420 30176517 103870390 153592574 907135674 847609220 981103585 180869447 394847900 198172189 527443400 267114443 582355196 471864196 987668647 286804968 660904656 675795089 990406941 949968979 987417336 393048300 773158231 560799722 879489995 879114007 925972602 520306847 652307076 941229775 949800881 615267388 652451991 255072030 641393266 476270453 697477060 617836098 890338861 955589147 996329926 508714831 706385704 114842559 471807555 452167098 659393316 303416997 408867264 468946306 517267726 770633389 934378558 469004661 701570130 474680349 906102211 14715629 390761223 904797320 966653252 777425496 992416916 21403669 519910654 136584620 950336279 100593022 653438324 558201157 579991994 424140365 819933051 442448953 784960876 532296041 896729643 854586891 920986258 610811576 737355662 374267695 504601460 318352466 947406691 675700593 730612471 22081997 315842830 401773478 981138709 834669021 860922765 310028634 733229240 748305801 879208852 788969032 967173306 230139088 592125465 32759078 108648678 187702973 391083010 73154236 444584136 701893492 978392357 535120869 851106319 750608564 834129729 754368185 960665311 874387001 996779724 566625099 926303582 403989502 901542507 731096536 953007632 535141281 736420257 605173517 776879588 982414916 987514944 397518109 755815690 307769033 321706216 866081471 970135895 183701030 763264771 186231924 567615511 66654698 811097584 52244077 374596377 856134413 898732408 591778648 655073672 959658002 974185535 666720207 695467638 481752937 851011499 616704752 835366333 147730254 378657206 799109444 902191421 630894105 934540640 469334776 802469780 379607462 663345808 21763835 392905371 840199768 875643077 442762355 851687186 553835208 750180524 613779271 761560340 183305747 896961867 453914779 521240008 196965308 471007768 256206116 644251237 961326405 977171268 9709777 972390407 669625399 958858937 73633395 460835526 124396800 479318165 673949988 876298561 147856890 457451355 898423956 956112022 837262615 999050317 195204612 431673258 217010000 824515841 990830412 992877852 714722249 834074920 302152455 675995216 631487445 835966920 76208229 402772214 455802598 853834058 412108503 718603588 131835406 798815774 657313030 819519562 755850292 833589633 367294822 398209692 885153000 908860156 322434874 958874435 613224732 984310448 107064100 193627940 581688502 846588734 757569099 896187715 266227069 584681632 505580002 854694160 763524756 769732104 507205238 927266757 811663420 972712267 850292132 862229345 587737175 746987243 341202714 903179058 933691870 946493575 529033957 991918195 190426786 315146201 769748932 922346707 465874926 844626227 768611905 846876519 986745905 997634185 776884403 979167901 147932736 163464832 157880781 775583464 89973037 411600367 102397956 134821145 224138702 991016105 207207999 446026397 987843109 997238777 645465636 849761935 689276111 923562815 472097377 986972654 933197383 954196182 470638292 885355812 536823720 993489956 817719932 984398750 873900571 995658286 946061593 978999612 310420285 667199186 74117002 263288271 400230053 533278960 245789910 944440430 640103797 866554891 149107778 600331002 277172540 284265672 831845115 968223464 971628254 992301754 426153947 723008592 921491419 922440895 721435264 967905983 85157918 929558196 330954107 363186186 604504281 771046953 928962297 985861935 365665858 504723845 51411014 293320076 389850179 678516720 396441732 418933809 732684897 906371096 170588579 984189363 602243948 921087281 809476795 938383414 923851586 966105051 773208970 923139953 816430296 862991955 318180406 900158020 650196692 752983313 872327667 931852505 329293623 674129034 943969353 995376216 299426608 754406322 43083117 960310284 304171241 766643100 302763299 758669485 119080970 194036015 815948137 892109485 390110471 511740753 805075046 984589202 596912022 846334004 174354650 790550748 231273303 921280066 674811619 995428953 727048261 731991370 524945670 893523273 902685236 917698926 431693091 445055186 455539763 928179662 989973824 990578468 527809875 629348446 6135145 266191723 718826668 863759817 406486657 479024796 200421841 301947171 342440703 981871549 549235866 897802876 172331229 357056578 39777790 52760633 273088510 599950473 606773466 867027807 317656841 755444750 10183107 379850572 97007174 258076725 543945858 870996829 922817864 934129515 451312786 796859850 984513870 999596571 954558725 959241016 1384638 700389028 365341493 495788943 382769661 882452408 745121807 999855873 691344084 833382943 626976707 769638889 90185094 931579429 799541222 927757720 892022498 970197822 824307064 872276186 946558740 992095818 589276179 718990789 472086128 841069181 275741996 459725925 558532672 695043236 174846536 538957326 325518076 920206884 559328808 747547934 475621954 513438269 8828973 480680720 137400304 161077345 276669496 938809055 91634188 791826098 427225978 778179503 951665413 961848810 459712573 587458835 375724261 468786153 138420366 147865173 587198489 754488769 694709581 822478277 182472962 660657340 299170275 672645998 10034397 586869253 986748698 991768876 175866157 822141692 18751760 955732420 828768655 961532093 239676796 400033591 910783421 962062980 171473159 363973081 487288980 944171251 780455197 953911057 33322102 522772019 787815224 792466097 478699605 824656298 587252393 790823835 553419465 766097487 332289855 419673231 539790947 668691123 523918819 532222695 254021686 623026214 750333543 978070856 203122893 607978816 820192638 931392670 630061789 856990517 358024222 692177306 312053360 759832695 614988535 821512323 479399161 795688431 278011696 426200272 458568127 652654274 201809746 932595703 584625931 805517428 73065003 426905931 4982192 790743382 278655775 289053775 97741157 114378885 943408310 944910822 232080143 233712127 877819966 987838231 754189626 968202023 71797555 428098377 850187888 964207463 628350962 778316393 573216661 669719028 866203393 915238565 744406988 891770844 103218571 511087247 289600504 295467994 764730973 923876524 426024843 832683261 461439192 780728942 297505918 306950060 145329782 773726671 149724443 435584572 189800815 690171952 21589267 455022908 163496137 580478993 587879788 852838557 652104278 872224479 186356364 215991400 831146757 927009577 553583483 857569899 506921711 997729291 9110996 178178353 154482756 719569182 803202086 865049272 98563259 634954028 15237616 788156616 613883941 912864620 858660662 908549480 116557816 984872721 396363117 583739736 202019169 436539922 584525877 832287025 9885729 185604742 186679720 610686130 496378790 702818342 856888109 926423596 114101124 157666607 790066606 913442469 839179917 942790255 159510560 287709669 446318439 478844829 909984268 991218858 324071408 919341691 674243596 820298750 768796024 768944369 131313525 908025483 121786904 711261437 916230782 985024911 251982041 543131150 969875391 987940778 920211173 995966588 95425356 636684009 386017271 679737652 273848874 544070505 697331662 973097597 546347616 977759614 481462597 915433227 152073851 486571632 937624509 939533700 778751893 995657008 135924124 422159446 232817427 963172851 86839539 707031457 570888323 668280653 378496665 457484469 818614875 828870044 478526061 646687327 817633134 977245770 158425087 191078881 308775362 420298348 390942631 736666753 763133526 811290533 744680336 752357046 468933506 786906022 498839970 853016915 747116001 982080459 91580900 146347754 961093452 968662148 973424402 994418959 329392329 549350972 541717961 994937812 951038634 964852134 534162185 698358220 400399870 569744132 213893396 458027085 731831179 798973657 714862450 951220391 426655116 930173319 196706527 981545512 73401316 809877806 19764955 386850867 51773408 745152869 304544207 724815702 994541839 997388320 37681715 541633188 949718866 973975151 688005213 693189427 432272343 493962906 59380439 641697006 3630546 542421475 697295752 900190213 263767819 769626091 729095901 798755121 403184388 725736745 934944634 988415451 478182370 865986591 958235002 989024468 514780470 643447660 652899392 940478433 105678338 934577389 879854167 992491747 34033590 241306552 427122074 653907958 785166053 883380002 485565250 908345338 670296071 922135643 64400108 593085842 903809620 993065599 43524510 842742468 492163100 867242263 557036251 966390968 311951130 341012556 674328557 761698577 979726863 980375226 708008664 793279013 720444691 804787431 723698127 943895686 68075828 93884804 311343706 704676686 377816259 523688019 810178981 825478008 556777107 995562828 233020376 472847225 133459753 784528394 914778616 925848156 360450796 937566052 642002450 858058089 326692011 995729876 259642078 300191503 938588117 963833209 145507889 747410635 50164595 138876688 119212135 201051173 227532981 425496176 898536778 939399906 220923509 601692025 272702053 282355560 44510616 540071864 500251599 832044328 119236961 320253284 452850527 684720134 730319971 749336400 647349187 841888211 295244853 736442377 692175380 860662132 818338142 955880611 590639072 629718435 450465425 743485065 541453996 930653550 80951748 207127653 566073210 658369447 663963533 961215966 735618914 913246173 738270039 896406424 647690373 677705841 560833728 862519864 225594328 320569342 621269335 849441147 590390185 715693689 246222673 769735430 997764683 998856407 673556817 946362989 750897346 966012674 118146795 579027203 977428595 996703680 739739658 835805061 805691294 810697389 477745631 804860561 133533512 893208354 464853613 760445316 706377455 722097983 594342906 706806457 33299847 697417563 319835643 697382863 52949547 260112180 659649050 752959604 891499844 996195188 390457802 805686805 776048822 970822290 91488974 167192328 798657446 819907379 465010100 647560641 656879628 767856475 860892317 939610669 4085703 201117977 406796260 860197508 187760355 511955584 523262874 820596126 876301275 954267433 188539618 318616325 676338482 834779072 25800485 301166829 252094337 981506419 731893073 882846840 189076513 966049189 86189357 263089374 302279040 750482246 178670645 268971878 145630686 284986771 221639935 938937349 292013599 532423168 373840663 595243148 112525 789199118 435981515 924773020 192083746 312902046 753268555 833248433 588193671 737527998 873222252 982848613 262454192 685234488 56703493 955019844 470369095 790823167 847323293 927174434 543075139 982512207 290509990 638166603 778140054 915179494 638612595 968775210 319032376 574288509 494123986 657159747 534717246 657787022 487170815 705732517 768870660 844922753 486145621 865523234 231449953 757193485 453576983 808094804 157303562 471348999 759528509 870426055 382038282 980944436 934123523 945394152 73178917 157855391 451056530 899902976 134309060 997402365 11722255 572160535 38238247 619052334 676103002 821241705 954424996 974237362 767697656 773733900 972720854 974789564 380322231 908608421 348075876 808119387 721693184 970042131 62717475 72694400 411483389 902324787 399366197 748179014 35256266 936374708 948490512 960602977 906014696 956899404 415421373 734284374 769236390 981979699 82143869 109464942 469087237 976013707 308066806 440680511 135434002 923388855 118103876 750995540 932130321 973843553 939684803 968532960 712016966 783080571 237008612 393006526 780661596 870467354 699357661 699813953 811200876 916927030 40927248 964421467 862556666 970445280 932431138 951087357 572351541 648901819 369843839 593201715 952671724 977719389 332805341 616509540 189653083 223411440 986652976 987082633 350301435 624205088 204575508 326598248 935138322 967054501 929571922 976600723 464746102 627037394 427941291 478411957 561691630 961102196 23240750 535386575 69519889 203012015 967643420 980673585 517572571 964387017 573544267 721574511 755715039 841198635 767062224 919691973 829350754 855717334 892234422 961932537 220086484 399640574 85506189 775994107 113408434 718028206 608885398 646230136 723640179 876028203 434595128 890995924 875657779 909917787 677507138 887198030 215395738 385556039 259460560 834484635 107137937 429839593 144977944 877363363 354729512 871791808 189662237 263871794 207717216 534649096 323076733 336814763 793667477 954561402 579408195 798329014 858439825 958413516 304598293 427278053 44041913 619848043 114058130 269312554 605691854 662564839 303759803 384719302 915688301 971921707 681400565 748519960 496537276 908984124 495684820 739365597 579734717 828815514 510825338 788388441 681194187 865438941 709490973 711115004 76516585 672792994 586446055 810037767 734506432 741173277 133120558 318981114 98233657 978919506 189266183 719836784 576601824 856243215 90648925 243611801 113550752 193388699 306502976 746725168 627905351 819223287 132789661 918577807 260203163 963600036 207125961 235125866 273223685 819361610 982642360 984346940 823132181 976408642 726673298 883798576 20754861 59935754 813216832 824686243 981995852 998540711 786128662 814178222 522200065 721243690 829019332 952751548 299234686 623436649 292348774 521649886 153264814 844618193 77515367 923648754 2139973 792357501 540870870 884943056 432512428 681369488 54706650 673207596 144066869 982137809 705703854 758418549 143363644 805603857 825373220 944682808 7723602 676301380 950385296 962881921 542931828 748035290 782359899 800877564 348105915 774195784 135780694 967476971 210734059 714518230 828138615 981390052 194080344 920642826 516783997 625672451 661931703 952258896 68552390 521250959 653677615 792276488 424459023 903281713 254239460 995523940 693903114 830074408 648554717 775067034 719030413 732834717 842897447 980914412 981946327 983260414 313656054 733954771 195744327 485035295 137231677 139167077 188764199 347332291 842460833 904408245 827660907 966372012 27654519 154149002 48388295 136527706 808372893 942326048 455624615 945121067 664307032 946823414 654032001 703437334 358822813 760205665 655566622 920139513 68434918 447892853 187682297 815677322 571591016 585780307 227357943 757757906 698843258 945222644 304085747 819377445 398112446 605684642 503969602 877367867 287171841 910961838 500184666 617432144 98521728 799313522 608034033 880559867 912008433 996613943 570300103 622790954 716872772 984954566 476392878 858442979 134616268 191488209 659493491 712826384 529329745 693865732 43891438 960358034 848651537 886370625 864889635 870714836 14726721 322845679 291079659 610169415 57624200 899095193 146854399 812495367 963569904 989957704 259225090 481536684 564327884 909138849 897400608 913506792 674602001 829317030 627111992 837433708 151518457 324385119 719273867 799589061 871116100 988138886 24917642 734050988 773064003 991515705 931587024 942101502 740725489 768116033 537002772 699401008 813563978 981572931 876762969 958670791 150332563 457426307 12621476 966046685 184568686 871036304 109985491 441222356 976884241 986865882 220228284 559558145 276652232 530475305 57257726 606509576 523332928 662237600 472198323 689158425 331872596 353015909 898024496 989180439 209923668 272380810 500963360 838553946 977972090 997246362 452201892 804321531 683322265 989696214 775555300 870519054 559831599 786008623 466025719 675507528 679675788 831883237 95893481 422432968 449812524 896193428 236971809 834401981 262634815 440457662 818339031 913886381 313532723 348998742 97112038 823456341 21058013 653606239 640226113 954802651 212530408 880873798 968794633 979198622 334987597 705863935 598247518 904490342 244136422 382363726 421696955 925492648 560121257 616866291 622348529 988408241 472439218 787451431 972480596 997582039 276275480 760511224 964037116 995339010 620253732 865977848 75023263 830043176 538732764 955510728 981475136 998559802 823073179 945153150 327546952 474368895 642622843 663416692 243448545 257936603 884548407 940964693 355336412 796594950 129870628 549961301 325983745 682472575 14631388 693214087 414081329 766773209 948323158 961256191 924313333 996172411 683960192 753050368 807563427 993734002 296885101 878725259 622576884 825796882 858225910 989896530 396947399 942972885 908300117 990955178 910412909 997490360 701013831 716752686 688746831 728430825 152632649 763139228 766869724 965035550 206799565 915661396 397870950 643423281 184298418 871971090 56922490 629755697 678362695 903131133 834978736 936064742 441333439 497694171 320189237 767408268 704883734 978931609 905265318 940346933 66602154 565960769 281443687 773359811 449740922 707361072 868233648 999717324 72216454 560062824 641214004 783596561 580558474 629002205 708907393 949366610 564674837 848542130 100289526 926612911 532465661 548704043 229988970 409598767 327810182 376581701 992424172 998550368 818568522 974707069 478335200 767034789 500250473 703892531 581554930 991932382 715262199 842878913 524541591 707126576 979186132 995599630 133085874 614853633 398933386 970446449 430293309 928290046 725884463 910943737 591146266 776001859 617828597 918925415 385392267 762988017 516906678 543345642 478570469 632008219 334983444 562084385 454286216 592676371 503112319 984980597 664886141 885633216 619162565 896612224 222492015 530956266 323575610 352272789 398376678 628075508 197162949 647261961 436030646 477682384 297054073 709058857 715386232 730470239 106536092 968460826 198589311 872395449 431051408 607880171 975225367 992622578 216906327 416125540 976280378 982312757 647648187 876662526 892734391 945971629 88141892 120629775 278434828 905789307 340191942 972229298 710437654 887118593 66167459 137489386 686916171 844386234 270417229 425181171 786657254 884100066 918269958 957156988 389320192 580371333 232074628 777426415 342829947 675302098 605528135 777786029 518771068 614500084 50793424 97288154 964231342 989231942 620282470 821303848 130577499 413263081 504708637 753213013 214510211 563596596 347291867 866423664 283989159 755427936 962490313 984321711 733694212 815073751 749619728 907600650 992313528 997144017 98622050 122568815 530256873 722792671 903422708 910585647 878978363 923702859 370954382 573532258 706767914 787195613 484298888 868771199 751670664 804517985 848782983 871449096 592461788 957492370 100922509 231820654 3611372 68435865 226909072 647320658 566276757 616856570 90102070 682127133 987502793 989331201 177714313 336151218 865195346 872525005 933165170 992254221 744543782 971565068 292336727 398660084 926898408 999628232 653884976 831672697 731474967 909706012 5629041 571390597 16709261 198376861 231746609 581579993 432502078 537447775 290888632 961088396 682942795 861632182 645162572 831964383 491114434 526167733 403825123 677401893 313197949 730638517 265301827 870870102 471206689 776148680 834244916 998171246 694657861 783950883 663720109 925327122 679375553 880273917 123347679 203608554 348947492 366616855 202303379 379112668 176150697 356369168 209304481 561072355 156992031 175795876 454263708 822502553 50639649 112746028 807867584 874708040 792068146 798489253 259854499 321690069 525050341 573010542 921569367 991680957 600760653 850977030 421556283 748594335 112768299 331738605 671097920 940078284 576839750 793869566 517144847 934779584 630924518 634609151 511726033 703111133 949677313 953928465 167904059 766382572 764633245 850641227 331152937 481420335 841924789 935263694 929635899 950275685 959625271 976181036 985430371 986007745 79056980 850866624 256346023 843406377 58897194 112911781 966242474 982578408 702127432 983683789 561555768 677022540 115892173 981868717 325516444 934849260 766661459 781503909 692437605 797102916 532421533 932589373 581080145 739575695 12487897 30905543 299817144 533012222 880629007 994754314 705756607 957936942 170513892 261440325 468547925 608751574 183259032 742452714 462707615 628937336 11196093 162075590 378454054 630260269 381974035 858567074 567517305 953478924 350856644 460095077 595691268 772332079 337170275 371243922 719567395 803493729 804987071 898431560 406787075 600992512 562661323 969083162 421555495 985853413 322608144 580891258 645566121 793303475 504156943 822166247 263532335 891644840 320227186 886007388 353038661 600957336 375255464 794317289 310545806 665778162 949628772 988694209 510343900 860012982 484252033 633621217 567803264 914482320 698275398 703621281 602885919 925905557 639296783 903692808 315082559 737937335 942342596 979425601 717091516 890708975 896646896 937092565 113529233 206449960 2574522 355555267 580113821 944746487 203850725 812563675 241083126 609632543 21513297 392295618 922042969 935283393 250188367 284698250 836246314 927517266 294299718 975934938 378816438 460528957 686024519 890507929 430655613 765936970 19815018 867401778 389707666 597663572 472201629 555356184 625903706 706701272 794593852 834889700 646223191 945931961 277663240 772983578 295872211 981496532 29597881 378910560 921790727 921976794 826791590 947785854 629549642 788861214 134030487 771376729 285946006 467633773 870850826 903021046 85400551 101489867 460782989 780683883 753992915 808192421 898253039 911875840 845700407 916649770 312980129 325604056 763222068 943518659 261006226 637549507 109700964 626020205 16312249 875797579 586697837 917349170 191482705 620039049 343457117 915226532 248020670 936628282 789848364 863527716 495431205 763625210 366458574 528415390 990000455 995437826 975447455 979217754 313561918 636071591 90217061 675948628 346339900 989795838 157087488 705087490 721450605 769795184 456674106 917700826 498672770 657997237 15530300 95592494 462935263 490449812 217627345 408180658 91681518 586705034 189281911 308491341 240176044 683350642 950245082 975250038 136419267 949248454 974816735 980688930 266843859 892422707 419321237 792979067 132896134 512593124 902532323 965145746 174515178 729288403 444641322 494277984 135908688 281032271 48410164 175597708 52585053 612891120 377330251 430568180 324687768 946842907 15654483 412496441 701399285 937125861 541673084 889930365 112357761 967737571 174607671 808632333 81995434 536808706 891649745 918478451 512178779 803437283 123221749 686379474 949874929 952992253 23739949 398451462 444406692 592167618 805195025 824355772 527846965 726113413 244973730 868414581 742114251 872803963 106758437 477829460 578076809 955788471 114596280 538903560 374286093 517061786 671926578 791468452 301617206 328420106 73601920 208925219 670526400 709090713 251677023 992084537 431416253 593078770 707973278 764365040 672031085 978319120 710686358 788161159 549489819 709639929 955821153 973309983 101647557 753782079 184035527 554062176 722887939 919320565 768730186 889704279 566130460 907022765 643216488 685104950 518360470 525771691 906357995 977378994 180468538 774316929 56490038 85645007 44415411 945356698 342668871 655749413 258595542 345977367 816132202 965822840 645527752 843663348 908284156 961174077 239670369 634261930 525135504 684499387 518574767 815245751 292868827 948607814 6743945 667024989 776972617 820684063 431912570 921160156 190943502 398483129 186439379 621121604 944686601 989625187 257256508 841169796 224519064 375417612 277771333 593719649 974117195 993172314 322258730 753060595 280940095 677202911 522298702 934039846 417740392 986223574 231121431 286053929 968699591 977194938 218890833 819566968 648672335 861994484 957866646 962077022 894660029 975131225 217309091 403144645 951986529 965281807 349162096 840704121 676765099 856618086 908668315 982927394 377536649 753849804 920894986 928438152 18469231 292271564 294677885 708651708 507668375 914333272 873699305 968386631 319687550 754746727 961884752 970218269 962442483 979101678 959013396 999200516 88903782 144636834 115743504 863944677 279764816 962730877 429455986 870043947 862015431 971091447 790925294 794724288 171870649 785114919 59110799 498524747 565376775 985049848 768864797 925909086 388669810 902996333 134631316 285614404 279091635 903271114 547062164 770275338 748678128 898040393 357175012 935134365 153004842 525834247 461322839 617282294 677131804 785565773 694751506 761546117 735260026 816590876 392393360 544126591 863856223 946585475 398102256 412634119 876107203 961162545 391364167 552081411 3596271 905645952 378533308 750860072 929531309 938113630 154354971 253597560 337638771 844976339 83776627 476621567 357832185 852600714 40276018 408537205 807847632 831919045 501376063 855278272 117096720 350460736 279884752 546955560 545296743 776927771 458676225 896129420 974066833 999714293 551245567 804956455 880478823 941305158 899850598 901556654 518119489 748327019 918206204 945748270 737699386 739355899 852349525 981312923 737100172 888401662 277853 845503119 372520769 902692173 491635302 941387534 323652472 438052456 766881798 801776586 488625858 919214367 747550038 996888743 647176209 868789490 366839106 536598562 342479406 372039666 600692001 967394649 761892906 827134042 175660145 819977836 461520931 677990003 361804745 505807872 751315956 909771420 165687838 548447313 710572852 908780232 726775634 843435101 973273987 995494996 343794515 810791974 366402747 612362652 126007718 921379946 525607996 662893510 244567803 842738938 514979673 768520374 865366854 905965924 268286333 469487920 250707235 608010555 545478888 607661754 151436222 507367137 415488173 661634950 871947726 924198569 455391076 960461582 964350073 996361790 855639207 966123115 836783790 917120938 771193054 898074948 288938627 382782653 819416864 847812074 654032933 694311766 831465413 996483070 363616447 985641573 564357312 933724275 109856641 422655513 549087777 576872095 547746772 818312796 877852681 942237589 268129515 971168601 56223620 534413822 399510283 956192299 782250402 800612678 155173037 297361198 888033574 975140461 129411428 976809267 286966665 902067136 288859619 616065293 217919084 801298087 813302057 946002700 328079184 545280588 382570409 678053944 267133612 339933996 940055734 972041338 999048225 999278391 61827186 198360507 598927786 699058635 402753993 721477996 547647678 996407146 819213206 863569320 70020183 727280091 86232773 941157849 765897159 787442741 664377342 708917135 529803713 895756300 946387920 970392379 953135862 962259324 279723748 538975833 459458719 781357327 187928472 941215849 722794574 742534379 341065664 856335059 387508159 958232735 194962405 677007032 833828518 905016284 899676696 927330668 362299471 801344409 456370965 516631899 361668528 700207092 323158513 570646312 525399744 553861508 971865078 989638424 349452713 718844334 231176613 701981231 738400552 897617056 98347033 554377609 590440148 831184856 825283218 902367412 981833417 998148676 800686398 808216224 998965510 999101119 489058299 520224766 845091546 997880147 785407923 840026720 886860892 990521852 524311195 633937706 19136479 452339396 251623408 485622508 93422877 778330666 350674334 371079569 874171861 971378562 15951365 343667052 699987367 748862501 251007940 893736588 661666424 965603337 12524799 647659475 664174639 675177850 25919388 234898298 117669174 917164349 13506750 88212585 751220535 963597172 462520236 840394793 371482861 974214936 992940070 995948246 347205699 743365266 396106676 635172668 26947695 458413153 47456535 640020088 128395550 662258029 891447878 984826941 879527489 957853504 245809242 892274956 700753188 709574079 294351177 628919428 637653913 889802766 605881029 793753657 211347088 248020409 997042144 999675341 121136683 402506722 307531391 650683056 490550801 973633388 81867415 749780825 435397202 541467673 916118106 988652162 946829971 953284997 830201178 977098538 389257045 401848143 742104681 821532465 395453332 447171195 727606105 999557798 689076887 960332147 423468381 659475323 257287062 445427690 756652967 804968011 593476658 926573674 524395329 746577404 81462433 142082685 272491963 531429456 523471427 855435210 469223187 653224740 486552846 996581557 675452811 988960908 8356156 915994343 131875455 466901217 488050422 772038321 364783576 515458720 201037319 462222886 976775693 996312100 814280558 890056780 446071936 903878682 637136366 766558013 655218613 905204729 207571030 988381255 53468618 837831238 188586074 616688548 374570072 727097542 914578523 956994537 110999390 888994445 745705628 985851989 643722882 794169148 845483821 917784146 448058919 544130268 827193661 931907823 94843000 309321650 25166237 560269945 284573041 635732895 929882900 932223500 296684230 437674781 818495537 974369770 289863485 653133766 894790208 910828000 346580526 763586079 644042227 779012664 416673638 512048823 622453533 924764132 868345692 950107148 818397066 882799064 622216373 934545906 35383074 225278153 225445278 563730238 431235462 435019518 208780157 896381975 925825554 945692526 570774805 884834469 466907559 801656358 145451067 269848887 551494355 887516557 153241597 983820824 492513322 733653053 432185195 512142975 472595541 959481266 326934374 346926424 496262977 838018492 539426599 884587673 364423193 869188266 565248729 718248235 732349331 950432404 564800374 916288886 577503170 910489027 811382750 890508097 151957264 488280123 343676393 789472319 248545852 376561921 921342736 977024743 161527442 638520145 74236200 250923023 44575689 243541475 13212843 306447289 265445704 813869915 78741275 875553047 235449912 627893323 192789732 772783227 588466566 987131818 786476828 927324958 652147784 797356665 868618401 940940489 935240565 951344307 467662007 913806938 70122833 101987301 814370321 958215324 236532198 975778258 776321905 976187701 385118472 901103985 534453519 602253951 661231001 671701737 991091394 992581395 883861755 980528311 955809992 968286109 948428312 998702999 83467254 460724726 687207942 836702972 339017543 652547996 228596263 545498514 759050519 792721298 976064270 982824630 437542140 715112431 450485705 719100658 388826288 941617452 658326394 794104237 748862266 872868075 9187288 318886022 760162687 833353999 366064468 526507938 805102222 975640136 627638782 804676467 575166463 711888121 777105872 838057222 773827906 955482906 885168696 930044261 462306755 677295654 586119800 779374468 298430159 709530383 767924003 942002106 772103323 968844626 260565567 773191947 450523229 480565116 488081791 824629592 821843843 836125443 778201890 803866575 930595000 954392645 527331387 823540996 197599543 585253634 948904829 978148100 26040168 763853291 542646688 732534170 631363415 726448268 102409693 107962528 723297557 753232319 876663351 890797180 113630957 910744002 53521155 610867766 46198437 454057385 648263487 938882397 393045494 766677700 221511092 752637813 606752489 991099187 794140717 917257529 908287952 916303758 527490000 577649316 21378213 200051164 618199649 933932378 399735856 600280869 277047794 666020754 434021661 889068625 728250751 832955345 39158885 356117610 567787630 904272323 277488891 707353519 997661696 997739879 6686744 861629963 954508781 980967807 857702687 940316622 619145414 714472446 321687405 896378468 689519148 912561239 181631166 382662460 234360449 522885726 72168871 329214615 6071892 627049809 253639925 344508277 828086642 852289829 152368089 360037058 167745443 870633274 227462941 425662229 908729643 982530268 702998166 831911604 840746354 939531244 829970323 898893509 803957629 917600573 399608258 597905139 622761554 929859645 847125825 932056796 726470921 759574137 197742557 368444925 409276034 652726676 209016714 453866798 619206730 637142157 494607952 624844902 610286982 904992551 880963048 934013112 50929256 62891566 507406317 510568624 824962753 981987076 727114083 769200813 59844883 770979572 528012839 774055287 335430969 652400713 385753048 609995630 49708786 369985482 463635516 713929718 359786419 383367242 96511150 432138544 168456852 172831358 472117815 747453143 918936240 929774144 258246108 553538709 588475923 839412104 266998148 401431301 322158909 407396819 42247346 279381811 39838423 517235085 693006431 824261047 659863969 893897603 726813074 880222457 978987707 979842287 570137519 728003459 869992783 902965660 856560254 950979889 319829763 701430230 993159873 994693190 530148247 548974929 206173959 336602156 43420030 48605585 884537240 900101694 34455978 364624429 128381522 890373432 54730341 882829004 480827318 924923446 727465095 981320821 975465772 983343349 221043608 589608040 572707645 700738996 429556976 989004126 839504420 854113314 288477461 496236778 859052836 883114189 827937031 979687187 968081288 995893124 672873378 861957435 549102907 557891813 699844414 731599695 345754023 682717471 709807795 947284980 972004440 997571698 529577888 598045566 123867452 181610222 344260970 911912227 390703281 476176710 363915973 804927226 953127579 983324676 402505276 843214632 330155041 817487077 835517522 901026424 399894636 559361908 153863283 586066376 955347235 979902097 84260434 634126787 635838662 876568057 392773190 613682434 351559817 512774161 492646514 922624821 370212855 502671013 573190845 576591142 611775512 777163285 194712604 332139350 362678702 480243496 751185907 937477243 345408421 608196049 967727308 991482646 344618425 611102651 207275607 417276774 98866082 634816970 733411312 850069695 908604940 934723544 853184704 923531544 92358332 434345473 340312797 702035012 107813834 973014491 650706453 739595514 915470986 953436891 319914145 444124313 943788137 986297929 248748133 658152176 472572862 848980073 304225301 378714409 114080359 480874026 164680674 871094169 286375512 457319179 151246877 611113997 943929761 958257588 67325315 221823119 411352000 843661749 504869371 889157975 394218462 670389590 382953974 630297464 498199439 636668370 920619173 946285038 81086093 154143857 675911743 731348571 130726377 402176855 394647041 811934091 486791082 581209227 404361049 562442270 942165420 977847838 885692617 916950687 778213937 940261643 774666221 886097686 429219310 877637803 277412619 661669702 526436505 753364677 815706203 899970595 724942043 977597016 541444857 649087061 682661363 711057605 459256644 945855435 352999774 771604990 249300059 714480021 286935506 537925708 792365502 915336670 292046373 308913349 90616741 771165290 608296985 613614483 840888044 992417638 48986383 942918955 231928249 680685782 663687811 878824096 780347754 906661362 430593431 993104137 828758463 962825142 79328659 449523571 331703428 454422020 775285694 947460373 912176333 929324908 719182541 887164378 237323776 408033608 275819364 368987720 698370406 808010699 76315042 807788441 20474506 983289320 932939875 991169860 249087740 412274236 200393901 974012266 19361087 146247965 609698165 634919596 887995194 905770725 315056901 717342115 127251479 897127088 827811260 881574077 643783165 674921675 722687007 756431457 289222556 501285604 533265250 832263635 616300585 775011295 828482902 889793651 421501783 863656090 646463665 818806925 800078195 903350162 636015358 956065178 809764880 951688473 763014364 945046601 548268171 749942097 197733527 213155930 372090311 910082490 871033182 882133509 759400254 939676881 844446459 854046141 273833631 434651065 68622201 914707685 680152759 730899515 515330212 638293268 626250650 999350986 867354544 876956261 642930670 906772302 717256377 818664937 915705626 941792259 440807881 747840530 521838739 691060960 104903669 837665870 39971195 56698126 926054025 974441419 165392330 767817076 360028607 522449406 959815170 968051369 730193817 773527338 539191099 639465463 911888079 938711614 455153953 712348426 508692107 650702995 257421088 352122033 678940653 820255016 470396897 928256070 62702705 763876519 869334085 999876735 281378812 538734409 933460580 971383451 128286519 141104035 912418445 925702137 351389447 542418561 257561017 510077882 696090566 976294967 973068970 986543380 171132869 337867103 933793934 985923959 153423694 583420151 57047217 216766367 550926573 675715391 862511872 935167219 852890678 894142952 205910908 517407513 154193665 778466379 100360453 353137124 528959013 879953193 738047905 858842836 493934301 979448344 835860025 962857253 555409340 921805733 260708250 745775577 116712536 610755525 448303475 592720548 497180704 588435680 88278477 510768975 963409324 976275893 291537132 324026098 299242487 428930944 424058407 830595631 495437134 818700040 118840003 411724283 684935201 730655340 813376128 977330040 193968854 713037902 439669004 560346881 679772236 998536994 974740472 991428335 740691634 839898322 490955082 886361791 869560944 903231589 642526067 844703151 727788391 849116232 8396732 452708867 233859012 443790805 134997259 222223677 979563435 987590562 699848804 711880943 226595754 783084131 927643882 979170833 492362151 681802566 769411803 803803215 705373720 840308296 606668577 770902409 177738002 940341847 937569337 992843593 693477488 766671614 522202585 940918207 931510770 975234082 194285722 477057366 559406309 680137802 359223612 558684512 737297952 871179063 110922106 885014308 920375701 928052527 25904274 214584344 122950623 182333926 406954638 688658619 319594559 360959459 678220134 915408397 668440515 983994297 10332592 861837384 424063984 826566239 989552469 997446398 200049842 502857914 228745534 622957617 658683608 699997944 64158821 765730426 562599945 897766893 109202576 989376551 332343567 392254551 4728324 630589433 727039223 793698102 726996561 882651239 97275735 445776674 460153243 617607716 690263513 925419237 503821109 715811847 804722250 844790061 451272005 929297841 186334017 281001833 12138921 166461207 734984118 771436197 65415890 413845761 630713715 764196926 584410204 828743186 289340409 856726076 5345198 878058002 143417426 676380729 535273561 990264359 27294932 622084684 634107129 870067336 304696165 954858208 394752990 649219443 451093418 685269536 637789274 713614824 849720070 988646916 774553802 939875286 911629958 945747365 255150358 761295829 472133478 983380152 571346396 987581731 364898637 584660044 214075800 377708512 366317054 715989503 669809956 778877026 352687614 982094988 416813489 895645704 32306721 564984359 295319907 334443140 87359222 454435592 616684403 991060252 115368577 180999854 819105230 853282887 841616307 977601962 682112897 926672834 343828870 656994177 945593425 953207149 325984218 676216846 319722227 922272856 454091691 955606080 678586876 750792859 829535555 919471013 491761581 690451053 378520711 828603268 546023042 581045265 881585879 895529379 656164671 970260162 165537057 567219882 470958948 880086429 179975441 689032270 50400871 323051083 419844966 625608969 498955000 728967216 246381038 261323449 533520916 535410508 782333910 884655875 87070441 126804011 5959910 27916842 478932827 965923513 190483398 632901313 13694286 673893262 310720434 576340763 525231136 547408524 130706031 449487663 920116145 952024994 456439399 912380020 955767870 989067112 618894814 943479763 175631150 811111544 18014623 567386440 89213313 242589914 218996589 670988092 142109635 247496855 231467630 699230315 539235641 842519135 406048587 995189881 630199187 672238365 757488274 817435772 370719527 548157107 941291487 945835910 769979112 933276560 690671882 735856894 8881909 731380834 705560309 922401307 476000008 858613557 284940332 832211825 893210932 985819692 411904852 869364135 42037272 704807084 264251894 931055829 336853544 776066836 447850293 516230604 281951574 588351097 119760173 638202613 383174871 426804302 322099720 799490435 168197410 517283630 83247294 255830020 911372338 983338653 348464725 428662097 542971845 737500218 793953555 895312799 491341347 525321752 578688264 736217332 718405880 990901661 46254614 662245496 488022976 651404558 879788731 963618396 13791605 422062219 912886780 916522789 88367933 738277302 723638924 767909593 23961944 934797362 113907673 300511933 931326711 936872481 223090432 888305127 218397731 755040790 868617464 889794833 179210130 318370545 954376157 956383688 517670336 897383080 516052232 877800356 804442142 949561465 906655382 911812024 822438261 971711328 898700722 933986375 441900990 769586899 476082512 497860015 71575653 294631559 57663456 332092669 274430318 437670090 346182718 427841635 779509718 922327504 152391005 450027692 799712308 817706233 946052099 946979593 271718981 540651716 805786154 846709019 958347836 985321216 736790046 815977411 593833612 891107180 415907665 540209945 652233304 676699016 961254292 979096362 635931955 655818488 633808225 964755259 45734196 570343458 40338171 252621935 652685475 953400149 486841669 762544791 561403427 713559496 194279355 975928789 490020818 531176156 353630425 714265118 809771248 869393558 521260343 827599394 677225283 778387235 359622981 614114459 599113426 981868860 689302725 916443760 941397046 954467349 969142851 997960787 751620184 873635422 805522247 873934310 952388186 967079104 249782256 965708847 45015844 586224549 326974847 824825085 783434581 834340500 296440504 303072376 219716301 599891074 476918911 494245281 21928700 735070018 884354746 910226669 622933983 860514255 809268919 979780720 433906667 782480133 773948710 811308233 191563437 735777350 846691072 867507734 359893333 710044363 21113096 198216905 597409597 918158462 144673717 828872963 117223219 145049405 401112505 427277692 504549598 598491345 21008609 173721158 297624708 740287337 275611221 335628181 169673511 278418756 999665017 999768396 337278934 465118879 383419666 622829603 223217381 594690514 307516047 552673540 273827580 966277549 908433749 959680885 263348442 810882249 54037790 191236382 495927363 956134808 416485973 720978750 798274921 803151855 944870108 986189695 797480849 970010665 272032750 677552959 294870686 654881640 222396785 635840460 167120001 633259581 794461898 815636592 947777066 972697689 721981271 798260440 11236835 350002087 963051747 968308463 299209828 707102899 184966539 568395855 247164965 797193043 106256628 423286048 135994141 584893674 177096376 809255393 636535351 642612010 638590397 675592028 629701091 716136365 639252367 696247039 707255633 770186637 434862005 908295483 266837060 661073466 323341803 843482008 328067571 944148759 573252181 661459214 341608066 795963892 354759463 857723924 414606848 822524129 419386041 694729138 13238709 215869658 333026668 519040051 202000614 518521180 744139987 796240016 931339408 966857061 190697005 379028407 579353241 810082513 780572419 997978767 157123655 569481979 157906811 865470460 774143482 974975723 27364131 625417717 670034859 936792473 21700848 589878053 963679485 985234547 420802757 508494558 102575582 892795697 817330118 902594676 112827799 220426404 370988420 474263361 867702227 890254241 266873319 420354399 960515464 977985480 602824113 698389782 563401579 847486047 580429588 968331758 348231202 557524574 470005757 888202820 853907113 986551069 776376136 987256110 303809010 763656095 382630214 687001625 135870981 163878932 722162924 997138810 715024181 736915213 930636277 991387971 999019853 999469768 372100248 792896921 233994566 784475265 88296872 427471688 863598433 886091830 89139059 944214557 436355973 743917573 414225820 787130314 821839975 841046125 917145413 923220049 949181844 965993322 359981938 738368753 382289268 651421438 367567254 865496251 491938572 495012497 82124900 335668119 379972034 472446776 830799617 882402567 330218917 960223499 478131259 676662601 878526060 944150044 56603608 387878176 763939831 899462805 78662408 417530674 529747689 842719461 149308567 850279337 360398428 624225164 157983513 843864482 482293998 482802442 730875911 801049387 21349702 334871065 683403669 717818008 40012918 646277098 61331055 197822980 815553618 998229182 360352467 595607182 397431835 688756207 558677566 635111615 455366897 727241872 685652271 842871950 286899824 294859371 979247330 988747298 237852990 566992131 512318878 824197172 858246710 908454954 204402183 900905158 678867063 746867386 995295193 999842751 211093993 666467362 555389 532826467 444504467 651268868 812266141 923570371 661591818 755802477 243403316 603734571 208417252 759916438 780144828 905603579 688886474 710677049 687907778 729970147 721752674 952562525 690246733 826542025 72655202 335404704 137366869 565925111 298133405 888171242 939705929 947714059 796812481 801972389 540772028 899340242 845452207 975103385 683795772 861663194 372253153 496613050 374743102 726995172 40442309 762544184 371919183 781275896 495982456 618137898 270590515 659282454 388868493 606283041 55209575 523810715 395459476 597393185 776464116 783169147 991582808 999305713 911518195 957227525 447214251 587269588 72587535 966930962 128754547 719357282 455219277 678320179 632271986 654985778 463711186 584235189 833984526 865719032 874942432 958874659 398755594 706663582 734719201 887536539 474269934 803140266 87032685 909779356 692892810 700713803 270089902 766819550 266805034 599332177 108248039 751526406 105147252 655291830 590077649 814725179 647127663 763056810 242017814 680848226 247714884 996557971 763783582 923725219 595090964 806122497 894769432 953052042 781443212 829238155 90024449 385728895 513089122 737257057 988500463 990936933 205834356 990908722 192675889 559360193 860697899 900514158 282325609 765160051 488860774 512963416 526050619 869784334 304440218 447096609 878969852 929285858 350956980 711587569 923702349 956045970 199362837 474042718 148955092 354473605 367418523 934185470 544471048 711067729 799952717 884009756 299345193 508108739 677670308 960288225 709504504 924129974 595860741 757224350 667177099 754790276 487143497 828813786 620795882 760077510 444502700 678483288 248079786 702028545 424946565 854165939 689175819 972047746 959223034 969236059 802362908 894003223 253414547 980105282 261289647 380321794 847115422 889075188 949229060 965678916 187137516 941811888 79044332 399366625 912102460 997128594 62431051 817276682 653004913 741032433 518954644 904205144 962700508 993718312 913309918 992773173 684532285 775133432 352929660 535798574 909862195 997405852 599830515 706700331 246458249 353296985 265680623 677074560 173846872 813695171 210919433 623832241 145842655 642301598 736310559 864317040 99209706 605395183 933937747 962649245 901280963 977673459 355283030 663503685 651760381 957174593 92606718 665842262 797540365 948551392 414986522 742040417 73296640 932003910 257203368 961561997 926289315 978410044 29638428 813035023 108948824 379518687 515972049 622759302 732867848 867671453 777128326 914435265 934722424 991682938 89724448 282356743 293827410 610703499 338339343 981637785 924789980 976522926 245139391 851739357 792619922 802018413 667232684 890877943 63594502 199947415 668205661 807125313 273084671 594009912 223859755 721632000 875492211 985232280 373111631 475069857 309014991 932881202 588180528 607778117 187384938 780958353 698005368 813155520 338307089 477825949 812912107 837322567 529665440 848030930 65777486 650205944 456526697 473429079 976668033 985704004 852274176 962934110 272850056 790784526 545831540 551592682 839817706 892361238 850057053 947664167 764350195 956655980 79226435 562604424 229677802 238164430 703034016 910001405 48750775 964540792 13323761 456237942 177306967 202659886 600344983 906481627 477414496 922399136 247289685 687088746 816728027 900000051 490089616 916615123 29310600 891896514 371897419 813214827 128869842 256467892 82218774 521058406 318452805 874282133 492461143 899826211 650110598 855170517 742919670 839093414 711516617 770649701 86264174 417942960 988157486 996677396 578834992 633459475 641300306 756427982 344654846 702048811 233433708 794987588 733616960 966003938 495523374 607110491 580891506 607437384 1509873 405969633 469904815 669836555 181650720 318371862 570285021 717868818 723088902 942780231 776734575 818688222 936356470 987586444 288283714 480644324 456725806 648685544 261106296 940993589 451241974 730259817 507944491 754960572 319482375 584668332 663505181 767674280 5316573 502129824 999344192 999887564 172808686 180949048 700481013 996442360 189230477 868727842 772468831 970340244 623977940 874472972 115615603 258802692 672348793 681624125 607572588 755836381 106244019 337582419 674618586 891817448 472968024 976306726 222906551 443501172 198574188 975499758 710566790 800090686 294751860 691294623 769800915 905482644 679792788 962251460 584665627 809198182 372579096 589911091 194019323 388239671 930999331 972185866 958826914 967368810 404403696 902333168 676767606 926078185 603555526 958875325 385089768 920437863 825656808 833352566 131720702 427976674 857827639 973523587 662491057 745093215 226563392 816014240 508848010 594872336 97841377 551450340 335710383 779219099 924835158 940317120 968943687 983082279 502137478 683308703 986805820 991627523 116291541 940371772 239305748 969487591 545392223 761607961 308782874 467190699 63402121 784404881 324470342 334217451 962688619 984134813 753167939 877127115 926471274 974485547 208618473 901934731 692744800 954713242 696732825 975381178 172467186 244961292 679241047 712253115 301844876 743362258 108532094 777573569 997516546 999161390 372100741 465467666 715457355 940639522 534816404 874014986 767094087 881729828 995487251 998491700 803533867 969510878 852639647 918684697 109141023 270527278 679063446 817816519 650047416 683790371 247725912 965818874 639594608 846088989 892394646 994444551 818076898 901209312 974674048 979685158 158063758 287803413 485387814 909458259 803444948 995120596 444532606 482441412 483057550 738277935 754759207 855032720 540964022 725404413 712736345 859285841 242903281 538517776 309349759 544220843 934251404 940865606 577647904 604411683 146670576 543404727 168065946 817314837 391584697 997677095 647165402 782122416 277992119 719344004 581700245 968004786 589308366 684206816 285616264 577071777 318145436 706533649 778468098 986983645 537255069 795580535 602369472 753975490 436387753 734353139 661752121 826571465 519799738 884585472 48618033 232108827 612791992 936255421 701861608 758785430 864903945 909213037 640477562 908185248 426338355 481243345 981639151 985167847 177951887 357497898 865547951 900259155 520244403 739038322 213125742 555490169 664805434 810068271 869752008 907665385 978131988 991102161 947998592 979268246 99600036 293282932 165571272 286982853 764210640 765067602 930049230 955386053 174404165 803212322 79935722 927908308 605299944 859719832 646310720 931891432 223054809 483273811 12616936 494364337 562371965 707777380 350538463 698618547 903619699 906823162 35233615 46444968 408814944 581682667 848569288 858552355 32521828 241099232 621805773 819977796 49379894 569970529 873897255 954679992 917050375 972086784 755255313 859800164 697048227 870858019 345515734 483880373 30210894 976392571 197871469 252209882 649623759 784873334 889880026 903245969 577743486 690883693 519012396 680483767 567259709 668506285 471862739 639136964 944637865 982966699 366768937 697620410 30325756 815381390 804021986 940699397 516978058 900618987 809401825 925824385 299960298 981582585 828677897 864804929 635497546 856019349 608798076 680565169 88452686 933751895 767610384 786164915 934194101 968194546 657118520 684474431 323023835 343965020 924015553 934680279 712101279 799644120 473152497 847600755 463861666 572148204 50698168 600011271 652500335 937207165 668642308 874694516 217378676 969089587 947805997 996932486 620836988 964898617 404882775 457062236 971082629 979658016 476181086 917165456 397087509 751779591 546932135 837219899 13486702 32979427 209580776 935901488 425136661 865760835 131047330 142014639 549251067 783494091 70855573 257463165 147265397 626757393 689067904 840807866 391283238 496366467 846007393 907415104 476256391 595699779 764432469 858524536 123392827 656483103 458057445 833273753 515059768 900536064 833630327 976974535 393628319 642175302 749399214 979571036 554473792 969188826 936493713 944843466 969199548 988372603 253613108 909940632 560006142 726550013 341985425 907100702 391431313 580603885 686983910 931499170 406292880 781191677 797799115 992610677 723063454 783361216 624295408 696382813 230777194 354927724 783544845 834388537 724311751 774869541 409815010 487248819 108886509 174459182 39320917 116253900 845508514 872832651 157849497 507267853 281215816 767818838 404938611 575505306 714250210 970128650 921942194 951778427 592048715 829771707 296640447 848982855 761349374 820806724 307140397 621899729 117552851 526637475 669754356 977434855 395266812 408820303 306687539 836870212 378488672 464364292 419481296 522438509 904856152 920691224 988848333 999623730 274852430 683872478 952777630 963306699 162653645 345868714 357609330 942044880 367974799 374686667 237100687 277809258 599615239 820062671 353379680 873628522 350990190 588304293 245192684 949929384 33570665 966813411 145117438 501619945 305496696 496381509 580648476 889525254 981371857 987547652 364679022 720212366 120111693 428394490 362249701 460732734 40679207 222908583 756285415 958967344 152535746 740444039 111401284 721150082 127362836 303140007 486331092 629837358 476365011 762088061 213982001 833592953 493250311 788857847 281895836 922541151 618889731 694966035 106524016 975297243 243466891 267763145 537220828 981764427 28978039 38349344 998630654 999264308 356463426 781389996 65725927 804526401 727639300 737331689 953224730 957393222 409212857 809309671 415776646 455962509 971071876 987482388 432886027 929791181 864313063 957077340 724729528 810652266 600413724 759643840 611513654 816592965 779153333 894723584 580795627 842417907 110437957 842227697 491025097 653491663 777712354 999156932 435060998 784303436 260916190 723231605 493160302 839960985 886785191 903939225 627937350 768909694 123234104 261118481 971639959 975786701 735194360 907702424 217244064 997736419 215312897 488151807 576123397 957976629 405309225 975918447 818453535 867753264 65813662 965479705 733478437 925158548 567450867 934131162 891964551 892260029 997782358 998349497 623222982 726847369 84632858 208461250 776699577 892923745 426678922 750666183 447379584 538349614 923904642 989285602 469151501 599413630 709638520 788536791 52980119 959249035 441580217 968646302 114242517 308278923 24105539 686982706 60826371 180527287 470391213 514680755 13277538 227659191 743277506 923216872 362619648 754918995 429905802 606843260 955608065 967460316 45680459 799623842 417378437 614577069 100984364 526389221 224915829 829480925 700644549 979386248 46692927 464053958 932977827 984076725 318941263 902258409 547046527 933312417 11222243 151079257 135011437 379289667 837027522 840404844 511469041 541327339 591344434 800632240 337822990 988086325 806850991 821578315 494939955 535737632 607687762 789680076 645559080 915413766 119930027 155859380 337482684 718694066 379969433 754675188 168603386 855478826 833705337 913385199 525451912 735254188 413255342 702641861 431389292 590575919 732738433 940678906 81467412 830046938 838394948 949454856 474422162 780274704 188423719 812811149 269478121 509340617 77301588 263962436 257606110 409139560 278778804 370615724 659653113 670817985 996029953 998112525 135913514 827222039 394727826 706584278 952615987 992156836 552334126 579696964 988707036 999586754 942732027 968062845 693560774 711571300 177372157 885812562 992919393 997493482 61088156 327345146 671236512 791031884 651169774 896239634 844711619 972845226 275905645 621932474 950572383 965914664 429173997 758993096 374311054 912138918 35061768 604361265 677525029 773497511 263435060 655396146 635140531 879805940 588829965 709972581 81825971 523901969 266914844 630043075 684008119 913096252 78275897 601272910 643896216 739417872 973637780 983718415 414879035 560100400 544912293 862238456 565327830 705285546 952543026 953961380 373345444 388933556 391159450 424696053 59915964 771315990 597294694 748160238 720276574 989887584 298755311 477490325 720808390 726374706 816343454 817403726 79945036 550712678 528599443 927739080 970023238 978300830 258515949 541833360 407289437 575749745 929849836 962137698 100256689 146163369 860797343 919563191 399248664 645839070 966106319 997402955 50702972 589098255 28640679 977514974 116601824 991892689 991795675 998123803 453695416 529460135 105422567 800109320 847201048 864432157 390935090 795615164 680466054 778020351 924365337 926049991 45819871 365354740 249972225 577378185 621110689 747067985 964078335 985220486 217338517 493814792 288143777 604921226 903229021 916212934 943292777 946432211 38155886 120171555 425082475 839113121 646467509 942863576 599179461 930408075 834894324 949742518 205115815 417745624 822229436 957513954 599895834 916651606 151162065 997943127 816264306 846782326 264407053 396594753 760349433 958307727 414067813 426032118 813308508 919547755 755863765 836375511 975779794 998373601 862038587 899101206 447121807 504726921 181066845 813654529 562734932 942802898 347719556 850443435 17012855 937533937 782101154 969075590 273680641 875600102 634849887 975771897 248415083 724113370 684149443 909420072 406016460 722045821 804570579 871700262 753520505 962733237 243434560 659661879 675356500 903218318 11816322 467818650 122760439 234872544 253714859 870213959 3057989 398481750 682388477 782528721 366243611 369724309 827225838 883944657 217224511 883864028 346686200 802549022 358983952 381760214 919686719 941619773 388869040 909136858 483007185 493357028 973037561 982949133 937487879 968345578 642149639 983255655 812264476 929332743 189647537 773237161 217716029 330431560 149582186 674414861 449345329 972780075 97016624 893017630 249068592 830879077 637775529 710772728 522906861 991950782 98058672 684663279 946464441 980816969 375041505 623842890 668930161 909659908 714940465 879060872 151647276 285605219 845195570 905418187 384374838 395584972 523630001 881428817 649217177 741519288 178079585 971205200 802315614 923995769 417248493 430571632 73599172 204614054 849944288 964944283 106340197 945583962 336113226 729251779 213600059 764139711 622186163 658765445 317438796 416095649 685713501 952742602 608946077 668626128 231800934 896848791 514974161 780401265 465745177 964387155 368304213 500343849 174695574 650132241 963997494 988271110 265472958 999329866 26670850 181463399 568977107 683043497 23605361 589739330 842666614 951689033 891675171 894709759 979224742 998944669 935960283 993413196 409668097 570108986 674211698 917365192 856402288 949957197 860476095 879895574 479200801 588581685 935465173 996476631 610397891 913085507 778498651 795477375 180739863 972658549 245476196 596183635 726901564 980743721 117165561 178459376 350478477 711618646 585746909 820909411 444420697 676817003 795041481 899957380 465139754 570843734 169818329 978161214 862993766 921950797 948217950 989779577 836601558 842503590 415198773 695685904 43179826 783155429 61513497 885028689 457033437 693974987 261371845 812119829 793092992 918793878 922100753 929464056 963615098 976774941 446353840 510924034 102365723 831593166 516092803 756076495 615852386 676765567 964300781 968386894 29842875 200949269 150083588 653266438 962810334 982477231 989197022 991701801 487213685 697129197 27878044 908433424 822178292 876770504 854938305 946811769 374399407 615841572 992833477 994322502 447515042 901750905 5344695 831245344 410125941 413810916 317967765 736074585 809950995 825729527 935546399 989160037 371417426 844175140 636890476 984086400 1663010 375271742 119735710 913187304 638927169 729369448 718806551 770797376 831275561 851143803 353832367 651172404 775131406 887325931 744210465 784238478 269501059 475556077 143151996 965241536 989300640 990609442 900316846 933066750 244653680 963360829 488325348 518711787 95947302 874112423 851372837 909478219 142111136 776268550 346915695 895955409 746602478 853206980 105286856 369211145 645239962 936778038 830266362 885333576 39818119 737101680 804900484 972198644 499659348 978611107 260555081 511579751 428095797 806212037 480212194 948592393 953684434 994234390 613367661 819472826 369692636 861628708 190949601 835640274 979096851 994377915 346763656 872758078 190486062 363428278 164622205 867320201 583036848 586537315 288384888 668891720 845928137 861658978 22177322 278231645 462794247 714874129 241555126 322696872 718685918 858730670 711638635 954567748 919868021 956857052 410679585 564904566 20910073 547388355 941077644 999956374 320777186 486669951 678426575 867235165 222069251 632992984 565981108 608014940 606029703 973199477 518711931 964609002 541022285 607899665 412852433 642657799 32765714 825248293 673431232 849392585 612724577 653055833 718059978 796468853 215124118 874388840 404811930 906125996 964576389 966735382 647440324 667748762 41494805 731946271 458179774 758841753 744158922 841409100 570824304 871521349 626894846 628497803 399719099 672952503 703858646 866474319 973174683 993348406 657466347 941536480 10577240 674040661 32120224 287642398 138965366 293553948 455655393 789239720 456485141 888558455 820101285 972505839 570000023 678155703 77916961 141974452 518694119 633943941 245346149 785037805 213247704 791228641 554229570 762763886 691131292 923219142 414531543 623254464 172154665 176234167 617376158 804095362 577862860 598047301 823466198 838926938 912929119 953540958 105612252 228668578 401788439 661545491 387542562 913828355 315667960 912912843 757849775 792464781 249256574 382011792 776843540 866023477 64925872 608152081 697603399 873704473 194082479 299364882 278475117 283054587 948863649 982060527 670473617 933140443 514556585 914583854 976275092 981067603 42138970 468416889 305739062 465916043 735056555 950040861 263659182 564678941 187273285 695066598 110545929 696765628 487989652 679251566 662099367 837977068 265219633 844596237 584305133 902268535 842417842 978072619 70413010 350343983 131049531 368644609 182289621 269975411 482278977 767915668 733235862 784202863 731866059 839558488 774493923 837321882 660802297 678077423 820958811 937884322 734993083 890565825 621349364 801484167 113355790 881372185 593791313 654922375 268559802 789227725 281074570 798215847 954970686 966139434 410158608 517442901 438658607 474572728 595021225 776106822 863656628 988422064 583510435 962754831 952912243 988607907 567793337 691089892 656420586 781119003 524087974 880201488 433069666 500338358 204009324 401388358 136878514 483791450 90572312 635218665 550648124 960314537 981189846 983201562 838094264 880430159 289847422 419140009 520921120 901006613 956861542 984489328 741643975 979882231 183992663 521426285 625426629 974545877 97450543 617468222 111136940 401495942 424965805 948794507 816609146 889236874 16820781 80396824 797710405 809305271 791510289 890469526 508353664 576787653 159462155 181487453 388866313 796324776 692144465 798827980 470661507 772021941 956795428 971796879 760694911 942165235 34573972 593386391 216015806 877263686 503896443 570525803 301988074 626669027 764207124 951355209 787915277 827974398 331037241 680635985 444857531 881637737 413756931 693309801 947126919 979392059 743248122 849248063 877770675 963142081 471317687 703580554 717267908 867047921 592817766 839942647 524427328 740165090 989611220 998079424 863729302 924328939 367009297 522389631 295678234 800525953 489517988 920650513 607959086 779861805 877646076 915263526 833083874 860882787 110597699 807300330 989841329 992943988 609902739 745229535 812037546 883595243 75832305 374975474 408353920 718454707 414153434 855829550 904198057 929299451 718738982 977695717 586640039 990583168 530850003 755800610 433453295 795019410 992232345 997199027 128897869 161844483 131879870 367357733 793290920 850837726 409157691 460383164 495294459 890766726 410239089 475523665 428241362 752512130 780380783 901734945 638318332 970335862 425909228 891421568 375755154 485230277 328616636 615024162 151144888 276221410 989683922 999229430 458821494 821418575 157372215 652022134 401265797 586634412 740787583 812217481 419638450 543315196 478516358 570834426 596764163 711977607 779491502 892796822 700525328 920868794 881634251 907632443 780544654 907741686 368303687 534049861 551839083 858142498 916711919 989952002 490461189 869449707 982546951 992576679 641283402 944318799 801061401 991558322 315838081 855650664 51113222 817517440 949352860 965738307 611764571 991534203 849133291 895857215 678399998 692899060 147808903 470850227 722392609 776089980 801772599 988474560 566922747 794367751 369293174 788062176 410044667 760267794 812785142 814245530 968759493 995056407 17272719 662746192 376576651 813094566 88357731 732194662 785920317 854136391 3728506 326503870 550861270 551926567 916996974 993015640 824893256 885813642 312597308 694419396 318528794 773608391 746094306 844377524 460665032 674159266 359520377 823734687 416335534 904465160 92465157 532460443 344133694 445974015 343375294 447741167 8596143 281498787 903209365 996680355 208312376 377837731 579983791 890125351 903952172 912721191 885720703 969582804 785187858 942127641 395817891 766634353 670939395 961407939 336752940 873345651 609552293 948073935 251083712 996351589 724782570 818196772 326236535 955771139 740725951 900229549 528291129 747380618 325222981 844270136 962185421 964332502 36421936 137249713 914186952 968381348 489444687 924417738 456668039 573926909 965991459 975991521 442130145 449716459 432509353 919071486 101020938 793444286 548922233 672771537 576977379 608732585 872916633 944274251 740962573 861646795 183190240 717114330 369484955 629486266 807654187 864385178 258455550 289035687 491201048 589592112 580936405 895715260 817240971 994841763 652410949 744283110 478196326 652462394 542439242 688968317 121959735 492756148 33389805 321367806 914332417 982170444 334076162 978046443 932227819 939171416 90718468 557516312 657212601 905230299 720297532 984004585 7891364 966060962 93157059 323650636 98919846 420742687 1651675 262506261 26339019 823202431 434598383 588511987 580202915 749900535 481902850 823800535 96341447 202518963 114539280 205484949 910113150 982958867 138694548 653590298 198433145 714592176 834364554 964441915 494849857 760869225 656635540 870417522 666537403 921773480 816642605 884746491 763532416 917179495 516299667 865832772 826634230 961735724 396050213 726481959 772866437 802197994 658821577 907639478 864774571 979558325 278463983 708140826 629853248 875129478 306109446 387893224 406412641 712591134 353718456 870909730 173731940 469614639 801932665 873307215 711113207 729540606 438801494 543839226 170877242 919237369 441102892 720455653 248070015 944309143 286957602 850786084 184906459 936554933 803220980 882266401 996718340 998520737 543218435 933445501 730364682 864103774 459452769 639368913 84330773 560392999 868439111 888563616 917751744 957493487 18075840 271617483 460164379 964802320 186157442 271975123 578688890 748662130 935455797 980108365 991406463 994880002 891639040 894140328 244004135 844944683 929304988 959569676 913887431 988010842 137729474 461475039 559793970 839072416 236235938 848745776 723448045 910438095 459468852 992365700 694865522 854489373 596089226 797091979 294372377 439870971 554011125 802549092 351368236 600091919 638624065 995855325 656599057 880892370 260405713 869407571 135642483 774670982 578523392 580621739 207768289 807372471 891629282 992765782 498852519 755992836 572345651 957417186 742309465 957441366 576591077 796575914 183278762 963642500 633193416 833162648 676796585 797446344 953202531 998939351 76565463 778599184 320974719 383450387 478753053 812586742 202261134 663515729 970040703 974990388 972247604 991007681 765085866 860278593 163805933 952995872 708545263 773236292 255880310 297810009 462978086 737917425 990325525 998175679 461183779 753440396 96988338 212272773 786320300 808810214 601247289 920799760 644926008 899728336 102081292 502039310 391304155 970490117 676637806 740287451 64917974 503697020 46072486 383294991 358140826 728328084 283275802 415439789 330133218 792939019 142561707 192949602 311573851 725224611 302376932 476672733 40304858 227088883 484594301 835906631 858434206 862601160 240121113 940181676 987141191 994547447 687251921 865384077 465083068 891077229 287873730 961350938 862547003 949003912 753699136 897579224 848021587 969226733 359980629 530890349 595924616 944410848 318649310 935217882 3578659 20393563 453223693 876778103 738300238 836062340 28483751 531061715 386912637 545584285 801179606 974953704 502675395 926269907 85924242 950628925 155083119 715112212 108480777 834234780 233737081 895065031 432641147 666463948 675248570 925297028 330986434 919592232 805299387 886725624 983140241 999455579 138701686 143251981 792865045 802522765 267997820 400079467 613907284 891969832 583844984 795035819 708196896 895979753 14954519 66188979 673789585 698801377 34185176 673437726 830042497 853702147 767945555 858773360 547079854 922052772 293064969 373882752 289010015 371945846 919008043 976675039 751051623 776883275 132062533 504613991 787500525 959730576 955808451 998572023 873060038 931934202 529290006 599776073 719129620 746788338 987481657 990714010 244467669 438176886 172000276 978328826 468099696 802525215 488863459 579332338 353128070 774383799 651564689 961202926 807522118 986848085 686443354 826501917 922197522 941152059 684532728 728826949 504986893 718915261 774320159 937531855 130291521 461227451 874962855 911700730 465198241 833772476 672860462 731436641 478672559 851724249 69697251 450460119 676386681 968301250 904086219 988425977 857375990 993565441 558018029 566347423 911442776 961535935 105728434 507679359 547813828 847089064 158771324 737093186 37719650 306585578 129256942 398837228 741506671 905033131 418881606 641029663 699995078 743183982 957976694 986202042 975462610 979876280 993016220 999681227 288980434 769975765 181199049 709783611 460098452 634369185 931598612 948873341 873940393 936187028 422055228 525404725 751745656 925023937 807280213 819717021 562646679 682484111 770649127 994161128 576032672 599525735 767039099 796419251 996902501 999849964 785238070 916639021 49747923 428633958 854092167 977553318 487651543 763141866 41833809 844336802 662093353 834037409 991056080 999180401 925478421 959685649 161679664 488839100 622654202 915341836 135287346 531820826 677266776 985528699 54367634 777433669 10677394 122413294 459545101 619336918 866002486 893309478 557384013 599168405 596254919 824837207 65251545 987830196 445754106 504785130 53209913 452253466 507121415 589097031 103170003 989279129 74339252 649877456 362437920 539904575 343058545 595607470 636323832 892446128 578529444 951062933 413381139 870915712 715311232 944171996 664248108 979973767 309426690 633436312 446974894 645903253 400945705 864449205 36361692 395080870 769320453 921917842 127025188 332517745 160298110 416716772 295193713 355698789 39244097 229563670 300678840 588462575 789398598 863733568 358473953 387323661 458998385 681458841 943725949 944142226 86864300 179658307 753290335 988622517 965106128 968801513 407607030 759805502 839455472 956975015 804332460 838541407 904079272 951701723 418690426 633682630 715360588 877594484 22688222 514138416 705177064 836788255 992068897 997344827 853462297 928912047 74789655 616478231 963327690 984866150 804944104 843645047 986560283 999418092 971802183 998353114 269696598 443898867 747747581 899355777 922618610 979912835 749624961 823004974 356964922 457362588 612274566 822324758 876431147 914632054 146345132 507111221 884037551 944518601 297306126 406584948 122483194 250697907 132432782 904285341 375896019 640240205 501221456 790769513 202181374 298030482 569385476 613973347 199167338 694891187 746112561 855890838 351722498 820344060 293869642 361075790 305016300 883624369 151174109 496621181 702865305 793230666 330379084 938363187 12835462 778123898 921453744 929532988 443364517 600607505 126115761 282858528 936774979 999700588 951001394 951100389 504353614 631402594 548216436 881388966 977059071 978972416 640501629 747676425 309552042 637825462 634062776 939036568 320142961 688303900 419274077 648381780 386689838 955913694 767462081 827293618 164921196 341391488 779515953 798365147 532674058 955908623 509308993 860074008 116254138 940958036 332764637 438752722 750703316 796390673 109566458 508534936 416968007 585894586 580112940 724300678 650608372 968453157 419016271 633904378 107689466 985335991 87350465 961312662 125727986 139150671 423143453 673229138 700308191 967860750 198075784 664053658 517629889 620484622 89916192 220383978 995328664 996205166 459930750 938477762 773394610 880804203 817987734 931756849 478193294 879074811 916204115 943707181 275568934 566668595 82884222 384406467 413884526 437076305 147309269 425510281 158944923 303741083 437588840 605419124 861267385 915980222 506501556 618010632 200124924 694169258 674113724 981628975 496986714 716227170 973966779 991606477 545897244 973602038 862035244 879084953 772827362 994119442 621708794 678132123 724841309 984603776 92340228 846596909 728292856 886490784 281215307 329152818 132753133 145212378 711657777 854171905 912483863 961937849 811486712 897637882 299782909 576360878 588532540 593143487 260396166 432208549 655967045 810640443 125843859 754304596 172048843 941017704 143425139 530286248 262229386 642785321 650576398 961019910 11829007 259980676 171212061 860140002 28700577 133079875 394204675 886277073 902933681 914054465 199707307 595962054 601580909 759799687 564230744 977788799 398903956 527677763 388773638 590235427 597837135 615858974 47321672 851099470 506408986 734016042 432114713 480638183 235481663 328057528 217009061 456223771 581449906 854398515 292977691 863862103 843944871 849347296 331215083 666780584 340934255 846730370 474848117 801937133 47569002 748907462 554978121 991121217 850759153 957478595 297842821 738567331 220445574 768836290 765900028 850537094 549746790 612156745 129352752 314429342 940112142 984073387 380075851 710991796 170425117 315236514 533115073 958182432 853293625 932374929 333834644 560727259 107325701 482677180 790456624 888040977 301577520 321907087 988911333 996097351 382473421 390464011 694481547 994557124 535819589 615417084 751397543 765992141 48781168 661961585 330857724 354334766 294451098 472890478 800493901 816053878 784322288 951828577 446059081 726123790 467855220 716407204 71851557 664533284 660671062 969201170 242148539 395895111 847374598 893855023 804248547 906603667 781478334 997924684 626908843 940571566 690123784 763797893 130307333 578964112 395315080 756014040 186849426 398449281 838654548 870688420 691733890 843638318 62540960 321508142 907742597 943980520 205991555 964822001 269160599 554927762 38787671 150960971 10282072 368134793 233851630 695632080 243593880 629249709 72465835 498799937 557156778 975443663 746044841 949459338 378040833 832800370 394258522 463983461 819866907 838314932 373447704 990401469 241527226 958290216 638204754 917480003 197639391 502008481 522315276 876827899 661631625 749714300 448130775 760948238 827498059 972711017 10857078 192201912 613553906 983534572 496659706 960424875 782743067 842575772 449531205 898230925 113474369 658901446 68698013 606586811 681467427 924762977 68835386 906236858 855199732 912423721 461102774 882111486 120220983 425996609 521899609 834808464 410484313 563016838 367584421 491872833 170647250 214059271 664615192 853733911 551118256 573116744 849061907 939788674 778886565 808891198 339938799 546774743 624699521 942655692 116494140 622552825 359550567 414729039 690040666 772184607 965066045 989510866 647019565 875052944 170548536 514028721 553831902 997997445 96663099 611038458 885001149 900229376 628791678 848817552 397673626 714314364 214735295 935332422 523449324 860083117 16302728 247261833 812475480 824126169 480120521 771733433 539244909 731539997 118292095 862005912 285213016 396887397 218179852 639447787 945756826 985481653 544927208 747437404 224063960 423822175 408445192 928300312 163515632 922155300 627760831 749072324 256935110 740088900 391645520 990835993 569141919 655543965 428172263 650872320 122163789 540619781 936074541 980673895 873410059 992456106 663523721 882678838 832120077 832183551 192810814 978865765 874453627 875513249 161883932 873793215 907167263 975710959 154981318 690984302 539672675 818662747 182438789 330251571 632665320 810604194 185084984 577704809 124190824 339097905 628928875 761769719 252918782 964932143 515539950 547832761 16058768 251695015 396075539 851460475 773967610 953831709 322515006 715996586 329975886 747770906 291243231 494694762 273843884 502732388 469034031 663183704 363998980 941717691 606378936 680039428 231133967 795573647 427714381 715390553 450045577 863324080 510581347 661088585 246203765 874020438 695892055 703031406 72139441 507528818 46005063 171656067 423914177 557561070 904759659 971734137 104436772 917465824 124680828 788520521 907320622 937612522 279473053 470628297 604304026 663878027 516495193 527361205 366998478 499535216 166062437 239076468 506496270 665298368 525598162 649086623 288492387 820300841 475312783 779448886 133117220 304402201 514089793 665503606 234024456 553259289 68405653 289415488 639832878 825106628 182244577 381312275 789039251 950222444 188796351 713970142 148855066 321938341 442962990 473973908 958203273 990521878 484949979 522127176 176671399 513085724 141672484 200145120 837327202 892439033 300546273 302827834 852695383 862247545 501370644 637371627 263377143 331754748 853795724 887571358 183846392 875810657 111856716 152718690 298230549 565527172 561660942 721248252 150609754 288993817 807306838 825760017 829423693 968920360 781904692 997374625 538888165 830576698 151722519 755505557 699220570 746611461 831232798 946377953 140937088 927822638 193449957 277506318 570851932 694205419 616089011 663181352 951849704 984385075 543545635 565143351 983521869 997300747 756266847 870077734 423227526 426361146 58109227 154309473 97982898 918053619 498000476 574101970 289095596 562051893 226817686 407655869 179231859 373110429 286671266 775043797 94149728 162928336 652029723 919578854 329271025 716014030 647532354 771861901 948083416 961786706 682104940 980191888 557881637 906478737 986980068 989009103 847307647 927096462 829641554 899575927 903941246 955610499 328381626 709445351 525695461 926085941 316007404 484998478 210245502 258305220 273316609 907864880 754063522 925574948 551501583 712109668 254339175 887862282 251145555 833248940 350390955 941198572 693865252 888499281 18923655 271486281 159211287 647943609 467035843 468665070 710341135 805675026 510929542 626785275 662775543 835090371 555988499 916886190 970713292 973721642 698338238 894438113 191888137 366157053 530406489 634710567 493395748 628231978 639626407 690881427 402091177 803089659 750114341 929355427 905206433 919834097 338128945 667674547 166674488 775485387 441691587 959795269 88800405 503231848 442870886 494822167 326851568 950165750 606831332 977174713 886778822 962495034 210420827 454895623 200317031 522157782 825701398 952505392 540742363 927497915 262447722 435189062 30976962 806525391 606745537 792654625 968323284 973297087 476712019 774908040 637533909 680786014 707409854 823587381 679587641 745870619 298999967 745583688 175030887 330502169 613139228 701911977 357125460 740950177 921846221 922086199 8080525 163634363 419409906 482555741 169761553 906099584 22880945 757217390 380279875 529853831 259265115 645668428 82378936 515609421 812960696 914806121 385561916 967272674 701708685 770708593 43136136 732385933 784138900 823613114 939528048 961813546 283133980 699570652 819228634 836717764 628607105 794033531 812018096 829439479 136213918 706400987 445677129 976355300 662398526 836200337 919359737 962506818 186285660 785329227 194434251 552569558 130208301 655121592 680700479 806021106 880988723 889517965 256357303 712611710 368432729 996193248 604246347 640206319 658773408 788368338 432016743 628523397 887166987 929426741 506238492 826369783 32238580 231670185 655822131 866748197 144419752 824187726 11016290 317833476 312275513 895553916 515989117 754171904 766399639 795904031 819910610 864349138 593444408 743508273 322453428 699009942 599949297 714331350 62892738 222126682 339873036 775436029 322573740 773812393 354593720 914583780 958156572 965660154 535937988 690510804 247626456 783798286 126914747 455821179 748035925 969673980 383429757 407258024 985881473 999511723 701416239 769177266 402695755 686630708 943125381 948763011 140162887 686588268 934447182 949758207 62570551 913150920 466123484 895509596 257931422 731198034 640068698 718632072 807228391 876904103 492291669 677450554 365560605 672998172 946356013 977672156 578582127 793999965 985300683 999708705 335517800 418420311 346359698 894233880 443404360 653781312 73903789 828269111 991658402 992526810 23674365 797153432 502898181 880703849 458866950 506883888 828200013 831535834 583353179 913733015 442497420 443406349 478957647 669599487 492382666 932176796 882108115 916176830 982351768 995700387 129028039 599804455 267507613 730378286 185892635 965271507 970647971 985710539 125863206 965240697 127910219 924940713 292688550 556223304 757507534 866163812 210061013 608759260 654232945 793730767 22623742 434039398 776622079 815877386 962992250 966989687 8093074 630812636 220340867 358355705 910678797 965001131 550012503 962591569 789634703 882641979 483602314 501431354 850476974 930935333 442163257 949589298 256570078 725470396 699303858 961464249 559222825 700970007 646395758 927239275 678766831 923983520 796902868 989649535 668368753 712236011 208443282 804885359 84313820 950401803 617594622 625629108 248491414 324270491 38941335 97433574 755492210 946779967 671703145 805269960 447644680 552140144 974129110 990373471 972342274 986155562 750503791 960211628 198260119 233226778 915822266 934154788 744910498 896480590 78789357 207034627 500180453 936953272 828389296 887794216 397045191 895525793 815905699 825514982 736928658 815885791 516630798 637725829 550929878 972532161 660910752 867995493 484147551 779047757 892219090 978852350 722571692 989814945 246807751 886850431 807153424 933674823 239912535 365826887 877677364 940681788 49793820 755445977 193738625 401756865 265204122 465190076 942362822 961493172 72249999 748447115 702289382 757113179 660956587 919083751 567313655 854701330 88838717 928866126 719298181 950296867 40214968 363565137 537991554 973225980 362392412 979700863 856374957 933010148 414608097 644681577 340552218 940463869 135922017 824295775 493210751 684740984 652652854 947031270 138163180 708729478 535887233 809002747 307088628 709504579 44592785 567712942 36993825 113437997 25653772 27477737 918243438 978513832 771330118 820902412 833876654 885839003 752708295 942162169 606764920 768502558 431812657 845601960 175568675 416594741 794539964 825491408 509420873 718725733 922248224 984637805 961760019 994633230 53796090 794055680 35913769 511074224 690566615 998055167 211276391 990618808 476962614 745720787 948819218 981899127 355872468 712532082 520822677 585276448 267939374 798565874 797043585 978791722 923854346 957643235 301421464 394496188 392668359 952409205 809204054 989042650 986347779 989296601 916747344 999913445 205681226 465434380 785471713 984888268 892334075 971951997 580156088 851740489 443154987 937024375 26417865 212440202 906459626 966687923 120458862 366332639 933238909 949195288 535811225 621683710 354840226 709613252 781976847 916250700 113753259 214727505 834967937 897945038 692824353 761043754 462104611 823516222 27393503 96593692 417914281 656507449 843003722 914770562 139092814 624803231 33401450 764901995 702321176 784095739 90206290 988980257 450299250 909007937 179369929 973755930 448488186 472148221 283804534 748866519 432788202 759152220 342014881 768799004 755678297 883048230 621147683 822836486 229016598 292381154 476820291 863814228 882241170 987375984 877469953 911378504 975828025 985165866 954627458 981404977 527071622 744317808 483750167 735475908 140445974 697447487 702622562 926448062 569685935 708360251 194967032 660131095 264673589 714887087 601786037 787493731 427087973 463941048 844175194 904259449 965688245 971031394 358641877 510373597 779732549 840656851 592253109 888516048 331043281 721284311 350242393 838652374 260338233 464722530 646519962 732905045 869483282 919405581 160534544 915090083 575073318 974085694 893904678 977687464 845326698 976432545 162113118 767146291 975608162 985718159 461354146 524924506 668365178 706802905 908236214 925628120 112178095 870359729 840908507 854939038 255974342 861372284 778995569 818241005 221956004 808224658 102973898 994459583 846394763 847068215 998022530 999047920 858235954 919512116 674781500 695288655 483645040 665715945 992279694 999445814 246842693 830643814 862132873 977214657 160840993 267527595 849269419 920642310 35690367 512512161 245354365 976423958 294469176 378407390 86327414 289350131 981472419 983480086 451890663 499998290 119429648 386358546 14053774 773713262 859474436 900501402 890443790 935194019 11971087 755977993 870480114 985787935 1732747 964938285 920471326 948234031 464479582 607282667 295009815 727906378 586754251 904371763 789231607 954759717 798383510 970580626 176600052 417717620 588794824 638385848 335121771 464638288 919927373 964981065 95777483 225174279 493720213 863156768 15537881 923013836 15593545 328575481 843581796 956963979 676874114 905328886 569070509 992962237 781881731 812639750 554376755 670469119 821035463 913651529 632487728 891597733 698101014 870879662 295102322 747731171 329546035 660627819 427011107 481170603 216458318 651658089 139315463 752230380 797068832 950743149 684644122 912902662 509282416 884090757 358970124 761844956 847787665 938275778 10323544 63088512 986767427 998302019 865206203 888920023 741569010 948138713 406681610 621962960 980564302 991396907 101494634 284988698 356280923 855495026 512779077 673009495 659287163 672989903 708215705 823356163 135823547 992146918 837265467 897985903 278039426 541225630 851567483 987174893 403149274 634483185 957601298 989966246 246976211 522828039 105181334 562036835 252303337 938104628 419139380 881655806 196971064 735141266 369922477 764688384 63172029 114221318 88865420 505687815 766282125 927691780 435757731 660439842 931663010 947110452 171490500 372213539 875331435 962421347 764687087 867084318 134901967 941754740 761090995 984616747 424507677 431115482 687124350 829727004 750986526 825697920 396104362 900257464 169503623 887239907 290547449 903998755 53617718 735682952 943626720 973163101 4467222 57280044 312169621 593486205 828001712 840247505 933727188 986307807 340294441 942906672 313322445 573009745 225640312 937604666 514356007 752000094 182034657 839430931 168037389 683947353 970081918 990196464 766669889 945058865 608345085 993693895 768195134 784549468 125963872 730252753 126545638 954036617 197083792 558106475 39081921 174845380 669479556 812779802 915558583 998010845 801116911 886138112 939331575 965305524 169347467 406699544 558723777 758217400 905875345 912759941 327243238 754415155 54764835 594826385 519068861 920595746 597480859 962516649 414369683 814176081 764033267 834340324 281502617 918566971 303166042 477945877 667598867 790707484 873076372 891924245 321574825 950285947 852373525 903968510 438380951 721417892 283689048 289527975 698948869 925522146 150172463 317102599 12178484 27872253 356043219 505225278 608772163 735191385 542104474 747677294 647384182 945948658 254367767 902099969 542627640 750426069 27836059 665869303 886435180 959866577 934730120 997699099 692302584 962048441 989720083 991573860 628858818 823767105 628178255 678930280 868093933 976983708 351950255 593821142 672103673 995699032 174748528 544294157 454096085 969672729 928663818 951564535 913659134 950674025 259214739 344794393 938851092 988156405 73774304 297611878 948785278 987095748 762630272 808728999 680588181 981480210 832306840 977160268 951921472 960202542 832198552 918135186 735863988 746856465 482971590 634964071 963817610 979688504 280453033 640045854 133123176 228296716 105749440 196024762 154041209 991352908 179879353 815289887 324759604 512759757 378032733 636549047 256223465 859775157 357012034 767746050 186452390 939973496 103109643 675288073 535549408 545559339 283871906 629889601 287703539 608185485 678975215 911288976 582038657 685389617 653892561 903310193 139508743 687650873 103255750 924244974 389190805 750544379 889505708 989898309 48590937 554406307 995058063 995867638 554699973 600996134 25617145 240367580 877453233 877970938 527272043 865356172 764244041 870295756 87068636 505575134 777315498 969128916 287623638 494141771 599343382 944223002 405323126 599149559 291000314 682616550 854819950 970184217 518264379 728195223 587675849 721122414 478322119 739742423 718473517 904663789 748543120 753387835 457261268 748107762 419008198 948302258 338132583 526198084 308211241 596536280 804857213 999319216 576835721 879754984 862484879 875567364 293676568 392131405 29614137 128067418 34981603 196314519 777653367 796904829 781142347 794064947 538453368 595438783 326898419 610983392 499577592 887550113 524224215 829528362 485012821 835323549 532429089 783603720 625250402 627527274 691226273 745254512 367153304 496583178 909636284 952425079 609763300 707061926 997586912 999329371 442122656 489321509 844803027 910545019 459116034 726073455 800445859 995179420 534790268 788062221 787214746 914346827 593547547 647176239 514386658 842232920 492150368 965105774 129089640 471455939 981506426 986455573 127485450 995113056 820317086 990418097 406312414 590650976 848354765 976210109 769303998 973376299 812316917 974296837 575938076 753699455 355978711 728669715 432995986 761045697 586102217 899801736 555589582 843663586 595843783 693921068 86648235 489883533 656463013 819425197 841826835 975565217 587326322 733180549 613882516 884350335 169457047 234924429 716666109 824329654 787653968 895289046 306182919 381651250 991284632 996155279 528305479 780551597 89601985 179712760 520258845 754325631 995272017 997263697 525278065 569160454 139562436 733660907 21943517 926747171 57025811 818347389 427887606 647643047 955353490 974760386 111907158 540725695 302138809 940956275 214836952 515513392 891960715 979145024 797049059 915982533 181313400 495534370 668233784 833968229 785199945 971092037 648547736 785909348 363985548 851168046 145918508 715476766 297676068 745187573 282250175 988850052 567127813 668323976 629903740 893267746 60276045 514658306 325241489 879555714 220271181 493007765 765601028 974066322 477782257 643967321 814571821 959459919 339228150 505829936 349746484 639380793 81389856 561706755 482812541 720517765 179884043 253672740 706272880 789324077 256292787 584636952 341044406 483338822 224757520 403132895 635339824 850205756 181911099 841089022 640523295 740234471 703538790 958272975 847199687 915597763 192087627 517510889 624267499 688328841 789194353 936511560 272126760 445527195 141567214 731814279 806856283 853952589 297380405 472517199 82548236 600113873 914290712 994361706 616827679 643325291 773849612 828835468 274706378 277673754 485606818 486011696 493044896 745745613 605039785 771291303 691995432 951995872 791277939 926019697 938989177 946846475 703615978 989592414 925782172 957137741 524785587 534980932 677780127 833699093 294067884 310410375 322003229 712335010 288650776 538253505 531386534 654055197 292408189 811409933 168779407 411699791 842874826 977739640 825800344 987921738 747306368 905941710 159522045 570729317 178376104 324503391 461136858 963704355 349617685 639399305 486339513 960998536 51323363 910766714 651427453 828266819 680279592 876825440 649864068 670160395 969513572 990467133 478929409 783517931 328288075 345697749 627167757 989709494 496427431 840660132 589335999 671297143 733289147 765574710 8222927 475719052 902606636 930183099 12177935 750582109 610793844 851872197 249032167 598446240 420557937 567022593 122417215 514944678 203540545 563749415 968966784 972816182 451168047 757398123 378020592 638638300 639624714 658375246 193902587 517406845 463325227 641468427 137042338 846415587 261727710 461019375 449962903 705484608 504052058 921216090 327277480 929970984 796971887 830047594 301015716 446882572 170760113 546098169 357929386 730904521 195320219 473774228 932381371 997032445 997778403 998001241 715768819 948146059 249414993 721569010 597670802 930734117 271362166 505583544 375279226 560117389 805974955 889824295 969599992 995051591 585092032 681266225 117493317 717324592 15059017 397821980 66248263 143447181 312755815 606435033 425063169 534884877 934302694 984999722 627980197 733675185 936964375 959070779 232142317 257163967 125627152 443301872 367629924 730480238 763985206 878053045 651033647 883678085 53483818 451826437 563142090 712762591 592064571 976289672 725378794 816555469 526974269 846771055 739775017 971566936 19506490 445936110 772815698 878839417 687501220 936722133 647100766 817522124 257094234 380753215 71565591 238462461 581018235 651578297 286990848 570343322 141235925 581428407 701313486 738543557 14539240 668506784 860428603 985646428 480181481 566141467 965981793 991395405 509777115 736001923 756170420 780182512 444647495 463877173 865455423 870101796 202336284 203022665 383665896 747984776 700375967 842442857 247621600 322198816 288140177 903326671 229963297 708396303 724207747 761286927 572998248 898237308 45219581 805476426 15437267 692428769 133396676 541630484 30426698 695844652 274400209 335133071 656899372 914343260 435521625 931241744 290989658 447113498 82986850 463808959 994069846 998657729 935589239 960825657 3646238 563702020 783930090 921485212 722144596 964546427 653200655 980321661 668572711 723549297 782964370 787070633 121631787 501730748 871473660 950774460 717221733 856572446 757354767 764060220 132911231 248469741 305576265 494386024 975515635 981096306 82685362 541070265 588525907 732398857 881907010 986633607 630615701 953905436 199940128 616057846 844160433 940310387 347938924 747221411 683180355 791845637 528706455 990022058 74506612 625859818 991961201 993583665 483431427 980750360 797418547 950148716 759264567 889744091 286058653 995657731 315782177 603563485 461168980 695992205 327291916 945841516 537595459 899386115 482524215 941894492 409348211 445899741 312669203 574596773 378585327 801992161 713703148 911805187 301061875 995497884 333240350 606993497 899404406 914479738 359818947 796358597 251246428 492217639 912137335 946185599 902986030 917154447 539047070 845953369 380524731 915137885 372336411 870817636 641411907 778630871 862870506 937071427 709068327 728808172 841392700 889228138 997305497 999594691 408409512 468547071 936087742 978812267 681489522 890717723 525858646 579136176 724663994 958774055 176747551 815561098 94829014 656706298 714669961 967892274 755863148 877958715 376017705 717099493 394499190 803343825 811334249 953066206 682705044 900544729 219555415 751225841 874288587 991139463 54621980 743857820 423388702 813954615 985556665 997517327 727306571 899770516 101485419 535745095 11221024 958851729 60231375 327708469 183127900 489128345 556492629 954271408 927085656 962669564 443282042 652208166 330967541 379237954 299680760 712527522 460358137 832600105 967216871 990721549 486280233 493313894 736782024 918197167 253683856 541274480 392087708 734271921 39143978 661529982 427796126 997184547 431208589 580803692 155361013 770959814 488435459 619885632 710350630 934315404 671158776 828207926 212952284 248172523 474295879 734899823 414119112 595478744 872708097 979318950 4307727 857693806 489802610 580913124 566056170 628997884 927929677 992597339 176039283 411520296 136531700 520670733 40096733 532300023 486819881 515010810 82310536 832723018 364254261 790163964 534265113 608520945 135747001 562987701 549158338 994411823 506825234 855488348 913855748 970848330 811634207 931550382 449713124 729211406 253229684 902146008 177802254 588784181 496567864 505733654 356469629 365762770 830375418 900944388 123985701 571257570 247016494 771118383 162047110 688883382 786614531 905316973 714992788 790117904 147640888 573402471 722805112 951233799 798318269 952044925 869329176 884213339 628589267 700638370 416208288 685491687 276129161 847575306 320888161 944305464 758457227 846163903 425671667 566253979 607049532 724188262 285053419 772673890 226707409 707860562 840066739 988395028 239685367 244337117 45717210 326485532 741459292 865432319 125642579 253396726 693943144 926935788 910774895 991657598 547002967 887870180 906654733 941264202 826035557 900245755 544919801 632988740 288541636 570998244 231733264 994684892 769689169 784880526 795095116 888361862 949230251 959389253 523922209 898934765 202380408 685085343 376675055 841863883 338637479 951229308 244074488 321664546 878968481 975992042 188205264 816886320 756533439 910117495 179250024 334513518 254865440 684466080 891287550 949365948 696681003 934744641 816961448 824876440 912524081 940947004 202741320 939740891 59020352 896011736 132994053 422396116 226319396 988945465 652434701 903091840 38035991 266865242 593676229 773958685 238499078 440373790 659408954 901931422 618782759 752319230 182644315 545469160 579355629 599964733 775119841 968069164 832868179 946487405 585679219 907215361 104863257 849885864 179476598 453627450 4581960 624412107 590766182 958997616 504154269 537962872 126486086 675033934 560752021 635090671 652926078 887609008 973670005 980835670 829033957 932564745 239564549 546207079 782286836 803430339 281220393 882945149 231934509 526467656 613998736 639545090 847184131 909576726 105087564 164774006 628591395 835049981 443148635 600651437 384539579 846564613 137604111 520069594 59325429 387918776 992664455 995826763 202417656 381595370 522072396 775149116 660830500 728048152 9270289 853759025 735470626 869978394 295170149 898975353 920650639 997250786 234717819 427397238 956755806 957497374 302368447 714471426 126346774 811908085 121544306 354943401 490621052 551656722 187975568 623195468 431433341 612087180 243688335 843800082 112106285 855051091 864750354 966912282 309131660 398149183 38724074 778502704 686168404 944106080 30073927 96948379 591007390 886949888 810218949 928280042 684412938 877798333 39019581 383587881 70559117 787962325 55832432 613049485 106823904 717150114 302410849 959837520 713256378 860982331 640152917 872957735 351344852 470907934 184211756 788633645 130678196 647346239 646891944 768936189 517786129 671692186 443598896 809436748 570309507 985292818 795048006 809325563 974809941 981247676 9661069 444779202 961682666 982711528 306343459 679623462 433970964 456083422 5632849 176676243 3321706 475274412 554857797 784702045 411670033 968532900 113092382 198568725 118125815 813376516 540549322 812794424 34237739 663368005 418531506 865211506 995207129 998177284 729943148 949737879 205728514 799996917 803283107 998399263 836002676 851195943 742049516 884223300 151844510 530408213 203643265 420497041 110722548 645160999 725138459 809565534 570333650 664068902 430990966 841270908 660531020 921877806 117118226 495765509 487544727 616391847 65811364 866635486 115251348 614420998 877821644 909739383 150997786 742021357 635803534 723901754 55964065 446884426 928221229 944927101 640201993 789910146 422575510 565450752 156950991 457065288 683286614 945971641 55602460 836058878 981242362 992987511 456137659 685847276 225257631 449829959 157144849 365840862 777563336 930254720 461541897 553476462 725656325 933912088 822441870 851779994 987355118 999710714 963344031 987347367 221906480 228371037 721437183 770653101 56893070 920365760 214086539 746272968 157800669 492979699 998560537 999112886 778424124 938131169 846715703 862093306 797399191 881478913 194285268 270578180 685989529 813655876 336164730 839544127 247192810 420958283 254370720 313481040 296437315 562070194 622173985 968021403 417191575 614695554 146806750 739135339 391049411 572795566 801263850 931799076 798114916 947816824 687789410 806970924 56827089 88012297 709385790 765725880 817164983 867576353 246491391 907395536 851016462 875921807 339528084 906370550 475014989 728412977 104060825 865687094 360692795 573397313 968352703 994684999 969280084 974312578 840964360 891030600 219106593 276850763 484268676 903734419 142401332 637251614 891423216 924054282 924905606 983917345 520870474 754256503 268713789 438090070 510743219 560377882 999444805 999810270 15203955 917681788 534077145 792210317 86987426 246823561 569405396 625836656 37788017 836449334 750935628 760893901 432399449 621608183 677568495 874080883 759231898 993684390 236965149 562396998 710941435 998077954 536772947 878495382 363124073 784040610 458741830 642989021 448591601 616168283 392857415 513363739 415000938 525006647 244725363 450250795 537839533 990771589 914292003 950524082 681493324 998668810 607140587 947387533 106248846 835750955 917271007 963169771 341030359 589685732 985420193 992374228 456196064 490629266 179827356 278846323 315139912 708339374 81069815 347663703 341552918 745663642 365911937 855072518 809596499 931459044 725952900 866617124 963337795 998128146 34613216 316371435 160149999 685605118 488867469 885456220 39380720 175013060 408720303 999056569 47303057 829316933 334404871 979131548 225146373 755734346 245252564 510451621 109361115 976318076 409209409 548290616 274679193 993397889 781511547 979789057 847417188 855436889 832494243 903908988 965157167 998742528 96584227 600505153 519834425 747167978 357290435 883282880 352000561 352208327 551146239 909500479 482285454 729340588 323760071 753223753 432565748 591257578 306371110 975744643 182458746 950901035 91891104 860550094 543676444 773751665 348009881 498868126 304086525 315124221 139537598 340815643 91498398 314524960 830295804 883756909 94099653 638947680 987894827 992089673 824759460 993445290 851606755 919035260 394257034 643240444 931680084 997717582 357465036 580229190 340335671 895806210 881748572 979668057 933182657 948236236 707216471 766349338 726441532 729318569 435297139 654910679 329011417 840008015 643213892 847463330 931865636 946713516 15116542 930266288 60076561 100055653 49440668 587900598 738084820 974132822 528833944 595990892 953402638 984476839 409885132 745169144 557797822 916805239 527483945 790124268 849859154 853265671 236189467 412411717 43096008 682809064 845834990 888709386 927073240 954117949 60594051 760962686 629233670 808577631 130575914 694152128 917515708 979295507 136060197 359493086 580405122 866662004 162410140 998888467 916190233 968404597 210313223 295436617 559620824 559653736 908877016 988242117 367504863 531090379 994952745 999437927 111154122 482620437 281169581 748598968 68145797 360167575 363538426 373657237 30228626 827857701 527600843 760119068 894501702 936307509 463805002 809741428 186082634 681355788 951383681 968824401 137329387 336280885 667923935 719413904 178429436 449993433 888887626 976056181 152573930 625939010 294273658 587023207 393488482 636999811 665152496 788541235 546539944 784559747 601867685 714044547 221924292 963124187 287717218 612528843 155123770 449065477 754654528 885100996 47918471 419020915 14804399 723382140 671492655 883049522 534978187 999594171 220381870 680179739 650319020 807688951 487615238 675079744 206475256 460134296 467575343 743990149 629895876 782796873 463409642 833392499 136088304 403542650 376677016 387134782 594588853 820957047 65656240 459237499 665670933 884263119 465157726 953977651 461426446 657936565 450139475 920868385 615202180 668148454 682759136 895804214 913762657 975568690 414364468 608542260 847443018 941568681 226135565 342075943 889977182 958415469 730992414 825106764 256003224 441150119 466282279 802897778 576739964 945232637 664240618 792185177 283422603 442567961 429637108 598429499 465135026 905669384 162844689 511553747 344265333 772701923 748672462 844389239 311107324 791656249 385375302 646604229 464790788 711262841 774526605 814318436 344959367 414390180 318612773 685141965 437099208 626981560 844242356 881216100 601907466 937464359 559416020 820415223 255124251 630945942 659819475 820493658 77227412 749785573 433287004 996358946 85441469 493568282 156282512 915469899 420790482 954057227 284240344 285698042 147738278 275165012 42409915 446859130 226691907 802231679 263878042 765127369 716542796 938325632 30753560 922403389 532789045 620755887 577487580 737212958 256987590 775661613 303066849 554803575 854221575 861013269 126014310 471023547 107678797 178144253 187880275 351558863 714659735 997241874 75849066 593899059 891721770 908518139 483848319 909881652 836956390 839733826 985199720 997029188 10669710 935108777 595032767 710249901 315655553 971180482 682690347 933867665 460481490 664807908 970758862 988840429 771259044 983000977 124121722 449288933 136174742 887587314 4380927 809960431 900895561 920002506 276990092 744432702 423354590 721487223 987313367 993999727 161753992 365698547 537090816 946611059 579395205 807952448 268154167 657801156 456221463 474289203 739715415 948921154 230404368 906532474 980977974 989804632 940973874 984969069 191791817 979874682 829500749 841040931 439567624 825095094 775421699 990126553 582836332 780651495 577097284 720612115 979365151 994174338 659977354 773473021 159754458 342410063 411663025 656945466 797607034 981726810 300743566 622721539 326941887 521727780 443981079 992496327 288005690 390029439 337183656 843340056 786305132 900258246 960845970 969868395 702740407 734376465 750271868 843830297 961174018 963813051 752426201 963939868 30113491 795955594 279188254 785288075 884708934 903077081 175341227 481206371 489665592 788495804 852259950 886457730 659186621 796620731 620918059 716813660 666686241 756039734 978738467 987467333 296577713 605389149 963052827 983635045 93809974 501995056 547849430 820392641 702959079 922321225 852858551 875374826 586865241 656708496 415236936 569676780 743177256 943139281 400027185 983962728 508564395 597857177 157226706 717570197 39785619 476873403 278585101 620707407 508054465 779032944 337950525 414953032 699370769 800086084 720835399 823258388 340269946 558809109 491978588 519838683 967474027 974902723 835044525 836772569 755152921 997502513 143380050 252090805 890409928 973987665 492033057 898094079 837152164 974411957 541453139 773296450 583088605 688379212 51287004 480070103 223567229 894516703 925145975 946387606 385278607 842727182 89740447 345931149 792118884 945321392 885747768 943170642 165886698 406601741 289416346 417210107 477203451 806495307 694861515 843908654 884927332 966404783 595175070 711664840 304076622 573076608 331067496 494929754 826393710 975560837 653591962 874494929 509235250 846209419 707970801 745499330 617963179 860010885 935457891 998800340 800742794 809319412 969056090 970464450 417470398 549564499 142989552 299182821 199573140 751595706 493771746 840580877 390853414 475283297 796954504 809339674 377564818 400010088 576411603 861666716 772414755 920777794 526371957 843221339 903194594 922448294 361906864 771294773 330799979 416660321 365825808 895578732 200994263 435336751 219735941 593302315 772987768 857981313 908415546 986304487 425133453 584386440 308765154 874414779 999550698 999626981 212693830 663541421 653162790 817977584 288992592 780139685 113988528 721101714 619641193 678217575 223625524 415281708 528282283 730759712 495881432 652588963 629043322 638106288 957150736 969362689 768975619 927762050 489003679 908725543 383069721 797179795 809833470 913224525 175518233 433897825 178300475 639298946 576692656 667801487 996661775 999636892 359110593 453972452 13212207 30420762 411812859 808768372 426460819 966754206 381505365 680276541 131398938 166259339 100688678 791132066 973982458 974571034 962552776 978692525 977629409 997251910 698904019 833078611 528556328 830391419 68928520 76241160 78318745 737425239 413812002 833018898 825960070 877179470 621788383 720042985 933352079 983542086 112021706 238251410 291557221 704635373 401653485 746926338 359695421 798190986 512880470 966237310 653098778 754954858 873050125 990110500 259884531 283781986 482780377 548810633 369724847 431515531 205903953 395220492 517424973 854006360 26571668 157840149 668131889 932847042 221575214 945633253 624001504 655429767 940330899 963734235 73258871 726297033 697980605 959953078 223838873 305001888 897513995 910205285 78725437 489984852 740155612 854397044 865500301 969601805 367885818 676287073 284434701 579856443 513618163 516830444 569798356 969536983 568069609 788063136 731025896 866678324 9773393 665543111 582737695 877771848 763937768 840584738 843635974 978527279 714668626 753237435 277137060 883275654 122104502 257481403 508365849 644537517 41353781 364102803 573458508 686816328 578929812 892359165 729754269 960739699 993748672 997129630 19184840 227785913 848089492 933624117 840271487 938128808 342124129 713834310 777394402 787791710 813965008 830032843 317211349 895785050 902972943 939383074 701627139 922763833 663588364 898387291 536532137 701702512 973530329 974885290 980601843 998468056 989795101 993124606 281862274 928497139 861201664 901043189 358961371 744880514 22145986 265493862 267587873 381319887 397740002 398790219 672107872 921711340 382181556 614258304 142013081 509831259 891480942 997924449 203061267 344883729 754046329 960455603 744462076 932456035 23810755 319175805 867959717 941686450 781967359 848830592 587339818 816892024 867394374 904500450 9596207 194540169 694069680 829453570 209530018 298953663 971018084 994250337 165918109 297018142 967202926 979335539 853236311 861521255 11910072 572113266 908669872 961314703 936949129 969277852 102688177 252910935 971851518 998703945 482771181 829264288 680958327 872017929 855930416 912890225 916663220 919671413 691321855 943395482 512418837 673249298 683712712 895777198 755802098 795248886 2807867 348596336 472167329 748893112 432232367 527357194 8670174 295845580 814249309 880444597 695283540 967017778 78495808 415998475 292441917 831070305 393883128 607538173 323251958 429235128 544277715 757476930 505607614 697300216 226264071 670556747 840242079 884682762 118028775 588896128 271204482 593547151 440050012 656400217 688267775 957862886 789669546 904226842 240609651 845588503 522292121 731488755 832923468 846491173 801656908 836538920 230483157 389061875 52477632 70620951 473256904 994898333 420413538 595859295 709050816 858160687 887467629 917212481 636986088 840347029 147959051 365889395 212389276 711419807 76151279 576551152 381862346 777496795 566954200 712283610 595619649 828455743 684684145 991234853 988234656 989558376 14837558 979703454 207205380 223915104 1997580 968725210 599610939 767336906 866048503 972107260 150022755 815280663 952615317 974413375 239869325 376942141 82902742 680179881 869749466 874470890 252511774 601949694 433962126 605942046 712396164 749484152 273893624 656427932 314828521 699148001 412792854 607436077 675963706 896240818 302902734 612254113 352620096 787683980 437359936 677959506 75777541 413449774 937678618 951095114 123202377 698670749 625968039 918307722 170455013 863461566 549252911 662844804 686118754 700240326 377555085 443795099 687385690 968989059 971171791 994293535 787003835 866285641 339298348 802460858 679810450 738537939 818367884 842396563 522168602 750910164 558806508 827257049 162670595 167892776 884201874 991874004 138254003 218669107 617373512 962756919 109509412 653118910 373578033 651566632 500120449 503734199 987957943 997102169 352363556 987118990 263265302 299821874 252662034 709476664 244535388 756708551 328294386 796301628 964533182 996281440 804023389 938017467 428280116 556658212 3734631 830355570 667505117 768434796 14887867 978483625 65205025 768911629 908700802 994532777 498821918 538779919 83664073 678301886 199317463 772520480 590587167 989246403 931408020 942296018 971708049 989866625 14434007 246403663 136294895 187239922 422015987 826794302 59216448 104792840 42776274 790502707 856286557 925290733 292364403 804762808 896267762 915081703 837306644 885809016 36081728 775048172 106283311 959926051 161320012 384623531 747126332 789942712 102454810 792547813 718569419 927153532 749866157 755613495 915134002 983227538 426082384 685824243 876013467 928047682 697461783 817338196 595946668 822061069 707101109 717631252 221677398 537916989 443909607 701025656 875216290 972335637 302500080 712173045 513016329 617589876 636727934 678393707 873387292 907584500 961812807 992039885 699229508 808114201 948972243 996901248 957364419 989517119 16601712 793311819 287573949 717102185 200452306 531483399 114473614 694060294 697182392 802531415 339716314 438384257 291769325 947338102 150246355 186969246 541493444 987797262 790859782 932305529 94588997 600776859 54197258 388487751 446592727 582934701 62846417 218300948 983825684 994211446 281264334 983721914 511899208 947654929 521479191 581824483 122916773 392960157 335837540 781788197 695972460 778468481 456550576 798913204 594798967 896487029 889364655 925979617 919971910 938081025 624516337 920245505 427791595 852719630 988224309 997661713 82043822 562556779 664572723 970521296 696836956 815180565 706900867 999613209 819754188 851342143 857391952 987668214 63119600 586463628 901131373 917085888 605592809 890968153 2895524 754206310 660399311 837907198 369263128 945477601 848072738 989024086 189029176 350976677 896619705 939316719 878974929 972136394 606028372 836611480 241238648 529053073 58748407 180038303 398461675 666008187 734154072 734629102 737437180 880640888 845877611 897983915 223030719 510910306 344609161 998802316 135414019 769541749 118040081 929988120 575143016 833179791 289742592 547446249 529511218 824279332 423765580 751483025 179746039 914677249 419952168 632659219 98656327 257164237 99467143 847855233 749934499 765170593 168628668 866732013 314085532 818359319 948359753 967563675 114225402 926979015 596771271 884032718 799776912 939654102 187535552 457475369 208376063 658576256 864435152 969814715 125831395 909397712 967427671 974755411 697303640 727010257 906831693 925159723 121527737 233268904 46710271 734458978 769930682 793687723 670495351 885082229 490529127 854653215 668307644 772816648 277660415 293502853 900663760 956022845 899721280 933741854 209087180 834231709 573940248 826278473 205518814 563268845 823441739 986453494 811281081 859147347 484063448 534143581 961532138 975361774 955299762 957344060 651601727 680010357 41153164 661296733 537514244 890161331 713584341 728698731 307907953 813900299 299191139 382404447 858922528 976752744 963656138 963891371 53848359 336450407 419511316 792716180 5104194 15210282 920532495 923451055 853665843 931426733 428419895 624145645 83603208 137634182 676974867 862074734 716351283 912984717 953454487 973930222 730844530 779543054 351753157 419940442 66582247 925386231 620116180 971189117 159306194 221341121 40422172 47622170 660354581 698750669 105932276 492886897 908900066 978968827 457704359 577126078 873292976 986561005 557605482 848331571 720972009 831354219 196795437 710561682 804775238 920181412 984373569 989994606 676277607 694885664 143405511 302498141 281433650 784720661 313504616 961703969 158169386 191100856 327708881 885662524 483977803 977943140 752092976 887493720 264813161 823564917 142659981 944883411 753044030 804800149 750991037 832079381 921169786 960102200 18838215 733713302 665550988 950674514 485628862 529591070 750698527 845734608 526509946 801426754 196146854 303022774 369581695 735907681 417244152 782808069 355213596 497349686 551237903 678483648 528625916 778234692 799141230 844625030 414431619 581711788 768042805 973164820 993846846 996499326 939652089 992570274 830740085 910378776 436307952 842601282 932276240 946843300 137201879 980392163 128192165 410689457 6530255 583120509 109355104 972452910 732663867 967815963 151702561 758202354 746085836 748531352 563480102 732189304 884587543 957266994 303218555 792732062 508856114 739955200 261939710 392663751 623395722 921142241 447045907 701590992 651159352 820848500 6283946 359996015 887022251 991677947 427320056 962489431 573415051 703460165 231073210 580627362 812893460 920157405 424398228 509239582 822179733 962325425 925240892 946572471 692175694 968319685 715311406 992214429 760134600 809030181 861233421 962502616 235973221 914007414 782815491 847843542 216897455 413307776 83706603 948608985 630117722 732776736 96980886 310021285 353901389 752524356 49120908 706354631 460403604 545949411 584717536 621326377 788247779 864070967 588121107 732266041 407185050 868896907 429780496 631114054 773848401 870780009 492424586 548756501 52997129 987124306 814049278 979733041 346417332 663030247 647403571 886706472 380392385 751363627 716864520 976486788 607688699 891534402 935316743 939931242 124726451 934267494 588444290 684997986 85552968 631245848 905998506 998918488 432570735 986921339 739557367 838783214 927612593 977629970 14211405 615513403 833251729 955302883 690729525 799660463 921163019 925081297 173274868 441076033 481192040 697991098 54134150 250718676 303586783 331975000 677395133 887402060 640677038 689146117 867143451 974743463 8783857 829076178 252745811 730296260 243340946 937217975 393371735 629172298 517640993 932207898 584417917 704621256 102438698 412275047 875164447 943780148 992865237 994248985 425509299 736235069 265192564 547483840 775598828 829449061 248021404 626215983 827433200 872859886 579201441 908639221 564955628 742201424 143329477 356812542 990537189 990712122 130812728 919339677 60312664 149204470 419671850 879751112 831756514 875661557 850393878 924123539 166326189 647852326 856830430 895195210 93072860 661982703 448231113 755329818 52024637 283156484 23380051 939380140 525604567 638736041 40179981 382128009 868241199 886002529 854426349 940017764 38682433 85160087 723213389 805974192 219959350 381496893 482241255 880350439 2511311 386066648 682554857 824951599 358867840 470172444 487025273 733013121 795379212 871917108 989368522 991011831 559515447 978001541 760381667 834464779 552588738 964849331 363805886 630338892 424232334 795823566 634646587 929688635 724846993 750086031 888757303 898771444 306365127 798204820 913785380 959425658 617539512 911972497 836317860 960733912 11864648 454813614 934028776 993036003 468034911 845250742 862820176 951353717 115832887 628019711 111708679 484798091 865452795 949470416 327061861 899688600 897762228 960090150 257082283 385316387 355017297 364026775 455925566 734115386 379128543 808574446 414556299 730973029 671116406 763604128 867273479 942237952 656098533 752385061 552759714 714061582 31389619 240207588 903798246 985823337 111353904 786846125 438257813 545776187 756166214 877604080 641926194 905682076 163779128 357187523 561512357 677053681 837372837 890171652 444171314 763204968 197844286 546384798 722122118 772122035 839976434 900301878 739953417 929260063 700645891 979716165 148338306 328975328 723980091 930959329 373080657 582564100 799457526 966768571 80924972 686669750 966602558 974537355 617411748 902453317 456965443 752257322 778391022 917107688 371116085 703162025 962775930 991011898 254674798 805205252 32188058 362107533 747507799 949799660 292386722 773672222 398283115 760114980 846103332 948549843 141214657 228768809 563046834 665671009 390135570 592351253 83987401 222721852 22237004 743821274 216440325 260034345 605190311 926595932 460099284 574370509 326782260 611064739 567535746 820197999 980149444 980792962 730324110 976913401 436853760 652414096 334146099 416276745 582744131 677437046 729960369 848066298 718744434 818426799 156167778 161180224 767969235 971888788 17436761 779921311 143155438 432678422 353529529 463719313 576240795 912912179 15435409 428495465 237880534 609245937 479784696 991058903 259229983 641832282 80607131 96295076 504734341 703852987 816422721 945058701 478708403 571855658 891447940 925834676 44545186 990751426 601272999 942730985 96972127 666770259 475194071 998989372 880893138 884861088 518844833 585337769 497518836 904713389 121088196 869708850 362319813 485984450 798072710 926947786 222015059 944005011 977033379 983766695 711306032 782389706 865253241 915629759 107231614 375135704 474217933 789668126 477173596 638374079 748558608 944718748 462705186 964300003 933524006 947495864 691273012 845438210 351729467 784239308 545168926 889025815 461273279 948696195 813928142 956305500 652610046 770914708 637573253 722716964 665939361 742698058 998231895 998418349 251446061 898130945 120457700 522400654 524525183 684648437 294935703 446683041 392003525 541228252 281066550 916777968 434385221 986008911 757647119 810145126 196790141 298638184 971460439 993743146 538157861 752995609 330226882 711005017 88979813 332462777 228036996 261986723 113904914 737812282 36293290 479891385 778073321 974104579 300177837 900173942 989843305 994865445 499100101 784462045 991565511 996276103 663976329 926841463 564178995 730985456 504433724 514349239 111652417 662260672 950312256 950599852 307481971 714469537 624321327 783709263 150841133 771802028 40172901 530919451 894743780 908582815 98608680 859857917 290896357 353659909 132600147 172218279 883207739 974115965 56628437 951590967 454630726 796714927 205032958 873668674 451615187 927459191 700554285 732446006 822644754 937310889 799198120 860222424 628139006 812361883 841631875 852575731 156642498 793958533 164536666 678155103 7361240 175692611 998805266 999868843 488334732 671564972 59731660 921971722 924896899 932773630 4370563 533402699 683543644 962714818 337745385 647702577 713680127 804619271 778255088 852285571 417236794 817138318 820334528 937798970 962353637 985870827 36002083 230232855 565337041 684067529 814542149 928671229 357820124 534374768 875198945 932747324 136784526 571165734 995636107 997222540 72725217 924391689 365401776 873898806 995094129 999202883 982452307 998582128 144392059 864844616 487664319 962499556 41387667 352982511 203318407 755546646 841355523 919527373 131783173 483489308 224307392 558376334 267238611 713269142 309267533 750291132 255172863 596826715 82688229 647360519 402421566 920285519 560167024 674889567 242072349 246175747 310616667 726625968 839612601 867413757 401548292 556327672 977709464 981175991 124716679 337720210 806079355 834353285 438565160 710262586 312362917 394053995 222407986 825933297 178154340 839284902 318368755 987744033 93343190 93871845 720750611 773806057 174694322 306951049 461384216 880818306 11770170 879182100 287987797 740999878 570860494 645463255 989630322 992982283 389611802 465253619 316577607 870851879 216607743 408371608 114517967 363496113 970257964 996884604 894699826 951391323 501169401 603873168 231242956 907262385 815537165 895834768 392330672 878048669 260599384 672274186 217812624 872029035 783761932 924020853 791058323 983177758 601967782 621284975 994899253 999390842 597482260 767342754 725938034 740506260 569722127 783214463 62989567 543402671 705280341 794003867 665947488 916053669 224197560 635303174 147679084 809859400 346903491 851756626 720570208 833617060 70959306 700733340 446931016 590859132 890985768 952753435 611794613 747613744 431674396 894500173 664608881 878339269 982959812 994856014 410038953 575347506 339408732 932357708 713561471 823176156 413107416 862726672 193650066 238384118 813093577 972326463 861252794 969281276 478482546 967419048 692538022 902995062 695857474 706391131 307777182 731463420 391655700 646282340 992314039 996140969 703992534 774304474 853083281 970541042 60790771 902332427 435425930 714008355 21470881 320723790 139827311 310031976 289991608 644638844 445263306 730276108 183799009 192448294 791447978 809419594 544206796 758703486 258492375 427512587 436452937 501607441 205677044 578080194 544589018 600859870 917097949 934651854 114128706 889476079 195957773 804510125 470822650 516767062 752517720 963301390 753726059 946565600 263527028 931290549 205585902 694151541 928716661 967005336 406539238 447139434 893989950 999562624 21057890 480869482 549324002 934472247 248041707 457373880 762183171 914008027 798158194 843928126 292140651 481400739 901996832 964094772 333533802 418432625 996746624 997806246 354937674 616290865 63275123 904373159 313488740 849283004 618093888 765679086 103612498 134886618 316864822 384528262 848063897 929907186 397140790 509354981 604964346 761491809 541101352 658306353 735442112 898469248 658203911 671219838 65630464 801245199 659820971 721957729 443280562 983451437 295437656 624957595 30486841 414680619 316580308 337621910 69535185 459468706 376365488 827927342 473924739 582476985 65691746 269085423 537019350 889857342 491266843 906420370 608402984 747862835 116242422 952778673 115014511 236273991 682012187 857503353 256828155 257082984 563706305 932787015 191714052 814784784 662855908 719819621 120966919 674616445 474846107 911773891 608791561 649770473 830007839 947520507 543768599 595317412 715405428 847118111 109901957 577242586 870021078 934116047 286553508 780060797 475640777 914949349 715996822 876960537 830370866 971420614 612571250 924018428 4150399 339268885 407270762 859143478 29871530 325728589 25734804 584310826 883511738 927715296 500092094 575225873 488656226 962695904 404344522 859169995 86848349 940795068 185851811 946206622 393380567 820122923 370697062 831278367 393206426 895393021 911346354 955983435 319370963 845117103 717875188 919927934 17087203 462617250 948722062 952758739 360582264 543462601 769786684 802328080 337510829 921430923 937882410 943891915 862420715 927700016 722554848 813803827 672423111 808690401 173361269 598465766 771427222 873147699 941503797 984180839 260168288 626265877 462213436 577961944 517250691 930059787 446614740 952493035 79967396 888667560 795537638 949188741 608753777 801420809 729184530 805389183 898655723 955983343 898891819 992977442 799482813 884985956 347314656 933527877 982036922 988650539 976867337 997399223 210606349 212370086 749569140 985737303 331682289 922334435 170119176 330908042 445508860 508439040 538979585 662933301 243318997 585856325 911382944 926891608 879088000 958837388 17267406 359700266 564376111 716957273 341279555 867640928 415311585 920467892 228501579 953397140 371525893 725875181 430328264 486941382 150895873 873401902 661429223 709083085 64643046 833894820 515909645 589043674 639983192 841525199 217235605 816112596 107234823 921743330 379307534 581225306 959221779 969572031 397905128 787982650 117534019 631599127 610563564 914011064 104417226 537482174 649860842 847534409 849683122 969582524 404970068 661286502 620003268 837554438 634981692 767604315 576992666 580779848 260589723 983943052 725781756 900097748 570627349 887078334 396168574 975890029 372983258 460275216 631049994 974918286 956129226 987389509 204430783 562895643 127382928 671932893 612779879 976811887 354368910 748965381 260361287 347500081 13445003 336096197 923274709 930883727 942150962 981717484 489415917 935000107 187386693 764692362 62144493 742100916 144413511 935025260 479519183 958221029 231223701 475117338 901956953 933860757 501788105 689059919 299096169 613976918 566958582 706414786 54062331 521456054 21062687 695770904 780445421 902493046 836069770 984518798 155329685 893470155 885034448 967090745 928941218 943448289 595285913 610774304 598755007 673619524 371724055 529607427 732689569 981321070 421614845 947504305 776439750 789783947 404902454 600157101 878776899 980873765 156580473 954310583 663629595 696573364 611310074 707869201 872011999 881049269 250990638 901725950 552344202 780589495 302109507 880998089 667404210 828987143 194053805 629941571 758596369 803210974 688901187 782114502 996984159 998019742 534748155 696984949 670988741 679051900 767404983 944886776 798700741 854806094 715764446 786035364 580627314 849616302 76078186 921538280 510385145 855203003 419091171 847985629 10275769 705670655 254518528 782174657 722857668 736157716 779592378 825881695 535533661 921505947 529023965 798810306 508803474 653674389 696812461 901457611 900518584 929084892 25379272 126708745 529690760 561837635 927361154 951066493 933906121 970411048 800631908 969562003 491485046 571790922 613478153 678648344 545755678 656489422 418959415 508719129 285267976 878190656 606471710 803760052 477277606 799640127 425364348 529674719 702236219 801050412 982032445 997749092 321791061 947209276 986850296 992275561 836812237 861381224 300461496 505951814 249659225 605307049 342237441 503539029 819709178 897205182 298264612 569294330 176470253 236748029 933801191 944218167 809856463 949512342 176742331 649887901 294808788 768135491 78469140 870479124 646940386 822768554 234996000 876090405 716742001 963655302 873154252 919214676 598450087 890668304 825751403 966181981 20842374 425693562 712411316 886812395 45262952 927321725 312559467 970300234 149031643 457581884 654667448 737452723 829482374 942728636 894664268 941161009 729215203 898894088 988391249 988835821 665731467 889203976 744366285 911494383 230037469 484940477 755753358 760140892 61122379 999120344 482087759 654508094 127730682 671352395 901679834 973061956 399527888 592854208 990101584 991708982 434030467 439904680 374244528 477755173 270157645 598393472 497351744 850180185 657700382 823915458 195445960 492716712 158087041 735956904 193605322 738333404 594760448 740951124 646664830 935848433 210342721 337362379 323706533 821863214 383240688 765979527 761910021 831520908 165194053 640423876 704920790 796453736 599433238 904194363 796534789 994350559 523069104 987135055 885216927 915540040 117393827 836754689 425806547 770343808 981756353 985414196 908057581 933481876 642383002 936987460 806735158 984220220 852068177 921906193 840486464 882776169 554642407 983036563 299963882 738066041 548729959 865747985 120461626 276215788 629554489 769866796 713980680 988778987 936188187 971898773 429116833 938858402 447698299 464085302 666456459 933551242 910075920 981859639 545827104 925387596 494894458 656157218 916633970 916777584 286022376 633383543 157635258 774085226 731418023 985810795 974937767 996990159 644720570 985184608 130231133 991497522 282166688 923270963 844233586 957090989 203463550 372726773 230550374 399732393 779745459 992960978 165593998 762548495 526277065 831177902 27984040 376187057 134121449 637058799 786301029 919796814 360102076 422247786 760803433 911731407 150463278 358835656 621776988 865577779 578793475 803975123 131254862 783306543 70473765 781655343 247624505 591639383 38235768 489983568 765641993 781994332 67522384 645395403 305084001 647470225 976238058 986676826 273653080 634992432 955601613 963557508 91447758 588853022 220795033 563451282 888618286 986417651 353687410 841587629 963211858 977065825 566623432 674370551 243541140 537471223 70533432 382964520 875610992 885587021 944453833 974726375 137529279 791440301 11354800 143869566 477380770 637833712 538742808 650550985 692213693 730556073 657240779 818484697 287243485 508963810 177842691 604908947 796283757 980683178 402555099 678227501 454022774 890751374 998010846 998239419 963166969 974264017 514948789 881610089 198740826 559481944 372811580 869848379 560539592 810700179 104160817 763481330 404560658 736790237 902008668 993555852 673042993 843278993 861131111 918017339 165082519 543341138 727881606 850047820 585625539 626257894 668008922 854568606 722980804 766497045 745575162 775506614 94607416 302423870 953939445 958891700 699681253 919197157 54557964 566035918 65274850 795145684 101660182 802381367 151766847 412318664 582732764 786237470 174650160 268325325 117776868 207184257 299074920 606902506 120022891 427650584 480237383 612981904 202822479 950929055 706742904 929482448 835661249 906537494 644508250 974791880 135272006 628469788 520482791 845979228 215942932 365645941 584380322 655374256 105139189 191534997 860737910 989367333 143936927 346159603 541093075 878765718 128001297 223151857 299156759 738316678 376173552 932500999 441442916 616357073 180529467 882884720 290495950 727388446 851228458 976786220 660115522 830488335 550055915 930563092 50592938 824920348 866312162 951316917 643753299 957089259 535836186 771022097 853766652 927796019 200319641 302337611 555499738 576197756 270985363 344788750 734134569 881204452 129270448 131583913 266626440 500021576 267101427 356833722 581100679 606766835 640115986 956191227 370368078 771601562 521371887 878202941 178787157 558838614 904324379 922901634 322375738 669883155 276057223 283018703 691778372 752757590 384285853 419867715 453040276 962700276 456120020 975978179 988833331 993576756 883524476 886576534 107255586 216042039 588306403 968731888 552984201 573414723 655875578 939194732 713688841 842485011 371357077 862051748 116086845 998767573 682527590 710524112 868223310 951261415 760365932 811397904 950298185 960931795 665963461 718270816 242483353 386836456 283227185 617791611 769576763 796037236 811985902 955802882 750139793 960353338 19721816 856614298 855446733 896476307 857328550 859062505 817993136 892450422 492676143 842677871 289201095 966349283 260858061 852454083 489956919 951049126 337895248 679325781 491532927 815544143 978665747 978881984 480912548 656998035 876209120 968325453 421839460 595142240 867311503 876241251 540745686 879586733 550464910 635933695 917719769 957875178 759823519 885733669 781358781 952539608 143716146 591794413 685854512 986734814 46919117 133212870 392496287 920683386 91041243 696370074 277513205 658397073 275564800 704145315 731144776 933077813 387156791 409379659 540351689 799576088 568822020 606500457 346860408 352787530 679639417 981615625 5757543 326913741 368452125 624110301 146766001 733092559 195777441 642136064 25153235 616644082 191234471 944522739 243143079 488014723 898117114 943966810 746218496 866763664 205480678 735565892 625757448 792551739 572014032 771734213 545354284 649233389 972528549 999767568 806329823 851696963 56374233 693577635 148072888 479112280 127286923 208621653 715451328 769862933 291699759 605126609 330357549 352192499 234142668 343900736 905364255 975493663 350973586 579042968 301603089 673430955 342859009 739641581 908309647 994462824 89076554 718388986 167927167 600649590 69329429 365694219 915635501 996026303 657925055 722112611 654759110 671570038 904414492 984733603 281443435 943358446 900447358 936049186 741837594 831396264 94979419 243635944 56885384 727722399 878811150 941454226 460681154 543170996 880360006 880629575 759337193 926227457 322842170 668720496 318336350 513722633 350054098 742156078 667215651 817203344 550225684 885101944 344588450 791121396 647192177 962880099 958105485 965447679 492109977 943258178 393060302 458304478 790255480 916906556 226735675 294745055 325864674 859430236 62862376 478739037 899955911 922002360 134311813 886158517 74533814 634028366 417659176 928826427 407772313 650215489 917608040 933808399 622992465 658934042 971056911 985942826 510756227 910133341 233807780 958290764 89063804 116027776 948106616 984514558 397516377 871723580 592332834 952473379 113871135 997495747 166610170 941969111 216653646 536948271 873232089 989982958 425558332 648431062 989202627 997788867 115171586 347645657 624648230 897037052 726686379 845923780 685074848 916175396 67623242 895269438 302475091 710330211 579149024 846156171 1465149 808576913 268544396 628317801 506396559 939979422 294244389 585603995 336514164 949463537 464953053 884497353 538955128 879268509 531903483 622453916 707016353 738293771 812037683 960097847 698396647 936976771 320043629 503100287 495961244 922293124 948120831 967845761 184843887 846156058 683528342 859811787 783533791 991547593 521617046 711477029 806507441 984492935 908671677 987276833 957906127 976335824 111485759 452550249 901391764 951384301 583120756 893456904 72320321 895014267 549257729 919818352 582879644 810095927 242615696 525674830 351465109 508834915 273618984 648944221 566066358 766279155 855033596 952238898 646811599 909076164 286116520 298556946 913479593 955121441 434519335 436866972 440225448 737879162 299815568 426962906 31979566 523903650 449357954 987510583 467370995 515759122 300454224 715482607 135216812 963912884 276241193 400833095 960280189 986113665 874296226 912880019 351320252 464910745 446333091 703189349 995661529 998830447 606857648 831449990 99048080 607263689 423647013 448598013 28484285 729275048 828794046 832059770 74925141 173288600 307380328 372606916 338676788 458445078 231453171 801997080 761108668 883537482 841657465 945187659 991388134 991977129 996676614 996916722 470640770 809021469 21546711 385293113 935353029 963177370 450372583 913861140 260800920 450636357 377129636 456658003 747992908 765692625 176627199 712089580 423585286 969769813 130512392 315826594 69009018 396893967 730807337 887341110 506666703 725656939 751098924 958801125 139638762 838599084 825743329 869464224 325630511 614128330 184372143 540224021 947547860 965113123 106155757 725510206 678659908 790985072 143815064 821570765 636498610 744683491 849668546 920515345 806570704 943369698 674930764 830498624 188714243 226528428 796898157 816129112 640092222 775628204 861193888 957033221 820822681 930841889 808038306 916580344 964910283 976812949 181397074 322766767 566958008 773808651 320691619 343983324 149682069 964606266 953640662 991265122 546263322 968364343 419719510 681766133 433623967 643530974 371342256 654338006 870161522 902956878 859351519 879420114 93948499 907544686 527359402 776718638 675528234 933380992 472033312 652801202 917471287 939279643 114244337 190124173 777638837 841924232 501856065 689181779 628188447 727113639 91716707 633659333 246403713 618888581 897133810 991848418 869442961 953342133 916455152 987745239 85200497 912992833 76233552 953208105 936048874 954605336 755749829 896395282 155676595 982529970 879607458 940413955 48337717 208875500 584307906 750950690 263022759 686812394 289529382 893256264 96616108 322025332 523811284 921499894 997088056 997647563 823970436 924380287 186838955 560534814 834027530 856719251 505539221 583738321 601813959 926903813 551902225 706121263 187240119 682154660 417354851 823738901 607313852 816572584 894582357 965680227 200805903 238235970 153402721 198483377 112255139 962934179 729730951 966379209 674709537 684329856 195090800 564000419 323737490 730705191 223424854 459890340 791270805 929251673 265691669 893273814 337496523 955259450 401860156 996428135 865606011 950635227 497641509 691675626 335007709 965533651 236091537 587989549 861053807 996100108 593254881 917953423 44647456 686495637 748314855 990222626 963347855 994914116 146961424 472030368 859030966 996304975 982434888 999623787 806083344 874364599 662994787 865175834 594784592 707610240 302372228 666076105 936048213 974221759 765551630 830834641 725535126 839892241 161482392 537494203 794193136 918644652 765265095 878749086 117275409 553199644 694712816 814211066 106401120 291185892 114509460 532082895 114807471 968351430 205578699 945883522 835831176 845967017 858930282 976151752 442034586 884377944 801074043 931191954 977327330 993089627 259431118 870345816 163903011 689311932 87559143 845579984 536668316 949000882 500015405 610137436 707033730 873475248 31209178 747155367 213728841 815776760 703150087 802252083 94351596 762593946 436260217 660589099 370508503 429322271 985006994 997401274 135559376 516907495 809574574 888586756 62206643 218817590 336865504 426419271 945219074 982517138 699101595 847794495 891513697 955744453 230652458 420106706 37817575 156059829 482373428 803325348 437458437 562112175 755850708 853714822 144387647 412212249 595083918 604560345 945209398 950444742 656750473 723484412 565401626 785428211 523063881 919469651 344219625 680943680 175055401 915858353 169657577 424600277 195872196 855506808 759378900 874415241 486969313 767995585 24890400 689118309 946016216 994347982 746512554 897067387 382997546 453169396 521339907 782071372 941449122 978554672 101748745 941778736 991301375 993894511 940696583 946872869 140160521 310205361 275834564 927421931 892556675 933247146 794711870 932981541 686024004 974529101 62314233 826343503 294264342 758736618 445111387 914481446 679056758 835008874 883645114 955438762 883696259 942697650 749448061 984507446 62067609 210351630 37120245 973410317 638507906 740308114 403137788 439391696 489238650 730657842 941031795 992823380 653823841 790283364 485289190 663986152 938631363 941385321 779987090 795131786 417075634 692504467 511894898 527851000 681218706 932631009 605596133 958426372 857702919 941963653 186572284 543958529 933800758 954006883 742734054 891067785 466217860 737401933 462985606 508081006 781404989 889100960 48109842 671139704 52721262 676697403 156314334 295442794 7297299 98245666 831642712 937663375 204120652 332947905 788084175 963789493 237866394 352195692 513699147 841537980 357083862 567699854 944722567 959360243 78350371 860110574 880826105 950489627 193909331 531397124 371915084 666149721 300034277 702900102 783893603 814353789 242818346 293898754 876247449 997748949 933511861 982622538 510261740 725223687 204386093 309782085 830899837 831739765 378424839 439281825 876512800 924125983 449494771 806606706 612373377 675837463 972761875 977006371 458717489 914032286 94115611 989720645 32677715 57075791 497556980 797197160 186582900 404898183 816546406 860585646 809143892 909315459 761983760 897169868 926221773 962138422 281713749 363387748 216448981 725077810 218874800 873680862 556476669 945110746 541941991 842234682 381732002 837404056 9871873 259163086 106577828 902451582 140395609 764342665 36691598 719424493 433091589 901155196 239295171 378840778 20168282 879590250 712627085 792151261 169134195 298604818 339583391 546241395 558462357 577670607 688826678 831088488 261972084 640216196 833840150 980902970 677244601 977589858 291829347 371950212 207552759 717123893 252276033 879132727 419461289 777114342 93150430 617571446 549845836 982194118 437949814 646707170 554724149 732791086 228006967 549532019 965871045 966502660 56754580 382599967 546175264 606118317 234038801 567223733 743526875 879560668 201354935 231515624 853946064 970135072 537906483 834081335 100484559 304622572 914422891 961998905 24103505 675045435 247842934 573076343 766815190 877871186 63970613 163705857 458086754 527870560 256232158 978439872 796153376 960332158 667449697 899427995 659735354 914399664 5149767 341477550 826360900 845684382 251123222 336824447 698163295 955706108 433998000 931429951 632392715 871149382 356749902 411268810 949813023 993114995 842072961 845507095 470426783 535651142 670485887 736576293 626850722 689978191 665307093 716444634 35167560 300430986 361208824 919222221 375396683 544082135 761512044 917590141 641692050 910906713 711394886 761531555 952730915 995517304 503212241 852091502 71534362 973869780 271384861 891240956 357261523 628499478 154460652 830336354 547369525 979339832 92477142 361233380 914865298 981350168 250780090 342092305 748497258 949052106 910613663 999832992 894661875 995939906 21035417 753603929 456046140 523655140 699216810 791752647 266317846 288041289 204665724 899040571 464921850 968547593 532812277 633898853 381359504 780139393 748833032 804953631 380506647 859312518 249587385 374244746 473635812 628465038 569370295 970881332 660711200 915619991 322426420 558848036 505338034 758869641 697658774 777003654 507488481 512618932 498774333 907394748 339234091 462801311 988258739 996523298 836833966 973184374 872374427 946536376 974924655 990417626 663859144 970113518 521163009 772141544 312521668 728835638 772767515 816721619 692861937 778597925 708179399 958988433 330832365 415989486 815055967 842138048 409644582 513685067 953872365 984365617 804226971 837117208 397263558 951924526 312666701 902419331 984103951 998257038 9219423 205822081 626671219 859738905 767075446 773669691 204483540 394240378 997418783 999393908 204606716 333897084 691341683 933544906 333688442 918330643 951852937 996541317 972679649 992235515 996721565 997697914 58329130 478518757 98980449 832622143 991379799 999623357 908317572 939709202 944083924 944249708 946200282 982156329 928794704 947855849 350699254 988625836 242992107 967693065 158026352 598025249 44954977 602223098 682242028 821705735 114781709 192002076 993633484 995740352 435018582 666054797 345609418 512089323 430123355 787071156 451051321 701346438 587029863 609328521 688040241 876275817 93027441 691517794 291946817 961836401 807898382 967311879 413634549 936720555 842888641 964321245 63327287 586082848 332281979 946629777 786334182 905044900 646260837 776580405 461236863 926705943 376110778 588461325 286245802 672826377 390649542 730249441 538350564 542243616 763816303 816964454 647069978 927165759 265093723 774079370 283192029 964537051 25731149 729643567 678343895 826929244 749155974 915642594 689399893 829099847 648655479 876518141 484857102 676255503 202378211 253949363 823067372 838514510 267917530 565884965 325707911 591879770 971658955 974737912 79203221 734593564 494793466 802400137 764368899 882423410 499432691 792614497 202542715 810452328 506079351 842634056 893425427 997506694 833770238 909419234 938905958 957967243 491256169 871893439 682577508 977590105 105947959 710127469 801199926 828388719 226896735 452455052 929925843 947339385 652371297 841447815 318788596 618333224 809300058 862712581 217930089 777317776 738268969 759569637 232460972 255995245 20897175 302371339 473400199 719144928 371206321 929189483 124516 741787613 271651292 950135772 259632850 628236982 282981334 289013669 325192108 875288916 391022513 779154798 815258603 993139193 671345434 973257644 149958316 508317817 1658247 871213728 267828229 725566983 575528829 914945011 974974948 992788296 157920460 185093356 790106999 853455699 957635939 971916566 52421887 729153086 218340726 596376276 205207540 577577998 227035629 365733628 107528813 123976051 499131198 539881312 23100014 928832275 131908803 401003348 607681156 711928308 771174933 804145382 105323664 172457166 834840371 894868219 942062036 971905861 913201539 949279627 608667682 638237758 631063202 971198663 934249933 952044892 590145364 715515311 406387133 612908638 825382775 890655427 315581764 363110486 960841213 990109256 774557194 886051890 590721564 918567246 716646987 783007106 242633782 381455227 33114701 376233971 991407522 994904337 886255896 946661846 342654394 439182010 940092199 952875943 837675480 989744401 611760764 675682609 493611683 587996028 793902812 920657765 479115527 629508094 873075148 896624071 271451143 990400048 755636954 898708832 22867815 57920024 238195266 834166664 14958155 188440623 787109294 846837824 354914771 559479601 760565308 973544833 340553637 689589115 51777937 967034399 139605715 847341426 713345557 876916730 850175943 951184663 942960249 978488228 543032095 878210048 803260593 816488457 948641555 978755263 338536639 761091946 542985653 719212089 490528617 999016411 588443487 920207077 357744402 598328143 418711202 800193038 712347347 979247035 6974924 111947800 14931446 100450370 217362514 230884200 375048280 589005598 254058886 860926629 517231066 690617654 875527486 900288663 84645277 97941029 142767057 637800061 36894290 742277729 368070007 378457800 411338483 461347012 182062620 364661113 164731001 216681170 127251354 729589795 476752133 930499764 703794416 970340788 682088500 900671405 540757207 917915233 104672032 287767146 711161094 756342711 483389251 885297985 520069036 713246347 218589815 941013530 176525936 762037390 874489113 919390483 321782383 869849902 580923601 853029470 200114701 899012356 257670383 270687782 834650417 985143530 884684928 919720378 750106143 814256726 79117970 426419381 779386158 790376061 466746989 883367910 329178710 395153657 128616234 471532629 914108850 915622805 124170456 263696723 637912396 950700038 360917797 976964749 721444156 821430250 318275415 682691607 511375578 678650636 479943344 935169516 695131234 721985763 78622058 873077530 325851246 930769039 868412487 940094161 382076431 900139306 963644348 976998489 226078948 983404027 415155246 591277818 799925653 917818736 28205726 55657756 112376636 598165978 899943798 965078313 264745223 496296596 462828711 812034907 804027726 921936298 39364465 470633067 908715124 988489108 77547054 265327649 285627908 472767662 761003291 789607312 496516166 664749106 596479940 777287735 380802069 952073889 889961671 976152478 776397937 797260862 795122461 967151411 300328207 480612672 52836091 104550816 752204437 825359879 486305565 788198976 320596830 585152837 155654891 698171671 856642839 926482303 785108504 876545714 914747683 976420498 640535634 672808396 32729177 209063108 999926118 999939972 564840700 917224885 309485162 968992466 347664448 864322092 97451497 481414485 239391737 616037941 817343369 894314216 269815439 915700679 619452427 996941489 71890710 594976458 258877426 611726311 157265003 820762099 374394906 438293575 656070887 765719102 480646206 583489600 818509088 988198471 287692040 488404081 939129389 958352096 222306956 492596077 569671551 796066154 974549154 989317870 831093329 959017272 692314988 805625843 338402133 733674018 572618977 660362288 236327016 252452033 573215731 606193993 570671092 890788359 266733742 980521663 659182351 728687320 910680726 957769076 128011460 677235863 855451406 899911481 580844808 890486561 284810930 448534322 810805891 878740285 547506877 924466693 100533134 327049912 322111460 672662568 669841328 972325634 658050229 827007675 605774645 800248816 988238419 995649206 632251914 998146714 200885197 612953063 452834471 544659187 51298079 544204010 137085182 410513074 312378058 594758563 394829812 892895343 753952083 767384552 43350513 195655431 323003727 910724520 6522468 969078256 562887525 798817741 815849099 919119632 24049230 530535545 858280606 992445911 449689029 912782830 448214591 962433029 434773970 501694814 932053987 994984740 316914763 933711894 545630034 793493001 684842817 930196472 638655170 834570316 409995052 865005579 229357969 330895441 87428793 145099350 925820504 972543574 832811257 984726813 688911288 965330188 229345089 620914455 396175991 438137334 735236248 817040261 647258032 725876717 261335111 424120319 891002811 984590668 865485633 912164712 358395077 619480566 766632395 905638952 778892709 950200713 67137146 913105356 156037372 521870546 426744493 605134242 529906649 623280064 228026258 988552435 271295729 646624667 108814209 261404710 770083272 877752859 893802468 897969023 597604962 627204919 837504827 984497142 370559847 387623017 897764490 935117314 311615555 745847455 251537240 931650104 28013681 901728169 69736653 670777329 134870537 488004550 831059254 841059671 387972003 478079711 99214061 958080421 348267894 356696214 708688450 835577584 119916745 270621451 884010349 947436743 55324394 156397780 96555227 387997587 541012258 679343658 791788004 936643619 23129324 655363826 671718388 718107134 632440213 840545810 138903891 986182133 569860170 809921220 282499136 941759116 230852996 776067938 860215426 867827820 842504359 886874791 880614271 884907985 378392553 552815665 955724937 980910633 69568961 79058727 603391237 873078213 324478254 684131870 575849024 663735779 510258804 627046694 945414233 964429269 972114568 998184118 518568321 668049990 564319329 614189265 685301054 762803926 997829881 998566945 358702528 561052896 24818386 525289856 995237156 998913468 508027782 705886771 1685735 179573918 626142381 956101558 36987918 774490584 921538711 993115766 231283059 860745506 920755046 970595435 99384579 539750617 96517745 163604903 369388713 563052747 814593829 841645300 103955314 415134646 869834425 940116283 967334715 985566166 906306902 928408346 124637544 388458435 78367946 721706529 568250211 811006112 274338985 529579911 770409634 936000299 651946365 789338975 310582369 362391871 386681513 953695902 395037858 488171804 534255874 673289420 59358842 350434371 438672145 979307960 655175957 923053941 713120234 857993748 256816934 564412317 172699184 724381690 984708470 987115974 841250778 907367259 7337057 382648305 974074545 991995877 945334370 968680857 65798447 475754131 944424407 956124996 182331277 323393978 243401024 940090166 54419328 629140264 799380810 898522551 254194166 286848855 860003533 979388087 708573484 727705546 917308699 957002606 634926893 861561371 620273347 719951044 92134878 889807210 791727118 940043619 971727899 985243684 661184959 972979544 891421959 901046380 43788532 667822732 368976763 675382681 984046386 993897388 408461059 988498377 951059415 999554095 24408472 227177604 130843090 632111304 59917749 922827308 517181112 688471204 328767262 434433451 209992626 484592875 909681720 956851536 539455965 994361531 113793926 478314516 360564925 427504491 72042299 640617356 795835664 949110626 844687122 872422629 250404031 696426803 444392380 818252596 703036928 808264054 35904827 596920432 260277667 781493321 329072695 987310450 215670422 996405308 756696513 816663407 534727441 590458157 979312319 992912051 833180816 896959873 507573583 552468580 590064745 628389531 876658155 896674344 633620033 662880027 847960899 879524787 995191366 999304600 736209244 948078894 711250791 825394131 379503642 771640850 676230044 820574394 688578197 854584267 890182764 964480197 503147319 596304568 668464569 932080656 24117144 107470823 501790861 929524517 233485163 340281175 524323231 604786079 474090205 678522371 594916648 840247912 786977638 934288034 473615952 569857158 434345626 881969215 789694696 882590185 85827688 157347684 539298442 945882783 346690675 434448752 197894540 286660883 732625021 812152769 523906673 534753805 755228744 955239960 797519473 822533062 629612027 689408638 360291491 540875866 391517768 956498585 220628578 754624017 115860641 620556981 170945548 501289708 673907557 838988272 673112786 719078917 200655853 225608491 98180799 723943267 304591342 897241087 624726164 789766998 871607069 964413027 317416858 682026008 940445404 942089906 683526969 842065230 268165438 814660328 998078744 999210927 799767568 971010580 385332699 455483202 349319143 421872175 415958832 473642121 824340527 903180134 253484341 934705399 698857518 805668622 524671824 938794611 206436916 359328096 293296292 711006849 206348844 342793713 425328850 854566926 549966655 891189752 941937631 943694029 646224 152773057 620162360 720087818 25347882 758449979 630320886 736007164 77385814 400077020 743471618 893748466 609044218 972376064 723948277 725364957 967851275 973266668 229184032 986339249 278619166 510268870 361901625 405730151 624191221 722982579 80454008 743233447 815816569 904233536 375421739 838972879 714245798 858033530 184907931 463810321 766456932 840297093 749613992 982130394 673788614 961711369 654385819 799341034 307075282 332861400 832740611 986967828 338202523 781066229 709354374 770113585 699280271 926806461 652339420 961471430 689959224 871142909 516568506 723897725 120636184 395741175 244541273 608205886 2043960 184118065 330377356 921640476 862809253 876705134 556869837 760662715 565272758 706745202 701575129 978243023 155280945 286909233 634739910 763051275 873503726 993701495 121096723 222010156 621240839 722013374 782407381 791615967 518482302 621483279 478358469 931624464 336757099 958644785 869815144 964427416 351056105 742136021 901927599 918023622 774381926 878073248 447528501 967161293 743409361 961346494 746772096 953598360 193402584 245626957 260672897 424191459 621654543 915351035 999172561 999918644 172119271 637650098 822676249 994218632 837870272 877134902 316923125 565106846 797551946 909805685 540076840 905906857 635317879 952160033 787938334 962236461 256804499 324522878 972823607 985269695 380849708 628030626 610784544 695664399 275420051 740148056 468698192 744450116 728938667 793577378 52118252 411891285 647877591 814457424 623625290 720200681 537083469 785353854 970055187 975125757 116443817 701977646 269818201 313289983 937870235 996788207 913327036 970893369 263110994 456627305 662960776 724562399 962584664 977354538 542556924 808208753 349280210 840554209 196106386 751616038 577823068 946787564 223052870 406043974 507219421 895840364 234922467 350799842 774147213 994661167 183989527 959603508 961458561 996599394 379950164 885048632 101200861 178071113 8275291 810178817 57810762 747779507 510809181 566631121 606241702 972572366 101182511 607869192 767734953 945189098 409269395 883435908 604067987 748934019 107731386 871741529 823074021 930346040 910946211 924743305 401727731 512705931 601777209 619940967 727398729 814237654 10149714 723928422 381642410 970198789 951779138 968911227 757567068 779537635 355120884 792799999 407871626 921346246 534397873 948840401 955513641 990639419 346215454 808959633 670654994 819605298 778026993 868189497 887556384 942530309 118028181 853906081 432610621 679054894 715985959 935582839 395834461 477531602 280994569 997854420 828083229 934817846 669137234 727867110 818970452 976522432 523784947 556518646 918180664 961872809 279120025 514418794 394269708 973013455 151689210 547579338 58014216 442969360 36687628 280664526 380615889 647451119 500583061 551153852 870705900 916958822 746438623 830336643 452098169 863102563 688020646 898804747 513861848 825481728 677355896 971278509 586684029 829975809 404035468 855708284 137886651 184884183 904901171 989111849 945232370 977476877 682206915 785765374 368389483 860123875 463110850 597267001 812083626 952758113 507621903 920140346 956600991 982150772 22074390 508824194 635526780 892888644 40366218 406414159 585992007 592402950 932609476 970283189 488303237 548576810 597682629 975278939 923840562 942131494 224161939 317714151 110787970 285110726 745891860 942741222 45616600 246517410 212229771 985669467 203717531 733924521 900328529 937115713 472164232 793401392 454629028 987108840 486506559 530858630 481521165 602709344 122959096 366087331 754890147 804981463 250094994 605931130 512177418 604719765 297118862 813528667 876542560 992509699 872241318 942640669 933436456 957767307 958242923 968923029 637034337 786474960 572143884 627608452 847127379 864465988 563571795 690616204 590205027 847195804 310336363 777862057 212169849 865612477 459512481 822366165 672633475 959275240 950461880 971780348 871263172 932843069 186369873 674962917 88054781 306316069 200981753 327256766 633329825 787482142 270761035 637241141 61413649 817161856 828206179 897668757 330807719 578206795 326541095 699735057 17816076 714248542 608146888 716034370 253826757 874220950 611821301 791360715 891050816 987828080 685367571 844675168 82783003 447999665 492557423 792398866 703657259 898110412 468570136 776346092 872203830 991792535 348902144 357741082 674401900 986165732 129448968 730854156 610807068 677175080 157163382 842912971 352371469 641757768 919734745 954823994 512314514 611692184 486315991 664095947 22449816 930074748 245236507 681019744 573864429 603717245 555334329 896220009 105441911 759452227 385087657 485464530 435738687 731259161 930446464 971776049 903147668 956576388 284512250 340742076 3489143 873913793 629140485 930425856 816305427 910045086 850756685 968259367 840754700 880148879 937855922 951715473 187231906 562516244 483565264 591197889 552190165 716415236 790598519 844992832 338213488 625367743 948943647 973794711 814660577 988806790 636308429 970635632 40153024 335522260 549222262 576871286 396272588 960136353 449327927 973072144 644271506 929037677 230000176 874500699 496207533 944973761 811291710 851786980 770967187 813017280 404787181 827377077 255218101 634228325 172804876 695881266 668011537 928899249 508060802 610618444 632430770 777434489 153675373 727601120 632301557 919259078 473217531 599397925 12794303 483230563 529784826 769384202 572991509 898345639 832053836 973541254 612086167 830452051 492292931 549481136 946027322 996054356 137238627 697233888 787455115 881130175 478408728 931933189 804608487 831561932 528415589 802048184 8521455 105628307 829331596 915588386 733921218 856226633 55745970 503302057 929756615 937684005 200149298 843444875 95919172 527968544 142936518 259323738 205814060 794891980 520811016 603050676 470224165 635196600 573206000 984056865 15205183 920212718 36263297 852634417 178870215 873798739 355302174 835361283 412969677 537073368 822818579 881161685 647797906 926938461 122672391 343330010 890963388 952872726 823856678 827251307 623649036 916648637 186984503 576021623 408716397 997719400 901370023 959182899 218602897 983583100 847384253 865709105 62692132 159601794 106825009 635762883 574808603 718499223 102737973 978986480 44344379 410402824 213191263 792493675 888582747 949218067 533176937 582523428 876563245 908693695 330870201 416263446 321271692 591353231 675810757 709269756 740476545 892818927 562530975 650610199 50596479 569937933 159060315 716121962 6080383 23195459 872189124 958997285 291755138 690768856 92710928 125418768 222007883 661445550 199539903 498958334 911885146 991210722 561571662 927739195 22223103 306405100 851624727 984452099 3734825 388844679 378358713 994316033 97263766 746554540 854598259 984823739 124675779 162420423 525481858 726551727 674885640 996076996 571541735 584206257 868651519 941664826 631619674 980507276 284334978 828886871 490272727 782740273 79823599 887851286 551385777 950337422 681635537 824424027 709186587 898518548 544604353 799663236 818417147 976315045 944675390 984366241 296284279 813990768 69830282 882450310 951080351 968477460 924928890 948060462 742421197 833799293 132138298 941293905 694088954 701241400 380750336 902980592 255087291 489744163 563532893 810043768 491622579 618005212 626644108 913849668 131108769 347020367 230776242 936651184 589427311 795242896 801817381 873464756 681107077 873820077 982681085 995391675 536723002 549656143 263160798 682768453 812176687 890837551 102670489 378559511 816001885 912831496 411025851 894845498 120374473 356054791 504820729 877067906 361047940 849944293 99013628 807490392 75954245 120629016 591176870 760569634 773491111 953213975 136065188 791213262 733131215 766569721 38443382 308407476 689657842 913905415 747269989 890885816 152454187 792103864 606844911 926396366 60186764 542029253 582799475 846951794 985584413 987118759 247384466 461782630 221950318 383708429 695561726 770261307 755326603 813807300 545790223 622843777 580589794 885274595 371327990 688800777 861472217 888805257 583653181 927226393 122256659 861092556 918761317 956640772 67632593 335965762 296616208 560471773 152376521 301160738 581655075 848343753 173606737 676453233 817127576 947024893 920736873 984493578 711361532 879697857 375702033 399825905 832591232 992191100 509592485 549042016 602269730 921454911 939835273 964492711 863962881 873898634 899749597 982169501 417347059 744271182 646211697 679649645 903269365 906349871 897910893 996651682 729152603 937015080 580396479 963532418 936154146 999134327 145792358 353907929 377737947 767344341 34531577 517892342 671348698 932120307 800028947 984772286 518988225 533371530 515225161 889158974 970870508 984924632 427154213 862263695 731090921 785009591 990319227 997172181 392804392 583823818 287785742 412315452 640056948 733714835 465954243 792003361 770682838 867094412 764636844 848501461 340467862 639300837 236655929 761312903 438109211 490590093 149317618 782799781 123850158 511122844 687737081 768410971 401577057 610633236 583654284 937445209 359654725 613822770 412398889 927585026 46680041 787367397 344457825 772647883 335812970 865902958 336632124 935979462 660616685 916505915 49965405 317661699 725441142 758920114 752571969 810888160 89825599 774456551 415178657 578875125 115208038 814929306 870842542 922922651 303296343 868759479 278625215 647716979 589664877 767074108 322415041 618004214 118905620 346974861 219567962 921019905 859915136 948692910 503526954 742323426 404290713 413049934 400553975 909747005 409626977 448602243 880602612 932627685 235240221 429386284 188460436 632700722 549433765 638552706 748451370 898206053 280323543 755084737 767098416 901539496 297912905 576572670 313267357 576518318 658591915 824091450 115253206 971094103 316938863 966916265 132656936 490217833 687242085 877724650 656158957 892705040 758488115 863363489 385645782 707943294 688817496 834458954 928014202 968183411 684428981 845877459 155457140 734930988 53899547 62998716 217816092 366204995 636862646 922876580 406014499 829278120 8809903 882586003 278412892 845690400 881257346 937865276 878244214 996870480 275709160 919782875 956670470 963177049 57348650 575272854 624274216 804116168 832953024 919975837 71637632 128090377 214581105 509628185 308458213 714318541 509757933 562055476 206085515 607802274 963060412 968203788 449924364 721307341 696150917 879183270 784531213 828846522 248285402 649410399 738341918 783066953 258683126 628903494 363941806 484213282 484124504 506246607 913688135 968847794 574005747 598161870 135103145 168460909 285689262 339017819 886275366 963243747 408304824 882384551 195106693 262438166 411950450 942799690 710964176 743423711 744935470 769991717 479684900 562069418 183579037 891894065 980149411 999363986 348712589 390835345 472518596 478727229 776196083 786365804 24590747 34124786 815402372 988614427 47653017 496887380 602286602 831428997 669538634 932419671 919179831 975004914 472379561 919826511 511414624 769275966 954182256 984681914 13547627 746176254 233462541 489234099 945309413 968270659 694906374 787392007 646362183 671851311 33315099 867359021 366292806 824462391 397140564 753212906 160603269 870623645 549022594 841682219 68197912 836680182 714668667 867783713 690016602 713080940 147209035 321072607 344453393 579102389 551117596 994801325 666233389 983421782 710580911 719491942 364526822 624211380 591723572 877003193 752160984 992421538 801544094 911466775 317252935 625481935 31139322 259151741 551006264 663995261 828187723 836698314 859423205 973772138 307270268 493079053 131200157 559830249 347705140 658744225 256478092 700910142 313881733 395223185 514747355 963825358 78496248 383155161 962232876 967821974 860952551 988766257 170357836 800320403 716417461 851810862 252298310 335825811 944335455 951339197 38010477 276727173 745923464 868582526 554094572 891094923 357729412 450468049 502700803 546677087 417820861 598849574 461500981 497119561 727249799 806622389 524156934 982664500 836539376 923416118 323938624 704711877 519000210 623888861 850877303 874843543 774137210 909600486 266143075 292258195 190819137 417832056 776473878 916764994 934604005 977587183 19906267 254259630 517329800 915874456 258050563 675384362 988585796 997674442 221691227 495100708 839806558 913092605 381512435 608738524 177489950 402581898 399821019 589627901 195028973 529548256 649144310 760776426 501296847 894078703 815960883 999107827 275126 699312484 770574833 862949444 259971554 356101375 350604213 996196865 194403291 863319138 70505094 930073941 855839044 937735208 782398018 846661358 702434661 723395285 849778174 889033697 659703439 922386131 369035449 498575860 604793194 608231929 890634739 946647579 312591547 365956070 560811567 849488572 213383026 295104725 353272969 547048075 897032358 898088053 271440740 325417419 587667684 918394551 917649023 935830704 499014153 571162255 826413322 862795991 539318676 574720623 239282856 897129962 163394283 977496073 195904840 657463248 958704679 995149074 768231518 922757564 803218188 974902350 269635218 677288444 489258315 818069720 442260260 943393325 797611214 893577481 436464214 581383334 840944978 937388866 109993511 413111719 826593885 927518354 883978776 884124153 71295665 145313574 886993745 928076840 409099200 574032940 655554415 887931481 454656177 776167111 193298074 289098846 632735317 881000850 801667651 935472919 617369271 689611190 468827579 822676102 804626633 846932010 132328640 885876853 114869330 548923667 619310012 878606651 466719853 852122258 166128804 879863568 5131299 355537352 909405563 942986763 577387588 986656027 770226985 935500572 560091905 652356174 372546015 804160429 721352965 797630499 744969605 746448354 975425371 984387407 806689127 983690334 988541477 996532121 636208982 974229660 767824358 880883230 784356678 883450677 170967280 853788539 75331270 393444166 977267508 996292291 112352156 575368720 735326871 990156583 709365527 775307515 420836642 620208499 859572075 985685853 571270403 778763362 436864305 577426365 958512536 962774922 32198967 661057538 818961967 977465916 376794368 802781578 254249695 870132289 193197680 782972637 110110545 330970427 479999852 801594646 845113456 935473217 387701404 695654298 6455237 11364369 70165205 652800933 701546276 932504876 2219463 318519939 655070286 974654034 255736835 373694386 583131368 736741709 931595694 959330112 326487115 689960546 742854706 898128959 352121623 909617076 874492181 875456147 400011246 432858897 162486874 772165650 842653933 890542339 352325903 539606138 287634720 585478533 10586098 115863542 110267874 902836200 75387436 859313791 540797333 623963079 202848649 991769799 135123705 407145760 153261292 432301453 955417592 957439478 551427481 569955700 44703673 609552687 124578884 254245786 48134462 124625000 339629802 863109888 683186975 793440726 218831870 740537440 333205590 544092231 798563746 958473504 447047343 993900167 128224394 680134792 980011472 986426672 180478015 868106216 21552920 895035595 413845341 669263977 53303033 528348103 640110890 789214215 78233498 106746771 104646997 379581327 160176977 814903711 134181111 286896604 943814317 974614452 360246496 636817158 488338928 515467018 82706129 917338944 637410235 918486790 344541968 999950450 961495893 981903362 210420274 875887352 334091311 531131732 821227232 847606708 148447914 463007581 312001170 404232208 772051489 832071383 407529526 555421888 808907064 933829323 455675855 788724601 597553254 813897475 331172819 372884602 176431933 514790563 26994529 525276197 300556357 863700075 749228605 799427569 521422356 751529945 833347293 995095984 757170507 863812172 504422052 849679753 449187453 518487588 96057168 876586550 364832083 940504902 149607985 311305231 284393760 970981883 532527228 808792436 379667497 511159431 376167537 824018314 813039022 966404569 849573177 908293372 953127641 982855936 841602753 963088296 578932120 623954677 184446261 416447412 400819695 751995599 413636151 986678644 757511153 786582940 127432860 859860055 15462828 740068861 822995805 993461629 650319632 881318042 69792839 867916551 714082418 858164073 787632515 975056858 811530662 817046112 478004590 884376678 325635671 840097725 827105273 906176211 461381269 768831596 335316207 514908482 742108271 928881667 938540702 966019950 590871752 945043309 800347907 964332112 587678093 592805000 477128014 552651639 112676508 372873671 466709169 881931394 462358147 922079596 612541683 943249381 680804054 741225572 684209403 691313346 922351893 998704853 721510741 905452847 34490048 997418173 458852106 715749880 695530540 900366409 243055443 447322706 921251660 966240100 725806246 897197422 264466635 634308609 791475565 948044360 527747315 630743454 655192182 840498568 177000073 352015212 730000531 834195203 316298639 728913186 336876548 521107281 756290683 843607318 471676762 632443742 755728925 808963625 84373922 261833504 226828898 933552952 228439651 597181010 35487667 754967216 474602390 899349178 753057444 820856607 435614343 725614041 850786876 911636003 418913255 556826862 921238011 952306300 343248204 595213892 372357786 602682467 643557849 951006856 570902590 685092972 651217642 945139231 50642754 507066418 886001730 888320693 215420397 219854717 516287986 813413768 385330567 568406976 592252392 828154822 188310237 930756460 978744654 997289044 18343462 127859289 729187272 737000938 649896020 782748045 350648832 729887869 772069932 846143409 985032011 994886081 503799173 599381951 668799815 945500473 745184821 917006205 842593531 999650394 862430771 936683905 152798407 795274894 932645209 959915468 572026471 842759255 596341171 726529855 566841264 905872517 267586568 889148676 718643677 783921082 479388247 910706694 627313988 878549746 992220523 999594551 854645634 935429303 835547014 969508669 24266281 393603911 188392807 582746016 314575261 577393783 561063924 988247994 182754055 929957256 414926250 530194945 33041599 159356936 394751311 735225545 81827494 757208272 836463468 842629234 851992321 968514450 954464190 964038529 191192271 828372309 760089960 809087772 119705706 255438162 401602234 481745774 172134894 461343288 34205180 374839931 652840560 922187875 789967003 866752130 711162305 714973119 119735155 730646056 124448122 888611528 206191784 544617882 862769380 865843226 246108688 367970662 634678440 883241880 945048637 987635200 625864769 779648302 231588514 322142303 450044037 895248620 712122991 731127326 265339291 904945297 559513969 866526393 778446484 999830539 315831445 582510508 139243292 898723929 573075718 711707203 182363714 699645483 942635326 972690255 645596028 672673808 956826498 997914401 977708017 996685963 641054925 945022510 359145667 825271502 469834434 971161178 417696011 541965689 183726095 399377718 853941258 932515907 785531841 835248171 10239523 989304209 184642698 325636634 227339732 600411685 193425739 199867205 566978895 733371015 390645112 631769948 479834083 861739299 71711395 565554424 275718548 792178961 838532434 867739422 526461401 825391876 393925216 662755873 834482367 942918990 707769341 752159951 200068257 914447371 257184241 517536788 131970728 390979749 888806317 985110768 553756080 952008484 341948939 411721360 982923984 999736422 177929907 375940095 931201974 997176646 803614589 828333475 104878234 444025747 443836839 640339546 818126990 979130446 953492431 966570311 440976236 451937443 304377364 866587952 998392473 998920089 618126453 953942063 536510408 694501469 788606129 899540237 653312160 997435081 664561329 966681978 697754062 705214505 975584081 976553702 360123573 424326349 814583005 934777849 962247369 990967623 10282233 848490585 104823710 592298374 91331445 490044824 930729565 953638240 29945602 851029912 6972344 661574739 827611653 891012839 145380735 507063099 146391213 946022184 974945084 999615634 262045834 632848734 538583798 919420652 909929337 999008293 745912490 914624307 253443466 303705108 915923589 952274202 378996388 390463162 96180248 323854907 924930975 951764335 170796281 785295799 865498517 982439805 652647177 716259812 604791209 653267044 383860947 393630945 494870207 819464886 526348633 942922117 886341806 920179456 802211711 832149257 282649377 583986155 916279196 983921524 557277764 626220959 870368745 998164796 92809905 104406099 429719172 856152979 296829790 431603218 481306106 641544546 224639474 937388418 600627018 616578343 296074819 760585171 581602764 878648149 93700947 832025990 291175186 929653960 993896970 996996538 130319559 585530685 57321176 100681949 420813115 434498009 760378692 970383659 276734083 862281674 284431475 394454432 543874473 837563635 925041733 973112644 244274441 358480878 297484033 886455859 928512762 938625529 849311748 990593811 309543806 630948591 860970406 934180680 415137164 987093836 144036597 519789150 87844099 906630932 478361226 572150515 750254988 760319574 47227598 108714095 943520246 982521547 585068646 759807999 419615805 474704856 501591849 906938019 861869698 960074261 181625448 909459868 815669652 816307251 804960907 907004799 957244913 987766400 48426226 264313225 229833575 926274083 688841154 732727793 830796845 977916138 742694737 932404459 62037589 995795003 633363132 764283241 516727176 842515811 789703261 879089198 537276069 746343740 521499551 877937650 690123170 743709379 715578509 828877827 642026167 802891027 902137522 956176978 674152993 993211187 464659907 577808903 248991912 393472118 72535747 605666306 465715087 837058839 819142636 898225714 524524720 619323398 678148548 859470477 882180298 993475631 988484130 993715755 857015566 939008957 217510105 332429474 82580836 625653542 978371383 995419204 445371714 658307217 148691121 763452152 202715744 791041994 986851651 989367018 744858556 888515090 585301307 758890617 271197828 905690932 392751816 835142520 366965973 530536549 804262482 990827400 34312873 35936893 589628948 706200745 125702093 443663193 647327250 833920513 753174462 858319919 962030721 988639378 432666441 534978062 315931325 730854465 959126626 967991583 65291516 251148318 242102104 454606542 813819536 907681683 643798001 905396360 564920189 650080246 646408426 671462879 333407010 392040679 32835559 677301416 614222599 998341155 702295051 818636341 740401320 787876399 867205518 885108619 474923134 855067986 305118379 970466201 604660519 652653559 706917754 995265378 486111030 572748370 226543802 584178813 634132694 737719179 268246940 902685811 700677376 904291411 906493458 995511698 218862971 891335387 451595830 955827128 961417741 974235905 586029827 842984291 780573584 812189460 314495640 621494581 191750668 638753700 662971740 667236138 231061073 688174604 941982584 976082901 809847911 947186206 714217027 733460360 376260243 647596720 149501543 688178674 48223274 364426470 221086986 341411086 677866006 923252924 290662716 872585560 459780340 863973741 878883487 981294538 30426443 357523574 939702384 942594642 473778105 871715512 278724125 615112703 18247945 752521726 735584529 973371556 973924583 991825899 988850603 999790544 901968001 974077868 11877391 466320327 564356376 648672777 520707780 840563930 319408927 703300181 215912843 723200975 847180510 914007508 612211249 903619741 24553400 68226382 577314613 735135960 997829901 998526247 455133927 983258284 254391438 638513727 27763473 370390130 201772171 506946926 189615514 544502598 150768532 206788179 820468447 905238731 306158738 319368839 531303291 746692477 80302823 428179870 673425599 932592704 667285111 944420568 801552504 849216408 768760351 992656325 114821194 634293552 247222881 328500675 600797807 765224455 676251988 905511080 543875905 629491949 238631173 268022392 752312820 825849527 787074238 820461184 557191856 607756801 165301413 392543708 953914157 994849439 622680119 716499073 659362304 723454018 201819504 656818754 245169536 340488682 87442427 504182268 584918538 806286885 904585443 977252733 342547544 889451838 603862894 806283219 833842091 967913368 913845766 932287387 514336377 701371066 345618825 605417607 133767012 887187044 583211832 791492833 152645374 693001412 533030534 721949165 901028104 977370675 799691569 867286095 838511968 883430797 579246947 945025947 141304341 820099079 876890921 909997160 259690454 712938672 970267384 998409621 581868782 635414505 541982217 930890567 911557170 933623705 251902374 985295355 692723043 960222298 924599088 934108095 945988386 989791026 78158943 223363142 882093356 973855279 111127475 362962350 776367364 837188817 610609021 824532121 388685956 406668973 539919067 847657659 311688784 774156165 451311043 678983869 733487690 808054158 519358956 963361343 822166070 838778844 862749600 999877089 208415260 753939760 238312865 573931436 970882305 979691017 296108264 797897366 34111735 99281127 853258469 866956635 884898010 980831764 380212169 627359740 178343074 179503863 485722663 508362094 578333056 658142158 820978864 973970996 14002617 15862899 266106987 351880517 320085605 819979327 285924349 759112694 601072254 914071247 427384511 942766585 847519314 990302187 421019191 454479349 996868421 997080761 305117906 417640516 30735796 733259916 268315815 388200973 390810761 539850668 431642540 660855610 712356826 770373006 721716281 846450543 335450916 813752953 682034092 827625351 161489210 415663401 181485931 550905027 565422564 726682376 128042795 683213149 320342842 882686391 454952143 735379102 224401087 859081089 193979384 932175229 576167378 600858080 618784934 691566602 122716541 342195390 777128008 897982305 255536053 723682075 985410348 987772402 952918173 984483974 952009599 989400637 149025984 546020150 834420015 897600346 153670186 999396321 489174613 683158674 76113060 559557712 255196225 861217093 781045020 919534312 369966591 702588743 977114699 988081851 303823780 557152817 455794439 516219405 473598043 635524428 610457497 936430999 405289620 876560841 294115535 300366349 447958559 628794887 499091178 919740544 979671003 999894984 398210319 972687191 273581916 386549545 508868824 889619406 75303258 253667602 162756215 382077342 715659490 928976389 107191607 543122056 493847340 501083468 493685068 672291137 179887467 974906067 580853997 808265397 916162569 929075483 592619993 971363110 608849118 823228750 492988092 545585989 811239525 927808903 196204365 742494799 978723683 980916695 32506818 856447750 195977299 668329555 860355118 952098423 307107958 385863742 187629669 512015263 585685452 752354539 758987300 811393968 717498854 909290239 939864292 987279613 494010287 983707534 395279705 782094950 271918516 710129007 205193766 226247762 856592535 918084094 503375546 766015557 703990830 968911050 612815801 968814857 740796809 778120014 771413298 797673872 816063263 903507540 950992539 951670205 456797560 923945899 931793559 959332398 992476437 994515852 520711505 544142795 753785430 902776284 137336860 818806193 818751442 909762763 212360690 782567361 92817037 240171437 397570163 943861149 530499370 939779588 576268179 705110881 156176707 517939247 518398638 923954741 926386908 967651661 688462654 805971415 447741347 528507456 740725665 779671355 278549242 922403642 58733172 645193802 255778188 491466092 159450492 678958590 25190986 883277308 890832765 987130555 491129385 965064008 110289303 267242423 960832314 977754919 755734030 796277170 270162304 857752942 202901212 528950180 549977023 771360853 286681028 463444314 72671567 83131862 801116376 981264992 438482646 822352270 139012263 749250230 133868397 971044286 93777395 644966157 404374687 892913012 450403938 502374626 126981695 520624672 724505771 754949709 41648205 312096902 306882174 446163415 820718712 958333322 766235670 898072113 566553897 996214334 622147247 884574692 493630018 833215049 221540347 553600400 705635283 911234009 636492571 831306997 613443809 877048934 588619567 830487833 603399161 745475664 125548765 636253806 856475229 974909185 464451014 727275783 299420224 459468130 889043036 921661033 997784416 998994661 130319667 860513555 529775714 664538005 211307598 542000915 990877734 998911767 283555342 406413439 710804478 724555826 265778887 789621890 111959822 229515245 149194853 548418195 862411328 939609800 323211233 851596130 50735673 868303094 560484164 847489898 363614050 739416005 417370897 662514913 341170429 830080619 760737508 836238656 43309580 831335962 26760243 690847970 632741025 727010949 958741006 973153641 810074824 903772141 538507922 924526375 399988677 605231902 377496333 562693191 34929344 503302287 354777976 948037060 296227709 747807667 810413874 873617916 903323423 978295020 988804377 989898879 702454612 824108506 339322537 681187467 634111568 840610524 835579887 851106742 447731856 785924439 160897823 776193166 301685092 985965561 827026050 861903194 130464317 570084193 117953720 338898809 357754097 763530242 64839589 185589334 93160823 614062832 76411861 881363662 68152000 623481013 864894754 884637457 636315816 747966371 522247395 947392757 386731215 938022956 315210312 499996833 495885329 924280080 771448170 985826885 323674467 721046392 957048438 988663934 368715197 808811602 455975979 761199960 692920839 861617409 447223187 765763686 288036683 440874527 650782196 714329313 8211612 551011883 58495702 84269994 383462426 852549141 126113594 755143447 960457705 966517440 796589268 925062909 672810442 927665013 583918668 692038222 730709588 835576672 754198305 963605788 750914231 912811523 472683676 666228887 129758561 540992501 808022759 916239241 223553826 333723749 284257012 338299847 63045212 412083421 418422904 812760789 436704870 440430940 346561443 738692167 626133304 736655685 334461305 646826233 622589602 957961964 895539662 966633900 144105435 594570425 822548497 959666962 264075561 673887905 767702596 988988582 583932434 811633358 309989781 365496118 250180654 289163205 974171684 987754920 32464436 106719961 451229695 704210187 296252268 812563531 371621463 472108492 554601347 895341648 199661694 707589064 51396218 741069012 750569706 987936583 496483341 926569664 618162631 993552387 689760812 891775261 781907661 899120220 746593336 826263305 728419871 952891105 306858014 884636889 266866695 478446648 384376066 644350536 594329291 725287013 341349111 357044920 125897729 539673742 53475820 540814258 575818738 611211737 748698733 881847118 219485766 676511992 341282717 874101001 228955426 467270691 475050825 628485190 532190297 869364155 760349248 903293443 616939632 870071291 529614733 540327471 298442036 614182473 254757453 567164474 245339952 475317112 319598235 405415660 280052594 988812174 231992688 953005023 365506813 442410726 398397287 613771708 957086187 984053469 154712353 526315383 432326489 499939867 536898490 802290558 697619594 827845652 409146518 504483005 827102865 968391143 970927683 978959933 56656412 511059687 611596240 949450865 365160946 809531146 954139185 988847060 716801897 907681391 956489567 995996437 785788277 935721695 605400926 898113558 586790942 647349131 549199748 856978421 471976678 734395689 227317494 923280863 867576806 883711781 499893714 674583132 882964890 963901133 499386884 991978330 547671492 662586824 518466706 578175736 479860194 590379169 469558710 564259657 958049427 986989569 254162254 529114894 732768427 765848092 238157000 370903050 714270892 734683204 138062440 557603820 832820021 894921435 514583598 960884829 95362758 390227302 415551209 639133606 1970385 453998487 814690738 869073756 894075100 958230285 850962468 940358970 632399 621257620 974961618 990326616 309408905 327445347 227311993 316106049 239692358 409697162 375870901 888286096 898504741 992196133 333583710 836500633 625452551 877654426 187723812 926002515 705532611 967070554 573202218 942432380 280666476 825670307 189372529 258510337 555060069 892751293 231476910 750271682 809942909 857333314 60511798 604254338 640304061 707395036 596770343 852112552 629357890 960411968 290365135 634440248 472397614 856002857 294262009 526594861 523267388 998924133 396670353 894674521 109278984 877442838 491486278 929626091 489261579 621195375 749934313 769972748 500840673 879587513 648457852 780239152 60361001 214631140 314375114 524060238 796884380 932440099 122302508 194139449 406340374 424946533 450156463 770036589 71413430 766156287 243371701 421499650 55543050 983869464 686674368 881435742 229732842 820124443 624403375 686988235 416153682 659223063 955617982 966645995 169007114 824854606 277216489 635804253 179812271 769357424 305233296 694634623 201318940 880097333 39130021 428824744 359732044 509195963 438482181 953112286 264958145 313932560 328367543 522612626 255701706 318143981 631275315 933687597 715422709 816390247 423175429 918147787 56414331 61628320 978548386 981448513 990853959 997736264 195383370 419130487 42268827 373432671 940601922 951429736 438172537 933350910 37735881 332977709 146265072 446907927 653495744 845281431 485540892 982452261 449079947 997359017 517016940 552886664 558286851 961346246 472810249 924850580 739504784 898296219 968152083 991640459 734031357 912211263 200882363 392855141 455858163 875633967 273548804 395670884 942105289 945747487 762397854 991636014 446276820 956654726 717969735 812174285 264699790 394219985 4695805 21132325 789718507 808629846 595794639 808976358 91947001 540759326 697469852 892350678 130908542 688120698 731480983 848709236 258493102 592956059 278677790 594767823 867695948 997139208 649780717 976561809 451629882 607587125 992790153 998949781 194469952 676970901 721172451 919833516 898194959 961046264 46056143 77786819 260625180 890678394 399999888 883398454 57981129 372076698 108927932 892010872 323994414 750048973 247856290 717837691 905638103 944077299 665696115 841901227 198117057 838020694 349355001 394995456 308693897 344893465 822552893 993203157 506851236 570624823 431073138 899959202 638925444 906876310 966067772 982981283 886842989 987847304 133626525 438862090 471652996 916544178 350910600 358034254 842025230 980024809 762612605 843105136 153045881 673419504 653142949 756999815 531612243 669176617 795499649 814035642 759513700 915959627 331361998 862321517 409137730 904872233 713114060 957512637 348065885 579929571 138145880 139696234 970008872 982353315 439572918 453074205 886114955 922290569 587790045 996499861 746460562 764038868 526848861 779315255 59929205 617490656 520040126 741399692 328277935 914860395 52079761 547489807 123593516 209450776 946696980 993785353 547002700 703734318 573238624 713774929 1287290 868081550 933281155 954821360 864699253 928249770 198538800 506963775 482116142 989827588 939121664 941811840 146443083 465827491 939362515 942357797 53514861 437359731 816259218 949460866 511059504 775394402 707472516 773254003 986945151 994918042 221642979 881052165 426133831 458137815 400251110 511131245 954848082 997779418 752716245 879481523 603437948 787240668 470717610 555931260 33704174 82003068 325716273 354458966 700073096 947125656 599799212 960576730 436343409 858053306 891508276 963995829 396557764 546998426 84564050 807834172 634385804 839639369 73355200 365307501 226643561 244371612 877329580 999126908 395780402 933717269 47661509 859581187 714832055 842056843 288063391 610992303 862434702 937157655 805396748 949469136 929522464 964622745 46938144 826528942 420398019 422672295 612165578 810163916 508983945 977307228 613161909 665773975 907466989 921565871 91212181 980257898 315849877 601559275 498969037 967038724 184663758 753040799 511419558 693625631 329860799 725786649 286900187 365554444 174100372 621772169 13027737 703159609 344329267 775269082 844741627 889128876 208682495 809436442 683391959 771569664 461486050 849380088 720101710 803633970 970807475 984328425 248585431 353129343 126061498 800742303 545221306 715754976 726365881 820996749 179468736 462210045 98284936 725485976 329782661 913450012 389642701 937242423 309822254 805434327 45733146 182548843 50618028 127255370 846362853 861945799 483104588 891149331 925740997 946092249 47187776 825599345 638447740 901327407 755259288 785912089 349049237 496273059 396517093 994818604 430962314 621098091 570668730 972759177 12363508 357682368 847080714 952342614 659665819 725585607 923896687 927949505 609940950 741865401 870963009 989084211 50905815 455970183 205193178 321003688 544723562 573445625 171051480 236821952 138093892 796722006 37865255 736689205 679719876 866549245 120908263 534352740 331121009 590788903 488562342 934907639 522273172 855891621 908156612 954174439 851170382 901082374 131777289 737962539 531477313 889099262 480304384 925189424 289223812 448625224 846025946 981628331 880406656 914471941 208178470 634369789 454280546 857805203 32051669 255529906 13781981 961318624 882765674 887864997 290450018 854814129 94673613 583611533 781024495 855714193 572762998 647246902 332061436 445118072 584745255 710557577 843063149 965157455 55217519 579231082 988565055 994903008 225789975 505026393 858218368 885111848 766131186 802167108 453345403 899875613 510626539 565194526 526669145 711526085 279256839 726501822 545000261 605744922 556160914 864815472 109787286 438832301 193186150 496507215 690143294 863476217 4414521 438824139 576647201 680104935 138660278 704219704 915039673 992549601 762024540 882100776 481469470 960181590 433703026 505422163 114263782 922950781 540981159 589848845 42057208 424926480 576136138 970167295 563763083 611631874 209110696 313980001 685560994 778131642 746951079 837119751 366853025 962686242 421512651 772391593 109017676 872282567 651163151 712037248 197168775 789968613 68317943 698628046 729697883 791410735 212998476 980194551 863339683 944935428 46118011 275046797 310467185 779768635 660092082 818805729 391425677 900176564 921814523 942184281 298954886 381957306 684266504 838473428 97392286 567771076 819494830 903549392 820500066 974546334 427443429 802709918 779354274 894310504 17855635 712563714 921543816 997317295 324090776 641738761 523972126 758677094 839525397 847371232 20897061 952255935 201960658 913291684 139480383 953470228 346125410 865452775 55019488 302324670 686908437 846206924 47607730 992547578 200728200 852771685 305896961 759872584 447364206 880357294 781705336 920916660 714577622 771596486 615702960 962872689 363784095 789494606 456860306 706149358 299519537 830633179 161461739 322079266 903150966 976018013 711058856 759226580 325516853 863142670 642132518 953366805 1148421 241381241 540742334 733486632 84287342 631389843 475426717 814159970 298055661 622380649 251450830 479955784 483389279 869796006 732166138 942407537 355938172 741783334 263703200 901929458 498232186 860166671 402625192 815462733 966299558 979011002 586587047 943962626 202572625 905712239 738567343 798270408 215661994 760720639 238290798 686223049 225850227 619078504 271271698 987020962 760187213 779364043 869601091 915276495 66868093 526341975 432256636 931026445 404077301 897781889 267320919 333272373 383371530 813222548 211249910 303400736 884579699 994166679 918457267 996215324 845584035 912103444 143276985 680464990 130039906 366329456 487070904 819168162 652890987 892222567 83168986 776745930 147858758 322883231 685397871 811268464 434337277 624129286 681369236 862191261 730124561 925765427 607171660 834523659 161626436 427744321 442447994 852854498 554585620 901965253 670946394 932499079 665747545 701056708 919980500 990356814 848715734 900788839 576723841 904081482 399473337 482507706 646190790 853419882 441325711 887544326 842529257 966607829 68773211 495726156 773200305 937184223 245829359 317114925 55388361 69160507 385031186 401931023 948040364 979116850 106640361 144650391 319170063 713713437 760081002 791882246 648810395 760894409 349675152 922982118 262061699 616433251 719824808 897945845 924808345 976238271 521017959 780770590 8755648 548850734 375817101 589648443 372639672 670757023 585488566 734637568 501730895 910479725 704722967 740952506 243555246 383118838 445663888 839293385 603076521 869661876 39899033 617815008 92582022 526330102 315130456 592512156 241660273 863032361 125211297 126372611 443670986 965183639 326170863 366534208 866983747 904557585 303244224 646252780 465768396 475922269 874316453 930321413 443877627 623444304 506575661 520346224 197477860 219130708 805587685 824067999 879067241 903697460 15905920 793129734 384106307 910293659 351951243 413949574 670297613 818751376 186214196 827675236 714708710 859360208 264645107 516793400 696234500 938103603 508357002 763336574 131752603 993196952 889730815 996822007 481440960 580551104 882523940 907612804 638945637 640486821 427164130 866970821 265900740 829172887 851640611 991420071 840462164 986333602 486321570 833060160 800698693 957253781 583617006 715062375 242028799 660779264 362771520 439400316 198705197 470749397 795065320 843324394 596733620 864951265 596392864 670205171 207049716 884916564 444520716 637358111 916611787 941048173 810028705 877672358 299993094 972735578 914160339 938274130 207235619 413850776 237856245 518714989 365432502 826904169 521303288 917398743 957096417 988231968 920542477 982836053 241278789 925895752 326245167 698981031 163737188 988235737 258851239 311460074 191981528 767441351 788753010 942757179 896009582 970074708 424010081 492192480 877400114 910959092 199305085 713601640 440389255 764035817 176352910 939087912 353467304 405083454 991732187 996364780 412546716 810081333 964439609 998984304 698009767 925179911 122581042 825576504 784723447 869750248 254348516 531570954 544563391 809540700 237864863 561346259 528560885 876639989 628734695 920078603 711288800 948121814 499513883 699825360 881389091 975990050 891360618 993008458 536540525 775106118 309255237 443885691 733788287 769339646 174767101 942803205 255759513 359686337 360512900 469311731 566369836 799814312 953814733 961780421 788409278 938710219 580754676 659543363 739810714 899272090 975033646 998168469 392121834 394961903 936398040 971301033 701437786 710539895 978656076 988311707 903629638 985480363 864197864 891028832 96007165 910561321 795346647 923543384 89775813 191118614 423434149 781081405 739704366 766765314 791400248 942287405 666571958 812209682 677525120 834440706 69428289 127646334 515893061 851248154 863655994 871856949 923574532 971725447 346016390 449047982 302797213 864092572 930019913 933462399 343511570 618876711 57805144 169279310 993288540 994784779 108959184 522530023 280976739 442728274 913070040 992072531 654472 34326936 226143710 500706769 940346333 995148536 801034250 815361403 691418250 963650667 917254307 968797468 288531028 644291493 707842339 753701866 152518038 696974097 850052939 912427206 531815795 728424154 39684894 52985926 626470951 797951235 536014628 541637141 127659352 654599838 738264042 947817141 377973752 895585279 994353535 995885422 716527350 977284141 62230116 217971185 959534929 995488248 965041339 989960596 842837524 942929727 783599540 939771873 93123142 494266704 483600087 603369740 906667056 947815100 554020945 614454395 472763205 988889576 322226985 679219446 485304918 699749582 821462296 825847257 311624258 318053960 808935954 844050874 565220 276260939 657607856 938680559 824698719 895732893 419896030 607978444 354903567 739215579 426706847 891036851 356856425 954582996 950808305 972788488 268951575 348624839 691685516 967216995 82702789 292186315 289345245 981374574 881756623 900142438 435715049 638386126 666127602 737173237 194554392 644767300 612761130 711628993 850591079 965236752 438184373 471752863 349456865 518905101 280604168 436593879 349077174 849671461 602989992 825644711 585006701 881643434 960859030 984662527 653635915 961594410 852754455 966818140 724119299 826073167 460495068 926953517 85084278 541162384 758281525 988897519 319104557 408085454 420088420 430890684 32625484 212994215 666885032 996296308 325855695 770852316 826528231 949827453 576238635 858428664 742734354 934192825 347700242 680745107 831100674 959170372 289657527 685111475 246015881 254110106 775276256 807772370 68508446 941365905 285391922 356160917 38061866 938252411 765958994 951354864 829271293 968094523 898067883 953237390 711124846 849392662 779049360 798127259 802278363 903591680 475530787 932785215 762418514 933512349 586044782 646656054 106180081 983116101 955890086 963880321 945322468 996757448 579005673 681139832 933514503 966209260 245109769 494275309 218805311 285743856 999019731 999600470 922039249 970772210 544607245 649179140 452888359 668648586 74034291 654205979 340988478 394559573 568134588 735074342 454789405 900153046 58946840 712406317 322275386 938087537 483026329 912524423 87235826 139283838 872915688 947300319 450290053 834434484 532390047 965835376 126639941 131431959 869646734 895455944 839601757 965708638 116446299 508175597 35170592 775919956 807511893 866565371 734507009 770006880 464907141 930853007 876298914 949957848 206593919 404281180 221244456 236436104 794960349 826373894 578071148 812735160 159019245 978839704 555347086 628734552 625548583 898919793 448691882 798938749 119265970 228749001 750890667 807833580 849100884 850938756 640990904 810729603 172268509 358003283 978122611 996269964 630503469 851491218 111096260 927374813 309953516 543396132 717540414 730892717 446518674 645018006 990366781 998716268 631638054 888289766 720886963 967801784 415348561 721596219 551667859 734111405 717875092 885626560 770462284 970659406 145655741 644599031 791174848 852124342 815696254 905367445 816625796 871479596 600833641 670842434 204032728 377676415 734217146 955540296 226306338 945998326 437600110 579200771 137819977 245695928 235669105 678382894 83762141 943020525 795069350 969128028 600859977 753215067 604820716 809270199 363146588 672166958 508713799 753862408 859649576 912713317 535693022 861378936 303657692 310073071 269824647 499283546 18444167 842930015 387664048 766304100 659959590 922915807 936398129 962640813 209994625 519144696 702986985 755989064 528012187 529612764 856644552 923458188 121039758 214639998 661006111 676322128 506493436 901925611 211598037 499058122 465410893 996733340 438330558 594009568 417803420 754009496 98441692 602521622 418610168 556475335 828986052 961771517 771515062 960087161 594647514 917108235 510174826 512283939 943421933 978438239 415532754 490864605 537025032 792944688 726108054 968388000 582805820 588921024 800437212 842006817 156820232 740029830 398307359 537256376 447133766 479148153 107227118 598796379 697114306 837023696 834775633 850233103 955165966 978546004 109867477 650416087 983020345 983431995 41293575 131372047 964664118 979130947 306058121 421165452 274028971 793999912 661777102 875697194 940216740 963444731 735915656 913938283 965214238 995701775 116453907 975738875 979178661 994804685 147440710 663641447 455802804 738708350 89728880 821829563 811170523 957911292 352707380 433621141 316857926 714928521 785429865 815329676 337659886 727511783 215644901 699014336 743388537 823308989 927460261 990239636 874092379 945382702 49684175 270249417 384327035 392603586 383168126 467006499 873346919 988755482 689504733 945236607 616326019 763436282 142824777 185593803 857169760 954642491 307095835 708536512 860466886 965587699 684449257 848386848 791583849 916339068 54725346 165427900 394002981 916101447 885212153 928005003 352125350 484024362 795973772 979722048 14531496 156860717 780834510 951744651 157580072 865193337 846409803 858271739 834452681 854815913 762794666 818533747 6588987 820643585 212847951 603766574 884712304 918127420 386473091 417068976 149308811 483054707 887018609 983052395 325557256 499846997 786540953 789663154 994479503 999946640 885245039 916799654 826286655 958932066 500760434 820874336 28936646 559074715 370807002 631071219 178751942 599172829 691612348 722441933 268593204 677481270 520283672 783624153 205263447 211708909 635515752 665859491 233035735 420426639 294931017 805528672 66898567 271988608 672902069 883747035 871141813 964079612 128305595 460585613 205298161 405645717 38227087 673678062 338508703 911198427 357952427 603752161 940503911 954274420 722664466 929921859 268410004 351070482 772039508 817632326 483229736 550945572 491377690 588430202 786419088 839591335 422144164 592178564 191408494 919912119 858501114 944264400 321186205 533936990 481622843 610934192 214183699 545853599 9491026 768260874 758016886 843890691 241961526 448828462 229249019 313940386 142406064 899764400 273864430 284620773 984209812 988161351 945641672 989103798 132685136 180148559 520410273 728865586 167946585 637143097 622476261 943635264 125982977 690589398 908989594 924140146 171080890 697167687 147921076 941796024 681052894 804539501 920283288 978687422 511921331 546200044 112181622 539138873 926867620 965193988 194005965 521694766 694554563 787766962 948447265 976696891 755912850 947510149 442125619 959297057 120829011 786219503 328511636 485313010 161881327 558762322 566408392 984775211 497597884 863860971 973170415 997064364 134493325 527084335 760475637 850434179 122183273 527742154 466844895 827764882 591275630 895421724 190763077 832868208 875967061 885809274 270803174 965686345 264247841 627232367 457709482 773212328 991993165 998273581 6886549 940936347 815822591 890989647 473980477 782620647 632617120 747977357 674918510 838479851 619354176 624774693 708945843 847967942 591697967 647050995 934236538 975000335 352386142 592640304 442366801 454299535 123507743 544418029 762539108 860960043 257150625 764277814 71810981 637890370 456381331 645255620 148861921 919122834 821720338 919766012 299895876 463466040 661933950 901470577 447028278 644560887 581531183 856598199 988918217 992071803 163876427 852018860 296341325 857380133 374153025 418464534 920135159 955748661 40365169 585731062 484589626 618438552 277793483 625096648 736969589 841681207 61632149 315525983 371841569 607759014 560726240 945830046 442367571 491087369 288895295 328342536 207082694 315648854 512310847 889063357 81580187 510363648 21821605 497777593 109268641 985549601 114776392 938143092 472314429 660379495 356236584 683031423 899454546 955121600 931290609 989881192 694595114 849117207 183741610 539099385 388573 860409567 179961008 930541693 365798128 767469140 31965330 688813079 308652821 450837184 212179745 229003822 577943297 944886278 440896754 989528980 110576296 910808586 436057651 816929777 810927486 815861422 29258313 946723689 956150089 962886802 926866159 935804210 193868173 561551683 230570522 898878704 706129409 969563803 47932386 922162797 371580335 760133035 758631385 884909940 727556033 843420890 809253440 835955535 985120486 986417672 228332135 347561972 308837602 912265589 615254061 988282660 732144920 909758120 301539073 716004041 872816929 947721712 566731085 732500950 173042567 176187286 998346307 999455972 15523481 544716242 135108515 793364374 840777093 995831051 279720080 393150660 3977563 324393167 686824133 901249965 733636551 929902549 600950464 754038883 153231049 580741762 879249507 893887308 192548332 536245726 165872070 707837867 634601023 721633133 411494774 740502270 371826195 596721869 448313761 647438880 17266507 516787560 450574938 610774738 929765350 948450537 232663393 261719548 157671253 413237475 987866724 997472119 150097680 780936850 730307644 899541887 894236228 998210260 596600557 618226487 489577332 715592652 216877993 865192681 560118667 825385685 634238004 767177217 907331740 961757337 243977952 451324043 144831884 820445707 599648048 663353195 594101554 808007811 556401923 972025657 313652960 905458799 326769381 937133283 574415370 936372990 589130594 989490631 285077632 572485746 278316185 867288683 889480137 997442441 22904439 626253347 763397512 832699296 628910477 712281499 933793016 942518021 931637264 985226646 76613747 763249047 571666090 976040259 277377070 626869922 220668638 893049467 372184338 606712920 106439619 606072994 773599226 821492734 189200209 861914140 831177825 854509397 254473153 716398920 562609671 748051873 586948469 862754226 922369566 960280442 549189210 997695407 472411545 575814715 425477803 611157352 340157986 816776411 614449027 835490198 530908304 789706221 48149679 828619719 235622746 688704313 791980940 979954830 641362582 656103402 99188854 361889300 494738497 615965001 459021908 595070275 560543625 637265006 401517947 724185721 248396234 705895149 109721636 929033233 774564549 901264977 503124677 880484473 213235786 588392423 395438781 591409077 73900670 863026039 605630173 752361285 248488026 356357942 628794372 743805906 464691837 932848064 384494496 702066754 385224128 577029746 525759622 825591019 115588591 302201256 561167776 819825399 659716725 812925332 694324331 935683803 351341282 575444030 949700875 984804399 439860257 872630105 837321331 976548651 469512722 478622371 135250767 903845726 670921801 693046649 669738814 694639311 740402635 791738981 45176298 477655117 379395070 656343341 531754180 999548631 571188888 977756268 277191183 443539755 690841054 743390991 302619007 986633069 803588931 985536811 967451526 972306443 797265111 854662547 504597368 762242296 261536545 854905211 511636214 932378585 287780575 935682792 372442057 523464066 691700455 845242943 315354883 948709810 991704319 996542022 23447291 764338893 352940717 555677760 324582044 384609501 396865527 538758682 819255449 825667183 155375490 723342018 243590104 355143597 500213870 518046308 424356241 905063525 458551403 783627334 698255679 746146987 289818231 813626296 813697121 947557298 295208957 726551925 314084092 788274147 244203957 847647984 333662303 581955849 9158738 29581353 872073617 878167987 994078174 999267876 776026825 985558907 462279170 697343474 29315488 619717041 202657475 672034391 312873924 911032349 936823149 961708078 969920622 987587167 734645342 868785526 609540756 692814253 472044003 949681057 169361906 587720175 826310437 868052613 605215978 911253312 394697801 941633486 587022122 797356305 392025338 657453701 978864038 981638654 173602934 549968559 228066979 269911388 415699259 568491838 488259825 785276204 808046510 988083993 972724849 972750700 600985897 875887004 115626112 671206887 467570024 587270558 982206220 993607200 508007169 966981763 982633156 999126486 201378098 761857024 940208212 982595459 925187134 947912898 412729246 422730104 238070412 240448885 684218982 834005918 24112040 467670489 31824403 863850162 376936658 667353052 507662499 933083633 759378751 933506527 857800872 944956750 753186143 937547351 927273375 965569617 640393204 706497742 775821317 792030329 523413473 903674301 356382351 700553753 529108451 761798118 1314950 417122296 75116611 972041613 424046967 619912415 3855674 960767640 172246864 806668967 691116288 819666838 985069240 993970769 238189830 474410589 778780757 977535334 53999010 709323423 275380686 934004759 27209988 856643858 232903148 794607309 1414252 844525867 492407721 638676463 529839168 944942588 155826324 552036412 246588934 528934305 79965193 742012417 637466191 948369459 299368489 480847463 859205218 885786332 597908351 807906006 744564729 929937040 907391761 961589083 906111468 981377527 611777302 970858706 738216701 864064267 782198958 931677711 79310930 302050166 915159710 962138893 731872359 936104182 418694526 919190879 31813513 644518470 923973621 970298016 115498323 122204323 103464166 465044291 513014628 894014623 342160440 664023540 385404372 484963822 989180866 989495081 392984161 464717620 360690194 598506171 758381331 779737886 512239600 635958429 690389303 961815260 272902956 801783396 345973239 426696111 200799371 222455489 503285953 785203670 830492911 921257531 646990992 671845145 449349925 523326385 620373632 760018517 575991585 607431458 294612137 592039138 973086509 988981903 799489323 816473469 717710038 990421369 696079160 992548999 330918863 735586507 509410331 827791331 624194086 714645788 943000976 949071889 401508098 585569769 13026284 614152007 112114781 451821120 315434390 685629711 797678039 987720571 544284518 682930574 576587498 587777965 388810243 822544520 45793957 258501597 687516416 945032196 400125139 701361564 888689247 919086976 16335488 544698779 319466310 388180090 94768094 182446106 244326524 735534903 945494298 949782547 186799112 865176810 45768257 84110253 802221035 931063499 751252820 772901787 936701697 993659941 582386723 666387836 627074277 691218417 773938571 961533764 466483463 526146541 68316121 946951982 70744152 893026707 642715468 844641416 864532028 876857703 184446423 880432717 883127821 904399587 276503784 547871915 559946289 860982404 313957518 661968837 665346573 847456259 670615235 942813622 184797354 924816176 488658405 620441172 849435006 962872712 48110354 721676277 546694354 963376920 460435396 968881801 565145305 830533681 818730013 923900114 804296851 832032879 164442955 577944312 916727399 940017678 936818838 983590358 631234697 636838927 434094874 559792042 470794733 859581761 465605273 736454293 523260082 711533566 965587903 986228535 186986020 539492098 59421670 569583026 181284805 692481891 607753977 719924590 556124302 930246587 23820774 539225034 687291760 773415136 860267626 925321750 380303139 427117314 320376642 337101812 880083017 902958487 499727494 950801076 619561582 717551355 826174905 971778411 720899966 774322451 498080141 749720677 936729172 988390200 423611959 583023350 137893215 675094055 24630605 350186741 238917224 962582058 325320423 433107228 225229393 584859090 287889639 524768574 459738368 522333666 67448076 312526634 610415412 823780990 766811565 970227584 231940041 322328755 225565754 790588628 832606224 920606711 576262710 975845868 375411143 558441239 589085477 812672469 746361817 772920216 984779675 992028451 474606494 526996224 776352548 864591812 296191577 985885378 809332968 922291551 623560464 632749214 319755769 861475999 522104432 887722647 157069794 510585709 334418625 340796688 722785383 911908140 459669500 821332587 990395880 995644328 612926247 934422102 839427047 967647558 82264058 331222707 756963624 868023541 602156329 797688023 648865090 870162061 291195170 941428857 753634499 806038647 301775138 864898944 886339917 900944018 246753 81542646 79745331 989995094 81732505 103583288 391971861 644959948 34641194 55684428 554143773 638404750 934751431 953028801 438965884 669613004 775171210 886381809 829626979 846057895 811572885 857882495 237378569 328738697 619291050 980510572 287171037 562194585 475834761 864823761 345371185 893666836 175709117 978646381 35374861 852989069 780340328 972338273 445689924 872507265 29781035 817346768 507411131 795206627 529281249 911830252 858003328 997932013 5945234 334883478 557973981 788030486 284765664 540370948 910332851 988358614 782546408 806005339 755095857 791254824 367296033 579606005 247205323 306560091 198856110 770488499 442564664 601608449 278868172 992461206 736692269 936494181 727604975 788721183 506180266 574274321 666798603 937856379 679046777 843375111 596411933 750409179 25365810 964455833 207114400 967432088 876051878 956312411 347171334 443770755 27094748 835575722 95221803 142398942 794379486 794699299 725950081 764248067 226676269 371683507 682099653 847081982 237702814 761923460 147648807 369460361 208159141 370467505 704691634 909041393 633690049 964724859 135304821 726082208 16112775 631449250 740351145 976376800 152521026 214939173 658339606 945472067 67143913 273649642 671836487 803508604 744356074 849091058 765776731 803884019 355126109 727989375 597884893 973357259 917065949 920534907 719412629 741595076 271617294 728850807 950889638 968947520 940975969 949681343 154773490 694538029 991183047 999189390 268572669 999792276 4699401 841481303 884991347 906061384 58586569 296285708 958787414 993299878 20045165 365677809 717757109 986578299 441240974 818607109 666907326 830267367 656805919 762595833 194793647 961438211 474113889 908374182 1523001 169807984 805010375 949369870 160199225 747630526 352027866 720140049 878592025 933421437 717710955 995093077 514892961 603535728 684649053 697737276 464323818 973091126 619048096 768780330 330597399 481189072 125149525 328031659 398187774 968585026 761859713 891657914 258843692 497366278 159071602 224391862 7895048 677008486 474408861 895142989 291019580 476348465 984282478 987066418 975773490 977217902 421575047 931971293 938326472 962289925 598095622 703547493 8335977 618271594 961687892 996541413 827080392 851446110 834102787 991694391 120767028 215359645 948108072 969391155 266406747 675439240 145970198 477232193 754465323 826147602 519083774 946877403 722819721 996491209 678746644 876096520 791597697 886083191 666402520 679133066 673289173 745277162 635234679 727463400 284395936 716488543 22605670 467773038 548658705 878584721 794711835 820439333 502625411 714153196 418762086 884922750 11197733 616460051 118701588 608553901 669939923 840822373 456300395 760378410 411872181 906824115 601184296 626805742 213261992 391363357 68521193 833781437 132013558 716411583 726819358 865594834 205354545 453584368 261314484 859086673 740240685 775501496 643044153 945956409 673507253 730612258 904263585 929927121 39397792 632156880 440342800 879980855 35117490 534388921 18146871 268062044 225073595 751969783 880064218 933027576 134691621 158869840 453118251 821993082 138835896 272547835 661695452 684196621 846308936 962804595 292405235 600710957 483882640 913122364 947245105 954053511 286317345 396948104 358536082 880206317 904915207 979586704 987591300 998074990 555507368 871977383 937954388 983632147 908878894 972121369 410779244 916691056 710544670 788134157 171147446 799725383 76449445 919724611 868974550 993453384 18997113 510374261 637980701 866251645 272791826 440389032 802328471 815942347 867105396 941735795 354726870 611446789 347120433 651821993 674447516 816155305 267331008 448492757 113645492 455455194 574202524 803258083 498510531 503418013 519658289 809711571 299050613 647585002 800067414 998881775 926759980 988710071 856859908 862507671 928428340 959707707 956391343 994181648 37930557 588533847 75210622 408425625 137971927 401093498 806165839 990876130 789859639 817314268 729458283 956322621 466302607 938433553 36247223 488771369 508603534 592590982 558034584 836149375 795070520 962113634 369939729 391880538 821122829 854490771 324077054 976474302 858990889 959299292 770151328 880866681 727778613 779518621 662781189 924560296 42580544 327893554 374457090 575223073 25470429 918517915 861901262 924253306 287096009 716727740 768866732 871170407 131144737 672617668 516758762 698539263 568737988 973435561 223606971 619746986 928578346 984584872 464929521 726779035 472144825 965429578 815888655 897884333 755821990 948238379 329527461 597279193 223751484 456047130 640642745 838637706 779345733 909404409 28038564 905488508 998951201 999142646 57772216 213483064 902191066 955958210 359951409 500986064 633781943 916845837 217350319 872947690 654853578 962659843 231862691 831592469 844675110 876363792 108168145 943374413 692840865 847291306 666712224 826891998 929130554 934402221 658871388 712335826 112462693 871119055 924847977 960321896 390702525 506009394 968918565 987473301 187922440 715786549 288636958 975107669 219418535 376251361 153411132 195279136 223165130 931545738 421537228 591807661 972335582 986478211 668644449 789025802 252299178 533067462 427502513 721651864 209571618 589102479 805140274 887517303 928994958 958706288 218726464 436837162 626188277 895452452 732499854 898661090 972233220 972438024 334744564 751159595 863702019 895183484 955280843 987494864 760594216 821997059 444708942 998241121 401152914 785087986 988402044 994836507 693244163 823679709 108476781 959262592 785337392 938805719 419782097 846331546 681206665 775075160 699066975 866397169 4881579 444354804 613999167 915199945 888615067 919334471 826036367 907380408 588864601 714895887 82033419 548066939 483438668 859731772 488021757 718901690 594029326 974576014 310395270 736846309 544153901 805632043 620632271 897116986 464844667 510706369 197606904 422429799 130704130 248677504 720225264 987944387 932175837 952690788 880515721 994523035 440571456 774311865 414010135 504161200 586537159 666925751 748991951 804234447 592507677 707918349 70918151 456425304 636111958 983124492 303805034 754929355 367785089 661009206 463601193 849301645 146939020 350927771 860224519 927318801 487626458 816521160 696572159 790407191 699032314 834252589 579539183 911444854 461979526 979066477 975900399 999159371 906462872 981263564 785513022 973085196 156879645 356463167 906127603 994520785 951739464 968747562 607263461 612444318 809778364 913086833 379453606 517123905 456195115 795680474 54033613 391564922 895361532 903812080 682887768 936340477 394482883 749667654 756496172 895744969 806817418 907038864 785656784 844339176 964832758 984796257 430861731 452995400 547140785 663346432 360064439 667997247 883724299 897934899 22210516 516033098 353171894 814231331 276097755 560637506 904209829 992067135 379495016 878079029 209505929 675479655 293754775 560672398 467893812 774296028 119400399 806946921 703940724 840438665 100456514 131107938 30209148 657697424 777337505 951870986 250656914 950207174 145455751 160891621 491149542 507366877 613219083 684792125 540018479 822967948 715433653 983864448 821100991 836176177 391094253 476245580 673445905 811511442 847841307 970947433 970587458 998759170 616214276 674952122 601438823 717248949 391011667 779704587 604740338 999926939 217129655 854510787 876187216 933719231 142209325 181560121 308023516 659945927 369862106 506413895 751259038 954941285 168816941 233732600 119327521 581242730 175362696 619373903 68147852 385797669 284907730 906788206 360991061 896089816 504679949 891350015 966117615 972296512 120851878 229350654 20239347 796812381 610653327 711234582 278854815 803558388 565720001 766870612 849246854 989513179 427149764 794639367 878865605 997801803 918563616 958063226 103076294 779327755 732292372 890690095 504707833 863420888 643332206 918540116 888724302 923026033 567019765 958160487 738827972 753583481 550047061 702319182 710239206 922264610 125302922 870318400 70282488 611977958 692410497 980325721 749319888 918603742 993646115 997386566 83716691 106511054 967708344 984153563 845598186 951082650 363199168 737926817 93233561 301093505 250740357 589227457 834321416 906978115 790988616 806556023 70970206 975901554 45302467 664663764 388777931 764858637 948357685 965106404 948079927 977864613 555115480 785633229 268431350 472619739 562546959 933867634 694150576 712212702 202861935 424622613 103102195 190780475 362341057 495316572 354450929 716642308 334331414 670802275 252978673 769952684 215752421 361488161 626169054 909267584 24080056 384759793 837525996 858118736 327690450 808644713 964162919 993628292 933046631 963976603 919043933 986874078 805999120 884183385 230021229 401281713 724226335 807489530 864327464 869379267 170613520 172784289 676981567 949790584 798560960 810980845 566556816 759075173 937235619 964852392 215833398 348566429 482740592 863191901 223310027 593343967 916563608 946158857 689058999 708742908 807739769 944627661 236281245 800477341 822227229 915581012 896017582 984640949 821180148 943571235 328333553 939417614 70832021 82661619 761371384 968573614 650317206 996430088 752545058 899693863 894670198 994129897 122353914 325263755 834920891 950599585 521804172 715326991 481299593 485641559 867413000 960149888 950402067 961082652 946711667 962697538 593439129 680156080 92232194 295405947 520716258 877639587 397088053 544709901 20836543 332402799 598453652 899412959 411625045 948843807 989523691 996049307 436730636 665935672 449396471 575518178 74948279 934897224 428813973 515433214 297794721 610860815 681941262 774291649 703651366 708739406 848101142 931532736 416465126 991664324 325552221 777374368 210861495 780822895 50885375 538230047 464638838 791235097 308790520 585157731 741837072 831360001 677821829 777367108 914838315 933062183 195261026 281370720 156517285 232704598 358390719 873291817 23376453 596004233 844884153 881713029 548064252 632916842 386904125 983035720 796433534 932163120 449920212 478603202 4601448 874720207 57769270 746726955 293125012 674038959 444184066 955002295 75810024 537344937 137832821 586732144 579607574 671222179 316645176 934859436 649257250 786511780 495242960 577081255 517544655 632679198 793380344 949521679 262311860 563353092 565580429 648014993 250927286 559788429 510606877 799875226 210019554 654689029 766665500 901060564 87842410 469312177 640275407 840540582 407589917 620153241 434556636 832097533 762229581 910743120 768198725 993037197 206304088 209767627 170395135 439053604 711990422 996564497 537684017 932971888 751940720 840179693 759133843 871711323 578686558 704215228 196299302 747051706 951907816 952592004 714445137 735340481 108943384 915236556 469878331 548189682 282324454 943926225 742230870 894650248 512274696 576622097 420930935 895738335 762872122 883415755 224122049 941556330 194673989 878085482 492892882 875569248 249139945 835689948 323924457 703534367 289115410 752659912 866554136 935892074 19364771 557040902 732036120 801628268 277585989 763696293 825273481 923305194 14237264 57240003 352049043 640131039 276040715 287562008 416388849 703326152 896822261 906776132 421659306 516371886 802168738 815935994 248787726 542514998 860118328 965807397 21164147 125832203 269782741 735935487 304629966 700877167 156589762 368901666 503962271 553925791 567423179 646867581 987421109 992993815 33323864 41328227 310729605 517885439 292839032 474283283 865034909 953422253 268674832 542766659 93644041 691090374 27632888 523093982 604530225 743331068 222347124 538628349 247544676 318407890 94379671 570463327 767063932 839787217 307521607 823998373 395891702 837580284 877858909 932613619 101115046 862659596 112184601 286731681 893174126 955417714 925500539 960355172 125663097 635331252 632059834 893477297 266665118 974072762 381374217 652476436 418449414 604868068 55454153 601161301 587705735 860016095 614152604 863400714 613317951 975915504 229210222 922568613 31393909 944163516 747740073 875784657 145364666 763120335 84298232 523713477 669720324 739299187 643260179 873976790 152095977 382151175 575032284 640472843 293946505 445724104 62136681 911584281 116468189 632138163 930941190 988393939 242954609 795191898 512673503 675448234 788227365 920760433 997013965 999958979 633608305 913304103 385787495 979735736 379289314 623466586 108025823 683511248 13339416 243684402 856177742 883664331 239931810 660836763 755811402 858063316 801659356 969231735 852253405 918256230 529086702 940130558 362238142 973131296 604722990 735714896 44186340 673930819 555173117 666504829 452507150 528222443 842353077 897706648 98964431 701267153 23461951 149470101 574060788 960267671 962416456 997826874 929253134 956111260 632117398 982541091 973518717 982835914 405285416 568879343 586569023 625408150 944717735 975155732 811309529 815870745 193613581 405657766 685145699 931445706 170210997 950336605 945810559 978500688 34793 84416304 503883995 955345499 197440940 407000935 844276102 874492058 793649444 995417383 517714969 727390927 619638795 661217781 129711513 418303618 182264238 384264756 125621184 184692203 845998470 866527000 126429858 277010539 686568482 861696771 54572962 559819490 33098643 702929997 82649396 364400108 977166595 977175902 13061289 646052035 168832340 188960606 401472397 958041347 306279273 368557732 903124102 936317926 358793510 362931825 340792496 877087702 642839793 824904465 812556697 953792079 964032030 968001113 115238227 713971869 702877241 944084062 736425095 738260375 994392348 995496767 598766269 846250709 437318774 526770875 206827397 776985132 442946912 922326136 219922014 496694469 852701087 937343184 487732845 750688826 125159055 579257343 26631385 91020678 380270036 616160672 332638220 699842155 882386001 911510277 827227399 960894151 958116256 978322670 65690773 523102360 844612885 871866718 591522081 817332583 172077415 734105362 115477466 806201491 818825630 923117913 212733374 606174673 114556129 814396101 43676354 436040839 515012545 937252399 101366617 401060326 687587501 984167957 99069292 522805872 976251783 997802292 534348552 701269266 523202127 527565162 949617724 956747576 991413978 997175120 408912623 438061575 548976579 980584555 996435547 997507395 210299190 873919506 476659168 880187493 749904441 857240787 744684898 931576716 151533649 662273403 757986124 758100477 990091984 998836525 600423001 625242220 774329925 791315324 679145701 803369861 76119162 138918754 983732178 992792492 624824631 916540247 152582532 564479468 367366886 464674858 494209207 639331368 992143602 993648590 995944059 997940142 148892824 517860086 505437271 988062012 463834385 478845727 961302039 963254573 986048770 988941102 131031662 661835923 262571717 661064539 12333887 921642776 238407255 375680086 188096309 753125258 325371929 884813565 266953872 620920652 330937258 370507153 481339910 713843785 935340531 982365256 44840058 602196493 125196864 407546083 785186423 929335202 936300618 937257644 967718151 998249440 499241576 818868100 793587605 944307233 669024080 724989282 738107841 815370334 634780276 833510219 53902763 456550012 985906145 996908649 102986266 823746823 750052600 752704577 973052978 980428483 481836795 847305920 862451958 961989139 499930031 563926579 897433698 953490355 741149886 914596707 221804651 386712170 718113553 828999109 349555859 872615743 295058479 362058961 379348101 647421588 118017927 280871477 727789353 891795623 571396527 607464875 814410224 833874760 585439622 701834035 639148975 772997469 847806814 969455101 143018806 834769479 839351437 982375065 432844938 950889648 960841155 990276710 366269766 480943053 700553954 923041715 91153604 455153410 570163617 976717513 852867356 911737583 379846945 470687199 110353452 334586079 215429372 452314430 428597384 894901346 271569437 490612992 829503585 871019177 169405989 250089936 539665498 920913775 594374973 994779498 479754927 653352113 936981004 971968528 555085367 745118992 700834181 868995066 745988704 747176978 38051803 928891147 900013811 986098345 109009417 252078847 757781749 922378701 795471547 903876796 286422589 800028293 23252751 112075349 443000617 572622528 237739701 873262024 376229365 765699845 849182733 850366031 373354473 892228444 722095857 877517620 400439994 535998089 741266561 913087360 833397901 933980756 71423111 582292257 355590884 645819600 776765386 953033866 428008565 752568559 196860275 318973260 279846027 324134064 412917603 878349063 824053181 963011037 984711314 991231960 372894783 568852934 967168907 992875373 440731079 796024964 493844011 775131367 639722423 781049691 584029010 676891588 512916211 961396795 19344483 993365726 766933709 824677914 599218287 907313120 74014684 305220563 364342089 415531158 51170187 111915978 555252798 688725296 458395543 832097275 677591290 754410108 328419630 343563063 153922104 326036729 522018422 668924178 406312255 414919402 950717010 972691347 347909900 508002615 253458890 258024581 167251163 602709908 213287385 394527374 577882269 611329540 387956479 656926469 50058086 715328490 958152964 958408767 261871382 489006185 519104495 714785916 916728478 994944783 678304741 683664790 222990886 429997911 208360279 782584778 301394136 558302695 133556173 859011335 789813807 866692142 731907991 736239280 396451802 899529862 614638940 935216493 512356667 723446258 729927081 913999377 855139591 993082473 653490356 774710773 954632011 999174965 623459931 936842535 138667494 609258681 280132287 861715804 682423222 688644535 170514536 448471394 457927057 540991822 8410440 31495131 155208438 454309036 435501434 529025802 10306018 970453351 401609654 629568014 732593668 825810476 471929773 766696163 596521510 730791329 703710862 955569223 481835364 943093634 181366226 354539540 594298129 981109897 121973595 316835124 344675936 593251264 581442701 959037886 511274891 861440502 915157931 965283973 617129633 679151164 563637883 822349351 379449967 449542446 771706556 862116527 90595415 568424816 345773857 761443643 571226293 934547191 290890320 805504282 677234934 995504001 477070661 508633188 145109557 966136082 592509119 777292291 999226459 999289328 751884279 951313498 432713860 461531043 311137902 876886828 258926466 270901491 379228245 672052313 313121626 969655333 556389766 793570363 793395107 919386997 67554659 169231388 699798321 968768035 601119407 984385138 768209904 835968977 527307985 866379485 791632814 875985246 606237025 838601921 703817470 862807867 926235811 981774437 95116127 799341742 811354165 940867090 506426988 939754765 367213689 762130488 775129162 885296833 752716061 782664236 720652483 734516828 465747628 874512519 873507221 939170250 667380479 955608261 137626501 584179783 168722264 597364804 456765923 667746913 614203274 639097267 27433624 473827048 875084075 885183221 905318653 983167863 948705522 954489218 386223694 457400246 902814146 909686912 335725251 833822686 922914915 937891358 969973527 980707632 912695346 940928848 43615205 94796300 427220390 659473410 785014306 974596395 831974446 927822873 706919471 833304846 913562200 994371862 314231567 353594098 760884179 973846122 956584303 998063789 569506689 700577151 62027239 903481721 701445765 707585262 969793025 995613837 94649065 591602486 720505148 790735799 248660441 775835264 428536092 784593540 956114687 983822928 975276726 999192139 573564663 865017974 629155645 903526529 829304070 882084541 936021392 956390834 423922318 883486075 663436374 965239080 278453800 890551114 308132357 677793071 108201230 180610610 861176734 863253007 308920075 357996329 424518667 511927080 729630267 989005855 573105469 586339487 590335843 787442780 600018485 809108019 682076584 884420281 826826239 969849859 761644151 826823875 597545229 693400842 421264532 845983763 810434135 883407539 418314763 586529051 421769267 607475741 512064286 637676310 237226207 596392171 856002193 990024196 42369824 801804661 614931478 726610990 815973888 846511964 975853996 995463590 42021436 975987269 116527101 289221029 839599645 848992543 854675731 938857776 69583937 883025648 953362262 966617028 563878497 875410589 760097066 970061319 480561336 548076152 720911957 732899815 339612112 593567260 929855528 976956616 687652985 763520884 216836956 336103663 629739302 871756121 779236735 961154698 844518107 976897999 621466191 728082004 915682891 998789286 889020517 948507105 532282197 943309010 548074817 607661758 93870010 147366219 822481437 903688600 14543082 406805359 771176188 830572026 369320184 880290960 250443867 492906054 930774923 973978304 158013629 184597224 218511396 987970697 72686477 561655995 277669664 909640038 17062085 716786260 556492233 605581840 952483939 970440656 492057733 639128133 15824116 26341074 820256554 919726664 558081387 585988034 188286691 837173415 35188731 850819991 34623691 745967987 110061002 400640205 179727717 808838752 969418411 976958243 632363715 702377381 226306707 329431997 679654545 715020214 138761521 638835586 729447741 776560864 76709472 518659806 21207977 439199638 478093460 594490528 313110416 785388201 410350575 435462998 459407093 756935385 714541696 834435800 473323814 947771402 195299078 522337534 121427974 939196090 430166921 466722172 308458000 687070521 473760309 919779713 635361612 969995738 260961973 963049657 732717489 896355617 948041600 972627750 666494117 928538090 17538140 293655574 966457712 986964588 421952417 646456653 925314958 985643218 55912620 424038937 973108723 979477472 29774012 238075605 52143180 583940625 398726681 831833967 765126445 850019374 554865403 686858218 970859855 978173904 478786978 593778934 196710496 904760379 819859141 917152013 777268241 848556978 978594637 989466114 740378135 968144125 103295173 326011394 217324073 305482181 156246839 628183100 302571570 951222203 195656559 970762756 978883677 999896595 74174626 515401746 4907492 606796034 611888246 770319560 257050169 434055836 559224890 778422374 999257460 999977913 916733076 961932312 994188864 995185005 182877711 535219546 272410810 427491367 168034566 801239639 327576071 885003267 884516052 959676774 127311820 137411259 456483876 518704358 790177825 811558886 700847902 835016746 44586026 481484155 128297260 903840931 362377649 674392898 930469925 953430269 475812425 807050015 340594196 553153954 817910164 963017568 714893851 718496628 736346114 779428505 700720911 730696393 267533041 341358166 993441830 993769295 782789803 926747845 352615996 398725047 108878184 402550947 847303902 989213088 423702617 425492517 892947650 952237317 827510890 934451678 695433117 704539816 60475120 812787905 38648979 662464623 886056976 996845428 478383598 872951788 512119242 930810505 14273089 589010116 542661853 790451012 424912810 768116386 19012829 446597733 75731378 886573324 991394965 995172663 407134967 786875151 760866206 872853989 717387535 846175800 72993488 502717181 56352725 976628873 316489819 382709106 27776102 633679279 20811884 195593685 403745926 447935027 815355132 822484960 360084819 748289704 996140277 998529488 430602139 568839999 432377791 980529865 842484015 892991257 618288334 624423909 250394861 257830957 644269188 769224334 327902605 668272759 659896501 854737150 255720946 818273173 177125747 241709286 253987584 638433110 468295280 922498080 752689760 862387038 911052311 980714712 52782058 867381524 65394670 128164897 264090756 471861359 203219358 618032444 428328090 664251561 668984666 691200717 483996226 665846441 659346288 975122449 850135581 906592902 370314670 796298326 47970717 963503153 162542127 514938846 74396510 266289776 881723170 907425768 82582364 317451683 258780225 413429612 197979590 465034196 293365560 847325324 15895860 531139986 176193064 877124754 937192660 950382544 290607967 665693275 519498984 941136125 567269863 577187527 704771150 791852456 756182204 760875282 989270066 994486850 701770884 956447886 862874441 933472405 588158532 597045792 571173171 860669008 668309731 935934505 902407337 962890086 573053501 746355554 507003995 726867622 994209094 996004180 988065109 996884507 949350829 957799954 199732053 761454454 626486960 784324605 228971119 586600721 972923609 975357369 9549277 529593650 768662379 878748696 458253950 648249105 599291113 645689145 279891 117748329 106852417 112784215 245397944 537210176 189429458 359867701 639503078 660187418 631577685 663539991 370538726 592381766 415566230 865183209 863207943 978430495 898473080 969425355 128906828 702109278 11741240 541377224 983997326 996890161 236320589 472621904 281651414 762348578 20947938 585994342 363061024 733546952 729705350 978369178 923857130 950042635 598523076 971501421 364494180 596392410 293714379 859131501 974504808 990069830 770424509 943998886 772844540 911923924 707688296 932208937 627435219 730863421 116266044 118525339 920242921 982282193 683696068 907540782 638391324 793427241 29005548 412011136 943853352 991606616 566864814 688235410 283732326 597750441 637152641 662234904 406853133 589581520 190645862 698945006 978758262 986808157 576688953 794384505 578567779 702652146 811996341 899752398 138651689 492896362 259459263 506779702 618179507 753816529 42491709 645610295 991638786 993409017 327736229 501177191 926827493 984395819 800768084 812644806 423930171 604567598 979860580 998972357 967857029 984491714 570349941 678019837 703179236 858091997 73959425 585071017 497622006 877954728 294853989 867556498 927376329 993588121 842128057 937497486 823143595 986262792 377430316 658147489 536941136 883962799 186955232 544560536 158120698 575302621 569754162 922397120 773261471 868285036 284064420 919251868 117149293 314270408 518670359 699649309 661551371 836201592 457589787 498895994 772256449 959685723 678304539 932014118 388040042 894973741 725003790 897404529 701904191 981449527 196912383 221141263 307505140 419823939 132685550 671858867 169196747 869842379 836847925 908150551 190389457 238310499 463200591 784630880 962777970 988063106 158817201 798125408 164533943 720336577 56752598 322239288 209345567 806714674 518970528 809314309 985052077 999401305 670812925 684442061 781736343 965042730 245524739 779235382 743341336 779211262 386643208 984684225 652081866 868490915 368083526 714650089 861111495 987883923 248289415 865471584 318383777 712130387 605352835 795490288 298385543 690321809 590727057 692338172 200376497 572430739 155075182 327396738 639989563 678648531 235914905 700179575 915378786 922327977 786041864 835343575 179621556 597460001 128265981 136380640 417624834 619202092 253397012 813226403 122843535 273171176 788533503 878046950 699788722 921966845 517931489 732592916 262945887 537594632 10650729 838257363 437481637 931156629 307896716 393752965 307658367 779607088 815369272 831144063 507877231 928232268 598039755 864718933 583145032 736741101 982949992 997860018 696904348 759724646 76544516 133794659 125741815 625657148 926071743 972110245 35272695 252277573 121188590 839995014 875373791 919332839 640499038 723018060 937171594 981035496 97915179 747587398 279332866 468464100 147029695 737887527 958318537 978636943 505398972 595185321 849378445 944956204 605822672 650522248 130179586 366365125 838445371 857869741 682461693 771005054 763980094 784730656 735857435 924725633 684350140 917450832 241192637 962460126 341996743 823802928 175318433 734508586 497919937 675125924 322130057 472357297 715323582 796595425 926419167 959144467 979481757 980343041 558775634 758787006 576425045 960663022 255297576 876223864 298798580 734263891 294226889 445343503 66240239 165057507 43912157 440962667 133966358 153329524 585654189 623085853 9431787 70296409 668994356 749034838 85971185 445181344 6230251 315902979 928500897 945214847 98667253 833236792 46013873 449421470 337961714 635561245 444975370 820992257 626890569 939957599 491229811 989824060 512463030 569533971 36687529 289425901 385285734 724455022 462117649 542535193 710389516 986183243 841950503 980607453 619533292 668767863 578998626 935280631 13026682 850405277 443007254 490976229 700549787 983024645 718268679 950002120 254227387 737165846 396029811 646809739 901191816 948841232 413414229 872699194 690010334 984087785 20133664 532542361 957953785 988201704 558426255 765004689 966209390 998309499 827067611 997793268 602073611 877060101 131446290 281454300 690875762 874218398 693213736 976539169 85585578 702749632 985656340 991949506 537762868 760863444 160108897 263726681 520993670 660286979 444688372 770778342 793428557 915385361 121861848 735474738 336997070 755306827 206017606 821571722 486557207 991499875 514783343 817880445 882316208 950297827 675554315 933562760 733658710 968445920 47855455 466924992 358988210 967070520 757690098 793643341 998860238 999905712 697538584 981304120 436674964 897212152 86157060 885889799 826232556 990441975 252418076 596334118 841936906 895953494 814038099 924523153 358042593 580293667 269680684 371132691 64791858 437939095 735725785 881765140 129538800 970948268 404522672 508893174 909745113 959694525 913396455 989388104 384566640 971157840 169704565 491260573 912347063 952718328 961842421 977803715 947063056 983822207 371510498 387386703 549541085 597380820 778718184 860501883 261362437 487833258 579018464 991749621 185971135 394029102 57938045 508363844 102637247 160498519 404466044 639006391 873663876 955570662 793495389 983097473 746042175 852357407 281678985 338997126 19585591 454861193 540652205 741876741 230305536 558609511 258992993 263771758 434895981 597199020 485311735 955193725 709375147 928172563 968306428 997633926 934976984 965291474 430517077 504027606 423141479 749877851 26679201 176615956 363946537 898138165 728946970 776251416 663100570 893590274 561843935 592549577 46108184 122084170 433816395 805670235 462047632 888351780 288531084 894116328 854019836 980858829 146792714 393302007 740177926 972735453 88700679 156787008 750509143 875731418 450537375 792732638 883644939 943991597 471758419 472032674 792523063 980963661 156770291 447157456 818377269 906618028 22610203 406789734 620559738 919121361 472450531 937679234 446656925 472931070 575136092 903467422 218227793 729399542 878510019 884418269 838223076 853247631 212676862 984321865 940145114 956495284 17339176 54377452 570751421 863116884 871473069 938098887 91136818 489303650 764066012 836245792 666413506 761696124 264478606 676995349 10829798 798551986 673948404 808328515 323198213 342515069 606799626 672559879 755528294 772203654 931751412 978595646 453382139 891638106 322642615 593675487 275232634 427721285 727384811 762935359 947371058 950867540 832248636 849613338 838418737 852095583 118726721 675795287 74044155 385740487 500569631 787258080 574704205 963081334 769966291 826430906 570703601 937021876 679748737 830401852 906648495 977899466 864165080 915343297 714258501 881826754 374988476 509316874 635576951 995629444 445775837 719019131 489956488 981476280 868414649 910907735 570189889 655273152 418458177 484227637 475012420 930841149 603689424 716272453 984820646 990458123 540873834 939801687 990723963 991753829 656476724 973312064 583886929 642176580 40884529 740420685 954866609 998179824 407337058 521694732 178463196 209357032 493067361 868887418 67025766 992092192 573549774 833756803 663246562 828092655 501321425 704492730 13573299 636532671 240395366 708246059 827555778 827817518 999115415 999252834 822922624 837692076 370652404 470753394 269877825 295274710 783186483 817101565 13110785 296203355 536395942 680481108 689811613 831636437 275598598 512011607 344246509 641730667 721859535 736006111 111359242 327458686 295898391 359841524 395623968 993312181 241914245 377581706 879767579 918747551 939119781 982331565 462079174 649304575 71454436 433852760 875261177 948890604 717020513 980636547 958696372 993698258 411079267 907973725 573107050 926314545 852653632 990397875 385501138 855946940 445668891 627191725 128268938 627811533 284312517 461054843 852849742 863930838 470979583 671346559 928411052 957672204 952510300 954456089 718974119 793506021 917496082 963637508 969710058 970575174 990627675 998170149 181938372 244995696 512560352 980366289 67901268 817181453 872545228 926024425 310843456 895330096 235808907 898369067 909048648 973656165 949030521 999083794 232892762 911808338 904840750 991414701 261634534 647533975 63362287 70555075 416679001 573537097 31286789 84217716 982277747 996679481 773722642 919183730 839153315 885004884 538394321 653899034 342482717 689183322 16284954 615641277 3125084 240167021 107774057 924747919 615918592 814521878 942189180 984018554 448808597 522640173 252080380 714805249 372044552 916546314 581974698 699266885 854069478 904715517 936873654 999072760 343485845 913561499 420165137 746955593 879840882 894068832 464406641 733023618 369851344 509046654 423051836 816720974 845301842 946756203 629753421 643999694 642029742 649504703 656579960 743269341 145315996 341324475 613058122 896429516 633344526 742388846 877770768 919732286 747943769 917205893 525266880 585129132 452051423 702468921 140629728 967271669 639066869 839441340 931311780 953353537 584482052 609134972 307689036 943914670 491087703 954313270 752831213 872610050 680070726 827543673 424013745 532188467 768112984 902891332 655678146 759298834 470834501 658707376 142275692 298817550 121359369 854692097 527744726 796224010 176524686 667476708 433003906 799344094 189617147 409423298 31892878 958955222 591077728 714914920 224966309 261886504 235549102 636146300 963122473 971136819 726666316 874151654 990131527 990132602 873946807 879572760 132014499 176733974 460117443 942450890 503008454 840493280 456008357 856548281 177099671 227881101 825418461 901138760 580620275 657089068 632041864 751164908 177551938 393753217 590694517 665179995 691330088 975695178 747430268 891591661 81769352 863353170 635030698 675861605 421807358 541143967 510046321 915441681 46559966 225782194 624384999 639465935 961726059 963705083 938427394 945359790 469174675 950777055 97614105 802474237 377956913 448193380 614189886 876022972 773685068 983265895 108362703 291264965 544498711 674389699 960749673 992207009 745613194 793868718 386067995 477691725 183444918 815515610 809730276 915634061 906573605 918773575 944626218 986149003 430232271 774015908 710332859 971822005 137333918 295207869 138131976 507933699 71147103 289931136 824603566 953906713 880214461 925370514 639421300 644032262 703706592 990235993 304761605 337378244 440941820 569383681 206583819 521255365 561791541 618993986 724464432 886425644 828698325 925657597 669979117 942488441 465297981 685944027 363724740 881083149 358536112 799088831 386546333 929364454 404986998 961961609 60227574 482659075 473436948 530595905 959487244 986389887 498465363 760226880 350183971 438079993 411328556 864133017 155924468 661838851 349612072 608242710 746418854 930674736 667923886 713009315 799296855 832165535 865864880 879748746 246752458 482021036 328013274 453244121 833854672 912677380 924469361 990647011 670722002 956078391 7352561 28733336 792795738 947970542 337117094 774511286 607541743 814517791 192044296 334507685 258012320 964167764 420404344 621421183 603625702 982496792 934622698 994720152 95777462 880840602 511083903 927106443 335954250 765497687 701191541 930549528 739834992 867677769 5314581 855985778 805561813 969183608 698702589 724259738 195939693 702503162 500672159 612451631 967850749 990260233 171620041 465128325 266578068 994909127 371792655 920561356 661919188 840477392 607350423 709223336 589621419 601117776 596536502 644631826 754103135 863055858 211726555 549756910 176434642 272794743 725648617 855330406 979059930 980174145 420598800 793121403 576960325 921799838 396741390 493058048 235153629 644019282 848381768 951237881 902294907 938847179 557536454 797296766 545794650 841676197 749081345 798032996 937615956 977119405 281792067 872505580 669616681 789331256 453594488 485527206 912873102 945848473 870767540 978436975 722455159 890979084 973568323 974923507 777667833 874280080 60138779 432881283 272559971 961491948 984930394 994901751 773258151 943813558 68640455 492373323 865510407 936571386 611429745 957451300 529557979 703171041 160390421 841112834 536142647 838311880 111537826 998721930 322241679 871266342 510544151 974413578 348465270 912059286 715655812 717899420 489107597 836083385 199603778 428883098 24930668 520408982 320502411 647936716 927665567 934823926 685093547 837651747 724130515 771187455 191825598 324701828 949284732 956101573 931364551 999152446 873907665 990796903 125896410 768524572 85168223 147373328 172144346 343101517 738180797 799893596 913174661 924389352 526818168 740405376 775840885 850597362 348054939 754006985 362686543 892814946 768297291 822212967 730053676 839835411 27090919 590994767 786023606 810801127 445571513 706895428 26722942 635611506 68661449 982515182 157170627 391524451 72303910 262408703 80970923 184654101 70435781 918703709 482698156 935300756 341447458 977857634 790912861 809257104 914392515 938624315 584809550 761853498 981678347 995735448 298211220 958433245 440001749 621486301 726798254 769483397 741085445 857342307 425926779 964680908 786427777 845377728 474017427 515394988 685061345 999117709 112078258 612019998 174663417 196063173 994953709 995980540 96174768 474177752 496520705 994986666 561291509 903058576 784963276 983097665 809465380 896088242 641183035 724139338 465126958 550022505 452779471 879384741 949281498 988383754 790220156 849231874 674482449 892966371 793968895 824245054 884948315 896354746 681810360 759625487 799499304 997318777 555390087 615718620 1042830 9786924 187715730 990584457 998192939 999145722 14836317 742458195 890387106 951124936 970906183 976231117 480984098 636431856 107004908 741098202 834260331 994170517 9042179 239129530 787900271 791883452 538046177 549908663 496032071 968542154 171623694 178677161 836795380 929801144 858482735 934247604 944340354 985826959 871094285 940342627 981492575 989224199 851086932 991287060 947075814 974352624 764029158 944792442 121228599 802890168 900908682 998109118 281599096 730679431 844616247 947156150 415777934 740415688 425775276 561170948 541336460 793344732 910983912 992175584 672941329 723814889 434916479 633887861 969848474 974698654 694143759 744593132 440687523 442191252 743972641 952717432 62482709 942854316 558855119 648284094 585319654 903374283 686831692 908698101 586631770 829475189 966345475 997064324 243431887 560168471 966262752 989352920 448453484 714215355 64461814 393434429 280364848 948387137 275730139 730454333 862688696 937998969 631307070 799971125 8871286 367832529 996381507 996901359 34588440 936781645 87081410 554285048 744003133 756640505 883372752 910213629 388205791 719407292 406125034 859830201 863834056 866059298 64911859 831099233 769020769 933192369 231168285 718333810 701679941 895680520 492441412 748923206 300657316 852696849 303492621 378565868 404832381 545380590 273152488 581831439 190663083 733954122 638840096 741531082 6753902 794810826 839718128 983487287 632429095 777059688 728807873 836084480 271673071 538044762 775578578 922159731 433608740 482852644 487183051 619168171 95712265 279960626 388852681 924978252 116950865 543999453 176341017 662185915 725937954 732317458 15862992 812347717 946918860 995975786 218130935 682654976 472010108 615104371 990379367 999007047 309233380 891482826 63804773 328103064 613883892 730728673 517214319 526974073 312948300 999516955 245976082 321017460 387764394 840499315 412384113 806907108 72217682 676409539 389172105 994926001 335894864 808630952 716749951 887877952 91937899 935096759 237387509 638317946 684820166 944839100 785718664 932784578 853454170 944620585 875668152 987840498 274362357 374411351 912567569 978372651 392187419 739608609 342162162 699861317 255426289 278076368 752547255 810177722 511929579 632152042 535569043 878520841 16343579 913260665 363824976 835108130 624623562 685332264 622485513 659320222 429761 970387082 241847449 506734731 56156452 158598417 589997096 856302862 991071000 997279659 807762915 966856892 881755829 948217132 329647282 733821704 279284871 589347141 614580234 646747475 979173632 980429541 909769979 991740393 501045405 902966498 794526560 983506851 659210092 848081905 882851864 918433638 252999461 829778325 172199954 211590617 648909233 691119262 96616924 583552462 646935801 761164186 44049525 173288808 50598754 850631815 946887903 977881100 238438017 867937447 14789759 611460642 707388061 985024263 547777639 906988275 965163387 994659602 758305155 841442318 459163631 698228785 371396373 892409279 351002557 688238232 347512521 531900746 553710022 835229352 184607906 418075521 609911651 612906976 568413562 707492638 171936442 481547040 979771557 993494051 217671071 319745316 290703241 585360326 246065065 496498155 922868688 926845336 649139345 826932514 802129663 942665770 645737753 948877462 359629042 958028873 222694365 795353969 551200097 684398311 430540624 917528712 953550668 955094013 39618226 466694256 144544947 464657390 334657602 617476836 678274719 888303659 919162345 998519640 998622388 999375883 174479067 259234675 42653787 137090532 804812999 912403587 485855106 787079852 633251379 928447346 593792281 743113892 545574626 717637582 747562763 794732375 835694436 911074867 536594934 717535732 381982339 626505538 100653170 459856145 443293936 888226079 207915684 778327598 387289150 549681033 487209742 858188606 735287824 758747442 508295574 686259220 158375821 834532270 610994269 621150867 795075357 854402102 597664744 988476253 657008551 695656861 271626719 390415503 393814405 754268247 856180538 987327928 593711088 869146286 537062013 718038261 559595171 780282356 49726055 237839363 395130314 789673948 522212997 863278233 606689465 919361618 941452978 995766729 383238608 951471568 622857367 713518586 904864937 996839584 973647089 983350053 134334479 369703253 923104130 992842756 158137446 297823541 566023748 627066968 405474867 527367066 199566077 454302467 712598783 817000349 804126613 879819726 158619829 379371880 471783341 599350801 778066308 985853139 265811417 428842489 595844506 599419552 78733761 765348564 181338582 226446371 172825107 698959213 406674576 755309811 418978159 436308500 290898520 844428845 637417453 825919292 540191562 650416019 796474929 997524905 477359971 879320788 840767313 961011277 587938893 901728708 261873252 382239392 808980754 909292249 688547333 926001128 476328371 553800193 252091688 589401512 890274711 972035468 890090013 935181418 428943483 765204870 820251786 993415840 550583601 825527798 322895082 410345659 405022539 706883648 613413702 669052101 741257999 842367185 817386039 904882631 175407136 345625339 509042030 631929954 887360771 958212155 907322640 997857961 793757135 866768705 329549250 389534084 245688136 549617895 592491241 867711732 345208599 487655516 591816912 883035645 837315344 852902399 775837112 780284354 22476303 660345430 542339004 699485083 581533596 584469293 191264610 982268737 628210414 964535783 662106984 808629715 881114634 896215212 206359289 559643886 333920104 350357509 966828056 995843852 465763343 502284364 513812157 578216985 38937629 589937259 904888960 923917894 154004458 421606511 377514139 430880956 977576606 983179980 523232145 867989060 73686596 395089172 547666496 610857618 91702509 781594551 596939229 758157929 881978995 979488980 292187360 625932696 20133151 652941221 710951190 912479874 733898183 891034323 273400862 553045198 697507459 961094098 504267900 944113283 974599722 997390301 691480348 805293271 616076370 806803829 337606334 604181132 329605088 388712762 843899148 896049371 668118604 792509465 408488182 429851563 887974342 933076522 369261969 811783592 141834929 604566178 255757026 718568699 568746476 716263467 191998283 240855788 152609250 897714915 760897322 801034219 626609801 819998999 67049368 701151002 32897640 218632598 747240954 776712753 375460731 587841605 590717953 770046007 243530895 389614943 646711162 650082542 575917049 970914153 974857851 989287359 46950199 241876546 745153107 942278863 948872994 976778762 560973165 924594441 290978863 591457377 269881759 450929602 198775973 736570318 758618236 975468927 407949340 919351373 114825559 872563205 960447160 971147228 841987004 869494165 755666542 904770637 794356920 935648156 921904402 986140314 469373872 577784218 34844963 629430262 621582627 861228969 582544904 898757706 61955328 450463378 537528914 845452684 669377338 841366737 220259072 718650996 479252119 815113754 445346232 951681437 236808110 309916976 990759947 992114862 259061537 328770632 259582101 366735871 463649808 833836037 784056845 831640563 70085606 504035729 772239175 847817932 209587224 853706339 879570359 923100018 200969988 555462600 244910557 461506333 828934424 919448485 909991418 988456821 366806117 441231410 928552950 937244957 518727727 590620942 834643375 920764043 469391994 969868853 317791746 935999381 618033997 834893029 904885487 981503974 460444238 833236417 616057285 620182760 349271573 774191379 913648007 989284957 153493694 680010259 771077102 909036577 594000821 733216063 413441562 554523485 421249396 858160505 309656027 384246469 297122224 900514642 149464915 372400311 940024288 964061018 829483559 896141012 654137238 959463806 431396089 455508416 31774686 680153695 62006269 765437278 598863142 726985886 254144732 298456387 121099746 746827728 113271355 758230507 272286374 794155627 130730238 577305878 302499536 535768242 910957028 991424735 130718720 590966972 994982276 999423823 172359952 530964371 283880053 340459868 601951046 885330681 739368910 775779647 148560563 156413365 962809787 979765460 967811589 989231907 243985183 460220166 623249097 970703523 966534358 982992445 265679894 894993060 540459702 603224131 315226124 973068866 314253557 633750751 414818758 694902558 397710987 910259787 825188479 833103147 380763004 969902066 486867343 564352667 996392381 998069493 51503667 305287063 854025018 985860458 545946887 633462474 368619549 676718020 709359662 862056325 426135062 593300585 795772756 845743693 309180485 440562256 631119496 637366167 767923766 847100098 289759525 624913741 203447855 997771941 72496897 239357215 951074124 997961510 141002067 759785007 501794863 768716571 184222519 328019938 175662935 614170922 71668671 931747164 210758558 508571916 711379752 938664956 726411176 879188903 403041649 429675408 240554440 348025646 818755818 907637201 625307382 918887638 192992655 268257705 179774799 297689804 926249417 950244952 724295611 808025288 24043601 700028998 112074291 215081905 911720470 912213475 491175607 863722064 728650678 825359815 900856312 979320586 380856526 947554925 692749855 856699562 609313999 746710103 467654389 975803711 422913010 508780182 808468260 823318776 86348535 886762072 587428616 766488861 450552688 963308656 214563123 675346737 873705559 919937697 711559409 873602756 505550398 583072683 259183396 688772567 97686026 623152370 481267743 707971064 477116462 891784524 680492461 873633010 753188559 937585838 330213534 716567678 731496337 854827207 832816852 928739112 560560057 860146797 171616164 787071144 663985643 664772574 834520940 861115579 787058335 828428019 675939205 719095956 742865439 787515749 426750446 867806375 244184012 625121744 609002275 936223367 838853916 878237092 11547 885543594 567804897 946607784 23054934 25259495 669497477 681443428 68368806 462473481 139489245 456650079 690499715 724287442 408295181 805833242 522700565 664581234 873768019 935780410 810742504 957308257 190710693 262063156 734388778 826056680 72154297 791869021 290952317 371981884 951125102 977555548 744830667 873465928 830935996 848340284 387745608 924996970 303546765 319033575 414236378 966816378 971385638 989465353 554506789 891371957 542035655 813830916 645119410 783812204 893222918 969847775 996462773 996956625 205598502 365832196 654125525 702968997 441411371 749657065 923866541 992992980 724310033 844531384 342487587 785927989 82030231 422606666 162631769 659535371 567413946 734833917 792863259 961089563 464259554 660831344 733115306 916708150 483580237 809326304 422983535 932634158 785958113 879019047 978418515 990661912 707260623 953162479 533476920 562439820 493436159 643120478 267869182 587277231 544302984 877568060 232356349 401801229 116170914 368855701 832261278 971516737 350520668 659552295 892487222 990224024 185750902 657682447 614206640 677411894 744886315 912925570 512916429 932866263 305818548 956013212 614762455 892256467 3150081 118032440 107461524 534972634 69972265 123478992 242033587 804599542 709889718 825136841 944134235 979101310 569468770 652346361 822190826 875126621 754036870 880737814 473732432 610847493 389205552 405955253 551884070 641473841 74976732 790403644 319055852 863746476 948255933 976912783 462200626 772079630 530648113 645672746 291003604 526423241 100073227 473682457 236750505 317033316 482863858 902846978 928031836 994648113 100281824 304692579 345404439 403086527 591020058 712905738 648699373 724613264 698592283 723949249 519474197 690935924 990334471 995539738 274765786 296793969 829361328 846214267 354093360 774605347 770836856 836733084 652766045 996175981 905420007 907140944 536493815 718701974 798419421 841498112 887821141 917830390 458383181 654569554 387097099 453522132 306495662 409120413 160510870 748265689 564163009 587056681 718095091 795091971 61309788 328032014 303924004 807758080 924802933 983374953 523309535 653574444 493086566 993907612 296328757 927875020 681819633 987589854 971193804 995597300 542686463 848085079 722596388 972726919 603283582 811542080 862984889 912899074 769253166 821222066 966627561 980486520 186056006 551274694 792882845 833664170 939028520 998755363 794663444 806665787 505864018 963796664 512999546 770802190 115922618 805289841 608002411 839312030 318204790 599870580 844534843 899916579 684793039 957259225 955204866 969947526 590188341 717015877 408421203 802910889 587253794 915389890 681287001 878612918 683095971 798787762 22393735 892755296 100471074 563511212 636970055 736737707 807375582 915317925 432630029 495150134 177198066 864487713 831190947 986586204 877114302 894954094 559111662 978752819 923298556 976807087 261380732 905615054 109631634 911999817 18529788 38968155 901587061 968496100 515798678 711293383 794999986 814608078 364158411 882100581 743771284 949644487 224856354 511888077 76231765 192933742 944756177 946874627 629566330 867575223 427271865 641002762 687041075 893721238 188401106 245376896 804265140 898608518 533016760 773206989 142279557 560073797 405665985 546306161 238303693 984954103 28691419 51569700 250426219 765866158 510410471 753202438 871895728 998348810 517634950 873302334 154302533 772743868 166034327 757475615 587051967 942794108 275141266 954487387 616230512 620253299 863860741 920137902 630116771 723629664 99905592 676099589 45569887 257218205 240515026 665188202 192349927 282393434 705481564 963185392 271924021 484803940 851174907 885072633 600667914 990104805 229780985 416872210 589233872 830179179 801020606 937067568 245220893 949086590 343926658 968423109 818505956 960196187 980155012 993102222 975800584 977556320 487695441 707642536 946880777 954592113 814622316 888126476 961811897 968974596 890342615 899537019 903750505 942890687 840831827 889151040 473829639 749030898 22004463 728679707 476931931 948249970 369354625 488800851 443700221 629911344 300030306 528546868 618702089 660292484 161658987 264169220 236570411 951220634 857153898 982066280 31285945 391672259 628931731 743174257 662093728 888356388 776785555 840302556 408401044 435223558 307563635 834837628 211404194 375408770 651450802 719244773 589761564 640935038 711208794 998334978 121326396 421060159 96090484 261242971 743052022 866603373 710088953 870285427 39679170 731505253 408171897 591759239 577631217 705940252 736816954 921110624 353944851 753684358 287705765 647583441 728902091 929009409 83612347 316233515 174533226 740348976 918290875 955263507 404983707 898505065 828686569 988900550 702777299 984993284 530835867 733402689 429297381 440330092 157683965 189929061 345165406 483996004 614976540 952707646 801051505 807792690 634514764 990264040 281158805 826950333 896497073 950587629 370809051 713971257 262433901 382445920 44144023 90910154 910272966 993604867 486696647 763823843 464174678 890442230 822910217 979155886 298730480 662468328 107201628 798348788 56980303 458890186 605184036 955245143 625763378 875753669 889939440 890594699 39150687 372175470 262175743 753078618 968518951 976482849 461117809 719417550 596007825 824594541 917327881 947664960 564220567 763742949 443543456 846873540 183415624 238104305 612361360 962999379 199435390 231072585 61058719 470023278 990282096 998359967 272136404 708584935 874539871 957014077 243925256 629249262 789517589 992607225 80467732 450786698 985175080 990604289 192069648 528404028 887639123 953786803 198424350 572317492 708279778 962506156 98683477 287706925 306034043 372685085 343593910 475796268 531392632 915492516 384002690 916920861 172291815 247289396 434098407 758076388 355331796 466367178 626546815 785323778 222026178 964154582 598313577 871765080 537544427 893692881 517092168 638079239 548866469 816160205 792821937 845635207 17681275 512472915 991066808 992263709 35979500 155769007 648223715 809094514 29914883 151135615 711668671 737039175 796979660 991368841 329076365 639161151 488115499 959372468 932176867 971171899 496646549 762298482 357862591 608667654 641816591 771611714 503765248 574508092 926827263 953511016 894278754 978760478 765251590 899529994 433566844 800869199 290086714 330300702 6126661 734015656 182944010 912212352 712565366 974734191 200601326 360440197 418669420 504215818 43477052 366163896 64988475 810729605 956432898 975669134 997083882 998477224 880777575 906678901 419409449 958566532 537194308 748656423 359567835 551886082 332302255 601271464 563144128 771905372 460569406 956770155 366977204 877007108 694575268 994726254 943312540 987941593 154382398 971154118 933806444 943863395 539615350 762922544 966456088 967141558 258596241 295206823 280848442 666958462 104486125 863339385 432335245 750654877 768569177 843283751 685457242 871690452 144946223 326181363 355930671 847894134 744657108 771785809 633997955 955661927 149158441 895625683 379612107 485119475 465918186 493342009 777392309 891895574 526090830 530092651 187808189 896523581 820602438 867946984 961384958 981327426 584174178 626397308 598083185 656639720 396785404 481697021 500240602 642502439 509107022 652313831 718934712 912678320 560893821 647220992 152165053 467246311 68572074 991944207 155415303 677074559 430336404 573054245 108568203 751029585 902310165 925756649 592188984 931720392 143451612 915093542 407059921 962003208 746886812 883299946 219558851 488016948 112624933 811962242 992598036 993856754 385722973 931837255 207672703 249306363 976872913 998077406 238888055 867731942 664805976 861255103 214044498 415489704 283787345 379676210 148177978 998494650 713247455 858661148 385114387 564763820 22787430 637512448 531214973 803404534 952326673 969139756 492526195 832614424 703559398 950881720 789938454 860806258 306800967 764947510 224658358 851674376 175974170 628824447 830750125 883488805 751060663 979088149 221086624 589245062 414521823 615315133 373783669 571982884 222331609 642002877 736042548 830221739 223059717 366204631 941994206 962273367 220352237 943679074 474081797 970143865 210565631 241642253 40829101 576729504 503999272 954534057 430003037 436225205 780411610 925035498 971525206 991573453 133909812 499531756 663008913 945784844 75566945 314341840 855210128 933751743 468203713 750967258 295686600 379526184 964849255 985505861 989844168 999972922 890790334 919411070 333227044 458900596 514532499 605793742 725565534 982600274 420422401 676681472 673531027 973058297 423988975 823339485 833503042 870203301 510043231 646566709 600968438 742713056 367705223 980461039 389762291 830888055 151345430 816281743 573368160 706752973 78155614 804199767 188290704 976303581 288815249 693275105 56946745 62223286 337497640 682640917 824825075 885980731 880403867 983112545 124725323 683009737 383200869 484276585 622186018 802583998 59234912 489967456 423582797 707981163 456111460 953126069 934228235 963002196 444005044 876381105 556660781 569226117 791042389 953405888 11472525 750245701 116203994 975843814 398673044 983195958 690024965 936700049 619101585 792117763 529630300 858362475 130417660 250216227 633485014 821398932 576210411 787028173 634615002 875532416 11073623 96425325 186842781 373936263 310965508 437061176 846414968 962161632 387677641 977028996 256469014 649132069 511297026 755724468 857683886 866975467 603193016 914794947 669168180 991883128 313135516 481780213 779142464 983876054 3816258 989459222 252024132 616751727 481154279 493032327 534477561 960233294 701169538 911982833 20674497 152197310 266623281 360012312 791684739 897099809 955014315 994812054 863728269 967536171 502045255 824293638 926517778 949850027 883990364 890755159 22229428 876127512 421891959 652774625 695099438 938881201 340456734 413824070 44298909 270302277 341252408 997908423 267444157 281323987 620216760 899490162 325350013 966810463 158370596 955288052 349713300 784862846 307472556 742454957 847095880 908529684 673168263 697514738 261817569 844148720 599369015 863036872 957097821 984858998 37981087 624611686 191517653 730337756 852517794 938476677 788286128 850535173 807273078 897053669 728699940 737778132 737419600 745442927 28828300 797779245 599789808 892802892 311936645 438585269 508195926 905813136 314991355 784242951 814187422 876897003 556150737 645502195 781266535 918800936 120023931 716811091 617107595 706192276 983529201 995284852 411983452 886453362 720049134 804699263 15768593 107788903 278409833 778805637 317609053 877648746 724186244 874166789 4627297 395233739 186969216 632183800 533191377 909154430 60732111 980478954 355538719 910606716 632355684 922855029 412850145 598629583 781282366 980304578 597118076 844224340 182746390 825422459 869441748 891148099 705534447 763347765 683679263 955544151 842667642 963964372 935517872 974436374 908929842 985219715 266921975 573295588 976505745 990387258 175326885 438233638 474664100 570359937 545467129 960384101 898907772 934546400 877059415 886790958 761165541 891025331 647687159 900235007 331896652 962363135 632430039 695223367 362474603 643191582 138108435 318005144 90354999 979335321 992491559 996689929 240257633 668987185 936644716 943287337 358927978 963393869 866576083 985398118 257042143 878245698 328979899 670560132 715865706 792757342 829328476 994612258 321006464 693708904 887943899 942818543 866943356 884161858 786022511 950206774 699625933 919324519 42314870 711582447 812472848 905156819 861112690 950461984 929285351 968933853 315702035 790778551 21414940 915137853 154138247 525096480 341000449 930065000 157821681 715397495 139722399 993892223 765138820 932069192 132013123 273648975 657403694 763763939 12712364 600050822 840583052 869967780 482129453 619198495 96512211 780344884 855778234 862342154 225108961 489038913 88454735 320107166 557130123 609742022 692964901 892233228 884809741 891361526 231780500 595082475 641867610 770032218 947662203 973475503 133280734 273325718 500922182 675972966 265586785 920854962 79110587 822432540 349221382 692583855 972091397 979318571 781943979 871297940 192084910 414749457 664270494 700833713 981813051 992338072 258588203 614270998 693453387 975425848 437048913 874964641 704553008 785533963 221277523 998268244 771931998 929396562 936946693 965268330 278875622 551910179 227425544 530140165 132549301 464747824 197756260 486821105 116265373 526698427 389330260 988950890 98897115 999613755 302865584 643077248 101488753 709512884 48275974 416313981 232765313 487197691 960109926 990904291 606668990 797519580 34775771 106028134 907023276 910588373 559714844 826579484 181808102 976238871 606044359 853225720 333105412 421489354 296723885 714597891 933107377 980497359 423034466 511435221 162457625 849990688 571993107 733556276 422945828 552385801 864361057 897057439 857199629 883218773 193478268 998400315 619751588 652801512 10363997 370035015 657409077 809056266 925565941 969847713 417044938 905232720 398696177 445402613 662652119 826395304 579664189 595829356 509059072 557851470 571426089 989298735 398626153 988751361 553166473 581152755 215103866 542309550 770330239 796455619 604757043 953021962 272035598 782535796 275064524 280403314 801351634 983859327 609876327 626740627 611956669 698155734 176523464 559364840 551583682 924556751 795891451 980624327 596225431 668625487 579426782 916751976 638844969 746178820 671803878 871725305 578964221 623653506 586209012 924824171 275415379 394269250 79837112 851093708 9818789 648898747 75661841 345192499 611055950 924021288 846447215 921476419 183777288 390167716 722668497 778269808 936939434 983170248 184036094 998588784 324938461 365616219 729880167 834618463 406252047 644741538 124915538 613687812 752352034 858412742 787751397 923195168 541302126 710078403 632670458 687944638 882916242 929376829 568940920 739015692 826771413 945236435 302663922 845564334 53110588 571762337 357286697 983264614 866165920 933655037 572861463 611591400 17237030 156404514 346187898 367399818 805272613 871350001 506304987 687758652 300003119 520617876 348912454 493256535 192749393 950501183 406384256 793946434 301264747 943213189 465529656 806317696 454102261 842602908 362252423 755056187 374491224 399127222 258617960 315244576 561886189 665534559 328656595 558367310 287268812 939824865 220917606 986309555 197816230 208856953 68245947 330585806 483681051 503812834 595713886 840009770 337008651 359091363 629023748 746470492 458808844 545197212 714705377 974945914 372436873 642607945 162492084 290227323 246162036 745045124 253966370 494355899 927522929 991561136 630300451 863240050 107260105 685302053 660738540 729254593 859739171 946932511 884681552 951632938 571489971 914307998 163172980 468086446 911991191 986908413 693640488 932186761 294401276 803445456 746709477 926951499 420118781 766971489 219976168 551458197 785573501 805459257 333266867 980170274 31562856 155988901 517922089 542865021 323369233 379966461 255610597 977834772 781827332 859534733 720074859 840242398 655882782 698805035 612910563 718806143 567645761 892838124 246459343 703542420 399588553 757274743 282506629 591162242 449636023 625329778 146804438 975007652 691782925 959944111 166631205 910679170 37809610 772474683 462104686 927197833 276500019 649336422 612906466 747880608 117794334 355129982 595441980 800299609 95748804 354564181 838601883 926921020 994711734 995362575 221487383 499613582 43977552 918433529 663504301 750862756 817611754 896091197 256144486 746868423 672547116 833942153 400574592 847477813 522046490 612195210 310903244 453151451 746482148 962857522 61568955 548101011 302693218 533813484 878184932 992614692 465513391 682576436 51285182 492164427 249315793 645097873 969347359 990173808 501205338 629425158 768091316 916876817 592610023 786334282 363600794 367173938 458015623 520042642 897739574 953760434 697503928 917451213 155170539 609878735 263587350 453244172 911766724 915968148 85495867 621620809 827373419 879035680 814761298 982142815 439768015 839738072 786530422 980668227 97420235 832234016 309559827 315944193 62442535 153270143 474890841 923722428 181842432 802276498 899513429 975324239 697245393 708787264 661320528 794479582 413331139 894461702 765808590 989945720 768104483 790014348 739548293 764033919 317820630 522625493 159589479 376141687 356010543 579535241 307778738 848021271 430575561 483257980 188547913 314882021 144717161 965423839 130202996 901929136 60105764 665987400 529012909 634106534 880886694 939628010 419454896 880926534 719010005 916708121 464241930 664342479 444859960 604130459 74893395 440780000 925917431 987477367 99634839 486800782 555475532 824380113 752937147 937010198 472366660 952714825 680283394 970596921 573816325 742336128 127621161 992596136 727480332 777051056 825945650 937205946 121349961 561635740 224571631 277819319 982378593 986570175 277295093 552444009 701811665 877442954 285541557 620080887 123233977 123585591 630885164 903168670 160560201 296424228 561549935 888497565 85928252 928633929 685676813 879722990 556020838 746361103 447274599 982579849 621152268 882867056 736985043 974351797 271565801 300116855 442746200 555035350 634012913 636474078 420098146 428293403 183070179 855658099 829 880833347 230614350 308614795 472106543 779748627 299387111 611401294 24608956 746329311 952370009 992830615 489037807 718096035 743870336 956626861 116859326 828548817 121545131 798938960 366249466 969351785 481386329 774043671 43849315 797658448 566310471 655188648 292444680 900481903 712357136 890882245 747740349 838922616 601887653 942385334 424839919 969383264 132433345 695814957 242289045 766795111 236532382 418008766 84750016 856732799 43502258 788220451 140032653 973630955 437850967 467523380 83668689 990832693 118036004 428421894 942276775 975477862 619589820 822428463 9669690 376023116 581586994 891577964 524773566 542247248 225686828 342553767 946372842 964390363 113232946 907970505 162072099 561978233 787355578 808226103 978090594 995409961 2991842 144549499 95140704 179367667 960415323 992578570 682604448 799499900 935837839 962354886 342228332 609767798 454376445 478012530 666626563 696341439 399952917 888977148 776001694 997385983 335929436 519992321 207962645 267598579 424734979 585041967 256553336 644595320 375080705 801017074 293815887 502956469 746960722 966782398 938380892 952033753 342778955 935999940 19729360 292232002 833668565 977968071 829718258 919108969 704359963 863739155 332073133 810243439 76461127 783182951 387386960 686033790 333477236 518992688 733764404 987453033 991728948 996804977 774015893 937360721 809831153 915376248 627360129 832663658 836896022 983879575 915952668 932089769 886775093 920950431 846887060 974708871 979193376 984182310 60400203 713668227 229705385 880512989 274372744 314289791 822863358 867467613 549559690 561268204 689581399 935409666 273665003 406269338 959439554 986658827 766375890 841926089 289845816 410794111 731274176 865408764 240848482 626482685 874583705 973997821 934827818 959386244 22849379 242763160 278411107 918035651 531678753 736746746 39721780 645262689 486821448 816180111 85614673 304473267 84174410 472379000 578021186 612718772 546318362 632542830 128669590 387708953 987876287 993032135 952060726 995166719 335898545 954995794 422122849 427953941 90163609 457386405 272434097 297184028 189445274 346757639 48102872 694323037 229652901 483995706 676192265 734411921 141754331 935183098 840198325 943347385 877556710 917789577 475261708 697179735 734432558 865547931 14585486 272889362 654490634 837841928 743806904 900058626 618208341 888185474 711605293 929063700 689122415 754944262 129531431 601204051 81958018 100413103 402793350 427935817 697538057 818160818 458534957 876448679 890445767 964860448 265662247 908564610 136744448 292311667 160773221 378048579 175550843 280550149 398902916 603023832 502541907 639959925 913183620 960043929 888437918 889736012 181145386 335176230 582790513 800659878 809553476 877101905 918216746 990280571 962187852 962451565 912894321 972085501 811883254 838573945 27592151 748501685 108532538 248178968 59115652 321337790 427294311 616107833 980193477 988267702 392532007 959542067 709603159 832460094 149711691 270430021 250457640 387318427 908543926 930125038 833591012 968795780 372709539 905181865 307219806 742464852 368861040 934185697 444866697 766276816 710871772 911569291 133908141 825712104 118612112 327533141 50528561 999345493 52214364 982470528 668820012 838477150 181125729 834471613 678874207 679513800 927691669 961008109 646220782 958504803 179787178 991186445 652341737 937327622 108982328 914045965 934691147 981047845 111623481 212091680 812123215 951228505 395348430 616643142 34345369 94182199 644075063 701157216 507721360 571026547 485932224 694978300 143619263 296827595 413466691 955213086 329726096 576717174 207104856 427709957 569433675 589985905 632406984 738739278 551839626 608618980 890834501 947624121 37891181 395006922 69844095 912273891 264353845 985299250 308161041 751657414 353542473 930796289 898804752 949264924 301584305 690426527 292557347 728437999 332220046 519640911 162741899 487865661 838451237 994677805 589683356 943002899 823793291 887270444 223756345 691959541 588765690 734992247 598740213 850533789 646029240 703605560 546829364 678631993 532877203 908055987 101803749 541268584 214123944 269192528 756890151 953905936 726407876 758588990 404402327 956952852 563323614 651953245 11221014 683258660 444080050 632600172 760401252 999264562 923188724 997604575 4388539 62666250 449116607 679902832 308908879 945963090 500901162 890885487 219605374 756705640 127872579 167340324 206137877 283042642 894372756 930893897 929320723 951735127 592554645 682019771 118738976 870118794 417190320 938675526 301113383 388132040 799881137 943767902 883097129 945803177 453434323 717841970 572897735 763690423 901116158 997570536 416990732 903496468 322888911 385041349 143818129 851258919 697350964 932757182 470943772 907575026 164795214 905961241 879736618 899628379 479621268 989305183 349324883 558006802 535230789 955992457 274761978 377246764 287090822 603655080 728317057 749850870 779309642 951504579 747681706 785516648 476935923 784302371 637775851 714953377 220410124 222152628 974442098 977864516 461037056 589043712 738623170 980066725 711614461 921618302 724300053 890365547 867532341 874540736 173878889 397687617 818541439 838711110 44819203 317091589 701054361 969912276 806994496 873366630 63099665 395434788 388552168 732721188 595584407 822689289 429398889 778806614 812197739 985773599 257838486 846093928 200713955 456307038 441149668 624394185 524159317 718951299 716204081 745585080 454720258 571924432 399074461 719049060 623011671 668989226 519723657 972566794 730633460 851662109 174339472 804510490 809926168 993792321 314473005 965767030 931461208 986526104 986600332 998157605 954343540 966137605 328021980 894307228 886556693 933780017 523249112 534967371 920982531 965421850 684964867 967000760 440690789 738913836 321433609 899205918 752151116 908771012 34115936 218128875 659563846 922593808 770176720 851169818 573595898 639373365 834187277 897635237 184178189 421186235 318412011 701973853 265070587 813029697 357371891 431938110 569335160 797645461 840782678 940784172 400511342 984736156 161861971 556161290 160750545 633590927 707189300 724140765 374244279 405175614 68325070 618747791 258748659 723263662 440271643 712979135 591413541 969001575 85935815 608377686 152259058 419836632 515030535 639309255 733051125 894267464 222130212 869391141 587965147 715258061 804468601 890935052 566082504 665060562 789284169 931565166 718817615 996738880 233878377 422039717 274287345 486249431 442837167 705160384 757137194 799716384 135761836 558181303 69173115 330229749 946712231 984821119 662387490 911495577 784349287 868526995 921758860 962167410 377001714 634810934 877439262 886353108 578432733 675956056 164586350 272323929 929857985 964597485 376972025 832615053 798233588 978449883 800248830 847492291 284955114 516491908 717531736 913838954 948804389 990558040 909888505 965541073 481038381 973452120 298132990 457133414 522326725 588323793 786364866 865245545 783296744 905579341 869083559 869550564 320268556 840330414 470078615 581065597 76008358 189885153 909563696 912792774 784544431 808456686 534034244 619208712 5419523 108459331 690071365 896187571 359374862 731870756 995597532 997320365 271746509 655392195 56127417 662249200 20133615 170909452 349103572 492361825 378360947 855125824 648464943 711124005 423263785 823018843 202813596 990487904 823773489 978301546 12480362 436483585 854276067 863738989 67620915 284171813 437088871 927609444 126582770 444507181 189669175 457175413 975016516 980372921 920572705 976705732 902635268 932381703 205259236 954860910 941466392 954604140 371216092 605846106 649953800 776236831 762775465 839411979 715323616 738214783 566724433 619808008 51793711 94728776 448973712 912003814 376979936 914814066 457923770 958710754 517397509 601132641 653311599 816591170 229292754 512200215 347275800 658652850 883545336 900705708 399542050 780287935 371844960 987251230 991718578 994997861 720927648 977981094 687211895 877079094 165093747 266265895 488116751 611213713 644612183 905062145 409359089 823405746 849797657 953730911 766538996 802665634 23842958 245168207 376294665 756580533 450754904 593451884 970070564 983224142 643509085 664695864 918564337 981644753 160663767 238050632 768581185 855866166 143830526 537872546 759928396 920097304 256475924 405945862 466372221 930326176 950768220 978799100 29546116 726368139 79118966 305290097 547146226 841883349 103229942 850625098 815434283 916688827 523923941 863832360 346503076 984006409 910345733 927570442 56900094 266084017 809955193 997267884 121289372 713987632 113908265 963555668 813639591 985319045 399591383 535315487 77343374 460713818 507967277 738946570 266480784 619353622 823774664 892478606 566604395 655613847 160429923 500844846 663784722 753490176 450081420 585308546 402393261 985532287 491988303 573139317 832990161 977508411 469526773 775129766 801573531 980399897 749662869 986272729 364416725 511216393 721799819 847201254 960497614 969020017 669891119 757217991 908243443 913606899 418524694 974893943 574470760 859510615 399911215 437108193 385263275 781855895 922212695 924068911 751263165 804907445 128377049 152808865 266566566 927337970 95696577 349218346 6869518 777984192 236654200 921482836 653370049 864749028 3225462 41184735 502591588 773193810 35261027 859546787 13807050 209877864 872268020 875805054 739738486 931933847 30874381 723367862 571102837 613060621 18611318 822190862 772871411 898537397 307579011 528846400 154896813 625368094 42988548 690091152 182599097 739520289 299087917 409200692 272821239 602418446 936524211 937663270 617217030 943043951 252494500 389693594 609039466 824222600 292569566 510497929 446903136 600300289 581150074 945409446 346250753 437394686 851276151 899265467 86824521 558729922 522431987 907334015 30190304 597179604 873185709 895804811 827623061 868490359 834486087 974080807 392986393 442341314 767918118 918881773 894758120 974436814 889611920 890351249 461443377 957745308 190066859 792083717 735090148 930361593 350793229 857978130 208158558 687389581 851565586 945461452 282998006 974932603 299766862 921231939 310885125 703046141 834079605 979063407 460187236 863394383 735153699 826616242 629125171 639346054 290705439 865104814 285231963 853719772 72370696 819292930 617948574 660764538 427153700 698457389 872784064 910611313 38671135 898667067 328085753 548386596 87155519 481340192 234947781 535760345 419113059 524972454 724541875 980791246 498049094 759845309 592194408 710453797 365326700 896986295 733438046 925800797 109228942 313969003 993259413 998114553 958910327 960252016 921212912 954332094 589814051 978556793 467913315 745636889 696627001 933543387 963722032 999606150 587077301 878183524 369214085 563877172 611536485 751727157 835260011 956811175 442960731 946279308 768319885 787869278 120189378 281946443 94656707 816368772 931610944 955058448 297614860 317999511 627881302 964063477 502283551 750050360 570747497 722151878 549265521 593301127 443336137 938255754 283892153 779219376 278182247 590382574 392069002 871718187 847138507 899939313 727356779 736626782 693402019 772244537 538267376 960293021 104793685 111095042 668329364 699618660 248665898 723422547 293084609 491213555 4786059 654214455 916131940 973151336 433939885 817757272 130555748 702109651 583712905 753597511 385762053 596188411 498889792 782725370 98485267 432554449 713846273 975650939 397680538 595455227 286447810 915773882 109904385 448882273 716548037 951553203 980688706 989405641 81984645 473875616 697541431 850464126 319099656 767621050 305194393 667722149 19995682 368938904 217887337 917050966 88635879 709496097 421999479 748344155 829918202 959650824 927851066 995170530 318745408 464569263 797836640 801501309 487226054 854124864 85336593 678918240 702408189 860141549 824985182 972235356 801076711 973407987 840073580 928903559 8150243 430183835 693554056 756835104 62620114 767469025 364495896 511550132 187083223 485544208 342605800 483834077 386160251 635110661 383141219 660634213 362894356 507953280 443448236 795001041 516411259 777533408 633461422 706557615 364923439 513978054 266810424 819872330 898662560 977901947 671365953 781391988 201277821 952282010 900631514 928665094 50167127 586301109 952399968 973985371 896163978 908832388 692677498 915020146 867693217 974332512 75407286 710098326 867751524 951871966 803275740 901579616 738496671 755380610 844709645 870474306 964238787 966822897 929293115 989726879 896681858 959718074 856519717 928281542 552517405 789562540 324785666 755903210 862276898 936469005 377656066 630360230 333117808 617773061 575768910 652896165 484776168 790673339 565340255 692972265 712350100 886091289 166779758 855378050 936718449 939213307 481185951 754563553 137127918 954757053 569787441 642108486 850106152 873944518 157008514 645493731 443363708 586283929 819176322 892053391 991882546 996786185 431652535 694448156 703692636 727333708 407146094 536371753 637830359 881341864 863218296 950740558 392053840 878153271 546903635 722743291 742155419 954580910 290787294 780609789 467453832 975186525 562311489 714431732 446641791 778120311 938767497 955376543 28765409 112208975 681859822 876431378 528363177 612463122 49426693 457676113 360492526 534584681 964620960 995366195 270026230 876028258 693368350 991878335 834677629 885585022 928996036 961206686 178735116 181545843 69971758 402231889 623808226 807011957 500427920 599834751 705007131 984962617 540648346 987348909 666675644 835436069 444062421 933025607 718927336 810129463 88427328 628653862 293397534 652771105 102211522 772519153 188492319 354610798 66268615 762051684 701709849 924016200 328349756 799187579 888931398 924229718 457832916 591207595 588469512 825610152 92287569 975825151 922189207 991613833 467563834 585612609 572503979 591060106 470011344 496222848 890070653 945877698 133093832 952559123 585943064 757985964 157499674 992221982 796355021 934466189 183258298 896873549 280454221 497268499 532644237 627051878 257553879 800117916 361626447 675005542 903686508 997136311 890005349 912942776 378609266 503306195 96567420 985757990 745439477 835892106 565329778 693519964 93496263 616321101 313044165 877003600 157378575 729665520 439551891 673329291 271791085 558377829 63618968 905238065 424256855 583218507 96374249 975686767 885188317 971967873 687944023 969004074 861967784 970149145 109272698 917152562 137683171 297866030 477394829 780164461 771769837 963081289 820105766 836794043 632807404 998569924 692937241 841643314 893970642 899759817 544743417 674314070 132325486 754734782 348211703 697517485 931427811 933467910 509298182 905590199 612096417 847190264 437079844 495465333 571661510 771371394 298942120 856275657 101861814 530905077 158830348 877799150 847240231 948997928 382000018 435007698 883657901 983614698 975233438 984917055 616746874 742742963 532007898 988158078 469601075 513638808 278556720 458360296 790506860 999279049 484670238 532689782 758348992 875477908 105447897 780487347 776819396 954592782 753117691 765216098 305257735 581975257 647675657 896472436 598879876 765899902 208797957 391585605 603360848 860292220 907336741 937124534 901711881 968785853 700304034 971114013 917982273 933816517 654221925 998644898 844401079 891015572 176937307 443865236 874782450 938857366 554074950 874735516 82942565 479015926 86558141 425289044 158915910 567481924 716229352 934375266 724641163 865600889 550869385 779089608 88148797 394350224 628020293 740304326 753136209 919289217 967656155 996516108 875272503 907687131 375780225 642854122 967772429 975738628 19895521 390299166 556749799 599415096 955905134 975966535 348637470 791066778 388145327 792440441 612928091 942245825 124756914 985926681 360349543 631740620 272574756 421408911 313205708 876823672 244873017 998078802 830244534 990394198 605623858 636801432 468817879 730705710 535175360 647656812 3911711 841495449 887532145 913454882 46665721 227891902 280517429 389033991 552417290 685694807 366036163 874273967 16352477 311113104 519277476 978962607 909636092 911443546 981239208 997830397 942473602 994784356 943828738 996115570 965512801 996357996 740261791 956062728 480994707 825985854 620841348 881510604 642626979 946035990 171915299 210716235 166084494 817752272 21819393 61201746 337627561 540135457 508972551 967897253 205803920 260732156 113855092 321168786 271270483 828557589 25529605 749809642 205051085 615295651 104146580 567975780 478382299 535781858 852464399 938614975 310353988 957647344 265079018 774363354 566316264 786820613 722565505 764186233 744284293 904046835 530261629 836229909 595993986 960249245 751153702 914374355 107747198 386701879 648974514 904625548 989279587 995104333 743583258 979795073 266254890 353236052 605545574 708333749 591326555 786753001 859926212 912149453 778624509 793735978 625934581 797966067 108415332 140288545 560773489 661054241 60068434 624228740 79314717 592872638 195864449 886920118 685897761 821428640 392079686 654395670 924981229 934444558 240281967 920465782 474343414 863036260 287726025 863651506 291323048 758343996 730136223 918816299 357562998 563475001 144127368 329813989 469909429 786857344 776308908 903615980 717307945 734320287 117146293 508994152 917357386 927148306 595409778 628539164 527420369 943677062 440495472 809101877 113103734 399842043 379707054 908888161 235402724 441449432 394607386 706013322 28990451 449484915 437697322 897663522 132270760 524855408 205796354 528727783 756823743 866787181 341102351 357503926 261081511 733598806 772334444 842499161 70920829 468443057 492077266 943227940 683680506 937817360 584828618 768586448 503499567 661974305 277793734 984004704 894926919 917413707 337283318 975697727 462637055 760665611 946051073 974159763 163930807 189649282 89869139 921270652 101716644 814232877 71007138 355711973 925606042 999167683 203137125 578607709 416572055 955746666 300426298 682911415 203919588 208156194 360442041 481386112 2780733 159455556 498836894 982030074 277602453 737743385 782879445 861798812 355714417 877547994 238387879 556994168 20916621 570979624 984688314 996685656 682736974 818922383 211664908 614278321 716763011 898772692 236437642 905646817 718704739 936707052 619906356 999133140 589972179 865351014 288046168 872062040 215776264 256222384 331275002 899184176 287422277 922735948 478145073 739869638 807233987 885461846 900407167 978815688 238437865 949390053 294936155 500677505 435563695 650642807 604402100 824658069 20667088 668163894 549495852 677615357 546288456 904347923 177507852 305357589 734997391 861092402 515922325 758237405 780874739 992043086 275910010 348695929 487724390 801441953 928125117 946049791 539996045 618862324 644108783 759841194 739504645 899817952 350879572 396645706 189986026 331443257 223983020 903300746 136293132 704104370 271911178 291427399 239019416 440060425 348240905 536415300 648891888 796477424 881752500 995976528 246838896 349831515 664293149 696628293 659377488 811047319 227588132 505916476 712338692 802434592 13813829 337501233 470733677 899249057 233937598 657757376 496005506 558348645 107309343 860574128 786843721 886263276 424628429 713918891 568335285 627337252 799101230 904539295 339763676 734887669 626606241 691849881 458244910 799559376 897885299 979996352 545225223 772329751 612969549 789635353 708095908 898303346 802348547 983038216 496082630 913993346 293839572 996157648 138620178 331359342 65984670 425932900 96080861 940229190 614187314 898363462 28496016 803122583 464584574 474685662 59594787 869334564 891636621 939578568 931085131 937166748 885771548 990519368 725320272 927937097 502032908 811516573 818779691 855115359 667490125 972908550 172373622 456099823 838683877 961357990 406258912 734778778 402081893 824574715 758183383 906879456 889843598 929520920 270156065 524635733 766343674 896870144 685591255 965170999 88915479 867993495 964334017 991669306 676642410 784245672 730616417 839761477 364523473 571256250 680032492 790887505 614116333 702516562 676054735 802978647 557725480 820709252 446269266 913529432 219124090 710482855 555108397 747860291 740420942 811870628 113273928 892492849 480598790 578122889 179996703 279323388 443312994 704605365 812982703 896975955 757064544 867618476 129428425 134760985 85723111 931921386 880486524 955738828 889905132 994461780 9193239 860334894 147977708 189634006 801874732 892763037 958529516 989075308 871220431 993834355 352003835 806591335 497615102 802346695 426070601 667994613 495131989 596700976 167313660 695170725 498512542 574623306 259711806 489257599 835099340 958072906 524429938 748844201 828853885 970694676 343610503 677707874 499262979 798087759 207055389 317527839 758242210 759156541 975384648 979737687 779907500 914027526 609531907 937987483 71774111 126660660 715807343 820170504 859907702 897189593 753490885 974343199 947163724 981653290 67126996 747460693 357838211 453270999 796139895 802039338 8764620 97033527 460529856 908062795 921403441 968862864 537729374 903697368 958886643 990410440 569388654 964576509 440121866 718994043 261170863 729772564 584898680 949037545 807395329 914329627 227451137 456828529 202594309 222488398 149508372 504994127 317505612 433602849 969642662 979644751 41410100 980870399 418406655 584951739 714674007 858747135 988831284 994257205 329677350 906634607 943808924 981548923 502227741 785220774 3572581 742160856 644957465 887608122 3447334 684180461 895452348 946473624 167923836 709950899 922584371 970125211 986908842 988132924 347870038 746770714 540357413 551065063 396774192 675034301 431508275 572633981 186002666 345527609 374895028 447708196 823247553 953868637 879114018 956608587 206797576 375565483 202181115 617847886 555726892 950568525 625730225 797753905 425355917 733795161 382943101 485765603 769047761 944086703 61600005 822246741 832720994 935025296 62575374 147600150 709824831 965526829 321172923 576741703 984440855 990591375 401892963 837896574 638407892 843476403 337445064 657241869 328804903 852803221 961134684 962789989 529793181 716215537 900253969 967543273 941763331 967242180 847552581 905448668 636284440 756608378 605941100 898648705 397431573 588346452 974742179 996394752 978188454 986618459 531176363 621388971 955478902 991930830 994824053 995185261 734219065 804456336 813893781 825509962 166982255 198458078 489729934 848413248 31091169 704479822 127531615 275694399 275215996 653431332 332143193 704002501 195386603 678829267 137403817 888187373 82169095 166190053 588418110 728473128 741010896 857856737 94058281 520654199 88441407 478049116 437876117 987795448 46382021 539328026 559083770 911822345 262962357 808466918 489623141 756620041 786556017 849152986 885246525 954805777 977318301 990969868 581931305 854397477 413293415 422800580 306456840 543706182 487166058 999053307 817168064 882829413 300811268 535017969 691921491 944197875 253479342 676914914 511637159 998666104 982685143 983070034 696576179 989950042 710071563 892621652 83628823 959841000 898195324 985178366 28334410 490482475 525217665 839573323 441298496 515549111 819293704 873873579 974182035 976028198 712454989 810330222 971410023 979553437 125317962 216750721 831922992 957637186 900200054 996167494 634347438 861118191 967804622 986162917 495483144 536793613 508392356 640734506 442294256 446104089 361755517 472882690 260286146 670129026 659452526 906413122 117983855 462847750 923715573 960394817 654049883 745853815 183669945 272726158 962744946 989035956 25435082 195736903 86487172 647147608 249551110 958686193 177892335 883347336 408635748 533493808 354885977 687009968 988123341 989084269 721080823 822055090 706262371 751079262 334023711 810975223 126681811 476554056 356617054 914515763 458003475 741088320 37942991 758006819 905822282 921749466 416745716 700979485 873705510 981586231 226126191 254867234 354508829 733715517 57905437 762290582 297651481 683781032 796843669 823751596 348202217 590665044 974976584 997727096 945721162 963537403 696704634 713226105 500407546 746379590 324434320 692189814 757596545 917121544 349933255 995728925 240785425 713181699 177989171 429856010 467723623 648453146 639816133 828953853 726512711 928387624 125008616 578006803 982405843 986136102 590806591 667768614 869339478 931078009 770678832 845120497 277205522 311398236 371613413 748887678 988915609 990854950 508988530 939588725 937352244 995233297 435359856 738013720 904866314 996640708 752097339 917582715 750420057 965375902 670991122 924803102 680806729 743795825 199568318 986860171 221914357 964658348 134282554 780605193 341600914 605388551 113797224 153399965 8023592 275574080 108672766 827637636 860266203 969796400 785073825 887321896 22367657 755336901 651898439 981134848 593727227 821075013 735896149 985389775 139316217 444394622 218677068 272821869 729983852 781053509 976745917 988605142 766806161 933292784 228621451 988660577 524398420 711891603 589769490 945009279 83311737 199316914 104119204 536546246 46233050 725545956 362038725 417147272 487473483 595512432 873423687 995975915 85723808 96854162 29042773 392027801 809169085 885509264 644906230 876738131 510267777 844698561 167075184 412018879 405906147 988927151 868638267 879102298 824345283 935044701 768817684 967036901 933546102 999098910 194286929 545817281 883500700 996460720 168206271 752741051 660899945 836394695 887449604 910799503 242911864 797841918 887126927 910415363 888289438 920632644 404211447 654886252 506707743 738918323 617929076 973961175 92076010 550282962 359942989 421588650 266581870 797703853 738121304 936183218 34801485 959341681 565795042 612876061 649447982 672654490 444997166 853467525 857725604 923896886 269768977 566414286 660385219 728164587 738798340 892945454 198328488 516974370 194542562 585574601 453051885 963712127 622909097 845115550 541190353 719848697 347210600 773785322 357773126 447927158 231182127 484679368 635630272 926646661 277668496 401988033 924086960 997766084 753141452 924168077 674773625 888729960 17677818 876276926 723745020 923706626 491619690 521634803 859008961 890772035 670477282 709378684 70536229 949731325 711469217 756329275 262412525 299061557 890083871 963514340 257855223 283375169 168072005 972684780 283319635 561613523 121822414 897860765 8440119 892489132 799789235 942409793 268001471 884058138 439320876 751721873 200598608 878800569 276184022 825411934 958715115 993769914 590464416 984789012 364852806 619258675 55829366 437617174 613743327 699469839 405696840 738298674 951885476 987384904 328724744 635771298 974552359 994698054 227224139 415072854 387184867 916774540 316834288 864095204 602649017 608000371 371502584 761239283 439942510 747349990 472471971 836095400 170272286 927094475 702827398 724466933 690630332 820279722 857468837 870277807 572240482 894463786 819942280 906634590 164155036 553931904 317250157 966369517 186017779 358061480 695061037 880322107 493483412 530669405 600505324 688353829 736494459 998832034 745827870 958622377 86978909 536066918 966251069 990076342 977162106 993105000 333004881 456021662 282072243 971534622 270477899 884046882 758430279 760192251 251743818 572233528 231624346 637373000 9969836 309894857 281628148 921032328 433227999 710350981 948830424 986747628 154397218 179113496 435407710 835594457 494121444 699331259 920848640 951878543 275608296 410336185 855963656 994530853 996414360 998471041 601226487 816006413 752104617 811769084 665484662 943405882 817489901 833090395 845633722 880253492 18264587 763907433 366928202 723353800 455265420 894794385 540345349 768363575 64789174 267970450 852646154 894445484 448990616 601142215 371849652 511240414 382804678 801806828 864696560 897713035 679248488 887318830 916870914 960916492 698346571 734806495 811967462 916220418 965815813 988643809 164691892 527057224 592905318 686023973 50615440 482418786 999887019 999926576 375764127 382017631 659835563 841216499 620614144 830667832 585235007 786385736 420308538 873490372 198302870 986929345 47899034 97568451 384107361 762003053 290912841 922395547 936731730 975679491 575010355 728787281 14227378 997710175 961356801 994620753 492084979 721534521 866254864 998061631 29931994 162320035 78030037 554877935 51588911 751702081 605818266 727970019 335086679 356891535 706300750 778057335 455050290 780021402 341638375 940664174 657152445 816533153 46021870 881103063 367944149 474954162 592609106 898592592 775293512 805138178 565377457 696019666 53667403 331436901 291809486 949956143 170548515 720343797 234174274 926657493 774184127 932126894 499746402 508203946 910080425 957053986 850747876 903031425 29017729 603158198 447129046 913611438 680587370 967305084 961274687 990549707 867029261 908969434 121042653 783976079 347800678 972961106 582509258 832208384 662231994 960479447 51313398 467941903 960225436 961934255 373489601 413991667 330726483 713074899 933720408 973526805 921019566 970830737 333644623 745960831 42174945 327982346 862097786 876905475 538685983 830311365 424564732 767122916 304716973 716696322 997715347 997763357 385167802 492541767 619007960 741863915 216009886 508962893 417725947 943317945 312013836 613681703 308329293 366988939 63164738 786553472 756141604 761127173 587744361 784504527 443294112 862462949 324969507 658986375 565597583 731902863 361925553 448029910 281108739 479017403 566041815 858603020 432950759 629962332 854011599 924839763 620268388 721242322 640637416 821807198 650289636 889141117 403351839 723124364 516833030 821185156 76829883 416342350 861118509 955131235 168174309 749114089 311499102 425681643 906400278 994455759 98980882 512572596 266744477 329525858 668772001 734810407 112665431 925109320 765334915 844626495 197270512 972344145 718379421 722441979 334979016 812885772 999669780 999783326 598916944 955271163 674504212 797954335 237519672 575224079 922929823 945001020 874231088 926593633 157491542 846652873 528148681 659012971 907071155 916497604 431057898 793024131 288537445 605139861 460251341 727058946 268331563 967673424 855499220 918046962 257421229 846533262 777638230 836331232 964285501 977619375 977941580 979057651 169667603 637447161 278317539 759652530 483627648 729833748 80617113 236795437 956439686 996927408 584665494 682562906 112901582 949177935 1514342 327068262 172658267 225830508 589071574 759642592 541373819 668476789 151208150 876570568 195105873 941027733 493571399 958805228 392197584 816172051 793713461 820838008 544260041 853954378 737416039 932829594 777254738 853513469 177265385 337954228 562733417 865784859 953126023 972422221 728017788 994086763 41308568 483378387 251170850 746870167 3988246 959971173 520668581 651476071 446564943 720003947 150198645 310302756 823037400 954985971 375533577 406730558 712087920 787069541 508748767 968283780 425444049 645231386 152433265 451243145 266307555 420944069 188497316 875431413 655811985 937118264 749099671 794149008 868069681 950561938 279377049 747288791 776375444 811930598 432172061 435632587 436535408 655819053 326055237 613691115 261241938 880250197 632088517 828489321 256692988 308757350 983481947 998090844 640631987 988740215 768874544 823863432 691374728 764561798 858794765 872687901 161081471 772522192 836530803 974860391 801410108 947832053 692344452 772039106 345049056 890507072 88806870 213210199 118292660 198577009 182482045 812587790 781845430 950844499 609429336 681174788 39293181 61996370 269681768 957902043 811633613 858044415 56793310 842575210 408423455 943164746 749103203 870703090 791346873 926464014 792898470 809473089 700356966 865839330 631512121 798574190 604943279 769506406 719190124 951506436 841975498 894197533 65714938 376813598 723236374 987127627 542986973 904169063 813243202 854709104 875662514 962111407 721339176 968621505 420309332 420711725 552298235 658005186 926190417 949372570 176747869 613786804 477559830 533360778 935030156 943636747 57283060 642211413 284706610 813536881 132629635 759297611 95900277 508700514 731354127 774681412 519663932 696202187 167928349 416572851 931359768 995454025 216549611 303326985 386270048 444207216 116408212 587594632 748774848 879260146 807973160 891869131 684185573 878443452 938235692 999755478 574680968 822511582 501008457 806562944 634011365 902554819 100392930 147108063 715227596 800502596 779507425 977842054 923568537 925536821 6240224 120193991 415570423 949873645 879666431 926751664 260832862 895285942 380751827 540390853 22496131 664463429 350091182 679827021 778568769 913152125 821400756 997159890 627078878 813145187 355015178 483160942 267403389 405226831 572814088 944489894 497778288 731834233 882648564 946941168 540911239 693303203 227821729 969646113 272083932 888208377 813353298 951294164 657195628 696162892 238116390 767745996 993792033 997677646 1445466 439350112 147086880 368209653 389063200 666845836 779922826 951367397 365953702 976441506 854769045 924344883 252488977 942503167 836972664 992790387 603368643 682347054 643031285 972161028 230776167 680758753 219075223 487024881 381786742 991213460 758123741 868006450 459032666 606913031 215855374 866697906 885229422 949634765 917663858 989127367 471970438 626511360 775661600 851642316 520019143 681955169 710621021 792261151 956673395 965900541 831112841 840865777 405940981 936639373 764881142 998079831 225307607 821248393 680565163 711381091 315289401 614845982 823514745 834777307 371067323 788468255 87974508 940993467 787042746 997134312 719476400 934183639 230123005 478534660 516582545 709608827 66480697 559639643 503140789 772126146 295170365 881852716 133485374 805123985 515825289 631093324 795074557 930879031 64410508 352241542 286556003 797372447 133756843 583706735 776678573 919045573 957081118 980120556 942233939 967659748 797569847 959835166 397858920 744867837 434072615 746158471 329762432 899390117 173118200 646040640 443443726 553611835 709646246 906010547 21386707 817849356 301144906 571628923 395351890 834373781 947130 229294150 164047868 293090145 758716317 762782678 233866409 833511693 29607021 806182702 353004380 400102007 717802995 920682321 434196112 600693665 509856843 868689034 932185057 978834960 700178916 714131644 914014245 916516236 330934051 966850304 397291717 912688465 949954502 996611040 585525788 718241829 559655003 560717427 38322747 985942224 202966374 517466262 33406523 785832417 919287764 989011051 436598492 616392028 528633038 821763523 811510376 936962362 333798876 939577947 651304223 890261741 774014314 774899210 309261182 400077664 301554986 621195801 460062629 744843877 39511921 802592247 316395472 590862017 952365599 964084830 865430683 911981203 82926596 219060415 961589325 991928639 227373575 957311133 175179643 285853316 926044292 951646226 585601492 868853070 748037090 771121879 655026459 758411996 234499617 634445052 835182134 842518233 706677163 812416345 412689523 673855709 650867398 652244158 977386386 984939567 111323691 317400499 410263623 683570401 10912013 456052289 492697042 512112273 584731096 707114419 508964085 901620109 494157227 726501747 144587848 271857657 350724298 591016352 999465489 999575200 682738772 960122214 237135785 985565906 837093876 855782237 659925799 688917638 740394673 909108135 259285543 384504423 766606316 780909835 157151202 910691165 854698027 884598770 328912347 674939010 14682483 457482472 911530071 962200391 64400193 301684055 771157647 935494811 236865869 646428372 567552885 623318518 924799875 969122131 121386633 700872638 282779729 402098524 489499536 947018637 716513764 719001983 429147225 768248199 225718202 364986442 943145642 988634602 753842417 880614237 180727372 207252553 953320060 975519123 908608394 943749201 527731989 781967256 405801625 724172983 83377426 253654864 439904637 523213656 732003761 885934015 44075867 802576364 230255463 429683397 777259677 798507639 551495149 794425576 807208307 837254544 296617514 926546756 103218236 669878942 925361492 977374895 826296097 954448438 493022535 834030813 211889523 492203672 827720138 877211373 676955958 870854558 653736358 892352142 99995996 699878429 867749579 972460722 682622796 960986205 710454279 765700705 641447856 931056465 766974180 988687004 592117230 903507625 314062520 881524963 788845140 955862052 378672934 680284468 318601994 601687529 434649151 630649133 405755220 839399235 201747677 849230006 559041548 718125652 320851939 796073038 479488045 719251244 565174535 697732318 400346105 930130909 309409336 580060533 546043218 548723670 98923401 757966091 342927870 354187646 72982100 766780240 600531649 824586808 724962982 872108946 922793778 944047559 288738955 381502568 998155832 999515802 803421189 811303209 984686051 999663701 291950541 300919796 387978666 722496354 42421130 541361027 640318613 747160146 521332341 628718244 17596897 470482582 809411067 837547195 496062577 627705262 291737978 709040434 134582962 553938926 33381457 967451020 521019504 772647369 595467372 804228765 843262619 966183911 653497075 858833508 146801507 365895302 589765463 842212920 337650428 514088811 249497908 765719155 486464377 768189619 601722912 865311822 281193911 932001160 105212592 632297359 660522731 974072719 638932977 800280244 401732557 924671849 37046736 569117446 405299051 726816289 343893583 977403589 296534865 634773435 896456822 987739915 206399946 894279589 221119531 292059006 169779731 518062355 88201685 354067546 894481789 941188829 270462383 272559306 706972608 881349055 561281650 873782071 50609915 743126970 753075963 807840896 478980574 914270639 764892267 983979420 436712492 569655816 785068916 895483175 488353167 588306283 884233506 934528623 538554616 935558066 334432379 980426782 347804643 428901065 458223807 966475058 890047918 909196037 998150563 999245194 14096400 482446806 609300130 703289434 466751642 597025761 862958762 930799048 32792511 946646366 364376811 579557374 572369783 674430775 591612658 985758685 254474879 864163968 430625146 480754121 683114320 886881422 445671945 554532618 604377985 735011570 134531578 984745948 70095031 886730786 446207347 739270295 333081330 550757647 601088459 820704495 369066872 639245276 676243647 952050328 915609728 928275702 367110184 599060485 916223770 972090171 215485867 495951145 900962708 939714960 46724708 664718587 116741446 265812597 780897666 850956004 454322124 984897150 385188500 759753876 428683031 531823268 871560220 994354490 564533468 575549266 451907726 980245586 420584905 519967355 698598561 758249286 754225648 896239801 587856464 984958704 804954142 915935852 956623936 980508218 47357809 256928348 205902811 802047617 572638531 716991145 689276302 723955510 579330824 982566816 863165081 993649219 823776614 893619832 340391538 432912826 384219167 385082598 507623130 853829758 868694458 905511699 919646438 941815510 390486383 627096936 526097317 592132416 710737887 796392616 607885517 777147389 610785195 731179482 198078280 681993211 800886692 889513550 268974730 928763416 391416334 621650324 45358870 914223670 79884579 714456615 550198767 607494874 970895632 970962882 36843169 131903274 181746524 524947092 263655450 826573898 381313938 789869851 164662275 268608547 965920053 973885331 585242846 915556482 2055353 894951152 751245038 781418306 323639445 536099537 70303623 716625697 115892568 692015866 487646165 732505201 181981841 562598863 249794628 840751688 246996792 646121477 111623975 874028336 298543369 406926949 865596928 899900758 169214026 208806490 244607738 374864396 801896915 887918858 305937689 809131427 23069644 818419354 423158954 770444001 582034237 674585287 115526662 604987039 250789224 417500665 303054448 888573467 476646068 952370982 806576069 933665647 459968226 670665657 984295122 991279379 224548763 608650882 5219410 687047756 26077449 615226343 970917237 974415283 472798042 679694609 73595433 165670152 358769832 727596031 595866386 634318309 833705609 917714586 824531399 895212796 52254656 137023649 694364750 951709403 551576868 869920597 162537684 946294913 17769371 154299133 371418211 857664908 807344229 987573692 902478653 909622049 983335288 991098174 788378689 959726543 688721093 934044112 95626735 411655162 149822725 452842619 571508785 626979813 370380629 645065292 814723558 941024177 757478247 852427053 895891768 920670968 573624342 882883425 256376434 367253771 213615650 670871566 82342347 897977796 892659645 947194120 302578603 855095974 36420980 145176190 157620307 322235357 438722038 668537477 343123423 908415471 830620119 850273130 377711275 667786986 303511712 306932165 691636788 870147399 693854821 832942837 674616081 928434902 998076309 999612086 361630914 722669744 443091877 489416801 513831385 534488260 93011376 766388134 646389663 992362268 268801095 828838828 397881059 800859050 125173285 975077464 602390299 637410377 96956726 151084839 841252388 997902008 919634033 946601276 546842982 620132333 434861928 533354139 265714215 370394380 753150158 784056155 918401651 988219560 54001951 853165153 864809621 904407699 94187813 469185501 839940426 850000591 993744075 994011158 220096947 671217528 527686933 592541189 974810165 992178730 459708357 695027283 890374671 894026287 55027346 143963346 17758804 814983830 63498056 178738759 504040704 637429084 729835353 816200964 746634434 816586161 773584282 995753192 809687288 982701504 39216271 681307869 121245439 292509522 541325512 738795956 565153435 932713287 61359683 563736698 43407178 513649751 698642004 754061379 418290085 683802267 856831779 942431216 276557045 938025294 164233309 921685976 384131818 680129088 198802843 667716410 322358590 397002542 622347675 829291442 787845543 883079720 526585068 708599109 641057766 766790407 917521066 954013349 196811545 648491357 299341846 749631854 718903021 861394535 309322469 583958059 658546613 785720151 435260458 671708332 218528513 897831022 537162572 885142437 837296319 883012378 267485841 558516641 384820325 504460778 472206806 959647809 685461793 808286977 294350921 817033973 874299730 904658655 152435257 899215674 703839844 728293501 862183754 872845211 64288611 289555849 686673437 870928602 887365756 983478278 634947192 928217048 471217427 682701607 184527909 903145642 786107428 986814455 73137945 683544268 782578245 871662946 881643578 893180628 295106327 544809843 432112028 682696333 279715982 878576143 237326563 938306654 590986183 851049040 973554347 981859602 968117407 983752009 783635777 983585771 957694009 991438701 916889529 936995375 94817792 577746368 551107823 673363728 662456087 834220300 473713418 601497228 163981003 589583372 639123125 677681146 189294487 834642159 719581687 783170559 179390212 987964781 919833400 985607717 214085084 668425164 534752433 626666171 536833021 710306094 811733365 894279340 277124494 462286500 16823069 809888869 812352001 884120202 758250869 880768381 983153182 989616320 508864402 820983978 993734098 996386953 552638926 957307593 784739131 786500865 747620822 819650486 695974815 743060325 930418984 948521174 875152332 897577220 223863061 425196974 68460300 835771184 998764589 998784417 861943199 972912122 390075088 830038713 492648322 555648064 402709668 670721725 295083163 428355266 410788048 632613718 843093730 983265733 670435047 677692961 61948509 368484661 252750336 838333488 947793068 985633470 203092519 608123873 245559940 370838029 34984418 826745037 178327035 264209961 486490404 849338972 830118849 848452277 552854462 737533465 867615020 940480834 82306610 275691445 155066771 747266789 954272603 969576436 784056239 790212942 817622591 823445560 453561827 729768077 12200340 324658832 149264437 388455025 321982489 529557032 22189662 616242561 849286557 964825736 922760113 971488519 503843200 652279246 831479484 860461535 570249897 684735254 881436468 930846009 123794353 620832936 457428133 571681174 181201807 207938192 387488923 488715471 421504531 873969302 166303347 859427850 828139885 843167589 385401379 463681491 804617633 814084398 13669270 630990786 928619606 949578542 557837821 591708907 265549419 766063991 195146617 857354787 284159471 962951306 512610220 665415949 520265931 581395713 883312082 965267312 268479590 525379314 661283184 866807563 345025492 835350026 893120220 979032529 402869334 525400020 212468421 820010489 426344374 918412477 776226165 814345031 44784765 927185184 574224549 898056063 546365593 735092200 444843312 967996112 939995652 990372517 561068241 922725262 979493667 998276898 159931728 248839505 366016071 828188203 224730489 561405747 741307783 759097330 794715863 948525618 816171240 939019946 950111378 977071664 577096535 914224747 591320187 695385555 412465940 584872458 703953301 958067958 906732623 996921640 270557296 513668792 767445672 975088177 486057143 980475623 909650666 946277465 459737489 854299487 831921252 988436984 325528448 987577662 846375619 944132449 121031221 368447903 147153137 995407276 372298533 477418880 971452613 992632587 65974966 85331390 955074506 998566557 288825445 656647545 172835166 829131852 239425809 492421742 532261114 545559324 872092614 875391253 139006946 506719385 401101336 750516477 140235664 384229275 385199349 955342111 924963546 986394965 427841978 895547736 343577268 738878514 227907759 556504104 555645068 620953114 715216780 926241784 922195693 957514290 863697922 952504334 423976103 548480286 195591464 920767341 919459289 938350157 798301636 925580741 425786685 771600467 111423469 283169415 251470228 437456858 550078537 655567063 966485869 983526468 769928569 870140127 545587237 552831987 300526800 420783005 961136547 968605884 133024743 507847164 767495249 859851509 685913265 983214762 69694559 81877597 528512329 774252426 827307588 892925773 84648450 480433427 559512727 898449005 187871789 463124492 182317715 587415148 536928636 654942660 950147523 989046738 47733007 928228076 883380532 914709665 811756348 892733200 275786136 918938969 347705077 376555049 970436437 995613666 951391698 989390218 571429925 851521884 230573948 384441287 841789371 871288375 525342134 791963434 632911438 918255438 992045655 999672883 562420615 618874392 206638031 815442050 842693623 893650208 565557526 699409988 617594380 632844457 508380766 945786992 461334930 946671581 752961009 865255203 808843547 983427757 874418961 896083500 659008409 927547166 650989999 766765106 210638539 483021677 573491817 693090513 700463536 901974183 532473082 624784603 867950645 995550569 145413827 471630032 555903069 695110523 179166044 401276719 381082062 935597019 202725619 216525016 669919804 916416985 357569722 471087845 663061607 827195059 39313144 214614711 675831518 718663594 838265677 884666319 967229131 983827847 123005234 282040110 360403898 730182516 121310052 785416919 282438159 292807068 383270043 980033574 714799234 862998044 435275618 971614308 751486047 981568159 519356965 742517276 665856128 946875011 828804058 974541955 905415520 910148465 32188980 75425273 614598132 895094138 869460252 943895508 312875013 327040676 932782167 966616046 910508381 991861341 601976869 909662678 357655111 561701516 138933373 678250171 499429657 937690972 476590401 843942212 620262595 947853740 830938954 894456926 587737876 772946907 480037923 695654922 336663855 676934569 701611345 827795921 402623478 906555224 687156349 958251238 442115866 715719265 276555328 949924748 908681038 993063628 479453363 673103806 669439468 887772884 186800574 884399633 762934821 984627112 416702120 855207998 126932730 485278763 163782263 595780863 178330839 284398989 737702399 979250406 91030046 496788132 953421817 956344914 178718177 936697547 7350673 808704189 805010470 933772712 733673577 992526840 771497615 909663190 296170276 695951311 556638806 980636737 572767462 947957877 713989608 820445162 752752024 821413529 452914289 763022686 821917140 859094045 911480296 998618186 277776720 686226237 657979035 846995443 826763241 988082840 929676074 973960203 729948802 994479347 85106940 197425396 967735028 994088342 142031279 246523551 998270910 998271407 472578817 628770875 34591173 472577663 896201800 907388756 350643580 945113760 718228640 938664011 331891959 531891468 841696490 870879217 600928521 972181501 831777195 920008607 199009079 771825701 884372862 903928276 710495840 838775879 324767223 381102728 380023047 922313870 698826981 715006492 545620110 991852302 29139117 741688500 225583485 331689939 206355541 741380754 394908057 806572554 385153005 451470758 480690413 703389493 446169150 534765994 857414144 876277426 100793099 210461492 303872415 659277400 223285228 317359903 605643987 919966347 175164166 751609372 959776864 997794063 206321750 727509147 875352257 996844283 951258089 992160099 382907410 455875702 949834119 969466807 999254095 999779356 809648929 928919090 255439145 652450426 691187872 849242457 787466402 925881211 148338638 623718962 499371213 784880585 680560384 820238836 9410943 69650667 662051208 900998939 471383731 623390622 777957279 821294519 155085814 686816369 540762133 704290042 552346062 792319203 854319552 856356442 645046696 894128926 4341179 547864530 407464307 706537607 129157544 457787611 678107440 997118237 221191977 798494899 561798802 949892755 395089948 916302208 724822531 781742719 443605875 982824416 344809397 917361282 525626399 944768283 389771430 841837967 663225757 699250930 148934951 987707273 917523803 973276714 418297892 749395403 777724370 854393960 248420513 643219257 386731195 981419656 248301783 333781620 18460618 119052677 352790892 476572459 661851883 733746132 430095595 483443944 559004978 801596546 194003027 249274738 373455659 444807780 965960139 975385834 854013218 933485848 439932707 983637227 952651322 986375671 694676713 808228802 215971382 931681219 279844317 576695120 296914894 421502144 522004795 915941568 250147986 780552573 692914602 917264713 463109598 792496900 212730763 563914471 928783130 965027740 867491634 879404309 104245091 757994373 551671575 743396857 136962180 901433433 414434540 888611720 54352133 361529857 845108504 854356971 111728065 888389319 575559774 745758893 854680179 997345243 600451671 963678548 986521823 989080723 804434307 961662924 166021315 683949496 610537254 889632577 351400619 685014600 208800064 219508438 343171876 748614393 11097747 502853876 633072517 833676455 303691921 439802139 320745040 903535382 732323390 787806412 173629471 506619830 699106417 814561871 252537441 735203514 420760945 593669339 590665481 811350648 897893081 954182692 900494215 904892377 844602155 957090587 47987722 525399371 447792871 876322311 423268624 455924825 511611156 865836304 381966798 810415967 416013123 447704517 916881692 991009827 596508355 844401142 850592994 895338455 378161337 771835498 341897872 696192101 756160313 790787957 484484584 728095300 198333106 623259241 880428477 946800399 677493713 866488734 364214833 454232528 45553674 965299648 894976328 960031417 226774965 577802757 670459710 723406272 109953086 405163499 761183104 820786292 682811528 817716789 701868467 705522287 904064389 949693148 677169447 758781586 915963462 941627674 552961747 838114563 112566648 156624475 562481424 888481742 245075354 387818926 970811107 985188182 608890350 813104607 509065105 725203038 306676973 360161525 774959895 942483621 974560966 975200490 474683075 487613893 624708349 779208681 470004169 508002867 897146502 971004698 488833096 947316926 759041823 799164958 380713289 412756683 799308719 886096712 596870416 764265664 953783322 992761139 863739265 946294208 683709887 949293214 426539091 707853035 282753878 459650714 433593780 831389518 895003015 919741488 246874345 470760484 482413256 812817132 453576085 837915331 71258769 331044056 148591223 689514777 95700389 659734212 686260017 824923595 864344337 890634881 388551786 505494789 654974250 938606263 418181400 799183850 149262172 383263371 659114958 702650402 736414979 988428425 306346155 695260877 927970867 937812153 547283284 827702238 853597568 897226983 723925954 828688080 894036180 933627667 153514117 347305676 652145688 892443683 776198021 976789689 366275441 729579226 775342258 794247663 816003007 946265418 248768366 418986230 841559261 913757297 319084881 365153975 286339164 720761542 957109442 995684064 71609877 951678211 903674660 904235366 537283565 555698773 573367589 968727313 68392828 104072677 108742014 677930518 841977080 880596243 936495785 945072138 527092992 718681554 514989543 702093853 773570461 888125180 432382198 929080244 990630207 993505121 443778311 606282071 343468802 580546112 447866349 539247195 510702641 959031613 834360154 981143734 19049057 240442440 743407347 822411325 661183923 759133034 152637585 459573638 193957068 795491854 515581194 822011819 519752808 982663842 185493835 752645633 118630328 719184519 121112559 664310017 344038869 758576783 335912672 404162057 250533886 842881879 574309515 999549115 220932577 683525247 234454712 434913843 13799916 913518488 266737375 658542593 390069451 467823803 714381524 902034029 352972077 740945589 120749920 373314076 628878973 769502035 848361137 867629615 468261001 978242552 274594057 759983817 542872199 752551588 967420101 992972745 731076495 892185985 569615171 772643129 709146081 730609343 899277886 960430382 964397716 999198597 130634897 746176312 904858609 998577751 297736455 922969507 705237224 874423873 600064277 624095583 973165004 991721300 9805625 569217273 80276443 318158502 440668698 923197861 781755263 915628388 565444612 844853367 110210950 465013503 116560769 524787354 356244741 720125713 694805304 991718047 233630198 811185356 866271791 936923014 306329497 389032475 411242464 907519690 336885544 799860174 373974830 856653698 353777191 778085522 441305912 816117266 994151126 998475043 900462348 976858755 596169963 908584342 830516108 930233275 374375606 994436923 924569268 975062049 171641612 848067873 75702238 502418759 524225173 969795040 966958292 972668223 487519246 725310210 592986822 934919961 18517857 587181652 475452919 509319349 979535448 992423199 325606014 436001876 909204637 967947570 333195159 882184854 173704027 918831183 240292265 435472480 66885048 342950497 962009575 963934572 563063104 570653536 456117205 870353815 314309134 428587410 532562421 758856618 811164776 846859891 845047752 977820283 192939980 271062439 135122481 848261918 862387936 989326474 51951017 907768375 657245668 670394686 801504335 888822345 14192915 34331412 528749125 580295113 118707104 803287469 434095950 815222513 771014715 814134427 666549994 846198355 278408767 480532823 555626976 640109142 433396058 825308372 606561616 708714489 21568022 230848494 313374599 478758149 478459523 584961796 219943986 689394205 842335136 990959313 165472061 726372417 89052203 196891075 508191906 917190087 382352651 527429865 906116236 943628060 685440056 754174483 834383948 919015460 234295416 283242625 492451476 533449931 215050487 569624529 639731554 758204855 921964182 965944908 249994977 788040918 636374430 958622474 153267036 543777954 93293813 911208490 406194078 446462876 95084534 385889393 705907054 999112274 599945265 849054583 851608756 895732104 669675276 745099256 970654478 996711722 880715679 966974535 509732244 859539997 801277702 923646162 916596172 981585282 638518193 889412245 846643083 905773194 144189277 183068594 828416499 896338814 940885654 952990285 15185957 275930837 146676287 511980314 218533673 259911931 193943160 545778350 466024958 559280375 129694269 135191614 89226222 223900955 862564879 958699269 621055642 757439779 475905189 973304764 918888977 990592725 892949750 964389394 489362002 939560264 287200590 968284647 52698395 250008539 36474270 610046965 585225606 999973681 768325121 863353747 792462088 988195675 192607738 270787590 265570340 754759067 292817610 890332906 742213064 747607749 989662401 991468194 296025433 457238743 236242466 959512454 145245058 788990207 536382748 809829123 315280384 705103027 548739407 889174037 203564674 918264529 151307009 806350384 801688968 901550200 27812697 519814082 553811868 958171974 830967095 840108055 111834403 292028242 227879485 674398930 187402894 905093203 298449584 459752234 884871505 939953101 122062268 383479774 306887815 895369022 848800320 892758399 143242405 724558008 816558418 995246142 323256744 472927151 119164725 939156725 872992970 983490041 130253095 847766032 810250693 878234773 199710235 216209535 662065843 675138017 259685525 623051337 945847012 951899029 754803438 900555015 681951075 946178210 897019443 905220785 218199132 453345754 997091859 998969132 377420278 600639664 447775070 734127928 621864351 818655640 923501103 936087777 550373664 725862589 823982491 958908129 672551952 778723809 527719754 778292812 765731516 886990225 321925624 333659268 542316473 748863221 318253969 557567245 106304761 747482237 313111285 747038941 193194247 648545141 72790026 129404309 768089994 944348366 736198135 795020484 984886638 990350716 393507174 558449486 492007249 928355071 950220866 987911495 359120244 472033697 465950850 949956640 626836023 880809936 640187584 752341613 21501565 412754972 503970391 618354034 172785187 744731760 491842079 770777667 295391002 488940793 504415426 843626434 997396752 997719600 5464740 50258741 571938930 683241367 125863332 368375315 923874416 930398655 607456797 705905088 608931798 828050632 331917455 393881847 538854436 601352213 200671141 357595736 831561167 837809628 964138691 996127807 870117374 936966502 147531730 857610514 232682895 298852062 910181046 977739762 444652790 589476965 157736501 382897520 470243899 560384873 177775079 651113168 286138790 365609234 709076111 955836221 161473694 485382901 609972155 930097183 886142049 916656527 487026481 586113321 754414734 801682809 316228615 572141291 515619447 870402122 301956135 738321994 947742551 972000626 882009669 947691801 778846832 791575530 353672531 481074796 336670033 669422884 84331477 954401216 253793733 983269303 535768274 953383012 602468593 634888930 153337783 603180359 385737584 497225531 739000687 867989932 537054302 561447517 492057649 630516378 244537327 957585189 311998671 976544044 932555290 995838166 865468602 871915840 722468600 977978887 467575918 565522332 296052092 792333323 469974333 722891026 289410769 366136662 786357762 928506831 92376840 160469433 260028701 743189622 409028779 701211549 725532331 980468306 36000086 329874256 487845986 892629742 439696873 582446993 935976298 955055012 102106017 133672072 986921454 993100597 78675983 113191551 807614201 818881554 668319594 783931689 452857307 957789795 348208569 788828824 711172058 759873323 436343452 838133571 781601424 921476010 221298791 989495432 20815565 616919545 638168470 868981468 955629160 966633829 107341728 516208302 259537243 956359598 648844496 956515761 249777118 964993425 160714559 949105451 406812054 646396618 230690821 287227176 791423582 991699390 859487102 939683978 427025665 510511674 275159891 855604790 953970108 988719690 250424790 441226590 500282211 650922781 271143556 647274932 321000595 535233513 331840814 776898439 619917124 914687983 708069925 761924479 845275822 869128706 979788102 983809060 806134676 892401076 32963169 227719413 342354798 358719772 975911741 996554149 466553440 965852144 698769068 961640940 164509354 818082513 828061074 832457948 739720904 878851140 542977004 774706914 641376968 898875809 842816778 872840307 960198589 965116572 169305909 617168673 775878345 979818084 20220563 187031634 593424049 995315880 756127516 813014906 698751125 958926649 129668031 478507607 623812970 734520843 820432746 843940633 634588909 871127449 781105574 808073004 430160994 851803319 280636445 365123107 142946138 277160488 141901648 299197500 689660012 897370422 669702106 881271022 520877150 642333090 477435890 823068668 431963263 874045682 599411257 635028944 561210648 997767996 950811782 967738370 634009184 771445235 208168302 828152579 342756641 486382722 938417283 945290315 24196220 119817454 284714251 464993252 558222353 683340089 863555277 973757611 53143162 295116783 937969694 992467135 844198528 874494042 520443616 765342589 180209613 190061053 41217643 82184149 468247371 863917185 444945808 895868418 999800647 999809390 470578235 677565433 537199845 772339183 679860194 892592081 990933522 992015395 940132808 956524408 590360009 659859285 163541060 746026575 381514683 786260445 491605768 817124481 798232486 854381597 536616226 895137978 721724225 942418415 569314071 801269488 868375886 972241407 149252517 431416699 950429962 952344006 733746658 856195740 386104412 773809641 286144142 893389009 413973982 793276407 21465664 413517498 52650607 262722420 724503324 979001483 649471015 713261460 580510023 673715956 568988330 582297489 533726707 710071238 3695758 509413965 987729081 990092307 683045647 893349895 831940240 978977519 141985074 460805276 760078704 948618806 609263312 886093829 112094591 903766235 493933645 920138458 658427028 723442271 950980289 957019389 19244550 295886627 580922641 673285601 22926932 125972261 663410164 789063955 133931120 792787592 163989633 989238718 301276028 983271527 104840180 177870923 814818030 963084388 231124896 679833494 61809019 946174738 175758453 527399939 291480489 380964056 536097057 927001865 947324512 950704859 778335213 892616735 273559244 972690252 800978181 832811239 262479410 945679508 900344454 976256768 136610562 421069226 121951429 844424772 766278139 817040895 601102377 627081743 264935360 401575972 416211977 478215327 670263040 702736016 207095534 861249346 729389011 864780186 966599451 970706212 78924507 689652586 17015326 980229144 690770829 706530455 603058885 634337305 375801545 757328603 53725674 245712203 111395677 204969762 918660419 957078075 393897846 791264191 359451952 751919952 403464672 866800743 224448300 787505473 442077351 593501648 789944905 959724004 346970428 575177821 848132804 861552091 845463617 952759797 767590447 950423383 986717693 988761677 496321645 604710731 179161095 595036528 930688427 938261564 436788234 770485762 128864414 355637836 5393775 16219526 351762589 909374613 470168153 579685247 471801513 760215987 657589453 734001012 695200500 774858861 789692112 809574513 213241058 213866060 602427333 660379167 108854279 379049717 840629492 879890824 492934925 832948671 744821719 836460463 757766519 768735533 394191049 502272049 50589768 931930965 414683451 797983586 366348990 564023203 765388033 980897362 646820178 729164003 308334386 987214653 913408422 936677724 546800833 699594653 956182342 984299643 887925392 919568947 699116522 906763592 898373930 952852894 449883093 938217190 800127661 913230110 403304328 888694527 731258592 839820085 281445707 564763691 472774261 916619522 539862884 852385553 812512459 984692161 430820475 436048346 771547860 869437457 317784927 984165215 464669008 638195960 695967099 853293803 994956304 995728506 850625944 987748607 719736263 757965372 327697542 676065545 151369180 941443844 165902731 897350490 973818169 977201241 117473481 307119159 154773139 946374918 162517266 283713309 341278850 894577934 31946752 632105390 847415110 956803504 60418343 432069953 281309198 683613614 552972957 626079674 820432189 974775422 470907237 915412354 966411939 998384375 917703955 921945014 146081908 649184833 956418897 980171947 587620832 699034060 960468426 993345293 419615591 642942449 366284097 997116143 343746727 964060252 730302700 864631091 196618384 467782613 981920229 994546456 927035900 972314922 45995127 775628811 956588144 984649214 92416895 373771828 740008480 787562575 787804926 835186532 315675906 999915789 690205368 962809909 573472666 968285550 717963178 749249031 42403708 657913674 650237383 771354317 873445605 884023320 855397877 968281158 900007123 960618113 659993105 914976225 257479606 467604618 578902261 648029385 974487928 977323078 290495571 623635812 215249452 524461969 501599537 727142923 450554766 596086374 956331171 957610988 185032290 607319727 538842919 931909681 89978595 629522556 522617002 770665513 938274707 993986800 678606487 720292177 97159433 908293709 200739614 382200297 415552277 760464463 328121180 626723519 424721831 502015529 460964529 580454751 820982333 990608717 130375174 655392543 575111589 822235132 156983882 670219297 913545794 974245812 821277002 930182331 990061556 995289699 615409597 953206342 800998146 908581517 660212911 941741406 967504523 987966711 458533580 791379527 588208496 698716412 829642941 880508651 444273946 568884867 692416569 708548003 367981210 755198472 308985069 693057863 77668003 952929877 878643241 927246564 695914242 998753762 948671368 963878358 644730724 995894632 547173077 994841398 234465876 761169648 361465399 423480839 697689861 734414303 710301038 923942273 175210129 570942524 259250768 288639027 447530181 793603408 371115971 373190649 72149581 435751007 468356980 834981682 928205790 947780997 185071579 934857153 382481799 546736978 845165815 860449312 176183879 534754202 287130582 986279488 954120602 988334585 388800502 682988223 606980567 722381058 733700365 922618173 711955424 993762565 991567826 991812542 941873492 968836115 780361930 958403711 617680816 705279757 26089518 392041740 678298221 746680681 900578397 986226690 212082615 677095384 239551850 663913975 65942953 443873803 874237756 921341286 499549766 785738227 162452474 598896954 49152506 673923248 385128046 518712934 3538534 970612355 637886370 958432916 899572789 967387585 349469066 510045102 510538186 652706066 355716021 894059458 832843034 981709193 193960548 405448713 999919387 999981536 944712571 967173506 158379149 606799981 377478830 748698416 159515620 657159174 974000852 988140022 629360135 883784461 356518469 817931093 821868477 845284571 956402662 983332646 902779530 944242225 612915024 980808729 102110263 448680589 950303656 960469520 131273412 346484883 306409298 427178530 394557781 893550045 619823883 867456312 12126658 39842827 477421553 930120096 578675102 612663292 83224252 145066103 265610821 686859567 677738162 820889616 321248751 899234438 868205982 869609159 527194668 548445863 51599816 592781103 15118750 755897571 609650891 914977918 771887619 815281804 692684888 705911094 824502337 870749303 875571298 895401475 423646336 434941264 630065080 663870939 233560185 326413120 767833454 991133744 625349168 815381922 151794458 623371118 418605710 665466073 76402268 802421635 553156723 962210960 325133097 690038686 641861757 969314251 293441027 424909470 926576787 928287408 89693559 263999995 462105335 987566534 931034292 938133015 40304846 752177302 293279191 877162727 491582648 912787309 140606290 942887321 18816880 680836628 516884821 566351236 960300491 961537048 737850689 983114237 735963140 870759191 79885750 448688811 868868760 918766774 639322378 642483372 532820393 713565430 538346727 683360428 961965337 983277841 209811676 533812202 148603779 500530141 292411567 687577691 217963846 793800738 219424617 881830431 371779004 656185421 332253939 579573635 847805453 959794336 691950353 714941994 198947340 216192542 990665956 997268511 924841643 966616417 294845455 627265834 316817912 432922171 502927048 757474916 811140488 943506039 204907399 574782734 632665143 756977758 550907753 928873691 719885893 949772291 198995543 209317053 920899679 966456151 443738660 865998771 667321994 810903432 762727796 839920190 948734351 958300794 212120460 886653878 496252023 949402526 518547081 883751817 166261695 238998784 827690283 962322184 96283975 434824086 654658147 969515854 423287729 650595359 848063804 947772237 897594978 961589124 722115723 871986530 382929211 389406240 540708231 866225260 341800525 500650406 688428291 939639517 721370831 784828950 274410200 473677951 768906938 823736252 62065762 713649063 559988887 987875531 500578058 658118937 125151458 971147412 24161200 971266914 687420404 998423075 760857673 847933778 990831879 998967713 504634375 938823523 49084760 892067962 175656822 783340564 744240763 951067696 175410252 944566571 450336320 644779428 378918153 710002023 113104214 530723052 816868427 936824245 240873479 970596757 591286877 639982090 224305307 859927183 563268601 595598185 838746012 967528518 552062205 567671426 998459681 999221979 321312621 868587243 414441991 799007159 96489290 800872692 514174329 895242574 307184678 658241052 340588393 375438086 114146776 602500781 221959773 261742273 879259959 890924957 678165471 762240236 222371091 950316851 246870329 471586284 193022995 380581951 320415537 925680241 745566868 754233455 853984282 892298260 682892667 841577043 687562356 980137430 364409965 865160007 764925812 832998013 717767508 737662251 562364173 876468181 994997029 997736517 190895457 374047769 350579247 416696264 925062981 981643154 443762605 940358663 666410231 702506696 353225485 360984741 209117042 558829961 381411822 647633008 422616315 680697463 170194786 913355430 133391271 591953777 780464957 854413685 502304637 815413923 344743339 683101365 605437566 923057959 161448546 783115252 383654756 979952750 557936448 635298954 175977398 574282491 615925722 944420251 955490260 962373972 987297057 989692477 713167839 757247809 399479128 975319688 635625264 694478905 431211253 961693215 402363491 891227597 272455307 911596141 212867583 838874074 806335540 901959364 768550468 996158194 522694695 671988810 349690001 374078320 91457584 169497281 440256896 762922085 353214349 422515367 185741091 213746229 974220980 995013365 171256075 646678363 592116514 980795405 550004878 764906055 193069306 826835993 603312910 609866716 730709002 751769114 408738990 685663253 659244741 760382566 779503369 847081205 379164874 684792734 455392435 518306815 286757441 847229919 530472235 796471404 412539690 852976603 742601491 835609351 754727277 936473323 745780300 823781216 260056206 547240175 335098859 868773627 473572921 803602522 472274660 623289042 214721782 419780525 159911973 692711387 649583681 857739424 947468384 954395142 595611281 947438493 653299165 972254115 556674011 895040508 577442111 638933086 12222076 976213842 821686505 893900082 855233174 997504546 972192571 994741534 277049725 572863042 341016006 497120441 646491499 988842702 539382699 550609322 540590684 544974705 462760569 708748268 695568467 831278292 732149110 998986453 348134299 727491791 913601632 918790125 21211953 131871565 185892975 632544181 693739862 957028382 740519515 952408287 575649426 703944814 348475154 469413296 546814440 917042907 114314263 486471753 615466786 657502257 59273112 259881974 949202389 977134148 719475656 863158720 309793074 317412042 399589738 832664587 446896678 846375652 611850385 895183848 366016809 673591319 10863058 749491020 740128322 871582229 324594921 398251153 781468984 827606602 231302813 991236392 104999921 750540482 106845508 948241001 82122994 912737350 861209097 893340407 505934488 688531849 368423502 546242667 111348368 957453674 769651126 947595593 161390594 983892084 827055137 900349681 539806501 904923385 856703129 874901439 469389110 633835450 177621291 487070118 435577794 922900638 479285112 510378907 645620895 960126556 790726522 928891359 67770514 386061069 657012352 908943146 150366519 891679014 787153447 898368738 461093339 734427885 607177503 883543415 538293712 754915369 998280567 999861275 345192545 799670966 606861669 907885766 697277302 873160814 50498046 360700885 755863313 874910693 5993106 638829301 277924575 916882052 926069851 982599102 62359063 990645636 66291751 856718563 34055415 594636724 209287280 765820964 423867553 487056263 920840244 944216163 522913458 966965083 609326894 816254296 139635507 966268184 310855118 843894931 528426260 832904364 783043922 968626115 180213764 371068724 425786421 798049963 266136631 876893858 432399790 591527099 584498722 932096594 126478639 325710003 859413396 889607454 604945915 670867513 719394013 960875422 379969533 542330616 490228910 858717397 720356199 938017746 965151792 972260637 411906292 665456498 517436909 594825755 914259385 945650126 407687912 729189660 489352461 662849114 511745959 953511629 685568544 727264305 535542042 652514140 323067498 406545531 103382330 563688083 70200686 872483977 317452253 693031887 9384679 148937366 918697321 994915896 294196994 911919314 77317513 939463206 99194132 121296949 279466910 933554334 610148447 686068275 435371573 688189778 336614492 651792848 243308270 402643346 44509540 597350230 386215064 873156350 658098048 833012383 863222061 953793668 592384766 680453927 979307102 981000695 328673205 701216693 229515902 907772832 805872722 910647234 65353073 343265791 776052216 783602677 587003486 710492636 876056489 924429049 247118447 682368027 890713811 918627857 115169303 642936798 66985397 344909844 696379344 798758107 88434669 660300214 468982231 684362045 427308774 437248284 431309473 475992496 319017906 369017309 623260281 713204726 602466018 888072648 569854861 579575184 491608018 931777933 232875154 664513502 827292991 901074373 327352009 777541623 822040249 827590246 764920087 919706868 540765082 971519995 589836214 689439040 218765994 755636904 751612380 814104582 822216974 955281624 627969632 887103602 743402953 795341116 47284823 244689077 587403260 654162657 506480971 633760341 758826346 990010749 884272567 998101230 559908147 625328667 760113968 854385363 485342018 925125363 900438211 975471784 937604401 975017361 127457565 606409572 316479109 422297976 799693509 818255199 801395347 919687417 714125649 852580543 937786421 943548877 717602911 980786529 670054824 878602550 255556822 720399370 785778565 844560905 362555910 956671294 313835286 540117032 939849210 990501786 232490538 903201747 343029720 666099584 822125477 842501867 771340236 843598731 40621921 169928069 543957330 826160751 231075901 465422412 641441337 959254492 342753865 752243063 215110969 696878945 701551546 988207026 734507732 991941762 90816434 940120068 463018401 903280103 274967270 994140198 961234224 985150364 894416935 904494488 681246924 807984874 751966525 995009461 915127257 975495452 526884703 759162806 907599721 991100290 784890377 953659789 337605826 695931181 519333954 718918027 919842281 997459922 437765243 847789411 658888628 762926758 26139394 959228704 4655237 870987694 712402739 756259159 741933779 830342335 642140437 817453894 877706573 879495685 631473666 657923000 362084516 460421113 498217820 666713217 105774986 295448994 497024681 540631213 816305133 988129129 206027053 924373767 812731208 968396375 732151746 962497056 471795464 588770295 159295783 364817662 219171304 304610458 244947084 441938201 785824792 889007783 210684001 650272245 587408123 787132109 217711523 365978077 60988191 911963305 676003993 850922098 913938321 967322729 305719219 589434637 911116033 981238393 2925519 318318524 572675708 620010162 776993629 986397346 366083567 586608921 844092445 879725998 769224399 803460560 551217192 936743495 2419670 697904067 210210181 492439994 146692616 790634906 547254151 895911317 569924367 575659823 135184795 471488143 690769083 931054431 141612442 886160705 465893479 774308290 382331679 681803729 366191801 702458358 361113054 774554848 971613160 991501806 229159363 480080745 313477463 430940354 718299428 811271681 366806737 716251295 455194801 694909708 161735570 664643201 575357206 617014783 947361809 947615123 719939483 982324036 821618872 960142230 506778869 986260681 968899610 989100037 801155131 968951321 378267715 489454722 9590272 91617266 848169551 918564847 966782866 977551496 923745680 972143775 297702619 822142414 776293247 905570803 880896364 896762928 633432117 871644016 507306399 638415503 177065932 386550175 626488079 732225927 287640441 727789085 216182586 998479547 813137929 993416015 955777457 965851520 617057453 943583955 820280267 928433191 580900183 960000749 892617461 947433074 441165018 628719423 383732590 907575809 686228482 792031721 492576283 998938037 730517073 779608161 738029765 978932187 919980311 972322674 782847565 987025814 177396251 466694045 835027516 939518405 158052602 702607091 377627249 954546126 715529378 789923164 871631465 891885556 143129162 172140929 602438339 895738189 756989759 817752467 299654367 545228924 110134713 207073213 75117619 857661290 533581191 584293575 594265720 830083628 292895252 424571944 956334483 979228574 243511106 460540680 378046148 909922643 448495787 659886320 860525126 952520279 426961356 973875777 513047474 581617940 461224619 556974598 175482879 954367078 448823981 491652291 630288348 854708474 545687300 718570835 411227800 997986940 619449365 952295417 544562244 801556623 154666692 925232031 354145915 806553200 792774373 997905820 845549499 895884882 32480913 717288266 486467461 955206175 658907874 665416502 825034009 853989976 618611020 984325825 469137272 652024360 787782618 927096142 655436020 715160550 307948017 426144564 597521939 704057481 358184732 911444091 328902491 613279680 50322340 848416122 493922717 879683798 337663353 796194369 642342289 650773573 773803496 937460424 101209525 766659659 743931843 770138382 207715888 764218578 364127035 688848923 854748443 968044682 446331499 834863589 686440142 802937678 31009718 847834972 111627745 580604615 380272906 793704452 509731758 572593167 537600119 948330938 130855173 308935279 766553820 978984970 433444958 548773168 537670027 996329287 110529921 908305162 657859818 708692456 829637362 832818749 267861878 946302158 282684291 983643242 254292187 960114288 951342720 955392693 665072023 710419339 217825065 631706298 91567256 386912028 925790366 993552560 868301091 873089918 716978318 893548504 764734481 949186877 915454248 933931183 939003171 943444299 275426965 901189139 294619657 345106330 977394351 997649668 154929488 984317538 567363113 834934093 329951132 404042597 156835619 819163045 840401352 897142316 177808371 591266342 355002425 846419644 381465618 507615174 684906829 704268483 612832235 767581499 566520406 933749324 166552333 917859494 464627879 896829836 867530637 962575806 179386352 933808955 11597034 247110449 628315558 745240912 166796039 223130089 82544347 379624245 688459256 701307605 429195918 621979873 311159900 757847046 359760348 895052186 364666431 759007700 497004974 538997818 394034112 653809381 901200313 929488925 558919927 888775154 107269820 411919473 172370298 875421095 420984756 539300935 580311203 908689329 79692509 82821826 366315758 917929381 213401570 914131256 262111483 543011172 430867382 812249785 773254668 870519914 793821432 895403859 561125321 902548294 302893444 857173313 193420711 498935421 417774498 675155053 591112189 846340121 577719775 837989284 333986101 604570663 343770307 770063830 896101228 989399043 592544323 829724354 501913929 724261049 187882383 448111940 237686103 849682307 78668109 939513714 105391444 415885596 969847550 997363553 107153832 914324688 68680854 882398032 333027195 680040196 215263415 592220495 272126293 800790056 203862757 651766318 340952384 851723131 21774469 712161352 57638775 954715515 201251575 366165797 611631452 669969315 277962822 782471726 60986950 144101430 557757659 693249538 475576002 547668903 928404786 959257574 101902213 488350901 42913477 378179945 863265530 907452599 263328236 449309848 709287539 857929706 571962182 605665021 277375483 807311095 102060329 276451330 148330234 842894875 336360928 811420277 253830352 748832714 359058121 713807373 215751453 712105981 782849705 916321868 708567155 987879277 292132681 449255755 528537160 894034252 236906961 469797647 672124862 672718739 221677551 629743556 422977992 590015024 36024758 526189966 909920144 963807427 118678854 324847045 327697818 381544625 734679839 962325008 312731139 332436156 341987386 574688169 103696972 641929221 474490605 570294560 191963212 386098572 857613604 963877365 928980314 946702473 560237914 924888106 910091002 954559159 576108178 985881480 520561619 684580009 945504877 958198858 458728179 544245091 324884210 360949068 919130523 977186932 883086952 921443167 460307949 700619731 290176278 397951159 527065170 902689225 418256801 871067337 400080301 682031233 653591933 836890727 619136987 733345516 353074938 414362217 900482959 962366431 77539735 529634799 947068755 970015140 969294345 989886380 698699703 872095753 244668590 430497055 950280846 961611418 676193104 837787410 314079100 448336831 698380680 888869957 455425327 728866285 399410917 978292350 770784446 985441734 268569800 856916541 114398169 392446868 815589880 859573654 308935053 630177761 989083856 994178657 747816282 853946519 885920086 947038670 766743010 977560364 659441985 996256766 64588907 692097458 334732871 381632303 539941127 705344942 782638394 975973083 74845857 303992004 217864877 503505985 487607460 977991197 947585529 972659081 583237065 634577998 42744290 777872606 622060799 695578626 550784241 696230354 686025729 933818436 136230327 568794597 121977129 645345410 922890094 934783109 787472592 808576211 456082520 754522995 855292450 897655042 357357548 399228602 684070436 841435807 242329018 476130929 400814486 575432453 63885763 247875960 368283320 767818659 128992038 571416588 910052542 956606493 288307328 610025814 111809309 651975902 986016697 999415237 329402639 939142670 823134999 954348012 977528990 998986698 633036612 754145079 778845123 920063596 968452608 974956311 949848982 956802174 396752006 808365053 35145481 44237982 229223584 620133955 348266373 647928235 794627727 845264339 243037188 521396186 77899355 974406864 274896788 521346156 26909660 302902981 559010917 744966418 280805615 871024760 992864284 993072056 727429538 940881649 377016302 434838846 868775160 887560917 19432560 367432842 337302816 375172374 2373351 938931025 522904840 902195647 407222335 691756205 631719150 973880040 831042701 858569733 250052954 881319945 9136420 627607329 610568394 928706981 561647276 832799041 495393152 763480850 753747872 957241282 349443020 824754577 959938098 994795334 432784620 704167071 65646183 675221120 183140186 266949951 815387818 978689029 693113771 761511669 491159990 651026112 748351102 986424116 312736645 367610652 202825130 809789946 870040876 913674069 291978865 811497088 612823211 834309675 229732574 465636068 91526811 983509827 948811362 969855642 596108872 879766917 332506508 571392783 937589108 982324329 471435311 868141129 229716437 626945882 913272975 958096015 279638689 643013485 894673841 900652194 293399601 652966901 857012427 966648694 735482601 922656406 830188735 842905932 876667741 939730124 254082980 637873607 862864102 946636148 435537378 978470934 633297899 672178788 270848895 996165958 273366346 621805420 503676196 506140372 556069994 787927466 69175514 992064304 428462903 464794545 776619931 865105630 156536884 870080121 389053519 888161788 198226839 881705649 567539155 750907763 461836850 668098693 888931852 894986191 993619451 998441485 943404027 961810844 915311952 992262959 202969209 265087958 785483409 812494770 682662479 969254475 640258958 896783858 551816714 995109631 424518474 424942409 563471700 718073153 193643744 516370824 133956652 570454648 339741723 346431756 806652686 981590778 298460213 628045379 120156251 149255643 586630382 831308631 824869545 890109995 991023243 992012244 11945768 906440511 76009862 374022230 823365457 900876531 270905476 702275442 283493521 747457933 108872230 954243397 643726573 746944336 495721570 787529831 461363914 994615516 108606253 940264618 484686514 743827195 335196602 538239678 118609329 773979630 177259574 845541987 985793017 987955968 304506264 974266125 403511523 594129295 901683594 993476479 928945136 996062242 357499758 463271773 41382825 293085815 171539583 338947957 848239450 957731615 27993878 965856120 77285700 102017688 36207523 597445381 821857219 912079458 711558278 953756602 486781760 920370969 273634744 563998597 387412888 688266985 719713034 897196810 505252558 530524043 6677614 477206534 862392289 991336154 937221917 957716430 524633086 620339511 721731264 752619794 336625130 720701400 120288931 261078867 259585049 462882538 91854191 966238372 461244132 592104782 241175584 317831682 317867061 614223369 218626600 223025475 478331420 758101968 846288845 903302633 222087429 371830030 519441155 957505263 984603459 998295414 459642208 661530542 862142635 919339042 830175360 991116265 34690309 437638532 462841324 881748139 614045163 879169235 663338392 709743755 400654009 557582496 251690516 955863800 643860077 673545520 729631148 894251513 678458593 931438436 45734466 450930574 85454917 440094497 609215592 876048637 563056528 711103306 547962278 810243958 568211643 961279097 109800982 832489397 959657973 986328155 540280314 645833775 526052754 641534047 395459511 468995433 432089494 447034782 698787198 722564648 306319075 707897145 578859892 969746498 630278583 680047125 771243264 895469800 150546299 401556509 802763908 833858827 270100993 765733438 946076372 990176425 334956810 883114318 328289051 865345424 49756672 680160286 834100343 949967036 221890214 823265158 736350446 756282798 183041930 512678457 841709088 991143584 545738377 928433029 459143023 507350716 68091159 395741369 511753625 761739448 462706587 493987425 310319472 728142963 161756334 534448911 403874555 611790897 908676830 909684038 634583068 844656190 211501147 875911251 835583786 976339271 712883159 748659674 958316035 983352106 615121748 685547304 89157895 524783794 928098673 993599970 450488413 670724194 908764361 955293102 241520790 740043907 206249522 742987898 3480431 739703743 946333820 986209840 195926081 268508985 794375758 884982782 910832179 977150786 732218000 964455038 856147919 923546769 76143826 632940766 953989158 980941944 636539510 745298166 327901778 732485578 200742189 584164858 777138705 944290372 608948406 718197662 118084114 421589439 796312507 868094445 809868845 899968744 877428398 930484498 416128810 436600173 880759535 983656829 319829503 740022959 458139150 812038072 616777914 824669788 501338426 857034597 414452493 473477450 54813856 451362926 181065531 680750786 642249232 907625912 93368746 151987468 958241928 976697288 427222727 729675249 908816982 967451001 223633182 330630716 315293229 603799801 20295066 844407824 614396279 685299696 375274502 375460492 448178679 619740043 562754057 625429468 798574420 977172224 146644682 706527833 527644705 744748022 626246020 997155650 14753610 808835061 849869976 981659643 596921019 665469569 647371219 659651670 500888123 940765414 311600154 460339624 549597170 629370646 226450686 240747485 584529247 990562934 518211058 825534512 770934285 776912141 571646843 748289927 848588419 971210131 264771191 780526965 762865305 772894540 705517742 882965095 183200658 374167060 997076211 999385194 728603594 877893019 751801962 840666913 274284788 588639239 824116399 871966103 910884647 970032736 450438452 964764763 26161704 532385700 762898558 846514944 917747348 966854929 330447726 678479745 775982610 918417392 777002259 922919567 659752397 771354625 437061047 684493485 715390224 736384617 121816175 159567597 998651706 998659574 168169200 372982350 368101905 564052948 135944432 324618336 423113131 491875372 37336091 360015696 562509040 623911812 314878673 803189753 408778419 803528328 67509318 643783257 47537013 560554240 404950344 614723871 438144133 531861317 118732302 647039327 205970993 866960257 124863030 541529030 943618698 979985380 738919974 842560185 352502964 573066040 722134526 945931248 156490882 363967665 16239127 27271687 485171134 938371726 835288572 881789701 959891750 990810940 992967336 995608782 534600224 941388350 353427378 838839526 848603718 884750322 320462007 694350539 700669009 911168555 103475170 415725952 302507615 881763803 819284669 859287477 890595390 938794011 86178425 308359958 135534782 404870085 437839561 823443811 568213481 931610922 22872896 765026454 31516689 419901381 649452576 758613533 826196799 845688749 271810165 819162423 406968664 572035022 623920925 722153180 90647743 214696800 290971397 792422156 643321681 877367541 245713739 279412798 257639772 413391367 778345530 792945392 965312932 977676836 868205638 907939577 19921886 812571443 842947688 929629127 861630430 959305773 839425192 957742634 981335428 984451544 872195061 911200168 552948520 652370821 103844817 721207904 141389218 509593940 746858294 815195782 859027553 928918595 526705652 948462607 530712024 618861872 255198279 747560317 451549093 462105202 906654425 921763271 724949759 879348808 720152602 926073040 650832156 784052750 580830387 821392941 215783097 247517807 215230574 518521355 571356593 643798546 840043822 916100841 450882716 642469817 952158758 980588266 727020552 910192937 537166439 740173156 968075125 995978647 831620902 994572407 531266291 855133157 830220739 935492745 399224642 875023609 347658298 572585822 300448512 457602075 126311955 793525586 752257926 861797488 815173291 925041905 890982685 973847920 277705238 788035708 694390242 784843830 308431939 824519289 149235227 257451823 31566035 760577313 268797727 767085474 947127470 992064028 110402483 986996934 43292133 335604667 62483831 241271813 411649050 473060131 570123174 675917807 587718974 902846629 687616675 980433142 308092074 607140807 242654682 488681387 90278990 694500429 441392228 609593119 764735747 965306824 883627117 986511568 197593319 464048880 110674827 292579548 150199002 486386085 696077715 760458664 633850165 951036009 488866626 850694751 333223698 759453806 326877575 872949854 505291054 599640381 18347354 882041685 656561446 950702730 305437435 752972359 346531746 843004896 850845057 944584142 420814815 805669947 408874806 419600799 281787909 780075297 108067531 749722989 512252619 694275331 548132069 554465012 369614365 698788241 651822 290104609 208306597 553337896 630333709 668412343 511243535 520569105 820950464 930533627 709051169 879571940 348136839 800536286 736777507 847945859 815878467 885421510 474566215 977059967 404580090 955425598 764315065 802672941 344978011 558791614 414916022 560373802 25860363 859288538 851967897 868938155 361444784 486293424 489216373 616808112 976237071 993141838 645260303 887390000 796311128 962451758 615897870 655123474 915118881 942962936 703403552 788596693 353342194 555336421 202677754 787441022 773783598 925430503 634312764 859130972 997067473 999413387 688350135 999973508 421544858 534626086 591394862 611730421 615438529 695339048 732386754 936224509 659861277 959285060 575439497 701099680 348300889 573754426 763517298 802910831 286806738 840217280 481891802 632323579 225881251 693001615 836084588 884136100 807818522 844629589 40869952 668245248 941841343 992185427 949208215 999793378 906733849 932915691 24772465 749720993 383573540 828385437 417337336 665694388 430100165 564434430 599544389 758333635 806722872 814460210 406308113 859521108 913056766 924888884 634517599 671023129 563589988 933763265 999725871 999831503 637459058 860186506 546073580 903901745 810308527 862306729 340895700 590782453 170929358 968127323 993676273 997222959 395433685 397979111 246486511 732700140 335910047 533231839 123600334 270740242 437295758 680932585 295608496 742437269 666566434 671272399 886316142 944866799 157839916 912517638 870474199 950654969 647389012 799712264 561298373 743125860 115079490 806146766 928724304 991000364 878388107 934498305 538376143 924092467 311570922 387879487 733452242 974217616 38012666 463223380 40976005 134450535 354345405 719239974 968098497 969621700 889043901 951721733 684047399 992162625 54013108 282361108 299743213 926195054 93874031 713333449 852885315 991489800 144301305 184019994 76436782 562013083 583172354 887978811 184258394 463665170 650087554 811307827 303050530 400003876 818177873 862351399 976371396 994991876 833117406 844093552 557705839 732127220 356709202 742888840 97248138 998456864 183141757 854921841 450249338 838043790 925975544 954517246 686533081 710347948 526167583 555072902 490243357 582802622 239158048 743144752 862220972 880737818 963596918 965338856 664364724 728344896 995152545 995878516 276767796 600517536 795795595 841194616 476146526 526914119 501712921 621081642 329133446 344675314 576802224 924364852 53241992 320374486 449367858 795231074 877333444 897561942 449255527 623116284 543179359 959166658 176077333 198684544 613837076 950809455 675312573 781804520 409747866 752927374 402464704 676597214 517522193 904345230 978067206 978516051 592253145 642843919 298368780 418338127 245405449 860384205 350449045 549468021 591029204 863158840 926763346 988903780 694793544 948540213 144674837 349644979 938070681 960544528 9019982 472660993 345054726 449670514 154501723 387736447 175387457 304671731 620551827 914741887 867828234 878299160 818151550 825068995 181652384 771789998 438422453 651913246 498657127 577500705 937522976 996954524 51071029 237846567 353804869 790031116 646578859 926767127 817635325 832746619 417476858 586317469 335258631 582435065 336412946 467526007 119349731 375930209 775180093 953378596 849904168 855970145 201543495 571368677 781867688 858280161 798701856 908289950 124057328 524294342 886839885 973189351 623718789 812699703 735295912 820458514 121965498 491759886 709078789 714873473 861665376 899112518 358466263 987256561 850091667 892946338 429515096 928771227 519103250 680616359 917026468 939641341 294807325 727402790 295434488 469455404 522601960 614584133 822008915 995843325 531935623 565848232 897124010 965681938 702278964 988774398 982856151 991575209 392500071 542976615 471031409 705479792 816798658 847021716 127502517 495672898 922476472 946995764 847464379 907467015 317355672 836845682 54086831 741079591 829097690 858948204 696482507 988911063 222331282 622296244 345199801 349817672 469964060 905766396 539443055 888598794 892857181 974051853 872794301 989796799 444688484 929476563 898124588 943480649 586300818 812018186 2455392 465238758 413195750 982709412 794511251 815813142 432295516 840731167 556163902 812414585 889113267 938374571 267424326 305322928 141762887 181056976 49570225 87821587 323203455 592640318 153229632 551829348 550811035 892740154 656905237 780278590 562242581 784675902 481864487 514672850 958714248 962042135 313290097 958586874 333349581 995341710 645956312 725840386 161316547 236454692 329079297 907251246 89085550 773543540 103423996 257649522 893470508 951662244 298871958 657089966 745389515 747676330 176768368 728456444 877194254 986220255 70049879 581801087 943199496 977387945 752076153 809936615 946850202 961732116 4497924 57445994 427207859 895520565 528582207 756150460 206986810 729877625 647147773 907469325 219620226 890568608 562458065 950742872 136804069 555159518 945581728 977743818 67989120 754980996 595324185 759347173 199099829 909010618 616681101 921707473 182263527 848022431 47344109 486561274 886610611 993765560 752478905 988067826 754236469 979609388 259132176 855149894 786165413 908451148 64033267 324220067 36011574 318290347 456901572 989431495 833336193 858252281 448036681 839265869 30932941 945526418 125869587 254901773 489393610 807377893 111144943 381555635 244192500 699827612 681620318 690763799 473088211 750253236 1838508 207682096 226544576 616118375 173403686 807411722 230366098 945004779 494515343 499779747 88867691 895889874 62323979 273765386 958874794 979604074 787508386 982098095 592750089 756114838 557891193 990465054 535625337 735148680 578091778 793492459 527621505 840658462 36764929 124499819 547963057 954901788 644201230 778163914 549745097 976344379 336165308 472582530 503262171 955841287 208472333 866431734 517152918 760868105 577201240 968841422 288838167 291057986 137188873 521402715 552285541 668540049 170829761 940475200 96199447 328903885 102107194 999655776 415044865 642837479 863001296 956012131 794375641 832081727 883767321 957416961 301097021 740708402 963586674 989555755 389606678 511857845 580300098 755327483 105195481 757777589 445344171 648367023 268894749 476201882 138956584 938025880 206777855 649780596 822773833 905384263 434986525 881077424 181590055 895285282 252134154 570827515 364324598 678196872 205445348 668250852 464438513 824465411 986585985 989014542 218680744 936090497 893607085 897181798 361326918 458515708 382143384 518821288 374964006 646634146 683038327 934566856 210773389 321130051 76081147 435639615 904545046 928048134 908933210 946975062 746677951 868206371 625593705 879933869 415214195 445697945 464580115 878757325 755828280 980292624 292844985 891359781 130243028 570997120 320336869 424647645 541451609 578215682 800224681 831865635 55494766 813441462 6433088 848182222 854926649 923825695 985286742 993660604 898564954 980726804 884961313 953663876 239052661 855712430 910032992 958772638 863412522 880459106 775636255 847898690 774867317 944992450 395175679 750520789 70838435 394566313 949578166 990256228 155837408 432629015 739655856 989295714 410254503 591951579 404432209 603743280 103609817 831495330 363324428 437961884 680170882 687450065 955167891 967915629 987080798 999962839 144614995 759904312 762705883 929797295 478982758 805316774 363843524 517268879 301363980 689640843 922241269 953738308 937504131 980176743 995190721 996401746 532548124 881212684 905849760 939299025 77263560 332199374 551507056 601310588 169213956 990188270 82297508 134611674 902732051 915817408 448456849 560254866 797945591 879020213 572544911 945652667 736284985 749306895 615192847 745330203 968653813 973252195 976694171 989283459 246493277 800059290 434633930 458474507 404624928 502181010 807039065 870081143 766340909 812727996 746119543 873150220 264526728 979135884 466725401 560727819 29204943 233648401 728085239 838829179 401409035 720085351 969656631 991015257 116962916 276621664 522772057 774188491 797590439 908505088 910726308 991607769 703778274 833644326 831424227 919154618 417386152 843162404 241229038 825467397 963126596 981841060 821899294 960817114 31960487 582100667 130184340 259307641 999682451 999804588 213496641 717440414 668502303 859616482 201904484 416812336 877674316 885630116 710555083 878790092 528246782 727326547 923843631 983186881 49875172 807801794 825267969 928075046 838965994 857254172 950458330 968294927 636549819 976813524 167823129 626074825 134892886 815640740 310463261 785140886 547260840 640827807 910295526 934294087 399496269 826395831 141444917 724468350 322665323 821779197 528951679 867592740 268030589 794524687 457263461 706242059 823380413 899429899 938006668 966997863 181235247 855119965 390086993 931902282 913900083 964955563 80850148 890590259 752170216 812908924 230572757 819514844 605224769 782501652 767102485 820785013 56957380 874413684 591311691 845463077 735659200 743033476 575651584 739392889 356393788 980559213 204608637 815753929 804563250 817835173 603983485 839465156 742779515 784940030 934698013 949531058 469045649 598963648 661491007 744758486 563959056 703435376 678785667 966610572 440416467 527213707 159121915 700256195 597114678 838925748 272959459 740029923 957219657 968295688 890400308 918152079 72697207 740952061 861574280 989998612 492143957 585889924 332068243 868869838 936552767 939157643 591605448 683951818 480460777 500007244 375180609 997228530 33805846 370943870 362976433 431106403 764245701 768052187 466243738 477531311 693185894 759776661 287712736 963044797 23149811 609626819 287847892 529443373 6135713 828161419 307169571 448343947 882849795 928572965 257356685 500556284 12198502 706827737 281843599 642290619 678053375 791413971 318721213 877292465 528536414 896217237 58407325 382331280 914743954 953123938 451145706 867331273 936497839 999534755 329919187 451034137 33347196 197379359 683072244 695131193 429129743 492520423 945430986 963432435 9216383 948061010 934143018 949575167 187826375 235084395 902472017 926872366 892521074 951609969 160388947 629769101 579743892 780553921 455086542 785446548 236615208 719391831 142292192 573308849 521321160 787325927 129463289 290412230 389358414 415916815 549565035 687368743 271845382 893825050 873321404 969346779 306532353 626618282 849164892 912469099 17840689 136141458 567266402 654402764 235873644 277913897 554060355 646216915 976376614 992835734 198524597 873848228 281011319 869290548 555889083 963861412 592910669 867710149 29018714 312252300 777212385 950085876 870919522 969867301 233387157 869752880 699733018 998614329 269020396 805983035 140863955 289797242 511203789 628155392 28272654 834926172 208028957 732869103 345974688 446030701 585108351 651865937 574482805 841224982 530536408 533421352 695203841 971066960 37128217 261938626 106909376 760234794 220594088 709633776 17549185 599529198 604677294 891021654 176801954 700544874 413065877 901211735 521057515 740606142 139626220 604669401 970313610 998028221 912922204 963630988 587245805 610552718 199925754 379860827 869333428 930337028 932032449 976404437 116432611 381770019 676816013 817711292 640907266 870582678 425465303 596069863 580329919 785898736 837056804 984549570 10568892 824629280 32541260 487682252 298985507 704334372 353673610 793639852 817138323 933675068 901146814 959143255 539405850 858350108 739056387 934767590 733106229 755344952 24811552 760103900 409273238 739174857 236181716 563010414 645868715 699795666 60543863 62288232 16305278 715610584 783900079 941728061 110759044 741165128 317708212 336905713 420246388 527264877 482464019 596068332 693841232 741277336 358309654 362890351 861911379 871551792 193128261 469668299 824465671 831127179 654773513 693518614 249405821 254244991 179656316 635166580 430934413 937555047 143459965 736397275 223081556 591373875 197502518 669462280 368435429 728396498 240995248 593883648 487861397 547022394 848940428 932514271 901289889 905956508 776246283 792973784 645491676 710914076 154313071 509200701 952578411 973593285 7305621 560421865 299878133 573012276 511452696 554712361 338277376 857058482 375912841 729684178 421786977 703821094 146616270 252291113 632569850 674859583 910996667 993124323 293525951 877215880 73722485 838758918 755394808 882221787 331264227 599298367 130715113 373850537 906690503 975386393 139878294 930232807 825787836 828710773 295375763 383914292 738370942 936158695 376227073 870366059 641449502 677772994 980840954 981722431 647687676 957655330 789796283 884820588 699737165 869565927 845490095 931807110 30177687 290236345 944059303 953958211 329142535 837828552 650069822 772138526 787852805 828986639 918747855 980439396 88855478 728581592 542874063 926437086 579855775 976104093 560769891 647636039 407830450 956082788 382117825 481751843 830822934 992979557 196912009 975772758 403294260 819225494 142789983 565819181 467408590 768372849 120630105 873728081 409115200 968985460 440699518 674685173 151443297 416386573 989489912 997504853 294090261 591680047 428015177 680699408 492356651 586317557 867418450 911389775 755375456 790970250 703388483 769990879 626447519 999563876 561065617 769131997 581818270 987761023 191469047 342200580 487670089 774917417 828217202 838753251 94499857 228102104 173395425 457953977 18562355 20584000 836408629 920764252 152141316 757582547 491595578 960894150 379334064 922529864 666652063 784524311 209258324 308489482 761539854 800357633 205727710 800444591 700623489 701897637 352793608 936135367 18510984 34351547 645220942 873065116 758047136 798178952 212843129 568484308 135272173 875495972 679516702 965506567 856724118 912126953 426424945 641082165 242473368 983723378 865738616 999989437 193723560 569693223 315132174 538889861 664680314 819954843 464805993 879166951 89345296 137207157 988691352 994850620 225663160 865422751 605924790 631989321 203583512 795035536 573318538 600729960 289456325 559724540 478305340 507669523 636085773 964682103 299768037 693279476 181115300 266734835 793685079 929780387 259878770 665249934 723473594 820012685 277408798 298801792 628337195 913774768 928693007 965607912 716224081 903379361 373536084 414833313 320703906 767480322 392303798 642669431 86840980 301363777 609630235 635935421 858254855 894604300 330644541 684656580 55749549 883809391 598006328 763942070 971173278 997904815 257066618 831141224 611033587 665867292 586650017 619418696 104262184 991860429 487200374 901198615 156499721 185344801 159613762 939959025 811144604 971978350 689366885 832522382 269468037 589651015 44985454 185716153 736727602 753815466 241572021 428454727 402930591 751493676 65300895 313914047 572246720 707891585 573780605 844974980 687114683 751549571 314546600 746084169 60053807 153806232 354100435 472410707 259659620 678188727 286956566 807293689 452170001 957059624 479337456 744735133 98025957 863762444 961181514 976643813 558650082 949405932 481107611 799782696 493545248 719933006 556330982 934691465 768761332 800395403 924283716 952819524 160809099 336674008 496587687 844883779 39949364 282751529 74814494 908781601 951576848 968893786 452975416 915097065 789481026 980830063 339987585 609820524 387333704 542882107 292108139 577677606 42831419 159964380 766225059 771923931 714973129 980519856 609972902 650265890 180010190 187559884 548191563 695387718 634810063 997188772 161360022 415158099 189610574 987312315 80987159 814572351 713099652 788857065 228228141 324941112 852623735 928751143 753978518 994943328 402660381 417338443 838004410 862983347 290320477 423022381 999563216 999821998 413719947 694373705 97941548 136301410 995542022 997455059 148967128 973131539 498305046 512730865 765447359 885131809 489466067 561343805 440329071 828007811 626457203 779508961 545183923 750991709 378172657 425179192 60525357 168459315 847751745 919830914 735429886 924744967 83650181 545550786 59110884 645951208 642838099 947496237 695945913 988799870 156719864 341754922 558684179 777575756 686188040 740626761 241650290 649772770 601869005 901895403 260920562 645565520 93110411 575886161 664726054 684626456 145203417 356634952 122727448 743535773 32146862 436492536 516461506 967879301 630396526 976374915 792666581 861827939 722582615 956930374 541351717 563016823 983833547 988203614 963732726 980460863 683157864 773668447 500774204 585654316 305438629 873142904 162167116 446058327 41943735 131090661 201376049 475941898 303283012 546934142 754384744 980680346 639129058 755495488 636158366 967549143 575024392 776079038 981299993 997395740 636575954 770046446 762656523 889690921 89369566 630394727 944194525 994348629 645855085 901385867 414236866 819956155 531046380 656619661 221438120 693065744 77254456 115912149 761015355 907864664 589722363 847820243 88189284 782840430 677253271 948159578 5241315 501862623 196764683 243024596 801104597 975217055 929646803 953655645 413959461 565965184 498597750 579517682 377276948 501408432 845142877 897839298 560178463 722613458 59530478 560513654 765262765 767061302 301519584 708250068 75215166 451985191 346035283 482735325 647341392 757296186 674733985 868359542 421864366 772092747 905709240 960271357 444665331 877708342 596567818 700360276 710332500 953203230 222945261 735020412 960145790 991944469 297200777 762407545 565624810 902346736 876249058 932378701 362564267 824925833 673227203 860396512 261740203 620255710 368474052 727177509 5504518 369588565 496151833 540198662 27434277 84055745 483014036 495082373 736346548 888386025 238950227 945273610 736082777 947211096 453945591 520029762 697491758 927944057 187277042 366496132 936596610 978634889 472812583 596790882 491549037 855084772 580993402 997312084 233067344 656871302 434014374 946811212 221746007 718571275 926808307 960813111 65635130 90353334 640131940 760268047 423397962 593151508 597754383 752313832 48065941 103233157 415973026 696531176 825305875 926844221 610680372 740930075 97154929 726313056 283593014 327817051 531643167 788520958 652952990 921660870 880055957 974680747 936637614 984349957 910775885 938285577 585328301 799247114 516180219 743319852 611768234 808303085 363999152 851114553 688620093 908002874 814544346 861652595 697947995 783940420 630204079 900675219 802273935 861589222 582279890 619519327 170124468 714440598 488607303 953168526 626626294 894878731 795581217 927309211 351090973 942335329 283569817 530120466 861610428 869007162 569015381 706032743 89503285 592943687 459178982 534620879 178645845 787752257 355474509 965494880 218815634 952223197 584596848 803380072 30073261 124751658 169489303 437896933 421413326 640839331 866898563 869284293 145712120 613122409 249566818 586008487 95373305 159625646 695742851 985006741 489206584 889339464 110190126 290182282 813165535 930544416 990493837 998317458 587397789 791651523 182956239 855976319 322429309 544714457 818472444 935795562 413728245 932273077 253681329 901107378 777234302 999209392 524939746 943308118 75870360 928456664 863830566 930182407 13238109 478053798 367746993 802912006 643471037 846629265 876348323 960183395 15709289 985962907 584163921 839747864 766693033 909541407 360854763 731636582 317347963 705713870 320301384 486637784 924946581 960738054 940785807 990887909 950673751 986582864 416565545 709439451 332123993 980641281 73480143 806303360 465736064 668353523 215716242 803286258 319439940 784688953 967100032 972246145 700932820 936059793 101129192 530218235 327306437 918458445 1707566 61024403 198642608 990880055 110273250 506055156 31805208 677838257 51810195 648658497 173191491 885828907 148500526 199097897 17296383 55876819 468552528 966264587 31137057 198102041 636275744 866222209 739476121 918232139 312997709 700786416 804876266 987523055 350741863 486349794 988692331 990876604 626334331 655281932 228299245 635354162 918547713 988534501 590629558 686058998 783684040 856525024 223730876 828263990 106027486 442320115 698878500 771759197 304115098 421062177 781585477 823229814 408458180 992219181 592706369 864585730 910558570 995636663 926617811 992263895 89990483 247357444 592226972 622943292 961441194 994390399 481007955 905599472 580126484 727807171 142656677 260598408 507176770 884230292 892954844 994990067 945695103 952241315 413509512 961243881 118565293 620291316 335707971 444435214 781317082 821211460 475775482 906508633 603336974 933429476 105687003 125511730 725732451 919470253 129106739 971856497 189723622 643371486 704750456 872145679 900292575 989373644 644612649 659404532 370115361 612114887 208702554 403101781 759954579 778491451 926141728 988084822 863321235 916440453 22230908 172531552 792897054 992274650 58249924 699107503 320456067 707363747 320539510 711999096 67166586 785907383 38411091 188512097 514611238 746756843 531698854 604206950 297447739 763715269 755290361 904961537 640786543 940733114 507353583 917372116 255285759 440131745 771391277 928007156 249825625 342558585 918214466 987940896 933659048 987563743 848202261 861387807 796154955 982309779 473681507 479319355 920420420 949803305 537551579 579038883 112188441 452041604 788611730 879980161 167679945 665044869 257714749 597017246 540914808 873907508 175683902 588733606 245806277 447832559 848956978 967313108 171250627 786690309 774846777 801495464 43208730 366088835 872176732 925831019 121592803 806038029 780761652 953193687 982055660 985899891 933626609 958439105 638110249 655523484 957151304 965998824 125868361 209991709 153560308 284106192 670989927 956966042 215071080 667377049 489693736 984921598 725739760 937276131 730059741 933699100 281237024 952574274 33393117 994572074 412153730 789960597 327765348 553300759 45191373 858960417 174522693 581513203 851805202 980413868 491307490 872209446 432197213 613662628 672999022 819187007 104343996 766365719 15857222 116988763 363534657 746021304 697183143 862097356 545226798 940072533 849976261 935513591 618016897 689973092 612848916 705849032 671460725 946363790 737221459 867016507 745449452 761913903 394288768 785125206 966115984 997056700 111742834 402106005 436274571 719960075 922988197 998295133 382156557 509030039 721792515 966585229 773042792 931288758 721192703 901944501 742214523 803241134 220379129 871285528 878462854 977286106 83622627 484753526 945637569 951998209 154438295 872166493 879849765 933263964 632078044 682056596 295580613 576393086 138340654 971119032 10714617 351336740 553462223 754085807 816571564 847700880 704833553 756381797 857043152 903754596 564948917 907811464 362448243 385630088 477243016 494967289 86363836 811392721 311264101 542268090 715598352 858389028 262014269 475010019 492968480 995838980 403546953 752181986 295590974 548783645 480779519 585134183 191104033 616277623 95722337 682403809 660447241 865855878 160908175 615067912 131705857 488586775 570613059 931122998 450130513 953973037 525756176 724162781 819378543 950221941 440333368 703430807 19530000 807038239 745109660 968099445 221322865 658413260 29482707 754613677 82101017 460901625 529518024 610046277 711571427 911677323 87900423 163676776 74169421 411356283 898944215 917454728 225608454 948131597 287728478 513026516 942872394 955579666 220345689 223880823 729613452 839157831 227667963 250867558 329410011 836786640 725660876 808239358 933267158 988040594 8440772 995815242 464206754 877197004 209043316 892949202 812420737 926999504 539002886 599456913 987224511 997586411 519241624 791349052 252688772 257522953 58538465 180563570 259190976 596204801 446897027 708826280 751773711 850086686 932626053 980357685 354732845 815517082 15904577 637485454 366821568 749145604 18308268 390464488 496737797 761910762 350259619 782693750 465634664 927223910 49323098 172991834 608575767 762982029 417139601 503266560 464132642 520988100 959303909 993826000 378902367 672721318 313260597 986342718 288303771 887048746 609612572 773732092 514210262 515072413 569834296 775268458 463925784 941263135 576268999 839892980 943872270 985339992 883022688 903678130 996544751 997356311 324225198 641387244 434819605 914479628 389117584 937583153 337416841 957708125 984070445 997106289 969714809 996904939 76972039 359509254 591760998 665948575 248490697 996827845 183674218 998753121 345481236 757499956 508814960 668722702 876514701 888529332 974807849 988159965 72813179 134273846 967801933 995717016 476161348 642010621 635491370 718005123 535210664 550764382 786155830 985761850 292752194 388494401 961713520 977869113 947578458 981587323 201266342 703702224 695901785 718371761 819665170 943424830 388654756 422807788 437834519 623159117 845223485 855843517 732323059 996736080 300617241 377303244 787066409 854227970 702743165 858338818 617913409 917906126 60817188 591064229 527316179 863018872 600804519 865407525 195694695 456347273 394837303 754713244 117794877 840224364 296252254 617032017 383665228 573099346 207585513 399061544 50725492 937561019 11613583 104340892 277954984 986977891 369417091 981406710 998495844 999542567 493678505 784084652 94625540 360581634 936641028 942871186 348776503 984027240 975651584 994042729 230937238 700501531 215995541 402055228 487974092 734997345 605793063 850638702 671655753 826250141 538252168 796159959 278125549 300237737 836354051 837630684 687543682 902567691 428096407 725220952 578914294 975566011 544662974 908309679 470503564 862422979 22539382 516347977 906639565 953368885 503138174 850018675 261101649 423911885 665186743 906033725 767500920 994551448 667271135 827438963 913261928 971867751 867706453 963127048 887268949 998279289 943334479 975596445 434168459 476814329 652444049 890500996 672858279 893809232 461126495 854465116 293051971 293561257 948760436 980970378 171483033 793481881 977644740 996617215 630773788 897232220 674941268 907325403 977589040 991844659 982234616 991304781 202033171 883034995 92219384 583023534 715673675 772219530 810930053 862619605 486815288 803022959 757320069 792133709 590909596 699942072 651001020 795571798 539644097 920315940 499232580 814902187 196435879 545313501 58498625 241140061 369193695 409418508 235553232 338903038 61352712 682348771 671683408 744262984 307518357 587337693 575696608 733792690 548897631 744717833 26019850 653850315 502767563 976818355 250189760 786586776 600486752 843569069 921039143 959411247 636928451 819658336 111573918 393804554 544615230 559141627 751243547 861940424 321196539 468258460 622879170 643436271 867979673 999399270 238131389 901929310 258401079 824466552 339303309 786438280 165873705 586825397 234618151 927741872 973245121 992719166 891771896 965395773 599696909 631190466 495044309 685371215 796290952 868565805 446483347 584623666 236734802 429896582 880449051 937344312 626914333 975376658 829342703 869416160 861617569 997420300 659684654 811384386 536297122 766808009 915462373 960564527 413940384 923297796 140092692 689268195 298719540 510320706 559450753 861539835 133995384 750210966 308727475 458466254 773556403 978142867 438857931 746811047 478778855 990234515 88309520 799359318 254007173 602165085 762053859 866546034 366331934 946128766 126736983 686673464 312759581 822418151 550687408 710690556 586175222 705170201 547324707 932962995 10662379 599069538 904414464 947344560 194843406 358311070 142585464 991605584 887222714 961316709 558928900 877824790 305828278 710300542 801189605 954411791 385935411 596158645 374796457 929045426 602516118 627267933 290658696 363710092 342934344 728564772 68036465 413115703 164796527 383046349 250705528 519988312 464012393 783202143 341621527 531646507 418536933 750521110 26823294 711763313 531451848 972045720 849915486 926038274 222033847 489522788 681118356 881043546 64240040 74137016 285246215 537034994 706419548 820404781 489269930 976653788 13610591 346865057 561052773 622956663 631698425 713564719 221146535 644376777 832320225 981794685 223003827 914588293 822299436 827467140 605438444 873351531 233485945 458738149 66722565 657254625 518690549 696644735 138485581 966632442 105697535 996220176 345863253 424394717 358787961 508789317 473592513 782690056 601428131 966025454 634060140 997016223 896088075 978957042 329245346 931440307 48435055 546947733 100081235 164970753 809082489 991763333 692514279 912171431 477595872 697076048 863155114 889440978 914386941 979662382 2036123 27028007 746665882 985442025 432061315 664272963 462725537 888077633 420159803 978648462 859774106 989385203 583781441 987691451 606546098 792461680 368888308 844623189 75930255 83308884 883686419 952359247 503479963 949666513 623694408 913512970 671018764 966152769 735664424 942178284 131390477 875444335 742963717 898892846 332031380 737499717 389930145 393321177 909878411 955024117 509481541 620978307 563749822 659841811 855842024 985232180 976897383 979480842 463458823 464823991 286055154 817976953 292484074 339657558 885079050 961424791 857776646 875652183 324891636 495466356 60407522 974204940 982725575 989669339 463100997 978609050 621896090 888865813 692355250 809712140 969053239 996776158 573837341 577947449 455592003 737181722 866949711 924275964 528092978 798188276 155326772 491096231 355608981 614780875 758593078 903531776 611745446 656223066 351749383 441697173 602156557 936849998 637748443 697088399 592099380 900665033 774405142 782945192 976900560 980741445 882802501 890642797 857031535 941981183 693539896 866162568 14489405 667704233 213593898 801074247 182119742 307587868 542325551 829855907 563318436 760138464 863858642 987751000 359764107 837656107 601809897 614854184 408550311 846890196 635312695 681018428 331954535 798713603 685050914 855858759 928831901 929712717 352280752 932230444 956745073 969298196 194311553 507022727 750251664 894589649 443897163 925071251 235874147 381377494 701191624 958274291 75776860 591372395 829233702 967062841 484747527 542219813 257370438 920822906 890685145 960021744 460140000 470413581 633145445 701589272 249085238 692840482 944911729 990294274 484267048 959436011 44764273 911038447 545211667 900742823 783893052 952606128 964482526 995950448 984889576 993387127 134942231 308948057 152508246 621552351 401223416 404216833 589505504 903002806 377993986 703203381 339145981 648973231 536100503 660957038 879841514 992453339 323023853 829440275 633251258 695910873 889689998 954405071 475560308 972391656 250679214 823226454 91646035 651714037 607394369 974733404 435695703 532424123 506680496 876821347 401698436 420814486 807424085 895988389 477353100 806280268 377990657 876967251 386511328 697839882 814046215 916930145 712507652 829649529 758479891 866473799 115018879 614684510 598635990 637491387 144801263 230389718 181766088 862371123 107428307 742560208 445982656 745956466 109314058 468630578 304344867 506966570 167735957 928103684 446018197 571633478 430830013 858460719 124147337 876112813 716370244 896134135 276702412 914912167 732372449 835787373 669573064 700458896 526980630 652924180 316785227 442140987 290651996 307003356 781805267 861759880 438169949 557318876 362170344 590445145 563314932 810906936 738288998 739310033 270425339 479819990 488817520 978852944 864479052 901907172 875938799 938643464 574028038 965977548 663900663 976079612 105344887 535212841 290101913 569628096 93993902 275393117 443942122 750648327 226177274 381076989 219545979 545982575 802605221 857514553 839494743 952782589 585202590 871130947 693766443 965078056 883652851 943898644 461630996 873348663 968988639 978627702 239878955 872278575 311939060 613285019 961114113 999719444 859988182 979456906 237089834 767124605 794988272 939893707 615231025 640163649 270810397 669730690 904723262 926458406 355834877 808672842 985894684 992713588 24760412 110528680 537740681 982012077 450919952 701250403 509841155 631864581 664011887 702454870 644728163 946386434 819177425 842742008 783246619 851834600 943767030 973930681 868958750 875110248 767688670 836038150 45688770 206513354 250776869 591955589 536105008 830482310 462262767 565814508 22432652 801417436 943313749 992038423 880862410 946181147 961586957 975400084 570281289 897355234 710520611 772469644 18780962 693043124 361068843 480918468 671746914 696598839 262346483 513204960 67245726 534002348 402255140 853566364 714415944 952201644 917631062 972975234 32143066 406178702 444317208 575763020 226793132 834650556 35267501 849213378 982771566 997046943 40879199 62310949 98951066 764263275 13491907 281965535 375482867 888779799 888718728 898985914 570743433 657473311 789350712 913349584 957120541 976859784 11643828 518373080 16143886 221832181 524468468 581753879 861360882 927397387 768129311 816983806 977681201 988159403 110315243 453508643 396122974 917536866 608883475 704958972 960391912 996032978 952709525 969114034 973400111 986909990 262817011 476751341 714530166 750380398 370129580 489517925 391674000 439521596 231393837 808406909 842031666 935394755 554519956 783526863 716507113 963426490 660921405 685882136 581013823 623574700 461992882 655772256 16941825 984704072 730869049 908678433 406508668 651885793 187370400 848605103 127936253 607285488 92258877 760387523 392007070 932853485 742403129 878663017 823334156 826797319 399163583 998776040 507874931 612715639 378461438 703867883 588457411 714007012 998269078 999051520 105481697 814586319 5583827 635528164 817705917 870814212 449719258 474786593 951780177 990437485 233331693 644106350 236251961 347933435 372391415 500174129 296521088 651517904 456148264 879853789 523133733 768465112 633293818 955995589 739263994 922778826 459324329 723471256 137401945 959617956 328124191 501936977 834807585 907230868 76535393 979438372 305480294 595731690 569831231 816250352 212752147 438841000 683168652 694082759 288132706 353152318 934686670 989341267 378672803 892663449 467820171 509666044 758611505 839537267 199533366 590712926 864261391 914866022 683284932 935607228 784990817 901249242 69708135 891130579 218150973 669137887 103148931 216627460 846056879 938846572 585345260 617224134 347763549 441339584 806695554 894086060 529011627 896935512 666826618 960682973 470801027 591180400 605664785 644539777 442765454 669841444 258732188 348143669 746223990 949262610 480723766 859797548 130076926 328548762 471885960 633575683 644568313 813984072 634829006 799227663 91064501 733194967 676439518 766652206 738711315 882890714 679331334 706149971 240017347 394203453 859209631 869327434 692045171 829270652 16394504 835213729 721498263 928435908 629008675 908274900 748665242 958445377 111861810 333167622 931173753 985809159 633154569 724576566 393891764 831723839 513660486 896836359 895534531 968599590 140723562 878045576 884470056 979593352 363386076 914689253 792197386 844012180 748892374 788918404 899418923 937662864 504230267 564954196 820834949 847794946 948203865 976423942 647131836 966838828 797962484 951600806 400560929 712978705 972859296 984344848 793103321 959728821 818340398 850858142 427841829 512366209 107975438 850282520 968534002 968729557 195118356 662437179 184651354 691267409 441175071 462438603 331245650 467072862 748012721 790210242 681164222 714097605 628309766 981440151 497065040 863545198 206218564 597784783 41743268 864290895 306271754 383207691 769169817 847157252 849574152 987081360 184250214 357255031 93077859 201681092 657408231 919117506 68662420 436870799 493270624 529354679 941369462 959919220 374795830 597884313 167035790 331654846 822053998 839786007 683806564 981914399 528810487 804892761 976993129 994740112 298758474 577634875 995445939 996934168 247891720 501742065 242874811 433421923 246350547 407505556 142276862 485605928 803013640 882717950 456852602 493391282 951535500 958239403 146189109 995155227 81602629 846314853 714273314 943494574 665852020 737974885 14020923 316099430 224811639 887840780 191421085 941936868 147933211 349134890 546113921 986013113 900020679 977471331 741105364 936759495 788746528 940038339 374599020 981727324 256866881 769901299 31911296 651063382 414506171 796838395 925538078 933374193 204506019 859933380 908740608 992103443 768758896 995911885 419990914 617992590 420414285 854955414 280219907 407358033 376937383 997164792 865521641 962133869 785253301 984726050 941245722 996652431 666232254 745472656 749175794 934803142 151985387 284102004 491898332 635170328 919383862 975049376 499231306 544842102 641553768 774616484 783214595 981771870 532543893 733392272 917530866 947868798 597745232 714749961 693060082 710694447 940628409 981686262 772079416 940088629 177541578 572961031 921812772 941734751 87901625 952280733 359146146 432791490 726480771 823694023 18707352 360552719 67798474 74012432 174667860 453307713 164962596 802924937 787131412 809307755 905470738 963831288 267698021 846932982 549677904 808671490 365551711 539721200 206217352 208397722 994543278 998518691 878737870 961186619 343914646 667338681 301216277 950999055 239260119 643788257 459043365 934110364 718933882 949011865 267935073 604361958 377492717 808806511 24376705 399054550 816725536 841839267 834916755 882301017 85564764 542592586 442765531 659381993 300345342 971911036 308759529 920883253 7643695 434897499 904767526 921217722 229024980 728732343 438277240 690082407 498198145 561444903 22561537 129836968 869333080 981897460 412415784 827716611 671470035 697244135 392580780 549279926 777501268 916489076 727573648 968994223 547518600 704569192 358419879 548111399 956743512 965969189 84332829 851625120 853028751 983691129 566966628 671163576 402514026 802434769 10811545 922193490 250841171 879385249 374662987 504000815 553963408 837022995 500652316 729109569 395272378 572062146 9362698 721624278 708770508 966464770 832585437 899827746 11856530 975364568 101512601 142889469 103377867 692066299 623582382 883044008 491612312 522788914 570398453 719067184 133866319 649299270 707678749 766871242 996357352 997110607 456573197 784014451 367374417 583298533 764535231 802241353 358368679 416692942 824583677 884243661 922298948 939601886 66043744 137289278 870067269 927776034 19536722 28209194 140944820 606413741 369957811 899341619 983477201 995645248 461140444 926619348 393403374 721807506 161079762 611399067 61785757 675378406 854948926 898993659 459844660 462372896 783948625 884299440 261287348 649871033 465824105 965202470 109804161 935455254 651927448 845609614 639223291 768071524 439873183 685345208 50195965 998615278 501686786 556816978 102279707 888251240 224910476 412762374 912905884 985775545 182099956 655092890 241258919 341617774 176503117 999139385 774256702 871873370 98178898 101349603 765640607 849513505 508460859 883677050 250984080 940652218 763371917 937333367 454165565 790320091 366807042 556667428 899970324 930018123 493392350 658152709 226257915 591063754 214001516 272080269 118628783 372910455 452400036 889261780 347450498 994816638 943362794 990018176 574446411 633765542 429003971 727425179 928073248 943167236 764569300 875803374 331091687 621321240 228828060 801244500 61333411 814030152 598284838 759002758 718893593 921592014 683067850 856737386 306871000 663778179 840486921 945146208 371043302 880932336 983883437 999468096 726000749 775902457 63358299 178412841 238955800 565686880 335084053 470714735 601292493 773025868 763289559 821608135 638285936 719778279 385720724 984900256 182415973 347744791 552452942 926569849 666255538 875616951 252231943 557554793 425845536 594959432 805001458 886559907 679687873 776040995 138958236 550913796 504359979 729917999 360214549 379564109 385660009 394679129 501790392 999565570 313531171 914436806 446819036 839429157 407842201 962351208 81347550 770769663 173595209 594119547 683839372 880536146 587510816 622338009 869814566 886539414 645052642 770205944 177716494 568946548 560155413 751661297 685574084 727174630 210826976 249999676 327446175 721524562 296334608 607902881 701348190 835427794 455439509 593635112 61709673 235817909 43956371 68961697 449355445 838310171 317529075 370370245 171584423 829035750 355035901 752917090 603176695 848311327 704284886 707575152 38302202 40500416 857418637 957534013 484948597 985383723 48149016 527537251 155941569 391760657 494494319 791299838 289481940 473040790 388734691 795311394 1587009 344187199 259460906 765488289 75709350 121039654 648005317 668965524 578175715 816000393 559214796 896887586 467141234 785631788 69726597 283232383 316305352 522417188 106772463 976001051 619687529 947505486 240802725 384807699 885479862 957479051 361978724 772048944 112599942 427711733 203246340 400006076 378383212 796396154 444632485 634375512 204805177 744213403 279067333 367988412 536809985 660290454 158406039 744956004 729537160 804677391 358721632 422245258 952710708 996115484 336378301 876464009 20254736 507091512 563336123 617583715 73008431 597152165 511757083 554228824 14359866 836619534 948879477 965701945 334499423 799072324 282134071 822703162 572363989 762869832 285928861 574717935 2956297 551572817 175412490 703930594 906772856 964211544 570653967 593137355 394060920 740447645 638771088 647644850 445352474 576880939 254196650 739746048 958696252 982621393 437430979 568827993 332030334 697174185 538231682 842983504 693321227 968205348 251210584 687299049 808408230 924572181 89175952 447528800 563178653 890417546 4928854 543589982 176108771 437547569 868130707 869633499 398322202 498386447 117715782 902161469 504516261 901943733 141421175 728483154 887806347 957019085 969076306 977491976 322105075 795310574 760446815 881682521 701372790 762426551 425289081 926865102 297631967 695491219 582739901 630765970 792782401 817521873 27329842 758433341 936138080 954899601 162811532 643122239 205500754 578440990 980749729 981308185 965251577 996513333 939332646 988614284 617188975 920895076 867199018 938079450 901667192 944206068 805191810 979044115 389602047 859556386 800203507 971434431 591356923 883879895 523858557 745659384 485335927 596079531 142182881 973395458 970223321 983287441 180556396 375165427 210771409 329901173 876220996 935224723 82441878 356410472 206634970 749812824 217350298 502507255 466801009 882937350 466324431 686802065 492085616 766102185 187634483 914345045 878244604 887201020 524036491 572036332 472023082 977097153 864219148 950410407 999210638 999418777 198885354 753318461 803819048 957703352 35239101 652270083 871864290 978781520 753942168 799593758 78815327 333409548 906942746 949024124 987103785 991712253 160180667 188750597 497560219 958317216 257917832 414276874 688499085 926450495 849301455 974568644 81667803 115128470 720968969 894071159 47797188 228793582 885451887 977192581 291149135 467408495 105321621 302635267 175441421 670533938 887284226 921210979 972297611 973451377 797500920 948977637 274713057 355883039 820527252 937484322 960568229 978611257 627625874 699695793 479455733 931723113 416589097 720151575 608512528 641284596 854141496 886863012 153945459 285330153 210190324 466640920 995825889 998008661 547427591 679943234 617521553 835099456 939545091 980958539 758876287 815707264 315719141 331180100 108929334 679418439 836960927 920151832 55386335 585302434 101332731 810594592 176474509 259063210 60795347 258996612 50273778 546495830 548485083 635616250 442166630 948683456 751011591 904390503 134016404 503680942 993418551 996031054 506728515 832836717 954304013 982405861 694754170 946316092 705840162 985223343 61055746 681191925 820620167 897273529 150006342 701448067 879342158 897955219 483409419 595184587 187550850 851550785 111497781 971365932 206770459 930147611 641659145 902192011 189345349 388024115 571269585 713669353 672086939 888874455 476775938 575530561 423361267 723402361 831350079 999392298 510413484 947775473 335262802 357972305 837601997 960559497 727965226 785467609 406403794 601792180 505921974 606824201 370667789 731453940 538115061 614039949 226091747 314345533 262220182 500534225 463954131 630292158 281008425 409085548 227729643 599048025 875061609 994389709 787407744 854554664 811242292 964827643 909926430 989871275 777058979 992955174 348333353 530502233 50349655 358715344 432330271 474003587 236645536 670146432 165334357 726439091 408530131 604567447 814816252 896317630 55467547 392980101 136950763 533747617 424349872 488629068 244452043 822399858 582365888 678050709 21831340 178880117 917454929 994145716 937005414 997421796 413850492 635255468 521251370 962436666 195749390 471611325 835312805 944364691 257002552 880332614 67706172 576244103 503189247 959637305 233040031 816627248 815583188 882271904 671989176 992886423 55301273 832533704 850475252 923083047 2479291 353886823 682783785 914729673 580488427 700354065 425919162 822167962 994281553 994921800 725852633 752009891 526164796 615799115 693940328 786135097 896005586 957001994 869698126 947958967 921428175 986684238 425932986 796622242 750543731 841886444 948643446 957581091 935763781 973264644 268508957 737422780 779499492 870064387 534251620 555053425 629702090 840953307 958737645 963470425 882417976 998914513 846476053 989276099 407224599 998770948 83390738 109932585 43624628 407950573 786046204 951041733 961769762 981061102 149402626 478684434 783937427 939712301 448046510 570479449 954279223 968409732 418531951 521116427 681403063 864459167 553557421 868302222 864443290 954017624 694887876 729217850 508624283 740121571 984975770 990900462 63700962 508942746 397521921 582599287 168585272 415563063 424878277 917776606 131413684 375617080 435046684 890723371 99180049 128629280 214743270 921527450 445989732 905876452 904992787 933154918 770812595 812935834 287979206 300888842 799493432 818021062 360508576 820714736 731117921 979604648 165165052 209669934 851601533 902860441 761012530 952416865 582401787 893462113 154385419 632489560 413602988 456076891 575154100 777092956 17227633 471737965 643164892 860924015 430546107 547297411 951839322 989514276 717037082 743517962 255264147 911373127 682474070 815484756 785085779 799955079 234393220 631274928 931179673 934799689 38541489 917904591 134754315 711674385 135501290 723964361 680736846 937063483 867296760 949948748 368275887 371185207 130232994 513978840 153810574 921853063 518759455 731854496 39595432 782734255 341634501 562733328 290052200 377065466 789530330 861348475 946084479 991271233 358123250 954672773 739208137 783512984 687705499 872121122 33598567 661590253 630171165 786145490 313153745 787382793 687198400 804061422 755839993 780927453 430611613 666574864 947220566 980060710 763562794 822490261 389742549 916212940 289594582 339050621 951199205 959473019 901293525 964368613 512480590 716635697 752701956 877695848 724653250 891980499 142902528 159271007 540780526 733087986 406845896 493531855 567926083 933865137 956501943 969002475 133986925 857544233 837285783 953413452 703533039 766284766 165197639 489164896 525612773 532709744 25507575 101934730 296228484 773311446 657162807 747164597 327100284 603776951 636682031 899947428 129996304 432867828 851897808 945035371 789442830 807674017 567465283 973283927 897169433 948488498 869363823 989736912 573419952 951400665 189588836 337081639 700054766 709087830 658339973 659117892 363062631 848618701 267436901 570673403 653953066 683128706 402198516 785251807 51288873 804327565 885432887 981599992 226842884 992680727 226526796 900799350 485474120 572944333 133849874 517519789 477069612 997891054 456473888 900900394 693901328 895828943 24491763 430821658 389780883 422960015 780635172 889290851 768636438 992540785 577922280 754268964 733568215 781899066 71418236 321012781 781222512 816789467 533890265 561428388 28192006 722574817 20329166 448055567 563035249 918265213 712870378 900567936 560791720 650430924 112884881 485636638 352505207 821879396 518627056 695605132 337987339 965495095 350149206 570155396 690742640 872654203 813331299 949882066 292737266 975057359 887032415 902650845 788253941 901169307 940757484 990868345 854908775 945407341 899224108 947766551 680110957 991170029 784753967 790735711 891906878 928719209 162692177 238278226 177496035 348348733 936865021 956160351 9512180 638571945 646424844 942514485 306181965 486009290 117435543 876071237 714525175 917059171 113846203 241752565 712099800 900744954 585086223 999168010 51610936 238614307 279466946 491667104 783086091 837361095 53720832 147289742 707664894 838090774 837129367 927777478 408700997 490305213 758019328 918280283 193741933 992593805 599971308 951596686 869738301 896248406 749012171 823280182 212250364 458757700 827607917 892894097 551220275 990002518 277185420 624030044 842971810 931867932 287656896 385009341 944614633 958201238 657386892 860210361 182003111 744187428 449297745 531734180 364073016 814268269 695679633 831918677 115193538 402931221 672871366 960958703 644978627 985196534 311259859 662043266 932895433 953952340 446126260 969297528 386917917 898717070 423337264 945364413 833783936 951553891 293070455 825005965 690457404 881152496 844316486 887804140 9303814 445282157 606172916 975232713 421885652 630206926 10874348 118906551 672077540 679419356 858248331 987968461 641531463 980614370 468213204 945188631 487837834 916369471 464814216 875527384 66946411 122205892 993268586 999523817 387267961 987811349 920804325 929017546 808205299 907282943 237991841 272602838 186107633 461678637 58095769 276539943 520259638 610928698 608381956 865961335 49800527 333206786 132488082 171198445 364138221 568909524 630712749 854797462 51752652 834531158 851978488 962183276 637615890 818910979 116349169 409784102 988230801 995663901 969034172 976205800 261439459 694579081 60928349 535617968 51117297 652007184 96478211 584108541 435191015 499455241 146519222 929177491 741282660 751668224 211929042 214722215 754237601 812337853 956068361 984774460 168529190 415437215 593745293 933141198 300249915 648195640 440838669 669296369 727511777 842505068 651823098 925240267 71254978 897585792 980402491 985134555 225970510 369045415 603976432 671091022 221925922 934551602 934758251 965443875 260334951 286948547 982340676 999888147 196786093 729859928 792028467 997684214 708121885 933627733 118082469 500308538 726190766 801500477 604366291 741989789 750057943 941194973 427263395 588294703 423823418 946650234 498707768 954662720 457391771 637887505 681761039 916315450 150830376 940878483 635462129 703629649 270139839 714112416 904246062 987849033 55767953 960957711 824526965 921089000 468251156 956784869 594317998 783618626 990536655 996262320 457971876 560112679 690981164 931228734 124507129 374750957 814009554 891082040 606483342 804809966 497381611 566671764 160194416 742071282 239063972 618144880 775156726 961456129 238209626 619394500 749895186 889705261 261859227 845133343 262055726 989783866 525072860 612012155 172500660 795498898 213978963 577389993 981640962 997050189 668922087 837153878 425706337 719167759 746212528 775578874 437935585 558166108 50987838 429780468 572027808 729153814 947056846 996019485 472083535 600121797 764557101 805120293 909116490 937531633 21919313 602253310 533450849 584979590 236672216 293409794 289672623 311502258 609404094 827531979 532971571 944342455 67738062 770972541 188917039 660380784 136677327 358216270 908327139 952341577 211158893 501456874 641354407 703453193 300610406 713283179 538787971 733260722 829152419 894447421 747236224 991787467 781207389 930246381 203320292 454798766 788614596 853495331 688454389 754757778 875684846 934114279 666165151 927024484 825023779 864287009 736358181 972720500 534776002 672822307 295564685 769342384 204720144 909835896 120038079 849463631 441250444 754399609 809766078 831702180 574652732 676095080 874303590 912580947 784456397 974569451 414352378 492502429 998808815 999425704 160929296 602214710 976469667 984384402 939042836 959105787 819603158 943965756 896877893 996623630 981551243 994225531 446599486 450574966 801982036 964907702 976577321 989265193 699534204 821400803 942144601 993639723 682465769 848931870 393647156 822722853 584929685 757623432 234978387 476457308 192643996 452834142 959562585 988985318 13866143 613798534 593683825 853538523 236122986 535503995 651581218 967144704 183039899 704243090 48932616 777712548 733211454 788022889 549480327 860231500 78408396 864187923 610619491 866441483 674704475 931188671 627388690 719476651 230879469 582332846 981593560 995011795 433044291 547199111 561122264 847203001 292603533 575894018 312201960 783908450 73482585 914378859 766365550 821084152 639125359 747320236 320694545 707222428 172947476 748984941 551455896 593190710 625362943 957740045 126950501 401996232 628905996 679735289 127101625 131912876 251635410 533241042 62188282 755845683 670969676 687277645 528475297 757799870 177895506 999341854 755119306 915944186 224427598 910380423 114663129 178501487 587137568 777585102 579733561 675608471 228257122 560427315 593426845 947322182 248272701 834545865 978715600 985017565 186442410 908502630 333434406 697031408 355422060 860115393 100310693 820096262 907385959 932118953 503498679 537954199 178548264 336284095 73551611 921402697 894671912 970727820 668634616 928111152 607696121 757708905 425860388 688461082 894400503 974664803 707955563 729298804 77860558 137648745 784763650 801695651 336176707 756748293 891454408 959839654 94453491 253664465 656607793 829394141 751412903 997960641 3266150 582886777 625823247 842909583 494512593 887586197 846034554 981980033 920300647 982594218 24981886 973835611 646422259 865930234 700938604 739151409 512263247 672404860 729928280 865594596 600128053 723860220 392495433 875481027 621998172 783072672 16419322 957863796 420392486 761279315 594039493 952234901 416920816 910267732 18178809 350045201 538255756 647212347 341693605 756428699 499054485 673931396 73696838 265848930 688496588 691950196 257891460 552934216 5803679 482017957 969304587 981081901 743106079 750404662 413920351 814794054 701027751 741994256 813969094 829708283 783954316 833107577 67152714 296623037 830853370 860203989 127664273 982940792 129893143 755676480 575757775 824346786 979836319 982359505 605835532 704633152 262218100 820867826 460674303 605998797 254479940 408140062 355725975 889950902 628228534 683770042 258773731 874620455 513322977 922350033 242234175 858535295 743035573 920876284 555324278 611784468 400314113 447731060 870889023 898257653 361749054 427410522 972769962 994992307 503805759 715151804 799336933 982254651 87513532 799612084 159820387 673309392 893086190 942035856 116729849 715036297 416073531 762487609 362428479 927157713 97311341 400803618 567024807 682671551 896674529 989520709 264039157 674275974 860865164 878586298 452782017 649543690 662772704 858038228 190847590 533995773 359225077 605110824 865457527 991953344 660973479 983632593 579759480 670546683 175098975 702886281 270711416 911347160 880401544 978843726 489971943 972848828 892390185 912783379 560928948 994145944 351926613 503819418 608550541 731796894 849439684 894020941 786545893 965590849 610729369 819414367 767235616 818930150 166009693 172986677 351425597 774793729 861808303 893781599 149962418 243541416 841784282 908345138 681393482 771992437 222766700 543721368 612805218 619155202 624896400 855447340 972099952 984953387 361984022 474220783 301340095 350217734 480334570 993148096 18454297 148087932 608271991 891044583 191557204 960299595 440217545 908245863 428569720 703377004 765623497 883141086 255495917 585474627 940258772 993517514 371065420 432892017 228364011 472249184 139358539 518531506 957313104 973136456 538927827 939854627 412852599 935728551 463427299 795388877 849812515 958020670 186981296 427805683 645078362 797879143 914648050 920805462 315684687 599647937 493777426 830715769 467602753 948597782 751722339 905624239 141898754 592803791 365201738 516069247 204720411 741265182 232960029 657417098 765033579 914931186 93713289 569763217 379770933 859105957 271587229 322118876 940479030 964497700 6431670 553397406 723680471 765635824 919860169 930197531 271318595 616161061 660138929 722001788 168939678 585872432 264953036 762566141 788004018 952759266 246041986 691643714 743279054 838000735 486753926 649794827 68522585 319864570 984730364 988556878 703707836 939719583 934435246 946576451 255113303 741666647 754127069 917738758 183044634 667713563 916037636 920307476 545610636 804068601 374866366 983344241 391867364 512889517 25762400 513554665 872934776 933131290 905601865 944326149 726391743 781722927 304385462 837347202 659607618 988738293 436001855 913461423 408665282 939041324 669811496 896995768 411020810 679081771 886076229 890879537 146425872 773079016 840916116 918146404 497689921 989353775 200342680 993756465 806867787 912440926 648796909 816070924 272130219 668712262 966642927 984732089 603641317 838622157 550622165 974489705 90551258 213375029 424148814 678885884 939530210 950432769 951782059 963029855 381630355 556132650 258391596 962061241 196979064 733458554 101538912 207462531 973287603 987020244 76153414 490021271 120522901 684572102 269392681 826973957 26506607 719853614 950079038 989444539 198843202 381583574 965796221 969977758 111375256 859874890 452473446 874135936 701982727 839370693 826734579 840387100 987488341 990533954 479939912 893331221 613061221 830665495 363196706 530217326 487110433 599368109 715108846 799326087 258040140 762324188 116296856 644596929 131723480 136967361 632843464 982033073 280984438 676176160 635056993 696524349 791556522 940031419 528207485 782456972 589891884 808053950 834152948 972773319 320625872 610418327 826885874 896883365 445593506 630583082 815783689 816021167 388683909 839560003 588666168 590098394 801216267 926554584 890317093 992057686 710812719 962876535 728664457 758597862 111652393 133478918 470646877 794871218 198590057 534208615 187708087 396383589 561388778 632907645 716238128 794091458 816122409 921849580 803613762 997977304 639810933 785849461 254710257 788643717 843324868 992349695 823662737 831177656 310242787 672037159 777785728 936671142 249708532 258036449 16921823 433272793 569532761 808891095 133767597 158325955 901270623 967242216 823720072 901062327 286316450 696672253 427090328 865457983 706334801 909180963 148324968 452033727 955344223 965734254 538963377 893316806 446344445 622701303 808676120 952643840 321835215 734756088 740494733 769833636 718623059 725819516 203730771 585476851 923009194 995529181 648458540 897153888 880019666 971030200 809261113 964992059 773048912 898273409 437523138 588047844 664353247 928177349 826508085 964654205 128564160 489718038 462331236 667668621 216766786 722572337 67331369 612239042 563384792 616003518 348589221 590904461 148494223 890542816 970907953 988663657 898348287 971594987 972910824 991353326 611237505 980658053 773231122 825185496 601235919 910749825 38375732 152814945 636775918 842967769 184876594 253943618 282520434 395052107 531499634 944130802 212568028 590229037 596909019 813290839 896866359 900602418 53138925 203940615 823643775 989100547 794528783 840825432 379633261 788554467 808081134 899632672 356923037 656379483 745186064 940755479 990632929 999802962 709491404 735772348 5544045 205999133 604843585 686736164 547356015 975797591 212922456 526746773 978927206 984640166 803089491 894826218 887557284 920165005 506162160 541107427 916352060 995120008 436877025 793492653 405237126 681050989 401748608 491683540 788517350 931737575 114101797 691918679 505315005 733360603 504594376 512196896 157520698 634161257 255146874 506598280 364574447 490788952 43403969 231723008 612626860 959298526 706619747 863508302 959772842 973878473 592885324 610030095 190603705 619044426 357171080 846983956 680270294 866606377 213472947 491362148 614488426 742047734 624602414 669520171 64002575 192343625 653081749 853417177 132049448 265437947 854457972 923192227 395064287 579171989 640578707 643812546 382341258 478203962 121184748 718898283 949672094 975811124 903527716 935063906 234072195 474022951 828988601 946759044 436093852 792533146 204380550 900983819 512791038 977879590 252062854 324511927 430255920 718662108 911759310 974566905 472476696 563426417 18656126 467890014 734281723 754523977 357031644 531510367 817397464 898126326 832947564 989105368 987986247 994059848 310226176 547825120 554210158 667040923 293040626 541100379 987837504 988368263 943767209 970369457 374661277 803929356 961502162 981253438 195757713 428932954 173318247 707141474 124738188 782746633 174701923 271168842 836615224 898770419 536787087 907323078 771286104 861412251 379168855 961727722 744745453 955272944 344053235 923448722 671884380 956953909 182162070 814096208 360842568 548378490 48356322 693422879 843280734 844143722 809795091 921654709 983077483 996784660 227481267 646856010 246107847 507906956 808394224 938877953 873896871 985189284 708185925 767393976 197302262 822471361 596099660 677563523 953736262 979660020 202934163 307437739 719387954 874465943 771895231 891887132 848066672 888699009 916436122 951719771 156404573 793294739 271769083 986810008 766251501 807779868 933543955 998909154 158506876 663659408 971954161 976308895 512413498 713301837 809859310 967587272 196510806 725635070 348424096 538322904 516528407 714525560 68973341 893544868 878550353 899533109 530349279 754503447 20000279 629389183 960866934 970161165 975370774 990635745 367893887 435472624 650718365 684191862 525210819 901842315 353550879 385810975 11140561 839852143 993650406 996320536 711670069 987939970 703387475 729612460 486643819 605080760 173603699 484866966 621653211 658539980 957232917 979896034 958150142 971221971 349092602 857198635 978343583 981245473 140369748 458655584 92690583 994157251 170668302 343471124 643710324 716970681 149235060 453529749 879566689 930674303 62817756 965644299 432907117 980188226 14675127 241051597 920048962 965959415 65209320 376652942 873484573 942959053 422988477 497699756 960622172 963190152 144776743 883172040 76702927 675532383 19676050 131217077 953963410 964165378 490281152 536171888 499233569 951410825 261945679 467498180 274990594 701921688 972769875 983356155 173747550 482563561 823432258 893818441 461394269 726688101 713239851 980799394 41377839 845643524 130546734 886478019 248164047 416024998 784704296 855587843 145593150 559062529 123680773 785853219 888081450 992696928 845214591 867723717 100652744 179300953 511440872 567374902 565190688 892486771 128639586 503774549 817669019 969787927 271037243 665074569 508256413 828229168 886413104 994652585 924639278 998726943 896709325 950374570 404022933 511507711 361524344 677212926 733182968 888914503 406651746 450796205 316495565 999055398 398119602 485497745 820187760 837564364 50092055 955330430 967579541 972794978 766251921 946836885 113205878 771538324 77332555 658174946 992929769 995827350 187089511 902404411 854620478 928854657 996499042 999851698 22891385 304903459 680620936 948906036 55533355 634743529 203797274 620423984 462184264 680002914 111962634 152168033 279474719 421645827 165826447 790089639 979600872 995942297 257618157 350800695 999422694 999940864 933798466 999619361 520688202 643806668 373509336 879290763 966358471 986841401 858749629 898815376 453881203 470420012 336801815 426598690 561142676 964574857 258683827 341785715 788717566 998709468 397492848 538350331 183204255 788601106 66501251 858213566 959661822 995066611 767457790 934154731 156328618 441315487 138048466 715185224 416239400 595389585 473024539 871100823 865141444 993467114 633839703 867562420 422278295 493018454 724111795 989272272 556520213 720600499 468597552 714041829 332761854 441481308 435632491 858535625 3105005 585595568 926889866 973867145 578770141 751328267 788039814 887676642 49537297 859999864 553306311 922240389 673863279 774685384 358911288 699460452 869649881 941912687 191970903 414938348 725644771 847354121 367239093 369488407 976568313 996065637 765289657 974672336 383053746 730556548 277769031 985270089 166543594 996751761 696724330 956881768 96604194 839602102 71354263 449156365 567759692 802180166 841208521 852159659 186352442 481912816 70094524 358576092 395529421 900388577 821191566 856512866 358961116 854939309 122320125 267068486 102983474 126758745 884749667 924036569 617922009 891994772 977186820 990829157 290423558 436157702 54092062 316756176 183191525 447998323 804829932 936495042 809709333 813269376 335410965 674268414 817355702 849016063 907395137 918877695 310790709 467075201 161873432 670571189 90053108 527099147 699544564 983319806 925243308 939274447 149851412 391978873 637810830 841042748 73433857 105013509 215260381 628171130 471599971 991608438 804906255 952590085 865053648 942161700 458329107 875237272 885629501 904936134 555065128 671364801 831260046 850029349 97124142 223997636 436546463 764142719 916176381 928900494 508965810 814723328 190554147 685982749 539354639 877444269 297838529 964155085 604854935 874836140 737305576 763857269 79787052 125985124 310781701 510073465 702256180 856189180 366435498 455224203 533406637 781270074 387280177 716319645 791385057 989736004 247248541 967366818 873388846 931835381 138315866 722666880 236411048 285721193 462999741 587317565 481627145 659532488 11978344 271949726 67939399 657996984 762886258 813248639 397198136 521644917 801832872 984808240 336725383 870195629 220340976 665965997 24576626 571838925 977033178 982585384 530233432 762716013 824457939 934542941 409829388 710462949 198683868 821292437 209521640 345712590 61141982 295884338 759059569 885560231 68587109 477834905 195238337 462999075 928825905 976608594 256431194 699817536 302648837 810710722 99135415 666697909 684195265 915694653 752518052 900698920 618271222 704425035 693144577 995420715 994725167 999954375 721141691 768095514 330421517 717640119 633387433 814703037 642442641 999908885 486106837 529376971 838879212 950483174 82812954 704821690 958047465 991688678 716053945 884002109 322967052 917267454 33698454 961619332 227938644 977427454 992246636 998989195 71078284 360985972 196346366 567484716 351096766 368333266 720926954 920518529 782133572 806917833 134013303 884553710 642620416 800358778 333738306 789861406 803827250 986238232 163879806 974862824 445564097 767965748 586240636 859175317 643254176 949050262 696527864 781567634 690467158 767213547 69057895 280679796 158489252 514024684 432534048 944765019 166800727 752460773 842415387 905271564 723910384 726349165 701507574 704671621 338417063 419967554 522088983 866350483 990251515 993412459 394071996 584769954 851945954 921830815 166480603 253628207 229417735 909191280 355574017 926433476 339645927 470521947 736246434 738531667 594837558 636510685 210896501 232066633 931606331 964868711 386178354 648043005 100383097 680123257 592918541 890859230 17323826 85045210 204229940 308746815 518589586 658074748 787925935 837394765 23620696 26361229 158845126 653945315 734948900 890975108 941903338 950963323 141318075 508042303 382665383 638798382 183547880 877886128 980750174 983893292 222830832 598131420 595927793 675251610 168076225 320509601 110753321 783930551 799228863 907909251 299220464 465342295 851057368 939506329 348499599 635867381 772210450 841957290 856117958 986017799 188859713 558932473 836105030 968018247 874337921 879776335 961217496 967817321 639528226 715157644 674712599 907000776 513572294 990503063 654894182 781268194 715833745 803200615 882458067 970607025 262982885 393200768 478091064 706951522 795231441 807757665 608774918 645939043 78349533 140388957 357938610 552267979 412149721 908295379 5104413 265345775 38092087 640398001 474244411 941103528 99619209 837619522 942771743 998000505 801416302 831580743 976624832 991864793 676467146 845400367 756362252 885324386 915780332 916197037 723519218 966590795 121096258 942655505 174329075 426211773 931639886 944510475 201130426 458731967 942112767 943860876 271119274 955847666 764027040 932873016 993313181 999916233 305284794 803376759 622123467 971766184 407223744 893861870 702443098 828551664 779701935 807266625 568841761 942524694 105660216 896528683 138212742 160543491 111391883 573784381 664777482 894059122 451008606 475909241 898434068 993765200 362549241 836414687 298381114 570269495 556766292 757207851 22349239 113949629 163099076 690466514 167234117 332639739 261313701 947602779 763656092 944776895 342964298 528593249 758829124 915867476 91401438 152064216 731464299 896338860 496994993 516594275 842750648 999613108 443186086 534332578 757465576 892148008 761341502 877614663 451835318 785239487 999154141 999832750 809150528 973184486 462367032 763805228 797955625 926299371 311053757 868121171 424501883 463382294 387319253 930870553 905683168 957826365 8720180 215165831 723537473 969572695 24255919 554773549 714810077 855500029 364971188 579164633 316549314 606628334 634478777 913117696 544968812 892426291 831723192 939504240 624526792 951002944 791817425 924046691 151155171 494011465 709424056 948743342 266690599 790959628 25493973 722028048 39778285 778647306 949025731 982766417 327445813 431952912 631589863 669418012 826589995 955150085 48194964 139082871 760141023 930975969 852118658 858768502 390980529 461150060 959328128 993276591 141194793 696306533 547261752 724776022 8344660 361880844 853083708 917215175 69619149 460238496 406636729 696314457 692027451 923200111 781098859 858470796 112200005 693204930 554749184 586309913 166163168 433768256 108927015 525969783 716902833 956340921 646964598 785577024 460387628 894968194 751353721 989205405 299508329 513221669 900996425 926930636 424327902 645634308 779068102 825259324 81024378 836837474 289067830 857392167 710620593 917915697 29412081 161361437 819161485 917245919 538872006 789081451 929990353 942743251 912044245 937275574 477040385 595858465 540401004 763058188 487131588 518245564 667128682 952825497 152967308 767299646 604540594 966341747 459425252 866873073 896921452 975175792 198066678 230764534 228708715 794689443 510668985 512293099 770292612 800526881 913626670 950316473 962472166 985019852 365921378 631861856 860362072 970152743 963868607 966147412 229953188 956044431 777806397 856335881 332970695 532591891 163417773 335608953 956864971 989651813 592399467 911346370 755645210 851928392 450787785 566313904 172891215 390062470 696530503 840062974 977109611 980944067 984706543 991534353 143287976 340781236 611182268 780398240 506048713 682753269 122468840 785907865 495106721 977514192 460616371 867302926 408087659 638949859 916368560 940351521 821254387 831574057 806488303 948868827 337451109 552847637 575475437 888002732 285968177 870261126 356904426 950357264 147567365 714883362 863184950 963140459 484693414 485762762 575051946 979189244 204501785 630074863 95514389 863690584 14107220 588013905 688847451 932409420 248880366 568280172 618622245 711341291 747367431 766579407 957997692 959712353 721294393 899878181 420969758 472566543 866309421 933746341 352655296 890435175 904560430 994670454 728324714 818558231 706388730 906441363 295484581 766544825 886134328 889293406 929441901 981005798 132612094 143254230 834889878 849632721 697601470 709059542 580790755 786358224 419970871 515018571 189938330 207634168 787780539 831594730 807476199 932634460 16350762 579976754 902193018 957263256 571123285 834395418 965505079 973364606 7543274 755410912 552105202 900353231 620744841 808383931 66374658 253567768 38927614 419961962 29435294 638569128 122049266 156848281 885691540 915382093 599227615 977503248 531553173 721746828 319742162 558380563 721549088 895209246 791024595 991430699 757732264 976644808 129171561 848494560 415456546 425366406 511977469 557678797 38809200 231454661 635761032 844096355 340523200 939059000 970116156 998871142 478614021 870737844 493475136 530021783 189263850 657403450 831362456 877115666 377043305 508834599 630057197 847522444 579691830 916391052 398287919 569042848 140743678 981776286 648634515 754038553 296359600 453397583 594681843 601406756 330917530 774771232 658679741 798958423 770196022 828074749 344214910 443089950 50255787 669386062 338633968 781768200 912514846 942546982 107108642 586862238 579994205 742872625 817598337 883426034 852655648 861387884 662543982 991866410 177598162 283744728 608469378 887060258 823062977 869135204 319028582 876285240 163779936 227516111 231136552 549825111 756330821 803243617 374956157 611244233 922421044 964025413 406990071 771896873 743486659 834751130 953422944 965582300 262745831 736282360 855296827 900511902 29732362 147371496 380947733 617599022 784860203 967254869 540702525 949217566 497076328 634613454 238106218 609749967 9820257 469112725 710270273 978834547 376777565 757693668 535977246 725753423 82356433 444931733 150760845 629946648 911530954 966162814 926191255 961126860 586783012 768403360 653638541 670783564 839618617 855366897 799560768 954283956 578096657 838128029 204913152 764560573 702620049 844289531 512679634 649170358 943185073 980165071 773436332 909338333 819600533 866584650 513020413 547004015 617261551 950697805 417429757 563070911 972408606 992997495 508101063 586542014 545970313 682279818 415890934 854816118 39443337 853347744 106485684 784008562 727241969 962466123 184222013 646038121 458059253 577000239 537489634 591969215 292308254 961867409 930674745 975784325 377370416 662432436 325546529 806109345 260256611 473224932 326964044 729653693 416394513 436928578 261468837 270013680 285283060 575402155 433945050 717327192 543879669 633629966 702988402 809827447 692026698 919808128 107990565 705423339 986248605 987093377 547028591 892747448 813157286 995738747 492082734 972315844 118390230 506390400 213664429 672221019 979293235 984846371 390739086 465594589 171009555 674281603 890912517 951868564 189284667 975204589 368685484 865822908 633520419 751750633 296250234 732704071 400395085 843087985 849880144 989663806 534053288 609936945 115817212 536186085 995665656 997901246 61781503 757978907 729538332 820004183 369050656 939541464 519592479 574165838 708394885 903628012 343350729 460483349 826229835 871794758 393056287 634676616 479439615 988738134 78565018 505251691 464311016 866448624 361183256 883508115 986597147 989671971 489885735 588864977 774225286 827839105 816656222 942185627 789440541 963228700 40767579 444484146 482867721 724083001 226623047 892099187 403551145 785100653 370781107 957043529 223976559 694681007 946083270 946408705 409319469 657592420 11302959 76640573 829120625 955899904 467146888 649313077 506648660 869615385 314693393 678782366 350861134 966365604 624977632 896692350 498228681 786649817 103390215 305884492 337963107 510810035 152088040 640030031 199745232 822044624 22244768 338677324 647055302 892287627 550823665 828448525 235918140 690002244 686806987 975066708 280379274 626392976 680511844 858640325 786469303 960961722 946886706 974770527 29886963 819044699 348705817 597251933 371089833 402995966 518298589 800929591 391519887 941204691 478972379 588944497 36025776 730286260 271054417 821415398 780087363 904379147 269968076 822994460 11691453 436374164 52524211 216159263 696408806 857840700 401668986 749816537 736654637 860559508 53474536 366504944 984067599 987773739 429058205 574878196 778899969 904600209 84742934 402630566 875905524 913972303 936641259 953096793 584541321 736431703 742455769 801565561 710500148 906251424 719032770 845674164 497768511 545176244 76342171 227431771 996958235 999599491 279092673 621873282 737072331 806823610 58908511 817338660 270898176 594174506 865256612 894159367 240384381 949625693 533087122 683016563 878853763 996103601 223607689 399842577 993098337 996710317 590699506 716338548 347340097 636330481 860728756 952013820 842401533 963954762 455205575 803951596 259130691 765836892 509171851 714746355 271681638 886510362 784505414 921144722 555937447 693654465 785512552 861732673 767115510 955835205 64415719 497286630 373461946 723865352 720110007 838881674 841053793 919744956 328983387 969493772 645791738 804748564 431099877 639945903 94181873 924146173 527065926 623881638 712374605 743943535 2799496 11822363 878797358 902484796 305271039 852902498 301029272 311045001 677749178 952847142 736376133 868991249 676935009 855935583 27801279 608974023 660504782 988448827 719039526 729737377 402307742 593113086 212288868 461911838 24546989 60833427 143289314 688723491 471587401 706917871 320341293 870206085 141888903 727336198 399048184 907034894 601030073 672956559 645062524 765851654 153277908 449574096 656232583 716228782 750610593 947183379 152660587 893724641 113076954 803492768 306918002 686052756 388160919 574114677 252061833 296497202 898639634 905100647 869928623 888911786 336299828 804197301 323217260 550815570 272027556 817048817 186927141 498494450 542278168 697079082 215112642 734732804 328591629 768139494 640554520 909416662 549995962 768481389 820247986 924770146 855482262 921699589 181845171 373409662 4534695 236588015 674180391 829313212 152456973 657148225 351675537 965512079 715310738 815634208 766393374 953839764 671599666 753573123 847046565 954716733 157908040 269735609 482646412 519430155 387442879 678310172 873865439 965205715 139702585 896720800 89062750 911455870 194011146 353367271 792965329 842842897 649084796 732007173 367790255 775042631 526266040 688723904 428885301 496544902 383681643 821563953 587364159 912885700 327297832 910769941 63735331 152695341 628093466 806959724 872071353 883132324 902355076 971482962 598832181 855660046 178887461 445448778 818885326 986014750 37737033 919615774 96704131 362096943 745924237 870735496 403657598 966616662 84298641 967721026 294169818 940617757 91517965 550529502 513353894 518106336 470417094 581426040 606940652 871295610 105704420 446263600 771271772 787917300 916746646 925499256 195690772 366180249 782050858 956141342 443092159 984781505 769582642 930100155 139601173 619384857 916954557 938439490 121074117 386761986 126224674 562213841 66225444 850823791 413708178 919020523 390789546 509074597 92319570 482265642 280395003 928254858 828413950 831399259 126877748 967174977 76250131 361473866 889333044 942165092 269503939 552240741 495037825 691573662 836719118 952798946 73545307 460307320 300402433 643851572 908243738 913086061 928321697 969754195 528023966 968381311 68358698 129160082 669238158 976538258 588490477 897274771 898380517 906155876 768102040 941070877 159443305 852420645 675890093 952147583 678412121 744998745 224191074 760470726 751356478 907337206 390117337 630594817 847535515 972191191 383350681 802795306 268024774 753539191 493236969 642952673 297584080 667807813 993990054 998509356 140643834 141105771 805324247 946053992 135054121 333180356 543618273 786062042 768443297 781542484 750949928 992299232 448658045 611833558 549261879 846186013 587585824 705073062 946533301 969976582 42694833 57927605 801927887 827342773 390858909 610928128 710246769 853742732 625356192 949470798 702420858 839148102 118994672 740723189 357517952 512453834 43437686 448994491 385077898 720492331 63989373 169107662 571574051 645513624 801402253 943040041 204422231 428418319 78316269 162347417 619735576 664935073 224741658 756813164 422695782 869723048 461680263 647628553 852090106 994244622 370898543 726724447 376502157 510599529 282418455 665145769 24733153 536168500 625271018 692466516 122939764 777710705 341371189 408926562 825875572 872853592 772271886 927557714 272225914 804976034 137797174 877880142 796991305 978876899 149304475 667951328 108218749 403014459 405652739 881695951 476736034 837428112 95526917 814132973 557064276 981400836 881310659 949487079 838340606 877056644 567465205 757266653 728409120 733970459 843786075 879161915 149050874 324550023 882493204 955880341 149026331 608799433 231750848 280946829 25532236 900194622 745529309 753161845 502138625 914989509 645121364 923919996 639195835 705472310 451014108 638344094 376277848 670423832 81478513 873669167 854656261 904941556 504750836 853334356 519213947 703052521 281880227 610557403 519572147 869545446 753488818 995191677 525428859 803272483 385500053 808611766 246186068 813759758 730157794 952698735 650704953 654825440 513631309 745056350 317129619 930778000 552514406 607432717 274656266 797509094 332603763 622520983 337758867 888006595 90247985 460816137 672093243 866404462 316479962 676679695 610891785 757158574 60218978 260084673 410768212 671632862 137254055 644870113 5593730 443413234 497893331 959035408 916389731 982357807 962967307 967977492 414757543 526612198 662058028 999309853 239348890 505724846 793777550 886749721 713994384 809055593 535848500 777293291 400682163 750705350 651380882 865107084 594489531 600889559 104265163 149583260 855863559 932197773 790232231 966406737 890898451 995450011 129797125 948247670 102506108 378143025 830828797 863513703 198432274 490877305 849352233 882413202 948623324 972922228 314091079 349124919 863234722 897162841 867767902 967264706 408853605 677712821 517888577 764842256 760501517 900841781 557509489 965030207 14223285 491112347 994899979 999451894 85939964 373605643 368438794 683996602 933051967 970221490 557530545 979226845 797633610 965298076 55142059 58323407 251833421 801077154 910246945 962031243 667844375 795199484 903495926 963598910 301377559 886976338 191821030 681432568 7976774 359212491 721623463 984796528 86603955 878525469 336247143 959478225 619274030 987167806 555244369 564995277 362363525 610847224 831575960 942544511 117065440 372699983 308986561 893612840 829660445 958013503 341976292 696919853 633449655 703355363 785842397 826506090 979446381 996088273 855704495 892649035 467427057 794841065 103265439 596958356 947059212 993690268 601208220 634475315 681881738 834574332 683675535 892837011 171318070 409047047 341503673 555913735 109622913 257360970 798680075 945389903 429986263 797286661 844666527 988379893 58196011 767981766 77898913 846349270 343921070 691928276 628272698 726989136 639113004 838272045 161702380 776505829 368474519 546824737 843970571 950341683 926383048 999643343 504692615 801794506 966792384 989409548 769587055 845603643 590281447 632108406 135849160 471681330 835772516 971644067 522642070 767665197 523798143 923624746 674631028 954582389 958618275 991894186 430621547 851345716 234735617 978496189 855778139 981883330 866765450 916618672 34556408 856448725 246077774 464628813 386536119 877225028 662005810 676286588 73718450 706080778 720595048 791371002 168477327 301661975 484577429 932456596 350117103 911403114 99634065 370783921 69497035 283354570 488356936 885295803 851884454 917104379 740171188 854089801 131946707 872137958 306057939 663454604 296676104 530106311 143075290 671455297 79826706 687607082 485519929 633214906 968893727 984163883 605576620 922063939 546647757 695864891 380983205 550804256 237640385 609091778 105626884 289331671 312730314 690459522 646912120 931064533 422789004 978046255 210825786 632502290 788910978 842120906 972265414 988337345 168445412 943924380 297821470 785630643 640753829 730885861 533352798 880700877 521966465 822627834 764829274 884067300 868605716 885289025 120201072 944628801 640474085 771211425 554537384 810702567 162451560 436668535 493855835 951153679 253181699 294969109 864220694 907045410 757749070 938994908 944241480 964676782 527364201 761518526 185977524 245210922 95039768 334549461 44538053 900050345 842311729 874925035 18275201 494735735 469495904 566398841 496880525 651596023 786729623 837799182 963421329 985141567 522121651 634632978 32303268 662392814 147444808 407256167 142380754 933534319 376606361 704782041 223227688 524427822 684114230 962757000 534166731 563850203 88352043 671268154 368771037 899255621 902949496 905743815 543182807 781755397 528045723 760999401 53783672 576528278 420213507 875013188 755020010 959865755 16977447 899983381 229668077 825304629 277722795 321538813 211394107 821456088 890215061 952388078 127950488 390188664 429641115 499744315 553390369 950086590 35545050 540335245 565163308 903388665 263517939 453777299 457922713 651388767 550790394 924864485 625936145 649716817 590781071 728666036 626236826 960747311 391578077 849392500 646460526 719703770 520988696 785236564 94476120 449898043 820497556 936036951 661465427 981630237 22361669 556828172 749661522 910588771 259592449 907571067 915308407 990451945 686622444 785414886 551357280 944378542 937485984 941520737 640071133 810660650 598337976 914010389 378101601 427230208 852640198 869355620 765005685 909726662 132777150 682705292 375205717 779047261 450917962 672941908 999178292 999279026 686466527 740520812 852931530 900119835 183796266 337004158 624157544 758414191 140066943 199224000 673876417 988923589 8273796 918156081 857668876 980164360 656334189 966723084 480331505 818868403 730244524 824307959 815609882 921431878 918744204 993986985 674315585 674866685 745349314 868940218 217975617 363493824 895730259 976013576 56425442 876525553 26478344 152839375 373168081 792912889 135288176 385951629 618124660 964292619 898634857 997567570 887690634 948081556 433165745 489775752 564460550 938179211 252459146 946049698 355007789 814168134 823779193 836257654 837465793 918342920 966850298 992560627 428183142 808500893 886416246 987608483 39777804 768137363 180672573 882384786 399450766 672450209 993735405 999958979 818914005 960970205 214458537 336216938 451519663 753725892 935424904 952984145 975961434 987486658 13835931 405149332 776500333 899120524 896957991 976354827 879267351 956278124 70285319 235860898 862343786 915866888 218953346 619943859 579964202 910563239 62973396 907360494 334042626 570177651 60024523 839707568 748741578 815833685 953349411 990207258 687539979 999272863 593980884 618252955 679728805 888296368 497458511 887430914 43609458 946121674 267805164 340118429 478726906 999790943 52139415 332560267 363347854 827817848 316910510 853696345 361111108 394152879 71598439 126861992 95313810 352971981 871696572 938256819 970062683 980681163 288194842 828955111 294446323 298893849 444671204 535602062 41912952 269814975 333403062 829326761 183994309 569212640 730754746 888033931 624295148 736117909 629400384 778165439 121352583 562540164 344726342 600630679 482220932 842862491 820988014 990269132 977483129 990587574 622046104 911863085 717099874 744074572 958315246 973204366 45772686 868145177 848314024 953334819 779979135 919690443 376215721 929057940 12267609 388340814 69530444 853724201 611966855 791456795 40904879 591358759 950673099 996976236 389965273 805209133 1531197 964699956 916381267 933736086 390453001 850833010 607836636 923400580 375527541 808586818 518822262 771779471 722364072 844594285 822037742 833577764 261645768 561245697 963124833 969092335 737750506 886901901 357658531 782293755 260966571 863460924 944533102 984701709 702484010 835280638 816744010 885113172 149255722 957470906 336191401 409105467 499627414 836151828 484410149 728807453 529944491 772605125 337459302 504776442 315252979 753404928 633262955 960782476 685775641 816747270 381765200 848270949 875970362 909800892 203937274 219745792 943156803 946849788 115826125 151495992 334665133 484525836 86270254 915271023 123167136 453574971 645528143 985076484 748634978 863279012 147059879 847583317 765058066 960902056 441565712 507569521 816764618 828239770 711627632 746586800 87983338 121644197 498228772 916613891 621079001 827894472 765133081 985587904 114526991 855650249 914574453 936251324 713301299 754421928 428670446 595724117 206233947 707721107 969436357 985414893 953687519 984911144 596469734 853153467 342457297 931435094 610955617 736925085 455666367 946697822 704922325 711898163 840658192 886040678 671402740 874560803 370460117 509169686 655194660 905417384 317462697 780417223 635537151 646080490 8397 335631533 529123940 703189873 655063626 726777016 109169081 881427221 917481492 944099879 466289424 881655620 482493126 747330740 811183056 912775190 409684788 925675100 850047058 911878747 750406357 843529826 484675157 591648885 550854845 572502805 782539555 862913968 568197692 721630798 650870009 882414246 260854155 341279270 636824236 753578127 343974743 905994116 398360659 702427484 28794092 621386662 539834604 660150348 493777986 896003014 663007903 909701609 901865735 947601003 938266551 963140515 939974608 995455676 399365965 648039865 638270693 720495993 224009700 499391084 322055597 922852355 188391655 595863925 521818679 606853221 859755897 927081358 709589873 954494161 216492943 859804684 488835169 912058258 475402514 513584835 872848951 938423933 304538681 872751222 433584652 864883728 501943158 655518792 195046040 895104962 662820585 820558504 517419994 989333940 793431471 943017872 33023316 258488550 564194152 714198378 668619172 822513285 327868232 586257134 866853869 929371748 865247919 984006859 117146505 611813640 617784412 666290261 541906253 872613601 512623483 748024325 210404397 217310293 434906379 774705129 460829619 755830282 979105658 984126682 760788139 957723967 662688430 927895838 811901545 966148095 256260313 772653798 786497950 890350773 229272260 618304399 604847725 688393031 438563324 620834045 277380002 779004370 987366506 999060811 384123192 737991376 451423844 589581579 260181053 662332155 922020790 962943829 624497643 788608782 256887884 754627248 909162300 956903819 700696199 765866066 548363070 837103458 983202844 983869552 380521154 586712321 723912489 880005958 132064769 176655448 43748739 855993573 69281777 590881418 543540997 962148833 260750236 431840480 208706628 671411892 975996963 993214158 819702518 969683555 28996183 576422571 993042927 993516534 193508283 923724645 182622881 333799864 775019909 795702888 159561038 935050703 514846660 833542160 183313268 609676047 19729910 185095780 160284439 616186175 59531952 291383521 168661793 479945386 611318417 699235967 743860591 784005715 774899225 935858303 3576470 392913761 591540894 670192342 502034429 986273207 861805473 865581913 677433363 916223192 308487695 444919926 801402416 926819488 628317055 735998758 272765935 827412309 706816744 982107190 157154916 203759500 899951017 937858993 465679411 600239414 932308730 972955836 287447243 363771036 246945339 393479709 124326973 827926997 10270382 369302680 460072976 778934876 708415350 931331990 169337689 329078613 265877260 706197957 351753368 875716316 654135071 761508658 45644249 531316145 610462730 670981522 739123017 752814490 254518780 878626301 493664447 798521210 530187499 853202676 944937786 977117890 658514513 735292897 939049754 971900302 255275871 304509612 949489560 983531935 245463440 665399154 78362742 642713972 148536160 910116790 528323076 728990757 756308822 993830628 616676622 675215434 850399723 984561978 989083315 996990283 755611620 943164740 567257377 936744459 394203060 870432390 440462218 946425119 743335158 909639124 92736446 155195765 780343631 944405472 196885351 858202245 375232468 397253393 881704540 993548103 667057982 913711529 487018322 887592280 73481827 825024480 951828438 997048811 735717398 904165251 127096816 315339617 639628461 871219925 718062886 852067305 814174970 901693814 106750387 983459635 999688623 999910601 21082334 503423240 501700771 505603244 827114438 867143469 531381961 655303436 74096475 471674043 404179840 608299460 450437922 774453836 505335254 847138238 861439903 956426675 170217125 399873296 539741366 806715464 192987282 608143689 675626465 745072961 925754639 973986234 63540024 185637092 233055639 693362784 962553629 995518134 910524314 953696289 139315145 459003547 734087431 954253410 231015134 960516935 555863987 965116145 587607743 789605909 822191805 936249872 31753409 645421734 62590341 388099205 218975779 739188193 196439834 673992825 47006026 909851554 625088722 984956783 43863563 697982581 148980740 576601704 889550419 960961765 565363484 996580013 581370181 666511080 678024952 887900154 408186443 508694493 800347821 890646910 526015671 974940014 282635892 873227571 317952840 825294502 597112623 978528664 612509967 623421298 635250184 744168166 39154567 461085794 362971221 973232675 202330910 627050526 950564025 959207414 797732858 815793966 29169427 306656739 199676665 615589338 436689682 812255546 13393931 541211775 875647990 946240718 783423066 960216342 350382962 714664418 508503339 767746101 905026276 982705710 211922877 778644529 713130625 899554911 818955041 922494492 318315602 704338142 390313444 535846841 417498837 848989224 406304134 594837467 294132560 762353749 522771673 926326605 489620702 970179465 396751069 424326090 559932126 753864346 267953403 947686644 188940946 649387296 128480219 279799419 263313072 484326098 364011826 464853606 942990738 972934313 565265961 716893326 958894763 979019654 608555662 881597391 535532935 588694645 534808435 894093772 108808149 762247524 822256678 851308084 545957431 789717421 541796855 576375739 26286345 806098943 253330424 841095059 83957140 863469397 146952489 379806415 188526510 356384772 224925154 545132968 307248871 392008114 305865162 570086062 901619878 994150314 73401197 992402197 746859167 769177380 38630359 714692173 819478454 920556223 853702818 955435523 178093124 287841029 959063189 963329159 59674110 498664310 557659736 877742284 289315174 372744511 580359361 871044484 491933643 563015250 34713193 556451562 863129001 874264165 835191671 976634038 500819018 664959211 974252721 981404915 70679721 793917431 968300187 977272915 112436687 995737206 571827422 904971990 801249813 946241727 673432259 864988029 302381501 451353479 170702100 755370285 637257287 880736400 553536799 575317302 579569919 821446566 439821771 991554227 117566313 166471445 809552757 923736832 834708027 952752830 64111903 213879095 303123872 711877482 277924058 978395990 403390775 834311870 739491584 891075255 841533210 917134721 863607715 933401167 430345917 517086496 119388460 463965835 938714119 946952575 899206695 909991564 354937604 888374754 773056785 953205988 334650164 797677815 565672762 689628801 686486307 947384226 789667579 999250713 986540813 992675658 874752779 971551038 311485343 336302137 318172591 900442601 24825264 383120344 589320502 835438337 190499542 892815616 597843479 616976021 793162161 993919237 272417006 758080957 487051613 654018572 670152833 983182725 52365464 895603277 739621679 766424105 329924794 488648175 180302321 808625530 354535860 873339675 162062003 787377949 578917514 873551678 434577311 455483962 631323311 968630649 167225676 846064269 121596444 981213009 312380648 415096730 894436859 945091709 306836305 569037860 413240705 488967647 140349013 847784838 994854884 998987613 641914880 924967589 194263845 288286529 995485663 997816560 777183760 970561602 782733044 829528664 315404389 966819732 575033673 717361316 615474518 788306656 735843545 835520866 301579419 656298201 120758161 830008984 290398864 915792584 796761650 886260310 314511566 351708264 614130254 682082375 696147145 939225800 638225048 785037169 243852437 592765615 158823149 373496062 987798390 990393680 291587565 439777769 390641974 561471723 15006776 800050085 899586482 937207325 897060044 971822275 746009851 895570193 341846308 791939600 895652703 946096036 466274615 807609029 601422718 900087681 276016129 945268136 279158305 909383110 21074315 754808610 335615445 994491778 81503467 141410258 234710523 431155417 333245505 892735545 97536437 314552262 284573475 464035824 518609226 601795317 166736195 767265196 342964310 507667159 753225407 976703393 945318663 951275560 473253921 860512137 591310282 599935430 500094364 525924040 233788903 931392334 20187495 901477264 804579940 847411983 96717177 771749588 224421882 939416159 246419871 468213756 695122804 768816391 570932280 883994399 428173602 933193409 480443680 836004260 173013454 821022030 786083303 862260756 606662350 948879688 840861343 948118196 464504485 770022270 153719554 703957655 109052404 267989202 438215592 841836252 145561138 510548514 889069892 933860281 165821416 485463801 370251752 514975551 736762226 792742165 604067631 641927869 987487728 999617361 397740759 696160564 747250732 786942801 72964450 427417082 423214049 728923852 699671178 985424932 848971342 996211332 487352769 857421894 547213968 764264378 275988524 938239462 431819860 835224392 892694137 894833756 954112289 996251386 526494575 924329468 252073111 918310911 315782784 486487864 635615129 975048721 94485870 830753323 936843177 964775752 136496164 593876814 120308294 902272361 205490025 568071282 53158701 719601881 987243816 987766583 948299415 969119422 433746135 796748531 969746544 991002474 862210459 917546393 208378860 727655848 151469767 385610362 139449813 354812009 194394036 705424672 627490462 739242326 21775839 256746524 939859099 993948325 399495162 912294140 172645748 360717863 612367951 757703341 965118262 981479470 609018963 659433418 329079489 852385212 272129134 740457461 89707111 547532242 567156652 862118625 614096227 708619031 864132440 892391560 698853815 728527719 34269792 939953590 684529126 697182162 829680433 858855273 798781190 946073986 448009996 621904617 834038267 984077563 683437583 740678625 42320298 855637439 409245520 695421267 428940583 993016958 795937315 860030298 274660764 599621480 521018507 791523856 445545109 873392939 670325278 789516681 95667159 783602022 433980825 625928489 826701723 878221550 771454681 788760837 569433290 869209048 209687033 595768906 6629922 253187533 635066153 672910735 690336887 693089952 278790213 534547186 844170582 925593147 801267268 965951963 635230103 826178319 80739408 555379032 620451634 773333348 322663868 970686433 392778748 687943737 786571046 931504372 492780735 798884811 436912271 944925880 585627902 617662360 547594290 663477118 320169152 770878238 771312501 885805127 88991009 977614852 351087314 694051837 461049638 854873059 691171146 861170456 675199923 812259320 69783681 87377410 344349031 987743118 100511971 912519181 473352330 873230169 254328355 481161093 451605271 776438463 176595564 325603138 619129664 921158455 727317793 878789693 971634780 997261675 157734086 425147558 881561165 925731411 93296717 871914184 651495661 652396644 500987785 815603999 563025065 570445832 956027350 996803564 674649920 869990638 601642217 863601886 809281466 936112638 79592424 303946021 639660734 697857656 310574122 835546176 429423280 628954032 282548804 512158956 930059960 981085360 236873850 394067304 323458464 874576495 317613702 384857191 5178738 731459533 164687701 919177229 691101776 825476413 233849619 368867838 6629873 184914278 826842076 968516392 763646158 833036329 674303027 796972160 96607796 425430964 382860543 717003041 700255475 910858534 717267703 776054846 700471848 909469645 27652527 531844826 160266747 193017092 783045002 917353196 805180519 922218857 341850887 368869570 869950701 930273151 173991142 211866687 751093169 776765080 552371274 849371716 100370602 895172618 635111867 700978009 728480640 886476273 447226954 687831533 247165539 983799560 464385773 880902220 828708364 928133358 650844609 782514612 596252319 716310677 53090901 461698646 488899381 704632157 460938753 821080875 587420596 643899109 350350841 391595246 946636104 989174970 254220048 456980910 704478380 988768186 95038802 976796690 391507838 900405679 524673758 904146040 704280595 974966122 238040192 364022420 664581152 885897675 497161001 990992202 765072563 830105943 537122335 810260242 179759719 671005418 823247558 883809514 114192567 956361937 401357251 837078182 845406181 868721972 979845023 994489482 371343630 834946471 306139985 807314165 795722786 982536517 901755608 998936380 121105471 963814183 962998981 979301247 947370957 966562902 454270560 968138123 846830489 869251299 360017359 498782405 624019653 882337316 355306028 360422397 119774642 746634557 239823931 621061345 777591499 985594423 260835810 883309928 383366796 461506624 642788566 674838431 356367579 793689663 521052121 569511892 663166876 673673304 406903684 631294523 958031119 987912759 620201129 765160846 518794384 681806482 813918539 960563732 552765713 623303643 162926401 446466127 873798526 885260863 91627747 303707554 850140801 910660213 896070717 986848410 860707469 968022872 433429072 883672775 707839408 963740963 804778673 993624997 768875027 782229043 59888986 389182855 309835087 373967276 983751197 994489275 381501445 821487558 697300698 930891110 335848993 490371780 695728286 943295890 140961642 444722727 542422283 623356569 551154016 573366890 359781909 748305870 954287655 978222439 236669755 387855385 33275313 505120047 441635609 832845436 241661515 711698292 800492064 897846863 631547334 994023955 206951563 438054151 641858332 988018622 305523594 808650032 843081970 968753298 554911838 682911595 585204546 771837134 924979820 926251959 909676803 928221516 481316793 888145927 708321425 852261180 896873124 951080597 167600214 784231517 342018611 635307507 239653249 302827760 275241179 336338810 779319962 845377287 353743159 782418390 944072806 980780107 476383671 565012154 13345584 579859152 116528958 772401500 213060678 323114544 546470764 659716955 910188430 943946584 142285574 979587883 570182148 699321005 413206875 887813650 859237358 878799966 713829438 921845817 980818872 993487752 679727028 882893115 888089576 917696993 764605362 790104388 565452482 687686213 276982876 674415539 105198693 324969670 566826199 863227640 637980491 869895893 948390081 951453444 611983305 880422447 378958200 719717545 348585403 835000892 601987925 969224232 351563954 352359422 519605637 985660845 322130939 592609805 421193180 962315661 154177992 283914076 500991167 938462529 482675692 818414542 788830273 918103412 741284773 772348427 641918672 847821455 321971590 636126976 539289192 819713845 582113418 916084494 685086384 887030712 87009861 864293089 775387808 834426959 528300962 600218452 290901041 943489602 302847178 930401480 792127971 991013353 996837939 999887265 963144263 988089406 435944020 861098925 948146452 991410289 684575373 811186905 520787543 628275080 57020941 391356416 154582875 356564758 745104030 812584606 414105451 504235564 242337735 463558631 656936271 679245751 357350202 462289167 620973202 899975988 67669475 641042217 176851932 258526371 69098827 572485193 667918694 734235516 221997157 243171276 596250818 703015598 406531613 502015374 82097667 360649809 533162701 986206986 47294242 973571697 133299694 448039155 848520859 852400875 612479644 675402054 547579486 615216746 216112047 957941284 551463978 723136734 994341709 998818661 609131125 931108603 548232558 689428949 764043405 874727673 917636986 980950934 989436546 993956107 935450955 972121430 266015282 983841067 955134120 960833508 846851568 882319088 716429930 953083060 380028228 535839900 297620856 495904110 227553716 951745155 794867667 895053856 782756053 990386287 246560419 260027434 306799375 663568624 550909654 936303807 588337434 923875415 971782605 979418809 62626601 352045705 690018671 801033804 595470505 964843428 708840226 981046833 368971439 853470901 876154177 888095195 66432921 502873593 637532503 895535563 2030414 824268071 318111184 974995747 477396851 823622296 259518425 497676726 960203742 972619249 116982133 618324254 247333089 456898142 409964291 657380937 11534675 850229132 543616001 601077202 548685289 569145985 747622027 829424100 727986242 783538095 679532053 807793023 213010938 999175778 478499540 506758735 974177091 988949973 271229599 749384358 427458606 756128621 86472227 414574520 807960686 844609762 200773378 406994338 917853643 920248195 921485152 925124157 412769053 785863079 673287541 832085880 239346352 510975276 108263504 529018092 484723944 625971537 808891010 931922825 276101585 671200641 697891074 888010716 376244175 857903404 590144739 957429180 180447838 355777413 876265253 989016067 104562553 472947687 856560323 993365591 209467524 254919270 119397537 529722965 778071384 910499456 613646235 989374379 407068926 619496999 558147250 785023480 8870800 556991327 619792609 753589545 384695634 422644024 560049873 670548293 19220877 388378870 777686787 843320231 607780222 850724955 426063246 794607554 85653770 806377595 83971437 298728641 44593373 248810390 464663747 995831113 663219494 958759560 142614710 900654933 762398925 947136187 338202935 831363719 475159574 505168974 432139266 946384282 982140553 994499070 626411608 877065109 991032097 995270000 685758202 968589011 902084041 996085208 582075377 618222016 623411897 750163789 533644944 814124485 166510658 686195163 76504327 172323246 354530094 485089490 255793422 820640899 273532221 337532631 103322518 205263740 231708108 470503832 694872732 824370647 762705155 763406982 30286770 75971329 339378317 656918385 505963732 854139303 518882182 999101772 731803882 902895934 89617717 946519694 11637367 67929354 113636591 613318419 11106443 831025846 72237923 846417374 841368339 939220986 317517323 318480461 126264320 903821918 87104107 852636383 813638391 994423375 146420010 437506514 45254405 132203163 377389844 735878036 330565914 942781299 30280241 561286748 209160378 335645328 602412850 867142519 649225751 911262612 26913174 610986342 62114729 448937511 502898429 734781789 856687584 925614021 631397976 870702720 189171970 221006840 353206653 812570728 95416979 226754934 768184377 884768463 668060251 781551361 44495895 969269651 585966184 676812162 837248780 975112770 314402125 376578687 296413245 981555414 903298649 920675785 11568336 549891291 830748066 924201703 538957234 706917112 199606892 237501809 653780710 932154622 893228558 959338071 468124410 688950828 339948447 400997981 357874333 955750288 393992079 595880446 235720068 501034216 675406376 929633714 463289905 603609528 853700088 929641208 283169918 546383185 761593410 800128516 855029427 937254795 439335392 796684868 637564990 783365387 299892624 615799201 932965962 936832847 193145557 941951315 297036832 737056448 140354328 664315685 851726675 973438417 980283401 981741378 89117029 150623001 803326582 871788612 410500673 764208036 200150083 514077380 980757061 989489449 362575130 828049964 469448129 963935246 845278148 945506602 970799747 977005478 942535360 942547995 694568758 847037787 663026421 920025587 14920776 772247699 905559734 933023925 765478446 885881072 460488670 948391985 729404630 955459615 125449793 376844997 744788161 899845315 630817158 939587822 724603833 827350012 633769503 747089857 608029326 719657639 311151203 707800726 383363199 555456039 538753985 962272450 411310452 943067950 169075142 226014728 899958143 998204040 654680764 831814479 761397355 828142372 205325143 687354430 282679430 551315270 114767937 223675271 994427311 996853245 205938788 294278355 804542710 875048217 413933024 692140157 196531097 890643596 36379864 293931195 414775850 746269457 997729689 997825144 657535272 877789748 982381323 983459724 283580662 745134210 435251579 620650118 902952585 933713066 861030080 984516025 335048087 402298467 659727717 692616244 343866363 592979210 827058425 882600789 761831392 882074620 528273476 954684506 926100336 973677782 113399813 122611956 528663562 949481261 649474922 740374344 385836517 974526079 939200723 960430506 6363767 751827743 122650073 871485271 220008923 979870913 494204107 638554372 278944342 818403117 852612944 908412334 126582316 871810420 178938115 841196838 801239884 898576278 716622735 724871012 81187590 610501051 239804699 820649734 89045582 283054666 865637122 929552842 852313850 890456440 356127963 956079968 515483662 752422946 876637362 980758917 412879091 506617665 75343027 785112009 515050718 868455792 988419790 994451940 717863355 939974207 159157970 932257340 62050459 584465333 914164244 984764550 211638091 957284560 399615979 705577718 935813954 945805640 434360018 740158006 947860050 965292735 803859636 843251554 771617944 892911980 37882833 580580911 944792945 958216517 858348101 911678997 224388355 782140596 62938221 723616070 890658397 931546325 164643166 274924938 935704798 985936606 505864247 671943236 573382430 894395041 241206630 459539031 469274023 746435694 377636374 451701042 667137146 967428881 92086963 747819377 816874128 946010705 674681618 847862678 678308998 863885653 409158381 706201194 644998408 715138294 14062321 422792864 933816394 986209112 393446282 798255881 81857745 901968221 107202467 220952234 969012872 985809389 222158196 977720393 79544779 211163966 703672609 768972285 732621447 984713877 114845602 807054203 200589991 871419807 464856398 903972840 200301518 315670009 972413431 988111925 90335537 741488677 868579738 991399170 189279903 661412432 13325982 722170187 91401787 398891681 71145466 823178723 978431969 994123959 779720887 789283442 55750512 837743642 676983323 677807161 207147364 913764627 324733919 862391150 96283525 980810769 570385954 694970993 255146031 825528311 180390708 671384580 579779430 944515705 72619682 451502150 152092642 415818372 586700703 871474986 253863856 748428379 729070095 828455325 151521607 229309350 758146307 824165267 905258660 930322020 937558068 973341237 397118193 789665318 591137561 802493088 930153565 958812754 699030538 940476218 787644014 921022632 339684079 446130809 700484542 914288901 976949560 981181403 898435412 980201930 669126969 933826425 16849912 75576000 916135588 943320264 60134800 601572107 321579327 812448486 606032488 678348498 33551897 911169838 175026557 711740342 179819900 469621725 640307469 990278146 519681221 846076959 425576613 780167955 515256770 827836053 421960044 795428635 410723530 820629417 708707084 794577678 819360894 906234822 51488615 392099100 900259114 960437852 372420830 447099551 48083211 173499072 823308456 889872390 253481758 467120104 799998630 877527763 892576425 909922761 592001431 904275042 785748788 906168625 315023502 443625646 565156989 916647385 467127505 721330517 98475751 829384386 705041312 870261833 162068395 411770157 780444283 903508048 881031113 972530297 678599161 836349549 569671375 706224621 871337 905145168 484448607 708025796 931254 691330390 30484687 805551764 153213475 743617438 636041619 746099324 344372730 386668644 690887404 999944146 228699109 345568046 367219044 998601134 564215681 682829313 215884094 884657385 484038675 613033749 616903727 900648360 998659873 999635813 561817702 651867708 437513180 540178673 492617657 740162391 36113431 161644938 815801896 883620287 629266740 656520380 370023015 437946972 219593231 949690236 490370615 889847813 873701211 881956085 766227732 898247827 393288731 879337746 114574609 913699566 651456243 893265135 385658317 522078560 120896666 481214471 996062237 997310345 475241942 830565334 608036641 872563125 855669141 906493581 29357926 514932137 649668829 702527571 19656357 708561228 946961950 980299027 18444442 655719805 945825676 946402566 248118372 997321149 300002086 938793558 356299926 747310925 434508432 860251672 103938355 120182843 497282228 946691885 83592129 610180806 646437930 735991894 512847103 929111631 11819513 691919165 82419236 489819390 700639138 918386261 699957999 784661109 74016907 463611318 250756005 983452296 747737248 754846142 322621189 489082983 654314802 775637819 180786127 993371008 579121679 618795020 821990831 870518306 597527806 961722504 355950797 382219213 67567478 900066913 854316139 875784403 611267676 851027108 238223659 573521129 372727568 962818008 54633623 120933334 856281796 976211597 54808407 486251848 264768221 330998683 473713450 529325049 735336052 956617935 168070606 320172489 729529806 911765277 444835498 650750689 446178920 564343214 363541709 682520968 529319817 764027841 52899430 143941054 882692083 908992321 62104975 876214828 490292461 776951293 867091535 970682239 427326808 827017696 708251353 909215735 731747653 759304070 898957847 984562138 153877289 947014724 13087038 74971387 714885191 811338954 669950784 977362870 504737205 509631286 836027319 984577192 698478220 713992851 71814452 374551352 694691150 944458585 490317680 649722580 706745365 824614640 747673964 834517109 249559827 670108445 849231836 951955082 617048907 631310160 144785006 608804530 885428270 953811949 142190410 898358032 200745141 665139480 228066649 726407799 42345651 771078805 12970298 703512113 58226516 419695084 467493515 545552936 859764827 919184965 56384735 789789963 568366956 570513552 583158376 601564200 393568042 655428503 632299744 644414469 775107092 910294818 767456864 976064841 331520050 432853407 815253823 924972198 109699835 781843781 651389690 902637160 598366436 809226877 187778593 376600655 774014152 837953487 418970902 573028147 201228020 352906474 386659487 757894042 79168272 124209864 357193656 611638249 211186285 873187755 34085074 584720316 454580197 734321037 710264517 971938063 398601972 623033680 669010190 927407757 854239005 968756932 2068730 29532491 229834044 799351903 397040731 700622378 52020425 685983801 472868162 757821679 623076096 994544838 494206973 650916843 142177574 242809614 765028853 930082600 836962705 996171776 272679111 723973443 300771735 497649033 248153413 395649068 302847500 659989345 524556501 844916418 672465957 884204111 70804881 227028223 193706371 319257153 111204409 437181923 95318899 546070436 834571030 918330577 361992583 777523282 894194795 976649165 324769371 469418960 647250828 728712538 336298001 699410019 701347778 951472060 932333337 996886248 589309577 633900168 376597348 969023917 956144474 984591383 625277609 892422778 712482101 961149553 581063992 781777339 334048151 901682360 787203372 832062159 50690780 462641572 172169536 987557608 120617903 655926923 694301203 826784489 807269957 807898666 945271690 971201946 893358374 919677643 142468296 339832002 676253184 930044778 25599034 239054479 735653026 803738427 8108877 160924854 313758890 950067752 833939308 936608070 653635062 808844641 739919325 748266838 100739508 127988825 54988218 326959535 365230078 779645355 564111245 675625242 782640442 842726069 633733922 679346289 101847087 423914916 871452644 990623007 415843457 444287621 63610736 434133809 850465851 923699640 360717305 929592309 505969210 739985424 599121255 819588535 274762922 498273281 881981678 974810542 882150645 920612822 977640242 992399734 363706929 580518283 352835640 441186457 900089836 991996183 316341661 685084989 990601157 994800523 161286288 217139498 264264151 481109771 19070197 675512728 328468919 910838584 254380587 533112842 821015825 912434415 4365876 87367282 346404316 890233314 677768910 925420415 220031772 607590439 259545693 619459681 73367522 472767100 233762392 800256398 413394175 772058868 914603722 923462104 762870219 877073864 665579163 790906933 793974942 970131148 460282223 681906675 985269479 991490605 5127303 43187960 480745457 915207368 495839167 549943405 522253622 711492817 580134394 634983073 106195038 786520214 628017805 974336599 268106978 473895227 719890058 940973743 399090390 810551618 5321694 198778914 708475637 780740529 713190041 827695044 922120361 996337096 111700356 957288042 18474634 488747086 659087588 732653158 462079670 816249060 532732360 709392714 839338778 884150962 431025866 895262983 132231 114641729 674962212 970355113 262194176 881308317 435895303 735650602 358767626 624711894 22677544 285505039 530948511 815737655 697816064 858149852 347414507 792254686 109136990 704823698 354806165 517895770 390951406 651353038 833255327 943720887 57228240 77763037 901931480 927778874 735955532 875844055 24262833 414509771 791126489 833157788 712356737 959747229 368253949 504291645 89476393 92316514 555569183 673371871 954568071 986584138 134192362 255210759 46843592 62601145 613781332 966971724 660934332 742270743 326979553 644888490 43209615 220527902 557508776 853643122 312612221 453752195 410970881 919030156 949262868 990137775 713312278 853789860 815348464 877565597 912333725 944129658 608129496 788217641 554278012 700335519 560879583 817278269 288016828 453762029 76168748 918308706 197675714 632201104 29883882 319879394 907105009 982369862 375886859 644573089 740529185 947354004 681124803 736410176 831416961 947261766 179941198 743470901 189060457 823986563 240402120 926064539 555309956 970255899 347250819 579974242 706648791 980442757 882442041 889590464 380033596 440932820 285456205 722655281 616749476 815697280 129033573 645030447 459982684 554785475 224292023 741979534 859934854 981904660 99985108 579574790 686627573 748750560 289977067 498276698 310495602 351420674 888804694 938479966 695039741 924302901 710061501 743289807 924881044 964182429 761950020 986609470 504271755 856048267 526236426 748174156 89026259 929711408 740670686 748119909 388549169 737277409 831622329 876463538 296444917 332888569 442324998 864253279 362286947 547689739 471080950 505241953 881148541 962433793 870011015 914796254 611995083 945857740 488011673 853955811 399639134 813591886 507732107 752197749 285342394 707946861 336317871 410126854 51429195 147788633 181886970 207485415 532812392 638599612 677568736 684535185 946265162 966754902 915294734 970713125 788992409 920770904 584907333 802252279 879213014 979094033 717578421 883325041 235609735 594374318 833594407 864428745 422405888 720858160 272557184 455141332 797324805 976771823 349842079 360368287 835228406 901586093 604694804 703214777 872169178 873782237 373859997 826349903 528184624 999645836 98641568 992657238 952789352 959595263 573435403 594558361 735983775 945527265 411577942 872949797 941256134 984477749 376510347 982156411 385218561 552803004 545972372 679508750 273860304 850208763 407176953 643783850 34860848 579601197 733728463 940915895 600924242 869161055 361989400 519595499 99022656 670470566 108510586 646396842 583511522 747043244 635464457 886647243 906194683 918588305 747769169 766003810 608851604 826713922 280526936 801896374 808173453 873193098 699770031 884021743 556246720 574536990 188817153 424138413 352913858 798161876 722324848 965886132 907510704 978144302 273185340 689877454 107787284 569719853 385026548 613135891 958336069 983996754 325176756 572390829 55772189 733112629 165466964 998662106 835122059 939812373 103872237 919470538 65489027 653850821 832134362 879052280 54503994 476865136 904903978 929170221 366775846 672647472 324068743 696386118 779995845 948459866 168830261 725150086 429416211 442660155 322297878 414634348 675324537 835520526 969099440 977841046 778847698 980310332 773816502 937963639 518737388 698701316 768561421 923167901 508784156 691250788 108794906 312057135 738162610 751943331 22147055 124975691 407758574 902067448 102128383 206916236 179047206 529822750 853157379 855587744 358776671 652816323 160304511 338582071 795122796 836298285 838448226 894682893 189596646 221034569 661479429 722264782 589370804 590185407 493404989 735253854 338142523 839084585 998650358 999044487 64924811 966739927 72018542 540611696 782864294 893448223 215510924 572911233 7728471 513577635 440112609 824200878 912819575 991010429 324429303 532416729 360677500 419932246 412061659 539019716 275930041 630405222 942006728 988722503 131314104 488442340 977687416 991386424 829834556 843489160 365645750 376982352 441965959 852667115 146489977 781035993 566709693 962421816 883564538 951510307 354459533 715053022 768211343 818468659 998503087 998788192 835186578 873933377 214353807 878152896 963434425 980281722 439693541 794927246 958590854 990236184 593384967 978065075 850739891 905616424 208538822 778443139 551850508 897305087 633107568 844436304 989978386 992486778 65369790 161497498 763117717 843001516 601499353 619186553 780031575 824748859 636655074 805180557 10302029 905283956 309098732 415612386 548097321 747053802 804626757 834042592 22486968 50270048 464876724 991360494 15724837 348334009 344626734 780616499 199877712 630003715 804171893 917044792 60643294 565398149 358917044 952866526 64563041 648682132 767503717 826366129 454155827 786598176 979682590 997665969 550351983 687853855 323191972 738009360 236923454 582897111 255460933 489327042 73224471 443670691 32051132 802346676 850072125 897493460 48841134 273329898 525306477 932155027 855988524 880710749 872679262 972526727 320813810 769306372 656026481 873558010 725814320 965110363 511407914 526574337 233117972 748451568 416950957 505295300 851426661 953118629 277766212 461669869 226390059 949268740 564151280 902705770 978810308 983294331 747006268 944499516 615254816 809419729 240984357 946024862 642356740 921398852 502619046 699097823 667686668 926880000 103757797 614909021 503402118 806627965 426860451 666756719 629308932 883520182 718852719 944161058 804606842 903567915 920924310 926304695 389653838 519081167 905676322 909576653 626931762 759430308 79566894 905036636 693021045 829668648 552686974 555189871 269291112 852995608 277179010 813115393 968682615 983315495 880103090 992696102 98023278 762587694 206579337 751888086 515020991 517294770 655965299 912224906 522982372 673901658 969583475 970362915 108322189 741697558 909472611 938502736 23869254 541532905 714769236 832503300 340584301 839604001 681016579 819714902 340010665 577563338 12756362 531424151 803484105 965786820 10735213 108100871 403483 377868265 151631572 259133252 980839193 981943767 683756815 777422453 905712510 960145857 649460629 878475835 418476152 838306583 989526468 994110309 213110902 364181461 320286062 631703256 332323368 876272275 204488256 736317740 960219326 966030981 159293658 278057048 813472825 996152907 869706183 950838895 841998635 952125175 124411866 429742407 203160614 566140390 895616774 962811567 913792714 922278455 984176365 986903132 903333093 959782280 7144114 684823577 143562580 167043618 306340761 991126307 743307180 880882580 265412989 455950880 801420723 921411665 756553499 800961348 817661790 892155134 728859706 916622715 507420198 524492595 345799801 752792841 955989804 998287159 159856042 306259227 975941730 990855650 440112562 963609693 183393902 240712608 306379285 704547955 658153979 659712723 395045518 925453436 447491414 887888003 452155272 985583178 853118481 942457785 995061900 999538143 717127767 734638539 813465095 876162263 273251710 410347411 193840964 347615053 789060374 812818186 821803170 858498027 269417818 690470293 766804039 837353907 584572304 877414877 444911270 516241088 729273943 863555629 956967943 976302049 121282759 474488977 350745495 756031448 158859247 673577096 425187917 836656364 285191592 847041236 184148572 724759982 798166586 847748640 973316879 978036324 974212407 989226561 400483136 824264661 873090737 967727544 880573888 945432806 876885611 970265565 803497982 829042213 335009795 551581794 456304333 781484259 536841333 685544983 417708464 488340753 507026767 736547017 924678319 967009557 248670931 343077288 268811761 682133124 961650752 994396276 571908666 900101137 8292905 464678205 67371853 68677919 919182081 949450417 910661731 912069413 124929958 152672882 485824374 629064766 85620416 408163049 91104912 871822341 12929462 311948046 948257709 986859302 976017822 992435416 486604437 886787471 159649579 605801177 281171092 971217976 366928450 755485960 1734192 58400830 372553937 585121403 344386899 447129278 84361645 133319503 261379209 911660360 800396962 960059386 601479689 919354729 803478320 932308011 464815842 592542353 281993363 374450534 798521882 928785012 840396666 989820615 445712354 730366569 540157202 626762512 87606311 981973250 914525166 989314817 780768086 934788741 443556450 818134330 25036917 732878637 867590594 883149941 526842143 716118564 771994406 949971272 323653398 695446269 488912361 747221070 126216093 144550371 619979651 998363643 201327453 894637358 978707173 984190663 193503069 929883145 625385832 865076140 71928016 509778014 982801263 985949214 373206425 479398287 607153303 855432114 479300157 880488477 902989876 946168138 332230862 841247079 471392153 739936104 369238733 907806139 426708111 526442064 48291736 57325842 560538812 897603345 44198450 712029777 83099974 377766119 325593001 704891476 197830318 618650852 824776749 988253418 840822467 999027001 844551955 988951910 369335443 845657553 908973916 990879448 51356506 266579013 241613327 878287000 944007526 990983835 382434122 608934296 486579347 663843328 268462293 889429147 120705241 778194791 149284524 991241421 896364854 934261931 562849307 960009900 981837414 998921383 98829982 999045550 980282121 991820099 920423719 957022841 162045670 378014976 880571666 948947068 999823716 999872814 757909245 799684882 988260980 988391584 814682381 885084827 465009401 774812809 47522127 449599696 289208357 364769463 717869165 831566214 250463159 800271820 280800431 960593153 328820799 687620251 643147157 839479879 629105329 691384545 940470141 950209508 615820843 809775788 300978431 433154924 199964777 743958797 45129667 357620461 226892163 882440594 395732432 702358536 156013408 369485268 544950701 946421921 313770746 832314172 887363663 939450916 560330747 748512281 100319734 529388523 9396653 256164805 621636288 869116519 293092944 833118472 504698820 790387967 584636889 751336552 589722324 943900652 226529299 337882866 497446131 513361494 798123565 849239949 78343450 479243368 790563606 866037927 705427014 953554999 51459141 962156364 820990480 919163787 838426358 880084976 28302527 370448122 241936269 829096668 818200752 902012797 254230636 711766054 688601860 708106364 45449543 159990973 701346771 765730966 202630551 399224083 576080789 973051916 489259518 690894080 189707474 949111046 994601759 995362432 514768493 664003077 642720949 780121406 112886344 131672995 109335126 818083162 417618099 801233061 650552630 716198262 760703407 770263860 840052863 886879264 728196223 998199374 465724037 545093009 51476005 673305623 193722509 843028236 146115699 218335368 732396130 838008114 722317395 883369562 716709096 807442889 943665144 995761149 947064398 982931039 770824253 875066131 492245077 834873718 771066524 904086164 242556949 882225981 47818090 538305571 442137273 671215173 104191621 700857048 199164475 526172349 59404446 208738866 247899877 909795206 24301276 639839414 328771542 959156366 951727700 959099196 760440348 790786083 233036106 375177287 461935802 796769210 570573001 840181224 338522575 904957474 454969462 978350976 974515168 978892596 221782634 662167396 307582879 642032447 42216741 298643454 793666141 990005269 368299976 451416487 868760791 907241306 976644934 980678546 318174180 663977775 466950860 677835454 517643042 524540523 676967314 860062303 42031948 682917675 352810321 660418256 466241110 647284946 340494431 918313493 635270594 728076516 486927111 959174078 720697452 758966091 627233223 708892252 633165585 903193934 250604844 736919115 997337087 998314791 709804746 935225357 1112450 273659555 410678822 549999272 585835711 671934349 665018915 960198250 370619341 837529118 84351264 940870962 65336901 625294955 964701284 989154939 787726182 899947184 172489896 958205464 129466344 980305495 629767797 645279192 653176077 817146062 161786642 695822099 297746657 521365742 539714118 797990232 938573778 969889116 356746207 446965496 856567164 887973928 960604584 962099847 945912556 971018668 671891219 861243085 218578205 359214751 257814091 912431722 672819607 791607055 327795909 559879802 381732060 916666072 606358844 642944965 127370343 833622727 582189231 720856548 802536173 865924832 117559135 783083451 534878902 974781988 712900825 850600053 386763008 628385894 789458245 903822148 837761174 971585990 395946723 656640937 171660974 382859441 25428795 129000673 67116138 839054933 170537174 756183543 610052769 785329585 874937004 920435878 469965232 494312891 660560430 707845783 917105672 993127772 79919835 601274933 702998115 786656017 94070948 633141405 988260148 990591570 478659728 649211362 118155239 546856255 429709721 757097402 145448937 531278794 737668274 860558439 730521900 941910160 931258540 933272963 528698839 631931506 881318866 886490915 198596990 532662704 845800204 980706494 538824117 611940252 943091996 979013114 330494927 998622039 786953776 892869984 940747015 956441887 21566619 49697536 758886650 946981647 192934353 206646851 848081753 866588413 33459126 797023212 654143988 746996186 876338252 999603560 908971595 913123667 895468234 938622891 719662481 940172927 505723911 780521678 440456602 684121386 950374049 983478804 369961232 794538939 237040336 532055988 725009311 831562960 158327706 997395051 737893566 994101331 429958999 507966249 624969866 854683817 218120363 828993721 682536241 787118917 221897982 484892121 224050273 795134974 912341187 964235012 326505698 503669781 90502611 602229808 470397662 680739023 243127344 345071564 590607448 974698953 427968267 979794060 442943161 468481906 915093861 953726987 720720465 861567387 390041775 726916865 719377306 826462478 955004420 975501371 658950302 776831051 440533021 981315053 287883917 925454445 857769876 902385364 431870637 455984396 461303444 788618356 89830935 558610411 322756699 765082538 954414243 975718127 781762876 994510542 276253588 721298313 173007947 691399236 730778848 962722791 474961237 492273659 596760328 914813681 86789813 443499173 595839235 890075297 86531121 842439322 467290154 602026602 518216053 958744870 544995070 887827450 425057252 711319910 174319384 457969056 446918176 888177195 633621372 812649903 906767192 940267332 194982072 502178112 453951459 640476718 517626068 570947115 809148599 961210818 878173890 918367099 214730430 237312522 533871391 619869367 840416109 909412793 875093358 950707940 409740406 655276209 955190350 967645412 421877591 475430621 887088521 946876337 888053783 897935281 943481886 970987822 219923620 880981437 875613971 914705562 333302960 428855450 562556541 675168804 101146451 288569920 906443189 926652853 942762539 987280922 766627699 856007284 927525752 954517520 375912814 468984298 228242002 723262474 294120581 902122606 455131676 732660746 315452048 661887120 212998743 674169122 431790553 811116304 43773839 795199221 917898694 933371530 751215008 991713011 101715079 533374869 676530654 817608159 669658282 919023833 683083154 916320305 230863516 816438251 456580160 908189240 264409688 899313174 487722392 802520528 850137897 925302111 951892014 983077410 96515736 991134519 553529263 973996971 35501481 679324610 718720752 737102062 113158033 416595516 307905153 418726367 335466780 504143590 25279691 395014704 841831299 877190816 448186232 589627704 75312924 457210200 43421351 114033716 829169267 855442215 816099304 969471233 841223767 993921285 133698708 196327950 430300526 732279013 302267418 860525703 682163384 719210308 126573029 804151427 752915847 993171931 511914891 637486577 36093586 381103267 901873286 951358040 610726721 805134660 667240992 983275728 107450643 207370596 100544928 978709013 427127312 597117163 631702917 814189837 655085846 658481797 760701844 954289804 253144761 482082676 659241920 704176768 304817266 776417793 462653493 786163023 519789489 842998319 451103728 608452509 623939119 734869090 850143558 971143410 797101011 832101504 465403502 652071168 621393338 683367258 332067147 923041743 222210 505488260 796281833 845432569 538043681 733054329 807382823 918270754 243369637 567592775 272010971 831948231 345287402 511461955 351859686 762272621 340463220 474265988 430648645 843263069 334707836 654789861 214344564 683043718 689053338 851300796 917055223 981843823 840028127 908311767 192195130 413161772 691041509 945405280 829796141 881550159 121278957 410709564 697911383 730798106 480283631 881213683 169530790 966785112 632041013 717456636 420468527 705527547 766186149 972662674 39985943 990530497 137786898 193535267 401517136 728499724 523359644 857984745 691062266 902491884 417886768 531815066 704910478 748924160 385846896 868720826 25874660 317676296 63996710 705469233 702802239 805921300 270890541 705601531 578307933 653276409 488872577 991840946 979949543 992715337 846159391 940913101 616026283 839774588 971529627 980461625 650383055 831151448 494210635 532681626 112390587 942175639 757702157 814078634 423623108 796632231 173272398 574647798 676406414 804594336 781093002 942956651 917131725 967457603 678491338 967392785 144320101 413931595 113247170 440997455 276592507 778993154 120331669 622458880 906824276 943347103 895861642 901386670 695517492 960348691 921501230 933135163 690934336 799893872 214690739 527580014 584881910 901641430 295602030 376645218 348877866 820382531 193223800 345866657 952947886 981908035 975866424 997137749 477102693 710031665 444769539 505048022 951248287 965292581 3161943 480772158 820251749 991553113 416337112 656114825 78574179 807904085 178635593 200577835 289413033 416258856 834437948 904751725 262544891 774173243 891215924 927414974 430984948 510536101 942579715 945457411 784021439 866818001 467096345 507906147 1339680 762491063 75093419 395085991 519484036 747821009 532378097 736285302 641191566 961263388 733162600 764680736 578987396 871076629 218582066 992020344 525482288 848393514 479745959 741486126 697394827 973140622 837941688 989287824 829058026 847499039 369006093 969610611 697933366 787916562 145690661 170371299 432496740 759044985 417707996 977854123 596146548 829111129 610254757 630957000 21039850 351651994 916066465 998580726 66508984 301388019 536649839 599119390 498529420 758611327 671758783 863177474 562133180 876037952 226028748 728069744 352390905 979525374 786641576 827809382 6077332 904171713 162735608 968574128 216756392 926661837 23057147 820957199 309165419 383536775 116836190 400162272 333870880 870542916 694352655 850337866 372297956 390602503 287221410 876676763 51165010 875948903 388826589 495880854 545590338 759372905 326203572 646266730 339574013 376867782 788266674 798949781 955533059 967248948 686761242 978652149 877137304 960466130 311552367 360490015 38509194 174742529 900521174 911324480 86734588 466063118 362275471 878390760 299903288 959002931 858184421 931311937 295675325 485520016 815748292 914229347 67744413 98496038 841680465 904963364 161399235 641923935 36170085 104012180 969468632 973434888 35126956 568156304 621246188 696030967 461423778 592534465 585986419 639608841 195566243 703190278 324034130 455218495 757256881 777073093 164406109 716578747 266886547 330771649 300597946 971156453 657575413 983108360 815370040 841191322 306312974 392064785 46000075 851405331 180312714 666067453 102394311 981912513 379062551 486390983 223920031 560887741 295806032 649073069 337212755 437258375 600609345 776664308 441520069 589750685 898276110 955616880 45792610 726737938 841726480 870231323 294431882 693589239 590014358 667226962 23361299 623063088 400757134 426773787 588029815 629464764 864133665 959220245 702946559 950710524 201192968 462990448 156480836 921371835 125872517 555924587 960426090 973330193 737444380 941672665 661595741 870243125 308188692 629633789 243865594 554816844 356489965 431637200 94589160 309544116 817027696 982610576 957242930 968368160 120476593 594547854 940831168 994425174 535648250 749349234 599091182 609940914 880317073 934439702 505882377 792989318 342586284 890730882 960232261 992890873 990124369 998474788 686546443 855955798 984471141 999238089 153158510 261179342 68220818 570257262 843192235 970602538 33161070 107082476 279689762 832724473 904992726 956880830 573524561 864407621 461467617 844934229 179723327 442082357 215373305 929322630 344852973 710067213 886286044 886800049 364666826 932497715 784810814 846446934 224324556 702099803 440036125 733979060 548125031 813581939 228932290 696241663 707278208 860145900 955506894 987485244 212382827 535095706 873000164 939037835 921273442 993397460 741177857 759218801 355913465 677000997 124392059 275687345 640756500 651115274 879616990 902175793 551856451 886460206 921469996 998631645 835427121 901030058 314637250 323033685 145180736 342376673 994196892 999414989 514859820 534895901 324521660 962324616 547936711 944311893 385640699 522293772 102650775 303130681 328956382 391832860 419838331 743627838 962609418 970672621 288172959 766504435 679071350 996185826 34827886 713920653 769658544 899788380 831774820 984870960 728841372 864051252 755136974 781139170 274670294 572529929 952405563 999329203 355944735 489463597 168310154 309946516 767786286 886465660 613053070 970643824 162383108 566319399 65775221 651068243 693120191 900271556 293148756 541160129 425091889 908896648 70372508 958699767 321026295 889801411 98751681 281270509 618014394 743601457 167466633 232065056 423604619 982797950 327591906 466780751 519992238 747060017 905244490 910743700 261677793 493755411 389515678 923245848 170435268 185700739 673104178 845509591 664429112 716968036 593449968 629896955 166444169 637433599 305794496 530977128 456429185 610836337 499921849 514807406 603032459 696507559 547151873 850446258 679329920 815060899 315054488 701266024 151065579 987389677 838002926 922390949 650233063 962788306 409092584 555102049 41316325 179328236 207241824 837249681 867006279 868976871 120462515 755179622 83764297 171574306 412631022 643903357 429702242 589996055 728692973 952961617 876445445 994852004 636462930 959565915 649194323 909494952 191603422 896234470 151400238 352936084 65907171 628078542 304803528 631454916 788272687 937875314 804278353 923698961 646787288 930842102 537586816 582504765 958447197 979672435 468206169 775160921 408982525 603645368 75011748 815228759 905569720 981536207 784960889 814571341 922897762 972409480 929089283 988751984 535417608 845567616 68707572 571934886 770010034 949559781 741640019 751180962 795313336 916811692 197929601 350665755 582024195 816356820 396170693 464761467 334489555 366956763 868638293 977255639 736313944 997619945 727621562 830431131 124220135 209450420 771019033 847101869 11840907 657028230 157698319 496426825 627996899 668768359 745584538 986905847 430336117 583080867 641021320 808976210 708202969 850673839 878066297 893643203 254282326 683503039 859725224 982081097 40353700 75587247 397353147 590100992 352895247 570484131 92687678 400571217 568797645 743570768 778732294 881335417 590259912 668112279 776929827 953429821 582954509 877332506 960792825 989777079 211386218 799826307 729697988 892512627 329003512 381095874 372105135 634362186 563877969 716253792 31325982 107494534 980927995 985931393 779341358 795341557 658082466 924350326 984608788 991591209 804574959 933842122 59507083 825836356 801791522 937465142 83306051 820909097 486959094 798365565 18018398 551962196 563327095 866003821 138835410 563136008 662870285 967558300 79066922 682934826 970476683 983375850 27401041 487550799 391848215 997647361 971567164 973773783 907640838 921539803 192477895 760923341 882454277 985379854 92481306 154858239 558155663 687507249 354800981 734102990 412930013 490318084 793548203 822639002 579046481 666771654 803008706 923284919 321920289 703361892 222200889 448655902 116935883 939771755 110696996 808297670 89311369 232998888 12619226 217367255 435860694 793751211 92590172 500113003 180608414 629623040 514008597 704063318 75856037 896659762 481744077 585591958 125206392 583966671 525847104 735234432 217917151 937811402 792525897 908594303 132119588 880913662 999524345 999804672 665883009 795794360 834240145 911160283 98898813 808592771 452718765 752013540 542823534 843394413 380383481 398900373 790068167 906333296 906738582 924376403 506592103 875405530 579526888 646464691 863921647 971702248 872063526 931186959 219181866 467863764 441755384 829613809 437022893 939460054 451601157 744947516 56936045 718721228 888448315 972441791 631970620 903893255 274148460 420741558 663123013 916199693 214710036 438712491 859716553 941983522 827221215 853369631 475312001 539709046 682705428 802701243 196011229 955226395 311187380 408127649 722085129 814707809 243264821 516575962 736972972 855589231 29096187 276252699 448803972 490815065 439257327 822003025 793309474 896264939 562497047 687515639 767446114 974396096 779709649 906576222 446310870 456602821 939389137 996438898 318079035 640358664 787347236 942936712 912871632 948098786 281480147 806786814 322308429 900039158 493356806 936023334 170763232 439440750 777460469 899898007 829569397 910097080 581263214 638410751 991731396 998824711 258879400 833683068 293469847 387635757 672426282 919762699 284007316 511172822 588088262 645526249 554137258 903448061 771223319 891493297 12206137 159932399 935770679 949885257 817654302 931904578 348786121 697233763 749968528 830725794 941811760 969150238 537343616 739872597 90881057 784041177 692820871 976105365 990691639 997551362 51011735 469701670 216795234 323764014 998422492 998938490 43394431 752630650 251666226 295094026 608818966 926431466 979719755 996796621 736191750 911213418 852403520 862602654 885291424 950163645 285839015 584459205 84025231 836474840 601246697 865396063 532850423 722088843 388889091 791473552 912900767 990172095 162088328 201270490 179569507 646122748 731129726 994399288 648278940 863484918 579703811 805105267 541332084 660217907 464307748 464662434 67211322 537677792 711699015 739351934 121575036 349147764 880749434 920524938 964696885 968659414 152469749 267646540 168220264 549023748 374700326 396068957 608616416 748353705 182355697 427724009 624586428 880840067 997087579 999778818 446923989 631162978 840058747 921506308 404631210 929429787 865183150 867087543 459388087 672845470 750880035 898754423 177659141 179546625 447687150 604081461 262581883 489930189 998651050 998944287 715342911 790975641 187801974 253788628 56959536 274850232 510820003 705740627 917525802 955177331 529512079 590537470 196894962 679041515 660320548 695161411 437208359 689844761 399849249 731224369 334973145 382729369 739241787 793105657 947283044 964462440 450882786 577462762 293234290 994947403 529467148 854746681 175223503 446021543 301179516 685222824 623528694 980652449 708805303 810639426 198927425 287317198 715217665 725904041 969985297 992076490 227904169 626519590 197313822 780420433 427043250 618923872 917165620 981428476 441687526 818685007 845264544 887054005 82149841 552470900 791917343 838475698 326168047 574134446 394434914 914257556 877787427 892381918 66551585 145645613 85348940 366571729 235649186 972214736 603967843 877635165 382981636 959942279 696922084 702920625 751634437 801344420 549638406 744081901 987020912 994237202 456883909 658161107 535314938 709073281 170261269 408087728 647186307 723748812 769478935 924132662 68282860 198579716 639118069 762484434 272450804 720501747 726782948 755327297 92033145 230981632 980694248 982581018 831988068 899110999 901453570 910190597 367177831 971258852 457604282 595770862 89850188 144826214 265331864 368863103 795292303 945662738 184185342 471449818 521972882 682612487 559689760 999421073 59677261 701377604 180345615 783475220 30420577 670801070 814394721 989763674 574237516 601177440 996061759 999602931 768241165 926443254 920628130 975423794 815797760 978704958 629574369 746780534 824611492 912821134 408753606 667867288 140017006 150740622 350140037 746302980 957715956 969277160 404261150 922925715 548143438 973715037 216010178 483063453 990777983 998786538 354482197 738830194 668496860 716408487 763715754 793908221 996175287 999936867 34520872 762882212 141559309 431830191 893233923 980395553 555717356 696289325 249615528 990142989 669061482 980995781 387723340 572819394 98667690 104774182 56602381 948798403 23684790 582365673 578467119 824642579 243980909 923869441 621439118 789815894 603924284 919624608 446150906 519066469 918379441 980846094 840119980 948295554 749058355 784797983 518996472 763820405 88063927 261849204 790295282 923840937 789427751 878410991 601290843 620462126 666437987 905956034 673221464 724486694 486830035 913339534 873747121 931061048 918820656 921074143 644362224 736337451 25809876 688619486 451834938 523696647 511987322 741314247 219362570 917473026 880488582 936530471 160673807 922543053 939474853 949007128 910952439 963679076 660345222 770956673 702853945 904752151 802858472 828567908 333557964 679704003 51126183 711914681 504472000 866773155 633716792 934121720 987804599 996141949 923307961 981394530 805814392 995284518 730435135 829052847 293664637 777398368 874224045 987210307 897707886 928872921 518122020 680801979 720659144 944004718 737270058 835418052 800408226 899836210 606566463 745692907 182286484 729503216 207496028 833183586 900531276 940680869 603624160 996024115 572035241 734428771 46174789 277339337 995293030 995840964 932441147 950143632 6981148 645630366 160961834 440592214 228691663 352967811 433696916 937163770 577159019 708257310 197139839 837422642 735450731 897893759 22392403 623175163 960996296 980924287 974625623 997123464 100948223 302868222 894493085 914876595 460117501 773204922 760311516 879519503 215610280 624748678 880461297 980125585 437563038 744637523 456362185 866364622 389010119 513831550 33018348 479355372 231394333 391904254 792061800 819864427 166501315 844278389 438655540 994147632 680975866 951441845 178718535 998547412 585083478 620049844 242585475 252552783 973594255 985754746 729124659 891332362 235975729 974054547 299854260 960664135 101436351 891426196 826317734 843385036 511252374 889349624 681451035 948306327 656095304 728991175 146168290 212228210 723257093 977794578 293353722 973502719 596199355 694323997 946204744 957567997 430978919 798360386 748686629 978037059 843044298 991517178 674434125 797066504 83815966 725561599 229836740 696549063 72560407 966593472 558827862 682087831 801579361 801634386 509256217 921674637 963974502 989236806 622604733 679449300 380250050 998400634 107275052 549876266 813256107 857419760 66126246 78931443 327223086 421487461 586106969 631896677 261795331 831183941 338246415 409864743 463000729 676735422 257758723 297536798 981143983 982329017 921317699 948901545 804256377 941523051 256025680 877957410 459560036 853337876 227475418 547623167 613419620 715168882 986329905 991617073 47604306 534643160 526116654 919919692 380752877 736893396 475776520 823304710 507958587 731977641 409884499 628278480 997231484 998817836 869978834 976388615 750825049 779195755 386959430 728909946 964680219 998755380 286209227 410172069 892005651 957035423 573077751 716599157 481921295 596395835 153257653 600307348 686234567 888865000 233414084 915883332 358188789 581325687 53194847 683201281 641446937 680790323 193885888 957130594 801579578 836284868 468252037 654869769 187399004 707750892 233500785 557189631 818386266 946498049 432388268 731847575 117114429 896024040 940194167 998373353 400754315 860884908 842422035 877361311 425851625 836404760 898443221 969233343 772713854 819675219 982973728 992502192 400032177 645482388 429427617 922902152 610688360 694295775 589456394 643681620 491522894 581500118 513746585 671111683 906821979 915482423 774059833 881607381 283110379 722877383 75248093 586475681 182069654 745669971 896770065 928428623 863131260 962603014 83480178 527249929 945529151 976254146 652156027 714056745 985063095 990923260 91867883 505620331 744410248 845064144 323066738 429237447 15378986 809694563 717183916 962490036 740790074 837239400 708196535 775369654 538276764 542070378 891760199 954001329 785447603 788870352 226151658 293731362 378248462 891520225 282502375 483756652 288093281 863763295 732294904 819454408 804190047 893302356 64066219 750859424 586434216 926001939 199289755 440630582 505408719 551518178 36474589 819467777 318540729 690584663 592433244 964439098 60594998 801825514 986942587 992483491 402225036 710143014 308655253 981529666 410120209 639747505 268873479 281610167 755513432 829677603 815538086 849497559 352277972 725412837 296417745 422260063 699395830 725051954 362885979 786875539 578888738 602146690 451240241 821281343 623537913 998297742 794291997 827430845 679007643 789976775 527006741 830498911 665982752 742594822 401085069 470499147 10416036 129302812 312717399 809836325 468394541 997010128 837893592 842839458 181726710 480286319 285447824 587108258 303250154 838687574 696903679 797068486 628339034 872483188 9361008 842302014 829080299 994944646 459098348 974002021 834863865 846355679 736146353 944013692 257582987 791409242 473624748 942933490 825800585 848430299 573788047 799903547 235525735 914635778 735119896 944636130 319045714 347407146 113516532 659261216 472013907 975916999 968284670 983163081 65063697 883753401 715917178 958763453 692370512 772804539 501436397 776367388 494186634 816502366 619732887 725842084 758872734 894353015 915153585 967482063 4488516 439811993 992089986 999137278 776898748 832776765 622855540 940354433 287026972 907005520 927243211 944968047 973061417 993899688 502234882 902589458 507019802 701694265 26065046 369678515 104426651 989749131 408685059 610386837 944290266 994686184 621665406 746530955 588143772 876302046 954780490 965611147 445176916 788626483 423965473 776501289 65600048 452076320 454367568 811824458 826100932 980571554 967031014 976910145 760046020 951065160 465950881 800543185 518007137 806217926 750438540 812081581 99029159 767942553 269790720 836043408 286419731 745910729 176686739 529645959 986618533 995372607 435655933 903680100 658502237 762306799 820693600 881284144 798296186 866960614 636733721 901549486 367478126 626033360 398895628 955663097 941659141 963691057 829286765 955814901 23694759 506362385 22246906 919078606 29584004 111226167 66561406 896352151 525629453 531958735 502995445 618865692 318096244 741361665 655742197 691794319 79925456 147745855 556431653 587552281 660970262 775092061 212849413 314033201 123465336 747421168 818609718 898752655 685210916 722184325 435778262 740205560 181136661 653534756 602965355 617304330 730912888 981848020 881911940 995999759 658099490 723726696 91989186 221684455 988251470 995354039 949299028 989494315 562486847 851495591 741032916 920624945 272336815 434568990 155928813 528192674 363403690 787219985 643909309 702784789 471226001 863913765 697461114 703218887 406603420 490174540 281218257 337095109 818993606 883525635 126743938 242823655 273173733 711114407 385349635 927665306 876068777 955989883 425690988 733803014 225367455 667551092 519389189 712782472 230321957 367148935 77207973 344834756 769859965 971436829 318432283 780454567 702256575 967197615 841975316 945301891 812676369 923884493 85330571 122385796 674203851 748246194 893796982 899779329 833888574 848000364 913474231 920355057 592257673 882322868 465565410 566718058 912541488 982447695 860514391 935206273 965339507 985599090 394784635 835608449 216514154 245765235 571095176 604703260 836882891 875752891 940063175 957338187 427880633 923935555 722853784 989478266 767494156 924667513 744586869 994866265 99338416 402633580 446576531 503339114 686625125 703937280 529708643 797207271 568337744 761296406 187972180 554101017 380341316 752139366 22478733 239224531 449940663 760298681 486804503 529178565 404999811 518601452 759656637 928734391 589408958 921808574 528138424 904256199 196759103 572674467 132437112 604797362 578742584 622451505 751367163 863480816 830215331 883212935 73652242 970778669 4216617 785515461 159532436 193588242 104576983 407544930 543294003 629046156 578097445 999792691 709558604 843984902 393854884 587863540 450856136 601396166 622696951 877210178 71672137 228781608 756963268 969653569 133544024 672524431 208730415 692611975 746796658 987199145 263533784 478078775 206783538 575250584 571784509 903301640 98574699 250049820 586852904 607819041 720936632 893713516 81045043 269923914 649390630 845867625 591078819 731075208 472259793 890709104 527803876 661102704 26137932 947479529 924958369 939546962 198222363 499820926 380731112 815138731 148082406 693830119 454545828 748377080 554467343 739139229 334085766 646778680 976396827 995617441 714570918 886585762 652677521 707212603 926876316 927340734 371284932 381302833 310616461 964677495 717440796 968767847 876498533 953461648 926179180 994643635 831732544 932029743 411774394 570572069 208286353 761000779 477547943 857100684 981648916 997387007 920642578 936903903 965867326 997273110 932900883 985830962 886574825 904573404 598659896 776286428 392107490 477825809 621842101 629395919 621364232 941706064 429041773 859759809 914398113 941869883 69590986 818677031 636639860 829471510 195034521 516127506 658394558 947002940 254470713 783311648 23594923 57217330 669553231 951766420 60261214 407701142 777030003 909391623 757558296 858708279 688060435 920314850 333091921 524047720 613365510 863475835 391009039 659098829 384610407 686236092 344016775 428881715 97529738 388549568 769123051 990784878 519500047 605665910 468621708 995865616 384510634 453113329 969140373 999235336 791145427 893731409 182377218 455079493 598119282 796859568 459125366 554065075 400142163 769257658 731556601 992809487 764059333 803426249 76848092 570026944 743608287 818152724 66800712 451727380 426671334 871900655 840776355 855864578 497335375 896703624 301152885 617640840 148047496 472284809 810837200 972196058 324573608 424062630 882086784 926127306 105470216 129011255 234167422 993085389 724072359 953511154 104139572 183816787 553300790 949110302 737599507 891030434 577246246 817141961 201893437 343957168 963296923 998555621 581145259 913219162 231253821 728806656 234099148 930259889 598937317 708578859 363639386 670048591 654208965 951134309 586250062 653900740 255373324 498673527 210724964 937334609 463468192 985750863 945853501 949676749 817829588 928647191 679053186 987460209 779131535 868936792 312601158 420558601 852460226 974913064 27849800 519234037 530895645 581244857 283692943 825130692 15549068 487535472 186371274 397887093 372600853 476314496 954839581 965917877 763694286 970766139 636502012 725180793 429729088 786808245 173851629 397681509 674006936 948894041 622679939 648878961 380608289 384443767 237630865 795338528 281834743 490418192 539618672 762432317 165201220 786067300 91391820 910502618 242606838 452105111 637744424 671650731 613514313 781490092 534727755 845812337 295431614 437786889 956452595 982665163 791195547 845988211 835224462 906071766 712988030 903766420 786907213 933412289 16400070 581515541 375140277 950761931 576831315 895668467 941187464 962815675 376457563 977933611 562163283 713865990 326145116 972564931 773572239 842954796 162481153 979311673 229183994 264605337 214465046 479491501 972105183 987553894 768904842 883059513 260235423 370840588 949424085 984426509 857546835 923474906 890761803 919774657 275514452 696761879 914382987 975956516 735415950 941705649 199533384 235293199 88327952 901269796 94993552 351783785 985461114 994519453 767150000 939817277 482061764 806720955 455551230 763043217 51561387 176724913 266714026 466237517 134463375 223272910 830252021 967987068 150790152 699283572 279362756 822509571 690615539 748804330 272654139 909308798 534231181 561010870 91131172 225475404 546887560 964970648 472221171 808662636 914251517 941726299 583758389 593998711 759861647 802499687 42809623 566404000 414383141 602422310 384153697 916280232 131173336 360162457 692835932 939701154 557139827 706547157 990342689 994854775 906346480 910741673 380022070 767749243 263304007 425228900 702881750 994989736 174953478 608385347 797324098 988811628 759777138 812218654 398285121 910655847 925526943 988040212 282215053 298691134 128762608 255735912 878753603 995436877 964328627 986058154 604778886 910243711 262903423 913980934 659322505 683280504 756419849 816769783 771836178 929282133 106958342 770375495 650226629 924047764 840843257 970458649 542062162 973899710 99235862 176900856 874714845 962370228 302766315 814122536 59160402 571527477 646589354 933543791 701070637 746356600 725151435 963903069 930400500 969472881 31249344 583786426 362469089 999246341 974179744 988419423 932110302 972111846 194388340 463160608 127548156 849210096 6492528 134416987 877888739 959553142 74870741 411226483 46323463 860187320 581306500 843275991 671421982 986414609 88651671 771031050 829330023 999990185 127674261 750663194 605291964 655590514 933099508 990741281 385688767 412303738 799742729 960136163 430311611 711990157 615247771 915911954 127207887 332524703 485542101 508898062 860366374 969192976 79312254 219525151 696357177 737905226 664294404 696784965 754801049 850870267 277803162 720568911 645868625 873255788 215375347 957627463 416244794 617348917 267088893 901238399 728344623 784155865 956695787 972320793 107767723 427233490 331018153 669227558 613881822 907237441 870730853 992103680 921906928 991296724 42218146 348632052 226647533 864646118 762489505 973749008 706483947 959115468 17146890 979456902 295106434 316593593 486070518 935456776 478183832 735556597 578219256 680887472 453164683 573537206 169871099 613124578 971808731 985526693 542394615 663229888 790534618 956902584 134297077 986837100 271805285 974875474 228275029 725629911 37477480 709664583 603601744 785295849 423978196 504931878 286830694 354914185 711686279 984260148 118599377 838797904 216553301 889620273 256695180 696221361 612641313 788741393 442392031 707369048 865175599 865581085 176738481 318417573 109677329 671602391 376454508 989645955 30132787 532322431 578048711 774738296 428525803 539001516 44052751 438320513 854766860 970627984 955137284 958723276 736834358 821779460 295220766 771909889 65717396 474793466 913584709 943028909 167270231 555819632 914884402 977923455 624098571 673334758 973037218 992440934 331739230 978996080 674721226 755446976 825263820 908630382 738913112 983671056 241375689 900921886 311580956 891404459 703327737 742623802 144261463 230945039 161620912 257143204 774460202 914592550 274865634 802814849 963955247 979600970 479100131 725086949 778293608 919560586 99925710 672078807 62246735 990839447 32827846 277413338 941981034 947549599 967539929 995662931 149524266 915401272 595274888 828382986 3726739 296357690 667166858 873004793 173290625 581801157 407359870 539918940 452575538 908018657 970944145 987529150 432741334 890490006 72381893 375608011 85741989 509874805 403057810 629984356 123754997 397017498 277139779 634830261 8498008 315731764 76434640 528778136 644668728 710601311 740943839 849526204 246335850 467072702 998864123 999261621 477595961 833613394 682818318 892715669 827755968 894508490 748521121 972718529 450502889 913945491 866084107 938620234 278997546 284250484 193781518 316100529 355375526 851310007 254262149 451667892 817451336 941470468 972715897 985380269 4397221 445882238 915983388 927516630 694028815 822174188 712816822 811339125 905367017 977729546 886520321 910073150 719055079 837082330 854762394 960762117 430291044 740338722 938790296 998530328 424472347 980306861 986949957 992540943 940711329 989323246 309234929 402387591 454614024 510471648 635969114 986900509 68393297 327633564 400925772 580274975 26401508 275172231 114520066 764314521 413421717 476663410 128978357 381183888 739493777 965263070 62436915 331117179 657018801 775364090 298722706 903840486 890972922 894823767 596207881 998164773 579459775 631424015 372824548 735451885 254291974 994317176 397110802 469373165 544578195 970418419 920664537 940649584 226133003 414624286 448049902 976078058 246137268 838012438 56092240 890899978 876217068 947532105 34556788 950951513 338104699 696847877 531090912 617628853 202768858 560963740 602050141 808550423 344556988 891948787 677491149 917779160 142244854 940572674 175542661 602662228 786981720 811129725 747737426 941693934 40092186 912182192 760798774 792587793 963558226 999686720 168176678 644489091 173126075 831568653 266077564 986297996 277191961 562324875 158301097 400930663 458550599 907211252 615545713 747951395 699403965 718231835 868247031 976562408 527229216 581356596 471564586 667957507 264383235 624656082 504994739 775029372 740168127 872962177 515721666 612495703 609680861 668075641 103725666 191851080 77379886 833548928 825023722 952151556 336930625 346533071 296629862 509084379 659477801 949508836 949400619 958110212 750854326 817477073 84208157 595835656 627606455 928195808 303611470 736612201 28239423 609284299 778170765 955784205 890005833 988093784 90642131 418436196 305261560 654440877 523288387 748254303 415705150 920044637 985561100 993161304 356564445 751855463 192145119 346209892 243436103 349766969 239915965 806738272 468241549 747270575 370465202 490255008 264832033 587239929 717688500 730244823 687195385 789907577 49073597 129707970 975658887 979604743 991248389 994164817 489083137 817711084 511259367 955985684 585221263 800655723 777601706 957564750 482931238 563326094 185752346 530000977 740091866 813954978 957234495 980372156 421777347 629715082 632831582 688933444 821426467 857204115 236567932 931254259 652993538 722921057 264085710 857392199 70073137 237553283 917494276 971709259 866390448 884425757 281942903 872661860 396965799 678826429 16680046 931359294 285994855 388676928 528875762 891622012 278553885 293742114 217432854 875304449 316439435 522535729 367263199 517205563 721109350 807755276 195303810 244700591 56090352 58326478 571616752 632788917 845688416 983129108 135687048 362525128 369752186 576720666 150200923 957154517 893178241 967761976 351578398 517788079 69790057 937670409 298354592 680438053 599132021 727919613 20164026 274459539 212827769 958926229 550476230 629502224 516979229 951689499 553021231 992912625 796370351 979991812 642423346 722679143 164445189 662074895 833125605 988165215 935656980 938373202 114891240 978709356 926077059 994845116 682690278 988073062 575273630 692983329 648145702 743576834 669186910 849765835 290713711 651163038 493956321 959471569 688964649 862229866 861833219 914567694 324663334 610211037 343955917 858247110 664887142 907709817 532447292 597537707 38664892 71222339 463164608 829325909 850702192 987263095 792182636 813209764 348251047 939516460 610549088 864201207 230432806 344291109 412283588 658701519 569789925 981083463 963094028 969472431 618049380 709234281 454381331 538025142 106792607 232529843 967176551 983126817 478920041 965768520 595138471 814386240 832148579 949192138 662065836 948264477 14123622 885150955 638352806 792720473 933767774 989718219 418574617 920025177 763449314 931241647 352766794 755768751 186172333 290612137 84660040 234737242 583195141 908247904 694079102 818930350 613273496 958281010 251094576 877803653 412030033 917636463 655020161 692523612 836561384 907622166 930961212 933094022 473245880 494631241 391243784 918626389 368297409 723172282 955565824 983277207 688639280 871843938 49541638 750272441 2315736 281077846 549822541 747807871 504762611 677571236 735486813 816165531 496447929 715298028 130026732 698618458 102627022 962048134 982015418 984310663 756336389 961222742 229180235 365173470 935182551 990383689 242054782 555801774 863050386 887884204 531842085 808979572 159126191 412053447 790980941 796966537 378090018 958486518 450495151 975517429 134823549 447119129 262251502 749781347 838378495 923563920 674220455 911289626 359923966 875708017 896941710 987855210 831793028 913319457 783851537 805850250 515525043 902975043 4281735 883206731 941119726 997152682 156516527 382383899 128838912 216528242 766384879 963015288 439910134 836329842 131384629 572322494 408239445 812826054 87979826 918547663 591935260 930487653 232911119 683595894 452730709 507609527 864834999 965444135 291117421 718033070 849057967 879279386 882651486 948069439 599786088 760445342 244382472 606093544 600405146 890103129 695573054 771494258 568430760 818623868 86688002 105676897 103166097 580580109 451997956 620059650 710775031 985449933 314420853 929875917 741022230 997869406 591615872 613421331 947196094 981013282 558218370 903168034 945456258 957749664 831800732 963003057 546633189 918875751 455793385 935701149 311203280 488551034 174598484 681186982 927987350 987111904 322365038 456522526 174298773 174399091 352218256 778827116 222267168 530792894 997507150 997955656 736444013 975317748 674282041 837547639 696904713 719759467 102040630 739474081 970024277 986684192 741424173 941605793 45494812 342339087 836572154 859051058 189090274 252271267 69391656 798216884 752814472 759569134 736314556 836272889 821517224 957154368 658829204 804002330 546958937 929562032 474251301 689366055 186087139 253717156 568328213 749324959 868783067 873463168 990462728 992755615 174851225 807829438 976097040 999409879 905492433 972003545 279903489 768019814 193952374 206162561 320596517 815645133 951343413 956052494 830222438 947579113 582208195 749352959 653195511 942167482 116350844 665823756 555564509 615359926 935222596 973840172 54911426 515769924 354664665 935671122 837937747 863443592 450000006 630688026 192517671 629894342 929865704 972859041 200569340 225306342 562289720 653955599 291812156 902123576 441387231 614827713 575378586 736596005 487221370 549958656 729675568 917090495 279211459 322440910 893906426 938101773 843207923 870019439 291409207 728323264 663179670 873072559 6327943 972483472 80542230 137405479 924402291 994553675 552444556 935932720 69726117 345052161 538323710 896289117 264963779 271068499 776283103 843176113 225305787 924544499 308277135 591003984 620228881 880116100 448492168 683680088 650821754 660372173 331582134 740721990 702023735 717436494 328020463 485885815 466151691 946915659 257343442 841630015 64662974 519274318 440259335 767135005 654556962 819495978 627457147 784151430 394956949 611649177 588178146 882756169 99077473 919235603 115445720 864590976 719191111 858917751 731972113 909274159 571346184 739534338 941186032 995801370 532824056 557061964 723785023 938145295 341161832 802915426 543238869 677930990 616576064 998101063 194659633 235650917 660612446 988533768 704389678 942878056 65333466 942720301 124411958 940107468 87663823 263646926 296839726 915999353 881920556 950786428 123922072 538543059 630367884 677108647 131052742 496878209 14454721 298380656 816528411 937458571 20786298 122449700 931080067 953244190 460832221 636532843 377954380 843746400 342821108 643261680 787143060 842845101 502091603 906109387 321591073 729258148 329117008 499119913 653374449 997100942 971237544 974798535 362501362 422542744 683263247 690087514 410530393 473333401 407082589 448845344 987421745 995447179 491094451 921630412 293084332 379141721 467852968 759366641 808561099 860890069 28793704 852012385 728326041 742019595 978477386 998547574 576099335 685395773 135133202 950340703 371163797 473781970 73230227 453414822 897563645 930916572 417998925 934099383 26938480 980542588 688881560 805231613 893725360 912889730 554631885 941586645 511841417 754104302 670338144 695834909 84390228 850179317 557125512 877383161 512136050 886201968 350797860 777419041 51785983 952305203 133516191 982716020 857369667 974663542 594775186 927566357 308107474 322394195 902552994 949646551 149276370 292247948 68228144 974856428 899411217 959819162 446133482 674249438 592801624 950155155 441515421 446574956 767969889 772442517 854374879 973594777 642200593 642839535 418812182 961172937 520727561 796552936 583878007 910198591 294180146 951378586 949959544 982829983 473312022 787800016 119580138 428791104 344756397 683249714 631845998 896406150 922999717 966872097 270533991 593336615 39705175 989997165 503599666 886651444 863968813 901728797 935378371 960535775 856516064 981867470 193150645 273568270 648971964 943681238 952988898 954817966 872863001 928039883 748899673 797828818 933192712 948024602 134897477 372135017 37374172 706558631 282573122 455560282 522954885 977491812 655050599 812309467 435017549 822427346 95116896 239657068 883301853 939745098 812170979 976662172 188550102 610045886 555175068 925862143 587234115 762545709 8043010 532502940 911996507 964621946 325868094 674409980 547478630 694449751 996069420 999293701 22673435 199859075 250741426 688223584 650395661 781080921 395097685 880792372 608609142 807775674 916874134 958154022 15491699 700459559 170356286 754777439 834017641 996648161 320229106 896186991 13474826 392260026 936875211 971490845 925270792 933720235 923331854 967954816 539687048 986889999 928737471 993528732 100340447 564258240 285274789 665654533 178873244 235797187 842201562 991446150 495110437 536635648 808384238 916439617 315078411 894842999 703700587 750542588 105993898 831930399 974690686 998438710 781213630 886192429 59534006 522364993 289698441 418984861 565170256 591981706 35229860 920045992 625202656 831258055 188333237 214873704 906944659 971773191 333927006 542237598 926815926 975409915 750023506 971839650 182366592 369717878 972925783 983779584 527150946 683891239 806970093 894247536 178935429 996285060 758240592 790643242 632037425 983742636 652202128 693033760 407674614 873982109 699793003 811314647 648624518 969862313 302230239 575819363 790001503 974367226 826485587 858531924 947140249 969145503 754951041 784531074 816640377 960747047 525063768 713035802 404256875 563411229 796725050 957766316 874059350 987481128 698952299 958748805 143134327 479178261 536649277 673171221 990231122 994364047 747218276 817453389 489543775 813338946 22694464 45338152 583319138 696921383 58318075 491342471 427746650 804190241 986485030 992405697 266335903 334746949 730088787 741231881 984097577 997009111 998593420 999229290 827678468 928982689 998001232 998032324 351345758 442846118 989141544 998984765 557883721 642246317 684998437 858165820 539648310 947806323 582879195 827161988 60265963 693042861 490212346 641013900 858098804 884504826 165219028 936559392 268366972 390679422 779836107 825713136 591604249 902108363 409851036 946268310 309043903 477791236 256340024 569736440 139717604 644784504 553359478 941365103 719536460 832830167 58826551 798429978 330872115 926234281 747435526 826008865 872136022 943298481 985402192 991910153 551903340 959677070 872860375 890810543 161652940 519248632 373070719 679296762 715153798 755846381 374066102 477360668 429495056 535034378 76154493 377441905 934684403 998742167 229054093 586809602 881940705 935618363 668790950 994629417 90561630 151915537 779744473 975014731 81467790 488905101 117418391 605502589 159603 229395752 959987884 990166173 455501089 473029123 63858835 351042144 761005534 924510708 738950350 778694356 448096403 602553939 176105091 389837909 311059254 747790610 231660744 803624996 827905451 986708081 772055032 915903556 767395022 792981395 267156401 795224180 522669752 940933331 750557605 754523641 996282162 997186017 568421717 947364284 906448552 985692061 89372835 245242578 411273204 513692094 701965156 855095499 736771523 804485818 421001387 907431338 728662088 789480281 947481607 993839497 505314466 644911606 257329447 782457603 399351558 799207258 924791752 979558608 327682701 887554031 635970141 681531561 349256701 560346247 524378611 966849177 173574406 861307849 452060099 764014779 251550217 992378516 33021097 585018007 377578749 855272269 228015241 456922616 416443173 919419116 315119729 716192247 160718087 445083706 58405688 617352469 459908168 490127113 721185895 783068043 238868594 657201998 950371128 970869474 351783069 511442854 670842313 989717903 603158576 836118174 967967851 982065585 404643907 900235327 54238665 365774063 129566694 801955241 883092626 945855007 648491478 940449945 481031759 937895426 835033676 913251581 832909931 990724549 968354080 968483492 769078700 789896543 831479296 977850183 207118275 429168429 904346798 912413120 264184055 977243862 2154587 227621143 152170753 853272539 153697600 595107377 418223943 630799399 289469427 404221463 864636083 886824941 328309046 812447953 183425969 322259102 77737677 127562529 908646117 913078818 969862845 972719840 989150055 990536855 925278996 991704290 161779121 779218221 283033175 877652491 171813920 971436474 402538610 611455404 26947554 726234820 887010103 958462375 491591355 522465705 605250368 651385187 212614243 882993796 948708466 993241529 329795733 768081521 463167942 666548317 738213278 837453377 279428629 964483741 10676253 637789802 65263867 476767944 926749209 928011943 290056257 340009156 506140266 572513404 905621323 967528145 297548117 425659668 329209815 349521634 226596950 986107693 185768769 533172229 55287929 259604872 228065691 714974882 209981703 448432574 646848584 744499189 796400663 925590445 656715072 990111090 725488767 801585275 399568179 445317433 572401446 756193945 319930287 755051990 506184173 713121657 315947846 799984353 95166011 563195385 27277970 449458352 958578418 972729171 33481193 929884539 808832123 969500208 368492040 684101448 188865428 297673056 208525169 798256257 822449445 898573774 408588862 646836420 625489508 994057708 242580626 493690942 578526602 602640543 569700470 885181847 969404614 982148361 605315653 636720609 950831172 963569183 210047854 443776986 480196625 495239093 417671973 706413557 959831492 999434850 636454761 722516669 292039178 723077101 327489495 881056645 258786436 800563677 791316941 874808384 861621774 951748469 808072182 980828205 932293240 955827272 359744687 640782762 898351244 941815220 631774359 665881721 998102862 998344056 570727958 898672396 139694510 291330191 254234064 622260965 861285271 897508542 71654678 575929669 599083416 912247784 381712173 999502199 750809865 870030251 841851077 981782279 760860372 896385760 125564505 552602234 611406651 997529708 979803076 992328264 475957706 941199574 395187942 491067330 526172521 846224773 37900009 615242419 89410225 688118460 266703285 885344208 948923793 950347781 851914953 879584529 250379503 707345291 986414108 987827286 593171501 865432201 120839256 201477287 578241960 963369676 944688921 949409664 307221593 984764750 781618235 783691898 457551885 555678648 590469493 804514329 256779175 829308791 434120219 518274507 590020050 926652652 16104733 898699032 453508888 549257565 838456640 937873165 291425797 860778810 930074316 982723125 233207374 859670757 645210978 663125319 145941110 204380527 208297329 667329231 795483997 915425781 17695389 132166382 22921503 954845407 895396358 992661924 104427119 724713369 258160233 962239491 923716319 924571645 58191188 744498995 395752236 845075461 213878443 733389066 28630939 464333092 562776591 801225972 440953034 785194739 721238246 847638041 831985373 854922519 568232283 918530297 471708877 782898008 229093524 841440107 398430171 653229370 39086570 574234637 748549432 888429353 850869820 851729948 386801798 498032250 675260919 922316758 786302466 878200398 172267805 427334301 306451444 902968804 402902217 832583874 904223221 914615865 455637165 982379285 335249925 776040929 467415922 529184432 872422466 989479086 410482202 568106774 568282842 812545927 51027560 328708652 260249285 612673895 293098753 328998303 812018804 888188789 379659709 460512594 201305678 547551832 295143066 476312086 838844105 958133602 738795806 764484271 893376242 955218905 751387790 851780649 813096127 814406346 628776038 816030820 440903459 593330326 873096056 973215575 32286942 133438320 130326182 754450442 760567337 947400144 765003179 850562478 381955029 648696198 459668169 506286924 72750810 165154096 853195478 989779525 83140482 553932423 692542745 867550653 263870898 519700743 574026932 778246656 994836306 995909098 125480635 778958277 136988669 986649611 523896178 618803387 101204509 436285314 883722858 916496436 860926136 912479439 87264906 843099264 997061566 999164720 850678901 951456636 564716523 741746319 502876534 917111655 182261036 868171029 905802916 924799158 250652214 940449331 68272051 95079733 745152246 764905566 767998389 963418429 472779195 753447247 910954594 995455367 863351366 890043112 764208214 974857269 101062298 247090541 468244711 837452523 273111781 345441550 181477599 725681213 94187143 773633990 802987920 835141750 943815998 964066140 635686029 891929262 539933220 966922508 626080670 645278686 469778812 592015212 978735212 991656544 476399411 648010313 621422690 828759468 479894785 736519390 939002232 979945597 812089749 943857021 671168038 789229604 574601687 578704486 26783403 202735906 30733602 548281548 722908271 732844061 496133509 565074199 608417845 636497501 631450522 843470345 200141637 933047371 129944939 618004964 48056927 626234972 965319056 991541804 5311470 13572012 611202078 616817567 87224876 860752634 566807812 698100642 543360917 965360415 329907540 695201564 528710520 652702712 490370720 813101501 621657040 859731918 804469686 845447268 596720063 950703846 687673245 830934119 259275643 683448668 632055528 681077124 109991904 752202656 986289845 990148301 479908067 751195585 709000356 960539255 40929959 405414550 862394518 925736067 336177676 959636756 922075740 938453952 714184566 992281307 677325661 904484614 433118762 973616021 21134246 637573425 696239606 812775001 771213309 884820147 589701208 976062859 849667527 897524708 178783012 585864356 785168631 904001494 701563117 843395012 669976209 701923400 436546285 961939194 207603349 871375542 221047704 916253864 216061908 832440264 944764968 985001274 21953019 671024510 892655478 905283949 426346050 770165919 341095408 441565828 782505979 905482181 669904607 760254080 669782483 885506097 799731785 838687632 541488220 782349551 339636974 352297552 760624642 959666547 385259295 739643123 244962572 764194723 688299184 797828245 998953431 999613533 153257376 394053564 767139015 824338350 203358453 598542827 509779958 634536140 535226011 992775668 142544855 181486559 609589427 632505391 30704393 650232685 459061887 971308067 971559834 990756735 710159060 931291169 420483901 733768530 550502746 551411762 892808350 953775892 733590275 778461332 940830279 969378376 454398415 697961632 150483180 184721933 678507098 811522074 468199323 844700726 275287659 638396662 653950206 877622097 761267422 845314958 601934430 838503909 394979839 875929571 372685365 849243272 128536026 420860132 690666931 692681481 842346848 851583993 35359910 235274723 333791579 470399589 922013544 964949893 671407533 991810953 84657548 732241870 168432322 905097923 331043427 728043716 7133029 748040515 471126233 763483953 711161394 734016431 922461813 926217444 538937288 922199115 881215960 937057858 548611374 615606860 522779037 585334182 46169576 883610530 23261209 176859704 419998379 521975737 680139356 831201485 735902875 783197088 747156544 959194863 993617124 999534105 802023461 929856868 668656471 844152402 210441261 413313239 645335284 971132209 165402522 783475621 649136513 658376367 755528270 896929194 86597026 182414069 686817128 979020918 662890800 830195509 910132979 983123464 362353417 535918877 477162659 537514869 443962452 615460549 988958299 992376721 236934003 957604686 436347840 920305514 837268288 959959687 679882675 872188469 86034751 862219395 303576343 843387659 634171840 836160731 694457975 986502839 842765044 863696178 936315998 968977750 838832268 889928829 244685339 906033589 118158993 747482620 229475595 322060612 125310590 709636289 790597766 901266442 200295656 645404198 533553564 647467920 509929679 967455221 879649797 914257345 393292949 827657654 235461834 879604128 709081925 886590275 657574014 671834086 248079712 512347492 647879140 894952537 837007896 906970304 631552451 891412241 676389131 735694800 14291407 777651847 531194742 814858911 406616647 708529225 838377364 964159413 276186891 934051881 690661114 758719087 285566779 856358001 553114804 899084611 263498491 308386630 729929306 909467362 165984274 189523932 28375450 283542376 790427467 830851022 112453251 480215734 810746473 931099967 341853274 641234537 129476251 284171000 173361977 916617282 515443272 592084131 399025951 454080514 726165281 838146441 785953061 983603798 781927927 901980490 498997523 501923642 292519168 618391099 296052999 606580415 185640699 741539475 112870875 338656807 449213354 961315903 315343901 559189520 610793036 621924928 912312661 964125983 494111083 752136210 701197038 863177064 161439952 211154263 127138624 985578897 341903255 376461642 16170771 855626317 98893999 122953634 216689531 365174597 536037107 596451053 885881772 949505446 492599874 725527614 951313631 972343364 493786796 732599074 907652849 994735783 60366451 347768991 82655368 655901909 289813505 930146747 936847934 981988516 920001888 976636536 218654794 578947808 917933422 918626659 580752862 700086108 130254004 785866616 402177833 641837979 739942426 820555856 822530115 962960726 579053033 972073773 529665178 702233956 385922525 452083464 90366770 624237944 432844726 912051227 212126498 666040769 865550654 932925167 786218255 894634752 756701430 775661305 105297896 318222858 22116040 163753823 526788962 540381849 137132071 726081043 84461163 369971178 278088877 323804312 739965360 808913182 912780025 956236084 125849660 824123573 969261380 980751149 651668420 771951081 266791993 846175694 816609492 845240895 717452093 852415217 881272775 916368296 756497487 813030476 677387586 782644298 431658467 701988509 752404749 937342022 28946756 864553941 181240227 239385681 882511402 896089024 556459232 996866022 342350661 449178005 76387523 936341542 659521264 802554879 521757682 958842598 679572327 743115398 420250243 691555774 526225424 940178431 420982767 768634766 398240657 728225600 777939985 797398938 752147397 755176559 779491955 869982008 436435084 849919780 408110326 758209769 203111127 838468199 37544780 457370118 90919163 540995635 773268300 842041782 828122291 942277595 158227321 251567085 143623850 808011545 767455689 838316028 81006395 448467631 352235752 522394123 995131210 999573279 4434900 863009263 676166449 722474278 382995956 735709797 643928024 955763919 515924175 980763598 82951631 157824671 348038606 744856896 836353047 927656215 586791410 951243758 351036172 560897714 663718193 707388109 130920884 269551028 411438104 556848418 583721303 654147805 668491911 811551307 332911451 825874274 523279854 869398571 601239192 909288586 189283788 974679138 131851943 372937080 781692482 926437104 843564896 921231488 919823015 973541822 106483113 897048550 195923526 216391804 289984005 375969074 235162148 336126302 91487706 503550420 786131197 911885412 424977655 682086880 732193031 963504230 76332549 502582360 477143768 508144461 495419676 948259521 976476830 983919519 299226096 300936969 140290075 876232851 4674040 419480581 797112199 998465702 332095595 632582360 230258150 913319264 616181699 701944403 307744995 733230493 39137951 331279780 965963910 965992253 976116246 993282959 415743834 497918268 510766795 614933920 676063638 685014978 472555890 997438828 651771841 657919251 235838254 798039511 569093361 854701530 788144147 876461283 34513711 212853539 43926474 770246711 846096711 891508145 797918047 919564019 706514875 892546659 779019696 919295625 308850795 737123356 600753018 745164827 428641941 585019919 8563913 725001515 959860837 970193139 67168266 642533568 366769021 885219811 345058231 923261395 529883841 750824267 721709055 739427524 910672644 999636758 882861426 996174186 506049401 787937585 266370811 777153814 894680833 907060987 606957881 846278021 536649174 688939643 43134042 425625626 449593274 683235724 403027894 794109605 143788848 232220081 740630097 806533118 276805774 775449736 838419072 865719105 292480807 895514874 236998067 710844725 353772437 765688090 963400275 974925373 175647677 303150310 870090835 959682640 614780491 852910573 62757538 352242275 735628356 859663323 673796398 936081963 80694388 176718570 509114353 703149136 19115883 894465752 366607169 790033739 149295056 940032025 106623861 150127248 738289063 778086811 727080604 767601029 516798977 783221649 572290250 785810317 677056694 724446223 585190389 623101881 826089527 963811951 558559036 681446304 894459536 929567780 859388318 912990130 689757319 800289842 861768852 936433855 918636695 958856609 408888457 953445757 796238441 984807262 513410842 826254699 255297205 552242985 432864669 492834532 998712283 999482173 256728984 890491762 240937358 960205073 959590057 998266915 745760527 852582768 792202826 835104720 41553320 80334557 582769669 996636634 77438886 906284802 812412333 885449808 350823847 409004375 272294004 788581400 984756178 989752684 236963744 552344431 437348236 921795676 136710191 460371960 378106585 791344321 68400243 135238435 760404865 788381843 220478020 991096375 896305356 971334067 936883596 960469833 416912528 474552040 492322576 551093263 716262924 880249620 669416259 777576301 776013730 984464008 236023199 570360758 113370508 528212517 687602255 960138751 896075317 947591297 621961764 701180351 187245018 484160736 902317852 963154463 497843853 567279673 393038879 574174073 864698889 935755980 511784225 588294767 459579583 718420421 572255686 823708582 330763423 787550350 71054302 643621626 385236886 710844503 162736286 354479510 554293838 920854488 789982458 998989451 219333092 444819203 991361206 995707113 401141430 715233262 581881410 775959843 369714459 456704433 777171148 780061653 543489262 884098718 153570246 382555001 890582382 962472977 481808091 846264617 583864748 786100306 584669579 879407554 980133538 988342408 283610804 358048388 236501183 421702109 157852226 474906951 330554697 485129553 973426765 985799351 585265713 881795107 244745245 432488907 40858681 179980325 235106450 641689807 928982849 966823478 261929496 957117494 194347195 740997071 504019184 622917253 498630623 724677018 991438035 992269707 163438630 931891145 19796294 202158873 220593898 480143355 565832200 927395219 642505820 988735920 660180142 852083069 387092147 414075925 708898401 826523495 136565180 254020619 396433458 872657405 490457503 980002916 421679246 708530302 484513701 640005698 995816993 999395673 951846070 980710666 184328920 441002123 424026169 487080732 825325815 923278870 168191771 334732585 637823552 920411249 160942352 389144147 85917605 627507888 287969995 929024148 193236215 497515916 602499920 955687435 25646315 806232534 140208704 187752054 434129464 492013709 478699014 480036829 322527666 785783562 155242632 990610799 194330144 618938853 580070479 581440812 537420615 611817404 909395072 937449432 128565480 163570430 751109105 900587832 301895394 481481003 282829747 494632190 760122014 920642098 509767943 825915300 339863395 921717669 383623501 552241427 26404421 648011136 237074241 670471451 573007526 993432181 199571176 707207529 157990060 201426656 772504322 847230540 170675460 693235062 682610918 976204757 115024169 981276453 979347866 982455657 68593002 491841323 25546993 547713477 376060898 934624469 800528729 921716467 564256860 980488574 814718226 858179703 917327315 987973026 32459362 105490619 401567854 455309038 748599932 871089518 128831949 940901049 490760742 842418919 664872404 792396923 223735906 621838898 881548604 889661587 24009962 668264530 773930817 812069231 691891541 757526845 976776193 980759945 878982111 889175449 448995197 782241394 635694704 938529453 654821749 771858670 45958423 71382280 371079469 922748033 854179728 968012839 145267256 985024787 562228581 583835854 246524723 328739465 749688753 777051977 868742671 977639624 929613962 954865377 712633180 782338705 780815618 896585340 153957671 873219346 258192364 863149292 460008973 887530841 602918107 961430664 157055031 998026406 317163470 480012008 354821209 447352727 287602918 532581406 460020673 506911741 175810553 998389662 161740866 312377081 616164744 857007170 845382873 910085053 714825952 978317919 640166644 949758203 100591460 362726511 199803920 205936023 322157364 644422087 83604195 126563708 424776524 517417401 725028297 908567176 46651186 896221974 94285581 469175751 12460640 87057933 839700073 911984227 693210164 843200616 52172229 267989546 182556831 678017004 451211193 570125383 547909429 664681466 912937681 999756305 607612300 723823511 231564719 845180396 362854083 755992215 174362011 428681712 705659113 915752846 539956 227505746 197582095 458381923 486825775 618381166 6259018 85251834 100860073 767741414 163321849 425605516 523246033 599469591 549017307 613372059 337963105 460210629 227584503 352048056 639429235 690731976 22181081 529422163 994129300 999070635 801274584 838000715 278515405 520599215 119527182 745093490 598662510 740688958 279823445 290454981 904485280 957389144 687736832 889945561 927934599 934867373 747445112 953855738 425591221 874741771 203774980 519937430 9820327 834969838 722435766 910415976 9153420 747634940 841559102 952306477 682355919 704364808 983136269 994044404 67577347 98953683 825444810 976044078 98445583 178949203 67474731 263355268 282720366 534118448 620217788 727972043 324806016 464619646 334127369 947588593 467160804 786501497 90774843 379026372 264213420 501777201 226548182 663617479 648533364 703135204 167368721 387248269 223603708 707846984 315338148 754693943 334992338 985299445 703666954 743862707 12332535 220302076 367598494 540939884 956319718 976372260 440831931 663141180 865074771 886937934 729023532 873490886 724306147 851034845 974264891 995726743 132024299 968820764 509447571 695316191 252919687 391220964 334334588 965953198 500823106 759600140 696093385 989803195 392448709 469103313 6295727 832961207 452232274 713091734 193553188 691557506 680408708 877319071 864303042 986985115 364936377 677573492 81808687 351487132 241830282 460689811 208848727 824380166 257222258 363668245 939792724 977739565 415873528 909382819 642740450 990971972 651861140 753528364 44409690 241824821 711553409 718266830 191637269 775047711 435519311 802732753 945353855 945958741 481716756 961744904 265534732 839344112 759775010 975173315 238838356 271857387 884718586 972269195 266216303 572422724 773000295 896044461 726759895 787248940 89126732 327402630 443755348 762950957 313799693 355923719 123034535 580686280 149922552 449955765 240513449 409433242 485097662 929482512 644733455 807034278 163631381 646737141 409954813 581788283 616235275 852919365 658466383 874329286 996628829 996891826 456759022 631361472 609164614 829167830 807786622 812766329 526128644 730962990 488533017 518732794 128429086 381066696 503023609 622462461 604048696 692872594 856912868 889207737 358853405 722650515 873025128 873880834 219133338 933948714 387961099 683434321 762317559 897368149 615220005 761094645 802136884 934448578 15510156 150056855 352583549 422775149 949814515 972328773 928106743 928142112 420175000 862830938 446169273 793191534 313988431 829579507 11920886 835882973 735405767 969317129 645202023 955865193 367997152 896648476 290552357 359027826 114924173 662004984 931524919 983578635 801410262 811894597 153289190 959532236 820024442 938354176 789319510 907543283 359032726 443485347 59756028 277572607 531040997 804065517 209031992 989336247 379175234 611980013 475126738 835253520 126729725 241536549 19955374 307812107 2314521 497489800 175746542 756479997 345241637 495627591 482174380 980986754 272801076 364734164 699449216 747777732 514501548 515790901 100298195 194300157 708852326 904517035 865819872 870420982 258886301 269097314 640350700 924760621 825601823 944367030 235595084 680213001 178442645 231963887 65911050 554745650 741529291 838433974 237197127 644352421 648433693 939697792 42819371 860702266 794612340 945658885 362863530 678295402 865542212 900121625 216245096 515159672 56586708 308162434 97954928 765676569 992849568 997259306 563639281 588013178 550816247 638428956 154660165 901352075 669802815 979564237 962042668 974466389 303667296 689170018 803065690 919374576 326339128 595410868 709200120 779790548 829139948 992367843 74577666 918934283 12837559 267754129 576870586 957289987 877200204 946675540 757369191 991609018 7879373 914544924 926295539 948662626 910726795 953184097 269561141 510029941 305679614 799709273 160104000 602899732 764787902 992504512 58470056 644861423 73139471 317880362 390550093 593700083 499343588 596733100 805170672 949446583 111763461 550794414 59803368 347388603 316789672 794826156 179253332 496244652 262271910 407782344 148832020 924011708 112088492 689759465 879368789 954814434 443042690 840095773 477230901 655810079 835352486 859893024 167537194 235398519 882398566 976377951 416731545 779269059 709601205 709970669 25292935 207896846 202563673 280136199 34988235 153792020 961023317 967205821 269092529 747071957 183831174 383450702 638608262 826136692 229714276 422296143 265085413 547908231 296629211 716692585 759844931 963244888 378103789 813640990 440304216 464175363 782455097 861711246 588405642 854183589 485450610 903570217 198219220 491635146 602867287 965832192 6082038 584854441 666070285 760930850 280289791 519309555 32880707 310508284 792744731 907273978 947497909 959601055 894002508 902319077 38504970 586236262 808226079 974823111 562692538 902541710 458904274 545908764 449399524 556316223 212879019 246391607 274282854 448276001 884826554 893601425 857675615 861268352 77613023 852437496 333476425 873822893 843497386 966427585 376192361 607366461 849007696 850623369 597566239 876395413 820697072 920684765 358655973 467361377 995368143 997589407 805135165 975965230 94843704 824384491 280818108 838108393 275943048 422590363 310661796 499345071 825976465 871482144 924486150 971361553 450334300 704562484 429411172 557572690 184345858 229985458 490343233 651837390 360022038 549945339 877279331 940438751 859010395 863717431 33001701 463599573 188472682 987067716 38786513 726730285 235572460 729622114 677642166 741510795 792193916 852217093 512309585 930021521 131668466 918092596 422847146 771163085 487095551 746095979 693113722 971097619 652140420 916447967 194970094 659058425 950407990 958734524 418816240 481495592 571730475 850831686 580603973 901757860 117644930 554276353 278757273 583594162 988251295 991632455 621253064 863701324 11728532 198691266 403137362 442244338 839117898 917904237 728409762 731738448 551558294 859373407 20592123 322939496 621304767 960965773 102589146 677762943 352723181 543039707 148636793 311672311 341192727 771276910 308665889 979456378 91506111 799505234 552146937 927282688 368121109 432074029 714259564 866484258 343406659 434652340 469733901 639265624 303593119 555914627 287605618 956147512 316686900 404765200 710242134 861086263 490650744 646225604 126061409 641383859 404292167 509457923 340262013 682016899 297178949 531121157 864666458 989366228 405741627 895955923 618118089 816327770 322731438 384204279 868670528 903659284 810881680 869481282 687778833 693687115 556160141 906278958 590454702 947493239 703677698 735976628 31167628 989839865 868257390 908353316 409493987 778676804 534090113 996931452 236070327 842678055 987843371 992459677 766172727 963434945 742046737 888651540 750994385 819710431 970862284 971184518 243624800 958486990 832433043 984536584 150754355 989379779 382025375 614998927 535053028 885068571 90709286 155677772 766240593 848000420 139119481 842033077 442323536 990353585 368189167 396833123 146985362 335763661 620573957 910310615 907327574 924855514 510076547 890225747 207482644 590464077 418856410 656024282 298708050 586751378 363848433 742080178 911471921 915930571 101334675 234509100 667542877 986756653 550336330 581755105 516421815 578196292 738670964 783647166 179157062 628578139 12178641 268071306 89125777 565350321 781518401 810505436 575709703 999322326 635664652 684598553 157277565 302962640 425759279 727755658 637019034 695706475 986626424 998798144 546347542 738470830 739815302 837960290 73515003 690529953 708967004 724004168 846302658 957240399 824802545 980829586 120520668 752485669 99298280 314937486 323153731 976336072 720777602 772417297 934416961 984055414 774338701 920561440 141389682 289453703 136448722 512222453 325881307 796288581 638945706 668809509 222312954 730257151 33898592 608377565 340539660 732764233 904551816 924806246 25578374 206198697 802634709 809843938 146984071 944969068 498163726 954979872 765226487 775345652 270848688 338693585 908505509 987767642 863679199 927154610 462038346 948601069 184490164 903243350 255009214 392176508 286522959 800036694 401522968 706985030 435762981 639158715 45287120 449525345 510710075 689081305 949834159 985267978 338919643 941295503 758357448 831533711 499919340 680337160 840894403 879804467 721052663 968693524 227206639 621915267 328716892 968452436 862635747 937833782 664921534 941165889 31577158 359210575 572567365 753902524 28252853 433138080 508130712 577143962 841792730 858536056 707719577 892468143 152657901 813587739 812236419 838077889 483010149 487453736 547810675 717403415 840501064 966550903 940698463 980911467 610462369 882677529 523161595 548691058 153101086 502920286 394585392 396629158 289201296 742138167 250277950 275108933 365829058 963237729 328084593 787365535 263890604 809677229 624262536 893145222 379425034 848233867 473484179 672567269 338429051 361161039 601861452 891311484 349293779 698266846 18204163 885683728 245376729 821915695 789860727 910238615 176152101 722388082 337047210 674270426 298892678 424369441 771032170 810097972 315671225 776038962 474350934 684149262 743303368 975493651 327373552 395062333 390117364 412435824 204943573 788789616 344242696 588672310 705259227 789760769 434117663 892378907 72200634 548892304 759015358 784361357 499595287 851027323 372116868 869828237 405815162 693844983 57818069 125852639 44517417 886933652 697950431 814365128 608382164 933390477 517823765 837680441 970069910 994955003 370754451 635813613 723153677 727872061 942749128 971847080 28744467 37478107 978854906 993243400 849983643 966294363 807307886 892358899 763060387 899701602 11236539 124601984 219557044 289377135 776894667 895120037 669934514 993631260 232999397 711461999 842647670 870046911 673042730 959472892 73079767 311267273 377543051 810780470 541242151 983925076 965093194 997615103 158742305 877999998 252722210 638464124 440448735 512281998 238471849 945764943 168830415 555809581 877302495 914319814 195203219 257486529 780018307 813073769 199267527 465205136 155184962 448280199 524197520 552836418 699153598 751965839 195114550 670814007 498382038 519795851 710831758 788803507 407326030 718316594 307208146 935147779 192117854 199272977 706936587 796021873 33782991 599914362 35821238 329923618 114513010 749998206 551326006 756214670 203882614 446625359 151550895 173689408 193928364 940353069 432482932 909748996 736431353 994150055 381536771 661481994 656117134 800465069 897628580 911623640 486825682 833451040 163551237 988792473 854204984 859907936 239072773 667654456 190141226 398030374 270310188 328902268 740399348 863326452 943098144 994233003 910352457 963512438 273469535 444057704 696854765 773410973 677652155 992340205 463853577 963675454 790664339 953894345 495574803 799790380 962665047 990510395 276849722 649450312 625940943 947596455 228778951 524234103 243312862 328803821 664735073 979517290 828761111 954622401 995871573 996776305 671039698 912867230 282072787 609166851 494580251 739417074 163330032 800296333 476328653 969640531 501146599 548240010 241956525 734284648 255277484 520117487 135458605 642853730 121303559 771969299 953417386 958319048 447074733 983163474 776911727 932749137 40226236 233998988 172895191 897262103 687573723 906260589 837324744 902320364 11713598 464375901 384078710 830444802 131566529 711062193 824087629 834932852 786023204 833460437 764462476 813953639 527486103 555706711 684614615 701488560 117986825 323898296 915049035 996054323 626184359 919800870 997537919 999520431 164348473 619138862 293234607 617581080 654466188 986176438 292143985 815329699 481895120 617655592 478253713 507721478 454405099 709721731 501929551 711840216 995645702 999744450 808305187 907197194 196198159 517628334 768819500 780427558 408485957 679424269 328962170 916943235 611015793 960464140 899024216 945983387 239537298 966965871 424987514 882788275 135284834 313895544 446876271 887242845 85986628 517419969 481406136 597791077 680725129 854282733 111961663 883340636 183474295 427800540 197218936 535887024 273105619 627145494 205885240 391128718 199432579 859355376 706050181 889428863 612152262 730006845 279177585 726742806 717349024 741110832 869380377 880460325 446118841 490357111 728499977 751886542 319791095 484318806 953679717 967767141 935011692 994020522 764916820 927259148 227500524 900810430 511994034 839400536 307091628 935444830 853951497 977847453 142313054 156404962 74903117 952260234 484918131 758730009 364872226 514798106 215098971 638147693 98151183 337542425 985618843 986573318 663868547 665758122 960577497 977436133 636490702 861348504 488576089 543556895 633463990 727648257 514806181 783428136 458928375 563693356 831624606 965194849 41310888 800142796 856755737 876514124 700740471 997182425 136886503 666717922 237728125 613609352 437664840 725452342 637322923 970391376 224128946 421208436 212491022 719943104 785704648 979246317 528709680 906143393 274403491 851538431 165211236 266570330 759084438 807797465 304685651 630441604 641426226 713515718 435069083 944696794 843772514 942909075 137370290 600903766 608542913 912377184 899782987 948285301 982249350 990380360 797790796 880941725 965659062 993698640 400754231 512230897 718376494 996842667 998111708 999480750 827495952 906466320 416015660 609459891 585730195 799396958 283111155 630530142 17656137 457380075 145820293 579918278 590990896 966111421 871466490 984235593 49129667 535946121 75049650 748276861 670227056 806184753 224787547 884301697 650218157 753832519 732943314 749495854 675761658 839935069 969309268 996113812 509274930 852910646 362230392 393911247 301380932 802604361 715823344 774453733 929833774 951250754 213161181 864293651 433912650 729325336 171180544 278274377 89036845 970558300 909816633 958443342 809711909 972840915 250494377 519299644 155464026 266183548 748494267 944136016 737545813 843140112 29591674 490286799 783867474 953976320 313993446 887369529 878273355 884782900 471820964 909992218 881183768 919583728 289365288 699369299 484960438 896939962 954522581 975850879 778394323 802663350 241080361 356456677 972166666 996386951 451968885 919680926 717130789 758627298 104513471 834221391 852581198 925383846 991926982 997691030 478164643 979680061 597586214 776181148 830067839 894095804 798187210 910251786 372125825 615316487 783648645 915688832 395436372 591531078 81645841 474897250 257552427 513473476 552104340 696724384 769727560 972229283 494047984 994852149 742696100 883289593 490069736 536821759 377575119 887823814 507861389 548433534 257045726 496235986 820164517 863310603 327673901 923626346 211774770 685101297 558628809 736672101 47195725 250263886 713955132 997457491 996867897 998618001 482982626 876981890 52267809 636673033 564897556 719843801 833643613 861812746 253032322 680825489 688081716 991916324 622243565 860378030 523940976 595361993 859881808 970787336 78044676 896930365 624336579 880749883 995768562 997403022 42696503 941801408 290374910 893913127 489843890 806221293 621608043 654010469 652584453 733707906 633010138 690043537 940705299 958193678 959375253 981004420 660407522 664180157 843387595 856758012 470028288 962630782 982456946 992263288 810620590 915701584 38814627 425338351 739673206 769881877 135880046 291698763 873788769 903216538 840102603 936698088 824859896 975793147 268854124 313637610 985307378 985823129 813205807 829945147 875285829 876919262 908648996 971963294 702171650 836747157 295007124 976951823 693764913 918592911 476070868 498912940 509303848 734485542 223414567 427985996 209065566 320115549 161855401 996453960 111109296 790050449 568887887 582584884 809256848 937405767 498242056 668292774 257702588 917262464 472930775 484358657 802327057 955794814 494913305 982760263 123694368 863259496 250216297 362739260 403717511 678742347 192936834 640124758 999663729 999934930 107016402 367138596 241459024 761317117 193063165 533872321 845250219 996514955 378279436 509115707 373134545 429804485 130057085 994710402 431548566 529600480 321642428 903155728 308449268 914905004 103310120 758595931 525120628 714814119 958533441 991845422 516052873 530110165 693038779 851312516 834864184 862929272 842820926 950944984 973327470 987994188 683949822 790963797 93543601 146641220 465290667 974564647 976557274 992015408 979402269 983767169 140600924 328835843 935534030 943473381 480431710 937314830 833484170 960897928 901391365 911541231 17795671 527258908 19246065 124954067 840162829 855780441 867557461 874935490 537973527 718135605 232669367 975398777 360881130 878552566 928215716 957328771 366644771 963729587 904012524 950561574 210608372 753131633 55544831 247208472 480134326 910354457 611092239 926870073 756506554 955830332 210086775 694355541 31894390 948958021 310406887 665964721 298691721 442761177 821032160 844433999 474914555 586577426 352399914 620198479 413627112 679034292 93073146 772097306 783900547 922058682 764841561 891183871 546903058 875521162 586023497 744309578 60486695 405045736 687323023 910719989 661490460 769376326 733254705 959555084 469747336 562664120 292545632 701914832 141952902 183611828 225255467 574988847 382998359 463128212 876394432 927433686 281871031 595012868 795838898 937637163 573480270 834421937 902624211 902840742 702951642 824836381 218582863 382647724 170792945 796439583 263680803 537636640 505557973 697892790 358950658 736075000 831977947 974424067 267836084 796763496 188443456 419480650 951448587 992335609 109392625 149996874 748050960 930620076 269018032 331155419 560564646 973865790 130472046 895304715 58388692 265669943 936203580 956528816 867195752 972716175 607568362 880439543 991738360 999267410 332387329 532379752 281064971 738001332 168787036 439148984 143205893 362562394 271338283 347679682 17377500 492853219 575115660 776801302 939487377 950773761 885889576 898702286 502492597 536042813 202798054 339348655 161021066 937248997 110038872 699435467 56242984 281711324 754891799 917277918 311545494 633926773 280329117 548446315 911983625 995688238 262597063 681507070 149394339 405703305 479074716 967754182 991517753 999384029 971270872 993178328 288422704 390006770 381427643 878378483 652156354 882058168 441091392 602290831 931779139 957804684 375578323 893567250 482159600 858277278 721993786 745457334 643084523 833188306 619022361 767112301 813546027 983091191 928798904 943389692 488102524 753744181 709275686 762078415 814205675 962640355 69033588 543446319 294497664 540637776 801291127 964808714 55554414 302368006 445758083 703005402 756823877 770528344 377504747 821704585 190032940 433252885 996332457 998353329 273917820 964038221 601467843 827939575 658027304 860456306 341730110 845934504 580829818 925467340 430438055 914780356 471717449 544945712 377423771 525433883 687185961 690950443 107843312 180276797 709428860 847231398 32517290 885593951 431240311 902915637 871784507 948386417 83674092 865748984 619663291 683390947 599752155 745869197 392768049 665678812 18168408 286650829 287983710 824578539 336128486 696649459 843418606 999728693 440442680 964015449 330246038 790419739 162671863 609645073 49613652 911415023 941761641 970266580 625918547 949654733 968215915 984033448 504108946 879522194 672448823 992655612 154048864 210417414 883164848 885510214 856046845 905763326 538555766 604828352 269641970 475376539 967034942 989457641 913271182 934811641 361396597 965025619 405731330 633077223 950865742 981939158 81430727 797574744 543700861 757799594 715686654 840281699 726117427 976987404 125648585 889873300 519714881 643633973 189053792 197422990 132756884 336759118 918085901 936754195 633761026 652363615 455069534 816113696 418187547 481667738 265968256 797986228 14688506 115220780 582853558 679817109 984529846 988431048 637131039 799861659 785130856 818768638 192293866 755635343 807944060 973761624 735687566 869657965 414127445 618083251 316955590 349716425 736600784 745976349 183296360 250677230 80953259 559263945 613058664 688896354 389016744 510975819 305587345 901473091 328158210 942955389 432156627 552715286 342616264 545818360 871083176 969176045 597592505 681840074 240509401 458180377 920639101 929899637 164831868 251850362 655117850 978390466 236791873 331061305 845747545 916164655 466979943 662374528 167561043 975763697 878686657 953816236 217735237 986127473 591376705 666382759 595171073 769433337 293504886 765470098 804855657 917855812 912738208 996603435 412731844 429776858 305696675 651863302 948657588 971693424 354073840 386241000 456831722 554812892 772975974 861567697 869560860 912207957 848339506 865339072 274503075 487201568 579238419 734871621 245565301 267540597 643436123 937717127 694815072 755715152 428822498 727422357 190670000 976484606 523588312 800908037 999819022 999830469 252275177 904148265 137554824 480008071 59776866 771817278 212985032 504970608 434219233 585200684 832695815 940415638 67337785 946308093 176784903 645298248 566137529 789798806 406907437 915863905 624308261 928665107 711110504 803604441 320468539 711115340 442902661 856604545 972762253 973721088 743979913 850081634 344730345 664531888 87375297 233590807 280413914 407037098 957506058 978643412 633969841 866891528 235168765 582235693 165658688 633197861 171843226 604494660 768307251 961838020 952207720 978363161 403349919 631067509 321769414 764181490 292939845 856603008 86168354 659282941 562245939 574974786 470714747 928917049 677594393 835943422 706502810 831729056 220855350 762949646 640528409 985188796 857942863 911325056 483427933 488949876 282729932 877987875 510341681 773917932 109829945 301034358 894578966 999259740 270733109 876516262 534127080 541805190 213031706 681527127 988941070 989923550 619038647 719972073 387190183 939881905 201081472 496662615 419883547 944354605 859099333 952981917 730392983 764418184 534791420 905803791 792306448 908073747 500264911 840924800 945625657 999082026 907628494 961585811 835145112 906452520 55077227 650021546 605204717 973024412 839770926 871899653 841969243 967531420 673535324 838113797 872870436 997350309 4607570 235136843 112885129 973476310 892321666 903318027 30333159 793407762 755998064 939799607 582406746 898139362 406302526 563363109 132823363 928853104 919454253 954746454 666375206 710448102 486114325 548632672 985666564 997660262 190254449 496571326 610990056 634352391 144640143 286381834 789781617 790129841 73642518 328559643 251793463 303451884 17678391 124479434 747785132 904111789 277802600 592805461 11433402 779995165 16641591 423058051 208264850 253009059 894459250 962370278 541164920 821569489 228617955 413190985 610444216 770513181 372936254 754413824 720485225 884038938 795933962 865770814 105937186 908130307 878349926 972146006 842031206 986105440 575745857 858830309 481552222 526731075 190371001 285101337 904882635 996504716 396387905 885995204 258977665 273209287 651326485 739088454 415563391 577085411 50021171 252014287 936031219 953859504 468844599 833673434 532669619 646118781 521405268 784707518 179400033 507993990 453732181 988581064 549603763 976799478 815450525 850414166 856691346 922456719 561925850 828307582 22668919 374322628 707809456 804911704 998952000 999438813 410514756 647836607 386729535 820123466 468161122 855019798 662920572 857807763 684464087 701682073 406709398 728486184 814659113 977093195 555083494 871941068 643333341 868787540 599667684 693438676 267685031 403854163 838207778 962158090 313625718 720099059 839323345 883414053 686153095 918208563 971463394 978563601 449538092 722973222 671012123 873592214 882316928 905193668 844838303 896485881 230827772 853945861 870742112 882622792 620452542 850463581 226162064 817082620 718605625 862930914 277819671 491179119 733186225 995505445 907814555 998989112 889087752 973805479 873629371 965897415 901545916 932793609 674183043 952778846 761704385 799177270 787082683 933219185 788589716 888768741 607385422 619163580 912094698 953728490 745189321 966802670 642083815 806339328 220998683 850331036 803079292 928066697 725478338 781509901 188424627 779625748 100976629 178229697 828191733 863203789 622896069 953850212 504742201 609208791 347463442 872317616 447474678 587568059 39511671 901096658 286544072 998444499 368673616 417596994 393133238 707240857 557229830 569926864 792226068 886328127 341115078 684964479 722961395 745803744 622652688 887537678 809065123 902762721 48231777 709838370 277322337 947634477 560090543 602797760 244389047 405245884 680771498 859781746 956652515 977021917 501509811 820682742 568904370 735613849 315023945 666218926 967035116 988067836 735862137 971133748 138350259 993632453 249816093 643353048 183088764 337307634 518926761 630388940 271159783 355926926 611743377 724101316 324395975 551128906 243408167 957371628 314182263 843625583 426864019 693913040 106607855 263206465 258165123 264490570 41323180 823675500 614942060 895974469 907045072 967964767 386445397 883836490 44309613 510110651 217671003 983223542 443982663 673460613 653215966 814749308 687348539 695309033 515946525 876795431 680627905 932336589 210797945 914502935 811956272 857787273 215324171 840555639 129389952 865067780 952774173 973468124 691329156 772072946 681293092 702783370 187602024 846095627 145117077 707520109 475742723 651518410 934794168 935428665 639800490 839877824 231193384 292286147 869635914 990929078 12266685 761351535 97486818 127762658 976055322 988439789 746741543 859796727 29471672 657015822 291946272 784412159 981949977 982871214 506328010 651048779 256698490 824584784 228218161 230137846 784939100 869193302 644468395 821454817 520334043 708535017 476012224 959159721 517780891 626102372 381842954 657182212 832525589 869410073 54520741 845096616 859146212 873567001 919791393 971924459 171896411 454050044 846759997 957011113 199284625 615638601 483742067 705049775 284331669 610347983 792474327 955389574 666494357 854971239 8693112 9252553 899209759 916230909 806000367 891439218 769926329 835975387 335852093 802562678 702228112 809450955 236172920 485877762 65541439 362864057 669864353 721942487 242940667 441062016 502027292 566356718 97639147 477977509 231713662 659615474 311929297 714318010 348026233 731889643 202400586 826730767 660173952 797722431 111482837 872481857 514258791 586596689 68663593 478048087 573116566 633255035 428558028 797769552 147599197 883970715 881148473 980791589 760543799 989423737 746001873 762715259 498060304 516998627 414562861 637596244 799067311 924271488 296874452 672768526 498135946 741104055 55825252 331342194 690451596 773065564 430786216 472354501 880351714 943422675 272583204 927777254 735717311 751245091 538616784 897133111 12934258 901343447 554904037 802769798 685132990 812843108 929625882 989531723 748745383 798920464 763788655 972242788 940299702 960834473 66372293 164021953 533653416 744355260 688028139 743795621 662846896 996319993 589217355 950024608 584644095 794769499 807924075 813576813 42136690 381689599 627268932 801563884 454501258 853291071 962764295 973499621 26550723 951769155 532590628 975342013 277285040 735705603 572813154 907236679 250940682 500080764 99649593 209882082 466761492 579934517 656721320 743870906 328943055 858485666 353790384 845980271 96687861 934914640 920843564 992488505 720827106 787770638 282252289 522347838 73762561 960357110 306526697 645503104 310140470 486798603 551101727 982846391 337997527 362135465 790649224 920968043 162438821 372660831 83802891 823794679 823030354 987765140 979303597 990572204 935421680 949789170 690728101 986594559 820209904 842598442 674921518 854260999 170770361 903950427 79458309 571958867 264142997 295849213 465185956 678138094 634625991 679843556 222016874 874531923 721827582 984747371 916003949 998033508 683511656 922713186 880370841 984745339 558270593 839970969 182508436 986526893 54155613 473286957 517216760 831922085 296324534 647084248 217914780 273598416 729017869 932641508 844245592 851185324 27946509 720525218 357628284 843015129 954808900 958300099 672307236 986632946 102454877 701462747 459965670 619781361 173325646 389209485 618983599 920634002 560813501 988346150 920173092 929686357 907935107 963996095 168738526 987468894 810704982 872697643 777658929 799591676 166731539 867093981 604270876 906484919 959922453 973379537 305273392 364279700 442252663 871189812 581806684 666462512 258302109 507541278 671878923 742771146 62898920 626659686 197162258 837874084 753766057 791742296 328751119 368037009 169805030 582219824 379775844 447613802 998053031 998739470 433980633 777699531 354168581 921962745 505938332 977513105 622321833 931356439 685718586 766422378 285092383 942347614 74985779 922203399 51751461 470950771 460555290 950786082 102295480 858903284 899650106 973297550 564212568 881002040 977733588 987856219 236017861 899003684 572548464 723895872 667366156 673721616 387373822 811554845 61440873 185748357 392352074 755923840 595071337 732140051 67498931 593238234 885569384 983030180 719882117 990620602 520850834 974302289 176233544 856674639 417609801 805033277 45359816 115482037 723199455 917785509 347425823 875800603 654745525 964212060 10811572 228003576 946028358 956350799 168028434 606709275 350447335 708006302 51397413 809191946 365248647 626125631 838546643 887214898 268802641 300429647 853345015 934435303 975487456 984359463 828307179 908768830 124198085 553579259 57581950 308337979 675988181 960405391 660271803 927556979 752810313 832579512 13346163 504805626 771229938 789406281 996565427 997925711 583481756 656693286 62363929 447151603 273953780 296902273 287181276 419065634 718366969 768143818 771398861 876659349 500959614 518392511 366351944 677395628 591801190 752585738 614204570 705004978 37352018 851062272 589703807 877464732 610042462 933899543 388752809 505900884 732555772 770506062 565011530 650057462 375103556 687482687 451039432 542621866 933199448 933574872 990891838 993676886 160078975 306420680 649035754 786886797 90485610 852956991 54656850 778974523 437895437 761538116 185922389 767255869 196902634 304279478 90707665 435115510 718950618 988908480 997005533 998718177 650132978 728779831 821870562 980461925 746150927 838803076 728834077 962501322 488953606 837246080 498876987 941107384 643750465 824014605 319712352 678874908 171485686 838046946 228969664 346147076 98817711 890487685 349693100 948180497 459255547 931239641 455333199 702168253 955983449 963613431 788597172 840529982 386619073 794662472 331333048 534478323 954925141 986506551 929448871 989491286 318212235 395611470 482524658 783815698 22259022 951821925 229754767 316386790 371276029 973152264 826621266 917055132 721816028 976221150 814264047 985313874 601902549 851738066 591632242 829516265 356028538 606683327 707445127 928558989 712618625 740093531 826409625 910247518 905992603 911882080 749722884 840308874 675141370 938409386 565282231 957603164 661066024 806564378 402666196 924072546 855436870 966982169 616653668 694712647 457704221 805322825 580898331 591056900 975144716 996966532 250744792 371620326 587580865 698143305 993047230 998573827 923376531 963035706 700095042 931060412 541868128 622484135 679055853 865809722 950808050 968094365 529474148 886886292 604384122 854763938 803679222 950039063 671449798 770957822 20241263 91853535 238878107 432239584 627997647 786024095 737914473 904793763 106934885 302815777 182533828 555879774 594173876 939799167 276240146 891583024 458661851 510439598 67794722 408477413 278410505 322597552 220547620 364377134 858750201 883189789 452032891 709434529 292593117 832016548 43491540 525274567 57424488 310150479 447130014 880039005 20933844 205402189 543991473 753680797 988778009 992243207 927596901 932226224 109178486 474665226 273422546 456196290 455934884 572540788 648857606 986189403 490594539 766796633 742353732 841071526 517037770 792613158 698079920 836152379 500223068 674885565 7670249 230922570 195906789 569191703 223552571 558169480 374733459 715457501 691953434 875656265 807579026 862311535 93234958 455930779 152031722 241855031 452411227 666111411 976629212 984902154 322531154 391284836 482716727 614035372 128609432 752637486 293150463 638203610 143615414 213117993 933452339 963516301 844646477 903679383 287696610 480178736 469149882 659999332 945687353 967953506 458898409 632412212 407898141 486004428 606880968 983469558 862643872 875497087 831122800 954421381 391596474 893584053 549816691 891274136 500568554 924525764 600655365 894317012 701679128 985576470 305415211 669867061 889807046 918268194 946350372 967788114 696014106 941617242 22204939 957416450 30626074 635297314 199820372 810885229 943030566 944249677 273593084 551832860 693252053 781451311 80939337 247519718 308513680 408696623 196214100 875885180 554476905 819273299 366899603 892164339 928002187 955849969 137515265 242989119 392792440 640690278 993151066 995442320 440241270 960722530 221700965 329045728 720541608 962514704 259596148 980831268 699943590 718546073 211949915 260052301 317153476 366659145 732428196 882812294 19046026 738993840 981292530 990614023 959948937 969139530 972157735 991449953 315763976 630659783 614738344 950608128 482731956 581467979 671669586 711623723 406013383 784910856 231308515 624966698 467746517 636972335 342145171 737160706 216017306 344163603 60743643 79002635 34815903 137374916 504980105 809111978 351601143 907300700 342527736 689726996 243255255 728450021 779531903 900537817 471527383 879890820 916013245 961705939 353399535 667745516 847715005 967952808 937842784 998695369 103359198 645723146 483451077 795577131 432668593 637018321 262822175 406033341 718877337 745968549 429394280 487495390 618538430 918788086 964132150 981836523 141431355 589574583 44622537 528470538 293242459 858739399 575568396 980624249 339471288 556499088 964746586 995839176 882578279 920685288 217390962 334285874 120944731 715391207 973442135 974754632 535918802 782621235 866726341 913993685 564939316 683866712 513311951 797104165 456674912 646771151 305994910 925153301 983641116 984720812 134303547 167559667 102693504 746342433 68611046 938054672 474875921 491547835 370500804 544719112 201883915 702264346 367151897 963064730 26626332 372906849 556963925 842099128 259412264 782148373 402083389 510823152 15103462 450510594 603898538 724980506 114105659 232493328 736445104 977416496 442242167 565529722 314845456 619587458 957178935 957938568 513277179 551243906 472526045 845193737 385461513 430132565 432732923 493860825 669210450 797574200 808998478 979548194 491497504 509303298 756420960 850076018 972422712 997990337 913050193 971489758 969052794 994134471 326118406 839245664 980459102 990365819 419857307 826558212 697897600 714010395 438608712 875376068 764824721 853420527 717053007 998944343 451317982 611879483 497768065 504388920 827049954 954866443 729865194 784380384 142231239 328127835 22677182 891371404 161481406 863559036 767058290 973163206 946660793 996141943 873270075 962507859 245178413 723547539 786528417 818911493 740738124 974820270 946173428 957101351 750974903 833087929 383596741 398452867 758357053 763242797 903305420 972985060 534450586 557272454 291952646 473557784 42969511 324363055 30005579 793842463 542024359 873162199 962731023 990372119 577943889 837177362 880301571 931626925 59660394 85218898 381429007 482942905 185238564 269386616 369860009 951296127 944122071 976430993 757297378 895671141 27617802 36713784 172666485 180821310 82031872 99568193 432503936 813158878 118305532 266948679 628617159 687559398 926025859 996166076 761947258 897417525 111327424 708447542 852746174 862328368 302693036 689893858 657050512 847366046 306802380 505467323 31440636 832301117 691342902 810979052 816752729 827988122 289281711 871218555 88629378 258169293 885522515 986795495 647329852 859411560 384797078 677385134 511965100 795246438 140442039 541504266 324388611 348585883 853913176 891569902 299440546 533130848 800566713 867523198 144238804 703690685 191295992 887193167 249279111 734990416 667848842 866341607 397709197 772881542 593247611 628767309 943653493 962467043 140281988 305396815 168676806 199196216 247351386 696957625 325781531 399699625 112348815 764161057 275585622 596298931 181583679 933826515 708283201 976789727 385507792 999634985 554430962 603785728 702371621 963412827 890446041 912549918 99854615 99918481 333483022 769562638 980157302 981505723 93138212 179294638 550418246 973301917 118564022 222694658 430967676 481450644 504697591 765637667 753746094 994984082 198815634 594888179 427165053 832737051 575018119 796774444 246892953 670762819 34003210 700168781 224223285 550455165 476661942 915293475 159776008 824984310 975462335 980730137 289149300 595645965 403319881 801148137 862269475 949012378 989651801 996582036 777709829 789187254 582427469 910675974 840015382 890718808 993733667 996311654 492503549 957625734 488411306 881738518 118974260 131991360 124291984 872486656 831656241 984343866 803291234 953946076 103461480 502629003 105127418 369755697 981902704 996847423 168415831 842774790 666551787 795240697 741560599 782736498 656843446 862488113 246291487 719112046 3208301 3929768 418250464 766912489 283212338 922466565 501956412 957831728 43297566 88076310 73188991 426837237 675436747 940078515 407794752 415966846 516489474 701461716 93688668 776230398 706320836 909193733 730950340 983136529 368712874 536689235 491586678 840823991 842109092 901013327 633796953 832361328 573991438 807442735 134107482 970849335 125640911 422357354 203036696 364349926 926401329 931036813 600117692 815535058 915977247 980746282 970278440 998787497 625705800 981847480 559459414 859459121 442750434 777360454 59466819 173687244 766893429 838080788 81494173 279590105 944253579 987335497 608831234 956937598 494262424 972264260 326864347 845521810 146727177 900558545 536777159 633410181 196184792 535913589 598761036 832750730 731808951 802610044 210483220 913970738 91144206 274484779 17409804 224532317 726961619 920993359 363983203 535036113 176604131 754290277 791454063 951983764 127127666 160875814 915251430 922714213 852135027 916277053 186261716 705506597 817435230 901937281 396008151 736668240 360271275 825978348 846278006 880531369 880925112 951774072 905167932 910758617 218312671 256750243 627498723 903909398 665920023 871196362 613580350 941389114 98769810 754767538 273920788 728727965 307230275 721356881 337743610 933312817 480744980 821306340 599242602 725083166 778562643 992385827 496670727 645973326 527819767 547346591 698184141 769643739 239495480 578616248 309450269 425091750 622332238 777684256 853039189 953494641 375350927 998891780 525362891 657589251 571653783 912845731 158657045 284203903 961624606 991629939 375264322 378034658 996059751 997693300 270611419 665820138 798673246 885164848 675237323 854215809 981137218 993419379 814269119 857488614 75032860 383018271 237723163 618306789 646253327 753574119 92395144 376838595 1910631 999432723 313380784 731668802 894552549 918004214 929168558 981190638 304095683 580585110 242926611 759115441 317251609 795550136 77583945 510261645 414691677 638774827 272587565 665451610 318768610 422139987 447362941 480525349 449041216 686330804 686945779 838688442 597183202 856039286 436153788 639412398 268887183 439676130 761926631 888943470 313076162 505925515 412008912 609246271 156797851 261219128 133541518 735007691 785761654 919971496 436784461 457401723 945369346 963752801 368931964 974966053 770501993 839590634 624890304 875524376 334195458 661610801 475939457 826564111 694006191 712336416 123211246 847540016 227079074 500518797 992421245 998261841 658266830 917440927 135390958 677213003 729826955 743718583 11628624 664340233 225898809 279575405 503207653 785063298 424576495 559805539 175221315 490794808 33449773 318064247 690411288 795684342 978551961 994236573 230576840 401776154 75775272 189624644 706446595 954100896 429430964 529067403 6311532 788802512 739112155 887727256 113879422 471322703 537858304 698985541 959748035 976070080 156931072 195414283 719096756 789353603 834073385 928594079 149776451 648634262 87819157 551025417 525123769 669913850 583971183 608475834 155693825 638560560 494632042 859548536 382977345 756758245 304555532 746912214 624976407 892152418 770569937 865998613 527401018 923050623 700006534 996237086 568528238 632257305 348167522 400034396 691644680 715953647 450583107 823986361 927202198 969559005 614314255 768833301 154366509 901175189 661306338 990277552 986172899 994525499 519914781 529007281 634944443 714924821 4085602 681972795 711886728 910843999 911066359 970372378 603078818 811389775 124537585 996979447 225732777 244661074 631408482 991190674 214689607 580605209 185801506 277059293 683680116 931074620 157278984 382665255 876029887 877415740 939692710 997081953 484601951 846803498 194825353 690086464 47246665 850995957 429712758 617163850 978704970 996674040 725720355 752666784 817472211 878255976 976636639 989185155 163655357 660514936 57165545 708388390 699650160 718642686 124768440 980897351 100924418 694983273 766269480 808786082 760933184 948530147 632302471 679877666 829512996 876949826 410108182 598631638 404257141 637283766 647831370 795531072 882516097 999743423 883952202 913188113 593375036 636975932 897254653 995609488 757775160 912971724 167640632 352889259 957429340 967549923 251134743 891630762 523206985 876924415 142429414 650992615 748661704 838672702 539673340 929704487 805561583 843169713 104140166 403935177 576993733 842610749 691816318 890328305 701033467 789381141 484700948 898375195 938632159 941086451 214355170 277482091 675480977 837764497 287628535 618141650 175020685 328774960 336666531 600450553 862751873 931278804 301728570 455856853 381297943 909562958 17584520 313177945 56401704 580186296 344955287 824677646 594479887 849616942 595624006 728741223 948986205 963464718 592530233 689099720 276820832 704379286 998609894 998863837 394214464 714506476 101351689 400671666 757591142 866633105 831660886 872687097 192954372 898660943 718836761 927564710 97001156 167120102 615236801 924351816 512119272 934849463 869402933 894931609 127950635 635277255 125341701 143321835 596668093 927211273 821357956 927126166 300044420 413278862 637801585 833556063 252336439 516278270 278158190 923702215 953157553 953226461 685214855 998870827 214155318 737899184 262162333 698018493 59221855 262174720 361110181 933315228 183559005 997078892 946312992 957636243 82517847 276982827 959091671 998825421 945135109 978484500 608384695 633041730 693139285 963985420 330566757 443565442 284004270 447108557 994710101 999291906 724234247 831356964 747541067 765408429 979522239 990252922 790420722 841898063 20338487 974239665 322690344 354796278 355999316 769740924 581638115 685842974 89009249 421979385 273988209 530143464 215784626 523568206 608388222 747607842 692450719 929305153 877816496 884864461 252011182 682490663 996536399 996647302 190354793 662451031 149591878 395244732 721086186 992639201 19737375 122171617 616449278 969344047 306836651 605851689 674615313 882011049 532334861 983063261 258930579 588746305 814955760 831128838 760976424 825493125 104833209 757031937 108007571 373137389 212846256 299198432 968042130 998559796 767120278 772974008 933780159 945363134 183366011 397209274 404977469 717381987 148392225 746946310 135024866 568127157 341285798 710810228 608528282 966659603 403514289 843055422 164368904 622682572 129914897 152866197 732007499 971530438 885204805 946836060 726317187 954860217 551246492 691117053 851012929 988282401 955793234 989485246 847279021 959316944 100660835 341732471 318971917 940285322 450003980 872943063 146177508 872406004 207905263 266551744 195596636 488772919 611181214 717050866 720282476 987574989 717180131 977175739 888006537 926419610 567942953 764099670 756562853 898519902 384530772 480002529 273026454 580981093 21397513 458317577 10239408 475975114 314603634 428757538 507912088 586281828 733230070 936740834 595522464 838946104 282816781 506467373 70110495 844680219 916535627 940197898 738619503 841435378 899955443 932823497 765826195 883282029 402093170 737905114 662280715 669352297 455332211 703445656 311834366 973500984 888073833 973722818 710122932 751501583 860067925 946730400 783244547 945528755 728908094 859795833 477084115 893043554 3707571 341040406 276959512 300974889 123407850 684489462 205412369 309581270 70761589 424450396 684105578 953081028 33980483 414643908 794927139 828557790 596132690 987227696 470641521 651782011 3856104 324298154 399410722 418108024 267286449 480876532 121504126 404885430 998924786 999487288 694122714 812816127 16635657 313219840 270316432 446926529 575632707 795639430 861270636 896426946 739394785 878278082 533336599 752520273 875341763 938774796 661252158 992058192 795440012 963784219 954936706 989282076 782522561 935057404 796007619 891107436 366001961 397657701 662490591 887965233 826683000 970809759 175986133 894809235 872044091 901095378 575865133 813808203 527078209 530291387 932123777 949778255 419931142 778427946 966528422 973999780 911897934 924105315 436851575 605173036 431942326 555734638 138046183 761665060 614943796 919128150 636752526 717616181 526325879 894481410 624895537 848662104 224119782 430597583 89109547 211500198 831040970 879046630 514696116 875981464 170439526 800198022 75935807 708812986 804138779 999710376 337665071 646507248 150853301 335125795 42848768 925211906 125387184 412057741 377934374 426222465 312215155 987454860 156133829 637312222 977479937 996620055 608067542 671936033 644642076 838796812 610075193 725939072 715122728 926928954 892604219 970028403 501508505 529335478 860813825 966116839 661436745 957039423 293028259 326833789 874463244 951816086 583495901 757090928 983709158 996048671 646926868 818284602 670799508 880746646 444123446 737051606 701042557 974263266 606103337 798574888 106505448 387525467 526724450 828476297 491796042 814802871 445419393 865292524 642786790 643800009 228563402 415340278 864068540 891498635 173115408 206233919 442358163 717661584 320453769 690042712 277965453 445247148 724578408 785207540 964785393 980215746 7541956 597400282 208450908 795035956 54672426 628543172 634946706 837073016 819345448 839267696 270595621 897258924 537955109 827720451 183318881 322088365 350636531 571133306 167667247 652125277 171282598 908133011 407229012 442142238 545126084 876696830 254212707 443103687 334938110 981507260 583276464 595674506 313411915 676709258 797948096 934905254 338597941 449170833 303653729 519156467 739771806 900523840 702255232 995097784 608973749 742138652 854697103 867620983 343719588 443304755 136307090 349477204 228308447 923807288 288875943 998504873 550472500 802703408 83722519 546563165 868860585 986253872 459763041 821124155 707137174 929088632 29777412 245460322 298729142 323912053 796081742 959208007 876300202 941931364 360153970 981115943 977559400 985396642 899940499 908849420 491402298 975720530 784295607 907324191 385538970 870311287 280704867 973177061 492222082 914590297 249563836 274968926 722213703 821570016 382054408 992753012 161634498 727329473 525547312 864717254 280788050 574157130 336653167 616771968 761964984 952231587 502080879 661399697 771570643 907961499 9996034 536757360 969169351 988706935 244394749 785606540 130497384 240981669 579062165 677792130 683240985 873340047 230146423 235956583 691237167 881526654 381475783 759021717 670239583 858382708 9490775 83229643 318803935 445318539 385515999 942516228 84758091 790708174 906035602 915875531 61290159 859898603 176139804 650660849 314329740 785415477 931174974 988461498 204361814 669276039 466401320 537545514 421673357 825390707 193444586 414718204 184358031 348549306 305065462 648461789 606120459 615938878 760771056 903471409 726019325 930960404 298796262 599601883 611515310 929283214 301556860 753654911 987702928 997626735 427755738 733659041 511056165 956224663 380466424 734244154 23496670 275197092 970260718 979690777 871946631 960647579 880495667 922473352 682510459 813266762 981111161 986323742 887316257 973220549 466851669 473701410 252167586 807246274 54449733 699032228 277295685 383510204 517136546 708237670 145669705 209930968 486730191 553740392 251302500 920858987 827476837 908097188 899304644 976266730 948942073 949319168 912505364 943626307 3685838 969595303 959901855 972157065 770063739 832625951 327924867 343665292 177193225 494257912 430350186 465283007 598579520 709452199 73146833 623964999 745721940 942018719 394962397 635832451 428245855 461055055 58806287 664097396 921220531 936665212 684836373 780247113 70096253 497250092 20918878 222440148 148621187 427663087 5415022 277114186 409343775 867152015 265852313 313213742 653783291 843664943 949227998 953877733 146622261 960449859 796669918 858676437 879602309 921047120 48620461 601433749 901168898 964263395 765150925 892206567 655421942 727720490 80275279 494070274 29762225 614646363 902037353 996439569 27164836 255916129 793329645 910748940 838120494 945710589 472280537 975224560 181003220 285690357 605895998 894585427 561262613 770099363 277599712 581264027 378831512 402536255 461889335 965822604 637347109 966279311 784135925 950009653 471932715 872567270 152185713 645430078 653571129 705693540 859032287 959990162 957803102 965404057 241441464 448936729 997371869 999521508 272485671 555115504 161508069 412936358 403393900 874685361 531353284 646568318 513219658 909944924 409493382 530272783 368929937 565315983 883764574 893480005 584813340 733321457 622667278 836032174 735878544 983207934 411135835 909354333 820349194 869839091 694171706 905081681 673140588 824557033 805868420 998864266 371965853 425823405 478569402 674563394 681737160 906979874 661415109 691492819 848041538 851291310 986905531 990179947 291367467 565710259 493599128 852459504 758429056 923010035 450483833 564123214 856521013 970582967 453696096 491275468 290014099 528668927 52102224 977540472 530565498 809742801 551329017 929852734 411909442 745877607 715155229 721578307 799638083 836296266 603108558 615595578 479623707 715472234 34620883 386438752 396745627 863272882 32786634 69643842 429189817 890409578 991045251 993612472 130082539 551495420 117150906 458937771 991325933 999410796 877301338 990067061 10023157 901370607 696475607 759171080 198173107 808510609 316867132 589625685 747189163 884256555 628199258 632241537 267612328 719245243 462614381 496648168 274265081 660306238 906898420 932677046 735827070 799899323 595553598 741730913 291179056 374097683 916155516 992529246 889089392 903066083 788170301 933194840 317349493 970694547 166204367 514707933 321530480 874130794 19006430 421685926 679210259 924164060 602519631 970227362 939130561 962972286 121675088 863691813 367695828 663488813 460429471 679522121 504838114 957665564 386255356 485419619 945787004 962908083 717540490 890420497 504312310 841433876 492145048 686176606 983672836 995923098 392881558 958106407 884761858 908570331 751679779 801346116 584856123 688439375 779799726 920585777 55088506 108087960 763216828 922277469 998526718 999097498 629834475 730414133 916217258 921205258 242321043 610745012 916717225 974260672 932984372 991444927 306260243 613740248 88232160 976905855 338361518 856044947 892062399 932390731 502597922 617941737 254117298 356477371 534589169 953089322 878002598 940900863 262683044 587695223 420631261 934001223 115650661 559844937 175858889 192587157 29316932 446127366 459837283 713103107 836281320 952003640 841505955 913399182 931829628 964321045 640263868 759809801 694277012 705405478 672990311 768412970 102026194 506046103 137140396 185037088 349600036 441559931 546296336 947955942 392378419 642239544 862016625 921426975 697281798 970678441 936421440 962211394 124857583 488142892 86638670 818399855 623294920 784153996 138448773 540838132 935762754 966254441 835407014 999395750 182668923 606199030 76336447 545228288 571440720 989440864 124593507 999430565 219178007 579357984 91873672 746076865 910601502 978911117 632907797 984304715 726558239 939218134 742834955 995742269 231230278 677888768 608405993 679958899 77549962 376411933 633975154 972111344 41752480 413657511 737863085 957008639 559234492 560349523 395206667 841551272 411301918 985883095 323167090 465830995 995428741 998537553 998367972 998619264 675833816 868341018 505270222 696332133 617935514 843889110 2529465 463770044 323693364 567656081 732307359 964536593 9798631 499888670 363841431 546898802 979891847 997445122 909294177 956243203 139740558 906889721 753276649 944431280 841434673 897429387 277165205 629862960 164181668 795259786 565090366 784486891 259372985 279722927 75083081 902895476 266363256 978698121 29424941 418844875 533043018 791039810 932466614 973434429 996537492 998965674 380747921 591730003 341888404 815368219 709835059 846859654 426618811 444286635 313250474 576344328 558046530 622504900 810343561 911804006 554474769 785680849 601012590 784346315 528315338 791856853 309361923 692989654 363161705 884841555 736232431 834493543 128294902 459395017 308071583 628647503 154840930 204950390 803402288 870043686 213576210 720206951 839340928 855510122 818449887 940498158 516725513 993149438 217100077 870534010 920995479 935229368 106788840 829711324 717699468 848253609 733798019 747252331 399729081 861759642 22409215 790794495 895057706 945972366 504273828 714348564 698577500 711051361 40799810 378752064 646156796 798848036 582812396 735593044 552418093 553385084 363924855 549667310 386649828 731133303 120665907 954819350 710455802 903670705 406004788 535765397 234887649 606659039 35205968 305632971 210536509 821013700 253940007 595811466 821875765 964295483 845155566 859395728 284557876 760517602 506645852 587466339 808042957 951635841 100238331 353678828 762999492 766880834 600429351 727559348 288366860 732077638 894032998 972362291 312056077 761005142 768928621 843273233 504333368 646457494 509970935 685667192 426231315 639500978 286720932 667154463 473452566 734470533 189746428 411400696 974737026 984414294 333649035 510651447 204798124 379750335 545200932 891273598 276926412 964036514 623539796 709272620 72613125 243788347 476768885 795130367 63141688 159028268 530561414 915490818 372647064 906668752 66669860 535866592 978579953 997605812 885937305 931112485 306145065 993060308 808688883 826262918 767357560 889907751 708608985 868312815 869946104 886370593 4448025 710849795 533491273 584068032 324908598 370291543 25620590 223008837 98471676 631250350 326771997 421847531 691574139 892344840 580108898 926815308 839155051 934195491 342019890 365004514 440688248 625162678 385335767 927971449 152261841 963372276 666698434 976246379 262600168 499453686 827811270 859966557 132254862 614135541 978291846 998893603 28537930 328158285 631459550 928421931 293322213 499165844 475833884 637298805 133371763 466905739 101630416 183875291 667208128 794671326 577281052 626770919 781575272 821708146 559429894 644124762 6289507 753057011 718457264 835753968 438357026 891848626 146895235 946426531 189980256 897051221 358029773 572649430 368439811 498898910 326248924 360464082 232731732 550223974 58896306 454388115 980544395 997298717 629528179 893616006 58627177 81184906 677485644 680075197 601829288 749287950 432895578 532496690 742361578 867549782 254024079 924576173 290538540 329761433 670400030 801111495 169159372 487409806 42219881 842373588 938522342 981795168 10881245 815139112 774401116 971660834 935059402 952280779 603140821 770743429 772424330 876181280 328293037 440023760 646157035 856104144 776960083 780294530 812495010 890072920 409089858 770533896 214047770 747198762 738426493 984027637 413165518 682604761 359307183 655288182 658010560 748130241 677543825 864618874 87948487 235625689 291327313 519929295 9484673 963596167 970022839 993384225 68242133 933519827 726470581 823016984 266342540 496031489 554232844 826933997 846553388 987865457 407551548 888363522 648892323 717986243 604298047 611236507 573574946 893577803 176937834 312947571 40281868 411462833 521320901 752787048 421967547 633007111 664331678 939163108 795091963 984810961 815060351 883416999 810560749 830530276 498514493 571782965 602197606 667143470 72901666 681051730 431936066 460681128 378532841 504655648 207925729 619332460 461070804 607460671 331145391 915887964 525205968 742591475 670707680 973212786 957795388 979030626 650213650 883613770 32257779 720755892 877351872 938894433 430228481 835822440 111251962 444414547 499217238 648531619 305006010 994398698 273831861 428293065 229654041 927482869 440422471 775376905 348517749 806778991 979386404 985152595 856995749 861099786 558924981 644032856 258103720 325271286 493705108 786769295 472224615 740808687 686117468 872768420 7606828 234031752 554435927 936665715 842416489 935388691 583279906 930983390 965957305 973182272 250566272 616881998 678188742 778251636 352185934 475328618 289661240 858764992 109343464 811314637 820635566 845303032 72832806 591391997 869203433 964657322 381134590 572256342 249037405 791595243 427426031 911541405 921744816 947894683 857671457 927406576 766450085 855901928 749225026 808883344 907784801 913154390 811025171 846556866 772097037 948394453 248484144 892633432 798341886 829160960 516545110 919639082 115467999 683210058 956669683 957150184 195642352 319749869 683228745 723455069 651003508 840768294 397734771 993645423 327821 273535605 753388889 946554432 897298819 971173293 490986271 946026063 153489584 547331502 865996813 983233768 169192757 330621103 390043622 630783254 355631669 554674293 529759890 796699479 574881111 742347585 511055985 541309683 212785598 950951512 977548698 991679373 819722299 823132828 444689981 923057218 99464678 264197711 366831091 932912819 412129600 577347537 798468175 915020461 827211659 838260507 738704970 801453115 782185766 907450443 809738680 856935570 881684687 991127611 277674462 843861673 285850214 389754795 428095421 435654227 845880458 993841116 123332054 629658057 575822555 787168399 674232309 800115119 550919564 906709773 212631967 341866877 9095039 119437250 442162649 973577832 449952119 956876779 619232654 713361457 828497172 905654666 781980535 810808880 71991498 417658671 132479508 434960268 563548571 756339863 498599848 976428657 392821035 640433402 800331401 885214145 211981669 393864687 763703606 802765867 132432274 507997262 254041431 650544433 771326768 934115440 262274551 428659211 683095163 996774835 739607317 914690041 296467350 984825359 902858831 982072122 459183042 530374088 249103088 681525674 819275068 850492590 863964338 938875049 265397056 926647364 659900367 684898741 523995570 645861131 709404229 737508939 543041524 691833985 976050772 979368155 186240868 304607668 160071629 238529330 469422579 481046931 714478605 763818542 922536639 981148450 264807884 745498137 543011974 772392632 358887828 684179621 680404274 831826022 214636404 620738411 979941743 985993634 550241337 770751355 555172831 955792313 46269069 320488551 153391513 940802192 62347620 458459558 971831289 973744066 836877755 917677289 221054050 450292582 330669165 577313337 904200605 944152179 732631271 904656298 944572611 998377359 43423527 119524349 612017007 921200354 484066137 641059095 952507963 961262972 26748946 466544920 778429342 970278632 690115837 933045417 284938218 623112824 153368980 891365866 123622164 144746945 549264554 683588615 985901198 993656154 651038041 755819492 427241853 649528043 707034704 919391259 461380161 550896543 838570946 885274774 106702812 469328147 948047246 984497602 892109106 940856487 490606664 974633710 188455605 814918128 996103735 999025926 336927483 670602474 615669941 684699149 136394811 483293989 791396054 842511993 120747989 309221612 22956832 838717463 167397200 988682675 262880556 779250858 870709483 877950952 627192951 939349716 59000061 349039973 489433151 671009847 987788333 988351732 251261314 527880263 782115630 804207947 909227205 980853155 462141190 806236853 139454290 141385457 964824083 964910893 686800889 742430232 40569098 344784560 682488413 762431855 360346978 705840816 503892672 563891820 884680929 927482249 910799082 949676782 87720782 721983300 24756067 660900852 231303961 913826001 635702333 651771939 426554942 670102882 549782343 583772828 967549218 976872218 155383497 984001541 611755305 882221975 89526804 218913809 368324789 516855890 105313118 450586637 513789436 658177703 671995044 810519767 657231035 832860252 726132482 883064955 10466709 607603327 48712821 601959755 689351192 802448237 793823868 857769860 190598377 502393624 382820499 774065973 197619658 831509295 761488599 918254010 608262188 897578627 237991773 707827773 531804968 571672504 779042860 961552424 828792538 972540424 638427788 789343039 285396440 334982688 268936657 667301157 136688035 995463826 106614077 435329033 80011240 132364421 102493609 762135056 329561175 760330107 244264195 836878355 640817067 999963716 746281618 873272806 673423372 698679244 675236663 954027186 886825016 940644614 468610742 969662075 192780597 451677159 889557504 950002413 116036267 799080675 969474268 981022774 659409538 712069699 609440424 953377427 702867838 984009490 187523374 756369270 336115273 482893607 180134692 807983314 744997255 793942080 15823271 411191400 358121841 407376111 691555898 694812894 969330482 983350406 849726143 964918330 914706265 967948231 400266071 638735849 399920839 611401100 3451308 657152048 584579737 823438301 997274714 998243739 210674711 245481216 295460977 475525653 77026170 861175069 276589596 744455457 751238298 996953186 176433512 460058712 684742684 713491560 677319273 893775725 262005764 772360482 456747711 928170533 48566485 750528812 29998065 780604019 180292379 980735154 438464893 810353411 31651258 273936790 549263310 754687907 364649803 587419716 162856665 879513452 260266498 491307601 996046756 996650403 473518893 816775604 8388019 203468340 591637640 773045428 784525011 824250237 58190605 708218355 363624678 548310596 16118550 290818123 241651220 452327812 138996668 145234221 926873197 954356561 287734640 759904986 91407105 896617886 185914569 415593446 554042263 598201661 50520712 133715192 866473430 960978771 657664717 854662532 524465874 550743490 366377346 566190460 749656259 768774925 561103999 842616282 262702331 391805474 491211888 686182741 381675446 976187148 264388896 575409014 300455227 592612268 554238164 888413052 103751015 953213064 233980269 675924177 315849507 548282631 591741167 714238666 802023268 948441985 801259072 936997932 483322790 487096988 171924946 945085361 602111363 621256673 455887716 765079858 180751644 764259046 944006002 983561784 592508580 616601064 628997992 937514584 351096019 672744171 486735606 995671131 799451270 812146082 238122720 898631620 252197582 675788794 221516805 454656177 82640365 539475926 39955175 93176609 465229264 568964746 632447665 794411564 420005011 685377696 576792929 617445051 622337801 874645455 74617768 183601897 14666823 235136741 911109503 943931852 134998396 592277633 72104780 177769999 585671466 972445286 562231840 970562531 476519263 958887622 268909506 271787881 712689652 956590576 77863076 886475411 785525502 930487001 496353106 627261364 153643131 576424586 628010442 759461853 415493711 463776331 592366185 941942677 600541038 686174688 775337975 920411569 276431140 646644212 939673278 994125179 67461152 591548916 17678733 124403928 545678879 862980268 180654210 180769511 184328266 850177903 581603079 917017249 48722243 447255744 467805396 887873886 547199857 952621493 612307904 789154224 847419284 908455150 756006768 912980884 542656020 557002176 652661301 821449082 790967438 971548382 494189703 849104452 558372758 826779611 233218064 532270927 867040621 958961813 538622885 542033646 563897988 568981200 835425876 975683552 486391570 927522470 145734089 958254607 254257703 319263301 928062052 942940463 199824051 401884216 321961533 997858559 125237149 924848950 5400989 458265099 293827819 821999677 891971896 898212453 765154654 786345906 220725683 389475062 421468870 614748878 699028364 948742192 438473878 484587993 795276945 817697016 888584474 938375670 184455052 931580556 340067582 934651310 260627383 960828962 275242015 419643163 244029576 999267000 871624607 872642122 997517214 998411311 924899376 995084183 475256679 589339915 921410778 963471193 578432115 586018000 106824207 900097755 647732775 676844779 385327450 721077154 636264460 916991235 150496665 274751918 863172539 891872247 675418831 941512158 818925009 845507904 462899859 868528231 663253493 886842217 559687935 563473598 716865705 934137138 247678893 407867854 581018893 927142278 220613953 586716595 410664045 953556210 618128477 717200161 966435313 991112195 174692144 350297631 728389051 752289918 960792768 995804127 186690393 690303338 324576075 924488053 336073578 954428222 284137635 578788174 570054676 716465038 157080440 639087318 1980678 719447903 46652106 760392754 354973863 524520444 790944894 858147237 204715134 817176801 602994837 957969167 478876244 629727719 981055793 996796436 676352872 958284715 300203952 845830345 191003640 264225935 293018876 982097522 841174391 898606684 148086002 700837836 491396147 915863283 100022999 396686653 969279485 979632079 696143326 926850944 726154102 945495320 450758936 748794783 329741289 391608242 936569699 964570550 968751623 983274692 381254102 785286834 740168031 991617963 943732467 961759625 114825057 429728495 351526569 722099440 182161837 697362085 142316382 631613601 346223214 399869957 676096588 841823201 995927987 998364985 731591072 893740564 505042492 842780690 212933691 334688744 835843662 926863869 626896318 924934125 868024351 887203188 693824002 810938591 466959477 500675375 245195611 713320778 445721970 969244664 988846145 999877511 378529197 556083838 58869881 861411230 999012431 999012485 243063654 771275543 558776914 797744038 589913216 892463545 684207185 728360103 233751304 575102156 649467777 706962996 944333472 947135405 30231289 655339998 741350062 807530037 57566324 175768543 515818988 618069491 323922399 783444976 888755570 955236153 826425089 952276428 86348272 615713513 147375834 906397143 126402922 639858584 392094182 813396309 162176229 494431681 870032819 954853743 531907975 972186739 679371715 751906843 252931015 883846668 592170471 693614090 23582721 223509819 634436561 675677614 346603256 824734186 633890592 853631568 777752455 891813933 337116498 944396654 505092996 519160138 104008261 300413470 842337589 967727071 282619739 381357046 804332334 973049906 897063061 951745244 927295134 969307999 941337676 968274403 817809466 917449675 330018492 966169287 296716094 887461037 241183556 982475917 322037069 922223484 810041390 943041754 671096021 753818301 526268152 726471906 264611681 511697223 255803987 267227014 934282587 972362209 842747579 869001273 951602379 961320563 965795782 972016359 886948651 985368635 871796757 935341239 271791656 531271160 347891814 543294043 908840787 923793004 420212414 957764251 745793829 878650887 753140206 913009986 814493225 821899159 495759869 933136108 935968178 975638541 508968280 699305989 240611170 534741169 824587925 845668772 200311334 249036168 94918457 692572908 66222366 642735627 900212318 915072010 257196828 787149540 994320202 996180199 423957781 564851496 931958451 981931736 502161388 807329446 740905895 784319908 799172440 866253118 140085064 443692478 1645303 545815877 387011574 862615871 594955528 657400623 471780527 979036851 498829213 948610749 288815059 697736368 377540588 403745096 295200156 797999528 870616584 882660590 210226890 361752459 430826312 726278733 956451459 996199422 326292881 632791985 719265476 897382505 239416174 353992719 27586567 73299474 604131977 629789697 619907215 733478507 389183238 958040250 404040014 483589149 892372985 989289509 111559043 664327786 424378908 495952111 756626463 789570153 295696448 347561314 514848110 543214404 667169209 829640408 608881048 891619011 4130589 421371332 741993541 997969741 76422990 330436665 699264414 976870731 932103201 964308539 901271727 915772679 372416538 718720120 758112344 979714949 266957514 455752831 767480431 927907892 582616372 658124309 990951831 997794375 881281981 971011727 182546645 525720111 366126774 977533395 792661658 989975169 140973946 819356806 255463996 262672372 119852059 653622739 661262748 828322923 526490291 603901178 478984520 744227842 918024889 976473890 215838729 627202629 502160512 955691660 234583459 316996397 587412472 889984821 476902855 948117987 589974010 936141418 815900228 975646330 756245263 876746599 662635103 689516985 490913970 559111368 142150138 220355922 45357833 739309447 827990015 889646608 851149995 874332845 378212238 433041905 390346968 539865058 796741998 904149300 432496054 762691903 627284171 937017617 930875190 964698482 912009229 976307020 725982635 733714375 352679923 498906192 899489709 993996329 701975520 814783668 572051705 747064938 763566095 867172694 691485229 991370185 906702263 933972630 842545307 993707671 436936096 570562665 511737537 858655101 93161756 452131534 282886298 350316363 123102226 388881127 641228128 785540295 112757444 173485907 626537304 965370498 827904648 945314511 517573984 867442062 113760010 446605712 561404376 657002901 125191256 709296760 725318396 819588954 460432987 592114504 104423882 978673199 624610219 996564375 271574161 641661736 660987786 774955154 36076687 562395297 598072769 993627862 882944052 908990793 639061001 904869386 419928104 536307576 123149038 149313486 907343818 932148475 403477219 939086141 212416541 243215876 383371723 519382448 942044104 979082196 701854838 852598307 30953890 561186066 794206055 906550717 406776990 955526269 353782145 948014234 824615653 980978130 892992999 966720526 542729008 617118853 639808157 755049882 391608320 669552920 351293236 847350860 334670395 908010576 34304892 570388473 598012951 872400041 23599813 391901793 223728584 334891309 204575998 374759731 629395362 927996894 684740666 731033055 557830313 557876915 57927380 495864927 857576091 948458421 970654632 973710950 518550077 616318694 845469104 988578145 648169754 674067503 349313313 432752811 829574059 906927057 473866739 723906136 919947150 965665856 867357160 917690307 701312662 960371367 276456394 934544672 844796945 984417298 753319833 996441482 348243992 504445093 410948256 985952529 537865135 997982428 38662054 289393268 682837968 825499323 827345480 868194247 302300678 470362463 815748120 844412937 153895041 584846812 857218960 964736558 599143576 612829760 258910516 698062193 573705011 666768080 105286759 299271426 21653034 164127505 935041199 985376083 438911473 704038645 180635998 416315324 292480685 626915696 724377535 750131235 296031258 675681836 519880493 799782837 69231134 699503392 306733058 641884265 278539729 548284777 408529038 590922972 4857817 524945100 260300125 490094535 149784464 958193623 985474647 986328566 105792936 799722239 210541084 528568561 420091004 781566964 622150334 702659539 901834775 930409825 18217679 192705929 971578337 992227399 179053009 665311164 769077261 804679321 301263086 992079729 18899812 526393662 724568075 974273368 848616071 887969929 142895359 411228533 949002494 996236560 747346803 897631911 333335813 663221280 679911722 845223450 198532820 794906180 573976168 743352244 598964894 735603934 596609836 766874314 129097967 476159070 667143737 842467396 215639066 959511644 504440257 656593275 283029141 914029350 396475789 860886522 651503702 714619553 714175614 786818501 922072424 983864636 221223924 953675080 795485426 844249021 386015010 933410868 410144549 453704172 75743320 864977051 782616034 929521963 103142310 400622966 498465075 826724543 519747582 581812128 861826884 933595061 173247391 646336098 710367893 985338087 259317820 598600380 316834671 615900419 151700877 843620362 625755212 915120233 583895856 721401785 435437455 448768992 312152094 406108676 99869425 933525985 845997064 967698916 261003279 810561754 102832220 200779396 338874111 772437455 892501001 902805843 373918622 935406949 521950082 961997906 959979644 970453702 848703064 862824981 706716088 901308633 315320067 935028043 172907104 304085141 637752610 986506517 985270308 998271131 867320523 943844808 306134002 813005976 873370798 921841848 364575237 755803802 894299413 942336592 897452243 973806812 183269624 634933104 127308395 130993143 695436754 895680114 644716912 692041728 970442615 992738961 400230729 461965877 794375755 836844966 755044359 979690007 868802891 882705804 904334092 935979931 664105290 838196608 235850631 380905451 126395397 342526022 640088832 672662951 967293218 982437445 386396819 802209389 505583995 591185714 172361785 446251570 710504443 893789434 977439731 983144437 77871002 590524387 320853009 861791043 607733351 942621357 960869685 983535011 607518042 863994166 73859971 915155562 826818626 866034959 741944530 744547622 343948473 356248228 679150966 879567427 913251851 941863207 175418150 225272955 647958264 832995763 531654358 616292107 233096757 271448234 195107156 574772582 561437908 765814725 776700049 923436122 387872543 861507054 29125252 119232131 590754033 765996001 484775664 873856280 622198394 946510028 138659675 603095444 37238813 673409414 956635568 962971608 464955913 492395231 700866106 752207744 920233509 967376756 8661229 123204171 942576411 998051043 364381633 902243615 309194694 348379786 664003405 899303271 714319608 976073836 185314180 421273751 697305317 763355227 904869922 993619201 873183470 874759977 435441684 524185596 238213859 454833382 891402525 921422828 976405519 998207078 787022077 816694994 180008974 656433471 148693196 642334098 471430333 817469837 235007983 992212825 177102593 566303122 314907222 958132232 205803384 880336491 772919236 795026343 542294593 559714342 235928865 775008220 693982248 989309266 62995671 615822972 87933847 110244385 184221094 294394149 737397509 994615209 867761443 869119373 469212373 730522466 205616913 258908947 939956256 969869559 6819800 368097607 430149487 765580381 614216372 890219844 500656861 713351774 570980533 610801097 490320605 951463165 767095913 843574764 949335569 959328007 191360379 973837166 946283002 981496831 62655210 357225454 409414435 817760732 415863081 962736456 460656158 541762286 898830161 940353711 429881796 966992081 707512020 974644001 684368 84753609 939888145 984362822 390801178 476342436 437882672 586553220 664311629 859914462 243037595 767501510 722638389 931511221 682593232 901793758 52425352 140475036 131216476 194160523 383248729 682028754 246678941 293873580 553874675 713196683 573877328 645325611 480526208 732371399 984073564 986360415 353417847 979156579 462698261 883058274 699880729 813301486 413138763 695927696 945715076 946352336 817998871 946743376 983895440 992668546 984651200 986401004 316877388 836846869 474194038 734148842 599360520 730725161 927944723 985238107 401383157 544141847 982481105 992083672 312938498 480682382 811502672 941509441 326177294 538558196 679461941 883245865 908632752 935571527 225614195 288796909 345016732 362216721 496791128 541116060 897935823 926343356 964136994 989563323 160435784 949403980 252436000 430094199 61101893 425699706 66799912 879264925 199615933 753260422 971737392 984282410 709325552 734752008 88687545 761513137 402983451 580073543 118977159 151526217 512988847 631705762 877530702 908397477 72096264 561824065 984830962 991032076 243707250 712765809 493501276 660090087 990294705 995080484 70370679 430455080 116805780 752605477 823162871 902761447 404365676 578243086 399615783 962368022 466760374 604809810 745977501 916081808 441068746 524861320 631292427 829125284 133390211 206052184 450621472 829709401 941829592 967396573 327579661 935738323 250754322 784508757 84043853 257656374 603708575 859038632 360305556 374095752 39169791 323862350 96907301 661247406 387794326 438094835 857057197 929348458 390869477 904643293 273749799 577094031 317305024 791632196 118880164 482673848 261837767 292212668 111068210 464540656 627483011 757370868 547025116 988635888 621300614 829636230 957185407 987407800 262658979 697454020 869915175 967507403 580136269 931547261 294104515 702867453 173175360 225268511 303262159 995799419 75227357 985947756 946396799 992987671 233330877 295048020 707513549 946173638 201008434 335076917 945096660 982336940 742146817 812720101 958861816 972916168 153820578 762805002 455955171 598715610 299195017 505352367 136722391 869480732 130082672 739665352 703899268 917143033 887834410 929096073 410317730 980137214 247219386 379078342 964334447 990059453 510684733 619812831 812286839 964044770 890168622 899904445 22302378 980556434 432460498 695429472 773179303 782889347 325050359 695771884 371718038 394515791 104074068 379517072 628093587 956388556 194648318 270973723 116095419 635570380 661883877 937377618 571824860 741283134 688159801 908960509 416260897 583271396 278522011 833154252 229934233 668721662 196060796 290783203 946265325 966679670 97510239 707779152 796083013 987009368 875048769 944910500 239562480 617597676 11626010 72147512 385727795 958499857 724902921 829018944 726884262 951056279 818131220 893608820 167112528 957248564 113904075 657038618 294450743 379838436 24670382 30430118 873195122 944617397 926608948 987040052 972991847 980190799 291978982 619495947 294223865 310659692 139356633 595385901 396843410 595342671 946014089 992113429 961659634 998205108 301737395 337330339 77790148 850983793 377137794 776479068 22979625 604018407 567389603 968514845 889031355 992085664 912880331 972399866 114236550 201745464 929868988 966341044 53002553 80349907 619413978 704786622 526326404 896876966 622302199 626737024 985317874 991056050 588369485 846181345 123929764 418150655 605775519 879224012 14626041 312583875 723801233 864398917 213650069 802872600 773392866 856314797 256781048 777750764 463601649 655258023 420769225 428064330 794528395 947036229 771038270 863284389 588735093 610175262 547534276 732941152 905564019 978134411 56771260 442924427 233444840 544194326 619376291 789918849 218570708 768770434 12247277 949235104 738726977 817270232 116135456 726911613 112860099 904489739 2737188 450038620 854344784 921812061 787011937 978206040 257396501 481397796 75188457 876608366 155685804 374977814 325460028 598457889 566085673 917973244 519574602 808704996 46427936 412487268 999199621 999759820 269015799 599069708 800843523 996343470 127962542 413240910 112540035 691124873 819364450 974391354 814171331 960485926 682029617 918249042 137397774 524257201 432431075 741916876 948281471 969911764 605265060 985820066 676995061 715416479 213154447 434229573 677189265 809835469 939940128 962222695 252464036 471319070 219921915 377394140 785589496 903950498 408197670 695199262 643503903 707566516 792298203 996950257 470841751 768958911 233431565 798735808 868141883 965345939 702574349 866712682 897676705 910173015 925459299 985127883 103292252 888848530 609465304 881889388 230713233 781657188 113541791 141179198 24716813 56007607 902186194 922832025 504020510 644283796 23385922 487179358 10117994 220877976 4779662 762882643 44248576 645407801 440635467 633181932 612354567 902025324 864618929 873567067 727830311 875027023 572661959 686283942 934480796 981904216 976993088 990475746 569208506 848918697 791200776 836789051 195514003 552099210 848638413 884508498 895382549 912730124 445107488 707861680 804732284 877808738 20131969 867838431 286213778 602342204 115159748 236696798 730671742 923619421 250037972 912833053 577974819 984291504 375861051 829568489 332221748 707352575 730884396 959316431 587458763 858475316 170383861 304032608 175028272 693697707 750762962 783893780 540080373 890937720 653235739 958994295 86086788 390137820 983784187 994549543 891662952 974295935 148342301 781662260 89555460 775803258 168077352 832655967 643466482 646064466 770127647 836318034 124006386 704885047 578161307 613578850 584189230 683397094 616452776 912067572 487464338 832174762 30176463 554395296 44479465 962042019 170763850 592301256 623868114 892596459 775915331 840693838 35821168 429006277 402516996 587525336 678484528 882519900 40196541 601196956 389843920 813042138 115888065 663564820 566472945 848132009 270562230 485764788 464514492 751705283 337152487 797915471 92212045 741452776 872700511 989973157 778238929 965880847 468413042 913118309 475609765 590176570 705274967 994716541 129400412 935145974 47930491 133604053 4933698 501681384 102564069 599565831 445067209 923483968 748311479 802139001 200171858 279756327 979207711 992888971 625139494 802308696 418501403 467106365 969480351 989254982 314633367 579086142 721009087 939381090 108887282 361578031 153757777 270132372 187039510 519259481 467019241 871077019 359335189 676157069 552618360 859882226 24650572 744436846 955555059 994180910 647757204 662079128 655838012 662135467 304487413 646055967 681693740 816949618 102113294 185055449 947097318 966002875 264630836 397612988 999194413 999290530 816640416 947349590 726387181 825186104 728131574 960898978 868246117 940886905 217321800 864961102 703716649 950964235 838300050 949296328 327920920 704516630 206266275 561131358 113008498 903410648 998313416 999341491 72468164 684089013 349790526 410938715 423265783 502126075 716338004 850662818 916967701 990219343 216228105 953899442 532467085 892946381 578542632 606562188 655265214 903139010 964568343 969258381 722920576 825112658 920633873 988818187 315388260 571074518 766277716 839598891 454124650 895742665 67864526 788199884 740055533 886066104 412774508 578151899 728814108 741180839 65881303 237294602 567724720 630982434 391307417 579741182 113679055 967044605 669344860 687841588 764092874 961830392 790710025 866503477 750119568 915051329 201353291 754746616 91940333 165463397 258571687 512147040 586990067 842115925 588533233 600731455 781836635 860426997 385436752 668995662 333148016 353956032 953244022 993354036 36686542 512704540 882705347 916156866 722154653 881913704 929310188 933680291 404775296 465881339 500739327 798311033 93825618 642149899 415965830 463578754 591727525 642368902 413527931 537983000 488949347 788730193 23879453 537536866 705710265 996645812 26668260 96132462 673788894 775641827 302160408 518566107 884389287 989751056 222675285 476719794 847463048 907692182 661365934 701608260 567279551 957233279 113366283 906747919 259578598 390419926 702167476 829541731 230100410 872882512 73986364 691231854 449348160 631381634 88380161 693290267 22430105 131481975 713682725 871608830 254074438 314855713 64353096 930418133 218938807 729139832 690039257 822195172 830842056 997354048 120466493 296220158 308121488 536414078 723301495 781297519 841266732 868135709 685899063 809502053 261721285 908172221 490088796 647794196 144725734 453779259 471876440 793826870 309024084 455933894 433778573 582083611 353294581 837026181 462252086 552622808 456951630 602411404 208345156 774681892 14644955 195985500 367649130 947572888 60799512 995880475 236537887 653196190 866956102 880258811 673740169 714439537 116511798 683074426 4928914 446838286 877727399 902948988 841235318 992991965 107457862 917988854 849156362 895719378 436014295 988349914 719602867 749993608 222726685 934241214 177653859 453804085 387181521 912139611 304642704 460092787 820767115 931930787 79487080 166840297 470056779 539262084 514811006 583340169 724414638 968615756 924309858 943350339 812334354 965768291 759107420 783719251 24888093 155531859 754727217 808476507 409384393 716822581 642832253 773623096 798070385 887985785 397907254 566357632 241835233 904888548 492577853 957714825 813139825 863205414 334291582 480745013 153358739 630190173 264488486 707775229 220822325 955287176 334759599 832347464 777203016 842355728 996281424 998336987 174389735 975268114 702683457 915192925 740112305 759636533 293928947 586484417 104774224 221151800 974727872 993710762 670557001 689592768 924448716 990080187 908168051 924334293 430540252 509921565 94479036 841387612 498503733 669451295 844801380 957145307 100590401 844364129 239929555 309702776 571982653 840858294 12176884 435651450 409061463 686222245 418254994 864394601 997167343 999717308 542379253 899211016 325043724 857459242 591051590 742726785 20076680 275090653 261591343 353842717 667314723 944213507 769441531 985533249 969781694 980832512 363358438 715437581 727780562 815899292 809088677 954535790 563848634 712747651 168253756 982382408 912940701 979383113 91989278 318552053 855936254 964609623 921867611 937141489 652237006 755234230 19840971 580425171 33592790 55550348 516650469 676465394 961753716 986270324 934955368 988607860 676610425 845002168 836254594 987260225 815853496 928586236 946065234 986482471 430484103 750010636 48091904 71220648 541753321 895919425 186534148 442773662 533920244 671534907 77912088 249599635 203330141 486642192 179106102 298455445 851839569 863329892 304710264 911595341 893245274 959701544 593282998 955134105 4056832 119571050 779150143 800563905 514155269 926232246 632933773 928171450 545411891 657734034 635204373 789936473 21554836 157885929 876197496 895466885 339252150 625102959 830957072 873600045 472002331 934248989 324554055 525547555 541532215 861374116 573573446 800666905 404558144 668831351 896810286 927992065 771358400 934999761 234239430 855009270 993140392 999659422 566581171 712699036 960530216 989028126 45995599 610087283 87796593 749095973 745214694 802889655 786549351 931140531 21011222 55807703 219815409 874513800 353412823 685834390 90345866 947136539 662886166 775540429 308842840 341929226 192422676 405616957 182711078 719219488 546213386 743854922 757111859 858251194 779736738 893035091 60408937 694407689 530334619 717249447 522538226 814140010 187193069 787476687 931709946 985990199 315622624 659258864 278810170 696898433 494292668 976922154 614553457 808181699 977669902 988403496 100397916 667774683 153380389 491454812 939007574 997470131 832409915 888870721 651713453 961417453 470766023 665354093 725999386 920915367 66269210 834611968 348352567 870101885 313585475 672019510 645580364 737012173 981283876 997321262 251221849 731179869 341060312 849914296 318928272 937001142 646913597 744333834 830211252 871893519 160726550 747280245 982643787 990211559 424815926 426038009 401330202 755768319 480961190 681867469 520199535 979319269 373656474 645511824 916679574 946887887 801955197 884783692 593884796 911010408 827983140 866941536 129165336 175950078 380224364 557331803 733497259 799912053 401052488 718023208 81234055 817211250 537349691 848424987 977700116 992382770 817123605 918160339 363825741 743482774 970424642 992099775 336967689 704615614 228219199 851843446 666738468 701029858 810963354 956552171 84294803 696557470 952780902 993087660 891995232 993225505 826517464 970522419 713649955 854712314 708763862 890344055 299384707 581037297 791766145 897048170 358156967 475514660 461030404 580553475 803200830 848116681 271386154 846258444 988196077 991639762 633164233 941213264 875779945 925779732 507271423 681549924 894154593 922968383 348211699 699463090 493051748 728552018 638227535 778420668 203157853 504072530 47809444 989280812 239565278 885178599 20980654 522265344 110264004 978505757 101535357 598080139 104613575 859618645 838624661 937549289 992263379 993690047 500056399 804221735 546902381 908841710 882109887 933055861 237416139 395475146 378069499 439435265 265970783 853974731 432133605 900828350 419448157 574279537 794622261 880562197 15698296 425762920 162834863 539247938 232074235 919980402 249157332 816735283 156450105 919787609 725799652 910725745 954916195 971165398 921591852 944281728 660752992 704448121 366432188 672369487 239814481 754184018 761359948 798229279 423977011 641846419 788179723 888692681 488516500 671670170 323727068 375202654 982081220 996918782 386920724 780767941 568053626 820892310 93570572 573676823 709799254 930379441 328895199 992737770 354532979 547842794 660658464 710798552 257063565 561793315 426855347 654515555 955345264 956212417 548745949 870017564 587906360 770567388 195808264 777597223 878449904 989718023 882831703 997350386 333597553 931590758 963207413 987272533 74699323 197306368 331673841 930446938 102025144 758865480 459374257 585517600 397916775 865865943 123717760 663443084 900715798 996460454 275706774 758885213 507153152 729537350 884581074 905884474 909546124 950291131 756279765 924586835 739990564 795835250 300930349 417759235 936066652 991589631 236987233 935939789 453181161 892447886 578084650 685497686 962284856 988905607 551637553 932062163 478359955 946358175 636544050 948356132 386072625 873190759 595512626 874773645 581941224 728264130 30569002 488633529 535604103 536844682 121312645 881214200 925473618 929493400 29968146 577781174 103529067 655354703 941707414 984534668 218300545 452036275 31762127 57216208 566908551 607334341 111598542 268333295 891229522 941845386 226187975 298569149 388200452 566805453 990511085 996390512 770349746 895943444 298952942 351343701 751278542 801703766 75567412 647336012 254182288 323322972 731667507 740502653 872796720 958362378 436568989 762802353 715011587 855697704 715979053 862763049 634365085 704228632 493927926 559445912 657759421 965743133 352280027 791812208 506403988 696222397 217227589 917807227 513502575 825068151 545468893 631063877 672585701 849480964 682866298 901177642 667726238 747582287 994027134 998778436 660161646 716600650 39272915 111927943 420197096 671891173 673679517 801112368 178029505 947875696 653712509 660178185 363692947 593103702 477057668 628228234 196137528 422433998 486095744 660492637 68946776 627996427 476474705 889145456 139965787 923056306 235016817 954749252 31887797 836325551 33650116 382865249 589158944 869639153 660548346 717927195 450272452 800301941 804401919 982109379 613306447 680820858 526080463 905400298 820169137 999655391 695726060 777246722 931715233 991413272 343491380 819780763 329396848 578655939 162991866 731522479 359996330 936062809 992470649 996587018 488803819 949564540 157962434 263368454 928630242 943182256 816862427 862470630 118037344 267321165 649154316 775691011 634767444 709616188 732570572 885417683 824599979 990990904 740376870 922382542 970418762 999492527 229307082 850629008 326805545 596836566 879726576 904345120 605455822 811126935 453906427 767542065 463424347 785205981 610511794 939519678 740718250 865336195 923132669 998557432 488514410 538710226 518749022 607812083 731365114 749481806 747650494 778446087 43053250 964155412 965426388 979996186 624534870 911891617 945729677 984211252 862952991 984002005 947995358 986530082 975914652 989385231 662576047 828374043 424229421 967840702 746614605 884905033 620851698 664662068 818444540 951029302 523875835 711977213 742798903 909457779 550030145 606667841 360900219 393509198 527653451 792137157 627747879 775040679 608295929 809912889 292883689 557996328 757197837 797035550 803086333 857727993 516402724 645970346 639154525 986269209 886161415 988830162 795243823 802011731 553010931 761986034 995467084 995534986 114792037 836376134 820476273 898581232 39402685 308141151 954307871 962123324 372630457 598383638 202245333 368509703 960288879 968244702 973644066 994466157 195781607 394784880 893772713 934157257 257809673 552070954 382641870 973308079 287228522 850455472 753593148 968374768 337240383 493627473 128440864 408905431 499479747 686371686 392632430 611957683 701193027 998284769 150029056 370580468 200009325 430782141 10267343 350434218 499720471 544047384 767559730 782526008 143979091 289602041 926411451 955471455 528183838 541854383 696496070 912564265 281399834 363195419 993166135 994962663 567499062 721232118 92316388 214371770 217131073 474010068 544680421 802211916 32705490 780514370 775193712 860404889 661973657 937055361 646882515 647607861 890821979 956588078 351169043 909816436 913302973 918509129 616149072 945528798 824061852 840439560 108598330 468556853 648976151 897506235 162329173 229214160 329194460 516190350 111979506 266809658 166516375 553131065 498054803 522955085 542044417 971531363 863766429 948473761 580391039 691975025 916841563 974726495 852788423 912031198 794649407 910673358 325938593 669029586 429683918 723889185 803314620 890153582 875153011 935567924 904233251 968234972 588413398 739269910 925496449 927718480 776555117 879218463 143730627 563571663 799440121 883287637 330176702 597219210 153431696 643172736 318270329 875998206 69807076 629379009 763404367 828274253 419109135 797969139 705943195 706722068 696091064 870281901 896948606 949007475 939213666 943720449 137851135 304848203 274286621 519815015 431234806 448449938 69021113 648937205 867868865 883685028 346009141 837678712 720847804 961148345 205448149 346227586 385022300 708071185 212015925 318209142 495246829 688367367 938835308 987117734 133663249 742768438 544225333 902647492 393269337 771549835 443036368 994615958 683550891 888948199 356226783 913330540 431849977 611000724 135385098 948333539 606739330 686209757 174734149 373503635 175685339 285920273 200625731 566525176 306492899 585071096 232319568 647829904 93896929 322945839 215441115 985074177 207087483 426060185 384684974 788294452 721784360 736847058 84697388 379970875 240028180 342192600 785408515 947067137 517545379 829515429 663169921 895799485 418601201 626181830 397703578 425327119 843311377 968228479 675731324 691838567 298795830 738076638 609700878 876675393 659309743 733270175 382814375 537947155 609353409 865473172 807450844 968093139 582990236 829125613 687470173 935024582 638100976 767414360 442087267 566461344 995976787 998030079 220343569 824254549 944616114 997826929 59500744 739645371 684191235 774980855 990239653 994793846 883005116 981596606 104466881 774198665 103540029 837066494 137858474 673103315 110131884 570960245 293479001 412356369 474331356 816676383 755262807 967740894 289900498 730451197 992922207 997789025 458457535 764372035 753383292 836660454 704261667 962468185 752200974 848840164 663952119 667679511 27960137 475361919 145407577 511504973 943306952 992779792 527030902 637567481 920862802 961321002 648834801 974034248 288069604 476862494 97462943 763979734 456519482 598347556 645614900 825558177 662142985 826263078 435785626 908821648 835033074 982442614 383346656 595384588 530591265 861051679 371540049 485147290 154504444 514073547 295133511 880673950 138314228 393294824 56584488 749630550 304960767 571926526 11211933 17572992 201718763 982945903 453538037 829841765 901929761 988011853 209954491 875230917 722766694 725107327 185482319 482038351 125572092 634733119 82625328 199986553 154266687 827326550 554977825 719555596 875997633 910700789 660382413 868735982 105257665 359659217 407633080 825199862 652736684 654531207 881535831 946293761 807547442 893449337 820416265 902703924 486018981 890297188 28624328 140735493 270747827 533365841 221401561 259519712 858036703 982955332 733698876 948966259 502079616 847419046 341585990 822735622 207398784 784984670 604293003 948651584 387028037 965631205 13151596 959177656 340317315 693452494 137523583 144005929 374846017 701958941 521964127 730031686 819093487 995844630 478883894 844386506 665176402 912992460 234338904 856045235 855085174 893319055 606508580 650774769 42080721 452557228 828524377 869126870 66010999 94849098 115378673 704218649 466853638 507719060 106027287 988501287 215467711 447364047 464089987 736051479 535733198 733196056 383480208 751688518 15002425 27536976 619588514 974802322 349531731 619299025 451480379 743627956 324419571 528466967 231226916 523185306 655953932 750500034 992427690 996865258 629851748 861322253 905811707 944563170 602843447 913041697 387547587 562730376 60417413 484090981 48487002 931088668 646997670 964733933 578191118 840178943 34790051 884423258 135746228 356368152 781901112 852492297 796859592 991334556 986953478 994434332 295534760 930919105 452199567 602199661 186962972 266645361 751974380 842997616 984805276 986388674 693947555 769209959 709726610 850570169 378454298 852507729 677186475 798025715 463000141 572943467 2030574 288203854 969620774 975753099 207997257 787843834 923915445 955398194 998575024 999140894 390456425 676191161 687603168 840519306 316580215 824229213 537552831 758340893 435972407 697190361 191305643 994979118 433603043 984843115 554022381 850523670 947455917 965566205 607135592 883728022 559220315 731020752 556891022 872320875 774092382 784125075 142832504 586550025 742601308 848910470 37775836 624551759 921069320 980387760 335743339 895051664 437416085 899917430 237178153 985208262 640966634 905623099 686232320 906929944 822977116 967706124 717539078 831995174 933070732 959842671 374474112 745499355 756864373 823990389 678744403 684884877 612379667 830872050 944489120 963805707 470607397 507633412 263753984 462266411 129532911 931552828 499387782 695969278 407141435 567303915 620549001 835936155 639811659 956168648 618568780 943331314 811251993 904610020 181589659 347913469 284283392 466855329 745000889 875914865 896264152 983020618 762453423 839235815 34232378 75152974 834256418 876901518 732819003 822716711 805122251 896181650 538670617 739389517 856957930 978759498 826433251 965766033 243798081 363112576 634340199 775007399 874442649 970937245 663283977 851645183 798241810 923438823 251282467 583107934 679066213 890961572 222599164 712961204 764677471 859582303 493718147 898750759 855942987 988503961 989494665 992895568 699770315 901428038 147073777 399857089 409575326 557926824 277145605 281288337 83979874 308260797 704139421 801990801 810597901 980605521 650503793 959626199 648039474 737324998 14764351 526693867 869998792 911127985 484725030 861801279 570806884 736561634 318989323 354458952 750326425 805879629 547320083 772392585 666080222 726280557 532037497 869155895 817776944 886818360 5459380 979673960 509579937 955835834 721180829 974380963 20567514 50745791 744138781 828211747 97170325 284071859 252605165 658912011 57120743 226413282 955088447 984828651 113069791 313687937 362094818 871250818 522297964 691413945 559678608 770434646 417217256 894581079 389849048 427111601 541823366 572396676 907137188 988795919 879393187 950377551 459417140 674054392 8913049 665408098 180306998 521965969 444438009 776449077 531048365 987414665 828853550 948561853 636195027 988039606 175797544 328161459 542456816 582159159 121349386 383239154 939812944 960731507 832684419 998022098 49534376 364936106 157706974 287701074 366952618 398166043 262831886 975059398 951043189 991738585 724789569 754785754 933970235 988165314 90014227 512952603 286053028 622843199 926052386 936149875 485263212 607423850 359297594 574339007 96858780 315615034 316240275 882259149 438063388 679770491 774620266 883902579 73697042 766518628 631493712 875117662 537993083 640980917 211253363 639614732 246550230 374199403 312020969 905514951 918190310 965961506 307493056 927287774 524369917 533513218 351888645 658430964 328431894 823654066 930229878 955854123 550555846 683362094 55306413 78178909 466788196 869396754 23928016 698345653 709049393 996267727 874158158 939006268 158103241 267573767 419079638 496263369 759459102 950615739 676663639 714504907 671589926 676178012 438667747 646069644 228568094 822390977 914613003 952120775 927264534 968054417 157360088 529602224 688907115 856817873 267382975 671160424 317446786 546045593 487834626 494883026 528297319 861413649 652252296 951179129 591100101 911662306 45594175 222558416 539171315 739641325 513435141 910690409 263889109 381514785 632150045 640682885 736864054 813466542 475727827 724286924 95672573 174250215 523445395 985977728 884344997 885336676 962997318 964763250 743953028 903609903 938251304 963421106 210574917 274546264 417581328 550899308 772519985 960937600 283315252 737999301 274471130 745669579 613290052 663524085 203532967 323465836 888023611 921873908 574376246 675136637 559246632 971255161 451525975 706757341 401824007 553065354 825135178 956324578 643536946 662276743 746913569 862490361 453202293 741772551 433828041 693748604 423862518 750175483 298750524 452967908 899356692 931137683 473246548 990865555 951940941 953366739 519578084 958969414 555793914 793683649 62076107 736710748 131010699 660767498 872361077 892887846 141228736 653828970 987617546 990743604 119128174 657418013 975179800 982069607 63141379 241243549 713058913 753908684 150356343 773199862 116313395 986787555 508716265 693119304 781179599 835995498 278799445 986881573 62583386 936439055 906301655 964334954 854548899 914585617 627577805 802529838 815381902 921729494 100276733 495894928 828976798 861106167 154756514 766163167 511287962 977856291 601172374 601335199 154266858 452680384 329346897 371959097 364345420 578888167 836061141 994346656 424007857 555457746 646081865 787077027 650806266 664973974 443586033 905344407 226303276 738913161 719588595 755376492 157825851 188676486 634420635 730055103 39874410 665883337 435658523 507285888 52850644 166671923 376423969 682218574 49096496 66796419 59346009 580004832 625065418 888668125 447555428 749860988 124464399 867675398 397387259 443181192 510527529 893959923 335826560 565540313 726794414 996184223 496974783 567860803 914598277 986554450 164008821 211201846 534859756 776411445 651909792 793055237 539684629 742463814 489633297 614329079 689868245 976047812 955671877 997792882 806555300 897982266 668281619 743138690 111401400 807108745 692292212 965185164 52881309 923385582 512957213 700545863 892156901 922091813 142857302 515622689 672152247 790658493 783404427 943691180 913931953 943796261 353413995 648156422 246585395 746464102 596581552 923157801 272959174 853301809 784874376 811131282 236847591 237754785 296763349 621002575 134795899 297289220 179425306 351097219 199190509 830636986 909234438 964483745 649625429 814522120 604639316 690484685 548407178 797263660 276528949 407488083 984570662 986577885 293155266 964710551 925020790 929338698 462340087 746864318 502303872 701497017 662403044 688561950 540133027 932246641 367192522 371663137 326237625 764652528 379421761 694798758 441600431 535795182 927316036 961723780 636037808 878552318 578538776 818318916 927379372 940378157 429771635 943424126 268112680 643620969 56620359 811021424 51563824 954270835 316397153 662040733 174157379 282506131 811938259 901284690 418958207 434283299 386314623 409392764 459428250 904772403 616822798 707989311 497395898 879107490 989056828 990498355 202234885 285093818 584430497 904454361 665167235 713900258 163807551 408831139 946185969 973218893 423420813 944006885 156234753 272532083 89481230 949222411 489448606 896473541 389402859 976084760 902945799 943919561 815360439 930669769 854395812 915728529 297028606 781802854 803182149 951248538 127625168 334209924 840925695 936420329 947884699 968229810 499835187 796646869 902397126 920035763 427793117 811381886 29722289 419078631 263845386 857096284 615954679 635820034 372578401 410685293 282917993 468769644 821116561 890945797 656573710 887899184 660471533 702611970 511579466 811659612 447953678 637603460 844163112 985140828 141884298 826385284 470317392 932659238 886506463 945743357 169664845 789040804 730988842 974312407 878399422 994336863 617482393 690162743 74558371 122834356 519900591 732679412 652645180 831339652 458989444 716545754 134172892 245373717 242026518 325969123 493672657 725061942 269817020 732494580 853302354 939267391 78535910 489216793 898273880 939249493 710115950 856136807 323405635 664587356 741281909 931306226 280696091 304021772 414206082 542073254 883185557 953002716 312058564 469712050 564433231 764551931 285917742 319342357 271354929 419698827 164550983 226965435 408728551 439439607 501206774 616487221 150834944 794786476 31342434 79764930 855241192 964380499 77669538 267223384 916766033 986709028 775671068 795385250 76936678 409839334 902125069 918593694 573920868 650728679 509776388 716062306 380147214 689489275 267305183 554780523 403372921 552479074 162843511 271519364 389108016 517813556 385397400 620763247 460448523 562231180 172811383 815718990 559207582 569164743 398268419 797273834 49093684 597108303 670098125 707069511 89757649 891803908 826265127 878571975 368107473 979400955 789644694 858717700 540289824 830224314 824084794 852479718 528904318 865225346 109762716 246812499 130809963 467978841 883465370 895161497 245374109 992086074 850032260 898662912 169666357 762927230 500418406 727953437 201789378 883193929 392660345 798544108 899563357 965611695 818207165 968841415 515585529 948191005 198399796 541712558 293682721 940900025 24457695 644880677 276816510 587816453 622616021 799441641 723797224 875756888 653157307 826804142 788150923 972699038 35857982 172246967 909750869 984645956 531078860 796162422 239077563 493226301 178836818 842083489 512772137 938435766 843720831 953059940 929944184 968234722 506263104 633276902 848219764 958696853 773630667 934215044 932369709 953451157 896241996 898923543 487938964 665003126 564794476 583723970 719058557 882299181 522615485 999469573 413592474 836011778 229321412 911448363 760822956 923548683 943232364 988991270 983626790 987441562 47243596 371734749 53800925 893724741 591147664 906880771 738254605 790146951 667313122 823813426 34577046 680044661 816959926 830748870 772472654 849300155 433305720 854245471 878125032 880085943 247721179 816845594 847331866 963022825 844359731 864487269 268640911 938678095 351277636 864229770 475737149 685876315 304766880 895874693 904623125 912751060 676000704 981180593 161034416 826710150 97570789 950249511 743189108 761207780 519560511 566574547 909668463 963801892 617744284 930086418 991404875 993637725 684407922 928455717 98956545 268364119 825433922 827128044 874149991 951332778 234108582 491958953 273420801 470265935 82551262 399805496 514726672 557209125 282900977 347331317 378545181 542179424 243631357 884488193 871082796 995296925 791797685 876040029 373821337 562269552 669473954 750616128 459664574 994011558 720296480 997300560 460772709 690495831 763508214 799715553 971350830 980542926 315172474 537699458 77045208 690260549 148064963 272142141 559587238 585771845 93555868 148880647 609101186 870641814 324984466 799612277 403723837 505936952 166282925 587310854 33433310 82583411 820491046 869334732 338242298 476510995 831474352 924608036 669436958 983848383 378615807 436753031 937370822 967582641 856654899 897257334 916856358 957416893 855192404 871736916 439759385 532684820 833696246 985257039 612441137 801507915 578233586 827203398 646381646 761961108 327888126 876996817 366064879 410208280 507115193 761218021 959430854 992141227 470268888 501028464 559076753 817969445 286298435 756840592 606872007 651016114 370540854 469154741 655502382 918893721 624268456 863838776 688678807 758116701 882649739 996300703 626598576 992371877 625828794 987468707 990254451 998542620 308550269 494709923 222503138 779084306 145665642 603970767 38812994 901333949 583264771 723869917 738446052 747899875 855587369 883878019 468533376 765419073 331630578 927288948 681586488 982281477 442915762 792366808 113181635 872368553 81434971 141925935 711115086 949399199 379411744 506643759 69943476 638374276 851774214 934738998 307527106 929688653 275451188 541321934 132198043 709178702 415459376 416360798 244064276 531715219 288554259 747351836 463302043 713827053 616156913 753740114 499508612 995014651 46882630 468294895 810205761 887120993 116131597 359533233 568524519 834400898 222703080 609866882 300671008 866038736 40552210 678763236 444943851 944400223 682891747 785086337 928113885 961860347 953194164 970970285 625167456 963900123 591344108 984905803 232658795 259263617 720946798 961183597 694983731 775265955 823755108 903394907 86743293 290840178 610942591 876948671 19624060 19916851 198503351 798584419 648405454 685868533 480078780 806376848 661836092 909137909 103120080 881881890 184181336 429510806 610680464 910580553 685178468 949903522 197715757 786812420 462687875 677512287 890133235 893353821 964039222 978244557 1364057 753569171 781442568 890930470 642226242 960712990 288998084 515146518 894160781 919174959 815987751 956877097 469705007 738295731 767652322 776144222 325718682 649428216 404090064 501065536 842261078 902970349 158787405 431712088 205840243 445067099 519431354 647410057 71151600 710696225 485706430 643688562 883345427 928763481 190019005 805747006 482141269 513324052 491463181 832388585 932218523 993751823 76748515 981764861 408626439 767869243 557850344 586802718 686170811 939688716 540163121 947127858 582042205 886524423 20018419 416943885 312044381 369219372 942278933 942705982 746826878 890329243 92999795 440235481 689298315 830523328 208595800 262541469 763218562 915161360 345135821 778101441 332688543 394864703 456217783 852712794 487808466 930144350 712037765 905837975 7372859 117029627 234558719 934039706 522765357 616153490 635741846 807642716 24929397 974044440 344597208 389867801 755386514 793926331 893721075 966956473 908118439 955610728 731586568 926172151 987717473 991440027 77195041 163038913 635757968 689128966 854085939 874068115 19267176 584313116 977431940 990240174 560862330 599208662 690569579 875753929 287636549 537962058 861975897 962591472 857666424 942601712 617838302 677497127 995886793 999975978 656675118 938567896 737236346 970249866 61458672 329897070 330406499 989175105 690111965 938113496 697502425 746999562 308587942 768584119 964625825 983914776 672685824 858127254 698839582 720787631 80985710 199810060 213928234 985196391 629043939 665700648 364637679 989812165 104894487 805385566 674356487 847741409 355991316 796064974 793836379 813083728 253319113 338045693 488849713 999102442 813023293 886042472 999280259 999425780 611093821 893066077 337006427 969646936 866294618 969291421 706253294 743513936 108701990 404525344 351733495 610467566 924182430 971441136 467903527 778191779 161987106 582819965 351565696 631394962 231219482 721391839 148868268 873238449 253081011 580426251 951796559 989836137 931728984 991079355 595326568 742320844 492170766 776485150 776454023 882785549 901791523 902410030 912967288 917354514 195418004 209529499 547913510 592959663 389367410 566542164 972236486 984922662 563548006 770562335 858257149 871033484 978433086 986297291 399111398 780263720 307810789 758521673 842252987 912366946 508519101 784644392 222945033 853676638 259292364 770983515 545341958 896554307 435192190 833295163 51054819 138404649 523044123 614229026 312703333 726816500 773498908 910216238 253087641 543081069 218808439 612348859 956485624 965940388 867870345 903833806 60904735 819230993 509225367 780485973 525370139 590507772 806665339 810209255 363052032 787244994 546163572 708410981 478120923 726049250 324273413 744006972 944505767 978956619 72418009 967670149 81935229 653878566 436765543 910863014 510847893 717607297 705964339 816983652 653123920 661035443 903077970 916873371 863618845 952580591 658299032 806998733 423962442 627834677 438841672 485265217 935283435 980718201 530620395 570879825 640243783 790863596 83269421 360537528 906269618 924512558 493720877 999260305 430256363 827579627 138210069 664023811 292988557 352909090 310717382 972400513 414890913 436113200 183397657 215953304 817570554 994766032 741569417 882042792 282441048 461826560 879602928 935687534 54787255 378504282 289498689 826487977 935967978 994224953 251080822 428994551 220440805 679432067 732190285 772128965 365123498 737012379 562731598 740651088 16815410 189215112 169437090 443802588 906759690 971496279 534106879 628340469 950677283 988924273 296425373 713438390 702778514 709072513 835919563 921274680 924914238 973383515 957339476 958724044 148825084 552741868 804241048 804893673 851299167 883322053 501207076 795628934 864897366 923111765 609589546 846693556 167245243 969480915 775209600 831663296 862783430 917724086 276514450 323813309 703836347 972189048 466513590 535402531 369697596 792487335 77134623 583370588 50344424 374477047 918821829 982674640 510001212 995412226 340763382 910706817 772911102 912260484 889786438 893942098 430230012 717898796 58943525 555331138 993617945 998423782 273683547 923733017 496244992 944572962 205998954 527915131 513891655 969659708 928801877 983052764 265582308 538277009 694974419 811516563 789588333 889992461 371762213 977710517 210615095 985984414 935314560 991341659 808880898 903360863 606559959 855847592 997568586 998413853 367988444 509916732 590938532 612217418 916312758 974728888 658183961 707946842 1116014 247910642 112567134 433846968 25595378 242310591 564290397 646899885 909869195 989845703 408044451 722100106 385188104 553274504 928426450 952165859 451316451 931398513 356342905 554915833 302658673 700578972 451129602 956457605 700297444 908129240 601068155 783899187 673187926 903829712 898890700 905773081 542370412 854506296 307691143 745311673 79223164 186259229 521840680 761244666 279384246 937537402 880994378 901853599 56707805 290871432 864546434 921103016 786649665 983846395 23330823 640601728 934920949 979270015 271669049 869000247 755679909 973948937 710883944 963651915 401572547 671209015 324927177 578845131 332474849 881864984 464676418 860351055 869739027 998541791 243130577 296854053 962742951 980448631 21642270 195409263 656325633 770898304 155081081 230642553 773412631 810959169 442334765 551754483 211486746 675403872 547378977 841769115 100627044 756487321 646487297 796470901 927316892 950990354 539254253 832497030 232238256 435349816 780677189 941574163 367477406 572981118 590998454 595259562 86182635 364047693 836532129 965881682 206692651 940200292 697253319 768248577 341057439 415246947 139437273 345316916 423575764 602202893 988015777 997149678 826605704 964205058 557325765 589549516 144312742 384313379 842773213 863491923 742170916 827424123 245585324 767689177 523321029 746073507 128302521 542320731 250213071 330780459 175948001 696014164 191313376 223245978 30251336 664402742 653326805 972679353 308870950 928049429 764226044 910545144 71710038 759978266 17853405 984953449 200510527 490912077 929277402 933824561 759838140 918359627 373546300 879776425 358245279 410962277 979030253 987096327 241938270 417487339 725274756 768714219 330911666 524253511 534511499 955295149 961255918 981827271 374516491 431146096 904606123 927222461 515507709 638492170 919446983 951660303 162432330 721262005 692597878 777592660 726008500 742100496 246038580 709907225 5212215 473751304 891898148 909887765 909340987 927336033 69170965 631108789 464601584 573123286 936947023 964269108 53540781 640906615 713095554 964812048 275505507 916444818 565219310 809582241 582799817 903124529 10615320 596024742 32787803 341369340 257679627 587202028 660271818 949591271 317407907 782789931 551338216 745564207 302617001 619228609 868308037 994562116 523935285 758264488 235104462 329580451 575376296 740193993 827149975 837697092 576675282 579754538 685215745 723695707 311601266 969906404 667204248 758386174 725202625 968578232 856086812 984053383 875955088 905215738 823111142 839915298 307215029 905229607 906874715 995442391 816287072 941834072 705214084 981961644 62691176 271970376 380350879 874485079 264960214 735304279 659378306 660698204 699557180 974745008 439149691 658303658 787112323 788711563 838675851 852620682 783707676 849580381 497074371 559537909 255268403 867750938 521536750 982002506 464729947 467412636 313080984 802865603 183832362 976403553 590247467 642630813 727229164 781905134 111800465 488179069 516822849 758087355 752507629 797319864 139618590 629548128 153517387 507885118 977703146 992400245 932676960 955999416 307060196 990327094 580299407 862363665 912592605 962233861 660021421 824053201 600313798 812627024 645383739 734936140 676789359 918926850 760878323 800776923 107552555 490409989 328115763 863832264 989765628 991180654 669404750 868731542 921042435 940321088 248061508 399952689 633856685 880240974 125090660 352362601 720876880 940587133 565955724 684369763 53067265 116031863 999121249 999284064 966946766 974922264 916150750 940466448 567403155 737825282 861986249 906336841 242981461 671999674 602184276 688519959 893813806 971375743 230128952 937898759 736149035 863665457 108140637 960724388 300541572 663773950 916637587 972032896 46087734 973574635 333441844 976518305 375770388 995502238 768866478 769844769 133723281 755698690 934738550 975078973 317358376 331355801 916977717 992268107 69151721 646794092 476807860 850864030 437083119 865262112 55165527 615190007 650532916 659620754 689165950 894434081 832463635 941064566 10106589 370572107 144013127 870254726 871035115 914960970 495504706 978448870 978408932 991786363 253558016 643401205 82266029 991432001 155031886 813964310 93153051 538247211 233628720 865176531 873788894 990723115 523815541 940426627 587758247 731198061 669977904 681100847 122447148 793727870 927623388 984803574 577859546 582407016 442679819 738417888 865505297 954879881 187335527 671906075 142155442 476006632 464255220 741523919 63559666 114713743 520565656 947876332 224719309 633907806 838517689 874204017 612628161 623600985 336073659 666713972 996604110 999450003 925216929 994361903 800893661 817493890 846299394 891482364 844861033 997823516 619153252 823663266 881003933 926992498 720919975 869214179 86130111 292544738 875540221 914821595 414985461 459684724 92590745 866533034 621103060 856056398 454620119 779073702 815254928 947525524 768942832 872058835 858673334 919944735 408856385 650264221 472623178 993790317 311842596 980588439 383862129 413038633 869592430 952799176 418352037 834566738 157123163 484230168 521266765 871313257 818978392 839376324 698563754 802300392 490047564 741916647 549690888 566744704 618597608 664211583 828176310 903990424 421549864 483607439 557921837 965372119 456303617 480244724 50342618 492656464 35083226 483912032 983839300 984875866 64269603 817712848 739971363 906086075 365569422 851312324 435167301 662816172 309049057 969785375 744105280 866398226 13883259 335650287 804485662 869399009 951070695 996375907 58652215 194282601 11619342 333224676 377661822 868619715 8358646 361232046 273553326 913978887 238288312 720729683 72801085 152378126 867644203 988961900 581511478 854514848 805393626 959797014 892208351 971223835 695221098 892079535 940347081 981478074 291616289 955792477 446333755 608370203 188371253 706824202 125466478 328227889 56302382 172507907 443347152 643409124 310031820 816554889 747919667 792106699 786096730 982480379 594599955 984335806 640535602 898322582 830146970 925188862 945136762 975959518 445575452 557024665 913247953 989990802 376019080 696839810 506118407 966055476 229895109 331424320 346228425 371212141 395038135 596665938 601464754 962117045 651904607 924757151 689699378 806401325 78545895 415830967 557929659 690056108 237799916 888220390 956095924 992707435 941996850 981464851 108882880 790003743 163168304 187288181 710735573 893089412 428591765 482605037 265435757 902385773 685498555 719422788 766032911 805256280 66658398 339595268 614651606 740665891 333415274 807905374 876342953 994394290 350493934 477258144 183129012 496680227 585426340 856384455 657974084 876406927 975270257 993429286 226092719 586644262 887614228 990204184 781660684 839572693 758208097 971304203 994435119 999033305 112818961 424951292 60497886 367203582 861364057 865891782 518782133 964244630 965387624 994916424 354331363 671239518 371610273 655039254 473920602 655066012 997339520 997353168 329342486 795206201 155733745 191289144 942055168 965987387 92550306 191163721 881549706 980371816 647686608 692321618 729719948 826712727 631788799 654553270 796333153 979871528 776117242 831365875 248377221 672490835 886741037 995076575 774212758 960030355 482585963 573163964 473140738 793325893 767696161 891026564 184238009 528546760 556812718 793133438 966988612 971920292 881614404 939573457 439619593 578787225 166701393 968103184 450751329 835464961 844392115 945531953 102499853 404534608 477338518 671909085 274774423 669019326 167052649 675019768 663599721 813176197 945598429 992579519 57629479 899523764 543351251 880728831 778678826 789335943 489790068 993844099 916949658 985057285 76484983 836657260 728195524 852649380 194076392 673854093 230804225 520043984 478132421 598537744 627398623 814871901 578628437 695729976 406351539 970786127 113205443 566904437 762745179 785368005 694152915 766559240 535267589 966641167 840600096 877362292 772143301 897765397 878815948 949777302 719336219 720154461 506032024 609241249 360982044 505756361 572844411 653204834 379347442 927632749 806741409 947809235 272334381 737875948 598203552 813029988 106029333 612952733 432130910 607691672 598197458 607652606 815337666 843809035 234689892 802695597 131071533 874950328 251487662 625414898 768886303 930781269 779151708 874771980 845727410 999471187 502587445 646659926 454169363 456162859 633398099 747289887 931494579 942517664 176266244 349445263 324741599 503236674 836931337 962099266 498356362 640558007 507899067 586230564 726964685 942066627 207738269 917311728 735308011 782898054 193075233 624442438 601647533 994641002 879903355 946138257 335550041 794685848 990158979 990419510 145905663 301846107 430237209 559500091 645535208 800011297 612562879 686696185 586789273 680591180 39368860 393285768 419715901 534466163 640891346 771625296 733425369 834751011 128009215 641862201 852200241 866115282 752312646 918078737 573247937 725059100 85089320 355594848 112975247 332006151 620738419 708889411 110941411 276960394 331453063 572055795 555614551 592491433 47659821 892182747 383234774 450811282 448061270 748196936 322333045 909965161 454018581 989595994 97062136 621452425 29435892 494415530 28344156 103460905 222219169 774458400 849197721 947337161 456436230 627109014 803699558 977931784 17830503 792173819 898491610 926751317 63072573 334776676 944920783 989219561 29098942 859144864 374338536 836365388 766483537 900207819 410280718 630371608 262305869 848970275 292446810 984798028 483698291 926982151 283025392 357853396 249596685 923597548 847472204 896788259 750045048 975490732 104083689 484820525 734154586 951637068 709131453 840009518 127709972 920045874 532307638 689319726 918160261 973431196 805721741 885540625 148151318 190283677 793439662 817169149 861247874 883414734 689994746 965717395 709107641 830827315 513627763 989023248 221943756 339665052 528167163 765227557 363410209 406027045 281428234 931693279 7041199 38028620 511550723 609375832 188385108 471887792 334775739 926001863 34876057 783780130 11937147 483627677 243232705 571814033 690292834 811498761 560310171 821800289 553689083 576729368 568266490 745751540 142697484 514239686 289174942 999904411 740488991 796947751 244387888 685294874 71467735 381451139 846543366 852604044 471097990 758844741 354839792 683453705 609872605 858728089 192349284 212880157 41378503 633742829 356294027 493704220 653588516 984000332 493543867 539737113 832489748 938720681 115455439 256980433 926226453 939786584 226517169 680658179 549101149 952681974 689220618 754465607 778512523 946830458 694053173 919438071 334334245 514519194 846829586 911973312 693814034 739885788 718425533 742453777 118845776 774439464 438540951 635037533 429618336 851447261 249311125 928418650 150744966 633631907 228998487 435784557 452525289 817628380 423281891 552163096 878511021 975178506 782646164 898137582 204875878 955211959 158763823 229308829 740987358 860355384 505906628 650447537 127038329 846751222 259086848 981859314 708176902 990381240 92954449 941396089 881894350 971193891 703901477 812612698 7133345 668275600 143559883 481461399 813701291 943935628 634635114 848892937 702418065 748055449 685149837 693653724 300295711 571772903 936501402 939817757 304773761 974480766 266341490 599506983 40939504 482915334 792797755 846653318 187440462 341081256 230526298 909196383 823086865 906526480 81889896 451961227 817318845 827444195 636075311 756761324 648112349 770693049 397823175 802692517 986724267 987203061 349850174 762433652 578028524 747843528 742332999 974715643 298356276 681968042 10667183 701650896 330565220 771873381 262356143 476648609 123532312 522697591 819541068 969427276 599190383 695026040 631362714 679028346 360280238 443381022 630012363 661417955 382286667 566967287 787835816 801137132 623260996 967451056 357257462 535215269 790718744 917205555 302913819 668407966 476589041 973776386 855285335 869913902 158936490 425721198 232936615 931877940 625695181 870806578 691980615 802211665 112677912 199527146 598995655 732693753 260623829 868491743 283988690 667754971 298743770 495468960 339642722 932620619 327310684 695909626 61370191 219480865 504591198 648333537 758996270 773815721 636864834 773833579 504565213 945735993 460707686 467483647 841635494 962831910 210516674 478806572 585913936 658707759 256358576 458074339 350227897 544692960 596888233 856678814 818553747 974014567 840144307 965013032 835886793 941961049 547510930 801487102 756078530 890153629 943680599 960095537 310179218 691181978 315727410 774471967 344560582 906469173 839204717 844491800 313890047 673974709 672300355 831324990 473510002 904447193 350580998 558290246 203251463 798384261 994831581 995177446 77989975 687261296 380920479 822714692 8934307 545981464 858320300 986762061 723664402 950815362 938859061 953734185 973677112 981228701 248731371 513609684 132190229 307203528 873917920 962254747 591871883 801866882 203905014 519280326 135453954 969161632 795727485 969864051 155498002 570530150 83213904 700676510 900843901 976402861 133876880 435394439 223110383 429212365 226725535 576846870 241738511 369336269 262866050 584738972 365255687 403412988 140446443 679644417 976889001 992474938 431690215 606963942 892812628 935658849 254230456 817535047 624109392 838881566 782831263 825197169 56158338 198946580 338657118 374530588 831330950 912293255 80021450 963022562 388104874 899861610 299460394 596930028 299302286 705102054 39772461 936359951 434148928 557750873 84055751 269927025 690898805 932636074 61572823 83470966 898196945 958531421 3393035 271482153 529227070 549149073 603730185 659261467 298344599 944848308 49799295 490815350 220816354 307111566 403963735 965393594 939600190 971702857 843387764 926921462 408391856 691475281 328541090 669131937 199944648 517416002 519772525 674288356 477488179 908487013 247436374 790324894 728353163 893200840 26712430 640503859 325673277 793161763 993229170 998158494 984604699 985906408 925792575 988576751 102567842 135048528 912046901 920302438 376641742 626035179 72213146 336085607 894477035 925160988 802356340 996622002 987789293 999758564 917332597 946018506 276086548 656166190 988859241 993462518 987305269 991698198 405042768 930161227 321571916 473922260 588983712 796455734 615258095 792889742 751711372 987044916 990076614 998418521 360067096 979118333 409892356 695894249 437177607 457991700 357733663 960593130 248658902 794653580 543526733 912555895 498953789 750164301 784559932 952088019 885781492 999339648 860656177 925274770 590939785 896705211 610080107 908696084 197920987 483527156 155283115 372865307 256290345 954130151 327441881 949631613 29523753 379557818 553621957 652772377 264985071 786662153 517892343 931929666 917105894 972166595 467803171 689404807 92993957 465514157 391318736 637257297 108738339 688650666 898786701 904879799 775994506 938312448 700673804 724070106 426983089 848064830 415711666 631272236 904303576 952563824 976056663 997893431 3174233 667425335 84947456 873428746 669336650 791274311 207608841 993833196 327825598 732142575 92742753 568495873 650356671 745972795 85913923 812299300 495378191 737626501 612581203 849011212 633643882 946475919 603382791 811647716 589778748 897440742 442420021 533747747 538941390 916122904 845100712 878306442 515691626 960552759 78363459 249269798 374426078 613937540 630246257 989191762 259064691 452690396 991690863 998461389 853120496 968336366 800817199 803169369 795708994 911226051 582112205 997083519 588514342 755080993 601370911 739966107 262253635 847910099 469963590 723519200 846752637 867545941 265938620 772454335 329886070 456159659 395920879 711468281 104560373 851811518 559571660 840089984 894464649 977587515 858730986 883818515 424276431 463259740 558809311 949038643 970595363 993933029 606602710 840456058 174051268 501838765 753255798 847572051 752316813 917059214 350211388 743754345 68532442 559097512 186814682 643003242 140681485 643199218 39553522 897390882 834814986 921554333 977754202 995186991 238131801 634888538 923868017 970205449 928288839 960271894 557803368 754159042 23024779 778367436 897819561 973823415 302182108 948332634 155793843 998993345 169464564 644222094 351952321 402345263 715844818 900563173 876212256 952513023 448370539 700778935 916833365 925542669 623751006 656128521 114976299 317411747 526473866 591792645 3116302 395320194 82083724 91185233 787452751 937474272 555192007 805771215 576383363 812604915 722662427 796537257 862280877 952818752 287420647 398752000 860401929 970245384 555135385 844656251 688142287 765529009 663711902 986175477 413640678 875255810 272868470 345034007 391923760 712261939 428444064 675361376 397700890 515456654 362803252 493263890 557407612 624429877 14106623 786130156 127480044 824527008 334993930 941035339 875861661 916282575 50552172 190703089 947356430 980764514 699383884 796804410 809866676 944566020 459698583 680944461 70666946 797105682 432771943 589581728 741480905 878372774 109201223 302242605 674036041 860298605 425753036 430662853 278055197 931686130 429782500 560078124 874197754 886064682 507410999 737349016 967917508 995787874 285977620 695304148 371464946 598147364 460092560 988124671 65957453 829704754 778541908 893616352 715902565 727320910 948772996 967108106 449920241 650436492 679847105 848733215 544433338 852259153 217748568 602639709 85313252 281213028 964358280 987647977 844371963 938196988 445615934 849826222 492063939 713428392 995632361 998970414 50167473 627325711 528553729 568644587 236851278 695176803 51200903 897770989 459301921 500540533 15657335 744549216 778866680 955634667 140841540 587271983 303527295 307982519 484659969 719623986 9419390 242179461 476786773 775121004 279550116 612001614 513668418 808637617 225122903 941069820 580457830 709187605 912638408 973141007 536196189 918205774 946860957 948690070 826167222 909442203 573393955 680107710 641963574 946173788 48630955 831032102 117766196 692086445 133988815 203154623 172754279 632355971 565197145 908732229 641652278 717333079 651915478 679863849 133201376 767922986 8979753 502285218 795106942 921291203 134138113 932156881 843355325 948938614 11698671 803819555 182631844 749061696 160511788 954543566 38809742 376183584 450947782 625189652 511964543 515487653 148426798 813984961 943135000 983107144 935798701 942507972 823096557 919115626 115753115 279757777 607389910 926310915 549379369 886786738 757052647 980558460 953737858 991895663 580879749 691432479 986558524 995229986 906585573 995102649 516848966 656908793 533614208 954172961 964242310 991869024 353709407 741270584 542931897 584355627 480040033 588150458 360660108 997063462 416399778 557663768 568829766 989598951 735287835 872646248 76371974 528434793 341929919 927576656 227719718 710056106 179782373 309935430 629197801 894442633 959131302 963230654 633023589 648685908 420870783 636427047 950857756 984860748 851862765 896422362 68099851 111641127 288548604 741972396 595119501 721754208 760611261 863843981 26609281 493968748 986190535 991631715 248841112 838146393 622712651 768134018 992060442 997033743 534428690 775533025 771100559 801775930 205534134 363839896 513773147 940726385 215072438 350771026 844952175 948451643 140291543 680741583 819629474 868789172 546749871 972207649 506802303 903912672 23052301 221168749 198774487 865335634 122421359 584151084 213309192 670663246 784403333 976339654 488621918 746841420 832710758 870685678 702252170 854059337 709767113 711026819 91667117 109684883 950169404 953115262 573136986 672725751 744985334 854802456 489866932 790121760 401275177 780324393 971284418 996277736 240899245 459146311 522860005 671774184 808356655 912994762 892401819 954562022 493964620 873605383 670285811 959887166 956972087 970428396 98653152 964118717 206335282 923316886 733253126 739537964 495292412 574429702 416208922 417465186 791201956 923420034 76620005 723088176 143638050 533920489 490765019 883318055 856252170 998895386 909938419 983560994 176376146 822520304 992846368 998513640 8126051 598255888 825153200 938737904 27964477 86261232 945508982 961537539 173368450 849948308 769224064 844437729 285576524 778600074 530158342 914089185 447411809 584126459 817965518 963515235 927218104 985116810 40450249 630716208 543694135 901462095 539895245 935127143 506504668 700672867 499882126 619597478 603069993 646752821 777439607 903007742 639531718 699013848 467609125 949652792 683254733 723856692 226090643 860810029 958253296 983121272 544327683 804971640 472749509 878459712 934803312 993469450 83215709 368887914 422775982 496673631 547973326 927303552 921509217 934112982 67793926 685352927 976704567 991962129 665207765 696032375 15801940 980622037 286647274 714047594 939464524 976442231 184504547 505364157 889401564 921663547 634948526 994252309 540526611 789186032 34137296 43563931 781733342 902895731 392697543 865640897 457311456 734508128 517435751 590559960 42357292 425509610 639194276 929219602 122038253 456238679 581260825 853823449 132072561 400400713 500289283 946919701 656311169 744107596 462992528 563486278 843369299 904103913 213321411 710322276 930849134 947246290 411122393 926236076 118628485 467392634 506969770 903413092 116571766 328067103 58033286 427657715 30197218 996266551 241103266 824387549 372513944 944341566 986909529 991582016 478157062 627870802 695499739 762762311 413563586 877895884 893119693 970191567 429487926 827799714 417932166 651802929 627018880 819258748 469318332 975077898 833853447 954756961 449726506 720464204 290373209 314724028 122581721 419042231 399285688 570997659 776295622 832476930 66710497 842485032 213876772 592339902 622988960 730370999 325233818 721932321 338403492 681482745 438324317 485367692 354860184 687140185 779653269 948762625 784168094 821185298 624962050 707201195 764070655 781910844 955740385 958835508 639291644 967155014 257795709 912727835 105965015 746590797 895899762 950942388 875845494 990715049 584232313 684638995 685754637 705353196 382755380 714448979 699032758 874699708 451098983 562863215 509279067 878321615 111441133 916660106 416928349 436095284 844497724 871432784 521878742 955709964 28191439 156440282 830726467 922618990 698035006 745829515 609697239 640589109 865279545 969001572 915658856 990388206 81373591 166561781 28018950 91270580 169375082 419534314 319676150 913835210 436020417 622672873 81912043 634255264 716826931 891637939 754200354 904648829 465961586 856032972 999610544 999644984 377795964 580233058 959875478 975387813 187463906 239775939 618428158 825283451 250091870 655027034 652268162 799785433 158999028 358371321 438789770 887026748 471119325 531801014 965904089 990298861 18824852 690666633 570194690 650510424 427661071 469534462 144489934 617288092 243550519 935260020 688619468 856572357 132106449 740621843 295589017 933331533 223052186 520195710 290692922 405827499 704254695 968251513 196882419 606483982 469610168 495744208 367555038 946712125 959936613 974719403 65808417 956357438 227284397 546801849 947618917 954907633 753497925 915292084 484306308 801181800 746065796 866357334 698453111 807582102 102698519 343083169 54452806 210799384 624650884 920295430 316323471 802161588 613826722 745266074 157786249 485754398 887885309 992957750 48090702 205288265 181243468 502147464 66232505 928278979 214531829 664545458 250166770 917652847 768856457 923817536 134142545 770358389 504241421 662253470 787219493 877284285 170761727 673162500 892452762 965259059 272588211 822760793 942369600 979563886 809874083 998124705 533001201 880328176 595314637 650200820 256101530 752481963 823182546 948508052 561739005 965788484 956900350 964210633 232080217 876343912 163154865 488470220 141859367 356081685 162275470 699039661 22466639 957538644 584292560 886840960 449320167 713984832 130645875 718379553 842097828 856486873 697817691 971137552 725032314 910880247 905977711 996663273 274511153 773491389 616514032 961793790 987702310 996517878 595319095 677685625 639042693 862473480 775083559 998181212 787206350 864461502 156667687 612444972 947719655 977253180 180681089 572092909 391612183 553996074 616340156 940408149 150247191 478891887 404262308 407604064 449198453 481547742 602431328 836195069 500082367 588610500 720542438 887283204 461815472 922459049 810016581 968903837 168549321 525523136 681369303 936185143 304360934 548801603 344074896 557127104 294710762 399225330 385572176 633091818 833528947 862575707 596955045 791189342 13435901 218473029 256982828 412137450 270554657 853270627 935374018 994916492 406455071 775006946 157384436 336833808 419934341 704052367 856997554 963572947 545203369 623530286 837470762 900818071 157273335 179933221 69007469 752588974 862485083 879422279 160203433 201435164 913159504 971068453 589537730 761466590 37236651 382909232 46752041 111369351 853220659 900811554 803682572 836769382 715486070 733745246 810929492 848828737 746283368 913580365 895043880 931498698 569157349 887237272 110063018 783263118 246447627 839342677 731533180 838480282 401366670 589286048 665832752 830626099 955974627 975491539 14486524 270869072 143947948 761195592 582348221 975606192 326458800 737570546 196337957 727709635 772464846 908441699 313771989 318069076 353026061 948488886 899421891 962878175 863431922 877013303 76484516 939689433 756690559 919542481 227708163 263335230 764906988 938692208 246674282 382960274 302218930 583721770 248335872 410732220 658850219 908365159 225421051 476070937 292567464 591627612 15583180 999217279 279353935 392203149 451603739 954546850 145931867 836009388 121161105 519345788 417742345 674964107 763232063 980349745 396513284 597559945 612617206 612641237 539844984 749725620 52731930 491182550 203041855 631641673 919514511 941949804 448416925 862420444 123002919 448969847 627133059 911725936 604166229 619811565 575364160 952808734 142197769 533984344 887106323 977775570 73344858 158862535 69579836 824485223 664816798 703524222 235607643 763306821 603211135 819334748 855842088 976441707 488884408 900498918 960427887 964494710 475369566 759755400 42423953 211130078 833526193 949579808 199521359 693941152 865915006 887360463 787734400 814079118 567020310 757537012 944602925 962281322 846299148 885613931 973452137 989078031 657809793 823469103 853178706 965640985 593791145 899284949 390887788 445215958 944110145 954547462 390524386 447374834 988692208 988762156 207193488 427657846 359848261 943860347 426756115 578741734 24467697 310820180 575822038 974070715 211824686 803371485 665014574 686797682 44314673 547204188 928905610 972255991 533199622 968904264 170438838 745957802 368365207 886680067 446509901 501447971 203234990 451870616 899816553 996123382 616062017 648480161 589989931 677228580 112249184 929523404 732094592 937598925 275893758 619312671 929869045 960551956 201383724 876389874 207426978 636967503 6106482 98093130 368869668 416137996 72220352 226471544 730638637 786977992 716791529 964971950 76518052 953519670 9660342 239130306 674984369 812944394 928940754 976684069 936039288 992428418 209298086 913816307 265999590 911096378 969930958 977421572 72369157 348745180 73687997 355565947 971555654 983395928 256253780 361875754 426147548 442958337 219533079 833412455 664978978 733879735 742059602 843420734 376005924 815181716 350354107 483257727 409424022 726112389 920543449 954951380 575189824 936937230 600837518 910610953 460922277 585021734 729398950 798225033 281786020 767478344 167713844 686554907 46838912 596762590 436359447 537162095 865147547 931646059 165815638 799047998 823042179 951951397 803233683 846379213 86315603 90616203 6897308 39440525 418991350 626341516 743569519 927627294 584962843 614947074 838423781 849391851 174899003 285833864 942027292 975933623 768903139 782661273 211724257 945268323 568391812 777779266 417621999 721176064 455031967 825908329 291929924 419965293 686803394 711579298 997668700 999237887 124567366 518166564 728646170 952465600 915698529 994573534 691768240 894220866 734170152 904546888 817329458 950449306 166317779 360204469 282687064 624417424 160093881 645199739 538976719 631750098 709850358 963916817 66766763 127049397 563887595 619818617 76425069 248943673 243148385 707045730 726768308 963093684 543239167 831900521 92615739 244391455 778466776 778798816 868971678 916172344 587150873 720970878 7421660 211586585 803395101 997796416 686153598 910808670 400444590 933545355 918540688 987093646 859058386 970190748 827233233 997044189 273475502 446242616 193683067 747086114 674184097 874870260 459579403 594694935 453972586 714382288 547376277 744358219 699739890 861542338 882993721 975313405 810143357 887212528 106130561 450603706 420365723 615955568 42033280 894423527 522099382 894006198 736298924 985007131 268433501 586710767 282939626 721485628 428984968 623624091 180668429 403411168 214392008 372507367 478657854 866799936 456313962 754391374 731988085 732357105 692026937 823082787 687314866 815532774 418757912 573735700 732684052 746868574 516159870 623266900 499038415 858298406 685033238 916420459 190770879 502266940 640970718 793343142 570382376 645401264 99356702 771114260 701205460 769499974 411074043 928739657 79478834 830094972 557402106 630095463 766538643 772693947 807548493 931031965 211559752 228478579 233579314 829263695 134320775 556577843 856308158 889083688 152430949 717980088 494854737 932929318 937109310 950769949 598259585 620969156 468265871 795110773 626888549 836892771 410468041 780588415 476039236 829803525 961172422 989697471 315513655 450371614 217293028 990662153 561889352 982122698 14415633 303347818 498840067 655682303 342529034 532694440 894423677 988131418 957364563 966591619 284584635 806554655 917514232 920267590 685873040 949512203 971225883 997119468 173660404 802161568 623670474 754096494 287299194 356744603 594400436 759469422 503555009 596577052 588730467 638601321 850855897 966959557 981933319 992183996 229846709 823457827 996729982 999015515 15557716 139670136 124685635 980661926 821362871 992131373 471457200 589121344 425917274 831584135 506703545 869422423 546080254 832919652 751221385 934259357 666767256 806252820 944983760 969069889 714282676 828035799 805023059 968260866 101704173 776873650 474957164 573213824 862171505 863645874 508045119 755959299 157354007 532535806 38095360 385778440 271176360 665298991 459881480 620444156 156409909 610886957 521055419 848631676 191299092 844013935 343696512 470673923 991576229 999525901 80400597 630272156 997722931 998975150 805160748 923553195 434458666 464043641 344360302 667022403 844153214 986207249 141854512 240660006 697821703 806417314 301466133 656030939 982768398 989919212 126224146 244017649 856349388 868815909 908122189 980465651 716339556 942489918 38077021 282106170 432352507 855870271 869734362 983247958 243925304 872411637 114516993 510800288 661314119 850946362 526611396 830635108 822697272 831965190 928352478 972828968 665961444 827366246 828609362 932214423 572388013 987519162 493761895 951172636 117799166 281480673 267157492 704548851 605039186 635508646 964618679 995501712 357743817 544076499 944609786 959305772 752832948 944816772 168039848 370699420 970576870 983785048 557066670 945738292 215141619 372192047 401711516 417248344 419309142 488636255 545522557 940152736 89184392 604732552 758908697 969507033 817831002 864845332 449945691 592953122 373114145 993997181 999816535 999943316 364816384 562520404 683128005 727389496 633184800 741342811 158736632 237294033 114285258 622520013 146343482 934874767 569560615 879863908 915935467 985009655 259687627 595231543 952795750 985963022 820161984 832342754 713813865 900667210 208708454 419329038 178099196 283442576 390311949 890253022 266722537 516504656 711104597 820162667 846636734 978666342 939045944 965486764 539389694 687455347 138423806 539875356 502352076 875288974 505031128 667172710 399319925 728163476 493817235 566395637 828624064 928894187 539374642 615698354 402953044 964310380 295148319 432793160 209717516 695081585 260883319 707866502 658661006 870656954 44671367 772983108 990935461 996939036 480102470 510792542 977933935 996347047 736303643 802810339 91573623 539279115 994078736 998535477 963034191 975757077 118727187 823322476 551365620 740615174 750470657 791892963 150293713 182853774 831465633 989504174 643786301 658843579 572422781 873459245 481130785 753316553 442826269 648242943 381627946 721126931 294028298 825625123 369764411 620386858 466597500 742934909 715444770 838994308 277566256 482471251 740990126 998277093 361435588 571506907 89491000 681816598 774813202 851117689 609120291 638474739 702520701 912333671 61332856 676238794 461592398 567718210 583484262 787816444 846185691 852660632 667021717 868980953 238640129 566092353 876494569 912397239 145775977 240206544 149119851 507509911 725662251 999922118 853636257 989426754 75888479 551955448 936318002 979082110 263183054 773652344 588990227 635075515 330651189 692038354 457382608 566350901 988120715 995958842 818256946 863567195 674523085 822558474 790685697 936543500 954974004 958190720 466665155 917104331 768633159 790755723 11953140 506387788 788682150 926355805 450642462 465378425 938741057 981856135 648714736 935295355 861357604 977208812 207957911 511943431 97577358 514829094 936568281 981443610 684253697 920132055 577079719 921466121 177755884 816231077 160107030 731589401 100408704 351203809 111925632 483484536 130733266 276081853 965164930 971380440 822823445 919049828 851939745 991234126 11844574 441884913 122766092 964539768 988757978 996197903 836853770 953697119 964359670 979526010 785962068 933803203 191047848 712655800 906561226 917280104 76151954 188730934 634606395 978166683 334643474 510062677 382446251 401056178 961299480 980186739 990667262 999576099 154539220 165972636 272180776 279205538 85434217 96391323 827224949 957214908 586367117 957585601 226588882 455852791 931685667 991302389 35533511 932985245 404043551 894715837 145137234 372363911 550326492 757567701 988003759 992136769 770893314 842433984 304638750 571514944 102424357 348917326 558220111 737892830 32223368 519626161 161888802 785391684 417236908 707099634 2457424 547028287 830748384 916757765 964252048 976276231 29355696 478842689 424088300 631126929 54774892 197268345 832700686 967717444 913224764 982683861 174786840 401110194 381981010 961306990 513831223 900149269 533718247 735366248 180038987 180813497 141697219 248189128 587747241 880162873 344306148 564116672 581980097 854592512 475067451 663487484 694392927 981391696 270629301 933103536 23165060 763752234 46229216 777853722 873492373 994573613 561706178 858826808 736458955 857159472 554708543 676865365 635396837 830731556 474610840 704982382 572193250 693094967 305469454 693493340 24908355 348433866 908614563 962605901 493971969 583253175 565341804 928788396 281379593 953457008 394710402 781205352 509459136 953984945 555021396 737897057 300894888 866345331 417610464 633781674 330677133 946061770 709048143 896066901 76100324 308478264 768651801 981199046 952000254 962659014 125640593 485728306 703591063 836811582 321857478 947131098 903245207 978275028 820932898 884906889 485407032 997871270 896436856 949752480 870109289 984572575 709141103 875054067 416735481 777892927 418622641 795799417 903732649 976267353 967249789 995942879 933618390 937116605 929188006 945580308 592806038 783055488 741771209 893000933 744956499 913655520 967033196 985461658 771832480 904539945 744072093 912157117 662441568 808338854 77170954 594427260 46073489 87377293 700086081 796135466 337072301 514293871 55907259 166022084 254068491 442367641 78429598 181016121 803104833 991379294 182770327 975084704 461192623 866925517 520295912 577408408 839839301 891513576 934298427 964967209 181238527 634858956 146112349 505704016 350378690 386674924 720122944 989325448 768864230 794177438 433003854 462962997 361198985 715504020 545760091 902393081 476125406 988124407 664631603 855684727 884502430 894060765 577548923 981907360 195846465 343210944 874074384 992669019 982537266 983884280 544982702 837064693 866653411 955757847 320357576 809719614 291068067 308941016 412273201 607368826 899110070 983736114 955781516 999810615 480594751 601420110 514962995 850727221 53102101 708572965 802547003 862585860 494310293 554568424 98285917 718373321 711645461 878862890 123765285 951580622 192200815 454015297 758459945 767700447 484344784 526982530 108095952 554570445 167809090 692037102 50138574 188289659 832773654 878391482 511840406 981515507 445279377 650176340 218311183 906227531 169940107 415816256 921563322 973818351 461554744 862114596 755148040 946215915 229402847 301559677 945774331 999066042 431746313 884856734 507165220 546089907 114070900 346453046 653668347 770254351 887233031 888646387 785699228 942953350 225521888 390777194 257028571 854618827 76658796 516572510 137707403 601124654 946948643 977439406 967497649 994028715 314385928 710917138 559106020 599156037 161374084 205238302 446712396 783903885 417654406 728450912 777749005 851654581 74094255 748549363 229635201 541121855 538384959 589755325 37410517 53694232 712844058 886701011 501840919 996533558 775064042 972665151 125699529 493978230 28867444 763792524 540309606 902247924 115767845 663229506 695622787 892410767 908037053 940091879 972443852 997795504 575614602 687247132 902378319 915294683 617989497 715297768 556662515 777636903 11705913 496283968 879861591 895855701 693211617 855602393 126577671 875697123 134598588 568995924 472918825 536836530 635153351 978205214 104808624 437123174 495473058 744840418 413232283 909658516 300104605 668004136 398887903 774795658 279020545 985768223 398732006 700289826 670479068 849337354 535398677 602245817 151731752 871645070 485132336 571500217 658855261 749656929 55846073 140937682 196505158 609244656 402886293 952828317 330547678 837745815 797150190 884875325 350153103 875020067 589764565 887518461 227191359 507818018 765754748 806666821 768416578 870870106 326632894 901960934 948851810 963401062 920147418 929645514 742895371 931591645 204079151 789909574 207431130 696922410 398359850 732332808 638518493 945909753 167951262 709342159 761324251 923431060 740009729 855607820 47662142 957842548 527908485 823400492 194155831 814931601 677564954 712542517 405900502 629965617 445879346 698611106 827187174 951952561 308748853 334348195 806075164 882673103 274102767 844553579 928302135 946921190 466897808 496406755 732288028 972329217 692017467 846022658 504526887 796325625 968042836 982308669 517166861 747555527 833211376 962622298 167200661 375805053 821863986 883902500 220788516 515289421 650354535 751477641 680057655 683516701 394559563 667324478 762596075 857208131 88920690 164460991 434151685 538608920 759442337 898207814 314108031 602321264 437648329 926693327 68430668 898076361 587365897 693262453 221508136 301523648 311682210 586455603 661334827 924177333 469688261 561022374 444862715 656858076 318904182 636823092 318436781 676537732 37464840 515120121 544221346 606886536 646338391 919614375 52848546 614065157 222901994 512886114 38643111 819806869 934078382 954897767 53283396 603762193 356487593 698571165 179098421 575361470 431817800 583237361 33266457 65815013 761934953 905695465 448431237 817888688 749085964 964530047 8666283 60735806 180192112 541252808 645963341 726768906 437571109 766835903 711688693 713445786 131134783 952166584 690274729 849399754 272707222 679579915 452212369 744374038 452981988 783822820 8994908 949340035 649862959 667693317 226177216 786267245 203783334 983018986 186395676 381915420 878089399 966566379 69904391 588217939 485894991 727092867 566307930 568723384 32319374 744489537 753179357 799206155 439193284 968789629 985282165 986581290 652250022 763158294 887975964 955918337 822721807 905580113 781516457 852554004 101391764 995239494 553902982 772332219 105207774 405486007 887543190 914929621 429346459 931351809 835422157 854989319 956496718 980406798 890256975 987247078 698903556 729983369 737232114 798932235 615903561 786174804 55921395 359031952 300381288 646859504 671625022 942737125 54538435 99286055 482902141 910225070 252880507 707271029 61050232 305991166 730440763 998536787 661607612 706364323 376068619 420652349 97849868 213029539 687535499 698942963 836256763 918020354 83206018 459158512 981550344 995685921 74429401 696526342 155656892 353654830 898654796 971938827 662995662 949613969 822635095 864090438 414693363 540940228 702269075 959016584 106846286 213685657 370479715 672057206 474929664 850162246 852514378 916316450 938489133 948130174 567180599 593341516 635755457 678757000 995062337 999034573 414052169 719302871 32932540 176512682 705299498 751789026 996610306 998495287 348505605 881175272 332483324 400883640 409880476 911262681 574943274 616887369 329140281 724000261 204431553 992101832 65278162 85260867 161715073 484677247 611611844 638225747 552085599 710236783 136932651 720361305 920856120 972018291 58194581 266119690 384270935 974008931 721691673 900198184 91461690 855743732 429323226 489611138 928248795 937338339 741400652 966108544 58480048 450979729 965796583 985841489 431604800 865557921 683894479 754512238 515815212 762436457 322688445 733674437 76232439 580749787 831929306 925456164 175215161 458089906 401086508 870682042 837748342 932944046 555072447 988785966 15458346 504224737 222369433 942757155 244392404 847986582 310259668 406849444 553267873 746615492 892859924 996119359 924204011 954555392 864002552 889381317 248451542 920121033 670663877 989225507 222414998 450205020 809436005 938505750 224264660 958237852 158236903 779878261 161760862 598351322 735589401 888333670 241374258 795750212 229693833 922020343 370975194 634077706 623932717 803198144 527622427 770393974 307827345 941430912 978994928 999612040 724208733 839944699 607525712 829392964 999224329 999577001 587445694 914965626 495373545 950655860 711227584 828056298 249499596 601964003 281001390 876486944 474116055 657696286 41292696 495990247 863595777 999673661 109171061 320292942 661500287 868387616 712319315 858965126 5781834 629045863 39816138 423230610 978309867 979509967 515463433 810946565 541531029 648051140 607556571 781383169 868410456 980443113 851444353 922331662 637442133 745100149 913762681 996622595 153456752 275437056 544180454 659022858 479066731 952332103 189058495 270844874 450296880 837610735 757951347 888574112 386557796 446118761 663519287 857115470 623675818 767409071 699124174 998859319 348957705 400365203 627501601 777701335 630480853 811300956 450325557 913741824 122227540 412628744 382714087 512093343 888364774 979957377 128531851 365853483 514748016 905501687 97740908 264525091 755430572 928911207 266596644 772930461 28441452 120012896 946466116 961425814 971379208 986623344 326928083 825951573 729912104 932588261 452128884 455970180 434293912 557604327 443898825 531911813 910124842 938754818 374384598 710995315 376807105 779475667 606160175 771796212 372577715 977895812 996869311 998439504 725310574 826008278 899511487 930958189 384075181 858904132 949144415 992859779 944678421 961634479 228082302 872914916 442354794 867423946 182400716 271071098 703980705 893591424 113442513 599842036 852183029 875881009 493708316 861757004 416040562 451396245 205896934 701953774 193814379 723140846 354275373 584450741 838690906 990533358 739197713 880384715 71191206 288519970 101672809 115628632 938096302 990438593 364972045 746619288 280957062 621177560 98248671 551751300 983673155 988733835 649524236 753700829 665402404 917418821 485858374 844092191 152192711 410714731 918806689 943715457 31992367 203675597 824914070 970300440 527166637 876612023 954885330 956910693 483732634 927456541 411279117 952447910 167842798 805739274 201066971 352464201 155764864 363420283 440114622 782803024 336238779 790039225 463876263 617754745 359447987 779550350 164021277 892973337 869033003 876664152 708036990 714530911 663053541 735612860 964497193 970731008 673883115 755346760 285297884 836344592 775709907 900497277 465646370 697825495 895939981 940643407 857793482 977737614 352384509 459912187 375835252 642717995 458955324 944189761 519887552 953932943 519172012 740383081 517542172 940669152 430594623 455768447 914725246 958618278 919178167 966367470 928621483 997733677 260851607 380062201 373112789 374968498 191676909 715542347 958469484 992079826 976292241 979361927 974631145 977915696 343855880 547307280 618067639 622144667 679208627 922953057 377572972 433429698 110102919 742517885 599199400 649935520 113186793 390605381 584231068 846026946 411537721 454302293 276742909 376541690 520594671 836942965 980535873 986242976 623190979 942899980 87352208 825731926 211893767 781788072 758155771 915771570 936978420 953899680 749119282 974713074 312288825 466430450 663020660 851525080 635448949 715813013 449914058 942259352 803420870 983679656 594572209 633701078 524465477 692041367 691892264 935243163 152744271 676784208 858960432 961191916 957433407 962459398 706646685 814465662 568499937 690786963 469195766 906652093 968476621 973804906 961528116 980112656 722203914 947542441 514723725 925089892 338094191 790905572 263405173 884418945 445544354 755762846 788596848 881453304 236746193 409334350 509580490 649261341 811904364 811980672 145919944 178045277 82102342 629823841 312191941 677866641 32660045 308162597 56784015 816731674 694231877 815005079 763617881 963645240 216184144 966104139 38321129 880068970 332900947 584439091 565996764 730546344 624650644 906187678 980154376 992966374 1156031 566273469 723485150 878935269 4059109 94958093 699627499 921441412 620144763 865674249 37378096 159624679 973303917 975621243 591341367 772544927 783186040 976232817 328558691 716939066 545342871 924636828 301045654 485304491 237974543 421931158 737916797 833603598 79588862 441865218 780068624 860333813 644357648 932315370 940067508 969991942 587899022 931333394 513794781 784623056 133883812 741251139 170979204 735923059 458397387 898506829 55768803 222916072 433151410 447240894 424056699 572832207 877290622 924429827 668232115 859210274 913108131 959210861 585344712 997610280 719477257 777551245 329133535 734555260 869640379 923770363 746983446 801988390 311508855 622381195 3608040 438536169 78118734 106675314 73320073 108722272 100592421 614253016 876887252 900224441 992978436 995640374 857687077 996554946 723001878 911729655 157243642 278383015 963646754 992000238 339712814 907945747 46130510 58898786 743802676 849362337 536549090 872291532 964384791 978433599 68430366 563924120 949367166 972188466 346447639 825545240 801459599 931627361 87156401 252374284 240850651 396498586 513269981 700001666 135737374 404245919 809265107 875797585 83032847 138347132 149171150 410248369 137846352 189480418 738414359 806829470 549901572 841886083 637757700 650668817 933475735 972784807 786350015 789799945 999461677 999632687 767490845 926302468 982878521 992570770 975393467 981154246 781030557 921491873 802443003 947676981 629533338 933790232 379364647 758344384 891328723 946499272 751670935 844891141 761793901 937030628 540015118 833671331 166953592 629432637 457939487 941289983 400853466 570409324 169660461 226603009 772534729 969397842 116775659 598841969 858304829 969023779 239024710 720123484 393318262 678839722 879968179 986578116 942194406 989355805 81605957 137537351 573816638 984477213 244167416 698961547 543007567 835867403 341673788 459056309 711607425 878449933 546498799 703818397 737399838 963014706 774174494 811081961 64961809 65475985 70096269 203478083 862229641 977855945 90856396 787366908 992997744 998905942 140018226 154106755 528519270 797831844 259317330 339388104 425046442 669130954 265999118 796492380 917767430 948172032 62525607 341509145 460656200 809782501 253929367 353971663 136863963 468210855 800178627 900514685 587744151 706723109 450503264 897140993 564690279 966385921 359109244 992398014 642541178 867121810 145691305 828812566 209775120 943002647 391521291 615424583 254544456 651802299 744965680 974945657 801513744 987600779 678692837 813561381 972952710 987052834 789301298 828873409 324014232 678969016 416202311 833297747 98317925 546554860 411433337 426922682 912350189 939793956 738073601 954555792 547538058 699685035 72817001 803646902 738264945 918666847 822929903 996834198 515373904 623898183 663770249 805908398 339636080 667695927 670665632 870846767 377144159 422079508 537115967 889515237 593655214 744869236 501017460 805996536 628374295 679148016 658165323 676273340 683403176 945195148 874209709 945024314 184102448 755486294 901135333 906455658 854645189 873413185 688366574 738266222 517361517 594209021 382344852 717177508 947496263 965661115 177422985 795498930 352031804 812881011 629270085 772652292 531071239 723134632 843993382 994434828 111727908 949040419 721655372 872063923 19012044 792659025 562162694 853501531 560378703 893546255 204547290 270925229 148137662 358756568 6717442 237231635 134563920 919386468 668797362 677703172 415407260 553201065 211912666 851320032 300664842 648824041 178004622 190352725 664636872 908882928 690264711 770531273 749625632 956083164 233828367 404780947 277277069 506587105 703930837 906271567 835750819 994656048 66586514 985311510 836473649 879788512 951612665 988713095 11475270 346459324 669942453 727657795 148003275 485581507 67833301 484059101 33912134 453941688 711689383 874883250 987859500 996330116 869995741 886038466 159316483 449938398 567619616 673296810 769765617 983109988 514483478 696367209 325029170 506925564 963135921 976025572 68949322 832673926 681936950 778758571 819676792 966525658 594112386 686767424 544477081 847543591 883214002 893988136 420375193 773352500 511329477 964219773 666876075 823939173 426619974 460174012 659405304 776521540 478973856 941537130 589453391 725886039 246017972 455182271 759906107 881537444 11113724 884403613 173765457 772342592 522998033 607741467 856287409 908660940 734834934 821394956 54573740 400185392 25088766 978582581 138733809 528836276 941432554 986653991 774905610 780061483 563610358 908493497 635399100 827093571 227085371 812124793 395063320 614732667 673614360 862566800 996553922 999737282 306558699 836380322 864097091 885033734 49845727 885755373 60609955 456203304 551466474 727978717 129644925 318128078 436567693 517520434 525687021 558021832 236859541 757085951 277104190 974689887 917689548 993680361 531721571 606725349 264877202 821424215 804140388 893856641 427008947 682579950 672892189 828387883 680077580 819200122 545720699 708632415 852383952 922760548 16686038 688977932 531706757 861740579 474486375 630321037 332424685 512084018 658430833 685196963 366996835 395004902 933700674 944833705 999971733 999996324 283449089 529252896 193699445 710392067 609576210 642038769 478670461 614772649 786675677 992707608 396034931 522147168 674483072 928662698 486945689 751851168 743825431 945704829 325521541 576881722 738329158 803067943 730752233 782731827 485386663 916127138 690977560 962765196 425921391 732927469 268514342 423585038 766404725 813971222 489209952 982189212 84916522 619523743 375816159 532800781 668062182 804532748 822438561 917955717 992432893 999118516 743871822 753037415 967727478 983414570 954508306 980230182 666645481 920943816 871790509 949580398 421561296 530722073 204278519 414935198 419899819 931921564 668472329 938868159 550877443 715080238 560232445 949087168 294774117 455966172 828771776 854267584 879378818 911308413 681440154 754116252 843442750 869808115 541495402 760041841 443623674 627902425 261118980 614840022 819744500 952998947 2375486 258897719 166470680 393054946 454695190 773722641 475811068 750669522 887186113 919402022 171132284 388124803 345826509 855387147 793334659 905266981 663326336 845323687 843812006 979225468 464688859 591336563 219276586 742980300 341970817 342677332 610582542 967833494 39417985 783330915 742307211 899699099 136253410 559173629 419400495 539832100 160042416 570886493 193786109 996654935 381188459 756178250 141332324 810082487 564998681 575772199 145745321 636491745 764447395 860397693 69614627 528460530 765024588 784310010 558465263 986550187 984213097 999718332 383105013 397344596 857152390 898788657 151327729 670284788 874782193 906029204 429444496 935083223 526090265 696628940 181499309 634059663 958236119 997123643 394232274 511477866 662422117 750446803 111350469 705431479 190683 520650802 954582875 982019397 309122352 922760463 121490200 971494546 376597045 401326599 726614935 879654277 258764124 970794534 890525442 917779818 875687818 951375084 840639292 974518252 865994499 966496756 111049096 298298890 965843320 966224180 702912500 984428730 776519212 836196792 502539538 762629357 631002826 892787877 135762322 627488177 40324734 538202513 493640078 556677380 18923117 172673849 576941652 987059752 422708803 635196917 161722448 451014644 394805206 496895873 252083377 267965884 524322358 654193225 434210058 760200130 451624430 840357906 424419395 959798722 176491006 182125200 105035643 386786316 270378310 815667531 815401701 987018497 109337732 267965623 439638840 495517595 811357446 970865400 36547135 521389744 95763233 576049482 288518582 609148095 710158660 738104687 101561382 935519329 247954914 935971027 988099017 996188612 735627220 956095963 802340534 854962770 946379306 978537756 114911862 740154840 783406556 890104385 490526771 790350225 168050093 589116269 454616264 953503316 259657625 900044640 492763486 971531050 988814679 991402896 911901609 951394423 793528122 997695722 411211235 865232234 56324809 878858636 371038677 661571355 672723435 973164542 737057736 966275167 312475437 963107127 623872026 919477166 730696381 870470070 84084904 829254511 739756318 884917724 252901273 578993750 922823875 967871800 822227679 882327960 108675608 256536018 635585014 902528485 941385792 956230661 56122792 657724716 221800676 266634878 13630471 107685438 468216005 580659311 98393108 609507968 860645678 949846339 929509444 971362577 986243042 997333166 815694269 893824390 629854447 973966243 285202822 500517909 631538233 751547592 243041204 348446595 255851268 624718163 640920120 992835446 933013190 933486290 369302685 972554953 795583073 930157207 105559288 168980135 623348429 702366882 918347900 964375188 387481982 655161214 287316733 323574984 75158613 890518695 597250382 837012336 214086644 458724419 233632984 474133182 969376925 981358782 391307641 875937703 199434047 936920049 299890503 511815654 168912708 588647901 628086937 678223507 690662921 829428462 959862169 997525769 277708894 599000682 248494317 715358979 828326130 836419027 427422891 582690683 767331110 998311649 397852207 970584140 529374994 580032057 456259339 799479019 207692217 867381881 533707322 986629222 852070043 935729010 299202062 907573599 594459991 784554311 463901449 713406637 815579769 880616766 797843014 958672645 643533980 714350052 803103648 828568336 65029112 702720545 539160348 841867088 836377327 934869409 712564549 845585017 58767657 323966509 981613805 996916079 644260803 931530352 162043648 598207315 427312766 910329182 314241005 489319052 335752018 455794824 129462594 965646066 627505234 873030292 931308324 984622235 326627826 419219936 165965008 972079868 196378490 262015612 410835721 546645188 248441442 338209862 31562244 305146005 518745820 562559260 544233306 776895431 259485147 534842872 632092060 953318855 708472857 872130316 510753420 766086120 106527013 524452119 22857544 253583541 509998899 957858239 39300109 700445578 991477210 992614335 661838589 822418889 7499607 68565759 806959350 958142864 86458776 948375322 581035398 758690730 515689843 783814302 493973462 728084586 506737111 901358459 264679568 782243009 909756393 975718867 739053210 825035884 670729132 713250445 486216410 494344321 370693246 422149796 868177604 888779051 320330841 448877878 501588386 968158821 985220916 998695706 530784885 860747069 597269421 890208695 889590756 898328121 223411197 250820217 13115079 548141542 770565703 774200815 388983675 747853928 709341368 955185196 349189989 808868513 633317488 685813369 274776520 964402445 207496781 285558813 65375662 155124557 213795129 689868802 174825539 932214873 82751296 224830574 485624530 898448181 500586540 894438197 101017200 851038300 452604118 504195342 827462621 832444286 663057215 957703310 178859501 291910613 92449642 672995428 12734764 274080421 857273991 983695347 973175301 973823935 436921241 585934760 900254569 983043140 837076935 928501675 3451911 69219738 701316039 745186544 933451002 954015173 75223071 766452864 413560509 541410492 953075752 991149748 222437065 390659327 143014515 700411908 237843058 970958202 422303510 850045543 515429206 823368515 381064979 396288189 314008300 474648539 471979766 946706091 717907332 924650560 320816318 892547283 552380017 798288981 246725546 259910444 747646375 850428308 69582878 924306001 292286003 473845718 856492460 993181037 63897514 111875260 290929292 548952122 817735179 955393079 154890211 549525314 434940766 633044052 477596109 556537686 770204687 865309569 86788489 609775499 487113973 862631753 813590308 876537233 876099375 996898543 476227817 868776599 211238720 670101716 871325392 981882992 335444153 991971476 350239086 421807936 970613623 980726925 695285487 788258722 963305757 964446036 20307341 55822848 18877473 482801853 799866308 998470244 687447818 819860351 432878083 487957818 635873085 773296745 998982403 999108195 925602636 998166113 23118679 99361341 693348876 944534227 319503649 792736136 99423134 362477963 961091252 984004653 757975015 887928375 380815769 389945533 695852391 885235016 168854581 530160773 52415804 315728380 993467961 996577101 985268064 992095901 847073819 931613514 620539712 976756086 65219544 526386385 115514136 581201199 943057307 957643611 268755076 956788078 887960324 906922949 74617125 918214672 509264657 781470914 44221430 806896213 98577468 871212982 243186930 675918915 550107799 982694300 508590945 685736830 846113041 978230134 168087375 348878722 196583196 589911159 901263142 993546315 469235922 795648306 895454352 898634671 93439016 189154157 96684076 434702941 608600650 617864470 650461764 955836845 123427061 908178544 765494942 804472344 104290957 602813614 251136166 643548460 642273645 729401954 600506334 974911525 708333888 947918384 619844277 905226670 562308308 892350068 67359860 124468872 459698209 592549960 765736615 978961453 83520631 909658247 205618870 646884556 719235456 772992708 19889124 864792005 373195915 545105159 698518360 750568201 442528183 785638788 933401100 989050318 412705390 469506540 613454449 966253489 325686549 329658447 559801484 694759284 105945167 799315991 479953846 713738967 317358438 846018548 833745670 905042366 462740567 486232852 634864945 919392402 609035722 737297078 260768147 528801189 829477813 975681879 384351914 970086710 118427657 533676005 29218009 619473592 136637949 728266062 557356557 842911952 469426925 955770444 977834802 978908413 299118505 629873619 549797192 926366933 840756853 981018343 177570384 793568841 939811930 984411913 941205860 951531460 919554347 948262482 835468648 956233071 883831150 967699249 27506315 805855429 770395850 992856890 937837407 982016381 61214715 289711367 14003699 858736029 626739707 633129909 816910053 866391886 595309244 764581569 336902016 841015411 723244925 759361674 742462025 950800334 474355754 845114948 535014084 944412268 355880405 710225584 987706317 990219116 17193548 574150059 641286197 770661204 803386099 883973963 93959900 326421988 209850207 291885642 840473624 962654753 720829505 789368056 623311617 805053332 894537606 922217598 934925755 979848593 629099858 763277144 463584623 991279331 474742830 866919158 760832033 935155833 971194198 996346803 156455115 678910045 897673980 977007656 665972483 838075791 785478513 797984238 950185343 994098580 769104960 979853737 241100579 859178947 849436951 941416622 304864706 754604608 73641420 476694554 35688177 470761965 501320577 564654632 359658270 966830471 162800035 436861796 553641385 748623816 482233537 861356840 400293557 999528223 883829941 970947719 83633880 652321290 395516828 594818911 930922403 954087566 814247447 866451983 55871315 361313755 895381821 986437629 877771474 958342977 939436092 958461220 818409387 829107186 871479470 985583372 904939981 998723895 812114591 882796796 918921105 928995337 838633779 970875512 326921028 343313267 443253914 760438628 997844149 999970882 137540430 168988544 917480888 929499802 850118847 990484618 722372486 835630264 925209265 972243095 683613112 802604527 914585673 968494178 698207416 724095295 891912051 972665851 524132679 524678444 219223514 796677217 122479108 701895264 35390207 976918362 490106462 847679097 983980582 990288890 985183147 989472454 339053263 862772955 941511037 942002833 403206034 862416898 666507853 733351179 131439121 809999222 216416779 431874320 117037624 954395093 127187042 747428971 312452304 359604936 704902563 751470438 799272662 887152010 580153990 900532179 726750364 815201688 791053823 962439896 522081403 595714388 476571781 931527113 872410503 873573663 255986995 799299958 348768208 826337097 647679033 662954018 947743308 955816879 761688947 799457520 283727039 483361711 313664078 513802941 489198065 698489665 896401522 912833562 601054320 886435607 459089589 895841846 919106021 948545599 87915421 766283124 691128410 951495576 275283033 343476166 421991349 972554443 583013147 749083888 409523088 548300547 483606177 521085282 968060998 984141137 130848299 821212498 273307559 426951696 104878051 244061537 76439889 507324966 699454651 894199152 770653359 843165673 222765594 946397437 410581216 812146366 637108908 686535908 461754285 488974263 678955191 679788471 423559733 498855677 240212698 509971230 617684592 830011606 260574465 513157295 472766698 880083035 977385505 977516854 473452933 674031894 941750202 948533573 379780250 787565760 222972210 702353137 932000431 934178515 144606499 346865475 552601384 744129433 175301224 399099461 796572039 810248710 2862675 767774393 432015211 998388547 330609777 893041929 304010677 638870148 339587914 991843910 12633226 239394513 650960458 689057866 605779636 630913382 280631503 396823403 824685798 903015904 711677838 918692456 101517983 844498269 461981228 501301178 158170288 448637873 422244823 931555645 463719848 990005201 969309897 997668261 340189949 932094648 701257502 819535404 88969960 212064053 438143812 844611829 14786763 125544240 22319646 721413402 757111454 862307737 795765312 878611690 379127179 914470252 149471809 222155263 539421183 807609580 350755403 579017365 241525935 429328592 326726695 383162057 386004557 981697677 417716884 849355707 780829254 854368812 347115316 904149670 591412758 909663547 230509666 513533220 347487940 990403404 630762652 936688235 445036728 753645062 187446045 981005774 88843063 483990978 131886206 833371634 929278981 952121113 562883797 831246438 797067785 819444065 914256619 921619895 31569290 248914983 243508558 845604342 652796377 904671513 871818299 875577909 832760054 967638482 794773083 848481012 525806748 772662629 914216190 991744336 451397865 614260863 255790344 962436561 38586421 568869290 241441758 644925724 117432331 136219091 986252822 995972836 339155731 353385025 970689224 990183827 743388033 918838887 836948628 941396008 475119462 814705817 704447820 767284245 635608291 997573908 439813600 449079987 619547736 658402780 249278873 353830802 102849054 878964232 688877946 697306499 635290709 691930219 596730457 756829085 536544550 919747780 36067049 151939769 272843152 489215348 930736371 981971686 568083293 948868081 654830112 814174245 606007196 950353599 514960597 866306380 598258677 720365847 8119798 39744425 153023286 636537490 120868424 238788683 138420770 620991186 635844912 725760338 513402547 628085026 393002122 499124340 523765483 545762972 330007830 807868180 377711888 630289039 182961584 973805400 255949996 652027835 358305441 731084290 389147700 535109577 770553197 906469982 898664572 948447136 418191955 697485270 761284197 795788847 302554415 542961512 591761820 620174427 918908610 963919340 307343515 830090974 720171388 777650227 968014874 996292436 43540717 722778962 611303458 804649768 631409562 676892414 202552489 415051494 994691710 996764124 663728065 751116402 999839154 999878910 500317257 650078383 643344773 863073726 210582026 467645568 144950888 295503920 330881838 876323169 32424758 217054999 97858 775512817 864378304 914407634 73473885 772136108 719889206 855729726 514238980 864305608 140128561 267397371 693939508 994805316 646359678 789155746 591008205 708689661 242142417 394974746 812135413 949159227 651955846 901530893 886022097 892460174 698114511 730467854 163484775 330758171 416818818 913857943 970541529 981676898 794868318 926893977 573800609 871377463 443922711 606019326 194129015 252085954 314831466 553441327 834614390 893786226 925209549 978142983 828631064 873275236 722238262 966666385 776854274 919979185 903445254 960267624 340586730 496592816 929916638 998224865 703968462 887684222 483635289 986930637 611210336 730065561 228127763 655988929 14018755 551902837 269534971 815228376 165121556 244096935 986324835 998921410 305375164 430357187 592256253 723585419 710961626 949012480 748989406 877311049 666151060 741563999 244300776 287160460 746902443 882588460 674024416 858329922 876530790 917853130 441885417 465221491 81489405 929709851 82359365 554300630 680420027 833740867 511782962 524776738 316679832 954141849 673801885 791152426 918475296 984946866 904224292 923330555 754665634 944624972 267244471 670127636 308780321 653598199 995797918 999578696 535948441 797589599 802140726 805124347 913227593 967739210 425222434 841589151 807652556 860829902 836132963 930381673 255388792 960459088 109783977 872041902 467306049 702206658 948629579 995930853 480988177 914523318 383588057 932135685 330818200 346599558 913766204 938701969 356910411 716591464 395862834 608511746 219384137 273866860 871873347 941776222 193770803 766183825 231780002 603186256 689190051 726949280 497716750 627695359 873907215 915734244 457629826 491909555 606270456 747520117 628352306 633531865 515967986 571355307 872084748 963209244 656844099 745637975 910734950 983022247 689883547 901631913 888250696 907141137 516765044 973913444 280941074 315707182 616765768 972952580 652903120 772631068 155017998 542716862 692970901 951818161 557472257 721259891 889761767 945485265 702778828 792430655 68170682 765338605 142278968 841659906 827945089 840144453 566438131 696322936 739836289 834163721 326195200 861832382 363833693 885545938 417924789 916066608 509431215 818225103 926703240 975717004 980699401 993455138 856665305 964140642 613337797 775082205 295944962 423056436 846348864 935232454 933751318 989795923 434781624 861337242 539639918 939085490 970278869 984106006 255321093 278397206 33569959 932595635 278198022 679681153 914404522 967014770 450096964 784315638 959449876 992796284 865819546 944755959 967854520 996378922 238651029 859929240 597335518 852453284 678763168 786630494 957067056 959187935 467596204 751065109 808052243 984575614 249428922 373222718 8094023 596324939 670295650 711736259 430392922 750791949 147935834 942701083 84178068 922738392 773356466 796585366 120372804 529791548 223178082 471468903 878282240 971100996 889917581 895110777 44236230 535436775 490691686 743076687 628690379 971985453 225169089 597243771 711350116 998422891 669878187 704597192 77862276 981976908 560854947 919127919 607438077 716370573 176594343 770162467 814774802 855485989 889752031 965458716 913242031 914887702 843788218 876114055 587199680 746338417 733371105 975254667 484457426 509880571 559057991 683286047 956589938 963018729 305907398 949309274 796230956 837771516 440517672 902831798 241852887 305901688 494802532 777347099 137862532 764463300 673151022 908561287 25735898 345224682 687167739 719398424 736522766 888075119 347778395 770821503 277172922 673508524 680830240 735410619 205090420 906463460 560672001 999495726 74452780 683220919 481133783 612804470 23092316 992769884 811669117 976956223 7783887 605771329 771931850 814026539 395441132 688849169 216307210 768948555 171296255 714931266 489665230 698394550 213756844 331225051 499227068 685994673 831099053 978558701 951789909 973287773 731172090 953690916 619578756 700364033 247937946 461745211 598142436 795033215 934497220 979567216 793958845 868311499 740251617 913578278 581931235 947658020 3761205 810449383 412506003 907955618 605849842 713824357 214870828 642445471 396838019 878396997 511670010 913104458 726111921 795546508 468127493 850096308 661203792 937539063 686077899 748844066 55702736 634925687 449838035 993065433 156761904 903911954 453916046 597731798 843934559 861221622 604231403 955466446 224140222 780754509 305701600 775733429 915165772 940409974 680767520 770887260 589947909 970318996 823406770 985765124 493534752 769568014 118207185 483318512 336043570 611361977 986245839 992282434 133411419 290863802 939185387 946599391 496608764 813234893 798820383 834357001 922046879 971024801 292291896 818684541 490896156 902277318 655204705 941143852 222772939 271034824 639843886 806327104 595211239 979192558 925044352 942895992 773268861 914517403 961788720 983684820 156905179 986846378 318325216 959455605 647093870 880308598 470537385 484589228 964561728 979247948 125539190 812471197 156938734 297972036 7741072 21245180 896922384 902878409 382163591 891157311 412276818 755603948 591272087 802148462 662673919 670046934 174815750 676103075 717220274 858273161 483294805 940018453 89887928 418903362 236807217 511231765 201814917 672221691 386621285 510054273 714615254 960737464 783925776 816034301 558536990 917904031 535653499 872991675 750958631 775306078 519404379 988687778 249322940 994696646 15434994 152932167 338464190 630823392 136854564 914538680 138987700 139080689 767806407 904116390 280946915 795344536 567096763 702816311 672878630 858499002 521748172 899953493 238493804 447473815 981789522 998346153 433527729 825211010 937111723 982976450 173226902 853972333 500855075 580560730 255025539 550824169 527792252 666078339 784852972 956186373 301008818 599173939 670805870 809317922 269146708 757377984 315597314 678408519 372061007 452977281 959517980 985364176 508373348 864495900 953723987 967051745 444908372 459666470 272471920 889785098 723969893 884640747 248736333 981962579 955530350 957168195 950093058 974795517 997362074 999988721 113918137 700982123 515662576 804685535 302191043 952396747 704441449 799505998 512079167 933440978 803483323 976637772 867962310 918200505 971162676 985190513 896054015 989181648 832754422 902529148 636327841 665357959 692191439 872048634 253131511 878741095 804862432 937181792 286896037 994913873 777734642 879293732 565787559 866368630 599593128 696212124 773732118 804432337 839907626 891346689 280241123 756080074 515479465 564777314 553231734 574561278 490198421 618636506 342869653 404594427 464290712 745223328 935220794 987021047 605240889 973485252 554692274 649648593 963331169 977846576 812390179 843878626 762160211 931373455 118618677 440721065 634507694 823379534 314566150 736201662 477397518 860534158 855128084 901417998 359645487 904933438 82492606 798117513 895458855 942793004 36319554 717766365 897055088 941338375 149188735 323474843 10516993 881940344 866610699 985751343 523370098 605041574 625683652 653267273 847719675 874197363 137617157 670091222 548191192 971066216 896308347 938904165 408572503 832740002 691966632 803064909 87780025 952139579 965146797 966139109 99645954 234682842 495890481 723921093 500607133 943838073 107079592 606105734 127321688 750933553 434949950 785721005 348770902 899335687 355581480 731980962 402106169 996394115 512958989 582489587 844487482 963755601 948964069 962339213 953582033 987802968 203250655 526588167 519349242 980571326 511555627 987826402 762541845 940480351 668215678 897625547 847010627 922611824 454560214 579932805 197567687 533345302 402301509 708102364 562688724 725393085 15401828 386190154 378736988 744871866 324032287 587686173 226507502 711093704 193291666 652569779 980749004 983914163 384922367 922209630 261636881 636359599 588845868 797484873 887256853 936008057 588647672 931759838 396384848 579868906 969856163 997498015 648315431 997521775 623381005 752211845 309367264 312424364 726572375 943829316 564551394 908507051 827344835 890869591 280086891 356302355 246247865 370891885 104005204 245007027 212525167 809851599 718144978 860661434 619423148 895734144 929725511 974422517 107299689 410663182 264846819 525893800 158517859 330519079 440735380 714590654 88787149 435605976 744669566 783387494 621035116 800201322 638819363 807742984 639883505 968835791 559934539 625593144 992970081 993851007 894757739 926710453 697204359 956578297 502318422 813735115 380540026 576294086 453926883 727325535 40211423 938340258 360575284 605066979 368406383 865640298 652703089 900931836 137165777 871387425 984353844 998325730 691056665 812926235 145183136 764113029 738013444 999364697 187120013 518031558 273255648 400899295 637941075 678117657 402960891 692386279 108407293 889376988 322069625 991953003 644153341 930056297 3169963 752734078 102298774 595078323 121838658 252156016 550595096 658396318 538513408 954586968 797758711 892665431 525518692 847199802 134415297 827041443 183283792 620648831 43864541 549527342 977759435 987564127 513106616 819527100 52630381 788395253 19225083 611681382 265213888 864381365 943964059 975773996 883909979 902823711 560108491 689514785 105244242 693107995 645831204 906847595 520625612 657377084 946835403 967720714 14158361 985838647 410323590 607798003 308299370 699191795 774837822 790967773 480634498 821932488 333946249 412516164 685689353 712165584 179523244 740226900 813505529 820444223 257755259 306131441 239741865 891913971 213934108 233816366 66200816 562202895 316958895 533612646 441264593 949068617 131893434 180625233 962565840 981108837 750029239 854791272 815873480 911151039 832913310 957746061 552337301 839868039 670700004 974391039 12681242 98340592 76304515 236916263 303455852 628567126 692743004 965384563 262982379 270771504 917510474 988217363 975560140 981991307 866143958 995225577 441843705 868118984 79673008 566910509 592857733 658421242 576677990 995904710 977011418 978362574 752836911 995255744 118603705 413773505 1803271 614728502 326535898 824323802 792402302 996392767 948461345 969802368 111370531 511022683 427565519 934878828 662351442 868878745 582582741 604209697 413135995 674845199 837991584 973596745 613762124 782643198 138057873 704130413 569696621 727597964 627312140 845655051 192371 160053889 888981830 916951068 100547265 413326652 710888362 993442453 736001627 736156482 883710173 983832208 551766925 783166110 220302024 268261082 38086943 247718186 598917124 678597812 98248788 257802587 940926770 962071342 758740777 854482411 477958122 731264443 937753980 986514212 933659996 967805350 403662181 431045033 458251944 696621050 490143766 607832338 892719445 900185621 547843775 693531914 24057289 132119304 311566336 966728673 487387751 830758527 292672906 402499228 583665645 996382150 917895332 935811216 555149776 768238894 356650064 845461769 340299997 934753112 574076169 840229011 516294400 944101558 673018324 766180533 948606186 964259752 913355679 998350825 609561301 788941089 830055183 878384486 512214663 594073455 814589762 932193721 652195804 669144458 731330064 866599705 915040855 932758486 681504055 897903455 555725054 991763248 800302666 944005282 108176613 122077720 819374129 956522617 566448676 819767365 599399199 872532950 365848025 651711998 534272854 999128435 679054436 718781066 674397959 730275713 681998399 783351789 929674113 986790979 88311195 373436641 647354925 800824686 748326275 750737987 894644426 925578489 644926980 879526361 707083006 902198844 682195714 866637118 505855449 953576690 974838593 987444608 482072956 893650182 397518906 643117555 931796434 996156921 528904433 550946947 244827913 327520052 185309729 541089095 468567361 784927073 971890563 973665051 749011687 947056694 875794017 899714387 735630298 967724509 318387564 902619674 695737809 937140600 646620407 874974026 518243423 642258208 90453523 104503252 752978088 840428341 199125192 657424374 808393363 848581459 521121018 913164869 273948431 646920894 819065541 893490462 711756679 827708759 496681882 890351135 26638635 955855776 709521257 961736825 866106022 916980747 308604792 529457941 815013724 953826825 845905577 968042038 165603334 311620569 18778792 829618890 317891913 978869501 757599335 872077671 650423550 838140797 323979177 597521583 547548656 664444945 452172664 537819145 511690070 730147064 47160324 416768560 186780777 453467998 225623218 864276878 572269894 829673466 284267662 924573318 703854503 861814968 601465095 992325672 796417917 960136869 935838369 964418533 343882534 519838871 163461142 696219106 725383675 930403618 75146709 302663835 393164830 724498347 15599698 769352929 105538711 311387858 634443792 812386085 661757693 835792739 691273030 751798308 397731021 545517242 991647650 991718878 175992257 396209627 517180228 868814764 37914154 437645460 748984491 974318411 434806379 609222846 815237541 888134652 414496279 951216583 256979538 368452269 389508127 436295513 445789250 737894069 710882661 737668857 995317150 996160776 665721667 929362263 202938804 384640220 208606307 357088462 841777182 987506696 495051015 739155586 695688501 770998046 172351893 846273113 782296878 886162030 619341502 895318243 306086255 616575334 451716364 451870242 221194308 812303539 279701231 607742695 683042975 903519310 797560316 925459769 11476439 307708903 996730932 997631092 87395393 556491911 326062862 890924040 857060187 965812299 85406363 581293183 383185052 814722463 771421367 859199987 487477838 887524535 239379880 792165735 586599517 749001896 44983710 866155426 651165906 683636366 136639306 489596163 512512731 736284490 157722343 402435283 602737595 814638527 382180877 565142486 15746983 994948152 247056141 430487035 12186854 914050677 43188456 136773639 226084218 905514753 97107181 610614793 358516424 982035262 114062514 165602657 799331275 878454512 619799013 815331061 611373686 853496878 718173121 830246539 742040345 826550374 232707510 612968046 106081908 262160397 678913990 919503150 115390597 188885991 878321198 947146063 966350673 983495694 244054084 390517096 91271622 560655951 677403427 722734057 527271918 619583957 803224342 875858267 542049839 860012294 189151060 767589259 589112089 990770428 109823882 726235902 638308132 991137099 155921219 863537218 692480096 897501740 145949589 413880948 241191368 261347703 386756396 649427588 256068337 957929474 137102829 443345459 363767512 886625802 445076103 903385666 138906976 213720454 323007073 391751330 839635942 848687513 188402422 244551017 59766920 415793970 707816541 760780319 525043374 542380668 614850432 662285009 820787739 937941527 619055551 802503279 301304713 905829261 538175815 615010600 876289397 880386708 631578220 704717740 312329916 332950477 989744275 992834784 873668533 913419906 135815421 606160177 937060564 938188966 992758902 993824427 106883939 316581787 680337251 743973828 867820695 952549359 567534560 706516152 868827517 937507805 980297659 984806889 10094922 642438516 646962644 927814051 366812017 452206200 355645814 702447465 704197429 943826274 287796314 980182120 608402352 911583132 343550874 848921597 749377509 782279656 695749951 776217738 857223084 902669681 17762161 219350768 409667880 431508071 744550390 795988655 548925457 643025713 904940323 990903018 988078636 988292633 484743281 882566724 114732237 613655346 573470916 699396304 540939821 882859890 238252080 633356258 270705967 397398477 976414857 976616104 191511142 938018072 680940544 991698800 754509798 928740641 502598149 633636453 163207673 692469556 726034519 783605946 183012020 710641732 552598599 874163968 50088220 118454647 84250348 208212896 574011913 794239598 52402469 899017728 574954240 928221696 721531327 870471820 11225612 988112754 63698940 622653474 265608059 797803563 103560465 981192313 434432591 904128299 631501229 958710799 974205349 985566741 18772250 343422102 461510382 700976993 626426044 898280153 906775370 926752952 608853358 852151414 523981911 699653604 558443226 723439308 145962680 518473462 510850440 679587801 172624034 495484855 276679198 439194426 702815381 816006457 424718280 862556575 912751434 998840952 611750696 771947152 369893358 591528001 141791277 893418445 574078671 801508902 560475610 692719658 605104067 914146371 602476282 743029325 255157740 738897201 900435854 956563821 503325170 962125631 658341733 827825229 697915640 705734530 442583702 568241272 51811880 616235241 438356949 715421567 146590345 391579654 439457271 818586597 264251013 846948405 371136600 657997310 372489698 408207536 719875307 874099779 820210956 872388242 572066616 652310348 734316833 827678212 318074851 952394081 558327855 576204583 87435493 765862821 87544608 289956736 466992406 687497195 625592068 825751469 468250908 993751799 459815692 476791060 574519585 967669439 172583992 955399829 965042375 987165100 232778938 342580700 874425407 930690145 579899597 604179455 505634731 826673146 405273179 945567099 385913197 538810991 229492647 747324917 608558272 999624601 657965295 877122108 261677394 275470714 501406482 774837858 345003134 352853461 859143656 947557928 454476989 936300616 141031882 713481753 627091108 804628957 407134914 587408938 782548419 837531810 322737607 616708891 114914288 115387488 728393816 758786992 794763113 992853969 53108811 929003849 604888948 919746228 353819365 661487138 577729660 683221689 142009814 794849438 848748427 942200020 323174317 586579541 470171921 548202415 217196457 977142832 278076856 632013652 51731753 378742362 670663924 847792960 285271334 869089033 24435896 796135734 970955131 994977374 333014669 936551947 297233871 394453765 648931514 857334050 165570677 638511649 224105046 442211961 500895645 581744381 5237038 53953165 729781258 800518708 551938298 843167940 737936677 803300290 228991848 255277514 41096311 236569233 703669853 749998086 446653725 583872451 724651373 857435935 419537967 584023469 162016055 241208988 81053572 86038982 897898043 923615877 255033127 683581372 378964876 729726709 325102079 831368451 966651026 987098831 923395837 935366757 426379342 536109989 208283935 373411872 21114370 259672246 559830590 829483753 377133192 916445588 831595690 894857327 186318758 526094568 881772405 907126507 550163774 727649667 197953135 524812696 106174008 987735178 695714664 996083900 79151920 819141502 408979901 586686366 492359734 984829582 187997749 847712236 269262914 884913936 952969216 979338944 333674535 759057891 683589552 975386631 506459724 549063114 346343290 627775022 239164932 878876770 366679964 564489417 890823503 996603269 548785256 789703013 114700373 778611162 955079642 967986449 110513576 932633523 624423558 734322306 554788660 914845680 848791029 855320820 601081241 854173706 156366974 597612674 139360142 296938975 114160648 927062761 38814975 238470832 261633609 685227504 805609352 956520554 117752929 880309601 624988144 881346822 791015033 974710996 35616157 485782656 629671889 959082805 437369375 805462164 573110770 665957982 365535988 598988316 620256621 856830291 285833323 930733654 357896398 765365932 629150800 816471355 321318474 649809838 145355715 602532166 322238138 446529859 327535298 460915956 136504999 744914552 728516603 974605371 799397743 885326583 676317938 966833750 315358053 608940204 843276296 863652435 414149382 703284249 551401907 613447352 202203619 756273648 49832369 350247218 928570749 997064826 857805821 998823462 362302835 858376507 114176448 610658793 839892666 902649144 309665207 751496584 691420109 958609353 288012706 674883672 703602565 996514192 833224541 846687977 655702239 843575320 579562369 781893038 279354792 835800362 484260936 580737996 880319978 954930041 346708732 696645004 573507848 794054260 241371367 991477069 323915986 959709267 797435378 962519233 178746353 821713897 793935101 971406033 816106371 942047185 535904787 544738399 814903652 957789584 470051296 881910114 63627927 529390889 594876824 894172732 171557092 391430669 885159259 897511831 466020813 818129119 162058704 602681755 725868918 932233248 477709504 940139592 394268271 855468684 457227857 914534166 631225964 786155950 447691351 728915577 372383425 823433722 900107252 966592488 208668514 994064954 710418542 861195388 857785792 983706115 3963056 610321028 94374301 837715464 739158341 932041082 786914657 998607648 538771238 684602606 704685870 983890764 573744669 865832259 438838103 806517060 807070403 855027734 950449114 995540737 736085293 807856337 58791277 852007595 887875524 990372180 998444507 999473660 841442139 903102943 335093338 510931272 93339586 341811259 309406019 729527350 629798121 850283443 183928438 733475597 370390406 936267784 392034474 688804399 162132684 284584283 964918020 992890938 86309491 253140475 368276963 933132131 201592158 635973559 207512354 390897337 694173629 954928936 511639253 765175235 90340931 861897397 300290183 754379092 782045060 972449312 560965053 634874017 386711464 469708548 952322988 975287796 69840266 971509264 12329620 919161817 403921843 797836000 927536326 993071497 463951979 593249789 117076266 934109901 35760643 200060110 231804473 608509340 409440296 890821625 109152589 264597818 465275075 903869653 684316567 782493735 691288877 949135037 935214759 992322290 891474721 949847953 195875973 812905796 224871621 344440711 600484522 762670450 928924503 994419382 399784529 456974103 968027355 983575290 746537850 947939002 233363602 493483440 898143707 968740857 307329057 741712582 429556502 642407075 871296684 883463321 559870581 926347375 229344597 401125535 803298126 941157492 951821636 952580575 274710307 309698924 361957652 801390567 725134989 802603943 358515615 608590271 1900647 868137041 737443348 827136234 106650860 878668779 378652672 684981701 423883686 557964889 155133700 729470175 196002313 323581591 915887519 993317861 491495319 550457831 191832342 610166887 499924784 510832675 900318475 967879000 446078009 948128570 97299735 370375682 501228949 737551023 942948196 960575184 228537432 474018472 902597375 978391948 596918053 850375114 357577556 649934299 542599364 804987567 561436639 861862398 586966733 935977707 392180065 967314433 737611419 759856614 142246917 665386356 3747065 573453506 858458403 976538328 45167534 895752064 458283995 640524081 870406055 949503301 90891669 667526972 879569592 987134039 833128547 856140302 518733392 727452863 641339008 955538837 949830648 989221967 324963445 354734289 988987995 991093405 946032193 995103009 1606535 638079650 732991972 859439452 71061683 330395825 62431148 262480785 425234288 606593966 737632558 953205840 48082852 102061808 247000489 679115710 331218758 379090673 436244755 852973311 44114047 45104080 798613255 922764906 797180705 900190681 936036015 982335219 15292989 778158992 41819627 464468125 412091112 530068432 43187136 327612164 818837141 910747664 365190272 960564177 645386650 990390414 525332027 911255935 2897576 901792097 965632684 987265896 307105011 983453192 612929600 922104212 905962100 914768206 624048262 725621334 385346962 425978116 144649281 378350823 170082694 442751124 743292689 809772363 62822445 996361910 755678978 883214521 677409157 864790459 154580603 486833115 7093949 457647108 5925114 397426716 97799868 591083902 996352096 999194462 962711036 964878517 243671145 741179634 219448676 436616001 730788787 800071453 208976757 586334207 512972279 624501532 923302519 926599589 947997806 989892133 407795346 479606333 573654452 598611042 5787191 604202975 875807126 914876127 638406770 775180452 296987515 956587471 546851864 958426525 501085482 866691881 997555454 999624451 586329822 772817679 167849344 504654105 488142207 687091505 802296712 990407061 783364250 834222291 918599372 981058404 531970269 656559090 394420061 430120496 883663028 988834205 344342485 452574660 927658867 988851685 520765743 812653346 186472968 962411885 862155083 912095172 345117330 408360643 311379143 945135794 422954197 431643989 741358636 859137773 879819792 900563320 117838360 298739829 469779906 858424639 73581845 475557695 592184819 810102057 58340637 723310227 245876765 828267706 441246188 501305930 670427062 696672556 580126329 915035357 64724961 744451529 316377301 915411138 987191042 996091226 174571378 698494946 398987324 617050518 607894050 748496584 56134303 175000775 671682599 864378089 549671414 799794399 719527406 914272491 85998075 476391211 839897516 989246221 800624270 843641023 799125979 856759692 566433119 810741479 998729611 999965345 359431969 913884057 13706456 733164266 659728386 881975409 853963384 995484312 126776364 278262408 951149128 978854480 551166971 749131773 89547364 816952413 904635895 981006083 226902835 982978195 898666445 972909093 338444586 913054101 751669728 804379791 836033344 857034594 8015359 947498249 158485067 573827441 400918256 409048719 850346347 993506341 776498583 919332737 216502671 484201529 264044789 512048697 444043345 817633115 142425591 927047733 701599334 739464066 51767763 652533059 452344947 871044435 915321517 918339761 708064342 718620908 700518477 708236721 299500766 897757497 880983108 983536822 592555301 753528045 4903881 51844019 950470397 960719047 329876278 773459543 386714864 777184994 748791634 948502804 338472459 994887613 175330404 984308428 30300577 540266277 408891258 707514124 922070543 957318621 981377999 999700168 775996181 888642104 29288193 654930479 135566800 743102065 482700985 584950724 228712750 782599983 645781262 962123512 477856656 491902163 532762400 713697478 51786818 119210590 54267594 113976307 741809646 752996620 78747123 631150797 96869595 329240007 956931066 972021841 655378564 776175852 226435603 706129165 200871471 915970839 599901539 719561672 280356202 912087189 979272889 990737046 956022428 981152282 225994771 460729620 994808835 998220654 797127588 844540299 785178450 956174452 873039637 896465703 515395313 711040728 179241291 954157705 376403960 980287468 17376575 111768437 97042455 673908694 369143684 872398794 585022825 887643375 799095881 926242350 96727705 331873809 559322298 584868884 529178714 880013452 64754985 401849752 922482836 929821599 850308479 945706632 537040708 928826824 54834576 218969901 118583363 485301067 726264759 923670990 257617183 360192042 758958856 859050397 423331861 464017131 235038789 259695059 998662371 999762346 837116891 865286729 437256676 717025492 569855618 742285966 476523047 648681351 652716304 832757721 208099303 351786444 221354278 903231712 499885013 547862257 884602731 897906824 65385173 603543444 963870129 972043709 698477484 783561365 820629582 911422009 274547077 863734184 624576458 826759106 913543566 974335185 877484452 940708628 875750998 888419436 596457162 808685552 170825882 608139682 378651257 903316442 64622272 289095629 935572093 952329484 899547269 989593883 273814022 757440673 525318364 598011680 899905401 915524417 989852044 991314484 82208825 316954279 774901212 969060956 497776131 514942992 849186427 887812381 894332335 916502747 615954864 964211867 715474467 757475658 59857083 884175101 899854328 955368261 525572230 947531531 765838891 812116817 59565589 177117041 172086968 532840673 796304922 938106058 373159637 524130721 882939926 946526795 39617788 795803226 707469893 892169125 868582150 895307760 262901337 405714245 988896232 996390652 683614077 980460717 277406800 952898293 894141914 935116522 505251355 846072327 22019952 87228486 370613120 934888557 697917494 945118987 135159407 526428048 175778588 657269475 235228550 250210933 268529942 998447203 663294738 910588069 470757818 541967042 987227320 994631757 52525961 814062010 809557587 817072770 110167907 287918977 571632193 752167710 112931772 389840115 395196133 513890072 737647542 874207297 841713295 949075362 202893481 481849607 855364218 925416761 411145794 462621777 904185960 970325337 926498591 965778717 14966951 958192693 64395534 422560257 68766246 556150231 134979517 580774077 907340144 964383482 693009435 889451020 842160276 886483371 716111391 839982724 634350489 772003589 565566363 961203521 500924339 717074681 817147500 978946960 348477936 768910179 825269580 941138486 801224519 919878525 160295032 557353735 397535059 844725071 431218894 634232286 484863605 861645963 782813311 950616252 815321731 897886756 37688337 242071359 558855446 605927147 150625217 943695320 297346087 963316784 6918356 804301833 903977264 959165777 923465841 995277351 180840314 758226709 923145998 962784119 993142382 993177004 885688758 958899578 316596165 885878125 817721022 942954589 683941955 915105605 908278252 919987801 67537757 807632399 521661905 977470332 882377209 920625911 595204150 606340997 370197555 462637190 534964694 944975004 38946146 599860170 37678791 701456792 293651467 740248083 383014501 598982993 512435769 795761702 611845304 924603042 863549368 872216130 991239083 999955419 648251927 746540321 967716403 985967895 793227855 906195118 425417831 510026927 782366892 964074517 465161201 468847353 2153171 577147852 16788964 830851317 543585592 816814298 823472839 983963268 188108245 410611361 14487910 924879491 439716179 503937569 262678811 891547981 329953128 362101936 407156078 963120943 976843647 980191519 382077857 861537749 904243083 977046049 492846597 969130181 635590948 830925849 263239697 467274921 881778214 973719287 76160518 548955979 173991803 625064049 828226926 958659745 176710113 346830727 234311382 816468062 791043368 914641513 359187601 580507210 210233388 867742002 194613806 670842554 530483456 673241431 522801961 924712483 59973243 753528422 718010742 851842535 340034082 575819073 475957835 804843098 352526797 914548927 510707275 770330035 270566548 891245010 165996064 817274864 698198660 961809356 754705017 918523258 239609791 786651152 294766125 492094072 207219189 387993231 178762607 256309557 848941399 982645428 608069506 763144148 94197888 320048224 229322993 407833169 159643287 726961113 862125159 865438953 623365880 988784196 985228234 998422068 626908340 754587695 709682827 823379186 905879528 995866570 57839715 432937437 481796099 528553767 717658638 742449790 800821066 822238535 971368895 993147277 454632517 660400898 915440293 915581622 319361503 514120172 880860585 899382077 882699266 925559236 911979082 972521366 55847129 285871682 559279597 858081319 433833943 668885562 878888481 926791009 477916826 580936425 816663639 820291487 3989428 571453498 191343087 816520943 813461626 874212836 53153481 426163969 505821812 701597840 205592446 699275287 185385437 913298037 290312406 549498455 353061766 702709286 676941089 753627907 596973777 615502200 183164258 185909349 347262172 391807691 849380519 908062248 432762173 619615568 797778244 819822380 591219402 916474129 144448330 335408306 758129391 973074792 849255895 984452152 302138278 477305589 888727296 950897772 110519733 953687844 62332231 131662186 662468167 829594380 268130629 666362616 749588482 859619143 917269552 939446897 209789434 594675448 315418276 610590962 138686937 380057123 943392845 959023152 761876840 955422823 843998416 863420552 849211739 868752531 64087467 255748781 39669073 344503874 535887842 810634816 223620287 293728521 158825324 385683683 922191560 948371002 326770418 520692428 757406599 974570262 997292915 999549684 619624967 985476327 300570863 584164049 750532199 903096596 924333753 977191559 731406973 889288090 515622304 521990429 74688231 282422173 346139143 549057372 342022278 565794219 724190126 781190502 500280982 578256717 497614251 692019627 628745688 929506897 480703136 814406311 894289878 966166624 385501026 996650763 605946520 619408739 729342741 740899657 388687493 511205802 134916597 453764516 83924404 696045830 466498916 692847335 501184395 726056394 226416768 305281050 887759405 920459108 792105942 918010590 284980894 559279335 801589972 856401755 808166919 966749583 823516249 949486805 335595184 356903911 127569711 879142974 167924707 550625686 226740042 877576118 824433806 914818139 372662925 904499042 581804504 588244876 187755987 500897681 660842390 955821609 282004164 913847527 71841161 773502911 808717836 854930447 514644666 663090085 277598983 559057034 456529957 464971810 228937395 563155762 576760071 885036879 19588743 738949393 279725217 747870671 477400762 875671279 854183873 899721622 964267501 970112327 391431112 821645277 284439688 452786419 280169904 287943723 942463793 994116732 65201848 839797346 147357004 394321852 318434311 760420912 154918809 582700449 997087133 998274758 494445205 834541094 212863785 863109407 278048808 947561023 323292972 946460294 865313873 870868700 968171956 994219850 931960423 985972949 956308324 971414438 943801005 944132405 571146076 785276890 999206431 999527939 873082480 946539695 1038792 541116184 451572716 724326052 538909812 645880591 310662503 865814190 777821631 807948596 592948888 799268832 236269030 457190921 676485249 935355669 799800373 860644887 485977919 872088859 217631826 514965729 931226717 964777146 753045078 769589187 436182824 730426378 333652632 867594603 270412611 596281252 493616527 962124245 922507072 974316777 378264991 390160053 488157800 868046864 310036422 817295933 604181408 831281185 760038855 779404891 345799465 521555114 240796019 537801300 311981824 440562306 370324290 612076292 378462025 556480282 386731174 746277021 269598675 356586240 815978376 953951412 734951045 949473324 579715821 741107424 959344698 989228796 380498613 964482728 61784746 431646904 411077441 685120158 821552891 881705071 163074419 236383886 804937406 931318786 695076189 829305721 945869733 953150388 148684025 970515488 42971225 117562266 263176571 610718077 941654092 964066536 64037333 343157076 237712424 340862796 705163555 843421659 460432352 666790273 854073800 966521798 797058962 976422610 868098658 904091960 354494720 577674747 216502558 431844816 41685241 329434963 15655996 525343045 337048374 972921974 587546078 880301951 852584716 872857860 390185859 941217215 995122403 995266285 571179687 829089353 608679545 710497677 392114195 726968016 488979858 503966239 802813026 997880396 299850183 598042660 752530026 796502598 867252976 911737609 483292413 493344528 504534164 562284484 807743016 927880088 346348781 945852476 95829802 920590448 790258030 963397551 434825274 902552654 55173003 797626834 394998471 598591494 528256215 898406856 848763688 952275249 217948238 943267239 66390557 996641312 160480758 268991623 558544695 619378796 628572435 857243815 765126649 920513498 940736009 955613434 612877618 817329449 331110351 894724334 797069489 894917967 646005367 813446919 686287330 797055432 270981093 386630873 569760097 645744037 747882352 783525514 819841805 954812001 843949099 888915025 117644874 474266412 564059999 794508755 125770080 799232712 516722612 526208696 266877820 596939154 292660581 474822639 612546764 992642463 922939795 923979641 610154019 688660644 611129757 698764111 714550572 858837045 948958150 973929985 108602629 220209550 547536596 735996867 302622920 402890885 351554629 592523214 725772714 808127718 4699146 709973916 442655210 853544690 238547776 547626060 870923843 917361106 497201350 689366779 943132567 980062959 238843387 649702144 755754372 786095594 367057163 818750465 214863991 886518455 768290379 899054575 434760614 996817777 132056744 874508433 422091387 673107609 283801322 541958518 391138578 729897121 432621352 591657018 884650218 902336398 726017864 755248677 206819010 295465632 82232265 866883145 189443238 972617988 551478912 698754988 141368121 150731027 410919448 443552801 716104776 775290238 467772956 851085264 345223461 497781382 873009751 928150237 9187141 115595691 760997455 765462105 269224781 870387367 79409734 715297615 617665602 878829585 528108386 714379575 873549430 915437537 609878676 664039793 269978107 894286969 996457316 999117257 512501586 568742944 655034616 825206158 332073086 526300324 883048904 949801352 558113276 744849912 979377363 994756622 940843747 970775653 865519015 967243623 338827520 713487118 384335608 942323003 674509524 840497724 894449230 916889305 969303670 972032382 555944530 880933196 384080905 828944128 299647621 413945922 37838033 50321219 959131380 960049639 581062327 623223163 490789775 712230159 838163223 950747451 2285612 737333054 768516479 830551376 124390890 578742751 606035441 660689572 335860055 908650648 924557576 955173152 515645166 586005835 125890442 250652720 325193280 544999156 45076835 700898283 411297242 673529585 54378055 724550181 259697255 844105716 545570272 639812931 773690861 976616964 168473131 585750908 549410193 719960042 459998494 718521996 612856477 746820002 687240909 740955351 754267917 877504894 689302331 957164652 418525027 987951116 295277913 982291610 626734807 937266321 474147182 817524801 772637469 897736571 625454270 677713474 148414340 808158422 378203593 520854906 901041365 927346955 490354298 613256912 571473374 757524334 871125926 968959894 67597692 121780210 555287679 646104248 879922923 978496815 997504007 999111577 143665366 877062135 157980316 650270816 433519746 620429493 538424376 932730291 886999012 977844413 146137413 239976554 646804774 735590428 609151569 643384480 566401770 661698677 730952281 744193521 204881318 909963243 411186398 900477483 564449339 982065779 292662550 774259417 387948654 458131924 140669480 300876887 88991933 159889057 878700423 923533739 529859521 642430085 952674878 991780914 771913906 795073816 73907746 556843808 866749769 971470606 579068235 823993338 944876571 967143473 801083499 802500464 321541512 645040883 384385862 701169962 778840632 822890606 431459020 783789489 542367571 588669032 116791761 561338341 880996178 951582684 961045630 982034623 853615397 955650939 804035967 853327682 932695557 967224998 266151405 696048636 193778497 473949548 389450796 688673321 64613256 599795617 508718884 588691964 167848759 950770622 378034850 856873250 472265125 517817110 639770717 665893046 915106611 978923254 888823909 925051859 709907163 990168970 764858199 867185383 788077543 925168892 494639166 880369228 478631125 700285662 55030006 247288514 256770821 566727289 629742388 857685005 166496275 689129801 73472533 933094197 181462833 911960827 449542614 664194293 97566493 727229083 930700090 969798811 349176328 507780660 449757719 841072451 23639986 593186736 438446887 947911190 98979484 340378765 15606509 109600870 312691741 747781595 999818126 999987224 370232812 938075860 958092210 980389324 688485602 855611648 488966101 582106968 529454011 539116869 39149574 531264554 382315708 780871770 495851574 749117833 671347075 756156932 189279544 976628846 448790263 456997386 786341349 850077172 389397898 794519305 60647776 959444459 171382944 836844778 951488016 978142315 746636062 890964492 275287554 396971832 935395940 991115508 569550110 765009437 356021125 615428949 954710931 999414705 418806534 505599927 311133047 414047438 105390876 151207149 94797718 942991875 958667227 994113895 282304600 438747413 242717201 920588018 183110908 642779610 657429940 700641162 53037835 579399850 29825943 836906867 936887394 982568893 67780291 130227572 451199100 859198589 314844612 666857725 904358863 962061673 411459148 910256766 756347536 912164992 548906862 706201814 610321139 870239588 653824107 837596422 792051558 999635644 968404586 980273269 128165764 823003623 329072056 642242886 143589221 770959881 612588169 862114196 963812332 986740591 538824489 573526005 905140147 967075296 319090298 372423517 663298046 671136643 82830720 790690137 2164790 490167518 41402544 914059662 81459865 96249015 548902319 918317721 808297510 888070634 702122530 850288902 553775074 962180151 779308128 878618232 646410878 736092238 96016047 295819478 23339859 384022914 250513397 594590729 904846628 994108320 541421497 804913577 226079636 622518215 707051146 711220865 375049272 586978193 717370888 754185566 818355325 910517183 849961505 919320171 769786597 962759022 419715254 927358805 647405865 892586887 585575080 921249970 812200597 897302461 604216204 630197603 387721418 700337348 718497025 920513074 306730312 650333798 582784536 834045210 115869997 717931213 398859435 616234612 844591146 947855046 662244567 814524284 84705376 323218955 153118689 851082901 536810889 766985192 709422341 971055845 8743365 17711279 508839359 705123356 743041355 839857970 177502382 693898033 756002352 807732005 102110562 254622778 423854290 904560287 732489336 865536475 841748313 941562420 613572178 949979810 943063336 986845090 839426107 973071456 126345709 580926388 238949627 419107013 412417753 832749694 131159743 697056777 509243497 843843351 326984517 721290270 548697610 606955084 710995679 979521206 328053581 359720680 211480009 430059104 424922880 475652209 489072564 962439353 544642931 935766241 961848956 974239982 418102425 464534452 973595107 999153236 364668848 452471960 64748698 697120311 276453826 767275440 183970604 430808228 368237560 702035136 229889709 960600332 396019873 828378340 22069877 816945526 623265921 819749568 56169640 599885697 619038127 904106320 530928795 622584913 937022059 943937591 881824742 974998372 216941540 593904516 662048473 829729466 277271740 729667619 340631531 578321325 345769194 358293774 484048098 696993647 794443170 830119043 309719826 865696114 140575673 937219316 320653412 738178704 562330665 611413773 16666686 639507604 157189211 573422751 573475738 633462961 124782887 378933847 676167101 999758635 988129656 997881320 904877511 980232358 118043741 343633824 952026569 972746179 755923406 808369659 819914056 947997820 456305897 893214596 229856600 915386359 232944315 585218038 761719734 939448642 442748683 917951978 385665925 955579162 183356822 759579326 257296466 583010526 715390442 955578014 218544328 634126475 504973241 848475234 53881576 888633385 650921626 835439457 212320714 425298296 763725504 792091526 952283919 984262832 761550000 972853967 866194077 976889659 472448224 513588927 23491321 68785594 598403681 979292733 253402933 744620786 914763402 953683720 580487785 781057293 712558233 939716365 906865908 925111865 816884480 838251560 918548321 999553887 745050864 913281275 856433473 952064669 500003875 692761341 905438215 916336475 432149700 574382861 862722238 956439705 337004272 967950910 965361637 966713674 10765297 400597552 417004410 720142681 355975080 668694033 889116782 957065998 17702877 446948129 474508244 782419896 155702849 894336857 76200755 586899113 66868447 606844170 354705985 997474741 580779579 770931178 148282896 160712298 563551897 728086239 541345555 931670117 636641033 775326471 967779746 995399436 97693095 928430648 149780661 285734773 498963295 634538331 883365971 947244706 853958791 975617531 750864535 755879409 986343139 993415374 547135959 906008053 399103140 518270622 66759984 360183008 387246420 465672310 345316094 923867639 766048815 954184210 582340376 926732269 854310165 860735388 606285531 612683308 546648555 634845069 351903115 617711873 513500469 518500969 405567824 489798715 703986889 856142398 549345046 925089837 788418109 978539006 183093573 262739862 834300550 836103186 141060251 682484899 358311375 719128156 465227375 688261435 822237030 916022159 777632995 937779560 171315941 969335986 331683191 609247299 708244060 752952693 660315480 896199142 432809418 846307221 419203317 866803200 724939417 929739260 682953164 912908550 344101298 966134049 576705345 643400402 106043814 680253807 878510005 888871808 667490923 815050468 494268457 885287761 441865593 930926248 484168428 508526861 428446928 521918032 710855821 839759369 487915230 845869246 122984349 994399914 696958504 732333318 262862380 784992179 596057143 995428608 567750369 764129926 317490741 567364590 717433748 815786424 92512247 732636170 630136985 801864584 764003761 817076087 596440499 836213363 34074327 339369711 661108078 947491127 533215893 659344895 688982351 938565021 858600332 942881737 771148627 913881501 662869980 696903863 979328312 997322215 678515592 749804480 172356599 282113353 990922631 993291436 12416992 269161275 559543300 867547106 885645088 950336988 318927933 355866059 432925983 679679207 963587435 997073262 819861097 872638400 648273915 757585083 879508106 879944313 593374834 902808963 711577533 981099097 818605520 957521885 523260081 725317480 927583355 935024695 821457508 994756988 652542166 732303843 757672576 816502615 194523583 743044230 344847543 600733334 981057990 997902963 926691724 964863700 315181129 890828669 148351203 963257133 746871619 754972114 50205174 845436037 248611298 612913229 599783327 648325892 259537853 914018513 27426821 770683960 917953487 938773264 2735515 415034851 789983644 988388426 816511165 988667198 15117888 410263286 62586818 345014525 540186727 627744583 857522229 980732152 408212514 478490753 240620661 678103298 511432684 668836442 893003471 987899946 261961252 731573975 354641033 617430835 993972018 996520995 451580202 841047798 847899130 963151558 762434369 883999527 175633697 561218915 707117907 754271926 278143767 931659558 116517421 295556878 560465905 682182570 203872189 753495839 961984388 967650902 78511050 101965573 737266031 783733310 726366504 814651049 938820177 969078982 439710098 570024532 904522992 996796941 358520942 496054769 954569418 967802405 691317885 923632338 595053593 974367985 507194044 946155846 860872300 886142449 931555409 940614951 919532958 954819466 832262499 863457150 303987295 626258271 594313281 647438980 56869779 725730568 565391182 612012256 9605279 391679444 949724360 992824899 421728443 755316260 69556797 806032214 786377945 885608927 42566248 439641966 524730575 763464564 155631431 513623298 639605828 737855483 623880621 702929235 919296226 936068424 621833752 885027429 134226136 582775288 838168606 878931528 368514134 533686013 597619143 897534377 669146253 795164560 297587679 948119567 956062163 981558153 410144672 850351518 186690425 748913667 770963597 889444657 482669418 496189647 131673395 427132608 864566306 889457780 91144331 412898239 215849642 382468253 570618827 798592185 920232475 955711059 705022455 947946865 108365297 450892256 595789672 876969362 784688189 954329860 669016502 775182741 9107441 570142336 151104173 723006739 896552493 960520180 170793355 624224164 657906004 978912359 24056220 44456334 971812131 974923241 516895304 647886857 815405215 957516268 176669488 937452915 588625162 706066373 197336350 697465353 237607275 742120558 347100658 655615964 167180738 804463689 376064928 579244238 344642958 675244143 28706669 587050155 645711386 764548564 315854142 712369399 825598402 898124072 341512797 529597583 11621359 762270443 739037981 893512579 58168761 481775364 786505472 996606699 736111237 996001468 702342671 869466389 509415523 995533196 895128047 908320472 65936684 926577863 26158873 514538745 290839799 405392933 974472631 983712999 53498832 828245378 851651711 980423481 931914278 963147545 2518901 536534868 871159611 872306820 884093828 903184288 87732429 831088787 890926651 924473122 567235057 937827976 273539735 839728305 408487902 809622813 578011262 977589258 669332335 899207749 391473647 762566735 939363037 989029912 185129663 546763961 797509827 831426983 522968061 527357100 848442393 875499845 625950811 799886527 769290778 891081435 168688247 871666914 810493116 949247363 860690022 939926228 78330950 210440011 979399189 989967038 325471750 604389106 533595244 560012308 733163666 785848307 24962897 984071605 587608496 851304559 691060316 751517357 415897130 703588960 673771946 918436825 989849702 992648799 616144355 926509676 39410842 255417519 884913765 903044474 684771522 804025014 747430162 944483948 213015757 351382511 32039918 65594815 536187476 951851754 526545266 588590996 398894280 516900455 901688986 955936318 108431586 566537764 669094345 908470445 731656705 963568486 647553352 990756175 98197826 869932784 494667418 909430784 588685386 952765211 974325500 976549065 162034322 392928542 860813916 907094781 949362163 970848381 670315640 733028797 912444970 916544910 798698232 926691728 951521182 977780626 185769817 866760666 829868195 902390671 422889710 736834762 24116830 886780965 43433150 318765156 450246628 538485079 5954974 359053173 633621744 995220661 294763391 362201242 194983635 251087871 421790621 554279878 254916334 999746263 555263671 750106971 337760348 886422747 624385738 886378866 572235007 930937088 169021965 603535820 532459622 792857067 852513109 910141229 460018399 746911279 339870354 898681253 681750028 749594936 558762214 923226895 171541813 457786098 970525721 996124507 683432646 875316818 470350491 660470730 759644295 812436224 862187422 985187891 163209816 654591773 363593513 965363938 798010947 917656113 503885307 525644623 651006004 698347504 428988662 496328785 340860069 412844455 856058221 886690069 260016502 841533190 439269176 782331123 975479142 985174070 357954673 957354982 327037941 668090102 560915779 943669523 937730290 982218784 793607041 906790796 797729856 974749531 843275207 992751623 110945107 332179222 594292635 667928225 450826543 510044893 484333852 979026028 355607447 449662067 719533532 938370526 101853891 339562787 207868732 590795281 421219021 570407838 170880175 534213430 972717231 983370668 684838028 718834692 436027766 838874483 362292887 806370231 717342663 949703602 241603874 588648934 892356293 902731666 955857956 973167436 176900129 802540324 56944103 363703816 56294703 595478139 28981336 821862789 360259738 443374947 326805590 986488658 293191474 613683585 682299740 974270546 597880060 649392000 646855475 750815738 694693872 761337314 71706374 128597108 711612856 764310708 347977126 883510153 419031694 910741522 3405829 37583776 704908031 818801713 555171076 701150092 489939407 793472174 709681004 916038911 611622874 731212512 477881666 696991100 304203836 599358253 135573769 846343181 6796823 440421573 706708278 756677453 288388751 990261687 256283924 299799783 190545882 648792558 351817746 691871215 839856880 844063071 267515237 716567512 258099505 657016160 436426506 722458855 786451798 904633550 514599194 792705639 55089132 165011242 771523052 890117686 47317785 696420593 945817127 996090589 355095587 803923698 642362656 876603523 414661574 464531897 70981173 919390493 224814479 463912149 70924995 848308364 946663665 949246947 46378857 799082175 677345138 711334437 463588071 956714216 122897164 380537622 750805212 797268072 541147378 925094631 976327074 978129394 596497041 792823594 798242085 974991686 626410269 885107819 262032770 740536283 454803426 809191133 757889664 799420906 142502099 186489041 145441540 323555795 576816559 813981057 234195712 668373706 790847108 938536591 429552941 844923911 526809108 589492701 385434674 834058263 876700839 982065910 327425449 840227919 470066666 584541606 484781655 614184539 208589422 890344154 528206427 717461176 144905727 886987265 962076445 983272937 55993175 405276527 206771659 817737427 231045169 770106148 678332861 750419858 581274971 725023879 380633675 921654700 257149723 624150303 657813107 999768318 577161771 965887044 664213534 946098043 786964982 867744833 356044274 606755739 948709731 995799950 481501470 771906205 222872318 429720334 578615170 766478448 874171882 907449107 741958617 956002208 765961456 776103387 99894855 278065448 818575777 913186307 644414717 715473226 367166584 367448317 784924553 900386086 81650467 997377338 875577159 882330534 251526940 302081752 308452940 652627641 245218883 705109764 483831667 851866378 724018294 944723785 607465411 878018924 942864740 990710293 564047957 731478756 739738976 764842293 505290373 581038216 529718802 850211880 128788114 167105059 696011843 862492118 986410237 991893735 224814630 774684066 795909156 843995056 980011865 980283990 22007186 353885481 606206133 665952966 539463020 953774749 19842185 185480319 397738050 518773826 82092042 278081741 936213147 970925151 214031786 575924634 494475665 558146466 960654790 968496657 885677967 984178051 702293027 967054048 219169546 626536094 314604750 951101380 258043564 710884206 936015019 970558835 805196840 847975160 520926844 711037429 730459689 911745257 284099344 849831334 365033324 497409490 171718566 681107219 788534881 902765376 927642688 970202611 733822449 850064878 320990471 551431124 382338968 574326039 649535093 943645088 585186259 655814232 714914978 876367194 504677056 924042323 683987211 889986946 235589766 858199485 484750346 812766032 590829039 869504037 795546203 989346931 354850874 383860019 500127512 520714436 993840024 996675716 743247897 877947407 742068224 767137336 88483752 107368822 818306760 830377226 952724922 979523886 404683967 519051137 628926069 879504027 660100993 796212663 971297223 988182899 611622382 859844381 508218318 876727327 30642888 720051511 342863025 467884345 656947638 917451487 677775076 715837111 414529862 791927069 307625933 405233736 125546229 936968585 950618428 985402844 572672060 874113922 280182871 847246271 37076073 318616149 54596873 902237622 732489345 907504182 765003144 848899913 973559306 991671892 551614841 757448980 641970163 772605210 691542842 808603700 755567072 992057613 972578713 974275319 975810909 996844732 515047095 713832939 163341434 568259392 280525766 445127952 618709719 906416488 256515185 471993021 63352109 711768732 338208098 789453526 832244845 875144531 690348973 775201035 333004590 458737920 759368085 852243128 867616775 997027120 750987968 970319266 38020968 461796315 753031839 943516541 734225264 826597529 58344836 858538911 535526233 915175824 697766570 763811277 75794495 95290677 303004110 493031044 331443264 478425825 135193706 647487455 887140907 930014156 46804462 403543927 405488434 573464441 479371049 947738894 205649550 421758130 102834670 232152814 783044444 817761313 880966228 970475493 933392493 957884355 531571588 648322399 621820467 734812334 479935890 999552244 860446168 947012225 402943367 745149971 496463891 986059800 904080131 993653839 17857037 146527958 623289429 992326929 186354472 480898208 905788800 976005902 480777783 862859793 469690156 958227023 677991696 856337106 462824603 682400493 511764673 969542092 758439829 832405570 330884811 455214277 652415578 698683386 55000865 853886584 115625137 968364805 246232961 717010321 437001008 935016426 299789450 687715860 321069901 569741257 772634122 943320037 127755537 845855992 472780028 999772699 533918301 657650754 790485616 918285323 342403675 673162595 102856139 223985800 153195359 472396629 432734781 625445834 580759626 676579779 202607639 952825338 760486915 840778088 9145408 548326481 737927061 834957323 896415187 983481584 460696753 812197217 848939850 906125008 21450119 823890103 348863102 677892769 523101544 599683129 271772432 466101035 36051392 559880604 839317244 947762660 56391902 413881485 568324944 796745062 812980942 893249311 97327246 673470614 798901752 837319733 862060352 890236865 667311503 707701979 158957693 363323234 957946732 977247034 420638721 572657268 841618938 947658122 979334578 997183363 780365272 969854383 618161087 722868048 75417597 530549934 474533900 884167994 281114512 555336842 724871762 907214510 463385234 686975461 928174162 983378407 538971995 628396663 982076684 984925564 226005247 337773650 658192631 998182270 41316973 350610076 695150780 993595401 562224814 899915610 503491630 816344528 989594420 990981431 869964482 879018553 854689022 921019418 730569581 841550997 10488245 429435294 719704971 925944667 843215998 914533651 459589307 499129540 466775433 934207495 815623764 880384431 995980522 996085271 989330978 995574048 374925791 528821292 291359076 478583425 110173032 777193384 262289785 317719940 363998787 789545102 261880079 713439223 988457351 988957701 744524293 936458869 828008298 845907807 167897397 556734496 500357816 742460941 235829407 594941107 366308755 498615496 260898563 316714268 394975395 905554285 590867831 621501051 74194392 805261759 936184657 982537803 466300543 595562790 761153048 860097820 271745265 775870661 162576316 441678927 79430221 96439046 241439179 402449168 623112764 788006461 136297706 914452133 196323049 876287524 967960763 971232896 766039030 804067146 132630355 457443644 873791326 934803587 506991865 677438147 925223945 966884966 704375569 848811913 863478304 892812053 899182273 985439657 257096822 663059709 101510806 997024652 300004835 367910293 947146902 984812844 578876378 905326218 384679304 992960123 588950076 719651731 993215320 997410863 81933014 712446581 419950203 927383349 784871649 959334345 603454827 836334907 523221444 741191667 810044171 977481349 781029195 906732282 424894962 573974612 651704434 998724103 445057544 835991764 751909425 800677717 729831317 864161076 851268306 937552881 232205141 244760621 281673765 289427029 107481249 302544476 980884593 997400879 469453949 548900927 955633681 991384741 531465362 604508252 132909560 961414508 608966981 705126726 732259936 853716517 171299072 763699874 491585864 520411263 348271948 850976048 138244126 173914900 32634742 415679434 261303096 279209523 434497622 924490110 599124993 776369951 300692953 545106257 85094468 696643160 515701285 790909452 660262608 762674527 169904127 321867795 224804511 343696178 545184565 802060999 725426269 935285041 988646931 994240948 673993066 731649762 663661658 713117440 213939737 630160763 101007030 181036731 436667676 593706762 276068349 894435826 396465641 964337978 7162963 129376874 144598000 828027623 412005845 777990334 635253549 957692134 508231247 865469418 169384563 534225645 207063591 740474845 56051717 343187886 47775644 294786399 342454362 597392804 347381817 874832940 296268515 342620043 430295810 556647364 102613634 375747515 482110868 910384548 296485372 519372005 79763411 568163595 81304322 681454178 502897290 670372486 28312141 726765177 953341962 962813828 830636530 887655615 493070363 495665004 103827851 158062041 707370206 803780841 787766139 802790820 762835359 982514403 860154262 902904420 727806023 853182187 727138059 879806103 48023948 401343680 404450182 646117738 39697840 589010716 952249197 961861411 165825530 373667916 476601048 953320535 132741975 614946652 29609684 445424517 94197776 638325496 307364725 495046594 186531833 871613910 927617759 978273977 621933797 680120074 101342340 674705129 527115807 648039465 354281549 894957634 872655663 879853882 170908259 896893390 182709871 964583995 773689748 871884620 802415908 979143952 79117706 848355548 661939702 718864428 865220559 893368820 512435034 610478263 674009722 843605848 851020212 961215347 93928299 917863112 752032421 878953385 183046282 679100555 803116904 975789179 801461110 945634955 528090370 921116924 12578504 834561952 617368200 922863387 663872797 977149232 741699420 970631579 705154431 729706905 979629269 997274250 606046085 774203427 368016753 933846303 814245795 933951109 612946365 911879540 163149460 909376485 756068676 837485089 712205675 760094937 351326830 933785106 633706815 705907474 363260200 719470584 913331414 939333005 476840770 848954195 265126339 404580022 865113880 976448368 810670509 921853167 269218916 607818579 42753284 504647631 337858203 819761865 33278023 592009398 784022225 925462464 862438196 908341169 482597461 615870862 349889474 367083511 543793839 826742804 857014097 961968304 163455466 910037477 810876253 976178964 704010330 947371932 103611948 368121045 784116411 870984258 926975808 977938256 442153400 961582310 32385396 261543136 632484432 682813958 385639026 878430650 308172184 650535290 799322722 899683115 290285390 895540213 116498960 361341324 154142634 915990058 18982375 785530347 59709473 748884854 675019423 953285206 199155127 953354973 545400344 975508493 994021434 997852466 297967950 489908146 50670547 423942278 910108292 934437943 99559879 148244240 731339790 850579801 416883349 816228787 924770312 987821783 242722531 345947928 696962285 898872295 766886492 882324229 983370227 987256052 939395735 974467950 204720624 357660427 718717289 988759555 234983423 652678199 28996129 542902278 225556754 830600364 760087370 849722892 636973175 969253517 237967503 351331734 677004633 836131703 343905976 878308929 674289299 895808660 663524394 896339574 189121287 592132261 705743263 902721899 337337486 570549271 729561129 956854255 877419564 969536949 227426701 596420353 73998288 746506723 325115552 890146018 9039143 45915391 772820091 824589669 14413289 518714079 322803140 674558598 173805180 244132356 437712843 890972973 93346523 290577162 451895581 474217078 640072980 958883730 389665353 717030151 103205351 336502471 61654151 998942704 221615327 732255736 317379121 385469744 663436884 760697098 419050849 887207119 982251150 994987529 905939427 931774998 21853734 951788886 475309634 989849430 485455733 934117329 748524554 997386994 715179316 821347717 393433051 599111947 191211702 942587089 329011281 583788561 694108606 968111216 388586865 790579016 185183320 588450024 493920786 502233203 20831851 72773448 124183827 892526515 781806222 989560446 690158192 888985258 467447672 553250144 803217729 948164976 702570089 863251908 344355151 688458082 495932751 730872260 460177492 708114452 471850274 523635268 723310735 816293257 120582013 252305725 511289776 763564589 682160377 940853225 22828517 858710273 493418303 883390557 990499966 997684783 819460588 928098800 593983357 920326128 666533310 965673028 327319206 455055779 344479346 471255915 896456929 955518428 301923427 869850027 934519325 978741553 172788603 406027614 758488664 960621605 601242431 775913115 453574690 632607793 683794780 815296960 965074179 993559018 980474656 997569425 662746189 701151001 907335111 933990375 78118438 397078536 899217045 912768423 320328385 367854926 34357678 574170651 293786938 654382780 871405541 906409822 236851165 878940144 99800718 502193728 249440766 639706098 463564228 464522103 260059574 829506138 2535307 725277605 785880922 860347274 90376670 549963739 32866610 823494476 141574890 555128402 814024486 917156174 788296696 804106092 836092194 979582071 359768114 406439585 464119046 675041229 537533743 556177440 591145061 685972519 533193263 928175325 384104271 617255958 258095836 839656521 572079549 882976645 537142035 769380689 249901820 438817102 757380616 920601364 39591635 633329806 637164847 731603108 403713911 988331469 868515835 965423804 906273529 931270088 486924787 771758658 165864866 633621714 46787412 625231114 258728133 335315049 364787225 960583556 699110283 754066229 621506413 681607465 199891188 393041027 929227837 978720241 108911162 195327972 871245837 927100639 576219355 739373612 656462544 711591863 788993064 926183514 182174906 291773656 26656654 434343309 135822872 534794186 674772221 691740382 806060989 907987056 427619324 545832058 441392497 492343411 495810408 556094497 512787739 529645320 795010461 828043704 296158486 492070165 717808712 794523085 755254139 978618329 408268533 828806043 960448847 967473753 629364343 697110623 242759529 941052500 421604222 525772041 534164949 837108010 563292047 778354965 65667448 975295159 377048767 979675766 917641695 935004869 966586675 995447521 667646323 997199203 288842736 908716784 701615406 959533107 753886136 955593200 263777810 833335308 590397624 637887151 907314514 912805749 675331973 941771504 605731188 701352962 618206027 922134503 23312293 585604602 167852093 810907890 592746931 994878426 429785890 594424640 273590484 467957414 171638495 334100831 485507226 633954614 868348984 941148798 549844403 919473035 86389676 891708614 354209169 370458197 841946232 866190689 82934487 855629727 930225540 997187665 41414294 775239164 654457703 840014938 926335514 964344977 763176272 836778095 610370695 717249124 61173684 231382685 299423255 608785149 345217433 375479817 156752056 468401223 381496662 789134154 662780314 810531632 486024080 952377576 532149068 899567885 846485307 913665826 961542484 966660275 330498939 857945239 736797535 769621740 609149365 988697640 230941602 487304452 320003110 848435540 772580775 975658435 123343367 443528247 459937056 943618337 776561706 981325800 843264897 940412296 703267876 814050004 852996490 976731471 905003179 935737402 861178733 990618027 571835320 833260744 31965362 61398298 241432321 504556542 637426278 951064521 618188132 685824183 492032675 751885917 36106646 534789863 929259391 960782796 202835104 887368446 994733769 994985638 159794920 386918495 304629782 447823881 808781065 945183506 625098899 920230783 193671897 926518972 239224584 715888179 664989478 960812036 674525707 722246984 953630965 995908910 856729238 875439465 221977230 500397032 641620484 911888898 150802198 369799095 204537860 569022022 958889396 961251026 245311095 456948558 322726745 620394530 148197516 275429801 787440652 935801868 100640663 864575073 10829575 632928280 206891589 906525529 683852416 690404226 192128415 756898250 844482655 958823866 994385253 999390013 52682129 911610244 204865844 963410907 518421152 759492535 977945821 989552084 275506710 484555324 752350153 816882423 160326395 679070144 350100395 885084650 768850530 837771926 146520120 287489797 935942400 967223533 692071616 853537896 965635630 997274577 982839563 989395914 467750347 675504964 31493748 935584144 769103040 816122049 172726563 651062501 574636237 930754592 896083159 943703412 306895079 317095100 149685099 633788064 167054320 994279269 391162346 461114317 987145359 999078012 418123877 677923033 678350520 689537413 113823641 733941031 887665817 928702005 466138459 943527134 751389858 965597664 891165479 901999493 204429073 882819212 423992213 564206513 922541367 994033747 464509880 837510821 384428678 984768077 195374475 390649699 301139135 761742090 930277505 996778198 287136664 486531263 779777626 801708230 76248949 994679223 991200486 993420112 605619431 713074035 416237999 677088031 799338700 981897337 160465055 927567520 756911919 777738247 78052090 961473786 619163337 938260396 424783161 663998994 370799765 516013432 235325946 883358949 216231596 239314673 743936337 795267731 534872485 821432395 553147228 762721645 431248647 796507725 996705164 997683734 357827668 495286992 887680855 906620670 623671082 648478561 407141086 794143990 403435545 485061200 564150982 643944067 292690777 415441755 536438776 756016108 577858492 920364382 616789982 827924891 795732665 894299277 387141811 888771375 571500854 746220919 374996495 971786149 5660155 819337071 746931891 816467384 616251430 768394589 906845590 997119367 742516967 775370818 702707346 867984562 877464803 929483065 867376259 939136036 574446163 986331038 137990996 882270059 768433767 955247586 497239090 664641912 574420683 996207268 953059278 980540628 378828033 405864134 455333692 910712978 25640476 489484893 500087488 909788762 370385395 830294843 282979720 330533833 150023622 463655783 173887602 846650244 64514804 118734824 262920343 833983233 795339867 908389093 690362260 739938064 815856413 959583160 952273595 996261825 971793998 992536812 313490794 991475871 162815777 721935947 712985375 885723604 957530488 997959205 13681226 322858236 244513858 944254300 757954461 994434314 534657924 943759118 722968282 864670063 874202156 887687251 807054289 855748395 632167056 848743131 471774733 506898386 447268479 544195395 437734856 579377769 830716760 966524654 522646424 785122283 946659476 976156849 670956438 824385401 369587484 815170371 74179868 463806524 943290258 987374873 767041018 795237528 705085412 715109856 101450225 752496735 285944827 371866008 762236705 797127109 422957314 656819858 288768536 678699699 10423455 499327791 45835239 408878610 138398413 920514775 279259170 570512623 166369615 636939183 540342121 980587116 709443746 964035638 41577963 474616784 843281932 957889504 682596199 739478754 793222300 834949228 320575333 788692659 638094089 779730436 100721223 158825108 678335350 942802862 730530874 969686603 962781081 985556438 735051353 740152908 677944150 701891422 187679240 543526189 13424033 643529196 970253742 984118053 748495183 845342517 787292400 897933653 486742548 833095042 784468357 879648083 247302563 695629733 131550206 983697941 749545814 922973341 404631053 688070337 450739826 872920479 797158981 841686619 810323426 868980305 698265618 835724763 614410282 801205101 879404221 965854949 93823507 593071474 818509207 873550269 387458382 603528137 837156163 966435097 862155770 953546359 456859322 892386087 243549564 254889227 841250090 904499207 471405284 548096027 627873418 850745278 332137732 858063351 568737966 923377184 154373807 845150438 987531454 998360393 611295730 777317328 356577087 475386102 720966872 865831160 156145591 877892882 766669570 796457209 992734710 999244858 165889752 250515108 236654723 686162487 539204434 714759237 390889410 988392018 725294217 989638529 141219464 539851401 78732520 493556987 690283965 726171890 785034936 939491852 873735031 956903695 823080201 973938878 948126421 971545335 936646897 995172256 537543452 705557793 2141551 662644623 847098166 919234355 834199123 895171816 405272170 944135385 298099046 718432419 743541719 892270292 561161096 756229867 138044425 547982477 656331768 683805433 227685452 371757344 210062911 349412685 762275396 843057785 945706097 947038540 38381460 358259007 786744781 952440343 91229986 853391042 53578409 647725483 442200114 697924897 219060052 287431999 436804405 441943142 299107436 829302281 368038602 982724415 288697598 400461392 741931691 945850181 365768959 752289164 29012521 929764513 524616160 758403502 684213686 964944428 979758915 982868182 422855874 871536441 683274071 883886022 789131500 813570949 313378745 982455507 950616447 977784427 360078867 990971596 408747244 741454614 755280587 909835276 875333544 933652454 938945690 986300364 742560713 970548389 505506731 566164960 940297195 951984083 424036779 852777564 135527188 826098232 298351136 965393648 113742203 600397072 555027915 687701536 763990112 894067725 648346512 938332825 664070360 802556727 419385865 682422738 341287038 530632926 691609356 776202990 410018543 661126137 865324910 999668039 365854037 504732076 79208856 347370531 275183981 432611186 586225306 722673107 176581095 978275080 640868118 688510858 184127926 391521889 486797150 914782154 611263046 853599032 694678172 803682928 84844894 437354068 577053945 824436918 461822814 903639281 746363670 851068987 675548149 737995301 515051645 869273586 731322672 882555722 716522769 761832767 207691048 810651516 70262713 707444827 800684756 907238248 696270377 884422204 822715237 934244204 880194601 968119724 444123359 531187399 961849527 972666135 866578150 879114918 556177441 942177108 365077778 836233061 231575029 445593187 150040432 350386423 19301847 492105368 942456027 977620953 571213141 928908655 301595077 830014849 397577152 687434324 668993697 931044427 877179199 964368903 489610488 802109888 520610492 871421681 918603973 970313802 815721155 961778239 400436838 530518452 20737279 234324711 219719575 333399668 216862270 346759195 694610628 918399186 802050935 930052346 578703805 786883698 617550984 819526722 38870334 425930248 262344421 285860097 704148995 965440283 495712938 840432301 40193109 350406602 568728585 903085901 568549647 846892863 147699784 693659932 603382257 991812250 775560728 836181272 276556947 420738566 956255622 979973353 643740870 751830833 993639920 998423252 897155714 897682958 97079627 701416704 753070530 854812438 580492924 963249870 716915245 778149544 697843441 803110492 308629740 893170571 141002759 751891051 549087380 745861617 618141239 624069664 772287405 995612648 664312952 899899060 294826548 371553990 868591273 904593310 564112077 613369037 465359838 698394790 910426376 932131276 194014517 775796786 514766194 835714698 977988232 980712187 894503900 938507427 293629883 521549065 521946697 605506536 702815494 900168073 618257362 920257870 291393617 933465489 537832652 623614289 55060525 64811280 193240295 639487959 800957772 944711664 230744678 535675561 982895646 998338504 957203809 993946679 499460715 892918753 239585370 534612482 138675124 439916314 401367414 478688445 353189401 916159146 227851940 470917978 906309486 989440004 106055689 748847289 612319224 668443518 393832003 907424957 816096890 931176664 137588342 205172841 113170365 733827186 774534850 808605921 913595411 972092246 782452441 849907098 139271014 189274803 745599499 962080519 474530709 522146128 649200516 740543078 364035136 784137887 610198596 899199288 347486143 607080971 344688439 680229756 757759221 911797340 856755976 940083014 788335104 884941212 527040278 566653879 488723534 529563033 216121231 687985592 793584664 861204441 751744108 862913877 881182458 885903084 25140010 311355931 815037821 832783111 876303154 967107030 262297626 627411933 572045239 633479415 193822433 400299205 363628565 426942215 723514862 928619308 166586377 182856131 790820959 822338932 699076026 864318799 426589115 923528056 657028342 750557857 494006277 511593801 57807030 449853796 353610149 424539410 309391384 557881134 93492225 287700900 649754787 737545893 18872211 276657807 76235437 884525084 760925556 812940250 649570286 678728980 646034181 763878491 263642174 777932981 365113596 370636964 164728828 562595984 907285223 983056749 963794314 988014013 6818368 139092580 615707302 846508898 575811866 644932148 231290001 988829390 924502933 968812903 348980463 683263516 589590155 843792963 911151791 985086988 701356792 941840639 746074815 914495736 632570735 658352485 28209152 650613321 159126935 895433463 207795192 305741558 476745053 610157005 489689359 742558548 159154669 790867768 154961290 702042677 69121243 862978397 500691742 578794558 916420614 934926870 268098909 587379814 94837158 910403344 739648375 877274649 508270487 608104737 823548071 889755859 246661044 305529603 877942770 953617523 53887338 97994612 468273940 987332225 130374644 839140773 813018168 963310196 548616312 690812140 912832866 966544642 126138933 602778511 326411230 359424126 283975081 934764409 410358379 632003794 176578647 787080451 790661865 922606382 43423201 663335069 788646163 928519470 476857679 722686333 514387426 919189579 252562562 341766585 3179928 800326714 491090101 919663821 501385688 667377780 829001643 887403491 679224333 907283390 123195829 457632452 363176372 429316549 407118688 908673945 906274587 994450017 7075463 647017481 330325837 586703149 343985412 647062845 889049233 889633408 452171077 495252432 241540715 280392933 344632323 878973481 941736317 953823623 763459886 950683896 42842485 728113239 411624128 499353457 949571092 997445487 164903509 390584896 1241248 852421706 510025708 991764250 215785248 518862155 119752519 440855305 552924868 961647063 18721700 222392797 879746356 992518525 876355215 910416831 391687257 934228846 114390717 357032773 813644558 898113215 213145331 439665638 214955842 514140755 671815908 992435639 747137670 748119835 202783446 292165976 578547108 945170925 147066721 879061790 887193135 892529937 922249893 958510703 784142374 885366328 361529132 744486518 733030107 892302656 125418789 302557253 549906860 570557741 617663933 930311403 750741094 982387561 649289536 964911599 931229581 969233019 815404857 982589408 678551865 919267866 814516123 946388298 161098173 894565471 446093060 893415296 210597737 224281057 369964744 567075867 458107795 746961936 545442542 667663803 172862330 733552261 511319535 667114665 318133431 606242793 836584167 876360748 37392255 390631598 800904970 964685662 201088321 653386542 248936534 991971581 89073049 680582147 743386802 851565181 447525411 822314675 359030291 908868294 166181790 431449026 140091858 571066819 727307527 727390827 922991365 999928069 684097921 784743618 820556986 902631524 864432012 927625857 958347575 990571748 75951569 444432793 207213015 604746008 182929617 427357942 6474029 829799045 980486191 998861450 443963274 794231209 772276767 877409191 807472679 887258624 421024433 641490976 570779267 846432622 447258269 459169463 898000438 974808529 911868465 964920754 278088397 860410440 237985874 388527619 54011905 492075924 951072187 972332523 590673122 703463378 739418841 865629893 149822810 777702481 1701909 938220888 202314078 828261896 80800194 320289574 770701789 862402892 618592262 646880385 688267427 720984070 485431028 536617902 767107517 895912371 894625961 966040448 590330586 829418641 375237908 546202953 649040958 914197408 168872510 259023517 928039792 952345959 546711983 898787491 513788877 759824916 109956619 140904395 240546404 304061282 686845069 851429039 903640543 964915668 982313124 983588735 497034146 524806610 918644939 942373330 304633917 740469388 564456834 578675268 113087035 239993101 462291363 931609820 711297780 957268195 135325129 774403313 633430502 938760018 353462744 749541401 23621095 677966564 549080118 574512894 227285942 820010144 511870594 702611663 864721887 912112714 700036663 710666770 961589116 979593700 166359771 266409223 358757232 946950194 172523026 415822374 767401878 800268019 291742924 947652641 215280586 662951631 335016879 878735295 704761843 790139516 951528173 976893556 3746866 391734110 15529220 484885023 308457508 473347037 173235101 420313634 504064506 829379268 667097873 950522409 934705943 993469653 657102547 803532962 618252541 864472236 776000392 980332879 815946668 947889989 678524676 870571504 193772329 481297116 66946953 828463013 513721708 928941894 112237487 129727295 339900990 447676638 77822819 614589611 82841768 236820794 483334032 655134358 540142331 810664520 582119801 894425324 671320804 691541164 961045931 994986212 750008656 803787832 343486409 524196197 476249742 846567180 737348227 955166201 945098891 982657515 604167017 819476379 820770039 971631815 277017521 828194744 704618580 956810865 292190495 435192995 684412661 986902141 748123649 995967992 630740130 643912283 657889706 933696274 681803721 882836616 376140965 556882353 226741861 832655067 78950548 470636869 496735114 714227529 680841359 881387120 827494308 947871755 587225184 873367585 908451103 924962479 39197552 225632933 27945724 964116459 999811604 999948569 224339353 768123695 293074677 459969383 235496480 250531331 218695599 694470835 761107162 801327482 784666702 940086359 361592752 666791990 279205279 656129390 98759763 167666524 944644207 987421569 398957373 642486822 778626082 930884198 268395733 686995300 307317186 659263235 110824858 542220105 980801889 982090189 628375671 656384618 341994546 630708235 989047181 990664507 884740748 892713750 436122850 784563667 114182554 157168585 267018882 830793578 960303106 971711251 14815235 908139636 48147467 222555296 633370149 671427447 400020316 819438887 341111615 741427819 731195126 928936633 363523981 785013202 922740784 937065014 346205409 887113689 377833762 512480328 796067223 921715292 208882957 244827008 748083966 847738191 124813566 463684548 262129534 442905504 903902777 939006121 792811397 849674848 385099052 567165564 666778766 777005119 47113943 249909395 112353018 779877944 547947550 772153882 714616909 836192447 777638282 808475101 619339567 750729784 868366185 883890968 702707221 911608137 514650850 782944761 245013004 938199730 954828743 973725834 545274475 712628798 415558082 520166285 22782791 94287411 141221653 504888902 571625835 729367832 800092911 904383783 388469492 938366577 417983554 865596013 329673940 376849275 225203411 274909676 691234845 999508152 176128616 289270441 619048256 813642841 323040006 748665366 345809462 633136127 686694707 809955226 893076332 964702213 350250942 912901363 539896918 638451926 830204202 890141881 402104155 473360681 480677579 900746962 792901986 952586374 988688610 996815520 803867102 825808079 249409648 255690193 909977566 937566070 16194805 657577421 231474631 951847566 687260494 837340660 115485208 785797548 134021115 726323120 160252169 377448079 198296518 982196941 61482028 373795017 757813334 866821208 692832269 778718628 870736653 977260512 748274003 787293986 28540442 743903600 592415058 976826917 707714514 807652862 526326416 670143598 709664826 736228595 106853896 519001529 580297139 677195345 718181677 998568787 991956014 995711595 202084452 483324271 844061600 960489046 738074130 867703399 184708592 552228760 653017168 991758292 967753260 967847813 912294210 926887544 862286186 967158533 813366208 967447199 352702478 962677615 872695637 988443376 953471520 975080495 473084148 500708991 874630002 981923543 551724454 752383316 606810574 996192510 940449186 969019197 794198166 904783779 158745855 349240881 226272727 865856045 815512839 926166082 906618909 917775747 969662788 983691885 565911076 887752279 516772631 568462438 913535490 938773691 567170906 856148075 901613370 925576933 470919773 963178581 472539517 962855782 704930723 724815342 327864858 648820214 617636571 995580445 50150903 942615083 524688273 830611595 623312462 637186740 171111516 870852653 814054027 993492511 485611723 770501340 308809293 315157190 22253603 166775921 654424773 990753066 336010460 756679838 989840332 992091507 528943070 677963328 483662967 942418976 522069909 818472948 580311108 717704822 692316187 975072099 193575295 905988377 526979202 657724870 914562853 956702902 775657596 794439905 903495149 948204515 918439004 939648639 850052529 911128600 368794186 536946050 906999896 981500365 84812696 769796834 197861802 972434486 234801453 469873122 448118127 616565700 301837723 938010634 861876402 905192079 932782526 974515280 53983249 605646354 432957265 752455047 40345682 243834302 353843561 816694487 184627798 707816985 667452334 709014419 952096123 966912797 278767417 702495716 562134488 583149906 881966820 988785285 269698043 924206877 701116112 903285276 715764425 983441849 707706813 806981313 21500872 52352923 88262675 541312122 624514888 638833477 585801848 892259792 533096772 924081235 195633073 385474548 41410095 612826321 519110770 670133854 314916319 851647066 374547935 787974792 765866694 792332434 432079319 966069876 191051897 330405282 596300307 843737305 302062776 890476638 717765086 793115214 257380757 604764516 552045937 666304217 411559660 561198233 655617974 840262236 287389701 604122052 531103354 896032060 471843599 554654767 440981270 964250141 634881580 878789292 802104141 872687297 378365731 492327202 556790834 650697677 694767328 761215269 341032501 836207140 475412608 652641411 239954497 607374510 982099510 986710020 57719763 753080564 370408524 451837060 473357104 858769696 450266353 592984889 991798644 995301128 364602198 702074164 618103765 743637651 610367179 779970822 309663902 547536523 269549804 364649993 429311099 921497331 402447716 974451717 841661004 861616360 60995329 288400214 470624806 801483628 68079424 108509612 168144878 440524612 177520901 453552630 42317951 300063318 280463713 534848990 6447660 448883982 714901649 930259685 212942096 796933380 257859914 292898261 642756122 881957668 966387088 976669427 555021263 851207177 835144348 905202410 320525107 747254355 71839073 306202126 498386640 849389776 894026908 976829535 20562258 504852053 222971832 851573501 74345888 601620834 672562367 745927108 507287481 547920868 305721592 958889031 581986572 848984945 342800297 779338026 303439975 736128220 207973848 803510800 289628179 963978035 851510448 989620752 968684803 994211166 950724076 976465691 212561901 891932006 943259148 961152012 935314443 982182570 270493117 495215294 913089013 972847987 249140581 271415079 685138513 996236263 449208685 971419378 307487755 634422272 193099603 357754116 224693676 629089099 131298214 621712141 64913474 455413711 41999875 800330806 414889920 770025358 428656213 725635507 205485490 502590864 326676410 519510430 3422639 966569460 404163574 743473622 482780446 682736993 749902697 847654657 926894379 943652064 61356386 787751026 449960323 795237070 336012360 487796270 355533939 965140091 842214073 905244199 480180812 653989469 290855639 589039322 406606242 980466616 170895400 424233628 336457080 832815284 144434261 525297746 942747413 966860989 681874949 806384298 281147475 544959432 579854790 705258630 651730248 992585108 118549573 620675190 394222150 498798786 954304081 983267252 37855003 590605400 15951664 633779508 754013335 821450096 857232252 865405107 221322029 820366743 348430391 941053141 988122403 994298190 989607578 993067321 597442243 999133174 909090935 962090895 530339543 576960819 11078841 219962757 442799036 509067503 169765237 841871680 517990529 798384281 175167575 453917388 287014505 543298321 697819998 830017936 947540386 990425455 719731527 889731646 341611925 614688002 702974725 741171243 935717936 965235768 65900907 325736120 626974093 716461754 246288817 533603623 122756385 205413880 977604932 997249975 904195044 948438545 299281661 393576773 543087673 961001372 612814029 690516852 313459856 467245008 339879175 379367480 898271378 980002605 672675383 990298413 641159419 907507593 500806008 773249027 928356383 951568634 728875393 806124333 743254485 832450793 142677510 343078438 912939110 915801595 88991574 514954114 484845976 530770614 262731092 695872992 473990047 625645532 709700979 724306302 670859666 859990400 769982669 965143173 839678235 993543904 701207828 960509232 316184016 375594998 558190187 730631528 503224533 842115211 927558627 942366385 637371185 942480728 49303550 213826413 597389263 977056361 504621227 676003824 820726245 970001829 822006739 916061933 331048468 933217855 104776689 140525486 180528070 741536073 418876697 449525759 851738422 924021172 868385511 886523994 251457759 839357407 11751208 274663915 294544689 719484507 698372355 780306447 30149252 385851056 352084231 835831151 56002459 603529234 229062770 983939554 926976674 971091859 413164699 488608901 475004729 614729688 180244749 338642687 803007227 871331722 23505602 262286384 270772556 346174346 991162692 993043343 945877136 971590283 794013158 967741074 967673006 990433993 412280361 455825797 234771978 998444382 316135681 774608546 737950460 825814663 460130872 934784474 990419943 996756038 462781853 674181474 827088905 960192855 226178640 333864162 200746627 235243282 993019174 994998295 990356597 999766761 970054157 977123579 874145908 952544087 471155178 983537866 290151197 529320175 732608083 887340302 355604016 430147254 510689157 936450823 424910858 936333085 71183180 843279975 52696041 953464267 504584106 577598103 746058807 882091575 990427897 995937830 912222475 987599210 661625266 824121241 971866281 985671235 95407339 459692121 639961948 928698948 298081241 776460701 792858880 876863778 952121980 997743132 202377432 331896840 630899347 923140569 370522583 511237310 896019026 997710468 909096131 938555792 369979430 886463615 313557884 569237153 434704872 610857901 618095074 655379547 670828706 682489603 195477510 866001698 301348985 601906679 137331102 762418095 167613995 935280751 483153446 626103263 274997158 567460187 130726993 689236211 64617412 730055537 163061811 395005793 611489867 776411760 957008815 961895532 295988092 976744844 800538675 925522472 161447674 791953178 310227433 980359063 277128032 880824513 978213804 992893720 127211118 147523662 485909505 849418028 823690808 885521094 453356930 626284698 819801833 846428575 652603312 714196819 715795628 843094006 745642607 851621882 335767850 899480714 301083032 636613960 897877395 952812317 638084748 965075900 638448774 937689003 875732782 994435908 367836287 393336397 371519326 610680351 318666101 797373839 813883856 942678912 336909553 760873514 465392961 975518846 895603486 931692122 738911484 761135685 711226085 809170112 374159845 654653910 760774915 900011907 497944722 499625138 833355975 851411592 112643643 761186969 166734732 183526458 244990884 356448803 817364439 954604137 29581452 533111767 321480088 894405605 891193377 932043885 643831151 874310442 894981703 925571062 39629768 416392787 364344635 570521705 163953309 688232538 640422208 679183943 559917298 896178156 976689099 978159053 276806273 837651735 961077347 984455388 273486061 991644735 257610315 429990091 165282921 900882374 957847158 993675763 88699722 888911491 727860615 772101753 367186760 537303272 488181072 922296796 925458276 967830562 498271537 748247948 16435751 967725040 885367538 922620296 323545092 628787836 94893502 496099915 59703496 338494031 191270424 841483794 135014597 351038284 746111117 795830046 469721188 594970586 598951891 799712221 122694573 340897371 833223693 947736057 112793462 671379254 513108774 711712457 104051063 648827180 786210816 868795824 964454413 974111131 273442546 849094114 593746703 981885061 122996641 584825043 787646395 995182213 804123256 994787252 386296823 603729263 325884593 973702148 719925877 854576842 606419345 918621353 728443118 835638189 731557231 920000226 234129590 624267996 315790865 728743432 21381692 742128396 751247008 998195220 122007781 622156935 783330018 860697735 604203814 950242872 142875989 423260374 409324008 532049538 150849986 381778688 580387874 692087777 35937359 204715603 334197761 477396739 508185733 970737451 41100314 782964864 678830681 684240471 959158626 982197245 232248155 487474656 712281786 775470417 64385412 617198616 540142727 646642294 16307850 604272510 584420555 626276494 604366428 647413099 32688993 420076116 304269150 806121495 756244168 762470007 886739620 905949425 934529484 979731098 181880717 797422382 626762229 916723900 940519 133678329 747552273 981602544 942352540 989655773 71469363 786062042 267165632 710513110 858612124 977081741 814985212 899697062 575757225 845980179 677010162 883351153 252355013 649151238 722809786 991787957 35401063 290400094 439071046 446905120 457090988 972528102 201467106 281945206 222471005 358281277 278053590 974779952 536060680 993358221 990883617 997303328 779752842 835813329 450553989 823225482 820069731 906499337 777266810 912246029 386694275 448571389 325205378 573439168 758260154 834672222 837094627 892080326 205371562 663894669 53569655 864874771 677309481 980949698 991271078 998639339 704780449 742204963 579743125 929637927 933888838 971229351 858806663 907865878 971240889 999422613 621367473 646322777 514366405 642820619 826147016 853700028 81754149 392672897 629721013 985673178 784652763 786636680 97396075 633489652 175738885 792018306 929908709 976014188 304802785 323808076 271973183 663199072 489308265 640211284 829510580 879262329 77353405 96055390 39752926 387215163 633574645 776578182 341164218 989795167 452857948 986261398 905816618 942260248 557487732 876839705 154507008 772502158 399560971 615631654 44281086 341458663 850649966 975419072 466436052 748880937 443982636 819423094 621700481 810737395 55812936 380198927 962238065 970448975 216759508 712234084 597963927 754067609 465158785 944041355 352812648 633772701 67281500 78267944 193872220 669013797 324811928 494451251 288161504 537958930 454422688 653647891 673506189 883694819 661991565 861345493 631695560 726608468 436721862 630266420 930698819 953246811 652925901 773635984 753940974 973473142 103340613 246333760 643336322 858660007 995682672 995892044 599412709 704719278 96100739 855878142 232424021 440267686 407317106 613592538 108622267 505817123 90015934 860277736 482567363 574143623 784460124 843439694 132134371 367481729 444456702 708560465 112760582 815419547 313220387 555241603 815816723 880261996 388551214 512776466 498199647 758481719 378464348 380496928 887728309 945260719 392358389 720659673 458318295 599419097 226933586 828156304 722603539 802611867 904373885 985439340 415714145 972651614 255496063 486373708 268323795 313722859 67471313 540726164 257924877 495872817 833102939 838354528 575146116 673417279 572761792 721467643 25879604 231117711 780173243 813682862 409428987 526284993 870544704 923346221 206755261 211943167 676331981 793504111 657886910 858561751 16257676 989873539 260280632 392560172 149054972 757248822 99942643 669984106 232395405 502350356 926598764 958082087 931761250 976190655 223743275 687740880 539480811 840932174 813036053 912529027 60381053 517017357 446662290 553745756 995106970 996871025 722627068 815412045 44402272 884789919 729286984 942535836 515085123 886246329 27170615 889194162 563685368 982887042 778909046 858545664 954853876 980405396 849323136 936936629 678785107 768736069 128169389 143607492 523346399 621949375 586840653 774513705 493719180 745713657 688527479 790536982 443808853 575734297 242773377 408829905 782105147 990041419 862270995 990556295 126177520 993267871 774075119 886788486 8553982 162260414 496931211 898723264 271131275 840586422 606105160 766112579 445193719 604058154 873275732 976746528 244461392 924572699 670677315 990842399 931235020 991817408 30917868 44663457 255694560 316829098 714542627 862119100 802628791 866088547 437321957 709136560 763589627 864081689 987007980 990657079 279263926 556902364 668619459 742211918 259697779 408624193 191942565 854107382 259835315 406302913 247505298 563683742 180014776 696803511 245682836 691076442 657735940 793308117 675484618 858357540 405357878 810621460 655393367 784932410 356004393 568090735 588246689 728640418 247721182 915040936 792117176 954262535 150899 275568888 684510288 789018655 493602007 881232378 680677212 971991703 638931735 639617755 39874096 618142594 862004590 968533857 601915899 633003178 428350720 818474646 93636512 672734444 158932124 305859816 869368278 923342575 725378299 868437692 181553925 443805266 338465610 665391897 712232610 834453543 856095818 947676870 739094978 862401945 25222329 753353691 820990963 948239478 907538146 992449467 120272732 847445084 608435466 956475322 631796504 678751890 303149296 648882004 746600149 776440345 634458029 966090708 240687849 273488611 739780110 770270692 125200472 489357155 479094356 975472927 151694109 271579470 856353353 891415353 841623904 884181565 327065709 658141889 943050913 988135064 252897766 611512267 477570224 981517773 726799990 826174688 94460785 284297193 476388584 656594249 172607384 673002647 729751386 803582524 107312116 234991367 143795358 782664169 95211520 974859088 306176622 506498901 683286713 862550759 312337809 636961856 362541271 541480154 208683562 877879649 787018740 883931857 745820156 997124525 416541069 564396874 954740297 958312493 962938107 988218059 18743068 894042995 691456188 797637154 601562972 961614196 825007650 837319777 780477241 880280245 205038715 617766229 501772812 604323244 923537581 934113618 154941143 498521278 420907095 891115363 111355967 205676227 478306636 872410485 360342216 452182132 673515680 859600631 356365180 691159630 541891632 986102172 903367863 979881033 433744225 893966302 238008266 959817118 774883680 903594360 484302792 741651772 894502427 894673356 861669489 891432234 899228268 954405480 519952209 742058886 263096386 411405444 974261485 980840019 707390045 725987314 343930332 585925480 99002770 961523125 34911851 675940435 21635716 422609480 745127662 865864273 639247606 969122502 636363309 783404465 477347725 599037197 977958446 994932083 81629755 622489335 831163687 953982636 987640184 989493790 901598292 981943844 261881110 717219479 878335986 978995723 370470143 857719060 64067948 427645094 791488104 894950468 705099139 766243560 817204093 823487358 76717825 694259701 433364744 879659139 690004741 890303369 392863560 630320185 27427904 562142831 923203607 968628697 907228499 957746117 418223047 735879853 446441976 584646016 617639150 789256521 884217366 908509247 242063832 623410025 4207948 37656066 184739239 231114890 999446246 999572124 408419571 633022267 541952519 960458421 327994102 965680032 329583880 504971733 599998858 973810407 137933790 565564242 116583574 721117238 125418474 954779703 142426828 838092113 529152068 808617982 319148082 879734678 973158579 985662279 334189238 598668526 478395211 816943102 761229426 954620975 708264166 855903859 551410880 938195970 383809864 418213952 552909120 584625794 849864006 851231594 119783615 188883486 459381734 778420874 208699010 861972205 115458968 991423414 574069746 610300026 505324171 868808116 178250663 495509777 365291708 850296508 926748433 998226670 652482494 666914456 18063810 546849687 791228426 834341198 885352904 896550242 64886585 812913686 401796854 887402653 405752960 824032901 21025237 117323822 96895201 233949472 713955260 761332589 646296939 755141153 198979448 220594137 437972419 938957347 167376634 293286516 374218002 907190564 445923041 509944357 954068964 991853889 568748636 665006141 535085305 609971285 257834979 985677882 971033152 971275960 137462801 677900110 201394747 824298953 577676062 664653464 374799188 771921734 126089884 200274971 582991910 619550771 150671034 228874311 111809086 862525589 611016870 827838953 98288966 222363895 417861046 811946267 199578165 881936276 788598919 966640528 613585242 860554554 72940089 376954907 899474627 998938506 221110774 644806907 260247926 474324779 906474822 930511777 485522217 923938905 567511160 665844314 184683870 594279298 343948464 661079431 837053501 945642415 23795466 224059502 537716886 714969693 848883147 980966668 375535551 667926065 785341319 935885524 267701277 818164878 803457159 854777062 917309460 938946811 161688059 689015030 186424349 450447267 693102949 696548743 580060091 934306279 171962948 318462875 488576190 819028626 347076074 457763706 740608819 933350827 59803207 932796568 515865834 929263368 95490269 171094240 734778150 973312376 584319773 605683848 645869758 862477153 489316670 960281665 548919727 962916712 155121971 739721510 884767782 975286696 831439222 975347103 358769678 590759904 111214990 133012283 768930446 815931227 835568723 961384645 952717368 958394657 89352046 144098882 61193391 559760534 494668772 524191284 555066635 561196475 585142683 768932970 807680957 823557249 587134311 993697171 541624739 709335218 167578099 356338115 199260310 771687793 586336720 814087873 351635734 862744334 345275894 390423925 966610253 989134820 136885931 631064865 856604121 884257236 807764196 990980008 322070153 401926499 240317112 922750204 826785056 954642745 765445411 984072834 457663975 710473600 398729753 944198687 90218149 698069223 168988906 412178512 592085986 737421007 42096251 512145564 7893901 83436684 879676296 941204687 871198725 902015332 579646611 860637342 717427841 763595051 790225509 982661034 5762870 9359663 568220245 971599248 999448904 999941995 915620446 947000809 14114364 863594631 632553877 959761380 810355555 923767908 659680770 804620277 695384162 818422798 159761278 891731264 515962617 595927708 606456301 645783981 403480259 892763840 276255110 452552769 714625674 898636001 839489124 897028873 423253230 650706789 604726600 977606740 901347080 955655031 569210888 730162399 216387402 276280424 967509697 979311085 915750130 948068802 4558553 830287404 680263499 906317351 311970833 439971709 775975328 890136711 877777003 968282224 817592978 884378055 588788390 734719912 779049836 784673959 515666144 958138408 804450552 954734773 794363162 993359244 62696661 676145383 372666860 523651752 698792517 760654628 185592323 755695132 317598730 453739256 790702670 966076439 429507610 771099993 5728893 703321506 898070490 903070660 894848334 934589695 759183263 867805170 462863111 765514637 791610788 827321771 580946295 646365564 272530247 349328304 987823076 994928349 288895883 799975809 576184250 598011012 89016075 165647928 871221660 958556857 369314166 550927947 985021898 986903543 713146201 932012626 630702939 648110920 697560816 784963584 32981188 624798722 717285907 982726523 682833735 898855577 92421520 680018570 70947710 120759077 675784805 778817761 420926928 618664836 290050992 940233259 403775437 559665061 553441020 682877583 552120019 581301743 101098660 777470787 740866064 826198333 859661642 974725566 747063245 982791142 821433549 836001341 825567949 877760203 286534388 926203947 961745505 996445457 50500978 649371873 14911141 587111999 54002674 795366171 467338666 643202094 616473733 908757923 469834317 944439646 396772864 805906008 56584695 450399139 186519791 892839429 743384087 875274422 401150767 777230662 218380281 728874273 986628945 988214546 112380474 375648647 453687428 775588328 110915924 663486933 79364863 95691601 466766146 904460253 201907702 681381571 555380370 912588998 876515468 987275416 726023336 917045902 677393705 858422128 412486127 610394843 59286085 142048892 589942365 860695707 803213592 889277700 856840861 868373015 669717915 996400365 239110830 408570494 182932357 891197577 398219842 953155598 849892282 876329796 537878456 997702907 305600239 919764923 882650115 956653510 40326865 41459063 781848587 948092120 793950984 924614281 860037742 964326587 828624595 890380894 98352348 568617686 692653985 722543475 397796871 661865258 767474213 837005511 165557825 636434605 721791068 724752752 382994453 535093751 637593668 856801315 389818809 830036179 806195242 901741655 727144710 851349075 826771339 879633969 548502721 717512331 241207909 297350548 40054824 890689733 536727924 790668230 703578255 964289565 553035965 911667002 230882869 811752207 454962513 550995125 475388441 895836707 134462340 341098538 931363676 975452667 656619783 988817456 923186531 986989415 253798529 708222549 922856662 936667343 298641343 746416844 264260103 289184927 107705108 415873019 667089695 780326062 608544314 906218597 66943182 441245955 283464346 613228721 455167895 482415864 317696163 931542844 990721165 998878187 471452908 992136794 418013593 449860192 126656714 554078642 951544937 969094442 688768268 734138079 157507328 808373714 851473339 915992956 62643244 965729624 621335496 689047638 475621237 867854738 627312720 651727036 778865953 975150998 148238493 993377703 806028138 923132707 185669492 276255775 795191250 924639637 660580337 726439472 782783414 976839688 987172725 995321616 867326387 898575894 690877917 829283600 832770190 929948355 549065164 725567397 998606090 999598345 944647479 949659492 558471322 786468714 631288917 951402716 209432066 697264515 172925454 611758456 146363168 565773256 302107494 888568254 813081681 869915673 392605106 623058482 386871846 822266600 421453439 451318865 574390798 839537000 534309695 693982463 256241073 917857833 818665699 836532742 572026901 846450014 47734121 774877586 72425877 519691242 70708422 171209712 520280708 879676802 681069826 941513371 523530824 831214122 10502027 820044949 362586347 718881655 45954504 825046255 1469723 729622198 195754770 877342860 457254720 923436730 266546025 414689192 96636006 113975376 946203207 969454519 867004576 982487957 643850683 962524699 200672504 864844074 141999749 822345013 859754372 969815639 190398124 567370749 803222524 904663901 52570651 718417863 154195374 659556804 128873991 270490531 324524520 610650501 41955394 458345607 899326705 945965054 882936978 931929530 314888788 464942218 87289331 249450558 965759049 966066041 741736405 755891043 806321200 872251392 376916863 516613417 212472209 236919100 524752656 862452298 952351407 963152457 411472297 732428701 108602844 175767674 187046929 746251540 445599784 960561327 167297461 329935446 26305358 29225895 573996386 882900769 311231764 565916299 184097112 771256937 898242406 986476831 36762946 105568607 739247418 976417943 311097329 393422311 255502964 763777359 624185459 668405282 518417950 724949287 318103977 768078337 769740963 963544933 3409309 535669067 571255176 844801691 209080810 875025728 295618612 673833152 391143088 956825800 286192538 358548962 993425934 995831011 311429266 959814155 326154802 594479803 264970627 417971397 360585118 731541136 143767411 291418424 710491712 990883001 940325490 977940663 787840738 927626112 211027674 391723790 338891325 670776986 829709764 905703466 490132927 653500321 97012967 949063879 73521441 962376335 366384913 646170496 297532583 622205941 369839467 944256820 405973538 669659085 576925874 702410341 673928137 766647621 139491633 682949412 974596345 986021102 879463854 898644468 984241381 985313822 137737141 516197311 586457711 670391689 822084924 953497150 354833320 663572916 911122920 956460840 966661784 998117872 566600640 701443854 846514184 975784558 451622821 582583062 218824303 689942380 532427037 539428502 302109929 826093314 405626951 710554927 759217998 762435190 304452060 659822997 495072757 952249594 621983249 657411353 324932288 734089490 410226954 644864048 327941315 649992568 947042225 964920390 558418578 799288777 415829522 436559644 985249728 994726810 118648498 953794324 542943835 870338898 269534657 270252478 666346585 680428017 288425044 721074921 548579282 575452495 931404134 938737574 721451341 791436621 143333143 341870204 150569760 435560937 740641334 868805101 836340225 848159841 757229868 825346951 678258129 718707694 383043869 918519124 867444388 939737117 896903851 966204751 521372461 930057245 348704935 873950928 848376127 906789039 400060225 408383721 644882773 750968827 345415962 629388544 727841321 869148528 515951789 946787568 600875936 701678349 665837365 724328624 692168652 716057610 366543691 920628187 879211963 963252488 356626521 981439401 188636739 515164869 171051630 508656672 651401788 923142943 525766240 696222843 76170829 615162621 75189228 252644584 186982137 708545016 18569692 174427422 367164714 458491087 604247242 650204914 234152902 792789764 176917753 252516321 953174868 990827509 448158395 753867391 55843005 647420907 981592218 998364676 639472470 742305822 552052798 842284310 763869530 941205817 233938797 839193854 289889596 656184680 631672360 662672011 83014012 594674710 394354589 473743898 868781184 928074559 206822748 356073493 598133879 892909519 596400060 804186284 497601585 707874496 443650039 987721002 751958237 803093543 58263922 714995238 177087213 672413709 237800020 387661799 741823512 845709289 366833545 431296045 752457277 958565339 790597107 964444080 459273265 652227986 691002988 817555052 138929523 529516852 425134120 583568397 268914318 774502914 79892093 866535194 586362508 691645114 574820476 919290041 636125627 658496763 410279412 783832398 640402012 646032899 11625160 950398883 814209649 928279795 855379789 879763254 794102244 822279709 668227128 817145047 214853489 583521521 469022571 560521126 237795690 682197621 853281406 902241909 591601896 737279174 494164190 978407154 503472690 754676325 545398036 994045534 319013017 680750414 270696610 785187189 392113524 497714474 833659877 916051179 95294409 452199568 603471725 942955154 158619506 702521960 871449887 913327564 259332048 722387406 107767442 172759948 859867110 985557737 297377229 949624398 967388429 986863341 12709567 940222464 936282598 941236512 447129163 622935526 372914098 705064508 603856245 737312902 833823957 900552857 825782118 957063846 407570207 921284176 78570938 206726938 240024684 997288715 540780926 645244429 436411278 845480790 345717854 835103387 101032879 237426057 201674544 387782307 500429703 947917150 294713556 912915537 739950906 948550298 614301656 948938657 702077496 732965352 741249362 952087247 833291693 983291083 208392316 344591644 62366232 783373933 897193280 957629964 176292418 956375039 688989319 962864200 635181468 697541671 537940587 695113551 361527556 391571849 912162687 987261117 692907773 739678173 807113252 810108217 341630501 919272200 744992353 806365381 144202658 472290071 240656802 437421666 573550957 925965335 284601390 817177351 54697629 212305644 462115108 863549817 428013910 649917825 424280962 830841222 671769167 832694383 260773039 345685113 404451965 546669957 106999751 614399117 358541720 573556188 838244478 924046842 868372829 996312723 561988927 616180517 746255728 781274922 502675021 676309575 901734770 979245923 34016329 764369818 812865819 980878591 973188510 975383135 84166971 823666205 330197630 679398371 386180908 662748532 843827604 906976682 203035531 435907924 628927750 838759815 295873427 329941076 621587672 895715789 660100744 941956280 153540748 730652677 997953648 998368773 994484568 997380390 39809156 69365590 608435036 712239538 154819166 298992727 933030645 973958940 55107992 738903217 831476073 854343733 824968711 998124565 661599638 742766116 648976832 879244457 128847172 905696169 304036162 609476324 30032386 100988081 277855240 534251523 540585230 580939048 677584881 754233378 444221832 496901096 999477330 999968789 618412046 701967637 77498972 342346694 875231519 901901959 523801910 790406376 703756221 859719355 579404462 749364274 78638517 501506166 757541432 988199101 103420075 504396449 626537992 966381682 547807545 765835245 251358858 384338238 312573797 879371637 956274977 987674358 519491918 905525606 447501287 554527993 260545560 981232636 69763854 363887124 21508400 760921937 975938593 987179608 519200670 911312339 444326819 543208717 515783114 738146449 11430146 631233657 577319814 580266618 26680609 43469991 737988285 755465913 605653125 925036425 99466467 981278470 264812111 944126801 447945488 887677629 106660874 487500348 937569863 998287094 34913783 124422035 623197857 857670880 476672783 550366341 982911343 984382308 285438824 486280732 247938843 341196277 370753436 402546315 50395435 673183925 551891908 774983027 575766593 759111712 108143458 454392927 147958796 957121131 241919776 777262723 768135360 995487213 683822144 776041124 985587076 998549156 983154008 993149846 298425638 698816348 938997912 943837120 35795522 308232506 658026422 982526946 302647306 447936637 586508020 898835972 918744324 930463851 327025613 680645647 325403616 674546894 359947725 951526359 107201343 418521043 203805966 274824829 777517724 856551778 825842688 946041765 147416982 768576783 654587849 724794883 8207520 900448063 224541657 468834186 810266563 820144736 377621553 597156910 530135488 807942887 72786616 321342032 772440178 956856032 651572572 752593017 677464363 684131574 32936918 266773827 19284530 782757308 528125488 930378564 927377022 970753515 907423114 965189578 665476935 682614663 11260939 334325116 311692698 961145582 347823769 742276717 405533073 442673548 327466889 341121578 920834366 987696661 850119425 992190102 179638622 594992273 231102845 587169496 915430178 917875789 351587568 825482381 101546544 188146215 124502402 950976910 112901937 218603374 443826439 857428214 611614227 634498579 15082148 243755816 158670457 207835418 483336150 969760191 818406143 827902949 915171564 952627651 386406335 463775049 546024022 577801271 684529924 841694468 254283871 713276386 429819777 828582220 785988816 861476559 88810449 771147891 672247416 827979372 448060394 953122465 788882648 823577311 484657970 614967870 950284773 976901775 285803163 702880174 699817889 794071818 998644234 999976332 404425904 640101241 729240105 878629582 564697642 865123765 362743611 417988579 896666601 940026942 362096616 907626792 648664423 935468614 498256101 676325917 522824814 924136349 582853523 679439903 79978962 739736077 101522454 523775247 831443873 908317242 691523473 952376474 961306079 987450058 550112267 652867735 970731275 998084709 88626 796236770 653378290 890482772 999237451 999380687 600862782 970419268 838877545 842354734 430237772 609383142 183157492 622665089 463129492 903160729 247665250 745748478 26274173 426969107 936251415 998421981 499557631 950117218 391693049 594198039 644042701 742956849 748657005 770339930 656013653 809268684 286125004 759797472 354614605 419316179 534547669 977779361 805715177 856219046 711575480 999354454 195873929 298822160 420927962 495686134 920674778 976638564 697707766 978762221 467080569 677799038 985121088 995401030 472161268 814741206 89256968 718148693 479122405 759268901 553899093 998959846 276085671 622397632 731366291 756137336 209383599 801756996 628263295 769865759 23426115 681220574 588782052 853262069 498239010 519079398 882442270 979537950 846843848 857738784 221340536 724841935 948866042 989057975 224003540 843000608 960162676 981291600 680268745 994496804 862519582 892930783 595598560 879864532 964116718 976163135 368309452 386752512 326865334 880401043 514026689 970914615 391079150 858520065 423806654 660577300 478679200 773589379 561833868 789565647 5885271 460815852 839634818 890365895 681672910 706946994 130731375 193503462 898458105 950209018 527630506 857420889 863835826 959454835 586408568 696819245 622517015 820852457 370922388 453891908 840501820 842809790 211238802 909219089 395077249 588133815 447125239 840841454 834707373 937039033 825843124 989925130 703281237 864819713 897005855 994217696 503833781 984119087 845836253 905983830 539880359 680184544 32337850 907033997 655423890 711677426 402164803 672848199 669491873 826689420 862816448 909150998 399855777 702188663 377546599 601291661 891664262 953846071 277856761 426439569 908957819 980375081 334725422 532620594 934601321 988405945 279129816 652959786 469501612 737975231 295020798 372435190 789990416 889593196 17790630 618066880 718452089 993750608 73058132 479848648 621891489 823012218 345160978 831892432 268414980 795450946 185835454 228840911 396786844 736525901 688654613 842266715 395086275 425676107 578726238 868539669 552428542 700027807 888450099 993140234 983705566 999538864 491004642 587546147 937167198 978828776 425617069 692828228 163686564 766844938 924785263 988617762 228700060 435853443 740167337 970429570 876735910 938680715 934822276 947198965 685242941 920252461 345855788 422811531 200529222 757015807 974762693 975840459 103347425 325113137 144843926 807176238 392308279 958792527 219270523 599124584 883318799 956881409 293516482 355827850 627721368 783380481 597649750 701733504 392602074 550236515 619533763 932170892 672149617 681637059 668139377 766952910 753888955 772942755 759426739 958108423 474067572 959050883 59235631 182823002 171623200 704491086 979610168 979868678 855868218 963290576 145855635 619541456 773734795 980140564 822158393 914890850 576978448 908285074 761392025 972456833 329219696 694796723 836002010 914723871 492973380 541119811 713827453 719360910 518459483 701140372 686191096 781029897 333369589 415384367 411519914 415228163 908393923 950833643 537263660 913458065 24098491 813579880 572329073 614899210 849275202 934247662 276625532 509475066 381650032 559063924 361163891 646142291 902678309 940886634 180699624 665689657 913326522 963174502 195138980 581372354 28791625 997403001 852069393 999308778 943712294 954081092 446110398 987629519 225306284 822657472 69270455 789246470 35846308 688355373 887440939 959889332 924045794 975670466 331734016 374531364 809629003 944143494 151131803 367952652 476483175 768990194 628232980 757087916 822207368 929727120 832640634 966622292 51927927 84542091 217022981 987192999 829245113 974260128 480684361 580399771 881544584 966802771 210432124 439731383 566932989 617882372 453263929 960437383 868707110 900748093 874075672 960358507 413942974 694994052 882078423 983669207 950741695 987499490 553140061 674751404 329740415 757366909 149759974 838752627 72801261 401554181 137813700 539514512 407912195 770871500 408344871 856664539 622605804 696735343 629810139 750597264 484547522 671040333 482471738 507649677 780500837 875703778 369336750 583171428 874810160 929402417 433832572 543372404 663597284 859326640 77292478 396470516 158066665 536512415 507577678 937521548 612526355 983082475 788798561 832614350 656461313 904694664 206440700 839040412 383393456 728621190 465547294 947551028 547718652 619435117 984740540 994104106 552458449 570222355 916290188 935686289 361432295 996613449 833282078 965495626 219784523 664746525 389245397 561509330 787855174 953976534 890790619 969744418 956505514 981427905 150187206 740065319 953059108 954481080 910124485 975463873 759861925 916079646 96572229 783073799 840022828 895229861 615571456 677761291 9381417 871576006 313944179 797390081 799348063 871526349 600629267 876555569 521224447 813357715 435938705 444172226 128686046 423399472 185588609 524380378 198840950 370442596 214027649 652025533 748397478 936479707 251582362 481103582 281647379 691621999 462253520 761485861 481107072 537902382 617024662 748845245 45641703 860610428 671106643 977256402 768996875 863573782 722169022 830809128 433381582 917353384 10599802 647062226 472478473 732362016 40900899 801788005 782004773 871606719 923725158 957871017 272269132 923553446 203526410 478712632 514085762 837554965 124749177 573915982 720587038 943106634 583045485 752267333 168630215 925164004 443696799 983402712 804428654 874712176 86714667 545078990 340881614 690623964 948241885 998815334 444112524 568092097 289182434 412643261 45147917 172966600 526497231 967003066 982872697 988221954 264675763 568822595 4028092 127455761 35254927 88498521 184665632 516721550 545008417 990810173 213813088 665238451 417652726 954275924 29365624 662838170 120576129 842821107 142399559 730480859 157602119 834290329 55782546 147112767 896555526 995629331 991428975 999667934 879054715 918989253 506575721 570455932 374933462 890608093 21185890 167441752 63354644 79148377 516144192 884735642 871022231 993108181 895150929 941148426 142666760 143509135 654580199 681431146 581077066 655172722 617175777 975632086 319585359 390412112 269620638 402024295 585592649 635866334 250573049 549198569 452959741 558196983 741178704 802378857 488022649 531532619 783326224 975883133 826833262 998872756 360212796 989550812 604156007 740686199 338819825 576372977 132469456 449475740 536468663 738309094 491357689 748348696 978892738 992133530 19352410 526129983 297056579 480397141 649525257 823107083 386966030 495526452 175172803 246447865 306526191 816280677 419231524 519396897 195536949 851995042 121151711 816381844 443219589 928664054 140186680 775238610 765993140 830779245 512700487 751382513 41891078 556104537 882467666 986793496 162398083 442210766 11661363 649278124 71324120 79379153 82048113 543192780 23384496 994925394 417941607 707212617 782357742 966023571 617346471 670976057 564191427 733715501 204215105 633252078 818657833 993200327 208096655 745468523 500199563 616267089 727514213 759626748 309506755 450388424 214558267 932066384 568859137 785318623 397797252 834389233 605625965 820880631 603349283 886334640 467288863 635795617 858056995 891614659 513907297 521673072 394497427 624036666 312003649 383384772 234400993 887693030 491539842 542699511 64183664 753818894 409256207 980534478 712474320 831302930 408214025 880856878 216977445 673077134 697290846 742701412 930141810 936907096 895490254 915276542 75418948 478078206 978769881 990092918 369002154 461373752 638434854 908980107 728290486 876101349 480437532 481437893 814128685 940619064 467480570 577498565 48834648 825185261 864786429 935319095 962045038 964747792 937199767 969882164 742623556 875462623 807921189 872433424 116093794 428018465 274050687 378884950 803229347 825969328 610271232 757889070 764415147 956158327 880680501 934310104 292087395 703856035 852210728 973668957 865012646 915083668 397447497 855663891 815804369 895060590 312220187 380321279 537475744 565695724 736576641 998401356 228528190 572605872 828334315 890094292 906317009 987804962 897244549 981534165 244666131 825149983 478532840 505290038 30296949 503629942 466125818 735471929 983586401 999196840 174119684 794440294 680945984 697278193 707996562 873692951 391909237 646673889 919516954 995977249 428439597 900567685 72380746 380261518 63979210 659281463 738857557 885235419 411464238 599761067 23689140 665653401 277373754 838476273 13743976 566610730 308291377 612781265 500315266 666064622 28669042 584365828 646438692 685207763 658438277 671429453 690003908 835589659 982159134 990701524 141310291 414269352 180460322 322968819 30440266 237678208 407890164 888371516 588624677 710051156 662847014 813943219 223560865 766949807 148505036 669849025 902961237 965011460 97092655 219795330 458586947 738087588 939544549 974090965 326285760 879449112 701612253 900006028 281965320 553984009 749896949 841615182 21318472 48380205 901352207 920262333 682306391 822356333 319870408 668021320 886734792 992461345 270206603 405836624 100607335 220793741 279751982 543193492 984740452 984905123 520638474 551292994 419698504 642448595 910407282 974423544 887650554 932012314 134881785 537168142 504004992 885317872 139773977 344069773 369144814 681342363 850092562 919945044 191970998 740395141 546051672 709367952 498064325 705447021 259871142 776473859 535488311 825229079 308087322 620606026 550697089 853205659 835504322 953481481 674649053 826172353 248203685 592698695 296412414 419416651 342330865 900324248 267706774 681292825 924871312 997825807 644750392 714562619 598751979 951263268 860635369 964162733 177278544 250699384 720115876 786512602 301723071 313703402 187472064 742731332 328259082 918384650 924056815 975412992 783634509 917903132 70878225 227235853 992799089 994665750 728051813 891126022 445374535 633165819 343769837 386914716 226259830 283652092 863631081 929773473 207247301 475605713 46928973 279937531 375754623 848763947 40104052 564681179 547078483 675036376 344453499 481225491 476195124 911294561 494414767 790421616 886962604 896929593 407343171 588430568 571815079 995248426 342008773 841552944 822734583 894289663 406601242 415355000 730945649 778105654 159713860 869573429 952722923 977380179 370732647 822151086 653969911 725011903 587255208 887881778 662046121 795293950 951254069 970669356 602290912 709589645 692814104 953542467 123250456 842335160 977489411 990010272 276764186 712488365 354516720 963581014 643229411 684872120 1877770 46123666 264662797 438737182 704934007 777473505 671566341 686834340 822101341 998015405 744971818 830785083 195734063 209485687 428944821 824070471 339357247 681422696 656568475 935331256 882180907 965269724 431905244 632979383 743274282 948809352 463628002 477748828 414166691 414595309 348787552 703150185 339867457 856950359 701389094 894457525 625141308 956688719 709237043 931583523 959277896 967623434 519208525 935441059 747373164 861165536 455699461 537310557 969023629 983469714 459660814 965281883 368292238 812798552 173889060 461548005 655836230 883878057 2950607 758151918 740631246 824447877 839575506 888031271 143997568 671017892 642022493 769293701 957924624 986355823 747433813 813223364 440622838 738003982 932014093 935522121 993127149 997058525 668716096 681559823 318537752 868364995 415248351 895911071 674137765 679304743 711612895 915157721 643203521 907043618 811247711 966798598 948584735 979684304 428206288 697742179 20094341 721159904 728789715 920524117 951813613 969877900 798872613 813818546 863032629 884688380 702334119 818478757 74595719 278428016 353444463 866329209 140027974 823051513 677294965 766420373 925613370 959759892 10582621 94120985 11938168 246698997 725900520 896122260 503665058 533019335 947586780 998590995 138155380 466835666 64143306 686307586 668840876 843524767 647843814 887830396 934045876 996959673 173701042 635965336 359984442 982133475 80473440 86976177 599711561 668856341 316499522 675961228 96833887 241264692 794098702 881281714 463026627 728962592 897715340 986894171 698083382 980085236 197647159 807285322 85842293 156597192 917090011 965253024 305450183 832919703 40249718 761564890 960625914 971586622 490219042 884673398 626369424 809779923 291674490 427071030 32017299 414927114 799030940 965175945 224607169 583168539 792490993 899265376 406577106 830020694 291886365 615457208 744183984 931628229 868871468 879780989 348244129 408046393 514963384 714181712 906278472 913942096 205718390 597924680 190310823 474073913 729349160 986995694 545729247 754088802 40185272 269383520 860789463 900791690 434062356 657609723 239867671 859609138 83064162 562443676 970101209 996103896 425645106 968452884 654230546 775479224 83853726 298789130 619473258 780870424 557245456 562206251 601749497 637182689 760883822 877348299 706134726 947149012 164433675 226647778 826497694 845534304 462533584 855410320 437990467 509093290 534203748 667376271 817839509 848892220 404805155 443066111 151673162 592700596 989455747 997942995 875499816 979416355 182966522 245040060 451296445 711075433 401593174 737062982 370356649 600361502 874183869 989896224 882679416 896151926 283684747 974090347 467712957 801573984 952057524 976455660 296335205 746646141 553854395 578907680 486181639 861186008 164637925 414640435 480663214 795001645 353021232 742266161 601787257 827112646 365316026 458422983 61163439 432237002 247713161 990550106 703703486 706157924 385741817 517548606 109225551 730371151 669696800 962045054 252915844 991299668 473724723 586949656 96066399 413613065 875327109 906482013 345366889 753244373 320919400 765532329 581453426 780959428 555985714 904040601 841874262 878943628 652142802 804404267 396918272 839470656 501515634 978752627 249456828 651613960 885744147 921821697 564523671 852943065 657817148 934091885 840561665 855103301 237763741 602887960 739676225 970704893 205585367 690907489 190239038 592847062 839867929 859273963 234635215 484139848 247590957 546766891 845324781 929750617 421835134 544697665 345770550 653765520 933241646 951094001 840497753 968413750 493279783 995710846 466480146 875395693 916027337 935643630 806181541 962012341 822074421 854868694 20104641 72882101 387541418 534556519 296863813 614086779 77927349 790700668 230746520 816137224 193408288 594216824 689666710 793837172 868329929 938523243 998201912 998506645 755313843 818652680 660900952 963629829 229330634 444712262 727544922 784628120 451855387 881739748 923718540 958190581 853527906 985307429 196300552 552170249 45332184 875231588 323350275 792397138 205619684 652967262 542713899 863556519 769208837 812255192 650472925 809728294 869510866 989363673 713318078 842110441 991284089 993739143 530006415 823234371 200173344 359404501 128724783 723759564 413876764 965021564 792510783 967252531 380388500 996020505 152192258 562633262 868116413 975714766 766172576 937867420 838200003 936683783 126596806 531224980 569612441 580368897 315132846 799331206 291075495 682081443 864160311 903384702 919397211 970595115 741034973 842427805 893579920 996146909 323922556 422704433 475959914 963946000 379189394 661867866 367090048 766270857 265475531 684439060 712716691 969862328 488952170 792537114 389408822 526329052 956702208 977206622 478999489 705783523 763503893 780056879 481947792 525081594 355780279 378258127 990276641 993566063 315897264 874682446 443021988 959881413 783517666 830114996 7409431 639600163 497252022 501895896 676546403 802880631 229506978 708095870 875675331 915313634 965287405 987075402 948803463 963748024 945298818 998022068 817556253 997597488 288582567 559026184 635274698 968557364 446377749 485143276 696335711 762930315 896537221 931256912 80794086 813965861 999618979 999670815 674142782 743036319 911342184 946104715 41623556 246342113 866284816 948623186 142145843 399227292 310999801 427682292 726197689 842712754 856320027 966803007 708750384 804779993 560439677 829347577 979367229 993576273 21027665 676181995 320405741 441972577 293900030 500437182 959116855 983618024 996277876 996959488 67696024 469571535 782997803 887680612 943257678 988827216 787422685 972246352 871102300 939651711 463824757 695605713 218214771 286176980 785413213 978314124 422092186 973431917 586438449 996163808 460065267 678476101 319202719 548221378 494837326 585343004 981033648 993041907 210939386 720123534 230533571 488003804 394408179 779054975 721350082 766057272 563004744 978273302 406947966 495669281 789628097 998312291 953814459 979437344 720635651 837202588 700508472 884159355 992814910 996430502 740108470 765532769 250960334 256426257 140213526 422849370 657415352 864846986 914726146 998870622 898274237 936122507 732768958 857574995 498272909 812463808 45162675 49065717 195307669 797032933 788879171 932217635 764559530 922842657 363899813 634491526 21304588 283432600 221941894 532850082 594771289 867969139 384946553 548067101 485266743 576018081 258773920 404526213 768511712 921093292 782588093 838732001 10691921 195672134 727225705 969448060 550732491 639368472 838342850 851990463 430737808 612567316 939429831 952509484 394958098 450526121 327169666 839086334 299880081 722835829 185124818 619608573 810089530 866239294 319894476 352456047 143104974 578194741 217972483 375324105 324167352 406036229 51995574 590018540 461599786 806905290 721409934 853331399 402333627 681958670 191872221 811465848 473844071 753049184 890057814 985990570 462014688 848375065 222700129 430897448 265543019 864015501 535692987 834324591 380349636 525352204 588178916 591364557 821843020 845039234 392829416 840107217 414904919 919933772 590320148 754988591 225454825 282090609 912329536 985576103 787879679 814990809 232658895 276233304 285918255 563947713 566571828 636007721 118238214 554607917 988762977 994424395 465472531 741996912 605441609 918582173 548913 529404613 195733578 649104491 548749960 965368766 813703359 910044128 532982089 767722865 783956155 942442419 814751509 823960218 49885450 439295621 456689395 476911542 838977583 908193095 135554392 373894153 434826164 732893608 156027520 994180456 179812826 884932810 621639520 820230600 22894607 675807904 591092683 832242480 35154019 405838783 875711340 956929830 507520746 801258699 484610222 935144587 122866609 243511758 626821414 992946069 687451554 936213803 319814539 695107590 627411116 733524044 803040311 921377172 507965074 558055896 414724928 932575749 861836765 984665443 883327116 933116550 303660368 820230127 871671590 923563609 266683486 835248740 622961071 892223260 811181317 870891362 88039164 583400925 255654500 935254646 278350914 819041089 650186659 903476401 118001327 814799461 942178609 987110560 56574672 305994334 213369813 290762290 894397885 916498815 691116947 712549619 256732234 725739203 902881207 915988640 86018363 726630933 636000603 660286962 559855969 649817071 176586646 673037338 940572509 995872891 979857910 987105105 23323823 119056644 748815163 936696365 490898176 782413675 87083873 351859946 820251845 850761515 402809831 685935119 694653365 787172353 514335941 576159541 374857022 413876434 40185019 807229748 20777542 142301472 865054817 917970650 680140930 728804036 607973462 854253030 203629619 849716192 466899305 668440648 332803754 422783149 444448618 834185420 672570864 797127397 669489270 842379775 201507712 482882819 619074299 841454335 744318411 750187281 972771893 976983952 296001102 319822373 270558654 383159986 500512591 889675711 288396988 881617848 478474937 694046878 134356605 857437625 216336087 881655934 373426314 757880834 291789616 480687725 330062814 375000605 52701297 243729490 996210589 996358205 414830672 533792907 763684948 816822767 716853556 822362786 927503399 978844000 850322716 882871273 505893485 855946620 300878863 651136536 123347113 942223504 445613000 889153885 915973673 982299105 257432966 366133669 436947165 441975714 99843390 453957213 921301457 957072224 147145577 387269465 73719400 394011825 930251665 930464759 263335663 632261549 390297377 836056810 172824026 616509577 741989849 948579990 724193268 739070480 842317937 925176596 125546259 469965933 341959257 798605633 425163364 956047891 382746228 830101608 269034060 996813575 917643686 938601121 588270306 765803140 100079316 376733949 826850658 972635046 878735029 937000169 832071126 951503981 405133401 442763608 973297614 997367404 479412760 686614680 668446643 994008023 190071119 771867189 988511387 994091729 960915259 984810591 855128805 959967679 151869572 392412707 224413624 699914103 583273035 815101015 481935998 820474994 563965290 962410039 595876381 641664131 786440051 850096991 601335877 937141078 191874065 621535582 427276294 705360820 933148480 934397462 889187846 916617402 235597735 741370077 261918568 814242292 780097024 984921342 333210642 377848030 298458044 827796706 638617865 752481365 8147339 537129979 757196550 870770630 876100837 959607392 887567240 923561157 851571993 870826497 181752400 364008629 799007215 800998861 64104368 596477237 582901661 818186311 610964964 928659604 64895932 279695277 305781086 314329941 96129031 486434522 105284047 165348400 406234991 575388646 259316174 468998186 276881040 902580973 669726998 825554845 251863353 791348142 51088807 912083602 359435348 889770938 888807762 954306999 629009035 756534883 419100901 848507252 270852640 566566427 259908163 847066575 305745638 932442920 972047911 978993234 496518677 534801011 161084764 653067617 813127072 918374366 843974794 960587929 674270411 836021352 105606555 425993715 963323560 968447065 497722265 647144303 128343189 631027798 916757362 942511323 149047393 491264525 738804749 915269684 361662605 755955081 639831597 677355845 292197874 454332382 157707636 880192357 460926541 688601798 66108482 614098758 774927381 919827672 956784322 956878663 666067312 807142877 691723032 833934803 234177876 794098281 121342779 644043688 761697887 831475643 172400824 438592531 48949087 484792242 64834285 868829338 410946819 461136919 217625002 643111316 691798563 748162163 174955780 421126232 675828475 694279061 662943632 744401280 48264001 792680811 577276573 764174502 575579369 799774689 235091897 664973259 979340347 981264472 631402841 714571714 333053687 381448221 801038751 887286644 329712119 642303111 159098401 586566564 348034541 537125797 737173543 975133928 165059057 991480791 123094643 953403037 998816338 999623950 242739023 356078428 674851563 991603838 769503923 924999141 717877663 781120258 354505537 853164123 383366807 797669174 221210162 980851459 90191561 129601793 142558877 942737314 887171157 906348667 483664937 738320780 890502930 897783795 853690974 901881876 81876497 686459684 578883141 632417049 245905324 766750532 14776014 549228628 849806845 888517198 672473494 718712318 417397133 917868022 50279461 823941550 591904510 687111328 670743191 757466929 537689455 660955428 426362385 433120925 881428423 892803422 319975769 675781817 526763180 575555155 250918906 446312367 38225102 667981182 734026616 756890318 356909373 913679244 533413167 937177741 347824191 557498929 396913308 687101083 407930747 650738651 254689464 313860717 378653857 508892739 235893727 470032202 305343688 628662336 82457095 196043380 996948285 998206269 836823085 887149991 436865073 959423963 963387458 964807425 857659872 915942185 871670971 958513918 12306296 194428357 600114542 943850005 550207795 710301672 143386483 487046043 28652509 697317902 791842979 988117464 308792150 778955227 959563722 994215553 168509829 974424694 498330284 787208736 633499007 940149716 359259226 921932457 971489464 984953081 905568145 989075263 762573764 862557818 245375281 268033733 66113354 687106851 466455036 827042593 89761444 507484247 158369674 975842375 446298405 976968515 318140041 968167398 274693317 380249023 65084701 602925424 728002659 802315043 761444142 809560183 455211844 701039078 948404408 963075022 812250630 985842906 228636109 292080368 564946434 777808525 361695410 657853104 435031437 602032624 47436417 663413832 345903864 434119767 145557132 449131914 120888672 169228656 104026783 627232783 815050448 977400029 368163046 699537299 943919942 984801289 151130790 289738349 331200943 365886145 312442126 831155924 626517046 803426131 841229685 941431988 601522688 772081562 674305510 964328261 582008083 983157591 403088915 751359626 940887004 990232638 898021454 993180711 628668095 892984676 238457929 674114248 69529286 396831236 498080384 872089362 887836123 921495967 328823147 616539829 467625221 719459207 445150966 672233998 712260391 950272605 368296133 769865889 73697485 547075386 7777448 99439906 370773687 549102740 492413676 641770616 322395099 495753424 535502385 732721397 774173858 970456568 19091772 659912844 282529259 387697508 958810640 984925929 289684841 299090005 676123099 758422313 641061472 755471971 708883792 848955262 632189848 674882333 965219988 970908236 211502198 964900681 362103678 540359900 643557974 780535015 333224477 858453453 461111580 983636302 300637939 372563476 651460084 937800763 209424608 567111197 928091482 940529171 535222641 598314102 812811390 824038896 449501218 550549138 894146096 998922675 353907806 843494077 833958491 988067608 37947092 667262818 936518797 990957795 646366353 721779430 388730584 669789969 505988568 591909019 36507782 281168429 184236111 281557617 399716411 405886316 262296067 314244789 315232051 916455755 705160286 968779715 506583340 971609150 174171305 568309299 473364692 789608897 64537443 277407913 569574201 834274090 203654847 947713140 601583995 847287811 394562223 578696100 326882336 663653036 263293082 442137184 458278921 574700747 234748834 944283632 213243544 658888990 431296069 572035188 400745837 593171585 349155168 532099603 460144950 724141930 857547976 890366971 814761789 946667555 663938375 747013781 756607912 780835423 224565336 302652206 461338157 906690687 287311572 366653130 254556104 559741248 186828673 853636408 604565018 612112745 576107635 947247918 482872543 495689044 246785356 798587115 590801773 691590552 810170254 818649330 764012154 865020150 810910753 981881326 236912477 649441746 443349670 968147480 368074165 773696241 247438905 256484244 990791527 997428169 277130831 562069069 597175447 637995238 522370709 955879290 900762748 995299966 698957863 996466309 296867454 745356046 803951280 848911840 152034132 495051489 669397749 847275056 493161946 826714739 537330193 642625954 449008440 934714981 169181373 190314559 64516366 260333774 170768112 698116490 58649302 438803590 109986022 966043002 3398914 529219276 794296355 861105534 714151681 913422256 239615020 373085952 886664613 928663754 466646412 980980350 565995647 618315719 92551179 178483349 761018850 934132454 46578909 497082410 386788373 435382384 940011429 975926335 104541995 135517230 4690095 845650579 732452829 814459594 401061175 918887539 511003598 651183862 289578885 377430793 379013641 465069760 581884807 712880169 26949660 433570985 56111073 58787248 687359401 864860329 541833827 600774129 678660725 716825427 558953493 569198363 548920403 773220744 915515851 963830641 273214911 358568261 159799605 489000146 251383521 858387802 512662027 921836908 130495986 329412109 619470150 992353694 966755347 982112629 191830447 927338607 470731216 621680860 891251888 926055174 552433724 941565086 500266014 707320509 903105690 934414969 845536863 872076504 775431521 970728868 282461867 686181578 573277671 733825033 569882788 870565258 454690554 737008079 252886975 676042017 315362292 899351661 641639938 971018360 611087635 867905981 972208066 995908244 513545470 758707088 293337804 863412808 650602888 754303705 693159650 723755308 326974309 687880268 188840275 260425023 752566988 758044281 304447775 669063643 911391922 946782122 129345302 562786777 249567542 551192412 524736406 770851404 469523328 652655215 334535435 877611054 765955757 934842299 420615765 503505457 284285440 343797568 364604374 557615143 107869122 504649602 929056506 991454142 283798308 473478998 281658853 515484309 929394763 985686712 721002507 958611169 288219888 323445322 921204456 942563641 291408407 504580667 200941196 406302338 21081781 875534901 363269053 365593948 255288064 667940984 802634814 897432770 23301234 873489791 721081914 912645089 873903890 924397458 22488738 846948191 292652426 879224782 963432985 974393119 508520240 586386358 457493921 993355524 298116416 408767828 411287300 443405983 833615636 838306393 702328159 934430129 392004509 510979556 684058768 730365858 473522039 686893679 123611573 357566333 133484874 702106315 874239395 918533487 174660328 737283392 378342856 580210376 106127347 721926712 359213034 477541814 137011015 859089655 888059018 971342829 851105983 985399678 661288557 883102994 798276973 970556619 387064183 622365104 387640355 918754300 521836341 814187056 922597209 945336628 855381805 965044486 392704843 863569529 333213932 908398099 856621670 986289566 406441831 608528381 146612686 255965003 959682455 973632834 176223026 184502358 788710524 789190544 464338249 607987375 824812184 990947344 956155987 965530604 758663764 925090840 219030682 482380302 991515297 995650008 442981964 485401684 523970281 948556707 207086887 959939230 304371362 653694234 23668701 475656793 685873076 805868238 514259552 962284954 549247221 889639858 879260661 879567950 552736440 670748598 355526730 640823077 832458240 959020418 725365842 912897643 881025276 938654459 620298179 647130088 736747093 980301617 330576557 555157155 471499229 552715962 973782640 974448775 209526650 703213015 816151122 845577685 530741010 714263238 563591836 673611568 581357275 609733474 555287318 775366746 882080508 905808984 970620838 973005696 889397825 921432263 901391582 992783475 15664721 172331935 261020091 939683833 461644842 734485931 77981509 469389307 194622083 291347486 593687002 720738382 891882552 956418211 216921274 582044107 473004976 845393759 509587878 555688071 168227830 984752962 777614919 891540362 334169315 629184161 647469068 931236321 626959067 791060480 123320490 181357885 560877419 973201393 296007303 724104882 454178534 925111084 683539428 886350703 900775103 976187597 86679736 114125883 843238257 923266272 554780076 964490582 665681675 786181775 897833053 915205443 289305005 948263678 918359964 983867606 259033265 318162735 76587155 778209030 693716052 987312130 178900882 549723099 644873913 795468554 170886575 275683463 571617983 925597265 250306374 857365575 10973121 220905720 384304665 651678059 774095073 853716655 980640469 989241065 792020012 809989701 215980053 935005812 38344056 782288106 806991169 827281082 304885683 388317004 873411252 890992648 270792545 458625531 206483671 501159589 424025950 485043088 744386276 800801978 455221153 946966159 264966472 676075251 795779744 830219467 427661722 791262534 219819835 277765735 878747988 995165172 974058838 988719839 616222735 915760756 793113590 892245841 698472939 774280617 385541413 718645019 384046335 525274793 996626918 999035720 857026011 905079568 153330477 894187652 185310932 461424633 15045853 322908120 934154529 989934157 554281298 652576423 309265236 851375483 628725333 996251627 257110709 472612120 403643228 663091462 51127738 121031358 790607670 937497780 234695023 601504410 670637604 731450448 106887773 460447321 236232849 238359626 672413172 826981803 324065141 836907158 912560296 947482887 963954771 970086912 857025796 898462451 821614547 927085191 707544035 840352476 807820445 832737704 638999289 938120384 789487177 860513069 389585316 611589429 655245865 895560510 285086659 995466989 41854152 749809291 575235889 792122830 357480127 542945020 34656196 428458296 795184392 822666519 113439622 791172120 633834776 691570258 742971474 767808233 173100092 593272158 888592903 943060952 148579134 785546106 161536921 231598144 990194222 992118644 502940732 569302510 793395067 989225140 121992086 326191773 714161010 861389177 831293492 884879542 669402735 887064651 508252142 836136930 264990055 879177711 323675752 998451883 397772160 678702906 198058996 223703940 124663149 850918467 344022965 851590439 553682737 736863865 922337594 929143527 351989519 783724428 548304737 707303852 225591903 769007595 439135630 486811636 30643275 441766985 617422087 851665526 910538757 952714928 764744425 801189558 400769381 884742676 689154929 776310662 10176342 48534058 73912350 357559314 20171578 75526265 722386052 786259358 374286895 573819058 662708248 766989608 202661407 669979169 987597009 991381980 397777225 631031053 683234415 953265829 76206662 173898151 438941084 959024511 968090123 974530342 147757076 697645758 256326798 608020757 684775131 729365068 566398428 693628893 61759582 431377328 782836480 833065493 415924460 425523431 834927880 877508786 31643194 290910264 95010791 368247338 118459183 313574962 49402912 227510587 942312653 972249459 910950791 948668310 656216994 925375678 667126152 924916817 102517205 840343334 533333138 811029460 766467314 947654202 967191146 983330695 198118385 989836017 123079239 562241052 197580532 839503463 287395609 705624359 62059072 497948435 650450524 706830452 439846587 992638605 770393361 965040245 682888121 951446166 817048639 854904698 986886353 991222304 618634084 760632487 294979416 480758271 343107709 977823936 36721774 925454888 840863186 954137641 279479194 367981361 982118259 995227614 465096026 628026256 810799817 877343228 406280539 677024738 108775096 911385059 595434592 945768156 746668522 756418385 523745218 957864583 583676658 689409118 691109261 920502733 884509693 886380658 50821642 266860155 604581677 896537077 588390355 730469584 861330310 983329064 134689957 998607610 274465309 792714750 44045869 978002451 95699785 674293487 852358632 877653076 829782509 929068367 520642051 531456972 654642578 664779588 731668655 855476175 635928087 676153938 140812128 256880181 364779597 868273341 873335557 958688718 609844031 879757569 829607590 889593546 438093812 536051037 53121716 193903458 75848177 461065235 903326046 920442804 98810440 276131947 131210428 152734628 112738906 704864808 90094958 471930243 329442207 831208290 843469940 967744996 923792126 933235322 677158292 677757200 71212530 497947927 759409287 977745396 483612357 997283661 418288497 646239711 999901701 999982084 354192618 924092942 632964960 828329195 231590459 796170814 479352584 812474969 848276873 996942638 421893765 760922931 26459735 286368013 30460836 460941613 738577977 793868589 166443183 536099669 179442743 941254011 6408893 762248394 56676194 928079147 645450364 737973069 785820666 877325975 863262568 998065105 993634841 994845560 417482476 532347883 499194221 520530250 340618759 454285885 256440955 991126768 934701272 945768119 336316345 577684921 911229388 931535979 615215813 989684097 468222040 695749490 350875167 808730142 191285365 210009770 977293547 992716171 683354773 864376518 618524501 655637199 167390749 542352583 495353867 503744742 999040475 999378030 995169851 998428196 182094991 698645727 176496784 955957952 50100590 491639350 406836991 643730668 972159036 980460663 914818293 924281794 849239501 850249183 454106400 606637740 152963239 674852620 538673840 782761112 622303578 823214930 865260783 878965924 664295922 868467987 516190510 806597009 319177916 994846586 891270846 994997182 975282917 980233519 16068938 201294067 379148017 861180784 605913594 610038897 635458318 686577546 234324482 262298738 827554763 971207235 232490224 368594545 724978495 828443226 698371287 861298335 205875231 955211573 611476749 738121363 193774978 671348206 684609330 970415670 183800215 800591858 494179597 656007352 532529296 932008427 866696574 891763039 537264136 833336308 921887050 940465089 520026519 586640397 526234404 617017159 721702335 754855402 684820002 865598101 59052493 726942975 431250329 653222640 372030971 639663813 39879339 897109617 191328273 837001974 180478906 654844288 195469349 319012729 636901646 697842207 456939061 544554573 276899991 758945618 835420634 940978407 861315240 873745044 570040226 656259884 407615317 445598044 757901717 988959227 546750980 880402603 387843052 550509075 120808177 381087565 446790838 741732849 405954099 793877520 18791717 636377199 226573194 275045358 659484158 858221451 430172422 538893446 346145556 536231457 792962883 864987207 440120318 853236480 249416406 602298523 413589315 688605048 122236190 965247187 249822966 494850943 406920334 930638533 469046318 790770031 971390413 989942896 406903147 722594485 291398741 948030133 404711290 863926987 899005464 987528083 58694748 68272958 484058841 563927171 630850707 789954166 160714349 289180210 241803647 978501984 776650633 877279090 654916732 827999602 405277308 495743721 856451739 889255572 662336849 870926749 353324387 897884874 972977153 980441790 113833304 717977181 757261633 763224570 581455502 854532746 154050750 776377351 19871625 907466233 19280830 259361112 574384603 848032098 453425340 520965239 841420101 932307895 638805027 744169049 52561565 954729338 506786547 532350928 141917127 808084854 791175016 878399458 970894823 988431330 777867509 793929843 845810585 914515307 494484756 615818416 828896396 945596201 107541618 893537216 700647080 705164055 463864976 518870644 757731294 967672977 770196989 982656942 482370999 798655819 348010187 868717632 860034636 877960259 11541989 269985843 868353777 892531627 329136740 908108853 625190266 689013458 832705423 909129306 943058966 994250327 687839987 911480163 639571338 818495359 189706529 393619293 716805981 778151305 197340864 332102490 662051952 788784595 1727815 854605707 138015547 974002227 560597045 931145311 795876277 871580722 388869482 903846228 164138874 716172347 685077149 887819356 649393154 680850965 906834964 968063206 487635314 662479556 15673689 989976565 476275384 881511046 208696901 273508517 509289430 645629282 50152961 903836284 610313302 793371715 893628826 936177926 229592270 935375335 391946979 437758522 760881621 817776266 805608569 900287708 906818346 997561875 546726815 641572017 921587686 944358965 138610468 643466256 725984556 973134065 440511559 796621552 237087692 986082920 620860877 943106141 479024631 759593617 282006960 738166493 456116301 959075364 504427055 611752165 621870275 816650573 13806022 15632071 768751814 991834100 516876715 680607799 842525771 892849340 748308451 866054431 450322355 885689107 972166187 989389695 485136740 878610719 120977869 788735839 681042930 984843607 114674966 578203841 483103096 762991957 221834285 899662576 247426292 834998880 524064685 837547515 567396691 583665029 164661829 902131458 348537437 758753368 433211351 994029831 363478438 739938883 981798992 988314304 39663375 707856243 176720279 431624009 972501819 999531232 681324195 696724293 871763626 877649473 865197445 904870780 197468203 475153965 730283346 926406438 72483330 809823709 734120839 840040305 165325045 803472311 520686063 629130561 497452798 925751947 347116424 891433537 182877573 207812076 136993789 697732223 503170167 579773421 456142685 854537346 359982572 465963784 616503025 829445580 253507789 747480396 948372797 950315900 993545953 998309177 856618116 882492054 731916018 815944972 228120680 581575991 224153472 416864313 722179447 795171141 33226676 212999671 419198331 710903027 908426190 927939201 13640610 676542221 823067475 826428193 619081680 902961572 797188418 967382511 321134665 805918284 366116684 524503128 860672589 990346595 907054187 967778852 608872842 865670467 810017680 949778622 346362238 740234252 552112861 744691291 632420177 728108942 417116110 913501981 592117410 797564996 982433007 982749251 518437297 920921790 284561762 980773666 549814531 891100390 138443024 929013566 150522877 455900611 900901932 992577794 434078405 741220671 293225138 904843678 493437706 651747485 126505735 492973090 495348871 984933954 440281036 728063964 772269511 879374205 978664686 986522834 212086387 422257051 662393691 709004861 397563037 536537519 884164489 939815903 668951088 753080876 874044967 976325948 426908649 859736201 671663023 995450955 2540803 330497754 353233773 536821838 593803423 935419823 537393574 933649953 661969496 975920377 395358069 788349603 257584219 385239740 144285390 949065134 163101968 233929518 647594612 707298222 774177248 849325416 422813351 880823216 805886341 807255605 122789510 759922306 940500541 989909684 750487314 834752185 348654532 718392745 977330020 999878843 504882115 824689038 248509568 529597996 73659862 843372309 913399426 994063405 737037138 988815456 456866983 518692560 961063560 964557698 313692889 537193897 54803304 987740861 880098854 958263144 899316108 936743207 857330478 860338306 972580327 984726085 159694469 732540601 598607936 713296929 342428400 412972808 971702551 975648991 273912886 785098693 865623590 877256921 340470727 752886598 275245103 918794228 251588188 369861851 902336194 933102150 625640198 695108180 409488536 608727974 968096680 987292578 148713259 281663013 225043063 498397898 643431619 690011023 97141383 593672277 672587288 791882978 793021270 997696588 6774324 264623143 247719877 417859257 715487738 918448621 485974716 530383099 413184959 641780174 847021899 909436836 86467560 972488503 266031929 840701898 576581788 781280025 140845590 934723725 4077202 706959085 130958719 161973877 681031545 930001652 759042037 912423009 203100582 499310286 721621725 893959622 704938659 983306195 324390413 339416627 493452254 905425535 547949822 648067694 36760796 868054236 496427027 574790867 915513952 992126883 162347618 849337391 404972521 524329014 742922720 839754193 149232223 425647060 493447245 522144073 17732068 228196428 133692777 425710429 847857459 932453746 960346924 987594925 551383793 932955417 201116156 943710458 252941129 958844849 943350978 963118951 219423061 649967091 755724966 901270892 918778705 977325128 244411639 270383387 916557048 951622585 662398561 743551198 54465669 360725248 500140955 955161564 291681085 457510332 181078191 986061095 755708015 901850766 982726347 993939017 380453311 799017501 943300445 976798747 675595550 862268286 62657820 301171790 115636276 220466449 885991259 974217416 80154037 478409788 137378954 386284614 489945803 783122302 696733313 697540275 235873422 390648317 109554419 527005161 44359034 425452813 53255523 331551924 715269265 749097933 82215264 835867291 996421466 999237800 787708136 962311957 182851473 905280198 661409554 842986140 626444351 922476860 747063534 814135517 531210234 653954467 51648369 698061464 448715462 529239154 688667609 826980928 932191411 979983245 694500585 718205804 152570414 613090781 789906260 837862837 238495180 810126525 889807059 953559877 853463362 961717938 9019935 213651059 903472901 972014392 188474186 576922773 398619798 407990902 887196332 888337118 551111941 852132803 639742930 821099067 401612463 518555744 185438206 234512716 88728305 497071837 153085542 476037427 697769798 720606291 761367036 996765250 768677082 920516924 369687088 888390955 175661848 735304152 819334192 937682925 444611440 740967922 247957779 519480928 854824350 938095972 253453202 746597831 977331065 996858135 91066795 263654641 344126975 850090751 164500572 994897609 418389882 625330180 975103531 979513130 21094387 885344536 323331799 948591358 160428848 541368591 88491887 688643023 913083498 928249923 650744876 818952404 857043848 959269265 175234035 283081255 426222861 807485701 426040561 804482432 997243990 999033292 27701068 242124916 213160937 452387070 793312383 968500195 887962772 928676676 34952184 688182356 936393792 958414066 431246550 512199465 725725733 730420869 597581642 602638228 180692925 659596235 835056522 922353889 441791069 833884520 261593626 275752182 521116884 920831317 931143324 957818730 236240619 786360285 781136469 856145594 449454173 591125734 275211547 992847810 906421345 951592918 110215152 798526963 730230526 972624227 121498757 557062679 255489052 420562110 933073054 999753663 894205908 944173554 458005716 531533495 219618684 688519875 388939763 827687298 772312108 808125068 461348251 474049787 462123958 626855332 754141047 996740546 994683737 998601171 400866720 990040223 275793864 438690828 336394713 627614954 641581924 678749774 288010083 506486853 318485046 974551601 991389188 992066077 429809079 989990506 673479771 770539617 532370693 750288608 9473174 42955806 96001226 553796028 253754779 748378363 276516334 313623193 455062011 548249496 831151267 838869635 169310995 499409273 794401897 806274998 872352340 915863993 417370343 629605169 944368007 974030450 572747239 877255713 42694816 718464890 494877264 669367714 685721759 721461391 653216067 862306262 144474749 371926082 50793704 973072126 651318771 830920025 572628034 990029704 34696217 724171526 381317 52689721 264518570 671537095 662729641 696816416 190990259 268863545 582172978 991911568 671107493 761875259 429885708 920944258 91576698 463094881 333458794 991246941 539357626 957819897 751261262 820106975 196481110 651597278 684239327 957525874 782065862 877928461 398611432 480950042 958607979 989304757 5888751 238680034 436235500 959410137 539416103 867108587 691564957 845784651 630981485 945361387 575024298 616849747 403974379 614104473 166628558 837442347 905088678 989978910 277510378 649633421 533625198 578421205 623710693 876073929 663188127 860242619 270384723 693343472 389969007 483857027 392193474 454637198 392425116 406395933 257767507 551805259 202746635 492421952 39453158 620757035 696961040 866212570 580235751 914263960 910889768 931877690 742947688 881041923 330175523 594279693 980218476 995493462 121507712 767447795 754096367 894461671 998595779 999853210 855176300 926769366 5646022 825748740 460546981 626600760 806884275 989006171 645518659 967517978 973356206 994809481 207964619 347119914 116658757 598398118 659051900 702693898 807360706 968901176 243825008 281502743 99656378 572921563 486116461 843978959 808498274 993883847 136197138 822800092 822559355 844596683 88069453 193063304 619241017 867840954 9518849 93414829 485974317 689719181 552150385 974957533 188915030 553751932 841876532 891960581 998823689 999221912 200424402 513061552 174221248 409097772 561920472 590798030 44148443 727743212 924383474 980587345 583441038 796590908 368180929 622523795 685486538 945404782 81949414 354097226 218406902 766239201 942605697 966411954 441765221 753882474 75871121 817052188 623883128 832680051 87862093 899935046 780258142 790943090 472472092 753573465 332145900 998594918 796763088 907482405 503030889 538993908 317031067 610274505 303967792 675916119 241027329 586749476 661828984 837538726 738131834 996128095 799442703 858055132 857957524 874570602 210297690 651373792 795777990 858849145 867204599 894670763 304488039 543559383 629070119 976042119 284907843 292741828 173112564 492416730 553409624 848198992 717929011 917289341 455011067 638643769 384681736 657185127 695492487 899818134 70727279 204038393 603963830 885590249 912184679 958870334 69422280 877782335 247355280 277355119 486549084 767442826 930891342 967727608 581811107 790128756 235306353 464176221 306039967 988592281 243280569 493890598 563296531 742331379 941461747 942068578 486012704 638861508 369197374 420060764 23983709 713330257 850144076 946959149 426709679 635822785 53169519 639693315 375623046 380276960 187721074 661885875 959370163 991327095 306852102 841592819 739285286 898020961 752254316 817501787 886457829 934098815 822431702 933248609 242339419 714026697 860013054 925459779 238399804 507471093 100766211 451060161 482999509 908169925 379948590 805380110 846443568 855711319 561522232 713200951 104720497 218758854 833843852 926459408 34441339 245509547 175788297 194963274 550771710 947962477 939706122 983692582 366165496 825756252 205076475 931727807 42571930 954570970 49960156 760154464 629080188 687817553 288646607 329365685 897683583 937529493 230252112 376978892 29342764 63321320 756842517 975010087 705345211 790809912 601797481 789394991 492501525 983585340 791405645 860352463 980471820 991213214 848735608 966260051 536069964 915155586 828452044 940936691 220249300 490217218 116224019 691355538 718160080 897749576 599894535 979728555 849902085 889969377 957214701 973257441 107576355 780080226 483800827 513748502 306394247 741945618 489041923 539556776 394329153 837256347 440778472 716438351 366501943 856770453 97445080 441692514 84645179 176645071 253781088 300667661 221757065 865442688 930797210 982381838 127941259 281059735 908690280 998251555 921774713 986168112 498606261 883989658 999107579 999562784 746711723 861938361 653188451 756594778 55980959 131291512 919345130 955098582 194651525 626343174 74358868 266571664 212811163 921091376 57958152 156640847 688188277 828032003 365145868 673578541 771700654 812443451 961934064 977492562 907139092 955091975 564676275 956901314 805983239 845166695 792202095 875861022 633162942 822987659 3371938 470422653 170884688 298231683 683817837 703953392 553145271 750116812 546155463 702664047 801849690 967834091 493724943 625496325 118618387 760170910 292020437 846405342 688769154 855238351 882943619 907011321 295194669 652486069 988231262 997734613 72962327 90378689 653983583 722887637 806657649 933438188 998809410 999861245 958397872 984553877 469222450 979693799 439252138 447055322 157822349 325148236 758291597 929472774 121085039 521830036 65127058 228930929 875128212 912368541 226302623 749908418 559905875 715125510 839341663 891591330 107207670 396471980 327239850 553381298 467772895 745486001 467539232 529775379 806213526 985095949 347778218 418896771 585029241 998717249 142781304 523484098 63859089 585970772 172920503 328359425 371523103 776272501 18901238 902324237 773810375 831141452 92706464 319079535 159000424 581326323 481224622 841227342 287183166 875263245 157179754 840192755 782091660 798954710 294036220 561706153 720888564 948005498 849032824 992166921 764918170 830759076 12654841 987741270 573483619 761516685 766647454 912393155 19304136 155676537 426390162 503805893 617701890 840924477 291694126 787218128 18560867 243959380 516561658 685971277 751628987 800732248 675499294 787762492 661727000 732793824 703105049 962659409 808467409 900825802 58410874 506808870 244901420 775400868 640395485 842509726 933053285 992410135 487850765 989794501 719488271 989664659 75085432 589297531 263426497 409791541 970143142 979241536 706592385 819715149 949279706 992767140 659469282 971436528 884811473 986032415 991592426 993566754 994550850 995359256 140432891 537175299 656193793 905415831 57095894 531319936 912326184 976158707 67883646 710137655 333493724 765230729 995118619 996977613 145980294 456431067 92978240 782658287 441403882 939801088 98088431 759140243 412094700 762531290 182658098 438677618 353033085 455352791 692747104 996428348 840211018 947231330 255664642 948502535 396544446 610869753 47511238 89801737 902615380 993171678 644893195 728493939 378793910 709562277 271079426 869098358 824716994 863109029 66946918 537205755 290160891 908261045 335999409 603987633 474105075 639075172 432625743 494496234 947840804 983130820 50493583 66839702 664541235 679467332 846505630 954892987 523527864 886217132 750620445 819684487 807041492 957560589 757978974 976884087 111693814 551606507 721901190 867009585 329031031 777340290 555364895 698858925 868228549 928274563 827631547 834426303 716466975 872347802 174632216 479817384 180167694 485851437 817733855 983115771 802886865 889787990 32614808 787049151 163959378 863231594 955101061 982054159 336170969 488096284 859698682 860063191 974693072 987424369 967907950 973011734 764698184 843409883 26555520 893333563 238418875 315580502 236312153 864227118 209168285 444391042 517948247 518717929 221923655 263607120 954759087 988549931 939846595 997998874 200959234 897091148 173228310 590893522 600396721 722944450 625024046 869645645 84977823 210527594 776202368 823378031 22747615 633598339 559816736 744539489 706947682 856705827 955155782 955812763 458637909 597931806 574138587 944330110 275404677 793904390 434049096 901678485 173062813 794411839 827317745 854526699 139699669 981201775 733788555 789370846 895706140 965845877 419366961 970892632 72950255 122171242 120675584 388809651 24609756 661338624 425212002 515325230 605421697 802394172 849654641 987384488 612568440 897382640 415503977 528989758 916214813 973699722 461749344 691469201 466034098 865744418 69166471 541159668 955028255 972671968 875888651 901867130 401852184 578619936 787334992 802282636 568473906 632955373 843229682 900769958 802580751 856057175 825671988 929328325 755742844 977788282 672199621 817750696 836547817 928227029 786052063 976297764 474777796 777676851 289318011 948474986 111825443 969251662 711368955 883689499 51632647 420845277 853388664 949934752 588456754 667701636 607946708 738829384 360475829 961446738 385687536 818536066 82843199 596316448 964700738 986052281 568399572 794654457 77893609 400995774 340775363 699145032 546161634 664073675 508508167 950243211 275852913 900264636 194703731 288969637 852956642 908999485 965745629 997490738 970040325 976640609 5963670 943976374 825456557 970172643 266411138 989262845 46915541 295655230 503773252 731340652 877183053 901952008 574413309 963342695 324341841 591494016 77238530 106120796 724407577 777011362 356293615 359477655 192546656 291091591 517458454 960507692 57718314 504515034 811640701 884743619 455808796 895604285 664461954 869720375 939179672 993816957 763095445 809061982 219288456 526168557 981133080 996477323 944431261 969593205 191207933 230353688 778515908 929852851 775816273 923950871 150512184 171361379 273608435 674369163 619132056 678219369 142749967 521006569 43366862 210461003 768194436 927898078 477261107 932779585 420979770 781961825 287658948 375271619 26538718 116183972 301025830 827121323 363277582 732763174 803217078 838984845 236011 217731731 378027293 777030610 373287904 913898787 663336929 786344723 661143891 716282471 166581864 776103796 285557833 721426831 735570432 947212049 527696432 969668154 927532191 987312658 339907746 658739512 248020837 722642638 567854942 932355298 274684787 885020430 640306728 800305278 435810716 539856431 231165446 342107726 678849182 756616317 939452422 940841914 658949143 665174794 810792546 963964391 291484713 710160552 982911846 991511837 743648160 770689221 272850543 337456348 664261419 726722768 43483224 881360366 308107058 525628476 895056706 935503570 137918282 861589286 701418107 958414499 74066608 158257076 200979522 878559335 199387319 762653585 348568177 817961093 660284098 994936803 665532046 932298808 844365359 992617541 389571590 973040987 764633590 801461824 944561759 976777300 157067022 862617525 772642122 895400143 138822436 395408837 449447795 541806367 882868019 920250225 293704343 499314296 273096194 573455031 417250545 820095456 212605619 830480557 932573297 934548448 956947917 989484179 751748739 886313679 471257563 508150451 26560508 797857924 407697223 750767868 404748753 808368026 238949789 728178083 633577545 697761993 509803386 552485726 829149006 865207801 869565585 927183377 791361570 972741131 699636137 967202868 721825102 809570622 887956872 923339406 952247824 979342796 964121120 966190232 814987827 825538049 398857639 537785667 839497017 990796573 978951357 987558196 986751623 986886014 335090353 784464163 227089983 307867953 67479642 303099468 976184429 986808665 619329576 993521978 231967089 631070162 290167379 565235177 552978881 797572004 839364965 870964915 605017630 618258939 949527607 962916404 48402533 941288772 895064261 901193100 329954228 591171631 405246945 537615018 603317574 693960127 229779202 666262258 920616715 922808231 563925067 829096617 671380798 908179031 756065711 832610821 475285782 887696373 240997235 445892645 637159814 959990935 77802748 206625926 742759348 825721136 1981038 820277269 875620747 989874622 934895920 962305973 589326575 656511175 234695080 959702694 733537551 779949656 776274124 878740855 336052256 347967159 157128385 763409768 705343497 911784007 685646953 738098343 990748621 998446934 293757400 601893425 924734785 941970119 355322510 463603392 428861838 547012449 797126506 816113347 294504072 576586049 604194383 650339282 786147077 947493852 524321598 601631681 246043084 795605547 250596125 869208121 146086593 864570154 443352502 884802870 196738191 593535905 81140516 92042837 189488578 809049106 939365779 981930311 367633395 915994440 256018539 904925984 629868376 894551851 686502552 987157754 606443387 770792768 805831608 993255881 13722405 108279616 694340446 999169861 134216054 954246693 642741708 888317936 824908056 832454291 688981292 850289696 47504949 82121708 535584366 948276585 455081302 472075918 571220593 844111883 997879085 999169116 996335704 997452285 27559309 711980209 176538741 203580294 97825175 393342950 292731868 371204887 492504543 861837537 684339458 845409066 782760312 818103911 377776756 444470475 769422131 979262165 223203080 854042737 337056164 767247095 194439829 258844675 705481448 907348933 432475230 700001091 361580806 484487689 413173687 474495874 700913356 720517150 502142653 707768118 677152970 816844734 207401950 303644243 814533589 838166589 213808927 665946589 93490379 792593742 149839986 500508428 16632282 90585702 900184784 998854238 416790069 576710714 840243874 981523607 487290200 818648095 568254757 759135450 235055455 368200433 983521679 998252768 72105267 755671059 678326748 967897045 781520271 982583255 503343231 936443053 275740161 828358031 239951082 759732385 189716088 464192193 148438326 823039516 981890075 997581287 177239151 416018011 741704163 779767796 813045585 929112204 930072219 970822781 133914907 396217763 236129971 263072129 582827001 658786923 667788899 742982246 161389784 809868238 583268288 730431219 398102904 992114607 882732465 968938184 630208044 871708358 591612278 747978740 40734118 501016338 713585908 918597474 230192074 906224577 376852998 824663338 859297617 904863555 369776090 623174137 635264751 746866022 706511041 837343554 624444951 781965496 22142670 387618021 618750132 894714356 319708796 584205863 118861110 610416920 977909996 998376659 406026783 583756950 165986277 484998036 817693032 957105071 269865388 732982652 764552361 771384018 108991179 555051303 147672804 382640460 174462211 214741763 851780408 876782118 135339102 369368325 845892083 900176087 238737451 644592210 62131435 89908046 619037757 684230853 784359379 799560730 364542182 448748540 517905651 706369402 480895176 973122364 963982340 967860933 455603436 878843111 255241326 996427941 299915696 793986982 610470492 669854644 727166574 927555887 801943254 876838222 500913582 742476699 493192137 523359801 99969441 365282777 536209148 916209635 76368388 976042706 50360103 683880514 689728051 878356436 557740202 614432370 11645969 132115929 311696338 533759172 798303823 908537749 38194621 291513342 334285070 546112862 850946637 923367873 293489435 915258579 591858026 637455982 202863759 844214058 452071497 930303301 587807775 891221045 206727307 637549292 420596284 642892110 378804278 732062585 102674199 451358662 423490379 480927330 141146724 658263582 685192852 884087392 880227154 944375310 803080674 947657627 318342607 570092165 865531884 972456473 880715982 971424929 994062336 999691816 165200684 235099100 987405276 999940632 968789579 977481265 598388254 600021062 271645898 985977523 646634973 883643541 842466660 882149021 364382352 488467442 660470445 960184638 244824110 429526551 320086013 545520038 909857422 961081411 631377152 828842966 678444018 959219247 765610222 898073695 965452597 996484153 334441156 614988184 296089536 710940392 616740869 915075112 669073374 883132991 341207254 557148484 855635471 890306603 533706719 656141605 464341422 504664612 896563869 963978441 656070488 894319518 785596690 789224952 57312711 780366360 126954026 981257557 185386163 961037192 790382754 901477639 741998495 770886094 999652634 999960725 38509882 983948956 639616821 983533051 533403377 762978887 105618068 120033642 705937500 988662664 43617324 864512630 676982828 901342817 777050023 914970912 788158932 985051678 363614391 365805154 214858271 769945544 569679941 992362539 653079752 984794098 17641273 353533642 642143013 903927844 719635499 963971431 622979938 862782229 980243392 984826495 132346956 823955974 352685464 945118671 93531657 762713920 722471844 919726621 688759032 802776029 440476502 916067843 610276062 884770747 873400607 888521774 391812277 829164208 702605811 869211715 103331653 145933201 709020741 791113077 231430367 614373946 155144446 956645905 246872342 960545141 627965655 676070155 857206523 862361233 3393479 110781201 517391640 638241124 339312384 806088173 755853739 770947728 2025737 551583767 76789504 566744664 225835961 580675815 596497529 875292748 260373123 827021718 807514422 931617051 18893000 127191261 909518591 991599240 561206012 678995304 31252426 647298233 434479083 526151249 177873908 405112607 685290669 955309304 631941754 928854489 662801052 912767066 97195389 588875718 396267851 539948623 767359253 869174808 269802694 316835617 218573008 645123599 143828813 831227992 780818314 827319366 549992177 978646557 834268946 926400077 215075685 929090577 441340665 502419195 475436449 525292145 873502493 984577508 920959419 965136995 741495609 802264484 928877116 974712137 63926293 626913876 580453222 625863151 449550180 484165804 483851855 810187695 925890685 998335866 991412607 992304825 525127454 981231807 617874542 730902093 937294803 948932533 397427668 649385664 573948237 968019684 842428085 932908065 828609649 957251337 139505788 300062167 853129873 883804213 784990821 921133481 819223288 860526954 336650428 465166623 623087122 633843981 249333477 318183960 726574958 845682833 917190077 920479780 43442638 765519627 25778264 75461132 515433332 874941898 384831897 696600405 285084330 600925910 878827827 951954279 633663964 830817630 929829736 984578559 691610814 838806946 796168090 893723328 74287756 730422658 200937897 309201298 715673357 741932839 192016457 980293400 769485966 783581693 281469901 944440575 44429871 959742956 700355410 969185160 118185077 402580731 357762554 967420238 591153132 889348768 669673797 931067806 126516709 554445456 413573245 888863272 639848719 966380993 472953181 779305300 606782226 779708726 432477641 971535494 592619878 801533295 980125527 993479196 236029866 240820389 459774293 618012543 881020067 994547303 551054113 747242532 621642032 741464936 973517521 980936912 329542281 626729157 694044326 696784752 887688360 898163735 262202038 960563994 533723779 745300000 481757616 586647195 912760784 916780121 422544539 955580820 775254809 830563455 130955011 476042673 718646634 842284175 848542846 895918897 341547791 512892079 787766217 883832520 381793019 789038760 957397845 977033332 137813787 503376941 301150577 487411314 802393386 904567551 218277518 840674513 664791486 922693544 713012387 832807685 179351648 360673406 309397245 325826040 423658024 475556419 282498874 972485216 678115113 876584550 464382521 606094438 628361705 699983858 453737228 920527671 721380941 929924279 755915829 778636703 735509347 949112620 670266668 778489460 503059310 607613145 302380719 389912297 53882176 438281145 573090299 891190262 688141845 706134583 622866559 634438057 119267006 878828328 129593191 684750516 430138467 469233683 624371571 662169724 667459150 753637744 592598861 995631933 406851965 475566040 561372094 975727627 828499245 907463762 726790494 948490372 775289578 878222709 691484424 853639344 240451305 716396838 124539885 996253432 459439461 750520802 448606858 894825820 400342859 520015097 765475864 840809818 456154914 839900134 428250350 821346270 653955138 961532873 439144114 857950316 131266253 829571065 846976682 966068896 4671614 292383431 300392074 437913744 428160509 713134531 160481092 410632800 563398148 619890511 162793071 584895009 322300656 590406479 824660351 900684238 865738728 999284924 990745775 998996627 52206486 353359975 165037639 931806272 397683616 674947755 759264714 860379947 270169758 978231383 567414126 586636435 562719866 834426517 595943039 734810431 306219677 351830000 941094342 962235468 280444848 500809619 578244520 655461774 184353383 592262319 297140930 942515646 413594730 701137726 655868287 743331992 88909618 776862611 500740223 950101920 55938460 889587398 714724735 921965287 451136535 626910346 418086018 740512844 529194881 957392422 510346137 727901828 751722049 874815673 154216475 508348703 359232235 434295244 334389288 477660324 447438801 521800187 786959151 870751751 31705443 930596142 217948929 560427457 229358519 296067458 113384919 230540586 823250828 829388445 160874570 748191201 33233699 540018314 39648658 202564465 298704866 338094556 318667936 372919363 482504739 977216231 772222021 837817790 656261105 699963656 357323941 614915215 786922293 959803417 362590471 393490074 634041961 845375684 523767513 552875343 437338832 480098605 495397201 501119254 254569439 426980898 483704428 599573125 581489526 622327698 253684054 961143760 680052184 830264972 477305479 481437237 970999785 997820591 172804654 234753689 896529568 959214553 127232160 977803412 788160059 825552219 526290157 595561650 826023566 913811769 644022950 875274653 100545792 909011182 215728276 934360256 747841057 849121239 207363715 641804293 318892943 420002016 727468538 884269620 535760163 886869293 246055040 946168227 365824823 719720801 901244924 910968209 929873327 942595544 627903208 729452577 175759880 457544048 207464200 315119060 829943256 917304306 58632683 241010917 449469018 471137433 915047251 978509572 3182439 512805905 13190513 753669257 57358118 408935182 716933400 882549475 549520837 905676688 802635189 857850072 522037866 661123969 186024888 612526945 529377051 552153379 404036557 746175348 879675014 950100315 162203309 545726497 385480485 609101655 696449610 946025598 499078875 936948994 971958763 987072129 680270032 683939215 800131822 860694228 98070861 851220419 701334538 702471281 458427209 953729744 332363207 352826143 617418635 690823766 327307084 800636271 718642171 959585935 501293080 993689662 373107411 895411741 992185378 994333213 906386538 946033536 459346858 934123464 339407269 542985444 321666948 437538327 506953852 892174365 845884731 854293443 547409308 764186215 285870267 530827475 341286423 775897373 603780714 873916289 768849258 993426977 633588955 646467619 468925704 502233466 440073297 722947859 503270525 973335351 89305273 367065663 767134347 908656543 826033798 976892180 810300912 815898948 958339099 989634489 335260520 949259431 177699826 861597983 330186060 892997587 348247428 937372775 359456134 620529653 694033439 876631133 314130362 616578739 603639378 608121049 329669677 670469202 663596575 877762186 477531989 847822218 922021353 981180707 483269315 765194094 288050892 390452463 896353614 907438203 441028133 462200024 345084690 679213742 171393009 848917968 816573040 963151245 22387164 391243549 443976789 583788078 930597580 974734272 52403151 605128526 877784568 990078680 407324194 423195231 582366962 745830583 616675375 626692430 129126720 898445464 646589939 680972800 710475514 723202775 127646366 926974056 394225541 910818046 796824547 898406795 801341426 916875880 210353524 298154109 759624138 775546418 403811453 539637867 916754860 966520547 488963971 918847939 149658284 988970381 130033220 342026007 739227052 775208352 465178769 597936669 532198550 776891291 136587761 711255459 753719821 896112734 820320077 887790047 773983895 931133453 876095238 935795481 149189378 772881246 783921008 915176341 6373252 543035149 548979753 846960168 867053721 897477870 118134100 976501124 605833333 783625762 852912118 873579559 50827753 306236312 244501155 515409212 733550592 930502567 619916655 726570111 531562528 918998419 385673454 991769965 516916362 522581320 845923385 974590804 116066514 954725176 107753631 828406291 265333241 297616620 873738610 953081963 950794478 984996181 669330315 791876979 142658553 160651915 456007999 852437586 541330055 838882304 942563676 980223426 801043071 981539068 840500511 988489108 182213099 829865403 750204542 826152504 572207155 898406372 682941433 778215605 822619084 927287948 807884593 989185140 236807365 794474165 272303808 440191095 378357422 509445788 332764981 647412729 860763465 892128801 467224565 839330364 946744604 974849681 452516214 903792483 273906177 410895362 881707517 992832988 220308552 595839997 350846196 374996928 530398287 948912657 494893121 816094499 282967511 932203611 320216080 362435897 781622518 869423795 965450651 987472737 15150629 68470062 933587560 940161600 531628047 737770358 839215600 899724651 590104785 750485048 647898919 899333958 77761299 331565765 317337596 393644123 165637796 863192277 911163765 976978054 845233403 898125993 927303365 947200406 568651385 673389999 220774385 340631985 367579214 412788329 288368986 938496282 407182332 521878206 391891776 789169675 493356953 740080693 259867721 360974087 339394156 879152936 202209883 903205206 894861894 959344048 842084415 936850469 40108431 102763675 81765712 726877222 771627171 821897479 386014574 964497201 152091467 997534587 191929789 576383984 31381142 652222562 725141204 825837237 87016692 258535683 265406126 804262176 14262249 461393176 589083622 649839172 713976085 969131395 280621654 802002889 17578482 117644997 415911743 923751732 878366759 943038683 249286197 604732587 304681099 381082127 523088601 992670350 359012952 924603229 819953423 943046691 105678585 482474222 248124214 950730842 259222966 649349796 305913142 879324737 929362025 971209067 186521867 264097100 814711469 942790115 216022545 500264240 837309140 841117396 496177867 758781874 123491601 764917799 555538540 671217448 209418590 536803561 317005453 857610608 136959590 291158681 710131917 809000473 848292848 983726833 673850272 884857462 833837973 850989562 543884154 600309540 693123723 953315956 479279686 762967581 588500742 876758805 268283305 675063779 10285914 937066184 217802043 930538043 293677111 549853882 885910503 939680990 861054230 980844298 382045920 525513292 804034764 878774348 746570363 818574925 95395626 201124494 742748025 992058471 706108094 851119014 369439581 896993220 434467162 623981738 333763355 399394714 520313308 991581361 309889610 766963268 798795977 838315851 343854397 687339451 969535248 986746481 381495486 504790151 667415604 873702665 355934688 418682726 61401702 318934181 685587326 900695913 803753893 968230916 630018963 962083344 592391998 642829196 73735137 536223872 56753872 382955792 89078522 818793695 274441714 800653722 10524384 418520662 67673027 197617100 7687952 260233707 281255480 467306465 639684198 973135222 525509679 727113272 434537948 916483554 57028876 850556985 120528324 889119269 255468898 322630418 736137525 899843689 680880006 970818834 843623409 976413199 67312263 73984677 340976013 817436351 439779172 581110669 481264099 768020181 523594674 876388860 951585091 985151479 74499050 143043947 556232601 883657238 933391395 973529386 457583607 937205999 380647046 690834064 71621578 672537785 527053170 690488732 656736153 995296254 48608565 823847845 212741207 273669715 877283708 967531979 706972717 757072486 200802199 770806927 763960623 964801930 11863295 972277293 99219633 388464068 221104959 618926825 485353205 998606406 947402887 950677644 899986321 984850445 728544302 764582043 534371982 554086630 56686939 373566095 522227265 701677614 380773227 761309949 976829212 997807046 432798866 908266822 226534580 323406752 368552481 686059740 334716403 806810101 725493253 786835071 11322549 471210214 711052604 950922837 60966538 339623178 708568279 770888750 663721884 790971619 748243710 821164292 46487682 104916984 872665742 894506007 423154911 626406849 367348628 981004414 787238024 888481293 504664164 528156116 707046594 861195228 167550546 695998047 576232540 763504933 583389836 888723073 808895939 927804183 904296333 923774160 767017645 968902095 515829319 778256134 932369692 994055159 145318119 991770104 958109876 976589567 899573149 927295172 994720325 994848498 507992390 729081779 108385212 328728181 456518665 759275669 130968445 352164817 259583047 378640747 731458169 814565804 218144325 574020084 158354867 209597864 416938202 747910359 44348913 909295813 130172977 250386737 226048884 352063069 958240373 962098597 113586967 677843287 753407206 995357844 701435456 867548060 185358309 565817845 974473311 987241179 323778686 561113443 420281929 549733656 505675041 613804437 422716881 737898086 91653220 349221928 305532305 675233580 960728524 998043934 478907396 906780035 221293621 816823937 324070399 420524551 681305866 737488234 351861115 861828170 85084663 985146427 22214286 626784864 950145525 995530409 397178890 645568406 207882837 253388498 246984485 533188378 334684449 635931585 261073416 991831480 976137213 988942434 905236761 967142710 120367890 350091675 672317700 742898104 96807412 381590431 440080720 975023074 504167583 948233544 429240287 918171003 106194862 203155945 440712624 548541151 844915107 946862519 974047100 997531774 163990347 600797563 140765131 244824279 397059964 493301580 178955881 375364449 10115411 894093542 91339117 170554956 990282833 995761962 768595726 769497777 151737277 255757971 858470652 980573232 324224979 804814101 370708067 579018442 618295209 737153300 789846793 803911725 384439762 462120290 811650455 931979303 480669154 762508797 830060408 957662063 125250205 329566724 692102472 898328753 194519828 600905437 83101819 164691665 660360689 966427401 626674996 936327359 929234568 948972067 223332939 823342197 796799197 951139742 51416041 539098108 639274682 640621542 126300591 136502159 992615648 997331701 645540304 846089146 589585543 651308086 276791191 921315857 306758282 336366732 659052260 683171746 677921809 801975705 138622023 482729833 127663897 631632904 478229540 487163848 864744819 879097302 884561347 998452345 465596491 677449455 488893727 749521125 208089585 249902392 255711233 641845634 581702460 849044420 350995828 353748661 21873451 692601218 282378796 756389648 75750917 132974131 511093922 709414735 933092938 963263567 846575731 937677550 181258060 520764048 917741226 967442753 610091619 906389503 452212231 873255006 848980734 924756296 956188316 992952085 694514751 895582748 431722363 479308950 615238072 691111166 284663134 646995496 259922104 264344041 915543044 966255288 894625277 987673610 262834025 464174207 128282410 653067772 300995050 843788788 182025033 243169056 511233151 733359745 740683781 975763661 559847801 888265873 452188389 915582080 927314707 969140980 692486877 736338375 291690796 532560950 859901335 901727736 36917176 917235836 461047112 823755068 469405495 772856786 958726712 971643603 177481373 329481021 207450497 270624599 909173773 957943758 194605416 384599928 17858760 975976624 877656278 943859530 594088174 821293840 172329259 960544106 603149185 909653629 95691145 435932326 619381007 970109362 334987091 452324097 53330069 561909880 405908056 778254086 519467353 880373035 99768957 698857098 678994790 847825258 332096751 490653010 129201261 661965795 34662444 968004337 752691708 992041639 724754509 774192188 225827873 781845582 590660995 691382231 594379328 824559091 234936863 346448234 674274326 939258712 252603338 962489683 559647622 707099239 547083713 737606321 98541437 193371380 314692816 951078002 929873565 962470884 324673084 793601446 516069850 867909678 676771831 861379021 897322172 953799840 421347503 816340062 87426167 754140412 582120182 616611560 864198523 869395036 245631523 346035271 754413592 909328404 271953028 871797606 975079128 988190966 257493536 648918764 297234585 799370771 765655682 986716094 950175204 983536017 899740983 964780866 23323679 878523250 754548064 989968345 60830908 878370276 77797025 371710377 144611187 254866527 624282502 789695629 167391382 720002532 555663207 743591837 29472174 792144271 337396042 813787668 586619314 796657921 419841509 420962262 688331705 754660129 167558071 950487993 229874063 268755330 198144030 307457527 684380030 693889039 13501939 48247938 67861652 426471461 39298259 630770930 371135745 874154751 723792836 975954514 827166694 870950371 986083138 991427500 707283202 743389839 637852066 728376699 442876518 825209794 548757312 908412390 582096469 676760152 666670812 808983062 706470019 816711115 755612039 848835582 814163135 821444277 804989078 805572460 752024691 881184296 44599300 313552987 362063028 536000526 522765248 728636341 689981469 890096633 505715379 574024108 268404046 944049219 613165625 687989658 182184874 979072250 380338934 442730385 893195410 942519906 298394163 863364487 763546707 800216565 580952490 875300823 766199993 776625889 650219284 982238570 159293965 859105929 717550218 807467712 562896469 697340190 871209522 976707064 225877948 884705917 612302465 916075866 12442937 867927415 810040146 837959123 887903101 956966801 332009042 405776553 777869003 958526002 695302656 976825113 97022173 693724470 319017698 917672641 938168271 989043954 524391600 608325965 613023234 793063975 518709639 983225231 794796503 819182049 361177432 410953338 233965512 893884284 852138722 870923740 301893481 871784964 853243950 967540097 405285918 905950666 984546345 998852308 513101263 848366852 297309486 871350039 681870092 748680688 22805746 667201810 179562300 985464223 708523501 884351720 613595967 827041909 278218098 343802571 361383785 665630432 73296415 573189649 8781467 307308289 167042561 892871329 297168309 680050687 256877226 654453905 480906400 694170050 34173797 90429071 556462979 666157026 454317307 584197519 186487676 247114427 887832212 966072410 581938050 913688253 127629708 867665973 875185127 972163418 308238679 590849321 217994101 885164758 145637042 720815370 798593227 952185435 967046910 991828194 57147889 968584619 846792570 989167232 110232481 218354721 801969892 987271113 310259909 594046900 682462237 905634004 992569279 994352724 950560024 996886014 71629183 464574403 853685613 976648560 273859017 556440657 785032581 942888199 48431594 78797671 420690638 745145845 458629912 511685839 873704973 961035451 512351117 835293368 217143970 325666048 254790250 353739505 648831077 828108244 156938112 406691673 485355371 928459586 187887244 803936798 684388418 725871493 306892773 499407627 772721031 969152570 988277073 994292202 103414558 172699338 757514252 801740032 207406106 693458739 425325361 730032438 87092025 937811645 294565877 378690084 819191782 979503965 109226579 445037735 959102000 972743120 665436542 995702414 205201361 227163904 98942562 756470911 37941653 189727857 692824258 813379183 483061637 882553108 687678995 693033539 690949668 805518267 943621172 994155946 220475797 754039571 369157694 836329148 351463417 753984937 478831469 483721395 651440796 852137723 471419235 786543389 791894434 833967032 115635334 593390060 787528630 969923172 850498974 911182948 973718462 999726780 43913035 405473716 485822504 515432727 776051685 875054552 779178687 935598741 681773439 692158314 243927311 816118047 874420632 996522628 345985669 457996403 762955249 875122325 325520873 934837340 645675747 653371479 462303107 801529619 759784306 966666978 855147294 890414526 819726612 876011812 738619101 791603053 546768918 613831797 291952291 377387486 854271840 862024967 186451067 842233134 429517971 859564684 721681250 815058902 190977896 369044667 428792169 558006482 71603913 299733493 361453429 703189667 202100501 497788848 480298711 758261405 43848421 117227249 709452296 939036236 67666350 526403665 240624536 332418938 100876703 704925798 414090505 449880965 424895555 475371028 720432846 748581450 183003009 723086282 504628758 558934130 285675219 819246570 385331209 520040954 252616600 836710019 484257128 586263776 445478075 929206634 664252647 986167497 155583803 596593971 239125623 849722137 549345568 592852846 121673838 671238067 600360284 626340970 562878801 982081231 593555076 732232149 792267377 860712323 984144303 991713108 159786546 927309208 713877496 916471266 396487445 544121447 402937915 629679627 702822235 891238286 249668419 581351666 385840963 827110682 881768380 955749305 100784495 122611590 795641590 986322003 27961427 126026218 742552271 956475505 816479541 973287000 885054989 992208927 673964791 758338965 78621710 667771616 177645532 883108763 652950536 758201677 940574352 960491962 968162264 983675967 179918744 307874680 563963854 586960488 82307354 706812966 580879279 962276177 987427382 989049727 657544909 991592847 111883618 645266224 937644332 997540889 78355632 357432627 326980419 381890165 227156495 400853198 137555524 608500861 461690113 913038828 679097093 818442086 168025826 864858721 572013994 813573073 175243696 646425871 81043903 564507699 693084303 859482606 57720524 204677251 830543311 983757467 410953065 760430984 781363778 976187059 376545555 677572999 638973908 717259289 536565337 623572489 478582447 483702795 736110064 811400671 630868422 875874602 950136647 959421263 100693076 825748602 403235644 839453597 917507873 921135201 100311772 126655467 164189764 186674658 472524124 973427394 608255532 611488197 119207937 881058276 653494555 660183127 568952618 695933011 963582209 992721477 3191081 634239299 133776209 628884571 922085923 935077502 264199062 464761428 195105906 601010502 574034738 877619569 206631339 572762599 694816831 859545094 767372352 782118229 237129321 636974498 349488889 636373624 455810431 890086213 946858680 977553586 815922900 853470691 737030794 956213616 740222213 940555729 782658661 799411690 563822563 718661297 624496913 752674860 297777313 559270407 749469721 785446470 162225325 810927032 441555102 750109731 244194685 913314006 649314406 963273307 306822497 506394127 846670324 856977462 684994857 821500399 154075480 171509171 28912677 98362181 179200429 816502326 217902749 811260349 801960579 873583873 750517123 857878155 944922831 986030682 187991665 806916882 767865297 977556258 625150238 681981883 448749387 567466314 470317625 596757130 52608304 797729767 104116211 230645186 179979178 955063958 802266368 987480954 274569931 919466642 429701671 577899877 290961565 697581548 524648453 842635931 258147631 468881896 842089713 970339952 456792872 801989706 410656520 820820384 452888401 614622311 461260107 991256721 603820753 759974128 357746349 758043893 895660194 998345504 556027899 957634182 25323757 943063027 199873195 645642214 482491216 805081452 297721813 938367019 464538603 938075493 36215793 535943488 315853496 465355400 967456555 984677012 219906177 613605776 254133850 367254643 553505041 593063278 264746177 565928615 750483019 846146280 4126468 12490991 872407712 985063525 994542019 996262254 34802294 696785191 312794255 961192254 509752761 549744703 744358372 955947514 878933298 949671402 631586992 722050973 197586050 812350145 928581596 983767858 802948651 900554767 541575713 983265978 298779604 990952658 370288338 750968690 537741238 935618543 952918720 979593140 684520866 913015785 49358633 362191310 312843471 546067911 303659472 503021016 94221777 210466090 785016591 932558249 36533776 867494061 554834141 965339388 728390172 833958483 150579465 696351847 463266827 619032022 442997546 777209657 418424606 546256105 235205595 502769239 792993013 842967901 23289578 822701491 931062765 959387987 101889589 229001445 235469412 437234040 614631605 923010292 504050594 813346827 210258703 283330941 1162168 714003339 848907123 984428560 591834806 674345239 136592358 887085599 585930839 630566076 445339421 555544855 647341414 685454722 561414214 771375785 359225520 577274088 404185911 578208324 264506544 587579320 999798560 999953379 417795190 505240076 566150005 950852677 55230864 823747462 212065926 831345273 490101140 833401382 273544645 945346363 857435941 900298133 351158193 516283018 114433439 965558110 57407385 63956792 222530542 502149964 889742021 978169047 504453955 518301164 287644919 820330787 325273757 342399883 28887511 860934554 83918159 977692304 655151108 813355093 635615482 818958265 827225285 914171503 870968383 890241138 237921071 700670618 199508285 460136156 796088985 830958099 418243114 835177200 204433647 319238823 404730064 908726009 242243804 262286968 42351057 103576707 747743749 760724962 731266489 771311447 251898462 988884109 425959499 428724388 308841643 509314614 912729051 979461607 83284496 239653608 154545093 450617497 678724572 917420925 53373164 615057724 126361598 877281445 956117495 961334074 913976578 970576592 162325745 961824459 531164806 589776811 716678928 904743229 521978484 676664485 155638553 166866422 41583945 439553164 25986977 924593189 478319997 487496903 373179226 997969197 301042152 326583187 410146115 699112835 213757014 818728872 116365717 824473521 910352453 982606401 510628585 532333444 299951806 470363628 845255518 999404171 884729398 982626671 828111904 982871332 678355828 968738569 24966935 464978811 147976201 402649554 998202532 998394593 303501462 327010984 248625910 387136546 559807420 637562826 490702815 794910524 28151139 85437545 761797100 773158773 992504213 999599212 517413490 602600398 390120529 784752847 753663480 792628614 588168811 727920613 659931241 961464696 77973074 130889127 24983845 139096568 704949167 717851669 133829959 522495914 530557265 812364921 908240978 947052134 401881205 735239060 603728903 724946738 263449104 662039808 560132688 828889317 907443091 947402216 993652813 995611895 787607744 943064985 958486091 992217647 799865751 872053338 549302162 631143730 602892515 752088759 9866511 985163378 174265273 928787737 217987970 689171702 731780009 965383663 177863479 587477210 133451218 260366117 376854557 991535127 864386256 991011507 249550275 673379519 71378699 189971492 46745240 747334635 123147217 991484897 180897255 249931206 880756960 955443598 502858652 954462957 25733392 431770836 96019887 116183662 190436162 390428381 919703826 920539702 69490088 316283705 240860189 922958985 630079393 837368386 569854203 858363100 184242765 680635681 148291781 704993950 437399506 806911742 662466655 879704706 348565220 609618472 986237362 990477766 733928615 963833707 288615289 642385051 580838347 867931780 994753423 997890849 2939267 74361493 243224039 407804729 324866563 969991827 229307178 777883322 586250994 725085227 847201218 993340237 772537233 824374250 548214374 843010037 188127447 542551532 956038910 963247091 554629911 818700742 333351148 355162929 951790116 959862806 405794672 482565819 958307665 999511445 6555847 803012441 411098001 497557846 472865787 502347057 700711683 897271790 152092382 431020229 550192953 771624014 107857274 156125266 269007604 324586242 709741716 828362766 200618074 735217502 27959912 907282689 441606068 685054861 670224240 757227082 761337496 844068521 481453795 675159155 194659492 490172843 647933987 800544312 387205152 407238465 666562634 776977881 290502414 632313108 197570240 359355986 875773395 906751384 344427333 554459188 387646547 641262283 19529250 643408082 619124483 855171495 247394844 379456357 393282136 947093463 130307778 582581145 398255243 942017349 663523587 790129613 510773475 624762224 861408734 901971095 115511423 188239930 523193971 916035371 366769338 866524028 228240472 839159625 368517238 739251885 472636543 963187754 893503408 981531142 733203831 985411975 376623959 574096656 851214806 854896807 127416000 812364367 22692023 846880378 327481203 495272307 64364928 784636122 617182297 669979083 193916923 515506974 437128344 679250638 497645379 719544748 397255505 408893225 981168232 994566017 422142885 747117013 263692418 395944696 116526397 383501444 923458251 967099508 325029455 941941795 508603394 681930579 38522780 567047599 718798385 879206865 889385319 980160040 9921961 602252917 34922641 924295887 527362170 678781157 814920890 906475292 774371693 980537089 532259181 701704279 934054020 949494587 120157797 755570332 427270252 692941070 942337945 943604768 453365874 486761093 827188656 900485814 190548245 675948784 860751549 969068986 106785992 160423978 729160557 986492967 553471904 643876338 774007204 973825381 359313002 833967362 568992067 955002597 20922128 727267849 760447575 787994036 393857902 446219611 237149176 438474374 250169447 702510780 421523512 541780047 173104997 213875942 468094248 973993384 104905306 333306470 162949314 906202136 660282637 681600994 118370541 391163055 526963252 986891465 33500131 595237862 204065229 660755507 154147261 732792194 78271471 139670421 894034989 974798746 167065896 455548615 992528989 994902914 378804866 566958964 201130424 998238749 356298272 880869639 824450009 846004033 628557236 751799945 417140051 581089501 177998840 286130673 694155826 938921514 712442475 893473375 912433035 973346563 225718804 435966946 961617949 984831362 480281182 896203695 241403999 349105943 133079447 691282221 166051932 622122594 770538301 989434503 924805859 940126630 958315686 973916164 811700821 897011925 387602562 856058380 644180643 654870462 610086708 623894297 642255780 987806934 311988739 867375298 671319857 684132894 289056975 855874937 972470218 989497272 172694596 440018198 218164221 229492822 673351809 915415717 311933703 514231713 972776454 975780854 901516089 962738368 247116966 835517672 936396020 973126167 322554863 914759680 703309324 727067225 975856 985747953 197726735 394186382 273304098 644687378 416952866 909532001 236909803 795136881 80911120 513185634 178084970 186923696 805504522 966268352 482884276 989602016 909962499 957757487 214849762 688958397 456438345 820584063 243881009 798948511 994943775 999299051 466727490 791164352 204914226 661241388 354962075 503802392 384088534 462312063 32877862 337178998 714934589 798947376 270518321 904840243 32193448 121186232 869704285 908686546 511717352 876766938 756198047 809770478 915209032 968019088 645118247 782128198 138490289 589657088 701782000 727815743 146253103 830692911 579057870 833996851 27121309 93013673 637450479 953799939 394885010 931939856 285356526 920299577 181403146 497045075 546549055 709263413 881062723 993368282 949507914 978421804 323527724 706923350 527767059 671360940 612297674 858071957 165261880 744088396 536969111 779913443 357671837 609542606 145076873 952770885 808518844 822089611 474356536 740172966 509563571 832645950 457255338 660835377 340104587 643966385 80044125 930941785 69642001 635605323 195781269 865877964 466469947 909582064 294094369 397311865 991929351 995545854 524116537 661918379 530427609 958875119 946740061 980066777 652840308 823546523 214890265 273620546 720679665 735846353 83581387 561921556 246382757 965934896 188648100 531405645 201029075 753073197 401548030 874246301 810953197 921276130 636841100 974708404 883834769 973409638 396626351 556125570 932625617 950168014 810640858 892068963 159533311 584609831 315792413 879898914 707809793 845751329 383659502 693651917 733961274 882121634 748154075 908528791 526491343 779874228 644346542 986866750 822470908 947617639 289093114 492072733 517050902 754219880 809230743 875545806 607907993 953833810 62278236 312159094 41943608 762976945 565587343 888276900 782919927 880179525 840718021 894970690 2435130 97151674 357121017 735294445 74385480 107187744 889082419 923383189 549044390 801954427 659380819 718810570 91116804 540012642 426281314 471973126 921851013 949448204 871702726 996704399 802317875 896816332 174369668 257115619 507353967 717666917 896783002 963391530 218038052 776679606 549331499 988071256 366779391 736543706 460572720 547112335 241634704 777660006 300481577 818652810 80213970 409713643 191437440 839145937 541954507 908734930 515330290 611759512 371974222 741844095 880383921 995538510 742159191 797581460 622747245 858013934 321261131 757254204 790038553 899831314 89298472 754564438 918504486 935918697 280157143 484581426 565429191 700861558 445442513 465752173 390102693 638784477 789764480 796712818 392990894 959634925 76619127 992148272 11963467 203675140 470018570 706107065 630826909 943237204 193682340 894695755 282579289 856132601 519613069 782684187 176302725 286162274 415408569 651423059 201801121 943482363 212819573 749311657 606988879 849645757 656705199 971316220 480017134 933456193 389391844 979597925 763973422 982725441 780754681 876369016 685970840 882302842 96838159 288864919 480485664 886867666 758666545 944685940 966401137 978256234 324604849 864070355 633065623 638560581 278739634 322468950 734205622 955249388 360357436 863226838 140192931 440456392 137723700 606239819 845833711 879280376 304771339 988825319 936532274 972231192 519913026 997766968 285160390 717382049 564132966 828191451 976713602 988340509 275408730 579438196 445929598 503709651 632817942 922356363 126586897 697283533 415446214 966348044 317538434 570969853 308127845 707549050 520550841 824300626 204829096 660553852 670486993 910336869 271205483 823056991 194323476 647630799 991384274 999326062 207390212 777137343 135026257 887409838 34038913 923905549 850772521 958472741 752546720 852575119 282813094 655686483 599182927 744041451 453864524 551477110 926930772 942792667 911647899 933286853 196390379 980389719 314147874 658319714 381136128 718584969 860995964 879182016 776955650 937393024 459649073 691051139 177155599 904035031 101506832 982054120 392630754 946414691 433022060 617532114 63635708 627224476 862212271 912345817 670109843 670741749 461055889 860473242 765517521 905179754 233332363 939034229 25341517 467814542 408539221 790580481 791449391 971642798 96807336 154019458 495988683 847212832 608908891 710998049 394336664 487573327 714274344 804855337 94460056 514623384 702304423 928084363 184905860 277566077 172557471 966647147 29992436 220683696 272210219 399191306 528289975 615692351 808621484 939372880 327838434 862762532 151444965 438854398 163342475 914781455 599045925 993511765 436515955 981882680 553724714 573558737 855631110 995149211 988221722 998484605 207784162 356428695 4290414 876267171 565498594 727222433 235058664 474877715 717262731 812583975 255134302 839410208 490518030 727137828 780793745 864497806 893253530 898517125 288195585 521348201 431139406 524614687 121749599 839172946 230404112 626271085 747051198 962474482 616358569 971363043 18344894 858068469 141916835 537562354 837836700 909865523 835824199 956217552 379445934 565662138 276448316 856834337 52208174 80845012 7591526 659913395 919438414 995510336 624108063 742354219 726434534 977059566 487694692 885800183 123316109 242154559 568881451 811089838 758363568 794029026 484267430 795857684 189306574 970453768 109239781 498418898 444529989 826289832 955331722 966111660 245842826 857999405 222827962 953259526 725228566 815975862 808722829 986643428 44417790 762139497 506849902 631470449 376289897 617929229 735070695 751189128 516496930 714455614 409168775 454067642 697673532 907248001 333643709 354978726 344632397 457077452 210830105 908250888 5026055 311168193 454748036 835577203 685258412 884364837 784823603 881199495 200135975 267318535 20904312 178464851 618751372 711121277 281871351 705129259 490330079 576922108 441479893 562534191 877126707 899583346 750111359 975383571 887877591 969586336 51101050 550439130 11075652 843389134 596873615 638226897 936415780 969843637 34177486 905382676 26755762 146223198 678896531 751115671 742340809 802917236 970500751 983012695 191515423 282700738 103449816 537558875 701633751 731749997 109990407 654537995 464669791 521822696 28785813 972361923 249844669 254276037 133138786 391492751 652275041 821381287 204772363 759150567 84265389 427774278 318224492 960679415 814314127 835995917 525469377 551895763 827742500 835276528 814449466 871822352 74679097 880256951 260973548 704209068 315622991 337159578 452365285 608933798 856691309 886702410 491986012 762165892 751795381 873376817 152905466 482430033 159897303 859396133 336122268 935905647 851605518 881255305 746339471 785441033 950806246 964569133 388096121 452630323 572555700 702771390 422331167 998825014 627989330 978196765 641556356 791298001 50859 55923651 52022485 645361117 209143613 493410526 846602441 966116509 754130870 957942571 439675270 859689199 146788113 721551044 746122745 785375254 319920062 841835676 475956454 695425993 89163716 493673276 351192469 706977281 106071420 652491474 293107256 507857431 137658086 933160113 120333135 826386357 67631101 747003548 520105661 609090831 973605130 989909448 560512502 864586112 851706108 982507279 469766698 777094555 164718932 977382970 136607705 646223011 183435095 745426571 737928446 791072464 658888330 884274109 775811889 992616154 924514461 954539516 687092660 977792322 404270886 631315681 413273761 832694326 550939300 619729725 255092634 966655425 451827515 619949563 274128920 367441906 589387031 717488228 490236380 655797409 144488195 991578324 174598703 770037491 132926738 930804563 39369112 302511102 48025857 590510755 127196327 947844808 801366662 933692085 224666409 886298377 703621194 864906051 483817216 825920787 48000344 859358538 996011027 999121671 803509897 878176260 176849570 690195311 101802230 215433119 131354814 176811042 518913958 932835009 989284979 997572521 15629975 35239699 535959937 992392054 50464771 803341738 81794434 603805464 476943 891197348 214875788 415384795 66691697 546267380 111602885 823236255 346634948 999824836 747751769 854459417 560225157 831558023 193502363 353515928 684900118 958650747 89465208 736022091 608870940 974007780 990194156 998154815 953585451 992911226 879569508 923487690 166967394 547614078 112167600 275225344 810467152 913755918 372610309 583567302 507433843 684206750 452939915 587706080 495447077 741940720 15975180 167589382 396238762 539580499 163711888 315156380 318744265 849095513 690815074 973148412 532831261 630431740 942348078 977699278 512360513 855090866 553738947 716262634 926858722 951640968 119946684 589005788 242925705 343961767 349912773 371193900 212134268 785229304 324165732 653038513 420045793 978100273 913204472 932407019 501413325 539566643 987112846 996701294 401093794 854305649 781247147 833672495 472238096 868830633 203759741 250115207 754472144 868624324 862100648 920089070 904846837 916606799 404136668 480943249 325861115 986945495 165889691 598883879 391645310 465860312 965421656 985268142 311730195 492578608 683572244 712307179 223315714 307304916 164032117 835340150 190010349 985157253 967307376 971023648 784329855 834822855 478392773 542439200 302352846 869072823 321107143 478039683 807117143 973016534 557829856 652841811 852727526 934578218 468499587 919848253 269094438 975688573 623314670 727453452 880546192 975005907 189446957 310979508 391991966 672324849 923854054 968068677 661596147 697161570 801250865 959061847 145511448 556397542 646968218 876125740 495327094 784433318 157530300 164895363 564813491 579681457 648404592 889387270 126421755 190330652 96069650 437098676 15473129 686226985 156304213 891142569 713202730 739789195 690405443 705259047 19608296 656268605 526129067 775342807 339606966 396315006 34456048 936103562 808594512 974691194 250864389 584169224 586806688 817543661 172650865 836352811 447825240 970482971 347031297 874359567 138495146 406195710 496828466 890551059 536465571 541460290 859466217 909712372 737746043 964823412 29762781 936818500 896684459 910849786 179106739 792274937 779451467 943535590 483346556 780756553 360468367 544745064 260934200 600712743 204649667 809660905 213220893 681758386 66490399 480952475 694547159 918623916 965139417 992094606 863334627 914310428 586395472 823116330 37964674 76485777 268779302 450232767 113625187 701474947 410081969 570982386 612130111 745537042 552023749 786159024 800752939 924912880 806992125 964569741 531706145 658079898 582747936 967055748 389246235 945799008 979125083 991240030 712192096 743505085 271792786 664324135 722462588 979805232 268692449 866243767 814365512 968421368 658348143 953221330 587140486 906462461 131867648 336803237 533768202 901139683 258734874 262431819 21659142 520316948 710189347 816189651 389562809 441682996 940077207 951078659 173756176 720590674 635156696 694702619 745282452 957289596 940279707 992482272 324240474 898824341 201405931 994872094 254474223 341403097 840090021 891842441 242552966 755471372 62787051 764503018 638413127 945142408 540972521 783860726 196388872 936901622 644093103 813149636 418537153 512201255 9301522 825173422 767641649 831041494 788414599 807696940 179039355 694811673 23407272 190371927 316879498 954458580 31383176 628822950 257935768 815967635 197940157 990109545 176038266 183254569 893783681 940553612 104480828 362255762 75787249 928963739 902990231 972894579 346634992 506706328 61021874 622487039 44874578 588000921 892584376 948444426 352952718 690908022 116684000 533816430 102206577 791651777 830248063 850896597 867503432 910474763 540229096 759486032 319577770 524517023 415485835 719423522 422916876 913153713 41673224 827888291 494390032 748282980 979084309 980757010 714225804 999268804 353071879 417688474 856328453 942733755 659168305 769376762 421735761 573562402 363469016 652989581 726866778 846851264 476742562 928778248 704989247 865921560 516721230 557959137 412930641 933885099 871542485 961627180 201827919 201929330 557953720 828371685 871141691 893876896 782419063 782942687 264422566 904786588 95907054 190666710 73380213 353576685 656684072 757849202 808772216 868161298 62506837 458963073 887008057 962840770 292417722 915489157 925253440 938529662 562501338 568861937 412412381 920170936 653387752 902453336 942774191 963589693 341582931 395909018 795992431 969480754 365528613 764375934 758984157 914178505 128446243 233003823 537160519 883483025 609796579 889337593 440213193 799725577 325041127 448343217 993342923 993986580 693963932 962058001 901445904 974100868 644439706 772480426 914267461 925193916 615760304 900617008 938260396 983277646 92960918 890391120 693040650 923658400 279960918 935118453 405876363 682300816 796971033 911563781 138398465 262194284 82824853 245919988 357129322 721018346 665506714 852214403 40274569 555370422 459355210 687957342 900871681 918752779 567345936 588095793 244048527 755074183 882481588 913345284 546220865 712178746 45726984 694147442 248867105 455934112 162037887 653263396 916690998 928619277 214699567 445052660 575457235 609545757 890382506 986517897 920375647 970336559 473284012 494215309 451776564 855919102 389827674 600514700 618275120 704694153 930095197 974479694 359153436 990325783 767000497 919157156 479871232 662082615 553433032 975167905 326811665 508914508 519405670 592105153 91091831 864306116 500435084 586835031 806189910 978157415 919621338 930947195 816567256 997569872 772772731 998375110 179529624 716961604 547242538 708547240 924580424 931676703 708069088 796895963 463807274 964086619 670869992 791436287 95294323 839030623 478561673 953758759 773127340 825279361 397223810 732188390 839145845 897732648 587220284 936788169 933037618 968108922 857335607 987923465 839030208 847771733 257743847 841285798 300715796 746645799 85259817 400672247 340421033 926257893 910448233 976268170 280886425 974320114 775782279 817249010 743301976 824106865 174366598 867378423 914318089 915669214 554387638 924779636 562582809 896120695 886697975 915345287 636596978 725914582 810198593 811711200 251374167 878190944 904329289 985133134 725355479 845412536 172253360 202602131 191952590 795225037 372857492 707298660 942160539 944951171 464756395 562369380 397162645 851923930 206317883 694192383 859995960 872495790 549295868 809458647 985919835 986314749 406945293 409080673 86514642 790141264 93716388 506368065 321157710 338669380 812162723 842545848 161099269 540593290 780790719 792458600 511740179 614365985 102117196 372791422 414585562 607349342 763690492 929403014 784928001 806867025 102830683 942518220 583064804 664932809 702940905 790142296 23064077 959425498 786129440 918444709 549867615 561470673 241379015 316046573 948681342 993738365 225271793 233993804 878403596 993455506 768186628 942769464 789097126 914382662 225528475 944376607 867427442 872178438 987828859 988691483 945100759 969018733 821473618 951303439 928150669 975579319 69943546 496151360 175473424 725009893 189834760 208650976 976889029 990727067 16780364 150062601 503107691 602272972 122864595 216193620 513969243 681416490 381169975 444372540 561209689 897173109 117501915 225108730 622721336 704476099 253151731 899542521 157033879 238442833 228625625 532084943 744404801 830095070 812835050 826637965 47734269 199633696 421214364 666226373 787071839 806910389 451792348 921072919 707572572 799308148 788657003 983339038 659387556 860200412 724599499 761636565 48523971 723900118 675620917 825982381 64342415 165799112 929774560 993810059 990171151 990285044 990475267 998082949 11029971 133735495 842740613 927033177 876458037 939229813 233205439 613345593 388550133 934293267 832085208 912089066 852787586 921609492 351887853 734142694 519287926 726118898 560525381 938855121 178762845 665136143 370378720 393874068 920642430 972234065 451146351 881688712 117758188 956516337 915509362 978948659 928633061 945850683 491977017 847608871 110083136 449384050 388389679 762058242 911714175 913533507 55336279 888958575 892563100 932117760 855008668 866934109 331574123 358914078 242602050 342050644 303580106 380633176 753102838 953900787 185261064 924735139 613270045 669630085 729425674 962434829 48363716 826185230 718067585 750955698 106877611 156385464 472323646 489161114 315182066 622426513 476777659 749753966 816792145 845346750 308238052 418549601 940263780 958301663 204058401 505840836 303383212 776395045 757396547 873957707 148599282 363935148 215431147 361539113 453587686 793938332 95589785 877480182 289793345 302850196 787248467 821673338 728906981 956707184 276817118 299263137 43432455 79399926 212784503 617817158 967687527 985400220 643584343 897728740 516964563 878239433 258314619 541872728 291918187 808016666 699419571 760635259 895563374 959859844 470069004 562408777 745916927 958207426 601575425 700391733 35112447 646194310 961753050 987891415 617569775 884481019 388448327 536723609 241040558 594274557 838155161 973137330 207814661 760219869 101810380 428713203 632202711 674369344 676554044 927921215 15528875 717172084 331049530 974391722 870491577 970249197 549014968 631606919 586968977 759261010 540805287 998256304 125467446 651794724 932834440 965619162 48233124 868504994 422076910 687349785 726553932 980352203 970104795 991109495 624714331 642694390 735297151 825634797 633989072 782331094 192389440 505958899 703936914 840621497 421607799 708866596 283739835 667501312 124001606 729578932 606479057 983780487 154911904 940276576 220315145 958423680 849595808 915695493 451192532 781416346 136046046 157883957 507436177 960225929 168738889 812246152 103400582 557972011 95775706 406229881 483457720 820178872 244852249 713178229 368822134 388219018 360000434 810517106 489811314 496419697 289176022 793024682 843790974 968364277 453734077 648909784 277938434 607631647 434080796 781112171 162113617 226907308 693741364 712797865 444641123 640785599 304463286 424552055 722653492 834763477 852806271 872151556 550683333 780889036 47396279 586637180 816927054 874610587 31420348 414891099 129757050 206746383 237381062 793569484 602344360 767222223 605668605 965558529 589447489 825507543 841512057 863876163 155637488 273285725 122934409 466551764 738599938 770093830 435911402 538643565 712433913 939264202 884762313 963512597 476686967 599384884 436353821 729395273 814605816 936986166 646888532 678426338 758751660 777440599 208667055 783856541 882124102 957057837 187424589 917251728 934240517 984399887 882663744 930176148 557647125 906122843 904740331 954752670 99709677 394415065 529295076 713355278 681966538 920242349 471111905 788486958 95141227 424542622 211500845 765383106 958037174 987251793 386321541 467469928 853609906 909202153 517164227 544105150 325067968 485218796 594662445 704943531 877037106 984773345 52525346 794275089 787760572 843028331 94096557 422385059 594961192 934608914 744013165 982176079 490879790 696809469 188905281 561603786 258425359 790248179 2829856 126149306 218851865 701805599 225109506 491954474 774124921 997535783 983602888 997122729 607801786 626662519 319498757 910018142 851647073 879872876 998548006 999734978 442682576 523532184 817944993 834544434 292885358 678706460 89851718 788488874 55272656 211803189 856640715 930820268 275703673 758190467 875175628 933198199 444366871 461383474 815059847 922779134 555888950 913761648 33196823 392619637 125659741 306343130 438111723 648745413 689725883 963013219 249797177 980266043 784458683 926634926 651707836 732280725 470006830 969762970 700452453 906329561 796919796 937031006 423956290 476182260 377024367 616969789 542805109 737085508 484454608 892722032 137254430 911585567 695568171 821483684 573059453 621338182 618132225 948496388 634014662 793463061 436680592 623481543 45554560 499810935 404547641 891258387 599482980 960794046 111417416 393916067 31695744 276924854 429388637 894638438 199444024 770370655 527695575 705740454 270857092 819942698 672942699 673716895 200298277 236729489 26662691 472730826 120993102 362101179 818486419 851112035 59820728 741153395 584369780 692698702 743143719 970846553 307296712 956842177 2113933 311082653 848986568 868178544 946612126 996084298 951461735 997151400 203532465 301378656 217632566 380010567 333481745 571644110 496651446 923025918 779737920 854529071 863999758 948489250 6145477 333131216 298893446 469648888 652272378 683658039 256794077 899203962 461429756 620744728 616362389 660381098 445602964 719664970 769682625 815002503 790896710 796543549 352206222 412614731 189469185 957492586 201976874 265851971 148945340 297938960 670503834 977217481 661227003 860737981 247539531 584701037 521875305 722385439 763772689 782379957 213849115 355366933 339567144 653964509 24611815 633404764 247949478 833520977 356793914 563943661 253977795 899338104 167185961 877017503 329108082 865025165 858686277 875495646 837677502 925620929 170527525 215768351 360019358 453561589 576809879 766300151 135880563 507450485 119201140 496886806 913682987 953202935 336880508 568055564 251610418 757009098 729357939 849690273 911095534 989401507 977926465 989252761 922963520 939744990 19267807 922919706 464916027 647509679 875014631 892033996 624820244 965192400 115821484 216413827 431775494 864842004 547494566 900543240 343970734 552252695 824601894 873659011 616538773 772487700 564856747 642689278 431876647 659187508 428550318 502922066 705271593 854830273 737845083 740943433 682622516 871377678 961550191 979897596 610633210 994862676 431872255 452962091 966723322 975637376 9008894 917095327 703515840 770598158 652556127 951092156 61823283 106320030 315998227 838198984 447500512 561333601 453509409 982903143 662905066 944863240 603754688 688676733 333166251 666466143 177127942 499770842 243808178 338418745 454159447 950620672 715327718 798699720 578800469 618720587 320410746 621568641 33624538 974270355 827379011 843777973 398505762 555400011 283696637 556577492 919811816 988360414 490512470 635247679 21538751 609795211 957823507 985714357 333457349 965776991 507093208 697571795 318022020 736530432 136557419 151040342 4710638 384683988 631781175 936889721 97325468 409136749 117395803 543032332 687001319 690054621 809614581 820514180 957739299 964932871 524563433 946026167 61872996 385314763 379178073 483043607 487331854 851028852 711388637 818076865 964700069 992840402 644093857 946771354 711141201 888464200 791384822 834385965 33667351 852644736 94532573 949609864 800386733 930273684 679720163 999188156 259702746 372024417 955248560 962500717 932102392 957128499 91309959 589132409 404947435 455212692 374979991 405091475 779442446 978542259 200501619 339261039 124698999 854110278 149800331 651261408 773995912 779629115 302457067 318310969 270041535 411685381 633479047 958642262 125903198 409582306 683201816 909233757 431626020 858971075 531208483 637183329 673367421 939228911 534558904 685569280 200833917 902655218 493014205 788991079 962805476 978061371 692898772 851763293 652285589 714260863 157482816 254504908 784840579 950345637 926500012 962898495 450354141 635877452 54939642 199451797 685441927 848313806 369263325 812300460 935266725 986278848 478839921 863843602 841521648 912425244 308659613 772165352 640660615 817065702 669483348 846478562 984072698 999712834 525991438 664864566 577613752 820180946 736911967 845670326 730038782 988939544 375940517 470838589 439495843 441642446 891439113 937332347 217402334 734411029 96809563 451369638 980685346 996398643 420834206 817043741 811848941 828091709 757290314 974470944 360348589 573449922 648799529 988573276 806817067 937740179 792040910 816140914 333861290 730012847 205831886 269071254 470194183 802222458 537308717 682710759 660678849 727019326 279908968 415944299 734608892 740835939 716357331 818159295 337766385 466866140 995642092 998248358 183152901 544477433 642971754 782489602 402132343 999559273 358504503 476796002 269308709 897006801 516126204 714031085 742192395 862382239 187383327 551967281 2369852 280511704 231412346 987364172 145940722 623361290 33286080 951128533 666785856 910247282 65803774 534352376 683645470 686237263 833780145 872663668 238623977 927663210 605464210 735842044 506077195 930179796 174950231 515675582 861839909 970534228 492083339 664254043 225758962 462014474 582342488 714133883 721866165 799071280 614891279 716479596 302649139 527616696 78032376 173072328 103054492 718114468 578050819 956132879 453812532 986770538 36301993 593784268 407943699 432666660 593317910 679207348 994255521 998365210 940390755 982847136 115283911 306501120 936424077 998468833 159927750 612933687 383902611 526027940 225215281 243966621 655779707 723810865 363580259 426300022 65462143 922091681 840414589 992670389 551212066 867752886 664262358 758799647 416398989 679371483 109115652 301549417 281622271 685779421 84179368 459410258 206141206 390585594 848190500 917337588 974836797 975811933 556197402 858502216 269036093 628434325 349875588 886015613 752099598 786537762 374167004 639866275 393205438 980536157 15285176 37627893 208345524 777940607 256458165 659759215 733138229 929239608 211460301 265705197 477105492 699853190 502772459 978026901 359637382 928003813 749788439 837381675 575888616 707171867 297800813 589026771 477933944 709546570 310957276 442220992 615417130 805786001 264826646 588722951 751011382 839042113 143517020 505620151 304697000 570338270 758163255 822707293 34906415 104494097 218846903 864001443 118974249 612157859 398440849 648292260 355901823 423824987 585006421 838127228 171764614 325872533 303967522 398687221 495434096 836766122 958485279 965620620 668325626 914814816 371725972 846419540 176855594 845257940 166356779 234070861 667600897 818287146 72214877 767246743 843389954 885553896 475314183 626519304 83427050 593393773 741900036 999594538 25081526 808279836 337219099 380777203 162802954 210810103 676252071 999375312 952484528 975622415 783372736 847582493 607746332 922719292 61223541 742896896 688853851 891671872 910798429 998907987 47968563 409286402 352039916 595498241 676617065 937007454 527064311 849953525 706895313 722130412 380520763 942060973 132004163 395082795 449671034 591575862 164058180 243865900 912773346 997572462 316378286 490259370 604361502 951954041 964054917 993570393 355955242 439813994 892124166 982460032 916593167 991996136 825260033 937508697 113791041 227266963 529822064 839004979 369837375 559271722 531622219 936326803 876606373 933710042 110396252 535071557 757951899 816428060 15423893 172495472 60413312 111796744 402909087 856810090 450705410 792469075 828678036 846391233 135739441 247632001 288336841 919148630 199759244 384462785 319450831 815240463 807567903 944797757 744622286 764123860 491214889 924379965 947208824 970318652 424652923 783120562 786212299 806184362 879367459 953837230 895613285 938937742 343550303 477542936 694464098 814408840 733652517 972420747 484582635 743132641 904302408 986798190 665884929 741976458 496939638 818704421 18516961 444295131 304449383 709367568 63374125 806320978 206398095 338138911 314040215 733788377 218422598 672498320 852310170 853057093 189186901 231716136 220597855 823135170 370674629 894046991 185791521 445973402 657424747 812446197 689757118 946355709 408088517 685841245 59753370 565326151 658940918 726546312 313395255 798404602 977859661 986055580 900321596 948522095 642692304 720085339 729931429 734098734 106928483 848287484 191453976 770405286 378522505 640772478 989270721 995480688 731348827 880197384 595688920 681199211 97671318 709561591 637824518 802784901 976555507 988949896 4769185 358674654 675039714 986147139 417942520 483244192 919515099 923706338 176026335 665638555 798558334 937428227 611992886 628113302 475508418 883831438 455907827 746456879 359651249 950890553 422972022 567960379 394829203 517257192 219437674 896266661 936725787 964570362 956449014 995046712 2495818 886112293 83672880 878728336 716285319 954405159 655158861 661161821 214059096 496155585 203765085 736807268 208617791 955738109 688809572 973848326 466779785 496889800 304382535 535985085 490181430 556858352 267585050 283454059 141373957 186082077 414398794 974355465 785127279 924078972 913570602 927202332 838339628 972894147 14262845 54245823 485578219 952324482 879345276 924804596 506548126 985062574 573913908 772608908 773981671 881725932 877134479 980254748 86636394 817622066 218072206 696678880 396512338 795095795 690184653 921482116 80237894 122198607 940418412 994819855 690283593 745480408 552612529 659665892 585468885 597250488 640269050 846223300 745045843 966172390 901618569 925476394 255430691 413920616 357280340 793208876 619821565 880241915 143756986 273394023 715616858 972510189 616285864 900441350 733813882 797521189 768948067 940156145 795953713 861437372 794189088 830885049 725427947 928997815 370082835 732197598 878230432 883065706 14158177 819834878 636288814 838894550 673950768 892682717 122581753 376620163 529747684 867077458 544845846 801399377 645936268 875570015 867582783 993264432 211320884 882393689 944065070 951459154 42593362 466997346 830234699 932464147 31949206 178264134 972000740 979441272 714784871 802690007 286173773 945346607 891244509 932157383 676662497 838510212 144556219 338464606 494479356 899716650 262974088 612714351 470218533 536933274 572455346 733957361 602253336 995761670 764423256 839863103 673121998 789832225 441353762 446628471 396975109 518567259 996834374 997893487 619590985 978100466 465801634 677013138 900122093 922188617 47335982 731130026 898260637 992551671 153420365 205536584 952734470 953399085 943438097 967421506 618402734 777101038 541449305 875122032 130842794 217138123 238595308 427077122 763302312 903669928 278919080 907161119 125628534 212824982 806829621 825241665 190784656 988198230 504667187 630278442 639858277 750019893 559227814 983955500 135976871 426945976 824703808 827098169 474738167 733692501 134951871 191118590 831851994 871239948 414150942 626896863 123717766 539836647 365082233 942798765 736915842 866236850 618972769 647560321 487863846 566222011 954405064 958179910 284028310 654599588 15969753 551835211 808501403 907511376 504244699 812698892 314817831 990608055 438698669 625168867 737377995 773840428 527948387 964766966 331273655 374449397 81965663 229854403 984249665 997156219 905839461 931152097 342647739 706201795 950702896 973646048 715168313 802261221 357253931 588931301 522580203 631785646 452164497 513672868 680970792 984632050 117411543 836748306 730265470 739029935 863898481 929103500 910336008 923764836 304916269 792278334 693110572 862876252 220795306 349557844 898163960 912486378 805993730 979268176 635198083 834759015 793398565 951825975 25247722 222165311 483909304 714170890 815195847 975782988 506956457 671442276 294355677 534463767 613510620 935779199 846249885 972527946 318718933 489997381 316649428 723749300 688716601 801876642 907023412 911347848 125102106 970054814 351202377 612150559 997386460 999070381 90264838 475275529 279562172 687622963 401168814 703010149 179707770 962548137 847790682 988252150 561353419 671132587 253219862 459640880 962724277 993838963 721649514 738317962 896988250 961069814 983476288 984197597 942320342 960615981 9437801 636177016 501973961 771481449 119099727 234716443 899681134 900383928 254594528 707281816 77816593 152590165 398351510 399536035 505335364 581800276 227314776 581866874 647620710 988990089 800497851 907633875 942824269 994361167 793167362 899984769 624006811 773399949 450170655 829667618 854592897 949297192 934088620 971127656 572125486 993251011 704544581 963069383 764420902 790412535 797132829 894887278 474172946 752442612 8684135 462146850 49666200 177535701 951386715 967412983 773277115 951835606 538935264 595522484 581502786 845029097 807304608 853580937 337679568 415201299 710578448 922281439 862094446 915679485 905180950 996365233 170804845 417487766 316107094 600899302 151850963 347872441 421540650 424653347 399394783 902857079 1673552 445072718 640547496 963376361 259839701 597694227 380705670 611808613 774938462 967723409 800194679 973255335 737801664 812253637 977379668 996443722 727045277 903728393 246547570 787150712 448602766 654621865 761534060 899401769 533615547 676534536 164841068 644940389 858757720 939231785 285963585 371389069 519051048 895854999 270064916 907036957 164082259 599944663 200662374 695436764 598452316 722120235 638426158 733378690 471210303 513775367 545289045 949675764 331456501 858281702 908079628 997984438 392539457 886785681 628965278 912078005 765340073 872389808 224960074 838490900 602058548 880903805 742009930 853289991 117775743 521858630 997332976 999728123 85151334 621448791 37533300 812716907 168111528 763978665 484499982 968061883 707015360 777673183 327892213 559687113 443189263 568873472 156864770 879011741 529545474 821532372 527934689 742659359 289325241 818218510 211303875 849150256 805166832 966584219 932351676 990039136 185099206 366855149 38766085 431622180 3626327 604134604 526073782 796480674 322603796 546339049 171146547 224501021 158882438 171983029 861946124 938215706 894953791 971981684 859031749 880341347 227844440 808446865 853830493 878452267 971116725 992205368 777923715 908975429 959007286 970999630 952469897 975505803 237284216 523443196 34611408 702549458 686194239 940367202 282182806 564710033 448843499 837357859 870033552 937933475 608160489 629316260 550121305 824993143 160244176 493649245 133449854 881556047 103411511 801679153 76945650 439632831 68544895 709224077 133381091 853599071 12043064 341830842 942339278 974396297 38968220 701942739 481600000 861548146 143279560 739092784 963961768 985652140 895142807 988507945 127316116 134106854 237873293 911122790 132106329 545494361 142393807 575429079 349887739 942817272 844498475 890898919 137361675 983531012 63859996 599510300 707449550 890126877 951548435 997544171 899025343 934018923 132939816 800415226 262091790 311020016 704733867 727108493 977107585 993840347 595608755 664155250 902820621 990039465 574369309 977058397 890352143 920776469 922602674 984750528 201263223 387709321 511833998 838024952 393612357 538473856 408707075 695868687 404350633 627502050 776841643 916386550 282382986 513767775 799120748 872509767 563943193 884930598 462170147 827342089 582888002 959305074 809556210 977010723 458806178 546912006 496601659 741492007 707182404 733655131 908794156 953044477 353091840 721691807 355624402 860867405 416291798 756059224 930680103 980159357 571074185 744918948 633975919 725303991 784756009 936399403 448911968 704905118 784224249 943210737 676327277 906389323 605123539 837254674 541301328 944193649 309558658 587163360 193236345 557731549 283772368 535228713 829413985 979831991 262373271 612915774 289489005 902184182 273778602 912494872 880291135 962331352 94287120 546841873 619063516 756808957 580999573 848286448 948659430 954505612 232194076 274814238 455110396 983053739 317796658 610663035 754523379 979959589 496527095 589667725 778154810 856046575 75773484 374917602 96468156 484841886 784185097 906342829 417705271 624823021 475526238 831292193 140109091 713766698 912894883 933365886 526389479 826666737 211078134 346882690 180355203 949190257 417091784 717288717 106375106 438847564 139586590 781015027 585189960 710703612 550653208 684710359 180860205 275754824 367377063 873747504 862819672 977118211 380608932 642995141 778572359 984345767 661359429 832071055 621624487 639459445 99811540 374454030 679849241 728273155 944546109 994648159 731581806 942913825 64815584 447841522 971553991 980112334 469074642 497222670 312128748 620982089 796371944 931848175 362225420 370021391 176711242 803065363 574263272 617245144 637901930 824875175 523445181 745995567 667406912 744038814 128006410 631518254 595342396 722828565 560458529 966971762 826855955 959415272 582642091 597384984 279218720 602610226 882809621 885548952 625684368 951718289 726477697 793085927 309608042 555893954 814487708 838322090 440030143 546151981 835148988 980652776 746288846 757109351 469717466 589320010 976110019 996956058 962067781 996812153 835349884 914575442 293192523 603121170 155106764 465593052 158125068 513695862 4389921 871277657 474154272 546445637 470641980 731593257 540379116 587956539 199084996 216048759 640740634 765910717 811436499 908235082 34604907 146816049 723045607 728570012 638890883 938621948 592269946 630119402 785421792 799927276 592135397 862603232 347921832 602705433 453527778 984648521 363200170 559305993 978131721 985534196 792783196 905689822 854107974 867342575 204567809 287742918 20842571 929193548 111554643 158484661 452397031 767586199 737169670 828329114 157690038 302649780 465524335 605409119 319947827 946589918 703513758 816808465 419499902 830151905 536401552 567414645 168043657 972940033 514167231 551896783 228755426 609136819 332211259 362326645 514240357 855360109 808591706 836338122 329528210 499127646 728067919 786296792 807695417 908149033 726916408 781450917 167416546 562236677 273934700 779745810 652534919 823725420 19875463 956945091 402201402 576764359 390051355 858887290 195662984 970244878 207774967 508496478 55600479 60876249 254747181 680622929 98867394 890532058 176718725 356450848 543389631 651503226 100404127 551674636 118592906 525996879 709553259 886299884 220921595 419699443 68181552 170756029 992798840 996183643 102324957 894487947 388594483 979112175 315232794 814148123 802545830 979024497 355692480 664908049 329704063 614486790 891468840 991569453 811761055 857266984 127125585 693260954 788081133 796195856 435618053 878170733 232602975 443362932 748546200 991460024 123509660 830131724 937654681 947246203 977691136 992814813 145911259 153498005 866243763 927549526 744509727 749802032 436517496 567438540 688306713 780518021 83229934 791032652 875782399 896724277 993563829 999633327 116608779 453861260 537030711 985781688 108204078 421507185 901607474 927164431 112302166 362011763 944264768 963026020 525566986 780018288 243074082 781397544 258439516 409637084 917858958 947784088 898073816 999230719 136304402 469204486 720294483 768976447 648517159 701089340 127175221 407133549 175579808 857432759 247916502 707737066 590153257 661735028 513639016 879098552 528834250 874844310 382610719 444777207 77722283 957369087 798919684 946306656 881844351 947399651 277918020 750868415 135378713 234195031 884560771 923962015 560445421 675771752 115091019 797253320 30152124 567967514 127997771 831264821 889284184 928636348 341481902 354498584 694628306 974702577 782426342 939250582 612790258 633699947 308998041 965327682 755551518 866000746 579469403 635550585 887307375 994368507 478548956 860082576 437789737 952327017 932751013 946667348 71811223 801172788 286900244 613117717 496228387 496588383 264732915 458291877 395575919 433284839 559967468 823927128 493456343 622756444 689723206 810296031 26052516 344811570 297012890 298474615 788174464 995907520 723939471 827033706 904831294 906998513 393471012 571076614 968106248 987670122 299098518 579336326 223730024 495245721 637919828 936538590 539642872 780582508 955413542 995873351 978167070 978782772 921965734 995842009 533952032 800730470 468199991 961211486 883311689 901207496 555900496 790973404 623409599 970523193 546765957 920421740 499316760 947850990 708599519 931970833 163588649 750313555 920895711 950744909 374160924 742692462 570846869 899702816 239927519 879299564 266622670 655932423 571513224 775515748 752275639 979812257 270968116 716929481 718709464 777808455 831061346 875284069 778397759 820057564 89903883 702177979 147213127 746264714 525251758 812571239 407884182 981055174 383521430 684913358 154255067 168165290 842759946 885291608 354646745 553840817 281293495 523623536 363865543 441119253 284045484 629152998 168077908 599767781 243356963 597228613 318196642 628337229 815750976 868084014 408294086 449824206 254011003 689393265 432037261 714124321 612856661 869349276 606490424 830845453 302109699 944766223 777073669 970162352 298798002 706266473 560061997 712838370 107585613 967843226 694737217 750680521 465463532 995141079 750268074 842905118 702423445 749456675 258598483 951094434 574849374 886906796 189256895 422331024 744547491 791236379 239227780 828156336 970772933 986551862 547500483 569892591 305109616 537413850 517566421 686662707 296019302 778617164 59850398 157426696 218219618 219460179 261710970 791733189 515216131 934648758 849809910 917028659 174748587 872001816 218856335 601320178 108140906 917625679 427085923 888401761 931875082 941315155 65870489 881525116 988416469 994909723 438960646 994643002 348308335 712035076 862368181 997580972 899864646 970371383 287894780 879416500 914638125 975262238 544724774 948544829 249994634 251859899 97875247 317836432 445029993 510602736 418971288 794243988 563092798 922339577 760628216 955790980 931497388 965288450 607947335 997690669 413527552 592627778 208362900 542434490 49013953 422522097 574328190 654907874 137883696 676227961 521628453 777534181 668049881 746897610 326167685 344025701 100534742 465623943 137880712 716508941 427896662 780297116 909552594 933197660 692196223 849167681 387119939 970963310 550396235 686852668 944498114 954384042 575561318 872393563 51113645 989292121 454869153 987259863 577667698 770732432 735430428 817129986 911672248 961531383 515618325 903293216 142872242 340656503 173517839 474833234 509603974 839137132 866897499 953640282 901794103 932759912 578850064 707614828 505152698 941495371 321149242 606040132 244484694 580710805 7403537 175381171 682276561 981219152 84730040 495593985 639298676 719558732 542582985 739268170 392068375 937392098 199946484 505880833 366685731 798648856 482955927 743647521 669097670 884272228 983277506 994806589 29416737 132275134 205939979 786280402 115541907 966581084 893846418 940143888 879431673 999505884 791844204 843368310 380165700 525276913 988643175 994312606 77809042 464853665 631783438 882789266 473053647 728739871 374120557 697162824 843796257 947470396 274615693 971655267 408028894 785254083 138266347 804976907 277580336 568583561 890989991 928598127 902179091 952245462 527621483 594045724 151632717 895835655 238557211 762845544 437797076 502748875 831559376 897621965 536347941 593056437 507359453 558288066 109531533 567367532 565339702 689771926 235204442 475857612 521049747 704169170 253646362 582591362 204111389 396603924 145731965 951596355 964842556 977471109 135172600 989514206 498527970 564233145 549470563 602295372 658959120 726071237 372785024 905727498 454850505 796111010 650931000 878111013 576111874 868221773 556685671 654971213 776548968 803259620 753986226 937384650 395864083 997990853 272000655 967323775 838417699 849887064 150741199 340781562 589793220 722611591 148247468 974297061 457885346 506738003 942959997 986572864 280909190 511100231 365453376 646569743 302921605 305815648 935219866 935353902 870732081 900818982 797290599 956268867 928381266 962594970 562803511 908401951 475717000 844422719 217569339 421283592 954039734 981462606 561022205 655541167 111864825 738375431 774813226 963091613 755563003 958451797 321249875 509139463 955331702 958907109 68516786 181925941 420829577 538789285 982281681 986548254 188309360 919221579 831097692 967471702 485004741 635657626 474063994 690586630 910088535 964197365 23719857 723729496 136745066 318031702 925631359 966254854 107235392 838910844 130212159 861889572 114535457 240184615 251282726 326370008 987543589 995357421 142773733 419871061 454291621 542499784 100382317 666113506 450821803 478676329 756577603 805204438 983278551 991869099 512556252 750406611 114014813 341645737 250510580 277600478 448874857 806243371 852930270 964426414 342030240 943225558 453904483 968924694 901622147 961971237 902027004 917423541 540153843 704806435 189766933 518253892 768165014 928163255 174217990 662730309 4202487 393648140 73005948 180628610 913188346 986595529 470612199 504842921 755536025 850005070 563086317 781052472 564087682 731220851 289992037 943047084 528825782 985679691 778151018 826545531 273022420 280968451 286093814 329423030 526306717 917383596 423643290 847360344 739250614 784302476 141309269 362129401 643838741 655876407 613268485 765921597 324787903 592461494 596229189 928150840 220413756 799924510 112439509 430411475 883667319 917026880 990116968 996551839 102967090 907607842 654060269 910967297 22154977 994997280 49134051 525522166 962841763 971253909 871606899 875223408 932825783 980547771 483659696 587032622 373250750 487340735 87340310 510920352 280442782 425443688 408899751 665114984 488881280 698631684 908896667 918455278 222115320 498709221 747590554 881252529 72784516 848212153 891787856 899763061 918823934 996833453 981833483 987504803 166068796 439782702 229664395 384229613 307391044 987711882 636603573 965586054 768484058 779681415 570380469 577248010 673683602 935747044 930147771 995419394 264809220 672795971 525467013 717555596 909060684 926435750 999857279 999885285 201509124 720329308 53225798 360327794 652550980 732105917 771147269 940209928 73845740 888015556 405886636 860643823 374643013 459260967 913358696 913616881 351719419 543729850 56091637 309183175 876916331 886145050 807367825 933410526 142389485 277231399 144729182 261791614 413589985 426513200 299722195 389066593 436324245 481844646 404683116 786770423 212875166 881747211 655778902 803316319 56383682 950830344 570723395 714027912 652235607 678048329 307361586 516733960 953350069 997957974 212712866 574382498 595097499 930601903 181022227 975425639 16137510 333396415 233680008 818448369 315929463 428790562 753656545 814942723 87773356 107342943 185550606 958893352 509718935 525399596 713762135 926082109 810948968 990789116 690364870 809224727 550866353 561421441 600086379 853111240 368753229 456873129 485904566 924866980 593890890 962884209 905730578 909909555 83088273 853081584 260513769 862349472 937880283 992640802 291589286 852988587 919361585 950323036 982682986 999593795 260690914 792953414 72468117 561164556 266598773 601867258 515798821 567221225 870096302 902186521 355535638 981024583 921073980 990524601 740175512 992007253 389038572 685715088 834151448 981550667 300675942 595477092 197617653 994078386 105514023 119868521 126680598 761502976 986689360 995595680 746575525 959884703 521594547 965428913 167430630 359346600 567917318 935046787 473137799 529337602 270959937 386379412 447059912 803286669 30827966 171744616 131036705 889371516 360048035 487004341 260773667 687426357 262343214 607290848 460611813 847212067 174401912 995382852 168691851 832894999 984017428 999375864 315826325 321276434 442461695 892461375 644104752 980523588 290010031 590323952 805534651 962022572 530696994 664034252 604888492 751661644 698608061 996150694 379429615 810779952 953635079 984892525 392122207 693809966 225677453 304641518 180984801 553861157 839602051 850017048 340122378 581950981 977251572 995130762 137316740 635510997 707111981 835948481 88047854 360446543 291964041 449222932 44886128 881831060 266209016 892102634 425163966 639988302 276443004 429851672 613942566 652638558 372800854 387504498 808734687 981717033 505673124 695478449 45403696 829696613 37660488 492638888 267403602 554938069 79798898 647424592 249275679 989146568 596331711 874040855 21404320 98693334 818005533 895653536 212301158 838449293 107345746 533333644 775906255 835686794 263859978 834425251 213910817 938241890 618122622 751101044 924011979 947735873 486150577 812901223 672361101 705119504 370156715 915273640 379758715 502532624 648888005 960160749 28736982 937392747 568326325 991215282 698249983 980479762 113637085 589789928 49896432 269562366 553445386 860371524 259290510 706635868 156432547 251375845 663773349 949373298 610245166 787965025 942589416 961612609 422632220 527096869 853119071 975818841 891087482 938259923 208223245 270329851 789779268 903269614 291671718 520914866 136335771 302029208 796607602 854078912 726741951 830404753 972538585 991006950 162985106 189931585 376471713 586247435 729701548 882687587 666911519 845101869 983912288 984646445 926801808 963514050 696463149 921773901 665849747 934630324 777271335 851831368 385577469 483950485 20088549 101851652 700059870 930238046 519570931 720828496 324093281 354041653 548201978 671102362 743853316 935510190 552158057 635323390 450657880 767688693 801860164 839890336 306945340 741675877 364829622 365109301 943114472 971720441 518618738 802690903 765564563 888902171 506056752 730301358 630259907 819636004 516306430 729804550 580008746 934249703 872726583 953303453 27241095 316303149 76398219 927829551 596038459 770642301 143113034 724119547 56621326 353616121 94451916 617801789 15343915 637163814 697634206 900436186 73242357 657097871 75802267 504202311 75550067 994734888 746984526 957079563 38326669 395357914 65208089 256664960 784997479 835704012 557652600 746007349 197289968 862861871 536171232 814714214 707714411 834598422 622506786 667699342 318406963 461076514 180866016 403913060 500047041 906382553 32662162 680573714 225286006 494224138 973040239 992989414 628551063 986053184 890489008 948978665 541807963 653102386 317592919 837770883 648417074 650140282 446940242 962511351 442513541 649018879 914089882 931131863 857097482 921986716 46766646 674285741 453194443 951533000 83774588 195208009 690356495 693528179 582863244 905180134 697653702 891360377 882434666 930857393 810827533 927640843 146964588 350843542 463066864 492123224 265970447 705072454 914117183 933746139 808022887 932079304 628922898 725508725 243760604 338952544 799525032 938052523 817201395 852386831 21929504 881415305 167995657 235884537 435069588 947509087 569421571 969209001 656142570 836436687 461884994 924644746 427931876 952484390 177261463 585638084 695092599 746003703 327502396 786771070 692395745 769367193 576239785 823548169 292631073 991467117 562842992 596936940 115143474 528804420 998014165 999459725 437130568 812036093 352111430 373831033 621249907 812628035 812308076 831367841 959120384 972406077 398505916 881241962 656588622 778538195 218857219 384090183 965686816 975952411 185197610 995535469 771559472 923562784 979150823 986512010 124844152 808935355 778849251 958233575 542630904 652740011 475895002 795015398 492808498 597220642 958173409 968998610 138111340 845295103 349653847 999045477 410100811 672615748 204045603 844260775 869771402 904678070 7301544 312499916 397924442 404608936 731038085 873348975 538855248 972859785 772400914 858539599 932698062 964323872 960588963 964588910 359271930 621458574 684263891 866452721 334087120 978109730 347713799 852930931 574580605 619756893 669706027 906202644 500681335 509998523 778735300 938754420 926344142 955456704 168796226 922373077 452672846 786384610 918797362 994749228 747709664 750832706 845164906 871960311 263663911 945058667 104744292 199986761 523207268 775332826 417496511 743862871 631516075 977476072 705661338 918549447 356616374 660128594 270634724 510818574 159413605 726775580 383825960 920336654 255394779 927505578 566938030 912294195 264367127 312712081 967305924 996812626 887477448 932737724 572225101 739129099 773950160 954106999 630957795 806508686 713191855 715690602 71563758 979894464 229851524 483950047 993568506 998997555 970601737 976803368 545818335 624981754 15196752 889620846 571818139 843555254 662833391 714433530 129364025 750973395 398776964 914169792 246056059 862770731 52965528 149031833 976067987 976539898 941515163 969175713 147778236 691045791 949164372 955158751 455229096 478699247 204947779 212328069 550425799 658938775 397584430 450577888 700601609 988658744 658814647 665156567 918214741 939229765 593884350 950500234 13347698 822698265 957723602 977914676 116149528 907900518 850154931 959459420 782302422 806378136 357566328 372749367 914563501 917225436 261385765 703526273 402899792 962642773 684985660 883747571 95736728 929619806 706936634 733111962 268580747 414728962 778034826 934918306 392582972 492980787 337092965 446623223 345683770 680270129 915921288 934281502 837527200 881709140 292132754 420412300 507873050 625722798 233975122 368810017 199296238 891866328 643562965 866129839 718166669 904892893 838868837 946441799 857091381 864764473 969365802 999649956 173252955 534123824 563877137 596817515 517667024 522016797 760546307 870122994 124362676 508025033 127551211 984125222 714982522 911469825 425118 161245152 830987301 920638190 528747218 535115682 370727053 744447262 869564738 912876643 469355901 520297444 76522661 639343953 304018996 647064774 648447158 934593211 174327149 359876142 465035842 874595098 71914036 604012507 652456490 682901990 268862890 898269401 162973273 807623644 169045168 263207183 876539674 931409795 840962184 951479316 894513044 930894877 643465233 900136798 90829431 475126071 705969375 855722388 62674094 703429460 304233996 711870250 984611004 992224945 4191180 506162733 133682969 447777591 909538866 968598394 844600765 890088092 476187834 501751787 800630954 911023204 682440756 837627607 463146192 618038563 793197492 824968215 989948692 996431175 245501927 308820561 511174816 760732117 577403042 811434909 829960116 956609581 638843336 862164812 772408828 950462439 2155101 817832490 326315538 899794362 414921941 683164843 911949090 993498897 815323907 938700544 607414002 769002522 22937088 42881268 602685507 900276530 750754285 974820571 779924022 827531492 110486066 447102733 304385628 306217444 37439290 533137692 101931357 924049057 501972668 960637889 67300748 169185366 615199084 927753919 188726077 974915389 52298233 761630193 353556259 560957506 955628829 981590945 679207613 891019214 863895132 866020229 291677565 570139508 990903005 995961078 276905271 422591875 442228846 599443957 20286323 260257786 15760129 856914876 644107523 939400228 742543663 789352988 70012374 992375193 247101204 742905279 461981081 919184438 670416226 790117061 986874146 997728948 356411596 568254837 936513302 998536470 947849121 988201586 660364150 738803657 837677875 946672288 189917801 356856541 787546615 980462076 929643100 962198694 766060413 939595028 973728401 991313513 977799376 982940498 972046901 997373105 393445723 580583589 851420718 894626156 975395210 992167033 417549011 636144206 318744001 385406536 622438935 812897937 643525046 885302244 74368075 642240628 225520287 607262577 1357332 393380583 950931617 986734547 897717147 940537111 380629079 950003949 119122236 672737034 212391395 304858906 45380582 954202377 894403325 983049616 472288804 794385356 971479514 989305947 109097895 725660029 176719332 913328351 520783210 905686263 828566065 857889991 617364813 640606176 55037952 325959926 607790862 780907918 45148786 276257040 831343770 893833552 646212350 850594908 549211818 740794172 836680049 974208674 844136696 929095496 526039301 917325958 992066127 997139486 799011320 932205827 77786959 215122662 324158290 547510367 827252580 933713254 843476491 987215204 78306280 228638901 705933911 747122377 637770234 901476074 420672697 482618215 109705062 343931263 398039544 520341183 708197769 772905824 228811129 430761191 472783766 549732104 231333393 334624020 388196010 852965371 370203042 992525931 886931938 965241877 613284779 977660447 24684577 459888922 405974042 469293448 636060911 787620591 574126354 721696702 141144763 276574621 447045645 644961782 139853072 923343029 738157879 762298123 577654472 831564703 902101354 993122395 410587329 805985952 623449674 930845124 27737569 524944928 945493945 960764115 154182260 646988644 81825210 791110396 403066899 629391844 995074522 999912919 96060918 492274712 652926851 861765917 285223696 594702107 456914893 625311165 977841864 998904943 503787925 741599398 149384910 926292932 943639244 954975884 193966025 949660385 892497164 936744033 311173364 987743254 599873372 648616459 164642276 289045574 795577799 907023266 458537155 716424583 169374656 848324905 199001471 256839537 949068577 960382062 826444046 958116926 644654843 808146381 382732511 752669371 845581312 868718164 631541239 664406182 755209547 920974416 953067191 988973133 28198846 94147693 400635612 611492848 398960908 428218769 95200782 307883580 845740288 988986697 234792530 270081399 127985656 890665984 80389274 554547323 715589563 983090457 426257853 770026853 974436109 992534022 342744638 656792859 82654784 177875196 448042550 890734070 12795430 56640703 155571748 422830476 275317720 726305335 676901986 745466783 742790626 921935579 778325255 802038311 578684384 934987539 169872782 267174326 645555595 915196807 895692684 958783980 589435514 908247955 732886578 758227024 241089604 331090820 52882806 903064080 582177539 961680472 926422996 927600299 7568266 63968057 349284142 637641760 515331856 663745805 609205132 869735701 425821232 948068558 968953687 996396973 715911543 820776997 751515088 929490729 707162224 994349899 879903706 948379283 189959383 562657633 99348698 886959589 415191082 933697442 120976723 677542026 778485707 868540929 658353317 796535924 860285375 865431382 160208396 332642039 591814045 786129806 866867045 889335117 462699690 882379039 887922347 973286380 118256074 227658906 455245320 765414353 851717608 889393411 61019584 365490216 282818878 312828982 882029621 936048839 469353034 823928694 382043976 670733309 965888949 972857622 581003112 845469145 551599584 712706088 522697836 634527607 30656919 911762535 334784471 493643120 671929634 863201138 305147452 835977688 265338128 882268120 766571422 957889569 933051909 967760411 507852789 585993578 647590547 877808489 275443340 284472509 541445585 888519487 985403444 991191168 867455916 871728292 551097610 870894269 700579459 737153158 510838869 911789722 777208487 800157804 339722906 826142743 840494087 882661010 928825553 931872479 401589634 762110190 374564410 513331075 320616853 758160547 171658990 996425923 545448372 940107410 191324480 201994708 751748859 870657997 65435547 89185528 712072320 762619157 797745763 972963406 910072380 935416206 751497466 995678837 673882240 977249451 463528932 947860232 874930731 916302386 646641170 871831922 776756451 992117510 640030310 938563705 680954726 732689023 955182085 976427273 49757664 200503622 814800808 821922347 379490842 381780772 852674044 971986533 929934254 962139288 920117986 931236190 537911954 659304827 460079875 616546908 36210342 953428166 582096747 912693312 534621586 854780462 101381875 308094952 194339736 575953853 574918390 869371942 893264915 920543453 786548460 963484925 951341930 965995336 123956004 664088943 526853909 558062623 347180321 548803233 546540737 892952280 456808064 731204161 204056593 742911555 42281993 652253146 304836376 856903814 817391675 986528238 960292749 989153211 821093141 842739741 923547349 927443862 782903379 834605901 621514064 958929632 45432996 182170952 835904344 852111952 701527064 933050835 127879239 449982879 488548416 559268142 550664903 606518508 458376537 953881098 121922218 388362291 248189990 326892888 66612280 171787595 347293302 743984885 102586728 748738062 925567934 991624582 655425955 955469841 865871064 912787367 439279122 743107528 137102077 549943662 515159861 797955994 716277433 950601823 96330854 499870569 491661176 936013420 651005276 902401142 815615633 898863642 602511389 775926928 368237338 703242379 759726497 766415219 862204149 976150787 57308261 731859471 653851372 752938051 427126691 963094891 220128900 831045986 464692080 522761411 99381677 975283298 77799062 658456688 687488894 691687892 178634797 866911051 897716295 980529569 685684420 911034153 3930081 637562647 444994343 485076611 253563649 559577328 511950255 781460948 457252954 492735600 932333265 957547098 109362495 746800203 952701340 991271350 820604294 970077998 783910504 951842465 14590907 494754609 973230466 991521442 655794044 683220339 816457980 961601266 51014474 828918375 558564145 585677577 304237850 409051148 502385967 736776283 273521259 378409565 384560066 851459467 954160705 973847380 307818344 364315098 422170994 876464404 698948090 879626336 714154310 907445336 234503767 871314680 916603920 937062308 526854799 830079247 608286088 791996493 83121967 942709116 352388364 406546600 195217192 684312598 936349506 955907412 177448319 683237626 429399951 947348710 173141233 188269213 131425888 640432493 64973167 796210121 496358350 782083661 571295314 790254935 25530016 387787821 199547404 382479141 491147457 570998901 78339825 213741844 167553435 250542561 362762695 491721542 794778583 922705716 980258998 986323877 280653032 585033662 376046939 644828312 277638324 956551140 147413894 178226146 644651244 780075707 907646576 920798133 176979197 740918126 343446022 990303242 610187186 782112532 155136236 764136238 143340153 272527743 898560848 957787472 490185658 520108033 204292012 835631726 268817720 321967224 668101567 711618112 648570850 902282931 991339877 995242113 277375166 528423786 64148997 916355887 152469681 866100002 463851918 696312732 284321022 593247200 903530738 950843953 230046550 716519877 939198336 977365438 552584411 901241935 340836525 923581460 160968647 212698645 638334538 941137702 633156570 852974736 696938122 746113542 805547691 931114563 35310652 324138883 359061370 565010936 1433920 229439535 535086215 987425360 452959773 536127971 15096924 457426481 743480787 878378468 338358766 654052736 938327302 963690165 527374344 689920288 672434116 775914701 261887066 313685094 190820915 366384930 321845825 737616573 976247066 986741958 460645861 869310409 326351546 642788825 837138202 910047507 390772905 751681838 193802709 240576667 802199197 899231593 582007657 851921825 894323291 939581481 157892892 402576746 385215035 501980878 913963704 983180361 83783717 310506389 522610905 862197076 633372485 877629384 980201813 996383686 238516975 564051658 159336044 850925770 613994719 644885090 604392079 770272193 710672667 803923261 400349174 723451233 603008915 919675074 216482355 960121096 813070248 847698541 158372661 654431955 207813441 858232928 132042973 311831773 371954412 790301304 643932228 678147050 817555643 822490812 330157197 451995665 618446182 996404414 448096140 571986756 553158391 938310227 239566139 498795678 610404320 649461868 660547848 742810647 159832952 166419022 450851634 454231800 273585874 692738758 937567298 948727532 665431057 908938104 740682953 861374860 72515062 106850797 341626064 452993775 178070720 508912047 619124244 980727553 341988088 985233387 573166203 660128016 594677410 598050268 826296220 913509051 589811491 992868993 279686954 863650439 125851991 424439620 201247528 696906528 377399268 513521161 726679203 893795087 785022094 852515663 557867169 773423457 143471252 724711743 171745918 292505650 452713665 453514984 17917605 252176610 508944453 538772322 372217051 708255933 256554198 487781453 638206840 774559181 651373548 662631905 316794251 786850580 261455938 526378822 105993706 888355579 556820083 697170175 304894127 808003315 170268847 197633302 119508291 165822182 291152785 878337480 965137263 999810228 882560167 926356655 778142109 793010739 886319165 928084642 332300660 505492395 453052007 698881283 911519433 949267303 466076147 863243529 470364303 784840400 317752965 756112917 360221657 446164330 843685403 907762543 518181910 888367507 465922888 964148646 906021630 943243980 555693607 610624330 835982376 951063952 22225632 857992476 758027060 920269570 758900975 960816857 367484395 968588351 183944618 195002136 521704640 876137891 152510352 580606165 911337821 925713713 716132226 994813357 4046698 508357550 169605680 801904479 381570857 905879831 652665762 799001842 72832225 386601511 96417262 995659629 86017842 419892541 838602116 894541682 565129209 972108278 580791296 587567571 946366895 954293053 961268553 978003581 669222847 900100803 228865774 366243163 95476501 333131041 913824569 969884228 207570669 555335822 847326890 865910414 338621626 610140012 297755957 438601261 694821875 973359530 16497312 332127322 79691348 116328916 122758658 832851060 128755010 690294170 727086225 770666960 18295094 903049994 66558384 430516741 133844251 909476569 808260046 889620946 844407351 927373016 483881061 879264405 612110679 857589816 559653007 791317920 561134449 699380784 624849195 854661767 433497785 449293178 4722850 462711942 574405840 762471973 724121671 798673978 343372719 393461888 873232951 907449999 938166913 974656032 714908256 839113545 133946789 331012350 165615411 607691402 102333088 503216714 9962110 123999775 484035003 813736428 769810868 968115452 689929497 733441080 549115142 910086973 53193840 115827542 147496580 182899797 513237438 845845874 376046556 630509882 502933186 511226059 372472333 401477344 699433358 884876494 422595219 867740582 875230225 906651320 701697789 894661814 575494188 934292418 883751136 907957336 619568037 855700666 230211442 791145574 127330706 210490936 422644152 585783922 263679169 865997152 312407135 785359158 457286388 597943761 756928036 841696780 952117685 973646889 730590715 828609086 224500055 899657491 749672986 979060876 395936483 634677448 447426850 651061201 670271959 953472222 493485042 609258987 239908886 499211220 65192562 774822054 258691337 402976226 398634354 974790400 83528403 549708646 571200505 576290847 144719578 923033751 768946039 779393304 750809785 777976979 381439489 450212189 274927697 283515867 551242945 667828316 473752908 637707285 154761433 661423130 448255265 802031397 712532201 732345819 945243124 991732207 258485425 812309077 290977692 361277791 901509177 991880691 59042843 82059332 110681421 651532561 355036097 429763639 371895427 482106136 67489463 477205613 227027536 997308313 209718167 775332472 801489892 867575232 191630297 567623692 136280762 512302059 873899595 931846630 933916370 946532227 168990638 595692657 292470956 962900434 314447928 372821402 534903330 787853984 240121712 806599284 26205172 887500753 656125802 766328015 67537888 243521222 401331945 909123006 553145876 690558817 24681053 725780304 400881005 567662230 887960978 983613891 784276224 852242525 888712490 934724590 565483028 982935813 634274400 646515393 682927153 966397398 756862041 878301674 90740483 591172644 124430977 297129932 436633570 597444985 332695921 994552202 20686742 27714397 378886005 841635429 507133366 668529484 834341405 836228658 352663287 420890641 577773909 586630776 348630286 531858250 605151 635334138 686585235 719317672 898929083 954339392 769697040 823311297 516427551 554252887 542181071 716787559 951387462 980695386 714475566 794465057 553726463 999134498 821757577 934103375 941546014 988232535 853874027 931746760 129313440 875060143 300784767 549129502 292993058 834388096 621824370 762162486 998747483 999009260 62166004 129320033 785200789 870869442 118427907 720730517 612677909 792069462 815551529 941920587 228222548 314875521 183439220 834338732 708379313 755372271 197191948 323901202 988762922 993058311 979656242 981148342 631758294 925665963 95681945 174192828 160852863 526773622 213944577 217024675 702512687 936261107 59055012 125997281 832113188 985127123 27303399 718742057 775178261 833927557 230277859 804523857 909768359 933234328 479703258 775997230 157611558 472204805 134500861 688893459 801565825 885732261 86171673 708147574 9000792 719124481 876762483 911473008 803695182 806831632 857395255 967070390 355304748 490212112 617644265 765368547 810529250 855982617 340244430 409173924 374467382 680033668 745818174 824159682 764205543 775547190 451193828 968988092 49822813 964392226 163565107 918008722 553101658 815346371 159079059 228273991 955918454 985121500 460451360 930552068 268964089 288045321 42424738 383167421 848788210 945775841 543685210 908282828 627376005 965204133 949512083 956045878 434005036 924561428 996695913 997542608 334396293 665424445 632630432 955553146 861360844 875218276 89972412 471762977 298815018 715906833 773459524 939066940 150525600 821239992 955952436 997685303 720954663 971851904 339000903 949284957 94431734 677064232 968221889 976097234 13905749 462422397 98129393 202835024 755938182 855225236 550133360 861333965 771986966 819862363 381087500 472096226 644658880 776163330 460437628 743117200 167146324 871803960 300519028 676813530 902719299 926670685 29229488 847198623 128705431 188135508 88040430 951101548 609023162 892429507 392384996 649912057 74386374 295727017 952963793 978643164 438886169 794907634 37612243 625030898 237294778 824404906 58942209 360014712 720257973 936774744 8391905 907673165 515903477 676823215 446259061 608632091 728216361 910176072 4468524 242850259 981021500 982840205 117429854 784084642 338141133 523949702 3917990 63532394 28724985 740915902 117136135 612651582 21751655 88498021 956757701 978658228 382563875 839106344 436311703 931026766 371665202 780601236 990501423 991686322 733086237 765502934 348716864 377468444 805261147 870401202 395316613 942812255 349610214 676326328 62860228 439648525 897885965 992712589 999510688 999946536 212340747 352537297 864872806 969752384 780525164 788409403 134009536 893347074 741421676 858456579 571018335 614978609 207843332 750733268 590371141 660846335 820899923 997194833 26160313 183285893 227485387 510505230 547194 602424298 846111762 976313110 651480174 687271427 206295741 799079066 602068057 632280612 903691843 937507384 587368044 732542354 996447796 997562311 279738255 887835113 247050523 286662899 597385071 614318532 283886244 537867473 993041716 995027028 885003771 915292012 191158571 511646493 516355203 883289946 665490553 929107245 878365701 899673788 496549132 778149995 888896186 945881381 636910335 752584115 39464800 591133671 888446694 958542384 873830780 925116950 459239880 615043230 162713882 442673231 170824111 185108436 396378061 883327141 587676965 900628013 648967478 732634743 851505720 947331741 151835845 373481800 849837121 962539965 10911469 142642909 854945878 897601034 135208957 449588109 184278866 674223170 262481188 965871362 358377748 558874954 771425656 970843502 192332463 368939885 333766686 856604893 57511070 415047530 473028664 979324350 568744382 914560370 580739270 885888161 527192997 858116117 651658572 694740529 14200794 399116012 311289275 482698072 741431127 883530268 442660105 843167210 164600477 884251751 649395383 990547801 551244428 835820869 225084308 698046793 881876439 968719578 430081549 635207765 340516626 598604288 123713030 177667379 187273409 862861243 921200314 976136929 736493739 953431094 166036448 201590458 736019212 899846354 563237515 779983760 9495517 499191501 334627657 742335601 960989703 978884854 427456979 601095245 405720342 924837391 552254547 764942519 623313234 921516536 259899132 908993923 410102269 538977576 710622988 909474125 975028056 979105957 207645227 937050150 556778556 771599405 415490393 842226442 89398440 601606931 267858395 860520014 864793809 911980161 330490394 709646492 890251182 989817116 207978216 840911027 957200806 962396846 628532838 817753792 368147316 921442689 531194711 620989001 525858327 858554009 980500358 990653105 761265795 799266322 857222743 979041957 536090658 759896628 433015347 837225995 389833521 828475096 558885887 787550824 462388204 576350594 406545262 484884503 811052713 938982130 815135749 933035916 755328108 977597328 209284662 318225809 315331924 505583444 744396567 860559660 482972688 626018278 960367777 993353127 621543635 861129825 484628989 848825371 775125541 877813787 389147058 984864394 764439248 864054997 494316467 503497736 237877880 537943894 451787000 673710657 853759993 992664030 747206983 935541834 537777493 870104736 815775687 873948089 502870287 522858178 469942004 702546654 405868982 978885412 745112737 754484756 139192380 252524495 610315671 732788127 550690741 829405885 115207296 181751713 235197655 825410827 494079528 735309181 773486699 812581564 110962992 619119512 955564402 970031402 278276536 912159639 961332435 977237759 824186279 959415315 787588079 818740239 256595434 703812205 454864351 939835837 730348093 855279491 769293984 923459195 979069264 980914213 752351267 783540958 114390358 139092226 21595246 407357715 734692141 946545874 502456310 661452763 839233556 854069739 519304695 764498847 413223472 461464611 580373553 703408723 378266437 425496097 589151345 892755731 569876825 919224725 879162618 913631954 978096724 990387001 92252385 288303166 280034953 804782931 914075211 955036195 905335173 991519928 460667159 502401164 419070637 711391308 485067899 650600158 524266388 615869990 113337464 291445295 750303671 932531525 662939721 908948900 778898861 816972555 456389857 582459724 110812597 227416293 836983798 997352922 814690738 849798890 854867662 933951798 36652245 44222314 156886520 196404661 442876465 879835046 793283096 958050573 311446765 959089351 378646783 699566882 815352074 891384092 157689070 213852650 390340468 924148075 358971950 579520382 342940253 719654301 463241999 779739986 462177431 667379556 996555851 996958749 42524693 893920861 827172018 922103889 987805694 994054180 615937975 788446194 800424604 982225870 605709318 926092293 927021027 960777240 992462564 998668385 914601610 996127144 237691236 608276909 42082224 237166016 799369742 817893251 370186572 731098335 389323272 886290474 128383405 807962474 939686266 946115544 600696342 852097074 371339662 949808903 746802374 836461315 674173160 945340403 476275436 902852898 536152037 963724050 813330695 979768197 925757053 992976124 864716539 947051664 283825494 853362345 891116535 903086265 670752547 991388230 681677150 715234260 84951392 157104046 507209627 535526983 822475003 836263889 241730340 921326624 73372307 415608624 369831652 909236598 691235345 751076696 225072865 387347764 164335264 647091356 424439456 807941893 466926092 690462277 1771666 707679803 529424098 710864603 942638594 979151540 490538820 631486984 162540396 681097419 692647990 890088528 241543882 828714042 707694414 900156855 473907949 668083118 327656091 448446871 457148566 796482563 89434841 691950167 275448070 813778617 461663967 976573522 205046874 531051069 733534476 909212249 175744522 461665530 474681107 637154151 844866748 848786581 775852750 936456036 980621555 982744054 531785269 854178460 948660134 961293606 862092037 885362788 494391278 584917385 871437365 911563851 781410022 919495068 95654848 364241995 894038292 983201017 45330004 384024394 978090391 981857572 241526657 422862426 205423855 639776893 237415339 641602122 167388297 395551976 225514705 414447100 145223703 361666017 170654611 980604497 183573332 627824924 633053192 826632980 130274410 343886282 870349406 913600414 789353283 790631394 547479063 825866655 249047650 521589047 265620370 285788743 383178786 826816373 416876279 841040443 737906130 957845307 570744762 680588474 733501594 813516728 57055661 85348973 283114423 743905961 578300350 854943457 668886149 992250013 919835769 995261479 493726108 786873390 46148490 94045786 849392690 898936713 740291796 763916153 733183818 903478687 250986494 858612254 467772879 812044977 258776156 786287132 156583133 323476972 429111285 548033323 615355962 849428342 26126984 627065313 897078839 969155420 839143613 914112482 983170747 996688911 477024162 763054451 964143193 982593295 470473967 890395539 749473388 904673623 115981700 973397921 961521515 986465503 140602473 963585432 384788175 947591123 535039650 738695592 978310668 981671969 109458425 598418998 212790048 879588464 204458193 326141270 453079085 692019120 731032553 796121058 270088223 738189194 323595737 973463349 486350769 498500657 8679024 109233899 749877477 874927323 319614331 713106741 895762992 960407106 111912952 511874076 208779165 356350638 359068890 602616644 107828206 995602249 911896591 928896387 714263452 728826362 391241463 402943922 304167593 996607330 780590227 975871822 485048068 900518021 35683530 777086373 224821529 493539007 349562573 843477995 567244269 978130764 534712509 958103779 404681656 531930676 90514198 429822385 833461294 964762519 195361686 804121515 326204828 378938362 620635494 772963630 491555683 768083204 976706947 997547338 931747529 973276696 290719037 582628992 789194439 928766791 619761727 842546505 92772797 818824795 114982359 727456352 584537504 877470797 693697417 879899663 501366679 817426225 949195074 983614625 10728826 464964889 113085289 965093035 917651959 950691940 27745661 972607272 561409558 991279783 917519844 945244328 812832372 846236456 163037011 335241871 671628761 777715001 264934215 664621811 220029629 823086792 465830925 993426411 132486050 133353124 972420606 992775474 769841259 776467589 409176044 579350515 855550242 927671699 694190823 908329772 43021988 855091612 988209994 990784778 188706334 964391199 912156914 970284435 682787521 913298885 320390670 684409599 275797617 847104946 847662874 876060611 89878449 189641970 734319828 841165997 640605886 949468070 914797395 936453969 777544402 814159059 784488225 949231832 897527864 985796931 686820338 914578017 560451517 840163742 22095200 853671849 245658673 884198988 611619364 741474461 454064515 839030370 687765554 988903842 936608763 954736665 990199595 995570368 741061022 927154698 121558064 370483250 348512787 728702704 235396100 700557697 789107651 823373463 527346906 981372820 286513047 703040020 812691027 921302928 579990149 867461584 629516329 720488108 8080554 611489638 606903671 736192586 815908937 954923970 869554890 890932925 652272484 751778622 957517987 960404852 529283324 715211638 737760168 738879791 205500402 463965696 375661363 805892101 659364706 957880144 767718385 788893321 285105434 589182348 12412597 710401177 606739442 633725405 172901406 218087567 962947194 965149233 316849122 840509915 221819337 964177485 648830548 821152467 81010973 982740550 782972722 912318969 142662135 296802634 607650470 924776140 50513274 997426422 856580779 858356237 310999058 677742774 486754332 501464216 822619802 956124292 161079755 256211450 47158733 449502953 734179196 979829119 883397480 893056689 306587767 436286874 528913790 841090710 211943967 594887999 302172508 990840389 923580730 966723405 341611246 884535757 527327391 892108257 874070460 950932200 849448477 961897740 808889696 994524124 577195008 883095062 109652375 815527248 181530231 957702120 608441097 921871525 448965719 953398615 289999536 325168320 203986335 515802933 811970091 990337924 864519782 977988500 538445226 822749131 318835694 523787884 931756574 968932725 441676487 586723775 627498985 818045923 843279939 891371282 108937172 470506600 381605789 449220875 190477638 972644631 318633256 950154688 319958373 446730206 967889273 970618309 966986849 981542893 525943670 820787307 938455365 950591432 355539103 972409118 194074927 474957533 646960199 840538405 894850493 907374463 839042112 900492322 668822183 852013932 704822786 826862941 782684240 922744106 222735418 974820630 145090572 700962883 10646581 531784477 551983675 555568954 633826661 703183203 538546235 653759088 797533228 872041961 356663081 870267749 699024471 859916138 806320373 934362394 863183129 946143691 835506003 896226817 945152231 952641444 288918538 923769116 709521133 880220615 529705720 615724734 687585984 777880026 59174432 927300466 257509946 663408771 456473875 804958776 6316172 940200693 776066191 793202494 989492491 995879068 334928859 470550004 849389652 968934516 919458357 995559095 924323878 984821313 227760128 821710287 700668936 918289883 303297862 602106219 135379144 449507280 415883616 858026214 922456445 985454965 224929078 720720788 355013825 417860773 714516477 731589676 926430871 929337538 561154684 826173231 409087999 854367615 977749248 987575818 99856985 690663393 557866546 608568413 532828190 637953432 162920130 467034708 254927390 680731385 646017795 953289964 777767494 798004179 151286652 995122742 898673816 914845778 387884826 939211990 143274530 837574014 682838479 908888054 921285559 935832949 724066069 744199341 942436162 981321170 786913611 987400098 106020842 580172421 393656825 765227418 332021380 700325485 608340055 715730188 643778235 962135947 923656632 962559600 411584175 619964022 149113913 224838223 658491909 860797501 41737338 631618262 86817201 658025861 488287883 608882627 259413355 997551199 588551569 876759740 730474980 927184649 357639096 418473384 961422924 998665669 624211530 870630979 799232089 966634813 133264930 537474574 201102283 921052856 728656101 851369435 839987227 852033470 967711790 996271361 98478452 988429752 386007529 641509673 94456798 695347165 853557155 939671811 957909671 968190676 486712885 668585751 131029328 596917082 835727926 853229601 429999931 615340681 856218405 931892083 268779232 554653524 440445185 553391317 423604421 948951685 795459895 918710019 450322726 503369596 403633177 859076891 157425454 234464965 283408689 595875047 610064270 661599163 942983772 987238905 936604450 974524886 963215793 991704844 111782615 205397524 46081327 339694628 975796084 984582432 44453350 414572649 355862726 560054936 735210728 851952977 624593677 891026025 824855820 968544270 431827382 965837334 964979995 999232644 142407622 226859390 636801660 663235032 658714911 726122284 76776903 642396927 869156537 946510908 454446249 894723245 236549800 682897604 561222090 840491186 807849945 947029017 669810361 907879889 387550964 740190528 219407599 774118016 911058777 955933019 446288052 512475633 112234119 729303295 760083651 984041375 993251577 996945773 736123153 887407137 934672914 960645704 771822149 956535031 356181707 423929811 846452210 874446312 675630117 854062467 156372412 855302871 928965309 999965130 814972193 834436525 280392358 504236698 829375669 995374676 932842473 951623779 817994174 946340477 640081104 963891983 681887092 714399726 599039997 936836499 869530247 921854001 907588905 934542502 880106804 982259484 481123493 785823619 778352897 996148625 255046129 856538669 305123711 345783905 707253832 799516188 335086335 939944752 990799852 992025005 712751289 750929376 809508550 871430476 386923667 488243559 832916653 954812050 769371468 807713907 217868972 570284202 163667986 166312052 574334608 710029649 576481295 604805853 632897405 907697023 762980989 993328561 999492026 999743610 892601188 995816290 248638064 466781540 804541818 861083113 467515986 844764875 544538087 673040316 110791682 594914833 935541055 957381304 786751780 925712822 873572198 956153377 485101995 870975932 373614489 671148536 714714351 761122529 391458039 928266137 65726079 215996677 971043789 992215939 618575256 968875463 415042479 641202818 732669918 811806090 99458031 971146535 329537448 508770461 344144778 538686816 391665943 496221507 385225686 591954216 990106601 992863757 660877033 922052982 482590976 770333441 548025762 801314556 590217109 731666806 47405074 122058848 753195228 875062373 169755113 297322332 181631811 438085567 854127761 919849009 399716524 658582723 205977100 720747923 158677799 227643229 651335706 715487360 3803793 366383920 10315204 567872682 288517144 799266714 813098312 981848974 626956902 651040365 783570775 840960766 166687703 612505547 424085709 432786524 684611033 881275752 581588790 705842656 994945894 997371912 280994438 530166690 360213418 399947211 552372154 801154984 771071619 985429155 774971701 818797934 487439848 516288609 940740146 979094698 106265729 539659632 601920528 907656292 342964032 879768715 768119294 882544242 672200129 992682913 576876805 818204980 109598883 287794693 967412175 997916691 211051947 405811753 682442781 713579548 457608030 587031786 518845357 556795035 57111435 877217581 884129589 902164745 96897469 119532242 669823237 747209247 244856449 342155803 855233276 999328748 281518165 523236728 255800040 924131408 375719703 861813963 536978329 806636854 223868374 868406355 690450004 766529230 81116080 390696636 736547736 914882433 272300727 996297270 532702994 744446666 502481770 508966140 991612294 995387604 147983063 802239829 321693305 347412637 709187180 859825440 285372859 592184446 214974334 401822257 394386156 658956443 867848787 905363710 886064242 995759615 263622557 727701008 961195690 996091052 213096563 557100822 417146760 564319646 20033762 261251188 832487045 936383933 824876671 943294015 966255064 983053063 111729412 739777885 351078875 599178293 499963947 995631597 897283295 980164000 857930882 865085407 435090852 812272393 31340505 313897275 526262206 844714383 376689334 984148863 631593584 920316603 44097890 48666430 437603550 554980773 844083740 939246935 106944402 225127069 691164660 839804143 103617622 852488030 641430465 871632505 86861689 667452761 483160675 540262484 131851349 807904319 439926754 969801320 290899670 797295985 441898792 500472828 440487460 674291145 300094414 517737398 492907795 626667811 105868688 877613548 456246682 653175579 498002689 868185391 391204497 748558268 646683103 747749468 845439215 992593415 502766805 883275876 713164651 755236815 122481115 585044817 372873426 968718246 664542514 993251085 484960199 896638222 73721993 318511371 621569501 662440567 308639543 416856471 352513556 392709285 500299771 551786855 660524238 854509490 243929993 737014962 283199886 987006244 154724869 234257482 444039170 493699515 876195573 928755811 303260765 793127619 187775543 382336350 714513132 757618391 575475546 864764769 95844944 749974529 977573047 993894257 884770880 972430848 175193053 314860984 831386934 839660519 234744826 714483147 761375120 956298417 521621882 693785990 218799577 386444308 948580397 995039516 906198504 993652164 601963942 965757495 477394314 990933312 334999103 931236135 302275475 667455105 256271180 736536765 332608233 354208146 583001804 618245821 221967482 963740465 58985233 385324943 573996175 676404487 703688115 901579602 2487455 685924893 191553916 947360400 934843490 959922795 895398346 960538287 749671619 989131317 800314635 905353191 392100589 933522197 209076135 224318579 944020610 951673457 120802438 649031938 375891354 393620477 915612678 930857480 993749206 999354196 989281438 995754721 743535375 992989656 459193944 624378795 792602727 944155861 736741359 762128332 921734848 934688021 512400542 882198931 79298611 282959445 967422996 982432614 298044505 498526483 355276695 501613826 978025280 998157453 518899196 868924839 740209773 871260782 221936331 907337179 515287054 516449520 264579998 379642339 437055145 705647714 590735682 803589789 835137147 857714033 266882718 954488376 384139678 511227149 686583989 915817426 992179347 994429617 531039070 700193503 415652851 960263403 913120604 930633157 45650023 466638929 857554205 894846167 537370572 659157397 551748366 717510428 744376692 853144422 940697806 950801374 324755929 645834186 536931549 862895873 980895344 981450162 146551783 901660059 335619662 753032134 886502215 952171545 790722042 874123896 908108522 915616261 976915768 992272659 679961409 692269321 156718756 621667760 614435371 885184688 772543779 854833930 570840000 992523219 192411728 744461554 209562040 299427990 145685630 622870685 840497841 947761821 430617761 830471288 261627943 842898972 7620388 958865241 697809476 937256478 813988568 971067239 723570708 790094656 498278322 770836519 446141344 709093818 486236640 753973600 700276279 992528150 889970530 912165583 8937457 826514470 635991863 781430049 678474817 928319746 737493730 971951019 992341146 997554923 48525661 226420329 19520938 983613303 682128444 796598559 62705948 163486603 582801253 925199708 31220881 534316933 444144858 774792727 858230289 960364429 529079564 936163662 844444276 992961962 449380356 955101549 731647286 833690253 962715620 964029709 841052930 868746483 604181240 620984630 861006674 864827397 906298894 971653112 108558327 699851916 640492237 915329533 255279796 621021720 354041621 682677821 872363078 896124155 353510528 989089555 922901200 973438229 433910317 756798957 761785009 957713939 747357598 766980755 627220669 901090518 53681527 465362300 45424592 968975083 599232527 984388975 170517185 440095340 392155588 502468686 244991657 818743069 858201484 981887034 181251940 597966882 965539022 997805232 123346887 587484245 357766201 939319624 102410496 290254701 186569468 981428885 565797797 846757474 218646969 262846381 160087606 178379813 734609335 807672442 708659549 930044978 778282583 825152216 591941883 837140643 389420755 836862744 235053782 295031279 203687612 740348378 430612303 794692783 377753082 514108315 997356994 999808456 625107972 943719160 335833138 637163375 609773875 803944931 914082702 971042598 256659960 417775562 716197985 789744076 952294276 977316171 205717739 407461634 585095939 796249403 329654895 646589760 55666163 829938984 181376037 880770576 524972366 688157897 931234544 940247668 543701287 762846816 599288082 729845454 151139000 586038530 504335124 542030833 545016596 978400314 622565661 946235584 57407280 702569261 338967417 744129723 188255830 262439385 418152232 542051837 262280266 820459698 25740633 907495090 280617290 643054904 307879694 482451131 231604554 552088015 935714713 980635824 332934741 857018537 197898915 530796042 992038651 999918904 247306087 667119413 766818461 894250524 19809714 640405450 6326531 255285370 800737680 980051768 238678139 593471490 875889209 973736804 506822329 964146628 905230254 964097275 750166307 988101661 244336196 371963405 390834151 879047219 850091389 921583478 305846840 539157527 27214281 962175166 175818615 905091953 493833045 963416566 385542202 493181173 156578052 829811029 611878293 620406788 837512190 856039854 42348214 86539511 719207043 985384895 720238680 858311282 650162036 650506591 567472341 764066481 39633054 521949815 287513458 924807176 919507661 953867499 32549709 880940718 650942245 931584590 471472949 881299083 445552174 520815484 42832251 900461205 214652235 735035756 816190123 946884184 369543354 994543864 326204052 438788959 782302821 838775071 466226781 563225161 421650070 766930847 791293762 800914159 264811801 642374149 49061667 549519383 367143720 915279401 85717956 346481987 434042072 612898389 39975802 517239403 427182100 474234175 926688965 980941785 311430739 607929592 916764744 947179110 804885606 905924172 159544043 966729801 693768490 730132274 227685215 566340784 379357072 576084350 807299333 878784123 161763441 471019581 551750602 994897294 212649963 406991366 311869946 377037503 218404000 784021835 545126114 876345918 320106409 393374208 507050947 733611799 38065815 956372028 932159154 970532489 510838047 609119975 412074574 658002134 192469829 292466746 797523131 907791842 198093179 773736535 954599701 976157677 243514191 775226513 233511970 244497231 496273065 586685181 659444502 936934877 431483780 783355431 478009507 994009326 725907239 923427699 756532111 949798914 931229718 981822370 919649574 975000702 540325104 599081008 585152920 908092295 506903970 984811592 906839756 918753474 626708212 674307138 503863655 906850294 740253465 949404239 475666809 807545160 78915429 733414976 13840827 758568012 254620940 655139264 334858436 423223923 966038190 970369463 534061980 686590625 967323633 995851803 820668935 959139882 677450400 770757073 716938719 910296772 759134856 998387145 158509039 280534829 876008897 876757890 623713164 823990556 585429736 999148649 275835545 419983863 122720451 845850814 103276798 806667632 903222451 997261621 928139024 940654300 438413676 608185219 186049522 866423828 540532564 668243940 745521301 967443245 147984043 529008738 919893435 963313834 183477187 311931184 168296501 271142580 255880252 418451634 989283460 992347653 275079967 579662327 610836753 982318789 885455016 930143561 178697641 250997342 156220168 590376520 830336745 936206767 146188313 319667884 398337583 997933419 38302663 906793456 590223029 878083856 693250218 861074960 71797532 148755053 923460594 944594572 843136040 855884352 150351702 535299160 544695947 625113376 833680361 999192463 425209491 608187867 327655468 853570514 578153983 977121023 113842691 640114319 408393087 541701403 53635794 927087382 415336777 631759153 655297828 750404504 354319976 524429796 189615093 997000483 200891057 966545985 84474518 528501364 92436302 572601566 375229845 928146896 54523253 419076498 734376787 813998003 458423862 978235439 416905667 543930416 117891202 694443680 984763895 995654361 120264876 390842112 893302100 961415574 994805499 996288900 622731313 648540047 125725226 479742439 546624426 730834394 479491921 627953344 680893618 756715709 848451401 853156981 902487938 974110557 111868297 657220007 239609398 657538939 68157338 555704738 534636420 804599755 287175966 420243515 603547000 921074323 144731705 194833470 900722384 967693106 234105218 689134051 425064363 699104784 948848617 983853678 908602370 981826878 490763857 992085281 114495692 462819492 223855724 611897591 78008575 749772073 552311007 555055503 327142716 970237855 854967995 959484661 79665524 97099384 122870558 775019530 338332722 610204227 421858544 424562056 257410062 523948640 144055519 966206421 317244569 628281260 633140570 938145747 44218563 637525512 810945496 827274120 54988164 84345677 151399759 220399338 888889434 967361039 759559485 775085655 852931687 905352958 383986209 549165507 893612290 994415348 533959745 749865750 56563112 791671122 515695879 791726458 52865312 818687611 553663942 596351504 266541264 512084512 735103051 812436835 953650688 998116140 26875906 403536012 777318085 924817598 598107494 643685783 6606055 706107736 316091601 564712122 153935431 285469871 196636870 510009552 49650861 779148852 698811030 880106473 304902071 397411647 774010790 948663410 695899365 871279155 101717922 521216885 512002016 628323572 575845790 638868945 815639625 848614023 324600446 362304977 38569444 208508159 541725141 650763398 476879569 680107325 37826140 673995840 789966131 962262170 968501451 994198836 749133045 978215398 94490804 817660118 639158378 748925974 657996545 984072546 694589990 908405580 751701816 763443048 458661041 654497714 15731747 830744846 554390387 929156125 754010618 951078167 965268262 995892025 798399288 825373420 780592032 787538490 401843725 544415625 879790783 959771143 27592806 701486722 106747592 221027977 870580262 931519303 83686462 702710893 707732254 817796921 754676669 795324263 983254685 985893933 8912636 46321078 351310648 805903001 311194985 531203552 458213640 631690037 927399400 954135559 5893750 720228669 302523711 368953555 502954883 532061595 674843880 976582732 436707743 865949808 255623839 515775397 431595451 575799386 152973593 531960647 627006580 890316304 632664684 852002174 554440741 600999253 784316006 992926241 183375905 196226155 916366415 987825030 222180523 905298757 695007982 984975448 837588598 989605436 334248367 893473371 948450158 983985786 284344900 816480326 208199287 509739055 656334573 967013454 581425639 882632461 620793908 779202889 755273889 807811395 766636453 987669005 229040932 413399303 858084705 934419791 869907321 981154578 713800991 887687985 653900174 792920978 887826213 994664237 118428904 607561071 77967313 715355499 137579332 295461118 871670385 977344381 742899602 860421248 521988659 935630169 702924246 957962947 444506678 867138487 961547281 988172519 615351919 672207103 516065172 987890837 37526296 908649398 194445278 583723371 2007311 933678749 736930790 906817484 405922578 892973982 282873095 412588344 527953897 881533971 458768759 807781042 495413915 885011664 731936355 984190011 360651976 821001903 302355769 319652901 658355123 860109886 978094639 983698030 863206757 873501560 183179237 427677793 729184929 996685747 471338642 628165281 266980571 713886897 424873573 669813258 561071162 573106279 708561176 965897596 749837340 998404818 173479422 265125316 864076342 951796354 126200115 695159924 796494371 930242656 777469947 951138423 810031891 989542820 327098711 992276614 794879130 883256354 871658775 950685125 163823026 557071632 963413320 964837730 472670020 894217300 883180190 995884466 188765000 862053083 324622419 936933434 736529828 807748696 792065476 956191236 907119167 952610741 108860836 482128713 287007684 977552096 66621779 813706223 422051704 756508796 680187090 865858918 172608008 310096740 970394738 982977061 482452995 827228499 691171692 813214371 816398312 903533704 736221868 814681584 205097152 690651687 809167891 903671964 790083994 859487206 732507072 787733773 707955741 877442431 545100704 839163430 288304134 320629297 449595080 795890253 913865372 984802898 466261278 514051186 202664230 842613304 340827206 739544754 815107800 822557649 741950329 912729702 955558050 977825497 846062103 900363403 620283563 771252333 400247692 928925140 527197901 861325863 474998319 960494237 874930490 910661209 515726253 732055738 377286563 417231883 270401447 602410481 979071467 990141735 58322333 846791713 863539609 949669344 921260994 930928306 828777809 970700677 896152440 987851345 512562265 533997439 282200848 831348857 546472310 809163826 91791663 654688521 802651273 978533983 780584045 816961398 594105608 912502724 866942135 894178169 215669212 434480931 868728753 968699891 245787742 797776554 631133602 827423613 651909813 669451595 132533777 775398435 658940524 901224951 428644908 484112121 681594780 703646901 540389307 590717993 583844361 712616928 187433016 471802081 720552510 907279256 458042699 749286934 199275084 710806017 960497758 988287792 497136325 756753645 184707030 680935445 309596664 927160275 300614632 664203127 546168432 754206315 753609637 856969603 738774157 781887635 249476844 276671473 832697095 858054581 14009877 530249856 130350226 548310374 33062974 297444075 34874741 907618315 20285453 901669823 385804593 574993758 727070677 934985010 751204055 896863477 829068449 945526611 283561632 433280392 245736985 976670567 688439245 778027354 574265436 590246824 408108383 651301216 350529181 769435977 798570858 914826150 389202584 500931865 694744494 776276755 612879058 790215018 209142560 919105867 570118062 684946138 950020190 977685213 756366708 974622135 103100760 747715332 679517419 734509195 119121221 991204015 753999440 987967677 33029225 367650946 516923198 608944838 564569588 603218950 962956400 979296740 662055404 973814957 14542052 882037193 625720383 633023325 756232660 971817270 914140721 950055824 840216687 985351775 682435801 725705035 523755471 657671205 97535667 487382334 764356002 853312223 417535016 777516868 334557872 882002195 55771939 768836185 698154207 808262186 16949089 495237027 267274857 878765976 819118863 819787799 20839007 278698414 850262306 962041277 562391637 620769690 29027962 712495919 432570109 665660855 515744623 891894206 891467944 920956553 274872987 517815034 339849880 609377230 10649208 83332758 12906108 360150889 4202769 493109848 51641269 786420093 649211041 838065199 249946647 593510918 131375018 353401930 670880407 851139157 569958272 880982031 149713701 607568574 726978626 913858497 779563819 878277897 515023414 881839773 296121053 482481973 284319380 443281506 497286504 796979756 294838987 963982919 637388303 671749423 836913679 915171083 379068193 467918015 209157872 667803251 800816852 874401172 58086940 91942664 193950072 496191772 71779594 556581463 186427128 677170504 197926226 522160307 805729840 856286839 753423298 906623347 6842669 70878387 86119055 183718273 401572166 794484562 117397806 451476905 221492633 443034630 968016245 969043363 961800377 973128686 813365172 912618166 443901459 663909096 256088337 731446756 721992123 842894837 961393684 963382253 606534047 772673291 549031869 847104476 491197726 785807333 407662779 948965671 448314944 885783572 367401572 445206859 400437023 659353292 120422643 601232120 994235601 995906982 226874837 607934261 349830030 886967779 756603682 872963479 687817830 931397316 734176149 947753649 81865546 237954162 413188417 721135425 282432474 837041501 844794786 969060638 509341362 718577967 205222473 623562261 603284019 880605854 962711940 990625449 369475402 436218556 858663160 993244441 845473750 990270425 540189425 924039447 537770236 625547760 749797749 754318506 4330850 689604262 528809875 716509356 872187652 937939273 675032275 752135701 447111159 551348164 643198515 850724738 857024344 864918955 173021423 219347251 684028822 776627334 569127528 779774599 856882466 874212595 929575727 937820490 239115340 417511014 785814530 822397610 287081538 803533654 271696818 493642705 234526351 675704616 692818662 990103046 958496787 962863987 488272072 750112644 908070692 954161921 47649616 313845661 827810924 911733990 169150904 623386784 509012673 893571449 148523219 321771820 530408754 781501412 46671510 303126270 329702167 596899109 267039735 777766245 50953712 482229790 473056205 498595678 586265809 823560187 479316175 891513258 499910510 854436785 717277507 815899497 40642492 909351935 447741909 916394750 366734482 433475603 283167115 806268285 37009316 585733227 874844144 949738434 985235954 990225043 171723899 453526555 254803199 774582736 315897364 816187683 835858534 996857771 224218377 651571188 139594702 969885773 593119640 837597277 385225744 576438286 151117737 643829162 573701812 732351095 695487549 761301405 768715561 789851081 689767976 737635704 832270428 899585462 416862333 717539816 483378140 847071907 303723101 538158054 158332814 428095745 331417275 365252231 791204669 860131411 77491612 565392330 534992636 950221196 738955478 936354300 966199112 980072224 684954739 733288404 389478391 947179823 210586386 381563679 363979620 713536390 986282591 995437414 578095447 843561296 528567045 953754989 538584429 584866021 283192218 835457677 157192355 768279466 540210749 839869778 410749735 522884495 479113581 722854646 631493863 818490948 839638521 949345615 663773512 986678296 544888135 813094059 254274587 762979219 990041042 994427337 270615263 833636145 280592626 481260422 3127699 577129457 759337906 905260752 147461581 784813902 226232028 305447435 432498262 707116752 285934894 569322509 69915986 237104573 977414656 984589551 581121575 792108098 424598311 974665227 249333655 257890983 531958848 931368856 564405168 661787705 967100562 996894055 469758800 866179743 602900748 950384431 92929680 489771531 57619653 159430212 524678916 546933542 996932605 997797974 500889071 598018207 382738898 413939029 781832384 867408001 945219562 986408691 743312756 987043421 134932980 427188966 32669878 272641061 187807466 946003790 664854469 952194854 895177588 983807300 723665082 917869610 35255889 40108932 919781404 928479138 783366005 784042863 20231558 305791080 839098684 846951484 624913463 898748201 699954764 941232080 662965524 668679061 320595625 571192793 796808171 813578746 423295333 889381406 849770123 955073359 271450959 481818722 257636176 619802240 957932832 979106173 652719646 939571084 456334780 982690578 737139263 924011219 649704758 709784892 645467561 669998680 166121455 619921415 634483488 684357838 165857698 384912127 484931019 778098006 360973163 698863569 377853553 901392625 869409997 972946097 441568951 901833085 496991317 772011201 387400752 490874760 61424356 95524278 648622155 874525241 252770859 904652967 79449287 793779170 267871318 284528171 604097230 831565701 571978270 832244305 606203870 754761646 275935937 734699237 982777105 984687091 848668781 886602480 141393413 970198126 924705971 971329875 82017269 160328968 470454129 556923693 44927977 50808953 747887479 933346075 950607481 992724932 629478851 837029431 278996155 720959138 34182016 796077529 409311005 587809222 850790603 953439521 395532547 492744260 522716187 562408344 724255310 915765984 949847384 979854022 459352373 750495514 345381051 942922740 427522021 975785761 314174090 723130293 967199723 978915574 663053816 943309081 66125496 855727895 534127122 584564256 137300543 426118586 206506900 719426711 408797536 512945320 611394619 639817939 641428379 713052652 141052556 647717738 733068518 916171287 478163177 595001348 186600161 418295867 7402426 461816062 933451072 953621395 513490750 542119618 956717272 994250667 178441085 675395365 200472949 274319477 615783062 881793185 339497967 373091323 97701465 585133201 949533058 965776147 956656875 998275106 51657629 629266529 685282257 740448052 72471878 558267879 957899868 992554915 770475689 935563616 747712112 898057040 283508827 677110518 849775458 973360007 322199682 814176025 945767098 955158659 192800583 757727434 90963759 799698473 226275015 624100944 294329330 381720068 480750814 496098802 587345487 966682558 945239705 999720580 832984296 966441539 811700181 936158073 966967396 993358667 994599151 997747499 611116862 965579623 873001765 977605071 443697578 598681167 518948145 524437063 900193706 950446228 427704839 466829329 506508750 741475883 437909060 937421734 725707101 867714276 303158390 513829582 967831989 992998056 16703165 301892723 10236954 873240186 327758814 617207611 590593618 861207546 188731292 785783675 213831427 928444496 192713839 310363108 301894441 702815995 253604068 594237147 544678499 582803149 489832758 730307245 219723843 488838958 912514206 948850124 792361235 903233187 357475011 756437118 339249394 689626704 484113407 612816293 488964490 802133576 348322502 369920797 110104933 205008464 1067232 753887959 558351133 606856871 341008302 745348068 18239163 270894532 689011585 961928954 690453742 929666411 687902947 919831521 349213145 504942285 202496309 959151004 649707207 911946808 548707751 917056747 26302757 800961144 947401744 994410836 413736335 922827502 407667404 773974612 223044380 300272542 77092412 176177193 778156777 862867670 93927317 270236920 66073301 602549410 924592557 968101697 251446490 833796075 918328939 991975154 490480889 892028370 368778190 701976440 254892056 432164124 542126399 953548664 977993030 999698717 179652073 197230966 695345817 999584599 140953387 761906784 34999582 112762508 404534452 942429385 728042042 747665002 873095925 992162094 340370092 938103601 681836489 878817395 837261115 885864489 932662272 942610682 228827255 676529643 364650799 469292993 636798114 985673354 365046389 479257913 484029241 808222542 630412213 860490419 791586286 973422228 537503723 658589174 142131280 190740412 460823814 948678502 186130205 354460622 781850328 928319916 217400490 772480719 21041871 542934815 201153521 458785874 238272943 564987314 904822668 915346704 883611041 995371394 821847161 996101355 561959868 971952884 115454795 240224176 253318725 639649833 962136456 969508735 754612205 756933430 752547458 856730397 937439409 964505324 213572938 296616478 221274256 300178739 417834698 418234115 584189638 865236753 760164980 895650926 299687198 787166758 510694772 596791477 915549777 930751214 600785246 640901409 170818704 931368030 658872720 892454266 913222427 972099638 848110179 961684518 164999661 625709134 798952707 978118933 455474193 913081702 987597957 988094337 605889948 618856892 636570559 957455678 368002944 616363426 632554473 912539340 676248976 949179144 727744398 868439716 17809511 513869137 978839086 991969122 578143564 616417182 981126349 990867560 185856791 244876269 605295007 699488231 157518315 912256885 302350173 927674342 295294863 529968654 244650815 958339437 805514338 814691611 60792355 442914276 447480262 983122141 494445954 698445632 454362609 989274357 550593886 589224830 795321902 796528594 157288847 342826757 481615836 715294422 585156191 864646419 680355357 744820191 65542101 408984250 893036279 960741348 787486571 960399806 271881709 805605124 779971835 992069565 812478216 989788474 237941826 852992994 163406118 507019407 184145075 806929321 3601036 867943459 649896923 876838729 813185483 920054373 668507137 819037209 886416158 967968437 517253237 891761879 739817102 861306675 329863449 652786876 590879431 799467256 991250864 999733267 448399327 533882203 431275119 777803806 750169128 790050674 749540098 901769437 385958312 617426103 750511752 812872973 975994418 996142363 450373015 736294303 736284362 991179516 479574545 882776356 162266589 861670327 405029200 693516448 436117660 766563101 432024871 462498037 55003111 699929730 972802710 984494530 779618736 994496762 676238223 676509551 242177583 306866139 234222169 538161988 696452637 816508357 112496776 724862134 894630430 901993227 736722270 835822112 983854592 988007022 888811226 923776227 386434734 771683945 924772039 986343575 774837895 851499231 998077928 998601449 782568991 868068055 565496500 961934058 419710962 541859367 173260 191012606 24572255 293427113 580919255 753754177 458296560 536567712 305449067 431222897 797136489 888939153 565652749 880475024 124719097 197245761 882298624 975734946 202353666 549818286 323633851 809716766 276083564 951090599 496043057 969724392 831829989 913419935 133167601 907365587 917576778 951347876 992338182 999620554 248996636 877454735 722279629 809514861 429718734 855315538 822097599 891075052 299192707 961511008 264499738 911643419 344920301 527914108 505980611 845001570 972293339 989699791 757407602 974110132 358604371 939243135 277543203 627842094 40134582 531003503 266119095 597055526 98892824 780057814 391861335 472098704 606754412 622664260 912615341 978791878 439186673 701695528 671141639 964393439 389563660 513140457 797059799 904045004 138289599 951339492 598448878 871073006 694592737 739759583 741452677 771129982 47388434 721732036 757774948 904843405 772965586 949555016 85806326 416660839 63421542 748418118 253105406 822192138 934192023 968512211 564792211 715258200 740355319 823237629 386537987 640388982 398324695 541548339 253006408 619436869 462741331 514324547 234450751 443680145 930354765 932585756 107544045 191510292 509721336 808392619 319061314 884592546 479812739 859998230 8038320 980455140 326787417 983334203 532930763 947380815 308702591 676076126 969854684 999565275 851757080 990548952 117279612 368460249 227236031 617982364 563835412 568455086 933124354 979646037 736125602 905968461 836674884 852912759 936623928 969717928 612008168 662274756 943417197 995020575 100038396 439450833 212187152 328082515 442811545 865059881 506001410 767802189 393376597 396555135 747723302 825918377 475625449 782048510 589168012 647220940 447573963 681319508 184746572 940306970 761078475 857823122 397527796 825628826 408181320 755005074 920764829 929790157 611026866 850795364 869682702 970183476 204910143 669697074 431932605 855673464 438697732 621407393 808906380 977793143 920981352 926128690 445528067 965429268 842479129 914648799 619237353 634159771 885234927 987502884 418550704 422724860 53734355 303591856 731223619 973776830 25002761 588365828 31564162 832694172 34038086 198608064 774129004 834718458 623741115 637912314 240468584 294548797 432442553 458537802 903466416 956092604 277616954 694383738 475761841 636007817 64207804 906007870 276673282 906312685 632304329 803798890 15158004 560466856 65194031 768380641 102531885 295980427 982132616 995906387 242379058 628186936 696022960 751388390 255363817 896281674 242863213 678159259 471348956 746949791 79116857 389779626 975527612 997038719 297754854 602080982 377930303 451610044 542763603 647442539 53697074 341144846 364723304 865566080 506236058 855235609 38309026 194748801 77859165 831360765 804263559 863846476 698518322 812466469 538299468 939911830 709528330 746104700 131568483 622935792 913470930 951823746 514109957 656027187 869699670 965295267 219916529 549179596 178208377 270799641 246725162 699291861 858783765 950984594 304212246 752765547 912596614 996071976 513774584 683281507 292064770 686917079 74984284 322002199 863337379 868122589 333603999 895451188 551006773 891119081 735818632 807290807 700850646 803607312 164050396 844163915 492413514 718820249 109014248 582490054 351738145 684099508 858864698 874953136 893686361 908796275 903531499 916525633 248425976 826008917 397155170 486959432 432394889 994277496 976826169 987314793 14114479 695806984 822365539 888792716 208634327 212119423 466500013 675273181 438168426 539533259 813501434 998361966 877999847 974455903 853090601 965156776 958828306 995083558 91372348 855665598 706432260 868397749 909919627 933748628 201942482 317586462 133268935 808005502 108892927 777974111 864431245 878682061 709871173 759515348 349599869 660069121 257896854 260241077 287063396 980080360 489253162 899894335 327346097 577256615 431973883 798297338 458052211 887784020 728779485 741213478 242208578 411990416 614155330 973437517 803217530 973832552 94625131 356935132 146930398 631271842 725558476 818538532 26572767 933481474 69012579 858558122 625788097 850961939 890565279 947220840 55170223 111171263 608915908 863071820 223573857 495143473 314971742 680444884 694439855 894671237 691455563 967127053 803742404 833416475 755023770 866823067 41514686 589353737 140401146 533456943 72179569 253627775 998833967 999238825 173428964 187374742 906391537 955910069 371872186 454840297 479963929 700339182 404444790 433499103 454800864 993063926 451680339 837424970 853556593 999268341 225758402 968052526 841782779 967927897 353476037 793966740 111190982 273986682 60970622 229015520 431384953 642782516 465692167 939928337 844220257 854695601 529908555 629032114 427929993 929715460 394390045 879063496 484225632 656302182 842793689 866964399 620855290 779987219 479193505 826413721 448389821 866003702 575813698 942808672 218914680 995320277 377931156 644384903 734770391 956679834 755148392 763049349 268052155 539482346 278652172 465744365 95359128 315055323 842295885 890978064 684230307 968013030 139280809 992388267 117314934 175242763 667138929 701356830 426067685 971664518 871479946 930526121 558009407 796437115 529688024 815834058 675241978 702996193 991520930 996042718 796866311 845929418 134923986 568906095 755447004 855751454 132051736 816326573 96115858 299394411 375872345 566727120 789212830 852895851 887337131 969634059 534809878 782704808 335243488 466877511 245772995 797639181 627475469 749474911 981653394 994457212 360683106 477594391 626661656 710566741 548973819 730199796 581792917 989987048 757501506 873385119 112808518 313795591 197176673 563743822 477681418 894807152 240024519 327540093 178086546 411786846 967170628 980239722 488649001 696079026 772208553 972158927 311810904 579348579 322863182 804597611 510253305 979559155 552612201 646329894 300751634 705008358 566469938 585808139 852260478 948563841 892834900 915410427 662803144 694006398 902621356 934573868 520234498 708885389 886742513 888269659 26431426 933446620 751965650 989545052 686614614 748853335 924308164 998440871 400790560 791216009 712719489 875007459 625776253 930593323 888081732 909729469 700580490 887807794 26845813 242144010 961428109 994329716 844354271 964018679 723714376 920678448 61094071 696908237 720315126 826893737 1508679 115255492 887577878 897892474 641487359 969821690 470632178 786290392 254204606 338024283 524569583 890492898 438157009 449997604 127880485 215201673 156912212 680987088 788127782 974815073 606533022 700269320 183568606 932674894 498520700 973871927 765408583 866637497 420422201 659052949 674494730 835720367 932205104 974088659 611505741 731726075 640415270 644671996 42485521 746950308 242548012 905202141 243055055 331387346 741776052 978508263 371621071 499879936 476118858 866580442 718401656 787107640 505130505 821895741 601012742 629436561 957242772 996923644 336851642 479851101 970571430 993526265 751704545 985217971 710791534 993621819 165491249 385549444 258296282 349791177 426721963 805235942 801404027 893816093 583878828 862544498 140582848 197319469 895114723 982337151 172221919 400538149 849254252 911212397 895213724 937448372 695741170 967600240 948917770 967123366 799078644 820811520 124859588 498050338 939154543 944476332 987337173 993692755 642851628 743153825 845050250 900614634 13759428 651179387 850282858 901551966 240576273 301865062 344867359 657855333 308406412 950734194 965773024 990851168 206479273 734780621 783683745 796832199 620891723 929029422 924930503 989771769 655533275 962153432 58935334 990794781 221930216 245492540 286065201 617368603 83925035 771656317 81793801 443447010 772555750 935481444 919775740 940460442 378739603 889541535 134754236 230417706 240319818 451601171 368604912 805161160 347788548 980231499 609352154 772475185 35696645 824690674 143947049 385851077 131639441 471170179 402232499 938918176 75113790 879301206 709978260 829229506 797563283 934903144 737392281 791106444 601180635 969160549 836053176 906741406 967079042 974546312 574930061 625440931 676415213 975170264 509802354 787682715 165162018 389294510 223752243 756348409 56973998 271504056 903569612 941976652 59366286 304600362 999669951 999902097 794561104 950417541 955783694 985227658 710834059 773132455 917773539 950469930 519318446 611295752 590524217 705590085 449296361 872236950 899393993 902823721 303544895 866994691 938543886 968272117 2461462 22232510 566827125 871669211 133758208 919343399 466020333 965975593 885887898 916500137 674599609 716954476 564866234 595516475 8485627 548093238 519208375 827727991 87514477 805819970 218003290 531172589 274284932 641911989 170811675 856602189 802442441 850580961 104376540 331706369 227040765 301827777 91954143 193243801 577589495 926372617 895318084 996589263 235829592 378709659 608275921 987444717 593656423 839313229 976628834 987848858 978920 102315536 948562717 983731886 589874804 879090501 53819109 711866147 987952522 999105291 929879363 963257756 324096732 747057634 201080200 656587468 672261324 878714157 330604396 816930071 681841425 993937091 50615401 954809820 723134758 904619703 773836020 853325652 63199786 597314835 762853268 795162889 739260636 923831011 16298697 945473255 991365381 995459163 133305255 957142481 821117570 934776197 967159819 978025544 469163586 990910950 791370515 834455059 426593659 897863241 858215510 964262179 776236179 985711550 652190739 688565752 780142180 967842793 903183306 919056750 130810098 660416752 204853719 254864749 57627873 220552819 233160772 694115787 973493719 981002096 397821156 534046419 863569183 941037526 296774382 786233183 518522380 548481618 625779294 923691305 360256821 577030034 391093710 663722024 701839800 745262067 195360108 811455638 748537278 906467042 742154065 864452489 235351311 351375891 846548983 882827249 531077657 978454988 678271303 988413389 812124679 869931882 874280485 958067145 271882832 739473382 917189054 943123989 871881918 881115903 277626476 593545950 763465249 952440038 310083002 382179179 928269158 939846220 738475026 803977986 150875034 882823585 144807035 892648857 15167694 558230444 350366979 524058173 479897638 545549057 197346115 370246737 766522851 879685851 775982774 846788418 605481322 833864070 32078989 792559226 656405160 940450391 251545133 982342502 544098391 641964573 39992799 553645036 360204778 899681917 761502471 921514123 978124021 982359152 843745289 910961531 32849054 711025264 276798121 427158800 119668287 461593369 897237053 974629078 866422102 918327037 604840497 742111912 942625259 998060073 636216635 663749775 526979555 698597559 852696036 882116421 320394714 826433245 424399988 621992391 775859197 913836465 718661892 907718807 986054958 988873958 977448465 988445494 979345151 989598677 651509368 915981183 905370036 998813193 472563100 503539515 662683163 926884536 89650021 558995977 476602583 944329341 813203264 919654221 556314795 981573743 202901730 244173723 287179307 968659653 429604594 872702285 81174707 654276630 842924265 978231138 445453282 676974677 753235719 756260663 38124181 366227928 190952862 751307560 335974731 571218929 413987252 860066939 178942829 690000792 736610107 859992261 227251388 643555459 852234083 928371165 282188298 876936295 776540089 842734677 528563600 665098205 388796658 859723737 943986910 968060196 448756854 980631065 260927613 417637393 320646529 765051646 839170458 886824471 545908245 721447095 847823467 983518551 36849559 419418087 707266206 835319143 220608287 738710546 578203001 925056171 4823717 331804600 760864711 928699169 557654424 788635081 900121799 978740774 391679314 737637680 62762973 957531965 430135230 756705158 336425556 948191614 263855310 555754724 583008511 922684923 539650319 951625316 545373017 890140742 267938583 958547234 328127051 893975913 434637493 649395724 462107832 678965769 677776590 775267136 648209444 957906421 961283737 979162876 291664208 791918512 709697891 888152046 708228446 812917681 637784477 717854608 305937268 404132875 737858261 758906145 765948876 811274480 351045555 751449994 378999574 908966884 702908910 880846421 421003416 827055182 469972961 471262427 859322001 971763177 615884101 635564485 840279497 840778423 455818421 783380726 501595895 542070760 126033064 718192735 25366628 968639495 654611266 995064890 165843987 351177455 597406199 652553118 549801259 913874008 264292128 622537953 624411065 974564294 338813968 983874288 228339806 826311234 453133433 671882699 476666388 989151685 257010300 746286065 561036597 956026066 95980921 753909734 671505025 982299254 345831953 734825852 915281712 992811913 27066404 630182748 44965850 72549042 221828100 396620429 868182079 945113614 560392335 767901108 80105852 537803084 792071343 798776242 961666929 978575882 950418421 988281689 116957349 632120070 520000022 605080049 403961354 542400489 595352005 623929766 281179155 700465451 675768517 919185423 369615946 573932199 60966073 518584351 291409653 333933317 769995336 855785254 7584109 720528806 54816204 967633858 340945176 389779503 563707511 982776594 74030801 461533116 792772860 820202298 929572558 980336901 421749148 829639938 12608851 393408542 442181151 661826711 806253352 882377918 494424575 819865537 38320302 113632784 724837412 871681632 966345881 993867230 555431821 848554395 237393802 930890691 874217912 935699068 423910889 527631682 487940891 964469279 837673225 934018161 798820300 830105209 969361032 982587084 298304986 639262081 279685075 846248392 497928175 524419076 700969438 742154863 790912283 811878791 876130619 896253313 56848299 573743561 132829009 351617019 715010343 841531345 869638389 941841142 20414558 713604797 817862487 860332975 518241173 770771194 24930317 475899367 250027729 825500659 441944512 542831010 405518483 843986122 481721000 935117278 993382610 998632599 467814342 822684514 840865029 862831175 150041777 199949206 112903681 867385001 912450875 975697162 874410463 954947183 430092170 863378156 391571111 826453805 123977636 504502339 663777632 899643483 766644109 771804420 196132283 631322523 942668232 950312937 80940256 932245825 115962592 703154289 210732103 491746809 975115817 978947765 287898553 839901773 435146831 766145990 4777840 185899715 892171867 915670767 846036132 873401410 279611594 684569283 411036201 552386353 817718538 925758716 414946032 862494357 427695101 502771614 933565929 968264934 118957468 773451772 91495056 204808547 469683475 516756758 674075869 955220348 594068960 647520403 704807144 894106460 317856299 709683971 661590160 781879259 758413129 851084464 989497404 998975063 645550171 971362573 287707290 324663173 742363935 744880304 194006334 299526283 583636943 768814410 951782092 964917108 260994726 369976340 334483855 934119039 100277177 927371090 296967540 857995349 324114070 540484696 971793720 981948207 892613977 969236069 943021923 946614830 191523935 321205849 456210846 769679780 287762672 552290075 733644763 980594249 528550687 704421589 375018458 979814947 129259273 579817076 225049226 500449923 720551380 749044102 888434365 922391949 993317578 996565723 672120051 855523053 544834957 588767170 601010564 709916786 881832362 883223038 423778382 940385864 398338909 675604237 240851978 966520766 627364010 941845918 943770201 955880921 449145462 670721326 198265400 297249244 127404488 282135036 119219108 254930210 878757504 997145868 130786011 490798605 697044778 858691768 768757075 971544205 884139214 884707807 10862194 258432271 396814460 841763736 759747101 859996700 265131023 868777202 842301303 922377122 165895889 793472362 509892908 541900080 334881076 336933637 372142539 717353633 194400532 424822279 370843129 855315590 400766972 682024572 957153424 989800115 714830490 961202974 869267099 922534423 861944653 937764500 476037937 804417231 717740841 912875268 416591050 640604449 473359026 697082367 570206258 598328204 178282103 292205809 506103916 549988383 187822673 679172100 298041322 516558313 599563084 955781453 464509875 810905220 691607794 709268932 564683180 718586815 758659291 936491034 784446166 839857302 232213301 237112995 518182185 567349161 314184017 377974955 271777876 544678020 937798266 949002092 787427621 973441687 575224443 967517896 517310472 921409011 552794791 910047929 378984790 424762878 112313877 156657211 19246683 937374396 355937944 455434390 363082948 856192095 814471622 869237617 404752006 770691849 90506105 567234635 327352834 886439739 117389604 481092176 231147233 711727481 20723888 384100651 907247531 962349535 860451346 862383155 870010425 876013776 245316349 878063758 558576757 920888992 287749356 765084420 633375662 674146327 615458563 996494456 702361774 734295442 64032765 863480085 44174314 739223619 517314867 676773812 112833027 731228062 85858194 964264647 897170322 990900299 8757331 176331691 689243724 875325717 669396726 879271640 109485163 222793432 332086166 397743968 119413362 263382230 499587999 691509709 992278626 994739427 232215101 266982003 134134752 964374160 897574974 935702059 672625067 918020334 968453035 974177270 28204175 799058767 647109770 957172694 52301370 993481423 734722942 762425430 695388879 749607271 323360059 968383409 776248800 991653404 131393627 946262171 51696413 521022191 870734259 910862230 567080152 850257420 458793984 939221223 39156512 867234061 959926770 992153831 280346056 777121554 919834815 975551488 454872655 469148577 574897083 993190691 653566146 779770592 723132324 731342165 119953114 716580578 236593776 378523559 17725529 669359344 461996001 951675401 987758697 998356661 4762873 485922771 731668361 918987327 927765863 960351698 666621761 818575938 87527703 366362017 716021344 825939106 853065790 949951443 951857052 998787971 878869613 903751901 392631477 778455168 8521259 910954045 148964498 902913094 418090587 845216321 61733431 214328091 806544525 976848540 832103854 875247120 447161455 800394671 777831371 848555950 451298002 691845970 100428388 917998829 399734845 511709896 657877166 733668891 575994722 582645379 599317913 949768191 815948381 952073711 502280727 811935644 232295052 456044031 823581117 946119579 783189558 974047175 56340527 554298787 535380257 793281431 256579883 673629413 97608844 244430569 283783508 372751569 998794100 999997866 247963703 909894107 588100902 982618572 768740015 814058068 159417295 212845320 213935895 522681046 287258809 605665022 469845018 960499539 528685865 825699172 274725907 400826927 461375896 984496709 621281436 995308478 144280848 442380367 951794267 998852726 952765007 954944543 336219354 619928251 978320437 985412688 9056475 513306313 732682960 813593199 367943942 729881315 247982495 906149796 499731633 892713377 918818307 969984493 984459294 993580852 524261191 555947059 396924915 619090172 601837629 642154684 451861488 888870877 326465352 816236262 263703916 303142447 946591142 994633573 501379758 757885101 171863329 656176782 552459939 740034700 109464594 804626960 674391686 699308843 349011088 477430722 306923178 962842912 734070785 817523306 759573727 874580727 882067833 988581978 542290514 619729888 991315512 994799899 391068807 772165382 14087249 495427854 71193223 411664832 916690954 921204179 563673985 609173110 713312719 920735696 314742101 708388062 508803524 653834957 333014010 975247289 6259433 82406033 976247656 994107436 710330541 911285182 325783114 738546714 562133356 985520899 451473276 718382846 973930457 990099294 404756349 800152730 824089827 966685531 591233113 636118611 672371508 852871150 718309331 773683265 900967271 923243504 603832159 680218989 492397748 615495143 168018920 926821884 333353387 442257807 888693809 919385767 452139534 777133450 837849813 950144774 696354661 751201130 820645974 998378546 31357394 515660199 913901648 936712687 602889358 737556513 99817005 536743649 32241651 199088066 484412075 955480689 549848613 813210816 233136544 878684520 407749265 744665949 809485020 822122955 334096150 980054449 263176260 721468299 577269072 903921943 894128352 898405412 619269780 619505565 897449160 915177413 566509954 842589139 567820808 879329880 845187904 860935625 169324770 433499351 523950040 578551751 621473595 763832653 844531091 912897837 868255935 993446739 501664664 994811474 72533959 947958309 582144775 983021247 335898068 869850494 685157479 883271004 460669848 925622147 931648172 980611599 635411645 651400362 983908663 987857455 546355714 896797826 130766703 443769555 368897729 471718838 252704147 679735823 162129001 770918180 141621171 938544282 602856252 609421720 379730965 817998027 587148844 758140960 840153082 956397163 914854794 938223802 675175391 964091612 635648945 695089808 456642544 863786201 181242417 193454768 588756432 824252838 342925263 891429617 273773258 938327344 333470307 685626652 284134338 378925034 543205050 823184270 515896542 531828138 825798504 993175167 461541730 488671161 816371222 991905534 892249340 909062765 647469752 949271295 929122720 944826564 317823211 465556575 775332749 889215330 463610698 972978886 902733518 986018269 470114124 827821586 846244444 979074013 695644435 955986734 391043749 635053648 701939615 920026873 368729489 984368557 264931981 865638434 89401291 765061774 453152164 919363798 975506375 995624709 90444375 361542435 617580159 726949283 348268522 701729082 998251751 999589045 210814842 481140198 946176826 968861664 320582548 880526481 772484277 934593726 292364866 742086354 845283098 890292801 922363674 948717141 166249335 831641571 210297610 522074183 817600640 890592469 593613756 599554379 340760082 357629965 558669957 596406898 255044557 596278190 250784049 705306404 754654220 931669024 247377202 440438297 205833722 250486163 547386774 862723417 954654486 999073073 105472439 581593827 708684264 733440102 681424339 727886643 168553436 795070134 523603209 815133616 338867518 819085349 189461867 461821918 694682983 698427064 988891928 993177341 197594019 480518812 736786814 778537832 688520329 879074219 217062636 608193725 252678409 951168148 928974351 930301727 253854235 872686245 159825832 182159330 778639222 907644951 682576740 997858298 336928448 926575098 793971182 799554690 659167137 854682572 542104416 975974263 418293461 648587249 79003067 242777067 249179918 749703989 491193906 905714415 124705545 887047024 712514261 941704534 711584083 767798960 344539424 512990072 55679877 490723404 777590562 814759645 973660596 998533400 613643090 678128095 355193939 409154363 996675490 997055434 293116767 535191852 732825608 926606355 621374531 954670973 546709590 548957839 285571501 687359707 445548058 895720380 939055538 986675295 885312409 948697684 578911340 870375373 880632961 926792087 184353347 861896573 23054997 956184524 922919807 959044307 185630423 277401070 228502546 530282341 874050135 931337582 90737855 253537130 740178110 845699486 8875143 813770705 262416640 510900705 159151119 331874152 26471163 495806117 780014096 919422706 839238075 957674151 858408206 898560590 97410219 682316286 386793708 873736471 191856113 930759637 326905971 523705183 745252040 927907245 150175229 742227500 415284164 830832550 830871331 893600285 58566530 615191431 963403775 966247445 317413112 727988982 44114394 398635015 529646817 681636278 881366909 930791961 555808192 631271448 399454150 432556020 416379743 916311047 262779191 373968179 289066875 582861359 150027937 326610484 573962214 991379845 572287158 942518564 662236837 885580433 251160239 550441279 708079465 877743434 335487460 465170714 550512985 868071287 213667300 827575211 239316698 452097921 787440020 906338480 41608506 254185862 414879446 796493907 965475797 977291124 706982265 964449336 781664072 868819888 48293124 332564815 981875871 988685001 474219362 914019236 394338313 682927181 761404860 762723166 83835108 482752583 326185852 533962991 517904916 847090008 706004215 835540514 111530101 964169386 959427875 990576749 813249211 882278974 138412137 861075784 263147842 842950035 634644562 892592840 371711122 674101513 985707659 996417673 577552860 841215535 100180022 678830880 70730356 407258586 146073080 993376982 541100712 560500568 587769942 844236774 305272574 945173646 738131144 857617359 759139829 965107522 989034931 989563535 56188877 143098576 31837552 829738030 544352001 837421935 654212621 932462049 428380585 570674754 24701688 534474915 274852523 648758246 400626536 819976567 750203028 922062848 410560453 997636994 729080552 954570176 293249405 788214283 852865655 938031694 763584429 994218648 914497437 938629557 719548754 751718178 83096506 613222610 385841332 468039402 238697658 401962620 95482828 775066014 555754302 664448289 960020741 983326787 773191486 803525770 107849866 650936626 359714385 480793245 882675671 931235702 477942149 867303691 642176374 676268298 438491024 803372675 617488510 960710284 203081077 698411219 903258384 941088543 576120812 956524230 601358877 860588090 166083268 471890131 651011423 902723900 23159790 793391875 380358069 390852534 845190233 889023825 553495182 597134645 638005103 747432549 376290456 428745946 265028401 267960246 962434004 969430325 368621039 379379620 461455972 852794423 156019055 169855900 550927280 973684298 57447546 57726633 733939968 768806807 371917018 654330741 723332187 875227369 791452825 807873207 483054862 794584781 368400021 947904395 483518608 949463993 347275194 376094134 221263614 772851835 118860630 654724616 321742275 506052309 11849254 131185771 882585779 935167603 597504221 727914134 557395636 687516556 673783550 764406249 36810131 265723894 62981974 438799151 440061304 736463053 849352368 946580976 682884367 842978099 135957432 364653304 744432286 900919940 672063262 704339801 984262947 988625508 709877321 953712612 382052264 791462362 925169375 954155531 858971072 983040101 277330653 595774741 524499236 845043653 440842314 880453742 551969179 611412763 317109098 848261280 972601556 994712067 868237236 929329338 803270344 848601353 428777644 494338828 246579594 677180822 898739622 999900405 875541127 987081186 696999746 729809875 289158091 817181209 718732123 840687208 604040738 787274045 519155967 898006949 632487306 792386095 995968426 996924360 997789390 999272926 823218757 923481667 624453810 648355834 51025140 671673573 343150908 478077662 414134261 515663870 758489006 884813529 118837431 151887851 737344049 903018355 249021729 836142086 680438668 933152236 994638448 998922201 951231108 991954561 228933579 684466487 759576185 957139430 780011587 917121476 681706340 916387384 161468453 634639790 976856802 977756389 43341868 328906839 12944901 444736363 72336997 637125794 192156758 464653096 111056666 268451202 883666701 957054980 398215713 506195824 488775438 530697241 615342279 813651756 992914405 997972698 935071465 941908732 466670215 618630947 627838570 865633443 907739784 943947023 348231284 677005737 812842090 825035220 69786872 530369232 224243237 240639248 396446406 715100164 234482678 236177764 882030400 931663847 670644627 790863140 82388713 958236871 461059910 927272301 271418102 962021988 35328757 320328335 379620029 731151055 916545442 995627258 906366833 974677301 140196227 911872214 147753223 617361284 108080023 230240265 290701553 295702479 551612340 933286661 494135447 541831345 152379629 706062660 119717449 143046572 811676758 927629657 178675885 350383165 174184300 219069650 298642215 819902663 342095748 548592351 947027835 977963026 888030564 995673820 761809002 846173193 61757105 425204840 275491958 386817522 947009498 999779130 683512076 920674738 578261303 748444485 475145625 747188606 854271615 899086690 829725571 843184285 688964696 888088085 17038472 647485493 920257453 948082192 796836132 948774161 517028200 761914054 564312233 707188417 879714405 898388656 964530898 977886894 534936535 832492697 785260245 956477684 253923716 794769317 826502747 886493553 621369477 721480391 34722246 877698403 17799919 112576912 295911185 371525380 957614052 987076115 563266822 988180031 59786842 104961031 915599860 956295719 42967747 623015602 910599265 983616294 260567007 906643555 938514425 992206177 192714787 836052249 662052640 865439366 763474029 921489641 384620442 564427325 51748874 595165954 497871857 707704172 673449812 822941171 246310798 619422007 476477862 836627911 979028018 987934188 635338640 662522048 727169306 796912428 540499179 819228469 287142202 765431145 618319693 733574841 872994400 896439962 725685580 734781639 388224113 957463475 314301069 790658627 375065706 389794583 221628879 592900460 623504800 743340711 182795584 633606650 739681411 864537853 404157886 945347456 19186770 649929711 971291943 998087812 710623570 857798083 826038330 854540101 455269440 845244109 732074742 888670599 275401092 736404807 66699194 360127084 923290580 976790188 446375903 717275986 764107489 963421888 377163927 779118537 37617810 329968550 767546210 855521122 130300282 161953219 620970267 952052684 889304626 904530626 93470727 201811564 173626664 992079286 731727449 781600482 278322797 309192575 323708049 864506482 390954020 563653198 870503007 959428323 592532051 966768829 668835823 719326759 434405490 795605271 329372047 357046613 680018950 863936272 529870759 784448665 234849475 361923403 187397537 419492849 488206577 931004416 663078070 889285747 644319436 821548150 497310342 999014084 140314608 702901806 257620512 840526334 34303470 740511864 692783687 777537006 773682137 963261575 479132210 583737734 800409258 859032733 537369253 890640211 282306931 596870263 207408587 594109596 790457775 864841271 365380305 630115354 926013982 938500763 501247421 574224972 790923131 885832471 705961883 879242153 475174947 942255766 167093371 582723992 33955057 854643170 669008651 952242620 28509938 216403991 460163738 680710372 19435409 395775610 48740346 568353255 618993410 795555283 9903210 681861482 337993129 744652588 848832655 942171456 882042547 905035885 176580722 481772477 373075502 474704401 634457934 995789757 670250401 680172888 844581022 916177578 191963087 977947560 387798548 449937469 108527741 650682103 701617095 951878290 198698316 250227009 759285925 892487126 845760563 956595114 841342944 877806807 601868452 904125853 590277745 917002756 943470972 948522751 401897837 758225383 275705899 890634405 234311790 683680557 610134664 982463402 387113675 687404149 603405631 693051881 784269636 868515748 120523191 936066884 343909581 657243793 885965865 922613179 71009130 522980176 907241038 971593903 259522766 403565759 95971310 844415601 588510179 755117867 346481581 802516888 581830700 852661167 420198159 603519334 226072982 524707012 146234683 353188808 951931949 956109266 467061060 655979690 915289755 948230574 950410108 982924936 812989220 861153039 55247099 370151503 560550717 724496880 713202937 901580416 59430218 901567658 636010675 871009882 177814112 565232042 16357922 110305156 408451453 687571122 460354487 519903268 56332638 122262393 112626619 823662089 163091476 642333594 228582530 490942633 384787952 612755583 230899913 370658538 395982061 753769523 929665636 997488468 939591804 997643604 600621551 937286452 688162814 911655115 397633569 402951368 631983211 676304142 66506464 473385149 702786503 947657490 869547291 972837380 682494368 879558365 320715906 893386063 437428741 487355144 380364020 759013640 638711671 935485583 712399340 770378727 117846373 895168078 805591459 850108419 424848514 498440373 923738712 982173239 333965195 939348403 505242694 559763682 927661541 982559825 918090477 974723251 41288098 488732797 15313036 376861353 341750336 716597501 632307184 780394123 194259732 419277688 593388908 927598469 195080160 732742598 887509300 946245030 143466501 714430091 697715844 887556571 568193536 943154758 918867345 969587503 358894394 773477363 650570353 756732979 453676249 915950788 553708897 589573855 308522677 756909735 773505664 900599408 384900203 861953066 187381060 911545178 989376897 999021894 982806746 995126536 805112476 975460532 206863509 790102397 430428765 976792022 722507678 934844589 631630519 852826899 393947876 995805754 909610627 913383757 909264026 987062877 365999340 754478895 265274351 749720627 581911535 681999869 541188293 798316802 421519597 454254787 190875342 854163454 521634436 918475791 774309168 991130099 535638420 794173713 218735533 730505166 722062977 795065155 957212279 963281537 375144499 776256313 69458702 399274839 989728221 992046750 715663988 918125064 118798497 915750272 140717585 381359079 58616229 246689399 399009293 660537475 635282291 814791341 138530369 990377674 973877282 995363419 257397871 908376264 628553531 871120918 491818763 492205876 784410974 835593447 917633850 981253340 640310354 682126113 324477354 694116704 693608975 978093158 357348985 873496642 850934017 993663170 553918536 866093348 107928971 858191743 502288009 882463237 725379617 983382088 180318049 742896518 172122395 216207089 709723061 777590938 675525119 970600057 642315259 720144707 953715957 978460267 842698054 995279265 717118495 833305451 656504763 794944697 458719924 801359708 458273682 974854683 341818702 933535176 937802154 985287230 183228060 258963489 914006319 942646629 681265777 697607314 624290636 747148096 833289745 875429402 504831398 688014838 647202693 922510625 936718204 986719466 653416084 932707813 805416386 885595543 504953866 894082695 71884361 446651295 701421334 737510949 971851710 994299796 918552767 952818454 879075996 927010351 256411074 867292456 233013541 628703571 53968304 207658362 323798241 597638105 989000151 995880481 569816171 626960241 916743622 922628817 985035011 985561061 891312520 892177589 423934564 886226822 175281658 758368292 628066643 733966133 275082487 894626614 570595969 976480589 102169087 981941052 732910510 933591049 905390499 946333313 584999776 644038751 585589983 785902913 340731754 652052969 267126759 646425713 499999748 925387259 157615696 869927092 91278455 749636628 790250631 848618329 424812050 460218212 136263527 684335148 754059102 887910290 262306813 280515056 951312603 962461375 611510003 649449081 582776298 650907861 848902472 990000147 109514403 178341424 943763329 973712432 985882568 988154810 315835032 987369239 977894641 983506607 394785809 452670044 872918028 964510243 661601091 667264973 562620310 886329351 381321148 945699537 153680023 637204847 50518973 263605265 575722525 785596627 742916962 948888923 999661240 999976125 65730656 415093946 403963704 822513874 945309729 948277118 653582810 689353825 590050828 730885961 510783017 964126259 278079030 578534546 990178132 991346188 650213411 654131405 748779219 763960113 440143190 478081087 821713233 989577037 492404838 656191764 913589018 952525792 977059001 987863528 328993700 800105594 763895631 961663941 134288993 230496881 855010144 869566747 641835098 723413774 507840423 653841318 666143570 960911461 219231254 247989123 159884718 709233930 717965024 820437965 243113564 498492425 476332711 651099830 328562213 599353772 210296667 349004131 57908150 967616187 395073643 707968978 652220400 681411472 985621249 990973225 362690546 937546440 234578138 462518912 544770384 811314011 720945082 957783788 829210706 834201802 226191615 549843340 827376300 967409241 633248494 754993045 756831867 858386665 838710598 912785360 448103580 626152921 939401834 944327199 989827831 990097980 361684017 771266978 627185802 786917918 787721102 890597269 7827069 953689356 862392854 862697188 538413492 842160933 649298799 831958999 753787721 911764777 529010799 715582638 410571022 835169235 781535862 997731876 443450614 890449930 156455763 491808371 591052950 942561436 760631331 975007130 908578549 951504570 388133409 858183035 920524394 948792566 66428268 799788880 336449265 491173029 856201929 976641891 795619569 810178912 50690150 673041089 405237368 573099160 358742760 387060467 164404675 905453560 591670545 655558097 677842782 699044635 542062282 832811706 269927560 562783393 703529574 847327288 80325855 848958552 657924281 851211637 175944815 580443439 928910254 944319263 451621792 785407556 231884953 835918945 128114882 821271698 635869486 657564599 505373312 829435070 334996711 619450404 509842131 909365436 148035074 407301967 434309539 652384774 712536330 855727795 966869603 996547256 904313052 915868419 866228673 981992300 758918193 825724402 226267562 556029684 176267542 343323028 7141626 110056727 407165638 712108354 718604106 977406765 599522193 974470964 485494338 979512258 364105260 500815496 591317211 819435081 58436782 610301990 947675135 991808909 171522504 883099129 674288333 889145847 740498851 936417836 375708884 585906180 407247828 933495915 528493379 932646894 714668631 805130346 474795237 708849123 843291008 930762535 378028919 912352480 646823707 769532900 243230226 654338488 68744991 429904953 573512002 651861616 59560636 417917195 928595814 982805340 578396724 706498156 144027836 626360372 965983482 967889143 963858157 994212440 15382293 485905338 651035017 920836457 836358152 883162631 545077490 670977047 81446315 433919795 466864078 867074501 98541389 284514488 865783885 870327115 965884833 979261713 914430461 997869032 899154743 999902733 372633213 642744889 857159250 971037964 214630024 217639249 564404261 617145987 872682490 884516808 444082490 492824285 5984468 539213429 265519503 547654711 602456915 632747724 471526782 938364389 639750354 924092794 208757337 641877908 359803591 650782896 562460377 817338679 932700090 993749942 137106386 250513822 970537627 998227815 686458956 893336120 536386751 861744435 796704086 911090480 26090386 139447675 347491400 943771011 860866610 864384260 709731324 724678899 504362754 789927429 980402102 981315194 674920543 793808890 261825776 584019624 524041455 692738019 404008112 528373221 321353626 992738043 112846004 853234302 469425227 579114615 732059913 738878957 995729763 998779832 343520633 521543270 910729181 926299080 800567087 940686440 618759523 961740447 609960822 803687595 409624728 415830740 903841451 915724779 550287463 819414785 304562779 716454680 772202962 786498507 198331483 499946854 952153059 959834291 161239815 164101325 323762468 583261252 199370120 441703102 13450075 458770363 787586100 797700350 753228477 918310689 560250975 996012052 16592013 253729426 258821237 489963872 151285624 234280322 140078177 560220433 417277696 438856557 182284851 513841522 772524023 957455300 547970843 809667185 151758599 218738973 690154229 974874950 942548513 981094858 882043599 933881064 531723435 559431495 708542930 714139250 764941192 980137125 657729275 766922564 836927456 849856118 461674578 744199694 85797423 148045406 641551877 872176707 551343469 823397099 238556599 830023042 865162991 983583640 138038646 294552318 288594317 665667067 596593769 706788716 579367191 918139122 332962960 439976815 865972444 976143092 664545904 693580155 126544370 458975642 964558580 977084041 774462595 897983147 749029351 943081585 778421250 990157599 600972293 849295612 197528816 714779387 53504929 696254570 672143111 926267254 931421625 988574042 66329309 133274146 690550726 917157655 975338484 989159411 434901939 862369273 295296513 837451939 547275576 939097060 950634545 963072503 152049845 520298220 222550037 831919429 266878599 520091397 141755729 374697264 529867369 611697699 225101292 773539499 597718886 734946022 183001830 530964039 536439599 542906354 12767565 903345918 17080416 617075548 512670350 563613062 260754010 775233632 530163136 748725367 279079851 726884575 121135414 793222822 738355017 888141592 759997298 796706127 747974214 822525248 181935348 465028784 213603408 516023807 122191488 536593637 88377217 499514799 962459792 968425512 760586681 969553912 324574006 365742252 98012039 867972394 315904408 413114499 472357571 785759457 307963618 442125619 531332610 994566329 25168666 553220417 910547257 974031379 226921384 338762627 106592183 786121339 342467505 846582593 567658481 920778552 983243454 999901268 969618123 978588504 192202630 747589640 60526327 305769218 261917255 786700097 125100980 901105238 342835940 840375109 508113916 819987334 270589031 638876208 732790692 967815554 528904204 710142795 601065484 842171150 189200835 939782774 775511221 817297202 944773183 944968258 862906076 987555534 735375428 796812119 118872137 297295461 940587618 955043877 293587731 535597503 642149413 723516892 185256964 936378388 281666319 343939924 579131431 894710127 907242571 995773488 415258347 420549521 194484407 844832534 620636586 819065245 49528484 985173182 317434078 638557343 932275507 957839076 139732213 540315996 544650611 672815725 816940836 940707991 680240856 831207515 134554300 174330944 518173328 951643833 264112558 322896551 672171674 842144136 919496770 950503800 770351394 882465862 969024350 994773058 640034613 903487844 988478708 992383348 690741329 923287501 850082204 876535731 498879186 642073891 132323302 700789830 20689204 255759211 303301305 996494427 919097975 999471047 876072279 930686937 41930276 575186464 281554943 875574481 562760775 603310865 149015827 339831054 874533544 989188428 990700415 998102149 778559695 965681856 821444598 889002410 378255304 685631968 67766795 242112659 36195769 986894654 969305042 995214351 362692350 442252546 851102825 938513864 452237557 672816327 682263519 775813967 592009080 755941651 790165946 871825835 103818934 301253117 784319809 852631439 976848378 990307921 731986437 865524800 318302826 655170077 301703595 343061671 551250 564391551 797284240 798530659 485132036 721664063 795818636 826653686 99335855 628579709 639203583 989285969 909188124 986630973 415784695 725501426 371328239 618255997 391157938 451774084 61010272 870239242 900849448 925223489 246940799 415430489 422179276 809360329 512711136 640971477 708539661 930965618 141121532 487871588 517650036 795283638 491219349 720792809 447094196 625261129 290085801 977826407 567045045 864896895 692369262 795631453 361591327 707345707 446291595 796503965 660412139 814913184 375996570 662463898 36763152 540414978 487614531 722984821 85144042 210645475 86586664 589076196 663130320 758755556 586180593 729515125 320937635 369755954 343175408 384647743 161407009 162230828 940578674 965727022 574632785 891890983 570273364 877031857 871174030 937279371 956510523 982444421 265190484 878554397 721147258 945898487 302077908 975578609 853085886 937158918 449979484 587376214 47106072 546361763 59347396 494286532 109758723 567064471 455376874 665593034 992799411 995687118 692075339 904436651 206326472 507632544 562899394 666144574 455565068 835611230 466034800 835254186 845891580 998431354 861366811 918165994 144065724 392322564 164917335 781903065 328965773 578532946 476540568 816633045 181414631 836871528 767696428 812276822 707998658 873126437 634180157 854437687 651580818 937048442 126463857 515008395 882317082 912634096 811540880 850878436 234981451 978347326 82211332 623003651 843586362 893890257 831833207 909094942 940764423 997316761 294407438 762603320 738127100 993540210 316901202 790112152 160075338 242270841 672214272 674684022 410996174 796835958 279408217 359195179 830209133 953181216 117262820 900852877 51661883 860229462 504137314 720346549 887379277 914628450 153448978 384365491 399465075 750149664 845624579 890254127 999676984 999808654 711043773 806771516 815041573 993495259 738555769 990941079 900965240 924533706 736117710 766127143 184617588 442839566 606592958 792884053 499463282 948712448 415822297 921215778 106797819 855554084 647223854 984716784 64798377 361693568 966809627 972045074 768060537 852265770 812964196 979503227 327934199 458584426 187034442 904565710 473701824 837493180 601894772 753410693 433622149 682544230 353781642 577390215 798933190 995878097 51384125 507884069 221230954 625262056 870916972 961612512 288401955 314526242 242819039 403259447 320128394 563848041 417355507 888849145 214687228 255949316 284120636 939508487 691696095 777529766 526231012 623877126 627924106 650598146 498643993 662372306 436275428 694753817 971623294 993419213 672081595 743215441 730993616 813819302 751409772 998292141 415095559 819429436 780083410 819801950 974562255 983107524 171600289 551195194 409623210 416879362 24942551 462102843 20309528 994123876 822715490 957852636 675743511 974194945 638755452 855676242 73467668 891190355 827344035 988797613 747533458 921780576 413277966 566673648 22309604 111986458 136520142 163921201 265983412 902915132 719648837 933803754 283410883 540296211 113458238 789605279 530603531 827199838 609554627 950321914 347575149 633145375 324105054 852015202 315310103 732545462 752822009 794014484 818161824 884408894 339643550 633004269 857352187 910911274 557585700 755600098 696434347 940582174 740399451 965645562 72222123 921898475 309531251 565523630 792494918 912140077 65734267 350078858 666425240 961727806 239245513 447960644 700161294 883120023 18673500 806774136 617117960 922888812 956654477 985260637 547905392 733079911 615685102 664084841 116645118 374586563 836677296 993818234 427755659 858188646 704614453 935970741 831625420 934689793 447658926 523492185 606624784 845631329 981152921 992468333 866986199 883713432 44784372 104248846 725570614 818324119 878510641 905389314 708734354 979919176 623375752 939184285 48265112 766709782 934791725 954170037 416219132 956221942 929943391 940324699 894308102 943087425 597542194 729714430 460090776 707150623 31313285 282877424 245774786 550468341 546735376 717208643 811576273 998849253 325349462 749096186 905597787 953442518 347848736 442747978 210381161 667924326 295991248 805857189 78681044 326685065 755435722 818387528 667813077 697020017 146407020 861844652 256821234 832091747 391017830 703709309 798503342 931062917 336289568 480473384 334938001 774763908 597478764 886081924 451650054 954679722 127648674 857381590 436861361 783516942 692286025 867978875 841943527 936451951 535888350 706918966 577091667 950208475 786977383 892619549 994277458 998278995 532919706 998666722 514362673 766604940 757982498 989628310 212129478 819836426 235434645 576383337 356719698 370016129 153698239 957880276 449260985 908681948 470873329 630375180 80257836 417922734 169973308 799123239 150439466 271603190 353507788 619192505 437288230 901624441 640051572 693312659 282265658 798183205 121805104 864434708 607759509 796086733 889329384 902017008 710058972 920258249 413528231 755438822 678938829 698031326 886303774 910444777 288734893 765466209 894704138 913737864 213958324 578671415 228134430 731016450 572941978 612039812 78693789 309426018 513079908 673790335 494333313 535539135 656716355 997575541 396548718 558115584 853960963 876303392 661045309 702824742 375452412 490720676 908052587 919067342 226021931 682291869 735079766 852822931 478947331 893746505 483286799 570650298 838669714 984755398 674664816 827425763 197855253 397226597 742042060 749517774 558918334 642401811 385563680 560652028 822328505 824436290 989473977 999583202 300283424 341757498 529093066 634435292 286787057 813624872 84784838 217197836 549835414 875809014 670336545 817889424 672846808 837296264 79625404 801593586 995502327 999746015 372147382 463236549 612026191 983783529 780903986 896761894 188321998 999481062 722690718 917699710 96358827 173903743 674110150 823037252 604048118 859265514 833658181 983950738 666854102 784507184 382234873 979107363 164705217 882500457 313489082 594194894 822983395 979455755 965378511 985962794 891788038 925552475 643821432 802417443 785292746 966536897 734691120 772782324 685138081 823463537 912792110 960438242 16959747 183651462 265386141 510654232 821964370 924805104 500893269 794149110 372323721 853382219 78985858 244383067 566086669 583532622 596483240 629585107 238586809 665868490 946120626 957574521 57575354 918297572 924192249 959223397 711291899 794933990 233564539 345803405 458699382 947986844 32185479 310141796 992328280 997957054 125678187 940730684 282187288 944224532 850868745 930723272 295624808 632637929 812990237 943673501 564944710 791088688 127118835 579658820 301880685 880047511 297044610 911178649 935369890 964219791 117771559 692117388 677874875 684400166 969772554 975473800 151565113 756798039 245381965 834962368 494582702 893496755 746570220 849840184 810140788 957168792 541389931 869550399 447263512 668229794 242217891 338047090 181590082 782678725 902049551 924440729 5370262 568749456 161657084 681413783 281648662 513685694 158171303 589903237 144416561 289085117 744238065 765575112 774353773 807783734 265690377 438420475 932114225 987323792 992512679 998009630 230768168 843194098 592059369 750479793 39356133 841960517 58946545 93259764 887602254 952508552 426488978 756492328 818725891 844852131 803306610 955065640 980796574 992370619 766521153 855160619 36721265 37553744 34931810 301392295 136618897 183780739 159017724 213875120 273262803 694428350 801782038 893797005 7510034 208892194 332462750 947393296 442411085 759516345 828107817 905423617 213408442 992498025 338284194 462019623 410970994 527230017 463303563 729044949 145751290 533101777 163039706 445161657 724415934 792730706 546931862 669049021 145150746 766347374 531669912 647830227 429360485 464854533 332752494 593041730 131082951 427662797 545884635 709758819 695304919 990962108 779106013 999366832 830783459 885262016 126306641 500573145 150602025 880080388 177907423 376468257 366057417 845537458 594206742 594683357 991733918 999143599 153943129 236466274 671061116 929261279 189027335 898425716 239844230 393690637 517568837 663351975 838578489 974280574 576719274 998264648 933403643 947744140 526788227 838072644 90023134 263304297 371242370 681367098 507413964 883319666 264814708 585215127 788185586 824004657 349575606 716386688 160158793 967547520 83055270 661171185 314135853 577322057 82378907 208405231 513227020 577983585 746355415 779314537 4789050 305015299 12424806 616891906 406335336 704704019 611105607 625655659 921359783 955672938 452262736 827436446 442998846 605576699 922690216 945226388 570637894 971148142 355853318 886605745 987700942 988028251 305707579 459398730 756605708 951236136 984484348 993732486 776260439 962043428 287709972 986007362 230233323 931074499 484951595 536386961 613672033 801254392 429814310 590468560 104700255 499882632 776035650 852411006 316269672 896692673 565207634 829098048 622793296 909553176 627512743 732119245 427380398 622250084 39486208 962064049 842289962 844983813 460476439 849938153 453795714 564464497 170997298 700980806 600817913 865500219 58849144 959600169 321093420 643061117 766691148 845057281 602370604 941303363 603151356 837677625 833595958 917759281 820697719 911075816 188874061 962244895 732911210 743330947 549500633 613832721 993642882 994815733 750444596 859708964 130882909 634446963 543879075 928737739 702365890 984967885 523026131 729772582 637370381 747677223 706188405 971196651 776693398 979373602 436338069 733870248 414897585 548857259 482950768 901837037 754489462 919118245 581537891 838101475 475473166 555790424 665790663 835262449 748192143 768869869 360063166 405972004 25257363 525128954 18691434 644441119 204212358 758238670 75145933 664915150 608602194 868221277 792940118 888810577 240341813 545313761 104899442 432512190 721003244 841071321 509504440 592854714 758810251 957370877 202031102 422192227 713614249 942805773 388877526 921926704 607851982 961195231 85697030 507971632 898795967 921452676 593433319 871530973 364874275 638831181 660298063 693692425 30904349 435282438 446412706 774787899 25056803 376206598 425585474 553489378 828798155 954104134 100742532 344517382 353948268 820112847 906811826 985018499 221304149 733304495 617641198 779865488 724872929 912338861 533615031 977989050 679616834 680482965 247747508 950853108 163207713 379534989 70937193 507735667 132110345 224047820 944797708 956795396 266418400 518938306 71148071 757986017 678064692 956661111 439248369 669161771 80970032 449522378 684401622 793422024 34927708 544184857 57991366 594126816 821513265 994380064 819204034 819909286 975864097 992359107 661530899 713847270 454606562 801763236 230295436 548106940 390266196 950535915 102710484 247576769 373432164 938139262 332730601 404737932 779537489 898921488 674529939 812471656 561348150 679509047 717997765 852819849 352112169 640586852 706426988 999143391 700915315 839086982 352505241 794473738 230951001 242380124 87563910 168294603 576709804 691476834 314970021 813094911 256209946 599801908 492416418 630489626 890382189 995083547 138567009 373977485 72195717 109705884 598491149 812596406 561630444 685689096 649416018 847446148 4229959 460212431 613899144 968730585 483021119 849429286 333920056 587897840 709329977 868364984 452724128 762971140 694075740 928032009 478183120 519712398 683929835 879127211 704058441 859214402 920125867 973863320 671494162 821466251 115383071 610917631 73329484 711851228 684310766 920559458 665813359 925100020 65292369 444478211 922811382 940272112 81886150 633837376 513922946 979163562 286634655 967879901 992317278 995434358 599641325 676654400 904744345 974844336 476165162 641984412 929642719 999365163 318400985 440707974 491077260 990081742 142997483 916310737 821481224 832950979 509170360 566780840 477937581 854103540 830630962 914261966 324215672 554812764 515931350 550326372 726933667 889440588 425700149 807413662 498130646 943916793 137687181 460688066 692259827 738048248 361175263 552547671 67677209 731052223 623355823 748829486 338482009 929494010 343876783 634230487 722182832 955400113 524558570 584645199 923990468 946689318 160237874 162106561 6218186 474331188 785765837 792920699 464005793 717869644 373999611 632324245 256365892 590617027 277546221 364304047 708008919 817273689 262794874 471309654 572935423 731928871 526911641 716842181 218646888 415207779 344985929 697122310 323025042 928741048 628452365 826987978 66251159 419696956 311794593 700626819 99409634 988858753 732544887 841307157 183453813 526001821 606933593 666573305 901990848 967154170 806839603 859773222 604534802 852484158 118778644 662406191 805304706 952763410 944741833 964886460 615273501 976593405 361477320 940921593 715575763 738529247 658860461 829726625 155201490 875898386 700170071 850244263 249623497 536764662 951689290 987305434 175266152 715282946 848924118 911867866 902698822 935001724 521074572 612925711 353793386 770555478 635161273 678391051 649087833 856376264 447038449 713091354 624754258 872583602 376850858 869161112 633058590 647643209 107483026 980537775 522803538 846070220 720688518 897772535 353707931 427399028 196241904 552236166 464950944 565298882 396813843 473886498 212320977 555538096 46431985 729030963 949006859 964560769 695474743 963379682 469088575 966064813 654971519 901205934 856668874 887532422 769633539 968778213 993637004 999108182 371258061 643680305 649219850 882619647 930397547 956926973 557675697 577124279 725995425 786830074 735327471 977864483 651216860 988976729 290944796 624931675 910265197 998319578 41646303 183453879 898782326 899628831 279987508 967134922 680822395 744694320 547422120 975227857 148539747 751030868 450782743 454913901 66905395 968473877 930432988 974027533 968036675 985071802 656971893 906312029 474994140 946707521 806148988 852419937 545023275 612068344 32754519 607359129 196971170 315372902 791601140 917094289 432689303 505282263 993766056 993913798 941937558 987875711 899852943 952266870 183067751 507820589 191746853 410390058 845536902 969941535 334724340 342729138 888042243 907492913 306713345 613148254 238290153 533519115 28755413 111559762 959415273 999325574 974456814 985425125 795121750 853149431 967552154 985475404 494995713 801690843 367579994 894245815 949591871 984022291 198483496 781832445 197601891 771976534 44205145 770084163 434434284 763628135 679275850 986876293 427789698 471317272 292884492 806029448 454811192 482777367 602746512 912069607 537132840 571616901 46505033 59307591 639486798 699839956 892618930 967291929 605644754 682524044 287325726 403976491 748456005 827062138 919395275 940780944 24821232 933723713 354869245 472295324 941051470 945458077 704190133 755194785 888902346 925513520 588734978 840587875 503210036 791971026 107903490 941660131 236652136 898871883 737662237 978565938 602896924 774180800 113345682 523642467 329909765 798836111 730040855 926162063 732651026 743419668 423969097 472198753 922163865 924005862 105392217 495020463 372726572 496183161 829038894 956119385 57255363 373273411 510920262 960567464 629171827 732483933 320131750 599507824 790263005 912709902 353759102 447889182 427548057 970871524 819988967 942698752 185231467 772832571 216844650 615416981 949488754 967122441 53369066 407573722 903884495 941586603 202254007 644176303 248382474 572358897 706743217 709116889 686850783 803228049 38285659 772144475 556888581 774111079 265979178 397866491 859209666 957197013 769836502 892989057 86979613 437834826 267431379 804171973 251550766 979466329 331792113 559965824 664545163 894411783 46563275 966507678 908322312 964339472 799007378 853983015 920420523 940143093 631774348 787455185 568393245 571303007 616858990 817568155 189003167 217675032 35229084 465000008 756672877 990070283 778668073 994772232 610295212 843047105 699909773 851286936 264761645 399618411 528979457 902925621 361995514 513493744 672186400 854923763 591526960 822739271 76744253 531074906 303486773 466413048 889636507 990049070 118162944 462768191 899944537 932817942 432014873 960561964 429357935 549556901 774488401 970968247 897330364 998620833 269555149 353573351 503459107 568432334 441794310 682107166 538381429 942850509 798560035 865432089 263291872 788992455 552611667 595718929 99373768 289609303 335893119 884549078 288432215 422386249 14613507 392900925 674932620 934516987 455233332 747792759 627904669 845018727 770022727 898674438 74368665 810586641 907723349 984164017 918744913 936462849 719691806 733421800 482572852 638244208 813173734 998174760 893572626 995831457 643804218 977092397 73763109 307120402 828005525 935554279 440776076 756872551 720465136 884045820 516242475 720016721 867800184 891264987 859538039 995979607 795322097 937981342 783576992 873310919 307094830 493903247 454071691 705359841 498489368 527382784 381011908 643459230 277425123 603480842 64106110 302697989 299515845 393591550 986384724 993142599 81257329 158612303 363841003 460681413 368739156 885395766 447490016 636749886 931681171 955740859 382028018 972716968 269399818 373109398 104155203 106652303 915499870 939691924 940388316 976738359 320622099 417242404 684875049 935426983 224766820 415805536 194456950 466810560 464902807 577776323 297360229 950229356 561598706 604326176 650008170 746973117 94679827 429024433 117378606 767094139 872437870 913338339 256558446 405939945 753341850 798712147 756352506 790500044 91510777 484962892 962847765 989494566 693482633 704855583 179837156 375287212 650201801 945526918 889323849 939352752 444956418 599759508 426176863 534077365 928062039 935696154 244926608 681423507 596202185 735875971 78000236 820073255 260132867 325436826 267067539 827179536 880119766 890753600 455119622 681485034 682027703 903683045 155507536 393018134 194470925 438240973 927158167 943063052 488737508 542810561 462368809 905320933 359915369 749416191 625809896 999621812 967131871 988743989 923450511 965525536 76142789 578181207 791982022 835339363 476577146 609114145 83055750 505586498 611336478 690260046 760112365 803507122 192097251 581000238 840194585 901910972 472605807 975515126 261159305 371436657 779069423 894353945 5406577 570660726 928401564 931134602 793467730 815068764 115598179 571338787 833233305 879534001 446799039 647002512 98425589 526493243 394941520 621252286 457034027 614540737 950999432 981573906 543149856 551332753 717810359 982734704 757766739 841143453 252645671 406289097 271394887 604193634 754912568 873059095 767896705 982460888 806325493 947702763 31242214 532976793 670825608 792191716 665146147 694658582 843887896 961390608 190292227 947270242 497490512 689683276 310823080 376623360 75584506 416846442 405170501 592480347 719358149 720724276 736888020 953949072 445034302 524064647 754202833 890900131 475736809 833400354 724565550 937096365 284781710 333905880 672293977 899316712 47647169 516880576 276008060 567295156 756681657 925528430 431304105 681999906 440611100 564172080 486570992 800546943 848804365 909718183 392991576 887782673 567238618 722911717 329567401 854743211 537320817 573862603 923387638 960243422 198357530 939544978 917451588 930901721 187761360 653669494 816040818 971957727 906926103 948989377 113420559 217494950 597324754 707630274 187803368 506871777 785208446 825802782 502817063 644145959 406990555 785340779 556429630 974578089 903341620 948365457 308845725 694666292 210277256 988127912 352627019 428022872 310982441 392018176 529043103 929876358 256788367 745832838 378947446 472623793 897730465 945042371 368802864 383357895 981983765 984716139 301632270 791430158 194741351 733806414 962336362 997723509 162240682 934459331 590929423 939259550 126518624 903743532 426461467 694539321 245806513 953661919 301067337 727093219 357460066 369554760 803103063 967922304 307592339 850974292 281786099 599881711 351392661 923622355 299172021 551521229 401077630 725968766 703164991 710874569 682311530 823596588 982599867 983435772 773879820 909491036 174249422 345814597 143892862 252395761 288480266 615297871 60371711 804392726 419699044 765115255 962476189 965713433 739163925 818640207 931032105 989295036 912671560 915771196 844181740 892592263 607408922 620109417 734238972 804806940 967682295 973295214 633972989 664483761 540776648 709383311 163866378 999603210 63537654 784185120 119071748 290697843 82910652 995338314 321529734 742048290 849981002 971341010 909626300 961049488 252866543 672061260 718690031 896323572 779001803 921922767 478026235 963543090 123786939 461923483 972859792 983255769 574121028 950842272 642092189 922644660 176771543 740723864 500313652 860340143 683572697 803962881 709804856 930480573 44848472 255569828 275026888 778020625 546177174 574744727 519540350 962687172 343216926 687889841 445047812 911234823 693275742 850547321 191592060 631091677 704213192 940806542 246655315 295286806 383660778 561171355 389727857 427725709 886613778 974410934 524708119 957249761 162348113 207111054 233450790 554254004 916978883 962775041 30696619 62825559 571750512 756616242 684192103 911284181 50015560 187808434 830120058 931181423 229634037 456358858 321012054 636694653 515417999 918487499 910312081 921996461 721326177 975219602 725657277 838739678 664228663 973905382 13752656 475788389 982991834 990067601 525895554 893845988 502433240 884894546 109821695 566822184 463703640 529639052 87321757 580433717 694568082 975812395 810899768 964897855 356244576 480819166 943383825 967102486 648003362 719360157 582116947 810219906 350893329 918280782 146872257 802761351 239212591 490205506 553289710 719200337 509963215 580793901 531668346 918008709 236954807 388686617 710846061 990602910 955689303 985483792 852559771 860253026 645933340 886509907 369133955 688754528 890608940 960901934 24698701 966522339 256217625 373359416 743157838 839951274 669798585 974394793 34135479 118998425 420464847 923961193 210898734 407645555 237813257 652644360 786119395 922309049 661894779 911596260 121636939 976457849 864179419 876512816 846973725 865909730 997702239 999893860 166319762 748270798 361557760 548254064 572893303 903364298 638163653 952139031 542232467 633241432 655122497 947489830 629129051 880888689 633783291 688833291 43093814 206612833 274063186 673030296 391916103 911362148 25077463 338899016 988719402 996953868 416600653 730786363 622939838 925136853 533222317 825142166 132066424 586789906 797783551 923549197 741098672 747470402 329694567 499221145 928539717 936835555 847368127 989004094 318240838 775130872 395185805 998605331 913524182 951176255 865753336 909824714 674851671 758309614 413675067 681959786 470014363 542650373 511900481 802418341 226339277 771171132 826687073 987385227 263555262 815640250 361343286 996844072 39671527 313251784 675254471 960564255 460753855 561898666 27329463 515363088 52565948 320215119 534775512 798174234 988013712 989535650 568891835 789220887 617171148 811796955 726867463 734122191 35093039 843300153 187343895 192338574 171127365 468736288 380787413 488633415 608213709 775302250 666388798 760951382 29399417 588529414 197221383 981556127 338844640 430165820 863073284 931692542 945782639 988332866 711567 965256868 58538934 311163694 527235638 641787304 206897476 769910101 898616413 930407096 206998488 645702136 523278906 952857360 769329892 855098429 631450316 687381573 561994388 894271141 735460420 889885433 509663168 860611212 170961960 388500180 310609006 478181111 136083242 860987466 844709211 873807219 603366930 956273610 961794594 991263496 335115441 403769729 706805696 713822422 759149145 770127894 969022691 978062443 108790795 594866277 120110631 467521508 449021885 946963427 758175113 821568568 445911357 663995647 660737611 739012152 521435715 671701414 671670467 934309842 126047733 378651697 920496534 992399586 599092160 868992560 584535218 593191638 343317976 588805297 463528407 854371938 27783066 222674932 385609865 628581550 551843316 681109287 429833596 718848322 473843321 699429222 579346734 842597169 836252562 929759795 895866467 910809318 984024054 991025181 447607810 872990463 721853355 723223290 376273477 566015893 236016712 543134058 33254652 589599441 192169572 224940903 886766845 918219273 414343522 608853269 656321966 719601150 588890445 672380460 237725757 415796417 754558775 913910095 344066019 723218650 164155819 178390523 288158468 677569342 677185229 727875816 873235733 930567904 298238870 545412853 400803671 846146237 264498059 558807620 29665758 224366451 598917901 949536560 33199263 398773003 722715716 831158000 995375516 995562447 75457203 250844246 775090207 953519337 821027939 922218612 643849022 761735315 971064503 987057316 36830836 851120718 809142205 862146724 840274967 929427763 6093877 739972528 936212539 937001559 61854390 541588802 357047002 589371111 438497287 576789724 216745686 605162759 610743026 777716145 105930142 623382731 334157599 989278854 411035270 804605287 375637578 401964937 790463224 848552810 264452509 742945593 137663798 669405048 769385565 778902193 127443688 244566436 949493927 981421963 639941919 873932035 656469544 937779193 366459456 398256269 525572762 669742243 591155251 846853169 929226184 952112722 226925099 546238165 938170058 979307021 785048256 805077516 566557951 575454553 589721891 823683163 137189921 787800134 359666553 922143970 749588332 921077846 868487739 936361012 654280021 953523091 432284187 537847174 550795456 762696237 186471767 401874706 38840220 487402637 305275730 810260942 83026953 634929757 337968095 910904605 275065156 561102314 739132716 864515444 514264441 674646709 322318462 870697148 483033726 485003764 640931697 900256232 356657914 369008383 732574118 903397754 914687931 953449309 770739419 789995813 258931138 291433336 777872183 993544645 344459282 494886518 861089646 972913430 690738710 777245175 870507847 873378232 14430558 35482452 832280434 957349950 765831016 965668363 983855265 995820344 498706545 779051736 321705038 618705966 71584704 885047056 297652906 825808655 680698030 681744598 225763177 599707688 523921219 908731252 30954426 156051346 269641510 760611764 1561647 59396749 971519165 989151451 379052405 454965313 660169443 876703783 555176494 779909286 632497545 901690553 559675770 913820237 999092987 999933391 589570380 628894479 938753962 981714250 894144970 982310514 14883823 234540133 219455691 954987758 871929379 922333285 207033697 309556356 58141723 171577951 515894839 746166662 714918247 778713852 720072274 817460346 91609661 624824518 139044874 413592027 657559629 724498023 498061851 915132996 198379226 251599687 972675316 990108178 840815866 900005565 564873804 799302263 761223200 986392261 622204847 641107121 917279002 948566079 792833668 943007299 918920808 978866024 798778639 924280284 511425907 838386211 433977162 631805666 145071871 398262073 264585238 503960929 34693778 947891588 296880439 855076182 281858462 827820526 994546106 999208361 518323015 793725712 295350929 963121067 771889527 976621049 157978226 748783177 37991371 482855952 97307837 454262778 592487370 679672964 102218697 673981259 546297720 904141378 431849381 998989272 431630379 892097108 11815590 264693029 203774780 810830656 446917861 484392401 145362982 479363287 48847733 317476290 182437819 394405350 770292605 855073859 749127393 782645508 565153335 846476385 566113145 855504466 798319902 962618544 606827394 816169533 766425608 937232874 38181872 590256671 960320002 961061578 594938995 942808417 137691034 828143054 762005078 861813736 101904761 920445850 449975625 710698066 408286121 641730714 83072709 923473150 503980142 900294985 618825017 868757484 212175184 830532660 57627767 960315644 42864291 166633593 699224399 933228624 212945517 854811031 807769273 836901820 844655560 854307754 255600571 553904468 149150945 618453752 502481472 959033817 109659412 669619598 795333539 870683357 260714330 933727521 248177871 961037124 948172724 978427213 330401047 420751189 741277181 995512227 656327932 820357204 477139386 853633051 367538327 775683307 141836151 770955109 375914531 551963116 714512074 895394357 432085050 555127051 663228360 882823012 237456540 476266624 930509004 972624813 325549311 881904496 602844091 910611814 252776869 767093939 646696049 879675566 551258330 645697386 839754691 955573826 767289768 784144280 637823750 933066627 262691680 593299486 913588611 933116896 939513298 981457340 185522533 834885402 875495472 887269789 976851436 979565406 714678001 873956975 761090561 766983180 337673656 867165743 871377770 896775290 306732771 710267462 809890915 814435061 12696759 402868752 440638578 651073950 860907547 928861600 500150343 839904395 308141365 397567644 712818207 752745366 835030594 836099401 55272576 712356461 99590554 197378971 902462171 909367303 222346139 848650387 45800525 327978477 587042480 717448378 584631070 680704486 427552385 448705345 660494305 660578760 747348046 755103199 26690557 697784235 854185051 957082043 60997815 365680746 703769864 992640852 30354793 974826845 684377451 739412494 13991253 544695859 563206797 967807102 775901091 875523320 897822033 940828671 973240027 988341715 812320930 815965408 227625398 344398455 416860704 720319739 849984871 882132102 591071894 787943727 175914296 707636800 616859931 767279027 143255262 215286062 266450761 629241481 254340667 850437364 928189021 931070337 36235431 390536073 480555927 643134223 722029131 752465671 985249772 994413836 156458873 567024170 656551106 853466629 847125707 960051405 539941611 834153050 439632174 465833583 339980916 923439280 240092627 952739531 478811809 684766311 126354544 846240580 277030310 428779808 794779467 953042556 272022570 910985622 507665979 998378063 537409644 588123673 36053170 714933930 207365785 826599850 21543551 382852932 920387195 956019544 419569299 615521582 921529772 962212890 584410099 642179793 834711940 931948446 144802880 945492195 537376136 729094831 764898622 947419191 959716704 968008107 129395000 888434015 56302627 704891219 155266734 303253032 85161463 743039636 19332596 760993423 90219913 948278404 851709264 858736276 912203429 937467446 364375937 663441510 460990661 471151991 995830133 999526391 566195621 700916380 425826972 719761230 563162224 696845602 321031031 400903013 258286399 490786767 877238169 973899894 828957257 944149289 577371129 587239321 22781043 537818960 225449731 229522221 597548080 962600388 632385123 994176040 225086283 536952991 412771610 941009371 206120127 335888139 3327091 243528208 522507430 803446204 16863031 502328466 439034347 749433056 440300320 699706549 630085921 978380023 792211549 990159533 861464057 980260513 76816212 470476863 164933443 486295437 353365966 563772016 191210061 948423806 686051809 879533825 968675138 982181785 706642076 901934616 764703695 946431682 465280439 638911534 544977364 890662852 250081669 928417975 577579532 848541397 185440157 705771554 535962759 763599948 387697069 762845471 463087262 984483374 400767545 845546150 680882530 971134058 842948970 901880625 1058425 766624353 660351686 694474325 792453764 794179319 484587056 488402639 863286391 960142246 621138956 998865868 671202555 868616874 422901292 838215097 155651878 215711895 839470437 853033564 835112533 957900945 163658220 876439304 884148032 898249000 223538248 465172852 338341076 766841453 787643948 847852844 258466657 304727736 705326001 995877312 663250326 681459754 166224222 580372016 273218293 526714605 736173790 788488683 488331745 537366857 935411698 986382135 177604354 382751398 691579185 961790962 815934328 982442778 487666431 868150903 737459045 974943194 181879002 936148906 222585540 608767748 619714870 968962950 668899515 830900812 899984372 963403820 949671191 984385052 43763205 576890745 402834817 673023056 722454062 841900208 160253415 930628782 282029953 463131769 509983511 822195013 188425614 545130594 18375409 953678167 492615857 568718192 421424476 664692102 22648020 245261103 600779180 882086316 8141401 819728914 943696483 985999876 266822155 487743729 731722023 777072320 198493873 237559886 423403052 509144085 196187861 687635130 657526977 668691838 555356527 662788807 987844795 991469071 394907777 845541728 504609645 842211665 352512658 658804760 846245685 987823495 200720233 735604451 396204266 801192144 461351895 625707434 550120026 978212827 489711647 983325776 570481114 833277757 181455928 486177369 982590259 992530767 806830442 832323132 73960835 593494902 385360123 738581065 859122087 878587765 924607887 944289088 806061389 851498626 381646957 399242558 886604754 906528869 133735577 709602709 234098045 544734899 654538937 703802662 429818985 756616598 690818155 991911600 36791590 401007410 642532586 978370637 964765559 988323739 739124117 779333492 241835700 428986068 409780908 590318606 412143853 913950453 758789935 975068313 117273123 127754022 429984418 527533481 325309071 336435249 930842470 937275237 387218728 497590271 494009463 841975017 748192274 777748025 796682127 825165823 769330117 771156444 160274007 340380461 627632415 711633139 507092285 575247958 135587153 735380052 217878567 998651934 882345217 970656172 38588856 187300423 406909965 501825323 843690409 893206262 573775717 955893503 925298290 965035795 751222880 899240781 763740318 949073914 608253724 825662174 13945763 747245338 34689491 61845076 374452752 916974165 162233822 888953261 314428157 842300913 960301732 977902169 673865203 897254080 183869173 558871433 253721764 366919227 162027709 306192561 42253084 733800777 903934642 923486018 676616336 708278771 528121567 586205448 182521501 748192991 91278888 126805342 958272245 962057382 682377230 972423896 869303424 889257000 436861609 583183831 291656727 773991329 200314968 613463542 163189142 967091781 792806325 947456715 825313538 842458134 56193387 65545195 633564788 914306441 446813822 845947332 9439910 469035321 440212680 862391738 814449188 923734717 463690370 905854521 202401771 493636274 343164529 434695049 188335293 498727731 950563785 987438687 703327410 849306066 884559610 928812462 297040611 348047144 25067099 308755764 552006169 881476182 561966866 676997139 28644287 709219487 849589534 952236245 968556554 987941506 341511807 678627407 307638160 767989674 686531458 914349525 746643470 830731488 217021198 271247330 600773529 953998900 355084751 930541127 596434027 691946174 965271377 981701787 110251674 275433844 821440698 951343829 385601004 516091497 838679336 893191278 803724211 978967279 358557940 424812776 426357087 489943920 873824339 883647734 419854756 522145697 241632651 620215134 790001456 863295493 924903428 961179199 873835177 929992286 177386112 815372403 130970528 266844176 69071825 444324140 255194818 274533810 404189351 724432413 236385912 461245596 475473457 790963564 142643147 966170712 332476405 426871334 654890991 785942714 232968345 450509856 760021865 947408304 614448905 693858842 80902932 101301412 548034299 801872220 713405689 950614721 532835839 802745858 813016970 833929980 766465473 837993017 660878141 736088956 636413712 895744640 128547328 816198637 503638965 879496576 834824616 892940316 553692546 589161221 708554822 813990790 648562078 806762244 918056726 992754573 575860404 691265178 473435896 597376273 244969901 325302805 351548340 855686331 201802101 721852924 260578372 540937381 959593247 963441456 95086873 904413412 741994650 820898567 593730767 867095542 188997983 414971523 981361584 989823077 243441635 893933731 877319790 913971755 806262792 881597341 182291301 520096034 282456029 951133057 644116581 721171586 364712470 470405563 959780181 980364647 353741665 492768721 229879273 633068646 4106210 436326328 588818445 894720882 569189809 585106663 764260076 944509359 78704994 509457902 63555681 646689975 927827727 961678943 106444383 858701943 45000617 598477604 961573317 966509333 40849680 378229074 71835943 187827410 116721292 227444793 254157108 550733077 587692665 846207475 40435024 137227662 511172155 723770764 267057555 434094047 962705057 999409263 989335505 994906019 440861719 448676471 462933578 492516025 651137558 926163410 840901758 889709807 419254857 545717162 215065238 398934380 873171009 990543612 593640118 603396135 477909231 991420404 723123368 763481644 564857163 867775523 93431485 262301471 756787280 887188026 982257913 997810435 844032407 876522753 80820086 127456669 955446035 968974836 126618598 673547342 90975248 838673455 95781740 844223933 917621467 966058038 485126842 800063053 360219036 775827880 448576475 906920400 523036746 770399551 693960353 998157375 154707767 619517867 955865910 981693810 655916866 960596603 957675174 990335136 287599674 801083631 312974531 368367050 816102384 971439236 43844189 384109751 797686109 839693257 389699338 444184765 878372314 903418920 634691556 967384997 57095401 59573846 519862834 621625992 713243279 737474284 708899481 774507629 150964391 266537277 414389034 800125920 886081210 931150877 667580712 924934703 85727944 514934489 320375946 552486400 776107033 831851914 347532314 880647234 920544486 966315751 373808304 636248951 286154774 606631237 833895833 959856452 835607128 926250008 279939594 528663093 536414818 933622372 12975602 839484316 980173554 981345840 348845631 664637161 420795464 544390873 663186383 721157396 758868688 966108389 730874484 799940839 769198688 898653307 949054918 970096370 689193815 837442963 582808672 675503601 265615082 630964062 62851602 228669893 747113041 846538483 333229483 977522940 375889309 901631266 468682993 515311964 291054847 918381082 58448507 718557804 386366779 482952939 263551541 375788618 604519388 771711421 12571683 852802193 680951830 812577394 535840274 984389952 508310529 692997063 604274762 929974307 394449594 628625852 853919565 987714261 545965362 866050069 882419956 970430555 253050303 595459098 696609276 984586933 974282553 995045253 565027841 805294508 158766253 292232185 13108011 933151043 333137639 898235043 9129081 231765018 49357042 718208962 283585573 300461383 868836458 902949087 953676044 959455462 755649082 905775597 631960428 967137497 266604785 491040952 590571431 880790019 226091401 941832331 262584020 783917802 585117057 713658468 697578492 963722094 746710513 961443899 820472785 937511979 255370411 774799756 512773293 870638129 427964416 715671631 974229810 985250956 551741037 923389529 53730229 688949759 357561185 760927436 287400795 590417247 885615165 979260680 802587009 899108683 437876325 917147232 737327334 826336866 816330080 878782119 79635028 815108290 202677137 693720824 965743398 976890180 331176546 904728637 66744995 912482160 994314592 994827262 776203247 902687894 229572999 498675298 491433449 931440685 649292204 708597416 153188369 739043708 662753257 927695360 388601419 836769086 918086636 999867426 680472965 852341552 722535720 806134620 198939003 499839415 910011791 923398069 534786144 867064911 956174437 998891993 778580299 997608627 316556203 943835524 714325081 719449495 657027972 758061675 316744560 896179540 954125777 969824434 118050486 174378169 660581165 694621270 14155264 223773456 721804387 744238990 303044462 463801126 445865769 520276239 198017219 554489612 508820153 659967649 291809020 959795827 926622217 984871435 44116347 223206952 937789177 942380098 929872165 958080818 119438420 296814862 640445677 843077698 797687021 802460183 555315145 772432177 172130921 522709589 128211155 492411357 222161272 418222765 372783529 938381350 109048213 173849423 432209419 614150101 516438779 897635380 290143959 356578569 161908040 192422112 223684313 331036647 864959509 942063200 975880263 990558899 286847863 654939341 262690165 592455418 567825208 693758476 139633722 303302998 517497560 781281528 206408623 238921516 437067889 657832766 479083000 745450884 668835946 803438645 571065223 815180904 109690495 808846027 70909471 696253498 799850944 888651797 628092356 947415997 384287504 871301520 127977223 482790936 728449425 766981270 265260348 631005268 209767294 339050234 765277132 860757856 636094124 995415363 101009828 808188755 930587248 977211685 413113630 567569563 494969870 776746656 705794344 807265222 483173970 794512391 533260907 829862748 92841571 542995515 782823084 904543037 591345447 975061923 295643343 734570471 299140101 408995151 768213254 971421485 870298239 886325361 792149363 849895737 576883018 744630667 367243244 771340581 250103577 435494110 331871767 447558402 983537690 992123926 338713375 943350258 266166189 282202630 183577237 604000529 173412783 654329621 43572246 460614487 747940851 949716250 255534270 916507082 322921819 859407261 542875572 573266336 564764133 645169351 567993820 690679307 90738576 317677471 681971578 765634508 468464006 857927788 274772429 964691157 363046398 486465834 558593032 838838203 477440825 493013221 566657902 932314198 608941011 827961314 43472656 289298666 703970299 944390735 643819698 646108281 306108353 313931116 937331548 999778924 340658825 548786653 659194867 847485863 234050666 955262346 117859594 461685638 334714964 550596845 156564205 632013048 699703823 839802435 977295077 978009159 98212296 395355668 304801003 341982930 516845767 761262921 950223427 998297524 602224185 957773544 978205449 980214722 636595574 857699794 389664690 485899089 168055056 963190422 299357542 745129604 163423525 997266977 977283768 991490420 136226865 541393262 158714877 953354067 512215600 598593912 441548769 566704134 835875274 926368402 315664616 429546558 714557004 945930069 815497957 890226892 19331951 714201637 19764482 114984677 387287634 942038485 455754675 517158867 457033157 878991837 675062355 875258695 308143284 957077642 830490204 860754841 993529917 998363504 765043984 827423240 113258666 926818187 946398514 960099964 842971782 933164521 689243847 972508983 540302678 889727301 470699750 515085945 941731556 991874571 692259521 770953716 618903198 943680567 638977516 954294952 607413750 997445529 495619216 675827293 585538181 772791114 414911924 785263130 691714619 889104398 446617145 813631098 892887614 972914651 15117979 60865207 376031409 449646028 882821643 959542216 455376263 836183542 742539624 912316459 377374331 605929114 156008997 748899395 130828751 159880944 53637961 484524033 903617156 915066667 106586040 365624384 531132 95783034 894048514 969753535 962830915 999773393 173653431 180449888 402436520 687276930 751043993 896146999 940534316 962589550 369736438 544274002 804002637 829041376 847927331 966107496 858743244 931910335 84227316 272175702 390677429 505233214 670529857 988642690 273490023 892078416 63237683 335191855 476808389 632326444 329683670 931843730 763718630 997179153 146423685 470742627 440333071 772473684 834232390 929299088 421148760 542651803 971458400 991555139 360883786 824542520 899721278 952503510 908902813 990219036 299370149 579000841 917812961 949509981 395387986 913090314 566489303 622678454 247908925 879698841 299092882 753123082 368567069 506115390 173878914 468424761 475872439 537291950 973471651 976251720 106634785 376239874 333743493 522047105 520032952 902712804 240883561 976792896 768960216 852644536 496686669 614418795 715866111 973694090 343977529 852334914 851397092 945678223 475760735 662839157 381024114 577528093 78708602 643553001 663929402 996327381 21498719 678391131 520367093 950230391 425655680 552818358 830999482 932730217 557477329 746350472 504510704 749834590 786357601 814499839 533178142 664101190 178068089 190811683 932815428 935174252 484277052 728088737 6779691 740254547 495281671 860013895 666938389 827781034 939963076 960466169 745927348 854788184 82488004 898557717 681059236 696574696 83904617 600060943 216483339 870100120 125287282 176494923 369177695 422211791 176974752 692642118 512845982 586405652 277731958 871547581 69719676 405727708 281533938 302959631 205076494 678780311 684645410 737478431 953781860 986273068 630403062 753117270 571070216 838261727 559952750 989482209 337416412 503285614 210617389 527706935 499637786 743163733 146130380 940503737 101438311 940665162 949445693 998185441 580978825 717283161 972628031 995932035 834910433 941601142 631368303 692437870 843421957 942167415 577246219 646370189 888238986 921971842 433508767 562665379 933560925 986963322 857447128 895098450 421348434 521734362 689970312 870968168 484708563 571824274 763469908 814559753 509388510 702347108 273663557 304393696 772500290 974232125 197264735 958244477 726382839 873984701 727361697 930999566 257542992 383071762 352384560 466907976 360523908 734143703 962526197 983984298 306515962 870322698 392523335 613840847 583694914 824658212 754316312 988837225 610419317 986201553 563872908 773836523 3415124 701315206 446199152 614270482 462067858 780065702 375852464 971649842 390758986 696322703 811941441 966001512 965657467 984656576 442063206 468615693 654027912 774634850 574536871 850566412 274803719 563736863 798731914 862708677 420482377 696687976 759563496 942505812 175175142 791870535 605781931 673102211 818277329 961000854 274169157 771735957 80736382 677312104 409226315 712015679 703838861 809535835 990535730 995290826 183167533 903671357 509551395 531112080 174956574 412953006 552442512 825697044 589316654 822561286 75159163 650640731 450863024 599188390 31185648 650465863 531484170 570742837 260771472 548471696 222753342 471939701 707701369 801833054 91383164 95963625 705178122 823098534 443267160 766355280 76838395 472919033 488722543 750909426 98431898 869706213 144005786 209663449 869994760 987215030 889036998 923416119 735288315 788969237 568871543 692449535 99276211 909675560 618228022 755938611 795544494 813365464 423174037 637095421 42900072 202566907 422328134 426367198 22739266 154613803 734477476 738960044 741267530 814839460 67292785 627639909 907859891 989866109 770405272 853147861 362062514 582296820 734061831 841847977 791119451 926194555 686096746 850644374 697235316 989040700 761908935 910603838 873422142 978613120 130358310 431975399 179643543 230619846 740638515 982737257 133306842 273560272 687147100 861542714 486457976 507372430 77972594 655639686 235518438 557397618 900128926 991981538 276798888 799174065 912815993 936787280 423163459 589070102 497985316 931467648 292708262 754725056 632128384 678946193 685928382 878848748 237651843 598014269 381530182 843720468 996386421 998228666 876201907 939733936 402208688 462033034 811906172 947349429 296154247 729639686 932213833 948134345 357159334 416462528 894540371 995937651 340037060 986820396 624452682 737615981 850730777 920107371 306337442 921400326 864517014 998169400 390127392 408868342 882151500 983322907 293038133 993674837 117036230 460267176 800154950 976603822 560243095 648810483 738027034 756353675 789564681 832962882 874564709 879633058 246991123 530946920 690200949 950989176 313483137 451868486 479997804 780349688 435442031 437491224 950424699 993447651 518778298 792049095 212434299 567811157 711125670 896104715 957961788 997144568 109739730 699030785 48949445 658932893 680980197 996895545 627206964 857132064 941047951 998000686 290150776 704647349 908868615 998193636 362390121 476959254 707419827 931401417 601792277 900070372 864380957 944310386 788735629 826171892 622912669 753492212 31075361 876815326 264344774 490480906 540369946 861003974 702574095 846989421 638619602 706076123 641995803 748677762 345598222 627971295 113687495 878365576 434713241 630131670 335190088 592706871 818809636 972634504 82253492 327884524 518800508 643211088 410098138 864013801 162968561 867307511 570741762 682816055 625448514 888176228 261170348 858700883 531585475 861776099 909303501 948740212 570864347 909424091 565758892 710759496 44354411 350069915 257354498 716709894 814295172 862477965 145973514 190871685 735971433 997071064 123979588 473088536 676088005 836572193 135994407 644638463 456205225 927878769 174320660 674896799 860086247 997352352 16385548 677294766 653103371 843551352 444278106 558656143 108511249 297805253 712525364 918099537 998274104 998926490 830246758 898402941 933905430 943776538 959066192 996381149 565666827 633178089 640522654 769031835 940834340 989738363 832683007 877756901 444603026 882864727 594285079 918488212 760743370 866113814 66818551 150893758 495087230 750304367 302418868 714502830 842545846 911273480 1115941 984468504 236144454 770760205 355097525 403841167 645601493 679741230 424221149 857557275 986062392 989438367 222275811 936542158 867978258 956137783 669312260 814537936 769467034 864682519 749767981 834357469 596469213 636852015 464280832 665791586 82597091 535797968 966565933 988306725 253352523 604362632 406337059 587553292 431345670 706105615 868823022 972224262 556065799 727153245 299214197 768287682 183525282 722968166 453098005 493921090 545574500 757339720 140363563 214485765 732858592 790912564 323207594 463636097 966187821 987935501 697483984 742405560 598563517 913763702 800086911 873856569 801922022 872559096 800649814 896395027 929172414 947309717 866074331 958437295 891078430 965631172 465996591 706360415 26614646 974535144 763690213 772255261 590432919 668667347 309770993 686955188 778282321 779485180 336134299 903948489 470240036 930080000 717124041 771196678 597345057 964127666 659714979 802592697 319630434 606865141 654694369 913397967 517413332 540110102 473951416 707009194 25193485 908819459 245099856 953399247 747630294 752495533 2830591 395663830 576582648 935788496 245407898 265698699 221504236 809288112 145970269 952553135 188018219 553919110 779621399 894707105 168431206 797775536 715838319 960366220 625778377 848156603 796042610 889964088 83074259 247038047 332897644 468428299 976916809 981764151 663013967 750253964 551978387 791904716 956977335 960610752 360941642 594205594 983249165 999164265 454523006 880591190 97112657 372446681 859508164 895640290 854174570 894793504 213063135 699987633 328336874 475022496 448910102 873546111 628802696 974353731 76173532 83809249 19152046 844737398 182287979 379022319 77991844 988877344 450261442 564820143 400692096 705820996 358306274 761618998 693926990 794087892 21324504 965531513 43201108 668614254 277514690 387360528 435059522 476747792 741298859 992506774 875571267 947872945 246907435 724077896 12766016 509648653 694060451 742542511 65957619 366950876 445639166 524971670 766996278 902860312 585528548 721350438 941671256 945163624 194025549 494982607 719903527 734594762 782823799 808360030 986718681 999859731 842225063 994790455 797858607 981280424 839022916 989367866 211433113 687986065 719895276 818798733 773495220 950444302 282336884 822808626 166465027 179763080 640203384 862320984 877929019 916412158 416505647 498705591 345984528 562610388 60858106 856152379 158363283 646448396 104901649 838213238 772876481 973492703 499981742 627238820 819597995 977323518 268478883 533339088 192255611 292742093 397359555 855851574 662402255 899367209 806146648 961002783 123886000 346703936 666691924 806218564 927359293 999028850 795805498 823228542 338093793 535357708 677029758 832854306 744067179 850491989 92820645 867761123 536163539 684666682 841431084 903031753 467558476 876713048 219495880 520639343 665901845 802659541 242833051 424164195 434483877 718397063 158416091 884366549 827634862 856956599 226530346 451049887 899971653 935266946 456723603 463084889 366578635 687903769 610883100 915799626 623787278 706556710 210220355 748806150 11276568 625196946 576372704 931871764 825041150 843739697 936338234 969951410 236087431 773160715 9707887 29646116 375490640 523279702 658978905 867711220 838476813 925244825 481356296 825366112 726437971 857243257 482269248 751820997 724035963 726727117 479553142 880157303 350991011 557278004 352840999 742694568 307810740 580488534 937965614 939832675 8998722 366862306 846952180 919575938 425277417 461543798 799830443 814468528 43368586 957531871 855760070 905348717 940675031 966368901 982078862 986093385 587843796 975841639 716084269 831708157 85182966 550819080 776607053 948460635 644954235 814982388 144899196 178962139 244152885 512024802 505584148 884344585 991439788 993456623 599050731 612858066 414563318 424829452 326832480 942591371 501566037 654266630 933659076 959136215 293355311 844424533 930520345 956332317 746883630 776046183 527337230 628290472 691635709 750342686 24498425 924630674 478453389 735390603 375159604 966455159 573807500 901992496 171546894 806710608 644241964 887708049 591977178 805163390 509456882 790813404 524130072 903295546 490601392 814473669 103735720 333116376 465873326 544146975 798771363 857135010 888689150 974482750 819949524 827583609 462689928 739220474 785663906 945573400 255747435 736170868 129410686 872064230 548131393 581221437 709200747 739299876 830064796 940377048 541733325 911108816 974003312 990289864 100824275 794017634 826377176 943828150 910290771 913994926 395989864 496828665 265188613 850809824 697268389 837092367 684637193 838415416 836125201 852992021 274615557 628459208 185833955 929648791 511657418 896623297 798775400 809143490 972227212 972231687 229900655 908795684 69381862 488734180 596804584 994797766 285778409 356934496 439098565 877733130 22303719 222319651 92765506 680106700 154196731 836622826 239277943 560225745 546234286 855152064 725231422 945692722 75401557 157837929 877667510 906156287 649844887 977233612 604956639 937363196 594138889 664580071 602970446 659008428 804775475 852941928 560332429 629364717 301336281 857950871 77821545 146146899 226249213 785498528 334413459 635997831 757303423 782855987 38758170 933359254 798234236 807113698 430877971 758889003 632798180 757218082 686033533 786821322 207909997 261165560 539519332 569957949 221327601 691456956 914078894 992849553 803465214 856615936 426790814 781718733 156684683 704091608 743062427 972908023 315978412 797109902 753494849 796855673 890566848 944722705 823461619 995670719 539262107 684053480 990989168 991126510 574079531 727526977 751336460 963249757 649507890 775463449 731010334 808827820 859778493 962566027 499583997 804736227 55690280 549314618 363106033 779254889 28116955 858211794 699052441 999085046 88162802 548076557 347940422 819231981 715916603 718897479 493901624 597693636 297444549 863564559 94865868 619783268 340839586 604790216 584455072 743489817 613065042 793982135 885995212 940045191 958320365 987081238 656132900 898870393 67364939 779796009 458087503 614588379 315180351 617484270 504054511 531051405 591088630 988209634 118917271 492957903 546204383 673985033 126006667 131189450 111443781 744046962 316600003 792069772 587643676 737397216 519790289 848260003 97411110 867421027 497162532 582055726 144038716 562423716 352404674 505975502 272139020 393631246 929773325 963985697 381057669 947858992 948920466 966726997 370965085 738557453 239837741 711723909 358882119 499234667 37886099 121232375 59211994 928239670 407973425 728305819 436938556 634534140 354119963 764956032 416683482 639790450 645398750 708361397 390022952 409527858 126305024 621092259 246915836 819749052 69158060 641771585 307276683 409231982 245195053 965672114 945561984 989324517 62098458 172543206 35086458 881049023 60389383 397916758 751160542 770411216 233833674 354557328 223520034 684194967 295678226 323357031 262789372 547252709 168951576 881029953 970017304 992262715 443423010 671323158 975544844 989121862 570289628 978352097 888173272 989759733 546753767 737172627 749978132 942658583 388543792 622554446 993355841 998281083 555636134 882176113 508962262 984428580 731304001 973724969 650398094 794287963 487426590 611565134 454763079 562465002 346640931 595353837 566014213 708029373 446539899 568590777 472271720 762693928 332809967 698632436 865189643 873337352 206112530 964903314 690529926 959331063 510458718 906397674 88362964 859607176 845836079 891496527 568453858 875907013 248402750 690277401 958014023 971331155 312975050 791071476 16690268 933295433 528257537 567096557 30968785 330098323 380298325 973969938 149041880 673709714 361410569 424103338 378143951 723905042 679355363 943609492 312479681 395934660 96020124 562980881 191696960 876908593 3740684 782964626 538622292 795787487 526987156 757177654 804391878 953952336 94057786 607712045 873622113 937401828 206195276 611749000 242177724 589511001 170521738 661284450 721426630 972180653 505756504 571804319 921641785 948355994 813590763 996324800 111981717 344979486 767735561 912413194 158401046 510599881 639959514 901383975 905705986 937916271 639492144 648064648 880158468 918519847 706283297 872536173 530749699 546631533 331043140 754824435 795604631 899876888 503097204 767136836 128681457 897081598 888506474 934953711 252926413 897171972 345318227 357434347 65245593 698109424 659620571 793747411 114341545 168892406 640286580 930222409 17881946 44289136 768221202 774576932 959471388 990677822 15255678 834602892 689886967 738744430 896556384 992035668 949375195 973700903 750188409 763934459 937361998 972513762 22143588 94218122 82832063 882122908 627431250 849459874 873486284 923238650 412423826 682900666 306408247 695042351 242956209 836877729 735113725 886718938 271821974 609656897 143764674 918889552 964469386 978883935 666178469 754619640 12995499 52666028 541201276 656324190 4722763 959056379 636119513 944085407 395319307 675178677 910488693 965978615 477183941 841509233 448107467 527920716 907193705 961377855 855013555 970011834 67223438 996453538 254392754 425185189 74424992 615822940 374689617 828680371 416613332 805055034 637543916 746959219 307052799 827453642 464525641 766718836 266098259 561883624 731694040 925234031 803018845 913145404 744292835 949268451 660187475 767154654 135791947 353890842 864357718 953855866 900386762 963397295 961385491 993545370 72553960 792544905 611910231 853730493 162971286 771207707 206616515 560753545 199072382 849443560 155897892 263105508 354113838 447226985 885785853 940923945 391199238 477205112 348865565 353115646 127214019 466048164 34303397 116932672 846255890 980385351 845339200 952211234 364336880 668829684 366339291 468603439 252152898 980001618 654507126 884952337 848721359 890302810 481824547 657253925 279663464 332443058 324662182 806744137 245685872 535959230 829864100 954379753 111331300 276515829 670001781 711627637 135341898 697065617 741654461 803109326 561069663 607238826 717642283 794243332 525880363 975958990 193564131 594969521 935163850 989839160 667121826 737264590 125461678 151673871 330690476 978870145 814606649 941233887 134707642 325611502 797825793 924090775 957959944 968658924 570059489 990037268 283223696 954430127 317401247 687612890 254506374 988009814 287353456 685837785 745031870 919921064 838932690 851437095 400295581 545399575 440353072 867362322 416137075 604065505 59717586 611280165 940285362 961882171 570470376 815699679 213364348 875568139 210544844 787183545 324058609 364898578 756951469 832396754 404858501 895711217 58886157 115973220 74623561 264787875 168770696 437788022 904596752 940147709 177130398 431116267 142776600 877389477 77295846 294900416 238749045 363588113 153549861 891350169 467555896 730486392 328219872 351145176 131744200 614061861 926723895 988618280 524767555 585422009 402108130 447305524 694174091 950740936 805950646 887460310 782296243 944379414 6128508 341821498 89544894 543098902 87763486 699840747 628686686 828546482 763468170 914098790 568699023 649221461 235563430 389386431 632895952 975064149 981816897 998016362 648266928 727098749 16208802 520332557 303696346 778110284 874141718 890962981 36203983 774689372 930927237 972033918 462365707 550651658 901105260 998224978 245665052 707035695 182963474 768323156 716220605 845517054 496405264 880939394 748406301 870125174 140162911 946233029 681483688 869295441 661967619 899694112 65650554 408073323 219539766 797427841 635339980 899238495 289910384 721059390 598386512 638452766 290733283 381828350 350451993 426531812 401307747 567234320 753487289 981977072 447298541 809238455 638396662 666501330 125797073 657859092 460387858 624025155 961797300 971426330 714257527 921966699 189195947 588270363 308286667 586125527 128822252 999508919 305573097 720908566 345747892 889623230 290495379 534907200 19485851 956606741 588215529 840584453 728625898 817288856 113141613 631508879 356093518 413326850 426328037 484069018 676549696 936629818 415831031 769856291 469056540 718963555 890034749 900392785 607119837 743485462 315531667 586618186 157415022 472252438 21468920 315857379 129609084 786754467 836927356 943317734 384412957 626155984 405520021 428784973 743866198 971614353 344425551 466761123 677059618 901292080 88124669 592684698 223291126 817772302 247495539 614995605 182850163 587247041 853946413 960201158 847544852 860732883 129867496 386842305 120901787 705774659 857817714 938342738 768691625 804909178 462410049 684475598 989930461 994406395 424764451 794057235 329876822 359479095 557278741 705656166 710444175 968636893 755027900 881304983 84272717 725843997 635652856 932606444 420841830 875162355 278129226 976773853 385488165 759494518 298510177 573520314 743870579 761481509 282917297 592417463 560046864 643551314 863443777 948492672 747702911 805254092 873970143 898801444 809656361 962654166 419659496 612654734 269899061 930943247 363538084 878248874 523725700 813459345 474140916 955289072 983418911 985623273 688596621 819888757 442416612 820038457 533532806 635414102 989339582 992423106 792539711 898296582 202782880 797772372 77767989 752356261 363278290 797442008 912768000 974055214 181150546 235703699 2648085 236585107 583624186 883455350 728279961 847267582 998394508 999846218 575382248 576755461 261893934 884922941 755955643 865627883 858446307 905740125 656032759 753784275 227671227 293054403 758167044 921436335 296358308 397434430 125332411 712118042 96016246 677780900 577545130 775584069 820433397 911574266 929680676 929781261 65625227 477843929 783532652 928601379 979291200 992071440 459306975 492885468 277047048 747843842 232731899 287038006 640920635 968187962 899972619 998732267 445604380 677214381 435504612 542720502 948717213 975765890 846699098 922003334 250474330 659790172 766815215 859208933 565055500 863691130 352332692 357665831 187555755 553595375 819422590 889566038 743140238 770612262 634126699 690955757 123836447 283756542 489174700 923975526 293526826 645042989 773484679 924596316 329335692 921483628 645653069 707470519 446819410 593981250 208606602 351856212 696160958 822725795 328360195 859284326 183751878 852295689 207055127 667285445 287178580 994192927 36552258 544095273 496439545 709777352 722677248 872406790 700382169 840412850 292331251 950542480 106802060 759623877 141940575 872975112 109510511 409715331 591847194 668497395 918764315 976195588 419335859 929594915 626810965 817103093 331162287 824706483 377847313 675250974 950574371 956037470 76717662 86874245 875355668 940474484 645151096 893058314 513960336 529623647 217163845 336619553 262646592 642589625 601900557 896331501 916727907 984241879 815632790 937628590 753003370 865508572 473135801 530737806 99772681 367220009 611855833 938025476 432523352 800567078 246067559 516638340 829418206 897145348 38169385 715649113 93731094 171293586 669733522 874348896 243059722 696944055 628440540 698497126 512576287 807492562 97350634 540838098 701689821 869651280 262655264 660085406 790973129 830148836 928539771 935140560 159885545 225227032 505503927 509299385 572488641 802697977 850060230 987737788 610466089 810193721 663847846 992106630 540459013 639210515 375401079 554871792 467735490 519416535 888598491 963156032 140185966 379606512 436781447 455969394 54967313 774385564 8929629 79890849 679334505 941989459 829169117 912700488 793575506 977406685 815087906 873537965 355410803 700477451 653614041 797286922 743288419 922609801 880865960 928991396 383518359 980612573 23153335 543712431 559637117 941733264 786286016 986114515 156731865 324972927 741238709 775730709 735448299 928940605 235754757 321925980 236445736 966735303 761352080 948565150 535898019 761787005 92124917 487977828 355462082 877689526 441188368 868319808 606033259 967148967 135463079 479532718 587840951 741654910 606289843 817549256 20419921 509663953 556223374 824200060 973066741 992450898 432449404 589764271 571703965 710665126 649048512 693245465 246019366 613914641 803373992 854485079 274154211 425318771 530348733 546321683 148442314 725585947 72888445 436612715 6934700 985525793 168217515 708347283 308419754 674162892 223111475 849462882 115131720 855729949 69289042 999226351 907165286 922410217 638846838 714284353 554729864 559540947 906582983 944386534 899506294 905502618 386822310 636663477 879880597 929332164 779881184 967535434 283472103 858371242 16315418 366876946 377528266 484497458 882062428 935098114 993764874 995399363 211323822 572795725 974657035 984692393 545811060 584408462 39258625 924980234 712429544 905570148 653595143 691780388 476942812 801047193 17478311 451322750 234791827 703545421 626333844 709019608 407609933 586253144 364223329 838756923 714663230 855576092 405376099 981900256 730869246 736233099 796425325 797238804 134954690 445079519 106334471 671334093 811837153 934602172 595468809 876869095 410415172 617526785 279891993 322312583 463542587 576629777 945954910 967257569 108699733 881237350 926184350 955567312 414844641 993618580 728193074 737418636 876910595 924188555 109089421 947434374 511524831 949786228 658956775 718396922 707310812 918393591 701025354 894125396 509093487 864029466 959385826 970808475 547496438 624744547 786827238 943157281 820394943 822911766 189125376 958087884 297076816 328153806 343231810 541856796 547660691 735553303 57937682 815942368 910185035 984980441 779401942 992647635 699474376 777151793 32453108 520178467 47743308 223792760 6342682 926192348 431329589 860972912 464925135 612511749 634089862 652825867 645824529 671890764 179970524 512738489 252442874 916578351 269073195 325065808 685629175 795104304 405254379 791902368 156746656 742846616 797681270 963683014 143671366 336175672 146339852 499188789 32538299 139647447 961194890 975426395 453377647 631206960 846830369 921708479 618303012 769180394 968999653 996996896 933198510 996717739 12576514 938740824 183756233 301896614 550705817 716856301 6052924 899319980 346494921 748912066 814192001 858572041 676493800 938875866 244145679 840193965 127341408 684779260 76767165 115006706 216759502 242148261 732792472 740840697 309339842 544526090 495241175 912845390 295773135 655319983 37378058 729571361 304724152 352239264 710784455 722339651 60409074 126019820 818709550 913705807 926433223 977055829 723648175 806463382 993230570 994829583 131584553 827595467 820132937 862912826 881842974 891117614 40408390 975186872 744083487 903609951 894157790 920636809 872398158 956367478 177023707 717921236 498717509 524275841 728551844 914474391 458921943 724970305 149208641 628930082 981247333 983680839 744985276 834184409 441511840 817973136 357730746 698819730 48020203 936025549 468693339 669599334 2322279 252681894 430581944 605742152 58737644 289171121 327781830 689407475 164936450 744415194 353459270 927059114 620127129 944765089 511863555 861684289 980779371 984216013 356876357 797479095 992470139 999079319 272459055 676526385 657112210 728568278 861887533 981136932 274207101 871311147 202200266 605368501 243879774 258487494 982880533 993425037 836290132 837396952 58341999 267444327 191203499 883400714 578156772 711128523 708710407 737031218 684071968 909917531 937758863 965811465 544543450 874861867 963902997 966533294 375303374 496243549 320253362 509475976 422070622 630375300 81377315 940104836 556603044 753015577 820931914 825920165 943388945 946054962 63485643 115759781 154628093 787665765 580709104 967683686 230037112 619892930 154662978 666281096 274444429 663291611 587456258 687973587 65658274 811157440 939983507 980634958 107806832 273125901 34252561 576821873 747460570 822242156 468592610 997106259 922716499 957156733 375978595 836453620 331714445 842035005 183306195 549735515 85906191 580551351 847101178 852072627 63293659 339677619 692357918 762750269 910229254 927180891 649827650 824377371 871046179 883028278 353388153 635792649 431539802 584512068 217257590 678124070 201067259 264567275 702377257 800364006 924173195 926668958 65336230 845401877 560362252 780022396 943815368 984007879 715509520 993884196 947020606 988476712 787189357 990285520 509676599 805817820 585792035 890282117 753476653 847842345 977722685 978387202 297084057 380105151 563980765 589749178 435868789 765677246 601013630 677826070 875585394 888566971 606706410 831538946 488020164 697674973 496160075 911473574 225919016 560344154 755280318 790392533 651415336 674929271 569878589 969076103 359853064 940020027 589824102 685223392 234924425 907446950 767449978 791779459 654784226 868873218 740080866 862886898 159362013 585205171 547836269 552231026 163663919 431864365 774355336 980156115 848299380 927357878 676299480 763170991 192334545 231888136 88714762 94204303 640849360 867861801 314652523 690549822 967077670 996265439 541957701 628239416 556230691 703605472 882423752 951984583 611727997 661136485 924681557 955151839 750709250 990407235 228315913 410537506 101049713 900809232 140110624 368420230 777349673 940076856 178508169 310358104 947101895 960446115 135119267 403465676 102323119 705289797 165785445 433048147 281054919 952379978 777643039 907586941 667028237 810101965 241354729 919653641 964911914 987997958 298777305 813326682 81668455 484563674 889263992 978297290 57903514 413036968 208850932 227044086 931432568 936744943 750102644 980045214 900656768 958402534 279313796 421036694 473874193 920137757 407971134 966908802 529950453 896357941 735741497 802502271 479659708 918734389 858939968 873895482 985105971 991522649 213240094 308159521 84320578 686358548 585807752 830123868 367471332 940905583 626403439 627966985 212353645 877600239 592697231 637019947 421875134 429741472 401832924 423847752 776413489 851762800 150856747 737494035 507432705 622077218 886532801 889330609 189566582 814395127 956380327 998028873 560561319 869952456 312881572 897521249 432474521 523615325 673015162 858440049 614496696 739826800 515607545 882467692 240740891 336383494 319012335 462205978 43310283 83530569 474588724 604949023 632107113 994759132 652014293 737679231 126876485 796451926 259185295 868419326 156702347 612602327 72584735 968131697 274849033 624785343 280942606 621697629 733680668 819861399 182786528 247576513 999040163 999231137 289570823 388673680 371464116 814582715 100182504 394697860 269515790 708430881 355152410 538912240 333782365 823439868 730960060 950718630 943862121 977820456 737342201 853849406 842980835 906903167 385494824 707406368 2175497 101561676 836079734 999533320 716439306 895599869 867233170 951432567 66420287 139472924 14962647 447083739 87174 617938340 24954238 328631294 228931175 231576872 179093356 855982338 510062089 988197230 738377982 955067023 757977050 922776619 739215066 746390171 203728134 541160795 815653220 974820049 18043461 310529855 793101873 950081749 180491285 723316317 20649241 91819261 187102813 578374180 11372188 705314480 99429891 694239624 538327413 954201733 794141782 982046164 294610310 519728569 47247329 640902085 648896279 885769428 297854378 991251373 882063132 976898364 508508346 828541362 690496760 959199894 139599889 540951202 793211976 832527641 677506488 712068972 656306743 774423738 720438807 905131013 966136625 994955530 873913187 912569480 833138051 939553596 513765464 886343037 726987967 824259487 232755809 947507687 253990050 599214660 554378426 897533453 562384285 651032969 535259226 706877794 589503033 924617497 861127304 937335487 179503852 990658351 177684102 806859510 917240725 931977909 521453006 811113088 952460581 996713246 315352909 719602942 403762056 812466346 375317407 639063063 81168626 267580657 908879557 997768345 761318402 944435946 825616647 938367082 840229615 941458086 452335338 832910481 790507593 805493316 107562268 707099671 277913164 293413242 299104811 407941907 538684744 644262091 245541417 634483217 53171204 256448524 781604167 908561384 820860078 935134580 658926015 716553257 53240245 567280520 305418261 336601957 702811308 939681825 175732523 446053275 244840836 791585865 717150747 973919638 972798728 988293779 244433660 556223432 603347780 730980049 86875494 732434091 815939223 901333598 79549863 172915809 74756278 76640469 703492082 726352657 195831662 330354312 806177819 928913674 156449599 510906642 773271759 874714893 835425022 985592220 658980004 938122219 745473376 863809444 911346573 989764283 641557153 751994558 209417883 578857813 680750026 818490289 298474365 676495102 317043608 522158631 988619517 992293556 660581194 711293456 666367293 873480545 364002738 428546598 295642722 997906714 556571959 980543261 814092476 854006304 497217525 602195102 429398477 456102072 60053327 604014291 939117622 989822086 921808 705124805 977406166 983460453 864003958 864114290 620877097 715343728 362898597 390675979 143377167 581867042 603315776 621515451 138633984 520622569 257678152 704304353 134255496 726444866 993180114 998396414 684188906 749156307 382596160 406994022 91563025 261785779 967514511 980620107 303485099 703333017 910175415 927154020 684934265 768203252 723544312 829615830 766507383 799769647 990933491 993366649 47943043 504632401 283242744 789828201 712148668 838653962 713471811 926878477 410980317 599785096 594740555 683164776 242538640 728086035 580996238 732912361 833201102 969472851 741186048 770697655 594972544 806786758 836750354 987031875 537785117 982940103 875469279 964664606 358238312 606919428 857085806 969798901 213379678 796715540 769239994 994651945 879400249 949616717 702538920 974794587 119882327 581880095 159838715 936512176 390444954 476422771 222843716 426355519 560010486 924486245 119048541 444981066 709765607 943204390 76149455 734045275 82400048 883787240 478276849 636449745 281704800 545431395 168710072 918964354 304568810 995003708 504851187 601604632 894816061 925279096 473404480 698841706 823672181 913049783 196348002 786089385 578778687 611812142 668290484 807505871 226648564 606608868 418503453 881761743 231201487 573688988 13105362 506130168 99041214 251786259 827009930 871119496 582502522 666807803 474378415 862963088 567328756 978910133 138491878 586297799 45849738 913720727 615760095 717276172 920579669 944154630 402401250 839191942 264387038 592536173 394761965 523727629 544394126 593302550 174555976 292866144 922175458 930667557 494096098 646094594 29120406 634842162 77720285 367465346 734520915 945070883 192832820 854781933 546143022 906091520 153512548 940560054 435366343 523051905 210530340 490684329 997589633 998605229 705091718 999905722 130992741 577043265 277972026 429346209 429137848 436989324 855779801 879384452 113298812 216936112 793248572 827773559 226524551 896264342 292341927 939982881 69423530 169992650 614243567 894936207 187570881 309286342 305971341 528864653 560964107 728499145 148445826 225732561 79632451 826443493 616191356 798855483 597197309 772266538 7968479 140863050 85287176 662429302 81788173 316014939 963949475 995379691 70780461 752459315 807014323 808470337 249276474 723210262 222219352 485049393 441321418 613340156 262726850 344217214 989861051 993415627 373020605 842328265 812632494 813365325 570025094 850478368 927663814 931692929 149092445 581955094 120137814 673663090 679159350 733483572 573697021 712920136 325270574 989723572 548197823 814357617 420793432 675919362 847728283 902187944 90324511 586034699 11055211 461733733 182245839 702592266 870596564 932441047 872226582 893152160 494514017 577371237 869244255 973475608 644210549 854138085 20348580 904503511 797840203 802550857 607486151 938606752 262880550 576980849 402057906 592173394 271102072 532719550 760421954 897103672 59535562 178918120 888309253 968897142 533367497 569159214 805118843 813989984 626482685 983478337 241493130 462282010 302621703 803158329 496878411 765981747 755283754 988821121 102623897 390984294 421195942 721662675 732209933 957926515 524317176 745227449 502591822 582976099 796480711 844291490 40881094 321077878 557828167 850895516 14423371 376750031 433731561 762461369 321051950 513386771 790577334 841354216 944568431 990742861 652796586 969437248 26768034 256618196 39036828 316003817 317936036 833779781 597055280 886759382 541614684 801960446 665496090 808093120 37035155 568187567 78390177 123415347 141927032 191305882 23950725 201030601 998131443 998528659 300035909 819272619 435129881 625192978 144047271 840050569 156179286 833949842 684931177 887296702 169895629 786877895 250437555 921753409 760649442 828304805 368802703 469660397 187456915 230456591 56478830 962674074 815514020 865763593 408529121 665502219 481456560 796609323 529866856 689641569 69262347 333244626 341009874 965626878 600304717 922509501 196663359 940952009 83815152 670881557 510722818 534497795 703703618 720702410 662461663 962496282 65808787 190611425 166635428 201376946 214945129 823629918 931886124 951332773 836513927 995450853 814739390 940758496 398961079 609291145 646940453 750571983 122580601 514352604 708247233 805494424 975345376 986943809 589502654 967493124 478046872 596801837 251415703 911734540 434476528 761391640 528890333 615285708 670264847 865235503 439552371 474218813 805319025 916864708 75318003 270385368 394759245 831378018 873018153 889118371 449617140 866491307 850966058 973514954 73408573 411771499 638628681 655887185 128021266 732831755 643587829 670202240 316038461 483126385 492727571 929411602 711479609 939320870 151636303 777990211 4583138 212566091 359867297 742053337 165288810 723932263 299270049 870320429 230578998 338534145 46851735 239341900 296141175 383601767 617193471 835802118 245494368 377514296 903017173 944846139 318459348 424403121 369544676 668018569 361150836 994967158 255457420 989021770 312888873 777719617 464116173 950707458 941145036 983960101 997467571 999629053 89833642 621690396 980221500 984603695 859557331 999899669 514806698 911028578 142241398 309708135 729888179 916820389 71377208 967293912 901819992 996390933 232818849 666471516 181937595 623417709 495666692 721545575 154333938 326407084 31457917 552017370 283443946 535253583 831557257 840360092 468127108 622373543 964551874 976833848 745133469 810633579 958309990 961262732 993233859 994669312 65904064 432900501 55121278 561096373 985889371 988194849 792287608 821957934 60744669 380353309 882391932 990267925 412245065 791739146 417714208 819109464 349779342 679938343 534829912 827840110 970345988 989631994 670304994 766580255 160023841 281418578 837672564 864839512 920258518 986107735 934133125 941208125 352241183 403922714 53583650 271248588 924237148 946322541 488812858 523247831 334011497 728345354 322750763 936386029 512491261 914295243 134290598 689430589 843687299 899330563 47962162 187179046 334441900 765509221 684589408 716183660 702375740 838298754 747178257 852734645 550193304 870927362 886925429 903450418 371075253 404105463 829489250 830886015 625960401 880860692 925095998 955355976 561924880 778194304 702748941 851275215 31056234 285664732 540665118 616780059 692841694 832172066 855402432 958692733 463711337 791681363 786950721 976125480 618852973 890779812 40127790 122003770 815821286 856167349 755315243 962396642 294490714 416201890 653497614 869007418 14879298 487203022 727964357 855998870 514104318 821698276 303217761 412097579 890509942 913970436 117087925 708483133 477467671 984217488 569671593 635454801 252953460 352672957 756558002 897303390 561454840 929090748 17678903 646673938 185004826 249792178 959070679 965591454 290235514 733423935 274180461 889561195 857916116 865843352 700875115 942863506 499543080 550923129 196964160 645035388 57082500 519775403 942092226 978389829 350289446 374079716 545986208 913313058 651063752 908255304 151693209 798232657 679868940 730791610 632571759 995632201 462174331 590634200 75996621 676077799 859788410 991662391 571803675 994487505 644429339 969068359 652493426 952059528 144505780 267385171 796467281 852614451 38894569 238823687 235467591 809260468 756225334 941428335 409358197 906044270 863835743 889292867 62612053 629702589 839893616 958229244 815193989 973766699 100376252 458168956 967284724 983254305 224370946 737683880 860824947 875761240 166112293 440419686 979686013 990417042 430747383 433584626 287329475 825489258 523915143 774512991 366388169 454874291 400503165 521410043 441897380 685300908 415373706 488222268 453429491 619615872 498489180 962537992 501006210 788427805 284098347 942868733 938038117 942682460 231243437 274273570 525698571 701449683 191051655 831819387 880249477 922413086 755500016 850967827 179228817 766414927 96690558 403746801 149129602 227732456 342453724 617326632 155263292 273677233 586893281 610180484 479610772 980212214 529391839 622325838 491025747 492368418 132187731 319847847 789088622 885276912 247024889 436261153 604107566 737582976 342227088 917124135 554079710 627869543 588063689 719709310 656553216 666181505 439479253 585848633 905992236 998350040 970633502 985428253 231320932 594605239 956612588 994155873 235604257 490703918 149677803 162042476 687007034 878845776 287833901 678709064 772871958 807424257 766032131 782713622 254722734 654751168 500110796 542180394 944930526 998785741 42454256 469117060 745697962 951818001 512462266 937296636 514318789 634536086 380837998 850347045 912077312 930919210 831418000 947130375 655183627 957413922 12817525 726397125 414093129 547447607 511905153 821697656 81125444 227696872 81407533 539067448 940054823 996783752 798681331 806222079 895751011 906649062 360115406 371219518 781272672 988231673 77029356 949285286 979161074 982018537 86895996 450794389 883567500 980486798 988139742 993167617 261353535 577891507 471637122 716225270 929794438 989390173 31137099 340352144 176119568 790488980 484839244 886046376 339986611 667076413 169016490 196664656 885164884 899554578 675455202 934862236 372264017 904579187 67294488 360516526 864755256 995507714 412969025 533930873 973643567 981434291 533594312 682107426 982854348 994317853 864222468 989339893 960226084 966754776 503303690 582852197 97665739 923872658 633084865 859600628 622220206 658195481 961011346 977351220 571638081 734806258 185363819 582845429 621778554 772637716 798097829 817955493 789625219 910168865 684622526 754808729 204825535 442355925 415581907 554568341 953502923 990953617 160567878 273327289 666121141 827825085 801281206 880473359 993259960 994858898 902118073 924099394 174239466 360647774 727237502 730710068 491150593 970331050 827293222 970755983 429845145 654087530 728077841 858948306 465542725 494064726 637567856 722480770 565533472 811332934 681824852 688204281 527919262 719276246 765396601 830938664 494181106 610367512 919953838 961532323 713478667 870214381 246277866 912251976 823775000 919532028 124007114 588034714 334980523 882834729 35105085 634495185 674530265 822617497 146177303 989316859 402699675 567665551 313157316 709395169 609113478 941813714 403012950 570258978 540327922 888190690 661040054 791258373 803432578 914107117 622783370 653510589 495954709 611250691 862463389 912380791 782270610 982388807 978045517 991653317 442653414 492194477 336032745 770940318 309945084 898937225 621725297 956359125 893350961 922442782 693372550 795865342 249065811 873312680 535277058 660565328 328577016 475982115 367593395 887349573 449874585 950588218 689451149 916359628 629019086 682657662 990404836 996909046 904155130 974218357 193891837 408986637 479128872 850892852 901773002 939630908 835351894 836693320 923587785 983056553 846453423 953084967 166803756 560323026 113865146 567414600 508046082 949587837 214315977 358786879 592572112 825895126 680851988 843564725 211376227 552680341 406711223 420188668 239416744 781756915 127128618 571436266 470502240 856101040 144672109 621837298 881187532 936207047 311402186 901423264 543362960 595130428 18057833 398443804 636514995 839614585 553154326 673402626 331249877 901438189 677991091 759420124 743317527 771947902 59862177 707596934 187710168 373711926 517104518 734683600 648826170 752586036 972342065 994250217 387149625 856391492 844328312 920232952 957702751 972859414 847870149 910956391 689257119 719328185 256541551 904064773 674215765 889821407 687095683 849653776 485194403 765506245 254863250 764238943 41205590 98975435 350147240 442960624 770405365 781428780 986498393 988558790 677364850 879070436 71071893 336241103 412608970 467965296 875442128 999252239 713408653 980848519 24729191 861397572 693578760 921679212 473930339 984898981 330526586 730092833 543723300 986984877 210468642 282623871 263832176 695744222 895140684 978147635 189591474 527262732 35736454 280678352 653649782 799173190 509544500 784964179 521185800 945103861 492144882 514285185 109668619 211587910 147563623 435747498 974439712 993402922 501562566 768432611 563726501 707433662 671795404 979487123 484983612 768907847 374086802 993352520 243309179 544833751 261507239 782341672 811268815 967300218 920406817 999709580 497612415 854864256 932777657 954914162 657682928 963953289 905302108 981477488 76588398 455302022 592820316 854415960 137611298 297667486 205020740 626823685 754556369 939251391 423397472 892096656 952606468 984086025 644028391 950867574 279243367 353998009 237032661 758552965 267312786 548850663 298566484 612616973 933255823 948363368 576390269 703549979 291021447 871629521 107009777 629377841 352093093 965167326 410786572 553456713 931101092 982807201 688181981 734786665 128182579 861980914 208839548 498824860 311706180 378483476 988300141 988362511 635785411 667309432 640131766 735686208 51085247 580909290 855062800 963303433 176710937 985982646 656862450 824194341 91641426 308011943 262824540 725543462 227697934 779384448 305824021 999277480 650855936 916937615 859414242 982031578 552266756 761037951 155029457 362213869 61348255 562515859 519629477 926968374 530617543 678578545 322045618 715172895 268455088 289699497 879762639 998961800 853880822 983196857 164423344 880446566 94092403 503820168 396009376 440983158 273047584 965325024 23616435 243621604 452625366 573306162 642346035 864756935 557022571 871899491 484241004 559140629 771542355 813398885 412378960 758982676 972680003 974700672 485592641 633113969 513661886 925012230 636791234 657772846 957661858 974705242 385455818 786364607 373771226 627562743 212226793 769337606 606379 919888030 671720516 963060601 723508934 853850736 410508643 461887443 839151714 938471281 464950834 695150341 74612081 951478917 425708492 591867004 52917273 350968973 163829894 338895701 792562815 809034048 63135923 353452132 825795541 876822949 803939300 876804140 532893293 825022835 684478249 961700336 886201942 926026243 907566507 932877322 458116521 705090078 896444478 999887454 34787047 585045711 643554638 995441844 132013822 934126841 672804452 799601425 439801817 905159446 7302921 627434206 865577138 985676661 167968053 639647782 655804675 870022855 841108886 853218737 888307519 916210971 907045861 996101828 295035779 518820916 786223082 786434175 201884460 701079203 674963203 714211891 887608290 965310567 157477172 435821402 364643568 513458310 225502318 370340578 282548865 796495794 38503639 366386432 478205408 662887743 860704278 872726169 390728486 662483206 95380610 852579395 859913191 867810096 760811820 997955807 676067858 706342878 748847116 880223569 463972473 583221281 497739948 887244552 153534960 482009429 817225119 903700805 103359194 672603211 611403918 646166337 727518490 827195793 26795152 777565342 491370965 670186247 73855227 417076960 908501461 924069947 686953613 954052350 749973075 927714805 892070924 977242663 786631044 896508811 138309038 856040724 612813825 870489805 309787175 413644772 649953467 939831592 27115676 540050698 972125811 972350378 657374642 964274463 985579723 995672392 673424461 723088637 964175573 967588081 373554456 992036069 921508102 944582890 307603927 921075909 159800841 678057746 767589259 884792866 966438008 995197101 251834094 554459682 293246911 740449318 569900231 860757969 632087915 937931365 349452870 733029717 904939862 923521225 568865969 574973183 124911485 491122744 1770765 809444326 74577063 331258837 878389777 892935749 251738946 920307719 770289464 894509518 810530592 848969994 91457353 728824641 699014005 850877593 19505381 980891452 220900128 545909977 588442414 674363485 873435862 988170865 747480360 882910240 778929662 809429070 861813969 986315744 735129672 877045483 460656329 812685785 895564927 943818248 583085212 644624741 414576349 541407674 970976833 975526821 563634815 814269659 88722583 967325552 857975522 897929769 926923498 968315709 76318418 656443087 465522314 586481909 987133427 998510010 405066786 792469207 23754273 293809222 411424142 789789993 105760173 716693233 987273461 991787819 522564776 835538268 564278841 741284808 274108340 643015748 759724668 910410876 95680390 726400478 580560776 587949197 245382023 747493384 305505167 986977101 825846801 929434310 218392863 550843377 265404302 645431719 848239166 943375625 526547507 881096692 236617075 747981418 803673201 940539302 520140582 747188980 913941144 918217293 947134678 948564287 55811713 586181294 194934852 312410022 754751310 768828878 740356853 873262674 175388393 415458400 224181396 232342102 710679873 726485417 249371625 486809942 57259833 362466970 988829519 997207997 385961479 425179756 76750699 108516759 23373000 964464844 472143676 922447617 899893886 926006839 411234895 908636556 81770723 282950843 242448229 626463689 294424900 387302348 927498843 959511702 288416613 923790550 116954676 310008711 593203554 608444170 719455842 991045737 244815842 957807694 846368409 860709938 410137038 727004916 98188972 751206320 774896809 911422734 616303714 702579429 855273257 902718034 887510975 901229826 859130437 970346652 176039548 956821634 327086148 691927802 178955933 265890153 977749010 990948333 621490901 886589435 32319204 740675834 295684882 850106878 972901411 982020409 399336589 541272467 546835945 820169191 91702725 163351984 253552696 381234007 842089678 849324944 232409565 293960769 784138008 834326797 532273604 844521208 135325210 732283571 315596271 544249414 824055625 886739132 415217081 813839322 768538092 833632784 465510136 711396194 487506905 828460735 771409273 949522100 915855285 925336705 696836465 714103189 748453630 898353261 56385894 130368764 856170504 929871081 358748409 608189318 969273040 978370752 326255485 935597987 705141805 749729915 838679852 873106858 746170870 753829346 467108011 957290166 264448930 809147020 76585769 384917271 863003288 918636482 653548099 779953650 486448478 867255853 98782340 798576958 988976367 999550224 663751824 828370372 836692538 913437368 712813478 968445986 514742777 803868976 548469087 687756157 980086762 989369882 518814851 643671313 373804557 595192470 86430510 987508101 493425459 703136458 990718884 992540075 83965028 99053052 708716200 995319142 404826797 861482573 380739779 542692876 218323918 384026493 865767386 868389597 171432207 799767507 536269022 583576514 323913223 647592320 657961364 880842761 81835090 265797848 683642360 800357946 395402228 872692368 482952520 843152323 504803570 674338121 939159355 996034812 400572006 495703012 323758070 466987852 916435751 931169996 120253505 998387831 423240399 638410624 184589398 598910253 759216148 947279870 733866593 957513951 164031451 565397649 474253357 965610202 293822512 932686196 818666325 994776124 944656004 979583427 814855188 922214497 963136283 965507208 336437780 348816325 815697369 939748025 240986628 316023929 949839749 986105666 151012227 202622485 648207619 666043082 834476372 966453259 18098878 951788105 322276766 780378941 419340459 800541701 827252967 936361845 575822941 645104302 260450003 594891628 102767171 293585308 962300719 988377458 716074512 745278269 805890395 955785835 548306978 663645092 907735903 909393777 917751243 964845675 748206168 986207187 309531044 705169170 81015280 190477592 349986446 795675619 868917207 980766230 271753509 697449852 431304544 721462100 983516525 994769150 881013092 950680905 520873269 957006668 288159692 772042629 381334807 927707853 405206225 485160407 404359649 863096000 462636270 582404318 284322798 930519749 640355295 777276800 346833051 582258643 235674778 919098563 69193900 339555980 369538890 466148788 260069710 474833535 416243278 786723168 594889235 761565575 394162560 923445845 8035850 604799345 47893055 947612240 346227825 876267831 100006603 304733410 620241566 678879481 29215965 677116292 518870737 729137544 144617840 960239679 201945006 260583672 818888851 960453290 94138653 965966911 710101133 778102223 962765540 973668925 120549875 581326945 405249105 952354306 81784667 893892426 932931953 966887361 403492869 733231884 44202533 195210938 439640083 867464810 249093811 355288422 150532532 973840286 287402900 440897618 85746581 693010007 865870101 947972534 431713593 452751833 66012300 749369955 976974476 986883984 663160310 820653631 11167576 724808134 57440605 807020176 381314451 406355903 854306310 897785799 138714740 241565115 809593910 911799852 449542539 982772207 997856746 999178293 308118352 584031930 906850906 916096354 133931920 554284302 948069651 975876426 507686816 846510324 223539567 312352125 847792764 851685318 253493387 429911660 517560757 763990425 834543151 862839423 162798866 750589594 391683522 530975112 83464086 474120373 178255389 328306201 597461466 675721585 896256934 937995130 817191119 876314467 382655254 922798997 249079207 722393893 27879748 515499019 209575563 660205246 705343255 817340958 929107705 946875762 180103323 470584818 491647741 732748981 250226318 651445671 881140850 952170486 416396479 434179341 800692331 874521573 165462709 672652186 253730643 776737245 231675613 903142229 261429793 843216230 683788110 827509571 9775986 947957281 506018128 569874290 829874447 909259361 719383457 753584083 442103897 588778438 861453532 919771303 108394335 728859616 409602960 933379721 520851007 561313392 872144134 874470510 917934286 926386998 985769766 993977965 849575334 892106240 959877121 989649599 291963317 604175546 844112893 959183353 928182008 964903398 26169575 187725685 750120440 924794053 511485113 931305841 40688113 985338351 108875852 499705823 330576834 881037564 143074680 474398268 865105181 890760002 445132180 582262616 401813535 982584508 765870714 778593597 611616132 944936851 237857886 608847893 30627784 621573972 445955705 546140052 518090502 579020221 680374254 812006974 979517200 999713781 912680493 953537749 720344971 883416235 468359689 603352226 452719642 946648012 232740116 382400192 369213898 588126667 770499070 830610898 343134870 678024269 630876904 971960826 336394872 852352776 616420308 617483878 903532166 968521880 944621403 949880764 163923424 669086881 703725832 842773481 334351109 569377931 577595722 930227481 473485868 889625473 983821024 988513343 765721739 781464404 285198416 564193554 300176904 454001215 497683541 720080301 589501741 666805758 50147882 998252979 217294993 272443613 115120695 556607790 638715523 746211594 739427286 749011143 838395481 938710764 571919908 667173736 926418332 964949928 951340602 976879507 826172560 876368863 770718840 914380124 235761630 544900591 460272435 764346574 759438889 849955540 440808291 661762441 590300386 901541350 202796264 554578877 844808159 903695601 818304508 930322854 840359499 857737189 63152837 785908563 905986109 952950165 522614403 777157542 555300348 844924076 158230505 683966899 169817323 848519736 488703770 746572901 583367530 769922575 495160846 672201329 548920014 610701263 497583996 628498507 875286817 958975396 183218762 890299840 172970933 477223958 544263263 891389241 504447575 833749807 788767775 828268819 220029463 809493468 790420841 804148916 782664144 868593725 58081325 113640467 342260534 823022151 527838900 739302010 548729493 919194799 604606943 813222849 334419306 812381796 253133749 529529357 839612561 978752146 74118603 164562662 329806146 817524863 531450683 639641719 857867892 882640445 915818841 978162815 45947104 487180336 432675712 894751670 135417395 979644742 417097210 665671196 713611165 736233018 374074799 810266522 259661201 730254008 511095721 932460878 898351877 980906104 635203059 740689200 567668777 974145514 559946574 654311202 623224380 920364192 330379984 619641565 166423279 389644074 236512957 697798194 71340147 74919939 633354902 721284155 726727760 767157234 507197076 826816556 203087087 325410064 527735181 768453876 876947978 886302903 882768263 956227703 237254519 883329496 800935509 910082696 874817201 887556834 303652892 703726324 36488448 635887246 876225356 969406327 405477848 874565372 170313734 927689239 696111544 899526157 508987308 536922016 835258392 885847147 280431700 645923424 396954457 627106810 854027230 919239273 656702426 944609914 569421291 982917096 441143334 754188177 197973432 214599952 639203175 751431557 659172980 912817309 786850796 941687505 491128155 684646288 966289414 966515220 983343133 983560737 391228725 496124406 501887495 656776074 435405136 566966763 37714199 666884990 275362207 370988316 67649274 834277042 577787562 736581841 767149411 802853213 292741871 991265748 520522296 803209554 924731072 933877901 761181985 833867721 698774803 775375975 668809680 783311969 600731221 934476710 169535894 497046242 905668120 951769221 723331672 769436969 45717441 332763361 378756220 774166055 146083231 657758787 653962057 901096655 284721382 428240416 82512335 540192360 706192828 928095055 683594230 953648682 894760861 959355384 303064810 715090405 920475328 941854047 852432212 921953490 608767730 638114278 712517153 731479441 541664391 851226749 552475517 670192458 205745784 781118938 939580167 976093407 568348872 710967174 497384373 944509596 282218516 764210006 259568862 410858513 847903287 935937980 200937280 728909213 823107753 875793307 259311713 629321959 18875477 998104714 422619112 719538581 475434928 751054695 295853217 805602086 562360742 725265206 860203989 886435255 186470126 880308280 212818704 310179431 191627021 572621718 271345357 335550782 337597158 355879971 870557816 884740359 316486736 855867336 575971165 949317436 301513649 530629042 428216870 582458655 112149104 650931071 603979410 927870333 697665133 978021416 979007128 979978718 75075017 609361552 268209572 780542996 519030610 628782872 542934214 684573168 609391787 869686076 732613515 863018344 61299939 80149845 533111565 664667436 526910796 585222571 175726119 865938023 272699569 873660018 152044578 964123664 500660590 983734046 776542803 915112138 124241511 508212009 727496312 901191429 585549926 976555284 150329091 588992599 445075940 826664552 191578110 438641768 848133861 948681513 249238754 278436333 267648221 611848731 596292815 752536805 22925211 496730866 444039432 557988442 79573756 373136073 471432001 862195049 746407279 867028589 332381417 581768123 617144185 896002936 733762056 851490949 717893327 841350067 243245782 651365938 349361335 899218424 686013539 747569010 725633639 729204822 843602887 998199762 703101246 917767622 130340714 150256117 844912647 945089269 878743006 997385805 962179401 973420008 430992394 784766447 305974294 380353913 640096796 895153539 663278519 940521924 440495195 693904421 129554480 959713964 158343005 235786090 86911882 680989545 393308020 792822280 525333913 708406931 335943247 601027735 556742609 874388860 560208022 721051449 83771178 394130282 294302098 532615591 802833171 858860853 670527066 788108215 33052530 678110210 853186984 926519621 159216673 280211701 745014819 865909625 786728885 840235508 337005863 375134807 373177665 473971623 953981066 996206415 687686723 884110986 898473650 901523250 34149781 531043652 499472173 944750309 594214676 792440199 583364985 712909517 456096059 868986074 712751176 867837911 958108024 981174377 152097203 495933433 533183403 691622086 881114760 939534183 439866857 997162044 586730362 774084686 283047216 303903744 3831889 907678916 963504892 975493619 64497529 692099467 407073825 643809803 918984254 994392524 138551536 572634402 362847786 560870431 447473969 515268119 684684952 804074893 104735395 916427675 75236527 154157991 805267006 835232800 59952554 116044814 356151420 540250480 758273953 920259638 625992910 829655105 310188441 879010001 444529164 604837872 234378102 499970778 761807244 830577102 503538236 849338715 371554228 398115311 56825103 66624035 971797521 990509903 424382602 719224395 22159101 604375088 905834153 924292099 617728676 751214984 986877024 991763903 643847532 701540499 244036083 470427771 422235178 791522205 353167114 919807600 764281484 950957123 793794991 883013456 898244677 905574290 363698512 592573259 281368131 395477785 745447387 847567357 700484499 767119104 449293426 898896144 812105872 945799935 514605716 704033689 233088093 357383332 664235026 701219655 969261573 973131887 795086093 815295797 986301580 995678205 861069662 875021472 436934075 832622118 630038060 810785444 422124591 575317493 704840736 935022787 792645096 901915046 703875253 752073516 841426503 990103368 228318227 398005868 542810151 919841124 202397477 481887569 262945712 832429355 84505939 686272188 542439066 719211751 584165004 776014100 703009934 737488219 440683481 987466019 382983905 610238177 62959302 377360799 465369479 570786020 368753893 485129413 961825184 971752760 993727680 998441182 708986752 995139508 825767831 884206531 610574577 991321793 331067402 859597070 328288781 608312500 592611536 654458465 484099084 954073727 92725370 311910043 463071786 866910041 127885234 936035871 885953992 954660152 566988811 574975777 735816902 874199207 62182153 488266191 183543177 463346239 612021556 954973856 425783951 902787531 801312036 970308537 10196414 255957518 138860657 763904208 878545184 926987809 476151413 611179160 268736853 727765788 741758014 839376330 553505894 844323402 216824988 599918188 164838632 197914738 299232600 557172832 391634311 749492703 201361002 498398226 29248461 447627507 648273784 876694800 239363981 333369113 747383783 911778854 895743975 952878047 839839937 959640225 289441224 893937918 129899771 203633280 243480917 261113325 711583315 937229145 977345625 998566018 73702672 251854741 370891969 595849954 610685222 825801183 248142114 632786116 399308301 735756784 620642994 828137558 623602874 857969226 1393341 321153556 874891109 924058520 825642911 836131065 828158546 987989872 969276584 977956605 1324396 827162864 253451676 774081950 291850165 416052845 67871180 813222239 385124947 656823807 996047663 998645144 294746292 553854045 793816905 988846571 411617678 636229607 794952311 962099644 160846235 861947422 99558972 330810545 415583881 481660138 373961477 812267994 79800211 839446355 606582187 631097585 484872844 893573896 777733952 871647171 571267834 701995365 332881543 802050416 19930756 507306255 753178277 900236595 574163356 579784245 778229589 829713057 604518905 916469940 966495171 986116019 336824062 450227325 40504568 131792123 182007298 718769025 616605600 655301812 24686143 409187560 355186884 485122760 273632463 809798186 156945721 925709763 283632227 977331657 955704960 979691621 113444776 183528670 357461749 472896729 218850236 840393928 952939575 975852932 523045788 598439116 217593082 772339369 24143717 253546919 998846768 999451880 465824021 768169931 228823148 337472599 285025485 961892705 715478297 869699527 670975256 986433500 475962869 928032242 496966501 701721533 476699932 877310102 8830306 513692262 424352802 999412693 37354851 553611779 101020418 503605878 124935374 975361534 48790642 678666038 21596987 858252615 947650809 959206423 12409160 378749741 99488578 216324979 421103814 853693366 85269059 594425905 365012496 382416285 947978495 989068568 593358685 640186012 521639390 900087506 129209186 138768872 146107187 331644136 941154752 974176812 598390063 771769543 58231147 350496636 238356581 548754339 272438828 437803384 759773326 820968140 764026360 901360622 57934433 982319082 934017340 985254045 592904599 696221010 861949046 958454592 977434066 987160134 498762940 987279156 453714490 724886374 763671223 947392332 17836386 921422238 496630482 825074778 438785626 782059720 608316669 669079831 955158585 993075969 111920231 198072591 474839026 763599801 333574517 474329892 82518657 660137587 128298580 614816995 893738646 920619704 987893355 991143929 738157749 971000789 798129374 966688685 435630711 630076463 195581884 516910871 460340693 651288270 713795132 921627498 998891213 999942596 314269392 989957295 546151783 614080109 267660842 814652849 214551970 502078049 72887258 527368774 203763109 521024560 473738515 947323424 522338805 906776551 638305305 695183955 579205111 641596329 56498009 321246948 312002298 528220509 153778377 892588952 557624075 985740477 340156612 480386630 913219602 990867155 637587941 978016324 68684460 704916247 854792091 906753453 665907045 709978434 717804004 735221255 315900138 615700919 673368682 991779273 840656888 856095321 161319652 295461090 564786931 738418757 866843719 870281428 226663824 235540356 148126338 931987199 20801981 51521728 273183330 810395492 37969843 544288057 8357614 169674183 126899478 164142077 921250752 962878665 578334559 824100209 849569269 904234156 970311206 976041683 754084554 796991382 941429428 967073014 651664120 888651919 512455551 548947003 179492896 337448695 508076725 660159744 519660628 962358696 889680325 956971092 926165846 944012551 805176259 945920074 506635688 837773844 802612869 889186447 517939547 594492296 70640184 315869836 586598487 717181465 957237122 979405714 824460874 982233539 738353021 914695235 154699022 361446819 143709770 786047636 224625442 286246885 37163853 99053696 961931961 986358737 786974504 869065378 938335099 970556605 957482752 974114413 982978138 987341661 49728368 585048563 481247438 760045803 377150063 560345307 898718409 985453226 345505837 479675651 47796007 817117322 984110776 986920835 454614371 965903642 897570718 986015581 522887446 937037916 614730086 741008427 730781981 745345185 527522156 915445745 314877065 718933419 988296912 994348258 912837018 969919856 3886436 945866580 921710734 993015070 170254486 941125249 512312568 882914290 676730535 797796109 235576248 997361191 388272552 469675342 466305387 656811722 640308569 824179859 895748782 953204446 391333186 891435378 710696488 759761875 411199116 996553757 608305050 742574009 153193414 249214586 114557397 783364052 712520838 970102800 777773016 965228091 544017459 800561718 225642106 849469736 888753921 993621070 525165991 705167586 275452850 321883213 919125802 939124260 705829647 922922089 504955346 979981063 985789724 994898830 186850396 197296702 58898681 61697322 702372946 758040991 333580880 940077372 221121971 677679724 968892527 969692775 918771898 932210149 320077578 670325289 720394721 949472361 253090923 956999128 92758255 138862286 669627101 758586199 723676490 745312716 980657372 991998721 955691574 996718205 330753254 641996006 899224705 910137885 490900587 946773306 274316282 457056475 504974654 777074748 948790511 992855583 784071491 838249678 306924345 481648992 640927994 919725584 493747656 550317316 39575025 290195640 407443870 951638165 862779683 893503830 413254846 580044175 951593610 985867273 479130290 850986981 513557413 927934949 128027556 505842920 882542121 937307543 406854928 679727448 921435246 923479722 11500500 385272118 265796586 888285520 266583551 867632678 424006391 521833288 608114722 759134420 105498062 344975064 967094587 969811513 108421849 339481320 742060873 943334026 900793081 972260820 328653962 790477363 995771533 997181651 163262282 863304024 999342787 999721914 664702740 808261377 732731738 964282315 212845311 556478033 14865035 791237381 769787845 989522391 823188602 936960663 767995029 769223424 690985518 866603669 724586491 767236997 977985218 995405381 750846039 828532227 31684311 270534479 324313215 866993715 430978380 778619729 424387498 634269654 109926083 343852316 714241826 728328950 785649794 843147119 547417976 803469080 314805782 949282842 327473636 908769010 260251722 858165486 600323046 964963683 473412723 980408556 710217544 736685206 405373396 714470956 825568885 829043917 3351282 95608183 13992449 891060750 876037830 973888408 251707900 869462589 499432668 689801049 317973131 794457859 721421258 898396428 790840925 944131573 844593952 995160687 573286671 868296061 290084445 544512537 866425463 876789708 415059488 828741101 904515556 909159304 198389218 614551459 426675337 734713998 286228846 675082357 700509765 724547295 78834211 691281793 176308253 360728927 414714516 822047959 945537920 948960570 371758339 890861770 691556093 824426064 639189196 805004090 80835990 189464353 544914722 886555623 769594343 854267108 19373930 603765002 713898770 946240161 218905096 290546667 712338591 935675416 102401882 323990921 266858424 558495501 266513690 515519420 461238159 765866269 413900097 582431938 290420301 977629349 711177553 741365788 846609392 949638560 624142044 778745188 874425531 985596696 985026661 987514208 294727276 706830695 841716716 959159236 933650913 985971437 93151695 679798211 559694608 908665054 370749956 449502540 65357371 491408520 547173780 845509697 207494150 817002007 519179309 539081139 932806220 963215317 599247184 789829554 102938679 160673624 212636577 469991078 525037693 864390136 868901024 902706455 472328579 734866249 766388947 974972236 644398575 844999791 114397130 388257835 719075413 889001580 882247900 986131243 528830493 629924701 88720549 514443395 281952387 296894333 902751823 988783597 58347243 795734852 507854614 974339791 951528130 959902910 749848667 984863859 297492300 961532598 609190732 919945770 834543785 949333309 691259112 779304737 770090718 772394805 779591603 813732370 947359336 955272474 784842220 892656876 318365833 353992783 833090167 971488814 882567220 972325953 442849561 714443735 838331314 873489599 986299804 992046169 876353294 899008187 469738051 893397315 723053117 858235833 330385255 459302234 445563667 931548637 177941392 826872069 813777457 816441471 756666703 947626142 785604018 995048740 969229967 985822904 616485420 982961748 188618489 841467938 831191847 916188514 675068206 891455550 764059905 854400740 13390046 655026679 151600048 511893324 206776219 807032913 366329251 603236680 175911472 442667900 140175951 881522188 194617889 408315216 289164571 847417038 260601133 271655636 549164011 659941732 331566820 691575921 340979422 669866698 288657225 400104488 216293211 745014048 54213500 263243224 573428912 633003587 368427054 929782857 814496615 947578484 51794614 166079173 590195896 858420905 350455665 728872409 897219577 971952250 331278854 481852027 185749231 503706758 435715928 513456846 70060913 928566826 354246846 575136919 765784030 816950083 141959346 903110834 139396446 352354012 728636156 848223366 382849722 745881116 744818671 793764128 486367866 882868413 546617878 717594279 23896527 509157759 310247348 857474710 621415217 708016764 92577612 826024344 324972581 712165643 462950462 552386879 519576981 623984942 903483517 972058063 539097344 706400722 893084967 931215194 54292943 658953622 630715766 895317310 822993447 888851719 664022750 868665693 311770773 785822956 758202670 932643961 835591254 927565900 752698984 975235593 687496493 812478805 204278933 494802211 737538844 975734398 616979525 910068213 517490663 812317147 307126188 551442199 466302575 788079897 777003906 960750403 880979049 939114543 997038280 998225401 576917562 697854343 860620701 872903027 121687680 369809736 694404100 843594517 14053154 630031175 6800574 802772148 802068287 906612383 198552497 798571985 332209504 670117898 21068975 518553365 934526848 957162258 494111185 956173628 838538841 929501734 257391652 521596533 177352788 648035286 823136799 979150209 945627106 972943302 449281086 526723099 871890890 984040682 466239432 675309291 103620768 764071176 583056266 589017509 171311994 878099753 899288577 990505841 19660843 358129322 330162742 539230870 792209386 823277133 538707501 825868155 154730811 503347464 985551571 994561273 98598480 607055681 610890136 856317301 23762710 310677851 296718624 643214850 946837234 983656981 494148750 633776152 204853397 854364858 190965645 703967949 909781130 949727980 534021452 912113678 893813120 966847465 303589670 576093762 617842267 782539728 249841375 444547115 668241551 963113753 858442604 912136928 204523349 563674139 584547766 588788213 671920119 962235371 125240342 311836636 231285985 652347074 477215152 827068277 67916485 300943645 537097446 916372326 814878941 992685956 720447699 830996902 208771945 647594681 566323209 794082596 151006656 663576233 274901807 847087306 946562819 968825969 630668094 806561041 388301717 939067397 796815850 823855889 905028371 930255172 693473233 890742120 320016402 547683484 614598022 900116308 306930467 705183169 618366140 988745855 224447986 288435376 101211201 911833039 207922663 367459551 776402016 859758129 913916855 983782261 461702711 792755974 161702500 267279313 64992548 607563855 460215403 910226565 356617093 922899321 537690644 584138647 872182864 959486228 402234606 574797855 85813342 292917945 24542240 738194956 966299921 985664215 599530992 884234191 747735261 775525200 210892599 666300397 862809801 966795691 836138593 950580301 591418552 650030168 731438936 888323828 230590652 669055644 656312303 944902168 345658645 858358283 800577022 972313588 59072854 458395625 956617207 989020292 128828047 510280690 245950417 459020999 720907691 818484108 166127711 749879225 798426378 875924546 708924427 736399662 480930372 559022782 755145706 768330852 939725543 967330217 306932137 734080481 187590544 872804192 694480839 717226833 117832489 277826856 539288461 646495033 993706833 998204050 18413572 539592849 622921447 871915625 588432251 823513186 446895546 876568819 567993543 848694683 18291103 233308781 945524309 970570685 894933758 966467992 145096509 565830520 961263835 971055462 168416852 576590526 478174643 795420533 397000838 535422107 862211643 976669691 667890317 675007226 46524595 900991317 344192594 645149822 20451841 958795529 302801463 542204736 855626428 970881647 384905234 456804149 79668169 685677693 852224712 897358923 391533306 793264873 548417182 748258911 102190805 733222254 677468842 710106685 115954580 526468647 299784989 760177339 608767539 986575473 714701608 982647507 246232231 403851845 532844517 628030653 866171285 964925998 225306004 679513285 184073503 548230403 448363757 935586253 470600359 919919563 574507034 867895233 448351062 747260821 92939395 681175534 681061532 961885376 785597405 856942492 619401864 652398686 332541911 786915950 510892961 881847881 370353751 623133717 172553240 524667092 487727390 997944687 987414033 988726314 786059362 949308911 948346416 955556791 954607106 959534542 972208199 985039587 646652297 760783251 495913753 761574873 739414508 842054975 498711555 751591441 434750528 994797842 339622617 393279387 839174322 915714698 166493366 449700754 840143300 950402484 862565027 988141531 642432803 769692322 372713932 602955711 494525452 829179926 334281458 659865863 538156629 740077960 247127426 681056045 772670129 917900379 390193065 836597415 381412609 914820416 334372949 667691642 198511571 381776579 914823745 916269962 357126003 955804424 640256834 849179478 739902885 752829633 39365361 827401316 111798109 985450062 165018588 938015244 291536373 907795483 744060380 946952805 925403493 963216762 69595076 637307289 714124979 927172757 721971670 796151475 340839799 543459831 716134530 926110417 500428054 883876552 568471603 750229825 675174329 751519382 546195563 761828014 720720998 844972002 732921101 798143768 691422481 874671449 346652889 607581812 53314962 652306952 477099690 577623925 33046012 302989164 462894057 990600211 266206916 311842446 668503722 753638976 58701678 807688627 401978287 489445157 893808918 942507705 914659439 950254463 754240593 757737492 305384013 906344209 450259038 628353758 268748650 291385039 934444517 940233372 680765317 925303840 58690890 976204992 529637804 743741852 293880829 359023956 697978861 994581302 542153478 642035073 632963693 825428776 795314442 817130993 576302939 926425029 968488920 981194872 910728085 932271509 75123085 909121160 658311626 882718464 891705136 969061125 999513002 999869043 957618962 965046045 290148599 570611815 924798150 958906510 562603795 866913039 657423782 742078030 396694626 492907097 546143470 834531102 632923742 894919425 831200274 971913794 825613057 967762656 903167207 952119597 60631729 576035129 710252289 836069876 531700879 984581748 334202386 634179310 2600085 915481720 537548519 696748762 270281760 646301592 855009628 961993688 970964657 978044151 471365277 635655017 29977274 563485725 782853032 963493282 961056560 992242061 509683065 669979339 73994673 260536323 86801479 887708390 920379699 964831197 181841323 680943952 903261368 906960433 629549089 656227431 917230657 976600759 347101108 865129895 444630136 743305708 336244904 853494527 173338633 484003788 37909774 784665526 747225437 855225897 346539647 358684292 157602017 180584426 948065442 988314983 948048596 994907218 600651480 850572790 190276822 507980936 778609728 915201543 245772823 346766438 354376050 904329625 462840523 825553809 811293008 941892037 152430132 767215467 579430925 747595878 592211564 622781893 280961229 760482359 683156275 747884386 325068895 691736307 646347509 961678659 950971933 985704304 504674697 767093211 148866040 461882225 71642448 969774788 45924208 339287733 484390893 734023635 195957496 983509821 41116002 986521642 804033092 961255007 954257644 979805486 398436498 448476399 553229889 598486913 122983782 496585196 969145527 983085508 235617585 366555031 343864811 442947627 757663273 787320528 242611598 390977947 607981433 876880031 252970773 974382158 66166499 920768098 513664470 667974735 501769753 996353265 60602054 441993781 507841784 669488415 344523298 509030747 253939591 772983583 714929714 813027746 457528297 499586243 930106915 948193958 480287583 717310686 501054869 598299429 944898675 958757629 309434887 890411607 116477561 421904625 523667727 733466979 411340053 801336634 953552929 976838690 591609540 830617466 84372159 829237508 608549105 782210401 987193497 988724604 383888433 521100604 712930451 857788604 492072412 632046337 638248485 677499498 537118181 553353281 36180374 590641251 693623415 712947783 688114723 860060901 784806076 910432930 6816235 890001065 169165015 597792160 514821091 883656269 57513065 536027248 480975535 848512437 933563590 998024392 546038155 594780490 307424989 754755756 251543810 908177918 721567125 856979982 57949794 897353473 896597084 991016282 228219733 824227840 196054771 416726663 507488782 912545290 669905314 768082480 885902925 892602954 97129647 112533521 606174753 945996752 198731342 443875779 133962372 170134623 423427262 624613277 335312154 771703056 123720754 917038468 383961024 970596619 810129852 814154176 519958642 766183465 344232549 995375367 65320690 523015791 367881665 683946339 135713736 915881688 652330903 985660527 100100765 633304850 959654195 960964243 672577199 746624375 850438034 867207102 189899302 817118845 345299008 822830727 60336467 968218623 532438581 863260636 440254927 532240268 475275647 950531813 23984087 966499143 697061376 886540304 300345987 853156401 576872933 982601125 187811492 325273979 904354643 930438719 645673540 782267798 848602314 947484180 94969347 311192224 536844830 806880326 563079920 962204022 530452873 700592244 596283429 969884877 768962040 772100015 529332721 613397898 829916799 936218408 54411671 582626559 872162665 922720050 596091410 687073667 946942179 978381019 395348224 514238370 452801646 739759445 247284114 791037911 288871545 906915869 367489293 730467385 698114683 934114862 42485128 43425830 981208037 995642470 111077852 611636110 987904172 996107597 73785652 109397533 224038393 486402997 85132965 364482267 529002554 818920442 736575235 827992688 523621041 748858347 218912868 430235150 278318313 392367693 317762982 723451348 816159882 873640140 110642645 675807900 180284346 460966790 675831609 724466051 626040449 655409196 76612717 656703583 854994806 862335606 592331597 639167374 719442665 873432601 735813733 851577670 11301051 441616622 841362069 964361074 128129998 673167025 584496789 996208593 465535460 476728366 359713541 905222155 860284408 989455608 861316396 893190306 74967122 586784045 882225955 933284307 52375212 254003208 928059768 958326800 977362740 986331494 804183360 891043940 796371433 817943834 821301473 853425462 467311597 727579146 631486406 672413674 906523672 956875521 261089140 312020895 289070017 371015342 306983853 808841150 295967118 406676700 528903836 739627408 393793093 548635115 281855253 892964842 832769078 918768335 323394958 747703375 318163706 868874460 770726562 774022460 998855120 999986130 838280863 987211206 577139415 778068685 492987283 851185212 494060226 848129710 672431313 764689800 330733853 888622994 862051944 992173359 217516642 263410476 81700281 762249784 703933602 761818990 437689430 794703019 381667987 850299728 996918394 999489190 934542573 944733145 527581782 584128686 76153741 609853146 910096791 934237202 119861889 890351653 746390772 839032380 450794625 689381240 93064477 902203295 398546403 408403726 163492053 188773103 462594180 534626268 654085542 782291861 75665771 886044579 917580448 995546430 520470054 788534233 541419367 630042532 953754734 954288315 499765565 571444049 307672570 591554704 24926583 151468806 330693395 797392549 735218491 803092497 76527392 340709575 368131314 419523084 996944392 998191315 369087289 602201891 769487679 912946783 776585159 815477121 858094481 935481024 767468530 882923289 720111407 836236189 211064180 682713983 51020545 390121799 481009294 956273096 600548589 806675766 223899478 849599412 629160676 655595392 462818090 598250379 442453361 625104912 533230255 674851954 735471087 932877836 415134509 772526848 882392866 894570056 385024707 673335892 794088230 948786627 436930509 792870816 338937153 843091212 213554715 671892322 373278266 588334589 497941983 608692312 338344338 884113306 604102243 727231684 919965523 946942205 310177541 704624365 678014618 964202444 272551489 727608889 733953992 767512975 741030046 838706645 355479643 829570574 756252781 844093217 146945341 738138926 874878946 890267626 506431120 568366132 227003614 786642809 544061544 723004801 774233588 888025648 533934521 770359745 144542741 483127849 917861542 933880572 568018860 773640318 57158882 655448614 949814002 969487087 184750132 988836949 993036094 995979245 736370726 886733867 877514886 999946522 806898478 941147778 855307135 998247393 912873141 926503747 572681427 678059274 801119379 820625910 583111835 746953948 601196547 769611825 834984800 909671851 202772439 364881073 477868994 802462800 838526765 951652790 779149296 900793381 519788902 948876283 292910412 556082088 919833216 960662293 426309565 944314103 505189286 950213304 201504366 798240547 241090684 448529501 653832710 791997883 103738862 781355163 863877488 914043863 69621454 887113981 597294392 928277275 738293918 791108911 946380081 966987730 950335956 966474814 336099159 960462141 74869056 670348662 226874746 513797340 687892281 784969795 300794394 810331381 750381773 883821429 929425624 999762785 86202916 682466398 488224022 686809479 754630083 949397420 566845928 728697253 26849145 806566349 160308325 976839337 838204616 850975284 70247898 559565162 614733626 908376030 230772049 774405734 580682432 841917737 272446790 707340329 409566347 707768788 872726899 957142052 393575422 911421343 693563476 694415916 434147303 541691629 587594374 986352292 224743014 610095294 579819180 827981985 205070828 299508378 600534613 710872876 770990672 773492075 539761250 753428710 838897853 978557382 593331368 885589859 598322766 970635397 571758682 643661410 404388620 889972377 525076755 788326072 535076682 921802399 556596644 844255542 171381179 185947846 82767157 275827696 102398731 603136387 84052501 134599163 112223908 823840022 456003180 628826006 860140048 889524505 733335126 938854991 636448455 686010153 103104682 415090104 85556447 427754285 516065053 831216343 877736724 936648485 733551849 758501391 225460400 629537331 363062126 364883199 728091524 840063570 195743051 328812968 665675305 786105753 774382512 999070859 651111915 693230411 703038057 792079497 94008629 110023915 45732437 636641684 629102192 984728075 727068930 949443324 678808491 952151483 866952597 967248760 569260532 687602146 390059402 766704607 885149993 895909087 647327901 935928416 97315193 116330633 475993972 476530314 866603388 973446402 557158453 794074426 261494695 452223723 993003989 993295227 79147127 580430440 90670283 677763818 239419276 874928429 424331844 624942019 47268424 282658644 329984159 537461606 968385072 989833315 560136300 630708901 347405700 712590196 815701772 889579746 567327918 660904317 186095937 718454321 781838306 848188690 193218401 549057269 386575743 735449288 964182093 968357122 53633580 490953041 375734803 899202230 242638366 344524780 742298395 815786346 101286410 157438567 268331606 574425036 789715902 972814214 389856197 825395467 840734495 930241155 432322384 813180132 702374024 852032057 648496137 755061086 203874719 427699163 25423014 74276850 908463282 995552554 51661070 884330357 19076728 458882995 88297480 289224958 125731815 770820342 464413772 830267320 235351205 462866107 610488968 851217992 232041569 878704795 759304443 864981063 519419293 829263234 302361903 511568842 554539554 702820349 953017759 986501516 611866730 907976447 130224316 715165834 11120349 364688187 616442747 854932242 110826678 624806615 585222312 598190222 391114667 991899878 994900257 999085228 39085000 465084900 165109499 975432341 172581573 576930981 632895149 837684848 95505868 913171756 33431239 310723324 569951328 911298370 296783027 846278743 203696519 918534826 717507159 839732128 863651568 925768880 985969850 987683854 557338447 725695297 141555343 570668211 283251699 814384970 199365037 707629103 807744460 848287990 392180446 398435983 748828108 795637414 180500729 766136995 611360102 704624273 894416423 961243635 440541048 593418501 748766166 900824050 37876382 296348184 484839811 763552609 368136749 723206178 965502116 989018901 627025706 807807711 70139631 288032456 984608319 987374289 508975225 675375338 680603663 714901738 72029117 768490554 731608661 861252246 336453804 763118096 480480707 702932283 642654430 926108074 506763769 988360950 427891147 776555694 980450616 998868492 380799471 861794037 896208738 987246266 987453967 996569118 934717688 981749336 441705639 642915673 296482382 499244322 393129548 850689310 587752429 716890609 629139450 951740310 253936058 524735753 457162911 792241245 692869150 898626888 222664828 435339697 277285663 493920096 921801187 942764225 483145797 782839991 710838437 711190471 493659065 741615201 377425327 843663347 195484492 281906348 88268042 774066192 759656458 916025280 791417656 820386112 397205691 883330176 502814917 891958436 401547815 955050548 975249589 977431195 799838006 919394736 571899004 592212581 708400347 880215223 804526460 828226488 606026761 702743556 506626034 692307199 871049642 887194911 33779731 673310790 166742563 838069667 484297012 811359686 345718941 363526351 786303100 918336074 119503863 363548070 379635555 440215517 360747783 517248364 181781421 292099026 666987981 782918580 101279107 496326928 831852233 922719329 577373228 914298330 731619952 934308666 701674554 797707071 486945816 752796932 298051304 665027531 649566194 757545720 345598949 458189155 770424696 866470436 291878168 574670731 716174552 935314857 40451426 185391929 841121861 862398734 966589373 977505878 765729685 911946196 731686668 847584546 364508558 593063022 419108117 450572531 756530875 772532658 909661418 980309764 697800228 853549073 69335115 267435974 585937202 863022907 917710647 944079494 269195575 948737236 381220061 429137476 916661882 995850906 422882434 885014443 395559959 694644797 168480486 536160367 139792758 477540147 123746626 429580931 124712640 785167415 31661395 185997824 471864256 915205695 547574086 690763515 455392740 498982735 872201760 934583270 145862146 987221626 7272403 811490709 954038531 974352955 839595857 983201850 218332895 754176248 286538449 740002674 638247732 643188456 496079172 817576959 581319910 655933526 286188406 368490164 631690814 752529449 801213518 965062699 988622380 999824527 644099673 846790735 207722582 938941142 882873592 941275568 136098569 248290969 559518503 991566229 839205133 906830559 219373782 222309630 166076519 548821718 399569987 481612243 778894372 847424273 349635226 992907886 324316742 965154154 946801243 979618159 223203964 995813451 776649552 877854898 918267621 993087712 90400133 527831725 27917469 351427582 938357180 940808892 999833714 999868071 171685955 851435103 109075725 872127140 224832753 627333271 936794901 940510450 259059537 497188654 220309693 624342808 91598668 865728246 677611456 722649926 288686113 704382833 533366870 740088960 859393746 953432031 23100087 424077313 906719217 965627322 136392812 185169564 175647174 471649838 355875004 920507582 471251369 921543237 973517929 976074454 733188124 838964325 669681673 865889103 183934605 669580883 234177788 407587999 880765882 961618442 109202733 510281729 435503341 624271869 102477548 607235754 865370788 934959096 172719580 382832333 201477741 548506598 852425226 866681068 150170289 590889012 532997539 857485732 469488893 572473250 527841455 974300755 964965894 989455847 547298011 981798243 863095655 995922388 674734549 748872013 163187013 895470647 963549572 980167043 299369744 925094299 411327538 638834220 610512113 654649947 21346411 410090754 262809021 416268678 52252322 802980366 803302143 914957714 982530208 998932409 987882747 994150594 809436819 845388817 237517293 550848773 161230711 741179225 305058788 720745283 404641667 680501633 548512716 793606791 120728254 403187431 972368479 985321454 353129463 853859995 755520373 821094513 160768147 222126550 228801757 841077161 407182053 936911846 44242615 134501785 859530163 929749903 344373149 743640105 898014752 984018987 478390956 828055430 76091361 657772787 231927591 389743696 820051672 929276940 432664828 827785065 435625031 728185146 874573032 956052419 247890142 612211135 947767853 956421129 657094605 971026716 159310476 403035597 566366359 855464853 113501565 139387388 844700805 993573496 186596913 282269538 609066074 984155478 455332832 535530163 957789726 993409138 70855851 416254469 718988489 770708785 955043778 975829605 305492086 601127051 443463984 709858045 619279282 858094602 590037290 757097336 685019911 754535516 75929371 397351510 443577541 955582891 533527341 866349223 464545855 952478231 611489251 874133370 43583437 373849952 78721970 634160722 707827901 959079856 210200346 320424378 997523157 999065347 521087669 782932818 972082117 996051602 832240192 832496598 603385315 843560215 794436834 934983186 601849305 853520392 442067104 964906915 689804996 937575542 590156887 811885524 482843790 575083772 276683246 374323651 389072156 472293606 417407666 748194113 992600967 998606220 35359026 67888681 837585463 930310597 613722065 932759813 528720858 840120383 633645994 680117147 959618275 973611569 62179629 902054158 541480450 558115247 741713213 864519109 890371896 984574613 224141819 708218162 451935719 863132618 358514055 527095711 48323305 428363868 733133389 971448198 539180604 898541242 260928061 975275436 239846495 825079805 495567044 960572397 612756293 688390035 830235150 960746995 126924600 392497822 860988197 952741088 719254380 827421415 202820476 808891024 609325795 747341396 578805738 732273707 451987473 611768228 964486050 979642156 651494559 837049575 450695275 917666300 491417884 984790605 838370091 913223942 591569343 964215669 528320204 608572004 137921955 479276319 748450051 957344834 565822232 952196070 170719882 279414537 144904766 361541173 327562521 949266826 728330418 819081696 574492012 746819263 465821801 671242033 832531474 846375041 611298938 617385301 867912821 939529671 878407061 902834970 545143465 915435549 347117099 493817692 975533132 995053007 578302621 746324513 474962101 580333198 278265571 699869270 500398371 952675131 951079073 997618550 134174547 663838221 413813230 584103764 492985373 802790042 126322189 138797504 476981075 762462960 113213344 512861072 958528132 961648268 148833652 808843348 251013986 637909560 583774446 759505746 575884546 785374756 897982691 938828308 657855566 950739742 657311032 916208066 307606125 548624926 581972192 743055045 144678666 469276843 600273457 841852094 530183273 814060693 164604549 304838233 495862981 918569363 35662798 536044789 998909426 999595756 99312667 133329040 833450001 905687177 960086795 979936128 385786540 557646265 692353405 829855916 960687540 989478339 391986622 890477245 326280272 909573709 582944590 733972924 156862778 564200923 562368180 690194366 208772575 967029091 76981564 156909046 632153806 692178591 908106812 988804554 846294296 898368731 17661267 262864282 224825929 416282816 415136137 978412876 82188771 892844217 151944043 208885749 270620094 325873651 828880722 865439877 502163114 840441009 32092136 58932731 209063416 609044181 272775004 780950348 769286328 918387003 670926558 679075972 300985826 971130233 392201218 628361636 416761301 781810642 996439630 998185912 867600679 962605590 960698159 995354297 684119787 804741237 81168664 686591775 980434630 980991565 734252023 963296244 237012549 559660030 656161944 792990737 218118080 622510248 939021951 943198724 190569459 293985819 381139807 460631099 778584098 880488535 554047800 789750190 594436825 891614075 32047915 384803913 156169836 553403261 528204061 996796985 499497832 685052430 574520294 664599916 638401312 665093369 229043760 736550191 178405144 395580577 581469379 781120875 578287939 902706811 415083053 817908994 486576077 823601611 467392066 958700089 833243836 935481126 592575569 807078458 320270786 773423438 219482648 285691305 227912861 693670824 375528377 484554569 362206539 572613128 651898869 836973279 495213512 556146861 506519087 880583896 268121904 431871436 494060902 897045244 200590588 892227857 150961521 408102565 735308304 960998823 800021761 925236062 123532165 403711132 143412548 377015584 733856174 852014194 388794133 712702667 655565235 742362415 479400379 950176283 93673098 266738193 187747483 991532153 857448681 970157854 136472608 545040253 352243049 717757817 53638674 675445481 577128605 781061578 466410543 814511104 575867900 985266514 403509745 830023138 938936448 970887888 723878817 929998725 76241632 488916670 198338838 413660739 264782715 342444118 22493632 456474163 161928122 390653337 477830466 973965183 626544150 629678890 306458578 526528714 474759306 988103873 252760326 253663090 444913232 642775716 757766648 762748449 221752717 837770844 696590159 907777791 74671518 709914768 459009327 627746995 148384162 754971912 853885744 911653842 690562605 973778773 520033575 849963320 89276944 704715433 661524193 728841712 710549917 882604695 364321871 952507886 818462577 822661158 245868687 718683389 210699359 950578690 136828438 339141828 172510640 777865270 551533911 756472456 132872237 230463806 240019154 824927194 528325923 835396460 43204574 880375096 726027096 932562367 220284014 395441761 276753029 694678109 492230313 932506236 137185934 625483407 199550981 401432699 299291543 893317017 595083700 868092277 890258235 932118309 76996173 556334427 764067400 923010795 45945254 53531777 410501520 733739914 706877376 944517144 672800159 822070489 906608094 921458798 825394851 919273349 879538312 932547065 40378668 810903127 750691555 763937880 54984091 139218584 155606880 991245506 7680933 722062165 493243444 853921079 347164750 737531963 230754494 440185409 930642090 997720864 233137147 803610200 986646278 987620564 223501301 535807105 801372798 820516744 578485342 792133051 457891581 560269512 5200181 287382043 108781816 333952749 895305445 957328269 646993872 873171925 754479188 972305058 880244425 983638006 448244200 448532688 255444692 657891689 870646170 978403635 852167626 986773599 888302316 910422753 671307461 918809366 955616109 963299178 305703761 626562190 682004515 733240844 84286131 369667009 26406799 374403005 749084563 862168992 490440736 893331012 543764304 893820235 497882150 590258299 212492901 957940799 221605015 270954255 141542098 617377203 208276896 933821109 790756448 917313495 179676342 273500404 969916563 988032346 758257394 818834733 114224116 923144510 252183664 822809241 604137651 718022263 20224607 919269971 912013037 958670644 103557731 906040017 235075258 744479564 899678425 978054012 590618949 661483072 123341593 500960376 557056520 986305307 182091864 440135557 14533290 102776471 904775549 953421470 273549267 474240831 671419688 921001070 219653005 460460844 121850382 863199630 104969179 536902127 503830899 716931687 551674027 734827180 522766416 981503039 834829744 845718294 174403902 619337727 413461861 581987703 283402923 499804254 47588081 474974849 722755705 775823138 718528574 964759140 11847237 897051859 240006532 411441606 997959597 998804201 745350533 973332011 330094890 472393881 113253564 248473191 662434275 746631633 24668717 924295434 817297507 973638726 329150816 880097578 922006975 990700567 468804503 954836448 73564524 763933263 805581359 857642877 97784573 162838329 32817686 442818835 553616721 578485799 870255329 990039455 806973807 959040124 671886347 812822266 675358698 961013886 412943501 615662449 479367210 674868707 88010951 482625987 174736885 256977923 55588112 336196071 266406562 769803940 204587547 445852503 954179947 974953017 804093673 832984739 273614538 354592306 174261872 519648724 867178272 944423902 321859906 583011928 223242984 373142576 793417900 811361794 537345883 959231458 82989027 198363102 996484217 997518938 360351141 391924905 507513689 700087797 346365522 716436134 364229599 545285304 904473220 958381822 454024421 861688754 169836078 378546430 173958236 354853228 892842131 915224664 867239791 972622909 480048669 890646659 715185015 738483533 177385533 276673100 519622404 878200326 662811801 925554650 643673057 701421090 224464268 730456089 475302074 484770741 208949940 798553848 44234846 133257257 274013085 712483657 747249073 824427204 549436383 695300729 894239036 908701833 534812866 716868595 980011286 994767071 799922780 855572507 477762652 605399937 799073873 812144210 571191774 964352470 259897507 916734606 617114571 804987094 710512124 726418186 255365700 779740224 581379232 685790894 4315765 252411740 647067662 654481152 694395255 863787693 790421254 898403385 784904261 970964094 895440286 997801260 541720663 932432645 930847731 951475749 966314178 983663542 862297091 893942296 618496964 892657971 841470780 884764943 871942877 903091659 248617482 602339164 551519529 733931152 513288815 874501160 598987315 750589719 727305202 980075366 721145810 803679438 439421710 626252592 501633433 779666884 610424941 649113703 730331529 775592770 168356251 904997252 288172816 646836585 876058014 987857479 496884714 516060477 910522453 912451193 954895410 997101268 171454122 416746394 593793287 954747150 504910766 532433291 492898723 940477736 171468597 537125599 214186935 770956850 268997944 860363866 453131284 969694078 30439645 624559511 753128333 963740720 952977920 961931541 689311385 996609282 832213969 985177014 433327214 454040616 947077776 972197998 440018815 483460871 252127301 457319047 25061294 421072957 620186229 951549860 617273426 831208173 380079322 937280753 847029437 948228159 194270161 990570449 429578278 583818902 744263873 899809767 471024398 969426679 44741211 453549223 442770803 927381877 158985184 849910107 165677667 545578521 364076315 371729518 248539850 650119089 242497848 606275842 164391188 532530499 13562851 895761625 749718240 889100579 45327402 949223497 992451856 997902292 291919342 954372862 185449485 837513616 801911203 856607596 897067729 965344223 981654624 995959699 398253076 711426182 233720132 596192836 897645258 957817488 311636402 645238837 754312808 794968683 423310239 924698845 289116767 869223441 755572576 909343118 993289318 998380439 429449145 590927197 376435437 995274656 14268595 188315647 37151984 713292936 750335696 763829752 801389239 876400330 801670709 888750189 342675385 636331693 184904223 989296896 91171366 677583154 452498870 592176010 185913709 201153773 267331386 308617358 496242770 633387073 525163687 942315434 79140189 605578558 626126411 746661992 915520833 928697140 287232091 326625354 888127394 964156772 494350057 520878047 611622574 733382644 453722742 732100570 86196713 291015210 406331253 416252887 568438005 625710230 701058287 834348336 96534912 223395710 892745051 921784912 491289079 658420364 70640187 737039711 670441134 957344707 530447399 742580680 338248673 901109844 341674386 435067704 451968349 635538846 945085686 970922877 135089142 728865052 843651726 859015139 411469983 804832753 800518287 970250732 220535406 906803794 448508472 850150743 52603370 727265601 638035 825914985 432090880 443605400 984530457 985883716 203154377 951983598 427542311 761822159 384635386 721843501 662286652 810511332 332549813 841980034 20433310 802345444 261143556 842586793 984624276 996632184 923112634 927412674 751076130 757296283 802701195 895902444 795275233 891767077 54193990 183089163 759559930 935672561 491200308 842630926 593161372 632301899 291289929 645003663 199520529 479997301 291482979 791990489 685038687 794324256 132257520 322619222 224806662 859702644 759989568 762238410 427029286 666129702 745366155 774863220 658238341 718226138 997209299 997852231 489260877 515379371 503657076 597270451 602948167 613156097 780038251 966259686 371471420 739136624 37178081 67089660 209111789 290094667 372705583 412560105 402728142 848434255 883049217 953729340 98316552 507863653 565282286 674577607 669126606 972515771 913425413 984838730 600833100 881180807 677347429 749542255 792495981 885940079 340985068 458188015 780514669 839776160 329247333 436920860 127768231 885896720 544738118 937106026 874950861 916986301 661955892 698343406 680724676 877030513 930712417 959244831 381801443 713310855 802737434 892920505 297681019 721514345 276832870 429352779 252240868 589175917 157126210 248092871 44712098 555237424 866015418 926910130 520447489 929482391 134835107 635867344 570390275 605077087 994397519 998913896 678808441 811968347 32013536 682108142 361395627 427745339 762856416 768398227 148723094 256029003 620527934 695745623 381412290 797968738 684064568 879647026 76109206 975645148 749338761 784740703 234015259 729828298 283514278 286733033 88368211 137637636 698504932 892997608 361054757 958910340 897416270 901676700 425256883 915711437 424621284 720680926 873832652 935535065 713585197 823512041 409181265 495002856 249801031 606463824 763416951 974786837 634519517 759339193 267189077 426895173 95936564 103318288 563597768 731834688 338275527 682933588 84917087 175282892 125359241 505360701 773631403 888756285 18687655 706231765 563644522 706557782 31322392 153007229 777413804 830759380 177196121 705872311 383644984 445818653 223538990 485057567 966187437 971412240 204900622 998791276 450696036 508194842 796690048 918041127 258121123 446462922 227477195 916725000 406402138 969719868 61366781 879243787 906526185 979030823 386656652 870888246 99577927 447315625 20375539 31736975 176348910 202403053 192899854 261862722 175804062 695528624 695211057 749229886 112464315 311035343 1556001 487309273 253203980 592127629 463999241 908185122 940804121 989582043 54453431 370797910 786906033 988159413 285851132 496478741 721533430 956466227 330404740 816768442 73184696 305770733 721857482 818207836 82214222 881420920 423230442 997467826 81087326 860796067 329959627 814167954 946024882 952983464 529077684 925424717 882857536 917998336 260236182 772226955 362665785 985345111 575547920 812001417 540122667 709017143 727159690 852364900 390969278 981882391 423187689 637411777 73034983 494559938 87481852 793395714 796471818 828465218 97146674 256444024 839147835 955745391 267738628 673788772 117212177 357172489 280991624 616439057 115405771 516310190 325728683 854427115 659397129 751758799 153497373 760300237 842384937 995512392 457927441 498074432 318792777 364035514 334336885 776498369 830816517 851703811 214790944 400299948 283654077 997147833 127536139 405540813 911354829 986941498 594123322 805120244 526924118 707074375 381612234 945197099 820633415 911384574 802911521 887593927 456417140 881822641 303373917 686298749 411565345 466577557 950329274 975882500 654543463 904949215 21560687 195694486 276861791 587012036 865937914 918647902 503431607 779127097 192316208 442651971 657616679 990670202 932268954 946831783 814811540 894599924 978912567 988053190 806615048 925483921 387248115 939981034 482540984 575760143 442500441 569551437 631963373 916753450 437274020 884752714 308772275 398974946 981211669 989141524 968106911 986516344 741974682 994765152 320433624 492544903 231859533 308732710 645990796 962431491 21699916 924270705 547951757 886244402 159444161 649548605 661482519 959868555 248804771 788059907 164496138 814412890 96152185 722041832 283696570 996068210 863230941 914585854 76992978 594963177 214584234 322171106 726092018 839123484 582656967 933171796 113914241 871749008 149350710 698299504 635059770 863144438 937310742 938549027 874799444 971925064 854613726 882514645 48964706 815650287 328257200 383742955 95333550 408282239 881294267 890044232 403711898 506983218 199029826 521351410 771552475 892790652 798787129 801034782 750692637 957258928 956717151 977742520 23075894 570010374 14839711 694778992 737577983 782596858 587782760 647994706 893441157 985745993 608319092 690662316 177554789 477988567 961129955 988361435 135563734 480378575 840310566 904838158 812348076 836822818 516060053 561755429 314300828 479972755 425244133 897898911 156403523 443223528 353338526 644976236 383709377 390502743 197856993 303157248 920070334 968105992 789033552 880020940 691242241 916851086 508568378 968106892 298699252 649695414 897217171 921170638 347964164 646296389 403063562 610070604 401164123 995413839 42349524 745119382 162150383 895915555 113399931 734957961 281797242 449484739 855877894 909926625 829343174 964134979 430340057 749145974 597558380 826229038 960230335 991577217 904884427 915927625 457433182 477139573 148996706 771915773 208024930 660966885 952047522 969243624 963382978 969529833 662075409 844610346 464488569 603150211 872926729 903468134 901023115 944392866 537617495 951040525 23582780 957376608 323987126 962236600 790581319 875076618 638875830 742021971 31227159 630773353 489103373 758938815 749883692 756172270 565557999 685206427 801882758 951258789 461594869 874410084 230594262 496814798 595741046 845598363 715881111 984679188 425939299 763787004 162823901 570742921 610349623 786112511 896692138 957661941 244372787 568591635 143544850 874499854 158410779 513449315 808006721 877527943 355047977 818917169 269337101 634449408 145002038 465990446 175239379 352385900 456772599 758989114 130488735 919358515 220371411 855323474 510854305 981510850 640232626 852469421 618103723 975431393 792692474 924828260 464419496 733724802 504810262 857312510 467045636 976910773 62806487 660145516 559568217 710291253 861372749 996337973 287393493 431016477 347475367 786643776 394386561 677145916 982253602 988502998 828626008 863178481 207626074 640854250 279170170 399315768 811593382 868257586 827570990 906371257 755961764 904201040 684232877 784496150 384535366 850410810 127685621 980255266 251795618 848470665 289667017 625615874 431362167 469669255 961354812 984515002 755572007 842986193 705778832 797577056 785421324 944408850 448868402 716733939 977149366 979085616 446511531 899676741 531756156 695182207 152160328 979475088 796162981 801304444 36622417 190346426 761589879 929844053 292465948 831840659 308666160 694262684 311871783 370116182 290551253 293552086 954254841 977112580 279834329 391928135 634709824 765464890 261076698 495303503 359025987 630593804 557995517 808862154 993256704 993785150 699102633 990432100 246007018 404928912 200820821 400501313 25527899 588404270 281638952 675514921 894229163 942587880 33606780 986683382 459328541 882029037 647783523 820541315 233311086 525835114 303345282 436780071 218114336 331489088 329394397 638105923 474533105 856889459 464068888 989183659 249632401 589111250 872750186 962085711 500045118 968615882 978300216 998626479 316699020 977307534 100440677 471050897 474675111 585982730 970277270 991947966 622809355 766887442 466572035 590227895 640393554 792001767 863410987 898138715 681744388 887291915 756488578 901886307 327689708 844260488 120767216 781054376 190263762 461504907 707999654 903110848 95902029 714898580 667413534 762457054 51131100 617227505 242548558 666347388 920091893 924843823 504938223 523250077 911372514 933469229 301542205 863629115 692274579 807033376 539866361 978398129 249818524 384017801 843836309 874832848 327855017 526910957 232138475 829323585 431559844 910532327 248331593 627492296 636303691 724979775 596558203 803100232 37834893 605765320 485930653 809677877 151090797 176354218 146518713 253130775 590448631 909000620 11306127 341661358 632103461 717998434 148206730 417331525 388529351 832436003 845607783 997076168 222112267 831853179 513187576 721467592 198674858 527320295 283440166 469336902 538602322 881281204 134352248 654632377 200680225 864119211 952546269 978419068 279410440 974095537 339959981 868806974 155264792 895718157 386056960 664185190 855345603 908298796 606212882 874434480 963142886 974852622 348301558 403934453 653836657 885640175 38966284 304597359 362193145 526628535 959391608 965133700 378469555 699453928 653032341 706300069 675847260 772590517 565932055 810289372 757774712 892836041 238746900 891814735 912254168 976498384 353248231 867818734 468388491 625740917 201442863 895546949 962159026 987351818 274902905 311419991 908304998 961679502 947111711 970083701 250370161 258674131 52412746 814232430 470100434 897676228 668380515 981012807 8484878 669321218 632418723 638446625 778120962 960903988 860762236 976437641 530485170 749331364 575095716 699875754 342934816 772822766 55903847 794025690 392936854 832105487 415097020 720911004 716352853 885078442 775020070 863041573 417100096 776352765 374600103 513980752 734419596 736039473 534982699 765836640 562338671 834149144 879356225 992793071 44277280 868926940 393622454 712150228 557395374 709496820 598334567 814679525 464572462 846026852 236574585 368528900 64149950 338955385 737295575 949446386 738369751 956433407 620021924 963542503 200536242 298196991 675245923 990079707 736564063 931619065 885507156 922580303 809156027 829570962 130454209 259220700 465722572 895811635 329534813 583463615 604418508 890635748 570469834 827786135 428981345 548781994 945071912 998098637 9309607 564198479 896952835 931595040 104704369 686385376 631545585 866649770 105061957 180860999 298111517 971809645 818794326 967765020 280548018 784007965 505896795 704138806 678100155 742705070 485107691 739404868 938155435 966588465 29443625 737068749 583076401 734717240 153548231 603738975 527337646 705305908 730833007 778187616 755008597 842507541 282456166 381950713 931806879 965811567 468314057 780868588 839661812 859488540 870404688 875546352 728741438 989137239 284963284 566449091 130330605 800106277 324293503 958000291 29218413 981371784 958137222 960734603 843509810 897581817 296749225 741652748 736822242 868240970 863735794 901861437 534575950 563374064 965955661 990559374 39894595 708877887 141134387 538173012 686087691 904889260 744089185 754571252 831515136 914920588 518289105 527756208 626439124 923690348 70678274 370641289 41361290 300002447 500583625 689347832 12793001 23817434 772833259 898848533 690887541 738093992 348391864 528343304 612919644 770137346 340986170 388144882 266408365 634977277 779318753 834064553 824767375 923408225 250827858 582896541 612874816 773339388 157021552 992251362 573258668 640781978 155266769 250645272 593265076 811622003 965725722 993262724 586134843 917107095 579144007 636246633 423160520 913330190 123761712 838689501 76359161 474699202 657335094 960393828 730157203 932410176 666972902 690092632 403677196 977504322 714274368 773062512 873140379 967285468 171055002 195334547 421798711 489056174 289061624 369699476 106877926 252673069 754026580 990649177 50409392 540543286 581057947 943281338 36263963 41061017 445268155 674143607 563197489 960097071 30608029 899596148 306393505 553104392 702621676 932180542 116507092 982666280 971859998 972278057 995510103 996132653 494800637 987662947 214914960 255926694 835955550 837024893 74777302 707129211 317127447 722186269 989563083 993119661 645940591 882474503 953489053 973981334 507374364 600712506 322685645 881292606 378382792 981952143 279901732 859006786 458326523 606708382 27896300 544527353 340649587 518200528 97152954 744799525 472261839 565618740 309117255 973085898 799533929 894292932 18039338 695040926 340727220 408631877 566285502 958797292 380561633 449288443 195405654 440608766 660904506 684359315 280232953 790633147 484749589 754082550 790787398 953893874 169829737 817018269 328512906 902048513 573583706 837868191 239310022 652632504 813824136 850923742 780947023 976775504 333802722 573738626 318262073 480049160 183411793 409490057 557959030 616369090 353296888 921163122 370975709 698951322 563237463 660657766 255257285 955836455 980456895 982532161 425910403 997223928 277371662 565601232 664699819 977642687 89862623 579723315 353152577 518845262 284386345 475501847 432004185 568211207 80157928 585287161 360035071 823555837 272176668 915963137 684318109 996958153 241652432 578011501 862762779 913473676 495009229 509031360 181782306 690619565 352218950 532794516 830585323 896499765 917801297 924093329 433917556 824235690 752413403 992267941 455355207 817876158 600087578 962682560 12894462 832863461 482098029 534900696 912609650 944972471 547754093 912372072 656274304 691651262 301977041 581101491 138194472 746934738 54948806 471569540 474448219 710744380 274101251 541996220 838328654 964968078 161704694 216826039 40296191 794504618 606609664 616238908 540446321 920900102 291013516 455343117 29710741 100113333 190464335 890955125 186271371 373143790 265933487 705712401 223021633 747707808 888745789 981194134 948316008 991529936 950043444 970842949 223909274 903017616 303450744 567245526 145854894 495998918 542986098 662364676 952457755 957074084 454984481 754101928 596051731 826812021 250116194 714019004 459434704 982758122 172024585 521912145 515146291 716229511 914398419 987514316 103609310 311107281 935021209 935423887 831315672 862455387 776846843 960220617 877153589 951165762 517486388 853636382 185435785 557873700 47852672 837113052 471403247 593538488 616290159 700991973 796602099 812601044 394356944 891731888 520008323 582424980 394938950 556212148 234133126 851170936 104472621 399823778 720840983 901811529 526575957 633142413 256751673 938933441 711088791 955775803 79787049 261916073 290327127 578091731 705951461 841067825 933961244 945184481 194845572 441410448 921591761 981961429 776027538 978094702 669212389 990082473 651086291 841477590 165464118 984987588 118151228 904182867 77761834 208190796 436335382 506674460 695192672 929514059 460168165 472652360 826726856 829682130 344554150 832412174 278666786 943915488 319102209 600898879 850696672 854662625 284900853 567757287 448784501 947973220 893333360 915090288 65158671 210348638 949381744 963715213 329322362 340601880 884665997 993351290 610909126 925926481 541617389 710514499 482451703 600489846 162932251 278131350 720596512 983828137 854673494 891083716 757857511 975596940 902985702 913477713 107459633 307556400 495398688 726730576 191244474 841888777 545788810 662652238 436891769 662236314 902752248 989054616 13219157 504127905 996785483 999011812 727744143 844737574 494561806 877863515 918026683 959598836 832015174 871557769 672620663 734186943 668758730 703720275 521379059 524152465 544917236 819994068 581420010 852477066 329811313 900359811 296643617 408463932 427772646 885742084 239897816 541641999 227145685 320819811 671613988 756005503 283499061 338614735 339971114 900817521 594966167 837208025 73025744 134912150 219662306 975170214 960020986 998305695 473263749 889462219 164669366 531284002 794044225 888590166 955632675 984279451 781918290 839273748 842688742 973305033 622477062 741318384 826839015 992833551 181368495 199357621 570306682 990420119 415415541 772871494 570837307 834058295 76589444 994970796 508886101 556595326 532336012 711779224 986353528 988708972 723863204 980422409 845013646 916409494 86439307 282603227 257831534 933414927 487457192 542341909 204894057 756931740 139961782 636607132 632628341 899134536 10784913 260616625 911976033 973320456 455372684 826204887 509403744 867652919 538264865 596765267 958532716 962647776 48602082 237028833 442054741 984963126 649517407 893782505 532224975 674946490 844178050 884768306 875272670 926684355 441699592 715822365 81792277 497030434 80329792 805522970 115129056 453495232 692529859 870009420 114384670 518616184 72858015 478737777 174600335 597630026 131161009 880100172 788058294 960040872 215751097 675811037 659823721 961532455 196918234 928100728 671713226 802525397 227663356 234577298 132673602 450734072 683027301 912463211 294179580 702214767 173754609 628039824 698424457 991039223 1571740 33557878 963170192 979655039 363836784 386370682 205451444 392233904 421348035 781978501 24929042 853791720 737242504 825464739 603977906 834310213 872050251 905680106 675150015 868281530 865172123 872332873 247081269 652506431 667219390 991525347 830490288 968976592 127124535 401502016 337221530 453515939 611661259 832979074 544772873 871409475 407142510 591188016 283659739 831700215 375840070 868978816 347832646 353447393 860260419 870309365 23673085 262666029 356549300 780025639 268920146 642748297 967336704 993657489 7767496 910469891 491632797 876837583 37741470 931148455 862456139 884547567 893815139 984261021 238214006 324868082 53559157 307461996 520503923 535898022 555360358 611509030 895169672 952828488 242081629 565293754 698584451 986945214 623447999 644339065 284984698 466125299 73396779 470216002 416752686 784692779 955523466 996135252 344050007 750607654 668172190 981346851 463480193 542897103 904565610 933453707 30967595 476868999 201211387 576587443 772583359 990639204 960863472 969172602 205889936 877497977 121282133 251128206 856055466 957995738 770943480 851503669 98936278 566904156 277600898 631583305 221647292 239245458 63241399 243967183 890674201 983465327 441767496 548738691 607614487 964521459 595677095 860548865 367134955 590843810 289327920 502281503 494742987 506666453 476847679 722099038 536669129 940954416 532163923 992137360 537067215 998779792 595851911 598252931 736497729 782536904 726574138 882424329 380963376 680468254 274420841 826394937 477888220 724063416 498562637 684156572 127864208 938249725 887121566 906302872 747781363 864491843 511123672 727991154 136920864 773223442 877121548 927783011 703309708 935428378 330807885 799997337 585663130 628992385 102823606 167443331 89716497 317678610 887646691 995748317 994538978 995939750 956891420 994864048 839414056 893993283 414321771 786051322 600979449 760686445 405322156 639163108 484192930 600148357 279498150 544894411 89133859 911803290 291627782 862461592 763566022 888166374 43683936 323373925 661266231 918787155 831173036 998208222 524842524 776549050 407477268 748684266 189504021 642730688 836746564 873066052 620908215 708344837 16537789 815238361 194130488 218857585 623946910 941378208 543928193 833431164 77646267 359038687 70462118 379318893 913989239 977382983 280489344 835624891 865161500 920884099 750807959 940317013 702400293 745909464 574124072 885427283 620796896 635583203 207240617 782296987 912368030 962635031 110085860 795690036 477680613 655472791 798819190 888415930 547836386 686022170 880338720 938869274 70138055 145282106 789968408 828221941 385225455 613289603 948687979 976489084 418557960 543742823 151086648 785782763 503367456 754534311 970699348 982744700 144478536 523287999 913153777 979062811 869653339 870567966 846776136 893746328 827866217 841976459 887527646 901876210 631572100 936749627 203077239 272413139 308014102 943019704 288545334 420590078 601584961 748349231 11022524 651611421 777826182 939213441 131021043 963358116 274656323 414974152 869380472 976366832 488378971 560485621 604666953 820861064 287200600 848243489 829243885 877313921 420116333 483855495 99161759 234690396 278841347 751182899 378282280 967806434 694582802 898090092 489215994 987456759 712925891 746426915 546831978 843673956 821949617 963898177 880347533 913606056 630178547 674831003 602377743 636574233 918974970 967304047 662739943 776327370 806721355 864655378 216192893 555619942 591955218 900711468 532557647 819299504 865417616 901581236 223111280 233612826 588191412 739197107 525420905 813027427 585674757 871526660 504905931 779454967 331085639 701510443 202917469 627021667 498105220 735068905 579806101 744040540 438871433 885797044 610697551 982705392 678613644 700726720 437376563 549657253 427406612 664544982 152431009 205188697 344019166 877484274 234332331 907899148 706402822 966716001 521083988 656036686 445891452 743466125 89322941 407671248 520885643 683061416 209925730 375240847 173420206 695890983 812003181 812889078 485938646 819984280 687172285 741356643 560622304 885403023 774791829 775876501 370901709 791389109 666686644 741124111 32959748 669131375 300618922 398778714 500191524 823420347 94026512 407567256 604290727 906754838 848937697 966006492 992683044 996310180 713627249 914491311 49807128 428543877 110574402 485588922 898231123 991775091 888232117 937708615 397553563 829098245 860801866 990924086 528871820 673479978 885419571 908354705 414765833 696847409 745738090 995634633 77331860 512555702 260590188 772290142 85906747 648409009 5174589 971896178 811548150 832270002 109734909 862717655 94195424 260629856 939251681 988466769 454813300 820910359 89485268 717885810 894810333 973046789 435215752 539129540 179295122 322956890 457209642 919046042 180784530 208635083 95840667 671679556 847216674 980087439 940008335 973130329 573247370 669413597 532410999 901273658 653197829 724379332 57173931 141421903 675859429 840126876 480864705 662928130 630846750 822234804 997330235 999211778 259704256 558015925 28890057 661455396 62246197 430981241 497140255 976768589 980023247 980794521 575473149 948078680 137465653 146448377 69230408 843409542 58551864 217948486 849972653 955214791 745149547 995468137 320535068 939941376 979584016 990938586 976081762 983499436 481092594 854327889 999038447 999139673 891208902 969100006 688338715 881763779 9474828 66346928 159413869 688857995 274742252 866500638 641558715 781144354 34895132 735960270 598364953 857472835 191897999 846419230 426014200 865559033 555225026 784848613 780684517 830406047 500172373 838953583 120875419 558311485 167661733 758524826 563544942 669774217 803846050 916802408 374366598 881246954 112819603 387417046 634193740 642833317 612338742 728483171 977358277 979899353 900789362 953053125 72851250 893319149 684335650 946266669 951639393 985734149 636452928 876147633 914467094 920380753 998524202 998795193 249347463 944331768 639585590 793775443 179717728 970479483 649225389 935907087 897886205 934380738 693995141 752077704 564980812 898761894 483557178 507347573 700380309 966836801 651048821 940871497 257140019 428529076 94908554 245360653 202157196 204103543 300562521 587559490 717073148 941816335 619527434 788687448 732752329 908523598 168469012 278156709 927872337 950862940 693698934 710162470 173363597 806907389 41254587 571859848 732057924 812033679 562204809 590644167 397020565 850830486 632917484 774346368 799447811 832208876 431594644 828445020 220074593 681348614 366990873 752993563 133247376 599292376 80055914 306884081 834084084 931031863 760175896 975546507 56353552 857132786 193114862 717627017 809614577 918484843 774499741 876166738 720293350 856829613 877704485 968558586 916130355 931084814 117391887 490278189 708512558 808405221 876684227 986840683 366115249 604809635 305299374 696605017 631936874 909533538 35037936 166822627 393234522 522004559 128277138 942105387 838833796 866068138 264645818 453698575 963771754 988151608 603848597 854503311 84345089 408744176 281062960 670276499 789928432 972984128 349884800 503822916 858599244 907097252 438253251 457154297 335904970 738873866 184101988 306778352 725820502 915986376 518845796 896492821 573452124 657640239 489799096 860176381 357184002 838769291 678719006 760376799 901436684 912872559 17521670 700107831 172700118 274401646 29464510 786918755 740194091 837025395 203086214 246283889 540333282 643593365 959245260 997185249 321416479 688932230 732403993 733831745 788443147 890463902 674813726 940200827 340254464 738839793 319959549 402702956 852717884 943240611 318796769 916746747 805516810 870737805 469042028 557523711 212073033 382415271 770010427 921111936 384143704 922851766 734556107 884770437 595016325 677280686 464389541 773706621 527052234 774765036 681706129 896227620 397669958 830633579 684857342 856142956 495221727 605273619 635098496 920628606 550587014 949199928 583582892 710041937 573213094 655574898 623119160 657759264 288859932 826676583 808319922 850570798 424748977 505749641 687299678 732086162 654646330 866097031 670190760 791548790 598126370 959048655 570634133 953453263 963730095 992315623 3974212 499682300 574681190 606237002 8067085 334595029 653343457 850200804 934534117 995773568 843944950 999935651 968755335 974965940 435050079 527112849 653979868 810658446 653302878 702515554 845487993 957489635 355535984 589064382 864681294 963628924 68664821 431206613 783676556 879359154 234191096 752538451 377208232 460718555 659057574 934697577 721969437 766223193 868321568 942653469 8258781 893084684 133585366 926826985 718231977 887691078 61252402 759679141 9315983 183729134 969085441 993012583 700973397 859107860 21698609 305862063 276680920 701107073 534388507 627050963 560399606 734148887 479709975 624554712 41518772 732087989 554875132 669565255 829365971 953207982 960040856 998382577 606206894 634002687 182146563 247271842 855177702 932150036 414009492 928611997 842334329 843020918 447039561 534950205 897788743 999503973 723754732 730192375 931534473 978596173 875556274 993217701 357783813 912846769 250902046 836848644 572279906 655201260 360949494 742973861 924088748 946224016 131186353 905274698 517470782 596949385 760759119 885841952 558559068 628329325 390080355 417682102 390518124 439768094 300248556 947774019 476293659 763053244 352228318 779426241 912533948 972911338 824364627 851626511 399393475 637844640 303241178 321239713 625138691 776085458 854132306 882240080 732768472 848173129 447254390 748218651 189901858 899443161 326781233 876305454 789514304 993657482 279213474 985778788 625336909 660206380 30364721 932340927 521298129 833238569 956238743 958615064 482624010 900199213 790429819 897001821 795520209 870916043 615160439 784910412 647346223 966730227 548930318 748243451 250304995 309484878 687771941 897006312 197479537 615732069 544159182 961649929 664227568 946604665 594476733 807759393 867681226 911512114 584958942 882706862 990607339 992281804 866719270 908596641 458039300 665361975 460213866 715880894 541730776 960265535 205856838 967582166 945263144 967332787 191877018 608439948 423107928 684305404 503815630 941905426 558754897 611349392 159052897 852502883 689516527 954214767 690570907 980533464 347205451 620428628 681046315 846571857 256266137 323708228 460901852 852594241 613312184 734612574 572450413 873242117 192231849 386169753 278927800 380762775 887066846 915310323 665510064 693347795 259006352 381486658 88491437 431004734 562355353 771537366 344015166 708389493 717971050 924042934 335705515 634274545 433513219 665222648 259316767 371056084 968237203 988453800 101776786 114024441 176251539 905617653 712670458 733054332 11918411 662846993 852042800 852915998 974602073 979433643 846574379 907890868 822446949 865263405 195439754 825831766 737345973 781642548 886332324 910104052 782823224 945916301 890697905 978383524 115031405 895154861 513542127 759863190 578176739 787169590 542730802 892734258 849707831 888555385 765934600 860496409 995335421 996914879 895978165 950240476 509731556 819769573 71955031 464316225 586415055 863716398 785702884 957231818 101063180 418571410 116731591 190707855 445962505 448406339 461804370 978382069 756365770 823253429 21383521 317111329 616782340 973053512 126379374 748311396 133580070 267579678 656741626 918657434 715806582 835795095 984028213 989693027 955408040 987869236 201274650 734752200 416484119 515505883 737796732 841914695 833103307 867702647 201004480 935054307 259197387 602818005 855049494 965068354 503007460 888815001 741591114 774941139 413349455 733827398 979705056 995235064 761883366 774263694 244489019 549605256 457822265 689207120 444443173 878551938 416472499 969750511 99215568 411364744 447726520 632348390 904728936 936177612 397405974 476620456 750674333 989877235 901690157 903703861 449776268 522117597 66009690 450433584 627535920 835169130 737799498 971305148 349084894 800285740 797325542 948825373 403376032 447227379 87118549 317302177 307527603 385398005 578429942 803790931 881067872 897774993 922269789 995749376 558362811 761914921 893764850 970938655 401899213 490202960 178802033 650408233 51367206 774975267 836341592 920557799 368521850 772555565 382851122 668343114 662135 897757875 661479571 781990315 571161009 969276132 125745715 336109019 159699036 373982458 190300247 729887764 432596996 612751320 157905004 166001382 776358567 800835701 399458337 536290281 968507100 973822035 544522032 941746433 228151573 765182870 545032339 651807549 969220208 972952533 665942814 781445235 741157932 959463366 529200381 661175553 566540771 912729077 41499332 721119022 627581068 676556263 807020838 826794153 827756997 978067627 249073577 700890055 655253116 701712077 340068657 830056060 41632878 496921531 558793004 808503329 76832962 78153937 532445627 926651138 98694252 501344680 758284606 852872139 795878612 911200755 889239533 974309862 459113099 802195599 174071473 442890317 217898823 484439949 604134021 762386326 474567988 831236850 803723013 904638139 164267752 626499220 597291894 750758617 896012568 977614826 8576228 727998602 178655796 975439932 493626758 908642434 964149179 968917724 976690923 996143146 591330559 640823816 915068716 966608768 767120854 997735550 4681190 694169186 365407509 689516677 771476802 867585883 868039046 901993608 163030208 867164321 475004164 598578479 603112792 711572750 18167509 289729251 236961209 258432579 960347039 962580254 59168071 352874148 204115116 623746437 775988714 928662125 330428407 574827357 488616209 596777232 615266089 655218712 447730619 733437176 310001178 693000071 600425472 959291635 304971391 868242068 887389327 926351543 291445145 816317970 466818661 644835635 370194712 487580109 941278553 948146641 714820004 858813420 773574749 942527488 214846602 347080914 677146179 851925873 124869164 319794196 849386345 914129848 778082294 908239535 744216803 768138807 246926226 932754617 852672740 979901127 783006207 857675096 748522740 948763688 585945177 959901637 719970291 800090994 435618562 591501495 933499026 954319139 648541794 852316397 402191938 976976649 655791331 982224355 861604664 963467386 193049727 852720110 343261000 845411539 580892448 738723507 644084936 980465335 254267491 819489864 507973535 525161122 161964262 251825884 3880473 658882847 444557784 866308901 227149228 948776656 635906548 856817509 793180842 997133952 218170750 762071080 558949182 945461681 963334217 995418793 957475908 996888287 538309191 755316424 165570803 570767170 702289142 721449797 909127763 984080366 341536113 929435232 888441538 940335723 553091634 850585910 825899593 867951073 813874426 961159143 893490618 938086127 958042873 969877669 868434063 991441961 533795026 752880699 623925780 720158554 271062684 744150189 982371567 988725481 715507751 828601148 887859780 950019640 273772712 902091926 813334519 869029354 402463347 994520852 319395606 683843566 310568864 705141965 14586251 596268772 615054302 682487865 794269839 899159713 236493112 866205829 205611558 974131384 736779319 860385193 336346056 473299546 351400474 522646228 167225473 591330667 971828721 981714808 917117049 951276577 42437165 279747578 892665265 994135170 866557553 894597670 942599217 968630833 106153690 459736720 170007621 570387956 665507441 878476219 542902408 952945004 944998930 981510759 830351132 895538874 110304824 823330291 360385397 839354824 930212875 947341242 875645238 982651423 69479701 86813807 18530902 841180812 222979476 245309391 253363753 283451799 832356469 858652976 573171286 899848510 977909510 991486435 888069708 919129496 551416601 778132162 831192946 854720009 429966627 543491753 484566103 742608127 833077894 939399585 116694715 666600228 848196462 867107690 477837831 636316303 258705639 380587452 165056404 502196747 559686835 965723138 644196757 674917621 215363702 910970745 132683814 549551382 599911983 635323089 926544131 958545173 841189350 992013584 23784597 69756445 451281643 796144603 450492888 997474584 151488721 691588958 473413160 983291713 698715315 768194640 672039835 744070508 185029553 604155237 404924326 812854684 103386329 464349552 51721078 906626388 215115449 325920007 919893020 967010882 689500217 831670646 976887910 978045289 265483996 782924928 460655835 605964095 759486619 954303586 267796540 300526161 98191677 735101351 807195346 937820342 525577661 742422097 200237096 253465003 291524882 580701014 469557332 469927190 107929133 346617929 507211963 567031239 882152106 955076362 448473001 797926186 517337496 984815278 87655276 305807116 591647128 866056498 271536483 858514019 265240245 266498643 429283977 771952878 595634877 805050919 233389754 606316105 167148563 950594164 447539957 607461408 338142278 748071350 687310520 971591551 1346193 499280186 83803839 811873454 6358548 66307283 228057313 609714284 370090923 625569506 560491970 826829651 33058644 493896589 749453116 894010840 45574131 293446257 294352783 662058516 971241568 974348201 421196295 871316638 395961464 537099443 760651208 996366003 626837282 979118657 975833892 984776044 305614825 826193756 22966302 376820064 8579528 584594985 759084337 884601105 604045001 791824603 10836215 866852581 371227466 687710419 1378345 881217266 281514513 367752949 2592436 489781377 410887837 486352211 455072715 606446133 91066540 610494834 262131315 383605247 141461094 643680826 554349630 574651289 635763004 801978607 932576363 946576991 533721427 707083833 864904249 968810471 393248169 756482111 857421816 933410374 950034124 981395106 725839630 984609190 861893394 921481833 4452121 737039015 308554499 330435818 995587475 996567462 655297106 889104629 5094990 318668689 278385423 901952243 294666573 813061384 256919738 835900811 264186251 359892679 898492311 979611110 168000875 985862394 875103832 988773075 200718893 804418167 783062318 959661252 59300830 341466856 174594585 264577761 360987847 490534374 758235660 998277025 1845497 540454455 290544595 864474024 246253601 933986316 986645643 995921823 291152059 925838670 939638729 964021983 312831916 616129609 731898813 746692936 53395316 61180263 412009962 496900219 933536028 986417697 86094582 677547940 786499830 802287011 616516753 998120557 884162190 886236481 490988570 746471811 939021298 975278338 757509193 759210814 554366274 769834832 806260870 941804429 48973285 490489336 153094756 458067395 993398045 996736310 680186302 997490904 242993956 630942643 568857259 672417441 282762925 961286387 508513352 859395939 104594839 915670215 424819504 974888742 191143701 680920045 867421315 994175968 143576119 651698952 567708468 643814057 831267306 991264696 775337596 814983247 2885846 333025164 906616120 936048380 864772271 954756958 450617768 973738804 318858008 811254784 493774188 882367039 458198201 932910029 456862510 789562505 515539779 585198199 73054810 843949805 646468174 951268216 333267885 880749658 977200184 982797334 575882621 634206262 662788674 943205683 507739852 547666593 983354602 986116434 636026068 805306755 96941826 544824503 867256650 867419715 699422975 948306139 540974070 911096422 992993565 995223150 935352591 975796561 94550056 685642653 225421291 827885772 846008428 953982393 925061488 972040172 37308238 844223815 979318258 985801237 8807226 319484058 849672221 907199335 656511896 725929737 878539109 971291542 603517552 886556670 60884677 549391397 332110151 383283320 497927900 863839280 866207800 997765605 495930672 571255635 334691126 576811747 728682882 921710423 971020845 992266683 220192061 749647190 96267502 546801280 597480635 649082781 211431386 680716710 74814924 787462725 210987106 600173870 817915958 900987757 924153038 975793508 279122201 901836467 515322002 852542237 934704843 945802786 779328170 858322194 75014710 794003869 37031102 540801081 980007120 989759266 260576004 469796743 520050050 819938925 535311086 808315961 586595358 720571917 637211095 840515604 854343253 961338096 295518200 346089439 155636777 943574943 502109406 664443101 136952604 490688531 686014777 695792805 973191885 993864125 459861535 686750995 775337592 984108622 855331562 886204850 195502235 417805491 32505491 897950469 179018093 304375099 957812416 992534168 140861029 289760743 654996431 925926744 548965545 693720366 762519942 889755808 918040044 993165081 964016684 967087827 553695281 907893997 221934010 312133038 119167957 187104084 775881401 894199370 856191028 994630639 510388067 751642762 293830901 915494863 27824342 472293610 145819008 835636110 434629364 856464849 997910219 998393000 817331550 865103523 561590966 968886744 403184281 790559623 84327366 139056157 710806517 970273234 155794907 425625628 728944749 864766638 859817915 938531827 722157346 999556527 810223124 844202594 913457516 989138354 593246307 795706630 309339256 713102505 855654240 877877582 302371196 746795455 910416185 947086980 115280671 930708847 392012839 516614451 881066466 998276488 66451336 947960346 697901918 964092418 984499407 992514184 191107725 595281171 232270754 419814648 655739522 700050831 784005357 994470216 822457985 932522177 343000101 779600105 553725664 583651945 566900084 738695628 284855727 535378408 153442924 453912928 189590313 295637329 56580096 364579445 762516079 997420471 744297518 832837679 427692221 766811341 992033736 993054933 272264296 658454752 276137768 780510986 945797761 991359806 744808185 847858524 611559467 763064783 46874123 587163814 911762944 926051441 418858929 662650590 421792761 744751837 193721945 712448402 240045476 894285232 767402015 789652548 695060491 799705440 227272285 269846802 502763827 853419075 546660431 682137045 514258968 643426752 547041360 964754965 799082200 913806660 531154773 769597458 463372789 896021018 855287223 903055988 862776055 947140589 641665475 881014932 812288679 846574578 661838468 994076624 559245440 892328964 705668646 926770396 787199739 952179416 502075858 952466295 906365956 969260936 366573160 406475636 79757739 922152938 340451 755766569 644564534 926441002 456128416 985977760 423596083 469383373 780653125 964614836 263000223 526163957 806718418 929259073 828547084 975824595 129057090 493816228 324579452 456251090 312158963 940427668 680967376 733185780 746078540 801028532 423238185 785646641 400598552 977551314 484251844 641374984 723047079 824462344 259576687 541839901 956210420 967883379 224443928 372866931 913207473 937136217 935483595 944158451 193700150 587429693 818473245 951779366 802022053 982715165 241907053 589690476 240675284 291866280 895097979 963676111 683759563 996209874 230200137 664785026 680911391 822095861 188913566 700225252 24019980 474532783 183051911 258496456 242216526 884610105 964324748 984170864 706505863 830222002 820563578 852666251 332599311 509131417 824692875 837051659 496703292 841744343 958342073 975544780 397580749 642847043 78853981 131035010 695383650 914078358 915154745 917353074 55452429 572478177 24022608 236380769 705416327 927663809 329414666 840085950 178634498 310534958 701330174 776613971 966958811 981018750 815605866 962021785 543799427 933698940 412114652 924959876 551383300 616927278 188913487 546293535 410801411 702073242 372804068 519096869 641759542 927358976 159348638 477677464 72002549 732921696 646037935 718217597 10723972 529941305 526052054 597572631 156301323 787270593 681897083 791720971 995427108 999049771 264805392 285030571 830852213 987562630 957891511 990776681 111881837 159690395 121659897 858420078 742702100 829652321 345552351 742357830 980380367 987660304 137779721 816803012 821396115 981652149 934639955 972023477 557552769 747461292 753828912 879498432 303547701 378073504 631412974 839213070 748148755 823202326 330913937 742351165 291750476 306538573 223086181 919439007 580569872 875348846 284322647 587991277 755025751 772280828 75955611 359321722 341070551 764548064 470577751 618354863 121675437 830818699 800464392 934707996 885437401 910625007 460444810 650520649 881085642 975547230 464712595 516014428 112648362 465208329 315012799 917760626 356224547 655648195 986599186 992838281 624089717 758982588 693843389 875395572 984896732 985851163 83355956 230980933 950049064 961469719 407234367 899547458 247752501 380291639 503458878 716720507 821758859 826612400 768785480 777935052 987878689 993789123 248159965 341232361 188360756 738559096 382530348 894513439 216537632 854229399 441011204 724778799 777369705 872015258 249977626 991593159 227754778 460885174 269469326 777341665 434481925 737915366 432055959 958443439 818701502 953050513 978904531 986443538 719442062 799990528 953651033 964008080 69094757 404369373 265291252 372494274 655285115 805833551 645473923 646599857 815984268 913991596 897182889 950604571 674447429 894287005 522015233 782185027 316016329 443003985 856745915 920178346 650204041 883161492 295794147 832220217 618448790 953096198 543300735 934706203 932139719 943319533 38932910 848215840 666564248 904448883 597918784 853429221 697845347 742401474 345980327 617678669 625045366 841663694 995178793 998631342 168231287 873943846 212963362 679977864 598250552 666159958 479866183 694246398 131681646 694060734 212087465 791970892 319597596 766735108 560720457 644565314 378575763 593603619 653151906 767032326 550148119 568615293 263750910 470319098 837592634 878773012 536370432 602993744 288388118 322266290 757270777 888059008 330641543 901751533 28800810 909837066 430617117 920328341 637608332 991113067 943089415 958433187 677204040 795319950 285522796 981144759 417696737 642040239 141733408 528360965 795350631 973357279 461484685 991007400 410839778 891408031 386569142 803991115 304365343 441481998 253792024 610715108 762141842 887211716 344235509 819652797 453854640 806935047 271719568 588599655 892196030 928923508 549647367 640568086 816115219 909283360 21905228 944872645 582472758 968447476 637064648 756440532 172903394 589445988 928942936 988817375 910250346 992630313 422620382 625119585 496378800 685795503 698593680 821799538 343116948 853045751 745663451 829211083 374471609 789579843 904115147 913585225 760103607 958764797 876784729 877731507 367383412 980024080 275909318 784354733 265094326 943856543 552990911 757827175 662459667 795970921 852079520 919360612 156845985 385246695 370138839 932961184 192454385 717105668 762629839 821114584 833335071 854538423 110581371 237799952 244423040 778455106 580744838 818637452 859005317 893594915 230385707 351836143 617835583 723952902 67759104 362649276 195551611 494432218 841540515 997647192 339057589 683035556 603721005 804210764 480353526 623149518 737392409 838156026 780215 742938409 40554890 335544855 869957820 920893739 152625689 402503981 789421296 916175609 84758202 906469147 207647606 626951620 54012613 716801628 703439360 988887884 940151036 945945154 63414709 440706425 810351507 819757470 984522273 989427260 93920545 961305474 262182920 626675219 112026242 894788146 522429053 895302903 740967048 893900795 805015050 902910834 45956578 717196677 240281970 658555937 493772310 717940588 275862852 466083451 81143703 135966725 474037495 522209543 673829098 975609757 290611560 661242091 521923775 722262350 940587473 949176063 938494530 981046990 173552091 526498603 385479455 725213884 953870586 970709024 154682701 530535916 723258932 904344517 707092456 755864371 209374635 400066213 671729561 714553962 291154401 742459117 338138033 678846354 979579583 984852934 373315876 689056514 783137144 881761025 589674952 811427028 67397062 162992846 920240235 962664904 472097080 820827497 793393319 964294459 934672026 985775312 324461211 959362520 95464142 293526906 336215568 532766324 840160370 947662843 912534601 990029266 893480674 946697032 366134428 617124431 166598053 171950217 479095638 996775011 925708556 968584637 529942151 789000370 447650600 532183570 942945515 986936625 869386672 985083194 974547093 979713187 888030746 967762906 528046935 786531087 938240104 978245725 179730712 194993784 978543123 992536452 111371477 192276714 119133934 202665798 646436975 761397670 996270286 997777664 77704976 165369473 110533599 770974720 523883741 726026321 713620750 870439853 776684915 824392941 964234431 983008503 101065198 690422961 998813856 999701521 617498028 889235133 370727900 456661027 143275557 924315076 691110899 892484279 851657647 957510926 365707464 429028611 182607693 507612362 924414133 944451117 116457465 510984827 815676741 820733318 589674401 760077703 92547770 829158679 745642455 774806928 556186368 890178910 224437781 476736759 935613909 980787283 352867447 644559795 382663842 544861400 562838196 727114547 181389550 694845835 193835247 742071006 575614328 834313960 442203955 471099394 450197866 639181707 711019585 945861362 37079454 173087459 566474232 705658656 260604939 809842531 364965595 679626481 919458002 952297043 993985552 998482601 728261906 901920497 972687198 993765107 20483438 401696964 661788587 914586779 549311600 920153233 765010197 838864857 251957245 262929399 329809552 580945242 358391763 814112861 293425349 425924011 471056053 959994423 19673948 146053472 719938166 933388581 370585416 773643335 310100301 395558572 976625226 989856607 332306713 741415845 644847921 833014209 461908161 596696691 306553995 620086334 488279084 566270349 331024422 449338294 409758238 409979474 733158467 752972636 237773931 847577758 670498473 818234837 15532161 448425226 440566506 662399792 404471117 717238582 87173398 670005088 526797531 527467232 205608148 689758678 195881841 288112699 522361503 603425353 763530171 772695013 161055223 549324755 977780569 996372818 61782303 793255906 775987247 990223964 466968725 999690911 867732074 911180788 397050132 878528055 705339983 771263714 118019455 120417073 798963931 824827417 423531342 759899173 393181078 693859778 502792025 591210040 85914740 983274355 312978120 920696014 981926507 991808984 500812819 923741368 204516494 534602152 864775133 903509425 726578543 919789686 414884740 742982787 67070123 911115268 905257938 954856741 227613042 682615112 694553092 757485458 161171678 764691141 345627593 710588126 330734004 957420114 772067745 975640607 837418118 950173363 720584637 844091815 466893677 584372800 178310715 328925784 221806850 644918100 41197300 145039969 336593356 993839140 767761259 808167670 451054339 529194839 294147958 900241373 645986019 804668353 796492077 973874706 747173872 915127120 924005523 956814041 748988347 919043636 863847600 883364046 888173067 900383072 676822974 973741040 912446641 913386146 256320583 563911345 851866224 965659137 340159376 535711531 628158420 978592955 363609967 608226153 576324535 887278534 44988457 414689023 590464430 672854180 239033598 467912012 641233258 713147390 450967841 801949497 149570221 795253915 423878090 512806557 959161948 963294749 935318735 996453961 428278866 834783817 771639766 822807729 515603922 839740180 132125196 361807539 801554958 807528098 898745124 957422114 590176896 662485380 547190947 944194273 905852951 981839465 773762489 782436959 429439478 750085194 268089522 653673739 631786057 942283881 29270187 938962741 386479525 499249524 82812178 797822034 951623188 992927731 891900975 911744609 576565044 997107078 626663648 679195160 952752091 975081885 751157741 867021826 677722355 837888138 805578093 889190142 976783057 997055619 521082469 826850699 659391247 877704566 225821996 233201158 689015033 925016205 97476071 382203344 846825407 852360393 508948191 708489610 17433783 121113814 80149865 345055312 80233627 344261355 949138644 952437556 980935192 993842793 310232129 945522301 644885384 804397748 866162055 925149576 870977976 910299394 647885738 732151602 454622972 867554681 570760595 655784785 974009944 976576420 37545348 799554573 902290355 997654643 339724779 618158058 263095310 925384774 385197977 712705330 608454288 985134406 373861863 934547803 106617235 972269053 122574178 624938239 360824705 567766013 554350519 731871438 513185134 850384922 557174013 708601065 480647534 565549700 199311089 337547792 331755088 385257454 570112793 634102237 873573775 877809971 725514944 959414001 318528832 948234810 647058681 749102032 158072099 292519544 253315374 674801837 647870888 761058970 412554150 593531017 177553981 506850400 61218619 815256984 622090143 786420703 915226689 931469188 346909496 681419613 755608998 940069415 150811332 732588892 186105929 610308677 361813412 833200608 875167066 932347075 260281672 610711794 72790303 923317133 977482818 983315939 105612274 824975079 50608745 494945317 822178443 997927591 932063405 935526915 576019624 809561815 223037584 667256489 448964165 765146832 792906608 864532528 722873881 941042561 157596289 458491758 517584575 974878135 965991664 974664784 920845764 948892940 888118496 940659383 582308469 767536550 522612109 826693284 190702765 638832814 311192086 391551837 451490715 822139201 54410035 620793291 842095486 879724417 38011122 500502892 741389633 806166396 768601019 966240197 544567128 694882325 969395928 974102738 846202491 900541677 272159973 814784376 825324281 955394897 137073541 925004831 275820362 430256775 820452242 946429154 276867573 687427964 736349222 909225466 128964916 195503753 815551360 989322777 992562947 997326501 404133894 658561786 651810703 837101118 609719364 983962029 802770890 921490084 910615538 989833234 687778258 951870855 370723244 547639537 108125603 134384593 211831533 520235641 527690516 863955006 740179356 857568686 134366050 391833295 214753278 783146303 275637344 830202625 657653320 701257519 926844870 983491705 821204677 984342766 805774837 959878929 876065680 972679105 217946847 466368993 592452816 706079600 201658822 806213719 134357135 197746314 416177960 744900377 67097196 642354267 370023591 867224100 493773177 951918055 67203428 429607020 730157507 957787348 380743245 989607186 282579699 766993677 266424402 340954289 936773567 946902316 498175299 945328388 976050613 990532947 352743646 730484443 952253579 965202343 819583378 889456360 144579663 865991573 204180565 518766375 293472684 961770540 46530637 383072712 460387401 746600157 771218287 774870696 174504698 640411602 593816256 624254645 954141579 981619447 29458977 135760395 494917827 929740386 905086602 940809020 325323694 728249628 518662280 539607264 745962735 920964748 993893656 993993413 104969253 961324245 787863961 912331640 313703535 331597204 970737921 988707908 262698343 500642031 779033058 825757844 760510560 985782627 847151873 904581736 851715037 908637747 480974113 966350888 205760529 687936672 458290223 989170004 601356004 787397263 577388703 981071118 366101610 937963668 222227205 889154754 30793810 759775423 430984814 918757530 402648827 802385172 325241895 765082066 225876131 691989360 467058729 805654680 791982252 796980323 464580341 592181836 132058578 621425046 602751685 839723734 965795442 977517630 266863302 620901900 612127551 972702413 913009336 963943222 489113641 582969200 962129708 996501039 28358789 184760633 514829653 683387812 315719768 736605903 197006797 287632919 47211096 47346040 631738759 810778264 891256434 951395824 495739941 592779506 498305853 990292931 685664121 741072330 211609446 492802011 148825440 683134653 559814712 971423301 84911400 948183608 661652084 935418505 616984408 925902157 702529787 785037902 266840750 553554739 768612318 848170628 829083416 861327554 30633903 279730643 111432905 776006619 783344283 870062410 987247860 989490830 155627216 345113994 653834836 699151646 553209842 964254516 994207523 994698955 52787701 701574554 45939763 303091385 373910026 903236487 895976919 974523290 875491193 943368517 518257534 816357182 370289881 618520961 471956151 543898357 902489886 994213286 374598600 460334869 217460716 976142522 2577925 72715447 483716621 827625241 859881723 881986435 739536385 981100669 174725911 436585629 407726227 993762602 683037754 811605111 558263446 652895828 326028319 815415325 157361303 477635359 634578447 922903024 955662405 979667067 859100747 971881927 855590950 915811739 26676850 406188634 776714930 973974245 332944286 890949720 533288035 760673600 184124791 589509944 545484790 747040082 558761672 568350561 603276347 658431436 947623119 956048552 319928102 379595312 299274614 574599940 609052929 856749164 962888035 975072641 867452695 905994164 164118709 584047213 24901817 158763594 8084483 669901631 521258727 608526039 27048542 844700886 394213548 995087187 681300235 854935127 927198090 962378648 834743020 940860723 830090758 852805107 931282604 983114753 847346748 866936396 128903173 349106655 620534081 676832583 568160588 943063194 470375098 526540383 829614742 997714803 783750964 851121051 722083885 963037090 973168810 974254504 657450739 855251643 316568973 627213429 662814823 924520969 894273577 951397405 615056459 788708744 635464952 978790695 760356873 939141880 955806630 976089059 4896246 17459358 570653736 775115195 678209786 980507366 782278634 931774386 567142316 665947407 213726109 936141818 660927295 819076676 465769185 915031511 355025539 910756424 589714874 999546217 873183582 973143316 662019106 893622173 200163206 846356336 749740451 967019367 108204386 932764704 23261771 248517624 782398952 963204232 424844964 976662704 167587689 213857610 884270826 959287567 529914460 905346901 881485839 948933237 576518328 987034272 556454240 580384550 957656088 984001254 959325843 987654968 314298689 814354762 704730312 745948638 123237090 686785526 90878578 769445283 155830369 901472559 413464804 424641157 837639109 879509511 386270976 859741761 165431594 189904011 561012725 724979594 349752602 384628929 96641184 933243601 497877871 710326399 752936223 799423068 949060705 976136848 45671297 396499395 148384479 598025234 116704780 186177314 948004847 969478191 846481446 848929620 993798687 995219047 662127691 741943330 416824668 696126110 479066921 992036727 923102895 927633234 168515470 573449918 57132304 507334983 742923949 937889129 42863673 848912305 459515219 707861628 413262672 793273106 358719807 519110120 176679170 480467690 107185938 491078837 147525922 587417514 480955457 655664356 530325110 744148727 997044551 999508168 476023319 966982270 870072154 914252797 300110817 572014606 600778523 656393158 961331666 961713234 451509685 477811148 508674859 970515516 28371067 984688935 816270714 886379098 462798994 832920921 603233520 998033222 51206150 507864219 401632841 471114045 273085129 553022206 107465448 575184483 596475947 952287263 215330562 624148982 290327568 716555269 730824441 769259037 647658170 847763365 647979962 883485426 194812458 341161968 434666069 935409082 435930689 807119710 229129642 709138092 822307815 910767917 661696770 795566399 173432586 984703601 807254487 987254538 807408036 997269308 476167850 658354303 144369266 824900793 315269994 370903753 694475856 868016202 796347128 949101518 712310520 714075948 597843911 747045996 985305955 990218938 270562351 365894354 981862574 991553865 673148598 735479701 504514220 548364557 186474358 638088654 332044048 679818663 179770123 837302785 574531415 779447824 28265092 151907096 970959081 994548189 387741796 960211403 451806463 620581826 314153974 650019269 34465428 245739903 735138634 916670219 141810316 495213406 209472658 665258840 841025947 949378250 573143451 924611280 173584930 836782555 200415441 371267204 817895598 934796145 769848647 963799919 636008695 841975528 91304894 409877626 83478617 635272876 146051523 264956042 50036219 807276179 423219546 810879687 283003681 735274547 404259998 963095672 991921475 996814026 889641311 956081721 670224231 717662606 351690269 962652591 684062339 955771195 735813487 902373309 578956793 655919511 723793314 837730093 769567079 919469450 28613212 266547836 878961203 902894966 571558504 600201620 645570991 654179139 666887245 951617315 303757013 997702571 707690434 886396734 998753581 998777549 34503096 338606119 512067438 700318340 70402801 440861175 770360188 866087215 134247163 577449680 637720338 783981368 985582849 985773999 569606924 941918985 700613150 795509390 548398534 751917065 759417427 799210902 2903302 817330198 65559608 372745870 233424446 999237189 650040629 739940642 814268282 821159016 644560482 654594812 500600193 979403057 495620282 635611934 137281488 606064995 453389399 789380384 694066369 953079742 369686411 674377485 288958676 738755676 27411295 753305111 217645678 318647444 459203277 598996482 566608210 879694910 511796198 677732850 480456161 681293267 406584147 741428632 638941920 938480612 252567588 572453915 110325310 551408306 636736667 736102205 671976775 692235107 601287362 951475783 900259275 984531218 631872632 755381446 220805019 462205537 56500822 280795250 60294853 756643965 897347200 919059316 490440393 671451005 741042201 842889959 764125773 981197386 550739026 700572883 538189023 900652561 4029043 629484352 140188652 317523219 485124274 944515494 895784538 964968227 433335937 440171900 547247826 578555942 992450260 992812045 190529446 647160259 830091369 846430197 274148295 598243099 657729717 728334431 257633897 668185115 374407832 449687650 847295335 901424433 93655507 842643680 45739585 514663086 118290374 952482737 930757394 945969609 664499670 723485514 135234538 402047934 453419910 566297508 402218158 672767206 493535682 812579341 919948779 954293815 442690756 905834581 152790935 574573778 169463667 750720576 259218971 565103812 341924535 417048481 231952323 507482758 369757396 378979902 623002175 889168163 449121131 755005733 622196764 644417248 793599450 856307941 362061227 656942535 342432533 455463064 309790608 838168626 995469891 997825385 361361912 600166201 318902656 849235300 899941433 981588099 699505009 704343872 816346257 876713118 576227548 667844457 326094870 840224076 240692168 566952370 514639607 566168372 505599357 815724540 195686686 475535209 859025988 997334508 729424513 764622276 227371871 786396814 230653727 750012044 530877960 958717107 935731979 939125326 184938148 669434954 810393409 987190051 968072521 968951071 88999231 535133509 630536407 870017379 435231392 727207702 755704789 950064001 850085107 995117562 641312428 762324252 605416257 994116761 848005056 943473008 775826726 945321672 273431456 301829947 936699276 958999753 688100155 809759244 62360849 271921484 794320049 962189066 483536941 931170808 92475830 383737483 490727212 779534163 248845920 813382263 492959240 791640526 314959817 392618663 219982475 657976591 279301335 913571298 532084292 993359851 139877816 669521026 758604474 930917008 822613208 857606965 841044382 979599720 293101743 733600858 114659652 992964650 25942769 62149216 457585043 672718284 132472651 818787781 759635036 786672968 367231267 952033561 38765873 561361246 835305189 954399626 389653960 563483753 335890933 573945653 76096923 839625339 736702592 808332003 103045202 746880852 457889804 599420540 82926285 173294805 18687898 596064441 385358373 650997244 646946708 990251741 10993894 380070121 902100478 983639672 376656890 842739125 260693386 909750416 275289881 335775345 32522161 180338989 57409167 661717331 28283776 667591120 643778198 940599216 558323801 833401476 160878377 173532181 759355235 836273164 786448783 996250871 499515955 865949265 135466681 440266837 577768140 981798714 523170290 574663862 264985129 970974032 980377424 987834321 87516815 207275108 775721865 956124654 928096724 973867141 467539719 550534231 729627118 887648776 188044849 459640250 468495205 497966002 963989557 967429645 687788222 918037897 968477595 969479836 375360121 619185128 264292515 420947969 232561148 435345818 585907697 772447760 932572596 958298553 863395478 916151389 351293270 995187499 924019146 937755543 692051462 954441607 489278952 779021881 724776533 997311281 680566982 771832350 560719415 838514617 55001076 502090399 526828895 680982025 943841357 954659781 349165277 676691801 792485364 949735323 338768583 871830954 969745714 984519289 406061399 844904646 556349574 624581173 465577977 536974748 94699839 499769991 186643792 987524303 22401023 562027198 626710621 905019960 926943971 950516929 183554387 568895860 882726368 975901882 597546224 866208600 657991011 896415062 270932649 670847960 196478079 552927489 539880684 995384659 691862757 692964350 78566263 683453188 836211710 869681790 416417278 585847830 544817466 722149062 482192640 635845713 61474759 152350675 300294092 383602541 578618979 850129308 711182422 863256014 492465745 682101769 854581104 951393384 989068743 998630362 831281493 988320247 672159266 970297858 386859584 514636661 331317568 426510713 847211644 980430287 352508395 787473480 627770381 871748619 586827408 883991011 866484149 922929249 236748811 922920109 26929783 146074432 859569463 964474966 487209774 607694960 860131771 998371076 815083768 993980273 251570203 490568455 335455120 998893868 594728062 780640214 237461653 674436535 166762309 872642194 58885283 487787249 98664173 449707109 150795631 236723443 600511607 967041442 865878984 870620543 780315328 844871875 740697500 844184933 447417295 741682918 144118552 334174359 655477964 693466186 554923377 721060582 321046549 503871929 920139026 959736025 565035098 954275308 81063397 714978894 502932346 977668558 338900996 461625541 216143535 452128262 530981974 584409158 668202563 914189994 377783673 770180473 987514142 995968865 484500549 728309531 256767200 769045914 566713089 688561091 1570423 746239327 845016364 995714552 330814167 970952585 390041751 637544372 692680515 993870364 190785210 283973876 415424996 546516252 655985173 788325451 85674624 660091804 281072193 301386567 122138623 345757521 374168389 886869561 143235158 380231158 467896624 965776463 77230599 470003071 58091694 599038128 312994394 716697460 16750456 269701615 121189252 848378603 475597548 606515060 377243080 589400566 135403018 439327826 944129505 967833652 159302556 295427759 782459494 866256168 488740637 738450738 865443333 893149464 149469515 965041140 336182693 564922890 719598011 726386126 355986663 952551474 272248066 323554813 184530466 328748480 298897710 370683899 332919683 579317950 967719687 970693042 721203708 849518340 726699736 740909909 894867061 938239582 460035442 960682260 508786681 674222521 580276139 595586704 135658803 528834022 526999563 664719564 892165330 981045267 420681591 876813434 61256976 900511089 151250229 863436151 317948912 991758425 3452763 893238398 320900203 464578106 186717267 584460592 908061321 946533301 185486829 778418192 123524294 370106754 433923416 561393475 273827738 837764631 461441051 567362144 460801648 867386177 46033582 691028130 542352858 616939180 314601832 675928062 900854099 971187381 195718912 522753812 369386136 995487121 423420090 845200757 648853335 876009540 182258015 832524798 112405618 424054062 741517370 817918021 589121316 929103568 793747969 841193367 529948844 995875180 415697035 449477643 960867847 965336105 819662575 821451312 386276745 559247417 532624802 769266660 687654731 709959319 557115774 865481122 206003018 657925764 483957843 485581394 18501235 743919853 246797232 973620152 666598317 884988616 578236550 673292382 326355915 734292705 414806115 710637669 561100155 818658663 770963971 875297009 891800278 970036884 859750654 988494546 379625087 652733677 231584087 310549849 889670013 989841670 789552883 877455638 848685034 849999399 464542984 801512229 52194863 278086510 39606081 633833597 214394957 808826815 744414174 921859183 357492456 893998741 895088158 990132731 873648504 873894921 338351671 483773709 911495866 995671108 376212850 466281560 646171772 726611986 925762991 930150395 770309587 956253324 490866295 821660736 742153216 764610275 337667231 851904752 487596834 544671416 334943281 602303690 913388200 937814384 506731642 576549880 856160239 979449169 640396566 754810322 782669443 908976331 55092953 685005636 753360721 997852088 584494330 787770440 181959912 346969333 681673972 927635504 574645801 669303979 922764911 981934837 932121264 996920230 379016235 586353226 887953480 955406991 371054076 753189179 55784668 622086065 224520310 855550998 521691414 658458610 177771996 453356253 96726633 704827558 476728123 853256529 950951269 957458295 948961202 952978805 850318384 994067247 256878122 534342649 171711231 972447614 154857714 313423409 333931867 646168400 770349289 975237064 826407166 908864347 695164633 951763290 508962525 512711490 756322982 880307794 208764711 979415991 984785919 989898356 851989191 909371466 94203265 270171368 535195609 787907660 700605168 951815102 658359495 708107784 546657497 757343332 241730161 915953042 668614213 765000720 963443344 983062959 490951174 889100307 591054427 925532022 253238989 587754725 452956378 934689284 139833638 386973649 578986469 658806624 945901861 987561992 926324013 993416207 590165866 838861706 957216827 961197974 478726722 758363524 254095577 485743857 921344097 923278533 962537927 974669615 882780353 930620058 418807415 863793950 694333187 929453847 6711781 684500677 186812709 706967961 606874746 883814364 157125371 414885230 335379855 621617361 150558583 953983170 842950740 866873748 964899583 983793582 456995721 619621250 588463824 946520731 473923360 895923604 720510803 963904698 405593327 573335022 266313728 719183635 300839062 592015016 594707392 612651075 246472600 277371250 905678975 972434213 54028934 462923831 901349971 935914727 95548032 304251440 563325103 785646897 202835146 877643003 237672914 275393614 938523964 960775719 913460067 929289163 277022997 664572714 217193162 649210124 441254732 617368072 222455178 264310444 309893823 881122123 844280125 993681724 209308814 443112472 34859541 253958301 312226690 994143666 600607201 991832612 854644566 904155071 128271321 946489062 470417005 740619628 10172076 687202394 41261728 417435512 2547870 427013466 513700087 869866923 272858748 305232497 395677009 566674229 270747132 468201376 873110288 932971095 472610840 892604561 161277947 184395175 966486639 997184682 758558975 761088833 436899910 626631139 430376133 872661095 282971840 923322413 758907414 970725935 574771624 729492845 783948938 882543222 290878135 539119299 604263419 802157856 551948396 744843293 68438215 563862352 859185968 936286449 243780357 878106931 171362599 481235066 392502706 600673789 409151969 758272992 211840671 360168203 287022153 987661944 845702521 865151427 565467109 840710371 343955346 539898192 259026989 448081323 122608845 898806703 476428202 921011174 585477259 798795928 750988484 940814018 826453070 904844552 182786048 588562520 844412043 920540289 140453720 540860444 523642696 827720458 647810971 815658448 766905824 899037539 617554863 804378290 304554967 480798126 749214280 957579578 413200035 868285855 214330236 870956924 508078099 996579967 663982057 788743944 411595677 829215080 289769920 648075407 885381565 923848106 426403479 821287850 607235323 696308449 131254182 387296134 747533369 987968501 576840812 989783955 207701756 281837330 370071099 422043616 930998346 979286301 329631036 712010763 451450167 461826558 933723011 977808454 369634020 856618574 276902417 536846548 877817922 972042964 130001273 805713396 219654332 670892130 763717515 775051286 300872503 605654691 35573421 590469345 925297408 962577285 238659593 521855462 934542115 967940519 254909142 921248650 241401567 889985959 351398829 937852733 812699018 821331490 559958547 582756431 513869893 663026943 414229089 525139030 173993794 845033844 671743886 713312844 453834950 938658897 320024816 788434175 562776791 809101882 461046272 953647125 259095416 531203718 290160047 473990555 222778028 961864090 838950397 971388874 237667517 677588424 989109093 994829740 895684065 914888534 521092866 644579447 947645213 971816861 963517893 988526973 678709461 861420461 301713199 762754637 199934101 821846328 538204184 763710936 274034213 909136325 585496134 640622813 256235865 924795647 683005798 883256907 404039975 938810454 896689750 998861052 156689799 758418573 429177733 617304071 284370808 801756225 114345587 621832794 148805069 950368399 385412213 610269521 341907700 796809231 714349756 951927402 470554896 684926669 432720853 954204255 258772022 617625253 769834921 904328556 102849737 774238403 21666071 743105252 117749507 290440245 581801481 919885726 968051787 973348476 341674099 459863530 741697099 889230581 253406005 678502757 60964679 91783826 136484943 460901233 158940809 452735564 765013040 893285550 557564842 562959858 322825980 932511474 557523931 934931066 273080371 339363735 462690191 556999021 176223788 492532111 816711383 863503227 396418325 669224288 9477965 206364813 535161286 679614785 957167896 993072773 6280199 82738333 882062279 905966958 961417603 993354722 581239496 614379791 968986215 979376515 388578248 963335160 632505304 891393208 227719244 578910744 759732878 788844603 113044387 556210681 701124610 945592974 855215306 914106298 453581897 823227812 569546141 806443820 459133727 975705681 348245099 470916392 904356289 944807792 889500368 923052082 625972061 753394832 626965060 700061123 293585533 862549740 810851372 815143294 537851270 637892763 210968998 876915040 378640754 854388443 196933167 523793800 486332158 913114200 91789559 654243569 852996680 914610286 290327008 590425175 98539174 329742489 115384099 743115838 547032291 929310242 363633165 910369075 353100180 616971032 284753172 955872411 255696694 427595868 586573500 695106389 315729335 849346033 660746430 681562207 824251129 868448733 635374453 886964824 953066984 979956969 839227155 952685395 135107121 155083981 281210353 447347128 915438023 967973499 411021545 548903915 465285775 868037991 802647174 817142478 57912878 908992523 449845381 485639058 118136603 190660229 281085849 663460260 801999292 953146117 602229085 851918946 557475275 685410162 535690994 539204669 223555940 830098557 552911194 606381595 946706523 979809958 523474691 666412248 113537817 181966295 473336733 794962135 605635729 995103962 299495491 576446007 574790507 981212076 951471479 976490220 835070939 935910927 548795044 874987279 561947064 938029965 340089003 599208255 780065125 855539430 803316847 883338409 291857618 401538724 572164374 616742915 699245177 793824861 34017699 698720179 197078585 726622996 883557245 932099080 396466181 815976078 115999698 865813701 643415726 774227435 295444629 722821989 724253597 858686718 115103406 150700839 320110741 344345642 242100744 735854916 10609747 714526664 62711598 740849107 178017238 521618969 329918100 346607369 919140268 928261164 829396257 947798269 715770438 864267024 298393668 645772242 269065554 636008125 161433638 185971801 89435408 224001263 184266932 340630488 75771099 935770269 964905626 977505260 126126159 177613771 609027431 757062799 409298830 693691642 20986100 733617629 166551105 870055919 295167650 915060151 768724796 930294280 180164981 296675555 826889217 855180578 232133454 386033642 968875985 987504135 542811648 608245829 212514651 260021807 4971069 727792710 871258630 918393266 515552774 761485794 278051091 554779005 428066763 739002105 84887599 179074946 591247217 654968191 939706653 984915096 214348166 723434610 456855466 541150429 404455268 949200387 668959399 851042366 397594183 714747183 101871392 875740160 375267624 479561320 819572825 894858394 311663047 595039823 65240120 703196385 136066450 676815927 777570406 939611953 310464635 449215658 957713918 975525414 20353508 45043920 999098855 999834172 164827477 856678909 27527182 632460081 647229436 680184663 584803782 883606194 394618843 651417662 227353369 771138238 854317524 948757618 964125278 990923250 184227023 920017832 606388787 742424398 457559174 632259822 145620180 929723363 1610909 643530705 46186882 754193524 192709563 895480195 350091484 841028975 345618495 458548741 724283294 888836689 139210653 481690420 467040823 669273279 280826995 580225153 913285195 955155228 965724906 985375792 535818029 886553540 351585131 493510588 562147958 946122343 17744549 363272917 833670139 936876180 629342460 645682280 647836411 887600070 768012220 843240391 328532339 389948417 793075769 888900401 521730766 571158325 283675442 727302336 812911428 829193852 322324212 831428473 149339654 850579809 613949063 982984476 512078008 805891016 859415005 911194493 609712150 783073492 52570647 439782586 648452449 744664152 434827443 542367816 612547242 832446936 93021777 278538335 578722653 795406907 345992817 686532723 178133207 853203273 120211606 236789849 416748568 990522751 397884517 909305849 143075726 347337386 653175774 716272008 144841741 239583233 414017559 432895599 30342371 687588548 342596876 505970890 20410312 463095579 422007264 928863037 79945931 561432061 651847797 947466251 497332416 926872858 535214794 844747703 202964165 452146899 764218849 941304848 294984296 787748552 17143272 278279514 4329330 487128232 970681790 999924070 242590055 423109120 996772829 998166462 257464670 342290072 603474722 943223402 960734427 975155975 201639489 341339795 638502498 767577857 677169066 686794405 956902331 975960629 352115623 376689198 300365016 318282084 92939362 503643209 62121264 681084709 204671589 219505275 582208139 776729285 972307471 979010730 752877077 899509610 852805 342612567 162366583 488168585 64205324 236656589 876961676 962423696 895877284 983004096 725591463 834823286 455803374 611747137 948088514 948611814 143249956 623232249 922963491 936247555 177406199 560874415 858614929 861335534 687396107 892064500 13229155 645984795 956208836 997926022 398238058 621774618 555856755 861478297 169700770 551688509 445819532 479617032 854229780 862103216 298459831 651782158 850492022 905300465 300945450 661715933 617082940 918513217 947429574 983610455 667409151 850654344 900861765 960010450 403392640 945086033 171656375 306792750 660317707 719991401 609046340 669895640 705093966 738977985 620010153 674041011 47656147 456085113 975710778 977535340 145418298 268614809 266049169 474047325 713941503 975077644 5547523 153645630 213031175 428588128 73070890 506248599 344906329 826703654 808571424 994313574 240877433 796209122 789611524 988951810 896941965 943988223 825336480 998575119 423509733 979900495 434438466 700908455 450354329 542432241 463418874 628995230 971097615 993412392 837045910 870950067 872107478 992855275 145252569 518857358 972124457 998137966 106558600 414264722 975390196 997677584 857116185 893613622 631214057 918370445 927140740 963316616 383489363 761860017 56193483 301155772 568788835 789276297 161032819 849706009 910670140 973935938 346615710 515699812 507453395 696111318 380922301 750139149 857815889 965243282 849832479 941201861 704307776 729269324 821398838 879638674 488559586 922723911 606000698 609050517 543461294 544700698 645579858 648404489 652174589 722964095 42722302 96247693 870424008 919537565 987159186 992389364 134854950 870243962 18067994 484647261 350251387 362336881 974657248 999958936 713049667 845349354 330798039 386482758 827420502 910259103 412450270 735783054 160491995 691826144 624725951 994852144 190783397 975418470 252074073 951705956 9444159 198231263 576655087 950192238 609866947 924311722 681014414 735951852 16478275 912399470 35866828 868901339 975600585 990287027 1857217 784249581 264613566 834255144 222755317 227727724 662228054 903254819 544886370 874289329 303847948 354924709 158864864 898355414 343493905 600868217 388462926 799762648 737044462 991317859 949420309 961688131 767104011 841275589 647896216 809678663 393459868 429261616 5878770 485192962 453475436 480312533 77714119 745528436 941395153 994525325 373154580 997961184 10110065 421220543 874576601 976826927 585347025 687350967 95140671 984003064 810610579 967663519 928410663 962759973 383196342 875007962 380144397 849279394 528154241 954558400 725227831 891544072 839933292 898562087 59951725 636668542 339800660 523465329 720003163 878557357 507142016 892897860 883503610 960783323 378816650 472667709 98760498 299967891 127236329 307373942 482817543 735125147 218351646 848977102 933417268 982509082 835673518 855415357 609658623 797603218 31908519 643372675 375948591 717709546 910400976 931984246 615190756 993079880 666457835 769708673 391643187 808674544 909384428 927724473 106344195 836763510 781308147 844637155 721661363 937892269 992680723 999469977 680285226 950146741 190482345 755537969 374244176 667063389 90466401 937644341 216659690 927491571 982014828 994764869 732845762 767427522 301996755 927329413 696401580 759165822 766259812 902784987 166928603 336429108 396797734 959367002 717027187 936493138 901797076 923343613 394042817 655643822 797436096 841263155 935807512 987853916 776256378 999787202 220511578 922224067 755754955 920922275 494588318 906529770 799591507 987783846 424351091 785606049 480338226 546122285 471001357 865602275 668140725 925300647 993066170 999702408 214451472 800422918 245677205 626692799 546366269 873133840 675818469 877573889 748032944 748198029 902702745 974089694 999834034 999930305 744445001 987388655 673567027 713539597 458360576 942706151 592787904 929576188 313173264 560869065 235201684 933183652 305974556 882464816 595773780 926656984 830017065 852338972 561154604 692221213 60677118 572501989 951895245 975305160 896687992 937989892 341174384 840703011 913190664 949530082 500238287 513584676 248773548 404759392 695120338 711931913 452242152 464021478 249856665 932197994 638229329 757224665 138541278 554042837 980024420 989203809 68540278 932508149 326447176 575260786 156999153 369788427 866577391 871180746 310716598 326546753 955183671 980522319 698823856 710035303 36540724 82428944 630627616 769818217 629960881 772761846 502810601 616613674 138970510 844902460 998076471 999564775 93093525 997011014 457534111 556016623 280234422 439424819 901788971 922366069 537991029 789751289 109587902 948504375 833864626 855939492 4228057 646543775 460646633 648391869 527424148 893971931 132737593 947893473 928851181 991852747 476838351 931114642 491951264 896338310 977902698 995373683 698322148 781650209 857083711 969772261 147744809 340654352 183095447 515614640 104214191 865563736 207050167 882379445 105020506 260917329 709879651 935108713 648247040 660169258 21554100 862570900 433804826 665292569 980604869 996934083 579452538 741803884 79727457 785249223 167225752 759512116 360273362 739838282 468370012 602363879 23779820 185309716 814046434 819902540 800753820 868520338 112121065 891127916 191871162 870477427 972969740 986586273 23498832 857001837 558186450 792993029 933772634 948546920 633700335 855011723 577344573 867257231 783706275 885628422 835878444 850192434 112301069 246311223 742424784 926615616 875744247 982396443 535219011 703963731 501084545 652718514 148721424 267821899 597766720 711420445 477609886 581883850 146460278 490074325 421974596 898709170 671465003 753751876 352593498 732032108 585155199 751513320 874831141 978504414 262621556 781435694 560861049 907866490 533863126 805160309 999916734 999980433 382045320 607634762 262737810 430795265 796577218 916093225 444859871 543871460 326343145 594647783 530803931 574235777 337639638 976406353 311037019 433908929 937693845 970718021 649029070 761761900 469826474 553021283 935228476 984152902 484466799 927870034 613871731 617513127 51911177 699551689 450733439 964876256 789174355 924505580 19528516 718004368 839533724 951834680 627198031 737958099 512930077 978662711 722886211 992143080 576064248 595016822 214610672 329598032 965564369 987531322 36959412 864958422 751281066 758187391 777624253 948294472 70167917 201175582 687031691 982548549 230209074 991636619 466792037 518022797 449642203 922840342 753778060 975245511 446007949 747763831 829516987 994739420 236239843 314720634 933738776 939382178 203846356 619754097 439129754 890359354 738240298 836077509 525758485 707210382 728993582 760061014 992717235 996192074 872419691 975472803 873585633 991172145 436081671 840158805 50324051 350477305 217889945 987809164 765174026 867723687 686609384 741243997 599909216 603567097 385215397 944448370 869386281 903819642 893183284 973958585 9069018 936941548 917115445 941814677 94778202 399030415 425055836 940384101 80804636 966471679 369119015 440785674 790653664 813196916 772295038 861335448 159427872 441298226 349998388 790375055 694321458 735478175 427502394 869548926 88671251 588381077 320116459 720232456 403545507 625341966 212552021 456144146 515171749 658364170 736532071 937644344 267809932 570634259 374032184 993617099 247051446 391300027 482633270 620110593 952541440 990898090 422903478 670261248 676403730 950925428 491975257 761435684 583968866 935211714 131330707 616101884 898927208 931109724 757192837 913084356 117043057 712217330 533174294 646416151 50548936 93792051 541490838 784784183 931182423 962932882 434767883 588245491 506132080 905178918 751277124 782238669 704070939 873602260 778780459 792763730 326004222 958038568 720511959 985564587 720978351 734308190 809631675 901948989 459400093 751539803 477875550 644629501 637483368 791736065 999673121 999893573 329982965 571438141 671256072 749507306 52191393 278020393 710044173 956827232 711802006 882429125 90147018 438357122 188725900 825994871 959230983 961087761 159050578 536707892 382036077 636759603 328325880 784779226 531776454 759986932 640620244 819667227 686462815 826822854 284592855 866608133 7019538 853614905 644137772 942550616 997813074 999157437 23292239 464392522 649225925 714648610 693351395 758072009 252703937 369651240 916526063 984154967 139186198 228121952 348199994 611949222 349349125 398735078 273846426 664096335 4777419 996462139 346107082 384908943 922058009 954393571 910234235 931893918 419965153 440203398 784030377 869151746 590735518 869982930 584916437 683679950 62124998 980349998 225874026 681847352 359747449 471214422 429736777 679741166 927758815 993514715 344576482 480286085 46887770 777952685 961187269 995179108 57610662 84963414 587086650 724648066 199490482 773278304 966670432 988649048 655285007 764663741 649733360 758155415 8574233 846215832 912684763 954142981 944088259 998587101 444551487 647407058 243364362 559554464 706458895 759536400 505493087 627793619 273894781 715961020 568235685 729847448 332443870 481342505 731939673 916779040 950596422 957626197 285343997 920925353 402451040 628113021 156127116 858696468 576378219 853429646 199238617 282191231 687260002 805228649 181672335 421402956 656169779 987307746 398220090 842147801 527425884 651131556 895401672 963281053 171020971 831171502 149341450 839771329 956697445 979692204 350048159 465443000 21694618 789443564 763563113 996774711 229603512 905624736 464512997 571175036 432698784 930173676 568447866 726365767 892579906 955963723 214658278 604918241 495384525 619538629 164285785 335350328 820884769 846456113 804861101 817748115 410154060 666871721 764299323 807533185 38465786 302997738 730335694 996392974 733673485 910779653 912388125 949573193 305538937 551212212 81149778 151777267 905180062 985002103 896384453 905719986 383198498 787260139 169270911 636377227 848406889 985235689 706347130 875807071 872644542 910829151 544544489 974215268 423366160 818659608 366475182 383523477 872006176 984911470 330580086 448294445 351993475 695999024 595903865 667378365 311740785 887833024 457372337 930512887 823448206 972838984 270857376 870180141 206515159 313762443 694056317 785051600 360012557 839925605 446923349 999486957 239309276 811379166 891633288 896047882 950890276 969188675 381932564 493550488 783799732 984417776 826328396 917290483 549752131 999422968 479074674 733915385 368676953 511273532 590566812 648590035 325596860 967460755 756150895 845999450 792697733 964862612 391191424 409415980 533805650 981723324 99648968 253124433 587698610 783073830 477498898 981451280 638526894 666128368 406961114 479652173 570274090 629215897 210835510 737470020 453964413 611423121 552761402 796162522 685134645 786530026 218674113 330708939 107169136 528963794 28041031 892811852 342125844 569402045 260845709 446928803 6359430 944568549 539225676 965398594 733794879 986356281 65429211 244058829 83636927 83738323 16298187 676073143 895370031 943394963 420235396 910739946 433903722 603360921 811275469 891010735 310008090 839243270 158686091 305616704 718466186 743434186 913169519 987661856 750962331 903339108 946230256 962565414 419077749 777042130 407266016 561566460 160700936 250241663 176712563 953345942 315999707 564175087 277750367 870751708 762684896 987407659 400188024 992360799 637367894 847457669 880840155 913686643 331057666 495914993 836069780 925831190 323113564 871056722 535413543 681282224 374855184 615848578 137629547 899532993 418094495 967202171 411362344 904387653 810588301 821263908 740157579 960855846 835530015 881727711 299927303 307232425 356445936 704567112 909636821 911860890 824186131 871773795 381024303 724642047 54068369 231365371 90686054 280144931 722233050 773360436 524455251 645220692 436120004 522369749 418901728 483732778 645133440 970738986 962331835 999639870 722077787 874822584 70156044 297720657 426596487 680835297 268580604 765843457 330326244 454681071 181223878 576075491 120513515 571358077 85992184 221711743 414743284 800151145 171026994 915087166 386939759 584073326 585564800 745707492 689924177 720643061 750588484 821614355 787484751 883892841 956415182 973157710 401776396 780258486 814968836 832297950 8024200 435719187 740216963 896138085 879834818 969356094 103725901 639815765 137989332 356084442 27722747 721249919 48779242 223561397 993510540 999957869 135501460 622115259 374040190 534396227 959417511 981279629 913654736 921427925 643256601 818259617 879174469 993335481 582078136 904371367 86986965 268550530 639455953 865815897 129321220 932250678 588017006 858964163 244905990 345741092 213211502 326174306 106122926 596988452 60424260 277424631 273550542 293683158 185169792 941290772 310613138 896846038 240421601 595510087 883056845 961655731 632421809 743200417 476969657 979650412 374556382 591113638 170801775 658484948 971136159 988781519 864937368 979797374 896425185 987911827 312667083 554419843 177250125 244441892 640023691 963664325 832332881 885009235 545821575 715406751 297053724 768314893 800285801 838537491 221028938 612647643 903801841 929785547 668755742 852793835 27421696 230747464 68467980 94416226 601451950 820476695 575189063 742218019 407384620 557908047 262482330 311552283 366908406 550492429 67891475 833619974 919510081 968558713 873577758 975680946 318886824 439401492 199807949 708055213 828452201 877308964 167404763 237893836 416220205 688605607 152967658 261799634 712831468 921589382 516396243 732255811 383360682 813595932 711001976 712368059 30788110 408978861 587376056 835847140 142301187 144468427 185030244 681643280 650767882 735414598 478633569 881290906 7010804 345357519 594027914 809779567 864991565 982793168 19206099 87123768 578796137 940464103 313920276 474185410 381193772 912289207 765760305 934048172 590650778 815510288 582769921 766348743 566278372 616665633 443389916 866483812 907315536 941788046 436156527 569014938 260505839 681429020 893161802 897842654 229884240 570532583 857415356 863782051 120147957 490810533 319149904 728545647 964753447 979485595 349063121 489229050 21380124 511766640 888355856 972303268 493429900 951056283 775330927 909627829 773390579 872020135 581086610 645387882 394698989 530936642 195058411 483384891 276766644 343138830 380199001 976036150 923745397 946888468 735651448 990605583 123555523 867321931 544025936 869476221 689340738 724264084 923217085 998706807 422437757 800648684 928043150 974201278 542912186 986306816 137036683 239492202 203791585 425075078 189802037 612620724 765398201 787316654 52444563 148103123 449386711 899438475 173706924 454443444 966073105 998863145 498942375 692969912 327556028 768453841 771733683 865751389 687092640 805803426 484052352 704757838 473443765 598606847 475130097 483601690 589884721 812454138 816134938 991009375 455620761 700068484 663786709 986961602 322493113 698892378 284881352 852947970 408291451 884690311 989434211 993900348 485826531 704248154 638086625 753440952 645936067 686517288 510444062 823739441 156830959 996014930 122776822 706491670 530475325 709078044 427278366 961013207 64508706 268616736 518019451 591981893 764304918 875746043 5520176 632908362 144959761 654552280 298348329 515584898 388403285 831601563 508745399 868053057 809939012 863097073 891342533 960399209 930183395 964703209 182964165 811780224 35942266 380553203 183128358 604415325 54500689 251870525 94137628 644908538 565029676 782249018 910795047 979761580 170490029 909796209 86963493 737799055 885959976 894967586 401314978 485891657 262383122 616071083 781047071 900367946 667238159 897431885 949999168 966083561 709441222 977205454 45451683 922770121 653712468 694980050 393256614 595141032 929786662 938806964 954540409 955322663 651989380 662630121 912466224 990200406 90451259 897853679 824367039 962745312 141476596 195342219 776148086 907822827 947756671 951087835 60452376 423113232 722861785 913873300 677691956 855657903 25686770 533207629 573422284 724625530 35005373 744974030 506996907 920029764 945558877 994919935 582904795 646391122 718469581 888015890 434719779 744750690 984856528 994798592 926369430 930428766 772413841 938674702 636377829 709005381 599102489 926776861 671468901 842873082 299292669 405771989 290350511 882013913 717056552 839839380 598072953 657251223 641249144 970399952 467555687 906927909 817036572 910032014 489421981 899784907 996122002 999134660 281341008 460785487 599370186 950512461 966430432 982815259 101820460 438166431 780016643 936085130 939348427 987340478 541536612 889206613 100845327 692378150 654623668 744503799 325328296 947371336 587285520 650197462 145765595 388073082 263291774 780705994 971092589 984639461 536793026 666522131 915578744 983832153 676129417 970992699 99118047 186308084 781886566 979167854 194816236 317530933 357298113 565731098 400368981 494605510 394624226 883129391 224784747 713616222 781419700 856877571 866787496 951208396 328607620 369145929 642008847 856398672 108740233 464486767 365219223 557636292 31115455 907247106 853047673 999904231 728402662 856459885 446502850 787965939 949959198 950148790 955533594 967590378 651487762 903893722 690611428 967078710 660089601 876979296 262481550 771911471 298399867 520672471 391933354 458427366 966942911 981170400 683957707 903727079 126668383 522252539 739547212 829906065 992059247 994416775 810174096 834722295 520401042 704717850 347820373 717736959 94918986 389336554 586817141 641532137 971839133 981287343 266301225 522131113 377141628 986194589 697484314 940598070 55131012 60849221 520265529 639203432 150831786 337043805 237674772 361555496 725955978 990972985 399417953 401742401 237203593 586153770 982347306 984927675 7153670 673181586 872435268 902527580 108210525 493670849 761478567 796782879 319675771 320655766 460957367 911911820 485268771 951879956 774958507 962909499 234523460 285644707 834108445 995025004 229706812 826943801 864173350 940241011 410698979 619533499 884790315 991274443 947203526 986722751 569646697 618220879 137935026 474872459 325586497 525721089 23177234 42197654 993796164 995130304 495527628 701870668 770216871 788891020 277782449 520727622 961232511 962122828 285079443 743059532 537301594 591093094 131044247 359905983 214427028 581421467 748373370 940979604 786501219 913503598 285146554 946072969 758480967 827999758 358163421 544592500 95533669 992169690 294982544 369645572 617556343 850437095 675008399 808792671 372342944 455014494 966086054 995834993 654221175 883897622 111250315 741731501 3368969 774366666 247132615 704779594 735087928 958921943 174767809 943160805 335257995 757164691 957492436 994663546 818261111 894310116 236559776 738365338 137395726 186112616 629416066 631754425 225505038 692728628 33231231 693046137 246130001 254202081 395072265 519266153 291121353 769905824 784473111 952116913 553944013 945947365 35038069 973959582 855894955 960921656 981038113 983952366 947455857 973675615 355715487 669990803 172896391 314538021 162499244 533170136 820029287 965695256 633238960 903788997 765619070 998798220 594864244 656280379 504463557 777217131 552984274 838803728 439543302 470913058 383640457 528482754 229256408 713005419 49284903 101138594 247280709 345395832 378415230 957323029 715726052 790910777 51183924 548935722 432185070 598390834 187122713 718552084 666107953 972620070 295981680 812158243 993020613 997808672 657423886 810869854 882123377 973396797 937197546 939105758 12117384 774645870 279797330 424772236 760529389 986838560 821590075 909670161 834942808 854040475 552962162 707441783 78704851 299138457 399720563 855229904 32151138 840926056 131431498 172191208 474032878 695489608 177738155 609708861 159707708 414384705 622334133 857318280 919019029 963217100 39958889 445871990 879328852 960775212 426944062 689343520 839807888 846642610 469228792 671744082 876742353 952261333 883355710 955785246 940424044 970171025 211266399 531055984 805653225 883603862 459836559 911549024 777027373 867467874 184581701 962581703 714864335 824503360 353690548 703682032 156549218 908630768 459092997 517935017 315714760 315781605 906988653 930110958 883841311 954440825 202994655 445182867 768536425 939429067 665120537 780642269 43720059 332446655 964211955 965348730 392614708 505441728 441109042 889590471 335673154 680886311 156690544 350179771 204090044 671580579 222779437 929031736 104231257 889280145 771569025 876956548 53313413 624812163 533866308 982521905 869883524 963439206 183397427 613210215 956308032 983569051 346803222 422384602 605659882 805144468 661170245 718717948 540685736 575249237 86496176 519185270 161222673 656086274 674244631 958567412 611087892 618320994 442683093 915411686 915570211 954859134 274704211 902978660 393829875 924204028 843698565 972796668 181724542 652830009 649687049 780279121 970938224 976435096 376875855 706919210 878341839 984158940 839645408 927601728 889126964 910326429 600027150 909719598 145304149 871213751 641039673 923312900 778607161 831160921 603741520 880789491 602276680 991311660 269417504 972940394 618905755 679312979 944646991 988522558 715745882 932504372 306114909 914005874 998847676 999166899 498389251 791436395 826725546 882637631 223930798 638191713 827765078 880013442 157514395 173770170 619115135 844023445 612531181 638719311 844722201 959958513 256715767 578136839 63118364 839705704 289971080 740760211 204479684 403863799 369168995 953952983 134573782 558428426 569435671 613623875 345689275 933393650 663426165 887676472 355240490 607619227 782323922 865809515 61978697 633007884 802570180 884314414 271944018 432107453 56433562 357110852 517367345 646008370 443542964 807976869 729328060 785639577 833993340 858912548 931412036 935619603 532767396 545376712 205910371 276889564 391827726 642182737 789545235 896560431 50136141 312608624 314681067 451827845 758584830 893604030 737932410 738135111 271443843 471084421 519374029 840750357 847814451 982193628 467121110 502300184 2440674 593375844 507910071 765473009 792318832 844397194 996886030 996985094 694885637 944669847 343922839 788745591 608480983 774481538 185069773 348834166 64647407 938092862 793685253 833579441 704127349 786084406 193151034 373582727 554479976 665354269 355747708 764334988 719458104 914633590 810838503 943916105 634055001 696909830 9973451 169673963 442804341 478179406 569900313 930849106 281274126 442195514 59724134 598668261 900705420 982266128 138125298 506742251 215088616 531723708 835808107 930791635 411550397 736607507 602351946 842547772 558904422 921215306 945563829 989923356 617893617 769623289 336143027 507340171 699131638 922904898 92447356 610857797 427044925 928765665 968016703 992682834 149454493 378448559 94078353 577872059 71039540 748520152 717394552 755626456 52990178 156529495 536177807 806660865 801777375 818396635 952453882 960512902 636537703 639975682 708035309 989854475 643742861 809977802 725086187 926885759 364930160 649093053 803808368 979367870 497516330 965386985 549990043 675521284 603821902 743514283 579882441 897346332 90509830 996198655 800569862 864272013 826987717 868846228 364308076 963844087 433057910 621432097 881813927 966495920 565591674 592168784 507150639 759575481 386403933 563607594 821377005 858858030 157102936 717101620 776270954 860474858 401174434 829290727 846216282 919969360 727697805 756271146 979798996 993410037 487815937 976175721 209095799 517259512 65400671 553885484 282865025 706168193 918443002 979684529 867287841 996261529 903975937 964723926 975216392 994368609 57038597 395800667 634111678 994565273 796273354 967432132 450983138 707345750 473631907 971410206 485652563 620335002 731176520 876626812 861734671 870931260 237833891 277616665 743046217 787616391 805221406 909616307 213749813 679498304 42893937 347277951 106969079 830074603 11079065 481488531 188715219 932319624 202217069 557674095 646153010 825809598 186805935 364805462 943275177 957888844 68114450 714061081 935567003 936180426 24221877 167153463 344446284 854992975 328713695 771753127 444306419 931034150 950416932 974747142 96398659 529755339 232246139 958425229 257808693 896561834 344022187 430401418 400151001 424679929 257781283 680767607 676118040 955636752 806356702 884333717 305691943 797288352 147870862 777534025 576587661 803534695 983485469 996253389 518464986 583560485 322304169 747479851 434047088 618704817 721654580 792242315 900317548 904541633 700664152 812334949 335693218 524181227 755222855 858523852 409763645 530124489 995654296 999170785 825478840 950487884 921362942 924546694 447795079 788203520 605127255 839847841 853444775 946100544 839507719 892615680 157929382 531396668 820734658 879824001 917380845 938095673 540143555 750260388 145242286 482643624 428327249 590516485 806276293 895520673 953446938 993362733 41933444 296447028 120044992 768541722 357556154 670743930 836650049 970560374 390851468 523983322 587913121 809441144 97416327 338178295 510200959 754877938 389906818 785188203 640789827 847012912 857347388 968624135 706489719 974261419 816524057 966548653 306731372 495884024 577697182 734028710 532094377 636834566 579023884 646726659 172687986 680909743 797037734 964150104 298966428 355895517 434857296 624153049 800755536 961554636 324400711 988388198 875786412 916666881 789515536 937316164 691596207 948279661 796865236 982452585 44833747 490690238 219733064 641988371 888675767 969929910 661400776 735638109 839796101 926784266 895217298 911892037 331962809 809781681 783849995 868878286 999460151 999571580 911354251 948016182 972411178 988542707 703566016 712687980 982924537 995595004 415866854 678070085 334958898 407563793 583629322 924364538 691835827 955121591 51747675 518285456 164020734 256282441 109779361 376678088 891421841 968558332 16747424 113373239 266813355 960221491 200355580 237161398 737514462 755994402 503294984 640437412 493642329 919642908 123504839 687873927 641150014 724443958 209400457 815939243 758516479 929197695 182918668 943135640 393279749 730565965 261269317 467357166 781487719 794176174 621128816 718342851 391219414 642099426 273831227 908754753 266017520 696085497 932724414 976386997 852038711 874776570 345772829 544490244 21401596 93495732 2003448 19139870 797611671 863156698 888708572 996215536 980781070 997700526 792163269 825348130 525558469 698750133 401415380 764927472 732208767 958922063 485312695 743278824 583693435 919545535 375114502 937650843 665913491 815825239 410577854 648569553 865761908 910180986 297683964 476851890 994980318 997217126 602739998 839707495 640173855 705508905 64563122 940763282 259258393 402900103 346984537 628422856 203113825 299448965 10799893 412094890 271662218 808864734 865119888 954040706 485068515 491232612 511728889 533270605 811293336 963825711 967222722 993970355 249882703 436433433 43791639 757456831 324618207 543867364 751580329 962542501 117013246 207299400 482028493 769945063 763525874 964321801 663345267 961145553 84715766 725656340 409641050 905707148 737942851 919468040 611164662 707583215 147095003 208274270 379792543 383948847 875138329 994021160 819830307 883427969 410898755 597001724 639873368 885856364 429433203 588499890 543779926 999452836 476391676 590230669 149133383 571272127 767508391 857822631 634230780 636298125 36299458 295361291 515992064 742181488 609134652 640816996 960103760 967061460 332724819 579790275 739523296 962946258 805369552 846697851 70761387 809339458 861967726 903500423 623689351 635761198 988860545 991674957 486582145 600089156 356265843 709593325 760007522 785108618 182861391 552322108 5889247 564960763 6165921 889409261 430696928 635517183 514690252 756452578 608591162 654574229 544494434 888624916 470487232 707981131 197390178 347805409 49117401 340364301 889375865 937207892 638799115 842219750 850482575 998281163 874522891 961944798 42399518 617467086 937697512 989050240 811242078 964747629 746341199 933559775 150428321 423339211 899893070 947718488 768704047 793836503 99012456 845714739 893224627 895989101 730420347 889494052 451674047 559227126 408885816 889274245 127883888 338483030 195819151 428482910 143068050 633699477 401311842 607000001 620996292 684000696 600927746 867604738 106122569 998922727 642743680 852740745 179743026 766347970 217892879 772955525 614794019 771009528 51246005 346407014 312227196 360540128 173728463 841319495 981262800 991204146 368861070 709439531 147729775 372251224 890319562 901427726 326921167 950314149 873640933 971714724 462291201 916799779 435455339 996550761 155725953 561491101 919992966 929253924 681045293 995586092 511347785 533840629 795277487 921173028 246705740 507768410 649623865 657684543 534692466 709285537 916087530 980902002 715275209 750801144 288168660 745250678 495531822 617192056 426199169 712764222 91614126 764676734 495044698 533186075 596777424 812106183 912081957 972242383 861779165 973310667 185285184 315020676 111437591 937683494 909799783 995131938 977344876 983625322 907780119 915702170 816098263 907203209 905738413 991810963 59306346 536301901 117638614 884611642 159229656 632392403 998073624 998806469 951444324 975047065 769618346 869027459 731508203 979674456 208903932 447658103 144213127 882423813 105327228 876987767 315418964 811773199 97739187 866044603 678195455 916244924 403964119 809536668 740880144 779502618 528917942 581216765 429357587 436848780 994215602 995759412 952395518 998848054 140306426 404259658 369446379 648307710 9000819 387508299 176048371 362140826 108430986 586394064 335852313 354997242 422368790 577710628 782131300 834350333 129021411 810159022 901918315 961141586 567303633 827019244 40986511 783934494 235452588 315856284 435649589 724464872 264688491 566858695 485564704 691044116 881693458 897966339 966228083 989031215 343646539 695247162 988955637 993106239 591562415 828406389 745015398 894376660 532455752 847636038 656380893 800866574 299170261 547510631 171195302 346972408 780639021 893848952 928076583 943867400 539325139 929109727 566610484 573157359 498441393 915583235 82229881 359073474 169236963 915540562 750727467 849958269 329909001 923179635 477389520 537742001 946343852 985518215 972113166 978691539 373681688 418361556 704120365 963548211 535764073 541943299 674442520 726277950 193102376 237407634 32091283 396156572 166378989 421536427 382749510 796954231 553224604 734495405 564764258 837445252 413038121 419283969 236177051 286244569 379360976 423472842 796503959 972321178 137418961 421557644 67278722 797982361 734256963 827353701 753399991 991358988 810826938 944390939 288310901 488101073 962014204 970309061 551302552 768971148 941050880 957245244 181332950 323422906 914249294 926769364 209817330 662164854 837937722 899845822 83623869 976683039 707943433 948076102 92346567 788023762 550304267 557888775 75172101 999093207 115003321 952243393 730831586 955956892 248118755 911114776 456139185 611097130 250198788 921921215 709581876 822209754 80648627 606848337 222877559 302394955 315550948 538250081 189235101 767309641 487952449 904831676 658705806 983015188 496419735 910305313 729141301 820259485 250030178 698127732 544177730 862361305 75793548 654550034 800559201 877591128 140854188 212557457 53003106 307752911 907239932 982265226 408816399 595026116 858472890 922991683 225319854 862710946 3262767 454724914 533701564 574280350 888932285 958196364 80205034 599703582 413954924 779386179 163745033 857532963 303081829 885367940 213357576 444085878 670267014 729771094 905695324 921706135 294145042 694768306 85869652 184120400 596651520 974639477 953733759 976477637 121480277 846302060 986151270 989468177 820590994 829641832 422724632 480775122 936054653 979412979 289240759 833467122 330559880 643972242 218897801 745657193 196092743 728856577 808762323 953103990 301276639 457018823 437225608 439914369 934547739 999365475 972588146 973005984 771705369 853111858 999481696 999613115 288180396 744934328 777728368 931459281 509686443 635445767 559030152 771140071 488417959 878969107 17905594 223204404 488404133 907290917 390086973 737923218 312676565 618099153 208239208 880253717 864244432 939000103 550329332 905437863 427988997 728097592 951268378 993184027 545793087 916818821 593853544 753999777 82232810 494217287 184722139 978786271 596226499 830186348 6927891 316999653 276214791 767399242 776700520 839467333 899573525 934516508 368807706 578530128 916881404 965774337 573592016 861244959 81919484 553406669 586657931 877504244 862236669 921860210 632707831 674934853 228528646 669661316 397293114 402571684 960434358 961164848 899160912 940667009 645502196 953515105 31885729 943132796 325099711 643672995 181411966 773962809 470416463 537742641 390003965 599295099 734092138 800120253 97343403 642110892 872396320 923874317 370858959 600237626 10533935 216406897 836531906 868058947 590481233 678105669 577827493 638726183 95946197 229175884 60937845 141790741 893281791 996073441 458248787 762653511 740935292 756517368 656398534 728096619 964419418 965992066 146087973 670936979 657561943 760603772 419512408 731867317 656606072 783611394 469004369 898571898 682359490 753398090 471116644 493132921 19820611 482672610 367209008 447715070 318611489 493111257 538656117 590872834 371481525 737808971 652650125 922103456 679999850 768937610 484493986 981740546 956423175 974903639 695620532 882554386 298772220 876496947 478647554 581126761 72888857 696574782 652055451 877262198 122109058 367545860 859498480 946998286 497838422 613349293 286931301 507272265 601034311 933013906 687211952 892905544 474519083 559008456 868350373 961757766 741743912 749648384 573991986 791076225 938215270 956446537 394943088 398361036 247827554 861615623 429283598 701409956 745206578 876241711 758860034 823207340 462931801 798590095 725713746 737413485 955077212 992698597 581332347 700258557 674609719 839301758 451349491 564652853 402676874 895319155 470636457 826748518 807473891 929197121 918952342 975951475 329285855 393139457 89412947 469507357 119478065 324463912 78875878 762695985 74235823 202513875 505146808 617801387 537604324 940608799 371751808 428235615 657658245 947542263 346447274 966509676 729903027 994668895 537449271 797581001 36797836 206818874 272801070 898029339 521685785 541427138 683049422 706797815 593408572 984774402 226351444 820993071 348381111 644703317 869688448 884859045 816265268 910765720 901191490 931844314 257657956 877825594 967651135 999272147 701964506 887063578 654006645 818073253 948067640 981698373 475691765 589305651 841944990 957388000 393169344 428289494 635562607 804211680 817223399 894587396 643679066 996256504 358207771 406279948 547528639 708398944 78461622 966486962 697821427 886012354 632573592 635432548 202027128 783579452 503207291 551051903 32060774 95068507 139716911 158432913 535256894 683543872 283785424 857954471 570475158 825947393 974639868 989082430 320727238 425836419 451570208 764383111 202989430 291544226 447730784 788662071 319783518 475999630 105339887 773939744 198608070 831498973 394881871 805133877 190293974 711190518 681483810 856323645 922754282 945903222 821901933 944373549 257747666 596439117 549489254 892414385 708939342 947043268 843911779 961744086 866124112 911350942 116490301 512094428 884227313 936258915 113087632 150335246 158270828 842961373 271882399 868434775 612564702 995084022 178755130 619202127 910530534 996409008 6802546 126364633 939909286 983294838 894595748 952117886 930303375 964310670 331719853 800982459 450383129 601378464 681641325 811480557 576566894 601150011 28825953 295916818 156977810 599527047 62913061 481068885 114288961 883651078 55013461 316002819 104133112 604895390 741262204 898544818 490033057 985019927 18745833 159724762 768196353 926712803 876829599 890380688 983215376 990538057 339438380 347186535 613824881 915523231 851958287 951988760 7109595 608868367 926206952 952813167 462075722 686253578 450855796 536177976 375862192 841747715 472960636 852394165 545965370 694302983 33756834 465995913 736473991 871548125 601642052 706820514 162534680 251670508 382195863 822713537 594159837 996579506 345053313 935054417 196589229 684776354 409677626 441860261 667016462 772069374 387336138 910870829 16278085 641421641 657061572 968986444 438204101 631341473 547471785 691072462 667941811 710063487 31306816 336314537 769908520 780398882 357126159 361849118 5584048 921219700 481655831 836976358 428263747 896432748 250291611 420746494 649844445 754826826 825055738 970573787 691568095 961423401 772216566 938091992 941582235 955822823 213643878 406101649 549794528 551679883 516319230 604119594 628411288 793051846 350685450 984925886 477020916 578791509 987602583 993864579 776075928 969855671 279835017 466626378 58604458 907659478 206676239 221085626 355045819 703224625 949008044 981042976 439753717 451364914 788374416 933688227 60829482 946543893 144835329 346680522 896038188 920521624 185184786 981124982 308843655 665562383 921973387 968058165 109612384 248392525 177378849 271244761 47455752 621127795 914607541 944061937 349184504 830900206 169212885 343259786 450900717 806627818 692339675 806996031 403451487 742417053 464749850 630804734 376677939 480132447 901171853 954037158 525855757 967155936 855539659 885067338 134424393 510373556 335996510 852599004 964837841 981553792 687834912 856949816 545293337 554175414 192845380 968792550 622818720 987130403 313698259 644954001 466591397 885685081 127331806 869623438 692047798 819815155 839412191 918841279 267484969 512683126 359675277 396037158 861882173 998427056 412776060 522376236 95148911 833038991 849405785 982926600 601610135 929305827 842869403 900844814 539915018 562225218 203304463 360718457 244436846 703928200 679726865 724067000 121911414 976093233 170537546 661574054 909741715 928231372 445752434 900592173 159180340 188184419 82304729 808544146 532315961 856992867 588637084 612014483 961469649 989913372 885079946 907728426 754525973 944279432 694535686 995065291 566786235 856480726 592252009 924164134 10131843 869792092 968682173 977435451 591641263 837578389 492217389 670410627 433058115 484382687 153651878 833712567 82260893 775941898 648873209 920729243 986503356 995015394 817350661 850912830 970945722 992208887 493306947 924198793 528596108 662079657 383370782 977909723 601882592 984976176 559005000 570400921 335096640 583841012 103328160 606196594 826178 794004506 763553479 822234073 908593174 992137085 636840088 948274804 350794597 483640784 10281087 273339255 576193793 724023947 394925944 450573875 56560307 337467722 408018802 533478656 125246440 161693544 857472218 970192129 157361742 772921169 505676402 752061827 526054739 605729390 498358396 806152353 371382655 410351083 118983551 730874910 138849245 998607982 963361545 973969326 351508868 516330840 85425003 135485220 611286972 900941136 492099563 655783657 545487707 642336548 854865222 941443523 273647857 883638957 251771702 700760937 255487227 583429687 196963073 282715224 481811800 566165719 816853124 900409019 998314297 998612298 423745863 794284864 980636450 999785185 56686696 867111978 828139451 839546939 83432675 284800415 304340807 352176151 662748915 679621488 852333755 966395575 872728420 883566225 398764646 904303272 41134604 491094468 231164287 922156343 71627531 492365324 748810469 805598228 446680104 592517659 622011385 626480853 611858236 860943588 380704064 958249928 548328251 750947368 868038162 889230226 296091463 340346026 724499515 769705498 835228 203646822 513415062 531491127 911603100 959763635 313012347 385602386 129474036 249598858 237087065 793700718 768583297 851055036 267808734 790470958 861973373 891384312 832848840 994271973 105321589 573179559 455394410 721573683 722953130 793265570 578351019 879702317 394678347 447389941 888659974 917159295 259729014 679469457 684522733 712590283 544048827 724530843 995077232 995522534 752534161 797489507 830730860 908978898 51105806 885207914 716631977 805385774 629245804 686316984 170394106 913091974 126590670 916388215 549030073 858000575 727480436 732878538 735072089 758484535 434369194 479032233 323250113 725320704 684082665 969100094 617589889 877521862 448703381 463219041 909023111 966129053 164633201 299081324 800064176 978512219 68260615 990923131 176535603 921758225 313433231 638403365 319993495 723019367 864212612 925863555 630953514 795408116 899235818 954650995 156465491 332905660 776739344 889650138 100659163 655657679 907731911 969156442 191826782 527027434 125254520 387728665 356889353 992534418 128457589 615525990 768163004 977073100 52578252 891481371 494578866 824754954 514034898 653577755 518584364 626842973 766523955 971391366 333261533 716944437 741288675 930842911 266444874 864810336 831960976 867139666 321273841 421004033 127702635 643749534 296416366 417508448 895657637 989205431 242253863 522490604 460000727 590086962 853944137 883649531 1188467 276615083 48505714 863375093 908830529 976311777 828279093 907870931 929794619 945678638 11557080 834079256 921825931 937086032 668887235 827136815 660835024 928315892 386910587 746109977 79490177 371217955 326468829 717482237 194995214 586909955 217245760 372843272 364155756 416012105 890510424 940728699 608131053 706437454 263129995 685001896 990483667 996396103 18940518 321858228 365088425 866802380 701179499 893708947 374454439 440394751 351613205 785157223 371519171 623959681 885925033 991881420 390018102 672349735 997181297 997896084 918062766 969325036 417409023 686011454 868774571 919295284 430231499 563997904 138316042 550686810 350731847 356163480 633766661 947454870 367072624 466689547 603328237 970806746 358004627 362320433 473000263 845977700 558553452 773010735 821632895 973912620 89077864 341181820 961440234 996103780 989267523 995949461 963192147 980517697 849080783 886659085 574187943 780924781 436590346 702378901 541257865 558171567 995043430 999692263 905631011 939857323 123998156 773202428 569134243 883376303 705297901 720124703 957863741 983105719 936935666 951157104 536979397 880842207 5900615 659223877 892635701 898048988 444088137 537140757 860658094 899648822 774940797 925955149 290879958 963371364 528460115 719926847 605862777 922309236 693778506 892817935 442903242 834906612 592770437 770954684 720758899 810505128 166867445 824878299 159031399 888786195 985182048 993054367 602079103 979384345 630582661 744090761 712760081 714133673 325699641 877141743 373757968 440491592 860708727 972501187 188623993 812364612 509802675 672806507 501589010 755040539 222468003 518732444 640243607 879318628 426897388 470319353 626473982 793663580 488010845 658387709 963144117 971845494 760743436 957249118 649778287 753643006 266652955 478755916 339484889 727406690 815066976 944406402 73045389 524390893 612715532 614482764 404400599 682754433 198085230 484386070 847422463 958167837 78101517 89947607 213110157 360265110 484692168 860071798 549543182 615066599 41551688 398087730 852334400 977545687 812014240 900150474 588301013 787677693 374894594 846753722 15802652 871957829 167326628 288047040 715543818 721962283 485936744 781917357 261075582 609009211 755890080 822153251 219135657 592062088 567564709 772440435 394538920 544392217 420201291 590622964 636246051 715956224 565656217 958566146 299985202 379543815 526428980 883941042 18090276 582454431 781439148 959756895 655484659 784929575 382958707 850117160 94868998 898876690 794475348 894189158 8552323 849142635 16983145 491359411 884406385 980853501 98493849 996440681 526870448 748218725 358079161 991678175 384654827 756693920 420658780 588456354 678444840 913814083 916141412 973152187 561731903 833100207 293096001 465205337 210950369 578634356 706816803 844096078 383424004 417830496 803780256 828646521 460895797 810148515 658992206 876959966 723215975 762917315 243410541 551917929 318332001 710864990 149296821 291204064 717640737 724628740 964306315 971467448 426843362 439458575 196940878 245498521 839642484 852726493 781266744 837089136 516061989 915339451 619570447 789063359 955295989 987333515 533823761 559646507 411401332 855798969 709277375 982512937 339585370 614005861 105165881 236393673 623348480 914078001 199995515 373914909 43043660 715560435 190693493 398649675 198562861 853794882 1776517 792758736 753639535 878221193 113186382 734445376 21524654 994206370 460329189 964901441 790431259 797025487 869525901 934771427 567891511 860883284 65101060 569672859 208089048 572323973 576763951 923208552 911104359 958226744 983742480 997257533 8901617 927382630 9184543 507267092 305185256 893684387 614426668 819217996 455917402 529896616 486020655 936393680 713664291 987534201 756872936 767224252 911206156 946337849 179622456 505654678 171682217 418995054 471864352 636620620 55930851 580340252 430618507 603680872 615498477 630230696 367404919 595175901 662067111 682568269 366364607 852352055 852628480 868466846 48769090 151466021 215692715 599606909 113464888 993069442 915063259 965780224 637522501 709092384 171424728 602667790 943465155 997148687 844146647 858649323 700847873 808189818 84228845 760893772 808280250 810980053 756246555 917468896 477449654 478704002 824827592 876539492 526902058 816752300 320190474 918315786 3113125 723388457 346056083 985790436 53422925 548603205 435591686 477788328 103145469 675864487 588724585 961961209 364468190 647171154 143540864 272813173 809557667 854106395 211863376 677569619 163838990 669889677 981064238 986506388 584848829 896814947 434550085 808292735 166784328 207495297 581015258 929019417 808074840 879696354 737724745 973397480 856956274 995620478 71652423 498388966 675539169 776006150 104713780 945405933 539037154 856033382 740262734 866941575 943928504 977655445 705885519 849330802 280780956 606459351 183711009 995168949 687256714 951499051 636263250 964613331 270773870 373898344 100841492 625541946 14476470 202525314 60415259 150355222 117190378 368110819 751358212 799124390 766480217 974960112 81737552 842057378 680190816 843207570 320437336 370473485 64763189 917130066 741504140 772661260 272009273 598322307 162425282 953305271 221441791 329936484 457232747 657258035 66366169 301131805 611029809 889260211 55764368 910486591 113170744 376595375 340105108 889333580 584820261 881478645 739794863 845492378 465807083 830022805 547983889 814661790 675721587 756056509 67648966 935961822 866809113 871419176 679095068 766286968 142177809 738951534 903011674 997881417 883923248 975288991 962498730 980627443 319871458 478940068 308164149 747892257 819487101 847174325 664619161 932247573 577298137 935417459 61323399 555224668 198378545 599627720 738580132 891342493 950662711 994275824 994568329 997736230 147782204 459257435 716393937 722235894 497943178 516503249 488108689 494560435 516367342 690147182 922944041 982407705 293477362 332871055 78706025 811937556 350936103 574063739 680606512 833972146 510342616 680133561 795334513 937823417 892255117 993674068 829737398 939673748 309092743 708752563 862145863 971859943 954921355 998406511 436134389 485312589 721469884 788310893 308130258 512750636 421458492 795441757 197369562 212574889 326845559 795479625 447944191 477096363 537312737 544029132 231668151 259889886 748283713 755063996 876635172 922674662 100694632 558394480 987701316 988988940 94211469 712397872 308877008 312440769 400430554 544041808 591986189 826699740 117748711 648177588 621244516 648456023 443816830 894377128 567256615 574081768 506133373 645456899 328311590 944956698 70621185 723915569 568546320 635040716 803959769 956226161 501690796 919924942 710328873 836584933 231172234 367039441 785720098 977063784 757506372 846350272 593712140 975955049 141587680 834616265 118216637 834300027 148581631 224215466 319932401 688201085 179130546 975158647 589803055 654705259 509850354 898521115 411822099 843525136 798864044 826173778 992974319 994975271 386980940 704037003 95083736 287873547 846094077 932042466 523335545 735401643 793425077 817494528 849067877 849342966 270832088 810491910 655966755 747946018 15069779 807441751 308841635 896353406 191527256 460130363 642133098 926142040 824626248 838536585 88031815 513666870 744674688 768557108 844254622 974592461 893110138 978397218 495364634 858816033 5426546 458938724 594962958 841133298 277148625 584952687 668838841 809276429 215214975 385264399 838608794 946691467 826523350 938204307 397094706 428967005 482769557 630916341 79306582 948078924 569440316 851199702 715559595 875268970 131512287 985672677 561989154 808111695 748058215 797463253 313123876 799953852 658270436 732146145 98646565 619469149 934695039 957959694 44585442 858147156 552640756 639267166 435327577 477725239 31279379 747084671 723397725 881480419 65771486 592093847 116437614 676668887 907538788 966859916 813170384 817660749 843214119 896887678 876026959 970214093 665292372 709890315 936367380 970519070 436493302 560839201 881614041 927491548 456023424 638625343 188316442 280879877 77655701 844554035 820068692 907152136 491159521 876446012 897363053 940703251 174306611 579321824 985910925 986569404 985088733 986744485 622673303 649371201 270993878 916262119 205201769 957048582 156379207 935429859 799608676 863917656 115683529 911702629 92939757 917627013 839733452 900479044 724855009 968037670 626260153 799235198 372071676 694462821 866230107 953731707 419088998 577517298 675649841 816754671 985862338 995511945 427326236 845841249 826396804 989744019 293721846 677174645 104293148 922194811 92489843 806381362 655572233 742993763 760952581 915156485 913773955 937309586 125022891 918177753 924266124 965849452 564860561 626772190 587341774 946489797 852442200 967949454 849598133 985217687 323953668 977952908 210362111 904514576 703962433 934724757 518247369 872586458 943271450 981567507 919064607 925961573 757990420 783109663 101823390 555670236 226334701 561748603 238487006 906959684 508928932 682867986 152245074 461915266 972343777 975172117 93138184 489508137 414474558 832522044 334293911 365668171 694601645 909603238 208784729 981883774 651567699 688593421 452642304 891749074 592022969 956298188 522081610 559644091 666891059 998932151 705434298 752813251 978044900 991579745 522613825 622035459 239504751 393895210 233911723 356592295 854801109 878009449 768725794 816137482 284657650 383561224 963809701 997348770 796278680 860444952 804860088 851484524 430433621 880445460 95258347 489107827 11725527 633262440 354274527 405161665 21271089 716728493 526754621 881243858 391612244 886692436 184587250 525488580 850083272 869685945 540530886 603504582 672990799 986741012 798092286 983811071 979706073 981193838 702607991 795970484 292702984 845448519 560482122 663254469 862443861 905282613 184409999 712085563 361906341 477114355 642719959 986756649 267894835 735782001 807158949 904107148 365224359 693739396 231003111 737449303 893868888 997792700 408213766 954000933 150052807 906021971 767869023 932510851 808145437 957934169 40109776 808414290 3882913 995357179 167377624 750576453 332592032 627151294 165828507 782538231 580001850 856199950 882191342 925343010 319250600 981135057 21545156 306932920 476016056 522049767 395771409 502744681 9395312 472194416 642142032 761554545 344070731 874724993 674639244 708373266 103660115 880991395 239866355 267487649 518908245 977216893 254554962 712106288 137670321 858220664 528156971 814767224 372925038 472476373 897623448 903096437 885354264 989267374 787515182 954484718 50071114 235866853 214554841 812912715 46878152 284733809 53306798 144916057 914577362 940768554 280658162 444784603 961648587 993566338 295769359 945558359 417785257 755409688 859431330 906938142 712839452 750848474 999898430 999919946 300946628 473810933 557028111 708834392 891483787 953934963 662390800 876021695 140603340 165202885 417235008 482257546 919929724 937152939 627319591 823356968 434174628 529128791 467351390 876071511 241581541 600060591 530651980 766132154 857046991 862670338 995624780 999588521 372308155 436727772 165348360 732759313 752430612 800261803 999477118 999734456 627507864 873440278 5582493 859421788 193359237 439087467 756151645 828723180 334955541 566757172 810297873 901857154 289746851 764069912 412497703 519498134 636086227 931307865 49158858 285927002 476015307 551205926 67536266 726507443 822055453 931113162 494823633 941460746 865824162 884675626 392059785 399261878 535354166 835347900 577246619 958398756 212904065 310463582 958395891 976894094 455800750 734005969 499108745 528603378 718381026 884425212 860416068 906264547 899258876 913683288 735853759 943300610 567835473 985635528 693592338 845293385 674363487 734580200 298630216 503715203 677377099 921126182 164578390 448846913 169590856 680573317 659057160 749127079 554478848 983764683 939569707 966935365 780982201 973309572 852172724 896048277 511086389 959948247 787117408 915312472 302596024 970223621 902480339 966198081 661235645 774772270 699780328 950879581 996996666 997479192 929484696 958256705 181174792 417380684 948206843 964990976 306815113 456182379 282570226 971727601 543600622 963211530 757091839 773236921 407590336 969469502 960961250 983631381 343124660 763408770 317327456 599451480 567685716 667765349 143072575 190531017 507660010 995325151 518316576 728124315 331611474 931349936 186648613 708515629 778543052 813140766 299623150 336741102 975193459 992596761 19051184 805459823 549521619 638273721 575805245 998073099 774588544 880132184 560429373 773913070 791922213 832496127 594909575 822419939 434865179 925291523 259016129 692774554 262914335 899121105 213756322 702813127 360151676 981199657 629722564 856389335 169151222 967611770 665051858 691344717 130533564 160620617 629564952 662190915 538333249 992521637 691408120 834025578 416834092 515851676 826331553 902462082 48471625 582417718 446206948 887716734 200203613 792885669 345001515 464837400 231946072 477590737 415610291 512306422 564211963 886488201 509275236 843297988 575196218 640669567 788438356 993228362 850766501 949149003 385041726 967143832 808980047 877957306 152191532 305358614 898524520 968074957 22599793 754551312 437993783 521236950 791319685 919382318 445940821 659827399 456395708 830657582 955808021 998383447 744551866 916759588 8476755 109301605 126190453 896855332 414949527 454033393 99063013 492135677 354048098 686941759 14143186 854734189 4293976 112963880 881152480 938215515 806987831 837900629 541647538 815393366 303470240 424584992 607343295 718074185 906455506 965667642 494005768 747717317 311805620 808173126 872260278 966389189 116320889 800506863 48850046 83084911 757964517 787785938 888043165 900315616 157484223 975577489 486667394 571878215 640860661 781853772 527937991 905451220 684794011 836926682 655978507 672961579 580341083 845560047 652563707 762504958 72351073 420856998 290164902 485972363 603052953 618230400 1940419 350269013 429375094 774778579 551379985 794728305 157561125 872199061 70548361 623361299 951972455 976552686 67949944 254583973 536754839 547010909 195637711 237587168 721284977 938437180 770949156 899401612 107820156 719248174 700928473 931362210 253953690 762806832 676118827 978811999 336045344 736265496 115267332 134311389 882817020 901875399 283394765 909471587 55995173 254877898 388966570 643476453 977811474 990800612 903573824 960905809 91575675 770771042 56627413 297997228 387649827 626922069 110828771 435343413 221646216 357350190 917926173 964138289 211194119 596428978 138397127 394761719 47444747 565740781 856669250 900967178 448592879 463408135 551316420 780412659 976559238 987160784 458380224 861562414 746336175 812913457 864574380 920834704 788766405 982754890 92611297 996631572 994160638 999251021 106346887 256409555 50627637 721362903 445296673 707007873 835288216 859389589 874358571 874896562 145156170 812102835 217273560 235499295 125324609 150807289 218586867 855114050 34784873 433900054 714459493 849420238 517086112 823476849 141318332 520386798 693521971 785023196 27945563 362540995 481109788 869333294 234288362 705286621 862654062 973059067 269515048 423733326 15631076 427066440 170840233 927519146 213495043 726204047 260594735 965930255 895187210 908912767 209222737 325189197 98883004 934155271 748837355 990280506 551428511 562286572 8777252 801966681 872161228 905084443 924673649 950070087 131292818 720362126 892274441 966978570 414675018 752785152 439615359 705467192 976848055 985614056 891224158 973901216 108100759 894574245 859875776 919216543 533816255 706152090 457485768 925533601 590274146 636098251 784216251 797550328 196629920 317542502 309704492 686255895 887971345 931984994 338727254 999913968 223591556 842276299 230025580 833227199 963642079 984436659 846053325 954585171 397752965 896230153 487235712 916647383 340806921 482803985 225165025 363059188 70835612 102522231 610209714 975681889 107302299 803841437 542942951 877201647 560196797 756173399 614366389 758659166 614374584 687026548 336705575 933410146 715684994 926453556 616548339 652861330 223515305 948602880 220292515 949085182 470439 834907218 439957424 539321792 884694733 912633532 770871255 962894348 854448533 984967703 950404682 965097092 843869949 903468560 806778952 939117638 224311239 815512201 539919760 807660914 335652364 587351774 664538878 956157157 444058556 844968914 367728804 889271362 593309384 927764599 168233617 701624451 627983999 897543005 720416567 748313787 928439386 986948771 439203722 552999990 360930681 397773145 630718988 848818395 484599968 997084455 61235421 386593668 560574928 962774263 237659520 421619479 489468902 987901914 964392724 990793661 828341481 980688076 369733433 463127885 636035552 727300124 52288754 136698971 392803002 797995817 683168085 898469818 877217525 883310919 808218902 944479558 971576694 992448320 64337165 506813419 789334270 852914553 800124925 884207297 693121001 981390322 118140457 872371472 747203169 949172578 873169133 874103773 219434935 595851757 779928154 864947860 887952492 934717838 211527699 788737999 508104106 559762887 297523599 800110679 556259613 731477341 455083436 587340371 668185191 742519100 748883381 787358412 815889415 945687380 724632440 845122096 686076470 879072670 728201922 865782621 331058858 370795370 739959421 778365114 279169310 564824654 770082338 934092398 388109403 807390511 258059735 742874518 356028967 470651243 166682199 674448289 410320137 994127168 538391568 618213601 978002827 988458905 113510699 643695350 674339435 808071924 757261719 895174610 386686564 982762781 23366929 522488201 313526684 470034696 30189319 970984611 16285856 906235623 790379734 944134568 178957180 299558240 67368768 648081694 542608331 839464051 167921897 635945604 332744846 533237839 520101814 999724316 905217459 946384644 912549772 921681910 504105217 605314410 762957104 906936355 928262818 984772240 767099973 821592440 694313481 907540314 294639279 768377002 498270211 552218281 746952919 980064477 182611998 424443054 226761605 831521529 157659917 481202854 141994329 190067237 676715113 942147866 414639336 528268177 672236859 998378942 915135048 973966003 523225101 759999028 33417411 681628577 382850441 739157503 476080638 744822232 601844080 622439307 711204436 749899881 281052824 996353638 947739534 985250258 587401658 872889943 681008528 818862165 876683043 897042080 675052877 882751806 719705560 766042916 703146999 825613173 270987739 865688977 543310489 736772089 922392056 967536931 752390564 794713792 840479876 997058506 896638573 950448345 361626221 751007138 31148469 835043435 707998427 898623848 411525619 991355854 708670873 979832895 582378038 877587115 962066707 985185637 234007079 459410177 394984636 932995960 109391308 305908962 997503432 999743374 600169734 941462281 819438347 846602349 335329638 376283192 395455939 460706680 24687253 982665596 425308855 606708966 732239103 867251129 886288147 947997615 35797320 144182582 538351701 708782738 606620982 878645057 733516931 765966911 503632434 834972347 976836384 997980703 285248286 482255188 68101582 72380228 687250245 900724844 125367834 870003908 655163526 850554580 643147748 976792843 953984345 974226924 480156082 879661163 816242414 967679394 663031137 828389255 245601552 285678747 194804500 752177868 410627919 743306125 268200621 653078027 479099318 856024284 457315771 576197380 967148398 976564512 511047686 612296664 582519224 943887567 266834529 761989620 888353190 958930185 306664249 522020086 795900831 956728796 712150710 860704381 896379608 968346248 998812885 999711604 116173077 754722370 253386974 657989052 842270301 989842962 785021317 802465599 854531438 877621237 665002526 966995272 203674420 532038853 731732799 879538825 726141211 755628328 326531758 593774095 818338197 848404425 758198802 929249111 255908849 507789886 462612006 619268246 218976482 344797694 533559381 666798943 252026835 423489144 834661476 986058639 319189832 570272793 8633343 174518196 837072939 926468675 746522220 747576117 539373249 785711609 772336921 922640342 437443601 662534510 686621782 813763250 34957477 207806556 57780935 433959028 497346224 601276658 566288818 668760273 327805177 700195587 260139287 574087900 47071861 62593930 928688722 929148556 507557458 612763040 27568887 356394325 220889477 540043173 115645258 157097230 576861548 600246640 491644597 597731120 753862378 895325907 46256391 69985664 980003167 980628789 473313981 797493989 500466752 565163923 445112024 805978450 948821359 982374725 995914107 999536118 138635193 714567395 942254766 993993175 179488444 928317852 552822590 779582390 196102728 819145330 593445392 645359306 98577716 758873124 666909156 978875796 868397034 944109305 6385202 379459131 913694150 971780040 579117798 842215599 315696694 806629846 307805539 754237885 669501348 751435080 384140985 843239324 326146862 486017023 349385553 937078665 301659383 835169338 181440825 184794198 280193153 907945843 681367392 695277762 91650723 690121999 790579585 987650400 556829192 676049737 996926879 999748274 753255287 911042241 729861261 947944524 772782229 777911909 638718711 786660871 614214915 902299851 639495940 935366229 245695862 841110689 843439606 878515292 316427216 459506590 839761229 992316785 92095949 849382021 886251253 911714034 781467632 962552503 527222886 723021401 330263135 968547779 401969603 736517380 661619026 707260156 610473359 825502132 550854878 971215999 378271131 412412547 934599139 965545639 370727885 848948906 620514039 978461129 5676490 659893596 433993605 578780415 139271710 386697013 288513091 306879918 149659675 562211807 271587617 709171375 445901186 774178610 586214481 875816415 412423518 566683975 33593836 803232290 966259952 970696664 176656212 281041718 272254568 789540072 242111144 902215103 666390613 666880754 738627407 799005888 930285801 968348071 581017432 968469547 147736441 912711430 606672872 835579836 247775854 298780267 139171699 436719991 491214903 671196160 152641254 270134653 708624280 955336933 29840271 110650649 772740889 945699024 142227116 759218856 244885422 673096880 595283594 640485520 392450975 825998682 751382613 776415689 2900718 466739286 468238799 829460099 65344329 110617183 299637161 793366973 828395665 845638328 218819411 923885057 890460267 949199976 360293045 430108343 270478979 868764512 823656156 839926651 886430633 921285027 548660360 914820728 759019673 832959193 424715208 845217491 579452139 704684770 862237375 967133844 178400790 945822333 852609614 870408905 504523035 621078250 487269562 498661558 364250640 673472446 114033698 855285634 557398235 702096377 619941185 970784288 619517431 780294156 787020600 937289299 593839280 792042597 149073494 967919885 988260429 991617817 849087592 919669351 854789314 943564326 901971352 979502711 272989671 291963347 966775799 984975095 334622360 718446399 869170218 900494440 189130026 387523383 513011658 612287919 804981922 817967343 737607645 864634224 475816953 874605405 911886332 963786541 831077953 901829837 641509214 738405681 987149626 992902833 441642807 965702491 820995271 997778323 608582728 955605820 574473483 919655241 430003276 772660723 200845985 215901891 425467273 820271384 206403505 581572812 22904809 426437150 909168781 941281110 948106927 975563859 493790703 557139293 39234597 107974187 808350452 881286810 517989985 795334233 507993787 873661036 216369450 838072113 837479436 875148887 805074543 867577261 887512122 949161324 905051592 963781596 824005064 859650902 857733097 909507514 439501282 674117772 628358947 900246958 725784637 839806976 142155638 362060866 786946131 847708873 199200461 588724364 754699673 934207766 438189790 586610788 356689 128372783 961074013 972629821 897882646 966390865 976116929 996577908 251189233 836473561 449465542 790895414 352022919 659915370 147540920 779733349 456770304 895351593 985296563 998557820 568878276 599165690 979715246 989821848 455572832 750133176 774285847 928840601 860749459 891515513 799930370 926977240 275673355 919077678 896502356 968606275 656635825 843856280 702551728 898784547 165073499 958135085 744792559 749346836 27255480 921440944 218631596 702850757 414851727 901755008 119835486 225649447 263074989 835468857 292512716 507658435 663802875 984217030 79902123 638853610 967919565 985680167 638059298 847311252 856442126 985951829 177348832 460778718 383503076 946009791 990997999 995653704 593635396 976082105 429981913 580379859 284724897 400524161 170542446 185513038 390163993 534905367 977812379 994678564 38791071 671571183 951127175 963017783 515996206 755981765 303783519 563438849 831127856 894518825 169175972 177037549 691039360 926571989 841941245 984887171 727738489 911979602 9596604 35486606 429635472 546520926 366364396 531386024 828285760 985985530 351522525 437249185 803967464 925779726 129140905 494202080 285043834 981873829 442898096 883162002 4036491 987952985 447264066 468680642 861946430 892269251 237181783 860436913 448581634 623158203 530194632 890474085 253367400 270040780 212313879 700669516 838392868 968696138 51977415 195004606 293970251 304891446 259648596 428971132 373737391 670772871 580488685 645841901 506382689 725064582 976790714 997061365 736856367 786918642 456051001 583347355 157026300 419454096 711029570 831603901 807527123 879988119 132233826 236163659 75587299 765472376 59687968 454632262 259818596 982128204 887825263 974841056 149379201 472889195 274370640 977146563 202988366 312455546 351833011 503774259 65200761 962316796 343245256 711941099 649251400 764874550 22417465 451929775 232392642 644606457 922129407 959907992 284498995 745706167 791210036 924171283 808738441 870083606 583423655 940022590 357875247 999737410 728912228 848096776 117549400 658443492 965729503 997728118 273904568 630152542 540707100 808181093 671862558 747354738 645327027 721841276 796958382 911012035 842683615 980405187 188008171 714017465 180479073 931511214 893437802 923995772 681768363 843145388 205431502 693452609 367781839 933156979 906772992 912192213 688167540 955267953 137602381 490193893 765075254 893620088 364135357 907452490 429142467 823113399 40364549 258461441 353186263 634254487 204348818 241021505 292182063 300022369 787051236 947767436 479238164 695301171 401904540 853595474 431950739 489417969 447049706 470670591 135683267 545043467 918604491 982348637 367062200 986403427 888895649 888931909 209278932 254864484 913811050 986157472 640744658 819286506 261982818 605225464 844530526 932347813 928530646 951679867 39373473 843137137 336354299 404074320 807498939 936110717 602220263 952206595 481816428 538533890 433070478 692147482 658101884 843261844 533493603 671701337 721427609 759471461 174161787 557318330 986018403 999728665 311054863 623182710 848496481 990768964 233282815 540960922 326538230 450004333 158143213 321667821 376974260 543625375 3838100 94449877 124667261 744445882 167682897 316137221 773370623 809682735 963925563 993684939 991435967 994191638 358091329 780129067 811894877 855638013 60678015 282169159 667606115 686699204 562187984 942088025 969386372 982475668 485135807 692032972 588264850 708852380 828600477 959886636 566249499 709538852 950366470 997378872 208506206 670033588 937723818 976278295 378566968 414793293 861135304 879452329 294333707 921420665 659877133 986915333 607746493 894598956 359302350 518829305 577452623 720862742 173313737 342599048 310724031 990549538 175579617 886898365 883949344 887023059 331192035 620755742 316411010 430033991 901841743 935106307 961043495 978028832 268218977 599815580 738483308 846672670 51681865 606296970 727943948 942666352 936364117 980848893 970623588 985826843 126043984 691106942 692544138 771399494 693946875 991716994 546544510 665967022 353397187 418709926 584272754 806658096 471090880 618724784 524597198 816185410 857074141 889947896 513520322 641163504 712645593 830365721 5691510 909410211 84005358 553183498 266937244 762745978 100152362 319523450 818606695 854647491 388993060 560441532 426329577 892732282 624552481 854643319 156920067 431031810 826981367 872407615 172354231 363148840 688796009 937850203 733180532 841166307 18247688 660582262 364305256 807003256 639488563 689382805 947937942 988982472 542521652 819659617 909962148 938894806 412893417 843294980 67956013 134165115 418403560 844944742 745063439 977982624 493155863 781266044 485271077 496321354 65572097 973292678 249888986 587946920 739234316 981571562 679496544 829610888 801402277 986336578 266224214 874694668 536367109 782306555 676312309 701825086 138521715 268450250 892806385 980099912 143017912 455581419 574835420 814237329 100388192 260260787 882875448 993687652 102586638 893898282 375890812 420052673 471644754 616290551 827726350 976286035 861902723 979684219 787944446 788013899 453554316 633756984 437978731 673046086 786560524 965379016 898280279 903660289 436737235 664805621 607312645 917062918 958546904 974494563 859443781 997816113 842224010 908695165 147001871 877477368 239321019 314522886 77138090 283318173 518657003 815049029 877858153 919139952 761365615 836348531 474770911 698620456 458062930 948686831 490138827 644890657 830130133 890875585 145716286 546861319 902744687 938896715 247598414 608335386 240584046 650643711 383022153 562043435 800117327 887051114 856657038 968290039 918135397 928600462 965244149 987746697 530995240 797180823 590933906 859250272 254396991 426683961 98197348 158266029 723619420 817362753 51776481 406961030 278773849 876928536 17296720 719211441 630878290 727421975 916943491 947772089 514822998 736190217 583469523 702046268 790083974 992411820 120073109 509122182 937461339 989413027 743015809 754039913 109161103 209470470 703376009 894423662 292734923 424656481 767072675 992813340 998511419 999357903 988997346 999395859 820498816 984093609 562468888 972986529 352831947 589621853 533885438 735140189 89768016 457358599 668582039 686951861 259864899 481792394 342563831 469913731 719207574 784539284 349452612 457421002 777789778 996576695 961457091 974647452 247819290 853876453 559020608 736159972 760136983 860715543 747784455 844071219 144873026 256938072 573308611 882341935 315015319 694131021 888435023 911781649 991722682 992478817 950939851 970545014 272678786 556345373 462522034 927876825 555595212 751911424 760570123 880752999 505106637 661197035 373611701 905916281 419478790 765299495 732567802 783584357 942199088 949080655 945409568 969050648 855223097 967788063 766872932 874308661 438894292 960305047 127973640 729971946 637262522 804583204 64943475 860818252 406598153 760631581 516617283 850540848 838774410 987934904 470501438 735822804 546323244 666154097 895183617 919091598 780397130 974339601 613850671 635938112 341356080 676945072 702633354 743131495 625238393 896345458 703245395 835119768 608664693 626245685 957177974 963929067 169462732 765742673 557042874 888079911 107264183 962000953 440534753 960201207 832434696 980540084 254461114 594823103 118309371 171919995 976457991 995557074 306489574 924681009 108890420 724713477 435658112 748760134 405783121 748765456 130496660 143566706 105896059 180442566 527784836 804735855 942498603 984044821 566052372 628660018 854003534 977341614 103533823 398887111 241371455 606656034 400362872 689920879 738500995 957605514 265994678 329016500 814370333 854013376 120561789 426104640 516490115 708633152 173015102 576751199 78892223 692137282 415602936 458939086 267599099 785105358 106497163 432623432 631647045 822817721 591283002 945039806 239262783 837417047 400694982 632744063 629080896 942664817 179578651 433703795 770831117 784229059 31998233 246808105 946471956 966157320 621905857 692764777 956893535 991888351 344690434 794988896 676541700 946126867 297975636 795270963 59252445 605941791 527614088 731464066 530540460 840723974 539691791 614795245 680421126 947009298 343225902 919301549 272203721 398110347 21895994 395482698 110288072 903896865 359089913 827515815 132985159 922688477 44899965 578961813 130933896 657675962 829610174 910355974 399729875 825320189 876749862 893674815 745058065 785855366 273485645 433647351 571434894 968129397 138930421 394360966 684461336 724943307 159572899 244090229 911829796 921595005 393828301 696877814 4230644 426700986 109610419 706426684 586953719 999818584 728124246 762504173 599397806 658818591 476266193 673491890 553781451 626210657 138516648 149904160 396293529 887003405 46390849 437613430 428040072 796543680 512168915 516603349 464027578 624666131 183113352 601750832 274417695 715552407 104710664 658787612 624691429 798254651 860756440 974618581 178047548 715902233 889452375 903458521 363377905 879347542 820561466 892761281 435132609 813235792 620994876 811756847 535893031 929423695 953894852 955180571 93472446 400407134 529794255 829371281 288279660 979781776 996304460 997961736 710150262 919538367 971491609 981483990 85438259 822893656 152517940 752389495 689454506 825815943 116861066 710402723 953917221 959877234 881471326 904169625 827518023 935215674 50817264 372743487 629541152 964944060 505272199 875140052 941951832 973647392 989560761 994644642 315323916 709323125 343644866 355376645 747270782 973062112 505583943 905641390 665166286 966611185 423275957 590577677 590322289 602206807 857245720 924718968 205164226 860317828 758338777 911981352 700162540 993628563 345266448 618903113 117037266 241163750 349299977 545091598 349055918 588015322 55677986 894645674 502121690 897808307 807378878 865256613 284773240 750155458 733894916 883153979 988769172 994742238 580795045 592522776 890646287 963984531 711192046 714984586 362541967 869278441 819278656 987604461 27301861 644937313 96856892 141098037 707447844 925404126 713657391 820425378 811400841 950617568 253992835 988785480 190774429 779028138 574584884 698979359 526158607 636113798 164997101 570271872 182875687 845643715 453117858 885591692 890276671 949981584 65636375 615429846 736297863 915470761 35448269 935217508 182734114 315619865 115498285 958070860 55013013 607734820 265425959 541352857 420955075 711960900 706408042 924218162 879813716 918581547 643691786 889678282 740798379 901162967 744185598 996045934 174101708 680741082 263249980 753649571 275799792 437748550 809904088 892477629 35749067 258001897 597945599 631623202 563062208 808927489 97442964 657480645 429342031 765498723 965492276 985599020 328479738 868359162 641658484 771762671 16044139 428509437 282397404 679171741 207554600 767119781 478788388 606676891 84722311 526831073 483186449 596912296 858971503 946535401 309964075 539148678 123629564 684617117 332305638 566652079 918174130 993055228 958026888 979619006 747441812 895887676 344769411 889537484 908353005 970245446 705830444 769360155 932974125 933943162 233080614 309667763 460835884 873976404 473038648 711286468 189796422 788878097 337064104 920983067 345698540 355206574 428324329 997953886 285217554 332268559 870711256 933550819 472368683 714693292 248392726 656815829 680375519 764686411 103811338 211812170 336554567 492057298 716775975 852030882 576070363 759246161 451992423 885808307 832084484 859182547 334150548 787814772 726063945 957847746 86615609 995371719 720254350 953278992 259877454 416975388 955297343 956680293 96772949 716736561 391391316 957914081 465306392 995745910 960691829 977971849 551630637 678189663 439162829 560586920 370711053 489700328 667783160 897433004 603408476 929315093 814180645 821736506 211139129 770715904 243911221 852818675 936662466 985902171 224515321 878527813 304876109 918498118 183288406 213277117 955886847 988809747 854634007 921882094 454789184 717650272 97896146 713235626 862121989 896462690 232282272 606775986 637994205 783817752 711986767 804130785 53246125 341778291 830900032 958449491 17004675 615868837 260303259 749375633 150514474 397739469 624840938 944034282 941828576 990079420 1829508 569268583 165049536 481428079 89085892 984976823 902584000 991554280 604031357 677904132 440338231 754161983 806995814 916005408 890611297 933561279 887466030 908652752 347328725 440295791 450686489 744934790 851389928 860009374 92421720 729752511 857104569 930062757 559825231 745387178 980351504 998808565 129624969 960674274 950943633 991393624 779351385 940361070 704276529 756796986 180752079 506887134 844912278 883314712 587335585 855496511 875992680 969668706 325192817 334405487 896973915 926750252 390664046 419634273 454024069 713814363 27194390 545258991 400249724 750298150 73790539 472904511 995885138 999733429 886663904 941412463 979444707 998683354 298141219 651160280 356089366 681227401 708409450 966147456 720032132 729342442 299674972 965328721 343696174 543538911 542831177 809886798 276804086 757690923 643145472 906565174 249796867 666699694 634326536 866299364 55268752 831267311 441957799 850976076 107604987 366312478 762862476 848607668 442320602 545654241 573200394 777196651 985916056 994770011 33497956 462715607 529897455 707532503 314393837 887135931 5581515 882782274 294626728 420260445 147913071 495310860 250191782 415525291 786639816 815337065 986901935 991144344 434094440 607778945 81532246 345513655 109082449 467194691 352016486 622149734 743280599 754045771 296183815 967473662 639636276 829097807 525475133 783855433 848869754 858004116 521947918 863784668 102000354 356177009 591705067 604920443 707171042 809327905 748430227 864498901 396709000 886638532 715295624 937464845 818230900 993328309 779888910 951835844 701810134 854054310 203678401 413837489 755307955 833849910 802187060 929672801 800930643 973304970 907658521 990545912 658580977 760255371 614803509 992524946 786566596 822221943 872712983 937885972 119440240 307109255 947977096 951823529 828976156 984373590 123740014 746052158 248446666 924704491 179434108 361638857 541308500 975365664 840649424 846666785 80131554 728496438 512388788 656222713 206942756 720602818 492947305 604863971 365423860 687745103 657455135 988118656 419620979 875395859 836969427 880778850 271182466 395114532 675552083 938053759 967432402 980053245 292380697 614170018 426769612 936708134 54183654 142016531 52425294 957178657 11718262 609901289 55850541 99223275 939418860 964011496 187037564 931585407 400333633 419254605 550936969 667200615 243345621 900138253 606923187 883444752 434643539 600775947 331881123 920681117 182583570 578112710 270319803 860905596 844624782 860505499 262893463 657704158 10912505 351635482 138719571 591752565 986303201 993860410 513611829 774122308 5356943 693113952 952896193 984143879 796913508 923766903 827532787 868120601 304706467 430361801 222372742 545520060 181011195 363384733 670517219 757938959 277181443 993009649 345102113 992855788 429964750 471181619 416604128 806543351 999933626 999967879 765156142 929907662 988272914 990850862 278404784 602515793 183132049 830384945 979901700 998937166 881713717 926697966 824517632 859122375 230608758 453276292 617780669 669795805 383164079 685806956 882078869 921772266 292618884 340044525 743533410 906801064 140102163 282370538 201713549 490509367 118739948 404659961 395435083 894251821 655899608 712292345 52854751 65577682 604430021 713364146 495516933 588253586 1516008 457339253 652961324 657525728 240210584 723489045 732467604 973911771 261416249 725327476 284936419 432024422 933819401 984997186 506494753 518368125 382840975 420346519 1789691 165780009 188743649 589874956 82623284 414259312 420771957 524063554 806122990 921172949 782693048 874921094 944697844 985324542 285902322 947093543 536917829 973302082 349464754 415668548 710780677 832582851 577814322 617819872 686149542 833769836 637684857 866397480 257446734 705594418 468329038 988812596 624854391 663311695 17721550 663491587 617643425 880571655 314341528 707628384 388195500 412454282 825660852 931225620 743333017 928650201 985101641 985290269 798962510 850819301 487062756 956678466 987253660 988945090 152539782 375301782 706129527 884424882 824864656 868727052 595972162 879857605 517827749 798623789 173965218 803536626 55998318 136336726 124471620 217190750 165429751 779926671 594318096 866709339 701589429 996353884 456194115 760662415 607097510 777250523 321502538 848621589 211236992 566457489 693475743 962018811 194696833 316720803 737911174 891335827 26417198 601706884 401022490 828975530 440862027 556045254 943286762 963422780 480401931 588767266 1978924 140681338 202309458 575591368 534176010 885321201 548603834 629842411 654764871 863365574 506241884 850539013 689511836 811117010 91359827 809180831 917510383 967445285 12371290 155905256 539603108 920583187 105524527 481965540 521146579 714271379 701011024 999191059 306230497 369631948 858128317 863862256 6666137 729427972 76129280 814946462 628621980 741884932 951041084 986774737 747668297 909343948 271827937 644437626 881168103 891470079 832887272 951083788 723205640 895383946 107226570 963497346 188093704 344412036 120279782 198042039 750199318 758429862 270715653 517033843 903610263 989756816 72397877 812766060 323971729 756307327 168203973 593250054 927189531 991484402 763279288 864760805 845196758 887064901 545905034 766576670 387478625 413774402 123460241 852936191 792209488 963009808 791881279 822916802 650282020 945828251 148290962 678247058 716580654 999666186 63996070 713619707 244574457 838796239 360668562 548354150 613536212 785339975 226525762 894606545 362875768 689364929 170468940 683461780 161733797 767308844 179129906 471962113 399872720 785925004 323462126 389837007 721646674 955754115 231266698 349885862 430644799 585665263 14538037 522956021 730469637 775236315 344766116 986433500 53952284 275644034 722879582 753691715 753648019 873274891 973411859 988256102 701305374 796894705 804861512 957469382 829926510 901104210 421826129 455847998 677370144 770025581 793937329 940797356 107166522 647088123 540229257 756038207 146963760 599077642 111404441 176408085 280372267 865453437 698896034 871585807 514773220 681968026 334220548 970526287 516902090 586738252 769740729 891579685 607876981 835285993 859290141 983415070 408530044 532941738 59854089 367490333 618724895 810404747 540195136 887181123 269183830 600735862 155309096 853885573 546879420 918238491 856495452 894513447 642705773 820174128 570863359 697741027 469837268 861063645 270818432 735453947 804407957 953176243 479140366 604281402 264661078 535164270 515269190 700750248 764441905 792374758 344235813 934333670 811344466 964999360 968629080 998819030 940298760 976015914 677397625 991751639 599121631 986001465 576350371 656084570 400583800 977927604 683868234 700317202 447234061 554716044 508657699 835906582 391754506 917481074 531934786 755144566 852182390 975941724 687545694 821829976 127410508 421357703 738771504 751807419 878462474 997527514 254453035 714810123 36074265 308211358 305271971 989987804 202741219 550734688 14306322 232664660 463317431 641316998 852632305 986177323 194863596 856993282 871431661 960833419 714620590 948084278 778606185 960236062 737405061 896724843 188515924 772382548 394655143 950016978 856246990 924344980 963424177 970164589 263797682 369323455 338705598 668765928 866166359 929077542 569784834 982030714 778165402 988648127 578091854 928251261 125794876 405402899 42386281 590413860 659642483 709618217 739204052 801184839 403081150 457029561 71265997 82606474 961347122 964538652 836380574 899987644 818975506 976869835 522578962 884729655 218684856 672098924 606969369 855574713 853220124 886813816 576388589 911477133 473256098 482113438 682681033 871424495 804047061 817068623 696005386 941342990 541487415 671468806 243667164 627366417 793651004 900499971 103972920 427094159 2480925 659279166 68937802 879780426 8286348 828886053 934265142 941379675 385415464 831037358 661421556 882223487 709606226 858483558 712701942 999987096 263896629 666128174 782329478 820035287 395676809 804882657 854501400 965638442 907599499 973659224 250130912 977583440 129478047 752224473 440815565 575446901 961224323 987814551 570994980 973099020 985248885 992842775 150798831 369540811 341239114 853049786 354131588 734626377 153673782 692716239 493268372 565268164 237267310 658933291 543218284 612525725 447614873 589491269 41400009 80743100 258480314 813150390 254668534 881048297 96179821 239311980 542688842 748778399 771986179 989391706 797577369 960209289 578777757 653163890 31106473 515667847 211249453 959824192 311794494 702461401 893907265 897501447 832043416 986213684 59919909 997494956 279460141 699101190 898493285 956275027 717087402 811193082 994080348 995105251 565522648 885493535 72092362 529087687 607149354 723598825 890989131 959272796 593778593 874581244 526349590 592129314 200156130 703099803 975127230 986484918 847654860 853034320 608105875 900790157 679606716 799385052 977286714 991053505 800888121 856860985 263654709 823572928 100962418 655942038 202520550 877884251 198114107 509826396 10422671 107329367 192582368 452661924 960913260 970774264 450605949 886781707 511300339 986385578 175876409 250720984 154769204 995957689 804671426 914026435 579963589 594427039 821417767 878987648 431365305 536812380 544311924 893752171 876911067 913052306 760305332 847616531 295636163 315601912 74010077 908054605 544457962 571199195 697424147 947394791 939350450 994224351 597247747 848310262 153661017 686960457 110429894 237332472 328611192 640629206 421412933 817448632 255609058 908584892 559946477 739258741 648950354 725114331 379110245 410283407 101619145 439770004 787099237 801002615 925199012 941212550 732931919 800130222 366057516 946585044 433490236 847734935 910551136 939625862 638247381 835181522 396198565 601881013 937039796 937624019 164293157 563685798 29110099 555403131 794527996 847323025 649389036 928292953 108959514 985965044 747139153 939609171 998966368 999950057 459787781 627896111 724627993 909259053 379195554 856129244 465546614 723954540 169120600 466902699 146531665 723795173 111302871 168009625 156170221 909941492 916045782 954434337 929773539 981871067 874992949 941113522 940233919 986373660 136272515 657204371 667051695 797953435 870802084 957099648 991151141 996788136 498302800 935309057 433090461 493833267 219836348 822901999 209461871 630784464 114300016 948793151 806597672 891053470 284384964 842455451 805175977 901900311 587282343 662520137 300011001 511751939 295557402 418712921 575560070 912543783 288947830 545794165 991969031 998296721 860110756 998705591 709586211 861342309 435837072 602865553 794759489 986536773 454930380 951970391 875665860 969690324 801885438 950539095 176972658 884863877 871871777 972614751 432018559 771419450 581474061 723878245 944596481 954657042 533886900 720540431 190588343 721403655 902039945 916835783 884692137 986309613 149348733 648100701 954005881 984289209 158260674 178418769 767727372 828521447 476899885 719763143 650364645 883420404 653172396 884033153 529058652 949601660 628110262 929544671 432696095 844642933 296804015 889414176 902348294 977036804 442548148 444024354 351954024 388597984 489611969 965844181 780777137 887555634 642344032 885100773 307065981 379973723 879471634 894978849 438210117 463764977 457656363 907198037 66395433 217641444 995041524 995986825 797551939 892409808 753442568 848226264 653572124 824666525 760687995 845833954 908139181 975853447 207065705 986514287 76080410 239149311 341240623 575402690 737518222 750954555 226347582 286967491 338472676 938117044 257032285 261051498 187610623 685232341 443699738 965023556 392699744 619316446 684618233 714500969 964443169 984350146 513725833 768509574 483449842 872385645 65595413 396057776 550383540 580830361 391204116 655386466 512517919 757917657 648080113 785106081 82916926 813955832 181704046 427304682 568148657 666296365 745460284 833683878 916733107 977840274 703142809 992402325 157047338 270955761 31760450 929526582 458452668 584326038 215852885 730436773 773207717 872677398 567189 686785861 53829285 590964564 604057611 926810316 330755331 424508745 337840409 909427651 630077642 742327378 31733648 578901305 109491185 824346177 623295145 656243026 235412638 640598908 902692531 906345111 220810102 443821273 884351551 960832377 29410702 438191045 996715449 997052835 723133383 856865065 541241142 762990691 87765137 898329875 701842896 722745199 487885418 934979037 214106259 396750129 13824498 870614855 704761073 764215998 693963734 966231325 255523770 788675152 524450707 558133815 373956533 680526814 846649251 993767073 300251094 365082333 234121256 712541213 118420232 876123457 714902595 821943704 543945439 977422189 885201210 902625032 980046543 982828909 71264524 830404660 87035529 483563645 596780721 666285438 254315765 683916761 713308210 871107770 840370028 982028592 633684760 825487407 513813748 976725818 47008164 207588125 497557910 820813931 911609703 937475258 645987476 711773799 755731483 948696568 192580682 256560187 526058254 571291607 23639735 975542535 583219252 769307134 961968999 984379517 770959188 956909667 635675225 860557918 93965361 975655142 976476298 988103157 292650750 711259527 55764109 589259341 708227347 717666531 838480030 951818119 854943889 897888941 745908094 980812814 800211934 904969256 457471955 925272355 864934395 981072361 587784537 718898795 107163914 204339908 678522328 923077374 320711877 853439274 108766574 606731025 587507662 813873631 953717245 991324057 863845441 933497633 929442155 947846059 775781327 931836850 262576302 344968902 428510304 978128586 249783748 584586037 777434177 974160472 278626079 477637426 695311615 792900161 276882565 968427537 563704050 909420910 725736415 822670575 508837285 571079576 748953389 994681906 706012808 887432035 706830406 963550336 888758439 997613933 227746757 698940787 294527429 412060527 333807338 921543854 666303922 995628449 804782151 869089160 693053838 753382631 643002687 751014158 307640626 564513034 546054027 834474010 442973734 973095498 685516543 729492637 699399515 810162011 37832523 775037820 778943047 876826944 73378842 613628111 19028035 170021542 831584453 978157545 159455990 877713494 87414539 885142388 541031801 805947219 235045060 804528680 421066420 956436170 236120594 743691147 697847082 844842033 523612109 816035145 287211690 821531688 567458953 729894061 967643644 983013890 106494937 505994787 723089127 806776922 331238405 656523932 251730171 607519848 53021077 584545961 181702874 465708261 578475215 869616669 997390565 998709878 406386355 918721520 658356740 900950918 884135252 997106902 78992521 764372952 408762062 717789961 853526510 995343425 515338429 792644890 186215245 915571373 376354476 818444550 597684058 969898527 138586937 151255789 128775020 546717408 846631077 987801920 899424409 994669373 956329789 960065493 999922207 999965832 997903722 998433573 653101454 821332108 47072095 857785783 586849486 941698609 462547445 917266479 637549824 769373035 400026369 561896733 939898240 978591986 13558385 840995138 30873977 282712761 61818647 513386551 57642620 248029466 232980161 436798585 913533812 988529607 536966512 766779748 376210180 515244057 398570277 836540145 803884465 834595362 732923350 835073503 173049340 926821461 596394199 944300319 746081879 930716211 509526709 534767861 72510870 473321708 806702785 845715449 78932178 337333266 677693632 817768201 460238934 995954634 329229506 586393942 485499477 948197658 880136281 907582622 494187447 842970006 453752744 908529025 568842224 800538205 848074238 928092703 366172958 417863147 191061120 373000922 889634294 942627999 98410176 406601800 652674976 910468465 906847119 974047322 987345650 987675343 694825822 822949555 64109922 916497639 915534749 983241384 532571453 685506909 852866801 937340370 784244220 998832318 652635570 724029383 827502034 870117294 252189507 578951500 44012026 148707794 879754117 959166586 812938623 938753930 243348250 371845509 50269251 252783272 461103520 837890122 115818820 506038778 993963358 998571708 772601208 844462527 318143070 949957591 783950841 837833091 787995107 850679775 66545537 895707064 892583375 952719401 940333556 950934544 388912584 585250799 353634963 998473985 892881791 960623956 556663795 807194305 715838843 955243554 591881663 716958048 826841713 989297506 589658 181471319 294007348 470220585 403202876 962254757 691250815 984718879 671941388 737168888 790582455 982684117 607069863 753111253 947601378 953333412 423084096 554895817 874915825 920998860 190727744 624915844 54054008 518564092 337285322 868006100 285683048 573667415 657770766 779609736 453642763 666669841 91495460 444767662 675729978 825780612 267146601 742137163 785534600 801663177 358335799 363874995 644120933 794309937 460980403 581448513 721691161 808192997 776422648 812896974 816778806 912304476 213874697 843967038 460868652 844704846 981871802 987592831 490899269 540665567 621094042 895749115 498960050 847533553 464262517 478759646 227069460 844805195 10811676 525457068 107496519 366916899 476871138 667697042 790021471 901789080 238967977 868189639 996006677 996773079 452895307 958056252 149237573 707979600 191372628 652069385 286504593 321689627 731534300 801515594 197553303 630754219 256692094 875262079 576767014 977996826 758418587 950640493 942652123 956740319 591286914 938095153 438934192 766018423 232936202 322348105 58088209 629061232 533932583 609685787 625426563 749354871 215318715 298649609 358808358 790519986 534537603 808420617 92763029 810902668 478710192 530962765 246830686 719678470 265832127 539541128 782654809 867890427 930708790 972621094 555231316 835055147 723704952 792478173 373955730 683596975 631654994 771648408 147863699 994202184 476186862 942455558 582087745 877416923 482585435 585468384 646009500 785485237 456693979 499364429 168898210 953356150 579253407 701454212 57087829 207189223 310429221 432692371 147885725 839105646 970898957 986215154 940907879 979385024 49160872 230281965 718018650 739089028 768067430 856789664 895521772 980662055 403507813 817043135 911974979 980188966 671237570 760626923 316120693 467746055 589276590 858720991 902605211 959370979 691108937 989734757 510536205 783097553 683344448 882068392 404974822 980144826 483587101 999289033 717281597 804691450 827661028 972289791 260811336 815945683 658132326 748311766 1054662 650195839 928906811 987290796 746844676 955863691 189695555 774250690 54510526 793438570 24880064 491036006 886863314 935088286 918838946 948397311 421116559 524447815 289062907 527594691 271373583 447374273 454702998 492014239 274925465 412288178 522936714 995815904 633929618 810708949 873377857 884031161 876234791 990831564 656850158 793413582 539546899 929456802 555927318 783161810 272750543 987203227 743690500 866367599 401958721 572129536 440176279 672689676 461957582 506047189 758638746 977914039 269984413 497921355 820171782 950596781 471334178 607556998 230514294 852868198 351279077 581979714 680912812 882363897 728121348 860135114 757451899 988212621 27266442 67772436 374237041 390322901 749133960 833560288 151450314 422952901 439625431 965740699 918017577 960392931 36752766 386490854 417827620 786710129 10874226 250952795 42708413 877911371 138485486 555672629 998931140 998955595 655595738 777400203 828867374 926660018 549691758 603712230 363312520 487319610 503897630 779464998 577391653 932293088 249838279 900909578 368408907 461700270 780530904 982746168 991696678 993061697 855220061 882220205 343526817 433389145 68250123 910173179 315376237 475943192 700617553 955953451 572794077 761329684 757366859 757861199 473806763 684286808 787576750 832200991 98400555 600726523 443436646 450261395 568309062 781619884 941533446 960835908 61930713 331534962 871225828 952563271 349346915 621372286 805696797 840450414 202946012 410673422 452738 703171494 860380764 948094255 1012730 864720981 954157616 959465015 965072842 994114095 516797623 600906788 591451815 885237038 306585715 652963968 860508407 902537502 847320998 912819087 901924687 984722248 778370892 868071067 50922280 198589214 603495092 830696721 33872047 560653572 339113467 837144174 619362561 711391356 955025936 955582790 161220356 246482339 590363079 624364335 402784363 846760817 178705270 887606117 1489819 280551523 144898812 414369435 18078652 661720021 687110503 990149282 545215081 852590689 170408777 895082724 6949882 13381529 404646217 599029598 165704979 895410531 162155096 432392796 409560840 816941220 926865799 929491749 413148614 599190405 470165496 873503890 888754829 937915510 81989367 399761933 387068200 421528562 477560428 964037664 446104431 594679315 372155510 918679046 410890888 797940370 583502699 624891240 800589305 885600593 382193802 765650870 756995918 812655296 518373177 537018090 192600247 956285965 879095124 903542554 185986365 705439259 213098407 814934570 888404504 962740877 89274706 700524043 379198959 494372648 998229488 999586046 34739567 372409122 513040022 686568765 467987109 964383850 112328586 598212763 295235313 529603477 289040254 595371479 785301523 836084283 22668148 331911409 26088071 857439855 817568686 845168794 370975865 773166527 531703726 618482129 490595655 711786937 151539865 629428902 789786080 994771254 782667310 953537798 341985189 809944681 679923485 820287385 116756219 651276145 380199943 594054132 245466478 467498097 998856046 999439378 519524922 814345867 448235064 455624885 908096035 994935599 853645945 874369235 819473064 944923034 86737544 250655017 426881936 746914341 4508739 413187948 665250493 966435146 563974002 639416334 998445525 999167289 640111697 750904118 954815986 964343317 191979988 420367305 672968442 747155281 245813532 639677424 587470894 821786464 766331309 863375556 179198861 565661964 166165694 724711083 834942591 953521101 760448988 908370732 981409791 993732901 473087217 946685924 232675853 613797057 477471 806850636 847919113 919826390 897115870 991307282 840173508 890344632 591346639 731940193 815683729 920840358 42878027 963420036 707772198 775007155 974874015 998523484 904273457 984668791 582735769 978188472 642001877 915019799 114386752 499472184 166575520 368028074 452804576 950675822 255402454 645975674 844359624 934202243 954198852 968829328 711534812 792201536 655964672 989952919 257067140 389469248 4703069 397111926 307281291 612571346 106750598 431478430 385064660 401067708 360890599 945187351 266386521 462581372 398709249 925769706 41956931 566953045 343007580 538661083 840536954 885569792 192323320 409852296 578099779 707434144 67806870 334561825 888533661 961791592 707984757 996995374 564175092 620430296 605622513 859153663 60072275 932134037 769655037 904758587 34418192 958227190 711899917 921498137 175736669 502135068 719709289 805320274 482108239 497670031 756921151 767055393 532393221 716724851 105850771 235298607 720686292 831497151 134960855 301667499 847421364 979060707 559281784 704038065 488105151 726834627 862162577 983299922 294684736 652335298 259372114 733474676 640702503 812478425 575656569 965759306 95554628 544177748 784727242 823335783 529002412 730487341 538088395 896794531 325772700 418468076 140637755 920705104 478343904 580887014 904641173 929518046 465766257 974902402 923183868 981049144 293309895 327009510 110483872 746417818 34449580 95675512 168394156 789652356 721424191 899223673 199075381 481611828 586419274 722920486 953498983 978942273 821937509 942435336 658080855 806289619 429148755 821921415 387553203 537826383 540419670 550878235 969261066 999769346 981611088 989641684 426441724 790299463 334201925 457521800 997273524 999705873 565922378 745886409 210196071 264442157 444330130 827227689 753281976 870674415 839047044 922568436 189332981 797631888 421890577 983379042 122244824 194482258 829332827 967021483 885847958 972474859 945304373 994659412 892615808 896814100 1571308 556690825 626690241 844936100 597453338 727478306 920260632 997570876 919313539 921310377 80899312 915746293 832046051 872788990 578234050 621162326 461878176 679480917 984149437 985834324 582613631 597046795 190001853 263376984 915357852 941760509 16992944 104326226 598077948 714038781 580211270 779229395 62513868 715765779 17271915 559593482 784217508 931533064 780271432 865477684 289584373 457565277 865624584 870472278 864508637 877181362 510646021 554171982 772594998 849401943 35947611 310284955 681995920 856314035 969102731 988551910 774119019 821286323 125245512 451786131 278735095 451982553 75821384 684567011 439667644 867284978 66971979 291268981 330025297 741671101 111029008 429840961 108872056 430340738 438458740 694696515 192353934 483576763 955306919 975905908 377396156 643312907 457697847 613382073 206750131 629443062 245482159 949820042 291375806 853569481 752094940 901076295 947305537 984073800 932232976 951535277 337998432 631454435 643874983 766684970 336742537 633735721 456614490 947195792 133612002 884397345 647103584 677104017 512963630 551677222 728883662 818683803 413770670 818651065 938765604 950717706 905358910 962070122 112044710 697551826 400687654 632836007 379350072 776373683 587444761 629496829 17161240 503877313 630287705 691584527 929007755 934152035 128120247 572527283 752295806 990018783 872808801 956492903 275075921 987702600 394774853 650202527 652905558 871183199 53155396 668738154 88075253 752085816 712961248 972659726 919278348 967645397 662728452 856308065 787670333 961460422 150839605 572026251 815427358 865472330 675769240 842067935 416061562 562323423 858071335 972801083 566266907 905347872 265078268 822177644 642345007 765206224 55376501 967365537 707087723 986297020 732273562 821750904 654436782 705078203 938016799 999227322 191728252 646764971 448321774 965094396 239220542 429882220 886214418 901000675 74825011 288197713 997024993 998271592 175671066 839481895 950746844 965607692 613901628 646395908 940057529 948420059 858992141 864014492 196994050 747034455 741128821 850493476 587114436 995514411 131196193 973117765 165126955 877924819 202417216 894696867 541447846 918975213 32196917 983140036 515281145 587420270 253965096 271033753 138993406 144333196 487315502 930186866 862195022 928607959 706855457 735388603 16042691 576220238 722991179 936798930 596174312 899949375 506077094 628379741 233055314 436232872 84907915 125652982 489898452 505929478 107982709 172748209 13641114 231463991 240433084 755764111 606794091 949651482 873617795 913038805 147291018 811742100 419188179 766906533 385805844 813576137 914627011 988343952 133439100 978781754 940913127 970547950 455921962 796071495 711014803 912953974 38301305 576639008 335057948 866872623 337684989 526496853 82463131 583796097 277218072 710285991 892479305 943223510 854807758 861533696 785280451 830265310 363323795 834731426 864211258 913557037 364582540 638700258 594971626 772216690 967998836 969930154 163284767 601187667 127692595 532624971 62519568 73431172 472500581 480167753 363507377 796552748 890873302 928059961 94515526 146783814 894439539 984188097 155082082 784243471 488371288 960454575 368882339 683740964 755371883 785560000 523302632 648246972 444403393 639563985 350595737 863116138 753884615 842514802 751352174 950985635 666350247 816279433 951998281 969051158 975823749 986264918 279894388 338935993 762685700 772336387 965611231 986105205 62072786 104663791 701845938 792838801 992284116 995550715 537994466 942631224 172811648 455172862 9321334 955139153 274740541 590756548 242699028 335137168 589088817 878165713 255339951 751779878 295244170 759270403 663426506 847264877 897476183 965198256 990549585 997018298 395581481 504346489 945123700 953198826 731547933 889023749 421013124 601070074 721645487 812650061 608881121 777458013 482596101 784586058 260049756 272717489 618207007 721368742 193370677 633647005 771614209 782020806 890642740 933833529 764621737 785962756 732386856 783954066 982155202 986717105 15811549 170101709 5817434 574415293 705718046 866324676 877633658 996111892 205954476 792697392 428880450 453892239 628431886 901973956 281306946 299940572 14772962 881989845 42354284 649128369 332043177 726721812 61269467 150426365 374671247 491940371 256037439 524376866 771917401 964361816 803406577 835252419 390968323 753586869 384885143 667364009 920260693 970981833 60716080 367844716 141365539 614645795 848011974 917055796 58889173 346005334 131042045 742321320 420545970 923291571 470246506 801393194 866538230 929295152 299392425 713603818 262761685 325215434 425326509 716547018 766176430 973196130 338120742 373443573 339014745 973941848 783481495 914766518 671493574 774621464 579133495 992546930 827268336 946344321 702031267 854873889 449690001 689216586 529792272 674905575 491957178 668658524 837378434 882859673 252063647 863534922 449061579 453776466 767477920 863424709 539065992 590923277 946653208 996982200 205199114 481208750 255769116 775826194 767799629 914170497 209330110 331456076 677136748 947594161 577712396 642106135 598863800 760873580 257587521 644558033 154670175 200863714 48600803 71439948 398042271 926381933 125146600 242457777 148544032 597173418 103423539 164520990 404999406 616953513 814538662 863484949 640266121 672245132 471408373 847824580 514268684 932170803 714229800 796775350 897285882 941739096 809788434 889191143 684787122 951594050 895580101 976594448 80644753 625173377 314329652 780953535 660558942 841708143 677273055 977048441 514334151 544332269 466282632 936606455 63909389 234747330 543912861 986606802 3752661 148730398 993880408 994138345 945393413 963925456 355230964 570402982 604122116 609443401 366291403 668446778 429048800 831468053 17789393 42688308 516821615 861910394 329891842 929742831 556468852 764096739 332187698 861388046 612865114 766564560 815661328 917946439 593241184 836996017 277449261 745893524 542075725 706158564 700208337 855607736 652187477 785941148 409261515 949710026 676583254 805252199 334590184 963645282 823645033 876637107 835190804 885446567 327626699 948519846 671883103 941383577 892065188 986018442 346288481 616849085 966478664 966777353 295587231 368102783 416996000 440310591 548651615 686991984 805392414 896245678 193458788 346468130 487604819 959043625 585304084 809095846 843244165 930046860 12192341 575568015 210318995 321071710 849642968 895936453 650375536 796174208 670231046 830758956 983930368 987315792 213001968 965616536 566439057 667164278 184331024 340267726 940601985 975884219 975673326 993434396 409123306 815889944 947416384 968100919 284896843 285164173 854368724 856697073 331258757 968739653 491001758 587888230 484345351 855902637 388038079 908183940 929559277 949351412 976810346 981839355 562163155 697353109 630897973 735969041 947245020 975233304 284207443 322490123 52039086 687055308 888220789 935795084 319319467 842446019 279963178 560032554 251594846 314049767 719134447 898628894 985495463 985793183 660595300 724530763 9843386 915095078 507391244 800309018 248052347 967889629 291484232 872306450 26538241 884267720 928965821 971220508 121527379 332369236 991127014 994800578 568738724 811081577 480006990 879202211 560109206 792059711 374059294 989129077 665752176 789629735 320692181 842968906 448146447 575107040 39426243 57987890 650303703 834712352 386056013 834356437 466557558 734733563 653686267 812558840 35033289 818985293 967317837 975197661 82855013 474448900 692575328 722474498 463971664 937493015 896574648 906830388 817128860 904411277 5566926 683952499 592314050 712982468 944265521 948306642 387326729 711147714 999630491 999660629 647059299 778744520 938289482 939609315 625206341 982238286 433465885 933959916 440959933 692633098 559253708 570897545 405046598 606925537 361443232 551231548 32875886 308623146 315227861 521835235 573308291 799226887 275819836 454225393 585130948 728269768 435098769 521731151 414536111 899815881 445699311 793305746 780040386 919244416 620800265 752775812 634054758 828205719 731500618 856212681 152921125 413358612 623201549 734883219 727046211 742655083 70750630 888076025 991738008 998434542 341370330 653310703 993101554 999348590 64633919 990314531 540973293 746529681 561550587 793521271 47202265 491351470 578209812 898733944 946395140 987467162 394032293 513749751 358799918 660280856 670877867 951057608 778408109 988191498 776774363 866467959 868771426 932020673 84966939 727533157 107315422 146744222 389324975 909617959 506490835 711558625 529000973 597450539 336697012 793247178 226303501 261659189 338988183 341398334 127835160 311759120 943564568 970450587 355771700 866224053 602473784 733235580 597316728 846068969 619898509 960016400 12116963 821659626 78270091 247246304 380957692 879399168 349409532 925887927 663550947 748984082 6984825 212181632 753013437 845366958 2001485 787486806 524987981 735228940 717213094 993969684 488498531 658962549 366629338 992209008 242515160 565658700 913720856 960276912 816827384 979906322 707097758 961921131 4800334 948271142 545691410 703854633 310024780 719980464 987057377 991048824 566627850 729751877 245805223 931347525 723432874 975732897 887454095 929798493 401886857 480723892 607005093 608173706 833282587 875264630 44792726 597357059 229340664 772378913 714250752 764197338 229197127 271502630 223829805 410653300 874597371 939678626 672297450 735857211 648855866 708352459 375957371 733375981 133870997 431981656 785016382 877274744 871572270 879821861 858753529 920007697 152915967 461784189 539416617 959073586 475306675 651196101 739908233 966561575 559892399 945963047 186093592 949514693 276317032 311966182 608525430 767423175 131592329 300330555 687435143 973667834 583076551 585657195 623474313 818274327 597077847 826218180 419829212 549517839 88003663 678881205 710839166 865141905 264101777 678905541 439830200 917153705 621473 978277338 358922843 670132584 357382157 434243484 699553218 947932485 642700328 889431061 794991944 924708196 455519048 725355209 966276613 996998728 152651955 945745657 232180560 629221675 236201228 729019341 488781324 827482299 798426888 932726456 510741716 691516506 893936111 914833473 337027377 501788575 62482602 922375697 591076974 795647328 529827051 580376723 380899558 412015213 713862279 894531638 943745416 948400475 137632891 344038466 281012309 353602188 240644590 705874180 871780617 945648787 615191632 626021141 84029339 557843881 548866350 731021728 591090405 598318390 456223821 522881645 67297703 95171336 570655641 937325017 141085465 179332160 847190746 990424655 81593835 109012612 514950251 937805578 853018902 943555400 774398264 964244014 446892271 888754334 140229923 456125004 786105497 868313333 295673198 552336726 479961389 491967446 95333504 534987032 733581801 973147225 54466360 466784168 362556626 728841685 684920197 705660928 378973234 768834943 531703187 889523789 900419952 944077240 243688551 425023990 244335529 988660450 363291052 583677336 231409863 554853876 487205043 714426171 378654803 513393148 533126484 832695413 982998870 985572453 580687613 659099172 823494430 927689507 403496820 836719458 236820208 577990608 692861801 875583523 46636771 927021027 954019795 954367846 27767066 103833030 397071422 861823959 730121936 850670664 439489543 505302517 742001100 963304200 513050535 559792693 144419500 932862378 461643664 523676722 705281360 936513110 835316544 918077646 517278211 666220445 207505017 223534232 940476034 952745572 445582075 469112739 328481986 687092367 322233156 541323659 210665757 784279462 863520686 931785544 617096789 658863516 223751980 600960396 948441592 981128562 971252929 972129441 855440118 865355635 185542012 322859492 907480527 999641270 711768652 801002892 167153764 434041492 761656045 869570716 318378210 893710380 594507582 774909833 280872484 489569080 796372599 878029466 594810475 816847037 77894717 836338875 888061522 900464219 996743052 997074290 134904422 467101599 295081558 992460059 460214953 564168536 599193154 909375178 995141021 999403170 352403630 431494315 271256246 568575764 568196738 580643186 762143030 927110302 643224080 965497611 182547772 329993840 592708207 808070497 33504240 569167213 663434530 685198986 913939973 929684591 987281597 992380270 268465259 958006085 534248026 668572444 62231131 794836931 782826900 994942295 982260508 983003254 111808805 769856731 35317760 823073421 442973252 661504687 912008242 988167937 844342165 944811484 599990123 979153545 673233873 826169773 431901741 814288030 234562497 823391380 12809167 739898317 757466880 762892956 838677060 886052794 771708594 873540329 436070116 599721027 594354083 935231500 86646119 220184144 13040665 993463844 140935914 329647372 249697867 285356970 464098348 717526262 134318624 753241717 255649964 819115573 88586491 458581461 186917529 476683758 529994664 869290712 605653057 846871244 700239934 877755756 10981443 751345303 933063353 933972926 532406309 927241808 446067872 816980610 831751839 843944300 35798270 373449737 325536091 783644018 581780674 940695440 907755976 925981068 934153495 946577264 806338249 851562780 477582610 630016798 376366995 592534634 992527860 993210416 320316636 929463554 358666087 463921512 87460799 464689343 285293441 997569688 294399301 477901889 567819728 999479245 453469673 644934318 189309431 668989021 831313449 874370106 136297574 813584827 862575162 956494424 205384812 973568060 577915403 968179711 29153878 720360007 433434534 780981059 236157682 243109482 584333999 778538317 11364266 771494735 92421509 254922008 663506911 759121810 485813175 492485298 166232321 243497384 426348232 635127674 335183513 949614707 482284739 745539793 703185305 803864337 364766455 545200147 11138526 970607432 417426420 629338665 51141988 471679515 892689018 937454530 923979776 952817663 378002407 483737011 934301869 947351707 456511437 703098119 276925478 582477607 55460856 899502375 600388930 860261614 10670145 216043331 376563383 401727607 323213131 820193004 648295895 811785381 550720697 818371069 25774775 995505291 183500242 645604836 182701811 500751841 554999967 703951274 754242428 861774105 947341510 953512616 715666441 738520859 372844984 791131300 2345364 735560769 685542758 725314705 345709296 467500667 236357686 663998056 399339150 663391958 412775757 811907935 261183306 645926410 414772883 599277771 889677629 950888160 127823633 840290134 868023137 920232648 757680532 989795205 633366946 835887148 787027598 976939526 844166735 851579560 602892397 668027110 273099246 450537259 604461064 781353967 865381434 928624814 155517413 432820714 357544536 404302675 792498119 918328743 148758656 238793003 345796000 893761497 269367881 833579663 856616129 940686322 280237254 618242368 528640422 863419402 560266556 591677227 758226998 801557308 935031747 939103426 728020850 848795529 562837602 629267772 642446003 715948992 375234314 848696387 979269570 995473327 631405790 678193882 463106798 727635110 508986272 549199692 557023447 734450872 990234057 992677004 682513698 832131162 363080677 392261035 842005706 863801302 789014136 881957015 646512238 646758350 170548419 806275934 965052761 971252536 852160439 993547920 887702014 957296102 69336409 955409088 69367664 250033453 402376430 822017862 460008255 746922785 817409176 860094012 43215762 567670978 79842667 835850336 161399768 512188531 713066137 985913816 576896941 673634903 913020828 962672278 729311766 986532975 364946977 675126048 960060620 963685727 363655601 599106441 577557945 871930962 906755269 990362252 72915316 630726036 165555589 259134140 925251037 937842415 309439908 488509707 971307794 995519130 86487844 740976449 695951719 855168815 364338651 653517542 208268545 788277054 14497948 252699503 919952033 986347386 4662357 70285783 539933835 656451803 221932253 917331609 314902492 480194037 112362872 922566886 526357028 534966868 939761629 940908117 770753460 938942642 865620001 957712272 162043381 202887127 778675981 850513634 974711090 998696709 657258213 839667146 724844666 864244235 874717921 877334737 650538095 887132219 453346488 469221455 173510130 415290513 98070184 292822825 138222018 168629696 155727053 966904987 285611738 692545529 209410916 859869049 461228380 623212644 590328348 788214628 368084382 942957612 637797920 761106536 322131089 615120427 998253059 998645990 146657864 707750814 884862088 975345335 246674671 362674676 532900337 872560981 515252005 837148263 502381414 886157840 681593598 991238181 237014101 394643665 889992839 938415088 994870104 996207959 979964972 985341643 927065121 933659627 477121191 758439281 647093797 740334811 234687808 879281200 961763134 988725762 233749212 803075944 873812895 950028208 879270247 964485118 997338069 999427756 586993068 957834968 902356626 925142230 322786203 635099298 229094498 787007027 51079365 638449369 847117030 976184729 146607808 869099197 248864335 735199283 207465923 874210830 505354532 560254647 116205151 433253205 229201554 910294461 623480305 643737243 849704115 930525713 275523189 922185850 232181582 433627960 998053459 998551502 160257948 461380221 481881568 497861633 115725374 119153948 180995502 357151598 857488409 990704525 773671236 999325614 691102051 776139511 403596099 864100718 50090505 913572824 340881435 893536054 419381931 484236103 212742926 905562389 595239237 944201326 734701617 913717895 564838980 670344598 814693219 817785094 361082342 471473795 490286253 795553869 756223883 971016097 638744818 779370513 363911845 632220297 146129162 350814753 117347177 845911928 407367364 881825832 508647095 868465735 879394270 984442953 719594670 941578536 394856358 510784658 863763791 863907591 556043353 680202508 78817341 926575009 432514016 583881324 197750880 206914736 66016619 813157430 253185030 879387906 499416281 653337902 228378264 658784237 923770439 960571183 794383934 964480060 641511779 708295818 257424338 459567652 971236053 993929588 585995263 600544285 630299036 752213762 30893706 714385786 894606690 961393570 383853983 505340357 558294543 739392562 517393478 951571384 901043111 911425550 303688091 604005153 539706803 802008133 406842620 587368412 610401411 848470829 990766157 997878924 694898258 836422022 893457702 944144471 798664604 934474934 906218153 925704625 259598667 705924352 935410901 956191890 3031438 907163974 457116766 918829642 512968625 784328303 301733550 308119684 241835380 801836552 756328106 965817345 466722427 732334132 699469359 711507631 11137460 869007522 876019745 897166729 637808145 678000990 184604764 249175320 348351332 428827831 590829050 605006584 292836516 709398894 876334816 946088382 266068405 385352716 611995803 789294974 19009863 926074518 831963741 963346037 652749652 680719543 202793361 750650382 711916867 886340325 114838169 803277107 730967688 887681253 815397383 970568738 313336473 453623006 533551341 563419950 454020916 818531681 317509201 429091842 4247588 688908461 616665994 778378338 140967544 241662585 288768731 829542677 59122118 182747182 98344409 520121773 624518296 742817611 772928041 892873598 180804682 582127578 978509958 990042981 141524791 620380020 8322894 101023146 27932379 725469344 972139318 987580555 465904871 550107944 784638478 894217180 505021737 613436614 489913417 516821987 526884091 996676071 101030143 255675225 899193793 900182968 846360702 921726711 198214652 552839298 985258255 995776854 891548419 922045211 562083764 726256055 33752496 446144321 624651554 926085532 125416443 139157800 488595785 929471458 494625175 975694399 3851888 797725335 685606417 909194186 310825801 580039191 311190329 841030969 555136091 685803631 180191269 709191827 335468244 636728219 182066402 525714011 484834019 919242243 685762066 877958147 644920478 868844385 848572303 898982536 420133429 944073607 166920848 946511570 102184356 504422183 195619165 494918216 492281795 543743241 858725090 989769414 917468519 921402511 717194354 801771180 752061439 950702502 729631330 859777308 425417097 585554068 265290330 780038811 445868304 888157883 475470332 528231218 820769632 995328925 911032825 957125503 375422051 824650394 122447472 364255350 105571946 592073915 743670515 937183084 410071991 595100726 265086028 733326224 841156898 941976372 184174378 466404356 330701309 724151262 812978753 848213472 916562927 919993570 546464172 870559760 898931192 979374038 724894490 850208765 958970191 982403937 803695530 910736023 733666086 824108474 57891169 439272950 387167923 425212587 732851953 996864146 578548075 776514175 154843569 651449899 525044298 556041105 223730470 924596021 331725313 820928755 433216013 920553812 882305146 980238407 33448351 752728193 812330954 905032890 894193682 942119953 377023325 424921655 162285165 447290226 554125105 855000922 925420894 939342172 302112153 345702417 458177282 485664334 475923003 945817621 421559281 775422645 766093586 778837754 902621411 978269872 329223978 781263076 660599862 876727049 289726725 401334771 853459586 888884497 189475839 538224185 758196428 827879536 192424296 673569208 352359051 878926428 882692419 938306247 195374216 450684992 151778698 788395120 322935236 502781095 897330000 976838648 239020931 996612586 395048866 406108710 713277615 920988348 834207571 873957446 830816793 988815721 10130748 622983871 707841531 865514063 621444568 877545183 276553770 943452030 699890247 973449830 74653642 745149522 373153675 901634945 500902136 727417180 769667914 880164890 456993675 878265306 68420694 81013391 805846764 888586122 974842429 977885044 586771495 650628499 415406768 846840917 321700728 800586777 76447528 764874513 181532636 889815205 209503809 359173780 215882561 334642967 740458224 743851300 958671727 994525946 316071825 548873278 6710333 222974885 703802138 748811122 743843574 775713435 8442150 238637087 45411171 784281323 150317451 284359455 113117266 326460616 792393114 991656561 933545986 986677228 410364208 720541386 609791395 764934175 801585252 983340967 560703237 899481863 213782176 812466718 470122586 484054014 370081466 483099601 849869385 942346541 687902629 829697725 945305077 978340798 298115414 409300738 954517473 974891750 915776322 997660317 973258083 999581178 2177272 134500598 713433217 975496068 529978457 883182387 109304537 829348687 263033770 630840136 917176657 955427627 390098653 655846793 74598729 926610855 914745102 987325684 94179664 922067831 930469334 999911437 529522237 841842642 264356972 364321908 569712051 968426164 421430460 638234732 167599785 279673793 820803650 854574200 774353703 987172019 675935760 724913628 251591 691612810 147597004 871508489 917579917 985056664 309484251 473880531 542636131 719557266 14602939 223695650 290060498 953073525 534183056 746313972 803303376 937871713 854023887 998370366 569531589 887518627 658719503 840908850 671826090 832197102 726800853 847012954 384200348 698668054 825870990 870557233 455169418 475624532 278257291 602070076 901881041 917977028 268041078 330687634 472448923 714664120 600269195 612129032 776177263 861517361 915969405 972827284 116623079 614529834 683566269 963797557 508221919 578347089 924009432 962679469 45879473 930025870 548873631 579942621 798202680 922523950 524340038 545095399 564823213 982289746 174567149 462224050 823500360 922174566 309368320 981287919 225050948 293927921 326231448 626064290 425151073 689719313 137409190 930302092 335318766 626019354 437311159 451037564 340208613 655964879 207188535 596984711 671826757 783094682 324282858 929326096 884617343 990953525 172318055 594768326 497696249 717934562 373832554 419670418 408358328 855149100 349279978 407813467 772102163 971482045 398092002 965740627 96219733 577835983 536156315 976547619 326641781 331685813 202354218 584591695 845377838 959762153 579077138 868102967 394866110 438376158 504699647 948600468 262141099 268261634 775333393 848810554 187188212 417393276 837913968 918699964 506166264 867770924 204008241 779386505 188331974 802696213 630932327 854135484 63178377 868237098 279728951 441217612 828925863 884427945 559440006 592467117 470673070 791106129 760454060 950088998 46213047 448376264 220071005 960365823 417602642 926015966 505314902 614631372 435186221 462493947 20166729 738718017 999729916 999857192 172604293 190784119 112749136 672522939 842711281 860031146 8210026 501956104 185377792 495140122 670937593 999222985 725467317 825705920 173971833 966078164 408128094 696963380 502997897 979712732 310738512 955974257 768265363 876634017 595957525 915912723 863156015 993348627 620056234 820171735 196619857 826667707 179944726 437026647 382494207 721044531 893584148 960365469 74364838 723302317 984458183 991758861 272270569 858277303 730447572 841116397 228377920 630563522 838431121 841182276 404541138 758408632 113333261 391873902 932165049 966803251 439937301 532132550 612787424 646344884 78198096 371537347 846721682 908775134 12189027 838520577 50787137 409259811 692773373 863559785 522402398 745878226 996507471 999888377 179388794 584195327 262488265 934196188 476407747 652556217 751219907 802808103 653793756 903729288 203822517 586650213 42763755 427591647 534008009 623023608 129974874 316301210 693282441 784797468 288312591 909682924 82486724 217996419 139058495 807252419 628748789 746769142 735584152 880246698 705393890 957575170 283975694 995896918 212424826 832375425 501215954 669452780 796196954 973387989 282373474 643793010 434713103 603753592 762305112 860018164 621178037 853513843 712830458 776341375 26044730 664459982 206917146 873897967 155336744 490765307 521010817 680465912 995361256 995676297 243226389 420466333 738544791 774496230 557927106 810347045 651721792 772528528 642170413 867597818 6491225 984545850 261717497 842117749 878062596 928277129 252058453 538652261 701958370 961232523 845565506 944740584 89969332 186195187 227974363 457527729 535866002 819232147 342577993 630227273 34584344 855314376 628704621 908795234 123105210 527283020 31965240 786982967 579753511 896864272 443723706 471015235 901675852 986201549 362138797 775670034 880667591 961493580 774916925 838390893 461162406 680574587 406761517 733891112 37977442 132468534 131136359 789025563 396841689 420443992 103739138 402554496 18624379 802856680 349241450 673190756 367396178 844083311 400511662 577900170 203210059 224351690 822555129 872172775 693983176 911636688 163654378 290344908 924290146 962213985 743658085 888750630 391607779 683741834 864566862 915954917 756002886 785516165 6008093 397305034 909656051 932720958 262046526 753752213 528801549 787162507 535813260 553618642 565841002 583046859 220791553 518321290 384342022 730317262 290086327 700103187 50090634 59198367 864414157 909555123 455074112 681634000 374966159 505360427 140283877 596044910 554101265 562448619 623202270 672204109 905730510 935846348 820612664 944202509 951422511 954363711 749351076 852662692 27358507 438647665 92864101 774608454 703967139 709686175 771022617 955983941 392019787 974682751 873403138 968254883 884913881 993216942 469769104 564537243 864389433 898371935 710209140 874362832 609173838 960939377 68436690 496002419 517997222 699182451 786702154 843175964 313891999 364386668 424849004 772099687 187394898 470916116 143040190 991208152 967728553 986260913 190405237 681162772 498050028 898884944 20892459 467100281 532539416 879749612 528224447 953197894 458922925 907853679 710262932 804338775 837949945 890109874 510891686 804995852 656337268 705846368 265934142 769172704 174877052 310023540 880499082 994326805 758345454 983833443 733017399 927274773 5852347 835371864 376907730 715507305 83206630 322969233 909417225 949324111 233922321 537514629 419715713 892008175 59292554 288166004 756678371 957230890 740364832 782861967 478953477 511333251 331723665 974882026 689949814 941999894 366066890 886627533 413663108 699554221 320410527 909288641 108933178 237596448 582328176 864641859 541433373 709776996 747161407 959148585 579116646 622276997 502614 620271992 761893233 826724330 588047804 960430721 262723249 677768892 636474342 750027819 738360309 750024127 791673071 880269518 107877001 398526605 444354947 805114264 810811911 998929221 501926491 646441788 916677850 954281529 63554726 930157182 116593634 441708183 527734048 944313625 190961412 236694404 693393072 951152024 116864271 730477635 452749066 830138956 434184092 780954146 440270622 969833713 442781260 960041808 242956270 559415110 981145933 985424997 603446966 714370860 738250642 756947471 217123349 524668288 327360441 761493266 669602501 722296517 927783889 982586209 151263037 407582731 738055420 763563713 259596313 541173306 222225169 883231223 645674742 915596407 673581332 764962693 989880616 998460685 879695340 893791937 782492475 879189058 719707778 943919779 405017815 492936732 413215597 922407586 360640496 504670849 777871361 955471641 152415226 749872899 444526811 650792552 305887921 747731606 406504283 722373874 197790124 244797010 785688017 833591619 789350286 935180704 746739116 905483757 982262356 988497799 120713495 239683687 2199359 715548673 372794250 673524951 523307817 630400111 95593235 518028701 944751605 962997851 982562107 986409355 59625446 452386333 613431123 792382517 351201123 471289621 278423109 613658740 644508284 678827872 957711440 997912067 281028551 903422626 465275433 558411270 891604756 932671122 414229144 565469190 24748411 641772150 905572701 973567062 385570242 896286222 66065903 574309718 895850618 963244347 847232176 993609099 507035861 673935037 231546097 946561868 422696125 461249866 441784744 903636685 372503270 499516016 158301347 777352007 869320522 998341262 598478692 940890757 120420531 567990576 806706292 813708058 976382728 993360123 156640164 243016922 22098883 331379370 252446042 478094405 687877428 778925249 31953116 960919173 341517265 450354425 224500800 864609729 443141526 866704846 710266920 738962166 130992417 154524816 144595574 432198114 760759829 952738686 329340251 833459899 490906133 929046844 200567778 374224427 354018510 764490212 801096422 995087183 903410153 944198051 683885392 776891033 635424065 675712555 880327254 963869775 219259374 269213281 761792708 926924945 806025617 901345431 782575233 983627685 533355363 785338703 956001974 969825574 90732777 738828073 25327732 420651950 798584044 912429548 608434650 829960135 5091234 371722214 80458266 626986983 66037203 760365029 808203697 823923394 138565825 433815759 907171600 976146273 609698904 978980221 720576952 895867200 23704246 187632830 547167068 675044757 689759677 816719415 270933726 300674533 408257566 745931082 34340831 965919826 370748685 592577359 814475441 910271838 325469034 778338689 260064469 616340203 179371955 637788854 871878148 874522167 856790344 917185679 944141770 948428155 814900421 845012843 822257824 957487273 225942683 551718603 130109653 180569610 416743295 911635838 668124314 689345078 953233432 968409972 539947782 873634887 175686374 651825537 60909670 247458806 791065707 873068454 507903591 911178349 894992323 922312153 696533532 868452478 910199280 932171994 95215904 864784610 968721158 973455695 745132177 808200431 767616505 946726489 104043746 410642436 863552794 915568428 722728960 763934108 708102058 773691315 63149713 463937202 785974383 937346171 925916589 934091665 614113428 857908727 421390672 511046027 847271468 880804154 832904436 927946433 826099411 958520116 409060757 864775978 349116778 869905775 336650351 913148810 785463591 941796506 596631718 694584063 446811846 623716308 607007728 613384108 45669845 305396565 61473555 721904639 934769359 991311111 591425919 977055831 905988621 966277807 716605198 724124595 571460070 911086750 334345409 372237423 702267534 868857986 440498659 452339233 393438324 967995574 920702677 953087597 765823290 932892663 149686685 472187145 687114810 886360966 109150207 698217242 857434593 895695217 16570944 156517430 239588691 345827665 136783749 369136471 36831640 60169715 581244819 592229649 542733490 914062404 366031678 543783276 295183312 407105525 761914301 785946820 875112378 963037830 890107223 947193489 715739794 997479604 200642628 831186289 650283341 981577434 751737749 922720481 992405984 998140924 994468425 997966895 60639966 896333443 679168098 872340739 577843414 630039266 502884086 511790375 951598256 952717879 684218772 722682711 331596723 896762640 578478573 634977545 786608430 798654358 161482276 981272436 841868387 892868396 984350627 996519414 424206833 462492940 36899036 766051517 538200448 541804432 881531289 889487562 705896423 901795072 524719680 670193690 727879373 747828960 803657407 993105151 360163226 595382713 608148516 847078072 950840533 998347440 108983455 809925593 356082871 587234333 393817853 562874296 853083515 894857154 322172622 917761530 659424497 971485064 103553550 623335597 456469347 495234792 2095301 370272094 678995839 714927943 8714375 69355035 637837459 885303247 178346246 793950250 444077610 794135617 145585166 628347492 702284402 890860729 428770905 746172052 821372354 956460098 396988299 557963116 868985022 870374687 606305217 686419454 45102933 564249563 126153983 745149171 208792302 750070156 129285783 930195319 948601450 963515164 428271822 755115492 65018449 127784882 510325709 950372587 257200644 528550144 961271485 978758860 805458300 806210764 527769303 671445690 550218576 730387394 810723635 838971141 581621935 993151663 428224337 911534344 983366146 990880068 399980818 985251967 215343668 534059312 882403814 909939892 248368491 865916252 553663782 930163616 579690708 721033174 892738634 934438007 551149893 710347757 99086624 812468556 388283003 396769282 107613058 333568720 576440681 870693289 628505283 819512518 791420266 800864720 103471674 578916194 240757564 466164606 689237835 871187518 919358768 989286530 481737455 647504338 858364208 925831997 807262731 818961648 689004434 903212025 167814926 697725217 692731050 863049494 210887696 351796661 685136148 721323971 966878849 997570307 11362195 484827850 386015976 554460626 850568833 942493841 390350465 742176985 877084433 984406594 43914128 987191008 657370559 928792049 327453718 401812186 919857596 950345685 438494793 639171623 150205750 889913476 161816855 901038199 80469966 525457587 702874694 740774582 362320004 418334916 866840886 939627590 180580945 326933027 466734319 731094253 787867925 943774521 601898908 792029974 946410960 984939151 48154134 565514571 239517837 688461283 637317843 842316774 806997511 845671204 455627586 468048084 337187815 894502212 247397138 309524811 715270396 876746607 845383808 900860151 188942323 813578076 436113986 504626614 384967655 695077360 593675888 732207016 855719042 990105658 886281038 977902101 334108402 337106292 578488223 649889458 770512843 973918474 821229115 994244744 338720964 638881820 820460559 834838403 123856435 429637195 688016511 858875952 563090929 599719984 405977913 926858091 162856691 561791192 24099432 356490405 738476499 965470357 128264316 586346064 374101483 517717023 58716342 737353465 775463287 942082095 907951353 990273817 585843850 951741106 100637621 947052961 724016218 989010548 644048 6374713 237980388 895649443 540112693 749094402 764880220 821975913 841725631 844801861 709878441 888445405 417584960 525925573 596442392 893429198 877182899 907429895 587137722 792487460 700804269 806856246 69848373 788325624 378669670 783491926 643760037 915530902 755013191 854769377 965743708 983973849 282770936 423937983 847100046 909471121 888433955 998026566 166496216 956812708 266496071 396073018 555311516 716504922 939332112 956543281 468309182 645816229 393021782 707799208 73779969 727364899 255633601 404845066 626316128 658447729 44402914 710113403 858502885 896211360 782985615 974074162 258048377 612242179 789420569 967860833 126551934 605443856 451159812 974599294 108538016 876145439 863432508 993213224 3495739 932549859 702930950 773050378 81730151 961847323 155239307 414199183 143034281 808190253 295941125 846627603 619613310 715568053 327465873 501581659 796507967 817414768 158234875 562120292 934737579 966019458 300392296 513457356 340530141 395089525 657430644 890794798 763585985 881667534 379923022 862345947 587754028 720932658 761944157 762522410 256095014 532244528 763356945 770747396 293324178 608273776 673307140 714448049 771227639 981411684 10002600 848194869 410313016 878280705 646677962 857654032 720207303 916564397 118196424 165816673 492180478 992379597 236538240 570411343 268499825 696835913 38598119 287370946 584546705 758340587 243111281 825449954 477025134 555192937 310767536 761934692 899628403 965783596 552678221 720690535 737124660 783935199 812665180 839379536 451653310 809421282 714471953 807621875 739491756 897105391 483263279 703494082 255145873 524134485 379163475 909045727 921666464 955758828 711132410 934447346 596644240 673068572 692988897 919352846 422784132 490541265 55799223 164151273 901404458 952071150 309529502 747053216 415775059 797826758 958658418 988489833 429056264 629858083 339968215 834824299 5607450 897912681 198281886 427354190 779273014 803217784 935521755 940104228 846952112 968408655 254512634 592924320 814748062 893932919 931105763 987327077 134420975 797878294 710809849 923171165 16887793 408014389 876680458 984191020 306705819 511422076 974038737 982401146 91804653 836423927 327157504 421589262 207939586 471826840 316788155 741844808 370928189 724807284 334079739 611704702 806905106 953230293 265322798 423667604 172222492 608817427 230134611 248604653 81685075 326938396 967261975 996792019 580827655 647962623 494365966 903920741 882575663 934474554 78163910 193414945 475007061 849605383 192952779 244663224 26136311 859870747 406762392 885043094 666033584 810238497 527866635 747271443 147995195 661942874 704835977 894972520 256835194 670798074 277207404 552224074 452228911 694208633 446518096 663520243 361074377 701760065 23539639 330755599 967524854 988952299 92404628 842750244 575625391 725651239 320699328 578986895 767148515 857275772 730957581 862756364 61647745 669560879 105830239 628246349 335831846 576614592 82287863 146956309 130218306 735259498 61998179 210538719 602115476 962839350 525793290 879208126 224728319 331140142 721710378 808297239 663207102 899908653 996488175 997812999 927921607 999645221 34298844 46309999 561536773 804925108 703416081 846297246 55989403 466205918 177667838 805628895 907434482 992422831 465258154 619082539 80178530 787010417 739858859 932322265 817839875 946220856 298698311 990778470 123546607 893079483 368541159 723133202 937003999 948504802 595535448 664372378 605092108 906958174 40060220 295307176 444886798 493448942 369075700 835578544 404996274 582808426 459075745 819815595 989179984 990788349 735030561 929547985 762115325 913858418 624919114 794478284 309270847 807014130 711790311 851557752 214886867 535243037 459309363 556213385 181513185 270236466 882699973 921227342 303885665 657412357 326315186 487498711 663458294 694660746 658498166 773183030 991886805 999098226 455697285 775408732 441099089 692657060 491213047 831264960 352478687 876258832 14208765 270626769 779313249 836683955 11224657 914833896 833852210 953582477 22554277 813931738 598969816 886194562 300123866 674017959 898897149 926480194 145599985 751105896 851565775 901278151 474186848 726988851 297502163 523080801 965346775 997929962 873550550 889838072 80602922 173211812 499761416 939685217 776767842 849965446 237102926 790318409 357619541 505505244 335157985 774004726 655515312 796326635 71019496 486303312 250808546 578605080 426159301 771251211 150517639 706179173 618267046 850856470 31231986 153513627 291064175 729485511 661421493 913667000 774850495 980241239 261791394 976581036 475409458 818671119 830000632 973971446 918258413 928829359 817998697 902807379 662764692 729907417 674178877 878954832 288510656 646750459 515972824 717041801 202043512 295442882 790378200 817667580 374685452 425096862 761570978 880348841 604462166 862219843 630953862 997565003 406733068 794541981 666422297 837685083 968462430 973978716 569851405 721150528 125073399 137636461 232093987 440766945 371006205 919501167 65917260 958550263 584038789 777246981 921693628 969799678 280602675 788787800 936434370 992484024 683627597 914477359 152807938 295828565 823995246 939903317 285405329 544906713 988318669 991882594 991675844 992391650 535816289 995299193 927452884 980149997 702139656 865423685 300900500 509183838 298384145 933729862 478914849 490820803 483455389 736871290 436563518 956958738 412340103 501409567 35742503 280512069 757025295 937929369 82397855 945920693 302810029 805543628 437315524 453715079 178761382 450963436 544366260 618591104 114095019 270584261 690223038 707231389 319540607 883786394 886175468 961703506 409237000 782371107 448172459 899215544 655490894 878730897 599688181 829200447 43043133 461342306 629302552 694675211 450038814 873408600 437592129 607167675 304265121 383086534 877493722 911857630 961159173 991684115 529226531 592312159 391043329 676934601 625671624 779230280 98945983 150479009 672987651 820082681 484955378 569074674 764740515 837351716 451378628 932365318 847403591 874509700 480983543 866610464 930416101 957371406 285240657 305876323 556757065 634515743 376940209 537380079 590038733 980881932 678900969 941554036 627785838 774739178 416228714 569959367 903139064 904152578 86732396 871426716 874908552 987525601 419056981 737056093 22770106 592363550 875896456 979397948 874314355 882535885 515924340 921111305 817192172 854265330 60498638 988099076 543259665 926717357 322314539 874706369 852484809 910348704 755101458 824908770 336495630 984152397 958826977 994644685 344672316 874435328 48681296 798813376 916133492 976051079 148982807 237662894 185296380 556744709 356375892 832216196 187774740 809982922 873709083 956633445 537882721 641908519 841747456 950850456 587475238 773772154 90137135 396226312 745488211 768499043 455012357 994250224 418163339 689086182 172844349 282646938 560029306 956779400 4750809 649031447 356143576 809825400 868411614 928173766 690974606 844687638 55075722 575680473 107084637 347035142 392927525 541431986 972257147 998894489 476527966 647874259 51926938 379331590 70117180 942485962 494263542 500326474 522321854 989096467 828784952 960523751 216902569 566445495 634434850 733396766 782062766 946194781 991023120 996588414 651507170 816998493 137606284 296791488 988382008 992157470 186144251 327751104 497834412 739596488 794083887 944935648 802832714 862429154 985478039 999242494 917648669 934716091 249248248 790898969 474993223 548749043 357363179 655946440 879242414 954789055 730413772 940345065 876410957 879173274 626723663 923913116 811503834 839880215 912312073 955331900 730319710 848931890 486400489 580950163 917497281 994385753 233135362 381070225 645552832 723625572 94388642 392551939 425294758 735619886 699124697 912860217 951950913 954436061 630717537 808243791 43577810 271241735 963377893 983744371 48234793 664068018 195371119 768748106 554280919 692742195 985330632 988252804 271036490 815395552 396091019 808223253 38403450 245159183 73767067 710001030 253562139 555799903 390106343 551781370 889559416 906298281 798040979 955034030 684462553 817456779 155787339 914820410 331905573 752145151 390214034 964207224 163141225 966868114 459159315 631290315 746808439 944616733 553103551 592210102 662492945 847263003 751935650 803714116 542071157 776484338 500425613 941393280 798359347 979934132 801438398 972301786 705729075 710798311 773198798 816446740 788268736 814140361 214920223 275918860 657712872 922421218 4229369 916811128 406576546 922992019 909636969 932245280 818410618 919179334 960137672 997255366 898605346 901749933 305958385 498999999 770554173 864641250 328693673 632652745 400704249 621777729 420637223 459219367 493328623 674455247 397774229 757070239 686052240 928459102 98687699 899915885 456977355 639349201 165225910 831297723 812532161 820075092 480418807 825286331 597871540 748385255 990732822 993768131 392419391 807901418 651513508 690811732 779949867 833442270 597772612 765316544 167124175 388588930 439897302 754707651 648749366 882352146 138442217 912187946 337762881 805011817 485214821 722282712 898830467 945980148 845487126 953017047 220730533 375421013 143641270 449485176 722538713 793152551 897832672 933537413 116554533 131647659 264560045 365291127 262859243 794958298 567754092 605290203 856734811 905914673 234094336 444290266 812332386 967886209 45495799 278456106 755343947 891888710 934455489 968638740 556098945 613048669 515987153 729013581 294663313 384368351 876869362 952188170 580933140 761853265 212270826 869991091 392542009 795823907 936593767 969331828 366467290 724885958 424209003 947209802 721851532 910802849 529175554 582792746 293393645 722609429 278834701 915774601 279481126 549273990 275350532 323991219 797816634 912920737 781981049 802916138 999693577 999767819 687131584 948907052 617985700 793188235 922813111 924064272 637022500 852947037 673860967 825929791 479196577 556918151 302668303 645266492 37223134 768824078 905491359 935259400 14043136 322375076 568386252 961602256 778778208 802287498 283515318 871914233 386767057 969109854 510626312 998365429 750432032 893776511 376086783 841876157 650199835 845366547 283792732 306217857 196121565 851768476 768167964 853306905 912197899 933084817 540632573 915302481 593820274 697613110 236257800 807122571 676029257 953167926 70039062 184324207 830470220 837972985 329828399 938408241 416701315 582701073 578324197 849584453 714894941 718432725 856950907 999457684 434868145 836992299 797668607 883632354 235160457 775026794 427040230 696055270 945246941 955732187 325034804 769449524 141727524 440327105 901310 995382718 114448927 514324089 542188216 866416603 219035749 926532460 837798439 884426442 629003780 745366279 753758981 884412323 273762102 656493754 718048153 813172096 799635693 866296312 71906291 267953449 528706414 583405830 908187736 940810121 813623984 874965891 467811133 519152883 257523851 956001598 483972740 577344662 922697505 952504259 431141906 541680815 375168410 666064429 243715032 340881791 487673522 626124420 944520578 988659803 912220145 920599121 81496545 432809200 631077702 878561478 593854231 910570380 622389858 882601036 55693287 500777135 996080973 999940451 880049332 985196731 642879977 740003620 807991228 882676028 835362537 865729453 494481096 885208459 553445835 701731081 3085322 241238618 319613940 666686051 830953783 952666281 407472584 761959923 40514086 478868835 709451172 752146838 452811409 787693564 426978840 691376424 211874097 643609454 437561208 724342632 615331295 801077521 29837720 237978325 958643782 978101716 936847664 939193236 758968256 952465954 679196680 904481639 145915224 156544342 802297482 849734025 97003279 711972966 949690935 958967202 537535233 680044596 276903797 724699576 468112360 651055447 236087208 522032975 29096236 429180091 863682733 964016005 838747220 944342293 564507415 632331966 617600352 824207953 449392526 652710390 581627749 651703437 350160456 926179140 888796949 949329662 940459644 988866873 142855941 610104651 452689141 517379866 829395574 927601493 249289 761149247 736934180 900227474 844387041 894587728 554157143 911892769 812145653 871484227 573331055 892897819 351737509 586046253 356503429 820851486 449416655 750985457 639355141 680412739 725561108 957983431 240513709 601134011 74602939 82564368 116689579 880802010 602524789 919424112 752262335 972012337 777148328 789125116 888748924 931317859 955047201 992264571 794654427 886932707 901575117 962560607 657261414 732134817 945053272 971095777 6249653 480216074 62493389 81083998 694465678 696839149 16071660 723375794 598999785 616746159 916435290 988211825 900525948 996926583 623233963 763099182 606197089 977232493 48453708 544633408 520491615 609553068 216637641 912063579 842930420 912234735 374948734 922342501 161816642 561423034 195117411 669402506 586891059 904172976 282192410 973756384 144600917 443257213 102206424 192407819 523979646 996741367 411122180 738741843 49719140 204788991 180412945 982314731 298821283 575170025 669994809 678201831 568722946 908189597 869959991 964139404 25999464 207716246 604484690 963245729 117499670 430643612 721557603 737370735 490734847 587535761 886991844 920830180 634097563 720042232 516012652 933208263 167230298 263140419 249910064 558773879 212246821 968002525 745437303 794403313 635450449 927078017 232936462 518339700 927194148 942864333 902915328 928132271 995274026 995683187 633008897 995304455 882837227 956536059 807081533 997910726 861273911 887262569 558538738 985380914 271880718 786130046 973505679 984490037 272881991 815053272 307621482 761690058 88862155 154216131 474876122 950315229 268912683 521692454 47998679 166112145 948103001 966722767 79693009 720353145 83456322 870063360 286985765 465959194 565327534 840666628 335234853 438641264 891098903 914234096 946782942 971712173 630448473 792076140 998550066 999662580 805968525 991969188 750611473 768774623 358278129 759426410 961143669 982735185 848167630 943823792 109422776 153493687 889369154 910976025 87816140 954510463 866606127 984393499 443908845 499677966 237609424 950088515 197828112 978217980 976389722 991328707 626391257 902446534 824277229 911777539 240002134 849339666 830276865 996311946 531878968 612680226 845294635 947187253 858130804 997908069 176976495 617177248 175454712 353313197 42446555 45924940 377958143 539969484 408890629 542796934 754410737 870138669 642356330 785790266 480367950 774318738 933665982 998642801 957832898 997462060 818808376 857670843 865659445 941717865 905175773 987274803 401169117 912858478 521050093 917920158 285283248 763721281 202304981 377818521 383827902 574390510 329488885 807854091 85811862 247200087 652274461 937713974 505365818 839052259 245437302 380590072 894601698 898569983 914600491 947942290 11600890 280389305 105007832 594722234 307479575 791288200 348271932 529717669 527121120 682521905 674463477 879903499 660833085 789797782 309255900 991353028 551962645 986176504 36319366 690508026 366877812 785044434 53270248 739399545 749153828 943149910 940107594 988973771 303763821 539493364 164521367 233398011 278798999 811125729 435258490 913326100 262405246 871751359 796482692 984005722 856197151 979663003 892867887 944351371 286899890 902185779 470021173 641667121 914173036 925397752 312656039 815530636 247129095 319211117 188226227 311615460 959622541 965983490 310559006 557761342 700493456 767526807 297638825 568902246 959634427 998966173 557886853 970960942 136964470 490796504 266398000 749957622 910117270 970094140 960482887 982483897 554217528 613589915 912622505 944808453 52488189 702727199 185444766 611914518 34097479 904060869 718963237 719076574 194230250 595117941 907127499 966633486 283106907 572015098 384854808 839794239 510502818 523423522 438038279 766848856 810592831 846716534 813909391 975076676 302853017 358760953 481157473 628439148 870875140 983277687 282872512 945977978 73180670 425895861 417556934 797795943 246519312 262005989 868763996 905933779 504963228 702364371 771227054 977391439 685221310 726690753 722848262 818205385 891745531 981061126 100597886 116269726 448591669 997969370 306443968 918132436 71041924 790048530 695901340 908018673 978780750 998106739 414545976 481138516 394427367 644092885 151918466 789660472 121802173 993236293 69911468 148783211 108095538 904402026 746803170 763138383 291310559 388937375 883770696 896231857 678048563 825241792 399368158 598525919 635654034 820416253 142309831 860783891 688179383 701349016 360465019 536956769 713036588 725526304 231300081 870376648 176775932 533454662 34563723 879266045 528650996 592384769 746057361 987345568 199305847 321300643 566277273 636668799 660381493 728252970 634555623 762923530 286238759 762682758 21414028 854628306 384183417 530536223 898833998 988037583 347956731 958955836 595394119 874243555 218999981 541552832 513628991 896893753 295546721 616004885 697017725 725422937 674526175 976881112 346975457 549523789 203473912 408620040 521811389 711398819 611510507 939719334 62733034 947843985 60382830 306205035 419831240 976469593 580399660 702571255 42221532 882238758 648169199 801092574 439587187 594554338 729786895 861349319 345257283 629024297 958463679 966712850 685278398 696254341 586675804 953798243 361135537 797055629 526823009 539573530 918676620 938760310 201835287 669276905 462415987 981113697 313679172 601858509 76755957 484046723 676104822 738971636 192792454 814596030 352987134 811260401 955317174 987866655 630858734 720012999 718497642 762522748 442055478 781230569 763053554 958436662 220913918 755720803 104649380 568108893 22085538 507540104 169480251 503699061 966587824 990714852 480734670 886055220 164931388 668357798 970422049 973505315 962631720 990879325 636632984 781591796 781525397 910726338 641208157 805664666 510563082 787345624 407087914 423624189 360241374 544614061 957921570 996041603 597763242 766797706 195383375 267745436 939596046 989545960 804197330 929637897 306357205 872616407 946477160 959187325 567779501 584636089 48997124 750947544 877643296 912183736 396507497 458718324 678485822 811439589 627508023 951849861 608733254 712868124 650532445 751799709 227796883 315705659 466263870 618499793 109889883 473777397 76612046 338094097 260369708 420957492 41701526 985595367 750713769 933140726 639850265 749518916 17238279 191770360 3643557 26892192 956488987 969691595 789160485 874955141 137121431 505040089 699976329 757129640 731541840 757241537 261640690 951129280 386779416 791571515 519487408 558504597 522808050 700690421 979379717 995877944 610906134 699772225 872115790 888655241 602794290 923048210 767911956 775194817 437476824 498825214 590132743 972986922 80408100 992221809 930596572 943042848 994820654 998555264 49786859 938500753 471582614 821571526 949446070 981198036 348277401 764655524 944984372 978879571 456509399 793135555 695603834 697801096 498294190 870229062 829104555 931935766 50960830 915480346 551259168 956340835 729518320 770553769 706165746 966244256 669073847 929834799 14378247 910077933 597243785 671133648 460175550 836472244 88050230 594261788 401926202 997520340 964830568 966517072 629176106 936789280 120235570 365292841 240159293 471632451 156223894 326336717 207323232 241563157 101744704 793853940 539241000 938573834 363417718 977437434 687882608 837683031 219491322 297435706 649090094 776003446 870703125 967722085 113729787 814749418 268346566 412540154 550424560 765352722 836003547 848781336 172048342 955357419 36743161 112928931 901962391 940094313 687994788 867509247 49308743 213153441 325566492 942174488 136518909 768787776 371759157 915694723 913717499 917773861 461170332 746051063 194069810 615376765 18639456 549422612 743952939 764024629 484737734 759297444 915035430 997835387 127504921 299216668 670613174 992971663 618312391 716101670 698354096 960783069 645114783 917712438 972837107 997049028 778182302 945257942 628899453 784755842 610153633 730824200 442563936 981580509 210953972 912578595 465596300 856284759 679781113 968233542 780961353 874116348 11788205 647951304 516704223 750427569 192859626 385468913 35428629 379975654 382384153 659934583 444340129 946885101 521466013 650664911 391932335 820484109 446183729 598567692 443952082 968552060 30235810 725128366 264522196 688346238 37238651 556456891 419074962 483845213 535244643 776355482 712212342 981136818 12904171 554394501 534826249 785771334 360328955 453847766 818420783 905849268 24647535 307087286 44567968 453834735 409191497 549161779 681630246 862869625 153933204 865249508 919613351 966246843 647051663 910390362 282080127 859980201 633422316 784317665 2092557 980277851 550066887 570638687 19155204 229046623 699691726 939399356 370211240 892759045 711655783 919366727 55848529 438284474 54963331 247326574 111442168 158415904 541827221 561966944 790715107 972054141 77211905 728734123 282086665 766532603 353034658 856813523 513212278 797366628 222113884 861466811 10998343 607331921 459755524 810735654 833527399 892381166 121280283 782326874 373316924 561957600 278904145 903348267 537140441 868234493 328685463 546205863 33270963 625942328 624412921 944071656 396501850 654345748 409766181 864725201 1409052 17194633 378063207 591839186 444086339 601437686 993851969 994003470 830207680 941896501 987107480 999365714 977098238 995704686 390343682 834441453 86524680 532715422 316409982 721097661 996145359 997517298 230788463 828072773 154587523 164530795 289494983 349216999 614649683 951767427 156176731 610749666 479385041 752557572 196963977 392601370 774657795 917156615 462372725 953557434 464137167 998394267 482814295 580128240 856699952 966292697 125629112 422099874 170030201 967135759 706504261 851748074 243001424 325445111 840773537 939541596 122114652 173089568 155099697 256355986 310616292 818890106 40768397 622988992 114346921 369045788 818162310 876406198 985282814 985299504 974661305 986694636 582726317 882707780 304041040 835762538 307106185 406240399 378496691 442305046 550189873 680869565 48366905 522601612 229464628 627065577 814698145 971530480 822446103 871371601 135871925 496971132 981908145 988183355 982477849 983907908 710501747 753791944 456397283 522261591 583377442 812581092 189943492 990513347 187424173 948675190 765010051 965250452 84873149 390771540 66474327 142722828 274572425 540308398 909419427 972751756 746827576 778427724 958324082 979912748 913583055 934551736 393503763 432291741 512584997 665014202 917675371 995827127 404338715 870095140 639348381 783559702 470934094 622690225 628167441 743357665 47259643 769038692 203504122 737609191 106268035 219114943 337243487 463803259 670580389 858841648 741086014 805088545 137189472 751624118 183854092 708283212 650775041 972326231 225756442 981597573 575052242 750203475 320001204 466938356 36687795 510818036 759198471 841989309 897035953 952112564 999974597 999975611 852148338 866369177 280473088 654771883 40369176 384509645 509260601 849808613 973466215 987610658 793088728 954308982 403384055 406688279 264366095 493380210 985529901 992905852 72166431 952661690 486681657 877584910 38823506 334143007 579916280 620367657 411625520 749239522 64396062 922600614 752705349 837964424 660860436 708177144 628725844 827103427 817154565 987139724 918648729 939211725 652211706 711817873 785623250 975526518 537094082 895537884 773801905 990974961 510153967 792501609 194749855 485549340 265500026 301187147 20134257 959379375 380359476 772271048 606958847 761453908 585955262 744423983 232947412 933669973 468456307 926395146 986464937 993166780 176716791 833476987 862075222 963420358 248905442 881735769 176104431 453164277 804593667 826924519 924260779 984800842 747545030 842049155 364667805 405422511 652936072 960028340 578697975 815323308 663172378 822149706 866134981 930353183 482598837 663057639 14897662 685448712 46488909 283340506 206050433 587253096 717230618 945839501 635461188 737041702 721635244 909450874 679291291 965883588 241156650 577622367 762888290 952934369 406965015 902575654 868750050 941465792 479015846 841077187 733609878 784890972 678789516 755467830 470694763 657453431 461570080 667751250 966536723 994659804 20370920 981645193 417061351 962049018 888512742 917552134 761791801 763854316 702170488 846684390 609431420 936623786 620615132 626890963 33447359 103594858 635949640 790104692 763942633 778695957 193801196 992093579 826210498 843926203 12531118 33447678 185659975 816034350 526164144 815133817 76754899 668100484 841218154 964515675 659409015 698782281 423920237 979222041 593878088 989554694 590743497 901989130 860934380 951342325 330581302 505205051 827369174 998252833 799942546 908733511 565055524 928612772 101813707 916138962 384443332 957339409 692476136 731479515 804475242 883452669 538919449 791085918 906866655 965116824 784296657 915047100 301942986 394379147 686527369 926354107 825174163 953725601 876824543 995028744 624501264 743961906 267546455 284550569 584388363 634720373 218791225 713330676 553940533 996911414 381645869 790622262 206316260 246198651 229532902 880431809 152760446 297649695 593335691 950392178 254691438 881110228 496123592 662917917 632669272 830164672 295895497 361184192 128106909 510696319 748790060 942360388 529908292 825262709 689633858 852781201 144033784 759241374 537924315 694097097 829113868 962137613 947248913 965418977 626349168 833074041 566921563 744709671 513377452 580154834 405485674 621755901 242087659 374714636 98974779 472241216 659159747 816544999 331397971 568238665 962197093 985052256 258909141 466592901 535506098 797408122 518805355 601640074 180493427 633434908 354349913 724597825 508263986 837504982 177405406 637015529 11726495 969113026 606623072 924568821 506192449 638826687 779781562 955729918 114143027 288136088 330376823 943107487 415147049 950930952 529508959 960114614 476201644 993614569 626921305 742581541 108199532 606474821 983031194 991340843 7719186 712454742 356136054 891476845 963394057 964584949 158661813 196095467 830564743 943411798 373039790 576197423 158953961 753028725 421716191 558337170 2091884 563436582 601028127 614697128 569585668 577625736 349867548 885428552 597660978 854691415 135453074 752222331 933151493 984332171 420681321 645157909 425511233 744232121 531311526 685816048 483379038 833976192 717617444 768079523 278428922 546625889 788873437 878211991 482307685 506386097 756933247 930780148 510051477 599136623 167661893 869468298 842944613 873820091 956260381 999802061 487206135 548491837 461923469 932322522 697257622 955390107 527474191 944178000 131551533 864936985 262815066 281896624 994206925 997893012 618914354 811167655 471198845 594678925 408894717 696405685 978961353 987019985 250166086 671489843 152092313 587597478 787251824 951180790 320079158 855598819 613060118 831182803 940264099 971911622 785123140 790521071 53381857 874740324 638506483 649306498 11073805 469324331 43079159 102799073 88219763 118056240 986232123 993119207 842314419 865768486 392258075 617677245 367705725 700128102 992430671 992684021 901642253 933466499 300998084 355578139 202436114 460592559 56429313 472645323 736431707 963160748 778328568 891407864 301642242 582630983 515438890 600423361 928656035 973367455 679190309 966205073 558369089 797385744 74625050 619965366 292450876 569075683 780732208 966597526 567627311 707162569 60924404 971946627 454854497 795770370 571209395 946789308 810729515 974620404 486820946 578690649 735059836 985226183 436290994 507494843 770619648 872478463 873109031 962882794 706233071 826025931 665006177 874276760 200146748 228604833 165517187 985687725 736776611 980773803 831488412 928757804 242873669 487142495 365539705 558355672 651712351 811080524 364962537 984156759 532122998 579460282 328882376 367031316 903403175 941597887 980409349 986023304 568188299 986223681 431476523 934149980 19672028 471843994 405116686 941291618 50725798 541897409 405951889 617237153 512454167 904869102 571890978 643866894 245340684 893687406 776236181 911218811 795158229 830685495 878980753 928518347 856137845 956094736 302252300 600872497 610463419 645268154 215585558 506873101 768323672 875238906 52177948 491629985 88665486 842401813 652630190 879653766 243166087 437197912 925666948 964008270 13957658 825091440 647492298 785100300 635674001 976280835 914906423 995722092 749066853 901710284 471177611 686791688 303207589 684391590 651782814 822568679 319327556 638845453 841096722 893334975 7011833 798381259 582410830 947657161 819950695 940100382 282286488 675837142 297178544 630146067 440276674 872735937 541872378 686339787 136463365 925617872 172400040 305209603 358240994 982835001 843149280 928107940 820406619 844373939 950647939 984955953 904577535 979284249 855454117 931353769 626051923 791965039 611686583 975735620 809016971 812314887 677215355 859318750 788698329 931684204 813087577 986144745 116661896 671456955 990755366 991655584 425724476 710914956 342432924 778767130 992237352 996838444 803973656 853571620 837579610 885538916 82314154 935767000 658929430 737235636 799217686 843217631 356218417 430490880 769434312 985361430 650750404 792133661 439115766 721202123 453631927 629677361 838587225 939989493 647844191 695319078 508312084 526957983 535944187 759478542 380464881 808658827 226678174 312638288 87707613 863217064 525104964 536446880 981400445 985792825 647036991 874914626 195093009 370643283 377389399 620141098 102411174 218923406 100001616 166183575 31328371 888501466 164250090 245900000 12526675 767178184 328583250 491347174 595444192 886010858 901840380 937050457 866078864 919210612 346765562 508781947 176489771 523900513 902891367 943951882 695223295 810743092 44832335 290021562 553309102 746695977 112231366 270805113 49954030 549986202 317417275 597635012 722605086 888549107 755861575 930323403 183781551 203889927 280886329 504686512 429870245 565480012 142287899 393684741 664301798 668408833 349545254 733536857 664236291 933714119 987780366 997158860 882189662 936048630 938353819 994193752 458415631 511467881 664165907 954288759 866223392 878758445 836470766 977787847 560925066 656252475 533510969 841150299 634307207 888697894 761674643 785685188 405189221 768388074 527373521 614211768 2472316 527878839 118275924 208295942 984251 276728610 628831097 651475764 193361319 509007992 955085914 994076565 688614506 721557766 939896820 982441113 34738134 131220423 149215618 967662199 621528393 931144810 772869965 822589519 708744254 751123774 311113800 883935097 65440744 695495357 499998500 815966833 301236509 955561627 571970908 629341330 156974296 769163181 173025944 216907710 618174200 943045631 894772212 905303597 316210301 417004933 907082436 914314317 115904475 633530244 237432198 308092162 210666434 927894689 931296029 965812580 386442129 626208905 334883984 957106084 146079697 638655531 877952311 928211893 575930022 881550191 568347173 959109430 755099447 931130617 836183858 866984335 413286830 630050606 683926604 925251716 825517639 987264499 75585314 531708910 519680914 770199669 492941728 625735378 348682333 944062078 989437723 992094024 342355805 780515953 653522733 721346919 721043451 906778241 468402543 980902596 130881236 201561289 648847125 803165670 363573442 791028197 387158828 409119583 228513090 532769923 913101917 970236281 477497653 983610940 154568489 309260494 671106251 791511917 788867454 934791307 535668458 628696446 539490014 798044556 76565037 663307423 581957287 668272485 22899064 860903714 317491598 698578600 36722478 730350704 638525198 941005443 303089515 454709741 111341229 920503961 677634346 708244076 387614305 767493360 194832428 380256480 431928019 737174878 740790273 749105607 426381473 667184898 387144281 765144666 868653435 971199874 409517219 450631610 410112301 987600520 270114388 708034716 994021619 995772072 919293697 934019805 795590273 842207204 616576286 789737216 844922114 927139582 589107146 978552998 801859602 936700440 297498084 775886167 270304880 888654049 117130732 296858217 453118632 605250204 199192614 801084876 398867104 413306796 419170806 903628618 714357464 731316045 177818426 179053597 415563982 777683392 660203514 860015685 120305723 802218314 340868177 615303665 399872328 819428537 696568347 917926433 207046077 241393665 21215051 870097293 626447698 742771527 519271504 589485111 653342757 962509657 448640151 586380489 138407714 159414770 291654943 906508482 433846219 858937812 812437822 978580128 972094052 997064590 755345890 940041308 121341810 342487016 644948962 861759235 286432786 491502500 802893010 950328569 225136415 505346817 467413023 507582489 504970165 728827516 761541847 996205678 943064564 959935187 524049659 946914310 786133655 980863215 281111698 980277140 862116874 872653711 57404350 508558232 829524397 861728225 848542911 924086344 753415008 884004102 466579561 964774892 243272149 643555500 891996619 957874552 685260835 727556491 872996638 930287407 679940067 939513516 244803598 811952667 564358187 679006026 35188852 690488948 851746883 912887237 794901934 954284033 802846257 988674760 274074845 704277643 34223807 383489159 101718235 831009602 354532756 583842203 30415007 853880648 938420255 993393796 486281576 700907645 859308506 926976000 732347763 874667656 579119644 904924691 395371248 742676592 279856372 441694205 669199722 812227035 36872800 719917705 159914335 790913912 621365511 637307706 177415828 766925384 454298944 880068417 134307693 393326438 611174474 952456202 925575301 956870695 292192088 651805469 640946803 969992855 873352520 877203822 548199167 701114254 564714407 583774406 459728556 606172441 442994079 638170667 268117975 496245675 422041907 685160940 234693752 646283559 798572953 848139424 484752188 778546212 886475159 953940338 858226419 919890009 121207121 535220025 238165737 239117552 953957683 973591816 849893697 854939188 735192654 898658525 371837218 789798316 416849360 792720588 77958833 596484784 465413969 988534896 149483604 674532808 799154458 887981134 325871521 884386888 953719691 956605888 525112189 993129775 130876600 808874166 52900092 980973058 199813643 366404464 393727850 739652622 399866930 419732383 355069081 997163585 267748020 601507020 891935352 979441625 356750369 479468774 747130885 911542265 372096134 443689419 809060830 882719883 676213034 846254369 879554601 950537959 403547712 854059525 167884313 234857408 646352411 966550996 597212984 690268408 265657690 902733182 280891560 504429207 141852175 148170575 294759947 962787749 497322260 634641924 259351009 535750283 884250521 899049138 121952248 326836476 77468165 765610284 398904515 465057967 705142064 976931552 206365382 291864445 94875911 693846149 865884864 941287895 632628801 738001095 258160098 393053954 566903515 988380022 282415182 720385852 570034508 682920054 599733404 726484125 552724759 832999235 231096843 904672979 311622633 688132665 903203 176378328 173511668 688815413 685847500 693894058 610662041 764129741 534851237 669307680 983530155 997084888 785010414 832510501 809001657 820165164 226836320 494646910 556277628 663919999 195529052 911807366 681682871 980871147 550138407 703083633 549341177 566679277 635952795 926924291 171210730 670367772 893862493 953067527 720466802 895373201 489802373 915257832 352888892 684584379 241702137 480912235 631426961 680366465 187886445 873881742 916929974 926165570 696369635 946812278 300848925 342835410 246568888 409502948 294000170 337993631 50478742 727669446 484286894 920308347 296829798 905235528 896456363 909283165 601215492 886043303 435115188 633892492 568852188 600720273 145611742 392206116 919608685 946396405 47443400 845083077 37333797 431472446 159224640 353926694 274916727 471902814 798634779 840845333 378371574 951467929 836243087 993027862 799336152 901210702 827546628 983699230 551756570 948008689 990620589 996191677 488517147 983358147 86161427 971078031 577996844 932862623 317582036 706781468 520186510 949415170 221887192 605631332 657379922 723236504 947055717 953468489 744849015 865141740 190535636 933140538 530600302 877977991 254057615 370471869 849397905 892659154 239635454 339667333 172683671 543993045 820200085 940606411 593885716 915390388 94785098 620919319 243848138 616466997 35854105 382670640 130996112 735029293 630259394 884800303 266178286 906027602 478850955 560416803 996781902 997898731 635898982 902948051 961945607 987558090 265476985 318483906 280367932 514334701 168951658 369180261 961452808 995585164 444598347 891845527 30815947 907583984 423548861 876928559 405381444 917943639 291302742 675773633 640137221 837420353 617989968 754568134 875027483 965300522 188137597 560132989 678767347 743229677 580093128 790665777 752319023 839883889 725506095 783354317 559896011 699708140 853827789 914915885 529330597 707749219 323555046 860034706 32016889 430872881 464908789 473762112 210169932 323066960 444920126 492385648 874185689 914129092 250315041 825435740 901587838 907920961 795894337 930036005 297816845 404005331 715822012 864412302 606825988 992573358 654462955 983370802 501948520 914296151 496646696 949859928 399162985 952124956 855577549 913019695 478102031 533859877 944036240 965375512 892800847 965009818 172984447 935795951 882460530 933666303 730957404 786587705 459092932 871100417 481527236 795296844 578785564 597987124 681700954 838181900 995357635 998279004 698736319 989512522 548184198 769517421 180315066 747670694 833496111 943587294 239456331 557507240 47113369 597764767 716412663 815055641 291047340 316105894 184313717 760485029 76703153 706288607 972564068 977616665 968389997 985225625 680364202 894751516 252788548 712993001 684848210 927197809 977849501 999966395 635924162 961986092 264537641 666206819 185278777 263472807 414845576 498011254 47358124 965447802 912243965 964921599 354686709 385664450 575369520 771161741 757789323 785441269 922884113 955799442 925485836 956936498 396576093 972520922 134823690 961131074 98775645 320287635 918315363 919928683 363718257 649390911 652682422 653478784 382814925 804551119 724233186 891744387 843215680 893269070 463333899 592408428 878578224 942004332 261600556 490082713 859897336 926724227 960719953 978086886 692229138 824459002 654939883 843066521 915201955 919578576 222092813 927136744 186051138 424780136 707111878 794192834 584273405 587764523 520012784 553024549 526693206 669327772 330428331 595971131 928090638 963344471 564607051 729630717 178352500 922742445 387787061 669369839 9869833 166903566 925183817 928946116 873138791 940328234 150507897 586182351 659069603 998872838 383293620 547108604 177925474 746183592 177095637 194255132 372861693 540884770 549453051 904298133 77709725 666844848 778017681 914139934 511421485 682291788 949399417 994498616 416596516 887609919 497491423 998372180 860689225 978868369 39447810 842989571 889811180 914036633 268243549 943493723 245507808 940974497 683835796 911001960 129065914 372456602 599940311 664331030 782001884 944603757 403137681 522634530 133156128 420799505 818329096 996000752 217984116 732168970 411807994 529791266 798179330 975912527 619734667 668507463 889563520 993241126 944711639 964799030 170036046 403838197 762348126 817564608 885596515 978129823 125709698 239480692 533203424 894835933 455686472 945156146 314698347 922924925 435678442 780795949 845141617 927432997 460595620 871799976 153504127 663690487 99625698 377130140 363026900 880708087 145452271 715028990 321168523 608011480 416081480 624701093 921199533 959355657 941982237 966639183 580020673 882654103 605017502 909804185 970977363 983396921 134170972 612461785 384313841 695468733 28717104 111973951 434800208 695028693 786817676 867426224 684207305 712058313 767607415 813872636 752271108 988700614 761031934 925142758 557843757 653075640 834302366 916366588 785074863 991731501 560681742 767014014 459513396 704385347 381158762 935725038 583497242 686159291 101350394 183832723 715424298 934072650 760326416 804298400 688526854 790381389 814283578 878458983 602908897 714177484 455847644 850845296 342974442 810057140 945659412 961531666 701892907 749047702 951356561 985483302 338927548 831584842 54911632 982171353 617575188 834695400 270157157 987348288 414246453 708748457 801698668 974931954 800968642 945659147 441618156 871620017 232227900 854075580 396075048 422786612 322455100 427504282 925364167 928304410 398570942 969377868 759850990 814848807 949026532 966073827 953934473 967384584 854110389 988999532 11994295 422934964 872995395 939086620 244841436 399444500 960257172 983914573 174340473 808985514 374493200 418880493 353716942 574860068 903504308 947266759 854612973 872948300 730131475 869263197 288847483 890520070 979434580 990641355 400882176 900296868 774090697 807547213 919313130 930729011 704247222 878163340 637455557 710906273 41927252 817576942 787649633 972787239 624407705 942331266 411844478 892411670 206495243 372948957 513034284 997090782 745704550 855037198 647655688 648071672 76962519 269757641 105912766 594091997 3380685 352490957 416262725 865935256 906251755 919422692 910545085 948544742 432949630 717408557 727877578 762416325 507169545 652471077 332422577 414050026 664859031 814181922 798235651 998751289 672846179 750812163 541821284 746990460 799015413 941706253 979167860 998795729 689921583 987303953 413352761 525479891 980873585 994917256 38769089 187565729 451919553 896332565 99997102 226512606 619053058 644738127 190372095 967862978 998251699 999880762 223177977 470023746 628548796 887755230 698948135 850044090 530824850 952383601 359277219 498242115 170066030 562244661 201192822 291563103 334194720 781172646 82346785 225467307 416930821 962851867 173491096 780049030 90351702 561833175 229608015 405795426 361985598 843133630 553706942 613485098 379815617 723467821 909868388 977323053 490109614 887993023 203745184 366189974 108995527 375463826 996262201 997861739 541750356 599401349 232342540 728759293 816749539 891363290 445808554 582403452 93200818 648945509 264682407 613637262 318108988 420601971 877330916 895541159 702290187 915280156 285783485 371849753 770034593 857123613 511781356 553656407 79753956 157660350 597178427 991541880 861790969 886240688 475074673 676040519 41478932 721397449 375201623 710506823 533118684 839782082 761997004 991108149 85376661 245336258 158904176 433024009 921860665 924817789 966812895 992150319 953096206 956845093 924526427 941710681 872988555 896352077 875018719 992345360 351732436 462892062 77046479 580923615 291710441 296173003 841909785 961889651 330974607 735514948 144813856 228646503 568863721 905591723 376484437 682299354 996692786 997057756 233545135 652962359 58269952 758692109 345222737 434105397 50416177 735495277 48244439 733180886 131741482 433077788 451011894 697653090 932600828 998255003 241873911 639936114 955558023 988968212 603891596 788374710 356041725 399501037 793309829 967645588 599530218 804730559 85868445 392016610 404947078 941280953 46259159 767079605 564642214 805143196 720988080 971501415 557895233 945069665 440580720 973969787 48361119 874236893 379260972 866814269 926180280 930897740 445783441 950627046 173326212 461036090 494714490 979727869 223148222 895789336 555492823 840767639 727024744 984058243 26515603 985586447 862389982 997831313 59696025 181075238 678449633 785761889 14242649 800039178 315600138 372432381 698493208 726568641 725727410 912292190 411519016 964401236 533597988 577660033 172150895 467685304 799326990 807445241 961818191 979071550 112330092 852331024 181970966 820227649 708938470 947258559 666736328 966290012 503238 400272577 247505650 302532638 648453100 835136272 459149974 852872206 391677899 797643208 846507390 925763253 42442840 491541078 801224142 886143053 475704765 511195203 262939392 454571107 870720426 973875694 431507966 967614264 122736935 618409861 909529507 994875744 567972287 621713286 698692118 769622094 686357214 893419418 677161857 778272454 609914574 959727612 153158890 995619338 911826143 923967229 482607889 623982780 743319269 780426823 397198192 577358598 768044451 967769435 489482068 496454255 975785207 987330108 805343697 843162568 293818190 317394162 631342885 720087717 292788992 717003524 571458937 992678287 920729062 965166535 568027882 742424156 594209641 685228864 401034392 467239321 538540875 851888842 600219613 744425761 84561525 779421352 685143751 833368029 596708058 675999219 727017965 832497239 333259377 408001851 336090159 447646160 314123273 492054334 420362136 664318588 709691815 747119089 169851851 863959431 915774847 940938732 365350572 749014914 547634674 928677773 395481369 893979703 633328074 978500911 538290104 563226337 351281077 473814881 190347758 465808662 786362526 823394703 712622355 834261317 233006352 948856638 722651468 740814456 189276218 314632594 787743800 992871725 5211476 480605154 587527273 652468002 947676195 985524085 146463879 830266101 408690849 658955870 336986146 945973468 358455207 649033384 341120124 944608607 399904236 851093178 739399100 814816236 69157864 311566845 811041479 965092507 702586574 886695407 809103888 928102578 690995689 919727483 890113188 936082696 37217165 141540658 324285816 597940978 911617531 961286738 475289071 758610463 153905880 520135288 436993630 986691465 918859074 985548226 967307484 993154688 769230143 943355989 419432313 456841301 942309568 979007435 494315989 866072678 284444151 705883973 838704263 850768674 23128373 370013041 429748438 550702122 570534681 727996560 482379426 519287982 388379422 420806627 506247976 760129945 921740413 998573252 784763179 795522185 240487954 862577625 311758549 924038092 955172229 985393959 350525404 555541812 251979558 262167408 555692584 598998512 63086374 447628019 156859158 651256455 509479898 689345963 71717639 443661352 443397001 976741789 822914092 824054692 78058028 864275328 416334289 870810203 419884152 705530956 127234958 127829854 340303290 689570608 975386357 994454033 498256724 779606788 584750322 730689556 34420190 661171571 331651782 871057460 819703381 996689509 272243006 886373412 325891511 724032908 814671195 931721029 951806699 976360913 70344551 700222910 778285828 933767332 392274407 540307077 881999332 896648968 601130318 899823150 613293388 841532386 49051845 818985833 272145451 599087254 350309474 641189753 345693448 544105654 213394164 595557552 388265763 514874376 546352860 876590080 609891661 867090857 618208515 924411765 638243186 847139016 286956688 863897524 269851545 992530666 257950059 369921826 220162522 563108828 188470061 739429223 445170195 850129576 405982269 537934971 529384817 986623406 801621883 932338761 185423657 999311283 302801659 848625712 134143257 474886097 584042901 754060104 633147488 882768061 579412935 643669701 577306904 645433867 238380425 809461128 242093004 340446706 287027743 957916560 649029983 870162273 891313847 923747758 288876719 893364051 364928898 952115958 582898604 713872083 530227315 875142315 637978881 703036779 971924067 977807779 907337552 986661736 515507247 819798713 472574028 758743057 97411805 494004709 552965045 960542728 869164906 985947364 282325038 812589915 353069505 553145847 978532149 990009123 454726605 724168229 284220252 820089139 386687707 654778113 293437509 339096344 562962130 724390874 75691176 894242645 359990019 773208395 53382436 519239043 6500337 226663292 794994765 871082873 196979834 507606932 754108014 884878563 928415735 934911119 59319345 639752435 930315953 996439575 45092341 586077280 454794906 950854956 21740069 401767672 971964836 989249157 407667311 879482867 156848584 318974982 988627944 998819289 361690171 863039981 393309725 771414895 605953480 617494172 740930565 875829118 410349572 598437361 532147313 997519921 808965484 925571719 203861522 988490699 188739688 317849349 195896886 447312052 24612627 65964607 795319040 921590170 254955482 283681858 520876961 900020595 268366295 882114756 991239418 992823916 576272240 893556162 407103778 950994822 462005785 697931067 421611536 452182272 29656922 367267755 184478277 732786396 661827262 691049418 316823728 870704222 910358730 956081816 268699526 565943097 943300065 950108301 483678261 960265531 136376126 262241209 715187085 753643554 567058181 702068768 253529928 869134736 373640494 615809001 237555761 572873332 960318526 984038018 899381220 926428742 555834464 604542483 893502951 916237606 603005803 925906675 639400225 907745952 379123047 877400153 435202379 758855459 353304320 640389745 446183068 998994765 255005947 583516569 824927806 948327099 750551365 760180480 634485121 943237102 997167227 997399294 881985233 910898647 382139669 439072164 317070607 646423385 704319674 950389368 771910484 932540887 477821495 767505236 916100086 979628151 225696976 794617695 754623965 813109406 21941712 196501874 199665126 467770981 622331604 988791177 139404613 610311151 781010659 908497526 226405263 302391350 655184869 870156706 918183107 938983953 130344648 681923380 296132015 937179626 109365806 385146675 464703401 473034617 893766354 972844073 506298997 722776605 766538167 770762476 211038380 232670049 194258301 223317759 415188489 929452840 579473772 731880534 198442458 416871426 679807204 699801607 843683597 915144399 67813885 902416710 559447519 891865600 564748371 634060922 203786049 667443467 318761368 919980328 634877471 909443551 883545928 919075532 287405453 873466502 723476411 931902002 76415987 696991513 335403036 478502726 276699221 863579685 882117043 904397975 918833414 978144517 720338513 916577134 610218355 625429009 439689482 719187195 42470588 413103476 65292130 143004912 714184 133040439 973582670 998245138 855218527 958752086 78079719 353034992 404392980 822207973 446996641 782704629 631232330 756288165 159180397 832258666 534144261 970664303 423036797 523352229 424465894 578240235 690635037 942623668 31228931 64119849 767362539 927748621 946171812 990126834 794158426 950798490 621400741 746361109 509386376 566498317 319389092 750657021 20512430 896614560 402026770 778532688 325739256 911654959 29207354 405016926 688008209 704824005 660447630 965637869 739809558 905785456 656525809 748102173 260338144 305716876 912094839 919127815 238407644 645032668 540574289 848428589 519201765 632706966 942603245 966643594 158861689 471433805 343731473 985173518 866345855 978606248 614873185 853002228 893635104 951145972 542776115 784170946 760343122 969262368 281868749 782766212 885141677 960373646 851347658 997690781 591305517 656960675 507805413 997912002 337339238 674174667 531573398 619437311 677732331 805445740 606666510 754828283 547051117 926495856 841023799 854846596 82451438 962722399 539020638 681176162 18272640 758282948 497786266 685405349 492942961 503308894 687230779 845625148 243220167 456911492 796636745 875559567 749461654 838300022 847451124 922195481 429971954 548709894 339733558 781818937 508023714 942501328 854347511 875165029 226294414 576223971 449912673 811575086 116533917 192612489 603503236 904126499 960540247 977278942 900726253 904898488 270932863 681211953 780201402 889543856 220923445 351279401 463393401 933843630 667741770 756894519 209940858 888489690 761239757 881117778 466970288 474927149 952806459 992263806 349684169 390493607 686662554 887483919 822660688 862997907 397026488 533032931 984314761 988674809 70367217 763127811 843901148 890358538 86249220 274678745 985337972 999425181 522748824 993288246 312869773 912332099 145813461 224732450 657901181 992317662 459424771 976940076 823815547 942224183 901917886 950921789 714950577 811815902 769533419 975487178 807416172 978544992 119987630 500623644 214168409 676330153 767767449 903975656 950898051 976361918 455809391 653302469 269795471 290955605 238622251 570428169 163750350 404896063 584434148 884159463 341995999 479229716 689536963 980978739 199776533 454394943 998357160 999479326 195471051 201487793 572388451 969644747 96588855 489173704 220809378 623704740 442700767 597701825 41876954 978881009 538012040 755267827 425203409 865440606 991604397 998059725 239924935 943234893 526540255 762205757 77756673 532863898 2403837 73562803 724301177 796983094 557274911 910526623 705940150 893158486 740539037 924097690 918197543 938828498 376549495 703229740 144437896 348484791 961360299 989721566 509325863 821319714 521043059 983941538 920558771 935282275 108622250 791420942 71708044 676714115 338347556 634919469 832554622 977981061 921794196 990955395 795240187 913519257 947603832 995139656 476829225 813407567 305992649 766824093 707226602 806492722 183704747 686494850 993246160 994991441 808056925 905097013 695699130 954442653 226400711 643410158 613880961 680771578 187142248 499663825 552564320 609095149 203506886 861014016 622572157 892176761 932519482 999043113 477228686 670419865 223870544 933234424 909770055 969207113 955791231 980273951 349551130 572610693 237170999 878401925 221625420 541247151 106077760 720935305 49169157 674392441 824596321 899908921 450876875 847657727 770202478 881226641 617800446 961502699 288791950 393151120 38408217 110520423 984420607 984809771 582609314 614102429 586615132 842230634 621337144 831577426 413195349 609294851 408211369 904158935 878759748 879739593 885179494 913521917 793170900 979329708 507081529 710748965 285343122 527951504 92414993 299371669 77663721 95048219 594717696 960375224 321729855 796707317 89768243 286431965 404752518 693193521 336512099 772612619 216223561 923003690 84390304 951383842 379430963 495157996 595446918 668505386 518434744 776451643 967667110 970501252 478029853 888631463 695003026 894757116 680317936 976892345 325736951 664658236 440182596 971713480 328147116 496910972 550975241 706843187 105763209 490285818 49943294 843697045 791575835 887110867 43208063 822841843 794497487 916185784 872455936 895117421 85895013 628152950 40494126 456828891 2787318 726222607 345377143 623561360 330561919 881810179 411375516 922487958 851874819 988561483 854659906 997640296 639177888 922242560 404325636 873797385 345466113 439403019 729281401 973846073 265739840 888174094 311758538 585886228 916058388 960991020 110391299 485055620 975030087 991805700 857974247 882899273 117850954 413137054 512648979 715621708 788603738 831804013 141790482 921766454 899569769 996852137 572391039 869949154 731801412 917835073 278351648 777087301 400797939 872851330 333118956 568833131 717546704 841677675 704566058 877065149 91667154 247366551 518094565 909290321 859908414 916457278 575873067 590224837 577299232 963314222 943953074 994100489 319852430 421940583 18362486 637847276 492891404 628961557 160086435 722717104 648208731 714392067 95018618 570399156 732375793 958247176 676488212 811151809 964917164 965118552 221702199 647096050 271540665 980996856 424595824 774684640 466158749 938517198 60402495 723552096 529299204 593144296 109371336 840240338 499425065 816945052 315953058 467793445 438646511 490118271 204552066 788957836 663499508 753793596 253242948 859935557 774675259 925547663 974814671 981569273 600384757 619511316 911201649 969998610 150219953 401452000 50740133 676845419 471077058 804082392 286282394 365672542 879918382 986995199 233879129 318183390 503089125 950494087 648216618 764020350 519597148 911079588 685509056 853188380 472077787 525510127 732982761 773839336 955230630 997436513 748337933 944665073 333774719 539135753 898133648 932719483 28519952 998665413 846461967 946607502 362035613 711549571 822476306 975739803 68258191 362619542 774709717 938713659 790339936 857148049 7141936 836021644 82203248 289952974 822608018 933138928 516434032 646245002 737557957 911204504 617673232 737060267 506376728 674258760 33286313 760950369 684251147 840881265 1590256 107206537 140726531 241885055 359891729 568389926 97651549 514806405 107658574 949033247 647760656 825605065 806912278 999140885 898616113 923644492 883915487 969554428 529680846 649029942 712492633 762089629 345029792 638191631 455725686 478335572 455123655 573437363 229534263 257575578 231241732 235583181 540669806 980879324 248448513 305597522 846367234 998511119 753313707 799401504 685407710 843366218 743724782 815088652 917977461 926116069 682327081 796657239 849370956 873956799 995426076 998856825 24521114 897936019 446780010 987523690 241515307 670833934 197399452 806940186 30261308 445000396 425051646 983916288 507019790 967428069 307239748 776025943 187724702 278731131 890000300 970399065 399828780 450183109 89279331 688516973 698923432 935341815 282702462 340944878 289457023 437062337 586884318 767190551 696546467 819696687 104122157 166611140 602511902 996014128 407120435 744631647 123576877 601464638 773447219 831362048 492339076 524432539 149918357 295941131 535877460 867564738 885993690 915387723 745208419 969718376 579936785 739793707 243054419 289024672 627952764 901787511 699682596 758370181 851053534 953753313 948294770 948700895 86068619 925591137 510206653 947965992 672210 151104042 33406996 64779005 464357952 478118119 415795528 823759281 45015612 103533354 73339260 682591162 887061313 893020490 355175652 968917172 415337267 940704205 772366865 861138909 277843458 719669240 69227048 219874672 939903069 942897021 306576990 871269858 165386652 924824323 219463560 661095273 121301376 749037788 293743061 876309762 753933695 906408552 216794575 311381527 977152269 977182643 988972037 992503119 181729736 303599721 177952522 178010780 401158305 892524869 205072106 428980527 491077945 796016119 619700427 894120629 611259481 799822714 624348193 940896827 534897045 802989321 155432717 715608485 815859427 824244060 206641847 848924358 478023874 913827818 670403976 810615222 807192132 872249466 928694455 977200062 81837169 973822305 853289426 937121672 642617018 951464424 620383504 628964455 571010439 748952256 472148429 922106212 653979284 657118250 392929694 856276495 291171096 997243737 195084268 261544123 530216978 795867587 270412149 736555261 71153287 578597518 775819626 879208724 753372886 899905961 192322499 645464577 972578468 976611296 453377515 644426901 625806896 899489469 504602700 708026673 778675948 946151865 90561252 992516077 148586526 943135147 938492808 958160855 323735905 434861897 518681941 766052389 391246870 933536371 424886243 876575397 986031256 996653578 75619015 846253014 138947758 365635355 509518743 613794335 745712763 898684978 467835006 570739515 703242120 859809025 880364461 941859441 648490839 935650676 58664691 735046508 251492244 898756580 307610482 677899250 287935257 705864027 480053312 574803119 319916873 810613168 287479202 809686565 679505872 938677290 14807608 604376123 349518356 880630435 64179146 717973742 682677779 884760659 512616355 893142357 709423786 742641901 871513077 980620050 180251993 734980450 406375313 846343113 720279329 953957108 437690208 512447841 321371023 431238117 548193660 713615307 747268558 783720325 439770667 753303889 239873025 974777369 970055616 985196226 884171419 910794774 344225821 699482638 823057565 855975880 81210174 502312626 199570883 293749641 567321583 800513482 593903082 886973486 768017898 772174770 247143619 301783992 659670719 799113020 929329376 931844765 427284339 975352188 842209355 968473778 204539481 658656199 136872756 526297916 182023126 632457404 519695834 533545925 30207507 908654226 984445980 994023531 407842419 834897787 276710984 775213269 697182694 824243108 377895406 816691946 511757269 839864906 421220937 869878912 451804787 719397927 148138012 673729521 599961384 861024915 971337720 987798404 174695805 931776230 569807777 715812303 685829734 738396277 461479933 694390246 460769154 630141323 472739424 561731692 613694998 943041161 670833444 755702168 438164874 877789071 576525087 780436611 490634379 791638086 737923716 879263548 320163627 695534578 877524928 931344511 523066314 550599073 493489307 941393034 714187359 791580634 844199794 993545793 96955114 199317319 554540411 730167539 196380915 784099061 307802583 671699425 452770655 778267796 230901660 759185496 553119724 678307205 174236852 934815804 832843502 837479741 807626267 851872923 307043757 774127569 392876948 408173706 33571586 906262890 518378598 687010277 598869623 861887988 48619191 983515088 336873866 987140373 10490765 838979631 467682980 969522412 296637046 375515347 455477929 894058880 425627586 854756237 818245500 872948073 577051113 902159875 662667852 744673079 99473413 903761643 700366155 909461969 515651324 810732874 705681362 790883501 642776864 776776458 991452995 997774295 866797960 987755842 389418414 962319932 922096376 944758226 732488884 851547000 510789703 979449129 834979278 990873817 176604683 647615247 741260503 783605653 2866677 184395809 297229487 350730326 407059056 588155103 533965616 986763098 717002831 730706478 387294477 401198668 688488263 692168229 859390748 874245730 59741140 692340839 39252291 186152862 493277825 589619393 155164186 502147315 766608083 866846609 382426509 456968172 689701370 779159053 989226996 990413695 993697664 996438712 923223311 982114537 491123452 691012312 436829784 801732690 284089179 583298681 142712606 331499411 536548203 745053366 472415083 795876646 87259982 427384680 563633625 996351930 499269215 898242284 757850948 935633323 692957788 695119941 837166055 902002264 390219989 859593095 62182229 294921763 735591312 997276568 491061628 819677950 884982448 960263478 494659050 645977778 808748023 905054138 809654683 965645944 343175467 661251022 590268978 805530496 529463442 902815827 969000120 992240910 304372037 345568625 955870851 996041613 893399161 988065872 114351007 471674005 937679310 975613651 932484637 981708310 86019983 146880815 349161665 969997654 305712916 766525505 247151184 469388678 928668776 976524638 934613961 994555904 300644158 997510582 485311419 558970535 658693840 814716457 807124532 995338330 665790095 793194634 553802300 634473899 674796094 880264696 843062680 933101682 982779649 991105542 418174872 805779307 452947454 637953601 510601614 900989298 73808593 84602437 534687286 577690794 72284828 251545894 91539990 949727908 260068554 930878639 40617648 182935860 428540809 557029577 367205754 590208405 370209228 484784452 956646122 988270010 591476506 852113283 667926100 983271251 60188549 607078949 58873686 136138315 421093997 493128440 486266801 755597367 204038390 421669543 457955465 913124120 11644548 778670587 597099307 597616138 969913944 978106690 250524876 834432352 46105821 952637634 887691452 971643860 706410604 713728126 193340616 550526969 472778950 648202888 818492405 979876414 912655639 921709008 811335000 839232473 470047975 834909559 781999641 824638087 135681311 545206363 149583783 574402564 188570360 889929841 729593798 904373307 229192709 997109060 710958266 809858299 89567371 152748593 20775754 161159204 771657969 855744082 582293094 683914519 323126929 669960091 925405064 940134333 737808829 939069583 541515798 988870919 608735256 616968556 803967719 848929074 474431044 541709571 807936375 883134092 725237648 756617845 526581196 886442673 825341441 858398833 707646378 985225579 57479745 570938519 489550776 575597064 142141081 365005194 44281331 416554547 966315492 992200229 490514281 888424629 997860894 998260127 501021189 738267961 965903294 990391627 939059756 987391570 811040414 928981235 323974973 956520588 30434554 489171660 772772615 833485646 559653504 950750929 228482568 907290900 517712059 969222886 485081292 695845707 68399189 288955431 529478645 801914927 795288561 889825680 34708698 618573773 700122979 918376637 917323121 955210731 563666206 919364411 823634281 988900067 526973557 965374174 508054836 860812757 101823949 856439130 899911121 990302306 45988946 573411856 328761475 913038329 676141986 686586267 412163962 636637370 777084865 790289198 661419744 755102459 992194503 999310302 354602509 370373560 202035731 208173843 224288611 249744256 876732675 977650072 369385513 388549872 830408647 943577341 651227961 729633472 92573550 125042490 568798025 710160876 483974906 841484637 851064875 916946488 903256246 910456621 31617110 801173166 363652746 538210100 915145487 928312339 168942014 721259748 77555586 703557412 540563185 619042262 288486150 987055747 88816691 576053812 580585311 693270513 335842546 909529542 638225930 976589503 110204197 916556983 199541723 581177988 638795039 703727624 209843621 806590721 897439816 941593150 877265279 890376429 378768127 485487489 652004879 908413013 15433229 776898522 394881694 761175661 517115837 949691815 727238108 895656691 594912450 673214175 881196569 893944102 118687529 915404224 434006450 485988753 371766586 731016532 82843129 877746058 229581287 500886524 610095880 758363148 33441198 443102709 370859814 693125633 233675777 359959389 645934943 833058893 835688621 974112750 67272045 495959934 166185191 206829020 796256906 913447234 6535385 793555749 545848196 738869898 158308294 432947336 869767303 881335230 213356469 799065010 156409540 461816988 4454584 527617653 838315944 927290777 932176733 977290940 569926822 993299843 48311868 172148341 193881743 455661029 493090684 761605990 897802974 921782823 431911878 473364423 575155107 993034535 790338422 916115278 925900822 963354005 857588628 934882104 559522536 811189071 400981944 830457709 974792874 987701663 66759226 684171904 935275123 953498800 868787588 974321379 418464943 581242254 801942129 860971536 395239305 956816999 212138561 553557065 946748979 995190829 386989647 869175127 419905857 936165604 333820148 527571643 206443389 908338949 60977752 503597322 438780882 629202566 890784365 912163094 784854182 976595844 763858445 945677145 980338244 981526809 399519892 902990045 692862037 738226879 439355369 833375204 330252832 824523876 546574289 615993707 714942454 845624576 722114331 929476513 113092243 445139124 244732987 319239208 101914670 448121040 919963298 986916869 407396176 965497180 623811064 920129457 434672465 915604614 610410644 743415812 538855624 636259398 802435679 820962984 716935800 841438528 905096098 956981399 652986906 794344137 101755033 793701364 311833828 838285855 163012796 848512450 357890073 636177831 420961651 648958533 442764187 915480052 763404829 840877515 512225649 934251430 255740544 781242949 507264353 765131247 152219980 827915477 193852202 962415234 786242273 968666262 936522631 995695209 286001701 901286865 214113991 369437004 474940628 537607385 678536017 945689853 137109259 747068754 758297438 950702191 972714098 988967720 621427434 907631726 660581441 947196171 485313709 498277442 150182970 935365524 127887646 650385861 647429892 976885685 885752454 919440545 864797230 967290679 328886118 350605561 710462220 711925067 589440989 667855598 255152428 258576277 33251728 456470548 560518055 894599767 452097071 971711828 941729814 992304632 123123465 194279105 168678946 891313355 224160477 434613994 876258424 886268426 279189912 361243385 177018520 325211419 144172428 600787638 462494046 723548960 298450394 445245555 984736395 990588919 493718637 814863220 542550792 570089764 472100636 864198736 982914404 985631783 388070014 621055213 23906389 444325229 565029851 979007905 387943140 943492497 762877673 838039263 441303710 814012579 938692306 963039490 126850887 994233696 887489932 904440234 515015715 911685829 457136719 962400788 322095210 557948344 661893635 675625925 149403541 432431639 111212426 125384449 937296548 974142491 643982275 877092029 238595409 712088863 342926797 635173602 268576540 550638410 965848800 972194698 891789725 905346516 474201372 493905205 218447389 972027978 164394206 313439707 74986144 423014080 801541712 906701788 494332673 915373887 714083436 895329184 270994900 617541694 93848168 537103641 267205442 426567760 279238373 530266331 562281412 927553870 860594106 963317144 757749140 801344506 435591015 780902861 296080726 365119536 590403649 753544932 851083540 969268664 841569795 881368959 411277503 804595929 838756588 928105964 679976405 804642461 611780753 650712018 490235417 633305744 724977851 736275766 208735079 768501944 912066920 946366552 209299777 638006072 351755724 720972635 711527368 728611407 490950119 608755109 978264422 988128977 750174291 967436943 82710451 886031199 150218284 801833344 684933792 975896381 88935806 951422898 786432952 894198447 242952987 390943571 110056499 411430878 35648552 450149143 48185174 161106249 13807193 560833373 302653560 304562573 224250774 930401613 611203884 734122532 484604792 658328004 178788758 860151106 523520499 625802188 266261183 971940915 452172374 887919522 837753305 974318541 432396009 822481207 836661865 893905862 900634192 915763518 65723132 305253800 296553929 420276077 629609781 833673097 641398615 969537668 198690989 924370675 205096810 912769564 388240166 482193026 787841485 862597880 815802467 844236681 593495794 846830032 621338931 998637926 89691510 575067920 79511951 554596622 86932458 894973897 302686550 976821104 869937036 974296303 317921671 375980353 999111072 999485574 976660819 984779594 637112561 723961535 909841769 955834994 279512137 846170832 872411754 897302514 8285212 41713816 525152481 787639023 775553785 850092088 516139960 649404338 371309080 600174017 818430477 901906003 776441314 930940023 108980364 624269732 558999051 757025191 250459607 516532452 124012895 125002224 829286905 901879407 818245483 857714536 163050812 356061789 855090798 908111885 948216389 981313740 754500900 754665414 314124656 699899545 81305680 884330782 878718967 907409237 152355244 560413493 243455712 276934781 60423143 394340980 962179907 994343595 906687948 984729924 565181776 724362794 530593207 823367235 16614772 438266901 203767536 571441529 103163170 971382013 656410507 871530223 622231368 733855273 612889255 972685459 798794520 819802815 609588235 726892915 402853440 625568012 926567027 981715063 316945339 806119653 78717612 738390466 297668747 660596789 469516012 683072027 759478997 970890828 769191335 951667479 785364735 979818537 581826010 999811197 515407380 841449600 608585514 783049375 408510850 631094878 357105972 772208067 655899386 796895486 934459579 960604032 753562755 838258183 860943701 985057095 959199014 983181037 351938872 543154840 285227499 764880421 729259423 922249183 963853684 973671242 582703364 779097385 619533365 903828958 711818066 726968947 141586418 975384730 828513724 871845711 206451742 902097820 535685373 884853764 616889001 718476754 406816480 452080261 992682252 999585639 402476142 777251117 418467981 523717209 552790992 682851700 764421258 799952650 110735857 847755082 294054408 884767114 830276644 903126655 587498793 663175174 70778468 613760444 631899827 720112577 664625226 854576709 505702682 544404033 597298232 628909694 582502397 689697490 859434796 945011395 618200196 694466453 269592362 660028543 719851073 828813595 319086190 931829563 135932463 592880077 204720395 456155310 284196455 791822350 172970501 616247281 237790705 555330634 614844135 784477700 165338024 625181055 486376897 929097303 619761786 712106720 800442053 908752518 386544976 819907695 624471514 641145115 521068056 961319392 680572468 773387177 971761795 974926891 805715754 985189674 318554589 654072986 836622310 977795314 757601324 976053126 207903434 251151158 995453399 997256673 756947646 794157650 529891979 981486889 909323717 957763026 584645030 641615325 161186831 545654343 617266453 693195471 764234689 780388501 168340685 775484446 35543642 86761696 247050582 419942382 353635186 763485958 364241364 973678963 181562997 301332298 473351848 977699503 603598936 839642730 911192498 948907741 151207759 292521351 804492495 914111913 226490762 735988289 656572249 859159044 478921136 927521491 584914392 642988261 248639174 251263286 690312279 907938602 605323315 980222732 747202299 784006857 167684463 979755375 651178123 854579850 115219993 731871658 449644270 601594675 643932005 677286998 128776285 264650777 906662672 924251703 876168656 893057352 74026033 384345916 235201913 899737771 546908416 733748239 694044312 707422671 344754812 675431966 731468961 755985114 971051569 985619656 366030687 368482896 142854544 527621977 628351210 825809390 353917312 390803148 942470597 988083762 434074099 469742043 736893735 829742338 159755228 813225187 657536467 772497447 466276692 587913654 820766552 904156994 758759245 788461650 158839463 691024731 589964094 964403148 974029215 982015326 338170639 606929076 689668477 972458520 758607699 905659028 334583543 346910227 349754875 567551170 430637647 714965404 467040731 852380111 51117666 154453964 204676754 752733211 202168482 964763943 569025244 840139310 116193836 797344134 148521799 641834504 435698416 781350295 698938454 938455922 132782237 853063546 162779101 267889012 895559443 991780163 132555970 758743359 93474624 448358988 747329282 953930776 607528153 949817686 117796776 586673780 762892499 897313259 331390919 892154339 717342816 821081574 607699058 670198193 457317748 624105140 55047276 292119505 700413817 869943354 783311573 976476294 20705382 374669990 42555234 510165518 248690313 452305813 822749477 926861463 176853549 565738320 408800527 890151167 736192664 885673675 591292407 854400812 16138244 856195633 630735840 952646792 9059512 393597370 10202031 518449483 532277670 668735724 627024374 764789247 178276806 530002711 413300209 581591648 171247951 784290031 579866333 741651405 192603041 428678934 454904479 940019527 33004213 226425044 514096775 649027241 545554376 796437934 995358203 996120234 285328031 558800925 384267006 982942934 59409596 435419219 357693995 890558678 967811019 974730277 4651029 726317717 859412734 866230093 114674131 275462388 532155612 975022026 282949827 604965530 909554890 947953907 963294382 981642797 191211703 389579328 357589225 766906551 727889756 974765702 695038929 911286058 639785376 807780718 832091042 936597488 670634250 992187158 73666236 495618404 759367387 941953460 394202388 872813237 480091924 568036524 450152828 889312938 778326109 957664084 496033657 996229112 29360565 239432713 51489163 885953232 625923898 700965884 889484141 905763955 773544024 806049938 563533827 993714071 58342551 637472451 622463886 833678352 145395420 849097514 547727311 984377289 573720886 635232352 927620337 959611859 872907508 957817862 282762833 556784151 710605303 807998215 949620448 987170720 538676846 742102850 411746243 565693730 825267950 925306772 750875640 879384971 551556602 780459916 666190018 693546774 836881814 894963277 787615800 867302850 753572803 927188639 743846303 746224833 192724970 884149848 63350182 131482658 124263308 884819956 848140132 922059012 82376483 929420353 113488852 879654751 882327494 953229673 158133340 191796383 891748323 920829476 986149525 990435730 236349348 457762396 761671364 980706816 214987319 330184837 814495186 910421165 403120130 970073220 304783827 708233371 621880628 641000886 886012119 965359340 170533685 787940388 69036084 793822808 55192605 805687100 487829157 692601512 754080978 964702825 716539627 970149879 498589201 868941331 676544715 988797949 31438986 534492437 843300640 994080413 341541640 625804332 367074856 613787540 362158598 373834200 251727321 311609696 254029589 654206744 638670019 850625796 833118483 884697704 427679500 790020933 265860307 577033010 746768596 939885712 454565871 603678942 978643305 996782852 585063318 794879832 789667375 956569831 574054524 892247330 925460608 985423048 985630660 994109573 143005827 214196552 419111603 504067717 419655316 553021075 774322072 896263021 991353903 994347417 887199701 964000235 706787223 951620035 443090414 721354478 320591260 874193876 157410859 772145432 871133728 903665410 446291671 831657671 153431202 614628621 78243559 401846895 639584832 898353268 441160052 670227260 639170573 833656690 815068126 993864898 459185914 537637978 483213800 962346788 361801274 506236717 940257132 991869861 476484488 999991383 710185961 951323441 723274489 891534851 404588049 920403785 865999537 884256368 696317908 895174086 225836792 279284121 409217504 438130392 483065863 522690613 873739952 958177777 294079499 769364448 570275796 997372879 161710727 240723360 974719722 987002659 366492261 939600484 346895377 723509557 892714846 916156237 315081751 874916621 504398367 725325670 426534765 519556549 236854284 304805618 877220266 905147891 620441309 791994175 146834477 418859850 291822830 957599898 874549542 891351034 853341847 973434117 692786999 994518065 567157132 640120040 240289441 446993414 279043991 870867012 948608844 969094221 445782688 850919189 201152677 266914023 553836964 646259466 924032262 986186126 213191629 306662618 631705306 921351962 356098418 620798036 867275324 877034926 129711919 863793326 315140744 706268131 656520178 879987601 784520257 804778179 232106480 363585855 549207828 932131031 166399790 697912843 859768640 917237273 140730732 971192008 717411249 804369873 767152729 818741614 802248846 921533527 370224969 849478302 689075747 702421313 43450537 960704758 112166436 124379743 849418942 973262981 61485359 766224807 671698277 706815374 929017441 950533619 524976651 722733486 611366295 925532605 318848151 848325906 491455798 871082281 259755652 961113280 380914052 713982999 751284904 795720435 738594551 758078797 627645954 697470582 953686013 986634878 216960138 488362123 461167034 627159076 926437619 955208326 767619407 847505425 32734313 736117859 859476764 966591438 299956529 852311517 962362426 968360219 22847638 801653948 665529543 747428365 488878624 860247310 579820226 753250186 61134108 975080821 220281827 282505485 539058379 588091826 299781021 974929081 591832196 751347014 697810400 995518773 204702396 978908312 655209243 922345734 336550327 617030348 123888735 389952495 580165176 775948706 232428367 957963638 966383397 984226224 561473397 829222301 139453786 676136226 645017635 930398850 662598486 825636191 927525734 971305946 318983279 656738148 631048517 939671006 835801945 920513185 970646261 975717770 733026877 750844458 296292410 724642439 840746113 975271269 380968579 467115049 758731173 792337140 531624383 998406099 482637984 617875433 854265916 953974486 824302942 993001046 316967942 327138809 117481609 827343334 774237347 925279051 887656472 908374764 290614780 893547617 568362127 840455002 947378484 982045747 188509427 652658846 971705296 994419995 977674907 990337024 978478377 981066634 271463107 862520512 512976710 706286000 885103763 976959566 999279755 999305076 408636725 611318940 801045039 816341228 163246984 228414437 354288582 552437370 129730383 508587239 325664706 459619030 783064989 834842228 827523055 828187961 830661242 875193029 929880716 950069255 476138554 798105032 843616614 972755865 79894407 216563474 822978707 923599626 829394989 859244346 23671411 425071727 614552864 725807916 42143762 629687090 708024819 954715648 759779708 770381111 236262986 532051867 575791551 652215827 864177279 978878128 496528587 957307147 935148305 978803810 638980999 685579126 608099095 710312917 91742126 865310359 266665657 761203157 687607928 867208780 866891708 973923896 127609764 690767802 863676432 930021323 537942896 935089220 323668387 839619553 476923792 883042963 132454136 320328991 314322674 993101852 330746207 494820286 365985116 449764538 111130940 641760920 867876514 980987646 678528190 964109272 587676085 915712732 560267165 597998121 536749327 738473194 841429185 889180091 234108233 422609198 788684577 956707423 102855797 138894163 621828838 812259440 245511626 370402276 535531154 880803712 168882370 270169924 344629841 608258816 894478621 981595740 544408554 565848441 329015211 988319634 916510393 956526087 77266875 118984454 788156042 959739988 975897678 984971763 824605150 953411027 544197632 833602261 970910928 986021135 353762562 689055706 248983501 418034414 847181055 868396229 184510931 925661116 81246124 997375259 51257572 830424492 260545526 473084420 923541496 933658390 759382301 900531345 329726958 619544249 443728733 965485806 613178733 898497531 433500006 987666746 499430625 783212081 223538501 813575039 298324168 301986083 129099403 913710796 431326142 706430355 598329224 764360531 939932276 997670278 628995925 659119793 404246626 792960539 610403120 723873382 68425884 411013819 470163021 633113589 431970847 929000367 843137250 913573416 785555291 826633804 137464736 378813348 517656861 604721764 26868113 126810485 481361258 980314945 991061483 994933617 797126660 826286854 411515726 622586653 614499743 863858545 372123857 869732891 782552704 976414656 519414707 565858680 307246862 602248571 910266365 994638500 416829166 784641481 949532893 970662567 750664733 876811653 226381953 695933900 716922073 745208029 695076366 965094883 758780767 794514612 214675764 680401430 934443471 947995068 435490195 711708930 319508683 549986655 965237772 980119180 489040412 746696136 112806953 705054518 832022308 848413251 412437159 425250384 851618244 996455562 781054911 890837256 519492241 831782918 469421923 656888171 332171118 445702909 924017233 937837947 842270935 903414446 466091242 764482945 158320380 870526639 35121542 496267926 207349813 736504065 923240687 935811299 432281450 473543510 575440974 658596525 451248589 954654913 793359138 932143568 861671564 947383082 455284667 521581537 752820367 842822797 562522392 947286918 477534822 840042551 649825054 827528143 653891708 671148852 630108229 802518330 289014549 646453083 662006046 756203862 745085522 826292236 744135644 919614342 309754377 602430869 536014491 674330471 191668548 877075471 597763633 784564239 351587861 465222607 824833840 959668081 814981731 847664888 14182267 629070567 462605445 622090162 816024560 904287577 743403427 976943441 821336590 897687264 73412156 853838334 829091229 906845544 837999137 929297107 450457304 805937855 412047925 749613285 119058232 548324157 798801217 892681193 811502835 919345604 447103634 485353913 261668737 513550218 635539357 825455492 163627526 920980878 447197200 450481083 105006911 328297370 473944078 561665429 174216652 559021251 184860638 610258777 668077563 813712389 437822227 636607364 979453105 993155991 406914627 916259415 658541415 875200254 260941170 864068027 794156396 978078957 888241657 913742953 171421880 627394610 320110121 504986829 636745127 768430842 173325270 841206402 991620646 994313143 25123365 516240871 713711618 969305377 877593014 991365229 552744456 645839334 608472426 898107049 529006723 765349863 729930833 856624743 17109816 511156770 690544112 854739159 394373335 701957757 162396456 666785206 690744727 779354664 781431608 799222083 22846790 416844456 472711335 770593121 730407473 816436434 840952901 896017974 875295686 980196191 363880474 567608962 427056562 451386936 515754749 853536998 182283762 879370854 414375803 628296816 120808814 803174660 965307107 965419988 310220809 987126657 669527662 996928542 784136085 999969794 973505276 998750750 489935886 822338603 17153384 353941707 177582047 538775242 904863837 941100604 558864354 604283558 209252079 624317371 381859006 823116583 320352963 630191925 388984830 684157218 69975993 860637337 664716566 953368995 334816613 382569902 217348257 599470845 163375479 671528704 332821037 512620806 471720439 612919479 537660289 966778274 246697626 767286301 675868300 690988147 545368688 806324036 56341243 61799318 85812783 887911462 433431021 748949385 168767858 604941751 276759095 885539314 109368168 651478274 667970782 693328017 807157117 930397404 249949068 469813096 641871997 977313968 662001305 742864572 974642745 991716428 956417167 984388406 855916558 869971118 217344980 397751301 678537038 694727168 902891768 926634382 46429989 487526699 479740875 683186326 830662905 878422862 721712685 884019910 336088775 685847463 43083462 113132563 31538996 521928560 421158894 680650677 189630618 608060610 702097280 768514413 175953088 597370619 103706509 176774553 580965191 595435288 489390476 956987517 542375299 582507791 709569770 713406212 514186756 771136863 671606990 707478645 917937960 918947129 65227246 450980625 178901309 523647273 494035758 710807530 192848844 216388553 236331989 461541590 644981138 946975692 567691018 962111517 118500145 754234370 463457330 649605855 238687690 983826154 137221164 471721033 27116410 975518435 438757383 598435037 451908246 836190529 13863442 321995057 264508694 285262128 595207066 699126502 521592273 733972734 122793368 638038410 908383899 913644070 552318546 716896949 78689130 817128211 725223855 739061235 899175849 928157959 291852277 309430623 588519554 870103796 941946456 993888723 608110308 727024924 447171589 647690795 429588660 883779416 410810486 430366291 288156281 970566539 340682146 408254152 976917304 993954945 837019268 957194288 284298051 507536176 400459157 981778825 80270465 609180744 807743863 912942791 975834553 979455508 918705245 920152715 751213619 876122539 344603880 830209185 460455745 974445855 976000067 978556605 339271451 999285224 763816101 978617352 452222353 492751591 83545727 739208269 934102818 992979965 221500393 727580809 280067273 514505304 965256835 982315175 61891122 256549765 714675105 912833291 851248066 961526634 807792478 955503481 140719297 682788360 473801579 885890226 173545534 621127434 764145262 771497540 206672193 490108213 309834421 385743649 202451906 518351784 887651369 924629107 497545467 516243952 581550912 675380252 644895904 797634411 811922835 979679442 936795740 949589844 847795746 884971313 807641214 938879022 772777418 961611229 93350245 943620283 399349618 622960383 264590133 442303181 358185818 376121867 840914211 900157682 364375972 962638643 378647714 901690335 429029381 795223069 890963913 941509643 615839770 835211366 369485237 785539013 295187424 485724206 442755859 939211946 246428151 898636838 851426351 997998744 887994882 946687794 509227897 788691307 379916710 844529938 502418344 729722495 567134746 866069942 324715791 804631081 922021082 935949609 72323870 858458011 687668368 761218440 445009687 819848447 383719643 835451259 903437532 985860804 850351083 938193106 556603019 714703039 682840437 953648866 910490947 968310748 486863208 504262555 822324227 890688934 46159520 292789776 521556516 889778840 68398024 842507531 543599877 567757843 45787294 494191203 273331123 740380682 568986804 966482393 17221577 656465930 345890146 884645940 134924609 718975746 815980533 929668691 571587405 818178898 397114693 547223474 6400982 842312793 782166770 841196933 778447550 978703440 546728748 652872192 961736775 997962820 999357070 999407757 232139419 378951842 4545418 611163862 564875459 646610886 81903127 795593076 101139434 228072259 652705251 895920305 571431108 597926175 37738198 723318328 905178147 928507655 984165689 996984614 641526193 698504763 221363957 471933648 528305814 886461310 414643657 714516918 64246807 697749445 875925091 956498959 439055127 703931827 682697927 729746626 696214743 793430480 488110939 883572080 395777601 644750301 903367686 992643922 188970004 258196285 952355254 980217479 92889452 846207827 796980523 959955018 68946346 169679208 624847994 896221560 251386979 464412258 169608653 258807686 322512706 750719907 647445168 975960795 686143245 853672796 235386686 695117564 582721923 766619801 541392169 975500328 414672730 552327295 312287639 945214475 183554251 262949941 159560009 771051459 713917618 950589830 367745989 700184800 936124214 946043780 969048762 987943772 618304594 977385768 77793957 95379820 333445750 597714196 983917169 998569130 985654344 991887869 854726543 912878581 159859101 222620894 743128563 769249020 696501317 824747221 627054300 837059999 608942387 963239782 404407961 652158440 939447097 992981663 724150187 936705828 611218671 705171889 571195650 907797178 470886524 973272893 261412695 313642778 522315504 586634653 983785566 988189215 646643369 759714400 344321282 831667035 828093080 954103460 62175051 561326827 445984154 636062446 47537202 438881094 647076974 937385497 147218301 217318359 908097579 964471199 711437535 978294567 962493624 966007166 815625571 938242399 126387713 493673146 491673929 607919199 87446535 369699167 106377141 160787240 200941203 597264113 647045247 876533460 591147694 752966584 342522488 806462818 472902789 653763228 33219965 514476438 608650797 900444544 178352401 188675806 745180792 818935169 764600147 851413838 902202679 985206065 372858682 509916301 555542816 582449345 941044000 947670372 250605938 853383570 849448909 876924196 465083212 546009606 671370433 867731478 565236590 954345200 860461722 957214563 114675158 430144655 554696215 762839985 786793107 980730062 487400670 763826035 845670203 910524892 522202584 978442432 92839505 758612020 113020642 595401621 717176187 786623583 468949926 580238449 422129086 492593764 903352058 930761137 28715294 380778465 323906031 348790139 322899182 878276009 877420669 986119002 662109029 811753422 274393316 568514548 825232624 892414886 998503471 999871426 96981756 864056558 584940302 948510418 753596652 960592923 469668605 538972062 657005696 699694109 220030232 251025852 914681255 940107010 418720829 679941204 980536550 998420975 159156491 447703241 931516371 945095394 287555573 493608261 262200311 726368038 406496832 762290521 791241129 907707299 153310377 190136773 428551205 448134127 716528845 771296936 127554730 992259215 434266403 848059289 368855235 626193286 161773651 209236251 91082233 451596472 294343897 621590737 351381880 639145434 85067537 170449406 190258337 849699023 547935408 909733533 584480017 911854634 285467995 631356869 307925625 959477272 128075799 648425830 854219477 884923622 684803080 859449212 205070697 298579785 576768500 903250919 124409774 578008110 160298063 340385660 564593670 727522450 489630676 556028015 277074721 344624146 262801538 936557315 671705954 760255195 601175367 966832374 193806998 600791689 432981910 751114244 910195631 947715759 874890488 974991199 820374890 901726642 471846247 905460252 210759953 973459957 897043925 911651220 254619733 940167622 264846598 624036927 497641340 916621089 39418868 115426454 393170143 679118693 995168334 997916554 583532491 704740448 334638042 433292186 245592911 494997467 765135027 835885232 641038613 816255119 222724302 901711252 504718221 893510947 868611533 945098854 857144450 896767402 907618534 999142429 818061231 873223958 336900987 488192519 831726656 894468614 320819529 618136794 624592150 946274056 750261700 907868133 661750488 827373474 148984513 281290786 159163756 729080900 361558702 445114669 416310638 876047901 288336220 810671994 14728065 557203959 700318932 843367056 98033824 874622380 899773320 974313888 368844120 941843045 884461488 941922383 554198875 584815158 93322736 877310562 267091474 894329524 233005324 547000388 782195633 956873394 51781798 866920597 414076004 986217069 638411452 932962591 182329618 636529732 565753187 711227434 59386165 80011011 639875141 832537109 742621223 792392837 268793199 744556968 314783229 785159200 15479508 947412227 107401123 275856152 241845478 448495556 967837635 970462911 864630987 968892055 939994492 955443699 23830447 139523176 273179315 525163198 963227959 978600768 475924560 478565710 214441146 543518148 824118472 930929331 705304855 728565097 759222406 766401669 465125569 711800160 545268643 887475017 336278836 509128868 793491598 968927674 847904641 896697321 381271057 472827898 467923522 509816187 263600805 911005166 73803185 676488350 930655749 967862743 567947783 837159797 281938187 985353670 161235636 205267061 884005124 920756685 512289658 547848338 924480085 944752824 803021003 963597531 459621554 655119527 845156918 866667836 877161885 926341868 35241355 538068287 720473484 743686932 862265497 917733015 36172371 36672341 314259806 344660397 418132883 831346019 774010597 775763406 899625566 936395050 895716813 990288954 509811673 727874742 295743385 393269935 395057018 432219764 817388606 949161016 995097447 997773141 911283116 913941593 777513887 913755969 16937722 329341855 292590216 732004142 97309646 149247514 716063615 850536423 925743491 999579555 588608061 852740807 712336197 894470427 409500332 465075153 374054614 564074125 387807940 947063164 959419208 984715411 677362192 920593233 791243081 797927484 26282968 94653128 157766233 986771492 675531670 889231623 83134715 746056278 842973736 892428081 424233686 994317671 70068158 747218779 88060236 710989945 819130963 998441463 92461635 341240846 212746898 493059654 478401628 503562726 124484039 502212435 276396732 685719155 587144249 793172839 64415994 934815219 684133447 725037904 210533103 876504492 407262049 878982311 388364979 492234783 438152531 529505263 630200600 674416086 254270470 384576515 309854174 455615584 383837052 746252582 809256680 933479001 192653360 606730881 827993071 936618383 359060270 625356304 924152095 958130424 171184015 912154242 321766735 529492781 532911734 653512536 326856120 328947776 756641339 797476088 938512709 980550083 951485584 954048673 465862233 802915665 900934443 986631938 117014785 690892113 588422629 810799137 252358675 274805142 21560526 166252114 145784164 843489397 361320870 393822061 771273928 974542983 170375977 177101020 664191216 783853471 116879663 803406738 59823259 669632651 672619240 861762305 79242229 623571402 170384502 401687997 596454686 689437287 467266557 504608709 498466645 846446985 317991402 762016200 775610526 983378219 134775809 547357655 458436348 746963303 574081502 985264265 214057953 945897475 268953084 516355580 887876485 996097294 501199936 945778548 554957827 794518530 918070394 970872319 698671143 803992958 710677550 921822101 52590129 645390293 407733069 653305555 785620441 953625146 819576496 977645168 546485138 850137788 804096845 870610048 121119519 376673069 854559742 947093632 944720510 991259716 400685922 967305264 321757853 484256863 834895749 953287971 5835239 937729537 693423850 861581971 334852906 518585311 317062493 550596342 410923497 581948913 430744600 557474955 901497852 902483040 757511678 955718277 951189945 990867480 189314845 901595466 278920489 398987070 152007841 460096258 759401271 988557470 820882294 947504134 230836326 983392986 147886848 235343128 640861721 937194994 546828503 798153153 668330098 700800210 444737491 936798896 284046793 341361455 932267081 961928427 870309696 901263859 592001095 629968589 253616200 509704371 423888675 442667580 105763149 406013826 119065236 497357165 309925542 648431811 29214678 925588948 284709381 371416360 450951775 761302015 599100238 863645172 536668938 626113330 58323015 674511226 920411069 971311322 454673387 555484573 50834938 260392515 118838060 622511223 965821709 991954755 4116655 138316388 570923156 625839424 74966468 637881640 144737413 577420860 980496436 981822706 681044156 994869455 373806040 486319819 456528350 466714652 311548204 373842253 148275472 208624756 809177145 823046109 335926985 527425394 322907928 443599923 722083789 901025147 940442614 967328317 50786355 973110127 437715049 972652634 296014599 647500578 856001436 912075769 333237769 565284945 810409635 901071164 372543019 745689971 687075231 844043102 793058706 910482065 786387072 964518631 795234425 947246361 964202193 997696070 902158173 989651357 742723503 984711562 705869302 889495672 419973452 837298612 305681173 922533618 23874729 188534408 39256926 605386422 508328019 818225218 947343579 988316092 341053346 434580282 444840523 948852181 946492183 968037496 197583784 463886501 682710673 923134020 302018827 351640682 843348754 975243018 991086456 994447131 396152255 724005994 971100691 976045489 541783949 572736253 147421209 903862091 339531195 555334659 428707085 539715619 528206347 807636725 601613483 820743055 980031677 999028919 197014840 472148655 556106774 747513029 106055487 556784946 72509831 779164920 113806024 174267972 635404776 769143818 153944841 835080804 27492292 678316451 982355545 988354919 410831573 427330861 50419194 175705432 523334415 921457837 79557490 270475552 53241488 866524886 745292054 821096918 940158125 948865917 180591658 488529389 54062951 632558932 781280897 815126628 189175648 400095235 203538700 629580274 38398250 71784551 575662907 728682683 686332012 714498870 274934341 843405206 508916295 848718569 698745437 738854638 585258242 878980126 40515952 138517624 403429665 450911486 350811458 909214582 581533689 759368758 450925558 865338362 414458823 935792422 676903468 742384578 175119873 198896232 302967184 717109696 413498740 730208385 724100693 952874089 950049069 969453347 359454722 360210192 334078524 763421815 665969315 910796868 195654567 262833522 604186861 924319463 798437380 847957287 302777147 568472352 766667867 923816907 858168584 872354040 576002411 936900465 35985277 619788412 955855594 986554595 275112118 416489412 918415953 975595444 646461391 868693349 147402788 875083358 718334147 970732784 408470245 428707457 766742039 958365021 752695572 853221582 501542241 510101248 748754499 991725201 938913302 950380320 177182797 763312764 96079922 883862652 551076321 676604291 991919853 998604814 998302741 998358512 915902449 973653930 11809046 655039504 282771292 738675175 362325611 968449817 22163622 126513966 491260984 824344261 526830815 886924684 544530911 954507374 683608548 921724825 683927348 688961697 167008702 750905159 204257687 849688259 810975880 846624018 960764496 992275539 191960420 348158517 699687947 832269253 276005673 776155650 332301118 719754479 19261035 143253951 322773010 974301128 166955470 835236687 995038019 999764986 583379503 690178273 161432184 820584358 443624905 501335156 886426624 945973012 426656789 813595241 812511483 931271989 530163987 684931379 100239898 785803480 369075620 881562639 705911600 989463100 799540501 856881787 612669574 946769127 511359741 583517787 631131845 858691305 315196395 446465135 946195452 955008772 155979892 743568771 551152340 713988656 665404599 961828094 550963852 884705426 709982572 953981701 752088390 932967718 466119783 650276219 721803703 784709949 166593806 529211774 734460607 856842126 530325161 673684574 532568627 900608630 472998601 755414244 905382696 955794995 454669424 837768897 982550016 985595601 970572795 976028019 279183347 979803500 967802407 985357007 230200567 291770312 129545411 344720549 8346418 868022838 443092883 501249957 217275542 254981923 944425799 987403593 466665275 512428621 209321105 883211254 290669421 515968202 455158551 810554643 613528730 920568245 193872363 669148141 614413477 713169881 653727818 762393690 102434784 221223233 193016233 831995804 80166699 119067398 277147261 939078094 624770591 811735011 815879201 904381638 341366851 396043943 102974736 421453065 99437535 270848385 710491994 943017106 648738448 745972912 167953951 521646955 808901868 845842800 45747689 458021446 595352100 967564142 48784048 229880682 910485027 987620222 481514699 930877433 135928948 672275656 246640553 248215524 710305167 867145990 588111370 605067496 26471534 338485123 928053868 932134074 804133441 881142455 679053300 993924774 242574156 416674460 59057314 419189915 55716882 688389765 979126185 982475192 5224925 390623992 73215505 650734405 570272520 589458427 926457665 952631765 657375373 680297699 309651615 540202107 854011027 859312476 23506479 859347318 547240319 993537721 522077070 658547694 457597165 966395609 919093569 952334951 51539840 987625931 252969943 366686919 672779946 756898638 692495229 974633709 434904622 696619640 690191433 881979332 921478455 928104296 997676574 998537480 822632353 914813515 781578768 885652375 90681567 919547413 424005177 431882526 593307311 849965598 821114887 830745056 503457357 774790005 236747207 948636164 152920992 597973740 385238923 971975572 607883587 888618306 219745299 958508286 152904453 855861571 384568904 831193341 714502695 716072648 486813540 938823387 991681207 996812295 155559455 525287359 728476258 853151221 270370364 422081424 301579646 846287226 818587175 940387858 21559495 671222201 640034027 989203287 798317970 917185884 806269137 882708848 667069762 821480888 502694487 715647787 960357934 978776078 396445582 952546870 38369195 645974376 393838201 997354802 518632936 876683914 630145684 909884978 201236277 564864268 797510502 939166137 190580793 904413869 316851997 756226270 309406914 494642127 277624757 574677132 877106161 918128457 755751010 775291978 532786911 558914111 779949348 870649938 705349937 948970871 166902595 249121560 521401970 575743764 415862912 965591561 103483114 535819671 558028010 993245682 139220467 731650216 213375367 399151969 648605511 665103804 293091915 516306976 793824261 916110793 141612546 150335868 297795616 671525212 734932532 933157321 72174145 713539410 969531145 996283069 673257790 898922742 186444050 660448560 62332107 390263058 164762119 905067396 141924029 864080024 761660045 965167223 237860658 245570356 145553893 462331296 521837578 540676693 265724217 298833335 875120998 909077000 621088850 849487671 703836380 893500582 997262609 997491143 570696383 622525893 738261183 760692925 683916520 687496749 558277305 881918229 421587438 895188535 748767572 823591890 74394101 938431285 455817839 553653354 191851419 193489243 985450865 996244483 992660773 996842228 594443631 756681026 483556795 757752048 964452219 971253386 271612511 815925932 918060359 969409307 796643511 989314543 191368517 505174010 388385427 751837701 415062958 627888917 838024510 922560451 932738787 935975161 249969275 601349063 966300758 987131859 736631617 894917975 713492429 734764359 180617792 895029726 714207417 770821707 565779737 966846699 933690261 974056946 524044430 731575498 937808399 964349883 786272271 903845448 698326198 960346877 491707715 829369392 511860536 559102561 537059 485605417 859160038 906728821 733878750 773866269 276563147 660870777 998795154 999872872 909250401 931385463 679404636 810067389 778679819 865626828 839400576 865451865 88639666 145202215 619620382 713907835 351746934 855418101 110064708 428162581 34387130 317089368 435503467 536149407 339389817 491462202 3640076 574262544 531897470 913021028 617856824 842889939 134176329 577292853 953715501 993610154 727537743 787420202 849002683 910967922 294021224 979711801 662646808 846186888 282132697 495051235 659071446 994456310 750243630 786027278 515247594 725639934 294910203 752686974 258248571 461555159 565598334 763621853 335083247 651936489 882693771 915769481 619974098 785240590 885028039 936515600 204079333 694173574 116958166 887326163 881439761 941062523 320536321 566588005 869922053 880267053 630252108 652848343 539533644 685476029 297656852 880312154 680967924 765670933 608769160 784325286 559200866 760523510 828724494 931373546 95317058 456430511 955591778 984273515 391814257 496933382 50896477 300287267 892738541 892800080 75857098 296926241 325278940 399853763 967013793 973133976 651862580 802780142 443724721 726715854 372333561 452498391 78443563 913989541 25904565 679758118 867625623 978471449 440417268 852954311 387348822 566998088 804732774 965229821 210797137 479955285 673579595 984806707 923889967 986495873 513722229 874361814 93177607 275015610 697558024 849137073 128269952 146262288 589686729 719825601 853891661 967631497 285546350 507189733 878689778 963004102 353880498 887715490 241284830 258200374 723182775 907832777 783417804 882924888 509207855 522016188 981526185 994346944 813503792 869175839 925967371 939901356 130422447 660405005 985170852 993363552 703438531 780867736 965172711 973494731 214362941 391156267 512558065 800397734 936693647 983628994 412549285 809174613 108144689 256335350 883037551 943404482 940987136 955684494 436854785 450089692 297263675 341878898 627471424 741946678 130319460 503368863 444357479 904103366 156428627 738635791 854877757 994794365 513543555 995996976 149218238 269666200 822840792 886973162 463508616 547769506 812178452 874508977 282716812 797368487 458391593 632708203 358711380 895239700 332816027 926696694 444978889 623928496 962027241 966777637 206051497 237868589 13909562 375432223 264528770 540649020 488529018 826711478 161338812 826240942 444138507 993621408 698056234 803185414 933914081 997030389 621973125 844817678 493085083 999546306 39546737 822821036 115079434 812472722 861632281 868228076 480284643 829710518 234261099 817966740 71999445 685051090 733066392 902682446 370641123 379006427 190992749 327365561 369164438 425123724 781654108 869309915 596156974 923553005 390460500 983625778 387074712 438484229 297830012 631684022 369915209 473719963 751475802 970678376 57023237 425823836 279625170 357041161 426763201 973066464 131587944 886610552 624386796 671264367 783699658 947806688 111651962 333014807 403239690 787673007 495067235 920303543 430491455 766941862 631748348 935711974 656971698 822368027 869896327 874531435 538345634 892652569 605130463 795991010 951168989 973862226 3899886 268200391 2539419 342114117 73580861 530836822 820754572 850304952 109998387 943720321 811011083 921143473 766749963 957213019 783331632 980379853 907647642 930431080 883880562 998639536 634124134 726122011 931780951 989193775 746369963 990131976 717725880 821466210 58378837 206335349 206002716 329579804 118641486 547992754 244432783 569501655 366098407 968467514 71206922 185803702 642357606 972349648 583540752 880591057 704630275 751854169 569736585 877737422 572314861 953403744 542054372 548042588 718609249 922220341 581415940 915446513 125542322 332057176 869929575 995147805 675973369 980312398 45962846 651585439 869633796 922393319 194018513 200758051 612366820 915312754 74518233 667798450 917274514 993485136 528803431 797149469 88860099 350694079 999576188 999988717 679452536 756591288 378794850 459208074 28642074 154154829 414585340 817548444 50106725 897266550 45671759 996382950 916764911 958211806 33362207 588859320 619636272 647083495 247293070 628870875 739924288 947699606 714088553 793179602 67004367 550411807 952533799 987536727 16931407 398168147 278599096 302428994 607097774 973673682 205417928 557561416 621722742 842547550 324708963 658016232 212309623 611092308 597805868 936230148 815542584 940432578 669987690 910436961 360650878 449297251 982341113 997454049 265617499 966666887 943753555 968521099 196475038 199225412 832401051 971217824 65531102 633999270 932231764 982755804 500841615 740169443 193108656 712137305 524650228 791759406 382529115 539436607 910947957 917343353 254210105 976057203 683647057 716107259 737376476 755321763 513186285 601584331 21384912 388346065 78506769 503362119 12737051 813154915 646999151 985441651 63063842 160407877 334918126 827922216 783495878 983066633 29721502 283064894 529803631 740940023 499850976 798506270 956940370 999707924 128561827 546499830 301816611 480015486 411521581 925257432 433760538 489979411 963194733 995856983 840958281 940489681 777295360 844354791 401858381 642895563 283796025 780671966 207314761 268210606 422205352 435839079 229398529 678996981 75986542 495649838 271544790 804222595 214952766 545215512 750950535 795196383 371081115 705817179 383443796 519507828 462819952 960947685 554265139 729750602 554401442 987753358 460987039 813175618 631148628 737605139 256350327 974376455 806141775 873778365 294981634 649616176 705423994 875247955 149556887 343884550 295928321 719988800 354417193 451979644 489049278 843396836 928190954 953324801 394357032 961126928 588932021 617197794 26971927 735215870 200887201 967427157 340873553 590420203 160373265 520545525 99727276 418576624 924407335 980998275 964975759 995037664 321281992 547466135 429500425 504246948 112517070 939338744 90792770 537749478 575811921 919888442 986033679 986607277 138214163 820236130 471714006 687323193 447810802 528835260 778857750 991112878 433567547 983360313 900867142 909689179 582823396 742580296 810113222 933756830 946790153 959526648 777245068 942831325 298524042 699076794 108301464 564495665 117802244 792370985 179491143 614972629 23422039 95565843 190996521 972794692 315373672 810271565 400108122 585489372 841265800 843646853 948953759 974611465 451525903 484396791 477838869 591974477 141012075 272168255 47085652 582821373 773394914 810384389 55829899 718130444 744101055 802640208 352305710 683440084 236368150 280805983 940258673 971820600 87727317 889567191 305921736 423299903 80828931 987299303 829815267 848764225 847945084 973162960 176210025 339389932 993970031 994249615 873203590 941845447 904515973 958864754 899212979 966308069 452002679 464587800 43928429 77175678 268511895 795862424 352060990 835723761 801397598 947442213 317025818 646748807 667432573 886612270 269994820 908740667 477151689 512035144 116945131 182690025 922949062 991019444 472298402 576133649 680305760 684296096 901953349 909188406 497411214 694988768 990295048 996684389 809863889 888937325 218473053 948307714 14556845 55343207 722443932 880234075 691469919 919143687 256576870 804681594 600083710 952873381 509646105 643019019 711175190 804065565 959633333 989275058 723842862 902449090 589410675 844594257 481385461 858348520 673597171 925292762 369011851 411909323 79446296 985387046 472717781 989254488 110538568 881567013 977095225 994725606 35026025 807024981 136858806 969560256 72158906 812100937 521699631 861494695 715621705 809380456 278683333 974022782 463132305 735826632 229375740 815519089 212449706 626616839 455889807 804758824 882276972 886240060 882983243 976668328 649666118 773400704 756740681 996337745 451307525 676049364 386869836 940109794 830767955 833478768 984771878 993870297 851013587 907039414 883332333 991258187 638740221 690993155 700467263 906289426 908877152 953221105 817143149 861606214 623624362 657143741 669256522 674568406 472185564 472962188 322215803 763024847 906892713 986644020 42328534 790502319 696759221 737473024 555186335 944882789 604296258 642611153 801076110 974413618 230343247 502414816 342585677 457282646 268565069 839493826 848260933 975506520 57219195 785195726 313377551 776909247 309155959 841477662 717302531 778260291 388430223 731362535 975046034 981541329 512985146 973002956 206083136 939934604 404119458 455715474 45887286 728443477 616962609 622292151 336090077 942362263 269958018 854749688 258766409 283289358 593557931 962831154 636670218 641396810 957396589 972488594 548935344 649015958 536165862 912961922 932677694 983014816 873484409 996903599 656268676 790475046 234359402 647396701 183749147 930025176 389673400 938306657 98800529 551653099 899181912 953534104 651950177 742793250 420223583 879427196 856218380 892861397 631508588 708795525 635496704 854957685 823987537 953169210 227639638 415254712 494383877 526266779 244623755 638378526 404802781 823803846 475692520 521735976 847445076 888213839 974099741 989378589 12006245 295518128 950385217 977727126 621547991 671287997 717852562 811952677 43384684 946381087 973793509 990663438 772000769 834357650 1504726 168235984 885110342 969074476 655507110 898594695 42215956 351194010 77169071 353214901 106214269 781474718 406022987 498848477 929191044 963316411 210980268 430523370 101937315 764049824 340265657 967229026 265322917 364412510 333599553 663448148 445474781 804145765 186535493 716633720 809532861 892840728 4649595 273448793 915542082 944069730 344805233 885517775 918231780 953989142 367578524 882805827 629159534 872378125 619095486 699785885 470289216 867446811 247542839 733279747 877890493 968521677 32042392 40132359 48873924 573983379 316138614 769972921 739400424 855635466 568582244 946169446 231623952 451158300 137553539 942908633 515400085 574397106 732441046 915914344 619678703 705493139 352869006 750299712 34758348 602998947 993790357 997374223 762692572 771147845 189829633 748963771 830897155 860585336 214961492 288605464 878089522 972627550 120105875 274694275 1354829 803951345 499688839 860202814 164420616 634925329 118582941 342251506 285228070 680916612 267699566 576317694 55606126 536846341 225514354 789945152 820282046 834708353 863801662 932488433 647768498 809768146 480488599 637500762 19547973 452965004 51845158 536842665 144990403 365999392 663978518 823795632 429479478 704478195 915919531 966140178 986463949 991528864 550391061 998204154 596797324 684893873 155893815 561105548 692689644 769104580 795068513 844146681 776664818 820639565 710740608 730467531 532900746 883077150 22072392 489424854 913914903 995526302 869963635 947186881 908230077 964057823 550567360 644118143 127301941 386044946 626694576 893518010 978680552 991848174 313976469 525535065 500061362 989792546 552554111 945417344 439921183 806983945 421894652 550392435 407294504 799652327 191284699 633327606 447943678 637733793 482769957 772390484 200805191 813576323 964198374 981590797 962004140 965119901 826262853 920590237 861690664 889340775 193307100 604440157 58115267 686712043 633069189 726232486 624061037 711877389 251395720 760971208 660295226 762410466 391724348 928907932 787948970 943422864 841713954 946233219 510151055 993245822 506651353 582854879 52434351 946902998 195167960 944844479 441841576 846371569 624536486 955273519 98924419 130150650 43852940 316472843 165147117 963596653 322354759 998311173 338290296 780791775 548351163 936379349 819091186 833588445 18235174 186018558 974005055 978092490 179563873 495383969 122368355 459505598 546349225 940770564 183657047 359404479 163489538 654371984 831776788 913094819 915620265 999943186 242510386 452006974 474015894 598254421 366125898 510740248 75519119 478599570 750155396 972283317 506363031 851996021 580831971 883556806 818943182 824268344 443078350 804993560 428860276 996564336 408149803 412102124 738005681 859329908 602209556 699491933 582286237 810894127 876983036 971107917 770586677 848946993 654392005 861670576 58661312 136769247 776585413 936742030 861608860 935105561 344798922 505910777 82374366 834161101 857790085 939357935 50162046 775526052 217282419 785066649 901221213 957314889 351425478 618661792 664573777 875603653 67158707 669885475 956144811 964627854 361794587 764085612 191848986 312690320 45085846 307828047 408251943 540135401 340745787 735781805 613618491 887894105 651290784 753231414 388725586 633097231 750507006 821354323 23430208 418855653 824384649 866993016 844134008 897609411 186371781 476503146 885635433 903729193 928381220 986475738 550538371 837472145 137793673 767687585 33617336 34269969 671215368 990764263 903742206 955623193 751631793 868832249 482191455 917786542 233989381 845156890 448962625 841349699 901178001 968177198 939704491 948420011 697224642 943876055 944388108 956132483 117099804 128853933 168678554 465500840 800058272 849629404 911138697 966631372 159321601 819542720 219106424 431630001 16570927 330066146 937001466 990149349 849593610 941652620 745568503 906599140 258174085 421798857 258852694 902461391 681167340 702402587 878844167 956812435 482424213 954414603 196565814 734633581 812106917 971516537 607855917 859643202 421679074 932762705 132980438 850440590 976982536 984401667 475194250 593684743 10132485 465670843 992526708 998876085 384492849 961768595 89963106 604870386 955519977 997073253 204122195 885435547 441093541 954156779 384397437 645629237 10052865 299869668 417195524 497675168 941425315 997327526 356862501 396737695 101356078 919204602 995827375 997842429 471514528 751780868 324385737 900894500 62511740 685739569 736084024 945835078 383716614 815389923 834288426 986930762 958235974 991468567 673826648 978701658 995555276 996098287 214327050 942188008 873468692 873795005 49200085 702779412 537211832 547402524 524129640 764889300 951215568 974845460 546522144 972602878 218609410 920539844 415402130 564391155 161711153 874537822 302450683 842431201 887624992 902126224 641684018 998966797 641477087 995816089 289387875 522989912 824262215 944408452 953890407 982123577 441029848 545468124 679297826 985394605 815166636 959970055 901361177 931453605 993764020 996685104 664682268 927731806 254730006 446773411 562540231 751035558 540738415 699261651 222521975 587998509 364457738 936732263 89595915 562045143 45842509 775585954 855294231 856004937 937452982 983109039 259039586 593063428 274944784 940207226 374412926 662857460 842630352 867363980 961356847 965835053 499303113 771786870 751630529 776866489 437673473 926684906 29921906 101214102 877013830 891518028 389881764 403232075 33695929 139873049 672967118 972496646 560008223 682003579 392154557 563906972 354467448 479301055 41770693 952327048 204232632 536860099 576187135 861545267 776701708 930553524 750104161 961256285 315013387 597026337 40057140 906054759 351791344 397633433 217545615 502316008 986234652 988033231 490012869 999030509 183715926 676834952 877289514 984665435 39942158 445063094 269243941 294867381 902183733 945992563 38657145 966388047 189061067 546840476 395514052 685587983 372369572 496060204 116394962 923244543 516156803 657882982 271897645 785975737 820744078 954510049 379486501 923009641 928978705 941565259 905619605 915375270 83976259 838072061 411098769 614763785 573866225 780179074 959428220 993203140 722438424 858386716 290518261 863402647 951889214 971940342 737705071 783989918 711532562 997793563 966646484 978937137 33786327 985406251 945481173 975869541 592067896 932455595 295105638 928202390 288363156 945637785 431300937 909639759 108083543 769768772 151376020 952010106 343807411 854738787 133783070 752888881 339588476 683670610 247115691 906917873 578915500 679746814 448646457 475402207 875612237 999026762 301541020 836174519 641944592 671767165 715760760 785529338 194261233 790734610 755479049 763738415 739621971 749921284 280810407 633492442 127594885 995591581 733983547 917901180 773864027 921847046 41117103 728160051 825615079 891434230 839196401 949364131 908138505 908790607 953338113 985528901 965485386 976822213 906041150 960471196 263227205 375763089 642986529 991058776 581635076 959888430 507573210 720779288 921157834 968566498 259742745 909137833 768891151 774453104 601260034 698029373 190586535 639228072 129216364 763938183 439840811 763398728 720674370 820075153 192771627 371115645 437126254 627574356 876628247 936153621 489481467 519062802 502351073 717141904 590411911 621562251 343261824 932874212 33197810 330692450 197916153 761783805 394543319 669086588 248288567 319468798 638380237 878114029 11633303 893502353 301971023 702981037 250684540 858906201 545106299 828056697 892099762 892834861 609448847 823442142 816362314 950615372 684596456 916184830 38957429 289358640 297641482 801397535 53412344 363769411 798057682 806864383 809297946 953432597 107762811 261669716 408744989 999548967 697379380 850243705 543466752 834105683 310087504 963083879 451943923 670079073 347816382 789628598 585830707 659118516 139324386 574938089 83753 336885907 995214629 996710309 651953089 996319075 347914548 391750366 483693575 926337684 71278602 259939925 747271913 786483498 777846311 986054084 832317877 891735265 33723711 606462137 176280689 534020846 93939383 535575514 772811013 908624679 704540503 865975181 940562564 950188265 572245680 772848049 626855484 715766682 573484994 642928922 730732297 957366986 287899375 839304935 723253955 874584131 909451183 992780571 7256248 632039801 577243139 932607574 944693143 964149069 230853778 345899607 211964928 425746706 722703061 983085748 388528353 987071153 432027119 717356932 524063540 837306850 906183073 954748178 573781661 916910749 72041626 283213345 568113623 736692965 474102686 793700575 59176020 167296083 127552645 641841788 296195533 825818793 730595096 968523815 967214004 993671602 340225843 677278535 196695831 932488072 63308324 150883332 780493098 841733938 917601592 954026833 560644737 840622808 895976503 937518125 748021184 788979613 628706851 980427290 821719831 863166996 116883724 428343941 891027631 978895743 471443595 928653251 432287484 480309668 385245297 606205971 328117445 902090287 308680060 652831855 7876448 304311457 782333904 974281574 721575916 768461431 703179086 951676029 56248293 560311676 199875339 758525247 661976627 939137609 961246292 985659160 175160898 821085126 798684239 824113762 974948580 975768921 745581476 860672992 826577793 864731411 916313570 979053322 845796631 938956319 147604941 178385058 7035253 896657655 267067653 430620416 797087832 890434483 122469719 274602822 852432202 896993536 140371425 703848177 396007124 598401827 405493407 843608363 890965888 983237184 511947246 916534676 676461992 939685144 109785122 392333958 14034035 129364059 418707123 937934625 458127108 825307693 374931578 578585184 360766713 555076004 296767156 483584416 360963137 718977168 701553672 961143837 222708885 994702351 507424906 734017741 238837204 823330011 923195566 974148942 790647070 920489298 166513773 992627774 701803739 850518970 883198356 970102556 609766906 998803860 413356602 454181541 808086168 875245628 571828978 698699807 127191458 483089678 337017867 468802255 106407301 824412081 358352659 860991495 790609361 885216800 878900518 994470700 207304971 900384574 634994592 973288990 563530444 768855369 885707673 993724482 519257432 832434462 293373951 851240715 760340079 861431850 333959227 589154590 437354275 634419399 106853447 171220471 602766455 770893972 891250550 977902247 111180533 793534674 786785566 799429247 655270367 937000713 303583893 791865121 896293737 997066519 406835764 458778932 712909092 715453937 540585770 997120817 794760153 998864519 76378608 680657263 361023342 397443762 471284863 727753875 28090563 477370935 923991326 944947719 453170260 782488701 172036523 211845081 676377881 998844902 1440767 960709383 653148363 765892721 19272222 424256537 214133921 896177299 733314086 771088211 300365718 648846395 70468124 556473204 637781419 820924546 180334519 808099387 736245455 872713135 893207403 904641155 122756517 881558036 573989330 881331325 822969632 998018231 678109709 974880289 930201517 985019508 998444802 999944437 358840700 948986663 865302668 869209855 625972233 906286596 426087404 881128093 362109439 522958060 764666447 918342985 401338154 874736402 926867945 937203532 76695938 513286539 179174859 475338357 159810169 823882659 131757130 964435066 819420275 819887143 114081628 431453758 619078818 744789028 54448589 323409609 545489604 631268676 899040813 915327720 924956973 967495891 932210798 938659790 832182930 888916179 658085182 878255705 111353966 740965812 515938037 977248503 782228789 865679704 571954872 845954005 59311555 661941640 855855966 945604180 606510197 816061686 614753092 978208821 140628924 597869527 184087159 412355201 928566920 941016580 657859714 914684023 444663451 458711337 368451888 595520673 616815586 689680629 945513496 953244184 716751825 934980582 235909835 377602581 293846242 339612486 686034302 935241762 342625304 888498492 201566191 782260004 216942821 540666703 473644754 495667209 753736329 911807356 780683895 976416526 686790377 726577468 502274350 659960531 797844986 890692814 713729755 940275573 815740363 983476632 907016788 964733596 525140974 712311021 81370549 982678094 688214681 864470331 683870198 780087560 731696082 795121181 223749400 985441389 240759940 665116587 491988091 874955210 110419232 353889105 871569162 998344245 194342593 419436564 554300815 562810903 430915516 590404145 964731561 985635901 591241448 847665307 157960251 530990708 667844761 674663401 488235578 831040210 314411831 332495824 358385035 734761906 627831401 823493991 684913761 753984195 212368069 347337681 351619559 685704528 340255988 713588686 260524942 928693004 133467148 753341857 169919942 691307093 674136234 827476632 209213969 993087347 712810403 795941042 172417728 414931875 412401701 648888722 594416964 738320859 89339653 457536391 212675621 512807878 687684673 971122791 219524503 721776706 818368633 986625733 953619688 999545925 204254250 303294141 979091592 981476232 545452627 886582613 943093551 971591595 936665663 944835418 797894321 966595229 391478442 839148175 990148024 998937099 44571716 961868730 962281593 977507581 624368071 800371157 842515714 954446285 976269806 990031516 28322601 939977400 547692762 610520663 933729703 959610148 330854927 468472108 64870343 702162439 197416353 997515894 121409285 300813477 88920132 518289179 144374411 968144484 96031727 178460747 36675342 114460430 65186205 957512738 802748259 963291290 219988895 310159894 604783779 647138326 744436685 777516466 197606506 479569317 318333419 957394341 843795111 905531048 691414266 962607784 326192967 450468095 724738932 966701013 671571748 681649592 329851704 918407383 161728838 281134976 989189776 997447723 478099326 563430578 2472180 806243990 459782043 977285344 892480768 995619145 836219194 911203178 79166937 215208785 776127273 917762081 573499572 913301794 12924519 543472673 69950779 864362054 773571852 876664354 55111183 343988696 924059871 968541585 425708826 994585419 730118323 999577362 825426911 890596692 967729217 975334619 285136512 304785146 299238683 354952148 343093880 831482816 501216645 894722889 761442524 965368832 841069314 938172849 670326246 746632441 406275282 886497296 720289095 963546430 265096808 937684958 580387106 687011071 57561576 527479257 422687660 532219340 515681721 927715625 18983021 82180142 630923631 948820796 90412943 920925821 820282689 874302750 590872905 940170328 205111934 536520561 92820885 370101015 970991792 996237747 882987047 932560886 309114835 714953337 410281861 803982632 955184509 975165036 753495480 987554701 370430175 660176393 708149684 842108425 132291588 332004209 554576825 720932846 657594688 919514235 865522735 882626291 49132228 256619069 576171282 968750382 27243319 868642706 13746821 859420621 676751887 821309480 251871699 475099685 194366862 965749135 905927450 960006836 546662959 591161699 288636509 921803949 618962375 946423763 512088145 893356347 171740814 442091752 591141650 645033573 774738572 792039381 597474600 950418404 518004476 972107672 497050152 996252541 683859198 776386396 603354039 749885591 441753215 465757808 918137827 964792808 882203071 974633005 339722897 851212854 60197174 313205072 441148633 454005843 553680977 860630405 149495154 423925649 17432878 351374568 208148407 646800080 962949428 987506459 688572782 733339933 46292856 799346240 675206486 933600975 173328552 571185111 486495454 645789186 795290789 942053174 224100086 825295667 639091746 873743266 645957440 997221423 698635908 753210495 203994785 494054884 965166980 988648111 469334131 670478732 45708942 815376091 192490539 465565532 244677266 960494993 847349411 910063982 708081889 852894588 67769116 167040613 942361923 997634923 835930176 959201864 785726414 964110903 480603202 784076695 292539043 991603546 238844119 494111503 190178141 899024302 160951573 551903285 152691964 366121513 104634354 453779335 759844359 857021603 993926798 996147125 985664075 995596726 758642795 883004950 330846651 983111216 145874003 563549648 466671455 489375080 558446638 847697971 425281227 895878766 143319579 248648744 843479874 978778084 138434692 743525786 943535746 986830302 364183117 499441857 429463613 857231807 761364788 799717385 385750081 727670445 933955519 980337864 917805521 955271016 572998075 774415044 7589930 122847137 509115428 552141552 495207520 786742015 647576034 951538202 59935647 180727304 716325867 842437456 403520238 748814725 749356638 909333931 656099755 734936975 512213837 765831119 286827763 585050358 157754151 624849094 523388770 783433545 83140707 795320423 913153658 937968647 726471368 987288300 358983717 915702117 802451843 837982842 468971739 955203351 127206148 209030645 901831493 977673849 907869550 915419824 739861763 903382590 376473458 814801850 778638784 857825424 538666177 686076155 164026352 917578116 494973017 681102190 43284735 893861478 614597804 680854392 762067155 765412088 438918616 632088425 254270882 451401378 88273918 368666407 580401909 793596706 47743122 112689419 673779679 836529497 802354311 852329010 639165793 767672799 524890853 955762494 200163071 664526416 938780905 954037438 256632781 290149149 507628297 977786328 430359327 893921673 284993188 860744114 414763819 474895481 887172390 917072438 461444748 746831656 997643769 999473344 867244996 931372597 854765504 977750502 680033404 867154810 435553146 700521218 181028566 186429551 428779712 845314014 956018247 998592305 213295401 555964427 980279063 991520049 425568048 477763267 803021686 888695388 483909724 653223065 140125206 961114666 593080916 931907625 528178287 972593374 184209064 799590924 754228482 989152697 75026525 378057509 403490735 615344560 143680247 407204099 573943304 992697775 932976389 969176570 927141040 974879321 901234412 915916197 438755932 939380835 737686259 976917827 327402973 387267873 285615475 731648927 21448885 244242312 579397785 781103294 80442362 320446173 934377892 949844099 737447662 757521009 316530848 472268126 323867584 865274167 372654043 384247298 140698824 956767163 314857936 637365472 767307733 800926391 201611995 408598818 617030435 819983820 195465304 950915445 514101919 706880974 292671222 427787972 120761487 424807767 705087470 790838446 764132462 940906460 604262436 714345184 291023902 440104193 850015420 866763643 457984571 958140765 781031387 974114478 404149770 979346288 498724914 924081554 269646548 927552438 571593663 947898163 181585425 441518018 106230293 740125831 416941280 792692443 843691620 961717748 678546164 799813586 537579139 778423599 365259451 389750680 110336180 241641222 380983125 981234962 113774283 346866501 911202056 913958001 437227289 623383989 376451728 443517200 443324379 596504346 715287037 868579744 578773776 981494281 60922038 911121640 188173457 814383282 430228380 910047920 281472448 996299045 431506795 583504537 915932998 932689996 303272824 330028010 476106971 573632420 782221050 809018361 417763448 696467540 374277469 715119167 437980362 861676731 945524727 987369069 322095794 425166621 810414332 878827653 326316880 793819635 88010086 709629387 874307647 992847100 883254190 936012240 613322111 688090200 389963177 825336435 352050817 530805491 451017026 632495240 905885644 957843745 125256233 969167035 370219054 792995289 121240667 459069066 872205285 893769194 237183606 805873137 971577395 975510778 997927086 999414383 30061534 588665451 356587679 442379042 671073377 850378172 7735768 913187415 942182025 942364886 716226507 948222815 477003827 532200057 642121565 934466258 440193137 910855087 998314160 998544403 646742711 994530375 661172060 940274852 871782420 920553059 608564233 954347664 74921332 116098439 98110120 879425662 226032477 527307409 844101287 846237134 515781170 859609098 509327077 539522795 725013338 992734176 668860239 942508792 464730653 472084315 684813576 855665445 999107771 999239400 630160062 854198452 821629741 915384563 547673392 793174385 747890102 986632236 373230220 421774378 171353059 639997351 146852254 540022142 278232537 325095090 936708424 982915751 655496203 817689832 184704992 411861922 734063764 776291313 293069313 684386683 881524088 951074478 94525295 486732140 663768989 887964180 233190957 611248554 250244485 856075444 267832215 393195216 815239274 899896631 248512856 322507772 989926317 990630672 625799858 931369277 508916211 641781232 570680063 663721263 543951063 815936325 83324137 264974763 496619604 700263194 115517418 270191818 387818715 852090263 538690107 744687185 102513892 263958603 204535637 420184615 905201397 917649348 755008392 850610551 540090602 564745313 752627873 825974616 168965137 592899605 414859075 744509548 528928925 657525397 879084781 977845310 317964163 338259692 643492875 995720547 964902081 981830231 87858686 329060412 636649833 892875360 867029509 891662650 436285817 441173633 961171016 997044792 873879725 904439511 489212974 724902511 576222146 841918481 348331326 686628297 41648464 804772788 146672156 964861725 81893655 430155620 248358981 925995979 86364766 532380057 683095137 818460027 897194683 994725237 707846034 897893225 770019742 886461850 913990587 945072562 335544754 875504258 606991528 790996210 562975657 864348263 351899125 689981235 665069528 784202813 580981239 815675053 544766821 842336879 148686337 604211445 299621988 380402322 742864682 856995030 240607041 267680367 374696733 922987201 289962412 607555847 147770360 658266821 950056338 976192160 381629372 777137648 513703631 587913312 214222846 621521080 781122025 918727754 338643516 792607870 796931039 940219429 895396689 926753799 313774394 752427901 868837634 953757597 886495873 930026086 634800196 856179352 303039320 941895774 204261782 484911097 674933576 771544460 835974119 973712585 606901149 617651322 64467194 157584876 681111829 960617375 6147597 201091468 794012241 835082708 386672722 794145654 288243360 331972037 65024445 941697365 873796180 911247444 272288989 579112270 514065336 825684484 247027571 279786395 117032488 972308243 822389999 984084806 425088347 539108667 804828315 820956575 832059398 922422400 541599123 543731921 4898067 176471139 58515522 446626806 234541438 891225015 571623504 782336954 82960726 88186603 544090052 743920173 37650810 744904313 797947199 834635067 930973457 999493800 330988121 824622048 367328102 755600051 596301439 617154170 610107539 995383160 730598592 943860979 278978182 859990405 452808055 710909802 657961070 889635674 141565391 421793646 737840618 845774552 485460848 779039857 99340770 937435383 941629147 993567747 492466977 993708925 758687664 995245161 817337872 959542134 589383592 865747120 725333982 958272575 921128540 921949228 621690173 781893691 268741560 440566032 466646426 871797578 923915296 948720153 93019847 205030031 802336835 808657638 521774735 594641005 441572984 554464144 695337231 904207837 455163281 629455064 122284133 243716062 911067472 942168001 406044841 498144548 317429402 748352013 123101765 867293374 581259278 813007513 720521474 880456688 38901210 577415590 657686272 763913643 957971102 981840548 926793963 977521582 996924024 998378719 750987203 844003590 785257892 964567474 798041368 924162667 502183667 844459638 136621801 676307470 248806176 810699556 656291537 886210460 489149804 853020751 155796139 871175065 489739107 912951286 107183267 294678074 439873269 996444168 549580515 877071924 469587734 654596012 796585045 974308977 787945112 852724349 925464267 968001609 883697245 913342053 510616637 751857683 239759631 421432722 201654533 682728907 331982707 724798681 572380204 801980622 601861646 656479718 548539666 554704086 901978961 958892074 251545536 356410223 473251074 931767475 368440105 392114431 578401333 771030724 660399969 812588555 171178334 787256980 326193372 621630225 477798015 486220535 130272808 942710426 231094603 437770498 50035751 941243475 313859554 480530519 947175206 981956877 517349412 779820895 752894087 802548637 910344216 967658778 532590719 988830082 432764666 763818890 124214965 697137645 960306034 966706120 920521297 987499686 939022498 996875350 985228964 991586108 933829265 959353664 871484154 992859909 215062285 743672276 879936711 919525879 922703777 958358257 285090804 553976600 449509884 964115159 345642509 878512337 406580131 983301792 500461430 603844478 359075447 447656628 37228452 81391631 1015185 791707746 652688121 730826439 353683752 379211778 62010364 802855558 981275787 998701376 608791900 639548580 687239752 933592626 728967242 916859712 720832134 778065449 468907491 607644407 407533523 969903700 399910156 825919679 56866250 726928035 733168729 810068986 247904059 865774893 708884978 899789743 344691133 850870539 976003212 979054728 580978700 732814247 111418534 241704196 487170170 502973444 146928412 922738726 546995375 943417328 782741986 868099547 610745613 834866968 658630533 958408079 448748550 851914311 844188193 916115978 770715828 858769353 760842192 948142512 824912641 967022814 65673454 521759225 213373976 426446918 482349858 763747692 952000794 993013126 651052524 815421842 374575688 399514368 306263206 393347303 913777106 914113659 504595090 851669533 714527134 835305423 22305090 504795146 793771769 821775458 601177385 654389135 286252943 898776182 877335403 905736957 175351344 817222681 380305672 586915842 349018833 484946086 789027554 894863199 435934259 496902737 35849179 782971494 714480621 769172590 142908978 469389094 920040677 950128052 208422927 611901791 55976959 467984328 533517383 748170742 719601575 867145165 249339174 972001956 100830503 114066696 423566647 465418924 948576276 993327505 84807064 938865503 477459806 561344702 835791245 853451494 518312699 599767499 187322787 527236556 164903734 553446919 185391930 843577058 909351065 909913941 622946931 660379132 874955669 905825738 788090393 822937638 747055368 986946868 434565875 916135629 925727276 990469779 93150528 903158160 659110941 940146810 633264579 980236859 172508111 381435327 855593792 945874155 415485207 465193953 633014528 982935932 507970266 988222449 671032589 942078558 143703014 761912714 612036831 627997631 999809154 999923859 27942347 552390152 332928628 570384230 103848743 894708023 13361259 370145019 365815830 879219901 616593139 928786713 712332039 749610163 574429157 883672552 119500624 693967052 101853644 582149636 447371251 623292811 766693691 883916973 866345099 903003651 589731622 833176008 949486894 954297849 199526487 883054042 739853733 863821144 658338269 825840422 305170887 318884097 988782076 999164712 649203870 773165996 871051994 998813256 401052272 969837099 250656130 414080146 455048775 478390284 871922395 926313832 15056055 363278249 469378151 556890319 200455859 880297782 195809848 402050488 728144369 874931171 799846633 834469517 497237070 963352294 309519810 383290037 439862872 856865691 621568108 785330666 848437910 951617439 183279750 697273904 849611383 957144712 737205720 845713669 585599217 914364191 800720674 984926930 692834888 776321290 665186414 851208669 588288562 728715946 360733131 924785627 848598866 971070695 757709171 897408192 118422740 868322518 181714834 450850649 891152683 924067105 438443802 487867580 305258732 857892061 2290562 196553213 577914343 884442274 391938340 702500982 179055561 232723646 366791337 741740061 875066328 960468715 295517877 341731789 908521588 979374019 272148923 641416785 952367130 970952015 969652877 997238428 825402791 966733531 495224955 555012100 987358584 987457304 31915447 600168878 14785826 584797884 337284184 790574847 307063346 701044488 616284614 846832536 821706052 944012568 328208961 342361349 627026090 780516243 940168258 987077753 504739592 661769820 923162072 943891408 97744698 171411297 368633426 978430671 512244771 650855873 121848899 999388640 816087198 979018660 802135744 937160710 250866357 359211801 986975792 995327528 771679434 812376710 336284970 561920737 324803743 459370606 333866763 635632547 433868094 495208956 375042130 610228432 327134431 587865607 448771413 958980437 443532464 915835934 810390796 813825897 274152733 652358916 885349933 946455363 282900515 613233398 188276857 220364278 723367212 997135756 542528797 836349925 84852203 428305288 591337635 598708314 53488487 507980621 599961621 830277531 834814487 929304904 129182492 456469041 401499465 685140686 778203700 780884341 691363365 951793579 262284496 621292371 632523382 911397070 750294618 877689933 732423768 996298034 763219225 816910879 309036044 362957160 48906075 476959255 885574040 897872722 543042853 578850149 857897821 864343045 880175418 919090023 359775951 976088834 999896187 999927171 524125289 941274812 551800305 920346728 958518470 975224816 662560449 879214544 68649425 697460602 420835030 462567915 976209074 999231450 12588552 679115795 526517773 993744541 157124139 826680642 316600397 380309717 951073442 958570027 980340587 983364474 617057852 733891333 599579634 714382425 525940553 801815283 622869179 702485729 132229745 741809401 224750696 719970336 714558566 796221066 88840384 741652241 884183064 907866126 278150780 685910638 361414229 744032075 526336794 775326441 524816991 682156786 904085360 981214275 62503584 216553974 801997504 972356304 771998091 812738636 509266371 741269757 89773111 169877526 970549088 996763837 432903343 669170168 534483694 961342557 406437421 616507358 280889690 311828247 874806913 992459892 349567503 980678291 3058921 591989944 251706575 615095988 207478256 438417964 905827694 955920957 693020646 902412934 113161915 863169765 380596340 639049695 980321386 996746480 513307336 783786962 601955902 884819977 271534296 271829064 975951405 991288430 768230702 917489520 201588035 790364052 107286447 109622146 915081147 966349616 665216307 699703847 856669843 884259445 202835232 240971850 220087944 574271884 868457077 998266169 118205730 830017117 733633529 993782794 824059467 826869858 751432624 856352322 820790984 927587884 278920879 734487962 732143581 820001135 613081047 712195110 609317351 634792381 847598960 904335459 622451600 630104640 187176755 760368010 991230988 996533968 74896491 167263114 719082458 820085796 568435559 592724920 32822930 962235638 251374374 929303109 705915107 986563846 206760678 902304716 85722136 865054591 300380682 382248936 930805369 990300925 80827077 661532449 881505034 969323682 369851548 607844167 531545064 643985434 493216344 832898430 223924293 341270155 559497553 587710305 470474271 530256288 343370686 994605425 480555684 741079906 464200501 508435113 87648400 740453255 395782413 900012273 639549229 975027811 629983562 731405379 569916661 705518477 53627889 110836264 627527284 692953442 980322077 983836743 89075123 687293111 321042635 394383856 352691827 761643346 958884596 965036324 714047778 733809909 442370723 719776234 904535759 922548534 222742220 817919107 47091444 970581365 466872320 546503148 388648753 934129825 669949155 838003098 873453982 889570502 112915312 984276182 590521879 815984217 426018707 626000101 685996460 707585021 310641186 366197671 312596811 508464755 624312777 943314867 571775641 656955216 341256582 375499916 377269041 498723506 500039225 678273141 13480870 338538964 304509236 580613857 588173540 834003443 655362801 882116691 369994134 707047799 740955983 879676812 515206190 773024875 979467239 993288204 108339666 900623935 703100939 769127565 619869804 675042621 259980990 738575020 529003000 575469009 35265819 602071971 417621412 624363706 499487351 530046576 844983578 991227408 628715005 702565281 402713878 820232860 696591260 777240305 32235323 999889886 489940930 813009435 43783670 545038696 25433344 348399269 765341447 970507265 185314643 856025310 387373972 849019198 320983148 524389008 813076587 966717812 971573475 982965365 645615279 861315640 733532203 894719203 206972236 385890489 226821656 498962648 770121430 847509267 107044722 807827335 640626909 733614135 964891746 982788880 124352633 655147483 505840891 536436213 518235538 881653756 137453253 505005388 773093720 914351085 379593415 765063715 756056908 863898138 846866633 981219566 790310167 797687209 548952437 982290483 953177408 973542595 625401797 921582819 731235726 766397111 52225322 829308336 902523242 982507634 314098543 832431837 966535101 983173688 423446877 470087047 119091777 761501530 843692252 892956227 996303467 999945049 760632913 904475952 718188517 867536503 164512233 440947713 788014874 807214641 98116909 110865320 590590925 638687098 232553378 920371112 685613891 725007722 538123384 848566112 467697234 687793409 320073283 468398147 657825311 726289212 769833065 815825178 149807823 190813682 983601921 989908212 251497078 523034507 305096107 729753798 5131341 320396876 581699239 935054444 844992178 891562148 942352307 973374253 575348906 680858956 800569241 941323778 129376347 442623775 582078019 937976886 111267638 685774959 537915670 780051295 974227079 986210374 753724544 754904573 712486268 865509489 474265125 765222850 968168831 981312444 169770451 620777570 448441401 947782655 460041553 825983956 285409728 897099488 945953517 964888318 330957017 472246877 443999965 549617288 416706223 911289807 872759708 957077817 122257942 473517321 296375182 552937963 293304938 749155121 615552188 857693548 714347208 998713282 489676852 998779598 258439953 490363927 280776556 526333231 753216914 911224444 827470831 996419911 891408440 969692100 85611061 396889859 810860673 955982359 628644735 846048719 325395394 757935118 147643375 879363374 318174533 968046469 230933577 973166218 683023104 875848004 464840542 717310566 852214892 952308307 188625808 525538212 984154952 999181883 388151059 868030155 995063950 999264560 303827301 347656432 109484446 430060706 201572776 891810612 806584718 838569444 319427684 867157188 280872871 399487941 141518432 180718471 252950442 258893815 340050640 609057156 496732233 497720490 915754021 985773565 728545125 792439246 890676099 963356679 581826777 679872039 705001621 976978332 9759959 90582482 305038367 664919744 568414636 793313309 725408808 853324753 756932048 824799704 621004987 913242695 360093970 599676291 544690187 899248874 87155740 99328545 361994663 499065374 993730884 999198906 732665712 991809365 482990690 494736446 69077411 916016408 457265693 637034585 71174790 306957343 905575542 966037828 351386616 951594605 781529384 950062532 48656402 258185027 544660206 780444244 335746307 576224516 673833842 995029164 268347517 879197281 12202683 725802281 553352639 995575820 680887407 900995898 808142652 993294171 680006625 743940824 346284788 838320505 331113637 878055018 836476907 954284115 661737654 941430663 795949125 970122683 861227702 930645894 279702357 782969396 766821515 878116254 24744948 793793419 247735925 377348449 260209484 523716007 903429684 992875230 429635968 487386924 885120164 929590716 169154749 432088188 290235293 381028112 514848321 889991361 266829185 446175392 799247390 848220498 959069032 991233605 430844930 772933819 718080744 989159253 885096647 899437532 5850510 564266868 135585266 724469192 979270333 997812691 217466379 553714355 329372917 844751434 103263253 536385669 844699289 994152729 545111827 817238984 408241483 672971286 669340370 921357990 347621935 482242322 197092518 981106072 714211235 935060477 50888183 199710233 338208630 399298170 22494902 665732983 612569401 957953438 980632975 982133559 200752651 790719542 73630481 298149164 608080578 711192552 752072025 860461597 725152071 917358333 4599261 367850113 742392116 767762353 271751951 770160528 193635427 403211888 437207391 811573346 378633106 983542626 133648317 491543048 664775125 801482470 318663694 453489308 796577921 823651784 211333884 287192447 156553415 773800732 265331908 492962869 619758631 754976024 467362814 724863251 970829953 990354436 234450170 699398462 75726233 752929354 224027859 808844117 349151299 505220148 943367293 949974862 18119043 877018392 974675304 997382584 210996185 685709760 542148836 703150940 597046102 814963746 934719208 995216105 4765691 615894139 736390504 991037436 977650645 998284297 156171964 938703588 587720829 794162442 996247672 999007393 522085824 786238423 504448584 776851010 815406192 836336651 35062233 951000881 960112725 985584028 564350999 774989206 926002044 999808629 30368219 778847008 659403873 895172846 381191578 482780138 540856261 547678225 920647604 932478127 568008862 817504964 279737206 444417818 575106683 979803954 399622575 762217825 433597479 946541051 871933162 956026710 268074311 483836305 642707366 942835396 786576708 799859056 175894925 210737834 368231463 715810047 928853660 991413492 349955694 882038236 815100576 937130726 420273065 699274995 166644119 582756622 486200536 713279249 966486039 972748044 859546453 990002157 923606720 949434649 86196234 274229845 859198722 937980063 318287899 751712305 97006227 897275960 791562949 965026853 289013887 458143989 397379725 642354064 266108220 420557860 271943567 829518304 801082400 909765091 355568600 456701210 775524314 915087186 217378657 814390389 325837161 875121250 191613742 327943477 424284358 738360171 544975413 917860897 481426603 676568322 15778690 763742234 592483432 721603222 737896813 988038219 649827820 797960179 556640181 601429037 532357570 948424225 380789209 966328409 595339067 788684111 937814806 969940406 151604320 875375915 381040903 631409066 148941886 155142225 526227011 687471291 821956649 910349163 25891099 106126219 877426539 903885589 143347419 867877785 105884905 917296473 48241379 279227192 22004133 855569858 708326958 823121317 911802720 948461004 743570676 923906416 377553024 634020386 55366302 76251017 509523442 893606257 726191134 857940443 757190558 919787503 819599132 924346099 821117457 937653238 160940319 575426142 779734075 816456552 619810967 708735560 888245398 938905662 478773101 509196272 799627958 842858512 408865153 464739400 994820380 996668497 365014424 663906497 894046347 959320457 894962552 975104991 335810101 659745142 493608271 528488906 839479699 967400427 288296684 775956648 408567144 594989081 985123747 989173919 746208535 918327897 59939542 423306041 280116999 808703728 948979536 987240077 475897245 695697410 122652980 291903769 976277220 981446683 349577973 680231796 847506183 937355735 467853886 703941516 976903241 981047691 869883243 951065087 165898703 439564495 948320077 960940894 594239468 653496339 860436040 868121335 703525231 962407433 98899600 379550862 834633598 994686721 651186367 901282097 801379293 863971266 61823995 80070446 935988937 946243311 55619556 749086911 21399178 301371352 300367447 366098250 174166824 568954366 565720492 637550386 556256320 643388806 949377796 949422200 25398150 264885517 757090990 808076692 734972959 826068599 469198610 921217834 201730204 305137939 505524265 902429289 8820389 966521745 636568308 705375945 469048898 747531561 812003898 874327499 670770246 948923298 152893890 622843621 332151614 392901915 135394209 352619728 232704725 678377900 775473895 983000559 182294052 371835849 296365165 830512077 431397612 751770200 789621096 816082680 206510346 893086864 748669140 803664533 604160858 631587543 999925589 999978762 279085325 406016590 677555976 835115288 56676716 594847047 451746055 992064988 96316215 959424999 997107509 998319698 814555136 931329729 144930026 480006726 803353232 822663350 713924483 832500392 69170444 636214013 391119691 835024836 773760252 909740038 248222375 308467974 336135678 695229012 95480151 574082247 10045070 329334366 713497012 883397672 214734012 716064440 342129208 860648746 978242418 979453913 349195246 387477304 306080329 586133776 189305167 514566474 224979231 539909134 744029167 883267079 774020941 890422813 535297015 717328209 233930005 693454188 121762385 231271478 555359966 667542870 291189345 984002202 986735878 989368446 666513979 684639508 893295559 911209063 479473848 827148733 797891844 806968985 921329865 971116216 32973091 311394681 430440692 487472620 371978463 626654641 374851991 841680602 655129122 674964926 91997116 176325105 330470128 405837408 956436609 970906940 89821803 910042745 147845081 371199783 719726701 961278240 202216624 341450912 934585241 992323198 937340772 995529005 49957720 957163018 708918880 931036755 936954683 940727238 343480217 660257413 392824959 509935517 788949094 838822873 903700311 981614333 338499249 636185456 737248114 873317900 677554318 889038406 644031669 806953801 423163276 923803978 47054882 497085701 875494342 991327301 454143707 848342874 947768476 984603382 1800374 172754782 462346038 483790874 460813758 512822040 963065586 967721192 999061024 999850656 995004245 998331653 799156345 890890493 741316074 800186842 395086414 753922786 124791281 621488476 846434798 914146068 313599806 490936692 65559453 83680658 980388673 997828351 866492198 979060690 449842667 948152891 498367574 810184943 79354165 605955227 659402381 666575683 76651543 853568752 258577311 310843002 979535954 982356893 250733382 427184857 144670402 798594504 991464988 995419502 289326363 465536597 257438889 401061198 10552174 868987449 993483306 994397945 159568017 292035331 784217956 885707185 947724281 961276638 924364238 988058784 800479703 844852661 573271886 924759751 44785477 928000276 450147261 812947361 677493337 922300229 465618330 895245114 689235256 825841553 753682979 829180578 398265095 846093374 256560559 840774700 864030612 924600405 230702577 853777303 267118065 823180368 323705630 866410332 935041800 975106054 610819464 726385013 637577461 866280227 733896680 955327685 86857891 225715044 983247290 987973105 863629367 969367443 603460087 694877352 522545352 791508391 640171202 752013984 923735358 948357611 467433004 994682973 932494218 957468280 13011552 310329277 774775751 826624506 383593248 805081052 140187477 584335791 506332051 619295465 466416947 510566027 119636787 818491005 249420463 362817161 15703634 713417510 270027373 716777087 312195399 670512610 170065919 192548426 454975225 841809726 983805840 984158679 524242069 710309287 195261767 456802569 659758278 867970973 976370616 990081028 405180724 758411424 578444605 865633161 765079099 903393496 931927884 949708055 779014599 902593528 589232266 650464013 122405690 364308158 666320120 819450799 619314038 954220251 900046945 903405262 125839854 490371720 750325711 965956832 383211957 869124938 945289217 967709397 511316259 657764254 241579429 739625337 848785783 986028492 679779691 748045612 533813132 855878547 598036751 772293302 336234072 982979878 307695505 571175634 62434116 803448079 477618797 575648982 611746082 643211846 539396941 988850964 656129594 980438904 655574439 774745928 273673034 959297903 75013725 855569647 590413780 597810133 667613991 933858222 387584422 794226757 526800442 700503419 736385182 997491862 501703847 614496278 493721804 630746293 282494032 499010349 503657036 710007137 47462999 715048835 228683966 661645248 512619169 533465482 807029415 884023252 251421421 585616126 270318255 291369620 195110895 333021593 108600973 964235806 92342886 168673584 104020243 630844747 260612808 512198413 510493628 702694899 229554223 534684047 988230199 993780071 768376501 908609159 844252341 958359030 298507572 389446262 815932293 834862620 508765732 784249357 624833310 874196778 345653624 904961798 900807785 954758049 132121455 930823527 830125083 931582416 658821371 739076360 123023216 442430638 937770945 976296237 238743564 380711039 154835403 388184972 988184829 989565591 971265323 998433324 455031807 649413919 96131531 131068853 311948059 396225374 64291104 768945866 872380376 883679931 89933724 419222287 491042495 776241449 740253617 933955355 603169125 946531042 835719869 988729607 542366499 838509175 286453288 847180593 725397122 879028844 433887915 872949798 971617939 989010458 439576893 882340627 823542645 979838762 436761310 718411986 966623502 977369145 978576076 990569210 668867573 913275446 766575804 883977804 978039642 980120431 822493259 975007271 915709875 968111042 449036332 654421767 854533653 977692856 649524861 929048300 887274746 921363602 146155738 435816430 299449761 879924914 322175782 899490105 522241124 602530173 622628229 990858239 621379919 698616749 992964607 995718061 71002064 765999348 603520553 704275925 472413081 636510781 724906535 960976050 224503539 811959614 575282295 915248368 620271915 790014901 736175651 933397078 863561178 894836194 146274337 829825431 937709277 959594340 681759803 720868878 233812650 723195792 795437558 923342747 217838373 385483807 923465130 987167406 594081779 845307819 36337347 214878336 28877397 546633936 692280928 755373527 25069304 985354377 137776175 329858009 893657395 956544671 312946266 920348689 647395022 982244943 332416983 786958921 722238780 823314276 402352482 840519694 657787445 827981090 581646919 806284162 741402223 918678725 684159972 871135108 984378572 999489494 173798541 998799213 477362802 587556507 125532151 772150349 986717280 991676789 78656745 217943397 306688690 329295597 288777768 518011156 516364631 827160918 248894109 290436116 156080023 768942178 51468938 278567278 744937474 926896678 833520038 943434279 801716747 835186577 55283035 294142681 467883912 942001984 501979646 522633547 720270026 860759866 826459218 856809677 683844302 886356522 870142756 994780997 40202586 78917386 681146900 913027407 399928120 872636815 272565734 797600614 353527155 490625567 294907754 657401380 530842355 812524620 512249912 883809645 60315285 463784535 854888552 883052774 384907728 427420941 822760333 927916394 476426123 568746030 758189502 787762840 599961465 837054562 284734079 409824847 568587667 932987634 903531874 998168086 209059838 586064357 914779224 954170383 465162261 530165875 211889725 772193305 648080214 727962375 295979202 853185029 820063901 852716748 929398162 963222206 111639180 126832610 419572393 628802867 734276610 925129482 599705233 669790544 705533973 758511786 470726739 985069907 856248640 979101924 684941095 792694127 849052877 932994645 472991284 768554956 78963817 980415363 930890058 963370204 235577760 689832805 316011894 595673102 143720650 427999232 511589485 625304553 765073727 812530893 678684003 678943666 221033322 457638103 335325272 913578521 594485069 953399366 673267905 837138065 109230524 470944569 397580560 825942749 267491871 661045115 715142920 807096175 785720580 963754347 23010027 373965699 622093137 931708467 490150556 596686898 497430572 678598490 254832210 569128368 985759904 988832005 904191434 943790574 212773580 786943569 372898980 428725516 470649952 858414741 618209523 801860585 449464980 748237456 657734792 939622774 106764581 807009178 426368427 770471638 59833792 460803919 98898555 726789005 992428754 996145132 475469788 822502189 282014027 560101885 405934515 511077034 786813142 853300311 899210810 962704993 195528984 787393534 433168124 933135289 198134572 323711634 614490950 886276345 651944372 877299398 257397688 843192349 593306532 769519603 998598408 999973393 176056385 810610476 539631103 938080849 981560037 999033028 114421263 346145772 306184272 327287744 176115155 579803805 903937172 996454808 901385120 928335378 428963666 518751464 51485624 723137700 599648162 937867120 763731786 768276741 522091494 698031446 271034799 630984211 428702635 761808826 883457509 984324577 351838234 402471695 896059387 898003324 19724525 961609351 520311801 932519407 159560012 544949920 687992793 928254282 45772017 757067499 688126779 705597999 191924888 443748677 231144743 298835710 226736750 406757675 183894540 450776627 791363036 813085868 223125060 646661845 323955007 944187521 427845195 601913726 663615326 911786618 966508591 984046492 372924180 610127802 486537269 905273715 348331901 723127891 226405112 869759394 676517157 770314963 312486329 990722809 734542422 888191951 587613134 916338058 555007038 704907733 877509730 926561662 831273995 872399158 592872855 864420938 327574206 793256154 753923826 933317039 792464181 800171499 64000857 585255069 103736892 701425146 876671634 988483190 744448043 968580276 528338242 747008419 880690052 986193179 640427153 698584603 300668306 900394403 861590365 968761293 837084256 957902385 533774003 943137565 745429463 939859814 325936549 420583281 215748473 664323293 505241118 767283878 311261582 954557238 921451298 955380964 20690067 611939995 716752062 918498224 716466980 790040386 906646911 960982059 772332757 807587561 321865429 901085934 572439621 830807659 511473339 878204836 531006325 538356651 195363443 196223920 496880940 762067867 32134396 955596548 239704082 474602412 948897590 982742162 141202424 454062852 900308563 907142195 176046985 751629793 710400155 751644445 242831891 318437635 524206108 766810121 398628009 407261573 875007605 930327853 593068215 800331223 730736160 858311536 944848725 974447583 642936428 690332153 269215413 819068074 335394408 582814521 387909605 785657988 224195873 599999222 817952271 965347329 285708258 745247068 495940646 663039693 415473595 871140176 426861397 477838814 685634344 802258529 947074529 974173226 888143411 966222748 875965168 907498554 123217640 815522529 651846117 989658091 269276778 543882571 739041546 808747769 306189812 480727520 102663776 511135552 514982685 643743217 945791820 954912688 695449965 810079956 221403069 684782689 779093131 876361634 239998754 925206139 547591859 965998405 288497960 892480609 472878250 586258409 270605428 320689040 808314650 881555628 956163854 958606877 47333571 971789284 521196057 546436817 88062615 758921269 396881653 704235303 896885519 909518118 732891453 778305538 476394129 979143191 542893615 659828234 143687917 396613265 939729571 980292997 100497530 385163061 580393989 713835252 759608716 869116388 137949658 163465260 699909745 961243227 848851546 863336955 6344188 91914280 764707642 792879711 966621163 972117532 372530686 388894127 762286929 780768225 439550340 769727636 140652939 173687410 431508086 831173254 25140083 110132458 493828805 762427350 228792700 328152857 386231158 460701916 703158158 743296926 349175545 544379108 349142943 772167447 373156710 964362078 94434505 463095037 553774568 814049717 799202989 820397640 784637625 859719486 4067434 483569551 597976199 950644055 995505255 996916518 610229595 803724370 132244785 565809585 183106234 363117681 407813648 560939877 832585405 965328194 747880647 780618562 353324415 640556402 383148749 791251516 328120187 570227033 8293013 740649816 537465288 752783292 103656246 840725023 669402524 877962478 784578773 824473967 4968085 105235324 514428956 840127465 995799721 998185118 532087075 738039082 582475117 751035053 244657576 570626977 471735960 503954281 982589467 992973914 475761030 859490680 211445529 438171049 583040668 677521398 717289161 747438550 867145494 899339546 61543948 955250262 920885770 944132117 321167584 501092647 459935361 952098783 442188900 462500641 399882258 498274866 621521087 855858991 365069469 924174895 155223927 334833931 987539714 999985999 334639551 564778595 230107596 837117897 349741296 525467868 720241027 919581595 484101180 656428427 845596643 901532458 416195379 942705978 681301963 690349321 484589143 818579489 678012845 963667456 226935892 612076804 442167967 979520563 936674409 991688963 402185626 871544532 347045798 828375189 51128307 201506741 831202004 933252924 549433251 640957787 105427069 110784748 221342716 741815034 117855190 734769888 725018536 990363978 575631772 842967429 235315863 439911612 488389348 702413817 3937442 881793841 175490179 878347977 964706896 969440270 274658406 297920658 423832387 697332578 760314045 815117745 188973279 300307163 935113292 980492676 728031164 974269530 758481862 981763483 729730389 833113069 992162571 993218132 600507418 947961435 145944585 808188045 350251478 740233084 345489338 467399733 227616679 926557112 409599355 670610508 436626853 620596105 91442159 494211174 286855175 573378214 304453225 528594278 969619347 990132913 284434173 396556276 865982097 940486067 444339211 913364239 223205539 795074579 607016674 988021691 214640436 757423874 109717774 603340039 125524268 467026482 246516958 769094826 15539436 981387612 447736873 920765231 962112143 975113070 562014829 947878218 946474374 998239079 862413684 984529134 274372143 747487543 975680343 990024184 43352304 760562894 497701190 793693324 231947275 429541700 837979264 860202294 132282563 968030004 971660800 980048527 872716234 896168630 28914474 933321992 403655009 718798889 769402953 896239696 993985710 999378044 653698837 672044491 664957886 975295491 453455160 761279152 998610984 999477069 356771606 412952029 200160870 730430035 688185846 754942748 16638866 215643108 424995868 886437090 142337006 686054518 383026422 461547221 2159102 661248825 974414 664213033 620287755 719688217 330190373 824058428 889087018 904905506 945457448 962723088 541181406 799471726 859879421 998785298 295335571 751717454 841731394 976354201 500794017 991910309 275740025 417791220 411151891 718849484 651291865 966380063 850647828 896462746 592166207 917832223 60757135 764609318 672489989 777079796 413789011 433085432 72109037 540681647 630726915 746190705 349386469 557623280 667247603 744433053 410395903 996374139 467090041 709025411 404656020 559360739 710284605 761172163 32572630 742831410 893801426 983389505 135593269 456363142 412685739 650720881 141877423 476584741 599767438 742900063 251799007 416974452 334329621 399361300 905924156 913122235 697454330 944062048 430449553 976404909 42280555 532655861 638052086 973273352 299246461 780540233 763637801 928886670 256614702 719664527 641306680 744949442 273007999 352510714 562876620 982107261 997802921 997979690 463551475 517849846 145627655 844856531 433884504 852344734 568784152 971466828 943532657 947937004 56431861 619616389 49097342 693079049 803427021 827884467 369349486 957156406 877632387 944538873 355234294 725839503 217134752 637529500 37731712 901951123 34704545 390168893 932937240 984465900 479833423 501996985 215849876 998140990 943732492 948030943 925850603 942852812 230843724 642519579 955748155 964579600 435178149 787569575 933349550 981793645 743590078 891478755 40735329 370472700 191834073 765211395 177599558 824088499 996671596 997024119 732003566 779611615 598238813 718046669 256911678 498643608 21736027 204648916 468789170 922649425 988618281 990832635 976985831 991847000 241050090 639438709 500110511 708136470 129414945 238740945 550286040 740305103 267350786 738581361 500440480 692506540 876294018 980231419 454028187 461262311 90790101 868729859 782394565 961312760 73555130 804217484 458990442 975612139 948134242 973160843 25156692 875942971 864670045 904031792 825439358 888444311 24010081 990274568 552995626 560287344 627361802 726606327 172257286 856146543 349345036 492867656 695133949 730138299 406033287 882882456 597475166 686748528 872390125 934130746 755380474 909401600 55192886 676479498 252448033 713306565 814111889 890651653 621711553 902496145 522746648 921276244 20560035 965068325 652599780 791509680 183928807 606231148 884237778 997792670 187717892 469717779 313917669 627403608 147982192 386697448 280077266 534512409 816295900 825262333 791088872 792218552 647877372 701923829 201744128 841741791 395512928 941958588 904025325 999048666 407252767 441586647 822817474 956495426 921450773 958317716 432233784 791059200 46183556 624750540 161635403 633649565 420797045 966248035 7271618 477412774 306671865 567984964 896988829 946919078 100472515 310259637 635960867 689592357 7161365 488301113 208676841 541143309 434269184 693224849 758157905 780529299 926800047 986697757 289917685 939085536 42553843 49379694 282933850 510271062 432712282 484712901 133270574 350625859 593401974 662499958 57929346 216785461 241328010 747249372 160793172 215957236 745110052 876168630 600273813 669822594 36612847 298343683 863319546 920777604 596239499 934552290 167051302 271649603 208250306 348732761 535505085 783839320 5357051 920753857 155963310 719066462 564253853 753831433 480694662 822202645 514812870 779752896 903081229 923289610 83971242 780818956 475694686 543102760 472944466 593668991 24660040 795587143 680441677 957966111 607579234 823559177 878228633 979235065 488689246 841679386 771187512 895850474 510157212 766249867 436690516 559346844 170359976 721544773 957394753 988347540 70269012 477368597 619488925 781096493 984049391 993100271 792312964 838437115 738714851 814282144 249929675 964306651 564455440 623071350 45153465 961890600 335775374 846341260 994390131 996932091 538726453 797631063 837626728 992811755 709542834 846518814 399228350 729219098 667731861 803509827 50089726 317617738 413459767 878687388 66674046 433581077 715852707 811204332 985772214 996115187 73064123 213568340 307682019 777979691 699245934 804422565 85504394 425303651 164104287 256435254 515796484 982325575 435337291 986657600 978691151 991826842 847378022 933182709 207107279 217112355 641946934 780163654 470628987 842683710 79697492 882167220 966464781 981527405 915434585 941503573 752068939 866987455 56303620 276533637 259874970 342094112 51540208 791899291 432659046 555800066 38764405 935181082 759772857 972692697 460549041 668537788 223805169 825947308 126779444 984248469 275010259 714269301 971733991 992075359 333455612 585968942 334375790 544081980 557003642 907672583 966268709 985602207 860655185 967398340 351587304 869910637 255550652 745138937 189128758 505103248 274758598 857132378 825538782 888317385 238902621 901847392 324701625 536240944 714164014 971088513 235111475 286188441 240669307 538495801 266430872 483747292 4911406 540466304 753332029 988036126 467694171 994709600 304228142 453174197 207033566 645459104 454701680 463350509 235482751 629679326 702093923 762367582 910922731 948019406 178359859 734196211 392390044 677714472 621169563 716022673 411577208 567170577 232658553 444662777 637204048 991384744 811635511 857450728 567332436 778842358 550039354 615894527 372135192 668572152 354324973 367017809 71216964 303402501 551635947 615445042 254873163 756574982 691166255 741971870 370478084 895542660 823673441 870895206 590706193 846927432 853256747 974194738 263442203 762032058 945952441 977883320 276257000 697420605 272233378 691250818 494268737 525745548 343441235 419975830 755289203 975752955 780596701 988012660 841838040 921510258 510013601 924394967 135767820 576229886 491422614 940111846 386047562 439612929 234893882 564559482 807697198 927666490 777369189 982712965 432201220 585391652 135133148 365216854 121010445 987773017 323219504 440400625 919212526 929671990 813725193 933225767 60709033 165000264 224059569 980164450 876407976 974553730 892564143 928763613 214796101 223334496 757223471 910325104 733449471 777628889 456530994 682067678 955558403 984610506 685049553 887698435 683210550 901189765 678938374 880391246 132109987 279547671 141100133 653160475 21703803 738500178 1741313 23273831 598291306 986147074 492596156 928149716 296577230 890474959 176454913 860199678 836455038 938356935 834735203 990899119 165451112 804197072 882767518 952489473 602527156 956818822 182428959 731463457 21345740 662990654 709753253 971046821 467641509 974823496 800026288 829939606 721877174 854753978 51646763 207085443 720670529 836901767 33257861 160197250 897412877 926611767 853683462 929048436 490541985 831394835 457553425 884132258 300685614 492408158 399155238 813800831 156840363 481116742 766620855 974847123 427473192 985303933 868836071 874734426 301834574 330539024 322261282 940158504 285483432 810929901 837034882 959184087 58692039 836783807 889440253 907955198 462124024 623738598 93937050 392489518 240487267 485062279 533486927 567493979 634565629 934595704 542505293 947363096 485371535 866255102 903799119 921571287 158364246 840445605 72511020 626620414 142327804 962490674 284068222 492958229 520217566 706132903 337341331 781037566 236573858 970014308 379252763 517892560 725665110 862457213 663286678 712925423 478452426 721934144 919306669 948508434 114458716 989295426 581967717 760127951 758795929 986450571 876061570 972388443 799580327 922460876 167432207 474161349 193503282 564395301 272986705 317014858 116987925 992946256 270670958 283328370 31032771 382456708 192134141 805739019 142239180 277221453 616191006 914233722 228629730 791516591 587744127 771773834 188408591 895889816 224781387 956702520 781811208 895388647 794770877 974731695 9653024 293137510 134178572 242710149 487808479 565169021 807911861 872721743 838913747 865985595 436468340 477627713 149245628 866021027 160733861 853474243 574410428 614619712 599294129 717246067 990736110 992439395 485904202 627381836 195196749 549518401 36482428 407332243 573747964 811836365 561482276 729046713 28972103 246345696 39763156 970506268 910514373 984589694 205327929 873472215 803246203 846672422 313712539 669010716 486570605 655402971 469049661 828521226 89734731 635041756 884401384 994095952 107021732 777648322 970530551 979133195 276506184 997927438 50985952 751261478 71230048 826135810 377740391 456116341 523967871 997419179 184087847 455646214 179935839 824058159 182356844 477352249 798064580 878774453 846134740 882521501 870807507 994034124 883800268 982400469 56372565 361672973 895614324 987197569 331661001 478093562 618203738 736978919 352876428 856293479 14376557 412538768 319377103 476682109 937369446 943665899 84497553 977892450 649664094 966637095 27001012 165750502 783817818 836185326 644254804 972283816 753772367 983786109 645156948 957989109 980036128 987670900 589787648 912775235 545632697 993722017 640402330 669166245 683056587 846705082 413400584 474732176 614219671 905346354 753217819 826007001 695611554 755593798 343542981 771035404 612758100 872690808 778231526 963541166 11285719 286604145 538924839 987920209 12354823 718755465 992540356 996939387 827505459 830552723 519958272 540068070 779085945 794841246 534732038 906486400 343470244 802615418 294816986 542770330 444557550 731141360 22645337 962855008 986367898 999505157 57482493 770912727 985768429 994073638 644198615 673243014 693100578 962878591 183521223 641341134 272230619 821666473 346574424 465419324 177079557 720779461 564353711 753730936 181677594 247073260 392118049 911504824 508778020 831412796 124824672 710959251 223875139 340854432 100626273 212555595 135632997 723165659 591171751 815570810 717198311 860975416 298230592 707549859 980067299 993020099 616987298 774770139 579889921 659600045 317571803 786140730 164387610 870094942 12288014 580840010 514235536 568864836 715335504 961349406 748633585 880072447 351008857 407725665 761637039 882326503 275836178 978029819 523013364 524058412 29769259 801843852 763442308 868516517 741731739 810633286 604927768 638794121 435425357 732100435 412935670 639186210 476501162 744636803 678639737 974308356 391328318 586611699 495087411 810481160 92675621 856827510 652266184 765022743 604593180 908184265 794692752 851140786 849758210 931024546 133225114 574462881 625622262 780449669 686089846 860127271 215399237 481791800 738465050 918972112 675228215 882595914 926708149 949775680 401283681 816937744 502413187 677423205 979772618 997822265 380491778 523082982 941203848 953113900 427053422 458143715 872224149 980869767 388819360 935044943 948240625 995193330 314308709 443999546 70372267 105668032 287833660 707532347 585932636 985307486 797693170 941041616 454256174 833438569 666721560 985743008 430330548 776371501 224629404 260228516 570478743 971352659 19950484 779138808 568183187 771157930 588312262 698013610 653487178 831951577 483414545 834378953 898802291 950788210 312937101 748278971 49271007 426009341 456998156 693424469 497798320 989877106 189578427 946513657 659169240 874074204 620086591 971041551 496464244 825718231 170635950 758315359 152966064 592482176 627536422 881625819 297553082 622814065 213166122 674378709 609301584 768940629 274513553 511311941 936735681 981729386 680495686 887132828 800942451 829141257 571029641 876084342 194083137 697559760 342499629 751565615 918290347 990714751 25692302 389720444 159121567 801709491 34649687 929181393 896923767 923197720 181405163 832353394 75230390 829587056 200815070 722220117 997947183 998737175 529721920 892758204 66971908 665730468 636319121 843254130 132145660 458937649 430408280 789654131 391228233 394517849 608169957 892165654 510937536 955230247 862206165 873081397 147558718 748015578 95520931 466111293 560831058 582833006 910010719 934363907 863846886 903753698 848978434 899190967 492115922 556436265 560010330 865268745 148218056 794721453 961747146 990674851 160589438 523745075 672448362 682406403 143641950 732896221 45537486 276497842 847731865 927517463 630566970 834531226 504269123 744080896 171156099 184479813 676674261 798601170 539969470 727207451 72935104 631470588 814371577 899916934 349153544 800230548 627913425 895493143 39056488 353285516 660412667 918581197 550818098 901092409 392499528 864659214 427767638 494935912 215204305 268364910 855435463 903671840 447318161 488694581 971425717 978869004 781428720 943585199 608913840 958513721 35167159 133124214 367651773 599584687 444096730 632538771 751724598 869091536 480459430 770646075 181480126 853053524 546215868 836749598 602336918 865333106 867023543 983327858 268104200 904711022 477453142 488209728 488127267 767020415 104703610 470847948 615870408 990074120 237410267 465976476 12339364 570597588 873187134 893531795 917724374 926728261 711833611 966648479 234974878 795531771 642328214 968250395 571321743 663501936 724496793 993446840 712775213 952759899 511265315 868765466 219079806 274196793 216827576 481514063 891651460 923298528 284557281 574924618 930508947 988966788 324934391 594638105 965675253 981470384 902871572 940016785 272291597 441512164 462161914 510779216 679695454 883476762 162655114 417299382 577798049 857717777 796612190 884643944 28868800 648197135 316617600 807262993 301593309 617121774 648390434 903155504 40333851 872647399 781379959 857726169 202050589 807469221 634066680 979691951 962395905 997966022 532667891 651332236 637947897 698200160 371361336 433330086 410835416 569737787 502433498 772559493 958442314 966684759 578999047 897786148 137611984 817287041 430962074 980331162 227694395 258210969 264270128 307020747 340020251 928554380 112060320 198470158 701219643 798412722 595651319 962985687 626779455 893928540 530972780 543229438 232380326 740251521 107613873 191331578 600308979 848519571 828229571 910511667 477132579 539891178 515116669 755599089 35874387 933710698 822704 173713170 955749069 991148096 96261239 346839508 443130340 494534099 767004214 836307849 354687194 701516145 981357533 981455028 550614404 656837715 446094799 725362071 979714245 988402917 687383382 935988490 497725161 939875881 252024842 451457664 620232802 688987737 774662990 896082398 282098936 803622330 408493205 679939846 811950081 999854033 333262393 535628438 866165988 995400334 296210771 408419243 971871902 972466204 160501406 433022734 411050526 520072161 228530219 657000592 183418624 578846738 874929006 885719995 682560181 956763858 125338374 202095891 170669042 420850157 401970046 965525999 200624222 808247044 49540076 614209276 124830764 733625070 465781061 568607016 795681620 874288625 400516806 780253553 2041125 304015527 973829903 985277292 62855901 577538864 575774148 987886139 856252371 924541129 715520075 853233101 359670369 937590580 533374360 590857775 414159862 952038545 557853683 670493060 370869108 955123302 106616332 711816243 452391092 795026360 564796062 614034329 312484255 680260947 761544476 932171018 468681042 944714329 23367999 906296658 946299967 982179629 382281033 472457586 485374059 935461674 97844229 960943495 332500408 950485609 707267732 904305639 358614179 983882795 155418645 929543913 911480877 994066389 550715056 907893277 856251165 986088340 284505415 767855740 276367345 287521760 423142630 472681962 744938896 852832413 159636902 689142308 792878160 933198600 944762352 959876028 756578927 809945609 192528377 975376926 300203080 701354003 893306045 953272367 273414045 976573676 620754346 918047623 431668145 444290818 363508751 389782514 553273481 812828291 410336993 942658109 754605886 975735081 94862530 591811446 320464092 667144945 51469160 585890933 975107680 979044646 761638900 814101047 90697778 534286037 669340891 691404401 785588715 858576667 611915765 617225132 142268022 515434999 51912673 727699259 504014617 573369335 994238974 997255069 507117348 727649952 985456666 990470510 782262435 870270110 886408301 965151403 506162595 633511661 528516119 774667746 739547191 798382769 92228793 256725238 289962649 666903236 974568480 989717454 222539023 229437178 13090282 970362070 111851620 379455475 27474839 425202849 167663391 901573012 269965079 829950821 513067875 861089061 845677692 863857320 379803482 674726179 556623063 727001177 620721448 992072004 955623767 998307538 690358339 736099827 136600248 493644703 238069027 478216430 339432293 623348542 542375086 581799532 970981201 990291882 470105758 598535942 448404037 975374041 293950197 334555422 498935704 502471579 805967176 860882651 648497692 970332755 184967515 522773045 807111266 955533461 208610609 435740859 253947241 762553204 208621441 306004227 512077199 669442820 602076449 712586675 899954448 998511648 169588247 837250717 329145637 405265019 291901205 336264565 168786258 583519104 889924061 979017277 637069486 866487066 909311662 969930422 891736687 939143492 794652430 833240362 192492907 915684330 273145038 960247950 287992038 510252155 237699129 667056527 996180743 999042256 833809739 897741251 109360945 310498012 261518432 307110102 720537720 861554604 316924810 557543436 610825954 769536982 809164403 995852605 74766815 805586079 13600599 717528267 152029728 787859947 327308749 754949098 293423831 338829616 578116985 689189299 361756205 717314807 811710463 981908219 498194653 823191656 213097181 419414585 17185987 503911793 372126882 794865011 775347655 895613293 327611455 942974068 283112633 953248461 65728785 300462802 702599599 702880353 621995293 918321332 804233580 958669941 892289187 971276297 579945186 883684356 171168435 194555066 327913487 361172141 194726131 819688779 582511631 736716548 791054524 816491544 297327687 899934340 523282575 597226933 901937889 997111460 717049201 769900960 252165956 635146201 482328700 665836709 582412221 619309455 104566717 976272654 618650316 979116248 458687161 806250953 349055841 758721673 3261826 770300238 81777312 506907617 746303907 786673845 453415550 744483726 617556855 647405542 9534247 108466518 471047907 717026659 712870026 789129773 120948860 300449953 802476083 821113577 789873537 999997260 799943880 805540497 288664540 660493884 601919569 787154822 449386193 653378313 649888874 760768703 941009737 943885279 641831849 654344210 218833392 336955356 862492322 984632338 201563970 996155745 962122254 998197486 723751846 799976934 296333534 775272961 632679457 862255868 878552624 930851468 867751379 988666476 701910103 868188004 662266925 880371539 514389393 537119566 656391954 678948752 376533328 723118355 923241324 941743290 126016380 822701187 396488005 780391161 453833840 460792156 559963655 781720583 983424680 989255836 4983735 689780569 470180948 546826921 663804751 851186034 573290830 614723599 166551457 884202462 675695528 960368543 297316071 928774281 436998227 924766551 973021075 990498789 907081750 961456668 779798771 805449609 351022542 426150072 813728583 875877308 143394278 625051623 251147437 954054854 74034837 492494893 72459839 268391411 804125705 842355134 945228775 952667548 372369070 955176031 836558753 901075494 16998033 70473873 2035850 384172007 426755943 767657098 442231470 770627151 771441596 915192032 386631103 622258168 25361690 913448895 919848014 989113106 473255700 643772732 676710805 729867299 438264704 504803166 452030481 598100976 893432371 937300191 254965982 695618440 512600972 731963375 419502865 495406609 455991708 667122596 253797298 557281947 813140186 994116527 490818650 827417320 430487954 593360352 846041093 926226585 820180629 966296878 956351595 966876216 462516376 851825305 385044491 674222566 915061071 924863079 830873706 869747604 842465664 927353279 736776006 943961558 714539979 960173769 424701053 557172112 239510653 735217061 224002617 559494738 902939993 904389953 55451406 653184832 593868841 697401715 869205365 942145269 404056663 452694138 181160432 453471823 650855114 847186713 306813302 731094061 75762269 548904282 859952142 918170380 447871865 627580056 39224846 245664956 181454142 273388671 967578249 973617126 810844438 992820973 761478353 871743633 136550402 345323805 358505643 527055618 650289172 739054673 830785172 891450612 817222870 847493262 228096491 913927034 343180980 680058134 802850292 866419992 374003781 413744303 100382281 771641760 795958598 960189394 259357839 708454875 284174305 637497837 363244125 556466410 582302327 722855423 697064846 790581547 26876583 745493538 904856971 955771196 746053168 858427660 45268757 378252242 795554645 824984993 416476976 709040521 622509357 916310014 81801343 182962980 443745846 851437987 819187165 985070138 3934803 317652052 72337486 103152422 607211822 832477002 127823502 915373264 223960027 276223342 240460765 822797335 71575974 544564143 438731646 543180315 80576890 243256274 28699076 692572523 710934886 860267330 899186088 931933170 61732862 638719814 785367450 827034730 193742729 892825329 111483692 240269727 751126796 837851938 452044343 975758821 883973808 965813023 52771906 975264197 506720287 957950256 746321751 990416457 488993331 682011463 801558720 958828907 128461444 370001598 583827848 676948006 161911514 544630253 270413809 362502397 24062591 526113131 563101521 899468844 245479037 419767942 656414315 872028443 971385831 994522093 983927724 993305710 587384898 757663345 835328138 959166463 397463570 612024687 686312789 705529792 653418590 985199809 287616382 928062611 655954305 891541688 445303963 998281379 206910566 660278829 513257833 906395389 486496624 908635250 451074580 671094210 684795011 734983958 335287984 809235561 970805285 987924371 765530381 902099528 738872277 753735146 125147936 196416600 432482530 756344856 803053638 999368697 228660438 404451124 536101205 925154426 212056791 441919276 668331565 998324262 765848636 975744336 32043815 601913977 513126876 588310616 95675395 549948691 262550028 481758679 265831370 706369566 653955700 855417496 989833237 994860983 733139109 761274690 951735498 995862127 893069571 911725429 408798560 857699176 700689625 755828103 746297940 808621114 12273797 492989004 528934636 657493195 822493930 850035621 172671218 849752665 362930731 822748899 305677989 778155218 383089565 415713002 474018615 961871690 599676412 752924281 911696628 922670209 999515422 999601427 188384992 896429863 540716615 805822018 487049644 531949043 362289488 461173128 292589796 380970705 722873228 892582774 255738276 305376668 328240301 505320387 109825251 608012325 442536657 486934275 939399033 950553108 450539279 890416480 998688121 999881457 395020088 956179817 65235276 186218991 250055223 730615593 602577011 994874671 598356018 621216402 999552511 999997375 361527761 663865160 365140342 640870784 803677127 851923391 780192782 912604693 102649411 208998530 908620448 922808804 321788597 772493822 607557351 611797441 809656050 938950665 971237113 997247553 47445179 494947709 829995986 881647156 531575950 736306881 301340904 457166855 930126586 978180425 242304129 588127375 372930671 989454383 880104406 993361440 965551431 969436174 818095875 944856593 368502406 509821169 834423183 878199833 941721900 990686585 147317490 568906252 789454465 821734561 823591636 941536951 546099042 826761432 237046054 641147874 868993159 963270561 462963990 605945369 903618082 990653455 730351644 749773255 253541652 797271813 544482466 620672501 22223942 540240629 609394280 872115063 484645256 496838127 399992350 636196140 644052071 970640567 707544746 786068838 961923233 965992197 798591702 974246832 572687825 734866785 903570488 971989401 998896942 999488963 204432636 808196288 711607399 784532146 343869681 742886034 291606395 433674543 680806140 808837139 845448067 964268045 69616264 584825667 317525775 965608307 288913724 996672703 471337558 837431294 698363726 864241240 583654256 820621905 176428142 179445996 855050277 892322797 848056010 894360590 651233326 977999196 199980897 860315265 941852252 946032414 396951460 621405698 768209147 894062678 573042424 832392023 438190509 770800702 353765257 819071850 783169445 883461272 125924536 345822493 411126091 746265278 71352940 443064828 768275311 948235514 777995025 973763592 437866308 834879523 937718223 991945537 246898821 768293848 93241627 427280076 335796006 804707502 711506164 724006677 987669870 989857671 328771738 742750684 636692345 735693036 293367831 757675412 212485920 959651816 5387919 456617222 501301323 952014491 66351697 188084032 716329355 792611676 79044138 565849342 722985487 981049059 734459498 844501530 327791594 561675310 953105395 963942687 609698581 677983967 975386071 985405719 436053945 973978669 796519093 913584866 342236655 652017234 363171428 457957658 290874260 628643415 274182402 501498616 579145940 675955158 45478968 644910832 243389596 522576001 488136326 614684617 238898740 820150381 255219732 280507210 903988818 947290419 395114280 431539306 684790492 723678239 967566086 991537526 990044734 995476439 475015979 712737448 991104978 995483897 955182655 969894521 388834790 424474558 11788052 623962525 714023815 901092187 112123658 936037220 470105030 877401805 237997746 681739496 346564763 574337435 199187784 535277700 399841665 599383994 586576556 756697683 215467618 813017304 927467467 977172307 859313662 901834282 18792847 768623480 157427459 612641718 3031826 132122023 212658423 506082179 1151640 218220669 26048619 811602315 803706047 850331398 564205822 635343020 513873260 617691842 391533721 874552857 417245268 536696208 495058175 908273967 705568294 805427543 924569872 960881065 506800019 889619039 490637219 902725677 274383048 913335235 431447909 498729889 195260680 474126956 833804556 835277873 33885333 823761263 911161453 944625787 23323080 627021423 463914870 971605811 316387500 385567114 104777396 665303052 685057460 790891806 342723780 598457249 962267479 972973872 775801985 803314079 383304297 780878867 914188624 994990806 797183193 902527819 617893214 780419694 101608470 455279803 620076787 824227512 354796535 748328219 235626429 690724388 545480136 750032447 859447954 881317848 317197876 545874952 533129182 919314292 683293335 998202115 22954168 689210659 912411887 923541936 371531260 762202117 437978896 793407592 466823922 811570823 76322366 324245881 656348163 893532730 476770621 479568471 957352689 998068863 675583065 730466230 729098834 980992920 583160860 888916034 310954643 554903200 818265406 870562663 38219175 347601659 973699781 990945011 544412588 649946777 614181486 768779839 941517186 963075440 819216071 883905249 701116190 791954043 959622792 962132249 475684317 981408821 545535555 583700166 116718293 769231585 802390953 828165618 807238800 838746122 562239973 862188224 461891325 851112070 961867920 967730448 809744206 856514469 166045232 934083342 485659840 568060876 743440808 821984005 364869866 932593318 336393086 738615381 109525194 480445669 3818571 165312571 587997673 832522630 828000102 855804526 776002369 784994563 62344180 636577998 267775432 455625183 52105501 74158336 909243789 978755086 228078370 606749830 994606161 999209195 465380008 577597376 664383429 839403196 762394698 872196921 752876678 956401350 442663108 839400203 603106729 705386289 959559259 980402523 256683002 589447746 279871717 286448941 634966088 892083727 6459683 451323882 447122122 982697928 628991328 854245129 828818586 850335890 675241018 818435301 963892572 973214534 990387817 991591924 347224354 953233918 569201696 673879859 590923212 798472011 280281151 600056276 12081980 675175560 437267743 664408497 180596436 452360430 559333524 635731059 930368031 940605173 551779879 842392557 229147224 544900521 807953570 977228524 915201129 958656499 772111301 938533847 19501218 744450493 56239195 503159058 208141166 507811162 194716321 634466508 172902121 327076213 820507844 863915398 354968828 942013976 886947858 900614479 205816791 724801563 297980742 821073980 605986539 698410288 640642618 774316925 45157927 623169720 33722362 419994099 707191531 883324747 494199477 738784672 842848125 975302994 322417620 349803068 609994615 651908789 657935809 980849989 932836285 975351793 499253732 587317152 887639622 909526846 659504158 779575195 609596524 807961923 876903844 894795761 125580598 809342655 374542826 623454701 688332861 728553533 424846420 628762370 54970265 243631723 173911072 434972398 498220445 778689475 277835782 577097748 831894636 895190368 139685023 733079393 89435534 379940429 863664640 921639987 629208942 724780419 941516232 995179815 46429822 644987672 693581616 979934511 614701109 760929119 835474610 930101958 71909802 586073957 661621676 892553598 551538481 575543611 949799192 958128093 708622763 917318089 80268028 544204619 732108577 786943191 540549620 812684743 657090293 828907320 684458964 693797922 824770954 945203227 302785557 361343567 675153865 772133288 980663745 980882091 400656415 686803786 34113542 679411050 921628163 931028780 318960851 710612293 828729246 896652175 161872316 871463504 494419848 815973760 735593178 971209158 448554039 607769087 816201079 991147468 5344938 505268005 846738816 947306497 205251858 706429827 478801011 620766950 868698903 873292421 737362596 784805439 808076329 893267104 686650147 755063073 257072075 442518841 529061823 902878426 502672729 548188704 865584795 929251598 568701746 771846274 231829438 560142327 922953864 950611983 492079639 529679387 523018565 945624084 111934901 409917322 126631206 160643778 147015860 731892847 357950862 698665078 66479924 378576202 288177783 575729723 890092523 948996189 174097677 559916835 899498319 902600851 542401632 741003186 738875857 772241668 251495715 685953310 139245782 294065541 781075865 970988499 264808974 612230554 60145279 999153222 522567339 682990427 198908018 751190113 726813087 972997615 56249481 594739780 703674507 874311091 261449127 963487358 353507798 488934833 798833313 990772254 516940402 584037468 383934747 727544128 777089586 970887984 961538137 979716083 737186137 844305217 978951205 985229376 977374388 980002211 659468433 967683243 988751267 991121495 616237030 680041989 72838254 409784988 193869555 462121265 69945723 541020519 218003013 641822300 175656781 264712538 784377866 824241616 869161114 878442896 770445646 861225703 618597587 669924446 555138053 724521339 247944508 641488766 134474007 204148707 862631124 880824648 430506618 587543329 346194814 594058400 420828994 743982549 254867135 774475084 547258727 573723328 67210314 676523198 289779033 508236225 288542943 472206974 521864592 774780687 575276463 921141428 995223320 996426960 375795497 552577587 538740445 993365998 541702698 866624216 441817182 961544794 912864041 963503230 398766606 948971639 420822776 623346668 702128840 978618723 61598308 555946508 669403717 915980352 441822707 508308528 369354323 764841559 206333461 577242802 434079177 884483064 793882287 938282040 694598483 841245644 479012434 847655879 714730519 867495330 709326226 828518585 920581656 922642147 293897663 957828647 810903462 914933447 84110507 835327966 135699506 456903723 750905951 955299832 389850294 701079788 676239949 976354822 866347672 922405149 36051248 223930080 656449415 977264952 623798323 655772546 120159269 164174060 344237614 516162361 322358430 623297203 82901719 709491979 849556376 850284975 449913851 964421364 942175638 998118887 785174929 966473539 795986021 976879673 638862061 821193840 180285655 479054318 39687897 661782713 50971681 430410791 903256651 982718361 800460443 852990221 805584503 845372652 409979298 446435961 870854346 968147778 16390877 447201246 795993474 810566919 470784887 526404995 176038591 227684977 143168031 844443018 206372681 938663908 976608353 986813565 232520130 445407215 241606762 469713481 507281612 789099271 511156150 924361821 88568094 998723537 132771796 597529667 319653951 399456896 28793537 567492913 804086452 963072960 153536644 881992947 878108412 927380524 546540246 805096460 795116380 922063788 212167331 282616894 227711740 573626584 39898741 794896854 698662157 792633266 122948326 376496180 125767207 189057263 464251269 679126939 109516636 385676957 485400052 564841748 50690427 264630807 313253052 976967239 428830655 795338866 915085425 985507087 352852766 865537443 721794231 987890002 823776917 896553209 486323333 566491187 537135853 896555239 368230731 913838065 828049293 865735101 75743954 811421405 740378234 883240609 433181686 983303569 322455913 426472352 250387431 449021736 303884242 833777830 372496043 481303488 368953530 706535861 324651682 557089197 573527776 641772699 589912579 793750433 650521630 937838103 90967320 627956090 132917868 688428238 113298723 652146329 398011375 542845662 676001918 883215879 986995582 997130528 228569828 581660572 57764012 674722236 623152100 766125109 499887514 515022131 772331582 906704845 138435813 555330572 343552778 526424572 552227629 999763857 420994754 759213336 204037789 980847646 327612628 781178418 859493464 975141863 286728313 785415255 737882208 930151641 185008265 814233982 690427514 811103183 738500242 927403432 618778537 780802158 72811721 699674482 523377057 857550550 402995870 755255677 284496279 340448434 476781420 492656013 753046898 852922501 944233115 965550557 171103905 897498687 350205776 936020867 89604296 831246497 482850772 724681533 796147780 927230472 749360359 866635011 376883286 420238902 714865394 834831207 732693809 827634961 219468258 782500527 515708855 993330779 727455707 880758679 909227134 981016171 243166111 314464568 917539358 968972076 692386894 694565005 960604936 987259000 847514360 892433456 804059956 818840995 76032147 139398422 302710240 967363635 246210478 399860713 57768194 635740209 810938019 956716315 790716382 962745231 611881700 816819605 565803930 771320720 209084052 446397067 417576531 650698455 701692492 874483901 529926315 778270037 737214475 786845598 570379432 911051845 114264214 760179209 953657430 988065050 190581841 330431169 440273872 710199737 388253555 638581903 625348379 773785969 371886313 431457110 161081833 629480904 339171231 902803721 230898467 246293023 563899221 864342039 508605608 516510024 391605992 739906036 483559321 818724979 164497559 418799190 196743855 524393664 396109343 692089097 772193225 960574413 68063928 949236902 113600234 611967388 654111112 708115157 540434018 781908226 272197779 447108203 946707457 954495404 621928992 943632359 147972900 801418870 523137563 876344789 989716163 995045579 901603520 994837373 36666876 949433880 5835488 845797687 228608554 391523108 948231344 992311464 885669131 927099459 715775430 904672619 853944330 921854642 479940966 688371519 281008776 672479980 831904268 888923228 748932757 898688819 574896088 932063334 801841045 840570488 984598966 988743631 780170787 955149197 604927415 771516864 488235831 687445127 783305494 986877063 582623762 878508376 201123437 970988972 149535750 301837505 635451823 757791250 410357362 441839567 413589078 433268981 502669500 770262606 545142699 692206765 524404323 549145550 53011869 226847036 224374276 869890942 615830923 855166739 585036111 871660710 181517528 833320406 814381315 915473290 688894679 820293421 59093143 630433705 386289092 785520549 409846629 987145221 137873600 245902525 228721144 676222760 613239455 824981515 888528696 981939192 852943854 906788421 305503923 534011967 236440820 425422506 317193987 777688937 760748285 989714916 292766819 821515242 992663886 999967190 652635458 752196428 643513242 853052986 804582838 852217876 399427641 930982587 116282473 379697799 447540186 581485814 799548445 903816960 415842271 685785436 938813427 962803867 631134882 718945660 797018846 829348305 155583008 928916803 893993740 914217976 857786401 929362444 735019849 775616573 195676773 283189490 512514227 642777184 525248395 639826673 462843815 604255307 703646828 946408512 799255565 941523349 440529994 723149841 213815090 235722627 501405327 508987784 815568653 878032041 962734419 984590638 748980152 863346382 93284767 551803169 10277416 102520479 802256342 944557272 726744753 809263664 740849659 938496229 599348150 869296482 544463208 760543986 43298182 609186807 444317016 836762079 920908610 922696354 276299917 973376887 304042583 358137334 176801472 386221122 12511096 391282128 862483923 944348390 548945147 676266909 258925350 446788997 516036262 517834909 638131528 768727891 479105629 902701919 411286468 919291592 220524554 873099010 33695045 311996096 964130845 987670777 850794504 858538506 360408294 831682472 581362232 769300664 910413866 952656718 659234971 976386036 248912187 844729484 233861638 485346757 809585239 926655882 89157288 951424766 557158498 927562220 429876258 815125935 583568204 848690572 842565884 984320676 47311915 672400039 637200845 731145469 973319021 996599757 616843232 768142569 99976054 985867082 679619935 691642342 348864441 441248410 654266524 770743890 431585498 574664960 128790208 906812579 988571775 989404242 505648267 750530128 6882111 53323015 920849280 930148229 894574563 935779533 764213530 789488485 373393562 730691603 986992565 992278790 504373154 777842839 466010040 760760251 118166943 428758195 697294532 730571918 111134078 233608209 337620024 925835323 122777430 674402406 798199600 879817410 566882843 884641004 121094842 482878032 241058084 379501196 584496273 917747218 839960330 990434298 398505313 516187453 897035252 956782482 688624001 820683489 188157515 763979658 129824040 923684973 865127385 927837275 366124878 552859520 551602894 982650282 654333658 904976495 502598425 978795180 783397549 974358913 104101196 876343390 930196803 951242999 297720679 907505956 116458207 367671716 189458045 209716468 887930398 989074526 978223992 991435432 518189577 769632717 453161923 783681447 498243766 594250846 361479117 459052853 707399798 884618942 18677777 946560206 30180291 331374656 741301717 955498683 967855819 982626030 432570526 977408960 918618951 987937019 602851897 985589030 582547428 626535290 484693707 826251042 70270699 991470929 574978286 611799787 883535810 912574868 615050762 883027421 970912277 994249937 71273152 846205076 513786134 998140110 406754504 486854340 148783395 895385355 706885152 852100228 548643055 898665371 83123048 539497940 475333981 724409780 114326843 909157834 123706368 926204950 615744757 641384220 81101896 190729960 571499824 868056340 372993875 633978121 991088546 994091477 988823971 996060234 419661475 436228763 328163672 585398210 440912065 886390415 393594440 986677512 446845009 540226387 1303863 537065518 51506746 76817240 953943799 957037605 941152297 956125028 12765643 522139646 514991671 971225261 429304107 504947383 47993692 323990358 884456505 984238423 96667832 261047106 384388109 458068939 146350656 239122294 973285223 988462168 707900990 889491983 716697929 825219008 93864112 233496659 933720165 965226362 512336667 881665904 966821313 983424879 766159460 872231443 832294934 946509105 427208562 853396997 243886713 448454555 910937580 944714673 160585917 223225334 884570619 950511232 578379668 774272685 202833601 246111644 311491400 411561572 72832229 964528228 470278910 687847704 52867073 428534383 240553635 652210980 799724253 863128960 827597080 998297715 642262722 739456105 420527829 738909789 722586602 977753250 389742114 553576983 369908515 874551888 601379895 858040343 885963828 923657678 327856444 960630275 867744771 899682044 879090398 954730968 326633497 669181560 318414419 520437165 627580947 793834582 815783371 949371239 277332135 767702243 705144210 959941050 585051698 661983789 231366386 972967801 683741789 701961712 651774796 816068777 895145286 923470758 345689289 947172134 196888576 359777120 354479615 695931657 122589113 652429611 999388923 999568507 5977287 208791796 957304004 995302960 696770615 762099191 406424683 945641602 78953097 915762574 158938830 206811454 527863403 963380958 483557592 540532510 155293204 515985360 679505572 741076077 631080501 651242938 514379401 940824781 834974034 878314355 296590603 818089751 895377283 962407511 747791870 991155546 213822718 715488855 174821063 660429798 130595140 488217693 979047543 981063095 591187682 975408699 781476116 908215455 4559389 647298012 334954688 439835250 71186501 472264446 869814363 894248214 761009138 773562017 481739189 705253731 766243516 981437368 490355004 658777973 458801791 561907841 108848382 175948192 333317486 807979850 816997212 962241788 157107758 590605358 528010297 736001446 783887218 899089264 749442321 905617319 830262655 852406793 928889814 945219283 2565711 406657457 849102476 965734794 60104270 262534491 242574841 853041478 584530506 806417238 447292716 564864171 872042564 888481480 566283717 569770740 916633594 969286017 867183412 969431570 581736869 809956059 246351519 466896134 765679703 805728096 664985010 665122787 973145983 979210739 4577685 562641232 422887948 724694949 411282199 835824848 141527912 852936035 951786024 975831292 90702901 606970684 969653184 981317558 932417809 942614709 716918512 984158773 846409117 904111275 153450368 197156659 406404140 477721599 388915284 425300597 406924802 471216497 337682636 829262967 407611397 940136825 81072793 941103836 908613763 990199347 95300249 844698360 546199347 961975744 792838734 975084723 207745308 440050387 809294781 920618931 263620551 882289707 185058926 313333824 442918856 444981289 675995088 874633480 974713391 982065156 205926369 509243473 327835041 579358923 526482480 948599945 122266311 662689431 668472862 792401540 957589601 988060683 366317235 846104820 418066107 620244663 685458868 975498238 988739578 990531096 884908773 941832738 381930213 828255694 395138903 788445708 631989177 838683575 204610681 960520951 972590028 979077364 457303284 911714350 85938706 940036237 206934078 730238466 793403802 909376911 171946952 947576076 478642182 505830932 146326924 582328371 60620690 181856912 843228039 963101253 540002659 986241057 260429035 705154500 952423339 990822925 478751016 550347524 195306254 704495728 7074175 374983479 536552464 615921884 804718553 843515396 998752706 999448886 119240524 259195182 59625536 508062782 515710002 687828681 631342465 905139944 697259474 764809787 43859089 630438003 227962191 644591154 683063505 951883525 202593342 861814000 973318781 985556636 689308635 763239077 836856602 924264314 545716425 642819972 144868497 709366963 947880823 983184136 443633198 956524725 683196169 861330476 406348624 675769432 215899560 318638461 957156204 977883861 847682437 906762460 810225114 994698416 963714050 993669373 427115282 667037492 29957473 242821757 458650985 903493801 906691889 936101747 224917550 714870088 70282378 623429477 945083567 988776986 144594743 654645198 430227426 902901728 159813843 284659415 527977540 855156384 254440949 842638742 106128551 956499624 932100056 941507723 697298226 803653236 550016729 774783325 46004831 688008644 602939800 864766731 761973242 802223465 511747113 867723841 173437659 396413776 42642010 625660380 72009954 918682147 146443540 484919619 757336097 811264739 906643763 939867486 337990380 538341921 395065846 702476690 548916290 665001677 746946177 844888576 973677968 990572117 422353474 967336529 854478943 900509561 775122328 807318747 687921978 940612771 260773282 620932239 809113957 906467051 727329777 777476140 823986695 849109674 97975201 600051015 820842064 892986380 161350236 974830433 917839874 952422441 366318563 497147881 928448354 942202783 504273667 861457289 65039183 938631528 115645720 870618183 641413851 746745614 760320652 804582108 682224222 922042158 788303286 943252271 696444743 919707599 623181306 868901170 13776610 205530022 638682876 750282846 489680565 902818404 648219843 758741194 396993336 948767814 124307224 612504590 951486154 975110195 145575688 498287387 954068611 966108765 49323534 517799177 309184641 783034453 784979709 821202222 722418140 755889875 910660214 975179489 584256191 703127534 303791786 653864160 275122796 752690947 5530517 579820708 596147883 713503149 258329409 943266252 340909606 557045540 30083833 845264148 213973035 587463391 62626922 303856851 770365180 881748011 286519887 587803511 423616663 789071408 223744979 880278177 915681396 942259837 921618025 970851686 656268393 753092860 715712637 881632533 605287688 772871050 277564632 444725437 416812714 950769695 151158079 363475400 400644953 953600927 798947182 878600525 21319978 471992113 757239264 817751925 218252093 630985200 239679928 278199084 18390716 488835949 577880826 910609333 477793531 498362972 511624702 972553306 453502385 491831809 22461005 679027474 792396582 877550882 719442987 936149409 753000413 938483915 603473801 676608988 64786296 576076454 256378293 587537382 714096978 967697141 690938195 887157292 314143739 688278496 498214421 785933336 357389346 561004337 124204454 700443169 704763426 793902845 71440457 765556286 684137369 863924370 145076660 985722094 738430690 871743507 775323752 880152156 59817157 919823453 136446514 742990041 229345463 775250422 288804037 479864120 415019862 421913193 580701176 789576022 610522151 720181821 642961219 743343798 425144640 474211163 78656086 359091587 713971155 879353114 330465269 441766457 686526617 862208357 601666589 721647739 817429509 985488894 121811097 592359040 431413077 520958064 80882407 217648978 546713634 962430825 684240303 797504448 572303254 994203425 512967199 774609673 760722144 832729724 223011829 735963947 34721812 102091725 848325242 870766294 697907167 847451104 12400617 422754005 468561084 618805388 794926419 829178648 644863523 933140854 291110026 839385733 258368769 916325845 879183825 948391044 276292582 698659349 638018016 902800418 272215926 551390978 125710336 527667847 470946615 534364533 726228942 850011009 487831721 802241357 191894434 731465274 476680061 801640488 796846373 907788735 429046866 851867021 388742332 727805094 311482448 732024480 238895813 818926432 62402939 707893338 689935641 937700360 600850539 719099404 944739015 963164181 926274502 944538548 522579316 874523958 940093874 948876134 813943991 943462150 83794759 499266012 819818481 827956657 828813561 941188136 864142878 934181558 585315734 892981948 698381390 894997021 335490904 995868768 103274304 701096173 464992957 486405958 99867368 909735180 753502174 782298226 615938200 886697553 782567058 884462740 259951319 998820010 326343305 995029693 976248325 992015016 592614527 739191077 296328375 332547484 744616087 783798689 634590291 776422447 204938058 714562680 335010444 885009037 158421423 430465629 891648567 983139889 69861795 860957542 963256632 988509181 748605669 940711227 279671967 605130187 342839187 705786960 240195182 854708098 595403957 647038724 230318085 766777605 377476996 431149685 64094596 429600475 223026311 962855128 634352968 715649531 544210903 780553677 803749084 872720339 290123479 399324462 202749227 932186447 138325700 754575029 881942636 958117003 274466153 631768329 520732746 743052862 215567466 907187840 304728045 624435020 537994106 606905393 744219180 857617669 577316459 872477498 537404964 874336652 811886495 916577631 17233744 765170504 472816461 715591283 611580752 831754534 325356170 358667589 447542160 875272685 345841903 494745128 485384388 698414807 449079194 775056837 398855761 698661770 229525076 990671473 541561238 557005461 451269033 527882393 916548824 948158155 288684298 474182983 44157113 138162382 708507751 793896071 614098553 974801921 341740738 699628800 805729844 863620492 320965311 866809840 105540131 800457339 416602830 703961171 509241207 653930316 785700735 979520949 981790093 983445024 673403137 898099779 251053172 990445634 916505428 995449794 676401073 914925623 1937166 634226092 194531307 970701674 100289344 984239546 999254574 999838289 571967632 784924567 880992849 973898625 89010686 782252083 382222928 626337095 517037990 853024487 549387461 939325127 796777144 859808997 375021405 516846690 954702257 971474709 628739116 940533509 785029753 951775123 748745436 973177266 276402882 551234508 605338510 724809427 459936305 899838568 661833772 964036479 556393662 920074622 28025814 636596331 903019982 910415611 184448136 769480152 909465360 972989067 603111688 672541487 115145773 708168501 551506661 863123334 85149248 573229013 300561366 701715364 645683951 774657712 693028185 916117513 937248804 983638756 602629843 640060664 371911354 699607349 100968658 579810105 427667281 636994749 970143708 974783675 962030851 964414135 937474193 953252460 480525028 561695963 760401573 820766526 556563040 822837913 665554852 932250355 778313278 860938864 77253888 289009964 103648108 142819360 370942206 907589118 907264957 983407298 67934725 700210472 709971127 836937969 405812325 713044280 788940040 892653588 156893260 949881570 299422833 695684612 633153011 807970711 975627606 990832589 355897894 926744681 869863018 959844780 472784493 480211735 345642858 830576961 667438809 915288147 955075318 973694340 371882045 885524731 340700544 928365657 62081435 755066661 573953079 915605644 33656007 764373343 22210646 324776167 56713081 630858420 469153810 647382162 164723765 241785461 137700190 910690926 345471763 463560850 862627999 978792315 39052941 868390593 293791052 600142981 975261289 990840850 195077786 904966279 108123433 189451837 918702034 960489241 308936347 556799011 955643619 962214020 130099559 441806501 977944806 979005745 529604319 881530469 714771447 823523179 4433063 111416611 288498540 582190639 198135208 934719094 810001092 959866615 626821561 703622972 505389506 549141589 608691670 693439572 421236939 958178547 32485329 956578454 486499034 883585093 158435842 371422526 946884150 967501220 76768125 469387825 827697074 939711544 701221131 730562371 799894138 920143482 163719375 917864407 508175348 542421742 213345501 438322687 223227330 281918659 648590390 850854197 921382747 923497316 700079958 793114133 830269251 880947852 578424800 628151480 612221794 739872730 972353086 989468515 909070426 976291788 150682654 188325592 315594235 834770268 405314650 632624687 224472232 924600102 989421253 993627085 276571956 718535074 990243132 995717026 226592464 652644765 178869902 947169102 404790454 606094874 75808026 417195087 278236315 627622443 124526354 483617634 185659759 748306629 314698573 438127979 285550761 494551730 132272438 913639444 177515494 560568480 584585736 694761848 404678671 528061011 447032255 749001330 561743498 981380007 442996298 847775595 687893165 845738659 998231656 999643459 700095012 718320908 70495839 526567841 568906866 857639693 840811359 940032096 125317107 187802150 672175398 698461793 454050836 828030417 634849054 755063381 248980879 913313943 604506479 858460667 146031636 559308636 133674799 915517227 302255747 395545307 418316221 933095661 461073245 668821608 162461144 718575466 471617770 876830036 510496618 932511576 649171087 842027542 337877453 360595985 183209422 861174476 515483318 996572205 730202119 906581545 608729763 638622462 247182133 938581918 99232431 196888693 473815134 617069149 534420969 655581151 432246335 916675848 660136689 930234088 328126016 770437587 696440517 760452899 512350307 673245341 930902920 964166075 802029127 962768410 360618914 468545147 838764798 882214179 578272123 950803066 486868288 658797838 514093707 734468983 145807651 753099921 258979656 364580602 971342528 990928196 869090954 889531841 889318457 977123455 320561781 521380904 249777885 764169798 508210601 886755152 217677153 933368903 452920751 769114689 216700090 802261266 424444137 546305904 470729601 827873404 319103924 380323381 588631765 830303670 99074710 527288991 492786775 555496662 918860738 980298854 532728707 895713830 871312457 983471524 505112629 884297598 377221013 461125815 569433708 629707407 290302205 699907574 811874020 969909903 231454556 727464961 192712892 989683578 328278694 962868860 207457296 467438874 515246970 949836676 686389351 717425292 888653941 965368160 203369196 716817226 328115613 500349252 847073085 879709775 647306304 895883252 680538152 973869217 743136974 835401687 62725824 759946196 930519113 942256455 993595590 998897452 507398455 804393697 248494027 443555690 372479553 524850212 386300600 436950830 949651923 991545706 810460094 830512883 18062763 593862021 767422290 888731168 673226677 852828292 687743360 830795564 646014476 919547047 687893120 817155306 539418401 767774754 782021922 887278828 154883018 528379390 542258223 832470248 409817099 638600260 773579991 881299754 838962171 877505909 634072286 892988593 364467734 989757442 378122083 598630307 506819352 798776494 795142230 860662626 494935502 585953617 415464820 928696388 615365332 795582270 422188013 724165863 209137361 570405129 482900398 919503913 969626747 999774593 81919854 945784221 898111480 929339996 200212697 379450930 776897444 778056572 714114874 892699494 249712462 473820531 728766904 741776247 80347350 527548839 629669040 724687564 228195902 234135094 30336578 92802393 753600677 797522581 581968650 699729485 699743161 796400190 61211183 357998841 48460848 445511473 226981063 713497573 277438061 323266091 815163932 868629154 968809285 972993703 747572681 822032253 714169841 974300410 138735889 211407819 18105368 309056728 175576959 216399500 46725079 132822200 200110818 991426609 941451229 972126128 17314327 999491433 650002625 928943560 793204740 801965710 709130546 723040992 334832227 485865230 865217609 944982783 581726159 943736149 952360535 992330138 816220616 829630388 910555042 998908411 49539914 105562085 666622025 878230798 606922640 620749742 121824681 790642012 971796057 980202510 488788413 511973781 202569726 956382266 156023677 307908265 683206957 806182614 403704373 742996150 872535561 997333914 204631598 289767556 392662985 567750170 281212523 733821529 931779884 993467461 414577214 813852473 113714267 924578169 131624629 785286504 880173488 901807965 809618351 929729765 514596743 525414011 429944357 607482564 821617391 945562210 282464360 556283110 656962272 789788235 764907755 897412020 521826008 754225666 598843119 872911105 843355814 855891187 979617162 998823036 491220100 629701407 296030361 832715616 766428866 947764633 284643140 416434193 493561269 774987084 738375421 826144395 762946928 914051741 609327558 722683023 147774982 569151486 853734062 984450657 162485379 732819646 967998568 974902507 808456718 848032856 949579255 993025551 837938194 975016989 262795125 336290335 567695118 612905457 549340823 661008478 518237649 752570264 789159805 971411055 270841886 733135873 387353878 721438409 340692601 922023065 657373062 943397906 74383214 302148577 959026151 991334793 996825145 998091413 533286401 585648095 167927387 929162593 64288120 663543467 321453368 751105076 215729609 328234199 869286768 882732344 61864136 555776753 693929934 835473467 404085461 952735256 732066342 896918176 305179538 727140799 851973293 884114059 96794601 406921235 837383791 967723872 549166502 579718294 454648738 836329488 411393661 691880170 154892861 901108188 302246839 346257906 684939098 760457473 48608090 321113086 207612094 404684970 161846495 408471138 289932128 864999619 709124594 753510221 844035418 967686120 460684566 837875853 712179283 735793373 342616049 527609133 912586983 922330283 845099832 961595984 831823438 963594316 809277167 955678000 576006131 735396935 680203699 721748090 942601333 952334759 609706279 819712182 351372923 901824220 218182445 296857052 952998339 974780752 676611197 728791399 88801450 175424071 665047920 938351148 728564176 913500934 629193518 743483145 237647846 722145915 894009983 936122987 991115753 994253922 946265338 972008218 434736458 694615720 835402258 891598255 268323309 817522902 85941763 428474550 672576249 930358096 135105591 945513456 686445020 922375600 818734074 911825799 381782895 841863713 204910831 669158650 717609183 765364718 837878179 843364133 846430558 846681695 520509276 676855716 404017366 705040630 634579065 764120024 44457318 574432206 892597921 984462812 868745947 948063573 900099552 927923620 836730799 998152187 899994284 958749451 646466505 977980979 35637102 734467451 612809083 670649568 834928533 940163467 397290303 889855038 829341778 925892500 756298826 851316250 371555520 616775341 778146500 942352330 679816399 823936954 578650309 820392565 204864173 428610600 573968757 715121788 875230390 955823342 220321717 523135576 917911653 977658629 784376495 976542156 93635546 158184398 857305535 904920366 946939784 992623946 611064996 947722068 89649489 365864918 55260619 785143596 819859931 837097884 562172033 914841728 341161382 364310291 768307903 878707081 997932279 998954476 974030575 994097326 559787597 730894109 774694215 917298244 933306386 978093759 981992542 990450140 593115613 921461360 285548422 825021223 794724553 915486748 121304614 529036332 611740370 660127023 271953157 936303881 693244602 763534915 313177989 478399252 445105814 741427131 312300897 505096992 297480557 587579246 187763696 574320726 133817156 927340373 980554205 990119977 156140683 497187045 908194062 941264207 330169865 827158239 867239088 947004418 553137803 794391970 740636552 888311252 113464047 545462735 319477095 685894548 534452489 824020075 794449850 842884346 543570358 754993136 78480091 799214990 370557137 471675387 720356993 937611245 84817097 997683429 663369594 961842693 599823154 853153688 769259823 999520583 416438961 592819257 592318169 739920107 281316166 641585667 920511047 989997259 539554805 630567975 220978755 728968302 880348392 929932479 621491334 946042673 884327503 995789427 368033817 382117382 859938567 974789431 953349660 991966483 419169215 889209311 661978733 902089671 951998915 964932576 152765073 311634149 752176647 883574233 488785576 945168216 202230628 378289396 857884904 907004824 69141889 657357807 680610057 828676520 540074460 970560901 574652628 597423742 128169030 468576794 494968464 875105228 835832376 918342449 30272645 958241302 846885105 922711284 389276953 818984690 56365272 950205375 576367609 612073761 344087177 649369470 700701869 907682507 20180779 186558936 563904996 977830187 625595590 865465656 677209256 812198067 102238327 331427176 403884885 979013805 603260364 719398509 550119525 623320836 581081044 817139045 65932128 831966068 480210903 580186501 168570191 522976278 245195844 916153752 305203304 627795763 804060596 808975202 172342795 645355346 94222145 276010416 317625507 663111352 814314431 896874711 687557333 816592952 767550555 889297516 600130575 983033785 120467115 548825439 81946712 191700177 570990858 991956740 262452302 558358741 38187031 513798335 452008166 485486521 332202959 600032400 825027187 838335518 275661831 396278622 637752665 659059555 636657924 902571857 517276767 648663615 906108615 916706971 481561944 646024351 435191958 791273186 172127127 371797115 117699843 203973220 422438145 742650196 149077872 923142736 679692732 860523753 474392830 928098853 269440954 742556415 281232435 443611840 495627831 532630008 323262970 809473414 556699182 984750467 892340824 982122590 617087480 984810343 409735085 885243249 798451454 905323951 133405041 766623973 865906356 988050856 784593217 963010806 544147686 993008791 801957893 825400913 851484163 930457433 339798019 443811126 431641998 749097766 317864466 665933565 582191167 936937471 128832016 664792321 440459675 895963380 81091692 686915226 530922711 614759428 64686294 513540182 83066400 517423321 181126314 478143100 926868630 986950738 614742496 892822453 168810568 249131213 942134862 965375239 958948260 965744648 453278782 888232485 288324045 333433191 55923090 444503547 195030154 471361536 811676071 870221378 171881242 590427654 818577129 973295167 501898275 880808156 233289483 553183665 661324835 976041560 78672916 913214788 300661858 709171842 923568656 971715622 657534387 998626258 743562419 832607688 100502837 180301983 722272987 954137499 645494319 720492828 820723560 991923303 215827295 323622325 504523781 562594771 113343825 986774935 746735587 791334391 625107105 977259912 745028113 941722993 352245882 928258834 393815740 584858869 953203630 979913404 840312722 905874598 15583586 954018621 144438712 964127621 819432076 989019450 938806884 991572741 285562528 667022520 675465287 952181449 864888620 900243611 261716442 559875522 85677516 959869453 763742372 934872667 778481245 888902447 31878139 285308303 273920808 768565185 547552591 879212098 120942465 916453266 807531957 914000760 277177841 560832395 676691958 860674829 683103560 888793569 374641842 403106891 787571433 831466061 777903571 883610938 716229576 942782653 647300214 902862693 516306740 613284899 528878615 871816707 758296416 994161528 774443172 982763378 751274180 809306594 184169915 544829260 730333431 912805585 676410440 878392037 50178334 749053922 682991083 967689872 269699915 280767625 769508056 832963066 246251121 981617991 376989828 615337573 471539745 658370406 221625674 667967097 989849009 991402858 435365940 530744278 201672161 865008637 357447305 401572522 957120171 966015397 545027194 977840436 279033008 857082126 140414621 404321285 914496968 939338926 133205713 611704578 869168946 984243844 195153719 565000410 340402894 814356649 850599247 922522629 456682111 701926193 707503460 863613319 530847699 792151521 582962256 927155415 167371130 949983297 646425257 906699921 454672894 936481427 390022959 886471300 169978510 568801505 291648072 433102863 231394379 694794969 269382312 723630567 665118085 825480757 960956092 974376055 3388055 347532454 747715035 939322953 862254562 958899909 873111664 913982888 401193465 937906908 61689200 830577726 909380410 986322852 650492836 782144375 122382339 899246298 125173424 896729352 21963327 252867845 966945137 979479663 156364149 995588232 92522165 523835794 443785501 482219554 678098379 992138706 741121982 808591930 756405700 949932200 961931722 987001226 892854664 999916999 908741973 999064022 892466460 907051500 158598223 525133986 885885122 918286284 131838328 955177670 487980724 782729763 210540061 409927381 762240717 823322147 975635642 989118002 439795349 526012574 849917302 911428048 75068189 335657507 511850411 576492394 268366010 565739241 924485247 940385506 649014135 793779982 859666332 928000918 456987541 517682603 712837792 824077320 910840009 970085871 901281437 903511783 589141407 936377289 230289672 365887086 579085965 922179113 17706777 517575221 907337884 971830403 27019530 829236415 440568956 549274938 478348421 946321845 40452707 475750036 815090083 920439271 882425718 955816479 155812580 436233235 188293257 252661665 21297055 647721153 187276337 780489966 567360168 692115372 283940837 981511801 788581325 902080084 632279221 932944147 341740431 533423339 770145550 922969398 21432322 910203493 806834322 975446827 789353132 910471976 944417739 968229579 833126592 945231824 825761293 976458728 235571653 544539346 778998514 916768159 393851891 814772312 556103666 980680067 454570100 800734801 708482732 958923226 996428677 997907786 899307768 946877551 895338486 933085084 492723638 898969111 994599090 995227066 48657163 265407693 888175359 945564595 905899959 953788686 556892226 803468848 754899757 868879176 983296384 986061926 768237746 894040098 279897789 490854108 951391008 989947795 530317737 897277322 905035195 932729591 263312573 372343223 710649917 740084645 146865264 734391995 949130280 976493976 438319948 652734901 336632923 820622118 924154413 937371149 331749727 634810359 494615519 562802412 571450799 901591800 489917536 887193856 652060955 751403604 12781040 514740219 98595302 315662121 694916246 846129145 291310633 809285456 860643844 890224324 975655692 986411895 222742584 878268556 583852587 600098383 573924961 778049247 715576725 836345299 983426192 992736574 95895681 406557739 411726819 614039636 712032965 778740469 235869358 525619256 759543657 975921477 987978622 998892188 665554210 899436256 575240971 975884603 191206599 375547043 716936418 839778011 821068280 920465582 584275314 858482421 189659410 620751324 123767242 874099973 157361429 749235492 174737575 622100461 252238759 617157810 881386796 888941575 676223160 881095445 885112742 948093110 991516200 992250841 79477660 616645107 705543096 766426052 9164563 29431209 937779924 977222750 290501690 603316590 827041070 835517216 48852883 895860216 269860040 529820310 338320517 668587359 600338279 879674327 339456216 393370190 889571280 912648385 883328566 982793424 83221684 464291911 816252868 881785977 589467911 871079502 814839159 903143917 907615372 947699389 335635348 942751545 518103619 662480320 277791795 848599397 599486170 817510980 736083377 851818965 508761011 633143182 903098138 996626610 956656921 967230243 338404904 733676155 484316066 674104630 840763476 877270513 589449760 957410729 860602386 863103471 534112281 930281378 57125645 724755175 620771833 734880502 767717739 898399144 270138277 305539422 790855600 857391881 919498891 919541591 672280806 704574034 487651687 605588792 683024295 855482144 188061676 965251726 159991552 840596040 621643042 718156346 106071215 170062944 847038282 889017255 971304938 992117374 889379547 893958330 548580698 659036078 28098683 308797755 855000060 894714368 101933306 395316937 812161840 896233636 249523144 959616810 484709928 777946110 669970935 881190529 237439573 667031521 229048113 408486014 92199443 943473312 145965219 212395798 671461628 851720708 899443503 927937692 490809833 818241781 517584281 782198020 423654274 634731666 237949643 809246295 414251061 439077564 791333367 863681942 865443024 944689325 633164583 887365245 48569247 221302370 506888430 941645922 170227132 804119247 841284578 855466382 519092730 577148527 572816467 778176292 343950162 615157142 814375811 892807600 763620447 853187264 726792124 897165185 71291660 648623317 295294826 986251659 255486340 694058792 252028849 721535693 988185533 994718511 200325299 489667756 662154882 971163677 390582447 409745474 154462533 638722811 554082719 903713869 289014441 345384738 25191808 840773153 748717585 753260350 918978831 973376626 293083067 963862107 628202890 765706099 292357156 374323479 799277053 878960311 574435584 671754876 757534844 986246673 468048793 508885108 163406471 214362788 160666460 493204264 966341026 992942966 578692835 948416954 58527584 160497856 312876259 399878280 749695195 927337752 74211512 86462594 9160241 320344928 701741167 793625971 832753091 911473922 815574939 819168409 586809427 840977467 281153039 728594340 903273049 940261370 539972634 791005891 622555246 990483483 173448960 357293250 646061504 710174710 459232553 912220903 83192323 287952573 316701429 907752544 896210524 906925221 38114745 565552115 787328572 978817218 629097471 738525588 292145045 856616058 304581323 465745024 55235414 71929641 701035433 720677658 16807676 75598396 620531970 732528301 574094572 748429971 523178024 595140511 518731938 816628746 426433459 454581302 61349900 168028208 985910919 994804297 581713053 979861192 701302609 879553674 474558799 697805907 568164616 991058481 380066821 570027107 137057828 680951218 891124272 904924998 377030551 715218131 532004876 593287627 825694265 993816099 181468586 732302897 988211055 992027686 715265091 942122247 981387874 987288331 372084771 990188762 785472764 978155856 738222311 755920507 741666944 753934063 161682714 162735600 532004546 592721333 379922087 733432357 343458859 454826425 565328909 586598243 213024121 228085906 377479461 426693806 689370058 826993055 989068119 992398650 262577279 520129979 949633465 984758075 344807813 541496165 31651732 514883393 101319777 803372773 448424146 770725033 52399634 728839188 472882006 656109029 210441071 463978285 196230507 418775250 627959851 798069523 489329274 631602251 286446823 855685217 716958098 969086643 639657306 674944325 384320529 748720199 772517802 846739060 398348666 503934298 850090008 950244020 283238639 729359880 480353774 714824709 304540539 990141162 798495213 905073053 87152687 579118553 561562228 876641693 229601189 335896633 507674984 741368663 2945162 368210419 673466271 898858254 915665503 974015924 613909277 928616174 707471633 720149716 361197124 579911706 959983487 966999126 948098104 949305575 2458441 671972476 677149394 803048175 486848184 687426790 974309863 986752599 754118290 844436323 962008744 966594155 680537775 943399888 150541430 376434779 663137172 899645896 535715461 680006941 205741043 265677461 772203566 999175099 336662158 979192025 93436367 849671464 314083985 570546795 134004354 209798197 425375654 443751553 183765713 700332743 875609128 892538503 106010091 768988535 674304454 750404901 875909837 910527910 712245301 746200853 843299821 956346947 497746693 566139134 392332251 628482670 472657140 614157319 275091585 767120094 955560306 955593019 977451026 994302329 558937081 596619507 746398729 870803711 550287403 853426505 252144182 713263192 229137747 305520871 530528178 688301050 501096864 867451371 313567648 830052762 213012878 612410002 578172290 582646514 656109973 940982446 71018765 160308807 9251203 557816244 79115268 545885591 191979162 759968259 43093413 402750685 337634278 511432172 163341907 191183108 290627615 530552062 729414730 844074499 589562766 999742617 57093260 314486695 753623035 796927715 363769234 408839099 35321306 315140795 887915610 921630283 344644550 628653123 244813585 599713897 519674292 716479569 717013023 769960446 294371900 788607652 754395226 840680672 141406894 230209809 897008762 956845773 634761128 783512742 745761796 954467348 492756678 802122547 532674458 972835098 946933873 980118166 550046282 785184316 66961409 122739134 477348325 815414210 281964757 423103625 726380396 892944748 764896694 978857842 187022092 533506273 674420683 799945212 793716401 894272309 95133545 779383621 184798381 419244420 309105605 606682253 804404037 859508263 919057420 976340934 620577760 830841548 929222802 979862398 139471549 930570112 535625478 806878350 805568000 958505319 322450808 373471343 787282199 945857216 378607354 667655658 860800897 972323881 661794150 688405643 41474770 747317330 247877421 840562887 345158739 592681857 188621915 794391216 491256706 842925121 839134390 887418988 54885618 701553327 723171789 968100795 354061879 886305668 414724948 815921325 571283074 842176579 832563710 884757750 634692762 649292768 877095420 900597067 388024145 719079678 944139326 950429014 599080528 641837875 406708640 428740362 281638334 904774803 494953611 767093653 916555373 955558630 330622040 505755324 171734065 793334185 836889697 858678756 515902389 587267245 82469928 226299590 92480774 272078177 216905987 476750661 718240407 959709482 931260144 961435724 41902450 398844606 704713039 725962011 558004513 756954677 497194991 547459793 2824719 296126754 930081389 976179833 781186641 926210743 746459813 957890111 672721198 793040039 155773819 236505177 583357770 636611009 296618074 909851874 336810499 896809205 286838664 625049213 880417720 987507148 460966064 911616508 738796288 933059345 999652947 999758448 604499160 859387168 284011862 926097159 736116653 745902986 491177789 689504488 407545651 703576901 862405198 879974728 563110174 629528204 171721380 374318905 179288792 622760290 535754794 826448991 135915819 614686649 791709037 884951055 960644983 997952493 101077612 798078087 563395167 808524497 254979302 811297671 314780072 545459482 167549704 363559282 202243425 562423412 243426208 560558439 829281391 920143812 747855007 793900265 692452806 955160931 183343949 908457747 391483990 434092055 959159747 965693205 285242876 397057489 274317816 754646179 725166531 897069818 34854425 527833938 893123468 917610221 304573348 537423443 521566825 577785934 601844467 616578601 308062446 338047251 157403053 843856351 113867666 601449669 155839496 739609590 340510273 379194328 860510733 940552272 70530692 824096322 96541331 920520360 453377658 912538232 741948120 756050222 53857757 605782306 51345712 663498549 313394560 601275261 140423945 350093788 522792702 910505672 467864827 874159877 898316306 943551256 614811610 947367064 531395821 588180646 673241190 739507484 143581735 440920154 664789971 969293489 254004137 297840162 265991492 631920782 80570018 893490310 911489813 976216756 484917127 857695931 153867904 705892048 81183309 979748951 330490636 638695571 695767608 739774041 420281477 649590924 108617763 510063536 65355314 984178569 695795935 730954370 274303104 421842690 31929486 452099234 275466444 285248253 49887214 556227825 607760758 751303517 715717991 906108812 819262025 853329519 912068508 959918778 593441709 801193233 650097276 695222041 578549576 635158247 174160664 718322142 45614096 882092008 608299665 822052947 700396031 853342224 642567803 749204125 451609793 470972553 428602092 829800592 727886037 845602191 78460437 296965982 2752597 110464219 585595942 981564597 315955630 920598182 13423233 718940964 179469010 626521240 250973131 254185630 774873897 838959631 929887795 935386336 131593838 269580362 603919808 881777553 28864771 743039474 529953711 583705326 298864167 696058915 565167356 895820425 406810478 524978482 710949948 956899050 226785405 412178649 906600691 943709588 909358979 970978933 760453431 930586514 804733946 951895198 13417462 525744267 847652636 949676608 782646711 978909816 706592181 827403625 885567045 933923313 140039999 227117927 739327560 990387198 625789020 816814622 204429701 262078493 542972553 654792226 526956713 964711591 602031494 749655800 715992021 840702851 756131995 832320683 570957916 972167371 744614060 775449251 594186138 744586668 432749970 611466549 975095032 993967989 78151951 194227973 786838108 943666550 518313339 971892944 99495882 618593916 103062064 882976982 751147763 871847866 597550019 984685783 869118223 885545786 105087211 407858348 291034730 519784779 164141327 189020635 918930633 988255387 125322579 639976902 54117642 336479100 919419322 994929022 398090509 734653216 46998570 420691243 905033886 973464881 147058590 475252552 62658604 659637795 32015761 68380618 81894552 200225777 887392069 920951458 940411712 948267452 468078740 773930038 514582543 974729341 764575550 820383201 967648556 992913877 233692072 542767529 823288703 840603985 645913095 976205168 192365387 705723078 420761707 982088550 866003088 988527379 405662234 565812426 678069298 979160941 176679504 686972086 950769465 962210270 668742072 972037919 681149966 694735233 926887279 968795133 852322583 925277583 459201116 555616836 111955884 225279824 464151926 894963161 413496077 649587009 873406545 887047157 475687067 585869821 604788891 787288709 467698415 778816603 483336157 782333501 229847217 411549461 592589306 746104043 195598047 447127020 876284917 992244124 736806040 900084545 475533623 693712521 192058840 810624012 578699450 925692818 201580132 723986459 312272612 348022096 206063313 978080577 334765416 990243569 907440099 954132343 858577921 965360608 782091732 868446479 891456088 964993713 837038890 842653907 356347326 835178658 404211959 570712384 340374776 757231675 278297925 559364835 844490390 980805372 13386727 672742376 249194330 637372148 703397326 765260197 698945080 750087670 398332995 497459880 884183946 984750668 619216703 661237789 285471420 448176108 965574162 965811136 883025183 989609096 293917142 756894675 527756000 657438698 309043005 743457780 129911019 336800940 319438326 515280578 158398703 455293222 252635663 575372584 392710774 438113080 602429371 946555977 334691692 611770112 13372352 204751085 960332327 971303143 860058738 995045319 30016064 902795672 717161591 881916066 306124321 598330106 301926591 729144918 347991517 860088084 73445374 399377319 648849541 872493484 30641428 780346480 395091484 970243046 608555528 630074199 928792372 946602427 918835449 939299906 744968199 996692427 605383232 695835286 468066997 855446550 145612726 943714689 795803616 801847064 32535514 971901898 626094627 851043146 957317215 976950330 575958258 928827853 811972041 986970702 679851090 878703151 998731620 999599198 642325916 922829779 594393845 836621881 575769779 711553528 941027958 990521429 405214860 707039653 380909641 796365644 68058228 899332845 289191684 603437488 775895674 949056693 555742739 926685001 946765855 972615833 734250587 914600354 174000809 947433414 202167351 593795159 114042183 520484581 777896120 843096059 983127663 988317159 901104242 984984850 754016305 922743786 788648787 910593198 772100023 816903722 96089705 121864820 86800362 164110697 560343436 671270544 804871165 968283377 207723741 946229655 473949362 502886128 561824548 626067155 671789569 831073112 573309079 737703574 648587876 985698955 46565567 489471572 614685441 846866660 738129667 968950873 435436036 767787333 688497117 786059275 700699541 854216802 725907940 893547480 71272942 975508101 353851630 975476036 959018684 968570009 565758044 637386272 36721916 922698014 895341223 922911506 602462096 825413422 155530857 297371631 74075655 378477234 922923987 968332574 836225394 858610800 374192026 381562134 598659449 870960493 770197373 888114715 139932860 344868901 458818839 473385160 192669805 445406835 576669118 754509986 926777630 967082210 862643541 966499947 493514514 938910914 207524252 517426300 59371798 927937051 249817859 296113157 205378827 993159071 139127373 583397096 552679297 997786136 714434821 729305038 82864867 550974420 744295303 904224389 665455507 788630596 680828048 728725306 212364838 764900437 26176443 947149204 267111897 287728826 970622787 977858104 322785389 493913874 946220154 987696812 274905860 529549795 470047184 941702151 457906697 812363594 981373072 993297907 192894488 760365187 287807101 997585288 418841555 614191171 822596362 828253599 912996810 962842054 373863691 723912685 824637406 865923562 939694649 997937532 77124352 230830673 858927054 868699126 287925302 938263000 708788504 922406439 452748221 843629774 5483483 58959403 571305857 672632106 792169173 838611236 483229063 879200014 971012421 978940561 682218640 942851005 267204229 826579835 192047653 396940184 975889042 987666062 359834532 513254007 989013278 998649631 849735393 928809012 254785582 638381447 12224942 556194832 948774287 987015005 506596361 964401744 830985905 929399306 845146573 989165397 686315782 792829984 396585296 768769806 316489565 445522911 213932432 229750318 484056155 779358143 772678494 845934217 972421834 978272977 106673530 946826887 655487456 684461398 549528923 594251199 642769630 731211362 216040283 577712910 12457196 63039266 390695002 401783218 658215017 726564102 958689435 988275195 637484520 801436999 203047259 778200570 391800543 908691658 96709772 749742741 671108374 857292278 448963312 867693890 564529108 856533781 749394535 794589973 349831070 483834480 160060489 784821067 491360407 883005759 911678747 965833115 658441973 890278970 331180296 919126215 456427586 665513855 695734282 721522938 961590694 987200420 181528941 446179103 3464057 975303011 37942405 255131874 290486868 814883397 121883904 714004173 485809095 986871149 402513920 925599425 667941897 943336843 996273691 998537935 185495508 987784582 336710032 489827481 475338020 557188549 878406225 942660115 794301255 812229921 657276116 834987704 698561624 701883330 934624105 966899846 626899455 754831696 243277233 754993797 665810544 997854348 423817595 999556415 361728172 761977637 411137477 625644013 209215801 961685308 997284614 998855274 861936078 982757058 725950389 969701261 783734733 803339201 612961033 837229530 51636855 948852080 439186270 704366593 212184980 833432572 256060367 812957576 846221377 997248006 768083409 870062677 682068392 891199296 654881691 954737409 956145489 992706590 221154257 703746744 377289350 462476524 587604500 975221424 385032209 418836731 554834154 937751731 59600179 632665202 323667892 623912152 884222840 966982746 268622289 972663390 587526870 621006315 256425662 370160336 794290601 905236844 356041166 665880786 650005097 906047812 825052924 973752524 207352041 736810436 463870074 920569983 919557527 990281868 782583155 985409503 956941892 970705452 336267736 518464143 509139339 744837099 642561360 741353894 34844827 644568744 321331394 829066405 366408678 524698762 300889474 508378245 887847198 900036738 229517531 892122075 855589190 916823650 92458521 825226346 912940907 981965090 667323305 748527361 826462718 890421104 602035289 936155042 874750776 903743733 6197540 117285952 335117063 565468135 242442032 379654524 854472218 890899555 51839109 352631328 15268631 670228800 739217452 973295793 331385535 437619393 131946520 460377910 646779660 886134111 323643178 987911538 277326815 848074356 96674276 621397372 678548774 771339949 811550330 954515687 736799416 972813870 254910501 869241982 813451559 967562259 138790473 991700810 157303146 355133810 990382398 997662086 971931172 993978046 257168524 488364438 318344 134230405 460684587 566727447 86126774 493683697 478979570 583576883 125114030 562930272 134136511 909456443 86466396 106423378 801362733 996177553 232868603 276518669 949984134 957491549 782965005 990345840 692005600 734742908 502752409 545964960 589220567 589285123 334365066 724130582 747856889 928417343 725596174 996210236 66480081 714985014 759209717 946384652 240534072 764003402 284907513 471944220 630818896 938294568 161942540 425932202 510694779 650059640 610483073 703948189 707116246 958196042 451648544 772593475 730586386 951615263 540258007 944318800 63462914 134585254 847842367 947755170 538761118 567357750 343301115 460335865 763446666 945906281 576910756 580555752 254365834 404881266 395633661 935286123 539480927 900793053 88686023 743352640 915819788 926853509 458926156 656184392 522218543 731315144 80990207 89689994 50680334 329030699 350034979 702894347 443086411 575901210 16613599 214739420 487975994 935074056 703593425 892610499 584528620 633377986 754461941 839742673 873689522 931033546 960355105 999772770 937200685 944876694 656979916 777969282 211439854 734313217 792821068 983393955 154867003 340764703 563232285 620559303 261328858 329889662 349636055 431724723 564803386 639902774 65103925 225811477 536728073 539772364 118679810 239464137 390966775 431547404 567442596 893639158 573482002 704447249 766394542 858546799 845915635 987483594 117659694 776379524 583951228 672538160 222713213 906020508 727405474 932997122 360628996 895731099 18505587 375755990 692809495 788821162 131421525 310986129 8441300 285304981 17650561 539582352 842897221 868387944 733068565 995762120 403212311 685425948 185474005 631674313 981241484 987483867 1706562 455457306 628177964 859082996 213056290 342103428 17899387 439074836 751915966 888192729 929385502 988674810 888464210 953360245 18399327 351407843 146685940 656202422 997505519 997537711 806342139 828086486 621026590 789989207 927739488 935769519 775264650 967602314 317852665 731304427 612838285 964606577 947652077 994376314 172545425 549471899 211178735 914712916 871890984 883849212 986931079 994092875 404204281 597825934 137463111 164401637 920306834 926468749 93527954 105748983 543751369 604276722 241894039 610059255 354642255 581951234 930103315 931815892 922135074 946274542 789354680 970456198 896034243 972480602 475218971 633328953 92739045 681656639 433947888 730512408 846304764 876641186 888439181 926909188 886532016 994172949 51529042 536279573 884817457 998633013 979988729 989668177 644540026 873842708 734040091 889216470 184120573 927820572 261108092 693165043 453000316 756021611 882587369 950250467 978659528 986487314 854371599 984260514 487663056 493386829 727205175 860670746 479999553 754512273 585234736 795456625 795000116 834735921 753005537 756517513 288883720 925609334 262426718 453573623 361951984 661684944 632152643 653005890 318713743 343966863 349405063 774534203 81439562 111576716 731111236 882529648 106669265 930850486 273116347 474439485 466142832 787181292 109587001 622137068 637361163 715324057 731816750 806718803 227858022 514340957 923636765 941530179 718242174 781326968 103446768 206977710 499348478 934888506 384992530 713669624 435362068 851554352 126502348 922389882 952358839 954555973 162952516 793693902 302724852 747293488 127596746 217599848 11379309 661342009 470528170 714363562 512202956 666351107 79492364 419090238 339121618 443018537 125843562 713990873 104053633 127015598 964837121 997750432 457806562 634559995 152391869 584356803 855106058 991039218 84631450 362439715 578648723 789514164 692113009 813387007 944561917 981448844 655313940 743160167 473019714 857588157 192986277 555828942 424246831 769471884 934612652 950980453 628860624 763173001 669319125 841852093 924710672 935984536 885676510 968654449 469986 603243002 309590908 689473228 875876641 934006085 693983198 786828424 422239559 442971630 596064115 816971969 743886194 877980487 95572983 933543479 19389384 209379275 591519365 789018492 57584208 485530949 552515244 993633267 975469460 985180054 843734183 873883146 722407590 958600095 81737011 279104385 969142892 998951391 439236608 868086755 855142200 919377114 750279592 969723820 893120220 988473362 144070376 153292873 271052269 582379662 287573259 506046872 787158064 791884862 784677145 931271587 426429086 602705982 852778736 977503922 351063973 448899859 223708327 715608906 502246635 581901784 246100832 415789687 650972474 922242753 42177225 554786562 481499438 717187331 876024874 878567165 957729531 969642025 342645750 513128314 835064442 842508128 520385966 669054350 404245946 438573164 941004954 981857268 454878855 923503263 489702856 937705771 476658262 898006692 809005782 834777637 107894219 716452519 245128182 810659084 151123697 777131014 374878263 966438845 368906598 874920922 654621881 768219766 329295826 915547239 371323158 500056658 345094455 647648930 303802657 726193705 145475361 474711754 262361054 964446454 989502425 995036154 778264465 839531994 689950128 768370350 150439318 252570559 628555462 988305166 670971714 950487171 421958630 989702002 981926925 986159429 843800075 914097825 153191619 685291248 365073604 741181134 374769692 701241131 768668043 927280338 617592081 984609147 691653180 957890383 95631893 648349633 771703524 803112828 123146222 893006138 460618221 540459437 251929958 645894606 312011995 617365986 997290943 999887891 604787378 980264486 667850274 761416297 202472088 415394566 204423131 631022210 487187715 528671119 42014269 840498327 864938854 889804032 622796936 643821653 682665399 773128674 696383213 886496163 386829013 442257668 828484581 857542800 330752253 505968860 363193230 993483055 245836043 933502914 253423345 421726131 214742557 387909185 453043914 532608867 528697169 607844671 565893759 941077578 856319035 869201656 28576063 505794319 796145283 856368072 426772286 485409380 371284799 427434687 725264920 936613307 871073375 941558084 290612030 521507755 24941019 806021131 424229135 626704360 199159189 917519608 51944879 667225594 377012498 683640200 372580424 518169572 980661688 991067258 832172843 975809719 584857261 782974849 16489241 251118327 785186835 978057266 809911232 969686112 700363860 827716739 643498964 978001931 402606421 580039993 463091044 678306009 582677020 942222479 870430625 980664001 976338209 992872977 710938987 778274133 739533303 926823380 289393955 723971365 126973322 288902985 256833228 620864375 695714877 806086192 499068850 867536629 615760054 948824345 528870099 877503017 301925163 416871208 517556895 907755564 579661166 985776819 69240406 974697823 644585669 729709273 822059415 841223720 706370283 898640507 397336160 903588101 801411178 858523914 708015620 839979560 875609797 976623924 174332260 403869019 199304298 494648840 845095461 917835461 61543424 167233335 948403278 989890553 776890891 886397124 608454688 609866181 975366915 976856867 383625801 429900899 433950592 540909275 615748821 673316957 7077416 943340526 291557833 536478888 843117759 857514611 208074814 793915030 165474410 481464425 943922022 998544308 15116840 507606281 405151870 762705127 821372454 846308394 690388337 766648116 907723429 956648504 905845156 908044678 296718894 598750854 472012003 974721388 713737469 740166556 948236415 953491187 151096481 969726246 923974767 942913026 500266360 769027833 696363582 998559487 349245020 598586853 673337574 798171303 339038309 380461523 642559629 774684052 365928001 937404828 825292308 941477645 403193046 741319665 440905607 884722979 179269180 813252371 625691988 690796308 674942915 811178442 80784713 475041430 474188092 528958025 604731829 607014598 999129810 999797798 899657875 924535428 134499049 445705714 756277891 926712518 52740848 725760559 629201128 957574686 338931308 934239992 482909448 888294448 438622284 781420779 381093977 630894618 127207148 261598892 881621997 895607860 654200107 771016433 349970975 847213018 162626466 629335238 243872228 589146969 234821446 406965024 923156858 948948341 925815924 987011276 555297848 868979952 64643605 536098005 762478650 964253742 942614724 951359977 266289209 411337164 927067202 958346516 674480867 833267634 970450753 984345607 553058829 633895364 788718188 863818855 203142588 393529418 546324884 806215916 211277034 911998567 404901482 552354620 259060686 805993534 583043342 928516243 342846003 411256496 231248168 386289316 363251479 839773001 332082568 834457313 441904918 862959983 159265227 311537373 519502668 970626084 272133053 894482316 359362572 663809850 964091352 969117600 274878356 744107050 332059847 437957489 702010917 746171388 182838673 792965798 723875126 940903658 462575190 955239945 355381533 739874480 953293311 993594342 735274167 920950708 609763121 883509444 730455151 998347719 176872209 731056931 191912331 636006764 493851399 752223951 86537632 663037054 243677911 262298544 919425817 996688994 204600207 605120813 846215381 963129907 747723128 997280904 347967974 727537112 929765646 936587976 900690361 960999243 888259677 909579036 371008527 780182891 20469216 601345060 436394575 450820511 192732827 950097817 621622357 926606291 562104712 949557470 534636697 749322194 314470015 347599305 659001635 896596241 880615041 908008909 227506037 475242636 576919069 900961994 736143852 996641173 170378345 341608346 761596184 779604894 845282765 957388033 337418554 402532991 298464003 507073603 892481412 976882342 573545765 921253864 96006062 433497837 448007143 535161488 443510010 708985561 211266767 890770289 593311995 892667646 348200906 449459860 366047729 912928676 792010124 890559092 159868701 722008563 215569178 724345577 180726754 636731681 237470817 948819675 591920496 983105361 772947322 957372085 610970892 711240549 602356798 734621765 370448622 707391098 505069906 838605313 558922926 655808849 329792990 815849274 118438579 263197901 964630768 971411753 535361257 635249528 562532405 808455744 938768834 986220749 611302695 994931797 539134644 937674571 727870673 948956764 138694767 458954879 866883435 867165171 444732925 498244946 123753353 128102965 481782742 676876595 831130124 938326415 313927412 800734536 611390079 782601187 365295742 835891541 797139884 915871324 394423170 641955745 422493135 632271841 218476654 567638871 467528313 699801031 103874493 172711742 636406257 655423731 153770352 294418892 664378058 840926690 650557414 999787310 822432959 946851587 389972047 778280147 77789851 532333368 765330938 887955278 328870050 940383213 153119755 505443786 387312919 529429007 166051798 686926492 381623974 779487363 368825280 917430577 590313433 978552185 814461108 915896471 692736029 727027882 8404736 897877276 72622365 687128206 848932310 947165725 414021603 484027325 397614277 751243565 971507440 991788451 910848631 973026577 336533992 702719887 627887753 906685462 262510537 327917413 434159081 563265425 331910832 733664259 345906345 674384144 236404304 963951914 702971416 912234743 165762559 341351214 70520189 75755134 270260811 531100624 930930201 994073345 653939142 997020035 259256234 580055169 684809162 998797644 598326799 621518801 390575850 626464689 293919641 501043061 342919891 847741564 31479582 69763318 139586146 566500203 749250046 856282666 562067122 608700037 501629316 885068633 732989912 965874958 983521982 990645882 417379651 724136478 798978510 988465940 179184989 566360798 604872951 615881632 417805487 493512970 513339311 924284978 442206277 792326635 772749912 825582320 565276438 676154460 846442909 863242804 382102880 974697422 998448624 999613187 738468524 750160254 455285561 577867099 659021799 682804246 289200037 704894393 207939636 465961099 878433434 994758869 633124150 698470812 900197340 974871618 429768343 793859749 880265601 892765250 516104000 781558662 136732156 233375835 734212159 983819017 727121924 793760682 382225543 719682640 431848627 499333772 627563639 839782447 81966216 129825267 778443775 959942217 294269776 365295969 214118293 265279630 693374826 936817470 730632791 870302630 158402438 248716122 985205865 986966273 333925317 637174734 753103995 832149970 650813701 844772790 964376004 973270200 265015609 509942098 404167667 479872694 355072777 446816994 259399687 953555641 500660619 554363027 208900131 516358726 39316737 291076772 516010666 561247411 433947380 845469309 901194213 947965623 101574784 121600223 513812150 648204727 895696942 936243539 43079382 765572064 85494899 335973145 220517867 922029647 179007767 438729854 936025737 970676975 74531767 671571734 441481740 974265996 750524226 898503915 25867365 310375657 87962850 868432949 259926349 323225473 470059461 624182124 48442475 425049020 490875832 950796197 180810025 821417314 300269172 569927506 930065121 965351753 840304826 867380739 770043263 939618594 366354342 517286830 74691884 160125657 406763139 716113484 429305239 819519231 852422977 865676218 196779381 825148550 918913557 960479935 794580220 865073610 161186214 615715162 784042515 911854488 667251043 924074354 524675896 610017338 82200137 365853711 693886804 990114173 839406831 849689310 517666967 876188150 750726911 808894478 252291144 810811499 613050723 685981390 732635845 806756893 508276905 842511779 252888319 875595050 167972523 540553997 570936957 734423940 487257611 879910575 326497560 904394526 698130396 839264776 533984054 968490486 944160323 957273067 875077215 912705159 541031194 863812584 967692216 974371493 784228242 903104475 385085436 621011654 326511942 377463684 816652002 850414074 588203585 613987366 891625155 926106925 590832140 876280078 553122662 913355691 428939537 471854921 92159560 519101183 188265471 962633786 649294257 779980190 174525351 742273725 135216047 463383410 141990693 762535669 260828170 890990317 855784997 960378996 581127578 985213717 655237178 929859671 989412921 993193030 882659541 918881842 244413594 986633399 921775328 942173055 721728263 885212393 19488621 355471713 419909610 510110199 675651016 946425930 693034624 817295118 36778488 260803115 687276245 949644744 517609517 545282275 959356168 966573814 899180221 956820465 177993959 719590162 804226690 837983461 693636263 765629153 682942404 969525127 52981220 124995076 192844117 691616838 972362870 977236719 344603345 668443640 245237556 299293430 887483011 975610324 650838507 966235026 556854241 932438527 731126259 937842462 811891721 875694418 910792724 937829458 642556291 807067177 33984286 227806034 616420070 669311369 49271987 116216101 927586026 934741908 770469520 974573030 968480904 975301298 797298400 834379861 573144526 867642864 381136188 468126747 620317002 937590452 568989537 620139494 934869058 992858643 317338337 710146487 643044998 926793318 165074220 606346545 440333121 496139581 373391907 482839384 262320708 721665384 801089744 989114269 15180317 435706698 154041326 413499349 347341207 894964811 922877830 962191862 775064623 992213893 383961901 927747321 707182968 965644958 299982974 399916522 844964809 856150938 339720343 900145586 805700388 903716228 745702348 818972924 180945490 399062410 733396106 767450036 548426680 701101236 477090268 628602258 40883060 208294006 553164231 736454719 500668759 909194239 957257131 976332149 664325379 918587505 912652998 919554297 896156224 975050222 725449205 783998608 626482393 946283795 261314381 400567515 301532145 412943554 654745295 834644902 600403729 867871764 319466702 996792269 591084334 606062567 113879414 726282760 728033593 809510069 694853969 840975998 616433067 997233810 80371056 872941232 729260141 759643171 704655605 744857470 416054249 684123728 761979564 781216583 241258376 631967355 36484248 290846113 814995359 943022392 359046865 850921791 297153698 587959221 442766385 521684588 938403778 998533922 379089802 510636272 590445810 871048809 202790302 290173997 498578454 645164213 858418626 892165259 953520579 979966674 643300544 757261506 622382348 930309223 912663744 935701002 136779425 630094847 693216000 996021383 857855922 923539088 808190089 978572203 280487797 600883681 117982048 576558894 603677601 615033094 548137781 798632924 105557622 377962149 115439808 829577957 823438241 941831486 991435702 997993588 445245956 981166080 929619678 958785550 421688852 844943744 796106099 808288870 73913690 567508899 418777973 686276561 534176501 605882471 197356551 756148681 594960035 973768475 306430606 977248651 649384838 909647867 290327201 465693955 451304810 780980635 1324890 849327975 224836664 611774285 854512352 860789079 491194946 621955993 364736833 521280503 378337638 534213903 646986439 833829779 19216864 434371422 244840118 470875729 480672532 999220920 951498134 998048952 103568190 788766900 144169945 898941694 943038598 983408037 244705080 583876271 753468617 974826644 102018969 147884141 739654288 912816783 388421832 576355212 416048427 869008602 472091925 996125673 451212110 789800524 244961679 524253861 689830300 900608975 405290354 655183809 669317786 808722834 794549615 928860514 128990353 138559241 819072789 886979090 809647646 890072415 307349686 809260411 590634218 602222618 271314860 797437731 719043013 890536312 933476835 991405085 135892106 569156365 865378301 976968903 309646291 649390812 98648354 203085242 727856833 799451967 662272470 688110412 621238371 655799319 972781112 979497146 232515795 438626214 120352490 915154603 821527949 884301355 397681315 538239571 488463809 962008412 781323630 898318426 916511720 950834716 730765709 732554235 90680688 957849546 155984636 789529733 746351259 869128526 516364563 730186280 495773337 536676826 988916786 993669057 584139238 790690547 686154543 882974923 523754556 571121837 166647805 887041597 835598999 960776420 60286959 209146815 994266513 996370692 134001968 635476141 85406946 760893206 154067297 447279488 882838247 926870018 220341029 670866526 744936902 896357456 349411855 427362584 707556496 860663249 287334899 764158991 754492428 982765789 612631001 727106456 22098305 805661189 819084172 901522006 161431871 979366122 578310110 949058498 314116445 592821172 571054951 910619800 48875861 794644367 947612026 997810043 149187186 228943788 529698429 680187985 152745506 563507195 1937634 573623033 728074921 888151856 651799012 744169538 737787948 871868306 940346542 961225762 367466530 381217976 300212627 547428216 951310644 973584088 144049204 889828822 839456751 952627272 290698368 783990200 971750439 975218239 204743777 306800586 529338165 895279744 822123362 873067053 237936580 413042223 274209599 512925682 857230199 953421746 346817602 484231060 102265511 898208379 773759978 987566269 700963963 769616676 558002835 790241901 87439007 759825034 92087886 626243963 872884450 944410621 71201781 493916978 280117269 524084464 349975212 544707663 725293139 909162625 746563299 974494041 360175792 369816634 78593662 889147026 653222493 720887532 689365461 814149244 986807795 995049527 191980648 958502248 560876458 792883632 597966718 954225009 334977901 365215040 969286427 985363993 721759312 965971052 335063649 883314305 578177137 686158279 7486551 445116367 438756445 637470919 5011503 380281849 813002150 982085203 941726789 948546454 409066833 498829033 231007190 428323410 582807284 820599133 708943849 737899578 204060724 656479594 668363065 679734909 894612897 903264070 760373461 964013598 827405766 954483311 926205005 974031555 578354375 768282374 437158812 788305694 888681514 890338911 660790016 713163377 866533636 877830868 879778491 990019485 745298586 951960530 220678711 991501645 689797925 912794895 387968554 602016323 558271501 934444205 4498952 224411408 755455545 846149409 842623813 943425563 706264800 722643681 458568317 487054429 999713961 999998056 60699434 912648038 445257402 985679566 571116862 713647529 375229125 962527217 304366987 724303390 152953160 760747723 296944033 753103517 902829091 910720502 264524925 362622280 952791973 990792702 167207528 359687129 548407075 840494180 751276462 899613140 463542789 866370115 618093404 753498885 624150149 823250085 140069433 405950536 92223850 957526765 616486251 688046740 147546051 615181740 357072809 910554703 891903881 932324872 826040722 989178051 979766023 987186471 558830627 831153636 323543893 856047645 323722542 375742568 463075969 916115414 544837379 557976333 529274365 978841670 273051726 883701042 213071386 415193854 858581989 989944749 304915572 416961443 303077622 543817007 641138727 903045658 428005903 603102046 216176533 332611377 110320817 547320637 678576500 692793183 395323122 628863226 643583642 784901980 965276533 999929539 645168588 751327763 865717928 900022359 938090376 993033807 160311818 676672044 977717779 994231997 970317630 971684096 945836021 985340851 355494066 355870442 549208863 730547010 924523040 951916065 99948505 733713850 139450993 491345646 138155467 941140776 784288151 946492557 46438294 631061642 790941293 844622636 969722915 998813926 343049388 591252226 271425779 716332547 446650328 626686133 975020789 984858112 206803598 729602818 442041430 921474854 909844730 966901931 632585722 928857537 18134382 452424164 282425979 790062697 44548130 508699548 589543084 981801017 254663809 940756287 126578998 846216129 810343252 934662094 945013021 962768313 428729171 734414157 492190987 622644973 750930268 754814303 278202578 643018809 634701547 926803432 674352625 764911111 847870066 904969018 724254988 950170741 182841459 217134817 434228857 919603218 767505075 880718954 144884798 679327613 266452415 297826187 631186348 968142892 348927763 396172405 328843370 500807108 593678513 722722502 993838682 995533758 357955338 506743249 308706613 644394966 902563458 942034399 946508634 963974918 706555102 976552351 851938428 944095256 870938488 942081212 690896722 824202257 413362636 421295971 848032269 929479531 14028276 237524076 976165117 994223376 699716534 989784630 595554118 675358033 258772581 404180391 308227303 749918720 793921396 975016018 330602463 625203620 33467212 789461017 712190667 831886826 533255586 945413734 705525820 755101265 916008918 933848091 715705928 850050191 103760028 944585662 498224953 562809022 916597310 946682190 724844753 821647517 731050864 998639778 229917283 350353939 18157206 671447240 131501209 526804018 936898263 995115416 314720009 453897436 950472412 969563040 743092946 977422256 490917349 991185677 735852487 948983735 515849935 804419778 832392450 941791938 843330932 888830041 245606736 450117766 565040188 892853156 656279181 802466135 593091808 599229033 728899544 902465357 299207008 545931263 920473062 937655163 794583047 855344320 508035634 962571186 239286419 272021119 633296430 750676432 525111874 893782877 306681973 403337988 919150279 971469296 478754691 905279797 715760931 862730908 294951125 693967685 426203374 591764177 913503069 995743133 273744020 836782071 598482560 978210632 39020031 768005579 662191711 978705949 386579817 558533116 593744826 981118962 271445244 721090657 181215981 430378361 79830655 529380183 978459913 990643724 722446391 838672658 240863449 612679778 338970004 638341802 292860117 823358012 728056797 979792472 962984482 997340361 146809467 667255697 870814783 877908719 172381799 505268045 545022297 564695838 314099625 567995550 938356823 949030744 339538066 874994411 252641179 636553741 861284580 950439449 831866345 884540429 418250173 782078166 345183655 591250820 250254910 876407466 217712292 557440622 117033497 834318105 282346766 834201177 55440367 267875105 304427253 749160753 44545878 974406344 408903564 884147224 238250962 558132768 388471880 872476798 802719367 850175100 773287178 989975798 104345670 892701183 253766747 587099353 66829447 69046163 138962858 888780504 629125579 891823190 997279100 997355295 683927904 783197843 685371255 828852839 460456497 486607685 269522079 382619072 94245645 589440529 848143969 890703728 199548097 807290044 380701162 555518930 919087014 923283806 975131914 994240483 108163152 150921522 127998180 547050455 153866041 895633927 261736753 340801686 137411099 320601423 52420740 320546681 396936606 993092322 863915895 872462216 29903404 187786996 469496540 588675163 700874417 831911379 745796546 972690678 697804175 949095533 208608557 535183255 578084538 696618701 312053551 960269891 913422161 923583375 25506737 655769932 846489058 929245827 228657280 483486597 685551614 854113168 936030382 966358703 87811698 548969969 698875654 869823985 302063152 838264954 258887606 590886531 415937771 818384563 583380821 648462213 789107724 959760949 629054256 678498819 606958611 833593259 727267739 967504246 528378680 988123350 884026896 907736668 290575953 702001818 998417559 999217409 987869862 990572955 227988369 714712137 198149951 278256625 879134662 979078095 189038053 272935976 902115271 962711546 100815805 729781251 584705586 702837907 36884855 772247108 883966802 969207267 354861115 843549592 720434815 780301063 387736269 651584677 968625275 995348630 140680963 999037247 331756585 726502072 411388092 749419571 471433502 477042771 413990059 698642886 853226542 986121315 802593890 970345850 308079432 388005375 297729458 960636701 835307236 879381664 958681724 968400660 566937451 619948967 421472377 491585288 387638604 637841567 79673475 782024548 102391785 355810805 79242055 468599010 430428971 700142203 212613103 358668420 328984139 799929720 640155898 689687907 124722577 902082197 305099950 674412597 301039631 339859124 162771718 988120403 139508844 338777180 228721656 654813114 620654677 942595994 314168584 504164173 669456503 786599479 474827229 887537185 41252200 745009600 246455760 664281748 322987451 367140480 492787833 794740404 564516507 906200286 533733180 706447875 541024947 668508011 515692512 803343293 323255694 789471329 980832159 997167947 131920091 994748761 279106723 384668805 253357870 955396620 81087534 386759540 534796570 690621131 104880077 904641820 333761116 421130284 301092269 586249194 809383597 976350708 967182896 971964345 963461045 995315607 739491063 976960980 311292887 903998715 877431058 900161623 423942181 949383737 931854854 986302636 49377291 349970755 398073784 646048482 505360461 983934338 452871528 529935722 764016740 900622679 548820724 836629975 743307704 850755050 434798153 776369037 424527076 861519945 399867221 757450276 799681619 886906564 494849402 592131580 426755540 503293076 500450659 513723756 719202916 890630380 221171300 861523270 472345172 947426405 731634277 869288803 629448175 662552521 830845634 983224669 777198140 989558743 116882147 837563047 743206160 904690091 676394532 702236442 155865372 646450409 903297408 937623597 361978410 621360323 171659113 918893749 223859371 732669047 691686235 749819024 499886819 969118884 335595003 821383392 133725714 529668567 479595775 667739391 343903545 532293532 37921640 802736034 430725551 886887360 155362611 450794982 462925881 637213672 294757530 708311268 901484369 985999248 823109462 897766680 611921753 615752440 136405638 823586715 485254160 967433319 280131453 771260703 996378086 998185816 921266774 983395110 731052637 917717319 903150577 996145571 960525898 993242005 144465836 956509863 34041540 742122126 309529374 375346729 1761175 425426821 787047866 818890587 231406719 938178497 83577422 903656427 265164567 923025464 549207726 679375035 926361400 962990338 75484727 330546569 378076863 621285962 565544409 944009483 130028155 797199200 967967292 989209682 687228433 842893351 452929335 934250579 247511501 600402569 117183121 472509555 400704291 882214121 49447621 525031352 890346576 956023503 85530226 215599477 431787339 439051776 849587451 943554634 887157164 934023311 306908798 607042139 498346949 963885854 340534901 854689234 624186288 664355608 218148934 760925539 155911309 655996783 215361872 777837758 29750082 51780807 466475283 939337067 693713796 980346786 111958243 580862926 891682806 992182023 608462392 985899504 243270665 563370984 188513532 248357026 769316033 897969146 994218269 998920421 975559167 989179760 159547790 207293506 773389180 887015350 581842153 584292219 901712168 951889965 633920969 751760886 484494057 743370180 116681208 615265922 948264699 974295407 569521154 888968393 228385139 730539547 431837855 601894222 319599190 834826443 784322735 983649510 217587286 354593593 25536347 317303825 66753865 902723898 955292073 971460928 524346113 755296145 149158573 500435678 717735746 842825745 118496050 399404440 508821502 950064186 311175528 759490743 815605049 815741126 818999579 942481258 448640730 792589408 431036303 945595377 590569034 726469181 188113982 339767637 861255942 895013146 360973644 482791119 550872282 865356069 156081247 655347587 636779090 941269048 122444607 132458952 796508166 829470996 107202300 108239943 232963415 532919575 454585762 811985812 704908373 835465539 453045959 774256600 837788424 965745582 56017118 181132448 141106189 540553094 909371878 922003743 218515283 803188333 77573708 545437298 140575285 532737121 928376672 940659019 420852044 974286823 335414939 849390133 717975663 987668024 413001554 817400712 444783607 904908932 733150695 982299647 59866250 350132039 456499046 660204245 70290263 920641059 40627489 744498882 101836989 113686706 307398599 940587129 641354078 667821239 481546590 688073274 97540157 797615329 592945666 640120906 109819742 472584109 162398963 689081289 756535082 975596138 487043756 646247345 307347270 456963234 299983486 711217126 281251053 385194314 62720372 253595119 751811487 752374600 718342833 994598034 369511729 959386658 624543587 919716968 237115119 405873953 575951405 750698682 811770230 827756897 364418908 636265351 140263529 957291403 899228498 931318946 643915477 757857047 690655603 849888387 709119423 816483618 764784973 806853600 274329781 969447557 616145803 632589678 613997007 884262099 103021826 456331072 91670390 469949425 781149346 819488693 895148455 923450957 744805677 885959963 54751860 184987333 631883162 954588872 781666309 829875363 634206772 727759921 879902005 906064892 245166521 410534724 604790565 615391600 321376597 441256174 605725947 783375756 442408961 769788399 229936851 497160634 149807578 338147889 617399082 911050335 340358496 941204641 428967903 659255205 862569148 970865440 187187855 896130253 803614025 969174642 245703469 742668282 642773567 710675332 330040304 361174768 881596248 945046175 351467004 701215626 9289869 411742660 422201811 744066683 546221440 907677892 523009838 603564174 790225651 918725566 258529053 400133019 832222065 893446310 801985802 997243156 713707998 773964472 53233939 800971187 325305809 600534433 342548722 567743538 756737206 788658764 13291913 993218062 311336109 758435646 858356286 930093305 699909392 927458635 923677964 964731047 891260223 905433013 277216119 976762539 684414455 886835708 826245877 959449345 343880598 378747761 699652242 945554266 384246589 939515772 482733904 917209302 131853990 669976090 1276527 296863959 933307396 979538990 993862591 994274537 38808427 528757316 959834427 987545924 612495595 897445800 359432048 629112101 283763810 900035245 430723338 975537917 538810385 824016619 157455955 900962966 558268807 586499311 530148278 805919782 587821822 867458258 815103075 998090624 319237403 978687378 756738377 946422224 978295278 998156743 742145541 879126828 544846686 703788256 640640722 761974437 550967590 678407518 532163392 583506385 406724881 431319508 68681007 212945391 26326852 882942966 738951966 863587942 780396774 942928479 944725719 982210526 357041976 749012513 930312530 950078819 543571529 783829290 141537327 193255035 732214178 786853261 522674742 733003484 643113209 968722098 895323885 944645468 76680381 146482134 781724058 791766012 124246132 911670922 662230846 665983627 599260974 748399091 396880349 641056381 70201674 502232108 429789749 553941193 55337108 385081328 191447142 751250393 836912498 980141624 920819995 923613093 276086942 403545590 217720783 712751469 282903695 374595071 327047875 942684728 315766119 871514859 309988956 988197643 527769008 597317468 208312649 454656977 730389304 862536704 289923269 887654636 552642187 619346748 152952440 624488804 950953294 996471236 926226944 980604309 846438770 862772267 214231592 865480103 619651489 883304888 154834984 847413711 456070553 956275368 969333572 989321013 732977680 963787453 76369057 282292649 271076687 364798535 774508338 994418125 909968300 925861398 331400456 899228773 958275659 971297393 963941341 966927726 393056628 962120835 228367457 292607017 836098267 919065381 644926223 920006109 684905599 961996333 792144010 983172721 174877961 364196169 491321993 755869838 539548090 711635596 50202013 578408594 693081673 926340028 894548292 906181830 478638242 898374521 964043608 969422475 634863438 881347750 620200819 887630011 699434247 711235722 881125215 919682530 64452372 552116991 401546073 591633546 205580448 341523638 763680373 948906505 492356626 948947160 863621378 946974799 270749569 940173363 657234927 887604510 170948737 305736515 506224162 576682388 636147105 842411875 672524103 806994626 803591233 963731874 831855795 839581725 995771494 999844442 760893757 767952157 698199283 736420820 808413605 823412072 493522158 518107914 864244508 910897947 51893006 774115577 148531302 786199827 247309464 770852763 391009123 914047279 153294517 314146023 72919765 513048227 970132532 991507090 182755016 261428124 779086823 865183166 349578526 886067724 333594207 672001771 486423777 874818322 597831762 670129940 386839005 751559955 533986036 980525556 273057290 339583913 981519565 983218047 395094881 474387896 424891927 560670948 368083280 842090547 741376642 741501933 702594074 953118666 61893086 412569955 630327839 832673021 277966290 683062073 419115770 703718393 601563174 933858464 559648030 657073780 848717277 872616197 23311956 585375913 917244614 947270656 573697685 993412375 24176669 284975949 547631193 953224318 749147815 794606979 456692464 576277567 864251026 865001458 450182986 530719974 861326505 869775601 476996798 994254076 38481422 681553974 681603339 720762480 772527626 851393606 446177078 899567646 932744795 951956922 911855957 927185452 815054199 837163132 386426374 911324101 952485941 966676864 183035709 410669130 256613155 622388166 141331715 512339001 612953237 787368856 187245210 797017267 31040672 404688987 255510990 899080402 233296326 351538873 480705224 507547242 422437818 999293989 76541257 193765995 394110532 687804629 867740911 968023558 713275903 901423681 248817227 525249281 232474475 253887141 434716362 918541795 143916308 610857546 937567160 994010093 31948231 672318374 698911273 968368123 343039230 456456915 191768176 842530838 46069351 825091991 803141237 909499570 257379866 562937901 130440190 851135775 37686961 505922149 856103508 979921588 161329687 786117013 292660965 575889957 521008227 910240326 558752180 772372908 107417979 140711315 775876949 838313694 998424463 999831263 815486385 913513072 615474403 695846447 866050109 941647373 688259838 857845778 133249091 497043151 773908044 920177952 670782172 852992342 909941535 938572978 13051735 273407009 617880869 619403678 651237707 758547537 873923828 895153732 666093820 861871515 616517034 914722882 503838943 724628835 410359607 607315666 779683179 831446900 804554532 913728127 417578576 499186931 791000859 878089236 609657280 643710168 178017196 863788461 649351968 812043470 647048279 865154593 228346103 919206081 703352085 780930561 776531723 857509001 259333163 493209509 37796064 385824708 136721144 391195301 551265006 753787204 410537251 794999067 918028513 992397210 375379978 674673419 282709142 981427947 902988240 946533030 646202452 991321768 53229477 858815862 903891492 974687973 850133958 867742286 702512551 803104151 37128594 166868894 767517545 847934912 532320244 906389846 471083052 617301703 688607550 789342503 242388827 332587206 391686962 824093861 946697620 958070263 888625189 928221487 284946887 574898763 655095418 738455059 969264248 974914997 524388171 652559490 479845219 831717912 939494316 995445685 822795265 989152861 81287458 803456684 160308156 821284626 465684150 720497197 337010276 771133408 104444391 546233825 519236399 903502168 140332298 654103930 822569053 992823099 906392700 932300643 623909654 678170104 317499555 591491044 11865242 780843802 937958662 979717300 997753981 999082551 236467215 429072854 381075930 979502882 794049789 924258549 432594928 890307006 390534009 843289737 301048833 351036837 317426362 861938212 971483001 975002473 517827605 808974657 733304584 937514726 987739046 992981020 689141698 926604053 177456346 489453305 649553214 771745638 860431062 936461584 341760929 635464808 599198949 649101911 837983704 954219885 538209127 952345457 299763029 395598238 5146301 562468110 569507682 986287323 643200372 660295648 458635225 529952083 373324341 811775855 697847167 951731180 768957809 847232973 208628378 929576912 534309104 858733057 880961653 995082282 608055388 958940519 941157543 985017959 481384333 656955614 160378342 264802257 28696341 398571269 922246758 949485561 278351342 837723048 994589288 996008333 489225150 934333787 577570663 960595997 216008178 263429238 967133442 999724572 196198322 978038825 520354049 676397515 151715705 911543106 81682629 308034775 736001093 972344040 498524173 904142973 574021470 874788211 151070138 538981749 196444339 240019818 171877394 902024631 660739685 997673773 647437235 748790198 749727208 924050687 21682363 349815366 973098278 995416360 987369270 994738957 15281986 427880972 867936758 921738489 63263755 111476105 602755952 720698176 78578082 746031178 853385212 936387476 667513280 843007552 291360182 502372162 132564232 760549339 832543091 994451327 177422199 883608754 384809705 891841389 939500955 960447686 51891960 827258219 773260191 790816392 947771514 978403646 393801810 837534264 180657263 838834863 685043386 704046241 890628074 901429335 367708731 846839525 616047169 940950721 234878659 536662404 739801143 867274686 327506833 465665573 860397137 967196130 240406060 824833672 633293318 690706809 676152184 787956227 895607633 938880942 319086870 691775898 962940533 997188074 822413926 990660347 534824461 882674431 691346611 909728950 592972554 940742199 682332083 985897587 150839545 350014000 734262382 977359085 855501572 977519876 662743495 723331733 681217314 982111099 476273856 937539241 160578241 530034723 649671536 857078158 677829911 740873393 136292786 258070009 899432034 917723826 305246006 543391765 912788021 994787042 95224143 774964290 288167540 341607504 984104895 987055176 949043009 955163416 364693727 629801283 793059684 897976874 337241310 393882043 442463278 813158353 358127300 825115926 594086183 656239358 889111904 986194703 305647740 919657917 68783851 939749234 436341201 953999914 632014849 920261322 886451268 955355623 395646905 399543307 260684614 809930855 671030055 750746074 865413694 880480946 211035524 368832928 43795356 398402104 749788493 846386761 211179870 543755517 796051242 910797622 679235985 976687377 634588569 897232336 447863745 645696586 478507411 835426201 325901144 835624712 927616851 987179558 764400658 960411769 236491491 513069709 212961742 513064340 208629518 534511617 771425671 865875832 533767440 921104962 306256866 333882433 79224704 622495755 233121106 876217340 738616211 996871683 323296706 432521127 717490407 857162161 809071779 991988505 367025773 868171290 764354491 944694486 438246254 665865193 140403212 381446114 12566439 284509950 28233492 266151163 334424977 777262075 365153510 448810693 854429941 977834922 846148390 961051391 811681241 885425815 244864901 436467011 945308879 975543170 878733035 954156816 455394234 659889134 673171871 706123783 17719498 709939332 419683688 558132346 694192559 795988063 179896034 605715960 557964963 867278080 354882138 490442817 763838662 956324608 70981291 124075937 292481948 725102903 70173588 325789139 434044935 681911683 687957132 814224588 16945268 961690244 692128503 928482556 819113599 873029920 950750422 979893331 883857660 897558486 958984194 997949396 794087778 954268153 774000273 803757168 209521981 917442702 242878436 972067104 199046985 929715646 769611698 962477881 235791740 596599975 176544638 460603383 386076676 573000651 570846831 827220646 291093822 748606514 160116640 183240144 749508343 798925767 135048494 652499753 828025983 873255569 619621968 856001443 881440897 995687118 980524611 998958471 137170658 293908987 40455942 925721123 495346589 862664824 690090041 883826838 951451564 982276015 349160696 474927670 182629336 857808919 446261207 892382585 147768407 631642975 985183888 987025029 139253002 746928460 91207113 327991789 40638127 295890917 495726390 788380697 79277916 104058226 21565670 306329756 791973770 920613259 997791445 998000991 617640070 732273322 656327701 831028405 947373532 995393902 209108440 922113095 807119774 976398158 570662423 856461340 999465675 999797998 10133214 245288422 528519923 653736854 212690756 278907765 732646364 756284621 760511987 855915969 902541964 983890158 721931297 780852133 127594686 546839211 453654936 496510106 442929292 735477238 271501480 651695374 443842669 535419155 912628071 915510133 91228856 836836090 653104162 830519856 58303439 750847015 587145009 820186061 170907872 513555615 331545399 446144665 232256639 294799859 550110431 743839179 659906033 947839070 871762642 946412460 879849496 916562056 522350303 982733464 512064907 888861197 999015320 999431233 931171957 950414926 384263061 843820968 791585821 842505900 640520171 793629573 287037791 664155832 778455249 858129277 648042974 944299622 57361720 432045005 842392624 982503344 384506075 716625455 956984990 998026014 978832542 980095234 686362049 983614947 565663140 697073051 549509369 723825049 849722690 863543854 195543597 605444845 934056994 991378063 58564309 925264078 248931894 621363062 535070728 801610573 446437715 531300271 327044180 972867561 953537048 993629026 569272415 767849160 401955187 550764213 389677226 680776001 265230061 720009530 625166303 634811556 952796402 994429491 698447523 866191678 863953109 920608930 803037594 974275426 547289293 882362299 49948305 394883594 540820735 897443606 691272500 810394146 253101892 924444148 80721549 265628449 487340638 522357176 810381466 977730260 202350228 757472955 115923587 352915118 786780226 983853714 58153011 415562527 837557483 971422944 691634196 871869753 152109289 908873547 868928678 910410987 231211556 856865767 672070592 941911457 714876346 963928673 936244821 997408447 410197376 705416228 758223770 928712413 992466097 997947595 93345021 914763017 267353433 951978087 508363689 612644974 834641867 936235761 36175410 337837633 725902806 989878989 758829509 913647140 118196249 290154909 57857004 907327213 413350487 944314003 823660813 952242142 649386211 733390842 140876067 155832790 890025306 910689678 608674152 731192005 487907419 837081162 980879889 987392004 267498008 473260333 823595925 952846163 601918156 616727694 472090933 899488245 554610845 894259088 28080621 651994851 61208433 916537683 330863765 357123370 591238100 679752648 651146697 859510424 776482352 999792413 704973929 752784583 610614849 966473300 20860068 182859290 966002017 976810841 757845820 978192088 80805666 553644736 990720497 991014459 721886548 772563483 731111377 942618914 997646169 998493981 186137222 577398245 810241810 878226545 790193042 994717172 790865638 899733574 45850625 682411023 39527551 591313149 252831876 865857892 849110809 983823457 170228533 307852625 644033093 931832224 9326788 315855767 38588377 742388892 812821695 848527202 494873337 838856718 948842156 986522473 688596576 901530278 208626010 633590915 473339642 797449851 28859382 803404964 218893469 954363002 574248267 917891424 517457001 735464736 637244150 858410913 685991007 803582063 541588549 657339728 474141424 492386698 801569356 952674528 351834769 753505101 194134905 360181104 215437610 842368075 442819045 862235679 15390872 227658270 195989856 881748992 840629426 962036140 688641257 998658373 604454942 672876575 254103993 480946541 378291940 587214130 133132551 626912055 787837074 897102534 435659490 796822836 257245058 424435785 949805809 953975812 530586331 944339948 104084498 315356124 373884384 589116615 611384785 728901022 959401067 994117743 461613123 553710039 108658622 124288381 960781992 991388730 521236411 994430774 330389182 458059608 77571830 448353872 797566422 805995567 885348530 902589862 127248355 711899042 13114397 139299881 20004480 516451573 676575637 974811992 240983104 548431981 202366826 500364004 533933427 730838291 614557391 890221273 563429904 726474333 70338733 766907265 750095574 952742168 167560005 581586980 109552909 825552729 866755831 876710012 835238792 906346762 249770894 975967231 680587267 814993386 467559171 806416052 476873690 885490564 394909897 996208229 369727216 421030246 800162444 819678985 773767526 784332762 270015917 374536823 770097674 948346050 825622969 935112787 365756171 905939750 36946544 303945370 635496873 992256417 958235389 972018572 349479856 691501825 140440517 159202073 696682951 784883291 992074299 996363252 430814534 573400066 783835073 829287961 967033708 978799066 396095031 465602068 908891315 935887392 125953667 836638245 691764357 793147695 958685997 976647409 687502893 830718867 497641202 552961539 856977147 931497464 232461948 894700053 421350372 604234819 475512841 939216127 224050966 806848855 29136487 47850018 611827653 991502057 881239559 897973630 519583503 644560873 258132820 924423044 454946863 941869174 632594232 816126724 439960621 528685424 837763551 920734588 175660395 841034985 257087767 847441631 87110748 866327534 426449890 471155011 827653012 943815664 38836144 867317165 979976737 983677840 793762651 983146358 546143802 632492187 438507234 438528415 352187190 660969872 793925790 912663472 370945982 605207276 261609165 405516036 483265260 904630463 633714337 818959824 386818538 816333616 343937754 432440298 150896859 585902074 575339394 810339828 54175867 877298196 755612127 855721690 659359774 980863651 423917802 957133693 434762402 561160066 270219152 384300970 585588065 905557198 343003621 621487965 313804829 373194634 244272393 699946179 337133302 438599645 570388715 710090316 411579398 530532139 924109823 993135048 340613942 705728952 274630429 655658670 483206244 732201181 579359984 886737569 59706103 466230807 100404963 233666706 981116379 989461865 986537178 991287700 473932609 506728567 994734255 995038139 794567145 863613559 601540753 878658265 380281006 765433377 905057985 917060928 213248338 233913531 541925332 554379475 415807184 669653682 52308077 809599655 612909504 872923986 992874050 995726231 339178011 458437522 926954229 984348308 872202921 997152295 217806284 490829855 868347232 929901006 474683208 666093088 364982762 908406614 412080077 811246802 213226630 293932809 480907186 923277824 46669983 160906251 175484674 206657063 449748001 772697638 265457930 597599984 171127302 859768525 52193826 362829296 120846729 367132363 436188746 675320484 433868645 888434435 620317232 704366721 252389232 431409757 599858372 855883515 204436596 644144721 413953893 426542198 787731070 996165295 765580090 839077035 263695935 349967199 863823063 913793055 933705583 934888851 743383558 824795713 714998099 991884375 768802492 886419208 675979246 794568575 853331553 874613082 446710681 923380475 714373991 941595843 805887964 825734674 219836195 462536503 592487978 636095642 722324110 992738778 126718852 865722837 928442726 956069091 839484790 846800037 147763409 364015386 461501371 732148086 812106992 885524242 775412062 935309163 562863650 626212036 480317298 574119456 313210744 481451039 864128945 975108645 512033138 791385224 329013736 545767192 240051944 541206205 862749899 864802504 217096394 546176438 155018177 295937180 12808153 243135446 707132617 961739337 229305519 764954659 369210430 711931177 379671489 589187917 841452783 913485256 840735390 878788737 460198471 934161130 619469840 781387322 544158286 889991711 84723030 98027676 437178346 740333129 800323416 908976706 815061691 820303024 975312361 998765600 475281867 511885561 634960449 991314215 445692161 595031643 684000108 791982488 537111738 582874506 315555377 804447825 116955168 501840531 301349106 583715908 327185832 533159644 636978978 904532086 933217330 988911642 466431050 855580697 472310110 555747859 137592857 592038241 649746057 667502159 171894138 745227003 397887513 860827745 181945390 508879936 668508127 934531969 273016206 842664364 446904764 935837149 119745399 798572180 732239603 802118370 490520210 861754957 660324599 691719178 867131842 963689299 535340078 559066184 188223058 350207265 594757266 687983540 255005863 923122310 276642769 358548497 400402474 989592562 183651639 469857797 425273960 449739345 358732769 395939294 713485536 859680608 293620700 994917585 902492020 974836442 527410931 937114362 401169858 438675017 41387272 779667898 466077976 601114598 233953486 657079005 50197376 311616407 469162816 827710856 785000574 903559177 709732567 744955816 436509378 844838981 718311923 808294306 712214224 960295011 42389182 901426244 237400329 714760336 421850959 474283230 639278385 964817545 816300059 908940597 52632197 397954152 827834292 979006364 359898579 848719918 222186082 708199186 290012238 988422408 291370445 613796834 492596763 533252462 490172211 621957377 466607436 981001345 655652039 785312357 48707093 727373490 222155822 416214709 173167599 486173022 149923460 557691507 391927885 795232191 204869157 511898094 234420424 999787927 281545966 739846351 369278029 529008798 177190793 533415362 948838358 950487889 502059961 591784439 99484380 489280588 268964173 673567922 301311865 475104648 856172706 889574304 159352662 459900486 210136099 551875650 424302505 712597100 539224887 661656620 735426198 800622974 659016548 992335321 677176493 966362474 218515114 854464673 989392355 991428456 385245672 630968979 922246601 930838578 67641369 545053120 747074760 883669362 622713497 637493021 488237866 726198526 810721007 822568919 184488632 996955389 402193073 649494784 84910397 190270123 168577240 812841636 15605698 512406541 700760194 954460912 559142970 754786937 657836572 798712481 713614994 787439855 179429970 424682917 853707271 935093243 705973967 745931211 109053357 845846812 358548464 765408808 394003498 424203951 249902830 595805101 548375728 737468019 753651353 989514398 605308180 771666701 842725522 951991606 975312628 989207478 183530969 288753091 711392316 722224534 289659946 652932126 86164056 944454035 59771213 982307178 104553731 367641869 703587970 828965595 340958185 802275705 84636850 585852013 999655797 999676505 266400983 727164914 561810859 566086924 879276744 916914450 222176301 746051505 305747650 502915717 884745057 946595540 697706446 788503068 788477504 911984333 7703796 956892511 408303967 501458491 370083637 966639156 461327139 773744227 761023927 837649703 208281017 662549410 302277353 343002517 930695361 975247258 642212621 877563381 188434687 461837321 601972870 989105404 111001401 695653272 274064187 526645268 714153576 956297962 23124840 324429037 565712732 873959297 213793769 406263600 618351026 830822148 927619520 951163232 377189465 608519168 239740901 428433809 604863973 931424877 77661907 166511992 297241835 464234376 647786405 883597515 877504266 977301905 570398107 712360698 368991997 810949628 34769639 987207349 1602551 590363402 596952394 856390539 432829404 754641170 981833074 995549955 437489273 584475150 376011011 598077802 321305677 762677552 41102468 669676008 160387680 270978365 659107717 793990866 215010833 705218081 80695162 160451941 104639749 200363207 83011912 275533006 402640921 947242290 974543310 980431665 833877548 929423603 696727163 775626187 841804370 954506863 649713813 917624196 149475437 472162477 211358159 515472138 713442801 714961851 911657338 920445347 823138238 994120281 835169066 930392224 687828339 782733319 420903416 956956599 265682276 432845841 270004086 972198767 853107731 893224274 828272353 875393501 603536279 780961056 664840757 669349182 796430701 901449576 865997152 878874135 275985754 605028271 757411945 932925470 816200202 829672239 857030165 889549069 722021686 954950370 713662137 845315032 250822733 924907584 914325155 948484574 132348732 679132588 845269805 977753115 228587695 473042290 836889401 970740267 32591770 74471657 511702459 797403291 162322978 900751046 112302925 539827802 840660571 910847536 447278557 582124177 174210203 930644653 691145446 857115154 249452030 946073108 543353945 980181647 697416042 756522941 912204630 916193496 214735938 721477494 739643912 868483394 366022915 646997538 355287719 748253354 784747790 982096378 457352009 942165777 215384682 923820398 10249434 629611421 188688955 602794532 225254969 672340707 256692735 731282713 257542383 768835446 321290275 454555243 374943244 742562980 780900740 983963229 554494001 716406154 420767340 648074001 349661333 529113261 865103168 966456956 493769322 551756535 54462523 67040100 949588696 957728418 948065663 982151708 281283808 543350477 547218970 848241102 160800410 811912050 515616096 805712706 134976944 902403237 938448654 965123975 252844822 979280550 718638195 744538698 140980685 436439839 429607541 750275863 843046888 875789985 199132479 231549972 513886143 855939287 685710728 720689884 740571042 758038243 928772634 935531320 29278636 880888728 661681897 794936733 954056573 973311458 549895572 718982241 308423209 356494936 697005927 946458422 918607509 950543894 213365880 858893616 405021371 708535086 356902917 375386973 173065453 357365265 127015935 867340976 621060273 677260429 653545266 803294536 11135408 913680845 122086594 515708723 452337390 459275929 236806800 670493348 778990709 855518777 699700090 968052136 12202167 209759131 362615227 441241399 3073329 409721894 747414291 814616142 669670915 720744955 957851010 983402296 22050689 57549067 761539669 877988924 855639760 965019948 482301459 722498721 306541447 972330453 401758426 648126635 485412240 913601092 233540346 408996815 989669710 998817021 785698558 843762829 684994793 960752509 86394702 710113922 868160787 971488522 790445533 816879237 535002535 783941938 171798985 270343767 102895569 955306770 449464051 907702608 595163119 702918346 598626475 703263089 932816450 986253542 343036720 596077582 64571619 914384191 346439179 799883559 399310477 551080086 104323528 586605507 536198066 558111064 943444585 976359531 47434503 556572499 705245 571425413 246699477 914045568 857486685 970929240 103418320 142021827 770777207 974931823 581551990 917906074 787853623 826486397 515102874 976963787 926426673 944818742 491514337 972833909 175234151 282892865 442942927 687548380 686702961 922865270 625126254 959197528 563236138 832701417 620651503 769121602 663998003 704312880 369515788 864441239 729659403 970729240 138729445 928137930 250900508 938743966 452762915 885225913 137089642 529988170 844481581 951988965 692161999 966370894 716973790 745295374 276475787 879565079 661777491 674198039 202559809 689031643 844155731 856101737 893980925 976923374 244029426 951361440 732122646 914956308 459481457 566164250 351408778 742402146 43766538 811801993 307789921 958376111 599655020 728096581 887718328 923149333 41315223 422512275 913178068 939704974 515244766 659769268 880005806 981131652 270121562 535000703 221343501 309190726 399778789 724614248 725331685 826248083 498174095 783588621 689390890 777441195 609883429 765641422 761123633 776877679 866420635 980616383 90740634 122271086 493765401 959667845 195190751 241225010 243240849 319857842 10983426 566982016 303009615 580131836 857409448 949420936 313435548 319376544 691008294 889401823 688090543 842757167 38726179 250408971 658440723 843891896 974345160 974823631 467945044 473650013 105445240 925263471 559969277 696131290 281296316 372686910 997049078 999663264 239569539 786542617 711955523 988283739 930497135 996395449 354198328 479374849 256955693 318294315 389588704 942085381 591032161 807999746 911375997 945900262 227111926 705344528 198672226 897428847 417797384 532672054 444846932 843206768 278349868 728942459 630188154 748063727 460041196 786981248 8128200 562703235 835443056 835596261 324869632 459290818 198435883 462628460 167276542 587501615 533387358 628165893 114033324 380311127 28455953 260548587 742828084 803699252 839585656 933960438 806632539 953193059 946345191 963513488 346747428 970301881 821286459 863179731 595869274 690039910 936097143 945089194 164271714 338511082 844549748 877420077 59289316 100019030 399265092 837756850 912228366 913235444 916166591 981573378 496238001 995324549 213431501 917251729 858210951 974419289 46792852 286216551 702640630 947639498 19629076 677061557 715085835 954157237 679624574 832157294 209396890 530254951 992118219 998765816 737187715 835092324 180406395 246498050 653919146 876724925 120380433 841089718 271132266 424785322 160808820 251716038 368093228 578703292 546513009 620214212 204199264 982062609 99524319 520600625 561497493 827306699 643727214 973131766 192129107 582411555 18168851 488385959 577966890 682716765 831834300 983896719 129712452 788642226 799312303 884937859 812795972 867601670 164197094 735125793 860830591 900671389 494609678 739241538 973818036 986692011 602178041 962437591 648678114 660149953 504708319 971447715 674855932 940338745 639791314 656600792 358331247 706125671 450761025 603246641 526866279 759301153 330548317 723606703 960844253 975153545 248567159 831729016 977263913 997333716 17686101 257985159 701916941 790361059 655813987 665965346 396355736 504808531 35424776 152036760 719302186 757457334 635301115 935675081 75908273 906252003 80045366 103345827 623449962 864658098 797779742 869716949 496071865 944079549 667619237 893261697 29223373 117764495 374421936 707239236 319493865 675951460 225626471 684038374 38176065 414987298 53016761 630476217 624785596 626337082 628417535 686928230 975238588 993286468 765758374 802676465 624016911 714184034 336273416 716051879 735704060 908287673 310455787 586518486 687101541 932794242 440602437 989365652 787693228 967788171 140930968 987370632 666463636 791154330 334286792 543729443 428060954 579709525 242318805 582377452 326778574 831752271 64541064 407942119 714876654 990484563 610704685 687994222 23396417 861904180 284425937 906501870 139957362 144777006 156953682 900055964 418851747 551924837 887825219 930870027 87164255 922238719 480931109 817926422 776354133 791347950 85692001 505394413 855627991 945803986 54328123 120616848 347254160 797670659 831883330 970567203 839735354 841113693 624865396 719379021 844133325 961864221 439104141 469138558 582325081 843751450 520275152 811368985 816826264 885692836 896655355 901106516 101850154 367473046 939272078 968120712 650364278 662065143 547626613 557519857 769188935 954003103 295786594 709756138 330211194 381445779 128780044 368364751 531964056 832450687 990858910 991753918 824423101 922949325 163019632 532124243 668595432 876237815 572006810 916803581 618978754 702410611 141119687 356633757 535779259 688021126 357225064 468840088 254055955 483926679 670384247 746631764 490775761 606529713 883185302 906246159 611766537 894174770 434843627 832874597 573203184 727594735 137321903 547099806 167848976 980035757 107019359 398771235 732698870 818248403 406915385 866697219 879835402 944545261 341669438 602100318 723264605 798735067 103231215 118917240 832836037 991777807 171676431 445324855 549708490 710292482 692054144 891374166 153135729 935181635 388795638 539937163 197482589 425707171 231847568 599928468 316986169 452937849 253916444 367948321 947626300 952354065 186016380 837459010 457449755 491252240 500879456 555131999 571758534 850527877 526694039 961487296 83774886 436301846 2551798 629582769 15652710 719587213 531752033 702062690 571510147 718626956 657568015 663622304 232599214 700290504 458171123 992610218 532216213 961291210 357213338 738778413 560937232 885246693 670608521 823995782 387850513 665966795 723997667 991927299 537769347 838550928 672534737 773484215 436552051 681070523 769734234 785208460 176759679 638951996 36352327 796751295 258894449 406114648 44335550 727169570 182674599 767902231 741419346 753467592 498228922 962173345 143402902 146286543 470758718 937453709 162418260 553415774 456598508 592021527 428582968 498439707 92208237 426401156 524638471 731703956 829859136 950292552 227240251 583530130 878572385 896685043 456088314 582079879 191000590 218806539 595699471 931221027 100967853 294336360 93836010 436111910 175854482 729158240 18750426 77857390 867146084 958466757 650611431 914029495 870742636 889832273 126214605 154083162 417246986 504768889 783708195 820866595 784021764 903049512 285887766 970668251 633974757 869534286 280263824 854533515 29632192 519048896 827592201 900988637 989571576 990184565 133657616 808002088 695797863 773221903 320832440 676139486 822190700 958184090 622764754 709481230 510370122 801932559 929183953 961354150 810117568 891458910 443958269 808957815 538077647 843999632 886382456 890792266 504903947 643179530 536753991 860487275 380066938 715488144 499212002 752780301 633765536 993011564 243684959 787997771 276624451 302953304 425984950 723232475 781273098 837997407 461093833 642784903 64300422 894804488 283544969 391960020 857005731 876639137 400727591 943326313 285746899 917516853 883537196 977967104 807423396 931272626 293192866 592974883 331644484 658633572 174875880 998220067 515896836 553045589 736448447 821211065 210513290 986281641 933151964 966651626 552317849 644094944 200206480 311909294 92619540 410852070 197589030 907507269 302289587 797964190 875917206 980157955 216665110 990244329 664787381 750137588 806519384 817624240 867147571 937271173 363347021 460217200 815011534 873844203 283785755 695959337 254016339 303900065 45258276 526121900 202455098 806831112 517426356 659426717 188122775 916308470 635570619 778423772 243230605 728863761 108440968 778073194 295040595 513528032 342481875 402416129 336388331 602570640 560151980 910850246 205679128 854602542 3715650 346987377 226190619 446235438 105853001 756570069 104735941 160091883 634412105 912812571 976302011 985821532 907254297 912571503 984558402 991264717 539530581 664488474 157592429 521389970 900156695 976495320 581789060 688644282 358854926 664884295 878473346 901528091 393437583 429416413 52734815 678504534 96949325 654590858 494316414 853165218 614431865 761353920 39825993 173588794 158043493 856953736 566701243 655202496 987017476 994060528 301450539 602548553 914203619 969412038 137668318 262848499 339418998 491468285 923684684 986164042 526393162 611230222 179495822 769579600 22101651 192534486 863870766 891140262 504232005 676282455 793097702 795401648 305308042 464728761 684547377 735086023 846225021 941272032 224784147 682941892 149555988 879799917 468090164 882922413 865980099 871903529 295087617 459965754 620867590 854434998 21450847 692936848 427739016 806461890 603051668 916052959 944519434 960930437 271766837 442453235 358375030 560850328 63683894 161376041 361884454 576589426 668097168 865632145 599457916 738104180 736344634 930216592 239538752 336402150 997227987 998184835 576070702 651668451 544998729 655079182 995489884 998189090 687444679 936572731 778851620 987425339 294349038 495585306 654838883 677023391 392434519 710745088 766428046 838759134 647086976 814215820 579404505 825359365 529866233 779315099 718350150 835127358 781674133 815397230 682570732 705572918 50085445 749934451 619441164 794296868 338763843 754401419 746710637 753068894 941554634 971824302 630408328 778054862 777564774 807369203 39480109 357173124 538296192 760157119 224622305 884072404 272470626 696836934 548418076 908460569 428028542 563976791 711486711 979860534 321439176 433897720 473671477 716614468 267608889 308333279 911332437 952663542 291971935 461114047 370216517 945667953 784256293 992050329 450333517 643558755 463024890 547775133 715953131 731962282 631081501 733219737 354902167 982020470 715825097 961563513 921953844 950114930 747375546 824933832 357132377 439224530 404486133 465939134 686509455 715842235 414826089 584258135 23699086 873350639 7452328 754783956 430127146 894736982 560884605 818011047 843903029 901558372 776552201 875419156 557863999 862288987 540344295 997682594 501258665 682102759 909399084 931228779 303764645 779739928 940146016 942445730 159403487 355995426 460462486 925958692 887374179 960747678 899134641 974587442 287099357 566836189 151932661 419218230 855710287 927261344 42669307 221470955 4412009 739147923 673976676 909455129 161802239 993017194 159786430 421239414 478405900 722033542 973355333 994009637 759502893 784645735 551828880 759795003 446399261 531747448 578654408 737197786 293737502 561738140 341652650 711178735 252455423 772150321 185290306 731539278 341539652 581687753 620078527 869138832 63815245 479965967 144898582 615984444 144571441 609818314 751563645 772198170 924247961 988541586 266867906 575021198 659191709 816125942 795235826 910176471 869699263 945236383 375389126 722710664 522688624 556956184 114587641 193077163 469171297 987736960 439601090 993934708 196026426 283585746 889203061 889726883 37667218 288642640 78233466 867067132 632331571 756776399 942376549 950210324 141491606 831045724 753592052 808015441 197154721 848164990 464213147 571414319 546898946 935497387 781715521 918980015 785103190 975087819 783405719 949554074 929515063 961706865 299315720 933701097 925453149 934771327 73674128 370649510 733025446 906477566 484528901 510455437 358736584 841041481 658315791 777342736 652920462 884660616 532760510 605564318 2072667 288637437 200870433 999482177 993460165 997156906 592947712 749223305 806055292 863396888 167139132 585517364 603312382 720350626 638504425 664234330 426374263 560750929 453287881 866998270 366835401 733116168 15419854 320368850 903031958 913377216 762386842 837773934 945425698 992061127 921716827 924949494 808047834 909219822 725252707 968965769 37444729 614854319 658109142 955750265 843755988 981606908 386175119 723335708 138357252 640454689 74599188 633032008 901644322 912559673 858003385 970807851 286853018 522968041 41813127 729453478 291287797 644981252 648819543 664308566 479274813 873339789 510749227 708504723 757498897 843295868 470769228 623644759 858539033 876512643 899568872 981386585 749250 307864411 231922256 952161106 208893013 476776511 825481285 994141110 598673653 900514095 545129865 794769758 414510971 478548860 814488450 965513793 298669174 339773560 64380158 470358366 747665974 898297630 422667087 998622587 99367072 702907272 183730804 996218390 385221024 979032642 972154789 996085265 190177770 684663022 273669184 796698455 594637931 963598641 602606111 786132442 395782386 620125066 711672916 899571566 811878716 920936593 562173279 644042837 401742315 636265415 564354353 973845762 557998362 985718996 10231730 212046241 310424407 693904753 562438272 872752426 372746600 392124454 431009333 457444812 420287898 603453638 69575166 929848140 152737770 206906526 229014341 913304936 328049308 460885719 962258863 996061028 239612169 798490115 304722537 335493983 761613933 929934022 885051683 943402525 685266547 741760833 359397185 749822362 951026258 951961146 175509508 864129108 589851677 606751134 401628041 612277216 138948185 380849742 327311998 484689734 484445999 862587577 790049534 892248670 830123024 877040839 274435231 774892246 396697926 469634017 959830699 976558303 145279484 618200932 755415877 993805945 714457939 856620795 508971791 820242084 963481439 972065590 261997707 271241290 979196174 998110813 388297901 829201573 250873321 949057361 980286666 995149816 843578647 854781444 258489471 995427888 820968412 864084172 679253520 892339555 327266449 390813550 649085161 909472772 139558047 860908718 1035184 182671486 891581272 898550980 517553052 774637656 590959155 786535997 535638845 839436585 39762132 861199362 786776811 983854518 118990365 499864922 280452912 772050533 234768966 977902159 731500657 946666153 153670078 390902538 435627201 591258616 846869549 957733129 253795629 937706899 458048027 804029031 133323871 249427333 799926135 810189548 685653734 923714773 497075049 809889768 665405380 731795248 346302533 407257123 210579202 387471588 188018991 979498393 253504560 606514197 645522370 833171880 277853371 480125301 613341289 873574310 350456766 728952419 308650729 689722816 225226277 806336043 44590161 163626067 293632784 432531349 269694740 273450909 183641737 305385212 226131153 297611663 670434481 727398629 718248634 997015000 133307172 687609653 500178140 859235746 142280925 322697215 432203407 765346897 94181436 372914174 379576503 411332501 325944518 378315111 437190979 804184510 55219996 150889576 554086721 916274350 28219306 69126799 405328539 999771951 753210068 927520696 789943600 965053838 176980704 790126448 910957199 988308162 726077149 820575040 905922226 925011846 583833746 885603310 546055348 880751081 577122860 877290008 649091447 783122332 739132625 811954495 579485589 739383015 927213551 985282971 213028740 533874664 499716939 793148545 518124497 972006656 445118323 850415889 677338669 699353304 268837733 908809772 776610952 909139489 620303200 944380711 383032061 463162192 660389132 685816042 779614333 851376433 520001874 613093429 916437362 928289807 724159441 853385189 32297435 835932345 929034067 947740636 896827582 987889839 120203709 746179189 843938709 965428027 549415720 931238899 213079850 395636607 193956487 208894205 262828475 829612050 276099751 328984460 699228563 781853719 247748379 861377282 932204120 952508014 40271681 470599493 14822599 141388669 862136928 897703060 383190161 744896806 445321166 930199818 465187351 989000393 712472888 721936371 776502982 928232948 604013053 993153650 264543446 582355439 53558424 367467549 655241332 988305863 638583252 692424261 956767709 971606262 677896943 985692717 61920823 154564812 616404781 910409169 211054570 840331645 547408483 878498816 541386512 919057568 706232940 938391953 858686955 961586749 158123901 326380340 46580167 78758937 180209702 374407706 575368811 689095820 424094981 509864129 284889830 948167772 79647436 697079292 217823048 302523344 352664433 590639801 933119548 940056391 159944231 804000353 237440279 772841428 110276297 430086327 282985839 653650807 558347355 699785643 4956049 170853815 962766037 987855816 776475173 786819334 937224005 984711534 661028985 743566241 662369808 670344428 344148245 369672889 607552370 962355583 423572426 779334351 875802667 905196424 611035459 752813492 482995319 703941212 815571547 931456379 707921050 847378686 321656696 486904249 471154726 987660795 646096553 723101853 684741020 928956280 669873684 965642121 248124631 317942910 941192992 948083278 355240299 882209353 598440203 695168813 217529865 804212688 831290257 849016469 315998969 984769447 410273256 873705087 607928673 728151451 345914245 976209690 577131420 655696729 667623302 691606285 952143817 955815285 931852620 963212224 460185878 976638907 841376788 920856996 770164023 860460538 366312673 934825585 366240745 528778364 738026096 972442185 704152722 970435196 501780135 878138294 129279974 611431893 697118869 870693124 639819382 661449391 391977460 654156368 800527834 990228709 315896103 430636852 83849779 557965413 138156028 786976498 312316706 679173990 841314859 976018491 328117023 599191279 329795751 986575630 805042148 911478468 979865539 985342796 795516740 982940456 168367202 913143869 369335225 596127494 884164065 901695437 905907078 938283218 482714943 563190834 187239042 368686644 759410936 948620076 208525113 543949980 324826263 710443016 286500586 533038049 301042808 488971359 219926350 480266300 878420988 890924998 73754536 919166976 335792661 904802361 5959430 519555741 148174645 373952430 85370933 662782808 718113126 833462764 564461827 687717444 304010873 587244579 299835677 423913352 936443582 999217498 379888845 846424670 928837523 979881667 669979331 964207845 223390738 689886037 65563639 66753979 471897757 898378589 297764171 935578353 104849680 827042790 758779471 765105935 903042301 936271114 274090069 863690886 614514863 634474905 121189531 472515354 244013565 612212214 671962387 677455909 656598152 934412387 614195379 915750229 909400066 965399958 895029394 896289669 366763835 468983644 637809947 949820555 857082137 874230496 7187898 579735090 147881937 683661014 297327646 742703029 971762841 988871789 718455607 896067272 517251323 608203860 483663623 657165611 28615620 790000582 611462513 966512593 121133375 999328887 120372478 340193061 681212436 765868308 547585170 924587268 659871458 784581216 516580505 674392865 235900687 815870044 50199645 469176688 793910874 925327303 647061285 776906592 93532006 230254933 947869473 995666048 394922431 489969335 844620423 877376017 961545962 965744174 180499898 763058577 581948769 643885277 958730549 994592108 385240256 928514215 496534680 967273967 116433743 379476846 374157483 984950496 350341372 750552519 471413378 921162403 783777132 977136018 814378159 913029798 715977145 990470521 185299341 924617569 110432205 358848015 617298415 942519419 58468352 529699593 417573255 713582259 877998487 936719481 495269419 983163963 435615354 632866404 681764113 966171174 129295134 591614363 715123060 990947946 392781972 907819355 514929070 861818049 209374663 835304547 489054665 933549631 468572454 542488840 257905148 308597741 767191520 831621877 223035078 276941722 434028490 534868319 690314786 716172903 643196874 920335152 307102708 689382817 18601127 999984310 418418755 941155172 888434260 941491765 150871885 920984292 615566817 906815920 339401566 578692143 621543188 783165372 554900596 821652423 144176541 261415442 570070581 681328192 877261276 982600047 480401607 654556913 364194680 482903260 47940084 102654995 607901846 873022978 666395007 846887970 97282582 376335685 590281628 727764117 251952582 478707083 333829129 997429750 442002876 572208441 93315959 754480794 496455797 778297242 30499354 507038809 305782218 620806000 713442692 794227667 828525878 936971196 848041417 935314112 380525494 570504404 589572309 595198536 327157260 827420995 175733711 176233592 606265662 980256114 736543261 925275888 125205186 899502868 205391496 493143483 880110595 898297671 394535510 820234610 691611087 754582103 641868870 933543725 490282890 695008434 299223520 680606200 784960614 851241271 643221350 999346029 773896190 810436337 509468594 656795007 495691222 960350189 796784679 818110595 850431984 990524962 382332841 912243231 883766129 968361890 194527970 881558539 615700145 957623888 217891839 707366921 791785603 901017641 70757524 934847847 112941682 283952434 103529441 305684084 493685237 600139890 685100593 746983914 742863420 943126418 336679632 925885700 717166990 890350716 102515899 264230211 9839478 821185760 909509021 938439305 752567528 807877857 56953743 875918776 775355222 876388382 78964465 785967277 585822016 613043125 130711823 627352936 253105600 284237345 61657823 669474615 45725900 987699755 16461136 162891537 207564200 421286912 85415151 533195790 640710789 728179063 559971113 830423081 654780491 674579326 873590443 916248547 455289291 915200867 995940278 996141661 382524275 657345319 704215631 728471246 465041923 973398021 743417067 761336887 228617664 266340637 450423651 926035231 88244352 968380082 133534742 656630437 597030580 683022994 873947188 884561959 645760825 734110947 948289964 969092042 813462485 872078762 965231484 998702510 998179917 998762877 876405927 904096950 413250124 446469105 649601506 882402677 769820876 893525902 428569138 475980353 772514238 824018529 579848952 801501061 463608997 924879671 110679751 707572411 67401499 188935118 707837474 758848916 117645941 283220703 14783500 545022496 460673446 872952377 131297675 343155724 150041328 566144443 223247774 844131612 597018617 817122049 322046862 748079754 273216802 602412271 746762250 898102408 310480375 990849520 462579192 505833306 310216755 484401760 773841295 975283989 678520793 729426523 483194927 995144857 935336200 942914810 897965745 937962976 524869624 670030768 166733858 185559044 230881631 421262470 102795214 967105315 82830212 126329729 241938627 361810694 265577213 397555324 390027945 393526777 53556137 988610628 3567671 60912731 877011332 878743463 665916003 727347115 269409671 789611936 785096213 791345684 92657012 911337637 551417801 694149576 348407240 748587797 227338481 826292049 654552661 862054279 37013725 631192266 194510562 431788647 118578916 990361920 649221897 740511989 288464301 358555792 996759583 999880534 803474516 922380562 686075146 911356331 394841292 908999319 12779946 178776451 627007512 716337995 237011473 299332288 81682990 499215105 851075060 864574702 755938791 841141887 315389409 975779992 66272042 841747831 438396325 807584099 212618312 609345899 644437448 931813428 271038269 973852234 420245602 601876043 36350261 266378623 801281061 968316951 571590475 894544471 412876494 947716256 688092673 772339788 847868765 931841035 403028933 668376955 333671537 747219926 254988163 815319575 92640389 597193517 348169408 987737135 180886694 652077664 547707946 778854759 826165327 937982154 198077367 733375786 867567235 878526061 981817828 990963553 634179233 976552734 715782796 914485750 143660036 763108839 898841726 996420299 351161681 579039319 884624293 983487136 10392738 994914143 469651049 913296275 399044526 589755272 294817086 744608087 10442577 305990635 826481236 867726052 135882928 492212173 264928164 285838982 985989198 999595680 386923330 698112491 360176777 645557100 252919323 983485478 719699602 871725884 69709577 717402148 361922235 661079449 363970998 546807453 112742960 197892448 485039226 936932445 653168870 827466002 70438184 187194595 988183482 991303228 489776967 779285201 363350580 873472092 194909453 876784016 361337013 611963562 550641264 982679620 499339865 717503589 465469083 852615142 662965723 837166709 45420462 525223069 818778096 878900471 126118149 702118055 465403944 950805879 289222962 289682382 771146469 979113158 240069433 445030559 189270472 808474582 395668859 798023871 671584404 729930169 272969744 722435270 911652369 922382128 396574502 566833115 360771022 684630371 350809740 962316333 289432003 331237256 761597192 854995951 725910603 825459558 60729740 507011745 65333025 728560676 927355718 936471990 517926815 874335821 800844884 967687728 454246451 709192682 37182743 234177721 195398531 215724878 511908041 758244343 982583709 996326941 737919927 802209663 766770751 822746243 837118280 977473670 980764581 984033167 543087244 858173656 894238539 977353243 876653709 928138217 835240948 942087128 189414286 213649685 494883407 860021693 887352691 915799862 424771055 831283148 555493757 776631847 895575512 925236074 889657922 891150109 451107292 454425435 369259370 952556516 48966813 784203979 8099303 942643562 130588527 935459972 933313636 953057164 515310535 734415710 195709433 715425040 394239163 840512146 641799870 766090698 431168381 716654324 89902010 654163291 195780006 606241802 348614790 414183215 967589128 989155436 778755351 870465481 493569894 519676110 663004198 820746678 804378780 996895007 182015385 644365389 700844471 928692936 929248505 993794905 316392224 462522101 44876810 870420621 390053446 749425880 347186228 816588247 43270841 190081327 272002133 451857515 954104077 966633126 903401059 906540570 942817153 998770210 478288211 687302687 986400686 987434002 822269552 843213472 623867902 633406888 358811163 593216291 533180882 926918697 224277271 517287987 626296367 847024314 339556685 983371741 38397490 746811813 235857731 613472928 71002650 973014914 391796018 703852820 63633690 386857248 396223632 697664401 341297147 452786931 489489172 988303524 515180736 643349142 255655192 532608666 455124368 716676433 837739406 945970582 949264053 969362614 122321257 960931800 66260660 971667600 39217128 535720952 331689015 793633268 324230664 714866145 74752283 214835597 602907206 850661639 404107029 856780966 734368874 984643831 178133112 981556702 822745355 863609173 807185738 878522891 289163386 610987372 597076158 836182338 370942996 627425330 442906687 699851931 248422575 727986449 24719609 397064938 31306017 45959742 691305277 766833931 778721134 895112395 445935595 878690124 622040961 804346541 777304386 950854102 223063291 876124318 607142284 730388007 47711445 970920724 962282632 970617504 446460179 795734833 962042905 967900987 887076454 980328069 589614417 626412435 441367726 931154696 563447468 963640018 867399535 909840235 986047217 990264782 715489316 773488806 693237666 852396670 972051804 974580875 36548922 242594759 844199432 870654444 877841460 989131089 715959293 964795724 848208643 879681954 754016112 946067823 977736884 999956754 707130880 999666913 759812082 982278312 167903794 579584331 435565275 987796542 656813027 826325082 276559493 643277452 260248036 963871231 441522216 656494998 861455407 949741168 494151093 579316007 605408300 659584472 249686744 334464192 102791895 988070146 442651291 443644980 177046300 264755689 741166709 892718518 387770060 498427682 681022883 854722350 631351532 948639606 703515034 938204994 675609729 691659137 889686436 983792473 505520121 732636936 787013590 912615892 874537724 935509954 380277839 907405563 384772175 492335258 341048718 830762208 158105965 574852372 944434497 964343489 891572766 996092729 792792268 889857615 721762561 733431894 728908510 739182301 811695262 896731337 56062099 528331049 807368136 950714679 29558838 365408272 376848205 454810095 317637488 924600032 831876381 851598384 93396800 822627273 548581881 740943805 259206997 686312774 372810332 962182779 169524482 657157955 83939546 283563266 593168741 785962582 170481532 626996910 414778402 881784506 89192413 123350898 129146236 204734557 307277710 713307452 384274057 900538324 672543593 931571843 84461705 693273760 465641001 880593706 21469405 777103990 675140003 759040364 824929344 909615528 504303765 890664498 892696124 913872168 586763501 845645326 546507097 967484383 466215046 617248334 348052459 580480916 897387884 986512876 747865049 961184657 593191985 627335525 895090983 932356248 921960801 989086220 698510667 765228688 583598824 968585450 231510509 679653072 865626179 903256787 650638147 725684740 285281071 285881975 32027840 825365239 516391047 993839258 22113647 246800827 66557056 513419782 12273149 366995672 185433013 259009900 84436928 692576358 741688432 823328400 913358956 977039852 703037309 836303703 972254884 982569598 386332058 420105611 352045286 948474737 203273140 719567299 769075195 785423854 291866771 832715444 263779059 993515867 538921263 953480588 475124517 903095683 364121141 740039956 635860753 932151896 216929837 955916500 635591193 920182723 642253414 937723519 431561857 451085845 505993547 736596556 367638728 987369757 372347737 387355346 13353010 333287056 20880190 969222363 638599129 940251282 393955035 787474680 330786520 350055612 830119115 937523077 959770071 997741452 611486520 729668605 764377143 823438643 685352172 993119558 955490784 979709860 47457340 966226373 696976553 756659384 177869168 986718348 212872906 408047458 494079351 877800607 22739318 702871500 39970315 438215041 270765531 970632543 172188252 607664842 68395914 358640774 46901389 961119116 245919042 368697130 238913374 563845873 2841010 906547242 46354149 705871027 854938889 887818382 201144317 714404584 870411680 879149162 942596989 950487840 332980742 690627060 253060244 876584133 941537540 990269345 416978530 823607957 529178167 611127549 384685625 732328174 82283861 671845069 355717940 372430087 45267416 451599508 529254679 994254380 170758680 916743454 622678445 903644682 774134102 817866906 343088907 360631002 890518872 979785610 847334368 926244693 315517380 342757591 234037678 291390356 744277778 861410822 990818530 999619760 992950317 996458657 150375747 176466299 528929278 560230719 401501773 793620878 616795696 929351370 653024035 923149725 814783140 933556704 635463189 818553018 807797230 823630287 3648463 247783222 735406274 914013278 404274904 513427469 939437697 952903676 128390930 650873787 546503723 794504289 502683405 747915673 531501620 829049539 633252453 673852480 365136549 444098712 428162229 508549033 402188129 510267672 672730510 915468410 166110680 823543553 156202693 918168953 518182685 530128560 233489642 793439985 125751829 364829413 157110712 519991852 113397277 971901202 810645468 832487924 220482341 470630756 457537270 570674819 101425677 491015265 90373360 328311515 571315833 879482179 902837231 921519608 824663075 984330977 836619250 883775627 94191134 213345169 953088810 955258442 112267308 177244138 545485477 767075027 647891038 989581512 388473703 922237110 273583916 932652342 184721410 209616081 450639977 810371848 463346696 915215638 179616281 654133174 853331354 936561172 64927535 715903962 345252645 794115368 950473051 990967382 297001264 938817289 719145175 764047469 738590798 867415085 75984152 211191233 266348136 484525530 396451413 616085958 105357681 445917086 813935104 863812730 169336894 646144238 263313610 384724181 53304608 185254416 631226961 911096973 400534524 988870731 56685271 546690072 695006351 850305249 85183044 106873464 615184547 898559954 413613924 796198264 551973982 680776630 430899828 494770307 829964099 892819152 453588479 681050373 397393798 400444978 755223001 758514644 512257753 850966446 716013045 970032233 713436179 725615387 253190394 405262518 322439326 949454154 369641983 427470140 995845834 998131822 596937927 630048684 297395615 343693752 842209498 905375480 547969456 689885646 310646791 860939500 319302495 520868134 479235042 749499698 515328878 519954989 375323135 597639229 978732771 996081113 91329862 384282819 424335364 590564383 467509725 942460915 698838067 949481033 918808517 930534179 362706261 816650814 70088868 361259427 211213584 297542378 290495178 869186051 672368167 752189439 488007369 775656799 387869701 645636167 850957483 971803057 196625026 474166889 357404910 373227153 679426343 798787697 729991653 853714866 219481800 595903368 844262045 970583995 828503397 933647966 959737603 991407620 436023076 699719202 299021600 653838321 823702112 963843033 759079810 993378153 797109113 984474945 345181611 380059751 393655 666764638 424441170 450007808 678621678 884144942 376733866 383892530 801179913 848172149 717630427 918169270 596066708 797348334 540729718 972829426 820201972 896263516 326922479 659981236 999916938 999919465 908379398 952174268 904706215 930166756 631602295 900653785 529614261 795426573 859704777 906801732 614739170 883080384 36898984 726191221 563880817 686318909 295657200 997965033 513004372 648373288 515173200 792312198 429100588 735722420 215763051 744624616 7958963 378741055 663940826 980928212 636054565 761174292 461977354 936445895 388834378 802602798 942776398 976539863 831453859 963561080 201761825 219896914 757027606 979082430 84414111 429042033 30477117 205982510 127827190 507555998 86036095 100817111 899576526 942987587 602155444 704509947 474466227 753334662 871478137 980282901 547171132 701890597 781863434 953220771 16532631 339138524 387020804 477547501 104943054 204238368 28530859 754426501 360230369 560561054 607221909 959153972 101722764 157611735 668990613 964380769 998379786 999888578 567544402 928270717 898154963 961059107 500048236 760728962 521401253 614872196 250093488 338909145 991288766 996844858 536214945 565643651 651225648 732103948 773229811 859804235 392668650 957591327 708039864 839461218 497769882 644902907 622796842 701630863 849084615 909179200 981256338 986262197 195385008 657814691 727718090 881920097 805961541 842149378 409955651 865677127 23863408 489416474 664441707 960192259 385139488 984930231 592046033 965672631 501272638 802627361 166407256 775121876 399195993 730359211 274249036 447787926 314158010 499018482 861889811 885923676 825136923 825640805 968248230 970758127 222601661 939864938 346874028 632606899 661182347 856141757 668591367 999264931 668553282 805377326 713009132 777242928 178181006 406690552 78160659 103273083 5270688 687216949 347298442 706393477 432315304 696182693 368441086 727055635 219925495 268008370 117758075 306995568 94004492 515287497 956045093 966148990 496070962 998086568 64376356 481471468 939349569 998948198 997360905 999954280 237670946 857935339 573584731 851101944 269128433 631681134 821342888 935695541 890578531 975871687 30566824 733166444 884190666 940956647 812988853 995206208 805828909 850593769 600791817 780789603 822172182 892926748 908558166 932408269 762886926 801234455 251799945 628399803 123026960 389780013 549963169 814794307 738611921 892336884 567200667 967062662 45351389 290626108 597341605 935109739 619902772 679218843 838927627 978545260 969500504 995508841 667540727 704028381 967295062 982852023 883216553 965177391 991503935 999622126 855488321 939210304 106496480 738643122 406566984 875074262 922626602 975842711 21564699 292582048 987972265 994253575 308310395 734538759 12299255 300127248 263166705 541983218 508160517 985837462 653475509 795941274 787243339 991112360 513786696 958678336 266312817 926604646 931073503 945349461 612052298 677965705 274121258 508907013 390941436 575444172 360609394 905967137 219041006 724765740 35806846 704578432 980707585 993352069 548634259 815977915 181716443 301553722 410128644 982499693 637336762 672221752 816966418 839104796 706061410 716005258 867394080 869175910 475907964 664537433 706581331 991140181 671873020 952895572 669597203 731301072 38887934 260788253 126666648 550659776 589369311 771386182 556768647 636687855 157329449 659947518 176100756 784743317 278912114 517420609 940122493 984189485 698987879 721753213 168710472 394432728 635045467 758212609 103472041 108228225 766866417 808001836 249729080 633843958 958243071 964591980 822981855 866011577 667641571 985893912 41118211 706145421 592715654 976316041 812737859 974173032 6838462 939470534 182803617 599781492 829864007 943181883 412684003 896639163 897594001 952786057 185470593 521184266 582000859 952925027 13316008 550989426 694726109 831799403 58312647 336596844 401409161 885379267 184983409 418089530 906869825 950045248 817491582 939585820 974740177 989330465 345795325 809071672 853971583 949416586 522181635 537112216 839829674 987954789 120629283 738998430 872688245 954039252 251295682 352181188 399656987 579980109 339703838 566399657 246891459 775817465 140381568 751511450 696715501 811513312 347392136 882321205 654667813 796333751 346272492 427214692 475959120 631558109 171627133 834704451 993788601 999503565 14826802 657679631 155385385 893936977 432286850 790327154 634139564 925535546 356149296 900655084 884990455 942562939 696477070 917604328 357076669 928277372 915540262 930735123 820935989 873793075 715015628 888374254 916246614 924687806 651026313 882314457 604351739 700544875 461036767 569083474 903836898 997804750 477018741 859013520 876747933 953439231 197600222 658745676 34754852 864360665 9021199 692948822 640727031 855082574 470173607 918964104 243445957 302772331 567166916 688866718 661397430 820754803 284765682 746115274 896894292 969451890 50793096 202601412 452915746 858861481 668069372 897380911 181145256 549026818 192701798 454740955 260904841 973275306 773406181 833037666 127151092 473372416 614895018 674554542 97149350 857018224 238146060 561065524 510167633 994279178 63717798 637156688 753116014 991284362 106035830 972579452 48710265 342091776 770602262 791414234 605759606 809688456 180972604 396404535 274442180 583031993 620216568 945941229 172769624 642211024 330566323 974955328 325468174 635496261 105639032 224310194 991620507 999938299 794033506 875334773 526636789 749158609 56333549 739858750 54054649 796306564 410471585 964234133 740585967 973732426 295266342 739407841 85995804 592738587 856001247 994841488 823581301 851153978 151337163 443771558 617140215 973518534 977147712 987375689 619540812 982908978 195604971 965452693 898547390 919950930 27470752 455452457 552961754 926897651 718281395 844779630 792528479 875600129 313305521 768734588 114519301 723323957 10941856 850875656 410289420 605287282 587099660 608724535 966968840 968855804 932046963 950143859 52089504 675660043 296298758 455074563 269063617 560846144 522590056 578156614 755225872 777538548 621683916 812868438 161979525 726634420 186108683 552038551 297379026 655630187 842829917 880382129 406294797 976113982 166979000 220989329 525574180 697409745 53397146 407613397 556815622 884240440 806792361 899894353 599833719 993288438 51790355 274133192 447840580 499785476 636656963 687861250 367830045 829831702 483077126 649237991 442302381 926447994 976983191 997673707 392225042 396309737 210497070 448008131 816399331 943061325 39438312 695859415 167964566 881695964 211475011 516014346 657343989 761539609 925575233 999179255 646932026 995430897 240257783 309852797 539489128 698492740 861813621 895116610 351256183 950533647 271854239 319108102 663089174 988941493 203167489 523801044 909316408 937231934 85044008 894549200 651382991 809232049 275258667 390822140 873435827 962110559 54869379 603776207 380575635 496757733 30849137 644470516 997610943 999296589 774695771 919541579 273163146 967170286 762302145 911069330 418887792 459474724 584841485 602657820 332010926 977928201 628048306 683982193 313883680 582232056 196113123 706929733 120202987 612221977 171069683 495233716 264590660 888993688 871468955 918800789 913940633 956356563 265888729 424878128 493204367 515606626 209684443 375473789 709653651 980257670 163135398 880970897 253016406 456075837 206696638 425536035 297971872 454812072 176748137 893024897 500634893 819509571 292861537 370150152 909053070 940685422 650494375 792569156 134190473 223128733 841725415 912378955 434230556 728706424 550930438 886311134 426550303 628586770 273221501 376388510 322580641 603597863 534467660 718564234 624950896 922141494 267794371 586614874 967884686 973798321 193982924 388881397 451799138 876086175 839017403 970873061 705804841 725155010 707703690 939069152 715205205 895872276 76401989 231926594 157631221 890042103 393431734 921855413 651205266 681190846 923471504 932929888 368206064 451874982 526844655 822675422 725083994 871988874 962468104 972870823 726887758 792848553 779397747 990996765 899374376 957154427 325058441 658500890 430431908 544679584 367986316 894209937 359482026 371189485 450504586 796514205 893311328 913795421 653405019 779755003 138820176 248870020 231419764 606432541 463872523 823482206 122269013 869062737 768650246 892358254 469900788 528047947 625185832 934801440 239044244 720676621 738303497 745779544 122479435 823420234 27644022 171640792 302475024 828730372 641742401 761428466 210564475 979990165 50202995 483643480 801310380 999426888 582930053 688327043 848508743 952507042 975915156 981999465 706436031 989423067 207602267 306663758 708471015 902774335 595031798 858158115 977559498 978742284 477914411 634042611 469935637 752744997 926621671 974479155 151220860 891894432 677505027 880356891 940197452 955897824 78966615 285384665 268614199 309171763 66173240 793133925 478933085 745347070 287894189 455804678 185724956 834972822 568065354 954335348 923643826 972693051 613586388 935707433 560785647 616374489 121952891 949435392 566358334 808544953 845861856 930483292 496555650 869863758 63708956 872541229 211583243 654710771 248078446 260622704 238185008 653646338 389264914 891521998 753234385 835175684 526909091 892640826 988411628 991641793 605773989 980691697 464002620 891435155 738041401 749687206 908217007 969133492 412169076 716564439 396305235 494617507 602918781 614325888 544872123 768080857 570071830 995657932 303445977 351394881 582053967 909758935 267410848 403584626 649339649 800852861 291078963 353945038 543876473 726072006 916851943 924537864 479719622 578086184 251699428 594319523 791954002 918982992 478813248 705420805 217252693 489220863 597232950 848069423 238604929 595566231 610512745 925101425 241580294 526438407 855868002 869348342 914651247 916357683 426586952 716620975 743599157 975442379 340991053 359762894 550384910 692275981 524813386 619445955 182928813 332159655 718102966 866031717 793076939 849610104 691294054 838023782 619245313 968919236 34400157 315787192 958514427 985676994 413667042 932863263 915199438 955691871 339144549 506770617 563924406 937415081 382464185 727447611 750675635 888820558 742821257 865886042 55629135 197869450 563495726 919539642 398123546 884553426 266118213 620500448 4240543 851293134 358492347 789565260 656170289 847249891 596933963 912709630 153097990 668476015 278724437 376030921 323035112 617208701 569887619 745706265 670582302 713683777 989378893 995802449 392442398 813410367 6718000 791552592 501398821 853432254 532456943 879279544 585703130 798764783 113764408 905530010 991245300 992856028 517257880 851946285 535895798 898828566 553695287 793923175 247681160 875731548 986203438 996272239 678797809 826419977 820690841 849460249 527524770 545997449 207135046 910871347 59950375 578602184 177849729 209778272 260066478 942375545 286821968 523490901 39495230 435050551 363587102 762046673 41739447 777836741 945500362 964991308 236230866 934179360 182297070 495553394 983087921 984753334 929852302 930136715 643945817 799238961 728024372 915236920 415031666 959629235 848980964 872501387 338915765 851554460 730455154 841766939 802672892 966763850 986623103 991228636 470134693 645368228 337465872 995649812 702766484 792884020 161587318 210126442 844936439 973049011 574056254 596402192 312766538 335187791 586225933 679875846 194967320 550416426 637188650 758899523 506533979 618105801 905969327 941143134 925066257 961238167 537935458 938830221 503611681 894254873 253005116 657619824 712332350 737294338 304745227 351705968 99559738 430807154 686180097 793835086 767765672 867186930 791191142 979032068 632431563 643245200 147633316 844808890 570452404 645946486 905190035 958719410 102744094 942141619 690405347 855325686 579380961 720002415 705302011 921893656 742723101 771037748 492357813 744479570 620886478 903010330 389719997 888866115 908429967 940385975 411227510 496019800 321509137 783787560 206546470 378345125 564336412 573738303 714948276 720096705 350641853 625703225 620805109 660055139 683753737 753984314 735289157 963647183 743728700 851251479 774271185 955816656 496901596 704903872 84126530 446059828 761438210 885285961 574448112 807934112 443799399 470294260 976422116 978407899 29621000 390982778 898596531 929954688 487353059 812201275 609118340 708672265 173892564 860334038 800671060 912943116 392181235 459101696 33138425 878922925 616758467 797923557 245585343 488117324 520375716 578769678 237499367 412294509 262497989 732908105 467719572 969968005 204518641 294823947 513575979 712153947 144397219 351173738 250767605 373542842 626467667 742103623 364165950 695267580 881264348 952993228 220657216 334539955 460634407 959732515 231964706 892880088 350444361 478463302 387241519 694765719 886625206 907822945 264626069 749593615 450388979 810490823 917252844 992012194 729579550 913744812 733734149 776869032 694188881 893720664 218483704 445441637 808065141 899047859 415734289 965462829 851605592 898224109 449781986 939535452 21956057 652922554 585400997 861362048 228147483 468704870 792154753 817088110 441023421 487518101 465537097 770296439 386413678 941638505 281155177 645619367 800878650 923679231 392707402 713813573 785203954 839412002 229631740 909778152 176873923 182566459 131175534 886983274 44125994 136346105 70069634 220544099 738846932 988900451 191639789 496435396 79078484 336090036 627220445 877047894 277656395 853410745 587801853 611503300 195947274 750248068 144194597 452915503 608515523 721322611 913977227 965799595 959400702 967099688 39159270 837107964 79943824 208900384 606934755 834840380 989329216 992914910 94752927 792301788 518198518 746309359 172481279 323165343 14389344 71762875 606212701 651493495 509476310 724462018 729200642 932777090 302999335 506965582 545035351 866521592 747266604 893305084 828849184 836177233 272823309 855658872 273332327 339283594 793330781 865802561 616807952 980554851 898148362 929619947 909938973 969476140 223728543 747373743 920267915 946747508 681767581 970438752 209643469 322824137 254951215 971461443 86921018 372823745 770436421 802277732 276040675 622675184 275081900 931537429 616791766 907993015 200029471 395391468 799873141 818254546 873509154 922813314 523583540 833277003 368648713 512474412 983059120 990120293 537954560 570671481 630734568 835502788 631586630 770203081 28284539 350611719 895698277 926374242 287219334 799766112 165881811 545902954 184004153 759874536 114353939 514023082 156982868 985984926 956557387 959789559 214564731 350167694 94886008 417814644 611750939 781978403 788520773 868101534 286225157 751069132 165191922 406029648 187192678 973304100 468613501 774512938 237586281 869700169 189693282 340702700 986920014 996475970 486052922 927446537 670706006 700074973 342483549 371534757 143639989 793128761 375352131 656578155 792056260 977071722 509184093 698468500 966574318 999493454 612116697 798116065 709479489 872670458 407470072 805399202 595241597 668686377 926043130 982086298 546049382 725669939 648357297 745717513 860197052 880978010 359693856 461088201 207545942 967284752 386292398 586229934 819891946 846794304 240023393 335599191 25762618 456645525 981577043 984943048 896372748 928202223 556005291 964520262 591442320 795382153 675267500 829679108 554797550 758153511 285706136 848319957 67045360 449932135 261031982 627467117 187725274 336480251 144919793 967770457 331522261 876601656 336957648 431930655 501600521 872887008 467370886 487870590 857244336 917092566 464425662 571277695 509095771 779011208 507129734 969947663 759987050 952797778 960778093 974845749 657474086 884420636 510654773 859277870 138121634 160461358 656600491 913544290 105513853 458573279 258304236 493751464 178950118 903400335 818153057 882235530 432661134 802875563 604574358 768197783 155888418 401743030 263432374 427968261 606498161 632005659 738507722 964473565 853468595 921453942 18125538 88912308 111230714 347327121 77316875 582977860 985492061 987157708 41244055 567914617 753367206 909566862 164421333 756106487 82237857 401855334 593643928 975777778 560419511 584881307 795619552 865262761 175493934 291623482 616214166 929591981 371565224 896469973 304375267 617314715 850009619 901879056 781832055 927863927 928591795 965158395 177132332 634230458 547616930 549021279 53657704 395786370 535832496 582863397 263899394 772410296 747490914 759642942 749243647 987714219 896916054 975970794 698577857 890710622 839572536 898507800 64838026 497792314 167099620 293959080 769146078 863273890 597714403 758134789 115058551 420152799 397413318 497509679 273412008 711922345 553831131 737117137 894673199 998942852 24152669 542601999 326453012 933410887 917171046 960914381 288647162 513718937 486017243 767369214 232841377 888329041 853857373 910482932 246466351 598380402 114634277 757802799 403715500 617236101 323429372 954054768 697109745 822776732 974095272 981076158 281264087 771794337 636215104 690876124 851998083 853183042 176196607 596477556 827980256 829204750 712861022 796698582 724923442 847016220 961796563 979977277 870529504 876328800 45698128 911686577 752088026 858348362 369706373 650366411 773612512 993835804 50353103 916865888 867296458 944392478 926732973 951757828 610066775 635665176 523004911 650990190 324142274 752325134 357575416 957045656 439273911 678155730 391259547 439168521 554868253 906715276 973828482 993361474 676250633 761598111 91396959 433771442 922781585 938420871 870115706 882157465 990307138 999159203 949535810 959582480 623462722 780380299 570752794 753730443 821356809 934980137 108265244 713984891 149273518 384524257 122612109 125102815 347046687 995960569 188555921 653662397 930947904 972130121 722951642 850238359 990278611 995111919 270446809 384488527 601414863 811203032 967608668 979890655 58550174 984194773 918964362 923491356 576537518 921222993 301710159 835439950 876821785 955559441 849191752 888384674 497330338 781199366 526004021 760412230 704961644 776711339 378328859 508049009 361014839 479958602 751980339 862062960 846864354 860741322 739572173 940620600 240974208 806560218 577490492 871340899 725216334 983268145 496184478 943836912 27533702 347806372 866291958 894945672 478281894 553362587 846063270 971566530 142718831 410237734 500288678 723823621 77253599 275223011 880519108 884548231 591921911 972088397 596153196 963872232 81014918 668264916 109467535 965981311 869429341 917792226 652569448 904844311 384561252 944223574 105582597 329523325 376212590 921402095 736650829 793840015 79195006 719701616 669550483 735976471 347066156 787887260 495297371 715091626 733660226 814263401 294150461 625997028 361046667 916207535 498647904 626512236 72451597 960880275 448539284 873724920 851806205 968777162 155082008 667921440 940215429 940916160 915511594 959483453 999768553 999872190 688705107 711126867 837193405 950527850 53781586 355500345 486240883 590242494 290818876 729882324 888234938 914787358 836287554 943710476 138382333 942453848 407907067 833198574 867233750 913323725 302737912 516699037 423151775 941885837 390948300 411739622 596229728 667048886 963930093 996496854 612964874 659823324 771804289 857631458 884501958 923013479 437095027 830532982 17429022 768927132 496137541 966507117 690948959 770249954 877799580 988177929 893774965 982157881 118910375 539628817 443486270 668032416 304336474 402296279 408161762 951869632 814300150 898155993 640893399 983935726 806001516 844112809 553368387 624400646 582941334 731299937 492100146 987346530 936591996 938748791 358100415 790411642 643866383 987123847 246312274 595610418 486980646 824956273 425466492 816329926 294895389 672191048 699065868 811506629 636918506 681206881 112442432 632141393 311282530 390003972 657729259 772523303 886435622 905707800 126877882 377844240 553776270 704517655 78110868 146606326 137126912 929232475 632418745 689402740 446586080 887322030 485445143 817948641 608926319 683393701 191266152 814712138 503401561 698625654 428376783 998927806 960265562 961969856 305201423 670802887 656246987 945022517 80643546 305190238 911640497 994449300 420483012 780114212 523995496 551336245 885946106 972659199 110073152 422961028 312282759 808729370 264030278 323376108 365737028 921948311 586272619 713849451 706590427 985218878 583385582 631332144 933324635 983658022 840933551 946604706 319487400 654972111 280447694 601225596 24930491 629868598 618550789 959337125 591427054 911422294 468307199 569658624 735481881 749115876 852799849 853616436 713381513 957519587 605070296 968646094 438170707 977770672 232801900 462324711 362402445 937674008 54310068 893824917 121521827 500186673 491123962 806872357 780298644 939132304 792701896 824875753 805485756 827470944 449898308 986579540 367206580 929147112 682591397 967134240 636527749 943479456 885806195 961822146 416000305 755273971 207062950 298774102 256165953 762036777 53444153 420738283 323806015 586518877 979197949 982385008 704295348 972405528 936256155 972579896 441713221 713341328 528412531 651919535 740305078 831471537 965721484 971347803 848766299 898021791 9003331 949562965 239921935 671304440 772746375 865195366 769622826 904204072 861589807 889050841 187427754 425740425 830738493 853328081 737872493 767205086 911898196 934692519 972605493 976644803 715891555 951638343 928505099 991792220 223791114 965476494 898281988 980204431 518082464 766511087 785634714 924013004 671496569 806578052 135662628 569997061 843204585 844487298 535338706 666769720 547877786 805204631 370544882 489587659 834602469 961399398 782667386 896796787 882306280 949161063 580545949 648679819 467866974 628424995 94485125 826330561 289870857 480294473 752840946 986942778 309783417 927667790 41262488 718573371 830927657 840706921 63860802 783804845 950184435 975139546 507240892 956014897 286153784 451098016 765487942 923412689 323333799 586808695 207095767 735543215 79256949 725135450 424960878 602428807 633269766 713329182 585256623 830675597 625100624 812624081 63120267 115290834 44337278 455046144 610629390 946133238 599980759 986767629 265955864 976686953 804056482 894415874 267221309 633340540 773777747 775137881 313224956 743841768 105677590 955912943 236616120 996505676 423041141 894245791 897621285 907969379 614953673 618771090 13765658 132865643 628077195 734117945 10015323 600731250 884081016 895927644 808491834 989671260 344917930 384373456 291098039 713210474 167172129 954955961 403071030 923934362 657641869 760830209 444380697 485900327 608256513 697667111 12172128 725758571 481090209 894062476 833259671 907221731 934891877 938706712 474172755 574058479 136309632 749660676 727434345 754050254 656659401 752160182 999509147 999905467 80470617 502739930 535487715 793544786 861602007 957348219 715275169 780114645 853137632 951837335 621527627 925807847 227968004 458062544 117874120 825240438 843047197 880430302 875598518 903564332 740903858 854256540 455134202 581878160 264105854 705259027 482467576 865814035 166530779 801353998 850255752 919928724 941048951 973167357 14994938 840770680 873854304 951722759 474584151 585953910 136860674 958693108 732522265 810207747 929369530 935048034 821588866 966321181 738165354 841870886 844389494 934987788 47673218 567100887 371571905 550267568 580896821 896291520 313831901 411211934 634779921 798383247 711602904 803344628 142926434 527186769 357982652 963607865 381911351 704605671 143228687 668772119 752719821 881208896 936066035 958114165 900568236 978691479 951040255 958218161 305219895 534534687 522600636 955121485 800365153 952686389 491961601 500678864 486668869 944513924 305153623 722395550 123054800 710936882 628394630 989554145 251223633 623422166 83381973 246057585 467081763 973556916 220091686 790917343 82853236 532039103 912293510 917092767 780764372 826204149 21615955 60691720 923612645 947014569 535343277 865411397 95593479 192704844 592401959 911042823 330503201 824152025 285917678 454547091 368973575 521106672 196335886 827365355 595173428 656397673 26517336 842416447 276802588 541895816 788804328 816562647 354649528 595917236 450035721 770728863 140549782 250336830 433916573 851959666 604219380 928221602 395991518 537719545 903813678 997101729 215119388 640423917 398756389 807594064 832822863 935014946 708265390 761009769 783375389 980480168 86334650 864563592 769313623 905141814 448461168 889185976 749314047 764351331 454090887 510708789 210546471 527246442 892433648 909375840 581627239 913714171 679858777 856071920 194918886 802761091 878877206 898766441 903881723 943396047 700958137 706998707 5842447 655407179 332233534 755609127 372982228 439310066 826986687 876878848 805215381 849457266 309420974 322855677 623433415 659878781 825199310 937134516 656084184 847021773 269416139 475309337 79257492 569560757 798885495 973525310 549777491 684753180 838178816 876015659 320311364 451813615 819995181 934521532 727017315 984465784 176889954 266080059 342880208 739305290 156692117 535016897 909815832 912348384 240102861 956838173 714168983 903887408 96755403 554048030 46449223 382336747 361562361 732474339 888496181 914509785 891545606 897350067 349416710 416590822 82198730 554533734 40244273 939949852 123663881 182387983 989957674 995177280 702008989 892854698 325694542 822325596 324319037 972027293 784838659 804025294 946502885 972510313 801069837 916674134 915789602 939470367 36175224 320690912 504859662 641570882 523241862 844304609 947793705 978456378 365137947 782460184 670657915 766473516 759997474 905759444 76193422 646594033 262436795 596181718 130138463 547566671 353844690 426252637 491969069 658019400 625747212 726555644 461452650 860518384 230977827 841620488 305156786 946403133 389930080 804128474 445505959 648712162 310120878 718206114 800704065 929944262 952934204 953983995 644737825 762695150 772410901 918826758 532997399 922155883 297127688 349971216 509045901 964510137 57490308 522707566 958836167 965992715 455410399 540704761 381849366 446419215 288608657 752270556 544830392 875179233 269623030 844961256 2360564 718259622 171776360 226200858 510709949 988317158 28952778 850153823 166290371 687114158 848286147 923386473 423250368 944025423 10795762 447085624 913980871 966775096 8683037 344536442 537669652 781007989 72732162 634428080 38531421 928481798 974902637 981384652 551407714 677427545 801323344 985897578 407200216 757342658 222262038 750268352 393990275 455049967 647082525 854232653 165966894 487881889 311406983 413412833 536494046 774946338 723960998 956425979 733155979 990411402 40254198 232860823 170932024 390099042 138975890 293921686 827321628 861957160 541313757 879432130 48011099 158955998 307897421 946328686 158135593 549575485 580544498 793386993 814429258 846889463 50941616 146757754 221652411 314040282 766428411 882477112 876157217 934049986 546769246 594803695 575333359 884302629 971253091 972484959 778824327 948633088 967064617 978757320 758180920 996842339 255353046 547477894 206107276 915642868 196810232 772766568 219717951 331849546 579035423 746394489 843828524 868895197 31364271 270677045 825955046 966866526 95856876 199208511 547067753 798110240 240061617 479026397 661026169 860492756 361359847 964442230 316365043 572314690 474295667 671665722 974772775 986324412 736802970 999121641 622165276 874351655 240937533 645479481 542556694 544757082 361619144 989144143 355709478 934247228 904048096 979049558 846286383 964358863 945375538 993019689 270188069 376509703 761884909 970940925 575548322 793441529 734076477 942113868 570886524 910095966 621681623 795208989 820477820 869088083 135779593 475001466 935266527 935527245 111860507 631865790 627760018 715534005 797323664 906038068 879509130 935918148 802889557 810973368 799126428 824106126 22440549 136922694 738886984 815548087 946999542 997342829 874108947 881278961 389599846 971637743 333390814 737416614 648483728 723473303 15344417 595899264 377932290 969481947 232259076 689180862 65167090 311705211 120526637 340914142 883097107 937877480 51090701 267045672 901053496 976038244 36555882 879839393 440200401 922129215 913865576 917536571 575178433 694752687 212395359 731423037 864454376 939951487 147183582 836066975 145221036 364021893 999412973 999696888 900357604 958022022 619687618 741997353 535464695 941818917 309352809 326621430 767609619 866999672 30695607 134197140 397273913 946896956 630976464 645420988 700274031 784719135 25060145 29170603 921158298 966496733 240187602 570803657 793140566 918811637 684018586 746557126 515409857 613432501 457040860 709040331 665929478 851542127 786758953 965838115 77577821 807048983 16448430 490650588 740811606 930004792 678344507 780823093 514161970 744391348 581715449 822280791 115439222 145689773 122655133 823098899 311297309 759092396 993261725 998353749 597640719 630296344 619580166 978872532 679379295 909449619 768018902 968195959 157792629 392882497 274773318 338299308 209868653 979030300 745640675 934814636 100376495 580712518 177409686 398080225 375250435 486815712 989250402 994202675 458673935 572689087 710603929 762352852 449603322 508406225 296195535 700689314 982817716 992541005 57742518 508425371 735112344 747413440 436600580 502468297 283736156 745539933 497792518 787415787 394494114 406905480 84980488 745076649 114307941 898530290 314184066 483049190 984444326 993362555 896390178 897995747 207296126 309899406 503720341 516573754 450024354 741903651 887750213 945349390 734454381 910649429 493416758 895709790 933449309 988935704 740708675 922051199 512127144 718735256 556832181 906391503 553798859 735077991 690962302 945446228 637840023 645341398 829954807 991575270 408414956 909295305 544154673 620828955 399881398 807204655 943999507 961828042 477849496 615872581 265563056 482743495 957706305 975710269 358066604 873809098 317149013 586403366 774921621 799731293 900137097 983947317 4956407 248811430 932276273 954668941 709553950 784360331 203982022 319882162 196863345 750702008 93922892 494100267 644170805 794025416 190096772 630730501 338295922 821278056 326557735 905127085 463479066 813424853 135758897 256663781 919202746 936094512 930708611 959771580 480506116 529299924 67928351 952873455 387054293 791876522 690251997 916021820 687419822 698117537 364006091 450397454 349495154 998673326 448889956 568041666 940908156 976967660 177735681 747712367 789585424 977840274 104701515 976475418 118206174 526774785 730417558 911851501 35873413 169158995 274757260 585225384 262458578 533986760 948228078 997100639 743006298 770007872 783794644 972388667 739450692 759352428 539808187 628816736 577223810 579597845 428131909 686893365 593253329 737367227 631212735 876281411 151333579 831450644 628682237 901648954 937798787 989674576 360149121 402888633 831436110 907807438 995927128 996289687 566076589 739555153 216209110 547870991 30036188 197281432 765097440 920039306 609628105 976773298 811572090 984680065 216768798 919955905 153560843 154474522 573020084 865342829 507466375 623545133 468245115 830978591 790845413 880292611 874108493 918337260 553766412 811395624 925224543 999262809 446048428 877163847 394807424 585380892 52540511 519820357 894756449 961891718 706201080 710134144 582666851 818450478 941478248 962185360 750569545 961740763 744161636 904831553 820744902 851340213 803221401 918117395 511415893 930784240 20483138 666224301 408156122 512873485 768407496 983339084 163473541 914327341 958718701 965299266 266314242 423855314 429453850 655502645 925647612 942267364 845242631 861387441 960607054 994236380 60197350 462212950 870399775 873095621 972072405 996011804 488568939 503797834 358833402 748218041 448631564 462499442 456179442 630919887 8549922 510864995 269409067 730020430 974733053 991883289 129171720 661231005 69584339 449396319 469096034 610005837 41445510 759599534 717775108 996657705 920542522 992746712 998772968 999569686 684027477 906109780 688446830 939697641 625815776 792141372 215118748 750094978 409315455 966423386 416666013 966633435 314970878 750892841 838528133 875079998 464199996 631434299 958123477 971060570 694113791 826234116 845265936 916184030 866650003 965326007 50340605 261226798 57642801 844641442 436042949 790212143 465979249 466303898 179513605 833704557 780302089 817811102 103446189 816574326 561809699 620872413 753713043 899785017 781589992 873268117 571654147 814431884 741562261 928692716 849549153 998322148 264766546 916476493 418804550 555621073 529763684 898879074 317873149 374914882 398232605 671764997 460104704 804028012 100799825 752135436 40185091 293293909 869693217 974259518 233613891 796197336 533087679 616993468 24196558 275826087 88936460 973479664 529865128 846662356 457691459 961972280 186152725 596396332 930408281 982963017 516606426 653139933 533514669 668209918 878092859 989855225 472092483 891780609 612830704 802641263 55752890 403927111 125211443 327783494 811991413 894485176 357087953 457481095 160684813 456050962 873887746 905810121 342363695 432537491 895368256 997183540 880664030 920802223 238638669 515681290 966832038 984417993 292413173 303116084 464445417 883477898 814821513 930054677 916276440 996275718 781216650 888226507 381285243 466044395 490092547 507853205 17407715 555927311 886106087 921545244 466499118 646603706 62027021 249051560 199606962 419668847 831705797 946143123 339341144 901011393 437275499 651165992 969327041 982697598 240473995 627318002 460722482 501640813 872658382 902930201 171905157 212554286 382948901 821880098 142140707 996236221 221574320 398448627 466294093 519396588 571045251 945705746 86544633 526267864 30091813 592301527 186905049 893841441 737692429 849965378 850538195 971803943 365140569 525956790 686511327 895315147 874511292 920724604 583438654 878679519 536357355 907630248 132853405 654335242 233296352 457785128 297797715 963008458 422506569 641823698 201781 931673674 51513375 760950488 330696523 365224560 792149368 980382573 232957510 482632298 825896917 846728321 346659502 602186059 230466596 648462712 478246486 724343880 194471256 775889267 223616223 301908638 93483776 914243329 347255852 390282542 803985019 859218893 555330501 652416277 620635425 715866957 601455948 961756614 298941007 609027066 217768239 455091111 805736051 848050621 483610936 964641222 531575172 942165483 375996445 897039045 167949393 930351010 275433686 405409759 956518039 987502892 650851862 840052680 944984390 971824394 952478050 963449346 493424309 791698389 913851920 986255277 167630353 566095932 833961899 975583511 647879774 766914552 718769343 803968530 883883905 908179831 717309123 834810237 626405626 699340973 131685340 787232020 619419823 940206581 950713516 993234328 956080231 990986437 429796598 664779449 302883034 635427283 327144276 991870328 187718246 601415170 41266344 170229562 133488144 535419117 884539314 914663439 893345479 928936280 741948537 955626472 313595006 605437051 921897113 944852401 450531290 944318587 431685114 909755081 649616345 688728720 582508096 857561174 155915868 774093351 907525225 992980559 423362694 708068934 628715079 991892644 355120258 539705821 470341954 840277796 323330875 923435727 512945604 996300644 409408837 544889928 364910282 974779527 67946068 614615228 156644950 668835300 412153489 783613187 500311473 720927425 350724921 576275318 578593942 855931981 115465607 916310840 969128684 976332775 913092140 980683119 505661380 661213688 663152763 942494365 416438976 856658538 329472382 427905027 905303556 998544388 22795111 551107907 766446636 892838570 513789854 983267325 778846907 921048419 239598587 708977483 345678674 381138712 962220869 981387395 10289506 249611528 249067451 362335063 632937132 939032009 546668546 699543985 631996464 667437768 105207895 250811874 229853199 932198282 7496196 639516209 848099656 969485762 325740834 866581312 805220051 975595237 403362378 564403788 567719751 974872781 161337746 202818947 997255203 999303841 627745707 729812672 111593521 656846681 963406450 990827191 316834042 819217753 228752141 512002429 630731151 928630866 455749490 808166267 532227571 670660094 483694144 552175120 860811360 922155687 490293361 788220555 349545319 730430255 885846935 971875304 67262246 441507552 159695495 631131110 754480499 819790805 211488748 470267574 433364196 542591026 638564936 762511139 426699438 984656610 539592128 646302062 834597918 917532418 558268875 998105461 821477962 871793298 917205244 919749327 844926164 878690698 741496630 751504823 797423110 967540942 722211453 725439256 399139219 501399248 737312121 870619997 555246626 802675966 811956940 878782821 233305660 740200359 838666404 933638135 443607914 820558249 910985659 990380274 327245127 515190364 359232280 389316149 900623473 912242398 371882804 447403567 915457422 960823645 158931916 321787759 922306838 943756708 140044587 850823340 301173710 965644138 437322631 593443867 301857616 331234004 417497636 760940279 244130295 771881418 412192901 864044378 640548593 655110629 291223661 600012318 211039767 800622861 378118642 949514458 103125854 463635767 205086715 235725282 276677170 380313238 286515005 484959728 289065105 750240955 110365974 970652675 215668792 360148700 877455378 936832049 731642730 794681699 65532 833012602 959126233 980252645 71923757 509049627 973976952 999780217 702515889 702941550 432043548 451748100 410470920 551663414 232831702 602164542 875157052 953554135 291618905 666237007 378257944 666403196 12519674 519966520 855515331 935807906 519336813 842051117 606774940 971031317 386191820 573705296 388975213 602222775 183447630 607567141 642406489 924824991 382017505 447946607 758476436 885947837 698093374 949649194 786767251 884391364 664263945 709135118 512233785 731244848 815854116 871711549 858926023 906238308 897929472 913168833 149920798 603499320 964127200 972003369 5411711 109834533 446774302 840368161 832729414 888476036 179662736 710135324 938101025 986213335 592911654 900081426 881804616 988824131 934178444 934774528 336555969 457908515 114850652 390377199 344163988 800511113 416914510 747123669 864591595 911286948 261936717 356002670 157046002 840771966 404126056 408800828 755248608 870541229 698883429 740088298 733403169 810901047 765389931 994605391 451667084 501699867 813238666 871905176 523910564 589450623 933602319 941009867 614767220 978051562 61892009 452045670 747571833 766216578 913518008 981519399 137836500 296530424 933711138 947261281 874891399 967295214 656350710 780026142 538088644 717318123 344001786 893053018 827334893 881591708 657540147 888949519 967940906 968604948 413342896 604275201 141033109 611377036 216653027 309645852 396575935 736482504 299153221 922682765 402355184 995473353 735639874 857009283 448466998 766156027 947166168 974097820 373058804 763298138 677312256 823365452 433724053 863280655 255140008 669753676 133112577 271541397 460375431 727264739 119107668 473559992 609221270 979003822 677260288 840204455 312591680 787762594 230347207 533715790 80958210 154061448 208178832 871635294 377010530 522341802 648541786 965877291 496886040 638056660 836986286 858228600 125474039 205229049 965419734 970332195 645811242 720044746 24131286 682048216 195731564 821789474 80547248 171185622 231298706 491727304 65278071 948671771 907096931 940790866 720455873 943516495 499231894 958644968 529457056 825311141 124418349 450774738 971818850 994486720 282543971 529645281 165112114 640344930 164389306 712352626 568531059 909832078 29677963 833715993 166230237 399410316 385233373 515989600 241632790 312916545 935661690 947323240 224604630 450935550 798299039 848986781 544854296 732744813 701422626 913551956 482172814 806793660 270876534 473358473 369170038 477817836 659298294 888183921 46718934 443799575 499699661 609479233 299354634 709784398 139627649 866093157 105160757 722391389 177600299 974223481 573595239 621970196 944384669 972218313 798878151 990322811 880840934 905510280 393588857 958860035 386835255 988451998 951656814 984677690 485225471 528965584 507865422 924743924 531056837 804750615 418349430 963009755 604394002 881323608 451972320 827773648 40821308 831502963 274910876 396103928 333866515 625165914 446141762 854912944 671628315 823210441 856509838 934538914 144492935 592177191 861484658 874653489 792451474 832347318 11869068 744821848 677744769 734620485 648795539 779288363 132681147 292891852 161583713 661431341 692814783 742036392 984609138 989693725 229003824 841413494 114834208 958009854 668350315 901248244 737164973 940348579 195086212 629435422 878428115 917575304 765879575 980940253 4860406 115915645 855261278 941936329 491321696 626211210 207002604 358479240 131505973 482057462 828263997 878766405 886189794 972773831 896817814 919620636 756665356 864114998 603529784 856043057 563633537 799065343 161425723 907161385 244117343 425349249 895206315 953270564 303024664 341909559 635094117 662641989 292404642 662370227 842895828 945522842 632114275 786840286 39533455 278901769 2080787 389801353 470628645 680748083 237275619 463196094 368098774 447575642 775901550 949817790 108043186 220567050 771328088 979949413 332171169 936756942 715708844 748910561 693362552 880335376 674601073 941542806 1475495 862880222 507048231 928915781 813711194 960125349 357318915 810600688 774926149 839028035 896691286 982075648 727481982 760060073 529623254 799083871 796613347 929160296 622321380 847314485 361165205 380938859 783171626 978849458 123064514 775096260 381693492 483468749 192593314 570932146 19384258 311416382 423529692 901882928 538568225 960261847 696018915 757376459 139465701 815903230 989496302 996799095 866505090 904130600 824183524 898229060 746294238 908139681 225181073 891904441 361335291 393962863 574378579 684794214 511828428 820263751 787044495 961008400 809980039 862577161 178912419 687345139 559960313 829537836 676706190 687960653 387777941 627150699 826724024 892878950 522864394 716174833 36653533 503638547 152518265 589943422 418205336 456625405 199225276 296504245 381451260 691296895 42473070 266251595 365567165 572091550 960491902 973343772 649154418 972071284 238476007 297381768 343185444 449449281 343019009 664870049 928710150 939492504 425724944 507386883 704550313 977420579 547072036 815947885 150624182 993750527 827762961 867492343 99151321 667313793 272435057 819152312 77322935 225779443 654691380 692518646 40944580 81390027 826142383 901499917 872716084 990067847 600670113 847405183 490356903 672300429 997775643 998487342 513087567 985688234 120122745 616727754 880323101 952434144 66573833 269995549 524767945 671580674 42068447 232602999 595604890 922548550 451142004 997810296 139909621 517967360 286188946 713242730 446632699 935528380 917337250 959245528 70660684 147216912 133067525 697979273 946925546 965397129 197798054 885147403 822409572 890154050 752803920 837529744 150408546 732662740 587905833 904166894 443412605 811941478 293871427 324234878 327918769 838060124 32696133 630608818 124117618 998413192 86281560 911759150 262386063 680067271 513998390 917076872 311802388 695883619 143953666 284252699 540861157 989987986 684111467 875365228 721994963 950711222 484644100 755853299 219590879 287078995 819674494 896305893 524272478 894090011 486932553 852232131 9594822 951352809 579533894 638950294 867587619 874059550 620747907 977116843 621034960 637419616 215288317 385455123 754473869 921657551 33388028 947086902 866893619 874534853 630240479 768405731 564048049 993687240 62160936 241784062 705150155 776021724 583528917 908373682 831242997 881201407 950239643 976841548 382451170 444486646 181116329 191312175 787017140 885651924 406479495 660315192 847672154 935869976 702822164 710183434 812008147 973621819 7968122 219063248 461242681 889188464 838744186 857844824 944350279 966367529 839591674 875072567 650443099 670540932 578126228 973754067 904775445 990549486 720295160 971479276 669373535 894065737 872232399 914052853 478074637 960456323 56374799 839708728 524060623 737181646 862613676 891921209 99804640 379316200 245501502 882165839 156114770 241942143 847943569 989923898 472906382 961711967 400724014 531884780 582277360 938549324 792624265 907977625 403946038 486182580 956569098 986318905 585163440 728982208 52889213 261485647 706471245 827183090 278341728 662476417 45937526 899209243 140873823 730607255 336141705 802489742 966217952 998041759 77683448 826053432 684252891 992377280 640826849 941474685 468602654 731089331 699284742 892870133 712639692 923787524 783410790 974943212 806857442 834231754 517091548 998426884 214461920 546364312 101961167 971307425 746386463 940326334 85358449 713506599 712769789 835171402 496180747 656888412 984688059 987133479 57381601 732298110 514157338 535865413 299189799 703555952 980377787 998271745 734861603 885438577 734534073 994254384 100298035 219512083 556145461 988281329 473095007 987744707 911134521 929118854 449164265 863372415 660904750 916397783 501982728 802608194 591285287 842098544 537002760 601695473 969853495 973670040 643533650 756785910 141064144 148417939 848860810 978403025 76078637 768070663 659141978 929205951 822027920 915165007 182468886 873599122 637384078 681411400 973674517 981449640 682359848 988657331 330637075 496207874 268506301 418972031 490540159 515105370 326886302 965899674 376391622 767991723 639490447 937717426 724244662 833558376 144339384 424742207 270027635 452883120 185466765 771146142 110865271 180877252 914582963 952264993 368488918 845304397 544557593 654724309 200579661 254409986 833513268 907897359 172473242 780419597 883132598 955916201 541217009 544634481 763966706 883792089 452808580 667162490 327214373 720536460 118789143 774670824 694183446 892749835 132582081 252589203 255244130 653147074 512611140 558697287 228024497 533758681 814769397 961621104 415137427 737212877 200318234 901492778 814380289 910244199 401913193 778375651 943377816 984126446 576705225 669024350 998894687 999270793 34876910 528171306 637467260 808916548 976895567 985691341 74353699 470982342 179447508 342530550 287645081 692240289 682527426 750047138 134428330 417606987 226033232 724557332 782011069 844926534 385579632 807971430 970019045 991182879 978236611 979287072 915715258 935618044 400271261 438968832 960560507 961882307 389003485 642773831 248454657 412952833 445546918 601434776 228245764 238828987 780691529 907043967 281779441 566596541 822731136 970394729 402501122 621224387 259019038 790523568 621715 773333954 523692059 529592817 667828544 931333123 656570524 795808690 291534075 993540943 661806727 979199942 771372087 836536208 524703898 582133212 5640270 728250645 49618364 223708459 237759011 753126752 799469494 889690212 946051614 983277165 904694309 964189126 641223386 671950301 81246979 140795154 51267725 262514412 838193225 894028149 63259040 986011892 682518488 684090354 683849706 836879368 652431530 941637528 8931917 56401572 596079930 602437121 204560030 879644701 8831098 393033960 925581590 984610900 461652901 815004399 266616745 489473841 864564493 970153769 96221164 306241229 350556825 764344929 94586575 908334233 778683792 902876163 911022784 935217863 795788860 982861093 333890739 741002909 459416729 806074941 837942437 923805468 599562971 606962338 628172040 969725778 580731438 843741702 692802562 748396397 590446525 629908777 986164700 991084807 249575846 397100543 991846018 993428118 395132615 421452256 909385915 988477926 452252310 928288348 780656637 794276850 538604836 793144255 977300285 994522845 856569071 985433130 604541383 687810473 273636109 491125025 336326954 416327950 459566423 624130079 126755063 630185061 342142805 852705886 853197400 987781141 241739910 263841242 691545916 782623925 790165897 799567544 556049317 982135221 106982923 252735892 637295267 790106233 664889113 753372287 416683615 672360527 351138686 794889305 637354416 722505651 44100200 346022843 89266692 608094278 365717961 971299549 90553518 846885917 51208569 590328560 150886508 349853702 857164019 907151847 414117362 441292205 599743812 720441773 747050218 754703343 656556237 656642510 137930292 580050033 397385304 911350742 355449957 978994054 893882764 895873175 602034309 771729993 773984200 778839401 150493251 896928005 330147921 644546034 420071594 841003096 679578400 873539286 164434555 947067599 641398513 926013038 196957896 532980182 90080332 290111588 19686213 964660379 336338943 468175994 989474028 991995556 609294894 770256929 835873616 861337936 682030600 810138646 275826474 587912149 856833847 871758331 489604586 823261919 214828865 411723075 336519601 922924812 188947555 808733013 515556754 517818430 718842689 940510144 548199497 902173766 595181918 836795548 663258600 838271770 204283603 343465733 140778095 943224487 709254153 782546107 101463828 581942099 682033662 951299690 126480688 715756378 264506015 528591945 874975811 998017446 224275812 660411738 467005873 926681702 848337839 987855363 187290624 591478225 50560425 556726004 609233868 842410659 852913074 901125600 712039457 893288217 36720738 61658594 846021328 916968262 946933825 947169957 238138116 783862855 654396601 871902564 476585101 563878427 257047837 595152043 299783175 396115284 821018374 825299739 846817736 947287240 44361727 971644957 961389921 973907812 626435883 978851350 607528637 726922560 861948334 979515327 216729511 920915304 939529993 990208848 794122818 951496100 759067298 893266978 105929988 475005399 435429381 740022686 767311033 845879082 405147214 863837729 43519811 408728306 58810706 317387893 215702299 965441177 525924907 953142806 756201502 963662601 277972719 495267942 922525878 952260335 358629533 635761046 780959584 836351945 786225227 795897988 12952041 960994793 747772437 818700676 775937938 941943168 270817875 908190912 393885437 821849815 256117378 875320735 289617642 672925447 355000560 467391531 650990295 676230061 201862138 959850347 846466850 987552456 295385264 895910388 201212315 784915312 629180854 926014492 510155511 595276845 481620755 871191264 157189351 560189234 289553695 873084336 890362257 987038667 368407423 957343060 838025393 889448633 220982059 614893458 179502496 464166458 824030033 916471074 290188805 624147238 90827540 249320688 407968283 594756937 255620179 885786818 771276923 906431071 154579277 608255471 407185907 521481856 575152367 674460961 750716817 806846107 332881986 354275237 135164700 829618916 322735716 562923860 416226075 654367832 718506407 817017034 306134505 705430929 408752967 888697377 578282525 792189226 501452031 976774656 843264004 907245497 376476477 967326505 644817008 877774691 176310096 477869792 64621521 480896512 350665764 918041651 39084707 751223948 82271812 937541399 17770357 372907793 117908946 446991626 732096706 890579039 379118553 499266453 693661173 844833383 351560566 455880309 705172698 902937764 669372369 956212370 535073513 762076401 599560405 970028695 553632844 959938337 353003653 413218645 770071853 902557048 251598145 456860780 589764655 725826004 399911802 433495137 777751514 919850656 593444803 969405091 540122281 874492776 370047134 416057777 4126683 39078451 384860159 804424592 985139587 996192666 957236931 980006301 132477748 328423501 429399861 634507203 133870274 385950448 742100239 996688857 827729671 894319559 791362704 853879819 395329584 425713524 810686869 888747590 482429764 642040572 729970729 750181100 963740825 988227622 567008157 579099727 892294921 987691108 346801461 578471786 563482269 572992211 9030789 391035906 312441465 932817794 894877372 911918093 6775084 38150161 56272513 520678036 950561151 972783892 848668582 902993787 837214723 896466227 177787487 496325613 231248426 398360419 443106290 608934636 242403612 995242618 868345427 887400585 138192614 926254421 540361625 577150952 214270771 535436777 299882752 416819076 43045341 561629929 726121587 803118713 60340963 949880707 775796314 858141952 214189357 893797613 768634472 982680323 674500838 784339136 331347825 719605095 187422476 482891987 389348692 748261077 115201538 879494790 569264659 970139722 687320695 850376614 259469356 609839563 475412021 880333065 737854078 877265995 190309577 922735820 600456573 607303271 716553559 761883633 175310549 931185537 431102663 969561877 66012192 678729728 976020525 988783954 119045862 685421617 818957518 940898190 223882391 398739839 803259511 935508818 496110322 532704119 884353278 963841458 54978800 56209911 496079099 765952887 505997423 875694375 678785311 901141182 446706974 562001754 691651571 813681969 804576070 828982018 840326759 909760358 577312309 798098551 826152056 933399087 735850129 978528325 76762164 353157484 337070388 434345189 81337902 408063678 291577142 333219546 515311174 576132808 32601079 355461588 574059733 652936967 680603147 788358017 239522017 591566999 87198595 854131149 538322115 598418930 8101185 945198157 934916047 938725717 189779368 757278296 270401319 888036323 625283523 931456252 938084939 988496723 430877148 660374911 813446169 950178113 785032540 952227759 895264014 903971464 422244183 480255108 545179158 870338747 805551596 855941201 893813049 906474687 349154963 675968996 313150510 811322295 513383023 574222548 464805026 782973837 643429568 986455453 967630915 995588885 678465834 835068750 983389486 994618237 573870637 935485232 194867519 578596297 879702007 956484677 993293173 996162698 339856730 453289863 605731530 641860406 703177859 944350995 224783441 560057765 162723149 952229981 151248070 696332166 850889467 951072714 131135377 699076745 361383651 925641136 792325461 894041949 464083911 656849889 678947192 887719172 568073127 689208240 901868050 978049089 355182869 948194633 314830521 959828784 868458362 957413925 291836059 965590548 416422828 981173160 465460931 538174511 627839519 934907258 890793081 900279665 111303990 468144821 802619017 924818012 578076484 944384203 875329014 880679861 288099058 755068963 317961749 883573104 616765159 824398414 343847668 877145271 327893119 665643080 13610511 721473050 460653548 852636165 864506196 871567655 977169963 988339348 212927843 989463267 260781564 423342706 439800642 641040615 580004836 620748218 958723699 963275723 357339524 424866011 140829515 205204925 690461545 800949083 941671771 955679729 803274093 969230001 382690764 513170329 152945117 841920497 886785383 931334640 264069942 496355678 708616713 735470915 773098707 965646275 245801266 259029880 21063321 179015761 457133865 704236287 66320386 685817993 840765712 956230686 932763272 966246788 939646881 968153161 651629637 878020799 690326906 690833641 344301754 866195401 935948206 948665590 573126503 607256388 711793304 950880492 514199688 746013037 375895671 659016611 886708042 994846336 659632790 694681200 815837605 900309940 660171845 946811741 240595702 749482379 229686017 342047548 873267316 935578906 701651725 774893020 981617124 996206087 994299806 998727841 2158461 456345887 713350225 827091141 136514087 605295878 236726020 399166295 466805768 890993510 536767686 758701153 852847246 859488740 723618588 977369505 271679705 948727163 722208667 878701784 341880341 752771028 421678686 994697486 254454860 338574854 691982089 861660565 809029379 809880584 716855539 740880317 307607123 518742495 567006498 946783614 967648045 969925733 135904256 494279139 320380655 567349102 952278321 977769983 817262408 910241654 779101938 945460857 993536652 997636266 713809389 921607860 429019154 580464015 723087719 959694959 665448594 828668567 19610576 393199294 372938929 958671488 228868210 610767360 437789415 912411558 955708711 989108965 209517705 841788238 668943050 788127102 445017693 602569511 778605381 888359039 765458639 870176028 83349237 97356459 890157174 897203448 801734084 988284207 584289480 696642442 824674929 960460516 868952819 969294204 765374386 918028640 14164242 660799178 888276058 952007970 399951929 587196315 274720388 387141284 358036902 713594740 102533726 997614886 964587545 978762699 469014265 642400609 74938548 634849823 74382861 290410123 971471409 994539559 338612154 917234476 414295670 801285719 629998876 910991784 420833106 834322715 495320458 614114336 147497844 487664002 779276245 910218071 603507044 895857058 614008812 896254797 598940106 844193817 726219479 929140493 575160141 950618197 728501633 782951872 264331127 838306407 700522010 713980654 321534949 427228540 305529266 996231822 294194515 841697917 165807437 437956004 411378989 431827857 333655723 557851944 976089330 997566942 407623776 484766159 912174744 937527922 528291646 968810989 670016835 808041708 25833190 226043716 364626253 476905786 811916080 869844603 790648615 924696561 554190488 765493670 763818339 888675688 220518751 345982480 732908902 891739846 960594891 992692806 43650007 710386147 491156210 940928711 709155499 936944166 799101013 849016501 404650198 465558958 832639711 872825297 755763423 909302522 121915614 586209249 872468872 918942042 272552407 702995167 587692320 964993826 4196596 333983588 34194098 422085860 737768909 881079162 517549345 779929670 594406003 657187088 783185506 963061181 241166348 992642392 452828827 763850381 527866630 693515638 1987716 970678408 483397472 939738801 450532528 576521454 555534612 645664362 87790699 361466244 757656508 940090301 244289921 466400906 749608130 814225566 363573252 779194712 68979940 182900316 943428236 979003166 303512898 853026128 556016357 625993387 616520777 834081407 787145090 822743147 545653414 736824964 455556502 483939768 974209878 993888788 420426860 893129834 46204786 905872191 194340550 503837963 442458720 751815182 3826210 922789000 827071506 828793619 836923637 991010443 57698324 108802088 284487572 449082796 575708994 708590190 841767458 850236346 592431877 983050819 770769060 874405285 876952719 953168563 48571255 222546952 594073824 621855955 955467351 983958063 646765872 706980533 4327421 889074401 104072364 588767432 842345219 894021646 396650095 941751151 196073181 679965928 305034507 767794779 448041838 828506082 316455549 949202494 90711590 636079103 683810714 729530230 216843126 635281377 796054765 827621084 567057133 589135468 38286473 408199665 955838479 979888201 324791776 825303374 878712397 954878433 894641812 936483742 90242101 460734882 889279839 933137408 369216007 511544769 451249372 481812917 776795251 938560565 891353496 945651361 210604112 311887769 269894888 473793443 357133097 878235903 659285488 877096407 436475373 444026181 108946196 475269249 264894692 423813676 534101556 764870173 804307575 830208429 580741375 847189427 842059527 875723106 586823994 930048172 924432415 951059383 489732640 819841845 44289098 955880134 194215225 390376491 497010713 719762248 23131229 673728937 359002793 920117845 800409816 957903303 320284533 639499593 853674661 887964536 523087817 851786430 268162908 301211442 621347064 712383299 645557369 798084819 845013328 945070943 550811700 666196854 888984034 941157051 603485891 843974837 974849408 986667394 902860928 988330016 47447471 142309181 952328969 995102814 987540919 998700347 816086500 910282495 12243728 49474506 513575631 891879968 62776511 469316625 853559468 862639740 705962475 810174512 775285342 943444301 184837152 476466459 65375471 209498079 954758350 990566288 693277459 997334038 910515189 949201126 125363041 534528919 917143209 919357400 208789697 864660552 234211676 832842708 141783529 827766130 731172998 879082731 211402899 251091581 535059000 742582175 998484275 999010331 368937590 976234016 436857090 454735673 425697299 958031818 790845812 800862454 665642751 990362226 8362801 784846075 90035093 850724801 133490667 147544641 192934486 726139257 985266651 996194741 905504972 981776904 38595393 330025230 980732718 986662362 301068558 870448325 98750475 451418560 457225346 511074245 350285047 964378355 601274964 718614886 663730915 828294710 433737415 557112424 583364799 875539327 877119727 899073474 455254805 986140527 143478217 195577973 384166568 408881851 943367188 961354830 134039886 607509643 901379758 958593159 461924563 590145220 386721864 612636637 350576220 394581799 179029769 776542112 878697122 983922393 265374947 808489747 936963565 943073508 702913814 976264600 126168688 756531002 226276523 864018047 652665331 893974443 839529186 878088425 502315798 753390144 824353558 859254593 492113805 857269265 54174380 192190999 300408596 977363486 543277109 908295272 400468959 450633995 284506238 749162438 277155930 895003450 35676091 442593522 766375768 807220289 738739277 754050567 333838421 536609369 456085602 564789742 469778433 487304477 522765117 957367030 778166283 812882673 338474556 877502716 360327098 897781334 87703865 338267030 292193152 709840471 682528615 869195865 931995247 988019623 928574798 970506966 610611029 670117147 400831640 588337732 369901434 594508974 689949284 793173474 424042619 845850873 956084071 959326624 985478990 987743486 207301009 813042505 769920626 786638165 728024908 894794773 863631735 872928099 845854904 865653051 513190291 628082883 15107075 73499277 781906980 809211573 706608310 863387180 925481440 945553688 398948767 999298173 343077027 516472218 889442462 932923332 644197968 815943592 822110241 989414849 251312759 497428544 134207146 431400615 3734194 65155249 624572982 774412271 244903903 321560496 402072988 792688908 551784824 898415872 713082045 911460617 509826273 723594209 983306985 987151310 462833027 490332369 790650698 817510746 11993955 249265420 603393203 892409369 41423609 446028043 977739320 978279701 519567253 884488573 284737225 871358040 592423801 848028109 390145070 916204425 741651466 975935461 419157421 997544679 31810018 499688202 930549342 946865794 813184744 832742260 129612951 809946845 49162019 552855423 242829927 902501395 700109627 810154925 604436068 959638715 606479766 715915212 967136826 999305070 318062018 937032261 55869036 166012466 598894055 738659830 193408265 728382233 29422761 705482606 517892163 704905489 757880311 866590852 264173833 814957466 864404397 927821894 488420039 896480475 596072891 974332819 732443900 796910008 618933675 899387369 619944849 664339751 455487004 518416202 951051646 956086027 59129577 529489070 761953401 856274650 697038082 902629281 412120332 643409567 60905048 712449071 716115146 737922855 822094025 831281384 703930077 729184059 436469629 652307116 397765350 590754019 346207554 609652694 665836008 736939348 661218777 720033300 559683430 635592939 451683941 984478380 986455483 996741980 742471261 965202115 181112672 778059223 813854882 870239227 656261307 865617131 86278583 506011178 312786371 843654969 69816351 913075287 689909771 847033811 378498000 952776070 71413616 623767824 199096575 983030483 505840254 863393224 749226831 803085108 887180151 999337428 82083334 681385928 775470629 978033974 717543998 762684031 668545944 699318739 683028312 759565691 762099157 947669501 993167669 998361658 474916061 935070926 182954876 857681188 479379196 497771923 634189737 823582387 223275029 431996174 742385932 816302143 393442768 419660516 769552818 854838785 991673317 992448183 972675849 975337658 818086714 855568484 17569885 584500372 538163876 579050765 222934242 525780579 152922100 860821360 419055582 478263412 331678006 718900711 327882352 987051699 288862692 888257712 337980984 876917941 171128739 190406643 726904080 838413380 156419673 256231244 86587860 470988436 714581337 916995233 295863967 785146797 753013740 996230442 749077227 809684045 517426747 939442245 818856843 944077428 933966672 954033870 385973116 420617001 593023287 925254364 668815861 865213006 826991888 907346501 432387269 638881854 636670621 987842118 972033490 999925963 918426045 943320294 127500215 486687112 909067517 938652342 78614038 729313782 420519231 839016506 890479693 923890377 463581152 544344008 382016464 449006481 453719437 749698278 204261274 499163965 602839924 782801693 884368968 958521011 451706721 931406347 162311205 376535003 465773440 652483126 484120729 682055913 874469648 925596936 952727280 970034876 794062849 966451962 696030851 878044068 360227751 402412988 138070182 465633478 32431265 388927342 158182207 984598611 74086813 567802088 197706798 334831166 310773995 763776287 859938328 870607465 507908306 780763066 850965595 853914266 220191007 941761112 282785083 406089340 699680984 833406175 567993359 910796311 351997812 729393365 595707486 863602373 548459859 556522508 738576173 921155397 758185275 992587001 425904423 783830465 424561923 834860725 128017639 483372524 481243559 826517562 349854384 986562386 905220483 910038574 964192265 984063069 674665728 953130107 258084282 998004725 15451662 866111214 739293410 847767380 732043628 767299101 149204508 836114761 500811286 875907797 5569223 255822598 517810152 750839534 448779274 906962490 332652 379660037 632037472 664041831 632855619 869940722 487295166 921614739 403620716 897451683 59173786 320128912 538771965 603608522 667505655 738478895 932125485 972527357 472852041 950194724 192530910 962834881 379517040 822602474 579048791 660385884 337494983 879036653 589788769 852884484 6887663 234586742 841523941 891974890 211276577 217640650 167070165 845259252 551713213 786095587 117084831 123967534 59247203 74756676 817712515 934605543 505043070 560417154 344308770 727055583 173057016 546894149 461499461 594121427 367409950 948031168 582166897 916294804 400238595 646599241 168293106 556803674 160603633 918566740 618900916 803798156 325770339 780550525 975404799 986005510 899948686 984369801 41394128 448744797 810377324 952617631 345333228 643836981 485091323 815293608 805711650 872054044 4226792 985009667 89653938 894051204 426044108 833214845 78986814 128852261 15715824 244392493 742367540 869694195 572467395 844928564 487687971 559703957 423284846 929563464 670132753 835219874 950372402 971509145 965109563 973243638 713139104 828002465 838137769 974843450 487765099 992696263 86220542 543850569 201998789 883285009 100917009 205111606 639672681 912214512 607647984 735982882 743382445 937020858 64614598 831083154 79497316 767078363 446056078 797848453 670815958 932950264 882336310 990388377 374261939 447567569 491455675 784990113 461803675 974590632 401218080 517272565 294312931 510598553 411658385 987071885 529653992 744072453 822205537 830212808 72896493 745683460 811205624 985095045 59001303 732203298 688437838 910788662 748895472 835281150 646697803 731807525 558691367 724664803 973955311 988847197 166796830 206695667 522121637 956388606 227776517 311585100 219350096 248237356 882019805 886670730 196985404 283515967 955756147 960860322 430122706 948068415 831615606 921753531 791357603 987055598 38091752 173137551 434142441 751237819 469194018 849415793 727965676 867835479 573699192 660842226 396842471 575231521 836532844 991958053 943714469 950886744 137842724 689968091 696728980 750574195 174108353 637516753 796667838 827584737 390361717 518683596 232064849 644328894 770385022 849503730 534277910 646712679 508604653 512472711 257235099 962349865 329634521 552825816 347866108 844929158 176867023 451498028 307359827 926481510 984212123 999612634 186681028 380524546 401459579 926166063 75933320 656475980 694405146 970470317 580813057 742378737 403583729 899793636 987396919 992163742 352401132 929529430 831166912 944397411 480831037 654876318 78223006 916799027 390135297 793822218 187684410 952361549 874446376 905087936 798708396 964704603 76386785 154491252 425706418 518406862 685212834 864165341 150373097 361105207 600406712 756332171 658418028 869863909 466323889 518558498 352600027 759424056 696355641 733821295 862570615 890754371 768962522 966448924 711752786 828929465 731603017 843447210 479587965 803154652 9310029 483145398 534118554 936647888 818103645 841765866 224099179 902464451 192309599 518155816 23313394 426741939 787717662 848621732 186973104 886427697 550802725 881383031 678461143 979973024 312360825 568536848 898331702 974948478 418074900 502183047 922473487 978041979 6087286 445189353 5853088 801537569 420400946 748515020 161310633 722954022 449150132 577521485 357975695 451180112 250197706 613759318 581038595 742671537 470242044 588271022 192468632 908133746 952995063 992242838 354088627 913209984 749500160 926869861 837125841 931350192 316539489 454134871 706597647 955093550 521765762 879239293 178362387 639904496 506827801 863383815 428364914 441910854 799698909 886748398 591031312 826508248 234327478 887303644 327517790 548048198 880697722 908530859 561100782 820121244 210846254 344944601 504907669 509718784 678994061 864251087 53887405 995451008 641129182 947179910 315731266 317462614 870346401 938588958 416831746 592310952 37349705 642929533 354789373 789565563 877227261 943165846 853080770 870826077 475494263 617487776 765084115 919749207 77110141 710915053 4617011 119984365 774869109 841275028 696127359 885129937 99168793 539013166 771500523 821540032 885538485 946164914 641636340 921581997 975152586 986616239 952456983 973341042 499383529 828827380 548716826 794581369 509359211 771276581 978678153 999627830 607400711 621693168 336033333 958316920 834867747 957059091 177865828 330203440 989015685 995895272 261015656 764093402 263798840 764506670 841841958 980660997 574924399 942821543 609448652 635671875 174190698 605014651 279155499 889690142 685829771 957083520 871318552 874534903 677486942 887851600 970142121 990568163 74269750 549247895 39858798 480592296 99691413 117620389 626306488 772587599 608043173 987357937 520760830 580478247 345721743 490891717 322613585 595436766 16203228 75697873 280305892 465518719 80801779 516530897 416217107 758337679 150325748 465835424 829289665 929524295 175025150 932589640 358298023 541164927 585247521 823472021 408507220 852612501 193189 426946236 372060614 702148231 874791611 931343949 792808814 906418619 637511412 756657608 567916079 612156040 313229914 613171241 150707840 613707358 825888134 870206128 894808859 950333779 203669539 427396689 975245383 997462503 554713444 862421117 507798782 799216365 836473726 947705905 933234537 943723245 991897165 996077529 454237256 856996791 81313306 738416959 200509302 683038540 829394172 957694479 393856424 754792648 687015138 877166400 808522406 955659467 717566888 912531061 199939330 271707618 94577719 492881501 115589996 940600805 122939266 643784913 908925963 982104656 20026916 741596929 145034142 293525437 955522521 994476419 195080537 942816948 446356447 976908553 813947166 963079785 854183680 954585363 862063095 890218743 630897982 880860529 395073918 498338144 669300045 823387294 245925480 921310832 560526734 672540732 269939503 577488166 117395284 595117451 274280913 878534236 434436643 761049713 751064014 822443955 621103192 903639634 422455702 663631018 88070603 148780612 825756146 913638678 134795314 575558183 759217798 768812766 69375556 441600997 400365066 811680663 273349433 501820841 302168141 715175443 767802750 892269424 162775298 782900746 837946938 961812495 242722979 728124646 452249902 906035279 478796386 837640023 516744197 899193189 520758760 920027521 771864019 780441039 155702212 812471020 45638848 490124532 773182794 796950879 977668003 993143849 573590106 805225769 561427804 704576187 849822135 905611413 903143183 961391119 179024320 424770623 162399870 766175858 920572653 957301900 419150623 533165266 421741385 939526550 662067407 918383685 884923421 904505774 918091567 958033277 376763089 765647137 83156708 322269775 651337804 714518996 492640697 732828170 907359587 911512797 679131846 973832927 838383703 909159296 378729588 402942347 499434382 990762612 247720575 910851824 697113125 763416619 102543459 623555925 569662415 713266261 766462865 901636787 88760858 616111128 805812023 869169748 801801071 949963488 7369717 834037993 317107669 543901648 720533109 794505812 769426582 864749346 149216635 195593631 954852334 959933143 725118583 979121083 989112865 996366606 752357462 784025387 619467478 648258288 183833911 345437562 498984891 862140542 200946269 337322744 56021999 642894496 633255825 816644523 771246135 845359018 696282040 941264917 70028831 723847101 933538816 947158153 67162649 234901397 225309186 546643245 953320280 968616034 540099090 976921580 827873127 982912707 38241706 976253341 303104268 377286959 672376548 851195244 79272174 876988436 567457685 942465414 792358910 848781334 712088088 883785052 934672633 995280570 473842879 998003618 206216729 881708731 996472353 999834243 260082474 724085532 371438085 403584370 490535140 899127108 934881479 952426376 156399601 743091450 905878608 970452902 600467677 943346790 712954592 754323233 3643165 928214073 551922277 701556241 896760865 990099410 511304682 839997031 494440024 851238170 316855976 969006886 93500340 367128350 670039342 870044867 240598307 532886290 60046920 464655166 569097102 925667371 20061411 712890235 229579304 385945535 347265705 619828829 848468162 983141058 722410177 823773889 680624525 828611805 413038015 999428842 831203135 962320347 109812649 233228607 3712018 6700304 721630949 918876383 125142071 897759559 585029295 863543303 857771945 946174719 988015613 992991155 780822224 939482223 40160839 270240142 415126158 525044903 588636019 765423135 778880167 930431418 430411605 460793472 972747967 976856724 732228874 911905384 956687581 963533357 915858081 951935312 133372975 366648098 883255564 948716005 685425887 825227785 991657253 993938960 646876264 672439436 93216481 883571534 116750063 573740430 342960333 637537677 390441796 545284085 161692884 216448729 472130781 908147013 89310436 91608615 721807045 961195144 59508443 329513610 912051737 955239535 122705509 794877267 163017842 961214270 293681735 513308548 323937848 593267205 793805126 857946836 632927723 853715994 758008892 962009674 820785692 959658778 109801662 217893148 413066343 832098619 544886763 718169091 409027026 895971315 674294633 835557157 328333835 621650860 724392562 942774401 837523662 914440285 522617725 597477778 872744102 933921232 464924275 698793081 964212479 995147978 664617875 992637354 110845551 590575873 636891216 849583942 643468755 979603975 866895179 924414198 141622029 589116415 866118313 941863913 538761924 766019995 871747357 948717130 115779845 343779531 897279065 927818789 197417459 369069350 3089330 67543785 705284342 808936811 92582520 158600786 766819256 950508219 140704026 564379068 925988941 991548648 788149859 924885909 153447558 672430448 888668926 983828299 790925851 991379509 525341274 714817642 126179005 132455441 320347321 982944307 391995613 514478886 959990931 966376538 47799560 858189437 564936246 652317350 739649276 816711365 841720450 911029857 68263504 196247927 924319124 929645869 117592746 804694720 577194138 775313164 629833413 982327764 514047177 753985794 960380444 968961256 81936986 787054352 701648344 895582317 346350010 432395197 556912992 891646173 751126756 998422124 563253959 563821025 574433262 753568125 271723075 937239848 803129658 833072249 366848363 811007310 234303268 585300318 811700458 940771353 946076468 953396516 935364157 949793866 775115978 870710981 14389007 813280275 130734411 964982171 4650847 96140580 498127897 735289387 950830795 980193480 166522747 943546172 910794948 967948102 721207500 993464536 905066503 988605320 767530391 840437250 213236128 618034134 39708584 634387793 545515424 551279734 145312402 837133233 615736242 825051231 970986971 974994893 183101056 392755431 856589193 975008979 868687968 974018921 296871410 740164270 612844184 738195214 223593947 273486325 495490267 803728486 884037801 888836184 95343466 601079217 191777259 349216970 362819729 867008362 874559870 963883124 237284250 864236902 837224788 863823946 50198712 219713940 818238897 897951453 744442967 876577526 560706988 835982030 718604914 795040875 293205963 850625021 844365780 942801243 998861761 999104676 223267629 225827745 692218552 847614069 745397061 939794726 428080888 806242638 505994903 642690724 982519985 983792112 526928347 703876586 531681555 576101341 252768627 565655391 596404706 598047324 367223461 521075945 977006259 978150571 489674067 754556627 340203513 562010831 322389441 987430275 682437459 994264635 822903370 921045544 425539925 816488333 200462427 621186046 385483321 855925625 84163230 164808844 25042494 450286243 894957121 954591936 213211752 569835400 681731108 845745475 473756924 848646768 790433798 913405557 78693601 934840439 655859347 964649361 636577091 960074464 678142857 822936087 292943458 892961210 927538414 937608538 700372361 863237511 703294024 848728324 422639476 926996847 169767184 273328434 986898770 987275096 420327174 953331187 786435313 909273291 707481254 965066300 266508775 550633365 530042044 541635579 698799238 872997120 970809988 986795005 228721053 527024095 21821519 302969571 875369080 901299985 724672504 778480762 337105772 902294352 353851382 997600606 513846898 725469854 414571471 853703037 900350078 999927825 905290837 992324792 453940313 945836446 334244391 771598417 960468657 988301259 587564335 618960309 988433050 992981088 383092238 586006488 938476548 957100013 881531753 970375860 143777265 333502091 151746152 757954073 444127065 849330009 8486127 523013116 792596587 948821885 892147471 986366114 699379085 795935875 879410805 963918960 656527771 775571013 868558366 945251456 757111874 877303259 790725820 929894494 98407721 725190369 355284521 839331570 37315383 618207427 48226454 647348278 924396394 973577303 53500010 403493009 951019736 953528166 216632656 855578281 344566388 785214862 984844366 991738493 384049412 538240962 616676220 826730014 175633596 930908193 656795945 703452932 377236341 985918311 787641079 788356290 475416842 583269610 761595336 822624031 447033554 509066000 808301367 900724399 217357356 693100151 707092434 867653533 864233334 927159700 751103746 767812201 692583007 817368182 986364412 992723004 256818622 740143453 673733912 821774152 930443541 957847358 325231172 763061825 787874260 824670151 350482962 367468751 26820461 341000115 834682108 889664509 464656289 995075874 640318305 919393331 149503412 817750337 211727560 944204410 137160843 381089502 957004864 975193591 616463209 691461956 360992420 614547618 747623634 931172311 944770248 974760106 969839022 992697790 585338535 641291428 971875956 980109079 38317020 393016275 615673428 749364644 825034714 978713361 421206891 794654813 750360764 993859171 882359277 965371598 490934953 919158875 878942401 916150839 64423887 538157093 400531206 962665027 730495310 989553206 114454852 965177399 579613302 960707418 290395558 663695687 534150509 832966941 367669738 452811259 364517255 384814908 826754116 905065002 858696341 981350985 353676352 589904828 119469300 634355960 117469196 531488594 503211792 811668945 20374296 899256823 702396467 779700595 652397023 932287459 923289372 967594890 648231857 766948317 506877055 957336279 161269867 714858813 477972768 866484883 369622476 770170168 384891923 941998169 596564947 955624038 261882775 417290711 772722684 990328199 43929611 979201755 418642373 657979074 581823253 633063150 306505832 955965721 385411252 850598675 999356706 999570337 533414793 695398000 317850141 360740197 970469957 994655931 309338263 926499917 676373058 733779019 145374663 993921801 740604759 830986194 209684299 251791986 677526559 930995629 153047010 245122473 409509107 897283315 667027344 708550834 442413956 599942747 969378713 996830684 379538680 580006690 184735603 371701181 306968936 645374594 325835267 736154205 148058315 805509603 804421317 955079261 78038823 591750373 467160378 855678098 213915491 782429013 878837316 880796343 410360809 604017580 179452993 304462238 566952542 856693078 460229246 926001429 920259995 936691402 338296647 730021272 878668895 970225254 934150032 940278479 998419944 999601866 30555911 996241758 337436404 711276046 624893930 718219018 172049242 566165947 96191692 677203107 885162711 942073967 515300077 767950879 895502302 972198927 390427530 862814927 71573191 168757253 41907410 513764426 120229009 934991614 762006913 883417684 389612316 414053963 788917516 817995107 475334583 614459049 292453005 580956733 643285577 726367530 163047828 309980161 603743349 791865699 821999316 849156757 116731547 278112945 307268479 307421352 133812660 968634182 355365540 472055112 363346093 509969746 244100515 837161151 556340822 959200311 565159939 633036657 552197809 579420572 249864039 337784608 585585698 937126212 34332752 458280069 457264030 612200930 711090855 879205093 252502593 443411496 4270519 99840844 705503617 900176346 534797635 833720432 126782227 946671402 372256796 479051171 228560392 631556368 699612661 930127909 268737595 398689637 777490786 943971943 955494941 973034668 442588965 864220077 2092147 284787416 947967312 968490706 913503236 986276535 608975024 682725073 897957834 975292397 991629010 996360737 653624614 918236242 405034778 533514733 732377591 939065957 711564938 736987473 858466459 998795032 652011286 944578854 634504993 994711052 510481536 920207341 133063090 357873678 610763581 682410447 580049641 877341909 120404951 757745487 470474089 707293138 667716756 715667383 906784501 990868480 707690037 853672175 74188080 418813533 49042370 352907096 889786012 945383122 567683303 743675756 675556771 794588837 367421020 855215568 775259131 884514637 76386212 443702484 142346246 737217504 206792237 369038148 320628633 460571811 8682840 195311256 182752836 909539755 708620829 906290690 248385112 492650875 361113524 597345836 125754698 225645389 17638125 538794827 846117883 969448122 152944372 218732453 232928728 643143420 197990281 603053278 836220243 912025277 265206465 607345466 609811875 892622538 73160808 782027958 797388972 911133416 718003911 838211326 728775056 851754338 95563033 758961978 361416103 847183288 527041938 669982669 735390531 907448984 7219299 615387582 892918617 988009369 758689687 790378468 324318422 587884503 178890905 664608596 435655764 727718569 455691356 730324774 790218964 831775932 611135943 766160540 887480407 978349529 500439032 713565814 270522890 678798423 707976821 922165348 10347848 190626563 143687233 581410114 13017182 532580373 305808589 627195856 950939786 959056795 632877859 708840632 115010892 954993794 700598467 997057546 854525110 871954112 599821795 943404287 274238618 502872744 155003214 924479872 997897454 998070597 959402271 982817136 82082678 559482942 289482048 391252309 577814504 831791638 58231949 754504026 235676118 506125691 794379231 848764575 741591040 782035651 963668187 989023089 55148476 815823798 351121642 958645505 438420649 922063529 275201872 967860342 228016541 313670731 774590432 898778762 779507497 939871235 247584469 498856773 72688613 635083990 745501672 847219742 510552085 669053919 326140495 467782917 97380513 104027283 153364379 645457385 946543325 967359497 216931827 919817117 188266075 389115615 601359539 995858422 169997094 250717031 654088172 946212090 864202693 981726406 621677003 806760952 244802410 810424898 855347094 968062338 359046089 980331111 393189845 961692545 65877169 472235035 757963790 878047022 682089390 760270585 336645299 560956243 141059868 918538743 842304975 871047054 745015547 823070113 867352478 886963882 943320602 994193991 783191865 941606674 402740981 838661791 312235981 572299617 734535849 813012744 355811273 639659412 392196327 550041559 781688986 982458420 958417626 976463870 693280475 850764672 359059335 806684786 879817989 992242605 337290983 504029333 377284972 870728411 912411761 995465863 773585296 867646951 774247536 813393977 692757144 786075742 829852099 845418380 332855817 472363397 206956757 271822983 360686988 765970302 482863584 813870736 309270935 866104026 877186190 877780258 308173933 941523412 190780899 493913982 697836285 889531831 540331366 780985643 232501177 422157408 126264835 602848889 136967583 509128370 395751836 711323766 421611239 506595611 215165675 917426725 586892823 662549075 986107002 997049105 888044800 992185292 62273486 901962833 297150092 411620738 793027107 883093839 298351603 313340452 469993602 901502322 538393959 787791901 847730973 889500474 43867507 999219051 332790960 782677760 842071083 990500388 861707621 923631750 221493456 280123932 161852462 174008615 257395554 731813572 480803951 902292015 461255355 692571501 535497492 659997598 185556092 261188362 961156421 997956561 753819946 786281783 672636265 765366689 448583306 653907032 815502427 847566431 988545440 999361357 721251600 896079621 283399094 464966194 951693176 962153588 869818364 955237403 384186718 396595507 495262761 551747721 454251493 550959978 391919382 864728039 946596526 983984582 931529751 980450250 327233236 795493255 173204937 612610331 56526465 636206662 519987497 832102476 345243177 681663399 330838857 457272148 268021681 618992225 102452404 845599252 870241691 982947170 824868378 866536464 18886692 307847642 950729948 959451359 181777879 948772908 500682353 981376903 327695699 637098625 752297720 843628053 181630695 993819762 593728113 648472715 557624181 585995284 974599758 983362442 331151190 773417256 888980276 983691884 5745477 730106115 408180811 594864633 713255273 775621165 823766523 961755862 715783099 899705031 708498222 804782439 608585702 904574661 376118449 781253871 179676205 831843968 806112701 822273135 125988585 943531749 350642405 916060966 161783263 864337761 354249782 627040529 10038793 585135967 162564872 628924611 86959860 615636264 802239274 957431215 207549457 233793752 558298532 811755661 12690549 523859586 357543718 367278066 389304397 597693254 685140582 696036843 412781506 985136012 873133768 909280216 943467201 968103260 66236709 961408612 939386091 970345976 233017964 804516585 398915608 905512299 457636622 896068027 497368204 819990902 288278175 912026309 35059493 186439114 565874391 855094016 988096130 998064966 483322768 669612439 908799668 909067335 128005821 251274789 51792204 569033216 236559619 664296627 168576051 937000516 216997695 937525377 739262333 961970076 927805641 939692214 653515832 719650860 728007902 957777942 227798989 333768806 525870704 949172161 983818296 993307555 9404099 706475368 909551210 935783416 561080494 705601600 4095739 738070132 842685308 924382660 719260286 840930944 537222566 820127934 514218095 615916129 118882180 469226998 134803154 284572526 618971548 713726496 481089045 894444569 386016970 719683909 616620482 658330322 615317381 793641185 432825734 918554342 807969523 978445357 801558593 955710180 497410540 540844239 741366914 855214038 255736290 940566298 164268936 306079102 935529734 947149585 675021395 885990955 406140190 600587265 657721515 729038301 797801844 946464024 720544562 884269399 220331473 234431296 654899356 656803880 330193579 636291124 976990853 999965774 239783629 590105819 528601205 623494067 596781075 785822013 42428131 370339259 573318504 650203397 634984547 972803197 62087201 755921764 952194486 997392177 341343105 888641000 842030072 921777308 63725453 739085063 546541249 768367118 948624750 977618672 248051051 642408407 725559958 752851577 703082349 886979788 206028886 656603313 204097965 739466156 434259711 715032616 15321752 519755467 195387730 602747551 860202942 932568248 512140549 629582096 417609987 621190385 379547841 550142171 582164687 757838769 282029942 886675012 485022864 705871476 29056743 875284748 68478541 278758860 88234494 799985213 419308861 974087954 965257406 976853108 453272717 633730360 305803 443207296 681515404 967470739 938221716 943176157 324427858 889662500 362559860 928057431 941437663 957055190 560161163 781518273 858132343 902569941 241218069 739489036 495715812 650266224 236864054 680411127 132090355 633939473 839923783 993003270 301471488 322975818 743403889 782200433 387993990 496563508 660994225 771438658 6061393 549821795 287302582 715665907 392309549 558323527 987340664 994962097 89149425 941924015 635710055 890944046 525517000 861135258 688788449 706561686 943211957 975493634 816873285 858596817 620880049 666962600 471175082 662681609 688056024 801522902 326304607 552514692 749193096 924664438 99271557 192542823 481105110 516429684 554936069 600686542 501349657 900742415 741934684 881902738 485838073 677966307 764551175 823004757 261544660 966916866 478134281 524922107 693812987 810330726 565356321 770269868 953387241 976889323 969271345 972445972 584012427 590284211 961071600 988306055 666394460 888852579 137556897 680733118 614731256 735500049 85836769 648413458 77081331 709844043 325912116 601061958 766470050 875592138 139800919 661863064 136144261 250893848 753932771 874946187 584732839 736232723 279808877 495866550 947249509 977815500 82788713 825946764 254229485 630492951 554504732 736500483 759334059 918918521 707154561 914237953 55424157 951824568 242112144 564203297 136641352 327711336 540690669 947754084 734671992 850313132 689944986 702117076 855153932 914922939 189252013 411201602 404459667 952739968 366374177 687856675 528625905 703074271 258090559 963709379 607641523 904191768 759443216 913411009 800757416 805107618 890595616 936476720 686380822 927684163 495417178 622045250 697219746 780296418 656192770 981127610 93515527 629948074 569142396 680421363 997110735 999110961 378731586 647674324 308680648 897251361 608820201 682671603 479351262 852168268 715918887 927748111 117742696 772614558 650786775 784785044 258435304 569757154 680636069 949477194 473230227 937845948 861132248 948073261 358504186 709043860 648855395 730719067 18010918 423464233 326722631 995430661 898107480 988066805 504163629 619609461 526496865 898153713 419811517 580931431 45019456 766798362 910721777 960102357 244497768 584023287 557761156 611787924 81102363 299385714 89420132 987870437 852146817 977668160 606777601 698041073 378346777 631403343 271774109 757656796 417779217 960378152 37102562 506125822 278953477 972697670 128611651 718241704 781939750 882007025 375371001 521156136 214621009 316356779 249186948 963613386 822511923 834393878 348222444 782141808 352998017 441862865 567755682 948661310 543847703 555974008 295578780 900100120 676055297 871118572 79416194 105190403 33629787 250809995 135111532 907880713 595581058 966288200 846064376 911930145 524577086 679664630 930703096 989896879 783524392 997575612 577261860 994999083 382490001 431884575 489083788 824894173 492999973 636716560 325514808 586825024 474622552 750988414 676856581 807490434 222669708 945188901 802247588 943312079 132876171 949343937 197533333 551354291 514578302 659203159 408812658 495753783 136506212 893696671 659468888 932884794 87550118 911159738 812105267 987762438 1225544 939356107 176357876 997735126 416995165 607348457 713555126 924650746 391053221 759216034 542153245 736153636 146182992 977885647 901907064 969341918 491983067 508676483 302903605 326315520 283782517 807260697 865003684 890166758 579821117 779473204 792909548 883683751 118702815 351287220 233380588 310598408 427082143 893421912 427035268 743631516 512389251 819895235 992983892 999879805 919219779 941496927 269728384 889668710 915319948 947934660 730172225 919679085 310241926 315315646 915095641 930888399 118081310 867742106 872605659 889886081 64882837 83888477 407462713 965200022 646136899 891622213 143775438 610397860 933667231 975532239 196070131 886030659 478215965 975475542 912668912 948141554 896635406 911803102 462199198 560766760 482890112 829999861 960379480 982049021 996427311 997604632 297584499 979662809 836413200 967725408 47630965 232690781 72353472 504934213 647475572 961836747 361114490 719477147 184776692 627367025 783233804 915180433 630087541 736079328 971697293 984701548 603050374 637154126 873192924 923305830 145090315 558209358 659247614 690245293 121334830 555241111 671436862 693099518 540597069 570765059 939679037 950289603 443543747 662607826 454052241 991724494 546125879 601099755 652110854 822396760 794751359 854787595 588033820 649929083 492211892 955481138 589482123 751247477 502175204 996760591 86679663 535783338 310637823 925512614 622300542 733665302 839985631 976122571 310272686 442277679 962742618 991130532 195710109 656356263 13174110 147326575 599887907 960161356 537242382 579581550 195821234 585940066 64461995 969318173 566787303 731411070 393679948 630962645 410704096 874733471 989085535 997900253 30107161 359263738 533766057 993008096 189111110 682553920 813422950 865850646 241377028 874004156 611031245 820333746 317747904 425733999 194937393 537588251 116197263 955113417 448764532 786336180 212704555 864976589 366909275 504678647 953503304 968814402 554289302 833833850 535077745 668124980 442834743 944328718 369547007 722841191 840437642 948931179 666965274 725491666 266597583 921548890 105253022 126044874 781304941 915285820 197057334 351276648 305761095 524123719 637597925 748545673 20784245 951980754 254925048 616938983 457800899 938712892 160251851 396535270 616857002 626899913 320527120 715101143 824732529 894906018 321436828 445984088 170019857 521204719 865585772 914959668 587110105 607484207 908904049 939099213 483298882 789126858 507501374 590482002 177585001 977829828 679046904 755212903 363100018 847016050 992804105 995391450 517058314 655617466 739208114 790667440 704206921 823378182 947493185 951795367 916653170 986660817 530571390 965400966 5324415 744721074 841856974 885149605 224196684 972226158 773924506 831306588 477790672 546080305 69505346 594646828 872294027 942430247 536675054 646486781 695738195 759670238 729772418 937569089 284787699 898556723 275345756 339084233 720536250 852581625 905723286 959081565 571584410 849020217 276579801 346723139 183220460 414358375 312493165 861815531 824094972 855164728 568234991 606433297 188754941 777789831 304735588 401321857 747529296 783648062 450596740 970880779 861765431 942457044 578612052 927179275 607589356 956483962 313217687 567273406 713287110 742139659 813429005 827210580 799880237 816815440 66361061 851049444 977699636 991936606 86331810 172190548 21208653 658449427 488192724 997924340 750492631 874076908 992766984 996146448 523218124 568048124 193635344 967205358 946726768 947429485 424675077 451869155 72507746 273687102 418284184 920913841 600653080 705784797 632662816 755596617 300701836 704782134 314072864 327627143 53744045 716572258 150449472 452553048 110943317 227338294 734372230 860835307 149436656 446895348 764600607 886541803 762052419 908377806 52222154 733657467 423719256 702055636 279579169 568176117 740529675 910150958 483314967 982104804 856131698 936300500 444243382 535913068 274069585 881011206 359084699 841766122 157536800 420302515 939180765 998047195 927714647 972690265 686900946 952393946 334648919 634360877 178310729 270257223 823046797 850855393 606830213 889988996 846164300 872420722 665690744 922139058 621547090 843855628 254724122 711498785 308468205 883396079 195679330 962280401 482622754 800547314 97881633 360583873 48622162 546176599 356991822 759076038 211206091 457166131 8546917 209006653 557545218 837975451 177304165 941952510 959413066 975340380 853281312 995603850 304311392 339050857 3790092 38406524 55981000 941368378 994521442 997036016 458880063 683548357 763459374 943781165 630322527 843509032 830669362 968956622 581911124 647258809 804741573 986233371 309721800 588101993 99713018 626741245 857304779 930911814 853534423 879260173 378851503 727507324 79607003 697583655 415038586 595627494 326269133 724252555 566765895 886218085 170494916 540139157 943223852 991847665 644701240 968722748 323036667 852576348 744445356 989919536 598948174 743177322 303250845 907084293 416265460 971026090 751088911 882941845 350750052 417283751 754326253 902821982 78318214 107609136 590617328 920053656 439763559 587499857 526338581 686956567 804513634 923881008 171491907 586232773 202510385 953274102 655501008 876719629 699820355 766129280 225806818 937773407 735277026 920984444 308734143 608335470 924511334 930007412 108358122 676430779 471178109 857225266 298132010 346472244 430605103 829893692 183035581 285959867 842388371 884303078 815106600 844796393 194859925 616508325 452144294 858923931 530825183 833078094 804765309 925394467 903911576 943602369 503148411 993479346 910462019 920229943 234618866 624674586 200838287 712134799 654996631 736045663 297810118 594011850 664366315 919718283 183726349 416691439 70517156 565365803 732450626 948691684 676969963 767778440 730298863 831891073 49112567 547375200 257329799 895100038 892313266 921609929 966622463 978200464 577229610 744333117 592965210 641921922 424159071 810250523 274720870 568456391 402664568 819618381 360730757 642041516 911015015 921798083 636002177 916027882 497582455 507320126 969925126 971327622 776333289 945240853 66094094 254209861 17649455 244968003 51880148 595402262 208189834 928071182 647084016 868352861 803381661 823361255 971795086 984521915 595266483 785584110 373416751 646415000 830964723 998080201 273386633 645062130 395749822 476704174 475597656 535148950 287414313 872776141 869136089 874232498 787554026 869849804 688757471 945302084 522200033 886931486 81098188 292539591 444338132 729964533 304066204 431985801 701877688 963764361 988779390 989966329 571799003 783204113 170293324 587109668 932745040 936254227 855254229 990099403 319253887 372158479 245455289 654162904 655686134 937772236 798021219 919737751 825644391 862085593 366933195 586333568 174455856 546143409 629111868 951842754 519752316 980341953 98611554 779592557 187981545 427790972 342481998 951024823 136832130 961551139 129786368 747138392 233471470 286099492 238268350 797011861 251952127 910140335 386207562 893078651 861008258 917782614 419725238 918904707 413178828 919679529 151283537 536372649 239596039 973398756 609234281 707740844 823435682 931511765 616519524 892811571 87327462 262347350 523199612 584421231 331939144 468965798 594557163 666799446 670129973 929519860 950489322 955640968 522251978 905724039 654713981 796734942 667088673 996616457 440948392 936847686 943668129 967067743 123043092 476126356 206530670 597062037 374761790 416830419 10201094 783927157 740538757 839904367 924526611 994797573 470094570 965614951 252920809 431215061 911857421 977232833 127203911 757206695 797504617 971141740 206177759 417293885 188677819 953281279 915775356 959528201 616972494 629223111 678209017 952162513 418697022 690499072 300697190 339745377 195487389 301737437 268237538 475119411 410794115 961316036 6462221 374079098 160687445 950497010 329228907 786729044 579193613 937181890 150446640 569652652 768270984 825311517 555357543 598130272 429221963 582708934 513628431 794567756 26008238 880261014 934130239 976805915 280389907 470310201 627378581 894433020 585790965 995046051 724403079 924864806 856384056 927091943 660684775 759573508 226892202 553975802 189625647 511803683 502030960 659317682 295573700 545823631 888463866 972340423 362333890 886941309 139100933 806524341 369295403 660874114 230594297 533603170 760095553 973656219 375767694 628706994 600884730 960088138 375437739 991363360 837674895 910960966 212345967 735523814 926758136 935931010 210946817 541621590 540213345 973924964 76749988 682775134 990413307 998032557 225316545 334492782 940991557 945004712 736921609 963349882 821746294 970644844 215541567 856309380 22861138 671268341 326547621 889178452 708763664 750850441 290046589 902986242 911605343 994846960 522350929 715387152 425190012 963138030 238163394 512957486 777341884 892391662 522039870 966373735 352898789 908308261 734395582 795523572 527204700 669455602 136089040 646451469 807708419 970504604 136792614 913899803 339549967 870192775 618757707 811242453 821997409 950545320 825885038 980289220 517414275 665386111 616970104 897304961 140786943 347240972 476129521 613019747 496106143 899420768 452394000 826748102 176548366 756331524 750330990 900800735 502816408 917177511 367973214 913833187 582202792 894659533 993668938 994025322 623682603 638329581 860899977 904875147 364436299 799839194 1404802 664242889 627903992 825068038 78726360 136136317 777575194 828038149 182967486 256899801 293012794 644297233 145963581 405288047 309443857 844319488 258563247 437966815 672992940 711202416 590220987 708565658 695318477 785429073 621573143 788699796 655827339 702448061 586864059 596086079 768571132 783359263 866188418 951759464 444646820 603428560 560584685 965819918 213277417 758512331 305825010 794599106 343643753 880038836 832799913 836414938 16596763 973366071 595230904 666479085 194362330 871473614 562940832 697014222 53528779 782549892 171309851 609708531 681345280 955482990 640380423 962133065 135949731 878628980 906884484 914502922 284113184 643986939 574399783 993293591 196294617 402432841 181336799 419332196 34410851 582389790 445664548 896775411 643702502 930385417 835447304 995325853 436250427 738951479 284297318 831239522 263733220 695761903 32426549 787463310 195453092 397447530 785986316 921055003 970593058 973606827 24119781 774208431 400262885 558082176 83094156 592991008 898135968 944196474 515655416 817443132 688437582 946340324 57516317 87007215 886186131 978496249 469843584 516760020 892394819 974147949 240399383 623151373 122554244 598385393 593821174 983505710 668074615 910081467 690695733 894586658 415091677 511931829 385021187 648819593 504281807 784126668 352027417 618820855 371883170 898030020 937910380 970762832 536989492 766762371 494064033 865080649 987156672 990608690 245243787 553909077 285189636 896466279 699803695 783894882 598314213 864756873 25934852 486709056 760653288 936684767 836937439 864245127 780357566 840723653 356396223 482819695 180116492 342065837 120307734 558720093 706845616 966066599 247167961 566689721 197262614 216116997 460190618 696952138 521757192 767939123 444219915 461783310 998146973 998551563 250875993 645268113 31985815 261396993 419792614 799875274 722832409 746849461 353129658 435902941 848511813 933813409 29177850 818412764 300111240 809606747 70930689 144224664 458056082 779699509 803094575 839600045 633756413 764918872 735563404 977313043 139243359 948090636 151168454 330778813 955007230 967114528 803401877 820775975 493850580 688319420 259569615 897362454 365533104 946686299 165950249 382518778 704228603 955453477 926451077 942539775 896467863 995994632 440642112 569794557 963038101 979676826 587359648 830875999 171309494 722172730 598420053 767809398 366834523 569468275 277729686 604154129 706020935 922548098 533782242 910742643 5975784 589556197 352328710 888550346 524534589 615839867 261549446 600358272 201202858 410704769 605969163 923634110 311497726 406307237 976617782 993967639 790439883 989947957 608836716 866084307 417803581 857672931 606977437 837238956 713831962 893430856 395979998 602658315 113495011 685426930 82023686 448915409 829779396 959091061 27955530 945904207 850373563 962870172 899370903 921777820 614826525 774698435 625353828 902772411 81825376 388136610 747681596 839390865 514101768 760369996 732016803 800619540 721323402 937536321 263935788 819148164 213453964 538918717 482368615 930983429 764127403 888179922 250776788 378170340 93817320 493354798 205985542 270017071 177272833 225778270 26311294 991861438 802793012 938213542 176254746 210237774 516367536 618220701 528327307 769373792 157359543 479423176 349279834 394303501 379816477 875398623 206205997 505860875 898187657 921773787 353964184 701100625 859263064 970927413 869147984 959460747 371589598 526984400 560086275 663428528 72504399 547391947 731739014 831709431 237588856 342153334 687863522 886888500 531557547 860957566 67816652 626239250 209400395 715623813 652422622 862684664 321333734 810757988 631797931 717894488 857940756 957077425 531769910 539010608 429499051 685014491 687153971 859999483 350029679 551851239 774169661 930481523 70954535 296386302 417373376 550379459 584344808 993368079 494414488 584015239 666941284 721383349 969160379 981718507 585780 911007907 281402608 832315643 773106920 925811675 271331235 428703565 849404279 989960609 201444048 900181920 973483994 988618173 768742355 878638597 127085655 162794661 966184478 979771827 271675218 890867511 919628134 966768041 623281092 902168020 444821180 814014398 93848894 446132724 735108755 946267058 564705131 710643122 155845027 604070310 679057087 749334944 577998134 897107980 412316602 912055858 317896826 526255179 994925647 999518877 306705101 928288250 261564675 523082899 626096643 897520527 627037331 699746934 52607221 475236294 891273131 893686271 364407035 672683106 982116623 995260814 74181333 213112007 381269562 429399554 55277246 930627580 372015478 573880499 194569119 917771897 363436526 538890525 859631797 940462911 202127570 483036875 136397850 559952041 527155867 631938674 901486270 998535375 930218925 933886601 401095753 475136817 545108377 979921744 922383740 974666715 361723042 849997497 485227384 665451485 550734736 852050272 501028156 828949969 182179480 551693983 43443819 964710256 146730359 746874126 670148340 801741766 674208480 952817088 489985540 915044440 863731815 881960238 921976025 977456552 854698901 997792931 206023119 840967016 413331305 999236593 342580630 585248414 568940925 932366213 186285626 466508541 895807888 956526783 404699090 439539644 625104201 864473655 294684501 736214485 4256568 534945346 604413024 930575112 375339483 686507623 513645180 865032514 689917714 930466730 232015013 258333799 752537181 816088609 959852896 961268658 525374862 821221090 312739467 774817471 813045553 844258158 459046807 549180654 412741805 905298886 902657215 955516608 657109803 855067296 274724556 697295842 314260769 761115463 898316142 997631397 11100016 361591650 736197121 805419281 29242854 574190046 111311160 332255966 729572248 734399645 979227973 992855314 5542741 358965159 47258503 374547594 415807570 446172471 317806637 321479662 440359137 957172340 685059356 828304251 757192571 880967270 579636776 800623542 296294035 404674247 881380432 901731585 636294940 954352115 299793694 791328743 705102262 874947021 216036374 225154549 341973781 610287196 500975647 739632849 582356349 683107379 441905125 590645905 162437171 722009125 886347939 999691893 916641827 949818614 470500471 768515065 146904246 514917513 283893879 603715235 671337293 838451188 351087042 568304347 114452654 334312016 264175493 557333623 514159376 664450194 364934521 719230853 925906970 998640046 239202929 949203013 31360984 647559168 793608648 808532488 850641829 919715654 43825872 756236872 404896287 496533792 721589454 790469097 998307272 999791149 997612030 999158631 745047453 835447451 457221721 612177436 663125275 821408296 239783116 846753923 803206504 992550186 844139185 971312301 449479546 853112605 575328950 990515158 927764828 951487785 781874371 794439150 282113419 498528236 564075756 883094547 472214111 927470172 374303627 862726424 314542391 918316599 485571029 752644562 650476557 941552278 39504988 529462982 379059269 782044806 88355951 853977204 412566224 721240135 670477068 819650096 827150492 980065707 757120860 848107012 18247963 943193928 599182331 739363115 425360401 741419648 884785273 899701713 195414704 304603780 829423746 883200459 428674583 489760300 776293647 871693031 833644072 906118825 657392585 860030077 271870593 548187203 376908561 740648397 304361151 532308435 820999939 985453527 832848255 963553137 477920033 789966918 75346958 768384570 179400737 199531532 649034472 677632762 83771303 588416170 110864749 550916417 392993363 398203452 692552405 894780636 331905902 742560806 523237303 891909397 481233857 930780903 700696616 991047358 998824094 999167107 82684335 856366794 699469250 759676935 655142763 669041976 658554736 744437329 386401427 706623908 365386715 703131352 578167928 774335791 367678863 607483707 342473088 731419513 477620937 616121077 128985347 906520163 801831933 828809726 360518431 789585653 623130851 864002954 582818074 719529214 42317699 58855112 297496702 613720004 471470601 878998274 947523232 976936994 117506272 431197619 950756911 986640909 767455814 901923415 138829272 346198270 716706700 731300524 544982498 811059114 78269351 663113119 708680198 968699237 862928932 944548973 73379251 903694709 122552541 590684852 255280876 476921745 748571021 763141093 410947934 823030680 133832878 619571815 405587296 941175124 856186534 971675106 123981985 163650337 822670395 892423475 106099163 893050613 137349379 157225334 250323826 833676374 48810173 364945951 631153258 899237283 685386784 773182291 623927098 884060899 502636318 661162762 860168928 993368150 586818771 992496884 289695116 380236892 645133450 981147032 854164147 858006937 207329775 317498607 726573040 942663400 655919758 940964165 428700666 934896385 301004179 659160915 913926840 924177557 924112310 957267843 946724381 990783715 565577828 890950302 888218438 941336983 670452933 986930673 525592944 660672351 503852233 811930879 769933883 862050672 339308550 839173466 971525958 989104925 231636210 403652254 252544276 649880032 741766026 940893933 730044291 813534282 431505674 606699638 424464017 631366176 101467881 570038880 975286582 991356977 413336362 889238639 416997121 418345402 404706713 407374501 751905778 863177979 600088930 885402498 455447168 939493364 15451354 909749325 90859615 609949853 266939023 577367928 823325717 900966584 443890480 839244990 87821613 975348734 84454210 473457561 415968670 585481627 722545286 833529139 845561669 902176368 256509290 767298484 575798390 988550590 824260834 953061870 8774030 740059865 102700792 161919833 636619063 974955721 530371760 848382136 842330977 958921098 769084217 988152834 94747581 398232148 11462647 954658585 45593065 206523070 381776239 798329005 232666787 254917474 547797029 918408509 139154537 500303493 778818256 810178329 103112572 590710827 780393811 830626468 463286244 543582747 998370820 998656431 998444770 999984944 565699870 567017578 493322472 789236760 264329060 444836703 669400146 988624921 49188027 960654679 478197027 721516534 966007119 973556886 221455133 761595689 697041883 698342350 498122351 974063011 747019491 865881472 888295463 961966985 98955214 934486015 402052080 521611239 329058410 358196525 19763517 655366643 830785166 981936894 957290928 979664091 28068327 920764510 757926210 785230642 575144782 863712370 449153806 779663843 605827203 655966190 68957910 166234821 536070992 723658615 215757969 811525035 892751853 948658296 551072225 968413609 388043202 519051739 513936362 730740672 454965382 755428491 560091046 873555708 257185078 922331195 328806134 921796291 49551633 806907527 5419580 299342583 475927629 883305221 54639852 838097520 164964102 909656363 234552746 658643528 445838134 789689941 919171620 945434291 985279797 992968945 248446034 890761586 457547195 674939052 630015829 973721569 237993349 608048868 722728944 800999169 738657897 987094945 942210608 987250549 618381309 624579093 974954496 991139724 513656319 782527692 782831197 872529118 546978089 645106599 658524407 741474877 312882900 669168309 996890387 998253811 431299296 461687096 349467463 409074535 825899658 836439613 568449887 709397063 907675704 987981522 138313510 860670746 857410267 913554074 716589857 753199019 174876909 877666138 32581012 699946381 50291425 506704902 455156673 543695639 119607329 486726440 526943688 689220645 969836287 971154886 153560484 653440673 552250177 881230377 253717740 643552349 130549000 788079002 803036642 970353016 682089556 798910928 752866697 902106436 97490627 938879958 962529030 974356493 511774431 553189837 521515682 820951620 507435529 608705898 840895913 897137010 991822473 992458825 441101568 725748072 816746940 957872740 668893504 854878793 75669610 895971783 846551655 888069836 463288216 513830495 787383752 820953134 764254332 818033091 62312635 799875908 404549716 435483646 513649512 587874423 270237016 798369308 906653613 998020917 646176813 987082756 928584206 933784486 228251603 616273332 609840585 738278431 865124064 972563254 445752113 905116635 163098572 546490150 652362410 916837878 908645772 980792716 836640301 897341040 669524416 992607377 261036240 890704691 386351945 496175475 312006975 923222544 433842741 700103528 284314457 649489076 790559424 997113148 298191852 629938251 29088762 99327822 374316413 593306014 482955978 785015844 753025132 978634478 671118824 886554051 519015903 587073146 37084164 88708836 689851206 753909427 766548959 825603630 448332976 936418763 738997323 796928351 96450366 655821899 381342525 535397174 767187540 823964925 827814424 935938337 933518275 943330874 850480296 865850420 299142366 688469451 162443811 433314750 809065536 926583405 294550204 950111400 309023835 358932100 119196513 283559510 308112161 373969827 587807523 690797345 523086114 847046108 91018904 300680304 656890486 869144142 653480585 742064454 8022506 36028929 928537384 966729297 908781392 976664919 103558573 845346012 94925335 627113081 344869368 702014622 277562216 810848876 122764962 533554334 264889490 842314457 55451898 992580378 473404553 659598089 592874828 795669443 909299969 953724822 145787810 669330107 837482924 895107849 641264193 744921969 107641190 727771318 158299316 329164016 671127873 867328899 885451427 972498875 79361563 409047740 17711893 467523403 931017643 962048108 47994596 268712216 593487958 772680738 301112112 317821089 889675458 926476232 63621420 241925312 400667861 946807010 193286701 935806206 373058864 959665342 268072656 547256765 558272097 957116829 551815721 577500825 39686305 521170574 516012640 961746401 912184512 936544640 697897680 812017966 24477705 992886607 760772462 849209190 927368939 984452142 677664810 683614719 527189066 684298827 684300014 808997545 600821718 833264572 63502750 163573856 731474549 984897921 856343627 896042762 55509838 459791406 339079853 798449160 385103435 976032696 487156659 663599497 14083604 489337454 34781179 118001997 63016139 667446112 552322293 789475232 729111260 884773494 767812104 875185361 599611945 843268858 429598691 893235349 401115913 846624378 273725272 300001730 928897453 984094646 14968433 300125901 539458890 666231868 174949355 245517252 15374311 523268351 800212311 948641508 216739025 721154817 820406605 905573832 780313365 980829608 986256358 993490980 332982254 930999250 586165220 776004027 590990402 893878577 440812168 686290194 561752117 584195112 40913462 819642383 430507734 459670758 951901177 984812393 802271128 814322780 578434177 624379062 625083718 644989998 378673151 875141935 911613961 965446831 991179104 999583837 384545094 857120022 567193954 721623425 241596136 668269931 35083523 733723672 346041799 950522274 192690691 476968459 334570406 872375744 346481374 975057976 474961167 714248961 898418189 928797692 439747259 842978914 696371404 712525320 121719375 301052125 800991039 925706757 746694846 848454937 857208397 861034418 434904566 871482641 995898293 998406372 150487628 559491520 578700355 653940555 400930340 927052727 864630915 922569726 173523275 637136591 365734893 832845830 810701995 894566765 267650656 727601887 267071462 366776603 158152146 674182321 595958201 852344378 554508346 976078654 237182571 526336868 652630662 847096370 567024185 850962035 373517088 637318927 246281161 414382291 142535368 584996317 614022976 726447573 563180357 656368359 302665975 401081754 218364807 289078200 125021838 637683590 850150941 923824166 137940782 468103552 359895421 377534602 20098313 541078051 155957787 654578073 715538838 918296135 578209140 688051248 319659090 622170076 373284833 887519052 499446149 941017609 335525707 515000953 886645138 963225690 699803272 721522864 844793547 896568440 995647067 996973170 436501461 747281476 827206681 866597258 354240127 534977778 31366489 386842917 922898200 935037338 823644084 899837783 846531811 875739416 434094843 863781628 649409925 822454304 440339324 976607223 218133330 520659937 316097766 859606024 160755159 832158317 543027872 566173541 582159878 881132983 340030562 701114076 6790907 984357056 560944343 634514597 432773678 823910774 546249488 643468587 364678647 510894566 80339856 806242648 610530980 631793372 595508174 660770552 680150556 707935639 833548754 919354778 726581749 937170445 502315669 741401921 776998646 873079383 684475473 823445927 225640472 932442707 881919932 973383810 78453507 174616805 768259216 840979881 359743598 931579504 1604068 122285409 49352679 608881646 83095590 544039485 65108784 382504113 972121240 983376239 223786192 316468365 774077525 922456378 908696572 972726680 194043503 227701679 373193426 473302644 361839469 805369734 252889294 955527555 3090315 656013703 478888942 825474826 232968326 390664996 683313777 766646919 798809902 834001349 391426565 464868234 206962006 349197257 467469117 817594037 77025668 547099947 393419147 486127469 315895781 490077809 739879779 910649357 841652361 918523376 479637431 609844760 928829296 995571407 626834584 989148468 731848828 837701908 888097257 970891133 78456830 426216044 742267220 883246368 246660448 328790338 54332834 314133301 119360357 639469999 709522051 987612316 275881957 358460193 49055214 608514248 269197254 482542111 386425723 768321566 717205340 731100669 130100980 716158611 769549299 993097854 215972803 229403471 616994829 849263842 312403115 523524401 956633082 970614620 771754460 843332117 583754311 767363301 249538959 316099663 987065423 998604951 557993298 635907861 525451241 873933698 226765023 443227229 853839187 877117070 704609691 737781704 208334826 566396340 501636771 769203567 469045608 544368852 16437340 276710387 158164749 896603644 17084620 313277100 738688620 836280122 540125275 623072773 174708920 596085661 854243359 875250609 108666687 739509543 466899974 990752902 488575906 624407862 995482571 997508318 413225272 895925288 519603600 851169077 90321575 693586594 307345212 632123763 590222586 649225959 690193598 971475272 702752452 740211332 754679417 985330952 137645878 177791638 997755411 999715101 601605565 987399212 170093300 280539946 794813891 868311533 560521741 583089938 704189929 866980838 94911012 361053416 925505903 998770152 101674690 832113381 929614866 937977847 856041170 912465624 1865244 40222067 93013323 661672477 622488116 711152326 775903412 783978501 800303618 877891740 214484512 943971157 153958401 302704258 329716474 780477433 165266286 668428187 852237687 898350169 417718862 917146448 144222742 600800033 428276988 720838787 489111593 687506607 507127920 668857018 550446370 819942973 836123647 959265982 825135593 867372391 158428030 934544120 15782006 462852154 236699771 544908841 239133955 884158635 641209128 765902202 467784914 841720808 173906351 708032101 94219153 377264591 751359031 803555893 460663039 610195408 107834084 310043794 523946398 766976671 588398928 906240405 921676104 964712230 781387328 931312166 923719069 998124940 243779285 505338602 307927296 377669346 214704968 582733916 195520717 331349664 247825250 598563319 961986336 971006320 216332405 706368923 837493387 913515521 665222160 685075492 990218102 990982294 117369926 591891327 31435844 696484607 470174689 662886358 483367856 517781684 137849940 896659138 633818521 906806779 279120261 380615451 175045964 319511677 537751776 644623290 394247621 561537280 37073846 308694076 385538435 477773484 170674826 827909038 424099211 969397992 131697619 740410192 213995379 418950018 246360106 298117189 338526734 641662425 816173988 985302580 785581970 999141864 182260672 372363192 612311721 711835499 374021812 970465568 208498986 987194084 138625108 594052594 785795276 994401731 344105360 622360798 735105439 744991470 776855756 878741174 560478289 926938584 399199736 641687299 530990756 603764179 623830319 795154406 222122115 590481830 565539946 669786462 882249430 892189022 584373926 766245630 830880148 852125716 221171149 538918372 782457955 984950876 840332011 929539376 974320831 976553934 865772283 917334385 970925171 978609369 778697932 937099444 676585679 936612955 705498993 727189132 746848887 979996526 976545448 981112034 865402477 869493537 570968104 861490666 673604311 722117761 635836931 926089706 368874315 621773641 916395279 993748991 347731323 404794538 613734247 773433190 678417951 981118597 974022823 992721712 876187585 939235564 582920206 920132221 903054394 919615488 88481649 215488463 375371890 548793601 875237893 992268040 68324356 571615187 188431658 314226840 387052256 996584913 972282157 997222528 267423204 440878419 910408383 913059921 409834341 798767677 830346494 835752527 438022715 571288752 311917859 556295594 732467405 945699281 208887311 752731140 592038597 977697908 496247125 648734255 907750990 974535392 761175420 973862911 752641814 900496789 855451634 880093194 968119739 972161992 852785825 858691542 795187870 841371062 718022337 987245656 292243228 940104938 926931766 937558197 853391943 942659490 401695046 781628881 649412671 699398638 202875469 536718892 509499986 562083563 59507525 156507841 729065787 967053864 4516661 383047883 18129755 524691604 868772991 869151220 567024748 954222737 142410480 734001185 107152854 888748146 492316279 851158778 257510243 331234560 514256305 586185155 624124497 636042004 708290755 810693907 310126799 801052562 165989376 387396050 607092605 884908721 957687924 960319985 744299003 867739216 984426084 987028338 394749293 541180820 176440319 411965585 907950450 912839875 611424566 914019817 491269320 635890577 647122517 776483277 149133487 704634771 399716327 568537227 843146598 868791673 464519959 807765966 959086092 983289005 897050569 976201204 918195198 976387376 817576134 886282255 396204878 992143200 725693687 840247713 714639384 821507274 226147922 390939402 956176037 964016007 559698542 620741422 472344687 746092588 493429956 519638480 973097823 989229605 208083526 915595880 10085888 89813956 717038439 896366349 92523540 941531330 254118248 805875979 138899777 926095875 451017400 696963468 482837835 501359039 698441129 841973329 880401884 971599275 465600010 554638864 517102322 717070184 848797545 998598325 297971758 956647414 596470911 659769741 261762262 742990791 88716523 278223889 963104784 980639928 373668630 880975225 757570704 958064609 735292759 769387561 88569078 761966702 674778758 989305550 129000327 241664285 557495911 572054389 780421880 892354962 934788040 992654277 489622190 890347034 737897143 822241202 324057387 935224428 817985538 952848679 282796833 506128741 269623483 723119234 57495937 538661913 756369495 973744766 379499104 467191009 92980982 690504497 807494845 979044263 310543366 811032226 961789195 994981152 389947366 923884463 882873155 917790341 726883288 879130136 951616973 971005669 608073070 876778644 248979977 922767326 450883819 861451244 960273473 979575227 294704101 762995594 907497918 961177761 351625243 502578368 600320214 761013163 960086617 966768709 104879896 573515182 857109131 887580929 626073308 631517447 65837561 715003800 182499498 274419356 435848350 446307971 404523705 408312370 616062146 809709622 675930693 736785785 450936356 863215348 374314142 618927428 758724803 790576865 674606052 682749635 802688096 819261769 722319672 857490543 518469828 616434707 47035101 723291003 783275641 923473618 566021853 976355432 132698401 731199331 572839855 852412480 712265681 813100644 445157143 993921729 251892810 354532395 276826628 846820770 734930600 953485048 240367305 503338860 493402631 794245312 581999370 950108115 167856341 348374620 173966188 822519954 675857097 875666284 308405925 382430268 757306066 791753762 343722155 706551875 706060202 792148726 252741754 826985948 324301609 656403053 949714345 977095894 869001616 997839770 344561288 737950238 695283621 793183430 907304469 919292555 503965370 906606278 467725408 854471238 2445971 633591024 619734493 788344067 310856270 818366294 29215711 501293675 621907830 910890813 110737537 571913524 47259031 703841686 43943279 833769208 675254052 976145478 636712541 798109180 364022602 510725509 198115469 465947387 7162084 760114222 842683423 852954932 407799427 980467806 31676735 153991600 865605783 995037533 101991753 366462664 653943670 793457146 142148683 858441698 50105118 704845870 395685163 503513570 900064033 906796795 822880769 976516437 724881568 834385525 477785101 805194366 739014565 977919724 751344279 940740371 873138210 888925010 448493135 676048906 583028135 624033703 407434066 837980886 127959295 444016180 739470700 987002826 13982805 868818124 570165575 828808632 965005913 972994998 970567730 985371552 205947959 654235939 79185052 540827568 482757115 872587567 839787014 896262918 127863436 946855252 311540969 800539321 315502931 901867820 133621934 583735351 870118009 897496658 947404394 982468163 94809881 277721549 885965130 949538667 629154049 785082221 102233719 253667425 918388974 962935813 645520529 774706883 208712688 591709831 296735954 894572268 287898001 890335030 926212050 959514248 322857325 380776109 245914277 474998765 727726681 774500143 398953037 851823919 56740740 160050820 291985398 456460680 819046749 940740292 744182206 954989785 77383535 392908293 680259707 776285027 831908343 877129795 805323372 809191946 318964334 427249053 664288650 890061281 279251143 927270750 447158218 518431964 915432844 916837772 24582260 931327202 214497534 365901798 413119792 955298632 529499967 827711571 462536789 874344347 193795631 618377813 233122232 532958349 90008800 849306135 477737166 569341094 62982253 971422271 320312992 531143074 237683197 841676861 990200215 992713947 2078160 255261958 784454823 806719007 945711913 977549634 653559564 689317205 498830588 739756101 845016412 893070692 796911686 882258336 260898235 483870831 840764001 845475987 183208965 278509393 553454626 936283472 144315557 789758622 414973023 852366751 558435960 824628094 208361035 734950077 142094039 822155184 478942400 587847762 876935618 960802656 939771718 992563151 884507046 928973737 802837816 983867315 419527662 723964724 547450981 640999274 592364042 878053171 508458398 906078467 244382228 697654889 219500182 613625642 903250874 955149192 22178741 329841773 464416314 908613857 460488468 723203470 163163871 393250200 995401020 996296359 601502583 684681183 247098307 918762345 999043612 999793370 974807314 997941026 295089933 408735211 742377982 782014268 864741133 943382434 635508678 775453185 323089303 611073110 316323038 566672144 314059780 357576595 900571818 958217247 696453726 936546106 478160465 710926181 219840377 791219017 418857605 626324303 293142394 558702444 803248514 978008704 237891279 689104745 585232837 854161357 961390462 997883388 853152792 853338413 934626940 994806378 860302393 877350536 775190581 913487217 944301229 986810035 9725020 352079580 553390481 811657265 285355052 959813115 242525152 818133720 709975691 984291612 568508221 938451238 679318675 940659392 813179856 950186577 686153700 769725670 49000574 857368336 521696812 655436623 655256257 786719693 520553763 668154142 462124160 998363285 440271318 713532868 471198022 477052911 760670214 868253508 487482570 488324303 474459816 695521797 601784820 780761210 407684132 548361214 710873327 861827382 278344380 885632401 41438846 526866686 785605859 969569225 348511159 468091037 984695410 985702620 716221030 881099266 567775346 812940627 298503541 895426063 564649995 926612446 820229468 848605143 166167269 816542746 282982950 753349222 533225708 665772693 540225807 664102384 291657360 751353124 76617687 772534939 505681022 521676315 408416634 435009784 110640650 165641425 397673837 661943051 105336979 519080278 145371427 182767103 671185216 874847238 484164783 532720620 277109580 387563188 865722371 974111541 623049369 812347533 442659097 761220184 780738490 977534220 64039551 92708673 390647305 802271105 617967227 963689818 350135053 550197904 32569643 769346543 459653331 634624303 357780712 718591772 170928559 552430406 830232342 865002665 63320991 743052128 329523841 837961456 35450784 128752108 92440405 730137107 46822021 160688308 786859515 931974573 40592767 54129469 858525668 874272198 336367145 779442839 927566159 957200160 262585005 825767152 164291065 220435564 341756175 866169547 465135119 511773876 96488150 848692230 260488935 885558320 581387391 942976424 733766170 848389566 367119775 698839446 357075915 969576546 944172552 982256235 12305922 836864286 175831387 256713328 526607147 857119861 736270970 742464128 209423103 654508926 950715747 975963920 422723389 446947141 396503508 529093416 763653417 897200503 735834882 747297807 911411387 914412592 283863340 673123761 904599016 989427985 164555407 223750741 533525275 728322094 83523426 757131344 901184248 940351933 247544579 437096771 37227690 461780656 169258013 704398185 252626591 598612464 316806418 433130506 337746551 655552078 973780620 987571719 262237722 318876248 769286074 798391754 996725633 998650509 568813311 840838988 983067424 983397963 19253704 563823730 353183151 752157987 271790796 457903897 240196554 628960334 800990019 926923952 82703004 234988467 114752355 873202074 752995069 776194435 399389974 562703996 765137877 818430714 982720993 984608057 231692176 997852074 79225394 453799762 720003410 929223394 367094968 437127195 334094072 386881454 69402699 191709735 1763088 544719208 985009889 999440861 546388646 573411487 171134950 983577200 712899846 740036123 297288058 899898257 746812779 899145932 589212029 897279260 213679473 348574316 746761701 747347823 582340016 631337081 539830491 999340391 915080823 974527356 656510498 971250282 401373770 870181061 905711423 990973516 539115072 755701683 587112041 781108861 716597350 940538504 784122421 866149668 324719227 737964404 554639061 814655370 32684419 949621518 426153166 782057821 101839726 567981959 885104288 889512549 35675452 82651681 472679024 886440255 144717371 324725501 444457094 840843440 832071983 865190241 546596927 610312684 10832888 516847689 869267459 940800612 348429934 455668328 129471764 244311366 4029047 383123039 171822602 858045885 230820551 695529624 589128609 743366057 147461 675603625 264521627 484941096 567504113 775699640 824229816 826056722 366201646 479673640 412193264 559782715 662030776 803102246 193709289 247476512 701467939 856070278 39942053 664221211 994133089 998745736 209690869 526265632 598167494 773490502 463965378 950411537 508791306 704213346 427479857 452584301 345377813 895901992 796014688 885434485 736375246 824765398 764889625 883405030 842738372 998249905 637633185 701272160 982192938 999102817 990407871 992181564 539319972 576491316 940752811 953135242 796961729 902770824 690210362 885577608 470841447 891894343 704015822 881911550 201380779 235647521 737689263 763870237 230619306 621935327 386837807 444507114 671782923 762532934 909725430 955250120 278479779 391251725 391247839 801756868 116837677 920174186 380574094 540368686 407055772 774270134 527378727 604624868 628446410 684318854 102786813 834581164 140494718 311033728 654826191 769125493 251113361 746946842 250421670 747512248 253711085 707122817 941265296 994322113 978652454 986543383 523531092 802373635 899527346 964182986 638293953 875460695 219538101 944675726 813087940 917569822 878897803 915697929 573886960 631662773 609321162 778245383 106646691 801084030 635726178 937134918 159377071 828734705 116036420 264170449 879935680 881026587 593556402 781462996 655145195 786363822 349288088 361384672 805849709 988980874 236698707 394717049 262810915 410329126 250852665 534790088 71345118 427417289 817494072 828796192 949022846 996532486 4940511 803595124 814879203 908248872 105665313 332883382 914531220 952560491 344817274 850848017 560463780 728675569 751378333 889871067 535801266 784922328 787816052 841659792 621068236 917126647 263529186 574621832 877587070 986088302 560598080 655529821 150915081 970487537 707052114 863210406 705186877 871296477 302789230 501659953 264227478 483393529 156133069 377802355 3992577 22360580 487465198 547090591 942507520 991434888 208965181 627328253 167087959 226303343 638744261 870079007 477004227 517025769 628612033 800813816 48689703 852202915 253679168 599286062 907438383 954845343 320903813 797273598 108639665 782693373 80496015 731523391 519982386 960114554 396583296 934811769 577122135 814514564 206289326 671923850 736169819 776409312 325222128 565725651 767063238 959587886 326926339 595525297 805553626 822069159 859384324 934330229 391225187 892616080 186352098 773781427 761353692 795327124 977397692 988715848 379081794 814463499 433267943 526706965 339344914 903049766 741992415 886220388 962356382 987514790 965463495 999929995 308923133 513950279 854185985 990513364 762030034 813381154 8585559 614026034 270348783 506239218 467809380 552844215 449461414 603315977 526319149 913347381 849384640 974011269 50588110 962650856 578159902 862917880 382633876 569121469 348968072 473783169 853258517 977870172 728246054 855390927 218324843 367815994 904748295 922601460 518731865 908625343 308490118 740004568 638558575 783240822 162371115 387090828 56833209 447459317 333447351 611667370 292995330 953386117 573709099 859035070 931854082 933725653 325350941 736676018 681033126 843310218 630994883 717078106 845086818 915326339 493663802 576471379 878308275 889619199 104504266 469542042 483647762 849682642 808600983 947684089 998089814 998843704 859171270 922013360 190855210 346244390 485503160 645901174 778618767 989622067 67881149 529407737 914601753 932794355 774725311 978504053 494203139 950631640 331408079 951015764 584308125 929781397 80606846 754036242 48942050 422045234 36137871 209034096 901219301 972712238 847359715 970752740 325976617 970248636 836074725 976093164 728337274 995073091 803351376 837441235 210053796 435675541 908350437 925014085 88026874 871027207 735009460 856417758 819698719 935365051 921842345 954673532 525937855 982673822 855909466 861492235 925673546 976525131 773015548 895672522 20990535 147190053 141134717 483973119 537514766 914326136 584013442 880482642 281881198 291781583 336143890 385784422 17464911 547697677 95534451 957556261 674334688 812374632 8797348 196921874 260295531 366183523 27435319 171401483 385197442 825767420 993102765 996683863 358536020 914547165 485233515 725537600 999156143 999824112 592245236 926143541 441319261 859837329 674349078 962484052 386587357 896163798 540902197 696689822 620240667 873377713 597602206 921863515 373234817 913786113 80851815 673865676 693107344 990891630 487337592 622856873 262808624 946354752 379861270 658156898 469102719 877881641 107363759 983376373 535981569 944811425 832684934 914668823 185656378 553178938 270036936 409748096 806533413 909441462 348574035 766957637 987136870 994997188 343832821 383618174 887544759 913919673 796973614 982569689 753627641 834730513 23850873 850432816 496461397 563278376 948089236 998420732 286181543 411250524 917898092 984861869 307875831 754622033 125528320 375239451 518888587 746216099 315367312 620326970 14572900 877228378 175493791 273673066 277288022 961498702 824196886 889607727 590101732 737855591 599463254 679537941 81743454 310644321 32317940 126544515 109708458 525048640 446312787 932796643 947016677 994003599 51410266 374566552 673681103 810095604 329943587 396726172 233454756 658520337 25232226 165695404 543587430 675869118 152992386 921588386 781057830 783334723 815829757 938037063 179676385 985379259 800433657 947002016 643458755 781537900 730224661 867511627 766862141 926004706 907780677 936723202 353730021 884858942 64768678 325568842 121657345 425335327 342587968 588381016 452142737 905401381 487895847 889390464 657539590 762828122 770901425 961593326 170530316 926135226 246842740 615556888 865504690 893885109 412934345 828285076 928961630 940061966 90532326 359431898 50717910 319399516 188874760 407668742 483193421 793025639 329002250 632741675 682175195 973111072 994241504 996057360 552827500 726996835 282658711 302817372 496738811 985067742 308094626 592959265 267247137 347414584 655074268 687346553 277068788 674539784 104713941 349837246 158583090 565259183 734383731 885366390 601094629 827083661 620401018 950950791 788937900 859690765 839637114 913682931 935032174 969134133 357260288 762718527 176984831 498920568 75929064 944999472 48291127 202913090 560631367 965231933 92286605 154859133 478620724 978691486 312507677 819783764 491875982 552551046 338061443 465592368 594575920 732353038 50662045 314666104 118646049 887919018 488510647 958519953 206381830 537906984 639063339 725489341 131719280 825350866 479866274 804658101 579330215 588543597 220709007 781101823 137412158 752289224 479486649 591241566 433642294 908771234 647913126 697774731 308345696 683716236 369432291 665884678 649268981 667974683 944300786 959855579 558405788 793460799 163366855 662985301 285221272 483930648 544991801 673830408 458502656 707086585 512167088 736736798 787588668 931437566 898054315 936406560 35973101 652341987 37720203 406632415 64937606 568382877 851408480 906633470 777279876 786989792 289285676 303431912 788604746 840854409 623995508 908611925 260777778 802191171 264455370 412622219 80462148 82078480 152800004 292334173 818454509 849031172 931703335 992131537 43972974 310796005 670854791 749742837 369143696 796185992 972579540 974776256 582978510 613726460 586474759 942280057 578362745 826655436 564824750 861477932 777120742 986593548 962537155 997463304 957474680 974092951 915122512 956144803 665192778 817065248 180064528 709800081 139025748 396547060 68878140 679087362 520512377 639249018 148536703 822504426 251433956 415411194 607505252 961892833 429901135 810244697 210456189 362005203 62830172 474834339 260644902 302090401 667605513 848966827 975156169 999456522 314595454 485944683 871228049 900033598 750854190 759179310 67734869 235467067 293821718 532325723 42828660 155631237 133012201 689443638 602969554 716787924 751535599 803457503 331824469 778776086 989432268 990457499 675217369 888060703 212266169 373119167 539863626 893853910 794385277 862802037 87550881 938087929 450031660 694944093 193628573 297768513 604266497 850811421 712831449 713184975 470496311 679904569 778589003 854035229 179304177 262063020 53377575 299922565 58729901 417500242 422409003 688535417 151996017 164180070 160455783 747710806 883071810 897143788 50963100 657459494 227212880 256878345 411039073 596892086 528399059 656896067 570750878 751580397 124613126 181827876 373608868 395186207 640274597 867781065 559133605 935400114 1405220 547404885 711624049 915516154 19556685 854568186 614815289 775475480 357890586 410891798 644809255 989244670 702984117 869476683 642085666 919533615 418783232 616050272 878206525 957450239 871640889 903508364 763276985 836109224 121890343 228450285 97261714 452300967 57550164 388351769 394082663 638078317 241197700 560069224 469348473 879064292 41834471 207285863 375376438 817188996 356160394 854132341 176097479 273170638 873441275 908154623 841697480 982736318 986622530 995141132 711495424 905243985 585423860 819827848 207865826 769714352 414410083 979334156 348114111 834123840 219670743 602405219 965154376 998518715 355391700 785613166 722698425 853923160 532858135 850510460 858683353 956153878 429929070 965461868 911019475 934616838 616604836 805115898 471903716 894776119 194520598 366640425 500592496 730656549 263717952 377776113 212969682 962337880 315432357 968394370 536428299 569327051 716735540 889004440 621842461 920706178 89657015 861210124 210490030 410280051 776413744 974552470 64155910 544269664 926199090 941146824 536797490 572209157 850415089 879243698 975052553 986417209 374250586 896155131 973219467 994301315 320725248 458768602 566756566 993659270 224956303 745195656 589405109 865589388 557940753 918301561 300292544 579423573 525728693 890616221 431644389 538764176 401164902 767203098 702466192 734129540 84352217 183293895 878829941 964945295 756793754 842323222 372211743 992844288 728395075 858284294 516038478 817720649 755847294 859204048 535026246 708709199 509449327 822149482 794631142 933755425 982693533 986997097 893970169 942323822 816003120 897000694 690178196 923937854 461630930 476151948 873538650 876235219 442485294 591138492 780537307 998511999 99390159 750949153 178690497 955865296 766355291 980021193 89752507 787110913 611182565 806393799 518585273 680650536 248436113 586139574 760341214 935938572 525441274 698228624 58436506 137473128 537289282 573790441 999218894 999973867 781822875 860770187 791788198 918292240 318620215 989952962 422281936 491705034 120479187 447268354 145428282 495573578 752636569 975439946 670915576 943797923 677331397 723771803 718195199 985568282 862203418 966317805 537993494 915797145 427858113 937041262 868367601 944710580 600558939 609379521 852918367 868728579 465487823 676286140 364355438 801984396 634867529 921629578 740124689 839946917 685850194 740120340 539512888 692651034 264318916 907554206 317062798 993551292 275864266 306632363 382676670 542331080 433719669 799432214 754335090 816830137 688370402 760124252 631948571 921274960 948297158 980035600 858991894 959768210 531792604 570647319 545128435 679144460 129676343 255687077 285031535 375967549 656217023 930088168 294286925 781936739 178316916 247251559 967022707 993749340 513358805 934699551 129381863 252704932 682666923 695806948 502800576 750697932 195413862 605799918 185714205 682476219 608287582 916722683 570482449 581574409 134473270 341345081 427194996 796430777 800543923 956720231 977408123 979460811 677037400 915084792 997188057 997451724 351323074 460213905 653774717 863144121 118792879 343694942 314595977 681764717 377167504 673383391 55781565 689624665 210508009 821981553 660815948 827735600 432443352 808644868 127603075 971472198 752764386 833413132 101632415 423912118 54666493 888346156 672186298 713172047 615975126 745446337 94681920 728880292 430410246 673564989 753990993 987419412 858873347 905792507 431662182 478953465 170951015 224092276 750094513 857352712 165201358 712653919 185123269 919393364 168064421 223983838 590366657 762435771 846315772 955955853 991412150 992525104 163471860 924763810 832294945 894456169 761409748 964195320 437157854 607783211 98023624 731839842 59681901 647530345 929332483 998116292 416371323 868005431 930764522 970405519 689241065 767388223 320662917 376946285 462574249 499524504 538522400 995910116 765451473 909020700 910451259 957945010 72344975 120370747 241483956 268539298 265159975 949838637 563269055 969087870 772070042 829254806 661979928 808397726 713123445 800085345 100168761 270903307 127960003 611708309 154800374 685969115 489951280 680880240 85259907 180446483 361175148 423198148 13162005 369541117 780698557 975661137 755597212 777561749 169362756 266598363 584125368 834467530 373730485 791752367 149493295 446999087 771801174 895300167 857835959 963320251 534627439 904788314 650696086 948426388 335173516 999520076 985654394 991279000 729831837 809664405 708104429 904459191 935987 407846038 757806160 864934029 639612432 784896444 840463321 970293105 881006955 905743633 176094342 885250384 608009790 738382329 328564587 989884799 832879551 984351533 441131670 872358861 955200823 996311689 789918368 930396151 222711627 240987637 480764545 512221434 764358962 906724654 780559625 990978020 531378696 826207037 831841250 962447922 818665263 955619073 460614089 618604646 803276704 985863601 742582389 882213325 122919625 174029755 872920190 882801151 740854535 782853035 414236724 760660358 300009348 501443814 899263470 941742372 431621717 596296506 457122107 635160638 481812838 927068440 978935717 980202418 33165046 803613007 904223267 975602115 851232140 917472811 885826476 943693380 541372536 845682893 627476385 832183776 651221254 775057224 301091123 483131174 441731177 659956414 989359672 990599990 684085214 968533842 93911378 664128958 266981680 817716599 560794758 996008742 213671797 496813091 480465524 650403167 579704780 655715711 643893354 676526706 381833449 999145093 359650821 654665550 321695502 739771939 958556942 983970674 963363866 975214467 697300057 991330787 344507430 739932783 618734556 719581374 656183015 881950577 833239046 930842911 750857401 867145343 449128272 815872904 46978221 835750240 278233189 476134749 175071450 940298757 895132347 982718059 565717049 813840318 825729939 931895114 940950030 953643856 336160177 718227806 780905315 816312878 52433712 536480961 760667398 798569808 84025111 568278793 835374963 901605716 936005372 945229045 854097022 902019340 886839122 903696979 466899608 913084280 203488006 366030239 524290843 725201702 602375148 963221618 532171486 766686753 266360444 869387994 827463215 892553119 29500689 714709821 309464941 319965994 757763859 852770798 395249767 881034524 210682166 771590562 799698882 867696535 748601151 796207054 748642370 970909201 417627782 904873206 783589799 860571918 211615653 725728739 153448426 848742490 434022312 485236417 49327048 688384481 969469575 972414036 412288129 689685518 55023359 746494213 693930041 732201580 463155867 773885632 164677791 336483015 915256113 939593838 162233313 343257733 10897849 304014845 142159524 583869414 139150748 381732447 653145540 960280220 44650832 574353831 506873997 820679361 207368504 555007044 91832029 295044359 15924764 650544402 567447593 945034085 922239730 996021978 400564112 465151663 508320695 767692774 849988313 916870590 935005272 958534326 260697685 849957917 354025972 717660624 346199087 410127237 800056635 883895212 995786600 996440707 127089413 463058950 526415339 778274031 889073192 962827940 294525193 775536682 893077476 938090273 791343544 852982524 416344864 733586345 709426957 883404694 579723128 931628777 606913347 766287189 137743285 404343863 978941431 987042892 393910507 789888426 946588830 984146202 718044718 984428249 82253146 672466069 248833505 846702686 401233797 552660681 924562021 991602157 467106986 901282552 514956091 974682875 711554636 961318797 886114908 907873405 536584765 710876516 618664306 950361039 606923754 995487072 385346633 606217988 301220761 967219370 984089204 984307472 905924210 924885352 733827064 910678648 173450912 913478549 129600153 130098553 291805087 890821119 351447090 433953751 439606522 639392158 715919844 961647040 461308279 672966535 687481753 915099651 262363161 679680081 903569095 955089010 385606249 698654520 103507804 645023586 445935052 682638082 378762985 685664702 186126464 545578638 492147052 917387792 837683286 998702608 494836355 805550369 104626787 515994165 106293750 985542325 880269682 980201017 409687918 527111043 476081262 820366542 762642666 930133807 899890824 950566859 67244639 533392937 388183814 584946247 594001838 835813642 682843634 840150755 88364517 351878137 381759728 402722987 990681393 997517846 949626822 983724170 816172072 989698073 735262761 913999098 982179923 986564089 322098914 763194877 736708041 872271440 85030053 763536938 411823503 661075135 41012442 490446201 108602426 529398032 212721203 331439720 797793648 937646914 427245643 497924751 200066265 779053443 550080179 598548430 750126173 940680649 772375745 880251425 536205474 712444721 467789961 483377935 988472188 998024940 971220213 998319819 726097142 816670747 126396505 408355605 170277383 224604651 765819368 944629654 966881507 989991569 660126936 976411997 972433219 976905209 448698068 890134477 74973464 571724140 275323526 427856891 645742704 956174014 166919913 344719911 427600765 436716922 266700448 688401541 452246155 531204452 640537437 681892244 461364626 803123737 506235765 784140843 396929193 956435395 688226672 907301616 870463502 967542551 225088525 489651914 904166337 999353176 449312832 734950818 990101307 999536914 871893993 898187777 317778281 614554224 961931135 998614995 171185469 312656202 189159611 879472657 379574371 827162460 974573472 977266030 161767388 633124346 812038607 963799654 156646217 262503074 840501468 889519584 206632292 502679139 578051232 933078274 734837082 857900300 998682883 999562639 510237929 686959094 106949677 924542354 314208873 387312076 176821257 383543717 601668996 951155035 691263365 784938577 117396358 380612381 663843134 875238448 674056912 757205348 246495941 825634498 177737617 310877307 229635418 729381534 36843671 173468247 962638270 975745286 26262950 503780063 387451249 884456825 903373242 921460331 195716199 641524593 325714028 794161650 637744746 935083363 304930248 365767073 887390419 977576928 167765091 722365973 711973659 926571224 740200347 753530448 665870962 781259357 226640773 999650700 224599908 335502120 449707934 517321253 659238883 794901839 901802998 964816624 940062262 983739543 549719002 830763159 752394461 987552161 145638469 674943384 309003496 482248881 831169594 938998349 478089750 491398656 569809596 610066501 397230650 504046066 459002432 715447373 992691282 999144668 815901171 980668744 355133106 952995165 296379776 351935232 274616429 358627734 472161729 685646568 938366248 971791609 589957568 984063366 619152166 930846235 869598487 906897265 69769117 637964395 500012846 689653765 549670035 551737284 529249470 787706896 858209389 987174996 522037721 794069034 422391943 940613155 258697015 444458728 373246794 508008951 91290658 821518269 545116335 832233928 127807220 468954563 365376786 414027128 110372423 487135613 95139819 858333177 911432752 997401309 417803781 694942093 411353006 674926656 314761859 360841558 984519438 987549908 568957311 693901886 171209824 663131070 768565841 999193333 90771286 388724767 65290763 477597793 249196517 471661009 833117478 891879395 294902809 940656612 548524463 673677384 11167060 566420390 830884201 934116130 43819997 524256560 695985023 832961244 646474448 915074958 638482792 857593092 259348728 325769010 285307135 599593582 121713667 494624809 827470787 993281533 680963461 916084084 329425886 907135280 587433296 967389117 62638205 237550179 923436523 979862186 536193555 692141975 520765636 545344886 212297366 956696745 378073520 973413827 273044172 626022099 339634417 595085120 991611122 995265852 630081403 911985250 387321631 676678652 983800859 984093840 689191212 866574132 896228101 989583799 797823205 814545608 976382314 981785861 425388392 964846922 862558901 990331081 246565562 606194228 421675931 832140715 325830412 867009088 628493460 892798169 454435808 967311424 160673368 783989589 708698107 949652203 620584070 910191526 454146264 690530715 668681190 875032756 206307009 251596542 487567607 755044978 251193844 594116585 30940903 549585358 656246207 703996705 985801927 989496334 819477609 920377268 720874330 825993281 992635066 999890660 364865603 783596160 587052079 709706229 404863244 896152355 768870429 809688139 35759226 81527638 847150858 852838262 974836320 976047495 281431119 314419407 279063725 708796649 213637459 589364765 340720412 537901087 346875527 449529129 55260164 55609027 985069094 987832599 410682148 720121519 105950835 454972072 443545696 950203111 915519208 950955716 788582043 954395644 789820004 848973824 918787788 984421737 73187658 697980079 674988699 724260895 242643818 257179470 973447654 993827195 986300984 991438112 439549595 785872245 686375248 957117720 676235079 931982885 376362484 553554206 335099242 803097736 771096538 986065001 33865331 616153165 167627481 260272362 979458540 987325748 280696491 515977403 842841800 956674945 219798513 801158775 170066577 532434534 350918461 894534138 955714778 994322693 13219864 396296912 986126442 989898719 349065361 472312349 364366689 646206531 854575310 981026870 850431178 889370514 797001309 834114386 145094508 895454121 602846309 640585026 939426485 967427368 269264865 802167410 640232282 759968634 115462373 933254891 497949356 553264868 926062231 959731273 654386054 995604687 596251829 938307122 44917833 553489980 880731801 961643983 418828638 722608923 376977799 525818032 21785638 604513652 168400158 512278476 653176474 738170217 10859761 443832013 745119983 960540714 429560858 436229573 680340661 993430303 522661542 726599861 8411563 68052202 698589392 918919477 117424305 127085616 215116908 630134234 908631836 960657223 925347681 974666116 129759211 769540758 646188405 842001537 428579024 462663106 102480656 952675963 582667922 885350285 331564150 893697807 661991746 892730653 510177297 858503537 233989579 821590337 478590067 612097001 314311135 770296219 601457342 964046850 473171935 514584465 861036565 888801186 525742940 597434906 987827572 996108999 284138326 838819970 285587965 391444355 830510497 973728199 550228109 554513821 702973128 831796158 603008245 943611224 608268260 841324246 915630246 960056306 961015218 992322017 41919507 929403379 596239350 793428775 873491296 952489627 133926586 751385955 882707465 948363801 450040953 608280358 339706660 590130582 612854900 920063559 889944281 961394428 183454655 494838974 383003680 454917254 579441837 820259400 197313814 331042137 579023295 856600241 305582779 912180081 271885113 297010323 157777452 577047660 820864969 936497326 791795156 828030256 958347125 965639047 382347693 670003642 579931912 629277738 403760146 766157594 327559860 453431283 153098623 225301168 798302968 971465278 269861625 621940860 145518528 864791473 130165109 272755144 830907885 948250822 285576829 390583388 643192191 662670944 726765449 947876310 833967665 935505130 844237689 882290275 742518076 762861068 283398637 719157218 111935567 802378315 60269350 747822233 93849515 965713083 467479884 609905324 976221126 976637822 366421869 697388247 786728019 822748844 817174500 845607422 389829713 750767437 283704391 348133372 985479084 988048504 100975078 749890175 248515410 760593347 959161779 972869872 707229136 883209403 493759969 739485106 457999740 702187328 274602999 454868305 775130847 792058179 178785598 378412703 327323104 343213338 555504586 829363595 720368650 993090822 230780170 544894925 979019473 979328087 193086791 347950334 370898613 779273174 777925067 967365009 29465830 149183372 569298056 673645803 995210480 998343812 619630100 947780622 553862887 556096488 835317505 932743335 83638177 452354586 651774693 968636870 40860875 742040342 548068606 621627336 291709818 435943539 248868979 603204898 168918239 289617280 671436735 910075446 474339865 770137899 797064004 860899285 969936366 974204263 743548639 920523603 938153202 977262126 845312091 965119576 715296073 739156579 480968232 641813072 935123999 985859453 361582462 752869968 207379672 919052972 324707994 386564840 30051010 351293525 798125981 927094729 649982399 956400013 77615930 398177864 247397653 330681878 208298642 298123958 227767107 769664199 347392684 659581396 508448001 780201923 469014948 844214335 786768353 923118530 462052116 882263901 202656029 259861310 867374923 966204273 798617674 799275825 360507463 895105166 514100167 685116181 199380314 717991158 42663096 413785531 358790249 516364890 158340932 838311143 450308014 681006997 54084663 670819626 995284363 997647414 308838939 355924340 847899247 946000330 553388862 967267513 556800468 802713074 757222622 926702342 109250896 985158581 780820460 991585182 923900641 958985298 711414999 946896412 934259923 973501773 148169980 843793626 961727221 968270881 617929745 967103045 919408396 925465280 780019330 868113727 285695311 436338409 362280435 556781528 180947916 831146916 410306324 501285748 613315589 814574169 55805034 587955227 314638323 711278458 918549494 928470535 611157260 975947688 337923771 404320671 179599031 518961486 33963343 474188851 932959240 934397251 636153652 744652748 453560011 948428185 72587949 242809163 559746348 598574010 442207326 455877117 163113240 924190126 67943783 96568151 113011135 671597550 70070844 962603064 951291660 968755525 965796391 965867679 653626365 925697889 907468421 994943052 338896236 356409131 804675901 866335109 148243891 221832379 859917090 963059356 335420062 740899955 223698001 679059904 39554710 322071568 685302012 948321128 407285159 517968791 216280739 807342439 893990022 943570217 574219592 721123464 968941541 984271632 488978538 601608114 638731461 913244476 607852028 846612950 361029653 904424285 696073229 808870178 771812299 944650058 377033179 395552743 663851625 912692648 29354169 438598940 247290568 682368044 705219019 994593418 998958573 999880960 284324481 764099802 57140330 676741699 748323413 835432247 819864642 851004908 626739979 999465706 445824812 765116270 861031260 877318350 217983749 353200232 417357900 752436992 165342780 233020864 953459602 978107414 24318892 41455874 382950320 522201142 446516946 642172467 856538857 969005498 556319447 654231270 439796239 460686827 73171191 911035909 543943652 561700216 549737634 847386164 333785957 336122712 480799065 866650985 845204434 956924340 32632574 306137075 887028531 923696919 41076547 779812091 509481816 870619093 579735256 616570404 80244875 677418887 249080017 546921327 943145118 955080795 191248765 246995978 84568521 481904714 89652354 382071980 977258156 999220517 638234577 723689977 828602062 894443020 334348779 847720662 632573225 877038726 172742690 754681194 41401864 454112935 462161514 840126881 248953166 661642066 621443817 926332490 44956253 704755108 899969119 931263873 750218582 871509665 919438159 995208149 611483632 734652110 807661933 936514946 684221798 752811139 414041658 739340418 378536051 378608351 726377334 736188252 973855959 979626742 637023579 967028400 791125258 934071795 977306086 989949288 165925375 474908740 677072493 771115451 218159446 435452270 93572338 943018367 680541140 888422706 582403378 779067190 482542311 900700251 52550441 87074894 807203521 938613587 736979415 780989472 418860156 664567391 347003263 566004030 333073542 925824998 858238965 902348011 202099190 749606089 574979314 766618055 21783366 375343211 24401524 519802003 81142772 611504443 851806054 892516040 353793007 870406294 247634851 808039112 153444922 784114178 975323665 987959285 136490907 318444818 966234106 966448479 920634699 975087278 807750841 945003955 885639831 921379098 840824816 919212294 482570961 644033408 484328756 821870491 116422186 615275941 701105376 723270487 137010807 381789595 785438507 959842549 363942341 883180111 398144371 856350278 792832229 827659609 115279620 587030041 253066592 749351539 259334035 266732240 786288619 809584081 631186651 921724650 435546801 544294740 988996559 996643561 69688917 925291562 811779553 894814085 801312702 983625738 470297682 831179444 598324907 667512993 270815937 621637988 461931759 790767211 385341210 933141407 700084683 861687531 732291434 806203101 251778162 282186850 860837471 979263724 834182561 847881226 194622633 474793240 730752865 941785625 966222373 967205606 442832135 529032815 131737863 163120681 267824487 737066016 225704142 941670697 690117975 972127384 598587019 604239699 815755321 828100800 446295150 600626359 516924156 747113878 674690762 720190989 374846451 581494371 70941757 403004237 575805788 627680934 186312968 682359652 935302793 940105040 656495387 760904736 769551461 884765666 42166693 126163023 177451728 649397958 85376395 663341434 32041607 331864587 522535480 579201793 707568327 832433484 353204285 359379114 898091086 914246221 419394908 582080503 206974109 871653041 375404810 878662076 981482483 987056087 249260061 822642816 700373820 843594216 33466024 304073803 175664960 275092857 615214939 892730039 298587865 325150068 827264678 886094047 819513123 932873470 427085741 710255518 548719328 941843667 737781626 921344969 436913293 538143771 105808282 760567774 991635410 999824113 789841677 882393877 778194332 975275902 505728285 577840986 164368907 882631859 787377489 959227858 112696333 955881567 391334859 743343467 916446584 927538128 185577954 638425965 673677016 738774488 563333852 948841724 489527190 653969517 703934799 862247802 521162172 521909472 159774518 553136947 423895272 794785559 308751329 705274058 868391170 935632096 5038925 658593833 165270123 520703182 587019 104591092 80802350 880104196 575577906 970766026 47946138 319593374 356162896 857488484 622945026 948146323 590430095 991663920 470976013 689997735 924989700 977361867 25568869 94399950 606359785 828269854 505915651 573843619 239353955 802305925 967130535 970387061 162774419 894865270 689761525 966256552 149119763 770709079 205311521 852549212 844052533 913257099 742227662 746274360 352668808 862623753 765068738 989627712 795844428 984951700 860518618 985987927 396677806 946837199 61535418 81163943 127632724 359108175 823258252 858504256 358559736 621705052 546983212 619718149 314506077 588394329 329211275 938300864 819802161 924964944 299933186 735274302 20594006 938137097 591051851 866903553 648577901 880423250 687550469 699144597 563764478 861872513 442372307 586509722 668880188 738580238 799719601 966642958 399141405 967211172 812865998 892172216 706745348 826358784 739099571 828068898 333232847 663803959 187920379 506175630 498603909 773139283 66346671 771557697 503985076 995851673 355592754 889362194 573644313 832480389 878297578 926220308 170835366 544956371 358864866 831808358 412662457 562253931 219452687 853969765 198851279 851973337 429464343 709789731 140438592 490088786 201487799 991813251 923491912 967805525 199416061 557222486 575447990 801704269 120708208 837186665 320960120 957329364 920558384 961569958 141717889 346609331 472048727 479135455 646137826 784524847 372538984 887883883 907999342 938752471 893460126 921620115 217441677 317674575 344491391 689327871 91813096 287610880 981516704 995563858 626264901 816909477 153327110 979231429 195274706 426594476 732605214 887976652 187066145 379519129 194930781 340647256 336434994 712708650 455608103 737068323 473976585 483378065 20223582 457704883 158395968 325183596 857906365 904544294 737428946 862631545 174910281 869895255 698232677 849225028 723296238 746235146 276118210 577954817 183756296 699088177 771899514 856785145 835500150 928075229 83670622 497712256 303286513 303448804 176728125 420726831 562598205 737760651 51108142 653159712 195361642 513668863 681078458 788880515 63443265 901674086 338594856 461161230 698046675 900545873 97280324 954630526 227346058 822425648 446111958 848273762 947268571 976086028 543152787 567376491 592153782 817596045 776016766 865166181 295677147 685289045 879181200 958583120 950535406 995336974 499937386 985731485 903301340 953987733 2487799 247590879 41073308 648415378 580357110 767725941 230661209 326627788 331677860 578948418 427672766 949888244 74364024 229663112 954912446 961985844 371817607 821005442 811459303 911715208 577640274 720989667 110398653 195223637 869043985 922324682 50339877 304892074 84084963 334951622 594866149 979790579 611123405 896206530 762582225 942630522 223815096 345396784 907337857 957031822 852659251 984759910 41714120 945587658 718782924 873977555 530600873 822665759 40030339 133279341 120072968 498346868 858006244 995194695 242097961 959970525 975877637 985092987 606165585 951994177 60854710 239631529 504742952 625310991 122697376 710718816 401375018 427341990 159721437 944869314 290873308 600318518 22524409 724458101 266483519 770989544 206903989 675609481 696443273 978196024 177386416 657796377 372248770 395734813 896084236 970363789 759250477 961888729 385797014 790081249 893913976 999080860 190186445 936834117 44356403 651309246 882923721 978930214 734202657 763614024 253245252 606767756 672934279 720689839 155376344 753579737 355720626 859213795 114924835 833172985 236839896 358707628 322273040 728428929 994077395 995484315 300869543 402995893 332274096 623685965 540555507 673157694 222496564 403631106 534034017 659422633 948788021 959862318 234954596 498335438 150341560 498551773 495677551 651882584 972090599 992927693 8792556 830098376 805041337 919856640 111421344 435263210 439069977 630162092 7995458 613946903 581315477 906394752 757427028 853483054 765420761 995692684 775714626 883541774 36050052 802944961 645470744 965900590 255608786 970995713 405131965 597193144 509485155 779087743 791330031 950428798 104865017 325228971 289427965 579165981 720193865 828518391 826636324 957450235 336488821 635110886 422255373 659928085 42490395 802214124 245773806 736921917 922209723 936633643 523866932 551454158 646856551 823339578 639928740 929091063 642406330 839534842 917270691 950698967 940009683 943594201 402590856 626401958 89401749 513760173 502502712 698856965 309333141 687958010 942896474 957220907 140100461 573523597 506002322 729613818 375965555 527462011 842474492 843042725 333655086 953338225 183975049 935346526 826238331 853901659 98796963 757256549 572324290 798000126 118339345 664797622 810138907 824444665 898211141 917688777 455634123 874537045 236041832 433688036 862070962 919176153 21502460 770332913 308659924 379750595 913423227 949030574 628401546 776583205 21010700 585611844 935118679 959301403 416448795 549542510 923332627 946529130 632488090 874705120 355575280 578609702 355620320 378165653 645437018 727275375 906440096 954006222 808349279 981065649 645871883 646138125 236766137 414049374 337328940 364232773 331033679 645298534 780727769 903423170 201497686 380425393 116441764 137185206 725716721 739789339 704450039 881736069 759441193 936046443 158817775 803854562 135121289 257111883 719737465 834233130 127404726 332378251 497689457 703636380 238375680 837249571 186060062 570301960 496280792 607361606 505234856 790412217 288608277 435612765 241618419 554535008 562302524 916309403 887197840 961446443 779894823 959721228 961889951 989796472 510931870 617922235 980340225 993588105 758873513 792899799 595258529 763368687 966694006 972771828 573768937 863329106 618051273 782577264 102693720 242272195 469155155 744244687 780519846 806814373 460958784 908006942 159732610 225869783 650148387 876491257 780521594 942020143 250083569 334693902 832315238 953667640 560435142 758859624 13714230 816672351 474426532 584896599 791895301 954404376 44369964 937304090 247483503 432363994 907750059 917900764 685500326 911279508 945316244 983431153 914796273 966068405 981237881 984579813 130939187 503968642 725651153 990981392 659702294 849861627 754219791 912223585 406986128 919027375 677501285 852872896 802959946 822172290 820638767 985848812 400306829 485003027 808523115 904233769 76793657 247589264 591459428 802375892 247893313 933480205 862914673 987595380 596595457 629415815 969092172 993087518 876707663 970789191 700664410 826251607 995224263 998808682 570300096 586062164 164880086 870909569 144773101 961471509 144617131 806073708 445957824 699736115 800151302 992487902 542743401 685601598 776103929 815171290 706471076 831179910 854732133 861011984 792851666 887920367 191775305 449110254 865513011 950213691 30671911 186016964 631837404 701914330 138588695 226955616 712371394 945366599 630546301 900939148 962674147 986256460 516483365 614677370 921505927 944919956 398632070 672757877 908719621 919815111 534028044 776484102 189547069 292425901 238123302 701800213 331411503 392250821 235851378 689690700 836115830 994636868 735511996 978207539 40365595 159230519 141706361 522966415 579196612 837872613 239491223 759233295 49660907 553920830 235492344 284306754 969400681 977908742 272737854 900528994 463685080 562685532 621519186 790763790 76801201 381544267 54900099 921880623 295550725 638708365 739978499 883337156 902936005 926984986 549401466 779645083 709357839 823046868 255005795 445804543 933151198 955598689 254440521 513527593 499763011 869186047 521652927 545095389 195547995 904828131 267531473 524021748 319454990 987490958 540535539 873096646 170463173 584881193 240065515 796749510 714397102 939253247 91604871 442494727 899805065 971466259 188043256 768376055 866007692 996560795 599900713 734453304 176639128 827792468 642483277 944113637 488546741 634616073 349344600 603471908 164111041 379456585 611311341 720082196 217750913 778701185 882350693 989039874 835555588 922197921 584361553 984456993 714347341 967856000 216275518 564978845 359116474 679246941 536934056 601708158 62506267 150666424 255957511 875268565 765388890 985049798 465896483 684740552 965713456 980748515 467254415 620184381 828333846 869200481 15837459 482117081 752176540 930355077 302508076 888044062 250489455 435306259 736243584 858564410 643243146 736374050 871171216 954481714 715009763 898107439 390750732 464213824 942609444 980727300 186825508 761036236 81283083 656418262 201208426 849802416 208713207 330736525 812390704 988912828 153508796 460239871 609572148 664979403 644179834 909485118 505099097 668556623 382038736 994086437 718853986 880113535 633610384 748113275 630024288 739358458 92459379 150857472 114904680 575162593 295614286 792625805 811115617 862570127 630761506 874404362 690359526 819358126 267239462 451755802 279679964 439091759 712512567 996645483 619843702 766672969 366258989 743265550 994903138 999458028 181069967 706165387 486818182 763181170 150422763 203899980 363676535 826512020 561659264 912319365 783903925 834220722 226257068 417120276 166971078 508857111 463045850 939710498 23662689 856275585 498704761 703500000 716888931 935073382 186021660 420640182 559737865 823545287 393552351 818243867 829275568 841244619 606134365 886202503 908329844 919509661 436487735 795911330 637321791 756555327 380223285 778737008 494308790 624297966 474521444 795204625 193795578 338752997 484186138 633636183 637940742 847870116 145463736 186541682 759500513 773321343 406758940 742084218 347987341 688299249 621494629 731785429 526896676 616197316 3500932 612352185 843179259 859950111 950580271 987796403 414121578 829545239 471997894 881951534 246344720 366087004 681995736 894962107 912968443 994528203 441701261 775328765 136638941 220132123 849030868 999109335 187823659 509616620 17287991 524143035 387403487 885764634 716077271 930112083 257878606 789563243 724430303 724629485 876006764 945589630 110191075 837113994 947366497 993994241 780763038 979007298 314263371 943123405 999887978 999944976 398672089 999864527 320790701 322626970 922565104 984852566 626894623 745141914 656872905 974752736 153775855 249828953 819802614 885108893 147972072 821132809 990499780 994065019 466926225 611003791 637753665 688618440 798112046 809458667 731841207 832080308 984908323 991261360 632678767 784812199 808709547 898821297 999478777 999617589 433790184 466918613 697071165 768828919 83439447 660043415 440019352 604683783 292369799 492718115 301437451 807383297 918071683 951119368 836225402 908645605 309621571 702378230 227644825 818142855 879142423 933989548 724068670 787273870 978861045 998153105 802328141 854399236 561539947 962259443 80623481 127699401 228584171 672536624 694824432 811347856 462281084 872802856 925404560 927967482 122248055 714284599 146506446 194539981 870267905 955096294 413103320 854518919 275865608 532073613 510389723 531894490 90740163 664427251 864919502 901361426 120750481 625185382 59766981 690629324 223484943 983298158 353861078 928660133 365731030 606990067 942739402 998760939 94812677 408830096 220142760 593753920 179839964 617770368 708389353 947420174 936680219 988246154 87980531 364506700 79235030 89182369 197818172 241275529 4292185 236861067 828706870 977439766 794837710 863107696 34800920 681298696 234223008 885892363 582130494 904586104 7871713 260272848 702986912 829133540 314416033 614670399 78977804 710825977 50875942 344636176 538247634 685773900 719560437 805406825 335446767 598066019 336469321 702937174 992349007 999325685 114433192 278421714 397394623 453215451 793099229 993499873 576161477 868310813 209241093 642245622 498622696 929601059 760566603 803076115 944533163 977780651 443511299 974937282 104029210 327596786 908329748 996018564 362359366 925595067 401076993 469063078 133522983 665229241 659434411 885035406 142216800 726559319 949536623 975473023 889898142 907222040 39199435 693022710 860256756 938879762 155270604 374733311 887729771 922763300 852182136 902581736 949976771 955405371 989817937 990210437 938448334 998474116 252704908 405845788 415704101 622252542 414827883 548999616 872606786 991414665 967643323 968075971 619023819 779655370 108023977 141854582 149656488 583951946 153927743 818677957 57888253 786277229 801031925 946370671 834208268 896566583 938424598 943675297 893476668 903058804 40813575 129009024 909781779 973924120 2531266 678600603 831228359 880830466 431451264 780123382 851815589 983739952 473560993 748921464 257314554 720062927 594688735 893645399 247302099 642644887 599653046 900310353 972270265 990566045 854219582 957920377 312831951 606575074 145024401 666824422 478808702 722664924 643230320 733377442 860148344 931006869 657442654 658527194 485977793 752342527 894883723 907244063 534466610 554268638 68209861 282869970 545906869 661991298 47852463 139417019 363948801 927470913 861053869 997189109 465720107 490359492 421536317 719103714 85269588 568800931 69892340 726810537 508415481 786698696 566053343 598461125 222428604 617165189 241435944 461571836 1164815 405398870 172585422 573024254 189639972 364143774 60610582 992642449 540921872 723723437 900079477 985672725 799666107 976657855 71591964 937575707 48834182 733366394 841372342 918041999 461947235 658361509 516740425 568652461 960636953 995349055 23689491 803076229 782029260 801059270 792779345 874577159 465958769 827165827 225986365 800381932 725075098 831848432 684326545 701964671 163952999 396555128 823809571 827220539 736438303 877003729 57878154 650387149 928534032 930229563 723888812 997349548 649232681 919270194 292545511 867420401 21677158 31231188 910839764 911009166 450916688 490283624 562155863 861174753 800732331 962516604 557252834 582664362 910300550 964457744 270606946 964512001 671673967 699995782 204876388 484143980 523930993 956548820 239422574 918825212 87643769 507303124 86980948 483424027 225488991 565752872 57453050 351227335 188438360 231996431 689597555 748913093 119576278 250106888 547305556 908628096 465456827 550303266 277656554 836300444 965130400 989351458 496054766 698681311 777308209 863993722 237376959 923575042 254371041 411450179 920886459 931501294 520096513 629724573 897071214 938482214 28199417 769741697 386470586 898335734 705069231 768779615 856176416 944482764 774405234 827973035 653889885 827010785 248910076 573363552 763886689 988415608 938349539 977972805 562935650 728425707 235657185 649991179 307058609 773731755 440284747 727464168 65615425 814012950 478765586 543813426 605944736 894617726 97654306 751190947 831560953 887459901 371921864 589434594 249334689 463877280 248856280 871350756 557896556 630474116 282832170 525832627 616883372 808634760 53101088 824472822 436563635 603524210 52827710 495829248 926280173 933650203 464139976 713404682 460055747 903218385 310434690 403200968 359310953 564719796 663159173 830821172 822895490 991042143 344703137 964070870 398772534 517032163 10491774 546148043 735047560 786704714 629857209 648550402 971141995 988480662 373599089 836253463 341558679 441081395 942090438 944271261 66829164 862199837 472122709 587614754 402746629 817865477 513220184 856995758 72910131 947929471 453183055 523329863 959256274 982510446 763557086 840832247 202291192 705974915 523835869 779286775 257874128 979900803 202593182 661473939 297813270 462241291 958064750 974034826 241547326 520312615 126840766 659472571 542420330 984649643 153097492 790545255 335202334 355109876 363297898 690314094 668691382 962157334 423728861 704427128 745469026 919316080 382502656 396661832 471465006 925806664 853237850 989134946 483894879 553353852 945490571 973239255 337801312 629516537 156404252 244573756 33393176 484300101 381788309 426906583 193162661 664005964 202411841 289428547 980190796 994102766 711712804 716290842 818267810 891602697 772671880 783605425 806032342 878414301 398855255 825575167 268527454 801784316 613268350 857567271 383923632 626424028 166324210 391826592 894812879 924471547 580772986 581324732 164829724 783140417 821789644 913858294 125327821 336153516 352118371 866725646 611450783 899755626 298812990 966903688 605005078 886303448 891519807 923012664 336349332 669425658 873951963 944865603 206844731 584550819 875109603 915171084 802757828 924191031 464340848 546803114 992651200 995184967 286984581 485680702 940795082 989048440 422125152 744746049 312373911 853880814 993870835 998467864 874448035 890383695 483066069 791347629 471880261 477327145 219841344 485335069 935349427 996418405 191751761 866759905 656068722 733479282 243316314 458112936 501523025 815987720 659697035 847262417 584279131 738441519 814700469 819154113 671459274 953715465 603643535 842554563 74207542 232245381 69265723 851248430 781068969 928838860 88692349 806298845 515521725 617597744 873061803 961883792 110715427 346133877 327114054 887860908 55348518 949418510 637337082 778392349 368629890 842740030 324618646 999619492 917387798 928855045 190543428 387715337 4006275 191080300 15323848 328414306 672484180 686961010 764034979 921037277 665622597 718478264 125403999 792764305 223356889 490409655 895764767 974787056 412023634 483953824 586393618 901744790 855667290 966042051 742561170 929553129 429136039 832829958 80195863 130727569 595357826 767377506 983385094 984716054 678698742 926963684 536355203 766385961 80591417 119256423 263544939 514311061 496576468 751509930 217822198 999361807 270434848 491129016 556426114 667629562 951293865 998706917 331106180 465611486 238151871 799420678 194084591 347179032 503473554 740042292 338864886 504503844 140916042 215131348 566251835 655231627 695744262 817853355 875038494 896815006 321972388 646263170 258249103 836554370 990142269 991955305 989339992 992880157 499840475 525702571 56486377 823876636 849881673 852972567 942898063 991369457 182178116 417723192 500949763 602223060 913679828 932871392 427085563 591611443 115743220 925995262 468825956 844976676 138083383 296196383 29775243 175972626 554539932 883615296 672727007 998540295 533901522 701850517 890147102 956135662 179106007 483670036 105237803 739312008 42629290 770998986 781529642 879152902 837043710 919901159 536708963 985267875 721167266 897184932 909550877 923975634 444956770 846264660 789115900 875734407 910590632 912334891 185343486 888926878 411736567 828548332 394360167 760383764 139066691 664673045 984187033 999619711 308435609 902946979 853604851 901598520 105821578 572877039 584025208 998142202 758359927 796495065 634205459 903157446 690225113 810835872 925568707 939732547 343028963 873814493 917540735 988437631 449596422 514267041 832693465 866686420 963100339 994817391 355501866 456179207 198913706 464420587 791469231 850799113 890358549 896494989 772647020 983408049 940262701 985134563 830406628 929676562 638542338 645187370 575915728 901672551 526946808 758938791 692843047 923229447 735451106 812673622 91333243 155397056 87720918 774411480 108862326 705358932 47388127 407126353 329714557 359818075 482160635 936778069 194645655 911183300 929028995 939590230 690964096 711006700 634165330 697138312 781056349 916458995 240901970 822688008 13977129 712629840 949757660 998741543 497808122 950132186 173757476 196340557 166129305 228915410 305344822 422772914 920108880 921348017 122711328 655130103 288604513 699493978 72674139 125961661 770205616 936647934 695512372 985960477 975146874 981600849 36373483 894242526 57680578 312730279 76449866 517382496 731973435 981272733 16403206 25121039 749358085 796912636 460579598 462516383 374853114 642681246 613233621 733553204 280382253 890683709 471180588 618651909 243774611 934560397 174460441 864186916 220293401 419911920 732423238 749706637 810670054 883007435 738298860 984012389 241475794 396144420 304806702 606605613 363212632 852826104 301024076 951097090 120311757 543438796 470755947 614157630 708631539 932991252 953074497 993893889 129081997 291640388 631229364 729159098 880794139 947514030 904618833 952217945 926332255 979898804 502261813 861139209 300804470 699952919 699106830 828278721 707556412 808572661 188675019 625597926 543209152 877332347 1087329 435296773 331581845 664911417 683836718 827004854 347427143 855720336 166509820 812541485 529414713 624164834 383553702 979637894 952387151 996289448 649625805 650400081 815200693 871262250 313892396 466475481 421773752 629505539 328152110 974921200 358245134 877031724 197994797 320951640 175405260 247381992 266956687 269669095 519145383 898020872 577129239 615413276 621581458 788107727 921198811 985917434 88581897 92778070 653094073 999922387 502013550 552976991 219208229 339979802 154059407 800092602 440279999 612910240 242425260 549064561 430848617 981575118 861615865 977130680 790524970 844682577 92104531 282451675 549710926 859614222 336374282 470353219 132341245 546799769 294111520 700734306 900542344 914613714 209833246 225151979 15718045 982947485 522495882 579954486 235930301 931764009 619285169 770950896 904970730 974312318 171197643 297650730 711964067 861834414 517700008 534696217 744172371 826123433 832485507 862379682 647374773 657166113 562377680 683292976 72119382 694678893 342546396 838306899 227900278 612683785 929977534 963970238 887259687 923551588 384233265 544687099 883744646 894985376 99282773 214930173 127717942 375735074 766629467 771560896 124459597 235494736 460716118 645934705 231947319 365605945 294164203 536093642 456943517 784658827 688306914 733850764 967674844 989685048 538269990 639130788 345984090 402248960 650237238 702020552 347454866 943934176 900035571 971181521 954289117 985007000 62677974 567058219 519690407 829150526 861184343 950650078 322025104 664890535 978763586 996898493 424110852 463361400 416105842 515829787 810216390 891910879 147206731 195616491 500580735 537174766 326180692 447638477 522789328 646543503 14651906 309676830 222194289 695238801 947028277 974806305 463107410 665466587 121272955 358860483 380071200 606608135 709455020 927075986 55711799 547986217 3539743 277057658 113088620 735418051 654580243 680635311 98102621 644254477 196790491 735507473 431902459 790162298 354939414 374157137 664115935 666100965 204830187 210157034 919411779 934553584 470005857 718714335 894928395 993667103 791525674 799291106 374336044 986799293 182208752 924394257 130550282 774401977 358765481 779904795 747257902 889456909 485243777 721780505 43580722 74163935 210544493 756412465 594471600 663759914 306587503 943557895 921138391 925118748 767042233 778613741 762753968 918826809 724166975 918890810 946685733 977671598 125416368 652605719 300943288 685399700 621791819 823989905 351802910 618333714 531781683 792349045 980102755 989518799 714561717 889550125 755563347 796464320 198189202 660648442 941539584 987722620 97335787 329916932 666163784 953418260 549209318 806410228 551650343 746123078 484025015 785918381 230501397 379611979 43192281 974355800 981384743 982886973 364246350 467050325 749730822 855318883 901909215 933037578 499803149 548096540 511755256 902970602 745497952 781748132 954403744 978205360 869646738 873078671 40124872 320664510 986001944 993678070 608646398 972117619 408572704 516409161 472166455 731494470 384926881 764828791 629547367 877328065 819102011 911839448 512573181 545584685 777774926 828916925 228231979 362258198 23311896 799464227 277738198 454487108 745395309 753376638 301320593 824883471 937826626 950739440 615673176 863901687 389090953 908578971 74669559 451501556 52506883 536931807 254776640 691057287 863202532 929025983 139715705 452723227 329717249 382290843 193753053 802121738 178184884 620532709 544384759 742910183 749748296 930437404 345549313 524306920 893145918 987648129 536902719 917404099 164145539 639246328 17228915 433708825 439933041 845262444 780418576 903818914 303794598 756604961 645794899 730102635 195585007 379343124 917265984 983390621 681646082 967900028 297866450 564713823 765872546 850907477 910526940 925886732 947725107 957910398 805789068 883103828 214650810 235140932 584481208 599630859 511043929 522398194 851296565 931068832 501319952 860870180 38072450 861088295 787782662 968712877 535465114 752096948 858860399 941558802 532375658 550769922 223013824 448720768 376405006 589215468 313159773 895229269 855832864 924139794 475715636 820396132 103809761 618531185 420179693 818744126 320978825 601503465 866252414 899239591 904364349 968303103 286473531 845936087 239572221 602760031 13001080 247931375 665176253 833404201 244017229 455505924 449227925 815837251 973876316 989168588 319281103 779649312 811352567 925142203 874334775 881940302 96932439 359781884 464661939 533964746 482974232 747037242 386101899 407784683 504272567 528664258 719277216 840645716 685897137 878802758 614802684 680631123 530244105 568870978 809908545 922847802 838897278 901147590 790572053 844852220 585490787 980233760 641040413 792845081 933438984 950489953 286227118 570938145 915768818 980732904 711579708 944054618 658969851 759202963 573098342 766084569 510574982 650093817 611685591 763478428 388280300 700465134 508631392 995967834 239448398 486858107 186949477 945852763 930263226 941507148 826024742 926330745 40976268 536803052 556707366 684234633 739742887 927471918 973886655 986420071 955398410 967948705 631853344 637529090 13631309 606698509 889441399 996181382 900762457 905738295 510412739 901478352 674906337 801601373 366986348 858702720 625467934 871980279 103794197 191116885 695893738 754498513 176829588 969599262 773102803 853355527 364875002 973060074 112806204 160056889 53050282 174997250 310765725 531621739 344846297 902906208 553181700 855476724 236728545 947499792 641139775 819615668 302377483 643306322 308877453 849781221 690485224 719878348 201451269 891748839 852865460 978253448 172319734 600882849 906729284 912206819 87450696 568557064 139454254 149776606 500091168 784011800 91260152 972076415 279445018 603864409 521588431 636274861 363220512 420648144 226390166 584673827 142742046 694869413 142720782 700873369 651013348 825538485 233436200 543431180 415003732 863294473 207659637 651506105 537108532 611396751 636150163 963962388 546482720 569802303 977424088 981155212 52713172 357052148 36757954 604851826 225729482 282263826 350327107 530654888 54462569 963636395 996991989 999938029 394721714 990786069 589733371 757094489 22410625 658490415 250953722 418035198 770097369 801212395 61939337 280901734 574247926 755724000 734985252 903315628 273154072 793804353 962139360 999834608 431977437 570212386 696760863 849621842 461336232 957445690 861970079 916343677 318304128 771786431 674249640 746394698 444989227 605819513 348705713 561898751 26031298 941359985 593630146 969750886 641768480 746773227 679458236 871518060 313481453 722735744 566322339 724864358 99446913 314929005 62382661 986402429 204261934 860590801 628069158 760587272 32759126 775428109 466765587 761198221 650234874 949238621 353177945 826346553 960265170 979578357 47877619 486848826 517969608 542152019 146943986 385911650 606090916 981124644 4252932 322591890 555006825 938688925 655784063 662382224 9621326 760730479 375829585 561405257 459774770 794183006 967849126 973265526 15742590 881342307 942790260 961379854 393836803 704969592 403673545 777993322 844685691 913192388 519310713 999488941 385018424 426353578 751349785 972600030 807907626 912750294 639845375 753780467 163926888 396961428 748390782 982735501 737725322 977845551 107581506 350439177 950469536 991492947 706507735 843338906 514171586 701983539 353280640 715960980 944252462 973209757 275168693 454579675 709559254 988148065 642633334 869878543 141172059 462373638 32859264 277848721 955227130 973941405 101388590 934983933 224898294 303993403 820949975 845256055 833402783 915398303 858948574 957467801 930537019 999480838 113557021 419865150 753884050 956936144 551807635 847460714 490500289 510031126 865936893 873431962 802551624 878055623 395335446 743115391 631850808 792320366 320290154 591707247 505843904 520474783 163308008 382872097 352726746 559309157 391911314 831155559 391824627 498649857 375823842 976038467 841684028 931199085 956360108 978098997 365283343 600659318 661763277 731319662 459255048 467605421 175382700 806589066 44986537 383964515 268648081 836275307 513435427 538692396 568398714 803980603 8775137 91686373 324753125 671338000 491296006 923989182 514012589 889370730 790235152 990653245 680865546 686059722 234955899 675953214 261506686 318863769 823506169 970781223 591466989 883632089 716643968 849223519 446315538 483450523 519943388 705834173 932047849 972971559 785897688 935957574 721618530 947827251 765418638 857298073 84772228 244414764 936353856 991389010 550037935 730659862 118177204 816142416 495482137 791300598 361982526 861836118 733931694 854871816 421703874 726643827 380984154 701084927 994344107 995594768 439487852 765620031 289548866 726600184 782900387 955658392 863362442 994362458 780095813 818337460 114464828 613679195 580308188 727482438 540091842 789660480 868926403 973782030 487236666 815708420 200117372 634356455 522880737 805397449 717136972 885341517 329774392 711235919 958708110 981181478 968610000 986094298 24582472 829958740 251312831 600092264 886892804 889522590 954846761 992238107 892459284 913294548 111968057 915771638 105908827 199799036 228190197 976503628 643490562 754457435 439175415 474957203 488541480 572618839 475668914 554441598 988593494 992355609 874388630 969731024 650139425 869113208 982925650 995181734 804952483 965166050 848335494 951729740 901473071 928397526 621143953 899084696 463070910 508451582 456603441 552596882 914751261 976821331 365066295 841554931 678650411 895014115 964125570 976887822 353495817 747780274 785393347 826946583 525085872 747400955 33041126 435126045 62909976 445271301 156527357 676163808 138167195 936433905 184125413 263840177 749448647 810621800 800323324 835623176 129667458 839879282 320044366 507025412 653034938 826285294 512011820 533189074 959847914 988940145 687538799 700161185 291517833 570813961 697598528 881750273 943147942 983177934 771207786 984480274 944607883 952046310 340374473 939202350 83138025 185105978 916579665 941832068 198988064 346208669 662815253 764341949 489087281 752172119 15899239 369467525 209760403 590715437 676443840 758866208 543743218 550863114 964024669 976531519 110134500 660896394 901152990 910017629 672466635 798957983 377716523 779549484 711228366 764814351 444862274 982524956 733348736 986945984 47547953 61962486 968610529 989135038 946381124 997008937 374330924 812921914 35269483 907192526 319855199 660941196 28423944 530506475 748217742 991543707 155305160 508281299 898029768 930814170 983910240 988008253 586329587 611186460 266610389 659794204 617842796 860136151 170316897 431698008 269760376 396281687 353102927 515404132 747563165 853562480 310736866 532416287 649271411 774663099 668710564 927136678 605448505 989454811 22039934 211462216 242670149 326434102 862655088 972469165 90072587 701815922 65811773 301375403 507464064 719379533 825993412 918821271 596196675 749844697 442445340 837649170 778307609 964157016 877982001 936448269 111115344 287189087 55016903 612846767 624729008 914403112 731940538 745434252 712787797 988341656 3707699 895092555 367788962 694591712 469179679 506865688 441203860 561892647 393997203 964492470 721863130 971880816 394603547 892033969 707250906 783396158 337322553 907123644 60917803 142446326 357491146 918927386 904642836 935060661 40717447 992494904 986995361 999006238 243213478 824898420 138858295 520222164 925774183 966894090 298768490 628110927 673619366 684964327 912334797 981296642 183487456 863704128 698376820 899660397 694324021 820601674 480863124 562529605 229056046 628533722 261591792 707808256 717409644 895476297 843652945 940393475 736693973 977158691 210948537 416321641 31071741 496401537 4802688 399265866 925012746 957029579 753796873 889802362 894998027 979605480 426054424 582455539 653847318 775910553 918282397 950608307 823343727 871887270 994770100 996769531 859677138 981292539 687162878 780694541 663419758 913943648 667974232 807751622 394351570 838995718 22831704 298920206 397388358 919167444 25239389 179916433 414407833 866695011 534794505 779425036 770716155 898942435 891594517 926997833 281950584 815996900 375423042 780725472 128335500 918695570 446981125 970519001 173682767 359397838 327311034 918069382 131566166 950012534 271957710 664018854 357898603 901799881 495341646 532643019 265830909 502639207 689892718 702327032 38983445 312945004 873226317 991748474 563328485 834475938 557026483 750303414 808570028 963846211 649783996 831059676 310122490 563881081 117910155 452663455 531142774 849758417 727988206 916726509 371726108 751485510 925749227 927841602 756724712 836801504 441047571 625261000 106645358 428925944 36518113 40686371 759018881 922553554 113973442 861690947 980527557 985173001 755149510 892948873 499527023 757321368 711429893 797755960 807605141 883806933 136712933 650210387 391561515 772545035 545920394 672688479 210084801 582217568 161457962 633971064 573328599 623938341 314085674 702201242 803028221 870965397 625945225 884020531 251245900 260542467 459505090 976581235 296177677 439553096 915583526 978326178 524389796 783971308 919628392 960924742 725013932 871709503 759550013 816422589 401613714 689645648 819158664 987435101 396096547 631831316 404940281 935770670 205042203 901710745 329341000 685622431 17495899 189528413 265648769 779981125 718907033 934977606 335011804 795568944 272407872 368346381 236621767 943891865 924086242 975685934 166023759 937841143 962863105 985514525 589927589 889962128 717064934 982129135 486320560 880939191 512370393 665556759 469051266 824558939 930762461 988345398 77180779 539653186 545099600 951499591 916356462 942224744 725805241 810406119 828719828 915998656 936955593 955406140 899782014 920902522 300083047 451789070 780717217 938046997 713010835 871156898 993580779 996957757 128216258 930492913 563300788 571824611 476064883 666567294 258169325 679578283 103678717 734263541 79838530 998504897 829063243 902482876 223960052 744134019 579613507 871342991 727295597 833551970 789112790 791094604 292954400 438871561 25660100 528537941 379420334 966706947 827147791 929218553 510086491 858150117 486074615 620298566 648147614 668349933 579583621 728085147 775964505 909826896 906403677 910516048 802128487 923100435 590662668 815963571 280466005 943982716 661303966 724768246 46938728 585535409 153306295 219424065 820570068 892099935 910244926 934057392 755558392 958785590 249020475 463072095 325590540 644777481 393709249 883431077 53765028 270743285 995747406 998390289 742237446 751575520 849655195 891501988 829294236 938537419 554127243 643430511 797123716 979781698 465568825 489362089 75581282 867970646 81707743 497543594 3420928 253626582 442400470 651094129 57669320 530473341 205988982 335602248 434599753 913981376 102847802 976140924 327138620 477328452 489318544 654937655 921100126 973422116 637437 283208492 492759308 660030234 562266778 567076470 834362183 895109910 613308719 681935672 721223358 776860208 464366353 645116667 140307956 241957192 33724881 676645207 6619606 280045660 348152709 427013204 927426750 970381881 769707054 832426339 919552436 963332093 589232403 790165421 241246885 909738442 901583182 919555519 331428487 692710965 913968153 979803564 659515401 984219271 679756282 776185573 40738844 417625993 485817139 627964736 906054935 999110604 696161634 932121484 295027545 485627479 479797727 552742675 144258892 529912014 391978744 465365220 360582870 429147630 584914424 875198773 185790299 256414839 29686093 999829686 762518841 943117943 286794738 500512512 222209084 451635330 637223500 953723849 767005470 911746752 794651202 894563673 845752340 879500501 197982238 283262569 959504988 970758123 634110824 805053216 370384336 784969589 23242747 821732339 177845624 364492639 588924667 859806040 106716812 133483511 703164146 838862596 624556619 828215585 468063139 649425712 218098383 460929884 356786642 749360972 866936669 870796095 471713995 747418307 562085811 776713205 186521908 933070101 934702769 952279336 914236971 954625535 673879312 822754447 41381523 312333261 648608736 882342891 172673620 289974438 100379793 602090777 479690863 572913571 263703724 700915059 88045956 314060918 334434404 395653098 82448291 297361451 666749756 760645616 814856728 860662943 535197674 788034150 257342991 702613659 892270987 903191562 558411298 992109001 725750991 862477664 253006521 481915261 65654380 630049194 626410061 750648217 584523968 672285322 394005839 458880047 351371930 451105174 43179605 454220379 498244289 632101714 830024871 839470767 542413904 968981841 187420474 850599037 428548868 431772313 177922083 996347654 115896878 784190014 5256288 652681794 101434560 892522058 980643273 998635595 537109222 812948140 487510335 910984169 945339150 945970572 681310709 957955161 384973018 425980121 273182630 718470385 897811426 927297206 184338315 490496517 310062405 634913064 918502468 926722807 38550452 814550834 397394201 914650832 146747510 277698094 227278864 755982795 890948189 982984821 325371876 476515693 84463889 186609554 557584094 695996871 962540361 981294382 943557248 987799924 299524489 593545982 794840083 937455047 84800986 925072247 988628143 992105398 259089431 739848842 247742277 383890453 583357796 957120355 538171804 784598182 428141875 662359929 735607143 862433682 550700265 566111677 678590707 740550405 490121380 982179527 594415922 755284236 555129760 656557948 281157591 806511423 175450304 388574826 781894734 802790300 973720649 978186160 706612556 714186392 341022001 731866310 186619757 847798687 468335287 653534853 284245108 418212609 453991813 599040122 59013488 446539923 386498569 508770997 518231908 680962159 390127541 977717124 533792833 666147909 742636328 744972297 824604217 825474886 471247729 757933309 198480974 443162900 548210032 635640839 201160430 958440789 494172674 684604188 637724064 702358805 912667962 959302300 968266061 985457024 812188708 950183123 226904402 652392471 398446643 549530648 80796766 282662383 775524133 936435601 435906067 538620509 620146332 893829059 768345411 982550709 537645887 883268870 957075738 981138384 600027104 607456399 521731787 830549728 977545892 994899047 269828793 295220662 344481402 798497043 799658752 960055461 314953467 491689969 58707761 844344466 891142190 914251815 531569395 657325900 91738405 711935565 595364655 606049205 728955659 783009595 568039691 829939377 901807781 975048325 301672034 568432172 640910601 999977010 866512310 924948436 439349809 691777418 970895694 997942680 831182347 831458279 801267746 892864139 187297359 558429190 330582047 993554564 975818649 987473424 507685967 814207154 109647226 942693724 14432539 988509300 681780079 871758342 269730281 822617576 613811163 967927375 514841015 806717388 544641489 616078343 604676028 997289496 926898293 966611979 787245219 881644528 995511585 995795474 611162438 642160823 676747824 922030945 19803361 509558806 482066503 949046807 749160074 911226009 623661297 987394286 35763433 404405308 297848218 557986820 160160501 674066127 101056709 227485538 703796503 937528264 347411412 737032713 838986466 934571801 85204991 732220507 214861400 459365224 394494754 741771958 592295036 772970754 896102712 993282162 624037783 828166575 522268010 611933158 131203050 492964964 988206304 998618712 985003490 996073964 916902719 996238073 78317370 790158963 338304962 409397841 139095820 645476159 193491315 781047804 176062140 386481832 288939641 601975133 567563079 933938471 709619300 879316511 592332929 655082517 764765912 959325428 302440471 535737689 32209054 857069037 509965921 548779328 185779889 391717471 210269133 557982706 585276044 676413142 57726833 786865132 628817949 930386345 250231649 633562636 492188123 976508890 998889847 999334956 122716630 324244251 265227832 267455490 926025500 945110788 810906669 836117142 38882668 832699202 492229544 551128399 906712103 937596863 63247606 558641622 541508537 707419624 369705174 435194646 418775245 984485179 890441558 979081557 63524617 799275682 177852842 645235835 797203955 837212444 937080932 960405830 836401176 972005487 236017619 788740722 512148729 572272515 161840730 240587782 793569936 925797559 275255283 979452171 361056519 988638007 25596880 341678483 980977165 988740825 298361205 962136241 653827885 991216459 617717656 995360030 508320692 861261396 382101925 869823708 164320831 303822020 340573026 831279410 67018557 709647884 72438642 806947737 827303050 987855826 121538480 669926621 908446473 974521550 153558377 646115816 268810403 543615541 93283724 994199886 482650685 709221161 673029723 776288159 930539820 964135551 421218958 856098743 989535497 994478734 206270571 631113388 185381493 234549790 405479303 485808438 988230594 997513820 814161404 989323123 487100059 802802331 598623459 719008608 592093472 670201467 888159764 995214747 698620076 945820882 361391413 911657489 528416621 988451039 167832346 541882539 892102498 916027389 217600661 220147742 5145688 562511533 58524411 284507212 741535549 833082387 42416590 95038017 295627108 797850348 245590436 608329360 387086474 898667543 36367835 90386150 437109589 724390547 884181540 909439413 430420690 566200233 589066394 721329660 884749047 962313699 374279711 611503798 139497268 586436398 773414757 937326847 161210577 431274902 284065052 423067501 830504421 869139871 917861842 921393606 173575179 326529454 625650350 672861094 256442812 530222375 463117252 928513854 249220244 743601574 888929609 927074929 205257561 605437878 675814865 929991939 177344552 192349654 416753314 542267344 835257931 883172936 72329218 490451800 16186167 606087695 310310891 653695622 347802213 843052324 810473435 814760943 820712608 986114769 15823544 246480936 638069894 774563296 885263741 960387840 548509164 942655440 51532558 488168742 882398351 974042368 548249151 756330941 740556710 990271535 72676515 957713802 474559555 724618717 629826830 657314423 727432496 836772939 748212174 792236176 835734987 863539282 603892712 660858921 19073728 919737730 622732240 702861023 255535689 303905692 589095716 869916463 192695550 541901852 48782135 926423657 563619911 752259911 59855323 517651229 181277324 411994273 122896262 141715880 995033504 996986514 652041368 677097119 686247192 873624495 571536508 582069097 210787831 608518203 370582559 995027379 862523924 877836694 358307365 910744327 644559158 792535669 815618554 937287033 881935953 910791304 583576648 909751797 800203136 801225963 232108888 490119439 141531051 924269394 426462251 756624882 958276966 988342225 177342690 893772123 258501782 359587045 847615113 890872080 632564788 793102510 156858675 832369848 984918770 996660588 770577546 900526031 498841360 938697755 36490925 48385682 305139275 355468949 544861079 571832119 648273461 900210469 593933051 722325921 437793019 847299689 646366006 730265694 730674081 848099823 177749273 717048014 499696429 716239344 633518252 828077395 225514266 298785889 192997026 512462198 756675363 892380039 413075126 671620767 125431939 916536505 574071641 621254612 442316880 558012451 815559229 934068862 513985223 701900651 477003459 599118691 801114032 825235628 462142037 576196991 955030924 972767377 870243600 965740760 724427370 859939942 249170691 726094532 701297209 878542106 366546408 994294571 211486992 984716230 217175550 247252714 181196620 454398164 192368711 270911956 830335122 962633986 735159513 899469632 461769106 698709339 249852956 971545507 722155315 774722859 952088211 989934733 780154943 973058781 820193867 904633278 170273576 602069079 395386291 947240418 540555402 933264766 508860860 839320594 408724735 425718497 700892383 831178165 698593321 825413521 629818890 724420568 896853749 900880467 826721204 931051660 210089174 830801351 183477915 357777778 624568795 897100461 457662791 668237641 854047631 915709230 181715846 463038676 995016181 996269519 709748838 783289981 415725322 623750189 37135299 474461895 280380869 788417067 915068084 936909146 172049550 694972379 824189815 846164205 670024554 830296226 40641044 745004927 69619133 980895720 863186165 894078991 731913364 876499977 257438161 988669551 794641400 979336563 285612216 733371817 84762422 610874226 146403917 771955988 155468573 918084625 639062321 728382528 455509653 887941823 22582896 30225845 93815760 802791216 924802089 990943961 728438788 797582417 257754021 813029441 338498496 840562723 687036820 918868373 482852000 681725402 589157130 679713087 16135965 677194000 281263807 996276998 661913426 773252474 439603304 973858277 27355848 99699962 6048742 865598568 334779520 734547530 665758227 804761066 984914823 997721591 853813780 909864404 484642689 770103557 602346604 777535362 961108558 965851095 239348340 900680072 69075546 761547736 306872546 634034620 920793871 947484706 993424701 998643446 505343959 820606902 386024818 804621416 696077076 880711806 375511830 946472971 351149134 917506681 499865695 769078415 413383498 419329386 717758713 743217604 788988632 871659297 515162985 518887481 737611274 909220499 491131736 503072071 901519083 989126463 941422516 944381374 300212966 320864983 622859679 930860878 994165147 995010593 567983647 707305856 269177303 929763698 544322116 550578053 444585058 580372336 81185502 776796503 403603016 696939605 734377040 748925322 95951123 660283647 790146540 916960512 483032682 667027416 324075252 427416228 652941959 831644924 625595416 808127692 969256470 994556315 347622389 716294451 936868493 979238257 789601818 968724388 129741888 307342478 286574973 633842341 793263285 954903072 614801690 802629536 13322170 844533564 466489323 827184986 312967159 548128626 67748363 819856263 978271659 990158982 900284026 993345054 829663719 858156545 545543118 884605774 701529652 757898941 461294176 937356095 761943366 891455662 669987784 859187294 344157789 654451276 482994920 929325307 779523533 881295305 837092654 846569786 91114287 430940119 834066205 914839226 381215543 442803117 384487968 748526883 458937051 966712307 152481677 695950743 49928874 693663643 518861397 997976552 585939353 653639715 675045063 719475722 845504793 933630445 348563300 699686726 851288273 881504184 46277831 413751979 638464737 700003078 236695985 843230883 671145436 983876799 995159269 999245134 988300894 988881175 241163262 896953912 582421400 630469553 81964256 300171307 858970064 907158443 438076358 630318688 799075363 899085690 447014589 556324248 531324445 794254740 813394862 970555085 43160085 70611517 861431422 897113197 533928181 680699307 655040891 758162240 181917850 740121253 116240580 847327658 284758206 635816817 69978584 179986782 944736133 980332047 343381510 629034448 30938236 912915607 833240396 865073670 364420840 527883684 900654786 953364791 661013202 895187465 736254934 803701648 68235217 549873439 148273725 856086983 282707948 970259795 799910242 996822525 931315897 993398118 337264810 670795578 857631177 864807022 181514965 285751892 736535890 792179491 254094750 766253469 612388306 820595644 505777058 868398998 386496374 597875127 93887767 390071559 178812755 273029380 826162790 918239705 155992855 688189563 881359339 999217577 835486741 896517164 521069116 607353983 923304947 987271243 705385297 841710232 21832097 117062246 909210636 941109380 231886697 278033537 181426918 242812569 769466274 790259166 934071037 964782388 449204827 914330955 647137778 673338197 945600012 964073934 349818520 524464736 662122781 691939227 559219 904871157 162727309 286332396 452430568 913658161 363677752 959161040 166154223 982149142 3459716 227083315 167757337 539477308 240874247 486642631 368966354 496732590 595599133 688523671 887771771 924873033 900196688 967426036 213539102 982836231 756334568 912583038 890218782 900968057 492599404 858358531 864682626 888179614 257980827 917972135 296425632 898470829 292117870 467694217 925678738 939482903 264832011 410907595 544883941 690833679 705666125 848253824 336728197 579717410 434835655 795751575 620366053 729247691 123529365 966435113 976477852 984004598 858001260 961505172 119080614 583412087 576260400 678619440 353876507 451968397 953966994 974130601 100630117 763371718 76060817 614486941 230421731 886328792 243698878 762074320 453008231 825607304 273713894 573644401 312714332 614317845 174569528 696259502 641691062 698788287 41512772 974477132 660318224 902853251 33697375 178625342 65563527 521914568 673507238 900921546 77235258 750684161 104297997 285235597 250313076 411846603 279843100 454373976 444777793 829430481 891268763 913856324 761809910 822242565 171007088 753605022 229861904 695039329 17718555 633885594 426342674 590417106 20877010 387902845 390279116 442766031 486812163 931358666 952630062 983065254 515208891 680973083 878928592 886238059 209456808 257114754 605465800 749358497 827583910 834983365 807502314 912953325 959988184 987664916 68067529 105346617 595973868 664155380 341379896 564977609 639293431 683390229 942908084 978464524 415804332 416043736 793847799 829375366 72086664 379383697 880170846 904431792 462677224 742008961 610286613 617505965 184649745 993969124 846247068 927580127 495626585 956319699 466707431 925171507 740957250 881658473 471865576 945044322 720454909 825635183 673600775 905418642 417710659 429791332 706378067 822571670 453657226 910170446 259605919 279021713 780536317 831495736 226151409 316791211 386042600 648714534 162758661 997578477 594079743 854654119 71286607 923405938 29746567 306504634 547607493 671951269 764623419 858556511 278248944 922688135 544665826 572170307 907088057 951538769 817586078 834060112 859526103 995143926 613969520 627909472 394731956 967024657 510321227 618834184 191161366 256210958 73639338 101664872 968834579 973675002 613310542 767185141 555035542 577047621 699726898 706385065 502076145 757554128 541206128 893262327 597396687 993976410 26894184 146060898 85359643 569590757 702544597 829647429 384061245 946238479 848724245 965624910 740373639 759624505 61483536 285614497 965037721 982839750 296556993 732946958 570539736 864988921 226963220 593828087 930446523 982349998 687573665 858623407 340614902 862247891 221911948 468361823 598713037 761284128 689630031 958891984 476840056 637383463 192738133 884128779 262175375 969202187 722736293 845096057 207883978 579430790 242136616 541574040 374128705 405245099 9878538 316793900 502269885 944151288 293800684 887768046 998277968 999864562 871430938 898424719 37001961 877881974 7787618 402402953 618958927 675405178 75199535 255177171 772324413 813249007 285239105 298733946 236072405 978068270 72491723 800852898 819148842 935769876 677688086 964234446 172185219 625525793 30193127 308848592 877701727 908267476 251094840 758925902 160802333 562480888 951726895 957492961 683261527 858721854 929137078 968596109 968800501 989233513 985540495 999420907 191371400 909450006 654357218 756124726 609862677 626117134 550791230 732900448 81753079 952533566 205291928 745253857 41175010 579032133 123347454 147073930 99870423 421741979 195860956 651350847 525873157 827256067 11476094 517096706 930570505 937304825 662156140 916214397 24852195 98812130 980569922 996061102 592263808 868187656 367635484 378580837 400966011 739192780 424758669 714136164 829162299 853516746 490693085 579013031 430188702 704774108 107478984 803209609 729696969 767174615 582085269 864637454 276041998 495213132 577997232 820922877 207515703 544394230 286738512 525373653 45720845 655591626 126479287 601002232 981663858 988836523 451391765 665704024 650834183 748687405 245136601 549493020 257125911 392985487 123879906 843866730 890471568 918878373 56310697 924712430 699076808 864855802 171775995 906432006 256619012 535387376 308350528 830119728 639928552 868621371 210519205 584806829 266257378 569516138 957661247 960934272 422711034 556803439 999450756 999647418 190799501 618504546 414321007 971367809 914154946 986856161 590674008 959879351 972958680 985384936 668995704 860086760 195257365 375763546 218674247 232124922 944362461 952808342 158953834 335366582 256734733 848214205 875958055 936264527 251692298 699866946 424008222 730071289 158896459 572387602 735985640 834809746 663626848 706809158 28382734 250458949 77484759 582730214 112235337 904230101 359324544 505476437 759703697 857119907 372135363 807695018 689644566 888186336 836211123 878971954 820831097 912392655 331204580 845856031 839569737 930025089 514740360 941295194 415001896 830572577 641123605 997949649 785046770 881268322 963205011 995072245 683492742 706318253 181955847 925499106 236328885 601525013 805463602 879595740 939270984 984158677 654266180 851348981 549886125 775532386 501534235 664905333 82953906 379164205 121315773 928416599 502331882 767183177 92082804 816660969 331210882 380165763 366601007 880672202 980566654 991191772 45298685 975332447 262259062 825694936 486629673 930864641 814432477 986518841 139791705 326768582 247728261 779176305 441858988 772628616 64499463 903009300 639507955 834701475 862170976 903957905 168150657 952150062 292441107 438338072 725063302 908115015 335924744 687891038 971785291 992493758 408268543 977927924 752446730 811456073 656841980 696763381 995326634 997842231 156643876 545015916 212469192 633098420 709911139 885577443 36153434 910162379 544168704 856124572 330422666 716947730 149012302 597049216 536717360 578636110 127836758 548295640 859151495 920219333 2512336 873214157 234782733 921282390 29612955 91667301 872113691 951320869 780142437 794099392 550289024 695332470 254022188 968818179 226290298 579521083 758495823 831016186 88142371 787160449 16160026 324142022 387711872 453862005 23959784 196187334 127139112 658172781 868022890 932474220 226560546 952651293 271253806 637118212 916931814 928699688 895402619 937409620 391164857 683236848 48327511 526718881 272561320 932015074 163269366 556371807 46723075 798202946 135830239 665954419 805557942 885701391 146494576 870807833 842678091 911571890 363162394 887318635 66382764 776293165 144629187 932116962 550757749 888735624 442732613 496424466 826757390 934569248 673254524 765608537 749176080 856934214 77859228 104202474 504495622 820462599 198981794 461408030 36646479 503693881 207576507 592154903 265340017 436535995 806138316 960609791 707200226 926166357 235177479 913284878 924001876 988359084 542920226 645773269 983103151 992971407 681924135 792936450 96674928 243480627 713225129 947817039 21418579 288800213 225036018 750143123 700713084 758506575 425254424 684133692 318627537 694196030 858903003 914505847 719974224 967645223 500489344 656030188 275384434 443439185 893236056 954815480 594337910 843142094 791883215 817934234 447359611 989886887 461397793 993890645 62990687 537346907 897248403 964696949 728675345 839592999 588715219 678056884 576328876 830441627 773700571 803304617 565441599 914105976 89611261 138957656 975381038 996677792 325133098 879403325 73175195 258608520 195288098 609251164 246664123 271987518 887190123 999434515 970490878 977725824 267890201 811267843 827352617 987576383 892900601 907611679 71601299 292728559 497503698 715213230 23436786 130036986 531900808 647100693 655606559 784791665 52591286 456548683 445563338 601465776 776943729 924586463 130590432 643873572 144786110 384916882 91344823 738710155 178711510 262269322 7634130 691104039 680737967 791706472 152801581 981214349 106727142 437391033 916917511 931005808 217527096 569838474 814329549 952062735 983606700 985313816 291816836 636167422 644502205 649861644 195032410 339241545 949807153 998428645 665599463 926771413 684449733 836128543 939931812 991230641 449965603 580379055 354063281 536907352 591786031 735396223 136994696 422320104 608251830 710355304 741684269 745561294 200660962 908877059 337741076 478394036 950005924 963304218 560301592 659692118 320978870 698268401 223705406 880802277 23130951 594622011 780832232 926339343 304070128 343866158 984728276 995069436 256334627 802274716 419817242 610193206 18224368 569547546 394117312 539720686 337395747 538005818 549137350 734537139 232093516 307156155 43116626 376139555 181074583 847663608 517848692 738436856 668656030 853745963 216286844 279606699 787072458 882079622 124358727 186304075 507405068 632146038 105531503 633546644 83859493 642048064 325649856 678854085 361683607 432308081 61457842 205632000 772800958 964096745 246525274 757360810 21730773 879321991 27330809 221481629 23531592 192148497 871126951 919804259 401761408 663111798 227288892 362015752 27768190 904196191 957622304 984376797 562820482 903269588 819958186 858603032 586612395 786786436 887853040 938473745 851713370 939789874 709143848 944309482 624477502 829717316 536229255 763076901 986463057 986922192 669100578 871171786 409083217 547285730 222221017 257115733 822384808 841676856 465171148 732456270 25074344 948577872 732122171 812691778 765824133 896463715 651324250 730625736 494335319 788193848 981776364 998189377 984577628 993861598 168462874 998699576 329805660 355726540 952806611 998705182 39367229 842529186 798009003 837846536 137743140 810868843 577664326 903835552 167338362 877692378 59723803 695359043 814305730 888989598 348608265 967271566 24795909 248137791 901899348 985691504 431910467 797449940 274448190 334212556 516796643 573534740 501779457 708856263 230639525 483490762 307354296 458930474 295978433 571948163 384254330 903368539 708344962 910748622 585336150 597903061 625348338 988938191 613343146 916983898 391401585 561155725 492053832 775364382 653973183 660198157 369057175 607570944 789267261 987906459 724194819 832273374 681436530 743865287 710886804 889329047 758584360 780993457 783324611 836216448 236932857 398188753 242159222 730302384 273182436 978879738 160808660 702173242 447128175 921365686 526804785 839764035 696382367 696719602 836642228 991575792 253032857 687777433 639425392 928136970 905675719 918811110 331877790 592638419 355046513 780641610 464465168 829306194 602652996 972895713 5366422 234974269 366116717 733536380 74860963 983658759 689329893 965830699 75422240 229993226 742056431 953659845 817052291 973428999 289768795 764417512 286517532 647534849 621891723 821722753 465921321 824728698 603398388 722133643 250975575 711183744 163626316 652316068 437290413 733617203 380567157 594902075 995528882 998444863 650814560 871262658 359892464 746067320 849269354 884398582 579715172 954013466 61094700 252763095 476270641 723785040 364218673 995179912 979342254 993140935 145705040 410473512 593533145 817865705 245915955 979529253 355216989 784569988 277507088 976582915 330107227 678808286 879506732 907386418 944217653 982681590 576535214 955659870 664877117 684979805 966086838 974325797 688032541 849269447 992122759 998046514 276075510 844110092 747451988 873325330 305323428 649319728 133624737 834352858 535218284 873988218 873663560 946764874 727039750 978055588 132696826 349494425 385932848 449796982 249773599 504520179 333170521 522458695 993314433 998075890 167525543 502207189 82349680 839940351 40463699 681664634 760383178 910084780 484714498 688586562 152975461 522154646 184382578 719472838 688154373 726516832 57114263 432743571 674333822 680868261 317307591 373567342 878188110 916636057 390196277 658993492 153445912 541085669 722216107 882563311 902138551 987798709 1470585 586188206 306512444 651984901 430901582 728985105 942192915 953102626 952615999 985381678 727797376 801606220 895530459 970130390 484320992 967790319 471906034 989899848 360159827 840080653 187669596 463805957 249091353 629651991 852069516 993461132 436858662 980334025 589862644 909620015 82665865 239850668 699825298 985207120 833443371 847622188 432813546 860172448 637331344 712381978 517393154 760717321 627249428 998932141 678421722 824900299 120515846 718277676 330654264 537476676 983428629 994655314 992659231 992677806 863345987 944101997 306235082 463899298 250184620 831321349 116080243 485379282 899628467 918341772 614779500 645179999 670185692 965296400 778088859 971703325 105216813 284931660 246939378 801339609 760601269 867376267 245270864 615606020 462263958 667003828 998488199 999452725 763191872 975958901 187239583 773922765 125479014 200328209 605999574 721331282 171351928 989810922 829823543 835268817 158088253 296308588 925268730 973949893 634586940 922991044 673620432 680996081 105068762 941879230 493367695 620614794 719941444 789655117 87518664 803606201 647596147 724738944 287946768 804718041 680428354 819716172 993167377 993642649 377069847 537072142 131838693 253090627 940974998 958376477 274038874 362876464 582878476 708617784 259548515 611601074 688220657 881773672 568690779 786708568 992689997 992813176 84419088 364733659 566694979 577989784 353669355 422592547 600425989 838838401 938336649 970836078 441290723 923544373 915511730 997167813 121189046 224469749 376550913 543915423 229404074 805010906 27049745 293809145 266588022 980215658 6686066 78293228 197469791 423841491 656502443 748560037 746282439 954833572 957699191 988191860 451010185 654162140 144007279 715405396 75750365 241762405 974919652 977445042 464944977 745783754 617183339 633975484 346860919 539491263 948483233 989786826 972721377 983714589 246636046 422173456 35778313 687356083 548357642 635881648 526544806 885976027 710427020 760927610 810538914 882551520 859052289 986307308 92271558 999540345 455220483 582422424 781126951 839399255 113325828 842183146 612857619 751534617 579741645 816743137 909237881 957927733 305076322 617937898 251870405 897108052 112291651 862549280 92053397 674835534 199294624 997441494 207857536 791668139 42139721 920402826 613291295 763759415 569816327 742544178 862280955 986180972 588814231 989126619 202148419 563888500 245980146 347145955 997112265 997550188 340566767 354189516 13435907 124586837 537625366 893373176 939315919 963532767 259537991 360236020 877270541 880131230 473697159 615508628 124268279 859652557 860660776 890280984 344584486 491081304 821247377 856595449 86350114 650818295 510193851 931305763 735878321 947899819 644847607 669236677 56607635 811413050 877602808 997216043 995693849 999377595 189762249 501680172 470306605 746345277 489041126 526738794 896601009 923413872 189329284 761215275 69540750 770676365 695645748 899882401 572519606 958388297 780789562 793307440 600696693 896596668 386886567 851562298 289265243 993191612 985150611 989454881 589545153 664733921 161033381 418448647 573697718 923635062 339526057 570111425 963941637 971542775 473239952 688064936 680244741 768415631 387009908 968931876 642184721 672607102 266182288 837700656 601502138 645743142 657187510 814615161 959394946 984394782 219477973 512942983 547246433 613456541 962058056 980856340 318460780 510098479 182239925 384087287 260210256 709888215 628182006 866170118 824560778 962278882 428526871 752046827 158727719 963376895 517952388 891239244 760869547 963471726 478182976 726409776 242913487 412030396 406125529 929499174 83424255 393578221 949554174 975706005 755816352 960583265 194930162 471927345 883489249 995850446 851474259 993951433 483500390 596333599 972013489 973866305 216941760 697598708 812367852 956631871 28016944 491389732 820241276 976421778 501645313 825787720 145882909 946220492 456917316 726403581 554689638 558758990 665689371 958051631 317182936 901617828 657764366 658814789 874190575 877510301 940919173 993659152 818557901 923815360 590879386 679363689 927039704 997855010 575800164 877561806 369190530 497240967 603493214 681871112 969391355 985559977 655773504 675002700 490836662 719062531 77535875 405699617 152350884 997224192 551072068 558297430 142774872 981832285 656071413 726849596 111399612 585153634 877992654 960165955 251380654 620838892 905972665 936065985 5781011 459872689 93482576 791007853 794755453 948276785 85486697 850032987 804723059 854437590 907063585 994578323 845445990 889023861 867245651 953186574 759418965 894981191 428339306 857555915 23849882 641908333 904881229 924891297 353949460 372922718 535412170 703808749 703054812 882976408 20157504 40014235 528214548 748857947 489792273 975890892 862777577 885611248 212672473 616561369 759897257 910342087 537638115 838502829 450719178 932622595 955037809 975175629 805636760 863062337 743819018 759596433 498508140 669342684 468296877 475424335 847473697 974474203 892989580 971343852 374109726 715106371 969832787 990121763 443522920 708056924 646429444 729764525 773161970 842831944 37425284 420942992 754431930 984846666 629375004 722874357 989849651 994917304 873000364 977137378 595776970 963172236 335606065 398938667 561859657 621309902 658191966 995420058 944859907 986828572 499240164 545812180 889204482 942565320 1724989 443769633 996272202 998110024 171706105 339659159 839790871 987886666 475748815 510009186 464110153 871427867 404457881 666043228 927016050 946414779 49232958 203374924 462101755 607921779 538506899 902120467 250852290 586653508 871665762 872117928 408258345 988696797 598514553 976333998 39138621 675793224 77905249 613749554 572431229 668081192 603884428 828923250 601197588 684584301 635042853 983035396 70151419 391743025 894635799 900353894 931549968 968537651 944872573 948861277 213503144 255439555 66199298 817056961 505624470 803276684 381638648 533146365 464602530 522248887 269805612 671781176 748946747 792403932 734961455 928766757 770030618 815738435 528975172 561766222 374623468 812335531 106953475 204212209 140137268 310000781 579556072 589068583 671786229 749672888 722087280 945511055 346174896 581272347 830819936 913793330 222203032 797124090 257126175 873086453 643024547 807147806 829744589 948327986 681584138 897011754 616883807 823396778 277758598 707212180 382536275 438263882 73936918 854255393 51846921 994056400 360741513 607818842 144536788 926485212 892151314 970501914 225667609 710393140 692921987 934889622 406822591 571573842 897318204 967793386 22812460 279707120 615151824 656949103 66521974 528671136 399217555 586668458 879529646 943728109 33882460 345885949 272142996 470793132 515518325 663357324 783533046 926011107 244346381 310912728 828069013 888788068 198161667 224911410 879118198 885973032 872105504 896772193 216360324 867658479 37834517 889601377 670342390 784241384 330587462 962445544 681482058 731727378 256353292 682113752 724245330 879207672 232791007 503960087 525837317 824452700 224713894 451794679 335399620 658526608 592408102 655649992 430675597 982583336 119461824 997466392 774746346 961991641 81854475 457648696 919687106 962298792 981280822 982007787 481154556 697069395 278904165 687051331 170447355 337378382 475422137 654338350 520284109 606486788 867342828 957749742 2775354 771344378 529601145 693179585 846402495 884069866 296813910 859481538 114722435 895700728 215587107 362948397 838261565 965230571 217813366 880292717 619537082 807700368 603336868 762804097 999683761 999700065 614947297 940024049 754341184 968289045 995102678 995688632 926695043 976420905 756828646 933179602 655829069 946747962 858875456 886369211 402306499 610860388 884107617 951922107 862483462 944767867 988464646 994016923 538473974 867610593 760301542 880511373 900523583 957970396 977221896 981692524 368120889 394272687 643905691 996029200 369543752 577327866 173945248 246129015 389397821 462646160 111433348 730716936 620368320 771172666 762643267 904314139 808659542 889393358 10571923 605341781 505991911 910566081 912290884 949091998 731321118 979455903 943851395 952206825 969405418 978875968 392625083 734775689 545809073 579043887 343459331 688910753 404516270 806535535 375427635 502503500 646996631 814762212 404255449 894001531 919879815 977800004 994094742 998734303 970637699 992006066 929474067 986361983 942203425 979157363 841915946 919559127 784508472 951565531 153518864 436440987 206711366 727851991 757946806 858207392 286282227 636721386 305088468 729919802 784748058 868282438 367459765 516324953 147664488 402944186 33075715 790786239 287619214 309456984 22901708 470121169 530317941 630735765 115290213 660056308 336367290 623430785 860542123 931884697 948454096 965528312 568267274 784152193 644742940 789448463 415322990 662095263 569186812 753691897 231010459 407755929 357795821 577743771 97238531 298214407 819397041 911328298 825900140 838974430 882839078 929070341 42091945 387323010 793525035 851352811 627753056 946103900 757899949 885213630 106339194 488127570 974463356 981793517 852021890 878207657 394454622 465388673 204006716 642541174 313405838 605425204 684704293 929189772 416317724 936313615 404437449 545188487 135651499 941823957 694360875 866682663 336346733 939795929 698205580 930589051 468162866 724767837 496375398 603109112 371408108 439029735 689664008 818014127 665654369 951321096 224642778 250292227 960022428 999673182 323204222 875895898 251603644 775815820 156370439 982891318 519154325 570678665 902964692 971287639 643731822 810732028 318139892 394943366 280967500 683409051 994629395 999902073 100347556 162643695 437177002 486569863 723932912 911027798 934245412 953475193 25313008 805722806 495646878 627206790 210588022 457565993 300732558 959797754 697100845 797977697 460545780 542590277 51512950 73784012 187469402 427039017 895341974 921015531 627347566 727627097 798612512 928027507 270147585 619883835 386924988 409055117 798887427 935784338 466509617 651804814 428330427 774740959 85345300 381171972 805521090 991302837 115876369 888525786 957564591 981312835 898225695 985696715 43060974 859125741 991523645 999171484 721599396 889285747 425158504 499734435 723485114 805007839 341956224 887485508 531029901 792076058 943388992 990272572 569247151 870886747 148404437 643690933 678157833 858886545 145789283 649244121 857829454 923946739 483882200 695074739 193546727 521002804 372661832 552916218 435978703 736186179 488281806 710510231 892841505 962654371 803945141 901126333 504990538 719390809 151073596 494999579 83935160 906018006 61528112 586640951 970430999 987872540 765472947 990408093 834037253 858868147 257440204 664321585 375638617 987441838 289295118 592336243 740764149 779240816 838504041 910134042 953997152 971836502 859337293 927617377 314089975 812524596 291287182 681411037 620533368 638063526 799220420 930964227 110832147 904034969 987697017 991361320 352483934 880625748 863460603 987252751 136379177 680745125 551571939 932697113 349208763 660981149 647950407 843773855 219835776 690657928 340612939 354934702 560546354 996966975 243384763 340748938 387657133 741231812 739800848 952765621 573873288 940997053 496158619 902134680 433001915 706639233 919527740 948539653 592703872 794685752 37681956 118464968 329511161 507417339 789619752 889433424 396911159 404334652 325968217 546761355 794847745 885758928 608279593 878979906 305648508 811337884 314700798 420123904 118811819 171555751 518018321 530824094 697052294 909317147 111457354 111598452 74308662 516865825 792472113 957225410 24818688 599584708 808191366 950865691 802254311 824109126 48417522 410079352 926351629 992678145 386669582 819537997 956114385 984617720 314846779 557472491 868818110 907691516 711936166 733125189 18384284 313496746 405767764 616990200 538890484 932246715 336255571 765112132 294663392 677937784 712018792 742222257 659597514 794700347 894683923 914025809 961497574 998928592 21701537 976455244 397866973 806698673 641954772 664323625 96965648 983616948 990655224 993439411 854477168 932271673 432818326 628474266 372382244 889280319 193388006 669116875 696037354 982969116 22038647 101280872 450130114 854966963 79297154 397518974 85585138 586126777 359761412 615506084 261576945 842063497 131883145 226538846 38821487 946511226 279377220 986289726 418985565 956402789 262227607 668637368 805312815 955848314 920475422 992504834 706431741 744444006 998426507 999464724 562092852 901897798 242183364 993088343 953959796 981373891 57753421 956375054 724990539 894805943 142681379 572082476 676222417 805750256 301530782 737970249 725681544 952371914 774982344 917707277 511702289 803027062 543153815 590186783 172070457 479679323 295590726 769032027 640909150 659190155 696812944 850208211 604232093 955909792 382297909 736076538 516131508 952137270 535976260 686195851 140153558 575687234 890943998 997628774 333380586 458782745 544208118 598228007 311899504 391238890 143823861 896262962 204767183 345278817 102851781 396134831 515409808 677541937 188435746 472662839 843066036 993181348 335121560 492744337 527183910 806200668 49131117 405441373 611829681 959330050 240970141 366508757 518185953 589478451 137051706 543229400 666502661 980789349 966912549 979222999 213146306 658367511 861812949 878739716 708278438 833344713 716873665 883017788 975361707 984940149 243190916 959373692 595570090 626144851 213377955 288928433 71563298 730625134 317308705 385150263 971229323 995092456 519468967 584957116 903075577 951188547 813073690 935727692 858524170 872678325 569341479 979121729 560566687 984393680 327681648 878273712 671543735 833850767 66024702 692571370 568853769 795140727 784063096 863163245 852971605 955977400 848976486 951637010 848255789 871580607 226478266 340126029 203077801 339061168 463923573 566066394 641799430 772311741 653625795 922014958 30276292 557378303 226492691 904083132 480394761 888215208 329680046 637663724 642402202 649283241 470489962 748758906 773308302 991217319 762804419 946229298 896982456 952581026 445465816 606675433 184595104 297711645 184566029 613044977 247906008 795361735 245337024 702470266 432775981 561859971 582071490 607729224 558182256 913143153 655841916 977441744 903136215 956236191 671150779 879850968 678456206 842986665 980831055 983896458 636627065 686247838 891150947 892272887 752299972 980624336 982471559 995100354 693600323 766823501 763581050 864165560 872700391 970610895 786844835 891997698 227896931 297009124 565912388 674461172 289969246 361491818 404547453 866981888 167285132 666558927 341405400 955859742 771470600 971883828 350039070 889028324 185623257 949571770 820423787 970329623 631531626 798059400 416641970 456460909 720202416 830678041 79286840 412251318 895525772 957208505 513620358 820914376 862382216 993291095 515586421 972787828 186316710 831655247 767009608 785655612 549548234 602392834 841386681 924107823 862289560 922212834 664272117 970560193 693258643 857531515 846506922 867040094 859569548 979865226 528865689 737515771 150052326 384572633 59779481 464821152 722962004 742709822 618816056 665930758 53630839 528905893 871137313 976493871 208293555 752869951 649829286 819808688 980972792 984856689 205161668 641255692 853218661 933207553 30184087 60786513 141387371 604795750 859678361 973402972 598266945 629265595 59375962 492881894 132216587 848130449 658820224 897517402 413306329 788171768 450511775 616672882 278843253 887279504 846862219 907296953 566969868 829559873 244897593 340106037 448035522 557906107 41680158 524485522 852424959 916720155 649581976 661571862 703697845 755877367 53625111 547706584 242714322 893449440 94095034 669333130 927194701 958867494 383419002 512106509 661454979 857345621 60231397 316461790 726919805 842392203 577867271 973436121 445756571 541834478 977011690 983858887 587520810 601865140 929585132 980340804 10203919 67315083 106718274 915645886 207798924 629171505 352745569 917460896 109791367 591648348 697137477 776366877 553436797 938940315 855325408 935197395 953189928 986373742 920911449 963161954 172002746 558192546 380773802 689729490 630845207 720482741 341471716 423214078 448125138 757573331 142268122 156324824 623678281 657561955 335176410 363947286 695318781 731686207 656991893 664838846 453334394 482360372 355360481 436655418 842686583 854406143 459386328 702781090 961090003 970967652 777870128 859594974 72165122 84808684 396101047 678538354 908344387 976371739 178146611 825512980 363903941 690924792 67411542 218778786 737809196 808249300 136138952 390337889 323860745 758643924 970539411 977992313 102317888 254655218 927271896 931716206 495736139 650072959 539922106 592192025 797175216 821819664 759651741 945012630 198603661 788010330 548778224 854446774 945341140 995828848 556377506 671713018 763242743 899891037 820517158 929030961 267353481 850300616 47673018 182242869 280059837 847416529 920422823 995887592 623237780 700087305 147275057 222649050 183128168 971926362 538301865 765148861 544916646 584131756 737022002 843653024 141012192 827537157 906284473 958655654 328099500 455312972 244582265 973959280 534260634 940456575 104802857 949247429 279685087 876153932 98741740 871726414 186448796 443235607 261781453 628273296 185738810 327261627 542525345 727858827 820841177 901508888 22321334 495681023 973367040 989423701 674966127 690971953 331408011 467939972 136009257 479642811 366774735 477598396 378921251 550991661 10916149 227085972 21582602 693561758 598775859 917817177 437513091 879986777 582054853 819398489 812456559 883518960 96758886 420868697 660527518 753665230 868592870 971067317 853038571 874158321 601487000 945971778 713325652 945083304 820100175 872922759 404451192 595485201 317116604 661030619 647116904 951483227 917047745 989378950 269589231 391954127 573642615 950595348 555482821 607842426 875897710 959995454 259984651 829109344 40976241 506369606 105138332 827912612 825809131 834010474 381439728 394142371 503923923 680400601 402030931 649952750 534162506 761647548 139367404 685457037 898734783 930873367 331606815 800983201 816563416 989498668 745649008 838560697 902450935 987256161 356918395 919823201 517705080 526558904 907811813 985297095 588545903 916777673 58974224 350249254 444943445 473162232 49198206 947113370 583775087 684117581 780144116 831272151 858893586 946838112 225371624 798549423 534767253 870491539 782388988 942029929 541737041 871443982 189049065 629790609 716793430 997715018 106115913 878416512 469151323 506706654 360787188 436334088 951535596 972108120 348305491 679316187 559330276 906652386 139317184 692466358 362595379 901474070 870563213 953733725 507403002 808719930 9614339 751478177 410965495 476121168 659372787 773760926 972438357 988273683 934975088 994429193 298155513 722287419 648440657 915150595 983729724 999877773 934380310 971561287 712539230 954010813 600639069 882367018 930414068 977695163 131649054 213845292 218086415 372559249 34958143 797318848 73942940 265699525 486666974 569932996 662478166 862074767 139136204 724505282 312387290 367944250 725157139 979167092 414083468 976645934 865613988 980020471 905407624 995148964 268127433 842010642 28577355 479747880 61048934 553556462 78651184 546802495 550697171 560462162 481173237 833744072 657801695 792418568 283521783 727705047 671906924 986410386 452368676 814168566 232656576 257481773 2159607 945781791 325814897 509503973 909113946 976712347 287831765 789991900 829353730 878952590 548283958 808749936 522961612 996992787 905007901 935347147 338494375 765281349 718366411 762032864 566907978 575213371 254429605 671283238 83188889 466279923 44760212 568537289 690871221 812341011 532988583 643800656 812435055 958270086 100893430 935608885 941593050 984621893 89206466 843207381 988032774 989607797 972514585 999361082 758209176 794444073 842673975 975770171 287925053 744850897 84416106 187081261 947944922 958850335 646378482 704914541 312161235 902449963 49096512 973361412 606180576 767192125 859096349 946429497 639026372 941929647 197819296 460179638 763582555 826766566 628769160 633981561 457465760 825741452 675858282 830551339 862520417 904107487 264282256 274274942 555824021 667167952 786214575 870521836 180777536 236885952 794968150 799398238 29852981 333581367 152291048 572526207 339275776 771169483 190059640 859950984 631759632 731311523 980859836 998122566 443996353 989419219 291743771 444608139 696907606 771249411 822923811 869427895 160187087 864136361 795109027 847171822 499672243 604720946 813140734 935908761 427277182 726325178 522409888 564179813 812668223 924129392 962653099 997328234 299612376 407495109 349582133 546628625 372346113 804839680 388736351 825287506 721024690 841752250 861819931 980189519 272272770 556645043 216835547 940364696 703574162 889238479 15969452 784675572 884192645 966934234 483926692 671352902 55890621 353528784 852833623 887775300 227966660 845113309 57553546 187516999 182107357 795785909 151975930 850012762 261496863 671725949 31011182 269259978 884356961 933763733 473728769 972478925 697327597 719123565 744708362 880383235 421867326 447532020 399916477 490343420 589046830 622656771 708534285 901690747 830867289 840431408 788105625 923447801 52031825 741930207 391241153 703715034 231761903 390153928 986013687 992253049 213699851 415823077 373060730 943720430 540646327 779247681 753178161 822646573 822354119 997340798 226222029 815066535 836646077 955709839 413663508 616523836 834189429 928485802 110027780 317402322 905214201 937622573 550674097 857043593 26685968 146556963 432896754 905850448 389356850 547792962 842175279 983323918 632909689 784769758 284072294 836261842 887226509 904401531 103020340 676126394 270839025 984525946 475839533 503958865 565441662 809768794 812026685 849231662 998974020 999713189 681407645 988096014 466500923 794459689 631753922 713973233 134157434 480015045 929047508 970511105 458560271 733861022 235827411 770988170 881986817 885576186 545625743 698679130 229782155 503308082 528639576 625405387 48598235 276147947 32018805 972587375 193161578 868449835 796247502 842980844 220113338 898286800 158063817 577957091 979420935 991164807 938958295 964854008 496422657 691158057 840319853 975999136 206421362 461065504 380474648 604125003 802765826 983370732 59438710 854182858 749234693 814092302 688189888 908300946 135455231 777662974 201770096 810865005 362038323 643765408 610250438 691521138 239103284 630945027 769196155 858175439 179603387 973822697 415826021 636957213 815908548 966135133 304329296 706001816 930422871 956771664 904407674 982685185 255531718 694974861 825892380 883175683 191892696 341386835 404891330 425936356 598976914 985410858 266365657 502745912 383176146 956486245 923885721 970539598 626310651 777974937 42852737 967761045 40199533 47232260 441159822 813015888 164210939 365304140 217789045 412770191 961509580 964921630 104220093 843138617 651183146 939890453 983235408 993897779 382669432 572394139 527885406 628055329 821225572 853659578 397500995 895656049 733929615 877987519 858340238 884486136 213328164 579153668 586727003 945076300 66749892 470484500 480090438 557992469 155957127 536206740 436521524 872712068 453316972 854910437 895782232 984484141 499534744 818035561 141977734 232076023 859457529 936857978 281138634 468664236 434335016 591110304 905852775 907496981 546384180 872688606 556068443 600010034 258943314 326852175 252461003 363388588 287903712 307244573 737467551 807083934 770771156 960445223 147524180 633727514 420832161 817521649 914389215 991924863 963349350 990885726 31094557 505532301 503663198 772810504 548776874 958897745 354847903 400157218 934541881 949390722 82454275 758920500 21002822 624315591 528718849 933226586 239041222 265942226 688022692 795147883 348406452 749265947 23937271 218286271 241340957 683654434 777802330 920385759 44583157 455107140 861836882 950839613 781704093 895688837 338195269 996967391 65558242 738428618 472058805 827361306 927610446 966389084 583282381 676169374 47179860 563118886 854770823 953283238 466062021 864574127 921740079 966348661 240012443 810122179 166468560 624647478 757522266 888694857 276864063 988684074 224160497 230584068 946093255 978264257 330251892 411001621 500542412 589979325 211990239 346933872 49884387 901631325 927572366 946033733 310843644 808770059 665248104 766176263 736784812 931451593 612445986 868324974 192436136 456431385 269041454 810862263 7448099 382560716 533723875 817054294 610379172 626670725 752572354 773179969 580478271 780758303 893497934 941814849 569883560 659348346 428388957 524434217 513491846 951251739 748064628 937289073 131379208 759106360 461616291 932155293 137118042 187391056 936325623 942363491 305636069 888750368 489891764 645700355 989339302 996056068 979005182 994432070 136760137 865514500 75857235 173506960 930803735 983284896 99002265 541020009 287525912 732569527 313322029 910969202 711378708 961973623 624744446 744762870 888678768 957330791 700263535 934265939 701518943 911727251 335971501 362899135 235989624 539935578 450195215 842094468 416069574 754354836 581596437 874053851 803842476 826117346 633187009 717340532 654085241 679531470 289047671 453849743 860779034 966133246 895786465 972802578 815648675 958774745 147740386 294300945 23127778 529957165 351799092 630785505 398906735 438510178 223842983 893493898 801846622 869145041 604841178 765018276 494881892 826090296 613994037 992013881 437418061 551860195 800129205 875239480 732484271 751790888 696747214 982408437 625027080 886433194 648874314 842579640 863131598 987699234 361620453 994762708 739342877 987286282 242535441 385679620 663636364 828866085 254092827 353709270 96392805 867057353 145093013 234126920 868182436 932586404 484672495 540825151 918409028 939933698 879392737 899964678 899027041 960187827 469778255 533260839 807489061 933933404 543741300 769221466 750517915 852078498 414232951 586823140 715948249 997814483 471031037 717495043 189825480 267528364 971870035 984497711 859504776 930410341 840769493 993487677 759667267 844344886 943719797 972503341 729362507 930474321 103716861 733074530 351031405 659369456 503334936 597079043 944655086 955423278 273644184 862070487 104899111 642109492 6449286 495871825 932446431 946209315 672860322 714852139 385015727 855208108 622148978 797475861 283523586 898239400 545526428 879141041 222670322 964835374 551194557 962734568 732348263 945045902 789821783 984453283 233777682 239401894 108401055 911332202 903648696 922244258 480384159 829000452 690732524 937824342 992706416 997937154 260272947 556171733 847314651 847525483 33231079 133916090 842850086 860991875 85823288 169320816 467281742 982752610 665342635 842292220 444986911 874733898 585542149 710038508 958386460 965499415 453360012 852614431 4052435 927870343 640587640 903747607 488192300 867798611 537135281 606435566 695289515 929489048 623167739 856595292 195123422 446538409 325831406 882971122 820742035 849175007 377955533 460250857 138530114 538446113 404365432 738664867 322943050 727290935 62893441 544437715 497871097 689715790 211765680 462933494 612193540 970603313 702839320 731559226 604619855 706417372 959607687 992757802 704128697 861255781 541230250 614948287 996254748 996946575 796965819 998325341 22480932 123444955 260028835 770697743 588320391 677937734 417406107 601399848 951354131 984507192 226493474 876661872 564812567 855683040 693444971 821268276 484667614 536745789 590373315 795704457 344207573 662477673 120527115 179365427 61654757 591106342 351990184 691854165 505028359 769553515 482769899 602783148 307016677 798671084 246348596 631803082 921090973 953180070 623652954 959983922 964504702 990698525 900944501 923217858 950034102 974005639 631715149 658190181 432005585 793824958 370645381 930127482 539375277 635694823 233921674 263235363 912339717 921583091 355180574 782807405 459388061 550739230 956425033 992113131 715087588 779604589 199539596 807107845 835532164 952688602 182038989 559572624 262366200 968654000 755970860 804464550 856239510 890404601 675123327 890150092 782167257 892879188 519034407 758920078 76294703 247979007 543653629 948753183 201779483 964663223 645020823 899301322 189349757 305038916 967534210 999545562 763386707 995917647 329153075 360954583 420879576 839181860 397565495 504301993 464656052 967523732 597825109 753203881 488047395 779944214 261440214 563414591 719877003 766750165 463194061 585709716 753522783 806385813 721152557 998029416 920449529 976590390 187057531 421622562 668908807 935678581 666271257 725936266 758872537 781731488 120705072 159702518 171472854 253017116 53417573 625244514 292693927 894724142 144685302 766540853 9580966 100552124 320575817 867274903 339058880 892942678 786242754 922833098 221536362 504855906 909311342 967602045 650247545 980742672 376128892 667534901 839257106 922518712 731470712 984631667 288179997 353291715 285663001 625820050 447410669 973072590 511915104 713046980 757147521 953792808 284945045 892941659 262378326 808156169 220327914 670386960 786517746 808505381 19950385 824682912 193667514 315528959 168329910 389684156 199949976 926530895 416447064 492512703 60408931 910877889 670096052 854826447 197427839 960638097 960571340 992628786 979772090 998956881 342816988 547097146 368680530 792134467 138952447 538560291 535267001 968410109 66739849 927984974 34163633 818372462 176561737 687050202 548445261 950214899 503698436 668469038 664451452 770511203 226990846 253191717 56512214 664336574 715096662 862237580 245871049 910393478 665076349 793021263 431135302 651160896 897915001 972894943 361333052 486817430 905223439 932386625 316345424 980832966 707688509 807797520 32265501 629888535 17920224 316026040 396015529 526879689 473039116 640493782 316379715 409656033 908911374 999380140 427541968 857913901 550896838 906122506 61661257 646046914 657070653 925022360 624047909 992629761 965847826 969030517 327987909 864388824 116238424 384889691 471573954 722272180 387539123 424956020 925079946 945986822 51389195 968770335 322521506 401622053 508153110 709020389 779533072 998200329 165448637 760435104 94048244 395328182 852812247 903668457 641533098 883070969 893848597 920819198 838730075 952890819 72184665 423549209 714334633 984024066 974226522 991145996 663991307 913476823 940109758 972972483 937417851 987265916 22442359 645236142 760544336 980723580 552403807 685986649 588423264 752490135 978929050 979390021 52594007 313156790 821807476 906138127 781706837 888238488 40084258 568368271 949144047 968764951 441937775 927915285 591856496 981808414 365361013 991723526 711693459 993398861 596085496 621588268 587669683 750805754 871747317 936736489 358329466 751022884 11331785 392161633 285208417 896231128 658455904 925846209 978743820 994820027 45290764 388130111 253943299 496067564 465114446 801076883 171127183 397685704 111663676 567521059 392588681 972242269 139137018 518422633 893810480 924734072 54390289 262978928 921543440 957047557 175577588 896853365 10059482 675903653 292622876 802425029 621431542 837301789 507841327 870066883 885671046 920572447 306566543 314081480 313965595 630680115 11974401 149133687 198990473 788552226 787864890 888112137 813120494 999321778 229376738 578046768 936642502 980711456 794187310 865388587 372323654 552596745 993942135 999797636 970762136 996937184 276258499 855761790 826283433 964104790 784583088 989447254 502029737 778217425 772052103 920248746 437289637 466983376 244317125 393033089 921717863 924317735 866644282 996049508 40251105 632782371 339502447 799091890 415510690 754194374 234916745 391483383 933504038 936896758 676533539 735402865 720100343 898752976 132554308 914870546 594637132 845665596 26362254 837589727 195801091 468161172 182049586 314425515 938057963 943475671 878546602 958013127 926883739 968863027 171406802 779514227 181081293 377601930 892725704 909919884 953767850 959333126 501072811 908706225 542632661 748514141 117740411 842132244 419746063 455034667 326399247 602597382 304159415 717598647 535702538 770896178 389228154 517354022 522550017 671745386 566017146 642233361 771664195 999623837 980868716 993138078 556104032 775445373 741282 474546674 106035200 369303173 511634722 784577108 184942852 629339862 657753329 739974231 18544189 170017255 206055673 453118737 245317124 381266382 273692807 701086797 966477921 992197824 244786382 919023196 45944780 108003653 177106732 746953464 317606248 411006693 924463709 933227741 50973784 731683952 595757732 772797080 930057858 950458477 960741058 972256259 614476478 930905351 461040149 511617560 975677637 977389106 785707235 969183014 928797085 952002999 289258386 423137217 738592994 944465672 677925324 974802038 378952980 938598922 471807199 756971075 66394200 443917084 494703131 632785480 994662305 997915052 500688706 938657471 895496962 945270498 665225314 787491784 619546932 925413781 972157921 999043099 856852164 859165515 953926306 963131528 426320119 926265484 423186316 715461860 847441226 869300258 494639200 585502042 55205333 862723539 200897915 955702742 142767027 207221730 360141011 590850165 808152405 984131821 136228203 237894625 757686267 794380478 740743722 866426618 292335790 912984980 466171805 793086918 526253140 694332633 441752823 845775172 925045483 980786002 956277718 984913899 455125850 658480935 886473638 984924218 11473456 738684916 627012720 941965977 646766498 852769861 376084230 397778935 275834361 686559297 189022097 363538638 736081143 954802185 120042173 598667147 132603405 386136944 803879074 815806206 623581644 802510874 703317085 810163796 172595041 676668363 96611142 374183497 546789389 976621163 93480659 898411762 233960927 583236238 883048611 924575411 81289944 933929416 878414695 924399027 258188300 645666116 946150103 949227437 141594058 294665141 992429125 998732292 241304398 700463177 205938093 899791265 804413124 907856581 656337792 982823925 60745555 442647347 851071594 944584284 676532393 976725120 924814837 999633828 346092533 889762464 480652741 904869055 806486856 824828696 712721275 863922756 697720618 762345735 855773565 947416837 373811357 748393346 469102775 727713753 220438672 602953109 980296673 997088659 349666174 947409117 577380265 707231467 136953643 880620388 474747110 604232258 287408277 598407042 348650429 815688131 213599221 414253009 183469919 934389720 676791128 768572451 378551220 475019983 430527938 485134869 184218485 676727156 796872563 950564968 531820192 968517555 399841276 991676223 203344004 943856862 243445241 507630232 784386428 793296560 270049629 683268041 949849808 989204337 909377772 956832691 770660513 886205914 252854615 327211884 177834347 676013381 823994507 940026699 913204721 964512738 872139771 956542533 760787882 860257260 680170037 770775399 285247099 286719368 633631075 817186769 564514614 675416219 373175391 384788499 181356775 482852170 91645712 541528035 47969404 369837745 575047365 653888631 979368468 989393241 225404204 730943524 300041347 884576341 359533091 614372370 962627812 997392637 992553611 998783874 189078124 201853697 215950830 544639422 767643569 972520384 837456994 924868112 713539246 888451799 811781654 951757071 865041793 922642287 191713015 693284572 179188259 929363025 237983786 822499874 209949635 413368714 277633020 625462286 428482127 567866384 847530391 872734451 99193764 115177950 464826781 851491606 692093407 807376596 957026888 962336650 952024425 970949948 729679555 933604611 820040080 861569016 819303490 959972282 240752283 989403018 974035231 998957580 636099744 777964469 523264442 812413062 946876932 969032814 291941139 892236703 668800623 993197283 214886712 318117277 907263721 998523643 848655873 929095389 27464093 934130489 55625999 880285101 862824825 999956600 732444321 952217201 905293457 930159330 857943082 875826509 46225964 488349464 402099801 965449382 986151685 997002965 60206013 540438819 147746367 863244863 437265152 748363576 445960874 469312389 144986166 728936638 723105105 938212671 864365123 996644969 360674762 671925193 530649750 656537746 748183450 889709571 384212536 961877430 33937764 706748309 223031271 341784713 17080162 348894030 451137918 461137069 566443681 629262534 671749812 764851498 448895666 544604065 150327840 188602600 140779944 908175204 264294441 628203057 965850717 993173858 363021977 957289599 612586184 862204714 405136068 668376483 840121101 996450435 994007011 999608015 987137874 987165982 444836557 981765619 963365645 983727789 792328872 846346847 305396340 353946329 858351594 902462635 927669790 992829624 225731324 462917381 174640190 471133202 763615428 938418301 908728178 931691452 783532358 821468585 166784145 318307587 931395180 995724901 3778682 44943528 394935855 807510325 924811657 937620116 251166675 445635770 101458815 732598211 505993170 903139019 920018987 957312567 654163883 840112972 988212719 998913611 58303391 196635781 830051314 930573049 797383088 925683987 72693781 679234731 911530976 984632248 743513550 797518500 270922131 662474160 175031334 648515045 134345226 819489031 530950368 724436496 283476975 354257149 540248677 640376473 334856817 667947828 161539440 300025858 994915907 995444607 348529956 901344652 529313739 930658365 928015030 967091136 987566339 997387930 850129723 888144204 947396428 970793381 258008394 746586653 495295804 782562944 411557681 906264025 914907976 956088185 280605047 786282607 481096173 679089864 474245332 535735232 862569517 981903057 610064909 741477197 980741354 992495205 990154049 991307931 983257478 989762589 471387700 750289492 642170390 691096381 3556239 143005238 949230350 995747739 311516025 511590098 442329410 645880504 363700151 383771878 653781441 971684326 69205849 473694000 814595742 936483994 38833753 457897237 688208149 886924904 396317547 542192823 190265565 878909780 684073319 746628922 439776472 907606834 247437653 669077963 151079082 413797448 94327713 781792630 357218472 897169074 802061718 885888811 252178383 738299615 253918974 759314280 857427683 990792405 44759388 243315701 267541812 544790357 336288626 531512319 684193089 784859933 354836890 859504970 334755739 405405022 20087927 434091504 651388898 902398178 473458491 829225828 3729157 798530245 865728232 932665917 798937812 886991940 897868177 910800645 967809028 991602771 861154910 990239026 536444179 594001381 82850099 98233277 178369566 402914490 124108020 577478652 219112478 280287299 599591018 996763513 134395522 700453218 750525348 812621012 403142506 496155563 430919825 534218016 258695706 325449897 424196017 512351308 650486080 962262752 11546114 803478102 150334002 583514403 258776271 579991775 155933567 865608223 971684653 994302393 336976344 777882519 866819142 898413483 330662596 541945524 646212694 884537537 365873441 892326063 145454006 805319846 349766565 694533927 930933867 939053923 609082963 748101947 367786500 660572464 271518294 454490477 953221935 963909127 59536667 812179568 802810758 829768822 673501176 722825450 303370675 717886272 247436830 331169252 301147248 630274441 899713357 984214413 91540525 766119726 875257740 975305827 89359694 641125792 391270867 951595935 871156646 886107478 155136261 637388542 568050563 702303458 666454679 689963382 725632638 861259413 8793890 66253922 87958782 677018134 997542174 999937112 908709867 985112756 798160275 942728418 38207636 676617582 174470774 792084055 825559624 943961402 701857290 835438323 207823425 909020570 705837073 926357479 380932952 638910417 681651609 791174428 937096771 962663110 795485302 906008896 949633596 968863410 987344218 988657953 123076182 989862567 745389782 820862371 351787884 817400183 143126347 311545648 881674205 932367720 140412119 310868786 373298949 696212602 543156594 657295850 43555850 803512895 889325828 907956372 22812845 158492534 436081440 497062437 993529776 997912762 436098026 669731319 22272330 100306733 297964998 969735132 600873941 892692807 191808583 306252304 201122372 792571232 935556790 980781502 984914568 998890470 126548265 215980519 614489894 785689482 758757112 975726479 922073192 940411953 111003371 344947203 351919133 593763832 495204734 881481769 618082559 860581169 557639611 679146990 79522385 529125211 506555473 969144528 566575503 806886798 983491435 994435757 569477188 944871881 14044338 274684305 189490293 905935842 978089023 986591473 34344177 300452681 77148315 693312039 454621671 505470544 743756929 900416172 988578897 992220053 911270793 980151048 839164768 857131502 872888618 978474228 556883212 845932828 383018110 439831289 192596434 525703200 681961035 961157451 202144552 355858172 374581635 520805578 789764894 939735183 950570578 951942413 62901516 278629199 622850780 721835741 183899941 415437684 229463234 977614141 529953003 894673723 734451501 792602647 193004722 260908507 833486973 864467394 487152630 495262066 161312211 768177729 186204807 332056058 835263100 946336520 382033812 848386440 631237302 680021143 488867172 763312789 21478517 398709310 161252282 701715351 659985443 834430790 194699239 442757256 604670548 860108006 217981289 503483484 90219185 334417157 135021020 262011157 109632833 177664865 499354812 762726598 104056209 574382273 632961940 842675976 672752880 960966013 70755286 734849173 421265450 866355362 652053802 754097346 561515755 807763583 404064370 804925018 540911900 601602289 675390825 862329704 914659288 932150698 230997500 686972209 492412594 879080347 468235461 699008636 380362108 742371010 362823120 667167743 512603251 621541948 827978372 992441214 531622183 864182652 713150118 887769810 568083526 840107402 389542300 473614141 285761025 639182715 152681978 162766148 180291387 646529472 891701814 923328008 335259400 754984041 912269350 922605286 979651165 999150485 61487806 353926154 441466336 618077869 360844744 453464743 999513503 999652043 280765936 376728676 195491287 489567323 864544234 882986086 206149223 260447327 872544649 879517080 865594662 954147579 308966010 362673710 905078109 949200218 455550131 938757783 867002695 971909918 126801044 855447780 569219296 720607604 906237683 951046750 512569858 880306729 730624108 814495647 897100084 967826944 4709846 14679679 537914668 805260397 834795864 893561599 667030142 946806944 411472128 840792031 881726585 972269073 802312396 903789223 374069217 641768774 690144112 854505562 919580675 933088022 441458598 982810057 3105154 13065729 24005 795728840 369442138 382879054 514750096 709853739 629950292 935019896 649358918 782273492 290654244 855383963 859671993 940239387 837975014 852123298 919008431 946041483 606926039 963247133 86437953 573239861 434706504 699802919 757219321 968268796 740940774 880411830 339481888 705021863 690552565 959026936 988761876 994838537 186633420 898646622 603388003 909479723 986616463 986830871 828264410 854076562 48193189 565254755 841900016 989605156 151467771 383273735 215505235 337142617 20859159 922166487 275625530 703854385 818837218 915254194 876683622 978080350 71324141 568653462 525088974 590023742 50339576 214065929 616635745 761744990 491479895 642248063 349611719 802137551 728704071 811724337 705211947 851934127 262540260 547637546 173910556 893770258 344966440 514801873 520085033 987288032 585895870 819125880 228637041 369120327 801612657 938133686 740220640 784813957 208081854 667638111 904864623 937513776 951318803 972769909 352111273 501900804 480006141 809543921 741099251 994038218 103411037 757722823 641180177 728337022 527137228 620555499 915607070 978856100 656273693 918271298 595729917 647207715 830814463 948120433 538041087 970772787 595886472 696692088 556177332 609148249 312379756 471356326 63475992 987678788 161774182 298116584 938491847 974232754 42720678 848338520 313149245 868266489 354077732 387011485 509296068 652467570 374650420 748831413 357582986 906574825 613020428 953187086 587421279 696974222 330977013 760672743 804447909 927432372 571056062 684307246 978083783 987188163 911542371 929551009 866913011 942314148 286919636 372028659 299940929 376432264 579736183 918993724 412735742 752155644 321881372 618249850 514393184 855070826 577756741 594323528 709497887 884427322 872820642 945167340 450024469 683330465 146420986 508175847 651374265 887207198 164471929 590266161 610108761 662012113 55823169 165975142 317508394 502406995 719219867 755404728 205070616 418066643 719660422 878009103 279823091 924818244 423937356 714647544 194719476 846124355 728124154 843816929 311755729 566938046 544123670 581455844 799807669 853237235 826522027 962510807 796954963 878374454 553988572 740577737 778520755 985920118 191873829 980837532 603116377 908040262 730389674 763971261 501433688 980614352 604802860 775700297 761686858 924341220 277946181 820956378 178958963 212827556 178054461 697049227 401104663 430989821 598672091 949917482 256478344 582039366 187393969 485983798 461054138 983012830 126848881 873903389 927379997 935723923 813602376 956482763 375832925 731926584 596809710 934006886 954837926 994471194 662951639 909410020 447420100 469677775 78653632 634069728 349503651 570613654 40316076 165811358 972397110 980501606 790370128 818225215 444798499 793060211 770382813 800324027 42302728 109778482 483281393 568003532 318451059 855169834 859328605 968783305 33506290 906242499 103232165 940907295 914164858 943554066 489660873 714592744 287877914 928881477 872174790 982515746 668002717 854157724 190743533 210424730 680271894 799661113 529429130 748258379 486635031 518621725 357551732 391796838 971358077 995689709 378158919 490325700 695241114 713842812 478943751 654244518 699975291 714814398 696630766 809477588 728571995 936078179 768510927 849198674 980708894 985301723 935829052 954367742 337152158 899734888 180272955 855571924 201085664 777516392 690820687 863128368 419179368 716761578 727851903 967614178 934091382 969458338 273754809 990648690 259297189 854832914 855870202 956188968 274721796 413180723 686963891 713872954 50953262 576188674 101055547 951243885 206637450 783705494 326023096 727047156 137755090 920388993 758145166 926633540 973177115 996823618 677074528 698589887 49465836 666405100 474182537 892145979 723447981 736665294 528104610 678489691 272493144 341350783 50537537 773464499 394482101 396335992 275777067 535683609 222864556 966658766 855414604 951156782 572907569 955465466 413762650 708791842 500973334 887106615 299759772 971527536 901766451 909006929 486967020 870353717 384805609 521884725 989024320 990016191 834278451 892081867 420549132 524350427 152914569 326149974 844925153 903239872 510517576 846349443 77209763 238115030 115412959 956476651 367745607 816397090 51870255 373242224 903539768 943208285 76771522 414610443 273607892 302905743 16115276 807945163 435683614 454159884 553795857 920878703 749473052 905861811 726571746 882260621 793723486 854475304 532535378 902553190 151503750 751644860 873942100 952799481 276813875 279281845 249946441 387551438 734487715 804039193 794836825 927098704 989141396 997667353 191825953 941444567 216626324 895595259 389606831 760266751 284343111 419716083 382662543 571364772 927794869 987377552 326617044 492386406 708426687 815632366 90453962 367127607 610928442 946257493 991249630 992679425 384291947 788034892 143811192 687129155 364140045 738415064 244283228 848916495 459649551 842355736 710592849 910523469 559007514 710557003 14855843 735007028 301789890 985374641 591426721 948175878 354466526 994783690 178173235 307881934 878815195 891040865 871962434 964671065 704313882 925504940 302375085 705615282 603672255 935611037 194806710 890142812 41183186 404528928 102426691 337964247 628643586 845256917 176639488 463708644 215008557 473343968 709884564 736920805 56913500 712783446 103364737 989513293 215971978 817262838 916936778 936518734 30150924 904985833 807211814 855035197 866637862 984240471 208713673 531523423 402990316 929794054 656902470 955515553 609925855 681768430 661197286 970672833 427151893 745166512 884495975 955690495 848406322 858292706 483163407 892906710 345428220 741338786 102341473 771190057 435874490 911173240 493190507 998161179 214061829 954781447 623686920 810328909 265470082 748783368 341859343 963265190 622457760 820122568 576384151 586478563 531271253 687666462 477270510 995719724 705631812 939657592 492614744 500529412 301994994 906024680 960444000 965110418 680498693 894556148 724582099 988764503 813486827 830024373 527226680 906193207 727274814 865058146 541940479 895638094 653743092 748802378 368988492 433366802 125569387 294818457 225872579 260464132 760208563 826345935 511266077 846162436 774451523 825649803 706885267 799971204 129365015 543424328 706428522 855369628 122534433 307085983 198695488 667030842 306477425 837154062 258242218 586462342 29039730 340937952 703732040 974805117 170960636 750309046 564086708 731005253 232455344 738191739 66199187 178033806 368987698 468373018 283397451 889344964 282757869 882437568 87700435 369072559 550338859 922336822 738100232 757440213 933967717 983860705 902677387 906963889 265101348 821566386 936528518 973618318 676044402 913149687 176078348 490216168 103365425 974109550 639314909 897823328 364776778 425226590 298008724 738290725 32996640 947535674 36207134 763036213 302977238 947441211 702038848 935561902 446320938 809754541 855820704 940234830 658075697 893691488 947931065 949334556 723707391 829649360 901585467 995780575 887618459 952884366 287424560 763085627 272184343 535519632 31790743 908003729 52434923 124292682 748696496 930577223 693565368 850637059 674365564 792552416 67471228 175734536 1736461 564245435 972149688 980658416 398503322 805435766 971073461 971942824 709988684 862632163 430447109 554800574 170553302 511426757 382302758 390597750 123286582 605131276 902761611 954696061 22751451 325270204 40334046 835153559 127776935 498572908 236284213 981853083 831590837 843400800 98094714 971438555 401743440 792995284 258034082 907448520 668432131 745045102 875622908 974857021 765885822 866052314 122714150 968493048 944114856 975427590 693209606 721744132 210058883 662580500 335489796 756360007 846414348 870908068 916716952 963068504 443191033 517043639 203610577 516158267 336917539 812010136 516412429 605509250 866973057 916689564 718021976 759048628 914851933 969939248 742105588 977313672 834190221 845421468 797736512 891939254 763346316 893976022 849939667 900625331 298476915 593694373 809541750 904651261 975409765 994665786 727962628 860229856 860108851 985821354 265592291 972810280 493105047 869669507 961730606 988363539 10835004 65760850 190978652 667671342 207911217 289570901 767643486 841424895 141284278 264451650 275862442 859761296 878473543 956220577 108629003 391425444 660410676 956247411 639550323 847695614 806781173 899092970 720084212 952810897 45784242 496493083 792332781 958979783 603972367 782953062 598775776 720656758 820452411 867692998 240669175 657289112 106531 157453244 465302246 818341874 946118214 966547427 173495641 557061869 104282511 346765708 33018362 418903281 736871741 836412105 666837896 791108016 201977110 571007737 541122918 902673282 309869892 904311352 406036620 893723014 944258476 958734890 155672689 340456636 626135170 690518296 294419051 871170560 415513051 927256887 101981513 733602479 335009623 674129554 482111487 688560842 670899934 874040095 228923630 749038804 163071659 882015059 967506743 970832261 278348824 873438642 257475774 888157809 74351491 740124599 148735294 848106739 936096045 970032188 772043382 866335603 107795056 700016189 376627456 402697674 653761430 974155239 403132835 674669874 919708286 995203293 782847388 932045745 849477570 918288676 405635017 544965178 502045489 687555947 548957514 769942311 672285699 874262204 161154 531678152 502974303 960289649 717880800 938124002 36128577 353135375 327901566 991084960 346868691 529784873 684897364 885874003 15237017 690245343 477979744 655499684 899889747 918247119 238703518 461251752 149169705 606405999 458877630 639653931 931153012 970991424 365881388 585030987 49564617 940466815 451052238 794638570 172747102 566325874 947449748 992679090 456204365 552533058 353231542 431047018 829160653 899721475 752516915 955632464 658358135 825488312 579478061 949907322 195579457 710177415 700941522 756193407 114142908 912025740 682383721 763176422 993761160 996174873 979823332 995071670 836449849 870883854 966874520 978902733 798371400 803125028 108171684 459476718 122065705 571668470 160252953 911869025 786890978 849714226 940168855 988139616 268316380 702822973 795471540 871050588 822241770 926725213 407151740 952609412 892923979 897120711 590327220 923522220 928194002 971720115 34672489 305443540 613804975 624444908 290533707 331200653 797064194 963359814 447459577 960059079 128531072 841993858 282066208 919197705 550261636 814810371 971749410 982446929 767142929 933240958 352623934 541332477 816939169 848207523 857944528 917914216 550279155 574575881 535811123 788944912 669486573 837135435 326177000 803008573 638808162 792107158 424086752 915345945 890961894 904270704 374892324 787365785 450039138 978368934 468961115 715702131 37515811 674128148 314778928 784115606 567528568 890237696 231649227 253315604 902997148 921377092 905556881 957990273 755009584 920234098 679115062 753881429 587695384 985688766 289728243 430662226 251802704 470090375 273221609 826577302 324505432 387760567 799324647 846912523 335620900 749522609 804046452 941065071 985228180 995083523 527932885 952058031 745899733 820505846 755915723 881304837 128864898 554433846 810174050 862054800 922956167 926905447 708184580 886906388 456979151 985661872 670305209 868800888 754599329 848715105 190426114 940250933 341435908 608659695 870181716 885036697 311694990 493618497 94676579 464221555 894957193 920384576 520879948 607479602 521656084 981092212 663872900 839630822 715980174 972399419 600324606 696350921 440068737 927622811 132099381 187334751 844080982 921770988 93740086 913723316 792864340 904888896 142958624 641413309 328578081 357620903 388618790 648345324 111965460 501148116 825175814 863089035 668292913 796153746 407103148 881990419 3528531 487745026 102032551 152056881 151963845 606293979 189812754 298757153 347786786 562687532 244153791 974742932 311320186 436547207 834634860 912287009 331543951 505254851 191375840 939443185 370505787 972963315 818654496 965485025 250310281 530666900 446085840 599320801 183225283 486085149 740104760 802631343 988292499 995436037 862499672 940069282 437742839 678702165 428516420 721096499 990795328 993264597 816010005 977990099 398879862 916308616 960156294 982747318 644846417 749241259 536762690 641123828 146622050 779793861 413068202 832201015 448324516 693712129 484467812 801214395 613910674 615978068 394129657 398995930 191580722 763138198 722853338 748918530 610685043 693490275 527059089 833623189 921834411 994025070 770332101 776710042 513138123 768481869 420083466 745069437 488548015 851565034 709398197 898987188 559346090 905247980 301707156 661621968 421053775 762041425 166581480 552617565 929746651 945866758 98518769 785886830 208958101 632980995 162170339 490757013 625056074 955740127 946744437 997438971 349296400 921101020 134794685 654205235 456068123 846090485 599374739 830681921 499791036 643254900 485529330 860664745 973935138 974320793 149310905 473119821 859905236 869545819 291806177 311227410 663902674 712947872 283949761 618985342 308545906 744364963 779059680 960224416 790358746 855402877 649094849 651808413 939752463 997821622 795829415 807230695 25779434 842665121 141166749 987202655 932980703 948299687 770309891 836471485 698494931 843629118 252793514 873952369 645126713 713994112 764563849 807420188 318125948 870407236 461648075 576442790 48481874 732339856 779013933 883188331 729921188 958401238 915631616 934959198 535982947 973247002 999221790 999835324 284599335 975004016 764784788 944365261 678759189 911301656 688117542 751523241 656401545 749972323 468063561 495542270 893218993 895455958 162813302 445748484 295078326 567455887 444082493 810496420 707767832 789242219 721090262 898992973 885845561 948776636 568763157 664526575 112311137 983837089 445027343 695100573 476201253 557651089 103999101 789439052 730835696 848308297 118674525 438208999 719362646 954347495 426248338 782146723 462514562 878274308 236665298 553119558 83509451 857871370 739569731 865130260 258672888 540157039 47976084 903662783 118514021 639656869 237156292 500532164 56413133 721842355 788349029 914685138 358566807 734379196 455598966 903802423 601677628 983950998 190273157 599943333 340252686 351282474 91737328 243631922 499562810 667975535 248342414 377845469 326305198 602869585 361059183 441957549 104205520 175782134 754184769 866267160 154109342 222311142 629095105 809499718 89437968 596616767 323716212 876402578 105568412 946665335 836472392 936775613 989892280 999727274 779938430 872859020 960697251 964926590 950340499 989383290 778616811 830064061 675694832 896729939 527642714 586395831 997467346 998266783 910786497 917986056 596677496 792031522 443998884 483824590 416067432 755690396 863770541 885739567 293685786 984071387 873639054 984333678 518888044 858557195 262434194 928213381 14198140 256091340 677359491 956532230 422912480 459746150 723325023 911422188 901381439 905756907 556842171 717228600 868371923 938160307 957561787 997357271 978809740 984221818 603309864 650060242 584811459 836139935 707658467 785635561 427359645 546511415 13467917 644622278 8690197 886426827 274230029 282763418 508836124 616147988 790650844 995634369 689791307 847594413 583181017 843037866 110354923 303738204 973941218 997664585 743048654 881781836 949497327 969769116 87794015 842756496 999664574 999783277 734151051 876306323 401425768 707174484 481931720 754944934 237016020 677929646 910097458 962647604 825818420 922741286 534129976 538405681 907582592 985840769 956040194 971311556 268886231 485840694 339040136 982326272 286117511 686567115 735407685 745857807 223514676 419883328 73090904 740703197 188562791 652696728 809778729 872931101 997098503 998479862 718474009 774787082 936481380 997443595 803070379 822004172 586196866 586338047 173250408 697839371 319852403 939643306 277647401 411022961 116618638 567502585 984853039 991975015 908115828 991193093 761901034 787165015 149380469 755092859 220601764 717391059 819873968 837532972 804697624 962863572 397491722 790894688 390849234 673983196 956889219 964731159 950723699 995613806 964958302 974746630 332576827 938857514 224711073 971528255 952901747 985941864 314921471 886083732 803057227 862993195 793590947 922817396 881525509 922080755 225983397 387162857 522582452 552232729 379771851 496246927 300041318 552994261 891778017 972807351 82180074 712494107 766397719 868830699 386774989 608709360 52819836 616814119 370746974 384408858 493447759 961268478 868925710 990807563 842428636 940901489 805425604 980459171 653227547 824879697 214966096 303845698 97050888 672490268 190665688 496934719 778214978 939242597 772892415 972729184 754597596 791568811 34800625 184107060 898531511 905832559 408209044 655003038 96137682 789724354 771439962 893803732 177049092 510934994 690271491 799428166 504044776 850699398 717347898 929391304 238255908 795290575 505012869 953545458 294303195 621980899 551394591 763315613 703559945 781874148 663732095 867732640 810060941 985687802 981367763 996418041 337681975 509161084 450372698 850410881 722705544 797114171 518247533 875364432 247871748 339557130 342819870 854645582 988175785 993643438 676467430 980713080 553805463 984223335 945976538 991378861 602651012 681079179 272007336 834832770 371738372 435260041 381770942 764035034 237683956 239224695 647023101 685440048 656768984 935943762 244990365 291257474 630796468 751296679 445713448 653885545 383533450 420253325 675493927 861017250 879022672 955073859 747631653 935182421 506272611 726771553 744382392 852673751 614711119 915754660 500621223 696176301 762901502 900045544 643842630 757308526 376180166 792225809 87531720 218190575 137589205 788372194 974786568 976639708 862656894 900796187 631995561 842952016 158576048 941867717 918234116 924169035 853862094 893995055 262915317 266590072 440138148 473295093 24817430 737115679 550313249 764841623 410178781 489922055 339354936 885080672 22523602 946728911 582703065 819961094 878916622 929370749 379321581 768504727 932177199 955469438 630589392 780832486 299944584 373048014 863124157 924238121 622481871 642818735 391950262 975406348 806635947 903081372 602675114 746383063 708867871 929316904 6813511 66241884 718779399 944294118 939754438 947709824 356758048 964304326 875354244 980855446 961446907 992199953 379827626 875603358 527177444 985336056 435879838 814201453 674950859 856837522 686896834 910971626 940760977 947423158 347579099 947376945 141346603 712025243 645034085 917098108 868670813 946344795 652689865 854051872 28776875 824628981 533055343 676474427 349317661 979525329 447796155 859008100 876620319 996880278 642556468 827148719 549243544 712490132 981971651 991429245 888225622 928364215 277034383 372850913 897742912 910911132 144028373 998015234 366684176 807970219 350357657 611407132 195045112 867176212 915912868 927973706 34839340 918315450 423372127 983343337 877293868 960392255 418185744 603299522 187648664 545302733 169113280 833602285 63177899 905212654 499471323 803927686 907396937 911206737 43243520 288712526 422025352 982745529 25136659 719733482 946768572 960747259 9310504 187890120 303147727 987407010 167980412 984851756 673110050 785612388 456081190 879661857 559489961 926893142 533235581 927121352 394469426 828227142 857636150 922978359 817013661 878768363 92683548 339081861 459241642 876354764 72134510 245907122 592943807 848064894 265648839 459574016 503098122 639617418 48267562 964342677 73534672 693811222 417975675 673662414 687462722 847695067 509286260 599750912 785683786 923483475 868659547 870806862 742445702 976976973 485385412 849283721 757025679 786946595 144941786 677241601 141708724 376758104 466337429 672260917 217425768 547048416 875121258 895480065 397380242 904018558 643761480 801509754 279617643 285209716 670226677 838043710 920618762 929440693 19923570 945784047 234813524 916531029 256401018 403011336 290757627 605851277 453508325 512790433 201202343 638323812 432390713 796635201 516620798 523537199 869696593 958199093 970988955 992892592 700278001 922815084 196687504 405415429 261139747 467914940 100019568 840702230 338372977 500882505 97416333 557871023 870841128 913948455 21807818 587596264 125119946 819381486 842151401 858636660 164198219 480104325 531372082 898549370 649287057 692285244 119817365 793443091 689443829 999458446 799958032 947705438 135461515 249785495 975860309 979039657 793236852 905677405 82505983 297626517 76569546 982889688 866529409 990633988 569575139 720637307 168581786 448416618 903336506 973924706 352379856 780916198 530153333 632602365 760068782 822334811 796033980 821524753 553721888 573619176 997524995 999225270 562149095 782910190 98328493 284585050 139102513 889510747 325319397 327901487 719202119 813297751 711024502 786744093 197431817 436149343 970666000 980097155 800022782 804493106 24612487 414955793 525073087 655071934 897991770 914729400 920718729 938508821 886045274 924413480 229707960 893351327 574837137 845488852 612442562 839987730 995809288 995930931 455086546 760555881 341722993 408984597 912438121 934747437 933615017 976421984 246480804 870680515 849241175 914695321 434514223 895153281 981730532 999318581 563591913 840360164 582578955 617489712 754732620 975855538 701492615 756498353 790852373 974705578 266271838 939459608 173473747 910638280 806404818 854828313 803266525 993484903 707968103 915356943 790099924 946342530 555029326 926691117 320550524 712096650 328446889 335996284 278617349 440018406 555473166 802411273 463591452 795076105 881888977 892326658 905707979 979772753 495940222 970682174 91669975 499087982 426288469 656582323 45209926 523965762 444545399 711422836 595549412 814190624 461714514 790175019 698003228 971040624 65588689 335467407 994596168 998110540 914434200 915875693 906212508 981921619 24813861 520900072 746202804 844719386 363318256 792819015 208449284 542338311 298180327 510241816 978215936 983972865 351111206 460283456 126852631 763212989 233941694 755053640 731727090 952728830 469009707 774724528 924656148 975096539 356926529 444463569 507985335 806327076 884289889 957633376 736942758 820283760 900729134 917895562 582874424 886999318 885069438 914612342 199910309 606532053 939914913 990046286 439556082 723871509 892126585 978000293 114456343 811026079 420666163 899693399 899935589 973235670 916474614 995782193 392491464 897814639 736784748 753432086 340329446 614309590 797838432 831741126 732102704 839654978 57092108 557039644 836494360 877364991 335879538 785601986 861158588 891184219 283909398 965008134 637637940 639981331 742426458 844250363 407570798 757636175 610612180 806968767 887870444 974878138 308288074 727554919 391064719 736339215 302159480 844928139 365757798 770658556 345643587 650282416 138865851 743635905 550476836 898131553 328330684 495878455 395036366 629654914 834430524 928685191 626703251 766141984 462656933 809133519 526445917 903544506 833463935 979726662 107495880 931792605 853326858 972755449 921156576 925311357 808019737 995067090 500607219 929286515 267165078 795675023 85335674 605532895 514521440 770175752 857457724 956732098 772814763 988524328 531779999 687807154 560237737 617873029 40766944 953993367 665489957 817031918 819488496 987927555 555953046 912444223 513541250 965485802 451316648 969378033 982052240 996660747 495134249 638591535 420639163 445719547 623565741 888278409 475273380 538688978 558510791 747332900 623300132 906174658 55732595 776769493 599817076 707600652 124637090 903322187 811943320 995266109 46084385 445649412 989660243 998783472 529959769 653051086 332402416 487233229 638527966 816502249 892453455 950082858 359070743 954583515 530079637 983640472 71654081 309215889 481769213 706390799 378470650 681282044 313459740 568834718 635685958 958061074 53820350 185080206 936734630 989194342 440598031 514303076 24290640 380135113 916847204 927856084 112965245 677012875 51957180 558353100 909967268 938532950 992104946 992696454 342389504 495775641 962805243 981816059 117307709 718174362 314759203 716363886 948849274 999630914 326601665 780185020 690058741 965621242 404201057 721263713 44554543 180031063 790706158 795513490 733615159 802069440 51387091 709642844 944731768 947972070 944007287 964694270 73507812 287557764 257695295 901756309 809344199 836057734 713274186 829742031 561722372 906280894 329268292 698942327 72849326 216965339 895230294 928766854 817205398 985330467 42909306 930653115 898469740 992969037 106773469 623209569 239466272 674751800 987101620 997346716 955643596 991926512 146264721 856330836 143721597 778170112 382229585 507935831 89663607 255365573 550869643 639693804 484301812 497331097 46102876 993115825 433503669 912618419 979295202 992429261 360824706 576463939 162517601 705917434 527710316 897434223 371298127 785766962 804569662 967520558 640803680 741857999 565534749 783492687 862143002 963089718 800902352 838704098 729403287 993591938 626268913 818488458 957911720 996079883 751506067 968505353 65292495 541471772 348541055 597767637 362756985 651711299 633841536 847919565 272461514 478451883 189424162 499319962 862879012 934940542 451992016 945663069 186159770 610696435 827829892 906119206 64629548 936754088 134704600 798527147 472401607 766124290 72915842 220385364 180072013 208375109 322251634 878906883 999161292 999425169 200243407 828519381 509096468 800617678 434307960 935628694 188835622 781504378 348800959 735471180 59600178 733328721 204911696 871344798 658284679 664111703 158327482 577992512 558821881 559029176 662210398 807999840 818659804 943683527 537796758 967347531 133813216 215631156 837866971 979353932 396920931 928077459 150893496 691200024 211556146 317671497 899713017 976225649 810550611 821779133 636166361 657258810 425059358 796376533 379213961 636008267 724234748 835241575 550086983 593759654 382928814 872609104 753909119 813150082 685864862 783370789 507393324 957783688 941656846 958843359 805616229 818371087 222492290 383526684 452183224 633329731 508600528 557530366 189918012 298686937 961199953 984674754 274335756 910613287 530524816 905189016 21256948 625917089 58963045 114815126 655541369 996323557 681084864 804564715 366940648 723257090 293677418 315200248 343707150 444349093 441371823 960695285 184536330 559289663 551757688 804347637 115653438 544992828 177277350 962575282 497293007 783830644 362838578 819129543 580685474 891882211 690698671 852222654 351935313 437396670 223127136 586328375 853753674 861311821 567625417 807129590 16408896 945320797 785918927 803363988 137600561 179948001 137258247 546919368 684384352 942376706 291594843 877104930 215950425 996791761 737653132 859139966 413530259 874470088 920680774 999851822 741280558 880703291 148101862 365922665 183746031 821070237 730775703 962248608 278353149 575469358 369672220 798907087 817001744 954256329 662614522 965660356 696374871 778971313 370427654 474900104 831361552 867306893 296802319 457488923 911038904 944328386 113823985 444733132 366201440 923968796 209340959 252078127 768417784 819726846 811370715 958550467 760872739 944670143 31230467 527249685 494652079 967120459 368911468 599770152 36345202 707279047 159718047 414402820 759178461 877948660 360813663 940057779 534044047 892600967 999822744 999919215 598506424 897035535 702399149 787321704 901561779 961473978 569400365 603232111 730646410 810554513 98413905 683792969 446072060 705568358 232683066 550063182 624729643 940747838 561281007 976208036 796213490 934996520 718624623 906358710 379481443 738878100 970389011 972378347 299264759 419906111 130429067 822635516 50532033 927380725 7166792 223311435 639492433 674278139 570668400 792866424 403119922 432241492 685071534 834310088 329059291 837753485 662010519 812866092 231524351 712437092 172213929 468296034 835701741 973767431 398380828 960734056 116601157 414574856 567414073 824719013 100973492 768087656 463045060 835177329 49268874 903661763 679167256 733495595 183396836 830089623 316229490 939511534 206123123 811589537 84901173 778775342 683889045 826278943 276099042 724668540 67021076 136629100 945290110 977399443 624883407 848110743 593979900 741234161 942491681 977213413 290167694 612223103 764280801 831541806 667575613 758229091 900003319 980703508 702231150 720474191 255359177 868705069 187720748 741256296 190684554 879303077 169233615 586073951 900766877 948737315 198572266 741524668 777070061 780627451 518239601 991344446 884582523 906478761 224192202 491613094 66454898 434658679 680216792 693759975 415871271 739241856 649605033 700663655 74742633 729603479 616464531 820353283 537560148 939115156 884142617 886545218 815474415 883094029 585599318 692047728 869982448 914532155 315032143 631319029 800875316 824668789 282780256 434160111 128270463 213853260 558857232 728507400 302000727 944861571 612905790 943190084 362196441 539956851 183524913 760346806 666947830 946066282 675496743 743494336 694368105 779674298 306711261 720015449 162033017 649991332 239350385 871928369 735850810 934065159 676658743 897998595 203221472 483215385 973839169 999557487 831333995 984065498 957438945 994654579 567747075 657803070 948628048 963648025 302360911 545479229 558135888 857392061 281466993 697111954 169716549 917014205 968291643 972419258 861353735 872887906 47650649 316396844 937482216 990826011 189389610 606987234 567007205 677533793 651719256 717405113 507652077 621633298 599639431 691450423 688660344 927471162 45826571 918940425 727614507 770949998 102155777 534820761 548768754 963860291 355591932 413813945 620693611 707604582 405678869 772651354 854514591 969103111 241712692 888256430 3490042 307736372 248214384 916854639 304349474 783226833 58536979 951543804 624484904 966251403 878754600 970016290 421477128 718931131 526430423 527703631 896802926 934777856 975622283 989322785 312121361 592442140 510687105 714903489 738176508 941326984 489210048 901101406 700563253 942179877 952667190 959762105 854314481 938638138 633882872 872487937 443050709 536139249 674731215 849150299 748952255 842211548 824162287 855041877 326280240 918760014 94820825 411421891 139029859 350524419 933258268 934136706 19196876 517738508 926825586 952834880 147415747 628429286 302219158 899872305 621107261 914531278 109685526 947205117 153366386 630733298 698361715 980641530 395223413 881164066 222905549 387906508 64444963 70377369 899609789 974749653 278990960 300104564 766308622 939267653 549550992 623571122 854330261 897498163 666413164 666470812 655757446 667418804 101274666 908595240 97275624 494416693 452430518 634285033 268165929 295726880 151354773 438761678 103174465 824216010 867773562 921266325 472586407 501316205 848667947 952308857 838057452 895132996 534100566 881767353 329682910 923282366 922787721 944224778 841523733 843587555 767457588 819035446 870569550 872868393 897295269 965133429 660962549 812474890 155437008 979379698 778549221 834053901 464980618 681138312 375585698 653421068 555277265 876869072 690819291 911846477 15486540 583527615 423045793 791862601 251831194 860095146 50043176 669708935 634582923 744067808 842353922 889327050 680188416 932100362 794941028 981761084 993367043 998891322 72453696 744311995 670171899 936041805 931306624 946499599 455872912 934503692 847105668 988115388 664377396 814910080 170009644 422843793 833957688 839117888 484131061 728998076 201941000 706799387 939957978 983465399 576680162 892375044 680135993 989398271 814431977 972460519 862470785 941005309 656536673 973430272 109436702 827279501 818918532 933342381 991677635 997218217 98384486 330841381 133105384 380292003 185315769 427661750 62724202 484325186 144992623 845664654 96809019 293137522 937025718 940626215 953871925 963701825 343389256 763043476 581058692 702555970 831041128 873208637 905417407 988395229 879299461 976182597 96074984 740315639 95672468 947635074 40700154 445411962 470215508 752716603 529325168 881779878 687193833 785790107 122918968 410076869 697657500 803937899 733261714 971127688 187082403 719458338 309642947 883488231 448992355 769004255 159230039 434775323 507497960 736138128 865830586 886566056 159398314 414820468 659884104 859559990 349711423 382475850 519746459 738997145 796253995 978113122 517782726 999422349 731807352 828328359 902450181 956958252 450244976 516895594 191726929 954495824 950561491 960253572 337184287 739631993 987077523 990869143 344355958 752152600 784279139 935043630 999020929 999549100 850528138 852711144 384192697 764242718 90296732 424708259 713663109 724867567 356317060 454716098 906895735 985081546 396782559 422124065 337627609 687665166 551889945 859123390 797794468 879023361 250224717 334968516 601796963 749677202 752138291 994647634 464171887 926651863 118477002 919415573 693880818 698819060 895143341 940360365 704703774 947082240 493577 515092827 722320948 852068235 244196482 398765122 69613852 930601132 799023025 854449321 258728045 353347175 134289467 338454043 808126476 861702229 88571756 470367493 412387014 972209149 273743394 818075930 451939296 760792168 397238065 956841225 276985401 401407632 205687636 249295139 401560826 440281387 249334465 609943678 499819638 555683917 287362009 733685993 348582286 963328656 902475904 933988694 366018106 815415033 963702465 998858096 513867631 859225368 159953077 902925037 546165904 863572529 588444592 704191517 454407565 952945010 342089581 565647884 133057629 968321082 253100471 255859983 561747519 746534310 48583766 81143039 898631857 901625997 528268700 824400526 109978488 991319392 237186560 492631562 432892068 504911144 290001210 809079849 819858867 848410543 669171317 792379820 578343230 810289397 946792573 972446890 755773758 926246588 195866611 417705238 129144018 604591453 927284421 940070323 422557616 645456715 158816193 687544327 465088000 488133217 888320606 963178775 839841694 882526400 13431492 315066824 204104440 517588992 865773199 896659082 463313752 818340691 205534944 508084855 32347321 374116740 767414629 968764715 35528832 796176208 270244516 383278704 834790476 852826564 541915477 552222411 896733003 949895894 10909777 83444631 186897388 906736592 500943553 829992070 987549844 994507222 620694903 765088903 522879399 594175436 648282757 866032491 814965019 875455581 431840241 500020334 616970334 797567288 858263264 884940537 446391467 474171930 390005678 400654031 580924045 603351666 687299497 702559537 8559027 169982400 329641123 583254675 328349193 457574275 174414151 221756666 541746101 784667433 877266166 987955094 397936340 872185240 429387567 603339047 617705631 628113347 363942323 867971886 525400522 603751683 14925397 456965136 827495367 884833051 36432329 709229081 677223693 836083876 313867366 827107323 237407516 527455592 494126824 902617868 582121361 700847394 420925604 791843306 161584333 953472811 97577282 479309727 542594670 820656918 894505843 925264174 165061183 778760549 450588131 909562283 242130772 657790257 335052357 562280478 165465462 540472446 446189009 913169143 978661102 982334363 509457214 850979685 380950108 442941629 63906744 466590818 550842135 699825252 923177379 929291339 702199017 759305289 10043097 548089820 179893327 827493831 211606455 256859790 281958323 759658632 853216135 868685674 194635656 965914946 904829478 960808176 373015094 540904738 462176413 988656839 196876097 268076557 140720786 732073400 629125395 774954221 873876428 922228610 224875914 973885601 606118923 947361456 438661377 887546872 643072087 659502262 305630698 908165369 461467947 671120232 612690869 629314039 947596967 989007828 239746620 487180191 146389668 989718387 380254814 597763932 908255016 981552427 347827634 639832207 633866398 786140923 998215963 998391003 937021336 946153315 840593267 844343224 69720574 723520171 313171933 971355130 139928785 369755708 285813063 779480874 549942106 944739447 11512204 626903579 928126651 978943327 602005068 933724626 691145471 703295433 83639011 596858794 782498323 955560536 166480989 663526394 403054224 675384282 443353355 582294810 660692941 715756912 566565232 758216434 795042383 923827854 975286465 981165056 922677908 952484620 323531515 808651201 294426865 800836327 667515360 809289540 79776639 716419605 97392604 164311453 723646091 997421616 58414817 894434973 61478555 905826669 748936577 946584467 392013180 919633825 731092845 803481809 210368534 722639694 68369796 866401397 458163128 975376346 827883135 915365618 739843642 977201340 590811696 929791363 418548167 627770683 561920005 900006882 141829319 967817975 69505010 259040208 438977490 686850955 126264807 132669570 287550362 520842219 362436701 429696492 107855786 237924507 684132227 874669199 33265848 619993764 869743499 951045844 672238871 869698739 949956826 999525760 458968399 846744413 242691305 613060052 971154879 998071603 134803421 715888439 298139649 476013901 271241036 917590849 562091040 753116290 747075671 876939420 838688383 891057556 749183954 810636649 473353246 777968367 593674403 749382700 43037390 306497722 476945523 545081276 641162132 717221146 257458225 303949682 36567792 242478193 610897177 765265034 146171977 649097773 748291201 892363543 867029089 966130264 647870041 876759454 734916547 800684293 412988485 424282065 729299945 896983224 382244282 705755278 518799664 806089698 270960204 392008250 664458407 724070399 626189566 741647987 37964435 750102849 135217707 271992467 481655030 927430388 996639691 999549523 332791708 730876056 960570925 984802851 363151543 823270028 705528928 911569568 723809331 882766811 691964061 755476374 829730813 863793750 541248489 552560918 614133920 953730221 193290110 374119979 483570007 873207140 168343309 434973112 598727689 877958876 69328118 715537531 435421646 896775930 257025952 964544627 293055545 945206372 688787925 726201737 71385995 519669702 213521455 316739579 344157231 918861090 336852771 385158028 156486067 892049140 17626959 120412710 677051213 837081066 746396850 973505688 411304497 967006101 880511024 906088212 514883003 728822865 167475176 261885696 347854111 417385386 168181722 664206607 54111327 836711146 213409094 471231135 433033707 521722655 894420605 991764332 499960418 825430852 533056379 640224510 467067440 810292490 55371619 834502522 594483029 980390968 681087023 786754822 198554344 270942661 186828592 606151932 502028785 795297520 144255378 716906524 789612759 971474531 744291191 809142713 294026685 920193842 641280624 695194460 409634306 597593660 31725447 448293529 135740393 359527315 615116215 706058683 217520074 637488217 34859499 656679848 664231611 882135071 904161488 984205596 875739015 957673181 557048353 811835961 425410697 823074911 130594803 696180493 8135481 417523882 791430121 951043711 626013660 918512769 93685982 815106377 362933889 636781142 512891196 686541374 54268427 529009385 943335305 997684565 884770741 898115269 450508877 897226295 957807043 961823326 674069636 701329589 608586677 788607935 481103726 500996534 924378376 940642947 481151823 982309450 945508376 996262957 473233161 482892716 371205202 473326417 634660071 705895841 453789835 853441048 2095310 424987217 774955706 895855117 177850939 767269416 729606202 823581019 49153125 794381841 139384634 872005427 193195718 893085911 177827083 350515093 29409527 977985952 909570097 929663249 505133128 609763430 441486262 919374595 715648601 972114591 722975111 742184168 59784450 471109770 442490368 544095731 125472833 174960937 286749284 649431532 51330777 872975961 472872239 651884802 102965655 188949217 159140987 268708053 921181896 974462074 953864712 986048350 569344264 712464319 125176170 598107928 335906950 653545229 79793251 631295097 119875703 583967056 191125368 732830762 921204140 932227473 689913736 981994331 327763262 395129261 653190374 700218731 557276 783107815 609034974 889431974 610560688 963707582 612917412 981107692 395803332 669716798 34828931 508051722 681026715 754914942 148764318 150422907 100598337 857082460 434927532 799490666 238366790 519082158 71823754 448728555 428270474 696974902 153776081 515329401 695257223 923748395 671247224 980542739 366203887 676999042 464163206 784338717 261630693 847695522 729417795 905692135 731992262 840678240 529367907 872309293 270375227 930462488 330891969 748915554 558956070 709291504 578714808 885628672 35486541 994698799 498442734 553108807 827657040 902417792 191260000 235195002 410681078 577720461 420973908 461822773 280079983 502652976 132070303 403158882 8582705 644013232 27249536 285877447 900882845 940548078 610517532 786534351 856893923 961883750 1639313 753912239 833494465 895077808 195817614 392223674 550107037 930413950 410378996 942344224 660510300 849761845 950348613 986088352 178150707 776865904 867265464 934909031 281421414 750025521 377476999 488732545 764224138 954841333 760896842 909268545 501394306 952838614 140553576 720982179 563697031 993210423 61919089 732834286 746088161 913898077 84684765 570415341 413882050 524430426 912428552 985340072 951267950 951656309 249664719 379627787 295688701 571257256 185105640 443212216 140396625 740542286 386745740 706243021 919781225 960623794 215287685 527235086 817172514 834623840 610376610 713793091 795220821 849092273 514041643 517823589 380353926 590016953 549317639 720705507 772563102 913427675 700324200 984122011 18398223 78172892 923477431 962660733 61878671 545563223 390343211 459125209 294024094 610696107 125654033 780347871 552614850 640719977 550630420 962049882 433105490 563608229 962495057 978809104 700280505 908928120 819556284 953070324 482188290 666646818 85206841 196120426 927890970 965342602 13855032 780738223 376734701 655690879 767842855 874928029 763056459 935053957 902883647 907669100 966890722 999268808 671517806 681146918 210136719 573177964 516980154 773089832 632473146 950234983 984512889 992656228 534999300 802927079 492599676 782130696 115128521 893425512 583761302 970955920 883914429 955276771 680716764 720368101 955243490 963289430 690831464 905152904 61507759 449200204 136417962 865956113 108768501 306108148 111983570 606465225 928761817 937311266 826986650 844549268 519567636 875066961 671370039 899666667 629604458 895125739 533473516 589682700 671051267 996788386 318047258 855756155 297092929 362536407 938076978 980376004 822555703 909408959 928580953 981893589 548262613 810222539 503009192 727847941 580797355 732532719 709478588 803873137 803245513 838126499 441430560 680326425 52576392 606542266 465139865 956254935 618088137 832286251 779166394 968751866 478318971 675884012 475605547 937828729 633073896 638709441 588005746 894128478 468568845 574749116 423929873 896429827 265135269 739795697 786762564 940742354 524031639 524409664 6003198 382037892 656880515 774717810 348087943 462141076 382627960 472035084 579507936 637583516 661193852 755256929 214761927 865092706 334998684 856258521 212853373 522532921 33497885 858691144 264430935 268801471 341233894 680231021 311258286 620187549 708254600 816143647 13825864 575664568 588679097 734273834 546511611 760650820 258756857 510195530 178545489 649282531 582838151 837269707 147340729 815444847 616016374 840848721 632675914 897923347 186765198 428555508 825178613 859269617 776207822 951282076 712011837 872853268 192765375 425570480 922312095 934605570 411226355 658646679 652269393 743894872 609030101 925491397 965533432 988131401 273037815 716476547 386293255 812399956 478661572 817843179 279583327 813385496 635776264 971427750 849429716 890077756 274669701 797258267 734628635 816306655 125828090 607094477 972472564 973780990 261875433 897483076 625798689 736697933 916364080 969715150 101659641 564202627 444266879 591271399 307126619 455154120 354013242 964282191 189787506 879467516 435927966 682634219 696577051 939636387 768814510 879723909 535885812 820766424 818542602 956458830 770319956 921112457 391674433 502594270 895746159 915591088 652120924 688741737 218328407 287240235 993578700 996985875 891180313 938533494 198259623 252094414 224296618 580509527 132416990 275737564 856455295 947874595 423435690 579466584 920515199 972448485 696386823 806296237 636539747 994378236 430953748 992849076 507444182 748125695 120781604 432514613 111866011 218116801 26130266 719389489 392825912 791553652 764243261 829490896 522576717 785113870 653143887 882675396 923010943 935750821 860747449 918817934 73316272 993271822 205413545 567852069 990441708 998644309 971178929 973703308 921434205 969083354 241952968 407740667 627065598 717407576 823430638 901930789 880067235 996751755 183727295 310366108 440768321 534580557 80929132 425977662 216321898 521859557 946175692 994644560 569223366 780493983 894025508 934849296 788661089 797469533 730981747 934772131 729667285 826981600 523008558 867746517 906885131 986982587 127741264 331819684 386437657 654316518 50279123 455778977 898358449 988272632 454006666 942244740 957145000 984393122 23814451 362474912 290382451 708086996 378700184 569119115 654849297 972054113 544651751 707965007 778432319 997628365 975876236 997632613 544847847 569304154 559803664 821054834 240298639 805702238 241014679 666195954 17767368 641280667 393241750 459350889 118763803 855429318 399469274 833863941 665840636 940537338 652713148 777502859 31417747 63545433 956143821 994906721 935087114 969256265 115497984 830252506 301611391 540161396 929498879 974615924 98839077 371758418 589776230 653921783 796552266 970528705 164283360 216804535 895609145 976350927 645890836 689555246 166771662 806059297 752654254 966732480 796909743 923368958 575232012 898931007 309625850 506335021 682864440 784394268 107401702 278085482 156696004 549379732 608376435 997555621 631770018 795218774 960853991 971514801 373269875 470147415 296491085 511787346 10818023 780688215 64542697 924901141 875203131 981324414 548513196 806518398 637250977 747528800 278864068 362263270 925164879 938632313 327654226 721584310 397276178 854817272 93681550 772443619 165841263 182878648 381683090 539714967 634494528 868502798 75468466 515912619 883319424 969161319 925866392 978500208 212730173 588920646 27717079 420364086 600395717 861306277 142736858 703053311 753650376 960763057 120231119 747692334 867375740 988831174 269439079 522297258 553071887 711759558 592019244 806817630 803230234 878170832 365454402 945879481 770069377 933511011 365895358 801729464 558464400 794106739 827361211 864296759 941322402 960656284 831920054 840741920 667322723 766564970 117702289 816962791 530822968 575403765 597494006 823630753 613322248 892958015 246080110 254117576 888647480 980106223 692038481 736774893 983196132 994684561 720255552 813248555 751910425 893504257 786602490 965191763 990895214 991077044 460807868 609976198 353319828 370704402 652847295 756995761 314753095 387876734 454887275 575026987 146442669 914983188 161333565 279382066 631920045 961100480 190602287 323857582 605472456 770670138 226013252 421260569 983935766 997426570 403048038 430347210 525949971 962578355 423928039 885458151 652243200 869945789 493153341 889560120 289437636 901238347 74030699 164719748 99933993 242091299 945515959 945833990 332288266 980394587 125910066 279643070 466391587 916344916 761080801 788251423 897376315 971179862 495037994 531592487 865419938 982010207 822575704 879841353 824993899 875876275 784674115 940548857 319681745 579143927 502996767 667652136 234499719 897843775 194263576 405020299 529411199 795333700 818355865 823444762 18557761 745703942 30590916 968309692 724139015 965680958 701367486 815443819 509801379 753737572 249808937 970488157 80272552 665458652 95186619 489251720 846400158 903098761 799981040 847646492 646808442 909687678 859163828 920067218 790737739 793236848 253375465 404831254 486767490 527422528 809667537 974753286 689860612 937859749 427548373 453521676 941781353 952059711 688297503 843616048 692355568 871762209 566537301 594687902 660573571 948446334 62599844 509953813 283199757 426499032 116287347 971250898 552686358 833693269 575381479 753885904 94182448 525589121 263894044 574896865 108593874 945636741 818632588 964536804 34282211 705100042 930067323 994633141 800451416 917295739 823217532 965258516 845143685 913514128 72991884 168589284 352447495 817458282 599041887 881136781 132303269 866828728 312045353 971395169 447527165 704430834 839573111 849463271 883393956 986572995 998265410 998985250 857917721 964835750 685314271 712962911 440066305 531952351 933580504 939939196 786216967 937639348 788641651 997087193 143082557 931022258 546498137 588999670 40736691 356588804 433724115 562211083 565177061 799655452 260358150 955332687 466090371 728739903 705732062 841307968 15311248 994863903 362688823 441729622 263485703 802839221 498199957 806113491 454201436 495933778 201444935 331683182 105257648 754808250 67857725 707171248 958899746 959556730 801488868 844485296 341713801 987594598 220141893 901534680 327661693 563709832 604446741 752290161 490802789 921428715 567722181 954441689 353358997 516205750 525507665 730084374 689472856 765961605 146186142 725720839 300333223 642590737 520556817 721818734 169448230 228106510 413485278 687128617 350745973 904104124 320703424 680152794 892251354 954435365 10759829 830070300 43634154 358220652 691181307 782471438 369963934 827772524 168866687 777272783 862193153 965188004 844343643 931865956 307375746 432946317 575284085 609959849 951251442 980893995 682390859 936396013 74687723 852289633 186870963 716580297 660613551 673669690 247852625 733074074 709286440 852940775 638156341 749860548 851014292 929630360 615047199 785078751 302299877 999574785 685983579 898126633 679096316 754732891 214775437 824299221 170380197 611949215 977565740 984959503 161976376 802646968 598263226 673134553 421839253 625130315 595316002 973157829 562888972 901529071 772194055 952250206 480967122 975250225 637791732 891513231 760483494 926082100 769389975 770794718 272650709 735194774 58330464 291364484 938144413 985668217 947374950 977762614 399325054 535719047 73310338 758849815 158605529 956723565 60508657 837107725 370230627 830458865 973674203 981390747 340099009 734761312 735677554 739264585 833463365 835144819 910723290 940289633 326621784 605528214 374718826 575830926 115141995 781151991 78377735 539461644 813711429 958399972 979698148 981426635 637471506 805571544 95874231 403405610 231804524 399081517 502396230 514776942 338629123 748232562 118570731 345520891 298972405 887433093 814036587 955989291 116370071 453782992 149994215 272222590 46764354 612604809 886598277 894422158 766020850 895021850 483966873 495682421 200149429 863782702 394303776 906189033 271930118 353199559 805612374 849812286 676124194 995155287 883589474 947038208 243402610 958414615 786377009 972223684 438515349 973500142 940852788 986397331 447630889 639130098 899815340 911574501 887608398 945946955 636250867 952794434 554423227 713496575 142934016 530063069 829881768 882523987 690703079 995710413 211141404 732016613 581710125 837011797 363245792 797314842 380405620 492726831 424613754 998163723 533112944 556842702 625417969 975775983 695213959 864956806 40123496 865828018 898100698 974256094 221322136 866219317 960065395 994762903 106222782 514846426 111158504 973069142 433485779 830222225 243730699 417752198 787969527 972267785 345483425 565373180 94686710 656766082 608889109 741669445 656386915 698246363 2148659 916832746 691967427 756703580 468048037 991005046 491366578 502480608 991525190 994757839 269662083 910292054 933553465 950075530 524288343 650110645 885597465 910236439 487719834 992564079 531983092 795728213 58510437 144470562 2880486 495467728 495030037 601533589 79231842 929350415 112676780 765801564 422159527 486340665 854906492 915298255 137865498 206859624 878620638 879053004 189621599 973231849 352257789 669876796 318317841 325745038 348091399 874721202 422106024 549577916 271516577 647263127 110294804 906037776 268824583 690839986 519386663 826270628 219490259 263694323 736040431 798791846 336714195 877660245 90491704 973435441 713580123 910974759 199152196 606363007 846302415 990520600 895419181 993879514 569163583 944952915 273953412 773185432 456867217 741527859 906305246 941355846 31756483 492934864 438296705 838610048 262525945 848839079 452685331 838556260 655022959 734918731 455293146 700043799 15200106 730110639 759712942 799108149 560803224 590110401 859412456 940598800 592654866 690331344 997064954 998478092 215988899 616007067 623635511 664656796 308187214 808266076 299597250 767781280 181493596 876676005 353201162 911346579 347530562 955232317 173581361 448481299 949657884 976229962 352356084 589323759 660451287 885804294 689291141 855264518 589152582 898712249 321614902 836770984 263348173 901150620 708940041 839624950 342783336 709130452 45811754 337271054 212477824 705826986 726077454 876640034 913583738 944841382 609044692 637630473 975714045 994702919 760977117 950920464 142195606 517849219 154798815 921114928 739397971 781323016 963527493 982633596 363368903 774593294 260500448 889431701 110518862 177473605 557836741 584747915 704927759 965449303 982952324 994447585 787756311 998924976 556065403 623878723 204415783 860481421 263512093 642402301 635025015 955155320 552417554 690576009 673076545 716953422 974977194 983316113 71615146 532862631 840017788 883397444 459703797 569292198 821450336 982049023 17896750 491007079 619322796 678075983 385430067 388162971 69116083 87314348 377537825 465513817 597338861 897489724 285572604 724812483 911596702 950857020 242088401 859773019 53272245 361934691 557290976 998761406 433028667 743612705 306227662 312617598 424613376 710059856 293471573 454500862 189172380 384425999 245799390 749871369 229558708 399856586 461277158 793774391 187615663 718633475 5610188 956325370 712024438 715655167 142390505 912677523 107403423 972987793 652323162 681064687 268600082 555541018 214588293 911027984 903900582 910469188 850657134 898890490 578640317 896333944 588760524 727818504 499234837 851524276 367554184 661758160 361912567 557642443 679212349 958703587 390243658 786546300 57358106 208762580 29584186 431048507 243563787 833699798 708991354 801362171 527022376 912115330 799875519 989215293 108151973 238997702 291296088 312821960 982907551 991273660 744383784 995709607 620997551 865901230 218922940 915420680 421050676 623464998 946886426 988827501 99780560 177794560 609121886 895185720 664304187 943226961 795799348 912196151 769492790 793361510 201480593 432174218 323901123 487218611 531790657 646515865 575625970 867828109 597857751 659946397 246122292 804178562 504010367 600025294 756964388 841132433 926589826 935185122 859970066 977553798 764042565 959662153 451914045 516598796 365175468 767335842 851757880 923609068 84211712 832934357 138053311 294798142 279421206 598584132 84151339 249538642 356830495 528047680 191991406 236217664 889998436 937119003 512523341 939544787 415828632 731982920 330199046 984756888 984877348 990420997 766512048 781855729 131115480 845767425 13535308 271524039 315893794 906397780 362678825 922922549 462399306 861097828 127536707 805583496 334583541 949400490 739785026 789305854 178219805 431874243 286585558 387268726 642485185 960891194 43938115 460566040 615691383 698165168 523734205 619190719 32527284 528183683 710534100 986821079 359381293 421783997 976580794 994914867 322322381 835130969 877191358 881812364 809197660 975642393 219261492 648710454 751825412 877596937 884113227 889655052 499249764 862769717 933246585 941969247 324524525 960059923 436882586 576978487 587644441 770570268 690497496 770203030 310335855 959497426 521733356 783868198 12175192 732120845 407065825 752813321 741346817 771721060 434789052 484331798 597472810 966575197 692986455 854590779 482800508 929428355 76129595 267533298 233424300 261375236 728999339 924409019 5825969 928465133 938773057 959138336 26369590 839331712 474982941 683345702 258275594 388697867 914586991 980038733 234496972 572233821 409346145 919816978 31641280 877051893 259437768 325042059 38061479 808456713 647839803 683832315 536912233 618399776 547745280 996204481 884021477 919544394 814862079 930010249 548340508 916904248 100797137 881845141 312950185 837885430 282984826 375762244 61848627 706899403 512659820 922142232 591275443 712719051 498597364 804259992 469656426 699428917 347457647 947914845 817648792 890111655 715244968 730324296 100771775 146686812 678155694 857495449 376861956 898785098 644350088 881640670 164472766 250070851 747405637 999232135 177372501 901228306 858665705 985826044 121492565 135489427 630605467 826387811 219967529 697530874 911382342 977973311 539913283 951222025 352391424 988116052 797846414 987368107 689121479 738611360 274241297 605940749 50362494 631943793 159887700 606598649 445822822 508319425 369634802 857746841 168858856 195736157 325522687 544979944 642412595 903475414 398506658 891534973 754790065 998214665 702909926 775553582 430586453 712247902 96461046 896583150 770838765 792079167 394487365 429244733 362773066 827931087 230477037 660576575 883102414 987530344 267347951 709800018 596077698 654688388 833573278 984251257 973538373 975317350 97478524 994867591 742981114 971186110 998690685 999320455 80004963 715751065 45691546 494667555 505868252 712065245 473589035 529519360 233291422 548899184 473869520 560544583 200030915 933220067 354944596 683878720 732230898 994040419 848048905 865485924 726000235 880959125 88317706 749908277 513817959 655314804 986830379 992923922 266417740 622504135 622771526 725845857 90487176 965530308 108720011 624559182 96194368 310108496 745655393 755576242 174733476 847238757 367134175 659511609 790165976 911593743 107306528 938836238 912880771 975022572 108782421 477659021 525547645 698694805 778896718 856040674 843100194 958790745 781622550 948622890 714314542 914330613 314770031 513077685 229291133 847781342 561271247 711780852 585088868 860968496 419934228 540454529 385118 82006190 708869304 974381328 242456450 880172550 721426379 723900596 862671336 970879857 750508641 822028126 180581456 784889703 596614251 676194962 546479263 671506519 971605254 983753641 48809215 186689730 330183598 510111534 13375891 523255894 292821611 847537254 935725645 990405140 92530369 340528208 450476416 504916943 213751287 268586167 213507785 473676290 253690565 576837156 518742938 902111080 848402973 875346242 89933727 597013462 998994137 999569316 307409328 743009019 433604653 679095180 137711883 205588346 54014628 556187829 979561181 996520520 65135850 303905544 938799781 945421317 864325695 925166294 590973190 819778393 608218166 762653037 16629874 712170311 967567382 982387479 261230544 685885693 289396876 995625974 143307821 368594673 464023796 776126824 187784453 321162812 929384572 997728005 69076968 423174464 139744736 470751150 79541527 380552008 955175391 973585478 658697502 744631346 896474275 921449321 662926834 690975516 585070901 963869250 75034940 331254981 660437547 935067970 626012851 652374802 904171146 999457229 860936082 949918359 366165662 715630887 403886453 669112456 148145199 978291129 741568784 978800399 982187893 997845980 389503595 500047448 143562604 158434699 37960548 160096994 848129001 990918251 754607076 828687958 88148382 107784108 920616382 924047577 464275516 741605852 801335860 939434412 411524344 913148216 741718178 958485457 669038344 917135912 449474438 513461788 806109800 870048886 959199766 988890969 700200508 872657024 593923464 906355256 535486101 838361168 528320621 530010055 655791641 887021955 738660632 891073776 141436080 779078440 83793791 771594844 471123001 636249420 638811380 868519765 63021174 439295851 321218375 616838361 962032152 994794917 715022006 938234039 856013763 916720836 456766614 933857131 428634692 485334568 831557508 841115730 554398537 905973410 969600813 981439963 505476492 554385528 814399503 941198084 456250277 945822912 925427730 969339756 261946192 489408143 18528658 251698453 586382859 676434060 875915252 885128029 552227493 892184379 904976781 989646266 568652959 681778588 328296788 777140288 53706573 298456645 14207098 456637694 854847955 999912920 649976767 969675878 444002267 511039966 292234305 577525446 219659379 750002823 65675615 355015016 691898900 952653348 354856517 805151986 500849417 683285563 290541603 759866906 648023530 865859250 286028726 894034944 525287063 954914783 358487957 370790974 826868304 861060336 565652664 583290711 513329940 903888011 904108957 924479949 210342008 527251903 879358393 949415754 800457057 898793256 665854575 835963601 505946842 771107523 811473234 973311379 68192273 467135434 946229543 946947653 654377661 737165265 916370059 989820025 693333064 810207469 707335662 948335023 656164194 780620005 295992708 642374632 930204594 947088938 647470574 833000840 561948892 661186478 409197945 484310041 106233462 522589485 54334892 80767039 954771756 992407843 52199987 927456371 144774353 983574903 748352370 918037742 188539505 439322611 814858978 923486346 770215532 873357098 497054446 558097039 756483720 801051109 373026501 606407480 437662258 441139544 877496470 893495337 357100699 995634615 296225261 444613059 265321541 319601563 743575609 987938228 266126825 474937117 14634860 640802077 284196046 782459232 436970788 709689317 494149132 560191346 905044503 915432598 754177732 919039821 78105309 363326308 262813141 371970439 518566635 837553992 655056756 982788905 229290360 939810342 875117594 929039384 510717853 585254726 167805772 272471721 398929387 855918748 434941483 450798571 580280236 619147329 125241387 882206539 740827405 771348937 234265490 869751623 200346600 693964807 568496045 755307007 730398978 869303565 959761154 991500352 299663666 595966106 120446177 480575795 43236573 291974703 788289513 829514371 157758352 234601763 533021767 799570523 431992343 437393279 705768189 853941298 64349419 321021020 557553382 575080207 195563044 491727053 446480843 598611802 336907807 852810258 508603354 723326008 590545986 726184305 995241231 999020582 211441053 917431283 73554792 240976729 20403981 231843868 796152347 975209080 720867305 921517895 701691442 843739070 494137475 944540216 535720247 812599239 379377334 910460282 764255660 919626490 827837774 828063332 354199637 969949409 974539256 997296618 669816782 869158816 800185041 865373949 25011303 392685064 468529326 892939735 673938492 990239277 467254099 631545055 806993609 868246793 428351231 472007577 54245458 846306127 390843723 522299268 678158271 750491608 492784094 812719561 537797235 912731420 804919322 960629399 256506019 944966184 145851924 389051727 664925915 796580201 789251599 941425887 185695767 454389412 483414509 934791519 6970195 560210856 369416310 377810201 745529209 984052592 366457201 945008008 795071939 988486644 621517804 808626048 183443742 918955266 511113592 783319110 392483722 488359705 795089862 816192787 485311860 885634395 474974800 867363434 2532515 487778231 498013931 743127142 817084772 883382075 759292798 833160653 600427088 741068140 332286317 458858792 678950299 817161562 354700005 484027917 607684404 888733600 814627233 860842946 164838881 896931662 9951849 771619112 347175148 543420540 677725693 753598255 243179050 966257540 546806949 758286170 975753255 976137150 941662009 988437125 156693743 425469257 809351900 885076533 994169221 998504653 761553669 965960905 112037524 429026943 702062866 856306028 464292202 762866744 706749696 883123575 657898894 711302638 885345187 922874077 936147758 994495248 858007369 977757753 454916620 761769084 605622603 886725700 165957647 932428743 701066119 744509458 996059457 996144666 887542887 951235827 65744734 886698428 931754809 964000131 803418791 909804599 319915307 394473360 225669546 236448630 90216035 937648844 759417334 847449528 857153728 985776783 444247777 471836749 958482525 978445829 671674877 898928122 772024803 916837635 427669903 706814693 167317402 213995996 213913476 585472928 337676557 711367253 999764573 999842320 140082715 268375130 19907786 353912814 128855952 641219334 20884341 751416990 425282536 556301375 646507007 874083926 941844045 958450487 367059371 631733031 596447566 816742694 212445507 701622750 532851398 548093980 16944459 180679874 923382359 925384191 47906177 178453940 442438213 858612616 955668321 974621338 855306289 966863372 969081763 981020176 329829565 659679671 738242900 790492475 3937147 46850340 329900174 653851799 85482073 434816971 710199836 773575148 325555693 438445874 821244278 898218443 35218725 340200901 2580867 608011807 228749256 464220373 269572113 736583336 665924730 922990492 757026737 803091308 220170055 688861539 857634690 926839116 478219361 767011923 722592962 854575843 928731141 936389959 311249108 654289482 987440966 996251824 192473984 385938982 628887941 692665058 34137083 432750915 306295853 587049907 390599768 773867136 636289896 861690284 660613964 963253533 417815867 488347399 292850199 380069150 120882242 622706355 688635810 774289676 649941212 733601319 829699257 976624431 969834194 996446235 91292297 339296268 326299108 813856734 553856483 669251342 98940007 888138447 216087443 540556662 450286822 996693348 218614838 822606160 328356008 893782242 313579882 954850907 901389517 930073282 166580025 756018557 377316541 964915553 919892907 965802759 943110191 951881755 38283064 205975733 825347031 848207169 294402360 800979790 4055226 998877902 909029940 933766836 841152170 906557048 890567513 969325920 404289976 435953308 270664328 355182895 957520013 980766698 244231886 872303059 367581381 684209198 889069125 989483447 247785937 742997885 186934357 336447100 988736026 993999708 988510537 989143549 264068621 916197519 837868379 885665263 807539430 833696326 636545354 777300353 216574710 638857422 138657883 931114945 206891437 894376542 903127242 978530480 210432134 326738646 711755835 921737537 311090208 889287800 121491372 603535054 266243212 397919916 190187908 654358889 492815342 781576156 508829725 747066537 855170129 865156301 913876394 975145472 257560570 616543931 323462976 778074825 970302428 984336710 554522582 861637591 946096744 967320205 150714374 497641676 931689943 978016139 172532835 443839535 903799105 963469078 251327707 426734292 855915165 877536668 376159191 658282786 642019452 778397205 559086748 777436579 963407 960619992 547832380 885227785 701203485 847095317 916205274 951438803 518505008 987231299 693300945 829412255 441453568 582413860 54255490 63084899 903804202 981972977 852288962 878413412 109094621 862813201 378358268 750680810 892817380 950352411 270687346 738769740 770452219 816745408 702275664 944206439 675001481 759523897 158322719 963320508 251584317 405144959 829773122 956723151 322540141 995811786 287030059 707049348 443352024 933661673 702804688 919292681 286926456 322630577 708771093 780182124 231179777 235597589 63207339 992192062 819953722 893999584 523190517 584853750 155261957 290760676 521864438 784414926 997267832 997482151 887084 316940151 8587161 627850429 522684409 781548575 497877057 860168080 248445419 572784484 304780505 993102549 982955134 983642399 281870437 380983089 91195406 219753473 221467890 438097118 459665784 723953279 496110523 779210272 338156393 488342149 981757701 999314279 173523773 925418323 74923245 291919451 823335895 909239274 771290993 898717620 113352298 196583412 813407084 948495119 563958753 895109494 694958543 957559195 887136025 984264484 326985353 428508771 326827195 338368684 934732811 938906807 832075768 899045056 732331541 886276932 627954270 791704515 846254431 893880487 173770158 650352815 848665077 987609888 126088150 516424438 274847005 652391254 300280969 341041638 672869191 921401025 485684946 561061217 421951318 907118600 69019462 152839822 605069835 627481435 992337594 992594019 848746884 946756969 473996981 865948958 699307273 835223057 380735170 857325357 443353553 954322046 504899592 893616246 940195759 978736142 733766478 929493513 569508548 631997810 306330316 599791995 791046183 838253019 139503887 672432678 793644396 818108097 783056565 826201365 246763485 687745397 822181599 824343265 36918889 873378615 922333668 947585533 700559391 862654881 392787505 993512576 845841645 966080218 184543617 766068614 647987533 846164962 806442780 973632283 105779306 710571925 917903203 929196638 119886612 459149050 848428564 989186429 384691396 758950424 250708387 549195704 939531941 966558852 445190540 753593792 527186243 568890916 89781546 250656885 46648938 595840953 161350650 386844370 544803328 911668118 678198557 866540195 877781807 947685897 502857662 899207706 174140481 553165591 518115827 809082421 186877075 941923911 769363815 948768637 981716568 995128462 525915966 973757301 33027831 134989114 827900363 993613008 182130191 631138051 667923962 710724202 241678012 934059320 305581630 367225459 660612721 708793806 154568110 440090016 450254352 609265471 826060091 956010850 116442027 510719604 878744050 993257040 457716820 735085820 176272665 618829191 430664629 850031037 896326878 993232309 210449041 328178381 9319717 701263938 758166471 928506481 901369605 914224152 856294224 999097602 135436506 811160631 970071521 975827684 393955262 842291859 660808758 931308093 187028764 337848707 65194881 970668110 556992238 969800881 395359035 607653825 714003123 727854430 472650501 479641223 300130724 659210490 69325299 955451308 396729428 785016518 294257184 666268683 477624877 855313671 498363923 954949129 981356260 989367232 885044294 889303401 803701574 971838911 233439191 551845492 181684935 855414460 855361988 988484981 216153003 785562998 621686345 729291389 822127749 989296660 898372317 909533801 343978370 582232471 297189222 804873022 987150155 999232904 124033415 594129529 275558400 703160039 604613428 678901123 162297623 249152060 257535421 721881274 487266876 717673225 272101484 938229397 196715886 684977043 969896135 993044459 575041066 587911323 706129522 732064289 745941438 750094488 852607568 858201041 686708007 718012249 762941601 793620235 900739231 993868789 795252635 952784449 668213006 769207317 165522415 819665805 765123158 853827566 945753105 966921321 90251238 360013224 40407536 660231249 873057101 883022549 861073028 975623937 706896201 897524308 548925689 769824735 743582378 921571201 774835197 826899758 733185952 968414149 561627932 935788204 3062933 557682354 150681031 864106662 589318207 864550344 22959518 834414611 383682730 744972672 456958842 630366944 807147482 956063688 669690401 748764944 340261762 592933566 301114352 515859872 625701609 848740513 352470460 567626749 631400273 808912034 772896089 978391379 125920010 909452435 865533200 997793183 594239393 609663934 812203038 890121279 43888796 826842447 86804287 184367406 90839379 921020159 378444497 906482870 339244042 911806817 15770733 778220206 824546045 881973590 577546697 992738870 621298413 808056237 265937472 343148123 84014438 503091451 377470237 790755297 944404210 979110652 808150708 853497039 736385411 970253438 118256348 385528107 107782985 746997677 653100868 766333788 553950997 767118513 846902774 881378774 26956562 896085542 514548938 571779095 728586208 757077337 60426166 341733268 714478179 749805474 485707551 639221174 124754406 785307443 739963065 763891446 596876015 861551231 499734487 794585184 352148671 930981407 345366266 968547667 57695146 69307180 273058764 700106393 836018422 860004314 749784126 753274421 18175315 589031915 518440084 601321892 745027955 761876365 322267777 618189695 207341034 483991313 116782801 884124611 149018135 598396445 839745874 884489312 644886574 880218713 692808494 715851058 222475004 700837184 918223761 964945172 118654110 360164615 823008062 925433811 942057451 999946623 355240009 470750069 697815358 953195274 269220150 821636950 754147740 942486068 164347427 861534398 862491316 955982417 899691354 943043637 555590913 759676261 586839147 814696067 868509826 895659442 658624874 942164098 366037720 939311700 589620022 658273695 298534815 949326402 946577543 961595536 324916052 805403729 505186146 838062303 891611130 919377383 732937718 774174541 665015418 834006454 603791744 984428690 148415042 237736341 97171304 313256351 542418435 854285840 503991913 754944310 655846442 781537541 346791231 422359996 564434275 978058711 376095004 894902742 133970647 205509813 234618435 602203447 316243598 434263013 918054145 977430247 325149449 874090742 496220562 984027624 60271552 898400108 717865704 885339359 984132125 989819542 51116877 984131429 7228889 812466826 99654741 385801421 658271978 775817437 155731076 742346020 685231071 697430225 607790438 611533629 946040283 963054142 569470447 834361016 317892029 942724643 499130824 737026083 106057864 687957704 634141435 802516718 676271437 827216826 565651196 729043841 46807768 389351423 245797771 291266638 738062192 938551307 810877984 816434897 424073737 783146291 278921629 407156167 372772662 728115508 897996979 950218969 326068522 397208402 628026253 982569533 191108228 409517364 11109918 545341939 495653139 838028644 264108894 820536626 161098638 409295910 429512483 825971936 548187454 732394366 821465008 857816415 106119539 914973326 453417172 920277406 435634623 874474298 218440395 507558143 692104411 867716666 669587259 876818793 658779752 924764453 262548122 887300369 730910240 988578380 679992624 920793543 944985436 972958401 213759484 720835892 828323785 877270775 57025660 577131573 331858799 944178836 908052124 919231367 420652008 721562621 976620300 999486715 954359516 961678995 695711502 925291087 897286195 969707503 154536910 270462204 664854117 691805301 650113316 876401029 209885822 859602172 380494778 873029776 36805331 917974626 38385027 843665556 648493756 995115223 906881821 943089873 920266447 967262536 963957616 983034341 465061911 831099079 344581658 745545165 684215231 911199751 959670627 981021221 228501688 831073304 126255586 432125389 613545770 769648260 755532375 845322227 572326324 852445455 125594093 982570505 180893697 577813276 656331827 947029429 493845162 647787509 122167668 906940179 776472398 815183969 423721176 870336499 350171620 764600442 363802717 490213098 977939994 981913323 784998355 853335117 668963319 858049176 620635167 997123853 53091649 864734033 714957115 874678998 666913990 835844435 108369083 826006419 445908855 652146089 442955664 467556829 472550528 491222296 25392881 745321977 253892958 698759444 87566818 480792030 289687775 956569619 86688688 119430972 176251905 268087830 121650010 616689226 902065620 954434826 922556547 961647527 832399251 893374527 986038378 991062343 199217139 287826830 217584497 919864757 869187945 940125887 809573872 873097390 502953210 850820445 682252351 788753118 975365310 998839406 527729134 790101187 621869514 796952411 226403340 243233498 632701967 757528849 189145367 883985462 883452856 914644446 993336758 994707861 77252233 573805193 449812389 806513460 600985849 789965791 349803522 474639499 421911352 858900731 614121911 634193789 729334732 875057353 706894411 983002012 676166376 939865098 166117097 337475079 140532316 386087316 877356872 933250696 137738841 940396342 410315137 536929036 641311215 662128170 121237090 739889680 82667287 951912243 373881410 816178765 939389323 985406117 635483029 645548940 865334186 874734550 84905547 129018808 481418477 560228976 908677953 944392921 879480554 907911811 82683886 133191224 815994095 942429678 952888618 979818493 794230576 930153011 506411270 941869799 572922261 921204132 533194639 831801564 531943509 850927601 217800725 901365064 858451715 961734819 409990470 649589005 490330269 890052176 445446417 495993373 242276106 763425890 463465101 600592001 302004305 483000222 453353366 899262517 652046911 652437170 563759214 866598010 666168422 863974586 390726276 605540086 823053631 907820753 794227375 999606382 337846237 461545238 715314346 769207688 442975973 919055374 136427407 704242755 816721871 858689116 229555917 290214097 650667774 923403222 561756554 871693858 94885279 405424303 997225493 998983881 615192071 643753021 695368245 759568163 69948189 275002242 312880839 455298668 710941260 824540326 540262335 800689087 287081259 577314168 775961443 932915764 57885643 520180214 609697132 762566805 391082859 501222756 205300414 488239615 259462042 898072805 229566963 780848504 962713499 986559883 411176328 888661429 350367239 478652009 775618610 848810719 879442520 987633440 842058867 858702642 623273926 644331869 81893787 593561760 206329610 443219309 430054674 734319374 551554751 875535695 968597610 975130089 131065313 908854345 733911315 905164843 547302588 803960300 246954420 312037329 397415923 801253294 546104317 803224021 305611031 807499090 807688513 923681030 784636470 874873528 172639966 795025144 449656979 455009671 222168188 979180735 485962958 895991726 341053357 587385024 768127297 823744531 515482678 944831537 759263270 779735964 505778083 599933814 850664728 951398148 24073201 491997499 392066540 737458131 58280055 683004425 365080641 456382523 826245861 856640397 871319997 936299020 115386180 940279972 739162217 809454278 716692290 744038375 549771752 571366786 834306165 838455314 258631929 890034219 176894528 423937620 1373267 916170201 355901818 820288294 359338619 536583198 465970903 691352293 747828040 835105333 890948297 895181904 220957625 507819319 66720357 308567757 54679337 881391512 471699316 611371912 314749289 787650897 532710094 788881051 78128478 760099815 638837574 980989710 440879074 887384069 833477058 889962575 108480852 477784661 686797608 985870399 565828057 568182401 729723359 919568405 247145035 520849726 135534478 795096496 555238588 638009487 171457814 927803944 890285881 971192835 862395075 869741043 443360857 751963679 745042009 746396201 363499451 728900631 997166050 997969402 565541985 678518626 772397879 984799356 916684461 963503949 294291483 484017673 828771333 849264341 865433134 871535858 794619884 815677173 280268534 801531415 24807573 820996081 967197172 991027761 44513805 337074927 105345410 422260750 637613500 794072608 618085656 728417100 536868784 579565940 488755232 502474427 81853686 980573237 518526404 713543423 887421488 932068150 236505904 513038389 358805326 412043413 220102684 975556771 386215411 730455909 378780167 815466323 286929646 882674330 764988221 931649078 847396877 928593832 781770099 814063309 596066562 629432421 215598645 802804926 426515133 724344659 11700322 199339052 702368888 799314023 202718535 887234029 868904402 953127153 400795028 479457119 403946787 811568553 782876458 828050065 898529615 977427153 778194132 894463787 843014040 860379590 934171394 958481011 357136058 703473807 207719050 887026638 639821207 846788390 107732874 684091490 105359083 822891015 43453016 923282337 675078819 918067460 686378336 916340193 484180196 948026790 812306743 848000819 916227075 947172924 458950791 738268512 614114098 772684743 611024788 930685156 321162154 697961717 922559743 942928675 266416466 847595592 865293350 895263954 869726400 987186625 740759079 915230297 451298259 521555190 564688207 676292917 65739119 982952919 606839969 648754775 123436268 877936253 722635810 733084342 570204149 690570895 424344208 682879912 191680729 630674010 751196466 985816850 180420680 579806963 498762317 688060416 21468121 47769309 430186838 945413672 449992499 857941300 990264704 999654971 284490707 805854039 502940036 801998854 197844501 916434002 504436377 884779871 136495275 290531688 201790167 345149262 207305959 989067048 630805031 780616804 946756597 964356269 685690966 686887974 490358773 829816119 609472744 856154346 800435933 893786958 244176237 697668964 717405690 869442036 502746855 956193376 130613902 177785189 592441861 739705353 325257717 472599994 515991281 518153203 298586517 556039371 283743914 918243801 321807372 888728041 317253996 875233638 148240233 311577330 506408591 735406392 432227492 936497949 873663160 934763713 278484278 805344508 172719413 696928441 632356308 658883254 480424920 599267532 132767868 520924413 440765142 927172888 379940075 561230313 86114743 596473618 223004385 488510075 655418838 685781369 25970137 951865264 146912115 186997592 207803297 915229666 509880496 638924989 547947599 607827305 342913458 437714064 449719519 602538149 843237181 953261147 762991816 880431048 750508890 928423682 481072136 720074244 220534268 900079171 899794415 934106353 582930314 687669849 87486434 950282170 508091859 769003290 996456942 997935885 450992072 456324464 162245096 757716714 648136823 908827205 475675820 912818196 130651705 857391646 928573597 936509887 888399167 943862220 598926842 820690862 751285311 964132614 440076020 844952346 187142279 749246094 207322389 841905707 735032325 757485466 463194449 921641254 549787620 849772030 251977449 509017931 166819998 428981472 891663728 995679251 693932181 906937636 706677770 996675635 982057393 994833584 63703085 630763664 532856735 904088138 998443306 999176953 515301326 798409313 251263695 966490521 204750452 390794379 354608327 819198379 284123104 353142406 705542739 945752785 81277660 983191073 646069197 870863699 833009520 841141059 237233514 291967541 581592926 893472209 963345888 977426396 943293598 955059458 615794119 955813172 272560515 713304217 829313645 990306007 556822456 840590735 542157797 555815574 613313942 860053324 779797575 791151726 311434677 723869556 988792727 999530919 133037864 888648719 797499200 965241820 701404305 859404511 213892503 293618979 670655893 689698029 912624619 946990762 417962662 962122604 715422521 937596955 276383312 747076987 138409638 300810088 181036009 277106618 468553652 587190757 700140946 723952645 501518863 797807905 184325723 815262578 632942166 788789461 658047956 721935933 752394996 880301780 720769332 935662573 434084233 752082844 68333700 920090919 420109191 758103561 908598570 934417608 177457051 282503194 377928639 456621956 116814406 415564998 950978988 988108764 421160171 816681137 329809899 961012671 504831443 661544686 120967377 316277741 715282178 977535976 38495207 330038933 151274954 570168169 420692288 998234546 934901999 982107049 763986141 930252129 931079841 932754844 550319112 937161982 218899506 448748391 585147630 686398145 184624535 963008497 900455650 912271691 168571261 208667566 687217183 717191832 774031504 852906212 730411065 889743440 829986936 954620155 477076924 774780107 826842639 847586414 758661451 937037093 277172012 705143424 411847435 711525258 306842766 484290044 754599880 904736445 638152835 883894127 35986378 425095632 805894993 914671714 178643034 257345554 158719629 870228906 170918925 540720796 62941347 83383021 144135529 566216958 367058351 913633803 488356453 625568468 206020707 367143396 603554551 887527708 312242750 945027891 55316255 721630953 207272991 958621540 136241954 322935229 710826856 904312282 29480560 279707060 115175236 193907061 572752462 603394374 273380931 790452771 561614741 954261686 19130300 355211087 252027254 420542756 619442076 912315251 579680395 670579142 644046804 821040868 593560114 629241993 628808340 742631087 849141814 906510945 961865438 970916998 226774178 445015836 468563174 540213227 267114834 759823220 218951619 813922405 468193312 642888805 421156300 710193613 852375358 861965312 247108606 451838917 8822442 570914798 605844191 680211343 983735596 999033976 724404328 773832046 283181497 768261150 763374861 794123391 41235130 921384031 803592311 816122626 797396739 839668230 691389421 801594978 795870723 843457199 26135458 221342431 944296935 958377289 529495367 593900239 273719457 771568441 389934007 979171647 239641026 687336142 801686606 822760834 145685768 585917575 677077536 682536125 21867276 787820376 388123865 993488653 323505129 786013258 202720653 484264329 803862750 944659293 396906893 884532466 460578845 548797657 62141433 767302980 832817634 834625670 994720314 999541414 671009966 679430912 912039872 975162868 595554136 711104507 25115550 835812900 343986203 940868597 317923932 549832671 894118616 950754684 252441492 615860046 306000094 443322613 621742860 776500854 992528573 993590194 250163017 756599865 58020427 920516827 939571418 971105713 668073291 709328125 328952236 671173372 230158540 561471436 748650453 981984668 234579398 904031745 347970098 807643875 428710375 624832269 41268914 434327751 647191449 712865354 726064120 872190045 91466 238729020 538188340 635371634 140039564 535214380 596289809 926277434 331825824 681650827 676783396 692821945 310457023 751968832 568737331 695973284 271548150 719594032 298686952 685598299 640225889 979793808 396227910 843358896 73070623 354064778 5517688 301360382 277175003 554453013 659093003 898065614 783483557 985056532 486968496 854867037 620033975 836521274 601043375 867138279 156438224 880672497 721887767 946163760 945075567 956576550 795383081 865571240 875360754 909119293 836373321 868809455 503676076 745933071 458480339 910738810 889087474 932233644 773496362 869601038 994246667 994281587 449173903 774215693 740546268 962806706 560587131 884424427 78190693 748056280 280125711 702782637 770023748 939090914 846358852 858294251 898249052 902306457 515849731 601589631 836662907 859827780 792904898 918926592 471555782 956944308 40395445 48812971 87528453 649917690 113481305 793153103 626379167 682180996 28707582 260101538 871643493 893088903 115995070 728149943 104552048 827585055 662846134 797294224 792252954 817876872 964018592 997339482 870024630 944628223 924282377 987237396 957954480 992199050 782181757 916055696 668401347 722054736 236277175 245532695 987761254 993799200 647876929 681020828 669992226 828655738 879982102 974986157 361110996 465923957 914712548 927219210 64821830 288158154 406753577 717315740 144710201 226225222 404381624 835056207 666389299 864024206 859655944 877905361 84776566 265969316 799199844 918798124 7933276 816138212 377164992 971170665 539954913 557470752 864670130 881618313 745352275 967447350 905211020 959087949 631947355 785034361 8065865 848173709 785209110 857976763 674394161 938663820 829103308 914366454 465250926 546860669 167074309 495222780 113032579 494736800 715747201 793397427 313337617 758162190 174971911 628078992 981162591 997855318 42205978 750123985 15257768 79088143 350723464 537759679 101647697 626481205 318863792 403295626 434666884 653029776 770028774 898283373 911420226 948196186 186836537 543230466 513555433 894490450 833471590 851810926 572100356 757749617 660314703 973564495 635807932 848079797 110537898 653812417 501842429 671991688 91468114 977313388 744614988 983245092 50858330 513270225 16571935 272247828 224225473 450792732 233166563 602036106 546581231 955766163 725594350 994642578 777672290 794885379 695179552 932866457 204521780 374742622 272330739 716437687 161128032 788971595 288374521 994205107 871041257 944157063 908162257 929699401 1766727 422686004 714039347 951356530 153709166 802718374 757791730 956138329 880100147 971679603 102623234 951069754 444452706 461463280 419950073 466335388 8845344 890758983 189410463 577508234 845814614 909179915 457454086 497445093 914307258 995031770 91104987 478376603 680297265 999714874 879324144 897913971 15130197 208112159 546102918 549374271 774277152 965833592 101645154 739018627 990283613 997652048 108216150 137431291 374775990 545640761 301587658 589185414 430256900 882245156 142990130 725734813 436237948 915215892 66671802 434821059 6507413 969954703 295470840 532611017 133492396 192364507 211844931 891697373 839785870 846438545 277131030 951475466 449545586 524825109 337824891 801813361 474217995 693481969 255534025 990817772 393138719 429571056 153927212 497247047 936996771 942065942 853600383 903983103 689880484 814295916 385933685 932462376 625700728 781894011 289018178 524383787 163376774 555157400 742939384 974814042 243488662 277397629 366804705 445409928 969475311 996160001 243617530 431492068 514649437 647463511 900380392 972509514 90402432 726809389 203437524 959600057 124915039 671627315 10662664 11051543 238858016 691781396 451471335 540683534 965313662 998394533 751687825 794306662 985886516 998018484 891683706 943658442 812685949 922608184 87307995 726664690 589504478 833053471 186544241 360522946 105047925 932294317 696648879 812176864 480853782 883885427 85949046 879149219 539529239 711746140 113399204 311866785 200948640 693082134 984390986 989119160 223995043 754155711 756056648 962883581 210816898 812472646 425768904 654136942 869638703 936337803 460604807 627509980 834141567 979435575 521549250 602321406 97563265 962606573 4705718 264238641 558481997 865633038 101051107 224781445 476816465 567283783 426623595 803951506 482783937 916420965 206251252 261383181 553648801 977143358 944096962 976078844 753036934 783711889 878557595 908056977 285361826 430047091 383320622 404897544 223302169 548653363 115262660 968651178 160025655 795309711 692396356 908028708 308608069 658747443 45885395 133619314 553359624 713694203 681726616 815651698 951372932 987524440 521550922 828802788 679702623 872767414 921402519 991433953 540305248 790337031 520899325 815738680 128941107 394683015 450670902 871142578 290281448 820990312 684711653 905791240 374349642 586163725 901800190 998389944 859667094 940344385 301396776 551045090 812727021 834890196 286624606 436151575 921558001 935074542 443165948 632867048 212296486 409532121 213143550 802498872 206721463 369695546 990363635 995253323 755271754 860067389 929741689 936613100 794425916 836106782 401347347 554043004 51070835 992323749 187236463 566177317 80328723 731815669 583642118 655762435 296721847 833028853 287114295 882999578 46519870 79557991 950795275 999775531 978159836 985750147 477380982 970683248 219594629 338840856 38978034 865803116 490029377 620154171 265029877 443654183 343637913 866156580 637101981 707080713 169405944 232452462 18412152 908009945 788228003 946703420 705215282 949854739 121944597 218992828 25761969 211496209 93340222 692245850 374688049 811572496 11629008 864260715 607304827 730750096 113538912 117003335 814550422 894419610 840073809 929398391 883187906 921770093 90314437 323019048 219429431 725904401 484088557 887907608 35909832 177051409 65301282 114955286 72771993 793770649 872934426 980872261 622837232 853309167 109498889 398776229 467669111 529343056 532713493 948539291 376988650 930309695 88691211 617970619 853723377 999769917 275014553 577990319 133947527 373758183 753543420 904290089 574750564 883400833 141163694 249017158 141236401 374389797 644781849 815412811 258411315 765225588 509385168 518436263 901176356 982481955 638472462 771293379 997656797 998173539 896457303 987967096 468886020 530835844 341848200 411125841 278861709 288393786 675013637 966771755 686773351 873543877 964046835 985558206 549232903 683958907 903934140 965095778 330823064 692905552 684777900 843168480 710024224 916427253 567699841 978349218 937147410 978182529 914160432 936866173 627029742 834993491 535083204 576711827 755881747 915969802 565715970 779973408 231417097 463033415 622674264 896020910 836710870 851197927 472487253 550182116 680971803 768856364 269638989 889028184 887791697 982194598 132213956 312347181 224365327 902307803 266063848 446338504 607556496 956601972 714159717 859243479 290535162 849837611 573907538 997046895 684887271 935414845 7906590 980190880 457536811 821825782 620787483 897235469 958914604 989320648 544848970 549523347 10117644 362833545 581591243 858641586 556590174 745830130 314767634 661122715 297620245 984678160 722718931 971919227 735943955 808410250 202314159 969794154 799721998 831695416 684737731 702163264 906432338 936606745 301270637 454272451 249658217 536273039 687925410 976178428 941903014 960636636 929954861 976975942 736550955 778158038 211631807 743619785 658006860 740497794 922022178 958133449 315041457 595443857 844372506 991747996 396805405 403342511 314979645 949802857 448649030 634218575 1612583 621418082 346827036 886753548 708714438 744808275 8107524 553216923 268564330 477670850 916226769 930391133 543304072 971965372 996901085 997275480 415391349 837674213 446646334 486238060 70296286 731119153 755891958 976976200 957773951 958249913 824365404 975303269 10646176 273585053 648117668 760446307 140513369 848469072 588321988 803589396 172254107 860791781 989714081 995953669 974395821 979741286 833114259 943414223 639088819 643480996 931993640 964271501 846985742 957781712 518502230 548247854 431121562 644617682 800041009 896422706 815963437 887508521 874213328 875083731 539318972 568678300 90293464 491365011 947951783 954960304 650231527 918093332 244496812 688891958 94109021 374050760 582050833 669513113 682918911 857667569 375822247 475582607 325431375 796033453 760523580 983804878 200705087 212749773 155333327 561444015 458265052 708072928 685066027 845617219 436992832 954505638 277288336 909576240 276333689 416285175 731859017 906713831 309621452 997794907 379291828 925490283 130888893 222989465 277827574 966893295 883048232 889037437 916200907 946448287 701300264 726743181 552344472 868235486 112883108 595643455 758549084 886025775 31291004 311849583 78550354 300716018 8850208 515016066 39125185 205132503 712805324 949973444 144374318 770012329 621217147 772027883 994280182 995591814 357732592 781472768 406774638 725486668 944182094 968581001 171089469 665905106 245860918 576212517 186037339 492059035 595953837 722057047 579960304 757334405 453650484 485778699 479728605 486415509 656263296 946393863 481780923 796075262 618929039 869142236 667050118 910474675 61478166 761481143 635576273 689364240 168016074 737815604 673647016 835048281 261922145 866786995 623301292 779279787 118638095 259456717 729913287 854436612 359672394 617709585 749560606 894783930 942935301 997194015 528611586 761078452 664981629 977763633 114764283 686323647 121511072 661067207 182693937 436320936 551961182 594117837 333684889 504216139 210566299 704968657 542188041 860141207 864887564 885313171 294320006 741631408 960083353 960144411 241951119 460678174 101674858 250888811 238117087 982451487 5510504 345033831 569456677 846638349 70978173 464421116 396483946 998345721 188261511 610277224 184588116 727431972 756571714 931214794 835889893 951580748 333696371 973818918 681947458 683688237 299400672 513316274 408721097 602892649 49717444 559962236 810522982 998946552 524145701 834070713 295779875 764688359 886011324 957202874 258228187 617337512 745937804 788588001 877907945 925262476 829156661 838219608 967242798 995387955 657187139 659616962 144229254 222573345 133260849 631426949 842275149 931094355 714652449 955400353 115781999 717120314 616099080 780131439 541762570 720618536 632782547 961201257 42285224 731242155 368285381 507293357 372711709 552489909 61508151 681425402 45553504 144598243 8088826 671008026 188173134 503517237 913062137 958927245 624211131 913472036 44447162 937723059 535004352 964127036 248561883 621036444 733608204 774208152 624104395 854603780 291372445 556677223 336936429 662596104 446548470 993447081 257844507 341989936 644589952 764927734 541489566 994067579 95393737 638228382 992290324 994186302 882738038 995622569 291493323 658571956 726090566 776752627 435989518 550583629 779856201 790841961 253155209 363162966 408601564 594822858 155248005 293681568 225337321 272860017 5619535 846475127 903108709 934008710 290370136 993487133 513093897 905925765 727599729 840754084 331120635 853077260 711773635 799598889 778217268 870347063 198511474 317913477 817488280 874409975 113131829 330190074 739495819 846531311 828054656 837565014 167561853 395851789 585758583 843872047 541915551 570554912 782384832 802773086 549893448 994800826 99543715 198559392 656017531 994788734 409171570 752324958 209234252 677696530 537332808 690915226 142296530 593696961 839299651 847494539 55774131 618271063 529734823 919104422 976668135 981042181 421353127 642391776 36095153 256226833 45914099 375730789 450127532 493133329 322983022 886460695 344107739 964610376 523496438 552339030 100530933 809684679 146606056 905531369 21237980 531170277 914675375 996635052 484161047 787076380 221303440 801480685 477907190 659629697 120374396 813219256 941155128 947551585 795606730 867104755 507433698 781479533 656007568 955172253 943635499 954322141 108719877 313347847 764297909 919141695 925403281 948365013 450877693 679214114 285699816 607627943 793604847 819297985 544797364 598356184 835623363 990043960 672132176 974338428 489446227 668182426 20202280 283473021 617783330 678705695 523230198 887186689 737429348 968272409 705128980 992762605 668117620 798277660 532724318 648053660 148630525 840808297 300733320 419047485 755537023 855098664 127551997 777318565 739225409 973123234 22536199 353542594 800904132 902984065 894604520 938840313 79156710 652217179 102998568 374667137 485921173 498832805 854197197 878448029 869219286 989161782 621493764 787461871 747893685 850570690 807395187 880942421 746987809 936970521 638250011 739715113 681134858 967184213 169797556 791965106 658388841 671756022 943017112 950757197 831473791 934718597 427819827 793100743 331068678 635172788 596636451 906756794 724253008 959150257 475977758 956218809 316734392 679734695 304473145 641659838 581481172 734157343 49404750 630580903 145246750 185232320 418853865 762898592 606054610 624016828 803900871 982968978 934582491 957374508 390671571 545397206 145208878 559308322 950030077 951796855 384959316 665223153 564329390 943801459 804439471 837830191 759361288 945411905 991279933 998305553 396692713 432581525 627179003 794975570 328885599 700420209 503023676 999967680 183320564 994183436 840729466 855146831 799112520 863076625 551359357 587069033 914172129 975944944 567020549 598703091 730865713 765637434 541574615 859445542 845829666 920483746 920032368 976145282 354873673 785866099 65634869 857525555 572746501 760090013 764079619 915946600 57355971 312051766 512125760 593648289 160396016 489971217 505856656 518514090 949617399 979366797 102712341 132098748 126024388 561174817 36224709 901188356 169548144 343690621 508632636 644227570 645667062 985859689 126348121 813893470 736764084 985310372 658467406 914958241 746968235 933318981 141073733 545579856 733699103 765496380 809271167 824151714 694755258 816230046 734868049 916297052 34663057 343371633 503622877 609015806 36140834 359703713 884407893 931661025 875745971 914711001 328515891 502163777 450132845 983265850 935093869 971908713 158727921 350879526 364265768 621229774 536526591 744640011 66387892 326970302 619573227 671850868 995181904 997412888 527404065 935413734 731865418 958991214 754351337 838657851 937625221 990503563 227588916 577747476 953364648 971378751 690001711 978830561 544386568 981158569 963260742 970601067 954143057 962539498 692651447 904211694 241585181 868014805 295300838 972584020 178188996 747774364 358475627 849282192 801460507 840487619 593926734 691938792 228852839 541365148 19744404 260390553 775213447 970130609 562418910 705884202 95446254 939927806 679791468 928108979 775456462 911285566 534283443 629944955 490757337 579743964 954609217 975307262 745605530 745778609 616639613 746929312 301221745 976505439 401700286 840209682 804874977 876899041 98624486 663511934 11797317 945272276 697557746 976928048 229568019 800066863 396033564 918718482 752015212 781831408 394863097 889633400 123418253 267844645 526986245 641457341 572070154 638198841 404966104 945019569 166580431 843176940 471365697 680340996 735508927 907841766 204282573 953472012 456157650 863179511 622434627 862941726 179704906 774594066 579488783 941905983 533261537 557059804 363949364 623096732 763754891 797501501 724016825 853848253 565639563 610881279 46110967 881768270 708574197 997430291 194278208 598370581 14385912 522405495 200475424 406822967 189629214 975877474 654526169 968016154 858613023 983001700 850990408 853694181 466511738 509476993 731824415 915526339 829819312 927889615 426987186 978765311 312806607 709491400 872632230 970029697 589920428 648947267 234503399 395360399 744853782 942925872 578417750 936074515 129613590 225889772 747442254 918551195 376318139 536813085 351939814 749137681 607367301 982394451 166532780 709021384 558182436 797914584 942890466 978897292 319232961 554146850 545748739 717376934 512333179 909346340 444479445 506978097 446973021 801003185 557290660 891849016 257731882 307718242 28832534 121057946 365046119 826315319 738917583 808699973 322533610 729872498 378081309 396213203 549722495 730172513 323514701 401308448 495409775 538728883 224316077 852233462 380274496 447253332 154625800 931206362 694922651 963146182 529082034 916780507 795812592 972789453 504942104 843688795 505696307 797457078 719151975 859423341 608976207 915033813 168231598 414925526 275049728 789200818 617411015 844831631 385619643 510008700 519371352 909170035 722935620 922845566 386621901 771347756 573456545 644536238 106614170 513841951 763617732 925547317 649072827 862200836 133628551 274709545 627644906 780384496 502295695 732467651 504731951 748511450 231721932 710130535 509077657 973190264 438783042 708569628 986382588 995670402 389703491 670412366 316033453 393943996 665495619 826656187 83252028 91417116 262110197 699638007 425192535 765699981 371818968 992332233 76721149 522609863 797576615 870589171 397417870 493078931 243728331 719398682 810571384 929104742 707688527 758778558 618589997 981203021 770554370 827510294 514129983 918065194 1594988 260480921 514166900 974302453 471861661 697885449 892548957 909904904 611131898 673234017 281952863 972339805 760621722 924030333 451034560 970503081 608874812 885879566 137422651 739828792 586046814 824835878 79666968 913151124 784372397 820341181 655669359 798699859 184615026 659496323 43003189 734289166 790389818 883230490 689431654 719959421 783704516 835969122 689426447 840842037 980517546 992094329 769129952 861784770 634900549 646438456 806573825 993979220 283739048 580308617 458722653 789592310 30951426 433237608 281002977 670851770 292296539 343209149 238340168 994501139 62801952 245257057 709408710 797787453 871068829 979697708 461068204 480657991 444191832 663246062 844691828 855259464 626055596 680169838 598964226 775655610 10168509 635065342 311482722 904940073 987345271 992378673 270378179 439255972 703243265 844061948 94907770 216464765 87028324 146245973 138418916 935101194 743043010 757205519 874888877 985078510 710126270 764829316 808118913 991010929 381708673 472249710 485412860 627490840 652156084 926281538 252334040 393761961 859381151 888449235 502205308 773788730 150084912 764061025 443173167 448450082 464452775 754163623 693803755 955091143 920022191 958142643 718012165 791266185 676717088 701986073 569551431 644934602 13381290 138538441 981157964 994077714 570998074 899677043 355556415 398654084 570396427 915224767 916075209 968614669 507810107 959860550 473529899 661961471 723218184 905347920 747491154 791866602 91439946 193397202 304384087 481612429 640527774 994589365 405936201 709935719 393175922 908972570 879972235 910509889 977501362 997209503 531130084 999549414 817729780 832873771 884447277 991702145 269296008 513460321 598775248 912154702 893710977 994949103 902513963 984756353 375968964 924568610 199533980 445824294 68168781 134034166 550977127 898274066 923529399 999573264 293067677 671864766 691830959 749756782 520359306 819943258 785780286 812843698 760796446 892817613 731709073 969540598 670758664 698822190 49769308 318168906 187599785 531578965 149905410 192321472 598866712 809544070 977293930 990279798 884591505 909655326 276356930 517126683 913301212 925615404 274481149 732126175 431378671 505603175 736545370 826165146 854304151 864869952 490954798 676338374 528520470 892896447 194303974 240981564 233690354 876255716 717923759 729724871 322800497 693127204 649418534 727105743 482066532 484469975 346721055 901965235 483761983 655940057 722929692 882124472 666975090 760286348 153342825 383646964 909346653 978220934 641825728 694936303 135207951 311073588 507121559 962450595 664983205 683199300 736023377 957895974 570083847 643201577 884998389 921570420 529815976 683533564 65162342 446475413 70147068 261871186 56136833 697201221 695655582 988315679 253706211 477544932 272449363 576378468 986746150 994041463 721822196 765466306 775917229 809017602 356993795 870945254 888046705 952848050 792317082 931518463 63352980 688264045 731649173 822479617 60067287 428741855 530900288 737677265 874450224 953674614 953389356 977996571 228123956 884148168 58310461 837282460 981322070 988531814 786969681 946598821 86532765 428003990 841538650 901662613 644770288 886623924 348624116 680532147 555651868 897546510 581549608 946783029 542341710 633404886 272013507 803420440 201270429 457542158 838586541 872050578 780021255 937068789 636276225 818851244 607617570 639364532 577500551 858350303 537045842 704040613 253235757 265733300 829158011 851715152 172880625 605930029 571778157 799728281 734955024 906110519 817634351 878614841 877703939 944793905 434537884 922690604 627102699 912360529 440254570 645297261 304301984 427884402 801155893 882761805 71982540 906181646 699501418 845495665 834158983 867538968 774547086 940546825 168089009 538219809 334652174 750976583 295587326 477637058 609525752 647969651 707688419 779931269 410229781 817853459 642989358 971750001 199800980 469098890 478250773 653938447 251377287 619131967 356942983 580231342 385027583 557212738 133083244 775190366 229852959 355617549 384756495 853649984 109943372 214678063 665001332 815443606 806716618 811031463 966635233 975429058 277686137 816020970 550705183 591021062 55819739 614808266 773842625 856356009 127894042 672322340 911494890 933132770 123219002 544594333 556338909 590959355 854203991 952452580 898452880 957995779 708657716 775408349 822440163 924465883 164267158 931750975 667300662 705078341 565488688 859905573 915321519 923763503 293526052 854842272 324893417 865266099 398747601 529102826 486862479 904528869 83534539 382371028 901716915 971702300 654944842 818292617 812467194 979033399 903319217 975647801 673410536 981082858 548735444 794642130 513285422 676597766 351581584 787282684 246481302 451687013 781624269 835613447 330851781 340601579 615699834 856880333 710139578 991750645 83518982 863702551 61552088 649929535 918229486 999513333 546146854 593133886 141097397 256382404 17583465 241046957 934731324 985327108 719241441 768800096 890117595 972815325 980929215 996962713 208038683 574671282 666628769 813241098 424049787 971160808 367860220 391662608 452640552 489030231 238383559 286996221 530165101 802656865 484376851 558416724 374153374 627442818 598701908 683749894 413778699 871745325 264302372 620060463 41406310 285634705 863068198 989791860 533628940 994612105 494925713 927766175 384282857 771767075 828350481 901779611 299007949 543787340 191442566 260369094 649208817 868710757 608311698 772906226 374719029 389999732 795358067 958762729 650682077 769599572 606486747 673995523 562954400 791111077 838044524 922542420 540449719 567726815 40413160 236856961 230789002 453702289 243383212 256005626 634278041 776185822 264161261 688870996 268477745 442855793 510840479 558672301 68959498 783055580 73146099 669178859 155383945 658290634 105231637 874421141 133052992 558245337 3577589 280288676 582323765 886715589 564238956 672150555 149915002 339275632 456675699 983976961 636689062 921472498 492334043 546667730 754261783 845175383 55134701 63683427 53141501 484100999 403394191 896082789 362430317 759205784 72472328 169724452 15215908 394829207 547423615 654073319 126611196 301023852 378915139 596519763 566464059 948422201 643269181 708805489 950883412 999517366 127656373 905808168 859710821 937905778 757460648 872611119 836654734 963243089 275437111 634783484 983254308 994090903 421785731 831400731 990428720 991323553 45842357 376940178 952570792 960829141 385671995 606540347 557407088 945122943 334392534 552733334 392827376 848400387 809890536 849238784 856580522 972034757 320369831 509098776 512319303 915488834 739973144 904160219 683671013 824495586 684359447 985558165 851565440 923174394 17921644 180727054 91588425 544132265 424690307 445082677 62750144 562480555 786104903 958287265 827974638 871134291 250693960 537914140 910506836 920357613 770262148 905684545 737598400 752533146 542318739 663511709 170873862 872844969 189315936 864037176 912934645 919373228 478608659 725815068 598895192 615481306 990764692 994648975 621392981 973082035 957244429 970789127 325507054 513107270 933058944 946294841 562006168 825110229 89822897 452160940 61637552 774291816 56433162 485008615 815650420 986568029 26172473 348281870 23014663 796449319 633787743 828559262 482173922 592499422 625999447 963501222 222070545 907722809 122351325 699384871 687936521 851578797 952783646 978504513 376475560 637099119 326936268 979806632 805258249 810288642 154767288 756258715 334027820 993999000 484606778 747207591 821022231 924834563 391322935 707613613 598112485 774052009 42338735 838975166 20316808 31880155 872026129 983269290 533647045 823352413 719886607 794721384 30821530 233218428 800868929 833910819 812579308 999271007 701291033 879785552 966634091 991557533 694816799 840794984 376093259 783446870 898013262 970795089 253765566 533818021 518213950 630185801 696523416 877045667 756664767 993336220 421841973 674314942 653157446 818783798 312067321 903884530 507204766 792338844 455361402 839302871 316801268 500030292 223913293 604578859 752324815 832181916 498885844 620688580 249997947 557691744 782628335 885372979 299691576 334360342 136120617 847819661 67633909 566405239 788814158 941702997 930331342 957689150 928369445 982900732 94375702 507243788 699864204 964208119 231254741 488902765 670507364 768592949 745655631 926632970 928004467 998265709 38777349 166550942 288496054 383728553 863270037 987243235 61294872 407714087 168486447 717582713 108157843 796991713 795322069 819870501 657270747 982235095 955007679 981432685 785372918 978533755 436055151 545826227 908087319 938054977 612775324 651941856 78224646 837768333 768459832 874446277 335572847 873324414 597264199 984038725 215874496 870824917 987883458 993749877 717801516 910370014 217599945 621970855 910167819 954695223 433259705 551515750 367251665 847690096 780302706 851641052 985596651 991608662 470057347 485042415 863136257 995891560 554342197 843006329 921332905 958034039 45179635 384654834 929861231 988493914 418593286 773268667 437053243 966723460 128197214 830867990 629911820 887670920 506937481 893469410 855370177 929858048 586994023 688579493 581369853 670067030 689555052 864302797 655456726 866828851 628339674 660563507 305183678 662058861 880598179 985215636 141513976 371198391 598594632 900163900 368970598 503037353 487990637 833263564 20023082 350208495 294800445 781042706 98785626 278038852 614318429 980533794 564353394 649771243 806279741 925850451 74503042 228255128 300269001 880641753 346661488 453877417 625837314 851556655 685936032 724424198 213466120 678285917 306359834 393552379 404488055 558810149 667038673 994315102 12969410 395265374 677445809 789487157 777951924 883134952 237177416 866582425 980464360 982202754 662890394 755679977 429222199 984882125 736914582 998552596 539762036 576844129 224277767 345810944 625736198 854176097 553636182 556712400 207394054 882637366 133429293 808167420 830345754 958009207 751666500 879160240 297217687 917072027 376183947 632441354 281219632 401846815 488537977 587871037 441682311 647031568 902961742 934083206 98700375 203845724 315112980 515662498 505250696 857842793 711336405 844097579 179205862 426015553 277336687 448699342 943373401 997843276 762142259 871509142 15017539 453550190 408055744 781001106 135301437 873184669 196471146 274591502 245354142 317060352 809745388 831469816 140202281 656315366 112523115 381202027 113517968 309307430 391013169 690601650 960036449 979059556 331455807 505653960 412898668 666907358 534084403 616397712 493651920 684970137 247618959 998007438 251912122 284169208 322291662 903739834 813560041 882506075 264363831 437783900 253633098 298392417 165725503 192742931 556044462 610645747 571646131 701570145 231324423 930434826 847952900 886805829 345292750 415995816 485359749 903371648 698893025 740388144 216705746 463637999 121629309 808830160 723364184 783284662 521126232 582071659 78320751 790713733 460952124 584837183 994794075 996109474 556303542 615023046 443076028 606649619 480353205 934511392 283751463 312152085 412777756 425683845 475291156 719326152 513801536 961233841 602343912 733918815 638128185 750498405 409641772 968853827 797806976 958779865 135919750 599126217 806337431 830132519 30368510 524077843 298344214 483255965 756720043 965599106 806790745 895771201 364208714 881624196 892897428 993113553 658826052 783704852 146447960 582984650 496379258 834178582 347016460 751211870 572483874 931113286 669282938 922105236 977371552 996019352 934361391 950573796 691998559 877918683 220171376 573074072 536284506 836671298 405518123 906786561 622762734 767287756 342003136 585053856 514053930 717633760 316387251 623932831 462836944 939718152 816815277 839752838 646646513 963415004 740211464 894096346 328734163 465697209 398516959 512074209 880006372 969128039 422992157 699173910 124382552 708370798 691721275 738171225 555574949 898715146 674108223 979273215 454925057 882432927 262823532 658339509 66395895 120198699 347669172 706805939 154387717 798517569 145005132 886489934 835685280 901309930 791340316 975683094 709653510 862290587 76039363 394320741 727952758 999966585 255041341 867230077 891528653 924095169 929721088 954698698 569219935 824648051 708944160 955031699 53744721 987831101 131876292 464985627 271438007 855180911 491725688 665195063 843711674 920128914 365058467 856782680 102688282 978528433 32099838 225888518 805072483 915445047 749247391 909333770 438907874 897459322 856753524 983721123 874596687 920446186 900278979 976785785 950597862 968247563 24965909 377217803 130034550 419124303 299235818 479549707 109936084 488133487 715869072 779994715 691766050 891508488 552151320 683987933 850672445 965761644 286794272 801690142 376287914 431303302 788195118 880267449 447480852 789096472 988746325 997101695 283741923 927073492 132524995 473115810 541035443 554048114 292547310 499555245 345053095 995961311 26775634 615409208 895965622 967456410 250244435 325968829 494122500 945406697 494530925 577537848 996461702 999978849 455645273 800438261 598135122 974656407 751431430 757352767 812298173 868647070 47869733 549431751 618118100 833034266 997450611 998413762 673891250 964942677 353690499 396077993 701999079 872747484 358097631 394833412 82810549 380810014 386941050 748273266 496662214 723567265 60619660 809253007 852694014 877305845 608870937 906864215 391982944 536056334 37641919 235548211 678458500 964938451 954579161 963971369 769090343 935455239 919458955 982433856 775662451 938430422 255281066 378296517 420428420 635266253 596119461 787733404 266536615 840452982 239465685 669612222 790673275 825927466 854630551 926408638 799859169 886517446 6331054 880891733 401194278 764608812 857193350 905588789 865784434 998694266 769879331 971552353 730223085 888750274 961704900 972442184 533208839 939888285 941276213 998093981 518586906 937031450 431405959 669248609 789420528 949656412 326866516 801108423 897445009 999025391 396555279 461522159 272502793 392061886 762569107 782219970 521945467 817294857 776551758 828898426 843048973 998484386 274307568 760183412 229967110 724641885 991864612 997280260 581260830 854525599 446729514 828503421 433662796 849996604 875455283 936880488 980128660 998649833 151068921 532958028 387192783 548387929 605029414 923170403 875441401 941329802 96640348 321682297 598767104 865197987 300114341 695704937 480212165 542550609 554093637 919559303 173384604 684846849 738262450 979069639 941273267 970320287 320784739 591425704 636760093 935516884 766647662 955861584 195138624 429477010 196614571 441946186 886628852 986569948 927380461 941689564 91859941 887495819 161116224 999667786 993133966 994970765 721013853 943532246 879058664 973074974 89883015 339042862 977083239 986002153 845663991 934448390 867979472 886576879 170345544 893195193 753417723 899448528 579384638 695842997 380994068 969016199 687233019 951426228 303987615 321393940 700627927 890144263 698676747 731819071 259315173 361660440 180102587 800621781 173189083 271586399 141509391 489125587 441907666 578924196 612940403 785166422 868952434 927024960 629359951 805461413 189960188 942999635 377891522 665698473 514061271 935519929 218302027 439386569 988058994 998731793 190587816 877678544 208820849 823153593 125781273 726393351 977687594 991706870 773107435 815938499 411815801 691438720 630987353 835122972 31959407 915319908 817871738 960017693 932599623 991900473 725232989 971297754 644317516 664042498 133757310 369650928 245925364 541287006 753433647 911696463 309717362 791506049 994393951 995055506 706013908 951090058 379530593 452785691 934926757 968714250 664696762 766609212 280188563 689463460 588550848 980893159 813465034 945565392 782888840 937565672 662902069 976469557 619941892 727984665 523974935 915976614 956868226 961674742 84441387 701473970 421446816 689026972 36826432 597988271 856304236 920748759 172693228 890131842 32262295 362159064 664072597 710170964 947061432 999456135 829680749 956116007 611485074 731334274 413565449 927279079 672423443 843635409 880422092 957069902 537125782 866952334 571227362 999829545 594343240 861375332 153392294 639736771 795024466 864513919 259181208 518368604 488651624 564369804 192612250 933413143 548009687 735885424 459852962 499813981 371041395 546996963 475349100 643995255 270698376 364454434 927503320 981771329 491313525 690856119 835865496 913976397 248970063 513733390 877340392 918319690 24478407 462027319 33031582 785049908 461562416 996756432 899051808 985282968 588170888 981275676 711625411 731796337 34105027 494302534 724986626 726746762 524982483 594186356 60407754 500363789 956913265 965563902 580256908 714160169 755780715 924514182 86922380 317084505 991499640 998541111 770575250 959031638 521008413 637505185 832812252 988198028 152768630 866076205 931167937 988026860 367414248 560886831 258798054 809069201 89710568 907818175 519161421 993407096 34869610 424259376 409304428 550645233 333347802 980332067 686449351 891111513 185636115 504235748 509900945 943577587 423462831 871715598 458474774 840367651 665451456 853960284 231743197 802810871 833528343 952763735 334736350 797316653 322178067 697486207 18553625 192670244 274595185 664733306 542682526 690188531 306224004 523797409 220378678 415904437 967263072 980657524 692667749 922241589 428548888 809928019 342777509 587006663 503962478 667121156 706289434 971990918 838881963 967971763 584551593 666295147 199534132 730509177 611059067 901846465 276368767 305738697 415009124 557965320 241050731 705688461 56664177 923434707 446636865 837661161 531265410 936532517 966422983 998756572 996328775 998164657 268746173 312477044 455208128 899535864 921311622 986787970 9392992 721752061 502495954 507163899 395672190 477702412 850745990 985537911 79367101 155813625 534395138 819469033 189405971 247489654 883146570 951175386 816466726 845992182 128717519 525257853 98384209 282359321 113003794 282891253 231287001 897850269 674336039 706627873 705845656 928166602 234925467 423894566 197145215 363868429 151835274 807607623 332345609 484570479 390968517 944096636 775282621 881515368 757064015 873369603 949367337 973372353 603477508 966045475 580792284 798349105 40099018 420044979 687020808 877443389 847381573 881750616 99665721 621689147 513720668 603483875 323470171 347001598 620644965 819334011 167373124 277088847 44108667 967344679 601804771 961207719 868310346 877573242 782273556 911960479 914095275 959627987 494167561 685384649 756797366 982567356 399261540 947728896 286535653 915243037 1563668 504487346 728853459 906380290 758638290 906241033 404321872 685815725 435117639 877151633 913815166 964399872 989363584 991639589 625058111 752982880 771184591 973760206 420823893 430679150 98447590 500618317 14828796 585541407 904617697 986023939 759467547 806077853 848372512 885329927 702993926 884193120 257441171 931601888 631756123 734790522 206723303 498213768 699857871 990671295 662360428 805376435 400346918 950937661 598781427 893160330 986758440 988419181 62002461 150214382 319243190 866184557 504047128 903090867 206192253 260927208 286301101 297793608 842823107 938413773 710153348 781247807 600059137 632281256 851330348 939223229 155797044 748969193 62616754 932516315 452928489 673240941 659989520 752688144 187420042 484303710 443676517 937595860 563650325 845637444 773886670 967710539 546746375 970163996 20987376 904367491 195613524 653259321 908835469 998342870 607315306 840783254 494210902 861599113 56439959 535822165 451445191 597600231 269371079 571720253 820475190 869915865 437186147 524421500 44985249 350478532 151230808 797702743 847741189 907291405 758511304 825160350 327968039 949824332 109304463 499699719 669548850 697725163 584775211 856561014 105258828 871664680 647281983 922133119 985966448 999962129 437605305 922358878 994470254 998848138 194620156 257629937 62109904 959929173 284578655 288884293 126952609 983899539 863925807 954958335 948867873 965577046 736561886 979802208 832981293 918604958 83648073 431009936 386093532 810174360 882208013 972049861 857179830 944885233 900732989 945974231 319481264 753231364 671109004 854596065 156508377 416721117 445558533 622704817 218803751 581302296 668078450 690592859 516784357 615223222 878069588 937465787 519648114 678405707 623174163 962699190 504275339 561112670 382779062 870391095 226223887 314550683 331409233 785812231 877449591 978710145 408719474 415797740 936056928 968836205 316676341 488317800 433286531 449173965 945780512 952229755 891719969 960696588 994911491 999131759 635452353 738888257 349467870 741616332 411045682 655508820 349841257 525748350 657433068 939034539 436187348 890497941 372039369 677766238 485689309 564720523 515554190 834948427 76808393 721214908 529564637 851288501 767794652 881706713 976851147 980993718 543910177 721092709 125409600 603307989 536698156 787903850 68660185 524945846 717963499 897446388 638636721 944271228 545952844 930929641 554677593 682720460 489744045 635285814 925125345 966036240 205150989 861335438 407715491 651323726 435153147 587282634 105549940 945042686 625423484 743385480 77125547 436901489 173116305 507984060 193016257 307436152 971639344 986892628 791683456 834114007 269177936 909963341 539933678 911090213 126890778 430463706 917502916 939542114 708301842 987339589 344952463 671359014 525941654 585714175 16063792 597102631 323723813 454114780 792343523 870770549 463827260 741809772 794463965 900682786 771008782 784231255 657988165 782578848 210842297 605802767 850435333 967542269 1318394 679296358 362620521 861924386 988368404 989805063 770145668 790664682 453028485 914071467 480725054 852651846 458576679 632867177 939156451 944209717 357812850 380327722 467514149 654934231 102798531 452759373 254613575 608880079 910035812 921381954 692471591 817268427 200093754 629499300 982538181 985556979 312556542 399768834 359175636 806742992 761274810 808984728 225354462 254365784 78733211 414583592 785034205 993317188 870497392 932431024 76126083 663470236 60734587 70683437 107816636 729594737 991940492 993454122 868760427 897157200 720619007 951053492 199584265 582352018 73407911 546257616 811046510 943218624 602115329 700035505 947538525 972591967 287996602 760177521 153763164 626803420 613415970 831073762 419996604 758711321 345271237 789170650 329790307 627641954 335935301 853238394 354450105 487149264 422785704 546162910 346710815 993143765 54693239 518617960 362186038 776534630 388599330 825278473 594393428 930495424 551196888 777965597 209569175 665117811 494822667 668314773 337015581 686862599 5410238 105787812 618598026 979902623 427429165 569371863 130742499 465492777 706468642 761493610 608489048 993683747 538749602 821975638 180431464 959842430 837802001 860550395 394321845 706179021 330498570 438310678 201830986 799123693 257514372 553141567 186766328 437112053 163647185 837930764 998124700 998415410 541118288 890146591 8269262 863875100 921070334 992132224 404992402 871329025 959489351 997763422 230980136 334203710 810806607 872860433 187218465 792285028 446944638 540414410 855562198 932108402 657494394 660960359 192106714 714776591 300391747 916866935 680099700 914290828 764404934 852394099 785933295 850377301 274889663 465155611 157999573 926832280 997133015 999773002 947853192 984463257 322762164 589587051 469767268 854493536 521621227 892058609 226677644 907436079 169597655 569455019 73883481 83553877 241668707 603279253 818690690 840097114 453066959 766535741 39187419 561486358 731399880 909722247 760902683 762402553 985802732 991397430 402018839 428419066 308258356 690835418 785113093 910233760 777895695 820147180 291889600 646733185 609312433 920668546 470800230 704073682 856439210 930170434 140129973 516532124 247874500 809914890 327201799 391471803 531529647 679334327 191310710 472912491 624346574 806928062 125234812 660557723 57021606 616922805 678845201 707154383 445895834 684441857 135078563 725728017 577939425 781983795 816295807 960045201 356763156 773019756 599342696 806925712 261473357 706147481 26351769 627006719 116034507 314973930 936124072 942681271 81855974 737305102 734512634 934757710 596243520 755555160 377770351 905772200 188354515 921047513 189846700 720601757 468072572 982604643 479623120 539329218 168865533 340819940 280540684 592784016 487001102 683928192 166040 94686141 138914583 849307603 503092365 598533968 415732431 718026359 740818966 872839877 932000244 933267383 669951097 685218203 705456890 918220058 424806864 947240101 150014704 883674718 540404821 562834293 954174299 968365761 385269514 967574456 707430368 780753050 989045164 994042184 770144837 917661435 637781785 764493405 645635657 716140446 788521236 866333700 943321717 968454429 392474110 821836980 493057499 653749600 166047568 427625086 465755248 724615309 185312388 410581437 872601173 876560966 919520298 958627555 752742117 982974470 480964309 867723733 591201583 670832313 473652917 992713841 599153475 606494142 957692870 964554374 695582499 759389738 792657500 803258899 147065138 166657121 477501331 527920136 151568867 849869137 618784941 664649538 826270424 829198562 467994673 824400589 169121928 396023646 988761227 989436703 375360050 989368416 104042723 454409585 427072360 896269367 786858021 797059411 519330775 949554269 824162062 906962321 238237197 485928427 417369733 953449738 711813365 872257370 405788846 805345153 542224018 846929148 291235467 522086895 706887905 808375864 251904641 926891461 928755066 929441716 438709862 687089182 441801083 628391531 939877607 940185087 937065538 979649501 515325251 725886881 495608162 712950363 252312963 966272292 46452285 149186695 896892514 999908328 48144824 616733874 543192623 847454371 234798883 446749557 806185569 851297110 414575766 632959259 99054081 607154960 835382241 892383900 914440800 993504179 157226467 956883359 968246128 987523324 8749252 695569228 540041573 759323567 424826794 524294551 808424434 907982122 666737796 753912541 301497755 619040227 619565899 691652627 854796406 890529080 897085904 931311850 149570881 876326425 40928515 332213196 740957280 806457950 371696549 644501025 171113738 649822228 825722792 900764550 908759286 940142627 516144394 726589358 931743361 950386267 150473442 913907139 788337963 876742125 212138534 966909614 721198730 801568591 140877756 349024485 359788034 496765996 466579515 655782603 605699802 949588577 478305319 945066913 915008479 990024250 769597945 986602583 905667417 977741067 680878338 966383227 961667350 969411595 965353804 966380022 124340828 838334808 38582627 328119691 531107191 926129413 433935654 914614531 663430595 856550589 278442421 580419150 682524992 761127210 579320737 831466149 296487842 402183956 17167663 954144314 541376603 554172554 58019100 198356880 292136109 758489585 436561731 481141594 760371415 833130867 960366219 987466373 256230792 680690947 19740816 551754024 32547724 177796819 996009066 999786129 280689452 390164388 598123033 668645295 567914512 813916405 269646277 367206397 515846914 961103049 812018722 970359904 270820533 282534921 441394830 593631589 31703647 919803620 213792451 663485524 773440656 893433789 483408372 698107009 802600189 893120821 786928614 966273498 863576679 914035772 432650205 451758975 100412855 299027606 398967617 914661017 747242446 780013177 347060365 896804791 275185245 585145170 104366701 478237392 636569448 973447502 848910379 927675828 881754182 936521013 455700475 596145200 782965822 880352382 709934683 997803902 756032235 779619704 228242531 856285428 942162055 991776338 776913864 882862400 404023268 782160461 536335103 817532365 737932867 905101208 53673061 171616325 798053115 911044837 801142334 944566729 239651742 640822419 395289906 878881021 635407837 818498804 534400142 863700141 735780187 772754483 586886607 698473824 926373811 940333073 373761823 559644150 957303354 979483560 478563865 751953914 883898818 886889498 528416260 842713638 320852152 488621030 950972393 954928935 109884544 341290159 559448083 870700463 262613854 474909622 440677459 822114502 569739215 808813155 693653358 809382994 273346482 494747263 10130702 610098730 940536489 963967603 97958278 242412540 357185754 538192227 479382107 797766655 250065161 726582212 594233087 950910485 30025290 480381279 536841188 924486748 808652135 977734229 493525726 715302380 112851269 935182344 568170014 587235675 141142398 866110756 40578011 683926141 650883425 880528151 531702504 648726585 173489803 213997864 445642534 648430179 938263791 968210486 922264933 974535373 391393620 713669668 704731678 869813238 482385541 856861481 461259286 488052759 786871889 857608034 961065469 974816650 583764135 877932045 6218238 656913564 380004776 999445313 508810105 814188350 730653841 843476424 240550397 908263849 692212153 768512170 171239030 576622245 798324912 989989360 74762754 103063491 47641915 690908560 29958801 131458313 888177347 968198541 742697531 962177069 149320988 641580639 521869288 896523131 530677331 948872072 471619113 585481611 178859226 226539316 966393280 992998681 187423580 518808146 107940352 796333402 788962808 857214464 954200201 983079603 549708453 724202846 53135026 934704504 473395051 784001231 685417682 840772115 827945690 985605170 731793100 771796859 819738107 900075396 182298635 690202393 238962776 948561811 142701261 142713247 70727322 189106744 571017106 791710171 804909496 983589067 738308953 739205552 814417789 931994279 214086907 389000932 127874397 821956653 544286682 858436943 608173945 833634177 224935689 674582466 332530975 928731433 730881394 978231000 784268809 966589696 385027383 857521075 225493171 309645418 445165030 540227429 325353282 921263274 371425039 547346831 612873650 757616780 916356519 964816493 296484171 462153059 219145247 797633746 280084075 510180042 146038354 672166663 135255479 406671823 974324256 975341970 274481158 781769655 944238113 965063065 698512166 833790360 300701940 484788157 356725693 897065445 508098732 544508484 133172175 997188572 555910651 938761679 905922830 946778472 950332759 966645896 496960128 633297706 125387960 129667123 574229364 999823879 754735501 867790589 789302012 869227933 218017173 531710034 567385197 794961046 706790194 715558850 750196276 856700147 352515129 622152849 332152359 969940054 820620889 979682341 487994526 669195729 503315453 849774299 496089211 879107521 663487940 923264169 629074093 918280755 726618538 834386239 509559214 912815154 909977744 930730623 803619597 986308225 693189722 760885715 540772754 923783391 508805276 541836671 576523983 610294211 541306709 601518927 990897568 998830660 476446672 651610604 890311631 921192007 749386887 815353533 896732603 924436801 852153609 925796975 982752991 986747132 72459870 726704819 877098772 974866980 159797745 759319629 358847693 601433056 166974608 609554412 970137870 992558662 222062835 681749716 99356092 425967610 119387861 183248559 517067036 876250951 564223478 610823615 72714287 714460000 330994466 662112588 193910703 445250460 653041671 827248160 81912438 411604035 645095614 901569864 987826013 987988308 794908634 965527661 39054553 277105658 120523799 330862920 687250271 847571359 224163318 609936335 625782772 788066363 803206665 804850628 955496480 990519147 990347491 999837496 352305152 956959226 168083188 208937594 240125422 924148711 504336204 653789587 763784732 854833902 295732948 301526005 879625860 975144519 461588351 617262758 115864413 458875641 212204013 469040267 606141985 875378063 610485752 767287473 304324034 973888354 7497869 345819075 60992703 810728668 458113780 596659468 543807129 754132804 656359429 693945107 826475006 844848010 276226102 510212553 229018413 660652730 535121676 702438927 157496962 538220323 242586357 442575555 9686439 315196942 678335594 819419439 753053269 786138445 17460645 172199145 462632171 578938993 93794449 255933046 347549257 885298926 267517696 295164148 996169648 996546477 615487867 697416510 841464314 920499595 835599079 910451511 585541822 790682901 38302922 734443824 469307412 513658716 380459327 433072737 692515666 815032715 908306679 928117382 906097254 996354054 86921125 274504195 76934999 914940553 82914545 574653899 17143561 384572372 971092047 985707699 164018675 853069509 508391794 600187224 392786747 559458969 689747852 741557863 848518868 928110925 980548054 985950805 264876406 265984089 714151723 842111765 493686530 593593079 40926069 713609282 253349028 367607103 668624409 746694750 286365007 586076417 741978900 972081645 827114482 846231384 988194070 998461538 656776255 955592983 358080437 687273025 991061423 991797862 181727490 786749006 627050013 912327267 320060016 568309038 350939928 922654973 431187197 721903055 233411254 792910689 207669522 725531710 169133703 512570915 799251714 939450402 731928804 815937301 268206083 621721559 560498347 682652675 415348591 578796565 243441638 966135296 203142707 244005393 963911781 985176974 79916085 985109787 470270243 644568418 522775583 807144057 760064427 781989785 584549027 746311016 657526284 947511854 924702379 948475549 613543436 969682707 311854312 963227612 912987777 922893266 74098156 897389078 457045884 595745363 371034994 678007704 196126036 302243684 640965792 914087668 709750885 718704406 141715165 371537943 27520905 884193225 529499511 750551333 464915981 566296163 506064399 688604646 439499349 969200524 797632990 816912812 656338341 786741442 931815846 979545965 289417664 505326438 193310809 984731849 243975573 399450338 838496811 987827301 668754822 708662581 338506064 846673156 721709277 900974048 589126270 858845395 678935092 820335156 54686584 193370875 336561231 465797124 251876855 504287315 849342213 862235014 351527187 641267642 209097078 273925950 942939445 944837856 38738225 371736481 527391438 806723376 274232702 675045393 774780368 805831553 560593335 916280138 639985705 753040738 284948406 926601723 972847006 984312650 917151593 924052607 191728720 636375844 847842184 880466198 332217236 581472799 567144697 704108518 204851164 857530919 303047717 534608781 247555271 843349950 464310359 944352387 645564302 985471065 738492545 765074255 296716748 455153693 962081265 964006894 825651126 885078193 793617934 898565882 571219065 727037189 515628649 796548084 189249869 340143299 962656891 992795031 557573436 651360605 17458334 94152213 633037717 966313317 494581610 610120153 903381222 911738205 994219830 999811079 5147520 374007638 865838350 998487948 585207072 870671882 231302673 983622973 292380061 295826628 443606163 808646323 44046557 63210390 400258974 726280882 578644745 738983943 432366791 472716371 872635677 895968934 684168667 746345927 130953866 923093077 174008599 409210613 662930384 845916135 141628133 404763648 413304807 918849873 134656950 819052544 143431860 872031908 430911959 432007604 193904549 329195040 293586503 534812718 419172257 858054324 857232720 900654839 670661788 864821415 22546589 37530876 928176511 972670065 317035620 553848550 97757258 359533819 749393788 968581432 30528903 811669528 88491959 774903471 665851137 684235729 714460131 807152037 381162743 895421430 968651415 976252082 676250788 815676017 835277674 901840613 57950502 329433183 851064699 880317446 490605614 852675054 580021253 847865342 864842805 982798305 468273704 893957575 921070315 946970454 291569844 729580287 334366360 763039850 547490441 972503534 502352459 765138288 728814487 906669179 303334821 943023237 430768677 794985068 724062014 879811019 224381556 612597929 255039350 821605712 755754115 879811353 597211686 755887791 49489477 312909472 537227292 726812082 653658934 706538064 767776099 850484931 724504913 730480016 216089752 878471221 44362 397151887 906737945 975372260 247612525 445152198 969107213 972877947 716138730 779767497 963036225 991328751 521748514 740080720 636214212 671463172 599277808 693753786 46141794 423042362 121469875 653863002 541780479 929717200 471243609 910527995 916755639 944296720 671955139 963754741 214672822 577805073 445912714 711583679 646846838 848105048 982412562 994445513 511908917 762885923 632531268 888424263 563583556 871214344 922344611 930186729 133491932 351019955 780124849 865106468 555024834 636751228 519439624 763298984 209217468 721913125 801477180 929085282 916277917 950969581 113252889 480563021 941437898 969823231 161652490 996921039 229652831 573254958 9535128 20266886 517868440 575011889 796687577 831003593 153642920 952953111 593530029 889762174 271931267 850663470 78772123 676092514 627095007 840616811 847453320 942968871 824842666 853976999 112548383 782092401 771092346 852895544 872935733 967971578 49523224 484935133 957351961 984769177 674300062 900002788 167006301 824506994 589988769 676895979 223876861 563833236 772723771 806359834 261220355 809270460 719054177 911119525 278279484 413219924 304549994 814541823 446784920 620456788 272522635 413083879 847013643 969226224 34229060 792954402 925597867 988497185 372023510 386857687 513498564 664615754 475027784 642325041 853278021 881985341 421505714 828242461 990320227 999331419 92422144 646190357 13075654 88159728 15246513 997888547 194280703 444999382 630310541 827615009 381915624 802899993 225001515 395004586 19784693 569331338 831307004 952258674 70950335 323015939 916411637 958069395 505357143 896545621 261938966 759222647 477008807 948529909 643956526 672484916 704764462 967886912 130759339 739725799 573919620 834721436 755245030 904305941 644703984 983513352 315236729 941758373 733664439 767322609 369736584 725100587 134519385 406884963 740061310 764544992 909722040 934495663 963546354 976367540 76269815 782871540 505188481 783766266 226564152 751288907 846192624 958618764 703167449 976437993 868444335 968067134 58640518 932427679 481626272 671342499 412838882 665695432 698982159 845714958 764484050 849572517 77978994 300401014 761626717 929346045 109918743 216837537 944383007 986049213 984765664 997553181 171511809 789721044 31770484 528577698 748411813 942858540 932150026 993409059 419822141 568174130 506818739 508318362 394807310 582465031 947907175 998422914 624640365 842534181 837368992 874956556 202609236 406483853 895186833 941067414 490014736 840050144 412430743 698613669 717377808 900457252 698062727 889071684 615965943 996963385 142709409 862156223 985235895 986052551 155309882 272575907 254338394 897330745 254145895 457597185 552463317 906076054 843719847 996194396 963609185 986324723 228763828 532103833 213916576 798056639 741738051 759312344 968221608 986247998 332891768 513962838 577903421 993639361 498848565 722594543 269984034 913802044 934115137 938655048 847416683 886663810 717821314 975422302 956177974 976285500 515337108 833932500 649098286 814610815 453868859 732167139 611617059 851362362 240242465 251000396 127452673 901198759 375882655 890803638 128575973 946111906 66815600 617199868 722275246 992088625 977714013 982270314 813896650 969973664 353525948 558770480 146226947 884665715 560326042 738178971 966883066 997389407 686857570 732073914 419255003 924229096 305500270 419815467 612218516 810415898 239392524 781915749 630475241 783975433 745017082 823969162 89095884 632789932 290515496 604764886 265936540 368995604 356047476 468702240 248006900 811437614 621632483 992614750 66462283 212867895 126654766 210724696 660005043 863826318 897712040 962211597 763379882 936181534 35573177 736402798 63111895 288548733 57238997 213425305 375085796 425810413 769186420 976776224 250238189 283722546 833149754 887765357 78321187 410576659 771717579 971424598 405632769 560306641 113681807 736322774 82541272 621769899 52583089 837002184 869249750 888623940 612767945 723419061 606283974 757986880 238001293 452691611 944497169 998663688 316741606 925933704 28165456 405380935 964374223 999080648 197554471 563771583 431101980 946727298 410780418 880089448 707259771 909891194 5684882 279358581 831587193 898055854 160332649 479144200 327320522 547394096 477324494 902569768 601956718 995810092 130581790 977614034 530221310 990053542 124099885 335079978 360060479 669606948 49586084 792809302 945992851 970559310 72223897 77005986 797636940 916819964 408326447 733139543 146270687 817091761 229958510 471475086 854244412 917703836 106312152 119026080 548957822 725031576 356054376 740859567 701864223 946444270 150032382 983694901 826890313 986612422 323853847 662504770 130063711 291509212 92523109 94197368 814689398 879537831 615327072 620907981 605346283 759164872 622113613 658643862 464166814 823640823 580589438 661111767 654645948 757385402 462403755 948407253 161576875 631001848 519276699 641726599 230454082 942188346 278399912 391350454 701034348 775549193 3109407 527932669 753534084 784968929 142981038 837505855 714637534 873725645 364115991 425836511 72746260 650538679 821952142 876564207 483560795 560920991 155233335 926256426 38491732 283102149 70492289 778083777 878434249 987167381 669622907 669888981 450204956 961977713 423409029 430090090 83370366 416161280 123028898 665982584 239700072 354022265 318988268 459604372 986339121 998296026 340118022 939144349 425372688 690696125 73140181 79085365 410334619 754788229 137594929 214293759 924586253 926021651 96385779 566123561 711548694 784288782 248341301 392586754 205637431 286481758 473785542 606292486 692253806 998505591 362128055 935513538 402236954 878192759 385313040 597615349 985045517 998135559 275070850 784233528 699134712 828648935 860094122 911201897 372218186 909055085 593727005 844988198 684869004 974873821 111330532 837171033 913018507 968806249 865369709 996653400 781263200 888899931 109446551 488786303 20762915 308901062 756812030 977060260 291519116 381280912 238151027 620393791 538380254 804319363 283666178 714158969 341365012 805661576 831800999 856551846 485900573 626494353 292856330 822759363 563728407 819864426 130700941 576884550 568218314 579740831 948876343 987158564 13834401 672619431 743062779 876095269 476927025 714654481 880988576 979449245 668539502 901022917 59130784 980938735 83529422 461283728 488655521 889880130 839047449 894221485 665895043 838509663 28029775 853840057 989823663 991797943 607191039 621899001 476141480 886100592 740170491 914352026 239494721 424336575 398888983 661085709 515842448 593973686 32503971 765698784 732056320 852352064 482112196 796161204 839495576 900492690 851946511 953047255 758888649 828394324 687085475 751395984 818929203 838069413 640349137 970065955 779139086 851177273 242942689 500454487 398188107 465712592 352391504 798719785 53917312 807499708 597232862 909542736 256351627 826611982 318177413 338781106 937640024 987258199 794078639 878224100 957714932 994711896 643966417 833747375 534061039 600141449 322531359 501804494 106962189 918446455 746561569 768314249 386727758 506990192 373836440 871468266 383161743 475334035 244457114 370141698 116661392 685323140 537312839 751162681 452138753 814593243 971536586 983174158 409893587 920443416 654118964 861568518 585552785 697684878 794303009 840691969 816181412 904038590 472937093 746524734 379640899 725475983 421021103 772789730 809784681 993722777 390678837 922710239 22319833 689642553 540007989 734510536 343314807 724608128 684593600 965499474 59885760 881680848 270806200 886975694 947975908 954345493 152214307 539437653 779457600 954294905 910139563 972762583 938045758 985929327 599356877 954069949 277360648 409839936 716531436 876863585 788271720 951984268 594255452 866565539 849840012 884971386 60099031 971870256 345282532 486863510 354043831 878704557 904658176 909855150 243909343 907069387 60150828 897732346 742788947 756673506 786043511 787568075 580272107 961439298 112956364 511524678 648432547 696352355 770893480 966984006 132659172 281526457 844567944 985773947 652484877 839729711 308046738 362935517 957204975 975206666 79197798 466892160 525167654 640142256 788361619 835835465 628937334 873366242 357933886 940300013 205921848 784001707 579536077 651284375 330693016 933653444 622865123 874133680 75805414 888931865 555585155 578485627 774931626 837906927 741123988 864728584 222638677 961878914 983140979 997420538 280272138 549079705 613352581 822764683 628657604 757457961 764755404 902922461 155326630 390476072 937541394 941500413 671063268 768773961 570447435 829946995 265713208 341935567 50738217 648838340 799935884 869364449 10938883 18352103 306582211 625316627 442005858 953370996 297407094 647842604 67892241 133283065 819501665 977488845 509514780 896316113 537787644 997925981 597534611 762474295 533458880 601507576 299715248 993097736 272458908 565484714 57980432 519698827 30485498 315401664 358330008 570009001 941673216 982755717 841326490 936675832 416134955 892855418 313135964 403435736 314764602 950302448 514176132 839254084 513171162 820144648 935289539 942312985 507172997 821205726 874485248 922216141 871652795 908117195 276234282 720319421 210204276 884176805 290665731 512605792 590750030 742781348 653932144 885026211 884336399 884850913 124154543 756850286 329371035 705269873 327403271 502721324 404110170 734588838 954120291 971179855 114953414 578816858 992242703 998023426 364978672 937790387 955826063 969444385 809178344 923727688 315648503 701894115 739655484 972024121 732280489 843981295 327010697 977594389 229224676 285873181 719196678 975886909 305829711 974483473 859091248 866513326 654647076 825556948 660442574 986396734 881932048 996839478 240564656 774269126 495824033 889922845 289580066 438116285 270251982 684407106 250516768 738938786 976950070 986188890 185194658 493746005 50915625 554113607 815846294 981878896 5217609 95849694 97033219 814699493 57618678 441304656 464858987 785530481 650238293 999978877 236743134 416741181 406066043 652967809 958111577 964286652 268903124 357105152 339075572 618552403 647847297 769237593 659041929 961669642 482813357 486373045 984787308 988313276 900151386 929911321 136634699 398661320 534752024 594103354 249661959 362550774 476988547 598750967 403935367 751266847 309964563 399519015 596087412 807773797 309658774 712542975 743594433 917719490 365194305 422984114 572360575 955745706 877018856 908685892 435466169 986135840 379686648 687492599 497189757 710933057 545429315 717773054 644371382 795339929 830479546 881156278 354120735 798733969 433758713 949725139 9809487 823702907 328315269 490753553 996111440 999256534 393417510 821696136 398535304 720617099 93421859 207844756 158692876 876361703 953141858 958075817 206370869 521475330 410330412 785724597 344144545 615458381 247969468 431341833 4919465 902357740 816065915 880962704 915240016 963515063 967554750 997401750 46601271 644125961 99746814 461945067 680245750 790069752 549158983 784274314 546184040 990174569 333059307 585818708 271755502 676292009 300620726 377348975 901766300 962232515 166277912 420171753 472321637 709538619 770618389 897792834 492408399 592807378 326172344 361441806 696624646 984082632 822549378 868059541 192854493 548906882 82351472 815129444 97884 430649612 287945126 953217303 421149167 750498575 91447229 288337189 520840508 717687402 850486846 899935903 394105081 580491374 910793631 971251504 626236516 695551931 134193516 790745351 30753377 47165374 243628203 396355389 93632944 854885246 64503161 254540962 613911187 966967766 26866722 291017602 380002486 482884776 172976575 298847434 912736312 928764385 854110951 868532591 769436639 800665413 954964248 991394305 970475100 971987347 484692197 560143212 124528601 636258554 130364499 627144184 686721329 851979993 327530675 400196014 473341682 680964987 26553307 439530122 766411332 873778985 200503186 329577514 348904322 646275622 210169110 566799455 685518356 809675811 404657540 894597276 535209952 592410322 913873018 943593200 980713800 995784566 664360047 890665398 568466406 822454616 189278346 570460213 895910367 903914900 212002764 465633605 440584743 811127646 143670063 637363197 124895717 370690664 18464003 685111162 236059201 284299062 59025777 272304315 967915735 989265585 162991504 423441574 975076989 984314790 969241448 997652278 703990558 816946459 541719593 857246986 382568250 749461872 653832112 930217614 601561505 632869245 685285238 736409883 195301968 461985798 716716622 763414964 910345117 975310636 698745027 825893123 90520416 397865124 900534980 985427407 787166453 891125212 626452587 968263825 638198467 676370757 286349667 957994771 273010964 311550694 307234253 639577619 725920015 759258285 135263771 193509264 244568112 602334921 383872322 687662983 333635436 389751274 609921718 733587186 875306324 984225573 370357430 822927005 231974993 543472417 455310643 567308776 914281399 926784197 496064155 967958194 801525260 991187567 733305634 803160145 736494572 922833779 642686457 657615151 375009984 606388047 267831840 633667362 439045334 655712240 522148464 669339479 419725650 794882519 501402178 735673222 974648459 976061337 144274925 564210457 757566803 803416502 518555629 952616697 842887800 882465540 803509969 883413896 398945107 793647822 40452721 509088381 167784057 736219467 946028491 971689447 790785084 816923611 681504945 943738019 208546631 887046982 313745586 906004052 567588474 795771070 585051739 987663442 678813175 720071261 309934285 829184311 43185125 242266735 357024080 359075914 518453214 981834918 186075947 702740508 670331317 726126083 809547465 972575040 608016071 956813339 443246982 849793276 950551387 953287891 403634699 699860453 826924516 944688849 110259905 469269971 389324411 859834606 494638637 528555154 580140071 852044735 126382253 272548267 879286838 973310130 496559640 556629748 631071414 846065325 41518488 304294842 337609526 787131276 951140109 995780982 867135454 874491102 681933186 861483062 858803865 997851774 254502714 738805264 53707014 111149953 624411757 852884533 146000100 240697430 237079535 994029344 965167919 976915083 639312713 685856104 62588323 288558566 90367365 851214664 191911397 747253177 998661847 999941304 207258586 597132678 709578330 717581477 427689081 603779839 673496118 860305230 576935406 955526394 408197425 495452495 263953122 479618143 485138711 725198313 632901044 723091206 249388518 464013550 220733405 291070133 822982983 863664827 945989862 951748645 166989152 675790893 819837353 839491123 219214784 823129939 658826008 853442462 484532807 572397476 742046011 966356709 686247333 969671478 779683322 816014533 84174776 957559894 581635644 596555082 115189809 260576379 235194601 925861570 862169264 990409828 269160582 773996893 804895696 816695088 480962360 617093067 402294584 757600684 63941972 963701442 931050377 993835258 249463646 789522866 858572670 930505383 557082970 801009327 648155802 975990253 60218217 800745931 697068351 739634721 615054400 810623215 825365519 943847530 740707458 791807154 724988357 813276691 706830593 798014777 383308416 890382328 833556451 994377285 747612706 757010182 75767077 292600117 313913160 401043668 950614016 951650662 47786348 195889420 780655281 881375143 937670929 961667514 951020801 985805619 123960341 554664159 92417116 264611593 74738624 341896758 798177567 818740924 738897708 908419339 621079767 971387415 35011997 155504718 370293 845334313 35053470 915123527 384311416 405548108 241717605 881016300 243843923 780296941 269996178 884600741 37850953 526193887 757034857 849579040 980066814 980562409 482729315 767300585 506221556 722642746 386575737 657612130 800391879 830256074 919344961 995028077 447885518 621694026 275235844 960995897 580607325 809089478 230038880 812733777 874304810 925086705 641062392 815120498 899209833 933066397 605857535 628661961 973593255 978468883 810968657 912360960 497269454 832849536 457805763 612451164 477082508 854300465 384107804 948382302 984533206 984780530 262493974 279534185 260137986 413024400 310215742 536170030 451818907 456597057 247362779 510736893 147456509 894677906 348286737 824674718 789072641 976311897 905259662 910791118 158914624 578224012 679276447 751498568 184913 844745378 759381147 934098688 803555563 878834155 246674337 654499982 355200467 530222126 807214573 940453563 702640304 822665792 685601466 855256008 295335714 456700690 100645126 371420300 502921875 884434736 104812693 309784315 262891727 926248777 253817982 483148693 582223949 932229426 424867296 784274411 725844074 731197043 608605822 786722603 450614650 519054573 331341600 610933093 947841116 984467077 364232161 951038148 623829557 771546478 408622771 590100366 816697371 933543269 33568778 62476910 382898072 836587630 836248994 977561325 122169127 604639491 560830705 957873656 41858731 835940053 652503807 661384703 610502381 768566497 20706730 476617187 507764525 553786048 792107474 851145510 710736232 940979949 471871555 589743004 610286719 927002463 94874008 175326788 806877550 927883920 727142753 897813198 25138854 795026817 879778881 982857435 251233662 682194759 421896129 878762810 594385462 796050678 48390456 825047101 631812578 776800806 851898799 889300401 298456358 801881353 326214722 334542566 114247630 266068124 193159464 900181943 11944418 747791658 880312109 918020065 761314061 847248534 279880232 862759452 905153191 954873188 188215846 402712086 653990396 855344403 788363627 866271738 597145212 840832048 491191743 556491857 748643719 914184991 472922931 880870108 402895570 910364318 149963491 567621324 80364050 643469585 767430662 964810884 808297320 877500480 209527175 703060822 948669853 975251214 446471760 992056937 588642675 720922200 879859813 962804807 933816984 976836683 854372333 991944536 311016266 444687236 171558205 537229125 653548657 923722194 526164467 723293373 150088599 385224722 974706563 990417644 352356178 393804998 328963511 516446239 260760665 612823499 644979954 822610183 574707864 606798287 273953922 458675960 44435249 484387964 562391226 927185914 164314061 307692810 616694587 691615703 34388752 812936108 475619349 478020044 964311149 991348363 34948561 213217835 65295701 84667279 612610064 753889224 463772501 499019158 932162118 976184029 252934688 458060446 228098457 580966119 478098362 740638757 26245843 178878541 139925015 992601231 844303486 891911942 4419786 827435442 455180466 644515602 580886652 847530747 194573383 983973840 819567032 937944074 863084233 927420131 929097542 981703036 793741450 804465590 263239358 374669969 930397901 944590762 744519479 807310917 26939263 707211699 21266780 851672975 540690547 683369353 380768252 841902623 415834672 646228165 425941816 732235530 395407699 576359117 994989955 995954099 345247802 984916547 384907717 931695968 820021334 980522842 600577243 637344387 687921947 842627705 461791040 765811296 202911850 367533608 212224635 757817442 660627956 852804471 621628796 805452207 439595128 792126377 632661869 702024067 561215818 983387246 122032238 590697996 815176224 915022074 260614792 415449477 146512759 390118067 820689316 922464249 128444563 834110562 105620156 981947076 303645898 384287960 629918380 920308640 339157493 818607115 573956083 863061887 930411267 972676125 363826270 936055739 345606378 902146546 478667257 788002221 152799265 702349895 517023375 967718539 491860309 820028732 307218933 373457427 107683355 646409698 967963805 968618050 984486302 993716109 946334990 973333989 976154417 982248941 218708664 613567404 695763793 768972131 791214188 810307036 264344332 749758070 113376885 977564734 674733142 751658963 962426177 978158367 503152652 575045146 460134234 823255879 65388760 702421974 748045739 953644395 21024271 620614433 565141485 987284994 409339172 751916991 808012850 938886413 233700337 481712268 864909236 960848122 943217806 989406780 450756963 738086511 449514098 750819676 487033244 509308770 168361804 949663720 935946450 954614052 847118608 986245751 725838827 797329759 211440579 960492468 258965176 558179915 492613720 595460024 151771811 441418919 138919190 375510629 221279508 929972202 399231605 447191511 757484421 966373911 745944200 784732567 789218500 907203315 384761064 802977071 976424179 989128152 617564295 643955128 123559854 833807945 90009857 841383035 230853447 840520495 992200083 993906184 676898289 756837160 505572084 743148659 237146330 895723668 387929983 699474295 115088356 726891786 552086614 750701050 168568775 268203099 429583843 638970587 653246447 871538906 758894589 809865692 324128596 531335202 407125426 457489186 350612979 786767401 795299456 816451874 928067510 985497512 505119494 595973746 985973328 994152783 773943354 878243297 249518449 991620674 604549870 609558230 894508391 980277773 109828846 462259382 903481828 987246089 117131871 931074497 915824106 967450473 152353173 609196264 69046819 145931203 575381645 624783278 691266586 778857224 468635806 737512354 38794129 638852948 33972216 536115848 973286129 991666488 850634663 875689901 651808397 854097861 696510614 888403304 463258252 788792035 462581098 565588770 378895437 609981089 360508788 511603729 242634874 635751396 622907831 972977927 157593306 531434203 645114332 871687975 907688024 927004588 893524075 943311755 307559328 871431194 693865845 716394875 795062044 849619862 840234391 963764041 429683201 953716328 977939340 991131254 128559802 874047588 318547994 689554209 847499197 913830356 483324451 628244478 751253183 789510789 594296358 871210059 116292375 719015050 183085736 184236216 594681819 926182705 599781655 874168205 200979769 911026922 797249170 803924428 680331695 736814856 515377150 860556605 562221475 629223607 882635251 931024461 816912832 898256273 359332402 942067013 639707576 727178004 19998041 513122189 792469169 849230379 901177560 971475083 876956535 982425024 56540994 261919942 150526053 412001331 677723227 927319601 700161972 824734377 14604323 307363540 82743411 353569474 462879936 980720205 943771572 991580121 805064566 817897741 485001321 913635688 202862074 954697627 382832437 901744567 693993279 895358828 387526443 925260309 14866813 205352980 672790458 967920291 419269303 917746336 345283974 851087729 191350762 258946022 118490893 274602900 494187380 711901074 162928109 938595820 531605537 732887321 658593357 758472285 590846457 800970867 770902114 788528311 477790605 641316961 389500331 415934659 79962389 525285791 492572508 594269445 221864503 806551763 253433462 526901075 419998370 501590741 975257483 998417225 660638539 732088178 436135489 738693991 297703624 507108040 403780868 447184137 579853951 616585652 756753432 989480977 111254063 436472958 824492180 893954357 763893457 967095821 101167566 522257803 643180663 742337723 960523168 979683559 862455950 987857815 252405489 447129541 931333851 971931193 680740941 931355608 877724579 918303561 472431247 946312806 658149217 931484957 158091170 511522861 114486984 668178400 909927773 932826757 799208326 933717610 491638788 812543626 67035473 533976516 156092867 934346566 4575960 449468371 53513580 193117879 396773669 943820250 2162929 325785288 680774674 845834847 768665231 908725684 867572987 913869143 897043159 990404011 402429641 628345991 529208838 641528393 652818117 694059986 303958865 791879604 144154433 313722163 46578694 974233124 770869473 796627888 284740037 417834354 435456231 948353031 712828044 869681576 824788773 849985863 32943012 342667457 942149736 997875998 113526865 261095311 622217567 683986455 701258502 836490863 254562484 455360313 480368109 703281200 145879142 809596413 379025926 506886272 137888119 594743459 937303145 998518604 135842807 766865732 279784976 395228267 437425131 898313660 516125881 540538027 895091974 937237289 830345651 874659249 168996716 621247933 948594482 996320996 56378191 267009383 654375290 895371254 137792600 576145207 167940783 281517140 509443253 584740560 702741013 900456766 572720423 929976027 622266324 937325154 518211787 929958244 550969463 667508860 720680217 933967856 138623772 837988250 73314106 363788461 709130136 987036450 195975673 348151569 956754811 972806585 114874966 711600943 879666850 964018151 423360651 560354082 75149366 764008802 481298586 535496033 565486569 959073674 515057795 850860603 834001002 872945258 437872927 818502432 230112790 290706479 160438331 366089721 218105931 724777997 770863209 900847736 215398134 450827708 995714930 999795984 468014906 820699524 124527557 715644077 541173538 789372502 106938737 210156951 308201575 377799464 712426520 921862405 241794595 971738375 526308100 657654388 126718120 487274228 763269912 815550419 151501646 209316301 520269801 558503566 409218863 755002517 353144230 522968983 667891073 697298720 35509496 736097587 49183806 817692339 266413303 481156395 993830160 996777233 196531347 968864565 355796507 495405604 434675325 496810294 837908682 938290453 496137780 922676918 435752224 854677067 202601736 722280613 918119449 971842786 408243969 685135408 750368502 798143045 790132168 956980850 587382696 819210972 388983491 506997881 94289244 852812983 948405104 983144085 418299137 693168530 812880237 824466795 32147415 708334575 386112136 766522170 939386071 947564072 188159377 704518464 331391997 850621487 695194962 808820206 910875439 996458889 813542497 893171609 86991407 698493857 31462465 422681216 641444566 946723918 666251137 713562174 811105501 854186423 507893716 968785421 970792029 989282560 9908674 282218479 822787405 936600054 530318077 785489989 798235196 992066184 761250870 897044007 436079896 786815930 532201582 715035856 662078088 819872427 874793890 878254907 218931964 438862364 432730824 687521921 662805148 905571762 378080291 486053322 476327976 808550069 21951041 901804971 925134633 996863818 335744531 491984668 671804397 871110871 648135420 667751881 737349565 828922684 772624124 847930792 196280934 608601585 634981704 961394344 9782163 736067759 275729149 392864805 624415427 681446273 596496 593960424 94525651 171537621 410786461 509652036 668245361 950768806 168455612 560285189 563113400 999227062 710187939 780003196 689176254 948311314 622052474 640191155 594942479 730454359 300853980 328252448 896044039 949617236 229894471 655029670 170313351 667184322 445507517 805671240 919004278 970883137 10149984 334260883 60970193 734483811 819162957 832776645 24338543 396219311 173729940 225252555 526662763 621745478 237148906 982983960 928382281 959358397 355606857 711828444 930854155 988926780 429683784 505289455 661734960 690698969 211969259 789275971 303719870 536985045 101483786 801590346 808172212 914288710 856930442 962898330 41330566 832064670 632557609 700603178 110969945 902156602 766046467 827610817 847320928 904681739 931150528 957213161 229393107 967740783 53214902 786377342 565933781 839472138 373389280 790308732 146932730 682740821 209359517 473895927 161220294 788712036 775081529 846683529 745433219 784447381 860224795 864546432 512243442 823280003 267645616 847151584 78197939 633773997 324537306 883836208 539865858 602014807 17269225 948946266 777321294 970793157 796514248 974843376 648622190 820085635 252797958 348929744 55883482 636788628 649018356 968866829 690982891 960702471 251429852 375677152 635801133 737429390 346154073 569121543 781957349 943012277 522965272 879807131 301041766 454597414 280288996 797426251 252831570 795025906 750477595 837699271 742456872 850329445 470631557 522642542 349763191 428915984 700267780 997800994 133130923 782757247 416727641 519519263 74160290 316988563 198115158 213748205 61619742 839666258 880734901 917726112 165098026 791120553 471924063 820105331 808608252 982519950 404665955 506564385 42164048 621142170 601032502 889808176 610103731 721185024 229203775 630840509 835985048 895817594 534216021 741373989 529782153 778597254 925158713 958541940 212657879 656802826 509561204 865700152 952033767 987990429 153776807 386299423 951350184 982126831 440521182 735959959 369828743 926959731 683454156 927853127 152594494 484687566 273519656 463116436 555732005 988746313 416235578 911599564 990827289 993116185 11864022 739963777 203635201 510295994 28937535 263547519 828572151 952733655 793007941 887140758 546223592 907752428 236765620 672278112 593593292 601453789 346488670 449092070 413169700 978936080 607690675 804357990 444782635 950553334 517091588 662224084 879365161 919890148 993280356 997375607 304333839 663477415 992893839 997146025 809200171 859649439 253829100 834848926 299938701 781706592 430788925 714298594 112707814 956158400 229282000 887216655 347296281 482267188 176130976 807182813 473478443 794284003 831159205 921825060 789765270 964357444 965729832 973677254 688121532 817321571 126759872 339699260 89791395 809520992 576650661 582123045 611534178 835749888 237227819 360011190 592600344 719573878 547099204 636479568 499908316 857743366 912738238 963216356 741045384 993531574 402316745 526943131 81423001 637524526 967975085 972363549 544955257 633297866 78783720 315394108 485161103 965754863 129608823 249611198 401228672 873151424 374818675 749688257 698367273 771741783 204318739 939197743 394406582 557483135 461322776 955566882 316367731 962792810 672316589 742633594 956024898 964510982 427102838 706710217 343691338 417522714 922132167 935324222 688539600 769876978 750098066 858987304 590867975 783553656 867318477 994248008 660446332 885362016 510306006 991191964 953021162 980612770 82514595 511467968 553175412 814270034 766004294 906066047 978555109 997526354 730698601 916767420 398176736 920723564 123622158 927364280 185967581 727807252 902701960 977871591 260824647 546966867 692752763 747980004 691943498 997070707 732936758 932756528 691335563 968682795 592389362 791924143 89293852 420147468 522784123 906416650 224297702 942628038 413297375 652531983 509963749 866825580 823487211 893637653 214388123 998700949 912680054 981179033 187539625 503441856 919361314 953457338 771447723 966293520 452578735 934234281 297470522 588555464 101534348 446070487 29662769 550624454 117363347 585616012 237385347 842930107 263793313 301733992 881435999 931522933 56870692 740613286 394895659 409090733 619708477 622578999 211273571 613793975 923873791 998841042 482738670 491129254 152412120 845372889 15692091 691563879 261860827 808369439 84103551 380952628 243391162 418703856 364329360 395757289 871607073 996227725 48554603 54834645 781222083 894665330 312316407 759326920 248175177 359863809 32353470 86555390 346009633 882970057 330421823 943115160 344188683 734137174 678524781 987574111 900296648 916180858 519921345 956973476 888745341 937779182 960262981 987474217 773227118 993698546 690931471 728013672 207608730 923942461 781620015 946438265 74354372 496170695 740091758 967536665 858187815 986370946 400202828 762794231 531840335 745511311 346035193 749347577 840018167 913795970 782264447 812139093 778482158 983895419 360780544 395605212 694758053 952067966 432283690 466139878 189847558 384555599 751650128 994489295 313051114 409275732 492400595 848981644 883575989 978218043 706379698 736264394 436824444 510487845 32965129 201377432 397883370 830377390 180621141 591905763 20939 172928497 671027947 773950301 638143518 891385596 140086242 527507353 180536676 214503509 712679142 902599202 615070859 795310878 672214115 913415662 971960227 986626120 605687889 855679281 412632135 808234217 127863411 685105467 48742831 172231258 739742976 919968063 806728865 859623093 125833482 851132664 823198819 834242235 327863909 470619262 974559131 996634711 659553214 920889925 947007392 975206858 177581733 771120520 182516633 753242919 280581043 404316356 214668337 718678069 63861079 990000391 505689364 623806338 301493076 383840287 323612708 739734787 184095659 299141214 633455106 991988871 749040579 782043339 130721729 759207805 4255702 419615570 914779762 967020690 151618885 520722464 507435701 721953471 620950999 686187857 644080710 811846239 241164806 517445722 536664652 665648644 281414410 859361321 597487308 967438740 44068381 486444174 161854182 428397625 932251692 994817024 523751327 612201577 542236316 817512316 521099971 933369833 463709184 783920518 950777731 984144070 311966868 726102363 390867701 897501560 279145076 640087045 189727715 887666153 625889083 831952014 802404655 995733685 305144549 519746999 357188165 373884032 531521720 821454629 956640779 983445324 878771616 924442193 308891236 423555523 50104372 564718760 735722590 956206704 760995874 852174130 274171685 649095681 649883062 922717893 95911356 699331915 873569280 881117792 882822822 885682848 95773911 314572091 162036414 167382101 529794133 968998252 226664294 495520573 480613653 897770943 319480258 463642411 667676793 727942216 673314679 770182798 204999302 339204902 951806599 986351323 799276294 976475218 852470092 946241359 671399819 733170836 215066006 967381596 683916396 921629984 915504992 966688761 108105452 146261743 483637880 642880084 244776378 965794020 225388382 236867573 952748549 980235020 867107254 932767326 56386569 762712275 996293758 996997801 184989801 709433556 994893583 997360724 252984059 709433878 946962205 960683575 778387521 830947464 362954787 806543439 254501278 924247287 528817256 905174245 990469997 995025011 851801223 949873026 615460418 992080614 707138074 814402563 645948650 842380468 80092677 768090999 4150997 17397607 764070033 982532977 642890251 723732160 439287460 812996505 482856642 744093837 880880633 922625484 921481906 991453209 346006252 749418682 839050122 888528424 532012616 739004943 106613624 113059648 126381457 655668207 888625679 967413891 928672502 973839165 799263322 896071000 900786410 970102477 794820493 823651194 339492569 874027251 910955428 953767835 268710733 785166518 477558022 887545081 269011016 764295177 16433493 654780919 664729631 881236929 474020233 746843469 720267793 945994897 291196460 763370004 201458256 276981523 121264005 638362061 985835305 986012119 615423387 777939780 790094056 919319209 281849321 929206840 233849727 715763872 923663602 949212550 379165771 433059752 263919167 339574466 998165052 998846313 884084339 991294369 980516839 988745438 142533830 943919606 465374817 762940955 156646286 955685076 122352550 802855087 582424872 611650039 983658337 990394989 531682708 654346897 366370271 971190706 709111679 727245245 645640274 842842234 464830801 751482038 431316248 806318050 191630023 819564297 86235413 573934606 54395383 940316818 128657148 385864247 529709125 637688163 305138644 450165389 980199257 997022518 657564100 850134612 246255600 474561775 126509938 503447088 758922460 811284449 432374929 964145462 453154256 671754579 81529682 379005653 660634807 797872756 157802716 451673593 986604717 986743732 165219557 349915396 143095847 696470355 936669450 963142697 948803206 965693100 504706235 713033323 211085242 864322735 304968863 668997199 437340753 705985992 350977909 492249065 670064839 698718863 256066081 767489623 618631423 850872386 42323341 367549051 651958446 733436768 623009792 647669964 804763771 987823405 163549357 896927582 326294013 480195570 711899807 912588313 742917755 792722374 673056590 759475827 906600661 955849175 159889495 303779477 847718118 991723707 622003419 974209376 158431419 729435278 458347590 680773739 103467560 934542362 931068677 947246063 781177020 878442411 896626555 986536040 640624628 682610322 890608204 978400417 976157255 992597163 250001215 780026939 527578120 791638258 196275834 751607784 910832068 971134233 93996401 536223715 497665585 743204792 12163758 276403067 360778791 509907104 346206398 807340724 38471773 924332207 178399885 709892856 407348127 849529742 730733111 881364834 774658157 915958058 674955034 770912740 54278519 526986667 425406479 747725189 565504152 886433886 830536672 963885419 285830589 763954215 752766354 940916280 725923721 889467340 660470766 940485733 705324157 886804009 563717473 651548087 148698142 204164244 109044533 841556138 403592235 463448939 712627272 989710735 419163881 859204926 681139498 747120462 814341522 850809824 934269105 974312324 827065744 834773546 17369822 251643546 565367886 905925686 454998211 980317831 493385131 960413673 129863270 575740590 780996200 933523875 227146529 852454802 271136004 858696851 803301718 861067708 98012840 827182845 804977736 935599439 137357790 383672461 709227879 745481544 184465846 696662073 46813557 685183196 833743254 958523712 715085172 973777974 508887129 513210305 392126687 805366687 617594031 927196941 678692394 783080640 874954795 909645644 255041433 285961431 287356544 911206543 79730291 746432110 341411744 869538805 746492722 984356930 656314614 727870242 452927957 479451141 355670671 858172523 926935159 962018515 16014253 523257217 180067973 843637734 519197567 897226955 36320717 955754514 911595892 942795228 345173125 865849951 602880674 906322749 11991023 98213509 498507505 791937520 461252534 667726962 953024286 961525720 622990441 918181239 150044771 690261065 703227600 738275033 366006810 443717061 698057928 845185209 201752058 900172652 448481424 676501399 120317731 576952416 390828282 923239056 304967950 658331898 904852740 913236498 76682923 179317014 929219919 990629688 37759248 301206774 53504662 237907758 404794904 899803672 281272722 518143235 715481389 966779251 865082844 916378065 754714504 968993260 97503960 589163278 715616459 982863913 726735835 842216696 749114672 851562654 986073858 999343445 312232912 493795624 329202918 450499810 388863183 490927527 345778385 784177857 893095213 965273464 875670665 895215012 672550598 864855719 837687301 970873184 276880769 683865832 93030723 354615054 65550861 764459808 970191816 999240286 907935061 955748654 759055644 992726728 473556299 894979050 675177408 839916223 571677912 828258890 134022909 337479186 870214639 965952348 894863391 964641437 208089592 209652382 125089718 512031827 566246578 633595781 1234256 504810457 557829897 955129860 468378518 868347706 950015744 959013251 402427839 768551204 112707300 227103075 963772984 996045936 185404200 571304657 949614384 986751539 226897189 482837507 889737228 956311001 519001520 922830623 212643971 878287466 405611151 648795043 183614119 259641605 276465548 490889298 837318771 977956441 760899402 771155983 72166236 254655677 393633116 841724932 51751715 254449625 819980712 947363968 487141836 951002862 456985288 884451533 775795997 976502117 447901992 986284620 932649552 977726480 874674896 952028926 51000453 986604158 495529743 757586921 712203704 817244935 696360771 753029733 592802766 849540568 542499249 898100440 668216408 798103108 726487373 748973588 483681565 532165493 66345311 752420936 401775771 469893318 436087117 793237273 785540827 996037198 86361220 233455050 210873931 972366926 797917247 847429908 512320677 943077032 86112117 514031684 972000005 989971961 126374912 270260820 18259385 68143914 821610516 920646620 509758589 824247690 240069391 620562756 328014207 638219074 509161997 549577731 22495615 974168936 550462922 643025571 524589697 601492695 241282750 669477509 250891940 585880005 211545932 464207392 140424260 211296552 952325889 968478491 690570243 760589626 537663421 838578821 250583985 399963791 251386245 275406517 143602154 635325839 78758063 276643521 527827956 830733446 491802462 706532540 643288922 934930462 358996351 629692084 771735715 894215150 102003568 918562861 95440712 190197723 546859318 726922529 622688764 722311126 29507560 615450973 193246663 581587740 624323019 937655558 672767278 986697296 504007516 629009344 624418793 677066998 562361704 980824514 464268892 713601305 364028445 385007996 758763894 977400154 510154689 676172099 305405874 888001657 335179852 669727540 552749644 828375914 369772781 582904300 667868628 980471763 788846203 897276972 897328638 972498473 661325983 855061786 752988523 874295478 757504365 883701307 530168516 951330467 137873689 170727369 280129100 949585151 1072722 38533274 446710168 693464324 353267320 684769595 298030640 546991849 749006100 996132691 119845840 661809372 57675545 740803742 384144972 413450374 97446391 377425318 217207658 652177221 570851736 857793776 369890831 634303965 91873126 170815252 902775462 950630226 540852596 600446621 458898201 610933750 475578302 714553611 68194073 817831818 70128224 280543117 408998912 465415306 20671559 919773652 729449441 893037865 839704950 958344597 356654699 793885859 761135050 934634994 609309921 665674528 585400058 940661101 541132608 806107711 891700246 960422700 861253572 879107028 920883892 957154970 851293891 933612990 997797187 999636485 656560395 821458852 862314559 879639578 310522210 720831019 325943087 577011598 850599132 876454693 300016314 736856251 621138982 944315752 435974597 764856183 570381201 754140307 792708240 994084667 922449701 935336555 826106757 879980512 808698465 831217999 723630321 947998144 200147621 796430549 81510788 117969995 618647742 689356666 440188872 750921439 354178843 849337631 766261381 932781200 914997033 974714854 175378732 847153015 630553001 832928578 512950771 606028026 654514302 771068996 759753480 953340828 490272511 960931884 788050064 892732193 828646403 989586401 156456064 547379542 890646489 954213364 18555306 830520038 382302436 417865537 843802528 953838105 793494687 936450459 777178585 784422479 412084920 510327626 663582544 837249980 461403524 575511677 860055555 929377163 892442313 932292973 621843021 710988721 455264700 504265820 813072350 893483164 38281158 710188416 959167429 997654060 606953999 741158272 188281449 785242543 924952460 943743904 971282067 983718779 11655506 531649142 102287110 893728947 664812585 877799043 696741553 731296293 187568104 689139036 290660621 937133148 886067527 915771282 320963752 706090758 238809109 353267597 855970674 962601370 821118686 972659105 621584631 912693602 258029083 409841967 804654764 880709588 949817601 980293640 776560681 817513450 414852586 964179361 471384021 992712380 300018210 461065265 835212799 957788442 378096589 419409369 620228273 897819589 742192508 815491792 75093525 940245514 557279113 895316369 550819340 745069385 411767834 851496406 859736312 922584866 273341552 763943591 24004702 951799732 247309680 735602188 184346525 847377471 188310785 764777035 449590706 748559883 659238224 880550421 728733519 971692394 327493541 692801525 479253301 830625873 326673145 357405120 899564061 936248111 632629327 946427902 103632240 114652885 786707425 962295034 64657404 171836182 18826587 690515378 239511356 774995576 846388383 942307144 56963913 651484278 264097205 926741185 932191432 989484118 452565639 884408776 683763291 724823757 131321444 586930908 213481618 440761025 478937451 640984915 5825069 329667012 967970177 980316071 549135785 672614706 919284556 947947831 133661414 543989872 797132794 957386913 665294120 821273029 570975756 633543397 408609640 875768519 163042349 483156881 640154331 885709767 603150312 862317742 582646214 925789127 879070314 884280474 581891638 976415384 137507596 492384775 432352056 563846988 458270633 985620000 919825377 998936136 29501830 716162737 188361395 381895478 213867209 968283628 996009208 999478225 986414777 988621500 253383277 308878415 50435737 264449553 732509544 751620089 922261621 990923731 379605310 768663674 666416573 719351754 400668700 432622363 656859562 964654683 461494937 865647986 809047101 885434317 700887857 889497392 109460519 440410952 252805423 467084417 850399636 989259923 170881093 508346768 208731407 608423848 981488903 985427520 861144626 877807770 974673524 990372850 402565443 986650290 243198979 468090531 1434045 554191433 997488040 997728376 492232795 496490828 964288098 978979566 137667085 145235895 35240894 664773291 62366584 71066952 967587405 980954389 497372011 858658843 609305897 907935400 599732764 665002533 233316425 372363209 762510673 875188565 131189569 782577567 91874802 934565002 140909246 867526336 109127892 230584244 790108635 942789674 387987095 576955792 547581316 904140482 485269366 542245425 328256516 743769987 995797021 998387903 707287087 852967142 16419558 850278263 441795401 773909275 878011253 900184682 915904979 950690120 191989692 332120575 591640597 968827284 548353928 655691754 281941734 522726829 997219753 997390722 53182819 910056701 81091013 439777178 609395541 801833386 460961063 763858180 427619441 952318482 880974548 915664800 526895314 863452019 319031666 735283686 753543943 931589954 570630809 906788617 306234639 370269294 756011765 781496553 480627877 721960722 73999675 249130609 809398914 864977958 622095249 979768473 4872468 809810631 360433014 816497415 359476497 977779697 132674089 950678530 64154261 306455982 963994304 966571507 349771234 537521554 170333847 531094884 214995619 231756291 681270809 993624824 457910146 893349144 151489080 367942411 769778090 827214014 842283951 936942412 393039039 874511642 802909666 853649253 42425702 339724788 316317763 448955503 869475777 993007665 361892892 940916678 98101424 98566705 29835272 380279030 878234399 932114097 248007819 568670521 161638357 401190741 771116538 771166408 493100628 869305280 58836418 735726666 983912285 989718533 339053133 380985986 334578121 965439488 587624184 869160450 828848165 881117863 163032637 431600092 802704966 975722606 520529281 540663673 336021336 880970396 582237328 622907322 240183106 463881723 311805145 996032877 468480890 878469575 41398719 154917355 602896096 744808934 710149822 891358472 273815474 580403004 325742698 523860688 539591056 998921284 838495488 951789980 495665943 635573504 48785067 170892470 593202547 633987601 920523498 986074692 380756016 428500440 989489239 996859196 636158119 882707053 251549197 406477870 745495153 878654024 821360471 847070581 384783297 704771432 226431550 341537299 226517665 349093493 307036006 482889047 944323668 956488087 253338586 902195118 437357968 531269614 505097682 854714311 135259242 510503407 704128144 735622594 749941767 826817676 88825804 594691977 351356981 703850170 592376482 974042636 4318236 429964844 742138796 837270734 837003209 868776938 746018249 938879308 97430202 325362393 455408472 739351131 476896181 880227691 814930196 853542153 772967580 910310357 60456176 228197503 633809174 904446323 534476956 628786678 989779619 996535114 562468464 816700199 929943873 994283025 378555691 413470505 786069838 934922230 195250567 490379444 536624059 950297436 445064827 813786667 662626882 813258400 381020139 431538548 833617867 868769389 63899811 224036031 126170845 173761130 828232451 851432634 746163748 978401867 428411255 868328199 150093963 272850521 550119492 968197534 638188501 845820048 752109464 936456584 288452119 757768073 856187010 951456584 38303863 387582052 213997888 406051384 793267441 954512897 73422092 453183445 630367585 688230464 224935686 286555718 670381929 681452123 49051 811330470 895098570 978577036 510094437 911509035 297221625 916182064 770047621 917386905 603929998 869888214 191840780 823337466 434107388 782964772 970772762 972565388 392689139 574260583 890952338 980906447 342517166 399894599 763212018 881818195 895172175 899386231 677647931 796454623 512561341 820138421 273587402 556283509 465075614 910783730 836421606 844214676 623216816 740311306 620548922 680079065 634042233 815445620 108617801 296083741 15231939 629129145 926134096 969658615 901468307 974352663 93538928 744605324 956704103 972448996 751820789 823796956 960467050 969599769 986755628 992843299 369839028 939150714 530585731 741038571 835997836 917396099 592246051 777516386 127055621 586512023 545608343 880817794 55598572 166861529 449533988 721852113 1815380 523468280 734805606 870482527 320075418 975080475 313543340 632188368 898921899 969187882 577269478 634015683 339954192 570499920 258175452 603290159 885123703 992748373 18213033 433481656 39610124 518318634 63693792 688820451 214941625 746202751 43572642 78634547 204709293 471001724 704245529 894747623 766615147 798648067 551039816 977918874 663436453 729256610 300858853 351237538 20637360 996381139 817193825 981919955 7459241 143580277 778078939 827078458 177817738 570727271 901466684 904757495 655449999 902479410 488645198 507872628 716455557 751703176 717596598 722243421 7564052 870825216 387457315 410800708 581610066 915381701 714233843 757729059 904967226 940481549 497707434 572139919 626634880 885574319 178462757 490499024 623772921 732614592 523067434 862127302 324315289 455943911 961520488 968876436 669307405 917788395 157522765 842973279 853302607 981512146 579363951 971242770 809235185 969947329 954317164 959468741 186217127 962092078 83459716 226454314 714443771 842733436 637310854 940524920 361368689 440413488 196386847 984560857 7254511 727142710 354666273 572174976 888960275 929708977 707941743 798102165 502754557 922275239 932706715 980156618 884675690 902376637 136317094 735498306 817462906 961607562 759861680 932295776 587653474 917301044 591367900 667813145 220856843 301267899 703272325 832210141 985175902 986194810 614791481 999565660 346004192 838755576 641362449 936286511 252741781 281658808 251007853 767592024 681520260 757584735 536582503 822650528 12887366 971937395 995705042 998772415 832537578 841507301 893797852 975858389 514596857 611436064 841577604 881061228 672666937 967156417 852656775 902503431 713779091 752205113 558784083 815765157 152496652 484465210 553080500 853509222 677186375 732503668 22537026 660640140 723824723 763477442 720359599 729655876 928536943 931943605 203632230 877317597 466353665 705358676 326044525 945685583 203047533 737468968 604073033 794045987 627350086 969846354 537834591 662345903 694104849 695357931 46766055 283453882 119117278 532281050 142909039 611809465 194967146 953224668 314403325 886152463 421859805 531940481 548931055 861348375 611731839 956569941 591952900 947641005 774637724 846997214 328950760 819438378 909248348 962396287 509048309 734376828 149836953 978657992 633359906 974948886 162897502 281735323 415064391 566886196 164866626 998968996 410002921 879430705 865918819 957252630 960634992 990808818 142619212 740734576 975699684 993698759 485313721 777745900 765488007 940654301 138208685 406845435 484653127 955250391 581475234 705146440 280379449 616379888 801455820 889167019 321899875 884620093 427806562 718204170 524643855 706531097 443645998 934817978 408268357 434258598 495713511 634707389 509105918 888699543 289141315 405004209 824243193 998985064 606092459 723705887 578379342 926460251 916037507 929867514 695399093 853349099 263773885 309307344 189708121 329931233 817244664 847695072 450689960 789652396 650384867 990247039 421300187 608141457 824502509 984626896 916655922 982519896 246375364 866257438 856826798 923679754 303883450 491260840 249371275 471323665 594130009 604427679 591614893 664269943 325264037 404198993 265567681 626456877 639994425 753353484 530229160 908197185 75294214 612729881 752219719 906273188 929077933 970434096 211824504 251326099 258495787 770749463 1665096 546946347 389537874 450277885 278259651 382742636 172010160 778393973 8044494 56252723 139594722 990191760 338613930 618200996 74330302 655769493 486260945 607083961 577107378 652565903 974670747 990618892 645543496 834819285 391673071 524077250 414368076 563045203 452897059 796692714 172795653 400784082 18089275 300597835 140545305 657949839 546826651 982680381 167450159 491725233 845132413 941056638 186024822 772451383 13665715 481559442 237923094 658133803 399013078 670107309 39012992 95481553 713934484 877265356 737016924 870854369 507489875 989308404 732524947 787865201 876278408 881140345 172705825 475474262 444619429 504826068 552867394 923228645 318079711 550974936 459563680 951280959 37649999 241683510 759573471 983421049 518723676 532549355 4868463 373316290 368493965 678999471 692761994 826346186 194331118 869007757 130699083 663901249 939596356 966660901 603019753 726387885 336588177 394855739 16073024 987045341 9996108 64910040 223595077 888321062 209677001 395380496 962652088 999875732 887454808 931428757 214777192 702189855 475077724 574860780 496548054 958420569 814656903 877824254 296587891 874238548 45704949 160810056 242312454 270434333 542049483 840172125 16299342 906783092 929760099 989040982 810719703 869384222 268334598 374620559 605113243 790900194 642926353 945605986 405672456 842381802 542109806 600289579 37884400 654390602 175659935 984907974 110612288 657629039 335165503 743400293 745015019 927542333 717923541 982614627 961914792 963379628 781394890 904089674 695017762 838388373 401489379 976960837 545371339 998748557 139799566 352105132 525123877 688014031 114150932 237488159 218193324 971531367 268973851 796167689 815242446 840331530 413081588 507503929 539233007 634591150 397223620 864471323 913671648 982228898 500235854 729418788 284547831 758335949 662891742 676925178 577241109 690967874 77814278 138206179 452539293 791835579 62490792 341919867 904733100 982328279 472194721 919088463 613211265 710276475 867188462 906145157 795889099 852810636 59276089 738431764 92413372 315736449 998563725 999499729 300281999 347706639 833856581 840862865 200871150 547966800 339666277 847404373 647927064 949743671 375535449 425545250 692079313 986642160 752075485 924927488 892133270 956309146 462859809 881532068 251496332 985016827 788783907 896776412 441382705 832663797 866540488 890094836 110739612 962951042 327407467 631324396 119012607 786378445 714665636 798308058 97575645 286900305 216757226 887521575 586749050 650916596 471541675 964981153 417102286 482166398 446861655 940680460 325903083 880667818 492166304 533599890 630029731 853373138 854570280 906740140 831774156 955774279 635727086 939737356 34898076 643220633 901472245 960636417 145557758 315641951 920213421 941355375 400106886 714401480 413606131 848299088 388847267 522724157 248552605 630111592 570047890 805559118 735518868 795911326 931066650 944851114 975074025 996657528 626894982 794318659 710470480 918241479 820947191 903131900 746041549 967671822 81313834 479692010 332809987 405281999 291724729 995061757 214330042 623599907 4288221 972106419 240896765 967116713 861713952 941300046 491455454 788109304 303084674 478250308 849731283 989831855 853231304 991632943 442410912 616384790 901914381 944807330 538870287 815153905 672866908 731525304 525107403 800528498 365458921 864017105 32176471 215205286 745605774 746168018 160114001 622629123 435890651 706184533 382324964 565718019 375808304 485377927 389603531 957180738 787673908 980760067 472578379 648060364 166437917 782850732 830781317 937884960 53032549 547200963 579579167 626093697 752835443 946138907 928613071 984514985 402758394 461457821 374382043 890478600 374787159 622278063 183142246 734818623 17372109 775049273 630047061 691720672 633239305 792708803 530455093 995771824 887307338 925468460 791827110 922021824 775545964 943826614 984154520 989116480 120099760 861316747 326953146 927170966 859918455 983555015 399881483 713167544 432875191 686590505 964367173 995565130 739436900 973244241 296533145 889120660 998985840 999302641 428819662 623022992 836456210 972038213 400558932 617069144 560554842 876544674 566464175 802206634 175444206 356614392 358436135 892303604 498001295 878749495 635921700 931070681 638965839 897080895 900616206 978765484 706680737 726215130 338751880 360892419 522445681 620173991 491350735 850020203 952281278 973424238 701810922 941877295 278708729 989137061 238242872 745090188 250610489 296782339 840529035 964094642 6851379 404822334 160888481 185656917 831038219 968798628 452254586 832217984 98255782 939005765 728019202 792562905 774833485 974698806 893080024 974756389 908358859 970434523 391660700 586351030 40444238 207296451 978822207 985840813 905320022 989235481 391975535 501604329 568607632 769996189 869336537 930007469 836658332 953456027 859028843 977495005 952737964 984183658 401921156 406860131 677149226 814004349 899959511 992772890 161470566 823186892 116418870 630873244 72290165 592679001 392767004 463310555 772022535 785963581 783408483 810426903 385230499 501292656 959151296 981047397 566552219 800360188 930419880 962149749 209976740 523411408 63458527 529157161 691591692 778641220 255266139 426923945 956211789 987845673 582853578 794747925 753118531 825339248 934252529 990781649 1178387 631997237 577862188 757963333 242157671 773739196 313116153 631742751 525258139 802954875 955776709 971333635 240632983 709920656 151875376 334274037 559789181 794085585 554251721 663973578 421994917 601752177 48636410 925731363 458866801 476114819 900535102 905432645 150801067 999869344 391202068 724857635 222322909 556878999 908431635 950982008 668111409 978388254 355678463 549750520 197322484 968258169 145265793 891994201 636876811 887309543 628575610 796397772 149751874 465550102 878242901 960314811 986298470 993167156 800761242 924314630 988173636 995927915 130200063 310232233 260109835 700757793 16339059 592221510 771202699 779804637 119927455 504778534 858177121 914216067 362024855 895537228 727319447 996482741 161488067 226198858 881724376 992084317 642099445 830508792 380600476 460088791 932120683 989616032 291538344 450969911 986716732 998180505 405628910 880322119 13919591 934801696 33530352 983079903 206231862 719096787 589225198 698341848 488585128 527707954 289970949 903035800 294983083 718032242 370100177 558534489 738373866 968183662 442451276 779488937 853001237 970009158 945538697 998073851 612961841 662867123 798267419 914703788 626910104 644152185 377373009 819933494 868689310 903259142 858222641 912904281 401801965 803572773 193719225 696298233 656415675 666735904 214651762 482940669 281459596 404999543 780733697 866347748 365600231 576821715 130367585 187793941 248545256 481367835 955823125 972085861 979765253 981361240 779987932 837756947 976435977 999704800 158838864 625641303 77502726 153415317 397425163 881837547 406497214 507686095 154534630 428130425 190665104 729306828 636879144 684333084 479741994 667550573 760607803 792590115 497520216 635989237 236867375 614480720 485789394 850132134 19232719 97450180 658405363 953294925 331333614 701884667 996806962 999163624 130639954 345889006 296501599 452319977 461714150 643050777 918201961 944619483 49374434 655529895 747405229 879723666 439369200 547757029 81372204 573662293 689969170 866448643 632653691 636064862 861347162 994622681 314741984 894066126 357969994 468599092 665742628 734940334 277919029 907905767 22316222 172140525 994402464 994734077 121336891 197051498 559398145 673268428 706095755 824462441 482582950 585034106 165237891 216887252 245884547 325104821 130759878 808276495 500561198 681875415 737603305 859497159 816811708 865619812 700309680 996680144 387929239 941861768 301913851 478592426 125351503 898783761 105771637 724431274 686436298 779913677 693809325 890384030 733973070 931085210 713225218 828051773 45978374 295430945 941739017 990453647 873702050 898844312 798322546 928705851 340313272 953257932 939588542 939707326 133314838 355529659 349018202 990355581 383289310 460415485 632827263 941920327 52427592 220651952 191787820 473500317 704814242 934513049 400380573 902157192 843700798 909498319 127860853 934956234 406583340 543747265 56678211 947379457 338853633 694695127 588562704 683010865 132275274 682833569 91550404 248691020 91688685 617639895 87921687 134255193 791952636 995007566 310553141 330319452 271505296 860641065 773136203 807035853 584703151 784901691 808893642 896291408 404879416 406725909 953285444 966101073 571432113 838633343 144972173 762000930 636005215 737348674 606453088 898212014 198553783 786924866 616318232 880728727 178580367 429946613 509488128 589643429 749886184 932489410 753010828 995889915 90958807 642929615 99718987 127623792 753856839 760774298 336890486 900635377 464998987 498778860 455878849 674658575 789094301 879349104 832407038 870549514 962363581 991320840 997473978 998523194 223299853 790219125 261185036 970050850 825640965 961392243 99664008 161245207 61010558 846655786 624805822 915595467 434034013 539004195 531230767 623625331 616337333 669126976 750835281 846687242 841089803 957684095 717716129 861985681 203510642 883024072 176856815 737404481 880525519 958843544 328149783 450135537 165921457 499390803 418281404 729696822 829755115 935484014 575182582 930448386 540603989 582630475 209344220 821638216 348811983 356871976 808230965 975216448 375767149 996237605 964332152 968751004 237419263 256798447 345046604 677069153 237756471 490271595 153303098 496234161 709274222 886710366 158977554 770944080 934016181 961798495 469506393 965437443 572553858 713955024 391818499 634545618 606559517 890402395 680760979 751856205 819776176 889097556 732463797 861824347 864222580 927266205 748009478 833003236 944843043 956627957 400881488 774895428 258465511 764065978 468097006 577571845 636948921 902941944 725682214 840107331 841746695 856267121 529801303 589252629 652483347 891083159 933736097 981393781 703030539 850172161 821078098 860054364 536753013 772330131 96193524 134804730 396329436 599836308 809085368 916773529 157781881 605334625 320391952 797652940 629610454 792711450 401417212 717818792 506821035 800871761 448178251 590124616 698810549 840126654 14084204 82872056 191316343 680821957 51452835 511746034 963965178 965111860 154479733 349177108 138142489 342384874 452813865 791638108 870944044 932300756 65025085 308722008 496579475 852571299 838046104 918508153 611534275 976191921 801035800 924212982 816333422 886048735 968874362 989001845 697996054 826356934 255986043 758700340 748928102 810006386 172297782 551886990 202813859 825486471 905348127 933218654 856298767 885086310 169207898 297167507 888453597 926125716 82763902 459724709 896921824 939278833 494261985 572512815 137624423 665812055 228570416 874636219 397031536 416340150 68443616 746675672 497903645 808600918 187081587 958114593 431849382 887976566 328119541 340471334 198636142 435309995 345888863 663561151 227223540 385942628 795984521 947721390 874371295 898997697 547925590 582997246 535835356 647843842 280005900 695293070 774681473 946722572 208330952 566318101 418111807 708363758 821372788 988962651 623166073 860764589 249147746 765518970 404945258 839443162 656503551 786535743 577304003 673913380 959165729 976854685 637637442 686825155 315244463 724580106 451702980 542749988 278015959 634577930 530769996 978317870 266655355 279694144 482019545 824624208 759932074 818388101 968253095 971935985 205443043 892806967 737375975 810182641 746213642 825684078 443836427 724523413 823216627 861050427 837816206 975026728 424718634 497280999 866860305 950698724 681692607 854350676 691697077 867636026 5519360 838482766 62431182 630685041 897798561 977092075 424491038 669387688 140555391 659542530 459392165 831174196 390375062 514366476 481246898 555981202 282664298 407934981 181465851 410116312 192763011 853320299 62829852 636130229 233409486 340246052 640932193 905117770 558652568 859652925 62072370 163029174 780227823 811454556 779342577 861768638 388278321 604928929 454305141 543854182 667255911 907556805 66208671 120943670 903878106 926026039 413898553 496928317 210626975 687262673 668419446 854441724 698654656 973225054 949252975 990798655 678878507 721335911 15537331 537033724 785557568 787670680 635193018 897450013 589245837 625807897 449792091 658582543 882682060 956306306 456038560 705131061 17362020 125041423 945178950 995819718 109798345 309436193 602920703 652615699 644523585 864206847 280903461 612884660 888789957 897860474 313630069 833007049 933625903 944940023 814981421 924228315 333084474 518624352 195493556 978482006 391382917 666242518 272989348 341315419 962499485 989142234 752944011 845296450 636386994 756353450 818441405 889629281 423053491 583033014 826694672 886317400 464849625 872880443 834499349 844068761 847557764 867317029 898658211 953275986 498510603 738465745 588997387 904220574 219289018 847672040 335896096 866993014 542692796 737917499 979628514 990644093 876175695 894720294 798441464 928729482 754764141 812198730 927016258 941347119 33332438 36038233 649924756 914767693 70418141 420900408 780909224 925674545 6214515 934837462 703115458 919075445 517015122 764840482 515256181 911394367 4611332 211782002 238581111 345752493 752141533 952026029 902601411 968047600 684999005 862656367 196880423 499106888 396306200 482817682 242521872 963204088 636561261 758772003 698013361 891880252 657769445 708937736 833522198 971655760 166839607 526719380 511319780 989667643 909114001 964123650 859252097 951040926 343235691 890300923 590669478 775890555 235968180 985573687 509167131 847505236 913731318 950685413 349333946 519785384 63652771 101398390 743776899 963416992 153660959 321204780 198776415 569357469 946882499 960043329 604258299 780243367 768162410 782820299 449049468 888754115 503730927 936546353 926365336 964557772 249626943 538695353 136411495 563369364 845767244 985116947 328882753 994466156 979365498 995303568 863558678 882327125 142129063 412085685 741117447 870138379 288657838 462387002 717490725 754146216 346895996 386514206 190324900 791140206 364607633 605580932 326820746 620137785 28947819 189917829 430480655 634919199 442276040 729992203 184844013 823480570 836280103 881289968 666923786 968383307 705957055 936892670 158614124 734902781 646511001 867416173 239927978 630061887 723474510 764914520 931856270 941797352 565860216 805827466 740448755 850968586 861705365 918509875 668544112 932256994 759393242 895198278 751794266 792025187 481955362 704519922 860585315 965874817 624083702 961994677 701780077 723537656 951979583 952314083 422467372 880395118 161482470 283212136 356291267 508986069 708778482 954541097 736375891 753070225 216475399 495679126 739806608 899319983 305683730 957442295 800092727 871852786 485982012 808399032 850280612 916613967 335834536 728308025 989671081 997906546 111562086 310561216 613600854 905668155 488683390 920837792 280081323 374154611 618927477 794927687 862889814 990161768 986863176 997261554 461687689 534669461 400119473 459175051 446290889 826539485 864992955 866550843 4240773 135599966 319782455 390214727 950429177 974289645 689493413 846943542 677367082 833071639 573279373 791138946 82387557 101748042 44773922 390735874 303555093 447863839 90383183 530950353 899479414 962902495 486291786 718124398 266644197 466252940 345162573 664156724 13647805 236510827 22352587 875864791 84989282 701431346 668247449 995390984 521125641 782220901 512166181 868600815 196976167 937097673 195570262 827544128 855115484 958172025 334551473 623749064 355794409 783594764 56673451 614997127 956330049 985377308 128695933 805850427 651431745 667052007 140443162 784682946 259920102 726757863 45519500 941204230 357414027 685121100 990849624 996366288 979323154 995366313 43655444 912592915 392697850 468851574 317335867 703297397 490398312 639834969 244766353 940407311 234494382 379034763 181713438 939831273 714141099 786593294 250549847 898673073 693625321 839554603 544074561 597765192 339440906 827038280 65455834 382273091 750388296 911335117 940830234 990571445 580399280 720431318 419081103 479731035 201001785 338302007 418361258 553398387 760555886 922199694 320086064 821630316 641968513 904039377 213416649 949304441 280306553 312861514 98568389 110605222 329018096 602344675 479894003 744885316 550618226 653957453 717489573 761634221 544645222 710411313 403375841 890550603 581340558 699421110 77394585 901254793 301056998 586998875 459109537 664777222 200781781 398046259 973139960 979975956 170953615 404306915 916578091 990452504 101576138 573403329 260345772 835993403 771325231 880567993 566181826 833017738 841855918 875604114 943806453 991017730 641114382 976657521 459883190 648447028 934474160 964060382 165648394 540550548 734202059 740112565 586573059 889030751 865102161 897228881 129831318 247992968 835663366 887067560 927398651 987406254 830230309 984995275 421140965 477846667 424698189 833703293 814423831 914602992 281543649 513999409 337957317 775082398 593416576 705256465 415919657 573145455 517336564 993449515 292901786 937020976 996027137 999615801 243959617 890898303 556645939 764464650 677293466 878996190 969583474 981533120 55660437 58575005 267888306 358906875 643896225 730545591 234902454 910805119 382515881 981701218 80011669 804881562 318464524 784036804 812603765 865811021 561694181 753154227 676963527 984421243 938364000 955328186 424882457 860877751 927890863 930851808 227602284 478670830 682824345 998695132 898562265 922891792 827623703 837229008 885928768 897639995 212109213 882094101 899423803 927084650 215956815 430403397 331113674 819013609 229009173 646630093 102963315 551141284 254659376 532831608 484120306 664994235 667360014 791690476 179201771 769142690 135832126 372479686 46937933 287208490 315431775 973868258 43829330 782271203 134893155 312368729 157078774 803618691 806910405 816367460 111754004 319304609 911166906 969821524 963972119 973847785 767829918 919277926 452577314 752575700 859489706 979808655 577192479 932459536 283245130 493214605 823722959 939890877 179823355 859162562 57479058 600843613 393761544 602977646 837403618 895088554 459073813 903875388 598383649 657711812 779505266 789811984 377732293 618086766 558962417 817072673 584189125 708255519 990338912 991562046 197028537 691327731 96241740 202211847 777398787 786619377 78701594 928707774 338585440 393259128 941178668 945980006 227057946 634862976 916970570 929392009 127702931 208944178 250291577 488286319 589996230 594938523 40559768 281467218 104991872 313290718 888161159 920985377 428002384 891094470 708969113 899885484 293397143 830561620 792061725 936130538 999636459 999823683 827990274 969424495 11810013 143681863 976910823 988328500 195459577 502032138 971546000 983604301 451323252 978916402 316125279 771754097 101628037 549644224 716367654 854553514 358595547 753224111 373967699 917395507 430039325 701180446 961567398 987645419 393886343 734899153 421007388 921433309 43177775 570728654 262907748 326741077 372838393 718092681 780744275 848426150 899019012 904985420 936777152 939781141 330603883 653907130 286819706 694962828 712368324 949249451 821231001 917512007 713954274 724564274 245122159 474586210 27520600 420553166 171259631 284811008 291217973 349793584 174865786 905882952 21109551 210642256 243770213 651801489 25276542 97446420 451316704 990862498 966939862 973027308 749070139 822012103 431472935 908076902 199134087 658488751 902657184 963944166 325613160 853966312 983503738 993309806 664945716 743781091 987139267 998790172 598653104 834162013 684746880 808064497 863099256 923645398 643910564 726948397 323330197 620242505 167094903 830308734 830530201 862019161 286651431 879978903 766396068 867228547 612011941 642639720 500496884 963419260 446364504 909244486 850697207 948790581 345916496 507778472 771043020 973262148 962151941 981576313 352804973 930740349 12013981 990910685 92118881 444288087 70710734 128108365 493653013 998015616 468285124 938591583 566041658 855232010 971663172 973660662 740418088 858761207 146216841 976962598 744497857 755018506 212649267 861573282 370092301 527401824 380959987 873064544 681226918 841626674 432400254 885703861 914294681 936084807 115314954 631562887 256335628 322514286 618197696 628881771 737497984 837529319 105255801 460871367 397917731 851474632 140779666 347263556 683054973 683813573 489220647 989116561 820190583 916619662 812237432 898162408 75449443 287869014 124483359 233594444 338876624 731095660 102882565 151783699 880082678 972789599 214933557 506653209 646995215 817884858 276677957 618101381 163042197 526123427 264685357 440317672 426274497 550019793 259882410 441718160 671734010 885673035 457255865 959926526 613869272 688794334 95946005 788972515 137811125 670222500 692484924 767038833 13837066 792394733 811869164 842692692 89779227 274309614 697886571 885189112 134974759 212382223 702200462 818992758 839162879 875760869 913390312 947257009 873459200 904947131 774587341 827018179 857889377 890748030 210828460 996792887 660317255 833581541 730916354 903144110 322995385 339022792 541639155 589731257 151580224 619294362 679507793 873488042 173329147 864046351 232501319 385394829 204120556 806632006 904584244 954614818 779837847 858067709 232660560 974602405 677835570 799389081 250612631 353295492 531729272 654799839 7502987 680405921 56726283 958155173 539452657 969284066 484038407 611430969 615327281 988306103 26449924 655396290 419170196 614386490 999009543 999989077 354182218 569085014 156366947 727249769 934039048 961208956 626082600 699402257 912493859 990167613 519317672 925754852 501757620 849950853 269779656 808811913 902614163 925138201 908165229 957023153 373664436 469617743 854084884 959523186 820235906 929233576 116392193 447145040 593870644 852367583 518991240 722333393 100223299 137574252 490360217 887078094 664348464 818713833 221770004 514056003 485258035 704419095 38395286 46079193 445589019 529960988 759483131 785576826 30899980 622336206 719040796 843272075 292457960 606438477 61167533 234246978 597454629 860691905 71924140 876325729 906371333 980206936 990567108 996777073 85432749 663106972 520037204 952837661 752021680 888316506 509506851 716379120 488536312 973737853 86659528 466102540 649722120 681808829 423958603 948141947 768059552 902394366 21632464 930347639 995738942 999975705 978391764 997164075 850854426 890687192 132142050 428956319 359073867 986078131 972246989 984683312 938370490 988693590 223403408 625758157 998207644 999291839 57428002 748438988 275714120 431139876 225131903 346292849 258702949 318389287 514682758 950367401 808564475 861011719 858256895 898019414 836823233 952051409 32924582 811313052 73434992 927110731 591806814 752791290 286117850 941169348 463086102 568559799 110007853 811721795 94361054 360359658 563560745 925017792 775826711 787336704 517409301 623079509 880753041 969727854 177205917 842552757 760982816 886758874 140611618 549321571 772327016 781173366 467551204 893693542 824369162 945019686 380691566 645405708 822256775 990824001 452793406 921989786 86557747 859863907 7351543 340330657 253090849 551517121 177123518 379002117 618191085 859219713 668136322 718090471 256850460 550569081 413839126 427079583 630809822 804571602 627425107 834233421 998647591 999473097 239129546 776530980 28745240 622924517 68355205 402693572 661525951 886851392 377471664 607454501 929640390 989902233 151966318 747276951 491711894 641787636 554969313 743906500 602081398 653913466 247158117 671727471 751448303 803313084 928699923 957836831 719494569 775215019 216411891 234860709 524763974 766865536 544915714 651470314 405338552 706813655 241142461 633763967 483344772 692749952 623779891 784635215 290319052 829399469 307075067 487043129 358433549 678585785 475572119 558620982 726345017 944702770 200672562 516398770 241574493 610639308 603750796 705467447 918807596 940896926 132334301 401006880 286805294 428491337 32162445 825447884 361525715 754792187 451840694 521050205 771671266 898738948 541734092 776349257 36709300 565562766 275182057 862394896 211146231 655610680 346121456 816887607 460130586 958807841 403462199 558956868 269808054 891105576 410699239 915204548 528350572 713026227 550066499 906170624 70055549 768831927 840571172 927140112 229895309 611104510 13272344 109418606 96279217 918630150 220127165 773173329 900781931 906867187 921567454 983794999 469270007 728511227 394253252 714059782 796546599 820900736 814893471 993660585 825460278 833742864 742467953 990969906 641958159 746699453 679323890 839932629 624777743 787567410 696467201 824001833 604996659 695262522 510613429 619426547 718428939 953656205 622086238 883950009 500280198 931986344 12437808 290486992 423730424 803478032 236390977 252041251 216534586 583400796 509214807 741579509 603896844 621957861 523451711 955893065 596897504 867691264 758272210 789785202 484610912 797625608 162536199 662963769 394710453 843833519 818426914 937011182 45634312 117368194 586455292 882573818 57445219 823529410 690320489 926504209 614582439 712656249 310802333 928784977 977574735 989552355 749575051 786902891 456513491 706233744 464800170 777684606 712529772 815764680 7520395 134447996 375071813 444536077 750325568 920776269 958537552 960537965 144163077 161333614 661219721 692151261 813073256 973008019 939416228 986886171 567708891 665713896 682464271 746057512 732412569 819066653 149555349 322770087 257430888 960327477 823982567 871800633 320061846 597845377 446470151 978445506 62377152 652465579 492326779 893049284 328743407 680153787 883821426 960333491 243370244 250571949 149150917 811913620 397007270 501888575 93430952 347925880 969981678 972131974 327168085 987744128 598451957 688494342 671744368 862870904 827756545 829460893 874990469 922674842 232106694 534690880 372330656 438068326 496536730 500311312 323024721 640071132 712871491 988126666 356066041 867345804 869526385 944546212 970002853 976371140 63169505 915073913 364434809 613183849 124252814 792797007 723190955 802141187 862069780 880684799 143363302 364861353 530339361 733086674 789426062 913305942 764445426 787786329 157153712 769182711 906259340 925138089 757002722 874090874 577338039 659222592 560798425 955511679 943793489 960269801 997293750 997580075 627388052 782309487 607783046 949159116 546884323 645005054 60448152 214287386 121019296 220714558 360326273 462659083 943708812 955657204 684993169 730248895 828310402 910846276 763278788 934285822 456412941 727884199 427609875 600559962 841984522 973417404 987518980 993180109 470647640 521414607 313793219 864482509 136963143 576820280 973474622 975674780 763880829 913554927 107871310 561218709 253271336 800299060 136799302 353654083 890699289 911242161 982126415 983952199 474339443 702699100 20412787 113511653 667163713 972155559 879428724 960146087 933881006 980558250 984206906 999174090 220999301 746381970 502540265 768580393 91551431 527430299 509648171 652352562 789139802 820543347 750938491 980236087 546842546 947138959 866825221 916552163 938539435 950499309 865502915 999622811 248713376 285573487 823961636 951501275 201281864 938579075 552333805 730504645 276314567 884387689 531167235 669153763 986525417 995884878 87442224 557631750 16508401 864438214 778365123 998481905 363293307 700638917 629095816 661185573 339900996 626328805 440183645 502191624 163269029 218287621 15653266 96903407 671746363 696538572 646463800 985731351 622643098 688585468 626657319 667983094 245226550 970877119 415030342 522514020 990058674 990327959 924706031 929829342 974867704 978759625 533733670 923323754 670103613 672371995 318615489 514893262 10734727 294170313 101787194 663324118 937563495 964295405 413954559 783075937 119840929 907526894 594874318 833947326 158460731 945075181 841729292 914953551 822966536 853759973 110450167 966697606 901771764 907063212 621828149 960504415 666656473 858451255 617742286 971502339 345793764 887669042 888854024 926481756 309818226 478886740 575629002 758504202 867161977 874799083 558538005 917947417 835383847 929385780 852605882 940066912 879785360 997285483 342165615 468901422 601254936 607641606 964247338 973957558 705213452 956840467 168250641 612256830 324715994 460457400 403846197 852965237 292668646 937776473 766093329 989512511 185936994 806912586 712873554 898947511 598824666 658606704 88820434 679177844 301280280 783825920 521225581 884137153 963230372 989112158 513412974 926375156 405343781 712664550 29631913 360491083 902189317 996683735 224002337 404945215 477746574 917001266 313228576 947913552 316320620 723890965 731072000 832524863 454324749 996350464 557095892 819455137 194660897 827983086 284520802 828545327 572907024 630671757 549913299 669934184 863696843 871768018 686197926 894473565 803690716 891931677 82233031 513070322 63261192 671072394 569483826 739812612 597203558 682860377 26595552 99948897 245489503 651450502 939534442 961695290 725595693 959598961 423012340 878991406 317445236 907285381 453423613 717700745 241478441 808304852 890285820 926006941 319963763 433742776 865108541 952540798 200074223 902312594 492815417 761540987 693934527 817695718 372453456 692538621 218283072 821343443 224527327 311578818 570224998 926516474 909087182 928642706 577679882 788933361 365896145 686997775 486758477 883382590 909245222 992987252 941212211 968541879 257289763 556175200 849248261 953688600 517778894 852902481 732237983 945449116 618140280 769608348 380210202 563870428 243541352 877889037 315526011 478034464 219986663 570299022 546804160 617680745 776437903 989801083 154427519 840596200 501654600 713299643 361510489 495934166 349952525 671263254 877141730 989949736 820961538 980764672 993862568 998588482 685612789 987180659 618193114 666942511 909718032 963873750 674863947 699628110 215595769 996299934 530959223 851161738 751615017 796112921 247258619 875516789 650698116 929142166 479432350 990046178 354336420 962706284 831517296 940143602 501409896 590947008 321097853 982772692 668615829 772889422 996738518 997410532 140018410 627614228 324542998 490397883 441163481 738366983 870580793 955701083 160506218 455280920 240887118 979434898 900168812 947073037 457601145 908686923 557731001 737164639 361835592 568084463 797393747 893208144 977229850 978107129 207698727 410026810 319080594 634930834 661028424 840637219 501463026 601495729 47685078 377688087 262373317 971079967 790290431 991156189 358223205 402924669 558841193 718789622 718710614 935877613 401687135 682577764 944577476 986673674 396607413 746182472 38794512 291066342 614488125 973891687 333622223 755487627 694981776 707269638 337585595 512192670 444558899 844683647 996328568 998857173 762646364 864405612 916261325 921171785 415036718 426965272 875634808 926378777 191120248 938111243 182136891 343213272 196850172 210005882 956025605 996211714 524397220 696199534 298166145 583404390 838744798 896666627 604696130 945619583 685207347 736311374 831966831 839285433 265656876 656987840 706786176 712678987 851945936 917039370 142805916 182197198 233075863 853724589 606995356 729891492 180401727 593076937 334712286 373024821 77689072 550034559 481116760 593049002 524500974 812482110 555105999 935505109 318553067 678892178 330529020 744624271 76787355 549674616 792143159 943556348 611893493 798930522 993721761 995950040 641374511 801404579 278887167 978249469 288246004 892837654 923233795 971041969 301500348 753572752 952563839 966575094 840308508 909509582 884731901 959977880 236103772 992910017 590258377 645626697 723874248 727673594 860044667 985847045 931359765 948275845 882445341 883545147 50599484 460665087 713567672 754077490 769277930 787482264 774653702 971243707 104699595 713219967 760344966 852438906 856021982 980382363 922259468 984946085 913770506 943013805 755319666 770508047 252688550 720426698 781254627 982760482 618392974 858040720 851151113 861223420 604052847 801662791 891536250 939214418 724370496 918808213 527826424 785479527 188862910 855227388 968726446 972553520 898992522 992733162 303847355 819584576 746929976 819575686 444994191 885429953 951913796 989836835 241507616 847195661 361527676 830210563 238778149 811372692 914920346 938486231 923953957 962218104 399689635 915554134 636561098 864412805 266836784 441099462 902013745 959967699 895597648 903329600 996107783 996695493 134868685 461037370 117837989 611764610 678784218 763454262 472323009 588532086 259210823 582785215 119874619 846428400 248579983 694118401 135276801 407794992 567469920 904912768 265278316 520789710 413694820 491605075 930155523 978011326 385680536 756136552 428889749 552193999 503499046 582760101 318154702 605268041 96088072 733528746 421239550 889068764 38430520 911929560 904996300 930387070 596925839 629195766 596187606 887624687 292752019 296527761 481667021 710527663 837693842 908027179 138845374 959807119 31301308 398260909 28487762 377135844 745017414 909333486 369868574 974448175 79468967 804144929 429474864 990102679 441759516 709458081 386943613 621838091 678960794 764729903 12396474 445146875 799774905 892018543 883173494 987269179 154584315 903172108 217202979 901184893 809170232 949066925 335489079 715180843 538031190 539671345 724280811 905181076 187323336 327572052 443933775 679714431 199307016 872416285 735107662 912912012 723281018 789055338 371217690 802937105 180049413 649433171 453229499 851811378 949830937 954035678 83951945 128131897 536526511 930684488 557018670 919258411 227653416 542611495 290968698 299119109 644963998 841493227 756293838 782902304 296884575 598748794 612629938 940629340 982504335 992345216 808470114 975319705 541300677 543845696 720816452 781785642 6398411 712063577 472582244 553767969 1912406 278981820 263613506 899447072 658724229 777754497 321422293 619025906 224908636 488800222 930194314 944287084 913959338 926165141 689777421 821941648 496445923 662258208 953860283 969490101 794989899 897949114 754093527 927828587 529560038 636065349 871519357 895439465 196233684 361074850 331798463 958408837 12611966 662781408 471314916 810461749 163643515 604416890 303880756 955705336 461730981 963960934 124484968 652598805 440106746 843173643 204791951 539256123 522635333 761134331 806690051 998251556 441143668 714987245 850440946 931912551 415617613 586212016 421455546 857435089 898417911 936066707 446613891 505010563 335213380 779286297 146721011 449253879 861042701 917870318 144491887 961071789 223436856 499606245 245683113 673682309 299907657 907170220 439158923 752459630 327429414 571614905 244598631 814035523 480530291 706218265 89746805 739097324 550493048 733339264 436140575 897870221 609272353 747383028 234300637 343167818 428594577 966228943 636266083 731546011 356455116 951556386 486552749 504564345 482423593 591762625 3232644 862696903 517259358 707617703 498355950 893293072 516973750 552377412 51562766 798874067 163240933 705471080 84292485 674128489 889588016 892533116 433617429 873751490 23660849 668002834 872604324 963742372 171440635 555632875 792068641 967668594 648994577 680955010 713324349 953718600 914401966 979067609 828923963 862197804 75488789 632727963 931816228 966049399 381871576 984918948 724890980 934905501 106747650 420133125 626547650 695132687 347326125 997298510 404243347 669897706 628985835 875637720 650269960 655452697 609147898 944202345 352954803 734290549 231619074 255939385 593448701 771134842 390100823 726395890 82754018 277003565 494360954 661913755 855593697 894476132 835004706 920431768 95790283 793616897 430434867 599846965 496355528 726814481 544618846 840918576 516627307 882840080 430732243 704570362 724808691 831748963 125791055 573773126 353605765 453836353 425827315 598103307 293396530 750566154 592396829 637769329 576180910 836719126 768919626 900687879 645414323 871709189 114515394 473113580 133653269 243294034 566482816 664555726 563330202 968368830 52404337 595171583 733807488 942800333 900740716 916646227 946003358 999889029 960280846 991786249 807077494 956771133 415682820 435667551 293949347 395471312 417965304 480812406 474469852 941445351 571825665 942282501 631860505 650042278 823898444 925263668 607135728 669597471 721444212 977295505 254349553 852080620 783436570 978070243 497121970 626854112 751508560 823869001 885637492 989605560 125499007 499489555 677747199 876384449 133209259 723094567 456198890 862517761 393083206 657415067 584090212 944921396 453120293 989459282 830620129 880397057 55974556 762647180 263951718 848185338 654280128 941610814 289362015 330765445 337049326 654633575 229650311 753125549 299497257 537563852 846523656 995944322 804432026 867703730 999517436 999707597 543717792 598447298 712599609 775577943 870773415 975864434 81540157 759287025 896538131 952276101 635806811 649904351 550442375 623142678 488842168 906997494 155241613 825621983 267458574 521890300 8048842 95948542 9970092 998434606 529523695 847237177 694115823 865654204 952719633 962485472 703362701 733153515 528391559 684931936 103531345 116854920 773506899 945713925 754151420 909014747 79090766 637754181 649375247 894364837 55234118 549995695 925988237 984827071 234060587 387132344 348170691 665684366 858973697 879617275 897902502 941416696 260078823 432730889 461031681 721440754 522211628 911277151 106555752 763536850 403076242 438629052 806153501 968808782 366196508 428354577 747950599 803457650 160276448 710001371 260106352 570360807 89511575 309795005 148061300 555326059 759741216 898454133 950455633 955673224 481595892 750701258 669968494 911854048 851002077 938264119 432156644 966321122 209929365 651659520 106767463 709344726 123365071 172325490 789723504 922752805 135864944 742770990 259514575 719176684 51599379 780311592 783935886 805068208 464863603 592685827 954567950 975965824 508157895 969551051 590216999 618415533 328030642 980421580 25725702 964666704 564005772 768553099 972053594 979683766 129882107 888671447 442671539 870446296 156208674 324734137 441693297 453732753 291038175 805863933 339546461 955071655 553035047 731384972 112071603 814365587 470502054 791767249 720617165 966774891 890008401 911727412 983741214 987755478 669516627 940582957 712921364 882723257 365253819 384232963 818106178 977171640 589360136 979645460 434021307 761514727 666348029 769842645 359760963 987577411 329052788 695367053 239442428 479005745 938920069 997837558 974516462 986729960 159152586 241194355 776373968 966801185 562586179 882615524 32963454 837266139 670484136 915529337 980402269 987993196 495926915 799076737 499523774 827681094 148067884 880303246 908944103 939143150 8148048 648151573 628545692 762680875 655076615 951812006 921966200 965478508 867285678 952853760 258000981 984561935 733143938 757805497 228773771 484569871 113141875 367753929 541760365 671719224 769676565 799985233 444762492 498627065 178856278 907773256 386688452 660198240 397403421 842422927 767924021 939339506 71210585 479685664 576461157 841863918 833957109 928512077 693468752 985145193 469436313 768747940 435828295 480518299 69038941 830769612 219034831 901752120 914372117 964743159 179141521 848340482 866366229 986215943 435774133 697539741 445532049 874032762 444375884 818830348 968595327 984353569 766277296 867114399 94084992 162063130 389619691 689264601 412342631 837695985 292965170 675780635 509861791 899729727 631814993 645313749 419383727 952428083 131119900 168349886 704876955 835587060 900072061 911148831 715329385 831872986 673375635 850552835 102269939 581882355 62244318 408525442 408779039 828203063 633489744 712882026 220929437 721095308 821650819 980896142 616119757 940245931 698359212 990384504 407645383 556351145 803539726 856579782 883352284 945609469 1812095 515123019 606021258 926900213 796735092 950039511 383700743 562859350 107763972 915056973 407621651 993139176 999239225 999669680 331788841 475097501 960389760 977053820 647832795 673742515 657784542 952510715 815375468 915083764 501230469 856091556 263511942 340991652 370949537 423530906 391349173 596499727 292428303 736272943 53544770 251600195 394870970 555515004 82611200 283385124 71671512 595485697 52304072 911637821 633133811 787589729 557198627 987741747 316758827 503122654 646303833 677670360 535279080 703699041 625001335 991716510 757552616 996196503 471457693 776897265 45891726 451108478 655119480 884494734 668042370 825884566 935623180 967601716 108278531 672902302 316565042 727576682 677232115 804750107 86639647 162964201 146779100 615219598 641180712 787061761 49712937 895433706 620864798 859652514 273211714 534850587 318855290 892370056 505639474 600418665 201148023 356801283 418850365 715945411 110092592 572046096 74399123 115988238 859791487 940138597 934672383 955454887 740095292 899948927 697537073 940371200 424903255 583264277 958026374 988319532 989869115 997069578 537593706 893311126 651906135 862651025 549365219 690540829 938798789 939167794 708417147 898720682 494060768 968117606 9830717 547297415 676016075 860438921 965146158 983273195 708432737 903438583 272177505 634055586 138232676 278958647 95593995 578834889 827986412 960691073 759366962 893543292 471291439 493403739 318948672 445357739 311550508 703751919 210270378 226033650 174732876 505193808 510285428 998474567 120476441 451404141 333425875 361171835 63721591 962319494 623678862 824511852 992494803 995135387 234598593 671137697 871808017 898091291 586213682 694310986 101176322 553737430 829701943 919786141 519016879 961950125 351601724 397155481 453258535 531818440 371619515 901637900 767113778 963287226 462209517 477982628 885971198 896090525 222745360 728750626 376848288 388350799 395319241 943023942 447391394 530347121 839476964 919137960 444943615 749200741 645980541 951881260 115030716 653719140 703782241 962691281 618230748 859495767 126006307 327585670 766672494 973962976 3975175 264064232 146502792 908741482 903353287 970686251 529877988 933478260 569531569 763254816 540845608 930946083 340140207 972945481 542770541 863420782 188643567 795091648 259610507 568012738 110746487 367590914 987515677 995769176 503544122 814307682 402167373 952591558 574755101 888970914 601398130 921969694 800387810 824122770 769260429 945087755 351900599 852036748 350351513 923695824 685970127 909337958 510216122 802060371 577405992 994943961 440522632 529837475 42588773 577115745 126190599 397538184 108345625 529450899 17007889 60466485 871280236 884787568 403902535 542555195 922856969 993357664 507305795 737907001 69779732 232541396 986899968 992811428 330956811 834262786 71751834 368896064 953179338 962390108 525343499 906666174 882680680 928529560 22045006 197952446 354084229 876585540 921339458 968132367 792897158 933834343 359523685 494238992 361704750 905467167 750305737 765851662 110585630 687105348 274459706 992781752 40877452 105776607 600269871 788182753 181359701 744804525 750982101 864725570 778550891 852182733 76425934 289832606 562787463 642669360 526985040 555268699 287949147 581749001 499846140 636932615 316453400 610305147 575528875 606680348 981278454 987768305 144915935 534558870 168655383 966762537 370842956 517474719 938056275 955310161 364741606 883346543 259920979 601225051 622557771 798266051 932427624 940089350 361589811 560276750 369284166 582279362 330017481 855562726 309540920 331966740 303363661 915139497 333763224 926149994 773897162 962787062 151184487 691509679 103468183 998401740 195701300 387443389 810276362 923615071 257647191 778793670 126859096 658470430 74229323 613984720 56334495 934888830 36639614 133339892 604617709 654981857 784775024 977152480 30171844 493552385 992741752 998044050 709648924 737351063 521791112 609191686 538522575 703699472 156132015 372803116 537059940 800821094 841365201 854608334 41410721 120348597 202040612 304396356 65960991 857695233 217851828 227236312 197071776 873097993 84332544 425355560 926467541 927058533 350824476 666827441 311273175 701131090 903449994 904894064 829644773 901223747 59650036 575501273 924047602 953934085 556846883 769974303 383024534 394145338 99458328 866120247 521327849 585400161 424570945 790547821 136263278 938287899 683487334 883503805 220044988 434448965 605243522 918642844 986338713 997256173 653436147 763629635 297223113 360018343 424121080 670356791 49950494 68390341 693258842 905857150 557808766 948746753 697984968 919112921 298233178 388028065 109262768 152254563 732977020 888154494 767570171 996169860 110996239 633230540 347855564 448900169 162483749 934187991 344124727 636627197 71150701 187246643 372960507 570340026 848357119 922251498 732464140 793516517 730850251 908630428 965198477 980439730 202878578 518759582 115424140 310827669 450905960 661080382 853610068 943300903 598489702 698363594 913856400 934009691 448891071 901658193 554685964 750987784 985131994 986287652 863065051 964791865 6144022 805180203 10132134 523833440 45160907 729882555 69833898 316157282 173451502 943849005 677127317 684979317 689700695 859201303 243644972 952135530 969600872 970448509 448576428 470620549 133949084 185265533 898120631 960547346 106276945 916058495 716265947 779955494 734674555 906872644 110854910 646457178 960641576 971143204 808712010 926990394 360635945 941276417 515128244 739215391 902112632 974771026 172341031 877801096 96651308 355753374 71976420 218669073 405255825 887550553 300476154 839080203 560701097 687038816 522743734 933004854 236063752 287798286 453673760 721514202 931220961 947143360 383457836 751687623 813834363 956206060 301579778 917883271 515524032 871114475 560431570 901485791 508985975 964121535 663897426 872125061 961502369 963000460 10339740 831497130 908733295 971977954 766724787 814841657 967178969 981468876 951450233 973235266 168268040 965459253 27302917 185058092 830732945 985339333 894000195 942217371 636191169 696091450 878350120 938783791 553509594 637471568 57117187 994253460 714217287 941691573 152773578 257431311 618560263 815391226 448832000 868093703 296522108 746645606 460239842 545287295 395232204 487182735 308431041 850863266 730572560 752900230 211338238 773249743 441228417 681777166 201202935 821336612 485517812 727613287 967632865 970489073 830929528 865548190 605531840 614505007 973591420 986036756 392675130 843756109 816846542 981590120 158516601 704223878 81900991 383642863 761014275 776549160 258022199 496144786 112658287 568575362 144321209 964584807 738828975 965496038 33818313 649521453 248588390 623184105 625924848 950723112 409655319 492557562 923329408 981544814 295257674 756353945 684745018 831747807 760071532 888836430 751074025 892408150 748264985 778697798 561250182 566094170 751580968 896031454 211138164 970398105 986690745 997090049 521208296 877545749 911715140 975555477 216516419 599122507 83708281 198890943 755028159 824342390 545152941 640414947 561795998 925299281 867056947 962215819 558010734 830152485 330913147 868907651 600519913 882909278 483191698 573854064 233623004 814755490 523380680 737899641 304122487 404618472 135058773 176986551 303182204 465662831 724183805 789285841 121451362 660303160 101153628 648346486 888709092 975718382 846060855 947010003 445030345 991001046 529288616 991848352 854820912 875243423 904884278 989666879 450898655 537527138 382104292 511345930 980678171 998953032 297874033 362712400 411327238 500851225 154024261 305227270 998741237 999605634 11292627 365784294 789212132 794325995 969742106 978501844 395325423 702058550 428433222 935126614 644254760 650583938 184878152 711403377 365020558 703045176 519773499 568988711 871840697 913895102 614493013 978877758 809332439 865200878 206118886 251445832 296496654 663088259 89086960 252201349 439931302 559129840 804784882 874699314 753696947 994771948 347204576 838821255 551376044 842504796 825322462 944115265 539650112 835119242 100005111 612018257 573252718 765198153 265262703 670936728 20405415 887661011 828520934 946461648 435666015 840099968 933378882 954005998 998239279 999385978 480657212 594873521 440779157 497572271 474893412 660018652 108142372 870380628 955005801 992926440 618925355 882069715 633830138 882623682 292928904 741588871 611005052 841636710 510638201 823545486 604364333 685639197 980820785 985775689 375337032 715806440 372629980 722416031 891104141 988874368 728070988 969199374 129028154 975011274 500568688 981369246 934012343 985894992 667894906 764859340 541965292 584880725 768459236 887736933 401341270 899297444 867792065 908984400 989422614 994561001 131973613 662462853 704712116 716546927 226172014 961117650 12599984 456767167 81539989 715983997 488041923 643651051 589112186 614214903 410847491 676593457 443252227 771312857 570216963 680447460 595412115 647100824 766838157 869774185 320415114 842354747 711314359 941166437 962963129 988624820 385524647 473626552 341746200 874911505 249296844 562853087 589821237 796697747 746425347 785728291 738643177 886182102 909462228 937949843 664251878 713656509 417987559 902415651 331112449 677700484 771027936 935568651 320661235 699822589 687056021 879647743 702071426 789441085 65860344 427959663 819886556 881946916 49874903 356494929 399369337 582952106 850300959 943196827 48001285 241028115 561931973 971729156 887737917 915184145 443955485 532023809 586981477 736204918 779901190 992226558 988835514 999233324 453421574 464827112 773312547 794098017 227835621 340687862 701424409 809463538 297571234 659195299 242160494 346775038 989352978 999408851 586322010 868078889 491902047 757188022 190185965 481087379 403070082 478542386 857078043 903687671 730146468 772515568 304454805 752595486 421673959 761747831 348838004 821997491 452696302 732177178 211253881 367512296 642203577 917146690 776086131 898924406 373200366 416875505 713819456 948540489 711559755 943162839 51545285 329738555 628481647 735042364 927183557 996206212 263510466 879494492 193493373 813222737 975250464 985251448 491069769 946187132 76431427 445531759 291895577 487709385 289327667 728989817 394984165 654371618 404719701 621727764 566189190 696825841 449701837 533994564 265483738 913455536 109709019 938666015 859870185 974386369 251302433 552113004 924369517 945379095 65242108 81968280 304486174 413267882 784635081 852256847 918431028 957305894 244951589 433051675 703643274 744212579 602758503 732614522 127410599 236152500 685118625 739673377 52726292 63444292 153937196 557254600 426914227 520787459 987408279 998866465 655172122 944314644 517137684 785979334 128865122 528409433 318105810 324939499 332664907 633771008 331298972 535616924 810691188 998075964 469290297 686046779 562253316 719007512 384945032 848503150 804481094 861019446 387230709 835142694 54448553 486088988 873027917 881139462 42071366 441495096 647697460 968435189 691468412 955613787 384642680 940586474 952887541 975510773 198901511 641284148 872313432 937629727 670349641 948379824 960466471 992570204 92145831 764536444 419733134 986634330 663286783 683703230 635602811 921927675 698813927 752630595 244324659 597793006 138572107 850672105 97323111 312345115 808571462 909911170 74018416 630562960 235964506 615724193 387152685 795827510 32996578 184070665 94662007 278370178 280768142 792603896 306411484 608802817 723629487 803715925 277172872 390030945 821289754 908377144 63230906 192220839 874060769 969114021 435823187 766232799 973138829 978222645 540472018 884191936 596034102 666596883 300162681 876860104 862900568 946348221 464832925 741149886 325620581 466094354 320095881 927949004 344545319 420311485 464486461 672161414 543186147 797036643 693578235 886740461 252281533 920754644 586978725 741736086 675221751 747141934 188540144 556530879 112384489 510476525 764264169 957199982 88078106 578707485 402182032 698796139 786757197 900759984 989501738 998432586 934115284 975501367 674795190 890229892 533935668 889597131 512293262 648665417 583596067 809761326 213136180 321619485 732061268 897270643 544011782 802675187 715017879 778455648 596304683 995294466 734292676 859341830 301067050 822184990 358397801 914007471 618518329 749585998 180562622 262105362 851447934 992428036 835746298 930960904 489822616 567701197 107157545 601163580 462679207 731020935 379594352 730269946 657721518 942811364 936833477 997669874 765730521 920238557 897592923 978613267 218084811 534591405 328441337 672503048 184631433 728298631 297343469 371678968 594987009 824189588 870379434 913146464 771816548 921743082 371032865 436191247 894948830 958867109 742002034 982303883 61431647 94002770 335224796 943845775 717415220 724323166 132796066 777660565 282779438 953525839 901447108 946993030 591849357 840165226 781373409 881873393 767604462 855351522 149907933 824997937 328664096 590321303 939977008 969770879 487733532 865745524 513047234 628065291 146035230 177060910 197572886 509539853 306247778 437561472 583073840 786101021 19487134 634860718 393695928 920581759 433488096 939238336 870718405 967293069 558239702 975933131 316654110 805984988 806611174 857448472 781787548 978708521 635493247 715525609 217110215 674187693 301627222 588332331 335435130 933112854 793841735 960694713 617370635 807762233 411339013 631193554 527156598 957822857 724429992 942886500 735264859 856777111 805420983 912720683 970760780 972164931 634245744 639077685 304317343 834411606 41120241 370435700 862399047 945860294 331229810 339104290 906258420 965692753 100476667 293735478 248026967 838493254 513742291 579253545 137739418 923064049 571910690 710586213 984927677 999359579 923461087 993616139 671796151 877165873 341760359 391248402 642577193 825880175 871659805 985702569 272501780 293485381 263142485 598472664 332191458 399800115 296979271 843452438 845628339 954773711 214648537 239080285 146640647 761216695 282730842 415852172 339788891 968432272 955928359 986667890 378710073 676442722 373394078 874432779 165820930 808525230 437702854 439333308 690888451 790976406 147944842 682914344 430463661 662765418 698725164 752093931 111347464 882317082 426985927 688380995 163865456 295393374 790126950 858376829 224812306 831993606 553931814 663916007 82583815 222671301 969686029 973386762 636683326 670496558 289425004 627664494 624030089 902708526 786259254 865189235 644715021 972815697 143940626 972560818 390249416 410995674 473617216 815021463 591306406 990207358 961141321 989666819 269971973 929997595 29662513 801492670 238057596 590260949 453440874 694237850 741183820 839840916 161746913 524511097 459370264 731828335 679505501 998851681 87097419 831689527 592246881 806465838 488153100 597196079 775897951 832496885 473199907 568623102 946305705 985268795 126756550 479599801 78540951 423271810 939064623 963374321 135508 443888586 951360848 953688182 220767963 368027257 495123318 697694254 563900085 950537481 271549983 512982389 959509797 994106093 330613567 652437506 240831162 456917519 721145297 992211252 352197698 861236044 619477721 688001161 484024277 545985449 591133801 662343781 358745973 746622893 288691002 531694970 146482976 645393554 638220604 966083859 409691737 879425814 850287965 910500807 320029294 714867125 579495615 701348120 296618922 840012780 480572562 610007147 575822994 738472037 990266962 993421866 300908428 903961583 611672948 905820284 65010192 653015968 787342297 917360853 27080472 244144710 688429473 913454806 570997787 792483421 872368269 987096076 740265183 937211999 643857980 944056019 345497207 519147152 427772765 900833422 967569474 997598017 80104971 464579265 527145021 945846215 937316011 955406428 65718519 486508339 434730184 769677828 922337659 990477892 531528796 557210323 377924305 847868745 470837691 802177390 655522532 975558461 435432351 751472245 274500332 436051029 911356070 965895889 893500923 922658631 298671211 580821185 369532940 836588159 248482822 304850264 987814325 989843443 379249524 421884340 201347211 996941257 857826807 980057314 786307229 984384884 47301129 542607471 142802419 878154863 910577362 967520664 553918932 987905991 714941492 884885686 207723916 894473172 235066821 322375992 996292108 999504475 994934321 997354007 252930545 308188457 97936811 266360466 929900966 965078543 459623154 738683082 353088189 893056839 993911219 998539985 294562930 872800381 96348830 565344859 479224723 893153987 340455634 574843387 902819110 938295448 701124162 900625670 179247977 864590079 391354958 904243978 513408884 880965087 173811151 655579340 488028917 984085711 90672773 228705287 351056552 555308549 795230256 948394652 19358069 121068092 296896470 699777554 460936921 682524414 795647058 856204641 927190330 973879383 521451009 680061394 211999517 361925410 109972815 356806675 567591960 657834921 814039741 896797221 426561034 565283003 757555901 966098442 786885559 963626159 914957781 965051234 703283541 837226452 304972741 626926314 819254355 980800736 159071031 593644769 604093734 853352238 753378184 930670059 779327793 920231138 808194296 990144278 940303274 995923252 712895434 765969968 5991501 931244610 928645667 957898723 316027557 546251905 306393100 527779666 323303099 561916222 687879337 859000502 765590605 995485305 293248920 324277631 454363660 968829200 955835580 980772350 310676540 787843345 517088878 643179817 664437386 833850399 424365966 957076909 669268502 702370895 249724215 790498781 977979086 992281512 63484342 977949947 270557613 629610422 266966944 661821082 226112214 779954233 561829411 971183687 457761106 549778540 127745098 966927031 289883719 969923479 77701172 343076312 97879712 669213886 661061154 988499040 832254094 950032254 852188554 967412775 930616130 976267002 181353527 589730615 766708432 889020984 128687787 186195813 753954810 910689622 965039024 995410527 658081839 882005877 397623345 717683664 593604022 890116773 154625390 533256944 781572593 904565150 884410145 934557484 952420510 992580517 602982768 743146539 213087537 591313384 926455675 971363860 455349147 674019673 849215639 849219473 870118319 917484645 669417510 790100289 336105645 526511337 316396879 819480497 401669569 596006360 166134646 273874811 384448590 633932263 535792486 620849738 235622156 931669851 721403499 938683548 161321117 455257204 120723292 674177091 585357462 684299532 382031829 575164545 469493196 916328707 471057357 881199656 916429984 918125052 739110420 996047999 805337033 809706982 949902089 989016677 505356627 849967612 464776551 630728973 996574593 998483671 739778673 863212126 107987706 937191575 370493719 374494117 635209447 949805844 740716781 979134580 658799225 806652304 53819752 565156851 451810832 561027990 951917213 976114893 176431179 449952756 979743282 992050329 309170487 853029932 991544905 999059610 998768959 999276499 739966155 758688926 136296429 582855993 683609294 733415958 937500746 961840547 836328741 989947399 140796545 909594035 180158022 319967606 224768869 344688363 231773396 658712900 930089291 941670143 730819036 739176590 54761281 674952638 126781645 698391482 452756066 798407456 556969377 769241930 554931078 587935916 25780015 755002484 180539741 731664378 290544049 581137865 36663503 622462906 862217918 887932493 496460886 640643735 42521943 357043490 523328295 556725646 173703494 682925559 243629579 637684221 598768010 987535806 319988231 985716796 854610891 879665453 68178572 765098985 307811189 820193551 658996333 662875998 195465609 650162005 143260207 312808796 158990784 293079350 780370611 879781586 30745429 401865007 528515161 786387892 527331283 999591577 659497934 787123148 915688045 943757376 260267399 987078866 569641540 868292945 955860133 994305509 798853529 993084631 450452171 957721007 816660317 912162939 477495582 709744104 13190437 337690332 478755039 954704554 972958107 980133036 182637086 449809417 962730533 969046161 117805426 883195337 691746217 965319433 92172704 140612353 150165609 348494325 797731068 826999835 908719566 918850785 272714190 597883101 15490200 677049681 509220972 837429016 323762393 622969343 594305366 723513245 523548916 865383960 153336851 160847416 289513706 598773652 261045664 635445070 267664330 927509232 268826123 514494536 691222757 885472392 314411705 872321168 464936750 816681188 719527974 855339144 553840264 953411003 788004686 808590915 984882104 994175350 454605469 945492463 688293395 694729060 453514845 804307780 479049110 902843452 900063295 969383712 610772239 972196920 655954903 927426092 316232790 797729391 753258519 927686379 758353475 858258488 926522556 964553854 896302645 921921779 355423736 992361070 127343138 474875772 760651515 875299403 605954693 918563403 313332972 958698123 901762152 973392042 87019413 294207030 70274246 266850152 245181220 790810768 203275818 805710826 373605248 443579216 387483529 784446091 907495792 957547073 933738045 946858390 815992061 962842947 456290286 589092215 666983994 682163417 166627102 623469641 182637871 197294648 67443778 703620504 529919256 847069991 602551293 761676908 610018281 994901751 534347305 860121730 97441236 645067765 917010636 924932282 10865603 235531993 683871986 701032996 860011694 922754775 896026467 908021564 162356877 603524618 531510172 798918341 133690403 540303391 893264575 972757819 335169243 581302502 880049881 991689752 502594514 722152330 614372612 850791129 615707701 838460623 678642684 996632603 221942683 381092994 792478092 927183293 393442570 565116370 142996309 289670285 39280381 242084275 880356794 910623663 449963792 777919710 116702651 850352434 653012528 738697708 347766921 515448097 570895362 908470325 632485214 805113001 882756149 965941205 250496691 339798378 85646813 111922178 751989336 895177192 517182222 826690350 411177862 724343863 465614078 786130327 248743987 535710397 905808557 950817117 451685221 513450025 731973425 816565807 382570384 441860533 14471170 378126455 563363655 632976798 506067313 650922863 890356001 899263161 416680958 938868432 555254713 794885910 466300705 794118583 936779143 950132542 427610309 957500577 799106304 820529535 884874761 934699773 71534768 801993935 3592056 543817709 218456164 568643969 926937735 967722029 712974991 856045204 889620201 955115111 722018997 842960830 394566611 834246956 773182592 895438695 930936823 982193318 586987858 624136761 935915382 942850935 736824526 897066342 201582319 631613290 364036537 916411342 189009145 240316785 941601867 949177238 355742028 954695490 434006225 936249319 585772250 613557342 824762151 929094416 134344387 139357086 993254068 998013268 63577165 965202194 422671725 603596479 589186015 839766845 241403195 817933161 162575218 725855480 29203541 478736058 91514915 359166533 773419608 998781083 798745300 995864097 773141510 829088514 971852450 994526358 137861868 198986767 763648058 864179530 994426185 994481497 627763332 915528368 355984866 491421136 572289872 917651385 176318486 646215191 314931976 416586824 840183724 892019268 199298205 203346217 547205482 577271879 675470503 777992254 412726402 553838801 122037698 433054986 450179124 500583408 453772135 964734623 266636354 660137916 791432091 910301322 118975967 331892633 974546747 975546899 57717851 201814623 88281574 746130940 286570997 561021018 533164355 617026938 740792152 900249787 690312300 785628991 593869504 599735203 749107437 785944576 57249824 995861409 578389365 935486275 364097671 966180125 739092086 982514074 942707905 986655276 117438326 917262816 860847207 975287334 918649317 990100855 654273170 936006810 546525609 717884292 992840924 994068028 634833885 886850024 867173306 942475561 14214528 81985537 508664244 878523856 109482334 356075249 173588262 297987137 542956303 775524047 53158079 991566848 7304486 299536821 950478352 960120114 459421586 605486838 269863036 845504193 465749453 466049055 931265777 955608954 68977767 417589994 997936962 999254211 622326468 789394121 950309121 995121209 484495103 650312348 414108882 975925484 514961760 923500827 186716010 253943674 43028083 588157506 509030537 734312184 938135113 952787514 637263716 647513140 662770266 953857566 978691661 979345295 163095458 884559708 971160833 985261238 332824451 421615703 484466493 682950923 140548250 790680354 78638930 886494753 674954502 875651577 871798099 964653050 737631392 774321520 423040807 685185104 661381553 923424519 242204345 346051751 58100257 556260463 746951229 797554331 265084998 403892376 653955023 740872106 746849490 798403020 608844963 733776280 713224703 883892398 883407448 959073659 239837188 736047122 470092756 879733521 161478647 834287124 945279076 966319131 233067290 420748575 271255415 349242307 641039270 823447425 195899414 583836838 762764783 971824745 853637419 916632343 670532474 846344755 769939019 929987998 510199856 546668975 904803385 951982924 198374655 653857749 422071870 737875076 224520365 903561311 586405740 596119920 876056267 932915077 55606029 581449784 901378002 950987852 997526176 999816392 904077108 969030422 631207792 709762228 489513631 945947347 953656827 994256079 860471026 983446706 858537838 927027049 602346829 624234352 866409263 927289664 261744158 415556291 681011691 882768646 37304008 386798482 465069163 551423842 522760060 596056799 235879666 512223701 564559187 679859849 581646750 783433175 822068510 851621458 837301232 903781070 469466414 582129981 126808436 607103091 328673506 448691673 365910586 704850840 284882935 959595494 570301330 699597707 161772109 669662168 878476713 902290529 586298016 606800847 251287002 760416654 505627188 958309379 233537696 677271595 624561888 624591143 579396780 806734023 997783993 999058247 801686141 925007984 928880081 937310508 938445414 987843087 929338828 992233370 210901201 605449445 960022143 963132729 879635379 989127131 919793163 955841820 1693702 406639278 32612986 544651065 261535154 498651502 477661885 580457675 740997413 745991684 611239611 972258598 321122147 495181565 701846568 842563122 686476693 691053571 486214637 775224599 753219313 791095446 679140532 919371310 282298341 578942113 126568090 327715932 567269289 856522476 132958801 438805380 82158724 412826738 418900017 421236920 572521184 758851401 730008681 998856410 904623887 979692989 252738235 685807537 92959049 433002759 538452862 648354401 725845037 811526281 395362928 703747360 451034068 940975920 810722469 964587568 149176885 754600867 916703296 926884989 864312753 912744815 170130153 888603276 29038161 554874770 720564105 814928508 402448664 917640884 727724173 831350638 695810016 833712061 943532498 961941599 602887360 875589639 214698974 647608798 934224583 996915173 586078308 818775600 331880728 936848097 470550733 495593209 643656471 748067625 614839310 919566778 74147822 623597561 784607041 840027215 436374609 662109007 729722627 821511067 402541230 460273442 558944871 713787755 667433677 866484081 471891502 603161887 257183855 874116188 128172392 332727986 726031713 752365785 979834962 981933380 633171937 902139053 158162627 747214447 826699967 874189153 293014958 432018949 598439208 827560020 241913196 487763718 672905378 999780903 165979237 180846733 189285577 302135743 571476223 782018365 752392063 766311467 232333224 281647889 316582641 756400476 423188193 710824269 795565062 952287902 908551402 928464413 830802512 998398170 428782836 491447290 636138408 675445384 575931837 969296574 241177241 400507131 963306479 996848758 847401196 986301973 450554102 546080760 67274101 843414656 924335182 931444896 55540768 95306173 739716298 867885421 415378470 497418167 949220620 972707033 587573173 825555046 585825095 610273990 884937896 963575365 268822288 619838766 913770324 959651087 660712522 927121046 839601254 875075730 605429620 821691243 289952250 527698334 759099154 872104219 256136083 421023019 148266144 493594437 527583103 777351605 775051409 857620491 599225347 867022486 798346251 922213407 549051570 822009291 479243649 654608245 569235831 786860463 398360024 856493565 524540036 683631846 464157065 818667011 896786982 960410343 77310385 559033581 324206421 336711470 479002088 546865746 24168627 709373708 18448193 591885947 950224114 999791304 662722492 812661080 106370869 200032483 777538920 799393803 484806687 853566294 932905888 964139892 328943943 525490187 902645269 981785615 638249594 844299541 408466288 460617810 300400778 925723728 986270586 996525829 884961838 964292479 120124079 640182264 987159970 998214907 406071718 541147943 789088793 920927826 495128972 574018182 810519849 817454710 655751190 682624080 537179431 621008618 801977410 968877684 481411328 632943722 423966212 668555163 924740839 988782194 591594228 742562771 756374563 799198548 890144875 933735464 870006938 886574425 975097435 983346439 911273879 911469013 389424384 582793327 400450142 413951608 988955019 995170861 343718806 843307705 269665875 845700948 255401631 399865099 603600784 911347287 193130361 492166884 444156415 952253323 432632003 456921277 736518987 920683363 122505649 950517424 292204345 940757773 343285710 703315443 557700053 743334502 892293461 931857463 270677541 993053227 275636016 746991011 264264794 685656533 892652149 974779896 818825789 837805348 146692837 777716587 511650012 688925789 942984366 993294852 26925935 125798792 414737466 706180889 981102020 988638490 97798055 627716715 171119826 865001011 521548289 906417963 462117514 481701791 929684199 998157009 367619336 650615968 614384139 868995640 6110087 337335665 631083823 650530716 182781098 377257584 204175880 725089546 480953864 730934904 615817472 748319959 117871238 606920214 874753317 917716289 112792897 218534919 833379993 859160227 168413858 531596878 963488773 991447502 383236683 862430864 625110657 660996491 546023715 846561222 95774997 924221557 38529027 176583677 240128059 429569308 480841056 856908676 913048086 929728878 863751884 970719628 590376989 688224507 535082117 697428596 173213052 928963161 509941625 805146499 623098264 910044760 693261100 708542289 785848875 878439872 498207442 693972537 692942111 721726148 487145234 954501391 810341843 967719554 405416799 674737217 474751650 494228177 953941243 975851855 675894082 870104938 657139727 825405971 943669649 981390717 862297267 886605220 469202418 971454141 254962248 577419144 990777368 993656795 551142184 614109678 581154804 717321015 390961498 798673824 134135933 509711630 430673204 832277159 214955204 565636241 248337166 834919182 108086947 976319724 806249131 933434892 377848589 833087093 975304931 987577766 151687270 322694774 773816590 855459540 321668957 950383081 780200615 838944900 35543090 925758893 842863220 850110492 671967 805297122 983402248 989065348 935703363 975736618 242345845 418566186 116444840 598914596 750948699 848350688 172649218 474395017 147039430 495134593 538060769 992841876 982221485 990981575 213938421 580838982 607558252 713225849 337969470 579228000 392623560 812433321 794223739 811775964 221652503 846615639 346887251 347084114 926739379 995808989 710338298 993173630 335925664 683481698 647877797 824739986 645760537 678612694 128380410 337392335 634777440 863947678 591257556 868160682 231572037 768497566 786104971 949833471 646333458 798342127 323704952 714410132 396168179 784304879 163168667 828324595 795622651 909021386 606499694 864983320 913003171 995272165 364825633 556697209 780154134 851230296 761774546 930068009 638928663 893471557 902215026 985289418 160971546 324000686 111772955 286305789 231382939 753989665 2261331 786277618 339205119 854193058 899762384 937518865 739671686 945153463 389295554 446429789 798420520 878220206 257825724 324572484 720606518 785526577 494776306 697910083 741933701 781997138 305811283 524821590 895964886 952425919 545835766 899930899 789187982 815659142 333777985 535546348 413827976 433742068 306025824 793611516 997555457 999105728 216779375 240047230 857404777 884686683 769351392 898799122 746743053 984137859 574974509 609328252 519208325 638744413 379038742 869155760 669854282 719664718 742630280 867368770 437446338 522190035 839779295 855403004 547243941 996627914 570921110 705772064 642096494 713384594 229578850 316466676 830035792 843107721 860999825 902903822 483698400 734139803 674590434 823460850 118223213 835354407 433923708 691636623 196753351 385729470 73535987 130412630 112244505 901161317 568923457 736669784 489204658 749406529 467395491 808119930 711898352 788023901 214372470 812595897 792237027 825775186 216611872 481284796 368912842 993254630 9527350 489575061 972595336 998564444 177288803 515380167 24493717 116144728 684676280 712780265 791091408 972233127 60014516 671459699 647233108 714119995 328062443 622355564 505029577 674108578 531822756 554812679 139811841 838178015 424010834 819066182 735988161 958060529 935311341 976520341 494339067 642917036 887549541 937441206 306859509 677477084 291015743 859254519 968990761 972370292 610547697 972922950 791318756 915679060 643995300 731305031 337722543 714789655 310413785 764457374 759322155 910576121 323848477 395016441 268845189 676562568 683215774 989373628 353938311 607204958 258858006 575308629 393744462 925568031 6219854 204618126 779183228 835268381 464759874 689637443 785997719 912350429 364786840 402184574 740785630 773666853 345093669 481373759 936981787 947517610 848583497 998598469 838121435 850887073 325091016 370802843 856509878 873404335 799702657 823674117 658486356 913831232 888797430 975110017 575076399 604932356 921859604 954805394 458197997 777911383 182514206 428859285 562028553 643767330 401645932 589214940 827332106 964652581 281424050 846110680 926210259 943183682 618332655 829995678 702932655 942764128 150500221 318227907 809538866 937989526 445334771 978098055 25304632 404478965 553683946 782108120 66633863 605430273 454247739 950061719 478703138 802551276 110278616 240512710 480398642 785002922 581474666 733705527 473222942 636077118 819651983 953762821 441859477 481655383 84260475 311035356 161416358 495546161 750824902 884691328 333140275 855957797 162824537 940570587 925851893 970879461 743510778 862328819 71306532 87595640 528172179 701565794 634099865 637493900 99826760 143376206 370518557 371262005 201371173 945699083 339797618 434535669 657606003 736575156 928141494 996365218 241935995 733079971 953996462 958515444 213022159 540338797 667906668 888580876 805899987 832415796 557369163 849347720 929247529 932730422 165766297 873384174 111150562 587051281 629559418 742558957 422686516 514602768 67705760 205034641 371662767 580268871 321267858 480259309 263760809 615734288 573940960 893754440 124888305 320860681 373956328 996464488 662240904 886509932 475859496 739226896 33576843 423164857 47697962 244297301 215953826 369674944 516190578 940806477 682258912 765222227 658075822 768274376 906269027 928979695 856209074 894736702 421566137 636174722 944737712 989430952 701979550 901882781 8640687 815908236 988259270 995306970 835752913 897051759 433101348 762419308 342097132 676525910 502064779 894016527 333637899 490824859 142827733 200806916 787310923 963383077 56114711 772454495 962495754 996773388 425443469 482830411 401866081 766110389 175827390 483159758 253325845 458168864 439325767 557126316 851421913 910256825 678808290 984270995 574603589 592616204 4391835 105338865 491709537 812972477 976964493 985868903 283783196 423085545 653934681 688465445 714785686 946794987 858476991 983112337 948785157 961476494 719257231 897197008 508590585 582196717 948959124 996508031 307909065 332306486 86341006 965965813 680787087 854785478 502767385 519530212 338586711 631684195 523741503 990999789 607389810 884565678 339919376 843828108 482433397 883711979 329786361 512735908 543647386 995910502 103453177 589253154 472959683 700945431 743213976 849765041 37242685 270120001 795203314 908148262 173222876 990150197 435421475 529486286 561048219 779549923 796125236 830153585 31251456 595385965 37643417 988711465 508893490 558247409 643661907 679993148 847599750 956782036 76349974 811276512 342888966 448729251 831510677 869294684 473437292 767859843 127215618 133593078 802668305 900015902 595398044 971821445 507893197 967374650 605696145 664031087 145664581 672099587 794702752 850355229 701378621 735952651 149823273 997714092 429837110 675768587 478663543 529432142 438451775 862096996 765741751 828576813 479686637 827044031 491347150 658514992 991893367 993187979 13260883 823352425 354400248 912979798 824856187 915967308 327257099 935778192 337505524 980157841 52130520 209004737 790471737 875606584 799867489 911273022 159961772 450969370 233326392 400526734 8562352 524730548 530856439 674160393 968985605 997101777 465628184 818405653 883186 907338723 549602388 595175174 502771171 955775977 502530396 928470373 216092266 377056206 148485227 546397309 471008437 764454013 716506747 831057022 664407049 768376979 699239310 871166080 42533956 794010891 196717268 657742322 601016689 718851421 39208997 863673289 190239000 468099610 146849874 687663827 783232323 947468836 989421625 996821276 720714367 946871949 434076785 728540687 167076391 702478297 446041760 543321323 558283659 633138751 219988186 768207852 818432041 846917114 257900527 645275502 969037001 975076389 345584281 414160195 129991721 585879338 325537433 759125228 36837324 152988076 878286626 962428313 282844255 817258282 871818698 987000622 478285034 606594408 642143840 721527997 641318648 932535271 867855609 869780691 986736373 993519376 316713104 982835603 5823239 302571053 856807183 894293162 970034051 993335217 172091211 901100857 805214145 990846648 375973582 880569448 21929888 252569011 800087 740555633 328310896 533378240 447438133 765290106 135805026 343230413 586166535 654032404 761610517 847499180 340928926 919556691 910041838 988883691 788409282 918138970 523354268 615941437 885933238 948713141 405954643 577049535 62629559 485196000 561707143 684801090 529367970 647868958 555696619 789380718 166758159 214942108 504017050 883389838 537392977 910190532 58058294 853394615 222799090 275599574 66441197 372153794 754461829 901313454 670509241 842726431 74764752 229754164 849900103 982200261 807670921 944181028 141528324 880966022 177328675 458276005 369882159 960059214 762645721 834714158 813451536 994710452 938921478 979525612 960028478 966213166 803896103 898640177 701507084 818909735 917419599 935659479 148789137 469628498 94174229 423878392 644939130 703840868 529957214 626694242 901211950 986195673 106468891 141610571 280458607 318431462 974457504 994453259 768437327 859938840 679336159 805728365 479628501 655589435 966250688 977449504 358790731 414125376 82254126 861921584 97344751 603051844 54866572 253340076 108326619 702370561 198168679 670750333 426417008 598684114 285867318 721944628 154105043 966102845 765176267 852900422 796205977 858641745 846052974 955492598 925273744 940482248 803224285 890428385 789432915 881508984 438527164 859987739 704227191 878873044 692780052 954187878 663333053 667725612 795363685 834369242 301809098 346230754 453991608 730607922 737682787 882758283 469049744 558369028 308541561 631057234 302089483 344911128 164177334 495305373 11519180 186395279 838511721 848400002 821570151 933037019 734104352 772846782 925799303 983579811 269274669 377590959 287919062 754032131 19266134 473301871 396665620 782696065 658808785 722418327 621527857 630567899 163424265 490603457 332212820 493159752 70549145 985423354 302411938 861663424 947876902 954449857 111934536 206108890 423121392 890150578 882303617 969939293 175612198 456556693 327374304 328282705 900579205 925930284 423961977 601578817 487682399 759669706 754292210 953131798 379829017 487285629 359221024 514845903 795369364 952174601 838352765 927279770 278334933 967509568 901250516 948030834 811135383 940051988 851641165 981508453 824311102 983002751 451151884 654066910 918254001 978595941 26289230 444314845 355102334 744764109 39662396 570445759 596007345 812943988 774375351 880240768 816391694 850411860 887144566 928576334 643204661 953886114 644670322 667921307 552429723 724458969 731804670 941549225 251512673 378291189 722223297 993276733 16842797 223205680 901101965 970993792 240560428 716037956 823176364 830127259 421161545 866843831 965011487 971404268 132130343 200920229 580136342 591416561 747315595 898095499 76583607 904212876 826726560 865520029 122976755 702524653 250594005 512882107 825401290 913222916 50927354 208604517 75006758 899337894 491210285 612281964 693834708 740401007 697171929 996442253 121420611 176807788 554893368 623900220 282329516 677793398 694969027 757733651 242188836 854965189 16480876 857130040 268990670 591467241 161487661 476169638 314545353 820438765 377832640 563711012 287818988 487688609 216498542 924440164 94804682 680359986 996168820 999948536 622289136 634368385 792313082 949792923 493513405 690089950 352320689 785261091 358692957 714807878 278000340 483366490 285984348 321900492 169047217 806301693 503719980 979252996 99704631 605320686 485271291 692018235 202491710 584175223 331235061 345699304 208487539 366713728 528351361 879458779 413579033 963888055 111562866 924999522 278251648 698793914 503088767 556909636 592926498 640606492 547401059 919713759 768252654 935344655 160714274 867753159 338338944 887226567 265343270 445694768 946167106 990730786 27502429 467930265 280745103 713619077 52653620 605392799 493615660 870964786 114145396 194643860 247806008 615577696 359186344 991026698 47642880 613125243 166069636 278625904 94218520 642458918 855011162 960040141 395371526 794020754 538155822 623920296 77940643 879725359 239581093 670598855 208207990 500705922 958384046 959354989 778050142 971818508 632843865 937052388 921706263 934851307 639971192 951827127 342306143 739098200 140036085 877399328 483807754 931901466 503720297 703079108 702673877 863937160 695195453 864665260 682037284 795702658 951945614 982772546 748847890 980370809 41039685 266943075 110308443 193435325 757506056 991666531 701499782 925008533 138554073 700968889 933495554 982206022 443973591 722389125 873075586 954194285 763197945 823059766 441396045 540848397 850195496 897141304 564759883 715707031 576131181 607489945 347093906 616793968 368198044 549977505 468966763 682372684 328002925 723154988 108283683 863753877 928241864 991329772 691983003 839143070 799386017 899064582 377293571 971287367 50678538 404155656 328614599 990549490 521581799 996611906 964897676 986045311 774954537 896317570 510263034 776221313 561560020 705294760 548876692 991412578 636352906 762832758 673011191 894709459 685247116 778423990 441641846 995713988 953807186 979806649 521738140 558396655 484168190 779899186 153789362 559357159 417544294 926510276 704270508 967997772 688987938 923324655 598234376 748159189 190204467 385439752 634610404 791328813 540940291 657755119 586330405 851836461 577663200 799554197 272500669 846085227 487567305 530728012 83256311 177590619 968466571 972063611 197716757 484982105 742423162 919264132 831082019 916662980 766714007 816462033 304084562 313514092 230545471 274824384 706098333 986184815 338746130 347367405 513946955 780406992 657752758 785379624 335852345 474259863 528969280 999779295 796400435 813405225 810477613 938184069 447451207 766270164 924695647 940537251 85368790 462384842 194855921 651964029 777055709 786530987 62057161 97225427 229033383 796985272 192309254 761407127 771210270 909743451 27937415 949197561 842869441 901606125 621528636 644747924 672949700 747469717 956296549 970962325 885370823 902095598 79408652 787456799 519175974 646020769 872522076 893865977 13797441 797314367 190366156 982747593 175340507 638875925 839562661 961278965 454889503 605174967 474667455 647385892 244048015 442030428 445851043 806989239 335194155 805947826 795403538 904153706 659832896 762336166 723540231 824376655 34777140 614339676 98932253 415270246 171763558 763160977 910660329 919341947 198531717 879326535 834753340 970686970 278196408 292926678 195523796 786792462 275608706 591943546 801182807 826620632 626308569 859959486 156975425 578470904 309346268 890756258 225228000 658164523 835016323 907184778 261908431 634619318 787869830 801386291 321233735 970389568 344565378 547372332 241806576 322762909 109082826 556560269 444573415 904926274 447535410 847682140 655311915 875412969 701717225 768450978 923414355 989689422 919774343 953055337 439724836 555613026 996610013 998363260 5524107 793947200 978381126 996591064 874024516 954153327 962841532 993787828 390918216 593288858 902966411 941674141 796685148 805480691 779983353 957998578 861319804 950755038 546327481 727482849 132084668 880372406 726181808 835136605 359864497 528776449 274681477 961979388 900421988 968838287 269370460 707870860 937841186 970089083 657886403 905705595 87736686 844554263 743213923 961445402 940717499 998316795 35563135 466224456 978404230 980199137 964910041 976165557 736833289 942298830 983970744 989793835 81519713 851707760 252684548 478224563 417886938 422434314 499743846 622896496 713570334 759420261 23175614 598714766 635377439 880424547 276083568 691164162 110833514 299532416 26203401 301296784 959545026 963459115 852296467 852758886 673562047 951555507 779637507 932677733 445017686 964586541 323095888 664951006 193985370 923137328 844208599 846769535 502847613 510070611 241635942 279137771 603396011 922177871 616398809 810622573 64956338 243387716 543981380 570565770 712076739 911816794 819466243 894306627 551933504 866232598 515300539 892440643 361940716 604744526 480481045 902151826 184785103 908716632 689576745 877229188 273510498 479108832 705779825 978214639 718028182 726100284 552810312 702726178 287245447 465947975 918577970 960507918 837517460 963327518 794912758 919851334 44255277 169956187 436868485 486934649 183983251 711835231 265141594 819861965 839677392 894665202 740976039 859888788 930179952 951105770 602478239 798201158 513992308 854390717 192803040 768004799 841173643 960879454 66122501 646900229 718590684 968962527 503826142 635531016 534208064 812017253 748759533 756229025 676932854 904262425 34885207 306075830 906248057 916189565 876495066 997026913 406043090 803651064 425914152 595328016 454443035 756638522 955817635 978081106 895320861 929612704 587615679 975469763 358719407 600859567 863319221 984986608 254346184 669113407 58440694 864994036 766214665 859442611 780399716 803358291 647151708 949122085 389734315 798496492 38941739 263245128 330280246 642169372 298324238 937358184 164008295 656380842 558509581 736434787 263784962 881333714 528844933 888985025 751702152 938346049 552748600 724675026 945845629 996724515 465252694 742419075 294635825 479239027 651774787 675488262 176826633 746660587 900622196 985136413 88700068 217369704 10564342 527895804 893275524 964875545 621350929 665928716 854299609 923799024 994661688 999179762 16797675 430095076 898663139 952400891 472736060 862881442 904840781 977185378 254794040 393976717 786108497 995966996 1410287 630764973 724179498 867735110 6501445 364988008 375986552 761126463 764484391 789231795 895367767 925813777 633901712 777432745 495779961 648436389 739323297 832747837 357152458 799811778 795083691 885918992 704962679 957319730 720121450 938927936 204786002 517740548 339831321 820537612 691314050 700692668 734899567 935796973 982828812 993039778 599307236 755910264 188198528 627037974 599827392 661443374 848424387 998162177 193069076 875913959 303923689 904424628 604974850 899823408 2951040 541359178 803131194 869556789 829920896 868293050 868323145 957753612 707497467 978357423 984801469 996862194 865180105 945311805 962060729 993974946 705956297 857267023 965969299 968672375 598896189 685716532 31013995 776727803 965826014 981116546 567930154 875115790 222030685 834878484 808569350 967719140 156628758 665705008 221701764 869716020 46179258 846402836 491695894 939782594 163274549 774132933 640640645 789219261 998699027 998764547 923182491 928565430 441763660 466185963 819950809 921044561 419947179 433184925 819866532 973487068 604165879 763982785 554343405 845335139 526098756 720263773 780107707 843697136 692028561 768875607 508881839 795192578 906984608 991006114 693539706 948027338 884273344 921224845 870086332 913742016 456951984 832931695 691991181 960750230 654052496 829864548 256037153 394626964 708201840 982628075 513565066 810477950 484265677 637767293 355720043 974680833 645848792 932435718 342925134 827000872 366163557 388810613 631339480 637256114 586925212 788169431 22882178 314222355 113949550 684878671 660641312 991999791 191054939 333962696 515895528 962633010 62373050 837746115 762660645 985968931 978410305 984495611 588183228 614969127 47660325 827923998 690186191 985188941 230725142 485809710 391343181 884830114 100709416 630246524 512398617 646628332 649166737 666995263 120293245 365252395 145264786 672891376 377793132 719827432 262662071 298040075 277995437 368149562 763870748 845368424 312876998 948036833 933331349 948557464 714590611 874882858 95637755 995736892 379804752 459226687 613293389 733944575 554401518 931356291 474206633 962602893 469878624 483736521 742947963 983112740 72780833 616517932 302883220 898554137 378037090 747422695 21310280 344957514 839344253 951394231 375280159 526255657 192398201 723306956 733702258 866286814 244023219 717265707 13796311 207110587 509372722 813928804 914423593 949210164 972109044 978300065 212148475 737260655 194680138 778858366 338868014 451686007 899666360 969013065 9415048 719704992 87028821 854152882 858392546 984717811 248280295 958201194 975356317 998988451 691194591 741786729 737381746 913053196 470791447 640049454 463509463 481593425 897360784 944029173 302909573 381678366 748015493 771680072 50886172 685483596 56325899 487428879 181570503 872765039 391826308 394904676 866885993 896457240 673083139 802574267 362253006 493138051 798370729 974677409 718921404 966786020 953537521 977656237 952236457 969433050 512342519 636339875 70037300 97657613 94708861 770915666 450348682 590429652 128238882 835903633 917031248 980656360 92364422 138098692 922095696 951227538 878158813 885267418 255044631 546560856 707076015 793806497 990123540 993819152 864615733 968992712 176577704 475118461 997230282 998020475 808341504 889294750 173766067 184369516 198675109 490216626 380498436 985059825 49573212 932873985 861511567 863450875 253363286 965961619 787603659 899885824 516173325 816626816 641589129 859758140 747959426 952168056 392201865 684389749 850107415 905644414 72066107 541322155 805532561 997105865 948388275 997785178 329993728 643038588 608003260 983512591 903351508 957496657 145924473 265185306 865325459 989020043 587372299 736026204 408331048 717243387 451232492 819268920 793672435 903872562 946183589 962195876 90648091 490990756 403555781 408647689 656079678 741913685 616107074 895059228 986601500 993000335 849458409 923544370 303275007 409546128 80733447 656429449 447629009 787112500 606872258 684187433 634709984 692318173 32671118 92078004 347062241 508085532 70650876 159227883 991154441 999736941 359602127 486485555 221795097 245567577 664224222 977202987 217468849 934527762 950127572 951703092 336524487 587608299 209345620 781734971 535272887 961816266 478321814 784022052 635433436 881692158 454653498 991079462 237102634 696042038 36207709 821442343 820933625 977609603 4140988 347404968 520981272 844026121 109017870 187702275 892165292 906262389 584843466 754656131 795346678 870311801 520343022 780855161 103838676 406358575 624428970 769531237 87672665 654765692 239533745 324211963 574552139 759806290 662650107 725918294 978749978 988652094 255657347 320141584 305720963 516880253 624566662 678673933 38747645 540500584 140573396 691628367 782530752 787554760 942091024 967887258 124929164 235747967 909101998 946146114 934321024 991012852 549755627 892423806 874890105 977087837 654959586 927876837 697008953 896756363 640655602 821747011 308109671 939969190 19624980 436125254 171542609 172140359 667173123 729756177 961322324 975891194 449094035 936223295 607123079 699924881 458879252 992075603 685958243 792738251 662000754 886681011 181780428 721193397 586462783 662803885 57149228 774544756 799383860 944524014 196413343 422526054 407157205 540558133 963295267 970150313 163620937 626797811 907138454 939307825 126969359 351370430 979780642 987999562 501420190 699240317 508452443 548201575 305024626 951956278 199325547 958691202 200485828 530138479 327824049 523763734 629830374 855729593 343408296 935645467 175088473 748265884 812874939 999413494 871535662 943052767 22533333 242664576 466383847 883160505 976777805 994259446 821705639 945799083 745139667 969907841 275650112 339357790 604115856 664461746 219645643 394169443 926860285 962512872 698899519 853930755 357612105 674672985 818696379 995422307 185580630 633859637 997743391 999328985 209031935 582570948 911050729 953881680 706994961 899306062 818436194 942453538 992468923 999439852 439829252 988400396 913187218 993110452 808686046 904205156 772633597 874269263 875595549 992723532 685567142 863168650 368872119 539788308 725614484 802947609 467241965 932272171 512988982 534334246 384385329 420618639 911880802 976288164 339020060 611593720 173197656 812792639 838591235 995823981 595672470 887096141 802007838 961824850 629704650 778372339 710405045 880343604 203649744 584875317 297904839 574246885 533214841 634773103 313320077 467259093 893366541 924127088 840293264 886634604 858476213 995624193 378078661 926198548 49975630 839335157 977853650 980661260 71135416 78901695 52696977 572785024 247328897 540947103 748101576 791543087 174726701 751717529 635026007 966485925 408863408 412556587 680443752 838399146 15663397 949990748 437903077 470764368 158653432 421656068 969120800 975106966 115476688 663063552 164632301 940880499 556730225 913676880 295326903 648200910 970145816 977919656 662417359 796493215 270446769 722793269 130900902 609897203 989913000 990611033 807884455 928369053 940344019 997534195 665599524 976436669 309628179 734418762 968302664 973914476 235070365 536549151 889400555 891673492 251833312 515109405 824194291 958193554 448365657 932753011 266231737 463387269 289742068 325804053 344350282 376779764 727825739 851372636 927009130 935812525 236744891 372459099 101015988 884209094 129407109 313331651 638335276 797430244 298040357 907777905 921273007 976028863 854250190 954296805 546125572 556919880 786952250 831992241 531352583 541091701 724735886 908157387 868964025 871921860 69712122 104136036 795898865 911127341 128389614 800643074 761606803 847671829 908790879 989274877 571764346 592917583 593171177 864833199 4394374 721224383 469165248 701643635 228347981 398614221 342907480 351994214 381498388 765430691 363000216 467812997 714931951 908099296 728721787 837938745 973430551 980699458 540617269 908084141 607973981 694663766 816217645 916276197 932932435 950043565 754704147 795022967 495302269 865151151 603912396 806591810 429187935 970245258 6140846 863485790 633973017 953236430 965871355 987929009 79224338 641059827 154874753 258734873 275189464 373705497 550968689 942350441 908655056 935348370 861007599 974929858 822064343 837761907 267771634 537549484 692413288 844893622 633343594 726187934 798303483 806842947 229935535 997336180 906556523 935970796 635327728 892166188 656268750 682439536 380913018 688781423 460259860 830035249 946526189 976858636 293953000 328512611 596018506 611162295 661126188 736202802 905146132 984003929 867617826 978122091 425258877 773346304 858072815 882677739 304655443 466497054 386497331 513996637 403404130 898750825 933071170 933755952 832924784 867743197 282644567 628717759 106645485 946172878 937668829 945097452 306713719 949752202 134341093 290870938 276606475 436841932 63216826 658566294 525906203 732458312 823650857 972085002 646705367 867500999 6902741 453814423 271119013 678887664 774230048 905296099 338613875 790079543 928427009 973864827 440682570 743375560 265165724 322196764 278563498 637226528 724841895 805063780 840916659 933389258 455234080 579072671 213925115 281244725 424316931 948266123 924794567 997773865 364671064 694087923 712443122 864573849 223863942 493591843 252950792 598419143 715337585 780194868 153514004 432531278 617052669 698576486 573583557 740469490 934051641 987601685 983616625 994733366 162734080 777935384 422349035 729405829 140899173 780569035 106679070 941805236 558593644 742929632 689232355 958052232 672217809 682996582 477486805 814781686 585549805 841249533 272958676 487989352 920425312 973967895 696011186 992911886 325260179 360999505 787206786 962873020 266612657 477007539 665560988 793786851 972956776 999771200 800052586 932387368 619290334 884991326 868615626 986944793 540796075 981041539 492262922 924831155 159413181 619267359 183704264 593666398 245969123 517882014 760848855 811416855 73559501 119894530 449211374 537700800 155179891 704225868 632330140 702292860 501207214 849971793 3284725 492547415 374768740 498284791 597066303 946882918 250756928 560442789 776076459 907569739 752139824 903758511 939138000 987069634 155755967 364834331 184080320 760588354 497183044 752687916 61641072 351069660 185260979 758512084 273885300 792074942 819009143 934037628 923445000 929205068 49673888 310053432 401677828 733134695 310203836 713995836 975322923 979401808 470039435 756820074 424855429 786693480 989175206 990780285 63583759 262118974 651710520 877166514 231024609 382949792 198079633 666699341 624334712 679603500 400263953 593888136 190168539 732304470 496469645 974036157 772719198 935980691 550511745 606057262 431971923 884246948 662245415 921362772 182363959 992143890 369998187 621184537 46961072 967168938 900977365 995559169 247527950 734576441 319306329 776778558 929007555 976516895 386046594 565159933 359161324 520193214 304563223 836536095 324659991 568827085 250297199 829563820 65801334 925258665 118008004 434504342 766542298 774625735 703149351 877264079 706432468 732252173 801293409 827739167 212373890 730913784 692377852 825812203 998283288 999271689 433512471 585994036 102776598 585170433 824056751 964243380 50335263 503257397 869239031 945014554 111513509 414659132 629915679 903366070 862551719 906877973 958386521 997458363 747554296 846251412 303517695 488345663 854438073 897830698 396361006 866174938 85146460 808203688 137034509 221589864 204695723 937038015 506071014 731267929 653059005 773670634 620487515 658486200 643990690 841027243 853217307 929067279 634797118 730975673 952335509 971221164 904447437 964403417 507114929 760893766 306469238 664418850 923252218 942101652 779947559 864120598 208147741 302743469 401168469 843996446 206229585 708346173 390798898 598060318 330913901 435768919 77020859 697903878 283682816 919691263 291606773 595964154 544330324 966988531 589373226 976038021 739525163 965170048 607686638 845315311 422194738 599322392 940066590 953997350 1549762 86915383 633066707 918106587 239711966 368583908 786746132 804495221 200305229 966928777 900968787 913522544 298349059 723256530 820882843 942347549 865871809 899489700 516363046 794134756 992299638 998408774 588486185 592710520 380897956 970813093 977743396 982064642 319383029 744642477 918874485 946814524 134523758 654862441 642247754 740682525 964041781 975454205 16050123 548626954 343179880 862667193 909497204 953347015 11347868 772053349 63966525 975411019 904800464 941417216 751699791 886086605 591923659 638240333 393649828 977629672 249155424 360211008 484404973 544918010 427387295 948316557 404503402 410752450 363049007 434743547 104834554 368839255 497199178 700903970 299068896 453152738 337172011 422059587 996981013 997709913 748699212 987045664 560417685 776726377 521096637 738772896 75355600 123270369 440243623 894528188 588005111 901038294 165753159 850073920 719480263 898675278 736869677 854688222 121987794 178151286 971395680 984694914 464342812 694718641 972998610 980501833 737674701 809239157 668829394 873725799 904106722 980844461 519617669 888818428 332704979 472640090 374231641 700605201 66079829 508684272 142440366 537748604 385836641 758352504 456198213 962441023 901389767 929470177 50906412 73644710 992399609 999550112 993270557 997529978 820910266 975807971 632036450 835592322 350472925 881790185 544696254 840665749 65500387 910046158 357915331 606308586 62044188 955062052 420752171 436267570 939160857 972543380 575047733 842035116 994780958 994788998 204581855 801576527 252990002 456504313 524204852 591136231 65873339 680040471 837917422 872402824 433381627 669194705 660498222 660736946 903766457 936207471 123515628 990659941 703307952 793266723 985439975 988874003 534728350 643942060 249711749 426625027 129748924 776187424 841659241 965955296 145442462 678622456 51381154 284952422 184770402 487599726 552433209 805997201 440959511 878509213 486243173 679475640 457702081 544214087 788865906 929140842 203970620 446955788 372730678 629976442 298904273 704408218 794059414 986780582 688136887 743887521 174489139 516081163 804988495 959178687 854286364 914407986 189766883 864158310 617274600 657160746 867353887 911274801 942385933 970689918 701839766 717060883 43877163 394625324 838535204 871032467 249208241 619725542 916746786 930576273 649225313 938639650 941895515 972148184 964013444 980383576 86603689 665168077 650954572 992633154 955341429 986501104 830228328 841326747 521463140 832751723 26119846 68410372 11081256 360330937 436242565 710489941 175957625 795378525 320262281 842775354 259621110 764655648 989338120 998875365 485841911 929133830 656568247 705502363 542524727 822841145 928723421 972975040 918661783 922384006 365473331 506904380 513513314 643391518 743913182 858748506 252001829 597344424 683702755 770696884 284196402 592722691 958082204 977303205 805664233 999675722 100881891 486063122 856448653 873234466 862903694 916894063 920911227 955176016 705104194 832996173 68322785 69754745 245385393 965652785 89655238 173732921 364117631 807145040 906603947 907577621 857143833 980674631 32294895 975504369 429984217 588008601 449938407 783865188 371726837 956625518 483050820 791309368 427139367 752392564 224373391 389750250 466645812 846696334 831545449 928659977 192862619 917856475 322132127 717843284 276822147 689526926 835077837 895319640 744367191 796006320 683395922 754419346 94628215 366088735 94031146 98565066 834187617 874636002 218361580 846999206 106810714 493127999 298585921 671753757 81552868 114924954 296686081 374982393 293540206 432271361 607731144 620850970 675572381 913937270 799260427 815305364 458116112 597239843 693235142 751619249 433590517 798820508 67183704 358751746 189750012 199727388 189466951 434717698 751976511 818355296 101648055 358020379 140838320 571133115 564873831 798801044 931954312 966698123 133049154 193578305 430246176 842028461 812129218 978807582 394048925 664664267 540250121 954406377 418363788 909711199 401826759 892293753 869898419 999680571 551859951 901213239 64706741 833493687 347228488 707906922 99777495 851777454 863961442 863991316 773499617 985756736 299516325 733659600 438706531 901790154 843242205 946291567 499744991 942416765 757205691 949401120 82218986 310536205 45713956 638857964 518272097 569186760 898386265 905781461 38404546 107221056 465837012 712169333 748224546 904356320 438261066 721901094 300760502 443768825 986271176 996400247 473284199 990811554 572285607 628735247 796807934 817904412 424310294 756200237 855065644 953955092 470540656 598870393 687418902 721145385 905474296 914940807 874113667 897833042 118017116 820642661 42019666 366343097 962670088 995336763 510113701 693718710 402565063 955426344 494087706 744615413 261877652 786323537 112165429 271383971 63395686 930495261 732044405 807784291 207497655 513978913 371188085 938909776 547821708 859641629 60580460 974522567 140688982 676362129 72638452 662840476 949592873 956002186 13896061 414258499 903329292 927615237 503387747 750201015 361238268 791841305 865033426 947493797 819976276 834197160 445342856 696515277 885053993 961304673 732492112 946708767 473588561 934945335 501583786 922456340 622225297 803568223 559792387 832500308 648222806 996962691 628261970 859735249 673872433 894312090 996046405 999450766 467506707 816346567 110779621 758891548 224804203 723445634 136432627 793034197 392169485 941048371 767977377 838087878 828564826 857055833 240408063 511024033 858779582 964456056 804930151 966928294 913935731 920882378 505832482 872638466 495983205 636642339 299376539 867993073 942787184 954756982 568020249 790093401 446736998 690277611 316099908 581861870 266141811 432055208 934266150 999929494 874816000 969419266 509072163 810995765 970082193 982705590 709656989 763148630 946273375 962226087 902494270 907027970 35967599 324608804 197210907 358736227 563410771 896258756 854612424 907988534 65880443 426870293 603557175 848754171 990237359 999943457 87833897 205810827 857686066 988649646 919645202 940734636 349050828 909951648 533828655 788960808 983683542 991814320 307423934 591144359 140342948 311426716 829585805 976124173 997387001 997459178 607231533 967336001 946094892 961592829 523057205 966856151 32961259 695825908 536779823 819524569 430677929 820775432 866369121 944705323 457720895 609947997 817900093 820682512 667316700 850050174 961334302 988532442 266561308 878703165 413478595 688162967 873997639 967398946 724122495 988529156 869348737 940496492 36801323 524390213 696464020 975731320 617184106 796263053 671825838 857791379 280275503 819982122 96327225 562614271 564503164 704866014 50744112 227276780 306696291 917343270 804520501 809077864 347460400 980706277 229366641 536678325 181289615 593569032 93686212 650873434 629677462 687946457 804548287 847965848 449695363 701251519 444250987 693249389 418576823 935564212 788164184 880569501 768809994 903566645 893850065 993468446 669647103 755435151 286132348 905954635 352132371 854221216 322275698 738877877 589393659 998519850 867045182 993123486 588848928 826569698 884384672 913214213 917181687 992508598 549750033 583115294 550391964 882851270 373604686 380701172 771562117 784438579 104594752 601606751 828167820 872099926 725044379 799386092 856440553 902645181 522154876 999713347 406137373 815717006 476292719 851506740 742715598 804437871 337028827 938827371 200988457 751243472 317269726 447505093 841685159 935806302 675196591 857311970 436471338 647065063 679070185 881922045 754770504 820448589 25664368 719664911 232378045 744323806 937004184 978291866 425105120 664039232 835888783 909851709 765732697 890631770 803697218 877866560 45711726 347231341 816236905 919678682 394629963 399551756 203088146 895140127 269590592 588305724 862630194 970041594 857853167 950487136 407440390 957386825 578458199 638006750 580705941 648889729 798812115 873548779 122239339 998380767 373084002 782680370 279314867 769422307 320975865 755871885 591145144 759373011 804135518 805458202 891721721 912017731 676620279 825432537 848439850 971760257 382666874 635973156 15673200 552078706 752054303 896028218 157350774 658388061 190840118 360619379 338555196 517851171 15496761 601361900 554472920 691992018 581842734 775095315 533142289 613745989 303679447 830674103 969105954 980851004 24643379 43263474 47016373 939818995 370219542 731959915 847182244 950660961 985324105 988567656 983006993 984651292 723492382 889325180 824082663 846759874 102170941 552824853 203408835 778689086 462324869 488512557 906181344 970125320 134553954 602241679 322648561 705570945 371774417 778423059 337594105 384597009 382556317 937777559 964601359 969678563 607862065 889151219 931989884 959135942 796556369 963095917 624717693 704418376 366236262 547359428 366778956 469118119 258209076 678357849 867236095 935916580 847876386 962139241 211445177 833757110 58521507 156921313 9177371 542371932 921081391 997138441 941041700 962530642 411983554 840713333 84446201 944606332 641081090 644501156 733149604 801033978 676176663 829482129 675484744 719790426 236459936 765852686 316737144 662633776 682640179 691621948 26972902 434845093 320869173 789549357 612201651 731226418 62760058 618998791 461459181 731782223 409747862 700341080 516082782 541928446 360188702 371902927 297885995 499571829 443970729 595728827 483993100 978856632 785261896 904131046 773328713 811323274 419168676 547703533 421448130 814879535 895844894 960160231 370351752 373271081 862267370 925895156 933653141 991936120 331801054 511744063 285189782 639200224 93050615 777043025 924818790 946941676 860606270 993228868 177382699 207221967 703709784 988088216 211827696 521532107 22704437 754063901 761244095 908119133 213204157 899539709 650562572 827601181 196353452 758538564 782039960 983590450 505654968 690191862 246924569 427763100 42955756 848063126 754034379 823175970 737165656 882038677 708814637 781549230 209160378 871270987 520309822 575449601 42033402 251987142 878933004 907910715 365447621 821045507 439764847 609929832 68662490 384000058 349529828 415714231 246164280 246384100 859529077 991259593 44699549 831411565 764777727 875133640 779825889 782686728 270743487 967127296 602585865 907191086 778856442 849854834 332312287 607348331 715883998 813968118 975953524 984497875 193141978 936763915 416752463 510652690 159661711 718742382 287983637 807506552 378254510 705784583 266858973 895253787 697947510 765745789 46551413 740313472 722392579 883340473 108389751 852224318 160513809 967615928 499825675 694005030 804834197 904253352 75400086 894249178 668693646 840042869 164832805 718490617 318319081 779034625 224909995 651039462 992036563 992345709 194194816 463926535 130441483 207763053 183774462 656054284 517536717 856603127 853612327 987240946 776745977 901474432 252077900 376615113 830963174 950645360 544390079 974764024 527171621 664632109 942151352 988934980 723901114 888730495 12078569 479028200 354390488 908385038 54478706 439076279 245313851 553902341 780850822 811370068 368004868 976041542 278951165 532299192 39937943 139527683 274544171 620241823 843241357 864395407 582884861 596643593 336704768 503478882 808207475 833351189 34567002 115861005 234896959 296338882 735221116 885685587 826084186 853820306 991036200 999284020 938137380 954309910 249756924 581638656 28828533 158856265 919028781 927947445 576907270 738659035 564971554 592149020 234007762 879787166 154077723 195331760 189409519 458444842 890434451 924101358 484451051 949471863 695749935 940352377 582036569 680638813 894753666 899930907 750818410 872331863 974035984 985232807 952135667 993648107 769175902 810687765 985532211 994332003 196520834 360613547 229402455 566257801 574154203 611125534 482146759 495960632 447267179 787176585 478696877 707533807 848331759 852865346 898086290 986436811 353045004 371322716 840145967 864227686 485078602 774111331 553252418 907927874 769145729 847567253 94532395 907836420 960011917 992169286 23535001 947264924 548397096 960600084 599320107 645585462 562442113 836246894 499248673 935382504 745123997 831849567 832614596 970647995 259763686 845675005 929833833 974880237 503155864 809412545 870261162 908896619 603164958 925965537 226005050 407246252 377435171 937504581 368571127 963326448 338285314 909106237 887705389 890833277 129940366 776238740 199253842 620366604 457590452 822956088 763523345 989458335 800438082 804412754 346994095 771716306 932178942 947532126 934117659 988672446 947282201 966042920 235026685 275170766 985597350 996665779 855237991 884951280 826529893 951271292 963587366 977038204 867343392 894465170 885078494 930672758 20913350 455461578 862106294 862991844 512439510 730582794 123748222 656225672 878163555 908218576 213958620 253084121 972072722 990549712 975274995 995230554 506606123 597663051 902691397 992820377 18358466 108405182 623253985 900876684 234025355 408528228 221884187 943962808 64903514 498759898 112143489 793122242 269281507 280702739 230992448 975678185 488455642 607071278 334947807 892625912 789154120 906978190 91966068 762137928 649442365 774979491 636404994 732676587 774100929 859208802 62304858 297548450 941792154 943087137 547133244 919524603 586762846 745230849 526249381 883014129 664811544 910857048 869203125 887846664 437318558 981885577 824073222 964410649 387544047 584099715 159679426 853249961 461634012 805992307 799049029 907265208 761809802 833397172 426291678 793959368 558330233 617212403 260624174 408207941 477389551 694203245 596244008 964637600 114319726 473548935 56927539 871345912 214497626 219383805 230758351 533689468 664483467 918811643 258563485 777529332 930360563 963412346 637576489 920451185 951216030 967606058 254297544 553106482 412347592 913396607 981513137 997657834 986974665 995173432 96753987 533916741 401009273 759241567 469800712 736928833 900374050 986166727 895866631 917257538 761423557 775495854 122784889 638394721 430855776 603821684 538782862 708786167 599933454 868388483 729770803 862373726 851294686 929131281 215491810 536029377 66821311 187152552 497759209 611205971 66661115 268639684 915183590 915937597 204586388 596821098 795897126 952151298 990782968 996779701 909981496 958338718 455609925 809271164 772477764 910393671 228565064 568695191 221671684 697880640 544695602 941127406 844291562 968652613 851555593 901546739 175869780 209567781 399254822 830107081 435717462 996086576 298140769 469555129 40746808 119285678 399670374 551745092 709713160 782547418 941098797 941999636 44234587 206248920 973259742 981767090 623989786 874271394 315689210 978594574 114017949 444072686 721441718 822271236 937577216 998390271 59242299 478342757 73939739 330563238 243542129 374738058 925196643 941844060 512534586 851818738 208748696 584753703 446769522 489153725 110142478 548453388 66531460 578616908 808701308 933425866 73114369 668742058 513708886 654120938 917125709 995220280 780812532 961576978 669098196 718088785 500219427 957472832 45651156 857117306 999802815 999936202 126895707 171403470 28696243 152104115 456985952 869140387 962378327 999897288 417886529 533030461 288320526 987179774 473798941 731217676 407580356 863567902 500925769 779087806 602168868 974811636 6192653 863428499 963277931 997053298 264471985 472981024 704815147 792690698 5981907 207757076 375972439 838532929 108281848 876164842 690762879 872449729 729730893 844804978 906825714 953385648 303204386 440069205 787744632 886093890 322718437 850912847 824010903 939302375 943912032 952921688 711547960 859973891 844292741 848040282 572569168 974295701 838869201 943880493 190296279 393676960 68575733 762976363 822463146 920641743 533293188 640803575 540037620 598028962 538162046 620947751 497399568 839013036 664930237 924296681 804285476 852198984 356394903 915266854 305172743 817965750 671707112 738502502 912872767 998800113 715452201 922829057 506096287 700427949 410720317 571186069 931545365 965648241 52824943 719095922 548230544 584290742 647727694 905672465 736261785 911112556 154190517 561341709 696636551 987701690 332446487 642819085 853046 588093308 222009633 343360242 391779032 651250622 81746751 266890656 580225504 690013993 949278106 988908860 667026936 739283480 403947848 406160698 747880574 905476841 930309044 975460951 995416510 998249827 905714023 939796772 502670185 694753752 127655070 919745579 303924848 456733499 566813223 637711397 841978814 907724879 529471701 713502392 466144366 784720555 741476630 828268172 260768940 851607081 137515646 556658115 237866379 922337349 950890877 982128937 256120272 452531623 28717583 809010190 978371164 988997369 960268506 961974661 540207143 920478577 46267446 843095519 451129238 714427770 681898747 798253291 474419647 795612165 941958704 998005669 570137509 617630280 617993196 629152660 404269356 935814472 513770137 610485557 848104299 928375223 288889567 944064925 709802150 902779637 583791148 654099631 984971417 987750303 893843834 970232501 561501325 997982697 956979875 964311768 320105281 638463741 13536913 120508434 744843018 953457056 30073077 743182947 187950339 653629736 339178646 684589059 332112236 638699657 592976262 634733483 110567405 181646493 665767129 827733621 917416702 935504265 557116628 831015729 791254379 980123215 729334626 754126520 796281216 911005629 583080134 896309460 658686751 988208588 845095356 930384250 141776253 945531957 980541640 994928937 767917317 997919154 312166872 672350911 411602461 838236807 507168098 804674331 305994281 878676706 501468056 998703281 58164516 923561815 552817143 925494271 863296711 917337088 857458013 888821031 390032962 971972232 277618470 522368095 39606913 98129317 304366230 621641237 573109160 631362251 14836328 400550753 32378902 568990596 931039015 959036202 85575716 227910329 632856450 703865091 996672411 999858231 757965400 838322611 181675652 600305661 781098848 893100466 846675606 866190615 729756903 808230386 501873174 729340041 169965852 508998770 650999940 792815738 314563103 705536398 835228687 939562106 400285968 586942929 533297208 546587727 17449582 56889899 501195180 622740285 591544979 643001648 746162603 910645871 40977986 729625692 558286062 567459683 121690074 793517719 404248996 512360875 349095196 914586974 395560402 901720007 898848413 963732542 141200034 202146874 603483802 753858713 197953507 695128301 706242667 871699148 816072172 946601930 588954695 654376074 349165007 790802973 241226202 919497952 364649947 857189599 32939334 811787081 109189792 456885406 955519165 957582782 669839283 783760345 597826383 740389928 567758748 612966654 31496417 558553091 607897956 952318088 536251344 813710199 271022847 480849344 282360618 968852694 506835594 686395932 650092679 788344749 247986918 291348800 849415555 895283113 319043728 463206820 631082365 923282037 9299988 334127373 249960758 266403563 129269011 931589738 304406387 858658740 269525833 477157699 432907416 497247595 612464183 688849272 868608540 914619551 772167555 800260550 170374823 619860052 610531149 649536359 809390098 842524556 802455177 856364448 576319485 760199916 278854310 515044245 929630459 957498735 943184869 969059732 561507515 588614186 241515230 988400366 79757819 152578270 387528254 454705946 271049045 828189864 515876654 957373764 350181346 720812064 237998712 250008474 967293453 992260713 28315174 109144809 501886523 939899101 721813881 898144339 875517016 897098046 646930816 772493210 822857680 990569139 996502063 996777278 441825269 472367938 503221845 734422101 783976246 838657123 249594526 283386668 647070418 923099765 75977682 228913767 100269443 527631433 19226244 509214778 516291241 766914491 477888907 609299989 613939424 823667898 523402420 812609390 337011675 457303074 125753500 551515310 463296425 716534058 283999181 497528750 986911161 991979359 361515601 548054912 433785456 625828730 87269927 218427587 453843182 552951377 377592331 474393137 728986365 936977457 595357423 983131573 442269437 457995787 417235325 915681377 881924640 974429146 333500297 713806764 60698805 145470214 275928996 912146257 686585854 954386401 810477651 948271792 99425174 707477759 723007363 894097037 546953208 700939247 435374650 724279739 733169671 749411301 572099028 589850151 819815499 855202186 778974739 857589113 26010661 547033880 271656873 541843635 470382477 484470879 38702419 875068232 743985467 777667249 70921501 665773256 237126027 574678157 458660208 495926486 166015477 612638265 119337257 786884097 221930246 912802941 288198942 631480093 479779179 653105306 58044914 367040407 880239483 905949352 840807830 939727518 242999581 665314112 700532434 799266485 957488250 987419857 472261916 981482803 597353924 986594576 750118947 912025230 751056656 829042523 204241107 478738588 700139997 706239915 978317709 983007942 66512926 921015072 358645197 465355812 466381403 731174802 314759405 644584015 699388235 873318126 790012432 950945554 697497508 842168218 308915149 431770058 70090528 135383028 124002087 132896071 634696528 692320883 50879735 617023988 591099925 998309224 879964476 972464918 449875119 765600936 239212837 886054304 258569961 414998085 781177145 792443249 998236965 999097088 566439783 859259850 594866559 968898536 191174881 520223358 767071348 878915763 306959701 895025093 471640143 567074959 76348700 224724029 944301433 971093251 627038195 913261717 100751899 337004329 289170031 639279080 671801924 814561017 988174869 988181931 257919700 466254886 763718718 822546398 234263261 521204842 299831712 691449637 420548478 824602688 682019681 979222558 22141885 139063674 243908341 370400953 604941688 830048841 834340139 836321509 49185976 286664295 558138746 625851046 348885519 389803900 531589308 784198087 655098546 983948158 553571867 660659385 490439346 547245574 738112843 992694154 407342186 945958890 367524306 980645663 229133147 531835203 44530520 985313169 493983654 631606462 207560299 244052348 953547399 977079093 757560278 921950140 398111116 929863885 105208547 997232031 66911762 481343360 507867865 634818877 723952619 823475097 789984713 938775303 611932967 934826474 750058503 983897061 315297263 491933347 4976396 843636240 191637492 881028062 268624231 408430559 539709739 606427650 713358539 794894840 786044098 907049361 398907003 426603705 287542379 401422159 670168049 899976243 207178919 482494637 542612174 622152996 111939368 533659031 786923296 886779006 68876647 584947755 743079787 983160910 542684572 745583477 36985303 463049084 257203639 755338486 794919811 896879664 851066649 924149417 464323879 844210782 715753272 773326522 641366725 797782144 312627719 742318574 440345789 746085378 37000860 124318694 857367574 994886743 537759943 908772344 303978985 391820326 426424721 805657104 764959152 803225535 447230478 574139349 338147507 411285821 853695331 981868827 742169721 769219734 88670976 481772254 52917396 865386929 123939989 801829706 585319798 851159153 551591167 898016979 657232179 950698112 364423231 569507000 87133911 433259162 258863520 445544781 962471904 985518429 151274329 621399180 933815432 989005575 68853761 996868892 751584325 873479000 661083 98241972 815579283 994796805 551010031 551367962 92323011 365381460 238973683 749701700 111705572 319724636 272332174 398399587 837402294 980050789 544203934 554949025 137864193 471865292 794431554 956128619 797124658 907647917 11756695 501278025 912064890 930379821 951877594 957639450 853401162 931014173 591737469 628499672 270233296 916449288 783911724 797668607 126253867 921416347 273998167 423203958 975363215 983081314 287272607 953063427 755067410 856657110 26224400 193557345 444395297 647933738 905929907 977261317 28551288 48512717 376328276 518176458 922259007 955507798 122218435 985719902 569628707 951937226 559809884 638784344 208458714 760665386 464398138 702496353 235261734 498279162 851636034 964252695 79570876 282585377 889630287 968458359 812018566 928077984 762697252 845423349 374647912 822442992 329256851 658881144 738404900 851843344 22246802 287168237 444565041 873546782 288124347 541957041 287738276 954362174 533808886 949051862 395905044 795002383 29839828 421273449 247180665 605367271 534755407 900832955 507682137 701431789 266096163 777722027 774711513 926602144 408495879 724083889 220827354 922518425 427989772 907635169 699038971 932074727 476747425 976845638 43566299 423320285 5320486 378845659 855283278 933455659 526211346 883745376 667465828 833337248 135303219 857900792 193814774 292619724 21384710 767824318 907815166 938308097 722202962 992925092 669211973 980684988 75999039 775285205 50544274 975075256 236604470 797229435 657427910 808549855 141570671 949852727 63156638 852330014 15867425 292284560 673929797 760597483 380232117 752414296 775735540 780064585 481060263 690995107 900676517 900680600 727092908 886198722 610872024 934426475 39110014 781402095 60912875 958663673 534291292 646203328 326259662 748402891 525465374 782718868 164265552 277692274 823718085 887688197 721351646 998348763 190618016 868549454 290536894 568372463 109993581 295346644 922163989 978496760 942325039 957414594 6337753 916394258 165361598 863452904 315647324 685582022 699127252 812274731 365418504 590859619 260240374 392627511 380436362 519893167 678821819 743078288 601732778 951412656 806765793 893742737 960372439 977360675 251354394 331782742 676121711 691252119 595499976 818172898 250390374 625023119 711642227 952383430 983298843 988838714 25518858 316298624 318465728 602756052 492356803 894636301 60485020 203619345 66563488 257020778 722660657 913454754 655064454 719067533 127457250 619981613 423836138 472617088 896721603 908776204 694384846 803190458 461469588 534430519 703376248 720530987 594429481 734048041 491566711 618277488 900621556 909646072 12650586 809568098 61311905 671885548 542325260 636643417 345347233 480313789 415674684 615209346 73480462 460561903 304578179 800510139 646919025 677517659 768710037 960990611 217955758 979056548 597481024 692608329 485553630 885573538 855443210 914026113 352422535 951529013 168952231 588086339 323940873 613612217 682795736 739776563 56327250 719943874 756490623 989012425 954577473 976437077 789332992 963697359 234081336 282810470 311050168 516899380 407819908 504440787 239942882 273860813 614552102 841930583 371546683 827191060 394550773 930410913 432192360 898077725 782505292 914009586 553928887 602687032 419522327 749260914 821236291 846567588 68279535 330559316 663069753 930312632 7625973 756526068 667996355 694524850 885265235 935981014 2613062 20458662 968448735 968547888 734427831 962934887 347076092 698924792 668189651 738753115 382487090 855568111 950731931 982750339 936997009 974529345 779654214 785508069 422936614 738631786 787096369 830281263 609748419 955071845 316899652 761903007 710664460 861569054 400805239 414178152 450848330 960900663 960434534 987293699 64278168 553776864 544889097 897344308 943352262 947045853 931058021 953711035 224747041 728850290 571184844 686789486 677243193 690519291 977390665 991135686 414399957 662116377 245071220 954291893 816565934 979748353 717723923 842740266 576670914 744009681 222626836 289100309 723104804 874691013 337275542 841493428 655581404 951673005 465193654 877876789 781935729 849354598 69624577 387975227 244964504 577348462 850268621 968604610 762169640 857738131 367215713 596767116 960836274 986869753 798218470 903566279 755488311 863346357 926953518 931340406 115741729 459159948 729011468 745771870 253079070 798303290 996576431 997509800 647981464 930060387 106285860 789340126 252264067 721359233 10737999 643424907 417771479 552399513 681354746 826866601 626372415 833006991 169542433 857307672 583527985 651619438 457042941 663153160 71057541 441023779 677438098 690925779 493826608 999758821 526354754 825449173 837861482 972178739 425900432 497380464 529936735 984706971 347792018 634812097 434617920 522074854 447745315 544115452 208989413 449201233 71849472 299649464 976892641 994682373 138247288 374222894 968291417 992266049 411830887 865302665 126405901 742502129 769929951 818205717 235108573 417626328 743330655 977449742 929837070 948145121 700371956 895514930 205821973 315091849 41360028 75500835 406668898 651076307 278122821 332645811 426629892 464202536 403903159 549776443 198613455 781901578 375316055 903002928 504091181 798120172 472004382 774785012 964177109 979622202 578656674 623644001 688593900 875051030 711449696 739824187 55245517 217590126 817822080 980571918 10572827 536281839 164876152 630768228 998076835 999145949 132498291 930770001 237491422 514000590 375537373 912225793 552213089 881402062 107892401 372776586 11135306 813260195 17355899 864795741 289080445 785961226 36871623 509467424 798711080 865322283 650922658 981996960 962133404 971958769 226838849 835733120 976285769 981118200 200933544 334456996 45533068 57934241 716086191 731871856 281746863 882101357 639063475 836470403 720913859 750001900 686746369 796728295 389163270 991647262 723932583 833573211 192244340 330454018 97045105 875623540 869414661 984603796 203906748 440162677 230520592 964441003 256219511 514162456 680054537 947935830 684474597 921351331 599416740 661911370 796705887 817656414 309930319 326899340 670459955 702419574 787155213 856632983 81305951 526982585 836801733 876541680 856690934 976143254 400803866 699802689 897239333 911290041 2862882 247278079 530789951 801422871 862905668 991602676 306780091 700504504 628569887 724227792 395571122 838953094 828870185 853604785 44628680 395772072 340802836 944444903 801026254 946821103 883904362 911519434 702684445 814638528 17887411 503267413 769700564 920620052 53733356 363562502 550025525 564667596 219930276 766182220 354239298 674541348 744194360 900770881 566876328 873646952 60420113 90498618 432518441 455210004 858012548 966976070 526970341 542315655 874616151 895205278 749946116 987381880 110342277 546424329 56060408 226702675 8823722 440647664 124957268 245347353 433039806 472812269 302994744 958517983 463952980 709797632 178624831 227547940 558688474 962190690 278879086 908474376 755017834 846900344 804944377 953164549 156900904 681045449 252589345 601630083 49959473 725625620 658538901 669856161 501975599 548843864 178628296 871444592 388388350 483782454 753398868 764670013 733956523 764687243 714608526 909096198 13055770 620022719 308310214 704505988 76220750 338541467 261631309 495560737 189165312 670808750 836571705 850901858 781296078 959670705 182541005 424221296 300693780 864605054 1556890 343970223 479577998 573365792 11556232 190039101 323937456 990157913 668243014 869836233 637183673 745405347 163259552 824783786 316194951 720723188 110070543 844554636 19685600 651425049 477301988 547150398 810375707 864800709 538543040 705025099 775595627 852591191 314563791 654418887 119744850 588552528 530261899 741826683 859868091 965045421 282211198 659481080 461289113 529045075 205285618 887684428 97971260 919842582 360437433 788762389 992875756 999341384 281966917 524066136 13509875 744296759 639782441 929878533 225237236 969947205 231689912 341788888 304103549 424140449 416400036 589378376 312945289 374853626 148503864 567020266 498230968 614565096 634892882 715481250 964341397 971884347 995250598 995922841 349839878 911277878 324576883 431305382 505273467 928478550 773509147 944502628 649836029 891445840 174356381 672424961 639994454 822966055 611617879 764951928 198958527 921307679 822263910 945632347 893125949 975844542 100293430 415303856 128781542 230101782 819644770 842425385 138433241 880177423 257958628 268084574 899919578 948681109 558410522 756713910 785809175 802183697 363797823 565208016 873614644 907328033 619800581 625203791 421181642 953284781 285339574 900569119 312810740 882247584 849616625 920357248 2319856 754659251 776555800 806638313 83543443 695384443 312696937 935163120 972834965 987347046 528048551 705772502 548184116 634197312 46334532 894086449 540384954 984014030 86276172 852920304 513726681 811909397 787122356 984425019 587755599 871985125 829892640 916564463 305675857 610888123 459191342 709297920 277398636 948258566 140490412 904334763 358952629 449033298 453416885 938355123 303457536 497087730 817803212 906553067 548874988 849998655 918204695 998498826 385054648 899873451 21805336 72064475 400473403 506265597 218901752 394394903 878021927 923557489 917108655 927011241 256572992 677214382 380777445 966389360 655863379 674263680 159781304 540685674 582606245 675207444 788776273 909240483 975134179 985224786 837106676 916997777 871004975 906583566 843016598 890048794 323735876 360508847 975609599 981343081 806331530 818019011 94475670 619456256 93507032 374737095 457635236 924226764 649872624 684144064 179909746 247832267 690172496 888773459 866132310 904929985 663193086 842461634 298610184 903348595 927776331 931315342 491311675 678294176 475064537 941862151 634991728 862297903 756636230 909664739 795397868 900984401 484443404 824009644 542248118 758941093 989895870 993947211 542136344 981361252 573930780 594159849 915099803 973948325 223694104 575058192 953957525 983251318 117681811 423492664 813168688 891418878 978663216 992104758 447245561 467862419 553034359 787666853 404731001 732194692 468870727 745781929 364569578 951450049 297870400 416024119 366777757 778632517 288912951 909521969 72269612 651270027 316400784 709245029 123234752 564403673 758515765 999891120 425003224 532567568 360654403 574040337 154056709 334185009 669131421 768555267 334290481 524129343 165976956 663976656 633830609 664064463 801135039 890716776 607362275 667662469 385717398 702246617 390072983 616503516 666644090 940710111 146426101 776043592 708024109 720967124 140826954 206765304 404513692 739458403 105555659 878566829 584522293 663458367 314184919 841372136 498813002 624756473 611432692 639968420 912550680 966234603 354410067 865052755 696473084 721106399 548093680 628701141 398082073 828590541 359767690 785408276 181517574 424028614 887124792 948171331 774447105 931498846 864669630 962772071 447035461 719144771 956732184 963152387 504828637 883263065 989528641 998746749 485746912 527460034 458696448 922030956 195980752 735883122 458740948 750921138 940586857 945182071 767044608 796236196 704193638 706342639 27198182 353962650 998947382 999228902 230953269 777611993 243978120 341583590 944037844 945899570 419522933 676775292 944819517 991888588 103593306 592648376 452211301 703865887 387016150 980818012 316936366 800121770 970349986 998264815 722153551 919723806 761902422 844077568 105236626 809577300 984109122 989576635 630509298 852136159 838015986 981364534 334243193 527822180 511834084 732247391 197479288 999055630 22440643 834393391 739340236 864954618 752110290 902122520 623897044 828543678 57547432 572747074 459348531 612131035 682126807 691593356 960892889 972338616 791811671 983511621 754766206 851600622 45997275 107886453 246332582 762067406 397366438 665457680 380681094 934308549 710363963 928601750 482349973 879632058 646687851 663714251 156887058 666741241 244112435 842030228 538781299 967303568 86795074 547188201 730741160 770765909 701021401 926679632 406130102 992178664 294677622 306562867 266071310 648720175 116271924 968811895 57198693 582355490 126680101 545020152 143582635 414595291 355496170 960178894 265278517 507089518 250055540 537116544 215178890 465636460 420383376 711339338 347704445 829217326 460782081 655757542 34756842 157533594 526037570 860539829 842524710 932633759 768737437 809570651 279790994 708430644 399228536 521617875 24470468 210789350 8450860 831858249 49580247 776206907 639172032 985421286 357505919 381612474 555494410 954050267 103428065 226624904 835662857 937502354 902668619 931518677 2712877 541864523 836887955 990174547 533022947 637149376 881606524 969601312 770345627 921214393 113087332 199903490 231011352 945441133 274889751 412677013 888254892 919081756 716872144 969849829 770219073 811090532 406829551 612870342 542466442 617389604 236093694 448047481 481679326 814730054 752340108 887690659 512680739 924717421 824941887 912547458 502268296 927045707 775762267 779625822 805130148 896007151 896950595 929658790 842041952 911421709 196722879 396832241 606352218 858070514 865705553 984439981 100170780 439170427 796732662 999010877 212699667 898873963 14862793 477334537 4513049 714822677 357735286 623944223 599369345 830526086 411048262 927931263 626288623 901822347 61716816 906879091 151536517 188369076 254582123 634378689 590413654 709404842 511514748 813911881 654772688 945940756 940678123 950572452 664626955 988677542 973829048 973954339 95416598 299495211 892668860 965268706 578690202 993698483 10991403 784590746 888121123 903929353 451423630 969842373 507711740 651226512 709364224 713891043 399970707 780656040 119452388 622198506 749293315 877932286 853420757 870893895 667860451 828242027 932560591 939798701 537759685 567625071 65477191 386993700 499029282 901860866 263099746 330851690 365076225 705831216 118238631 664440877 343150326 469858831 792163808 888230242 670665351 992976662 329150307 680904895 834540853 899860337 622530453 892370551 193722302 237563477 411163922 878628578 8876947 465729568 624260159 787313527 800435035 814308749 399129747 515814510 606049946 962318061 561549263 562600180 515370629 699762307 15971274 437469057 747590184 980231090 979506854 999237735 604958209 827767524 753261016 839223997 562193001 586148369 714943055 993364900 122808221 714402000 316529347 604086436 814025165 906935095 480276261 545677227 277651183 307634979 718977814 868431344 469930576 624839480 862541723 989709811 358274327 614208153 786837577 915138753 698406557 987973550 124739115 331062424 738347098 765858450 361081677 430022369 147809904 950658412 673552094 766015309 859249997 961193870 64760332 838494643 49215813 620774787 465430800 858341312 308155069 594571426 950977668 961801272 400079596 904084520 554328366 848495586 996526866 997705049 323505906 941247062 724776002 749467110 316138826 375702139 229931603 949211525 23791071 348090123 904559062 914989334 878383780 922103858 209409769 322041912 603647026 990765390 768816302 981290272 914820497 937625094 589529918 849446658 4561332 178008104 835140982 918160072 832601349 866963056 385591803 457300202 266386080 612671879 175799939 599750202 104842705 326027256 291900624 623116771 493009007 810441904 627488110 759116144 718319152 723698170 989115377 997736468 833449625 876230626 728738691 793931711 788149697 977484556 505994420 924283030 312106055 975490296 546927092 765815882 309952909 482790027 672085483 822443419 271317927 362209796 754825820 850980115 136116710 965694294 448866209 752005171 206530636 399135077 574744201 584695450 979996526 986399768 44657637 279641819 885633606 976903369 847032065 975687459 200746488 598474001 333942568 338227344 843185559 978048261 689443943 791156157 88559167 461750922 88050474 246664073 544688877 844879210 393340333 613504170 694175295 848280279 234066165 604870126 522747218 747392671 82500097 734250205 945824246 987796958 290312183 914419762 87774445 854895569 907435330 970095317 317691749 963761331 568275038 841971227 85812292 491347521 60046791 559761115 27128582 29876661 590079344 752868984 46204135 525490239 663161163 960179217 799790527 945127730 577311060 689059966 645324967 840316967 835045140 967593144 679844853 884542874 290297919 532690112 265856891 410727779 581986648 714244009 384327026 656059004 651964672 982272845 878526422 934159369 707388432 925342459 878640268 947266560 382810325 893606906 828445673 870499803 859260728 930053098 143121092 176690049 917771750 975421432 181789550 633929772 394387757 542510807 887346597 901686923 582483259 967852487 519945738 629510808 55063737 515752997 722855544 939064765 63391527 559303192 813859402 826529410 773527396 925969188 619823493 932895090 879497872 931972659 993308794 996156783 300889873 875236936 76202131 606122793 810396739 837833842 860482742 961933528 117498640 492945362 566059959 648816193 697707679 791501849 494349697 975400704 856812857 930299194 152589274 231967160 563611698 758292033 772314209 875393699 539187098 825316247 58149203 236143006 538432336 589993091 204178136 514471745 787349721 795688093 885854765 925236323 790873932 966560901 858815970 977409675 714339795 725450097 849561744 984374326 127644857 910002675 52974378 935641536 362673528 670363768 658606614 775560958 451372728 896685052 777674287 794582564 795188801 922181602 521825949 718504178 767327516 783207754 283703900 449545313 647265644 688405647 920870640 943539679 269974947 945283924 981419072 998614435 336729695 601147836 949378873 964870561 844147935 849941652 665198299 720168133 227220234 554959317 277048372 966223432 620670677 900203026 417123977 883712464 129182506 517535698 551718119 833672849 468162158 753403052 92058894 144682504 63450930 195452939 821581372 946063616 962005144 969725461 589795873 868090449 136631412 272292645 225676680 425284634 443657734 933193095 499810958 960169299 281361914 489779930 996298818 998112395 568083692 863179786 861234413 974820487 958697716 994448937 832933918 878303800 125315012 754993555 843843618 923140126 508962558 944518651 687633403 865041150 198997547 640744696 140999463 763298690 322458486 472670683 482342362 551523213 26513285 586452419 563871859 850569776 838169162 972549108 929678217 994721322 33732560 157722690 847916086 989431171 219833639 725899614 502507299 786837381 689921935 964161138 822986491 922394901 59970321 232146885 452412574 758425177 436065759 894221859 890512990 990609361 801673613 949591547 699142960 962457184 52143962 586946297 100653089 234095402 598308306 865623780 434125242 836158401 746259065 971533358 737601773 833176210 969986306 977496039 566258392 722105692 593281634 740228062 298470689 391590480 218689069 981085044 839244482 941497205 436868186 620377089 162639513 194162055 323998118 622645781 699271755 999321770 703551349 968651407 48805042 939700943 248176294 284413824 315497003 645003952 268164760 863507121 273573283 669042858 237750789 423397212 740595434 806484234 175606340 445349407 670554706 856624260 842639362 910493568 903950952 937581308 658315379 920602155 562839684 955715467 981526435 998967669 431510908 697333606 382319732 849732604 652232279 894209702 841946967 855603181 595961212 812085887 314774942 576582968 815084147 951133272 724302835 842899567 559260197 673276978 157833787 994874481 499964291 661680007 480584420 602861704 513591604 588375142 999720769 999815885 651608427 654673966 928931927 937214938 472066283 675662851 940191713 992732812 217157256 359745445 331443607 784656260 421254634 792737022 389536586 798407785 983995454 990621624 371685347 843633479 66574843 828479732 632180886 697484652 209864180 322065179 435450221 782196410 687738514 889578038 861590723 972376941 886160111 950429287 6429756 59039967 380474999 948343817 602449335 786914602 296007532 620984549 825788061 945026476 213574010 504714461 285584958 986674493 6714425 160391360 143894927 323770260 681155234 807164969 273425767 622572173 513927447 828729238 252266770 940533253 4144845 964696607 852296565 966731610 844448122 919923532 574566479 591206819 773186445 969734625 627174897 910683111 502094396 677981941 776849325 844295632 172603035 359608672 350793190 578681871 829708700 971531904 776935574 802080015 123654607 707528767 86299615 940858088 336556456 416425653 953003089 971045107 28508506 402398824 635870215 999093889 154826030 734118122 525786309 988488785 155232708 961364973 68905596 894378119 931965105 954067831 130129668 381869734 865678897 896187429 841401226 968548810 517463226 850102382 305486318 799570360 261735000 333863433 119886174 975991500 639039014 977595686 579158235 593851243 626639591 628359684 819883086 944571137 918617701 989942573 114708648 239232449 439837562 802134608 841832971 972001199 286186235 801608001 195299840 242582041 94291979 167659259 688635482 941176919 197270164 822429588 366107560 604947548 318153162 877791903 8811977 45964671 514276652 537046840 102337358 914147635 112713085 847506409 419932983 525821963 452221245 869229691 877543928 892736986 550700400 765139192 930815705 985435683 219171953 377386527 152035408 532882666 165619684 307591741 903312301 992153118 63986584 217721849 763473658 932603520 889994976 973869900 302747643 450680099 514943061 755946170 332487165 680073505 294762792 728119524 158844116 899759112 922472230 952910999 21151891 512856673 927031885 961510612 10583877 58705580 116953264 661055459 963407089 983760511 666040427 990512994 687575801 695920685 116115337 461225378 515638182 866044158 60906649 658579464 455223015 699571813 219428920 798324790 746811611 851525161 386410324 986548354 235450509 451092885 316098653 630567645 437305518 497930601 789781449 980016641 981564616 991773877 312536414 795651980 263651231 265623248 351977178 822617328 575311924 736972686 309242449 727751564 63751368 202844574 487712810 637454269 265900283 392246856 405535211 659267804 397417598 703718164 898978594 909357998 264494732 996181617 516916042 887728387 847352362 985315114 758636608 881118767 81173943 844248654 484865058 953344167 920137592 995170077 545444495 873968256 855823029 992170180 811884930 856919156 189114929 334720747 134948623 920600678 18487537 640023125 155841448 806298554 837220260 927246314 341331719 697250715 982187211 997183781 240318017 751771836 717764430 738257393 637090585 764876730 32794104 883508971 683383830 989744333 862873698 933392965 811086613 832376844 775707955 959116859 226421687 415330322 895115631 934314004 236691446 258610690 530021769 812395375 336239109 456586733 880435555 993580595 483136749 980019565 438023303 769130161 520303093 721111925 570050208 990431675 198036511 219614261 485059056 764473729 771149871 905238956 754119140 820367121 125143855 975313312 705816063 787677516 121588697 734682862 989760354 993655488 985387607 997379374 655521317 856688642 589518186 799645391 484744628 485073111 73833043 284889342 804845467 917152990 148658594 527381736 513152672 863147619 631983079 993650986 37038912 358930363 777598829 927800931 356210994 387688169 628214509 707683122 507846527 798346318 342375505 992787381 128839724 449120619 686545955 737108330 511945322 875048355 151271254 457517479 89161320 510499183 829958925 935310681 812168810 975824370 668283821 886663079 887155540 911805817 381167677 516584356 889496257 997451253 485674375 899416425 830014973 918807222 521880139 523260079 437334065 719307534 408588951 525706226 705518076 882719839 546635426 730435809 615263424 845442554 72744240 244784699 331010553 936358036 507259635 947694743 596592440 850653457 579732336 707605781 434546837 872574423 68924130 913456581 659836631 666928223 132341838 445156397 349810698 654027804 348028055 599338309 23558052 76369866 147324161 890884402 803398668 882869597 581975595 624428961 998174856 999416837 596527241 980419192 197138787 617874293 440664103 812491775 432769432 641353726 473229951 965133140 939275247 978698398 325300587 812845362 104018101 245263024 389556052 869836869 607413874 982323908 892379376 915393565 332632785 882773987 606999493 765225444 76946488 579739403 702006978 836224966 417521278 787555698 301982746 418445137 577575816 597863982 614137012 693841552 435889387 653082505 152853154 215658794 739073291 876574772 526491751 863758988 597098926 639801105 877290486 978029438 599131373 903177257 257630932 395322941 525139772 538679176 954061011 987944620 310225301 562907164 215675414 975789479 796085571 816870196 407844549 953719491 448298884 801191814 375682178 839106321 797761045 920905769 371224894 575698511 708630394 786923879 278469760 945220788 950007514 965453250 641746970 681067927 652704564 965760938 943030446 976973211 392306090 750627815 956020930 981710195 256958445 722463059 494072174 827738855 541405047 794610432 26304019 703981914 233562092 973656929 864376471 947148792 286581131 427441175 474840584 500240984 681573638 929285674 300432189 965361084 932524053 997786310 641587601 648574450 48957976 893806186 347213378 986822543 43335273 914954387 425297358 489861401 401428101 995870980 803494654 957865206 688048795 991028182 228896843 494481826 956645200 996269945 485638586 600336183 845154940 848867033 78186425 506559460 796233560 932094362 239363309 369311856 939227631 984966587 584316609 886046397 202771787 270179495 500109149 639942097 497511961 682162843 840107820 934612104 127162582 629858334 717700070 753698435 146207582 180068977 723056609 873596709 206526325 483618735 816940519 841194237 620921133 933309002 65530014 799904731 322237043 579461906 627290179 951677320 510736558 920866670 157495093 560531925 519043493 971201573 316709568 887108143 887419099 937992964 813933182 874596639 618310512 995443368 198661943 895182923 925074213 978502474 697213171 955905922 20594870 362992056 349471751 490582596 875902040 879636383 559918513 926085843 106922798 109435763 938952730 951131313 148272154 814073592 721836243 835400903 636139583 694082299 25484453 652618036 957780629 970600772 896631765 923811118 779427260 854474263 307067884 561345137 270567926 827855924 58161883 482142301 291227938 531032673 3515216 608011370 545766295 914859437 585545223 848321991 464890323 725505207 892763878 982633884 168451873 492346038 419932503 624148793 684884857 918839198 679922090 854079560 310987836 884381101 250654926 569618906 633302648 884718980 474436578 582136267 701615299 722349733 531166572 562653103 630961596 635954374 953225109 963795463 281833154 763077255 24373281 601631854 251623281 695621126 651076312 911643360 397670956 911999328 772318462 869209146 859616957 872229404 848017385 883129932 935531702 978668423 759164695 838868092 516492524 626054996 546650689 994658112 568420244 681178943 903242946 982979321 349245584 739682047 564243967 873110992 576712700 902877497 884664415 986163315 199610821 531897823 483753314 918528263 1288560 396546318 834724784 853756566 683511310 742641482 32263886 182183251 319164898 445978490 557491375 648530022 37329796 382559700 901808709 937281396 545820236 790214441 664579559 746624586 388300146 508139469 913585266 926904944 511513893 862076540 965670784 983402928 63498204 925069780 827679412 829639876 742246003 768348835 639305398 999542824 962462105 964838282 463635045 712489363 286196607 341725759 861858504 979037828 242624426 336012888 592348506 690762354 886642686 924611974 441545389 706462495 720217028 983457918 975500683 992659627 947840378 970251458 252416895 555392371 353027318 545013707 107385565 224711110 886262464 919876388 981000803 989528003 775212646 954331834 311484218 749259619 732576225 895100437 924161791 978668113 978749901 979776517 203493008 222411588 886751125 946281214 367061097 999041268 214181468 364342388 644086230 744886537 424610636 668003944 612279918 986429034 191575967 192155614 295258124 851360779 428091533 941037404 965378594 993926667 484442383 723663737 75653626 892160983 814492170 881484012 113369798 191901812 897372017 998708043 206501700 532822843 307614913 606870976 651280874 873731894 564246229 950373021 109354365 210027966 622438424 941027691 526713243 586376197 344691645 823753926 755442921 954307860 235574029 369280215 644742061 784448603 410397648 555609722 887165176 996402733 41278126 968536099 135442692 627026158 189671307 793639350 367105368 431715956 229501724 776831676 346576611 584089263 172327486 818324111 369874901 471081078 431973474 687255357 973654047 997775652 832990117 834033032 288194429 735253184 408768799 542816331 493132767 616879035 480330658 832611969 303397421 925022289 889459702 914642717 904026543 987225655 342644398 940113649 30318809 258648654 644378457 939361507 589902404 784756710 853614888 978782517 508203745 781915382 564146815 606005670 373051319 621870440 679432944 703685684 789904996 988366814 606263336 730277240 196305897 702643651 985097912 987671438 538173580 697822563 385266372 739325671 289471026 717689999 449862034 713637033 52791885 94805945 735429797 929097181 37613059 383148006 521549285 615043274 714539410 824228278 961425749 984610417 506715529 843172802 35236099 521081170 308921821 699118459 456921515 992713109 831664359 990762674 440708753 488596009 671019824 919378661 879421408 989260938 456969634 686064388 699257842 768579726 78999023 303629419 407661868 511828708 733176347 978195046 450732362 663178770 203658089 412760702 431841894 481397974 88137482 669364776 429366321 839386285 480185705 842191946 454285482 715837658 500097009 881131091 961105398 998363942 580799796 888852481 596195412 919726407 943743036 947923120 442673226 755643523 358362884 991118957 911883069 953488354 142733787 645976480 803306580 912490738 699799180 756377522 323302129 559307262 59086515 574813051 527989223 788239136 591591870 945840745 162088974 559753159 695864248 839825735 215949341 261887990 610310438 688962040 796594148 994685774 354338506 493437383 934987700 989633106 113117640 479359875 963667767 994141756 774789052 828170198 699355180 743689289 174641650 398488514 377210978 830569607 637682119 850021748 519426890 672208711 31533047 965292505 295441508 582651452 202254578 239323732 486076415 867463385 921125915 927712401 585907819 980221591 555286509 609385514 520869883 579488886 907419699 996896863 815279618 823982224 291714241 888552322 776137087 905710671 67802657 335631803 775846738 907472354 880344827 995784940 568248264 654927620 949775215 984943000 136583000 920357073 626665784 786915152 805593113 952773347 35294282 912032373 984404222 987109439 249404015 421094785 150518372 766103604 311934896 885983832 698870876 797299329 318003719 832921154 919537140 996278602 492298058 788668246 249924707 272746464 597258731 774839188 709426739 911488060 811468284 852387101 671740416 907623828 382485319 581083164 636564063 697698070 646525664 910927742 817859402 848449590 617231232 979404526 210281940 367147582 445098846 478499129 707745426 863542905 710642929 908844702 22883567 102978826 370387661 832299618 189137972 870247941 719532508 900071032 815818714 833744083 500268237 505802607 608084999 811740823 397542442 870652438 327959778 547493435 241770878 619209157 615055934 911668080 618910037 840324970 352425572 813316906 387858144 479822559 941215379 995140952 940076764 955966885 460144910 691172590 167701608 238462465 822277510 860960098 568159512 690949222 558370796 669065131 468676946 932338044 555231586 737317142 431066840 439297354 148004105 299233134 101766658 181073469 221772175 276565254 373188301 427616707 939592741 961970521 9349235 813398538 119346877 541422580 906479860 942619570 780412704 866409688 8621279 344904009 275640267 660438202 509670487 994735440 225575476 921906724 353840752 890389289 219504290 862542373 251523783 512578015 744874489 860905789 790280094 901637468 115684079 825804551 932796367 951414931 872101472 926236174 668421823 935909441 140259828 985413622 736407569 864783462 833562048 859690319 757043784 930186149 624624856 677268762 766785290 826404165 424041632 982284606 114427415 811061786 243901170 802663441 148901820 994217823 769977683 878169331 574628251 665884028 408462843 811213173 644823199 775159165 125047990 249875490 165862229 792626440 362323234 947685471 714927319 961838226 525075567 779583562 315464929 517509957 671120330 946095633 658315771 738506999 613978640 699857667 29920181 561662025 236802230 817285022 828669441 964977552 888481789 913205345 17638128 918822933 580806440 970485984 635468383 815125940 447480557 967260722 184012559 259310244 809764438 966641988 895333326 899146091 708764517 841475486 14744380 693394753 733461916 997664551 166129782 435963398 109269403 534693655 918148593 942466160 167488044 258946199 863260238 966412436 169031989 999215276 572719643 690157619 3620736 839999310 668002089 984035016 73983059 887095720 245885287 639986034 501044790 727940715 779268026 790756395 319369020 578369211 339048661 841647859 313384013 506779191 967978002 988140291 530079387 569210275 398978795 976491254 231712906 530166777 512361480 628369726 629338878 979480164 455329662 921888961 4130396 753329265 763313096 971389912 48995809 606616388 761585521 990447018 344366336 381346675 667572493 860699443 168478319 322529958 708307343 843257606 833769982 957611413 724172351 843169198 520604771 772445095 490116052 549500807 324968415 565099411 637871532 939150752 270255790 585013475 771469408 777866294 14157974 566108797 414154432 923634078 685166306 713648029 752670827 795094429 598049268 651202838 266244531 408701153 380133616 387416744 395091353 581324058 349582113 686494366 385986901 638712868 87406236 702242253 118825316 149777802 732769192 766051193 474037545 529885007 792123984 982870009 501690057 985453789 467773299 559744047 465718554 518681270 669247143 699143510 344048468 771241122 418116906 577798960 283478811 535095745 292552003 578002672 328911261 831104373 56324396 686216147 957634553 970434987 760144086 824695221 769529770 770714469 327427536 469057100 330296845 901947828 729299478 835274929 60297842 164750281 243151491 706641756 133378270 514832687 757346234 825469670 192547135 214212601 475943863 793047643 399976372 935840915 853556626 962551076 214315217 780837489 317912904 438519341 57401748 250359663 502183212 883342755 209923788 608432173 781293883 848688816 591894997 734572507 247679874 460616801 410453553 540097731 881019074 944477270 34563279 223922107 328461068 381313714 686682267 895730580 521763095 659122349 607093086 953270938 337808557 650345028 925828089 995921692 88636320 856187113 465427928 568217950 483807418 873540294 105469925 904467758 598482336 671496662 877622401 888832233 301602281 425289804 585310993 616837967 173166109 705795362 926685426 975421930 589996519 809869899 270386625 703641473 923728996 929677398 580052594 682730363 871262396 966604685 778420684 813059732 868071672 919674079 430585521 971736595 421848563 761347712 343575426 481838675 918304230 969581385 685674803 833305310 373441998 509891012 641942494 716567693 979058190 990375685 930387508 993498715 563529868 831236510 861847283 958146044 481255811 983367444 61171872 545730080 47542649 695307986 761110580 859525532 904795309 967841149 481193917 504346379 121546282 679915473 897858389 920054590 866915728 970920154 83404867 626399452 709391627 842768343 913607292 927497592 793714346 936275234 97463550 986239158 726667676 883676994 378053812 435761971 529100012 972300486 189691128 796350070 201495501 914280724 812474491 922300079 294934465 850741723 652765645 962438071 759711271 841670904 610186172 647429729 264821005 746808749 920092798 939342887 255592197 812290055 893866231 972421433 310832325 588465199 980883638 997833874 382455556 958946395 704278701 771762487 696614413 857766909 520742797 819047380 703721483 922377636 192343918 365906712 220862922 497852388 907853441 960782096 447983650 486791187 993228581 998703221 353954451 697020805 538503050 813320414 902600866 995224994 759904935 980211962 895763918 991224770 705032726 782716033 152182562 393513886 188814805 281359842 532892914 675867676 52707654 199197785 196343126 279886366 501280272 995713640 733598011 926744434 281873454 414351307 304913547 869781431 248435892 785877722 9023770 947061147 973014086 995907664 33620218 386404123 389202455 776449166 28180543 39488727 344690773 458048333 341772760 984873029 138143680 641666715 793151873 823833981 372433863 927479320 675486168 891926412 886680900 978423810 742944031 778756996 737512052 900298968 737102285 993679567 631131480 871392398 785323356 877723323 680378432 844299169 490060358 574199780 134316534 219320785 840287301 914772117 865286299 866788921 263864263 465058348 990745530 995232116 415224632 787516009 126662691 213103638 765751758 862938034 133990211 200676042 889530986 916218159 345431450 699525923 699908612 711628636 720297426 911764451 528457278 623580636 968177468 993348599 522475496 907729620 911446273 914580202 532769858 840753528 417138517 911523982 962278902 966687446 253963121 616735113 577081767 666090420 167143006 317919402 658899483 969828957 168570598 514890014 104024703 377679751 858297567 932405382 48208781 898324250 635914948 991372984 25924909 224731134 45040008 535264971 246905108 743788554 115070871 455757421 493193802 764748394 276274422 791268708 244458261 895080313 819443431 882526720 724843423 932984188 346976147 460553453 427072991 706772983 58987554 240297061 160507700 413699833 253331022 330251191 398479138 531330570 692492572 987525026 526655782 658056546 3903768 891647831 498379354 629443428 421222406 975449801 865922627 963548319 164848808 975807708 241815933 590919143 304280053 913445013 861952255 880306526 422769249 565090767 25948272 501457103 785796856 832850515 334460820 956054830 115803901 942536341 983329171 998319947 476811292 894491137 220839081 419676790 589755976 834584262 960195151 984752624 995054781 999217625 569023098 865905704 435212140 820834556 298132123 684810362 132051953 830298893 572798266 833429948 195835310 646155532 775390711 866434404 866552136 872644467 434997124 655605359 716587845 965343282 256323196 274537028 902537077 994186899 513680121 599224389 798243012 814980177 258757522 632781673 22392471 268729572 211108243 430585609 425445181 902110001 764916915 801390587 321241676 596275675 708049612 991504598 441895897 694826793 629593747 765766220 463926817 468204902 913081735 919222663 806697358 866129107 53029208 818874321 308911251 694090508 166696475 738816309 973987725 998867179 327473382 365805292 411933929 798334837 592061561 773265649 677728180 742076949 704910323 932602120 734316260 878887302 354430068 585857326 937611882 947357316 813055632 817490454 813500102 844958202 751155131 845148192 586539029 706635965 987111481 995433363 187876321 728190010 532328312 575259533 25791906 909156859 381562660 970583107 238821572 240874957 992527417 995230014 801598951 926922072 411772584 604620950 655574759 987484544 391754201 818779018 382925642 400166037 467463015 698055959 644413029 648316299 752313143 767664740 607437667 814727909 54680901 173606729 799740411 855940325 690521235 787879381 850391583 936016102 328008860 947870994 915205803 963988894 791877725 800442787 115108042 686710176 697531529 990006745 230264492 735145857 392495048 857580728 268080139 784005347 500777042 806847367 443433518 858546916 187518125 682631472 672362787 703289255 132700321 841901610 306618913 505721632 958122993 966733253 125906691 821835731 168606005 798080294 722433055 812516178 439409516 975571239 714482373 787289135 842402122 902466485 74692708 423222395 632878619 718282313 351776650 699235488 411968639 572830223 815522405 922499676 800668096 812318811 13162028 482988469 679874793 880789371 480067579 575090923 394274647 887315777 625445468 639951147 683519413 993860118 977174186 984441045 200129063 522044184 977481915 996324134 612940545 811205448 856656632 936019855 710370489 892942809 309822304 465006045 18824840 412559608 329232875 806553140 458554492 940812241 758231679 963242875 867483657 881599058 46300430 609739813 595497962 623281309 538210618 587430443 12809982 775846479 782328086 920989792 67435863 574609833 15988375 988286453 895674250 982690507 789279787 948806696 810956335 844018521 295416283 525520882 793144433 795943515 727982022 754939292 835619083 971316254 998672848 999376007 914097377 958438314 183466605 421028677 51185062 106106087 972814587 994422103 468801584 477774782 564003236 889158352 10769630 670504066 226326466 995420240 404548656 854660781 27611631 603003694 510819822 956845826 636009782 694716294 247227500 710356850 410168440 686814772 898598965 967941615 47357792 623807485 435675980 829681657 658473429 660286560 626549965 815416060 425779613 591050306 694819878 803084150 179563888 558296414 393512574 560802287 277194869 766729044 953365515 958370222 877618089 968186800 56579512 108845869 79740142 283120338 317327595 421663976 497433617 713324547 279079741 759340224 214744006 998698532 779186407 970772376 977252480 986088096 482240038 928587610 71682105 298067615 809299160 923166060 970660699 990499303 418715966 969175053 598900337 796782698 55492170 205360924 945488611 969336372 389486936 631969383 49192479 733732202 395387084 400429541 260738738 504998697 573775856 925630537 340815721 641244525 780994933 814713273 300813926 528587710 222021549 925543056 126870421 543180790 895965966 939141929 441215154 889390706 694795997 938836199 161718096 580864775 67517033 367525634 952845820 960516546 64306073 522159695 119347672 772852803 213336465 812102483 411556746 507448505 859063020 924269847 921476622 982896166 918482966 929502363 112250242 213314808 162897757 953661045 734912689 794055739 796877777 927772799 989479382 999057137 112564135 687492428 336209576 567183536 99407963 212645784 975400875 996076553 576694906 898696267 701936278 829764638 8168412 680156036 423148129 902597770 753139586 806225225 933153260 976657212 702982697 900794002 742915147 900361189 921014468 950508848 4171844 234555062 566061458 946068915 829041946 999927977 445809464 662636344 95749814 917688363 671363768 828654576 829667865 870056953 408248695 760669210 309182547 373599924 325886742 991530119 514637668 739583859 679964063 923299644 679963690 901762152 506293284 704981447 598474518 605435148 569006611 649213162 571166953 863994623 254449043 681299907 132206309 175375800 461789656 796475940 662675879 977255293 534605401 905096941 236542237 595564592 761559483 937816660 807714364 836657742 893921678 915735772 326906790 459747954 320557451 774576590 614697884 867446374 725997751 786818444 708038498 797516398 311871104 629628200 618464533 636804214 956429359 993988081 396037738 839508918 799646181 977298656 881186456 886678181 306525045 853198120 948902407 972667850 202552909 233936812 172937974 582441635 248651183 756036257 180962780 596077651 424950401 934003645 625003164 911737521 733015247 878132900 175788424 730580308 168807747 727010246 908515254 916814950 465992756 857626862 407025562 682672791 226081737 882438880 126537504 212457668 249506142 563185115 715847209 774470042 92472731 591168640 469975436 785567342 859511277 875933474 456957151 934156669 886331772 909431737 277809280 785335122 203654628 559963545 493755087 829877733 788295750 903726666 548386834 711623630 711073948 828626228 265472557 268531956 726666720 784888880 641421717 714084551 549793772 614790223 179852965 202360459 488831429 709146863 367363886 736824533 988962241 996300172 297039021 437603347 989445573 991230453 86999157 382319803 169586626 348516058 733457769 844189470 539009939 838412702 34523531 937483888 812131645 905745326 405027306 842691685 974409255 978766000 764556053 790621533 970684697 978708299 649252206 770649093 862317817 932621879 492961949 989202860 60785690 811455783 835858494 930692647 794843252 983500433 612418485 733939440 87199194 240180731 465352237 908733758 251866824 476569694 850863801 904458479 627989671 979409127 863888035 954450089 708793787 929243977 449718758 908901283 825847462 828206102 713820587 767496087 20277450 552753647 196450413 844953009 716116209 758448166 677132394 694203874 183244946 734477357 627317811 989640762 308086128 925585593 542590996 830355153 711842234 953835524 221160619 240782030 294949828 611518430 869408300 888220136 134348285 199258404 21607116 335127085 613243707 781666965 106777048 796172213 249609584 384013396 560782537 887927051 130659733 858956941 472304331 825014748 576757161 703311134 548772346 606378483 280761810 920373129 765478891 803303153 784428563 982335529 43931254 118220585 972058184 975164573 167681183 679628018 765332740 834317873 890069875 926418232 414973124 469728680 494086153 912540310 772053358 821710459 954221533 972270895 63456790 505557320 380351920 940087864 752490722 766584420 240299824 549159410 268139668 575376451 936266055 961771240 171944540 648213649 682451047 808175915 784097202 930010667 357735181 979553175 294788453 902695610 408141564 709966069 945651569 956763711 689149289 769786638 433249080 440203826 362777429 827995274 930182560 948632768 451456749 500314842 245990542 301519505 587855756 864441754 842891411 860122249 597821855 623356040 680936644 683228796 68509225 503806164 354783943 572368040 852318782 884631721 986404154 999265582 603687692 697410338 933322378 959270884 422062378 839396638 591605609 728181937 309881109 491140889 246463771 739630201 993159054 993416675 241714519 846819275 897914612 939097916 95819022 667478735 266708159 885640526 331915410 475025355 132998790 711907800 896688017 997436654 275977581 543425884 134254086 948508268 397805066 798574711 778416151 780862336 137817101 717090148 106010252 550573475 883095152 905693343 626825071 649439960 665246645 769246822 58703013 503098917 833455795 903546872 634520881 877984403 384328833 616258671 783067676 862152639 931099783 964819166 107599652 879969640 959563134 970714810 349881506 610991438 51630646 540814183 715652559 946918202 214799868 688755518 406946752 450602079 264443919 995342005 484015553 680412067 251903523 735360901 203270164 863292898 13919706 934928715 44320752 711194198 44892924 61140902 961498922 968470910 905620757 958893244 371914759 589553944 629272691 692052030 372378369 657167666 799752117 832551071 842279695 871929105 376882383 953869349 593538500 622376597 467000886 979524317 247972708 637409681 830127893 936465593 595024455 720831403 387525641 598306297 497543426 758874501 277475568 705741735 666533349 695941659 716491096 904253461 70155618 456601586 386467574 409204631 903023438 965573514 740137976 954749769 79210437 167393987 467194495 745894655 823289165 876712157 786433512 844012459 204923348 359289110 192660734 693845589 172014845 652389504 483227369 619118621 325298815 919727939 883389232 972173525 190635834 795279520 158156598 652409781 611465261 794111689 725216681 954182147 663803472 986586528 763353411 807785759 846991589 887768908 208443377 253241648 774393094 784688292 464090321 523099342 533048300 643534675 248620688 881884566 335084271 572880084 288056507 998945770 542019581 978016191 322533583 779090431 714331391 807532890 534028683 904049439 789004159 990651757 607124313 942191789 673547702 722059869 829062864 886118728 373442114 377168913 659809330 875742569 858083784 864127838 687579934 786498036 421184458 548806850 31367546 247095093 967339915 993794494 384377988 923862211 655986466 879230152 420658897 727404737 281132290 865124882 734490389 824514481 585449266 611512505 891387164 961312110 38673347 423664838 113543275 220721401 905340808 921950229 739178710 995165260 20067508 823774882 872023624 995995688 272009264 931103634 2784724 939367177 12545909 549800595 532802547 726389728 595474656 920549432 364192715 610108907 261062946 375967198 362415656 840851173 570970978 882716495 604659595 994671218 809192440 961787392 35777831 976044698 333721159 942575550 735546094 802767946 488699552 906866770 972301793 988291455 937922352 968584541 686134372 970003010 103491962 378847694 236077707 963521075 530097159 766355949 650257716 954150516 812193101 866422460 764904436 969056100 865155729 928829373 447449199 975906247 898271537 983663509 149538178 446874522 246609296 378686981 822091500 983552571 602267745 654352143 79584094 895459951 85086982 865564674 47786903 102696005 442329944 738016666 821854139 903277045 133863756 511055197 423158870 482927803 247178627 748182663 104824673 309648149 594507493 900192733 102408137 517525311 541682494 800225546 380299292 555513733 88976682 849713706 197514715 946204547 417462927 690356487 877852585 929980468 719822535 866730730 336520686 897498182 641254211 840072135 204394996 868018847 718194912 926368194 341132646 516253158 56625535 864306804 130573146 180718013 622340224 894777383 70663464 73810555 979975374 996123377 398923242 413079637 554362877 639083285 549630456 880265810 586079366 957526535 22903765 229814395 59617641 599088808 782606574 848133840 908970455 946179865 459969749 589377026 340054821 373405850 523438709 762480198 721890680 993884967 78058788 543946599 66942798 830432503 77722741 839416809 286484426 878542413 947805550 971464575 43376935 116194952 885202431 890789439 495432623 982313335 108199434 299573293 593109068 943425865 496626014 555181655 707101910 819105854 201750610 406401349 255886386 858524276 14390099 844951679 305480642 968954354 648602088 880501364 226969633 769245912 776748843 790017887 77460951 236584315 208358246 725871031 918399830 922889935 765763643 860734982 98774998 776336582 471562602 759995091 987914803 991349141 318148729 934541711 983368622 987971424 293061034 516675133 340372197 893617260 411890130 821767429 349248788 607802112 701473663 881381117 20852518 449949854 30687503 619674741 908467623 940344306 588636343 689362531 880527536 925850354 915000752 960091282 66752876 110384292 51158959 233206314 136718314 278930721 142784406 584253530 505101559 780630064 642048916 802983264 43583690 522353313 823715255 880343171 319134526 944179284 858657735 912249975 200065161 547736672 695206903 976570782 328945362 362917488 493185965 868837062 897648952 914844756 194332892 933952201 750507006 934712286 272468696 741862902 515267373 819824654 95328558 135900991 773323251 864578910 854808691 918567055 210544478 454715762 456158176 656083946 677908790 896961157 447522595 720583505 100751595 217808520 203634486 678600617 562160982 879559003 75445262 570641092 850690397 899956512 740143398 828555847 210299781 472642566 169955842 809296600 68709474 214007727 712920084 922418647 450700437 493195110 64700195 653690216 320910371 664898585 23573493 694813027 449075120 571734114 528443291 842272960 148097114 524458066 284697907 533711370 548639872 886024036 135764935 937718672 721415849 942114798 794676258 987718714 73191409 315757017 710501454 863254739 681043180 701854758 786454076 878187146 425122882 843815258 937645082 951389230 966017617 967371505 31964722 978039262 585514733 996645445 949321004 990508616 198662075 624719654 205948672 503674238 210325384 458394371 314986352 700886238 422515610 577671784 885958023 893192127 761130685 914026156 816540684 967552762 496787643 800757386 371544061 786928158 238663883 584058360 295224544 509549696 300136408 316884847 883122946 903496314 863196070 990706812 903672670 962065031 4843594 324806011 69802187 498172981 233666245 773145972 142640629 622623809 539434189 761378566 97631775 145307635 870275925 926674471 77959531 316124097 44273472 462171869 898788350 935117557 693366869 904358862 532142643 985688879 533315059 580858521 762595307 834590285 633456698 937736890 262995125 400393247 107374366 769948757 634082747 985571805 599564359 954838648 544450937 619229899 290951860 953004308 799770915 970268258 645491849 888998426 928522110 943637952 239510520 534731863 410976445 918168098 461285269 657468105 259657464 839131010 288238637 584365649 800003569 826430522 109527751 997078752 351642440 493731386 778265444 929794309 272572833 307416208 646634307 703840849 378063150 659612679 96352188 993632934 123042225 797764955 564664382 701858976 141883677 541496682 401884473 445284634 266175932 926112148 536877004 603596441 213324267 467970772 428199655 634289339 116053496 731787662 580684872 756687304 525868812 831449476 283421607 886303661 720149893 733982907 285988359 535710668 870578945 959863416 711715944 882601346 536611826 973931573 73487386 170662624 651882356 810176381 910880396 950670582 151622952 656433203 985388122 997008210 292168486 338871017 701603943 715823834 811907645 931852315 493881664 908321220 187106207 818019793 299400753 526044568 817864888 926988694 76596785 525975405 108099835 316886502 537359594 684987384 232123418 821417698 576409470 840012410 222213222 844719645 511816090 550259270 927919235 990066901 880862766 977584498 106647637 967604569 96266967 420705339 705980026 919653353 942863676 972197182 457014498 739208246 515330349 594542956 842601976 898504901 552783590 969653351 88843143 307010702 361287703 423326980 228074473 935999415 653007596 718640224 840156229 965541112 423254247 941644634 331347194 379322974 732559593 827789218 123876697 838304520 393002787 952576662 606181134 897383210 266607097 647302130 124460379 983974361 725836624 743234157 701479835 779828928 609730383 645226299 970250422 987897163 920654397 923030388 556961484 877887248 260038441 419614030 695184160 704679569 846270931 853961404 367599347 672973240 17239879 412300826 17394895 905241555 915618232 932983577 596771902 811014242 430087128 574228024 112740437 205457572 220369607 514845609 566073471 567089761 519484395 634165275 310304215 735823066 529742102 827516749 221381994 526596154 662915216 958341228 203556869 441208651 78120655 356559730 789825623 836907289 34557460 608957112 601731782 969254632 480125024 714901372 105023078 732011358 861399150 990261622 305768365 403309814 179435777 872302024 635250670 636521575 45486003 666789823 294274928 994914877 542321835 814099888 745678828 774180745 130738600 146650999 161360470 778821937 671121589 746793639 173437055 622626317 691853157 935288443 763410727 809516181 842270834 847780102 267509645 840409612 495545337 725629449 461152777 573794617 552739946 755611533 317149595 372271994 106977032 992306561 474355594 918032562 484184947 857762197 35537692 309797918 158139152 909235322 896656550 960685762 432342131 533507913 75478644 243883583 824613558 960182123 393589516 870230069 138975252 473432706 332944417 386578376 243774138 923694038 431268261 985838330 995765707 999194906 976414561 999837067 927035724 970638263 448409956 625418713 28773976 969689747 459218601 741070449 12094350 30123984 302149055 507165047 494155770 517832619 324610120 699636138 854017429 939755961 411592373 632249296 648753119 744015583 501724565 693852532 658680219 711269064 857891915 913858333 463189653 474769699 602390898 775337069 305173462 572187977 179820251 356717604 961368624 970929832 791696172 950669000 389059086 639653065 732309942 959702218 40969023 41089121 773282437 785275416 234971194 621125128 180490377 360002284 686639325 945394888 663563358 707897599 460766937 583806586 262139320 292373781 24297440 905629925 688271592 865698808 57169883 493317996 357801364 784374688 834565126 932798855 773892732 952507334 474288674 635743412 247400203 637834279 895260366 935842731 701280810 744131566 724790775 862613080 585891571 949350451 593055784 929005860 393805727 820778582 945621401 957888331 732087785 767627155 120910028 833079893 998124921 998605330 638066417 876918366 854859090 983384061 658459338 787861868 976262344 991578414 786807614 855921081 233560846 536878710 564741079 877788114 96087876 540978476 130975136 279366254 554601303 740294479 665691009 977165818 157526041 596638329 638888599 843134557 759170027 876684381 67329475 238819240 491709810 775207301 113689433 877936580 941788209 948619125 802643827 930541112 420609134 644962509 808964682 998678542 811217886 901848025 21703249 938868761 216375108 616694056 146432257 450087228 790536686 825556193 942965767 958869478 133033806 745544899 208561380 544578675 868228205 987488052 302687469 680462104 996167379 998625267 938444317 971285414 599280187 830318479 413034401 958407572 163057008 518158343 712539716 877807739 871357641 946704986 100922516 157727411 266379471 766206161 226463566 261187030 785004450 884625747 659209619 957102424 386208545 687658060 37817673 961119124 85075120 999496726 373154114 482889329 452322710 796472657 471609308 928746952 559136956 789338878 327562776 964240501 534629234 961549223 674011662 683937426 681589933 951406332 394959443 559999967 21869423 546849945 48336501 271680072 948281964 972599852 742463664 754492816 669658590 949917031 626100185 837429976 590470315 869332241 138241139 894433987 813925240 866112796 249667015 271994852 244257919 750339779 644125478 954340050 438751993 674341127 182974245 365282080 269138675 982593740 458841185 955481598 458847487 619436920 731854162 739020857 686551868 768554342 958910917 974024354 668687940 694521318 584249926 885226120 532098492 891480200 255616752 283315976 367724194 546987216 741076129 987082054 86642896 203342041 249287899 751201610 205064502 699590368 464061560 666925261 182917616 277376781 415867041 826658187 308398114 605700695 978938528 983852201 96511586 877945984 302181659 639962139 364276973 877552645 230244015 261266171 12558075 242385061 773193031 899302477 697263032 835192072 576364246 700391125 355999836 617730606 424089204 717371160 201391573 604476928 794923300 920463324 507624683 955249048 631439688 701417845 729695445 999407737 785304454 900872820 893240595 975909773 88307780 308673724 629496390 934670542 535104718 788742220 302899947 314265329 300784688 568247758 908708781 980271998 739738890 920925125 427917 494737602 796282397 863550724 410940802 967627826 127432656 321008093 843048672 933706964 944647865 984662430 44424036 774460635 44800516 235253355 649665790 861230075 547813118 880674808 877982293 977065884 798230302 927704343 877599447 975639536 925945992 961281476 831844231 949787950 379293605 811494844 810119922 902594926 879688486 950329307 64232142 906188149 593105742 754953723 475054859 843049749 975886936 992475248 808933084 999345746 433167070 952353894 881102111 941116988 572616499 694927249 140294477 997204853 914354701 960364347 538309281 949236519 770516821 913093363 187124607 989183183 518540426 851570256 901476726 953819145 284975021 790917460 976966143 997638537 445850030 952284312 953932881 958897661 388154362 607760909 60423869 100197299 575470811 594567597 809136373 823512544 853707141 940368827 380475514 508064866 988503430 998709130 932341811 936972623 515795039 555749101 287098063 510841203 25608934 948436386 597378631 811139368 218482587 716078833 511133909 787786142 588615713 858627605 458870531 728490514 484674421 885053875 611683801 966541651 120762765 586296134 327315465 956181621 762691493 863316392 678170263 768258017 38267252 280857157 231933843 659668796 697789082 716300834 554194340 942130094 858299510 995553157 1436887 195193887 439287685 490784895 42327675 758672884 113672932 673702375 886942808 935606442 128838038 501858262 487751304 498118332 785703776 921244572 852559258 955995413 461526092 793972582 201823513 575255354 341774161 633977317 347850591 565260687 993029126 996571633 650191849 885828644 284578255 841756890 551275146 726202446 755788758 785426136 148059358 792933373 59018236 411084734 865370683 951197680 499422203 863181427 686196266 931518632 526582718 990150623 61769055 861300162 59811321 728448681 961061487 975174668 300150513 972324356 970828077 987360815 576224348 747966024 146559584 747978776 806190977 878092331 867317104 919376836 172152530 202814850 177828965 454969161 997115950 999381515 99263934 940988481 920492489 996000506 496515460 607770185 120251223 133524652 31021510 532693890 190789024 391648935 817270275 857349069 744130705 922103921 42574386 290182727 914392816 973725179 795059570 795273656 227284303 530490103 815215539 942741928 277059532 547361554 100695562 925218678 953317119 968593469 922271569 987440281 702545394 796929383 270456161 395164382 12525325 954496987 992402451 996769217 576285654 817903307 851541126 940440592 665426190 713801201 728749670 958536202 283008439 632071842 332574225 935819115 225327080 595608758 164122889 946609659 858359520 910170236 201653835 478640702 739115100 751388980 541258082 965357546 885361118 966780481 168433841 321384986 883435640 997084807 724905857 927167041 305809493 454391801 260192304 938533431 852547220 925986609 92855669 120682459 454419743 710601601 142830118 589858140 363530451 432297033 333275136 685381366 149387455 405994773 678892833 729122964 572194201 946214336 883446794 893319621 306928489 700982863 263614908 698337740 574727139 916264034 593255429 598934137 907047182 915517930 989789607 991753095 258301223 706539640 926468542 946665632 610419578 833895815 384060404 690087666 352269909 379447129 867205512 906354230 79054107 877994206 999655457 999832916 78365883 237353046 564598115 956900906 482822474 837065226 466852769 958298551 922487714 970555439 190020315 841356719 245336846 957814089 163055381 731012474 235943930 780291971 319036880 490863605 85875012 167584213 855110127 916473509 278640888 893147195 14812061 413379338 686222818 998945407 794495203 981594205 823487600 851725330 254493823 839918725 780074673 927357573 234546210 689544971 816730748 947479016 740399922 908276198 453075843 811553895 527769938 904886116 950165457 967639953 112820645 370706809 430834119 673783002 660353988 904331049 343787926 595856254 931228984 956899654 770128261 918746267 699005962 737249023 452819827 506167306 999471071 999666956 980850081 990109682 26178617 357414819 303830714 895228708 858155545 993035745 828622146 846807653 898482433 938431454 80854085 337261182 36650962 888278235 426285074 699333714 158936063 812990042 261873248 788069999 95518654 849003727 253317045 375974722 830237611 962989084 263218097 823209874 431830369 588482371 665519779 824854338 753446472 826987442 984453991 998247754 233669796 973774464 356369611 867483318 288243527 978342305 841694943 899751893 825585169 962866170 321925985 921782739 651704523 976556715 705856218 829960957 583100370 892975877 942893755 962619963 414334459 429119176 862869995 884431525 123675726 900710047 555297053 843449930 933593894 937832841 452357010 455958844 833425629 882926369 822372804 856003019 816562808 858600430 970813734 999548246 96232613 539061163 452137620 457332491 813619496 923374577 733621625 824174318 921204533 991767398 561385374 689079936 235956911 805317987 160167872 761395841 654620473 995640341 801943768 853967795 527231540 804811860 707095153 810902319 832927596 985922456 874185716 963575225 274116606 402896437 913307283 946538198 861430175 972727757 481026771 492844835 438105172 800877696 166709935 690619669 752566595 767798876 604839510 938574158 928547221 965207799 408783574 671643583 443538791 736671530 39095799 679672707 928734612 965010126 627764385 647087948 878417191 887544640 370491169 373160597 974463221 998137328 85807095 637208229 350456750 894268659 848563893 920369014 821593655 980035032 654794960 795105787 54281347 321759189 69491772 860288005 521592670 830595691 740581617 852668654 627414174 954438075 713297127 801196328 96871265 471667666 434847629 689307157 815776095 918034086 246510412 704567414 806165365 858778524 340237846 405528483 16738948 624577607 896763932 918593497 422760919 612165580 172000098 311722493 765487210 882290134 59635445 815558466 319057133 397390601 531390053 818702013 399992322 806492954 652448903 724570697 106540429 184145836 794320104 874292133 132734471 843435497 364800909 456470084 488980261 663596543 75411049 90749326 419194091 730984442 590868643 965442569 595574683 830094232 705150050 855138182 50221569 982679976 461836827 970637764 333049149 571592652 662298416 822402336 207784632 859074756 669525907 897597018 627862340 963929990 577614752 713175273 717904436 861920845 884568120 981036558 448658041 554868638 361696054 505970925 1337055 139226205 97344035 452210724 655815951 943788366 931868703 998525004 687325057 997190235 341934223 999872234 221019745 510878058 643213188 995795220 590593882 819687675 579764351 866594748 706270655 953076335 369184760 831700981 308624983 758001722 469217083 705739779 819215285 845631337 923494411 933235319 520980388 732277170 782850004 807604211 206488184 559621962 416801581 632900064 494498555 879770195 608000644 964577230 658730961 812357443 193434668 259867229 352554231 476631884 526294358 891267770 563007046 756919124 286745103 988374532 432378161 638164332 803766797 895109629 426455434 635267464 862314454 928887224 100437598 116541982 228541677 570051922 72787225 620682955 653678885 869023674 631673775 692339387 65621871 920638235 98774989 133935043 146594993 369164548 901220944 913456926 893153898 976327003 178719315 420327807 967715621 987658827 780078959 974071753 829342721 946125954 865751759 918539433 595862736 932778198 246763363 707196615 475132203 569648279 282411005 674118964 416945115 967056729 105546434 191370713 892667558 986743716 260348993 684597373 933022391 956709562 346858798 498314389 34584655 304522209 804031198 891686430 724423832 836396266 608329272 779032926 23580065 370344430 566274346 846347007 959048315 978116806 409622704 729494613 852619197 862245063 608729048 699552330 726720052 985455771 571607350 825444502 278355842 897892608 302150609 342498167 372800651 827240871 385832687 709919449 960393325 992168262 820208754 919537379 756454588 991603609 771358144 937741062 871473999 906416105 508722696 691114071 522119804 759952699 921806261 957002174 823599870 957204799 27222212 532731504 103114654 185335673 539448652 964013803 240294767 556647020 390624504 525719938 326058007 492260655 915668446 963470773 7151824 581464996 457413272 726887128 567124533 781600185 885912565 919456928 493846539 772904917 465083338 529840636 264903121 409618593 745473547 915516387 167996990 783746591 454490388 815553021 906033858 938100386 386203262 752899250 110296509 570642891 357904726 906483536 452875948 931746125 728286310 810911069 168517821 454408134 856827997 997531949 636469363 660985187 595227005 731034652 743387453 768654546 629875774 998972618 726408921 979325343 917975021 978418614 785244103 929763667 809642755 966720945 739415829 972234950 268312360 275849088 474218855 743666234 929702132 966698446 20452190 313191261 283974000 713235508 69795277 994021705 190759329 364885599 227753389 775290404 648057120 948878781 620934464 723502260 282013556 316859430 695192367 971803861 859201842 985908957 469432416 968410773 636599962 702067967 101350898 981896769 763169510 877069611 189936773 410177476 784029787 929099865 106135814 551466365 951940175 988456478 969608515 991921994 387455475 666149275 991531987 996677139 741089626 822841147 986825466 990012518 363498778 624007626 571915844 686666077 748728045 859997121 506696291 978650557 88050396 356118497 798110810 882509555 538152128 925085244 523374438 688597587 263544246 879673552 991189700 996860485 382602768 661096335 554804781 817336589 756734098 990040499 501601234 770707695 726024951 951565755 96738746 211788005 558169571 747852795 954542307 977426964 363532244 452184271 378446161 733295982 363312523 636657095 184080635 291852604 844064258 966163606 654307750 788359565 751508624 819838185 134612414 312021080 723112124 839327703 299763023 390660807 849020416 968106001 180816033 671867901 333638626 651204217 427644927 909649238 995113591 997650203 989982725 990938285 364559927 596626402 838676560 998162277 189262544 850825502 801712291 848467699 130926691 859923909 964831813 975623941 280654724 580767452 186444100 726494640 744364364 815255746 36658988 572716166 703394859 738696819 185757286 598853078 860081810 939767495 445007079 818216287 173944829 221698784 67033268 230663398 395666609 869386425 937310745 983961741 157105762 998046084 193967650 938480299 951322523 968057828 999605185 999753386 575485147 969280183 737296053 958195806 582501234 696755969 381480774 807290764 886825044 896526777 706153447 912565431 446634623 828425765 664483607 779858617 312780904 979465892 825508802 973161650 177878491 349709461 188479776 775428083 237084385 328500959 113420254 229328130 751069720 914736422 442656436 818706039 511416979 600542373 892634002 923945674 798344772 877790399 715789452 950295983 982769902 992640285 835714858 849386854 688674700 739536096 690104668 843735157 393732675 950565353 318530764 746133186 572562738 778869489 575779671 871435043 931317696 931358417 202428879 702315864 603309730 702629481 912266532 998313441 381950282 836113552 538353943 822343364 917940280 999994824 949766584 964009758 592542092 952696323 878741007 912208462 562226842 859059281 110911413 234289825 583366187 876287014 291221925 622691441 538971975 562353613 807104716 981930493 826742500 876581058 660374475 678582039 375340449 868121077 840199083 876205915 322106544 549306446 274311400 981344275 791441763 830585929 807240057 901017926 763395833 859618980 991675800 997091465 568932330 751422097 41593340 536058469 779450327 979739793 268582305 931150089 6403580 96047015 769439536 829156208 677580586 699138791 490751916 878425372 773491941 867763969 760124450 846963122 259773020 595218058 955405317 980487112 307291021 483321212 577326838 713791794 622722448 763762411 66133462 719673553 807148346 863339485 160041790 364890560 800880324 811945972 384148900 794670523 332155144 768135549 677301991 731625437 861647081 963412276 746593545 866633689 820334375 902779817 529368437 543660180 400783329 446357496 720535461 976889950 145921267 941324453 738057477 851472933 267379624 316172940 955490213 982981406 543732308 779469370 268668777 463009452 893023984 899760437 91843621 574504998 304626702 438720371 582642381 661091108 137382162 647357780 135409621 419078103 462496700 650946650 704939661 932508421 264468443 588163560 68781141 769665483 192677798 612176418 86838681 696770158 838182759 848707711 802955531 955998164 111000125 922098663 800744389 884160961 789365655 867924151 963739014 964179662 323307352 519462033 56024446 852370187 969781036 973738120 470683112 916777165 744818756 906104465 204666828 905494502 913535787 969875682 713120793 914863055 499892330 985668980 351286086 876267811 339345014 615398853 47813464 955668940 433697308 655240916 511870417 922956233 652413956 783232496 801286541 928095821 142621025 751853801 857293544 905211289 677490693 788553813 902556258 958085432 201367575 480774725 878879501 909917838 907363285 911911713 644680471 876389522 725137744 977955606 287992667 899952725 327532616 521484142 581884784 896739279 979656961 984044770 96911687 722895655 499534293 919936336 594423146 650577862 730678461 936487330 444891767 964377724 588999450 749783872 533088219 728973773 467547823 680824760 683026521 780946182 258907370 446726872 698878257 771652413 260366373 439304534 504228957 518636217 61711048 927771159 141142743 536321366 225657647 884257126 708516009 928282942 34094343 516144273 704907954 728875479 763331978 993960441 797238800 957841443 316781333 687419774 382476252 482181064 670373189 907324289 23809852 315419885 475033103 804160014 745973745 818559258 637254963 731396179 923261040 959040537 364814498 641299992 390428320 861868365 242484890 310736575 161894013 468030648 88090200 952790385 268808652 308528376 909522031 998547349 643475996 786674428 296699346 790247280 614767585 719573350 736305371 838573586 740149649 765777533 145581513 885562567 775954219 957945293 572957454 678063169 142760901 973854247 674309459 741831240 230522570 859251440 5958247 872557043 88952013 698915433 231815109 902562727 503106741 979372464 648115825 712957049 737105585 801652421 384587057 927410963 276994578 443040106 975455133 979789934 732760050 882623654 277527138 450463183 298728469 313694192 865920085 872148979 749161111 896656601 11581223 20304226 215084114 518305649 560921509 720551108 445740071 684523644 672605947 901524130 45148175 76549900 400106708 843545951 953107905 962929089 620267730 832262444 223986037 784897138 308478673 485804738 916883264 927689678 466677621 642553080 946808292 957595244 212530594 608977561 120494441 489774912 779968749 974534881 834276695 986816325 971933561 980694527 136683631 354470161 548185198 962311154 555405887 678350754 706314565 736832600 659320687 990719843 283257289 493893994 458693309 790568914 554159782 569055442 700365046 909043546 926761755 970108653 719409156 760048545 476558533 553299079 343129330 831019864 600438582 952353096 934440946 964350466 908523603 930545547 184551995 287193963 959807734 983959681 297822864 976430280 766131588 772311388 207909814 425884524 957696032 977259276 805483247 811340678 318853700 440681011 628803181 764633460 931404770 971485432 701698751 955481358 241141361 534423708 179829564 668111970 697681268 863451003 306418754 465819779 431184395 681163015 442525274 659455443 630730320 877627441 599976121 672590061 923351266 948955042 690890265 899832343 729926698 923972230 892925104 925555302 440318298 996336309 426756931 805753327 441832553 959768314 512011945 972820907 192144245 989558232 778356454 852954787 739581998 991393279 200293953 285631039 361836291 398175227 180554317 879335486 24792128 532591311 810894555 857581868 11500925 975295062 554643520 915548788 920641459 943170530 721073871 999998041 768085650 958618997 630622180 928454950 177932918 747357437 590096490 999275122 785076830 813544444 760373337 819370459 695382711 942201599 325004494 973695399 359153263 716036814 680387638 836148630 573034815 667890496 293226956 301756396 511478682 813981184 729261460 968128118 856843929 967659106 189686799 323657168 360598338 420661075 446492288 465278706 660644242 710620182 669780255 999215211 864403980 901302403 406852184 543231180 995225269 996624086 214492735 447335620 702966139 734464239 194644857 636137842 642334195 888284643 447537730 490160322 633581524 823457942 780867116 851244619 507209854 636433694 227599133 467264641 645411526 735415748 759053782 946955645 990219051 999439617 355659995 833315799 142060918 460126985 943642292 981210961 853331687 863578346 252869136 445135205 588911135 934818373 59451055 875306724 90774639 854871601 173797890 910246533 963272330 988643203 402964663 597977295 748946070 757124129 333102674 850466933 117113056 194309177 364564660 965785862 82068912 653751894 107547290 621227293 123900854 160969332 73708311 673050910 841507242 867376593 947350412 974126694 186164953 710389571 299825057 549179068 503667134 625157317 603134914 797031377 886416133 951869260 436637660 739804631 616640906 661164008 925101456 948186017 489301535 845803574 338478436 559153347 24564753 278276928 535872586 558780244 911540412 993154923 500936154 687491051 567278526 757895477 102884994 804359409 826034420 899760280 367325614 773859910 291104426 695536133 201651993 519254889 735411597 932364199 809030914 955049914 307536631 383007199 918637955 930187008 611713637 816461602 95920912 593686951 559185822 722617708 275319504 685981233 95328931 666425735 931776891 984325907 155242596 395854931 678352314 940114413 863054684 950414761 722814143 750314269 239570321 669090334 744673415 817381339 139839261 857145399 824818944 894581254 159160391 195610462 421912846 461238067 541490231 887896987 551772640 902972375 588759838 741303014 370099491 678792857 291334293 915402422 488290874 859216274 578984848 940087061 349640481 911837997 449992680 492412981 419704521 899784551 629037373 653200759 609049743 788499180 503000713 995687188 538550279 892406558 236795364 737192881 896507662 978519158 243096975 476434161 360542828 570459796 774839299 830067331 581299086 829541691 292821425 610256365 509793228 848258222 453515493 843210034 49167127 460194158 53276960 778433234 196548861 859520882 271729924 816653930 451393514 754195195 287604290 662367805 479126587 974966426 799155975 894162615 859141379 949795060 900787024 987974955 19702295 376079755 614989786 641962316 254181798 533295301 742715328 818124683 533079080 971361307 701175984 810059853 41569505 416413351 510813203 842144765 738810077 962812120 630358410 849941350 330034416 741718141 352800007 368927601 754552483 907385199 558139951 794922870 618487733 636152114 982464076 986177472 793533849 923107446 463697655 932935231 594320755 951727048 313781850 578485610 264556633 739034016 828149504 976946059 505439650 784578503 802203771 837130500 836117348 874318976 311894441 915209296 687666348 751845148 948581376 952354233 398116051 790960169 863639889 921354587 700449137 753881198 457311303 551283008 129981340 864582655 403694493 855334855 947979992 968743593 342355299 568422468 759509560 918098306 83195444 566576096 896160994 901554232 692377213 965451185 687359943 927674643 543218320 558956592 662072238 818345279 621163902 754354951 129646537 705819277 198864973 267435421 452265674 845430862 450168615 910611744 177500919 912364086 913682835 971828638 702306437 835048828 616568117 719961632 527680704 899449553 731104137 743049162 124604881 686446751 135555157 664842304 306838335 749482205 719972302 949653576 471465547 785822944 939751298 985274391 831023669 923812697 911219362 986936531 922937706 957581952 784794095 909633628 505962112 919272397 102666025 751252586 960830283 961339960 216534674 786227411 292111402 443117696 329848096 502250136 720588280 870386707 885058804 906093650 431812742 891332987 60317016 196236527 385947053 625655008 294090098 542207943 387503930 958834599 277317560 415885024 939881576 970033310 688649311 794970075 964843163 985814062 744925435 958133560 490298967 555982774 825850282 970988246 86195654 465285647 276370025 865177921 142030027 482546929 756431011 953470337 698410463 941862057 297995062 558227716 162541007 312544047 780776097 876774005 355212324 921198808 915626859 936798697 156205431 832588183 596994488 716231174 846799221 882590127 248974227 593208260 431202585 897126527 367082196 527783013 307775158 846850163 230188690 864851424 524512444 889449566 434873187 889478624 838550931 947291716 545094449 810297472 911825884 993421340 447091505 735106292 732984742 853873597 225982818 942198178 612943032 819256802 238501292 311210033 620255488 669012691 473982080 773646058 120611453 949122916 622315417 863004022 921314334 931732050 477967846 780088281 344591308 636193366 335575393 410054500 138904459 952868784 484697189 894736864 684872228 843740765 4557897 146351292 748972044 916294881 649537041 918592878 569517856 643080637 55577884 812457193 811209581 836759030 168344305 237165195 514693386 667945196 552196898 711085127 156516355 756340254 654503122 958318240 202144385 736832137 23111324 131993642 955482234 975716432 25519865 836687832 764468172 853660996 120011909 125637761 38322044 546991928 990400435 991015258 55281335 553721589 337816658 895225465 116791883 532455632 461095805 908898921 87547881 883090039 711643148 857284057 506815880 531499230 707718072 817779829 472680947 762845859 432840334 871893679 647114892 773118523 381120865 730598525 77406617 810062550 975525424 979655397 734272199 903349629 74632787 655597742 806943362 863886689 748928927 904781528 526610789 907405837 352853913 767560841 661449727 898165725 261017228 527751583 887454545 892706237 617625446 716722756 570133971 810785120 608851914 760267892 308784753 886923823 894275569 916210026 660941273 811242917 63354288 809584279 481056268 688693958 38779540 987741842 320198083 341827821 966466161 991648130 806929865 925147464 71437638 127954248 486944350 803283256 63292880 511881559 675889138 680349360 281039414 812559211 753508351 807678224 487901957 675796715 601227325 906196455 942972690 973391459 173165101 222613633 725418613 870336676 303492784 633909289 217501036 907922822 389765837 556819674 893359196 918815817 55962942 226399204 475353566 999599836 873698957 891932836 10740232 543247526 738946913 843610890 321123440 350142732 451770023 779292198 862109705 914296673 622017197 623553669 769683845 795366865 487992599 700035399 334048877 967396066 997087951 998404850 669119771 735296123 692784999 746339051 368290141 413327724 316088077 432569946 853738359 936067635 797435552 902728057 297965969 944722273 805061513 934075275 361314485 999954538 712584063 715534220 668002825 936978602 302733480 370685759 713550437 946083785 499835735 565203007 851353634 958817277 347531588 709983764 559081725 790133275 903455188 904262658 884772400 952463859 254514584 489215704 703459920 898481675 738417046 841999143 234109690 320133232 155480445 160954774 148448307 885997511 844221679 969109933 555233295 560040387 876048755 963931904 522346492 914553305 66395484 966926650 611631884 704889904 444507052 568645359 281839671 488007279 247985811 856444611 994243684 997463279 426306913 562714602 290743701 840817902 591168557 601986759 890160880 940216354 276437394 336558315 654222609 673918087 917872078 948776537 898542814 963371220 469358152 707270961 319891108 580078274 153826514 846116218 198409329 710385939 470900229 856415970 727736387 887294836 57652491 58786550 641575363 826068590 898295425 965793224 53396454 121255502 813581483 863970529 640611736 827468372 218684410 736387764 203108139 809435853 338039562 932164440 35900498 783399222 680587990 920644191 3632620 955241003 633604934 735517655 98478740 882589316 940654074 983765090 63871751 912554298 604825864 962740991 980562103 983131037 100009583 523623605 818062287 875685553 542701850 955233759 406503941 632363165 789558257 811038062 573155731 858791855 821037143 971040279 854197181 941014549 70652834 753596089 282801790 877026480 388485072 677150838 167703750 736756006 749713485 785148859 271863531 909313485 826029862 883677381 109997215 541451538 294934155 457479007 550161537 750811733 283311071 707526539 508341635 704022484 277708841 772623231 325029638 405017921 986277834 989473920 303201834 658100613 949583218 976968981 275186324 482297428 971885259 973342139 60951179 793317107 750207766 992153409 239002474 321901491 86324565 916752921 300862659 390890926 835147403 953809194 767284018 859990149 137685913 267712157 284320528 465278833 740617846 937385325 210606033 856974495 825398977 863863566 869805694 911024283 261672525 485489337 514506431 610448339 407612598 644152994 231204357 513029858 456206491 631062530 968889260 971832538 432824507 561123735 947837165 977456431 41220425 646763427 575658385 877765735 60575041 714392940 485399221 819626150 452709984 824443953 829995037 989788893 950683747 987744985 670422085 908533567 722265258 829432743 211843683 893521884 610663653 669359037 993062343 996497110 618536932 900444141 440919597 561836107 575410653 607398359 586653794 798944026 584446994 906544761 483816170 556856337 995077454 999894515 46986483 375104418 940059941 965752207 79445828 745432252 462803346 901879400 281522494 379182482 703580004 744220248 325887531 786407385 599186929 599312804 59814941 504382016 761573922 791386781 860575261 998361258 475658414 949786644 461701258 512750260 916566124 925119479 312067971 826773932 159746668 170141701 522789939 696604145 138259827 961865357 848935888 958647814 543490034 680393455 404955254 478474553 821237324 841524423 335273431 580967223 132776185 358803146 192622469 232278536 189481530 981374501 791735063 825189508 571124635 575687701 122830694 851571338 853177434 931797156 201867561 328104493 530700371 605569409 864977514 971161837 432905289 997161215 763950266 835426065 288621040 632039197 665900025 810375820 695506941 925025570 834536305 855554709 558760959 582099780 278401856 279367846 758238260 870405654 73338403 177640730 157337669 749310980 311373998 579136611 955602062 999694300 468567419 534606151 834422509 950099428 923836986 995952180 964505133 983322767 582276472 630446046 615696016 620709067 20096596 734355982 385940511 417292733 399224712 835343540 844267361 997636813 252528458 792636824 61904969 288466865 545741328 932182852 94124977 196813535 515254144 819960612 76260641 820302082 990402007 993582211 32984812 678782215 321165135 552949665 376907130 377175264 31591001 538623723 198069291 999946172 116860463 985930944 388350411 784547610 590916215 878812288 103890039 570484281 504053228 919024355 350647145 586391821 326668520 566541569 265543419 465667255 14144324 412765399 594654780 705239469 854339159 916591497 614480310 622644116 857928547 963975504 836650628 947443241 66414804 813036822 275819667 332354474 260868480 736112731 316531959 995018392 37407607 485906050 999251826 999625347 507140319 608419381 977041477 987011038 817469697 861457580 213114276 344702603 505032133 552517453 913435770 936882617 534444718 903584688 863172446 994950730 908144030 966387525 962670833 974833513 777745649 920778747 491125345 523753505 351761775 542125843 47313263 318153852 127983062 442625685 550762092 790786610 290660048 746779950 471496785 566103761 531960272 932893646 611806223 921246567 296978190 561638869 130465235 412098280 276206937 551850781 256232224 726726427 126512747 516904119 676909504 963705280 176745923 933554852 737657300 788298262 81012320 88073489 543102341 655505762 749434154 888676999 77410615 307891713 929837687 946858315 386264545 440951046 647439953 737151073 446427919 533577182 858039875 942284221 175706326 656000664 224139913 829020022 523560074 784228803 775500976 982084122 197343765 235734518 901695024 934044665 144328489 774806036 734912297 906540154 685409592 825609280 8928061 686736252 418460218 651497094 17271859 499582431 724726539 899663120 68165226 605056580 450101084 815323670 983224558 995178775 480265304 829785706 781390591 875253068 586647488 773669636 818334029 875178290 928157440 999680263 821233263 890759286 407837273 472444089 271664148 856397047 606970057 846831359 522695153 900799012 176577275 508750828 470530218 477520659 913778156 958909612 376629912 692336673 414920409 816397998 810289269 901137658 706733400 999054607 766322925 792524621 296014833 505546072 108720072 304233836 364495057 816881997 870783471 905501218 206632797 557786307 320317928 916826059 652767458 739758296 692587743 973304461 76416671 115806907 899592943 986202269 325988217 441597943 674692975 730503772 364396958 815249438 59416185 203599197 721190883 960595457 73382196 789314873 762966354 770829518 92861736 122839862 756323367 765876550 457641524 802488148 731967817 996181273 892791668 923744711 450370392 475615603 817672878 918386239 376814244 919028744 239427445 409659044 344344016 477445045 361814166 477176133 361355857 578406645 188581066 219251168 100034186 731211158 582771047 737705034 266338774 656023115 392880268 470348433 509943441 519702514 62796670 324016672 9255017 630740738 989687431 998345864 594721845 682493876 539580413 824417735 752995439 832228313 187549665 909556276 520527433 538383570 671241267 789607320 967791959 989439427 849446648 952287081 622691299 759516513 981611057 997718275 225379673 661760879 264534947 844605350 324050252 464936771 546371672 867841276 282703475 715617855 612695445 717777099 685264838 950568884 288535363 903922504 966819301 979917572 490995673 965845603 548999500 764919889 306869853 904938718 991351878 991558779 295268653 797348212 707529142 966150632 647702335 873935685 879265477 962647936 186747021 677444446 957127610 959757812 633411780 718119391 421481811 983767150 314081532 413136612 998061471 999878142 64957588 924081728 535252515 548800907 563238552 636485046 103475117 594374809 902865636 973378374 511900272 584791013 109870209 926405876 584736496 957893497 777700076 997736523 93551776 656805642 854395627 886855023 758336557 966662871 639722611 806009190 170916462 641945939 847872031 867043800 458409227 922110675 338950634 459138858 108983363 659507563 19380456 621572457 10361666 984946938 340003626 892287108 355742793 925573686 707059230 754801296 827961583 995712678 310193999 559738529 120001340 616112660 812631572 868848484 772574328 940587258 241270419 491741218 114692217 913698611 359882671 951787790 44422148 531343865 330825175 527343962 965821322 998177290 475386667 933657142 334722590 672204774 78338247 684105185 160162506 257801824 303389466 699402287 682388015 842703352 331902497 455656811 840058100 938410062 306007118 387700820 257390914 355087775 557347250 596756641 405664099 597532591 682744247 998611129 561559268 968860551 542585397 562346225 935415965 981811662 223862679 516024776 517928747 894489082 841110018 890907231 391090050 865270265 241688547 578389978 904380254 925822003 320501060 742988870 274862521 530381946 883926098 951980746 244967783 410164177 610302630 926023817 594950854 691737913 970032454 999770155 54817616 578051749 612381588 887205614 554839425 751313354 352308743 487274517 14704098 646458025 602786113 884236134 634228283 654192411 143860130 412642685 5846163 286781752 617337302 965813545 578090431 963540095 917451989 948497446 136917061 170325735 598234849 862786515 348160284 828827644 859728229 892783591 25887578 932098752 213444804 719318534 986449110 991176446 451971092 695756951 293405540 394048609 632029344 783771344 663420504 746714918 923399807 953877351 318808360 839384840 877234081 937582351 480712882 897923545 915007756 976055085 988153372 997177827 999092172 999278848 959851302 984157144 835673915 930470276 632701597 739543917 994192619 996313510 930691144 968636009 649778480 736570295 523404549 967353984 416671596 900378924 532158225 767876892 77605201 830944141 237166162 494255022 303789005 315258567 237545539 833746383 805961140 859411192 815559221 902866404 969300051 979050277 631309008 674289231 565785585 622831573 655716337 890541220 461736543 730750268 481281980 634832415 212187185 554831425 9184941 358684634 114220186 127871270 569600754 635439676 924709628 931262065 453111308 835467038 7653052 461637515 988179559 991504783 943092681 972949774 81027978 870518984 26127118 690443431 177938563 375886040 325578530 993639517 864466671 926422894 845963121 973182661 103728447 943558601 522758344 695173034 925676858 947382432 200884281 987213102 753272521 903421954 36385806 886074989 484261979 589460648 133961585 228654846 1685976 793717242 583738434 906178855 815699223 997343846 630218332 982879163 626322175 642066776 859047558 949898274 681200888 900816756 117638203 865364236 18115116 623594047 144848537 592682192 956891792 989261609 8662800 890638767 169712467 744207186 28601095 192288358 255801303 830244873 969319003 982356960 598823131 762498953 481775107 622211106 809202452 955298664 551838282 971675514 225290268 731030803 889021692 914734353 889409909 990915252 343970542 530102704 880688103 935815002 848502177 898113248 188729546 958596803 772262207 816468206 100214284 900412015 994228681 998728749 96210190 360136447 758220456 848898113 579288128 965240126 318172445 725418129 897262389 969707021 624046848 885267649 595979922 907743795 839399624 865092054 806700091 987226740 972945490 998602560 100383771 907962657 241368734 904728481 874947070 917430165 268334671 615976120 827495186 994419158 397445161 637833548 18439600 33539538 134127600 755799576 686421048 918595683 460357689 755475343 405811034 654501197 528111424 922183308 368277665 434826915 251940173 814161195 61201413 399979793 838628844 918990812 896692620 963119967 995092197 998368019 330081202 392300244 412522184 454964035 498783163 505669643 717858564 792031342 381225601 733094849 643792879 707073960 269876385 799932828 676327263 710263082 462601178 592929709 333844855 454253481 749355561 808884811 28460093 946791735 420145922 604211258 563491678 966378646 171974334 560827282 69850356 951797464 798817108 808814588 16838475 827215799 855661499 972431519 444187362 906288640 185221001 326423754 234165172 553525115 865192267 950962724 293095427 695844763 252111238 262434131 55739415 825869190 251720419 900315037 685801041 712102582 267336130 280679722 640334640 960412891 827314592 857525957 738130809 789655991 607710246 713428850 87311507 505633226 458118955 661516774 180541746 650931719 204810226 923951221 759702841 846671343 3862094 921780469 711178555 847963332 334312947 962962241 720856537 991887009 588685835 637188623 755087436 837065360 949485904 976879982 195018749 816658304 830716669 989437131 21868089 978351726 160806597 783552150 99459213 496921458 627657946 927521403 576725188 696248596 773848285 865179591 794287541 882591572 289803706 997912406 739664731 749367153 274863618 973825721 743671446 962233578 804155416 872796267 330720708 672918136 41664053 657487732 360900399 932859874 414143789 776039131 920084611 989927630 659454162 845641825 244212270 559656505 188081862 189940015 624588858 965652572 136898461 353011656 885072382 918918722 125886372 774381941 74708629 607938694 195566002 227281038 912322107 958753431 594825824 886874711 386459358 624957387 551204470 900345531 486202040 764225563 505223702 660371661 368272255 414997019 756648370 950474973 635132045 815246530 730314510 831574875 685731464 806311561 924279873 948464724 902388429 904155496 60253023 644267366 783215985 854304529 30699111 213235390 446750488 628864332 111611971 769329729 931795647 945257879 467952467 979696945 614447936 817412279 133816028 249338028 801618551 889762304 623620830 723065762 696359975 870390938 364960894 911355918 951584006 982881142 151912837 302093647 319798476 934691634 108214739 929276057 811673834 910730449 600024784 722158897 762209676 816051619 290743476 898685250 214605973 795957013 675818621 888494047 244404732 923099421 545021937 798357226 111918680 645213323 753230970 952135775 696222161 993770109 164989324 325714441 105674777 786208294 262417998 998738869 900632227 983518436 601863324 635816010 328613750 894415317 765843115 790369095 994873379 996583681 452741868 963334356 319710250 571161463 157442596 646978832 110771106 450392834 608251571 679763190 228966272 946544243 465800814 521509612 631328008 699345868 5868826 385419003 34182218 710731468 696128710 969495567 291436094 776720234 453652217 462281441 952776464 986400958 339250517 670735775 721393513 818715187 314174871 935994530 672128181 924151309 417584798 605071041 66069693 877430467 366032289 763436126 434984976 853515954 937925406 942440123 818871440 971973942 795496483 922930991 656381789 705084792 228511958 339431440 423458861 815481101 358654843 792823730 574654218 786477468 856646227 989658791 421034127 825596281 684930645 736482761 690472197 807711401 177920523 925772004 505556389 664654715 486825706 896714663 27632186 467054807 432818020 499449743 343562542 465903619 75625272 84190141 537848023 586814446 832734713 989343428 869565140 966676183 366157655 575959847 784406396 908406478 696740694 753909275 293929375 721251559 866100090 868535530 178325077 737619943 269940062 351299666 769240729 931414735 620113636 818033176 62613833 730820899 292550247 754432447 495236361 727876395 388226769 836654760 85770758 268828946 652596571 809109085 102487917 210499149 957546954 990070841 860186630 948149504 872129672 959197808 545394200 548772984 266491640 597244048 456162247 714570949 636775961 886682155 312804470 658425927 936472798 975134669 145879396 461258746 901859499 995841121 455443432 683518014 813488299 877499026 450501683 565921881 789341018 985584398 858306786 892427377 127894285 234571008 62470082 599537369 479655943 731240054 805892456 845986542 611004936 790204729 964896352 996982708 621319507 627073097 475449765 865769242 206184449 452021678 416112970 815662775 188041123 584927187 856656437 871169023 335552762 949601249 405104985 464438481 87187743 643788419 18205918 464441781 527124894 938094951 852886855 870975372 434578475 669658952 972554405 989822220 977488735 996553122 366087784 833910241 290571535 828314355 720637568 971497274 239059495 336943830 561773592 860906702 465157407 849909823 826243463 902197346 482211559 661808441 556086850 615265334 57303941 929430078 710176379 752188610 398669788 437523624 978439657 999522363 483829795 840307162 649387146 801253749 269202983 471090287 511555003 556272633 305874471 703806128 820802867 894234088 49189803 744712253 634122439 825032720 457591063 565839940 672257933 883332694 549691534 925301163 245631365 761824546 772315447 864308565 386507974 876013155 168418101 962347295 381839718 956230817 622865883 707826852 777916158 919559398 681368052 915810886 60726368 262609411 745363913 953204591 894333174 909618052 809333306 853009191 139479185 192131450 440610794 939900222 402084021 550167500 376960469 824170587 922752404 981886913 190502607 562689228 328703809 843653147 824911522 982364249 208448493 881240220 31339354 719836541 628628197 989838022 731862894 996340797 422644978 836089656 43990355 999329155 591304697 761469830 536521693 619193138 185759624 377623577 202723184 541057551 258894344 783302203 721736038 982864495 782260815 808840175 937466275 968607106 300731114 691344842 526898595 913232956 93847714 322525741 269693453 744596882 269631702 460804927 494962012 648982348 353735347 883818305 349632273 918041427 261544903 414715994 144596265 313268839 793782255 859419649 896441059 896644328 423694224 810023997 379771490 592805139 500841149 633542232 165212597 541486619 969073244 996072052 652039869 767334982 617420540 993141947 306298743 393496822 853899147 925960762 757855866 951118339 225675804 543164151 979252277 989589291 212177853 272827044 138304768 896820610 549943424 948544575 834618183 929390602 244647374 386721272 130774522 321915107 925765223 966880809 766588977 793730365 469184887 512531954 895029759 945822657 862900312 960073114 786241377 913393058 665932019 840562708 182141467 202102257 784792155 954705986 162571 652089091 303597403 442776609 258963911 574567044 119679348 376016971 287868131 797037443 218133537 639391225 822774077 943266117 824808129 995936580 687254536 699540945 247784094 465384363 81866954 502960665 347169420 513587974 855754589 920508560 567736798 598541587 94025795 627446973 965733619 985862782 760301653 782531215 116526242 705219651 138611431 351977837 120055339 775198592 820837809 966465320 713887928 864932602 322350628 498549753 276089963 641118025 508609345 883505092 890170336 933974962 395359884 740528899 209314409 786159742 283534436 778028254 892831636 902294541 105235618 914704991 315673046 977742781 725498360 960706010 977570490 994454685 919327818 964832635 532111839 765470040 502854332 602979361 542596962 636965965 534545075 791114525 441036004 872503375 447562494 763245678 408010615 893335186 36772484 274282337 782449249 920217754 89090808 542319857 79959006 592739012 902059388 953018732 68108655 522610214 740203958 777632918 965025705 986941077 771966550 927599094 92715286 987333824 238968107 525130190 754442887 792013794 436958655 737417578 537868306 657449986 633984642 754378631 577961819 930490379 720794584 894055050 714593589 882722369 149113727 199460919 234490235 904429367 113634572 457805674 683931477 933196031 341197555 922610126 661754263 862379752 681274405 777269487 163590892 944769444 786900054 879686420 580385082 644931429 654040523 961818331 430779689 761171440 81497369 854744103 899817572 930016475 265943544 501057581 173293807 656498883 238181489 403499559 216467200 296301329 597929719 706797668 18943637 114393248 107353372 326758823 468499880 955042715 557884598 949334849 718692155 838744418 965628052 998592437 955903 372694528 935479273 968626531 319647546 332032277 840831584 924402717 521871695 559413761 738796965 746461274 885717095 998913630 662487976 675464432 123030919 257215975 549714021 712839805 918229339 928731935 336583355 603006021 795834408 873586897 359991163 673918849 57528953 496469706 1353403 414771835 3258048 813989651 463358714 584353080 879209014 891148779 566946329 927646941 571211753 914743059 528931964 660328168 103525537 673959783 330946100 431009428 933082632 988979797 797805371 852195624 339088849 979083352 105586180 686795798 187762745 486699231 234150341 464845202 970451780 988061107 633565613 996258054 633998461 704104979 128825109 166131600 725868405 976296963 746262812 981163458 735295904 785581923 24270578 825230840 31249690 890878602 564802489 982429202 598006588 605125325 310996419 890546325 305931025 877830094 193556623 629377421 497529462 955889896 712616325 851258451 35197406 987389840 170171035 806026487 948743041 964799571 897861005 985403538 174459256 741178587 458170454 704107478 62506226 815184243 344526336 478413624 225222522 455625406 416540371 611391382 937702609 943617237 800556619 878140669 771165429 898832778 68295248 580107182 682696951 852119406 873384226 993392528 428235266 658573127 272574891 798556954 61236790 659383016 368189646 856107560 611415759 942786206 618629931 989891023 28826058 909245930 289599307 536247795 810777860 883935670 456453918 804321537 32903469 838597856 325081684 741035544 743990467 913076693 32006508 337046372 613764931 829601129 722620788 852842596 344094565 508600589 637653993 747514773 412211350 619463455 998310779 998715395 120124823 611066428 306997501 743149178 714394364 730570549 374679250 488951812 444248659 518464078 917932773 988246250 545879783 744501222 934368174 999167203 873195981 986806799 499369137 927681807 752144726 755187668 989199624 999632370 329492165 673215894 812069765 868625928 200043193 995894296 213428082 683134680 780861611 928025417 160924124 230853117 925906692 926631022 467337978 668381010 273860666 781965132 143086857 711257563 183042488 686187814 258601054 720433707 502665242 530983361 233991358 815797799 20018437 231220227 120939746 327292060 503808466 622577807 260297633 366127695 426314552 461761891 180355218 700414943 219429556 664760573 16059576 742046227 391738390 442253365 445020992 445190429 948873350 952926652 353075060 908168295 420453406 832636446 8221486 287065811 752040562 791463854 568621058 936604207 327418298 692188730 511321298 677390730 815046096 856012909 417457852 442491633 704652985 718087540 703440823 891658573 620832843 763871980 83007753 190871681 545725061 626513944 197843899 988728984 959446635 961562722 161297938 248451808 661151363 850040469 157270680 787225554 898459569 945680386 983100874 993713945 934854618 974809595 307460068 591987626 456127960 616222647 910015951 932412436 35968386 374818316 188032873 925170747 588825836 783425165 949618950 964760512 214339023 404704291 48494485 707323244 351773082 652097581 26769185 710778269 738087806 941237771 752440638 874946755 11307104 914752037 781279847 956467191 432578080 591668309 830377253 959767022 403653466 703776714 497584421 829270805 635227755 817936562 688119954 966147222 480493634 800005946 969786114 985280790 356785241 857886643 957561971 977665534 343219369 583832944 766379779 862031127 563102404 798809636 901282417 979012313 781738781 803151895 603218867 900673987 930130445 961671885 675925078 976521186 195130327 492207967 525668709 667310433 810280877 905747914 567070331 739167056 197733329 365873216 267097349 971739019 754004141 932061398 569676309 939339322 420997612 530463060 177695639 265165629 400556265 422651410 69929735 854281286 454379587 562001670 612821079 876585310 217130886 979323386 230266723 792770865 987924588 990228676 715898321 814037967 141508335 524523805 529387698 992426137 442242305 913271288 251497125 405556266 746984266 954388900 446392900 878066929 946090808 979571130 474224140 632041219 140903045 962758399 178100445 211996841 252458877 974948922 663400194 947738066 213012875 716667458 549497985 653849735 433662211 689524487 300369801 695768336 936633196 990083138 143168339 451668742 245024098 611726620 292293678 772440993 359490116 820467888 626467235 779690352 696840429 891779962 927424456 985404497 484590347 759675518 65661010 243277657 859705810 958788584 391822340 962437794 182169326 506917427 559326211 688161139 856404717 917409473 712356655 855029107 200087174 337046143 791840389 912273908 442089617 618469156 924651457 933254085 429520503 746549899 625619552 905777770 957924983 960357964 442262889 990633645 286618175 296262310 611915061 774920877 739809825 771425137 789016466 872007809 956823135 991573797 218322881 692896630 394104960 842481229 293847122 599448837 415726825 617929566 875252603 934908717 264400892 404059177 385392632 814961654 819210638 911247338 322094168 747301909 531989460 907519601 487962927 822544058 629587155 663791590 665888718 723403658 291514071 533717123 768439274 804205572 926053783 933662181 93194542 772956228 150265844 506050024 657276246 901518800 847681560 989396738 1126447 615608891 68464088 185074606 203267085 862715927 184283122 378286337 844271359 988691265 594896542 829419530 600741127 884734163 946577072 957324386 740295398 915271033 875195292 932601759 479692158 805166436 193058152 807006676 169338494 181122532 775713995 905013761 57885225 622634862 210338300 251318250 925304448 925699277 347503110 585209697 291788135 924415555 130737910 585470916 151095129 523043450 275912754 613581393 508743810 865928232 143794841 523004203 373091098 759163950 494733934 735463003 306558365 679261853 839130273 943037184 644383321 802596868 732878695 799777474 459058160 486574825 447141244 827310446 729993326 760714398 30732546 41702159 369009441 935869609 681988973 698577247 590282981 682757583 26288591 94325060 673911404 779499689 812013834 951411875 440430525 807855562 349732883 885659177 600487225 719217370 190788879 460564259 802634071 995143358 470973554 518549000 24723831 531908247 865773542 899260132 160820550 180087398 587428223 589131275 16748135 70730888 332543208 976997744 772277374 880677504 481865017 500968341 372656513 888614338 484127368 487909986 285489282 633087763 830826712 898455811 236265898 450052343 567175645 919333614 972758486 975842160 802111684 920785160 766111786 789713110 919730315 977972218 596579516 606247658 445343376 807003481 625945441 812013199 443108811 906936265 535563140 738108269 239178027 588353472 379302344 542836900 557015833 889371593 742054938 966305488 172986504 550817178 572211956 937324814 499210257 747537008 487078162 913144684 953388710 983829259 457138155 894310498 874536781 965823052 97374832 842921308 330697317 501938074 584651404 923152087 919082605 972035758 370309282 812897337 268313300 273548122 387557403 507196163 240430479 633354824 942467403 975167234 722122462 840346356 529163223 988644936 788626673 915330562 320209618 760550246 899417278 915783844 376965789 915233204 953205827 975862935 361802384 927874052 251719322 253678725 45687397 574472700 946407108 995110545 485158303 633968906 700534403 941363837 245797096 383189959 169785956 663011243 660048388 860925797 640256399 960000028 356039900 693468146 314818088 409051471 172905451 703929575 450371529 713064119 755032525 761345415 640753186 939292060 23791252 500577718 630231665 669835668 765546470 824237560 610716192 953653014 17522403 325624036 32320103 40765520 476487516 526753287 313095672 959612333 67946573 146904378 738082115 929553723 780838488 927674051 551102022 917140715 113576955 533315941 197461331 842920208 771002013 801498705 663179339 940795932 268357484 352693991 405535329 619921582 314315617 672361374 558014341 968322813 90088179 166970829 324922425 620512591 807511082 956950286 329324449 674351893 698428431 807068472 956936393 980329523 584966939 845946825 649731000 838324108 132643453 424797703 406830591 432295748 809699316 824406222 36082550 799504997 115810852 303546813 46809923 601531083 468757803 839100173 364941917 727469323 729644901 748477619 934968174 958822792 892800105 970711734 789224848 968503772 612227492 868436290 572610682 610160527 133472052 756382794 478055443 898565049 981849645 999673636 384870938 415791256 636316684 813043454 782112677 908418351 927731899 980046010 700793388 825928635 926379689 974300093 187239416 373805811 859423914 918982281 211254661 994047649 336557070 493344425 681564680 993555200 460172879 510228400 476573306 703265943 733650384 919345611 926508218 929568186 482146230 994206769 538281267 865419927 961455798 991389528 310121730 863100378 699231208 745533227 655067641 656493846 490955475 636984825 923704573 962592755 787526721 842432217 48960815 360624361 404851110 409092542 533318909 747717592 924720744 929233564 720929576 789533073 338912790 930943595 289118733 829160719 947308955 999903800 833884621 859612680 425313154 782826516 612317461 868602521 100835746 866437836 72264659 135926882 272031848 921660808 328042870 848656643 256680336 536026117 786206755 883495116 476178549 996625445 478795433 958514600 540547664 653621276 256662028 862530607 958067862 970700006 266547918 520442928 509956628 627637406 647387512 717667721 907174536 958880792 893733970 933088339 335246502 362253837 979956827 991979886 147015751 148270687 840957725 957048793 373138287 373517108 270687230 439510884 822676101 995051277 620595630 900267702 77704542 430855723 789021645 966322657 344329675 807144876 358272249 976711235 826823478 878617016 413359296 856679387 418051454 601509063 988241865 989052865 200407184 923039296 319993566 484543722 892335108 909332123 975505152 992352812 418082649 794945620 160132295 893418266 683069524 712874209 933013248 935364877 112579815 950280305 416586182 794422289 270971588 719637699 893953547 965428474 721868509 896860358 234249125 948034066 641801193 853768482 190191523 526001912 750768617 973580113 957474603 977214461 491432323 662967705 620790485 631268077 992649384 996036609 504930693 760609131 431849153 455099120 389961713 607685436 283157052 650696466 290676652 991459412 823865439 977054234 780311323 967551419 842151894 856671761 296505731 892072193 658936891 703405297 402421179 774334720 770228738 792672517 689452598 879379820 438031035 699381974 96142881 219964273 708470978 746752435 67920778 623122484 594624747 610083327 396358922 635370391 143691142 880499815 287460386 748720474 830775378 866583325 608085225 816381709 834256973 889220487 34452102 696683740 517774361 985155538 157379465 561096916 768801822 823198507 851141987 939640431 451806672 791701372 672272305 754327178 603937091 749585395 499988426 578071475 268907782 399758983 873938164 920388570 796770987 805963525 574534369 702130443 447596318 764164872 9770501 852388429 473189373 818563502 884440729 987793189 821960291 833103367 672404064 735415479 469702580 529161539 344034524 732947877 618270801 783596453 998923124 999897732 614683303 718381596 348302920 861908324 539880554 860647027 49771259 894942493 53837383 669052513 581004745 916819700 902575175 964103714 444330336 750325151 286768085 362259715 114950468 838959873 531606683 726378105 863219483 972145707 274182763 531919933 461549170 579374578 677550742 991810854 624986537 941807816 244787719 287896371 491087860 506151867 942507284 950515004 136637778 934330670 241299252 326763294 960971475 976697698 844636523 981588478 429811960 607428400 361690560 710091634 398226380 404953482 850594123 973434483 616231126 860917984 596305296 792468740 499165941 785423699 715767338 998153090 721588486 961493356 517381806 640788764 156627898 334746098 323798305 422162998 219274295 665297334 419926021 601635530 812502562 846638280 885711100 910356058 689957668 736068871 10337278 408952818 621387923 944781587 865830243 885165942 174575067 689718357 998332990 998995493 829526456 982312388 771716538 808202703 60957506 846680597 699425438 772576049 878103149 933089939 552773734 902199622 372654282 458298670 892807830 906054123 844066825 944178873 750886286 960567741 788712469 927759489 839326641 953803617 167387927 360806960 7845425 336415101 453043788 679912968 732455847 976621785 325764081 369772911 487606563 598714110 403777452 421733248 18655726 388723989 4052199 112036637 988010033 994835847 44440703 677421343 622421019 681814985 490544355 965624026 533424318 964581993 563156313 874063941 761731242 918812194 988947447 990841485 877875036 973386763 312602853 991619092 19310103 721843353 214797769 693564758 812263661 953501506 380511950 404829194 719750686 996953675 477355282 650591264 20758256 91780091 704521347 711955242 230203700 548518759 703777371 931613600 894470796 975622741 776399452 819341737 501430147 888992408 134418519 158199004 255198380 360723291 443265220 613922989 39711661 906739582 769148513 833833639 796851402 973406348 603479397 996095973 964413310 971725526 802773990 834663498 252545495 292807688 152810513 434586213 480016635 526356325 346056325 773182296 21475848 144307852 558674181 842167350 475033193 920725734 636078471 872826669 914336746 922944889 152995981 980178612 594694026 674209097 302266958 658055468 104487831 164669518 448251126 753388181 123776177 172199588 778575496 799780884 171336556 564631652 445484034 523526575 843793406 998770785 143541800 462228055 93466626 683282345 809280304 866283252 93895733 887235288 610994945 626913987 203767266 234194970 356057513 454761956 949368851 960994568 131033879 671878387 591221067 721564081 578181631 920363193 971970680 983271125 44176727 601337198 464895606 916496143 905111567 946528943 640470562 729367609 953461827 982268712 559729274 958912414 313322304 948541510 438589575 721174239 370858836 569904858 35769682 168462475 233174696 259622589 225775061 742116337 986160415 992838140 20259563 616244354 857124245 998263035 787981730 960760728 94753328 965780469 931576890 985522705 500958417 993803768 447177816 644197120 611332214 902896574 133425238 317565432 490300547 778981000 856420521 870075098 521579316 888002340 346421465 432807654 66707627 153591822 934874209 996530009 620705210 700925848 424825739 772189077 627027308 899563987 87688623 847980208 684333193 725315732 246957718 616810801 311996992 760787144 254932598 858771712 872746593 947756048 60393536 922889296 631736244 861395855 743333866 790033225 699019604 842036691 15236808 39992850 38868950 741084579 451230899 783639927 108908238 181408624 170833383 298676769 173208092 497047226 899744796 996695023 740485183 968118479 287849060 750296525 345947511 492030241 65664855 398345636 994962611 999795592 30714131 194125107 622428262 983214376 791130861 893916477 527439391 853543579 238883924 576356624 524447919 585636746 781601533 907573750 291383780 315682964 36368991 474098709 580429903 902812077 849527936 928083796 333707176 719650499 207288962 288130151 411264757 555073355 511784101 902995084 866013807 925738204 12582975 672219146 133370385 550808581 895156483 975856807 719337251 864513424 891838588 975704488 577240156 943680933 259398816 348402147 992999426 993754193 188342631 652996848 374308540 972069377 136331379 873352749 897312347 904102064 861434636 864474937 558670966 676409192 532927829 595960719 392662650 643691375 680371003 853734771 772702407 933924279 19687030 193511520 330632242 633048178 625142797 869760417 5585858 171132741 624777427 934410106 566311549 996124907 643239502 665159076 408022213 587584236 888399274 943625741 543048698 591046634 407231393 632590644 911544893 918522015 934601915 946906520 332712244 422199415 564741720 760183002 441730196 572433412 942556021 962448550 173934209 757443649 294268858 927988400 95635482 956134112 77645390 943895640 165721641 632817296 238610146 431980330 427511290 529774654 418412560 559117254 215954267 434165589 369887956 833857703 962556066 976467262 742500725 883210140 905025089 994571006 351489006 692259580 188595503 358491554 365351091 647799963 9015145 860959294 457938873 892239096 314489874 783862592 217324247 505719532 660326598 837514272 752324313 759735482 77941915 629206736 336542325 845598734 975563783 993024964 251415294 370862899 883786447 987229364 465618040 722244179 479794641 770562045 685920351 970619253 785096516 949682915 432330657 995922644 298170299 829193388 364338486 401541019 988111303 991414270 713857610 878108432 978634917 987399869 420026727 964780659 240770037 354233483 329774350 751874193 133097736 598493139 308768747 707382361 156442311 270859906 241082074 585771935 667925475 964617287 539869298 592878551 478024549 524781142 965321920 976568794 126898577 590710473 339445272 715000787 327654445 745566205 311657729 716316805 805163212 986602444 443608341 987420841 453855622 796047041 768807946 992014706 730537345 815988989 468298011 802118770 483642506 742023422 696910869 977874802 170766965 679670785 725443448 843881300 54677972 192135454 87578658 154296367 55960992 256723572 609956793 641391273 564682112 931961970 457734909 642342464 935303200 979921263 62932045 568164598 854922687 972833474 734648172 743191504 361531 685013660 660119979 955764384 893349226 976790810 310079699 576879752 257212727 898446125 713027838 788251323 755936336 834407903 90247035 590089064 301273370 416845185 119676501 540796612 718411594 844331304 890195230 951108557 138776960 428817779 428828117 769312342 345915312 886153936 877554131 944829748 577028880 977229679 433832002 503165563 317376163 513875369 331466399 391436703 412402858 947354457 323770923 540466701 718665367 796979925 406854190 621920717 963932333 981457058 339672571 461825080 839503838 941089608 248050640 650190352 965164668 994473569 713681721 999535433 101391920 189012312 793979285 842420392 325381538 817376969 829383705 978724758 545362957 881368565 687407710 912973748 18419666 177849315 231677892 593215370 767807201 975879220 353610218 966760176 504106194 616889187 394200633 576230820 82172158 781967353 678788470 995229035 208250800 474026799 603820283 934752793 133266640 506949683 964589120 985507816 691196566 990871946 553913689 968842719 77663388 586672607 188476620 201705805 87578285 594148240 245732211 604608755 485230618 811600599 634996555 798081198 590905562 970964415 265735890 703555563 20280143 832365305 415794180 841126916 886108137 930546947 546562430 617760950 828989171 965851502 879140830 914691102 848267338 998441882 252222876 303864508 405037168 951166875 770979855 846763937 845468823 990160610 905886006 999335118 266850321 588597270 497513205 830690368 641715677 779592653 577928248 745483421 570713477 859497196 422656376 728791210 231954733 731794679 417608672 981647342 784147790 839842271 979742246 996680349 232515939 945268945 537728071 653574423 868699028 869299266 584140105 973189367 287186100 826128406 995871507 995967436 306719021 366352073 549819940 677525996 143593235 428920384 310326910 922609362 793054159 895294873 952390761 979552275 161787968 374949310 471289196 627786035 436452163 616841766 929521499 996456274 221206518 705747822 233867024 506516096 7881645 821734681 991424522 994017041 105388769 260536807 470813520 866338909 348188880 893910110 506754986 885244922 890258529 970439949 889652268 949876593 137088729 541265203 865640535 898018921 454420512 752446047 625814231 742006846 145695019 603831120 946338683 993731506 389343068 611233079 384805370 725589742 17878792 930873691 711684640 830932004 372146292 447270166 821133314 885152906 819870360 918615167 442145059 619004295 285031069 323095401 988283553 995019023 975464989 990867066 798349181 972189065 230386731 996251010 84764103 756271179 1360845 893644725 875861831 941396897 947317318 967705982 79920362 681460516 374541267 851030408 988615706 996730350 240313073 315410186 683802568 737854672 310331774 356448935 668682693 808722298 474678409 792953168 7654651 992287938 419916282 615381177 896480211 924198781 601529182 635795253 715831501 916017401 686796042 795506055 720836571 846835951 209468238 449107936 839443939 863458844 813137574 906237032 8873767 239588077 68624114 181789688 118456856 224365848 857094382 894353077 36823519 565600473 349842583 988529726 815594719 823084653 817529300 870672213 298163185 599484977 515347474 960913278 998792790 999140168 829104472 832803606 351251573 941548847 816058289 896051767 574109 22089292 604097008 957807042 89820246 755604715 526543840 719346771 921472730 966530926 324548256 329814289 174822803 969994940 489687096 852809245 183901193 822739899 129650519 266157915 829293549 846454941 607377510 850862294 406631602 865449106 675856951 952473866 221006026 820144100 961485492 972083767 937053802 950348618 868917521 944495381 419728115 741473242 32650316 202307697 249417117 928050260 342818928 451351396 993266989 998901668 232132150 475848314 907225940 980906600 578738502 928048481 147304144 177513063 375607297 458500721 613448950 955616872 308835289 397638590 718504586 922738715 122238546 603434677 653554765 687389530 629256947 926937741 327801116 599954023 423596374 547585615 27544669 367720056 766476805 972349497 308442897 544879837 725179688 833764957 670262956 846883707 802589340 807678851 505393371 711976696 416037287 737948286 859025752 930706179 261510436 941753162 317068128 711105495 921228594 999107069 857893927 979834511 33603441 129384258 390804897 510830154 56037693 86874534 388754029 769378380 145814088 764087904 742126491 887093800 662615382 961587630 402553755 744747095 809983830 865286572 708730612 820337860 345884604 652582325 978831508 980054908 973470375 980685405 740049525 753808465 869427265 976352191 899781459 914762418 193879820 766852214 595294153 681662998 278573892 596887808 837270105 978644444 359437491 995228600 300138559 576872321 236993037 835848312 145764060 638394055 959882480 997837444 158059035 858335104 206614609 286719240 344640698 821653372 603867194 717088470 958028775 975262803 701998547 787310611 596309835 733164338 600065649 644698010 135663721 166645809 157259710 675849597 774182099 983363458 944166422 995648272 188936631 535006181 107474603 650364429 557536314 807732846 862293828 906870944 210944792 220316895 998513796 999646672 677752260 979953546 569917828 591670395 993415752 994115316 362730531 539518896 881118575 996665934 337207448 492254027 142908171 583509267 472829837 596953082 766383217 815045389 360375469 464151643 871077316 975469698 596087075 650999454 334446 599902533 193358954 980904351 495686649 511162972 897918789 987211474 972049654 996008438 338111001 857538389 659931743 660170623 53343626 126173766 850070653 931299217 390716773 446833380 287689805 450039291 646891250 684927449 617520363 914389013 912038647 920829225 397498770 834146326 637747827 866992779 999037031 999447686 476821531 606749796 329389057 345812743 713342010 804076562 836253729 982491658 917555956 932927779 693615396 842575535 153250047 160003496 368499498 832143282 474130943 793821611 149870042 364407917 694151802 832140395 324624885 549220458 958935492 996336609 139357538 369871688 451747130 890270023 326363160 851811380 814574494 845036959 94503910 761608752 287488904 463512209 995553014 997102396 94978680 833688824 493575461 634136594 495635010 943063983 521974885 579063490 980886659 991781300 110463706 904882436 168892276 947858586 770881439 922754111 719300597 930068372 540878748 543026146 758345645 978902245 387929578 984551598 481855907 849560073 668740001 814549856 478801916 818949000 881586376 886170785 345636154 403219130 204935262 317013025 949583998 953652539 223463441 663407493 735829992 862762135 975650391 987012145 160254000 361621574 924918837 979421556 613886648 650911792 520723229 849298303 973257587 999363476 284703772 606247873 35388037 780021261 50906175 798746599 809626452 934093465 836679241 843099508 417194333 641277960 181466365 982620995 231296928 335598603 480571307 907792622 504306369 540517367 707484519 735027052 261261906 671946522 574338340 928530493 144361514 806380035 770539207 896949050 137631749 984112903 362556139 517908239 23246236 374921714 19025531 496204680 667316730 913310973 18496589 785273824 163761721 632819111 872629689 887230653 90619395 377856981 761353174 940112724 651867979 712303387 344975352 828745478 516243382 839821699 937008028 948429524 176084286 288470570 672852361 870645693 688422254 715566323 210347780 807147415 678601911 803975090 8754273 183616310 675522296 923680716 832051934 887344550 216412058 309145272 405722452 623959075 821496441 863335692 579610779 628315982 870446164 889075253 770940395 972886372 6049172 393984341 144693888 741275751 463082696 922457996 159575364 532513560 33202306 164364851 34474236 525312849 122856227 784260334 450061842 808293517 819093989 966798072 66795146 258452281 373025195 419027072 229396917 244902140 276188695 363357681 942015557 960116276 868813834 868973306 340126074 657205359 34545429 119860588 241413775 572753801 855147618 889287105 390572280 707100954 290314957 364307501 649692583 911198943 561667603 697523279 538691154 781349971 440019163 984498160 786477651 827029364 555303455 859519803 997226011 999386767 705617749 736011039 527843441 936725572 306681156 451469757 567309962 834437855 521053329 646167115 82645873 583683861 422846868 947734034 126798320 645122379 493119909 765008764 357971001 450653958 864968873 961156978 833355844 854176431 635496351 900505461 670407523 763609904 634440261 988617199 268107360 336530419 262524412 512699703 103014541 803361918 649814067 907461908 971816319 982971631 286481217 769912625 114486218 454539158 37296176 92081161 365821634 808064190 453551401 700066250 394238812 858408759 173291913 577086437 328857425 331614511 221038558 805110903 124542561 159740309 63695980 956086228 634611212 768387049 675067459 872481051 875601087 933742987 807558277 934476923 693143959 700667867 926125934 940879518 498366286 540263866 163843562 551422775 893695292 905876662 986385648 992667048 197638005 490261106 784377047 978011571 226884517 734422659 65530261 518479761 738182815 801606597 18920954 955173790 189383693 737373451 330930459 844800275 765052066 838826267 423365785 640298835 712780368 986118457 517509630 806441113 566998836 779389760 734782067 784951128 342548478 562402007 707290748 977264768 21076520 183963822 616360992 800599270 874430426 920646846 419021225 900492364 575634169 649739589 747933980 913015237 316647035 342139562 793993139 999960879 738665983 940794803 288099082 641181537 87742483 262209699 267233608 782370510 602160832 633721431 512147588 824666254 496592322 806365537 405683855 596672622 341643527 535582327 598578051 662335046 672861944 920440291 610353142 634272201 952535280 969882664 922685065 924882703 713243227 859876652 813510764 855559623 841882611 986052226 884461320 966452786 880424694 883886141 250287074 389198054 21204253 576888054 309508692 386302187 227512428 646109075 209951503 240946591 82001803 818352307 854496005 985571911 203613962 478403616 842341589 896681777 241080593 562852465 414874665 813582713 782150558 933219362 679559206 723635714 468291492 857666356 438033537 927728278 87044291 880894215 172719223 860153049 349380815 350491691 656365170 911816401 438420834 446324858 783328199 909045322 975988089 987986509 237781053 867766524 216339548 376830387 985586171 991319633 154303026 671158779 466714827 826050381 853567435 910222348 469715781 812302853 283099544 710291279 764943390 827760217 994655064 998854313 46715945 539010709 528524402 983207902 714070042 909676931 383948197 755582572 539382394 796441946 915733492 925362803 67456435 482606564 472739081 479349549 90179701 974653125 303102954 797874981 886083401 982347170 11138231 905544039 999379089 999466445 144653739 294377739 818593744 909717292 640837320 719547604 76590141 720131313 672195781 808091390 563253936 758713744 976988481 995702055 602921063 611833211 997733811 998591163 400126774 456008569 692509828 731017697 602771174 939101025 22348876 418170018 870723689 974625291 657708928 715102761 789789424 994527412 206977112 805733324 197306487 736556639 313818934 904582205 748378082 765545554 499261041 716834285 601848483 810005937 434827283 704979205 995627968 997849181 627910387 934975291 625599193 809318164 772011984 949763128 587636362 726702440 591043050 628996107 564571756 830975403 624019792 642074153 522792870 978774391 474025744 638060398 965579876 993586585 596405288 716596516 6160548 459577588 447462098 700055767 821560528 867640084 387808321 586663549 478214673 974137642 733029316 747731142 436691732 805165744 165376314 775524750 6490998 96230337 512608634 800309865 340724210 865881578 488445207 604750814 553251386 807414421 170786411 764565170 682575557 848051694 842007316 882180346 431828320 926347378 883442974 955994764 966253735 969473351 189615117 557273065 469217420 643595495 549854053 570228367 119394762 406577089 936356254 995501990 518708465 868802497 605081853 663389454 143465246 404301010 305970548 608141751 153459022 677565553 336877698 536516925 575236038 668749124 573050490 627115779 338415877 342138998 2876851 266861980 412457289 787961248 968791348 996603113 923129181 987128079 848447715 877948117 759507719 992631607 518097689 905543821 654577566 822250068 788730525 984968638 128706720 388733317 201776611 764246566 326877173 596422939 910218979 941334210 349272717 554115543 409477680 809093689 746207730 853519984 851649940 912503655 487975307 941937084 530918397 652606663 303722625 329525038 959852082 966689134 278946917 438836604 941392891 973335727 544639242 986607786 929879929 938148434 670255132 731691524 381873468 862694460 150362666 929912220 807384914 868417835 976770688 986317231 69483903 215360395 515030312 924346073 821545801 901863995 503700556 912162074 981258656 993593066 113118605 824328622 514974501 841647363 497847986 884220493 216584253 737436829 932995383 965489640 841743357 846876606 589958792 986650268 430172194 701509252 133297065 473828742 496077151 824988093 743445192 791825765 258907315 428921440 40364787 256778156 784956062 988892073 649604837 712068074 537218669 606041360 740308822 951373588 102185368 536652470 627604634 769314007 224582201 836087528 376943806 904200272 311347675 723422200 662329610 698455808 90388317 676456372 311159405 790221316 364093682 512726341 81268174 883529223 399526441 899468379 968752100 997502651 119938548 936415112 435296184 912922409 451764010 453572061 712819079 760344940 539447576 643074239 55289554 257313790 575244486 731476772 644892033 695087888 411871932 576323782 448708509 918483147 234615526 837488290 440546896 851933286 253228972 634740574 358794631 571253107 13473350 265164830 763707928 859561504 521081228 960483032 147540748 529644423 439755731 898867236 625546769 648316273 902839017 933593824 719643033 792497047 527016386 747523626 617131642 746417696 572049708 574177460 269810582 372308993 523896541 902377538 31254122 741617302 333823910 534547780 563104071 606460192 813449551 850387849 12485632 365578033 309311479 318361100 367584439 402027639 616278373 942817608 935595317 939467116 295974850 347345687 423715929 599121302 470602474 600194247 268114725 345175368 290426195 638069921 626519962 758423633 514796254 879054625 429883719 635497071 506484422 742810201 401737633 679157211 368574048 909937555 362435520 597580308 418432128 425929782 316528008 585611742 943444455 967531578 644617420 803608821 606864394 699620497 990772543 998215006 750235095 847309564 352941051 427806252 501069304 514620673 780122275 963703043 428711159 840921316 834807339 857199034 198788179 560336810 89129253 596933650 111638512 398821976 142499891 923899067 552145709 876868213 929550023 977566007 511514613 960605300 682792103 988402985 865005994 905539977 314741579 567689052 3465858 238449961 429924804 733096534 34210168 41719941 270436929 783763346 552073246 980683556 640593146 746033369 424363305 754049498 284469287 803012676 635433201 806626546 133327584 288804333 285243666 995357034 742454360 933357330 261847347 839367947 957339298 959983000 864411178 887847535 749872437 979897077 294162341 669177484 766427155 820811061 457272539 990394735 139271392 929579099 342438955 737682499 773454323 824577889 754333878 757496348 464523005 506072806 891376686 903822362 909374657 976348134 923649013 951130987 55391513 244745984 794428053 908331302 501479477 932237546 180919209 412129910 673859858 744037598 936514086 984647361 689611138 896084947 545042195 818969134 439762275 725882042 146072263 669417930 13454897 950743307 645272807 755932642 423110140 506018680 469243202 607935436 990413522 999343528 356243522 658494809 281309504 283039445 305999595 872368609 240793500 351707825 881857342 923996821 253129642 818221774 11709112 904662188 239601959 483643701 783646111 984670353 844140550 988278050 97624712 999925722 643789089 989171076 12763157 148770249 692569582 727024608 586740185 670974651 647308099 834202670 266019448 410987356 134382636 211941827 263911314 714292903 25759351 414935286 451725005 699184186 122516694 858276541 171993292 654074680 955113072 984222579 94076448 255293601 150179902 197930353 349778550 614075826 977812614 991100936 898205753 898395444 603304978 631666620 38255753 77307774 457313371 871241002 520517557 886940862 214170188 504262441 528331338 852302500 462776822 480333920 449070430 717847730 620662458 668529544 750346329 815943613 699212438 802646128 972090731 977268879 873549156 950528526 39981365 919164588 85533925 136385904 405794145 949740134 25957433 561562263 145918041 214204435 120664665 953825912 94545874 909204294 694751197 955661784 755341881 947502316 55065850 643655718 676212732 980233863 799380949 960050585 208841084 378968335 480805795 995449363 479957779 983598792 168383630 732317749 279310602 902840593 823718274 921610774 484869490 522797138 241296471 597379589 554447033 686218920 272522877 476421533 935382369 976029275 503390791 620923527 407572572 752955135 825788907 883369640 180750245 957865564 477656978 647654780 657776371 794749965 429541676 824581215 345833333 434907330 478278292 760372568 817213990 997192663 641234882 743039159 710739639 718047519 642613614 788379611 950491814 955823459 231206954 596858738 543626718 710318232 183385083 201085180 530929055 958740975 364629012 863298341 346115214 705475674 204086920 559325418 218077602 952519152 600641916 947286585 320924580 394004394 765635440 994216481 538620989 811628684 281403917 607347291 64198787 250384331 484876404 652565268 860799949 980585393 819853998 860825485 465266642 925935831 301423092 998087100 175194956 354937984 327182505 977412129 666931227 994189223 559836818 983410360 445936399 971541709 53532677 321426776 593446414 598640115 146771506 874384944 606023996 974297102 173468144 625834465 430226295 551593295 979685449 990645950 200391950 306410787 825783700 919816523 483383196 697277694 222947149 735437379 33402837 754520787 470000414 986093907 321852696 722617349 185157706 514196611 10314507 323622936 166140408 820844448 235010904 550818357 810759421 823010825 798542978 904698490 119394412 911316371 751013413 991097926 189709984 617098955 217172315 953442063 688264509 967904153 287756095 654960529 740678053 914980691 185184980 790239234 477574060 821884580 443314357 868029328 103682620 945030814 223346759 313474205 946838813 966624718 311181409 559456106 900205259 911633201 652294296 692052223 501438384 571493690 686459957 814750259 334049762 449966673 440627293 881193241 224668203 236717578 330037445 894404658 756510948 950798317 178152760 509019502 644039168 693687277 465860304 522292697 502314032 832173118 701530320 902735825 446779069 980830941 653967303 840188491 221401525 523192535 367829282 428353136 144542037 486953708 27805869 390520642 585631735 857398007 130372741 603455089 317617906 985393937 317058917 709468272 761273319 802392348 368337883 596502465 517469042 643948262 595755305 756363069 55280283 908709143 241935485 897176410 784411984 822002489 944701439 945658916 640988247 927737716 828556837 942816083 455810585 829522457 988043143 997232509 775977491 922551935 400604843 836369779 802749272 843772947 716784341 756484304 621031285 870879583 510342893 538767717 144188102 839126713 375211999 442832465 293568840 485465889 464606809 568266718 381859933 693065850 993622528 994769101 674387826 859087714 369999621 967528375 706140847 780462087 829420571 874560824 185201845 256018211 634092985 964353813 346354985 784277481 226258122 519686036 574315294 728119147 228048621 602258257 387183599 524966709 499883607 963139005 995591737 999188329 773127474 949893940 562885146 929856560 818679149 981383344 555852521 814529638 708911334 892413514 272694502 335192135 439829909 974625014 951360101 970743190 686295224 981372703 17820004 471410014 498251506 632840585 513287861 936710148 685807218 770355586 609478757 679338046 645655262 838364811 557031064 928393644 212303275 867848589 384283169 812959253 381513317 826414312 800805779 955032234 238731186 702500217 683790398 939642477 515995808 696542786 458647473 463710018 822721671 922987808 198447618 254743834 83477919 990470414 760833898 805013985 423508578 489117394 739062065 990095152 856118610 911873560 497731132 926218607 744649075 824980958 162098891 171939754 777489266 995269472 741634671 888777501 959563401 986883858 313470551 350999833 995482741 997621833 293266136 929245273 105251207 369124491 13506719 517774927 851439436 932983953 455707049 988238394 817307664 952854788 626021150 908084200 421813243 456002381 216327589 383798813 699710629 743820118 873497591 926685416 245568483 806996028 381034922 506830613 546941037 652884751 103992991 375273481 542662779 773603141 631761660 989658040 467019899 522855252 234964684 327613742 616326795 913561345 743098391 887527250 470051431 722483327 634913892 651678372 292033089 819381099 954104806 994733275 647183803 959855412 221449635 330749086 319995704 528597627 102266882 788803500 642046271 882430112 258854897 409502115 2618677 50852539 339131345 473356473 438211558 756843137 30430574 115050397 169326119 763759712 79373897 422615110 704648986 906178261 10113792 499811653 200803934 538844981 754154483 979899482 94873457 554487359 115481581 247570642 471892489 654957121 404928110 483752269 502238206 785849928 794478008 829613444 108232568 952325606 965264709 966567101 631912931 964259690 795717584 856871143 832100198 970014700 802399020 925572725 319205714 550752454 266939671 627647321 728198564 939450304 650841421 835039309 769273005 791985832 163018927 909740797 745610296 833273085 621945809 877358997 788893848 940111745 823678719 963104476 213211087 581336727 391810633 827445748 594482758 686001598 892527560 951696008 560061670 677879690 329045808 489241549 651202791 838353898 335812165 395275578 652995922 955650444 610760664 832831274 715606957 908672910 496454664 846252402 650974117 956484026 761069326 890230591 727125119 963625171 503349395 838565364 99414546 104836513 884629584 902804188 828935240 876974781 815454814 926067754 754681646 955497577 681206741 841972101 127687905 177885506 188870177 953636648 338719613 955346764 840255998 869863733 762222978 906732349 208457522 816339950 201943689 271620817 212702457 941997081 628615761 908537276 369406765 487451862 563135505 702289341 955124349 986127130 23252390 448329820 45622166 50817407 492735295 496932249 431704856 700879882 258154847 995819872 610650665 798784512 279454247 411038806 410523107 628352247 568861561 624545757 385648640 960205712 553614047 659533490 433569389 606005839 681433793 963096969 100023165 813991658 761460246 878202649 290158386 480616175 505365021 704819996 448853499 569402923 449400239 944279078 448967807 616052976 14466256 240507190 217367109 287829840 914268359 945035665 192044811 279241256 215473178 868186388 223481538 612513132 840837046 876933672 117818727 684086654 667496183 982151740 25861370 470984951 437863746 986209883 479832733 921129735 382165056 852329970 621059140 652611208 743837096 886532168 549012574 737826820 332487388 805262305 935954504 986294748 230460519 420479042 900783332 907024777 938758506 945563142 906691896 930576733 885775621 950668873 904260028 979819624 418493341 491965870 699034441 735012014 407253392 968417274 883888156 996210982 247843770 470269418 97958075 481399576 276588320 758202978 237844945 991189823 948315877 955275382 146338607 407181714 595450906 981724716 413515729 986666011 824631491 941606083 955810659 961285363 475139032 928394599 158505950 552333614 317863969 745974830 535963682 814136379 491501068 816389868 921901844 922716685 568921242 620711625 657425558 752228305 533988622 626800331 982933873 993419888 66598216 183553130 841365440 892728034 944285366 996789521 919702547 928715911 884329976 988226185 345165645 676765271 109465958 673119315 961854729 968191245 218299275 709038473 28187041 859245495 882498077 923870236 863608637 868190167 852833647 874066648 833550211 947620382 306656359 890170006 244423812 428520703 99891008 106633467 777527174 831429961 729714391 838974175 198276018 802307702 244261943 380930762 575383168 824110873 598102974 979219622 603195656 612895515 844458156 874305849 169378492 200977888 647021732 953531039 970738079 998743426 56831861 528692937 990593170 994911337 810072013 948145071 757253239 779646303 346277192 998561462 638524025 769091926 192570279 218144623 611943559 666051930 963718729 974465724 733761634 829868584 684685422 906527172 616290172 635797666 550866056 906224679 360681859 697078205 890995451 919705265 638717953 829913139 586207768 595263369 254159183 851367977 815741086 997515637 46671533 828690937 672089120 802233881 320136300 720993855 915481247 931060422 103733725 544113263 50014759 154856235 750857378 929689923 980450632 999187152 131503988 766375213 783061045 810011110 563743374 902142353 829785739 962276405 730529758 935083640 622905756 718049258 975447828 979959424 130362905 615203138 674179017 795883774 307228328 700268770 622196203 991322020 217443328 656233034 230868806 247883308 586651821 940231954 70580220 482452415 648285232 723752240 784294865 990787453 163622040 534601779 157703142 550750603 481940816 789843683 39064130 869739267 981825114 988760832 857445610 920068738 475199858 617620154 40662496 781079601 359877579 474069424 689216805 960334102 304725280 680884314 946557935 963829030 945629140 957856542 123262152 801015599 189595995 768054269 13650344 804297816 6242556 569267202 87234032 421862756 217486658 233759118 77032237 701005089 538027919 612315373 513856459 906849038 127184352 280080087 757339404 829732246 926330207 972895705 142307 688115907 630955496 932960403 345729983 773440803 198403633 618765469 971665234 974135948 699809968 784676955 144428257 753606614 152369788 336711007 690380287 848448565 786504281 956827229 703139565 765867354 584550494 779826617 586659267 724729297 11343689 906478966 661191679 907312594 702882343 932588616 686311055 791671957 137465507 978622960 452012825 829514817 565043147 822589081 381463938 779379914 68489478 215828109 459946696 758703578 51853051 334904300 227719631 431893133 103916482 902931903 193579518 451170169 264157546 484369032 881611486 942226136 910870301 995605146 229703061 375841622 117124500 914816240 676115380 922544476 494532393 496279399 560115364 878226312 500838780 910637451 305526581 551764117 152506267 288273562 261629592 753528292 624889931 861061327 330240070 677840806 652207378 965137043 93244401 728663922 62197571 412150348 777832847 976143237 36238523 556496291 882719292 987518989 410313802 989305581 37261590 525723291 929567203 997137800 596101096 653991471 93933689 729082741 258148905 973147989 603995821 786010158 232720157 865654980 180522938 858676434 843532035 879023362 830093032 935522592 985664997 986359788 516240773 878374286 70749136 415473502 936917716 964948916 846629721 911250709 467812783 609322597 259547340 544457300 84712906 705614447 619324106 716051366 283937227 700828263 86441598 695505305 517135034 879388545 80850441 755739489 427288404 427921394 967106123 989000158 78857045 933020539 12700837 552253096 61130194 166737660 772690217 901126187 605727042 691179489 837385101 950887903 490746840 509361338 229280899 838275990 166335438 739998503 60734011 629933801 372700405 422016921 390590541 578516564 433011634 863021912 753659185 770178262 19976429 374497374 183594169 218058822 492189403 770112917 358753673 608880602 649010756 740092722 185609968 587802327 263449617 581365260 98354862 487265862 257788730 411648276 99195191 500727930 669371642 756303109 953595231 973537399 914476163 941390954 675791880 853301165 789458988 880207181 702077087 752656172 795249502 863609058 396484993 778363429 371964422 789329246 64562218 619453035 56616950 512213675 563979638 614710071 990180752 993961705 619943638 720420308 305086192 689424397 471788815 547512787 843002012 965864133 853706000 990169409 84116555 883395117 745141328 901553324 104559310 926207749 556910955 614639106 102575193 339880955 743417776 823181016 588349458 907292751 87937612 730249915 791096906 866109594 259790637 854699240 912768569 976387151 153379697 549333985 485165944 934783513 134234168 218958846 833293622 896504810 136746282 301629678 877352843 988557674 2744022 823676015 33010555 435365870 315488639 774913160 871286605 882786953 27614241 261348529 12725976 643747739 16228987 408842371 866461843 880486906 145715742 654187271 374731498 911406551 976320936 995499595 390742949 433511089 265823891 357070372 184066939 552282762 232426412 803535985 564861715 843469106 24234243 929331296 967621328 985889983 385146253 456876382 554301124 939736836 745120354 748411175 961697114 986814348 215798851 386993241 191230970 358438293 847533818 883350625 747324449 820330249 101641211 884069847 630701762 985810005 465034470 759972151 890380892 986679627 570220323 794878693 713034179 864106641 811084736 885873985 108510275 417333488 879650313 995942897 349994425 777613827 624359807 801885047 51342840 769763001 82532708 960910948 385335497 855688395 759521409 987077099 774293317 784015962 728167040 899206640 700600594 919876959 895055430 964373256 230906185 840905934 808081468 908449706 523048229 808482962 392361756 568448676 751158754 967526125 280200607 852904702 210270376 828283825 338664475 687733909 436183006 601854693 779379780 984071269 828027058 872767904 558671816 617269879 361472499 746117642 613387261 780697920 901891076 940540160 160589084 215799405 854177581 899829820 293309539 476584133 61950363 292933609 731210758 928155739 265879538 636312966 774512579 959650981 819450151 916954782 680144825 711942629 53092495 616137177 13427721 765528366 666729648 695243360 857430518 938178962 911927665 923448457 324778409 865425741 207992233 536384158 107424669 870995931 384293767 420872742 493938553 914308841 976697583 987752320 854500512 932944719 483442646 667251130 478697532 793270693 667197551 824885744 479260374 976469688 630397591 821361789 501719294 691274593 639571502 752516790 266536740 944883748 949696249 995957171 604092171 613455713 553654978 779120630 722312869 843053485 967849680 991733690 660997510 779941926 638381261 758867315 208239177 852907570 58058221 135272755 601489000 893096545 488932101 920470996 816303528 819152049 115667481 857083646 436086294 511175967 524241684 635391403 293964891 891570869 538584262 613727758 941465700 969935649 692785742 910109175 877492681 956821893 817390922 901560288 218206680 826019838 537614306 581906030 849582054 856602622 453087004 502215877 435532085 453214685 785424794 882159968 871511928 917271899 527882996 531175473 440647336 648102888 444515537 976598023 452187688 614255800 738354815 963115085 309353746 905664881 212412696 488057892 973004450 986823392 360865360 817496267 886063390 965308478 335347435 435710186 626632069 925034166 189548346 694277991 473517382 711868482 235246491 823017233 640929340 844146779 755268604 820181581 664155939 929271665 650205743 898128526 883060025 888792128 387160530 770604443 288423896 735380607 536237665 799268436 938539175 943079469 921566330 961276821 966899446 981335398 543885369 748465282 180818270 872515858 546549369 818610723 683706241 693223106 778857669 999100941 66106107 188871959 65164985 187295322 380340468 573791493 197692591 406045677 576666643 747281530 790304894 909831364 736628902 864987675 132758404 649784878 26597516 812488760 61489128 240192830 529093286 660553668 659420195 758551215 960333797 960661900 197796628 245473618 737120438 911714712 704450544 955253300 509604589 846254076 621186943 682462662 667288509 918711933 805224919 938533875 912834407 913221064 359655866 923724809 292137783 791765503 151309884 199375876 258787311 572377538 384621868 564797641 596560055 919720813 638007144 650105899 533405102 857795858 462118852 948696895 272248111 646749928 203699140 296205619 428473572 473996703 917683713 940533350 501177702 971897369 220335111 702624997 43754022 586624072 800601358 821482711 183615534 689901453 215410922 758822571 674724319 757414296 667387394 677126553 100625461 851017103 480473957 556960508 362764932 629524866 473829133 816287758 460269889 763827599 216237575 770626676 82321247 546828467 520562065 920317041 379347727 983901868 565158777 607737332 521922430 683459025 930498575 958654606 288684285 610237374 935023963 988900161 531854572 898089065 182989445 375626145 980509935 989861668 854386216 855322924 821761037 869183195 504778059 540748362 28602380 672905019 449222892 738333033 488370749 713176558 786361290 918337100 922386265 984286357 168583499 262594622 760549897 862958174 491066585 621919083 559563887 560984505 626450083 786320155 40275264 256422156 300806633 835980634 463803888 683154199 376182250 877093198 946248905 949057123 806362876 918631311 991504672 992760262 207312300 223848980 942226785 959541033 333146737 447570725 182638307 662688445 565915131 742000593 165812917 298305532 171032044 928821430 221612678 401316155 251324865 778131416 793764889 954092857 296117506 843861922 501827176 607411054 829758805 921535594 422103534 946522718 250155866 976632545 866772301 992310138 873688110 975926146 98226369 906441935 696042031 763942573 780480715 878080951 337928288 753481859 644853730 900755190 369521637 403917339 351528482 628633763 710287059 779802132 559353937 921369577 944474117 956348483 130434775 547540409 87192391 392144969 344932316 845602386 785792128 893072129 354225238 972482765 930210093 941677963 606613883 922984566 954086426 978938566 487451578 832571750 551232190 881645630 116107243 869075864 404521111 519882382 510548614 781150394 239442077 667213400 941912955 946599205 473148291 897088815 940416909 970421986 75296013 361289422 320206209 763215779 816828862 928487299 955244130 963127114 652272195 667172560 389313862 661838472 570315644 884249843 797807377 914164291 713275707 807874534 507742507 907984368 894586605 939028753 221792363 479255109 990911580 992826054 16761437 287127499 633328585 773679119 382430337 713362941 26171123 486836240 461960198 535880547 526371943 593624799 816931300 982054786 513283740 544730835 665329709 983266937 576427164 759377084 85037066 463688144 503824913 997259900 146005708 581101360 520565515 639600791 971673261 979405087 995214845 998605806 775662644 906837682 408616203 984688277 306890975 770749186 904009689 972884178 67823172 792362973 784150618 838226329 263304416 730695322 480983623 845928405 339129527 954120756 470160654 658576852 275787882 669856272 415503108 808769590 748469737 913745613 668293278 770648784 966551403 967695388 316945870 853117662 185293382 959882513 927406028 964726685 460161692 857927709 523114335 694051857 20359605 703745087 517520937 993645780 123689611 609982882 511902359 515061984 397968573 551679120 370309321 821880266 306175966 612224020 334403891 679768675 542718664 664717459 186303127 623195227 794564982 998790677 339663041 680176194 494705783 829382051 813806391 885155499 337789981 444671764 755832559 928464648 698832937 736651354 705112893 951806737 422686330 622407847 487247764 692657277 916647452 929820895 236800155 764378262 205305290 798256772 139961900 610187308 655565334 721140971 491777745 675051378 715022077 963647873 721708463 759956017 356785976 637640139 279578795 638547213 194175010 851729327 115912867 757249898 648773096 976724630 477240316 710258347 981740471 993885559 479465091 621470469 470756700 551384881 98226839 214552618 442865110 658698015 205550993 709218669 140844617 662215432 881730606 899604238 779198762 869387551 372406454 419904843 966523000 988177888 760202644 946964090 886829833 896769417 661321554 790992915 339866047 798524100 410251343 913043704 230993585 450637647 887363720 901604544 252123235 955408644 57996786 616518739 892923355 929219560 929587809 957877992 265652760 754670003 681612034 769681428 625490497 692739375 373570229 618412598 956728628 963985010 78034799 674568573 726685601 864805354 294018717 949021325 300874516 830252089 185374161 350471131 405658714 924453591 160863881 718703858 49927357 917563930 187243106 779530093 632157841 826558724 892591742 975677934 963729828 990503207 786282593 924848493 85721772 534081726 342537817 708719056 512602934 835344155 684475510 836907455 789522816 879180220 26769346 257438492 954030032 989401895 366871406 713690208 26378787 612314423 462771550 743961203 854687025 875963321 299537472 982717963 499948411 591868828 621874181 629910966 249231388 611363495 156274878 746011523 911728703 953270867 741664568 961871771 280581485 859396544 918396497 939698829 250397311 909218806 837902331 883738280 162923446 309495324 211257938 578658958 227227182 693472084 505322748 791758458 388872765 589865052 514821890 811048152 719342369 813161072 794258893 976019661 547197728 688788263 826152948 998633910 553973359 867990295 280941566 424110043 622743438 839536923 583402158 688622479 221857586 869714948 508972550 524892861 330891622 680464646 193275881 422430444 923235559 958027801 216565998 866728722 607253073 873450443 52600567 277155550 72843539 417632756 742693016 793050818 144778870 184700804 745271583 940870148 835629858 988793697 564830106 665731032 582987993 965557387 957561699 972497640 285675830 978533219 174464203 616124453 104405230 795120157 563983072 641556565 763391182 978783692 256323597 706173134 677344186 883601473 14594996 301363346 716169016 862328527 451317773 665871111 586218059 816821581 793285707 849356215 136013270 270917228 788914728 920423816 830084378 873452046 260047811 718470277 99780765 684985202 817604683 840837973 746023091 800111280 804755545 890416903 762023986 899284682 597050212 720952302 576519991 772116546 566258026 738146562 721518207 976358267 970855199 979400639 837682775 871191110 553519569 590515057 112710059 981043749 259859113 767969714 398016726 989100423 436690597 489404260 94001630 536607923 818897817 982983693 343852607 970666533 396691348 879039535 92727078 925474929 566686719 845613143 761404311 936767428 921556304 922599651 73565603 186327135 938393025 978983892 130014954 597891444 507588359 630853133 812145609 953218153 128047258 519189931 905060245 929250122 95440176 261052495 599063548 611977872 709308124 970396593 232729035 419181622 68104422 265080193 621193805 907553876 941108757 946843524 846842658 988659346 25854769 669069991 562893326 783548167 738550356 920195209 617572021 796933544 458784361 833904040 851959686 969720799 700212088 993783374 535697796 599043072 885936479 941683788 196753655 944174925 409786821 429810505 891291765 997956523 500870283 614736545 720277109 771887152 786625460 915779571 522019166 794250784 545046480 547311785 823392663 907194874 377250133 846596572 845087156 904678458 592703468 754172106 900695609 995087357 454425926 462550238 251855034 668706996 214047364 686517888 798023381 798702413 476256706 894216251 157828014 378617319 224055764 570564799 288347160 320478574 776752970 825140336 517492639 965890840 976488664 986178395 684156586 885752377 38179828 374499265 732744299 798691129 59469497 273270413 804272560 909814275 863105315 969060845 982587119 990794755 771001473 883920986 17232933 712947528 526729665 763136653 994763225 997230270 17826763 250052974 624711704 870227007 305354793 543270259 447213833 639433680 447788951 453805681 272033087 907590887 131079727 573175435 670204748 972399177 938392558 965057990 574273504 745557258 396731318 558100329 637300020 784691013 440898666 634958908 11007517 719644269 264058592 651587967 400812983 690520170 994741761 995203525 242645895 312869242 921124822 991365404 278888568 665969728 877605114 916645540 475979521 896827266 433305343 757682352 980721827 986368036 153351674 589148079 491641197 798859790 453633602 614812202 827280637 952609353 219532982 671220718 319294837 742257059 244826570 629679031 24483060 293124874 289697438 857986543 881196076 918510566 604247990 718463298 630535182 834800033 530786824 933275542 431736945 929737481 908975535 951821054 545528270 586515669 880212366 952517265 17881827 512108355 16209901 331104040 112646627 725157465 9405030 160679190 366355752 987651444 973738837 983825179 658892613 977562033 359449174 793159879 841647532 965147579 615939681 697389470 364945107 839993968 771770294 794388894 138846847 386023436 58471655 403318737 138601027 530075058 408400490 595636054 992577797 998198201 860079417 881963746 246551411 520995315 902985185 908828041 862511410 871725629 90281923 638875507 68253429 690807379 127770755 462133072 274811169 568217422 667364392 998572499 657182232 780497612 131107614 227023190 709301520 897349739 387026199 875205749 24122761 479879042 324780660 891850573 908393685 927180606 423263056 863747165 501794687 515775468 185980578 683984300 890146797 894571862 832969161 949970096 6507354 303868465 643242986 988012449 771774484 803080067 354675306 842827080 710917387 988843839 342425331 928335178 981160336 998732770 376187883 937814468 280606825 438356226 252403065 422633445 548340207 571319957 28761961 345102995 46375032 238681511 428221570 555839744 562677322 915288902 788726728 888081156 288577116 583281639 660564200 885340608 968374416 975540850 507173327 538218372 918418384 950582894 616525120 905219878 450389823 604170958 591966150 825941329 291098314 832111339 43517956 479621939 667506701 862768648 703117427 812403296 417738076 435066073 594048880 759459642 308629532 787248094 567176098 640039399 108103318 917969506 862790651 878697023 261721191 436442576 42045591 766803460 376414644 731505187 429681689 463436844 511754418 947735754 765351771 979791344 38828309 66882015 764053070 982273293 387785133 514853052 519199137 847213545 287973481 476631996 575350332 937067617 903206877 936394149 595088978 667995837 48690786 379317793 760125619 878467096 676693235 839033932 279855996 537586637 152822806 312460834 236755239 588218613 407464344 849839333 281261339 957366102 932304829 997923981 842118329 942964822 178906576 338534325 223499228 263482077 512330575 572924332 409889490 840156770 428070970 985799764 792016006 978403858 765983773 870084877 730983755 824876165 815074168 929334262 46054906 827860473 762946246 842880386 933229215 938229361 909234473 968586907 267083111 578564438 972118876 974546551 728283829 882273143 28537766 124959849 300857469 584475756 553427881 580781586 167639100 882216013 85792680 854256513 110230485 367800457 996435707 999650671 105474358 124748215 105040424 710699263 658964896 694437375 413588532 863611183 252362909 375486300 483289883 690223838 587440233 804882712 352413408 883927197 368797990 501871937 626351468 889392644 341209442 924748528 153842735 309500559 267717304 345374086 766402212 997158711 73386945 915104292 164684102 450713255 224101170 455592054 6060142 506482505 836131974 890070479 825685743 856014329 770222225 970835910 611150382 943787763 534284277 744784883 148212486 578705727 987290919 999523412 11029150 227643247 452072570 825636601 452934781 832722888 983956130 997239644 542895407 860515298 268469158 766705157 145847772 732182204 660533613 798120647 825103839 838892849 545771899 622187967 70604417 663099585 166327840 854716322 761339755 850535513 519937724 706396477 324225515 621877118 544299933 595213434 843435465 953339843 900188899 951153025 968216154 984981326 29844493 131066945 310224008 351330811 224859361 512664563 324044803 784196996 360174692 715005318 734623375 862817305 592482141 969832604 427577352 719850687 979984407 980633297 582090704 960976767 897698918 945545847 641911340 727517579 588853974 711532639 262979100 569953957 3193783 242808854 174065638 184234785 56103467 540984346 27533866 123149323 80167774 464666200 914048474 986937859 599335747 736237752 386140621 676511990 283923281 866614492 596763466 733865440 731908385 996003629 834161575 938300395 631199318 980208136 439690612 946107093 958898504 998380051 59683257 625938607 8373098 51449016 274208062 958559684 831129868 973888436 691061587 791332237 986445809 999189224 754550793 898762904 794791614 996514397 199447227 339376978 624214957 666547774 425976787 605980949 781874358 864687698 15461993 125875874 139941617 485976697 246554728 391131256 459685500 818858249 929022408 947995490 88892956 371956457 227205486 384952965 921837316 989650229 157757639 348650702 423290412 786649534 732665360 769710300 349254794 415645774 374816917 864541415 31361288 142513493 394589596 567213320 213679900 314106884 201484744 539230537 525547804 825447908 805152058 838065791 747385708 796426140 974298167 991573941 524106758 655587257 841915263 849894981 805902558 959842204 7733491 942987898 889691149 989552310 935722501 949038951 648447097 873285618 332657442 753775909 622748549 964230557 189805248 805155776 163903929 948827754 388941157 776523183 981467663 981948242 627468048 836000683 955653741 989165175 953533904 965529897 870140250 907696353 973896636 989050064 970376677 997152853 173398821 184218903 396506907 805381090 643170624 699652504 529563980 770449967 914966453 956119143 492452981 660483125 876242893 990445607 389800318 787213647 170555682 710805502 56060348 204993833 45370504 831248053 315389363 425428127 651584496 910451759 79184181 152428198 289396723 374075623 357364579 931195661 338815892 911499566 984674097 997063894 214420459 251517596 238880866 482410411 427507184 867647819 352078781 612182181 729798005 759880861 671658014 954829055 116717434 560910811 262434448 969138708 870634733 966517898 297360710 667907507 415934717 591582016 751356221 850023141 439238532 570167782 7183149 503674001 562862617 872146379 974204027 983573034 619999603 672146494 893631798 929003997 923431917 999937891 419031601 612809983 963141531 973971749 337122596 815746788 606592767 922402180 160830420 551624748 7871114 385102100 243898403 547308889 550823402 968240549 236409656 422643156 772465250 835143265 678075404 849673605 700927827 902532464 909434990 978728320 709670122 880887692 874225941 924855708 964003848 979740997 968677507 971329525 109016741 890631172 848257927 949779002 923579694 993510284 225606879 451923665 499642706 837690331 241156871 712107147 62078100 889655500 300452319 745364842 490068456 501175370 429393367 449338584 691622455 834608294 29318362 704366768 912902862 918267405 915022001 964346221 120313715 875331956 764600600 786408989 478210699 491551195 416766190 848379229 37822015 519129815 102144894 964783384 411699608 625479925 961539400 967255605 647077258 804412268 951606799 993649642 495461105 499635286 917385559 982924620 893571931 943971714 246721986 806891619 914224179 999363102 721174872 880797047 271778011 751394393 416419357 621123064 538665245 909527166 840481590 928697857 195105570 776427047 566643053 698934980 15106166 558123113 378641578 440218769 150002975 349448985 872496499 887121768 396288947 852912992 633913515 780177877 994016096 995513311 728183345 805592102 252920773 884899683 807269774 995254718 634586380 701565709 390233067 669544676 170166600 465371378 107154554 669231793 568303834 902690133 32146942 877510680 393776966 552719868 581053611 621083996 420251743 516367965 42709784 772578439 692937111 989639998 228761805 419184656 443803769 454182276 49274323 653665349 501113809 784442175 528245580 808043913 870586092 962370002 938121768 944096632 28499706 693038551 932547276 933071022 290283303 741627424 558037715 826725157 51353827 240745697 311903975 866625600 980684711 999623457 111774627 779240312 997340658 999166227 665152374 955769509 392411382 815825767 203623546 533229672 400518624 806601158 664717604 855798788 584613948 888703056 579631039 933049568 545520165 666391117 338982385 476123732 929379496 943624941 818905436 824431845 675793536 784080421 154173630 631584412 446993032 989484832 785889483 888456162 106711460 916256625 302780745 304366045 799008682 944994444 989132971 992585281 623627394 736148808 524001521 794109975 541054296 748919971 826702435 932959128 607289779 894925679 77049710 835075351 186087642 553341786 670051558 957636470 888759138 926970732 791382311 929443680 261796420 347024918 86009916 184384349 232107650 480137323 792849947 925504493 524577581 739389224 97722778 549649544 40719397 176746413 510120129 635347360 464788680 895681908 370924372 714376194 276124461 975847171 52494426 752802382 715078913 753065944 495624395 572931437 885130173 890464644 344913668 983178207 35314729 836374172 221397695 322137683 875394546 878726043 166796892 860409414 590434595 807602265 522868644 959134311 115809080 834720298 361507789 692866119 432483368 639758647 887439989 939595044 6627982 599298235 28617243 901910558 878114699 878238908 961436537 977298652 997798653 998774791 892020950 984313521 493759026 970267774 755590903 990271011 271896749 798992993 451177256 699494157 520520506 757876074 779415326 987191002 878087390 943916887 943634374 958024660 7585276 946442519 751453266 899486106 373175874 768877415 678788227 793060664 12653807 570700285 902126012 992184346 402363309 444447951 904397910 995352449 529196417 608066231 701253501 755799884 594439666 860349019 278076776 401259781 445432507 994874532 410338874 800074718 9850258 336215722 35976031 286116882 43748761 149608170 849395204 952048305 210179420 529348081 851154160 943886669 743205619 999497479 216588545 256650417 74889444 641192149 745738611 871900393 196763853 315889798 550160664 868595558 826876267 839630653 972593136 984091649 376395698 999804152 438113094 711102305 517281527 925437685 498990497 507184304 252853242 843705686 889265018 926951495 473153846 517488928 315075400 864362746 789165536 989374840 127056848 303306995 252219212 295839296 890129322 916630032 905961981 941839176 576219715 984716303 52130999 674283032 688621134 986570643 578112954 787709308 89484131 812067693 575857605 717170833 24220897 571890727 668810665 937576237 61073813 306725620 977277306 995382677 360352006 565709913 223925302 225048347 116976731 937052691 943456628 955408720 417923089 831276735 210974916 912701694 685191186 972301324 151602084 281280867 669705883 777044825 203887731 485910370 445459590 513138641 12947625 859394344 448724750 661941216 581498786 776712528 266259497 649220140 222166766 794315944 621060188 775129086 624378905 952654634 59318589 912406925 328344990 934207547 30715059 440817075 420129578 474252622 359921011 929731703 751735121 963426831 142837354 178683267 330472308 717232034 843360288 849945538 158336211 656928707 346916913 718389225 323400405 467116567 356282497 539465542 574745700 955175027 659498059 968098892 947359788 996092543 171632770 552233347 801787072 951772651 800303518 987666389 504617437 557397476 791937330 810552209 606295540 768898411 172071113 751973761 894184233 936471017 66839964 251014520 808178557 941904197 725887510 799331039 690860198 903427577 568948408 836374237 940493076 982078097 738035275 970634598 993614075 993658111 655238282 997695633 107990196 659966242 631340928 707680063 635459543 702899798 765394289 846598148 406416223 841186172 975119764 995977132 176185976 842765265 203917534 842123044 118163144 585767371 916055332 977910321 868277974 956057719 184175334 850354310 566030654 708948589 678375675 839583104 932171655 949910216 808814882 938191668 292406881 303407281 199355919 858940963 734391375 868873276 154594533 599098596 196731904 419630530 688501102 759025409 261026720 542482853 85662590 423977716 622662077 702735320 943484278 970109627 273702921 783048271 975227038 982637320 421694306 887640173 424576480 446150557 142102114 491756401 110588501 145800175 586200764 693013905 280558227 993987174 256903432 938614226 541618855 879309511 798937126 920591804 257564277 839418167 74649134 931889997 128212587 459481257 227004424 736706943 50967481 846420616 251190998 511195454 814897648 987585369 946893823 999612044 412557255 659895673 787646726 795714103 52484650 644223091 710232024 802815219 989993866 998540185 550324877 828608854 348043149 630064516 788217318 811095166 191760933 256539804 11761329 298907742 182648536 412182848 832716943 919191282 257386926 490632984 639136830 722726951 414972294 826585117 368975242 500584613 74013489 927775935 168492183 221972938 996375431 999185115 714208726 904194878 864190343 966874389 593788318 805262138 343567079 572560367 774941556 862631119 296725039 585561366 307659494 863912607 111606937 959580266 103568533 630385882 193893294 440623378 741624206 898571546 560835893 941266311 987179489 993622178 193415677 770800566 768960447 974934181 36893504 77962496 146533514 591318559 411694816 683445316 585293115 620302158 433097197 772187108 307993113 708819809 566136184 605379461 929331323 984814640 829239547 962880268 190092401 451270939 645033026 661264367 16526112 531863828 418061722 860365488 593942239 918767299 445441183 778914466 731701040 826319427 17759206 797443529 184245224 790289278 661834818 696130741 144379914 335263378 901411371 937769246 397019773 778290810 741369273 762017599 90655874 726467747 772936866 827686577 945216465 999248257 756037617 758674014 639403108 971725301 161100885 328282477 110223495 895658687 515440570 752852983 905555980 910733381 595283309 866487810 376271087 836046839 294966355 869735623 918067416 924061529 601256837 827330782 374923240 423651277 74821057 310054809 346144338 674925686 243238158 317045499 712826889 748378866 802982329 921414507 255888874 863752405 230641147 395486326 579406366 707144123 967332576 998733128 761256360 959547898 793673494 891667916 534355117 982260098 594923255 707393401 399697434 920681055 963557357 990416444 221415405 597114984 389536162 422469810 145691339 634056205 166145535 550565351 649555563 921882193 199046813 242423521 576558341 892615061 988918320 990895842 209599851 552565551 735542494 983496936 972964900 978053606 200318047 808894438 691813453 694906995 33939899 218984027 544834250 888741981 640077512 695994584 749266538 981374119 772249288 942032993 689522654 731583894 645631151 747522134 473010468 600921971 747665987 925998747 287365856 825918195 638086807 934701186 62193649 239974648 700636151 730235780 710089054 931327038 999131832 999872245 243108409 601178014 202343449 769909948 466392929 483671720 740934092 869503910 342223473 416011374 632607039 785617637 211890 607510197 704639122 787717709 791419192 941051106 356360458 558426821 400575196 815850384 337223309 542208301 154050498 970269465 666257090 938514276 774899471 922827114 259348297 797986148 316163152 402713648 929830850 939984923 143905026 698888306 692922844 973343242 407731969 481545628 417651379 706353914 189372298 515381284 178032933 193519492 69329275 381921041 214806458 354591014 387731956 697559503 850633845 882572888 745441299 853054864 170593 648415111 143671799 528432520 25875962 518575658 951089864 992858314 901883336 917434427 336251917 800090067 220503457 269331977 964417281 977428115 126946551 418272017 956393174 990544264 257554136 278340091 479098836 517311689 401182784 858411788 281211000 647130244 337970943 681333656 461199815 491105961 847788401 943502307 495908470 602308711 513282312 868498293 111106410 707379906 921417254 944665236 278965463 975523834 95189292 994607011 775674423 877978091 786587641 859472327 460636763 514737914 499545135 668932208 636913296 952234112 458018509 944545914 922384376 961762175 665237694 759262841 717319357 827832458 267910387 337858181 701256805 716617970 242191721 385799229 875581302 919218266 190956549 710246761 130001328 479293329 402395874 625516565 25548370 910510485 813713285 871474362 558668337 839595823 435797973 469645835 951756007 980247254 751497844 919699196 784238970 957694948 833133709 863253037 478501713 485874610 273290972 585466918 598351240 747618265 530279027 644563364 309717186 996436962 591153694 640043196 337441688 481851412 240739694 860956284 587523449 888752619 156193597 244485075 327800768 445770177 692330820 927397632 26012852 379821267 560452739 989312711 583697254 997188662 955724576 955957970 559205679 590437620 110881923 909169080 810927364 854637002 811748744 891439308 47325378 195375846 726373017 816013857 436204483 501681737 870516977 965227648 188786293 624733489 253092777 434175555 827917995 897376692 639223205 870792950 816559793 862749028 534509249 677676359 591780050 780379591 942613003 945680189 78672564 446817952 104426652 274632911 344680899 651740400 875298835 978291395 939805392 945369074 613982965 842851547 742258880 822191429 373722352 488544005 975835324 980469914 75297925 717296592 416663161 587976949 721419746 928596196 509103908 526720496 847816679 888395500 30257812 821632749 731972417 790176175 894699609 960413398 977251085 985249910 80985432 151098459 112983595 504035306 892777767 922305920 871018772 888763225 124821574 152022261 305470476 775053915 253750781 991550681 37949296 104420482 234346770 794344890 295642801 997184379 60413715 286329315 571707849 645173778 703856116 935215892 49137169 492786157 265584164 449903406 63352239 666716248 908185723 996959610 495093199 534021925 988877886 996078492 754028804 834675395 370993111 541003169 309009898 997855791 660855352 819504208 575536718 589758458 244156519 244326188 848276941 879951476 683752096 805240651 540689197 934755126 991565313 997030039 592220544 904827250 861481161 901798556 304134110 970003286 6403510 141731583 540397960 715167965 856049916 864545458 937078540 968484800 833568998 903673034 811497607 823282562 830264404 878421625 553967907 840012658 281392110 815079389 728047645 744056492 324125213 887403750 13876162 450186000 722510492 773978025 639299165 654850544 809647533 843785636 188777193 346065224 280860739 616436729 565534615 832660488 417221814 425805728 977821346 979687416 810088600 960610729 623220007 719342938 572045247 973308884 806379801 927453488 39545611 889470384 876862258 894092971 255683673 782641794 672425698 838580742 837310300 844638328 894569729 900640367 686670095 946888911 597942190 962647062 571269650 866070066 641557958 756495938 386378084 680610659 102644280 173919366 623695804 756363323 850508905 881485103 598252216 681184034 313356243 543024954 73190240 956911520 168184442 232822541 444956567 548527244 47455129 796207051 144236124 461729343 12949051 806976603 724309777 837969385 677450698 862681134 869599169 946599112 489633600 711520917 697323134 723112831 148521805 728179837 67193142 766279505 761126948 915194361 667647673 980754872 596192810 857764339 539375933 849911003 427985444 983172939 509740840 966277577 103040277 676138571 200591785 937871256 449226446 830933908 961880755 991336050 423861280 958554909 285145405 658018595 421853471 864378406 614573428 932787807 298706340 922734788 447121549 798513298 612944521 654285779 681839507 880371674 184322475 510232771 29777532 716399704 695424003 739929583 21546615 78209176 628953897 670513115 209573170 345506874 409309971 931147452 421137741 592854567 712475397 982858605 513610088 573681853 413619860 712018340 880909616 992868437 603988144 627626032 76122680 670534965 872952780 989261102 213477603 782120192 287043396 581462736 539705608 903969116 137292057 885226813 194481691 487255944 642009804 646800289 426450152 931833901 454928159 972199834 485533692 793217966 526284492 535242740 610046756 905156187 747423977 803273807 200931516 974477290 950594432 985085176 966163052 991166498 799666263 924085878 767077926 975734828 811802301 940044737 556657105 633427422 269560188 994592032 907232361 912672955 624331536 887322707 501307458 684522908 836621031 904073741 728226355 969755786 5213508 849066620 834576665 935941121 817892032 996770741 600131698 900150642 746241848 765771152 657599398 785299903 756180250 832955653 576671609 629964754 608091377 775295784 668916462 884663553 555327522 566306724 77196263 228946230 346537894 751110057 39009188 206966149 760409217 886499451 402181498 617289522 463828886 576095880 156205732 692722546 364148778 542730050 259208480 955166663 391470995 738283396 771833557 936821681 714196569 822411632 92179483 285390157 71770820 144074532 138981500 541568246 196260106 927894367 844896496 860141466 880845833 931436726 380917016 670254090 68568008 604946989 798618422 967884161 390688615 570294900 554075285 811911388 212652478 673204280 437523650 481851984 134908860 704658678 496902855 714507371 187212261 962080242 789128437 812271577 581768049 940643829 695544199 703680057 439496316 605071491 765063890 808800589 306022322 400934597 270944235 327854986 296807087 339752684 842383425 879632681 771772430 998406440 721286624 783757464 480891593 596145681 603171847 744531771 702174525 903599087 398239338 845012359 332439511 852776362 243051937 395756298 247782358 348264729 462574929 541026834 705556317 945316620 460054591 566058125 10255661 672974336 459131723 842826165 865082523 984324757 889737066 951234741 624761294 925825900 768961298 838869968 648709946 940045195 289449536 313541501 936926409 977042850 382458121 426131755 182012446 233729446 848885686 990399495 109522710 302920059 242221419 502005711 268679617 517448476 417789547 871215132 511918564 879856613 395096397 760104787 772230859 912956978 192828875 566842219 116076723 659271747 869574167 872778945 536631757 714989051 537862024 619602758 584964653 925419466 881760116 942921534 686501188 974956956 167157358 874626066 230746769 300757808 28449964 827242481 969605998 997018000 67864592 821662845 484836080 896390735 816232252 930722559 722639589 797837521 63580424 900559461 526869375 595389002 49990216 608981044 180528271 739663721 752472428 962414561 842897092 924330671 378748355 747108240 680285232 746056668 746082849 956825276 603110652 666979653 212396543 790798370 882741897 890956009 720398702 895737355 367871179 716593325 658712295 769943624 467789515 744380209 342591870 495479355 331474094 892958588 758537224 970559686 55333347 951837070 785257938 963312352 200568577 647478072 813522513 948532773 905722421 968076627 395189586 456249546 973786093 993981607 135734259 227781409 643238837 857372373 887967512 977653318 42585288 653291220 125084000 376595952 123841278 869581071 69427725 880272618 959702428 986976088 409243270 498496567 990456172 994653636 937548774 950319673 745276612 870753803 222142510 998850427 687937090 722985158 622222178 642553741 916516251 978473491 613964834 744596753 412264489 518708854 702429290 870082623 763935025 978198529 960313500 990811929 496037885 954297931 120742139 514318598 185469270 352428565 778381137 992386055 470089276 848911864 887962259 912455070 116606245 271219729 81694345 144539069 779290288 828395254 603318983 782401031 529912752 711656334 833831857 982417324 140915729 852325954 854437593 877025809 51002902 825952274 131756390 205670911 441368515 480408139 238897940 580998950 798298234 994842365 275869024 702839475 315335627 668511585 401216680 837262976 29279323 751401872 773639061 970445766 446316082 676673473 688286047 854193871 779053522 986153711 725171963 874987373 35909801 660282363 516111638 640040229 670692432 829150546 328623004 799133428 453872250 712515756 283624949 952635077 4621828 368389642 40596995 882881901 578035079 650439750 861387207 887339821 640824312 965876163 683089352 931965098 84977095 884139304 599330803 665075950 761750825 846754207 956326877 970054052 888643582 950967945 327161761 976766541 616553579 713298105 641704105 695455761 129720589 178761899 434732536 913332401 94962917 718743284 486169530 544401711 180856886 853408699 151700320 169592330 92891038 369007040 242679123 738732643 382680420 968622168 583800354 750001723 480367690 632353026 281239424 893160959 384857979 560236903 799452773 809459641 72596887 590209724 147248330 342413467 365525834 394704833 740032288 757812549 785603839 933504302 518397355 574102413 541069881 909378258 186978156 475695585 787528457 788748100 190837215 972883180 878576962 972770547 370977182 424502081 786204280 807264491 860771528 922773361 828119130 987828261 13549584 65638818 125766003 939561984 887545350 909463824 687994046 933618209 719453707 987882950 191111579 603484256 15252500 459755725 362905838 540958787 700583304 976681365 72433126 429607553 547672113 612770218 302745421 731415622 758564565 815976583 730928216 795606715 106762298 371006636 314355492 333209205 348659321 846734838 504026351 920708673 861341511 884263907 434272581 583122061 722690729 822365207 42393029 902027060 379129993 768946196 328648132 865444008 842863886 913031659 565676861 817253577 401101150 787051629 422970597 658769295 260840146 617331525 707321024 952410615 765182527 785064870 391920697 896907071 660391448 761905057 212956042 515813689 746826279 903775001 253225141 686567413 446252725 551621308 500273236 907814783 185693279 552739612 741722743 889612602 962003914 965713978 777909658 924470456 680847837 772851246 448409027 998767303 913857295 933343102 301074129 942838754 650722858 752892151 515029602 702377337 479096442 761760176 936559868 976055122 653382144 884496864 9854373 254698579 931689135 934596226 441816160 971382974 230230271 586020672 517420354 940275076 640667452 769530436 396325561 687327996 900830453 907278676 340316165 685746712 925206617 993001801 828732674 870127585 390560719 774458942 97180683 786795160 171341008 755507162 1678986 856718000 710075386 964411709 347622501 888639219 198029068 764897575 632582808 656388047 429474963 971913912 142456375 352866159 803270262 855208100 84637614 825434379 910980641 976075250 345453696 429227902 643373619 814907382 744531722 778391383 33980369 319001020 54254296 786473228 150254408 962226706 664335808 872012715 970782439 983063076 882866745 935730215 971475958 977437590 614849309 919299977 810788509 835407192 144748527 993954119 856215595 992169575 131738676 642278290 171392725 602777761 533117121 740555848 480937010 583318516 55306952 670360284 225231056 778892751 589913193 633344497 522655402 949762939 790968745 832165218 573981319 867480351 42202260 538180683 743175349 820533924 562226486 772058283 710569258 900837897 810867469 980702063 435351160 601116769 127564745 835039933 650245422 720172057 134668187 183227241 176486284 568187447 14811010 726644934 720180654 728461840 32347864 929650657 449760007 525047505 38576730 500975904 595584846 937282768 709487665 728614649 492515040 662192044 353928552 928862388 584823129 610121429 168398810 738249158 439851201 481835414 344084928 795445066 43380811 746648915 113703135 471136386 403136803 806290031 224712352 582039427 870420694 964559232 991898813 998964785 899564086 935055776 783801233 866937118 579920245 742309399 2761497 850658370 944073210 954416313 156162526 298576466 154649110 289283999 308644188 866046101 889979264 896309374 208215359 262527167 101915273 307921749 794235280 860408285 135005840 336146659 882405378 946251576 422784165 618878986 56333024 251266544 77075689 320612978 887363047 959345410 443269912 464339054 624798066 934794496 701719472 878912552 942806266 977226832 687394433 695221248 368670411 547080052 818234627 889325759 107624175 796584370 261147836 521061712 91917862 481868988 34339116 313750674 241337125 308969759 935941811 938160860 676731633 878164582 191713811 506058093 220485047 492514708 626933426 652618221 77543015 200078584 53776950 255186606 707654291 865825789 30561712 480905337 126216886 902716741 975695620 991647874 420453836 845748810 445501323 779502176 378057283 943522602 481783394 590387403 211831246 262744728 640840726 667836848 33511730 492333399 327157312 387739901 345413593 931164874 999480777 999979111 27978442 838475854 232708770 260004634 535749972 558523606 914761436 943723775 575375028 812182724 528618080 561201686 227211350 775628800 647761216 961174791 951070132 988279350 690572891 923874782 595934448 607574253 305824825 750680660 969033866 999593625 373286367 505408313 630529792 771164702 839379943 910569660 215602445 939933298 263387551 575259355 341745201 445474531 414493538 508174501 617919952 972138473 212123773 508395426 81791385 670119393 483801760 836583814 349140969 547819881 803614715 974407686 531493731 897856610 660540420 807131439 883027809 947919436 845195280 951723229 104654628 276568688 72807801 175741021 312299037 863816081 393054199 556730058 502368629 977754100 628546344 876947798 90992847 102438212 533986972 777430287 699970678 829401271 951213920 987442082 720642765 897886442 521332671 988384782 851599372 862974905 655262697 679473459 872377841 949189016 888068674 914433940 150504708 378990942 601336515 779731089 432298979 876946702 146816632 383493099 524810746 858602702 30794311 316904987 206371064 741523912 981657976 981873512 965807993 992846074 486474677 675149195 779344844 878595319 754629188 942417386 916408463 995144918 968262878 978202356 986897419 993947555 222063260 721554895 40496665 939585069 784461300 833351426 727166018 905752169 819503556 961018043 66364504 315049361 774635606 876973154 395636220 822029689 643796780 713253299 530733355 622107089 30854168 393052970 509051344 722536293 738808 363467550 410179782 885719272 452849588 629152516 307449363 685749422 365921022 969981259 242138413 778017233 899056800 951620586 677218480 893005625 975783542 996612717 837468098 946806830 268051874 821184430 531648032 563382924 333404650 704791502 172418283 536606477 782281240 919630744 771125853 909379413 431139978 482614231 989624866 995749642 431029222 445789722 570042924 853834021 513302497 651910242 68439616 542302954 698608270 714521722 227158940 651790079 334761677 366209987 974318424 996862309 512144904 805443074 932546486 944922226 549027444 904605592 534954022 574887530 843931357 866973640 301929670 433568286 222328843 674803665 78169013 443261240 255658718 501533060 643846882 677691121 391179588 635386679 233783846 875262597 459325690 552506278 211154881 249010928 152399435 475223536 608222422 763410127 134478324 627192002 452553558 535120881 224916117 953862017 990646181 991484522 869688350 999222398 312092798 560815980 193008108 637444837 46262785 666448454 755039089 865573887 339258939 665542662 643304452 956765480 179755669 760501294 463952213 927561671 699595418 976947636 645905977 930477569 421446627 918749856 116605317 265787757 27783263 319055079 127595063 235235195 227263946 724256854 342523799 536723389 404047568 459596445 365340970 572272159 708413979 952157808 485097133 840116305 566098289 573751916 277455262 282494153 316276485 875650624 949954132 961023234 646794943 825131959 374803791 588951434 771256507 797602133 783514394 958291361 406537169 804176835 14069431 364967456 835563279 860211741 208733128 613157996 860233880 990700739 251118434 718761369 764413975 987206662 445958084 893581447 380055588 643063411 772637179 928475017 821539234 822132443 63820887 486960878 337732679 943500324 20743473 858740539 705621153 829282106 104038876 154625175 411229232 695901563 267003975 783863871 835393302 856768857 807553565 916691613 326224826 632855207 416930183 520681923 853764627 942956754 934742102 991856108 494693202 845079867 442282051 865521878 124739936 458413400 597136736 627310136 169480732 916251962 737734915 972214526 202127166 413584232 772958729 953236655 383007216 888643746 567205267 644831124 932506973 997800955 798459253 820731333 875200585 977785817 912216458 941702945 227992462 391145118 969952223 984854217 596988399 632719212 493181409 997906750 224631329 739362658 514321884 887752711 39505345 98476393 841791690 852301203 92275443 714490490 155139286 937178765 71244872 795431717 405594862 670380070 484269156 759340504 876939675 904465776 545205252 692427258 336252119 383117674 39268791 507068493 724836740 857221077 205785419 918969533 174201274 220631381 3322518 97347145 231668662 980761788 587125418 677259993 166814665 236428039 150776610 988664372 315067480 717350737 397163602 409020118 360479802 745369503 425552661 604357203 658062127 794606148 375321376 689231357 724166709 877898589 541957671 598557838 14366744 282662420 328993581 931922245 826544346 914186319 916295222 983663184 727349909 902959802 913751078 927868720 235373109 938163507 93362655 129138612 539052630 708468881 295723220 533758663 983868227 998504509 23539372 752286325 460105407 571492498 849813563 997190813 602139793 858740143 527457000 995640686 94353780 886951032 670698784 673040830 488437217 523801840 471693534 585452734 689108803 796956642 499281424 957268150 935616565 951780685 195710420 474517017 578532163 807634751 800174359 923970338 751077024 939530936 849522858 858975632 517870535 754803143 403049525 786632219 323012953 409448021 946098699 946593817 123513916 859408754 727922100 945056458 586076753 883758014 107020830 635500519 340402569 721393762 975067399 978122237 561977858 931985185 503113590 749864671 615937972 977118578 182076451 743458559 344057667 673289154 895842689 973306962 820128316 860946303 596930083 798858039 720793818 844578192 637645719 808511210 490413892 849968750 807255707 974931459 896860746 901943900 786165723 964788432 305167384 689221266 494673349 966359180 239552555 309910012 621165144 751388688 826182196 994905345 838250638 952173047 783010423 930786888 163146198 450785175 662264928 736793225 390196490 403192190 68015522 358392784 975460077 982466241 856524410 936296634 508124585 659963670 66096992 847065827 834879087 879853169 209455363 660321036 815297924 852444923 443376602 525976663 415865138 532535434 649534665 816618317 250610150 914116817 904448784 986264189 498623753 758361968 382220431 917703419 77833948 179755465 684612084 712659660 282409974 801045477 819623802 958990539 787075743 832990153 3383721 609347611 5858819 422902064 127951710 448874358 724028923 779134518 976839998 982210211 901480261 979739624 489732836 682945035 164067807 848062613 41465060 649173199 692065132 833497264 579397857 754967198 329115011 523156683 240029111 954398283 629874949 807997961 276137691 357749374 713129749 750984917 630172597 974104008 434516669 959949937 261517764 328320985 296337959 713244776 581661828 621690337 424024473 727071400 48233472 842001102 604503269 616378490 716149839 990566031 745040823 915275260 737344344 778808069 346168270 848047580 385771027 410568324 101438660 303439227 821531615 991737783 928992220 933286937 330796280 605923635 861800542 930112260 323934157 929145137 594016064 728014623 334620732 577021147 230015776 616383489 451760081 983565976 455158492 591333361 403576720 940973587 15781312 244951842 95672618 872182217 674932756 877434496 904191131 911847076 245103637 690879687 773554267 944441465 531317584 914918242 861174481 910561028 790598370 954251606 310244558 792728288 563658155 609992337 579647722 733058007 992704910 993060054 780507027 971521288 696816296 737031134 568080614 903882561 776754755 831636907 426573755 655050338 821370208 923700899 55114925 412998956 71889743 454190196 775296555 976229124 771546979 921426458 984514012 999039746 191913532 641610063 963767920 997904149 182912720 913418951 849410483 869866720 736502132 742137093 54653066 573542904 101086373 868076325 858904411 934715943 384791138 566260375 630508146 697552600 242187461 327040377 670383172 884661843 215421508 974850766 89323177 476081025 458054322 905975882 459433977 918472300 687813542 884781032 554699694 915408926 541648921 569483196 809637416 970094685 742391685 867231211 388432734 823434405 764458013 841153020 183053176 806245948 678789231 918102565 105326178 821609033 365150346 734734124 321109040 706302479 786146406 888050413 368568029 871871377 462594077 739397920 578970399 712200328 787206542 865064101 649949895 905719079 641977511 741766728 146252361 829144217 993573365 997225419 756673483 974278696 684338216 810519445 979262242 990722996 532925627 554702371 57546247 465697398 5732256 112051184 375194008 595080708 550588954 584755033 819803235 835041057 288665801 331332180 580143251 655393239 246006769 577201641 683162441 783673522 174687344 289685020 174913652 482348420 124669347 475444143 180281168 617560240 253973066 903780712 721328982 941439461 399954029 968807529 789949357 974163657 225798325 647459391 188359514 455859873 694768527 907836262 323534725 378926478 642020248 802612768 144321081 238821578 643121455 890229726 482777815 978286784 407945187 695918144 564239155 798213809 406296281 645022985 610138918 654604252 901767560 986450569 466559054 552124534 9685369 442339219 887980238 952030505 128790924 821246890 765372862 947589682 174718500 774981456 978584941 993491239 938455316 995793725 590749100 842049630 560560209 792477352 435317323 751494127 598593910 900527931 833910042 869832306 968304338 975795081 811175131 941409857 600078487 794750584 45782505 381870322 522956109 726124633 256003509 313108747 497533526 827054527 179922267 566300761 460472532 705945560 334365520 527956194 598379859 852085300 229426197 258824622 351729088 614315921 879825233 886342897 244624250 966297266 208479574 963792858 277182534 400203080 357401743 924949878 247707474 343942614 9171077 103400361 394075644 985381541 405734898 843324057 628548772 891835210 370619352 655354869 61265191 529805505 152770781 480802836 644173581 909823640 79344594 182679714 455470854 484674916 588030818 833089026 623288514 945963036 306213688 545250465 982980280 991014055 896749950 901785086 945680323 989088302 527996489 960552130 825881203 863361247 966266316 994911663 920594813 999021064 809690884 842301413 945956937 987233063 115689315 672282527 725965734 932232109 769142749 794562920 53993246 251069610 75061773 608403899 868086854 920851978 114131255 156912841 931701349 941334478 737523995 926604624 676480185 887869565 452764210 544414289 979988421 992228844 291059946 651558906 504159774 723472653 61211101 982845159 663997226 778598565 161873770 784483164 901267854 985472292 595093032 888679891 557057718 894665606 155172543 970968378 935611152 952886084 60855312 429857113 955123897 999892218 549695862 570787169 124776951 475889125 70405465 402957152 939328858 945480364 623332380 764401980 681365133 869907227 80176944 430527193 517847252 986222128 256917570 944208984 690038077 951924595 307059248 681669955 889360457 994594253 536238169 861189619 301104514 586297065 512511303 890942643 142740129 600736735 924979385 978397080 441625650 866608242 793544532 827614130 456396853 491434769 788169143 890858341 592601043 701743412 934466928 962747375 411383520 954444565 858729688 925594992 91425517 636703030 216184198 458122557 353533012 443379543 903388387 928923342 551623683 982154301 916001870 958449027 325702057 985216013 933970071 963970547 162810087 193052235 351492403 597091984 77410317 266956647 202167472 450219798 271583952 891718569 149013924 852133908 479757272 671060664 446388418 590994721 439698981 990758967 309955254 375591263 121072532 726382389 884221713 926894955 639064233 708170887 217515047 296209125 924088780 944960811 71045805 793256180 736557229 983409095 329417743 797695974 976035366 999264713 516122385 664550740 968396067 992184399 314713514 996441842 397180803 624088060 847913895 987661594 686785565 990418425 771098156 924046281 954121571 975430187 434794092 953822258 699631100 972596113 396091770 685193298 365694472 774338354 265308763 709861908 473226079 568679679 123026299 882916956 340391670 431347511 507442195 682796012 299046854 721422116 120059995 828183274 545596362 887358117 952662047 957249532 204686730 784995021 517863016 561773689 917248353 949673600 875057134 905768925 576308976 936894546 524380492 646545940 325281702 517789542 844990100 928478785 571470474 665279970 86774062 97333807 570376549 939171868 465577989 601902944 78897315 355199742 515476736 842715690 821566902 993381632 956261986 962855003 623707103 944351718 603032215 634885205 303044275 651535644 874890025 894621055 499731733 947972125 938178047 990717139 435075423 797211106 919897290 929659415 154792742 303559594 416388569 986552592 513682853 735431170 699429472 726439235 82322617 302092264 756364007 957202511 546475278 944209832 185516488 285501955 941713403 957623267 425343473 833284321 149897378 346213128 327321833 428796210 161929141 673277719 168608424 322657142 88259026 408391612 427462787 937832012 394838091 439700332 625322467 918504512 740074393 996151549 71196567 658401494 808619857 837880681 488855435 857795014 960660019 995747024 934554155 979834414 543829111 821432006 442204700 598558779 45920652 433323563 375105631 644227460 282193962 328951454 977322646 978964249 767711237 959284225 342941712 815856135 77802020 932873144 28172936 883295326 153426179 942681217 295283215 656986614 444103268 594782647 999947937 999987875 681204298 766636400 176073867 529062654 422472030 789458547 374105852 647483111 420037479 725217490 594857010 947994409 777011982 789450384 147972778 405983146 613977238 707538225 122150767 569976595 159843221 260284060 18766070 869256136 674840903 858494362 374271001 824076650 248274116 539582691 988972103 990160218 832759266 869020674 568234975 686996756 428402047 735867764 316388663 846533609 448031146 762855657 721438375 876283911 718286673 747846607 76589496 687876109 103415689 118017362 64753977 318004582 669369971 791602068 333850452 753369941 16783324 864191101 973130059 989740719 759869563 783022825 495142410 800529091 710387935 717946539 756726035 942175658 654435111 936823091 985279590 991964982 618236603 934291959 695316562 806290693 58874889 164701725 729034551 916054632 572734113 906139702 201155237 330870402 816035644 958478884 852646730 901500042 918236988 932618657 610517727 965377179 684737163 990454681 500334892 649574553 162851492 366891992 481414413 594897174 464262987 814656725 78235012 338692410 38400408 926380268 809579172 896284121 514647644 634931798 473773871 674400091 69451324 389457282 860005088 925051300 387096759 783979271 152519110 317567852 309721302 644440307 427001201 630123186 226801293 862228902 489453066 687587850 523158033 588346800 418994841 631554790 327070675 426308208 202670779 693853819 521837409 664406436 820163134 919935395 955144770 999011146 449205857 666069237 568207663 754377975 704522819 824774224 997048180 997897674 92102034 793725501 628749551 648471119 694286880 828415715 424836630 652737216 210236840 686571959 648314630 653326232 521040355 525414591 709597625 726491381 474727198 704992881 308755020 934643344 346498980 490008259 979242521 990987983 209478870 565170663 618630570 807488459 838475763 906937458 733474661 987177300 839320566 909657719 92932414 578093794 683937609 926349353 42625059 450989574 729034058 757104978 63649377 93643368 286665825 402959312 221749268 460948011 934519533 947471742 829879356 872456380 465206351 878398654 696106367 750155521 891880594 981098528 552807911 934360906 735326747 852597392 957644379 958012857 623146974 901690623 863803553 961108620 694810580 835313289 331323769 884757663 161992035 573987371 709479666 755617860 400380825 638948804 971587791 995767449 119549296 381415592 876817729 975139000 746234672 810263199 723845566 996511577 783245684 791209330 467890551 975110901 841739678 986729529 818976157 900175954 703321014 730030967 516895102 706262314 595725685 955764778 938675037 970683947 741790219 850285680 761095289 970857437 853605397 980634436 33130409 231314184 495512038 768728123 584504183 984177796 145485773 825163498 829712504 882008484 830548045 992784434 391846820 777944359 420223468 776972194 633401825 723636384 972900490 990386530 722309150 872803113 819626148 991901928 548170717 744352894 522996778 601059775 111338234 524126034 503399795 570433216 735759121 994210991 202846527 357173890 221587623 418659249 324672700 582637184 730650181 957573171 136666365 430217516 721285354 940931860 617116868 624710780 18288511 560361084 132576726 741947551 149143033 301700198 540468506 910958059 596412714 621635012 147866190 542949324 410866302 856220322 562063229 917744269 775213446 924897183 10860955 188797243 206569213 496098222 28970255 655683303 997612711 999672363 368140548 621041728 297889233 586782003 785568871 866744021 336012333 458029646 221380285 769534244 561630107 807317684 803994394 900958731 157869987 205299574 970528571 991553866 929952211 946817359 62421389 460578582 58463191 900155128 564381694 963530616 571160146 826114347 409260222 499861034 781525436 833671261 492772155 846897485 159102460 332840876 837907648 866789512 989702244 991172175 236606651 979683935 491373089 699842830 262501986 638744250 194148074 735089100 243162655 748733826 392124784 648177470 240274542 650756644 312613832 671454983 254904751 329034900 53304776 793360731 517295854 785586668 252029741 973032540 550322011 961296161 725953482 859823233 587557384 745490396 486207013 564569533 580049226 582195921 72478434 121360730 174894924 600136808 102206666 922451702 516232611 619675040 157871333 774511951 207578680 669653684 281585000 350132413 482959705 944230532 478524057 920064780 264566534 499065253 291469270 409642728 677520528 856728430 254921287 513009512 894741828 944281158 321430228 981632298 234686168 851547103 326782373 903276641 83294760 254449040 232154204 628794353 543104091 886220964 778925732 886864605 309494086 655237990 332650782 646075637 916684258 927533395 998296072 998541255 110118137 954940141 333272504 721387270 388661017 529129221 330077369 642566828 659392492 749407848 928548764 958728202 898625102 907597732 41548099 577789716 537635801 792655152 320760629 854291330 933872988 960886071 522371259 677969631 925926234 950011030 478817358 629966209 379575465 822887141 206370600 911025361 18687570 385449345 635428506 743228644 82329533 336112425 714566233 827786132 766796230 849030664 699559882 700556465 314807764 344563027 270515183 643192804 258736968 794933168 498147991 692143236 22244887 33529494 774540300 837816250 835586503 878772853 826421866 941767585 407838453 419837631 496384925 502655083 554608052 740014843 942208377 997708492 235299944 400001198 195588867 970445088 226960613 929611250 174087970 291372982 709988681 941205021 497404218 816255776 158195146 396759248 384354956 893226956 78853333 829656519 318130001 619927439 569214690 621610724 520793970 525708360 232774439 908321239 778301575 958030424 372375724 851040818 699684203 845755206 754644298 894916827 984273111 997092387 197361710 221331907 339642891 741895210 524217527 809453674 252790785 358026764 544159427 904201136 283817611 362083386 228451609 913799315 832366101 842089071 49119243 332381054 92327165 136633115 889008718 990123987 74983590 480565158 202060737 903147642 491634360 908265860 396508976 638444508 296612970 424502723 873370570 932437944 57863078 221392003 727852879 944544861 644756463 680131206 349502308 640156652 545730411 786571860 849295990 949240526 11715177 626261120 249486105 668269723 493878072 529576258 969237884 983160211 61474876 781462241 241986531 345453806 261505890 492984138 981389568 991593079 179750286 930843206 854803020 860538106 305230842 713963021 739250317 894288379 795400444 879624539 638379520 687711928 134490628 239777309 991309779 997918793 829278693 860068546 916596477 919642099 613337374 905000390 374422138 574561894 963341038 971864939 955433238 996651500 881921131 906048379 864213790 867453576 17379820 797386013 251011281 903727046 732587930 896495090 690716604 926457422 203046973 652051919 591422037 686264220 248548592 834733855 192777990 200969777 941245639 943711263 820220621 963524057 909799666 913735691 914095150 931330170 115501927 231024657 440715404 518501799 59934256 850017964 196431332 783651925 812918929 849083636 640125602 862470500 222368288 672629631 972342143 976343942 982761349 996411483 889994597 969515600 713271106 720409734 115044603 131640933 358963776 692395626 784724813 847831648 489707620 847136001 113272389 786032787 976258470 995809368 799246264 899558025 801266946 925381600 279665316 906956823 131416865 739169516 658087254 825317799 270214791 659036880 965444535 987557559 375018326 425370776 618572650 862868150 553612179 576085629 860071225 863076850 675526354 934843493 582382557 662062879 804682499 830010498 81992101 606661947 34464757 313158911 156474270 920056065 601750297 776582929 243832406 327930913 271931106 350959900 237737930 601841205 777893974 802591375 274851845 558544544 181591928 938378299 703239255 871652016 655933478 752495950 189043351 486908515 640842466 923939916 171477051 497293236 921088010 939721867 8381541 642014741 588089926 971108976 479256244 539601644 483418150 651360974 933861629 947858341 999531152 999660655 803738192 985250187 373260229 399927488 7911318 323576908 580754455 638419863 661372191 699297453 839412970 926708266 517281149 839602559 172759666 922401465 612244702 970961448 974845403 983756739 728565602 963413155 895404160 931630136 963137937 971626293 211328451 639018583 991192055 995234358 322090402 866172520 237540609 428309217 997863043 998336439 864710596 961863103 403731935 828570575 719427704 853484317 623905317 917941681 460554410 579316650 954262289 975635359 372959741 757023604 767643418 845435662 144233218 318983054 95166464 669622808 313078573 925911907 541366610 896745476 604391165 934123535 133914196 831521535 670780069 768881610 712889081 923423633 574348806 957600641 279376910 900688034 627749912 841446189 69924252 305075750 571173541 988720459 46117322 661025537 305350452 480400774 809584671 889476549 580978355 934997573 84913249 593343872 436643126 594554973 797787126 973548646 949107436 956443321 384149196 664657196 217710296 349187871 247839056 263102173 530055355 576760070 32935486 565626231 916206175 996107392 578718087 924840091 528929905 705149287 782707691 815740728 260900232 437564033 488501559 588552842 302968802 552006573 209679541 712533331 505025099 801214066 980670894 989551218 194273579 963088557 122127344 906328122 378608552 691747402 125269395 404554247 648718692 820769907 4476184 414146723 527831006 595631836 939997696 975921328 677209225 872132441 390961393 831108694 322796815 383461984 960573930 970700507 292676850 455705878 779754669 785080893 693588177 700148608 871407137 940450741 910590731 920066815 128665405 187831979 704865469 846275823 902432918 944309431 357025339 655922405 801253259 840822025 557145441 856344445 365377907 630047921 269357433 685353090 351538796 978582878 642650068 990435122 236431946 428879740 541466932 739615157 364261278 440259704 420731043 657380091 565207486 715342946 334938474 523286152 509810035 758041950 869269938 994022261 759365358 875187332 923743984 954610591 718005993 941717951 144877461 576173465 616512738 808397771 403477741 442679058 909613944 951108115 401207108 597364187 603871047 983388095 360632082 900220530 677920642 724054646 35704973 510806375 71894842 682652256 863589400 969559749 80838366 555729563 840828784 936993894 1933918 461985657 81409221 656568635 63527331 970748672 163226666 561973587 736701132 796778375 635791785 800446779 40642677 117857734 996643993 998585575 868771124 882864011 722718741 902618812 546520718 771355271 373475295 391494110 280302999 684048133 337251438 365039955 776368405 825664751 943790875 966555043 84661548 398762657 42554577 474678026 355028967 648312305 161456792 460479460 948232062 980530177 394029659 805215611 81013378 164521366 514076107 613764344 227229924 525233351 98230882 951526715 552401605 939171694 124370244 627098678 838939572 920011925 308651838 985054526 205701279 333426818 450357021 523395185 623527564 954010482 18101733 138298102 824718165 984931411 929519200 988193733 992947406 996367636 682171548 859356800 138233614 150241802 162116133 394115749 708483609 747642927 403644544 851258095 997949370 998830504 500563044 970273560 225157074 266180578 575538312 872123610 606610035 908305808 155647064 297100004 27961033 178750967 238516273 386040928 387835621 512882580 469898904 620346588 147872439 231890038 662196957 735232199 907790787 983824233 592792117 682235083 727690633 748257160 408585787 780170237 567461509 952104424 844431202 884677073 300937100 681963748 788494547 893827403 218813979 636582848 497950460 766232724 225538312 969917296 91619203 548896269 859803366 920067569 859075241 860360883 60085785 432229782 872036138 981466230 42860289 397537346 880309056 912022286 660547724 881680462 491700758 901171016 119756175 698209601 811125002 980060669 619206017 750699750 975490969 978516590 831839691 861269819 50893104 387767083 370371933 524647471 698856309 716198774 921952138 972610401 474476057 527073552 19280156 938323576 95696915 806454696 136146046 505663577 416232030 713472877 561785118 882866643 652444487 721283175 525338523 757268041 172584427 401214411 522462678 984105492 7529255 327845117 568372246 609875489 808929085 978449182 381862544 577218160 355765220 670195218 297272623 740343341 837137258 869817249 296715678 721645615 88697705 354470259 405129013 422215011 276944976 782828447 973339510 989534315 774921111 948803100 759470311 820528565 805695473 926720181 985087714 991301178 592828997 703477391 858308317 950488562 101671579 379629024 429640838 808417808 432991921 668488679 450168382 739282907 151921670 961731135 796926161 822364468 499140605 600780391 227994280 658470538 547890547 981706043 380984824 955807964 358894298 817981004 445328365 470191760 523270732 999529077 527875651 820154815 620349566 807377071 706425802 909470166 124801111 964270162 788332839 824114305 269699935 366065439 665196467 700513080 359476608 412533384 417606132 845908928 703462444 892706800 75960356 367142451 473758651 900655310 153374430 915366339 713245930 753071994 229104032 472979812 816397575 817986019 811375033 813641498 181923381 616813147 53512620 714467620 826071124 988114535 101429069 626723412 53993756 304006140 76087584 487773739 830016525 869348676 930410374 965653977 98820085 766331794 231013745 661393717 487884391 723627919 974080481 994116511 410287605 927473023 813598491 888784575 640401488 889484860 491613173 683520561 228756726 624315533 500562151 710556429 798300370 868072921 255775513 763424715 556427426 736265366 334330746 746069792 854033728 918343734 811672334 952621607 343448699 567918270 480262656 889515675 885189918 962927929 518786669 724239284 771105612 890878445 803592976 925900636 505736032 693264997 277434433 629266576 918300915 950668615 920205062 984542063 526518886 984336844 279828986 907991880 641989218 651035337 465249941 734192288 376705266 637891285 603009758 991805312 159659183 307937890 493035115 622257566 357340341 585997038 422944859 901457299 932699173 988886165 423825921 961732422 110414022 451707897 924712906 990395368 989780387 991812845 203911713 269245796 954409676 994594154 439600685 903555336 28492992 121433954 172131732 788905116 597808322 719752693 699278209 953144894 736491962 763173247 85796523 701711851 225370954 278225446 502491825 797965131 87938062 817856862 609296945 762922364 58385854 407267529 440333128 707491904 977163875 992830358 255554343 281759821 242581647 274345369 37295784 529043975 780928867 966897580 321968613 694050684 443361246 990275214 744739069 883589064 396128390 768199462 322678226 997954160 530169536 633014420 253237716 344980116 183512063 250229179 615211863 792572469 168073737 803629579 401319738 589213201 242273632 490539881 318480429 622791091 468888922 607675269 681968909 819340103 255341314 602855212 335379135 882212886 180206263 626766887 103446725 159866798 103169648 970873266 135417769 209954737 742873202 914019475 528383156 896357520 236618325 673086900 979263897 993090144 809824184 861317716 985966944 989685964 471977639 863588575 138191209 426128940 963943614 970623880 179069463 816836992 944855146 953759395 150635971 728520231 663112260 842618530 783534752 848126525 539204175 575784878 189499002 918818004 618677469 905777484 820958563 983079304 160839976 427154870 795836848 839545123 99732210 653188919 688361057 759049017 229317993 946571490 406086259 724806520 761964470 994065013 482853721 763991049 437764655 725741129 114129165 933547442 626154491 818068484 917891689 971732230 822970448 996893219 585032331 993487623 518312830 761581951 740656050 786544861 678345822 879269913 266041324 744719857 723427307 803072724 752068060 975237109 2746880 934006565 697477317 738117185 622293266 650793097 801618868 812413009 384013496 696221730 927749147 962327965 226513854 240843160 390155700 804018272 387645931 479234773 285289652 981154464 763653560 900942814 129178246 937397115 687651970 877889196 121496090 316823516 953301043 959675121 274492009 421210119 81693188 434071457 188823919 334546280 994672394 995646836 886513711 903680445 627735335 974639126 396156943 707254505 303935480 476529172 895131323 977010154 125246881 772694718 590775730 762328971 669188913 726527297 704132272 840866583 88479653 538726104 106358672 863712344 144773174 599638460 199932284 271774038 591531232 905426166 860375851 877836799 861187520 994252374 842076634 842972344 799203119 862095870 292500229 388196060 694178679 718620827 527796577 712206818 125112782 337041359 789646481 838012207 102002779 359842005 300175726 762471622 368776608 673947564 902621190 972463860 459155743 864026083 248357807 303896481 3661808 604116978 606116490 672253106 154744966 773741745 115171432 329153966 697393293 867827972 731680391 818601378 436390946 498652115 474094575 837864336 770472254 854641227 202036744 236003681 553200775 817803187 616001841 873906585 601349061 827475286 667276143 994184258 391564888 708639416 416220876 429150146 420881065 767619490 101455809 473267314 446124470 879516211 642489034 746598951 906531665 927230897 230992182 865942769 106123624 784713433 887860131 927272705 24786289 694676928 510767499 553937106 521301558 948608396 785044963 912295430 568326940 751284978 650214575 772073587 736622089 829450366 7512601 72674231 362577583 406405019 368003645 912021036 739371050 849000345 135932289 830644229 599317583 786420150 98598936 644777504 701735333 993451463 149803507 591401674 346797650 682544244 179520121 518601757 139669627 569172050 765846245 838187186 71483988 237898331 223634703 962003566 892909337 976919362 482544443 497245067 473966968 851371269 227705144 439447989 898745917 929106644 117177078 881757129 538336967 788717102 183191416 534161549 755268850 964750643 485621433 597201485 394869516 688609843 730984730 877435626 780183359 849581828 454663142 754488912 35445749 934590124 40149013 311486981 785839039 979809999 588426260 945424932 982948783 996043647 726983574 981316589 503692529 862219975 337416618 805625859 121209156 294317175 189751530 190453669 666498677 678194082 563143514 810372006 40631850 854486721 201474891 602744368 538713162 670631554 623571623 839650883 87446661 922443322 968991000 998010461 140012862 255494930 150142622 737665450 491233247 579704839 39879572 698429231 770524739 871350429 889270394 902402496 97923438 734450301 882479966 930495902 426649176 431341434 580761788 705608319 444759828 704046800 576704605 612249260 121365898 960581605 731456365 929657886 527384132 991736744 125406317 440761397 861295311 894662812 342970274 481889621 710609824 988550821 951441267 996908100 966804544 992149398 78168698 493375187 370927843 822247619 393495489 848630275 848602705 868115747 493023713 980612305 80158087 254455462 265812163 327838798 752803448 907698976 344000101 868314083 691192561 868407573 775736658 785350985 120482072 216031079 372605772 991156020 524383146 900638763 905502540 981902084 630350758 792258109 5877470 843555703 717467399 962592093 883590399 944169136 342926385 396002648 616887560 661147379 270514840 638665502 168504799 235855308 542693674 713340385 6362807 861678212 298170171 396827982 67425397 782027793 882566889 951982825 853274972 881873211 323390717 907572187 773922721 896171297 998498745 999896149 140638202 662192827 694182658 807041693 912822653 954880612 611032482 677225766 466349998 725433512 101434432 869534630 344761181 622084257 82971074 156671746 326737516 626196044 912084181 977098198 744460873 995571642 943371712 972364203 880227698 923373207 539822104 977496875 762606711 995499773 20208653 442805772 181859056 800920986 563392140 801931662 942758794 957387524 28293532 294094256 201824712 489818271 92163938 191909847 369277866 985974161 905688441 969997639 585271358 642095342 429394127 524814145 434163383 986963824 752644088 874605123 622694556 692539752 58303185 546937596 478501182 907671131 812781882 991609999 796992702 948850169 632871781 836766071 262458293 292794710 230456227 424696443 63380069 877604109 166150564 436325396 606382739 878843091 90011269 839347454 344059153 722831450 714854873 853215241 368151660 698753411 438141709 912396359 255559670 714465955 797941658 935812421 548008020 928671163 782002556 899054137 189292290 570721556 556381199 674365261 897000291 947262137 304925377 315680616 673340164 885850618 907077198 933411330 491438521 613754182 240419159 759802310 250386266 331294305 370292756 609612047 152878249 778497437 668412990 705284202 52408312 854692465 294538273 492501260 603887946 982683303 794224363 973758443 997457534 998419080 408859915 472400633 956063154 989939808 971712717 973260635 138611959 380527880 160741934 562499074 744788859 971903502 958428856 972321868 858715158 872894738 592968306 892872078 529494671 740550397 14096505 35375411 411776120 911930079 517594145 846604039 440357006 762792623 871693291 977350752 830721996 955269538 694546125 771014856 174979412 489903869 829891602 845418648 702505236 775191183 796634430 984852841 939309817 993094443 716100526 782108259 154662316 515743382 633689069 966582086 144103882 994529458 12313895 54128374 350794838 628249412 614114694 910843492 28577025 836196881 43480911 765911111 681623896 741985559 732087895 804178985 677981404 707709916 231370667 401441660 611624986 811673856 522795364 925099368 775106394 877326016 918858693 990543642 976145872 984157518 964681695 996339637 425869229 986117627 35573328 974983010 660772916 734041216 230196997 230954480 137210358 198255330 321353179 826650022 749757596 789884375 466840208 834358917 818068847 918471428 588139790 751799519 524564204 840225365 980697489 996291870 946716074 958498785 454408826 994766597 39641153 188400971 703461387 901230291 243701145 318890722 802423770 835803748 867607856 904418249 128416563 465624876 189282403 946839366 332781599 782245968 130134171 824899633 101502352 321495988 870646847 899358817 681231334 918228125 423327608 504822328 178933070 475749544 282137449 440008348 849039886 928051230 569781865 629080904 137254604 384319294 554249007 907160562 398159711 475778150 115316565 129414935 600025412 780257328 572782960 926335820 685307380 869039764 748036786 952436354 936154830 993404412 914557970 954843862 335450010 767944778 431418796 605197930 468921153 757395847 386345897 483350557 706790350 811094675 579028570 930210722 819203009 961561558 865172206 960039921 816027685 974002892 738059462 928041879 958308035 995221470 711694374 946237657 594535992 991198721 150090331 464449210 818628969 952350921 441432879 630946046 417388941 475901730 85637012 631013693 256589734 710988658 749550786 928128921 820005139 940362459 649294732 651273535 556924489 707048263 609031349 619071255 954910799 966781616 834549220 903377033 660203717 849272181 694276399 931336105 252535576 753183970 389094114 896852456 138351882 204352178 732023612 907792708 708958384 887334537 582361054 967618970 723542569 760588638 109571743 562001192 329338937 485854315 716010550 741654329 689483208 872338155 126179853 392384053 689265212 811323045 128556111 816730715 892552443 927550494 214267780 785686236 428667880 947220923 811330685 904551360 927264348 949406796 150343370 580954308 994668900 996537405 637664477 747200326 978519528 978789497 289390743 733873030 797886111 853884799 129029169 717336686 335141145 512181535 37145525 127029706 642783658 971857377 442753220 634672642 56959746 463691661 784800150 991287492 891567121 941410527 186134240 205101477 189556978 828281112 256069434 381583716 917546609 920314318 808597965 937997926 384436219 612612685 219952396 235649540 361703978 571343345 959938226 989225255 830569129 839645343 621250902 978793027 520487045 800988491 668833719 700647486 687732769 929443128 706796913 955608660 934524646 985025097 59282511 363847198 231401420 595786718 256325389 605375079 454931036 563805476 797802372 829173573 952824513 995041390 260133472 293477772 639585822 855230297 780565090 954407127 735456591 918461359 162326526 797754042 437645975 916875200 417956393 518612838 675877362 792758923 465236642 620884757 686477193 986933686 987233325 991364082 441658321 549077669 309999374 912565246 243372872 789607206 623047316 839373357 640473401 640732234 543431979 634720901 851760939 970769945 64042019 187372505 721704929 757328349 129323957 216974861 323434 394202090 201712179 239533256 821150302 902274497 617104962 853336720 272231432 397299940 595989179 983333152 610089866 646374499 214960044 291570084 198156965 941072497 304452861 334036031 89540726 691706001 446775450 587378875 95458373 188881346 197004541 840635888 374902754 912308215 138040208 479998466 520696794 749940209 331213803 350156536 875219778 962325381 322986496 472523341 109977492 760564228 810750812 827227672 216567722 844140073 719121591 803611798 757734351 842192384 72510465 614986167 354080673 604723833 487344715 616614140 487629473 883919747 334204666 359046154 987421025 999212973 118711203 381720435 427049967 626420104 887123501 987941229 324348774 911469194 438626548 873993267 784471981 837937478 22970282 119220936 725279418 785767259 221301390 387459077 717353005 992915640 962960155 972349518 421067795 859924621 924995880 928792769 642603582 757703072 170026662 226452630 768299238 825247247 516374515 899195460 682464022 947303198 409926289 657155610 518045174 610294644 643425434 844144654 540105186 807151871 915290659 979181333 726824650 839541876 101678744 114485840 59688538 876504005 977639461 984726170 291633170 899098272 835472586 865939553 264753989 964628204 8180959 530797474 822819158 988533688 250942671 281471934 540250009 695179551 919811792 990829613 289461544 994455275 369419752 844457688 660332751 818145373 860184023 941422937 86765590 864788523 17395385 603098539 840311054 942946896 602678564 756254770 127341713 950298142 349765713 649217482 813337209 927490835 455176283 604705584 592421340 909715599 21399264 240303726 200847964 858018048 90830881 647706675 968700017 997823638 912088159 961523856 623284466 828454209 482073014 576704195 587988469 972059101 929098012 938579352 677150552 825188133 438554316 607176819 289076613 592249825 926184971 954602876 699295981 847655790 533374453 864750147 898698108 932685605 85755480 992722978 22920324 675627495 870416053 984282814 173131188 551519741 406805949 522964867 127683234 460406587 760451921 951425540 110605388 630030299 157060190 441329375 924963107 959789489 338669345 563154019 680978592 867189658 46462085 955395855 790207060 863620549 907645105 936030191 734014811 756008544 945836604 978388228 500700382 715625762 92198823 218988753 575399610 861162866 388573087 546424796 445916496 573934164 779015909 898054792 310683329 875920132 617106470 882569666 200108215 779818783 380544502 845092823 678378334 859369664 227294597 594890174 902917131 954762184 635663214 668141659 54468815 364160644 864354804 956476507 483294413 765972234 313708546 506727373 807608636 940841412 501439349 637111491 838045585 982257770 732609782 762967961 118197750 748997926 316687837 860907953 821622408 984193919 503456393 991924334 404305764 825262665 53636047 985749562 463944944 840190283 230533662 753795791 26254446 274294677 321616683 495497095 821446498 928444150 558780710 882466362 222737927 422555312 171312745 667778280 167222225 662146722 403797738 599581176 682183833 780650711 987915568 996889661 906863777 916456098 701773408 757395362 422193340 795539766 272973019 572814553 257699168 326486604 609100163 678369020 658141697 771704482 217874437 251003486 658843114 944979278 896299437 931184138 676937588 775646320 154827646 684558254 624714787 935080925 14205847 780859793 74386576 314122378 770007038 919725806 909064948 975785164 965269974 989904535 488222817 705004077 430906191 565346590 553352640 847912304 699298331 971056649 688104101 693682148 654694577 684071336 67737609 651913791 204512760 391809702 811831414 900672556 828176579 965203941 649954996 822778832 994628903 996400690 492865057 680097642 579717932 662927352 695029934 957060431 597430307 817897314 975346291 999939139 836798766 880075013 233239049 898203979 907421983 909440469 634244758 690604162 269314916 286321764 88364699 992748798 948851890 973177001 151924817 988491821 1287779 567605027 5100056 223609941 356106330 753801172 419281918 662424981 816294768 824389955 168451395 947234202 478688126 519363878 195731965 977975217 9197502 326303705 730025602 953363171 499241906 687711074 524411958 527759951 619003397 685184024 79091770 487856372 557294448 635536415 901563464 922811375 642020899 660517092 667550665 925834026 946484486 986334080 800662642 975348367 202691597 326214115 48540198 261397906 330249809 602739095 883835424 945764609 445972222 526729250 128454442 882610119 306820304 383017988 625021566 834997449 325840023 956282369 312750421 396366369 404696796 410517537 831823554 905375754 206871194 284208824 97459948 156751540 178938377 877467508 907521327 965060155 426740078 555757085 888738301 909031962 963033806 993254196 645999645 705984321 339780269 569975732 680076577 735976093 880081444 952886427 240507863 393065979 15791204 698575429 719288409 861295959 624906730 964285461 47039242 659161246 574063930 829282372 801531220 879441269 299030582 710408054 276622955 684129632 76316407 507723512 548243434 635150209 20501249 414279407 231540003 620092833 519516358 587351114 732103053 912727846 355102307 421958263 802607035 890368705 586850133 702119146 202555740 859286100 263739253 858687701 840143462 874672175 140448105 511808107 513394521 633059739 343552849 537903223 660727417 697434943 409021989 720913303 888129076 959367929 643374654 883742315 639094636 973246452 372464712 892003840 673654119 802311551 436263494 936121905 40922441 732472707 301792422 800814523 623145464 977638932 856813193 967906792 790633953 809395548 613498088 867902964 240348375 263909238 563843843 764860445 489849816 811067460 7446313 51177211 97686701 914761795 68850817 800452026 224366668 954518287 742044155 889053747 234566521 882549698 939382858 952120955 461786992 749247240 98178801 271693193 149992158 587594001 555852670 976460801 927208569 930457142 643731112 658658361 237776020 340687425 41453204 564787358 501869888 981284087 905155209 952605794 241330759 423536342 126545105 270473626 776528002 983264600 938401861 976687514 530858566 687985497 358533097 811121262 45505688 927755522 50825156 439015654 92435850 840209207 290147587 305113678 220616809 784489850 660589262 809385720 662973658 686086206 103055347 126491923 692765409 827644933 653025556 941502902 75644368 144524850 140342408 205396867 833974244 911230296 234793502 969364644 212091086 748168152 27599364 456081229 616779661 763099194 19336843 371162987 716387299 882407015 592499763 928750010 607620201 709296880 603259005 991391817 225655025 905414410 877986680 937168711 219675276 485897227 25381246 235382328 501635768 689590213 347317118 816897283 483850937 731428658 817322596 860724567 454622322 537621501 519749859 852721279 332066619 473103722 774659962 941392635 53488168 391754945 388209122 888553317 572121063 893586619 224349298 502927574 531838823 933761320 546666902 635877957 658197831 670284001 55981908 414231351 271787137 922600038 164119343 752896864 535499083 816810828 717693190 941212309 697362321 852737231 906569288 945451563 666567265 677825544 223392682 496649804 741737238 919424714 967501476 992408410 123806759 890287365 199497830 230700647 530384134 672180531 972389872 998454757 511941006 864563036 882395080 907486629 529607410 770580109 739826286 772168595 973511688 976036505 355031912 792666359 647119518 662261795 172126316 804684037 270587308 876750613 174826778 615098236 564802003 959930397 819214103 841758887 835790353 903877215 982004698 984570439 711583905 930945658 89036888 896914837 895841378 914785896 452463729 519551773 491179065 744583824 312102916 920454129 315698720 617303751 15095138 199137616 615030970 716097073 897854155 975597467 168961229 321679519 744599584 790762988 901010728 909424647 668310443 898230145 298301411 322058291 200070390 912699626 694938098 800730689 167083364 449812950 466604831 613958011 919082677 978404863 286320511 568151947 301720810 575528317 47524742 255725658 642487609 859905401 569682537 641685511 782779113 973010018 953640658 989765904 365446279 443604624 79809255 988140428 381566424 980062919 83503051 987263927 341722529 454941076 768431936 804833597 471212737 918102397 915975372 970111284 827989618 903887650 315793030 594522240 230888578 724231207 741630572 985981118 244057211 300223504 981776182 996664971 55721534 350261408 142032639 667205148 929212618 994616885 9195659 250243809 812152525 852423954 811178512 906203455 564924125 935539311 697627349 896603620 947339773 960278266 578771418 739157610 381382265 628862082 472599463 703185463 797957184 944784373 806401401 808511300 702084034 834643345 777268940 965790977 53425581 113357276 390138174 864782232 342462289 887696027 807622281 905291768 361440847 504516585 661526792 703745178 412808725 913013544 640816638 929376509 789580545 946956129 422744584 435542173 990587368 993844988 406077383 701619654 769291763 883517645 273279920 507054571 841844463 874585889 758499780 857677436 841441308 885163165 976432175 981743550 209977701 745181279 4426423 918461844 782186225 838868902 126908472 154716634 826053785 878232567 705405753 807727344 708565183 748718855 737135317 862065053 139790312 171826640 177179933 348885902 889877838 905221855 191405999 302672060 661271964 728192099 33854392 240439078 751395756 758946488 608265708 739681334 201816159 781239250 588000423 822176676 978834089 984264885 463108620 919619606 50996157 227515674 95763508 111605804 73297016 386682625 870020566 885727901 47944559 891285677 276768257 604831438 83837908 714474106 446802688 626271348 965121407 992359034 489598974 638360682 869922886 987259111 839060665 839915092 739459170 983356917 772669447 827044061 236874756 649422994 780968483 840452577 826604016 855633169 52741189 879849279 283179502 292930291 879363351 913691701 25614854 211135030 367868493 608031531 906695502 976015030 375448911 967121097 853387306 878094976 428462543 896032457 506498048 585691113 638541499 822579755 800121810 893297316 537738270 935723740 816279036 979625502 989200339 992213389 930257439 940200454 419070982 762443291 840244035 977683567 254178907 332705768 468424314 787588500 286958807 461951414 13911386 365130176 60437743 457085050 747295138 804199314 701789516 740567501 629350329 662749789 334641547 780008123 399123724 793398285 825166505 836272919 44081588 483643299 551487524 954743145 774192289 928512496 991686139 995523333 832984013 926671992 302311989 662957564 166449270 594744101 657726501 847985191 663406215 832197787 325813364 473949059 393788781 866600278 661043967 988236514 170702231 654615642 727561932 928890130 184417023 904769803 540461530 901179317 896995026 975751387 815943651 834003850 617491421 702747858 940513832 951579068 671226300 694618794 137591308 163130989 567346318 894387717 335767218 408477438 108966810 249796979 849357453 959876610 275204737 577267047 733578375 936888173 232064297 396162053 686877329 941637334 198005638 640184000 658441647 765328416 69892450 856555160 944445154 994097715 897628110 930320454 246266839 545667813 884778104 949791449 51077057 661715027 583708102 921385537 878523344 937819873 707946968 800379192 996191338 998110680 94585146 552898777 861753186 962748266 690288225 739639169 189130864 450119659 322254518 874971901 630837095 866522515 401679746 815712079 151883713 531237171 719909246 748560266 564033851 659729563 258895181 782733573 727454129 950898077 57508079 830573245 795557674 865759554 389638338 531897632 404867395 929664608 15473762 549826727 752144091 962788591 330169109 344429451 961681437 995249504 384534886 828119462 791738650 978109428 507160951 570692527 807479477 961184862 23472542 401421457 248767682 530245028 266359233 350111304 213331199 718805764 535179476 826303674 819713981 880067871 264047572 531997207 260180553 766719343 754236439 827890641 295274257 693744861 110605334 407581615 636112658 842505617 642212451 757932604 909719564 971874507 650864050 974781970 464432979 953612463 275979180 440501395 440219193 960148386 704813259 895113650 989475234 996287330 750434146 773893522 244534743 318806802 790919402 950290221 116927535 268271701 90652718 900575682 610855954 906949992 875578234 955589900 837511485 994054968 709416617 772097212 95949173 872777134 557047881 622310316 381725405 701101588 279682825 704734564 949151554 989129744 883718450 994387153 660215866 832006409 742363182 992053357 71204155 395708819 707092339 954867654 229716409 999603824 249120247 946858535 263886942 469328787 928638057 972676738 397199713 405663302 74646504 842246519 533201699 627268038 440033362 961605511 892394392 981073644 857233160 966732633 605290238 987355461 800765362 847156942 64663489 865388842 662542445 860720438 720282306 930226710 852864640 891373928 450895486 499087697 847229919 905618112 346888427 606098939 209510971 613593252 760211713 951548005 937444895 939081359 99683015 599835185 339877898 783748397 612834079 875157423 20480785 443702930 218782942 302546015 365042735 540064875 863211842 918132125 335310781 365153893 749982378 950590106 114518197 305810414 77510369 657335709 746188396 759014604 125973951 333547541 365914776 789814084 402337354 756077947 509475331 696958975 866692879 970871388 373385504 554285066 776661422 813404488 665267858 808102842 31446992 907837023 351757378 947657837 44251301 670301542 577622623 608658641 802089263 870406491 404174704 536208301 623246563 846252847 603499347 962857496 18682413 280902363 519405103 686373122 336038145 507424192 713355126 980578608 164567993 848837165 466949217 855575983 23741125 788461384 358280308 701210034 237529015 529036193 625517099 864177768 509184521 798409629 465611680 816692061 221214837 459103550 158542835 427183666 409562929 903159542 484245652 494039598 203856109 715146177 401689508 427836534 937194199 980399308 582799585 643093237 796732330 901322280 987690095 989587889 16234257 559931840 643487065 896935439 947488398 948515135 577765218 900782861 200649334 226282495 249032432 774665995 148003292 442366901 717246353 848746618 724790926 825324994 315752018 655906085 836579308 960782079 695871899 716088391 327464933 865407190 609438540 999907988 630003041 715268151 112901705 426855144 280463403 923030485 81644269 370550088 670659985 978249845 170400584 210127251 579281538 794341749 851934426 905136672 252298924 269064835 434218893 489014896 300809930 428788590 987579547 992581719 821313938 981118651 792843722 875907748 869955119 899780815 752866102 857259190 126059290 826017936 900092294 909128398 188261000 284177782 288890274 391068526 84889220 855645692 35924002 293599158 915326538 992776792 152035325 301453990 772885530 911276118 117984695 853753586 763887462 884092789 774418445 921052795 572686598 620538987 873049175 963242714 661595520 789788175 486573185 597303014 778319164 902244983 934468939 943962100 25795690 378808662 282538582 924644354 431199558 991465501 167209888 779100759 902635700 933196823 807844190 928270699 635382148 791703349 122509370 987654301 75188610 257001839 760393471 944155753 834780257 843293882 448854593 563073923 766775571 862487000 215576776 587997550 693553796 925051930 372144622 903418321 104373083 332443671 737631607 925277643 748615846 992415653 953245177 954061272 309044688 683367943 824835284 919539656 387722003 912351675 981333801 985236410 807664708 837617876 444408654 863830120 375141811 550917467 168508400 928519992 688852971 790371737 264148033 802046001 58624765 123130927 927861833 959527913 777895777 962003373 238263849 286070618 751907570 883060287 284789091 651892973 783812160 813463244 510493682 722268892 659840332 940556519 827609284 832669265 737130247 817477283 721931624 800362249 357093134 371426581 842833007 878582978 327038626 889483621 373590848 861657614 379513412 487989770 566371296 817075013 184484824 474163922 30687711 67311736 887597238 902308655 361634089 503995783 790765118 827103328 739496878 998516953 838293273 889098838 980036436 989755176 107992924 156243036 547379544 880950572 949748107 972305370 91697641 775380212 473068259 924541555 394152942 448459626 599645397 823006298 136607661 876915111 671063466 733464163 394042896 604696088 736787078 769643033 514641908 893748937 345539312 387142033 959676758 992691785 276739579 734582595 215829852 645374729 468172102 763813509 639212666 977585307 52185508 243321969 709077371 722250791 34255619 758649581 714499267 998276235 511522051 525466165 70046740 420676069 621364527 897686608 174919710 601348943 999108603 999789165 794184055 994491021 690567228 812779633 84008183 187760140 565694563 709521173 150617688 163626134 370222480 554685271 576539594 868252704 753282512 919780424 627210474 811736785 544534940 997842733 515594476 561264239 96137483 897563427 817230289 926857001 268302787 496732155 344730603 538825154 423364556 589186819 461410770 610387857 493101248 973639267 82387107 853555454 658917991 744062714 213017598 432144340 354803185 711220785 411008766 504386477 857810327 979406384 875069526 999425229 664217034 948168343 264183399 413537729 228651263 567276309 711555375 745869731 942016444 958336634 923339111 936482517 626808327 844072275 803137677 991893459 698628492 725559401 176826320 281160353 927844012 941446573 174816253 486029590 514869980 942660090 657203344 991139923 24669837 688346536 482586111 845147994 209298654 919753589 974014738 981923350 520099380 825530532 628870509 977599669 655860564 667310918 868288333 979691013 267654833 388576777 992221999 999194305 871644362 919410824 471707852 665266183 981790017 994648865 404695174 578728062 480208172 818965648 229218669 691708635 244989140 343592000 512176093 547860998 542210783 635133923 425723562 444907657 854601002 911677213 132739358 936190733 126378428 147354317 482822361 806225792 550114904 815672593 323931901 782650296 894720341 895051013 931027485 948366268 11456835 929283749 953068598 984093597 72063929 593894286 573611364 747964795 401904251 912465992 729010516 776837461 58540822 467906583 143723338 767601095 323618051 370846050 113597810 930865391 946127827 956654106 441416479 582813091 765371680 957974894 406692958 984043518 315560279 999784759 494241812 858943652 339024780 390384165 67926298 988973712 245439925 251943623 65443838 401587041 653219309 677776657 567338758 759680312 365658192 958975378 790751861 973495723 889027559 896696340 703821765 988985150 311293351 462654437 601582679 783132070 948831485 993456929 815993236 978595839 353795846 948945713 916194332 980357257 711424048 900535513 245783749 949324822 454109738 557883213 303566381 921591339 315352126 465198972 339780540 689982683 135147323 847657950 976957703 999696643 493604080 786967603 534582972 707973226 957608527 996423171 938920232 965802075 499546556 961320121 448611499 989482799 835436421 966886884 229973550 393267479 620224661 929092616 473440300 979789788 267459706 598278220 325786457 690498590 787202704 996660970 78485763 670518604 768567503 937396967 29239660 205707658 47735524 519939945 608729736 981918455 608055472 707635015 505190660 521035424 425955479 877011865 156670729 247148261 298693693 632238847 298455924 479787292 820908165 874795054 903752006 951714382 879084052 885069579 646580330 679518386 822874343 951150646 591959471 689505031 618119224 919492011 633671489 885236789 125048248 174501788 293789265 758443156 18377345 376105379 740886526 996185832 172733875 774456268 368934036 620554102 594583904 974427833 878349621 922053878 143759186 999277033 874544783 919782424 751144609 763320926 533304660 672148758 865749786 907090796 50267460 708236840 72159725 112150298 403505888 818124348 761695928 882144736 25432415 598801809 709150188 850782215 143748670 669176412 700351147 852511177 834567210 904264946 854138585 870216010 552867654 880638523 398208567 939359313 155063731 448078058 273114032 985058570 789681137 807084381 347377797 886328301 207837814 218579389 733638234 810365214 622967930 760029017 634591964 740493337 864438995 928339798 573252653 889697043 421872439 597993368 93616678 233725278 866714138 984266020 584293890 987235742 731909882 927840710 951005653 979230890 15490972 498941832 776998556 959400876 505294296 727371271 482381745 976832816 631710674 935905424 709931626 990350514 402981036 405603283 176952861 550506757 836393951 987476132 50060883 781562447 491451261 855183464 137244567 267027475 305319562 980151307 662509487 788496551 524815846 874312372 504886667 872928587 346782793 702109276 139686623 929118324 382204118 518982594 60242047 605014588 275422488 814543291 620687815 698804512 316487862 811512163 423808877 438201979 472507231 535910290 64615588 873929383 421122180 545439201 903828683 972007973 350524618 422053712 133953759 412182596 801192661 814574501 201706668 837283046 374608926 989756394 425520450 544698188 679952638 993119062 866003522 873560661 610344826 803526443 454835663 904762426 738692843 916106599 142811521 207250721 328071072 625378262 140147020 663689627 327726543 464830805 463194424 840318528 32096615 488167860 688510051 932020627 448402837 824880251 251844480 908110069 413499922 600494482 332823338 385113783 123578791 600987371 955601982 994230063 395113875 823673386 970304432 979266984 16575679 53157528 761527228 828346451 791440236 981189717 878535032 978399707 791670578 925894516 501775581 640276688 421959972 516615516 510325744 822656190 956235326 968243357 103164846 158965377 879969375 983338281 72227478 530420548 104530844 930772711 508834498 781740062 140088367 855230416 695233052 824890424 459062094 847397789 182009740 336715761 426702006 669854390 692052980 888377543 963045524 998719544 775701474 968163843 643900777 730660132 340119098 935511447 482777884 863712504 288715412 507422031 409005121 825071327 815014539 948018137 149190851 316970804 577889793 919747299 373426199 725622635 732137164 746224759 720355303 823109938 807106091 979091051 962926824 989488468 165994730 469295921 99446156 673315582 658741235 683946173 116115555 311289194 577601510 851980185 189476784 658577529 845742378 935882557 302989984 422480178 315498175 938515846 44465638 331360591 354653535 455869900 846358143 916635723 122418629 131791243 884422299 960722788 981293601 992915011 448124844 959979679 103838114 264234628 83810522 260788011 457334364 710893482 594567638 746649417 904422877 988961871 764741645 859884372 725162249 836632806 364429772 370905099 633044150 937012327 665082050 991082537 374184968 627397963 142125062 682938117 773815526 885760485 390826039 872167134 293197310 439971422 697196166 990149143 62016135 274350688 778987373 902198009 900456927 928384312 881724836 984171604 535844530 625186796 809374775 821656985 129935269 931425097 283491001 936274203 960505687 980783452 52417530 741461004 741252104 768103110 231329805 326276717 945139702 968741990 989396503 991023938 832841077 967690896 695348950 732444935 441854507 774070721 560798540 948846146 711110623 727240312 312338181 502257548 478884881 929439674 442217283 998492461 551871769 929741614 163536849 730394025 14776834 478056113 963399486 998317198 690082807 751162777 568195551 806890533 801300901 910279870 352115650 623571851 736663572 781537028 754665815 915326043 212591803 821383952 705395255 888848527 621162717 862020113 992754629 996489422 154156107 724441286 649320088 869872070 197615362 274426990 917217788 977905438 321012890 963795453 852369209 984178632 483014355 657171106 901000010 990875981 534787227 894649222 837048624 980364501 61560313 798132837 793659186 917540732 82076649 379070281 787632744 997144196 731098874 961514003 882735955 892287345 557217679 837913805 856767337 893858645 225754392 615574462 654679628 772626072 956979064 987129870 530317647 802169649 109215020 512703366 426882453 947513166 886440451 901051633 542710638 792501646 866927547 981940978 394001890 993167720 79600111 608055055 861575421 889739755 4016360 651413107 208129319 333020819 727595766 942529068 961510815 987537701 679405569 741888610 411721290 905190117 507321741 530383063 795675343 980634250 1796018 150859082 158435833 331949174 284064552 575909095 97826063 850986537 867982531 899989357 508300161 978556837 268584548 782240158 385474570 886360879 43295316 147072792 843876337 976191909 440487743 779265404 685440207 763212807 330615398 702522151 315695430 599830131 796488508 816975294 884603834 910579340 238950694 657777478 218041515 255281787 756874397 947755760 629588226 917819218 177101423 942482136 18692252 876052371 363748086 707755690 815111635 959259009 363680725 689651530 371617354 504976162 113095514 344033922 161509538 910997310 318687471 507135637 825507086 942565349 831601612 841261642 99743963 253709152 227925560 597427516 290836685 882265877 288373540 670731834 381845680 780951263 453549571 548703815 286385850 433692600 864653120 936476750 739053036 921587791 805117333 939693943 684135547 773838541 595112895 667195309 716022232 865366428 478845798 711127773 990869714 994353913 28509312 171415878 275954709 790649512 259438565 742409740 303751346 974387838 765876307 896099618 284270280 417438060 281261880 922702666 830288177 890119021 467874593 502624013 123497873 786000226 859641559 978261713 189010802 578613461 525903272 998429762 369299463 687679107 86928259 932502583 79905054 126259152 695474714 970328068 679120188 763409823 161408073 219109323 558113300 855536353 553750719 953412231 552499285 712358773 99073397 758380891 469780250 791088688 900071122 906013150 395757096 783978980 657913339 772346681 934509404 948094274 798300742 993296582 849478829 906875599 662483777 961292760 614552267 973199361 506693819 651362239 11785041 480909454 247414091 667786369 189580312 670962748 546971431 832231092 979283625 992871035 271093726 650158251 609129190 783965476 328824681 496468532 117896643 845545622 239700932 440573441 2992023 203209205 264908975 663855194 501888194 673493184 559073105 979826785 110295226 233798324 846977058 952193439 258741098 938941040 866566430 969860376 305365323 937985637 662511901 770222282 535214187 822522752 595152580 652230968 893396410 929094780 741521564 969010184 468830394 969356360 386583149 657828474 944827619 952879559 998613518 999815370 59047041 186262608 302983938 996134130 964059774 969233190 211832755 827572957 478479407 990896088 342099104 885171187 812878366 828758135 493402643 630778786 391480215 858957950 867367964 976519322 774198130 797752508 440535602 636804518 234116517 287251740 116692205 925614852 841578418 843129766 379163615 882474241 559511729 788848709 59178528 376252443 405852487 947925988 934473713 986219792 482947216 852187418 90278544 176213974 368040767 708533641 37334766 928276051 63552399 728928899 918467091 983771828 919256708 938567365 397030963 571642058 981632654 992641885 300591122 971185607 948851866 951993324 918620009 982914106 383659718 966468377 228627439 611274671 738070849 837282155 620790440 921149337 558772515 659594884 259215720 612932029 198484119 252050843 747667797 871950999 193963230 485345490 970221197 973812019 978392344 989683007 477989366 620022028 679835979 931646828 490765417 561704257 498824307 932716591 808191855 873071875 716408767 768790955 888023080 953048929 111869771 864508927 812005590 878439414 995577360 997483303 368509484 772967528 346203283 673061337 384783085 534867709 479106272 657193772 528271474 728911682 459330919 834419575 394788298 782764094 441149974 549485202 409710536 770268189 52687687 632855829 669264610 755970260 808225976 810705488 160054339 644614280 756052074 808332981 474738258 934753445 876775689 979416217 989485366 989913510 192407583 695057874 326045821 744198167 895785311 972320612 564859044 706302224 93767827 959591996 708625146 770102294 245317377 293836684 673102804 887513935 228345020 485866286 474783125 678353214 679612874 685566697 379958843 525467758 938933308 977783216 8981425 566604485 729255406 805000380 939540327 978543865 712716601 925576948 176513955 619517403 933710519 992676016 335248295 863598957 751407535 942266022 290123405 641433529 306394566 887894288 498253047 560437612 789819568 950468878 906897456 937282760 760373231 900782948 428263487 810804618 566115126 902416247 694218825 761397829 901267051 911181147 661193025 885328237 103062890 671598415 754021056 803058276 359107338 974133054 149845425 851769126 930245189 934582791 767575352 783369532 326691578 626981029 855024413 942480720 963938923 974372842 544991468 751711371 423300397 950434361 918692303 940255089 886107727 961105771 319009667 332616938 185390414 859079754 935676815 963905531 375579123 496633942 598382658 765313187 740907007 856774464 621934010 814304550 360881769 883497926 471982884 913248221 162639516 373385087 550377423 826782958 998482321 998549613 669158815 876100834 544728329 762533947 614508417 740654236 713377844 831537201 242223614 602800793 551617591 807322079 612576806 765230577 244796116 742374535 115571079 487811164 171999894 444733258 127292245 953911313 42477291 377816897 710914759 999458356 156133648 451058190 793808560 892535177 649671398 877544606 880883108 886371992 648960061 703699605 857700562 882325520 411395423 501457255 435820107 493283850 995290790 995565331 830212037 838117554 666301522 765149443 77026317 496939903 564086023 754538868 226009255 519519875 495023492 944176543 401472398 894231184 837096901 958866182 351775973 586640238 941823193 951020779 879085432 894722086 670494670 901522779 96134100 783941065 391711595 622935321 888055711 907683037 731822978 742042001 40827495 573646708 376725931 818432027 164036659 599208114 607505971 722865924 176743962 385288482 8917338 191376082 24460223 418093595 472636589 672867457 293410576 564252673 11007829 770480950 402313022 709996730 866841000 905226498 138003016 595787971 59071749 265713504 493588534 623505592 769582836 800395665 190095323 610487194 112928571 868094156 318694138 931778929 372853509 663474667 953253549 969774188 823848716 867590531 259848149 901962920 282107301 953084677 367618609 692847780 939129507 946838349 204599725 231896829 520238933 780787325 179709421 939136947 203497361 430191594 798380273 970592903 582334141 868296018 559423129 722690824 420555795 786373021 866701552 898212992 783510334 991419869 637129373 744421438 172361874 308169684 281361285 937318373 478403529 914483694 439907700 612572694 191250215 361609990 381855305 984897015 352870160 853027240 614400686 875230076 779125258 920613381 53775175 971986523 764936528 795042062 518816462 547831588 630984543 800477013 86433880 155705295 429578188 823206077 83493901 747853278 15511250 425446148 713404674 854565500 455255113 680892182 864134913 983548368 947392659 969594250 433039988 459211523 457011558 984402676 607847486 763535969 988717868 998647555 403507730 460647873 802255175 977128552 22152692 549085936 146919657 465413586 228969595 746047242 465436038 865424068 727301984 804202438 615235985 898752396 769784978 787184267 632029178 661016848 754689617 936644991 464950220 550117131 648121046 946014314 934670604 972240683 690960352 963581572 457043814 513453400 581203277 651600362 509236467 871565168 694052430 740366315 716154929 764272180 238163201 938614921 72953546 445729543 225348166 486555281 430110519 460926760 13457733 374481913 78843657 224441208 832945071 983812845 531642137 598854466 896040865 957703594 182418858 364509287 92572786 754151147 227730397 855049662 449971948 929928491 933180342 939399973 348891654 959298497 458937071 710276139 154225284 757984674 691223784 920433882 974979197 982527499 844344568 860200379 590533400 877767546 62374877 216553057 235872902 605490342 822496367 891109192 138451442 355697938 451107947 570923608 725177796 929929146 961055464 990825688 555877825 709042688 767401455 800900517 76148328 855823556 868452092 945275337 308614005 792612248 978099572 991245547 631789766 971811093 409952383 981126663 598512268 788495378 474966889 596364099 541656752 639538117 898240361 903852337 783438081 951703545 397515382 704926712 589478524 968599481 439071537 598769933 44436111 226448636 992553208 996462446 22000699 423389623 876739062 984932935 74746351 867063425 553807072 967776545 351021473 748393178 35407165 592010995 556419159 789455068 986777471 997503780 62861774 128051054 243507201 393874369 427780687 630888972 154698964 770981458 426277580 594830846 455472356 508803944 344195650 442874684 877120160 981638292 482397682 523986166 335897752 961161838 87952829 697371551 841146895 912430451 314322575 531057223 195551911 238794825 65588976 634164668 304334063 478546697 22242521 928531072 258743388 569779821 437518146 598610618 249360076 315088235 22190279 174479705 781256873 820984706 286954077 765755996 180434111 539432318 13571873 822938564 868626260 987425413 408969290 747799307 685424943 701570987 488353207 876780090 688481862 952315065 145744853 516199400 74773227 366326735 274825229 630914037 277063941 835262266 338508491 720503792 716173819 839310770 81694263 556297179 149129656 400917765 5194497 105343387 41717570 739611018 359962528 896821339 478425671 503069285 825762529 860829068 848931859 994147698 794644002 939352387 94481576 670018887 456768483 820128140 991359873 998773732 361947827 554192914 216598928 505788275 410711017 869109101 292829995 405094914 13292347 135822892 886275595 944831512 879364593 961204999 782698538 900037613 806262895 851642495 800762213 876205565 822066954 986666293 120824878 850971141 682850540 732988609 78443610 788510340 686736313 778491896 114593713 626485894 682920245 936914189 591992162 933646869 642779037 747630993 732890540 911356689 845212365 938669943 893201868 944527276 411023525 974497293 756116172 847126608 314234025 582734051 928712297 930601259 184268840 393180562 457755537 978965040 728501922 912389655 845691475 906691136 619435612 786853249 95692536 892222779 101716293 751982518 630102263 941061751 459904738 794018083 114372783 568254537 940553313 967817608 979952396 982055279 584287545 723208774 654381709 706098150 945182045 971268113 916339385 932086588 163770726 323213518 888087673 969018536 856274150 900347372 733923478 920077815 787373060 859297084 174588793 557299122 75477961 833117595 98440046 240302844 263575503 358517913 101942009 478172978 486249207 910468486 412619627 845713143 890243067 943872228 371716225 449050272 610699743 766803957 33395198 43824492 57195570 619916975 525993750 748422386 38538669 753529364 24471513 223846103 645228497 670809655 75512703 705186940 660589402 978696934 241082245 567252821 68680237 154584047 837932077 907227947 711554953 982367277 628462416 837678006 764821993 909543051 840163177 877775896 827937214 842267225 219791031 679578632 223125257 350188893 239296812 313175615 175613826 940772483 387073474 504097559 262236335 464380871 835460624 917038446 848540423 936855890 488082908 754398474 36451460 213852624 336612800 850074203 205479038 815073402 154141440 818110352 908437525 998463621 272411098 870383753 357673153 372798666 136537158 226337822 273137378 337835212 928296124 971382963 95311499 649167613 362202042 582757894 222430246 424473198 928697860 931510446 473551610 672869203 336510772 551213896 686517615 792743909 753230064 978345791 216488297 816155364 456322569 628346513 511067240 730245356 635189428 667659431 207275497 566287085 962649995 968307027 416299055 950832033 485268118 525539198 832137300 928541913 485359591 743117822 133413929 854501999 362443413 439930246 103100314 883690812 426049116 981112212 471887059 760284819 358401320 400043040 744238338 982785313 206145620 995799360 605839130 999200649 910815784 948997324 991537622 992716929 115064803 853428196 219417110 592488499 594458346 635254696 69223746 991809568 939413337 999546582 122684359 294387629 39055144 857326681 929340047 991996745 197301681 591582791 477609635 843323705 290823763 695852837 220346527 521195108 326308930 710953957 720990407 920760689 405946588 433901900 141157810 343034984 666257666 700694491 685546513 938362415 689499824 842749464 222391561 878790487 306288323 937738814 78917869 572706377 891437409 941712149 346578553 487393660 562608164 826574935 127613722 735054098 596096126 915734547 617694025 701543998 941589754 951971832 879166361 894288826 533751997 759006929 543134200 549913263 348515707 949625998 689703704 910895343 869697446 894072221 634618824 836811974 838790560 856669409 899681926 972203152 794608688 995362904 641488890 821023121 497217153 563929279 939931291 961385505 251587851 313607796 502588634 506814062 613800236 705056034 50218222 549704595 463921598 585250588 441356614 878769587 658829014 985615301 525410851 896304234 548616622 967033431 63466805 189275787 395719562 569584921 748966804 942877534 124794597 417605711 43280727 103519104 67779527 485548622 227192266 815150495 735356096 787584302 434011351 516513447 422861032 674682108 108647512 411319021 986132936 998949578 319875559 748085469 720492240 795023032 954013504 983457862 422975097 877025228 758731377 880316331 724544553 800493201 26643688 307933108 707997591 963185868 790344815 899190711 989099198 998800436 634289988 867027982 429260294 537624868 684115643 826812261 321519548 792777119 822010554 958253096 253885026 653427190 672442156 941161603 183931910 741460865 889010209 958180695 398514948 670648921 373475161 792872123 954702654 998495517 44656018 309278609 531186093 806180523 814858830 854288647 950410977 962779457 46895855 330170200 632006651 703431132 119679429 530945175 924204750 947764797 588248897 857612424 217927085 250803320 764236242 766697939 867262191 998191754 250765818 265246198 825668430 939677508 848921860 879245117 3802993 870006109 903018451 961557522 599685099 642785682 590031991 714847772 628952922 766294119 671943765 825782634 426018313 655693264 216612914 333657595 961088597 987100442 528642632 644245432 104098986 848429235 802638909 897645693 610513372 720751533 995086158 998434432 873614262 988407580 311070704 612940994 778965509 870561177 203756365 461693305 420808801 561359323 366544726 909146519 201497245 574554605 96146871 603709909 79435819 757795729 228767036 755907868 714447131 847993604 785994488 828131475 311133219 697559792 774808482 999026866 127645116 597184160 747429900 848232189 911667675 943076149 969338269 985469822 767940274 791364539 719066469 955553481 898306813 949329340 150095393 681878515 223570653 501938996 530278002 618141514 458412761 622648248 440586838 970593311 608040725 679126837 907901756 975202737 163998189 725530974 772971344 856589023 624472823 650398705 791472735 860027289 700539047 977220014 968664794 984064462 931450020 978177207 884976450 917217160 477781173 750461904 223401583 342205537 119349977 517320928 847992026 919188343 276288333 627239028 566296703 721503073 520700603 713615137 168572795 520972126 549228427 960512666 868386863 909831279 759653748 781646142 721597950 736281319 102451269 858160282 286819256 989435321 514871117 867843065 405704046 641587078 660022203 698421663 94202209 558447028 931256095 994063647 75097278 173853734 414318725 843699450 141470710 565158811 242621919 951623264 773357131 880844832 556024254 813996701 852395427 935938784 513259891 899443868 642559411 755226882 397574399 974607501 297320285 743712985 400192899 742927391 96932652 962111095 651378401 970281116 476472626 585198634 572627021 965339524 451997278 910663631 778211719 987529388 167970120 251420043 430639158 503729730 5377715 540670930 346717393 967004598 5115186 867730816 123817605 737259336 96012872 529289218 181245866 639239102 349042671 423379799 587303774 822476039 25554835 760827051 722598724 950271699 58794616 235537598 927134098 949856661 577908318 657202820 347802450 997387122 573345896 849163364 187468914 267717506 394116194 708436348 89095351 531760016 827583651 832873064 699886886 907377201 655332817 721319051 677963829 810942754 74241675 488596998 627201992 882727461 336415666 556022598 794529261 825849382 897766930 922981623 798445314 932846568 63810898 946715172 194854799 613385011 368582357 553424104 960184634 987144101 724998055 911291647 633934375 978507827 29667249 874458788 41767802 524357163 548272203 619310001 587101838 807613177 754959400 848199424 138685401 249980382 471985421 748528896 33610660 540735491 302069229 908866193 956719403 972855265 940766679 967726047 293725380 962390891 908923547 973081712 228550416 547674504 173577658 948031375 901998354 943313025 710802010 785865316 661786229 697745107 463710966 698281223 14691270 689808002 980638039 983509024 966680203 991862258 300160857 443358570 908605869 984120895 920596176 941207781 740512549 900250546 689344329 720417814 936528776 980055723 866605239 964814391 555403986 697803091 710735224 941221939 83578833 137579385 559928677 852130065 326969146 492746824 630147539 820558770 773666933 800141726 618191623 707595246 437173971 638416806 601750408 990468333 142004295 252930483 89844327 341313685 432659088 575210516 879130917 983245324 319886809 762830480 71427831 799455437 901141765 936484436 726112326 770396223 819794951 966364426 579649270 783319757 485197449 966331826 842139592 844414346 34749404 49874517 815241340 896501144 429356431 972173249 738884940 763677311 623627529 636288103 909777341 923727414 929215149 970423955 315517891 697203510 888335959 951096680 905006375 924045434 629141645 901704201 994856622 996183099 663050860 872111267 104743997 472557133 374810649 979185177 823989700 993080529 887600884 905628142 716797451 827899789 416394013 568707201 770998933 902196772 676453944 894210078 606657574 860377220 728825557 966405459 786952595 839638309 49101419 230094692 19508986 965142898 715113832 842259992 310966458 325033532 69662272 710255258 661309117 783112834 177565817 377424640 879790735 999710522 355929321 756058580 36286030 370741022 963443939 989589935 89395235 798793921 724577041 770556906 591093900 639233778 653027739 830334788 7981067 338094037 904293576 996230827 516375527 650914161 164457868 859932664 670451717 939171977 166708789 466317660 804227836 964619591 721611053 914614640 518295918 644362192 739925887 901141974 476575348 809913804 470796691 819104712 502187497 645621609 839969864 974578851 981444919 996874442 716725665 996745312 335393269 367194102 642844902 887995691 384924106 826230910 752947989 984785854 964159039 972947082 937360114 988344853 199270830 408350902 42590132 81186141 855076963 986468759 863834937 888150154 260988342 459770151 180025458 429708975 809671670 880759218 908828115 997444279 908697384 962227979 68357129 517677300 201686304 290827705 662838535 924659743 942945219 963483773 340472576 510720482 911798528 952126929 678619237 923142142 20492912 839458972 240563442 812226630 994694562 998910044 790488807 988722799 552948694 916220847 299166023 731133906 321876474 714092511 641840438 739915840 759958948 774302949 198718882 464920340 300405360 510313643 613057068 724748613 54611814 620863227 450808004 761096959 275786124 629002399 30782114 894671447 698463010 829146045 86884924 183943290 622140083 689703540 84528390 241779970 976879847 987845653 880215774 914734619 31502552 117270328 731560599 888265517 709469604 801831927 455840850 649678550 208234246 427679967 965069027 979910886 432961867 535086169 265101684 332687372 394389245 611684091 571233703 988899112 785782561 998915161 388818522 714852300 779063077 994076626 303540769 332896742 148365519 828766694 585999789 637237299 944110921 985768654 796021659 983682409 190246754 769537106 900138514 918991676 986054007 990503951 433670292 978015083 465972600 704199880 158236391 946733935 52540483 441588984 202250051 702216033 693316397 849223401 356879892 591315038 910455768 952631981 76559945 178809387 927969813 934745383 133664045 379607795 412085434 805047678 426087590 511532912 885677306 971271632 241797610 369457713 820281987 872306551 180993580 412686736 897537318 939067397 259332025 872475295 396555284 510202109 205355703 985545754 642832721 653704079 712261456 860218768 491091162 512132087 830399105 838588769 3037236 753607011 583650760 620985292 846324062 949737502 479612090 949898314 406751639 575985941 963344626 974063532 879236639 949414432 149580805 541768003 634724317 824534034 531388844 644936440 117321032 618393349 212550226 303862970 121402773 643197859 857363484 960751784 417068236 843458195 253084239 429487281 903612046 994132909 24478976 942829600 596063007 839071824 268711228 321957686 482225590 723032346 12108679 586852435 678023483 865317757 307708355 442954087 836104675 930548047 501945836 580257604 383224972 894869832 904298966 941074161 443238005 767209139 160568214 719257568 9013560 663074267 167605340 656773104 180938956 822025111 766798331 950972158 171572282 225372604 452747794 873151215 595920344 818652508 742875559 883398837 49556184 125327287 567335738 573690420 794656478 967618621 72698437 380542340 946129934 953994199 463431422 625964667 532369453 799607072 303814814 804003125 88529390 788172489 6775364 427883813 309987417 808139996 996683654 999991180 294719086 497304815 540627651 817831969 106518609 274095837 870829557 967009274 175977198 841431121 380262000 426317745 806011554 930276976 998050607 998965291 431924658 518290528 748515441 933042960 295010521 926333834 84051464 193577229 322055128 964640266 406185313 865550290 727514354 865739039 48808239 578383478 103865088 836853672 155148383 791939652 759593139 933498817 833482963 857726994 317496084 930045141 368650389 983441377 875697139 973070903 19602557 924563519 603892218 760605310 164369719 374641447 354766369 482352507 671028619 768829304 818205894 869576528 476420970 823018007 263248441 954007660 126039636 985008612 206103398 280894069 991450812 999656234 597159674 794744666 721958263 882282617 743752972 810274939 257622418 522039677 3025382 928294555 89646279 523034639 733321280 764455897 599381068 672826213 435446397 968980862 37805345 970155082 710077514 971185427 112817511 363071627 350470782 415805223 9495780 385843238 77452024 738717440 70165397 638041442 760907389 843148238 803729445 900101154 515222562 682279984 537773975 959279098 245644769 672424285 789572992 911993672 88017271 828618325 531761769 579871860 809553884 883482130 348283034 589257280 62675133 865007418 520610793 842955121 686769007 871825597 826993173 878349969 773930856 925926212 426376197 830517455 852184913 927583085 701998459 996198530 86668030 865599813 734252012 831959346 568664253 727297136 753514151 980673095 522146475 902985745 114140735 210026310 916038191 923797147 647597436 689065072 426736267 525478338 521453647 826830926 158716947 526686704 538532867 757829530 650137845 753533293 368857623 622238837 36719767 343712773 735744682 916890176 957120790 990294355 907111289 944355483 658557587 924856238 219982879 762682029 491353059 724108968 335574935 580544028 706062683 811987218 52896122 55101642 620390104 932174413 504472780 575149701 316884438 879198345 475457697 989721790 926316702 929677785 992024020 997304088 460384801 919166848 894414585 912502642 916519313 925406848 426698117 622706507 648446035 868589101 128593206 883669861 247310714 507952475 79115940 479026376 806760096 894118113 875224906 965728075 898343817 999535939 84096375 754037450 547992293 812480681 871702850 877677084 209549659 956148937 542723096 741634935 499198001 523946649 810893892 946169650 166001564 757290986 127302073 860957803 112712884 713456039 671772379 879485121 34054576 170315278 972967752 989879933 520909213 766544715 866394672 938712246 988331309 996062390 41289223 822270774 28771087 368154777 30409886 143118064 280070103 776570720 987008910 997665318 995702991 999703974 991798884 996205907 106602167 211128847 176650995 570230674 669197412 679681316 549249532 905091448 501878939 752296296 568182030 766706417 953736454 999349291 320828017 769581209 698906090 969172764 835332479 869264798 168157015 625326405 894754435 971134735 189187260 335041414 148925391 666789613 739465645 991635435 307407574 465240820 715798827 753497129 937555832 952771810 667036790 893444892 779659666 870212639 177063343 984851479 764058869 984970725 854087114 957176281 983494691 991412502 347530070 939944629 229097585 927612427 12964820 641262642 834117089 942979523 329860988 461409118 830115533 905147645 258003302 358513267 838632601 984300180 612067684 775179638 304108119 376798147 46418618 398232874 721628914 878285557 696268171 972425454 753404250 808683791 19439354 806390030 492906619 961433533 774597451 889371743 754032639 942035751 825023071 908089277 210663474 327149386 129934629 723637934 80197159 879100991 608294138 872508497 234291203 626153811 483955123 717211662 652271488 863595467 109191452 833362942 901396648 916251749 801627151 920135470 9690293 968120816 572999376 668893800 347080405 661390245 977866170 999810276 933186979 988250709 610796673 860110166 958512067 972195913 579321900 616830122 140284699 774133759 800408739 924329741 98707441 538392414 565554279 840323072 866171226 912125947 569667137 609011727 411114310 473403758 225094556 599720430 17969369 448655453 118499480 983031694 772230985 864712713 888285270 963816649 264614580 822726226 838688564 925908259 633572815 828510741 455002224 818548833 685042469 885175186 597441539 697878059 570342783 968678884 142013841 528642805 586941386 611394863 687486123 882458420 364287465 389648863 112763614 919197273 73567126 118058580 174737464 374301508 375224602 731012354 118808346 197791433 859011084 931369579 585082869 940365435 521667121 879240042 676576625 888983631 570983309 888682322 112692179 736797815 738795061 872364825 104361713 988644369 433978778 673953529 654155205 781503846 513013953 623330517 587319662 891978746 491881839 845077936 536091453 745915962 88347558 509923182 636496597 648767272 70180121 631453443 589314981 624547845 980969744 982836001 966670819 999081836 830571181 855009101 247782826 896413369 52644840 834571992 513799406 525998874 613970906 803959540 86447251 322448434 701766158 927434273 92543456 669770925 762232325 928818686 921694770 930318349 989581322 993309172 86534947 855899817 904794199 927373686 322088506 509858898 341907880 677194913 917364870 936037246 320424445 902407862 804299071 959476642 46479018 894165171 117012963 646791640 572528710 603190669 332391062 858832998 291031313 524721866 607550492 702409243 619976182 945157943 604730025 640485613 737908933 801232064 47651447 479810880 160555529 867852007 43576344 143483017 751276245 913415787 944570546 984234555 168732936 632855155 982649048 996527914 882568363 923365289 546955477 857829577 743205889 970970136 605371964 831686408 883942364 960099797 255129711 949390704 288814231 643688912 776392128 918368631 819741479 836132361 484632873 879359303 714825448 794518111 911838473 950696639 830328016 898555615 84815872 483433685 932715686 940038320 87445595 177840765 184988108 576333145 309507891 476078352 152045706 330550514 351564821 899122139 354700011 401908312 427908652 611115413 90734672 541387164 576289767 817239453 235247773 362302446 330863343 421936906 407076893 932234490 437059614 644345587 283873426 926615451 145623686 199401819 143762018 552329581 564024787 930417607 260320068 948291592 69797495 147712117 46085878 171186632 816923704 966187489 615246955 973159829 801245420 948006193 490148188 723685025 488256793 858076608 651485943 878029530 859754522 895762528 117073541 888269972 546004986 949972764 456052068 781971389 474256052 727626808 263944623 844084616 824066385 953531230 449206632 856719783 676359443 774885333 69011865 738537698 983343138 992412600 244217415 563645139 111251722 170799882 553498861 730579515 971089345 973940457 804160673 905036016 871582386 888203972 194743873 528377408 250877074 677333104 279691950 757417211 585381606 707983752 308521813 900900925 590165206 887858916 989908044 993007116 523366133 666808233 917881887 978835135 256155654 869475000 945924237 957056799 761068067 971230487 100502687 168314209 713445861 765689608 767156893 788440730 73095057 372404212 283223526 587646954 715712564 921651386 417500333 551040417 684571724 905034896 440873593 668330622 958779733 999342231 169555818 482052423 676914253 811530024 856196807 927585308 341457769 946910686 812713404 851162599 84200352 251217053 342381321 936498649 91253905 476891760 272085532 533158567 180028768 753780362 974509319 984920736 656904990 672263186 649525393 824406939 11498615 631126452 227508570 873239115 961545170 970626765 71974133 554183336 115568159 867859137 973688120 975951098 422380360 660226129 953672420 983939207 273805598 549087768 396874212 557804149 903298110 986861517 329806374 390759008 599122621 837850185 126289320 812693781 422268303 824844082 542541267 746595745 362493243 894431644 458953403 469702880 645858951 826006600 127668198 298888983 234358313 308699045 388469725 474460159 877557975 964561928 888919606 921019424 298359023 330661199 268715121 468068322 290679133 629542756 306075154 378559451 200992170 992582684 611218003 810732071 179145531 748523924 339101629 650486545 651360257 721327861 869627543 941118796 47576907 806426975 480031192 785120665 69119880 356867792 276091621 307026463 608876076 676046534 602795135 694959961 569656493 822260242 712945582 803968805 191085688 476173534 151207536 903268554 208310567 570594186 380139842 950403978 135623149 912371512 265866108 773734610 987195695 991303123 215958865 313716322 651228331 876201536 31466908 389131280 661389391 934083361 395483335 572456528 936450674 978996370 541519141 695966110 425563939 464385165 893039812 926067485 406797778 799995865 52536408 223462485 572193495 828455064 633811483 823687258 981237227 984041787 132692870 826162879 358631803 499474695 892792782 900876485 70936810 601340712 741241752 936523839 323593619 938080753 643459674 774419796 875461261 989601426 374929787 899528779 171468206 599713770 674257810 875630341 868800227 958430040 967310752 998680265 674256502 850146711 296584897 779712592 997298398 999635084 674447245 935145385 487172040 931141445 149528805 291638264 693121396 933222454 588077289 603670355 623958408 853711144 693442559 990019635 559539834 619258042 398021616 845154105 410442133 658504463 608368167 981374851 99040058 346205956 155314757 848552120 444693629 762677472 941986902 961404195 741195747 930151397 926331475 991647259 649010723 882241926 156193379 801706664 49159369 166607711 632141331 864467179 151722152 875104171 687897332 961020540 702981581 739659141 327436418 503565878 107730878 610706225 950846180 995305229 407286105 821189525 535218004 644904012 288786656 801362691 864261494 941390805 972737951 995268845 629974156 891944112 147134439 240218366 267255732 720042964 526221359 623613296 517299100 982596346 30661760 768872278 137445621 689900817 754767020 819571210 215275011 513984081 474560650 768402648 186485790 757417314 220723699 857749734 419099519 969459401 179102144 883690845 539212436 666821281 178150986 831691657 360317455 575301543 315812182 668990172 786517062 855352483 815868467 959711716 901673025 935409756 282752001 356755193 252054077 556453621 707295305 937327068 120972815 231769931 866149321 901003307 821528023 869801704 508062686 721847660 124803729 393077592 823206961 986832838 12876157 492750495 22434044 256779838 433072668 713271086 400623206 855799578 210800421 784694433 928603255 992909556 144002955 966920141 18342398 796662037 174657036 834612659 341566416 981768351 339092118 780788464 692962469 969647147 379601721 501095734 875446727 912317791 717176593 866778556 114894929 810145078 859456822 873643825 392037008 632443469 457382905 582279212 981555056 983163316 594148831 817736110 557926139 899271382 79500193 250343830 615383822 760800264 646947031 684040539 879082795 952165575 301714813 361357443 403218375 758311505 171701144 988205697 623361278 980241359 752049627 774366978 708106844 847471204 106132109 346985341 888362806 972334424 943720239 953160510 272160847 941395956 603958770 824053684 372892646 431867131 997015105 998993655 182883238 994802162 897106227 996089144 558868113 894963741 53860929 833429420 787720933 887655518 960787573 969244709 105674904 920505104 375283813 531758711 292358699 911587598 442682258 628046095 482574251 571866033 880444382 911254090 600029498 984748400 56500077 160967694 264189461 441241725 579076010 813562369 9038931 362417163 647084359 855555993 101286496 115910290 548121011 869258096 417047266 829542868 588107636 670276642 761970206 832800609 853960216 862289395 984746832 991105841 291443545 821951471 6996571 685615680 558697736 941205605 225958943 911421710 959694588 970482462 830258445 991167293 542742959 962392352 785488268 972740009 145681187 433074320 633780994 837754872 981165617 988702699 740973518 932535563 302727189 829521782 120078691 920949685 929249869 955989094 884859152 893153460 46846790 400854984 627612680 664033014 780815639 818261147 830576985 858083606 557387801 799065441 734697727 835133513 500156569 738226845 839356206 920640572 184049227 500013319 774088207 829264006 279131875 541376400 152345021 635351599 338499777 460342789 424862991 855680293 392551840 664537371 800565378 833336775 727395103 939862729 678708923 689518538 32627249 67395626 244465150 846018203 39345453 460174097 99941053 849141542 480027871 757640843 569728290 825172245 149403780 817445117 852400177 977034357 910204238 925071210 411896548 852180499 5536253 325682201 200077677 473848057 576450515 661971297 438972582 676497364 117243774 318069957 509764495 630264871 906184376 923785770 5604292 300053488 713953164 812789122 572912121 947010757 511895919 716506928 15582696 247418947 338786815 820498072 463897903 493360342 310527137 357752628 817628709 923743412 695326825 829450531 32214908 685431838 360574874 491054900 842551695 900722409 465763707 874287371 12629911 683446357 8590271 430152576 707218601 755868245 449147373 454423052 978021097 997372232 731875469 889574602 48182005 360529999 584061692 857762939 230596221 395163525 307045923 537266963 499911001 649594459 122932546 216133974 155957159 488928044 13343108 443431338 610152487 825391015 816383776 990802166 312798812 965232784 694852254 942994978 886203581 968754396 897184970 965983534 820392167 943061546 759826521 916748189 527937007 631370380 335997553 378402904 254671008 819210562 313677250 631137795 504333783 645899864 109676066 769040757 181062520 816893924 401869259 783047010 637211188 873451387 891085707 914837959 141671514 490183661 194046589 305386105 348824495 806046989 545582885 805045141 187163765 396847366 974910915 993870728 120589185 417050404 545680969 910696955 694957410 827779629 585686895 889035939 510860100 924430807 941008711 986994139 789488392 939314127 868920996 881166190 210533951 510622419 446188809 551287790 316418464 583962870 144938975 597610239 852756697 957056251 951357808 977187597 524526127 855919019 997549737 999852651 634830392 772274351 351350925 929501119 593041214 766369059 738828411 895091656 815877218 937498504 668727750 904445440 967961941 975856942 715614819 993494415 677023412 792679281 97626746 222107526 557812799 909883238 334108448 353819318 756714595 877976008 418037484 618025409 389053361 752072386 38722859 78597225 109960823 813291872 483654275 506457039 904254421 916248395 60443146 483090492 208211912 950306758 671223013 973338339 745129346 796119642 293838044 811140054 779787059 852318583 170129129 260735243 334604378 537388246 379656038 599464920 449756151 925435253 774720250 930836883 525239833 900408883 872332498 956720988 55184086 141027235 346500409 793800642 975898098 977221653 359764561 821594488 302234848 833887229 365352498 593608627 721722489 960248155 341126582 595202171 463086226 553150892 953035010 994809426 695418044 996849504 377484640 414771654 176183772 736584314 522472979 620663011 838913788 984661816 170598266 197743658 219530401 929967602 659577693 847506006 229441092 699373188 169664271 646662541 368252488 937973310 657230636 763568079 90859134 371289383 583821451 649008371 743983943 968640374 49984358 591303587 895969605 959752359 693726098 749509312 746890649 972623286 476002417 921420934 110129520 760788209 953478117 969376667 364976270 907283782 223370873 269619908 642523268 891894135 509724102 531467106 254310207 523941439 399744148 989462907 285997071 601979233 294844769 500458174 137718369 742544869 39575520 309779673 567209457 926855819 887555593 930489765 47256604 815918100 807222599 815983504 853579640 862311905 875259760 989009107 487371083 762442509 324551450 464005783 572785806 679922247 403665378 832940355 519570120 644795397 258810720 308289212 764277813 997504082 242307367 485102355 136277260 168978318 830996996 948998188 142889744 188898247 29502381 454865860 807789589 921158825 300021826 536922557 445405018 969531966 818519585 978293085 403340478 840502904 201730745 981167575 12429532 481873356 118446919 153626878 692886700 952254769 514623834 736294114 189874153 451312363 534760696 842065203 676715293 778335909 694680991 912063577 207505774 428732418 432342470 498638896 989129224 990441075 339500212 603902904 694357774 831328617 86183172 493274021 180343037 573251941 785586397 999756959 433290766 732651859 845666174 952093196 898935273 902682245 184681158 537116692 18810867 383836761 559591471 870749199 952138777 977702564 706273311 777770870 647626399 996850342 415479301 425349980 362427645 493089959 995450765 996034769 662489613 977126866 397648636 897912141 114251681 178562209 261774659 544124805 839186900 931600795 326950252 423505338 721172787 929376989 558045654 786679983 212174449 321116645 304865465 506446265 224481014 831236172 108487268 814730072 528950119 877665800 197743952 406738949 845885331 986906173 675190156 751978233 782224335 873822714 617369932 872415358 881965143 919036268 618714657 792539125 155143788 508034869 915666643 959329801 796495497 830914564 525724040 631235642 627156305 704817094 197964678 551065662 527460918 707898986 354211550 983655663 993811733 996674187 914095071 988997583 296513368 552902213 313290485 568656118 480852885 593714037 115608732 744864537 394466512 970986003 319197022 989042112 35109696 731209969 115841868 174205691 244515390 780581600 77816878 694743448 619445144 846789726 794847705 991757041 693392729 756701989 228964956 328661654 908616901 952446592 836946983 979988936 356652826 663991534 381364280 736244608 144336104 176358666 528836784 621740732 264972987 979172323 966985281 999186604 379161020 992144141 478771672 993383801 695455564 962751494 245019627 975411129 235535988 857962727 492155468 707835485 356185171 369981343 62000780 985076349 732201522 899849487 254341296 585645042 940296138 959507361 379343324 789260673 786400152 805969924 83923882 185724614 23048446 250277017 995524617 997663617 505428643 908506455 440033945 667416838 108213083 966847050 445575433 558825314 778616724 784734258 544528564 706503719 850159930 957641620 63640329 501229958 676059088 886260599 796025352 866812811 782179268 895093803 992408878 999053436 913664964 985828246 703933164 719436247 629614581 998196389 619799060 799455337 644397785 911969555 816101224 894175089 61817258 774299177 996003579 998742917 244605938 972227436 366227765 392712732 506172444 872406413 343219961 998372405 459701235 778356676 485665373 999309277 778550218 847833442 384027472 874658954 728306431 815173028 139084518 662307113 187054655 769959115 168265049 974642949 983372452 990540134 790046851 944885958 385423885 989896835 781832295 802235949 914522230 976707663 270342612 790056586 331889826 601985499 145479096 858977491 583284026 792261446 308279206 620353760 912315348 935240309 912793703 989374000 334006059 570081185 503903649 574495797 798983796 855367333 437029907 625330506 255638196 847763032 305346245 599670147 990240266 990409324 347932995 460234468 289727819 398865499 68058443 282110089 400144113 675548451 954094167 997580480 415585633 750506265 384119136 494637628 974178064 983917459 987290099 999238481 929108567 940854146 26788518 247014574 478714030 599918976 93289729 622610372 822233977 993982211 717755457 828203581 524596681 905320798 655610264 997350590 528508587 673579042 482328067 575932032 267215332 523466781 336825039 669021173 699193426 962554221 468340415 884987246 920904952 989847856 916436975 942116173 48903492 717178769 61412220 620154711 109377582 687145512 73885709 852200703 898104328 977378767 772011915 775729065 786042938 862157525 546574004 934532446 647308140 865383613 22794041 590089358 86848596 670607018 170476819 609092685 495070342 566246219 530601915 993374420 361222884 517736087 811963685 851717394 664013977 894017425 51005576 586008810 495509188 554660182 6990271 481478086 600302947 743129709 759203915 803337268 443279808 570832897 57313649 558954324 617299038 643889327 538510498 786712599 161467120 824252588 53404667 369633664 96808125 724090347 538998458 941168778 358178088 593866648 496526847 560793649 700653935 989432583 288378233 708074284 471991936 733000393 743409738 962852210 448887899 828721796 646345738 679476949 921310967 930613910 596308725 635201067 904293142 920802101 791981788 926954394 861982898 962416410 209337174 698349303 87795832 109047389 358669667 368113804 999776797 999795665 732182627 873721367 454545651 593318836 583136516 962753405 710118789 950570816 553357264 945189091 713353005 932404727 97417628 903051943 199277599 392028257 634331506 655439588 44734407 589227997 921120431 961782013 992832306 994793471 648084269 727292759 926929101 928805933 168062783 455601453 76456624 418646979 665170531 821227576 16331238 699291263 12345272 17934991 512302864 905241094 492504698 552399185 547589120 694616900 344741074 638562638 350706202 857089387 124926776 985933461 376911172 594879688 116881921 673913869 632058092 991724667 161457065 752577342 257597035 502307425 922329621 980467010 975750671 984412662 706453241 836128364 220029600 918445224 781696474 819372449 924903084 936755259 729108614 804665722 225484340 804481239 312881161 829422070 735351991 950801845 943019911 996399184 771959992 887767009 606290354 823394332 676769841 755641746 974432885 999199609 985244641 994603676 80765414 574481761 770232386 948941265 157059284 712066859 375196053 857415953 490296662 771249678 97374929 565350375 245301661 297007778 328576372 419307353 68355354 423245429 272208616 903044417 637058739 981984637 182918061 290929098 686354962 868384864 871197781 932027826 994780043 996454012 354113484 726777719 869150494 900054846 355859857 611385544 571906360 898668214 609447062 961547766 163286524 661350279 190610598 868368171 822426311 844572455 823550783 972054196 779789858 864119666 152273606 315407192 72357873 820211484 80801222 822209030 765077181 896016532 319806565 351726631 945252957 961554379 275845088 829966622 383235396 596687542 176404855 212710487 232832123 970368743 925031935 958970378 478332811 953188947 65861133 594539749 426235450 943264227 5071375 867375715 692178784 835289976 338297324 725230189 628912408 799619034 601556502 791548068 115100704 595434410 952319267 997014494 878500673 917551545 132250810 997944136 2647951 363238202 962589246 994156517 645097276 646477670 754222387 789065125 968827251 992663774 791758874 857632867 136450172 160814345 477959976 483696906 153773182 646170229 739956952 904857351 259211171 401415452 195594913 642464859 120188190 464685818 168577454 244215185 52173581 808444566 12572415 55562589 367789770 461715946 565116842 981596400 147151245 868866600 22211167 600401403 367474013 782110057 28165630 153450713 696310297 973359602 805380507 855844705 65949612 123163751 728687057 746883242 255202476 525812928 887401116 968099760 316554223 754586979 204215084 396519727 787420350 847500382 648560834 825639262 275927851 946520572 9460779 115433762 403792808 884059913 440368 112076329 161577493 252243867 616759872 852052557 486587659 748168462 505311535 522537792 475560440 929098709 968786906 975736611 465631339 811112358 681120659 984517358 287987723 838950730 384758623 743612647 405641364 627782956 627166345 783708503 546234444 739276199 257276194 984009406 200605161 763923156 474637838 552235271 878256706 973234123 573821190 779803816 625289086 835077233 606986697 913157714 690959378 695053763 157143750 269339130 494787346 708890300 536243781 725275360 396048800 640475915 504456804 510369752 194933809 964131538 628407982 761315271 797323382 868706766 943131311 961190907 837224189 863718991 952240705 984430755 577213686 685326903 103748599 820258493 644561389 776374993 74125369 739596496 677745006 910740929 112812833 566455137 166663847 476632883 501573988 646558296 779974003 854970053 214974983 237852329 474257886 723945081 359611022 926720941 666970826 989695196 518989146 862580865 862951547 987836885 639827774 653500356 549345410 767495819 34245782 474925690 79396752 538780551 55554648 551030134 166279659 829340268 265218999 935561134 358324703 783804974 17821734 853077531 398755212 433113916 791682766 844614436 900794212 949949264 24783161 767128014 170768477 822255991 971502242 994903101 461651525 566325774 660382117 669578829 427576629 974880529 604048920 957800269 159395265 208051349 971663600 980606275 225795563 507774309 921326479 988851879 300922834 333388625 430657836 609232238 396504494 571875350 568262008 939244774 164495444 403468217 185913912 321673521 2519357 128484161 839289695 885165750 950905978 961211441 479861580 919530775 198428982 590303653 234379579 602391380 200958806 490410938 476522201 793835823 636140058 638409217 308984645 749627467 891395191 954296447 52082043 156037369 952199500 959801955 476003412 773786319 277886322 824731970 42444407 345775201 178521770 725779750 306309235 667366551 167055635 662439883 223266714 380672680 233766972 573481849 883622016 927553314 105594381 852052899 157868300 241166997 228123455 630000604 386021847 512394045 986236794 987213907 321866080 957903970 767406498 888335637 513312623 623708315 183988428 434242990 42904053 257817322 717617965 955974436 193263765 753582410 611053707 717089680 799880284 823920076 996101401 999429255 78985364 674498297 556292652 629844960 911388278 913792004 670761986 966857373 939819511 986333145 644516413 657184296 953912462 963964047 9237186 280653407 127707318 649110580 160685736 432913907 818755261 875189482 427795105 903031999 394855987 810018557 839022158 987534868 935773168 992098907 942250848 995709381 592615643 990762542 335385961 874575793 61459394 723141007 725375344 986183495 817783952 882444111 787151428 936192240 61233190 213768048 572081934 773399699 940634420 953499861 79100811 200348137 617784124 947372865 196379201 949112423 688855357 740028611 471998656 473794444 152084617 701797723 903977115 968769526 994469032 999691118 223877281 440479429 172906500 871272510 551363202 879138658 6308352 845400995 635397450 821729607 23004457 308359826 308615857 572098431 581738724 709183590 500773763 617960477 194687669 602090724 963666678 978439639 369744107 621063687 681952802 740862093 899468561 974370881 335152269 436844968 223960679 599420094 668851390 731705741 456014301 668905208 834705195 864685524 660677013 816579643 882322699 922724569 650896815 930242608 436497993 890268721 332784291 449705586 778486622 982183158 426230882 738022804 324123546 473838501 453296421 727188666 592604742 920253839 971093099 998919842 772044680 904650879 925540936 944704181 834305765 884243318 455476555 844351570 111455120 472629703 494700663 889175361 495149266 562765078 246431606 574044448 250730873 375968420 905310407 977203312 566643406 745230112 739032325 982517303 764670114 834438914 392448090 923326402 168856364 605504229 808948886 973420746 152483592 596882914 769522153 979345247 68075418 441090257 843529170 884139738 840749348 983140567 443828158 502360824 212388951 510602701 424382002 526334906 173837648 980789986 335495501 821168225 68152667 876107389 238055434 470763767 454775414 689531975 715346698 888630046 816346453 870714378 840783275 905711162 261341894 776161866 856868853 910984243 819640273 958170339 929543193 970153257 273685379 659819862 539055432 757647441 50262198 675377533 925269153 928426739 577707140 860687141 493116444 748809619 876859211 972539806 811629014 970171751 26721175 383679438 57589161 750769635 15150333 75689677 824691527 879090842 515951031 777315547 101935488 607089969 85650103 381806512 101157397 699997699 538324284 980238953 775343373 959528143 872133005 950570050 572763391 827886301 783574207 831722396 496781853 749237384 186700468 773417500 492691394 929642855 77198564 320158959 665443116 857208086 457231734 790692391 304873380 996760772 782286133 829277365 82045995 730721880 506936385 709726646 281910018 820230493 881086031 887629635 121398376 563116756 547996651 651299587 678153714 943336421 818832498 911294957 973811114 981556467 391952569 784800112 508150552 964927929 264818305 947128677 244460276 719462091 49844861 330341737 547038426 578316254 506893038 957104398 717160918 927072577 160936467 799148295 814928609 998250420 120840591 349935038 704322335 991215748 849328726 855712796 697365378 717362752 697985576 868209580 129642064 687144230 673017558 887901913 319909612 520179489 974077813 979931482 30234051 593916378 636307426 987833386 203317825 386969449 123361421 158394451 563175716 930920888 932521012 934398721 120235148 791515410 457539756 794497432 493812781 789115146 261561102 662332899 449841762 559083497 894410459 945143533 458469538 778640329 240431686 973320938 463382566 468829221 455147468 497206119 111846007 904404294 52203305 793882630 112112892 866388270 766461232 797280141 640696244 969889909 835201225 854182776 633990381 719120533 452775962 752168936 59858354 916457341 264398467 517806770 745163651 979855103 249640975 775906715 670316257 815400749 664265351 704269797 355058810 658750161 145772752 482217875 898260046 986143068 57791330 867142370 34779530 524396980 711402782 826969674 62458802 144876105 341412783 676994791 436935407 443074436 547626246 819957789 367765151 943662270 793011242 919536887 35760810 288890672 332833024 986692872 871770421 974827741 866064733 889568933 568239713 771654187 241028516 695952896 582323198 853234180 713563545 830887910 646038024 981930090 96957907 778560278 436736370 589952014 774556130 785835355 736565034 744143903 127897249 443497730 260173702 413339873 197895252 219821788 266135180 515775904 408396490 776635841 478287720 709225021 215679548 250006536 1513036 512752555 483764346 774915155 919884200 992885869 620654036 824271073 366275636 488065409 35145444 781387480 752711141 794018294 562184802 581567426 531225733 553738464 619055432 941494568 646347488 926711125 669684507 877875024 172733163 521236720 956191976 960938325 16772779 630485455 99983351 262994019 871744574 892116071 749086909 751460534 209006391 509288462 585184883 954268473 900873409 912096724 654569778 772361555 105126681 547572280 452259210 990674456 704631465 735244559 712576251 769231706 502445750 686957954 306767242 395968359 258059113 700272232 25776202 990280431 359565339 956671731 986768475 996531190 446730650 720199860 897313627 933235062 306466327 760021091 343645303 790103443 672329743 917348911 133778119 433790952 596888596 693697796 567069994 810028652 178755273 540394827 933932263 966350073 45617286 443900962 588225917 762388246 282371842 400565780 991329715 997708204 247862045 300528193 841685287 907126190 660729251 892976845 505983650 922906825 261282115 833907696 294856383 605089935 669228211 782834889 473613499 611753187 904463685 921522158 131766481 806315697 272503071 333828418 473920854 509186408 518497531 855931900 308019771 540805394 384421176 881992360 332949454 440605453 725241922 864601365 608599951 849333583 870617143 987903151 935660100 941194753 541233208 967386495 700005560 777942060 553511464 615653186 315253149 441453654 150559788 684384443 177424135 774246478 606707682 952339717 449030809 710305961 154296643 913993322 208674759 750767385 558744072 964387896 506143988 827372223 384404156 690279481 159534065 888132634 587437872 678250755 113960008 818886029 923418839 943559336 959587337 972654271 590367115 622406848 256183023 631147259 581894523 885153527 244964517 985367457 884475150 934258942 517791152 702591631 87543383 889600553 372619685 879794993 28717496 736824154 499276319 581214454 226903295 804960671 813618648 887086509 635309549 973022646 625424461 929928851 522060117 708441935 708478322 778450796 802565179 815071287 832971118 957771952 565417482 596344874 567649222 786579531 848331547 849274381 762841677 851745796 950381413 992828705 171320565 178734978 786464468 935036046 747487403 964126447 366148920 675549974 149288827 517807161 48057658 267005906 301950482 834426717 797718864 974601379 461680288 778006838 698156457 972761890 40442848 679045073 109831183 158065290 585568578 648921796 313457179 923268252 875615357 881067499 851440761 897040093 693055315 974095223 142546541 737226481 744304948 887516108 159589257 738809478 936154267 956534280 937428830 950919791 77451505 873183009 5778665 879821199 133040911 198554428 329615656 406124430 276634518 732803576 403913616 738046186 422102890 678560226 911760501 995469756 837172786 952048602 318964174 890591591 446217571 969123703 865120558 883651699 848336944 995092930 867868167 912617054 806079538 926465979 232007378 615103893 189936654 803555615 974526981 982264649 410458891 464498073 146105092 185640152 104724684 500513221 544327225 949763488 359337395 733066203 426421856 918436061 113625370 338755009 727857161 826351765 51733757 516359283 3310870 356573374 848555826 931572879 723906595 859482824 640333370 672366047 691559245 715979454 562553162 732683209 372978421 597613892 580945587 869566476 491093947 916822956 609760982 692278058 778920641 864954510 316855128 581876565 980428682 992007797 280125959 477856282 558815601 684666595 131592683 209918657 265002916 690985805 468418034 812811231 720026833 784689706 789790351 810235213 391836109 690950442 622719789 946454178 35133864 190176202 193524545 493806646 47745947 488081340 822578606 853960539 713811737 929156744 208241649 403803971 607665302 987983675 528405633 601813257 133322489 757098517 185638432 186243103 273140502 678416739 457794138 857247816 645965540 923273367 757288713 896747063 894240460 990093729 291606006 318067262 252520415 992618605 388913731 940936545 586690721 874503880 223946943 754045571 616193753 625289761 333660935 916555639 331512541 632927996 376714407 738995798 204939021 989364171 472024237 868036508 879920238 930388600 519188807 932495921 119540528 718410172 944979400 966418465 299912383 702499397 802380675 808614901 891543364 932391743 18075935 680035015 437931746 491705393 455470469 702317629 141868666 857744890 503592719 842779566 550172659 778006101 362848153 566685023 437140986 590904622 139194924 626411864 228456194 246862597 422426541 988672955 478540692 980789328 83518477 675050854 605982013 858310728 433562713 794276962 777688576 948593940 371391082 623179461 653582161 750862261 242874487 411594951 299445749 581223580 428872566 779990543 842989351 989954936 347146700 468451173 698608887 864427414 139093169 328284925 231873497 448772995 45472570 684232239 437028282 636915896 497983413 828829427 969782523 973993433 692271431 836207240 48835709 781197215 946982871 957242636 761961146 890556740 978355344 995684960 489875362 558074665 843687828 858929273 692604529 899956615 269408332 436957108 572031859 796551421 365577676 392410690 899503825 965953388 247721921 866732245 657072596 666050032 75712160 575086184 47591216 616609822 737632450 817319128 901213657 962059799 484615605 858275963 811357005 873528438 641154953 730854425 926559195 993949957 60250374 745814899 828271234 902161197 882060450 982802653 126153040 574273074 609237173 947031245 459566719 675651191 279459701 570824340 940785770 972303789 201609544 836762369 632691398 895927497 11825710 613597841 410540676 985814004 516981635 839131601 533016220 564268155 722059699 909032102 651355777 695782120 365066246 885040121 96677707 974715017 164265009 376645962 162267280 745220044 119376651 170937909 486267601 511205125 650951303 717683657 305594404 932810124 396284879 675704997 801892679 812450188 4639272 901785713 489638519 612933666 928781709 936603513 666316044 715359893 76059983 897035375 200809122 499673640 420258974 435277148 248400779 826323327 471840682 511489976 802702222 887136303 287833270 609889432 256642585 342427516 359222819 794891296 142546626 693276134 452794029 696454146 251900334 760068495 592037949 827437234 962731752 975906138 752325057 920084442 285548274 661203546 483488382 527904303 142072194 286024121 28835986 827040393 74409693 837905928 33947945 101537680 939733810 941870036 796269731 802617514 78053173 871073172 227347868 410565617 400563832 537931000 178081891 808084487 360737203 970211077 1377481 283246795 104396028 857265244 386982901 955148744 395796533 509893552 725510222 899299432 509770015 937266299 954636051 958877405 690643811 734055690 787149488 868411782 715978686 981550627 774693544 983648188 812430265 879253839 674869267 739730386 175004333 612050674 175631531 398661044 585875822 791888776 751595364 893349276 24854483 669497927 484220658 902586141 177929198 255440044 612691199 764875741 513607923 594948087 201925434 920438212 723686077 788391347 907028017 976268998 549736353 781139733 334850299 492662054 269504884 301210258 266761759 872223193 287115127 322802600 381132277 776503168 337096180 799832534 644407743 852372772 53621042 622401284 846363491 988408051 387267213 794657258 813813717 844927603 15136071 439342565 976221162 987170354 134772259 974692337 74008099 639424712 599320152 712688442 384031202 554117930 691489320 971586624 402001122 480236276 153516251 599786274 607578977 957371471 305672479 427268510 154711405 922894963 604129313 949293072 731718562 865724556 804600953 833380523 894307892 931904882 896303373 906245090 940281593 983435625 855419779 982799559 431622775 892982525 260084472 926591402 188771956 849480469 464161320 909647994 761080706 781330035 434010914 567231470 457474753 949550952 371134274 520113751 365220304 534812227 469784791 958528684 996638952 999353135 582489207 827605129 208901720 855877434 537822274 700639267 873155774 910967483 99802673 554453413 73998068 897523705 615604641 843580940 501049661 790249136 951488113 970103126 112445056 258777697 223943645 696118902 411709549 601331336 28719818 335813925 457908095 988532172 608561081 961737141 870549828 956713657 290029005 970148200 705179799 982065833 361573781 629757252 215720073 549184006 904003824 910993862 979410389 986806754 287251145 842379269 894104949 900934714 2123881 693911711 193171543 195785829 976902662 984959394 473452968 582277050 851036974 951022122 969631086 980027523 588667784 994311896 547562650 795380987 614242928 927807498 435502301 511166089 609287120 764852674 419482381 780651330 689275515 717293139 288484260 591841564 811862925 871712805 870322781 887454031 381731175 509124218 92345212 578610242 144214363 326227886 549151231 644099433 181183347 589688013 734545871 920596719 37779617 370795835 393768117 738392747 260490148 615126421 60413196 438737439 377749699 411112846 812996007 981832501 7616625 590858435 141934155 907480848 536638965 947888086 397978020 554702393 302366729 311062557 119209683 225685352 603783560 651197577 650705792 970225943 250497232 283478801 485088522 848684436 483897463 888608894 939529972 994351664 121380205 666765477 711045749 785257509 714654219 982673869 20028299 928753304 277595929 343981354 582229521 988570585 952243695 987603610 812791456 884855176 157242748 299996728 426863211 828360636 115904442 331558426 200558266 299050050 219828703 543715428 158569726 374488585 696911191 911994458 365664209 592183783 391466578 748324923 415365729 559852014 27549302 480753627 767400551 775577791 231803441 836581603 27901839 375373155 818052497 833949182 39572202 281632349 303273200 660429945 616968742 801748752 383345339 410491669 311276973 779283430 128829363 825954282 491752865 638244856 443773268 687301237 420421070 423599648 309194554 844793520 649717688 818176778 901842941 964723535 121905474 607855161 255931369 324063743 540747618 852491481 337991187 996434047 977772775 993654532 760518666 929641357 10800482 309490411 650050351 907388095 41686228 706063341 583965016 585965756 68850309 799059927 110525686 147069556 354520260 792218975 861738764 948779672 681605250 861759498 60142325 612738018 709424711 758878926 194905453 740121202 77897363 538416401 516768514 716232588 988828845 999753542 930229945 991956639 915497634 972953095 650617882 671252267 336550857 698478063 944859718 969703924 863113433 979943181 783854428 969015452 718873101 751589256 434316037 685608669 27373178 672118406 457450752 509784890 991496165 997670238 687147650 816047955 396121915 420558592 806578813 868390972 710084655 865427003 584890982 795547693 795027645 996535757 413857614 578614184 607698475 624205890 35972602 843696962 435536961 900014542 946200224 947880739 557268538 876951106 654807337 797656982 821659832 912704982 509763042 533931984 743131012 754362693 207061776 695223905 36230791 680873049 949348975 985250989 867873847 947741532 754575422 905200307 891841718 927710805 725257849 877485504 783853276 924605469 716374361 738896459 292094147 305692656 500234152 868570849 728367693 977369441 335935890 863464280 307231815 669975647 906713513 945676092 85756323 120915004 382544365 583510547 99800963 337490951 308377621 455420288 799855708 889493640 563089160 968031007 739423682 840532190 573847100 834471578 788020581 979866357 215872636 961415034 230545376 505306293 418521301 563175796 173812669 622531408 687590545 793996694 784258822 853475144 306706936 362184296 727631327 967795689 653595561 666309396 89553797 209052915 630701576 869358640 750528414 862542322 848805259 881685339 159259439 203699084 894044146 971606176 530374350 635797163 895264031 987585784 155030983 409214142 418516275 658873331 724370417 869952202 946217483 964263556 951546216 975424124 775809611 996737788 862835434 871535513 841437310 913711896 538705573 657244494 318240172 439283763 299532126 778931166 323290178 950438401 639205188 799896884 659298895 838961198 679572543 996799882 405049148 682870329 995832604 998057085 850163565 883696926 56682631 748285743 767302854 984956755 14973862 397471896 284064181 815373073 344848371 575508581 459312319 559057284 652161545 829374398 597289182 899107156 401467158 960810259 287382817 451907583 478740218 516388899 698660919 953421322 456826362 577465521 204133051 543541241 917845420 931196054 929101980 954075963 660520451 749713037 698907609 884986031 596007928 886505760 117883918 787096267 770616227 849888197 956069946 991248432 151633864 452288912 32532020 804735015 222322634 667049582 869563912 905699612 279642512 698991723 920011032 992990993 31862705 512335631 185000331 359384422 458396640 510972618 283352777 374049277 483893258 807564409 264930006 588783302 962662741 978516479 861231787 950373037 502072960 991043907 484627650 770382118 135678212 361428952 936393799 943229100 780197800 815957316 570113059 820749769 476086551 894313530 291881634 446684059 911462576 964934200 435340118 893058233 683227458 832929590 722540425 735006105 506713299 638582582 43182602 929276743 939426311 994502649 777066582 830994189 219953372 724464643 957860356 959867492 984741585 994886561 162699290 892723280 581541591 607367821 450351627 893138708 258384394 662406256 737687686 833074851 711538953 989871216 618713997 845319477 244122157 727418657 443108095 956619105 340975280 938998829 135967924 136886542 106556634 204379719 807534089 940735362 211277621 927504998 281305132 791332111 967112491 991287270 911467798 981906791 349731985 680351348 475348473 716857516 8390728 930279570 14881572 930867505 606920858 640182474 116352598 649160864 316577099 993345317 441768341 464876731 370776758 461922023 859272903 993961743 553514301 877304940 40549090 453146780 162413030 912818958 186544425 529435329 628793024 855834248 839895460 924459161 258007949 433648607 871930291 909162157 122092399 863825906 522420971 897540993 588177978 717792091 624302983 841130072 819683938 866315875 993133030 996589151 419045725 790430782 448360588 655161293 694595299 904169670 44933789 182737163 788177260 926573743 955916304 958126771 54703379 179323074 615226602 953698379 164437829 188268137 965054385 986326165 191700271 356733546 171380929 307687678 921041960 968228054 900060526 933355266 648807778 913517135 180437975 967694087 450602427 639246611 906862699 949693705 657429398 674926298 998958359 999298832 734306415 750218178 556175452 933700565 615438335 997096272 464518788 709139673 189631476 937460879 850506478 865609585 52769565 320582855 803363494 966290555 705696308 764169217 387946391 996451171 990498399 992388526 916335017 924293788 505267192 889782319 518580640 881340402 711362272 778471653 666509489 962598287 479400655 481549678 791771505 957838226 653496655 901194111 634276937 657179621 196306482 556829716 56085017 783963903 774547598 903699568 70430477 164051629 980008729 984295328 160909376 548639384 562429455 846409409 933730391 945283765 140937102 214508418 689495852 836589737 897755179 943169056 207439628 841929982 197615111 742897490 25256440 888814072 412796866 981476773 917142398 983284036 165500402 631838152 968952112 981445820 391897875 538075737 595832732 794988374 733266499 961634436 57356304 373014944 56571510 336573413 429358374 992764255 389720459 594118894 198409645 604202964 154372281 461621331 332587539 474522710 118721373 770227315 476718798 879735946 428304039 451173075 56273732 108021474 464846617 548462442 801840501 995485360 185010273 429894020 138166728 566029429 75652701 420672337 791598473 796795090 83111861 603034918 257490772 604670036 221251034 693571796 768449123 791526219 488733538 863634052 896104793 939227942 5862078 41782573 886516958 904841369 327816 529900032 558288694 689675683 495564307 771207177 154182236 446671093 403693647 714044646 160407145 202941462 669653610 972258980 302904528 354443009 503091270 951310976 477970154 660995388 988517432 997066627 775793208 873905946 386675392 447434220 781677507 796850445 833909442 850303219 731654033 832242739 891078439 966637362 504594381 615448792 751797759 807477678 531446458 865357384 34105301 952538483 814975421 935720375 630448176 899159285 535704372 645272206 7360328 884676504 642403347 752573039 514554354 732510421 264520800 265034006 579747019 607259822 440324698 815453566 582896077 956392032 225726948 868463532 730294734 799202979 520641672 676524427 729480492 957763899 471054685 962676870 81625282 391188293 626932298 848929205 459903754 922914500 847927344 973946864 452552433 936426301 846222351 859867427 121762284 287947724 776383615 934726641 767065752 799089261 473172889 768925406 187600071 214759413 977357861 985985036 136513286 726048220 437428951 854757469 867003345 938271588 303872224 541223943 364921638 595661917 487998725 820449444 196401979 873022444 331906558 986301122 380867572 869864481 494760852 692331305 489816109 745154056 363894225 742038402 529728616 776996143 74799089 365219353 346493889 871607182 535455641 948296646 986214841 988759201 93812767 732485664 873676872 926291714 88076770 519665839 132704522 700089124 882682938 889916251 369896753 806687024 833220440 879554574 434187706 541999390 861494247 865631313 222227592 811331792 83604275 241213507 943140429 980462818 289970914 695624074 674988826 866992806 730981854 895448363 13547625 655088888 3302210 631789287 41637593 46954780 752702970 854001239 403613749 859634286 160630548 630208892 680949909 974148913 72798712 702237158 921384639 925765336 813880629 830128045 428138677 868194293 279797110 982064373 492812900 837430501 792031666 899675085 903916202 996057945 912206181 946603456 219528368 817824875 231658271 619902235 673104476 872834786 281021441 696697035 191583179 367374929 870281148 928334834 637782908 908167448 597292929 716170033 373133572 538480598 827560958 836688283 46947446 81101612 445665477 832106148 971819723 987284982 191624331 356303571 630466649 722333400 639838977 763218782 502890217 884976869 141497242 578856087 746082175 807512746 553777082 563891743 344261546 892591574 330771204 885779247 252402816 887835538 492037783 768886520 106960912 953961923 414862025 940492349 875347882 905156786 446702228 459511166 946826675 981759973 838187492 996209567 260434154 699657857 858129196 907184989 755458902 900050673 426077587 676096249 584691543 810803060 457127067 534687620 157989762 702418911 841781091 935748973 650011444 703450193 969242587 993313223 114627502 829265204 699807775 826611879 723226273 874549698 997118175 999074352 72192412 371894939 831175751 850351464 215267142 244274260 279824654 550151248 64226837 598317628 710800535 839861905 648887031 955192706 613496736 878936376 64381815 183173520 223187972 627334898 825711816 956031859 636696617 670862492 552305589 706019095 107423098 425253684 361238392 943467619 435868129 550354360 709246807 945244411 935216619 948484395 333865768 403478902 341179992 593073349 663259002 844302469 227820290 754095910 627392484 731615458 544790373 747267623 668988724 869701149 287267305 497700278 166891659 635825908 722232112 827330253 848783653 865486664 259092508 859905785 584970433 610086726 617782272 892694444 362213010 732914422 892306546 914366912 815852238 873722267 616392770 645117961 389882713 666807037 245885300 555931900 545841975 567394724 166994214 968252268 444117398 634222640 338267271 675149743 825814302 996683318 181130914 808894895 856821201 942779384 780384329 952018096 868824579 941426522 227383792 715433253 62075482 313132387 245993478 555745176 892427300 973090518 797234280 970777328 365370906 961294606 712667591 916174841 815735031 881466143 864753250 964790054 62755625 775520919 25739428 965919108 740347888 806242784 101555610 158956632 986003285 996284196 62626521 851924444 557527443 596942497 75755343 320583492 521890354 803942474 805194164 886608055 83850466 482768562 848491146 891774962 198336407 535924564 250243686 420962008 580663390 842226380 730847575 978199844 34955414 719963951 617631294 701644156 200629207 833965021 547903534 955291006 929848839 948829780 491985160 985332959 13432178 746205579 83817605 488823955 227545472 519814895 784512468 963730656 310784163 944317319 187145236 971475473 479754253 718076310 98651071 628631420 8822117 517588717 486845800 814734490 802493803 940237412 841284647 846455041 222286945 621844614 439909593 679206868 189289988 850585989 110732569 539930740 609378409 834139857 392037383 997280697 165473544 587843305 554371503 851071447 874030975 915385686 242344938 959966249 153558639 630190212 282901166 586915655 74221479 366124638 828904011 935167347 829910423 852301618 941945909 958095155 452476842 732207006 350333461 797922859 165424641 386358384 706607694 782175033 761014690 977478490 867877467 916716938 701130982 901672518 29841543 725331733 111614502 637900805 159732795 490040941 830505354 984680252 858865261 910628745 482128791 911900755 376836591 551206907 792694359 976883750 864863882 898232976 928612706 941668700 198230958 321186831 691738420 941501639 577966935 983118198 262804708 347721110 317071777 571873691 992371214 992506469 65992025 958763375 494372278 629965743 179333499 355759691 103030281 853883579 985202219 988966883 883230506 921592976 924514750 974574617 767901341 810268570 196304850 845295946 445985190 986500866 701814243 711522820 580875833 877549337 174381033 566965919 741740033 904822187 716883731 943095325 901420994 906241681 705479813 945853986 891408055 951242480 615653397 637218853 609160651 635317797 121180698 170330383 598564298 796125574 869497899 921551223 817741044 940330225 530382944 785577775 886877513 903040902 644186825 677040744 489677997 903157889 673475887 918554737 198358727 976935612 522035147 573597905 742092432 915533360 37259778 60540346 61373457 67716640 329990753 451967365 216579935 779164309 84448090 561113375 554677746 687017814 266699497 799754100 597848603 661317292 679635079 927790569 841533360 886022800 870914960 885353819 300909707 650186007 776962977 848837441 619220869 622723901 276791507 500535647 373140900 980254876 146130128 216104303 16537661 294080748 960884405 974915335 83839941 720037184 60012322 121785865 688310658 887595082 572389055 878705761 362270460 992619616 956617268 995985831 223139615 839080076 168140037 633135658 751525392 785636986 90119595 100421243 258256731 313481018 620559222 713069704 195349080 691494865 842063900 914086098 455010605 627381985 725237017 930813100 446039541 798635582 230063271 670008406 730454441 762287367 243369478 572477016 271008715 993004090 619967907 645271761 854085891 955076446 350797090 364045602 139196851 629812311 139481684 436205954 34008023 190379822 820434385 999868237 907039933 967399694 12890100 689232825 284978037 855915307 850856855 864577132 216078337 587198506 343879177 641537084 987153251 989856711 514958766 649063382 851298179 942803549 903995200 968779590 706018387 774992368 67600634 458181884 997267766 997841285 306767219 397048744 717849786 867454053 328125910 647291810 239772500 531001699 328153495 765318322 120913259 959064799 7846697 397785327 375491701 993860400 460681941 511992787 45239433 462075701 37758631 312398443 312290440 575081397 362515673 419490109 477595035 720459261 579736740 890994330 454675264 580217183 89508260 575393699 498987883 952745880 218853685 941965185 445724105 853627525 509138233 805267157 745790276 863800925 1930388 423852711 928006189 959334843 964646268 984614817 723316924 871089853 301155093 775478474 535879585 717683417 523206887 859163920 170154778 644869857 876841842 955217929 197701440 212458221 859921622 892034881 229133001 558122642 296930600 750948378 288564742 433982645 318528094 473816523 12896015 896767937 440469857 723829441 703132244 893326693 122566438 576350080 267573919 514160512 61586441 940769188 203833767 524149900 965391472 989918959 553954709 782461642 702817160 722323982 85127813 411925920 870160783 939721142 746646994 759609049 777476615 823160324 239131522 408427153 818963265 838705847 181354982 573660159 830044443 949459449 312882333 452902811 362524654 743315634 891799997 909943392 298231892 977885162 979413945 981541187 169571178 598555365 838870937 882819128 577834541 811732919 427520221 885189664 962939191 994933820 171994463 920282817 269562202 458340045 557916555 931602496 117583636 741602147 11343221 914962483 214216987 288502400 574171614 849418943 181730216 255960349 814476791 920587160 101719339 637574939 23296475 851738175 481622027 540727975 61125441 312963422 156137853 495648768 659126949 906983788 987799129 995429507 435614309 608405724 107122557 753862418 550155127 860253545 186148428 382170575 957577702 973118083 524502970 532327679 971094890 978086554 978287980 994645475 411692933 787873602 334892756 781990891 54194337 383734231 12195931 799580806 627959800 716385590 744726011 936757226 651607936 981872021 900466742 947360735 267636674 954814195 175977466 544618384 904833173 950331020 423929072 857485083 737264881 898772264 635620295 760080705 790764166 956574075 594978896 714177759 567799580 792055545 716474300 975483031 502962767 905717389 88500070 972247317 392817702 904173938 544719054 558622009 481218198 894537756 968011553 999894228 161280162 857647048 235084968 473515506 956621336 979777643 116214017 818018297 863180372 922306196 180501802 416189566 244156240 443573985 870478928 913528491 113826119 158816215 100082773 124711398 666310023 901447376 547246380 839175274 821338215 989116031 891651898 941864045 886310774 893222900 544810224 689559810 224338650 464503404 819390485 851658251 622246335 636496185 547373156 735523227 941734738 962902978 539872332 934054217 295013136 987295312 366757602 821703654 961169156 975882891 504811451 582583715 722175645 999437046 359337522 390518503 555766977 917081817 998017419 999185119 115325133 540109827 457671923 983509220 31366844 292524724 892402921 915256163 832827056 946815716 776986753 789299863 936325846 971753831 132680434 356347944 974429064 981398284 913231266 941312782 869355651 901205447 414022777 825073177 662208460 894169961 786429846 888708630 315979191 607047968 874554816 904457977 545933159 699888314 36966002 102472041 577750165 578916798 339985850 569673717 623704904 953061672 521928814 737191368 813370911 898202754 860445839 868974279 186604067 306017098 654791860 777134518 245760162 781771330 655230806 698073651 990437376 996685731 58550144 574778768 81598679 794825524 505207390 801015173 230512749 307476067 678912345 932354525 380744972 938511206 432986344 457236133 552504107 697016733 748082286 941130970 389772618 734053611 708279063 923132887 496041986 566215565 633919350 684889465 677236368 808087411 955175570 991121676 830934650 848673873 21516343 754826543 500954992 890634961 283265330 979103572 35358477 754214654 264131170 730333734 464857010 813904888 546131686 654439626 65115327 151036508 714588342 897465011 110338972 186616378 845200343 933227869 56596170 730104198 258497897 532446441 734063594 918912333 644097282 778020058 966129847 969057547 577897772 702022854 912029491 914678891 555830195 885634604 113521059 205280088 775687630 823552563 796448615 895572519 698240101 891242781 373924612 757469336 307626259 732217015 347411960 699379633 143315319 634943762 541647989 788603089 71213011 885362243 909986029 921818448 92670769 905280561 608461590 859178319 657304865 750000938 227041386 376016473 318718176 536955831 755247033 942640396 162430830 849576356 436746907 763095561 354253221 516380903 864112349 866870910 913228776 955407735 663351371 747381303 756470500 898975508 656069361 865899347 183745184 608867901 227228221 929291901 523331637 806845701 346182213 784328159 572526909 602966923 944125766 992812936 81250774 858430442 126126940 668147345 193914107 608947895 876263919 877960331 912715752 919528173 123323195 198087826 53189674 436026956 211009967 310145053 574943329 756823874 164291202 778820408 190586093 567287062 292146189 499312738 791029473 896512806 269238274 897896699 15064564 756844990 857413441 867961950 411654879 444562263 172884289 270687073 574348479 849642350 689318570 764103507 674797453 825711062 875061721 961536536 645764531 682271429 495456790 682657070 820412989 922720188 786397927 943562996 330435874 809239087 955341912 978484883 244788496 841042461 474114495 677320061 864197832 883100132 345229578 847961561 184982823 279912319 157850145 455822914 204095087 916289923 366576271 868341429 960235497 968453678 498660758 941884740 43959444 742611265 598282251 812222009 143903092 489472541 726345556 920108802 974679085 983889568 758093868 872063517 498700748 704155108 772740255 934131025 874516714 940938194 148128973 294210892 982218950 997071015 774066852 825639686 782125961 870451953 559036091 696920665 910512096 936127526 996671183 999070724 416144627 425383434 533849593 678544046 833455358 946903575 686328018 758753179 912113352 920723048 8891975 858288770 403759821 889224707 993437679 996158320 947617078 968344779 987435289 997348735 20142467 254896627 691668547 887106500 985375807 999111421 841666896 982995699 296374775 400934583 236181587 741206298 277051701 318789177 896717249 930014383 594433168 944334305 974606611 988564506 598059254 868385207 509398070 963862814 590393237 654883434 5661407 296838773 548287650 995156373 224273003 254203170 964690191 978898062 417407648 617118742 72029968 861771139 152138005 649587128 887764230 984358386 854859001 890052027 490027927 503363369 407328297 659735661 107501585 200578508 78452009 323986465 519178802 577214382 820129764 844753142 164907073 213897589 793054737 995522883 483453170 861025049 655319357 763223872 165629958 876250759 489194344 858814712 806726164 969898976 319065347 516534794 92610178 786255185 9013938 344290145 977882215 987481305 844632405 947047863 871536276 891507014 19778963 998869294 486291633 498549260 872350763 982283623 427231276 611326898 94330051 386021577 537855471 560953275 364187667 728561019 63930864 242814895 888688920 990824893 888967898 992926838 680960911 808230668 507099402 712664836 701348657 940738284 947309428 990462256 715309358 905058193 523560580 657805009 421858400 926110318 240101443 711856609 835541185 928814277 244922747 654502296 949589562 986907762 510158572 701694352 82941815 960678539 624670631 645111831 758349304 997843785 171528587 746655792 113494052 391415696 782665699 864234053 556330861 574845031 782569353 897735927 159973943 388345892 17339268 173286354 178841537 895111316 490823886 662770218 335861767 718561017 103290382 966874718 391543462 512681336 422875114 636235109 126753386 257555534 156166803 594229452 313279950 627412799 215144865 610796314 303701216 444685829 949947449 999902182 924283641 928327084 855954010 919082827 585639068 986449478 570305352 862202642 621542356 938408159 27112993 659224257 654825269 718118599 820017966 880947864 712034896 964460306 624359562 930460517 406724167 450725703 971294609 974462020 749647221 985648596 985016844 987080934 420340703 442924850 939408208 950341600 52821736 655203873 253077094 616449048 367940322 607600134 26527679 943567365 596494006 922218281 243830629 373361022 530656023 874092811 708737675 771732180 717699898 777148082 270239296 641388951 850154704 892384816 752243651 967307296 526029604 691252683 382590393 589044571 940970349 975588797 39365621 212571705 56512183 831286807 629941413 950369410 513585859 589289330 212287008 666664639 533924599 666649182 961294126 970670774 614201524 665857987 89286376 322891578 93481378 602846740 354873233 597599301 839608063 876480159 740388891 861002989 452986552 805991413 842398019 870258580 178799578 813013236 948711900 980314870 769590529 823508426 485875447 913285452 704479345 942778208 604517553 732490375 6462602 297233050 673792952 732207229 383877707 956210523 236799583 854689769 691834767 935893655 787549171 883257458 320806901 493390460 995125488 998542967 962374448 996449984 392748667 698638393 725414943 983063302 388433090 822418320 177258254 267355893 40881622 894240557 26914942 995594311 214906094 314215710 211453839 954543150 386821997 764199704 849028040 898907446 516503193 872395463 67693019 758582226 221548655 855980628 316220647 438868115 894381314 918549350 777169699 973880448 195307978 265664946 339517988 737826239 258991007 984086943 887872570 914050596 1783807 435615443 641932285 654415384 673963932 676388758 154036155 368364139 583704532 804455197 879743914 880052045 431850261 439849696 353839696 921706775 738530751 791582609 58655103 604723700 759746390 789171731 789998014 926742718 669908521 767257965 135504871 299516806 24985142 570954212 567514584 789422190 450988385 885292363 911658216 986687369 553391923 746351929 750732020 828051316 285137744 727028370 40584802 359639746 817411897 932954655 330889235 858681074 21614931 938301762 954294934 956418529 665251707 941236310 52727782 881855298 83319006 552081023 221266432 799687898 830770243 878434913 302358094 853029047 146191205 698414505 347638951 435454981 212409402 463834750 272360969 982674985 653218603 734485299 678774469 798012875 705742466 889369609 410479583 652220478 694568306 950836182 653314576 783562655 102870661 473340047 726513477 976982301 869998429 920491587 825685397 915442538 835269713 939048098 817023878 909548413 133439478 779363917 561070013 889523687 650324848 684355877 238876567 624824521 986774130 987411126 36016618 538214442 209968950 717929699 822236836 906874109 652810992 689924231 327760074 773755293 425826673 810821100 601141562 997664957 586793208 650553844 442510741 955895690 556132710 561149460 606071272 642856447 393583208 693172863 958478678 976347712 755062828 761269965 326543369 697829981 739764859 901205790 614242909 801886266 871826934 934939622 142980280 182396268 867356724 942581039 802375795 858083213 999024672 999309410 723804863 839217495 396217624 999626900 281650323 923974625 663751702 854100882 462432797 964296058 684080272 925893568 574428571 776937712 428170774 958370624 908025193 929681166 343213574 435337592 471216343 495776718 668620060 831027769 938105378 949076837 383544573 666711760 400651421 877507043 937526824 995871604 30950809 859724127 270462761 791537911 65882919 369039874 954461395 954970414 692772814 905000268 279031562 516671080 120244348 657989115 503848115 969983400 563552986 645892223 402419174 824529513 429628939 483078150 578939990 756467553 824651867 914689341 721646467 913592958 611585751 958129988 575189246 852961379 831209847 965056077 278052463 510968274 86214787 133898697 53864 154440273 735726514 809161710 74907878 168119207 884013093 925022961 269531083 846325402 161409986 486542984 264873052 463417916 416800839 584415000 547804845 700455579 922855581 927488713 677306298 758714721 621172428 649129235 940738248 956233468 541634633 800264850 588284412 812800232 3199919 530229267 128819915 558821110 486410525 680528988 579646500 888051816 554440034 971698594 10413045 834486007 56227225 148145147 671427570 757374147 563051727 787143758 223869119 993818991 760028490 812270447 955323862 977700586 672689022 928986286 641738764 717943632 275632337 338891514 103135631 251936313 631743340 975761387 327275282 467687255 484550796 649786886 687672397 695556984 737749436 847414882 785794294 918307145 969125055 993200455 890971243 955260707 95397674 450436737 432981567 795549125 395174917 671636893 799354966 859921087 452386060 769927238 71281253 992000681 60053948 480550744 832883828 918462246 801322595 866117030 608746713 963172513 431725530 725771169 505509150 591790773 354128680 683965339 199713206 466062461 175403305 620776562 423277994 745910960 835494907 878152502 191085594 659641604 217217247 557754752 124326249 261722188 698919827 718921857 399095500 697516450 105379624 713032161 31696345 693545347 2515751 587360931 910762598 933228616 62962355 753914419 80906611 145910072 115026589 184743982 292547407 591299257 736568208 762343965 769701310 918339348 588279104 649590451 923351727 964285128 126712127 241033357 506287596 907542240 873919618 961317393 584317788 766094599 978486392 998513976 742959307 862265199 316180069 918072450 19495253 593605716 948325241 999137756 490868473 739400782 186882921 424243522 810715456 957238145 82422946 85378783 636076006 805529328 132768005 642224971 788743830 882827522 859615463 916560012 62257293 164109747 229057236 592380995 15938571 951478313 122470847 397852636 105475599 955185201 620153871 778771082 400882257 739990632 223999819 459071390 745701928 850074556 218897262 536033977 771246861 779170991 848412107 878563641 325033388 423464898 796654911 999631351 562089154 604059250 796877958 833110516 91481315 270675639 489876921 501323317 27445238 695427422 418028803 745362060 483760376 828471075 622256567 707810343 372569701 845562535 445614438 596565963 243397 841014474 321648209 779802002 778935815 800476838 100384631 429111838 959232398 968003870 404583436 815753133 904021435 948242106 19038944 24523878 557285792 576913259 680984755 720632424 627438841 753582641 8682671 821104611 615611270 969954607 134683994 453815152 709176861 783503717 132789976 352915188 412903224 682269119 495590783 814554041 319650662 948771740 340400395 928039392 89518781 283919051 303814092 773616886 43957445 287918467 621424474 822023374 371403989 674347738 916582260 940706759 877005699 962111830 627836788 651211221 358289618 688895165 383890304 859179782 742891646 951407214 872500487 932426870 25469064 631788699 653249948 832972928 415229477 511902238 400934010 533801422 632335994 922510764 120143969 449136838 56189362 738741763 601081078 678350576 401439191 787394555 930128741 966139367 782882675 809906280 123638156 378800687 781692917 860543839 216584722 516659986 45043372 997971502 868496917 992570291 632521841 821519047 740669712 760706500 631744974 806591017 311918125 948492056 253204739 856147159 970319902 995753194 267766596 347966614 881076659 934614522 866062663 966174384 15614565 643066282 956725375 996774773 153621293 964625131 361332871 491504882 10987770 165255585 627374192 994402480 536310262 957687364 885702605 917804354 295228338 951806436 257317832 910257370 423715209 784736256 197872172 274588890 929940240 955144421 752014807 833913268 153748811 724767536 587004671 738302650 387064414 590443089 443278509 709049571 41375134 736567923 299069478 792178898 127195495 687697323 301944350 785461061 310537695 471309001 854115834 939541501 653495313 885255317 638640105 928535883 78463263 503516253 365221952 504827787 712251409 734849926 251253749 733972191 230139207 877439620 847172318 848604566 866387013 888709820 439983152 624782536 807558179 949937920 185120940 796531546 269164048 788052911 96517618 618630091 491814172 852394072 794926316 943316155 476278941 613342985 909524090 942557971 766576484 898568904 796640166 898159455 987103905 996523210 6831757 450854894 283555792 959996857 35131401 104759974 165054416 631085520 195380928 668643121 837735556 881552883 907348385 994460335 55142608 106134565 836647030 978881017 92108878 911208679 257884257 716120621 542092844 612658068 772279867 957840150 479038232 645267897 141545525 400984005 497086502 506661581 94164456 769546610 316439347 499224506 492932766 661547710 611665668 981192421 118743363 362098830 179788064 637071268 837989407 900315229 994155416 996034640 840232412 918046873 835659446 900466914 434698823 616190718 849756461 865664642 869713158 920599807 512790914 564402641 147098706 976818568 608579673 647845611 619536982 978751894 970763184 992943861 290720801 916592391 281036769 769808200 198232435 228143070 822232905 847791701 410999957 464463742 956873160 962770525 940629206 969389664 870704377 918430892 609388288 876458805 726687115 757215001 627734518 742884324 702358668 703379023 500927950 899737361 433131488 495460959 582119172 878736736 76825860 267363184 580613467 860895127 663885691 784540087 228322068 998316088 257869131 332670521 761195777 865228312 462675681 888267624 414466938 571852253 482834311 709941412 193079687 861376639 360716930 808677417 77819829 331157528 694811056 913208469 69344598 611577467 494437545 825438063 290602958 369518056 695464687 781528876 535885303 784254218 867552913 908078324 101530350 702953656 549972104 833648512 733093050 782458303 755636565 888925857 139753248 846915002 91936490 719716027 108915665 300097243 759146361 855237285 808587397 930017517 122803806 646609824 436400934 485940672 506160311 770622247 448018127 733863449 918222746 935973340 528227014 528610649 100855981 746679025 653335431 865392858 449524562 661754466 774664083 825448722 827648486 908063713 733968324 864920481 906088887 992209808 510810815 825361418 471749025 822729302 780923667 797493271 842721639 992370534 135602634 586797011 695369450 821480588 101448743 294695389 124562799 831041468 396326861 920968347 220207266 329673001 179608364 283577996 764008700 769817808 491702483 880056529 260979195 765458079 519525742 954367297 583742537 937478266 325116506 714932433 510602862 729156870 686614558 853981418 824808018 939465613 91632041 226509117 102966165 530483223 907070178 998411276 512071193 558063826 584399098 988227191 564497621 883519053 530225485 736717839 426655046 454601276 236415755 633470402 797900836 814812245 324899103 812860923 423427008 984450677 327938577 582265131 441397286 982312375 262855772 637940514 755753093 867402934 960921871 971369684 637690707 791336000 258642325 641756307 470461691 796385625 124464753 556097343 148128465 162020135 360263270 686985660 223027796 934918349 441483591 509717369 562103540 727984213 712594981 847337408 71299006 892575896 667729173 866192381 29856336 682891963 303676268 406645553 406639088 469976544 233832132 497124331 545921498 547881310 205714877 756670967 533068509 737976224 204173033 524352044 801182596 918001489 150304187 831820784 863125750 870821270 341463624 362194429 592271116 881556761 349258517 873442867 887962585 996860584 45995644 475503732 699632937 798248010 274422129 807849330 713536782 904629370 79365866 275234162 227308586 439444752 80112589 965894426 975180393 981379319 664426687 806411822 642637498 963296101 158018262 784905015 282154903 849430989 803476253 974593488 633702448 855826303 399393882 993106402 227554863 855382156 959233461 972282584 636516799 706583134 215365926 255654475 647434719 684905976 713539198 820768162 130561251 232631463 1955988 926400447 736897792 969221635 427357266 494185197 196424874 659933096 627922220 958629700 713723277 955419920 982888513 985123974 958708259 993011815 766828094 984611428 544341982 617258135 845544045 890062808 812798289 978311044 565647198 626467621 118039937 800324236 855394501 919116685 409103976 997461863 380306624 691411999 225988471 650057142 580725123 955751859 428979641 454898645 548003009 963013567 572157137 712811353 741404733 868982558 972708709 977231935 349006155 516438172 872280224 978970741 502300554 655549899 477293076 642297338 836679172 922674162 327691712 816821410 162404499 209355407 149338134 548576333 364146516 945868438 178314341 215737098 267097177 877698863 509031317 564615791 132085710 861165781 272481116 363939416 713683693 734667343 940869434 994882847 790067074 980456694 586731339 855200928 542737283 846630797 246377523 905830860 560584120 759285604 704508544 934753109 536985881 864811813 928206531 942302701 736633734 763301821 667834201 908765521 239792823 585811000 701215830 981247505 545962539 999287894 370757864 668719728 585959025 953421488 583310504 835147435 230175112 849426708 910273137 995981880 390167317 901369090 706617235 985312728 809705303 972038400 692847575 721981072 123206620 227649302 209196470 918267870 738707184 877469379 892518410 950292365 477740813 948408221 412485425 910097416 462117500 748171751 974271433 975957730 479587436 915333053 272347214 836305808 426858660 546463765 774371234 892419784 835389221 887809701 638825381 992416781 861625469 971697863 715953669 964508923 645903433 737989648 479552417 933747081 345038338 625136725 405276690 739482746 36707467 219429715 140451559 789413306 153838337 835371944 861484747 899560404 858708266 919307195 887742302 985057535 661693218 965767385 473831623 887817385 837440228 903324930 788062243 886044666 156971801 426657971 505386369 685064420 817951931 996358711 347457232 347718047 589825960 909350046 784697917 816629656 299825630 567855713 49534293 119780289 207955000 857826769 205077814 205584608 39607133 371066215 120319657 740348198 147747495 585760685 30036809 749737158 265069521 686023835 750471043 894353440 942734387 982824956 741702225 948740047 487736647 831883478 909607429 934073915 568315239 790987722 298439252 768624701 864592578 916322512 796676152 884682706 364170202 882271986 184006763 771233569 426627047 452570800 904366658 910983057 353963744 550335384 540530781 630402473 2173253 419946020 150676883 892363279 264488998 543757195 958750151 972689734 207587646 710323571 699164468 861298886 601012016 736942031 413762811 448687620 754376870 872350104 554344658 588908307 173699498 584010154 86922911 140046756 931808523 934387714 111774205 565483162 3706402 681954252 517329978 594286505 669033875 786407825 389599986 628430107 428280319 671436962 674269496 678844365 456023344 884182669 368429421 711950228 471833456 867216631 896275593 897010141 424964682 864431546 341596865 402799825 73591455 615457827 265523932 323706577 404277030 693546837 86526679 986280008 394803928 548316944 592822257 978183649 219203639 996929916 942590642 959034437 2769731 995448589 566084339 787149821 405793277 843459492 317516545 741354822 242741721 472436400 110347464 672486732 76615432 217297430 903818076 930550426 617980392 853708581 816819825 830841882 739637150 999676289 484058834 989491156 634331826 657241463 389316560 818244666 824634462 939520517 728157226 910189814 396235152 691898084 541280626 956364218 979541125 988127568 118292801 137050021 215205070 703876879 552111207 986027432 91122362 574994140 78228650 510149515 168718725 169520802 81557744 915395770 868772770 939656448 710157355 872646173 476846758 921377143 638970080 804008457 328846833 991778748 952350168 974007921 508893442 987212765 298876837 440194449 249922371 318642290 174078635 814635111 311585798 662199474 751465624 829573089 647410422 772976036 306226886 775788753 150292889 375208542 416660764 590323684 756532149 895102544 44283502 900318738 816402269 998899984 674917700 903151864 898904430 935794521 582520431 644191488 638859314 921579177 198539017 595140383 543893018 549470540 265105689 876831939 814407677 959668194 864520569 976803008 449141862 661445300 192865987 467485018 559148748 890508891 720179860 738874300 739181951 912815341 236413712 843777109 562031176 755243810 244929017 697405427 534706158 575651796 472387514 826513362 397717793 917303916 751527953 960569829 663536169 868811195 139246023 501775558 598674549 886400903 949656782 974298142 122917359 959942473 177117582 655651998 176980911 355507561 60707062 263350573 95133444 470239014 288742851 582000902 883447208 896898091 504556399 813531569 544667372 584564961 245446350 388540174 84741995 421836879 149608836 382473449 917873628 938438869 833132849 907187562 871602860 977321027 733570835 852662711 991956369 992801331 148071715 893318166 599936311 881379437 373029670 806177146 642152906 951917558 545354800 814924643 342926895 615792326 7685705 39131100 544454143 656932174 617616192 731704428 459365539 966944789 606901324 953054705 698189684 885754397 358192950 850052337 189172145 350945945 582971622 769335366 782011986 833472042 653217044 698885970 727573316 952889990 502473292 749360056 560096618 800074620 974746457 976851168 327898679 604729018 233855972 586024929 694847369 787126652 329080018 923258689 793428836 955680186 754671160 904688035 142802678 850384249 262800093 351397257 52719629 624681341 790367512 886529167 160803683 363618608 317087263 440682766 112241725 885932088 496664589 519995376 435893594 832502319 834347973 975842134 341322941 431127860 257992970 865675921 808780281 876804702 117059282 806767369 269531281 930576882 387099829 660826345 910414979 917371257 209716014 404278609 843484282 872029889 575579237 782020597 257148210 567154122 728731656 957820359 922888203 938810954 173476047 882551027 616099591 710387182 675953509 757913926 609983134 785715551 54765390 435952084 673895705 696390703 441183551 856300369 598465432 644226000 297580196 439173517 820492253 923862338 678381288 903532462 432684315 559333533 336286213 852178861 110361211 262727687 181022857 333950978 824176895 929437946 969641519 997618771 3828058 994723301 612077983 978991848 686439994 976417608 85447097 946620104 180329412 622305671 416150837 840484871 783288400 840744748 145310355 808239663 815805636 989352759 442310666 801101404 161618925 663581850 362558710 393781668 433300661 461221529 118214751 797603386 716212540 995764117 265029644 722109804 886701145 912045186 946984693 969518593 838565819 976558292 414034824 795691770 334715053 914771266 960814373 963210476 579374206 965168950 285718487 621755485 722343619 860858212 67301538 797794153 74658357 266228735 255875360 764604179 842134219 972811860 534679880 591130920 46160635 55131600 612305766 715442338 746002524 892848626 234807875 381497039 643857455 919906869 640813765 756989228 54997853 610676724 811814585 834488671 534794941 896995342 102683280 317365415 765690028 914697949 936390294 981959580 471914458 481038033 629437024 868168055 296696456 695502221 712853864 998600643 928333923 968128667 679744775 960429198 449268046 545094802 373567424 621431747 423495118 528837744 657558660 954634277 64837975 528473601 114299885 517379039 396029729 973127182 962229031 985697934 449026931 684548603 250289456 444651957 488138266 767617601 338847594 962136950 951599010 960520920 584994005 661788993 975072609 978757783 568753424 578278593 658610350 756930427 730891873 829453306 656883672 812297603 332896778 777560922 553873770 867670183 69960742 353964815 98737772 955055917 692342535 753978664 416827755 805489884 831357655 868676815 711496987 739878049 350780156 700625996 417514014 651379886 535788029 697230952 88078300 127148612 379864305 541017085 586413699 642547555 472951780 541593350 503903348 942400060 460299832 700342302 739177446 951449915 968533154 993859368 285586993 661176345 713829887 776594042 502565637 741405016 628460800 642531195 922579073 978133346 558669963 580247254 972839069 980398464 775405216 844690999 300857186 873449267 740393011 945358639 720473011 740575846 634630276 768601744 377533712 469985608 112229048 144767333 82165909 536003116 735773493 777807254 284511639 901266063 814747807 912468676 938437758 999139612 173724284 180314204 228476180 996500778 965937041 992552431 797911442 989077895 679115334 891809243 338489347 943445359 295496166 745138930 124936166 332401277 774401864 957756216 196655545 663402363 786079477 812731146 562142763 814550965 960066024 987544148 608152480 967439535 552901569 859988013 712394602 931452705 824409875 947790938 580116312 703135982 72470666 218706136 679812768 795936457 885335340 963251492 435374905 965961118 409040382 837422597 904779729 919568717 398255273 576221420 141085632 464570852 816501086 930719215 625685186 839781468 929457059 985427246 14784058 46673352 716780804 954996912 634292068 733533899 352294400 897436779 897493959 916620227 947446113 985967140 10244760 53513697 361311908 621288814 513119815 994129175 571657250 942156858 370070280 960821038 338329359 628601259 865846649 969288632 345558539 495291057 153228482 333232819 738234072 986038600 38688752 214432013 619476294 968343587 378711632 621846651 307749304 541414114 870485961 992706715 817224224 953162490 415366876 585170800 235549329 243196125 700235149 860453234 226485709 647186436 420990579 931120447 399556947 806419447 897128141 930443887 983519711 984640786 199866636 681106507 287532142 600977151 362369222 841002348 220976554 825370271 103391307 144690874 933684260 998595884 911645135 974602075 980517426 993521919 805566385 933826587 205064205 518886867 297415266 522414941 535345084 815407812 788417202 999441268 632549319 799441238 162426780 846030502 931246646 951509688 809448417 964796750 770031350 993703283 31021582 580862116 29050655 305675203 937474331 947709581 550290107 599520794 106578536 669478717 21574416 844876884 615406860 768447481 79099314 148769245 716834090 737615214 549372088 751756022 480583818 525250751 850123159 865632842 558491187 872558889 136590687 364083102 563441214 929068914 66034976 573060034 18543702 469289494 898722424 967247719 653794920 994170502 146693088 399565633 910431749 994113444 973522319 991514399 20585066 389700998 151387648 518099268 385519837 528530903 501526880 743731210 962199067 980647201 130431745 727868825 817257909 970241407 922801877 990753852 418478227 721810530 189878553 965203642 705522453 738936187 954209162 989611304 518384710 763625136 119329738 691482521 40947110 469970068 315437216 470073988 633747455 765132331 905495663 968222638 902841045 996451373 718853221 982636973 200733011 762418958 990997228 991330758 921876481 989876635 166699685 461127823 400839920 639152209 718348376 920123807 797458272 907258333 907104817 918596449 209625310 423157654 661649629 741919355 29644770 697542402 124304491 811048441 933925230 946348656 365443280 702803121 191100259 248257896 901068253 932141788 147914097 509299854 61712687 91824532 75018244 328129912 314409329 325082992 972511340 996166065 187940574 840837774 390203135 551952920 142820388 185130195 159331397 320745062 808522344 863565282 833880346 860191008 912827268 948626160 30079883 938357289 456445388 907153516 728624880 928907192 857888243 944808287 519012366 972692114 724112266 749955774 499866740 815698715 825430127 862231431 199106484 570240029 416505400 575329628 261731326 354318128 186551788 715791644 223240030 588644079 735984640 832962790 740558203 840673237 520078331 592891255 592695274 860501229 58180323 234605488 950440571 956563152 853239668 864927322 348639617 947744448 242592921 273525460 883192153 885835521 434281632 501703020 190235356 763479583 691191106 891905429 356121184 547432187 3557459 370968225 183245002 330253125 301971528 536196694 864855082 883453122 138729981 551647538 711407204 766211272 728110924 848740527 317745815 994024469 770314446 939962181 669321761 734832642 880865469 914842987 755602575 840823038 564061933 913377714 204539767 567303208 988371911 999400029 27895685 138798049 225677638 414557683 525649407 577598589 449054186 676074928 830202996 944535235 113340271 158822518 264190296 386541602 490851379 497088839 2719561 811344086 549056472 677322495 916982741 957884692 272391283 586528489 799135160 979544984 541479557 814930583 779684779 968118692 357390764 676170310 735301727 946900476 596807329 923478885 209643689 425645197 900414126 952512717 270586722 389869441 527749991 539502860 454536133 507172262 747058939 961579554 398079643 845225019 700925718 763253373 618191970 885168519 869360863 904245271 88363602 344881962 652992832 706030168 153094615 223802816 269252654 610253415 99859392 928059435 558410018 756534771 579955295 591212516 780715933 870461719 610733581 727030903 6763998 747795443 610945481 973584189 21558153 816866402 367675526 925138820 403933867 548682876 14601423 330926083 821042602 963797589 257636918 975146390 329599214 707837000 782695268 917259786 232913136 969572028 235139145 347360362 111667243 322987859 123692675 841680943 762527866 921659948 740134332 740537234 893848267 924896850 471511695 521525481 848275169 899810449 196505105 535905322 289329437 386503096 169603504 244949789 753504533 983592566 258497124 398126586 930847063 935928861 609741864 685726870 858922092 883403978 909732026 967965211 344489483 455276521 376410826 508111680 92638704 686601283 933950939 987412893 148763049 168364137 958594062 992911032 68475366 159261919 65168383 312324824 738354564 997841227 521085878 751154884 550109336 858810815 92944317 804613772 79035758 486693566 776554548 819273993 667561747 937127475 560141201 780812783 133784169 431876548 713638100 953885216 21529080 758193113 279130972 511139051 145580916 563699680 40452034 878124381 965601663 979066813 529466211 626870904 84798032 913814627 460915742 807084657 172434526 939909416 92516844 577606806 383293981 738437443 602749039 612973780 604469171 673599299 833081281 898273344 260015289 532652605 68122818 895475152 946109172 986579047 45512935 171750506 29878689 81494615 851497523 994588155 70515634 136443841 69694771 708978579 176083226 249947841 891207905 962104930 361755137 608408846 427979609 736160436 785102910 935989016 181482252 889725817 747594515 858480013 491872159 804886482 690440971 868803694 592783340 852491671 417127427 812059696 714100650 833271040 598050594 941825431 682888409 869770189 688707782 950324354 839331523 941265334 743799372 843964367 656363221 697395118 430345933 549480335 509256724 746718398 561618566 776453018 707810391 892454064 538114061 968632866 785414775 807319082 51202332 280172644 139493998 310598642 194772427 226310885 89700704 768578121 770503846 775090651 956768630 960038889 172832224 977550283 888001473 924687153 399349357 469821062 448999462 560651994 942273351 946928270 104907409 989757657 965735279 979147893 424897293 655941747 921095141 963227818 443284264 944970328 485326731 883530376 880936371 921181512 536805724 702410577 767074488 930416698 471727331 886748732 603194488 836377162 324576320 662027863 869079590 973448289 963974983 966703468 923144882 986634458 775031900 944260583 527609025 868653979 515460186 585290652 964804695 993943573 137759874 263477363 120886629 986512635 849562722 900807953 52185558 791336793 752617637 914882372 248594328 796512984 15498350 188445387 255244337 808681107 211322091 713684792 199233330 996623902 47925063 636043234 343545629 349951469 501856018 627978389 122822349 964013501 196011638 475226789 461460157 846250602 421478715 867756500 603098479 982108906 742325635 927595041 679377174 948082283 132646208 256049115 174588385 425989454 756763081 870047040 150169698 592235207 266600548 439017266 775365035 847598837 437700655 928627210 437674722 861333263 90567380 880995580 727066938 883353551 343974546 696606894 783924963 858578620 244665801 308667317 433876900 741199720 363080956 913020551 171997554 612274625 871666497 950014628 276692995 483362560 212683787 658221250 128884354 718262955 845836682 946737554 82162853 647123943 142520675 564804537 442528461 463625442 894597599 993438881 149473974 388671513 883685746 993125476 264996341 982587215 905220827 953210682 205387427 446222225 912971498 994671820 328617680 882043521 290573654 377370346 141634192 801687276 91973875 480703016 228572472 875984770 418746484 455831140 979594352 994437477 437194000 485806102 130660509 814764105 514543004 757790727 247843634 355759916 13445445 357073596 74753618 586975116 568683134 959848493 436757385 688439232 620646275 884752607 415538134 984790903 938083297 964475210 208888955 809236484 427127233 535949777 163402492 725060432 717329127 997117213 389860932 828256508 724698313 898627818 703836891 814174244 792514808 853520604 3165586 934278045 323291115 682654246 805042602 960260245 804332924 860777283 512285486 979213475 928653259 981985432 607630877 871850153 201767069 308283317 779018907 822748516 703745799 881614357 227700968 781356348 906945726 935938929 402674057 593431513 636204429 956274352 305076084 625266406 304304203 490361470 197336361 278887471 656182669 759218690 337446435 910919563 531150516 612456219 999208702 999498147 701834148 820017695 637724913 749667082 884277294 990588158 280698200 733540263 841999123 903389969 45888895 269519835 421683014 644992060 948197529 988108219 155823173 684806831 2656718 556002503 12366381 523218759 353890626 590571379 842262894 873511248 1507733 735694177 996412249 997026056 15358945 890736039 893354333 924051125 666060313 760008342 907401827 934767938 683878319 973557342 196696081 242077118 883529573 958776021 218949546 664137994 849288652 941316950 621487371 973672646 369967547 775944906 737697571 978213517 334757907 967081369 183026610 866726337 911022632 919495731 894691267 922814563 730496163 815235788 180833633 415317457 156365531 590362568 752840383 856973573 103828838 466590619 967391650 979938916 653765112 939008811 299174040 813833641 35457646 927727999 823147892 928954410 331561588 522722609 216823683 274774757 991274041 997738047 777555386 834823333 664311738 798843844 194479373 655744798 56935213 747893623 504394092 822786075 610750157 908740690 323107763 567477951 263631800 831280625 152624802 673204578 245805823 798262110 171661092 497859808 337263460 665736605 961925484 999839054 438488291 765841888 360280355 554219525 773321535 913889466 609647374 871122770 654964991 723894548 503940893 812476851 788790394 894907853 153110721 579247903 870605578 878873665 228628244 507302095 526749418 538084409 418524798 528924812 140175663 220436661 735901639 956616515 226797287 283004051 53216832 740710620 438087461 696796159 763798558 925011828 12725093 555853531 832350838 951043730 643535911 807437666 764225905 985360048 626355271 845200449 138367308 832427435 450226592 967048206 14387428 899923748 756461044 758032750 229227379 641954675 480662819 581114022 187230682 367099156 900605627 903576346 610590390 790654150 606048890 847524705 119714294 322116247 246003480 276047243 19786662 746689144 347458841 950146134 858597692 991702315 532739928 727372248 149158467 223003730 415699461 437378437 592395447 901703060 596457594 607497297 967185599 968086997 475694381 563015111 788735036 919053034 265876457 544388140 9620147 525028306 108576186 528002987 778485831 944545223 629141411 865592731 142340615 709141844 221770995 309495913 4149784 867219870 474240906 623275090 320161522 470739131 341914993 415235477 323441725 617536012 977778176 996773290 26533824 614866199 782171662 839640209 920715641 984075356 36984274 933811228 940085433 957548878 319749873 623825681 371145874 408121544 216782022 823840020 190455752 875407485 599097395 881040417 933352521 985913132 803550940 923216374 567601917 741799712 64583756 448824187 948521979 973053740 151594971 308415044 644850947 741431702 597527914 974075125 355810733 460190864 222744051 307276786 165016447 242215687 570402097 952086676 478683330 671372746 428751605 985636551 411276429 976435035 259241428 282249604 742562062 942461419 476299548 524236869 715185006 998082631 108957915 764097897 574265383 819512186 494630083 653853779 227882482 805475317 376816448 518248737 116669244 399661637 89050279 893625764 968843517 973236347 993442716 998421711 346683284 931120711 164774774 838003960 984511324 998528569 409367381 458091833 173522150 273802591 310013133 873300717 641068437 966905302 265347286 424924805 73152258 646150670 822823144 851814046 825228717 891829892 170635514 488433401 130716700 535942606 231428591 324166606 91432869 260263550 284060947 405351339 555359601 978399286 892502472 905810931 43444955 366117993 956992821 965506820 122841685 762001611 556786255 720283220 232365303 666128565 190673233 477323225 705787068 958517542 507166540 625131546 841904889 961700489 869964161 913583892 65634128 592210962 573872679 767142224 166077977 576507340 868615496 981416172 526102437 971406618 789102652 968642598 246288820 597925703 403073265 624101607 915860545 917504889 376813536 399558840 616874577 642890118 603263689 910920706 61213182 173402891 440770425 934509609 587025113 932915113 578419479 993278575 813980555 950414481 836732622 910947154 23298294 351230152 166728959 792750230 748162653 840735746 217082272 732187610 1879871 971061413 46871848 971249277 347916919 930093101 682730980 849717418 76462575 636451435 586188520 854583766 575995009 926953415 60120929 314651617 323171167 937909730 208147508 643962035 538962899 642534478 834599898 908830969 101215045 227005356 455907963 735416149 708842871 835315373 539306174 809128896 8728232 610251034 953172376 983474050 144628113 581207849 401292822 945354964 879745317 926525923 501875485 965545170 14553689 426516240 475985777 628381916 113291811 422253274 301510050 691714978 4955193 806111515 910223626 958536027 462779071 972052649 230216659 590821684 27025338 438064377 642022342 689936356 242742053 517136412 699797580 897272791 702219709 761535671 484665100 588798190 128927758 891595615 844452446 968622082 720417754 793783955 62405560 253346642 197749242 949861431 820984697 983625749 684966554 688827239 579880302 748368571 701307126 863545381 645553673 885684855 873017697 958382523 138517903 196730527 31516631 821678301 137406443 294624946 77406190 728153649 17721403 85294900 58788206 958677257 220170181 859379667 36218102 607227870 326155943 509405164 651277602 732605562 158213849 831476003 552466323 661038065 766283610 905628286 131552604 768352789 12380523 669522214 209149673 365789851 176189534 396422526 284981248 566156034 259794617 757851521 11035933 318903204 739490018 754027291 416661958 423034196 762602470 840479476 501414042 692989856 903336310 928592317 755926829 924701819 456641750 923213395 487582184 808457174 595776631 686956133 785609226 940104270 203461074 746669167 965674067 997935736 137132242 655153959 279701247 895910492 417021357 855379184 30762108 609718512 94849216 218690680 705606254 999519752 64691652 896701204 915749197 938462559 135549598 358492884 948345790 952797671 5910359 371003517 918428722 959646725 462022344 618460339 980120427 996328771 474901402 689614437 602336716 846413856 740940574 911241046 583460590 607631551 516577689 568066148 699383022 965841769 833013911 988046121 582244628 770297401 304871408 460571855 41211730 989562693 955808981 967527672 479720051 704372734 42741486 830426878 781909981 986902738 873470499 955665164 449350035 919173483 188401847 647930547 88047965 292710838 558225505 595843881 535520694 659294162 140195891 256974570 602716081 955260385 241658240 801380106 831460210 932046490 18022532 144042588 721887755 756092880 995222369 995435958 916197615 977593866 812140384 838419272 605173121 870853481 789084573 824468511 852292046 901267086 588939506 660035561 621086732 848999117 868248791 903438821 888820004 938148642 653258152 711384867 703712434 802426744 639785175 698091918 227846790 983880261 856451524 902296407 19676251 986278222 582871803 995928383 761321565 855735551 711108845 760609549 403546500 788305128 405853695 502607956 335979808 687437584 530562116 821630530 837349178 939457730 957796840 979455342 161432427 873628999 23614748 678495543 863435099 971770746 323965523 991026480 884187903 962530482 415771699 803817150 737717809 838473599 692260541 778598734 947144198 957839769 858757341 967762072 455090070 957963612 805724270 998090758 807237246 885177049 201492015 439991181 477092669 998391025 429668668 827975239 830470666 885683714 142713829 715051035 82349817 587554431 710026168 931584633 743338037 866822452 56871663 769065508 711222513 824558379 841090832 983445616 835306525 842713892 523834262 791871734 395825249 591785507 25481339 645417909 111196252 134129134 764663111 832496474 151585011 840371242 387597276 808920231 72859855 233494131 150873575 192341865 260849541 924987071 648694883 757448505 111709522 221906701 128152690 301264543 916445071 932026499 327473063 512580100 930756331 998956270 271024396 715355945 101686034 963196804 919547673 971949484 886577425 981339986 176959498 231166716 692875574 792721321 779710704 991668793 57170822 408299181 215195625 322917688 448675119 871842439 866068836 967705849 398900151 702164961 855448872 992531613 783858856 969222292 151887198 264020571 294826971 380474561 984340738 984838533 252753741 298653136 520962246 678705052 382065357 626099899 639268960 895436879 277887049 596330317 352717900 808583893 893247066 979005690 526827920 881891020 647962271 945829182 174332294 811681713 283001579 600068672 484281056 767366765 930457363 971520531 466428630 499876804 618432332 938002553 261510450 579773432 830210600 836717466 970071596 986990756 174715092 944857955 255589761 667375723 181719174 530728979 260255944 494299087 100133155 979133018 156282456 672915349 380887891 932941196 69693909 225240610 594351660 974882428 502035327 974861218 770648052 974999030 970487133 994757247 22206848 672260360 894002039 995910817 241313201 374467819 237632342 499075001 348132925 960957090 228300959 362783595 282055340 705952304 77412539 368176718 246122223 833477942 896117964 922207456 363014258 637278878 748924906 813077314 396801094 915094570 289480884 965739608 490931553 629809663 627528633 888951404 304302199 619878517 900597775 929068530 129504824 374165805 491915444 544519056 930607103 937720474 251389569 753637431 604117054 949571707 810416131 911681378 938410372 953233391 845045065 987877328 25669510 480275284 926797673 990007909 466898345 812433807 339829880 838817102 102030116 902741009 290492103 468322698 235474895 470372098 777603156 969456601 81057788 496522253 627978321 873927512 760502346 770568147 394271823 492501129 515155793 948033575 709596083 897929801 970880620 983111090 916681280 993130149 504993581 640923979 635249426 726589345 497068389 505002920 819528617 965787224 260173427 526962680 784852895 805119073 269972364 585198741 277539090 515372953 475119846 634010312 473918511 826096693 467421203 906407359 551138410 866689751 81564432 931286685 861621527 932210039 626315207 850197500 850398864 853832994 297258861 312013438 405302845 415444131 172104270 322823919 665816961 810845092 766526774 937705880 389481019 736891389 791363410 959362656 583031832 745579727 916236923 936511129 872096783 936683965 542578240 617186035 678717134 830200906 261657039 346159591 318626205 670947511 563483131 638118720 621949176 948917438 28528158 370120495 600348796 814049099 494445081 988672720 814111548 966191722 614347739 851304649 868715748 896926714 702291473 939139528 489290610 867193671 755721609 876506591 913788585 950160351 234422456 682832984 519260873 938111763 869608523 981665675 481102103 695103401 771785277 816993032 249049707 954702605 403738932 621135262 800960919 895599427 684644783 964096812 910890412 973353170 627895171 644973783 757825417 987626797 730972913 833038833 688165258 741052153 38176246 351671337 198056882 848182057 492091570 547308478 267368434 965800174 790352939 927885345 129687237 181216191 440158641 839027664 718931153 722666672 11527515 868266889 876367508 904046509 645801088 920850854 419354627 847879227 457884243 622448010 287234146 701452029 117498246 371429432 193617081 338948421 141950400 931086655 888838779 912765035 586085612 666780168 481540667 806718096 601542664 785294885 717261707 983600462 1632328 491223775 498269983 815281110 599640 606504681 966460783 988880200 405285777 991682539 874014123 956975629 372532059 850271309 479056347 698873625 223097997 269394554 157668667 389704916 526746639 834246122 301978327 798211201 229665255 674401127 767905456 911065790 490344330 774417474 964354051 965860639 671917367 869152372 339459205 664583981 152501197 227001456 671033679 746135908 247501590 433617739 334471905 918857947 925335823 981186020 298948933 437930238 660759896 812618220 299531715 726446743 626104806 729272685 799577348 823632536 898687866 916205322 494968161 989414245 576668970 834287125 898866936 978544100 730514271 947302428 532943243 823325545 668089541 999730767 248758016 830132222 340737127 694762338 502949961 626757519 62753183 752012691 701818304 717056258 845136984 942249416 645230172 666658456 661543246 752787258 490724 87961378 36064618 835598971 407258290 477811376 390200593 933730671 39844903 358942963 974974460 978963863 533525007 987816849 453376915 470056332 390425440 764412310 723845203 729931963 282395692 581044166 347761810 407072076 371703536 948825071 551757899 992031965 325129313 540089438 896533853 981441527 68862259 384975142 629477881 940672664 345389074 930975879 270058493 407243269 627471118 658828527 731054645 897181663 966550745 995158189 499009426 722556718 937541611 980278633 413829285 757404519 997867476 998450518 970958883 987443842 46891981 806998801 471961699 831967257 724507349 755271146 347260781 611754115 580812593 976648604 568997728 996936068 920121211 992695332 497222893 650622266 439509340 537416295 402391835 937137646 755782829 838283489 950010669 977184749 390062866 578593578 307380388 464702729 82320397 683231456 531730704 887160364 977653860 986225874 594729960 965928629 117744929 363922551 977929082 985131338 145145615 307342130 470273048 481587399 976124130 976984321 350451402 872752117 493729189 621430749 693817636 865675017 857675715 916799536 320133325 954003866 666831278 996501983 48126272 481154555 737212900 892305775 600295024 963449107 692506814 893515691 634070592 727788501 675083517 826130408 385473016 442700218 295309828 578650466 758621607 855075784 922296476 973055287 943282454 945593618 276067989 377895405 294077886 844125961 292192234 992392029 333843170 348046434 426380084 592161482 100001903 755497037 661733652 784741102 22204951 905580188 614992591 640050520 874623019 887724637 871424513 927941923 181535610 410363207 257913972 984323410 501235501 912839097 416899765 753399085 907806681 989552833 652868573 865261183 264745586 523441263 89112299 962901370 132972834 328369523 589090269 721529043 428215144 598170761 937398826 946467523 110459932 291142840 219392727 502727089 924205225 993857361 900740997 996185577 313856476 632959097 729695750 855107000 274468080 948284320 900510023 941897666 912507072 952803491 733438983 836274882 730526570 907833324 88519659 623833464 60086052 568950354 586951459 729138688 67504936 691194443 274922078 692229037 419923367 631274676 145782447 731247110 905583215 911647172 689518380 739409123 591043195 849675331 339710759 944734298 465988051 792172328 498662403 592533051 707993174 746020992 982271750 986636441 492641370 528860078 267293923 703067693 190166883 856241614 798208365 906902048 764538057 771104130 567520038 827351473 728882350 959933360 221071851 399642228 376765925 392760137 704856520 787045250 28706003 793304015 779877732 994976041 850394069 872947015 901143821 967135549 21239438 803284797 319871673 415211058 317880423 751961119 204370108 767891332 329122678 392797867 47223813 863519882 569914797 598228040 575437293 683540024 767486444 791824353 420774133 860160410 596438663 654924409 728793204 870063299 230562105 904427921 710387342 885745461 822182570 887381090 719868046 862864707 470511959 993330841 820844079 923426669 611202114 760464804 981629858 990295976 304415240 868054398 825576246 880710983 851657120 854974417 497058031 709084795 20107685 730807400 198348275 519960767 260374678 335798145 128885313 668786200 392347205 478693384 210191574 373678701 694855407 815692208 494890957 837731645 751629682 874562768 685665950 699342950 389924796 542516424 614294389 942256902 438668813 850156587 619288193 839559532 276854539 349398135 776337237 972662128 595038492 757992052 238723243 704959730 784281786 888849736 475630833 549238049 105681529 295511355 4715335 406237705 486784732 931353666 686178360 811454011 178714174 360408034 658429629 711112749 270149156 424456480 696197878 726599501 622682740 747411905 591194347 635489655 172554954 241446598 141228576 538502651 356331076 866377939 806601483 977662673 690856838 781908152 689217401 733358415 917379739 927808959 547287130 720439541 862126034 868608010 346223409 766710655 859638363 869071611 690904161 776532951 760799421 848815157 917112756 988721086 208372889 271505549 485609818 860131953 423464874 635835498 290155025 774631651 129867165 163568027 117664557 596207622 118787984 679921307 400363098 896190669 639571950 772881304 223117252 929763956 266542990 791552306 774531974 945250809 668365441 913346593 650006638 746940843 468710183 887765185 35736527 811757274 856796136 958341192 814860224 852678789 729577166 828387357 481585849 817992267 647574216 671356153 382732632 810844412 899570272 925767478 369343415 751132923 103383914 396949998 682895772 859353728 874621334 936735792 428361976 777725767 875463875 906234009 839418814 870162723 209812013 847004388 400503684 475945259 679391563 928553570 760424034 978993503 712998667 972360559 263608485 524892435 349776536 742976385 201629683 846807439 489591053 644157096 544933038 701417841 318133753 439924248 814922817 988787421 565948514 648648801 987878221 994864044 194080605 651919840 785009366 856318486 661896054 886446257 937948142 963050392 853574847 857909621 334683863 603052080 860607673 988366861 515224240 583508521 784753018 953168036 960030855 966159149 869460002 908272242 621485235 925366157 876092405 903582181 500790939 927058733 843662048 977411401 758214498 784973434 876175744 932960695 684121464 830593007 44388986 870897883 437617407 899960139 813935372 851623253 941325583 969368061 873226650 886731365 99598623 521176583 659399048 853821357 340253210 967894559 893939536 989109401 526334771 572955436 151754396 532412524 906708138 944393298 491501794 754934730 23082050 486420106 130350503 887115036 503351696 519698225 551594077 855105256 435922311 765774330 494854432 732476155 44949677 972036996 83397613 96115028 896302123 930555872 951176937 979554411 818358518 819174818 938814726 980852760 841749761 937955207 556936970 953389339 405922683 577924398 77852349 291390462 529718964 563084847 231193677 446847071 60550697 386891582 770557317 919227730 969796279 977219556 665245146 860299772 322294304 388872025 558651096 949790956 392047419 701711830 964921322 965748573 652492587 977649121 63660137 801519843 643037077 846721573 128943023 929446291 656781976 810649135 703124193 996547436 388125024 785576182 531299683 579500631 856526237 912037668 69100739 273300802 855556775 863052691 757395655 883817921 661329737 902351545 353213257 370275379 980548784 982652486 244698912 670762490 745191010 988812647 687667153 878336736 78725590 252343413 822960574 902402487 323069207 980914706 113744939 835849376 535203847 930947286 279383197 877455366 866684740 948594169 232885880 742261382 348820361 824175035 584920615 652451022 902248587 990824695 667377195 809973806 801365491 915507795 968586273 969695220 793144963 805377742 64171833 230143123 500281640 894303577 889031283 983427304 855718127 930372650 821156126 939173410 700408301 931363149 374567945 594984683 510288804 596780937 797229545 818765585 794569690 962687264 945090032 963945052 268304877 800132619 736245323 937080376 469424333 777523410 486409987 504589545 571863045 692966134 20545851 800906483 411061942 900542144 297789276 873308348 786138043 903218640 751855593 853572109 469754856 589225643 882059968 930088223 220713239 858831670 698876142 735023950 834235025 968531278 32745269 256285446 197691209 680785884 597846033 895750313 9777342 840044856 428581313 697113473 376502981 909205904 316674880 883886107 199363840 767102985 436145494 749897874 992012564 998048133 863179088 932372745 813841576 998439153 945016584 947787231 566577226 867306492 42488615 622895725 184450129 776663991 469530149 826439591 122079902 293510253 472576338 822278190 615669386 812705734 55461045 498522988 846182134 961139602 354362920 360569550 684658533 927518933 420848982 427730043 810040776 995592764 712022422 843461859 723402780 954858393 475225357 536114333 969198536 971126046 722296104 924439364 898176724 994894722 848895900 883134144 47190812 534132243 517904795 982243299 958744679 973408729 842628881 851363098 564332794 610165476 194731072 332792872 811204251 835733549 749937504 770018127 989408017 994167945 228202874 996192790 913921708 977319404 868457718 886052469 915323083 927498388 898597348 981909435 822090495 832594456 537847646 679353250 743136097 997387941 124856516 473854107 567050218 641773015 688412108 725675284 60352933 655085958 869896106 984065513 156507363 991519851 22392151 358583062 733331276 740179908 733861082 927649595 482487396 949868732 694015971 736382999 128452817 129100876 826837082 904425945 270486847 299076255 468192727 511047236 173582115 708834077 768803362 841300311 428926185 824404982 566277444 939379888 976281916 980351474 925670253 993858967 445723177 510516613 205611012 402898166 57506317 118598306 353006187 941592243 766890218 769665661 267818422 303235061 404949378 626677731 990016821 992493208 352169769 900211522 743656930 797415383 764078785 893181157 270228975 771757348 449210611 898170157 984806832 999877476 780665019 992926794 890086753 983024111 244451482 675354795 887446872 956523936 93981003 180891008 770995088 885222895 253316300 526657521 285891493 381458168 754828113 825855523 474897358 673982976 812614014 933760213 868083100 899710250 17066017 432543030 747417547 827712253 969247958 990754082 782764757 922666591 279993785 991520364 573386504 699443620 687300249 801931301 790505900 956342386 471493520 640316842 724916413 921615749 847353184 977840201 497801099 510479368 757693493 860962615 293720950 681552522 215444428 495483907 215235920 764822144 137487066 253233593 894975641 927475003 63178053 251869642 39630768 749295618 273587743 989661059 648367770 880473958 275972225 848691251 52269120 841275437 191231605 814908038 276925325 341316418 317044004 779307798 262477103 640401129 530791735 533651959 604110423 712328726 104430753 690385331 552057440 628470820 422083377 696073993 823779869 941414832 907868961 937833116 684107358 965813415 167312333 986731412 985643606 994414925 298446948 998697008 550153762 773594265 861390029 978061353 304650947 475928706 309251757 456844046 678882859 679974596 664070095 819611704 178849473 709829816 36195839 699239987 883483855 958508678 202138154 710124895 428172137 584953243 46931877 885945513 849295746 849355784 643963088 923417766 403267035 908631371 519383659 687102272 975047415 977186029 787537937 916534472 484439940 495516741 281643664 560518173 211658409 704388188 109934153 806738530 778140667 852797406 345840660 921185859 95183453 607946712 248137912 974942341 525933699 874734750 787171076 835185233 924423453 953981751 563403307 700934756 61569515 517210648 935104130 999564196 796800087 866011641 665392293 884990091 148025318 437259354 694556372 762023704 6162966 44438833 963824391 985365765 964793798 987417547 405636888 497158447 182794831 264540614 533501370 921292021 272248611 850485376 201852863 631259846 284684650 349067870 2620388 335739903 602005122 782108535 689372046 724910762 666322049 884480990 491813777 776427515 21112169 539983622 263218229 410200682 618009895 666409699 305912551 933685183 70066412 129491924 957978509 970701863 287452699 447085303 630788769 926663208 240692454 820246796 876587457 932018415 754847959 813014919 231185751 867478600 20099773 48919478 355664249 932851429 847616083 923154981 188322554 234458395 127285905 569526815 300980625 495940803 937083079 985281565 725075232 856877311 610576623 874343561 556355429 855290758 60106180 911670089 862464937 966379565 352462155 497607717 810386500 923402849 432486727 603176559 49594531 270405835 417454485 758171932 249280641 834434945 901272167 930566859 690477701 763937023 774877120 804732858 146175814 219713683 361778327 486268849 117385412 777570768 822355085 930066238 766316964 967756052 817093776 934525943 616876548 857783315 817781083 916425903 843990003 899771585 130979603 359386501 27502162 578279452 529594198 856534056 984348691 990813691 996916733 997917095 559882605 854821864 106278067 206429777 795172517 947974203 263009102 381900115 718618721 811304406 914208598 995762865 956854216 958132221 906817797 917848940 157972007 930765266 763422687 968306598 986341330 993785271 138063201 891300765 826156895 951654842 73401424 408753046 866387331 970324320 613681044 632709509 556659079 939546212 954773958 966711567 864101332 866758557 9223804 76232698 556776328 931236957 886402839 971056809 664962017 799564013 711692579 891401592 598633560 765337768 253105360 799509183 555464288 560981157 676304483 878343458 844841807 920130903 676120221 706751621 298752220 816411282 971899052 984465799 482139391 492897489 809368293 989236974 574492074 575433507 518424138 656149544 238593673 241775479 991951888 995762777 471725419 921143475 557701275 841291317 160771934 409526902 4169192 370472156 263682968 827340925 718396535 799641660 470078275 790551918 494040295 678623773 461058602 872757541 912972444 922994280 418536371 796168023 111320506 206135161 29213902 828995418 957367437 996295936 846378242 992567248 501126336 502747183 52283873 209399727 853687122 919001682 638618780 973422833 192546308 903651153 331172992 490490019 832833126 903754389 760985767 882117304 895127559 926512712 585282431 750486959 327061213 328717866 570868135 819952170 885402952 981874247 240737702 337924003 92220913 117176781 319742160 452726404 881669428 903840700 71143908 783451442 24872078 703737188 926560074 967036733 639076228 973115676 485957850 748260030 487658439 897014572 73385923 853940009 49419589 504556690 860094921 872678681 33479646 780111050 595102671 928895721 686580882 812728732 164373437 767291090 483369616 647501775 147988560 353887975 816189843 825351796 495520365 630432259 61332693 809237210 205759790 963480048 653229780 684433485 115141111 800137233 369624044 482297351 220859227 580071854 478284261 774711621 342832438 758366760 206270415 489735705 721631898 845096673 558177900 979681800 985583230 998923098 689540308 879495601 991165185 993867780 612482257 902067399 300495629 960582165 162008091 244973231 655900160 972685048 549957338 666840928 918473038 937385083 288738869 450007769 523798140 752539570 490688704 888135635 968456314 972875004 267312844 419712610 28738686 614378747 343606520 927187500 314480548 519155549 552065360 941108950 795179501 838015624 236184777 711650951 848559688 971269635 224096411 374649654 109212743 126488232 968208469 981708651 633910470 996244017 492929344 499870935 165761619 222138743 964052484 978871862 818779464 821855658 839664556 862007120 512780474 521597236 472476541 883654229 548483472 837081265 16624693 732341599 607445634 630757516 485010571 622040665 602735806 935893575 501717053 922267100 610945784 889364461 659379419 925899252 31168403 896730834 458511367 939187866 664218863 792882220 97099222 589924421 365937990 760946024 493818533 555834600 411438989 516172852 390788686 842983492 55873071 330509165 234418881 246150800 836994330 986763978 699282744 945095048 190397423 824339781 851597659 877774094 436234800 883726614 484418459 944173046 872700768 998034234 831719674 851594296 972337730 985409961 709166440 965998106 795631714 991577947 302819834 992252609 863901377 972204619 46310285 879209459 934437507 940941062 480743112 558595333 536458647 729398214 168513793 233674430 716075610 940780637 620842226 767897824 102574496 633372199 422865258 943766162 74118734 512538188 287770303 613649597 108478808 427958864 534814418 947615926 654486305 842834547 547915761 687347299 493023321 631856104 540450214 551874935 891076171 893209136 301981795 641818991 890811479 994308011 49905668 687563498 363079357 565943721 738082261 741420424 767589097 792216521 281737798 602448563 904930394 985201295 586579606 782099725 56399178 469769669 738988462 956406194 783028005 865755820 762814872 767366206 397393227 444420605 685973266 801867347 331595994 666915168 396664173 753666263 241685183 966544139 892964730 903716499 930088241 984940441 833510321 950283374 515132176 555580316 456423934 494319395 383175116 589635438 417447116 811558579 899607640 920406301 708808165 874536927 18125460 886780711 39352126 444838914 278104697 287618487 526205975 695136756 484244006 509526742 718830056 811277540 557640920 711122489 637666327 773966608 570837505 628553303 279629158 800867520 505768243 609332374 545495559 618503906 733702322 795786047 55833630 505743523 345498663 564251334 19536166 820998055 122630162 644443027 770256941 911129385 147285218 548970498 431563590 594342929 494439539 595554640 595216391 614274174 489705723 928115320 269498889 537973979 560856829 821376471 758960834 914717619 755035230 834765417 16086279 670323497 872992112 919580615 873498648 878171469 332674409 592613158 897668814 940595252 416287302 569734431 163927458 235101039 832089223 996515690 12033325 658676019 576028898 809182497 50676833 367291768 484125109 781326273 846154587 865212548 941207275 950320795 340720133 692098086 697591527 995198307 357494139 808070430 541871590 615631512 805517637 836300521 362512204 468152897 931982755 961594541 723376751 886516278 782169322 800796880 941489378 994804742 713792488 870141996 921788920 983181535 309598029 399371182 154585375 203563106 575827681 860736282 368051293 890272002 778842989 891621759 65867169 366900740 613412039 872264869 566351807 882592408 434471323 861889279 668737824 713014359 60939968 488269725 951279044 952874526 125704733 328522870 44849146 765133217 925359989 938650153 960243892 984177742 442163788 601381390 292218124 972645716 575701579 654449554 141399720 788580564 822573513 953712976 311894234 630123083 338767923 732713142 737822313 814186507 652994235 723558653 845575254 890702788 961955460 987880748 821878297 960163141 506966451 626962361 592465771 737325506 629257521 844246933 620558258 930250177 127302703 453535936 277930645 490768522 511305804 522524150 3713527 87645184 677557364 757253438 690341544 877952219 286268968 730854990 179158937 252001831 225498363 409444297 599369852 715116672 862797569 914157103 178736954 646107946 363833867 368066034 410491700 951032538 951168063 960240116 625824574 717712980 312590390 855269704 439219360 778338502 717660709 908159565 33818304 197801053 488248534 961880393 54422090 928897277 789288584 982867397 174993281 850960631 713015893 796684294 170226293 960247752 895102635 908216238 301073793 534309687 880873194 892503927 529902506 810398754 942995390 967470271 681314103 731148425 252496546 696050653 48461291 656375063 464010938 732632598 229727939 652254593 677214777 795052090 826115692 999223950 265258677 674777931 551424836 971702678 85357636 755494759 450034142 644046524 305067246 364321193 608309687 835975406 683872183 712386144 574466670 870256411 670940237 781535825 992924475 993288565 248152172 386338130 366735413 485611218 593452249 769809268 15860531 691937020 907757246 998603935 493134908 992451338 716176525 790318909 22941651 998006908 943718907 972330515 942892660 963270452 347081552 450820930 556128088 966463001 534286337 623109379 693536958 992396183 103690661 572331068 67811560 834009497 823779956 911594105 469350917 738714542 878206505 882678639 224869957 496265609 38330954 356639072 75250808 303621467 797963798 816871965 357321989 433567928 133663026 604637199 979502714 983250871 465131526 764265881 883076214 892175681 204862567 779244428 326201674 897099643 934469327 956331450 131726597 674837094 232369650 391432546 814583510 989649378 283836821 412497813 880962742 969808767 431942503 574949627 849212163 900910427 736096397 959271742 577382056 620377762 272817757 411385209 853259382 995482932 22616384 116663897 482412006 756720416 316693772 668446448 121442831 985250599 658175230 827704145 84505679 548152422 201685172 261750778 1394065 295679249 294921262 456148635 716420210 969927372 692836364 892114062 858936159 862700349 589705545 784182740 451378935 729379193 352473820 917440958 805838599 817998763 971673716 989076132 245545814 714814367 396635187 531434481 713681616 797660295 387762134 797607946 847134020 901151739 175629730 470622193 110262300 813314441 717773995 750486828 209048699 274386981 222603338 411708811 335035488 913316042 472051795 483962323 236685750 990331491 999370754 999380948 129589295 544223897 666528838 776881006 87239492 253841854 983682674 993371045 604262838 725763190 974169426 976535032 291617019 590788367 240502266 798365427 360058912 565908102 255688633 427683568 16328074 630949963 789386832 914228437 210774495 555734467 165095260 167134461 102365642 514894692 568777000 963430942 133393574 199900530 598657524 736553123 967582324 968954741 476644572 877985189 88465778 825965300 46408155 51069007 278059759 819672034 52701472 397646394 301553840 747903870 214578292 634940813 197095924 810255371 318949061 439357952 299044512 319440803 74761057 493843358 811359283 855565053 765519126 848885430 796132673 932512335 102610835 442413345 822179425 905044100 131132163 346574206 735902449 912495989 563073288 715726724 123183929 138401554 84659099 985562325 454159311 887669346 155886293 964075381 747950083 959348146 550398146 604034114 288652841 565555557 889103584 966658976 365659213 402491295 585836246 727891199 878461660 880874301 663635491 943107058 193625345 439405640 742476170 880973721 169836159 933847922 925770621 964625929 375577088 561200032 71767568 396992559 222032515 703361937 719303019 942049726 156028498 187127582 234887335 250198503 858210567 910218366 909938901 924650680 356733793 370815200 23698902 493691195 720130686 756662229 710346147 774273256 692189662 706810150 702494455 766932811 588124263 697271313 775741938 974111574 190630213 451836947 294311528 666776455 10324980 241826474 957154167 993849696 61594297 465837887 348727169 696653923 500755378 637071793 1221835 535391718 655434849 910726459 549437984 896015018 292536366 912853925 873817165 897483648 506501504 761407746 297869236 808463699 308128763 508019667 411448295 555156950 770823449 935390041 122809789 573625375 625749798 993704066 523178436 944464928 828698639 945919354 941507657 942171012 506609462 738134492 950182851 973148775 137096921 554251443 329615403 478604575 160042233 734214310 586318431 970680989 618625901 805575022 499246596 633891301 278546421 887969089 400617566 705322645 433399035 646295712 765791523 871700755 486978466 538956070 897132289 943702560 389580248 731590678 565718819 689860606 846460406 876210081 468326663 744466207 470884959 694317801 158078729 573349636 856330344 989248450 720964534 786055938 36105789 166060148 460047052 670477092 444684623 828267631 158297863 624074884 876198730 960226680 206534424 622061571 433591921 896329113 52428987 803896777 720712153 994690024 876122129 948585575 920319543 926784542 968975224 971140576 104743153 486890740 167368455 830215921 83733213 858746846 742856932 980128675 210704000 370972019 231420519 608718538 647318233 660189285 834581170 858639808 858575400 936273621 102930757 968055695 554098092 773151030 96920502 711012507 154791998 788902641 372879210 642463150 355332130 648258944 511657736 606657386 731546458 990792873 503357756 793455584 780997150 864347356 942049634 942926109 935213880 948784739 382864352 983639298 992392188 996442605 330922618 982052564 405299914 987041761 188490508 433107754 906709668 921528907 793048106 800982759 881933530 964530370 359077425 974056624 539016637 986268922 306869459 873134947 424453341 895722256 547237215 586229903 593096932 899479847 171732548 361811511 339972449 980117486 681358187 734360648 837509082 876001024 381371062 702815324 552480868 843371060 666765658 943895419 74037217 817898635 81548433 735466942 425113500 855789999 675682394 972953860 70901682 250364381 638171155 883324508 537396576 831090303 512499397 596995797 154083366 967359175 543913083 558486198 298442482 600894496 373988689 835721233 794752883 817232888 747108944 987041437 115586965 825278340 730567134 857464217 34018804 746465811 169606318 611647596 224938468 767854442 515811206 639649859 98669431 188087658 741182832 844870319 507594466 988802108 582940593 621802671 365759213 586858284 183796719 668930341 635465616 964432928 895566763 963885961 629109635 850407398 945602965 997508831 498725240 869856094 159642333 344847842 444418289 460717120 822932834 984826731 25407921 494725543 507172243 760500134 120859484 577874853 421746915 857022082 331180442 661743440 490859205 794186859 338217955 949749015 490334777 967050364 528186107 852066164 898835994 909973548 605226601 668121087 172650702 628014524 872511342 942379618 851906813 981336121 970895624 985139619 594756917 920158809 588239496 674150713 536845158 659453600 536520745 670340681 784823753 813970287 704478306 751139947 635277724 971281348 718411068 986433092 779887513 802479980 937427778 939954610 574900035 971479506 926652573 981096204 954394997 995175555 232182390 681166919 438586264 999993546 67490488 152774480 700864635 770281855 256735314 700961212 344460707 375397185 363898084 980391870 750218042 991507381 167663186 445998191 183173952 799565312 870021933 988067559 39943366 852907736 471656813 475866024 49934052 357515018 634273147 666274895 797076473 890330880 977089954 999966081 294610839 649457255 545827694 569199470 323005186 537297207 707653234 951745967 964748033 977768181 743605859 907822633 354153536 707326163 212314483 784029393 350497337 360860538 247575116 560321223 182624947 276776262 984277514 985184403 642206331 864771001 273854559 375666622 789303600 934366298 16184586 258863604 272324227 343598149 977343024 994516231 853696140 868092105 938148953 953593730 349673629 532499111 862887270 957452416 22184653 164572317 787311446 986698548 695761278 798749561 140281047 407565292 449310347 738062331 643907994 713134977 892302094 929328119 957224725 965390677 750554840 862272488 78283831 238235367 779504247 881017074 942723086 963646250 88006314 277000806 285363220 859095724 605198892 900739214 166439943 285771553 644575260 680877415 754634013 955978373 182090890 690905756 530776251 678093953 649029934 889994944 930764314 932230177 658448958 700452169 197484728 718950611 633820047 986297290 180974820 674566128 492241610 943050315 539305500 703993860 563877558 808839569 626667320 806957698 552474058 631104842 182803641 443681328 416114771 544496371 277592667 922201194 790298002 825158013 668353947 961273584 518144433 917212141 433007591 717938888 488145442 501705864 686407483 959761607 345880291 398716662 961523143 997780101 183564852 325727532 824449438 927093527 258580404 310515355 47373362 432461694 711989189 949486307 376974785 784927057 788091244 860134004 50208054 733817130 528801926 537360763 471147374 521200346 967923065 982571948 93463865 672011878 582079092 990589610 387141437 591510038 538889471 665466298 96380850 655448340 562713261 822304147 128839329 906606903 711050933 816218261 983087429 989157982 759647811 801696361 408334111 768095280 2986357 210981775 133837402 609322455 572180624 836890352 218201563 827152866 378677770 424305678 685811809 751697364 25548619 121133324 614866537 639888609 543778246 859779096 27477277 387513193 148875968 689400367 978510544 981591091 935026673 964742641 354103077 858786313 122346361 377473295 754403041 823609692 766459864 903330172 318301845 867207583 271948387 851055585 634548776 945410050 268176026 623752217 962648671 998223831 136151361 582616733 332170317 739506340 276836508 614669365 93949319 850696895 868849744 890199455 701616733 773780333 613213299 976876151 614106126 666257554 734037584 878510163 292357623 360219122 944397823 977934892 302043666 404480518 586244953 806405532 782118084 816484060 603207737 864478575 70725842 220020171 407061929 734381642 44382076 661636313 759803149 822906803 20404481 797287833 397823879 525140040 724889029 963084010 890007193 988716117 800696274 867957041 675111519 676045337 45207870 177992964 729430583 952185305 732175760 939785216 611598928 703270011 805739885 843751383 182005744 553446081 235311746 562317791 474936871 709874297 621477566 873714559 679838213 742784569 631285645 705577888 327490987 405612455 86593013 499836998 926911509 974938384 278730314 602045047 102232286 110096508 103449756 153402954 347814385 364584432 144067877 670471149 609240373 900198028 217023182 860249247 585985210 793736306 193686204 330948600 746879622 961483786 360969149 380950925 244669541 753148111 509562988 940937377 129670950 169495841 103799938 240832995 4196427 820515788 112895240 118320814 216958832 355922276 220108338 349359179 519342054 602511132 908783354 947023801 135949872 455571296 945570210 995904653 152770104 336528939 315888426 735408285 125276399 266551062 60741631 648225874 32440504 332300640 5692103 818366632 515730703 834129378 777500346 880130317 132696701 306359073 996890917 999819185 910068397 943576566 664014854 924685583 594861971 635796436 570228475 723372082 293400786 795630571 161602674 169244710 215849595 528664754 704538011 887822260 744041412 809088227 553582647 661854208 314119357 497602861 7104668 744672233 893325094 916014381 383933096 468631573 103397651 922102912 223482655 810675618 866865435 987316845 243750940 425812130 723650280 770163578 54691069 120298832 695510283 695846018 707523147 717091891 286421977 408465322 296900149 687582916 469669947 727337664 229758187 780403662 897638448 987134204 967871736 996383144 615436271 716800240 345834282 366902015 811689684 884898762 795821773 821666722 980119292 998409248 423330266 862131355 693745675 900098020 140591770 840472072 707502355 877146231 469443305 890004553 857372780 994633727 549045471 703049567 550481141 755915911 621292228 956082941 459873552 801011519 949953220 955506570 808435644 809415508 692209496 782700253 491344355 796129158 51996195 941873747 269538450 766381691 859128532 984214188 124911498 986974846 736326020 956679534 699160540 814339068 519443316 803957581 230297982 893758343 14506895 842861584 747095940 874774348 433907454 504891050 883163303 937409695 46389846 775636132 50489611 107256935 436582301 637223422 617429462 638387638 471371141 637239847 594641103 810188047 585302940 992081710 931649536 986492899 434052673 975454976 670470866 674821330 372598097 885394323 139427810 671694468 421423710 596341992 908114173 942331565 319316965 874918454 770985880 776466900 168615444 685075575 479920383 893603755 362639106 851609553 150454628 911219429 787606939 971888111 765854786 979667552 105415149 771350143 785123746 975008774 573483931 987706453 764269182 812744829 812657836 876686642 352087387 983279850 84983868 111681175 951579134 953186035 757136581 936634666 438639147 639586007 337950052 424337975 769901873 836985901 974688553 979640181 967367681 989159832 550153151 995688987 713692023 816534481 768408049 787797071 776688652 819628197 960489994 980385146 880483031 914046763 388313973 409102902 753793729 908538238 307766887 543913167 734163132 853145541 45998406 996313863 101226577 568964904 558949529 615629268 503967090 965547723 437465016 511636702 563406792 952425297 195212867 684386870 339939389 842974372 552485486 552743767 780198415 957593270 902350163 993912412 8299667 936419478 134138500 670865343 212465623 388375656 526428664 969641165 421756292 545855611 61264575 845237990 62806494 357535840 301016141 582106858 827518401 874106708 89095299 679135021 291151928 869886492 665277854 779893016 657136918 805359688 700602079 908480977 936196286 978683173 694990067 840800709 171162907 305143759 31639031 784333645 757880917 804002547 274246304 402452283 919883497 924196704 365284490 760678834 596941893 950483016 766821985 831663842 840049083 960018003 656297006 947878279 644984426 789003250 294000901 713662397 412920590 436086099 644690451 933725156 58118157 708385694 989261727 996663172 139142385 187421802 848400630 903214660 722103158 855932630 500040489 596992778 514521860 725061111 351767285 740780844 465448916 625447212 983391615 999372212 697889226 746555489 848328848 860117915 624309370 699752957 724106834 872329450 819136715 907664522 943338508 978587432 282625303 540451982 364430487 505200482 931472692 945708607 845177910 915375913 800308906 931313543 874615680 972285920 594665268 911879085 760346003 850292759 113800669 732524388 465260750 846579798 549656839 789165787 696351105 900396669 666324259 874698605 366137575 817369576 440053964 523862604 816668246 981318215 197084728 988857951 432467488 828886997 719539198 801472971 689281888 896936655 164356577 582486459 260632838 678011763 56900115 909723915 184313826 745654303 130380205 293486515 141451477 363838415 925753323 982610531 880057216 906946353 960523717 966854862 368591912 553945526 924117082 979547689 592335027 830281470 136259392 748912171 86537909 384357379 322098075 882203492 154943268 720433246 747040302 760168292 870221179 917726949 43818909 320045691 607039045 961578540 559281789 852823056 38777563 920149757 186741716 351020177 706969658 820261433 194581545 271648526 846376114 921968698 897400406 940840358 87954746 127766287 403164421 858093042 555598288 580546915 405635659 627946250 166527917 784343712 242103808 950377533 934775623 936091810 564251305 766257639 789302545 794858332 55819338 290895649 628803930 738260434 816890711 987196370 488536359 616697271 291406582 488572486 151967995 842913717 300638427 742110299 297966394 879918554 175257430 554149932 164935166 650373511 990636481 998721968 480592903 575811003 784683285 971531478 503692356 629756191 658227679 932188508 955606128 956357597 885521458 887585965 661433774 834332164 612448544 761427697 270373568 563279858 4890042 474867380 322133958 505414087 89022725 797728823 574194098 733568023 622493224 864146189 956830394 990837303 647990653 817995185 326280288 662421357 65170052 891504889 418501069 659217162 621276507 827373686 343859663 738568871 984292331 998376562 325741159 980907336 456815666 824595149 312130066 355458792 995318119 995400977 424660745 459232516 509113247 662491229 525138702 860567939 452320905 499167588 154606611 920049798 11655418 947343041 753921984 946574419 221066668 344782159 808391290 891187601 387053841 697087887 575912163 891678325 971012596 977175119 172095605 558936977 502436013 693212436 427140826 875988113 723820497 977448561 520556345 971788778 314901767 816452393 138058539 511401041 574714056 636520844 422646386 898466743 596917627 625902123 738752271 877795820 500043804 973335430 479699597 867241725 488419127 932134127 140083170 359790687 599149730 660357437 423413160 815051743 925947379 938492054 781967110 928328187 137462578 956831405 101852925 697573545 736042299 917481433 317005585 828852021 562263258 703586629 788937096 886982355 237768115 335940224 225683226 804084367 432041056 937867346 513376428 993340066 528627003 658358650 405341387 676249091 199397133 551802688 444474970 558848726 623990240 877611240 407016569 415273671 474956890 939656957 617951420 731011668 266221288 671245656 801948715 812020052 449721072 464736454 156143823 347582141 867590820 890639273 588740685 621931393 595527705 715854583 384634750 720655949 299844767 824601741 939129175 988908232 5152949 380243242 855792024 881972154 549194458 859162693 330719564 994798037 729117024 952081446 499908235 991749618 384828052 981818463 255797816 570442984 979781981 997604234 589526107 659054596 780154787 840935603 474065346 615167600 815854326 890101673 671881379 861691758 928863750 958440881 687251235 761176850 914631372 970015322 848037358 950504509 382763186 899441412 737871160 832030720 513565784 583222754 444846350 485505778 788455455 934880694 489887835 589782723 120041428 754431922 414456894 913756681 293075456 503109267 550576369 589963333 793646474 812279414 445326814 736649180 681625788 887473885 21605925 981607142 987428658 999951426 745607960 812412145 466060998 960982130 439883936 776809641 611747966 734609061 133079862 559537912 898570438 918004931 109983484 278803483 23024049 835945302 257964152 292906283 578519825 724274222 984704366 995604387 699712814 735284619 57693045 557533991 572995349 987906068 455991030 801055092 325181668 647569078 915050159 939485011 521955638 836974837 611319620 784707370 663168450 982790932 797870434 867585188 550966472 835884468 476548735 813987000 97656205 678857978 417379978 466274776 779657692 881060019 808335140 995706850 286172443 602662832 893876018 917322690 257042086 439750970 631185931 865025332 699289479 718383976 948777764 998837460 733051362 747064237 746181371 796269028 684240963 795059876 369453220 905780237 473643590 553692452 896942211 922267455 421257903 428680663 376806786 828832702 995336921 999103060 165690281 803219908 824802796 865191948 790232461 905062646 743172079 912150696 727965992 840814481 22589621 740863128 816367965 881912794 191779841 814450835 667179479 846554052 250256425 587296849 906616879 995288499 912359303 952147141 695078456 861316494 491999506 593227094 803422835 996754192 174325736 551127676 986109512 991062776 956684776 966623569 656127513 955708082 120200282 366151734 862008077 888871253 596802412 787922536 112226475 806370600 859685891 937950091 667356682 820413657 775804030 808704779 112750673 625430566 851862176 908686767 462567369 678616595 918983543 977437215 977132007 977257628 658347111 728238554 438561976 446171815 495656584 551612256 222850573 469053228 135158510 165838341 231616355 290571038 643220415 846177881 722794787 763490579 383675236 594815115 224053146 610738970 650637820 940844038 686111230 898705458 357598816 395840910 212292820 249756371 719520872 960000691 516167911 896532864 889192837 961605526 800027281 865176054 419024342 461035134 21447974 233438284 95205365 603003326 187737526 648823104 160114032 816828273 889415044 972132634 488874973 808048543 417570004 881335395 639373318 992889622 46146597 418409359 366444966 841054962 183057647 325931716 350215067 579247507 708206362 915301202 781500902 897683247 286809426 461380923 45574587 202829304 397329159 504727156 441867265 623400801 362514290 735162314 646445544 730007580 885667974 937948820 480488679 499295040 758764984 878344338 756734904 894693521 744803347 881195563 134196142 153890173 774436203 802495948 629333134 687392325 117891848 925868422 995924561 996291349 926393942 936230127 495908018 910207080 506168438 943950462 972767881 986052257 41431122 965601868 524345514 913734998 535311219 925544552 197859790 692930721 498041259 853170533 711030418 717937480 464808722 547642245 865146244 995309735 56041279 653129335 674779346 833961524 157604306 697738889 289543277 376677334 3717890 330883766 710126033 977333336 222473060 820322906 316389010 899836274 16476798 253065920 331458442 479523628 228820765 369160475 389161642 833531142 715031690 967358638 535964928 852867143 860917361 911601453 384693463 459987878 188535470 783685143 499352596 577832086 953602096 980771738 401368709 921332439 369935207 963662651 173362145 303128972 887806602 929706442 655641548 979469342 91525441 919410783 631888148 664836623 21024118 751397954 636059844 764464043 866869556 900661311 340628786 781314122 467966877 503075294 473998437 603760721 427438362 658066455 667417330 926951683 378270388 746662611 669573280 950746846 38693250 700421453 981850583 986016812 904929500 995266156 99446027 809865063 534431904 822742790 644746472 925903207 261114181 923805714 923574126 958832724 700988687 721874826 177479088 811556377 658516733 675943589 211402160 796869454 778030184 829574925 729099627 927154264 399910338 688584035 49197224 916083209 231490100 415121119 793245170 985402037 530909673 667280413 132227010 213214969 242438066 786600497 762029703 865489624 548177861 742842481 980527286 983146350 677706146 872399696 30855546 252158015 960510601 975690828 869419598 950544713 261496947 765986243 767642316 998535309 785548108 790768683 914999203 944588264 289397464 622139789 647380204 852265380 679117651 870838146 808554219 997096743 360055547 862463935 753877171 890915711 530691051 573972639 627652905 732217295 605147489 619729469 159022375 842677962 856846628 956967687 451651037 815758132 323390153 575094239 364121863 641953948 620110455 996166590 578868498 766352659 595104645 641494345 719003951 831945567 751685406 932402274 651930335 698628812 515592891 625152149 678131424 867906683 561155343 684124208 610912763 774444138 929081081 977913122 253365030 482715064 684253065 762147214 335817448 400483113 419643870 913535793 801151543 813195207 801089668 808597304 936164717 997801898 303902799 461010615 90297424 238962804 771715670 799228159 498878978 741333361 569096383 875364518 826223756 907426391 363062295 551788086 706882897 718091070 479431324 892100967 358497414 449335772 231573308 253769864 550095289 582085594 959772495 998063844 131588640 149351655 864869586 881039325 524764868 989004174 45990669 707098004 785358175 962172975 925598973 988518034 526249089 726599942 950862277 957052274 92220309 567891194 893918773 902632623 10690855 229234110 293830785 705555518 850982217 902753615 823309733 913544644 637280630 831050343 589116598 807603966 640925328 969892761 679102653 704530389 241115729 358721061 726623843 864767145 321191586 560218743 515363619 541800327 581350538 869413549 144705463 179463241 724188366 890244900 686564868 769567272 320376934 350726562 129789976 173818816 53618203 645316936 207525334 250935797 568599088 777905710 174956122 527932434 459000533 982212611 411453094 681140388 422316101 561893577 201447314 556474831 63513133 909265008 154329377 474977042 169275194 396049272 46198957 948398544 519991992 840532672 543337607 697504187 962577503 964909869 232993839 638583738 391451494 396980375 895161743 934400360 843939228 942376387 564635238 628841572 310338800 577875889 430262048 517592487 722734437 727098114 457982275 702507534 225266987 833533348 547628704 765993724 512175421 809352483 357344144 571306926 142313931 375765965 505823841 527740584 413593926 895573842 11777414 994880546 639022534 904429921 948270247 995006050 135659789 609942601 545233995 789365123 880422025 915538089 178606405 451900417 530444095 653274258 222164810 742163064 419191174 800403060 135475879 858576388 775814259 974922609 517301025 925153743 26601488 171087882 414921359 807829352 959926716 979483446 703974910 975442635 198569123 572140169 371184286 827279492 557641738 650482701 555651765 837037289 122275184 275274920 782713323 982248725 672319229 678487953 426232463 731553490 541280893 840700192 807633788 966286049 720119240 779626155 755887623 778438561 470275405 764362204 427864383 586659632 607365165 689700360 735066490 762637741 320063805 798558567 929873771 984700144 728269652 762044936 969494479 984011696 483692298 677753973 333518503 834622735 119521967 870046567 264263052 347147627 640846222 741390057 209771221 624310904 435714304 560839912 6944493 558701506 606290154 627857996 882468982 987236465 85160158 962263199 254896813 530960000 702470178 758121657 308368471 694653803 298255474 968560782 75706502 507671019 534792412 701059385 177028126 528890018 165477452 447578608 284010569 330209472 92332839 518515709 516026514 676691601 550394857 663552046 155613141 172985388 274958332 302100808 871791340 962837312 162049572 665019186 384913229 579176446 958667264 966222660 623664728 903150110 910615040 990398884 979450191 988496400 782170841 947646860 423206542 451366822 249266929 786134376 592354392 890904895 884530431 971927578 470776120 725381910 743073471 795672017 322560586 564768757 562619307 964612450 98217711 908100401 977578754 994228140 642099483 646748871 477108989 931514179 540744884 763101442 249617185 549156162 823497704 875981686 806862207 927298077 929155761 963254027 908050916 951917730 551283491 842017614 815333547 922983166 326833082 461573249 852738924 866448194 692955817 823891921 502578819 537036642 127083434 908495134 386869125 922155901 3932932 838619059 643649464 809409095 510862518 566924394 714979414 893195659 208044377 904286222 782331378 825982562 876107116 991642732 663406696 875952249 128758379 403342876 503447448 585109816 553431929 808913797 632724407 660263900 917966764 986875661 740083827 981766046 256667114 909072219 433604471 600563322 948372452 974368853 177492201 972619363 895606355 941172296 671053378 807173720 175765940 677728445 108065318 819378563 674375192 896839104 528113167 714214140 676781997 852525015 217517630 716901333 229418328 748420826 427707051 728346102 79126637 571056103 560731214 772673955 560276310 958866841 569627973 592497120 80920059 723163267 300140953 457111767 493003467 802304606 78685678 246793633 892090459 941287411 122896184 759777634 43337159 183470415 755464966 810311407 454823505 640580270 100556167 959823852 819134812 894491284 534104481 795560933 37972367 780963544 463746379 718412431 769246833 968826823 633921529 886912340 502822909 821083292 56343941 460321271 5938789 276690988 551723216 990688660 495010930 512255568 945059059 997270561 6977734 500261324 327868648 335328058 664714930 677534771 214075452 531258017 775783214 895985037 533155371 824851699 365613637 528456876 780654099 874989947 64824723 948448419 255961678 906614495 604587730 964431183 11958074 812167115 774157268 797634708 389710004 684023463 895556844 953749988 224611548 846991930 449915293 543123705 916395512 976021200 231617414 396903115 702914913 777734108 278186865 921837661 96755532 460978452 940296560 940312444 407659276 497271830 591347189 597992336 929273518 948590707 163994389 181706429 453609790 505909286 558564596 947648633 954813734 998153934 233410998 284403354 554622790 672412495 81024227 82174429 847445134 869443519 653054442 698700334 906953649 994033070 224451571 863127735 70306257 303614271 149688162 452245438 508619743 597608625 843819233 859078146 517508479 548272606 323587764 603059656 893788887 944860084 792826391 806634465 861547319 990930245 397260243 616015585 528778929 814568315 568636584 706051518 230319726 601461165 485768373 690340726 9323786 368984884 784406755 924031459 293707915 768974729 206322624 658856224 746806513 945907589 842446525 996414953 855881634 939239022 468925941 870002268 691470238 844069300 16123021 301879577 503731958 891966981 645879331 780128386 675886613 924112548 896630378 998413209 319435148 896098478 511344039 699487109 453663341 588327601 73582327 746093029 601580303 830473822 148031320 741885328 568013301 718415840 624294117 633616619 202328298 993133914 874096128 917271783 205207591 774546840 736990287 869432679 837573717 858779212 526901030 765369127 431256533 655845403 718834135 940870251 301197772 937714311 791538774 811571575 982378670 992358019 918283 360619315 407532462 570420071 587804289 910737872 906827495 969418407 207020746 800496054 675960918 962597210 309605925 582068161 782545296 898487341 620804106 986707345 201784547 836999325 768909987 932215156 45286069 896911165 842216649 970109309 291639219 588772643 970453188 976477030 611919873 612669543 55295166 856707975 114486755 940563362 756881680 919492261 433407705 910868514 506136251 596924915 409572913 437968838 234852799 255707446 513454076 520241751 400175175 979450813 147410452 797780996 446891692 981936829 10539847 268749907 348020227 969041685 361414794 376969111 757719022 920098648 193469907 609407725 489511648 814641228 678389439 813171268 371196534 671214151 214020270 611461534 337746208 629845544 522291462 995787443 620238187 994965611 868008107 910715885 131568924 423978571 902903037 992115513 141755328 293577632 122576120 123678356 531719075 826900750 199872944 369088545 326616367 339833052 119711664 429868457 26448547 326961006 419983555 809893253 589850580 806260225 947606168 953812330 92125956 128075609 96733110 319171426 41560986 424518162 632888440 792808776 669442887 887596920 551562096 563405008 910652526 945652549 241270303 857066159 538891476 917024272 805862792 834452762 941983152 974855790 143544781 484504167 714566062 955910445 698134064 809716853 614249705 878399125 562105809 597609763 405212958 510860055 558356440 999871617 41281843 44638215 988092684 996477610 482148549 941258949 994745610 997555928 31419655 354364313 571428439 801364962 885562801 905846285 95372773 922631743 877903580 975676052 383761999 925459942 887665045 926363729 746181821 762334982 912032192 965960716 139034961 604152234 714032143 870128026 951168077 962095174 27042507 886732654 759266392 986078821 251459274 845808574 880414868 945700981 380595226 643484509 270167050 394845363 721158375 925406176 513621678 644637870 277455824 442715334 862615380 955024130 439645403 793844120 751610181 970112759 786119584 989937180 190021079 246159087 552446901 798720165 465862035 796115271 76107543 898180021 675029306 798080459 108999760 621787606 382105023 889570272 308961888 856256155 642507603 786063179 624222049 909762417 245049670 872924367 168984254 672350665 193512010 802889687 261140985 829487063 920865176 944128993 807727011 856291117 466135056 794025449 955940207 996115323 732061658 745923596 384393567 503025123 568129992 863158757 922615540 988109326 119520236 709543750 298880824 657887605 154752805 579522010 572578978 964445863 863515560 974085175 636254193 789815001 670771673 903002273 249637077 567545522 88730459 152937579 755465638 764863430 130714765 365422710 511707336 961647326 805899833 946373968 651615888 846808409 369754892 859124297 89192200 117028985 910017309 925188849 281543192 353906366 665425475 729850610 117702429 240662753 406398382 450299200 354683309 947748126 989385422 993233345 358671380 704845436 942724835 962659469 706719647 818056033 970288693 978166106 58368980 876091694 348681103 935457001 306244237 691837989 747793845 881975779 240041050 746667765 20596038 982900567 81936111 115313506 196163287 533936006 574678669 672785126 522935547 735038844 343440207 547905929 601576570 719722117 281198403 298972194 930646603 983267457 444559278 619683760 979341387 998690859 34989607 321704095 464042636 720160258 888661653 972124669 917000062 954509225 396327580 502297862 39130514 86767698 136832634 668304771 958020621 997525786 169926712 448293732 296924111 661223012 479651862 617290266 984546681 988968160 191933162 445816096 680761148 774834351 358704441 668028394 813794984 863928494 259298648 678374722 564131533 607938888 755917891 875479602 67248046 797577232 700121536 915801455 197788559 391554080 309373779 458836128 580919170 658738903 550536296 973902354 211322719 306372030 774861881 856307566 463086213 579475106 139128093 912167944 122901555 229236662 288720277 403112219 878588111 974468508 370818132 777165189 112903881 768955364 878401887 935712027 117697456 854752153 917227285 956025340 902323482 923943066 792227636 993366317 729797183 945000341 483815411 958742398 714860689 896239158 904906841 979336222 24927129 973900058 217740698 455670261 332219549 605011034 99372038 728740562 79964652 576223786 837939932 880033770 906302688 907129414 460207997 858573138 838652252 913511053 66563158 371189944 669959389 845975636 819638316 881921001 139838029 298279576 685952963 764458435 40844186 398912902 386432158 703439622 469507004 791276656 54156180 746188573 154781805 511525989 653482714 918654013 314547877 558142465 734391999 740872702 788047312 974835487 236500043 716531181 18975957 489319896 931492200 934179264 994591694 996769486 103568403 710872992 647587928 890951847 168154913 511662892 838824797 876850424 515135773 565445645 125117972 899066465 166823541 186020988 903684843 932742883 96574773 707702595 30742430 78979893 374274420 735538450 904957839 997112269 783040515 910627879 893757776 960973742 795475882 829709063 261218300 319664044 686462375 795197003 498019600 702777152 118509626 620468040 590503681 604347142 140195693 952548857 847763093 978641406 259619675 692173160 942249529 997778624 178428965 575462353 870000222 951433234 852445455 928040381 259896763 849774023 306351500 725396605 65153547 903806204 202378782 858968499 221302296 521158653 803417990 825372671 421565316 945957236 464036173 597588073 121252432 994271667 190691224 816312828 274415337 352837390 528616299 961035377 544918251 948175899 365828365 989920432 177684776 711809885 115579822 897125839 112405123 660255102 881806579 988376836 815634934 921903095 507638984 626187150 703987721 709591173 319556142 639754504 979572373 997776801 19979327 921949250 583319152 711714855 437625928 738684141 175476040 666167708 772869559 925228716 4074608 981993589 986074130 988600999 833176809 885039595 984664600 997830805 953696898 974081154 440039735 445282050 482479368 975895703 197133855 385941676 378540521 602032456 75696654 584025540 237395244 423934716 218852527 876339336 212837057 312718073 386538040 907254402 694672667 807608937 616112508 885190669 950961054 974874751 620110219 719426849 206990290 519495499 807687491 963766677 681253205 854959761 706436970 893908753 705410027 967328441 179704785 883477910 982461253 998458672 271789123 355014767 615273068 725973953 614315880 863509003 167360184 816401926 431621954 509013465 258326249 410717375 109839647 721292008 127961805 160206338 787359602 850618518 567901750 698553117 921943692 936830858 461327599 583199386 935880718 966277438 487583229 665173903 902532677 919105075 198821379 883116590 927496963 936783553 217127230 979775497 920578320 927532069 507324581 818595676 107656007 777424554 203239064 472989711 600366462 655390470 59816414 286646785 744052865 979855591 338044466 842291914 911596908 961885250 353053457 609004681 231093961 704385760 223864141 807691059 289919607 344146592 685352037 996333174 9302380 591389596 643403924 892207448 408927792 727771276 873886980 976053454 968729268 999876998 746661148 770767371 577540854 747747448 993687437 999200335 268510077 931046513 298744209 843569205 740365801 971275428 224757081 799239034 734612675 860826657 850986296 935669869 64226165 787159323 636458787 734863127 859774027 865608674 224427512 691581409 254798342 601717641 805756645 853637535 263896481 790304690 57007571 252210890 692880263 803195134 769871609 965150671 963354304 966539725 246973091 589288314 666366214 995747698 809665427 903489478 742663609 795456403 98187159 560566493 203497905 970815612 89251118 651747483 198044948 634847548 805772145 994305610 166070396 573442990 675581712 708967598 384480737 622236893 674807800 913235348 485937126 795704205 459153153 507496605 192514430 519207429 517397888 665170927 491787509 856527757 536517365 623898980 803789818 846892079 923852040 977405744 145281641 723128693 908227073 980199486 425261477 455316105 657672819 822964654 995819741 997002394 767549424 948731544 694597241 830535409 212488917 716492945 470832894 947253285 1733009 536654405 461771715 984061980 743406863 875318771 86515397 604265884 505219596 699832047 502593593 775684041 549256950 814527000 138395658 904024346 25581106 734307809 557335857 808173052 579547677 694215328 889905910 909784789 748545973 849267420 516451694 728348217 655081805 908544183 401610529 670399949 605518154 919427517 371329258 671017663 672705719 951731802 523670100 695686227 932528358 933450060 661399930 951318191 999317556 999938456 126509376 930768283 742088976 957581673 293791879 739450914 731565329 896124527 791018927 900775730 987872550 994810973 257150350 512012033 828876744 884321544 925037882 934407470 918300392 976272142 638247354 832548057 557010699 639938603 426556159 939151659 837087629 856465220 464096104 519935903 744953544 892516979 612395494 768670254 57369614 738028187 85389756 229888611 498647909 987567708 270709763 981175157 344270305 521329862 624905323 892885785 600504859 848188060 714989832 765769352 738392853 921708496 837896384 892020562 289433948 542579301 545829182 742170705 16580598 937946884 386564322 568124875 294466310 691400848 213633923 928782721 795256102 882421373 830842535 859250349 433107537 865646872 986022186 990980725 383247576 420501701 805236193 983598453 937551588 974224874 566429350 832287275 662680614 961340903 39535764 622846455 939081602 967737023 859791941 910663630 784296397 997172093 145252508 302045189 382026005 714029816 845915492 960373600 102385665 343891035 761358059 898223977 530979049 596178886 515778705 890738510 620493206 790980151 963415151 995724609 371439115 840830689 177577248 830707335 241937622 326526180 846779801 934994759 288537719 492632050 143723501 267925551 357528006 662703567 170030949 363728820 547275901 952544238 969368491 982243530 970159364 987314879 806894055 894565175 698112576 918904976 276094071 530788155 424745722 622211032 735388697 841969283 305067255 372263678 365164787 830960292 739115424 835741729 123139729 316043977 14463844 978582139 42690978 604061212 394650525 644471718 965593346 966593514 876934583 948891320 658061026 837416325 307895054 758895195 55576396 643348156 774483938 891762137 849167310 887866589 259637317 787973266 783500297 998631267 130108103 179083208 685018516 863821676 252128160 752497972 89138134 778498170 850234636 881502149 622988598 783833826 771448377 923122651 150396907 648072518 662632047 894433014 325894549 997319892 651723307 662057923 359062993 775323215 319145056 710607767 626580964 997816644 8549949 332862615 206839137 985315201 754667757 947035149 150797620 667593438 949621587 976308827 261310194 757793675 564132601 708825271 76747804 521313787 534051425 638315562 724641302 967703850 623742997 891735461 218055342 953951608 285430198 739287136 514682853 741062707 595814775 708328165 531278124 539661023 167392745 778128601 447331009 971964623 738809990 998796380 874439663 910581498 126550917 129444937 442471286 928395500 107881573 804253851 891612735 918473642 864507428 904646611 364589977 441005999 840092194 882688703 789842349 957404797 890451613 915905584 589137049 675250703 320749564 438460683 881297017 913201924 389435548 555951691 113187905 488239249 523360970 883601597 451729033 776753522 243932319 247283236 380187120 921982125 238622816 478279211 30067445 966323153 557147399 731101492 521809814 794328974 154912769 926255433 494072796 647346000 745963186 961882335 968156894 975468286 85002409 936464716 121425046 758721625 580903780 942387519 148578733 402515799 679577883 834285842 955133655 995787666 225089541 574393328 295588541 812211126 628306917 683531337 558689037 633217273 687923517 956674483 925012432 933774618 521740682 926812398 518312084 689403122 761427737 872820389 668232266 876975052 90198435 966882538 256295890 954112572 137955192 770014716 927004686 950679641 908232224 999384756 300509178 346826079 953059489 989057617 875816764 988440420 811507766 842181260 567753488 928465494 949790630 988708655 15532543 908504818 429459598 939285891 265438190 314731456 426002393 483573059 595630797 685786585 728285665 973887928 929796094 990126453 799066596 911790145 72428147 633617803 88322657 527168544 107221421 201370993 678927746 987067835 355603425 818506966 212392218 292446855 981502533 994023527 809445806 925750964 340488812 656661876 688059836 895078480 502977495 671139439 195664159 900718998 984182636 993510714 492114985 567369079 543632537 676643575 614549181 637773605 940353844 960280686 776157307 867012421 759904873 805332233 258248869 646822836 926016508 949245095 232797004 884808824 40423545 565654416 368812242 734772032 322141864 326740554 800740602 849572999 618606253 764784638 850496020 882844924 327330809 895660965 712126789 887891967 755441806 785892824 691461490 779242339 455998107 751133909 806771325 872557594 603215957 689222133 590140347 819182406 320406628 656212784 507953307 937928977 37549892 755588749 454728967 861121975 507885368 915203398 727292698 748452543 263090989 595780117 25181486 183280284 502620086 902480227 322282054 878445484 380082506 674837227 330155985 781861592 309860723 607197328 881967587 978873155 358712674 686674926 838630874 945300289 441930711 533016934 587362952 655135553 81123922 601074654 479827211 946513172 387439807 856073429 260191426 322934496 648392883 889107751 38739221 641434042 902358693 905073208 289275632 611106584 636937011 952857013 82364666 473445192 965659896 996711769 958240182 993261300 760793591 880994663 716369960 846420795 749610378 894913665 702703573 970243493 739279525 742437562 529950724 943312071 753328265 912990221 672558096 843856598 637034961 881171246 879931153 917588238 811769195 971195801 298004882 790375804 633352904 669170829 268785690 445010685 69415357 502952401 335474384 385262003 476065565 603449529 456032015 794752812 655305698 958567395 372615535 474363747 147790355 431151846 626651250 738549048 163583814 225000089 397249293 525700936 121969172 165365299 555090152 877840372 89895786 599239082 215855013 711111241 523991696 984316352 781462963 791731752 433175796 558476183 199026053 989167231 96774122 158974529 335279592 679634895 51303969 871350674 963789289 971841695 780295388 824161791 888507883 897247528 429555274 920704461 495363501 659233531 268291573 714002928 725541929 973727123 597415296 598976839 314675907 543795775 161612660 934819281 75418005 625978161 941756644 959372841 696662527 770599367 553671193 896206878 776694421 962407899 369639610 800257692 590877561 976464568 671101031 863570849 70197969 144627118 560995759 775963420 251817348 252004158 483911506 484836013 135094282 701706120 461127727 846786095 627657042 678235350 772432315 899375576 891593502 991952296 456400037 632466101 224131502 441652882 607677908 857137551 257928677 439237389 656040777 907669838 378390548 408698704 262174976 731154495 978973646 979770639 774736381 941325037 44485171 349251021 776688582 981781701 466868209 925090786 942426725 995505779 251628457 937966434 535664778 944633591 257998908 716720131 861622953 985489479 188237864 448031910 846253979 970596040 521867285 875443894 635410917 944407423 687862993 866337728 723814656 988173118 691360262 952450645 926213256 935501126 213503770 451617521 712797734 799257638 551331737 873759846 641813002 728320699 885122519 885936023 884665275 966748803 155452966 347642726 897201464 947725213 301922239 674530803 70106764 207067689 238947039 375085983 727031343 866716110 152370143 881437025 145579989 952121246 594039094 923083720 206320006 933422075 146831118 431181736 434065353 645779686 817951465 937052572 374420646 490778017 962045287 997425544 246583113 334143187 429213537 999663643 730612284 797109711 854161363 913356255 209623529 999794923 576108744 842837591 665412668 935254327 611712594 995253169 767406557 983354950 297720730 311228035 334785593 805916237 573289026 633088242 974134218 978969154 129885883 560069841 816742989 959685451 988916082 995458644 966398465 981149224 403344682 787811212 531074358 745390785 760228728 776656031 847975523 938994589 748820717 986373727 734312514 769529841 353841039 464050257 707125444 986287179 645352959 713470837 895279518 945231780 342952080 473732166 866948196 984794136 370647755 989836068 338194072 892877861 427354493 981932551 229710192 375660755 325400193 593753354 506068756 833357574 628159294 952523718 98248815 471610003 688122789 991208691 881086753 911494061 195167764 248756695 648859508 956823904 841498173 962113771 615093651 750654954 532555362 850576261 636107921 932642565 943833540 950282392 628298692 662437647 996363567 997545573 384342779 491868257 707321497 984169686 129058034 781857816 199785534 709371906 129308273 898187720 317103988 648860917 801499436 854134398 441647207 600241356 422714606 489015868 467419841 475635826 607159127 901007810 444670757 530787641 36846444 893045334 843333905 880252811 212834028 346027606 363989255 537371809 524681903 568343879 910860765 946327072 90811012 380831883 330821202 595007410 659243512 867363986 276001754 536401936 838684036 906072548 369702743 678600368 621204297 763328121 51678635 263332084 986599196 998777886 971734038 985459774 416343475 975702293 757194271 910660465 578888493 729447669 967765268 986962033 779016234 956317555 584562592 828901531 902125771 979383795 159770197 774451377 306330728 780044629 195645870 377301455 557848673 557866705 255208373 287724054 51149309 990995305 386892884 830165077 472853491 878234856 481870020 800973799 522656625 594819957 796990476 900504444 49568729 233979211 585359356 933749988 676389994 842765188 154585791 932634415 877950858 998823078 964392734 966229662 780734336 968589269 391589606 674233516 757426457 844648018 846641327 893505169 895403531 966995858 493423119 643641769 183218244 800191997 624551552 815015225 968033935 987426439 1132820 345501193 409061736 740230026 595692053 751149679 539713034 725263437 830336984 999673271 846252561 861465836 38474469 163116859 705371976 971928717 922984030 985242254 673396157 964180818 117576275 609333089 658041387 809182009 89039939 992915112 801198922 945228855 271274339 682260067 657869071 872077852 821058663 846946831 113562645 119583260 32331698 220361455 520678242 884256814 310783880 636837607 142777918 773003798 199725601 323710815 712478956 777493615 305338971 442988118 441137553 740481466 91796222 937806691 66558704 201115402 597861666 720081533 73967860 215141342 341347098 366047200 852209025 979770228 395889383 663825852 409913033 477973236 802443498 876905576 906897306 992051806 792085099 988404377 191293520 585340376 43775143 220695249 56931743 829368990 32853801 269296541 618934847 813946604 962877869 984987172 135858154 476261504 657976731 871511515 952846211 968389986 564783070 693819883 75836837 81338432 51573678 194117104 787104240 836229769 881049836 888267974 637018463 716021345 885041138 968493414 972075767 996099253 688660574 850356438 511687606 774431167 629739084 984784518 179208858 481437687 528653736 723579103 953316434 963412302 101379758 410571378 937966476 948083109 177157147 237415072 2979682 60425394 965190015 987724905 767136655 854290913 876056835 932270721 475707793 899344199 100539303 119382419 718969353 979365766 297022652 861623993 821628566 966616633 927165439 953984348 424425264 908984838 738823911 958809106 734143900 843684353 320442409 605616144 109370407 785243975 180746420 912673450 215144916 443351375 782299362 841639102 615550835 915438492 566031225 773415274 241088470 908467505 292014402 462686848 919113859 974098392 563284390 828069377 177892656 540311245 151534494 417817917 814433694 857439418 787918035 952084347 153520011 464623679 832341614 865081986 789273610 875450637 372703517 576188008 499325196 608243175 964587991 987717058 529706195 655073483 973730975 997759226 708786671 768115526 965519368 967839225 968886596 978365216 440967135 716671007 307499408 652402489 843071096 846316620 453231009 989853657 360202990 901822942 565766877 710683459 546009321 715832676 940110579 948429549 799511144 826386772 358754515 590302815 672733905 803431375 208291995 787682657 618712681 786875879 380772571 510745759 569623763 713951933 945783820 947731122 628016359 767414813 774486543 852069940 186365362 496224339 109060410 462890936 231530120 821806257 390549903 947244698 349540389 622497308 188277409 785185726 311876092 630834185 588842841 715914941 886920749 932364579 699658023 867330321 851385693 948770316 129972785 827347082 878987290 934105498 265238998 703955543 17527567 186422314 551196858 717373222 6394082 399769337 197444680 431374554 404005633 895489848 960645259 963038305 793290238 944990787 837580034 877110037 139907644 472074767 591105781 953458772 267564446 489531743 649009832 835424857 127286745 550361007 217424420 928334625 111074976 932530526 193569691 716828752 736153669 896680365 770576715 946090421 230369915 815921487 420081378 552229712 893880792 945219180 232581409 382451842 126310939 977922735 292427592 995646502 872032713 975951756 852714175 875932744 620570276 962430236 316741825 433528180 177360547 763621811 649113586 931194788 763180132 800484373 376464816 402371983 96882382 247626092 726339898 727792674 100702493 559474664 80775813 397759393 397605499 990161597 534007967 751401579 423197270 649666972 368217766 832041147 661549674 731996062 137224736 743890292 734096974 786258278 178637530 216612681 81017504 364433564 296713440 935372906 566166952 979791677 417202913 515843017 802714379 824121808 357349474 412318224 315710721 616212587 765392719 850634991 184743178 266019988 626075485 661077631 560938847 652492656 428284965 770178944 271221261 699533393 151449447 743114393 831718789 851678232 606701724 812824328 25221144 681814441 620493378 932410202 101212174 351138653 169833662 912960697 821808359 889028675 729021345 791937584 634194036 682493732 545332589 812197954 775341382 867241299 116915918 572209300 163864364 986611630 67108899 872087443 179663275 649351815 116066052 221700935 952091093 979894715 996423136 996639400 364577736 848152946 352253419 467515030 672888679 852176464 772868680 947805745 308478573 729918842 112770760 851045346 60005028 988070829 470506934 858802271 893613627 983004223 462310820 690843456 565233461 936269427 913364842 967998449 911468396 957502491 915554770 918101789 467567912 805459116 718323022 913556003 21792175 794673340 978039699 992224792 690398673 831847171 31533657 261251772 546507574 941470747 354790595 387623448 277132972 549605281 214925220 480889861 659853612 805877925 677123698 707401520 879893412 880773171 539301519 655047376 272768858 673173466 320477460 744799442 336590675 905257400 753240841 902846301 472309483 664974461 810207092 866117419 625581963 796400361 836432172 908049233 800470770 865596491 5242231 255243280 998386083 998445589 163973393 998932275 299722537 759604356 148842210 646056374 374113724 501266932 144263683 647317028 219228516 290790261 945363520 988014060 935448883 961323344 205134686 277733593 857685510 902701940 789290602 877739384 518935388 623524542 884250085 951712125 349540446 603866170 948272904 977041782 612420984 691851145 935819560 997372779 840542120 874565970 407462162 938324800 640470001 657910931 92082474 824586893 822260593 953119224 734696176 880871829 286586527 946365948 506750257 529887513 110800440 580752119 165125005 241148797 408264606 563291623 130233800 583494872 470852572 814945080 691645188 952202272 322251417 734154028 309004952 770618828 307528600 502698898 810723366 838127892 27138366 395138160 810250354 908947189 497026501 547459201 554322013 831632199 135506459 148048060 487126558 900216054 48361787 819821409 111745723 648257755 92319588 954640264 305590280 697450176 995098529 995909267 870812508 876133117 362062608 667906921 117949478 785118860 337358204 864000985 431471014 716614763 216742301 385575073 168344740 371476597 631298705 839487455 622073336 775330504 993735872 994542637 393997724 723330974 475620844 955909817 726201481 787405138 721866555 781746679 283285168 939223044 616899726 771303055 51543825 288259109 808755560 932594046 551185551 555919707 866924326 987977225 216572323 773395638 417446817 540379604 896188645 953259925 138343762 384853085 373655530 976864994 111598857 734508005 654063590 940859387 587592850 626142130 270494668 671149647 153563116 297462140 430174533 821334057 902164413 963849546 164692479 877668963 149480910 517480828 825901707 831733347 44426939 929232868 886297719 970347128 110765224 723764896 399746019 921826763 796080967 859276931 141765871 673320689 711482411 856993053 544336199 635584799 64785735 535763428 78656521 738423077 47966431 272822387 143035955 604622667 45008935 557174824 219605887 619711674 606647716 990622440 951124320 991922287 278218752 549862986 948758704 974039122 657291683 658586625 489027195 561306718 114419118 902321294 623696284 958174340 869972986 922702448 295142311 519788151 728221509 779590345 185401325 332090731 614704779 679678997 248928716 938444712 767329841 784434842 306591515 709715792 916720923 987310689 141708484 888960924 398664375 593295161 955317363 992636274 767730085 818721221 432547636 870105905 235279040 329512714 516193176 725139012 699260952 802028984 745920460 839396051 928738049 961819479 439597014 916145748 992310638 996915015 669068249 875936540 745961596 809327260 292723054 944653594 892652993 963290253 807952892 902127215 685499481 940533080 695283933 746678002 587352267 968752246 528824986 868785009 950666326 998226644 932720054 955237583 659145264 919907213 150477281 513071620 885006652 987134687 432950531 588145519 284683143 573559603 833575714 837614047 951792693 956050378 749578947 843571811 609914541 794613701 91737630 148233838 591473089 754621422 773096650 989296216 988327127 996832822 156555455 223840981 264953145 524261880 955648434 990290175 789423991 836299534 838073086 879474314 953018976 954200150 305763631 849694931 97702414 162871872 353424914 606334962 353323133 666165645 83553191 86011483 976031354 989856696 926913110 994242744 618720032 928528463 208401633 442360834 921055038 992491387 477480476 656063061 549047543 945009248 686656355 796295663 615808105 835307520 302078891 960269254 768417293 941067054 477893402 739871767 787011109 861813253 665147458 694529890 617884035 625506004 146174725 987724507 83408040 224820996 973055203 997066564 429597837 890815029 454672276 835807386 272295371 955649498 256453857 819393303 466254394 675731175 178616702 594710038 215058282 860403652 737815734 765179076 632865323 802980482 324552291 433172919 23836372 606000047 827010752 975397752 78954034 110922337 752210101 989414659 946761737 970108189 449170526 812753391 154297081 479080647 898724330 959518320 273279841 385537073 260083299 717195583 520009165 665374379 317475806 564470708 580715406 867016288 36534458 546012917 834655692 852384689 591774273 791130237 385081568 415682355 361282532 533278531 25755729 33323788 307167321 352739671 601985582 744299816 996822606 999848486 701433101 926187236 928455015 992961842 832234888 848612670 623244746 714685956 738412597 855498910 243300640 465433761 139350916 402373142 544384471 716777553 572935424 769610537 728157618 738973164 656723936 934394076 374919056 782186304 851237115 898832085 787522656 890591493 284840789 372484728 919401673 937092820 607120945 774339244 845295113 956983923 165991451 738124111 48648664 331426742 598325501 977612150 624849740 893461124 387958974 629556476 575195942 746194653 947985034 998644884 446974470 731554800 730267532 757841969 118658146 974638545 279663523 979132323 898783343 955477595 347994039 860982323 622671741 648379190 168556193 473768421 704104142 733169924 488857066 575283095 278163700 992608371 353982037 611291500 592548631 902543523 104893196 855906498 197766413 762299802 918533747 975223536 964826772 980580018 699220563 780039333 638197803 764786631 454975651 863992186 957641733 969593152 937282345 954648646 64056121 772348162 901238619 958709530 561245929 801617240 307130648 697653068 895303831 965204210 434357599 984641641 401738192 652567932 730151744 765831163 819162095 907363116 465078523 619788387 834675289 869177611 605555438 753159584 450945965 509063474 973832252 995265031 694507248 762514378 84392925 666013302 584216831 786649168 483597942 771206218 905963577 938409971 722104928 930783001 134633303 418045927 155247456 428617875 361734859 859998360 192545475 440323620 359311029 946097199 566932299 852343011 199445099 383843534 487845357 734023694 75035116 539963706 149209862 223323901 260311588 978248770 248890196 964963986 820655202 908059652 54743287 595253546 67546651 599133285 615277662 764470679 788637073 864080506 870294658 931335370 584580585 952434488 136302635 946891894 348714441 962982389 497904605 836759940 652057445 663528236 807725028 898114405 576119431 660383481 605513920 940571208 913149255 948581228 268800309 289621066 758421841 824998381 441126036 835016910 279863865 873257529 856207698 970557639 965484198 980308570 259698821 721891959 207775513 468391124 669713960 763968250 382521975 686631277 780210237 807840847 930326762 976417176 715771432 782309226 852412165 997772641 391491300 531060227 665733466 837265003 238880130 679847039 520648066 847447860 18994426 895797736 951375537 989942820 423544819 494188289 582241408 774064510 11270813 924050213 480026595 996134566 558696815 958969012 172486482 268499487 380314059 938119460 252295074 854615750 504268592 665655949 80522024 218342904 884624111 994942243 998463866 998805203 172143811 279754504 500620498 714859391 839940453 927669046 313866297 424156956 220897241 857886568 388587985 651185259 190195804 550455248 624825888 763576037 867581614 945133958 125738508 491735411 738191761 921066021 367553756 684318360 505856934 757498458 470005967 523258250 8011112 357771111 611620498 832628734 586792087 707979436 51118975 667447913 654579487 840665939 336194282 404614557 199491029 679661132 545540284 826429042 345705566 552164449 117410621 511895787 814099942 830769549 662627554 915156830 784990487 965989202 323997631 394958830 783768430 827801599 869640730 876660438 980234244 985138073 132057532 395424399 666940900 880089587 261819816 830946674 14790734 616391876 988089898 992743498 349957579 519630364 58422303 182891173 293994829 741483659 910678643 952064735 95876598 257247159 228751845 335787507 415389243 758827606 401436606 589533433 675620034 687075190 97823257 212703989 246559089 441159603 845599748 914032625 988930922 991526784 642112809 793931507 943214668 987131100 87894804 349492889 231137411 423617394 882216455 970965035 611303858 966391089 864794532 989383348 304942683 470239533 786229078 870011449 638541371 931482458 666229957 991254514 115258941 283156799 776470071 790533542 446703529 909506753 99400616 737482179 875520126 995062607 93985210 997677558 846525426 904498347 28639406 226876507 771484108 947532474 981439899 992282452 779369577 816941194 237245677 306405298 142908027 417722401 739816392 931511191 341171047 911990105 786523550 916266390 947957868 966818862 137854549 814593736 952020974 957015557 190806183 876649560 516031484 868744582 327858128 664912843 973414204 990024357 384345739 622864631 913070657 913427210 871349626 901336036 6189569 688971986 192799139 725691288 365474259 991570094 411130006 742598993 874154014 948714684 198195510 346474180 171963573 973658183 245608400 547734005 771734305 790231407 727907606 924970705 302251904 446790574 611456361 989674214 628921813 817376154 409964363 758478985 273529242 742598170 368019606 928328971 401212523 689236478 350626644 542246568 465218059 524020728 500700872 777824286 646011681 725408032 689179275 720829149 977707528 989312224 407027834 997567390 348349137 555072284 33746381 342493989 192251182 884776518 730285365 915434776 688845258 983165811 439712068 788305833 335001100 461332635 259455501 320440164 669748134 766435278 771666148 982671467 14649029 409749731 36839622 333552949 472880763 579925914 1423521 14362010 951962197 975520267 191548327 855624042 479690196 837102620 439243074 980828498 978269613 984932026 737318291 848127272 244491697 975170976 798762933 983653460 601155005 990370379 257125446 865533463 348691952 795413136 255390621 427664767 338208065 548236910 75592058 289014235 704300239 803175437 730960022 773353355 835208685 983684425 217353077 564703627 572200086 733795936 178156511 764615506 134135547 816147451 481667646 573863331 948357464 985645430 439523401 844782717 552375890 971053181 750467854 805995077 42186595 293999352 209196742 800941624 972984687 997967778 149120104 394610603 79628083 835327692 874625516 941045633 303164979 464765154 859923012 985890660 216987505 934177919 334594249 882398862 693244830 937602042 338550983 827133664 535854065 790157303 231060092 417534457 905560833 973509507 306808370 465910654 570973915 611720066 609587273 622289449 537858348 632332003 503900369 759578285 147748018 449987533 434630138 690638853 376539185 600493380 649091664 712859453 325294991 976418131 747604906 860670737 340499507 691456997 396216986 489732834 993846738 995260755 684080218 708760340 317782045 646756363 767255656 968309655 425656087 813124838 311682552 727414020 182406946 443790804 741120664 821771301 475633927 530063113 136237128 547953146 639249298 838286322 281231824 284987007 821482419 954472748 470088809 990125010 239165940 886076647 758997095 870955642 65617025 74718780 273572893 806422143 962132524 985320005 261933532 659339926 138680561 194782295 975895127 977077546 638675657 908617776 868497789 996277734 606280150 611467089 897957343 985784509 913201601 915632073 123738014 230388540 470646560 529977724 932139567 970436731 56894325 687819213 215942884 642176179 625316140 981956236 646160781 970591939 401922452 677724871 436463559 826291160 377751619 499970552 147614349 205691468 383219616 998380132 379951329 722564502 551870370 999616428 968132318 980684268 532672692 845345939 476725699 805400621 892460202 962522905 778301416 855572105 505840759 796759056 150503657 235076003 15068691 551868300 100088891 309717997 628389470 641606040 475496534 637553143 772642577 885181759 253189499 290012800 476739870 492087700 147279576 490611225 987642095 993811073 273513060 854163549 191985351 899887963 792352775 894213377 252258355 941088255 779515878 784824944 346533164 802010851 399569005 759811534 266223990 828192248 747849553 749159674 220126380 280735127 607403870 637108584 183180821 692600337 101483146 572660255 277532146 944521336 347263823 977522783 10658107 221038179 29141926 539178265 627221102 977077327 178143054 943223605 781058879 956053337 491767546 736326691 201186829 802031486 832805419 859847873 218212445 277518088 648626314 663073855 372127241 842628651 18414568 440654544 601777758 784751681 686268309 901321213 814825762 908321924 49813807 352822378 29789199 237407730 335638674 817841823 17003752 673237273 937009998 979446140 622505506 658099971 196950519 904762546 360297330 601610045 577937302 763244037 801422861 950290189 647177317 702390649 604407516 662944940 504261471 518712246 457591239 486839845 969334505 999328024 473652017 579317445 224313373 877443599 601089789 762338445 58230639 442600741 910244950 924202159 159856871 527520260 167488238 265204455 782713740 848540238 520466057 540957358 115845392 365408197 276752236 830617511 799594527 944599156 565640427 694101280 344895644 519167688 999930672 999938161 545004109 899908425 32790537 930871872 95004289 354208927 335042478 368089575 707415969 748584660 665892806 813216988 587870293 984137342 6826091 414074258 160967178 985867267 729159468 955819239 64773205 824806174 201666601 995017886 10859812 360953256 872983127 922771514 159060170 244528353 463770975 895205753 565538306 642765349 91901857 572879526 988502140 992990953 297151917 889683721 965481273 969609519 186561907 809603877 342433965 966605507 776068207 840465738 64698466 312185120 484413549 532394356 951505214 988915232 540409171 635568289 326988208 347266212 65825038 981135724 343748812 677694088 721187497 866281129 911705294 920265955 287201538 586332008 68239275 195461571 839252811 970616845 952433881 984828454 920172386 943043380 728747699 989566785 899645263 937349019 156134879 827039680 306089063 940022072 62876250 334437357 499857396 970266027 100874194 374007458 831971932 929518896 991470369 993579772 246145618 516177960 238813169 345364688 732445707 767712193 111442938 712423738 850183181 958610408 645501722 932551634 923890486 982083782 846276416 917082711 621804678 908996064 804808107 935344583 105886659 883261291 347771001 371162222 4113690 316838295 360334482 620654027 374784473 389505897 441405577 923369786 878522395 992173449 760684364 958492961 461914985 781547428 583827440 976920399 443055629 533014396 828182024 990609461 631545993 908550927 713848811 873495801 697339963 746839129 846970866 961161505 690156029 966259360 206434332 386877418 248236892 949891182 440771408 728355001 26496054 867980528 58900518 502654524 816754940 874667047 463902178 534163416 669963681 809103298 863484942 914834434 85648692 534327542 169252227 413205596 893967341 949544910 68986925 599890217 61844717 730553231 528023508 606155621 887844157 951968098 553968426 959308640 246217260 525683607 215967493 687400534 44593341 47322560 893350624 925619546 270781012 751976068 25855112 401487812 737321682 915362718 790717449 969036855 477013956 915450846 949386878 996387791 160071892 453093227 92707837 710457320 848306419 908902394 200499633 789841641 364357607 949220390 818616178 836823152 773034576 810229830 659095145 697457466 921135330 921300791 878055666 963506722 853308404 950199619 980798672 983230363 827534566 951870474 391901157 655972641 672702645 851623042 845932685 889374476 663615890 915493356 16634559 801306011 251499895 297769987 330829732 431364723 14145768 48145214 281439382 461594445 616724416 992709503 673258006 905603622 402950767 846144811 939887726 997830382 36347158 543363077 247746211 609301676 565422067 761877768 835837806 865840659 827554263 863591501 694034502 739667629 765188865 975002393 417013603 762246200 289778430 647146585 800399916 857457967 403588730 887145801 61309462 980392371 491308711 941390686 662724866 835054240 371803627 420504466 600125733 987681627 837239093 924964655 338948875 954298908 205240652 598137247 430432163 995713347 558090000 572588055 779053404 868722049 205231973 547679631 421624341 994053416 37263310 750140435 717065017 967894852 150092431 984019386 356513101 678651864 474514197 490492298 339027096 379208459 742404444 971206281 723780121 799493555 646917513 649641846 126318276 743212599 313678318 813452914 794736608 964805630 888320280 992562319 952108621 967502676 835161931 922237003 127062393 864223107 954070037 995616086 71390782 489799274 212754043 510931171 115659355 280101050 531092556 727182469 356229925 840219835 252102865 812227895 667211361 725718329 451526590 951040033 333891814 790425103 966630647 988875076 243419181 683120776 544223551 744130484 14683482 985837509 361012052 845250915 912796571 934980380 803859707 858845344 428071968 458050878 660782350 686758021 177164769 962970580 545237800 703794010 528886948 553146462 475613008 885908928 765958522 976844070 971057222 977800076 939939087 996049093 998666904 999884736 171005154 405361836 442795009 551260667 797203356 929621493 458843087 471888957 897143976 939811794 875540229 980757565 411733561 547384749 257708927 646484397 878891043 896675269 145314615 856770219 596172432 720988196 729534203 902221313 902461384 980604334 80840028 531619261 375429971 527264145 63457980 750752684 897569970 918783366 248830419 313572780 844720431 960933100 8292565 750739494 703409675 937602128 720727403 756836513 566262535 823586343 661108202 843132938 836397371 923389621 587615533 802533648 301687264 831736282 888079171 908149514 995134878 999251619 303525727 349704068 712234688 930812030 546912298 927253505 658429187 783107084 902454347 962777944 102860990 164829755 10901480 644402640 277835797 952771614 82046181 397858792 67109422 758863079 562098111 661040506 167242997 996211629 466220150 902308425 980262751 989238689 448510052 786858333 773137901 883661491 30482880 240347119 881839962 984661372 410385383 694516198 275436055 643293338 727119030 943442354 202463541 637522849 905904187 952986199 588181158 817717134 66226097 185792874 673305781 736453641 942390185 990230237 317191633 714953048 347330626 418157046 209935965 378423857 193530273 703571313 917565570 937371778 634442940 646364184 800587122 984538814 197197058 760478079 777240873 815545664 72097524 149065944 472704632 740930465 393094760 713590888 817435978 987990069 257824438 759445887 672631105 913412793 802423676 877076638 130306295 327675298 36021036 315776986 388621978 403682469 508357784 914189940 498541648 855903572 848424414 946334963 806988970 825296955 233674739 431594296 566821654 873300735 207201530 685231686 878147357 971446090 321173252 887489179 723935034 858651910 291568213 657915132 650034453 848125736 311106445 428606725 637483887 945647869 665265473 949610582 761811911 966895349 45577986 127507751 200247678 493640890 468432408 829085669 570712181 706697507 894839690 934331364 432857069 728095738 206257622 839592962 952280491 954454282 458831247 724688253 273627850 307236423 372100437 607309971 99925692 285622854 774736349 800139880 266496542 962253946 900463009 983079738 9844843 749776512 449789717 574450591 844736973 864731181 830611477 943483627 244178117 883440436 352259670 691800253 953106976 972415948 889572805 993011687 174121885 214790680 864879133 986717516 850608372 865641268 179434624 726399320 121554886 436332970 511284345 969383658 177023333 404948891 117694362 136204971 360410878 828264370 879544479 966530116 467656883 858061942 798076487 811601883 240437809 909668768 70355593 466598465 8025609 225458956 359971847 601449955 241762624 863975634 172008551 644255337 461336473 785041480 907723630 957481429 849835996 943467322 3216030 832694384 554793004 873281738 616266188 781757007 511456023 803702768 919340338 990883151 335223459 836044091 738750898 784578189 162621656 673241157 699111756 947234785 545945833 939035706 247865307 566520158 127365961 640231111 984302132 995699522 874897787 916585616 987050085 993279112 837185656 885803195 400405115 521423926 391046265 424811621 951996986 993119031 290460787 715210458 406312318 736106015 825682185 917142165 584975832 656606587 304610964 537089766 563136585 680820427 153111654 522417798 671033140 708339072 100688586 848121541 617784785 705569598 860813198 996095267 252908249 372081590 54377826 636068269 921105940 977154493 259729241 834070767 999308633 999687307 416624893 907885545 393643909 651225889 440752922 501221390 269690647 647870174 45999263 506032505 554500720 689394112 736188520 790561714 686042498 968358566 866759905 897100606 462134839 983072991 587733619 964031372 295012431 684739948 396888440 713597705 25474383 866818628 482692312 772776054 442774731 460507248 639582111 916693149 157508912 428320716 100964978 982918055 939457570 981003571 64751576 402745084 279252065 321138054 299713562 927770990 166456744 290046440 679525462 679556750 139811945 311890977 933740316 997294380 176484526 577794699 949484142 988833415 37989836 390144861 9761621 213411390 798602286 825496342 112825218 365543061 883235841 926252787 384634861 857050457 617244543 795670929 253809710 269935321 791790433 853071742 789643869 820135918 135715645 427888657 147625468 610876195 508556657 657538887 986051267 998516843 659275900 848221435 134554945 552084543 473335593 804185458 958727996 973309580 36285243 138764891 619122576 840213171 990148156 990651169 317611249 397448929 819624581 850855475 657874633 984526120 207690105 822131452 303091559 718349752 469198524 562474665 92833487 511770147 760362129 973431141 522368358 882439427 55212683 570128684 781316473 967997030 114162341 285383511 910851873 912402140 613658747 841636120 946544254 980061763 917986883 949476270 743999076 847394665 558871445 623262015 401577521 821434403 323295211 369887386 160120613 665222038 165961781 825674307 928670911 970478648 481454784 852888762 751014125 906196885 71291857 538936965 578854251 896697118 460148090 807948336 486262748 556302187 620092005 782505845 280485583 407595731 439937224 760276264 11125563 343032288 787458908 873303165 412605382 938099204 612467859 641336755 847772087 874077380 181395143 218587159 997047020 997277617 987227935 987379470 770310948 887266563 749601494 949048160 186746105 940608684 136160238 306632695 600167381 733260089 526054225 597503740 78514928 287415847 82036910 679532356 986468475 989471221 555432447 726908963 368288179 428539826 700814928 742537580 990765541 993582853 433752433 795432958 552488100 940841554 223760934 749787349 727736193 988289165 795882470 990560930 567314873 579759748 874857685 992167038 493924079 910974007 687075426 974020305 634791578 782532289 184209354 671007866 632769342 696841982 735753385 828076591 923437636 951895334 822282679 854508027 808900034 959664890 312356969 573463338 503889448 613995923 948663108 977358161 180508723 758716720 120832359 326940635 802267934 879394656 391809623 517767878 320524214 725966809 529558689 706975523 100558786 712621992 738905363 907536362 39949656 330713437 874579007 915567463 933964393 990509163 376747797 856167485 585247249 916570825 139569210 324581602 475814372 913957845 210584918 773481323 954138967 958781699 388984082 837102992 160859774 232503929 969281433 988430453 224514031 605962457 674397153 903981336 450021582 853097290 409780684 580082773 762244103 834158468 108741846 667391787 280770852 476646598 598197559 779056547 984500216 990841916 894247786 981744860 327695459 980483322 421944322 471339084 234218195 627322435 604564550 791071209 426721128 759984181 832635890 978518935 107988562 868956960 784178531 998702035 41005078 318203820 485495612 932287692 700678893 891207427 222304661 280322291 936615123 955608254 246764661 931589058 728834603 899437474 38448577 166034096 980849223 986053718 69239345 821122157 946906498 955254325 161792094 908803016 931772659 933212249 576660128 907381654 740106253 861320812 145341772 891965654 882247653 922604231 138601536 966320231 235328053 821906531 751662934 995303535 959748927 994109951 308472553 598821279 631257221 960874578 961662501 972385922 73395857 479957459 315796664 593827285 778377190 977636162 125284042 996659567 100787700 944341785 538375503 860486418 9582797 875369916 89265548 753263197 511290988 866065451 231297050 285832104 78929195 711176645 546254522 890229148 778224688 905444178 823772224 851622152 463812772 895194095 347823113 394403016 926099380 971763885 174322023 826946806 876207974 883999748 839288630 967207696 11733859 368675502 702126714 725559573 527256025 954923530 807095897 897851191 508186089 778265366 139912992 805976042 33497169 669777565 357300274 600625794 112462425 544158073 613302588 824918782 499774453 544309425 655290723 946822797 69727270 187877994 37466049 489511580 697091901 810145645 926178351 989258536 708629726 883550260 928129516 977059079 486181467 601471857 952850545 987610442 337870545 749106129 876718392 958922040 41939646 920629063 240682831 943473762 679556437 957079431 87388092 897932421 549172407 606658920 714174593 929743832 579727555 827301612 546977701 624865264 170643812 218442687 450209778 701077531 962022058 962473208 156459067 892773784 318683390 847395277 764164382 866103125 382371890 772133842 287588480 844021587 839471347 974111233 928603318 965564391 636633374 958630472 555187082 989236158 182913200 236416692 993304275 999554016 746558704 830717905 831788601 864671269 606192359 662655011 494574840 884066274 644616258 996357888 643950301 789962708 919169386 964491657 323585518 539578800 765714190 789584413 693619286 904716132 395494278 643407307 234094445 632687696 486900641 922863957 486853079 940189860 352103787 539426175 212561779 732518822 150642740 347766012 806697850 911448042 486007607 514912125 504240694 683552435 454790455 685314235 947514567 984194447 260764611 551210266 737881 120472757 216131849 996913055 4173826 934611393 499947267 657515883 665489501 754054367 895176759 947854191 742746833 875475679 507807712 902895413 704225444 739695594 825490963 845491882 286609613 374356726 966416017 983553559 449874148 997073561 348768203 436180936 11424545 220353170 199999158 356424461 182338135 307923193 540284924 707477648 63475251 411180402 115415455 679012413 249859918 561516919 959425982 976428015 963924687 988169223 909139485 987907583 981006279 983417866 99341551 114029105 361387451 592257830 34250617 261568720 488769600 654140602 825509894 865256834 759388714 881302141 415229976 711192429 823401171 989975585 318092752 429472050 417216654 503130285 114411870 542915382 732096547 799584492 37423719 968335471 325588078 851698046 798125889 849046498 574391555 628886851 43260223 875895079 161649727 344114105 926855658 988276434 677161363 947869231 364737348 757432661 827975826 913656306 812808456 990099079 888069815 984286886 884062180 985323493 33528535 996357882 532790472 923658128 406285900 698236681 694205205 841084833 61694990 440698446 167158977 391743198 191372705 515211795 655054416 907591614 297641821 562442055 395706742 397045277 156346810 390009001 202864685 362818215 544697396 841284790 858419418 909388868 72504764 394982636 393124385 687064151 660982765 682578026 985019925 992855289 374131403 641946586 846095934 850835790 588262869 590954405 212420640 409100735 185486191 590828680 62883286 638140332 544190647 923454029 526966342 729430918 663697129 903699950 560441169 945097072 90876822 226986913 255559065 277224440 345639980 399635022 682598770 879535700 544673354 907763370 683670361 951508252 973045390 988638284 486698845 499594965 738263272 757633059 402984200 884247628 885052598 952506670 775000483 876302292 188911465 455245550 890415129 967768173 772654510 912695572 193909499 403544705 757324178 830833126 137646410 959744051 728936810 925636085 569398520 607979834 731165078 972171966 286281031 596520720 71937866 926302651 547420842 599805075 739312451 841179820 323585960 792889234 705679632 932885727 159173408 741041913 889441926 893257899 694551913 806362426 280349765 954384803 898381665 911998350 372053379 857755753 596696743 767839273 257605195 694913357 321192069 854335832 251507004 973829127 438511830 749867782 736425867 973336039 798503288 869931082 208456735 776785626 416134073 860650263 858714623 978626617 849122375 864767555 416614891 785220114 810917015 840944688 936021525 967838246 445969140 650534532 973920650 984073219 476401052 553592030 218297202 753798713 93289240 578619513 27537480 252216675 188801565 542530630 706004797 808898568 185864100 907524457 948057845 964411837 51177576 196002884 93064535 678957403 373104841 721597409 439593996 442946725 183863687 989112779 718734416 820628590 242555190 994288241 145526522 568985467 679104512 980406063 995266022 999679348 273238945 842256292 423656129 621671364 109837281 675310849 873194963 874371106 487176462 634524926 900647998 916598786 963170835 982361910 321946998 419243389 217851806 859896168 639885602 963265778 385925821 607611188 924571978 971095176 641834623 955379919 622837661 796330466 423915161 662380301 669401874 893723630 784280468 825022699 555946187 590474699 52362554 710687209 960906166 998733196 577823025 679691518 922012310 969925042 268135032 923848995 586790780 928819113 469761486 998677281 412344787 816443837 490693919 869220891 268760313 865504550 506272893 947070473 290018893 547137700 837522859 856660300 337640878 567654638 235475409 271333200 440002626 883621102 224345068 546399482 66621190 81948262 756970811 783015145 316776140 875795692 30115889 804031722 989658719 999237928 782524197 977901290 28240108 581007328 537986367 817737878 978084425 989137275 590656819 879986186 643130787 655978614 426820828 977413248 910967502 991223466 452804346 696917208 386375620 409121098 909110391 979813556 976726981 997316170 91347937 589547670 266587551 404860541 141976956 350464397 934154010 951323758 867284133 936960485 746206237 819146534 536423434 604700299 103374896 849487337 316002844 414665963 719741134 879122981 295703702 755245499 224603531 303031379 767195794 934016260 312366538 532193882 821643620 844980667 453571615 615694032 402731204 875350029 914431677 940024565 778449396 950869102 30034851 783385776 143022913 225465170 72753482 528991800 139748913 464722038 776698240 863752923 608617986 995888927 486675112 901465540 142692753 643926790 14981613 451104390 14168946 952080368 244479236 332584903 704940470 916042963 706620579 950882082 176526125 912179273 975861658 996158773 327053767 448227991 843908282 904680370 188149077 459262416 632665634 942705896 419911933 970460841 841308646 904515722 549396593 614571696 102489145 702264277 756448356 979469850 24980542 308684890 206538035 896812150 672842201 916999382 382947254 568264244 325687999 327573671 575826891 667430579 759130899 975077701 251509930 556142097 603285448 753899224 478264601 675606245 664860176 998951523 764440282 898756643 878118096 964702210 333817154 914078290 644132869 968301155 386088942 878589896 658531450 835683629 875154879 955909497 40905578 941969810 821440708 979967946 661400153 711016462 673627120 939594612 986551576 987341297 572992732 717814643 681841905 869285055 125259358 971273906 455902903 873361893 738555443 902602863 369223241 514655455 644839403 652890866 691588373 922194023 912648274 940980170 25016063 496190157 406893385 985949353 170397537 856439234 582096985 633981325 663309094 905447022 790686906 949729192 356826496 387151697 530886835 892554496 48129548 624875099 153041864 330779376 67336151 550198861 142011938 156021421 400683136 476604820 960943325 974197239 548155757 716915081 609176650 859947737 998416975 999755059 506192682 556607227 438411079 521601979 179955072 827742953 19467912 770781461 309394382 686335858 937994853 939901086 713068003 934725869 578914588 877472659 706361098 869449674 285630762 618595287 294572537 904875727 188844286 222656465 799154661 818965697 882741288 929599557 738388123 844819946 517264952 893882538 863512078 871492272 193299712 785928387 80593069 210719222 96846677 728245396 193842970 477127232 474323540 900346928 612137045 759155772 678422556 815125573 477643290 884860685 89685480 470045383 760939367 931894151 551258370 793345766 630162314 944475998 424050944 500352035 271235247 895901413 833626462 839977246 55219116 985164166 406129190 436147669 181735728 931603748 913131899 928864968 552721379 557355446 185573058 393834458 111558181 301627314 557385203 614576934 12847502 999612235 171998534 379719430 406491185 923755288 376550710 608079028 979952950 994311264 79391257 300502564 508188661 961338068 336825130 453663574 247678855 822744273 523712884 554817577 268934350 456593917 333867753 629986163 725842812 841715777 468105139 681012566 709548525 730210850 426363539 467628834 159422278 759752135 60727565 740138611 737563324 738600267 326027767 946091746 576848370 786843749 631906333 868061084 886199624 922089368 712375755 768827964 175460032 521414474 996253511 999764056 864041765 990900088 578728423 692938073 303959906 487790935 832698544 988374735 217010885 915727976 938547822 958917850 835081213 948497789 760793908 970137977 605599679 634103459 364197182 957778524 368005231 610880015 463242129 939765403 806475576 838392878 440862933 487600962 616293889 876325988 749433740 852911824 139722928 831711786 131310391 540342100 6579002 745823527 619521466 767849780 408556016 881574159 798064166 841695996 765220970 889961079 774563033 929863407 970783938 985448958 816200806 850684179 638368601 715011924 238596657 258073170 624291516 976921194 59003908 768220760 580454305 875701068 229864844 860569211 997440251 997720321 636528924 940707976 75344429 867171261 618401605 925815534 280805049 771521007 99618940 894776472 872279483 956846318 36219320 426921844 597956581 670539532 519628753 851512252 958245888 991261461 373584344 633411844 136364094 901092995 857102785 985157238 648702134 948132210 21235923 737363182 551084212 933694898 167328618 598845984 342667990 642409851 553429714 760921526 452394173 543502868 344125377 463195415 781114847 986358840 275724009 465250471 983749249 988277137 757496497 991651639 144414144 152900417 202964152 570331139 872758306 903209286 382839063 450887474 17530122 801099863 13420606 466190563 624800831 998925764 39290582 781139533 821943206 988417729 79435861 269333178 503997883 616135374 393898777 615158062 954190194 975615431 314297277 954748546 571178822 803930829 834818605 873609952 109212371 748561615 542002111 960631918 517183496 865261619 706089931 891012935 561009672 886254574 110679927 833443437 902528762 957455821 127813773 812086128 773976067 928707130 876902309 898893103 901561925 995252417 493930518 719356101 554826839 739284464 153935617 986065052 459963692 774237009 596575991 838600261 901394467 989018399 299174637 611493529 415221571 961578490 917721685 928538523 439037760 976927916 512526488 889239607 85776856 207697493 950327565 979979230 787202492 837213485 178021377 439396256 386546151 693755040 330088412 865256891 233409113 612723027 166876261 217486050 332454127 384774144 291339313 594234194 881138056 974532575 480620182 589827375 559617009 791877251 982771225 994622778 785751041 825290778 593805262 815095789 915211784 958237291 114717566 815400354 612603862 917476578 586168666 674664577 332076284 867839282 869012087 903675315 944058700 968499367 261505805 932989582 558411072 667249059 841094385 908341707 44598578 291799922 546901677 620805339 509425431 714224939 225099146 338121157 478212924 947699211 569753253 967832709 536054210 694266396 441658584 693242216 511216331 882456697 36563163 947427271 43606933 185837742 488017876 501395810 140154333 383995136 462861604 973166973 427032837 504634134 370927299 821406943 562706002 654815394 520320397 908494509 203131559 575610970 508358010 915151477 918608913 987280829 861432307 897648622 62649076 530612738 177461371 514039415 816935459 864967578 250853093 317799497 989684128 992278970 563336367 792923040 490296084 934008440 536212775 987591672 94487156 263054445 457896437 811436363 277783506 449045830 422987248 782960909 569315185 795087162 810980458 910868821 320176174 873555821 436695980 467506094 104122341 451520583 827843965 916234041 604270494 657929035 296988684 615118789 727779549 819051527 556388100 660956648 554608620 904387713 601098354 987278437 499296998 772714017 670362099 851169316 187341153 673995413 984765181 991210259 90966044 705915589 288796658 387716556 982398478 994371922 131861201 532240749 479420917 812943523 219177182 632926356 397832105 772720106 966715627 991643507 338872360 643242342 307628357 365616233 303780391 465072426 616102653 620397580 644600113 804746805 119644126 899933308 332857776 902033731 554120945 963213133 58451874 446646724 665052166 708219178 7989420 699408866 571970948 950707345 374923322 993628027 740327320 954248542 171622620 794843960 109804643 475197498 228035007 832631340 283785274 685921900 756989566 930063675 674792541 875605451 464891069 653029820 29980115 313817109 656987388 689189177 318184173 574093251 148597663 830870221 27896680 838032820 194868905 808189349 456040406 500670143 129768035 937250718 672047426 933446714 227777327 382363799 996982789 999090296 74363661 571778037 842478597 936736487 468952714 605148833 230667018 765114319 966797473 998579089 327874236 480901915 729294854 754012648 836225654 932906223 875066472 898759882 162872320 393314392 868171499 973602812 593970173 642466640 949314954 952961654 522045826 876406976 65813300 802821858 200423608 770406081 404734255 801934520 7340393 952420572 385433927 783527981 873278115 876527062 744735893 932795449 437240512 987275074 217214944 812363216 752918004 935808801 909501632 910695165 120176029 792002002 275844726 368152477 467329868 550738047 698916847 892837788 816079718 904201638 949413678 990559704 710434469 805524031 198792603 410846659 431301622 923145959 175206539 384966686 160059638 465784085 795816667 827598498 409736676 752731015 905627559 922896342 441062706 736394148 477223891 853429270 238698969 453814244 666661669 964183847 521305878 858307755 485484961 814276677 161044166 218428734 678417578 905878556 435466202 571456101 566025549 723655870 154768343 509481772 374206463 406199553 6764375 786192636 904218720 937472388 716818054 983859429 377649519 826504661 449725833 492345052 477401579 668038398 516901857 623211615 360951895 742478673 729724742 794857436 567532045 682466607 308414148 490932043 418553149 919973893 199801055 315180106 984122134 996441510 345428974 779302296 12663066 674197120 818445835 852462505 64700474 241719367 719456490 944799626 513112247 926923301 797859476 920317964 423566124 919190738 819692701 941361925 968744624 973934717 385096601 538514533 929280283 987832985 552148284 755136926 672588525 675209082 206879212 889700010 536385063 942496299 228420277 974860932 363975888 484180791 431485355 940891465 261882972 995300420 112095959 360703283 559203070 751320078 605731511 826473120 889086921 956575463 73271152 842596494 10268428 982626183 777972555 936392464 688319567 785134559 567038035 842343525 318033890 497980318 408531909 417840404 309782044 495992178 11417038 859269598 842354696 952961545 766506929 872474741 328987956 680350489 965708072 972226788 88558766 799360229 150481642 302167366 761525471 770834420 711348545 915243142 270094560 631333693 404584168 643147493 653995804 683184579 593965928 760071881 198114013 551357276 605334724 699920364 357435219 520535329 784935838 922508931 495891498 615030368 260371705 881423089 751293869 959674881 378018242 939885991 664467621 853610367 65287213 170848036 960485909 997339622 778478171 942220104 673660680 847104915 168871724 920052587 692594106 695506262 397927341 585074950 293115080 436786069 849083446 943476336 102633349 628328983 436990112 688898169 425698004 772307878 684497625 740925245 833740767 944530011 551091155 651317139 800373449 950332487 733726608 916778910 468637818 726984183 697879343 928290584 199525177 232769239 21889802 541967538 945449822 948443078 929455469 941622416 923236035 963763450 367856682 609541936 440931062 795444052 700469819 873779272 658922815 793541345 568590755 875107892 79519232 826965103 638481229 905022964 15012024 66176302 834742939 947182389 696147666 974714948 446936028 642350048 503422534 522009712 975526589 992764626 546649336 784424434 58314366 692970140 809873816 980179152 535148830 654581573 136468601 918076517 725804693 771634916 114036782 582175437 96847539 443639748 640034448 846577316 281635516 385672585 817762806 934498655 313088590 331650923 571124980 725128061 784316607 929119983 497685550 722341516 198388862 605353258 254808074 589822047 382578418 923834691 638864940 766831825 834148051 912281475 458721290 499116863 318982673 827508926 345175684 946898509 590263360 888496315 994124215 999865153 999134261 999299287 599032382 716432891 72600409 882998181 482108821 784919991 325324240 422463969 738080685 899445399 264034510 953578483 351537887 473923023 540712837 825514706 716714823 746353085 148646450 927329391 783201534 849718234 489477767 613711576 978421589 986007505 256269540 779703277 675766404 777386987 730906838 867858037 431355337 811398615 758757639 967934613 84478695 390039519 777678178 833546867 910679193 924992845 542340626 820712774 730034536 935905981 935061970 975914214 833763638 987427389 35372166 949451015 174521638 228050798 218306970 482328562 669062959 937521504 259811324 405612089 873362782 882099764 242739130 730448223 787066828 929939504 910187233 965037635 564938768 581032014 430134891 489026942 841721369 900171943 536460716 821346924 82878674 959736934 756370814 806185583 18273556 125933221 131107593 366238182 903280319 998881297 400431348 677429463 955349094 967234331 254666031 426478639 649042221 866548904 752431541 907386640 351733137 603369407 586432766 610375520 522572777 679399598 551995767 669948968 146672899 936769174 77055671 516092583 371525769 637979548 462327133 664003428 18887168 248198404 867131814 884273039 64902651 919542328 649713760 666668655 308097950 796840254 307733819 613735385 136598538 571547479 255001070 301161669 221050131 296809876 847912973 987376383 731390326 973226717 260310090 976984882 872412259 905383075 488380893 729116847 208079157 757167518 156920663 251940373 574376460 952137763 157427095 905173044 137094498 686441335 945393756 975632367 743953221 868875782 986319748 991112088 354547857 491917048 322929030 883042934 673372537 970077758 598525197 840003673 684066799 980073345 628872016 888133563 272630085 951899083 454465252 674752960 961185154 972475977 779312340 796660934 584965255 713495674 543646970 585091238 375184913 951703745 727044123 917316595 387417260 800417486 928407559 939370399 816756324 895925266 178242345 211236330 475364218 536403976 172163783 665087033 50616420 747578375 583215647 645544147 416031182 963955926 982981730 989523453 142312126 462652650 486776101 808767797 701309966 906626000 379017112 842067031 589379040 899744342 330164217 375256894 314845480 805673648 150563953 166699843 544589380 624602176 774791606 957202798 665886675 737135116 647338264 781550355 38725898 789222083 841470798 991180668 260390139 555711162 609848822 652273507 155533538 198798451 617871983 637057467 962761461 991305570 706412258 981701473 285465128 861935334 382062027 944556610 546152921 804377692 10390977 527687162 932661961 932912536 797450270 947284664 234876802 251229996 492708740 632222124 589188050 983818326 962469128 970084903 585114713 945150436 882313835 910504498 559126180 678513153 592238228 679822138 534832555 949184905 964196169 966743014 251816699 303403868 340197168 519269424 124650348 334362991 269628651 295536272 601032083 808358681 779209509 911624512 301026761 629463886 656004437 870429784 764460860 918311299 871617837 877980102 534810104 667602060 540157604 720248363 592883909 750951469 422643601 578025604 323153071 950448212 945983710 969011963 106648310 294286209 406614980 945541584 208552352 939171867 684976796 747407147 381682830 931080442 93743423 991698243 326683977 682002272 246298455 563400915 100590731 751770663 184910041 829166689 977953739 997320511 123739552 546552583 766682556 916276355 903027144 908951835 3725284 709181634 751289159 996932723 104689262 161035250 881099071 909422880 202712774 471068231 427751858 924968954 828936154 865780463 553167359 895915349 15089251 889623131 227466063 810497987 929608250 956279084 655232147 872742295 172026540 556708652 112305840 149323586 807112505 850690260 769244998 778991142 688666702 938832750 798110528 927060171 873206507 951758701 361487480 950012772 45417232 471428480 782561701 938756019 324622684 641597736 181614599 621974279 444643131 799740860 401195505 738869321 321767408 886843823 307806230 520246642 449266821 868641095 533116598 615940177 422583816 657841594 362062478 376159345 621223599 662846121 607732998 961824379 547450393 569948333 793297430 830731547 7163750 270052303 653206893 880377981 81544357 131495322 675512543 939584938 99150820 150788607 582776913 929447410 5601371 989759532 875202730 876696844 710154497 877171214 318756898 320392859 342108930 628456617 763286326 778913752 527664313 882172515 353482794 548950078 185000344 260665665 968808056 987822021 58976616 509869966 972373891 994309067 589924709 610093029 357908221 721186995 217908077 548629285 350717120 525020162 1101581 149007539 649673412 774790662 971029046 976012902 894946747 970447869 297165221 725804820 234138802 535983707 732559139 988586384 813805859 822306652 438705126 722155205 66657382 210683454 615514154 783280049 920845478 928808678 688731810 876849330 575908281 852111915 496973487 595680375 422668070 523772147 893415680 987266239 966250055 977224642 234221768 497903105 341626441 665111275 782120025 855136381 962719130 964137660 618956385 764419476 149973019 627045443 430860007 585526567 15942755 155720331 488004177 619823604 414859469 753409740 624793078 729826285 716342005 807795683 670483352 843503777 262381668 877122312 670904515 768720043 508881211 643505552 737244903 900272962 269087146 379098118 946220881 961757880 312786900 340021634 816633499 856421826 585885288 851754660 984220454 987140276 346052999 637145935 616920840 808827401 66673206 67287865 564014935 681080065 687505313 845467945 722777341 728067742 377416712 497902964 343022686 647219657 850884239 895694949 845978320 907989695 808519545 868905779 959172090 961823820 34650339 905335968 520856786 640720217 427746962 644647965 332983448 699842336 154705210 261012702 841465002 841774889 165843379 353080279 233105919 682984708 894361094 966290790 197389771 494194824 799903591 811133606 854680268 950241036 249793320 575205709 643626395 960359411 714461852 818131481 926585398 960172676 502553452 888733803 945186098 994287716 144262328 761118024 892737010 994614179 359353 585710225 934197976 990348424 798979920 848576746 449345506 753918795 95969364 474967418 157623033 799714875 550003380 908356397 235106694 466462035 716113086 976824273 688984609 885688644 561647000 989618791 718315517 878248007 124856488 838388780 14720823 815398942 705106729 855135859 655074665 992238307 432417328 731267622 732272203 868518250 103518954 513755907 768791437 964700363 909892853 960828563 995758490 998656687 713931582 937630571 115119210 367249114 888571748 986347063 741991106 778005313 515697159 857712718 376451256 447899061 595774307 786040757 340518442 866679957 843640634 890886818 599936153 645699928 268848524 600701386 239450234 734843876 215530546 835822126 993950892 997474835 236692754 379942456 257678592 977516998 874513800 997947638 787934773 898606867 979390014 990799490 417040869 777673516 158610687 935143665 989064889 991298693 894609632 939129095 62487019 809332189 275157123 693920424 229681062 708324427 823293306 934538696 961831405 987892396 439022105 463607537 805168866 985061311 363627356 610454507 736799681 904920160 146829690 186328771 45872371 896055466 573750796 791076844 344419251 692789646 288177937 833897540 569603341 789313299 818866719 845003719 618272299 952097889 751762804 926558041 975926550 981264409 746556529 920026673 100055240 909104436 458217470 971094859 18462594 114132243 593917981 919770521 245095913 422751371 254785943 869966013 884635096 916515456 11079981 781659231 8494430 39035395 687810403 693949816 789446280 935438677 215233953 840787813 986486282 990609816 642401059 741984388 631480468 965135387 896167355 969813828 381419415 452685455 467143769 546200114 751273404 891429335 5456526 784087061 462835768 990375955 258149202 962985941 449471740 544423027 741094607 873269706 972412818 981254375 288798706 649804859 879081697 948110734 608766946 680421287 60232876 263596540 55233241 930704368 289004441 594489053 939806919 949915773 672049824 800461823 235771937 403418527 583340267 776248016 108044786 807895508 896536896 994906290 686591859 885473595 94580348 906752924 972594348 987802200 685289815 928140855 58154936 778362660 876038403 917287823 263285945 590200980 378423884 555041217 172291354 855558677 959215333 995915469 50727613 991824792 148633820 264263184 18727508 332421476 852055431 866683053 22321776 392290799 641262990 998307264 776201540 898783659 4683379 718036262 199636202 475788271 744243970 862641064 305816186 667420601 848885318 877965756 835862383 888328747 35113486 373821992 905451841 941669145 995862041 998668030 945724053 950940997 569120238 574565317 134003044 964619749 265270217 679652472 620415652 681384824 908312577 959114884 510590285 796865108 524756556 774354076 506544486 958891299 950839194 996063068 588140877 691880393 714774828 831250740 681347914 857840865 377979123 881794719 440911057 464948710 118565634 287008004 862293240 904305148 660227851 757912020 205409006 752016340 368764401 683683297 94758834 906269302 497264908 810358312 979161193 988771857 124674331 180535294 839851673 870476400 841287683 888364814 112421871 472269796 685072956 801750511 57053678 273052987 278438731 814235423 739280930 994996132 323898433 548888075 485206931 799145317 927886769 976007718 863838646 893089106 340902246 842595649 827591152 859637802 621085940 704859101 467822416 969103882 342403673 968469307 424263013 930114054 113941200 900474311 561010408 582668662 21310792 530000957 804869334 961343410 527033432 622795432 239817223 287347207 133958379 632150481 865381048 872381139 209468740 813532755 14097372 619958578 612138230 859802933 373531844 923398917 189828450 402965866 188878372 673446428 654609066 666025065 389330611 754400994 88065186 467833759 382494899 388519726 734889718 904085661 279176268 373712064 877923986 914905131 877334889 944705654 246420231 594215517 808042893 859637698 962219698 998370109 418051757 926628106 507229882 970495681 649045662 955615251 697907336 809697531 907261642 985135103 127192824 663825512 700460285 827056924 152381253 926508376 567176896 775535812 86055369 562629181 247623019 745106218 172974076 555038041 553752685 637198180 716364078 867763986 543195267 915671614 768054934 816514133 457834053 600612576 969172253 974246685 846634261 983471569 825307538 907136151 860242215 861360289 613359273 879641062 441300437 801226551 45215818 93756334 980301848 988656095 98615573 593156506 274698085 389379858 547478608 576013100 940441166 959939639 331540513 451894473 737817398 839393477 355003349 716186594 534444225 892610036 207913536 779499038 689232919 717278859 83321143 892974843 496232471 843083179 58349715 532975621 778029207 941716650 121744152 200623840 880048804 933677195 662164330 776270954 305126929 882348769 394608360 688587926 594100134 790368813 329285608 363103152 170312580 538886259 659046660 713440576 963864726 991571683 873289441 931880200 704662195 737622019 276924977 699841114 513717634 958960139 306100260 587678642 798418836 878321124 774813762 973093599 380628894 603202009 418687010 452526583 489943289 696449394 668720017 895835064 615385839 674592289 416628592 578352752 18399056 832607420 857038798 890459371 949421462 951573588 683964971 980580971 787586481 815677006 680564805 983761529 222193156 445937929 552117000 692216072 78821208 638304568 818384253 854978554 936683864 963302688 395271343 861515394 750245824 861792750 123498649 154652313 691904750 771548830 576047397 871546071 563342100 759896089 785464770 844540051 828571468 989060424 607881893 613184099 529654130 814464444 113978595 768545077 557342088 800337035 949120134 974426260 291646147 324802723 967047109 982618518 298972894 644512488 556825559 732528246 314647046 668031705 523918917 810776116 451669331 661816596 565358592 758476756 526440418 570215284 941333586 975102372 530492019 900156259 674448650 892722651 999868542 999989920 803132425 816505668 584201403 809235365 45866357 644814242 778039758 791869703 154464317 587340678 672541963 718742590 255665054 741641877 98908651 439752757 892069782 900454259 418046767 445725953 127487942 477087672 840657109 891101472 686182836 798524745 273824408 332799467 644769176 903209730 970990515 986214996 781250984 807847168 465691461 575330340 708696598 793294408 608810489 737063722 55970 628397188 688433290 872265172 18348545 265807808 115906938 672930986 291050749 304575991 254323132 977325934 760421946 878203737 856536317 969895914 913811391 999765440 707366097 748034523 904996423 964250303 408852363 756067533 39358556 967122863 43419869 179073534 649236607 741521693 161803634 269985230 756727449 940615346 733712057 986464951 145557749 865642257 8483139 151946592 144547280 197702828 823358016 906202682 278620205 573294105 78580127 295838895 2970785 425361943 985560586 999903294 610865925 861260909 730085210 800306604 5954249 940703269 494166806 584189464 903128156 987522474 29699404 941927354 654754729 741249143 980397764 986259756 922205608 942851090 478169597 656935500 147337963 216912945 225729238 738957989 440559575 971564000 346787193 770802975 783583726 951190824 162000077 803688822 635959698 640877571 263974603 927055791 638083722 707265156 607707978 973887938 288087979 743474505 763144254 876108193 63267237 510711956 6765525 995527163 605721097 926024814 372008126 853913043 187691949 456193720 766605447 889713080 907007219 932850146 858505822 948334057 335794262 411677230 321752493 409265434 796246633 915099651 378884411 887724609 166586711 357532050 677808971 790705651 396428975 599180092 891196147 914843020 350651629 792320203 302859728 968370597 34747809 552565657 466067927 980763711 138980307 426805053 938928459 999058301 720239003 950531401 802235388 887028963 271240755 341814738 1926588 995191031 259840148 680246202 5029142 266015342 42058005 178654658 84360987 706157936 552863679 850986225 924271827 977153918 651163031 927985711 972713152 985343698 819325499 909191123 778094510 869505159 548430056 612876229 60456247 591637381 18563517 800717937 808659934 872016019 791786894 890603539 191137679 955663563 93743917 150092241 29412613 705290706 10686358 795660542 51432747 163349657 82514181 904208959 370346610 491481712 664424564 911495669 382927051 706003804 893669221 991714129 434015789 934526474 97632118 178143865 179080118 214371386 130598176 974398834 832676426 878702768 922714058 936543172 205300792 832780388 770369801 977957355 154006623 501897597 62524721 793277593 116712967 664999544 713123174 770256915 907451278 937440957 980314711 995874599 784719422 912554764 494126025 597857774 896897433 918348709 412420759 736939625 491997969 559900551 131639267 718507685 894820964 922649747 457033534 626430129 73437789 220873895 835420934 957974745 905370185 943770560 620062219 955571990 861286943 936342962 997450503 999638805 220622020 229624376 842349684 955228341 419377737 649376953 906833814 961930781 782925993 895688406 462354352 574949424 634386253 695968446 704721096 835009799 945215310 964925674 121944455 940632698 866975025 905485058 384138606 808899482 572334183 616985591 111970960 812430329 935277967 978544710 301714842 936452194 555406982 956129245 142155622 329827419 555503838 886053159 450263379 617649559 257146032 364167380 328500694 356098953 531848431 648727048 63561191 118269187 913847938 950456651 323337450 657799043 944350153 985005152 655447939 724404031 908486690 976057804 573967190 957239235 762031412 814761149 76304936 213988551 186894867 566686392 720209271 902652643 455093127 659586224 899145738 920060894 505773576 633620371 701703444 730459527 121098286 323926726 539870432 982426807 40710681 340369052 159028992 858706046 839048955 977344365 854171503 940285854 662292500 770532000 792095162 856420420 962532805 982436356 907459978 999378590 716125144 904575632 477754501 859401946 989635635 991731376 399753888 780021914 288494871 779098900 419530058 581956795 644417818 823434103 729465876 910937102 961276465 977459089 292718283 514570725 164777998 880595132 240410908 658807845 571504929 776089831 72355444 165308345 818233977 903610508 702223463 725108394 212436589 576798745 423947603 977970022 504252351 512951908 297113134 901137354 584074590 661829671 648837163 873661417 604205873 685301204 370425560 388361843 199145134 455670636 595637983 897454853 134223070 640837275 455396864 603801683 756370682 847766026 492890845 766503586 48013419 839479042 96554801 236835938 644996719 907222410 524420524 647771906 702920382 928266292 493007768 850308355 792878958 979213170 362850641 736538094 871697586 997598199 630013259 913674187 101158996 242732572 497876763 877201362 781606714 997993029 946503635 961965079 448538522 886950354 93123783 779178073 138731749 947799588 429855689 724329136 16182823 117064405 390538614 793449329 248478970 845551144 868448042 888312333 757436031 987309462 123194091 780696729 78806620 760070680 488103700 960699292 782403446 953610509 46202778 977553138 184820801 669226889 248703127 764963214 743508912 989777305 383551138 603076798 380937043 498582827 646083265 722586089 32762847 271631633 182724576 933128492 209912245 487704481 724050435 828845803 773974654 999598458 577272146 969251347 759560072 942107364 357741581 819372429 426097608 934496421 527257472 625624408 954690643 985099836 767827090 772874071 771757823 783798002 626988192 859748999 163081141 279611918 405969111 867384200 545957644 949434080 158386177 955271500 56657585 849819217 618163074 916614311 887979787 920542923 134206870 471111094 158301864 310495386 576527823 676781348 452274757 927970824 39339811 39488121 797159187 885435133 175183006 546136396 802463633 809576867 844720725 949037435 727120037 811126301 103708116 448157499 895578320 998700914 547671052 776878576 526460718 853886491 466638553 934962335 425886100 660199268 547366439 993444157 741719787 855800224 714586745 768721476 398032641 519938281 231341388 573005585 949774672 999129587 771232759 868808629 429059054 581963945 849971512 973407342 749919592 914477197 968928819 971894156 112354199 616033025 613916140 648290691 638866311 721649734 519054894 634832965 505798122 854811863 724114888 911769938 629681837 955006672 412030038 542420660 518010483 962355497 162073524 234598789 691066122 929354949 19979380 604634331 630071237 710603606 45420426 52221318 316968741 832757269 721204706 743205508 368532073 865575024 434950835 725884025 452269721 594374788 142782711 760816114 830205149 836407394 620464537 755648143 456648996 865627857 490759147 788456631 99105403 504333453 81210804 709639938 53899682 929928223 637149391 951861902 664698152 837920233 389685321 478450777 775571096 882244219 736457125 920930204 548621659 799928415 507675857 989944063 148067491 781907994 571586353 944501901 389797194 621675656 723144980 944554495 317206674 441475552 86404206 306725054 130304593 296983058 904426889 978734063 120900040 854922768 159383629 200340356 371295248 776948061 684114600 931211419 820783631 998683122 611886185 726854565 803442492 955269199 84888783 342965130 618840082 737631681 978612472 988876309 149010336 231987413 597275428 840367330 495479504 723046951 574467157 787964743 516574460 990220268 117390480 702636478 474603400 722277820 774057073 948195017 756863613 865570546 573343121 676343405 846918661 932083423 962343031 984482009 550334286 596077347 52308033 687023425 252872351 508316478 504361440 809026848 251063946 792838288 18172295 186347419 991946814 999459137 400240480 511790992 249345170 729914332 996284797 999462433 274537872 495832982 549384931 596043201 376844365 397658926 672418578 987862302 69651800 406547014 249361500 306215066 742784925 786768548 702052031 808754757 209061132 382314782 102185116 480003839 131443550 264984138 273625573 354214852 433272930 898152293 899923904 986047316 486063103 901618370 940586235 992501965 159071910 647712305 6479201 596948941 874728988 957531875 938636146 988901283 903234014 909873706 417365190 443344723 845065086 921545280 563496540 992451262 336482092 368629276 620732785 817573432 290061871 320136668 932314536 953848588 18451537 765264454 152584393 966258754 558282641 612500678 451361287 608621930 508474337 865413437 14517022 43046933 455942105 948566578 683847081 765141304 997435603 998957812 548116212 799120082 396636661 622185350 811858455 859066308 361729738 775213639 631832199 946441063 129855436 492745711 768743347 881806600 518049717 614888929 974756164 975542850 135452527 529667292 544726901 816422406 460525220 647116236 243801559 245282754 138398246 960278946 195524006 805270783 722368955 852103676 334947593 639565316 362329930 952163773 478609965 672586112 373048270 779380599 342379372 887581484 937737822 953967992 156598455 374670393 548689554 951668247 710498095 786776531 923645413 928019714 65214303 552512198 134443842 872360423 223839890 307282825 227151317 893385962 18534155 598528438 905050403 907258002 126822416 828552910 199447155 454020917 9166667 657871447 80312860 969899473 792644054 864387317 712965683 894914476 68502002 534545905 439341445 877282589 494816511 913237733 150694086 233555943 687333268 766101295 400909188 901245028 549045625 840038147 101223173 704050219 476045282 603007792 867629973 932253199 449647195 888921876 878472448 968691374 615532062 785011698 803012887 824353868 851097057 875837091 505910632 721810528 384050973 516312274 512254690 738727608 217982214 713452239 586962715 998376583 803767208 998779901 397172842 952947506 557333561 664304932 205883487 719742653 911636035 977405038 938874355 992103566 63547678 711923168 985403340 991844172 709526291 831681646 514907644 646533275 946171209 973184235 262183745 459969619 465502078 876816039 244118775 407077711 819145205 933849393 906057124 978082105 608931765 804663898 673604171 836952337 974955792 987986585 284767636 533212609 359430032 722410169 93743218 130851851 888282997 984118242 849022289 859919722 335021531 838462572 34976363 810200840 200614204 906220649 253276317 786207640 179633799 556117693 825057143 918310814 461795229 916295330 443421804 675510994 568713509 833932861 297560888 682106454 156717311 159865202 707372480 914479647 623758474 996913089 393898023 707041307 429167529 734603771 343468254 624108302 725017969 998548508 463487837 511658620 604303758 945390854 172480052 704566472 744695705 852374578 135385992 806468018 94460507 359169838 931486606 952354392 108189684 385271964 33647647 416109307 950122019 985353982 43570099 793551695 784803771 861175123 757304462 796853002 874727802 933016568 368353997 503153008 184037693 552934498 844466469 870156997 752678081 907365447 642613981 705277721 459687118 694918274 153725703 462968930 781461288 915800314 932009264 932413617 242497479 908407897 688836483 846697385 597393752 606886644 724410547 928200333 709690020 976213897 445686248 580857356 504202005 989796267 425402579 772494006 711337991 751805607 820141269 981534509 926085439 952919221 596502160 681031222 284897328 359145315 773535896 945473541 261997216 969006943 207063468 623526222 961498705 977004823 751508533 977473316 227548346 681363565 719114013 911988706 247387288 773277387 723293306 989410262 351615567 994334879 220653975 534916104 810221164 814619008 170684318 597851198 163034332 304172605 338007457 937078677 602966776 740621926 886227763 945418284 542697604 699820856 764381164 868686247 81086302 140934813 608978797 649290892 989740342 999213150 90836005 801486469 996512471 996724348 227629447 351768052 559789034 947498336 128353689 662908526 286043991 939946568 367556538 392746613 991676218 993790878 783964117 943801191 573088115 903962673 940931467 999298732 729866894 952438316 448064269 578919141 803412718 905154444 247819969 864279654 150808062 810770947 428053386 778227026 68764142 336585694 187331313 243855938 915301147 948159902 57464239 462753304 714482728 743596282 110717241 456952894 175019855 267874553 10238555 339429370 407145577 552074290 700937365 851424635 316569332 597278732 641236615 711736442 989677564 993545485 573590011 722777277 34645521 452079797 938432437 985117145 191074750 765860767 216958731 748780882 87886221 763280677 59041791 94151952 422897242 653542626 227378580 291108759 480673359 604207672 789279977 812234915 918533702 929465528 834393914 845767823 739121147 841232407 8172280 974550563 645478705 666251852 360506242 519376106 654407586 868419291 193411667 934108298 955693297 971658658 836574323 969707519 251758898 578230456 826079319 939615214 899147028 982780728 736790112 912597194 529027924 709918177 769403775 980025030 263647404 446052573 851391754 943614929 111371388 710830892 75250593 559625324 309793583 484826263 643032048 746796868 519736937 982123503 40022651 670621468 465705071 665514280 554516819 560241160 107133927 964788168 668239728 938455594 324036938 540486939 785466471 941119382 572358688 731341956 660048494 680812678 107285216 581131568 331382059 870913159 621594309 698776071 61191456 956667747 176645621 925835720 453355813 856778420 463237428 521194792 950383525 986837193 472163654 770118664 823294360 879827122 956813240 969377850 661446393 848193129 168241917 981896511 69858186 583774611 235924951 481098997 192038139 198937311 991271496 991513512 173234432 280271606 607693204 692417115 278544599 806597307 5789162 119163098 71917604 264202152 230614324 869904101 741311425 973997319 552767004 881082694 978323159 988229787 218232391 805010944 804138154 816762918 933379236 935891836 49295097 209255932 302264332 539417903 557089188 933279537 832322388 882807668 729842210 804483582 256871239 986273507 122947455 306941462 104882273 488814094 13390390 83888274 243352554 995702817 511021008 840265611 901961692 986274102 979225379 982491128 30537793 418552444 202865911 334298286 373782799 601278246 273707834 559349953 192615880 265919424 591078847 955657037 346060669 387358391 834062956 872809147 32635019 123158087 7318139 320267500 155278841 362146295 180989535 693193035 723262635 860816529 670825061 940081916 418480257 519289505 529832922 607103209 725938351 875152772 656091201 740663731 290552158 974136011 963123081 976559096 939062120 961925581 136102657 380040657 605760944 828558349 639818203 788309733 425399211 607365708 628560132 956489857 25075822 855572541 474339998 514536556 581467278 771527679 875841208 978775997 559362139 639101804 633399520 664078560 654539479 981828529 919269905 924131304 476949626 485787089 146510923 985506240 132455905 657257218 111660919 852839012 28505616 546663258 918669939 956109520 574654525 784641520 388813845 771709667 905370949 986251531 710360353 910870246 788914424 934656298 243233023 318723630 136997200 325966308 145170017 384417038 302746210 415522197 944359924 961950487 891701744 906640191 919027384 995765076 233554240 446550302 147619806 748971304 710702145 777380342 20819168 477030523 811078337 814090048 210632735 410877419 897734032 969865178 130254751 131329388 774734375 838355213 143244497 546700215 920682448 978363628 46318196 219813331 663951382 799824543 277059995 883679080 432301923 578793909 625678305 736923894 267100813 578477800 709860578 845378409 381491448 831065914 135093035 488115723 760069600 875633861 626791211 632286867 485511385 666869591 597322305 838196302 440327686 778172613 756837929 774385926 444326967 982866816 490163064 881833467 810191518 911707769 701664237 824710838 31536199 745115550 565600041 572468562 952532388 992298587 34951526 179908115 594620871 607868897 590210082 919791816 944771451 971166846 137526283 665230691 815099391 987296344 895023606 910510967 57032998 541668554 62606374 364655301 606570762 628059300 697103965 825632815 288872096 786154116 122780540 577157167 684256313 757437548 33668405 325777817 611265110 654110755 791649313 959979473 716439057 932223371 849868082 966546263 331314759 589516493 775566346 826474141 276086443 483981634 799725012 878779694 719438321 737536046 431967620 692655275 432740009 434684149 107885779 891272287 95249729 999728452 258242070 798227245 917445902 957550042 528431552 673710862 955370964 984136989 327588774 452303978 919749638 988215997 935518547 941269781 65941446 367342640 324780491 806834989 496023336 831182561 406531498 962570764 171185291 251632301 906350248 984666681 601683739 759889431 811033888 879847471 785744708 836287719 173718439 199235601 5638912 336547382 398762901 656459975 88955593 807422918 281181065 824649035 690675757 702382617 434037659 819887245 638753255 827109862 954221397 979898829 26373445 783118110 80330361 922955172 498973397 948759697 466358078 973843717 751867202 963190763 410197212 747176263 125688226 508771520 40744139 759421003 356814531 421039328 702035921 772310580 520234475 786334286 696443693 867639778 43304204 985387377 968041545 997915741 746422409 967095997 81001316 299959092 342855187 607131549 123128606 882365218 769784230 956133163 228780691 580384639 590326618 642159972 5929538 583707245 825643312 948134241 102003195 891737946 426858449 709181580 856327676 895170105 880315446 947455044 314556518 868794115 442424625 726007000 565253851 826020439 22391512 60730179 638903880 974318564 294328956 792835640 662069349 768201515 44604377 467637596 819693732 843206162 141220389 410148892 442294238 787939903 614543453 671734789 285582369 322334536 423978554 810110773 292526736 652026846 206148142 779915754 887672377 973400867 368531905 810880232 434194690 544151409 835631985 914686962 532989365 830515304 381411144 993563673 566097695 602359716 902440744 971939872 535816215 706447667 217093990 218733420 931533157 996493198 742616885 959831336 431754513 794324364 239484666 418040822 15359932 422754634 174155508 787918036 23124121 96209581 70324474 704428054 722294311 773838381 964822118 995714137 467055780 978764957 985977079 986001256 308085105 690403012 32056108 138333147 409963420 821745317 684190788 981308118 88564270 923474905 650755619 892996153 522136165 796076993 478417952 945656090 244822853 981928856 418987268 613426279 933607330 994682678 840189072 987079434 323699193 523914574 15045257 623480754 61076040 148355498 613534225 967319146 257661680 519360791 653367276 850180942 508468964 762221476 811570340 819176230 905711682 948633007 137239312 189131287 439638730 514871123 689327872 712340180 406577767 416282449 563762847 583813372 900506055 975339754 851559429 991560573 861902859 955687661 221039037 268077711 967269324 984887298 13935538 531256709 381010338 817475084 56621468 729464507 654317017 713190718 183798967 642032068 612574943 832264674 239555788 516832576 892052115 959834525 536861763 814660896 20743787 589471037 214735240 893843978 503984386 962473127 776143645 951336085 785298067 926170791 849345609 855147651 932339741 960639454 107634722 121986692 218114923 232460646 393393923 840191665 492975375 871744828 331496175 981508886 306138133 933012295 729631324 753644425 740254457 885719986 406134313 568350086 433679142 795575851 461562122 796809761 652838296 792093776 1267315 209909170 484910912 772372127 777996414 922760266 417726760 869279120 929869768 993657978 182929312 613256887 180247293 388844795 3347227 955348098 436717115 439832024 789729624 975654095 635015852 694221565 716578712 751570043 949005246 974237928 249564848 887609258 34226837 915240544 696083021 742122654 434741980 864555304 482108964 639912893 415199993 553637095 197896540 446333485 690815968 742527738 587074475 709128237 700757565 823636401 965479605 979706684 535845012 946323048 826600497 879349824 363703846 559467736 674306641 713935403 82643192 122332020 204894946 232638606 485481585 834659440 965785241 977973840 803906286 912614064 816006150 885804758 532290096 801177765 715965544 901243972 910924598 959216516 760201117 962811568 80890391 802673024 627374708 660643936 76505943 928526081 902578635 976198454 313975903 492145291 214281267 445403122 322410713 774606676 556781797 571573165 461941708 779032494 918929964 957016187 942686312 944157957 20032859 637932635 715807560 816346147 258710575 855550187 825676318 997228799 507097740 703996837 238732469 598974993 545983314 914931422 685801102 867806262 691783747 862362290 619315741 700209015 582553601 787763413 869001679 972936088 121554685 330495610 650492283 865152730 511515307 774050278 27649149 779620918 85308802 819103627 304673898 343326423 512451088 683554482 411200112 994578887 492274371 995595871 641174499 825976956 347333780 564615332 456424392 904044238 762384795 876842932 757842691 867471563 351676812 705612917 915815071 935372168 931185277 973831005 350254781 365496208 197707855 782496666 987593966 993350331 372557340 482954335 716129394 869148247 140460380 367904076 131935035 449685225 381549618 455072777 723805590 989335154 6248511 201044547 157440830 548692826 452878407 591615808 931097475 970120505 134593851 997793774 504922958 697304976 333577103 354271819 488376622 741290096 493199244 775541177 179244347 263094905 955558641 972715299 205233808 803854210 231010421 641377824 858431007 954329315 592600317 926700928 567147851 847741146 117427877 364235454 151948555 450845405 420743709 929038496 227885227 799382897 275921983 559722126 706017251 896474934 189046118 960446887 710050709 823950187 646402527 800204291 442762237 751849711 230220344 699609788 273782521 600132862 98107806 235152250 265271027 969837337 1824965 65560197 52058446 308580366 760754915 839118989 450923884 976540484 793438928 920312000 935274592 996704316 317862141 546683580 815539097 828053735 97369150 716176240 729555024 992400850 107143565 724150987 36190687 275389675 346436138 703177690 45085828 590755511 543124718 892637196 950771322 950962132 822196856 897893705 801098375 939310703 35349071 281430112 931100401 989166349 782033066 983834772 879405495 935689391 770119468 805575769 847743508 924291796 188624119 901140483 732674108 946564550 746854030 881966720 343548458 518592114 722380420 979352864 22807795 357131348 141809460 604790627 512444187 744598716 347934269 837742327 662325821 686287765 515488915 895958994 809612245 939536051 971969401 990910769 302599470 397914707 697809351 733124047 937390715 991371521 914072281 954706936 581913004 707915098 652547197 678561397 794599840 982633289 430595602 607309675 375349523 840695298 599929848 979177416 288520026 468473678 379397310 515107867 888639973 905577386 853217127 964804015 698423335 778586744 649662003 958513167 477458629 692009183 399211235 742648063 455592728 541510527 287087509 631636314 103953434 832793310 939249262 967046697 621104143 883822444 817620716 988299842 721632235 903747529 849195817 922914512 163216045 845534612 738140723 893095683 780335409 941994288 631899890 862103605 811019315 861321543 838259872 884075929 696023610 985413347 784475978 910223958 495371554 552276773 172129111 470178509 556193616 734399644 349566531 906172515 817668042 867702762 800806722 983219016 838361626 855072617 658669763 759524490 534277587 727353106 129304216 329986799 587181981 599626020 297381779 449778529 915907382 999143924 587017573 869641000 698318527 876849322 247454854 385641144 734338084 825357107 12808136 884160103 631924385 981862129 21498217 303216288 266865824 762948803 160252227 505617734 4232186 163419455 137753749 207081627 732404472 778660110 480023022 563730599 650880113 966405835 877101558 933417615 406517257 661406044 379672545 466326036 181826900 319964046 713504920 753698367 865528596 885289393 151911285 527448889 926285878 951429152 115828357 631738757 753260132 944045277 377443389 482913303 799861120 956116608 584072268 839261738 926439506 985317220 236428089 306655300 650705933 932362729 935822138 963959079 306232379 680837549 564332380 966701688 838017180 974107069 793959079 883989492 446018606 481074581 417242483 863467865 351184505 593227914 105539691 444261528 281597012 870147262 941340582 965897972 633089539 744732878 801011952 970827454 420154301 815162413 589539140 921485329 351498818 902913690 420786693 592714455 116421708 432474760 388702408 410635520 992264192 996560062 714278317 909227353 23683345 63386400 215130572 301881263 862647986 899688798 990577479 998910399 209009968 478397603 740616253 805200395 66010226 336921797 722702876 827363245 66363352 362564231 606767287 704239949 708384885 979984064 161966310 896276498 727949653 747339859 831143236 883046144 194799935 896070724 81766887 538399186 940581657 960056948 313921674 507326263 671400217 704304646 610531457 637866255 159916721 370291909 710583882 887601622 859016984 929438144 760380923 885896783 113741869 584335982 109965237 758076638 153939040 761251306 295385203 966774448 406694712 938801270 829830991 901680321 684738849 851455892 280727349 638615656 436393123 923612660 90857501 330837072 803017951 964430025 3819109 197211777 26077803 824917665 96382435 334425823 654579415 912692471 788003439 843348986 455543989 653419968 623774882 702812751 113531955 231542335 673583829 772604129 267933317 547086107 854283410 903836290 299045513 675462107 249768362 606527459 273431128 949285817 579292904 642261456 580391456 970857712 277360630 893589849 276266133 993315356 266382975 366580762 98698667 371789685 391603042 775145781 660391513 858345441 979536555 994200320 583311977 973972625 766009256 936449368 954116195 979165813 644286849 799953367 571041857 878359521 118764470 600519387 993086987 999990305 960493717 964100417 521620371 694460527 391834365 532377060 580786627 726818159 471350698 479479858 845843167 864294071 401109099 796445922 102453780 152772115 580854110 987399860 816031484 925376903 370020110 493615270 267898625 927335754 847454945 877304994 905803606 914391293 120268559 717358461 745373704 828587767 210900111 785764901 928777619 997779282 301066660 951656376 667708489 914826641 71879331 342657971 543457070 880970232 6674881 654215029 270866155 912352851 773525882 883553006 84470748 377613836 29957538 799130900 279411736 706972231 610420029 658139459 550671019 573752319 901356188 965076133 418923419 520570422 80520864 309497385 614258781 915591809 160126553 699216755 240178384 716402039 851201499 985338931 268375634 785926657 690414130 802561478 562633447 885691530 767291597 887926430 756643690 922998382 439848620 860652383 965387424 996779197 696982983 917901784 589478092 697046108 765309909 881901284 494939459 582673366 493364073 827340028 758889812 929247790 579048724 864772313 139781545 479154530 589513888 959989602 440564111 686065880 858876727 920001694 698275082 979441470 116001704 615082983 526324881 784615961 870226598 907611971 519135323 962695072 834177073 951351668 451901855 752661906 666116950 926794359 483595819 772974033 830929958 956655383 176360745 625595499 912909309 927605598 56099645 299454062 240493668 952717502 321624527 360147672 801370980 889572367 737452247 949464309 134554992 839693102 198153496 976026665 923718192 995495301 860909038 902977065 540515618 628402031 650052852 988887624 738935691 968686361 457623401 587236040 337213381 956890145 641436347 842490703 55910480 407359372 11587871 614960888 612098200 994646586 188508149 226995706 219094846 476932605 737821584 845270220 763250183 997403028 289511562 521580638 393220565 872286459 580485358 615258803 857244353 930728034 129660600 408249603 547577655 970870150 615702755 797290817 353553631 710352380 529180997 876074808 294122342 610014320 684497956 972509964 524819268 692086377 658833094 823533012 343416592 629422418 675097492 766480823 905745084 917991714 77462142 141538892 704643743 989185746 678291606 775645910 239121607 570504912 165132998 399610153 122574394 245369375 41078803 798078629 396518666 712839015 936088119 954205207 623608056 979076886 488875888 525818352 591951845 746668982 578465201 996060563 918360966 957384676 661347961 995439482 711610425 947450417 204205921 988784732 113011406 609224404 932507834 934835075 373841254 550577345 915272293 924505449 273077829 365981774 210291985 572932647 535034053 836167917 775019266 918777317 265830371 899368400 795277010 971522519 223992080 853716652 783522425 889521037 385707608 520575933 123537575 554142563 303412141 335437687 684545875 844646539 89143032 173157531 45296750 320445742 948573593 988334788 764738165 877485205 522592576 669088620 782261648 940805573 529516449 722543554 601143780 875596064 706840179 733563627 728930207 791621720 406755282 458963008 507594293 833998276 703701002 945406023 791103109 944567838 213005170 661387113 676608537 807663106 39029651 284357333 289310060 310982504 967848523 997531782 928706800 932473319 71886137 334856038 785971938 985176883 109854211 587043263 330900644 512996217 985801605 990471241 545703474 942122102 223027107 885044454 81586254 608308199 674481257 920306106 562942452 710325472 919555798 933319744 172829857 392406013 777765774 916200599 209994004 401251003 579388425 875634543 937918540 976541489 315527224 378581596 807686784 949401864 243725563 482083936 290391952 535107317 738845645 822503349 740509836 780968583 781541307 878043707 986113654 988192992 721079465 971086400 578288456 629868860 379075398 859536290 452128622 723094592 320925799 785454802 810541239 898564509 91123481 899980211 187731164 708771637 921200550 943800567 713316368 882393686 245283002 524499537 416008881 645137382 797171743 908966658 592207430 926527942 647329928 889866052 183185175 526041494 510900171 729055360 271752350 786285145 644902933 809894250 495338198 757622179 149667742 443120482 810685002 843215395 672210241 830747758 278046512 685909205 882956929 990100236 988681473 989117045 501215826 632811487 82153074 101531116 172663980 607670197 841829916 932492848 44127738 837714728 943636883 984686577 290728226 670843046 493899749 709415125 653280424 868498847 185960565 233009595 155304178 833030132 84100276 538553317 699650074 844900822 506722905 594566737 340710785 825708571 245241163 911926700 827518882 828764728 802977983 947368078 867124025 972608871 846243125 861680633 358689669 599803073 815467029 968017094 230186772 502668827 672517461 917945384 859205396 911177082 962999866 963278806 213808546 691299887 936790006 942267378 123185999 512297140 329378317 900621013 167411668 712732600 446983914 532633730 513920280 942325643 983414072 997080285 853796053 895275682 122356642 583736767 223487024 763895405 357575272 946897800 180444310 679865440 193920304 800913049 571249996 835703137 29886271 900364353 589546931 762653418 723103148 863831413 341508462 352527062 526951598 658384581 222242376 635817161 972123497 982764851 66387682 659445327 346478334 530895933 770717311 782555629 418463914 601829895 283796936 824038844 352469820 393173626 463899668 820645464 520968051 802702729 288838202 656751531 53243859 959367996 96583949 670944502 974665787 990763398 790891578 903592027 682098329 897685151 227286136 730568602 656871919 674208676 419380104 428617167 930816128 977110055 724041958 900949055 112445992 620569992 522459056 609195773 48605787 481910063 230745197 940358969 517568049 901553666 994049789 995323097 687986891 787023717 318836976 663668302 687562463 908022035 999316477 999747736 263376875 708664142 849412876 990715849 151994561 173727147 329470401 582242227 134533415 620724116 247652285 707799854 529213266 658608913 846914789 996655222 450526077 734644330 982808109 997860237 415181316 811259578 599403704 937741255 494889899 727173800 131240690 143794525 410315562 940424187 244491396 461349906 162798743 384823109 357802084 787147909 391438722 660069262 629692824 682818729 244054034 276344998 882399544 895661683 816498120 866977342 918075538 962745896 57200057 240826824 866644422 869084107 114392695 466996577 562134152 766663136 411617985 847531735 677609213 813640599 316924637 470713714 910797574 980401794 305338773 835271134 49759452 88966893 831339799 887543862 445253823 535983563 812544893 926742225 904668846 911098608 338965226 349221469 45083 955865040 44869971 903306194 293700585 359130586 229084565 380138483 20619052 947723474 205822160 898208215 92427178 276429849 732054523 760441126 469965140 797764234 268378871 705905174 480570470 820947912 255237765 679404059 944964438 993788695 147563821 177965761 299432035 387841242 938580623 960605870 367816482 894571733 876040107 936700647 55537738 127643096 635356810 741914596 252374952 610389168 605022747 676300844 102210373 858431196 277778983 672067472 531513191 828579528 432502901 893918821 289961900 412455840 240712086 744998597 513232485 708057309 219816131 356799077 880045850 915348224 305520169 518853103 456895269 464488361 687616086 862639707 385877143 546715644 723120782 813131063 48829999 713678709 752795955 801331723 6347992 463286242 846667597 960026207 370852003 397943455 343926200 598638519 304194759 576992176 491330882 534265845 243834018 299954917 541946189 728124583 839745035 912893355 826691583 950204031 79424643 441348606 395468041 678859875 290281023 950157254 319027215 509515252 653861023 891459318 588606647 999470925 495451524 629837776 568601060 649582511 269699424 858308437 230806788 720783928 272846459 476223368 408722352 947706676 939152874 990737196 337735547 709252816 556700720 587700649 861754600 924031465 700908872 724298556 619866833 962666890 192789342 835048150 860507252 888986686 883295361 983808608 723291338 989783689 890819740 928817625 839849563 916427702 242752721 606298711 644708009 964204857 151105679 637194735 959784938 975696612 237153112 320915421 655038269 774847450 445893909 908498560 613075797 667046352 219428760 559801538 683896778 897769233 271056532 313480523 49579350 236896339 943878022 949010574 408574792 641547465 671919157 980444138 405760575 823395274 437988043 693103342 609674084 697420266 586331852 706070810 809932102 905076694 745234264 773831032 923434057 978221077 599858394 649297993 873423639 988025175 31710747 796631760 417403485 434729477 763591942 907477918 274825213 586283731 110905414 743891388 657180641 863051731 397039971 470290969 261980639 671763296 490502729 685532960 341227627 765909146 190738488 915583069 176086046 904892648 443727084 840450236 962083162 975859355 702700902 708601826 383881895 699220865 669797738 890162150 39996683 641308550 445643891 769343615 686095560 978584671 864777213 921367999 911722924 994794978 592572767 706160429 249722226 566855903 397716237 421198070 473944126 730522332 415921975 725801652 367494176 746365582 733705560 930901204 63589993 274309278 186554131 810571413 403527855 577015153 63217865 564531038 770356014 777836834 198664451 589308557 186497818 497771428 724291417 938648594 119297709 396328675 698655196 798655501 848818674 902116944 129394770 334886345 336059994 717402887 425847439 940124959 813068948 933284479 962829724 975174986 339355176 930075300 192465881 266198586 823877079 909075337 561404564 817541161 297699854 857285270 33605045 237266363 214613453 848983308 151976195 773673192 495075918 886034724 590714284 920631211 110306430 403310136 531104110 925156423 613500281 669063945 26612880 835232226 107871425 468549845 62580910 472910289 622492692 788946769 612613962 818088164 314788372 556330622 809082089 964835302 22034670 557572353 853434647 956759346 567553857 573443247 350055301 669541746 763653020 949384605 414759522 660148440 3533678 830014543 773650269 847108942 660560514 780145115 628463393 985916321 787667382 997371540 230290422 485391152 532846032 951392546 920968393 943852204 182119636 314702865 905229155 953841085 931680905 980076323 959229921 980824495 564615522 772544652 537893795 720775663 18221185 499326898 572761087 654207170 546663900 956283533 746016441 747268199 821302481 890877040 947530936 971413092 333499776 449119734 286756104 724706649 572288903 789841493 992956394 999317153 147525054 738461635 729143847 806802639 750100617 889662320 495002748 674981714 804089263 884303320 335496738 789062618 654291418 714946312 258989158 800496146 939838822 960562461 946219988 998368966 271663313 944142397 775863817 778599565 31056889 893047472 164439946 415259609 373359652 554941395 212199366 879467752 578804788 774444604 535518282 626625218 728477063 787980000 243258324 611170290 212128545 258979599 923102157 944080290 770839009 890849129 768462119 884602232 660869757 664403586 865556597 957094854 458203590 811737956 612519325 932426294 897186936 977704257 117839274 676250466 235671456 985229512 879273508 942138642 923308512 976992471 362343841 474027113 136136155 710873696 820245009 983498392 605713107 761566783 835197543 850997079 852499216 869432902 818317186 914683345 161279476 629001006 822508078 913610667 208342427 288884829 536645763 836053040 199745698 395375624 901289668 996586563 65182730 534788387 126063663 240942342 304254221 334357430 568020547 898674882 943861893 964751092 500117938 725833798 196193482 907683391 865959230 955089452 971295809 972587341 663648612 869457415 489277575 982122663 521183177 787597230 895365038 901160117 972609724 978994018 364043085 375734524 121288074 630771731 793280843 806769091 634554043 941260552 596264312 804614137 520887995 588650215 84062441 298999680 555471683 863682978 46439030 632090096 347844846 459467003 404949052 952962334 595334989 772281624 619745455 846358315 935364611 951356503 812698849 932055591 993813835 996388485 777348435 832151997 455057528 711815579 212954328 926596257 603196192 979061372 366844458 387695361 477748581 492108043 43622486 647213406 571149456 621252487 878224763 903059717 748153850 903454307 829745515 924275895 489692516 977693462 373421149 385105939 284050886 847586650 954970012 961697222 230313494 893296105 647666911 805921846 223392438 807535859 156347139 873725622 796416608 973780475 895715337 934694680 879683485 993256953 394279374 747625874 381772011 921010298 809183672 969155239 287282697 661902582 414679362 672531273 114255538 992582719 206650777 234640331 45081802 69222999 234168138 741204802 223685018 986682392 736804960 796326035 156590703 165114301 277287508 458099845 248217587 798372217 582869393 813357212 189773045 197980228 171627940 447613201 915969389 977401074 674554640 750812359 2442131 471000544 60879199 236801643 506901298 805599793 38479643 350167681 942336060 973705553 450147359 519543342 623510979 673176429 966236987 975240230 392997757 671045687 242299858 462176387 942185516 971137368 926293506 969049072 458908677 531240470 814099285 838977870 368100256 887245760 712976612 944361039 561026469 919397741 570213160 673307870 64911427 176092757 939323336 941448265 512759429 854496482 64308056 487766041 157043508 262217646 824827774 946309758 655541139 893730378 274638377 846094068 339759587 682136441 312074306 633638621 680086392 790655476 5788489 370548727 528962416 681815839 102356678 215161560 257971161 311666623 410442255 456200826 372401874 457995704 15805062 624079916 87387559 176344976 89806965 444497262 322805012 529535544 773090733 801392602 706712268 900663026 413387804 650557190 265887793 339836846 823308443 967272079 371739627 439350402 193737075 523035489 28664056 95304726 860117260 964275951 816659134 886850157 722717564 735988803 297710963 538114421 136111900 170064855 705659080 733001746 676127725 961970224 551693823 626165470 959617237 991511244 633286788 812465492 694932931 922303309 614173168 709486484 32488286 981114053 715632181 950205820 411454199 946452937 121118812 654009998 276131324 335644265 270333187 390814610 970901541 990644296 980216272 992398233 927032713 990236078 269967932 407641115 274471284 604283045 276651644 862362565 825938734 954901746 824835630 870276072 128380934 622083518 925548606 976335769 525450028 885913156 982561113 994953566 772910247 947492053 45280602 932990755 887458946 984990474 215839793 585002228 164615810 275940255 310957475 389399782 973521591 986355916 351538757 448325445 806838492 915829542 3618783 607672872 997539220 998078800 280974587 850606833 50064352 346476905 227938195 436735969 776111921 929284599 19202687 845975186 754202508 839956736 555389578 640556500 97480168 821900719 164198397 647719336 294836612 658924686 722760541 761175783 716078318 751264551 716637792 722747163 504454786 534529201 433979958 865879741 602541215 611745210 894908800 999627884 201998138 254958483 201971132 340483462 911623667 992578816 376517002 573489426 927451700 987507735 925476620 999405762 38426806 399878529 708790359 721208594 192901611 554747951 696554257 855868499 441591631 482605844 840943788 845600839 214458290 964924391 486805786 671132811 539787736 886868124 387798174 688945737 312040729 846470151 625974312 893886321 755266333 805969746 963431869 968002974 996852189 997082037 869400475 887807444 480265966 698875435 716293523 730806070 195132026 525580687 150610831 492058520 126799900 515489978 708317677 917308965 707398085 850350255 318805044 724614539 678053574 944836585 132959447 886199670 166408754 946316669 962818998 988543340 862220598 947245027 875627221 913518871 80766459 961551819 233313357 319018904 216315704 818330363 796725070 831983295 951590309 980968655 318445453 582549917 943831038 991548804 903644189 928429263 539753812 811687716 492237590 557486209 412461355 479167407 94475273 957081227 734359927 749634549 394272897 688465257 510489798 727066435 150592635 486495590 933717293 947287112 447665988 497653877 846272396 937752243 271349730 395280294 78194321 362834348 720046642 845700163 723364882 760237351 317925670 732016618 505705153 877594610 452441523 740547910 143390833 536259011 157257630 412395394 283849029 883105568 211801879 371558717 70219945 253975767 313936430 587394610 193393452 466778170 812163029 970524581 778910345 896703579 581901195 684636604 599066331 997826802 89669059 689840342 692849760 881569350 557757183 931498952 293262178 845216828 382392486 486027150 600728901 786959370 379642564 445129986 609952841 616933791 415965890 868707754 41925472 248618497 967261968 985686437 185663631 772439067 553734070 646215941 84007731 397343026 234831834 562504257 482688434 728008450 660765197 958301230 345099501 692260071 996565824 997296221 827961056 940567560 554845447 788290399 949905642 999905843 236026332 252659856 747245458 896552662 352904377 768644830 996913987 999532266 81296725 422607002 246640524 681395753 538786653 864994595 424802374 829068242 826139334 904490353 430646524 843609558 541093221 609043089 316036961 366673359 360920841 701411033 26080397 276053472 551890690 621132013 546918060 714644793 559433971 630912604 260693385 659464198 436011110 834401773 911504459 982758151 450623677 735634327 197492315 858285486 695051770 972221570 378747330 478073839 13763633 544385613 873138546 994337306 322780140 510101032 803594758 911617986 86640772 481628434 622235415 789821102 782879974 833305503 995356433 997570222 371958288 827892806 754966017 870378863 640562096 653528153 870503824 912096780 553404023 872244772 892133415 965103519 539427921 722364045 308830863 523899481 895121726 928096136 100349231 880462198 137089829 883345576 248914175 877494771 390463851 661793616 648040913 960035930 3615022 847768193 649944582 656549719 351125379 631903622 927990188 959826514 368255751 782622134 675848412 998979236 391817406 455077225 580078627 976814477 22744601 51882559 385910640 824908189 902112474 976680522 81220547 119697403 988289537 998434016 126648441 310893740 245308341 821391570 423090257 631611933 156226892 271227936 707592552 847043409 875216784 935437577 316371013 989552349 533951946 624496363 775021491 851089526 814551286 917871732 968422421 974109513 495460355 624961056 263379292 800726004 510776337 687571931 502238203 975845911 535307845 723081269 691083295 762006438 247586527 640552683 494549144 700652608 395583614 459705139 778846790 826311737 954433988 994132937 148395160 340285408 490596593 708207061 538173584 701537905 876911978 949725330 33731265 899485154 906189546 971792866 432333427 604924935 610887533 691237361 901372809 998165416 502065582 790315519 661049184 838083143 131850834 701178130 669075933 707344087 636475478 992765924 972048551 999416961 631177536 955859451 794771504 957117107 193281253 655976943 632678528 769636416 755630678 819558888 601394679 954809118 945976985 998495392 313427932 856874980 928212145 942722207 288810186 427171533 180752151 186193222 342251425 434617212 42639411 490750363 952794034 957483366 620485080 919540614 553249042 976955966 60546899 154779240 257112395 655702989 992050454 998065005 342304921 373681286 126520604 633281273 547141452 668440570 326567271 681805041 46271011 62852389 830165822 883836380 17936146 252128164 451465311 802622826 163002354 524802514 202174925 667500557 640684065 873400704 837823981 870646158 864242786 960819986 323996172 941693482 487108451 880389672 286089251 994255461 635250815 696126385 762718590 773911860 84831783 719218722 42856209 95238133 289971266 723786721 685552972 840816948 165687334 660028805 9787711 637343436 200620804 953951484 283416279 538094068 212770879 857998126 827103690 899459856 701372106 702748597 684770873 906270138 287627755 318075979 470390465 561784557 590666429 725116296 633307130 703971711 815658757 816640470 683428443 768466370 807945345 887939779 420181663 613389915 573811739 756261332 423113549 841006256 150226076 644429128 200131732 310216176 347950316 426968497 396977003 729430262 913553500 971749889 909263942 942319310 777265769 914065889 159032383 574765217 52085537 324120266 421483561 426059213 11192501 282769245 286389133 388150429 589643114 596405982 934395847 992659863 727193968 847647150 987782882 989356024 739058540 964962878 444455014 778384628 267602945 617007717 95147699 766893041 241050530 990549238 468963421 611647259 949085437 993460371 147505649 357900529 513383070 949324904 804110661 859436789 880783115 899460116 185865226 956998166 580496789 685523653 492967911 619508861 394633005 577582285 242377706 959875283 435805506 873595856 936603689 943618170 945665806 973629946 800102114 991121204 381196677 790999369 927074873 997716461 505505363 644310969 148695333 944442364 600904780 957204754 41782086 719344218 617845329 963446096 689819361 785045250 899444681 939975444 524392362 647171189 283464463 415987052 487920480 582884365 350557998 955807376 806931035 864005708 292486977 335703883 457365366 706124995 404017888 410420901 724301445 949088684 257980033 315361202 857571509 865464304 772309827 844459642 61824166 914535844 185042882 662007194 929566749 932099402 655125116 738452366 327837110 626217377 908191956 910094547 101517706 400666579 36861785 510672098 940954493 990147746 56583888 951159406 677378522 864587885 693804301 991016511 853970372 918635865 621535528 859241241 590168997 756409935 962057366 967821885 889480165 899042265 193696713 780829205 225705186 920436495 899996316 999092483 681015562 813061744 927482691 928322074 478102360 806282444 299788336 492595797 640960078 844685810 732218567 889938766 196888053 798091592 941912644 942455236 539021812 819600517 75256623 220145353 221607993 425520257 508472832 592303587 746321396 795757196 801458311 899932090 962664497 995564948 537542908 718709577 829733163 857888351 503745570 628004574 388595335 969752933 772944694 866323574 256724942 587978045 676906894 995748109 917772849 989978236 700507526 713222634 808684355 885389599 816567415 817486554 107973442 924744633 589847400 689102643 746062156 913303890 489380119 627244295 341246337 884151998 19217647 32053862 983888261 986277378 783622090 907774404 977141417 994893954 363087591 613290943 90884450 517101365 16919916 955328530 570364360 734878390 349692861 968320652 934339861 949871958 165331543 248163715 307063879 569502152 89780457 516374905 252000720 280005224 440702323 524747079 497158755 720376696 184821842 249829626 91820878 837082479 791977206 838013243 858708656 924542177 839134004 890063290 421508381 769671583 636269894 699612693 628006923 834202584 444054917 988539327 94368835 760591857 654417418 968575661 990943450 995142960 222795015 519931585 286458461 826767227 747639278 882727576 72799635 721527980 536054701 976770556 753148170 850653055 216394057 944442041 516134725 710946080 970427575 984181625 674324581 888290458 431552766 474391718 756481906 930612632 333437199 643828861 859664583 989187414 334781399 397412038 552753267 891533250 345079961 742289220 297117025 653991862 641396229 786068190 628348341 972926308 90632560 761101236 271200192 836818025 411681256 603525257 725346629 931274579 719162301 889060097 913051804 918635253 973414306 986035886 791278429 993094615 441369285 700622705 117807206 689027566 634516146 864836023 772182698 957879494 562958282 795514780 349181195 767710239 914536546 978297501 455116714 862408874 340338651 667925860 924188781 983338488 466393363 847619058 793873211 921440299 867660403 891235347 519175670 647790397 354522601 630029453 894605444 930809281 742784371 936134974 790712350 806680112 598287734 669273203 542338757 995175586 934200533 988897301 627111081 753384536 948800529 992738408 577780606 697205329 616675004 625180002 745989010 841678206 180747455 885912920 388503823 919995554 609797376 648788892 7977193 523277630 797432202 951319571 297426312 523235415 675818101 985107255 525127999 846251027 432375738 582300336 160028317 725660725 285686397 292182490 276321393 931222673 638824000 656488957 850928440 948511406 841456042 984897336 723424095 785741880 819613733 833494906 13582079 20352969 999056831 999408958 402429116 405973305 877364011 947740306 481495798 640904149 251300739 385343195 392442586 958782808 783996451 976786716 299245655 926230581 518494442 584770806 372286081 655718761 52422122 171395564 254291800 404868898 437522656 989798325 307632853 308767527 883412591 901688175 170209554 530920168 78461704 303098318 711636737 958369245 755643898 855764994 19340407 794598463 400442080 744484722 412598283 535990813 374012607 775796524 790497790 992125745 183945664 605434172 237403497 894672159 408580019 614300647 8773138 489931541 758539317 801062457 4208835 113856056 206836003 582587504 722825045 904577468 500723867 536991539 135790740 518095846 949164822 975168856 402117520 851245558 267957008 620177564 338728835 577161560 398589284 859026015 581896061 641684262 828708975 867436883 983812299 995346133 720377258 905441478 43851122 868954892 233231719 419858447 709594773 905166284 129995564 195027104 122314763 613109559 985344525 993014423 762642218 894080717 117086940 633150307 724656312 897217806 982906044 996460003 279195295 864005330 398696222 848619222 362879506 572417328 503730113 658344576 649889979 749073395 74884793 119490956 179767185 966687856 120905101 343061625 975796802 999765946 788147767 904927393 589429751 638649097 826395635 924636598 350659126 609331272 451486514 502353859 957427988 989794832 75070577 288675932 746964207 913797349 528001325 848864020 444130866 841238908 930927321 952028586 614036075 809205033 506658748 759794510 258055862 370954765 203799674 349217242 97581650 242025903 275433509 988168596 181942800 603467788 454763459 880444786 164428167 395217931 887576002 999565705 181765500 444650070 344779563 591079399 157512550 969393154 888593448 992579900 769297732 986201611 931229542 941561275 719716991 773787423 167116947 196549365 915834504 970692235 302916927 461813610 925709987 952963636 354655293 729726874 33015571 213609603 418337997 833865245 886030700 928422847 489352186 879450265 646130477 685354462 606203014 919629419 647823987 816087239 161023389 992816162 249424882 478773509 367175084 815333836 66355970 111218110 692424416 890032841 643247944 976572695 99642767 363047593 420204932 607961345 694713742 982057736 201027501 261996953 443814072 528127272 496454938 677298783 945072387 999563092 856743925 970933320 94229752 812272036 245405285 647352235 659133203 828977365 304760381 973176145 313718696 763794061 822086501 983191792 824648050 896866797 222012361 275256408 780433465 994987039 46203684 434104016 460994036 587707696 91681883 495722699 633556535 763752703 951240421 958310465 641936995 940125398 986580363 987644025 758965204 845747336 10393327 482105524 774899817 863674899 798536423 990499598 653647112 883416775 620452703 827499198 564152973 769928400 970051365 992782927 711842746 833568117 357328264 713063662 343696331 781668296 551299507 687421725 859674738 869843782 347499563 646829704 161584982 387676932 421753954 662334600 616331561 852492004 246477118 948394544 147443930 254682562 177048592 484091354 197064730 482059126 391175428 679111432 341281206 723534894 91615213 234915753 862972696 887015264 594353458 849603861 207427250 867341322 807332011 973259168 119264210 549750667 584034974 909797837 253880176 765017083 940348035 996344424 211140084 335576495 430305628 513036921 936175993 992507896 859321413 897594464 637989585 940921079 611266153 675921331 970523262 999871802 958137862 965675760 180027107 652838864 733704575 973078151 892671107 943170013 371893930 778582496 436998268 485485360 660600786 669131388 185712713 685380987 378975108 708725529 878829001 959051784 977376240 990296882 896344613 990211343 495117118 862942693 971512969 972629013 418166762 949827010 480361591 816533985 220951673 491057713 573307548 984622270 263651618 922973254 434581476 941079572 36785292 506026862 199215157 895017198 268333744 911332556 19137647 350072209 906424134 911119383 475314256 662965023 972606741 990329442 858889206 949018495 195223027 279668103 13714255 739941508 86881150 975177016 166256669 821820480 584500577 621461543 970988077 979484259 2392597 241903159 120954486 406939457 395445650 716907624 67373224 612266335 993313841 997597419 374505139 583717621 577130999 811405494 17633926 563400907 910434959 916186459 485262594 818513910 606649348 806016048 165721052 415225011 970893882 980320770 664675357 812310056 42618360 853715446 31766513 956459785 742653956 911479010 763087396 764597983 715154811 835580397 19242632 471165462 582973616 946253064 156662122 538872707 469597031 566455798 191796226 540606369 374180247 638363687 723065331 801256345 536163359 964734387 678421216 729377872 673573196 877343763 907034667 998437854 189920075 318557408 534884433 705185614 895307305 949577434 467581665 788113931 866429614 992007964 615275657 960443964 507365933 604485348 465241306 558109222 626382499 733389193 915069868 929313835 520332434 632586176 950377418 963523963 602930488 789082187 330646039 884016861 376929050 852074656 416004686 822842917 47152748 70265431 622461325 990882910 314340437 851553402 999757891 999820728 176166791 775408348 769612241 852561864 121329706 724471019 886624567 906578386 146923460 757576385 254362227 419796134 53509561 931659567 960874137 966277403 905918406 917943906 700551810 990155350 980180696 997311675 997220229 998027191 221254100 883478667 118563656 908677578 755904765 942683640 441905938 784089850 374507310 792338811 581651059 616698302 980449654 980682267 337608063 426961953 71900052 616430840 674008319 934247037 273506857 580965491 187483878 893891484 156309708 374337571 773034603 862301254 423686899 846965280 351841352 874239580 340884285 415072320 137997855 736455684 686001397 970898774 454426162 910147744 563622968 638050421 27754868 999867536 271320480 356394795 71871884 708666644 70788694 366749445 303744990 793352482 846806285 871762718 990152611 998880340 180215132 274256477 350967505 608951926 262146030 903674484 626713177 731251429 179563173 316956705 50006526 790737041 696635106 882290192 817837937 830790583 238980513 505853102 854132492 967770768 356639930 900125343 655289003 965237957 765043048 981929736 747806047 926292710 563668128 976190518 928226111 947719839 557021895 881658276 919052885 970308310 72636647 933011560 68641600 646387841 812991937 814475660 461900508 897439692 708753767 718568625 59199620 932125524 332641222 615263192 58126232 898743105 114197222 838407612 596874045 662772040 533433859 878174800 686946152 885297595 862807296 897669131 522129412 769499391 800160687 962587330 630230988 995019541 84921391 956256573 134737971 681091417 262726150 849336857 427878197 478130152 357772976 594062066 719216058 845156188 376705481 616313505 564328362 584318658 728941495 992016735 991676704 993564384 762524838 925995798 296993525 440847080 511779716 619067516 983554058 992083581 229367585 367373985 807801161 920245992 733273634 895652167 166818014 514083387 491401025 983429709 27685923 133889209 134515379 535745233 340836433 642506705 824548642 952233363 493682223 625184503 99610662 597292187 918919104 919363309 619485417 626685064 87208964 563883167 584385209 749881252 424819741 981515173 783810414 885481592 378542969 589671575 934182381 984522305 240556934 240831923 722396798 976927820 363845213 711091325 370420904 751017123 555852512 782196650 761998930 985109769 595211684 756085115 602478482 700438696 722700703 842938322 879993620 992781956 740970729 875999576 662071131 920967791 140893566 490894091 259107163 488037327 486428226 731421895 734566014 762984261 471053048 994662845 841616520 844414846 297702205 406804955 473773034 817454077 181489313 509317211 446377773 490553173 775000837 841699622 903823165 959791453 962683910 969426222 486450066 641405754 726548154 868836176 701784159 708433018 503859870 612803048 266359759 796523651 380713932 794312385 261680464 889170087 750497725 908418967 677934630 798574723 993352473 999316159 534832839 773751445 127626505 882586762 402772954 649333832 94204883 615153518 920957525 981325907 112253848 745524907 194587259 613977557 480649611 830135935 722284173 785286087 627809045 716749211 4202074 565039510 973201521 989188295 281438629 416472497 661513489 901147234 64610040 708317818 480388124 961788288 194059581 785106755 238771217 309849210 990393928 993313788 699285585 985518652 96841573 323742042 394695917 629811018 708645114 993218361 57052079 147984084 192067662 657426348 941926524 955289427 88138486 296191806 84326228 370673170 89217567 412779620 607542377 984843056 527438825 895980241 632507457 816064264 132482270 759383161 520874349 853064945 483107181 651798634 970084579 996866111 806578763 955764389 189336172 203838858 497845201 832415206 970145728 979472955 705862122 981605031 631478395 867331862 537075097 594362078 120954725 357707844 155691618 308553119 498293653 796684983 104212076 382033743 558903285 892660093 455083840 601382948 872935019 935899899 413572230 926225126 192850292 413416245 707643377 850061317 58287667 504953621 353612276 498432690 394051646 512729974 440558106 931501330 813805449 933236952 739464773 907468939 16903261 937212793 102987610 512211649 408683096 840361322 223136353 945470740 727575031 797886762 685537161 901031079 208504440 912348949 990450973 991532738 945695685 953774383 150770582 803118587 919783210 927093092 225965396 565790117 407829511 542897889 136684272 982148678 266059118 643237251 501854785 982673732 829493893 999555813 52363281 205135877 490804238 643251991 778176698 911969992 738433831 760785821 171588973 402816622 164004924 443601873 966014295 983151940 176550312 185440412 514669268 515613951 660157143 930735809 33911518 778423412 88292655 392659040 889924881 981904622 562240060 677822643 970490696 973871294 499082073 541127517 429089024 861250112 61169579 98278613 73441839 958396875 80140160 580883472 910441074 974892225 960937781 967080776 691145725 881038814 872251534 885591817 346243801 452788815 557843713 831992408 731026686 792904711 858861263 926105139 614253786 896407013 800936771 875742989 492285677 977408657 508689913 601923437 429022959 974339720 590461591 751747534 72835022 688222176 114525308 260943197 516207560 911524368 836190486 980064509 891015293 923669335 795821072 916371198 732266460 984207119 146914043 403349481 547700330 612467221 933629256 966096874 150143359 866754795 594743190 983300282 678826601 933255405 3102252 514204474 148781027 353998994 323503376 460305617 883306074 936363635 850585010 966915310 997096748 999875526 701088114 821838381 397936650 760631671 782850309 813283254 66708303 767631694 614767885 943560312 814352319 821397146 671741621 799185975 974732570 993198435 777664311 966100971 739058231 797691981 17314733 459740808 807420678 899769863 575556984 967099207 215860692 672541426 656922199 895596179 357569350 603948120 566460219 732367434 682726244 869279723 836468177 903339167 317426141 676418672 698615883 889460502 426722427 493231001 506024543 751155875 564650361 832100282 1203931 821044651 162748185 419332097 716272201 930795565 271902509 284103070 187646971 539772822 428277425 753252021 849285980 880332223 59392868 838196142 305444037 846823406 431571816 631121725 838634318 861920103 890069251 894065851 849106970 948829054 24874416 237601899 267750810 295722370 697917997 924499916 331903252 774953558 650293361 897387155 801246085 887140911 931590458 994156053 975684288 981066747 556372992 765287294 384393943 556109717 463190692 772300491 296728352 503261859 881431990 960158473 885155546 908047293 209909755 460905464 981662025 999251620 376201703 614770256 711869418 885836175 937911102 969346452 282039578 555757227 605578163 788806129 603708522 803989342 105926595 401474131 288559255 865498723 493506890 600099598 911985492 950665418 485371038 909078415 694816146 901920065 156477445 897765424 150605190 391332588 161305688 834877375 936515349 979197964 940720861 982849917 881847563 980237376 681361686 741037517 788409261 867094166 530101100 594461730 643387827 958271025 489057788 665996000 22774222 970272874 775721609 780894594 852992607 967133811 31786112 872053670 761449458 994723098 97439878 827657421 664084773 992647757 411051056 592378263 469085485 664468810 627813944 937920920 271646459 879498819 485294089 830641003 552070279 907794744 399052256 534439776 873395379 916636537 258802870 547658121 210437615 955106913 749060863 994037434 601500888 877760394 916903346 933589749 963709527 977177891 260327882 420996852 444980926 787648934 722727873 761573287 708070015 956763804 602492749 746999963 6891223 363463111 187510089 434511648 371237702 728161061 156476769 972008684 143838447 714526076 945657682 996793192 510991053 756572888 269604911 751813217 729731944 908593316 376355056 731437046 460254312 698696709 835167066 883364752 629648242 981234950 930383023 956927444 534355702 901458330 731612117 765696032 655432586 672852410 936292827 994972228 171252457 579805081 981456844 996601349 89684358 327837103 62979386 747484094 980044048 995518871 916224791 935130037 663790233 731490983 328152031 730887002 913773272 933568918 604972695 948687793 276189479 525374923 757333329 918726701 168262291 858677191 96138330 271703276 200217191 509860959 664524727 818983253 759371190 793536837 189947730 920319551 209119110 790077494 649198292 784556894 921324962 998119113 716125625 826331689 508918924 810594110 708763868 942560520 279730817 661612525 899850634 928516955 364171156 910414131 660941393 710489403 312120680 786776956 231217530 593172555 853395714 972687940 677985289 827357586 313452616 689079258 927050299 993824882 328111535 398844336 472821305 971071551 347930354 664633789 308669085 729980908 18884204 723520624 637803141 996187972 8835498 239241960 607128717 720946704 712543161 841142578 767021806 994266037 260353306 406502259 163245968 606673998 533973550 904084739 179559351 446797654 333931487 695358433 289349097 616914388 978736483 995582690 224166061 843756454 455937534 912391080 525568683 542285263 590736193 780420523 224764036 303865218 687518558 834352128 872455082 939676842 215976122 308775449 882312495 984916410 144313461 358601898 346450114 780237538 917710061 920203186 472930602 664752193 158413871 598385853 251004954 596302810 73797041 839863997 248437034 783069719 847370199 954526433 513577074 854011463 186558260 542985305 329562179 589586927 554130775 891498818 485493879 615359623 754857099 921549518 98852532 538095870 445624301 803936280 458263834 691219351 293892773 890714588 678640780 864522095 45886521 390715408 516216676 777715112 721979179 961918313 395647898 817369047 214504882 653657362 478621696 701436613 502417065 555656149 430275387 501087806 825569454 919108231 766434760 767068512 2851657 890149625 184431505 899680181 155071750 990916545 951384673 994946578 866731873 885481861 691155948 721813622 534457564 959158738 642049813 749544496 439190073 756630752 267463050 634226215 692438836 780913135 475436683 696128235 318150692 651246602 378120798 702620490 535548577 642687180 432199923 497180490 24434038 785344647 967374120 994128283 223897272 839582605 816727903 843586444 262181853 893507936 694725272 940892816 380822879 407877798 687015630 773299796 596844251 983702898 276247678 623354454 298343994 800913509 543105853 665310913 547199385 744890263 514513768 867224201 868436670 942692938 555296312 570571006 663816760 798051113 856555080 962837011 111656976 235636725 371864859 601638807 947713998 990702964 445390011 937194602 705495074 958712088 780523207 975094036 467107313 721516211 30307140 888011498 421520647 630058778 911766412 956950611 137197391 753021436 857656308 955441255 995214076 996108602 19846359 192058761 586921094 991375919 206726943 466108300 890061105 953295430 39046081 50785149 1972237 915010019 200124791 485987169 495200799 707298770 41711344 649460437 805924879 834227095 40469939 584147345 731785017 922535625 618704714 796488900 253904851 279032326 517230426 968870058 410717219 640171312 83964177 856603830 867156993 902404673 861823045 983594012 921530577 922848970 329285528 396766512 454668546 834066652 864692249 866394015 855474636 900761293 394247908 963969954 370542831 601241159 588306051 733164721 761888805 806144500 397449261 494094369 50570137 594363612 341594175 628834294 921315922 923935177 847852016 939868074 868382425 941908026 183325144 793649538 539940141 833032080 763517580 988190149 523472360 900033544 944348475 958438942 287424702 925396466 652377222 692112157 172518321 850732537 836799846 848038125 112414185 730775844 730956353 863765451 79232105 954224219 488516328 757788357 983641980 984141014 890679440 899599951 199738723 392295943 269587239 518610423 53549296 817264404 870235849 934435137 311575745 743923384 30162834 962044647 361389577 914559981 524364044 819460558 660850971 700973556 965729641 998195052 157135372 820339120 158507287 333915392 99790308 298525332 119858950 613772381 243943620 477495292 331734571 470189040 604404446 747898125 744010223 946872979 568745885 648274715 28700910 123431277 118755625 757648098 331402038 780539822 514337543 920231481 119305548 280051778 555370036 593873624 421869726 612502061 386778763 659410162 13966816 496523513 965568414 976719518 658660867 984451348 343350341 849023164 556706728 691105152 39645955 754860044 151053381 729208563 897741185 939362768 958704485 971660903 45097551 716686280 378961252 487816090 321547138 349434783 794909881 854851982 240247258 681249461 902145309 998772375 560657507 949928028 152259253 893831860 208791175 398561626 125191703 703023017 91362617 101634205 67700999 298810233 793886224 818958225 322917867 508082623 998236522 998999419 840671581 885853477 546689030 735434597 170095227 877694714 65419755 891479680 787795749 817341726 630745417 703720652 681712873 716534096 936761069 936818114 569414782 963991166 760596224 814593497 348723273 571959827 47605162 388954017 935494593 936718514 478505101 742049764 961274251 995480654 127404679 448330402 566193601 944957908 265341510 368886023 64041324 197238066 9115960 537948528 720109379 878501625 839141624 892439051 175536623 530073799 614560813 832534169 261789093 680881632 512923958 920843516 790741132 826559713 852681737 935698389 465814375 638058454 845195818 934531236 546821176 848548952 567758150 653213946 853362734 887373761 787244235 793868533 183767267 318736257 309987553 800244996 259295852 892835907 540407955 901389615 294689671 896464480 268019687 280247134 95743683 500750813 871358882 873836565 809773482 918087010 339622068 638494709 340105760 810873557 564883171 586662788 455925001 724966600 474378064 600472846 682178341 739549255 98355204 440767811 717778265 735022718 373952899 643217736 518716362 753554281 630904207 706321107 849652989 992768875 149586484 694453838 38319871 332774783 926891807 964649193 390526566 572569124 239376652 595037230 736070190 846190508 464129515 706994596 747493160 922715428 1904708 247871179 20554934 67999940 570735004 847158611 458827364 776317126 794588920 918854293 793204742 898851658 755385473 762558393 263926421 311898713 313642721 944717676 495181807 774765706 858254141 891859561 871703686 919442379 639788741 775452034 706818256 871033202 272581354 577122574 57397065 668643459 530538811 959812180 668196944 861725693 167844851 331837018 87914479 764384719 158801018 471492566 947073700 948979945 616348568 873559163 956405310 973928815 252159940 293776357 521021784 749459909 826254697 885624839 935529740 970335137 822504654 894501134 988727516 990507267 647989410 768427163 683278577 978115351 194173264 872321016 764390899 820158285 966510748 973064251 894315707 948337111 104085248 648396856 950404224 985971439 637854962 918583781 659546945 758864996 91337231 293035378 699489110 734380583 520803828 567458884 853728567 928631407 872204108 953965390 787584192 791984075 220773122 525426982 999569590 999830518 167752736 988577558 646181956 774619071 592937217 911587773 13617274 177330174 122527683 472426790 453283781 790930557 923042895 998268369 674212839 750634116 136509935 499226252 941674659 989992146 464773621 990710245 779467826 785522789 943473044 946270139 660384268 834262298 294756757 951347239 508307910 866592047 566604904 752187182 879376806 977032958 871138770 917667579 166187606 189487266 680916018 956600407 656389205 800243959 550428669 947596160 67847255 523700106 818594650 834075441 608145722 936174412 145604079 347100403 431818588 890252316 299732729 675058646 515538919 762817609 987414817 990845151 148837736 862246083 209093837 835003599 615472780 695557045 901409815 952792380 270997783 811367211 226426867 754873129 579837386 942569510 839046495 901927112 805154246 852521753 143621847 521921804 183674110 373867604 890367215 928129754 945604745 951203877 441637033 526303343 598163510 790855688 162662593 536727534 399729529 940052170 135464820 871384792 378766610 699058526 664905799 720129737 792229843 792269198 278195025 610213898 16696392 892343592 550055269 714423685 194443835 717647194 937718801 997714393 36429493 572268152 700908389 728357584 798866118 851617067 636108955 864501329 70693270 980696920 633601538 827957948 515541177 783698739 614359042 780139404 669956009 906418817 870604953 930471576 962843527 969290632 925458795 966114496 912283695 970867463 418805188 647938518 167793774 767897246 671013085 701094101 300936968 774158645 129087613 817950627 37974280 762967163 697534415 717251347 898091523 955910699 107224793 273166369 736600275 963112021 634935239 934520165 265939304 869524572 905134844 943054539 68703111 788932619 213445322 721078780 214774208 657555372 991255070 991457939 128884850 757413687 851003666 956417668 136725227 937584609 493337488 923147947 760072371 908448005 412037411 493510034 514905501 969833002 773275363 914671897 354590701 394893786 473885427 610010092 570398643 925627814 860079800 864015270 898813226 961311672 531704484 936396180 549537321 753392972 151004528 164501262 299693472 542939827 233184538 257834327 361763166 726617929 37875763 76139443 116090927 627909270 137800099 253730003 624396626 725908956 106796258 472689807 459863225 463842794 50312549 820493881 10494308 345678312 486893623 928501385 261995974 980953214 950237293 988712712 58762041 777121045 936783670 965323701 297861391 819235698 905087691 908565676 222677931 684043775 81745290 548556200 158102728 355301402 251227231 264559280 916106797 983032356 692226338 840655119 913627525 983608230 664614589 786891571 337441997 833382731 609911112 724394193 29637027 679470937 245082537 490337171 777051904 851776866 638449806 656008638 187755865 398924519 110705915 718616243 791612287 974972364 232924111 249150638 379960813 667154383 988320357 998182577 168792754 436298904 602826867 808006720 193928205 399857032 213817419 948186810 124240496 197090007 157927130 241790676 23703952 293628386 288739329 774712963 750439427 878849581 971026232 973973526 561327715 763890225 358553786 369996893 630466350 840543245 530048997 568459693 711524452 987819528 827278605 934182936 48719981 787052237 900336128 942163211 515869154 757091056 466768267 625791670 457150099 794582363 872817235 998972406 153829431 919430728 639776778 765722272 21743595 376034453 185474023 983155789 961108474 988047545 46058764 338761188 497761279 853346142 488829278 581843432 291278561 521399678 538935890 577865223 758116005 967939056 96380766 238426528 310824805 651217434 804984503 997144934 372703368 496982287 886841892 962347705 315683565 956399083 354041303 816095200 646130611 974817870 140002353 750807370 421847404 535496273 864184631 991980453 306413662 850754767 349184726 397921674 74899262 547374340 810440593 924880722 903512851 957127656 519080740 692188061 572898349 865492872 268915629 497487709 312395053 454075120 775378742 978096505 300963153 600062144 974365050 992017782 199778862 805156733 100101007 160560414 771702537 954061324 996313787 998563994 471031087 759565684 289451661 313718613 806554476 970048770 710209017 900417742 154242677 776090450 48402783 506520022 734564383 839994278 118729732 871637129 359490034 922044680 133798963 169895157 459250854 852028254 515791603 888070438 576742061 796963619 374565978 597889155 802351513 874776634 328607334 832144284 27326690 448413337 796482312 954935450 638055969 995764707 329627584 484479829 887767033 904517321 276013785 362000498 80078439 371097207 468589493 963417223 901013688 922501757 298288112 524025056 967524323 978455318 798293855 845921966 22437223 625294734 9781427 468376809 380931842 530189941 721143844 721286295 623103362 951358635 402984813 953683926 420544222 560517976 941227175 950907708 272616146 546196351 732537191 967910141 809274170 994613314 976481234 997587168 319340833 878358628 495785788 737791764 429993451 934334205 517775530 799432527 18847108 633807138 350244970 707591547 433238268 725034895 987172929 997603298 204535525 595321498 951892598 974748677 692191669 894943024 849289854 949521955 757746976 853257596 952245286 986384167 273345985 305477569 863495520 986163397 913218571 951967103 433494655 858827658 706280884 842552371 222151412 770660446 80815668 477290880 633065383 844860858 101952563 381415148 839752599 933901913 933729838 973897256 533217893 858569789 599200983 622636446 853195399 931860752 117797257 569757242 653365703 894480857 455594322 630934640 688097381 985551021 235344305 563294737 107765249 953257285 290585806 389440275 224588302 860658452 84125872 739912868 14036385 484568677 835009160 898436833 187124037 724856814 224278344 534623264 664906105 797323177 301922807 834476349 91827965 539518720 180446235 344821378 908724299 983678536 540291322 684204695 982432035 994336547 505086795 898041550 860180749 889858898 973753230 982276031 950828587 983583529 295735335 476637160 874466795 972506856 185317820 369424189 157075463 514805920 924758775 926752767 876407767 985339551 217277029 867475476 983686153 998164772 994610053 999922456 853680517 958110881 24693697 803775488 293166765 518961664 286614321 734933927 16860839 435357050 461055684 483500740 133900174 150818417 405548600 714363695 173220380 967781878 270178964 521625851 719457733 829971503 289785511 697672787 925237284 987686309 550097955 584009736 514708165 911174498 584595253 866467044 31943899 597163448 899001791 970066284 889194826 939779974 470369764 736913523 810408594 879074401 687427256 923924014 117048664 205529299 987099059 990036494 985618989 999990358 669159238 992504146 875834679 975104842 777562638 998553236 734477720 805618067 115470734 855604424 586011867 969551694 405574278 805075742 78569925 818308110 922520559 988524231 688019953 747639462 187126667 866249813 663061482 834875627 646161298 874591466 17271407 377454028 307834610 309924221 375550341 832177020 68988059 863281023 38672157 383243496 2356649 632345384 623535557 838227579 257294212 625133618 209181780 907275991 177001835 875055768 660411568 792349451 591023790 614793736 188710803 995251014 742826624 894661989 298647211 666013462 380792193 445073980 376010490 608986778 790482032 922302174 66158827 555730194 446613345 465405371 644978231 759894681 374522938 935772827 530808021 730998672 130448556 456354259 326051172 545334021 64228276 578800352 170118008 843018868 293809510 522521151 188266296 205510173 988223315 988404063 9711329 466301571 186277587 489342498 814011641 893429162 543302352 842157413 699505093 810074834 106421597 352751596 138899921 773586785 293316203 635606314 672111633 753147765 812846208 821064512 512065229 910674991 524262708 695420298 945212831 985402620 904689772 968612908 649116715 723163873 585890976 666807985 523131547 821810509 291988803 927185267 917658207 964037397 929481506 940593616 526094824 758867230 525960733 590421030 333777512 618680039 200401037 868012561 229806540 764339033 851212250 851468998 649384938 956072391 304033006 999738679 320822871 725328607 114517036 822966847 442316366 939294674 944068897 991722785 652820207 710976439 684750184 699528217 263558986 619784922 549527264 741194647 467276167 658232170 845095680 993156443 30702275 311012705 735725107 916358183 428137997 665199664 540170649 946107440 499348500 604034908 254378905 795059981 16575752 760156847 9542738 247680294 150603768 641938365 219722692 811977605 143459854 668494290 320043195 675596606 467994786 589228223 935276273 985616488 97403929 151376239 713188922 805882466 601414431 867492461 215714595 996650126 383822125 855156053 690613480 802364255 195497446 221854545 413514256 695210441 465351957 994002372 128619184 445783829 812107812 830784861 310797067 746572895 840133782 926532974 678846978 973747834 632482734 822025440 965986337 999292407 647859119 814782324 767808766 877741465 853567782 962514915 753725213 910236011 83755138 494016481 434895303 884901271 879758405 924850042 401144313 605712089 455281731 478912151 352885964 951239144 497954520 524171376 586058683 808021208 193770575 738319370 103061122 652687984 774791695 799905474 846910251 854864282 885769270 945419472 764202385 903230215 722139504 961654556 483370225 744106397 925795228 925868229 121761476 446708321 619110829 772065010 354511781 549833501 228037952 246953447 971718400 973186413 559503552 971421155 530732269 754455936 740726814 796350296 146984505 608650003 411939957 446878678 555470490 836189050 181676652 904355026 309704261 558287188 997922509 998053820 949545175 979688816 824101701 974215406 154766848 680873302 905561983 976392231 97140429 222662205 518292580 739981986 893937385 913302431 358432357 479804514 681980147 841610313 858566831 990832783 672483623 968852062 448046404 928951225 430002948 867432741 922021274 986418987 47113092 115284067 57725718 751888668 516280039 885504206 663798374 958505360 481037947 821439556 191316240 883271250 822596731 914485733 691952087 786127344 549625948 564062425 609293370 850386864 669711075 971236351 908925348 953425477 904912226 906924939 539835764 654750997 570609684 993530040 103486425 638161501 995502373 999784981 373260899 769318276 857300645 911870804 795516851 904284045 882096274 900963459 406385446 694796101 165961084 773514649 81984606 109530655 191228014 878413482 231398283 353833768 925491604 966085997 10684296 379242582 577032984 959009637 94975973 782798937 882616399 931791424 577294208 931557175 523349252 924024997 224479979 355303558 174102084 655075052 846571834 954900992 139361244 765182673 949213403 956758763 578210146 753873659 527904630 671070971 523400761 544172333 913457113 979126666 78120126 943029133 536681672 818195259 247130696 977788325 753305232 933145199 459424892 888267567 598819531 810636703 513363088 992100121 757679551 852558181 796157917 999697717 569520253 795386145 478581464 975193991 477974631 967409112 517802918 761218275 406540646 866018229 877990251 934880700 804024025 891549792 900784953 973615806 479685355 976286086 269643728 867737736 149328369 674143837 17713152 795553433 338890350 963823695 195054160 987127335 30321076 423494058 416876314 824092259 954982164 977867132 997656667 997992016 42447150 123679045 122702786 140688029 278046692 719347161 507129584 918456776 809486195 989325241 229496876 874827029 313048256 361050979 102809486 469608230 659301858 986620462 688873183 745877564 259430951 617580553 510190236 867349222 607660619 948388692 626308578 954637374 266915450 320469237 150440677 491057505 123385706 997625869 1613212 930151515 144221113 204591637 536876123 972283195 95685022 657801679 143223824 463513963 665133497 976626576 718444249 919108615 185679641 242562066 511901501 763492390 638943959 931862703 132939987 785232267 32752299 585574571 857339057 987847737 665624739 745571636 718379901 724321259 958692308 992160390 20555327 928974744 853805103 870686920 806279805 860077021 137260234 195683516 429624388 652090061 777928416 909762997 280425118 646794925 804894941 816761282 53782969 73029669 281504099 698958316 327298184 660935920 165491831 368044240 202078049 488661788 446118773 649879284 510774310 746393325 351197949 548037934 247941391 401285840 374801887 950345049 422321958 557300510 413325199 472727258 835652101 907455168 618570622 650313385 772122644 822972060 378058906 429628732 703515760 870568587 457275496 645424191 588330188 663011547 843965706 876809465 151912680 815605096 530822865 762162777 166218919 977363014 470496576 668090687 597782395 984416457 88121180 544401136 337456406 902248399 768483734 990134478 415805692 639456168 743916437 757311220 848764190 941165986 711384049 726425607 470670203 485731832 150080972 886127524 651965496 860723527 228417969 585519669 231288250 447710847 703711540 970899770 950357668 972458404 823007804 891131484 554627081 640443128 699061663 976476405 539495506 541202533 384503692 949046403 193186006 758421329 505417347 613331328 765051335 959582293 983602887 993280015 966659675 994353054 423251920 480391297 999864682 999921400 894036306 966647327 753170792 782578036 775484214 800494345 77753512 482370652 349340092 508208882 974182806 984072750 670434135 998474342 949702588 957092993 159178797 374617696 442346720 698474411 758956682 799269616 84684914 195993497 698287756 822815692 830487652 958856118 696628733 951111476 772363721 899874571 105641488 173343707 263788855 887780328 436611649 772104148 208565946 748481381 783735087 845671325 620021910 699341213 122664003 140181986 518181362 559882735 590872062 897328320 923537251 927284250 839538309 906447904 61977665 437923503 731302297 837196068 600227941 660297008 180484466 862730448 846970231 976663422 156831513 264553414 434681778 914101983 922723773 960847653 693792371 928721768 184517309 210212435 685536396 926058966 602695402 761068164 631002449 906339595 175107010 755334722 970916776 980542966 812463804 994477379 628880566 846319629 780837527 865288170 730840674 816478000 588718611 663157304 788629443 860384370 709205734 995485148 163996714 785461861 377843887 586854506 257151020 940052594 374942975 766861512 618171910 781395637 145132272 588469381 369011017 967754811 960122806 969742986 800974155 937176044 626821307 762378296 429030343 549340006 905517948 926755004 857336515 871206945 960564375 983912284 756593068 882020350 79917542 534828396 340508250 498821636 717722102 893229381 182117364 370000336 937598808 952774338 622300719 684964741 555281938 793459667 202811106 260396810 336208033 925646272 174140623 394279864 470822494 559129097 994541716 996988978 208242485 356475672 898643341 927476888 640730492 911452910 569614382 674162951 770944411 924188313 690496362 821104181 12367167 328737702 517643023 905561642 981731937 982405916 623589258 821957876 838125855 935021475 549350372 757256921 696326349 721712045 628147788 861496650 194672605 785553415 264592451 339282783 296949799 744054731 89590249 929835316 446177157 529568159 483004756 663638352 667752826 753780324 429953994 482032065 831728538 917626921 649958782 747006398 69276877 765269968 63441957 114212268 99820346 568202334 832755354 877458267 585546128 860179605 981803398 984711377 879837960 919223886 198151184 436004189 119323825 151845474 726973758 952922484 161969616 402939102 116311777 879628668 429774623 949401923 409641469 731858497 503887379 741069862 40783425 833978489 813289158 894962736 290509196 664161519 602819492 706706922 30569972 213160613 465460617 792082869 790631337 844049079 575841200 712660314 96166488 324883949 700467176 909702046 956149535 987254639 22212271 397380199 607544724 796927552 55230413 189016515 171181080 628600627 735902516 772152837 220080187 361952723 990716703 990931494 736782457 759359542 72679421 871051786 708971098 992807617 297344035 406702346 991078592 996999092 214514185 218637165 244314835 649756630 109470117 564917600 444113206 817907078 453993870 897601942 419564673 939227141 501526545 690653981 495226551 554584792 240832402 898440644 217761412 799425854 760499847 901580811 283929179 345213578 617628584 778279065 776079863 875032171 10885121 608011946 560204829 599927653 857711556 871018629 264226600 996669967 128695639 269682818 770598376 943696850 114773414 970193621 205840724 396629687 394189473 519581087 5843871 938007927 637353004 910555687 47565348 375480121 546527001 703019629 119179651 771165917 551216374 966992867 322005536 714162064 30412544 547869675 52687349 616982533 410300292 654684457 217051266 743387139 201481572 787549084 15865140 307222180 231894728 618125995 27028003 173583833 585993726 719113412 630423505 974919842 83057809 895732304 50329442 229958684 548176738 762059048 502298694 993585412 392921954 881913486 285721660 287440478 785546312 853220399 373687227 946594417 466782314 997765119 900846896 987796633 755940433 941060198 43937498 672544988 223897551 879381579 436954498 524471221 986816129 997084346 498084914 621239375 717776001 824275671 513602165 679845629 493719663 512559958 686982987 799151460 916124098 946686418 784857750 901249664 128059601 694014680 157656021 398017760 57158933 422299835 203873086 936868182 297318028 522548352 554150175 828353886 22089277 756547375 620936081 761384164 168788225 225397782 375785087 485637061 667207158 759248028 360999862 474214714 572438051 839083212 14110145 931061958 628465140 845140792 373030356 677653000 241496223 793884856 934338181 957359012 782828417 975536312 45782910 891270527 120191834 676140713 430450303 895080870 499903887 594635466 65499491 520891786 167311158 180704518 396821673 765007221 931678944 971309382 817653788 832827193 709081418 912607768 428303940 590141772 708042041 767013353 50957987 541343168 947832834 976837539 11884117 478891759 32509699 440974872 481563830 905861853 857102514 948527804 47528838 207858253 98046543 740890369 246543404 356782645 626179798 840746601 923574952 934186609 141599535 653085212 261201542 765858823 633832766 924507534 844152263 987393983 375402896 434932134 982404465 986373866 767885654 843174076 695596258 927978359 885279848 992927574 949538656 961613526 505343156 915305798 897993191 908017399 19250028 581476553 846423327 984011451 215895761 613713732 470263836 998908838 756037561 895186339 549826066 674493165 715916374 756106014 637038360 674286696 898418687 950618764 269347177 816409581 226552813 659586872 813449001 855561239 158331285 429951717 665218503 772802470 363428878 628699885 769552972 814382285 23601710 792917726 262567631 707740240 134697030 707631184 395178097 730772325 931124274 946070049 343204976 397099988 723859773 739478381 516538975 767165773 83351017 467811671 123956649 516390142 44113905 292960658 953622356 970359298 419019780 740123091 644918176 875808896 237102380 464658187 718398239 974066933 814582625 827507024 827233279 888222797 78717937 578097574 244810399 696938641 980662829 988565021 77885061 164585393 291429114 518316904 41199525 626481020 201965737 884853473 161158269 356782233 726854964 984568230 188414510 627347125 584862598 590452218 958273823 961492158 542132096 645534864 937614483 971368210 890484494 992590678 525209786 807620416 851823207 914847582 841160608 869353134 500908112 774843959 76533227 300495162 109511500 531954058 89037229 411775191 228674953 539275810 472215901 640485256 201409137 252184368 273358069 945252857 848566011 861528994 645550406 758063430 238760578 967786963 883318439 975585045 216298807 229545807 710860779 980748638 647029935 793131941 484030092 678116639 158796722 452926938 591709717 869427934 892467722 919083593 600827398 698516530 144718567 526763651 44344289 559035413 764367538 787617071 308282400 364547366 11172508 779360480 970716809 992464499 780830178 949531831 559770502 735217548 69909459 939944580 772986065 959909296 85555723 930251843 628526825 704487515 798758252 993286749 918960846 956945023 8931766 706840882 790487591 794224945 498360538 944353707 856350103 945405576 317165186 408126717 297314829 505199277 257061202 600451432 664936908 670701360 636496332 862383556 998670710 999740000 234296510 960464534 818930242 830428838 683066335 760704541 699614195 829556721 477288414 483563252 718933025 852399376 153412099 945873146 15180612 537203990 381157167 437274520 940273474 978852525 601550518 805315159 262572830 770714587 16943561 355250019 411634508 575024954 921414782 938855575 799244946 852590425 146910990 496429793 388007554 496232669 19274606 158138860 814662135 936311739 655077290 960002621 129304808 583051707 85344522 950814629 141501735 682971933 373756585 982145559 325712078 413916738 777366188 921229531 346313636 678306114 581893799 758070060 691960073 745783046 770914480 964418653 4256507 574539477 602453521 815274046 591195624 595147254 63917497 343733743 801264973 810424181 602713586 663123303 841704143 862144731 944265299 981035945 256868759 609969138 98311136 807597487 719639494 867685967 747421265 956520922 372654432 889916678 191409768 503613231 761119840 942703470 432280719 586171810 42597912 225867872 429047075 970295056 25719005 101404423 145290257 335524416 172957313 362368377 235420247 720477063 404086925 797853859 178841930 709821567 296983211 892632747 73770521 584285428 168844385 246202803 48428796 720577508 36728624 986187951 731244161 807464475 568695125 626029828 94017579 139834750 449306894 755574003 826041188 976362070 363677456 625623760 953328421 971776995 473970446 669007781 677282860 827212676 477352377 686048342 348610498 487287521 993322669 996011723 905220891 930592243 149655844 246543162 647159407 984552866 206183274 720250353 786267856 959704911 426539868 887664097 143660310 621242112 537493175 611911056 258135102 983240435 203953789 222707206 534881308 785558262 333004966 592254659 928538927 983368558 921752863 960126959 459940736 985279494 736704573 918546242 844170893 964948402 754564442 953108647 639111214 755516463 444663639 480944494 365890766 460184395 135574336 766771807 352537226 985739848 96181125 575693693 416295068 700570381 834642625 987697619 49947174 224418446 21532351 907211564 792088416 823114178 204487167 437236895 531893588 627081073 323219506 855820026 814984199 895994975 970026059 984611446 820994532 951904619 855915792 915352230 46377583 86553011 209279349 356366307 719932520 927877134 731992062 982137199 35723741 854345788 411173 175638832 916035597 982435125 608455836 670886225 526203293 706656835 913123471 996130705 49951792 105899659 247549759 841717950 623610182 698423561 49182457 676275865 629744852 652618968 619011279 929139379 290237853 472064385 947178071 958260823 700154706 980248893 199261485 206505542 213030504 392698425 42489311 232773750 695527564 938394145 897020299 945144137 844637797 913237925 90691980 121102508 237196958 743407577 480802584 983103137 650934282 842674354 244343753 923784973 647108543 861329725 467658674 936608182 528134252 819267091 52694415 509626367 588995622 731265022 211396558 374980485 80022796 311984265 434414786 516807633 902146198 959261968 201762929 493337637 149126825 390482279 926121149 944699182 294830322 489058984 148580515 447389563 546544442 967573267 755884537 976693964 838638475 919476958 437924991 542938234 218128277 382149414 982482307 996736827 509682954 888887934 559128504 777113230 109084686 502062670 838927375 950359326 913828610 929683779 753090800 934074717 809707111 849171756 673054260 828970976 625296123 738078960 63597916 448039191 965448202 978176023 858177986 983885163 321340492 509606462 426748656 610332757 592732087 673872247 703101535 729228236 725306827 833707176 421501028 564066808 868581386 930124123 196197561 704851107 990933190 995157074 886344288 983076497 502124346 730946737 46242021 934352678 922532181 975092951 143037888 483991555 821568004 973669416 15507964 510030052 511563639 678038086 100323468 660041317 71167995 928326520 691275907 821846499 382908991 823038419 300282715 352092887 586579893 616619077 824415878 873961581 747223521 832683355 637635152 650730681 251029097 405263580 961133144 999020827 827131582 845572619 264313875 868109417 99227885 228669989 302857279 730582680 865134894 871597214 176328079 628605252 123570715 909116046 926952091 932473203 292498157 508855180 480903689 586450994 99369342 896128986 871548207 918257082 582425457 663361973 279095126 463873633 445155676 813268194 576422942 805499102 840419140 893037284 629977290 718404880 184737883 448623561 860994057 935284004 680737181 854381909 193417117 575493946 988115198 998526620 772747920 800208941 890343232 975592588 242930783 250893865 122532886 181077148 23189398 445870317 651041484 718855227 137512093 259297620 281510563 401205321 149524729 285669111 856913404 974356673 596712742 993470988 213992859 744902509 261649446 356702310 919373382 953222180 270303636 292603874 979165488 988751605 149701747 270944610 315598890 666972971 696291 516650459 901296236 917466645 57339205 156011755 551768419 755775362 988029397 992996926 719018000 955298131 68750829 182072711 489160008 823701820 506789121 706560572 364327832 864865623 114455863 592570887 182108749 988813482 717866420 989430016 356743761 872833069 426386617 943259361 699750180 740090075 431073519 735475735 76960056 846481063 225409599 793582865 798151084 856147503 933207415 987838205 89355430 671581669 393547788 569375830 158986099 827361461 863612544 892095343 406486567 992707900 983300008 988043718 556707710 792063858 450522122 841331319 270689499 453088351 622619563 746681968 2065174 646144187 70708655 189506148 332658804 426882816 298660875 460359323 444644818 840400510 270574091 576035376 656140598 812619133 268928068 792154407 35121864 58380941 775493613 932987167 146117429 465785955 211515400 724361703 22009415 333523606 292875280 673413370 748515185 932987381 600527925 779643731 64700308 768227495 344762695 904014946 329567052 789779270 151451999 472319452 534927733 980711775 555478126 887704382 525230003 592776772 755449299 981048236 963095034 990960765 906430032 941799532 637234076 744809019 641236826 643262718 144621699 842401196 261598734 706875104 360624205 708399655 346261346 541334783 104866933 980511310 686425728 958490187 243555831 679527389 576919621 926101976 586699608 755536285 927678743 989274497 686446570 747233259 523146875 743183131 825858397 883424992 407999880 649969812 814723534 922419766 766249175 865523639 333355936 377653397 970564320 977882843 218533489 299677902 504661260 546369985 60477973 595774013 158734897 583502446 108428646 457870634 147877028 619437607 610946444 712096650 718523199 857398279 896655602 918093710 6702506 316393603 309913845 506986759 512288683 846641569 725621303 966119758 243464749 339345291 650314536 805650981 667175006 940276726 981534083 993477419 246652415 659395035 698470929 833832081 984876271 986294044 578603555 976754948 333758049 418619041 274846575 643313700 74731124 87063536 768105192 915096235 237114726 523874864 353537144 681778511 885664346 929331711 203180788 689196732 631250927 720210817 744682518 834343983 353494785 407103228 934753682 978055329 200322364 945521377 213367946 288919701 799198241 802131551 552845200 624452305 192809977 764446702 40745801 899405681 445386805 704326979 614415970 939734147 389159222 479574793 591931615 687352767 251049659 255484675 310700658 634713334 284898796 928316074 585335328 954430076 155086422 919381840 425854724 441646396 76309079 752656878 61594117 947282993 738657877 781420917 360979871 560777585 959873311 982490675 668353562 730284077 356187983 597463316 650363720 895379958 336729284 393323741 619105237 973218170 962569199 990358598 919777532 953223517 334119280 757315193 488773942 648953981 423689485 799202941 846843024 900133724 667709217 946836572 517246755 939613828 92475788 438871211 335693970 971407228 990652641 991751169 66000879 330300033 498181259 600074401 335075060 922586986 733342606 752955879 33570535 667829258 922089331 932538462 228731733 960424171 300053647 940684637 666373339 962217922 250664368 546272663 648098204 884184478 735022797 755951989 475630166 688168396 385541224 797530338 286266871 888540542 612832473 721154763 756061503 818883560 290184964 560147370 400972050 465558041 371960284 991337386 952977152 997669919 688662597 729318605 51008113 469011414 790747038 863122989 933963438 992625200 832233169 847401355 363114760 397697622 852276482 939514411 322327909 985980818 911400503 932152690 637405097 829363218 636739850 990735155 462299619 581834151 771814015 959630131 344795226 882147616 974262046 989704731 804792065 878424813 150562753 362774132 433912132 719832709 844347230 938305074 471110488 943139131 197686102 559313222 849790358 873240955 182860488 908376157 169996455 779812346 74030362 932445498 230461835 373182481 559848256 571497600 741016416 902791013 700608122 865125276 898071239 957307253 355188651 458555844 273706454 279830321 708288083 844965004 714168751 755353451 464428194 888993655 167929309 511363419 747978602 804292193 828728618 983241862 902406006 995994403 256560855 842868257 639418056 683542901 88724424 616114325 931639349 990375794 911361849 938448272 625009164 974100747 401578939 586409766 633527881 704105427 560086943 587781348 793487657 962355740 353966045 641149842 292726512 358182277 811126589 900893520 162221970 365869267 581121359 789682380 156004412 649032450 10080336 82300499 243150502 942675316 198853680 975888082 984945671 985985182 249187836 979212760 271714620 927646053 718634897 725497332 946330059 975016426 341864709 398123352 891448619 934930276 342771972 971067866 300917074 886869181 429143469 581039156 350634022 743858453 947803328 956632616 542270475 991247625 909549177 933014971 883850328 937552294 977071361 978599146 598356960 904310735 342601629 427858000 949218646 966767739 306607327 955985145 877612271 937437067 684147445 920279849 816668116 850819053 644794445 681962799 466642305 688311916 411343069 568801748 827006396 990335167 903328028 949835379 398267989 859220108 519269580 743100772 10117002 875027350 795420569 980506834 721889004 792754646 110202192 870736145 705564361 777704652 629437955 910543672 30458103 498863497 716700379 911300770 283678418 294550602 867877100 886050885 595921614 849158645 700816368 867754972 417744529 824193241 768995800 999526198 81553443 830881453 341804648 986024277 21707961 964717080 381328328 846501726 475485938 705781018 668408250 824504654 654332002 962226717 277524630 743529008 64305799 118168908 570915183 746499009 607328666 885404712 403151949 429538699 104473323 353315050 591539991 847672398 718787528 852053631 953478640 962616214 256885289 680546907 754117712 790252594 483304295 685506482 840295388 908436669 591095791 960060270 462292418 602193883 920210716 973732498 315748281 867548048 911928381 950756877 953437162 977400277 894035257 923655642 152972150 858362916 721838569 950354519 907111811 908382182 197917340 829905512 518467860 713153434 166743800 691422149 34536122 872535580 208487232 580129463 719389276 890351094 884576909 942347237 679671759 848010523 667305692 722817158 941164390 993214050 556040358 586054924 714672815 947863236 800559581 964387475 671394644 847450009 596190237 696465251 64423097 802851529 804583433 835656012 715214452 863214901 657664152 852521267 729975210 852257231 323529603 363836286 225171967 255839758 376564733 670911899 297700938 922428164 849526304 900040071 711765132 818909187 362362303 824186819 690001736 866858903 735518992 902537987 95369491 531697434 292475464 822739048 161929897 777776493 79606498 697692200 477821947 835343964 362342025 631854894 99709785 559849929 735280715 867689158 617540967 650889039 906476540 921427739 762291487 920562239 455452359 823711844 556236303 854885785 388995529 906950398 694500404 825605674 422211359 525735613 236724045 336702874 244690451 823062429 278921111 379450967 530717242 619872813 181015535 608037425 640851197 769328188 674181902 858087414 922651476 926907933 738406926 828293884 576398818 756093548 604224284 988950962 871503903 981427081 289713158 989416442 976588690 983685317 961354795 970040562 117667615 898119267 961826143 988417730 760417804 812957748 925162942 979571135 515629964 889392504 734498262 934275773 446604670 744131116 792403919 911995771 348853456 389328178 8090782 791171628 146596362 322712194 462691801 610254421 789755125 880060142 842054888 953714176 441446191 795609794 804915174 998006681 291665345 430502456 466476833 917721094 306959527 943483196 955481581 985592663 848208229 993436235 330853563 671923932 589774058 809819977 507096763 706126984 545594843 843300555 960328736 999109040 253447056 314894540 958064894 959452202 941902870 967594562 141833527 402694971 122251735 883033822 890095744 920302662 845894059 852434118 904666849 957425666 909794539 979320805 268713923 407933919 85903828 502030226 204615894 649744482 140973697 880526302 607274272 802605675 661331959 687167212 678146547 805530714 979749169 984175633 229828445 489288217 926971968 979265164 574496544 587211786 905104053 980612086 447396059 734578965 984864140 990646553 607119584 874570917 635594333 907295367 950350497 964337576 89429904 713420912 912095753 954414416 892754964 949240091 984104465 989830476 548345314 758671195 515130915 948629306 429692668 918301215 685212959 776906646 704740103 739529887 870094516 925731077 685601314 733061909 471372753 997870721 660963901 845477219 277483977 692945421 536976795 903007795 336228174 596771367 937332678 937719650 199370269 284815300 66871609 495549864 937578172 995440330 750426951 852122018 619020819 744542170 32810707 538149863 368590751 775502737 891261058 913334292 104039188 720273348 261907116 441821005 419224470 598959691 182409107 956144566 710928945 729722167 821750869 978337818 894782583 927776437 531399135 876354074 406501254 608325394 995325016 996620516 41309843 866050907 555952250 686587166 344136487 811242228 217974277 668531000 840784455 909033804 342068359 687430328 324289166 985643187 470457312 516588841 581053051 740434734 264772642 745656655 354612491 980400939 922531268 982405574 863590773 880471125 546071990 666865232 442940835 492663118 483484817 626649405 110095617 155671972 898601072 933747514 108066332 434054349 116168615 378537194 686770659 706559786 377142871 712560214 20580394 904330835 634022961 965579512 204517845 537579828 119620377 418075314 994939692 995753092 174297992 975880818 974069757 980053872 370168836 528594316 192885215 845011104 692246810 877482547 457493220 519344285 52882566 390792633 372263576 494085780 16618976 809792850 802873652 923047767 808736370 989674036 552536271 818442157 363085487 363154292 270300853 917115694 869589571 935135362 877780891 938568377 25867014 739347887 677555765 949273012 378761042 553887996 765155381 850154083 220442687 508295505 248701641 869159424 466187296 997384511 259826505 687883438 429371601 865221826 357296407 439732218 62061444 527322439 184262407 707226905 261845014 564759274 31363646 152342560 103957268 251395572 247692428 988754367 482938311 658568137 454684358 704545808 81851597 163174143 112930316 489396850 845858809 959007876 363615657 771138081 247955253 402106951 541457002 676652347 500776770 931833397 979516766 997758107 734865890 887694641 757715163 951061643 854369895 985218371 296412222 312079179 355301685 819848093 13111295 594271490 883527290 928484038 417394894 521272932 826860265 893629068 242836225 557640625 208667587 670921989 482638652 769111339 90670553 202999152 861167002 959147823 61753660 69690527 616003278 889199529 604806697 660821018 4506933 113357756 968503398 975542167 543202554 617233585 350769968 550332509 923148774 975246546 911186418 953055419 71106165 528505284 989597680 995754478 40767743 304584803 65264783 75630867 537036291 752390976 510042703 667675868 898509502 941898296 564881191 656598253 951569507 958839449 500836478 919606382 661165812 781454442 842056276 992190780 717901383 781748881 598981896 937957938 435548534 916166160 446958033 927502527 751046246 905403773 761105247 982291041 168032304 319829197 396259330 432588589 469404859 705036565 582758794 811509774 459661670 465419902 420782320 484350139 671923606 817077110 795339079 903409569 358996623 893337261 828075505 865975450 835582008 956353488 788326465 826155462 222864007 677753186 834191970 934787457 948440160 948522076 166793047 433153590 258820670 486525255 281084398 395864209 41605939 259990379 425259580 948421639 7531693 279940583 766054465 999225564 963690914 994765631 622284988 810160525 425921622 695438779 697529423 738066828 963877682 966827454 801784323 824610592 276164488 647763606 513565458 728189375 669955078 918221721 4729651 59998636 960855616 991690993 681008482 954665760 177956905 395867889 567718418 953555628 958779645 986301185 824736052 983149549 690814076 749943750 682593118 946623915 86068574 642103494 18528693 509415545 432000378 762490269 218375617 777391213 708539069 812641314 802082631 863560156 563619015 587940822 547954014 596287006 508051398 650218166 130976053 188118575 215025687 747334199 994672336 998966713 921947490 993683233 355793058 767042530 267638266 937712239 74196471 972779526 637173056 968217350 1084292 115471060 893237546 969869994 733048169 977216925 491923852 828469608 131072417 608233241 36702720 477050286 811773270 856674080 615183438 900000125 323270625 686169239 29555140 297038165 518802435 698440204 466754409 996406307 81734091 581359262 202199597 807874490 491909839 648210317 403821694 625933073 179827266 892089138 563261576 711970813 732986254 847004294 410391466 863956068 228587033 403489160 917431253 928067727 954394848 996438115 160459403 181207408 493372708 770540385 456020505 578806829 240519746 532853956 968907667 989566507 273754023 858047775 448264714 727323736 890025423 895735040 673713901 768497845 328328609 503909635 246344546 510929405 37610845 402765908 279469390 745674503 688747990 709605948 74079200 822925318 64561093 423553465 230917906 740029990 376744760 807999061 772559415 774687929 162097165 543640400 967089025 983626622 11142743 190550148 848759514 919639911 607613901 663812024 633752598 943165110 208516520 809296225 626648777 952730120 941052465 985241697 227594633 341614962 884394141 956181488 683404197 708339105 84986990 511097595 853218514 911549522 316187451 446863596 424470890 875934743 139378805 864593120 815105881 901703832 213047606 687655300 418906258 822905824 370602705 410615563 109816380 773951070 848425196 949132242 317015742 810946371 711905698 731580540 129400441 593551332 464544318 622698038 682576576 802165430 14481803 969580275 335698265 865125241 971530017 981533612 70837060 104596636 618179944 855382523 113310147 446608809 871787283 993037840 547036380 924446850 954177105 977457442 368046046 569761568 981839819 998938934 162277701 416723042 325392142 485576418 246579342 800414640 164251592 547308393 518816806 553036820 506787512 954119436 783672842 925306690 984187239 999558236 995905620 997227714 926607686 931543667 118087685 720359646 396923292 435657270 300631064 678100399 42426912 269763549 887237885 965828228 157263983 482835953 481480386 778170834 347712267 656514535 248245800 592554418 787945177 963730831 406941238 541563292 847609154 944339176 275001542 280649080 952891849 975820464 831589000 961657601 506988347 822908802 770279649 953295490 252227227 307805691 642922240 669462832 500237527 535027266 177618032 896444655 267762002 639936087 988658970 990086768 136268518 798290714 701446417 732611321 12359614 793047785 506079272 635123670 751589963 896429634 306436154 337852337 996747127 998397153 337169096 609973530 718825602 766420673 674166686 918608203 28948639 526597572 223284768 262253086 315529548 572974095 232793874 233641420 572082133 846064013 368319242 554939238 134662989 485798401 660614849 968374885 300450941 547402018 49368589 60456324 352862268 997336120 14392798 296194588 193909480 548272548 193297222 446664593 997694466 998121173 94835522 171756160 859744470 867054291 742165 122646132 512674875 588797214 199541618 212511221 288953613 829158687 359873857 642984293 643997045 915663931 640290584 799700466 386336669 953499999 628651232 869006882 782598106 823965111 529437920 747877098 440315521 915686974 124818781 670301826 559210541 662739372 373480031 785893703 585955655 599978363 995086773 996818065 234278458 911326182 901894520 993914827 456423559 527996721 80798530 765029247 872473892 912345699 328993826 958526552 87876522 283709067 657680936 836576195 677240270 840664492 632277874 793573554 153267209 943012153 976057805 982651711 727777560 872267582 595440980 857945253 117307590 380513319 615498785 806479444 417060295 955441634 49290761 499630582 390199363 753794703 876883403 926273373 940264802 972213671 947238404 986764355 372215967 473029539 222296337 246213341 176328806 208135795 880444659 890086589 285543612 381465510 328090645 965323678 884550858 946223277 450831435 461717848 136346835 182388595 19052833 24665273 827648602 999467103 818456189 905166997 940865053 949229081 863632512 917355454 457100875 544901828 234530620 490659912 843619899 897340768 28954044 954398566 164304253 191343194 736238259 864868271 263259289 591485311 139600051 935324630 556476555 616684237 152906745 679256613 412015426 851006322 364024202 711325316 414856051 722737492 445893984 815222422 145869905 725245585 155228446 724269477 689228720 742127920 151373222 188955750 285644773 787311315 430809158 733697843 217885605 338718272 881198971 948616967 650556580 813456268 333064106 984267791 2546750 825154873 965716149 992312457 669433717 766266025 939007164 962655795 933363907 993153686 501816693 936351835 259769674 852840021 368801004 404520027 659423275 966849752 805426765 888238982 664863378 866488458 303618492 476312482 2432889 633639594 251839363 818600812 390597229 945107597 681235130 849913627 940237318 955819096 478663532 544724591 300255986 999072660 73523686 726099998 283495180 927857683 295465642 877791960 177525713 265538735 570865189 768760834 655863891 899918390 387028089 614476260 280385697 448318308 30093248 645288064 939972500 992275202 875244148 901954745 117861423 555692272 186873754 207644724 617887528 871480405 980657505 980786197 704438016 945889700 650333653 954347858 746193688 814442454 898603335 975729269 915759895 986733116 637101920 798230603 488455498 808482745 960415763 981186094 900790505 931694036 50314975 882920501 399195193 826816802 391705162 497328110 838840798 917595987 858702904 979526578 110301924 533634978 116999497 577671834 880888942 953621114 191883831 946996059 554101463 751599498 957987546 983508765 476334189 887486373 580902174 765316089 9046493 414903478 615171083 663476870 266868942 631150626 919143067 987948523 357662085 499247857 660457374 998152293 889685315 983470624 433884304 774131033 146512634 419296715 631958110 981046604 838549601 841845228 194245759 208901989 805082874 954374524 299260659 694692708 916785548 991924991 897515591 938381102 302307770 578647234 600358023 941371605 445982500 931626172 394643147 944127573 283778054 664176862 198389329 680552918 43786546 954408440 74248767 356538964 360461705 493826154 30961457 223805608 985879878 989678166 667445078 983679405 68127431 601743734 907080639 918092508 947809173 949682280 496752456 966638679 612821203 800070556 189279138 418699323 791332736 823120363 73094707 996428445 531554617 754734518 858183855 904652377 776263247 969303577 82651724 497177380 655520502 871764859 409311482 885768229 928226523 934079136 65684810 613155589 453016956 807689672 886665100 945314000 839315419 955222039 135449886 159828140 266987421 703836873 524808932 830149708 474728460 633065368 569309208 700792043 193966420 484031845 447666829 706644011 371901064 566973013 907158753 911304031 110964581 190715366 464890681 907175715 692039117 924664871 428608334 672108917 565117440 671692597 776167183 777368324 827742191 961417096 345321243 545358215 772145577 829220896 993626657 999021146 66730117 804015496 516671758 855376305 295827508 447753682 439094522 800510878 19102385 76939525 105080584 950825958 274143051 772352099 523180437 955313433 155114395 513398673 331721404 339787798 11924097 942062612 624241331 967793818 53570207 192532634 351174016 874014712 913591147 914339909 978008337 995010713 447593052 653084273 29660079 961886761 986927868 987869985 378558009 455216506 809937361 960028062 766561885 774060673 310302050 387334989 476508127 935509606 569177086 587783380 285682428 672997120 808790090 882242076 712873225 909109848 992119955 995495604 749575832 764441090 926040086 945632946 580187027 787126579 90425224 265580492 123262341 357333099 736397702 880597706 160674989 920908848 576843261 669669866 954226507 957881971 645580085 835773785 704695582 830817417 487022121 908563660 505340164 582769225 60040722 488412649 684665997 830027761 162384402 915186747 988204127 989137751 661719988 805771618 125469215 516794518 199618093 763600701 787873778 960532377 523844519 821337130 464626840 600695030 584029757 871138282 515859392 810118745 333046210 726333226 961815060 972912834 632785811 762351627 255503620 676711208 777416906 826256715 788328860 967094601 377917177 882526176 467565059 836381476 813330049 816790997 238506861 397190828 791169854 886917947 189345262 738954392 634837404 911343664 300227826 379329930 545098019 851976835 725983815 958681508 729114898 997548406 514051934 749409401 940179516 965031893 150079368 674111358 835956743 881122466 660853020 685522023 17976634 736004403 243796626 265078327 722090297 749603191 833160530 973226681 620220426 758081179 133490285 442700422 959098349 985034090 814496951 992468307 283348063 717321907 954009135 986888732 820346679 848136375 650222632 657646321 750021864 854790887 740892821 837542854 47688442 813612238 539650178 911834359 998239018 999636182 832401195 883799054 349887065 554624565 204871931 492705384 249210614 582298986 335139540 752384295 410672649 585555777 482619084 503168780 284530898 827992708 985831107 990678295 895496943 993691170 978792861 986591885 575762361 662078796 798899493 853979916 523722321 727117415 721416944 883540388 337167943 470908335 898301572 969382903 64093201 832226477 733816151 870929614 837596393 980106933 391385980 792520866 919943076 945319298 898214402 986333197 383985417 684154331 292527931 845648840 934621198 941654946 569431942 637713659 315867301 964313260 550999416 979515971 886167248 996939574 623630341 795037376 439258415 899826967 354346706 796563413 611994129 900443682 933122564 964929847 234135762 540523794 713521624 870010990 663536970 767286525 418978273 570204307 144976860 941375601 74489911 974318579 438826595 540986216 69174861 918716141 109027626 137975203 804991217 951422663 83922196 444524623 591816889 887869036 78719379 975916805 412188384 508473110 695277499 875944337 347038174 695992990 270056239 657935149 239843909 299617857 444505005 653055173 343014509 721551117 103854709 180246354 259202696 915250593 873852027 896672706 829517372 983386814 290028595 575895622 924085437 956441643 716515566 933576405 245030132 263572053 647841837 715192668 291868644 942204520 865050019 994401473 630427458 793856279 566041258 970324292 55068427 592292618 251465671 769049235 724075300 790087471 720045393 832014965 184334302 936966157 979867088 984621988 852060008 961741273 245963362 466587077 817587837 855893155 239762602 999997162 728308049 883270585 638440694 792688286 459536707 497564838 361410331 930535639 754651405 818895033 945782767 954382212 306278087 573697912 57574438 706398087 48254539 360403108 599107018 798387602 88465847 111736572 316936622 616274043 855247947 963497836 84726249 801358778 26446715 152592061 891704515 995902582 295604778 880684054 906624406 952388868 118226449 613348021 371484375 584570751 36253772 887023370 889297544 919315402 851244728 968521133 108267379 419660012 654136659 983920528 560793465 572744527 929078722 969260915 484149657 632352387 437129863 773653873 518283807 763098355 268843850 433321381 544183306 873960664 149547653 505897127 824623296 906850415 647847550 906503500 618136336 934258025 949261641 965443511 429474138 818001618 834173728 992885842 591691388 833106700 203538456 400501183 262641350 824038675 687430291 851771730 400564935 972290927 926598275 950611827 545609224 718057809 964326703 979745228 877343611 976047481 157977802 968963926 179291214 745414984 794360458 853361363 761450601 862453776 161348724 217486218 449535768 810546464 669326248 960881992 974777869 977663516 146689761 359459909 920909067 934402903 101421048 356474054 713136595 747340851 216241876 954573175 831694971 919511384 485711176 588439943 240642629 267019840 327619 514018239 798269822 831730033 845080641 961193359 626066755 709909095 798317526 890561390 944422229 987049284 1472018 767843137 733281545 738908335 926929444 932913111 587318649 605446206 444481179 773016521 979003046 996311501 309919512 987082009 169212572 946425002 183130273 595454761 670460319 991418333 268149781 734901360 562639445 852231463 824081386 873381157 719735102 940705200 381059833 689478949 503127188 942772404 994933122 997228524 276689510 693848109 890938711 966361026 315521823 629918504 471731063 744492539 382059014 788929569 875987239 992164550 193623897 713923299 344817067 990089296 847930997 903817298 891480964 922027795 413030710 991380354 552875082 757641671 374932450 556734364 422187523 970800482 42893586 704377061 157933199 359084104 853081179 987292617 940581375 950323087 641968999 881580915 645664586 738986263 731437996 798551128 844521689 846506198 246038440 614601600 975834458 987678191 415786763 690672320 526246379 736754469 700946726 794055712 300502313 795787858 542332054 821257948 582742899 909581109 267536244 476225006 950572181 952422635 191233283 221529528 661229105 881917185 501448343 591923704 287549401 497120730 694171745 999887824 883756672 959474259 466589699 868695807 537408969 780832914 118080 2707971 686742483 840861123 324930106 574732426 44596077 659160820 895094435 979218667 566150392 688758017 183880365 747084724 311581085 390601855 930278124 950962458 731214299 879399468 293072352 574571649 462878937 542432248 83900444 880420640 544162742 883242611 677126515 968231030 645925104 828238039 657525615 838667592 514169430 891517414 714381591 770735935 284570834 906924082 439924476 579207424 819843573 976036125 291595486 320813462 37554171 518861716 540881909 568195167 253082804 889795163 28822444 967821431 363259890 759358586 141283338 585109555 230801460 506314890 797147282 996301517 224342596 686880549 987907561 992078721 715777383 730265440 226474988 690023084 987666554 996604973 816019256 941926438 151031447 694989769 641681489 814331314 76287423 382124050 213397209 786294715 268567096 486474659 715344462 948082478 990632908 991670385 509198611 764261665 649308311 974141218 349564730 832290953 786342925 806153842 207242391 804113533 751835984 884453050 884057830 894436687 676610671 762383286 147207510 702207137 189659849 515713339 648259034 688975625 807238754 888760844 57336281 972867561 201470625 695759188 438072376 646275838 401472771 851343256 841161921 997397206 674393274 984353812 287836174 940682454 352410657 714126639 612050477 856916234 195023659 786624960 301815507 478933971 821234013 909072738 932836293 988696067 695641911 851563469 126867691 232722211 740371931 812456848 565590036 886907929 338288592 541513430 7005520 620621470 356092183 642485200 274977734 916729965 960897521 969833056 887598911 898980364 32667827 498218905 225950383 743482568 818220617 883958567 690382846 967210775 466317021 573384352 489308886 608539913 357085081 734283312 211371029 477355063 136729599 803807414 507515936 682179413 232945101 242673604 707753345 711220882 79659685 653232326 33007569 949177823 823951908 834965971 845307263 937884209 402066337 417298538 312645346 533801829 206222038 858880845 213819918 754681797 597612042 774268509 782788888 875980599 691667605 865780221 414389165 875240731 384237429 813729110 731516209 908984289 790515201 803917449 40660199 801503075 614770471 630907173 277594436 349668187 84479305 130686702 826127143 878238069 17187929 100021375 77440369 800343946 173829344 809056397 764672507 797767281 576028297 748384205 756509526 774653091 569561733 634554776 148910568 475752008 25070270 359603404 742187083 795280985 692745918 699135662 107280608 504541983 328060262 466917316 635093291 646079939 595571288 845987768 794236401 960308824 303969536 524003273 389671384 645739208 114158869 483724268 431301687 760829774 118461321 821699732 73066843 396171058 58368720 715465540 509410798 525407130 274544410 825295288 854373908 874253091 828541010 997709784 494045239 524079646 285342747 305284734 390575577 464910052 64830592 320581968 314251252 776419598 281040699 742926496 568335628 757365787 494612361 980891444 758279926 805394616 951659256 962288560 754446593 921422240 872667889 943661579 826474209 836539300 405531023 732747056 179077570 665919336 765171617 910241327 650871581 832039483 255494202 698371951 425766961 452797259 22933802 795518930 177675774 692858169 215896970 767017180 288226859 590336826 160321777 484041382 460698039 576299249 576532906 961621861 642272666 865687071 274469907 855230826 63282024 556566491 958813221 998383023 534700177 636509011 757041078 929320853 12734302 948561919 616866499 679871059 385743230 719582291 985674594 991188604 165868844 818749127 219724568 878513074 966476062 993908380 835857833 944630772 356123308 876966041 263309915 744958862 344806363 855434485 146486479 242392857 621588876 977644792 300587685 789393022 110870035 961614754 38962681 557167430 22372344 64271772 57700340 537511678 805175178 924931570 258174059 698817006 744871362 752771446 164194082 205897376 278313760 317503003 16810250 460674159 784026680 905762501 950181202 975177035 727845658 860734158 689609261 895178766 652465938 872889074 90649267 111492493 500422347 554353156 9187749 32403672 814399482 827398642 545927125 827703885 737944892 847576301 178989228 749863285 218698273 742183050 983938487 994012870 751645223 775898534 124899180 241515473 78217388 199391136 411684880 532521236 306211330 964267816 386338649 631743684 203091491 553551942 424677194 744862123 872363862 885640243 514705134 797634007 728922131 873571569 444522469 478694323 590524896 825572586 356013234 777345993 399937619 871539081 855537285 875719881 152781881 906695130 718483741 992033699 291931495 795335735 769331056 882128108 509421163 742631151 936374351 989837660 812905551 953467753 218057076 989028362 585319338 894961412 287910497 624864766 844653749 867614679 594940806 660271235 806819035 982862034 937513953 948835757 693861035 920464857 899581915 919311990 714868506 719434588 428829885 705203448 22015032 516846294 294530321 933704233 345755776 525864700 704923420 753993512 983969 155603987 541928991 948659215 712183905 870887866 638036934 787311377 983823357 990517983 708506182 816285042 285926351 621922753 501814479 964657467 858118859 986943390 901575311 960051350 31332440 448864362 984392508 997588033 13456042 384062063 752316931 975484117 694710301 954044824 791989557 924350475 655163868 872520927 208189781 748306890 281022882 447805694 898235018 936454212 167520003 581574603 451050538 547999982 223653567 510920350 143794138 998272473 93205761 361758138 483063074 615839928 406493317 866533749 895456281 907358786 760965782 770768987 753451300 946868736 770977708 922407058 994887981 999440083 264932446 581503777 244041783 702177324 930299057 964421216 793592262 981049307 824592410 990974729 269516613 910928159 13070926 449085355 583855605 877689641 923041250 939047467 777225781 791796779 565956582 654269813 223630594 527492162 585797963 612891973 459312240 927848740 35693329 938891948 743728248 910296562 731031728 809133609 717738934 915877173 697512426 975590811 414132934 842175492 941321028 964193661 216647773 294414004 473608100 645163029 665171354 834078364 246267405 617986043 421048221 547416721 421729547 645279323 286712830 895741463 554701130 864828003 397528555 606218858 994750978 995101565 746011180 807484569 602010748 687063754 969116308 983258350 490233324 554527068 736051117 882987966 387032653 593721115 996090809 997959859 74867528 722106657 330346062 448989057 44568223 420722053 418308632 558051967 465356469 993964391 124562655 691442646 261733031 474362424 8824575 477842130 97708651 545910489 296114711 758449306 93348985 404539652 812907129 923892797 13312309 360836283 239522172 751847460 72075452 500495196 215608068 407278477 783582734 807380445 659010974 781505714 127783108 130500994 896835709 960535503 877984111 919345878 227578108 441421856 23121171 340319742 305572079 383825237 731705731 934097535 882164151 908905485 807134890 813379033 669043891 695504384 70662844 916873784 451627317 618613877 56087590 932463311 661368842 765913893 602371541 862571100 842028475 957417061 292092053 973735375 163171075 695629491 924365487 939359987 190708426 478148129 470770211 579046290 620611990 627238326 873906590 934892740 628844121 700326004 46634504 365526375 313560187 518322747 424999105 535815411 532134786 679662305 660746718 808234259 236909473 500452173 557383865 933870141 263171591 936864628 359024642 578961019 960823933 963367034 629543219 660461037 217366985 766915403 699394060 990550552 209715610 770972293 735551930 982558378 101829523 367739645 457772073 600364329 469217806 774877262 59950073 506959528 425791553 635312206 32777854 324235136 953154914 976866732 565424255 946280365 250067534 917843584 801549361 836086773 806030833 837812343 659849248 988359114 636002673 939398143 421498607 450985497 546039222 834404451 880024292 922235654 343551759 474109687 161070168 792791959 863446765 997960889 264707323 290293767 441249164 802167920 258834439 781278631 522188692 782502366 546317898 793336247 635547405 739888322 661102788 705784469 708124286 866932390 298902859 674072088 465880940 795658673 338790629 546244533 487045361 672475439 255224083 981168713 402233818 548921789 835870330 886385484 895686387 954500972 96486896 769518473 374682683 635047254 678856773 815444729 407388563 668186982 618699336 700361156 232165822 374032660 564686755 810320857 404401414 509375392 481671885 684183086 928967715 968532142 588300282 988205527 557318658 597510214 479659050 508917420 843525129 991333231 878749074 900755642 79879357 532442552 989392837 997079943 951721984 974063077 893103178 973792316 911943246 912676552 773662702 861059104 917019845 939503938 925422444 999625932 572605788 793605687 359425517 659391753 443189422 913793954 329144903 732582089 839885796 938833486 400702250 748496172 691032012 896360376 329613373 965352592 450754587 999001764 733481148 968134502 788453320 932003650 576256742 955523916 183294276 529157950 290821398 708090449 598030565 815923523 210040682 278134637 138162845 859497537 811226811 987826078 455333774 599788726 238421287 907968563 775640818 830654158 636975518 734363285 244672272 441470975 701730767 761376456 188956885 962819068 714134297 993885821 288053394 658413412 303370636 826232033 85587304 141196409 996923885 998133393 268159707 427806342 678236814 949081228 12989008 254686094 915425635 973269840 764672648 979356431 429305284 728570357 275275065 926242274 790176515 960340667 842944228 978960496 494096062 614263748 233701631 659398401 560082509 879486816 601349840 890678252 313603473 600564012 602603572 873849089 940286009 958598739 482277398 592739291 118339037 824592417 327508653 851004926 521175013 560490487 419709923 475248636 283129858 715082011 469803103 596437926 748386512 903067942 36653227 129045412 541598979 889231140 481138780 594760438 467119027 694820360 988683633 989706298 109966462 687210588 77367516 219398214 635240759 957585383 804155900 892820935 247719665 263355141 73819301 849259022 54777420 245866670 895562098 994542729 753583573 984577947 193190508 837479056 649895765 885354025 284861506 397313201 89467344 585412797 25209650 659723561 547696014 790212990 864800941 921291914 757328392 906876138 593706571 642948718 84231304 940548314 28286174 519815534 70648359 223604760 847075986 864837245 650801044 862551996 403005689 451420697 55830802 409078777 931115771 999501064 495001723 872222075 891183887 905472001 519033784 651046164 835254503 859921183 74745946 428931202 44442652 357135602 195911000 505286569 589575529 666502361 666361479 850502768 507803116 704424499 638594565 773756950 881537548 960385179 324926575 870594422 220776024 826504557 706199117 828716612 703725078 951229363 51169720 927523994 690154040 859351394 707184550 810267490 233957203 589269627 964783885 965920750 264736277 943650799 187815730 438077505 847392501 944317685 484770999 697658893 115402464 612947281 144312460 347221699 116273878 242682684 591971496 991299819 344986163 950253415 767595507 876780869 809077243 988156158 971999299 989966090 649393195 673638487 662791971 786536540 787556772 949052040 950223118 986255839 875941556 925691128 622562273 694230772 587226742 669173050 473235299 992403644 890403477 951310857 959037479 984518502 44132139 381696958 399525631 436976176 174971397 639421318 15582996 989464594 796041438 976155132 557625279 574382467 722778858 994074149 274543188 585115957 891579759 893158695 989197615 994024987 629867379 982631390 726425214 879011700 329292243 384464041 485384446 819746703 558742311 860322551 532058840 616856753 635227299 746050328 743044326 855792616 821264860 845176369 154546382 468688136 472442595 812817786 843480893 930517593 750768743 764693437 540406541 731104292 132488649 820264523 832638471 984826214 673759318 785054174 488344161 705671462 667766705 795607230 972375671 976478906 35931601 372853547 71757242 477648673 83130128 511427000 227515382 404621951 411407712 824532678 975822864 998717173 412056490 575690810 40751312 572988413 31709712 315740794 595223813 634029020 712741378 882424389 429362617 617171252 5597457 392616131 309603327 882723448 240860648 451367349 712275711 821542861 947784861 986078005 15482945 659799490 11841286 363030709 998493910 999320015 568341758 753475697 235721791 993726376 259233149 790516103 360416863 839753981 105972693 170380620 989713242 998741461 508555860 923380857 626571135 978245233 243931914 955611716 319109452 709962109 426850499 676741058 477944031 736674302 169508911 774976519 125498131 664615815 945056258 996607937 123842817 996465976 891729450 927426820 664470686 786807432 884993882 961011674 713608520 792465921 5525068 755330587 826443724 914972632 585597304 753970783 507454316 819955810 594375781 845267748 483517635 559724013 6090994 125241353 764458371 831204116 728509022 967299251 617455020 678702352 362259012 533698864 472398205 638763147 657954657 719532553 109701261 484762703 786618089 850189453 371432633 586724794 15926312 57376886 406799994 822997838 198648677 412551641 385690746 948832414 825631528 951484143 15931991 271968241 157058836 571977738 805665593 868372600 647469552 900571654 825497211 851328859 610918283 920593792 368028828 730532528 598877184 829087227 37578889 918112351 32374923 375946319 723515187 933826612 249305 4483814 710070840 885036446 880111772 952101619 285954709 979227295 846729833 966740498 550503999 572025066 243331519 498721954 314715796 763068947 155959699 970691773 265945575 935211521 559578817 916488661 427148802 678564732 45586362 781208909 59940195 691018757 520555119 620434806 762424291 967201694 831093808 886229459 156112600 389750918 880315996 971043153 594997745 902455423 594936569 965048628 273499075 434132467 900668803 982461507 531285105 735031926 784853204 820928684 619969653 622630852 93999165 112950404 794518100 897459883 736057478 889157577 522877433 700955440 488777441 989438335 529120504 542611590 811344119 858584662 424791575 767015056 955461038 966100242 494617569 702317785 924192551 943464878 283501732 822196893 385712624 836312414 934792703 946762351 979035572 982126670 853246786 959657010 99860791 743393111 859352977 891023422 165952039 624632583 11820964 462809987 221226894 969777611 169725089 266355805 527135382 590095968 945014673 981317075 678213496 972703137 837066066 912225065 748344391 867286988 371105051 997676248 180258022 605487637 226832916 385512923 902239208 980883067 742322240 997701805 906201597 909236114 737053017 960165752 986592143 995800607 625635848 877987006 191179139 418711142 485868711 615402651 495697035 893283250 762936257 864675695 880087428 909994769 282881646 470176825 941585136 958084027 158859936 670552593 425132177 672551152 181176525 454439161 250563144 633594107 968679675 970593088 541684466 956330561 461922640 949191733 792678739 902748154 462623730 912354908 658761523 904512676 599070169 749088547 366182187 911787460 280301291 608440317 25195565 494054470 295126008 375682099 379840529 588463878 479131039 845710688 758559938 818708080 920999879 930817291 689548265 937607356 128965932 334326165 888951519 988739387 940323037 956867468 314546734 544504635 346165637 816812669 38041111 720816877 803279128 871299457 196436981 797955623 374882148 704385560 812382427 843727658 368008457 403788253 135708906 260278382 86386591 659961852 96176691 827925671 617103430 861267842 548923021 603457930 781880657 918424533 536099819 913578595 763837189 998418985 155621796 889549967 50050362 897090735 764882769 771794294 114522596 512688544 27354946 739905412 118334101 949948675 176022427 328497214 860948207 910107000 178470811 452576088 919380026 936422337 212706797 820596241 472807781 542363532 221540884 658223042 384374484 677952329 835437984 988645135 665506702 902192250 243251415 357328691 24254309 269786755 618216772 632312415 275349700 993793959 407904243 891568352 92402118 158519532 830933514 859003220 316787132 457907005 548616275 833764330 14404994 260171469 212711163 735751758 965928136 990019078 522923907 962095467 991783037 995050303 155382157 936595836 298923904 718054652 374328369 684133054 700946442 879648138 912466579 919756444 449276244 899072252 750879510 797140843 972051860 994571627 646602624 681670748 231637590 753620213 317022207 323389691 766169573 803222922 350998096 454726856 305993214 527492040 707166742 835263750 822100120 882333452 534909138 973442509 67512444 483090388 443133291 822662146 850153045 933223311 217685052 874584172 131175906 448702902 149501325 365412392 550732473 661831403 141448959 679522566 724533295 797041593 360585233 890580399 910325716 951392162 330181682 846880853 951555230 982257358 512732025 692155440 418725081 873298862 446169553 511399375 296770242 543401028 749553579 831839813 149823259 465865125 525492848 828929248 163939006 841177139 948983225 949292583 202383646 940816571 185226762 955220871 792996203 979470401 262975973 759712188 795752776 877834512 410948893 792778147 855892295 883156554 776993332 847961809 2776533 261244049 510208870 972377630 350838743 607906114 529050393 649012924 131079739 559008811 202208718 519659443 7123273 878435820 223564675 561610144 49551101 329062908 683390009 864114949 837898182 946028436 364908931 507095401 430619122 517990595 829729878 900830317 264371346 672081214 548134861 842163424 908690999 986011583 768697561 912744561 204391987 586829484 17109742 335922768 310322623 895886409 670587764 821429236 404394326 423403248 808877311 966776054 224929877 864258173 397880886 737578629 862194687 918347041 443602927 973715686 388817840 496033097 760239500 874688084 296096990 534782966 55187032 260950955 603680965 759986408 116337480 337191836 262030342 564618937 540553464 739122092 670097483 966336928 414063234 512769523 928201771 964924624 543641385 927027977 721079760 998179279 974387469 993556474 534150523 690954373 290641300 912552353 208879824 876814574 523695759 818835712 744619471 804994915 810603915 878155623 593274457 656296142 201860023 899148258 608455230 876962943 62883841 451898506 243787801 848903766 304131976 538633087 133308802 427983322 607397861 978441639 894309384 921594059 573101906 643262963 275566884 911260607 841785124 846004674 972318002 973911297 656637418 721765028 407448285 918944265 589296323 674116703 588298923 639120356 998728262 999625341 731270518 976085041 109692096 897479549 832398162 984898820 599652058 891968987 751553121 947097222 59976189 450189947 750176135 847705341 152924775 406013616 947660228 957811289 343988342 830202552 150508839 571188624 169129205 978885074 863498638 869097649 882250241 986335313 627663177 893508066 569577207 910352540 644306504 724432684 765880308 889050936 479597564 985737121 986500878 997795964 134534981 336505564 351943136 953429503 407494602 718795840 595716000 661841058 553507381 644098364 392529611 789030963 252429133 529773202 213617636 809196868 460972392 661901019 138629816 709280242 455694522 631242370 519307861 545890416 96748349 574380693 368740144 696099179 875439823 998094540 871800171 924083204 275618845 894716692 993928062 999777467 545555348 769322997 505299131 929261716 535146432 673193013 310014454 414767766 670061091 814719501 603530437 765656940 69657732 243359334 571486637 864598000 147273402 306502784 684467132 761150551 970255163 987463738 562127805 636758494 217617769 352209233 436138177 450437557 68390283 465573914 914805367 975689005 7056649 393541777 671872251 683198222 819682447 886416470 469568202 730337139 705643137 979469020 609886543 809906124 211199088 736925476 229541154 534928194 892775105 946551519 335111047 373183553 580471723 785381815 741817306 937922285 662125656 874314752 684219045 888249367 632589077 774840479 680654796 777360561 510278810 653600909 273482183 396872761 284979260 377034818 24786871 70340833 391065461 719985085 757485697 931328979 342602699 386133520 960819207 986333794 362882626 502612326 898687677 996516052 350563248 607731101 297207521 760213698 706042046 999459426 919074526 954039780 956345147 997581873 712654826 766547703 33728362 513993724 151388138 571090585 632094678 815910751 163595098 697736853 47799522 926911601 816234969 831426583 519266434 930149481 660999083 840613597 746278101 984964063 575791936 722898160 966583400 970364877 289076463 918476496 597168061 699818217 383125200 652296589 573013264 959029248 163382390 342830601 367304654 453034170 19380788 491539147 12291318 802605415 675596363 855931501 443766047 918010037 717050399 952903298 295158961 696053114 570383038 581414640 699820950 701286819 876577225 994592688 523543062 838855414 471341705 747036060 685749193 721349234 727060957 924637031 443648684 982816563 808203622 841892553 859540281 996380047 39318285 322642012 373168719 517939373 417110107 557977299 544961723 692143944 223736242 647345152 47922853 491302572 558561083 870558204 209769516 805620142 213629953 595627099 364362953 844934119 705005960 954395146 143430868 981418183 387673630 965551125 191165297 501793999 250570334 816807582 98827343 796881895 629432352 790086253 849791950 982417217 393361807 921624310 730928773 929184847 429996916 496865863 796310579 796971781 351339606 845525322 337929608 674402720 461681984 831389164 639488731 969385981 630908764 754079734 755690430 865890800 81038029 160805275 65102160 887427043 71654934 868079407 208850137 775731406 163096547 218574815 449148421 663487299 478435748 492706239 263905369 665048819 408790167 444056483 268804082 295376834 959337110 963599545 651202019 962500579 973058679 996849850 409394428 771896490 515679414 614072293 594422462 994806508 125251224 444979356 812837434 910949343 926385286 954636693 97272883 401175309 991535803 999264892 474502147 836335021 692793463 792954270 896719373 997466693 755645875 904534816 53874133 839193003 146754563 212591745 460666766 678530764 979182064 995123864 686822546 742887252 431611355 930261571 387711113 426700942 48894783 345321929 771611890 904241343 990877110 994929818 163840939 571458382 594156608 992193827 899609591 972635396 788016157 895838716 466255744 816598386 9629961 142828874 351632514 655086925 741052587 746047876 632635523 851216606 501911220 575208503 733852206 847671647 226088097 237319031 38845108 969863170 832030996 930732296 399357324 641577162 397726001 882891380 757507160 814415950 231487934 856361236 845100714 865292943 392282666 592201820 179465815 928440489 575123914 917437693 700997639 847953132 556086743 720060025 967124316 988232331 607724160 694481623 909594142 944574197 889723482 952966808 433162158 787586605 605756130 942201376 209928287 865438242 224306183 544953856 506526030 832849222 665852437 787706437 374407444 728206800 731553584 931197230 792130319 955499072 241149987 447861107 618883316 899901345 192749227 720807808 727354902 982985955 421767745 422682477 593396799 841215676 539080923 786117286 587525385 896568291 545558982 709378941 304358806 585785323 598279266 659774580 456362935 900744469 130928525 772981589 260305247 458559594 930690170 990147911 944840963 972973171 200858187 676015967 861920546 981469282 652180830 839687935 481804273 731292566 56811217 872948582 449798114 478466806 167159343 495541981 431173117 607950535 455558365 712072999 349999144 620625374 655022428 819403588 726358490 750154102 940144712 969456475 773534560 898385243 405246133 829048934 539747278 708611061 497770242 577180799 90614898 463371510 21180628 212606870 422290256 934475047 603789464 719580724 953414375 969057685 378504675 989647164 669480784 959711741 30443199 103984002 588416721 976940377 429615354 659715723 687122544 790838180 898301838 950205654 95266092 126732797 807709552 941355884 192684317 305149525 473837760 684534880 281821210 346681553 130426631 445202955 334798191 993661435 972930063 979705157 821750465 858068773 115366132 279030225 660518880 953157872 954990720 972852109 956609606 969764323 434215305 739186178 443999016 591354913 466254878 782458626 896436706 918539065 268541965 627390787 477897856 968144910 472111169 731264854 980870818 989453851 815610141 961451785 719654586 847270049 502464252 686622694 313726841 926051029 517912570 899238099 365907345 891653757 717612892 831458199 87306572 715105535 364851455 474778241 561866111 579393654 969967432 982805816 978126400 995485979 738501892 826258553 52887676 765003331 405639747 668010026 392064225 440561177 563432350 585388117 35521786 167284927 653505932 906914843 570975884 604779410 83138626 369084644 339510170 725802073 332250546 997427315 399975994 965056728 394502650 479878252 193427214 979898586 283561825 498396077 450004982 676424127 731193939 791691771 790558521 864800878 282981184 601052331 842948417 956021086 761779958 837385912 499049025 706108948 522429138 918069524 852471946 900779789 210119287 975544363 905394154 916249306 996673790 998952452 110032993 931615039 802057857 816878182 908444662 910562578 347504779 772502789 646423011 927566924 396372676 449409171 748352969 885724652 161208849 765755267 85891175 675713101 603838316 718387425 60872197 547196284 463257576 885948450 834768449 930338100 147440594 917723584 322199570 405992857 987898600 989527640 6704242 643264985 945117239 991971802 447076763 731830494 760157227 832074341 431220803 947132607 948861889 963559777 596032725 631215978 399176361 703501051 292900008 820911189 31940220 85354403 688315329 942833389 560791574 741228149 188467857 491273538 582845113 930937744 781377589 824981511 174838893 223031150 385251042 981169025 979362859 984579434 288022873 652934032 288536357 899433195 105756477 645595852 383672089 740392336 816300595 940557641 298071438 395082466 531554287 845103235 653064621 843970394 509314896 851352764 422155322 725134578 258055217 796682994 192480820 661784717 986007251 994945828 991668671 994323786 56589529 693440884 530439773 900797754 64188296 395556166 540987757 953942021 305681102 429286158 115422492 678757656 95586185 997377237 708759801 723654063 967125624 990801872 954649843 962686412 481091457 715925195 639821177 909223560 661262551 789447936 215706112 289896512 862707797 988989477 718633800 862191493 416340120 928315725 895534893 998352581 289427470 320577320 976769441 988575872 953036903 970461477 819141586 890905260 255812705 639167226 205688324 622994928 659411820 981875074 583586405 720722202 294943227 382659513 593985169 647854150 205112292 476196541 29329070 396733618 870988008 977695269 446018709 605040694 603358405 724986990 464280584 952271966 764734377 844114418 252823392 535869476 615155609 751427450 909022125 944683192 896796529 917244335 22271270 146871213 181762845 774190740 580045438 673899513 225308906 276684017 433641534 906529126 439818620 904214061 283876363 409508821 473981625 743080958 800827481 808578841 745770210 798533160 637028278 937669069 509148026 638700389 688756290 780975918 332112903 348027250 864053201 930040287 85584561 604933398 469875655 598737020 483146093 919278150 981618698 997812663 509832555 638110317 35045823 408711721 871725697 984743465 974573473 989705366 707404721 746727331 525330594 855605599 853723983 965916025 507288690 592168356 404219459 577993004 614361881 756464153 175546188 797152951 795945885 893994353 818157081 927032764 678309354 824455717 535874925 764382341 873451720 941720106 779973220 831387988 211055190 994599810 971708900 976586347 772727577 800766776 362388734 384943250 419898373 715236258 110077154 463821792 898016769 958806792 632783154 952451796 362459873 719908800 328276879 499987036 677223712 684748169 49668793 216963055 475590324 653018023 338972601 384209142 20761897 828832075 674484732 851571409 616494193 919380367 365424743 391270278 278332856 523595352 492308703 644230749 30960838 205964297 315041065 918735550 813290485 895322749 93577557 306981369 760861153 879336606 690801416 929757096 202233334 618192684 518735193 587120714 200232404 748059124 108134477 565497122 628332620 683171961 264412510 675171266 941781216 973044338 851642083 988722584 521218803 684273846 352359885 472790221 834407620 850816462 695802647 955149905 762604815 881850031 825117333 968459922 16668527 88866901 185230549 465590287 631544363 989126188 433493985 685602245 433965478 584156102 744536076 926450888 788874923 853626410 343520686 396033321 123330082 250569357 667551260 864693709 502357306 666348201 743489890 751893157 237536190 261896614 955097674 965529442 7011939 60902772 78600620 989627652 85680203 938103609 299488185 622715162 926098682 991235511 169774239 607406627 823419163 956704878 255228261 695213805 106455298 879616544 33223691 650394292 467941370 784734965 627067508 961384859 84720005 413968958 27689066 165701880 911554821 943851398 234915375 744994353 696794399 780591110 852388009 970757325 873477025 924646358 805180827 860191266 204690914 412441601 390058355 598508307 554278520 920553461 132556038 178832232 827952484 885379694 672977589 877490997 664240767 805899687 346604351 738828830 712142454 873949824 512946290 891431327 366803593 410766603 119810573 573868494 922644661 964296341 391488824 736475615 129823047 936813261 57635566 269909228 88378388 486358576 24546495 529254761 387246775 809537512 764622861 954673797 88455185 652715765 142057980 419489808 557048431 619614792 811206112 939620649 987669995 991171397 785703045 972542967 781028628 999512271 631673589 940881234 396897901 897768426 149024325 220604233 82402503 265111641 736621180 775167389 794635837 834137357 498102539 999227399 789717256 973927780 35209358 755738927 319546595 320978922 660228534 846976297 597868323 852896459 323339365 926916501 499191530 938709065 614059226 864097959 534237980 751992681 672320236 970629306 556878143 690191009 112235289 385866234 698173548 785754163 42719819 219644286 992919656 997061715 486530664 873727869 531448411 600324798 829120888 991222101 584718437 758417014 110572065 958072488 68158348 773114970 183123547 414088671 392334297 918623099 273777918 813777781 472007406 830703895 3666563 593252237 320469518 603154261 916936758 965740414 726284953 907190586 176773549 238874031 909387532 968287623 966505255 976420205 578284436 801680335 273875160 602073556 425996203 987285077 989394859 994178529 871827938 973611882 933080396 995935173 987831721 990740711 206926400 950439556 792204314 959378201 582574248 724248800 605810934 657530030 889913862 955084560 784085091 922516527 980879923 998380721 474347912 757778795 423148640 912756452 585029887 671100191 673965528 790104481 391333635 663995577 655399195 666044533 302871885 647651073 476933226 853986837 503009985 541526337 131390748 707647727 884897377 885466119 172371015 504512407 950194092 987195470 948554896 959334531 865040251 940169686 275617652 937234842 365476300 606273189 278337648 700935987 845586713 894754165 909775553 914389983 675036830 765910555 762595185 971399410 981891566 992214495 875569654 954483597 400718331 871317771 406302938 673899481 232750880 536652075 514321464 957363588 11884597 278922027 131230445 361290834 137480585 863633738 491430483 742523812 775853159 824408276 605880206 939513847 918281197 994469079 610862111 825543333 671162229 867041066 712299634 713113347 517298603 618775488 762623472 820057072 714431685 845645788 660541899 861649165 175590488 448956438 248222720 515357159 882123667 985475599 155571624 926383452 398342580 724194367 779535967 914749296 162344634 595072938 225953197 980188372 615464779 980067071 820120938 893121761 855077514 877369349 589244155 879321885 876769421 920763014 487306543 620525562 275275373 875226783 768130702 780865481 702568459 723508684 352723611 357080313 108455607 812906277 950944229 955309443 171955984 704730918 39144360 312211625 252952004 270843336 385609083 624327791 564626666 992802307 584415598 597271962 247944738 301280338 333596098 776782644 176694724 667208812 176624951 934950654 12620111 713045365 893052458 918637820 390010894 585522560 863233445 923787674 416627351 544752647 6161240 985949286 939804009 980656657 270926298 827647622 991658412 997539035 416683542 515643678 423865795 719043973 840718398 977342368 47400052 950396507 438856207 728426875 146489324 581892703 694547653 910712542 750035069 992305065 844845678 989279897 361310861 611120243 823107682 837209771 432309034 752751137 781605362 994249982 858805553 917477849 292666346 679607063 678163156 917971181 779920361 809788444 295595572 570672964 143845134 496557948 83634769 672824246 73714756 920420229 730596050 877063457 815377630 822413150 68952387 565937518 392152070 909535789 342790688 803041613 710894309 737111528 803681863 993992313 674125400 769322732 694656943 801680657 291781573 659823873 596840825 705758820 760790175 835555361 388144500 847958194 328873374 440932132 656255148 715037371 56556422 720110918 323521601 500918402 623859892 861528611 657326002 868517888 555333568 587372663 50781749 591923436 213901116 244201611 887718593 911689610 440339940 941904257 785960501 987821165 576054329 679015788 593451782 718834139 129163477 334566359 862408277 989071871 659990520 738781160 979082852 986313762 535868114 722622799 780116305 857506841 591315235 732057537 64564284 242785595 62071455 566664616 423405940 895920491 608930094 859571235 763921462 783887864 827163249 924365164 722409595 771465963 970355639 973690259 719018147 724094424 953408273 955319205 339681313 708776897 498318617 639194995 875497140 889444834 815612115 978223082 2464817 640894727 666269385 738939644 698259596 779801529 868485704 872084854 196622278 998704453 466030844 709546240 60745156 524808978 133861066 905193913 85367408 541026017 19982039 41748450 378598923 469271812 729276659 837351576 71109510 743442847 482172066 770486337 674204012 981226588 675446542 751717887 975016760 981043383 446164529 861414672 956507738 980527094 447758505 825434816 171995548 256293507 631931106 777526548 501995613 827764646 989733902 996805225 2515365 825447013 905762919 926768247 539925029 657291295 398579475 830539521 575860908 686791975 634910171 836260742 722953694 865933070 630099006 660055780 882480887 973878832 136431450 428037552 273722593 843706347 215024519 304824548 837074840 945675810 323324946 767241416 471585227 615213454 869430028 915291293 677357582 841547376 163552298 616976830 673038599 975552392 647717564 888072610 281125552 430814469 922087018 946707220 94068397 928901452 750563698 892992453 948518689 973117109 646673972 730393204 9452500 359948019 143430333 905649635 232068877 606411261 202844007 294088924 747896298 973375241 122055583 364795840 191558607 841935673 924092980 965111884 489920299 498031607 630818621 757746593 578891953 836758585 950268631 984507900 982023602 996155684 589517285 847689380 228356506 943040832 734363960 930178830 726587291 855791361 430974553 761590998 254784929 618221411 202689519 559464152 376306501 974351952 910004383 976131534 834979101 840563226 468229235 596843564 957532340 978900832 181620157 286033054 827621839 833440187 481480484 601607130 112962281 801824878 741086792 979583128 956184062 988776295 157826563 746875526 676466244 932911543 171534254 627360259 532857261 800092452 247084838 670567410 617611500 729163395 926000379 956304383 45010554 389821691 555524695 722529602 738312330 839817660 434775114 562007747 580227502 942645615 350834712 380681357 625326176 747639248 189856549 191535552 537694979 759350951 50321337 135455475 719945784 858892850 269535123 564477697 92039094 198311396 109077909 823376550 326677315 678873220 207330849 926573914 416896384 768570296 791707434 926267513 617057127 946887385 999793800 999865535 694654877 748336156 159437389 802142366 813874581 881965094 589017340 652565952 464449222 704576006 101597582 382112439 408492650 609416038 853127899 972631990 777334560 866157509 8748970 87894034 558271692 788000963 649706289 728742318 347809788 731380458 127136658 138763531 792133841 994733615 679085165 889920871 519218449 884108021 920120897 937657688 913122741 971833019 523281719 926985211 239587193 926598551 126647687 476555979 913897092 916593549 20752882 650923991 930738208 965829395 141821717 313995447 601801172 867049260 232809182 784466244 274898351 768544065 392903525 523157879 413540209 463622979 263325270 656058473 335380856 663303261 393432517 551902478 746646031 937181805 417234519 791650900 474803339 849116200 918419874 945889185 764129170 901031319 9705939 48354274 187153597 944921919 236765430 364984573 903526445 971283041 30958892 885066319 971763687 997299490 618307125 630166417 906002887 941488262 455604012 671064210 649166673 691068526 822877379 952887905 682077191 942018041 514898055 816312511 859024549 968115197 339153572 789508928 56249596 877470483 983936346 984995713 304679284 496408215 724900756 766252494 250742448 790671580 357986431 618361430 551549121 999305113 39391060 132667285 258795652 750800331 354100167 973595037 748039927 907710583 884317775 991144573 222975324 887601552 930031892 977552210 487013754 550116981 492643342 855003245 450014640 994457956 783266351 894405939 800661632 864644056 440373994 490691503 218964502 395799268 467865705 487833711 794700672 919199946 805775216 923821828 601982133 795759776 692181121 694829087 376598340 388157935 904064581 932809361 375308137 637124092 458904386 779423427 356002484 506247634 9000971 149523769 516478945 793533892 349979469 684358243 476939080 953871752 502227148 576020410 989066065 994315790 409405154 923458560 386080653 923668009 739931549 834913042 38050383 779443717 236494486 857520340 208461938 281983164 241169221 416995389 497593155 647251901 413550162 985689646 126698513 930411119 234324948 549330056 373747944 972593705 989562499 990108511 912435322 985385639 882777256 933028668 548322662 812176763 628732144 671292072 703650220 813185300 777541821 782544158 352016271 764366555 411933475 491017164 89139352 478639183 481317639 774016558 283556650 909643806 611875688 859728426 430238000 753545143 764888803 929145963 522692502 627447497 981179753 981869542 527158238 618445597 446192899 470977698 375573450 452644053 557831387 702716261 958732659 982179898 266699021 656920938 353835396 713706261 641563130 833305543 250853664 900214899 784794019 922831177 98485513 681408215 525882630 968787337 600729394 991177426 517469069 973275320 87009070 556198328 143825899 779270840 155677587 836038013 922493631 924410851 912441268 943004376 895985772 907119657 179105806 528415731 156539734 284764766 371388164 695569516 843046302 979491834 593679384 747500072 134251754 876261818 52389123 533649122 250401959 911567171 689714701 772619081 196060505 959783333 668337753 847862341 475669059 981974871 811604447 848150121 625667050 932634960 118960129 368050220 619201104 631288836 308307222 909970213 422202957 514972117 288452409 404895022 825419499 999787823 108606008 657839706 363937178 828552651 591206355 678366149 647868091 853256902 616643940 819249637 935304531 949897511 925620163 928366762 211178956 602012728 356910013 753599861 292631374 448771733 350779791 828144973 742245267 913627227 349089547 594714165 710778621 785659954 817724289 846943003 473140814 979412524 846698163 944059113 550317897 826073944 280820109 625408041 499991820 911501879 988999774 989141641 264064974 277834303 67774302 133047868 416324778 730626609 609125598 772402726 345685142 620346601 511947330 939132117 64052930 502530795 542931996 879626575 893014561 904343067 782541412 869403081 981967601 994524428 589104007 806910964 194225703 227630442 481714800 839555756 96332656 741483211 292211061 371989110 182909045 860136779 68705155 974101924 307044586 513052982 739402740 913457208 129329548 623449802 783686532 857563731 675513435 719167180 919718845 996628248 922241605 961201526 408804390 865832193 833533883 905858349 236654070 563825881 204427334 980098242 910348115 963457220 475122013 894307184 872623068 984169940 313811568 565537641 729547939 910982720 279392158 658760932 80944737 507741073 438516107 658382853 147870681 155631892 189016580 992327782 824603550 886827892 968589097 999613705 222169743 655829411 523786108 759446665 557192655 791360834 10302873 363537990 413222070 926978040 524715281 748008880 727408946 993533387 348286709 948905116 459415589 994315675 655513654 713290836 798340389 893053933 480949142 578642332 294971108 432991127 245626796 796619020 805975020 949032993 687534729 785357712 746712573 773529242 741476852 865239828 350527357 467197286 823787837 827863606 872331743 962730774 592741638 863376178 485392605 899333259 148417201 291620933 396253633 497275630 641282002 778865073 934321877 978013965 591443989 654596051 878219915 894493556 328422734 439592652 291677610 647503072 140192852 296188811 912152589 968768743 106861568 226187746 232306953 625747349 575858798 604405157 573455912 618825215 21739601 82188450 356898457 987068430 668132542 870627829 869136448 972169617 158030568 458672604 368658631 807107057 637582466 907487656 940366286 955026089 366398373 453116950 121428826 162932304 356152853 508067341 267013193 757686916 246758753 839884726 739819617 907342306 900408918 946095028 35964656 150599586 952027298 954644725 392866543 782802786 891225239 932974977 416120653 726190866 159516861 177053173 750597393 975843804 385005330 451124979 445570581 508251334 739124086 791616521 169198746 305290754 877191661 912803536 28053204 525789849 85078104 592551531 913240404 958825125 255001941 309456618 162480699 458682728 660177756 829729636 634381873 962835731 86858229 751594405 771100150 860216224 526805225 777351007 296643901 434287615 456225121 473530420 264737979 677166463 543139972 992740992 739351601 965913535 975681817 998436191 428564450 724947599 981124024 990298777 776784282 914103358 273176351 920122066 763899703 802074813 112245599 784223613 195742199 411551643 604318980 674289231 766872270 986623176 704061997 891024291 907307184 931588583 141773313 626404654 598269137 870201123 558937554 710693244 15195049 81074809 434334938 449379144 657573256 788750850 298851314 589978244 421581288 861225495 428685511 954171526 138394223 340533597 810585516 963510700 405324219 690535430 527369897 917393001 826397882 871351102 63113592 522490537 381666179 901833112 558812773 710300589 705227698 821609525 180254206 292122494 344252252 642629543 249649882 689051412 898926694 953794517 755083628 894970713 321788130 923741532 389263021 521535498 521115305 545731365 426283022 580755923 484019868 753572683 410170718 989592755 47551294 658664954 297326624 842087534 704765144 752790202 228280695 900763229 577227045 620058077 152893266 786774832 645592945 647907961 406175750 485861009 31643539 840871491 360140952 763671317 349590418 775728582 127309976 449116060 328197218 948211450 833381887 966503951 944568586 957224996 417215938 973215110 456965222 509334305 325163159 664026439 302325786 842561424 155939106 742786429 140798443 385941429 695292378 860849000 432015199 505295030 512637252 877125949 661125459 982595869 128498590 686971253 581009353 612342056 279137023 434254552 64130092 650758018 320720894 341586881 486653826 716064908 864277721 954933777 926753661 972297848 52211597 888669174 125673393 411920381 926354036 991654916 785155260 996296967 174918330 496093315 77804249 403131992 550225922 984224226 104535159 275486675 369822247 780272934 733583390 870972808 828527431 863018669 108819359 423866921 404813050 451052491 960107857 992666484 700737770 874142459 587958460 763504852 116816935 656902217 597489220 782552050 351495624 999017171 849225629 981175653 386565917 878115260 582607591 710354668 954346784 979271365 726228811 943943421 484597308 633960260 472716359 684617553 514185816 806915987 835875643 975990120 565411361 584916412 650225846 758188115 846323829 945467800 42204064 808721143 330157174 572794032 630428168 817641643 467401118 984509028 153640224 474270727 344972979 777434089 542263970 864582316 796596457 843079378 126832264 285975968 752056374 973456387 54307642 337848323 909087187 989013063 236386358 643927764 961348321 973953304 334152980 369766574 731846351 737658484 759217737 971433763 553548004 820700089 865127392 921034363 177373351 965782565 201032791 933163526 579151656 584406308 428393454 753054639 583727978 842594856 873849765 944114956 635920866 958134756 893607883 930138001 977023970 988475990 669306461 742472082 589684497 826967216 766737665 822241447 27235023 132250750 97592148 715422364 332082013 807023043 132687559 146799385 750658034 763843815 702202952 825996570 12787330 754570521 492963238 630593713 776971823 811413926 454995228 843754752 981860731 989986679 484115851 841102219 498286083 562426446 254082743 744484284 294346440 590927463 876810629 962819882 414241389 587916049 407890254 723814637 485294139 737098644 504649124 649300568 631386797 658555724 647136807 860588604 764613444 820968665 855264925 946086603 625675744 757596312 27760719 137499831 371068010 571411024 500866797 737341605 619765975 951559194 83190199 802070254 980526252 998543253 223546406 527337642 634488561 723139129 304603856 397725822 847293807 921078427 265674308 306686384 608097670 941638307 714285726 716102263 517765890 542781968 775053974 878159412 804884365 999445002 201939331 660028679 725860180 962936349 204279585 220199166 144174937 461760686 835965813 875737005 424238234 668305967 684971217 892560923 279588206 335567069 774257888 805017649 5556159 106414659 745365740 762950202 269021515 722173464 203074843 729781516 498706833 568143635 516012595 757691628 427334144 952594018 679447772 860657936 53551256 254492035 5029426 480029049 356779001 961718278 763503917 833863465 619333945 849819778 286434914 814964436 981297380 983493115 968214722 988986505 127128316 736740608 680626696 760061409 247652897 979897358 828802077 978834224 595307025 690924712 379699276 817949599 889215134 984022516 178354026 278221170 296756630 950690746 923015077 997491102 280166811 448574465 709601216 823582056 396936673 585580855 792618941 961438399 817236367 901114088 822210245 858163289 187243885 365253664 993946090 996571874 190655373 980249419 509453804 889477145 171855338 331732751 884352352 970658561 926804961 935328420 694413054 840005738 911283082 919001915 676252230 967231063 418991054 727951775 529006195 759144280 848402825 963693719 103578081 355371822 263591116 543956880 863907816 901110933 474887546 760064288 660669685 961754292 702147445 767895048 760306483 857599790 878299004 920954948 510675853 651184702 665558890 892572506 13643570 27113742 149138935 397919886 80829244 652869274 973653465 974011526 71385097 344003243 277946961 800611095 623152958 820854897 970558076 977076935 478374718 890346795 6941219 432513971 405765521 462689326 990865841 994182592 721592568 800629017 425569963 745421234 943035270 943262461 21422200 986597368 78763265 971665349 309132848 611545839 472475556 480585146 518186351 652902857 900941057 942754162 147310283 274786018 164566297 840055721 822364774 943305637 474570962 543304460 119481197 608972088 993443814 997095618 186330127 555712600 710198958 718254018 451573968 807158901 366735156 911181423 941389851 973129362 920413320 956584019 81624956 178352723 651545397 883913101 909778730 927136366 67619627 292330987 914639367 922839994 534622711 906046474 525862556 919694141 344550750 372093914 395526709 873166498 213531130 223552226 81284118 967561623 757335829 851598220 709426548 901116431 301895366 778288290 995139955 996944006 566544387 729281877 835168961 882788236 607901573 833000495 999772171 999975116 22357087 349238385 644670848 712124313 727923366 962633831 876919595 930176990 423673344 755704231 764349877 898864857 496906071 564708068 175278575 392711603 793545728 793621381 414498873 516255321 484112390 536247449 693206127 719797871 816132932 939852627 194824190 660539204 241502529 902819041 394172851 921083825 70502604 162399194 22914879 611276975 724620862 832585609 154056835 662508415 649022937 768782621 880406109 996805919 27867710 151147428 260758745 549959989 19761703 875839036 360100838 990022008 329241307 735398942 89134865 419986417 445971289 863102352 852114373 953911360 371871905 749766815 937121168 998365813 689785990 991384753 768616596 933756746 180150604 532588586 214071860 662889664 495121972 687463656 530634580 812673513 843874179 974029180 197178306 676374594 43689564 216948665 65962233 899729393 863454304 930541125 738906806 956056511 591773407 916003671 452237512 506243179 184873540 262432139 496937552 810820221 606765244 796131776 983768526 999942526 714288049 917193665 946936382 968247930 180233679 394486040 653739527 969182263 232985575 418769956 711288658 839940066 930301796 977272626 57107785 696204345 334092515 787302556 988603812 996198585 887416864 903287452 290698813 978344860 14642304 410346162 52333942 268846039 741340539 988558786 719317205 933056406 438450457 456215438 590532191 656535448 651722694 763328191 453537145 795692981 830137398 917064817 283747942 671482000 749473109 886629282 163550410 599973292 278015044 635951762 117867016 881831610 273433533 369655911 717541222 777531534 614675895 622887232 102987251 475302960 319048179 699294840 389565430 716126323 707773490 785576317 965417534 974415548 779134577 939993966 732657156 972548300 357714575 841705374 895874870 938705630 687490493 819818761 104196014 991086729 581681973 793036360 38019319 770702880 773900579 995870260 313234837 423638879 214614938 644912478 761281018 770658360 612527096 617821619 265157470 443145583 392139957 412312545 246210586 685597977 771378845 809747464 143795340 462308435 890904772 987217426 675448439 784280870 419314294 786543655 365551990 860824924 401706146 574733443 516868638 991097577 755171089 923591326 599121535 869692949 268301985 570616022 935534724 996267862 370782114 515526156 674226616 676489627 628642564 635148735 275392378 798665280 888230492 964319917 356969266 522686816 930355460 987345682 168357702 192198308 471257707 930688454 387641236 458261322 46677618 355332999 817220522 864737344 595996786 779449335 51653390 423117012 326691970 788508597 622627481 909072116 634680312 668658794 260200934 674928553 375324890 561492675 713358848 782063483 579699201 799213769 47604650 912382624 125939118 316357980 482931220 940244218 389617879 516715591 170526569 316082274 79871733 544716228 589977068 632801984 694897657 992142689 261611837 414542739 249522808 622928177 409364167 432962047 895997060 938382286 490118658 836383796 718826858 905763402 834650654 843916450 894586078 976613594 767335525 965165388 544868874 815809861 943112119 975390606 906441901 981162291 699496113 786535178 155293906 436034373 159501148 469430740 784860686 833558704 451400368 526872529 251232151 816902038 659938725 952846511 381272705 412816478 667952401 930697264 523285323 832883025 251145317 401069779 946163396 986454218 192117070 862759274 178467336 842425351 179555341 518224107 169160198 931913403 39412195 649985008 383372822 604038397 85946731 299277773 854594855 920643867 265946186 847633419 995948990 996371143 860881842 921943161 101335904 976506141 84979319 712955960 990018814 992259326 824063858 889301581 720362483 994779251 327083626 679855707 4856678 663933333 878424229 890008739 615161026 826859774 307510726 926801821 579266200 994282462 702674583 881784366 750098516 785666656 930632401 949909148 708855306 899309654 574312315 656659499 975517648 984799150 161047906 899653271 257088901 369332955 55830785 886091660 57907752 920878907 103028268 554655031 168338920 471987227 610310953 617437639 640889325 736203667 745891591 800354448 431708880 802851484 184880210 213096273 203723186 402736192 692266640 939476909 531151494 836896385 490953438 896045814 202531918 338743833 158749141 790299216 451477049 655564216 638848504 936706693 522079257 592636441 492162310 684265152 168009398 723483089 969155562 988275235 459498333 666737732 820047106 961108008 483447136 976711992 633448841 886941179 336439298 769660393 503768937 525011863 905485585 976588258 80896039 760713829 939124267 944085800 34093515 383311633 745809035 826212856 722779746 756715310 206551124 674808155 270330367 272025747 164364821 540925534 549182068 696781222 163663470 704683385 673874929 865898679 40586265 893900024 396666719 715981052 792260307 795062382 99060798 695303230 500528514 621689209 585226677 761474876 40613876 315284710 110176373 629683305 694459416 700562193 879198450 952628511 141549749 347427448 914076099 983981039 491971954 650014450 421015446 974182985 728577041 888469034 961172965 965390257 396957166 526720161 424942084 634017504 132165904 374655080 262449830 922207375 74135171 75638468 217060718 803368131 755333139 947150892 227118468 475592217 798445027 801667205 574433829 820979661 503264941 908380354 19189486 81050156 639593891 830920496 370183367 483799764 500570499 737923346 781221392 818541232 196995707 917477583 127931105 244435164 839779648 864076335 36853948 943156863 578390744 690626767 282256924 411677475 610752969 957975694 846830626 964270508 511963622 787406346 155126478 257020306 470812905 848993891 913397506 919394705 537456943 868130576 149990876 569352393 9049971 644737554 950073643 995789237 443437041 931819246 233170810 307604695 595507939 636581166 313256856 348733478 589844376 949223794 841309229 954717222 613034325 783609247 682239124 765489975 530975181 946745051 559771680 953392377 896206192 971134122 667079290 872886723 751358073 938459474 77156430 463001927 899229290 980618282 912983850 986815617 202949399 894959085 956098443 996582149 406307519 631261004 220357974 614856723 897563072 955515092 628188995 999986488 99875580 333532394 485563193 752877810 767452607 904887575 62146604 107311299 234273282 297574974 305673057 778439966 999725982 999756309 803973720 993017852 190671779 433977629 498727408 508943731 19742801 572955937 746046225 883001116 206004413 631133561 682268196 726444414 510776165 768232334 633840870 731644631 124392082 468312764 862065585 985744276 778405291 970240172 91637973 108584175 751084371 974544961 41453443 762133017 150934525 196551830 640921716 879638764 616076590 837751121 294272491 898879562 445389214 496360570 975646630 990556742 827602238 895239245 265575024 540697792 83286591 988592204 299945486 547982571 1880187 436170772 961395921 987375364 828159123 851806208 492414887 529904977 91302677 155556131 873753983 978642178 527152656 540173753 204833320 526075941 176959587 382483643 530051700 564385671 250946837 610924109 195917045 804710550 604982747 871524839 500934625 516094575 72376835 755601700 432794074 758291865 248803405 450571581 403238015 561707115 976755206 978376126 806706266 831434220 217755747 243232069 269083575 586131962 253671112 851166583 114352441 802524500 632887480 929819072 14491602 101982811 220007856 232240664 755404270 870147743 564347527 699681066 154121932 591627222 277638783 586435586 876982179 888009922 592990870 883184794 460130303 607827482 550613837 789387137 266631074 749348771 964410386 968313925 50133447 950144608 281017062 906493216 500552438 539779540 492947746 968426520 468175424 887647917 508232044 593001058 329457596 911109057 249080777 424210231 288885045 669430522 176892999 898631056 573009120 981352040 112637173 858574924 129902098 616938078 624633137 656711980 34580203 378341420 101996474 158621551 559625200 800793271 882305525 980790928 663460774 966985127 788197588 991130595 860436200 904739630 248460158 977512594 700435237 974378449 897403974 909304399 894149921 972909781 290456828 730508739 88319390 506305481 870785939 993403220 16939989 781726528 555698303 905340298 717645496 722127480 245895477 759313828 6744848 426053472 336429328 472895496 16558202 290747672 9969446 692755202 364934693 946165805 156581494 890863023 229910141 360052047 596161547 742257160 478232163 685041532 255106874 527952659 59501464 303957018 601090458 934199105 909518138 925072825 219827621 947376328 884422934 948723736 47673811 395013739 443310360 556362670 949629949 972829028 524643560 856419446 667769400 692788456 333506251 590702770 64352040 732864943 557415254 858533311 307618493 927230911 780938640 878400708 152575821 923439893 385399738 633689004 988853755 997753559 315642655 448949257 980567043 985566610 502711172 559429021 277695293 893716243 958107481 963455643 585832241 995181241 860427041 947966730 377465310 421875964 799939589 829156783 571944426 856877792 170486161 469811184 571519243 767226936 677780111 871775809 16932431 614562065 183612832 979481648 489137288 914808310 233815749 532549017 668742526 989073404 430004190 598909625 107732028 154811618 264548447 489576761 521990732 984120637 509583875 661542560 672939010 972539779 457947259 699248487 857686840 961990708 982604711 989076910 68051344 251662090 526974029 528071065 127715521 718435423 503886505 664314037 780899757 896205732 846943094 994135561 735062010 735443131 500925788 520556902 324837035 732285744 390393785 669750670 509616083 579412409 603890232 641527012 824033254 903000223 925829478 977291287 508688806 846466343 35030518 44889949 343951998 722358199 797151064 839452960 404517169 694450121 95822144 554433237 846984996 963120885 102988356 444015836 539546890 677056074 378616760 522731240 217031760 970005723 182787837 836078179 8782296 491084933 783535406 822603970 13387862 104402530 302450216 504795233 460961001 827365646 885279942 931906094 572581233 904554019 271544032 753108260 654356097 871826909 553766888 925414913 840366375 854904862 580118126 641603637 264360818 574637878 63683624 782131955 371754597 720283882 901679476 984994208 817733211 893693482 199896859 368623795 178002945 768965725 930650758 954144272 638679724 768346133 671862491 778183006 156545716 288885601 645446464 931879798 217714458 505297030 799676310 823297880 533593235 969576340 785293529 950377585 6579920 236532130 813470427 860288926 567745399 928768944 259146783 854184564 670562540 855214281 652166463 978474354 752012921 763492996 102279085 345067579 504315342 609957379 733386462 794334548 257344255 660223942 218649236 296393930 419249981 478937809 798449470 821195286 637053567 853742094 932601399 979869795 979846668 989983180 878278764 918637127 576668132 788017537 841943668 847151386 262210950 602524199 173717749 275054153 189262742 586600328 894239516 917278155 61573166 748673200 330340506 746763388 435131727 786386827 944637226 951807179 754617701 859570045 414987305 757416234 213050025 787154750 125089371 372894488 816931792 850905598 676704432 990083535 654068270 877675203 699029138 876078359 496027105 648418864 671384445 787599085 150262154 399067989 887536799 927276857 145638493 769283854 66781320 469038549 807696089 867651589 564880963 611212172 471083091 535860966 847856182 973467954 589662286 856041875 106552257 505463522 958834372 969379913 517369719 524815149 378000512 753094289 946150398 959162186 339902571 612641688 909735957 951620468 773527679 928172758 728696365 951136285 552819498 691933908 104011323 247554910 249327303 835315176 439922309 978805090 765492704 990943702 745134735 959103453 534720621 842424176 868060556 941518206 711444744 720897862 139124098 942366317 41145188 358660681 851519841 958064835 173179111 380401301 986311892 990312491 430415590 460014521 169733998 577939955 524714168 717288508 73813031 380045688 424829731 712761995 256724756 364517139 811462378 993123988 790886091 884055738 717985314 787126083 745852087 892612045 835667047 865562928 255786832 378413389 289051323 828255381 945770794 991712043 716579711 951881481 77903584 685604064 871733289 979345136 549339287 863854814 540078004 873436484 898406243 926133339 252702388 309494838 565004478 997348120 620871046 869473084 271822648 809592018 740301745 905329811 738287489 810469200 562865259 968089322 321503876 719605815 741419226 934610049 307558623 419441379 502541927 801515082 88898538 633591393 551113701 839022942 995670743 997724345 281289492 384839381 827052802 849560981 32731779 615885186 312366767 450050098 749683886 975777883 731015077 976692416 298910265 773814613 868331679 887216189 749759434 932496999 334038287 719501980 167651656 500703631 457183061 642105874 255936014 779425015 391130662 417678221 273645314 627413752 185249333 459791404 623929596 951224612 701707778 722331886 567501268 622117260 354494630 493333808 762481068 997364127 193517796 729459492 750368391 791813034 21958315 814562877 776249454 925991722 27575257 631905722 129704537 837810457 572602057 702923271 566953105 577565042 305604391 417750147 102687109 618083173 623056692 862007620 575709548 725858298 843775012 933948389 117083044 125516158 895791012 976199363 888061279 927675631 21571422 752867586 79239388 304683846 937175751 941919396 944142839 945110848 750659491 873579526 822448122 989929560 849363834 962467797 106705004 944701758 581804700 776941766 910982775 943541662 470275724 494046421 131536165 649056849 722535718 831068074 927081561 965679727 956321828 967703733 940601909 958704676 55547057 252274884 244104758 689650621 817874034 956540237 277451460 457123900 828575587 873875585 509220518 955857194 815404273 869437568 629346692 731917166 444138261 873275844 104715071 499867772 171318597 634473542 637844206 840548050 253601224 714838552 899217467 938939029 131572561 896990611 459927162 886252653 915740606 922882383 948113572 950879112 203174273 614957314 559221689 912255924 708298030 764938220 194682797 403676504 641919946 841256194 709946824 831456483 241339454 862233673 211964775 790772985 782292843 913307521 73330185 108523604 311689533 983650482 3065339 135672771 194293910 521847299 392220810 816365757 243237819 671991291 403749878 937235390 519015307 868977822 805019899 972391704 604870241 792419744 442237418 920964731 331225055 995416371 114349835 208775904 878689602 984351088 3265722 167098605 638598901 822559978 497867530 823488017 464091869 720731886 128717698 863180123 870249182 968610914 453125453 684955473 75126008 596077594 916436369 977036268 966192707 975917348 347907498 552243860 899159416 967201645 582848066 704137042 790166255 884478589 36274186 654269561 177669952 964745680 180398436 709720219 252536154 671713787 584123784 963374719 74937893 569440053 7524104 441955171 844668769 878540371 308751271 372609217 660082164 795262246 383054718 456464310 139825597 721523983 235254915 984643518 635505361 692771874 839629975 997893294 226120014 908066985 868505841 959957728 904954059 922645007 749299266 917566490 703404030 999092766 531237853 584711879 967893496 979812969 593865140 952631705 514432286 778115455 56948397 358386598 799440747 828114166 49957990 57561482 17496664 832345725 384344777 725530613 569758956 918002307 823340157 967117519 953974809 975049844 441972388 660402264 339282122 708528473 852707218 932818760 401584782 566558945 180441280 416714278 311027172 454310119 713487352 760976621 274954610 574929125 957756541 968630084 542411401 763884089 57563376 793158258 702623088 952344327 174770656 244012287 813857281 936406943 725408719 756311576 184438737 739187436 852572406 872333574 418430201 713659401 640729051 787947456 990813906 993587049 540659337 774276622 10203126 296530159 493059040 996040585 652032211 981863645 829608648 935909331 342465982 912602795 72476483 651290000 483340791 627518227 632792734 926637131 810796171 925327892 244513711 982928546 783029071 949200122 824852487 967117130 606479881 871414209 747090680 879182969 274740593 968832751 864307532 950564903 932556651 967050532 230957957 720249234 804648613 831222452 353032603 402134254 877582252 877765511 300892083 411759707 477853388 769252273 16367673 302619165 65100500 653151803 881883101 899333104 836444389 972079362 589481008 806860548 716095888 864307512 796290018 821965583 424603596 451683315 494315529 612714099 792053100 901835178 704050152 820593272 824848089 907461561 495432212 651731956 998873057 999010105 599498910 728880092 988192744 997393324 438161422 641008007 190086574 681623656 61421154 145280776 457419218 720645272 37640994 555135090 67853566 261399842 364609757 382354924 398084555 490225996 124400138 578565202 26429395 986781350 914463777 947436052 327030217 732832273 706236043 891117045 858690360 926896934 506603535 629413059 548517574 934544357 195954224 287559160 987387197 995733071 528033485 864558168 747356808 999109808 296129223 518684315 580669893 678081684 602399725 747995576 258627151 649427927 963314546 987002271 225876048 241036684 122786678 152683087 508538366 730130626 683347732 894182005 924696116 944270762 945825640 984137703 910111399 998950563 938672176 992435252 592527380 821200362 473151069 506777312 198224059 920800545 944993432 979407118 348961739 677935539 698701253 703644345 401454037 707202891 957896055 998870381 134446286 315161294 869170528 934229900 861320216 929359426 93014970 572838055 904925677 981296008 248192490 973715710 185539694 890435299 931156644 995595358 182528420 365722673 182101330 274224526 408523947 726111018 754297247 894368859 101842290 633072027 508935348 740094438 594925315 723800439 148327130 681198171 657976786 683753161 748555502 929553597 491198730 693004442 313088313 710387508 917474125 955054361 599564449 698025757 101747175 452748305 873912217 874307246 855259656 875310316 163132296 641561571 900953339 992933283 232684298 841184295 280476022 431218412 991270511 993238009 294007917 575159642 328193516 617718813 169429562 399877979 991431357 993938733 758352301 959987068 931505646 992265956 640678735 671157424 539664714 889380304 629630808 658309203 163152573 442626895 498117367 650387079 410648509 761316431 572370127 592206432 576266663 832702131 940330777 979643977 142149187 892334958 54608753 567708852 384906830 735707199 531321290 975501693 930657141 966312798 819878464 872619677 358329965 399568920 775703337 868153777 956933198 969483191 876811058 902229151 557293382 618560736 951207523 953154670 661703648 814031937 894776713 919507467 986527975 998024382 639830139 936072166 932088337 979263183 355770102 617258154 951724242 966155552 367388455 675615969 909497999 913670322 164579794 353356665 727333005 834389327 479841717 768070874 649911144 969669545 195895177 402857151 458880993 623975364 727901588 947598636 37269112 178946027 314780856 836043373 118067348 837240138 593421322 638483767 724275164 748791200 945598450 993990556 33028076 685890689 907029458 952965744 36408858 234891597 214947182 877034037 377378620 499387574 517520936 815154757 558662001 616247017 786392171 935178092 518805592 964071929 845100709 920633763 474192360 728390795 606184964 858087501 952580647 985934033 606950164 986754659 552310675 872485130 402878404 461154603 250874046 832587579 63269317 614609223 626113459 830005062 295403586 750498217 814471747 885893612 939050356 996422625 143477954 913198655 673407990 820868035 203055144 853799304 401902242 946464253 53098225 379928679 455188512 830126252 89359796 567752072 439990304 485957453 690301595 940767277 423325998 445941154 371692449 997625731 633904016 730058389 824196273 863302984 698672677 738230681 165609938 668782881 984819616 987666812 549563524 697342374 553903880 687647886 949666345 995134454 776065781 937758260 841630739 993048594 768136774 855659776 526644314 751455630 156374841 853190897 698135130 773330651 74208621 243916872 356611815 827674260 265131387 968129906 755825373 812393754 959053144 985024398 848775692 982350060 979971381 994162348 993313880 997731903 494013351 897393827 952712368 976620118 761057309 972430314 942199510 975993455 123980951 993269614 65293442 369109515 966649303 976002674 534226732 618215779 661850472 945758324 792376295 949289750 32410500 188184209 684766062 757285003 461549997 830862963 89200713 208860023 320480154 742882932 32373929 650478417 652376681 899922822 425697656 547423685 731364637 963949897 196984074 920288719 320917368 420503982 832358346 869618058 546703853 869833874 319556694 479446180 103069149 167393912 422204400 812497730 697838094 919618427 984271954 990608798 658718541 830152551 37028112 271833919 624714890 830929068 464944206 602308623 605055998 973947074 318695327 872747788 618101039 715394471 333043285 799373770 529651995 963807668 308424863 598036861 125024474 801113468 136439223 806765377 356092021 378394326 845467517 963170412 596049735 881497409 192322474 392505193 463696129 950223154 795970386 961529041 642062091 670452383 227702880 629688383 677828757 694606819 977187556 990181871 784046789 969356681 699059566 942769183 84769870 591531725 502978882 875940946 698723225 964639580 824469635 858581268 63248016 214587444 199504662 613798192 995393516 999266058 436478483 687814559 353213048 892912899 765411055 777985903 334896458 592230884 109521925 281494759 900755249 959238165 857220712 945335711 242835575 934436748 463973184 710575287 430603296 563135834 759521798 763873903 82900204 464718294 917802317 924738738 594740430 866732716 234585879 237733588 876187738 893819655 95588210 770517257 534868186 645381506 189903170 489792974 457036720 770706217 249693586 316287597 439948170 905605073 259199419 371096373 778863898 869752334 550721100 551983693 398179986 405791353 970083147 990952926 592889871 795647304 574229014 877134301 537359523 783169320 783834786 928802192 513670069 881147334 235733811 607621751 879123291 891978746 854465370 983015158 639593209 965629009 262339063 913748932 125386266 249842388 177122472 240028342 126411069 759703770 748706825 770974050 856155694 971566576 618105567 830109686 799245667 844946538 271733090 958670778 968222023 969939535 727039763 772077404 116667943 701159965 835269492 906498933 8396188 988494769 554576923 692829576 691272689 844154827 911963825 939061173 255500073 581832932 766383249 923191932 323504283 697445596 145141624 294920985 946391330 973662537 445946886 897499817 638124372 875666480 827684792 927423084 839704641 863422702 126306700 354334434 689938225 780714068 447264640 593058937 833858504 919181538 625726387 632704017 463360821 816127717 931945233 935985387 126495476 447131907 804965334 871876022 166733330 460939576 926767258 932627720 822092392 950795072 829589701 896502402 717827924 878998109 851178321 931013217 22857486 979502822 691974360 856438953 274664355 767804234 87783971 740465012 303388151 946921598 889602978 889649136 372361261 511866594 614678897 737919416 405362784 426776617 872694608 906430200 572629949 589055934 603254260 687886575 258479466 647796396 577394466 978664203 897858152 918562477 79871549 613943515 498622294 611110111 846299672 953901344 589858032 849725006 158325417 306945840 370169383 516286531 795995007 976612692 339326961 898111224 866966589 983813603 75068427 721906501 367687301 413438027 682093336 770355393 247410892 311467745 732998123 897046622 254651113 660373156 607356418 732684991 322273372 399240485 587498242 768364078 599954925 843105549 353376970 358537423 653357053 878548100 891186746 999434655 300933793 733583030 117675732 185781073 529552587 988500862 183745374 218983556 696008965 906091788 441616386 800123260 168100027 407359557 85120866 252767578 159307010 264989115 537393529 833913942 190444356 704974691 659505617 742776656 600813996 627787442 675042414 919351132 310941300 790212166 114066696 121047790 524708074 842393273 719095651 867727907 514822792 859600318 787769823 793912521 5585812 707024854 7874157 477136000 667938529 908991736 764451680 970020661 167644592 300189707 717025810 788825492 896305987 999435821 626953196 946836802 322897573 999046781 246913045 396076009 249086481 474113656 718226295 828483347 480028767 488284191 633221192 692333091 331353256 839559938 266752325 521010256 422003745 989015491 323315490 374136336 108127604 466635226 717986035 904376338 266907426 450710150 500726079 539999422 245337887 964623025 196142643 711336695 633689793 739260943 993898373 998373917 762566980 851553687 706951913 964582896 748053626 781085449 170319633 723681234 850323708 919852066 997565166 999531870 133915195 995108627 813789738 978439117 933242884 981572756 193352260 575327590 183828003 596059306 198490400 973566005 460977179 693028513 7086606 475767731 413399620 997000062 522434654 791667784 188380192 888383740 903353414 911237068 272781639 551773538 825753370 902675448 274404621 320115322 117307973 391131454 518561524 526963668 586069955 631195377 827342376 888232053 552182665 553513194 49579922 74444421 789879284 834838543 744831622 758065160 708958613 911219732 96673256 599419715 717911982 904612915 579526298 807208898 949510070 987197161 767409168 818223245 207214131 786327579 419512602 502874096 575134247 672154905 520894665 679877055 195282326 829363339 887771354 930915653 610525772 771673766 302826769 924744470 453810599 685733541 409947324 649038028 477001639 532348419 10659898 341324932 975919885 986052672 323017270 515484960 947411952 961588379 898345014 919772336 961690279 974574589 211361888 762951027 801887105 808080687 763540439 813883511 725395873 740175262 895986249 978207931 770265423 880097577 120100548 989490696 548987698 595358358 663232358 764923931 435366643 760934869 755735756 772176348 842084950 923505921 730862918 947912928 38076844 693355840 350581386 669545416 239162993 659875004 514261963 981945444 96484699 204502552 171537137 327147207 328423878 761328655 427801293 801907180 996852865 999449037 196257277 276866298 120307339 948481045 207948228 885848808 130392918 320334227 371447689 591003245 457924461 955101905 90459811 543439797 260457667 803062173 743414714 794169642 368203286 700367947 366707666 535341004 987909223 997581943 591337910 643075983 264480373 729643686 892226895 895821746 310008888 764799088 646818407 922403872 140277926 972011069 612924207 781357558 296469641 367040319 704153708 761652407 467728898 991510005 465643422 829315635 416392052 897344808 721605107 756410438 605614525 787034581 943744500 963981729 442980898 916282534 121510953 907067182 156158945 625165422 444400142 992826652 801765596 959140719 79261273 101351114 91383830 565101638 320632222 941424257 417384635 970479748 959105801 972450224 956433209 985064951 971030199 977683045 573062488 798993151 86673897 775016935 14693729 261783843 334168270 505214646 717023742 740546668 34714849 569988698 456434474 596180504 600533370 790627935 806825200 873792252 932931838 953107503 113552073 768437733 66345382 829497030 47100411 919592000 27934924 139735530 810112766 821314882 583871126 938152789 757485410 957863556 995736190 999739897 804461715 878240821 407214475 454322634 267102670 497595905 216928119 558993135 107354695 708710632 618929857 947604394 748918319 844233990 979336338 997143655 800582844 951531977 244371194 685285804 553161877 829171233 872440707 921625088 725711452 967404328 43086394 391960419 517593708 707337380 628170009 933425947 547302786 569332049 115679446 292276446 770571721 891926595 267898084 357229984 743449837 894603811 609433792 943601641 607653275 927216001 616460433 700284790 550180253 813967839 586400434 925473734 55847748 480768336 762322947 821368247 936080181 948852987 253319186 951646137 169934736 354828926 580270929 799653250 430210605 625878584 197510150 735577415 932987721 970254813 619806170 767189963 158469587 274615548 534472011 973309009 657041844 713704387 71927707 834112264 506010463 725111545 213992564 412024928 432373994 505653571 266671728 824235995 431789700 946401750 551225142 593147526 294993948 689116823 6525266 830582949 408543257 650131065 567348732 676099781 882533449 939753754 388082381 725511409 812309826 857724130 968467437 971685224 46365188 105180624 33830208 728189400 571335295 677641155 920135810 968624065 281973633 996464305 599404770 769223290 462389229 495146471 900635330 933626115 634238691 679190704 650220609 878329330 280783679 546871385 472201046 993484029 985727640 998082228 741968907 931254287 399754495 624292606 908786127 965169415 164520114 291614688 713457642 859526601 953891419 980711958 68790992 390546443 480004931 947258153 76422695 720695972 257967609 842176021 811989099 836708486 882565091 903627758 490374163 496820348 319327233 734258038 216910499 383728090 225648036 613184026 940834625 994369363 480293749 952986367 458021680 637180648 107492614 877999740 165764618 519909115 281024222 831363552 304796166 998933729 588418613 816137804 159621222 742737620 445983892 924935140 659284038 748965292 238198670 578025977 920050251 988222665 639547186 929180351 228475510 265594651 755389336 823794618 130161159 226392512 490882183 907542701 292729798 952846714 474467781 568462804 723177286 790206095 179796454 263719388 767124652 856154844 917042653 938959888 568328382 956967730 418496340 795462997 291586217 886569596 69712075 174820541 165556688 756528446 251805759 611627961 837028791 950532921 321297609 651186118 511551404 916480759 760674461 962600411 653821987 898269029 587580303 680475048 333632441 970806592 746383935 856151835 102840155 402982129 231668925 907119496 383212343 660944794 471852928 528933843 209404075 298293928 655746673 911584659 294067955 915422267 589918617 965852162 583045474 766270704 907149954 940020836 631941408 644162834 507469503 709949939 61016210 652880663 989142283 991948404 112048446 816512225 142473278 763418238 172133666 386303673 415925816 689517460 854519457 966089427 16314267 526107832 586632887 900799266 637470273 785930693 61193391 953845660 263704982 413334441 653694528 928617844 262798809 310372346 982821084 987520039 859773543 959199689 810379597 916796272 20452836 894308026 874492707 891341891 164176311 507454500 751256560 966724279 297367743 380832096 33185772 335902061 787046566 881995285 519378937 805362375 760186169 792720682 939037294 985390482 609661525 612492412 256052305 795344238 416001201 968723787 372444317 703768204 86296245 726902251 301299936 493666901 292866623 448342978 270764185 749764986 653506588 759214606 542832607 923283514 922953096 981456900 849448406 849525251 963931138 983348851 553566733 863431330 174884476 872279387 812664851 816863964 893593180 897790534 806244619 929914030 916055095 952793982 491007087 752124272 452229016 860057013 410356834 581041957 30899582 135916240 913003346 933266210 805213118 939183691 487295605 759217853 57023529 195761418 78246159 519397187 604904042 777869362 11712302 367568423 390158686 515644881 908405715 952723631 948385091 990702779 392517534 475905458 372905445 396191280 214491385 934318826 492567183 968716808 147333675 717165360 492336640 547081929 659595951 896930857 480128656 639316666 846234711 855123244 957915825 967954665 390677945 518710273 914377986 963196158 185712428 848893002 809320895 940364270 171356387 537727845 891559600 990926642 208195513 507253146 616686484 685616288 145322507 636436079 972471688 977007446 667856960 728948926 678307179 827066653 436625016 988185843 457929335 719406733 962913318 998834204 568057650 734700403 345386459 780269855 483887558 927115897 938110822 941104355 541659286 561448452 790040127 979305743 102618537 373485020 653911303 783081008 375261858 712399344 964489026 978516774 622698604 691701145 561397595 642369718 596254663 727277773 790953001 925484226 152013151 492087862 463177105 668269923 771016069 924827836 217024611 664474687 423189998 789683108 618466920 637264642 760280632 840824050 548204655 989610439 795839976 844712306 345931724 576747018 127325621 415912516 493812126 497479500 883951562 893971205 675527861 817242833 111922969 853451769 735841165 776812150 5866211 255777873 797849690 986850208 745467446 768104104 302362318 745929610 381306532 431861242 835562747 922533580 543597707 833755324 680612769 808294294 629751715 934367570 773387511 917754509 515069695 981939514 324600284 452723549 432225281 461295768 897643043 900966345 800493220 812983667 762623673 816431863 136220348 398513174 586180260 926737630 552108484 723155374 704150675 710778916 366090446 814713379 165712881 699982196 176030859 875841946 59350608 626016893 879346793 961130186 408512637 705264156 950160576 969059510 899578158 916368954 881573374 936101834 628513331 809953585 862873615 936143270 935623283 999715702 390138400 801752635 312874331 753576726 886019533 910481199 903893802 943230054 867101358 934743996 490213928 922666585 611318510 864907473 67140699 795587945 70095403 981767387 959684148 991159755 485178118 964237141 999093414 999842841 172268140 896181998 962127733 966237719 419773374 826117417 437833848 538990266 919183713 935202909 917921205 963340703 505631122 781752692 296375858 663961438 776457591 781566126 725914340 878292668 356968166 439004928 98403828 294667950 466663057 876578960 650946136 925275406 486544997 627570711 622300969 956577926 575287893 641008100 67692868 135237382 933290149 942075239 720897938 856294981 751844512 853993024 156071869 829919954 584342816 703936790 253902631 953468684 113086112 934686038 118861700 498558047 118156383 717867778 638494184 773464800 401608753 464605902 274826091 589997572 981382775 984401835 161213479 581938765 853669573 970818279 714906402 923041702 804355223 822231587 909552515 939743045 24648139 813719454 368601949 717903458 602890245 786138995 511795861 723641526 741375224 879367164 479537632 722076377 862512868 901542782 929360042 972335055 324684630 480723637 181916829 212407955 14080306 548436582 296753060 825848981 651144231 839244923 987055328 990712373 677403064 937694541 512156674 553156454 820257090 853739732 278933928 678023029 571261278 712869779 163609148 770317478 724366521 770821915 681651613 882731968 767721793 778463099 501706987 527856187 805530319 998960521 719071420 952787703 295625806 964318319 917839271 974821923 781733799 853662461 11030648 536401565 461804919 961082526 544889391 839960150 495908505 512138609 7324980 258499215 754691645 968522284 311596792 603680601 125804133 452269722 986446430 996658735 829051475 989934772 629256906 828627351 357671452 876388038 815514456 884171050 789467164 925278767 66806684 515293261 549171499 956489222 695044636 834180207 627054911 774054962 699442108 726295953 496532052 539857144 315036071 514231747 671486791 896195013 5322266 954368694 857424639 864803599 31800148 339685230 375167376 614480884 309250243 994745848 301560519 371691494 945739862 992547630 850866589 960989603 157558302 662041756 347227064 898666895 584262573 902818371 749244653 783832462 644098578 854799255 541583243 902944178 60979943 357214935 336122539 346740611 124110638 391715638 198590820 410008373 792590812 997365620 905246451 926228579 953087982 998478759 803398933 876163899 514312628 732979845 220678978 519322038 403715539 578073655 661016502 685576211 633214147 847228580 879933281 942274904 209239816 721779282 465263838 585827109 414011664 857698104 810653088 998726382 908804701 958493734 837058697 949620549 52080756 200714160 258292088 580367633 850532045 893801992 453005981 745579501 787745500 891963468 224179685 760640406 835621011 974872869 83327239 544129600 102510311 689982949 232719171 311916821 52301875 289301426 695304717 758536822 505090132 901410095 166976046 649929050 340814231 738829575 877585384 949202294 631741977 632626709 570811970 577924707 2950321 813527299 625775556 740096597 78482120 524753545 619091651 808929874 267782025 999945151 767916875 861615049 756615267 868868217 992904052 998090909 120939240 153728425 328685276 916750563 978699138 981092764 55321953 231096006 695635845 739387816 468550277 630427302 145829556 884259699 799990411 935042792 661654798 956826329 703615581 768345314 182875862 325881809 798140452 838325525 855871126 879304261 209785532 860151421 782262019 936784881 862984415 935295491 816826012 828356155 944112616 955085198 292455387 300060830 292891114 311513519 458254454 910336915 71773164 567703423 775994555 895933180 407613623 890596833 373139183 819807914 105366985 416448015 460170315 506934012 483361745 523385325 690446783 846288832 965076918 991088190 571629807 896349370 730344835 802281631 534235922 664483965 769651028 807854362 749340237 833555514 166644088 253310122 621313495 636963910 958344864 960052183 10244525 189199698 626193639 913125627 941044681 999033836 907599808 961740759 77890705 643286942 591761369 617502526 549412817 745042607 56834894 369113817 708988492 840321159 69775145 427061600 960845993 983714700 588277462 924086640 949351402 964517234 463021879 604062867 878000924 988638900 227942916 254968963 915103264 949126504 210288404 262399909 889071565 953575323 259643737 680143314 233582087 546166515 357614083 383454404 174490080 744864290 963275119 984624622 53090722 185959167 938816862 974395746 927830076 993036296 739810046 973746441 603142871 973430520 665990696 928625263 953267367 990127991 494101603 626734893 163971457 929452888 744057644 943764048 904930779 966853694 243606151 765451026 994519424 996676530 457903523 645033023 83280624 492937253 315566232 946921601 815927950 980776249 883078366 897406536 747367767 894959506 38271610 585721147 132805164 712501511 625318998 848815791 67391722 884918834 786506279 839954256 784008088 862263783 430045386 447662635 390582401 928022086 23860188 201319704 416592951 443422038 616082333 623682075 148587672 569585430 489818278 517841260 495161847 949971294 939779076 965677972 922983015 929115357 503638781 616932733 633054031 914493255 83855495 801817371 158977179 400276670 697062170 792014304 885889430 962956203 165778445 696507821 839157025 906642152 595610016 930044121 482736305 812953256 572550801 780528869 656815135 932910940 830205990 868130170 402890845 667100226 44051116 245994047 49335515 583403395 704884692 986860413 305944501 646515896 57013390 731349279 257521016 955179928 728617366 749586643 907147465 986048554 186337458 645167736 696005077 770759573 812044315 944555962 41997486 492478176 873377006 884687656 605697952 771414225 202583764 492887347 150560759 448683086 543685554 641490975 386971438 746855603 919702578 965038073 453834040 909333772 818689961 972278440 400942951 922568331 179171221 795165013 471866880 528176203 587553027 680457094 930509917 960758203 598784318 689520650 256238974 924872521 804519264 898407710 523058432 721210773 375829667 984589860 903193394 940900912 590628493 886449704 490451496 588487338 690249037 913327361 139157972 339644638 35774459 869960833 406446637 747142572 257661138 708323296 708086954 973816825 125100784 204047087 339795622 671683073 575416766 623855267 835502567 915732594 429922964 983222927 79926765 771356949 454580939 491910014 798333799 884669563 216697448 918739580 653815468 828477266 154796283 510708619 312875969 446578972 293655310 320274509 447151896 965028221 905205902 971835078 33740715 526407981 902608732 922265072 621120914 699817772 679206324 967431577 204090053 296008500 763051648 912640194 10654143 520809128 118795037 237862287 107734637 779044219 737002638 795998952 708258208 942521517 178912616 344509974 490890421 699015705 627174051 855197910 398702643 606023468 463094304 671835049 878645246 974461128 365631037 831314900 21432484 600380049 442095767 487166493 480217241 921284640 98099443 677777755 971797272 973678427 748856173 927951124 186216701 775087922 929679176 975521373 65655283 813784354 544892602 877617143 783137815 941216863 685242601 725296398 748804612 865644346 591447703 644500859 881303680 926189627 719208811 911508688 952801933 986512504 798641620 940722692 367274395 454260587 790822863 886362059 41454643 547192664 504272928 763777411 787599859 935327445 793804275 822756389 847409759 885502321 66545136 109985501 784466697 913998113 434659199 992647453 284584267 286554819 597037067 686302169 805880205 870213186 426935274 774647216 422866572 970436578 499945331 546183038 877243568 974852727 934471954 977041498 471185877 680077459 799859233 981751918 890040542 959121886 698899337 953227246 837380719 892761348 557464224 884213835 987251803 988235810 470555297 714018836 925982137 952945525 449548836 682080415 903717518 915476952 294024600 693250713 540509712 697485957 879326251 993382436 523983904 649725123 964441573 969842116 989578857 995707615 99285211 891798776 349036265 684558409 525949969 984423652 170972456 186524730 74927910 445066360 825558313 839652016 552408501 595399065 544230663 940294321 396379192 721752157 676845241 869376341 46237919 218674694 145387749 337856893 629757786 832670411 82497017 451067002 757439961 918419331 831823729 871275896 775230440 929913016 464546 257226812 522863855 901625262 54255015 800219381 767407695 768775283 633754457 678837779 648203680 658534139 281582917 459037912 639249367 850762317 79754311 96763504 574831854 633033951 941316842 945309958 561379920 788482873 586369341 875077441 614969273 980911745 5745173 315196629 255578453 725631937 400263113 595435428 619604846 822943418 298044055 920928333 827218205 947850332 977573117 997797354 928052906 965210325 50110586 765833592 693611222 972632001 217268997 440447155 115784481 389288092 856658715 892422649 482381186 858715877 748543002 813022776 82207821 578318319 865122716 899055832 870820618 883412105 13721212 927121055 22020730 990453071 743066938 815725974 286999585 796670265 59417459 942868839 378701173 562245848 756512282 770068145 566712931 719613075 166839065 918455220 578932070 837141746 250727242 631369212 515252327 712563493 807966015 848832724 305938217 943845379 352424645 637586922 661200465 872332703 914254620 958633664 601075818 729048531 209741850 778354719 908042864 916217510 151412554 521990294 881150165 896984525 948791288 965683547 597547113 965066663 478496936 886553205 565116392 589139220 464924570 626047572 403998795 804582265 515041874 710652996 578841570 664040703 623679476 846237715 749233175 981015104 643386803 928834362 501104438 689746596 530283448 952799335 185037017 429325025 288448382 944121495 70224218 977594675 694014637 900203084 620993756 754682569 431896893 551074001 966361660 987988486 872106284 960176818 320162397 459496869 394615200 477354468 393576049 427646989 363709804 515213854 200799886 577298592 8709226 483965784 719793361 883228629 968820545 981740509 474049581 671376398 659802047 720320528 982628957 997503846 32722663 733498563 413959197 668264143 820051201 966704128 131150441 592456758 625947093 661308726 272625209 387201787 1431361 409471057 162584442 701100053 402609661 863821076 194305937 880408691 765174002 787505135 772772344 936099896 404794090 644051766 787037455 924416855 749455961 790616100 558722711 741783337 418197941 737185180 179082634 981616416 108284802 289997266 784487190 873325366 199093466 375889042 192680609 233546410 338148129 503543827 881752512 919663781 767264113 942865046 595184783 722882572 97994639 137049478 80970201 375783645 47530955 628358316 81139749 892670794 428868627 813727089 101728855 811584457 91096801 854283045 723245048 839560411 60490714 922185724 657136057 764482773 73331365 637327689 185242412 653223597 254107244 736302638 652343318 918252763 874572110 935702045 151130892 592371303 628138009 815603314 916953402 934617554 161876965 571473726 892620463 896588102 854333289 996123168 864786234 921785352 592096998 597783141 749830249 830205172 637592625 881222721 126519301 944340779 586044948 796127163 299085520 755179651 645765133 866206140 649430878 690145291 289800640 975018289 780949399 913410284 751091289 844030326 347508855 868437465 413045667 429157288 222830667 505439739 455406714 883662293 503291640 680583555 869613361 885309357 160537756 274324612 415290000 960190705 13113067 928040178 651388368 780547915 16940034 957595536 392532953 636037078 687381344 727223760 469575964 857652724 842644749 901728038 55500576 967404290 110365323 897515176 866779917 966320828 294761743 984913292 13306755 81565173 815861851 886987834 735420250 844655382 929652159 966655893 99346664 523860548 513373934 711944900 855856741 996758815 726150598 766553602 943814451 951253169 135187525 747397485 231984489 661557896 932450405 974874243 428510885 990425443 708909945 754784354 773743065 957017614 977139476 983306525 992258090 997570501 336268096 588859476 379226428 673548384 434348246 937076276 232635795 577411108 741862953 744797875 296577989 740447680 516072822 646308008 753871133 878364390 482468909 893680229 578898992 604742575 810839903 887586993 398580778 952370754 680434987 680489860 42429111 695743087 215230843 218574794 698803087 929490956 764191597 852490505 577834999 751380981 730045578 899396138 655149161 705591395 945605594 964498111 701868901 881901466 18069371 863864882 822840822 948757848 224805347 695130935 167725334 672752548 390112451 532067359 15793397 935909428 740796428 959274575 987658300 988351213 514747110 843753857 11514290 983994199 693111097 751979874 386404912 481191694 544866901 566103574 159767639 406052063 124477328 198210469 900356491 984635186 441106232 444084550 314703527 623935085 646643359 661324883 166428543 617890821 143308490 570093771 283873486 803752261 254413118 376573164 287064615 506178355 543344618 796577612 668535451 905832234 509151756 959736918 111404440 286838160 372841512 897043659 537665797 606061210 785122096 863614086 716147765 855723849 367318647 982708504 452881710 994622941 296002672 990376529 950340414 997183484 192858423 827291638 158490661 582336113 529328710 614741621 585556535 663647958 236300430 378730232 570988222 704960564 590689752 705845619 290953044 487705805 873171086 921797340 925144175 962614943 134564085 892804046 592813554 595192224 468137976 804880735 886734731 959373578 284151381 952048224 529863825 964003352 606789977 616293929 24129024 935241307 968099784 991908991 881261984 921220577 683258 246469899 590476883 764591829 414535842 541260282 906284455 911642637 412258113 438600980 383227460 640818772 61111933 114459071 780134503 859728208 85798660 505693624 48086688 337042544 886459876 937489077 283815412 848154872 405191229 658811835 802251061 866320211 830142510 982075089 891954259 893907105 923463470 962811760 535788518 586165360 894569651 932614749 668971786 678482416 80994932 706956037 117231442 910285167 560400801 986476667 357196515 670614989 624612731 987877315 834215324 845099577 793140966 903561106 750612215 954707252 614470118 770221313 899318687 998057444 882682633 937808293 710165327 948370244 189802083 766915322 663380545 770397906 369047243 509686039 258189628 830233487 151778763 642417151 72022107 157113192 767893797 949482113 485237264 692254267 957733046 977772997 131573321 476006780 541578886 543715052 914069502 952251611 323563068 624286390 752349134 797906522 973850186 987134063 961909179 986446951 226586886 453159971 397468242 674152318 204866700 797091280 179444634 256573281 56829557 480898068 450195443 903870471 483567490 601097226 280871802 397689696 959914137 979145280 158882182 594597598 228412912 648687100 943459512 977439690 133207052 549485203 440281400 822921050 841920653 914503143 753374010 904146600 66495445 910675806 675902680 952563996 335048140 899336027 163704518 609080187 386949267 590543796 398133812 569276287 662880519 936889295 98536259 963384195 500044445 586013844 859446241 881678872 529942220 865214167 737551579 840713735 912471940 955412060 759987601 918947175 718899315 826494250 623236370 819071285 690226300 732483813 62958862 289880419 551669761 859637987 979828445 989911678 473316772 498134002 680210717 963824413 121782802 800930230 283519412 792707421 326243353 723016311 741361535 858795158 711996387 736431995 621212130 921147485 247958617 772037484 821731150 925232325 203943950 824571217 330721293 605094323 774513910 988016720 876301086 905064874 940129561 977540767 429705261 651167268 236556974 349276433 108618601 980105080 789731987 843202814 532864852 895217012 294053985 734723848 920204598 925420013 642712705 983689334 125598285 166998261 198176441 341286175 317627402 472349973 833162796 870650754 190930687 606310399 116260368 448656076 893268371 938700761 986931114 990560591 254062806 508019987 272690125 830065680 814920136 850476512 468718970 752940393 383567800 564396653 186093689 254287555 13108473 279956006 531717088 699410327 10426503 313604747 239388598 500514158 725096090 750605607 402493510 425018495 262762260 626203762 525899597 941681059 106481060 611293922 814056400 895564753 933850075 987646885 520714784 757874989 119890257 706013949 309218021 334929577 646146729 722014860 111136951 455676943 920579047 951809792 594434986 975734659 708672246 958527970 491404078 787492267 630475605 680960058 592040796 953435180 626520489 981718348 53258109 972675197 371067315 625374445 602222300 898723345 622063283 787088040 800527406 960699891 386804470 992132202 945920995 983105459 954866315 991781243 366843422 536052063 809228448 932418250 958779880 981670717 110965682 299371932 758302969 916587986 852115958 986067652 17187473 763566330 713388384 872990736 10155756 966688615 629865894 638788791 709422106 792101449 642635820 942906572 681683635 865884703 876709664 949095327 50336876 747258161 696571274 781455267 352459323 649448974 516463777 972099897 621294176 734123295 445243170 474819527 114594549 542895689 294800033 392069008 315399458 518977283 124498384 488072240 609841281 803057356 351930519 871420400 868387189 918086764 599161583 757385460 177150924 850343681 475177828 561809616 426003540 516351298 619228561 982851433 641300925 971449243 908903529 951727864 543113077 695789174 799175447 959950454 745181261 975334897 146740670 193565649 697206000 881887013 23533154 899386566 45274376 710902631 707376130 720069946 85128672 688983361 457041417 630986655 877876223 990629101 911422350 982447702 567943006 926560284 572460111 975871100 697906054 725923847 715399189 795449077 862258760 923532713 896687702 911970807 562587898 923104254 831064781 841533919 351285348 561601116 703045356 952104131 175836821 576338297 244602333 249080574 220341715 578129345 919978210 940314596 183223742 544859572 32037226 877364679 258898766 695559087 916065181 916191660 419041109 590713450 347396027 722406729 335793856 951708796 294032049 566805033 241844382 377484960 150627601 534580632 439956404 667807525 519866891 561641741 136844992 923125516 93644551 152938581 456793828 706787950 449583126 654330760 834721982 886407451 138926344 400410918 970500369 989730577 858427201 880382239 141375078 665791068 829372591 904684141 323086313 508895431 596621277 916775689 324222007 353845052 963528213 987466147 297775898 400988542 754439370 932859540 781581675 974907363 144157799 399622954 891214703 953755137 77667656 439213472 71328902 983239247 320848234 834206661 783568657 933321073 360502334 626915806 707979630 760570242 745859317 787881182 216863773 604263207 740545942 948659480 667682873 668003576 24325948 477455955 130750339 450416286 157669708 770226732 657557307 855207609 215187621 427834579 866845263 871393311 136684092 280571782 881793427 901834022 777337958 911974719 858470000 939462485 958356857 959408268 925960836 960140943 839559309 932631098 495971370 734522624 708302239 948527563 603806391 648192960 440079465 440159949 265858350 713051765 12320260 965139051 285159673 417244083 874168241 905479655 949359981 995288898 325416204 460325105 332708611 756707048 54996276 888832709 544853239 699299878 495027475 838175520 900159543 942350318 764524871 976461013 79103551 406738340 952009840 953344758 963145664 990485609 218972587 776395390 449621758 682563910 359833245 677843577 418801379 868927545 404113068 644181118 180646302 430012935 898196018 989293774 462019218 806027304 559419143 938275292 858891106 982012203 664087193 930428756 153799477 738667483 602352800 916269488 843253513 995747578 121304146 650224750 35903423 113071635 131670281 603127073 53694825 785694802 239188403 307866139 606378414 672043809 68937267 240317703 870547932 907117722 842065633 966945829 507400036 720279512 13084107 348429619 831957420 903460183 891403575 904468092 193342044 969144789 141584608 856671538 650946859 885742087 465945650 765537766 843862839 918110013 909931119 951723307 852553447 875586845 413363974 851875346 60784616 706644281 959666244 982313620 747912558 970362439 299605110 586553552 698035829 772411323 515432780 776303072 484243173 690952553 212151204 949456679 28849575 807990376 787899752 938826565 850085270 942606950 130772606 524226961 970224663 977080248 213370912 578484287 897088466 915718853 354181225 618776228 28945650 736373858 457497445 615290326 672938715 743239131 441948046 975715276 334433647 779938750 407904781 629188666 539517984 562345015 530030064 804380697 31447661 754797739 30971945 741406022 897016139 982104683 640431819 951888215 89154008 985356986 435823908 462511408 195273529 538407432 9057265 545834597 636379518 913190227 149122790 328103480 682023557 899034730 94251442 174378912 569545537 764422907 379431433 580474620 229078394 608349315 31159454 949668890 339367090 788166984 656447012 812816408 363056106 826570377 273094713 580444199 421088173 633312143 79007419 651414261 474586470 987013460 827894044 934762866 483503764 531669939 54616478 805636305 715344383 768279069 948387455 996109865 297705554 938176788 243749955 453027816 689736700 900952896 260726631 317477564 515834919 878128345 843373182 907393171 188399022 698935248 33406911 581791075 770710186 955077897 963224095 984697888 84844678 882066077 566605948 783119935 212976763 733447391 381779053 808341912 285935104 718334801 222624595 419876186 485797009 979200097 875943756 878247476 697437288 887643997 519741489 949264628 927724904 959048954 905092808 979600892 140441801 480663682 208012783 477222031 123563307 302936768 425300891 731895115 227842075 340570034 515840156 793269930 864162457 972278600 123495180 423777008 401077323 445472439 721154597 813189322 288132260 682067773 907722611 976924154 769962621 994788877 777892822 873199523 517963855 646085580 799855520 986770343 593569732 710223188 942853209 989623121 73885956 642671675 302746256 960258843 354018999 651419472 969577746 999496315 817906276 887092373 559399143 921284742 626391403 787131285 994906841 996027641 380011930 524576261 358306145 753090062 378737762 483576883 182509624 186429305 112733090 115400958 345015818 430515998 149558032 950775028 387054387 503231290 61727272 704693810 855454496 922846355 185838308 232730268 847768646 979074377 428583984 484244880 980478020 993176290 807864478 863589051 474261800 480102432 499189475 651383274 85200637 576496214 99331340 280304095 192627836 386965875 235065284 810941316 608523978 766157399 311602977 322215400 472925899 940296229 164647679 446173145 755101761 788812378 586622751 743166394 421181208 861291755 332517914 665271989 550317147 663078677 973280137 994551854 106151560 889865986 50345401 500189791 224882810 759936423 68415828 83020824 906947627 966767640 152199304 969709757 144309719 335404056 854857491 876096302 410986893 512978443 64738642 681247100 399224908 626261877 954468254 968426536 835014687 966599534 206912761 464610865 86572098 670674886 561736101 568755968 786190490 903487974 118601777 667171059 327221996 846880158 98235385 385980192 851611520 997179766 988185818 989793777 841732632 944993595 348318597 885962590 636156493 800527711 495365315 743926525 507424475 948206108 8032016 163820814 212326570 869785303 762890615 845822932 505647004 885233437 367009564 878683965 608147109 860309302 850786343 929334094 523099490 970181321 419029107 932076304 869621602 914349551 349715954 666274500 828326522 937407389 848241075 922635443 830297819 897015029 426877964 698867715 985589654 991596548 838888517 857504032 379264865 954304800 582688508 825968763 561906131 584249577 489082676 490327992 634444464 902602519 735286485 960347988 200543894 691511751 355460095 431740044 451744948 737283286 891478338 951127127 954975908 982357019 949740744 962787956 829997353 912679352 642498428 761809643 929459275 942021846 569983957 573262858 569516534 606662896 787968397 824839439 96890388 954624354 687989808 893221644 720869792 981528356 327250684 489992249 143102270 413393528 230249094 735344184 749770932 815917722 995151507 999425102 988644287 994418976 982381407 989961567 995352589 997664094 379896430 720863818 866912532 925136376 112911762 503934213 123925743 524382161 108897684 691548211 145041782 167908604 800375345 855291804 386995167 542085158 797708564 964327603 45310757 575373462 498721986 927058139 805217020 814533777 251599234 467473495 790923966 797740719 13912122 841363590 74715601 208109314 868990375 969928795 891878134 911630367 411582134 940318920 316434796 543831995 350209310 652121539 867244351 912754269 322603858 885528707 268574542 615438051 228718699 668810648 385248050 847291558 852389049 970795790 556797079 921167904 446109279 543644036 420931069 757960783 915393968 948737410 937332730 945753312 91791625 343964857 496804147 528539204 909744618 936761236 615985065 637664292 730375267 870655819 922182133 925027516 357035465 760168172 810722100 832308285 405836241 620958736 354900511 624421329 807723456 935228937 283251081 379194637 199047879 423634447 502702923 517567963 982772980 983046727 840453824 898201286 489037501 552288014 895817215 945254936 309335761 766226757 464221837 738960633 165036352 917085333 197507330 921426852 147465571 520251021 356798273 374189208 521737769 567137470 853966515 861296416 983271998 986006396 947097404 981940169 689102332 695731943 996028323 999837325 539915618 930376856 398245291 533338861 123653324 338169528 979261475 998267008 723139479 811148777 90596154 167622328 616580111 874767326 640236469 993245745 534819352 881446951 274376064 956986263 58934559 872728096 87434391 921409703 186580524 344537920 162052456 771392538 480303362 491588904 13496454 104096323 506403940 640643356 522721441 730839983 724161462 752638350 139582711 139863194 707895177 772625863 540584484 624309785 183323278 714293336 312154589 665652199 370578973 700865901 703343530 980563925 917924313 919022131 550914565 992290707 580699406 830101409 346863787 751960035 831250876 942185837 717334856 970310696 332612810 862055583 797730374 853637957 247215748 897534853 383415504 750056013 324649622 560966599 518371301 671611941 409715583 644774265 293533425 406857759 257682492 273140576 385059602 944810587 587314500 970895067 868590712 928765700 705672607 803478068 954548612 961819069 360567646 646282674 19702277 447652317 900086181 927262371 713129810 865368646 440230992 589278340 645918436 843229355 899022264 946987344 15563925 728749295 408397397 982341445 399446257 701669852 870229151 932037079 464511296 655942800 714987188 814811864 286187480 678957349 881470587 983285003 792963490 854963572 564182828 588779412 352724741 423789398 634475953 866413808 733387522 986803181 543974615 760513396 373608803 429555765 802641760 990186591 74377777 675591592 682777022 691118000 25611246 822814217 328074632 888114474 748273356 884109429 156842282 918622865 891617513 928415706 152500062 258605299 364138143 736493225 250881566 563627307 657945077 869093186 881471043 963595845 939212629 984582022 982470699 984265838 741954445 882237112 897313521 998969217 124006540 711656120 727278381 993072900 437145822 758550060 128716226 951549791 874546022 876108960 506431511 924592368 169765567 887139132 585908848 588394992 628993501 704022874 994256662 998528109 534194874 949383792 598577841 684593333 621047808 852649106 119978236 979350389 860247053 964025660 337644670 629177978 792487230 832135656 857749905 872138179 569139170 799024725 933724758 936717133 510926774 934943036 391061289 517604042 840508267 994435518 797854421 956684393 2572173 413668618 416376740 618583203 255720301 559962112 534055123 660810712 61218497 698176653 10136458 803347462 967892991 998293115 32269679 187554276 840275331 949948668 297743588 559616853 470533734 592130746 554564638 596265539 537289413 829828523 81572796 519512652 397030668 675489579 841769094 850787291 929222334 950777310 386601467 952989179 240608567 675421491 897653134 950512045 522986621 895702830 489071440 729951360 202283114 467541516 21008244 920182274 984545111 990596550 845555989 887917728 183804079 596385921 682971149 727317181 380636456 793057216 209631742 378056384 986622273 999935218 81156297 419555932 635937204 980745610 266738405 752205478 196538311 354029329 919528062 985092555 717899775 798535163 742741761 912899154 654320192 675911510 175704342 750418737 281133471 988800077 27248186 483319453 98800518 911024771 166769969 959717960 668263735 685987708 931824069 942648346 703017718 909010531 23050965 243657735 874231606 966919100 493023123 634952968 350016011 573570620 369623755 576787578 310395312 465503882 317730509 501125531 742263716 874123719 165203957 389246614 775550639 915454796 73619447 982733291 692232893 871995439 353655149 867352114 572211334 998798370 287370879 924549771 600696705 825053200 805474730 969462796 91393335 156754014 952435688 962151275 392573266 874251029 869133196 873035711 352231762 703611743 549402916 680536536 971134553 971902567 580060552 950769360 424729258 890066589 345417280 707511513 777474639 949877077 717989978 777147035 760137455 867602461 336064573 921756519 567075635 766847991 574689587 758738285 234539541 462325045 506166515 926732411 343118705 368955302 85921236 913484507 242712832 344604655 642395045 731722371 214980677 760519443 332947979 759774068 328022733 461593716 542240658 660541654 342317040 801404199 819606747 861337092 899283979 975730311 542154020 755876993 56725083 832213808 972460591 985361587 65042175 584795317 155340311 863346804 700642195 958542747 675778165 966190376 597288672 724220726 130758169 246167378 860232724 957128651 938175623 993158889 382036187 871907269 510994777 906285210 213474713 258034723 659859151 705667795 623062395 658393325 682822480 773165824 379206620 482360532 727423391 986633694 89547503 151377613 59116722 757634534 33957002 362922574 787116057 871559592 403222923 703102047 403172833 481024085 363396709 946379146 548882605 934177093 306704746 780896940 918540770 978385380 833050028 954368866 572919257 718346495 702500761 926351441 300017318 456102208 388936891 612787318 148234462 246279975 52819246 300518571 935568417 993681978 184752389 519850631 172563355 360771944 979814602 983282220 111025936 301603651 193350 464344588 923666656 971395991 85997817 441869196 693016708 858374756 238050170 976185809 371923155 528166536 56131587 755586704 383736209 588222930 631415775 877505647 794181497 946821016 161786904 985234558 326581119 408643688 224540258 919354286 695573328 944726097 991783975 994352499 770968460 847716706 942280061 974828156 681445875 863159192 885328426 885790415 888883006 999890517 388806567 729696723 759493780 976708425 411745027 569070637 756588890 791435068 692136704 841787658 941811452 964298847 309825159 582569980 408984312 508764969 240215123 798925518 961182843 994687230 520943496 545486259 14894110 409860487 727924097 743132024 373815677 712474108 158902342 635676822 186988513 603236436 639471157 861554892 815217236 986924885 212763030 678099776 512340307 910894932 549061077 699552812 209603051 359769736 148687151 339862995 751998565 977137603 421977248 703525205 257747991 882463540 20948742 508508312 968879672 970627234 290241633 662993381 658210448 718606844 117666692 476557618 373393326 379990164 639397957 982574915 844457632 923182210 48727905 962523721 763685904 836508322 373157481 812370808 769161384 931452939 957225905 958689888 269556378 856234633 620298535 929461307 406878387 858384533 717761010 755884743 579197623 994492984 769053805 969109978 359010551 415322176 727625521 733434525 437592248 777497807 684453627 945197650 338095368 685098985 244832245 881960601 401172488 456031080 987461511 989743136 363078041 779622035 955552551 973950642 786533651 869479456 302865531 558130339 834801931 846525080 753559881 954655741 627017497 959669387 680262988 946188259 22116282 145166796 990262922 994134563 943340973 973474592 178352403 971660912 709581285 829470962 632262619 954112834 73120215 792363396 906222101 923308106 912730390 924240072 952386305 967577823 909479235 983419604 595385149 849135781 856793069 871697931 903516854 914897217 492594983 650427790 610778389 634109295 926729835 986138735 453081918 811010359 922229641 944522630 578558241 787786708 332302630 935362992 97622603 781353312 182883719 621943867 746828435 807230908 692986516 745189333 328007218 651252261 980603001 982077879 509401845 902760515 255057110 661213758 491822798 761306854 926415855 954441960 548293954 636770788 585371412 604369862 968360952 994417358 217158591 823154334 948575360 999420108 549519240 974291686 31055175 920835543 953970608 961008493 270859588 375385844 361131408 995400526 281581824 527617912 347127401 774943624 197909673 803652621 986477599 994641963 500930192 832359149 55516443 568100212 47342806 422891721 233200706 272134299 389122422 788200104 169560861 915274234 340210562 890565272 652469169 885222462 501754875 816378524 607869562 873297541 169335575 900147688 576863002 946991604 558786189 609616270 701983126 803892127 695085715 716768207 478882331 876745791 527439718 573642779 377734014 817876482 573994082 894255418 121511890 329365602 623390477 918361994 32005598 417845065 933438711 993921273 663351776 807939414 180726175 801898858 155845552 786323811 975409420 996036407 869246303 951547026 641748532 892735952 460533390 882119730 1518836 581817546 493563543 873199948 779433919 794404343 282365346 832050990 829953857 923038079 619871222 788676403 745383740 846148790 627525503 870171620 746955295 972976888 318125814 853257852 608942897 698522459 903233531 956579870 700181054 847135366 520824938 990474180 432937009 920770158 110280800 894377378 845523824 862859238 254765590 607371447 593642067 786169568 37460668 161295945 802391025 879115665 786175539 943178690 214582268 899179703 278223289 342337038 230079829 323890519 138777902 363952909 489802378 552189758 20929339 881391934 738182187 841036457 676837368 837437152 463070650 992960481 125112173 924014722 385684989 542484543 224809424 853436937 717413 379877922 36973525 724438766 584753792 961284995 543562635 938340589 57730135 979790164 350458018 736250811 455077155 515352342 502421175 706040880 552372389 697721806 10574167 391498919 180414764 978314839 117781002 621481309 866305474 953713449 778084845 875131240 611087256 683697347 526235114 698925804 597354029 851489812 616003524 871792979 535868794 777849944 269721481 969311002 485943223 607030364 861835737 998400381 755951992 809669004 871964192 936336243 157583161 759575402 182872942 452833573 386967761 473755479 74715236 158449412 302741230 821144852 761984306 881729178 842834287 974288816 559904617 664336708 926867370 926923267 849216529 868180671 191475094 626469926 849542638 957808362 775481229 928181182 210286407 499063618 279014950 707621811 358522244 592697653 936044089 981636756 108698575 766802189 744061621 875337795 14472415 447916022 746909313 782328901 526091047 672755223 275686507 789376098 664326872 878151332 535010221 748685050 262788850 339988382 171505983 208772001 52598505 484827222 631798432 655655189 716074139 942252697 265885361 793868679 956734557 957253487 924678139 958251506 932129739 952410543 647182820 824243651 555032712 632094230 999257496 999472055 520404051 769499781 572698517 833723555 495229620 768634511 348519605 874706260 620646017 793312901 851510304 946225689 777139219 862289339 266620799 631816944 708659059 783506227 429477732 646614886 558347103 854281990 224980806 602051047 296544973 383044271 911172291 944766257 825962455 992951548 93968221 185073293 614436374 974441517 155846362 359730797 654523980 758776662 208861425 866076472 471840633 613565319 18509041 715531571 835574898 966811728 574119000 658657383 424424246 921987480 98222996 669888372 453716012 754238219 177671444 588451128 944399696 989278191 645687128 650535667 934423558 995220891 997957634 998496287 248189462 744730397 28474937 793995552 435469025 895656446 21259823 397764590 82064884 163295691 547996531 836736069 808839008 813813734 650916998 925727551 51174286 895083405 282960044 376715581 909049774 961456477 207841896 761451632 514919954 950339158 977913961 996669387 658139587 896284755 543342578 596873207 865181683 897954832 411638138 582778853 814887812 928895165 205551482 545940302 379983184 763703031 91238833 787458976 445431149 537445642 79304331 139559930 876744202 902654617 239989858 830867650 282182907 809149248 680331624 798629739 431576088 984911762 913704114 943536291 132934717 719169871 861654638 994111779 269648013 923511306 557031570 962023486 896376473 945270923 867890177 988790723 953470084 984128403 129921002 314012007 357726341 764435466 47180635 936647260 422010017 553483569 94582209 224250905 510464251 704114935 470024788 811845151 379864619 767325699 275955433 418970744 339599362 926659209 20611617 606525835 749770249 951977292 64119088 891096256 24702056 60230899 45134043 541600568 142848921 406786795 4228849 737002586 690189603 822658758 853036754 965166901 330643970 714750773 477607627 958131685 793351089 993618007 773483888 845063448 15708173 684523818 610576937 898253073 220233087 277782874 334510808 350928994 194477719 614815676 571216040 577157451 564315206 996205808 698833965 977934618 873187148 889099673 881581023 944696722 737344805 973389465 226687135 635482718 67679016 346629255 449251038 558411834 113483077 679480570 565494480 599261122 667127000 790702529 919775758 920115691 876247208 922239176 213314924 248458848 304623375 404326268 691186156 838673819 959878644 974722438 749881765 789565583 487751627 680112140 968994385 984608828 697705667 991291932 667333211 693816087 634913313 925298273 567367928 638619875 323470341 670284313 544766782 952434801 923217426 925136135 726676864 981372802 100411696 176151117 187966893 816984314 843143081 899800413 422430028 427077270 816293525 986632944 552605206 687110876 585385529 973742206 377224090 405593485 9894686 819881203 662707641 761472564 693054268 887775746 449557037 927252875 137341805 557535791 458174050 600356299 988536097 990395011 711962754 848366802 699385438 826148836 138908215 204488577 833421148 895870679 771424848 969546218 285474926 357142587 32927877 735739665 675341068 777000329 559381039 987016360 575658356 664797244 900682557 991910393 592246663 601411016 870746992 973226825 692270710 859885992 273482818 516752030 705392145 740227333 945382898 985245893 772332140 899283519 599283848 736118453 236887381 564394069 752798121 798400787 546251397 793522467 472192662 748346377 964032311 990551781 295914826 932017895 947466419 969676818 589251348 698570642 23292992 500045983 365864020 920183313 352808889 445435697 346071758 835469543 154256640 490691433 881095751 983239495 978333030 984480849 861949701 977254005 362524585 591756605 371425146 885212638 110720422 884201981 179092330 454130438 783210816 870404963 39522517 677439605 383775496 603278818 9760172 149630933 585939272 906345176 36959326 942187181 883024719 890186420 728881933 896654802 583537209 768483982 769821554 897772680 63645272 290081493 979746328 985200308 273415488 330480418 958811028 964355389 713002307 924811439 840092365 954786538 642615036 722381856 900134692 907204039 714816314 744027626 196960451 505033042 256527136 451136201 905395670 906458633 334414185 743121407 219671888 519345442 769972547 995524012 205244169 584911891 417969200 943021442 408569299 910165010 345766703 930182684 205706663 495368970 65731796 627545869 15980962 887738864 925642897 955646632 104502579 594912258 827729072 853265006 343835042 559143715 89060022 401120092 270345980 826700790 414552719 913965534 749083998 837326599 870906850 875571168 352396786 978720957 352105991 545020411 591887414 783427982 74351350 169700478 471550001 901421234 875800075 953952891 383600798 489233099 48959064 840722155 128808828 197780102 86068715 198871397 550907840 643512150 378524435 913077915 737610915 956232731 513815780 818494675 459269214 517994629 457674276 482652801 459935829 562121770 500111423 936248537 559016685 952422702 896793829 962916602 673879235 854535315 246288558 919280643 751909721 984372996 526738040 948656746 482820618 980113720 231680408 383921872 45950272 588619944 956126694 968247675 976485154 994674902 404119883 976182864 979720414 998143921 538958216 728111906 834161542 882257730 185288548 986892715 797503066 971422877 915093846 943576930 258250584 712352111 898519049 973585428 444079295 790504999 301430147 765558051 486755531 791996071 642657222 685870704 487124631 775345821 528070815 947987456 775653558 993978702 289637191 671443541 944712938 993127889 810610861 934738851 912958733 960896622 576883327 818139559 801416746 983235751 968036400 973914196 97860683 162023973 381667013 873002832 853653372 935410003 309456398 314889582 614992400 884388757 97390949 255426595 903485025 987741426 604722833 923075861 482041272 925258962 475762516 732643666 172839420 315317636 737247040 909827213 397985183 586469185 549389182 987527124 415587958 453627450 343975664 501176836 962895356 969107810 941481697 968958659 983713146 991942416 713171470 830156180 250131836 558927696 150699980 843939799 701622356 965228029 260038198 508776771 774425377 850830897 466874373 884940813 620836023 980150326 839503402 986573946 785105157 795240667 579227650 607300913 369447829 661547073 719890623 826435473 427628360 622590951 313616277 339865423 664989896 718148846 798376520 823740549 819639270 987005643 399133979 604952494 728662531 995215509 583757546 621684262 452738609 597750804 975691659 977429836 356408719 464252397 28720314 256998366 408490246 446527159 113938081 297401524 726997136 807370086 826471937 908739005 763590718 804571848 100311304 830261209 257107392 309434158 835202393 993059343 60711053 460136156 703290050 846493785 489930566 872027047 669685996 790708024 64219501 867304372 458065198 700705821 221856357 246289408 80293218 611364752 805046980 916277129 891263802 928952968 851909058 968127523 184139841 238129728 802214307 811164697 270461657 422832480 324113599 456871357 416105361 614098424 63230382 524353927 247188345 599147640 851325697 999545351 517524495 807025989 479297803 739552272 722978984 941949720 799403147 987473080 862081063 935245233 315230497 729044262 677112105 768339562 607819252 638627271 309789619 759202655 811945093 956904712 942962568 969236695 69067036 591472153 809321162 888592332 260550780 880660054 779049245 905793682 111142598 226208651 148360196 349079665 114582173 618391677 220191930 222637257 327183187 989218210 640191099 667893858 107435234 132913210 415817523 625949510 584893868 706069760 583427868 586201653 129757706 465340018 418520757 901044616 999131758 999249334 952446302 983144451 956317366 990607958 161325027 451981280 291972268 721993502 905099889 917687705 546032125 934928089 900279853 920355469 820407030 846550981 26926621 28309943 704345971 879926761 946207791 947027746 157841013 640852545 893457410 931439196 895160500 958700133 666817521 859994365 849227764 900637026 570443743 865760193 323990764 377418773 695844746 933527517 361862736 980249322 123510965 481536919 517694324 573610168 151855717 811685776 911254513 998714050 924796604 969801024 274715756 840206135 515285138 878157348 652571016 699902879 473721112 911410233 909240363 987506606 959470890 971847147 451018684 853056581 449133556 658963285 409121657 480810096 294623535 980978191 702636613 727729467 173980577 798263941 337648780 761224242 808428333 845398509 820549759 990000627 724899400 909161273 881695992 946445039 446534896 718882832 974875208 977156544 108666043 611099855 470587328 475439427 532116386 576375410 97633167 357259451 106687188 463346083 765046624 790394217 241365484 647598886 998524640 998697775 810204919 919003097 101079637 604349862 641748618 908474927 265235428 738886746 476835592 837931642 51408531 987529934 841703273 967407204 398920173 401152083 124303510 848511970 979864706 999289713 663634706 947207960 503688913 618858046 954131090 994266709 558139417 969482842 911563642 958175413 724703584 983096693 292391768 374231047 347076154 727705436 728845319 864556181 358435230 765909464 72954620 155852130 194688084 831575206 734261022 857721987 640733189 841102441 522592536 579537874 369824994 439590751 473981270 639018768 356676235 976078662 217066365 242078406 887652247 923275425 202210864 471744208 957206485 974840742 87638067 341063334 408932433 740611451 160522576 573350797 381006461 871516139 236357439 880703516 538654833 939451847 543348267 922174874 633738522 795690104 750907762 756320094 369015484 841591691 708759465 973926200 440605269 835626749 359606605 825131740 222912836 569543739 293702535 632219418 59397986 649547208 275893395 983434212 130714431 642783231 830858436 922820453 994167270 997538467 607962181 975998224 338108391 511869833 629822948 884632721 953056439 980303923 399051695 688542452 265041657 584548612 93475621 848793513 501622794 539729443 873729980 897828645 658501714 984886905 2224188 154050843 665336484 909079193 456957603 905456255 288391268 913075688 600346760 697205760 817647943 963582642 256759246 270924629 397264715 429490436 83785233 468799988 657367194 831798956 521819321 931042256 413291273 722369948 861942842 882803769 52753120 591817593 711268170 868861135 499349272 835038925 275594494 494783089 819249964 942462826 683039698 989837542 317993536 938215620 438579018 523706056 768507953 846325264 176573817 443584274 530137680 840532551 692038885 791941202 764458744 936974808 973234803 984534674 706714180 798881580 533268510 622672980 470054431 861309275 585645032 969348814 743444053 955243421 480784800 794409613 52806263 986491737 205483244 665362276 441036897 747524910 961109874 974082402 369880050 551146046 673985530 951041918 431006847 597677900 457128970 654287577 653255246 789580392 212499918 738334213 391489227 450801667 400634481 439413861 872093633 880523521 268084887 485868744 569364488 835309676 518981134 694495951 6571321 581488240 175720122 625152980 652582197 666380804 537236557 746659296 299252538 603539018 758652908 791324573 89667787 826741538 494277076 880380504 821098586 824072639 999432852 999998515 692247116 825292277 182988717 477855175 404699033 496417840 681389758 989004373 817838053 990287397 750033831 824727713 3644048 94433694 598489207 909904449 808263991 834341766 321958561 755609235 746984537 805997466 521594415 710748152 149754998 580774630 353396328 740121914 427379909 833175356 519490708 808495201 323727802 557727532 748791862 766388402 802779538 858309512 507459415 689374373 987444221 991198608 966567070 989085446 404602909 826209136 810768287 875446260 886557668 918488557 218009742 221455414 375393185 466794914 268542406 810748847 245890891 606271323 683344866 750592185 777447056 819465818 194178154 745085401 778845830 860435740 892112764 974099158 621780375 701012816 581588397 889508114 100543159 611665422 501771906 963940813 100334350 670588901 416163579 591325891 90914782 399283832 934621690 948600807 684923552 995056812 560580124 624867555 322344520 830439231 519088364 956536228 155348909 787286122 387076204 551522409 6980212 973087395 354744405 865426233 903640938 962727139 156725581 263761786 23861851 452163610 856164226 922608529 653938121 911910630 829027433 947519894 500754227 640049265 769949028 852996304 437085999 794709660 663534413 689656327 923466620 958584727 176273515 856229390 170762153 963807237 396330194 632765790 723105372 918199644 671121412 720018520 319725807 919559309 736990508 869462265 527451739 608044080 443008997 920465606 917694056 981393663 268456060 517797880 241892638 479768894 766311680 911693487 601757980 996497676 161798953 724748013 181506825 940899586 284613809 509442590 688522151 873899349 422043719 803336098 608430947 971704237 69526094 317243878 853516830 927805131 937887548 976003528 859604161 977322390 8593296 546078699 964849378 982315019 266520401 643798998 485397313 856131449 791722160 999355129 818737564 921220243 390168329 742468496 228939174 878742275 666874752 921088676 605863575 732493774 857290156 867045325 756494552 848209833 484594335 616155855 664638771 989846715 880089902 975921176 833656102 838976324 494943922 900596475 109314795 778492695 136709008 186483304 590444713 722654291 981951721 999873878 415020868 577326665 394159112 861095324 447540301 782078143 953456346 978514568 92741476 559825883 262455359 927469339 10764007 201881012 565914395 991729863 375572137 511153032 669431071 804180713 653260842 830348341 653872115 724288501 384366731 729166728 510602888 803144552 764029358 966924034 333733006 815021489 366138782 420609955 262958796 728541736 462836290 521446359 27157405 154448970 536558418 739441364 416752323 904991503 163541213 200111051 788726936 793804634 997658517 999706086 868673845 990314202 476664800 522502386 931292916 963417095 422193602 876941019 627071155 806023332 83050764 829189929 114390720 655278730 445183096 836121516 595524680 710927502 334244015 424733683 162474414 252984081 925504988 947501604 271413505 659042136 623547925 713554822 367680210 640246528 521007170 621308762 61576594 122957884 211328323 337397436 6516956 633231445 655898569 968444819 849911159 969933713 191584665 772759804 514475350 765578792 402103228 689429140 343739254 893609175 212236334 326564129 705470420 937585643 514169325 935259177 342922764 568560165 236858703 378194360 904605221 938014935 419577890 771793836 500273070 688764912 307286771 906652079 481891665 643350138 357920326 395547871 128216703 552378737 101678305 117551853 946972681 956921792 235461792 521125789 898582567 919934244 822217177 884236697 696250475 704781155 403368277 586896256 607128785 650768389 148713186 489482454 248308701 654847775 817365143 963118508 60031371 720025602 573434628 781380380 449911555 739541583 265396081 691254350 614930380 735212781 995478024 998461105 289620155 804878347 66386350 813426058 780553962 910292721 733595125 942403885 241151918 880341055 637434630 819386150 569454284 586580657 755653906 963917963 594048615 673810361 170182810 396538948 725125077 893570505 725046698 930633020 555670843 729836461 980134877 985463104 60818223 271110767 626693019 875871634 226280367 540184097 524606521 712483880 587886622 710911204 944577797 957288038 78980752 363778244 815911016 973875393 195655485 952497983 443906272 638390180 102627181 268161219 288060922 896896572 984167651 990353943 169821279 810102772 35899670 135383190 812863049 958166937 681292699 861694045 469679141 795655684 432774898 747391075 347299756 782744417 434182101 452319349 828851223 956956653 942758097 974288529 323000356 667880281 360548580 825267293 859995661 979375597 323665753 365640938 813463363 832615192 817646357 857291788 901385350 945311709 444848497 464883860 281044313 441367201 774291592 845877657 315323709 702813453 422839026 531555232 359421313 577186079 718342214 942631158 32174628 294813813 681905265 825489510 165159500 633927151 668184007 992748799 663407430 989971646 864644353 960221302 530378962 860536713 307838562 384934520 29242463 95993352 574026927 920587688 864048971 879114467 297948582 762535037 256113554 451927677 706962056 761645676 901584074 924841297 986720819 992935782 788613649 951842990 637954532 827199010 421443265 491612624 241138773 553729092 943254788 964506575 709941812 842440382 144978201 668731259 67109086 189923084 272367497 908324972 642026595 708142431 714951751 980531493 390665103 772449676 587890593 764690399 444523463 755510494 348263141 891803536 749329710 780351151 950472029 967972549 1398586 361201625 975662655 988631618 451569153 832273072 988393418 990647455 144541691 571367835 263754443 535230991 201998205 924668428 72224226 745249835 204325391 977909583 154301391 923360424 439537741 566819201 376398070 601947096 873539963 942592311 207308664 483019424 348947674 568811961 672120678 736993235 137919732 876100977 758464062 803593141 293261470 420988829 547901291 741119221 764776884 961685357 815023629 995603615 740189082 906479130 484974502 832826560 244753269 550013067 303954722 648283727 236628513 919479036 341114396 665085605 324748295 879729690 751438584 911807027 755335844 845728676 444873907 884852796 858423722 990875579 950448778 995752934 42694674 470267874 776328825 949895494 814372305 890982237 328882868 717504444 907223229 978504471 596480185 774250549 713352978 855810961 33617949 255358214 96517975 343327828 268827407 795372515 140483387 833788613 274542829 708649642 238098266 853748959 125468892 621355915 274346955 940064288 655703258 856093982 732913233 834057776 984540816 984837003 17307455 578772242 872480578 942505196 433723239 802288142 481273233 509320326 720844704 912776151 539179712 816786992 989411886 989923645 376459462 528999112 540052721 653691823 576464083 945182393 569499702 843637869 752646081 852349083 549799154 874854198 697218566 814189622 39167687 997304465 317508442 436160204 191938631 879149614 706330042 860637370 378187233 404311095 969211723 995816414 584253822 732513629 345105392 814789497 720862558 765387761 764221843 976824186 824015627 901993418 435150420 709198801 478490583 606518603 207209631 255248317 5427779 948667030 183865232 510822272 863509865 970113318 14179073 314248783 831778668 946960864 910010997 919044386 476853678 685780394 134751054 227406536 271008611 543368116 871659942 958491698 372850478 869546116 870566381 945547722 313457134 561869444 905232608 952844580 613904545 786059402 21847091 530006625 848629231 986539550 860293673 953172074 103799303 362137078 674880370 952776017 381498704 486214381 768266359 846302254 162293373 824169883 371971947 750062144 640991284 772918498 160322022 618357262 941249520 948309052 284687455 757077375 44906778 794615954 105866700 508671349 689555159 710466203 227088807 844048162 995211027 996599717 966316243 968189164 573265229 716495576 293594342 536018849 894357557 926783612 260342233 720880613 651265255 762010103 295381482 430935435 610335855 612998528 666064309 762368428 493476273 829401977 251234046 526672330 468166424 646392754 883192405 958256762 499021688 577106704 432104459 546619780 840516645 987021117 621080437 811579683 130233832 199138985 235366368 426757183 342521877 996730440 625829788 943685165 826042265 982014238 777128708 839846391 619875201 756577253 952906860 974400841 867104866 900149350 28221471 591433517 423178700 880467136 395757522 685978055 777512359 922272043 666001538 700160415 278763879 949130697 395208685 637627873 502244560 655695903 649133346 887447688 99031176 114121875 721235969 790804815 974656926 991809559 350319664 553852538 749999695 768332133 426782244 596141080 762056676 836884135 562484087 580085852 263090913 691909701 482333949 773149761 454686943 658191409 56545308 398881260 280461910 860150687 969898007 995480057 983265123 987771332 41355671 264406859 807660394 881262718 366262140 399707184 359669954 889797645 430852975 789993549 407695071 790135945 4672493 364438558 389243095 959474052 28198947 589939870 485468540 599027972 894585050 999978087 263391187 859651067 600890020 712059944 268468116 849982958 107012814 917579097 845729641 984382481 21144952 330361601 245044134 659477395 740061276 781124322 289014255 432578842 409129255 763139051 137049603 883460356 119968336 238479008 329756795 764370273 77447939 429936498 436265259 586785384 590257504 609936801 671779109 858847607 246755338 270226865 574744194 696793994 739962197 772406252 316326537 809820491 144475735 375652913 376406914 733094715 341247088 960905948 653458824 934287864 932207725 969231713 858183178 927480777 893418864 950483594 850779358 921038603 596978889 641845490 429925776 744786970 924584380 953767381 244270387 908520703 34419452 988643756 599832307 935515789 967103939 997079647 42918776 786502705 636313758 725286089 194565534 831603659 817256109 847152092 172726402 678142315 649399846 653690914 262719203 361811608 837321990 847189284 96301452 384411556 563406337 850702258 136421751 688479365 844422397 869813321 77969062 734840974 299474060 810287485 229756446 727436018 54475387 186814573 541441323 860776831 212830056 611864005 635609539 907910179 933189764 972572054 82398244 813830520 745216216 947318002 2337052 172519530 368877282 486334368 36842432 946549127 510218722 545175124 33063099 976688540 242235615 766691834 894313939 905719995 490811751 647730432 236130655 476994790 345644252 735843979 308602851 720974067 606172150 708928975 615051443 712908679 992727981 997528047 340728072 835971254 880845933 944111868 595320585 756968420 781690031 807613635 865802616 919833783 242080791 579501229 504796516 860353447 234294137 533359526 766752288 858568783 982156397 992942702 492101957 793216189 480548117 674819636 228384233 991361882 632988007 870595078 370144563 962624342 733212616 752986894 702149236 887510984 815507452 952435401 517660663 941190599 983337129 995132158 154104960 568346675 490556980 623596807 185070184 277661770 81899397 486360186 75659669 735969007 562186555 945522147 20321315 312281915 273085921 726521974 736872239 773343495 846163759 994186640 248408281 343193454 23403524 801627076 438623398 856659933 220166468 943647161 680062656 902292291 639984267 823348074 555850116 816141836 862949181 971484109 913834011 982692582 374723118 663233508 53453783 522314663 427236031 617271942 128054466 348774880 978711098 991725429 284540638 595784315 171833637 992666172 484585099 567045346 176289096 822035299 800035778 930105548 834493275 973137482 555499366 927444922 929992910 965365058 786544634 834077744 108040241 881911523 495037788 898503882 317668028 899296334 110102625 180332544 617908073 654371902 742620839 888408311 720134019 817801920 695119360 709421289 512901705 885997229 610232407 735336488 241116163 793713931 130823372 736993604 456239062 624140615 513679701 532688350 513496121 780220861 775156123 937809705 113883130 143701285 309202294 521586905 486058752 805897284 455124200 468351173 503659669 537953061 261684833 800553635 61511441 727218511 929567118 956684341 144119093 732238019 389525681 509632373 770711163 996034373 300667328 972505565 484375068 571452265 730888408 976066166 279051165 989187152 165117417 866374011 451841645 901530096 216591953 248869353 783501574 976314937 735182095 832425337 792723578 821084935 852642658 887511447 655696286 751369918 389284585 929675556 96166933 581175515 932012932 974470402 156737872 985020327 233920386 847091476 341596984 796557699 808067127 923290398 276393245 413557635 340644890 716600207 202339999 501322928 51852477 843967850 22525157 591472263 691708390 976261114 862728909 970411668 58596435 798995560 156288514 945255561 796063249 948889096 309284600 420029970 439789395 492146620 398635424 958085709 849718467 944534179 384911153 487617285 361335222 867332418 230194212 697653302 240405921 925515450 108702899 243133814 48154616 241506222 989192887 996142996 976979656 993954318 437602369 745059903 185433980 794822526 818393867 820773762 317429323 874255986 884440791 943146632 205598435 653133387 46979181 922859366 694304899 931903946 254759954 616211094 623435166 839121091 42207860 606535875 84535527 384440852 863932991 910447864 169397394 268619081 498573352 595008380 528618767 656196978 988755603 992977901 972565034 977633890 430375091 472967535 34950503 764312123 523205321 809963163 543972774 867713692 769210630 818216140 709704705 753968334 937026420 970243624 109019675 469003033 105024402 278320251 970401129 984948744 442220790 576870843 514855583 809034287 422300769 669845339 647317919 944445737 734991856 832236949 766542335 970710071 714140722 793201716 661504570 704958199 699040485 816113048 784149728 819434179 758846077 989074835 966953377 970178631 797236297 993716723 720879687 947396163 538838993 659128226 822792257 993854074 655083213 656852250 626861766 926015497 848651641 851469324 76323414 564964710 361192378 393018502 662404573 926915983 146803001 897006076 973467036 989865141 918172138 951168963 813812174 834730516 584620609 609591808 981512578 998146187 487170537 727741851 523171880 650122968 227391040 727319064 518288999 586136230 545222292 656593965 2314261 883366580 217867086 729632393 80059832 747759118 809631285 930988687 2421103 294793917 352482529 801710322 507743518 728149027 811694436 947887715 646330227 668921422 637158200 749414908 200843908 415011072 99904681 100548264 104752581 233811637 187353471 908326530 292803316 949254036 893778723 903475795 646367716 863988195 97555824 301750053 721962262 867924567 485043600 795986119 674452229 711685693 728121543 874392237 163779895 911112628 246160258 552723374 513108607 610138650 432349632 458557847 61057050 628944496 421806749 750372027 918178411 992600704 333648879 411144532 718094116 825058973 670880346 810994879 774498857 888207845 987171670 995498715 82711152 112686055 40110475 810902245 37227921 713715590 959766741 971985199 176404116 591119867 606345831 911832596 104172347 898987896 904434301 944464095 709608286 924211551 434653815 947265903 674312726 991363730 186714235 553842028 835912160 910048039 547554842 953138475 273055093 629798086 534767771 996789469 308648438 652789208 307302027 341465399 944390778 963964332 172428435 707900174 748394936 978516178 844215045 972472085 366023851 799989655 186885688 282078026 899312976 985107774 256981556 965448722 778658905 836551739 62015525 994525753 882012276 979014179 251016738 369856605 801760510 860213736 476225747 727351833 697776587 722143593 598134442 876382357 166822582 724015434 137660841 194106717 752857532 833429467 95733701 845665427 459557282 594822502 717703626 873777954 308751931 492419424 919796906 943310585 451661787 841652285 35131186 274048569 990765053 991707311 96558195 455885357 427085102 962652515 854619527 870575960 927559002 960027254 816714072 852284631 793011002 841862144 512984666 967288854 718235982 863446691 664200689 899888270 613618055 943036238 583121392 623510028 954778499 976017129 893149382 981591070 858977686 947034420 635834882 708027211 295259413 363466530 530212187 967102016 861332175 888396623 280572616 624460563 79530993 244361943 604050173 706277982 410040966 914997832 423992185 842069774 728016890 782476662 975781856 989094040 283479513 915011056 387033766 948071270 336076218 534382492 838823984 928120664 645650640 901614935 662719663 921177445 447035910 743473120 635275482 680473803 874666997 962792822 257283866 556176080 298152752 832084083 812446815 848643649 313718720 770089980 363058021 611713328 377003944 396132088 625851347 762698743 759143453 977786200 737931364 748087173 280064853 405773909 305765958 603318060 93676797 169361244 148138292 772176509 988696967 991380524 591727125 615924313 84084150 414807734 705396269 893995727 564394785 850227015 872716622 894301891 106739436 919854406 592616265 649789523 321509688 600781939 930792882 949613250 621684142 659655874 762627050 952417222 807328538 959594962 48201750 140514379 805464876 872786356 551036794 629553631 139748221 439900705 350134169 745619213 46341425 370871148 384927847 416209207 301738400 996298515 478355846 756582221 41820191 235654247 535330539 968182184 474518173 569338601 871642027 881127255 115281633 399406221 736844001 819307161 773653469 789684102 516353940 819673144 480812306 493343160 338809855 872745286 864118007 930578108 473075138 859864747 673009691 953327371 488598715 725915524 752558387 987736164 942140320 992578851 307695175 420855638 589781173 967535523 443727917 596877016 958094859 979813693 984263494 998731028 59988403 559998245 882481638 917481774 153820497 408123161 449192212 530850785 664290098 866855346 13165584 30434955 303455293 570069591 512277175 701917688 771309736 915507742 192319609 820625919 501754437 950887869 30998024 516755565 690003648 797176524 43527528 71733603 922930570 967716290 931013075 999661747 91877506 356073185 323674823 730749332 406560199 918565023 45622761 172063374 11992524 649745458 279165181 734583938 960506551 977302489 999066828 999612290 276537540 461651840 7441698 37887048 11960949 390804942 960209563 962264663 844709989 905744561 222435593 325166302 272074624 568054885 247788487 668630283 737414751 799326807 166643042 813258934 56850660 264674120 995349251 995409999 15118740 968135117 181884271 570155295 289552873 924993388 877488 698735432 373429548 975808122 437612939 690582250 705689949 997779111 919519199 952977420 919735847 940191211 704207056 800713961 44430472 542341199 949047348 958599173 358406075 858920818 239515415 483210117 845088560 868844143 473463635 684139678 487066415 728463568 509884572 545915452 672204935 999031512 396114244 979907037 19104611 564565522 241303825 565796127 965197158 974681438 911161579 994482176 776216063 853759309 934236111 946719081 856154624 972249367 520161670 931365882 965467480 976305423 591735765 650631169 967394908 976077586 791576208 872665507 99521958 890384117 995418315 998059046 423074446 527255777 132075366 281834256 722343178 781134214 869156927 943495493 415198270 633899896 357146618 577050949 47457239 412808222 925731995 953110727 104547237 843389573 626316249 679440676 917966925 968566794 283155599 999526924 104841841 590225332 135145084 833130605 163881461 771358516 548951533 626382607 678236260 706778845 874357102 923101229 982566112 997000981 63174268 165695073 469234865 933046718 610105595 877417233 606365587 934395670 475749064 529372593 195047731 986524519 315921307 963989626 942898101 981535031 230662495 305291586 386180141 839024896 929129238 972699833 747178800 815557592 379209492 629240290 277996565 325832062 508814981 667277583 905481107 946968142 811319261 997789870 592444866 876062452 505980853 715399818 527780653 548870112 811243099 834482355 692426353 793938478 87531155 767316712 653781862 992845654 991725500 994453159 316473371 472655012 436484782 802629072 549059140 986625256 84595345 283435869 485475620 539758877 799139521 883513056 777354315 902123105 542788944 620428919 834915926 889801806 694728483 914167280 300224695 362485622 878770413 889134101 896768240 926426761 259097531 976190038 321906157 802328169 988440986 995363117 346391412 602586651 635425813 960085896 570846063 880275549 648034445 936801324 385902045 716041330 346512792 971068170 804143453 873552995 224139495 766530490 940823782 971708031 281631128 652471666 8789746 578768228 353195543 391637516 298603900 584589122 322700110 348533266 230463568 677301736 114318374 776179992 913507891 975540093 390029701 903739846 641488961 677968501 383302806 876814347 970183559 971214878 136196233 474918790 292114478 703827015 729404932 865978172 349352210 501186875 268059257 694103671 756583959 873854164 962915153 983670314 415786751 595230478 292923073 786618801 808877676 888513087 69334378 586800151 668419743 804415123 663920652 809812126 989727680 994729243 362371990 454353751 291107890 994245770 214496427 757500590 761139356 993504216 881739655 941166430 176994722 973856125 710032871 710556005 813630855 882675107 952109350 968332156 434423423 880842756 816175070 848387894 399720746 625841746 629832567 968734469 11145012 860116147 139736392 898726968 11105519 125055494 562980156 566395600 441326785 997713250 531097951 615882013 616798768 634060793 735543447 865458552 687428972 858499042 798231804 990461432 615217740 642781434 351681248 907750937 724987861 795535418 402133896 439919349 7517968 650281843 733251401 891436825 173639782 948629937 291117923 368088360 717927071 962001869 90499285 363085355 637517472 659321549 98690497 710336140 555963 990039445 346387532 654178983 416398091 516786304 878429452 918747374 967527589 989229102 331189887 814015659 103693507 489588906 913487230 954141548 971486079 984968792 188537362 700553626 183988530 864768292 429908312 586472939 282503190 587421650 979796558 985897180 652334907 798267988 284349065 953001569 95240953 926617139 689312683 922464082 2685710 784613560 43183465 831529964 747548091 901219852 534486489 798607539 485313306 541605692 875835359 912233926 595460183 846534332 77909332 356942785 598012481 945047325 867909346 869171313 961127458 978206149 882815880 944142621 324835896 452416189 525478699 704749977 803603609 866457955 312864487 623652329 434506163 777351232 381578928 997402179 941844466 973646888 561465882 688110070 922019814 975654253 187474720 976495436 490695460 499260469 786466554 816323909 407500835 955512051 944035283 956118872 444595121 734358471 688135191 963412701 685489142 920965954 263452819 965837030 211341742 712080968 885316006 976150811 514166615 905556944 825893785 902213238 837403866 886626519 906198902 974801538 994503377 998461889 122672019 447127538 578356470 586906232 363922996 615298538 489292362 772605427 930663724 968391813 34271708 873162401 654651521 950120217 672018343 694617594 308061257 599970508 422314285 782458245 515775757 830165567 700240540 943591900 524977998 606948436 170234985 344125888 230316229 513140278 808198695 993532773 366407440 392923302 312688901 380317853 183163887 606056261 477245779 749071449 44581050 891672112 896113804 920119410 237478324 428747312 25519150 428186977 555197766 744655508 99976241 906955201 464140495 657642029 556177784 690401012 349679376 941213623 208679119 317837885 977340405 989108193 326575515 943081843 314658271 498376188 280416179 346409274 420994744 713596893 676682279 712824708 644956419 866885623 562291061 854035659 188805781 850826956 913523773 960322181 496838381 635027820 592933814 868938714 963649770 980631791 325746096 366665202 843901737 903178127 566054230 641804509 287344709 937819441 293408335 455789140 797445147 904513083 106633388 646707747 611236631 809611787 275604552 651496930 947245068 971399660 30791452 939535933 37047070 171039263 675254068 703168746 990022723 999665748 956382363 987559223 76230595 789186895 653791497 933799087 516179436 765409676 19657214 525347730 749056905 902388196 489233697 787339128 503777811 596685965 224653977 552760580 84514005 932444221 398565407 790143816 276736726 298776155 778232465 874621772 684733724 751149351 184676524 801717970 594871551 702410726 956446834 975768330 901052718 938972328 624098725 948505448 201651898 542129253 16499693 830875032 182428344 194106037 838927554 856814160 820404707 986310500 840435520 949323783 911341494 991374637 691420991 835790874 994169957 998043375 226243643 783954868 550274435 791511917 125557562 404678994 564680843 734212359 299407820 504480591 398682032 768461885 635331518 893389990 530861 400594732 448724388 656132173 281571446 652502653 437501608 698751314 394123017 827188206 574540023 593673860 848054516 902644131 274590536 529738091 457241688 540262470 674195026 932387920 783069445 927895023 74525129 260190034 8989882 557802948 528319131 570793018 448436882 893824970 237182401 567970934 710709335 715971646 511403405 775208519 342237285 522303832 941871049 963292864 913678152 979319383 222027076 492688313 131545495 284058520 430404637 560299795 102330263 346819224 80013822 462810610 732605355 917998954 457962342 598199387 289670689 759378893 693647841 948836922 871970672 953688637 242223213 294767278 465552744 948549332 31566953 676899550 88305722 228317286 774493157 894475762 378712722 505182348 446472660 782675835 884522517 911224266 412067968 948944141 651250998 666942628 426143187 519550566 631887353 921490950 342887413 426124041 390911633 765297968 813584344 840247469 637799761 861189957 742723160 780093001 640041729 955632571 729680824 758690136 268751843 357821389 242337359 297667810 467391218 731366682 949752363 985645840 935945911 989666865 517350937 932531340 235965711 593917312 898909854 920163136 332936022 519814736 51474587 97966356 532959620 610332272 513943209 553680920 371388588 424125903 305068164 305555641 212534053 654786715 861437861 965099974 528915435 846946197 282035456 726661252 383495624 609118769 388687294 590644892 411641973 735597209 976097124 982230694 471187420 612926258 446552384 766169805 507702560 691822250 252712913 796103519 80449563 148363006 308758823 940475546 854472661 857881350 808164062 945059027 55207756 541530253 439186201 832220324 999623797 999671865 993987926 997750814 757957281 783853107 946723514 988814482 485063222 492313712 278133765 780233748 249419287 838462048 851896067 885410215 364987156 556339325 951347007 952109084 416277662 720063225 226069838 729366290 609930139 868515671 918821196 984796395 73364930 382316374 540520563 895669269 631381383 869959840 50306097 307417269 530420647 568497709 63817550 112144491 422406215 886103937 999075486 999534351 87721148 547921017 594459506 727038390 793433344 801501000 203964588 440125452 736818945 872180254 550745154 856289278 914534924 964535627 710654149 859971780 410419172 502629913 248753355 890723083 154370651 740263896 160842897 315325018 595602178 915681830 420482513 580267838 645794832 905428615 599471629 999502898 284258874 838420609 437367855 757571016 880658848 968955863 486437674 898609964 156884521 703589938 522706139 784213216 151126428 566195988 359726223 852239085 457729801 775797634 740872087 844382830 903276829 988130021 948922416 976618530 478038855 547461092 717547364 995245520 608931090 792522416 360244915 433565091 945513647 976202351 341039132 480906518 262217312 314627430 445279705 840731459 467908118 942913438 354209739 413773249 797035322 973699798 887924179 948038416 483032932 957758792 424071763 947551243 336451575 969939615 662057971 857152408 774232887 805825396 773253872 783227905 490196482 811843229 474007657 713055709 859044695 921988083 81852847 785504843 12499977 110790497 538171709 604747695 110748555 403145492 159351889 166785738 25523287 492041095 658184402 886051062 716307611 933050221 114728720 391800127 698200437 805808619 701161613 741425124 430372877 616104631 778751871 835423004 585874887 903893324 541484639 657759287 212112688 884569559 158488772 563235457 821829243 998723495 692351266 699600232 727724797 779627398 153010558 883280305 817103071 971483228 126738486 168678854 41142715 761719721 294955303 955676630 273055855 355445739 352355201 472975601 242306264 997674237 908359746 929142947 483081452 606198376 232388991 873848993 872747423 952966643 874551978 909776084 7553866 617438111 457614983 481680266 517791740 859441450 236412527 757888449 110734618 983542421 818993320 968375303 863466589 922653733 486003861 569085075 130592677 620909452 656658007 697236355 387267851 581785855 5414457 115482860 642422136 911531947 274215460 655444060 733742113 856415689 609818688 701031940 662895023 839931233 800034751 839275306 297973852 491998243 788187439 958671627 498564506 631012017 539410542 610655481 313227903 726560951 361870627 757749858 952831459 979882752 945618103 987605889 891746992 909287335 413538109 512199114 397023160 782097060 4295319 431884848 22810881 338835369 34162706 926437512 192268735 506746421 472359682 857886518 296105348 557153298 470024123 654424622 591355669 693301996 404468085 946978698 386597873 893518114 885954910 994758838 653089796 752858603 159538676 909350428 206231462 566563508 62988529 572735938 922252449 925041954 440618056 444855481 459052281 561899002 199986454 671852755 764299550 941291114 967475354 992929371 180718900 462310067 516149011 975997143 233066643 902605623 245077909 865964017 372656822 428569855 801706090 905105864 914761429 956761662 271924341 356783100 109623516 609539505 802433364 932967603 144012864 171847013 751855485 764079217 375208264 908488712 456399120 939285553 854025881 881881084 739096019 909014040 266692024 384574403 911738683 960342703 60865602 753455774 955891143 964212667 715230626 801843218 520858765 625747447 324464818 489703578 811402460 824558711 274260545 754280608 874265070 877194789 660447338 798619270 187426319 450442685 61024308 901567886 340810194 898365274 897714731 942519250 10883712 505894102 963206448 989496528 146526105 707789398 798423616 908641529 566732406 577499842 316578119 492864324 214658685 869204387 977302436 995054259 266782303 816260680 754771114 873743918 691197099 897990533 739624515 741247634 641430952 666351471 357632566 994158519 262350112 634285225 326924766 650330085 550487259 702583018 804745333 833265474 662475655 669197112 638920483 983474624 773139732 937215239 390860617 844350407 936855635 945294705 533792039 691118427 932334127 982280372 803419835 986094864 242499014 919020515 611954764 876720347 139746814 236133436 906701155 923917591 700058663 785307845 46657773 100075874 888931354 943611333 783754342 942400756 236935050 531657833 124518868 231305126 761282169 799626332 577453833 602719382 836268416 894190768 88176448 164655249 551568973 930713510 108407502 141683172 823817013 870650481 109184949 421858282 567784303 781877982 906243908 966778931 663821862 956095062 240842346 315632130 187688027 946327744 511427637 634150182 234772448 250481075 174936532 962424403 37274580 998953464 374188001 438375572 754890950 873226985 765663055 785365739 274744900 693026559 136471579 485809947 841595368 963865092 282423886 529064819 730107453 785833109 575209273 580760680 70120630 927112434 365217461 740068777 69547489 276267373 41736062 546472925 615945916 653497516 842977608 927307636 306985867 910064206 277375887 594961685 318133154 509844473 570816552 895799813 40495758 625757886 604816723 749221309 825365742 929610982 735612725 956353143 135389431 797162239 667489589 867283340 986590587 987985770 290174635 444821468 827654516 938410533 307657904 546285650 330410615 487457495 868542577 900798835 315395136 697163284 728195878 879888944 986800099 997096338 35098439 356129852 281830439 474232329 382873652 999649327 825043709 897738057 596064308 783912049 620422411 784358267 293927657 407375488 189927185 840933378 374518074 791255145 692527822 736988386 604559943 707766161 781575072 863258036 654888808 975447974 208156011 221995545 548339679 768662174 121571445 728132812 844431794 871599202 567781816 598357419 420285358 887258792 439865993 513497851 712811702 951976712 773115979 908160506 783657321 888457259 556755703 898267697 403330542 878864797 386172000 546974674 740497281 817994946 176423128 916987184 754714107 962410072 495439635 897808631 759212570 972145085 807032160 855537932 991914583 997758047 860055680 953459276 915698072 994385966 432930894 800629205 371690880 731338718 998950979 999933656 896458590 929847909 245678309 725695934 998219549 998447431 876142640 926011867 580236816 920683922 124349465 491097354 13435902 449935716 895070116 953452340 73839021 703274241 383598414 715756386 776087092 912781637 234528596 434356416 910198600 953516396 560113446 618243837 602009449 988875959 878473663 989639039 832297101 932513321 104951060 160973024 572527210 801423151 219442042 913694212 521371605 582161499 678743148 948320587 541154202 616099100 811457719 833549973 870786411 942635118 951735563 973056135 380915120 756436571 363368767 543912696 88071927 687625880 122915946 136564234 145313589 420782121 349213412 625319904 66226709 455982685 416274728 810957580 280945928 423092036 483086843 785027603 167841544 318130314 774383929 959752246 154097636 553050650 632317088 696355630 77108355 753849161 451714040 929094168 728691030 866580032 123359093 991187051 326980086 525473496 99400284 565800898 388896761 418829156 28699436 686057903 276788219 373443641 938970209 939577549 125804707 549598838 885910350 960538786 795680536 928909404 14709262 714365385 322504089 686625125 533631123 681068998 111576008 796292883 895374231 937486752 818325978 956898861 205884888 828239172 166527075 702208172 985245857 993214968 120433984 213978409 217138451 842481669 210482559 328727645 458688521 909834845 756683457 799055669 508461543 622089490 530259428 992241514 405675662 826211910 132666245 556479958 644410535 757974159 544753228 885259033 309604185 339199806 673461089 676373131 138411625 774187207 407529703 409107621 612270153 843824400 768677229 854642068 271604578 599674877 900947277 974532882 887458701 990851677 18781338 773394501 711096616 768395902 31968215 575578344 533254071 659604903 53315607 890458076 96410336 986954707 675202539 728082548 512896744 776385774 594339821 614219331 758039374 829312023 996353796 997866475 616084529 639218674 266038211 746588967 736702381 968545184 241934096 782524309 450020011 623483666 814410882 815144589 947461446 984369630 259630344 964015661 918289069 960872774 95489537 745467470 831796674 905044925 154288133 632934260 130782941 368504674 709594927 888695721 796536670 861556128 587396125 714200028 333172496 384448066 813523694 935480442 442338049 879039416 323832120 359366000 644813639 924249501 478202237 793372172 395284884 965826441 121915936 896951739 597206585 640243261 694459710 704650915 530361711 957405638 416175908 506449172 598285963 834705906 855142855 944231555 281431544 967901266 531097084 994777398 246178598 410587158 432920430 619983539 285572801 822829250 824635812 897059203 303181384 655341857 929767113 983130673 698943203 816949625 816610471 864977811 786287838 991671461 624116041 731558584 932357797 982385663 827981505 867186947 877034879 879000419 924316459 972376921 390982024 589182982 989301139 997478615 399832431 502327938 870828411 901772856 759386776 911391064 823931756 937956400 36824273 200430041 115683707 755268634 937956157 942314167 740473246 781862081 839259876 964734042 893474743 912043067 200301209 383943090 699662281 715125784 947961024 987469128 314419744 995130002 14574593 463830467 110835505 744774943 979539442 990153639 338509120 945071930 580685333 593939110 176702135 494075461 409979331 747012272 771820672 775510222 346069992 377600793 250905924 643400894 630267477 824709042 401500407 683864794 851096251 907901472 367104859 993705989 970750170 970998381 112140050 324492523 588972211 609985582 246184136 438154133 179689688 749216255 754184680 783372702 363514187 559588825 610724402 797413131 425368681 738024767 827134847 856279927 826240724 997172864 599583027 941672142 223470318 775484411 725508781 981469634 280083467 370702500 310286046 748815917 3588766 989951964 594367448 681343898 455054397 774995956 199844531 526271194 47300620 388726425 437791522 847759651 932228551 954418042 426780668 674239106 317408903 748616064 957463355 986730562 311551714 820099981 784992971 886408433 161789826 757314004 461266302 609190533 660296027 897915354 120895159 412889057 172583812 522078808 77985959 839663097 918650405 978067398 639587781 726001420 602211682 956406446 457741025 680597863 452690580 516999503 209904743 794484301 324451968 848984295 431174539 618845675 491632034 562338310 288377204 725379738 446061885 823529583 710825799 759698488 37599888 831732646 558596050 982489891 967334768 982845465 859244588 888237515 271952822 680192578 420859683 869479211 725079476 788567775 559937306 942089059 150976890 714804406 839304555 963054350 46899639 442378929 504239809 612027599 788730073 930930416 95749300 635532772 173277504 553245154 766890050 798096212 495596632 962014093 688816528 801135811 211384146 465686291 628276889 907439458 337253544 478917343 878278698 947757817 365659010 899812372 431204559 801054452 676107820 793359265 781655077 860573645 278849948 643484097 257412909 786836058 267041546 978833735 832657080 839518800 661912261 751914165 935910086 946610510 385475766 747970481 283337965 369780058 783838462 982667862 159205777 880369865 672848833 703998355 357165863 897981824 267541580 483777231 119110955 309155039 131048906 746566487 943537930 996638101 625566114 763448169 173115007 987008801 436634420 570096205 639986260 898628547 256915392 323800966 708640447 825652996 81996060 172124909 543081859 554911912 93923982 968380349 100799188 843256167 876522720 930643972 268539843 549503204 40893029 539657551 56368180 203043095 61423006 783021876 314883483 431274499 792169252 874366059 211911055 306573932 929134045 959275801 184888221 306112852 757075372 934595840 646781795 922220715 781130718 799175934 282466607 682821258 701686032 882400150 121780429 932069489 41663282 721508016 352041462 676570611 694951078 922057567 289117854 532676401 365128316 649332918 856501788 859468376 967027312 974688795 590244279 827791412 808480069 962405426 643240975 848726441 642937921 913881459 848104684 903764153 67474482 667881588 859977871 916158104 721780090 755258208 985992432 992078492 603249264 959977042 873856432 988473242 936396228 972130700 766585551 814975032 740820981 860810911 817699841 905929475 879571981 969076191 695826253 737560871 75330907 209851650 930296648 954973623 845695926 869385113 669269734 851946878 735918436 847849109 997351026 999043299 818956731 920456608 158971232 634949864 490082911 601114217 835803606 882140969 65595296 796725390 782539341 951801116 149228928 355159588 182890875 852413555 552289211 703734634 93796784 419302819 77265893 366115193 111197497 969766692 694592620 727023064 827495377 934412247 674473387 880186656 145646602 569776277 932336892 952350918 475278604 935268549 584333895 943747731 554306592 968558234 395908228 502210273 975879107 981056867 570582005 826014972 510964062 788704539 318436034 774685538 208195175 355024702 285254161 822531069 815272237 969696024 707584396 877608249 868058441 997855322 642894918 739558582 971622295 972329682 508644446 656384266 66275785 138014826 570718924 572921803 610110003 749397167 419844402 639568213 200516449 261055643 667137998 886294115 354806360 942750327 569193339 818330345 134762195 665193702 14787224 289800504 897174157 934008215 713131354 780277655 357246489 861634559 518425736 786626161 703239305 865410247 78254189 683940694 475906606 800340449 546849313 816874137 929319514 987480067 124546376 691124922 671891591 795980785 859807874 984739401 337751813 648222095 385600687 854845540 386159673 570788407 797421563 901667038 225161718 607866049 402938569 458804808 960095756 965032641 833501504 857889030 989126956 995308214 710313800 810514638 413158619 486236223 325625213 966243190 925090969 982317360 363600805 578475127 527010086 808925202 871471221 943600443 711183727 796205770 917897766 970465450 794400921 813805559 288571682 392261217 952885487 956221140 853663201 941442317 398844694 889812022 196812557 994031069 793603319 915884850 672383138 902691737 694872023 921812033 214793982 300622334 54790930 245099594 648951152 662095989 88076084 459273769 945061138 955972151 777960399 882870633 193606434 708247281 921635132 924768488 32253296 660297971 769046107 802937217 799996125 834997779 753710489 993219006 188535818 845396215 907480983 911127002 640750198 882389478 502903526 877202935 225052038 417769796 687241831 950081015 942063722 967457707 993441260 996413202 330651197 844188110 767167915 776228495 983411675 999823972 294428440 682023715 83473658 209785249 9164154 744323424 80360107 610599112 706841772 832512907 20724064 331164599 432494277 521793120 913062598 963790196 29841173 857647470 134039627 287853156 201981017 980679974 57881740 552822816 105503005 317673024 669909883 857714089 597721672 775356715 207014986 418941797 232244074 745112453 454945464 543108010 581086344 888841910 586962028 784047057 545285016 566966030 61930906 222538333 576613319 922577433 35102769 309928628 470186191 482232474 22986041 285557614 330857700 549273169 983125336 987740501 382163082 668771280 481354130 535960472 534658145 542336379 810576361 818962162 422410491 958437949 411182044 614967707 440538410 691713277 109482325 628152332 70935465 76432977 428109127 863549514 854681200 970148976 989029839 994546897 717237079 975314844 496460857 564864495 369359531 675694995 712068404 939233301 225555647 982363942 335160825 764888323 733023059 805461409 298899142 819726558 836181718 973362250 469254405 671301603 651374766 835950141 963377210 984878478 778963309 889922691 588448896 818059379 948782911 959897181 377435063 633172257 922134101 968972029 296537108 832358470 823233503 840082753 97541049 747855739 884901397 892224390 465943703 580630092 483866451 829759504 171384590 644425048 225274934 972399867 120466717 171337438 675999018 838905653 291006545 440097448 897695992 918936513 262261172 733098955 886395214 894823250 318994103 725443491 685162783 952258546 462668895 594385308 348175692 756414155 142760889 215106514 419596096 552825103 746694717 905904109 754494601 767291098 461979622 957806997 826233638 937959778 419705653 757923787 685517250 886588624 18969814 550177436 795356561 866732000 792288778 876522945 888470153 903680433 57465813 818612894 931336216 968873492 885054263 949819705 800898668 985742154 383885209 558829400 700746832 723326212 174267356 859064770 636342035 679786838 440284033 774998936 120536339 571398957 317297051 897057618 279568987 946774604 481204087 621230628 549155701 708113868 114789268 413177673 826883342 930461597 605884815 921563893 772856206 868785014 543989289 657068553 154856541 943396372 505184767 978193544 362623496 553277645 546426717 825509759 515505785 821656359 767360912 838249644 886758283 947534659 243693142 945588592 560058404 905463134 122032738 699677384 672615881 792928593 9613650 412171785 53036827 878347910 443463039 607405220 849613449 989356017 33030501 329742729 811305695 886013544 371389639 632527397 677222586 879277547 131020349 774444325 493816985 918408073 642420364 897056158 223588316 422062394 91015383 869310130 241198319 488954474 302711011 999053465 666953526 938194606 921183603 980290845 672392767 862001032 586782179 940105299 484586096 658836488 382300753 746248114 171453934 849994185 813867312 898499042 514669949 980704790 565280452 670082652 970296745 980865019 766614977 813059182 253665674 349153584 572822913 724791571 309939085 981058793 561986935 740264677 259068293 659467215 239880810 744754290 805157931 882564632 398519351 808156454 26639285 681013234 557126364 758265061 727250403 991221089 362105696 635851606 650510281 890354063 141402282 194157760 273303108 627474975 677250724 948075088 44086407 369109623 960487147 983116088 176440675 442543475 949603951 964544646 322924422 769903712 448662372 667357463 594316288 700788294 791265890 954792715 275272061 704266131 632308827 980976627 907554046 928864922 990040438 990459506 322920693 576356481 581910341 709909842 350410780 379256205 407407845 976897429 145461777 428987194 849164286 860926788 876808246 992721298 536009020 963753258 747004901 941659913 391958359 655321169 986619307 998304335 325251107 578184921 965967897 995530493 98762236 951219208 616034417 803468289 984845250 993289855 77995922 410665663 426682241 651806497 802565233 884207300 124098038 637339412 252867943 650213290 665006946 982568890 13600524 78073559 532550721 643551516 369361995 444060505 592657313 947199793 674439873 733138260 385870172 999911360 976409634 978042706 883515449 936740969 981215260 996218507 726966274 759666602 734363068 980817135 458554478 691400345 431861422 519663436 255712647 656220289 820249748 907900337 553660762 865107815 353072064 992145491 75215886 137465176 89924495 988806037 430637364 511340440 172756447 634970073 62205622 663943993 463217524 470934202 931739934 942819666 684517310 717225758 633114751 856028918 551906872 556753770 45530891 475753713 277886969 791868088 328346282 805985700 183651006 510421311 928509646 987382336 738753305 959048092 244425634 987421281 707801449 777425493 488851610 662657344 769111037 917278188 830805221 869680828 407978694 864535902 369946809 665448201 664497250 723082152 548001655 606262292 918606199 977863205 255322925 843252683 366805066 966960651 588712154 704368205 857998144 878054396 172734522 267714079 932823647 938703062 617684488 940141952 669747282 889648815 456091423 540216706 54340297 354376620 971793395 973740643 745094129 796246189 225641377 797278122 313203779 850778704 740786551 867542241 454274129 892162117 122572995 971286201 349365871 790853437 5608427 711019343 486428043 756977291 353773210 372820734 765495924 945378094 959717370 971808228 958347407 986714792 540292206 787397077 280293974 893032689 674302136 905442392 955505007 959910598 691948345 863809583 198191355 775969613 8235687 220751443 213657749 269891079 399903915 778421595 246649637 247443420 233284882 593260213 753036975 766494829 255176688 539309227 893165943 973131375 611195710 731109413 390683298 755278118 621474582 857694659 799395062 971776216 387530938 404653916 232159606 662224063 128768692 364586695 452093393 899912420 634449644 775159776 342208559 947202325 864163220 923937132 368237245 585483423 34530019 148430505 267964533 778183089 349467764 506527055 170849469 692052249 104552626 433455733 298639753 343323386 625121789 848026779 730404438 893163520 288966302 369786803 509388195 727695317 225691053 846435923 875126696 923390039 441374805 502117402 631907389 772172369 581694382 757890781 862905653 951999450 653641272 841057642 459010457 629282524 851493764 983503232 692842185 981092885 778000325 914228123 992087717 997577661 867225441 952418748 780017069 805881134 658394910 800419253 834216881 958165957 120148453 914249212 479364372 516566025 160250863 170857340 529860678 771294200 803428859 895604187 735363273 776378652 305870105 904484166 138024573 906550244 732866346 798655279 962202603 985781851 864007136 935054148 40218624 761208167 424162949 576754158 101886371 183807719 23150251 857124908 40068913 852453941 149105489 359574745 512149310 788075895 352815742 364949834 139443159 463887366 579190524 925558631 518986878 575886756 629772018 795607739 76175115 492540144 311653457 320211484 528611698 577094364 838392539 868221881 853843847 878828018 844953933 942535514 58774456 243977627 763642483 933391612 76204143 212246531 756268536 921545002 865866170 958350126 16922541 425249173 684059602 739852361 679954309 936655078 270636976 486154853 189050476 890012919 549424640 987075905 229761817 572514717 644517153 679393220 896442042 942457159 98875010 867214732 810756490 967998051 132710477 676823312 27586619 971401006 750993307 812202576 391863577 742742108 94045564 506271236 775262147 877639729 662657191 801096444 683404273 902880201 308487424 882995600 403461681 738544768 511496292 794707091 287293689 557401588 692144393 825844762 169689088 421236939 158556922 629147994 355793934 529050168 980501068 995922791 342052695 987926630 855557022 916075564 885190424 910981120 343860391 620461313 409745123 595641467 945380768 981559878 260565453 367016737 40684611 826272698 109656126 658199650 541089858 849719114 895446635 997825183 23055242 357085849 478882763 637663801 124985093 826026940 111837273 163311950 176959811 967859161 532211473 883326796 17255011 335914653 35520498 697972219 226950534 984627207 645509171 646702445 759024554 952177736 7286560 545586423 747927756 988480270 346891717 959797031 82883635 244833331 548770472 629229233 363093659 632188863 545790187 725211410 605320683 944453477 950505821 955425053 418084205 616418385 361636735 507008742 556041229 961173636 284298795 813191624 342491536 412859672 645267585 934903078 586638407 846254101 436585883 960182607 482196241 504484704 201393747 502872283 963347896 980691185 759307224 878815615 564487712 645356042 425232913 608607842 978383671 997468615 435681853 744516709 788326290 895342246 265469409 460548072 179841971 539972250 396170780 959390741 109079063 589556533 453222975 978523966 500313264 928487354 783172204 969913950 106226206 468529335 39822268 549194927 349556014 627783266 355498964 926006678 254066739 999861761 528633371 830990033 632647026 810275516 605892521 709569749 13931445 363988135 43101818 958961922 844672476 993899923 309695114 369981919 320123337 624302691 454600047 709933843 516243209 626429684 376569194 407667584 265424400 809666403 615808501 975868160 990476395 990679231 826220245 894270897 739973617 781572254 209090289 625950474 459846349 491610872 978859719 994664309 338891366 435629405 828233194 973745481 429466241 492897761 757035828 760032519 572961027 859829025 858355291 949411493 593195098 932419442 340272238 391732701 452735054 967656775 726403250 835307023 462432688 959096484 464929712 670952175 899806925 959314222 843410095 919110926 505387761 627595702 402609856 851610268 279231559 393668641 827326918 944395775 605506154 846805831 17039185 124918570 671134501 817109224 796307842 928099861 571727375 923308894 809842022 936370353 715150271 801062366 459295497 713930507 330662214 679401937 213668084 625495304 493121754 688202825 716011107 946832381 181063920 710546567 368351214 610713075 438602848 944177601 201122113 242160877 41453130 245791647 473449726 946529694 386104052 604084249 857561977 873764719 421759249 646371810 122635909 540730981 386260352 648740441 624201312 720005747 993007672 999919043 949798743 972277088 530136003 738734800 620590126 880828012 745745482 816100903 34119795 273309358 338157808 839781737 591723911 975937990 339567711 653238440 310082598 662966613 238277700 745823611 799981347 972133320 436998245 630181838 400803908 759158875 255329100 708826527 782187005 858153840 958724192 959542095 281511468 933419757 176579725 792233838 148057271 295134331 154700721 176218732 328457847 939751494 944325595 957239932 640533661 870721212 496720930 559761895 957726669 980910342 935355401 942766625 260868844 827850631 237205804 550856069 766512992 870826814 976119206 981158771 227036669 543969026 607403549 658230490 987920210 991147368 981256695 987986048 597463823 730120802 843833530 894634949 996533895 997337483 867854444 879662681 91573463 635923345 373069608 873748913 664525960 905313537 183932583 642825682 283243287 387198923 727764365 910636956 768240058 849805459 206377837 418741273 683783591 921260402 476122756 857333151 947637349 987295121 948965454 962487593 462730769 551629774 727741027 872553182 121968556 414104046 742811939 816335477 410678713 451595691 635821773 957471467 835511186 991543551 524751393 708108825 19587317 541433475 583328370 653533997 901744543 976579711 259007084 260820311 521027684 724214533 288039102 449350694 817112209 818963692 275532599 874271781 568975422 852861208 886188077 992531049 327336772 385539278 151413762 689833434 83002818 273199015 94433123 117248199 647442 324974296 587357254 667425746 575946278 799230146 253237984 400891286 759178214 890535314 588390216 635144944 714286420 921452453 455593873 732346313 296595348 382300335 706376683 873065331 271134794 961111088 672641821 709108675 664924514 697075103 405389918 959212323 165017664 732241323 968810420 987044416 273473598 997656132 241959542 469143889 373509178 670361617 59789277 890131606 233548402 456400880 468429050 734812354 123653015 469790987 623347447 675794501 299412210 920379083 226900988 432503608 936020505 994593890 808988788 864249351 919040224 975486624 469780754 781301293 6189426 617566288 680356006 779468588 283286174 570558980 24645567 711666857 966247965 971463691 60530754 117729868 859478658 962049611 612131994 988514138 103037116 739185566 204087608 786559576 847860561 982371643 246072022 933398953 104069349 380025503 942473296 980648338 535860780 542674509 106590730 378790070 15759998 934095495 665969196 741657288 710483222 768345977 397307596 890207894 167073492 265242667 34445147 114706881 993104233 996319101 317798609 914684402 558007037 929687463 760062774 972923781 738254303 943180800 651650150 823126087 698245558 809229638 585016994 920426317 306771084 507140834 357115308 594228126 12750607 379879139 553476112 753401919 908999205 951457881 303061139 818332812 152409724 895254176 894122389 970386289 561385110 762951471 40870881 102726599 738372121 816615046 315553041 739985429 193503660 445551577 410542567 781984871 175453351 370322522 879982609 951547622 657094795 859119678 502451126 851649591 156225079 705921148 848849532 883963182 451541582 495207022 43415632 671253264 132524615 511214126 783311037 983073365 161656065 250182226 13355538 844363383 472468770 688115200 160291866 376493432 420905201 911916322 143140313 921982485 605259867 845851587 283082075 367567657 445049553 581026525 399539397 977903316 692459489 793221717 33399988 89347296 313375071 879426878 689156619 771747174 252378005 890460999 151171693 347162055 585020834 605057081 271995785 529894563 365062261 698221713 11543377 765566231 964363992 994273598 407607440 673428441 434723300 569817759 612220690 631362894 529310059 963515698 343521574 955145624 381558376 855014116 766166006 933631305 106304839 228033126 922288973 997891958 117828029 577477400 398736581 576382382 281307595 973193985 822204071 863131001 584512066 765267564 858958734 913125605 596333434 936648739 24986213 220469939 772428572 844257790 442101022 541733144 522527669 583357912 667823189 876175880 949540866 966676944 775505074 837409980 475188157 855105534 339292654 368863170 147649693 330755035 221639850 269584728 798034039 910643584 534408878 962121147 610517007 612016346 673380478 783447233 347978649 918733076 783428060 962422526 583210387 786675357 634659824 720458594 672995111 840785571 686825364 790599355 885132718 911212146 105407545 491143868 713490667 758071700 743000753 749115297 689766859 756682630 546021940 833774614 42276738 144431087 254442004 705672890 336547512 340044137 271447476 783732351 202817026 667439607 569392025 840227649 641747765 941369491 145153823 280663956 781042653 826639458 988147706 995915851 564312819 986983357 507336515 731631004 216384235 871688797 43498375 136008300 75299852 873516565 596213909 899743556 590391394 996812201 125393676 851861831 105992819 831682101 773674201 931020787 116929152 373537456 60992665 166745923 521477131 759135473 578805347 767458960 442995643 631422769 365439864 744966863 378684070 415235027 412840383 578289079 150852106 816965523 43601793 298929813 745021596 771868830 991925832 994131142 535286129 717801776 446776255 860358408 458919844 887725383 637013749 934203960 749010658 901041658 651858013 740341363 240262962 841469180 450411938 589372241 437223834 525720913 261307431 717256420 413937000 721013376 664671951 849338094 279828341 925908691 194613339 636566072 594824719 706520302 810491880 858908032 951008726 985414728 700602569 865862486 241286881 878092555 338114617 647887585 719268398 974295662 155716407 700276276 91711364 404003618 473066677 535677311 88572471 759127022 328713398 449347573 509531687 772619591 606357764 689747188 320801891 363705807 789085152 826273111 768051858 836778388 395481166 812124291 135541252 400685111 986026135 993711531 81819955 123284765 179192691 643933238 548353882 957840596 260718722 809253492 767273970 934969975 114339179 569492806 515326059 586241263 479736308 821316049 489264040 652164891 565282615 597910598 40137400 542420291 548138356 991721501 97746193 784093789 668263129 673717686 788214473 825748657 296201612 803879194 233235042 496966402 547010055 733754252 998770824 999024273 426953198 933648839 494275937 987840271 379458759 814214375 398136934 935209697 599946276 918590289 242675633 384897209 283637521 946901876 629997623 636064502 854680258 973216762 705877087 965746137 396300933 658583628 791942769 858173433 140333115 576026899 929367993 951383728 971123594 997084504 869552769 960592945 768342101 907759297 330806010 351495288 934141586 976880785 398435948 993807949 727669955 809316816 84907534 746698342 115987930 590680082 727006231 853300162 800572622 862880435 592831765 629112766 807947692 919847278 896347157 917504688 237006816 598355804 970082705 986770548 857660169 921096701 256064553 268157453 646900392 734947135 705442524 888144120 200806409 822554221 909774571 915967338 815766202 826325807 981947923 982970472 469618892 845806446 702823730 717165739 712650477 770523857 809898524 864110547 249294284 430860775 581041521 826323531 977711923 978062829 114808752 560648873 805307841 841450378 96027122 993267961 867376406 924639880 164880492 353992111 232116230 544614257 448531208 604599819 825781776 988569917 61631433 483455507 374681612 972777187 379589128 463001197 963558610 985047145 976792522 997018426 558013818 626857466 526107332 580866140 748334067 909628507 356749574 406411070 217251559 572080164 102136831 845768962 973281983 979170162 547923731 567575397 986407577 988119289 19685036 412088853 903909371 913730368 535327436 546524582 738315348 935729509 373918121 714150738 321445936 443042174 780379665 893522889 105683168 339130378 243503449 717584906 245472299 980400590 882402224 921135447 657791828 679999687 871067702 899177758 436586705 549637292 812354714 962197980 442184829 553303507 339990053 625695106 449149505 490859989 867690312 984806821 143507830 430882771 941786473 983882415 689459244 749316423 648967664 743807788 540500091 868866366 452975322 682605992 154936420 765789286 237825892 751627220 770734715 999679443 785378198 892422567 920376745 960920132 538986119 628824022 499420760 913961593 76753898 542228722 209126167 490390847 82805994 112084285 263502174 789095104 175225304 362128069 187222065 332827411 720512846 752162546 527343925 811640063 1578713 321350065 568716330 631286281 802747457 980396289 858459880 906429229 913023345 985069907 525939196 713930782 925375084 973176772 542938801 975644842 625905902 722332079 54377274 547509165 572343451 833802131 115397614 880556626 933699217 967086678 707630438 913136427 999571723 999871433 172974603 792870426 340133204 351086483 480218632 807242242 599338082 786748797 904743335 974020464 986149675 993198403 957454845 983783581 509422146 609282362 473519475 525851511 922486092 960082475 943651387 994969123 173071817 780444137 676013382 891564498 810763724 955628827 887343768 979161384 412011405 925708186 13257329 961577842 291118794 760803218 490330631 535038220 87101411 324136340 930770677 982574577 486551793 495842989 605383499 875140902 278727439 307204247 882767258 980986847 42847436 485940436 134950654 214705369 345519507 871505399 937458082 995004862 845504724 908988503 383208113 564195016 255138753 737315120 834195997 947009232 908382295 922562881 466154534 765930739 59142974 557335167 138716533 606003348 146286637 171073031 157901106 851334523 21009247 616933358 572250194 745009082 518728076 531576162 83293374 246460101 445414633 890087178 179016914 270714350 547920516 679794866 420977549 710468932 460141452 979439070 632953740 897395640 775814812 886614347 29256131 749177210 18890375 479356483 484139123 859261513 599555853 951637331 286121923 422782700 206050959 531445689 960555801 985961483 536635348 969189587 278645342 967571018 960975987 995676011 714572653 958115092 352043312 565041000 814587706 825651936 248453127 962039803 298506843 621469128 883621520 931348422 936319758 975634650 106748192 561360299 172091661 851924332 246995584 439712767 641264707 663344699 826606529 852536822 486871499 973401454 16656833 516430857 4349973 281503155 992956493 999629092 185582984 373445009 118409215 609024765 810522452 827363771 996634531 998031041 396672877 983260986 493406812 615921999 800949348 843142599 587806950 741741727 664972605 977069023 181711070 940584892 117942495 299638856 258920198 749611080 499612117 817319820 3008297 949204526 297251574 735394010 876784938 966823474 614731537 753344164 284310773 938218696 781559858 910114999 985002337 985906358 747163937 885685672 189828766 431767399 33330122 722155035 442982381 754609048 492783392 553085208 796823438 944312780 925255918 930163351 205349470 448740649 127117445 863024932 803013103 841854372 533356982 814783619 728399078 908447399 264216324 652602785 668433683 835758662 931039401 983596189 225010460 570615967 71162683 645170008 471190235 549425813 237285377 610197454 480932639 620267866 51132572 61824115 248800461 787315999 967826746 993420470 194315255 588196671 356098419 868833580 543486093 773126786 918825148 967401780 852433786 914288790 335181904 993652568 655184056 780461509 791875311 956369140 495071765 571369427 513378110 968148023 501971852 707253919 978284855 996036119 703784745 847127918 849230529 863613489 160180869 545466180 102419989 710615572 488663766 551065246 430057922 516089349 290087258 383399596 18337124 210239132 404381542 926980631 359018291 853689835 206832805 325800108 330760224 484648369 22466371 692514241 724287931 778706243 864942064 892153653 286019244 487769044 967578785 978610994 958818957 971170947 757522006 782278194 438115877 519803053 342359551 899887338 922487125 951664171 383241642 748005956 258038883 731607698 303025512 660266674 377921540 578754503 459601321 649365432 371581802 512317739 349813156 448190379 527575898 849498205 573651127 677231130 662523793 966996074 27766735 459790459 79902346 364427659 417173053 794470185 678153254 842373177 688925700 975010359 37570633 116217068 978677516 982811756 801136 249968186 950531705 951106986 804932314 968520581 787118252 798645940 142046694 996735016 833441342 921053526 660480980 810649777 906862286 922476999 675341671 680823369 770879292 791080781 340094412 542737683 902780825 948592899 513066468 935434207 116522780 234444195 241504205 368144391 12323706 697786066 494141492 606067536 438913256 557654629 201421446 405318173 599371664 771824476 585936083 670815711 875091166 903535516 958471060 973498223 795651815 910460216 518236686 952322119 345843723 880013753 231897701 802503403 949868057 975258162 645768446 892561998 212776343 937094160 358126920 626403872 253025791 948604123 425219703 710707865 337439993 949479749 104763565 427816463 433635336 805550413 166121986 190764185 922287505 993970323 107456552 792952405 295597537 374668814 848115144 880394193 169571285 552030485 576203058 930308887 449803265 683902198 130426034 227332463 576260183 820282753 230803235 585192483 405129515 796727048 995894269 996767119 91632011 266141767 401427131 919126365 520043656 991450980 664313442 679117784 365718839 587453485 730612041 945308759 233551303 619171608 530501606 721320442 34906721 788617111 369073898 990602722 422745241 881072454 996781719 997482345 208493345 766902760 561136280 839029979 505305666 963641036 382925003 902332390 680652556 887793111 859821247 859959689 800604086 850399362 584948858 923398006 75770425 414707089 856642523 980555881 638428185 957985758 586756000 897074156 156137113 691187547 279422856 458417320 379581248 512465222 850152299 966596401 73821416 907934054 122656690 200638678 682782428 860196935 488584725 688940620 735600569 953288256 386268822 595409513 751613258 813658832 689692075 918731482 275970163 366867077 489983454 947206059 352186943 834530817 755713812 856611898 155310999 408915066 656281910 728570517 379160529 838758105 126757290 151744531 976654366 983286991 187122761 731161925 936931628 948584709 549178814 968345302 222848481 733603670 645262034 815586847 259165515 977358620 841343729 968813766 39028261 761587721 281899784 475800088 922597269 964501304 157382016 728935902 439815286 468429576 463661091 675519685 519556974 853230071 448204742 536267926 791568062 888018252 85262967 342550070 798064820 991310426 784142543 896831868 736527255 994157444 286769901 293303831 487782468 730232531 579105858 918649335 233842908 438616217 264081806 642976382 444633781 915995034 701230554 778754598 322526391 558011612 366709920 369697843 142007420 885766182 262189537 919920129 512118800 597447615 696546962 883995286 566650710 975197532 754640561 769700727 169800816 793249223 184056046 659500149 815298629 883787656 711320835 999441171 171119111 473859510 871963778 944831304 847632929 959165806 10223261 620335200 493816301 537880229 636512501 728122871 914961102 996989741 100599320 598838749 133090854 535915988 712221171 717830607 994016626 998260946 218336464 980858231 831604524 902835836 782860569 820464310 506342351 692497123 655964978 751921720 894134824 910263967 567004606 744978976 311815077 711390319 377917549 422420979 752757751 921143514 186869085 282519251 520138577 664284603 255693255 631948340 838845612 941510187 896595914 951865527 155808565 299122531 486381080 664716139 899428763 905105639 253188367 425599524 253759989 744877896 884240890 964024371 977229771 981467646 194547715 207223599 393729211 826811853 724747206 778783068 935092682 945321782 547909552 836864808 998619518 999189889 746210116 905853303 781825918 983331490 733971009 817815878 994073801 994609789 901527168 976248893 989947278 995679596 691034438 992269378 747397228 951697028 952067263 998749570 28860121 384887502 842470671 985626066 151993815 891417380 187820072 540901974 36728230 340803633 940699198 941276670 18924189 75663228 891613208 976403390 502364334 952349429 771652752 978899133 475230335 877674269 96730894 871166709 612092002 886606099 186057436 388586884 121842957 375083212 394648975 588487765 628578858 669124052 917160169 925247499 478863751 915387457 544392965 908955464 23901102 858421505 169790306 825289263 482096410 865221253 515648029 702811218 655032729 671110805 588608769 916374385 773126020 846475478 174415927 534010249 861422209 905221564 377751792 394728318 464676730 882275626 855247630 886623361 174787297 191489935 164371865 523238889 755659294 947415820 954033867 984331386 691582487 868520065 235094212 288218764 657648977 864740783 902799032 960280770 212539725 722790732 493759304 634768778 196569261 805562415 842981373 915254172 73415654 212858672 613170545 939779562 390418561 491227970 282504265 444933297 961398461 970279243 898313514 950070881 80480956 415202707 586418091 623033755 854700754 938471107 56389905 585162576 428811960 686386248 678859000 684531626 274588859 348273585 834208299 893881593 314632611 988730016 77933953 889210768 988661379 989374032 91602155 518517149 239533165 995182004 191448762 690873128 369847904 830139214 527047030 565450032 914141774 999558371 363140668 816133963 439306460 661189342 163835214 678139652 64120649 258648496 762883865 858778896 2355326 149086696 107894658 302438990 279803000 346080831 16962781 711133420 946192414 972046431 56853579 359741454 947302896 948295676 205182484 782660631 278535868 654369000 704993186 797568119 539450248 864329280 878613094 921710151 485479373 845247805 536836500 916617686 447924712 606966374 130305798 801946755 120430219 335209994 435569525 532032762 85523196 783292170 155092831 289884407 569144342 884769225 620570161 852237332 126179203 584948846 796727890 837349921 835287585 874885377 226059416 739296189 678902645 721766966 137515255 387228772 170856423 895646172 733790547 761940443 207002296 407796207 961057117 979479203 232478285 797712791 996727556 997463406 648393480 854066311 188636335 963872275 726413660 819499449 687848163 981779089 39252933 898156538 723602538 735552980 78170190 622356196 334268191 942975038 134513215 189029016 660657544 719325656 955563436 963717547 684067404 924833540 265674689 327774858 941874133 945721822 242826592 620303326 694423342 840626585 95715839 397961162 793333638 934699853 912345515 934008269 326983772 920724594 991514526 996401414 149073966 491463041 149308502 338165064 476292571 796923633 232937522 853408844 657005688 802298225 876544982 999434002 677915225 951877384 268898430 859873335 178198288 467551948 826156867 906964649 527222414 737868523 900604652 931926583 486811751 654765840 671400806 771955269 33667415 795257939 221024503 290315906 916141695 957781461 966234741 972549776 848273783 917623387 19619581 900939664 698606687 801450830 78554654 727515252 419785238 495885540 838458388 923031400 414901125 625492266 37870117 599847529 662603860 922190530 782777516 826058966 384416029 819447340 727724233 928697233 966021052 998915844 395715917 404705910 675617511 837200835 799256242 881880209 135378748 821547727 930354402 939531572 824502347 876567424 939516030 942683661 878260519 964042600 123875421 445375074 180255277 743377399 950243105 965544400 934044030 986524674 26095361 339911094 393354409 968727390 415742234 823570417 509941477 519149371 941237700 958906209 706773174 935923984 167353931 665382590 786062472 965681361 663997022 703668096 519081882 932850443 529047624 714505117 452876642 591133064 775967777 818310546 110621745 310634517 234716825 518532230 871706988 904946699 349821634 451211292 442979103 637470763 965022441 980237804 880366395 907426890 865863730 930338963 11368218 938513527 512381728 544173602 752279483 969783252 286241558 318265765 949844946 970171606 345008316 741703701 216887378 294988173 369783328 730781778 711626511 725590867 220219695 328186982 855681743 866667432 633706816 649295973 222240011 660211478 858223894 901366264 256346114 713975427 518733156 886245265 808239780 830572370 449537420 905382879 970434889 999592146 891796280 898834564 424065257 493534089 916041561 994397238 547243440 625554306 696780941 763135072 459851638 734453167 462896547 761297933 833374079 947308661 413962436 561451164 419444003 571960594 76785148 718458662 287475920 448436954 206732628 410024567 179407406 708273193 38338337 478385325 80892042 739293005 216541267 236338569 816861507 911742693 507669685 998362455 127002937 139213956 921382664 926698355 443610243 606220987 496502618 895397196 984483567 988224512 771289978 827156293 276648843 704509745 888918893 948037925 546689636 860209598 537531676 605401724 725257192 822099255 601139176 603056570 704470648 962815079 593737210 624113211 588779826 954999432 58639575 282087998 165286842 855997710 654696414 697673329 447600516 497100787 694626710 726736213 132257513 830201443 9665860 852857289 449513351 828664118 535021689 917292889 24288470 825998910 347598665 789650003 539970331 918786139 690862590 836394196 20958241 977690816 719674544 793218205 139227305 804980378 881407224 964052888 599598445 900633838 81299666 684218942 471831935 670232761 815792285 932889578 617406933 917740087 382108906 781019244 308446461 970979888 446615421 930008743 369912949 379195106 388595651 671383673 388930923 607992346 459834037 600200521 279071727 739186309 488511365 568375129 71230579 795218400 746530251 762828642 870499626 983478372 417851268 538720587 641106639 902347906 367593765 651519566 687279842 759790440 982336044 986367220 856560734 894451661 78378040 253960539 257420651 437274351 653018590 743996561 215708295 673214802 534826100 764363693 973979699 997450836 112472915 382602779 709436092 905600374 261973784 285172858 748806077 946564097 230817131 666185087 980115282 996171835 231518818 675982560 569443246 868477192 684233064 741070366 884159286 995658786 407247841 560403077 309009088 733935662 754571983 843941128 804851093 991626294 304418155 621980984 467177531 941731808 612462108 677157889 344575319 747953807 261325576 611247067 260651567 942960279 444105724 704290513 386478307 564020923 824506420 980546097 961951794 987605731 302892170 559399843 50524172 770936860 128452589 237002077 958026634 959751059 71512344 388643338 677493888 842574878 445728735 738685538 662525084 789998851 167240306 960415394 130155222 267652283 231508366 323301064 221848811 609144828 640995814 672687093 92741657 363769374 622256709 665488711 103179509 514858212 960553978 977567847 851530548 928255109 170375252 185970850 868389033 993352087 941587939 966895715 266102308 889860082 395763225 865111608 320906192 324322565 619250071 880968012 945997358 983308485 846163905 959562436 726094300 732973666 219690824 244035136 549341290 747736678 155240041 916297736 385854698 791827631 548541205 866331486 76278421 809404021 919022544 966178258 826983163 842253393 464847840 587380495 941493616 950244991 144088220 894428120 989411316 996863277 831567080 868240783 297910782 363421414 125560254 772114725 330805306 806076244 314169560 900625707 170380294 708619678 348524941 893879422 792619979 863745127 201729258 321738750 255991226 779663060 72127835 400950438 557943233 643596268 899654021 957191498 869454811 971871899 760987557 822902196 838775236 848875648 53226185 837224816 488098929 688057371 585645138 813803779 45377855 720696364 484266961 888257172 345066076 887876564 513974370 592782330 297165746 655442923 297725325 735028176 71727732 185593758 506710967 672815608 542380307 905917841 348750798 577569283 356263406 963130243 227823105 382681235 518495648 730044999 8744955 293316488 850197498 854170796 875065172 990561119 927694663 965733107 666811842 939349122 686585270 969701811 102089901 540365117 904789707 980554804 608182291 948459015 766611733 985108885 882888981 969310486 514024106 557877323 788166984 835721696 725950129 839499281 386375901 908922096 763154620 983502651 126790425 483249084 898376977 917571368 559340909 869212459 753776858 802342182 360293165 602434515 492290888 998687070 704483866 996352841 429675549 653259487 707198501 923143696 31429606 113027100 544029732 845991962 688069409 818798509 301527142 424305149 582528238 722694994 984775208 990910437 120819832 761297551 731232343 988831204 128281803 453233500 997960758 999035995 596908079 952431911 297945911 937436787 416805315 769406952 764114247 989208374 702651511 849281843 78195544 982367314 559603469 922521886 38018340 160421475 634332407 872976256 657906401 853450820 933078697 998484036 830845503 918352643 660637937 704897046 950688448 969114994 808279149 932710256 226661653 398817291 69798335 559202577 791930450 985295770 11753460 928889487 202694077 424443842 310719448 786341219 433664382 722878227 754803389 967166715 583358929 875074951 401094148 981544326 507485647 953060264 566937681 750448895 485570562 937917234 400649339 827172407 133429977 631265485 288982238 514391291 583918474 818787398 580449111 975912072 643318910 841860860 112443085 938450398 661627032 952240202 330708191 427071183 99929405 752763331 766548727 771540176 499015937 546636816 754811683 836347396 40543420 286286616 149499739 491902674 879801561 995851121 902420035 986105916 558219493 964271568 839344145 933222368 178152698 608063522 304572551 570955518 493617006 867355784 556138040 623774272 70921733 882035039 392415677 879958300 498819376 798245786 32935739 967599013 226787522 296500136 883523911 978068449 314115577 403389289 194313466 376676025 197239574 814554214 28018832 729935155 787396003 874437097 101899378 350625148 7095889 615618275 192279028 955415257 223716999 916493969 337919907 980452134 31971546 523223890 536500457 970708512 111603921 841896268 281256051 582634623 788379738 865004723 301022252 861528168 588678344 699605144 963186046 992086665 526692175 760258618 548246418 599841070 72617784 287539122 228169159 613629538 621223139 647399950 103828993 633105318 712063438 989540009 634553439 726162834 72351357 870994642 582611872 636355485 661018908 795627176 860465925 910570743 509903993 580536873 459095750 958268718 779541795 852356198 975642626 977193874 151441945 366400142 773315883 877720635 459878277 935361064 334104644 642843435 449912701 977610004 451744118 997208596 851105951 991505557 42679570 687090579 8509208 370801067 851608137 857031974 75430223 842355274 937407367 962208117 414123354 767036370 190314667 976281361 985667123 996270803 621125937 917315862 891569630 893500304 811939293 993082774 138034685 360588959 601484656 958215768 682103328 900224794 799692326 901677000 265496516 926068174 955960192 957905458 265359162 511143512 702200728 879414299 896407369 986550004 69960985 345020094 723284411 982442535 360521516 502705107 887478255 978467426 426576682 529412436 772486958 803761360 634216740 734699778 176347986 254158824 366095522 882509240 908293903 963318715 787063782 909657645 856727461 992972262 854065344 975039044 473355959 940806604 852718084 938233817 102151367 359881369 869402640 906100747 824197748 871077018 943232385 976445331 701272945 820951042 44183878 73311700 962884907 984975974 969418550 979880371 520527157 694892194 884623463 983394470 107753873 381191659 703614596 967189085 608257493 680214238 334690773 400712424 292939360 993279431 344523463 379003139 494293154 736810522 238205206 718576601 171976534 879093676 366330135 928699963 315352172 825798813 810920292 812486969 451084834 920135555 832145230 931804585 138882935 784819067 121663558 683140710 112577260 723262831 82902457 676302949 227292463 678727762 476739721 797060936 13160652 178673490 94868238 734602392 993794313 995314486 506867490 925845288 595368097 715744539 23527690 150917022 694743884 728673924 909577541 976487737 393246735 836099137 90342796 264930326 224304649 684247560 538168615 594439304 392792528 750456624 280723595 357683032 996965832 999192269 224941776 523005077 936222886 981552902 705814892 923222124 990834542 993913671 364726253 798829878 754115791 805150752 700822346 825519735 59539272 323344495 265308396 882036040 992187537 998384539 374930296 965083980 788091837 797289446 487479190 793499832 498542223 685509660 659927277 673579947 715410500 838172332 414037350 468537503 419183515 738176054 213339498 243157397 154975919 966722294 56503457 379185161 641492982 910878617 447199133 595746856 736481657 835343442 245051795 372273254 358420104 561136102 587047418 644606403 234465220 577475152 958696386 961733666 563557625 839442265 516996343 921145459 967015855 978420530 875175971 917041111 465242346 968970149 159680406 719606597 353733230 364228367 903213070 962433309 592208881 636002671 344547239 454459975 841885369 897940972 805086216 969240766 86734582 826599241 864976982 916293894 844528497 940579896 258490498 949636647 521094842 882690623 875956207 960255026 647801900 819212498 446270845 767528606 896483090 982776920 954923694 985167471 53282147 839710158 444654685 871796129 895829401 939002214 382674136 418177946 627425816 807686470 953605043 966726896 722322058 865404851 745336455 911081072 875391930 953433774 104852251 436142136 349272973 369300847 345456723 686328558 433955407 887675072 198350323 392251923 983767012 984271369 704516293 950352319 719563600 939348340 286865116 900345102 170095848 672047162 694004713 780447608 863991755 949639132 517250133 740946291 756741676 841747818 820968935 950377417 972075535 979084181 969764719 971233006 644014813 814487414 8240298 322666013 595329220 879323662 178243117 467113051 916098909 988020508 847170739 898567859 657289788 733497487 864528475 984213314 280838149 870238932 214236854 512905044 301515022 868842259 377453750 507250813 176846138 477738411 595511266 967314940 196471522 800415411 573794222 865416333 476652468 764409961 566775576 699787104 990780810 994205647 780896250 929632933 583143546 666320279 289912334 420108300 477314604 513283410 227718849 628056752 543056214 963687850 231478003 733971756 228943941 928491268 386497267 531569464 644293207 974013777 570431027 777402759 471171682 952922897 198281928 769084672 465048377 491163559 892349340 955056793 674850766 886039977 757802147 934553850 767236410 885350441 1239739 974264184 322089020 942114852 893022493 987497563 43336142 421438403 86373500 278607337 363383702 406143722 563041419 593084050 865495738 891926794 766776811 976308281 25113674 773906049 655002850 878386572 662284909 713304674 235336147 432627789 948261270 991408596 952383921 988568562 105044225 572794720 149404622 622580180 566098489 931535233 717642770 729831316 645445335 670090231 285604500 847348930 790935455 960196742 173802195 485282034 94198407 184974225 639858509 984432706 880862307 950180623 390430316 686259779 566097491 773047467 360099806 642725139 591258011 898188728 262597741 924811053 463335009 559803242 731646256 957553675 689784952 952012542 649709484 713789588 757740034 828651207 879312321 891593038 425855456 910370803 209583644 598784908 118915092 428710053 860985411 918818045 770210802 791534469 115628385 967564567 662635044 666900275 86242647 384131140 750743042 923376918 755039476 809206025 84488095 738550226 486226656 562186373 715891338 800515984 659241782 881724005 3941972 317711795 98115835 403194040 186706288 780126682 52609116 428821645 618676906 624114607 263024248 866152825 468746376 482135718 774455001 967787751 878113258 941692454 4763413 408007927 789269966 799434638 706310136 943866016 432779877 825287624 979828994 982336518 343321579 550284082 371977144 414041640 745499927 767085101 531995185 710717239 321274307 881941975 623282205 956506380 501524618 643354145 796017474 989230198 585760656 617327395 243995819 925330082 943407826 995344537 197841064 950012034 547843048 636865990 438740579 753268798 829962243 843934401 914893739 968938326 248282324 926721312 187832770 476233527 561979258 940083450 375525379 590319871 720865298 839021106 587031777 742781857 629209307 650240784 771704010 820108865 269084837 606931412 300314644 597413103 51411094 937692009 341360506 794413083 159278055 476993447 346905758 633628257 608983726 707182844 636509290 886315118 605373162 714438608 891340929 971806999 57951789 261087791 482027325 812836550 372477093 652654724 363958844 995753154 650517688 839322674 672397255 954834719 443605830 618865871 43412868 580372790 459361966 970703977 927306297 973110712 523092978 829862800 617406465 906017931 762501991 913336048 384543731 619767214 559677368 856049065 636705201 959511617 843146010 920466165 396795136 671097915 679538115 693777581 854642756 946991308 288794459 493806984 959855567 999894161 972354735 982140700 187408796 255563702 784122018 910934159 766172442 960455915 63633937 210327815 24944256 999907277 488611484 544695713 316712799 404692130 284246936 457910188 703949760 780254185 271735521 973243464 597177515 645751338 920962909 922765273 384238451 528249660 80354892 291004190 493910730 843419945 179135933 401397370 949960740 983144549 500972807 696948887 965914475 981501268 988322457 994614141 44449750 189472761 899455080 933403013 299248335 857979915 129569249 659722150 789967724 900856528 673434988 894281034 455939775 723832265 309408936 990624098 268396808 569404396 664221824 782003259 664837862 939592987 320061903 495066262 778213302 791728544 277955189 455228516 174907322 497417297 964270081 989638705 464611677 865288990 601441405 983099421 719829700 963815921 8942603 86740670 434754917 537131218 190829768 293057282 109572500 576024270 154624942 430373670 771576101 824022543 381761150 528920925 517332075 757141265 769668896 782270902 56403255 422656083 475200516 729723076 384616646 720486762 40197992 370088562 313770788 524576668 709287328 932551320 651704439 686592286 905858742 907659022 122734148 299929368 251863642 321252045 979133765 979814646 282763652 291934514 478898379 787607900 829204708 969968394 554137916 931541313 327829305 986160316 529398026 873969217 888797728 918650633 840159034 931395335 542413514 797704250 116355142 390436306 618485564 705853736 439543125 620316501 830962718 966881916 786262648 978267582 28302201 965925498 702363773 963512378 790044933 902905992 538440318 821302782 631964367 752316986 628073133 689540868 32766566 793419428 2386418 56391856 66836363 616563903 875951217 977600610 857083590 895880106 101037831 713115865 767398232 855947356 361103682 809575945 425875268 753348821 617220925 785617801 517739596 600807294 596484979 789216811 484559975 927925024 95454111 587395811 857306071 896366785 579600542 776294684 326920166 401012271 912287474 920888790 560004943 864800423 689860432 834762205 738394451 801600551 396511216 666627413 138272718 417249110 906365305 935914772 534191488 782731620 180370640 814772420 89377021 893215882 566865960 958254655 108306850 699320490 240422332 574596753 458635000 470882755 452234837 573106051 250424010 378128240 768930944 976354298 166678799 791470446 813390708 945274981 380036696 674157311 393320340 783831294 291479074 929360390 869356908 973825773 589455387 683857531 379452143 962504935 812810466 936560020 159672086 401238260 594919883 781187743 666370063 709218057 497405986 867071629 556999999 687335050 379648587 928139153 648980496 870507903 484038263 921289504 937957899 964016143 302851678 623157547 925859688 935554956 812433280 951081346 743383784 747291268 459380419 999443116 336554330 541011293 515383375 563156438 714050094 935803673 613671639 845960075 758363275 963248905 317902699 944902652 643956798 851962585 527096947 535073576 61093461 923694783 521826688 794637095 653943234 983117307 855211906 957181109 538300271 589976766 53390684 357402639 512878411 549471209 367988845 701516828 158130315 562075978 442013755 532907284 165065103 853867147 186688389 908060231 427220193 786345763 815615351 954263416 545563125 848703852 183831046 742674115 3367293 277471939 639534053 657398466 898967890 903281886 993120756 998864460 741980418 755983163 790558466 868320386 545142912 841745575 636000227 696919537 652651328 759255826 31714961 575807345 965547323 971326553 30515970 185433060 722840885 837697483 247427797 337243793 110015822 433520776 745312899 842666507 577024496 742785016 443929720 710126887 974398153 993483981 478173243 841637935 880025013 945062314 704834726 927082555 797692283 971897884 635162948 894177189 45732327 755886471 892204744 996749463 113382394 591823692 432597356 977943056 714672816 967819152 755500820 876503085 150100704 948340813 800839936 873029165 563958335 736026853 491517769 622534369 269253761 822693956 380597642 753016864 17696815 497604698 277126100 569898147 881013950 947104096 328078764 782085922 623679984 871029081 115648761 453472882 868932882 898970103 822307079 964495377 483625899 801780597 7574907 794038359 181186362 201077308 7875873 383721703 343955598 936124582 306778582 875305827 271940111 604583361 389967624 620015319 422599524 611724331 39474513 432629160 256842172 300879028 271950294 808863883 25196657 273747322 817469585 939837931 200708137 966818542 639184980 975470875 734465097 735388504 957746544 982899685 444138444 820985375 848738155 861139249 872472950 965176096 723181116 970296095 330456594 442610672 986147873 989190708 339337619 705670473 696424458 786839550 851639120 955377739 726842679 896631308 216860301 593964302 475025499 716873252 249531491 879359280 104188161 942509033 103372961 532299188 319902216 785281891 132017431 172909849 659826110 688240307 58648924 450885951 931584329 937228618 84242969 647241351 196075918 982322518 678536142 686871504 310891226 351577488 472811930 940663022 860088436 959199691 767051387 907278253 558057767 972813448 866004675 867351212 822699800 827022207 813196285 850543286 585514191 983996582 971981530 994101156 943203103 955574813 886309044 966838218 124892043 938832932 397253934 398946535 92594012 616696439 478514963 757844509 751191573 935507562 712456690 894017581 598287721 624549882 179222298 502349732 381551164 852088619 171252881 852395642 956185324 984717549 334140423 803542360 892508865 950392251 542015677 902727444 778916517 910216367 168175360 524804279 27687594 742257283 359043506 425046957 695448954 849108408 387688758 694364615 81514231 162552485 794525055 849986748 685636620 962724326 779104473 961802600 862801187 918269708 111181291 394732511 224576707 598038454 906146939 964742748 744150990 976117403 238452287 644172331 173424096 757264036 848963426 993036075 702757848 981393801 23382157 866979121 273865814 697567488 992556127 997414556 7690755 740222643 375815755 979439921 686663515 722673172 782105267 859545750 812214983 953424854 340617105 872400332 503462012 578263660 512356418 706238021 449791726 759954746 770233605 837332579 317473587 855632580 702130860 799648773 325040660 433345969 508240152 826831082 726627347 928901256 375413422 398142252 682227576 903184714 232103555 512241599 508778994 829266242 941487763 957653585 846347126 978302227 270653036 608199259 954489018 993910653 242210560 402937501 287081986 488284823 151965973 685762064 115350624 761223583 426827001 573814814 45851644 428406991 307329316 603197611 7564237 591556428 692975566 827984030 777465127 995984398 813656528 948556208 152416116 323320477 223693747 383224113 820674435 904461820 610158943 636073944 989503701 999522158 791903705 998426080 980749720 982550619 743861166 955817421 434284796 663583975 479121318 548309101 313612204 355438038 61694849 741792940 903589347 920251928 588457013 786015738 989460382 989794823 712902196 876395019 756161762 876996572 87128017 349881122 596462210 842303605 666135703 907751011 126517932 616854507 506527051 695919210 710963765 963432236 76107428 611941310 180790704 975457067 514706435 824377498 928764317 992231420 574553596 686409860 280867109 569994560 856944741 996259937 236497142 270894928 715527104 769732044 851816346 887047680 183264458 270587095 965294772 991625163 662604695 674975313 631445779 832106790 165451353 314018387 607221412 830536645 318157025 913771580 324941313 803068545 429022472 865046684 388501284 849688722 379704663 775419325 505558131 584434124 410279733 649972757 822364450 832380171 745951772 822673574 370181571 941932905 5158906 635601667 629077118 776375373 634601162 918258918 737522118 820907648 646782051 667011538 522882432 958276272 422252567 678542775 508384322 671696466 810763533 925810153 670908385 957433310 724508219 801359279 241177502 835121556 459022195 826951883 271860168 489429283 352777031 443530659 80160892 752824815 943193716 943843060 107253222 775279399 538765717 692871713 162724192 462376296 286638596 647926707 194862254 811950750 580787992 650427320 500024538 625512679 178397519 908436787 840357207 954076680 153495340 783666732 229867674 404736447 808107298 839343635 955893598 956931401 818500960 900545825 983776544 994916178 760793399 998819928 858446223 927348256 48701110 908060074 974202139 986418880 395192915 447685475 758164908 914887577 358608014 378573397 136916409 667734459 717931097 805672749 777455552 849586345 434368902 961662559 904382121 962039918 963657485 998764979 234526413 843039442 523596642 779286054 343132091 824722580 261487859 526438189 108243210 859716601 230137087 446870794 480996785 617031629 852436410 956940736 213066371 565164756 542954601 799299234 976764868 980792735 334265313 566629324 576312513 851115144 721356337 948751783 55919840 678460302 567566225 989333215 75275594 313722454 384209978 755522963 300555606 352063469 79469001 277711894 14497273 197007550 399982798 695818360 939137468 964426726 800402278 993606864 788782146 942519991 263102540 302037621 265590040 683438021 646710039 856711225 646336594 976887157 980252357 996863713 360046527 450650324 139267243 711974451 364722992 891422652 184159955 650817111 352737627 521193647 174541439 913822115 189990835 386005084 696387893 886267472 431916267 844610055 144701593 974509189 42980943 989159283 460028369 472537384 717585028 909631984 893372453 957097163 755897994 870599189 313448164 962086588 41881962 254017745 185564710 340915605 856629474 908257492 311317460 993997866 28492639 426104102 149098435 649411677 839454496 938230899 13510902 161287684 53578927 854924328 914708008 984972715 196409413 323494192 503423073 844451017 230823517 446975519 494213485 577032525 839959316 846819658 839360893 995840086 370078771 965693831 438518872 943973445 383080472 560441786 371894144 563675058 283742596 725031658 476060489 503154067 588256541 704343498 102937156 589115151 4623183 88132664 608454712 884278710 389202668 975238235 211251086 275652791 553271363 881500727 751022735 947599784 796833985 970163637 449141411 646739893 48424023 455845618 389491266 793518520 3743260 197167759 695959390 748867158 75726945 900814105 383678859 661448435 364749933 846885718 411787336 869343256 313376583 621073337 981174854 998764579 85998579 643586016 640812366 930211951 123950222 310000930 469072877 950135088 271703923 722707467 838526201 930693037 533823809 874388401 35072669 489576622 139725586 707802315 504269527 737345789 257660897 485345283 106310317 610331128 843192794 990949119 954357204 967202432 416639201 603131856 686198889 907609823 719619208 846345675 988462596 991729940 447676672 549165910 881455321 945037223 966517392 979221563 570947480 759737042 725657985 791180019 929156792 940296309 693427871 833375099 256863812 983486793 364639814 496454292 717703404 764419712 851561451 893897121 356927246 394882404 779062262 927812205 195138030 992806575 730449672 788901334 489480941 634080451 781460912 822838586 773269865 880418497 40996186 419875595 448009011 852272335 619631898 828236749 909520223 949706033 854354946 884979300 188755853 852784845 297116829 695963685 553202650 878521529 947014052 987299842 621637097 630539855 994808846 997135842 367741620 880907540 847024077 907633770 377223183 805657279 25504388 97393973 847216578 955599067 45061030 500867067 594258188 992786927 669920805 681987149 379879387 805381544 233270585 970675092 386557547 392273923 393118148 896151849 592331025 859335295 596545045 850816305 732522091 953159166 842523863 857886508 797162834 882992512 651809807 975335794 298636830 646225800 385559330 816036174 366229182 501412038 877179136 896256520 57678733 141227015 555805578 831338047 286685548 804708197 925107226 949455081 166556885 637803465 295255163 438348993 208406635 309877487 527282664 884159834 992344185 993412687 410706660 632172524 569456883 819999078 1236073 4222654 441141591 717808026 131036312 542784269 687498641 965790701 900308446 937231920 477681655 835720355 394623581 994031865 944600646 958158134 830179421 874145394 558855155 985173255 19690878 163987204 133035558 182479321 645445581 711005544 514075716 570025078 222759534 486173267 209857934 473480163 249842027 993417927 456087030 659080807 820289663 977475443 296756259 420498949 839196532 913779979 657587456 879086289 111848289 962571084 252235970 299422059 629218020 693896230 510874192 987331485 662839397 832028828 673070312 788826368 755393320 918923474 907826043 953862900 632625306 876835350 683888137 693300172 346488080 603012372 351459322 671517684 493627767 980768875 247864219 587126776 418731963 525752307 513273042 774024120 221303556 451189427 661197905 822885664 976024864 994506535 963423943 965153511 518290721 988479470 708795244 760152770 658475500 994853689 832923737 933214230 144798405 971521864 741929596 880955177 261109336 896161245 412414750 470598418 548441541 607585992 846736742 861513562 145592759 310416952 932215280 973916421 658164661 731515192 620630444 968714331 992973735 997625496 93838554 727587428 817192537 994140581 410078682 506501698 196564149 394657102 632197379 998776235 767573121 940686348 430191424 492886860 166896696 762885194 798390963 891890126 906719370 950619714 334175505 742972440 731127485 754467427 881875121 948561558 614180976 745281995 270550696 495715147 860234753 888624471 938528199 977337154 144488471 973664474 352192304 652862313 286783838 999613871 279632494 662359388 221390754 815090483 333023671 521099540 341494258 521822551 915406325 994921330 399402957 774212060 725357893 875210762 565006469 933337376 429380605 810235571 116634104 928413782 840075246 925132272 701546764 804151408 871015392 958184126 825432510 913715563 390724641 694264424 874343282 957757456 126847226 207528618 634848573 796810271 942915370 983703429 648461164 874849989 552979007 916828469 216336685 678818662 34005991 993854380 750635708 898230019 379260231 460928712 140078805 321550206 487784119 934633786 121976723 436773597 832762872 913392521 555194252 581460394 42191842 532328499 646307915 818308452 461445861 524827888 972578232 973670845 125245989 498216544 312700093 456114933 655848243 919972623 179362408 806104556 725456718 738399533 74160157 907234688 722079951 777271658 122248650 270877678 689523141 709968798 321476311 711690106 57814600 765959422 412883789 759608781 755658563 860550115 830162214 919233564 184021349 962579227 825196594 907624775 69731098 521411161 908074064 923798032 74892355 577803219 770230442 879000388 346536854 656272678 297316607 471690156 944082617 961073555 270912006 634109342 855501121 971240972 811818646 914510469 350275079 836165591 914877422 998096911 659808336 754681537 869390031 940930741 863107438 949245848 800230254 969860815 248990014 349154367 154953046 399400510 106606517 568288583 497712692 526747409 371270417 443639195 979839567 984328015 564839567 688054602 730486537 841777102 630120472 922462323 892123461 894424749 218118774 238428872 467565393 887534426 930650524 978289692 2551120 139140871 505719032 561918308 707497429 713442675 916389652 962111686 556250662 872731996 425061317 929954169 620591848 660623692 383123840 487947749 459580078 829757562 875308095 942823587 30673925 896965926 790424469 889993723 132173400 446931284 687735043 827312214 841061658 906657109 985779916 990711673 757669292 842756958 585655470 811538647 628711163 783457314 594156528 802234070 757749889 980713817 99654064 160825896 635246006 915752542 675552093 946502645 956698457 979050512 890018998 936891489 254298285 547490605 208625028 649113198 694676158 710868888 558192856 712521695 337245070 867924296 762033297 804994460 634972945 675961794 420717185 668235402 37145481 327614994 632069021 771554668 92203025 266685583 214886601 621084569 910247755 946846365 642405608 995939303 528438092 881966553 808673575 983808706 402947501 464230871 163311314 337937749 603682851 823416335 516407775 608152273 58449739 276109029 60816860 549929850 554540009 919902043 891337000 899102241 603252373 714161376 109017875 786220307 38581284 691027933 924033762 987710102 965397845 984036983 909019860 998995452 77472271 554891525 735831965 780813438 569938535 675146416 254370721 754533975 923061465 991280288 71833172 448599437 837879690 913408110 880258910 925990512 176415008 478966127 432367166 597201834 792853649 871753300 518848050 661080672 519196807 564447380 264944502 631413757 501190789 634503418 378426610 517989621 747809544 798568754 546509707 606217023 241518541 957109367 93782919 697370450 95021527 527021280 423705682 826537945 30036294 722510306 451743954 958342455 222955419 588731600 78358943 524619972 102607209 532317525 111381987 365606360 295678265 888608300 874236149 907554037 38715567 998288110 255564250 369213803 109688846 162087063 589540379 854761461 708913384 747980369 821183522 899051585 886751767 959782877 903130435 992003661 837176306 938441167 241751116 995877721 619743769 726090456 709124719 894353732 392299975 807559251 867290041 875389987 232683025 617431810 851713475 989867902 3123989 560842127 922858858 953186209 420683021 729065611 809293070 986036704 764317009 778829828 43582612 465551130 661452719 986512505 190640586 563847356 147611718 223952950 598199128 884332914 68806968 376825091 376610110 587371834 273771157 485754372 642614824 953213127 917243097 953715398 879522979 914301788 343688697 774553126 67437346 598294824 187383885 767175157 542948371 923168859 668916329 987184160 121996978 986239267 397975833 956897910 291839799 951710961 95336721 838247100 83641760 938045133 281393664 858794635 741935944 806401308 12746612 371949483 72740091 215308170 107322119 277104306 66931807 170213008 514212267 544891880 609186284 772364687 567964327 597696663 317527130 877840766 349295407 539759383 628328756 933618675 921418525 998022945 319042493 819199452 488359671 664860620 887011090 887368925 358430386 852975975 89408864 492970250 303394654 784764848 144681321 919031529 874530665 889971517 631788247 779384581 508258678 954453123 448455983 946240655 246054148 270549128 595036444 949075399 102773538 993466739 536392212 865511509 515457167 554056386 696538904 778252736 241035496 400637012 504270621 668642770 978902879 997730416 834432866 897680674 306733436 543673712 531294676 740852825 857324240 945862039 510525096 726530472 511826756 597402757 63741253 819256854 498911015 637080970 802985463 903196641 439923569 959035101 275574134 802987996 4621738 771972349 69006165 471192178 440542040 496687060 171834730 545070518 889392464 934668256 559235533 878409911 174449260 951112080 272036643 801182135 50290526 831455219 97155418 161607662 821401905 900111942 319496650 900419265 623819125 955611188 938648692 985575745 405242586 941153679 727958225 760494872 76971021 670519140 96801003 515176145 963329925 994265668 935484372 966056392 670965066 671892548 122639989 384228102 768785435 817109290 815652170 957893534 518821071 597590807 514215262 886268030 22591608 149866502 332740685 377062924 193006390 930591423 142327187 660041794 479168105 873238136 856383214 857539023 707036058 906995745 400125801 779869441 433068059 778258853 597611037 752783709 28788803 50641686 530039712 730574326 781323917 924153181 895345561 961019683 457412281 513107853 777690075 878317736 655155863 902138684 22002889 233384851 688787710 919195141 760924805 964342253 155160669 907805077 377237634 555629787 751673172 796726645 164584683 244129775 96010925 308614143 269217253 901309470 432122321 618895389 591861790 835402827 158576542 770855922 782300547 807880549 919965161 942369050 239096567 641121563 780486136 946939539 424731552 754023519 674149880 907427956 558514876 743872810 537791259 584282037 272706044 642894864 413550938 770639012 758234147 937960862 78384342 207063149 60026507 583250397 285786145 818599735 500263722 838790072 13133013 523974531 576584818 991564188 175655613 268695481 26226596 921779206 943231675 986590691 420180029 439296372 589920022 793651800 413183294 791120415 215121997 542082802 864673495 999043257 965868377 968424660 464620915 701396021 894043356 911852425 355348518 927174868 106710919 590051156 40835606 952805276 603333433 943939592 285557031 436242785 885030997 889409191 81814967 831444975 729370593 906897537 664924600 711518031 489884767 530633856 698424670 766675802 374412987 719608735 990669939 992325357 452085038 951660510 19207124 142891296 831720932 975501893 423418290 724746335 596765880 845676012 648700178 820108216 139682339 848183925 323993499 381039845 453658745 779741661 874143821 896162077 533117138 606275513 343083182 969139541 210066607 978293471 766896954 779984912 362772666 876364280 321924740 989553638 669915186 713360994 645971948 902952396 275347587 655247224 196737408 477402651 510321987 963708987 465555642 702916549 351013250 750834090 883631952 936654701 863343653 896274972 221343044 282991154 280488767 795093489 124411252 927130269 69448142 958848091 446641359 732550022 228748480 433081535 359445538 421316568 829537501 871165807 828699994 853430260 895800769 996365508 488233330 728521524 37149624 527333049 243980370 656877022 588008413 966130471 256757745 272447380 965402724 970628282 161898243 362535281 480205998 978545336 589938586 754879420 746975418 862076812 831330468 931856599 918735312 941116462 755911682 890198268 778077450 838887499 559088524 974543732 959354446 985628824 610674873 637686919 792268151 987710581 46666388 480773210 411345379 622088961 306724855 733859198 11386659 217512609 250154705 810494399 587111412 682279511 156370078 449535699 808060288 930247827 865627021 891332133 762906258 784847626 244446945 588207457 285632588 924240238 358863505 925674629 765841565 851443745 368810038 621080612 671891278 841678991 601783496 785315952 773678358 800474188 768945052 838008533 15390359 978716900 477788135 976539947 801497015 996589615 158518269 800075925 738551262 944808609 954973560 964580518 115437385 699346878 744500507 840043544 16706553 860095039 190452527 942103068 705455455 923134235 808460278 859123028 886893605 946487762 896770630 946881730 764516428 767087874 505075500 761953452 460398899 596815152 693213359 733930578 916989492 955980498 153817188 424760084 716899408 985482160 94047567 944050366 840641362 855640495 797919780 830910443 916958760 965943395 500858162 525505461 416897063 946457810 720763483 907020878 442886515 598982008 827894677 879050056 78440713 927573979 923283120 979604589 161665789 257223785 18052320 541769184 838579254 960456568 412668276 515187375 225558104 471292266 498100458 606048788 94363701 138689995 600018439 991082022 565194587 656944191 582939064 757208916 872104034 909069451 643056135 703135419 802650304 926964606 789422763 836814602 567873347 690354334 882524329 991167770 256046771 359986565 538755610 610196953 560327632 836475556 721640312 961653769 636569075 880599815 556078095 961145337 240797883 846599159 516385150 913919644 91529251 252828478 309269456 910109450 58850003 622719641 575925929 679369904 249061999 434943409 542592851 811971112 937870044 988452691 666219713 989095614 839074638 885925702 565653356 787149627 70623811 925935884 45152810 240267463 779512819 781014254 397872395 686565348 160210576 593264692 779540895 935589446 517646381 711978667 371634079 818866256 424810129 842232307 435708049 857024334 266864624 429462425 283876222 565529542 613491631 992622551 885414319 986421053 975068088 982949678 801181685 968535652 583244842 596186899 63921895 687153503 998200310 998929545 603300688 965995056 657854055 972673009 927665121 959789917 354188204 477444809 979068918 988723798 528333214 678708508 600702269 863671792 731932327 847320025 532390785 796230911 130912426 288033089 235906337 943298940 948940463 990740799 174825472 780859637 728250473 956988927 7743108 883443129 838213184 874096944 598392010 718689220 10499347 146327782 552056079 851159024 188850226 269100992 913522353 914364958 718232359 786758124 537000472 646948513 420792371 464903008 191480052 419538998 956747214 997035601 943846569 971718937 747414358 878540680 759122197 951735554 837774650 847448018 664436574 892749685 65478088 625330230 280022206 812994024 751141390 863524740 422001448 707514695 958381129 971417132 742896904 781299927 817419161 902906834 732348995 966290308 130021084 597292992 127622809 869901562 243962949 589936753 895956249 973466521 723513004 784496119 210171793 659729894 871034722 993020464 61762864 934151532 726966109 778488587 771134887 928785247 67790840 524901137 251664482 589146391 817215426 900904618 155241160 167371756 816771540 865375517 662124822 690267517 239790594 747332432 829942284 982725568 792561619 942992690 434163676 713408528 509570854 903962261 497017490 676972642 259816566 821556600 685554206 713430112 878063106 916261855 740589575 777575529 635260071 754573957 815585023 851808918 872875091 917620528 381147173 988527679 163695333 280015853 696067199 923796509 423355731 551249644 250448061 828653447 437257601 610575780 299920413 881104825 487468876 528825378 368335028 979683582 183007948 197437644 793694579 937788884 846916712 911968991 714208153 939523708 284016248 447465245 40081705 518491901 426527138 761146540 110154705 354675105 373706622 399043746 163650981 733133063 104643372 798895630 85171065 280041841 929027954 986916194 572416745 890440694 233443713 424401976 716037305 904226189 207911695 379377979 682083602 999297795 740014860 846138238 572583479 646461693 465920919 767544595 853566048 874929361 323004796 529345840 49066605 696610367 15251596 17500067 417952581 821833999 528156909 729917717 663779875 777554615 939812133 971412997 46379234 689692958 348935266 526843908 189821541 270613595 746637555 900268540 318307359 399837889 75990241 759266081 974163242 989726065 721451476 862889903 481738128 483820572 805469085 888816458 957398095 961159972 608233428 860082035 438920575 986041722 825545167 997055837 493617012 987950374 679105627 915638035 10894348 915597716 836283203 978152163 556054626 659906017 300571927 359139560 532707855 699212850 148786017 928396769 988045410 989204559 953934279 996217292 813811330 850328829 536395641 828186287 707751459 818042133 115900902 472229367 594661446 895419041 668155693 907001422 489003392 532857162 490042233 496549404 552150284 645170656 174872462 735438461 196141760 280274897 250457643 606161268 479219319 820746903 562184914 643203002 934435651 978053832 299479298 598988545 140738524 555255586 521884940 544506359 610090156 891019765 410597316 899097399 250952623 564548536 430279171 567050503 771650816 920612586 747642538 774231980 894273390 896285310 282048566 859133503 547782814 878907932 554402140 709764610 644936252 679056619 523550583 943513680 898645118 960627006 471744089 642743912 163011791 424777466 509479285 573106992 270535385 656100349 621153726 943535819 939959772 987596509 669263148 672851918 76864134 187786619 159411566 898631996 109110035 367041845 272839410 528717150 186242019 540643971 857667582 963929928 221313972 396091703 999811540 999952516 287378677 608148914 1239290 117316201 949250469 986722934 997131698 997868939 353442396 629621079 156191220 660235540 947526136 972395930 249082159 435513150 518497821 823690835 916871919 953278482 751434172 791438779 877121550 962263559 193348943 464277283 477797880 607092080 88271325 210632264 529639212 784326371 500758197 641123993 842624761 899453898 278396517 772859574 181667002 187364913 721137687 839343908 347974925 464267913 546203539 581207660 755207703 769109182 936184448 952375396 880280223 930115255 668604770 901872960 689201426 823520608 775722470 829126237 143296736 851734609 750475637 808064044 991410688 992607488 356551321 633686727 418066013 800843722 979207975 996301234 991074169 999861819 291166477 391471902 743446866 818997991 755501984 857426266 799818362 821743904 270568226 422687629 918129265 961179173 146306941 954743901 486564101 684419677 52685860 659623380 70779843 927260390 206831427 307583648 673046760 896993643 50270921 671716288 735759664 768952467 939555937 985396765 464963968 641201798 938340005 992887657 751216015 890405256 223630883 228884717 139666408 434620046 59471036 733015769 937418667 958650244 914932864 996759071 637826598 856125557 221197415 698290875 913491228 972606804 406539823 857752239 110417831 622191074 422231758 688768023 460941448 626339055 653088224 778687416 274609143 990692992 243219560 544937895 183437374 822804105 102606000 162709430 299472036 488517001 498689133 857534375 678639529 946472273 615599330 636352626 841613916 996958440 753813826 759514506 121088327 870842600 418264251 934730573 525084957 946860155 897408606 912004347 335996503 890186429 12657938 830728071 984801934 985107822 884381548 996535108 537090217 938348461 407997372 718231170 985288092 986212705 53971244 539581817 77173331 891219171 504073129 891100183 524608853 825121925 944017439 956502096 375132173 683093881 340256910 527754902 380550522 710416454 225243818 344770788 261695643 894672298 831656368 850829636 224666322 832486138 613972669 777722602 270361010 796181642 956117360 986507270 62109041 530326163 303795906 378677824 343060086 870423749 223709700 392293840 977080660 984338887 910338800 948062250 880730890 884479059 687842706 870500960 460046197 933757948 248630455 984393099 346293612 621092247 311656250 961392925 488019324 974038513 686441099 847351321 652762101 937909799 351987217 518856198 140677161 501506195 231709680 257799483 782737479 899391316 761294514 944474785 150326546 907605964 17112795 507420716 533607699 822142162 743026835 980256942 111469689 740533290 738142714 756051240 540542875 652563444 234173627 655100541 962142746 962819087 337310474 847297086 579365962 653190320 629574649 668088962 966079746 967209084 200961087 919269050 684363319 993638631 586044090 750966212 525855566 822505512 494606521 852145507 216476034 982804623 178503514 377726924 325317504 742504762 102309300 293227604 760898279 978727473 426913733 682902208 587265013 939771087 685908837 799011209 518377783 788106671 30718893 268793204 354866215 426761587 560004071 622936118 242476513 442418794 873684928 951364660 549973052 990295606 31455722 327322430 883521477 896329129 775901182 795150327 875439093 903297768 483521238 732851561 10392506 529456493 634885664 787269048 679434581 749065722 362894323 638265674 630668392 652777868 197424514 424815133 72221259 865688079 101045264 506246642 713619642 719370414 899805597 912807612 894895171 946831229 783537530 811833701 706376358 714165465 993085303 993502386 876103046 997484713 895055276 970465507 983337825 986679998 40532501 876662379 938889054 974706833 388208074 399430242 806309139 918947096 537745278 565519543 993455569 993944654 165578781 915708156 841836773 885457241 842599981 858382362 793079746 821578725 90342239 686352733 734309459 794321210 40943283 332919861 746760089 939901783 400611196 502016130 733639511 885533794 361369509 549973336 894055896 903212500 450865884 821690488 508286836 704910299 726426031 799082650 897803358 927548372 359105199 531065027 234405158 912976402 915210366 981981157 57905138 556643722 889022779 907306628 121516368 230146522 7361543 967688764 317240728 540764235 498459300 904914660 835618737 911410652 474415151 554401192 591346989 909045762 814192908 991171862 831987404 857679114 897293074 974192225 22096286 69688216 262201119 723915580 458204862 922928947 956189242 991448651 756501538 998457953 100239088 430361624 807638777 823276896 63120109 998682236 298308922 897479579 798969592 988877321 803279618 989451542 419648076 784680331 577048703 708305461 474941598 727472990 941949187 973347053 906087989 911278891 678698066 984089954 170549156 519650142 723628685 905829917 530017825 793738798 938857141 946119098 858007761 979746427 494273823 808134563 844925834 923568964 598234592 887011771 57282755 700210643 444553281 814837106 927322017 934328590 418252313 449894925 786698006 961758339 693956681 923103605 665915801 876864410 36555252 98632337 160289637 297096677 495872283 980202928 852315324 946825210 223879556 428365179 540636752 659156405 791453686 916833817 769927458 857376894 136185885 260874124 632962529 957660007 685141038 961414716 763686240 781166526 236000554 727016586 833464516 933716330 5813190 935575339 17581153 822716877 467048165 782821337 181023622 190176674 659431361 947335564 383512304 424047983 469158411 841277059 339050680 916794844 718267754 808116742 852173372 883248446 296102150 379718119 51565825 988113506 976578121 990865660 185008747 480597215 120629518 864466134 752750392 915745493 140257323 175136993 366640020 600162352 443232788 479447606 249786548 485704765 971558733 994540443 141112794 607444930 310802964 805404026 729658575 884648124 810641019 939049005 628802421 845204531 547639941 772972385 85607043 112616707 587731520 645018322 911393171 948784514 953329556 963670925 808434105 868137210 660575720 946086990 373443328 654914755 35559447 984418590 679269353 804908867 45600556 46716276 840081867 992965442 625924427 975321036 203620138 388976366 764211955 988101436 72387934 74569948 886134270 895037589 181072547 622536049 513365837 598926618 442819400 771308151 200313205 684263551 145106464 422342138 841967393 953748762 769580655 849272359 370651406 711208969 667886271 912154018 170158018 300757581 195470088 570371661 557743777 839003783 17207171 212580186 653059128 852935893 557876632 660569400 89776004 982522764 222799625 507054377 759246996 814669851 310824913 762078105 52789859 815453711 171240714 374147361 588241255 608648509 763590521 926503824 306969267 744986480 686045652 808185982 696953528 848994034 436315150 550044673 58963809 521449282 7842705 305715816 485881664 860649334 247380446 632966005 327090943 437484809 396619536 933059818 793184014 837239621 483395297 700118690 313721893 538670256 608249378 747951517 155573866 500588530 419541687 481696512 839941046 846660019 172205879 334654354 597096278 875914679 28463697 958656710 543391307 811724432 416119748 490811813 280711371 479136521 850137919 863869660 817039443 991951575 58458194 88811811 624690833 852923080 608488392 949073399 436974087 477852034 709781840 844911161 369454518 854296857 369757388 619223186 354199717 483719096 544642081 707492443 584092978 793769074 336205455 409404862 442926446 804420874 382331059 820753068 306783293 483046760 988227779 991471618 829993467 833733439 506070685 510667945 514930046 709240770 512775782 658724082 209870455 749499248 194329936 911794802 728671763 998168875 772694404 954982621 322655864 977614372 965234537 995056602 451935740 959171366 213827188 400887890 803362137 964995954 983598096 996625351 58873322 992773194 735307334 855440168 327064435 334486095 224921149 320834840 771176038 945858085 52067337 254241033 929296609 968341355 622707216 638623977 374662228 385235698 879912353 991636564 273399701 797472050 501345040 899733458 21803955 728663977 528072704 565198935 513368471 636315482 364066806 931456706 768677514 990640025 250064729 468130165 406047327 625783889 110956847 614282878 403975771 865987139 153523383 439583881 198325801 759810526 977496697 984157809 166294746 646586904 606073971 908396946 20621278 188383237 401839884 942331914 116104632 248284389 963476692 997521530 295915237 687977996 337152511 693750284 949370022 989273272 671239325 923690554 791404196 828351270 803372593 819994044 651496631 909498702 367726442 580768165 75758400 166949190 943125791 977128259 321624971 746520225 25786928 890424261 240168191 998720250 712605903 733601315 536370730 569675677 728729084 821018536 991283893 999345381 455011244 760281965 137171260 438997125 416988213 774209721 846093967 916305437 421128768 713582218 783993698 949029914 503772914 529526653 483203909 521298605 514627868 857983840 956364844 997729856 692047905 816955351 790353692 998932674 4328591 602971055 626158173 845275313 987055073 994376117 49325772 691321589 92831763 115883355 772998957 966933314 818124001 894388039 770805277 806312522 236736890 844391318 52304111 943689329 509781817 563651757 323424404 873007811 593553318 774242914 963204380 981813429 753063662 996517390 426169599 634364174 703876606 844188753 436008894 980773455 466253994 683361387 18669310 120883039 375308753 982081967 522208823 779699731 499675873 844002036 88799906 168003454 762984482 783869705 309197981 761928924 309013433 814137082 876704899 880142007 650666934 867900874 604227097 857590645 268486160 869526845 443004803 964150195 989500371 993359770 347689084 988982540 423946191 987753249 32376982 353311112 890661227 954826808 463186149 885137137 174268741 765570296 154092993 162624760 980224604 984587223 181624265 830981425 688130741 749783059 996156842 999436214 593881398 922078633 174992381 662585699 663881496 994068240 294376129 328083066 618621810 831275326 396899186 543335434 373854300 810109108 384539175 898105691 249315786 306643022 661405562 717104993 2723819 415954400 45318624 212662144 534665217 722070275 29684285 391599876 553412780 863588550 17959992 282914080 22224857 123085544 531243164 963540261 410898914 870002602 541126133 937198154 589420455 935328446 463655171 713304955 92212155 815845025 144018787 595525294 532620278 940629586 273105847 838627047 868335998 966002884 811335209 811482135 413528168 903021892 486504645 733105866 145666582 909029641 594337717 968924241 173111387 400466761 924889523 940146639 599710061 889790860 884448966 997760502 796387873 869204189 275990265 782990187 958772578 992496296 156078838 921027635 183434781 727600325 26907697 504799945 270406196 949517113 91795857 149018024 717303676 728139489 486666692 791221449 35910402 228157499 33161508 64515889 954683110 984496793 607259079 996984701 702303071 788827101 722009330 983108083 508250925 847282559 789515588 933580872 290789612 729832541 127798508 330418657 988190944 988714117 686238866 935245753 409561275 914499558 869982718 949811108 60657001 108872205 30958772 509885593 569216546 800770621 301757856 447059504 106973528 617130336 432705396 525136949 742740721 770932846 582476090 593038243 941533939 967228571 193156721 825562176 511750153 604350349 248917252 706008482 564334039 988029989 412097514 595739419 666010880 969670576 256230483 661429626 905793774 988568594 387116394 639060190 376712296 549158269 946079992 999820757 499073504 788887233 950620426 959394271 239931628 494355956 445301058 681683272 293910795 553275606 509231508 838714327 812304973 877705527 622828907 899061979 221930457 341362933 468338913 776902499 143866555 825475133 491697720 872525161 575212004 618888744 207015104 516105508 393174957 423015255 765577835 951806379 680376974 740266963 914672841 988555189 90272800 974967183 192881780 578361157 274834811 773640009 230057772 270263767 574449151 921535274 120484235 126386571 918870762 967032822 462905591 533111831 676209293 695627244 683815607 787723160 324686299 722491925 896732391 971376204 800467276 970537132 547320485 884030053 401397212 818219293 247355361 443366350 495921008 726741319 617897265 776790848 148458104 341152637 935249611 961692124 42530728 578085014 872268475 960801718 183597960 325666119 388737212 711658485 353226814 771345103 89423930 673312448 569716864 752147939 148748013 738019112 318173125 881927057 774931127 950540424 744901178 893138401 88368874 799587917 46301103 968441404 411813659 476183869 836162121 876938753 748883613 870282563 488345298 701777382 873477521 889146819 839680509 923246227 687831711 818809510 341078513 385595788 242081569 789188061 801686007 830873407 770018262 877127085 721184762 938803909 719272849 874636911 180285103 948055129 543189601 592785641 300397035 863797708 982288825 983788034 384193380 850905081 231458084 547779461 46076395 804526653 937584018 952561306 425425606 433532892 466977940 593407027 152600935 330412144 620004626 964844076 111279515 763611660 570362498 686835340 935640184 985901909 297314735 568544513 509340820 530819213 223377598 543294981 651092398 653227799 972622681 994854002 773618439 979941464 568528803 822837913 851222239 885833266 612116412 796717727 240683844 929915916 672951835 773500679 475009270 646569592 768312134 873882028 598479851 741786777 22782672 523536362 87707991 486061763 44646561 939690221 933164543 992458743 248119393 923033384 514861901 724273025 714259735 910140562 331589378 876409407 543587917 708406637 224675702 496119091 520484253 521977209 12877772 76393935 946411858 982506857 525071472 592663891 886440885 932507192 564439695 758390199 539534903 803793842 415841700 417896063 381654392 874629440 139418588 720434665 872653022 998905989 147715377 876736598 647878679 840671165 374916490 842519912 470892417 684810322 464668594 874151405 881523587 930082749 369151093 816951210 630581376 632858006 458039802 827023511 161072900 762416384 10606884 562579046 750546305 951710080 636050827 939536115 682906654 931886118 129030279 735624819 338383794 745117106 464456869 560585156 729852783 783494832 183423211 843917999 173460473 665864821 86179607 823102004 843854170 921211019 32418122 452557632 971978618 982082928 204088129 964205141 58107384 289348998 451074235 651184687 510424410 901378513 332686692 921002431 72037203 425869035 504080575 746479264 597704053 681342410 757981131 781366319 74070667 746476172 256187209 414163170 102508353 199639287 188626625 629662951 737843898 988606593 439655018 961384735 195998587 507590396 69386497 779588865 861910148 973046825 229297686 761507593 234552060 431277399 344478121 456091154 63163390 195056923 754265405 794157727 472146568 684160494 516389972 967558091 873554724 909753897 164063954 955187550 345713088 907103411 386249107 936907944 401225199 621525349 938604271 962718704 751216563 962806923 970103461 971983065 410254489 481771867 874805907 984509326 370838972 853584936 719865222 848475008 28121360 896586873 59452300 374110412 329193234 426638037 962594306 981997879 266099622 582016833 442628418 485906745 31869716 468990269 107563626 368556282 53842243 941327312 507510916 662676495 251977059 559195847 106628447 871998576 507649926 828415890 340986296 811953019 784973885 926553931 402503599 711208519 178483940 253109177 319937298 408125546 749144206 884801483 772398745 889059244 512484199 691933310 855206675 951141903 258510784 600720933 786130652 947798520 115982898 672430762 882705108 883099877 900757820 940820070 286337940 361930205 606727858 952296869 992235630 998621138 508547851 634124900 608210450 746355174 213025196 425030498 899101459 957372434 419022879 817153673 907764994 910307295 537741889 989139661 406534156 873543348 633734800 766163758 324155017 755506523 562403298 670890858 474483586 764309584 35903108 671283609 844856898 931871823 220185949 777205281 857312148 953798505 993264440 997459055 959566983 991573449 518231229 595906257 375209305 603085906 301725799 835166777 208919098 767689624 46917007 561022559 91521936 346296133 336616996 907578954 336928818 662085854 414500570 668578415 551582644 865850207 100117862 506289216 556781122 848763163 282937870 955868780 950952342 987937851 429820148 513384855 630268016 757961238 85835592 833588158 60763940 546500713 584555208 627551263 314584481 875965082 70489354 279489819 441852555 505918241 230142899 475017755 750107778 954178126 706524333 825983431 875148894 898381002 747445786 766221199 517574726 533908264 915065060 923273750 194738982 784696654 78672217 313550154 129997846 590131147 170211856 307291942 538807628 773691859 181554102 997581309 915560301 986012062 985656665 994070505 718908548 976965122 517025759 583967861 337372365 996338669 812083353 868569308 266433782 607723606 77416565 362751805 729032105 988290173 914366838 981213018 638261502 831253473 721476513 872413843 874922920 897631327 105987081 152633305 502368045 640985826 574747674 859267902 900573108 975574723 961148336 980215096 461664296 712040143 171117090 472859429 340807376 587231327 384009236 765281044 469646098 702846060 658311774 712145993 811808918 979326888 322199014 935270393 251912098 662468309 388362014 940831523 825788263 907819497 479581243 593354807 418822800 729685948 474817988 600950643 837094284 994768352 271696919 849500003 509309276 997536051 971387346 996255381 242386050 938801049 359977626 679229429 96607032 401994314 275365974 491309326 117573011 653470512 854201980 872323157 85866978 511631999 106751014 925978486 757253126 762248617 801042132 915161822 504766091 517281457 567030906 885859592 466962855 800359064 503838908 681938604 709538418 903148161 999012996 999460546 385576763 903655758 349048652 980515729 552026182 844268309 378838431 448767773 3216107 944406315 216297341 537098807 348029440 860288182 861646222 996656015 46275214 620077253 731347742 916721539 459867171 777593687 844424178 903502001 950722823 963767895 899498710 928265982 615093551 836748341 822237586 867356332 418853691 888813977 272163973 406118998 448435732 896668279 720727745 903470733 324035862 541669534 914528043 967259202 170032216 724032227 212184815 455532887 134297220 989927777 979646054 997507592 282325530 624691343 29950137 815559010 662464192 687909874 801536484 861891317 443497702 658324525 271093006 900919237 201148503 988216528 31440085 688571349 792209288 837013170 61288735 700705831 468381769 836013053 618721446 740813105 423677155 979298086 839712196 987547059 412128982 967764732 182298275 964999074 713316244 858533209 302807946 787326031 737610024 892139898 552817741 553884528 272030989 774635792 399552145 816944110 20930029 104670344 263439994 770741527 221774639 456885884 366135967 646555256 115544916 971504896 935428482 966234238 639660769 813678857 441048443 481713065 425262233 561842617 858798432 883188636 124939667 381138681 284666055 510913684 660199856 991915695 78372500 259769743 177731201 450898218 844894825 852947464 421410935 692801922 520929059 880955646 650820827 674025672 624804580 844860344 192650467 677881787 719289585 792384741 863163618 973309663 341491750 922900252 602078278 606506529 239403225 757566626 740817146 777688621 398808543 658143589 924611419 943928234 62619036 295899113 359607019 744628329 721052495 789720540 468085096 533207457 126288024 736522850 357181554 363922451 504724051 770478586 597255422 956979072 901135550 936820383 213480016 567452779 867908414 877155459 59672572 311659163 596673075 616854935 646992781 937863328 989041175 991592113 950032502 958494964 802940629 845262648 589973044 894685061 393691053 823242294 767060331 908319609 251616068 820416693 511967223 683182558 137469151 572676627 606545845 646135179 628464620 708475809 841831684 928422453 473166351 616988321 832739070 908641821 926323360 943805864 123448072 905706717 253626274 884879749 862284625 971763306 738656917 747972662 75040456 759141549 205539441 490795168 891838893 938531256 62564391 854141303 951269720 970838501 283750860 391484562 364159936 934617431 699686039 878195404 140577838 741502892 813789481 847853502 80943414 872976537 72864061 194937605 158985455 188282903 873847314 912726528 893090174 982376404 982011175 996719860 891287720 988166329 251505991 620299975 808325188 971708702 312831236 792316162 439763238 832897101 84679580 358377064 681423819 712187739 460912078 779876162 966912735 994624927 14952018 858224433 8565742 326908533 815045927 854183769 158272962 282474434 52809571 192129788 363671433 644080890 532478839 876206380 225456439 481177832 105653529 904788853 832430108 850309978 194365875 288384281 982843249 997283833 329732818 369821430 767419434 966783938 774603001 865654970 210664848 681885353 505988452 533522875 502182577 766505513 153359133 387456405 199308884 304935607 406856576 902018307 932337816 978573736 440620406 598900642 159608411 879789345 614351240 655298059 105289523 220549604 7735202 896139369 906664533 943007552 789631432 924846309 424862865 648587480 938092888 990262625 341627870 447856727 795486823 895175131 721749730 851502915 67493956 789475917 922720031 947504173 39478191 255872011 937778326 970948320 644660968 820907659 35559372 942247463 765863543 936343401 569121879 910017335 747460551 774241510 633051582 759606270 471534225 860381610 172872986 895906633 394176238 467565912 955363957 996435024 285656052 440083776 785307158 971116860 245989253 915656404 682821830 894606797 403179151 821859482 616800845 747374151 85704224 876736469 652333195 735081766 485492285 498016833 238117659 415165522 994405707 998663557 529618963 794767550 860388754 872171923 926730253 992338723 593621869 820040898 983039253 991697885 901110679 988185349 166184901 865363468 535166256 594973854 162781407 552583950 829746871 971523833 548807752 953853144 673897561 964230710 407602081 721965407 54404049 667821536 339954283 600373294 221702292 592275685 412833393 858238717 949356156 962381390 650643458 831477373 394218618 920089687 957327334 960851200 559966995 727494805 710134970 735898209 361654296 839519223 766307742 783795439 712377427 966043795 302809869 852765792 728816156 938237402 316494061 676016111 897444109 945126975 405556380 451858774 851677557 904262765 719238888 873557438 480404728 491158566 14623797 682872641 807155943 916442137 914375074 972473686 705568658 818587668 591543255 668720642 253159394 736926644 673501592 755681930 836316274 973392730 745569396 936363440 198138408 712443684 358254381 501713270 337021774 794057396 296938726 794249621 213262540 253415973 771168310 848645895 172735640 560242707 833169867 842168495 261750967 688069986 340652709 764762755 542517348 668044040 352332317 901495239 947587762 983471596 69228866 863324828 529713629 693535307 643538422 974746436 616210996 990970859 171002906 562902917 491968137 824239420 673847839 769365228 166468103 718945768 832708682 858055235 885026186 898294755 444195615 761984598 555527071 914745167 710926626 933862548 783341411 804954121 886217432 962861130 663779220 828416173 426207547 821162113 558712419 775218833 135254162 634314119 683699064 918685572 625836949 943041071 488489484 666552233 922642670 941247144 577061261 892367516 417302003 647481250 740922038 994359017 155154868 701952403 441957957 974176098 259185759 288090310 441570165 900723129 736695443 886807895 732514160 962378003 676248203 929908741 40528120 990591056 547415893 916003399 795658340 994019772 827703898 942197901 34699946 306387807 902881381 961785832 720259075 733365207 654466059 711012945 508348441 843475627 642992211 980210003 547404827 733908251 66920694 83628970 171952633 701806418 538766611 577864334 268646133 411584575 563720434 965548543 785068097 923338426 786679878 795147238 584150327 974400710 835495269 889143595 835958756 838610673 477752391 840373823 250926158 739006036 567202472 841405952 194496719 916184365 411262214 551455595 724153783 911533920 416812490 533239808 662990664 675319960 371387160 732191701 317141293 655594333 983683451 995999151 678661778 996129874 919137227 977761504 74437353 615713077 176108287 491083587 586311088 613034807 662649186 875031684 393799249 475440161 234603476 505934665 266299178 793057229 744828781 906465834 432756169 445683361 16629771 918528322 243541250 493460738 653422838 778809970 955524192 964583957 81133524 368744300 119004745 996145249 962496498 962929716 676147188 696866659 887685042 921707401 170235685 336567050 718500718 777446111 997831120 999470243 118549251 574934529 451971772 829230976 955538622 988128234 392744258 977494680 223884252 881787330 500113235 691595175 884253223 999302887 670732753 745874620 672343316 877821623 515696842 661391067 815621776 867236059 76546154 285107594 457789745 520727673 319975241 660136397 557229949 879560118 857997202 905968624 78094148 239331604 182659197 796816580 576026722 664393071 689252215 940281820 217248190 563686500 673587202 952956772 262046136 551683697 387644862 897580456 395342182 395610053 35191591 67078622 98772553 505570390 944579802 991450331 704831945 767789274 92244557 124640767 996830923 998181288 889791396 990145487 193564078 693069148 870803746 968095707 177932263 451761224 108852991 619755804 256973259 506962693 272486818 767311351 215728725 508595750 972793954 990219171 21625605 645012268 269554135 638128907 565836399 837090962 329655 429331795 626038033 980903990 465738078 537690929 859893387 988009940 668617382 812365241 951195321 965579466 180700922 848047176 442848436 794735960 488531137 505569835 466791073 889503998 249344058 480378002 339400260 629105924 246294879 467983062 549755964 561931083 537463830 578671423 511485736 966932812 476558115 578365179 453692367 822129634 993886808 998497374 815997405 988852073 349790493 428965040 3783808 612338417 207641924 441847200 762806354 771322800 691057912 923776448 786567165 919511462 964619850 992181475 420699623 859769573 509790809 584302488 510906188 694228311 534678065 612952069 124627423 588592004 538279389 984667095 774395738 957799074 327255923 590298856 417994989 682414473 472172046 952372601 906578456 949187512 789369959 939786818 262624860 887565978 593980698 876225562 111923113 382616038 587860933 856051523 203850768 651401877 73796365 865935024 478481991 855167165 114661910 755119905 425110662 526290306 512527982 804799390 203874652 582617877 42048422 95100364 468495902 674232052 978418533 989983645 71006986 741992750 920992122 961370528 264697072 583033784 827537533 973429114 323406420 364443895 35441075 166989743 537741184 543167591 359844949 542126761 665879629 744887841 790539226 799860595 931245435 953381752 295911521 763668721 657550537 713374302 677973999 824886045 197466661 841280869 669266797 819277877 557057817 577157297 420326990 951302191 290236257 818638915 598619862 641857045 847600969 902647065 797896739 920471381 879310261 994526860 79107232 613166076 395577000 605847714 547736715 745720518 657984095 907477044 981603747 981998733 589697158 635902750 466181251 648902097 777840604 786184890 447159309 667428002 190839757 936226254 371585083 744724076 716663393 893944053 371115581 684784267 574586624 977658373 84162077 670125080 454823882 993526531 830528442 984300956 977935958 995527848 198766673 341302043 89275876 159068961 535888905 793283306 853678623 899803852 235783962 913278095 393734243 553314975 680933755 839342874 268250635 749395880 662466614 951367170 849133190 871945608 844141195 850778124 323691593 642729589 393654432 724586492 732248765 944666445 377383222 850123756 974178219 987863829 635372507 662333322 325177074 897303658 390085907 475775596 663165347 772486396 836081879 875810825 700039978 757866135 25163422 420066616 573127318 686054690 413996826 575515539 965226122 999425838 36506363 118696180 856673927 992383593 10943231 54414934 354220637 486674564 11044331 419198111 383623907 502401047 40002591 682678057 298448880 325731197 842835570 993083218 15094306 626386812 144431939 391338194 872955257 975543318 69138365 156848402 911451067 919947101 168403076 596257302 901200586 914707901 300844359 499261535 733210591 785341112 385687242 854617840 237750774 707427664 362476684 988813315 284435848 947373836 133519219 343427627 62466065 419338547 137257303 290314923 528794775 599625456 398306390 419968181 629608511 928498078 748224666 772991812 541974522 692635412 431876383 578635045 759518871 810550673 725785510 954117166 519986331 840621895 946792683 988669897 761619189 845650321 479667871 961678783 600516462 636498189 928865101 956429319 225727627 831924519 381399769 495334645 701341254 770786843 683222155 936279634 447561322 948378658 151002095 572974788 267068828 405875703 107533888 121852894 854694810 991164186 937697453 957612765 426910439 699294452 855760795 958409588 209952813 628738802 809523808 945217120 11789736 843115500 12725128 70449844 937231035 954512538 721366564 856594787 284213798 839105732 666319074 712861173 68344236 608673761 170258643 256776967 977744729 995772890 316962032 894990817 529716902 735373466 303846729 949738518 294476543 999029153 815029118 908564867 754261897 842149067 887222545 990587678 720923157 734059022 88982020 178307861 543047399 640897490 365467007 621359554 508309826 532463244 646571168 924264378 875767517 910762627 160284373 876725361 236108166 794816934 100477711 951182322 897473050 994040627 251159222 557228713 244436133 897822508 108414125 656063573 755689687 965340262 910655158 930396281 689575104 957719784 375709425 401386006 532572867 798695443 219517620 611427842 945367309 947516533 483516176 717317964 911048462 987754903 327914664 897780567 547247585 554340852 660002851 943975155 20742660 918826285 719173940 997628670 78624982 245091049 580999169 913090528 263556803 603312630 704444669 888872450 832891837 934329811 912772675 943616855 715639905 910324265 134941589 210717228 607135575 941104033 996985037 997163227 499257762 781793517 84575113 440869930 38108379 457072757 833431704 940418894 218531820 998190106 731274209 913036664 308798832 315419537 99827076 946911768 736691020 991200331 948231293 972613489 666401775 735054323 173059137 491949937 679408228 964868229 85245797 906071389 399881940 424931089 168852225 571491570 461001792 873349820 332191855 976953539 501194479 663072063 296160645 353722134 19587033 387769586 522861209 704773657 401015195 974380769 743453419 949086015 167532054 637998305 719873805 756027999 730958029 886967684 714135721 885896660 121210067 634547685 81555094 773723763 967256551 993151760 945841170 984241435 603671871 627434558 127567881 655390678 337366000 409082779 527168691 535095708 82546007 322208152 811592447 869837232 282420896 519887733 852299207 969423077 102899157 802539559 727139316 911903423 932721766 941262718 159847866 280814178 979344576 985882486 79876208 99378238 730304847 763446765 28775619 260473753 312212548 419676576 218993074 751723649 261184516 343013331 915675891 916503385 30780232 84097742 166100480 715308698 278638482 793058486 82949794 373931242 52732492 458257082 785190553 842327251 178048778 631330154 975993034 985220505 824286699 990295818 711969857 993236540 466941340 771799762 100596485 656820337 621277364 796678468 515493022 609188359 725629688 759668204 487079169 964534880 885055780 915272898 515128482 529321440 369659009 794636171 60378538 560486703 66151192 701791957 411540988 787220821 728645918 920574891 557963435 956768963 173826975 327009380 535243964 920767798 479329004 945844329 735486300 964023694 132747133 299848660 771494966 903613146 752262273 818674691 596274306 942576852 460042475 763547165 577579488 617930383 162127917 393322568 714166278 754824479 349445684 912285687 749922933 983037858 958842744 970725671 451984105 881688811 734938840 818581661 170734222 236103718 514552668 651775188 178186159 747158454 649190189 891046860 194625798 561901305 805115375 874986849 331698212 985679737 678269166 749430238 265398473 576849389 953760695 980769915 606150400 733619218 628499534 898244503 940937139 952660854 62116786 309287154 722853200 912064913 392449358 941768259 110370480 775591682 724210600 853193116 118175747 778406644 191178338 269810046 66177362 584760059 120632667 731538348 13062373 486514487 82646817 553459548 532332457 798070788 902313349 925757217 996334681 998911504 937025124 943815947 340750370 578975702 24415637 922042520 684629447 900164922 132364790 401850059 185653740 740619705 29214740 174113198 644166731 810061901 114154058 333560077 154483416 157560299 748670422 778928740 312416620 512211246 118949138 608848402 524812130 696105056 681098094 934746268 666682188 693037103 970238893 994006509 553904300 663635808 956936406 969614723 889146965 969511134 682562593 828193478 782861552 841316452 872903208 942889015 147531044 710419080 950332374 986556070 295748716 485387803 846320479 871749012 299862765 973357066 378925671 919067661 151757264 841732411 218990969 966448962 11962255 437103683 255784227 884094439 622067998 900135295 766222955 917879866 91221729 437614769 307779994 933212836 463305524 547922975 302373654 629148656 934783008 970080124 926004283 955830590 704399795 874993344 149883670 488977216 464329745 783901860 931531970 938397169 855338528 915183951 507730466 538654070 482969942 732309928 89240354 545354761 887913279 930004477 128829790 985527912 814478309 966412731 203117046 291997718 118366140 386737579 848034838 861173176 601617670 946067193 359524274 975252273 745907059 919818459 789954526 954525750 644748862 755565615 375909560 993240212 304356438 362145533 819065659 975782484 439952938 673518805 954853259 985951282 602499218 837541763 934022170 965686768 646526260 914677097 803922159 804136415 247602237 664120309 817937057 903088510 222758024 356501715 324847701 671220325 199974737 672766801 516595753 884348176 275503260 570467335 54177904 841987644 422042381 578593191 951205542 980570801 453251062 891900229 417193019 496932634 756744886 824688495 89053143 971640647 397219522 560476808 514145125 637856025 119742373 543513665 989943373 997749383 961789469 991878454 617400378 840703956 992944983 998110943 549347225 678713040 2717983 519936448 814299695 930839966 206996627 620540421 171433658 748853727 567261357 741970097 285897606 361683388 239308715 506317989 3399150 440191667 832812131 848706648 383396235 994087403 633869872 724034997 839653787 990611880 233966757 804633212 660776920 686396172 88053458 737304699 419934791 442594666 739580037 861261683 121612798 764879513 865223339 870953680 985935137 996818318 685485583 737289534 581066917 767694449 329438652 595625185 402061757 687622845 767172836 969315947 913454940 961570592 775552274 878723587 632440085 963103429 767177537 800001460 249062779 250505863 32710707 130479019 23770505 308392939 266188375 560480428 663998882 823935245 589643718 617942329 742409666 777089298 927086702 974718791 873157118 921299884 188457783 736779172 244082414 627672330 851347095 871503259 379052392 753604317 907908526 923816361 619833541 933673656 561576616 753736580 572634121 913725233 480011212 483107513 749743581 769642099 610452965 678077544 744544143 993777960 879238693 960623744 890065048 987172186 261842890 848750691 96025815 596969886 54836827 60181470 546154383 604172464 481047821 653057820 707488798 809390588 463107485 890078970 223448122 523802828 670525633 892837992 868931393 970683002 408630016 768742009 636281620 759931625 362759912 558884525 505284213 506295689 613649540 797492317 350150492 556870644 759102551 772800231 418771006 947526760 38461790 968381067 941671115 965878327 4294967 396758041 14217936 420901791 628308581 745152411 217158903 273919286 14420207 47953124 798769566 842689750 784393627 789749392 557912104 789503972 312620917 554225914 315950699 626106131 169504027 362170909 382111248 421250567 111631943 525555887 984667178 985078645 812571137 931273821 402415297 969762010 580115040 590692660 74310818 972047855 54359035 615394350 633040376 764821509 288580232 870446347 252140865 556007216 487499957 738989053 992398089 997073504 736721192 943253225 823288856 920556067 447139892 659695048 263206693 687978052 887814482 904626744 870197228 984461739 627373998 978340395 273331738 330636041 344084629 780880218 262869578 959011319 37150365 746639056 751745573 997651510 567094870 770300670 889322160 915812213 712359471 996547487 818774815 899337650 781518017 907515302 267155588 443882805 657867878 829642311 76070249 445047944 697529625 800215926 843689161 983842236 620351088 625397437 656609237 720094177 437034682 650074834 113096304 683403978 380090973 756562918 951160306 959343777 103767549 144735047 699913612 803156392 815148264 908196990 24220489 541253368 690065307 831926259 351433552 774065242 779605928 893070734 260481860 461192732 749081634 885435205 895575784 946034426 546894892 619806006 161299184 879233851 317414108 889353197 147643375 458158730 551831953 948773371 761878569 800992792 117680859 133628597 707736841 743786338 957772693 984286218 176464709 489318981 670150459 710194187 200164830 425078614 292244137 474739856 103340946 807633587 66786200 430289901 56993909 273830303 433836939 434555193 105692117 521225285 641390687 719936112 776191213 871953690 24480567 607399039 164636675 198293757 324796499 558860333 575115866 763522237 460958014 970711309 338690508 838394738 582659747 810080761 837333057 903369262 289869505 815934409 20234973 43369934 263894576 317198590 984351460 986118858 313999737 315373984 167728103 487110924 571696068 946426995 765612401 978568558 639923043 778479184 731063263 808174742 646190235 742535883 781666817 988146092 275459816 868086314 46495141 637522007 679565597 823017712 106141748 972221390 649363380 663144137 420047220 967116852 358143662 832721541 791691878 821828673 775854163 996052327 18846474 115571419 877378490 881080895 776052636 852673755 645733193 666573899 245630198 537238756 736569046 894627128 543345839 812062379 838342499 847400721 874995153 934673771 701374607 811548582 440222862 894121298 792640558 811809749 584729698 642564709 579024773 983494363 684976364 776589306 656622062 866015104 158150160 825323186 229184713 855547997 202414044 478850265 225127015 262734183 770497622 829632763 749533347 988838831 632797091 928432481 489541500 683346485 402857785 797727219 768642761 832891149 273038398 717706033 661355063 756456128 443140787 790814843 531781338 539226107 118756104 185958900 241597968 875014900 598014805 839584752 81815116 561272342 782267607 883851959 654394708 802938672 206533515 708338289 455696237 855179039 748017503 891814174 400632708 901170788 732664962 963193624 542223956 968411638 547835186 658943860 387013145 753046592 145956978 948081255 441454424 479222279 5140756 227615133 946308154 965661122 607047800 697794321 599127205 603307784 859125186 888774484 420731567 444639862 940407780 981993884 256794773 607535643 569231451 969734464 668184534 725932690 81234662 906338424 492271522 976056544 568849260 985494456 684601815 719580840 353002537 727385134 303352329 963052746 226841588 920680398 342031396 820911246 824418975 922109912 726596604 993981927 664280402 965086855 334408115 827696581 365416745 917197508 573062034 792614278 625853597 919075266 830127455 929164853 675295421 821231579 20452906 265999784 329672992 554198353 832480780 909184654 919821484 947692959 97359201 515408688 306701911 649265477 647982662 784780837 412375018 810028225 219643235 867639526 857264169 942610951 534916979 617723722 307822655 539552947 182020787 515131718 865159735 877514059 636383180 869732293 544152722 830996411 144772935 356192940 509248488 987585917 441353251 573373912 574093432 634349265 403230194 824429677 835250185 989205262 273497035 818823806 734936197 863537317 298310035 936496872 179871190 782686836 434535836 939428859 880471449 896009901 615682238 959619188 520831049 588809967 543766002 548640426 402002501 487588550 639371621 775330458 381839587 494768300 437282521 743506462 995700306 999005388 654463219 771555215 218624528 341081941 741694128 899702469 964049251 978908119 529840085 706362429 60742292 731827083 255536518 318594172 331526032 393832925 785861814 787518639 674328419 913014038 529274288 974592348 496576444 894544915 704427951 930872107 363894596 549400796 678056103 765012390 816151737 862017655 753471552 860956662 23783716 901079579 559062487 968704045 547358185 589818467 621389396 774397838 382366704 718051087 899040811 950127850 192196340 661859809 981368334 994476072 753800733 971291665 272906528 871376932 604290979 928784234 865889132 924541730 3751137 913658227 177007458 937809357 535801324 723345134 378310367 845118921 418073124 647277386 950721382 995969952 773742483 928184080 496738592 826115809 789512333 987774718 910277690 964938051 609966352 656724760 871190028 991443785 415413146 881903343 289294976 548052883 906233719 929465743 206755045 591741269 715434285 928774877 3898912 574779301 203379637 739663223 157004306 628967852 627631523 919135925 300526973 641446366 943885308 968450108 237125031 406908513 516632991 877139556 743332889 873792049 480844961 688073275 492282396 980962939 162599819 520137257 462258094 803937868 247528583 400060393 522495242 720991844 907736218 918871192 614534446 733492768 637411807 872290766 592086203 943087570 179912452 279781481 683980704 883630554 455905621 500019752 496739448 802366822 317119384 943344465 977654064 995110706 155531382 437100912 225070636 395007445 881574427 905217884 807810828 995124181 560232364 896790419 612291483 768990608 612888522 827907498 173025725 487934435 589780942 674757655 581453409 909677729 768363251 918099338 219452790 729480477 28107439 644514265 850983214 901331094 965221801 979187631 5230053 927780405 257494431 723170359 316633254 878728077 599642961 810055636 182594482 971233495 845003866 922357471 991008061 995134804 454687448 593975816 728882072 837006918 99483587 742726791 23296254 424649253 413780692 654990391 845708276 868168570 937885018 940852491 277912481 744566610 576078360 623032280 206921448 469322429 247997091 390383050 855357930 906755987 463789622 684955321 272296884 541279227 969937689 978568798 333196875 402524801 89677768 771194654 521253197 883700721 641114151 898866641 660288480 699856562 623860749 891624663 932854522 961088453 717503107 929281646 945804247 950895165 892696580 962656802 248249554 971472171 702230027 863075436 552867394 826451975 33158007 656397424 675450561 716514395 214318251 849034846 810063060 831883880 642799487 802541314 291275345 960572346 220987249 489330801 852472484 964533428 450351238 947576343 867509094 892233228 248514573 876756019 740334849 880714122 925182040 941241482 672856022 984169525 810853093 843188165 829174326 855570057 75035813 212044548 544484279 797444272 378360612 647038860 123639443 153171969 611624408 972858345 48950202 489404582 528586915 971913724 710867491 787691021 91011831 298874239 234835944 914172093 634466868 994291673 885025812 956317708 109296026 793612293 771954687 779594600 318561244 382512059 927839121 940358658 44549195 899054665 399364281 768507987 837100821 973636295 310391347 380182076 430167896 937466969 36684982 494532752 818789354 953103510 687386282 877767784 588558010 880787513 896593992 938458099 466609916 942092301 449324286 636748733 200376323 331695623 441461990 500629711 39069926 467818648 880269988 912593518 885216979 976967005 586206004 747108280 139395566 494447479 739828594 754739047 567123176 589276713 841019035 878293808 193122778 891188249 801155375 971276219 524705230 937118404 63766606 879754235 712052011 981483857 341840400 636564887 501226348 736113115 961743725 994701626 171138868 731553791 964825802 997686908 749159572 926700437 519170752 797239416 72968583 911593725 468994724 888846354 395746926 842369436 712300236 961250055 252270091 778526029 953148048 984603264 116117520 131229763 911366351 954145817 236884883 574900053 25992799 152883932 955592653 961553903 580013082 822993169 199660326 460221788 706483294 714781734 141731449 215660175 595913591 845370275 5884696 750646342 97404768 251774381 813682795 974212844 525485948 620920622 257094031 950613501 655111213 711711725 442538826 873292433 424191323 728954408 770227033 903633228 765849690 810460832 2298418 707279445 890435833 913139719 784252168 890256412 297775828 634703666 801306209 817809639 440085208 947943780 727877429 754703829 955805259 967416625 983822796 996358783 245800865 441005934 216528682 264722589 715089625 938455616 207286830 452130433 277318457 779289743 311713463 707831220 243444566 762609651 84991461 792480247 279062655 498013558 330268824 606221160 975939399 999144165 967832741 968928511 483441910 893299247 317637195 391145021 404181692 436705674 830450449 842317107 477224460 784765114 22123885 783949954 791456144 849696696 988559165 991216350 35567019 799099122 88803695 817355748 12828994 479674531 654131931 979155511 455305186 573137676 238873997 442618899 650580777 906422783 678773304 781691545 622551703 726991352 76194325 398417264 112983068 178011256 593033862 669022334 644295925 809553755 214418984 216101435 816966896 823715346 702310002 994743195 535613211 793329395 441514676 665204711 86021982 367902965 276054317 558930695 918517205 992633077 163523474 516968559 786732786 805984859 80448749 135672646 830964310 842988454 699961961 701230801 663114223 961477380 940127087 983711342 461072791 967900919 775533457 924427768 162952635 847942798 299918743 564968694 149173342 638556532 115230151 370170433 580086319 720971384 730337882 784111040 363661804 932911124 842603984 956235009 756143771 900492564 601992314 954304726 171476205 737956293 23467954 401142096 465065291 731306613 698540464 763288113 908589509 918704388 756753625 918377271 965219437 985085150 314266151 819504422 464724494 851213491 251876221 464195342 133370517 575868363 602972336 799032717 628865259 938943846 898261970 958641102 708060765 959061973 113205088 766501138 676838205 809146762 142519137 976570592 708962031 912651071 227100409 266767645 399666040 854380345 216662955 902564311 855258676 943744715 477236905 892887713 590913379 764715034 48201933 132320661 13597527 446925778 736290611 742510833 498222970 639213257 26200687 662044937 923496697 963804753 811893995 941841509 859639539 878295512 743477201 777691011 829483896 833683044 641952365 907192087 371333839 910069475 442257770 574683471 523312074 901132612 52115100 866917008 808443358 901781359 268297995 581498262 83829112 518514036 487920073 679453484 449383859 884849248 723797949 981966324 329046150 551537800 258037380 371966871 340869306 527247712 713543889 727050825 532731797 577999511 653496090 736305815 658166895 759477766 631406082 812496801 975325333 994511851 647487927 914653584 192948093 530604212 780142475 955107244 781429324 885377957 964953885 975182196 237079585 756963400 180193578 899628858 841796066 869260644 179903216 473990220 847176036 940615001 241032169 346773517 67478207 360529771 46942721 718557347 830630092 977452281 205275235 466230838 381389701 799413050 834093298 870719065 197571661 662026676 616002833 629219091 776695895 994119308 378434459 667686040 707376616 740878882 358410575 750550149 851770562 940247776 738416349 748051301 296207335 363930617 911998065 976325629 413457793 834386478 83912780 278332428 367536386 784703244 667813005 805319619 249803182 897167497 14163216 663112608 880534492 888036366 457446256 673348385 518388251 687745744 974618700 996298918 532118880 659098556 260045448 576720144 786405197 808182059 515717663 979442515 590157191 655094957 29764422 840483644 561793674 659095866 939160555 956331850 855507316 931429825 55065846 747292172 657172035 907032463 999745915 999763462 165765890 617582027 248718269 720385772 75086787 790745813 782449332 855576213 836590467 896478271 497563333 574103579 808100709 923263098 267861860 304505754 773930816 834510149 704007078 833729719 174551480 529030401 982497900 991243929 875511040 885480217 995792387 996452606 807631567 863744607 1027933 33633304 55047695 689112945 838383081 932382975 88806849 344657983 706184040 876934858 877778973 907820200 637869185 819997172 21802748 674513907 488022731 587654490 85800418 369526682 823080706 823845608 2317180 33216377 614009991 791541066 754359284 948319138 768745000 889795329 531144523 939270743 729693197 759627412 151121817 258805710 88473699 895907772 493582379 939333390 4740375 456487533 798109337 945653612 678505945 802195340 972076728 982729402 709700345 920150713 871522736 989217232 902456048 907709517 730906899 735663018 64022534 311420555 672628197 753105038 518212652 895072775 165015053 214030095 328003812 792350663 323160465 857065229 101112225 229735648 465373065 535884829 63216447 488187774 629431819 631373714 13868564 431515277 82036657 205222187 540834961 729204409 505367522 572797489 682522056 866911159 393036279 476894520 277590930 723294390 742975464 759153825 75051165 661746689 268771601 937183355 696273055 852936088 138126628 841685197 759014794 953541295 48975768 504187489 291400112 638592132 594655434 767629507 184506952 408987848 638550223 928769751 954367702 959982096 96451389 718222639 800421685 880018937 865138990 982093870 14481151 841829538 513068230 598399962 440471357 525509246 274422206 983796790 692249799 952790191 740385253 901283162 998014796 998868720 784700949 992013538 738673246 962467432 231653764 535204002 915850593 958355170 97137468 598508805 943274182 953309549 484174503 576944003 864748523 968783403 259441057 283488311 204133070 661105243 439583719 861253499 507726721 952541489 640461079 789775558 382012906 777060381 374878240 724115093 894448173 946561110 170697720 738887694 472095784 987759933 805333950 974124822 550084483 985305171 997512583 999896743 243957444 658897385 66057823 181476124 967078891 977510544 155586877 747567275 685587442 832376740 70146325 248107332 854625791 948664725 660714168 917891995 234197766 378209707 671931744 773165076 447481616 607000135 395273038 995069525 774940203 963193771 851270752 914187547 263989389 597933330 784495726 941921695 924299079 955888684 511125865 836688780 429577811 890320185 668780203 716033884 971134742 975358829 389550993 867988921 747897394 838722591 953506202 953783163 454274961 527973077 464645663 928510639 218378045 274860543 939387582 966004289 495476262 657621837 29033875 320495605 613022954 940551954 166923305 898682694 616296923 820451384 427311810 546694014 814934989 815683666 990908392 999939863 823241405 873051521 862947703 919876732 161789740 490821831 158201764 209654982 678186236 780716998 34104933 533212442 850157280 996065484 107734031 436779385 657238300 893149279 552161801 791046818 226543001 234509108 739315951 932375942 728992078 989906981 870377022 955714614 998704570 998871125 696031513 757141430 443311894 556967977 377693523 690777113 848769342 978057103 240464844 617401556 505102022 546628982 4152724 531178278 820772428 939561061 854936434 886797124 512179191 666673812 981488325 989881425 949718111 984691785 513711846 537315375 923919269 982629526 178531783 298337504 67331340 535750309 379105747 423283997 720875593 990268140 703418593 990715571 647593975 996071680 745984780 989599492 119774002 644528424 866658668 905587010 973188248 977561138 265762451 870927908 231056287 768739988 74461163 324328383 290632060 432889788 134879697 671954999 988898409 995250085 52251522 792807049 334581225 773582735 690884511 882203590 487292580 559767616 433475953 761129187 651878496 736687688 979923166 988485730 477341089 554433787 631985590 660283924 637961312 692177712 850305212 961473846 382311759 529206073 486757806 791754333 775799706 861470651 878216700 879723870 667571395 887536895 443097352 579400899 224343443 516267957 609888283 731111340 598132503 995592476 808191435 929342059 798822292 869339570 698073566 810668947 38776164 743929916 841126048 988528968 78559358 194427433 519082935 735709399 891615773 906562021 682210178 719769916 567006752 762160332 952132049 990210163 628851772 821180137 337320519 821646271 744647943 832701159 892216414 911798394 884332427 991525233 256264144 624579716 756144264 929270590 245487380 679496019 977694708 999140875 136030598 417497044 316097912 914750784 542418423 789933873 50103413 967715699 515153372 978713733 6816856 750662252 977197957 991193096 383798418 586112249 153906695 254514826 897434938 908937337 985696251 988245626 563913455 971783221 665467096 721705566 30769785 532778168 707683078 756722188 145375243 652051966 710141901 992885220 333984066 602289700 45706491 984646336 365564730 996098831 4579429 24704514 370629530 735233024 250958662 539745144 46943113 116481825 915233513 946397734 439159341 469272527 118722742 163150883 662874111 859306297 582472004 654829704 479133269 897578934 2717015 659405987 243807902 710708644 172825075 477722931 915703077 933218407 127653681 332035488 825945948 855122933 695223210 777840945 15407723 216423483 561256229 587386987 999426167 999569758 671320092 679795120 339863302 641448294 725884311 931085426 293500060 714330622 175553551 548863570 112040899 587548494 685226804 867150943 947170142 951926884 963401677 988439506 714332788 957546629 109916339 330391514 247960271 683993147 744704049 857033002 577640201 718895006 455909965 951815095 514844711 939476283 471226127 903708898 602741576 926547359 577477365 866050203 649329395 879316510 248143278 628827450 268791276 987194263 838017701 902020535 431485633 703203691 806023319 938641183 891911711 919108823 375458299 914448068 46185717 232410287 928938918 992888832 949748538 987569871 809715747 936606110 676313324 709191052 889132062 983702805 547375378 697757332 691065139 817436622 857264249 933625712 20547757 664228828 584138607 952276625 854950824 906689842 180947642 857936232 680377147 759931511 699003867 999566264 180763900 323982285 356227209 674978353 960773794 971287159 4983311 182396970 576943026 614939701 141388776 976967835 476861175 912938694 550085040 553828810 18823602 516085860 179900630 356134631 494227107 624774014 326796305 424149161 70916336 908500641 957446167 982630901 786765064 958743889 31245258 974283044 291193614 758434726 277937900 463788567 5617888 782826531 560959829 652921825 45716474 935472062 790952063 954927106 441434568 963193133 460728481 716373625 662264184 975163277 874646483 996935236 739442894 972658536 684716167 773484949 670834642 744977250 54439737 464297059 255106385 754620662 75460480 493836250 64008532 513964291 367933959 493009711 527288506 718735547 900671056 959624775 509269297 614862754 596862135 937241043 209994671 406576629 382936120 596294191 921758887 927066683 724269569 728733048 461773088 710433067 693177061 914257636 799710507 824032665 409530998 560721142 88810484 513532705 534062899 713418698 247201383 276148241 993963311 999548904 239805520 431655902 385252100 851205967 514677824 600000867 989943458 993777106 387353185 451989352 297723915 729612464 563531135 691617754 281930707 614431345 38547611 360237004 136599007 708067071 981837337 983731845 748155727 995847220 499003839 859637034 89158221 453720327 328425992 492496475 178321759 397989127 803811941 913581415 639161896 863080864 1854962 43663003 26541189 298857787 727779732 736131785 697737812 834116127 610146307 741169356 82071394 100118312 643000906 878571545 796976758 989280856 455513396 850368894 648989758 729895166 473991299 548431652 421349942 593271419 123519639 235174448 70686328 817163999 288174829 622318857 283835618 626229670 464715900 958598396 28488297 204531015 368597856 917750192 86016678 995559285 706602181 717963173 11367858 201774895 384612727 615066732 982487036 994574551 235501097 543548105 359721756 683675450 156425252 505622835 347857669 889917798 304659922 543323753 439249090 795601697 27146515 360671479 414577392 976772150 5038984 55392511 340561344 652195306 816128345 923271071 150220960 530640974 668974764 751147156 307835465 359017517 170082216 584330932 862492941 925755382 154836753 483249161 72357503 595673051 802975128 814252865 662577817 957589953 793361062 830620761 863432037 912696114 689469546 693466536 434939350 513777273 697771170 792536070 336576393 718734355 38217566 375303166 804023999 921798094 396223860 530008823 757190064 940340362 736473828 866243648 276533386 698446322 663330738 861781474 192398885 951937198 621676400 623891842 80876874 580428178 309838806 784225189 912713740 987087035 81612186 633382526 305238110 721653096 798428216 811167508 207294530 459880787 864117516 972667170 102113890 344282727 847833047 974515626 796536463 916621032 565737036 722120905 232580540 668544778 877412364 885619529 298667336 933833042 585228016 646324325 435339402 987933866 700585021 709988815 491004748 842879576 882878519 968460541 509306224 627707639 279027235 436168874 966114937 991775252 774514537 845328700 837964176 872274636 781970349 935299838 717165121 753794783 312422239 419532707 879278659 915491189 102895841 440063515 316497221 422421335 197938745 509117494 750285198 877940903 219743094 420626567 227335779 651230092 380749316 642920086 982059408 997906935 206430113 321456722 656391830 875239781 354536554 703697198 835637839 931757075 743877939 820135466 576805156 947531668 935974762 975079720 357158027 450980713 609598679 621870821 29708545 887389225 273842381 334795595 110026788 701545847 852395341 940003697 538628393 543959017 562633045 711222631 136995907 928805373 539839638 921541730 551784970 578382348 975763989 987102858 445620047 795361335 618506044 884043274 570625370 710779166 255783418 306600893 89089253 479211859 210516535 992801932 918740367 972408215 492457379 502792490 153088409 984005259 502435750 524853239 291179629 612713571 770177863 900673841 441671809 531478862 289357405 713635034 970789045 996440652 818716730 992282969 910991708 998972751 446744599 943050812 401948928 651081162 923046633 927605017 618443981 632551511 166557946 272227448 596578770 627481365 195865027 387230758 155896394 527279986 523336451 774454616 409492892 712064370 972685705 991729972 461725873 475634639 732789807 849629758 966900183 978162342 583235478 945726161 754016003 860814739 475389700 933615873 616950171 622780683 848760932 962043348 902316883 987193237 610279321 868560836 838854761 962287960 914016748 925556330 37308000 170833168 171184789 237166528 928625417 973449138 126577325 762462018 441457790 479519290 583581294 956098375 40373695 242871901 562158551 599851522 377624463 495233539 177612771 205859462 119650961 173708596 941798198 971823148 936049268 943170958 136245574 627706760 170035987 585535411 928030059 984699200 526480007 968799230 880577680 969770049 832119122 922915827 373686388 407633010 907642085 967241211 908127505 960912437 394847334 716311242 240289333 752119792 12414431 632769691 331430722 648080859 432869742 805119984 436778618 988209347 290209467 434628088 833981025 986766855 554232769 818617259 121771763 729682666 246007525 409858664 271027848 988106483 421109629 603099988 196008271 439270192 674296397 968420297 436950994 792384717 868372806 925609259 587139228 931985642 495186310 715638936 222018670 549823548 639105051 978012472 483057157 977834232 235441685 546548107 32491093 402971327 72971858 283153754 702136937 725451106 229950252 791365569 256108945 426341446 481761644 542211782 283262652 948705500 422544645 753845588 890543571 973999088 535337961 733229376 172266495 651176799 853956475 929866755 777639506 879280457 690049656 888855308 757799016 895645199 311268838 715234406 307667465 739453197 718218458 841910803 730144260 939825791 395746940 807925592 46232099 711769164 681337240 709792015 265586571 863554611 268856972 710172152 160146997 408020762 935732117 973863576 835918599 895368509 454716512 794469962 769734641 966464873 606658214 972487641 824441204 832873111 989861239 991437729 567623630 764768438 666287181 841883409 107357615 820752920 829375390 840916795 393927711 588813803 135264736 731678537 530443300 832733618 767591936 925451509 171432469 584492143 324991413 550787745 575476300 855360612 863893214 998894268 10709857 695115887 762899571 916373005 752511550 807560612 332920166 486922553 443821255 930797408 778356659 823288682 671318569 911081375 134741222 144155951 411464563 921986881 593786821 629916586 280826012 438622683 15282774 334341189 110371162 651574801 370622229 597915784 966042282 973372263 826095728 979255594 860997851 885434809 273267227 825945127 325381416 817393905 73642545 275633577 519872519 665205760 745225383 946376209 25852573 446209023 249945490 485297170 616714282 884374665 31516180 536715228 767344126 996996003 368068014 772060144 958097575 963696998 415392527 652374170 631374769 683174151 33953174 966090133 875688870 958277821 19509208 291096327 972437012 984424981 850510862 966358923 86449882 206282360 100370125 331668553 358278822 990409694 344252525 702938861 405893529 574754650 119695621 354928916 481253998 734521037 179719091 694284887 432975246 798570156 926691398 978928441 565958541 644266139 178689132 219808026 743808531 975594781 233095314 551304251 215805269 940548006 678958575 973802683 500480796 901896706 861014892 992767791 34747604 536034583 803199378 912849996 956289783 985482625 416921562 451158293 138288342 686559292 497717356 903041293 533504081 845297146 252190319 423567683 210806459 954527575 927476410 992014166 902145009 968379858 508196263 794233976 37552687 745734672 170112544 415332992 41484702 714157915 110999425 593585380 359500608 970887845 315633135 336412017 368135472 611158322 29000252 731543267 186893038 755368823 337135368 710152972 246314158 560575375 13477441 728729497 37611428 715563880 686207419 812885646 667102839 885862054 989475658 994880458 107931961 686387321 553759595 599132450 28151598 301726367 158334013 487981398 162873743 940316943 423074318 458153405 503481226 630083338 646622717 829729806 350096595 587553103 337965056 391481590 414819641 821832660 546101311 604908507 506648771 567423036 547153809 720912400 667954380 806243940 642762275 892625456 895337128 968449457 938882882 969479858 925066661 947689664 551875633 704165975 958884953 973213374 416196501 902247366 545555698 644908349 28422513 182219552 932294432 954048392 850467078 867957496 185333238 463520020 177516889 755330422 631472708 965400126 938801724 972790603 421691034 551926841 97344277 312376919 57614267 194867877 830176851 868469084 57861083 991103221 518157319 868532504 200118589 711555929 74916406 741528937 537102893 604427354 617143670 819474454 597412706 718932608 821667978 879056959 741432689 871436628 887506212 982741126 507070992 662224910 904272196 974823146 745640882 982188283 625858248 864374839 807627335 945568313 300388070 556550883 112808556 455297745 874758149 889026422 6433072 926617279 545020041 812594047 27899352 157359106 65515293 397312040 631281844 917971742 378803440 482061850 56017627 459575983 926021678 944146061 375148781 489976849 20991101 258187072 670802338 889499337 326545618 388989275 788741467 869702556 205973324 435236726 442882709 953083801 353717628 704358486 969872369 975358226 880031243 974082622 27570451 324900494 890789915 928079725 785882102 798129160 381698630 977930440 886044035 933130555 523235316 739988153 31045961 649913129 13014014 644886574 776991588 982746544 867001188 999924892 201318938 933555328 46283443 759895519 867476236 867928602 275022963 435489991 906323292 916873403 146330852 978514623 570070829 664131801 598474614 647430548 588226921 663118421 840543100 957467513 538904339 989952513 21797752 616609114 85623283 146040824 95928263 834336914 974875135 990128294 316205814 506339096 379999115 956977131 131142300 582916753 256735239 467882873 480486101 789134428 520750117 700771368 29332857 699084877 765404226 933688167 715097311 989294501 96659318 108726874 629049065 847132858 799006679 908792658 806641769 967782861 36849221 385614159 340571349 613432909 792475851 933390219 530202067 808350792 867194843 982277967 924753648 973974019 983107420 998122360 399047478 655565764 621859731 688229903 19796506 502024647 852846358 909588783 616177467 827876500 568463979 671837803 450991602 692537714 830681669 996687290 179570621 232466628 981360789 985049164 566457785 673382666 494732993 612689791 665205283 962434351 224567136 915082548 682253395 745614762 696653443 887552801 17192425 981115719 431181928 934987745 925211375 949070590 547861011 613932955 218171186 841476297 519790087 762102557 442059148 588218873 620827916 668372851 854930850 936951605 745821329 750152372 910109735 962549943 493499961 626534251 403192617 769171519 919975209 956636328 284136530 845856893 275154187 899688032 332491317 592075201 353648821 508355083 119780658 661227644 231817775 697820757 789989259 805760556 985456363 991388038 916503511 996552650 354365716 485250568 470712532 946993450 738387323 884275702 908546462 944403621 977730785 978401717 925930069 963929401 499661744 585524220 661449265 884705014 847060542 974711007 779669925 787763733 354709572 655412376 726248139 999252729 702634943 733908509 863974540 956469525 248855852 810037238 675397907 755338328 582223271 698126871 903045370 955053065 130791060 338189138 446913086 993106074 414771083 807295763 677221823 901839412 446742171 647058641 308007975 533004706 962989105 971355121 138942868 400730189 766110985 846027497 89129697 354482311 896539807 984667445 691349869 974862344 700183125 856099595 927634170 963394736 154979373 370455496 193803521 516372980 1442350 676546455 819646974 821736511 947892361 958025462 447629602 463132137 720043169 759553799 974479267 992745544 773478042 942585159 261904350 923486591 313809726 710318705 990803831 995374945 384921057 843202697 307015943 737692689 702682539 727209971 692368156 728190508 884005021 980706845 440731079 846120546 540246464 671095412 503616257 515458634 141377703 729859622 836075936 839329978 519971479 877338280 764579745 785748516 70913467 312629442 818470463 911174924 78778144 691080692 647724368 812570166 509660864 610819285 958521267 997451424 396463628 780254540 513735365 517135537 341308300 644051242 641572118 993923306 124777152 823729451 188213296 567789758 36333833 298652017 857633152 950595956 954964197 994420441 958823638 991913009 200390795 443347721 677071899 934434528 194366054 781608718 613565751 762020342 428847349 736017038 602774174 635644094 210333608 710019423 85166158 822650238 601124919 795931983 633256645 830664644 649433875 946103697 923251399 928511043 421353767 928698521 59982973 306458565 335938629 970320917 688024153 816935873 795571424 806709130 617417204 793748518 334398233 386687105 561905965 773583835 896798459 904384440 546876308 593534877 195252381 202193461 669534012 694463908 440055682 835545583 114058352 193534963 511159748 520464882 473301341 854273051 848072006 876960530 295976068 854136274 532068240 571537873 504870880 580574465 629779626 974344628 756406128 880924841 44417193 193179630 540643975 664142001 121374911 872033853 106142820 517206095 81351040 425699610 222525272 751191581 312293654 859261814 31042926 319068465 137378213 847641275 186423423 331457949 20519156 628343470 574592639 683928321 585078779 921743726 833933183 952092741 840084475 840693847 737819158 908878253 668060767 668701580 562710369 715883409 376796876 586260785 730175716 909589767 724496341 822516759 415912656 824324531 557319742 593204521 516312989 865342195 51325367 817243922 413902797 796900583 33691445 225184088 241996611 828124491 536991830 744140533 886055022 901711404 280304288 391004642 769165736 781219333 435663337 725123035 747555954 777523103 303680207 852850793 442200029 535803780 739010393 843269118 285563056 729792478 366491954 765950558 716868705 983622758 378469623 538221221 679368576 990048498 730081918 803133889 616525286 954266548 812074504 924237462 919495367 966058241 121653441 871776467 691843944 991194855 919081677 974969974 907009602 986144232 290439663 747384672 227066152 778722483 707423767 965196528 868408700 975740939 119438339 277286819 588230891 699588335 265737492 849454521 352662911 678219076 868757194 869105723 207798628 714690581 22148707 242647121 539673917 879225140 596224998 863323199 686130781 937011070 348275353 792872077 563919447 934972185 752676163 944686376 922804518 954523883 193172208 468540534 187105340 676807097 555223968 710781056 35412542 772633661 746646669 872269810 916825282 921186836 871762450 960774812 435909556 769062259 427069508 979030203 371135712 876036121 107566654 841294991 221222219 834557893 586707936 751358529 257602157 891773112 788415583 916738680 663195099 667115635 822422531 928744420 92721725 429417524 798208047 946763031 799720745 830948106 741355380 945400456 524787036 832230701 227838153 930113648 799901606 827737832 32667385 449386317 348999222 739769920 38994453 673596393 148973764 854788027 315686660 738258870 637081652 958036479 892344003 893420200 577093266 708714340 698484392 866399692 544090196 624662607 347068681 446337818 421526353 648743665 29991361 74666885 499536131 673550147 851442726 959549817 926840772 989396667 196686683 925929554 760546515 781309831 406332404 431928917 35192126 222118500 626449811 906798421 110694597 614466342 736254102 932968124 675061177 974912046 937063017 953431353 444541555 790045080 483493325 772533059 812430 481395955 877435902 997315036 678555921 916240929 872871922 969855151 61216399 532493300 677249917 845813777 200141033 634422580 939734078 966760506 998521526 998997127 999979415 999998270 489261721 579189034 407522503 941811922 999820580 999839972 389752914 697362878 467341142 845814217 903821905 936580709 88072040 913154834 187187557 639704991 695142577 961251108 999361041 999367805 231824551 724398595 250088293 308044821 439221228 876272899 133429253 836752009 664610002 924834448 949245990 983117815 297133240 788937329 525147457 888579159 900340513 914883644 257399096 505774403 116674742 557691971 275280351 608867984 890816530 900028890 551322097 619902775 743458222 896216517 463674694 494029439 589757763 827026059 406966814 438978916 210769051 856590280 282191387 659502970 987944024 995471483 813234416 945574166 714545727 719017783 569563817 738765256 857504775 959988274 639847716 776383854 202879907 893349698 654743987 894953809 473589303 962928334 946298477 950400015 818722124 905656281 506877047 592175428 52732421 166024619 896029997 984069016 418220079 470131480 983230377 988900846 379618566 954286383 664859135 711279602 542243819 891553976 458950003 800273164 313247129 960908122 932016543 948166049 740553031 782436960 539550457 791257809 534884934 572202231 546729111 889318933 457232534 958850994 654607057 856088885 308924554 504376260 839698025 893294047 958465550 976253888 295971789 994469322 136428696 887965776 686600089 902629318 871165708 892635683 715607685 851625753 133188814 139497926 384536607 606405110 380813472 923513969 976284958 992534378 520399504 603102797 727147061 867813562 83047821 999773580 348731758 354648979 767977323 783373878 743664837 968020058 432632020 727602715 347394250 531409658 398368725 445988664 762866154 932750859 165463026 258509645 325944209 859535131 760222471 834347813 15112204 619261747 337596070 810078435 57598955 262134816 889191619 999059352 79963701 317543186 672135174 906509703 182358859 591065684 667737201 865492222 419014089 810192511 788542892 971821832 420022253 455074868 145196801 410064780 590066654 952705531 694611752 775479665 102052200 816751111 83927309 383135742 839107167 988256771 735543200 824470389 908785267 939624219 560300747 960855691 399177626 989834955 226130898 629654214 402075045 705067252 298508855 943507062 628706419 988568256 714069467 846378074 476713651 554614526 677740103 989186717 328690289 772005637 580246161 921920706 600383475 923828932 870734316 999662243 321269916 914252987 728409016 953380622 492894465 825591452 56183664 230217589 429564987 861381628 712692165 712769853 487031633 836964138 361384508 850912860 340912656 733720544 559717644 608817659 71103396 86533068 615769932 832519197 799201244 997855708 277351189 513737929 525723916 586643805 965294121 975692802 490631177 697040285 542199405 968363299 796225620 848567076 338719425 756256097 963836321 983815447 820949193 830363506 71417562 374489102 956674952 999103197 938087837 957799691 929866202 970673602 132090082 240261515 182162080 473857286 172447889 695653143 641803525 786240679 248923545 895003373 321224792 908474672 716895171 806600108 71752266 391064660 991715414 999529813 607158669 932604644 46714194 139911149 663082781 970002910 745167147 971404709 979971990 982479000 921910281 987829908 435418745 992412324 595942176 814555840 711865762 765642931 976909963 977743266 414541293 702075869 618180531 772133588 289147017 494567387 26689124 841390762 354805061 476370284 444076532 962758351 638812565 958210558 875844054 988916607 195674969 340890487 650955570 858687586 944664458 962233706 603490209 967449621 740891416 845516072 486354505 579683278 209613314 448986735 717501771 920974048 910228628 929577332 509053867 981151007 997599121 999914183 585242692 632589903 920970836 971887519 510303130 826762301 630212591 990063430 10128570 638159205 246189589 697456649 964934477 997831453 374846107 933696121 781081138 844092384 899078504 934570413 910796868 943118861 180918930 519908327 590973320 868649535 477102794 532602721 147193784 257439889 601492184 630009811 693890012 840527855 484833310 855227162 180095413 811204599 796277040 874154291 695830143 829077225 668033016 924234550 322886747 555558280 789210732 925691217 604799187 668087609 707077743 827808185 370759900 485872674 286778888 900831152 831524497 891018297 570854375 590716642 956782246 963921581 85640489 203770964 615734464 722177910 961430304 972222312 488544498 832443072 328357995 367888873 769303295 984695065 138395828 304728061 55904349 555575821 321564361 912797178 110493085 687517614 283192841 665203762 889511075 918754566 226714084 909540075 800338679 872265971 314819739 981406596 884894929 972120349 225671192 232070456 642033011 838989337 341746666 830820448 347528873 806454479 915523927 924035156 448507231 497770827 761709538 983216248 41743173 483754615 977117393 977524880 340299065 956352516 427545737 664154729 302337355 667514559 896760480 920206892 736191225 796333031 541371739 633166982 510378821 766454406 30999115 913263661 428550551 810702046 47334056 53262411 700452292 927604146 978383784 990186266 568027430 625742937 801634452 927461457 248267507 421858660 750493383 775135306 893922443 963273278 229468506 916975705 711205741 788089926 701662056 704347774 422313947 537605353 24021790 997544310 938392330 939948622 318907583 582434335 564620961 846333212 292702324 831151796 184893350 495535481 313845976 835037055 107016330 932775998 640692833 737558102 273961669 449976005 285006970 564498203 698622647 733728004 749812852 835359788 797137725 955209721 24864482 329743064 438503178 540441517 302013687 791455511 191053635 564613421 143787740 500057691 646608966 849105385 543297338 872304908 185375203 486341384 388702502 523305749 591731114 983237883 446829761 683172776 886405287 935894400 596974166 844515008 597080976 734887630 390921513 625074216 394728253 529604829 508656585 741357684 496709785 901807377 564928369 904927422 633414336 719171553 171142859 389194285 570453860 906354679 739274425 960791206 741590960 871063980 85508664 692611963 819767145 921097691 907041004 997488803 993187501 995815055 422867547 750456618 646334351 917026157 17290312 334682927 602747121 642950140 74319266 229362819 703710150 729740730 711852726 923507737 961650851 998264769 782646233 852186472 675482561 740637605 912518223 985365038 606477000 936590943 358028972 695720605 546656599 783787557 140307686 986162787 294907491 604395545 802216818 916389395 750602265 921720095 548085478 617375597 576281313 903578642 630092947 681476343 838706555 920075596 946207534 995328131 889323660 967477812 169415803 811090824 380837081 751867071 132597107 696457713 852081415 888587406 431899063 997216318 121144546 820836247 613570606 653517130 988330447 990001722 858666712 959715310 54467647 829458580 485792882 709049411 465058410 531181240 235480805 700260126 996025743 998297967 999258448 999341552 46694708 461049724 249761977 752374147 196189631 624337458 712072549 949251869 745309731 806103582 578904134 927798730 328697854 562478788 200030266 378851624 573115489 696460656 640359530 981434164 124909290 793383104 347115139 998885092 320835129 498984139 431496869 624694064 152295014 187031426 339616305 619565396 684594558 800077687 884315573 966358367 190741056 470008849 174347769 337075162 741162650 966076890 532459824 688703464 503837565 735789409 954549035 973019590 964976757 984342591 546799560 632471568 685608831 911248102 235962619 562815283 837899136 867846444 257778622 440871977 716009475 739266826 525763674 866466853 361319191 595867790 886623938 915459478 107552427 952055107 850007640 988510696 923077052 955411859 723287168 961223357 222120795 422770646 994888295 999114854 47177637 341217117 90267661 142561893 887267696 986904721 593092336 828603240 29537285 368375648 895456022 912526505 732360342 793277565 157682187 582535975 83291921 489253672 180874126 454660320 417482471 518295803 774363862 834561555 374323596 803692126 966866583 970241361 209407509 427143189 23715145 216839073 453088563 463503379 971578069 973357273 933918181 959795331 565168365 842711886 174333624 813379478 961003515 999123810 308034739 887849162 72772141 401531186 612141091 716369250 887522060 995780385 141254719 708232587 235953601 340962879 991617677 999944678 467924188 870316396 724940121 918994760 595243208 936079744 260906117 617932512 398978390 440746192 530049695 761620395 787722307 988371985 138993096 259507782 942264726 963890612 62609146 444041551 500619600 982391370 876290431 970640855 37161782 705100457 957172292 964822559 556643377 868309524 352161484 998633735 261246619 374237177 305001402 310647854 337241131 885650951 493240686 647218809 278239206 696857563 931399665 960402740 22141973 214654143 641462354 940257478 122552840 934300528 369806910 998124136 749272032 800916977 620755306 694589834 102331360 567778907 640415047 901980529 887174520 894589634 374541325 688922474 407909698 608936371 331727884 445445400 6309548 271829196 345483273 378989003 623678803 643839220 611582360 801355368 961258781 980387963 906172693 922143946 313303046 712081415 896833404 918596284 644810847 814804141 378437929 935305725 397618641 942280665 986876436 996914068 845621295 944177190 323739304 359681008 202430453 483564526 493108140 553302492 733363750 945031446 68368436 948646750 637289604 796010102 59336132 276856846 39388261 479703452 437257555 656902647 154941102 230308057 783471681 947286591 923688304 968136508 32380910 153784868 32767049 361743819 475073608 573046079 910963059 983471829 447160382 659986974 406350689 773581401 868257664 897607449 928487918 979677172 547667508 737258000 334604946 932879922 473339960 998575594 841119550 881880772 577233861 695574204 151773062 453056751 890736592 913546289 495865520 582696934 381093629 598360571 259136375 282224645 970942836 996034563 659117552 769487357 723558619 971163563 715907833 851292129 558027208 980049942 945496806 958258717 460425865 995830987 785250460 856782793 732783471 823321238 174867374 605751957 228908942 531497028 287345485 416208702 871882046 873078230 682526385 854477779 823046577 956105857 299587145 433017898 320737196 452344275 10816931 623776461 99998789 563460846 972730615 985349035 68740432 313037442 164916325 870324584 924282845 931962632 297595027 877752505 148080694 832229361 503006614 730058612 37247124 526582373 938412291 944922901 173366550 817686466 668161918 903855921 32109476 162037338 412917828 775873836 885912630 903706484 725883806 926311827 647563261 832237148 896508897 902656222 133976997 422095895 727495398 899759402 974187 434441394 861908294 980684855 880671929 918760625 773740229 943177160 332394739 805828076 210456146 843189995 697225433 856916476 9665445 992446408 409252797 492169648 185186351 380350308 343537558 845050609 8879870 641374778 336288509 564778201 397662998 692649405 730958034 969468778 794324463 835729769 318647249 699034863 945028549 987288190 316855900 991116807 939533493 998832644 613507890 692888829 688395598 696630095 4979608 412593524 653986716 765174575 152113691 436423858 284092101 998772768 576098712 744557771 141609341 746368512 44678993 845736383 104648571 805485411 582851881 801886790 884721475 967439078 904766142 933737847 177321590 380126096 286385543 992705790 305766171 492739660 512574733 901215112 861800786 862078323 130037425 350828593 491173870 966539171 210007276 322818448 338363687 932188335 152919679 871601008 778526754 870371110 937509355 978016692 674220656 908174272 827020185 859547400 215258095 428166727 788977422 872713118 557623788 951262473 218742890 360845115 213157708 627507821 675321285 974306001 66629748 423809027 459613677 553943977 217960084 268751789 196151777 427480642 160836882 894271592 740788896 934619154 743664200 998902915 793230833 981656042 171309890 601150668 68151347 919315309 823542414 864564377 403571433 960691392 649680284 818029840 985924536 998470443 945975255 991428141 323687449 636505069 114453276 870718772 662442574 804456844 253709446 550634500 461270393 501457925 260724866 304425587 388994359 592712321 620985474 822479712 43265505 737866145 353614464 830935037 366358808 812378712 997657247 999004157 254426393 982275298 777786225 823550367 799779237 903563084 135124300 162173564 85842509 958477003 336881981 560966530 205002554 849298097 257229061 702512833 508877307 531641917 805219046 814541689 876837045 880196122 58938043 590533990 573614341 875933331 325330168 713455211 64586154 983168989 986651532 998505136 528536343 614298933 750729498 948228121 400976026 750587038 510895968 991906692 771441112 812689269 363956971 366771172 614326050 947723705 500553987 864694641 857506257 891557170 114319909 347476410 868750055 944822384 111012881 241243947 924872752 945332100 232603009 534487660 921369537 927256798 180344867 370441113 234104024 927541437 849427320 870878891 481764598 758170623 193211140 315190966 998132866 999990068 625495008 910780882 766056544 930487072 936557050 989549470 909518123 954663053 98506903 180687089 517583701 777755121 902593774 929863368 929559482 976038425 489637734 762556103 84190723 164056447 437641540 891401693 248875181 595912165 341791226 847644964 728906265 789698572 39713248 247204238 222509175 519742578 921180594 940204075 989864605 993995057 694591771 702526378 652035429 679727708 64529267 353225521 781962739 838688666 60023728 516995766 548984208 920133314 655352628 891098697 603527057 673176220 334401741 364004182 27682366 806695889 977214164 989536853 755491296 914163748 993360424 994598200 529534804 736937347 695104386 761728405 580926760 691762541 991577561 997232467 800028520 813405024 365599901 846326254 291385796 415508786 778948274 781286048 246883871 613608110 855661822 880995245 833346557 939509624 267834356 709342645 426987206 594253265 750113715 789449818 542576316 655249160 258323375 522870303 117815004 243658346 262129837 898115489 896137064 901697847 187029871 821311618 107536756 369000675 968035099 981515311 743288656 870210095 217966417 742866103 359567161 962623155 846401627 873436319 625095975 996284850 363955432 475400846 748686282 815843241 310422695 717957027 852160910 873069039 962994538 970522431 396366515 587430476 504278416 867280762 471037644 636624408 628494971 938344623 76593978 711120550 367579509 795079496 568005060 845774962 78356725 542707431 721651033 903422598 637190743 930132292 362493038 897586182 228535288 718472655 837720535 954815462 172587456 828219877 868020881 958488877 63195352 183900637 399054229 865644374 413932097 603441092 680010446 901017984 654502353 680592315 671051981 910606864 763351563 898494953 944124391 989619240 678514537 823852538 128587963 856073328 101386294 470775474 390388574 506722436 604551827 902656067 632654893 766058404 882520082 920193687 751462162 779527021 747241323 902771190 744626488 972492731 527368552 682109580 758012052 799052729 321204905 756252724 869182875 985027856 609520914 927612341 380124713 647412394 863028416 962274243 518217973 714779575 51962021 607189895 79050101 542476207 878847427 971871112 976433845 976818182 549192907 944592751 111678700 594131794 640548660 829064213 618184447 911324875 749618720 953450992 827954257 872407753 717278209 903370984 827120776 987460037 512736346 610677635 216133127 801933208 573634146 622733347 889633803 950498866 667444959 708897362 272659704 716655973 369233647 525400669 564708629 722309820 268304323 838692792 46587166 243244396 885474436 951849146 242764565 253961068 205166674 449094395 741722006 744502655 681094620 724313381 182215110 615260733 42072410 450213095 505598521 797270143 869011147 907503450 187732083 937108550 682165358 913782874 358915767 576615643 659181454 927512389 627107881 857899448 480258017 700931965 189109569 496551947 817300367 940678416 797712119 957554827 257181643 999412002 399161643 468548521 496808683 665587246 524626526 697779741 123362028 188387096 133829692 254974370 180818216 819528656 632490429 748579015 683287414 919429610 141919536 510437878 718076876 903508312 483940082 850015474 576071291 860982414 757495563 846995702 109411313 699344072 986166472 999728710 679014159 758043558 454737814 607285925 512198758 966665698 757621174 803800786 114652096 141147268 846873295 899692077 838141597 965434165 529835615 969544271 362537294 748068509 479975929 730359319 914726546 971211974 189682645 371350585 933594280 996312857 507510474 792385011 757869775 802339087 546233997 676213925 293971065 644891601 248069781 592223592 599922916 703947471 919092741 939475742 546942726 584264850 130509881 309327062 954204631 978969081 28217884 991232518 856794193 936211990 146919542 689461261 325890264 633034215 549536359 860152383 834827761 902619221 758927451 799246734 274960168 592571339 314876139 320736900 496555610 724872601 220817161 691453246 746360404 748737358 947108117 976298807 536137203 985084070 701353465 758265252 55219669 152317821 860450364 934171149 18529130 881224874 52976898 921383753 838242600 995395388 229874486 590576810 841477313 898179195 162387888 826273752 472196243 734195908 835366784 951043135 529931362 794657155 646214316 830567464 105821961 702924144 408076149 561602698 929548840 958961415 416938953 923410773 189312500 995070757 858307603 902442791 951768846 990318690 21467123 956421180 708471503 784934225 501164626 541769375 273963704 358696775 893565886 982157606 464785984 517024091 794955895 968455550 461749314 758430508 367420055 743488318 247304473 865867530 499892382 545217584 342950518 490989543 621621950 773994137 345914850 493773787 669169386 861686180 779849331 879922559 544053529 755736213 828555072 934257353 284925719 412184772 764017906 839384608 941656789 982646773 968967728 984173820 273024801 904316382 93112758 313127050 614829838 955466462 544559542 718865223 420784727 702164052 820613500 906461480 90087977 594285144 610515414 642177148 230722584 723014969 107483513 714489849 259104606 383737901 460764890 616944544 383491283 582440211 744997826 923424649 772994692 782754215 57860271 235476124 824500379 962615790 639942369 777727468 116709786 215661201 866404679 943539800 53632388 416887467 770128617 823799675 936941043 960586867 510274296 890865732 975327250 984790069 889176622 953890752 952098119 998561016 989329550 989698749 203084254 272610853 763968020 886788269 851820016 852972222 425078163 505642383 625697018 799571767 847115817 961264007 589542247 935871778 627960669 928289351 175769522 468401832 427207652 802899148 285619791 636666115 682964938 945917640 815872448 834144025 38602456 659303747 539217743 649481351 921162647 954315231 688504670 693052863 785216770 929791922 887202756 910942138 817799113 850165315 23587548 969333467 195909980 295001885 164191174 321761881 143152548 881348149 318606300 951067739 698689397 983642295 477169367 618957621 29723493 865097401 387821061 711213466 332665885 746167625 42616586 497321092 300723966 699378275 945212592 957267693 83468893 518369894 36355901 83753648 275302900 379013339 433537546 522612156 30329224 87946412 630638314 903846061 600268452 912586117 117700369 397499457 533292224 719716023 509212379 866182407 49510088 726241682 565900914 870947978 536204049 711848688 920777278 964569684 12133306 868648569 247848525 505227057 250282031 897623734 196300204 346431071 700219814 854995371 649683759 712344896 550763761 704886606 869593688 887461666 659545715 870888072 396751650 582266995 117780745 210554228 857200824 969826202 700391509 795202080 935170418 997910600 262325062 839422965 794366850 929662875 899105136 922249439 558974196 726478592 321239047 695872267 7666802 912589740 237245576 427880454 357622760 647770622 29751488 418006200 48373128 194159991 738183653 808912377 735342016 738254082 604428634 900704509 365099970 463701051 919769144 926374342 170220404 562841088 798348306 889314937 680109874 755751100 226968446 670387326 912938453 942898305 663092356 778434143 377594753 836095159 405034692 461302112 409052775 602210203 315153906 327576005 999452131 999725436 281936559 801837192 622134981 795804641 311242435 488079694 867923130 967834051 727483296 862337813 831771272 913216207 418547990 843713031 608421389 997698907 840056207 957923221 460879398 737769625 950275710 961647617 566269397 667115975 644650668 929029041 543966056 960455181 884159310 908861326 848049305 932510895 124399998 713428548 668738432 988625265 159280970 173446393 323556476 919365615 992027669 993511250 179351834 930365443 548525876 698686519 791112733 959895212 990800127 993021234 490039540 505978281 653360488 837453763 285272920 313098225 761931368 992285603 145222850 409253574 489641959 581572348 464177834 647876578 23483350 799632269 979027434 989669719 227572784 240401587 5861247 776789703 566604880 623042552 150640738 368805787 5965385 457409292 353525134 948171867 780282933 798023865 461486857 776782107 539402923 902332197 840629842 980196971 681669480 884370562 907024483 953701076 387273496 993044070 746912270 773298159 692361555 767290346 631737495 762900179 260979991 856895825 757530556 990191012 232015429 268328792 835429293 875495467 144559984 408869336 401915460 664673520 138684391 838540523 977989188 984768146 913820138 920746853 617625421 764710238 129961177 908371413 724307513 991323527 601950028 892531546 749548754 998436495 817267303 975070678 642259799 679364862 457551979 569695080 191822702 427784298 969464177 990046372 716867691 771082299 181626957 959522194 994367891 996270131 998666461 999924241 771310446 831327777 861875731 949519785 376628407 915483710 726772713 857828545 691057613 810003108 881729646 907758016 847014647 970958752 102814435 163792996 321577307 341737564 937212169 955636011 752133819 922094669 855875444 905373526 817701410 890388963 106102563 638843235 296155766 715273202 32635741 188585227 367764041 991088697 415740288 808448381 984052188 985885840 673908168 695246290 152197359 693046520 726054133 871782499 82723472 868170227 598644351 964769100 609471397 780779221 289882878 549330201 658050397 833034639 168130782 376051037 851711825 852914260 347168340 663012709 911475837 924177415 931285888 968679221 908649584 965795362 894178637 927768253 272371877 765809617 440026908 874456764 947895092 989288252 885745367 990714954 173200722 738532315 247782381 554199379 660399875 916991545 680933293 980050320 664011774 895627593 481129639 554829393 321359061 593825997 173960604 301732456 500580727 747933935 100657339 610171491 55177214 290912796 566504479 908763698 44810598 758900990 31455878 149512581 563678192 775960908 77703052 840464566 582104508 953557336 378765821 443664921 729697232 820243687 126846313 239018258 225253781 771132907 445402537 632886163 763489822 989866330 685348710 895803133 503816788 804768174 446965600 837496743 921325183 992105647 531735098 553168668 745611442 754863096 820307574 891450649 75766181 685509877 343928752 475857877 522868433 886624338 222984474 373523635 437087376 874322459 721312986 969657973 779585329 839575157 155098727 535816828 349129321 705664082 964263918 996736568 447698606 502870634 11971807 97493999 936548521 982494355 616546808 694985054 909085687 951959854 636370335 849645214 381964884 510661898 567120428 874930847 611546061 933965422 754254010 947059162 794124184 886121041 517415207 992131959 909963475 954011465 700154148 846688236 957709882 960940779 218006219 577202924 637533774 961603978 3627613 776115520 265060642 859441999 107520748 166656409 67661881 619439165 359980402 903179684 462098693 618568095 994279398 994508439 201864186 290272841 786136500 853143569 478316471 501319291 702880924 931191574 652012933 787145106 610937908 929769008 947731034 969286873 77031195 299010170 469060935 536380919 866554331 906140650 350481624 930615197 303594244 890583976 140110225 276359183 899103367 960847321 199098548 943772528 780609568 988011694 95423059 594675142 131042463 798630241 477527464 799731817 734046969 855161285 848466870 969722670 205240214 916524948 33665858 325125199 721018455 974739895 122738751 864508218 627876539 820223150 454256123 602470354 127333676 456414883 605054539 982315405 805813881 878233407 151623735 518631499 908553906 947188095 321683852 766166942 328634766 682469723 320051134 684634705 121508883 290673179 597684439 873737853 118965859 755165827 494355343 889211616 733817720 882936076 238582803 451011724 110435871 523283162 578334560 903718500 153292559 559199495 795145155 963774691 198829839 913900682 688724783 802208855 707440532 785290814 114418179 141901714 477677912 595915552 828284278 838926413 165100892 599846575 935768913 989280494 720893843 827052515 647921628 695422723 733695635 957170442 927478336 929354467 81559387 756084711 769402892 892403006 668521759 994142281 17461956 529625494 145290613 604275255 807058882 997173897 974555403 991977730 894743013 956886761 521401015 720106700 781417278 937639446 848313004 920636676 15670808 743312215 224587706 362770078 548873439 662436675 882739968 946957632 706977546 722392014 219768621 706481449 582424912 961443205 474034549 890789845 791195452 856759154 145539764 295588459 842001212 871677589 578607023 982721020 491108201 703242851 899136353 985330355 33056682 670904533 367331064 409131322 508406818 643668035 687005763 756835745 6428676 961625249 764099993 784042796 915611335 936245554 763778264 871722844 423121660 423274451 465515304 713509675 44443079 101012917 562844558 850451513 851090564 987043370 220217809 988053637 775522171 873128503 423575376 975954208 768597118 925870797 40974173 975634171 846537516 852569814 804625215 924915414 542618162 902734452 351319278 858698199 354919713 490678893 176201680 859150785 219200240 483566830 735384147 922407882 348403571 406554525 632096742 926962608 664559603 821704310 55895618 474121172 280243011 599431645 197318393 422141532 982326342 994002216 193705224 847017933 412684140 933678499 914545997 922347040 887542771 927473831 965119440 970813194 40065059 140892084 261898525 702518740 324049259 359451550 472685531 922404600 29910701 498783025 771381742 854487513 919858787 931956549 86442558 942585553 458655641 964307796 879410052 884582897 91255351 250948213 173272351 314372428 618956533 811354248 251217025 855415777 337836279 566801845 226490368 551236803 994072884 997821255 902074423 936953019 308708750 758903533 489729540 955764582 794287419 935544395 436115239 481918009 139547040 252658453 311302572 528463889 692944769 869928277 620229807 780695995 38220320 948421113 865857754 928131994 378528734 932108707 332868149 648350116 186480476 221743712 334345061 500537301 843830826 913512749 286117405 302457813 91173626 722227733 887921397 897011572 831076283 984348780 106059727 376183305 627123969 878813581 129506434 625725907 328561164 863083617 957624011 976126688 320036578 636324783 46827171 149529320 384153972 387089043 787515441 926717225 264483271 745182136 536071006 878644199 496926067 741302227 634465570 651305271 338601585 464468231 769250556 859731351 854693176 929250830 336537141 984426001 93838544 908556564 864944356 903848223 118094923 152764132 663698908 768843905 956057479 977326918 275222170 864914559 853795919 901384696 422287302 612171766 457462628 968192203 21581227 716695059 679445524 713994077 59547510 921888585 375424648 498154731 461878382 957499523 790208664 829862661 10629447 222278337 106719953 747101058 567855105 577781165 533842948 881529270 831727768 844907615 209901234 994007554 86429101 124411480 862649512 881658410 73525395 320119709 541558312 674299698 984570233 990675510 795340816 924721906 622054832 955937236 719873257 814178879 329574648 810854724 930006476 979810410 590314505 754570708 180381060 805431524 175113442 345523013 93664486 364143045 128920505 547038795 105224861 851733912 379003171 935183018 562762157 565964848 227302153 989304117 704595684 735546606 36415940 555637260 103247128 958708947 153534878 673794577 394660394 554836412 496171329 521028912 617227086 678049823 105265225 936278315 504981494 543081814 834606019 990397164 583606767 643478658 878738858 978452139 952535442 978900125 242657644 289531027 265954061 771916547 315874892 680917803 770511500 826834688 628065071 629177034 618460156 786130249 534492190 750488833 866069084 998650686 94924420 550312950 501494508 729498378 829741513 955818906 867455175 999615682 128953022 886759174 940383996 971726811 250749401 969612113 913592591 977453674 921376802 925134193 996129828 999606334 12476819 357696945 750016764 836313264 5773795 671096622 979239346 998183914 648415160 798699810 944979775 959325587 135540313 288975934 533295184 709001041 517490707 951923848 8854351 275809109 451311835 605166831 939270989 981363385 493725964 710527474 370525798 696570443 958982946 990152748 454671612 566328954 915841230 926696670 301577705 824323091 543874845 841727231 572072015 713903777 42446406 877613740 103163476 681214521 158939553 957831881 928901500 991802511 773022942 939807228 916510755 961891091 822400197 986875631 472167123 617688140 388282515 754050053 545933978 889080580 879103578 901234152 64502114 446634985 449410763 837874086 370177949 498845197 235280365 868853836 52350461 59878179 25182497 70927249 261286557 786954360 219389285 945737127 581252684 782643007 107139605 183279392 206266463 916264668 738110803 929041826 145568038 971747921 351695533 372998610 813682413 967832255 421973586 581063330 137994508 933628849 595272242 943115833 665143304 999326748 25630612 95370176 59437452 128218190 360253379 759644825 273432095 857223921 875102704 977035683 712108968 998100178 923482568 942313748 91468469 666507481 32995838 647509385 262275814 894834342 77906963 275455458 294724515 549603331 57742841 838695457 276695188 481018996 888232712 903687422 253127561 305810350 272521781 617283758 373173942 539109058 272519498 944265938 855171720 869988482 939478973 969400758 223799877 405406274 750644384 829637901 981996623 994064308 984869235 997134488 245966251 501729529 665301071 995889805 67758382 484618470 394656282 565893701 857965246 988047464 716646692 775769168 936510076 970952590 633921239 882977343 12395743 447409034 932157367 981448631 363044323 764283059 373070308 713839197 795008271 960255003 391207007 570708429 236947102 377518309 788881151 885183030 301779601 459287065 435406101 501122900 294137180 514941148 975820468 991241255 771715795 953206541 379261788 778182957 772397376 973893733 114453668 187662174 737531117 787381000 386860828 453174012 567967279 699961463 563930663 783154435 24947410 893210008 178779464 636101073 46782306 455974738 330117648 988486060 416626100 607467491 467943085 487814143 506014776 680785767 125293333 614631248 622391891 957065078 802003727 973644364 961249650 981787735 627328068 701136377 880347639 955741477 228445658 751384387 388364012 597846292 48725346 96443738 48533683 466368262 901040129 980409545 698386235 865082095 944944570 961719593 160050490 583061661 157491555 601394533 413762123 473234845 245028499 381150747 237158662 359019349 979163433 994208419 672038607 738038415 859731094 978778251 552241176 583950372 540632346 676709011 139471907 467281770 733785615 753847666 83707450 958496867 525153333 551228135 884105565 963045058 366926 914049773 684001031 855725993 609835406 663404532 658870029 993393495 614044778 763857744 924602651 962478325 824524665 900787852 560910720 933748039 16068701 408619624 180420080 361772664 465892413 632959702 732389023 960507171 418256936 487272072 933387894 950986811 944608868 951288512 186420291 188106729 37981706 278613812 622999935 715398669 308292153 561156920 660663081 959203981 166282614 848020245 894931329 917686790 104319577 229403809 533919411 922379738 362393387 829705932 588935349 824069380 975878135 995742485 147542782 209960056 992309058 999100457 470763098 958873472 289454649 964202274 985021550 992995615 422892974 622440604 337127636 994097137 779568916 874791508 893814641 987878825 864479725 926490784 705887724 829478703 324765580 507240465 540453338 764020340 413454462 537324649 93013063 864537998 163303692 803839427 757123767 927222489 908670519 940859458 392020630 792236518 531344180 650467227 101656301 770286731 236584924 539242842 216024828 970714777 76769397 716336453 713968946 732525920 570148128 906547867 902661236 926431092 751423827 888397587 692119890 694609460 790973825 802435605 372093273 759218591 262585396 714817641 457779236 609798404 9386825 218917344 250905394 922522842 946237083 967465391 848790543 852835778 999915417 999952508 40779035 316454739 554006748 803468200 709162394 937877528 997494093 999120245 410943850 965733498 258191981 567930504 671620466 673314240 722168127 965545007 673471279 989441684 35868678 930605601 496722956 621877246 984354527 985052587 200542695 453653057 228493531 575888681 642198105 908329149 727512505 811396527 687618388 807183224 551312667 692874369 947723579 998350582 334755306 630373282 151529389 765037142 135938074 681431877 645743030 789521764 932279877 988460306 164030908 672809606 448166792 584691352 185471928 496774229 559116244 957690043 185639212 529131511 874056219 968220645 57544966 411308657 507816502 521095638 22925071 905346582 536347352 981567332 260600761 305230283 584903711 688787458 782755522 793463013 494362863 596967671 15013121 646435717 676702833 800412740 791288385 978411174 319247437 834510821 608653488 682986670 91782308 757280761 997304013 998462833 341817213 499577329 742418096 909437922 989672510 991779352 685590563 920544279 726365339 822311818 190941514 351015973 757036943 996892333 944692505 964809168 944219279 968793074 444093713 904532670 321240388 957751167 431749588 798264486 363237059 538666978 384544499 943550559 497640448 610331784 741965208 824775880 112978252 483933630 740852802 972485321 973819073 994013626 611917703 943616413 407881363 860539725 161166039 623844810 622700448 728723577 237255113 535636747 483590274 800629355 902901118 996412340 373962054 384283159 372516776 509256727 239273183 769852619 210082919 325212908 208941810 591842345 479590855 954884175 235823261 632085023 264472637 463336271 105466229 754558070 264932123 902109576 821465990 919324594 692208058 729444449 553578362 860536791 538192223 973575947 422659138 897389906 471722917 785151997 495336697 591735413 681051237 851753927 534441172 894872846 980158262 992486102 455760607 996945231 761077061 878944524 464544925 576692956 748771539 951135661 227614667 960740649 519210252 761129032 156292303 839438183 653565657 830606744 456957713 665610589 399829562 942451875 283765891 336864437 958510782 964107157 816905892 911627321 8906202 129217565 707422560 746013337 474760122 691027725 135285076 816419543 690502364 813133865 353720673 586840088 98007698 117530745 448905583 720478322 130779434 170883821 292354144 825717354 696228339 939673631 881936752 892531925 536840154 994528869 670910258 724856811 954128637 964365098 429607917 481549945 771823802 811902219 160677573 796711282 898820929 925318276 85403516 513367552 265828497 885249224 323328518 348912786 139921396 744581200 744943396 807678735 641656515 892009835 441221238 574155757 759066791 778559761 570970234 885970739 692763554 738799910 197442021 595227778 452818693 645288444 452815115 470616847 553760089 746098612 852799922 951420848 740443300 750730511 734768514 794712237 713561171 857929274 778444050 821578126 258857344 289391838 770872407 788577504 328549754 655207338 777268081 853196213 433643098 454896010 724926209 798058233 716092141 756258576 153609663 937151315 165224679 316681307 179690463 219078068 475791195 687274618 484234095 921787626 203183232 414890227 269778002 718043277 954259896 962272553 772111006 998793112 83025566 340002305 738069402 828944961 935554644 946141938 624648455 983632908 657748241 728725776 40192050 921285180 208950492 435069824 737259178 842523818 586227801 761542005 273214606 339293249 708254247 785700744 127143045 365170032 644347141 794210518 462028944 789443615 203328852 487089292 249707716 825719263 891369905 956856540 585263692 596231137 902693387 926903278 887621578 968284640 843983619 867477511 991246576 994557033 794110673 916172212 796181282 868097086 675181223 863945614 20671673 381024972 154419857 892598474 561091505 806641469 938738546 974661285 655176655 660005986 193828254 926076882 275780385 899199643 552338146 904877404 153099864 331051759 348745500 484057414 872426523 953019121 290852986 412233761 123982122 211487400 99915329 356691683 951996007 958071401 223114996 335762373 431186954 944186964 148428726 306381007 682218592 694235153 885099536 998365413 462406998 807686504 179240282 430649116 385751682 608140060 139070048 814796205 90249565 223137400 674814150 991314081 954553746 987099882 621024504 638707014 648967068 886417948 234707513 662100723 108525001 892786625 817456773 973245703 448346295 475030373 462345649 591110517 957547850 976058375 112818393 317233166 560189551 626385554 356890577 598640195 962987736 996690485 772406530 818224659 157435096 928292013 869479397 958374979 643471007 787029210 357585507 735075174 694808184 876123427 523373056 863832417 19322823 934098525 392822646 458024612 634605864 965353344 205057850 850051864 543520417 725321587 615501881 773479713 360356085 439504719 503085088 934225548 361351657 845449617 383117020 414690931 522499791 955075048 354284702 469379488 711950315 912265761 304156849 334030800 467383497 985399541 678514775 992524824 412282642 475331263 736253320 817975154 629808500 733579806 419160578 583995566 927509177 933300562 79316416 165289312 287034539 772330288 16765774 524953155 317875070 841536049 835813324 946305912 920362429 943621709 752984431 936595647 950800737 978181145 726936757 999015647 39124025 935403779 327702218 695310342 113009840 438898480 64239003 849119786 355748952 401249829 941259500 951063970 679617089 845690328 53373055 417365529 751107009 880924596 157764911 355191893 827757451 833761407 417808849 991200152 40044527 900122275 683729396 825634110 620186765 891355389 787989970 890039437 2719578 976347498 181066260 783318658 652063055 799638094 115060397 803142915 491276724 861960167 857264930 910627757 961664074 992529901 166397132 678311099 839234985 951855175 136193488 492435138 282077155 918353672 168184831 929194888 416341454 622682044 815918425 988445708 188171912 375902786 872431655 979319054 897598563 956963423 32200715 969879383 302065615 317836617 488185217 757999383 845042834 929777044 513168989 956820581 183362096 962286337 223661118 526158700 145043769 993085207 647936036 652814788 485396887 691633968 410704075 987264402 123354215 867532246 648391556 795358965 653246634 736359499 779080739 876717660 316844538 565118061 915965595 972374622 700146563 834867151 847785989 941151721 135790475 759785033 928420821 971644912 671009113 683743620 53972013 964228407 200280200 677297903 463714432 505280393 700373824 769718857 758387706 764299005 42914663 640802428 507905100 601660912 129257731 352811918 968851464 984978286 47940286 926563802 660804417 670973007 409918231 635470366 24900032 346022264 161227506 725570779 581322719 802095786 193968477 246648724 38296267 309298403 262903786 615661880 186548411 636795211 914795341 965063698 601119260 764949704 841799273 971913289 476997567 736718256 377573910 503272400 86079610 951191654 774079450 967269586 724531413 871907622 869816448 899410485 273031244 756343666 371068898 912630285 786517902 897580969 125158062 821281127 601559591 640479245 106565997 551898910 748070646 914500771 28285427 996234227 270966259 913914391 218384485 334743859 152822417 338085847 664464412 696397806 125623792 774538002 947401283 975051667 635432975 885422241 245576232 354655977 134506170 955568071 193874269 520070070 130495063 981313322 64836033 540861370 53892079 98007337 878183602 968426620 399097128 781762591 814824521 843222196 25421738 640743893 899575050 926476498 100524841 249920320 747151033 841083789 789270669 868957646 592177982 668240668 853118123 965724369 659417538 801410865 434261451 796913549 399766998 732956513 806366014 938549664 93361743 678686122 718047876 775503248 552080586 675573503 274127426 853931298 508188061 640102564 121427647 720224484 701785300 899087390 557811034 561727804 582100184 756848187 521779788 630930944 518475286 613136706 736211693 928083685 760919756 819544432 356654072 608582324 876802823 903796865 112460547 469893985 920696709 939925044 425618852 861174332 691655098 754357324 37357796 105365776 903726343 907276714 143599621 783230240 594187690 894519483 623885026 948524318 550094422 967258828 584692225 813989525 463747062 616217690 644778076 864005722 971203140 995498255 916793279 973063224 422945784 899054402 908536532 961080097 940951855 983720906 452207167 467782403 684346568 786308737 718048668 922787820 120630831 784888756 666845939 832806413 732723822 741628671 465321612 980673370 775094414 973606027 415935740 466137536 952296692 977822262 256045639 851572629 476543417 743137219 434822134 464478358 835267477 870347776 946036111 948733870 830351418 994109360 727913986 911312024 896462425 915343704 627882734 705305513 451442607 592682851 988962716 998499666 796685353 946970058 791700721 926281917 979069614 981107228 47335380 128753711 404365629 824450723 315504681 882057005 741945257 923731537 799086649 819176984 518087719 899877277 171083902 565463693 50218554 725736846 648395003 902231339 573319440 716124773 601864555 996829124 439135573 720991629 237415332 752164299 367211252 517684890 398279158 990162183 18932390 240535608 961097043 992630409 719050748 767124383 696401287 974022636 269318903 765241757 212570180 883443821 339603980 419335504 37293775 788410036 547475388 974951395 515630657 839400869 860034748 951065016 729233630 744983193 402248572 918542825 730415094 754827319 730121749 767509782 945153164 992167604 234471151 513908697 364778800 647341453 796079371 912006617 170381650 969676905 676924092 753767655 775095196 846600389 827829725 996070499 917011346 929338390 801113012 974926876 150461195 316509737 114636086 540011584 632777871 802277927 192607886 365486836 782144245 923655629 121493713 287318929 630481512 791610030 4235427 263223637 996451026 998098466 524550176 563237132 208278657 730619609 582552053 951293285 148421446 564477577 782678217 893792832 571661138 865286754 221741478 704777173 635641002 787362643 824737005 940213423 897695210 986666095 252648857 808225324 857562845 906714025 464110768 688424424 708314501 938570288 175600176 715482590 388798772 398287159 791209673 803086775 679004519 709907188 945097189 967333252 541453167 876165487 150883666 681762556 127810256 748587027 805051278 849729676 343958546 989127366 446034943 759048166 922896020 986678928 375418280 826204872 356637276 886708402 515073923 824212056 867402897 881316538 451461985 633927206 54922010 448435713 789532618 807888184 630137210 916546010 350522819 946321478 896170341 932364480 704483258 924384110 616268773 922603828 935978074 984701944 568570953 962875678 610486981 915143792 831018594 971627482 75586310 223165258 74926353 592537419 666929616 952469289 528542749 876936110 936107207 953307050 27167846 913445001 183714200 548493092 595888482 645936774 508023127 813716817 638758046 826626444 247566889 421108823 570396383 992700896 147701559 894193999 503533810 935477205 69736669 95997647 769610133 984487420 722201714 954771853 768917838 780743344 699709389 962327988 665189996 789375393 559744695 877151238 780735549 846683492 593854043 990560033 515725983 898541614 618515185 915178118 213250800 831819938 887017666 994655615 637385121 944623740 842318658 985998355 59564679 726878584 680888269 828013368 319457093 466323834 758891899 849452534 268084611 707533487 280858381 294227192 817429416 910665657 572015311 706840823 436985299 748794602 142069995 823229398 719539193 954721048 274970425 794204046 817986556 820133850 730149892 841491354 815100205 973539063 657408281 876547341 846201390 952501946 86308111 902368462 317851503 541434092 268862809 297949107 572055650 714638143 599122852 866360516 37718055 233568582 96036037 356076623 403283871 634221756 549099354 791235403 33596947 397806380 197762474 896549191 404379984 690756211 844716314 875694412 459954848 588264189 439304915 785450116 483936431 533788740 523710961 749127223 279135651 589336515 819025181 840359894 669339068 899499656 547787717 829416036 954888513 979325484 298996737 792412456 681028041 821230541 270318279 305933413 697730173 932891586 720304465 742695545 554943283 863732044 17920053 300840245 438582015 836895176 657767892 778740818 11459366 117554801 242022741 538955973 60426213 958351206 295938699 767763475 130648685 677512981 15383449 273073623 111917075 442486709 177289782 208994488 768693676 857700236 556603334 649159719 585567329 937941196 585084411 590125417 297102037 316248235 876481063 877714939 481330396 667767182 290862748 345402749 86781107 524699582 384222572 425419404 648366916 942941525 566978782 693368849 99548865 826544117 514865112 681747373 481952829 702935751 421563094 569051431 192851833 652242252 71670166 585271468 875204071 966753130 520316676 780534494 323828021 763980588 57533006 938445582 399819817 758094461 172073024 205118528 674594131 939067767 946277564 986267089 831453423 921807882 754877062 984599604 387499848 402048623 668440818 852957680 973863683 975146411 323704865 772416101 478504817 946326676 502991121 830285709 468179338 513740230 491390741 896030808 700132404 796248085 525835681 816427896 621114728 869824296 625383410 943278709 918157777 948771270 629300774 758125135 895273356 959378384 620055764 965467601 358507024 855210848 871755891 979495708 477078804 674152078 594933216 744613380 493554874 709830435 42616990 768273995 11787888 809281669 595504137 919514612 40627695 367977684 723405543 988593463 423171946 811885738 467359577 978038453 879016111 904474063 492609660 571457359 744049521 833648940 598962711 734435221 117255574 837300997 752721989 955176863 215633141 742894365 88519853 819095821 729734617 880422550 912995663 952647836 173653595 515174062 72078970 300652560 991524187 997947517 941289568 946497716 828395106 948093817 39602631 346643492 796861134 803017375 990535013 995253939 499204913 939879342 528779018 845849877 165819328 493156329 717253896 821808628 624806156 946238085 800479880 977231860 344786243 401376363 525445768 886686800 8826800 305829333 361110651 865253695 899845250 923609526 974022512 984679644 74853606 600868332 918212130 962597951 254680774 843397315 50711351 640404770 175308506 873034623 960044988 975459196 565488363 576682950 911176455 944381613 52214183 737665950 427824336 925906336 145129235 478749506 620496407 806708874 536486168 810456756 128676364 344395412 137672910 519185657 668756132 736640342 403488023 482495037 396012229 573769266 563325435 645038451 77895440 726999600 614070173 653972191 41014313 572466164 760206430 865125833 899623633 976992675 101084754 240027341 650914321 979280815 84295732 667535446 490044118 609914798 661909988 814292442 465741574 984302600 450981850 844048082 657583564 675322608 187303542 409728933 513461724 532297650 298374434 916559795 83110984 114675504 631571863 730619857 50983061 529909741 186176769 749108323 659106 252132608 678923098 984113535 572477725 832756702 741631289 848655633 501847927 550758979 1605434 193991631 431624960 996957494 74983290 129208184 866861149 989828864 843041013 970390480 843675413 962604459 749569012 786607588 176772329 549183769 391182539 479341769 55860682 244814688 855918333 927824715 876026024 935119662 435399098 811198894 631485498 962764403 198460584 987942560 321603010 552165542 962083197 998323926 501605130 540373698 465469203 713283661 734117190 946123871 909169070 955500990 767826589 893983879 788911018 835171536 764463171 885186211 326329058 674073610 885803707 924450892 413118403 942607935 667320046 941891612 251385007 455351165 917923470 974299781 636020731 763872898 840001293 993107706 745594083 819524766 716545206 950713725 36421242 82696206 537153834 846340533 853266483 952298331 813683768 985475954 157880446 694638466 51381752 920571572 141765610 276164936 18633329 463362621 569520663 760006249 888078961 937329887 249780024 671084931 627389395 968023499 690568888 697019812 292111686 368940764 908900958 936358133 250572515 601598605 475794182 550920190 28620676 149409825 990283757 995927898 807241993 820030346 579694073 593483952 587222320 976471462 113668651 931162663 766190588 993609797 961261304 981660040 100930396 712184049 614609768 861743519 313276597 478719820 631899087 902022242 483543230 786399532 928071214 949962838 770022352 816595355 833216385 893942780 387033136 428285487 806091220 818523929 684197144 926633289 840800603 895179417 281675813 757357744 769810245 953847717 928457737 974716425 680973838 778592347 208354030 383696341 829814328 846658886 90551900 264640282 518269911 933681204 628693276 723643798 551668029 761650604 156880328 598477329 783182920 795893251 58006288 250260923 960605558 960621191 95367482 229312185 264713098 991781231 917513942 962128361 217960634 849839613 821643122 874417765 847062754 912135113 139045542 144353664 326718270 600857186 566754130 695970837 361218477 569682652 755401401 851774372 679318932 793514371 326735947 608981115 458897274 945288862 981018400 988836785 425965375 677402328 80045108 134747439 880118304 948290728 419805743 656824746 252210806 568339009 270500764 971177839 307903283 821242344 854098141 927369092 357983050 883591398 286867087 567781133 74207178 470335414 201564056 773347410 170066721 379426309 640312096 765908919 516642118 949259765 613807866 933530217 658835447 786010190 213123219 617180101 765217100 986789105 968164236 996739923 530550119 860497977 627865675 781811836 32952574 990977131 77923430 266501277 637365822 729818999 303846284 372953324 68345308 70529891 884961945 991151224 121549198 921415276 607092576 679586304 79519565 314322225 966012643 996854969 403423228 490700813 910372454 921178362 775708777 882762976 740917750 831372141 526743525 671841980 392444043 608610054 51139614 639317736 843091304 898794697 825036980 826950488 124879379 955294073 384159638 453307122 412347493 430050297 705928415 880951174 604787940 926494688 719303482 808393191 822667924 926205579 650339411 697092410 120279802 132006443 372514941 510420629 948011495 997951566 662916632 914262234 154735280 848139853 887936456 916933562 19978867 651497170 934960165 988546010 722887254 838552760 880255905 910255041 406988431 746493507 665190380 866299192 215620763 537250637 582841282 833388836 881404564 999388758 959514779 998630855 21731359 193650695 343933167 625512213 942882150 973496135 711350565 943280934 616450645 814563953 836370555 892813960 520458379 645247974 114032626 457951738 269276121 499384011 49313331 924378082 89555774 324534730 11511070 726303858 360157204 503922308 553162383 977086508 172645421 999602643 24195512 521716898 370532970 552534024 84847424 396304661 46437451 945525801 645073289 928524788 406718743 806266972 889305705 969753795 362210888 774776498 714313242 788517053 418800194 441730653 278780214 696098640 819108421 888546598 103360265 161021794 651874032 702052369 630682522 806205453 138485817 279606039 406573475 589140166 985979611 987868051 922528204 992650959 834470841 895884166 79043334 721949285 786280129 851647155 35853991 801031820 766265088 896974112 229082564 616593531 598508080 896416849 862695497 911286942 353874552 767471875 37669656 211759925 188752661 848780706 964814686 991481928 151080515 899833331 685791692 852287981 717136353 937870901 381063895 687757371 378227138 730877960 512215387 647395431 169157593 807517168 315433901 947786392 715683250 842195366 979880271 989771856 12101515 865772023 999942663 999955302 472002236 924550128 928155927 957417994 568366701 999513852 727777233 729370480 3523490 809968621 466689196 843928368 242305055 656819754 93645920 725879990 294201506 400949343 447661558 965645543 489322192 864340761 891232835 986700293 950467958 960365052 989643724 997918012 306760359 311271055 11594743 522560026 660217523 790151925 663662175 752280424 446052270 773638547 952240208 979331720 780757162 986523389 755079689 929228585 443907853 524302735 411054976 477094519 486914187 687677715 723801458 983376003 249277566 311554028 83171178 89826747 776934456 804516071 442171763 962398676 6241664 557298153 214461962 869049006 937024195 962235841 157338486 337372116 257454131 639011059 119853269 920646902 775021003 857045530 446385749 856682023 193808743 315534748 549532683 903675530 462170224 521001153 737780203 943171753 210317604 852515557 897544099 955422031 604344184 977079116 546225871 564227801 587488819 701892160 177810301 520765841 478668055 517380732 589795701 902077949 297769646 850436501 221574600 715719171 471255671 906877611 685590249 889606276 798167655 944911962 877586842 980867240 53236533 343286105 812660670 854394401 525679600 975325728 736358234 830491801 200432449 996355597 469045626 648009022 156302445 552145138 837278758 848056320 760726786 830207473 174305277 770381823 58175570 201514847 370472965 901662727 193757728 659864526 296055162 547505890 826523312 987679543 326664957 369378806 969769767 992766097 46123904 116664032 855382900 899919784 173363910 501106254 307081103 773150464 76067929 801244151 433831099 575420596 923102234 946718598 300598971 476221750 577470797 899132650 646395473 965790012 895969410 940108206 583982998 886217229 224321742 643969051 933743769 957873506 369635511 496261466 958890884 985576914 483176210 813564685 487004123 854681630 39141532 89470767 364058438 608707192 160638317 966070629 534960951 569866097 222012061 727275344 71781084 564481131 421769997 831081686 886954936 959379769 138738628 811680598 819548719 965344509 608380522 785605899 714460014 740689033 740317813 937635365 900733667 968255680 313607265 733880758 588758946 924362986 778868469 978063593 29419002 569700148 193763039 999676707 696051547 992621472 477964248 939498530 6454617 505841745 452364875 892179188 328742435 931137982 189428259 217645895 781164250 957513107 747501514 777420823 760850398 871995245 702901292 892422090 395104331 553598028 121748886 727663092 938841981 947283640 752138603 973333623 281587902 973782573 235221062 585405841 41100988 675996975 286227136 392414376 167993425 841618864 141721432 891265446 20003632 956759004 669811311 962655084 216197842 455437263 105082887 366798200 222553510 300492138 274497473 274785945 630772278 816839403 509407851 811264631 393317554 821267579 988403983 993153243 620577580 660055283 992711417 995079627 274699024 290211896 681719671 728446312 318992004 872551420 60528012 634973537 930642357 933088889 119329958 638623220 618866989 762459862 849259906 943155772 323423627 379115268 940916733 951725472 256093316 340443205 506694148 876894435 762851771 774786986 386778115 849614060 708486411 970951819 132872926 252224244 303939334 314703147 702026316 791078467 881671421 915746990 188010249 501958012 646244182 689099616 293502316 454556444 177030012 251939911 793166545 809510869 121113723 942734059 301004589 635239689 886678233 908286750 989066405 992720901 804271960 978147612 32600768 67562981 853042717 869461897 881937612 959540169 639628274 764197441 533396030 582176215 747591032 831921815 607693672 748845386 819803718 973171135 10671772 803714713 426437356 950661226 360099549 380209315 659566927 717354772 417260676 713168729 972387999 974480258 732888500 799258384 10511096 379034671 285911325 766280609 973482855 999079839 73620244 290322332 683483957 931652555 712241903 994788841 464351135 683354639 710656464 887807239 961153375 977153422 874480645 904096297 632449809 776828572 358141396 561386695 239931033 878634754 981065301 983863983 33533898 916712791 43297724 699826376 923029261 943618222 821519634 878556736 51083095 818381209 501811384 644760347 861825018 923152250 548180895 619589426 358898549 950121898 61792472 976444218 873096071 917633286 782787912 851874873 163983683 726955029 329967506 773674445 607052409 738657918 234592393 604679560 842401692 891112616 581336375 913351193 401091744 518677934 525851734 777650933 82594531 840926753 966776427 973427247 57168814 889229431 904366861 936561939 85737885 656572178 590673998 972281314 321984269 579934257 329935648 735601221 40932457 429599141 610453792 774101845 116771068 276300447 195548351 956083137 459928017 524629729 323695086 417719237 87308894 402450502 353405171 839680430 188928474 771514747 741853227 769679811 241928544 586287081 333864773 344416167 768698293 798433548 44314431 128945341 507394924 750536316 728538183 862682588 286029910 412423389 625573707 952386212 982071130 989698335 546055773 546858214 738275362 860896500 362679811 863380881 910192695 980801586 92263970 433126892 445366947 574341078 576240992 588501575 390534475 659031876 232905975 592068583 625012904 981935477 313062776 614959208 490100595 925470862 625290283 644225020 283564496 570552011 66241117 498087633 207968157 827204825 817833372 905457483 616118147 876477174 39116674 807814505 258343455 622510948 989354766 993301374 416314956 661177177 151081603 859893264 544753000 957939178 539038268 610551542 37883081 691026076 368443629 381311094 518884415 957099777 931952242 962532651 102941168 647279173 820543492 951508344 899503152 982959828 173235274 199350872 617184889 904466714 628920301 986044347 433092184 795883584 923904602 979863120 916721431 938650775 608287661 868200487 5970812 486013199 553531581 740254451 968841935 971319910 813263240 936071428 74029757 812267380 459407073 476430494 446154500 611743270 131926375 966512490 345845890 558884469 380111456 575435052 103218867 649669319 457837688 595169884 67643493 571245160 458237399 679511098 508986095 604922482 847956745 876580780 82062372 93354010 663338972 798616822 463883881 528829277 452242471 788615311 966575738 980854519 311802935 349656876 9141862 968529259 175640290 374979932 183562138 991130539 443990915 574249935 691619040 775070519 932140666 955394973 19865618 690650674 408421649 596178982 840696 492793916 478099478 756466343 840502089 872598853 412354569 895506688 68098824 286481847 81728408 908360026 937278136 966707701 305876656 547563153 50043590 695520865 147781551 914999860 958813605 971399209 726632459 790455570 402738805 671277742 287001085 428835734 52877808 58001527 882160101 983569633 949581542 980193358 511694020 693545261 687107794 832520558 574038506 768520950 411981121 784772841 63811688 418635900 781267793 874832716 287300589 530023094 305920729 717248919 743117886 997742959 561572898 734908250 268678905 537485836 682199473 703102459 699289156 953442395 285059083 398645271 819732346 822603721 797115506 814534191 730021117 982147515 493478445 626672785 646643417 847356692 950855938 997618367 829876182 993988630 635883828 997079968 250623560 440677960 729343955 975660362 352852613 402144387 900987014 923025094 758134752 865326773 192550477 493318558 218661958 661394473 401967069 653096488 957179279 996897845 123436814 622279602 558063052 686696205 517274446 847103676 748893933 875931498 945748709 985930992 38000021 973960011 227023747 943715351 528634883 742485534 137940504 441403603 641566906 709109191 55357880 801929428 768900060 891455646 792103082 865855164 637904358 856313269 314227681 523246060 616402926 899814137 824666146 931652561 976798536 979345862 550213076 648237149 636863933 999079945 200630411 439013026 628656261 948493143 197330980 812421039 171301665 385419202 600170399 711006197 508744575 527524744 151327035 770188035 347464133 930233100 685477896 779045507 468544322 967620425 571927272 949878175 142960580 147004617 619707211 911612880 317696880 683154997 670472045 910944904 861366349 909196690 22098963 820576145 983313882 984812081 498570323 861943418 349253845 723173805 69404989 879472738 386188339 653372580 506902530 809625072 35464118 597645152 624415949 732032921 644162568 937230970 564187273 857811908 69447038 635730256 329381788 972027281 135318843 498970749 556305958 749820466 825905975 838297138 201233339 314525285 48754530 745260607 227014597 636811707 96957885 682035604 523765671 725539010 918313477 940308797 183982232 860208329 353340603 653337859 102560498 306524899 331122378 797412049 784177458 978231035 495338968 703440451 81179030 630951542 37922324 886808962 783808842 878039751 827734576 843232708 691007870 883811934 92388878 987309856 379962805 537818264 723709070 870900199 795194499 903860499 813815377 852704293 897154867 967261471 430565101 995782402 88389696 897203907 168127787 896924687 28213586 420797543 477077970 673091114 48656270 844187331 21736139 473852988 885920646 892400770 780767686 830811889 548809635 751190744 194776492 312630324 981061241 994692730 431863031 991277207 706149459 835258176 858771052 931412640 949690568 981165579 26460603 851991674 626440567 712523551 104586140 625639668 803303611 866125795 512051270 550016358 406360233 887689234 274334215 822904633 264569755 460584743 614095105 812938711 985112558 991672579 101296983 740439685 626463096 659914535 684704044 872329399 412088733 827036292 948054751 978213729 175514503 345352346 242182002 815228405 243955318 306476460 451307570 890934193 629124156 738027066 702442266 852723116 614708140 934408394 822077469 993864590 825521445 999639242 983641246 998858562 248384732 728650782 141816155 353664500 56046136 342780512 634985516 972072207 26816988 193956335 581709716 777085817 616745662 982652583 26132636 171753671 88053287 377078043 893455462 927519845 474616679 614265754 883230692 898083634 498247023 578030121 773461761 842681586 174827078 700873930 235152033 517688343 417505226 727084125 115138919 493750783 549056147 771839055 657744945 856968322 967737717 974835108 280618826 673752047 412185915 543799399 655127284 784350090 127047758 196759928 9951221 274386478 261468607 580348570 994122334 998846086 310977615 877139154 539021866 999512401 662732440 992895845 823771753 978829606 276738879 992077032 919109777 959814256 128075375 873282062 272434057 403547771 564027314 777867052 23163077 161206408 747573420 792659815 272950517 741712719 901057915 965089540 723473021 863236258 570384769 712326341 337840564 992378091 983285289 989795336 483129786 858474242 923616089 964356140 316768138 646420524 344149181 622655716 534926459 546853902 569488463 999621558 157857982 265296473 372749595 405219603 185485030 640733027 302080108 864809599 996517605 997406695 991192996 997860240 619182453 868535724 547249471 966570304 6949973 72078924 417562012 703745627 888928507 921307673 810342741 857272509 975482824 992043110 155412532 761023221 816949877 842356241 468762871 713593332 533642037 733951786 20932739 918619711 227879063 947855243 325548043 386637169 742570957 896683288 487745052 489065530 184490152 433724305 706240303 766450365 78554195 421710141 359066380 770407769 127971284 900578204 934978011 956628871 107771757 118073624 969719678 995156254 897669830 988715397 836423736 910497765 530606202 775567373 878053888 902049834 197178009 397017142 93677550 794545999 459261705 888180016 50998179 640027247 363953659 734732653 491025 835044094 377386569 906986446 571528672 724100926 135401085 446991779 836352406 953104669 164599429 809309979 959397836 973580209 568385896 576045506 789339055 990701611 923581022 954075383 969824730 997834329 683018854 711662057 1073521 312195530 180152083 350955083 241755628 769987413 262559949 287133682 822826897 947265011 959571148 963023891 993010846 997024503 510075407 748428484 886366239 949487604 523935105 672863018 713523674 906321339 122706371 440073323 851157819 858819528 37432765 710914087 536711603 945757847 762474257 778458943 320905699 988427301 680370484 993720371 946265704 982052836 89634226 429152644 22432493 115031553 95794859 179769302 434647572 760303246 381317654 617060484 364773223 746009118 911353360 918796687 613333259 861178679 544610096 901403202 912835226 999436826 463395470 976310321 955049208 962484621 32811900 481157821 145273415 666577072 26566597 172343148 257137634 437214773 966444924 978209355 931542386 999773356 205820672 901968792 246029374 859196961 118575203 200388006 576773670 805861995 661458881 806846615 967887346 977205489 978556156 998696409 23659141 91935182 91357525 950752823 712758806 994909212 197322447 729971383 949471089 964221674 342349075 586760435 717921761 798442683 641909615 820000962 536707875 588948271 882238477 938763945 740306420 823693766 119476740 252762188 44393533 748558081 861165368 906737926 83960252 313406779 947955191 950915371 910706064 984205948 295340949 997251517 600932450 955707507 657899983 984978625 362957248 975366513 154899456 381651838 181172372 285406195 325473724 692347048 171224664 463347376 835823360 969582668 690391836 731535834 889840965 961329500 304114307 391547752 892939297 931139436 911811045 965696657 30719445 296736828 569012604 716929803 974453746 984496919 998182085 999343599 835211997 928696627 175940434 485569224 488401344 840325409 454621123 899566238 29714206 47601205 812223881 882166120 696309310 755270001 154611635 648376775 732425773 772947105 382886734 573687225 736840451 825357465 380644060 506612896 523441650 714412841 940687663 972178752 770474699 926644111 230245393 593936020 986971065 993113059 88129751 889767983 327329693 912408517 212516493 828973701 713780842 759521852 420951731 846654926 812274520 950622822 92497703 362886727 756513006 824697368 460206581 901200072 735401833 968366846 4578661 763099556 134169121 193068538 655277561 854250000 342709119 703958820 907312142 985236306 798987213 962661950 237345540 655443836 782721334 851413482 769990721 871535853 258752561 406395305 763118088 906284509 431639351 645024858 859802894 967995566 115357175 549039819 534600491 987862483 561999940 995197969 907395833 932058177 975512791 984567498 830793041 945280031 538484437 548221899 930719877 972923971 393331939 873061820 926703451 954981072 708169617 923800197 370312022 890030143 69361507 453557205 928428618 931563349 552725975 883602412 981413949 982190957 264033748 470072454 69056549 852412516 361570778 890956631 502296917 658302959 749362247 947735497 567680255 746647381 514093985 779901865 936948621 951263069 813538066 987327193 70404480 920427740 711597020 806171302 170502011 398362231 6804379 720273172 10035154 708746880 527832180 807876661 932822652 990984072 555399878 573985975 879347675 972207202 300226493 576501962 622701123 706258183 647907179 931961183 899382781 968976584 585798214 653704209 497866210 800198951 897486780 903624955 678671598 874589605 741754954 759461959 276426615 329350461 945470994 946632763 626593840 771174693 674789798 682841413 290130018 352801582 83700078 657042206 958363465 967009738 555851995 875607205 575332240 703118044 824818521 839798081 18208314 22273693 200475333 988157616 592381932 949359724 662346954 806357226 517491078 677074164 3484474 449143505 565572463 581417831 321708319 579528413 920097900 967798334 288038815 985059189 195360889 779136197 369976632 634143498 770775840 894937107 493282194 689959560 525236918 620863120 243692569 503383080 456702715 825784137 319524065 882789705 844659296 928761547 435175785 550425974 374241367 718944051 762148607 833767598 945061849 985506751 478266778 684635489 270944739 600417819 824668352 929566741 683156307 763385824 192012420 538100200 697440793 995817286 699800166 860870315 132715535 813236884 632588187 715293825 105863058 129157191 65343473 987671335 531663379 635834554 72629276 920934055 938769451 999817348 545041816 591238331 796643004 939268648 731179436 986887333 118303132 396746709 276636395 640340749 209193413 716253753 661192303 773701718 557135555 945002539 516368394 631201035 903837168 995006725 261042153 942625385 109500796 404134537 451795153 915120280 262325635 595156386 626345609 870513375 397702499 971003460 410556737 865782132 626393940 884799738 22207403 713592546 458067552 541002809 706562443 771890957 151779422 417283306 298925114 810893832 506620029 776407663 847315853 854932293 596952982 669000513 557329593 563724606 878438374 902796608 98833183 545419669 925339599 943694971 798286260 906431685 719380283 988789139 809226632 924274422 974337195 984894254 260731309 509706489 114481633 948114854 645986610 974684161 581455046 605722839 899728655 968523181 406973861 834497611 793515522 947037070 691242712 790120193 31346272 386695880 82419217 305620835 390851978 956554777 76916863 948468943 727148437 783283865 707402738 743372348 791663798 985642267 809203263 840771266 565104335 724489864 301174242 786032516 434702563 667764350 441766592 693383757 435017400 951613367 398632813 938067472 354255421 770998082 477980405 497610103 487565881 966731432 847915213 952582748 451218788 662443504 555870142 588906600 796631587 841140708 903084498 991671201 670770136 926549685 890848006 905293341 3663163 242853180 630373141 876936429 597361417 652751867 890330511 916616874 956080577 970533690 231975986 785986037 879387985 977454934 920741101 954440312 596598325 804425041 837694999 875605202 75991923 94960593 833316672 861976850 856861685 995647667 609265820 924486761 166728842 776069394 988948548 990744028 142144055 310004066 21649514 734763764 154524744 409927092 507751649 525476349 241270196 586547106 740160923 742070761 306012653 383381037 428583073 608456803 281039149 503607474 748991571 898474322 401717399 901600989 773835056 886407407 479021696 697621630 176060580 275971525 184722559 389972584 879689504 886926645 428765430 482820853 98083290 553761594 823662911 906836290 598878627 926712026 572750236 580603748 660458614 670820327 92591850 799228203 674495783 910010819 354461505 827490670 394080706 734276330 939884905 955285594 821801204 825292163 743897446 764929742 696298114 747972000 658989607 849727919 663898966 676394938 306746239 311378255 580445423 587690789 799899910 900511211 873168249 976026159 94951798 463172880 228481042 920961360 638557313 925935939 696869347 857637163 35208889 150863727 482788932 634517949 62893831 150895038 193109095 738079228 46842635 349864939 511255170 774891702 852112214 943635671 485204605 500277983 784404471 959709272 861593672 906663818 504749349 753967272 464838775 676248747 11971234 539630713 113514385 703902019 568326509 794740490 155372700 865780625 142388412 307320448 923629390 961394861 367256455 881919550 406087860 974866925 795627552 856729992 413587241 668737026 209556329 527741908 107418957 337517020 65054510 467016325 716749717 948687346 205842219 492522976 515074968 914669100 531284701 556566568 269497859 475310144 928078476 934818621 935057990 957932484 24845946 347576917 289745917 828712843 78064121 862996448 670992692 781491256 266327035 854492655 808994031 881207030 442350575 761338450 402885964 933511363 232746072 336320543 136042772 546243895 489691405 523747283 145826382 277676596 440501051 979490179 138728122 828315621 975931109 994175470 897888213 923862573 238953259 517762307 708078344 867619869 589285708 727679227 788513387 853352045 602064977 732666916 404069288 596463739 582518425 603744886 105143544 271006884 253509272 986927855 966558382 967067197 308875880 337246597 137064853 290380804 29726554 428832662 614487595 628693048 549747463 568612312 642315982 893411822 796837970 831083720 835321506 886827622 446124887 527386748 879965561 905117191 691329287 792877446 9687137 181851825 695734084 794467780 947361978 976435925 935917002 992394133 889019259 983362133 831779398 933684735 391481142 845748927 514125726 719641815 131593419 505595242 398313162 651686470 97549678 719252447 61503584 120108950 631786695 871876531 23609186 816551238 71874278 124468502 488575621 764096340 959690289 962042565 225574889 614313625 797808212 921850847 918462569 924073877 29279973 237596064 979377537 999545898 448350021 870798868 745241461 868243488 412560344 525656678 319927171 799661288 245770420 963422127 561246430 982735013 631106115 777236107 467704946 712020916 500964963 679587304 150802516 837189631 543623874 693532094 196065246 306442299 830230301 852452531 777730016 936607021 245923676 383154153 588402166 941623861 737516112 761391669 166897770 603401435 460735267 684302009 878135583 939567557 67076461 523884586 748998494 904259509 876377989 943098623 501686164 662407398 305479476 892879089 294184283 527417948 808024370 949055991 836612890 996959018 450770238 750740777 738586039 867260636 726397746 765663261 619215544 878692111 870242961 991776368 352945587 897492896 709688154 736790185 689512998 938907216 536756464 617166339 716394765 782663304 325458417 484768685 440451495 463299122 444986275 620802872 336801148 709158236 768431197 864014721 738987928 831925370 393778500 991927051 668623087 801248375 343426907 696919829 745816764 803974020 737802905 868916369 871187053 988256473 814299876 979632787 918859025 990651271 808136527 916472279 988608926 989636001 832168635 837341137 519022646 824496227 430672207 488743450 552541394 864178828 531199406 612968141 330985556 432378124 987165138 988944490 71285700 942707907 430146159 457681528 423517424 862456940 350352385 358510137 557674228 987133639 318124560 965404816 721308043 975239935 182684634 984601368 655235742 846983477 975165111 996769421 16443541 948629437 202852952 299471718 300500312 881739338 795232913 917784471 805428100 863013726 799247532 881805861 378859258 469455284 25120226 659655432 372086959 546984227 638611170 920419730 660958178 872693904 133259866 647435645 856172452 889702766 553635357 697771433 565468028 792690865 483231781 931095089 936683861 994109382 706890589 734125334 674236835 996160038 305424542 911101750 624491194 969212083 717638288 959039796 220437883 512432870 407137571 707745051 414241849 865082089 671318485 708050168 234750448 323314333 184246766 686601648 183036460 419593249 328676019 585781421 243527616 702622217 130174108 533423044 611576882 884758657 878733531 991561435 936517497 940336331 695657886 886303561 500955379 853745411 732909547 901103970 496623977 964159326 221472184 709239280 439100013 558057705 949207500 983475531 238300057 626738072 683587993 709706552 898815599 930058009 96832917 720531325 972166681 984157017 279472727 554421524 178479999 454426726 891772725 979649172 865958650 929203162 652058569 732493105 770924793 826688403 503551691 719005102 154328911 425768156 295921535 305589153 936921168 989650525 953010175 967318252 951215536 991889718 655714569 855285578 861932886 893820820 82583206 963993171 739008478 842407247 583423655 597443158 429651067 967862101 132802992 477776937 943224772 998753475 256673576 717834763 342661380 912646626 508085947 983703848 451677166 569005810 63901121 400637396 378341691 876922928 789879827 929223604 926469401 975126243 32956654 586871916 448030638 806899940 990894820 999913192 583451998 774605895 94523443 902665095 490595045 869271438 119139879 134580670 408956850 677070987 458651478 748645455 934558060 944571635 362392992 974306177 897804776 950901211 403914668 821877437 609549757 704438688 984010701 992919248 899657740 952052356 341888607 979640699 391254646 518897058 555690325 690164947 124876843 303161545 707757690 828883587 204433317 614346447 970995528 982638228 618836935 971496702 604365445 801177689 215540663 833828788 192786210 704972040 693150229 851497417 851723223 871906480 581097996 704973635 813305857 856433668 337009927 589187745 256939078 772076872 687337772 909534376 654619422 829526591 407208596 532419813 847454107 856303130 15269968 71822216 589503350 755108786 930016928 995078795 461933821 516499104 624428136 965663693 322255024 642849691 851129613 888425235 373807334 735406042 135608610 731166595 928887959 983087300 168187249 376843970 573515872 684491793 2600170 865551285 178811425 630794047 673081883 955879537 587289571 611957707 549447105 976082193 939857195 943121899 938356703 999162378 132999941 297645420 969246388 984967085 663674942 843871317 889481440 932932395 521123642 754484183 619678828 998708597 396021324 511343684 637853876 638934486 848100771 856603724 970102500 978011462 551413260 643995429 853752812 936919230 329483058 563435097 568553807 968160000 354438979 622947632 168136849 395808735 255156459 680741434 280653659 762462218 405879985 911235521 866073208 975156664 82116539 422146592 468677528 544393169 708666654 977508979 828016217 959746645 869777791 966404481 889654369 965152803 720809476 738116952 48995230 194702276 563822050 772895751 479470132 569121647 92761618 818836618 255594995 649407407 44975827 328221352 202529949 205838008 628547668 715136080 589870100 897204110 323797959 413858948 117780070 577147736 949091312 999478839 695520557 796200249 677373399 875253862 454795315 868829785 161658193 795251039 186229435 743356181 285914119 487516723 638065444 748072520 236388782 257085607 389389355 998925568 859782784 917091400 727716896 997630308 852891053 947091749 308966630 668801833 281780036 996542182 529603779 844033529 693450643 850622475 525542618 685659854 487348050 490977611 625931249 939661099 636227077 782566907 887511190 994035595 524539095 738875884 353685167 764413135 411689671 750943163 905632137 981158575 751717562 866284589 181303039 931958712 452454152 868325293 576334093 969424032 373147009 415027324 529559594 810310665 589935117 979640559 140355026 933388012 784537977 965000987 745050375 924463089 323713019 894428291 326479454 367119191 328967535 932678533 679960386 988058542 106299169 658523785 902656167 973060041 871036137 952360998 464889737 980526484 278863604 590752904 785332408 951102437 141782895 246335823 847309647 974496130 777090549 910716742 785732866 931864043 809870418 909320377 513438698 559415623 169538937 948108730 555503441 951828424 382311807 853801574 137914650 781877897 259474064 991294093 822654353 889557527 988375806 990016579 303725689 856280338 800691541 930061692 222712474 966189155 978447834 992965343 120098337 451695604 969851039 979418857 69320860 886530228 791342041 956229603 174899704 865103865 683710425 703903897 596152051 601849292 763991907 819655566 314873734 379302114 759796484 851933899 47564135 909030229 196645972 626755459 366453099 546827562 46800210 294227612 433527539 810396030 495828925 537973843 379264984 551813529 140479714 983536303 6379647 495115748 724265368 831647590 763989847 774812539 590676943 724948882 911826846 936737157 316603715 680813332 255711115 732329421 78908626 992793604 229367784 619946650 420644365 834423284 783321951 832569682 520135251 624414793 239711410 619637469 674060181 707249489 930209501 961067268 481584356 754862248 86122130 456171640 765348989 824844431 717546119 851308795 762348350 970016168 849937859 886382993 209858075 328987710 682999865 993218786 689581832 816684238 822931628 850819934 947694501 985291561 474188209 965753864 282349479 812525108 592519795 926001027 958400081 978732109 589810991 782622343 712902937 879907702 113658378 761874852 719057323 846243499 730206781 987854360 309743492 550518450 747944384 896702378 373050252 893003031 583465319 687991506 369975573 442560779 379630286 744360531 613314398 809661437 523363681 587280533 844710506 925439818 809970122 923927834 636338702 775098935 315393636 597472369 872468127 998397553 204262355 998061676 511557940 669426026 987704003 993200809 90779294 202406889 406085977 939100706 757843599 981743436 566350042 844360354 63060303 724206604 230303057 559189350 259502174 554350058 734265186 775337128 867023489 875963156 874597742 882022218 282710670 557896381 654917073 818397542 786329547 928230414 147168545 648999009 726960560 781352360 575092535 591026456 937341523 953078065 799326132 969568625 666341802 870628994 626759889 857940013 953881932 974612126 563570633 857372446 513632803 917898599 459299023 755311702 384303399 955278352 8356378 950890845 439079505 938556879 783015967 964016010 836576443 982232843 674273056 960269367 725243040 846983160 608653308 825050849 887475951 980003443 686897160 966797838 241009356 383507074 178715809 732306991 997048438 998022674 274778938 985207828 984200815 992939853 689575839 984318252 493184961 922778147 325921032 377715836 495594429 609020565 375547462 580910652 447874850 467729987 572454613 850828281 133601107 868913117 913517059 946049903 856091166 950712439 402103779 880401586 43492905 93726223 839622422 903061839 509850329 946526726 135780047 290872041 301733514 391898511 205313715 730947817 763922089 920405779 546131016 616694041 829104990 878973833 119508154 477193718 654568557 926320070 156732635 218065682 172967540 239976865 332215416 949475958 12933215 66807071 489971619 668138406 123853456 589689585 321862436 731008931 401284270 788805918 698443618 784768091 620874597 926788698 608462520 944776276 270482018 394108528 819215710 860540884 184920381 216528944 82092394 998759802 596308931 937550881 125782820 462075552 861004209 922837870 989004235 990977479 467201292 712237087 540181004 652904040 301966937 419418763 686743477 925467323 738078851 879756898 13418036 878817131 491088411 642931501 637472333 915981902 654449001 713109725 663804281 705110452 80757039 425106446 990388764 996432998 899261762 902198483 296875397 988954536 180370234 428960455 223567238 977704040 747657209 898487190 611527856 995420619 679912547 965382490 589682139 787644647 602607481 651459669 5757885 678531115 324864723 907369075 609694117 761070832 497834811 936882918 754760612 900577245 688354605 695089484 947634080 974450877 632190254 718349801 313228669 938842353 464383764 616473222 178296736 482565744 494627128 990588812 401204323 929208556 144824200 726520849 902821329 938311429 110931851 594172486 32504963 835225092 396564331 741751308 368517220 807327336 588033777 696746080 887086806 937580091 842401068 950275504 856587935 981721514 159850738 711604821 579763954 643770206 667645728 720129755 98706672 785817887 547152384 875539215 977777372 994769961 957375164 964963263 295068414 851906360 945901136 997196780 551129652 587674546 242292517 795534163 413103381 456851149 580568212 621156319 801066319 820655910 655917881 807546210 26039837 241734596 333904323 540135255 901251812 994828306 852775842 929382081 200166588 907042833 834881332 843681902 971746527 998992962 773096395 860666013 90641678 768523263 645304490 758793728 755514643 800916578 259720436 353153714 938773872 987053664 422081212 488715338 160698320 871142568 506833389 948934930 238753293 489404324 516574131 956717605 150353936 495722323 194624216 555548545 695531702 910141046 557790591 787206974 462678172 855444695 875384128 943895983 439966964 775715756 878067172 887407343 975110508 975836831 193245409 822412937 444135842 747707149 961244494 962825932 334352420 847129215 825036074 879216259 902173192 946616513 438507943 733546124 630783589 835483973 432191620 500026507 666856557 999772000 210897615 488970372 636756107 836637270 658873750 725404648 785570242 786116525 27148757 942173290 909871735 945583385 53074287 135320256 894321527 972485670 794898427 852781107 916259498 971081548 522564200 736077222 882327049 883537889 250563910 818712261 806271464 828681354 619024614 996123015 594162330 633244588 396233558 805027538 739739527 895914585 472851072 513354236 424432798 460073763 53053032 581100870 918051602 958701961 982949666 991880849 316664692 505764143 997739844 997810280 933926425 985662018 475363068 777256318 556527247 697226243 238326097 546846284 140678360 968302999 761444099 962639479 174033931 873346500 36765222 341114998 576980724 928787393 475676722 908054904 735106448 963533487 918397611 949067491 812512794 974599785 467041516 804543169 286931215 779146695 567129711 834523468 180443761 898310809 944156755 961156325 582818021 932047288 318577234 969884795 722919770 830134919 290583322 603442175 560259424 987292992 972504275 993612325 879796148 997717970 363862693 897243357 487061597 650188105 452207356 608899794 772977734 788132001 68561596 983755017 373647761 395039963 319132862 623716734 694120275 754915971 573740255 697453295 788616515 943938797 171045524 538597167 515975999 737743801 551831165 906457476 518329103 748034392 623791522 988348179 647767760 906526010 390619263 523344458 256901500 486194879 769719857 872246372 964208791 974205847 785431609 978946384 160686862 361654557 573167851 935295464 412234473 479739643 488670518 835640550 563785830 918371970 883549261 929795326 619176307 837353956 389858753 668402709 950122308 953625886 24078248 592351899 807965092 964136296 15075151 849313741 204564861 985887654 537632400 772592508 712562086 837943256 271237338 610517635 491048854 805962298 844353248 946070157 698528235 852625619 122423013 601921448 317951299 499801674 931796917 985497819 138141065 154545171 680800394 931023740 948865741 949955669 797000024 944684257 652484857 861060900 601066106 950987667 919165730 933488746 161147305 696055100 139456698 477983086 924839342 957003713 262684346 335066775 616734402 913868346 403189485 543988620 959195565 986738802 684137223 846662337 546587755 658600467 248290264 706982588 554371105 568375388 409691871 733377230 737836573 963494219 486836525 785334059 861482953 865133924 816341014 853655547 549825208 737387636 84166305 671583261 877867871 914161671 696900323 838741733 890533354 935087014 545358205 748501085 959678523 984904593 29440016 633253860 570291791 696354204 858274453 965754835 50038337 498863311 554926286 966179745 829330283 992633796 736069810 775438370 307359808 636839430 328321892 531799994 500485536 736472904 166695195 706127822 478066227 850236374 169452699 356502295 901108647 903034095 518891538 544819258 793880575 954418975 940994410 963078359 684805951 991130510 496426371 644910575 224093581 932299654 835689187 963585076 583718455 599145225 36450927 210206995 441928734 632699831 222642379 336475822 406322921 459162060 842254866 846026578 918145059 965454996 888650811 990761765 790439880 948486502 507528560 640117426 973127061 995355019 226223276 935331697 5554216 403348797 723476523 926408956 56824152 663483700 623072437 819491061 857711416 969347090 136618282 351122422 508800378 665258336 576468528 779087980 784066321 790514246 485575546 753323818 647886933 684221204 446998882 449671812 410218596 753885565 857939579 975282120 141385490 749916615 552952436 961972443 699706694 832229066 410234628 549856693 466007788 480976727 281298110 469681433 485354640 843864041 516617579 572247293 275148135 581370817 229995539 676402802 205584525 278156889 937657869 941012599 401651134 452998486 163193775 259172050 195179663 988587238 967910829 970263536 359170159 901096029 143318143 553178388 711244415 944396203 545103754 793904812 822075587 844421218 452527151 665390657 931419849 959666377 546027550 949788112 92491480 675541238 911019303 912487264 414278126 590228113 124028127 419442828 682195940 838650318 133073728 262834887 441838646 717391888 399843686 881781232 81622415 362151186 661454325 811992914 282653392 730868400 123295701 306500807 983660971 998139546 371250425 676449686 639317103 695189714 880336441 913269261 206477853 523878641 13912912 515060199 575305002 873787513 830907530 961378992 389859628 829744713 942468646 963226878 664393336 807403877 324003244 359842283 481275983 724540545 389564081 953884541 990197091 996463736 262012693 984547910 776916893 816465333 801897656 852446376 341226827 522761089 79915883 390651780 460306471 657983294 990290051 993208620 195271251 931424158 837027481 924935937 261150437 989569158 333377747 563619652 363630896 793878136 454459400 754838262 367353705 772911314 330352969 958104617 531880109 694406317 545841061 835469958 461379969 583163778 546712627 704581164 419464177 944640744 440874030 709955076 520354221 587474812 876936639 964760561 935482111 982557924 721416338 796708624 744928718 905003516 319690368 547685159 865599173 867445629 931195112 997943697 281015174 795988188 924877539 967830988 933552000 952762915 442948758 775091399 862499216 981109056 50677015 669022696 470805581 800054177 983725563 996660946 916247027 931276193 382771165 899792714 624949484 681317392 735168157 906610301 2203355 394110266 627646838 707182700 621512032 791173024 452547068 621548911 882123574 998886232 617744856 974704790 664621496 996932574 533262424 939854480 531167519 973910448 980102314 984760928 926941884 987810531 231445547 547656996 287607575 921305213 753808543 905937691 151396304 722650521 151506249 630799136 525338418 768037745 518335313 625796429 760191659 940068402 67418194 810915011 988956551 997534902 887419697 902619259 117489313 328043679 244884720 591785618 337571524 546883593 498155950 963120572 703520232 811460469 848369619 894709717 428323730 485650654 217868819 678691110 599475173 784517966 959929393 999501866 886390152 898174936 250880196 907800051 911291548 940709470 63680585 596042913 652099044 832845754 892763170 959440377 521887843 925607900 292882924 615586937 521205661 715099416 813080579 867004295 591086418 831821657 580307609 655029759 675675931 958005873 873497603 896985308 88421746 899343113 204900252 227940025 108357657 459730846 613654389 912103898 949335459 988650534 146976988 414670227 488174543 674381038 164319235 906502434 562555149 787645203 440900110 648385660 457314172 570232341 673768430 767365676 968420734 985457583 45512304 714721962 422040149 575722605 838611261 996112600 523324514 842341092 226462216 399939672 427660037 992787271 447738285 580851662 6197847 73635747 952536443 961904825 235367928 998380365 829129014 859415654 2239909 311752623 138129974 696854132 301125611 327129131 745449119 857911533 952704375 970455351 257116529 470018675 349319341 667057161 293273531 820523520 537586945 963110907 375864177 539291461 393693361 470569952 487151020 888623433 595198628 872085866 683751002 934829748 729362255 827666673 238490480 633695653 924825033 934321482 73311943 768930761 330869192 549820311 918952742 989825722 541972582 849644862 376228944 489024303 938144864 989527236 787060704 869712961 213986090 595981020 58222881 238582282 241739937 761171909 209386272 837970825 448640572 553282329 471053561 730545777 657855158 974491201 355434003 916744354 218594761 246258976 142246481 859884868 1037721 90951592 359319961 755661883 265625254 997562385 877408313 947965405 826481081 903406129 773157151 839658497 25549659 612034649 11169799 645961510 356250187 853415755 960298640 963024504 540414601 808914393 245050211 494616466 540168575 888733233 303836011 546551501 331238094 938376245 604745842 656941568 270137767 466531565 158321268 964749521 640636225 993459805 404228398 725744854 199621872 684815889 701798392 720969587 917598231 985593635 925513743 931059217 542672318 933389633 376581784 899859390 43423586 152991340 264856490 606474486 563874266 905697641 659575516 728665698 779608573 984816084 943372919 956347178 971243726 993561539 961492321 980907448 818483393 972493968 20530597 483362868 666146594 811065391 409739985 956721440 709791268 888754395 520639408 832495920 500948134 578973704 370998719 972558361 152327703 297859361 754124398 866841936 820035654 983233343 819968027 939774253 984786585 994328829 582230766 939399547 385467845 827841851 287647754 445062124 702526939 866357765 183436673 853235476 352387270 990306256 346853340 365350434 652100284 792909814 334301822 473545765 318285068 403581011 507289932 568860062 236072733 452526385 239538929 380249058 497574155 558641071 213588207 586490544 986917922 990378476 883254667 992029963 536254042 772716942 516254788 595067373 840754873 946368144 51728410 468228426 520018011 676040509 796746879 867681072 627667353 916528385 842158707 967303862 565962561 848269362 54000252 174701946 722352878 791628423 309673375 346480975 190001879 416936822 439647727 489159661 304642352 786294932 578151471 781700106 766154951 849340790 831092948 930588499 210465197 929713363 251662208 856393546 98732814 748159216 787714750 983120758 267754913 722037156 749255597 779444564 565972370 835983363 452531013 978224486 7044496 504627263 748718413 905914665 50581700 651433147 814966467 928276795 215824481 646173835 928466626 983941721 892453849 940266266 263874466 885075769 926669383 936673744 518602428 789535621 114873560 458368115 67981646 212775339 193163525 604843923 361825299 708431878 920803929 978591622 142429361 318748628 675855862 758178602 700100543 892630407 335864952 793235668 580620745 945592752 139830297 742874608 850922046 851439475 368740737 774694711 915637293 950529848 319713239 617247112 423725771 738448129 673900355 739404948 924135255 967246860 352372950 363337013 891782002 925667906 915373469 927938541 187108044 996863121 839018590 975973117 889264411 963198135 971317861 987620871 42143578 947843121 106940529 513428111 39003507 291966121 441556977 889212162 368337437 745110516 367454975 486851816 172483361 453484317 901124440 921639861 425885346 732920419 185354089 746545819 665757332 770910055 522490138 803111093 980804100 981249928 817545841 871877302 259562143 321392829 114946217 742338452 200323168 358597455 886009785 954737554 28527497 44503773 476840978 733745907 18775925 547701609 15006104 655547289 339075731 424326009 817148456 853485342 885384577 943642314 58406164 113877034 224293140 787951490 880411504 922125359 145691940 676469217 587794670 678041287 869871693 964431940 134649468 735603955 343786764 371016934 412811417 623887576 701759991 820124256 718970649 766139804 11354974 368521098 709682211 775273523 225418502 518775716 10112128 237734097 796676117 862656469 880603266 898609871 383571169 850444784 649376149 779353948 766522405 911605059 660486209 925833584 915842327 936291468 516485615 995560093 245708512 368993864 154801709 876894562 246673212 607165222 92047547 943200885 23290583 933784740 559629609 893202833 883354171 884544211 976829099 980367673 839454129 946357941 954352753 998657006 17040607 763706756 142713258 170411752 944386408 994862280 40907978 129230979 233584738 896773849 417460553 750923467 931553429 951962688 647343035 987058113 807437404 844520024 596423606 968749101 610748856 968944925 185811930 273157207 106065075 712196076 955945009 989694255 143292699 649680633 985900527 990720061 350468820 804591514 767097287 948452642 108786216 859159542 636952045 868415656 717339940 991546477 345145658 928228808 148363639 905894865 63384913 801067645 42182924 834712538 13665716 352219113 750469875 835690650 423830236 644508762 758000302 916812324 322677702 958748340 182741279 288381322 848786664 940730672 119660731 870291528 627366218 724867642 493420988 777731696 138095771 885772701 897015660 921762012 802331355 933201301 227166138 616850092 140550661 571502008 442175522 832737111 723744204 948925560 547589477 791818292 885205715 925797351 662571900 918545975 357241709 402304614 558803845 712884180 164713336 190485699 297892736 355187298 307813852 386990301 360574304 772115208 860309997 906066718 36396957 124998470 599976310 733770157 378999351 387723141 69780827 821179880 744134447 813673811 419749591 640857589 567550144 897986158 888067838 903527447 797060745 898970994 909613779 916238418 696197426 930482807 818413913 909451374 141663210 954849544 663168261 731034487 388696998 613880875 300833238 333573590 114960855 256939842 13451478 648608829 65910579 97356781 27308604 946580817 32034446 786166070 97271798 837125176 41009140 761825153 79965070 873508928 357837430 913283079 690439086 880326390 373840364 727199000 160357316 412551262 20430746 610481881 135813665 944457828 776212677 833737096 734376848 875069790 884193120 925452647 890036755 903195759 233513197 521385304 58435303 740385780 423165571 481694022 347538067 420797167 250484941 573850414 319626034 618043747 436609532 595652318 872008847 934350992 295494573 461824006 307795023 509432995 464628909 623367668 599215790 633031735 990556533 995233979 859317459 955546483 274462733 350975402 127857181 874192558 887298760 986634417 845384851 864489054 427876429 705760984 931853907 988845224 72694120 87893788 39737301 721796818 965522579 965728361 183347072 815808245 252193989 705926521 578781938 901883049 556967549 948147124 451335921 502662201 255533185 704259508 946356082 974842740 299519578 598652102 671209939 775624042 84382502 616219313 673776831 976400130 843405429 967796542 19093306 230474524 991232261 993896378 82514565 154356868 662895692 873403604 887939334 957258086 190886569 932387233 883486707 929073893 987886101 991804927 278107014 609052704 102977591 696596373 675667014 813497332 510432651 963500045 506317626 987899352 657878243 658211587 996741912 998114591 942576451 991157137 12867373 381579630 66107755 240757014 370699648 564304402 606815828 909288086 884463009 923880219 513425847 794424625 854121542 919433028 498256728 952090482 945069768 999222046 506276069 633733873 166767940 251419211 175880437 972747609 618258325 793511587 908064158 939672063 255267160 362444348 272204364 313211512 773896484 807650072 917872388 947550776 382924020 766114992 73725986 608353513 826769298 967086221 967587175 996365962 503879445 588639612 241940266 524859417 437862624 590965843 149056971 708668312 229565468 639548150 297734396 319853627 739416481 935592946 950518214 973492507 659802665 962407975 615645372 823494363 926264081 972129575 331426696 879188301 819091972 871192577 140825449 711846557 950336601 991359247 768021274 784266009 176725843 881077879 462510160 858985904 220384114 907115428 567900707 953121457 669712376 926277496 909743842 941806467 483455890 703896312 90527257 405825151 937525883 981766958 961367805 976001461 975107669 983820930 960677293 976289820 783743161 959526022 151525037 252877636 962966192 998868126 394861721 476198436 70920865 279610960 403845629 785983619 476683442 746592911 173391750 575011636 262156184 451421631 857482607 957079367 561957345 891556836 322261251 605034323 124247917 748937145 3851071 909697035 769292779 858481082 949992135 988212818 51821368 559605488 211735268 806395739 401890263 860533180 122914566 559021840 314241493 949031184 441494732 677180401 228090222 445833993 989307505 992534023 12012393 824452062 887044731 952277871 919765831 927396369 638025548 994069635 755702692 780150478 836492140 889125688 203863711 853461519 147974785 686476127 627299531 861566275 115713979 961330609 672708658 722764241 271506067 454824470 550199032 624741806 348296924 585418194 294675021 745342447 903175539 955080406 774824596 964350281 36864927 433934531 595927673 754863108 972546614 984018469 390191250 726533805 863540275 932097386 804025554 829773882 583439203 846629709 937931359 962440513 682231892 831828318 265838334 442980579 953764447 955719367 362249966 927842540 405418643 917019910 208487679 939476003 459700299 750668709 215402768 403281544 758123581 768719835 937286056 968379137 94968935 153935953 437090722 920148151 25164529 277430927 337268322 730824165 600345299 825939415 251362243 286252380 161705578 507483319 119519633 950615562 251570501 663304558 182752691 982231466 847038345 992614197 324366565 695655317 782489561 921194936 904382357 973223466 358929004 449672156 566234598 655833683 876512531 938228445 88394665 261941537 1404417 431100450 799073558 996926060 952811493 958285549 241724233 337371604 157345263 550249053 250549272 780535828 944448393 992330414 204176865 539169847 486418662 508958085 695912429 750789196 268226184 642549393 890159992 995762717 641492349 926724769 357700543 958329046 540376900 710949269 517656369 746839966 426493249 850396312 889371929 965156009 228277667 908889278 292098300 836475722 629674899 630867809 637226561 807840030 43488213 590908131 837396393 989518035 950005660 954913210 852862325 978517447 482640739 573478250 199305462 345515192 870017619 983236664 930709539 932233623 977021641 985564572 418050325 901396208 239350741 838395277 306755376 310160844 311643089 972647244 642682250 863247908 748016449 794144754 703559653 705643915 510294338 610508343 253637557 583689241 846092018 972445946 670294928 706083131 511092264 927396020 66085419 987684404 293907031 933607365 650687477 817891838 722669863 742512148 971733366 991962201 826880482 843167020 810575182 959836362 908781908 939609002 53369123 380265690 960469004 965102992 672627396 905831125 838421609 986829505 848481965 957218368 399838045 594372227 853182333 858739659 809617619 964513032 282680655 760671592 794628932 921441179 797916575 996948540 648769318 658785423 38195520 816303527 31263562 667242983 74296948 600264891 845558126 952713024 776110647 803422031 620441850 954230306 258519521 496221542 614909031 665700656 376781045 425109455 11490368 848622249 750819625 848622573 118109869 461432802 332772041 760916475 653748294 780475797 963019482 979363911 12483882 16513967 116762362 840527287 512866769 657567900 831209638 858231492 278194257 477046818 205369137 916387134 294859845 581692432 202989850 293316769 465057252 679900749 198213470 555658401 727690924 838102431 673913685 682507685 399648746 437029196 437794125 499145418 519708689 904639408 981939936 990782924 824736237 826218240 748588085 994203083 853584527 863753047 242179755 608386635 23559950 213588658 929074020 976339668 851677028 952972325 44653959 381954379 524245872 699556114 676382109 792032925 207892862 729698236 979736113 987703538 455751097 460213953 80552772 173395567 432527596 983711795 690097669 701474543 346463769 382263099 723321638 863501095 556236522 719468709 390674661 484611758 723308951 811384467 466901759 579472994 314013050 748682371 493899483 833349059 528954712 750502159 257059714 654848958 640688456 684927066 326048335 964556904 300255879 500362211 167355806 807906184 558379745 932368047 989754301 999275142 702026381 826994880 814705263 845641026 624844638 729998184 726068301 728867775 475076664 710873337 698314874 814790363 166529849 802251990 918538123 974946187 181850637 343518365 445273378 954945979 814210238 888156785 725489753 904822552 425233858 854638206 186149895 809856394 129552224 395151794 466386506 824051381 488163186 994267796 148183959 491135941 385111977 670590787 640965357 670851397 142949525 792004598 274293456 598859300 136104657 569213581 705117075 773120491 860460453 924539394 143004626 949413037 801505263 985066942 865645473 966195205 116142187 391756554 960353681 968282495 755910393 884998781 535020638 888694497 715833147 786651342 832975740 839470836 439966114 926188122 201329758 750148411 639060448 732839380 78751961 550747420 232323180 237032814 503830278 568228448 734309232 953027671 179229233 720488676 35692654 593935146 994669491 999612174 797668005 949783424 770940128 971242088 620103001 999314138 904123884 994471511 96063033 529449151 307981177 762193374 861599533 932162545 809156713 994531806 805260228 924703322 609075088 945934672 936133776 968340078 888907228 913513570 590749456 703476756 440122452 759406849 832734825 935049466 141935625 474300506 953757209 962464364 485216581 797221833 298080208 458889254 984058513 988083854 718046313 827103813 276220 605494028 269525702 597926644 831377039 865610849 326575662 693006569 499668655 988783353 658254658 814289425 560970520 606056906 959639810 993971505 2601640 382238660 306091753 987820433 44569878 948745539 182480967 972610766 184432354 318562891 913768273 993533582 41173224 661431805 572289082 589548861 617931432 915847884 160822069 543375598 701779046 977526855 183767489 841378409 392847208 773318002 275959229 932710678 762517785 787817642 859783541 931503916 223230951 590471304 563712247 752081391 486279399 785447021 470966651 931950856 772072235 862090881 865148521 888639248 373855253 732419845 351082237 937625864 423458274 695145057 406694440 985025678 393753266 937734566 986412118 997011473 190165113 214951153 743069614 807217656 952661721 987927356 851993492 873208892 211745941 609081616 821443627 985816081 677143748 800508719 893998103 927091508 386821371 745161052 558193125 699965369 411308254 703261205 462676924 661517841 336054438 864762361 104434406 496919687 987154909 987489424 529324893 983764610 823070974 881864324 125128682 735311392 554582948 654841937 1603538 717039947 314871785 719576195 735197702 918734466 369262173 866671469 928594569 952927322 576578140 770667571 481585082 544244527 376695581 441476157 563557423 822738603 799673039 865402435 884264824 969407251 11458441 885088854 295269728 395209172 67831616 998146464 653625491 893093502 755696350 988114204 171715989 647318837 76441390 270388612 196540976 576187399 562135501 658852913 866091180 943164968 566815036 839830466 851933664 852609169 690330601 834626840 674068434 862986845 703592161 922420587 352035129 572580815 217145109 327963477 29441618 827980006 586538971 807160100 284375175 562164593 741723585 928642919 564569135 966030610 761388338 766161945 295520693 627426492 473742590 919960219 435678281 753919863 441073582 737527686 949021845 981625745 254320101 590771152 593559155 915271206 916725329 927298215 569125675 822710360 945541171 978487962 293973073 631541585 941120221 993248724 45933832 620573387 664298928 999528054 204774591 779821320 980966812 997744293 989460495 996073736 533018878 754669141 985376678 993473576 760360220 781564471 846026223 859402089 94148034 699726451 183823656 592942152 656426443 862353048 597405305 814377635 551997781 657603304 775267606 926751004 22706623 838072710 244241030 879187879 51105121 488080772 929983976 973189605 993362019 995805753 446649115 774836129 466298111 487714297 549924564 742783065 299353326 780944107 730158977 985156805 243864440 660443551 54602133 255837234 395162390 990695359 304162453 707300585 385925120 839494414 628261242 651819496 88799622 884790217 319960388 613957184 297388467 994248428 391219838 578643660 462455215 716349056 936010814 975856943 256875954 884151717 528588796 857660782 815875221 921899293 262193783 657509414 307088056 616160214 832643279 857574575 361061522 789087875 119375371 241158662 6433237 311597334 29886278 80359526 136880914 562784769 746568004 971800581 347331291 752200141 91609638 209849426 352124868 508406055 340703359 962660329 971456156 973697738 577891383 975559919 845752881 940093713 821533388 849376429 417002715 622946242 352753394 439608658 231638023 947721415 730689783 860283893 672599388 859149471 471898322 594064294 220322183 504557266 746772632 974913103 458698958 757100036 308125582 412876926 867265983 980937539 397491337 478809372 789049768 888501482 872767296 964104359 542844200 957577715 287638785 900949235 884670788 969156031 458015820 779984891 312626594 955712674 480299765 946196526 621358956 701805644 693832318 747667256 295634497 428740200 759783640 789859317 904038001 935275953 296649915 958768131 821146788 993303505 58021534 595618405 724734130 901504627 931538213 998301994 174189522 728700728 710192889 758371257 298411158 832038258 450092946 707254222 431532194 559643887 282487710 557447003 837027015 881588496 82231236 135743343 777465407 936446370 947932097 970090046 591887070 695215467 509854979 669090388 873988059 912657155 616513215 812127857 152232518 605633822 525993126 957803845 30316074 62770835 761510319 828881426 864950867 877888224 732216341 745761868 455352435 520935031 543703037 556302819 686429390 889810432 375937820 574587076 808663747 957804628 695208367 961364671 687064551 837133753 235601051 863080539 442193045 556256215 66931990 281332700 8662363 125804748 171274126 262414856 224370082 757202042 478517795 668691077 410684148 466266804 680535060 767703819 48764578 995109296 697466241 820563964 554237392 769396314 5562299 649772513 837365173 990305793 21523342 322170440 598899566 928659816 83285431 856277127 108315028 926092497 691758098 912593408 403243398 639519172 368042876 819347794 934896538 969923057 182705891 916397868 913829619 951351720 794234046 818253068 136588734 806336251 56807690 760646168 494931342 631067124 307037860 363862019 862404321 975463845 186108932 608578011 621243007 841863541 627178413 899240986 541336093 629359978 859826027 938748067 122422043 829141834 71935878 687910827 558319693 599059540 260990606 268537328 466127729 466616364 210591110 293452405 475110866 822277983 985805558 991528815 451014113 745088965 707784372 836928237 659407153 940452939 994592780 996157307 519893048 766515183 399582302 949370584 401741516 621191624 878500700 880654630 974792362 997147343 177309464 508986675 317128421 859012822 739967826 972160524 109306042 198271845 354932661 918427964 306574157 491102275 326677014 456373305 41733525 495382654 745071688 755192490 38780721 109929935 243881048 786332834 669805119 959580891 489406003 713003986 719700833 737095236 946594206 982313836 407121397 674490549 773938040 811027769 958537224 976579807 852524494 858021609 421376386 553395212 635311840 778881918 614471555 725120990 2528353 185864792 213702291 401926661 302134753 728191115 286398932 726751174 889633750 981938805 400206084 922474592 63586232 320043338 571387964 810829867 648696884 778610204 628083065 939586536 202656171 829490177 73694873 538546419 647750117 997381124 777698666 983335968 752679765 900584843 557325524 668529986 238790379 348479903 223867615 764868444 101193044 658361468 938540842 956147293 857752477 858909165 424275664 510937867 725087278 742650744 690143936 969176089 622362631 832563778 319900420 965440153 421405539 587022146 769725467 945337559 383265106 606494807 742121053 887511368 381995235 591002050 568796194 740754699 519333838 651832778 201206790 424149039 65978271 840597092 687171814 894234985 787845506 820474797 73256684 639731421 931415740 961813115 939529086 975607200 174282566 581538570 10107204 231126839 417796043 720635044 1361670 991580055 242764594 908554032 523570000 840386371 55729089 775280180 676034377 767337091 930808505 970124076 1797003 463783324 66305287 444005349 428183938 454161441 107314346 286670830 836774384 983712923 330584713 978961518 413933281 671599399 681179885 959589143 110834319 182773431 897968887 985864353 746393607 790729885 651088429 973350244 871780972 987482023 588419858 648876952 484771897 588843870 810812915 857288052 235970153 466879462 177218369 702634183 103226959 269322603 295454048 687027132 588423964 809283439 871731517 901772936 142447813 821956486 258915742 331371353 394013521 865867169 750068132 851074290 322937200 874056064 756420447 994638987 749045237 946684056 507649142 892643643 350767043 499964110 801123772 813663433 678811060 755111964 805700200 863270202 125067056 585347303 777792445 907980980 815010295 982093532 786381009 972056633 289760917 344822332 307608307 739127638 894107398 957464777 523844540 895777233 940042191 974243753 13148714 496654969 562527089 951445536 833861582 848984689 947627990 952451281 195341783 411272092 719524417 854141381 867045762 960653849 848247517 849875666 231793318 546690795 904566467 978012232 270277952 889976352 982571793 985959822 942948002 990499450 211130491 979394241 197538864 229588073 289446879 633790546 812393410 813454728 929631069 996488416 639647034 804394279 85371755 812077952 199147615 650931377 83141643 280442799 908274097 962613691 688792348 730184142 183546408 250061247 737063291 759368965 375475582 749775546 637081852 706036383 979645962 981870343 640529225 910479954 241671048 310751250 531591940 812336129 442555314 636398946 619433800 791238679 51420614 810304597 32601501 162016593 875815862 916133522 618792064 845885471 211057761 259414660 692632732 854938745 204130554 520134768 394704917 918722920 200474154 783735790 361307467 373728171 490705746 669092934 69878908 156448845 228084388 860595688 284542112 592622266 627890599 758891432 661750554 952451770 393741642 550909702 965199688 995932324 483939853 613512173 96816847 824393622 279015880 432386149 91175010 852789722 370395343 884625988 316970173 751473442 218307610 229192752 38935606 641855957 124406235 745673489 920169186 920682567 626552634 939138349 60750313 784002634 131652300 168449556 192877271 545711536 169888926 760445126 268723361 532698477 452745292 765493238 736897600 803356460 654850036 836328126 167611363 330033807 226873538 941612834 537493576 732196618 723318025 831019139 322096154 620596317 616569148 767387026 654000205 907904328 493758693 694491819 712771328 808197123 460558265 763573950 180195282 610837199 553750777 857026243 994970387 999414341 294197541 972206068 250547515 748829196 876097960 935705978 825889830 868470811 936268410 949849656 384515746 475325878 863343033 890258399 132125164 979052958 433967293 584213824 821982447 967246318 400970318 551768495 731711045 894215314 371795665 411383473 770976139 871242906 727530797 742827602 212322359 914543165 777766510 785284628 275710481 534435493 927942550 956097777 994765631 997530647 654439411 681315962 885643952 918329633 432762686 726687688 223230781 507644463 797061362 903611377 572507720 677770612 49406864 581223800 719612425 840207124 929916931 947632160 55600789 153423922 240540045 924657533 783721099 951883998 483885218 971359872 882513347 936235138 483325545 800765856 927115593 985449505 227131854 408493183 224461455 401957882 251058685 945214507 858906337 939880569 808433764 960075890 355523822 471939088 543898023 606334245 666821827 942795473 834430526 984606498 359228764 797882048 323823534 628129697 772515503 833587528 523570055 832587454 275024703 278352774 617516483 675139345 576304608 924927796 228976507 885246885 860371338 957216861 876750482 898541393 359787369 655603591 822309713 880768368 878891442 893323101 79905238 517522474 917635239 947730383 399748459 614890773 812679575 999178461 426740335 555484507 135184627 971030638 981833532 984177893 192613122 862759626 667462451 687482944 344306824 460282250 847713699 977328208 844943369 952483994 795566484 808202906 264912975 626303481 900750547 921715447 597393757 961849993 822315678 969570051 161710275 656395775 579455210 857964902 942368363 945218630 759638885 816712236 554311713 947320227 202069533 494495320 324539039 680395964 997440439 997667117 31016608 679465548 900701999 979292037 586035184 690651435 890019784 991510616 287614903 515372248 753104553 840681673 449444617 619673314 969350740 979773231 752591371 845960979 756524598 941328810 987324919 987964558 649213566 822416837 650307675 841095212 678371655 706385679 237242380 650906448 934735753 959438577 722978162 852141620 252624401 565995301 632364334 875506592 775211849 834396283 497855021 955144789 460940460 524785618 209918411 657570464 818634394 944765913 90464988 638052022 938423113 978149273 218912810 981613345 473228836 537013681 230973587 980931912 780980410 911851005 456792228 706085551 545885599 782284267 284376480 753131103 386359661 526941424 681939128 884033229 790413469 916594421 928258007 982639100 877646921 885586530 344283720 717927806 848414377 860609826 293369332 845408825 293060758 520123335 304736398 770707614 960482920 967037417 106548354 561690302 605795129 615156975 797629864 879831111 289072707 714215286 773884653 899944286 474725746 752647610 584634104 732891733 667979265 760545625 139134645 152869795 409405397 943263197 835637261 951087358 968770589 978486502 574360426 921654304 378316038 938415530 533265318 724368180 694840817 709662211 32794968 86165647 815032282 991724237 822166654 879751482 193819382 935073405 629701598 685704432 289244184 662656859 646718995 941312111 855792131 998551783 257927450 799892835 1528721 264652197 441538310 787546508 121576735 603678486 878923151 976103673 284803858 823759505 701182324 735925787 577225512 740413868 268231924 380956951 828266657 863425202 803739890 804832445 845592387 928897279 968473690 990602580 421198858 548125763 567409554 596987996 444322910 997584939 762738357 844502142 405370519 683892107 663417568 948857488 257462989 395697041 821309940 911136976 438376769 583175621 294873457 890300328 854816701 929293568 834435683 921101336 587298960 676445996 843299769 936910443 181361474 340879546 65802176 259674781 608492695 727077333 975436229 997402014 919430056 988401090 460124006 963996153 806200102 889770176 908029190 952418644 672282249 938525172 461496999 681245450 539352487 582826323 717092774 945227152 94252990 554435697 300198968 525597119 257841498 571221579 818740829 835633725 430058376 803691111 904834313 944102128 232186967 940564897 787530926 974598617 909426789 955972379 7872478 473334247 297911944 317195307 401623780 847512827 536288848 882290564 401881711 635589843 924006914 943844566 926326689 978719364 82789073 150516832 380800285 460506821 714703797 803928452 282153057 341908267 962432522 966051250 252779197 347946806 828544068 899571287 474984889 933996594 195229468 997267910 720430182 905059138 839890707 970355015 354467084 731891087 441350254 893547532 138628109 394463755 634040549 840281317 347681186 970814222 761130675 939992941 791255782 813678415 94355758 98075634 18427672 666528057 61432095 513192869 548361020 849925032 720169374 925985138 281382531 496526777 555654513 629928822 722650085 837896440 432947895 609363176 229082121 854955936 602080696 738063441 603776172 989609626 2272041 675628166 673985038 775576654 175299382 985854115 263060902 436812187 766781844 988191729 521020625 768531493 38228241 479023479 210898265 746025301 23003794 355442612 126848586 225454909 917702129 985850682 687630434 695199239 255565210 975572163 956618920 967116472 247481138 330760104 285596165 771310120 622316256 960206854 676867643 747644357 729662992 862210234 796043957 825687631 557368244 654276889 415930747 844557607 295658482 741701714 947296729 968692509 462377465 820733684 554321952 918034504 896457906 993122001 766802524 976185016 787529997 886992063 5689297 561808803 908893291 978293906 62648146 548514004 673000801 713242730 947553038 961209497 586310090 660633784 288608384 898098940 181550765 907757825 413957346 685854964 204828747 699910870 478118305 587025134 465893663 612188849 172521754 274827135 664645001 700500708 52857855 156075585 971156483 979952278 943257793 945385107 774607216 945600412 676945003 720524585 755503011 940169277 484888613 724148421 299802047 870149945 774194584 895148719 231458850 838094061 550968371 641741205 424815975 990931463 114099937 990055658 143764247 746746135 399870545 518223693 565645810 974779442 156530432 560665550 731122304 737068493 47601306 315435705 676371606 919619252 320182763 759338466 355524245 852779013 936909657 963530339 239767763 848536105 150228192 777940514 782827509 945205623 823490414 958159912 155291039 581417374 198863998 401804872 663784853 766600685 629126109 691095037 385586538 936943345 682748577 968374611 324139543 787588723 79360625 233551960 584300630 779167990 965406145 986823632 139543496 912014655 173558478 936260895 404603507 843865014 502301185 614890958 356874022 568454810 805468732 817521312 443883611 504247106 936346111 942218950 209891907 506063976 707297794 713423843 481415251 727646596 526759370 695995614 721124901 829943848 748773223 983227392 35888989 980665912 543307303 724673825 319539312 349119871 224533533 567977574 922286942 945377747 300659445 471881900 963740754 964181742 559961245 617236578 794093644 799929235 155023795 344447845 320324587 974074858 746577204 954559096 970716837 973974181 658494920 684671556 495702921 678498039 513070357 836451146 617486858 710198288 383696315 906649641 729093708 982120333 88826941 980677864 205038640 243805575 257191028 980679664 385565871 520190468 606892365 776119045 66261400 806364553 934731304 983360039 325349129 581171210 691339835 859478573 805308045 849794272 504735877 561361720 826041534 967289898 163755670 173221793 789241528 886159300 798574857 978567661 207101903 407101025 765678186 801245016 214722661 253054727 685617617 907032917 897119358 932227541 955352247 997334013 692718589 701387912 329392581 904916585 486208153 999860015 893781035 941742510 500202035 605718713 231039452 644757441 356730055 850396343 617215345 839601547 870298017 957393764 267358965 523139883 935686548 963865704 832799550 864987905 536525894 853360574 746914905 949494535 230955640 364917397 531584981 921871782 439192612 881534275 499290979 644416455 804901150 914070261 939469129 992193069 274604316 319178445 703030696 978073952 25840968 930271902 173370061 524817424 303800550 823906661 404216572 921871181 552931718 577862131 683986506 812321522 711779051 988036845 907934424 918923506 47099586 896095363 887790535 906937940 309258318 731710935 865091022 955710822 928054156 974419174 671782364 719535189 382113930 597013977 362833008 503584270 951254508 956297725 347552326 819902844 593396477 605213116 267379975 316020812 580339074 824510369 353665824 796299867 866922179 970599079 369339548 590910760 361753226 678503845 576202452 917621525 86870454 172925358 425919445 957897299 941217951 962983351 800867715 823187142 369365718 414796523 352238673 648592840 198123896 870713658 307266440 886298687 455103947 945470580 28493661 734997802 840727990 981708983 770786717 799131750 323417786 587176592 422492303 622639711 271807341 807780287 19744701 377124412 726213262 963411357 479951386 701772430 553924793 982561733 863347819 879017561 379034334 933574402 935954473 978476093 504830022 747642060 108027200 177399130 905411957 913983073 624890752 835005499 474193897 843866716 499434366 552748583 921985168 985441167 185239095 747326402 403387119 975817232 793953607 956402191 422919622 889758576 612625396 899363899 572916989 847090217 580199417 926086712 358958629 627520166 854495757 964250872 345052513 614354168 628382322 778358751 774929320 836198931 297463112 725058087 394861644 853033761 531799909 564425911 664881425 927233551 929123388 973952819 424567352 809097732 439259999 824828745 152053592 218034715 724509486 896630011 284812938 290013492 332112609 894247394 709960959 958265160 142211835 272033776 906860701 985267131 785427807 850197166 332752486 669196673 395787177 913089357 399872485 935935174 716633687 817582833 495524664 953420451 837534791 903168589 264878827 583172366 159362031 395235479 550619332 999997803 630743797 928215494 183380004 969481561 876440077 900526448 705850063 865806921 184566723 752363231 244215214 580999848 656584170 896785088 2548612 357960920 639631751 966733027 501823529 947284317 774699945 789154150 279643946 825393962 584609298 787524125 270845632 360362261 646810563 894414657 890722335 896299751 55014310 970668740 538904049 711367960 92964052 682147349 638403123 644540756 867809863 964265627 927458847 999762624 606230954 721907705 864537109 877828761 728612747 911223510 134061622 441222313 723630405 982413267 756523669 773705700 937632068 965866248 785940512 811186301 55787889 462568486 646742877 699609875 154575894 157118788 474133738 690842888 210753875 310110287 498606664 835312215 939082556 954822197 931506550 979455494 224045787 769124250 163938667 833057044 911714086 965875714 905862938 911614596 235039547 584078444 331358739 367185117 264998260 944339119 752340244 857154280 988923126 995361297 933080864 978400983 289628362 837227943 965143137 980858222 181544637 745479541 69940891 210131805 531162798 953669233 983000128 997844488 628234809 926669548 956054066 982778606 160762337 881090886 535357940 779567149 499584454 727970844 520814525 911377186 332695813 578787684 262740657 405080166 175517530 320850112 752790804 959647109 75030775 816472210 109919038 218031553 954160793 966665486 220338930 781072079 545670010 989942496 456644156 511248233 883662916 936358997 617758714 772007785 96119392 903536567 533114596 719012282 538200012 580360323 769200681 960469427 969346784 978978352 565929526 980689105 138951908 268145103 150152161 611017364 910417498 967407271 139977091 978739794 251974744 467761855 499695965 550216103 322667049 543122644 579030447 965739199 361775350 368106844 749774326 979993803 273057986 827127842 802853590 919534349 198793277 225884981 592573361 823465666 91813994 961461695 58186929 326646378 186887309 254969338 309387127 694697886 812677610 982998409 949955120 956129724 244901083 564925403 829959030 985615804 278590673 842944049 403788434 504483295 161066099 592612209 271917206 913363309 851049497 911994823 510896617 585706319 960613138 973765584 276092843 570587914 515073994 638568515 585597130 912826595 434585218 753697255 127340185 207030418 885980032 891775780 846200849 866274729 10885856 136744936 375387519 594798843 632455130 825411564 279649631 341875622 305881616 941958396 964183274 979590220 259254357 834184688 472628249 764255119 801208279 968006000 811710877 887096992 703843885 991697081 407699613 826247772 835803802 968982096 787606852 900505774 448659687 569894646 381443183 392587464 939266781 971419274 135931951 465793720 372760763 753189189 885656430 894635798 232006894 250611446 2611828 235222409 769770234 860457984 210531542 642139908 733152173 812171843 658685950 848163497 223193867 902818270 14172665 982186744 501072033 826333670 437045257 536791300 109175041 767986315 914152487 972733295 962255029 968304709 901768053 954357978 710448002 864575082 356900580 754517653 556557087 575918673 236708355 289167438 901396625 978710089 257935528 401643449 331332051 596701822 777981045 866794732 91615815 323966742 371145777 549130574 890152207 947923281 610701176 859026711 293997899 301920679 272885823 964534474 634009549 846665282 420801105 985852393 708838262 858491501 250330011 295028943 923542374 941216125 284083450 596136300 571448289 966529453 552402934 898300727 70737812 283682475 647994995 807120045 454149312 775867905 670845695 693691977 643313732 761435012 614189521 753954868 818916411 861622485 217569857 782799795 548087124 736522773 165409264 514147485 762671519 868917091 468599095 834907787 459693980 865995452 256745864 435962063 354188852 798612015 783760055 865021194 92992785 687064100 90882486 986437675 342081549 921694196 742482395 911622555 648294318 712978276 93115199 432953964 267546755 398857930 530533501 889488252 39514376 749208770 42917638 986554027 397993432 495924653 292648371 659262171 790151169 882782944 247966009 283604298 795146012 874120937 604587890 837092977 969924053 984469769 69516169 296800932 598392391 669490832 428049740 591784610 702515339 750656469 88990314 273405400 89913176 109520374 734045871 909675866 62373950 824313310 819428860 891703218 904362051 964197463 786533738 878229567 299128667 932538820 341582273 866959701 581817481 753397162 409715538 695736540 576340944 886787057 407917462 985513732 423781736 539271644 526646313 594448571 221366396 762116236 674207205 686175556 64828558 327457199 216570545 251842839 23778747 107942442 939755947 968574545 404385889 860115012 422324556 745274577 679593265 683681047 827256187 908847843 893384369 898809077 909376191 954638304 984035529 990523229 791264355 967587056 360710368 459724347 458558542 700728639 385324711 604081089 711329853 831656445 289694518 799548665 494981861 797288291 91816834 906117641 320204196 746866275 617746009 984280100 833290972 908260914 309563179 671121511 691198955 834086066 596999858 946658092 492296142 637587162 291721966 597036297 490688663 562333850 705370387 991147552 602680188 778810789 932411395 941739124 742031117 892154129 614451680 711728783 133944965 874293168 784194898 996298909 102868075 697204885 773129478 789243330 413699869 605953165 702136277 850645372 826405157 874393704 758853450 991946293 558096390 830357314 237367915 408180508 219248243 911082625 405473356 556015606 919089818 926148954 463273112 853372170 18316307 95175262 139403442 744164399 844384756 882730684 384250269 790673768 131371854 548337225 585006624 991325781 429152289 949348033 655587529 902588012 297930067 762486060 865221120 901163469 832963098 937384463 382154882 979957404 792225364 877192593 254289713 480789704 829983457 944722443 975455984 978746218 76076658 220666904 344207554 989005587 970985044 982340569 408342037 804872981 164586185 784356417 576908557 687712017 557781515 931578154 971814701 980890118 540546636 729653155 125588864 210002649 302724617 942143874 928438085 933419744 602501321 711500404 38472730 204881555 294540498 820948160 943491169 962365103 997859707 998543409 615304760 695161537 454370279 649348260 894269141 940236157 252090014 962268420 42454212 461266058 414158657 911755518 114933777 265019460 122201355 698828805 360769160 704542883 908627361 938178529 228955827 575156244 537928012 770309252 391013716 605111656 797815175 919938458 816059842 821565904 715507418 788692372 763613126 798022544 842574290 872035823 535342943 552491056 620289990 671867969 294950932 750320291 375953197 869994905 762333827 957564338 551585157 849975370 504665874 768481549 898867949 968651692 63287610 224174128 68568271 305245009 480319413 721372880 883883860 911796862 587367000 991299598 364724319 617034881 62774597 404163209 332505652 906397070 478333945 807212815 142664225 963737673 474135074 813412548 313362850 486400923 73241372 259449012 890901172 896290800 446010717 486038535 577866862 652920706 127744482 732576989 29004113 39489476 859884434 919039960 278811939 811926994 547748347 733530907 534082695 954921795 5861713 754641054 444957460 552206750 632492246 774763564 3130320 135071247 720957886 805625306 556755498 989570225 886100427 953036933 771158250 801069940 987182377 992808065 778076532 964076933 722970070 962674172 2970243 119451488 276009134 382592419 385607335 566748122 353950371 553387328 622081769 638733353 824022484 831092628 65018120 622712266 47442067 149037479 465810448 682253225 452810280 906515380 804109303 971907280 834394787 912021798 340187817 581337451 556943052 732241304 896324078 978498567 863850565 935069006 298784563 952889817 942615360 976714614 749086246 831139357 244395190 841888054 671344558 933208007 874177975 930516094 15577874 47300594 910697883 996658439 467434344 570629031 333468075 947761604 611838241 633620879 71274089 165590726 339239506 702070972 5263472 727875340 727390005 770913612 562169305 619227776 947944494 974815363 292680172 856862625 974854245 992538846 563973934 643579892 115248473 412308548 720943993 813156158 381199901 513663163 619766325 757582773 509411117 803400019 395843350 723282954 894474756 932178698 828444719 899275709 302463031 613717231 288365478 414195444 831463150 918142631 720881689 856404201 14041315 698793781 420244901 550704579 496706474 605490589 70583089 784270863 272194608 600052519 895795931 966532531 447922566 644355169 819900438 832173933 344954891 808606680 306999429 630060435 931884105 970387890 434841242 549236800 36266291 527108408 640957273 893665484 723110747 735062496 668383738 743424521 634685758 891140933 615202820 826136152 571088852 950317017 586196868 873132648 331131080 766978502 447678343 796469116 151899116 623439511 584615374 990858941 822104691 894997375 222967644 702952095 581750729 815343547 499140689 925665769 535532187 681752016 408456346 854766787 305205803 636298155 727036803 929375277 613105602 907322479 259191747 418103460 160524970 422305413 166436738 547545597 656739789 888319549 688161591 973628480 53018821 394902432 567732258 989582103 328357461 948650819 837778131 850318456 94969174 208281289 562893809 908660261 963135087 972858926 425829003 897633117 380678881 421181099 289225608 343418961 678334367 964262899 457436057 745871255 589260397 626467811 470320429 797728082 710882275 936846899 620360627 851129071 242396948 842352421 964517554 984557054 993822528 994652315 449985657 679662067 163211342 949678948 843578208 928296284 911684298 943488017 892014811 915770605 419492089 673979421 249401459 347125461 512733898 698991466 148125806 889472955 891025983 911050368 845016412 943179571 916320445 935429355 71129448 480403307 284897558 547942213 337399915 935589207 62576276 736524028 454500978 813708780 977731640 981133781 594585391 782217033 986414848 997920979 154368922 267228967 881318710 983300601 987530567 996919661 300718907 633284906 198708764 679988484 673863900 969660014 522249454 842612981 501904477 794787244 373274361 784790106 324873233 336875492 248738540 887525400 285447894 506966432 654558475 817615873 257061713 355025398 491590680 757779274 517148450 637953924 530619675 607277458 348382287 448729479 43852198 352801557 514466793 788899813 644603000 690263954 155485885 380670703 883388337 915690918 334239181 834145122 133872121 449336210 770383943 932096720 780199446 882115501 685279304 884925090 675184266 978308268 738995567 951018822 80847403 899562274 966573861 996232935 99478460 221880534 915270564 930925006 483078978 960891783 540135530 739265020 33789966 220228420 276229404 322492004 894822845 993462907 621178676 677003799 469371927 576055039 657411821 960725234 828651005 870877540 560005042 847663273 672515026 908766564 794492887 840127207 224061164 448608505 358523180 979064292 199668726 918847249 325685790 773408993 222440478 589952220 578491839 907887340 790804480 850806535 22785498 948548250 975411617 997089727 292234212 646171264 280568887 659409751 121132290 449869112 55323461 712474036 829083726 989399378 851457080 993167656 122621626 664262445 552942731 588332624 211825996 957893209 684795796 812771316 982366254 999126018 203764528 367085959 136161336 415528685 780230269 782760942 561121071 824626850 641610280 662948390 16483017 961296203 701108532 822373206 985508544 987984568 601963754 852512052 813370367 958144523 518076690 561688743 714061091 825124725 445573023 874892562 516030868 921991081 654622205 756187878 775688126 794217453 841630152 913701497 76447152 917213713 27933489 965522580 818340082 902198683 371140231 888604880 408939169 628367977 77318773 526709578 865215612 939328353 853212650 980122606 318253287 998297000 526963073 689351190 28984602 77454306 509235086 856486788 300059722 949774040 351861292 451437522 53513607 167204536 861571550 979868326 326576189 428884556 771550537 916739483 245918749 962727445 955531573 970221153 679517853 751205978 526777947 859246926 825699032 862096923 379696755 421198722 572664634 584458093 297257003 797730768 892260630 909864462 843697165 883834120 752947217 998980734 209867356 476447578 72052466 579560701 43760289 715409817 497218193 593890065 656650132 705658891 616101199 797939694 50451144 794743472 666573866 821440940 83883798 510465410 300543686 405717169 692149943 751127235 831231962 833507515 525029125 642362831 870245027 989033119 952233733 969428476 235644253 541167931 939997790 942227902 712912906 788524245 530024566 960803877 450520752 795274787 501672126 972257999 135770259 562544058 388715922 713043634 800272784 912627738 294966400 476982370 78489653 788498380 663461458 799141654 495454326 969267022 33145463 523049086 628058683 638614155 880994069 997005963 714015876 889888930 807371842 996538140 48833827 791589571 508153857 583309048 286387748 825188687 926978512 950669632 313031641 718729724 127497085 914400662 304950195 862615206 317215412 997146243 529775180 824892785 711848063 868198498 416601803 636912139 125792691 827326608 627034740 704610009 50853203 62279781 232143678 515152347 819432607 867202404 290594420 369798315 233971339 940348462 341816066 496738706 980874065 990520202 719653322 981093862 904439485 990355744 326962536 928081431 946415862 959595110 887907496 919211930 651775486 666841490 682544295 992058361 767034870 821568154 3788055 470169192 716519681 924323829 383676386 750916171 918003604 932216402 321289986 586900207 442881785 785751813 477525480 538292933 886089707 961362018 67739799 497806268 527314403 768194407 688256376 891354925 488362303 590670129 877762303 878631177 480547769 824545064 528433724 981252175 429397525 846493334 475876485 477536268 922059182 931766259 841426869 914152078 93798856 275788611 118465378 976209025 305194608 939103736 216701827 711427099 633070365 869952030 2663541 313510190 159896772 821108113 250358418 259949291 651770748 898105504 230270426 689897183 93369154 917284249 251381379 559238330 839449466 985558819 948685517 996459849 729161820 987506303 166173385 319115571 300468110 429170333 113445544 879794390 343772686 955635620 921204520 956228891 469759838 859364575 705987797 753177089 565266440 934494389 945711202 972710038 269127485 973974074 393663139 831480109 111982397 758907950 137977533 150721686 387986570 395770175 550039627 653615124 261650323 731562017 335337858 829503753 963673710 981166771 102163323 610623822 490382623 889144919 565029433 899647175 661791170 941451986 928110450 936946504 608234975 935738702 99787456 327520591 79206412 447708282 22577671 79336721 893502128 927225124 224796443 519456806 199101739 360165355 193083756 814371789 714946376 866978221 487331189 582498598 351524648 967329076 76446571 581882870 510006880 887490858 989364174 999726280 353605629 888650112 627279589 909476258 913886935 960779820 686157835 938830669 931478617 987948227 175673984 573486883 429060690 739351713 997766976 998897744 687922449 919470454 944696583 985387837 379965060 733529267 394561406 932506202 518136249 715672521 672066364 882992271 11110059 106920923 75126262 231979012 808955293 853784002 101734338 246668561 179287774 628355311 876147912 911110124 375700731 904407573 527034848 915396670 679470106 769749186 499600224 913227164 143132219 380912806 315678940 469222122 316615071 890986288 761154399 829691054 75429658 310758911 200647468 641116790 539991479 673090494 29852594 565439396 868955351 997069749 895040545 944928498 178027617 762415301 667458238 762433196 779884181 846766413 10646266 720314308 87991411 115329782 322414568 599337067 752418753 859694575 27223354 116324969 559915413 995974014 433737132 793329407 160178730 933938349 968969951 991627630 847872440 866866898 77419112 272926434 128140258 323671172 774754382 960754389 488389109 689363574 338257058 404298085 903225768 961441541 678795190 686812932 839384223 844320482 966550741 979332959 275704645 474932409 151304719 620040034 199577993 213784919 975848148 980014549 566969960 780219608 843552123 859558620 310324214 903281235 220542533 997116881 681422488 980712498 418418224 693303924 349689061 422176763 893153494 932392654 817126385 868917582 882776618 981210317 217140743 592874648 187609299 564458811 523358565 682808392 922741472 961526015 207866555 448919301 869401164 957552249 780797146 943565747 451078385 658231016 261889291 459398598 424781085 425690619 725814022 900826357 752072195 923407550 986909726 993107269 429124298 932397780 675253927 824743371 664262706 897616024 618095207 905460120 777524236 950469009 334044330 505614691 454949320 583257412 496009166 669857751 761791572 777059826 521563128 947728607 560034915 943217221 751202707 784554403 243384018 277281785 776379265 817351802 49444902 947786817 593621013 748610919 639345560 837557069 819226445 934355768 625339151 735108992 361510131 802315818 970665719 977836286 493963778 610557683 72060541 649932828 88900759 801723989 325728932 883719598 686792780 830384069 756063782 899983771 41133012 728484068 33796350 594435065 777433440 884605626 723819050 863723197 202303688 531608707 712106748 781745760 37243025 112740451 716908087 893318523 886653949 981946891 68489427 213884722 718345361 852360757 82793394 884479364 435871314 850247560 540590640 789638354 887185255 964368809 110444010 960502199 880897195 913571898 556651880 743222316 768569990 914640545 824773198 932616563 136640426 486933476 873279636 926316478 420471834 720478969 685489337 836774628 27896942 33738148 684811116 888186256 474167102 611449488 554337214 669851724 888397818 925280063 139639403 991364042 986433239 993854973 770835792 953290508 385309266 598246298 331434659 584857500 768047953 847423962 232703643 838664177 811706101 874287830 87975589 928937784 256153614 788717296 322365987 847789862 195719740 574441140 585119599 603721429 912230763 951140087 440493822 488537340 909634803 994408830 13936387 189975807 643430364 910219284 593048213 761517916 851992173 931403123 378656367 932755112 67267311 376656590 526200807 718467245 819526826 935039256 323749525 732421869 149857210 806321169 654938198 989889849 302009585 996607629 272740203 930512724 360630231 414024137 440076344 668365214 477524004 641876601 29568186 580900434 807947541 970186553 292939046 364640618 232799276 747966312 955444545 956686304 692005844 987301534 372517265 536424140 556164316 688516987 798002130 952451165 438849945 853304119 964433937 968239235 227986180 294212781 975313742 995920464 899077872 994305244 999553632 999706091 516001594 608413477 886973804 962354510 111936872 713875716 298217691 708376466 295984607 747840359 338145611 753388613 652124729 961319947 274588819 968855768 96745875 781742349 91671488 628149382 756566134 776536378 344590652 359139750 521346888 850069561 211560376 932809201 814732198 919165593 30188508 567373680 524398539 783182375 953939730 962254557 945851303 949732684 645058912 930164590 723387687 883471538 274477202 643203211 346700085 509195344 712349935 961031798 383129966 972843568 583258317 974317885 600048145 757057859 364070175 964368917 747069918 971713748 775598627 988407188 868706321 984514427 629242635 663570037 7621122 673022691 106966451 263089183 965732343 979407674 413975545 476240843 286855568 900791745 917166790 973092546 138317639 772451785 850366403 983652183 534755331 565456718 683673323 762727253 453552760 788958122 123546102 624762436 70451182 712466574 306742311 738517320 339012039 598110909 304508972 444246098 910894864 948861068 106700591 364447706 649308779 703574223 189790507 381598803 451362312 458588219 684815738 866074689 280566382 868469293 500357510 559061637 757283674 760180939 955637481 965835472 898510677 967140943 970617650 971923814 654831564 824663802 453103708 592496835 358223565 609313552 283916848 547082007 927735621 952646125 586715171 713695254 965230685 986328887 741758137 817154120 454919418 655037728 771022324 843692702 591019044 915631150 954688902 979283844 919263650 928599856 930108575 994516130 342915532 497612399 602447488 719276406 566376279 698928894 20384133 319915600 75575753 727562949 131926998 785862636 927711346 951835585 149772797 619106278 884404439 977782541 472943566 492089286 59313229 92320866 136378339 973757595 467900227 748111104 78188895 330764089 829800754 995134734 767165597 919320480 637990647 966408410 957264110 961497974 948317836 995827151 289697998 901836325 875835188 906691050 249984647 267418053 521700576 575725081 635143229 742228277 248793333 282505716 543180714 781840024 450971394 799094867 417942723 784878800 687358728 979546803 368626997 864157513 31720899 793432737 808834353 907425685 579945096 838183852 630677714 988265109 295733804 620651219 664244808 853881053 159443987 478207110 317739459 477327436 316115597 720072647 138579555 911140816 390228938 698496053 498927212 776504492 859290882 954716950 470915516 799598869 147182338 834636401 333520337 404648776 643106918 779153337 63040730 239429259 218565236 838030999 440284723 919086100 939686247 959642555 296381816 540956726 56109021 982346735 347382513 553157549 521039796 936115531 258084451 496510134 737548398 864331496 974304129 999330974 535273949 949799067 190588766 831158551 157550400 528132867 247343647 690237575 38130827 747924845 439330598 564926127 567518276 645503137 759189925 976571437 994055949 999216862 917346582 936875378 151227354 316171582 234199581 540392443 365055305 691340808 326562588 346100176 386679959 946068530 210922027 262646779 832182949 837416971 63562287 230250752 68181199 934424495 880093980 901550358 459216007 464966760 659727553 934350428 108629806 508638539 734849761 942220714 687007254 919298754 874084482 972015667 512778053 940298087 500430173 552913454 220738428 620121885 402636655 883077324 489706545 679823746 595487159 936891230 905275174 948354754 682403021 988630932 535188061 664635935 938280771 949530059 542256734 892286631 851026704 903620273 523756298 871963282 60317063 167395112 648475352 750250940 877058902 998395128 607506328 841669594 666396811 692962582 688690622 813524648 169846397 798278945 223893540 921601434 330883130 618964507 722811428 943412718 86009781 618299973 797676650 806990810 677978959 848425570 152090730 907489956 802320215 999312197 771515855 975894248 718198456 790747369 961667972 969687565 757891646 916370936 390486484 714040544 739318288 778905483 522447202 568603503 578220763 759803346 493375758 894697950 405065145 963415372 923421054 929087106 683568331 874251692 250574011 360182462 482353613 691538855 639780304 950730347 450157548 824775745 306789866 485939399 384680062 587143358 860330042 948665956 476941044 732144436 799566549 802174236 504376043 804486674 616719506 978175476 136909175 447177421 271136858 303297617 616165203 880432104 650861378 882548587 718079405 830312074 340258336 771038267 183632051 365547443 623271301 826890379 466219628 722729104 624881720 968586921 215582916 741262857 233376328 317796754 484646861 808136911 953506886 995023714 324833033 615820352 665895809 884519422 639789685 867886653 351851623 373863059 852326792 892417448 660790350 807212616 797107336 987526547 502109429 777571075 254451013 786571550 604497991 752901118 831616774 909872535 899731199 993597689 572075439 712595495 808738968 958422580 546899942 687495619 651917145 968462190 558441373 800573441 639327076 724895394 296664253 975836111 504689200 739655533 664354314 820100541 570695520 931942194 307947707 924913533 245893952 248120198 802196121 860267555 462582059 861518519 310609324 343285726 869356795 905335639 965091639 984263517 718902893 984085414 867668671 988615289 654453658 981176239 67822159 697443242 739794715 890817744 150945283 779209287 988705132 992938734 816630516 834416504 736102980 888152395 128375174 240411784 680134835 949727875 309902173 776651058 532427351 787992755 925308124 971355086 48864171 366371016 586790705 755964843 767512157 788299468 518883721 719813849 587089098 690516063 403672861 563214244 653170425 753200362 908384812 923254024 988605084 991913136 953813501 973100159 943595559 952944454 95362232 248528139 221800498 935575677 738741392 950142540 75011995 982401416 249541790 732587364 174388544 948332212 852263547 897820517 446484075 914381549 839401551 856651445 32572486 65745652 413417100 622874161 106459865 795091677 879971349 890399360 307137922 525072937 47422010 940561310 775193245 813277528 430229065 921946696 411044004 776401055 547787352 549786982 301403408 475544019 555952771 964307936 16757705 74110247 536332044 777330055 95203600 174070365 787542151 984181773 241807971 773270703 153710021 805308913 771240822 977467185 301236463 374448691 813694423 904779663 681979075 907278144 682529202 965846045 611390172 759215753 934487094 996334935 982448115 989101764 929910086 987468603 459549413 948647127 164896948 258823434 6673477 200298073 332216426 797958355 899336594 993797164 806023355 860473395 660760903 846575947 171344626 498248346 459682167 551959673 845796012 889248969 543750454 838737838 675179351 902943927 701795308 843938663 204294472 413732918 282970700 360746605 319361599 917412010 39994952 139982097 180533390 790843646 808292061 837233881 932896746 986342338 167586852 723802746 729976390 976267544 680220760 897232115 494948513 800343659 842789747 926536599 283697954 596072388 548264901 932929827 816835752 834931575 19332448 414535712 692620894 915620276 703504192 726886206 276141680 647885252 115508710 235547922 910525487 926746789 690282064 726188669 115737404 832881302 232289522 852173621 298328269 479557004 555602263 649981800 728578577 792432672 408614832 424296072 475148054 520671148 455984353 496304836 346309942 507622754 677813479 871812789 752589777 889019947 194832077 703261449 723882849 732472472 833470673 909580554 672518131 675306608 440936904 582592849 346469067 791985807 982805572 995658612 93565251 796067119 687755493 850437049 937037560 959171919 853891243 875313039 257405121 644757180 845222704 900989862 370575735 450620628 313103873 633702318 1384512 97073953 690671473 908444357 701133290 810483811 307976944 696637636 88135514 530772540 912750791 984286976 294106236 336870199 166468799 338569182 275311587 537156634 551318660 746662097 198075129 218496896 800238523 889442778 550983378 739259327 847803258 946520673 805651786 978015289 894342732 906855930 557536043 822199159 779172445 782027184 283582683 657736771 470201538 890154512 117104810 254853253 302572247 352171647 492957326 644221140 393544660 754149763 37833757 606515972 299406976 798793088 997198385 998869556 401717828 453418486 170888755 269647984 266143849 431468313 626913762 690574341 425408174 810920935 410436610 685022407 827493821 892180320 277696582 546406912 206772226 222689452 865876528 992177048 664374388 708308891 570507357 714842125 928952465 943541987 249038798 845628238 799613489 858823510 568433143 613089362 607750959 717275698 31231959 860713592 773603310 933814888 380966947 694121413 43231352 972172751 184340220 664403970 152136131 681720076 242502003 929158841 838956900 984372935 917342566 972435142 298880861 939662038 652953188 928802916 752530946 899098329 586157066 730099769 754169213 850320407 612487401 932313634 362070692 943516281 361891865 956830628 126740525 789944392 470946795 573302580 646593973 744926198 109918611 451557506 748520370 749096005 934562207 943387415 282518729 694286023 378446778 439016438 429144355 874300068 388898169 680137400 544447538 875079363 333726099 545549751 932273052 952105425 125323825 827437134 846255198 861984705 241358800 687701085 402001395 808115105 216371852 334252401 917281176 973229213 457595631 538430520 133829013 739885484 935519688 944686356 978555799 991858474 550222353 651959434 597629527 968341230 783799891 828215782 339106457 793738186 77021297 424227377 879344074 880529839 921479884 959487908 796200950 931438572 437901932 633084047 237563329 903913182 6560624 755413889 172490160 982821032 579062286 908592282 383839468 803953957 62237813 659317928 31544021 381377155 556060209 937503069 823906888 844481085 993843858 994367765 646821446 689948354 210445024 597354182 406246807 766981533 933728058 999006637 16387570 622629574 480342584 589245064 888502422 905152061 522491567 964055681 886229140 968964177 327195505 657548088 861858948 985914608 901313500 915336974 112054264 411810252 657749359 706995451 214731155 255153879 910586487 961347190 499585825 545251532 94648871 790784700 278368537 434904209 124873931 932040775 502158933 784174085 700144163 934461697 143509270 683167542 342812208 826236869 433693739 579050814 888516791 948717625 622353449 864801019 754432048 844356828 529591617 937859635 568622926 626305463 112653604 448077234 566917777 806946529 681687895 988817390 890841918 931187563 762952182 856671232 629982784 684283298 962472158 992965075 185662140 243416022 26168343 52539974 831538811 839208433 858842083 936611288 388136841 726704637 430121670 894208264 234830337 781555542 231986679 246248517 404208133 742998148 653805125 833892660 996986538 999294096 903815102 978532710 265763214 875930416 951555775 951712593 858387504 927572991 962346285 989479262 722380563 769877247 753709891 885551087 510599392 580404530 196987437 443820339 550658723 706630208 415856132 666734340 670349393 916281381 261834198 296187126 733235655 761103156 579498138 779196341 73236937 946954293 62122139 738951236 198496284 834684727 188067038 989180509 887607855 888038149 645944281 841756967 163582779 637091311 277837348 439667241 222579660 485032952 156093289 994455237 502343641 531426530 737053858 738960986 177737248 722897952 353879073 546004187 287179292 536117606 400384192 448213131 611111515 634432704 346920257 911547940 318294370 878951098 118285087 931456446 88831089 208505147 817243723 941157428 415250063 416854136 930299370 963667914 986765268 998075444 701469678 998218929 798683996 864086186 865009990 910368224 456938228 996060078 919542243 999122547 746363476 960436420 207313077 706505848 941874244 991478209 306213816 528982962 8601670 911613733 243143715 515117513 422996335 971441216 830983420 839336671 501172065 759058617 517585645 806110819 795897013 893979423 816253919 875991253 346021847 593739229 159684466 701974034 313761825 543054830 327341923 809971004 404525471 747090663 862327686 952480833 565900250 772545107 753059533 810385332 373631598 443424649 57846893 144508349 28531496 387286525 208229266 529064449 604576036 697154273 300824462 865380454 188251291 825622591 460117647 935757583 21799153 681474646 125209028 875885201 561703 758854138 947433040 964084890 246235174 569378143 481613624 762462106 168767019 714646881 955332545 986908552 611200169 941037704 826346152 962975755 809973306 914026842 121234602 204285207 969254795 999262226 281725311 615205202 672445664 949487234 39817118 830077253 416650204 812738462 776371279 856267865 313304329 952563532 923056260 967622992 28897681 640151551 124602605 864264333 321742302 498517671 604651364 901643406 541521650 652591557 347130945 856099941 550747773 575408978 629819766 763771348 897300412 937393984 136049545 620836244 58830435 534037049 777645747 831632804 683955070 835619382 259094532 293622025 630734748 943959129 781990749 908771916 244751756 541389461 35291787 546242256 613446098 704693371 67289354 327218151 545305267 877649734 544750839 994343877 131053286 486457692 41332844 209571152 757716057 962273055 162335298 240130533 770698846 794103589 700441065 773169293 352762116 641321457 958755498 993877391 622463772 824056073 332714178 811271147 178342406 712858495 718935852 721881977 71990887 677316603 998418136 999770772 187426772 906110415 39040909 594040369 8516186 696694004 481484728 600401739 364118827 838750828 825970427 920618500 581536460 999400489 744928524 832688494 13156032 58519234 414165588 993575493 631185410 788532044 181524812 720152257 60524285 302167872 351942894 440834106 17812472 28579610 497513544 691272429 184970459 492539316 867865837 946895443 895267852 915416015 52922510 939064017 111576302 794211288 168217614 974285582 329625588 397665810 569122333 798496335 9023049 477247749 237097703 518938198 824539569 985516882 399664760 959626804 386058837 425919468 318846819 386806893 599422935 689092561 455263153 506483442 928967935 973072946 180458869 224920375 31690 849696902 137216906 435803650 355948921 459323602 584683549 815679852 22514673 346076335 782427915 889761567 146463061 512655115 383660367 996708728 32512560 422261180 238385069 390948522 470012932 834826954 413216993 799730550 127584445 530743188 750603453 874103866 112863187 506865983 916822492 997437735 941512345 980385904 449855112 555273119 661389389 791669367 218130400 557674929 163007503 397659550 310600489 359893815 498754138 896311603 118985087 775511866 888007583 946489564 487968305 830325685 174120875 204594489 43807236 800260777 759095119 887733300 901117158 972847455 830642923 845829775 151531591 920333053 99948944 254668169 949701120 992059402 651537064 925810579 827048608 875701747 340105436 838787478 952801873 961839651 465264260 507067078 705791858 913827842 675427761 882812941 64821117 674538817 421901394 848005692 235348629 728084266 169235454 419942601 141841184 456079012 804131962 994093790 98030934 361003388 988056127 998973475 192847290 723579611 213467501 426218371 988611954 989990726 393857301 414240728 434870505 618968925 466104150 608487956 635824739 933743726 195413533 846721167 78259166 954401367 219826756 499960105 423508747 740654639 981101166 986681558 419606912 590938505 985512597 988299830 595064297 961235953 165370531 234466904 567205947 929659620 223442754 745053072 878652022 983258030 408621781 881574752 319435108 320258143 892331087 919862103 430323826 882693591 606633413 647812616 767754762 919318143 633898418 777960359 685653670 736088217 919069108 941356973 63401765 994645793 503923136 592120344 265059377 274576372 277595351 805247666 480441147 566041136 171555424 204554293 482949407 930603106 442267213 952670049 175873690 964427099 665744980 897124522 204455227 769767229 942454258 952280554 3240813 737420212 723518069 964559133 94689941 791614837 926718008 931477364 678877199 908621051 945749929 979928520 84746252 622963842 714102941 834404609 434979946 439806077 378890894 571649330 873520712 966993415 908577358 995341201 189816871 597272342 337480090 850566621 104774523 719970372 846762056 962012255 818434567 980722299 51090636 590030438 39410540 923148449 380076125 711940662 714523518 902964550 54682181 677911229 130604333 632169476 641654392 905762362 794857682 907530098 505900488 891592225 495412170 855538099 751249577 993234107 759295616 850604482 723721649 864305339 691743420 848308434 400219598 543587288 20082636 452289731 479479166 726295800 767222811 812878147 225463478 482956009 819670154 865645520 939623853 985928896 931198909 973254717 230773447 673259521 453708100 688020510 23647998 51227400 207916140 871411446 674460786 684994341 828489640 923927377 104350938 501417456 748830993 820613939 84792745 564234398 270932078 963624478 663205432 771683762 988254824 990169829 909899759 974958923 304337996 407359136 830964373 935178569 40367604 66604678 79800290 549197804 655974226 668633898 664881963 911584041 827057345 856912862 505882806 908933728 330871966 884282430 241924318 324050986 826988898 840814864 446188566 945489961 12563289 442272168 716571547 834129742 338887317 519722111 489024496 779124932 41130749 663620953 622176837 730436812 61946504 106613196 174156789 295810189 294458522 615808297 250687231 986527891 330386942 844437904 966249696 989617979 542141637 593895944 958269708 993197190 97862967 685889358 549910615 644512670 525189045 921329747 177309639 247036922 652617098 789947880 260262781 663773419 836121991 877231100 812888920 837254436 744085106 758946536 463831052 612343584 942536940 987854617 501439677 544276184 471182442 867845258 236746047 265066631 934444870 978109017 888641327 901853289 527162478 758445622 863484775 952650629 702564516 743549994 817387113 861742337 858585083 974723470 249354731 484080865 312520616 935649379 124655605 826526569 607048369 902131106 334850648 876747905 732053785 966917795 542950892 882170482 276245651 943729059 694548990 742069694 119162110 277378034 673849256 969185948 426344778 487491956 271783253 562323797 190833101 429109936 957989368 982311417 869739104 940446068 80578904 633343446 437512677 563392406 858414879 859587345 747576350 984871901 32321672 763320644 136501114 475317260 288002528 615405679 198848913 199376432 82407671 304956294 40170673 874352910 953054014 969210864 376685682 684092467 874346295 903052778 235846130 872626944 94032567 779355056 422359377 832241130 617318241 652070710 477194555 697010458 534922276 712248728 495114003 676837076 392926587 732574607 69983533 900279344 584602905 723206484 427552389 454547453 637549351 715993454 193185744 374729595 742147665 991808392 570046631 816109563 282351640 913963671 626948155 851716625 756761669 787263447 766221313 908991259 142453623 932623242 295132383 840751436 244959607 414951552 100363332 242786788 151459656 912096229 869380326 985216044 707861401 915671175 949213344 993278596 287562665 835004747 438331550 591661485 829694353 865223531 706935955 966282533 777854149 966838109 908591843 990035306 466366765 931983437 69713533 390006827 759938452 931798302 908060117 953164061 659850349 776275254 98491335 600882607 183345267 638763290 408675150 705437965 255535505 808402626 80405606 771637671 78851829 941431034 170495872 848126755 985386615 995126151 569623979 584316331 996460786 999088456 851908668 907628855 622483327 893597421 615559174 866832745 86477410 869873968 265252484 382973964 126753526 237217547 285162349 597015931 2967206 562794336 479855679 795712080 822450508 892313213 734153643 795458112 765108730 767381225 989292835 994066371 703919611 726831938 239472290 883595816 861742849 960761852 998839515 999589188 549361799 751659550 38556150 713291150 274707954 719602021 732104001 734577344 344390151 942501853 840388410 924613488 564116169 763995248 120100633 717981087 912679347 941925251 541456919 562922246 320416738 437147580 544853831 718243700 731042018 923478911 364474188 884355386 943548020 963125888 274744522 470449477 405413800 973788313 379278027 509324291 427817455 880844515 216466761 715316683 165333343 615599051 874787568 887612530 454478686 863236425 676618351 972118044 191712949 360489152 906210034 943350120 802626395 805851146 942734142 991185505 494913262 581446006 651583078 865819244 860393688 998979124 905136811 969983003 236208405 878592224 973510638 985746981 836157084 991232890 251675973 800937710 404029695 826683411 937892163 974072988 660192515 765599535 84351303 355838018 213348442 901407834 421357277 669747998 780658526 834419230 573124801 578557105 722552482 746427754 216336448 403485360 857314206 859726707 180441037 352850606 349994626 847000938 535638588 737632368 691282491 718260629 13398779 771734638 874279272 971829177 817788449 891718428 449494479 899813807 497233698 706241896 523947574 563548487 39182244 449177157 664698774 711022035 116727210 765221594 824885849 986948861 531069032 966442993 690855613 854876699 601726212 880584972 805033890 884535859 383200669 588608330 835219346 898132616 640618067 879474506 184850821 583718054 234802102 880848714 850105063 965175356 755016698 765333039 106569120 897707859 849769775 905586737 614643616 654708553 270789424 298929641 125683431 886568019 904992297 932498798 96732083 602642907 495714438 554457645 179573791 767797010 581739871 652415498 883160652 948990702 817833001 820317920 920780325 969651482 774226284 826246308 678265088 880263076 537687235 796718622 640905267 809587826 502896618 827246185 335811397 587423445 332060447 794747225 911414850 917039144 776137649 995610357 398373523 459011901 192880942 446013520 403438221 677424754 533968903 717787921 170984756 386527831 716655313 722549343 793143159 867172806 534402338 961009944 333877729 969914420 780993282 795220297 210378134 733317666 924044311 944297826 852888652 896605343 807811151 982811382 417314615 773896611 302079036 920096869 446979631 459596096 756819359 953930819 502283339 941956729 378865817 420346144 265530483 877096216 851645430 974295929 187460226 714162264 691866824 901832220 345503831 757459043 569004192 862806617 430353666 842992388 970358513 977832628 528738895 968843424 313750143 788187532 480509604 706380132 784543543 836652334 729409061 995157441 539716662 882386554 259082536 940159421 239707729 630554792 686321380 826999617 596864476 739146784 145161824 786521859 684641388 779212486 952262849 989867633 191051615 861064757 144047478 664323050 751462702 845312980 598915854 757308439 977349341 986701883 405226483 846746308 208971248 997658439 420932773 663999719 885953391 900659636 650122338 658130980 65655646 779648076 932574195 998785071 528715174 822618659 853061971 857126786 379896005 679900853 484679023 635013257 417892583 891941208 963442558 974032985 962282598 982093570 708730241 968079996 273898654 749320852 530944794 786601362 749665332 859694123 438349978 913611771 733890007 805939837 163898474 933833877 934005846 981661802 570446001 806128939 993361043 998740749 942493321 958988624 441902085 596964942 259858269 463885217 361823068 406297143 392248537 434653274 913631403 958354068 514213864 604567363 856176231 874520517 905142872 985098716 285425894 852214367 830780592 838039743 292049426 669880865 441853142 860398877 252445094 683956051 68398780 447147355 989760635 994414145 6719592 776055838 88716039 993639978 662054414 725270281 409901641 964385999 696029489 744862836 201346760 682401822 949271796 963731591 16543226 723517751 428048923 830941682 258772020 511525673 232570114 952470625 41645271 847172177 39614910 280980754 378049771 460689589 891739777 892642818 32880818 749070807 425257113 580510091 346420024 746509952 165563622 397924358 120978281 599193539 563667613 623202367 411439300 954326929 750817913 997312751 397559507 690717725 958120533 973910838 619739870 693758113 205520507 826790077 704989174 740905331 366670547 872452320 379883752 978336845 396543355 467026676 765826298 805098613 899927759 955070786 905858526 922911439 984778827 993631850 280514042 673954756 831287089 856102969 486828225 524752782 471262106 730481639 122877373 949030037 265368981 315770361 823891988 839817440 537534077 845600449 196938548 809918387 941568707 990830827 660678804 790039890 56027602 71543925 284194134 721468873 219786832 260060735 286081149 599176298 807642896 891540976 398682399 914644463 25588889 324049916 259429374 805921660 202647606 684576176 839633437 895359968 67181241 240421535 858325717 915291925 526892818 925608034 133500797 945693443 584779454 965198844 816463186 936674081 436238299 506743257 492156380 981867989 846199937 852926472 634108911 833269992 687784575 957584989 939495195 983345809 31678889 162277534 47285247 271864195 615862975 617809118 218569693 506213794 852996753 981134753 623959971 793129594 201387493 955955681 545086634 769462410 162311996 288589408 64558557 122419617 29827282 767345441 295841161 756580826 858372819 986248296 824273768 986768962 196461644 903378549 28584101 45619940 510656060 511123857 664537896 880509148 193714088 197889621 80096390 596450653 116058449 496946618 722311664 774017386 386267200 415511316 315546681 581088575 983307467 995963099 478365368 625693533 299764906 529511106 874967014 998650850 364718620 912173049 376249138 541570409 87695672 593709579 379326427 493069100 789810630 888344343 643941157 912059437 776742504 903138784 232665579 636540129 631602124 771405977 898627676 950833137 188917915 270027642 31386732 606207350 166670501 691960497 869686785 995894690 355663491 662487327 700437186 975944951 507579399 800772560 565492112 744294450 151216089 371315005 9491034 462024725 656468807 879202656 472825208 983072113 380293199 722080636 99245665 767592391 811435561 902300877 14789792 546673277 626920468 750699575 919926356 931385707 586364899 889681843 760046271 997863037 319055372 737645511 150235514 156327645 523595147 542728060 410726857 922744726 675077114 840417704 873944983 982863364 904117255 949808729 526228215 657884579 910423134 970089193 851663860 995363722 362187111 431330417 855363935 916861196 474822473 503753380 188633836 608203155 822205517 831234535 151206933 696614006 354037252 867666406 307818709 940726564 458038787 772371707 855941366 864413328 25820959 527413965 378876909 907043275 30435907 602869745 675523917 832599342 594209838 723636059 156781097 270977909 397080236 744540239 96955034 274019398 799170902 800715021 600172527 859780533 26916069 785536490 277037016 663228636 407219494 617466443 105410894 356191857 184839272 455880442 856581262 882338121 623513292 639853217 678051113 780423945 34780899 222553976 737242153 935890498 892708661 947258351 702226761 803510527 545677345 697117907 717068571 758364793 699950616 970310859 155781706 554259409 46438788 785008272 549027428 913421069 275259244 490166884 592593358 606572737 898916279 934349842 82376146 987626050 395144133 947178296 414145429 460528656 420689560 830032845 596796771 641151646 566926407 762799253 443225895 712011170 100799079 633262453 883208257 984105693 35683125 397049487 549732846 933192106 443173322 528566673 445575700 709662766 878814583 918431355 348915709 918130757 819214112 885103116 392736080 969179981 530480272 825703133 444471652 554494708 902961730 913032157 785457425 807470728 295015850 395891141 751786389 900647856 598995113 740478783 964817698 981264493 777225909 887585317 351643242 566042977 237152124 733497519 627502891 955146671 617135019 620798845 299304536 825473797 811368819 827213455 278208452 566384289 83653074 259854044 320745006 972793872 667592280 685870794 848164653 873765223 579764007 609425144 54703322 119602321 43425230 163117654 259540988 838738366 593986682 641454910 482878344 605782565 776722294 823488531 591190471 965966926 345555642 866824586 918442701 979379599 239557073 786116875 279230028 452992829 564315022 874259011 873902866 958565345 603300460 919592570 449170253 458301401 268439819 789049258 854239703 989268385 575552478 767498814 779410942 842527248 127843167 951170088 31249169 694255313 737274835 788326600 582554738 596144593 684291221 711721053 372777884 893142340 740201594 952717924 478284138 636576936 519764231 992354597 411208526 449844812 312309112 712284498 341929309 871582646 464601394 752317044 712170771 805157872 886480796 961030659 689189819 940431944 653443077 887664423 884678648 924822033 510703047 569791929 58545318 996562433 304495659 865175964 649724778 681700737 492132272 748596531 360572201 537066672 326648131 672055101 36248309 993228343 510443504 766391795 201016139 831206504 492430098 966964627 955788205 980729215 900218458 960460540 309137544 367432716 600466800 913487308 469110686 832812925 286408974 401457341 459934487 494414956 262558172 370516062 95672238 681404613 499434535 773694037 152172927 698369036 950605548 997273735 502303690 657014494 25267507 183864082 954949302 959537098 344909991 776666819 596273265 898558393 878696975 904036467 403706750 671225447 540265535 815331880 727361421 761639528 507026286 995502168 167048754 616077922 442445638 816504209 286892684 346971238 635078634 696885267 322275208 333889941 804272823 960422096 908288661 979100615 474896121 811647414 373866892 456252677 801196134 917678121 206279295 850927030 333433224 986871450 245169375 829519652 226205255 972774030 114896646 963548222 908268066 929414984 233153536 810768288 966160600 982085578 118370884 806143242 492950394 560662376 823364040 966393180 494867032 820493676 201045996 367161770 323810527 737615955 893635795 983952196 582365149 600312062 644046435 861016163 529362932 954238287 537363094 570169962 692096462 888537158 23293486 632234619 85846454 963371983 816770341 944211381 845109583 983448707 289004365 847384112 99972566 100207153 55775498 566897040 145201814 787515282 130069088 800747912 356145800 877109463 79280641 85107736 129366659 531029994 874747808 898944802 851121866 879099825 906314584 961190811 845838400 966819439 303036528 498858795 194665477 195547640 42149867 282581145 586247641 916751579 531431421 788349487 161498319 645524715 446005465 476356301 789624776 978130719 656337169 887601439 410165818 588916766 667933491 703069048 213687064 770446334 568863132 670595565 50809059 971451491 594410468 720992644 290983295 360250811 63716797 495978596 65174138 114306823 199331544 790329254 57647463 177091561 893337842 899932127 531184888 967169589 763891722 879959496 944976693 946078576 568552495 670074628 217597525 434412858 548542008 554220303 695547143 859538460 407114616 811260799 449243341 463359726 17121485 321153609 674692498 722752580 619210712 656589893 162441844 712778336 869859887 965423005 393034457 688004057 717252068 852424889 367032368 709703549 708858301 750750367 641771803 741092832 513801370 982697961 116837738 687172482 272396778 459616837 256796641 722135520 309100392 323317785 800176736 976041249 607805166 881774461 767781960 821059109 447993684 945657280 46031195 587762249 62616824 719288466 48763608 409748979 398624424 725894174 265392323 463128869 79017085 581888132 127180543 709884342 258343728 563306170 344670829 753822026 12464833 953668815 59746855 836969326 51653724 957168963 961555297 985982105 137870390 238974025 848339382 940991329 130583072 639262428 31085213 105296894 488504230 571989142 837544213 900859794 816474068 943448674 986888742 996060523 230367747 728467173 842648703 856666948 376012177 839864102 687580016 857435697 706621834 809802531 379971423 461540466 757522341 998463870 256434370 710494884 372511325 970050654 442057427 889504004 46720045 121035412 418981452 846824351 997751750 997976592 655161519 676699727 742070197 895718828 353257992 554029904 578356718 765066083 636002936 735446025 212228007 420100105 87627616 924534210 413849574 915812595 282752954 928106215 415769726 661205401 698408178 711280513 124411709 292248262 515014202 714163032 950925090 998081199 461794704 700865299 669098231 975550371 751232052 796819176 527108107 635391714 915986047 927259401 833615257 854980542 462876295 489111629 573782985 686744497 989721009 991274058 154496989 897544113 277485266 917187635 604775350 974324961 252478423 806681683 889227752 983210836 702835333 800487551 267728080 996942152 518334639 698019553 612515159 798702378 250953362 427552710 866903415 969659446 270306015 844133026 667443583 774944885 931527542 935598845 351677837 650689202 697080803 945045156 190404906 948039176 263216878 842724222 676868861 893821590 364354180 719784641 955147619 963932041 28677945 501123596 287391806 412805539 766591455 820289416 218419075 930913556 15785060 211756574 505135626 875350387 615173339 973269110 150943409 503644555 817872726 991186423 919165115 953351988 764483368 901480768 127148745 330035072 80648389 679491171 70227341 230134520 563370641 973503776 132309363 363128684 733249627 777512003 552672005 561452174 846760216 983197987 462419773 757409433 996747407 999833558 852414390 988737749 477075557 929449479 878236083 952233216 689730721 927576409 164686598 549735369 236265250 557048657 775234424 970432047 11624762 972915165 509215396 892937586 488050431 605247401 315801328 846084491 623047979 681858109 448087952 844736153 108635997 381856780 95247621 614954080 779964768 870689069 92311491 631717747 908833006 991531550 640716002 841968944 684668984 907096282 729942527 761786201 409876286 617086768 426748931 886599161 282367013 972531262 34877992 223600129 710229360 740279254 526012577 846532181 492422023 561123250 59671320 222066707 737554160 892065496 783217684 934597735 644505260 871545441 781072222 932813415 658532296 970161173 754469255 792133379 297224486 656781122 768341371 933912645 697900691 904950406 197622975 304736071 478749565 759657435 221849971 964342667 484541420 818546534 554476886 802316733 179420220 351989660 867632451 960740539 862455872 947579285 560513450 927242538 711422939 916149875 980900872 981485665 757619968 951697554 671256122 857766061 713824854 811890410 294544899 407966840 488041142 524040466 442650922 753289281 498686786 525747014 158735591 800302550 202194359 317171928 859627858 952168959 244229723 755475125 217267644 402935192 629576370 928759311 257241685 931928653 273039411 985443329 130798328 814654589 475630760 751858125 356838437 457474675 109286299 400947611 490384013 902595671 679049846 841636829 92998669 981462755 47322382 460715268 50147404 991734903 540966955 631135579 61015887 410445785 853087655 931740248 900810030 989644038 962460044 994813366 228534013 402268129 346161676 932071503 63980647 184180491 943914710 985471447 234005949 493549748 939776020 949112740 820242561 857352321 670009461 944562649 710920384 835584071 625965351 767900167 111181049 547915542 884919456 950484918 193070110 520397067 996847996 998221472 407952431 473505017 346644719 576180066 137157775 852636732 895061631 905637029 855703267 995098510 364899920 647483146 553152103 621614673 374494215 390145932 160899390 582623945 854332583 872186374 312408687 483116648 687100709 761530711 905969128 927801781 504932185 609713877 183762833 279679772 300388622 894091895 707397481 753907486 709160765 781680617 841246900 873124698 558305694 853577408 910001796 990085280 865630868 989783673 989251996 993418599 174273105 584107096 855017077 865455508 857701584 916018588 829062557 837816843 678124461 940740076 893022120 906950051 445943006 989910433 140713661 977983782 677006480 740618529 743887408 869592540 894887412 978273440 971966205 984114845 407303389 659237333 786388984 803197111 876783924 968791903 307411194 447835856 50168837 657017145 440072640 713928311 246957279 704832468 855226909 986229834 214882538 932907117 196118573 513332803 156338548 861040277 467090673 808884773 525592133 910672918 867332653 917574601 317037734 512500380 874594928 919326898 860528779 960926831 317794526 447965144 740300276 846813297 639636790 683809889 515593972 759040119 950355774 953678155 686626358 981859317 999779974 999834573 611624931 697109992 889902081 959429644 430915112 552321386 21780689 149194693 631470742 687596307 581601598 743429385 399169661 861123252 481581298 639833118 221061046 900343975 617460929 847458740 430791898 963287097 229371621 918883644 509876309 542423877 857073318 950900508 673037553 966184742 824483998 932513078 507837096 581597586 328006573 371184702 828344831 999695847 113658875 434086535 870502083 993611020 753534706 775632969 938380909 945721939 437262807 825796304 930526229 934080856 777436982 865774147 376607975 995215383 613200582 672639364 374027933 789372329 251006585 369336884 360008114 702655430 689193915 769957465 568412590 827541534 146701907 965877904 152899404 352058830 537460446 898275837 85786719 448427638 929246598 962427097 619162363 828410564 289470860 988132624 29414977 361460776 454277942 575039900 579490122 688757283 186052035 647422547 694548875 825890831 333914619 674920223 195464999 449546464 334932885 792150030 385514372 489742887 534260321 570330736 483114086 886561083 562532011 697294070 240134512 306579112 529544082 698800733 762263638 855579165 396222892 940001969 814368777 912807724 477734901 618738597 31019633 46240490 226719856 325917586 335599636 894625101 381885227 755569704 92999775 539155538 273580310 997561632 291969161 605845477 632238719 998701732 849887955 870421718 96384561 392387974 254284709 739370507 881428565 902550252 475249741 812080467 73929128 127611736 626177579 719746227 414606941 881704661 731734609 783955212 312333523 615993503 941022076 995694892 575512980 889730097 689525778 867745531 624849108 995143963 120714772 987050198 162378600 840751797 643607824 961859858 151960012 247537277 771377415 848219882 593087487 640493352 492451208 890646695 170050595 365789499 495811442 683130516 97733254 802962912 334106495 796182072 792748364 819123776 522764022 780856318 475810551 892607681 550363523 843850284 919549144 985578058 535777232 964223596 134323441 894818632 305882963 722751317 784449655 884619463 382769628 830238946 1083669 547195492 853842166 967995098 855051260 898109119 63219344 637811440 615567273 822142658 575651899 736779762 181510276 662571267 341262947 739831146 725689699 755402412 877252993 909062950 963303915 976875841 495317606 870313180 11860747 877874658 143347504 171618893 847934347 860072658 261725034 934927305 573036206 690329192 52728370 409842011 793563077 848068680 647727663 721170731 821568913 908257998 31291191 639553794 886731895 891158414 165944751 831121342 278000624 410343732 813228853 949233394 387387542 922222177 482958497 823409236 417782802 877126020 1736588 573671993 163861678 524620274 766632747 767409977 714984087 771925229 856984933 862684055 424961115 730400266 446602196 733995845 927922910 960367439 293015784 506353973 943085649 979526390 738577471 739560825 35320419 888143003 763583119 932939831 649583288 885068962 900462876 946825849 608552778 691018904 774977526 844512768 518220576 774029240 986708315 998377324 915998828 937092224 353287448 661495038 70960192 401223651 876323500 903728619 715330694 954515099 932349502 986512798 479764677 711948429 561215627 778537878 869590131 902987038 52038168 716070690 388251290 474191504 570509355 585013016 210313498 716152661 40393439 81943449 383908628 987778179 997168791 999696706 188616643 548728506 673105938 798879608 808566275 902863257 618655187 771936398 588681600 958933931 954013925 966472238 107447171 946462030 452839393 525617434 9884522 943810987 675725346 732259917 792467428 975171029 653699052 860858512 624804371 849682388 935157833 965585925 119737441 233471451 310960011 336371759 507743333 693695583 185043951 267064941 688010202 781217350 847864851 949154110 153867939 355394020 884858670 895239745 272399162 904629081 995723505 999850467 450603956 969836357 145534156 801244004 758450922 854109975 289723454 618965971 782698445 998348724 825421835 975028034 528508227 707178927 948126241 983341088 290763764 572280585 692363257 779546123 365140191 975627782 206029274 424506085 346261867 548619221 404430287 854747031 99691021 895604559 688553455 982005738 136314672 377845940 696901955 702352713 278504134 484174433 567499330 809711892 67984014 967774863 158643334 160420164 610177092 990274046 128135196 408930911 78084792 434645764 956803950 978995306 276078574 857595283 670781291 930340293 742300333 970364062 46419689 615923748 842166826 941365878 470385310 850072497 95859617 445721789 425088125 449279806 465756358 504574002 381564399 489487029 255652238 305376279 368623764 860709650 857915766 958637490 804798740 929462461 606480392 751139642 645966842 698837689 577395184 594984027 259855820 684942694 851432801 967816759 185853113 224900218 148001753 994368443 805725145 903231862 21474307 321973527 789955864 969497802 550319880 607238479 251193014 258415220 502493335 684804454 385378080 869961686 459392549 731137134 857760197 971751260 147633875 608055011 702755514 737838578 954650611 967614089 21286031 507991516 204252635 590013972 846657165 955618829 597553635 733176073 344633164 495875343 953304903 962288101 452429270 470110479 44218512 355766345 325974821 799624693 745017897 958529987 276389897 494657323 381906317 999954390 999588054 999632928 701306009 986024765 556355918 811231984 544063046 705058642 383246052 421490824 371896500 934887699 86184339 987672909 779100713 793344548 508904954 607836914 252860667 906878330 748393869 900529078 516604566 580703687 365805763 817217264 855498117 947162955 97060653 239167452 571099381 793039624 189558571 508173148 93615361 773589833 322646922 363252734 485987511 532050913 965309670 974545948 947075450 986526900 23525344 431912338 733121499 791408790 164316391 610856641 992597483 998432230 834461162 924897366 424294395 722067137 722684816 782798335 987705114 999668588 660682088 996408293 134085701 175002074 748582286 816798362 944690630 950637008 111629592 912314207 539984982 927880665 464920845 698165514 187463698 825245058 69867934 794771499 64340966 355177845 335201781 802406575 587535086 888257814 409345346 767120931 631353784 851049721 315559071 525299086 611125819 842754928 326849253 401922039 680604350 799663822 700862330 956617552 859254137 861250096 404379582 490683285 478083923 817210669 277628171 869159888 107706334 210010602 863830253 980607534 791363471 840557820 796645256 885823273 3431071 958795699 716028196 906712973 301072220 734968209 553260121 596166847 554407582 748406456 176074102 499418141 60759820 292910531 558574759 991529764 227835552 977339948 863612333 897824757 127203850 938590883 433489825 806058503 312806932 642401470 876485903 886066406 882479749 906197885 370209392 699998056 202392053 324652684 138958547 646793541 203651795 894194434 952420085 997924480 712288108 809411699 214817328 452616465 47920474 539458660 710083970 954790284 882225369 998037133 940769056 954398590 470651095 861341523 848005570 936814505 507825085 903724061 658416005 711000865 465861442 493889784 873128030 983005721 876977042 895650138 28435721 669553234 241220218 797019206 224321773 389935949 172970046 295207866 59505735 755993913 159958269 564993415 224860481 564145904 187541085 373247942 889677771 893454351 828910081 897753765 210394003 319800490 936192504 945390813 470477062 525997994 749505523 988833815 371283045 730255328 686102130 742788556 874459934 978023211 485836776 740108632 772379275 947952784 431652482 594858787 865715342 972570016 747407256 770646472 966511464 993881058 738732686 938310708 991619808 999448581 938705075 948100400 349140377 652973926 515187573 920407651 845528941 971607151 252568520 883618167 182249269 346473298 711901789 768761108 39478864 469329227 620607869 977913355 706643641 719427929 108112543 222706822 775634468 835851170 972900431 978911014 349592313 544654845 207233022 339105043 330039433 981954679 969378000 989653758 44359349 998941311 39634491 990428982 408753719 922360010 279166413 569704117 356397672 440388753 24965698 786832340 435427002 913142933 892548214 903955309 970144335 998571487 523157007 731633966 316526428 725968977 55442982 148835383 411039697 728261403 357897306 807834887 229745874 340893214 870293509 917511553 253476016 417657677 894556511 936513299 996081126 996371658 498527688 583875797 671587845 877069362 883876714 912895747 505609035 711935178 134217661 333317056 839081041 942029550 398404487 614737697 858823018 975171058 448602399 485651903 578087280 932660226 862020491 947173550 976264343 983346803 541728984 787088899 807845638 857408113 304550487 548997262 31641930 317287303 678973657 857086401 808685071 952496608 488522945 598941078 90333118 694264909 52668151 896527416 480760668 923374786 67002486 597401678 652158608 788069766 48391125 709802976 601412271 741550562 273162341 693478823 509020406 702191146 191473398 272316579 68249356 639633009 699479247 942476590 99215740 863229234 225323469 401574764 500354560 709016981 494953906 972533938 74794224 489315122 345411660 810936768 974070288 994404364 812398359 854288286 801513472 888316102 462088800 817639313 781835634 997320176 447000337 824287626 645072131 890013835 258612719 340036208 316777359 345210525 32862051 484956685 935927413 963170602 547161617 705523692 138475649 800747673 940980680 983220582 720851018 986518131 333342805 606643597 352176505 706805862 899422984 909200401 104865341 920400168 781330243 853850742 205088534 363746069 854365979 947235504 144094204 206816311 564289273 765650842 699233832 813829248 398312027 534037983 642422612 906106083 931077612 962472688 207868359 377872052 608576379 776077682 687582964 796177265 458111277 507310196 67051755 987260383 24933686 206168185 677529053 761268200 607134077 723990724 738295590 828447989 466352556 620589943 754932719 979252736 468532911 965384497 240517482 386669303 980900409 985871213 511257900 539458623 301615033 922789416 811121668 831795637 632871356 682347412 406536735 964095110 873909278 997763755 681795552 702382283 459229758 835496011 920242491 930954580 379904024 710759318 696239458 774213250 502735698 777614699 296627494 762321097 601299579 609665601 748105392 965594771 855236848 856432242 219418715 868945623 189251294 687081390 363031759 619799735 65283290 823388257 957620935 978547265 157839443 774771690 616931208 621843951 574285508 895562529 674579076 907912991 889673959 898624380 740100454 915491419 736478124 962685253 982484163 996481353 597071420 685800992 331232016 514696293 747462627 952965418 518026016 881101993 52441422 88772865 193102256 902523557 436047944 750238446 222543249 275420922 710837876 819579535 445704527 949713419 487250960 815646915 334155564 925411345 507796120 592181953 900786140 949397435 212772484 546978599 170349561 780332788 354410126 614329733 36677346 418184893 229992839 909747114 508772612 595005271 846385580 915115178 581358350 623571564 619567730 819556247 150455642 948858492 382065274 532746695 340039968 695870851 494108535 917015620 229449301 981310193 797051349 931817602 399911777 666206445 481193812 598560965 716843694 812809207 270698029 959949586 430097682 716128028 589743463 811620590 6489255 608867413 498279030 582395804 864361901 880835422 297560918 524534438 891518829 894922050 602388588 888829126 554093391 751010399 918405463 991259956 501460499 661759404 810952358 834580724 262757738 864337589 823704507 999492116 180017773 485405585 768530875 835066776 732491373 855109181 323577236 881559891 289826089 668888859 813125448 992024091 848772324 869510913 445151926 501211161 500718428 541291062 413498668 715264404 160878071 741873985 811507334 972632482 346527624 403913594 613392963 878780727 696432638 900330519 386106727 423966650 200816760 695128949 779877343 848380900 704942581 933322832 420773865 628276241 309546387 963421331 478807815 717591041 546600000 780902776 485773627 910576757 676733778 923082222 991202585 995532067 870516902 904256917 629880828 891864120 879227674 947979830 961557296 989024600 665876092 769078990 791554673 991148088 204495037 477106370 25682534 225506949 240543636 286026145 167611131 357686229 770242932 827920961 30558160 32827167 173379713 773146243 990949590 991561791 765719313 880442027 497463414 774786706 598393823 717696478 882744696 932915319 162872958 784585246 687002931 992270498 935782769 980960533 575520171 581103682 308016426 786336835 326247967 397503168 41775538 174067803 506101146 953162543 427715134 447589094 237789203 442121575 709093575 826293683 621926636 702856213 203762030 360815379 908134974 997580822 750933364 937976386 569152508 904630168 394416165 915364882 227104328 237664124 241500140 339741733 929364346 932254281 718186744 836300448 15898530 651031514 532132783 837372133 296953174 851273841 788456376 850446391 831567994 997063715 815935597 986578853 446214299 637536582 528540603 821019081 548980818 689772826 177706437 632067034 887913801 961976756 561206644 670214779 839008908 959297340 671940109 922082070 413155268 778794266 924137550 962305111 217879170 830365339 744254246 776123873 185999249 195272207 554700640 619203210 617317713 757881892 323893922 466124478 269173866 882886458 24712261 532781837 752214038 790367092 126523497 595349303 844275219 952217760 649589483 837281965 627964526 631539210 771464252 856642639 556746387 720281659 772336046 903921226 652503607 971398466 933833252 964395725 877947881 918385231 991894165 998965131 582665988 730874790 119329650 775422265 193540790 806245089 132298467 308825182 117128831 694088673 285919454 743264867 138461125 759473096 450457952 479111150 238456688 959655224 760916204 856155457 606821046 763450527 379361336 570913183 403670486 697345141 820719064 941728551 487760347 578268851 299094540 553408195 534881820 568635343 350351171 600379883 130873307 691308739 686024686 834364783 563745350 601201886 815413058 928486175 999640280 999894473 570192802 587996232 599850929 679055883 744228505 821387372 450671843 482452569 148421315 476143693 672420571 759709132 807180327 938152502 376338283 896368720 33343239 360328298 75073949 180817130 548581243 753492600 601877995 749125099 425110217 774552118 487373632 587550043 140672817 925941039 671939502 809724577 78559412 982468938 5905730 74761956 32648137 537645125 954521532 977590609 935385795 954342370 598439290 813289969 370416446 826211792 651492931 815960839 876754652 887405526 811341622 919697521 164627325 236544385 475071845 806082778 571200292 670059623 362929383 984318475 237469216 350417828 180660961 756131376 719636546 883073041 613737787 637716384 664102238 944361990 398532443 995822723 595622501 905682523 633171732 956105201 813277537 887484769 957500815 965013157 81176138 308726315 843841178 941379019 88715409 188030374 811306006 995532339 330287710 395626621 114028523 331008837 275236123 509250702 596769345 922624168 714282716 910169304 369317417 766819852 708610444 946444261 94523332 193172922 198282520 545329871 170457015 601962511 652192119 745431836 97857198 798567790 790141779 830754302 705902479 975186303 437580203 718833668 939868477 952817275 869041323 952682702 477659603 674420427 26979955 234798522 75754151 938052732 401604767 847867089 345458484 593449916 627336565 989032832 788947762 901029486 23992384 59843114 630555344 931428264 203278490 527228379 669217981 913349817 415084443 883354113 555115030 994493920 751235709 961563272 466172510 862973629 924313469 931414064 207719843 237603310 216939827 886306942 798144770 879742395 5913832 975266290 366832046 753454222 271362135 587489947 802215460 957367472 670029927 828009052 162708985 571752813 358336833 523959516 612018375 987733250 910715419 978734282 834219361 902347002 744212053 937459961 279891851 597696908 655396050 877702664 421024897 836335794 373327908 740912283 634056486 819487110 93656617 252489578 359129281 695505874 319184899 863544132 937454397 965950154 355394264 558301069 222020534 880388113 761149408 884807583 966178267 968827680 962330997 977659882 579637107 776110871 218731364 492347453 33825711 531631473 312659602 999327529 184950518 225609354 770493255 837681848 779586194 787167208 514838287 886872174 360870779 617410088 122018073 432038504 753237328 927182192 532166200 997695669 503444589 944383805 244110326 437158034 475108563 809086563 336654592 393652156 9882830 324111178 937133343 948832299 37160400 440287984 919234010 945402738 40664584 874645714 553149433 748575300 171172267 295407040 4555112 453917503 494633097 595396792 622300097 999963862 975088692 978756103 543321011 669932241 984559554 984713907 474797819 575674878 722503516 995558908 260729259 399132199 107044930 183584532 846095558 876562455 729731728 992983963 927437839 998661985 147905549 683811262 980483304 982509379 739799402 931216822 595463378 810924980 139957022 366966494 342538756 535748996 182270611 359338708 471936308 538906037 376116504 988131757 738037301 865418974 227923125 709854387 922254939 989385397 927808393 945974838 628594034 823815202 322656502 799868379 562213865 809202081 943739306 970773809 775071250 816862262 863226121 867133460 22673732 26072637 952466741 966492710 738376299 931280027 107402009 926467484 423874863 442760170 126076405 316088533 656396495 909222862 916264381 960614314 813142048 827210216 433060665 882882937 468935996 903802413 61021473 688358221 48819907 772041347 660127645 713690762 556875450 776468712 351574560 892411265 200871381 845167779 612572857 683463439 163580810 890588428 461453688 867292984 341131290 589688780 998192679 998980925 998363129 999027185 3983003 991837793 492589738 876129163 571606585 867879902 597329926 911444226 465478096 891473298 437785934 459293541 762722612 782003469 970825566 996465671 759686747 814960195 355746861 826704590 755217544 870127135 866173176 964773847 538448669 852323923 345153695 688491554 216382309 304169365 197512304 212281188 4732954 432808078 133341843 998070891 872104499 965570609 937700649 997113912 907964976 914759274 907025619 964589142 93257076 719992459 6024676 939459953 397817712 456009675 775435157 844140023 54773303 269217254 120305947 308735400 560749977 698536265 493474624 602673013 962876215 984805531 817235339 898659221 715286089 963257861 503120040 587611945 531713099 953969535 457874729 520265662 213435674 378860824 722112510 930165109 123550491 662922806 144503962 166660763 133150016 639352221 875997775 971878214 114991670 132041771 397111293 873748333 820129633 958161598 484526669 934249668 907127904 974840386 890816679 949259567 325604000 794583459 275344864 919319600 813910959 972012150 234516697 448046494 98492826 921713442 938142758 987655663 480120568 919565302 523187177 577239144 732843777 979200787 562640694 730761429 58777005 956601435 74648480 457909176 21556777 786336182 139528741 753572078 118111197 402057662 994161821 996005481 867475454 957743508 586607342 726428636 223546669 685404778 72990791 223672814 332555495 880177743 495912865 920086470 604613056 928775696 487062255 592660606 396576834 462799905 202549455 753128218 458495398 744200657 66296750 236113906 876041600 979109292 373116836 684050419 382851867 723934351 983708295 991432807 971212913 976496391 423270242 985552869 836299013 995237010 608817383 988466137 987501012 995961138 688025604 857619188 967457630 980831897 135502650 697446973 665544963 989681027 109313943 224194862 904336244 938973951 587975140 689486632 564522297 895192699 756504657 993213574 431949844 477122747 322342559 851815854 672488000 953539245 720653885 995173948 881795069 921004153 669879245 938615796 280715945 932074424 348617568 676229412 10708510 882410014 811822738 925241321 775964901 984609315 708149366 869496179 179845941 812457501 999708241 999731393 602123086 953493719 663136569 977063891 515340662 531204638 827624717 944407167 980550719 995965389 807715227 865340370 629045433 921518069 218895424 783452307 755624564 854696256 998094190 999546898 958376871 959483017 826767438 850366205 239171569 991877944 168628544 881063403 842139686 901447463 147824631 881607986 333892451 386722242 898082206 940940519 860936783 974028356 826805152 995923385 911623563 939468619 692294320 781058671 775758869 951224452 796257172 801695339 975127118 993248422 634287407 780643111 641778384 707882361 693568031 733580204 479331528 967140415 188523840 503480368 831598149 854157652 849586560 896771854 421404603 571933298 688625515 780852332 776792420 998840922 215941311 728505921 459394839 867977036 617662686 619429035 970826435 978557235 453104888 545950908 599000293 694437776 198615796 746400936 525427648 594118821 669102298 857484369 797177937 855108469 607821653 839681119 325923728 427020633 151169842 197524510 110037588 467546834 640995167 898037493 813083171 931005416 388853738 915765750 36833857 774334588 377864785 733119020 142823962 195225480 260754992 592788399 424078640 773526164 550007014 579773531 456416693 891346062 905364901 968533129 808060956 963846644 813218902 900104802 948856618 988270828 128908194 478851534 754830093 949371606 305803721 693539740 715713459 759061673 697470027 984873021 867174417 879075729 284024120 426699141 883665297 960626179 829469159 988913677 430774360 652417227 434737429 791917340 861866729 891156178 136630988 883111470 640345685 744804146 300925983 934114622 721818616 803312048 218896560 647062256 949845551 965806215 513687490 866569519 516948298 957978415 576784171 583901208 362695369 524073530 500777256 543214831 746990231 817767076 313825954 378333796 910615196 996515349 352556733 554576500 325078306 739650883 133627521 186327455 913258788 994789618 566061178 801403785 937416489 963946309 811733238 911814361 891940878 968004286 962698332 983134409 968707432 996048910 107724100 701852964 240518906 481743439 161029090 453073504 323403417 613112192 235433910 299683467 206806844 325544895 563080131 897977360 782271840 922819812 815708558 841221095 2070467 483545137 583129018 615766259 858154302 965344048 9708165 643965288 238312197 901948246 742053882 866909378 273462970 281771723 742290966 781523293 681593024 965386610 728847844 880854037 278210031 547990573 987228826 987474085 831470585 972864699 298825633 459384985 45926896 949841070 116677732 537926475 242517898 759959733 697987772 701998113 651014394 718480311 945386989 961451973 604920108 694530249 749897051 978203910 284859639 619668163 799445765 887615569 135848209 724621831 366140947 948871377 316856893 569116118 488712066 775330361 253414624 505064334 396843702 859764638 491870974 831681055 965185531 968004633 42501897 775083524 637431853 790575884 583263419 778779674 490908261 754754014 98891193 593638471 112923015 637575431 412921663 931662432 169120956 189104226 261483329 820389342 382389701 902517598 128677313 558567212 824489673 912685176 100809247 900980709 420554118 833469134 585433433 772158161 923099931 961719540 277172457 706129610 508004652 758934173 787964214 809947704 315944661 878030259 528604699 913628931 997814037 998614410 23101094 738623671 155442740 914595814 878383977 914518325 880056700 943124476 632306181 844205807 178202996 383572818 557984292 956345066 190591488 214933576 872979197 917528679 916707056 970975173 486676368 621553430 358075441 867689395 516942660 876770775 132308913 400960196 544031707 922002046 529636756 871325606 714261629 979303143 310649881 925921074 249604450 326673382 112132390 640306293 671508581 756121512 369499079 942690672 17903584 165243461 606534866 792462439 422174498 954183153 759647523 916586137 231452243 346192426 62902623 863261727 341206458 503250459 849148044 910260264 710104551 786658132 383074201 981837476 924743564 988440562 969196721 989092225 426834526 545041312 611036635 929073855 18285547 892956119 4394051 534254736 463329037 957783548 868688189 890858723 628588031 874872843 426691459 489655000 634877291 889988493 645704333 895178363 468250184 844083389 813257190 871694820 208262667 308434094 102495527 524300964 204373219 544413535 558553954 942808633 972949465 990269100 699820052 933672801 571894084 709467424 373848348 886130817 953704798 987878633 319552361 526448525 360077787 870357692 648381669 666074754 334014705 944390276 22232794 103936654 316390843 695768726 597247742 621109925 408890352 524629456 192854244 962778094 909437649 913880751 635919377 941964028 3721837 264384344 746611609 792113763 827407522 838096261 850535776 977757068 979750390 995046332 31959860 176905872 713141757 764587870 901412672 922585287 784461184 953811292 689980461 792599050 720236280 925319011 854852233 870349526 192501554 249594895 117678973 759612229 526976813 725475635 979375866 995012288 153526315 765696972 630248843 631281545 237023038 664458058 41755617 302574410 267919324 635982248 450381115 649925010 746852930 753000133 489539580 996229391 33253555 627407336 538197660 808301393 216704804 370819705 819351288 895996199 239613332 272949014 360753390 568380941 823416011 939277880 445149932 847382118 103639087 749485647 830318289 941547836 229018380 744590168 316838506 916313760 60222360 269091400 191625306 646499637 361991323 945069814 890683307 890886463 486586125 691964491 273859567 573780919 909979394 953887983 594260820 598110651 707380204 890554659 981366334 981790924 617832998 842792845 71168879 616568818 935207424 989690576 533514357 984489102 648124916 699957057 461428776 730062562 571116816 682999618 776358536 874598932 600240962 750017201 465627802 887347857 269831884 880505778 684232030 778806794 990444242 995271336 122117449 793706991 457901420 775222183 192692472 397826493 42632891 963896797 841356527 844203626 410656775 808160506 746179181 973737550 221128835 795762349 267153642 593379574 628658303 999628536 511641944 906160218 829102235 942224370 70579309 664613903 24513712 101246527 690487218 715347011 836224174 957344005 182551912 341447917 428314108 443916515 787373268 855952944 114161970 983572583 473170026 718306320 758612443 850393522 515510515 703150324 670694293 739434279 946773118 986174089 386718525 977184709 475881516 615188662 13529691 614328810 855601936 914048084 25997129 38348425 971050195 998681607 219431294 853402463 681199577 817378511 957409029 987198081 38777365 424666039 732450449 748143416 5071227 678180617 589311709 935850433 940689413 942152113 119891620 901999023 7667919 176292809 54355318 669390477 430960310 572295116 331478813 558121941 62268412 333278690 794753782 920329842 729594423 837430838 809507692 825867893 228732065 719358312 860066373 924058025 735502697 869378095 875267107 930092543 161070748 499230548 893657900 947338674 871545034 911047973 292106724 370456330 822926116 825620879 8116199 596397731 647015496 931381516 401769896 740189809 321413957 519640208 319012696 458528025 29283368 986502085 680596023 770999770 242890027 698495393 5778479 188575172 887887663 937687420 396021686 419003665 600251542 761417924 843071078 973804670 24853075 26152667 796310035 968669909 318671350 473981426 990100902 996597889 906910701 964494527 520398266 546117820 358873599 984768267 337609082 858166330 885048749 945782745 983718462 988018554 127490149 781897307 733828752 768760666 614131446 966325441 477113384 963033957 309243766 545495150 179346823 328926157 914324023 985138488 156923086 568146840 749729937 904523740 995509911 998696960 873756631 899923621 813772508 953233612 276352104 632757525 512700337 989302355 521950618 646515735 131119273 182227306 651290626 702951525 469768509 578857904 373244278 458007704 636030923 871282843 242833685 885516760 742185330 756352823 828544318 873603533 300502576 664532116 878022411 949229100 572499014 946502363 463971011 606229128 625115031 832330872 717382465 735937823 183726486 284792922 464050284 659534142 439687760 511897142 620574558 630601381 748194064 769750828 744070453 745972504 72906850 741921041 913551281 975265375 323963816 335878346 647409220 720392608 333881700 459303467 435864019 448022453 233140043 353057305 610672960 730109408 926947442 948370167 716066932 819105135 137019474 965441643 671655643 745865153 462225861 886333665 150668853 983161178 99994237 545440272 664377911 752537376 663698386 942129456 508540625 750861884 292290064 536904646 129058041 994802375 846822746 855736521 272435844 564751511 741991172 770581316 304849134 852957551 343694797 994398545 833011248 962993746 840111021 994294706 690137100 709941932 201755355 387090156 400842811 458358489 229779 376119856 823432212 883101463 958793763 973928149 364678387 927750439 420916259 482560170 792162374 856501759 925902893 953740675 971461555 996589201 216015327 793736724 424987329 657500767 796682815 803183025 408558629 598940127 814609213 969056269 225707859 668230189 105709214 942487033 363660069 552619853 921419852 963155464 236388689 744359116 268229226 851826960 531650868 650798845 921464019 930100478 897515265 941256876 337323479 645068043 465814409 881613246 717785357 989430854 446263770 597993730 624927176 657410728 409224794 605819252 13094483 812498844 650061765 997583201 307128001 868246599 836394448 840252956 596176913 677133900 957754427 982888859 127358148 848289999 13538441 154398833 708824722 863639344 183087076 252486375 178141824 592337360 262022858 308117644 434903658 862932572 915010832 920628526 718911849 909930441 569542747 775658118 965496780 976143477 198614993 331721228 353385696 629957263 752932704 871203331 953669311 964046734 721942850 967171393 677278050 685746766 318238844 518907179 50928485 337209750 140002296 456254236 608773599 919882580 475737715 961435407 834526665 861689336 576232179 860143448 399331545 478748528 126895185 157190029 424693287 541280734 199887495 543900118 812859701 971010093 565473211 878513040 691444628 882014909 692180584 797792290 679013858 769955161 534021568 856526960 853799187 908806637 588505762 854047261 666774780 754881358 963832907 980214492 774511891 982299783 74503450 684985126 155982631 521725252 281244666 759592940 98069651 590462763 729011108 789559515 642125055 860417812 746950489 932668723 470244358 910572370 258320870 418086887 57485715 177723005 283257778 547110686 293885736 377600329 750860337 921728407 117040972 836967718 1051659 276056753 828346566 978884349 583245880 687848393 497672119 861609326 91351096 596419911 2689519 634296307 913840563 961940823 951567257 968894403 909602814 994280703 175639448 540523110 830732412 863050104 544090726 976938893 451157687 867676506 237973842 636878522 486658750 580392155 585479842 889829070 750044148 970307176 631449833 664565173 590450982 599527902 764140193 976216048 456838030 666759188 716364438 932890942 325501993 666072457 860448099 923572489 316931963 838225701 818629942 889854468 739540878 759071337 217537864 705096580 90013766 661115122 229545686 856978759 277210403 307803639 818674369 851413850 165033732 325704519 111598531 401936954 899559472 921845235 979746582 991932456 829811574 990661697 383722075 957170221 601167415 893247056 468140260 654524038 920758083 968437526 119928720 839700969 326959559 515277323 382905090 533634900 20898326 164975882 688291136 884973612 522237899 638856580 419993241 990467136 780970876 952252279 278739666 778515969 970654962 999454479 190457424 955352761 59856796 591059670 179095296 898457014 31816970 759887420 42304655 132495514 298246468 941500517 631427114 810397107 259339211 868006084 369576623 814370463 810601686 924632687 278822052 709627254 23825373 192928088 619302979 792590618 991833759 992658919 662867016 921731412 15819916 357325002 533184905 554681828 386537636 655195141 947812023 963596647 192131130 558628729 802522145 999289723 452629220 769309967 800413184 907041696 448520665 592762960 542171869 967837449 537805441 626516511 175003412 529451441 340240004 860812752 899233871 951530544 881387543 970469921 905156605 976162006 812529610 998274832 119028240 860446723 242334984 405971961 100321765 978060341 651508622 897117678 53824196 980627736 414898157 647123770 672534827 866837702 218999439 827916520 814316059 895277128 848893970 932855197 290497253 466444920 461952497 721089493 201839724 907558365 107269875 852526913 992286475 999665383 163089462 815872172 77805547 953940169 864103378 921301910 683172120 889072640 548950675 559889827 63925464 400154393 798346425 878860657 958796457 970877457 541921166 686798921 154796340 273500818 172214856 613170763 88876422 927308254 752244776 987329640 52774158 342949192 840916894 966146268 614257238 955299878 229931803 983890039 573805945 792216590 357366183 840072431 953987246 979474852 675400346 701038728 454203686 599661856 744872470 754886029 233497428 440356475 780247737 848411511 378822964 681188197 343630308 965818040 664773657 701015341 752291815 846018830 959069093 989932229 504162509 697293918 133779216 159560053 497388591 845895252 355238298 676859615 30575771 168628139 501082640 991545042 180866584 754416281 808852538 831305845 579677975 686535904 788302775 882035861 367958174 854879007 815077899 859354984 697160013 973360230 745080817 759269462 635906411 762553310 624619452 832869371 530181737 577337669 915372779 981270870 205015084 493545273 258698695 816588611 604355652 732554212 578381971 720700843 359660279 732428324 402127433 647052371 856293887 917846656 102379260 655118011 129856263 417274398 59710608 545305646 562810015 721461645 339081499 388438680 66794503 773965892 601907802 904713081 456236883 465685627 489115505 862120888 612247162 839452225 264842380 456720316 258337203 918287350 776190093 906432218 972179893 984438441 144092047 856406253 256318019 853861897 198358338 887260808 949532581 962961439 178102064 861544278 624474678 825453447 934059327 989034503 373977219 625281372 492420814 725597332 291843131 823917300 10062263 318211397 769172367 936447199 577679889 795063407 948577551 974184337 313077634 363580912 245036941 469748244 255829176 766649305 679794496 907452028 910820977 967216238 119008994 956435684 910032198 943801260 567383257 698064354 172760029 552924260 525923895 635428288 417227447 653796539 936904400 968970852 240381287 670468871 676048036 960975946 194876629 403909236 214838856 651398145 242642757 852240887 467485769 872646311 824545294 825386020 277133354 815783131 560705161 783031475 779408845 822951407 244513689 283531322 929350217 943289243 859344319 952550020 207723949 606984442 251855068 874486292 797569713 994851230 726410886 876717893 523564630 916718712 27189433 462865197 292787697 530131112 607566370 656040025 322424931 681036376 373606778 884550829 979493466 987608862 410518060 531967568 29374851 924263537 900226640 960076631 619039764 795508629 864306971 902730100 484840668 509375525 387226609 739701779 628642586 781474785 228247084 617458653 280281310 665419648 433526281 485030455 535654741 603871106 348839924 650592692 12695531 293984105 128318476 568700832 421510161 915662274 309707519 828545263 983031690 989424859 109372399 996417491 272915692 391851677 350022000 406188336 88230198 629817342 790373681 869237379 687969002 913600058 387181275 693660699 836700797 919296239 575647658 718169272 194485611 794501067 217147723 456889341 863357305 957895373 177113691 322690413 203814974 317915792 638130668 801946542 366198379 773119686 401267857 973079001 592569694 980401936 80485323 247219219 36472729 39895736 187614896 244527692 467104132 903319126 853789095 929371408 586715832 720883410 145357354 257231418 542269381 952254083 347032106 798374613 72324450 166633471 24509693 387565703 706801242 960424430 183032775 276987257 205882313 826691176 905227696 978677117 829008549 863956279 534085358 865097149 161363546 565695369 738113705 739373268 393880240 623726332 160402548 421817073 788183073 977021435 282266318 625863443 332672136 345215139 701838970 963476225 405953498 597618020 791586990 890193941 95627912 675724761 277694090 608054444 409394122 816180535 870005402 913875505 846815057 879327240 244005135 406139630 894979446 953198032 30238404 737175144 466509633 945373597 256294596 343525480 251539400 603607448 228613727 947270311 703927609 997681761 608754854 627410841 418731187 534271337 691343766 825564818 939769210 974516623 968711125 989075859 356469850 859834272 531565605 691991369 576886749 772828054 835816662 845772210 524322287 968634357 2898678 617647682 849945887 893122855 256621227 961126394 159116457 756284670 379748188 659404885 394260712 517690206 567200883 595530216 154265260 538053486 296626850 626675689 493936141 621474932 386401170 636963548 661513584 903836476 223992854 642871406 566475938 898813156 384697625 823852650 456955054 517925370 388311142 757410148 529192855 792695076 713930317 722554064 990007612 990250579 44175917 105091187 486902655 830910667 530636413 973258551 928568351 969651698 534139800 558034789 268216519 392859979 383900854 938069647 147057458 653145001 15701185 338049941 745170598 821601697 354504461 591754891 373498892 975482609 528375212 546280224 267382474 484047127 667121861 910933391 757471304 793614521 142438950 858104948 551676084 862288721 758549782 793988376 677392753 833625457 317114576 813565644 477829282 607977933 522716310 612973273 240635880 674118176 653525275 947234602 56068968 855620180 746087205 844465983 430953147 590240261 253828243 353300743 338790710 460305371 900957711 942997594 119214427 574362831 536937937 926797581 415039792 694396247 326892192 866090702 198510622 525687241 781073449 818254834 997769796 999656481 398372989 807705933 302533744 685100577 419103367 555406473 271294304 772151391 552182399 572485372 23924444 350566393 489973018 820662661 388880198 631963829 273310578 777131730 103641018 661571956 478481249 962505678 780216087 852684163 81006092 685319992 702697033 843405433 378139431 622849182 571821580 878086605 724207253 987126916 916182844 986094319 671207321 767904888 529119117 559687429 178829879 744139882 921212576 959522040 34109147 483608558 856854595 932199834 533882310 914038592 613234806 878780866 79543829 314104038 613146774 738562809 505808430 696052907 157873045 235407300 795731475 888139811 677508014 942514914 917958469 926153223 368439923 923186804 258107657 863929270 859981889 866708518 788000709 951382294 52923839 309733198 471570996 493689625 748777069 919307071 926085730 957767318 107452687 794478914 709167353 756966209 472352390 637849878 416206316 956141948 735231412 979452856 203644549 248479555 642020014 931887213 746358561 827146755 567654337 740750001 562341773 919389245 525795697 566251298 216435556 830070276 256250403 873718652 736849690 881699033 817693267 957776188 490929195 737069871 192306947 970598818 520654566 547981953 149778177 539152609 825014296 919695376 725596384 991705603 909600584 929918956 805199502 985032780 752174442 828213183 413069633 911556835 127788163 921498050 642378352 713708369 492915089 922160921 144682866 545189639 903160680 960412658 589585365 803021162 325446147 533361504 273242256 597721665 697085220 832017948 121427989 263538516 64897146 65204328 912798898 928376640 625744425 849845724 799520979 967401257 670561358 919823491 643258964 961352536 683010757 907633962 807269217 919512150 186773582 707637449 780740758 938042066 752985040 788760606 537801600 944075920 230707984 728223121 208843448 591946965 121533308 837593416 224156608 402889030 657084712 979995654 957770994 988140414 920770689 948004786 944617883 992211997 122218723 646797013 949304781 982623252 555246130 707988412 759236348 777623114 230012144 632907442 590544928 866244386 122700048 340252379 890024211 958321092 972624780 976626777 576405344 919287990 557354179 670124629 803368081 884560418 507337799 939744331 979880457 999349891 889894280 988777692 842913813 859213893 684782122 988930746 13601199 604929266 991124801 996570240 582041369 645003897 179335511 251322211 87639656 299590465 358815321 907920516 280846218 987931191 602036418 721753773 165986531 488820170 218542596 596418078 108819416 313739106 520003481 716484951 385916913 969174934 992758148 997118561 566204406 589679470 509399582 767218919 780166903 892569302 18304541 693334471 982035457 982440486 887144860 978578515 413704011 914608006 90520744 888501189 810990094 826787107 539496483 791664002 330048858 933888721 49580299 769707549 627250218 880396375 607278547 939851843 738185167 852032343 637372967 728270170 400674145 562538892 957838195 964700568 755331411 760056046 956996616 973735862 795574869 981960072 694488719 781693659 142219749 214083208 997977583 998124227 555879190 627458407 821691298 849738655 732831284 899656681 439856052 562932437 853795130 892783821 470909320 556393870 432398060 772000717 816142132 995181559 334087756 616128951 684244877 978813565 63114781 373809370 555365454 996426225 685784264 785039516 360232547 950404668 874330758 989254858 481381960 650487711 280275961 944144494 450111588 463128187 918491260 986227970 727433583 882152787 490750872 561895708 583912287 894314007 504113670 604338897 448657282 977701138 517465149 774325826 950103656 971711341 820957037 988916836 111685211 379835550 419665336 594823444 560797477 700693217 219825667 660982696 613474262 670734635 683075395 925295875 639396866 724331728 169307250 328509582 619097976 768767363 786435913 836103211 809762510 868042850 590207556 782631653 565298026 617557884 714905099 767938383 249513479 875827530 519608897 935035372 759772150 969219881 900644831 987585731 13065294 245561735 728880948 934075851 676206340 852073097 510804524 514106621 756222526 836632911 949775133 976367672 363574835 947348059 9734327 826203168 656069293 864666209 551424241 798471324 204248501 974680942 435301002 727136783 508460093 689586671 553370455 557353892 369039253 445938367 644640230 779142034 258208166 850604542 360026298 915016535 84967878 735182701 499257359 602634190 339731204 738783548 511259449 686676463 646760483 766158945 260526770 905823112 947303071 995091172 786387697 980940406 407463211 771299971 475648513 634490531 468487466 902942946 676622077 886313580 308189325 647823000 436572385 635576022 406418774 972739579 381614508 955260799 819423360 983630546 818984299 957539199 456909780 821836848 179982082 973684775 688362798 798290882 541761319 973259589 786497303 866299245 30397796 889871753 473198848 883928891 685322777 915779179 600258556 715423789 553234865 995029376 97034010 149795582 312795855 989332861 945662724 958057547 805404106 911774067 153392974 754976381 452897576 884216296 255870276 503168065 856976709 904876564 859172107 885548246 20918782 86160510 957423855 960110206 368461246 385101780 679238944 914796899 65557834 68055426 90596597 518147177 567025188 981976460 727032089 964851967 809990751 904397110 393680389 540188452 642469755 836519907 26215493 876113821 46149886 573973326 285287188 869970868 533348500 904806260 394338977 551316498 907712360 973812601 322950053 793156933 222241848 866460209 776943074 974590310 32096689 975401267 166975717 764210699 477370393 840605383 334104022 886198142 845452207 958321563 546362634 552401528 14745009 838559052 199051269 217886258 916686669 991062465 788690408 936576143 247134014 420202420 875677560 914505065 897110631 924727393 938914000 992547141 878119027 916371577 209293948 254904105 714654336 729097446 896690475 901597009 108117757 244234531 638130081 858711272 169995365 630890117 97578877 730268169 827527642 933659679 540832160 800816372 550318395 642603812 622313750 880818306 293725551 436418550 836481349 993995770 97031709 762622216 605176176 749432937 306625186 900071395 532809417 956242331 361976136 764103433 492399422 826003054 218337477 627550750 355509518 559132650 735131505 891403313 865630368 897155406 28772158 971214957 918601854 951458919 620915817 797166846 89548544 413250642 153254418 760778411 403772482 945186266 31658106 77606064 980624438 998434802 765260581 908630191 716228450 821034408 557325120 922418378 967117177 987119619 288878084 665634813 964285716 985684599 599809715 773285460 704120010 809434105 488936816 580360518 449882308 913783203 228976019 947103642 535121567 667582080 905686583 960031361 165833845 191964572 430261930 670036978 76596234 896149165 309164165 622620459 279328410 292392443 566014270 663173193 497596754 703487242 781487279 936919735 807049040 847178456 213916836 364960227 869270147 967240553 956037925 961073717 512138392 897615581 273081300 994667618 822922393 851913080 905010242 909183849 544510993 684290629 339470127 459386387 847395534 911745474 208434125 270430454 36292790 826270941 511779040 555618874 146777818 357081325 527197719 812213600 529693375 853095853 549748598 879978727 750090912 932042902 547062633 625197205 435712420 851166989 534656391 653070247 572824981 990947975 320828335 533839714 675104556 868492492 880674143 990243306 76577760 264944246 474973053 509762355 826093739 826678009 906812013 965503594 589918100 663339496 278189111 942703138 351387269 611552030 148748962 572661779 858553658 925936903 386505198 721355877 927883085 990175070 997514086 998440365 72070257 490309187 424619177 684693096 152323108 323564611 517247688 619216665 447608026 651407480 88600576 837641390 492699298 562114582 550250453 674869436 591449414 984638426 552266693 834151806 355821228 388144571 310052976 894420144 726934128 847017478 25106656 88135454 697089372 704512809 607590356 645745248 855159885 943075811 702641207 992957664 219152288 817401456 732151841 902028776 174196733 389537100 920815817 945983517 270399977 818073412 303804974 859386786 855719514 857812091 464146042 590570228 666382877 833896678 470535270 749345344 880755540 962985802 803485638 921605862 861865910 952145089 447699861 889118132 467874721 502510505 291207786 466175996 532028309 924250390 383846521 976479135 750701212 956087270 124185834 778814332 732190888 900499961 803292119 815936283 723466327 888988495 100129948 396201040 674164169 891334003 608444573 757790282 681503423 682434582 519272009 775986182 644223142 955480543 873952278 944862743 117166286 830035095 171710640 660269177 897022678 902080254 109610989 341657628 42489205 936153203 962785707 972676599 765434964 898740076 903981258 988881852 166838179 909883284 203577250 578194563 99782535 151941217 415042341 478078946 409372917 528659878 16866607 700260019 502615319 629196263 443122274 678739854 586705922 943681702 613695746 896749361 976975917 981154609 625392127 738023526 452510254 695111864 601586250 870711259 655449978 894403026 165251482 678711263 210533018 733848292 948414647 971609557 947748989 973967100 578532719 691703712 598964513 766591269 987291335 991975637 467924314 816459489 817390188 936486200 812667662 944717444 885497553 913904208 179915151 516346169 487075209 946030037 67308294 914254566 947044935 953964546 798722956 865703502 528029328 903453953 683437809 842414823 505423134 678887412 431198375 578060430 464178453 929515827 717773982 769890511 933428877 949191312 986383929 987363792 170807141 377063631 228241224 255465385 107276719 213378484 436722431 497983434 831180274 998044863 965290314 987943141 551537804 680250843 866684502 928637127 796255462 947778496 381919315 542218750 423329704 564387949 72328650 430617614 206300295 304327708 86258249 915257109 383657952 855796985 325104265 532148015 868674054 979606986 307687816 465551366 501622341 818946805 162965153 586520279 566376843 853721066 564419109 752715143 87042980 132079294 893889277 894803485 506090766 585843468 647596227 947553914 603002464 724501484 693033631 722914033 361659498 561165315 568595815 642889160 397033332 951019516 865640183 896237778 654272091 918812342 438138650 810108810 762477447 995229298 750128001 832795928 487243615 958686877 273269386 424426475 390500037 963317262 884052966 933562591 145609253 462711120 520179072 615306557 588044408 900048217 103536162 600367778 227394809 501252203 596682843 824907803 638677466 982108087 220059920 375254380 487203150 902123801 6166429 598354743 497625131 751757073 443264711 751323819 621115846 810057286 867973935 901340053 817441871 858128899 876366354 885905222 18663868 220742360 669486752 885117621 286079739 655838589 383560280 740025451 366253733 712655578 725170198 940166046 237276735 935433133 582916535 882437733 816385555 994922356 5162264 664818349 368385653 637621230 871906700 872989780 663160957 969356425 180977308 745280179 231970596 885779081 182058612 204984804 532735016 944469349 890985728 958075617 518411683 949391450 973758699 995485243 952704810 997753213 979076454 997278431 752793455 801093602 318886246 912940969 705239234 778164217 217041263 309833375 47376324 254811462 447613034 829546719 306009869 527344266 989584211 995926132 917228889 917319197 197850529 906420269 746051192 994379540 915739976 954715610 224973737 745595551 385476276 875988087 994662204 998693169 662647817 671606582 795371370 853522764 238767375 298946696 129196199 648940488 585454450 668564615 120551745 272561447 572116841 889777415 62373745 847971599 600195851 768360909 261539779 286364855 236044890 829607950 568021916 824519628 650488210 939338774 196915988 691538850 418799087 508677216 534643116 800662780 777002601 960164174 397536120 985498646 303182449 720754603 490276646 698645432 977511953 986717116 515551097 613016998 580909229 718172323 655415365 932707265 391081637 699798923 689475250 807262050 277754734 781281476 215881226 744588138 102152827 300961253 446046818 967440746 897531001 962416787 972443390 984653320 947641703 964112219 446318863 966528988 147729936 242908278 874309597 972298844 748154014 760611526 362633613 713444398 62601826 321812863 173053563 346640308 170909249 822912082 654549857 780318059 419989690 580622828 822542764 955399761 86185727 493187915 654405646 749147234 794385116 926839457 344780371 397899718 383011206 958628044 356833070 604579370 848920203 880710335 564828811 711493943 644618177 734070413 536347543 859907269 697781550 849829451 644795015 678146631 625894663 790095557 264213919 352278309 75731224 838730991 670604190 937158760 972092605 992318685 922741408 945879904 714289430 868251638 931503326 955283026 856610156 956357429 44120946 66035310 306837831 864100895 175463682 852101751 521214444 620301219 904010131 944028348 729564344 864723493 365555323 797130314 354418255 787337194 35664217 766879631 368556035 968031264 819179882 988210518 210655480 336201535 132123256 371703064 780105569 955676084 427284783 671432275 838952267 850606696 81126819 240931898 6738442 16541182 132053506 991275831 878980513 941951870 864054719 981985313 892137288 957788430 965896249 985922388 189395129 868069381 687400716 746129152 572281104 768093265 155921977 657709253 200187576 844644961 929791531 998056213 661520777 920336063 520210323 937168581 845775644 868133797 971966969 987417393 48245542 411452081 97596582 559381409 268369166 818038518 432762592 870796580 759838325 903833697 768627695 944064668 801442961 958537624 579550818 716706091 693471885 962318082 338008279 863077046 402135308 800554911 681914529 792020438 688239412 707534373 483422115 931637608 933852337 951863653 315613814 860077083 176507019 971660140 854121009 910539387 399395532 465733725 625127927 865949357 840212392 962350422 665988842 926991565 654985013 808303515 136850059 920693044 324380263 645266298 653099160 963593731 498421779 745594695 411818667 742031391 847846990 982785713 690251947 788833420 220438299 259521252 640247230 750793099 937973351 950587338 123957548 661227959 747050017 773525939 609849543 890886822 567943503 925787141 50522647 600637727 25347511 386420837 865704730 958636435 462495878 656715318 203732563 372748420 32821665 184895332 338857109 462445700 878099261 971586147 992839734 993588487 125625100 697559988 618541272 654430742 518366632 629206826 994614776 996615222 752024484 780800326 406130583 501546318 865094721 956858950 64178590 509912932 151836608 426057817 966183051 993372239 838000626 935252045 139046111 464719403 195678976 953778703 900311176 936689419 623506761 792526493 519895588 819051133 271196764 608730751 454831447 737289632 42706195 473800867 916506897 947260811 375705103 560316070 727875732 842593079 561569522 719375924 122865596 173425332 270240389 303876093 265095571 339557524 751211341 756857751 478474778 626102704 478596683 630665455 979793297 981195745 743906490 946812140 507733130 954303519 535532330 915810860 522837822 546470872 71531259 828033837 551481445 742930639 550483178 825203032 853215647 946064522 347643706 752406473 180414258 374009978 455588307 921357841 9499033 234967179 203497913 668899148 466330644 667676524 325305989 706676676 124545993 144604881 294655502 788852150 597986062 936447078 232943120 556193319 194820855 346475234 542189895 957995630 857139549 950963686 255542427 807398925 215753867 782599680 658945137 854476617 831447406 845133849 556102543 784245404 246730769 381310593 123491530 524519005 869267234 939132423 840096356 927002213 307786168 562370362 733946670 837371899 140706429 795156100 179933522 387709292 659967527 864233677 280478153 594162356 543034305 627864267 808889535 959496217 939886442 957017500 967845969 984394985 517220444 599793507 873997019 997616695 311201324 572040225 58998698 358494777 761028168 775926057 397894708 976221248 878549738 885319289 106044044 872477481 878302803 882490109 435927929 569056590 944210212 963035702 451038987 477260235 415817385 575659293 569800304 933053119 556780551 979345164 979739828 983211654 881035153 955382342 34005821 297109833 75435117 605520577 717024140 936555355 505381278 955013152 786238709 960001944 526684451 661797175 511190396 949090173 115125315 664442354 682628761 684002874 987600609 995063447 292645005 882856140 954907550 962922815 366883197 725359757 734253218 962224186 934773273 940260202 693598026 784026160 782889908 970898039 897368640 924360776 511593298 988970427 831180016 982450980 537566424 698338228 934257397 998816826 855034122 904651655 336892938 474573260 524947103 603656314 79871057 323731579 563660879 796277877 204017126 860166160 262184020 694603309 110540404 311342582 612562109 944976219 699371044 700501574 823823874 896600216 784704846 964350338 439178268 447641082 831501055 987787365 907744113 922560009 602067119 847269970 842524120 881704123 342599762 631540642 372320407 625563969 571506610 722663201 400887596 831401182 514817034 723185144 248037129 331492510 915164787 998926545 861060912 930026061 818208901 896446931 292516322 953858786 890558293 947163297 802562605 895126390 376676855 999785956 859125474 901886818 313139916 885706444 43896696 636986997 273802474 563268405 28153702 178738708 335796084 556592290 401420536 640663937 15158804 537893454 644743065 812634504 265728149 941243318 696153746 782617974 587950390 953230605 165992870 672186137 882937481 937149813 481987986 953642917 972430041 985382536 185197999 316827476 874951288 982880588 90285869 740689146 230159044 255143770 491354046 909650156 96967228 354905138 234287216 717297035 482736245 834483877 513204592 572002069 552346665 657551741 871091137 997738998 150354760 199870214 12210840 308333699 823513607 996569528 469042575 946999699 553443728 991702555 71447271 450712400 807330415 816204858 596481397 796064418 217854629 715500631 153332413 885140222 533090835 892996788 377645463 865290350 124660584 251589638 437570017 660625820 337368010 470982108 789142991 858504365 679828584 874551694 321460203 719974398 305630516 955396714 435923444 537738387 311770355 970119667 461614316 759792262 506492505 665082249 265862529 950046015 158699920 702333869 745935592 857128364 46689054 902377365 829832735 993345558 685834256 686645701 450092825 949989203 196312867 469366202 802084623 885243876 614082566 763405812 342709385 913083100 632921457 814119177 295105169 700090727 65684528 665767267 173213540 972925267 383238588 951765506 952231619 998234842 723423518 995101465 436164745 996370913 93947475 739949185 899276745 959852055 185708248 658792055 208165454 745083720 453965117 898117869 909461415 993231588 901989496 931522844 385327352 855923244 824436258 859922006 405041766 544722628 731436390 801938282 150826490 215683909 528556336 577139970 29548576 122548732 688850409 818115868 768982975 814060951 761178205 938520262 280042647 475264669 805499448 832710088 780105659 957506755 711567602 919653372 497341505 571063957 613966803 887604982 81957213 679901991 305190691 739997233 707519918 896410223 278409646 977672450 499561695 744365183 480613890 721006323 43145442 518275530 996057946 996352904 8397758 881948350 903732872 960657471 135784587 405693004 411958081 503542991 321179713 568320530 508910119 631103510 277857580 917222553 693052767 842820682 820442698 860226780 571739625 696041190 263236009 421976073 223362933 304336959 345718010 370319378 845989235 942618075 383602754 650082694 11115089 79837941 781775562 878864687 369387713 724130874 615842428 656777310 894709556 941042843 548236935 724858484 599518337 732989210 180723624 380964081 209311210 365549177 57047126 788682980 909580538 952225041 29290909 250876879 216738663 409411077 3506701 350952002 394023174 665421066 594070411 835613557 296667436 408494130 321258550 553082240 800083034 841030735 469220784 704304871 754775138 930822729 852619796 987631466 202834231 944448761 774427819 807806057 613042547 855502812 509410147 770773997 476447555 842570975 66642751 404999217 346981296 747429288 824598724 937443656 237111669 266703271 615571517 977309406 801014400 923606795 867021911 956439518 822860437 865141963 995725499 995936807 224455882 350521573 534843752 771835287 712248778 825325863 951507467 994587288 681310607 716315544 323996674 673280001 103588391 222022123 891327310 968841545 353911616 870307109 297517591 767641340 209210402 860213315 365356216 713628359 709961268 839381456 59476460 448943150 224443826 429873514 364898975 478135591 394616467 804163720 845103824 959020716 489712157 768941042 734438190 894232188 904303341 918086005 871376930 936935866 559927904 808573042 914368637 943520868 845702369 989905492 668102591 954321245 75085660 822618497 101697805 657366091 392280643 991032377 390078523 436921115 305717725 956214721 249260413 560242787 60860463 527234353 826793311 834333498 713140259 949658524 486168761 947589655 686188288 758233459 583506543 715011151 110195952 332254715 891354634 989015269 805945941 877805105 629298706 808203182 946530383 997230388 562679850 855710241 445617489 652979447 331370674 416181484 954149477 973584152 585266672 724602099 566467136 816785499 413511465 586273979 485411902 975494028 695206311 707087891 665768189 825443033 232196023 608241235 187308839 188374943 206496565 799249424 283359000 466838091 6506334 125799071 116520055 548347240 72401680 720277866 300742774 573886448 425970453 612875231 505861049 636271628 690440661 853177799 218486014 428857400 423616371 467364660 29736707 719556958 879774827 942185994 58623266 519053779 867876088 918340862 580121782 954854985 785949552 969810747 105730635 861382754 830214021 977787708 622263130 911407223 575758729 955777401 256654849 646361330 763439022 990772531 458395018 799071218 377790130 444945651 327118917 354814767 208147181 651893243 79971099 121238843 74204764 542012275 42356374 727359750 431884287 772123787 93578520 438383180 502159685 843220140 313726989 844513532 472634625 629945541 506552817 722794008 160282648 591007048 968421640 993122672 169643274 292874355 390743317 863850916 438612842 496878025 378550109 733363644 504590879 860798562 859942633 950005741 529951181 764384902 539270846 969588481 484493879 684487314 963513614 979311671 816803156 830609325 89630500 344492959 247466462 374841465 632393170 984032070 638894060 786776410 338485575 800363806 44372991 981005432 489080157 974870254 431604040 937323988 356367861 427669669 22560915 142697166 535699350 915264391 938856236 961662935 925685957 935508628 381742105 653708177 295387655 746709978 899411015 956908711 215638057 739200775 623880911 954578380 909884561 936665429 661955274 709883071 528074832 593062983 620256581 995242115 127077695 297002768 671355456 989876029 315211326 652257117 633998994 639287248 374802692 829062850 105616831 763415743 695281856 873642158 63368441 895853435 421422612 758415128 641546718 862419729 566230142 913977028 223141953 270058146 822251793 866107423 122914720 128218015 542782221 891213623 28380963 950568776 161161844 554385558 372656968 992510954 141587472 485394299 71867708 532602224 407658947 624286014 549383500 805526670 48697044 423608527 28608871 555047109 826616118 894802401 593345661 625366523 246673408 763024613 492565146 667814825 556451868 636061723 944885708 966327026 762725646 766600062 574659646 758238598 852730568 928540481 921625735 951647883 67351629 206336159 698660794 905588739 375486535 998033298 429206276 868489804 368015800 724831904 448515503 649891778 927744936 954274624 749671083 830389489 939203423 953550815 454037409 688808414 803424363 904745793 815883145 928993679 798219039 948542815 282368792 670526474 62845401 632014938 211871296 660808704 572622998 724953703 831346435 880036913 923832216 968334769 451753613 859732320 365035965 738024434 646324903 879589174 722252389 818578107 939420241 997314065 734068651 782045144 490692027 558199372 112515011 355625176 540984627 713382207 549583181 708846311 541896623 696830119 597458612 916311843 946808868 987721831 397228849 757777741 500099470 629409681 522295329 972997900 223455509 922793115 493105503 803949033 770535607 969974112 419394387 709689976 855581289 890646335 27770484 965884783 644782702 929024244 316110099 661702628 17455727 392304322 812458508 890936645 263672065 721851435 120509398 378446628 678721803 800233451 654908811 681860232 769649973 859401008 269654218 473707924 767287502 859896917 526094937 938448060 148291114 195093109 344511988 764398407 4671080 574236646 927162307 958775253 651826402 656195933 785385270 794138251 891466817 936794328 356914155 700539882 646794445 717508891 509554721 927362321 242294507 358929410 357064834 903995426 323957105 486624922 630222124 874401438 401235838 643526611 547674845 603543627 13904311 239476406 276575960 924575356 170910252 732599872 544548128 677551781 746512317 895485280 976045791 986054497 264779475 644280533 508037341 771356107 862249553 864335036 119219064 146537660 385261505 932364201 601598051 996948613 5451077 674677196 869118674 949986886 298947810 933892844 928278856 979169275 915305529 968060757 752405928 863620524 829971028 861373961 967125886 977157185 908219362 985528403 692262840 937312865 978620705 993380172 763959533 772464078 185710061 227238127 693177104 744375238 850775256 967848948 543125738 612652676 648050388 764327477 96442838 830584197 217012197 915148580 637711101 967589469 95817749 453827553 158121784 481447579 31490597 561940453 963759913 967683039 524700200 777935157 70379900 381627171 878680025 956894703 662285127 932735603 743499057 991011416 547129958 847928963 4550955 308650984 4575292 676804013 462068404 813978841 432481742 676305284 92567026 515585005 257254315 324557296 641168615 645339440 174377178 746647971 446401194 713061156 248134636 901255732 22457789 998552896 758030462 947414930 879862707 983149087 928602537 982903119 249187196 828716783 2473116 631725825 919353143 932323622 274277681 353044601 442816889 904346455 950230926 981402456 222488483 417636635 350973878 697587936 728597499 948423060 495895873 649800728 375244501 842792694 600516032 911822742 420035887 450737604 201494884 893183827 70607907 114888962 835410604 882929683 483067307 964516614 886563435 955235043 500453321 729110254 570872039 838568464 663821902 665751602 544107410 895561186 496339310 773283539 139971446 299311658 429595902 785841630 584281749 765741081 850104903 866830945 695440904 718129221 269560322 370995799 119888660 499618731 923194566 975286987 897255770 942414327 909338677 909923900 908025557 931292350 797350299 905740825 416466028 465715687 580226235 753032590 634519847 795852061 663036418 695429463 117943590 920636782 72078390 132084908 344273561 784905633 1033252 531099023 369382561 676665043 357840470 536211201 646484798 664034614 500560685 979085727 80909760 398737731 596563251 943962211 28405505 654950105 987054937 989815393 9483276 458700469 409696533 842998125 246958079 810692162 492486831 826889183 415754357 517789537 853868601 884509418 779070290 913140565 581858793 999986591 457554377 772307209 125395223 320157339 508701834 853997978 28715291 273855299 55532257 483234555 309950183 773811768 589844017 599189658 677850543 952756656 727800827 874981963 876431282 963462499 291459611 518774453 141889643 170013296 222482759 410058854 430126240 859076512 249579417 564390456 74728989 711684882 257841753 723913694 378065646 630038347 464918379 695322818 5755285 447973094 44196348 96875560 599312152 891482795 83155982 647132432 941062002 975748671 616650291 709951963 448988637 737150309 578477215 880432270 301070014 870209792 97186658 258953452 297739959 410709759 269245530 856134360 807713256 827163341 755780271 870684572 305904433 351422102 190979519 675081222 192810438 761663468 436711853 680304954 932204706 962783277 219604347 666374898 180141707 229820815 743223253 794484555 380943703 605883746 861629826 933899323 996698250 999458396 882805161 984688331 109796223 150373094 417056668 477738303 753550087 794096166 815199555 991377176 461193099 834866206 434442949 838172774 810708473 953285178 885290118 930324591 758883260 966357133 775669330 923066829 987687043 987726950 654707771 886970784 927712383 953780977 655432087 839848128 186205372 458629701 882151605 991224916 286663755 316555805 408138716 483488680 489112182 870181381 673210102 681598455 879094527 932335161 126921481 625818749 377610015 786492884 241782037 692835420 34435077 624094654 671904792 708673485 650716030 783667907 518780165 616929146 685950918 950832443 135099831 594667034 839959225 924498970 330102270 538489014 210730427 372722614 984934760 990396604 165409440 238663199 677211208 815978277 914542195 996255842 793116029 863131457 202966034 604621421 96649199 760840985 370225477 594824459 561751327 749750054 820634458 931314407 416489873 562825130 48952827 555873509 502096003 859664645 590649633 799433024 789946811 829804115 825116393 899743247 950252444 963295493 18169734 233403253 351677566 924469895 472882662 551229386 294631474 441901293 969522303 971976560 290715234 862111972 377375790 470215924 749732200 783171539 904568563 955474711 404644455 594781189 1820106 735411929 523289146 943020164 293865649 482646215 951829950 954422110 283252445 891659190 930980799 976580187 713397183 804891821 290238014 891798662 493625176 685359263 306357206 362315791 871237254 903100122 880552281 911475854 851487885 988392199 100229350 563105079 799140939 913643838 193672208 698537272 474408896 826688467 308012917 834106706 202109777 922648340 180446471 729447287 708360464 799389748 142389602 577909332 136335314 294584726 801191998 995884808 402189499 885404346 131810053 687135240 701136810 970615465 616421161 881921068 82309596 479656080 331126253 702082865 16365043 326798667 446789766 776743981 262684297 922443630 29890034 315783304 721900306 994562183 363497289 536211768 4187005 682714910 777142471 935105084 249655808 264676429 566539008 931302942 871358738 991535157 579017920 789331074 562689229 655036757 523636898 726294510 58888931 766363632 243474764 463398063 867934477 890762033 602881777 984312703 250532496 945038805 607795944 722912279 418695723 453719669 890834410 908323657 797137062 963629401 698971906 810368778 763148519 888523105 328300991 740823370 707386831 839546356 264878723 820983206 630544508 800199170 891347022 962789874 370522561 758387953 64630066 670246803 712135331 730845519 209221732 964932050 808418254 810114174 645248979 759740693 638356989 939353819 547948087 805800592 991135675 995179121 190913145 295109202 179117491 607514655 628966017 911062719 235331918 530517260 554744751 877199014 144354987 871640298 9842386 191585563 501336925 855626347 634132108 823117444 207090224 958099325 692571956 968098021 403392608 883129893 449963951 836085178 503464556 611300688 86614428 775078107 642729839 652226547 236596169 901716363 962659349 985334400 602111458 874827455 253594933 611558607 546665904 915569344 429211617 471633087 462795015 659332253 322768771 612835637 682645052 815195715 420868043 677644444 554593891 676148008 111344655 722822036 962832902 989201996 208933324 755409562 446157466 817817766 907541282 913713908 586904948 772211445 781321564 864534710 623347067 784402651 539783041 807756156 255957746 794118526 579822524 897621681 480430155 544575456 581621158 993130839 492633745 927355158 910714776 983887900 528872462 753843221 290612526 709891258 221163246 221577159 283585978 438924249 185071950 848152540 528422764 764100788 42495072 828142922 98688051 712645286 980639424 999548507 716853761 913000367 219801015 826621045 667023035 714336122 476152733 524516046 431993767 823366134 100095260 267661318 854574606 898885679 689958468 881134312 192449144 978202355 966739706 993556215 785362331 915059611 940820194 940988976 602894737 907897818 185206285 681297403 645309299 973892593 873355511 948951111 548048553 731859529 152241018 318767158 210558655 825825850 212137780 828336784 827301598 873177213 948138085 958838305 704440024 920118830 98242616 391494270 908684659 982549533 165579618 686770916 937869632 981113366 903573678 932091831 554115145 956625759 312679393 327602424 603977742 917331449 199330633 763672094 972271777 972362012 671071525 886993937 669941479 781388217 199639201 972761000 890180858 904735219 230914426 589537744 463830959 636873289 524842173 713943598 191259610 900852572 360621814 414723564 172539830 949690673 785565711 921741195 665685187 997009838 593879753 934853857 97210175 162262058 36445543 549115609 990075086 991368270 682070434 849215399 109063927 590864407 718534648 814875684 930594967 943929914 192491905 477706160 637599838 831013409 259955462 622763227 432908647 512604131 704411093 740178462 798661941 910236471 285913528 402994551 537007358 921123417 576218631 824829732 122560997 981376674 420491029 443161137 633258804 689620132 792255495 972785732 580879051 896540576 37413482 821098176 931965690 967345875 768778283 889162131 498036466 523208215 679990631 925125860 525932630 618631787 208648533 236146513 475173187 974490539 625181192 793432572 938454934 965733975 70204612 439661790 956618752 967180316 965520255 975462428 37210678 963471909 21125387 718423093 232985472 263266673 272842298 908349099 228038402 370209021 869029454 938088803 115996978 717422493 827893245 930115931 202211238 973571681 479841923 887320554 602584296 711294948 636606527 802220484 449263809 774704254 646147093 824849664 896564743 969682182 421646058 907369278 616731618 651778515 822311271 880145700 687432940 843408316 364912719 987624446 987565252 993727621 214062317 448947853 702527951 735051316 945462541 959508215 204734199 849244435 667359023 772875710 116083845 616171931 633326770 781659209 876106145 942811871 7800825 866094412 933893751 956848635 491415742 642270349 927608407 953762283 556931590 716917341 46605918 299350213 641407327 901162613 348834429 970532760 768181941 864960325 105223856 490012379 887563703 888522485 109078114 897905977 524328858 933780623 222712615 621187912 143137218 813821410 183377692 662221138 725131640 755011233 955212341 964297006 754757043 877465663 514494895 875441766 14715074 184467702 530927946 941132856 7203457 852944861 343312452 416306016 893792305 946185874 911328569 912319612 842407286 859942846 584101186 940230877 576594586 779741173 648009879 705253417 823455478 829667238 709472179 988486141 446775634 610290204 922389890 926039126 774527568 901750509 439370995 449274891 311877382 400438779 906051324 927919819 139502935 488335721 990206994 994961019 131747729 470653122 865340329 958024064 27056239 994572794 949774736 972272228 324820541 587208460 389315260 467368088 29103535 680999927 920950535 971452263 761582468 985779838 282199639 339619410 80438893 466890522 968110428 991390815 193529166 780380857 764375230 993368119 322047622 714683915 396301120 920484863 577619119 752189618 982713644 990149103 728798640 763798065 604374354 709168487 724317312 817074699 951118990 966333030 557660972 839256925 356849731 556537479 4771087 835643504 32038225 370121157 350895916 922292287 160131503 704180527 139947428 282978921 456144912 579960084 653813718 937643854 484670712 763898878 986109055 991431297 309000509 540379597 675060814 803479837 426879453 875645759 424254318 995737083 983488657 988509254 115637077 183347520 216019924 575768059 671051633 767789079 453281774 758441038 322569098 681165649 484361188 710019091 9263196 253045103 781385096 929105323 761440469 998909165 335765898 731717099 241742333 963619041 135833912 454741936 458230226 966732928 285011064 535001466 295876502 466044782 852429776 966083008 385126807 895012463 561211096 664325054 705926484 871861385 799116837 819087586 912830057 965736770 812782339 940744830 701750975 791381293 326268285 445520453 31752887 382350552 954213819 971490620 222184666 504367353 556986503 733485887 5348416 84218620 353620761 779073218 84591654 380152340 985746242 996771983 261404974 861581368 195111860 775142900 138657245 545767522 503451654 938353745 207843208 794765395 717606229 974576813 713368151 792849001 53730140 366682969 278457099 687080454 536821977 872260800 67511375 86636976 989967283 992170599 460584814 557990692 468675081 905264310 542917966 840938220 660899527 974656187 686207372 705392348 901518118 912820412 733290761 825363295 175292284 621743788 381174026 476857568 950007577 950105613 59125254 952802026 811838764 881211729 923088289 942931859 933695761 956045353 319583650 633333357 57363393 175176867 69532196 98318975 158227320 645845877 377518942 776436729 827165011 945611566 628519802 719318960 899483988 904861983 841784911 994352105 193194142 339751667 863440140 900620351 985165180 993619259 224057569 847593638 160604254 650160172 546105410 735423436 509177416 980289075 263814367 611271006 538484820 854363505 22607842 725097159 617944194 699055777 610484413 711311690 45150011 73696098 414339284 870399620 770719430 872334008 951155493 977125717 817171940 961321756 385951142 814503783 620262289 786313141 205726633 584066463 710642974 960535973 314933133 522256764 14668687 863112861 550761378 754748857 782928759 912466379 743087091 885245482 569615341 922700464 990070892 991277754 633893311 879540906 933481606 996470783 588151998 817699134 236055523 682483142 885350923 953334636 58714822 821909282 197706130 954556369 853719206 959046025 823697347 865820649 379664000 782673449 181009964 412075889 238671419 554736555 911540619 957702287 726939849 868615864 288011357 603836442 214892757 426422231 569123048 869854270 627366629 795356233 948759721 951355249 895993425 966385996 434625677 554721456 325292656 748923337 791451619 847944917 863802537 953253212 870429896 915591893 386456345 394949036 505708091 906076883 218711046 788219560 458480862 485767122 365665737 555615254 228513962 666178023 169618761 760514998 876553188 944038282 191539559 497750629 750392091 915016789 608550774 662858593 370453745 942795722 638709307 818210480 68863087 414806771 691795681 771431594 492839024 959238379 850383194 999291776 958516685 969522922 54939261 201441679 120313455 594057905 345849922 370234752 791063131 868465830 865885716 998241956 637824434 675258039 367832801 499450829 448555631 787487578 622081888 782371675 371257272 414371902 469208097 664153457 677399563 965386943 781833224 906252794 842493942 951826673 702143244 922312429 521543130 556501161 795196544 888739393 368860488 731103612 339456369 413284429 639123205 900286630 662468299 762273169 844908315 927249218 953344134 980892526 989043497 998509929 898677535 968755083 316607682 811178694 314300738 657387777 53073037 815296728 73855830 278943967 836888838 989269016 629458446 996227762 390604919 942397863 624362969 635548519 861890092 923470524 215103821 333984600 309563775 706346018 440497595 801075179 727161785 836227675 144513761 315043806 511031939 829745863 224595752 241859751 324580332 479995256 215362942 233886620 789218686 848868702 711020848 868052379 178229406 665893947 687324301 768309072 57372101 326679801 908280083 919807503 402546462 727106470 193583453 645944971 105953758 620010671 507855688 747507491 791349055 813362567 222562992 492761125 273497771 472272400 204118127 293542788 489905680 834058603 40154904 494680926 832165803 853302364 612558626 664037887 696195970 717580555 572702693 791308053 202236631 392181626 348830576 373477861 639949503 819871227 957657506 997649983 292729893 677081063 163774780 776307665 771399370 784587411 540875509 796760128 436272188 515353198 405658855 644218018 772127558 926790882 250310727 785716711 418196654 874424535 235810351 945568889 307087357 929751856 835095920 911282591 706843560 914167358 347252630 833948421 195220030 198765037 801867803 989624330 709062450 951361619 731504157 913905046 830476524 880910380 393608331 667021097 70167475 264487199 400223769 890751748 576670604 621862203 798516406 971270269 692010758 753140461 514230801 999039745 86718637 821587372 746379992 884126390 763180116 770890382 761319918 865744976 395684210 462785005 64168953 87214114 52446031 638449216 302145501 734854624 154790519 938276067 696439704 837712059 329155586 424544595 404866627 571224237 15050736 112836443 140560508 720259313 948285724 983745624 851218540 916494152 327287472 987690926 886230515 938711500 374238403 911751739 36842288 902817151 117485100 501057693 902721373 917972198 368681323 516217397 323103975 779298959 21609903 979418860 354663789 894379740 927782321 986415402 317038802 713115144 818597500 896724717 519196283 983559688 533040545 646366741 457533948 631440231 75812308 220666835 341566954 390245026 998195671 998379414 476456593 649892199 231144118 241660500 478815269 807080187 342264104 940516425 24139214 835177790 845442045 877877925 838326190 856488078 442286662 486326926 997209301 998296063 722975319 970498281 587836598 797143232 643334694 828450178 445264610 993050067 219569989 610013837 810630551 919029336 741024926 870000325 867307470 929676373 347297587 968432471 158660181 446300826 107407315 292674560 743882354 894224301 404902530 947563803 310325994 972585576 523197573 686661360 865314120 890014078 354639274 780178551 841107386 947275657 611066906 973669545 434949477 871620303 791238304 819814046 269129494 399981353 301714167 740031672 246475454 485367577 503433120 554458088 946699987 996411418 495475695 536054807 699238921 830489699 221634147 247714894 869428058 890819799 231837604 452630789 861928627 942271775 466987686 831293496 157786941 268041287 122737191 668169317 849407624 950331732 928178119 933769017 80174979 393552385 525759830 887902349 233058517 558461847 160400742 474754438 534594706 612747062 33631579 214171171 302377120 763083192 762561129 805850997 357089235 919778231 463136347 479284225 189921406 230680699 824869534 861742585 113721397 128468406 574082249 961321958 167812756 573346030 163003728 642176164 265544353 614391342 820117899 902809250 850335828 924810711 990163392 996636755 538313854 624009592 569026916 637896785 864270133 902687536 669146245 981442108 946148093 960117047 886038376 941596651 938020751 955082594 557327642 571615337 542710497 671453214 815971731 986222060 412483028 581182120 592406402 664153795 935940218 985022924 330905254 415454005 969103832 982774321 925480016 969899668 146410400 513259893 159245493 438067423 867445922 933945115 411061819 479847487 741162617 926205653 208850746 571496434 310172464 870757458 617136750 811533407 57156240 654207582 172555580 298064561 164853754 910656317 812589548 988515120 741117262 810679315 867157925 892860116 138458489 824058496 290324832 936559108 898624825 959631502 455743579 750612028 712521384 739737665 168335567 905414419 322530184 796363463 8409826 672920963 368102212 430609728 932721339 947698438 63553981 948102018 159681788 314664726 906520876 982772363 658880102 908490209 277229198 722936736 133603103 407764618 602120683 724713617 221618074 314452694 70909035 261881202 374732356 568187863 673763488 887232662 68945830 692576660 909084964 919992621 496288880 729610161 131439062 448948822 707974590 761010663 380133304 847749843 478806012 913116815 656276390 694039695 80052256 236638232 434914009 758838364 232625223 748108637 347499364 474131540 56358516 904667861 739141228 952932935 726603053 787059965 458787746 536713637 156807837 656663120 480078618 596894190 307857703 733162272 716902145 999636075 236011808 796491720 401611114 747267409 800656999 825653685 264695387 347290568 14495642 387569693 638040487 921943305 386125374 546953513 494955568 862662183 308472202 907460283 757737512 819014104 331240181 871126642 12949695 493976662 51860098 831456006 378779987 801756769 515862296 645432808 443964490 872495407 471046735 559734907 648147827 795376963 607905796 740273278 370772964 863273818 626516915 861485405 864734288 903341934 113439358 405307774 434893393 539986769 19861192 166372134 454126125 633072129 500720919 515210732 887527372 940775439 998728486 999456449 640222006 684737145 876279632 926932997 634666673 994443540 54887861 290608652 663467942 910822482 696938965 969677881 308193447 604776425 819923305 921716955 638725368 971971515 566593563 957735848 733694636 983939769 51953739 684565600 767714141 896370787 806398457 950223640 163724280 880660987 493143580 699862147 182122200 835131605 49738330 965622265 241967585 926443205 94613032 271006647 191292674 809859290 425664586 428781891 783324632 802368533 136419144 740342574 647146334 796668516 3225092 725066649 869911091 963676828 685334292 728604248 61482662 387622993 623092004 757598078 729579024 783472285 369141226 982700389 716690655 735480288 387748472 628839266 846555683 957028059 887557327 984030000 331869072 373514833 766569876 950081990 601363572 944771346 418398024 744935746 110019549 469838531 503644849 892309754 227281034 565286588 226507601 989329408 818521124 835950124 434776142 637054703 157812719 333171009 917185310 969914988 677040164 897872797 653189170 872959905 645556478 705901779 154243372 544711002 80701885 721513763 387008187 804092201 800190522 983933078 332836143 738888481 216148873 981573854 58806674 547255060 364789336 591672740 26823325 895791601 310924107 470487265 243745355 509131761 241307460 936879698 392186366 776829573 656425915 958441663 817993236 933525069 659392221 806186114 462623023 839342380 101908948 310428957 54333179 652100271 299288137 464936423 227285968 427802362 180949107 718865909 653689590 998143078 624588170 719519646 233303428 341670961 455105921 888583371 222598217 357709503 580125196 957863969 979562496 989615611 804401401 888736788 260525666 502642933 448539388 874967436 13612225 417938140 150342306 186213063 683300303 859946832 848020205 911026520 350822053 963113000 775482344 836030190 826816861 922484468 349280581 609751982 390218421 708567051 921963144 925995829 468199364 554910301 181492161 264295604 940528270 955239306 180716441 772932792 130699071 270700673 448682453 580990958 181793256 806305251 151099321 739317716 243886626 671411671 366889300 463828206 164760948 228208393 779942058 867529944 993383074 995548386 35221125 85945623 921600096 988604592 410484748 457869713 363157177 554393370 73759949 528155001 285762090 454588529 821281031 908097411 464340043 601105820 210005895 871031768 70007121 85495914 93345291 390809040 1257986 171156331 768285643 815955745 41589570 109278494 768509532 930056871 245544067 691062815 904980076 954340896 584602181 995658524 924417571 996894873 695291361 763944351 14517634 593549455 195890614 839189419 616823808 674256583 736168223 797182736 544315108 775250585 366448865 581805138 442262404 849347858 620893701 924953382 424546045 711437231 681367015 789701328 583694927 854316285 996586719 997819049 277193108 943360956 647182147 864355422 867239344 942219214 370429110 430737542 992077815 993589352 718804405 953571023 504549166 629818312 83743359 326714886 359018962 457804600 407022401 810271135 761306756 780723926 364763227 902959524 76913549 972944899 780447557 983696736 312611892 609595266 467598632 915011720 667370394 859372633 83635239 811728655 604706797 727861631 506617721 927572595 27319115 961302775 762252387 858076317 343255774 973327983 431062720 465327264 365116745 705130267 387663736 803302727 934269080 967526174 317301097 525668159 201517802 911810372 826302153 998850603 830295364 847834617 196184 69124705 158958407 652852576 542306408 887332113 363910657 916985345 162857347 750648125 305870725 607557075 173228961 210283166 67632326 287908565 470681388 690011063 408524773 519731490 47294442 152434299 361183634 602649090 552778174 908988294 760458854 814973220 282557804 504022649 603083309 760572997 243001159 885271519 669944470 815492719 696156712 851851333 39450562 698670968 754321495 821216062 261256413 996982735 227024483 484988409 288421872 970045036 298117215 478621937 188661001 240957827 433686666 868533435 354362380 628296506 110130357 747189374 330904089 835490084 69171219 439441384 939548831 980757443 687042985 991239255 104292032 902189931 105440562 397865202 493232170 699902461 339009811 864736702 385790207 386468381 202698166 775014618 313229815 613764488 913877382 957135770 852544498 852872120 627644856 825065597 638246974 659105292 783255379 831796952 105229214 274784361 971636021 990005569 505324667 942022370 106349709 496351232 322395027 941110477 504556339 585488575 855469194 886639030 441978835 653005197 596478387 953957187 470137987 611988873 902616559 911940582 922237327 962936482 296554643 452497194 444709250 448082348 555032835 876554233 636245467 845480014 576600256 830465760 401875030 513218785 241675914 266235885 148384500 726653871 849719360 997205758 775252055 797381303 581432037 628977655 379401369 921824504 462049357 861145177 196152201 579799558 329527540 415853995 669216627 682247418 738985275 779476800 979087638 995669857 499673071 736738715 791362800 950380919 979366069 998111573 474000799 580871720 625907677 718694936 731005377 997956555 476932683 715602579 405970990 597145030 553467279 980970583 351251728 460485378 73486217 485355106 841168583 973702736 827729384 976930510 62874565 179182944 344064454 964669548 951037980 993071978 253252277 839835854 877914506 977223519 294736296 478278568 268848672 348227538 199520241 582039697 534041132 741345782 90898575 953735371 285779512 464563219 551654986 959738926 78081178 442412987 158189664 420304979 751711344 882685279 280238838 889716890 848524576 869328260 54264600 508917499 436527414 552926746 126917038 782585201 686207781 711720313 23055664 652564102 894146460 902564149 457391519 549673807 889208360 907642529 339650297 662736316 154863355 461042231 834901234 850656872 792383257 917778499 880976474 914341114 678934167 720180147 906797583 957620428 743583010 930842055 654578707 900393494 103622525 503725764 101711229 681992443 676855487 888902150 150421136 940235515 504674915 594492493 557598938 782244199 33867162 991917998 146034289 777722997 567240546 883378234 94403568 457178604 469541777 637303608 501081653 601102025 594350530 983998939 763487760 775262471 46925384 966823515 888211325 960820477 417227588 646057222 763110810 850250059 299551406 884823951 513168131 526187584 151895740 175459448 736043320 948208108 994741981 997049785 741470663 918464431 488544039 898586406 636564900 914424739 981895516 983671933 778778264 907476249 762236647 998068619 650645190 845991612 960549851 987377634 464575381 565666301 171289771 309116096 702555192 974138512 263739279 563252475 887279633 995421780 712026767 798932325 107778151 533110338 682150002 992956723 594760964 837014558 486789929 645156980 189255318 280113619 89297970 863060944 993965290 997365228 932509530 977974307 382248121 388051969 498830153 971795022 67380732 253457059 984713941 995289996 47749511 627478388 895725643 928266259 848078045 955997521 275829529 872087760 201039144 944765337 238072651 522738476 110892565 778502651 718649839 996796931 699500357 836031675 122602361 571905453 160450386 454736769 667948908 769445506 671214932 688406262 236732805 363554691 211157982 213513146 439838182 576067350 484812058 690154341 515655169 930927573 448997482 763992231 391249963 538757632 861935124 873236330 460892794 697222633 827509371 918876582 745724986 987412990 128868131 213911261 508972463 848697712 582397212 997361192 327288221 482504965 365625583 888900861 401701628 622034441 283887195 486542337 977629672 993708327 874176984 920620519 814617809 916130128 323000280 530503616 6330433 709762531 79553088 698166779 397495620 574032507 131279864 370558965 382634921 967772973 66843842 660771698 587125467 943826309 398458250 973172189 883314637 986488842 514900779 810564818 423334923 817107215 459757862 527451146 864480855 958525878 34157748 91083616 421214255 440814238 817568206 824625195 683771840 946581613 605459081 783301966 355674704 355915643 403641474 706782481 250407281 873703500 740210783 964457659 413258605 934510998 535550004 562539986 134173672 598775082 573685570 960235913 779391145 847228660 501144715 900673506 724677162 796463276 896820168 968114600 129792406 715447518 331756360 429326460 665443685 690569459 955719492 964958032 764679941 925956239 155056264 970987657 512164322 599789420 313371107 374180536 288475344 861118685 989345631 992728145 545629729 970129963 486880952 963594008 719440936 790457918 811321393 865739329 26031391 130189931 826948038 994754575 37436768 522448870 206428443 902343159 31946168 155330595 977391338 990775412 415757038 904320251 94990945 649764746 910583614 989195799 254171839 612741541 332715897 789829438 597847081 853878901 663012346 778210315 585609468 814546423 399733847 928315383 134991833 651824936 351290104 769324079 397825275 703107035 743215181 747021150 999427592 999699130 610408043 908730920 657286707 960410452 7332572 524317661 940529602 984204829 540359434 772672772 823405535 848116654 252502458 577584804 856894359 857521296 951004991 959883083 880326976 977367896 575200348 649397280 452373808 918802943 940283063 980858197 270525267 805160065 846081593 931119068 431154522 818932814 345088643 464989785 275738078 405857910 726940751 935922635 167514784 450005320 981611754 988207446 399858945 478970310 622608126 756912996 888492224 998210701 811251942 867259710 326130730 683758372 945648184 960729088 502534394 943958984 610871699 959094265 957968498 985729874 157014761 280596985 374364190 676986563 375425762 513950017 917235557 965694342 303093109 518627418 793867198 931378043 40982910 139626627 782941501 950744802 940206215 981080331 993395077 994059489 232880562 447969135 643993875 764131581 264719066 922340190 97389226 250253257 595060659 947025699 978696117 984199257 271944835 862940259 131695515 171477561 744254131 948231281 793502277 946335185 965208252 991589493 625956562 965189640 46229285 515257612 893848720 920807385 536713076 726652624 594161002 989553458 993143685 993693694 543443917 962975526 301698473 694912703 803532391 968487391 481369728 930812648 475957731 931049768 574191755 711133014 473548895 674343544 24676125 740834413 1326343 66540146 993868287 998512622 556373683 964066210 980033827 986784796 394135756 958306477 313746222 748461713 679112480 984792917 534725680 705732134 767484807 857180897 221860783 843694478 386153152 814324657 942311400 954828160 838111248 990957234 903957143 939695346 248381758 574995292 284372584 511230405 793505199 897692378 945344097 981863651 977959938 994535786 759401262 983430271 960440938 989705381 696519162 767298880 787520337 926901947 274152877 573951462 970859794 978673817 284233370 845942811 756743035 938580638 357628304 623231157 503719060 564440091 24300007 81247588 480140495 614582344 248044616 620528807 284716780 511229110 334093094 658238691 613862064 684836738 778003672 797089923 292802369 872724833 262390814 563541834 725591141 945403560 238203279 909999299 679260760 705963600 97238561 702433247 597062603 817647295 450126138 569735932 370814404 464127438 937032525 985222976 913489163 973205014 389307996 664360037 136930650 849313581 39626789 425476148 440160762 663800479 689256660 757874297 269110154 584545100 128082904 964633174 986029025 986809086 481617611 909329691 758629871 905817092 939619961 976978474 368892382 877481237 555258803 937543133 644871058 661126119 835178866 994252824 952480781 996474746 272604898 985736639 709371486 937847573 501202811 800863328 635419149 856258011 828433382 835185686 840952682 851126002 838998706 898028897 516005125 536838828 730323654 933623289 360244172 572465694 957984408 990013845 467090151 839190537 54830872 125696988 697591533 954234405 678782208 777847354 116379016 435198389 331964262 896922110 281424356 685809210 700137916 756412027 618444270 977855595 253122540 979277838 39531005 258312681 442070501 907682774 199414532 804881794 443551261 493816164 588034532 768390551 397537706 527048361 594960097 867978374 591709755 622836478 101231624 323989930 496228587 963323821 133670654 539393321 604425392 776471286 542996462 768428436 471541167 976662077 442676656 452087621 788782192 916373344 730268365 932801735 421415606 741806146 888162920 897249500 650404074 898735146 237269243 326069897 63855902 700329251 891495790 892624800 756000070 794929038 115594015 576330769 409864056 766955135 795271853 936606540 512702281 521512729 606293459 981841504 838667330 913754059 710369132 737233478 145498703 321632333 327590755 414867848 761748353 842219662 414540488 988852234 545646826 943915313 30370710 889462369 889613483 925363047 401124727 508801023 433088295 946178541 139030102 351111973 772532584 962493794 25839605 784295687 717832209 979384574 312908944 723826778 670981942 777441387 98107622 966234776 845060869 871361802 10390170 106748695 814022838 815705227 411577007 693798666 597618457 840992318 71325420 330293818 599508581 794705186 250791987 948253502 836982920 996467433 453844347 572856022 522524149 575151550 68217753 157174838 415427991 768070531 783097497 792396897 235377103 884171734 619054274 855552045 369500993 766976922 168668725 330847169 139051603 193715160 409595098 767310007 642239180 793629630 220222673 914972304 100757970 584495117 742898142 873481466 985332545 994373087 372670077 565637305 478464549 598916057 731395828 978154208 781140290 806799158 197534960 901447521 979706800 999518086 441479992 857445556 673840866 715612915 891418288 932753694 184238043 691555017 648717480 866271101 852615604 874160721 847243340 945960464 781751135 952196073 99102001 210379819 822230998 978543266 683745411 959600844 665313062 741266817 874740988 987472278 652820000 902121775 5574307 501871599 677832311 838143640 229932459 987715932 670470741 887551445 195299751 856665158 302087032 316186583 112564761 707532156 294212241 324093560 61266649 132271522 431995571 443696674 354897876 449629683 49968449 725881007 967229919 986838055 141195234 584282053 755597328 985160757 889202683 978641390 645309693 677799043 853488237 865733145 951685352 958433755 480730344 916646060 935568028 993120651 685866774 933525190 655532427 686283936 850703005 854488453 791228908 857708542 123306198 491976950 337487643 696713338 504007296 617017452 54746421 627610954 3252727 963443754 242042905 339914266 749694410 927538793 750420313 772816276 111981623 590019112 616575744 927034802 147533443 871594291 657691760 664083201 679175761 920861106 696604529 712749440 342010042 761199001 749816037 921602128 105029978 553962937 957991230 974380873 538682712 546704254 262028268 587938063 226482036 950791372 293590069 544946881 579600921 803833693 766303527 831177658 696000923 871507065 697383600 946835573 814012322 815726984 374055983 735754523 733110626 892088151 992265892 993766994 469167853 861748926 849937310 894307990 560576534 608255531 669954710 871330954 567304279 907219662 706406245 788688674 369341331 924084679 611906567 813361269 335598634 581029295 448074439 466985958 548995048 622027541 893958365 901153887 11309367 920001050 144966587 528256988 261314294 900652810 399409365 566121589 333322479 790979705 333783476 666007907 200409100 661981121 930062833 944651512 193988518 867687789 64250505 829554788 884854765 918718587 794291292 875088572 708257089 929014949 251706235 300711815 203872929 498005039 889954088 976750786 269042086 306520419 792313049 951851008 783025376 815769494 680772854 758060214 431026651 630716360 673223057 834550269 274189548 669862943 132596187 963134379 117374175 634517543 190222245 805204314 781594732 892612432 27121098 591867858 97665727 907117937 117583509 826740058 575585616 903000975 60858405 170797055 102373535 437508286 248756698 422718256 110770202 482113043 795100321 985466247 277424134 959347636 220775842 740136880 136143088 475623906 187624004 872715414 406603397 683401064 369529320 394293831 633048441 700538910 719299192 737571490 540119710 696023634 690526833 763688127 563048931 774072861 384332146 608268261 930854042 972595558 936096496 977017054 12241412 947787565 49215748 847909681 439617517 630935530 618355961 878929789 774931097 964756061 286410137 600621918 987718836 994863623 826981978 920408197 830345198 847368232 45567417 280955677 611481054 748201483 645116720 935277976 48316752 295779010 116207470 271009871 710431002 833864877 686219016 731750194 689083260 824532326 335371278 761643270 715350933 742904248 136841293 818346847 268811604 346033190 710391409 894210213 328227112 805225879 643575081 821330235 266855078 579769309 454921317 462097199 431573193 512016431 183369387 764190516 504300846 613093883 666853993 881288471 102037783 820067340 858681970 971720401 10799456 454479536 892699279 960150310 890250725 897509755 215370744 733417550 651223990 667998874 358631445 879140218 865799014 901955208 82409080 942459794 310080188 642950426 255369259 317051724 953258383 993393511 857609330 871280737 580571904 900150754 462999309 639647185 84669114 178840124 307421668 833806199 340720929 792539134 862684429 997963378 458093717 987616150 566712876 654632197 272118239 383854319 425658102 492114225 564470616 696241821 452347087 515063254 626832418 772011803 641518475 826255296 619576035 883077370 522729334 608335480 75450662 752103618 727002461 823030286 532757038 847336914 514652413 773532498 85268639 359132382 896261312 999306506 30906984 864972111 457349264 957974060 716072405 884566036 906885662 999759312 932653405 955198398 258955626 604420323 734185981 952075046 824191707 957987855 242340422 596669443 72724040 414151263 978377676 980241391 380644007 961578467 301516737 854191338 223839849 774478200 911615916 951325932 746515570 806032175 458834372 820638253 903607833 934353792 207714429 209848189 229631829 904835575 361981953 783892137 511927601 922092485 718850890 836195603 963038854 966740090 804639144 876010602 723112035 809020531 584129410 938038340 513964270 875445323 35822481 846926047 582504981 732118099 50899487 585085487 326429178 340071221 859606509 897208470 199082714 206010857 329083018 502151760 278826104 950072409 682526444 835907001 584056419 777707338 516120595 552448274 897590016 909542764 909953901 981922211 349148300 571801373 218088789 926706924 369049846 805186511 668722329 959484521 740234933 745265356 796601293 901835006 692872844 977768722 317051966 369815437 380718591 863814264 738459854 817964074 737092861 803055722 453938665 882018321 219960653 454265443 402668617 413225349 447733282 993545154 816795655 954038582 176114281 622508815 516020404 786537693 907049417 943097663 87276900 403142187 614362166 783115229 720101817 747215423 970008206 998663479 335882563 591824764 17667664 918600141 859355312 871452825 425175719 702993146 499633237 503814363 411998525 810067203 458667464 913754941 300039364 506444427 241116683 783519744 74308611 719877021 628881443 910469730 286066043 868379038 812689436 959679883 181449333 301176979 268070230 880862835 569824164 841941794 381616106 869734388 865357669 949710701 903361428 908239352 704560782 918347716 919076076 947793636 693162212 831228101 688050492 793988679 769601475 889583687 422996262 822469552 350275008 702491765 97311732 646455872 596753059 915957814 233936007 331871539 943037958 980041229 338650243 795927670 204931955 700140169 871532628 905673693 765357338 810345582 45447021 208030372 285814917 937586637 674126051 820198715 115536211 150171299 583412460 638704639 548500115 879382761 193937945 462384066 831546774 921331863 647234526 829493628 615771666 642708726 29943020 529728225 674358285 945219011 767737791 969429263 758189626 807284847 683986523 913732912 130221573 968945263 862137391 908407604 944553791 974580380 283633186 566035872 777540368 886890266 649235952 956906148 669527820 957845918 436592278 439282213 244744831 918979691 459531647 758666111 93403845 324616836 994328308 999000850 654090408 698290032 679744499 965510440 325662982 870472511 788054015 920854881 999592256 999787169 402635684 870437121 820141082 962077388 123428737 561493436 35669792 881792462 256680693 381606762 802947279 920205284 746207065 978451839 14645213 357203518 49626105 196155525 459101375 550052120 928105675 953136689 861860419 887810926 386485238 821105647 548022115 638024748 947609357 975759123 696557970 763635457 147654048 917810756 500587832 530068847 598339236 623758581 44784361 803350124 564995226 866473111 338296656 369546817 138193598 519153944 474478696 538333745 368578137 549184298 169921826 481095084 464619707 538847383 578440832 777271719 696010807 698302659 144092511 790594880 342664553 622566919 47643130 105511256 697766222 793287864 577417225 780611315 263209467 297573719 4648185 960599635 614596758 978964700 17416093 895677045 630393148 698503418 230635357 681865227 847923399 878985158 277782145 510511317 31579673 261154842 430928379 982080510 400794522 704620305 63764687 936219733 583641535 937398205 7143856 146544620 272827486 441276378 510469924 945864985 908192333 991588540 119705501 521864239 310370771 511715422 903337546 992737690 114962543 939528801 870495989 979376086 313745510 338604367 72144170 452628243 55928082 457239901 84398441 826846219 778859475 802983443 705342665 872272922 947947592 979551670 743285728 986632080 70636572 841304066 291368818 339748714 896399988 988643624 736258183 772711403 663334358 830435166 480489335 586939341 544712699 623485989 635546219 858045954 892610216 963434955 897476012 992879117 963259568 995707205 643297361 816829417 893113290 901038142 271952535 374573535 132803699 392020926 780745655 822923186 393835735 508474270 965641466 998480113 141912837 875131866 144278404 433427147 797055283 855138089 806908768 819719934 508316555 848906736 59449968 313213206 387400683 398006311 408329093 577190265 960498339 985966613 483438698 851037485 873695990 962040184 718110353 773067617 140795733 184589670 292883426 829758317 675326243 972048689 963118540 997855990 560377848 628948523 142771896 739189413 787615311 920754203 189466407 670410975 146248141 626073100 146055673 275211051 946093733 985435151 76079300 527214946 267962507 810600657 408259299 762734792 894230223 940690552 133684342 621240412 587627392 894942908 269683026 401383664 381919292 724553511 700141311 746682298 507058401 666195048 490131292 715834165 72950292 573891961 36953940 793298150 634852855 809585656 942966701 986660647 828379447 904646659 344646697 967098099 375900097 885571216 456134241 829375858 197157597 632156688 923189178 937220873 472246432 807670699 187851549 784863578 370753653 601042400 639314597 851499328 862104275 902177434 867262222 980213197 968045717 976584954 41274623 988281035 828633374 944520180 166212587 744950287 603801807 753971862 200166463 376298622 219121071 926180038 2915733 402648032 713732529 744008650 609333159 872401151 86339264 748817318 897088935 954435153 882133253 972580760 12002482 975002315 92751138 942673336 949948511 984443727 25281940 879616172 929309475 979302273 297401740 369457847 771636083 856515672 380551926 622732544 775189409 953197492 440740402 461509336 838877742 940813054 602024507 679538076 270926583 676096379 305030097 396788064 898184799 954072877 559401533 598998764 394489944 635925143 120927763 293889586 265280950 507123717 575039421 699248576 731904630 922745183 113748071 739287194 737726154 774279350 421611061 653648448 861281012 910414587 62502365 428827027 973734014 992916654 986554221 996583799 659706454 896883954 533875862 942986693 519150294 702071776 385485896 785626288 257385121 553169017 156106045 394738983 751746270 923251857 773115917 856365146 177228076 746407545 962618672 964971808 447327627 865905740 235504037 839711415 195866270 254771600 253347358 655677775 178098758 773420978 792827606 925627401 144629005 551438676 635907640 954509552 910523515 974403111 926287902 975771965 820057880 960408995 649690859 809438202 311723568 332497444 395202857 965775943 920345320 965873303 231529603 989215248 306367027 905302471 833673781 994257952 595497711 717083657 642748792 982736002 853211548 860488605 570073432 857484391 939724779 947563382 778578382 980918375 379660127 554783952 552520183 563024568 305060253 353643784 41484221 553052796 272915118 473164881 443076774 664960429 871919857 936853327 688692880 978105815 457731847 823438257 496212768 624794719 952416040 967119390 541527989 705910302 782911408 842522555 181242536 352454273 345527763 391033081 250478504 282636371 587471410 773355852 210798951 949192561 915343462 920900753 468966895 759421562 926253103 983178412 608700018 637402160 924629871 983295119 471759867 615470485 549125602 642958540 924207795 954128382 492788721 559785520 82159575 300653843 101195940 422051739 416706815 734634917 284299753 705874117 396620355 437168766 454872060 455238478 728319902 838253657 276622181 570726493 837254513 965711776 587172025 729088190 831186472 882138558 205832732 223661375 303153180 339130787 178558595 186398278 248335227 791805303 817222976 975482489 179598726 236687906 594633192 642095464 21077047 658641501 329955144 339832943 433155732 642154407 849672849 905728378 626325183 761076156 711530594 946096789 734469045 803370445 339001815 915330963 581338870 638785003 519025651 995801614 544586539 928839623 479567016 702303194 422582285 653048228 38020761 383256803 178364125 413803465 954638448 991833370 970035455 970774099 327219769 770272624 150905812 780744292 461378422 901106509 784303528 973904725 801153922 820459488 205104188 509921435 782251327 820634775 565492027 766350776 241794714 444572948 936101900 953908453 219879768 222583705 339543665 759386328 932241551 937803139 829993440 999236010 948889102 992489343 531683148 717870259 15524604 910266383 484231294 994012572 90392495 236235986 734693458 984855892 314933462 712965619 69143423 409549735 446926864 588043374 751233964 861540001 221889514 700327101 411788296 681407395 881749062 918789890 712918698 724533703 494862976 689275289 388913664 656971731 944666731 992432153 132624715 910778825 345222506 794008995 373984804 840988279 790297638 886024076 85229114 237566083 905717317 975081323 125045115 946566084 194504938 900324792 410201690 630846747 295305100 336598620 25554573 476526840 335451216 859057647 577502533 985777349 79989951 903484066 390424221 636535887 215936208 476818755 911660862 945737942 327148389 611561954 488414040 496468348 823258375 912155461 888990897 999135326 11596 743919062 276133098 346496651 511271267 584808052 494542967 624897483 344798043 416776984 578914693 925693171 362004354 453489202 225162544 603917100 317070656 461628023 179788869 630715930 56597963 437119999 960179525 993204754 637659229 973544089 340193674 995459428 36509812 158988997 647429199 649259123 298118742 601261804 269547062 395580917 525448560 716167281 421789527 564893207 702023867 913136812 480349577 914389865 293260852 809372699 857731748 901155534 90766472 612735256 604612959 906832646 191139146 865040363 930385108 933088990 825446673 986752148 324486206 601457919 350149077 823163327 858051926 984845369 991822454 995201237 966771903 985856659 89372405 246803361 634766802 646161262 79825761 260375879 260234545 889103599 566431414 808778626 893392700 972246480 943542630 980638998 96857578 878406241 813746978 974870992 866698298 958294485 235436006 749628920 90746987 897076570 827480591 930801271 896759822 945101862 964137914 975804917 471798920 789105422 114829565 359125212 717578988 717660101 546974737 750044740 524818737 867210567 469738747 816621310 178702458 881602359 515894625 687437228 1453293 158272468 481893778 565906451 424594784 637559299 145272497 330214464 648559297 903180462 976207244 985698050 338966283 458366062 975264939 990919650 209140017 585353275 223719948 644358431 761673138 766124865 283407729 471172189 96165083 363045815 103439014 801762861 440251533 906402831 422259159 907367812 905993297 917742965 6769310 547916529 406379996 812386973 197654732 276742077 214448392 757493567 838635572 846810757 459611291 486376928 724636696 731588139 14521832 210112276 692889677 768675977 819002576 845594057 443827764 861507517 653648539 738051740 397040963 521816448 932588725 973867157 128487257 675153303 487998150 905930927 948634089 952419608 979389044 980895950 444236148 986222787 664102722 747721864 907341080 954531977 742336875 777180525 486353604 552041369 756058090 757860889 457626777 738056125 631825726 843633845 188801906 862862962 865710841 992741356 573918219 862330756 993853187 996795134 661981557 831751119 132379107 556420967 794291293 819853453 757565874 917552163 840282392 921726222 959242678 978162086 558829687 664226055 466188491 778322340 435990961 991410460 969467952 970284889 170306662 608377126 863082693 984476988 131560226 246443604 984190519 988547548 973471949 983243424 732888571 828369768 973632976 988364699 129378898 210204506 615058897 628124005 362487550 818393809 557484953 871987854 789325132 882459451 832831666 904881787 492302765 610622238 150842661 228639055 831803214 906472863 829393574 991017752 484469208 753179510 403336708 896323740 763060741 989181812 185376714 908366272 133287296 672568378 835964 294347390 953646076 961109168 606327490 909390867 249779775 860119753 875334687 938719006 246902610 475525493 198950316 346852797 502720550 572741841 121848928 619133754 195280994 491963780 129910196 375693315 73697787 266011760 598921986 694062383 416612155 937779590 898951849 994963174 837147500 869637887 943581987 967176661 502580564 570035554 217464375 969755405 330869033 700290014 903676506 959225744 73890954 293708443 13400938 791882432 366032613 491863017 863817681 990825568 659639941 733505479 27097490 348692364 199541279 752755513 123224373 249508143 731762276 905530867 707508937 774652125 699368824 897892292 827437166 831940862 525192488 929878662 910371253 979569363 449530530 606364845 382723945 685260272 234935100 317996370 934777904 988920062 87803660 760146118 263946628 997519371 387096761 970706863 421205365 748268174 341816596 792978420 261080628 695844477 416156673 546762619 142881660 459063923 438478580 995551156 890566928 907841876 833526488 965391208 828457694 997458745 179060427 888632779 981917438 984235743 466753310 547121574 996261397 997401343 586170814 865546150 893791541 939246228 31552976 168200275 415594403 712353996 696814438 971400837 247142951 534392013 869305029 886570979 287715070 775289339 422089855 877218324 29163849 716350984 227277763 660217706 541822981 767692733 534698419 590714596 636888261 694437554 338997447 443826008 492371437 851885560 313816988 994792426 935222250 990013095 693928611 698271211 901840381 928279187 62008875 494438409 908795928 951482156 147109068 548203377 739599478 838436596 751084278 785887007 187754435 206519301 738023089 931909564 497148111 834973281 607830553 951551418 880338538 949140571 817180916 881442478 444361015 594479906 323056543 552798147 88602605 367875869 285303454 848823538 448887483 911433998 735908771 792887480 19841571 640671704 895370859 991497675 243500469 763736604 768158972 842505208 299393705 646333792 670929449 893136881 313994192 623091643 918059801 965286838 710868778 988407712 393101852 812697286 23541829 141349952 807398831 963677622 150962868 613063088 871171490 876920408 879019035 963294851 882071847 972773467 965763983 965769851 521186279 604219354 927897850 950652618 639029040 898509708 53515726 640494486 882797704 994019146 493464949 504836150 656281141 804590480 129039544 351582995 400447860 481516107 664020058 780447155 394133129 802805374 224044219 722693915 630908819 687669450 916321598 993737177 749106667 875267330 504989788 998132389 182429424 471178518 679009561 988998013 112571917 962226378 481848577 526571550 959870453 972333184 540719294 938112688 113845378 243346389 330911350 337002624 68300365 575117701 337617235 761668439 323655751 505670794 819400073 914955024 953005050 953084490 928922539 954907490 712285944 832577279 855789311 867247913 69152745 436411287 933883919 980420258 267569640 679112224 234499108 378559473 387255743 967299950 604924382 695578034 926994072 987154269 180539560 373056683 817714853 851228340 157014288 293532330 99996087 454298041 773548256 895998985 401792193 813358620 438870445 849935163 766129869 966731359 237911402 719370798 464985404 553054576 148640452 877170076 78459445 827482359 310608324 614735493 863426064 974764619 76360885 692727822 164056281 592061701 639286531 841009241 283614806 438848680 584528797 629095810 887615001 912454843 28454573 502272727 891393375 966947856 595516192 731674189 307859019 704807579 679451715 909874009 373369883 669326952 690473210 795400554 386234777 516761331 123804496 172221404 258487559 859868826 609547798 836646658 487583693 560487018 532648450 614409223 239199668 676124522 320610405 861522081 276364276 497673728 713280798 901086708 37682394 183461521 540652263 828690787 458264770 688192193 341210064 611769310 285241470 344560165 81309953 934446800 157190032 505038792 833804818 960116760 122856379 907580139 925239175 945858445 520296080 930295027 765766233 805614021 12333473 929118416 782235577 984471132 61710944 675122014 479999018 643670571 358916711 661547813 962199541 989471943 911000888 930464888 37428503 452350106 742907165 851563609 896978098 997220643 269554627 689899640 269575973 291615426 103174560 762619534 730186662 992019500 79450165 240355099 521945348 729384330 774116080 796969958 440904022 979802470 964088226 966442542 687952429 942522979 497597252 739742643 915174811 986518370 6572334 619073649 13949359 524664156 605049898 685337101 65239403 976084240 805624020 910161416 74575359 626491249 167295291 451028106 434200890 513201456 957524913 984328061 746258496 891386982 722813588 893552204 799623286 848907913 896753949 907678078 427312836 846213041 832920539 974709020 125243611 294686163 495145526 680188262 155154949 609213248 346214359 759623378 611704304 777445513 985861433 994903079 832143906 889802538 561754091 781400249 610439024 926012631 560993632 580349295 794668918 967494406 871426922 963935532 233659554 253842214 516795383 734012456 263658339 993332826 20933684 131631961 288019242 862231847 38161579 342797927 372025317 626789176 987760554 989834659 762731679 975378013 546368994 641294985 357337 336688834 763250272 932774268 883524164 975976130 192918325 434655126 893673351 904467332 793981135 999664601 573735402 765032100 36396396 590024194 932188876 952877921 247401838 265991160 979094468 989474666 19576721 770172226 124331872 289048095 994268127 997992172 150856245 502210195 947523579 969809385 498071018 826736777 204216149 953966840 638634955 954660839 449784537 942162062 67383571 81048137 415730666 418517643 382097113 408489182 759626376 873207440 254239697 354004011 751626248 787372542 883833991 925280880 444951470 745443115 727223792 752875429 553628293 951523038 645569555 745742164 16505435 793690084 805145146 881798939 268709359 880018358 43386605 782940016 441033872 805201657 754898726 968361642 375470190 532189354 943669910 974688774 966753571 983605116 719662512 973464817 275381207 405838662 562507378 919383856 144429952 451854520 155952235 516596059 751651046 928506820 262796239 862838936 441582296 980729707 821545495 829554204 537970266 599709265 167589616 754213357 962299736 981769650 575639037 703554736 901080728 972264382 214614969 358214548 19949760 734659376 150761135 405438603 433315090 966960222 384729292 740034759 874607088 944984303 949568778 958793594 538350161 592696154 985719807 996634987 153608640 508545660 755417459 832233013 717465313 781657282 836162639 864958923 544946606 754224327 531754345 842279566 202910010 845535342 805251473 964195259 622918368 701804222 323854097 650930654 918905497 933489760 993916509 999936814 66377219 604701817 804835834 829432386 267904348 871121735 76617373 998648420 147224991 265560290 395195667 456833199 266248078 275754855 631408979 704326233 397366382 851481863 632134611 642602500 895198507 936350306 742504164 903678680 117492222 529428772 685558150 932313135 77184285 679587857 39917510 103661639 498673218 783345293 715680013 849568978 853248037 861526357 623876232 668404579 31310643 480143706 517242371 972559042 226689379 331746920 97608718 393786045 755325993 854819538 947290628 992582802 302596157 743250715 602360868 759818017 497665177 625123345 647156812 899623777 444016892 842109465 620027798 718671637 202021782 851537305 873333426 982316806 1775733 671940474 225229998 826471623 458636947 570094182 294858763 603889783 864166634 922339069 898686407 948700536 136287745 311556594 851335909 934489393 499243528 928500593 907838744 923292624 659109985 823960756 136540061 312561304 837570590 873389827 692739657 775979846 54194121 352055213 928160280 972400301 971001034 989668861 782942728 829379670 954265901 969128681 224420908 784997235 746482859 995608577 190006880 255298155 248648624 815640402 404764057 488668190 735663290 744442648 849297123 914039774 376254839 893580795 339129283 354228939 771805354 932386449 932208183 992358647 823078728 975966670 560934833 758712682 890203150 900109899 597641722 907931582 62177894 376384118 215449466 629710766 311353502 800955384 957867947 999820058 904330509 939142090 824532535 903032797 417842755 770822438 12558077 327867857 622977963 814487838 956055456 983785667 737370651 835723099 584839693 730064115 918320934 948665469 21283591 783685688 529002175 734781188 410132797 451139931 72576837 931368738 482811375 802854463 254272738 595210646 578756066 605023178 864770850 872242751 4719432 808830688 100860038 329109864 573937106 979152011 951659079 957570665 238433889 884148388 7762632 24443296 919986405 963844308 458001254 489698039 720757161 815971075 126172068 523336335 76153259 739357453 765841247 934361760 297130741 627216339 233403786 940033299 233018497 845002364 795683298 910842871 619543537 750600786 242595569 867809126 321694400 900684416 137650240 999899621 110924644 904671323 731167083 987638240 540886948 963544041 755419055 893217567 325874481 379745867 269250455 745434922 608697194 833158227 274135371 783696380 14159408 152723041 511439171 664620655 483655001 866848869 280094219 729178142 619835551 839330552 281874872 808757805 678424504 680248981 468761004 770457658 401751871 430534786 385115478 981331154 601753075 845691652 486592754 534128974 417316466 614181311 114427505 486838163 246384328 494797132 511894979 729423564 594058852 660480375 94730043 835463825 665963188 693751608 131899226 197441505 90137607 248429494 800803505 987044149 203655483 594704033 623961044 703367282 360455655 424860857 827058421 859468275 981662378 982578362 616323602 624856877 54837270 954240630 998836459 998928469 582919782 927586692 135369473 230657444 397345469 924626118 862022125 983453110 683164383 704995103 842666835 959998952 196754271 333446060 441502064 446235257 780197344 788751148 992034004 999350835 471250232 528513078 798320109 861503459 746690448 777018252 690316678 876715789 533545205 925519739 863458218 982347628 810157414 961156207 574897171 964157406 833568424 953615290 622760336 712011421 651610731 778653569 190974338 732697440 258056123 297377318 312913479 383231606 230978932 644183827 335134508 464591467 454986343 828008016 366302904 591215438 486668233 931102337 240160909 451316828 446661602 616960389 381863944 989143645 414410728 595371824 764545634 816854256 895255046 934234139 52852751 624330604 2094487 490080009 771227464 783045171 98989018 100473252 852010022 986666149 228012790 270386424 993705904 996804923 793859566 846092667 2720248 163436028 70539178 765211624 537864571 756859436 778199640 779423061 160542709 818981970 950396817 974335807 746800235 806749307 699947853 939859391 337918414 422269997 735248933 792469248 982679673 990290367 772978740 973532176 512202060 992507693 722648756 779681368 661535505 891152997 86799933 916916241 335353830 981209006 502032981 813531772 279707656 644462157 861348347 962531234 95467876 363857511 938102715 993677300 769027808 924622171 153903036 548215017 845223885 989272266 334028200 731354014 822744375 892306760 684605635 767767539 586821246 810248264 316747461 688245998 519657342 900442556 94169248 971253052 404013800 523163874 49578321 423162623 172265715 845271307 444539058 847598575 588027449 867966150 2552097 240395744 242964901 770607429 378935484 834921170 435780279 671453352 676684947 889405830 399767975 403012921 515101564 786408917 913336310 977612498 587405401 893572476 490570110 791345736 939196660 943308634 115931172 125182268 997855632 998478225 867582013 887668766 609455723 995944460 622671994 783802082 141816448 550956191 831583951 840291249 792377940 864013583 653626616 899171067 104330792 811715318 885635119 970727926 663029008 970723770 725248906 727324808 790972562 865992346 534728682 582044405 647120988 798911877 892852905 952813171 735110142 899942349 185118875 510789717 10254494 486345049 561285222 588983800 165979601 988956741 628299002 800083871 982208763 985881707 608888868 798651733 356412883 787226895 384841767 454279776 131668544 603031524 64383135 506414601 825570760 947193059 57244360 81510453 21571917 155546424 868005448 987486887 526449295 719665699 804036540 951370921 795415791 957212850 507839225 882160253 326558610 580307962 475334423 875420842 592566333 766042632 456912454 764599250 184900344 743153970 179652181 783988470 51135150 365183794 72853814 134399424 759446775 867609466 53520689 745374166 380044557 701911216 250381216 578968847 294286132 871677817 277865636 509510832 5241770 658154853 951287045 953195584 477461057 550291317 449720748 502459764 377430346 522713232 334613181 988915036 76730654 843264957 548945101 605102400 559582330 842684855 394727245 408706627 857676494 913203756 642487056 683486407 566392207 960400379 622036410 930367694 293251635 842605894 324350040 706277291 838084670 946409332 846640877 905454387 311991298 913099331 644276880 787721312 823880750 942312864 327946653 925772608 143509021 591244612 190342830 431619149 919056755 927367349 112267391 564990264 715277000 967924012 4381006 670891159 844243170 854908841 570009457 891060527 766160714 801476792 799382347 998699161 11734863 110196690 40030400 479132246 388818673 673674507 589609812 847191707 666494041 952821188 417354737 905052764 82844449 221269072 241913074 735969079 663517785 908285821 364640969 751565390 376469789 495078309 491177224 519142608 514538736 729173485 229255532 558652054 212358320 462984609 544032238 730499566 90997887 572701928 64926642 198076020 865930320 999967441 397938622 811181252 639273987 903662201 25918040 455524900 81470683 116551243 210529314 458034746 91622263 900057413 724154176 728467559 329037443 807355178 904859042 948423587 427292292 590653146 206595644 866208424 959621953 960909793 791269972 992740037 964623964 988462718 724830119 969834785 686624601 962616157 791330292 981017935 617156011 943745634 95679801 98658843 931087758 978557851 803940341 932846917 452415756 557824214 330938677 811814029 907997111 925062082 425052106 896871196 934840334 996249583 977544245 995023215 728836838 943341988 605312508 737582398 44405976 662595821 900512779 963248149 758225880 792940493 636456919 656943274 322169615 596807936 798257014 932561289 479266382 798136005 978865463 986816053 370159055 456076461 885493838 905433137 885190616 975734007 679834905 814260236 754012767 849869932 397468098 726366850 548867626 772162913 484893121 872175933 918070982 963388444 706606174 955845716 154665145 739204670 252945549 575625113 142308815 843517823 750486919 855045778 998052156 999906733 825948993 903564370 211975320 223436012 26515608 604169033 130078046 414162138 949995704 969653377 879778800 991467633 403536554 926685030 801468602 808659664 432450768 975933235 87693862 807580164 95903778 385493650 213840032 903259485 441244596 564033130 624712518 646317797 540576847 557975688 917424118 947834432 629386818 684000945 499938507 726183117 198677394 243398502 309089177 980123174 255244253 670277111 179912191 310429991 610879485 758742981 401377014 848020653 690668224 840018316 211451617 441110217 520816860 533907646 989539121 989857776 937394990 950448324 507731656 772871959 571785018 596069047 604052545 993838502 648642717 843703468 582235676 734697696 422763215 827920340 600569469 930534478 989690863 995092951 195412748 929155693 336698246 819898917 886496064 979171770 593241462 713962810 759755301 777714197 325556322 422641070 22365365 242870084 832698300 885303192 55180385 842533781 29409816 745448104 214875597 967134146 923940035 931778235 326446234 522706574 350679430 477073485 464294991 589050399 657955813 994985591 49799203 981691003 361705909 744180834 917942165 932956243 826632623 876522389 641063668 993167026 437904052 737566975 536525507 997952541 315015001 497659340 940986568 982233379 476963420 564989666 28802720 305258800 88712957 665461104 248144350 552597782 682375052 943355389 575797307 912435985 954043864 976290758 821718261 855923649 989079247 994081954 952843318 973798039 365253173 574494768 539207919 993998283 122200489 720962525 268447872 577404047 622130383 716544190 441322741 635725406 926042861 987163136 158692277 403995177 537359600 734896493 709102543 829611064 826201280 883872891 203110426 408965201 603720044 807548840 744770564 884031366 296872683 374428029 132359835 340693120 126496465 903049732 576070985 934598527 126543978 845310049 995047744 999560150 889239288 958090575 997376195 998465374 334728070 889028795 317769039 741203813 254019336 669168070 280034275 289428098 317100438 354475853 86942195 529945986 514345308 815428345 967195460 976078284 502125759 556034797 96184567 164152688 547305591 838579979 425373568 938035796 599294376 901534967 297658254 381130926 956981257 957597735 625655588 938977996 266733658 869756612 884552909 887672703 531950449 569823009 318192818 434957610 599194075 686820976 585428919 650523813 156872500 760775463 784299136 949344632 790080575 860679845 335478592 415302960 110605047 112974649 121319160 336575481 34945491 258628148 376147777 873914687 801924573 863772029 207383869 708082855 137611736 746081680 209792685 277803199 934426138 940785733 850280753 858971438 607878876 654047243 579757461 945824460 890636600 919245166 161411211 927336106 938792656 944407335 272050479 828480352 80274629 724461133 155377396 631891673 893279921 977266195 745797769 836761335 559872728 874426853 129460042 336764657 142746790 965888701 421636687 838603143 795796946 890104295 657409401 814996270 300084626 724645829 771790125 988300362 123682611 692548078 846447071 921640529 109470168 547995926 873253608 899106990 3195646 842581256 647873062 894455052 735136308 848298913 227265492 831894494 316577699 704332985 454675951 569987326 248192245 957979529 23111271 688953159 499231788 907744382 652849682 677551299 80475325 385201130 222241078 323608051 474782532 689077297 633784801 755343682 731934259 905525747 926528871 984388420 638164637 692560667 982916360 997099495 849429875 949262492 170237338 597570945 861444729 989139516 276415191 959526617 856731874 887724325 744474981 920590724 74947999 608377437 505194899 755283353 963380871 975373351 531636165 985411145 144876957 718053014 488493621 958390452 881882038 911923355 24716044 123506586 224526158 384275243 511838595 617762551 560215850 731535369 761451947 975060412 693812134 772612271 521949362 814110248 455860811 703685816 239303149 937719327 132879123 813381857 518542444 748070152 283335034 591053772 438231247 539428007 48757848 136521341 594898842 858248079 98420901 393526863 682355216 871335230 475193366 728166914 334401713 581107565 625490857 963783330 881124229 960819822 46640224 700303536 61355482 354441839 411557451 508675962 684261542 875342602 379863058 998839495 490846805 508893076 938820909 944697123 582614104 889350893 754064791 797983705 709851846 891058576 145528748 429999153 133130683 796022099 572221706 922645260 927699588 938789857 514378556 835099561 775610682 863486801 230068192 830495336 804333380 887580158 783873330 990266797 772464411 888065073 640723420 999860138 482252121 685195173 817666365 992695704 360994946 896900866 829328550 873365351 621193628 930946376 138078342 860371357 453502865 779534590 902740286 907733548 81057131 295965086 224268359 655580475 870633481 882969216 966550156 971674736 622153370 846060738 935521409 976308034 252484961 744881233 279448847 370246968 767157873 819021135 496697811 834249247 929891261 950867930 525869883 637090437 655192287 974368573 840211209 898752975 583031438 994364781 446796438 980516719 751896342 934092429 15826202 483550278 867569189 985182549 476358440 783503444 592492006 692543120 906547217 917357552 945398277 998729519 459707064 613328386 264172495 914988138 988921412 990700530 70115048 252703219 90180294 540588898 373130126 505558418 851858811 956065468 945133858 962574983 154974410 413498825 625822390 879637944 495504598 859085306 323288990 404630886 935564281 969842189 536252410 714981515 972481527 986560921 58236258 785724760 760221424 775392841 614795325 799105135 203552533 217911630 819898263 970662333 684480019 771170504 28700572 299184312 348546265 383797936 981097078 998298839 523355895 823607952 194209257 703375856 358869141 473874652 152931045 921056929 135369901 846427717 972113308 998539630 469950711 829668138 20966044 741295086 103695264 214963871 57859047 120080010 30246240 461982854 329699962 352873116 258161619 600222721 378918054 954805049 968241329 983275774 39221119 466931370 165677607 819413378 134765127 309025238 493058931 631729204 776225064 956180849 862569244 918541920 755745178 923733098 520607675 905956297 361244637 715759798 972691070 989001698 150182977 573856646 978678781 987674839 391669849 923199863 383596909 488581701 756205322 770407483 472195500 571479691 103874383 257809421 73079645 230191129 172125569 889301021 692213199 826545210 146566069 494393714 383398879 985676667 932557408 962877471 291337371 411532418 786003426 953628001 559880136 892277900 147281150 928796978 641987932 812190873 1766439 378232576 108323307 297559293 312269614 968308312 233078081 994003866 212828222 650495061 56495030 703030113 17402664 214969504 11890026 239635286 623850311 786358223 972817481 977376107 882845007 971700825 251305596 632499547 43564006 493139192 128437809 470347400 817790228 934539651 397735524 575864743 357696515 632281307 406191323 907180173 296834425 652935840 205965733 721064224 3213411 624010923 576590727 814507481 724730133 883217956 231296966 742660950 295210505 990866641 323024462 371259745 99045858 201837358 249543405 447429989 797030302 930732237 458269611 830518614 217273077 336136767 231836240 244964406 639516434 739344828 558494928 582321151 542122665 888533478 45723868 875980927 657719434 854037385 831975976 930039132 167014821 893261866 212182197 383758891 781648332 876347852 898535713 936289264 998982359 999817597 269061835 296769803 58321524 459483721 444923496 992497892 63218999 213637861 24304841 946340666 91871413 743831680 992852783 996260599 75325688 618979689 160029848 321771168 522233385 846633041 850515941 956843885 386425313 644241691 63888361 85637326 995985911 997383329 307592764 657312552 690666451 856345621 391298645 901901517 873911637 905585700 669150966 689913828 194336403 964512245 367576737 674436921 605260732 845953091 264097362 794156638 823188958 914096461 244595163 347367910 914859890 999077717 530535851 765084246 248223699 250478512 165002080 885347737 487533169 799242373 218585756 768229036 534157973 790551923 972394513 986708743 369482563 515663062 457108263 950576659 270533204 311026014 990927910 998808790 214889664 276681120 967448161 995853928 740159892 861060387 534203770 726880398 332750167 989754467 201261742 341676222 936601537 955823312 321940075 988520533 56970524 149509140 839627940 955736787 688837245 760280254 664933628 757255294 70137025 917648714 970930729 980192081 930323478 981818947 203313924 251190000 395341794 440230795 363809028 752524753 357951821 954845090 796386061 914994001 701884070 884700721 302824623 303274122 538607174 560232166 582668204 958891542 871442673 903570271 743152953 888121242 929542392 979846031 671252331 988770965 641098760 745007186 275563943 970706768 464453952 516143261 639884115 762846881 600574945 720248749 428731380 441527539 565234334 681540397 138894582 706415540 613560447 623463768 929320368 995465135 154968687 328218517 153830727 224735475 961688220 997131283 937095184 979643380 26010330 237146591 49658594 479047405 407466707 548150352 951836753 959353760 367705944 649882639 922252220 965619896 646707199 704924104 840012075 959814466 173265495 774702763 710332347 994475769 449655727 965302999 820343502 849606543 745789232 855655677 169986705 217081436 797315421 931692385 683168820 875777217 636945182 922047820 214900717 453590397 653747977 898350033 220347108 727621606 404699901 567469869 815528151 976112181 393060548 979993849 784793186 866609702 171087901 325934620 358291309 629795530 963624103 964157805 358109892 964786636 526669368 704675376 921890781 955860139 441592090 707467682 711257826 983806582 892540112 952435249 463458536 925087569 734402017 979780445 305877111 369175892 744342198 773414984 316456491 821880867 9302989 808458364 227610852 647489649 470948842 914794327 201847975 254204474 445807914 776026367 395308800 855096807 416000600 513936576 190998733 500168464 379201957 738948995 996005210 996426384 260404980 898642196 21723919 933524485 928205141 976000871 264788841 470965285 766304447 896138153 926338290 959678558 352205669 876165622 142541424 162512050 376296137 458282600 408017621 870411433 937501131 952669131 566288053 728251579 146147251 916345035 936627843 949123147 365988642 648051411 266416940 706079089 449131813 692470569 894388158 906712011 39588670 503449912 570967191 900251111 515886524 802389703 272319910 544205593 883162913 999980724 696873497 862285606 573084478 612321371 193530127 374177235 969387599 988412116 743648495 745363397 448779534 826565054 596602096 755367923 648006670 919619302 871082174 891981169 121443397 987653864 449187126 666325996 866676304 876766356 986822570 994921535 183792287 795558668 515163614 732449560 371950410 874107342 560162545 617962504 450938729 756685848 96577038 746842705 335426833 350782829 885223615 952428382 706015251 814148010 195941437 531615848 420716667 660271917 421691964 854194974 541094326 816808939 144814012 331554270 819591618 920138036 809310416 873835083 279985352 903023691 578076148 947505379 97624486 490037124 333315340 342515449 349180419 355847488 843660144 987715776 509282959 764067174 134963042 249704607 487461220 780163352 321918525 431329316 742574878 825681941 56138737 181276259 434113504 943518642 425639829 936501697 157995572 401252875 602663772 700510417 823214266 979860255 917383259 959333597 343070045 852849275 959416487 980480461 873412663 995465846 616281814 708380248 12096863 276934944 960666599 994562368 784179499 839337029 394407608 432354091 573266998 763279619 24091627 643070692 317918579 557234155 993148457 996006837 547680727 709382611 847939341 917627757 195381329 862946611 895844442 904566039 426637283 968121905 924617448 978470872 3832113 918568051 34921955 598636986 963045591 973512317 30885377 755909919 907359089 931233270 401017647 603170038 36657320 105692960 877851669 906705486 490791857 731878682 257613754 356606163 478478713 955387466 880265708 967744166 654975548 967606361 814669965 968551179 719874719 762519412 123282348 793104251 366024972 610969129 912673785 999822921 900658534 986976550 758372241 804942408 605980748 637337642 879208272 960964343 415560295 928558418 576362772 673027578 276226615 480327536 811553202 815749831 968549834 996936560 890654567 996968583 532282387 883614492 589154655 855858419 479291527 905987026 597594291 889698559 859521831 933550823 771571891 812663692 264298455 695230260 76764251 867983017 602168579 776900457 408929887 699978816 142478863 806585389 875082339 952892212 334529277 546350754 703781935 950236421 645794237 937274409 709923053 746827232 964142737 976854025 889554929 960097312 314326858 638537959 957291254 972683925 635260146 787857783 618075147 639471558 320111956 456923196 663954038 960576836 115245307 734197071 101766989 522228428 884639183 952654508 944277575 945487594 99544246 672849720 284420014 878877058 557449784 796877565 633334714 678202417 346271326 417121268 82322320 361480930 254831386 630365478 557071494 814574022 868079226 949596281 990122349 998110961 621419450 632931527 492169506 643816036 649534741 825772765 227071571 990058657 14777436 628264431 909287702 974789004 546689985 716708702 798697755 974060877 707878423 751073983 990220191 991355475 581419730 631536438 464170055 799660067 670607185 835112297 890429484 935976528 589562250 859352148 156448204 947398952 86856380 477211160 951417284 978977313 248926332 938177354 633993333 888274564 210409715 847566756 999421616 999636292 868057843 950112571 686941558 795337809 333113938 584739255 164487797 846904583 328313743 646554942 505572183 652531115 127896021 136905308 760679347 829337713 533148743 819116426 549929058 614118454 396545079 497297541 82475292 331495993 827702796 926136141 437875392 761673791 221112530 457225004 195533922 667378826 138379417 843121224 427114549 430245895 894986348 907691784 979016569 990003499 279237660 341567701 737335681 871726974 252679818 876697337 435278027 475295228 820581865 908825041 326703021 408709283 866903129 984134051 550509336 647890431 159497709 831076043 687012810 787526343 810147452 821350718 568094881 979979494 110224194 955735124 291017362 686396637 471739141 483312169 915980342 955196732 264714675 600249720 3512780 164256868 186754412 223709041 340973607 959488972 422194274 632438161 761676783 994156370 780316087 983648890 109729809 709899511 345802690 604677786 398855567 914845044 847905053 947673976 52880654 933220605 895568331 952593522 818607606 987168772 437264938 754422597 444410758 472139404 621942415 805985675 874981376 957927959 395590544 748696490 716091514 879551174 387153340 535995353 358974916 780705217 45112588 644002872 900914245 932483967 528490933 668065726 793728056 883877737 406631759 832949072 616281730 994704125 361906616 611066862 36182120 520207644 539610135 615824308 388473423 468854465 563430547 927503155 292064903 444578609 305208305 608731919 421931714 661247282 951473862 977826851 776133147 870856548 257427222 623537073 298880251 908326980 37001672 718603518 745373813 885216769 908522579 929429120 425859620 837545159 732017128 735018626 149349998 807736900 946122826 956554353 753044596 874726189 730528101 969115532 674625242 859550189 549743762 839837400 847619723 952364426 487545379 993772761 276419254 352070964 721292844 755922676 33166499 934028191 482952156 531146156 111147863 440402924 883603973 934475803 681089492 683310092 307226430 462599557 709321905 880471366 263839591 974678428 348572686 486765708 383651835 642446910 259647077 643298433 852072837 877613618 100446473 325220796 469438608 975520321 179162646 346281663 319715559 422462323 488668700 841765761 319987591 636475624 89214867 210193766 50085191 356470413 431100602 928198062 110518176 283087490 175291313 418180793 333888719 341006501 639650166 790340598 25094663 620135366 20775991 471080806 848485856 986000196 846470415 983795980 348152533 401779877 652927401 961923850 853471949 949965362 549987796 761197440 357594591 494352189 562660103 740951828 72396570 783337866 808301211 956898995 957880111 977045186 30588858 218669972 846626580 944789229 883380354 996562388 839347753 923816323 981883461 996404346 437801137 652236161 132688599 902860056 969486608 995089917 653514665 903662624 865804759 953409772 306851355 771588154 324320489 582514542 314696629 513032206 309320379 339052779 520482746 741211185 931264455 936429567 855314205 905252593 918719001 988405179 549813903 787140273 573663617 853944439 639469915 923139291 856007980 938126381 150972880 862055919 159627716 273348555 510407420 805683096 872432125 907397885 156701453 720803890 227862881 904908322 82629236 162353123 743447251 801920636 930334885 993643028 76851578 592333694 566484683 902196673 292500806 445953486 737189623 844933606 933502239 954057069 178410118 182952995 903993131 946096184 936997528 977119744 305155716 993424113 293596652 767854214 470464108 597388981 607861334 617388365 763183875 842091670 75905994 956735058 140043210 386945408 453998215 782684693 939927787 993050394 950499688 976582508 807666143 922440166 254720272 765487375 786539486 975240901 187895304 915298717 539613424 863448152 545512703 634171384 41820539 645461152 862738743 896868381 887803200 978386264 661115825 686203955 469916675 627281922 57661614 95219648 461687324 487881169 475341050 952352839 762893728 902573928 541155525 689461173 454974192 694621874 44912589 111690782 853425217 883688348 234884882 968189766 5862917 279420735 955306517 972152021 424534783 682362350 110882148 925536022 26748068 676287974 222013202 729471642 305061190 450703437 703366254 811281376 308753356 310845563 189147284 884207448 872387027 952066730 645872442 822062126 172122094 448350733 537387690 661387060 866824813 968615157 307631063 971346310 800735394 861463198 474614725 522963888 624647601 742984680 707720138 787667461 581651841 959123679 880309227 883142087 520614803 630203410 23318018 159189317 821484991 863436264 196350803 726688784 665635357 754764886 813775640 914041770 597473500 744551914 580117531 803645766 768908374 902007196 814676671 957349432 961701269 972164420 552137227 707629939 425088332 959200518 867971500 881768415 710399929 799977494 828926997 966493527 37802055 954288046 886490674 979361125 202703549 809173454 910751570 954475025 789925714 989164147 344020835 438086420 586444998 594337147 578694289 635514142 776454481 803991747 135103817 650217609 815859296 963149284 459073054 655921547 627593312 662413511 301562575 906296867 138237726 673453760 388426406 931954689 540701669 983105352 945763344 976142057 82849390 572277772 203127021 886717908 452420567 749867746 637149127 903366680 108132294 137527926 500325502 534892074 225541862 825304842 383325480 676607458 934729031 956504815 611805935 774258259 97783310 217671804 595258762 688876765 79731615 377135818 576092960 601604805 401103954 708336914 79965573 243566355 93159605 838688988 58357299 824806160 504829475 637006623 725909223 748019672 987329749 991015811 256606160 845295752 871933429 936934856 71464268 437576600 747383516 890003711 397615765 523465587 916137606 969315888 250886100 660867831 246634036 446588591 343049554 911091733 692140783 778856861 894935936 961266394 843183925 938170285 886491836 996913921 291917354 847260149 677122595 900650543 535453390 693770340 743376224 850870547 166857895 843219409 644491904 701935756 116585407 300405025 219759001 482225394 261266233 662081488 232490918 530155694 944762765 999556629 512758574 847326074 367997660 962962742 979836550 998765808 396752698 582718478 841316506 856157136 193767262 739723638 259869039 677335038 912877289 928354098 982341586 990037429 693550547 995170104 175613303 439582955 683943154 971356152 945617354 969157744 133026526 563656814 524883738 847714849 469494283 548025240 397106333 613288587 856581686 953397643 710329234 810324994 339783497 923505911 319400728 677925746 239073777 530159732 432148573 730019085 324038398 948272572 215170116 739636785 651291371 711872658 974372304 979378934 844727481 985027740 323164253 392487092 588485258 928571867 110086300 168216048 786920066 956337076 665911454 791526802 189585254 358893058 526026162 904411886 361308689 555795767 420945101 863566364 641337747 799535718 358661550 651625135 908395842 945864136 38019829 416481274 405399401 486827115 50535401 129154606 877155845 955757884 762806543 796453044 152403090 553707983 89707315 549997984 342478518 985797946 130449616 138262000 134153028 440963347 668553695 861368561 939553284 992172462 633698962 971828549 497131605 508944464 225357680 551773525 698945204 963992137 723240101 918749648 796256532 816742544 877228616 908514388 505778223 962507662 40880624 156379642 956247440 958926792 245743156 759960033 984297781 995947517 814434520 950135107 624780486 703901046 830357395 992175418 870705361 949470228 806826957 965013850 735367695 940363901 963712250 987578650 632964746 772746551 557453560 824251486 994803249 999446501 918108157 998031141 342558946 704158952 97700913 602913123 281434004 820615216 661510935 963922076 598989249 693124611 514166257 571476253 564143685 916686041 858167948 950606520 639588921 811851760 979117524 984120075 133170035 407196061 526149406 735174923 482003455 924015646 413795508 946360384 885168269 988896425 872628856 872831118 214813878 632627127 334653670 406260233 790919769 957044240 360145673 850688308 12081193 550166163 98670058 619658243 860740450 879919856 491768959 815265472 483418290 995384187 190053521 616331162 957655825 986438610 471088257 648812236 722586969 995299115 431287483 713987006 108886316 169036109 180984275 566749133 687101302 950604300 693173911 892578625 529820678 800232429 538411194 948914172 828894022 954776525 26792264 107480525 33898774 587189462 572844355 981019829 955343611 987988059 950354106 980191559 567884818 807954281 626961721 979537370 90527675 353387872 294593184 310568188 577478453 995538381 745458702 991572042 98975720 606679160 407789966 630222009 218518721 759689987 871185091 920466365 807049651 890225772 778664720 946749303 613551266 967337895 925087480 931404232 705335334 976942622 474714040 761695896 315353025 881964230 363740584 716489462 506041517 923956796 486499388 839891684 488960674 691775442 972101797 980037887 276357340 603807552 801083593 900496691 684365317 939417571 707390928 808462951 621970960 905288050 664935420 759919112 168190727 353480635 496780990 611644967 266609794 782404948 731749368 908730671 880292578 975307731 157816207 884794465 127961506 798646863 986822797 990152497 307032514 411231321 810414003 953424616 170979021 480772099 643670150 844305870 181738519 486994384 662441757 749880202 721495665 929056260 458365916 740690465 561173840 799649598 821156468 941012811 109040057 602715167 458228594 911974736 258873580 378356157 777359230 918397211 694124382 742376084 375726935 407293228 204780171 705259807 205057893 567922458 837742704 913661411 521071035 940493119 202169431 997336897 749985396 857797963 125391142 722521337 909277854 927960519 990080051 998476206 279223158 974417856 60545526 458360097 712688305 968344142 621890178 813920738 91693789 703517365 888634747 891800365 813047901 941258444 212683041 364460157 898199362 934770306 11987657 172431207 460764139 635459826 392646518 749502148 270858535 551052352 761226884 799399124 161931492 883686827 148587182 545429682 227646442 691015766 378096748 480349171 164521689 323957725 595656333 619526266 517948718 846549237 93458020 685627198 502400250 968719249 193876808 859289191 932635980 947677219 21354308 353649513 870863927 982777705 354337748 571917044 496966425 813874511 276295597 928042261 243934261 428990696 41023702 390555157 428008305 816608867 468814771 617331733 477516012 514244875 757555118 872366323 186978030 799932070 58822799 393321708 550627488 904088882 197538469 384539885 353817347 481847849 408504271 770963040 229803361 823170020 627773262 847785228 743114970 950675044 467508010 750977711 420685177 709875992 365175913 890703054 364410650 465372385 987693989 989759089 513205998 697309997 400717451 872400262 370833926 492169413 655383329 786310186 540511624 773255353 95440660 830247776 656979357 924047908 264623141 900308480 205721275 212694876 258367795 963366088 674925975 832287910 779599094 835439963 654180061 759568341 673324636 694397814 447800763 863583425 439264009 713539380 974106549 986918308 386560641 786618730 23024208 546775989 870814500 998266415 818772725 836215587 144848751 830292397 884771967 886813224 348777142 962584733 989820155 995664799 939429776 988230683 435409492 671435450 613394099 688100994 251476113 318287869 723891916 738820146 934762645 985745237 201831497 284622286 661017350 677645631 679653499 688624386 102558136 562211303 673623466 738457265 462542421 547467305 940540530 972724609 953193333 989986498 189179029 822432637 977794559 996359305 763028672 841977647 860253521 999225406 853301159 938799686 572314354 592649556 584069640 682685817 919539172 944169673 73634177 259684504 394991922 949464274 457209424 611877540 519984109 520292730 57404623 710983688 386795417 903969278 505704236 865846242 964461006 982238846 651101546 697736564 969833401 979249279 828019368 960245899 293604890 603939780 175023126 340053617 545707639 927505118 961706873 963175858 864815467 951695203 762848145 943759805 512802547 743963657 395455672 877583248 63304596 353530858 222141928 317741976 71657671 906255121 492225996 720665283 867662305 975496412 662559633 936005876 868329470 939105363 594982145 921071837 121207831 932314574 494927115 582967824 121549792 400707034 251726930 476268270 538572070 688939218 698594975 897041032 204809516 253774127 563993263 867285585 224402556 970309502 186767487 731086530 924894351 926582577 249275736 321282230 283641161 360764356 395577302 435102086 315412480 514862713 442961140 735266404 610933529 719720491 201556962 550138596 987837208 991346088 170425717 720674464 723982662 915063325 720100242 960020386 337619229 647901094 525130252 760035185 653291130 776558958 831845303 923259639 583182792 676522900 71030568 730763319 877899448 956634110 294949357 352292790 456118980 538246120 803559572 892273271 85047177 309688008 305683027 496875420 155966670 951665080 922093726 997041919 77793030 799482007 601383339 612786053 24016785 789454749 796046539 992571844 712054866 856803453 986950352 993886383 416867833 467030761 223330484 484095588 328172502 692871198 994610982 995290208 85277445 615164024 193480771 772002418 808575713 957480789 390547910 839115369 277899762 609032826 819488660 826576402 718996749 958121727 566207309 945362781 524037575 678262962 656002452 942984862 414518597 839505919 902048561 915427642 557789255 731249730 449886784 958577755 730551374 808936864 494310977 691104708 667351251 980959186 571501358 654329171 984546330 985335641 476961314 518050646 739688086 779717169 498442674 621143468 301112732 699254724 66103770 457889661 467453513 810372310 233605014 266882670 486460918 752062251 83754868 896507689 12549129 756318642 832808420 962177639 217662979 776275648 412925347 539014021 625916062 796909626 728308214 752905306 631637791 642144760 270872011 325078452 198149829 552468728 376538962 480387257 384717673 812534553 240243452 634383772 584764502 698820078 766937378 795043102 487951298 569960202 598156852 723208822 272083546 678802569 396485133 781836511 169015430 930185579 249241590 523476868 966718723 984293651 867785317 920741607 141922978 417431000 444009153 695282892 642634206 752831890 996762897 996980855 520602360 693343445 496387817 656011049 981933250 983948929 172645713 635073627 146869505 327026997 560675790 620091334 804321043 828207885 182601005 906271735 991368125 999576805 390848010 813997383 445541819 918482886 261177673 681540134 321017859 841598372 46022152 690346692 947252373 963795002 542607182 882460218 156575808 822891961 942161223 995949268 855447455 903825566 600996033 734340522 248492292 642193159 319928019 959245947 293049001 644167114 465780170 531006816 939546785 950200837 556379571 982099917 921101175 997128996 353024717 443431122 427445219 556427175 792609234 851364503 555995213 709343506 90004951 477232850 262181333 349577261 308293469 930706577 782227417 797265896 403664302 698443039 85367203 92922438 403108095 998994998 913425140 986144738 724426665 792832272 495793152 834122495 608365703 956585136 417638463 746272866 951510432 980767945 532098778 698683149 708011911 821675468 591670598 863552454 383339612 637558188 469578534 773888403 470564301 760996859 510995768 961388098 833973288 910527477 357692880 362357260 28722411 674035115 620733419 882836312 714070835 748870904 468779762 762227716 252836919 925046940 64022831 204477364 729003268 747271820 981066326 993319921 781702556 961428883 476540317 894156078 541074175 697896207 472343841 531876075 641434199 778726669 397448790 484662236 585026791 796664391 975018460 998938951 568457847 707472424 572104038 761000762 788658252 797404270 76104445 589786199 796221741 957150239 433484331 562398080 79655230 394432198 536314810 850924183 384886230 681013280 699749105 700408200 845186642 961745053 678501957 864562629 129191793 812406747 454292519 482158295 183667054 373694483 365622104 956178350 780718155 810172557 398329085 867606593 996958778 999398297 730141317 966076284 726135056 745363329 379037331 382609716 837909311 873719555 931780664 993497464 434998379 667181957 725251906 957849389 675212235 848941790 133166402 523735866 589255772 670406605 629857242 801109846 934494448 984487398 659328387 772801354 916194730 954116035 254487388 282205008 853832087 910763820 67929136 310473793 765698782 978305441 370243527 394116588 453182469 929436877 248568068 513543547 949782130 983089748 53961370 917846764 225109954 470197002 503974168 678374130 901739012 911396572 382302192 523087261 412611779 449612548 558173808 596774050 665370833 776970566 390434408 623609857 601966660 856484477 789503194 946736702 888820182 997673145 91381920 289598730 517703796 884198888 857710007 977745219 845565232 981349129 410507313 616387574 686342416 969632563 496926822 723969017 995168079 998782654 172546802 506697387 737438322 943879683 592775038 926148103 328223854 532373983 876093610 955160523 631396524 748261257 289528997 914063332 925593175 969018934 397078581 898715385 38233837 128884730 388246232 696599849 593363941 816330076 856803579 955268810 61531366 547782921 123677761 717038353 670332120 866619116 489723291 636339256 252977235 754547102 343370423 538412134 397472856 704431784 681020753 957526830 421535752 459264867 131995619 233382902 868518771 959701394 818191775 881132886 152227691 343169769 533967164 588639992 433018265 679887254 149938738 434331578 27590814 558356464 310990600 762692678 531098531 960289347 84952665 770103622 569068452 728624519 82152494 386799431 63609604 909084698 894367003 905590885 692859683 709280937 853756933 905355924 929432822 945867327 928609897 990560475 177508703 238276378 233608896 739081090 136737885 144173692 480379911 581249697 355693766 697467699 795973111 958389494 627697308 754479603 149822485 204532184 900334796 926217252 872299121 980823410 428682453 494829097 793995327 821321587 473686618 609862371 566770610 634145758 996731411 999707891 888868726 913187602 846253357 991720793 75987185 838743186 69057670 105645801 657867415 741265392 369233756 407872463 505437323 803753149 41845423 735864919 247426514 694343873 775688408 949922976 417053687 427484939 225458389 553752931 849287116 887120028 218779386 219810764 33174015 785064156 965401493 995916434 503092893 718439183 829881472 971436652 957417198 967939429 797429385 890222605 105122844 816717683 388337156 907802259 599317722 721920216 89427275 885153284 85079305 493216109 858284870 880055562 784879803 834328823 476548982 703399036 224986406 366058185 333190069 644924828 361852350 908247876 434158454 773845887 62321955 373009469 11287587 926704563 234287913 543563482 114311556 503592561 837752027 869415470 792274684 966869653 382632106 985849054 440546996 768947709 891750953 935368161 125238575 781348006 191731641 787016848 212895274 503593488 319773043 324984178 106788383 945161745 34090348 193292981 691125079 962814610 329951567 762100270 761186875 834164275 572244578 576659912 208842987 375501045 508258667 867575427 750804589 820814829 421960366 825423710 175338797 199167388 715951748 804367421 926465991 976337750 308202629 732270896 561269821 993156167 566661138 748237592 31071788 730770818 755071812 767806587 578419745 580584192 630739642 917757544 731282424 946159207 544071631 714813063 380504028 440727119 747189781 805085544 258593717 968737967 921920973 976124563 971322697 985090391 209353031 582514230 153221454 972175385 909020307 956248216 275734840 894390307 526967681 793598785 321045773 523699303 21996659 725153268 309476642 486417264 213800029 758652198 344838666 545869653 308546032 976819107 151929645 718133141 791481855 894294062 378361772 597324236 274308393 499263173 592490764 639507561 717772129 953510473 684084146 714410127 71116873 94838652 290845315 587922274 787721342 936166037 834833369 955574937 866753055 883039108 760084558 845445577 353648757 978072445 482241813 695361520 132032150 313103603 308471205 627543432 45779197 551741773 231679022 324478381 837112123 990774209 533963952 564527124 662911600 834871300 971534841 995290106 723404902 780607282 95336635 486696575 885215352 983982014 6678410 582296237 318437706 773407496 502308131 543729534 251451689 453645678 423151054 445824026 919827860 956837065 450363772 876810894 879116423 952174887 472894433 736700761 490302048 670298525 617768640 722214092 13036515 867505222 699865914 743177691 199800140 507786927 828080331 851409779 741071659 977762261 888246195 989213293 472001302 995250101 465286358 806617684 549561362 795067929 788179286 966111026 708329885 732064864 436391405 579472137 691935665 798220919 305421945 355956157 462860351 609098979 44224237 309313395 589180837 933461591 401945660 952158069 503167934 834917529 379464514 546543330 954141366 995505673 772203007 825706518 94041011 366278548 948006813 955553995 967968501 977374575 864598691 908177682 143287478 351430272 456515287 932972333 883819953 967710705 423992183 515556084 389935187 798329718 28616845 484037963 537643957 788292683 780701236 969887539 521801618 986966568 369733397 790645072 379177261 558964024 259803136 817196901 150041483 371280058 807906619 975631495 2381494 677360125 994596057 998976754 553968903 648371469 684898226 776361473 918798493 949556814 60157253 777216297 802413111 998125249 513988311 589170077 304682058 433440895 342518386 867025404 724727747 805027493 250649529 588974022 264755588 576604832 437181471 704112461 924080523 924280837 50101162 984156343 427961521 804163816 492368561 824070037 890804045 948984338 802914739 909475808 627062237 789623091 469827125 978421988 148183963 282696521 894945043 912652472 981296052 993776100 946931121 950164911 936090153 981644697 917063179 987165099 38543810 976871196 324836120 773676670 902673409 927075585 877335502 970700463 553697830 921049147 787146755 980061234 131135244 872451632 650619643 785545006 476146369 576119191 353434250 986928499 477014119 828559984 950149434 994995387 685548650 836821696 39960825 807209991 706550968 948781073 155854783 961637022 971795429 982774688 522325669 935823463 831165170 918766319 901212316 920168109 765735921 882991191 561961831 824706412 959109170 977271214 897287577 948634742 737817678 991442981 489262365 729921837 364107468 800258339 162151525 274436456 544642304 806642494 857912442 987557342 108215833 820994323 768876103 922804802 105309554 663558481 397066390 870871931 306111351 485477398 6981658 438668869 846120557 846945012 369727351 727351948 604548783 996282409 821638656 978812448 318390985 528343683 989089631 989756989 458426998 966709380 669716238 949659655 522453593 655102901 657062113 981085964 243595080 701150008 971067543 983083573 997479812 997560061 285581153 980424372 274049965 391470708 475298702 886633927 314346595 732844192 601698969 989103214 50726831 55669957 918618870 974499746 262586517 291654159 290340976 307047515 575263858 703411695 713901093 904527195 261779817 266249783 712047499 722960347 257834661 495721501 602439471 728532387 480972327 822502995 688790460 694405457 311219263 422169757 309206894 968719441 216275466 262156429 43895256 137252690 70032172 331117357 405758258 713362444 646126114 926109108 63575803 468362096 688155765 981264815 69294209 147509745 997696312 999571304 321716550 596344064 49071132 401047249 920835815 962666491 241184485 415978002 540889738 992030154 290901564 888101550 685352899 918757913 54503451 873693473 660169913 749733755 914885352 983040480 73901507 155649707 742579521 908165098 390311939 652875949 827188519 960065393 150491684 673374316 849028818 964146477 796420669 881396426 140571212 728260076 455132393 519021576 886750407 988062613 990139398 993940984 247642691 559400927 129618544 852347827 792427995 797025072 532287180 671595651 883567399 907275781 683269564 974357080 209342809 528756873 714574807 857321737 474683998 511813556 200258643 396694308 99560591 992260332 641456329 805617408 470602809 618286628 966445622 975848874 863096736 942812632 603190829 782296937 397671705 577452952 552483190 664799315 551941055 592093851 469085351 558425862 451730205 983998138 204541167 350891018 779103272 939696000 346818075 985625022 539375666 866402780 930678822 991739377 416804231 538658677 887146335 914017857 644702902 954986151 290780014 932310838 780697928 853263796 882872635 958955146 303763876 618181221 722459503 812910348 491779087 921689002 843024349 898792273 87987507 101750982 722216688 806891166 958435054 961345575 138728485 413216188 549641311 787337525 975979309 999204066 972470310 994077283 724508883 798653933 507693070 863878271 882519086 915121597 17498039 870139145 803996713 819759105 337140060 631402553 854624147 921896628 583376069 919468163 108168258 886580239 966401607 996422397 250904158 459161637 313483139 713023879 257974484 380709937 742193307 787866569 698681058 930769612 330852354 543264336 578838598 665646404 603938931 809788581 661971618 977069325 298896291 825640460 720490651 897139755 862722363 925097102 222590564 972245049 143539283 664961754 806555483 995243863 188541330 937083939 35713979 104360393 937265522 958305975 389837744 848077478 612489136 859176773 723569914 776559699 838583637 996094267 764338767 790480361 224535091 276880624 444822943 662219228 319906705 519470107 903097825 931964207 6088213 698209657 615786399 877685016 952391041 991752097 154344540 495106613 659291583 840746129 231940876 662472597 928923250 959128034 396590609 547385916 902733942 942813231 994111923 995280046 489370816 756532109 232726987 785533329 2068804 629450573 862077700 998251039 699760713 737794677 199077319 517671235 797317807 990495835 419005163 939239180 773893236 861307151 306583395 482771133 501447895 626147994 439377347 885047121 691138126 718846907 777178098 933236466 447842499 922166499 939135818 982343313 961031340 985929705 619054230 759396531 201348530 346726006 624322346 713050291 602108571 681150699 175235082 396642175 63778042 712596912 339194922 512715660 378288326 913333844 506185036 695002674 774338922 835055895 74717700 807090521 733686996 931620509 365508935 806884251 91292474 319879798 784673699 839757428 448386753 514964771 618842403 650441930 811584162 865306942 92287915 845034570 687300 238167188 928543236 952448998 902509608 965315989 512175203 948688504 74678741 424284615 688161597 993258927 291085291 796638441 258212657 673282524 60938904 461569375 197881795 543647205 536775601 649257747 58321121 103050505 523938329 862941132 42626098 900270221 488457733 883128211 29205361 249748574 651220597 866823520 958494817 965740035 882092830 889245427 23054495 746052000 340610742 739542417 595227580 874838853 282565674 660276637 739271451 881440049 125332143 964896530 196954251 586502606 65049918 532423455 824808036 891228073 940040930 947156392 98329663 382599553 197106544 905043476 851641933 899471345 861598562 977607087 121597577 298963782 852945198 953073543 792723743 980822832 615175073 640833626 811818646 981174952 570444929 713963506 863417027 987603477 797863345 873612610 806573667 989836197 285640058 372708203 784954730 890231923 745951293 953719657 699444765 980410252 601024037 715864029 359965985 788277328 281317541 638109792 785726789 901171892 663918897 696326116 534826152 637002206 666905718 828760118 511012828 829067986 813454823 922137129 186706206 979832013 58271583 462167432 207147898 941560792 377709083 720653376 70681210 552329038 215629127 469861195 373890637 557221119 567696213 723123083 303951695 943851948 381197448 520506387 990467019 990957177 680995348 928060578 121957405 918938757 519654421 532296514 257651826 425762242 547211186 666532691 681825048 816525831 679274654 901140731 796493544 964979866 101415812 878300182 886274196 900083702 8435822 475095410 496429615 648678016 654567090 814043564 249033047 950559638 77211163 431457138 565669545 996211834 421735719 717835859 845043979 872836794 840594639 955256946 292005309 363400941 961465532 988855061 411351097 802054767 724194743 807486885 780063998 913397510 900818490 990796617 47552037 435177964 202271002 364113916 443762832 817413700 999946082 999959233 240718807 728297526 400734177 928024506 341771261 504170636 394143096 919360599 877787544 944511841 612708773 867142148 971351156 991087164 578089449 621887825 360852002 713117693 279752186 521080148 910591102 943236985 692071456 783643365 195493086 987261407 948190005 956791916 360052250 657880869 270159629 808264810 151209112 795163475 829614353 873515407 249730383 391186841 827427354 875013213 911773377 926601345 700621291 789947859 326936198 697908787 341352852 826343920 928539081 967321592 475110411 848858579 255830483 718641809 88216010 350071167 785523716 805420952 228847886 952275244 322541273 332528363 660917778 882668543 325388090 570144504 46532622 121259637 291492308 980266611 698483268 980957485 836896183 982385546 933678314 974318681 247554006 994569069 808171260 869321461 920057735 960501248 319079003 831894646 110744529 267134811 780977853 994979345 60437571 414961257 494667992 584754116 946942879 956873637 113911191 127838638 816744839 882854621 774639768 833703159 771332518 881023545 561532995 738334171 432166692 821157409 908016229 928039111 575322137 719511582 96432071 234091718 478936506 888353489 696770702 738025745 850215806 867155373 708605983 906982808 360063569 362572416 441842084 887404693 349824470 465569072 410765502 607691117 422236426 797421880 988285723 991642262 919894269 948737519 905696147 981499925 512254760 529976383 40901285 929224724 710229876 752387546 188614934 413602127 461727464 827639630 2509892 52004960 364598587 915501797 659436248 742270061 932804621 972902581 720608709 857062529 557294118 804209133 414087325 892929045 459342688 833144947 197671913 572931733 393961405 991944866 775825504 956751585 983352904 987735179 357674292 537773881 150626538 874253657 403442656 892598936 78987543 754352764 841424297 953960632 206434340 520974078 46088260 183741708 434196879 770598752 26979600 755789222 822561932 947259483 817124486 914818758 864216032 973176474 134224818 721270392 998512731 998608345 216572314 944046578 493281162 606836049 893673391 967955133 22895986 421151935 973102518 988557887 644209939 990244333 914864131 971179119 541698436 680124575 87965667 736266738 849674618 889057492 40952584 622441425 594073712 848697651 741281147 998618419 2026408 802487038 633555679 834384970 170878136 788718252 84953656 789901965 226490172 326638604 516807342 868738712 723239825 961726557 77527771 925356144 589986947 963794098 532765081 558458127 12480756 470730996 705585816 762390372 665701971 975743975 244543739 261810841 62502588 461142901 300546571 393203449 201241715 460143927 860241507 865656251 738819729 746097610 280159334 926433859 67125828 689076504 864624109 992359831 217053349 484566974 497306734 856030427 778766776 809523018 501303584 923695228 50955550 563704132 68329871 859660408 242966329 451780907 555659788 631645595 628353922 871372942 348509498 591717262 442723840 974937551 190234208 210437518 252824521 287776162 335460949 715698759 494759545 773365392 692215672 762750409 107896441 154065553 899138738 904220292 21806776 235509949 243317391 899658482 461306811 712475742 655445438 896935978 764175536 810042412 917493166 999363915 69173597 558113180 702081519 910869446 870001477 884175201 831333856 910954358 247310712 439340553 86493972 893333841 899119492 919771636 590281451 689364689 475058521 690434202 425204817 625420844 473450373 617703384 987102790 997885870 390483409 963545522 460961893 711930026 293826952 970642781 28788994 818308082 762833836 954896766 423735950 967789024 229417675 317000104 793835310 855692861 113129146 500890934 200082743 627676104 419345278 672238235 187646072 554930218 252478503 867714083 128614736 611775186 798358116 983045908 629195843 894438662 974587185 980068324 158016197 685085836 205734070 964737551 725260343 843666994 721019754 955191194 12519993 835793783 272802195 810543891 346165648 360682474 656476715 707165407 295569784 419979340 455653837 936480424 542169137 899099979 403406994 766466660 862941765 936430040 922155251 947472254 391120061 464732747 9333965 43427215 907316222 922082265 869499771 931959874 912480392 971343044 501036830 941078605 972005168 980056528 753973383 973319701 216471715 259573961 759738446 811930439 670436071 670733961 680527659 921817661 627318564 987458627 874257787 888414598 770750194 979390334 580000345 637760254 972586709 998041591 699904553 797798122 353189328 984882666 96925464 822499331 589045469 940160958 259928166 632835367 841107099 891461162 438727036 560172165 113422862 486075057 763249442 926353174 535981779 726012763 758214459 956566052 162878434 200953507 361948581 582428478 47185822 576791927 444768174 515245878 240128030 953916178 118629801 164932814 829362998 990187934 406816038 815558185 566402112 833853415 708860161 900864994 438080827 747071793 53173443 556968924 391680908 913671625 941773571 957118914 682445989 987506679 801623228 956490276 123162635 536701259 223040607 936757718 478942407 988603327 795299472 840029364 65392622 713875076 593708178 843724265 322337201 777017643 653285698 954118859 314696974 588403914 283762658 894239737 521410846 857680463 348253156 376265963 54405778 956907402 610166490 639883515 637201170 669323695 484259108 815299837 559020409 948822191 214155672 223730866 175680664 356647089 538555881 915730823 255169106 365025342 751657883 866163517 787203735 956096349 311866100 930189190 83154492 470942800 810001056 977497170 686378244 764600700 128657551 551349385 123463027 612349899 358861531 684202627 306770527 511547221 513386380 607273444 249825472 388369980 588680466 594397357 199256882 921520011 908334036 923495666 152541124 797758294 77406820 128535218 763816488 950161837 727743583 760279752 577515464 777374321 744704892 870014320 470360225 558812636 472362824 859093593 80693514 340764866 59945436 298745123 215429949 404566278 415802474 693756611 922463580 980030143 629510365 717994045 681130569 990075160 40275753 816897028 142650183 597461876 569773782 993260768 937643647 998584012 647301350 679830765 161698475 297912195 19452427 957015607 571908747 617932820 768155523 913775105 472174343 682289663 675749419 997851911 680124102 820180841 337400397 632066852 490344097 544108419 854484275 933138101 8153967 740171188 955433154 974172649 960131601 988792075 650212465 857186820 341876842 440443790 952464531 992494227 936167377 937220766 18071613 823504780 538457536 741432829 111371571 522192129 844942385 876824225 363153539 906774820 759259974 846782229 243874051 714932989 983866042 991270045 527078674 613302654 450874034 721417333 253266483 594279805 521220686 947086250 265802836 345728282 244841274 830675196 245594768 650762414 131762671 958015908 824920411 955822159 571278210 756278955 188073995 695476420 959955258 992088006 118367546 508261392 979458946 997570762 71746981 813862046 926204463 959843560 73240380 399900774 76717269 731990626 276099859 861401894 798675776 837643673 193550897 458734217 926830782 975391332 408913138 709788495 280459861 410815089 952580422 960675438 132857205 173864619 246669825 998296033 197015351 300099369 673138503 769227791 860865728 987666563 985648924 988506129 241245621 927619642 711328900 809661060 690809763 732064394 46182327 928560381 868240203 870017830 399321315 932911634 102897565 928979077 356617258 710349100 781999427 937572066 104160543 612556356 780936747 900347761 153131161 585272084 966337866 979445470 404790808 913819177 255356870 872527613 574366498 666867955 584724415 670741943 233355827 894129448 363230681 505665770 365672968 729846096 868649008 950797573 216069786 278588083 393962544 723540989 337616331 376169039 637969922 932892817 573271334 612526126 170116579 981284618 563159803 597174421 623562092 828804174 66867751 786474918 300828403 489975916 269360346 902564938 964458372 996907240 831396928 922402435 537845076 838288928 668392109 703983822 391091538 923470854 132057751 910060134 27254610 112441507 801184376 884670367 449182801 706409642 403282410 740791489 396738205 736547856 898461464 940188567 692847035 759547918 742414891 904813017 642089151 650377503 461574987 990607199 199381636 525919341 980745711 998527867 134060107 695082547 487965602 773931681 553932510 955314156 417713473 775292636 424137031 867810007 682722067 960308388 372170656 690770516 276845050 301503266 759568316 913873041 456396955 574267368 591990999 910803723 433588815 936239624 183686442 880208467 709566945 815171178 845172750 903010421 603472704 869586246 180372272 200198641 507798720 733076291 306929794 394267490 397282134 872438067 109448207 617757210 766855989 860303726 449572308 804897399 878591895 954763105 251706511 450595859 388741801 921325137 945721479 968097981 890770643 969126182 232648666 460228193 850661995 992582632 373075236 391923326 278580325 734603561 356467578 847912342 182530658 769464876 291948837 647033827 306972319 328087412 910427554 922343311 69151149 955530686 76603356 183404711 872566334 877085986 885677830 922499522 585475849 836563131 700712244 885790862 70588358 666816845 229695856 715638403 443681402 639400508 870904775 949896505 275670446 851827752 671037313 689624854 823430060 944680887 987387071 999010311 365307496 748597375 311289955 427108596 920173564 963415610 54617693 184166003 960738515 988583324 423813495 980471412 162290533 394843255 658544880 970353424 150104535 309967023 608974066 806929511 59635668 60390147 511113649 610930108 773827884 869516603 387327317 733995201 245528720 952776127 332976362 444843880 423682253 494562477 887198018 960953317 781870269 960057555 875253199 990563776 35751299 999529232 70442468 757715010 371871087 546938699 961044624 973133535 684803300 707618304 358026558 686289442 271555379 771056817 159679359 946392246 469551975 744359374 609562676 635427351 893009381 967332843 701685083 761912570 677477792 800612520 524795210 831631053 538496016 948630898 177445588 792373855 482572571 572439474 220999940 959911600 951924165 963233411 165627859 277540712 61927712 289321515 738345522 899785028 951409575 979648718 562379840 866718198 772381523 837157318 554234530 715662741 675928415 774680898 262625290 966798133 823066840 838712526 963104401 984033905 840141503 853549753 248632295 444806857 862414060 863742716 297602572 599134770 202633561 946354150 175100628 935219073 954421978 996034091 170089936 374477091 32947134 150114333 841940538 934603721 149538830 789092826 831756219 897796816 761435312 876201934 25041939 184321142 642791249 988300626 944113180 953783376 121223044 858901887 226719085 587385851 24164064 993676099 735999851 776185621 478516556 886541400 907477340 964746492 168695452 811715559 724473769 900698630 910850560 979132508 843797566 849047748 46289636 631107445 158846655 796609034 616365127 715537618 406953897 788544282 447618697 729792049 894489492 900777001 421289951 965270854 95761686 370735209 160274352 440944896 839776330 914831148 803541577 815187082 956398301 986112390 522874005 951276775 839248505 888584204 183114669 464982633 366490403 881982854 577905286 929774941 89537061 661397168 345393007 601227704 852085340 885737139 283962426 628232516 967617389 987637513 741813382 956588712 912926996 984656177 415916811 749924951 231773434 809129396 796008303 958871699 951664957 998099123 454407906 826873437 309426037 518291341 467536863 655295976 566306124 591059375 845700964 933908001 115942784 899000928 234299440 286228258 480041647 965013635 909472634 917067633 103298623 163961412 194283652 842952527 511093975 639927310 659228827 825327884 705810534 890654035 560005109 664771745 455046745 472243077 719385634 721318845 145409315 547617145 57671143 116598054 44702409 178739671 962394384 967461635 115739385 410310957 34697061 929584543 294799323 843458704 621964850 756493850 300698781 662323656 5881149 66228021 506294676 837446367 267749858 556778877 400350629 915457881 850175376 966944033 896090810 923360498 717759719 816880795 117296969 720470707 969118401 972883571 390151064 962329043 235038624 774067559 928931350 942119087 297222950 849746553 72818574 349452333 145545270 233228932 639499606 660282805 377052388 660955339 519063984 743114634 4063517 136773348 162681278 937772242 25698362 351537766 446451845 765888264 587013776 827820628 301090583 653527248 21746391 721009100 427883290 949146559 897960844 989461774 882394355 952749787 490445086 726874955 117757260 483551234 803945581 958298900 466830007 812705612 685049203 806634119 465646304 868075205 739180851 825492735 83346002 731805790 813609358 854258923 131199501 935614796 867971197 915035592 467579935 940040485 177855909 384362427 55106619 560818645 486822135 716401086 586502325 946104647 861139140 926321264 552918364 931053316 250220295 884425858 58100846 450520638 545874831 910562986 924051978 989631544 432102173 744328159 18085234 117225563 668583714 828771073 278401166 558410815 663110023 955222322 34441853 934658180 756745580 914898290 340921745 998378434 749226360 895067637 449511210 507539949 409275691 872948872 227474596 608484635 852547824 915333555 312106060 529816150 646795994 655705244 941786944 984130179 96061407 899438512 990261151 996413301 704347527 729183441 131096634 815284690 869285786 966376848 519543776 823643415 456215161 838486459 207886458 833441193 613871078 921459283 715517827 968639138 793487620 971370156 566793044 830076903 3699999 237071183 617122433 918332507 361866822 728144748 991356053 997678258 239027027 918428376 605655515 826076272 123659442 623540692 519890413 532971569 10511168 108477841 960388165 994610092 608005493 755285005 671896633 886984444 830330294 913740079 950764246 963966061 663292705 791567780 837200383 958355030 525946228 615419101 186794077 247540209 11317037 124993853 716242195 794323416 478043213 519742308 644025680 705323658 636516441 690432723 240217706 366299435 775836788 965526964 964694331 998768499 863529717 896688369 311259438 579838454 988731818 994711641 671700632 954282206 26617241 923896236 620125873 933910742 605662773 933788127 82312652 417758755 605791529 755597568 426637298 510446394 60320490 465333093 703686753 818617289 918285838 939312711 694365173 863445707 60889683 595865419 314905675 551426011 155975258 649310695 951381401 958908623 98113833 244557991 477441338 885504799 314429429 337041867 924908821 988794108 269041662 883063543 681958761 898626732 742671007 795414265 185632486 387943545 903648788 937520063 392711586 790742253 842003582 972262669 41905596 646973932 433802445 942058525 86450420 433452977 411871081 565236847 642782545 863725465 4540243 550260505 436722437 734295290 161783597 273325722 50858583 380641006 585253340 623030879 692274005 998229439 230054615 593749956 935559226 984890487 983956622 986200724 829058156 867876576 667406958 998891766 535088223 631566765 589323089 677517293 445976724 524251073 231866636 621733007 936004765 961224993 988961483 997038441 117244193 245899818 289930115 335552472 26460113 74643901 132236378 505078051 512168440 994456484 272298850 645500861 358310728 469754668 600177708 642295051 748854365 953328202 369830795 530482907 813856472 925074900 250736711 732639259 687823398 966490506 180447019 637613769 591326743 982640654 11199272 374751124 898270517 997362932 38716388 164683518 582242364 610887261 627761687 633720092 399487347 589231582 578035664 717788078 863543836 884649975 666105636 716283848 694164920 994328508 307416017 349955103 189718943 393425304 659799178 993472469 630673561 942700834 737647893 815719069 195613553 258844500 549792353 934672796 719343817 850957133 467735251 965089702 519671503 715775302 63250106 272285427 152293358 253073124 390263103 996516817 444088725 748007245 233208311 328875563 92173931 787497123 610142656 991123813 482069235 721601310 281563874 924425306 629425687 734893284 515238241 999601529 210080063 407444245 364266482 915609693 972414450 997410681 365226447 710191065 953510714 960301083 730756773 944263023 998934184 998997918 356497504 931491605 332555262 689844544 58329908 246585353 572394513 723051596 951452387 956345829 545127094 575809082 629046936 993913772 365908228 485069727 269567236 442682145 702493445 733539465 803142805 952626719 265534036 285527907 736386938 923878823 253033918 719904753 956673172 978024177 855787986 987288183 990472700 997202390 321137010 818960657 503955953 915017421 627014510 855027187 111510734 481482924 810749405 967443425 485532497 628812108 670863991 767649243 706600806 930133628 992076978 995116145 67638865 71119011 207764023 241666659 692783669 893808358 662166783 837870626 485605046 837483349 915810858 943288434 170145879 245531496 828245053 894445685 523000015 962511674 851388805 885091126 528085208 536871831 767278949 807132464 318363588 934912964 985271531 991314259 635600376 825500905 721519659 895560759 356203579 900658581 842562186 965636441 826800138 984132943 157394861 725226771 877980119 898099023 966790836 992576368 423948909 609237830 93715464 338837577 420760852 856525435 589613490 818022310 832934590 888048082 344593107 739157389 565715890 730117531 330213104 857093994 187557918 905398444 519248905 888154062 91106540 216710757 133814785 259773514 908878547 988328524 674532586 916244622 523094856 572180410 34410414 629345618 798463961 824329097 101132943 810623122 938397455 945476839 802681230 892028481 689199545 821715370 394444115 444175961 535804365 617012450 769298234 845903718 7368188 775171589 328791477 683333424 505698239 860265597 889558545 984176580 401104582 672737428 948067127 954100741 276833431 940402123 531003033 733434284 12447344 496042035 977182664 980831112 561618942 853222232 413811946 479117949 805363126 813935229 753972622 990197155 529302826 711297860 698461992 961444618 249018558 571888898 643713107 906412927 867801248 869712375 444029916 879002605 269873098 271361287 734092948 899593615 330227389 916246930 643495071 928584277 391490939 753996671 989769794 993538049 311127649 873018569 586650484 937549938 752388659 924747603 270716887 943726513 859457489 920430438 233889150 968838942 686030164 841473619 986336700 991205510 272472441 961286034 911027948 951850426 366629399 605039573 442253527 856977565 775991867 893512691 868106416 998700525 521348053 753816976 960442863 973638492 822568978 891119611 135694185 338646208 781198269 886779897 606488026 694338568 750701373 832199204 824830373 975448987 157853229 224455733 714025874 769476983 502631758 582714876 229477734 718261548 645174972 807775832 797301126 814353669 391066097 991115721 878126866 897639384 361319231 986776907 614868265 809425274 166607404 286274129 599568607 842846628 334420811 853599765 94406870 855192516 279293527 751415029 283989182 896524990 921495561 985369211 640212503 837351704 447057733 505246146 951091034 961760038 113387209 982001921 470736603 856730177 607268017 662263196 184406900 391251048 733194492 986791094 511525724 690773129 994448716 998753446 840056862 960593007 741412425 843135008 962838477 986285543 179514999 634171201 774760497 971598517 672859555 814080317 284772187 289238354 977267748 992847329 961604561 968737080 554032466 986080230 110334624 195727673 379618341 951585979 62307786 217746581 824384764 949034790 902212937 936150362 396753 732462358 240701638 392202807 349099087 724633260 906165319 989175567 610684630 779457988 742144161 955046278 845746441 913726366 564900871 721700547 444491366 934797177 986749040 995720646 588596231 990654388 516688644 720942859 130425239 667118334 723678342 794475470 249905123 478056880 940921466 969397794 933040404 988829712 757335088 990161349 89182375 385785916 881475234 963488417 483667540 791029925 39829499 691738104 854785304 968523582 442430837 461956293 372878253 423944613 523106358 803312927 516654541 618484510 28508855 595656103 513515807 958963949 968230103 999901636 373012249 713522342 943763961 970673694 47259532 595369038 579293251 848278108 604069412 750011040 210038531 232717105 207774867 717092614 884285983 899236473 689310301 838833511 876010097 910928837 689432478 837845145 957162225 958881133 641962550 967775001 203598082 970971548 84215423 768900649 582327718 785977681 460400563 986579394 161343880 733419235 836958289 902257769 976516048 981864390 4043163 93205532 178666844 237279959 359502939 531727974 707589995 933700458 972127290 972739552 279884591 528625068 609169419 726380845 49533534 522179232 158231728 549161078 955636104 999478826 320915989 617408929 985337507 991794805 313981447 581880012 233481886 917111189 268431165 922509499 705771000 769167187 965312063 984698008 722608595 977402611 54259001 946568947 430087644 654190091 192473449 240200022 949111221 956719402 938649714 984849325 67704102 928183188 436717143 980142533 892976017 937170634 670817577 671920263 342867745 473993362 206739531 702419415 848077027 887681632 922800506 985256363 218494435 661590577 77613442 806241188 198654790 347750562 362394260 622274291 833172081 855273849 514007238 682105427 187792576 720277705 630849818 982974624 100393280 390114009 900634040 906106864 135475650 609634355 280172476 315188404 368260600 919824353 407163802 678606114 275195129 391002963 195465105 401732840 344018399 796348632 89679176 894471156 607173041 794880176 774197420 931035656 834717967 951490798 704182856 862027930 860217133 970467936 586064238 800661812 649950082 728618141 209121399 602928189 577723189 844345822 107753224 725855849 611268409 909354263 555376209 669129356 318413412 539407284 1990865 969566122 507196807 743031294 598040851 725800747 554059948 972052878 333183543 578075859 13882234 601817764 782513926 962763528 198530559 424720716 341301072 372832835 120964965 586366430 515526817 882542396 884681428 947119604 569512992 638826273 320924071 968626507 835837228 895192751 771388522 781116215 399991152 777898945 929111722 966693506 584204364 713201483 207761628 398462753 444455234 679568804 284928333 487238452 208977787 895411695 300314784 493469453 696299389 945436186 412614314 466448601 360752138 868574581 902913565 929900831 11724034 685116558 62010107 224271071 857870214 907299263 908733082 933793468 441465019 679639031 110177315 425605233 482831449 565222078 528859546 836368987 14941113 786151329 307187681 500748019 331972047 767648170 292703655 566523158 14763506 798112274 583331921 742906857 853211448 908916874 724487164 807302687 309019529 352112720 700479712 824712309 373340174 657160641 626832273 930866010 9433616 650545072 614222382 860511607 24067002 935667012 607953825 739401479 17824364 280764541 98069080 830012870 143668064 227041452 373575949 775895507 655097949 905589750 712647861 942718020 484586964 706137172 366990878 602070792 381229569 938656284 48187642 916940608 630949327 631863715 558898058 998826495 71519212 768290495 355293662 358060521 118581034 256204315 886889694 946922868 37106427 410678612 81520309 279584709 126342301 994067238 790724829 882212132 477407189 851193191 972742709 991894654 405476460 411779318 666100422 727143930 952956415 997307605 285119744 944552165 826548526 967801239 911275804 978862103 206867061 891241582 294603789 913605889 433844300 654664901 143798484 295071743 287752732 342166893 54037628 60401518 803808750 842213387 626259252 634062885 173440559 388538904 259617379 985529614 155610775 363691234 351369657 593569959 904039780 907053793 435349570 965027364 649713800 827498091 582807111 591931525 49227605 549093915 726349512 960448603 650912157 918470522 936356986 949470040 181449733 708260912 594013058 896965564 774660013 857177710 290985459 932149721 705334141 848994886 173344116 788839991 680754229 956920298 165048225 698263389 123711947 965687718 221878538 684439153 651228370 721396542 877302113 901321558 311188821 814054474 328659916 528991734 712584622 749004276 667738020 848352022 321293803 601712672 728752375 858180780 683145836 711269068 143113569 426428902 746831904 931366823 460659206 494803630 758530419 794777600 852596727 938647373 406993089 473780291 839639506 936374926 567527254 795200522 578947287 909108919 307940018 792337568 65025060 522946926 564699277 795921522 210365967 957275268 370181417 473981720 735471391 970913143 330729672 424419650 688345720 929436110 59933615 742985669 523976821 915918776 270237102 525595129 19067905 507168593 560527204 812324093 494961292 827084191 928516415 963697952 571652644 756672754 127014710 392013431 995907845 997338823 122836627 267686484 61244027 527774063 922233698 950536706 19739442 917941013 846860021 928157807 143716072 668299530 366397481 929259273 810078113 875094354 743559335 804728252 479370658 671497890 596415522 855661956 498911555 994127671 670996790 942929334 398946759 790556448 360817485 575810740 957441747 997117942 727802643 992601855 544822952 844849922 929479825 951926357 887752953 931979728 338786348 690818118 463459078 739652626 589189094 811307291 873677347 953138857 614114589 628951698 653405388 911551827 548237566 607412046 331266998 800053159 729131965 764109407 458360376 543550591 958095054 986473631 968468901 970019454 526916782 864470470 536850416 658087276 168945528 209536578 30921088 360486531 994397996 995193236 560051928 835861556 125574548 525372395 264774429 286735744 994708328 996630317 425191413 989861574 187925830 364501404 922547088 968552625 687648108 790150395 641980839 926123824 533523617 857642057 133083158 851802288 878654166 985806039 799523354 842935414 9506675 344147336 387063830 537420816 231128072 415764379 528920014 654074066 625931457 962974429 296347622 660078940 561370430 682222689 918607071 928906903 45222654 681310244 11677252 178914328 796570016 960243055 465277301 537555576 859680563 940956038 948596355 997050555 432423888 622744946 201776475 741997429 597619104 953752006 544771626 925316512 748999995 933028183 798834607 983444906 794689289 864190320 187326833 640695048 474902990 970165429 834655306 976579081 582085222 890301959 380091327 936808472 342058150 967546459 246201398 679802143 302526659 617008829 342214069 516848165 937373959 959048740 294338457 798912411 882002202 914608571 139710574 181656441 620634530 966339252 824784374 828233133 777293225 839770306 265552915 831293985 209447152 669947667 582930276 888929326 168059275 588687505 668203755 720520043 531518879 835639277 338688592 630095677 920036648 963081464 932030526 993072510 541770515 994594539 512446925 553598930 839188848 891911627 453335011 950883035 503637947 886549783 246161831 600832310 730603073 924796821 440240056 564240115 906256541 933072785 785637251 892663784 625861639 711047010 306596028 728904885 526319373 899928326 243531824 528448563 794584377 882924435 978554704 986557991 300626252 745351401 778475897 845153642 707158441 791780263 676764783 735989089 217579596 318937718 967211337 972406774 71947671 172481150 61064617 620535882 65453418 300447309 365499255 578001238 955103657 975112920 520087707 701640057 316178539 529015793 631272873 947559009 140243133 435072515 58845673 851388622 893920718 958024958 795572794 914768574 62620709 274655251 119380898 432244561 880015444 950178588 988993759 999783676 269482460 477098945 328029496 679160078 426797725 950407797 552860517 894063363 72369057 548355681 507029031 597486971 491731277 696009361 6892450 278960444 144729626 608192337 399266277 926295594 56505220 946853574 561871474 930701923 550880846 698712982 449156600 979781731 895780254 936147026 79416943 199209161 397288762 716399267 366711819 676688866 620722411 623665310 829423297 907154489 718744845 722123989 158016422 812059438 164172730 439017770 762057691 928853999 635014824 687893356 237023291 645724323 446120643 748974176 60262932 107019244 636436187 772896357 984400184 994846536 243986895 804808463 150322439 385735083 662702030 960021485 541510517 744654333 463242298 937604985 729944563 901319137 253642280 974246064 662755870 793219802 340087089 811366369 760623883 936400154 31363624 233085819 567334544 586967357 172248674 370451260 387608548 937276318 300293099 339940945 157275222 824757307 573101029 935893841 504121212 597067894 436718519 839993571 298156121 938796813 84194966 767512558 985419752 991008397 678161815 901989108 182613583 558399123 680610787 688355780 162005195 437647421 572632786 787278947 553255983 809260031 251562460 394457095 629372797 716543425 728537220 786684839 599403307 683922403 293117265 804922141 307582300 927982145 250018750 988117284 215816924 731674302 295047618 692470203 866314063 963228291 499050231 924255090 160547805 502581627 706902480 926493939 358723394 402104053 241729901 955936448 258149826 894856677 517554177 592023596 103717464 859503760 768734517 996468892 847666249 974059461 505909469 611151873 738783086 753689732 799879744 890632240 503234476 549432341 681248588 927619505 226565259 679071524 286030804 901859207 327613585 923829370 35006674 54046020 173286496 210395551 174316744 938921042 50724067 75606797 529683014 980578659 152247720 780420115 740943037 825646353 294056860 618660512 494492197 874999273 746000967 867469339 495738386 726791192 437562997 596366962 350687035 441456112 283562353 626066755 297241861 304509469 846913642 947324242 411990029 991503179 56339416 77123902 624964096 868537900 845798581 956230868 618618917 919559654 8873017 74786836 106294616 871234742 989794637 994407040 839838312 911106044 805541353 813724281 535473482 539245126 863292299 998381242 228631348 681666930 36513780 595440873 634894387 858945046 155703276 707031766 947927555 971618515 22269074 578085957 728839265 880456200 824095843 965548910 409811737 472380226 895723696 979346371 548327973 746208909 975283166 981674109 741747533 841136211 844471367 944800500 167149306 975707243 819243684 834469541 799321152 912215109 909494500 942182646 467473358 740608257 772372138 981693018 740516640 956577820 151978812 873093949 782751673 892443351 841287177 949188508 772210763 971927131 532559795 681628847 526156826 675120597 556070635 730594162 660348939 999623985 338463297 726494290 874016952 895013226 572816907 659337872 572710769 828012091 50446886 358681314 325909075 690855429 810416666 939126348 584977953 690934099 749969896 802479928 879910641 928176463 881234349 952092765 280703752 978516367 178497079 506156864 159541253 959606178 302332877 868433533 969952295 996032354 606743045 736312061 270441825 589147798 724111248 821461357 889263279 956369159 171766074 244297275 554913639 718289856 414786173 873152694 82509380 716901026 623043692 777892071 772158862 821126614 111999594 431517378 680366333 872667455 70428851 891508706 780404720 997496789 356677814 747503015 563370850 685368577 412973311 979150086 943162775 956829738 66251429 235279928 491440773 935540452 355641006 669061091 986349293 988144432 485394884 862014014 838954795 906814262 15422854 350906895 54182680 166472247 731930475 823640189 886993391 942625706 92096084 713216188 756401976 881182544 208859632 760935214 40592955 679873111 341253686 653279594 372570462 997369139 570723975 904035281 808225852 870440618 87986845 530886476 875557834 878818886 325023727 772067676 749412172 881475941 510365999 876039958 332207980 789458640 898262961 996059180 244450124 537141282 908718290 989209727 893995958 983643988 61753510 319744469 139086535 385034828 143553782 967009239 444343229 855836333 508625802 886398814 284954525 868948601 140832721 385488989 32148966 503887523 112044136 135600965 617920281 838944239 19940122 192857552 360180107 473900782 369416117 899977766 108836309 923194516 188900182 654354495 468394052 699949690 108349285 845003312 699184467 881396511 461771537 856904568 818470937 946777958 980371182 980918301 784363212 882406025 635983064 799348045 455541124 693535400 951589339 967751034 60901280 748926043 579275245 843716300 31229478 174828026 844273240 922618746 133265654 480569707 1494293 871506424 554166703 651659607 226352672 717568471 860126209 929296115 265677191 306235164 793290753 971199101 874089941 968299447 806848632 883490035 912385337 963128110 390781388 723473143 909523533 925962335 493906048 706504329 540961959 921675971 857185502 922825818 691744790 697071801 61859290 431535055 268670693 950878462 866736506 903765227 100180335 359699089 949817941 984377599 970591502 993402596 166608103 768179932 189482878 516427384 66341637 484952851 431812911 647621814 199728323 548832405 48891715 982819887 33385506 427381119 174781379 221367314 162340713 547078379 68553521 474730318 101041739 257645417 276917197 443467002 71373161 523150327 387967252 567256083 603437592 616909179 931968857 989389506 433518334 476281072 532088609 718589346 916032027 995570774 520765430 567893532 86120177 496364632 246588313 807073850 116630633 747513843 516661765 854099881 134642972 939835064 69340612 195572690 272356488 738467577 863360836 902943039 368556137 517293648 283445516 911623330 848180314 997328500 362974721 976932327 932514424 971559839 900900808 934371516 137688069 993156849 269764234 506826176 580770445 982824934 425914929 432376997 307478649 888062601 187960670 477735387 304262332 841050651 904508108 946377043 202913403 326084876 382101219 435520353 398946317 503833550 652843804 935964080 196889129 813469415 965724551 989284679 905604525 925930539 95769249 600094962 124470232 214710994 885948469 956743856 210865069 559445247 391117313 741253159 44541180 889076988 302489220 956187839 157057109 689107270 131041460 790035331 520475392 880314648 565723245 985296696 879485798 986197016 225821056 271064186 359274559 617927139 909983045 990289416 446187596 962683848 266581898 630127794 904588032 930854879 818718691 901595475 563060577 582925051 534540590 673433556 642210275 670402828 729509099 985117243 558675776 583055760 70905700 235481883 718795775 832719831 256414332 886008143 755684468 765766542 591194733 834411347 615068590 817316859 948772171 978190149 499322009 992622305 371470262 719506905 727039265 819046358 381352888 988173355 85924401 540561364 296898013 728164551 140332568 345537408 848126802 868488989 32770104 85205909 225960940 306096901 980024543 980390947 899040840 963367783 669540703 771015391 750821586 826314840 181867484 662015352 390271921 582624451 506714617 605692049 175448159 194888491 184841132 364989824 939918716 960105119 965730209 969710287 763077414 784637239 603832727 732715125 656121643 813893794 486615683 920633603 85948615 695948530 709419079 892014054 562687466 847750458 930735415 984102169 482004875 714878786 474108159 816231669 919762595 952681240 381249339 849346207 163595058 438537378 285336725 968054030 999961291 999965293 522656526 774164146 725287428 758759739 195067273 320977953 429823515 974105964 950327280 990952069 417669352 473867874 258906568 354736577 827336453 829299078 906880794 994636414 709312301 713523209 149968198 639524027 103882282 149905545 550533767 737836809 388060812 417420565 848702677 929542806 953877941 971653428 92733873 968920835 45259815 60243098 58228711 424801737 174925815 434731908 98705489 492437007 314900064 577472063 946909075 984884367 326874156 651925017 843196152 947904151 714356426 899980421 960077644 988129768 1803947 852945717 415417711 642298913 576835077 675668451 996390956 997517841 420211619 701795808 11662037 629056411 431895330 934702232 440795386 586712317 988004716 995922960 771793727 775027533 539811684 742901169 656623249 656923048 485616265 621085289 587466001 743017224 163030502 612912731 932624657 953407873 975320064 998984485 489062047 817820101 992604648 995370329 568495615 805860997 547127112 604272888 652328706 793590506 527679792 862114400 181394038 948011307 870116666 912142665 464188510 987111325 842095297 944927251 455002011 919499291 845584054 984438392 680255716 850165776 891154117 901575216 636912268 965748152 854415666 975332082 247739266 825513339 648651142 857943990 873679953 974879939 203375459 436582818 613694414 826976030 359384365 885741916 548222908 780886644 608867802 848071196 482241632 985997300 440337718 557716174 445015766 882274065 192764208 761945157 893293753 981748305 468465704 605228242 171101152 565330521 350163772 768182179 334846847 656642296 795236807 949209936 834517467 884375536 854352787 868327225 877717491 934639853 895131880 947610833 700552932 955416566 176488680 290432118 407258036 575218947 884702909 994114099 670516607 808064347 860965176 916050383 3071247 558653854 677156854 803682185 857494365 924052373 668630798 674047061 24272207 223568177 435477423 954798838 199925304 425819945 624692265 946789131 81351376 506860142 496631994 527934928 666290037 936755878 445823439 656747131 510354297 672478482 461485228 599471489 868207497 957388921 296789687 703649491 879009046 889695852 386236477 515678843 12639604 473452235 624165091 752536436 521870167 914631495 649510299 860268928 198778889 518889826 291246859 339527646 958959903 982820506 235180728 509036964 529099864 916855608 390406102 910809716 6924150 53675585 902180518 998397520 493610079 777548080 905825639 979063194 643732080 827847540 660005207 853942858 387155369 402145883 710633845 891433873 50034834 586720094 911805006 971798605 781009152 938139557 751479877 931650025 748771738 926495454 160445796 701515213 341522784 357300070 118425250 528413271 648550835 862917519 543638538 584197457 10290619 929316358 196039346 346746893 697067859 791905893 963167485 995897298 449777961 704181797 573959202 820855180 934234874 984926514 889525938 947623490 509351413 918564889 92303012 906649529 783051620 960741200 26052367 959503733 474735936 848037041 87717828 228309315 789894184 856506172 348456402 829977015 114389589 275194517 496905047 698946535 223050868 846150555 884493966 911912501 662828156 941316751 906352545 976791789 817459564 932468325 222740958 422856256 718414231 733559531 153059019 355122058 427017693 489424842 204012782 800635636 407926138 841066928 439862498 828026599 451999097 632246736 286617060 503792329 891416348 939248964 62636451 394540462 601579922 879381903 777925190 791145770 82889401 199187377 334288583 337382320 462164515 824007503 412515108 831201983 913261209 972562717 949565794 966663644 915711466 930362102 747734684 956230493 650123934 967394342 543868753 726028129 165645693 785679898 673047771 822031597 390273437 681266209 480536024 592517992 401443207 698063564 535912234 793526828 682068110 921348184 718622064 998890705 111184454 577561852 767961665 981334853 19655404 807980333 243505956 429038130 593123410 878615627 682509924 864135901 499528504 887451902 560120224 828613282 779665665 939372122 82903427 113133117 695888133 964406004 890834699 920880951 267941566 925544898 604649348 949335201 918212674 929463809 15404395 824055652 145951694 911880354 713571023 845839655 514228207 651813815 4612042 259184634 686006046 948177511 808884572 954164585 89133913 872529834 266168779 412163544 638276653 845568945 838478206 976591310 673860815 964895453 433937380 565328779 259080302 401158209 715306578 722527646 217101657 811996911 495074479 647917783 363227635 988681109 775703862 816843644 509989158 564666984 248928893 412796597 280697777 852065120 42086485 748267653 796123497 913177529 456672976 566938303 737777635 884961876 717371799 730456536 893814938 917064180 706041364 780324898 418272059 623728805 395491240 885103499 658265603 777764005 964205634 999544335 109536647 712785835 635803380 863187851 833708421 876641652 293819718 503759800 544605742 810130546 95435742 751782562 734835992 804248383 337525993 723300228 909170630 971893912 298676389 993404690 419963563 895737729 289712968 403503691 563397602 690702904 350118901 858629976 475248136 591106546 458337848 923747329 543776000 593236709 671417442 970494778 59099192 611294449 469721927 522386561 418410546 907503575 94470690 625485968 258464425 285460446 737765003 830492566 386713274 688198073 213713238 680005721 42022477 973763328 797380603 976399437 828970491 838805521 318610473 964505849 802151432 848825508 498270948 962663749 249819689 662328170 782892660 838685483 262172147 831080503 625735105 714434042 142062145 990325861 468888223 645350209 904789729 930064319 310510661 917637486 103849246 604810872 762775666 934960357 766965134 913406994 963477814 964598235 185822028 605271464 507447177 513571203 290057716 836030465 590491370 721944955 181080269 733121169 254696941 395302883 311208185 697958570 95404913 159601122 869846168 880691798 366714726 944107400 847232672 960255405 177615914 435229559 134564865 195350587 132254212 160043386 356624291 616517338 653942180 806757995 673698666 985783097 506543453 511236802 920607295 921790707 841793493 941788700 142265298 210716845 981052635 981628222 266681348 543738058 661042972 703115750 638153080 977269450 586319324 704506849 626941018 783694224 879374578 953113598 409088649 484619895 116254193 230744312 754475878 888508813 298257616 488526922 634140838 677088704 706408493 967107951 194191339 512719256 648139448 821823065 411290848 916248890 502762521 618187227 132265736 306216988 236806181 469243351 724231128 929110716 487017071 543049147 361941339 681721711 183391244 585575222 481445330 507101766 183492610 876517547 737268193 997646170 836992519 929938147 2442241 266420532 436711397 614609209 851206890 860397008 544272041 871996834 887830711 945983454 580603852 586255136 330744046 806468468 552280333 981645596 777009045 930718016 279951144 900802068 492081366 846229893 736761810 932591710 742968007 972234091 786632524 887622160 558908633 824579729 161800326 268839491 725326673 869569572 438759410 488303238 846721942 847323354 531761988 931721820 429386174 566424354 527318786 804194393 642257367 886156891 461292102 765905148 944694309 958430008 423773926 662720914 110804331 828824233 860858238 963497248 858662583 993338847 927589311 946187705 265325968 561782388 886233064 921138414 919757054 920760503 517778776 717557656 683584879 917151129 383763683 929298119 309751882 577390185 919448106 921916386 283689047 699157809 366083011 725003603 723924106 934881080 470384259 668317868 234175213 546694706 140498275 451333142 494884102 681356257 679159363 944087953 838975127 858399264 346605508 365677688 258616507 871969579 579155838 599780789 284972846 812311677 226757674 428913780 201273609 500433362 301956922 850799980 261947583 498141874 662144983 987020671 997129027 999002776 580423584 775368848 398345276 608309571 130059840 720998946 758253279 954679637 433222471 508312491 853207560 993281029 193293346 556449998 68512492 861605282 256434766 390510602 734201954 799103209 613952985 908093552 344067000 477835677 350668041 435801015 282912843 397500253 394470991 894198868 709477595 743505211 378226794 412945396 760922197 789525297 737630477 956653161 441105268 760631025 984657136 996270783 927954190 971502612 662366093 972010573 259111939 603233725 727166699 876109279 62215287 711241814 931635881 968662677 888508011 991005976 605048414 937325872 370974312 810633004 213079342 645920467 795263806 917367599 123793249 437000481 654986000 962770215 566294847 844944852 982314469 996304215 434042086 536563654 618258903 992673324 787247932 819464439 831429526 907338417 398626950 482443472 54436084 284704626 413925642 566494694 871755143 981223015 103102947 500675818 849756296 929175113 141255789 391910957 232457518 281635590 554539540 854853105 665851223 689319568 609788780 838777211 425469603 734407733 610832561 964396338 591520641 782185727 567993275 648166185 218235915 306351252 269337512 953443336 228379442 470372396 603680101 881062901 330857152 618500257 973200945 991490657 154882630 764856960 863403806 999972070 221349252 789835685 132602291 401032969 111138366 341672621 728230382 890814604 167407942 178262347 140681147 906960402 603611305 657672440 12062248 578042247 594119369 992213540 33159688 269437833 921688908 927430732 16959180 353085827 734867199 938025888 14458955 589838840 659543375 723323174 618283310 803692161 949300812 964473734 276520543 828157730 166407379 483822584 765615614 935357788 17536057 238905142 881942541 909120689 688473566 725931663 635182705 848211737 803962183 988936585 590046623 756662596 490113732 902778352 128325372 536656916 271717943 741417264 421958195 810609460 583663101 899484353 142892219 958725201 396082498 536821112 667098995 955265312 576340445 645381961 595179118 953277388 65413647 426773662 444612059 733601947 877499928 905624645 821195970 974801661 386923465 541121268 602731222 851539361 250336273 994489973 280740384 904007104 354170504 522508936 715517954 911082602 532684013 909596601 574593087 598712060 466417230 613360324 397503688 642394292 281286514 898353967 852125384 965402087 318486371 613277412 339361175 484069071 676085485 897205312 419910405 503768193 813125615 882724983 283038625 696880146 76131598 683941796 711224349 819928349 740813473 797781276 701167442 814398113 793211669 824894758 945729816 970424739 928381949 966251060 906921597 925364587 98048151 277431187 939118570 941406612 241267989 391854409 44098164 336181842 183089377 435454036 687039491 728209901 634904581 887172538 586198676 877027775 287655202 674705275 51909958 777175937 909491187 971755808 193447678 339110709 527125616 803589586 830750465 895522996 701172563 874208161 580690699 764812031 725540566 798714225 523012335 912958529 892006664 925646552 734064369 777565980 828104014 908105639 595589892 977372931 161810928 946435664 549107510 560130394 216892018 307942231 607694206 923797164 116581639 507753304 152365459 788006110 350422600 714113967 542549024 649826433 780978133 821411051 265496832 762967625 123703609 966363112 111904964 399922576 736799324 797641065 860801726 943096403 139574885 970620202 39517396 968719965 223294133 268883128 593031849 641493913 251738196 814910904 640976085 933573942 365292728 509730814 301399927 361976002 378676574 569757516 685300766 997169568 764571082 841894103 567917257 748299606 449195693 805244054 821586028 937827537 692152672 753067639 983834229 992881627 732206762 964452878 73673817 815342468 205602523 554275732 987145952 997858539 937348637 986987580 403349461 858922715 36318653 746702714 729396643 809407571 234906694 653537241 659409020 906953097 371337013 949780632 722819194 977542604 85991636 396967783 240835713 535550260 628131313 926991245 413729315 551229614 995290438 999788659 687261190 996875817 921786624 928747614 763363521 763945946 800980413 887892091 459364515 863198512 922326293 965837790 18841647 979176480 558096606 832583962 210806081 241012770 282724747 376080540 930263380 967074453 775496741 955908810 88463306 242239437 528812637 737411376 801455578 991804080 131055205 812589029 510505630 626018855 137450937 309364316 627725247 680389588 586889303 962089154 206046567 552324177 191228913 551364272 134652639 632857977 352869986 505043795 853165846 902326494 920091875 953587073 223944154 843322078 922140323 933346297 181086978 202187640 968635946 984445707 168224445 999249271 526076904 892440997 977344337 981022611 317489991 694502079 806457515 985647767 387227646 765591549 889126622 966731802 555768461 984968625 837952319 856141051 957118010 994566485 169298454 201759508 509862432 576535299 406533193 437457846 526094 954090070 185639489 248881295 906693156 918981470 10831213 551712521 604768656 898160120 131734731 237653136 117710142 314132311 133403872 214893902 262229256 651646809 973265846 993190018 401075299 429244155 110022287 716533766 191686230 614559149 529685696 540218596 110101621 498557959 220095960 779116955 122699766 304674774 418246728 951106470 476411776 532789528 348776050 447271235 260091550 434153060 245941378 593981186 763562304 795842179 201770110 960538153 677464955 975520262 198461213 808182014 59939938 660209761 879402089 994712342 167618878 479525745 869348316 892976525 647635770 880514065 295359773 797221572 249693359 660438676 998663806 999916562 578208603 986335683 868793874 957612991 62947493 377115022 204964514 895773028 638007685 952735032 250476165 323350202 612856308 914757929 688513719 822877494 990690053 995207755 628483100 838556250 896250058 916450500 165418356 627354989 750833729 942034607 846289460 997651594 980080316 984253107 850004899 981915271 308822905 824564452 232080125 640723301 895385951 996330600 43535152 870356691 675943773 689989899 662058495 708231662 327609924 590672032 786675300 829513763 730625391 930215373 703637810 741148919 618976937 978238331 101579790 975719758 518970180 647860613 944530643 944814169 719740416 855346889 673474920 752916424 221835403 732282815 214718374 496588108 464932137 753504443 801145455 992209607 18348238 303131531 885380207 924409406 959769628 968586027 923322271 949723524 773661759 847120737 427149044 737015985 660798697 998767434 326073107 500310791 418933262 773860279 888109262 919281732 589567528 635689239 501252511 517602242 971629358 998063691 490249003 898738615 476856970 594272291 719475295 835284376 425182191 625010162 723596085 866817061 724962185 769282019 799170041 895499717 40960449 816281837 379421523 867769635 930314245 996100993 650853412 923929020 452031592 567455663 701588278 950179842 27901887 316368325 772115920 984105077 989941035 998347330 450614900 709696654 233971514 582836752 546612539 818824143 832489442 935403936 147965804 697666792 692560798 774997043 590493426 607223446 831313612 945537596 471574059 539293885 806671605 855354149 730376178 966083821 701324551 796014034 580817184 856941171 564091374 598766606 772893073 786444640 67016402 801777491 738441792 905283895 370626246 660508253 541758895 831773395 810030816 811833010 83772048 547708325 214407141 267111602 828207974 947273957 364551705 791586381 632754485 761871202 609512604 627229726 989425709 996207056 562957695 970654814 71256314 284711525 689175935 938479262 332380728 766816783 876583515 918782334 768638647 810699248 639637024 886395912 703284839 902348474 170358250 463609746 780425536 825304414 781986071 809698552 720478951 986331089 406068698 706625751 403531437 825753131 1501510 398979212 954730310 994352902 165369017 211033189 728202216 779369360 78370160 420333191 817608385 839612965 410236200 839222179 959374484 996749891 668359570 867753160 942307077 995943209 872208770 928448483 567387780 717494477 410734694 658900556 194789991 946110051 415507883 856194612 358157182 803924713 224579427 472142558 165284663 373729582 120915115 506812887 355465194 976696541 247064887 619245154 137417897 854640847 981321230 986402911 516823585 652058765 733010480 962287601 810156223 837405040 569557984 728104132 74224291 663825818 951007619 992813986 812782345 916534227 485914218 934671073 676398318 812358718 943350412 947304120 65051398 580588742 596797076 603542713 16634391 798821144 721809066 773338389 41829869 254627776 485324096 948747183 671134567 998860981 81298014 818876158 292204678 350842356 782865556 984869687 390308611 857160298 52256184 417730702 578343063 767607675 288569114 683569330 924389128 974533936 522614201 744202845 122399530 476848397 854322129 892051299 229134524 714513150 639114892 645772609 923393960 957884117 103152319 438025229 777747826 939256838 169931525 581489395 963502723 978983044 652324177 992279111 598196469 938363189 289639775 918681709 970932771 998031778 181647 391368605 840604384 978371442 867355097 937036665 995483387 998918040 195217220 641123237 131380747 863054152 179745933 750950963 921240037 932144568 300048685 860387001 986951546 989084336 503797238 742087969 560558015 894368632 968553325 988023720 836285617 847344820 244173557 418225244 203840873 263507263 120967962 673495017 690629477 811660349 129949437 159343682 698561052 788119916 672333784 688708537 292296224 442296161 805356655 827846323 712334731 967387020 516006950 738678012 983112865 986102278 467033736 610449855 971205483 997694610 987976711 990402892 612814502 984605878 312665162 348270080 570797227 743851115 615893108 982779943 512701900 600825124 189902690 932555240 119009604 616969797 344340041 530457211 254531759 336001380 899396037 964281882 808511912 811574076 53146037 976777489 302672839 629989419 743456569 881810949 718279444 980559548 479082407 713733280 596596276 846198805 929211725 949799916 12990495 419336961 655590974 851544774 629874942 979478576 758633243 866462488 612932387 738803470 971454824 980771467 612485362 928964332 291958042 501968946 711342700 913418482 993742230 997405030 582281115 644109178 480030879 539245790 48322689 693897496 151662733 682772627 599713363 915288695 488050565 896790051 197920419 739776996 441891666 826400908 415052352 500785261 377262876 448330369 843751563 965108877 271902273 594372829 494027694 730409729 473395077 757643355 156949951 281917824 353562858 413761318 993302779 996739184 28188884 239970194 671709237 860492018 811529326 977646176 157289531 539192679 674906622 694275994 759981662 881970332 138696776 387665057 519916074 912111344 127287279 713461911 340133213 881690138 667906852 701026301 642247611 680577930 225497305 538741717 39945066 802282565 698036152 733674112 201501923 483122507 342382847 908391396 772000766 809223801 878688945 992249292 738983224 944808547 75285530 594045639 578345719 852995734 230669663 389715912 381163178 488442289 390956733 922088929 724825643 782870133 604810250 887704785 921732234 966247869 804004887 954648815 781456905 966330687 75129784 829948355 160554216 871840658 855643340 932046374 739363108 771198517 901585636 997005134 811607949 963118852 291438346 685746908 520391598 935255678 495868784 810008179 417178901 477157840 165696066 658147793 90758156 824289152 227723154 963186000 471876423 955032904 963579987 992284872 692984310 766104848 936852567 938676672 108122470 642065310 611667051 848187645 301875758 528829232 302520703 797772947 406046670 552238337 554345076 890246449 477463893 618002338 428959185 435763163 194942237 509784766 730422751 800044157 794503162 817490957 437652144 505715716 62369958 122842702 714776548 743121995 213156611 352275969 966553061 996378464 963021923 996901345 269691576 698722153 609536273 957754359 765782867 810547221 34302408 131875560 268714378 426232993 772328871 922525355 349313237 811294499 870182832 992510603 233456787 897041373 382147274 905797636 151558693 337391432 119210110 940615144 672890112 898567660 395758902 752273139 310838602 362357094 442030213 798105750 373800467 608891651 696556159 877903191 254579990 541492172 649590109 731474047 82465010 857168706 354956699 641099989 830431331 990052956 879457219 912147399 749411540 975870325 797756798 807135453 450668718 771702638 125382760 735031936 151324892 676059284 392029767 911663386 187313574 798757612 702460537 950076610 978484500 985774963 992813156 998291232 786225868 923263008 663845782 772027342 803571528 937951273 61958304 857375460 779438540 830050671 817741248 834910333 473087033 882889657 686613428 858470845 76733729 315472663 544564504 633047793 114324797 893657303 827206915 828317209 74052766 766992071 951207629 964267075 557202799 691460947 800188082 992492490 940477018 973128348 739538668 895519143 208478390 492671480 562288788 668477982 587923535 621227387 551023302 822485163 603398438 797601981 153333789 375816675 134995873 806373611 86706329 694554585 819229329 955227284 50759369 73120174 794016623 850231393 265296260 476764857 459432803 593111297 324908920 813246129 572310756 629613580 73946369 146901558 899111687 906005369 131347665 751949526 758410458 865066193 365847704 668595589 764599402 900946708 508889437 638804266 464696418 514573875 203859359 483244644 1692747 20486129 587243727 622722598 412079401 950790407 914726560 929872108 910312663 996833131 916047938 978820867 822507107 870967268 734929912 877815087 246652227 372066036 702048437 925970596 576599710 588519898 183729617 828793426 785435069 946158936 380315806 835348404 349213531 539848496 846611595 853973142 16784394 913144894 211551192 670875114 767763029 938693941 709404852 991974291 14856128 689539113 606973472 620165134 563314249 927695854 539805101 865863013 754301574 782943917 390439074 441694658 19101446 458678753 665928823 996121430 589592984 673738127 200928787 273491254 939750919 946414839 417413695 445298586 578711718 684158395 892039697 970068896 874082282 883228025 69176941 417388715 25636217 73350013 988376839 996051294 957451312 982485079 687173214 793241675 777629085 805368057 261960942 682210695 473325640 942802106 17478839 743299451 411789200 795027726 939599743 990075049 287476400 756470210 806417125 822231246 339406874 876046608 112818079 642842962 715627623 732851603 892695642 996316610 804824074 866373627 381077434 587739323 66462174 760112582 773794561 984556823 700574159 724675870 87785817 594056726 894341751 950433035 575942246 824644734 200435305 317996191 35461872 143540062 149153809 622567696 913714941 998935211 958774936 997607557 972991139 996673814 97998104 115070644 670066729 978233975 502806606 780080744 760354720 901229444 930779148 992553614 992224594 998576841 233674342 642340421 452603764 600749741 11850421 695005687 773998932 841353873 874422706 983809268 517252043 981288166 909154646 951149902 936098268 959392859 96354506 679517552 726657829 891243332 962003192 997818262 33703025 471673815 192915434 436026773 242207073 462001581 452457632 877812548 194784117 842902396 628193846 637305989 310492283 619393862 578683807 633778017 703541263 753573202 313805988 859272330 297922912 516883166 390190535 664411264 333382233 797063187 629552290 759146476 869767449 969925937 542278753 583613047 368169064 415707582 51768431 342313559 417269137 907133503 501358594 715274206 676740418 786320033 16681412 57140339 662434101 886387237 90536012 98431825 5059411 371759450 985670808 999089486 412450655 869515770 759697594 885642425 906496418 931191410 988013456 990927422 257226524 337924987 946754175 965015369 44853414 650542642 269429337 866991771 223531683 452969366 789439519 980789638 89418142 459828658 820556334 899757381 611720700 643297885 633899764 890967390 840859595 888942079 156214665 640695377 823358854 901348983 688729113 915980884 347829088 532491007 432164329 576535941 493162871 889020465 494762759 561712029 614492575 685576984 547325456 605802647 954916232 988795007 589605505 722633230 105838287 743687459 187635568 430585533 132556757 195117792 625741924 724772688 331635170 813476171 24669303 585886375 369585640 589241208 585027132 625337968 498199426 666323001 501904814 818847130 989961366 995822869 357593761 465416129 767673016 941956662 270404486 770703485 123427012 533259676 229494647 326832830 160737273 250282025 112121960 777857276 441036632 785301101 23490864 630893650 232434169 381987184 761831292 995196214 507623007 878812223 517717480 755975890 633759175 744076643 157538638 700085523 290108020 520672894 310048425 832771771 320837078 527695647 653839400 927150600 250963808 758929669 143162087 236952016 666387038 781648480 682935589 975712223 980138201 985466638 933938651 993439380 468588371 915108060 769451754 973072270 681671084 738665698 950507902 962248584 490968558 993557401 754496199 935754318 517507252 581839729 295513817 889386164 236125887 908510235 745823513 832503597 780117227 813881019 302558289 653631534 689116966 847200016 438608841 527534454 533556058 620329443 55256204 254185824 948284842 982600546 838514865 973349273 77616930 224649928 818904746 872182444 343216686 344512865 571347308 612893097 377382374 669285790 779322797 957535170 651621481 721558451 237952041 771012365 447683416 988268670 13749304 427468225 880559078 921152391 138117855 227830173 692893908 872242445 36084146 261203666 101824159 920759486 41122863 399221332 801096431 861943642 524022086 567233913 754971893 953730798 726199628 951924802 554873663 781660634 679751507 948672617 208490990 556739033 435165496 463479525 801935030 842943535 405209533 635403371 328547910 404722500 736357559 848212088 305818939 811034827 281507795 674453088 845343662 943359626 670315398 963627257 24493785 471664481 4000561 188498916 912277208 989104419 672593093 900473873 369511891 747350125 522916218 776063589 370921005 507016851 106884019 485559112 685340883 741165895 81133459 842428952 722511714 765661740 146230187 988794767 603375723 644671273 862655690 887811637 623370620 980933239 989968009 996417843 270747848 924891894 552972752 590340091 202095553 977194805 683360983 795312509 324141621 880129907 748455235 870013008 866593212 892383644 708947905 751311411 243658592 559861302 380731739 495457612 432121517 543870639 39479435 603221096 725520842 900079840 360405681 768380611 887719395 918784382 556145867 719721280 514179933 672302757 502663577 998265397 840783646 971883290 480593425 547558982 751450171 900371127 394859135 696971313 900243717 998810889 895461989 997011197 334014494 655963075 509373911 914271477 606653153 771780207 967070653 984554233 300131761 658334568 641188219 928402616 620337101 973796253 595581067 798572914 745239432 941237215 891736606 930040462 912491306 992272018 61228831 856542553 542200459 725157952 345388963 778126106 847834924 929409613 709330662 866788827 616789440 798500395 707285509 830964439 939667957 944567989 75949318 990204644 344975885 612592731 625141457 759383099 599892535 711321278 886110438 946994151 971184126 972531101 760877395 858468120 562509787 961306402 549697448 572169173 87787967 212406186 90333828 165907614 136848105 541530560 291151096 755387121 278164085 849269892 321908441 566805726 908121703 930949258 683969923 789112307 485105502 852574434 14727671 200018494 494706415 840348559 51667979 137829999 324042278 718791759 80431333 275550043 909942565 997477552 313134851 641049723 737897285 947818122 909484798 969251422 26913259 650457035 555674774 918543607 762739363 879123051 540380758 598638841 744360966 812166412 496729847 877562907 581914846 807001599 426069878 660526283 662689770 917993952 52254044 831030271 818328227 872894367 420912749 807768537 537817731 670250246 228125234 518881033 862789845 887585946 347163152 371912370 249892808 449667623 286167561 720545991 853347386 886382500 88283501 537713616 566956433 572901862 532528408 893889477 479166388 672805026 348714061 909956290 430429664 768272853 705829715 809138821 1534044 109081377 688060756 988688318 527702192 929429172 332050434 740094024 707732378 809559571 694015994 845916271 71815918 130097000 168304164 628939674 386879006 567279767 822814021 862588580 664770072 770626505 461191096 472285886 648864115 796315640 219747891 764603769 43520517 784268855 878678494 995510237 112451099 719407005 598347858 645660740 833809482 846541268 220641478 318602430 919254618 921502597 806893446 944828391 326825934 471361245 368288252 656410680 809682319 813854061 674058471 704764314 324983043 328047596 84517178 275752362 732193087 847193341 247065947 555838673 563435524 585907953 215292952 738498661 106622032 676054754 245512749 689934383 752107977 890850329 505156710 926211369 352554864 722811818 7133121 434584260 871504872 946570403 208481490 936179246 61592008 947309639 830211694 964449477 437364871 571982677 469551217 839105926 651095774 878130905 800287488 907664304 580970018 828400248 854798712 977238206 712424365 902904037 544088940 623505523 429437909 712319147 73554868 756573621 520372950 875266694 241582640 786849539 104962506 946159946 615830879 698397076 185964655 697287268 882092112 982355383 194064986 512603101 733474445 842305567 608807187 768584047 962801877 968248720 195340287 586192519 336905031 830064827 517719199 553947703 942541145 967880474 914516864 981114662 635278331 831075877 93147099 682517078 402966408 965692568 868691623 984830042 454808552 834048449 268618040 908313075 498332667 952223373 818330217 894467052 935990177 948320469 369495768 655936324 29878128 851235221 739642775 890156875 502203762 679113693 806099484 958974346 153765620 367496284 290186525 527596605 986698285 992089285 346495870 587930654 817952397 819624299 938159251 946919422 305786704 595689468 158925803 954464344 983967182 997665103 208597603 308004556 910608901 955525096 848064021 991122924 299390985 575000457 35436625 498488930 508780676 557357507 721681959 913551112 567934835 607646345 840786396 865146013 747607894 766196606 325887835 590549167 777120042 886243697 837027197 950371309 882331895 994000535 130471194 855234855 727657014 758561515 346873368 434730897 754833396 929941923 179376039 378453573 669101658 804493541 793943584 901878272 709931387 801341291 771189352 773956963 404144432 855882923 5310160 108781175 779432623 978348073 625666679 747433039 730024835 999709438 908165999 925883405 206795195 430893729 40010984 824425631 64149726 297188825 30169575 733625232 851811535 967992084 405182644 949539198 303750271 907948050 817062782 899532066 819435222 996069543 485511424 637781484 895621918 895784403 143327081 381212869 849837228 987695003 735603808 760631413 463691819 795159850 954432987 955163617 590243720 758825401 434313691 712489245 562421796 668018404 624955588 993159150 972544462 994193209 491151440 578749310 149359650 538855425 816297893 863119767 71845081 641376515 40149875 808502568 52822700 401071939 495718081 785396142 678395810 728251327 817063116 832467022 667246828 789675425 314910351 598739230 331709558 618271212 423019195 780161137 645723414 746107944 43229516 487972930 407660210 661937326 323136998 323847659 53791289 591630462 381376134 547397225 656505021 855648255 27671554 516608901 939577973 942957594 741828538 845745615 196209108 396158193 825078296 920460334 53902367 929035012 730652969 765342423 690352981 701001185 671816363 914114155 247536333 345377695 500458671 503023456 209428125 241345240 279316098 541696716 351677665 885695981 174721773 629833363 684615285 820173419 328645000 608110447 569807855 810288069 907351812 994301680 872019215 931951782 302187279 465646181 704001744 812956196 104870287 542558077 356786978 384494213 743845737 785497577 190026084 814322366 241265975 570965569 703985768 831959898 977174340 982309115 200181308 473300777 713338461 867393648 787185091 986103989 847289642 930595207 787010614 986412673 61573629 814687050 634769072 898546549 914496700 995721251 445530858 687474251 880418992 881829448 402764756 914958828 73736495 532737704 259597438 904273736 481977578 824718974 536303415 711196062 776262616 831567820 996410104 998694880 66992824 679958655 712871513 860120370 594404860 839907339 376285132 890382185 742466145 795364906 394708120 878112456 343458417 520790766 420298982 682945397 764983063 885135340 822848416 959352604 842491138 997940506 41408329 757416686 956366774 978701022 761758099 964724510 505196944 532842479 448847230 657327246 130185761 816081853 855843045 905429446 576386179 592616078 21676089 900665558 842028527 953256483 34208130 459279143 290332319 744525544 648046234 850978710 989626253 991060591 744320086 900079482 118545210 876242156 54374303 370728164 776398143 916454833 698385454 862761216 164399030 191421919 665349614 974584038 152003787 970512698 861911975 953884073 481435906 589671790 332174087 341485871 488066832 859254032 675097564 775980865 892275077 954704528 289809652 513693356 705982530 918577663 548354848 582800036 958595270 959871184 59082987 895108993 17533025 747275702 47991071 596944419 323059418 832341885 431738493 825882293 995208605 996798531 851178715 943913579 475014387 657488897 164273012 898987217 349157705 551109638 239923883 857409086 156713595 220035526 912641880 993647858 496249515 654699238 302781557 466319731 338594545 686815532 581488377 701790948 345038613 531031696 29758281 393158118 555160649 561226696 737562460 797423210 318596245 901754381 427453814 951097131 24182664 854740052 804402797 985300606 57030585 512628185 766174641 863790242 263506310 829587714 829574326 975395111 494471633 777894159 815783095 892294677 468398192 751474617 478851119 905485913 337435973 649574894 186620656 886051106 933785751 985818929 346592083 382391634 228153858 983201221 38079184 672694737 668917312 714136331 249203535 652658418 427262421 619621146 103932823 497125418 760175943 952731494 415081304 835753863 931817589 934514024 239626361 534978835 407617559 788351803 358725942 400422609 744801439 788034720 661655488 802472462 977354954 991011928 936436315 961043443 54148394 120671018 481666935 839693918 705107090 751874496 610644510 687376195 205436267 392215467 881112079 938040797 17439851 619731556 776544877 796220941 441509660 918463880 676603542 808895883 365092742 432787042 877059722 897231980 155569949 877999525 863125963 863693937 551894238 850847934 801799774 892725600 119387642 589933403 916153409 926465634 496365930 550094778 515432061 947443925 161667333 494573324 484823832 653141065 489733531 495066613 481663109 716862910 638977419 955349789 213774921 954516535 155976686 183878896 24303262 897793116 503156591 960817635 800617435 935533080 465518665 855902341 491416102 969441666 598610303 623492660 971591847 973236797 612992618 660303515 465977600 694698632 982968176 999739456 700814546 864326796 872988414 945413093 665855407 952612839 65043005 747547035 147324820 583278827 620777795 903562743 54648889 449484005 310400442 900183516 959201555 967211014 253752406 279563182 918093108 918768378 944822777 965002946 143391472 963984662 486593186 855726692 152659541 223315434 347719282 608922798 449733611 947125309 852866946 906945538 147086171 236968447 425348929 819158320 852940955 864026220 973003644 981474462 188151072 271908657 462464606 854812698 693525666 771905800 719025453 759126438 986124447 993915056 390850494 735687741 265707337 713653815 435373873 955562161 120098250 810962245 102887266 324153025 809884844 890776516 68857170 865875245 302464830 661049785 388255780 454837998 662747236 864590627 337822301 767581732 179186760 782426903 836704223 950643610 442142291 917233062 986255393 993277245 718111398 806791577 905966343 981101554 553870884 863244061 254412679 478367898 975355705 994784567 278118824 965548076 473253703 910111919 93329712 347592499 750754987 785076284 434122891 680976747 292307648 646513222 78092152 972862021 540349917 671481531 295103166 866918385 584807275 945047881 50605939 350600788 54841857 969026206 296652908 484710591 704939370 838259822 451060705 865967350 843851803 893683152 529982120 849174391 962482064 973249276 103464314 693015546 853740537 904320502 792352642 803667430 12084268 436499534 599205934 736729962 788931704 905585746 6453223 982353466 624656602 697891836 170921649 385500259 744374253 786635350 726055137 886662160 220931832 695412254 788997529 821505637 654683847 710804600 584600775 832557039 817389573 901910061 521966608 861632995 587648614 861770980 232327080 842075265 729109345 742620205 216004839 272288347 95486031 310749298 414061204 626410367 543953819 639146847 434471072 592409139 810222950 873522637 384112608 630170322 141896089 641267546 844033422 902882896 158801241 418475626 774694930 973774571 589415072 883770386 75152742 336282179 633320135 793430446 269540087 898800638 382455553 388045353 698570964 959228657 808100983 943534922 59979247 77866272 999731294 999846202 207097939 687837985 521584846 616421752 592967952 629864358 975285827 995942420 562695815 645154226 244027365 273500469 888035733 991008620 453675357 604102548 74898207 456904622 773944072 969279754 684438791 713266158 685855614 746048830 17568194 836340824 757691970 824937056 495484137 611295096 549549756 745799108 161404462 878084372 357164552 776406492 786991350 846177714 868292145 880744834 931709828 976371547 331953188 520999870 264577459 563055141 787444631 889608132 726378451 945368860 765891464 879881828 930387658 980020713 83995443 732296173 657685307 725363262 918298040 965065158 325786881 625548142 817032933 978627055 32329655 32488999 134981832 295318932 659293675 810807235 404548336 862598539 835215203 936403059 172599600 599434665 794620859 844074536 792543351 869543312 495131642 641699500 371529250 540619378 113166093 709093874 616841848 966062838 625352723 656908299 587605689 901983943 495051664 835084335 795164185 827525285 345827552 471608378 229406810 662580527 377265625 980661944 432583158 863329374 774619097 992167659 923257080 970539809 20674933 743273279 140956958 203285854 775087232 983777073 859010091 914725298 524380976 601245594 781100354 830707390 731371173 925601311 653960712 840528213 55476170 950005043 287016924 911467973 102420527 346964659 891139828 953622951 697328226 927767955 778644102 868138165 759950512 903022240 67970824 579782425 594736715 710659981 848555003 942334374 732497771 987232958 538091131 883358956 537980358 976095281 912361967 942686988 435689334 690586371 47984 518054546 13023235 938128310 749349164 841382144 294252857 319082297 623059331 736501001 730897660 899542771 264381162 304914511 743014169 939971815 355014871 975940424 434825062 597938326 853798098 856894546 40595146 430098887 888527006 902289792 510816422 523633283 639251306 683778938 946167897 999767725 362475959 745862057 941568692 975247006 455544278 813815786 253524613 677570301 459511921 736494189 254937322 386609229 288670958 417305117 153706127 992437518 727903530 774986125 836091145 985924035 770631500 945677318 484336005 703578137 874301071 915972351 984894438 993685343 797277187 841324912 866834538 897771602 461319532 530340686 293297392 631948939 75898583 128678171 652877048 781649899 455121396 464252320 315001898 332203418 911711362 912722883 59407377 133580872 187796854 664048158 529796000 719533238 521299910 543723541 11239581 793147551 448071100 927113125 829977902 830376635 929573781 986871977 775369946 896400588 51944473 613400835 684755764 883125818 693200470 996345984 767368353 787682301 74925437 295601394 21338205 547738181 68928684 615922760 69643894 388615107 88636778 447029045 520492724 778537164 775020137 988614407 438333936 758267266 124000246 701952439 946850148 986431210 999490908 999845709 192051581 836221682 462514547 873584085 303835259 545512686 696749856 880293770 850857711 867216515 647756867 673350584 546343588 640039154 710164145 716308100 302230806 499589317 184117794 733932200 283676977 953823710 458489066 561106069 682665989 748582934 445498643 678001005 462592494 572221757 198399005 946623426 603239234 620796944 294947807 795516363 595649213 678400034 129230675 170286145 646345944 649366724 862174657 908469316 765095551 861841615 248508669 612756078 744006717 804800075 790853113 962172248 435796493 532869470 240677563 403234497 44810094 366215973 772553696 878320928 472376276 545429267 587632426 661756957 380139057 540519215 748233941 936113752 663438561 941038815 835156695 969832037 748972796 801025927 605924660 998272603 240555132 822535279 368041331 941945302 555454154 640148235 525029970 679169339 282714710 474098574 706709675 900394328 272033937 829142323 693497582 851593111 950064724 968104559 566714299 951988975 618277883 642711176 17388404 595245013 662916347 934113131 217518350 931505878 328888128 890405246 836125172 937400628 565544986 614949601 336913063 795027969 351275967 563940965 212131559 474001052 695451978 905313465 836181676 944841463 650188959 929973456 149638194 910486373 691550359 743034574 633581012 767230411 96676878 459079363 107266509 202644526 159719474 285705780 885626965 906636023 120250421 680426930 424148058 663202808 541961712 561499306 594695686 993434476 846597522 952743733 436187404 822027986 564244372 734797379 368024765 836271107 429778426 882171750 578471862 734489676 562021190 918931151 771939591 843678459 737571046 844345724 506242934 826234850 810197190 934611846 816937506 861312953 702266527 940617666 159466782 684018000 103680577 326941958 420935114 901823845 895226670 938638097 243264373 563567978 530112500 861968339 88615037 221616978 33772923 334507319 854243276 992881807 142686490 448205627 595885648 773256310 676970998 696614228 657801432 666257104 587318570 907655207 547517343 744955556 443897062 483240521 585339175 989031624 527634506 778765731 751611929 932693148 731220866 750668151 899748391 944058148 812989304 850100624 962878814 997768596 191556095 819184502 472754768 915542869 743258995 830032936 507856849 514553460 482328800 911853276 206478342 517517063 242247720 866642323 364257372 877015414 763313352 882264251 925337214 969548157 694886415 986439487 264975780 335524597 830529372 865637806 124590262 615782147 884456242 977844615 728246052 774006224 979592473 990567127 722469167 802490137 24747067 699144835 746379943 888592443 379842253 437515818 548848954 711106500 969577125 969666371 410272889 611499177 360718377 755953987 373861571 402887084 188796925 746541909 415891779 475415792 959213218 979491261 965693429 989754932 678275188 962898185 801237051 821008338 777500477 846528577 650569517 707541086 779040805 954776159 122599788 344740711 183099094 444384162 468621480 829803419 240272009 426734631 997647016 999863328 631784319 738723282 402528410 434059996 276781033 950625951 71889638 759994719 119769768 168004556 232404018 721961355 794672366 876080874 244846032 245641444 537346238 564758603 996395794 999352712 170649296 468721837 383169325 707633048 961258438 995678928 267702463 390027538 216891633 755100415 962076656 975990179 377659259 642984401 676895803 986857522 782056154 889466903 164192035 567481900 15145028 817216758 994245317 994573622 707731250 752058977 752236006 808177132 678703234 992167847 781405479 918117175 440101000 736611652 960675423 987179336 157341167 395628693 779355741 870050634 456863171 551501541 880859272 934101192 387808880 389517636 890793538 914318852 757787358 983030987 891176391 955874166 388857453 517687420 407811133 693488337 791490516 844946434 561037635 827224992 434722249 904105976 701353476 873442932 858158719 938579766 927777036 967303493 475602634 604157559 126943896 406205870 350269175 942869899 106065391 706652973 333863481 557466585 92275884 601169568 958905462 992936789 106919946 398236928 547603032 695176216 514558792 743369664 409159435 691934811 296303852 669729579 807802242 904769933 188400173 689028190 212627913 894242952 388568733 636557482 46858827 934436606 120229608 544246352 676010544 933480538 865271193 910793917 150662112 522517931 984344209 984670439 265685945 638830578 220945924 385675690 257422349 279613930 442392271 747666656 505978649 890667532 811738036 838915286 273581322 526309917 965818423 982653669 799305470 864200069 681051266 775351917 894880572 995939947 982005162 988275470 193684024 950694799 485478454 537541870 351632754 527780122 785031241 957868974 832859170 972071034 486753796 793995153 452932359 946094361 625220102 667400127 437876419 722705429 412116920 423161109 797145211 998982151 856672175 960665482 394628571 567821805 275800154 564699633 101861276 386517320 574961444 637940127 10266583 46569509 626279623 715541565 803538659 904820333 628984934 728955022 823910856 942284954 433191542 823282058 396330430 716947133 649521768 863756704 17425364 514139577 722632119 773737340 990867977 991941980 192554759 367416956 371425448 903317214 214478190 299379826 397132750 709704701 778465449 866832927 214425527 880392436 492200854 811281530 258046588 640390608 604020199 840412030 950906700 996982033 151989355 237435792 638405744 887933295 619421484 650761080 74742393 182940434 955588885 976886146 908320603 960271745 495067266 687081914 662254253 966671297 485217136 907619601 892704369 979352389 597757384 817556477 306111962 910170221 114648009 513388855 921251522 965370143 935158599 938966242 943532775 947330486 470955199 501847543 408678945 529384030 544501804 603182135 349059460 507129195 125057092 243063385 507041763 721107460 801504668 932368573 577928133 758713534 480739904 990466782 289843990 372410297 340472981 450940074 38231280 962590298 774527558 867270950 4349924 494953129 846665685 972829278 691394659 828807039 236213696 259125692 490357940 907936321 192385409 620220870 264431257 373729550 218605435 347377435 80601215 934489153 2119245 46994404 525521496 953694484 61648793 924171467 701976606 810299225 361474726 831386552 6663761 388052007 128022332 863204414 981392288 986521220 780531998 885431637 393875621 664110776 10834699 188355273 355424163 719014384 965694791 990287121 688927755 767004969 761319164 777765912 730528648 795755207 804111872 937975873 790393333 916750848 806041492 844279513 726835156 832317771 119442916 737615609 351501377 636660699 149517593 407764047 37140539 736254593 947395479 957722010 508150368 910136558 216300990 713019019 313535198 504625084 426157652 714229803 441517377 839723053 335964564 753286200 134370942 577970552 811761445 945973924 624920781 918080485 307672933 775418868 816227412 964238011 926185619 951363574 463223917 838879356 104671437 168161024 170792416 750369509 855491032 891217880 664782946 761051262 851600017 927528179 913172472 924849684 672363614 771868814 125673006 846230114 3335639 287443072 17468174 836794339 924399310 963487317 330666825 511991206 128670586 662283991 683339366 816008274 574422725 589159263 979276030 988817963 101805250 634890123 15444222 679425567 47776530 755386649 311381355 849845685 929267920 948222065 506898052 738861692 186775373 713637293 498674486 852660448 15528847 169402259 210670703 789672001 818559318 875139335 2295024 158296820 707890519 851436903 219006050 384321437 776998663 981509379 542660757 848072388 890417572 928212925 488625865 759612306 776221245 845675107 990098278 996477679 265442230 324669730 419590480 492078891 885808790 889330813 856574543 955426326 811661198 926908553 492205748 522590078 871718851 927498264 691643750 962710662 943261042 949454961 102496157 976281221 969833726 995953179 802982182 997332146 458310246 648871345 145282426 937518038 717048131 769542189 406421791 863795337 956815750 982316969 338426076 789170175 56548642 298444069 896719172 945576256 60915287 338511932 531584024 646584873 681380989 716506047 955898766 995888753 45055778 445154014 995468422 996417010 2844132 389928028 130355967 462384876 649028201 951759087 912663436 996376050 944073304 956352686 897003333 958495866 622222321 853347227 766844591 827579827 617756407 806488012 441603132 573412107 974608180 977638760 923529111 994916921 503263104 818692958 958591376 999327064 125748537 562417667 888041331 904109619 750656437 849228551 41494533 772151660 325772925 682178595 310026270 469336462 560328155 780876704 528743549 541120163 42225226 712980824 433533104 448661854 986560079 996007300 792619787 941203392 317803578 420438137 556800815 641226901 643020118 783049514 597066100 852765182 805664650 817178261 646360843 915169402 622555523 951509730 261003998 940480584 138221760 232993276 369798369 388573597 389150913 633459764 619419501 638522625 452364058 638424060 605433152 915066230 209670391 945904924 208182263 344640700 820010400 841553201 621028456 699648601 933951672 987261087 345921974 520944457 151108715 605203773 324619705 826773356 884473938 959480209 372928342 820440296 605431166 902082013 149444728 350094819 84211387 414276090 956611255 961825282 705437030 852460885 176271809 943344433 667984137 753044621 783199572 836488358 117795061 647688380 298282753 910549805 462051909 593221032 396596817 445017951 328602051 474501920 669655094 835898859 722895095 824745944 278243569 442754049 412149299 708396587 465617472 669521606 420471389 573656714 374397780 741536334 868076202 985850437 964765836 983444180 878547335 922730691 551913326 812448687 633629027 654971643 641513544 915545245 143411060 391821203 931709286 937168013 444526901 873698257 553520874 967025294 430938419 490952011 529132044 771749383 427483771 672711263 555021790 810420025 595085038 975386920 81629317 185232909 44367533 836043685 521604927 951495634 150215663 318953832 777234907 969572091 356407543 520343279 440131928 627609236 452110057 982550718 321706662 605741195 442204677 530457175 763713176 941492920 64028862 442447039 80230566 89991598 481098338 771854432 866442508 937333355 642637678 664711698 449880141 849503930 80362473 520812203 375276219 691896187 869563227 944230925 7473178 266689585 410871022 420673029 224168292 859251296 483898238 724407541 278413412 717870548 720784185 929047853 389659465 740978731 370281034 912324248 103898585 503062576 51670065 410954278 809629763 823801641 634000567 873766637 123071260 884996252 992397826 994797901 585876336 714995659 331454050 423275170 873385705 932784693 911564454 970619340 517615863 835181945 852277489 903650435 877744243 936791644 47573144 310324576 710681988 988234896 113435405 709168231 171067940 630219733 771934822 948271538 50144780 462564642 267286627 717144015 244326342 369881574 174201589 239646563 461168395 463909824 341650264 374532230 623630582 976437648 216493418 521371732 946193853 962728944 198197953 507471110 960056546 999521428 72372654 607223221 850736377 917153545 640219238 682741370 848028948 991343145 33936071 549746257 755181044 856915677 301975289 861427832 166919826 482563451 698191602 701378531 964460624 973131892 837342122 883002486 696163298 823883921 493320361 930800914 651408817 863326349 425216813 477385385 936252677 963324154 367246515 389408624 647848040 673145308 370077733 885257994 174624283 241583584 330375365 372484141 88612619 460378742 450710293 879019222 979138793 995091950 238919719 351237490 965098034 967018120 380125884 801857372 291525981 325810875 167016502 501595657 742930739 810482574 296682206 840860846 235120599 858179416 421368982 694184437 560148456 837146109 900750186 917529367 697387822 801331179 135722829 244120537 257610136 850260555 887765129 987519040 192747628 344661382 832671579 947130031 478044901 526942958 297781550 752205442 239278718 908872875 388463785 527889485 404950280 794240715 699764345 998939269 191240628 543063249 768082663 967338405 124219304 980830707 9746717 142291206 468564780 949071555 192773931 626388942 856633355 861611224 476669566 714115675 713081024 928144882 192975825 618182712 257501243 720457645 28340356 756861335 720441153 742296814 373229628 834414173 905587344 961769623 931354986 934313428 759798994 996485520 581999481 866446773 767921481 890876638 481097010 867747505 642660574 729905355 394160237 569251356 871636466 935378181 81739842 379364395 368295338 703744734 560078955 650275111 889062070 937502942 590605020 875529094 565327528 628727059 616345839 652699144 278418174 690497994 156454399 283172590 883725720 969786332 693605837 819380772 271085862 801614522 620307793 749268447 300263225 471259393 179081830 491968137 150432382 953957312 474300615 685566185 446770262 905771785 214687081 877095078 594403290 674405241 415773187 680982406 487085023 814388146 487900048 865506804 316949765 401899306 452105849 513055227 833933052 869711023 8662734 401371237 21915454 874565523 991082272 993318934 808019460 824465679 163958528 336084103 142720792 782864453 337912854 375229420 177467514 246992705 329470682 669503143 572267246 719421170 496886449 516699118 348138457 435194241 795200460 989694751 938875287 977237217 113223197 866280689 660651584 925568135 223405621 328921039 825713199 873279338 194327448 509795250 731142753 842490990 655942375 755665111 603921519 957787476 813495113 885680698 795872843 900031123 694734578 996449944 599292881 655924599 410910225 771218799 939778902 996232426 6475407 576818309 755687516 795754326 629875316 644314746 131039169 597133907 499394889 754044706 328848941 496042307 170797300 374770363 333813558 845438655 902753987 902997594 433842778 546064487 851861923 971315869 67910325 196798770 519655138 531575595 599819848 689927547 557694016 757339969 242259573 969788756 264855190 859354207 529894357 823617431 530528982 551125329 791476248 906154203 62331629 814141089 78184840 974394223 195132687 714522446 279800773 306985353 665044917 761349241 789920745 879999060 428827724 599975799 146754648 502604406 698691235 938116153 349973880 458946496 186454775 569743572 70923448 740067228 998938869 998967164 483878901 791149305 832005226 847778578 606077883 812572381 189623341 580782792 731142570 974810514 880791778 970019748 416463795 872314790 932357007 973395850 308219751 788346669 646938218 657028114 109806870 842027327 861026480 943835591 43186537 302085142 599022540 610633149 806560182 937615614 700289643 818988222 626946080 762567675 575300778 760982600 338431211 364531086 860434410 996070766 1497325 293619781 380294962 593121984 683329607 866260757 213856882 240109102 330162784 427188660 556946772 972664265 320589288 674547603 683001674 903314238 431261506 644117554 886785559 921355110 449319818 628665069 883351469 981241671 754721613 961478598 833425080 946010022 966746921 975744513 325781170 568633373 341433391 466078376 456317032 496640239 7248664 51780081 997004075 998392952 819019350 921368196 603136556 852862483 274967483 870382018 549382146 631994966 415489796 715135488 944878133 978071546 301542503 784128624 576673888 695902663 466438606 529731528 907647350 980842302 532927401 930362543 95906940 384531175 733487685 778680684 353511609 756765124 232370364 753151479 401991943 796325529 547904174 770705386 245389081 861133296 503024391 948820713 306274223 929281764 571626632 683142218 21013975 182555604 526468965 785104479 371393571 797698767 541376054 777414297 945736647 980950895 610217734 903052052 870957932 887820392 948758093 960616250 391050276 438451527 993309494 996898269 23635026 236930297 57766179 321264487 921213298 961133455 254460555 330409510 899219979 964054606 145250776 392295479 844050897 989253342 160946074 821092794 194338578 198354062 421716160 468780298 206767974 731940195 496510317 689693008 541592590 625028802 448743083 942471004 707142852 855963614 433079808 896793729 886274654 934145543 502357871 591463765 81585082 265325830 724076198 759518003 559910240 897708845 715770992 942829459 912955849 925601667 774193713 951306233 611302011 992240986 473883968 503858980 938030442 939690731 85124593 746947715 1837262 112235842 958605451 981778381 753263521 848263301 361847431 652862357 790803552 933042338 822368497 889516679 82163610 565571045 772083964 996018469 476539144 569859982 330343023 679115196 262155690 709467429 869006964 947971155 642099002 691176672 147786874 846961512 193221671 513864743 91446898 877045667 850783339 947929652 781078023 820724483 207315567 271391422 352987078 939244178 323677809 579865742 934267652 971275329 62283539 176371351 67633722 395613340 65270468 994232763 12452606 858277454 635538456 697746753 930042104 994561532 936285047 985918370 868330033 897559232 611186514 615434758 518083042 987863038 285207545 997645757 31214354 721902042 434704478 581542445 125279983 407734274 354969097 497138405 631576393 889506722 366494214 415538579 584452747 719179871 279563578 294136506 552942641 997612328 71703869 311311432 517498413 817612082 542996807 717023638 569497466 990404631 96690461 718572965 513866332 783809742 666575391 694579073 978445577 984606902 560911245 895075860 782027164 927729384 27005528 363650892 123769664 591015892 462890504 825377678 936096658 938532029 774284579 982610088 33630393 249089125 970161253 976622479 350018950 880369383 836874482 841899788 186940190 514174865 753196905 909830801 414777850 440206040 164372741 668078263 396321656 861659429 818730294 922938045 72498437 451305312 407884336 666752529 976681166 999682183 610246088 656159570 674982619 905118526 82296731 778156813 791046740 898242596 966289771 983708894 817477653 956359617 172374574 650575530 196107907 507661521 61319810 98018916 535774590 715678851 220000764 611223481 187638446 510209689 32481262 686034712 924354008 965809578 294289365 519508979 332835037 713273226 670403323 965591558 405075224 466046005 737507552 874962223 538487843 548142853 389398618 635807452 523437564 739687647 910925766 968687080 823691453 835391075 731828110 957138353 198158940 761839353 384776524 880136802 192268279 221000544 769586132 849316621 540950701 898789399 113916384 494389220 599847761 984421668 375114678 724177392 772636712 788645839 855531606 999766374 39346631 777734215 502022851 627391135 963864377 986161824 765017493 958745216 785694909 842363232 582028922 912072281 305358418 851998039 532022616 550756710 386221175 737075479 657193230 822188444 511846033 632169171 204257131 934722781 383077909 657085954 498134820 895263744 889647841 920784310 652588484 962484924 790810672 929896416 317796337 591428166 148662362 749510760 796796197 922778920 5878258 483823093 678098175 836328871 382567197 673184638 837704860 934706244 314281288 783562213 452623597 577437922 239271911 668733259 485713408 952290379 316730977 325651901 566357836 807246038 2416097 528865157 421516672 676365366 975927119 989576961 803801973 970694726 270413832 310735475 35414745 721551700 848401233 895271878 587013335 970464084 450431049 622677564 116681004 612791019 509948837 927445988 786460631 800308854 986103111 994741781 221599065 617387104 978309145 980577960 353215209 497799665 203704033 535723794 283460709 441317997 171452120 626318742 516315773 920688748 667466100 953633712 897205453 920867575 728928341 747997161 404880627 780821654 782618660 915821016 736536074 888104822 480768487 571605028 868051647 881474187 280465039 854789297 798987815 930554412 951465316 969718968 169194756 443436039 440164166 590975923 610514645 845211933 309406524 337875072 719909118 934866543 692724448 903839810 484744448 789102004 371603441 615169744 146557032 377588970 461322171 871385462 120656440 338470099 574874936 901326310 316146022 667307401 631146862 947779787 347725688 419907667 838048669 987718617 943407283 969175442 309581863 529043611 676925158 779148518 416192828 774528464 487010930 598165730 737033924 879719673 757813107 977556510 474405870 764805166 789945889 895647598 752258269 898085079 211774907 860187081 804297986 907209250 909994816 939057503 834890378 901559926 627259802 934174240 631637973 966168137 617150290 991108138 907646958 990272904 405438918 669582337 767850729 912200167 255580246 416113695 265594188 709623640 351676561 724038685 258951965 336046666 972687891 982262128 595805471 982520803 570959317 741539194 555810871 979183904 990607077 993504940 35633389 177579351 782736729 933042965 331324892 990083487 653112232 945466450 561139073 581565419 323004860 406681266 481256848 727767972 334338565 806490056 746044160 838197643 99286519 254939898 453421931 637244954 228885757 486482491 400079335 668997874 356623816 491385656 443068727 865508345 815341789 822020091 154346916 717110050 495720857 782737085 707135009 887968525 414005753 687538846 364080692 393299931 564161429 729309998 946010864 955763754 410367430 697883357 448547209 639847379 704163900 878294516 296139802 578578112 737809014 766872063 821546315 836727055 270708591 850824666 976115976 998718835 3034264 151106952 135062797 875288478 734976117 875581090 862031538 968584650 687562589 766703817 255765634 857798275 359844519 672951486 887114707 973613514 323238120 852897762 198140997 552898934 22284242 267877008 934418922 957550433 806900003 989236767 525995611 738510930 921673772 929128672 494124320 567267351 87081338 957735249 952187763 959877937 217555089 789075107 635767461 664463544 688329671 691879997 123540409 491667362 726558188 937766154 720710916 899915978 442910699 580211290 346740003 686281903 878738396 917129913 310827967 318418305 895873902 997995810 6400577 187593471 220671435 423206061 566085083 914392881 602840502 633929925 296023753 449737264 514113004 729076351 137351342 887636233 879803271 885428652 922591789 937502711 516245082 814010676 160744060 976800131 327030099 870124106 732050583 889381949 508315291 658573973 703002772 953746851 302482596 445594857 499683273 632014578 451083418 637204616 915486676 923243328 826993781 917194469 8592995 307559032 712567755 747192548 424109946 685192213 500706283 953268965 239413209 818848813 713954083 791970659 801429081 940163967 885068547 954010389 8042415 714683411 864227485 936289696 68036239 993965920 379246904 638859023 69375359 604350252 494866883 835171824 666528297 675568534 929259922 951397960 810571521 844557236 790833382 853194596 868947474 967105749 573152368 765054900 127066614 409643008 304288572 578097771 6187774 333625903 160266452 659519190 334416416 336130708 622710001 826736862 121334538 785860001 947308076 993001604 38251672 715834629 49010927 718047834 483275795 912799669 474195936 573963818 295649556 309098543 882695784 975065871 263487133 767933941 695125826 968546101 499180645 975662281 112694711 488551207 216520772 290792952 390189912 917372381 14227106 261387079 967585049 988912624 575063756 887675840 98864409 808014897 349523042 918519950 476899601 601135192 781045752 892314781 586300588 658078057 274572033 693490425 883157686 966774545 467244001 806872952 805453478 806601501 484883107 572566823 265909656 854540608 359951627 912905774 592797610 927395969 713127460 864695364 624489910 724918011 310106971 826096686 584727773 692373644 222901200 380372848 554917158 906384487 527485592 536408307 347677910 524264064 695074691 958781420 28656624 594821880 864973174 957708329 699371314 946514035 288614805 945467715 641238329 934954272 467250371 742250011 817293889 930844104 635451770 679459614 429793814 755330552 367949935 772311220 874346559 936556216 437666382 933237142 875558810 955778442 341711443 542454377 455579880 988242918 528449574 961874552 337956566 928513806 115557275 518467696 460817499 558937451 414745745 982732085 758638070 864190816 712290207 868738431 645312746 765645066 502232603 665198593 808956198 886763283 857663005 880986006 360457467 555220431 748040766 866527550 619267564 962504219 392635891 626479697 55398279 363186272 864867509 958761280 963019977 994048185 99847954 575652182 959412082 985858702 530894759 920444817 914827668 951862271 308226974 369990717 363744172 435323858 56636204 814618481 445746398 625054948 442333587 514675132 629436083 677732198 544600650 768664574 719794273 823606268 689910755 750732921 903050060 931072483 418768085 527331146 318055701 738279881 967536000 975633179 499447096 669827781 29206996 491384350 576990672 791868052 486790458 980073587 717935935 869945482 476010577 830449700 110662005 304921530 933094604 957223226 407042859 712232573 455611623 925333085 286445440 887454720 171767318 180317755 197399516 203797138 521117736 787062284 827625182 955927555 655149066 698377278 214358166 906453842 122847237 428027832 707300842 781908585 248388397 959043873 308717130 773709691 656547855 838840651 635273289 838832153 805672498 869806070 10638626 88146979 886156548 944730013 306488513 973212771 924300829 936183943 611303395 963548044 312071987 539144123 982423032 996986217 654021859 937839021 577644165 865243259 129300097 974390221 570017413 794641032 107005036 773435093 930691987 974991111 840583206 971799324 584622543 782241981 42784503 555747320 425858284 895492702 959986414 979551409 484935903 977474505 504628535 755758420 245045242 571005895 157514973 901012501 507181954 982652354 721994195 996131753 284758685 356262817 599376286 742270793 912584817 926891478 7234176 570066883 686559956 858049500 472172973 476000883 784613617 971391663 347630373 934720408 216630841 249398363 886958284 893219664 606504497 966210389 12867430 831715658 469959762 574341379 661170956 879737012 890796800 903007596 943854444 962751903 553553400 561273679 132176736 489403543 385093512 641302680 947545289 986636682 620221469 806448866 7855199 583832606 959147618 963380352 454924598 732088123 256403889 680626114 767139238 880394624 680941955 859834218 161135803 908796700 503889348 734875375 422363701 785766851 492447786 815111148 974551956 991775402 763187913 768614920 617443567 671007805 878602638 939864458 713926694 947234647 919877841 940116166 971929101 983166315 721338009 767508078 747239529 982718203 298222949 530895079 397065892 662148809 249903122 533446013 750003383 927689560 886237377 999189981 637617005 754961313 405186859 514173696 94509287 479984003 867787947 993581326 661215077 747128782 145062000 861960577 911343197 923273294 662547001 699943012 48766353 301588429 891905536 905213666 555206014 858347757 362350674 802548292 579194074 770590393 104695045 250933027 819880663 826323230 465667761 610696509 382055813 810961659 567912010 896277662 189116058 526638388 14160508 736926998 438432410 449187939 837626524 925323480 189302051 849240363 991837512 998421725 499744043 705749530 206548941 770930127 568316555 604866868 153991263 547046576 741360962 815841003 599242400 829521823 375708367 828177198 553797797 618588158 353376710 769933966 232470662 881877214 418752177 711577777 696566287 759786380 809560119 900651120 430168869 724599889 742211648 891959141 202333120 272114477 663911368 800251554 483271575 807972362 124691967 291290028 225266098 803895033 575507137 934691927 856466667 893513449 940788838 966558168 71349989 546374698 591018967 890856504 266343518 769702228 651271610 974960644 130300775 729108546 91015544 370354384 410510393 802497449 790966071 897169331 592922170 762454750 477226179 908628847 733711600 992618439 928003469 959956025 937966766 959527993 833303383 981206376 833902299 847281020 968998349 981216606 546309390 784215211 669495334 734104046 380317770 721167234 142400904 144081796 113694197 953516556 457481600 922279397 922618681 992247933 418516200 877205574 988308202 993414396 641951614 684671759 52013301 55209649 323017268 950417306 324234730 632860872 894146005 967263167 278320816 947174714 386030048 408579542 130267783 435818162 898580996 957025335 329298974 585552832 498939550 675467737 505149113 702877224 631601259 917677398 876802980 991389820 64490358 956809093 604197108 735584830 633000487 708875997 65384997 522062569 7373237 649464017 957522574 995307566 444174690 983189757 114849347 703216610 205008501 383446995 895918154 911345967 821331318 896654529 117269224 882579423 236328467 654319296 493466242 757359883 335763036 426373870 690891763 765792775 47569681 869897592 369544028 675789284 749503084 845905630 785466609 909733156 880519713 939208008 410066634 907272625 479340581 709535588 308862153 311194872 757481419 995946298 777746958 888570452 423282680 449554444 366499130 494948972 152301015 387740734 799146942 806323798 913349258 966724032 913080592 918053205 79305499 100431199 977489132 998146370 875544853 962419092 804973189 945666938 832764892 881612930 21501041 923178135 764958189 937241788 409169367 814874167 334579697 600734700 441295442 829728479 653246242 714933579 133144858 263546487 856257037 896073969 891624422 988021953 92571244 855721100 521295235 668679994 51589477 573907329 548049066 770531814 141749602 981291251 725827796 860770368 509559864 665203895 847108983 932451879 743602424 750950713 705798461 801428215 150372915 764985972 677017826 903220969 626068979 637470137 502221446 771730271 658146714 898254183 580202280 592826231 103054429 301729238 922487955 963163754 226775984 411821152 226233631 821289586 545347268 553380638 823947221 890299403 36262030 202165977 525928535 686980999 51753482 442436179 736434136 872724707 632056018 728607521 124963058 454669575 19100216 100218290 723151770 877364057 96670727 536552904 669172212 988867829 885589909 938208423 306431879 615535848 63486788 519252410 469244183 526410965 139655847 207386208 880823653 963930190 406129515 536620552 354543917 583469104 478649207 824943268 690395233 819467076 211320963 324986796 285406920 329217208 63288339 309099856 548259497 938422947 257095573 262254980 951428004 997971388 480101946 484425867 504923531 755816882 543924265 644618062 444038567 460509198 745936295 923065297 52056744 170291956 337748029 655441344 252187854 870958702 382282439 876933676 906415535 973760439 831416525 901379420 50576723 836354585 712500351 885007782 130774736 232119869 363899591 484139591 196344141 245960091 256564065 651080641 670340716 692716947 984601187 990766771 957952317 981388178 153914436 165431897 14667408 569033817 111077792 659781223 204340456 742275179 284277967 335865465 431909310 752769086 255497180 340739843 622138378 741452534 462488712 878908494 308639703 878154483 42475793 695934587 555067524 784979146 519392609 951554106 917942120 921074870 722834426 967443189 414046413 659772166 460827725 833674329 27887260 633073091 181661035 367436739 887065709 969100771 740608695 859733809 836465826 887534312 496352754 973298290 850088940 851733515 802070054 872471343 95517736 396860232 569259807 741421960 413275839 773616709 219402780 239380655 62331085 991536812 95339460 181146487 176164775 492757137 865659260 895763932 142515562 363939832 685444382 936393069 59067672 446232465 791256023 810210684 642254761 699354192 732700647 937780620 173811248 465665740 943880174 966428864 962675150 990945053 505974787 711023703 551967346 970866713 926923796 942078761 30950208 352314758 590982864 963044921 814021465 964507820 947319402 950407833 88783697 565128751 454125819 727160554 509383398 834375201 545695052 568570361 282789826 670875440 779105819 921522656 958020523 982069737 589887153 803555255 707063045 757855895 633153076 981779786 597981506 842103382 182496547 293682215 518012629 762527545 606955605 869380248 882844925 905673617 921825634 942999619 269818092 917966806 575317253 949320399 806685355 894527846 752074546 907486323 606671911 806133352 765511119 886113774 553183787 569662318 704738709 961653595 407661454 593242059 258994339 906155496 288647275 938482855 529950391 658955040 52042128 997514919 142448230 825674201 758688227 967833865 324622793 427074440 327544625 605805086 652646559 690642087 101164378 887681832 296009199 705279794 36861006 193392240 188398960 262527718 407470421 990436276 782750035 985019180 745255834 765117622 69172505 413259627 199791546 719185900 252863080 999295893 958385056 980131475 4664390 969870796 311299500 566298556 138937916 856953618 561680718 566777666 34557346 622107195 206207345 477401384 399485029 804708490 347180673 603684627 716907941 768826017 205845632 297524015 215423182 670525982 189276984 791280050 355952167 568684691 854419409 940452743 970410784 993095533 580395391 756164972 480288224 891954258 533559577 959845040 814863508 970043294 381234539 698306327 210704370 250176918 396219270 818139496 917335665 991896834 438225639 582212667 425903736 989971667 644822590 790142164 235780177 380144096 550538264 775649081 557782070 934954750 509276105 800239154 232847320 786248070 355613259 841840566 291926152 599555190 638554312 684318259 447661766 665294536 662746222 996595643 862487542 913852168 745076570 913626574 606396515 701361828 535475102 541108957 814263371 873158414 185490619 954866784 942477435 970915510 522668692 817110630 956076194 979888621 42841162 784892471 920764909 986166111 626059448 807347541 768739678 769018873 112873975 128468549 228480222 826472816 72551976 499516324 555881826 733236582 95369502 846385683 855798237 868557288 903405873 937328021 444087805 483363406 658142769 982213136 359023376 931050983 46445925 557619927 616209852 786040566 305203273 429448987 86425220 541433820 814757906 952447423 297582333 686820613 930029205 960758480 284664386 882661477 842307436 912966222 782580683 955977637 676707059 980402277 200660613 570389913 283096444 619804234 390149929 967841999 971378595 994906577 730975067 974776520 145009732 698308980 861038530 936544701 559901228 698952874 20276381 113791140 477745210 863015851 499781906 882425982 234134669 732808362 913233649 976156724 960950242 986439933 53901035 556840500 340082454 916982034 832927834 968804141 82242865 900958104 965850151 974251566 593817845 881314188 272073944 372919862 722401552 897554518 767038936 794614548 797762009 899628357 368008575 805075928 520972130 956458225 34968930 76066962 355648633 530549637 565379135 787549029 808067449 973080616 854397578 881162731 920261471 960311633 155352372 466549421 57848948 234936231 65416034 204130198 507612377 855341762 450181495 737336523 266626919 329683042 767451670 983057003 145038275 350565244 8354923 855950573 865177992 902369742 27602244 252434682 562556817 680542373 661995293 852221932 767558501 901587360 127192182 718572437 776266076 891805339 399877193 627772324 934929254 989816876 672248328 966224327 848162346 901814162 439528822 562397595 402875632 497727805 9293428 724417575 485379051 769984158 848943942 897508281 762625896 792827043 516587632 597356258 28075204 361892438 246529545 366674929 294132613 848831527 826749562 922485083 562624467 566156495 627776192 905384731 48327613 333285021 784832281 876625568 444301913 572318386 848393010 904074797 560915923 697608503 29667756 853441889 20805025 809296398 926986453 974951007 60543345 706973642 698583229 812684626 31407459 500205203 136792607 769985875 761532791 973481500 162782328 728963547 959308558 963153076 382407549 900767601 739513533 972291187 210518657 476343459 877573893 917500888 661649399 672074864 145562396 537252732 642346820 821001709 347877694 711723523 967022328 979276566 25955194 868260674 985804355 996612516 59784956 531952624 89334317 560121278 887086204 998605549 668728368 901886772 486724678 931525899 897473359 919775315 445809515 529005329 647125011 768958260 355693409 447533402 698076612 841724242 729053686 888174577 751141825 953022761 745813629 816981755 950622864 986755224 824324509 950790918 389039476 999561198 231843885 250084774 475032358 985898716 130948247 344559377 328646373 886096746 141082088 535084081 264930797 750665609 542383781 959457757 229436481 518289827 346798856 415817040 321131707 808595582 476674130 591429530 427788753 959168833 37076381 321204757 885220474 978372945 276456543 731206396 6019429 418549339 513608534 704483460 853508595 946620109 999024202 999801666 613744358 922364281 718809128 887258111 364225965 639866299 389852740 955095083 782634569 857527566 390370579 949680031 133092742 866099648 705475372 798485135 970336045 996821027 419155378 463793086 388282630 760974786 855658714 944575410 497913469 791707788 137228044 495243799 955702811 982465842 686038452 713127946 795498960 917833471 102925137 955449664 945217865 952816811 820464023 838670382 180236796 827042422 616447052 892486197 138230427 836529274 420044647 503077363 142767838 635343851 866789578 891176176 837933514 917775881 672451663 719285466 230943479 390709220 233020839 331112550 703213763 966983874 390667966 925724216 660267947 869543498 222306790 813705674 342924049 410450578 810086723 953488487 188298799 401476308 974671424 979835021 548571153 659683175 634640216 845262112 375532633 877168197 642329784 888222171 862886040 957712933 472330095 523882721 513510483 942331190 164435470 770481565 955483557 974268327 140611885 482572393 88739910 475199274 250609277 384663244 303335757 654419647 946349158 949476024 76977075 728877040 167389327 737591857 944369262 983628966 425703566 882130541 954810609 968676698 737166932 836104359 909349856 978514801 349993395 448320391 308766491 354880310 310185326 516356434 804961839 998534340 188045581 912507447 208762737 751530483 872475858 983516792 490461838 679929905 434496255 701631251 351034000 891079628 307049307 970763604 9088245 167323911 219004664 687912625 407104045 904206762 480490037 602572358 296809905 417084200 621040043 913835994 757700450 923992206 905819075 910037785 17192370 976512093 308948233 883019294 474969535 588099235 357937736 380604644 809902654 899738638 947090688 962699203 255602039 942596176 984576896 995216200 500133381 972699401 719280237 842528039 639322992 656328857 598815351 993789857 461557436 589716928 841952336 988567172 35061989 681585806 606338723 645425680 657310950 917602158 900228921 988872120 594775429 732714881 372695045 556473972 111228863 118631048 186307396 634157499 263627549 967720429 974952129 984574771 92622370 602398000 221319723 919424322 484596905 772275822 723990452 970806496 528015893 907170678 586587385 743563072 919284593 979078746 485907886 745417685 314208105 406075034 279086877 572724848 835026892 876814043 42591607 667691987 545087622 830419323 309424308 714580234 775515073 833209854 262885031 438438352 780156946 878643773 145806744 224440108 611074115 639695026 25140321 743230296 600880837 858197324 457144831 915103380 451939529 553974908 383617845 517413851 163462959 923346532 291998071 667888431 47092649 629304986 896974278 923301967 185073922 575436347 127646904 478766209 149263949 826716679 213254290 717329360 638198793 716365300 111868418 411533750 216789766 562372286 538050437 543412775 446714017 451622545 778977795 787331844 186749682 627161121 937439037 992184112 541998083 979763356 893319030 985736210 429607604 663972340 350557538 847175966 373047588 704046392 530885839 538239835 472020540 565386097 89891229 856673330 357831271 681279081 787734765 927412681 245355125 967900656 316668464 407230633 2941987 808848866 612474902 936903832 699736215 746566118 715638918 837037176 544722589 950007101 939884694 980578530 46017856 363593599 471705974 560153259 959335260 975451793 511977067 844223110 949364215 970676434 955395772 969968714 580849243 887875534 805976905 959623095 311517190 837193367 329241683 637162088 700478660 885868143 25996621 317944625 832169106 882980081 899074926 906977792 818683810 844496208 155086282 699978072 3998187 404953038 255505167 893183706 794003737 934210058 232824849 919444158 43464943 448110838 534924348 817193047 522607233 579772921 103267492 373712533 5250295 721050838 325017715 768495281 384713564 940229473 220395876 481130020 589787587 668412072 932692843 959239960 668132415 702139826 145956183 747641210 882903593 928954157 361934426 791839576 671397534 704880717 191778455 600888177 333682743 901909636 107119206 788441978 70689912 313574503 554295978 820318736 730006781 741450295 125727386 520150217 661517455 835960468 924516309 980956653 563508143 742180391 206608900 413562457 573955738 717276149 587806163 822465941 632557221 651333339 442859359 782189333 14790391 459951254 32440831 62751912 25916250 71428485 895139657 998989029 420812806 790702163 376830476 685979675 584233840 810341893 608179989 788895132 653010254 985632128 718198926 855266910 113254087 923498619 801120278 930389130 652075226 970688054 975952373 985157190 203329332 753115610 966579548 989888272 161781670 381155310 831914427 924070561 509335252 657173363 344990068 876344456 722412623 832730773 862354976 946953726 694724989 752319561 730701743 878553936 775139428 949435837 83895349 644081628 284749119 292999932 37140037 89906892 711863925 986927808 70121159 463840200 717731581 921145597 215577884 693095346 482107452 723015401 601247041 602226520 448349828 996506834 842431407 884703743 955696724 965416733 161057833 856219196 531054972 757023973 140515217 317365391 995098193 999497207 737556117 827250763 447428847 813871877 440834056 919752749 807177531 889181949 270721787 589903343 262460243 867185346 458055622 598288109 444661406 608992764 772393475 860803532 839897416 930873297 421995678 533028008 644547212 930961246 571216630 888629772 45238644 974223951 983426042 991807799 373748851 859260306 897638840 953741455 413956597 525828013 950386527 968873851 477829494 766873874 89640707 901373424 9323105 218164796 68963951 644102940 251585558 974255192 936796912 968579182 691337217 790407694 812336288 930491836 623435550 799132438 971620816 978891229 717947797 930209079 245023596 778404128 262672116 601598778 199633109 738364502 625961710 862984196 58802949 892351174 994606418 996057340 607439300 766184025 457782917 730886144 589450191 892244991 979214840 986449548 99603953 902403590 158153909 929245079 421928180 969831482 825044251 926491852 391279893 765636204 46073465 71411617 689973552 813671739 336627232 454647003 694841048 855561626 605289153 698788603 828877098 941855564 580855680 833236365 958597714 962193639 987591376 990203877 605009626 900273268 512175820 769145848 196595976 527442897 638075196 737386003 703832530 837311828 256615220 819932603 11458615 810304101 703635449 850499095 765459071 789709715 532332643 544436366 65619035 83202163 727853220 927452387 509573090 925709457 651012021 685195175 808022314 901085044 804004988 878514229 4537853 396298315 311919602 693247522 337802079 708783894 157304331 455848248 879162662 927557609 220426049 668370263 168013485 527250428 146241212 836371002 331448184 530250516 369120508 695765800 773675241 876392917 695256860 700657557 198579181 336005026 986302518 990208806 943967449 984542022 633905629 635558879 1131843 588449550 668312987 976048741 446490406 861171283 217202775 773490893 679451055 847688776 467909904 571232817 139845200 609440777 579299285 855015571 604107437 681962834 44267282 66546204 982373304 994580738 726681031 818994372 154668567 688199751 55009486 908430867 25414004 670148616 584507663 608175604 898867859 947399326 883600634 944723100 909974368 921043517 819936308 880612558 626726192 708419648 329647541 856833941 270410552 491368159 385494798 728123565 975680236 992684636 731566340 886310009 382226013 399314545 708918405 764795673 87332257 850599865 891016761 903954093 214574051 904323773 290388007 715948733 41036725 225885835 518155967 753867733 461278231 492399914 921450926 992408358 532004386 910425395 642971796 662455506 136763946 242394482 231912557 350252460 484426430 744772749 144415389 393401621 610515557 952134218 842589589 982191031 358076126 443296979 885524660 945661070 150740303 414349336 285304374 648036397 599918087 618820885 210392946 651491645 898410197 939506446 422238465 429103562 431285893 990951912 389237931 861453462 103644954 844448551 174334388 364108049 680485469 689717566 578705088 978070934 799700631 899029076 493723539 693896899 312622973 363786580 950795998 965527012 188569901 931398203 708136335 911782880 140061164 835266242 385673879 386233969 160570556 466734234 144569366 846187854 341828684 960517446 961230371 999662065 659758832 965730977 251060528 582347950 972489951 977330251 242429408 618288404 786986116 982704873 646835523 998253717 276851762 639118013 235590397 807312566 175621969 998555038 278186193 874657901 916527283 991133713 79884063 141935983 512976562 981255534 261743628 999647744 247178159 507879623 701812745 949903450 686023875 754126575 61387476 241717831 434703603 514091155 621404483 717343821 207512893 781820610 806461304 827922481 442313959 782341257 477769432 635866501 780363719 920274738 341594665 969810036 494262628 589946597 366824828 580243399 720844395 875846598 53136343 899597764 897240894 917318589 752184075 778434260 61833965 335636842 519186585 933888341 925798161 930183730 365837112 380950278 171284112 859189422 832631677 910057474 814086667 919876838 103434851 987477256 234081355 295688196 930361283 936004678 333494963 756005363 766957796 811764918 903225252 950962237 367068103 917629473 646177048 741251247 101776768 219779451 525119122 825323386 391162554 853042904 971723047 978865288 329020832 830877770 759526864 989026263 265237652 284394674 858090970 969029462 20528385 344060301 315868660 912525028 887777807 939128206 539673228 713102624 273781016 410182248 604987667 609255527 330663223 550905658 417810967 816837491 741709317 847133675 147435610 184238852 431065942 761391482 541725000 642522999 320291277 496712253 603754034 799678635 218708884 532718168 435604064 670925962 780909421 966481564 238271834 883058547 972323351 999128780 869809145 945339769 270498860 939628113 894089221 974924758 235400577 252284192 414222387 937416520 105485112 491736122 819902802 998578079 354599832 824294081 85954349 204339501 973797256 974764423 163003508 501839824 556591360 659404836 336367463 890378679 200849065 692099206 565119682 960173954 853570811 933197324 948506389 954697963 21261490 58284860 872743772 911812353 116375679 231842160 953933756 996683790 873174087 951875013 294939879 979643673 688031707 766517556 92975632 923973383 461874686 987077670 823150331 975866596 171473152 235173341 636751270 730186260 809992756 999671383 463342765 889761033 129804287 955237094 835479089 935791703 80061580 101847961 58378886 747434775 870401403 934602488 977190362 995346623 22231312 612032093 605451087 928540179 243173223 887153681 422438408 775453038 637779960 836009379 620214592 881394437 992488582 996500656 64008395 831616990 394559750 960794384 741197514 814833812 87001011 314566948 274982808 930946038 506525503 568953532 591392774 870972542 432253694 884145320 869551741 944616918 817681514 944696942 211681115 721078234 804430668 949587799 155231242 359050966 463098999 910020949 707554508 753984188 807648499 953429235 4976844 838382047 281666296 646292895 922083694 928034749 795016209 853824414 353640856 398116297 748136111 854356649 644843779 706859601 141810983 509364961 346355769 662020035 609690126 906066482 169492104 989600235 397186670 674895156 274742230 548758210 560783475 596178617 452114499 737112867 850181618 940369459 517950969 838598629 713435864 984642357 724357934 985116020 23374122 725250685 914747929 920493411 12319231 901463242 992931627 995889962 729628489 886436493 893695896 956327512 603401877 651285069 332505299 842333364 233275355 690791268 487798521 561115852 461631605 948552590 962244397 982860824 278129147 570052543 678742167 899232902 868627047 972041341 130019364 945139170 769698278 815775449 793196214 872115840 292205202 732573685 316844756 363631731 175769304 404061259 545678134 961391830 513647657 942458040 17902187 874997290 841073195 943004390 214781128 997896197 961902163 986560922 42979483 903738717 675902795 969484976 71055768 719655845 653978661 911575773 260890692 972400974 525509088 816134631 701760249 955968762 918511478 945173192 336912766 575313840 167217862 690748148 587195560 695372053 526891883 796665343 157790726 483514588 976581500 983016279 131025763 490157407 842333830 890545489 355082661 461810882 90045627 671424472 898080844 909339692 485813369 690318218 131257449 978776361 421365032 902049289 296086147 631083870 222221455 597248002 134864329 431538899 925711493 963018041 29162323 135786373 160407282 206392287 962227279 984297650 858525571 871084773 643822698 735893914 751806332 901465497 659210233 859155967 198819970 232189501 172246181 975523989 285877719 456987493 24412381 656913480 929840732 984481923 272680868 367281086 96888847 788586521 597060814 739943586 340534037 781036310 414871888 438143445 415232797 587397612 580074605 924019628 199016119 481666335 402091644 606398704 248604578 897754602 693724171 912752911 390091518 702801947 29012814 607140659 983087313 995022524 176408600 426488166 530608553 649338492 103490459 769036961 25951287 721123141 465402340 809448516 440686869 968193805 423794508 602118987 160495923 519670423 690216217 952561839 450532716 484001859 181023732 927590753 869714453 960290827 766886103 792883340 377514801 810417485 140609014 449767311 139830659 493744928 610091803 651870097 520689481 849266842 532776007 785121086 367968612 858509267 129047971 162190109 546294722 627471011 839633822 883533379 696516577 781091239 253733284 729233677 783659780 916146341 304948067 557510180 660655833 926562451 95490478 237255886 382958474 508605325 108398341 615319420 781419276 929267096 913558848 956109433 348081195 681302086 132469072 890327156 725094887 963250277 386717884 408817410 7383654 437462330 237278239 458829419 731706585 929947707 857946816 976120690 345360979 779896723 426102297 775238035 59067521 159028384 161447932 833817006 594737378 920839759 272711149 700534101 944061273 973269659 172424135 748080558 828029591 859460986 700634697 771790524 959589634 975811131 123459266 715368336 510699622 718061181 718651480 851993670 326196481 343720484 77476180 937056372 435084899 770565080 135077041 715957769 430864925 790661453 725483254 951175524 668825609 992620900 404196635 506491864 755331426 767975241 803200778 914357176 280257271 935899234 886939724 997871733 810591190 834053730 969949991 992059465 991203556 991875695 768813042 918227394 252915619 868669701 533014543 985606322 392074937 665651311 666381917 723861460 181550766 271625795 504670650 649426562 657156158 995906545 897951519 994921871 967675840 973778883 711662717 713537169 155152699 289259624 200803600 605214331 364985368 701938700 241802437 329326708 965983147 969113048 984600466 988209971 680545313 817230895 969079026 973543800 332747098 627120515 806803159 822211418 748128459 989735940 378822739 697831368 358898213 758449842 909262659 977799899 692150658 860855661 662339317 739763812 247974732 870829077 453807339 584377095 380831404 902524144 317830497 606059403 489624462 909527325 609574025 753219520 106483763 321030060 305645288 763256178 34900422 240941867 110423038 897970978 496699710 579262777 277562819 763710919 424576008 594295799 837740963 863098551 115929983 276730063 675643510 985429074 484493243 621865860 289080641 965086880 65247223 85782725 831367517 923857755 450572569 672207905 179257613 546267483 909939042 938899653 305497235 329423595 912930644 967887448 716848624 898758146 165266980 528240119 560024918 939487392 403535792 649558466 680981978 916133697 409718746 472584522 296245562 748781695 259295925 849798348 211072230 949639058 285329496 359601081 570986008 769338303 897774829 913762896 310286199 441380960 324617832 861181741 322724602 742995992 902605212 943729724 314646841 594579551 301366094 741287271 338629008 648542674 654928401 719262418 326135187 847830968 678552624 705075363 251831828 545627121 423635892 858442210 834324255 936028112 391083993 923377871 190967271 226348108 123995122 597909563 286538923 691761994 447339336 485039940 253381883 874500626 874291309 949832677 237828065 491221405 902131060 941865919 856292337 969483316 390647928 968887198 542364703 883442626 903973251 923763178 444173662 797452975 858057668 978926753 553055189 590464873 627327448 742032144 544338905 633139537 952590416 983691051 51815656 83303427 475283352 776625249 71848557 406764765 944050426 952648395 617527004 778080614 294868284 994878689 40273703 213944132 102456163 438266812 290860584 534665130 260820745 830628640 10426765 737640200 930723173 993934833 903717724 952109916 476581226 814846188 880524426 951521086 381548639 578518145 903685567 985501312 751823859 780787285 599484582 619594028 224421224 705667625 454972760 630321526 211461951 656038430 449525928 956164039 946124812 983624434 421641031 500591865 435107512 945155333 26302109 275457313 71735536 613370422 292378823 895142204 4723023 605330533 665937776 791266238 705166749 813902123 721961392 758621152 800536250 970015654 671778749 984808175 913687805 954003929 441876975 759930542 368461631 996882484 61649253 199263703 334883394 679071026 297130498 865614368 753028826 765153267 809701520 972953593 391069889 871213087 484713450 537995500 994202434 994363770 291015434 649116496 185526991 834047006 983380078 987339831 623345451 704760238 767032873 803000959 969835848 973166576 519942016 618867876 7689483 255169885 414560537 442000082 655289737 810306104 186934822 209658446 864901621 954327582 471542587 815686769 352698905 864480251 226953142 467585592 548013785 782273227 120061492 513115557 399054032 845098213 982507741 982792950 848290360 908170940 962760009 995321353 517071830 874377715 268359653 424626431 840345622 945198549 480244465 873050015 663658240 821587093 687814717 907354811 16941244 547145049 483775081 728442422 201841470 846795917 986073261 996906389 586347841 771605841 17802837 787467892 237740338 819649058 696114745 990170846 859247844 903614149 699382343 972373016 342525825 782489590 529440846 878917116 287411352 432458517 790731006 965569653 682217934 840673793 185916113 348926529 849856834 940839274 807471772 872611665 594557784 746201770 869332126 976286399 92190368 617710915 350267366 788099684 346655015 499328662 646490479 837167408 744964488 854784935 598820199 719192811 626366676 956018831 386852369 558524694 775407816 997761158 703290966 737896666 259386925 484105037 555329817 752288248 601406858 884980757 662057952 803611563 14456364 570755917 220387697 576796821 440791841 847282797 904944128 966674652 613603493 648299731 871344626 933021297 477644466 912283227 353223489 916492388 748413257 873007177 885459613 917387130 109675136 819313033 100776099 390624580 850781139 932932237 494705464 845525395 581808014 642565870 871601648 887010600 382587583 496001088 379165227 965474923 215144590 673209121 316503230 525617760 520976760 805278692 381671507 953134230 605087241 816218029 136686276 246452674 543038993 767373352 528171840 611436512 123364967 342589324 87989223 152761752 579232218 654757793 163263717 449545287 995332360 996514741 24513756 198416880 49138129 214591434 537682104 993070705 207534630 649398619 906500015 998421445 626376830 741013562 967489346 999431042 936012854 976820565 2880860 249519594 335366543 560125016 462447461 989514210 79624604 642179358 8578309 903124532 418263380 548167331 113609597 294753964 443015399 911924212 328242196 654618913 705823788 715232102 715990725 896551858 271547705 474866066 452898274 502851961 786141964 924531217 256521044 414588037 929969170 964371736 533592283 747065838 165693002 510938890 120758167 823800558 100664685 468862682 573931932 687346712 134451412 952960733 681244339 744390710 218013321 758096315 951890679 995314269 184509727 431728772 75324378 299176213 398198833 875277610 446569028 457557490 695061464 799917353 335875550 900828872 49442568 235515879 873921756 939082503 352803174 921947497 494245005 524887824 207865295 538824458 128389098 981239657 458503757 475434781 490075629 622065151 748767899 887480817 266265732 854406270 831737128 960629720 442766766 783083772 430805812 471096071 456339509 734778648 602999337 960957459 697345530 795395861 645855429 916613886 496982554 996478694 495916621 526651094 452200921 471742348 599266806 984318835 237306919 300206432 366082717 606552492 163337551 766372483 233829900 601602105 897526162 922230124 264121835 939716148 938368296 976716634 593347467 638865770 23911329 475399399 952162262 952916139 680640684 819762558 364546485 601479112 909282749 910994149 532895088 845950435 435410456 826672784 243227586 798887656 501798529 735290985 252235768 889821011 538914882 871850372 269309395 902071288 919591572 992708697 691865611 855502060 565871236 833523690 194967360 238778378 775970995 937942605 451894886 841965795 580582015 755398264 914228901 929055037 150227042 928481291 513262996 833058488 453670825 568333075 563097492 731058703 968171413 989133982 289409917 558712347 944804756 947306029 986174244 988471637 500627424 990072600 171022771 343248522 538879576 892952145 995985024 996684343 974838378 989926595 597084410 625255643 543377519 849541617 465133113 660940869 708134862 837798318 576661574 653814877 600258458 823818307 758234000 766173510 934364173 936231734 277098926 314639917 909725466 946308648 192295420 198412807 209439769 535170708 169059053 770614860 328055277 506045838 140319399 858667008 17549479 853027405 197568893 227100727 693708718 986280108 761354162 937495073 925171307 960171151 788808813 850439441 582870354 922170385 978263070 992145547 778162230 915134526 735028936 992600784 209043599 481014249 983782847 986048869 517312014 781849515 146682146 718330643 771573435 781517536 712890913 758460235 590256559 926641740 552930808 854984835 698715016 754732638 802431710 969555631 804279444 868596199 482067528 694466111 514844663 789274855 734105349 793620163 679359917 949112543 829849104 917949170 173510766 774210329 921446264 992659869 501755718 566525903 232379464 890222848 153209268 157746988 72830447 475768287 80462122 960463675 119245537 638520571 902549336 972749721 971822845 989064082 871811463 987719475 593075214 807860241 121601681 274550492 942641612 967043146 388236268 847065816 239228978 427663361 877148380 963204698 50014671 217498920 689602860 938840459 225211210 464283040 296044062 685864025 431228000 661002033 933719594 957913719 607876717 944366160 999242249 999629840 565471284 872657838 228513023 605649239 74206254 728889231 652638714 723660224 824495076 855709953 813155936 980775173 989663453 991798072 443606504 870931660 269022958 351119472 823622344 906757053 316656580 728680261 918754812 930247954 253141695 778934383 452315872 872621569 532112586 976666707 912722578 977902595 134604285 718983793 624166744 881386023 460606394 715908047 958900707 974219391 451516901 918895572 580206053 672486765 706942808 995225987 979428479 994288098 979016062 986655608 485954662 899804492 67777580 954483246 349908091 878531648 732720470 843394332 140590926 898677726 475869040 942231399 255746986 510297934 583160213 948172571 33869750 849161427 789165989 960802196 31510019 435652498 410756389 562632427 866704534 890213671 83154152 657778325 590158345 639302673 381563909 556980384 749728161 993647098 432311884 604591125 783691405 792007086 68310071 901179265 994024278 996956717 388436638 653799178 306850420 894801162 325091255 433307523 393935209 472219543 104785296 665052828 578651018 747005177 52122197 209523812 306359322 730456579 910801699 980723426 91885413 819898273 916579415 956007785 387278352 715066590 534287826 587294743 182612085 323471495 127806136 314900860 898754050 904331120 135986713 654383486 660474431 921654902 915196401 963746733 283015898 860874336 33469101 927582861 952700210 975392617 564464680 839114979 235595230 929118652 856269843 906716505 524667002 694591457 577162479 594488589 845615362 978855789 630318177 789209131 918347656 946250580 531096364 657713922 188127694 522774930 910234687 972039813 345012537 537381243 994336306 995151988 916356058 993363934 354068895 383776865 499088172 719479213 111332794 867954239 240811878 694808565 6001167 262170950 478128737 676313390 595352865 643979524 972495055 996225179 418464384 565574378 916757063 983087407 29788604 192804417 673422451 757159589 117939075 927836865 644333250 986889396 729613070 915752050 273969117 642338616 213490805 275718797 228009377 943331774 948833868 955774794 110018418 122485526 89168431 587690693 607830470 983870443 680720902 927438704 221011331 421429847 75172281 489892438 228417607 603213746 494879563 956972889 356068094 897270450 713264475 931457941 344319962 902479265 683409988 792120957 78427160 433301048 304698910 448621147 844940272 931406260 124437309 708960142 890785961 932320023 3221137 793228881 550290423 938675803 224418133 349621992 466283679 475557046 259307172 754278290 517429406 831405687 533791020 733190942 678485237 754035064 937865042 937973897 62943189 809660022 642746273 733529822 512934899 872979430 352586661 920837924 999901132 999957514 602928209 835699412 361664994 903992499 523786213 682329688 456510791 600761696 441378719 920223022 586935884 807241776 113547795 565717779 306229828 694634473 99689709 417697610 704897304 818354324 144748737 311022230 541518593 641037380 556475671 889013914 84416474 157581355 502823171 672561677 495505507 710843805 160972464 199159825 587725104 741444476 679456492 819539213 199552584 209588707 115106700 680303555 596470064 826626014 111926168 793819058 284636100 299475747 885640281 932913118 869966258 944241097 311683794 756166080 479556725 800292060 383363541 418336395 147913026 150536994 763598828 955074493 592672846 966823062 13683970 997657384 786181313 870472416 398987620 517809974 886826718 963626837 953301669 966328995 657187106 673726057 843944282 911381517 952607844 969303413 466915688 849077449 720900254 770781831 156051359 349212720 170441982 391198590 693340536 847199976 262959073 967939062 426400416 517078352 174921125 525241742 581665274 950872314 777955262 852416594 602271130 660480176 492355952 856692090 953164602 954074561 198980655 753773078 262003288 537359139 584424053 975926953 360886598 385681432 760419406 999325394 21816205 747432923 989341658 992283232 66210164 709633498 882301376 985624399 332727984 888600287 880704348 997046611 44393433 561347825 230200443 448453640 569844993 681417979 253104600 520129632 444069787 986651291 194253259 311817946 334979926 735035198 730752285 792081451 908359744 935482733 152930536 691472844 162552564 703166763 726024950 922886252 876456867 895470573 516177150 522356760 809746988 970917888 505049107 630284710 750537578 886024613 383360838 403209499 473625536 535117324 769291622 951369680 739706153 879356213 67519748 156103092 167129681 655230253 168994471 417523850 456826447 736183375 381477793 536542783 194231120 458400862 769447758 797667603 803416066 836638057 719478190 814045558 599967545 963853552 254305222 931661440 366567032 693488799 755997960 825482950 852786510 899009020 338954123 526474001 143463537 577695179 770494179 875997846 563529211 705235425 798971492 924234788 746044940 835840023 733733425 956189688 661642057 882572408 37173341 876812082 664220506 942337113 1477466 968425925 970817996 998944862 811966104 860964246 260859228 334400814 941631862 975831324 75252437 640664620 905023909 963374565 898374791 999350828 593344295 741992503 814912882 963906570 609801979 667427453 55326253 963094940 469535586 889823368 665885402 770859114 410042946 940102185 678292649 835643407 637785186 744458790 581453435 763780175 9255380 790118652 163279073 185476565 802163164 960757175 12734590 315206155 781205001 903727209 444951292 825938623 478674421 775903592 583483126 622629171 41415342 819145372 712700724 789230828 733852939 991869380 155290342 338698733 893115796 981930319 631956669 781896217 63159143 112270049 560331168 745350211 668348119 916106770 680406867 849187448 561130477 886160009 355180967 868771023 777789766 929697410 668545874 752231660 933753869 967809457 397238657 516354546 378293133 453795171 458991423 903824037 818434580 911794253 362713371 616810450 793061643 844762143 590165271 983791505 839944532 872142945 395227357 419208210 809647377 921137501 334166403 598444323 897797806 913744508 168376120 525622571 437916472 724790873 519489318 748419742 344949567 705295827 820557844 917116009 468129637 856319699 763653023 867748356 72650834 273149422 569966997 757136349 559478850 749582472 766698388 771937463 673054003 942893452 134621374 478991681 399490073 608542335 759476948 990053921 702237311 702437524 326577592 791395691 929534845 989574405 226903714 364313921 587418415 721558242 967648492 991440504 863542290 868156548 583065048 831497954 120884128 386735653 813577003 901667924 618710658 760643588 977704014 998343504 243336116 279810308 564873979 635397266 380228760 936211212 833163456 893722036 834637867 948577307 630574197 788505734 255950625 710840999 645279700 869296639 48642486 370878329 531815651 878021877 18640717 508259070 122114125 819607026 354880861 780338342 147712185 483752470 785604538 977083163 551964183 577468539 867970968 974504421 953639030 996450475 815905430 938143837 944448769 988947310 962983811 967007719 832572363 939673883 322195703 875655933 245079675 397311629 950625181 981416924 327383359 933692435 227513702 284996739 964392056 997139511 342194199 531040962 431014491 469352871 957449572 992255807 549991893 772302958 660964478 724586304 161109659 628084728 151977829 542841124 257980809 576139850 454388663 856214315 49187952 377306623 396537687 601247017 491603007 963884796 446495134 614714755 143236880 480690699 777431600 785900736 525037471 593637136 509078497 517697019 556072200 918003705 379221593 725867847 803740555 816863021 880677914 912152095 780579410 944587278 891144160 994820696 450208791 985576731 373357776 535749600 113919245 582330232 448809037 911826299 813051884 858442275 720991410 790538392 134460407 308973255 681025486 771288398 648963930 878562736 100008887 128414889 654272601 693887260 378270327 557113022 783423062 822580741 780239877 903280392 355686792 553761605 151088866 478320328 18209679 134629721 941062399 947258222 545255206 603017740 548220812 668155881 234820904 599188244 383097503 875359282 434713723 667617133 580205709 713143195 846009250 891468493 62523608 335858739 670841295 817457887 682915899 997815860 273054719 720512234 658709824 659135486 551368160 800968029 863829915 941779850 961415756 963076319 819081477 943126053 256945800 928067559 482892842 776610434 158115728 833147598 752204388 935790128 139112660 972186049 614995519 617351807 882701628 951459495 364927466 838943902 356864415 918579539 931014196 976715626 743612318 754291324 195813862 797990939 849538967 934155569 843761420 871913610 202790673 470539131 205274845 273217710 337333600 653363234 122539379 939362424 614568944 960209594 586096991 845431956 335917985 854127291 539119408 653708418 63988971 852006594 65502742 995508379 255438150 645982691 108868816 742324972 175153451 578600799 597322594 824914155 884066673 964732450 921968772 926447272 95951174 555160960 899172752 987544109 714171568 970082620 272077834 684028320 94123262 910226118 676851068 706833149 371014496 689542220 11077002 989266534 912411524 973358615 987987967 991370416 389369017 447438883 134061565 689239443 526692191 798375210 529601116 607334394 683757884 988195386 953430883 977100197 751388075 759606827 258947755 577469649 690668294 808750162 574522854 960562283 711604007 805296128 508357754 698178453 905484969 989824644 693584473 889197534 417450917 630868510 353149677 705329366 815511621 940274168 801424845 946526515 816532399 925936646 312846438 691249089 959066555 976419260 76108843 878477737 681120202 767316532 319422115 866624374 414933523 636154781 823204624 920396023 360676066 976984384 712713316 728711417 194176743 828420027 577452016 978361051 586756470 963455191 53908307 511453825 732697401 886547030 124301329 983225127 910069138 994345347 875435748 924792999 106854011 862096435 828105992 910790954 994585901 997846295 18303627 308700773 340068982 788285206 6478740 521932229 163118627 960723259 704481302 799108205 612335802 761110972 718825430 789108941 517224641 737845255 540299202 933403868 423721999 521290047 996636218 996945562 865169626 977739048 400131411 606801658 313423741 776867383 522869114 798270267 573201243 707631314 594300158 718484508 605701631 696954658 865583807 903052418 400293278 967626924 871790911 914840941 13392089 36770460 915504434 924564535 790934545 992952967 918682934 941213297 8542706 416912099 865348143 950009294 1732588 880932673 653315797 932636842 767627771 927747860 832915499 856213808 959317877 964936024 64973644 511762824 831576922 874048856 861377195 905652815 864681282 961694944 954206099 989329179 867985237 902087418 22912894 200213960 371173336 915943882 150933353 358257094 608721341 709972317 65777380 157727904 291450401 724038266 181429378 589001323 900676561 993834509 717157645 938667163 714193058 811993978 866406310 914045049 610264488 677279100 55606548 174325082 230533139 404667807 192929690 361416484 989077224 990719384 578070100 630497619 53592123 644867734 350017010 685569642 556463793 829682517 537673491 994476300 955457821 981167705 193044752 340455436 185792323 408138397 452140101 842330430 111741142 333057597 888518618 951635555 410617664 507544491 472276613 557775218 308981669 674368720 972865837 975955874 36447752 929035084 721671555 967871882 163694103 240782305 31342648 226025127 224862140 392363710 800573566 802517315 213214267 539879585 11145644 68840292 512291863 595354372 514410215 966064686 560088855 941985366 425056092 916705673 337012238 592749856 730470960 858636091 648422240 919285827 498283662 803289099 295652610 429597525 446061959 799504461 194207723 473186175 65423485 549682673 95746970 420827333 84034056 107137912 657503873 810651560 450879888 851275655 918652931 948164367 159560973 174279893 232417875 481815853 767533812 832256921 108519699 795347879 101250786 616591082 340234784 828416656 824654114 965018146 670802926 880338806 209387529 630683996 369091719 381037994 439113767 608017948 83346627 965457089 137779496 412567593 337226691 676548483 325676783 339937307 243654011 687976639 32104561 759092642 419722615 725806561 475142601 943450665 207424009 995163380 831870375 882678418 51622671 656055144 603834816 765745349 388626697 820307928 625002478 825850460 292252934 990508642 949801844 984898036 455893751 913591385 33262270 306202281 597114757 861044518 698714902 964592587 210210517 965862108 48718987 919436512 118621364 909639531 460583762 547318018 900658408 957774659 350075066 994101884 614268674 671432065 200506271 484207925 304490939 938700356 531172221 642882231 762321533 827968488 745284073 894321980 707429897 962718078 954767210 955318179 630127255 792712367 715820855 865776298 259764652 408508659 435033726 455172301 513941208 645508090 569885294 698103769 774973390 991687203 53275407 144368688 659070803 705391318 263766144 631628227 756621188 901136791 838470442 865567359 237760347 461550872 195184550 306083153 408842538 745714345 758442325 842277524 416211806 882597993 332899146 675783812 551880018 951464262 439715332 763516252 379471418 599190060 478707475 551687497 698770409 737901581 435086924 722138969 232507189 846654981 205840222 816515010 340370737 567011750 479108990 637731587 896827974 915182059 458497095 921780634 68669372 558816579 290948487 670917853 749951263 904091018 605395024 736439112 836928719 909088034 780661367 834834477 303895578 397522771 189708522 331202219 921432728 998073498 85876991 455153818 828702930 844960936 86929426 219314891 192916305 493929926 3952909 663660015 82151140 861250718 842702181 858406397 903631092 979791557 559928952 839388530 162899414 811433296 617520628 900536846 567301042 732501027 911821020 971698425 431253167 637638440 647099131 664564257 949110566 987340823 851454668 944338201 61623661 653914166 290840126 408315771 757900782 840926612 189727125 546176490 354066474 384982684 974707431 996973413 688870922 701904901 808134083 904321899 924969733 962509832 51144132 620692531 266350354 581010252 791849035 806602913 517675569 688498142 619450509 646549035 948672873 980760284 828247170 906370735 27045539 167807083 177972736 763104146 139748784 649773228 759396607 800589657 43789733 825935831 665373563 814544617 973727997 982299022 189199346 250138480 162105377 402522533 194837526 760527211 235575605 268546115 702713116 872053791 469535760 917986556 864247969 879889449 934382564 995668188 953157641 957198011 216119585 474931290 191312788 849642197 913574230 992588750 881138779 983048860 371856872 928443198 283381648 840892720 569517683 968327070 454545510 556759642 842809986 977991597 562848854 932100417 951257869 991351007 740804699 866824479 441601010 795279661 337256720 860224276 715657984 762788781 841375848 987126962 313490760 521209083 82899983 590272899 608501702 944495398 730385106 985198881 938826640 986423661 681821688 807940075 469213492 582492866 494325449 900766912 842073572 888275318 66572828 339294687 716657770 825058740 683135064 814778245 588918116 625085827 223444297 908381459 329942633 738005714 314472550 754025625 293500043 331088778 251098832 383526137 437865749 532674236 943105530 960115635 338703348 950909554 250249517 283440656 278634154 587165637 158160801 865027647 738193405 778386317 756452693 908279642 585509947 740650155 274477471 887473557 384867991 836578379 47959692 205301715 873008455 977012346 3975354 104226993 272235629 786682223 263335523 264032537 850025516 927534902 120798837 565523393 221432969 544444239 750925618 927529257 314802549 389359325 584569013 984347334 621951891 927811389 435539616 944418441 219067182 888659404 479908119 752984872 506366504 934450495 369380196 905813403 930594022 937417471 744136562 764916804 334897641 973265283 403470061 909318737 841258358 852352831 466066874 478910434 527263775 609066512 784651963 851713834 590750796 680561353 909467081 986537980 127036772 809165745 628485746 840882078 283520620 426369881 183213371 208089711 816291533 822087358 278178755 292182765 317924313 321448643 247377050 746398089 238950978 386752542 254082516 705686457 668749989 951755529 924639616 959751038 575234216 866764489 871065737 992485836 133321960 261079631 3480974 274829256 846216646 910604347 793906006 945633057 255316205 962294907 320847224 332557209 520732750 727199702 846884840 954221664 467729992 682461985 714808595 938395595 399922221 980519037 471372257 997995186 371698396 392700429 833480635 901788276 233982285 710005608 37857053 979776086 474071611 506180105 947871126 950149764 453372554 545020126 709860338 976833182 334727467 865745616 769950201 930208689 597983550 730749572 73171374 679696722 918939714 947539416 939435714 969108844 278511273 687068478 538703915 929641040 208586616 976503470 902728587 959643708 311234839 909744194 793891151 997226070 240859218 631106687 451468586 705307501 326788660 483721548 33403071 633908019 824640315 992966028 313688420 842340326 433876538 577387979 336070267 994359256 16156466 884717416 207029968 445124715 215895815 929596060 819539205 908983589 605067251 636871090 943443243 951687852 713926179 781930968 815858004 957267045 163584404 282991594 500154269 837675257 334052535 813661120 969404477 993779572 167893416 956660519 136583870 526644261 56544649 175359847 773777394 815685289 544745147 738187716 948331471 948695446 199861976 989249764 840014362 904245490 748047103 856922969 946724884 948801146 985533854 993088339 177231739 988183679 221067746 518929228 145757425 522383333 317266938 886221650 467793825 821480851 437688731 826576875 89314503 605930186 621443897 974017193 676424910 872954449 161084901 512730193 903193930 981791758 895955860 997073294 530946571 862914683 733579090 978744304 893364810 920163346 212064598 344834147 800878677 961723329 338918038 391475151 882433121 985950500 389975211 923492739 843137252 937640528 369562747 882947071 93884650 582979864 874950394 951086016 33938887 493324594 553366535 827861321 236725770 681936529 936458830 959253514 871773117 994804761 742346819 823753561 992912497 994782905 760151458 772560133 673049592 700127047 84859256 716968376 490759068 612515076 972274978 976196491 799327710 827440270 254227595 856480470 89680104 210049601 411029140 488224934 664076062 993788214 502364179 566437826 655019407 656986211 600676859 913655919 388196223 927121302 299447873 790643348 469014493 710558822 192004710 341951476 488679344 575139104 427869839 625935287 952635382 972838838 268835592 662971600 259833917 308723906 285682593 679935254 710882479 739679712 615293752 847084853 682831590 731519618 62222122 456277448 210682316 889672130 501658893 762264090 330398318 753849150 757683473 840326164 243897288 538483892 456812483 554905002 616000684 738051301 864078053 938304400 838525923 974999046 741331466 829738982 589464770 820501218 685087411 711058755 823352547 927428358 911149994 968312423 310574620 910779614 521741432 743298409 909887499 923180509 534137223 587757987 248060497 688931942 626977845 977514371 534706049 990671858 239374499 713874121 821667 65804930 298053587 503883619 971843790 988939400 24649579 924092741 274928307 331948802 214864926 637752923 32689547 528054798 733460845 765646276 351562417 859324053 960865816 996900016 193223368 790114651 874712794 875540940 819773284 923118343 36124713 414855608 551531070 743349513 344251707 597842854 306574550 891548709 813503955 832793670 552375718 746085307 735440834 837998832 156952477 725923671 843967484 982510582 566529965 952543814 522377814 577937338 919664951 946667216 583906965 592486641 406254745 407293226 431753542 583895638 521340209 868871373 601728233 862775590 229272433 412578923 110658190 786193357 841954657 955890833 690336307 874566223 52876189 223999588 695910970 898900179 130455202 264832129 90688818 656249774 827343171 966398029 541649093 705714970 805117919 829372737 236011631 529524462 158837141 954679400 742527466 809376254 818348903 898084798 457599224 874358515 208397294 533705145 570830577 639857636 358768280 927426678 219616303 587328745 213657074 993055776 568568176 626101971 260168350 665948817 512490287 776148215 723334750 972259564 175118005 774732675 681561601 759154247 241753223 269488855 305957551 932277041 773157993 809545100 59674407 160997284 262982966 618415078 983885 339077223 328128832 565172166 285065426 784616842 643150850 750979957 549950871 759466540 601952369 772371791 800402736 899435834 844859775 847530633 512883431 621931731 534809038 938522727 798596206 866311125 741408540 797645360 307128245 743555340 780879202 819327891 332428400 634059786 940084427 971635482 982574757 987869102 388380667 845177931 662752595 797616690 522400402 742035975 193005583 231521862 72110132 676790960 272985965 969020247 644541688 673310061 50241272 953024959 296235319 521966940 37603904 595804751 50410376 569552113 12084748 527621759 705367622 789457748 149594530 286790886 88239109 940318043 423350034 452379298 967269264 992459881 754661821 967809449 630418936 885950509 710128000 996141171 609105421 633910611 890653787 994208430 352498779 908321285 779452848 872833887 144690670 719134216 665106620 699193954 458438361 580006444 963506513 969466796 638040543 675576832 269705983 554375430 221900333 743054910 524609259 627376546 131656935 707127560 183500439 772918695 688315215 829323368 58481504 269512764 124420445 290196868 17687549 79049031 995391476 997919010 543293195 934771399 786609039 862726369 992980394 997245643 786535197 919745763 622808813 745423385 894463595 930489085 823346524 878817992 526140152 768607483 679244391 711627432 518853904 965514132 348043363 825571637 128370181 267444894 863217751 960874990 954500034 964849965 161420470 308956200 735506242 994261908 137816454 336468707 528575159 977101669 266374695 962671495 564356171 988811769 570222654 986277787 653124696 942277968 158399699 459415777 130855375 451748710 922508746 984791573 377472245 915719180 415602336 563997550 776635136 830864045 794106997 813931017 37559265 150695924 239836199 551430065 531121539 895297051 207584266 525202476 354944264 858571564 102744359 458744524 484481185 727227223 89589355 698906393 777987796 841382025 411197247 578555727 593863021 968093619 861907432 976400547 393103894 939144844 530288744 984031600 140417596 754158891 478565820 846483818 546242522 822029149 280516274 972803357 868949689 974562041 685845824 720865373 405757021 682689933 790509903 859468816 38603716 584327766 448045787 975433937 482635935 960323028 77447601 215693154 506707731 793929680 549598131 619962266 906848331 985473806 641325677 935521287 176029741 813663394 512538537 709909506 472616989 821928835 735932179 821979493 12535912 677241456 891575688 930548474 984898088 996378116 330432901 586697623 423841624 747704561 900637260 935289470 208460583 689403247 585782297 923064503 67153191 303943119 331904619 924734114 202043438 330969698 218975545 890443383 610342082 902646451 328347382 707239568 148757243 678736562 997295193 998480345 823586503 963079534 709028524 937224553 170213736 301192208 480472639 799671215 672969026 777100784 448980156 484368718 200855401 515138818 876222333 908981188 722096542 927726814 392792972 508669213 811281805 889189740 814365797 844520742 44839891 442407892 692849671 743932402 264912319 382935460 25776562 697210301 797394282 926045575 387257400 422884619 869038235 947266205 771800230 777294760 573277671 819820739 599047188 787579713 294841182 679901471 193052869 356323730 278081118 966546070 237657362 352075662 530639023 815610994 712554259 817148879 59620887 403596511 512724060 878516930 597619940 840508015 784482849 943155599 560921410 733892162 686347593 945433819 6112388 494291436 425920695 458125466 546008369 853839720 420600085 848781988 270154815 659155452 161770220 227884614 55920904 201353209 910046229 983349183 895426583 970708622 208958539 843046258 862696139 993792841 618144756 846597191 554500230 947780473 850897801 983093714 764610055 797303176 189773843 722473306 167470592 203699534 563885976 669182703 26796138 304769249 73313006 848273999 428133851 806918808 767837752 880226018 700907119 934825333 704608022 770600714 44171193 607629596 804812979 929771426 146152485 432047268 633628178 931244132 976727187 984012528 513210481 811989721 378172999 783393104 837206103 945560662 870391149 922819913 303234905 853282758 913942154 998544186 670934374 780999415 883514365 980275788 37844246 351429447 276940131 746444394 552177037 784122245 73845381 614617281 108782879 828935667 918334893 983352106 320330897 437631604 673824226 788744144 942160088 977038915 542000553 791110149 2920689 829661181 839937583 989975610 584672886 930375941 899729746 961966590 414017533 855721356 523470040 658884367 777025498 795387554 333418249 672248483 263847261 322992478 634328656 851249029 550089873 558683634 434425206 595371391 863556662 886882059 124100358 241938002 517876892 857979622 31223461 700904006 635008956 873949029 895566020 899887109 841013598 983176086 761816344 831439860 75494502 965433029 323675547 592993750 24681829 795810512 215009099 801048854 86450753 923798237 920349609 922422615 203892857 346905169 117157132 787294331 729202180 956449456 875208001 935781835 569320260 765796747 7663882 757386403 917611051 982710861 701809089 764079081 776909910 789419969 838118237 916724438 579511099 839377354 411855457 962612094 9094335 761511691 794129516 818726985 931986530 980749121 863476439 995336739 838104529 902773055 896804769 937458692 20130285 867748563 378724175 604127325 300221069 806283631 129280040 483430341 223123652 888547874 534375429 549346916 593519405 945414400 848685327 937987240 505171675 672008478 703701431 886914176 968848094 970092201 160876538 210607606 15711014 472454705 378225424 537991158 468748072 535457598 457225553 523248193 306074793 829813821 976856358 979141380 681862266 929083973 409056279 866524140 709139631 991333615 750253445 824789976 795494245 982200096 848922501 973692917 121478235 808194492 903527510 946908100 540683711 562024827 715415313 923535894 106941622 713300749 38947248 710063830 952177862 964504948 649745626 822390584 495482801 788565235 55124051 996218580 748135645 963969996 652120164 952327143 294725707 481100287 189224327 709671918 642658400 659522132 678549747 714880531 60717161 561794299 927954118 985186933 382182109 827513565 191005219 627073891 830370353 995926262 388227417 937758158 593501166 708824349 245148189 946356634 4237930 452636978 115250354 776518926 575972314 622318938 490808441 778160090 643672830 902037052 210799438 851692685 992576691 998874387 141159653 647761718 671353659 752328735 916395799 971621188 875688169 988596765 42761340 154056582 499850582 953597709 284913365 483405211 80189002 697387011 275404316 364173354 219403814 695863159 674387996 824398133 135876307 556778448 733336291 771358967 28725500 68875542 192591737 778177969 139523895 573250241 666527939 973685786 778498526 895199502 425951920 486488664 399539409 661215675 872962504 982573769 780629866 874510155 516915206 652481579 417546543 816127089 125469153 227837686 195287574 800133834 614667199 685994791 632161047 825348463 120473566 291341525 359574451 853765115 571225704 846565292 386460251 653806255 763649757 766356355 548384269 941860968 584290900 914985993 234066984 784486122 517124418 975961751 906991722 939436543 481914733 896170903 655845886 900593143 403440980 607099840 170123360 522938381 138536477 332315044 173895503 363122195 62854591 717923492 820751949 999749083 871397032 881771978 85233999 226609455 823423657 934055659 464062553 833791412 844400087 848818448 909442660 920287449 751663475 805826964 763301032 866180031 365723244 470571363 594100496 986989348 15579406 487764708 29183855 557697299 175969705 829239970 131049411 164685828 399258269 417793097 705246265 902857660 307621414 947056538 532320586 807072853 513759835 652891571 509435243 719189756 361865667 440981504 236091056 948489976 337561775 993404490 207341079 569228941 456654495 639586253 411296267 859559423 910937125 979081531 505824024 586978294 146852888 780358285 414897349 831017024 909731412 984440994 547709631 733685882 358763145 992744906 696701916 848920886 736894757 951376755 867405310 934128214 485738319 785662409 819248461 836450926 611087774 954370816 466465932 602908213 414667504 768786929 292354726 599909524 97871564 384068048 438137543 722851602 982268305 996868283 559411379 650996593 578422477 637044756 230743303 444801614 388259518 572904872 648688565 806239755 974580690 985140346 87694582 943936497 681287337 824418650 936884745 986078609 119739250 937612507 714879752 892941610 924832517 955791435 648337711 667060941 720614085 912725549 554256970 765429015 289778182 476897054 642305526 915497774 283882756 641977305 695227208 854868178 796178087 981169860 281957813 287219610 463019022 781238001 161346634 573716246 420847663 703644884 141199764 959672892 2767408 672527983 364371511 731558995 140242948 665111209 77899360 852664508 464701710 646596395 30083205 250752384 703476858 790943394 22664599 32314803 960941488 996262488 946342939 978561387 863795310 881891282 655856598 987786229 918859243 981291758 665898132 776732011 103369997 544330208 282632727 956266409 10514691 651648090 871446393 962784106 512789 104336960 548731753 582265323 670500548 819043381 948896653 973940722 218330581 804154108 890807737 968787882 92930552 837387576 623291395 784297596 38761673 736122521 290763534 317398429 976166480 977307165 8057128 971485559 633371929 714660705 913903172 957559421 673687043 940229001 49138544 939431070 511992131 934983250 972718260 997483139 916394414 924029354 166425628 948941387 68872845 799008695 642442843 976072053 822384808 918013904 893090368 962207068 791101796 816852321 295960317 824274105 756559976 886032836 329397708 329792042 810490731 959881798 546042938 576883939 323295704 649019520 901552712 909203971 735628054 767570425 5941342 981650071 675833313 998952168 949662108 989866771 255626003 739964692 572322702 708914466 124397802 289882410 664653737 894699303 643958596 768821209 972919022 973141884 911734511 981553714 272158114 520516590 722364761 973402639 485688920 503480194 117022209 313633390 145906293 212279469 471921216 942826795 576066375 808824520 67144436 942848731 139300388 486442880 750869110 847750495 221557230 959642133 778029340 917038831 264789726 421639895 765904310 836354683 687371023 702873748 741327950 833018811 75828050 801932293 712389880 760744902 242201196 583431085 640886849 814091579 562686644 805792221 737782493 943798368 120061247 636766619 76188423 242666106 564430792 847258642 96954225 561851228 46015191 795699640 143676573 636675821 366261693 985239820 722113267 954204456 642364882 674906994 38623598 409131084 645473399 713636439 33272720 329272882 391305957 426918483 730865775 780016823 782118665 932746918 268138562 579593052 236481560 757240008 68977161 762854230 877628028 900906967 573373486 845413585 978676291 994716156 465491159 644631975 999175628 999959677 313714133 565777088 11089814 314667084 194284834 666568416 360066287 945452256 618987143 700068236 150507039 328500976 907226404 978917093 874092971 964154102 654955939 770849704 585132583 809605866 74394516 883786810 824120283 946006786 655473266 979792491 513093838 553793156 441361467 697694998 464889752 985625503 510365896 996616632 630890835 689517823 530978261 878962194 111726994 846380311 256368477 302861859 255516705 460227222 602047017 853853498 440110277 742684324 756499655 788985827 225905615 430752985 335039220 910505752 299997221 621058527 787739046 845418384 38540399 781788364 895751424 959570824 702899777 897688628 338729135 818896515 908219871 914959148 253167503 808695022 57742496 936325062 304956964 370597798 204997479 470382459 471291449 869944708 149342343 479599611 388102369 848721086 521002075 526158733 586548546 875725152 634734771 664114375 386664427 447513680 313158072 350511352 168562724 491171250 358132938 946981857 325747389 859754457 259571327 581134475 88110015 896614865 389592294 616978965 585433374 711895520 405307459 783049154 585219942 733046290 761194419 973427897 650074467 764756652 772928334 825274955 510951040 524426308 166410313 219705861 375951643 592680776 193680432 714520572 357954303 401934574 135550034 788182771 799640882 970778392 867056489 908550382 466134593 620183809 768767404 832088112 683160658 841715005 956451287 964473513 661203680 699612529 266888382 722590928 411956202 582592075 222874694 231421187 262252801 578278957 696949313 787742965 250453529 638829146 547608289 558585567 951810461 974438850 387368361 492478230 483890441 665832235 572815948 848033105 484779808 627466345 167942816 539536267 645776692 678277832 190234423 418231602 980605766 981978827 278035009 362907168 538632772 677635253 499688558 993004916 395135849 532976755 170918223 348780023 476497993 562015403 729141927 953925010 949870248 971831722 961935325 976059468 303196074 668107169 370511291 630488942 660007660 954777814 501581876 798483001 945726164 977573871 809764094 889064774 169760441 176433444 315672605 400072326 269940347 519407136 29681932 600482254 206031524 873827658 124050912 801470569 268010670 298975103 988299936 998166383 6275754 756946536 747112513 922303977 11825618 561275685 299456356 657284173 96884828 683273191 562099636 656018331 689131600 926226137 705663704 804756645 110823619 645863185 398844013 786797916 907056470 991177673 154496761 966572092 123822866 550572999 685010332 866914268 498016235 772766269 795017154 904545580 491303885 628340176 215339314 259374601 506231170 852521492 595448804 640155000 856003137 902525536 536412467 965309125 834543397 916971868 349736357 824898786 725028060 966147404 227151939 692272298 28268606 872405392 627954637 719112464 322436432 773407291 395080481 976926394 839570795 875269436 389725161 500160147 613127933 908815244 25398746 863370870 847333287 879309340 663489509 756777148 734283674 740750730 521237354 846576435 656089232 720768820 647942466 920549122 445834317 794535427 380376558 609057948 80713266 560880106 537215503 611685384 570920406 670265203 142681270 590687188 804933795 854107286 518985705 574501350 74986548 791014921 942087429 984290592 914789854 989828410 306976610 468528689 583714502 880197288 744054436 982030577 152513730 927716982 320700936 600686128 757384157 976437659 267500433 662486449 91475009 768332960 686519498 693970447 886428370 915891965 288448548 950441320 781009860 909431980 423476582 517858500 686353121 794006984 612970790 831337313 629494235 868979082 953552120 958520957 472781044 647568141 175827359 615421777 425042918 874508738 779131910 806977224 989143157 999257219 166328742 426035065 914512223 956422372 477721272 770939372 728411154 960913004 449187682 980946162 734938899 766644545 950549136 993985129 405193842 986270211 176574159 994958685 388378418 702184620 402430273 854295746 367188852 462166506 187654593 908027008 214470057 958446284 72661699 822025902 750153438 810373665 881419496 948343435 483208794 581419087 87608481 808712453 842901954 931739036 959831190 975369941 566294868 675745195 935542859 952898305 118529599 536619431 904170558 922754498 356524324 722922024 497307413 918281346 665502645 918323099 302943226 968504850 661317700 673008286 481574955 691281806 1232767 571946787 923788366 931333443 702521513 855350060 425662584 595381384 85578489 798549105 594953322 954974219 488547044 912536403 111299138 760219303 414296428 629156654 667514202 785048097 501582993 929041318 290177483 555188800 329210676 990801321 562204393 635491625 1538195 935498418 610642812 951625922 332215305 905763257 157634798 568823903 259967073 927633492 922049287 990342016 874827147 936783362 523149536 746885840 921707575 950476448 477403015 567248025 822385219 926566776 989186671 989518146 512551015 831829236 222881363 261270975 465065808 550770256 376138108 519563120 297932815 905651577 923167328 929403907 983997942 987700208 208030822 668637089 608478163 848722259 475576787 554849034 147574469 504569640 60449624 122051541 169330998 310817487 320945824 353965031 858386155 976842648 116356379 256531265 137970616 574069117 104223388 256046127 242522249 333362726 308701100 324533727 389837998 681678794 611167582 995238251 174179529 490904786 128720109 578411176 435942942 855805729 979535238 999146454 248629466 720900026 755167347 824811038 208138102 848903033 129883218 831410514 415906944 963846422 642330046 776604443 744986534 981894199 359113569 586027819 326579287 492296850 531075013 702259727 15404970 260016672 833368196 842809632 13855547 537090231 901813847 923527686 948971293 984829350 80267988 98332783 730875418 992054878 994631529 998671333 234553523 548178552 31930927 991058313 154831758 764157533 19039818 311133882 518540784 967327925 186823441 689225237 684330904 890731628 672397232 885612888 810533506 863247330 190833689 591944251 749829975 801121193 634183230 839504313 941184696 982104907 200310230 890043043 385036210 923047739 571676995 581066838 724855669 783256441 699715987 959007687 666749378 729038411 63730814 671706741 682590682 935243560 766910598 892203297 649852282 769692382 604060430 998748854 199847562 995305878 873038830 941882724 170824894 445260020 428193667 764533437 104149723 769445834 796743663 841531006 80110101 804303845 203009587 654991979 327948759 511743938 547143308 976097589 537086436 976038624 519028629 911328715 539107772 759825792 541907351 661591516 877445340 975408395 83042169 711061204 180033622 571042400 870287612 960511238 570033940 612731388 642630433 856985576 970027148 972972047 983264392 995411695 832329308 904498233 453851502 775252604 289185223 716713016 259253432 290842921 435473563 507595907 949315006 984184700 383079587 870151250 659237579 748851234 411277791 489965897 599683468 907456541 156446495 258541496 256299820 374033070 217876751 804684228 419877854 496106261 698320485 709823130 395464558 451282331 451602396 801005662 578112805 599402552 808485392 911817792 463312525 685935993 448083169 876832083 959012216 962815912 524282733 952293703 558813337 879462272 201677065 938365445 879889876 912981671 569081436 794345562 82274617 993030029 985162793 990983824 308243428 599134712 723056664 828639886 561577667 563412655 437092493 624849772 740969804 840594736 328088809 630390429 186566526 724148391 994203791 999816064 636425206 752053219 130923037 618991119 277001483 549608037 761382037 875894811 952310924 967730171 74837468 826259587 879756389 898765900 459522200 730771880 218132251 546870763 164322896 875615239 721347188 799633984 809087557 866484352 671309830 832429193 388675343 630571421 596356387 823702110 289878967 465649152 295478707 802562100 466471611 758623547 60906885 414574476 12764206 521581223 517118551 994913699 239890680 594857499 816350931 974570360 551096481 602528577 163216803 489785478 600614178 750208099 781077192 903604572 18449299 805225539 876633429 894040018 40909698 195154114 734061188 842716624 217768394 485601062 291004280 971069278 544879227 890797571 295023113 343554619 894569733 904954681 135208690 368006596 558583600 922680890 6732441 538984805 524992148 789826781 870759128 943408971 33860183 268412608 614114509 900746048 968609357 969044816 222278990 666621272 328347476 726335946 905555825 996275601 681811373 858863711 390185238 912818278 82110798 136015840 549706598 982523042 310940415 810743448 700154821 985588659 287340294 612424202 693322252 796683148 958198578 975095721 483351336 785742017 827878146 946963774 696726826 704621740 413608975 461994803 598598501 686675951 901250971 942021278 446507372 766918170 73492619 237137229 586324252 691232705 358080704 534757467 496998471 817897731 694671126 818828519 578004137 888516868 623382945 815121976 292881872 965896255 369996717 960646976 181911284 893584944 67214 615949672 964042332 988374487 503256815 868323632 770548108 977764552 723239648 735923988 170695673 686435410 466165430 600541392 481896148 969806242 778485053 788421869 597836890 693617825 201903238 743593425 404908713 477079478 791284711 878510803 740005268 764765981 979245144 996931326 672140394 832612898 152451077 977186817 408497749 659203976 688172219 984505979 500908085 579897099 531641655 553977795 250783996 713916363 227238375 430210258 365626120 553066042 949457339 987124416 758013701 985609709 436799194 479499353 13922562 540033339 12330993 841357155 243453853 536032246 998289546 998770366 366065833 862467160 266917270 578586342 427203781 543026346 736622170 751725417 69574802 550066311 798876094 860719177 432367072 696022818 992972407 999530481 162871882 890053400 433326970 815859258 97797879 691168446 963827155 971677047 470562098 913522764 756218402 870474374 439582031 815869504 801229485 935092591 309715293 724262602 807081900 909189783 515722508 982584391 904870214 932406608 828867370 881874575 704935946 836082587 575517587 597554372 37500344 254565635 350634268 616408320 315369225 908703533 987003232 998238075 558408155 820200102 389097442 718857175 176682403 868931682 680268017 697036515 950210108 959540965 568527927 672026942 364064886 407728841 655078351 953660888 215603918 734238805 899583542 987897343 11003586 845751559 817875046 863117159 101902655 488205131 329920863 452452434 273391136 411352218 11638791 619030145 215526880 469737758 150971430 996675444 416230114 728503087 34453053 787344421 391496689 471949661 104579472 234280517 679248398 842379336 796554297 880310126 429737020 463983023 880005841 948958728 944502884 950447564 750632440 909040540 467841537 994412254 457613791 842765510 580558757 829033077 126310616 139295488 990676953 998878196 324847207 562721343 934149700 945507688 463753990 697822342 952605427 992193301 297127441 465142369 385437765 899284133 72233126 948425361 740952893 862749955 727494607 929503382 740892911 998297863 875513691 946683078 556236723 567062704 649410644 742686151 112791943 558921693 2826340 611653821 306821910 397428750 179668184 630324378 168623610 920213302 531741019 538104659 349492757 537561224 543267997 810483069 332688910 646777340 598227984 959118015 338225985 999202372 35132145 346539482 703449758 927099647 646273050 834089059 491917405 875436787 383174051 534295526 758645353 959421497 162929629 601042403 405280190 759903249 713762851 811879316 70566807 79636088 370688828 409640541 70923539 189664998 577769963 964924839 622211781 808873452 776761522 819182271 534404879 839088809 253999916 287830494 72715992 288628095 13448270 320752673 661034106 752140653 542638677 813921539 77162671 942201065 691610099 761642980 712585714 916140007 26542102 776644447 478810552 598249933 398155727 983009704 364759533 954983536 128819057 402076213 233313775 887072667 169242902 255885936 499413521 880047365 219627434 880702000 598052107 696535244 488783700 948752349 76222444 860867649 13613210 725827187 436396410 954672401 455213745 830621444 484641136 623330980 956467143 956921693 73672208 757586810 849329727 865676351 204224851 785874136 492275592 722227301 382662953 792007331 367538532 451356006 684661763 754968520 718014310 778431052 915053699 998115130 962547573 969142525 532579320 688211404 257086382 911179856 286002841 472758047 25414775 402241744 605412701 705691038 205754790 861110661 763551099 975103150 407951477 786369715 175180578 971521697 999585994 999758644 304498332 420280969 505896424 923520025 563128965 728197379 838359576 919994618 975559151 994955011 192059314 584840522 298479170 741745957 173598347 346277131 389009579 904759926 955145550 977599103 435498041 968569625 296346854 426447073 574874201 891549930 665115410 779972012 202463978 477959779 524276474 837114750 821045747 997744670 972161276 972801558 134563425 582521633 352402837 750411106 256932637 413882834 177027020 899018042 320335216 650911744 6871225 857881050 560967652 792619647 478180261 811427299 786510354 885211635 203734738 586763316 721560157 769470466 579175011 829391988 16339858 294496115 81914504 981217224 338592858 959082336 976384370 991895632 837912757 959737949 394651663 528350301 815793352 958848270 992925038 995791131 912761833 988732742 704459827 895374622 909399106 994264931 777223338 936873918 627889075 805445772 656247796 847501164 175398267 708813809 909657577 964703647 356390667 685311118 701136609 824490521 553493082 746194856 633032362 940068291 990242924 993455101 877910567 984219074 527867316 852705017 222552391 872914705 761955615 915516323 675880949 744112450 538020976 905103786 385669389 413813404 82959618 311358617 82623298 679280531 296862767 823692218 990032506 997729111 37925218 379299552 890444714 914314985 571989245 978934471 237045248 334115555 682369595 704821214 900831794 977052134 642947056 816854847 490059974 820821696 692944195 775528209 691045423 776627713 1715126 934958533 369895426 600667363 586957838 916109101 679764058 756597102 240815122 805810716 67355207 427197254 179409509 422878051 309141725 514576993 380729538 811354786 540251423 861593261 732561376 872424379 391370306 586928365 792915664 853464683 1835668 578541903 245629571 720566559 749808558 754109136 514584438 526321530 406916140 523220558 653786949 975596508 197466864 260210549 475967714 657365596 889395556 973932754 511317851 895708820 134122068 626071490 661726825 894861531 940769048 988649857 922770456 981321043 795937679 916112205 184204895 792676179 656340666 673821287 357823331 654652838 665095051 852467581 573163046 686994780 682314910 973115830 208298575 417732953 334085087 587772365 456327077 784106945 125249978 725276654 578493074 605583621 675636603 899244964 72158637 282848383 644336972 724568848 985204932 996305911 571004944 724204845 771524131 885176978 530749488 694632290 104247270 640940276 996308396 997013255 200247141 811059977 913374206 923272526 412709246 582902513 677134301 704517672 566420855 816026496 289884703 610821973 600113061 838573506 313200186 565788275 593761516 961562059 405090456 508971009 425774173 532080737 219138679 456403279 384679884 488040324 428189650 870820765 595242643 851346812 785936402 832928850 55623012 760745082 649525650 988292758 519169146 876506353 68158676 988314947 260725579 972559724 952507250 979192850 971300010 984687822 783703193 957885970 317625120 756311080 954007573 970824146 958903584 978751378 952340994 956759446 10414507 645800164 788172628 980209144 62615833 467890303 446189242 467283626 691698927 737407626 49094301 751606807 422852703 959315051 324686768 991401538 408183851 493661170 476347867 578938257 8674574 690675740 327473941 522778822 276846729 419586462 279852849 810728900 801380543 831687101 218327658 513854152 99152037 274655578 639412922 890838113 919980479 996611896 151020781 870547457 902731583 921151686 450927661 941063993 552117101 868700577 682480731 706364259 483753696 594740924 643586840 797426320 938834761 995219152 638589716 808166115 176693427 872110835 746115372 841091660 886369664 905080042 37207846 939940772 221544434 959692218 780501071 984198683 107670257 293875078 716392449 756654826 999784045 999951211 776696391 791008165 699781281 737017373 76916560 934010497 220131675 410067395 672545123 736177538 298893864 857538090 763572311 977504439 189333652 794981780 718448816 872370458 386773894 964218959 894377402 905380104 15957556 105614099 799419748 966694694 986816541 987096920 770957635 824827763 799226967 972401900 557611098 577134381 910415196 936837090 756201184 916095553 265157164 517184372 731923118 782678742 277489039 735798971 630419759 754451496 964813638 995057430 850961360 857038719 420802211 947837213 677786284 960704893 575115335 962179984 41710513 925174895 612981630 762286378 628761016 826521940 667494502 880027983 416627152 834122218 953089302 963090158 6229042 220553448 480605440 988076129 142633241 343436310 304222398 369366129 422290193 563821924 608674986 882378872 136347596 442059707 334433475 800577047 50298085 165076020 443394582 503052573 53833363 630535941 805054281 967647424 972162219 975153636 22591550 339643589 881115822 950582219 196293629 301862723 547084022 766922888 900629607 908184248 577795355 584364716 589667397 771938563 324288772 644076269 585967781 937192509 910391230 935923473 903296916 978120614 262292885 328898268 108969871 315200469 100774899 718514616 315414989 777346097 656674503 767361706 239282235 988128388 709439228 996572334 534759705 851472540 172361338 832737360 566455784 790390917 968170203 981392854 940297939 946429056 405763332 435439486 355674023 893844709 868777538 988179773 20976446 585863278 783835046 796612028 380943291 520909505 637414555 669645830 706102486 903560216 254110970 991181884 917379755 963433735 142697724 803277127 464221155 809279401 576899627 843628009 804435322 824861380 790878749 830234447 34171734 610021832 670823876 691948191 116925591 616987212 37211769 143440551 239844895 313456720 324687726 486760267 97256473 877935365 733714109 967361536 953184699 960394968 415267278 429429030 415813419 454896154 334062007 966089697 754240947 812415650 862551737 875952103 893957970 943476363 957993992 964742756 805418990 974276160 655707382 841566970 780456815 901301022 786856212 842288395 379447693 465535013 250948275 484675404 558265664 792581696 35914506 84834320 593116916 964983739 457822174 549783562 793198796 874112182 190695917 829208853 127274612 772916611 662750489 728519868 342737581 857416201 934170169 975799643 208657412 917192332 698787466 972610707 282535680 723126147 627647453 832162336 995629306 998919830 11795891 197376085 267600564 868488538 804567747 882717769 382669249 861929326 733562640 898653977 797461336 938319370 659104136 722352284 983199779 984833967 346601337 498378268 782251454 814007786 54560969 75344560 969314809 987682371 203802790 522564063 625200259 875757006 592818667 611099684 847078493 848240279 654086059 897498448 547377830 611013723 769703845 950165328 937870918 983907696 343557793 977881248 616320847 846011558 342625230 376117532 223660516 424516048 109685126 360276267 33341117 964046215 177905325 464215186 688364669 872353207 455768220 577149044 19648908 698318912 865830000 982227528 35691382 749678526 910374913 962527410 789558940 830295672 141942000 815150536 273384201 334114988 572735537 994549847 449729094 821115396 802518597 820873820 376908125 663043173 965231756 982512795 627457597 733601975 700218117 806561019 814256494 981350024 82803365 941567171 588649837 999893756 126174446 911811151 594972193 965984851 286351220 791689987 345138137 492926911 953864690 972223055 667521041 828465757 670563315 977595924 538946207 875810764 416887732 673818891 242316413 283708023 712424674 834339173 480899754 774783808 989461744 992628737 11193877 700244306 60343109 458993156 21318213 439347801 112775110 419362918 406516338 510148663 182537721 883694468 268557361 629295394 407959675 738261090 977249536 995500523 598338577 848662787 876395918 997844848 614563548 975107224 27978812 565895435 514103862 929100507 536725857 592063425 546210212 605822644 547292456 924567943 243806576 902635690 628891536 861078823 169123299 366463997 386739530 917200096 192434861 622761314 452854711 503941608 39696487 888378195 278402237 356703398 516670129 831626168 200996321 687192341 759136690 769948028 912959545 999420168 866552020 883836680 408256764 735311822 276498051 450666824 24869366 267718019 260793773 783141579 976887010 987226605 93042490 312627398 786948173 842990401 383381465 438086168 435539208 838258314 90650991 740666247 164148616 355354391 310454230 759849959 233748542 651551249 382181695 445688030 784859747 895153330 752934956 910608210 196638001 776320922 629504978 765239426 150295470 919173070 547178662 849308944 377704056 748678743 788014702 941305848 522054004 959823482 120663298 990173177 526784929 822115111 609127416 676949982 923590848 924137461 699965871 764972931 546504385 658711700 669522935 711646421 817107656 982311907 521219161 543651001 712784653 806035954 212166462 366924789 978298623 982218507 180501903 956984301 631604888 697170336 134541062 932309833 519065835 626624004 198268463 383336504 615865738 806981470 138224643 931451792 94727506 390918647 74160464 637296398 680948498 777531717 415506822 627892327 645993401 815993750 552287551 816671087 32384713 236058019 769457328 785935751 776384428 940495822 531224675 688502482 613320775 648978494 951540040 973878055 992148238 999471743 668544114 888623115 260018837 662004988 628153726 876839727 706294733 936935419 449710317 609522600 430795591 942534452 636202784 901271806 671095626 896299199 357408882 589003077 360143772 900687201 997292062 998435417 939985420 967570158 663256546 918966337 238468038 534202897 386231323 642728883 839921186 899948494 59417828 304912029 127301209 910108386 720463978 929166683 334054263 408894694 511439292 585870657 503316408 531742440 237630092 298006804 541783169 623801848 71771504 206714644 876618276 901170084 610331172 979373075 934851586 987626616 447987079 569742328 648498940 905276353 977030849 984179537 666900533 667819492 812245529 946619271 43871456 598350541 775012562 851946965 804489399 888623916 5686692 81944685 191930139 388447242 821238787 912584513 192306853 410819822 721466857 995257450 685675526 885634452 400657298 713908093 385294465 900065127 287613763 805752431 739529275 751232026 350789747 499281522 776535157 831286156 696347424 715127942 855202577 906642089 767451640 863486154 188372652 278067233 192334439 791825333 224346384 951809973 575706515 952414720 149471408 333422109 868673548 956393219 964612568 977505866 911497637 928250354 911524703 924482696 179700147 656834116 577323367 764004338 664546543 854139151 93450475 786113432 660533896 901473089 576117448 691694226 913992298 922731140 682252484 784873761 585847636 800510072 639403033 717763728 400933905 959337895 319416703 588360516 139670313 461714945 210728756 575716615 969172594 996345125 909720440 932401511 598408884 795797119 876353964 922549708 433720734 821694157 134188566 752785508 876443187 983046151 624280185 948273717 227487890 745188315 652613635 767013892 716337589 717179576 904583796 953108241 203257996 880035515 836316226 997337785 73777329 804699084 935144038 940579047 523810926 626505484 270538170 298803777 221089499 774353908 140358443 871192329 99906374 725119941 683819327 805212548 722719344 875027747 353098555 928767771 22113553 871614248 374963935 921792673 58737904 510127719 429037377 662913065 284852554 690612866 621843774 830557165 860345100 995499495 318142218 439339596 458924106 858995607 50604813 864830609 455391421 815130178 364271902 517279974 494702956 567640760 816468094 825035198 923577545 936416753 196844506 582322819 890734536 959175238 314102691 798806725 741828216 771688229 259913649 300313806 397496244 426322949 176572882 426552062 137895364 631156070 824225507 964724139 450057734 888832476 964161856 990293688 998017344 999419620 903325983 955146259 499548438 717328339 503763873 724023823 194114728 952156268 915776401 960630887 404144420 622141185 367429314 907916938 499995945 961097573 858780411 992853998 16324750 715221096 760605191 946856256 63301722 746085257 148293328 819260790 633120605 851013170 531274551 770569433 313943588 981773320 413436028 694031888 671677319 792355473 760137805 948316625 687743934 931182146 783802698 941671464 872448268 876068580 46361600 120258726 96886644 864977314 297069336 723093344 857804397 901278527 513838422 860778031 473636214 534509812 950376942 950413023 769900689 899706391 717330096 944907448 5073991 265252429 756937256 886028789 804350149 844697100 715016591 857164820 142191937 503299391 565629799 916554024 580684866 957109439 198485136 829662092 953271451 987241629 899242857 956609963 478788650 593923755 644791746 919333955 377250754 664144465 197812816 395260759 349292818 638800135 578514543 906538863 275832396 833368409 636836097 656749876 181812362 769494129 237722066 649289386 57669508 719493857 259400916 908861218 684473410 927775009 435690715 601795209 173943942 671162623 164866688 505446972 563539951 764095717 222030393 852906460 700278306 944334483 488257410 626228977 111714599 212419672 133804851 783782660 885113175 939316310 765584481 951263195 714054061 897262009 347566003 760094582 486571358 826791366 128693306 703194826 496365519 536899809 989911943 997888603 470252198 474900871 336150237 905600896 540501049 721391232 873359216 944197476 751120934 917998949 544045344 992186096 467880999 963742141 555135866 907070710 897819961 967853274 142610270 720491670 941521456 950846339 16361339 411242143 421983771 515406126 70366540 587059044 925940191 957626971 472747668 603869360 761740917 875879389 615539329 910669909 395130164 560184130 357330304 721101755 437136341 495695563 419924847 617560395 571632418 586290499 961434480 993840762 202098286 895670670 905816834 936594035 479510577 538503722 211002421 845321315 979103274 983164190 402062841 752768880 488047124 972568912 521114118 627571656 985459153 989079284 218595053 527778041 673106487 847508716 791350349 854434142 540619206 974394510 769600843 873739730 105138395 534317860 995212627 999940469 418819872 816614843 579750284 605658753 998726551 999077989 337485602 608116841 754053480 823253708 795936231 836849532 985959696 987955330 856591890 902385933 248242490 363475683 778542250 819900555 503467569 726496237 693712269 861829052 814541797 921869505 724051260 759187024 843977632 882297349 779231579 980831629 734967937 795776903 473513494 897346812 333920216 357992853 377794192 451606458 50752594 896474307 602935023 744926643 256779983 553748717 918751924 985428319 977822987 984105321 380849432 437623950 634074439 657497197 682442968 977301628 490810089 659809169 692042377 966729952 797028731 981921756 363873501 394645006 467443373 497253055 129626263 542942951 140075935 385672231 831448113 908672747 104571881 755090549 921756557 951473863 978886274 981437439 877778988 972753983 110482443 931220184 239102289 245019964 585476103 918253792 826141004 832162822 556129255 900666289 467767899 942192209 962515670 984183610 884003071 984053903 528160323 795652544 90230287 179422841 318832209 888876248 120656115 894478024 708713466 765900771 623435956 874391031 472081960 555172463 738441214 941517453 384010604 524389973 310186215 871647130 162517954 246293108 795310731 824287758 583058742 787446700 341406404 552260699 702800140 931960388 312516860 494838563 486502447 910486040 524885203 960896600 823341232 917355339 644420713 657186409 111784391 409024370 300124606 644712983 592565857 757997717 196776763 660578515 629100947 966077881 352137644 408849263 398755635 898119381 796166090 879282270 509592191 969897736 638964391 821456830 700435675 875775845 679168350 788817749 692199355 879298902 761353412 962687163 957019167 964381312 919567123 950540178 404035345 499159249 549109821 756566852 268510329 522501046 438496266 793337047 568524539 591931750 892598024 930247590 626824593 950516201 635211108 976598111 737054869 923828066 67946621 994838026 854742818 872323504 340365156 992754178 335327357 498744162 21897130 703111146 532008818 888534231 43743661 933780508 462268264 789761978 737578695 752124555 378899921 904257169 802100947 929152857 392962040 505009686 595765811 671803617 904410774 954250782 95550673 532577322 536743169 985028038 451496167 772230403 944128753 994399211 330541452 604734661 486471627 638370552 684526831 863045044 318518992 335985802 711085931 964767140 680311921 870462753 735587200 945343784 734434435 737518218 285574974 564277439 888441478 943667514 142534490 528510823 89014269 622367886 278330220 539927713 396278636 801696491 706039967 877690929 182204322 214037516 926296917 978510625 226917256 493401587 731845314 914424254 85032106 226708735 614532706 706549570 285096504 897587336 253438214 316532148 750113587 968793001 54425374 343405390 916633770 993138164 887334450 961524314 756834702 835734641 931727443 945647730 677754368 894130719 878200325 918476878 174788425 552787111 897960427 962902163 807153282 851392014 886588738 956348158 383289053 886123123 739455097 855668353 577270285 651568750 40281593 758757774 388373202 578105824 819181541 972054340 793557145 971787322 406909198 900680630 329911255 418199677 885919934 922400843 802027689 848938040 262036706 416383866 208260667 443062902 245567879 814187774 581729236 705679082 403528872 994740420 359965291 904298732 452890293 454201173 340153872 680576864 589719590 670311913 490070311 593978290 410572125 810566852 100867922 485655908 261989015 622216438 333239831 536144399 750828460 971001062 827429265 876646856 979425777 993773736 146001942 352120856 893784416 977850597 534473195 628234378 318248752 796207848 428919958 723905581 497703301 741334461 455056102 759883534 238715960 703757009 295875384 698578937 55635095 426790465 387378056 492625304 444281451 743526958 842698997 971754774 118138512 125694453 82606492 853202110 214326718 737754193 82315657 600776240 851755958 863832225 303400088 386605237 43277891 955787194 949741572 972782308 414125235 597895292 138983410 860877241 175319599 919131846 506461373 816762501 601704370 740355353 449006256 822025844 165033520 705638139 230266446 867742106 433035725 953424982 304131577 882830558 762323397 994080502 512915393 523200309 341891695 563169236 879195269 902189870 690833243 880600853 130244513 294964535 231996241 361955838 919192864 939184729 589410718 997524854 434253302 729466035 448341176 861781908 829467986 992682067 340906974 781815173 376972189 767640355 702106261 996352335 378109108 936691607 548536243 643065847 427050916 457266573 258963983 995377098 481890736 538573819 531054802 917025688 301613665 380509354 279851507 316296607 634367364 665064211 198002441 585131842 692083999 779918501 923542925 936524090 899353706 997682040 614237728 803332390 66544087 905831028 866616877 907564692 548174576 724857328 364308847 579171806 347449341 506424753 600786975 681060409 335465885 976215096 558483075 654237881 635791149 891489605 942778407 961633530 959110609 965574473 911334093 972392985 850577088 904907447 448020164 768120674 347991847 844361772 258824766 483348375 670570152 993288253 891308260 996345825 984497031 989151926 96846474 540898466 16524959 792502307 153373652 342089309 710694906 878800970 977643855 990689237 140541087 791734004 752388014 894927878 470616788 659845429 651266079 932657452 445380513 493807828 638940299 906805572 834690355 926739580 414404119 863248452 154357146 923111244 671896839 874220763 839464757 843573346 745823696 941732334 892110926 926621842 400641362 561323784 552416204 621792088 286937935 877296918 872894503 908172147 542861861 714260227 854724431 962979866 468349386 870648334 775196925 967058243 645578648 721547327 355162836 536425355 582171307 647865879 519685162 620469413 35699491 288846993 251674158 656233558 468954572 588396939 666824823 943285135 17216370 134890582 36377110 666050027 465700324 685150893 22171381 942099565 147218739 365118594 772229329 899219033 893422886 911446780 166443524 670864145 897720666 985332343 895196008 996010931 199833291 740378255 611637627 914284678 418017614 991797441 9475043 730854890 197915158 290479943 450367590 485899279 860924634 878107947 295003329 914136142 801558302 906281449 242418755 845958005 572767790 648237149 780990086 969374150 628086520 948706853 628986612 714508061 169841741 602546648 452448463 800769678 136178453 824495446 958061056 985930190 119044996 314869346 969228307 971647648 595775279 764467817 322212924 652453890 151581231 456904246 737416246 968409962 897232623 915411515 407423725 428746818 994978936 997770065 49217251 506948522 227441098 411549878 532057945 801419253 4276445 250561005 177397425 385095139 454382271 594226960 820562801 858433711 594415052 868633602 545261058 700303282 62290177 407061180 444051514 573671135 323648375 643603841 270568685 667535057 179225751 751270557 468153920 706549857 963524125 968138017 31836792 867939240 998442190 999847127 156899331 641354117 66351566 941596877 795315512 961951135 622040561 722167394 713973240 970940094 373249941 798156336 853307145 913382139 981937212 982648074 475114009 656993502 322520650 340777099 175101285 230506771 837658209 846563280 977585690 992914463 291883434 882052445 331639376 701162074 257882782 956770983 143942985 595068134 303401407 521382193 523940722 722471200 77117793 493010522 191395787 716774464 154182799 610290466 489391964 628110454 719163029 991728131 721633473 751528410 446368385 766005422 389290956 467891815 149211479 939766157 771487468 923019161 88874324 485826635 135668821 151505501 368976757 477410602 132615492 593093361 92307749 721755615 894274185 988728268 930848782 952547337 304172273 801384913 888018637 907867766 896365701 922556470 903704536 947663286 426643156 907353786 270699043 866096628 856583878 965966530 828634148 933445838 986853585 998568462 68137167 877363730 586513095 856477523 354821557 665580734 576661847 758447237 886744068 901436245 203315524 498364772 833875326 966435803 102248459 849514152 284576074 717777084 146917912 965503846 461791882 811923690 963439254 998042632 600947713 803116233 52873530 495774411 480128506 671010460 358831668 786056507 305064719 902485664 330774317 890919795 172122390 740754297 993210807 999606806 766858281 978967343 127054680 483494766 818354937 886577840 741950262 790309772 779382305 954876892 646084281 681516209 17866950 621655386 790579382 926364251 726613214 892573404 883477498 914115162 719527089 892714184 548289656 899557678 264936688 767097230 699293072 741465104 179522586 183914390 443824313 761166014 567194771 779939634 153499713 194833431 947816074 961369984 838581366 977662381 288384701 634397164 906418766 918096544 518858902 826675302 156452310 464116227 91312573 397365246 441332516 720355087 260402934 599337567 806572488 958721056 571926996 990188261 634094555 666525077 547056363 722232990 99506504 799689328 985052100 990911762 980099539 989894324 920068976 996349210 637496934 841537552 828857621 956567511 351270431 721217717 421136743 432134569 366665746 999472040 888160625 944275740 784812151 801840295 485054146 598800765 645634832 840375928 461339012 893909686 292500451 569878301 501829928 880527931 566759283 716697744 278924333 281674863 281561564 853095255 380704869 491537979 700977722 811276517 799793972 972420318 254878889 950916111 339694207 476688296 826575178 942802828 69393707 677543911 363588960 563737756 456392108 974489996 428090156 489113803 749149860 870320940 658201077 760266624 711681465 893030374 527459215 896522526 193688390 448940319 955654086 996962801 702408155 786330730 165257945 166275609 722948026 955543120 598869507 669198700 118864778 526392301 410891225 949847399 702179944 794125698 695940027 980845484 822179195 918736826 977672242 991702294 72861190 616656129 706795043 742366595 15060696 576706186 170147506 457126554 716516721 956658331 564019857 570967841 263759153 567273318 107992580 620022500 940656858 997951428 750517670 922916063 769371461 950489475 980032361 989495326 695756037 940477218 73639906 588191891 485362469 925648808 483057125 784729540 445321925 900257420 921500252 969712896 179759051 719414618 177211424 760019188 583110664 741189870 334547792 962269148 519210682 529314968 475711267 690353867 569848107 794374710 874429178 956693745 381293017 417363458 395115944 891363054 439737275 980141252 745998327 944883379 783367135 928707520 751522258 978037070 667095403 895205361 153005793 417911347 649767042 839822764 294537380 922983776 311000645 961830853 499677214 832374194 539840886 713143351 819619110 992129646 738574163 783770831 553382843 728821055 117209067 837493290 742217229 872492203 503942948 864854396 139010267 397356685 732607036 737181465 108531681 260096853 755957165 982748053 80693029 256701193 745303047 996470574 547617229 836209004 639258018 994121732 334504228 425245834 847953625 953659620 277922816 966464369 242984313 339678300 954616527 974266461 231338004 794956974 943246654 995293137 883827154 892565332 870610809 974533881 675931357 957146369 64396732 389634988 901548710 970356921 868240454 954501669 899272229 992921483 200098986 743245467 786301020 967460026 932797244 947096773 900726778 972502128 259309486 712723183 539369232 983076322 27047086 827175124 883764010 999726039 769991149 801570764 451275539 887175424 144954261 636499657 758178561 805215299 8817780 857981119 651994493 867670814 360021483 599431612 784941547 985563328 770358527 808234596 274123963 415601548 553257895 669316396 110059267 390033779 689184167 715162581 27773536 821197506 571758486 621112468 633817824 834845720 908193454 932348226 360919402 398693698 190913724 736022228 895654568 968696467 990344570 993496311 508676231 997346405 200839484 317517866 481896267 621875567 857524206 967780343 236820222 571333025 300139445 631644055 565888627 985282042 268948230 368099714 839471232 941846767 272354413 996430392 811769105 926546370 925870808 997484025 846486449 988401076 260993130 533157558 159379360 863603057 847538824 974438986 814230212 894562399 39131784 307878685 993226385 999685222 655522642 911001496 36235616 935962351 440541150 884439529 605753428 724694113 145194451 578440431 388917453 443500789 871020137 879957069 555140873 613600185 481817765 864698993 296287666 431159249 520710641 743184109 850778527 915172082 33879402 574550645 463444372 602177118 871605322 928483911 229471626 901193888 611955837 635970329 810225199 860907803 338736795 806428026 867874314 880714145 282136970 738382051 594139833 777325235 106974671 347695081 103102503 966009029 732621452 762744125 147526071 154858864 641983213 916165807 960395934 978636924 705080351 790414065 230613174 933984900 844838773 936174386 76046081 90321698 878580640 932256350 796030104 946231597 29343971 162989778 751243133 981618531 786122145 801469312 222989352 671418770 7935213 585659590 547119614 779008088 726833620 755365888 808207804 939463277 367534191 993338756 148401618 240740198 744393341 979323216 716991746 930191844 573818151 800394917 439960419 506560029 421709493 901702240 201114055 720070521 609982613 946113987 640760192 731190276 923720694 965967113 749062791 810704094 67773261 157429413 671207844 960797608 753154763 977680000 16836614 468709898 486629496 553445964 437534272 665571373 491088192 770823084 277648186 575780800 752253259 867785980 198989246 668037231 374625257 915537859 530695798 629787592 42940609 350155693 386401150 577222518 464616315 641746005 92152221 888695622 413390439 844255687 442076722 875950679 894203226 903138642 308695729 416783754 943191561 994051325 102951306 162807068 918575702 960413601 949414743 956994590 924968674 983010406 373084247 743545066 778348310 828877163 948349900 963960687 454414321 696538043 189074605 746138100 207130109 846950488 523166421 684153469 92185051 97282322 512767326 667371961 240576202 841919764 880876243 907400140 812204630 957861661 826573414 836562164 309211461 691687774 715978154 918625499 545629739 641518745 237758862 807339967 325375937 974491111 674069737 955298349 945777046 950758532 711839602 748267420 471812092 735488994 25041042 213480990 714401010 937415957 520629907 741384236 146347477 171826200 336634063 728519375 318755463 754903511 351748943 488403643 958963505 970735414 361564133 426826651 48517755 103580398 271933386 452632800 126739763 872108014 572035317 857927307 483689526 801208556 182578013 513676395 685170971 762356650 247755547 898456703 761396185 918313055 157247585 354905589 995950837 997946097 416869918 823373699 35666140 403548883 115316722 329362895 877356083 911374297 874463859 981280967 794832188 804154754 202279456 746719967 191009969 765379921 800616643 965423236 807133964 960970790 280227902 685644615 451277455 694581992 124830863 330235647 373568862 583744551 749381922 837676380 178084434 942964098 61138477 672035998 210086261 232046636 27486330 346280931 171334875 574895474 353028936 492399615 345621728 898106140 301899486 397753080 123090919 915220567 994264820 998624552 678536998 921851385 947109440 983866271 68388791 763913488 856712012 997628421 168024171 508388386 672194319 940406838 515519072 568249933 323820830 508199615 389281134 587079007 915707820 977029813 666014735 994551357 633717052 675161879 751943732 913775988 816734718 862761772 199355618 703642563 948569713 959358354 575861132 847493995 615040469 771093432 543697777 787110045 942762508 987982262 633742634 778921077 690778283 697490267 108521711 555175140 858203117 970091836 202401674 771046138 976843553 985470682 876344333 999648797 490929059 951500128 296025928 895435528 291821268 920555462 269274569 611524316 24301252 39889403 240991075 251226773 724243791 731890626 915857364 937175195 255367814 810108328 883577999 928347614 952483559 999416469 550911402 843619245 547632121 837730171 111654298 769650747 455945971 624782438 653737510 880024808 866337896 959536754 35343402 691671979 711387248 802654585 97355763 708193972 481128042 502349838 657017305 716350915 966228328 970886505 429135104 741677852 985939745 999247434 400442824 787717876 991312703 998846898 467349548 848734076 168554639 419802215 306422231 986628832 199545495 410126507 91889293 940028663 249322405 960848778 4219975 95546310 213703311 484923970 198006576 250321992 141078533 740270615 472710390 987029435 843603365 915598847 327880705 871064435 813527734 818153054 852490322 979678926 936241416 993759701 593370115 624826988 654235890 845118523 48237638 151073655 111710233 357680295 770470672 810371244 56540179 206908002 672653895 933793017 791450988 944581820 430371863 866221320 121387412 823920519 970574645 985802556 238723875 373118305 236124547 384812537 816470682 860903438 27426670 665654543 982353387 989985333 300781672 786956019 95785923 500409738 653776490 861157641 816252231 992404144 654280099 662584723 733010117 740591217 306367701 751324243 704238146 886971307 804306520 806241079 371771139 638454167 553114993 856378447 703848733 750849208 865976393 942244376 796857923 927447453 141919536 609066892 304369482 550019840 709144121 775187708 485220530 940499819 695587408 773088454 375904202 847682487 258035047 818113739 605733674 834263240 378069552 562518735 312919580 447852054 118083635 494266590 514762167 651590612 462801064 654157115 688062521 833015599 984486282 999223838 525396665 947888956 45649978 237292704 321012749 423139061 397209851 845100655 791005592 896870871 880579214 984644840 166075470 808478181 812512060 990686698 789264190 914199413 115970386 852831691 941475570 962510428 582775074 934191648 650494399 675114260 367149568 546922522 805216794 893047010 869963558 890676693 232351404 758379906 377173959 508313104 101846198 517533621 146672106 898818050 281495300 740196458 790583398 960536953 657866824 783957594 497853254 913287000 482528509 768352591 778636195 895941994 282382145 460327659 321411467 505979473 421941217 774988541 151869631 790983023 403541673 886293912 11929801 57742271 568420241 673931312 440706604 776597102 939593565 954116636 792894921 856706255 910480704 929761638 336011613 767480728 149612046 287967738 423059435 602060236 467173141 637192852 839713598 870850570 988964811 992821964 692227648 836074821 726092062 866143512 189853330 571638020 464530431 984100212 247006959 476341300 959244334 963925960 697052476 918414181 638940232 799051441 562664880 979961476 691864781 874303052 396832269 770245270 739685662 779824755 795485830 837101056 760640201 761049240 142706408 653844115 718468739 911851935 153783676 444348840 779884427 992024295 559690882 800389403 417428123 766799950 841392489 957088568 332899277 573336161 670232176 885300492 421869731 572515065 598136644 804362390 503578058 569207633 923139752 931229775 16777350 411414633 46662165 761457577 754822374 997960715 69028811 900388552 547662856 646512906 116021682 987562672 374955108 494161520 13688865 545596919 543835640 849371261 227671509 878579011 242744636 481884737 15351529 294021625 444269682 570360029 245574008 935375051 882318960 970187726 82041875 293511463 187766680 851997955 714703887 915691592 797507411 834983193 239574778 479259276 519916642 628430048 43385952 719580514 749194718 986118220 763991193 891965548 155809206 277226553 196371871 590695223 516868263 766232376 264076793 888364702 188349159 650838938 87037167 692893756 843616175 899655464 741812232 854852634 691771525 765413952 272578449 636724978 610199992 617961044 374087998 810376992 673953992 969047139 583345794 767379411 83179879 902370340 176847000 450575265 712117804 985453853 710302690 807426410 94674719 656614173 791290355 948680869 890480432 912178664 880429648 972264388 60881459 629449908 643117364 655324075 908642944 958609210 276532440 885656278 185050011 559243360 529123288 911938626 784696375 845513201 268367948 878687287 695270015 799509500 216103770 430762168 38776100 540525382 117615569 661817481 501773966 509273601 297483856 731190393 895126283 910720224 294757991 769793372 746947879 909589861 897060532 920693364 110997809 339679257 839045438 885007611 784952597 973652795 827268542 951024541 927004483 935325396 707307462 973819390 666854277 960762681 860537314 864423678 196295683 607955354 459186595 626283663 69614368 261129126 994477221 995813719 134252704 976895180 199020074 446014282 96219502 639664606 960704270 985087800 347625307 734656985 181572362 861774292 179059122 294811851 385117645 573419726 576526939 844463203 164486488 457910952 862062638 874445150 36220752 459223190 15947359 441605253 380802509 420135036 422075882 603593951 733303726 844020446 863483771 994366170 793097164 985953175 78154079 524080859 282175139 396438479 874802046 978148091 968530031 998726980 573847067 834718805 456214448 564813173 603029884 716634697 347918904 509782581 275081057 686112066 960251473 994966862 32193897 536639605 212757778 520192413 456694526 619989042 14578581 63846683 129345669 488482038 990832275 991294745 200131345 256774592 918759683 934345628 878445430 982116976 16960588 252175620 210718656 935169821 213216232 891512430 869090748 989389399 391251550 756851457 97862996 834058256 199069826 782118682 196190557 888464115 749790183 808734253 141539717 368191184 252603485 822235410 567180507 732784379 762349203 904264763 611485998 722008602 413563150 738104016 528253130 751489704 889895537 908447406 626643645 631750109 889931026 896668665 631334968 783582657 853958842 965256132 889272327 972988891 777283847 965606458 132407385 861144534 585213693 748132047 584541030 976750953 150694098 421046540 235731137 854270709 35216292 290335203 89821258 138603591 830190209 919527576 254869464 871156862 140455798 453868180 386085036 919784067 32382744 218073740 818895134 853618417 241136859 435331904 316934808 737286425 163912950 880429355 510536684 732087163 972605231 998257082 148266036 572670797 670805205 919015478 309279262 991504527 707061490 893374406 899696457 992984271 754818216 839154884 256184487 460424648 760569210 873435381 757088079 762902249 330574864 981961169 407139682 495468170 3026293 244257462 196716647 778043661 857052588 909284016 521622807 743910239 248217552 809749798 380106644 555768321 259211811 932069007 382680005 541544370 939304973 993110342 880780466 924452988 274082012 477890336 839763923 942076979 888418651 976132247 464990674 863394967 926000184 970405434 158361996 516995106 811970453 912619433 830498028 947022986 751799823 767109797 202302608 486153248 741093608 760628313 255112084 687129166 182913585 356529194 671458303 720386135 724831188 810119761 908223293 972356168 315210623 819583505 783284464 935862733 764077922 836147894 322715749 344375243 731559188 850865362 698759593 828886844 19813783 98663140 572584811 871528134 283808712 955296154 425539558 839659903 367384777 786450642 127220541 594947815 250902829 296359365 447196807 846412865 917402026 977890096 159482654 464619900 762041979 768069299 117666028 512130259 937467103 973773863 508327029 749032300 673412082 725415056 983917958 990729771 114449349 603661694 954421097 973092829 308531483 482581613 28166332 861927053 338290147 452515372 603519820 935532525 979833364 984680592 878294456 997557093 478739005 975101291 687232532 999425947 170550348 721772319 336998055 868465343 204654552 358094673 514174178 771455492 720246936 960956456 726433065 877840108 376055835 542910823 778027668 864329084 753612942 952199633 355758293 884339646 381637730 538468125 770425269 815601074 130784236 418465654 640680367 744082226 611137781 922185450 821848837 860889333 232250139 984188330 113684308 438606994 206552955 443145016 44818410 715873303 585147070 691720247 521651734 627684523 280083795 994092827 691396086 706424839 656502463 748220332 20557548 262292981 701472797 754459190 389158419 872293204 409728726 520291246 598495204 650396160 955256211 990669077 270658430 887183764 831966332 900552608 497397285 789098231 362608223 985053638 996774452 998710295 768413892 915081425 638321460 797063167 933399917 993432606 748238376 990513266 979535824 996377523 837599738 881355534 740206239 752788130 122630369 653827104 678737328 857596391 17243732 88089449 245988358 764738991 353722792 809262957 702668833 719751429 230072858 945552444 154789372 166976511 670537402 678130210 443684951 804352214 683990038 925505296 343073144 382239051 213747888 728359619 37743889 716127414 282831320 530446374 51417823 716578202 968789412 976700199 187979132 272419321 186534473 684180885 260108317 873210290 228091066 767380078 560146737 696317516 523173652 782188348 579280769 682277562 788370144 906203930 374298573 857972161 883622995 951053944 386446502 739823106 596757898 836526395 20209084 818444598 663531469 753308656 628686869 842366491 768446544 958669920 947335821 977297151 841088986 954656815 633190118 889208301 328706681 417855376 180218870 753474019 877856867 909606906 460194670 892999040 512526425 936731397 855119172 952881138 339467474 752387853 855720190 978595703 10991787 379895337 955871197 968850679 506881070 741114924 639167840 778404354 498564060 874417263 547434729 755526474 118016760 434419146 176172886 534985123 906258424 969485142 78126640 379227943 963523087 981705950 164218528 555031691 463088583 668583368 159662108 553505660 696315884 869734552 380465008 493750847 738216449 782376310 155725707 161543582 678647513 874694512 418697448 533221328 170985414 834679326 469005816 554000344 39930490 319555176 157979009 841466516 284699758 404347791 579286134 737321100 323828068 751812574 131869938 239853740 202792491 804437260 928936825 945302517 48206839 408754054 1203836 159787035 250310845 437742163 360919786 851104170 870713775 997532550 835101760 959470184 736333407 999942073 651990945 746112527 813161476 963384427 753799780 877402263 183194594 734291492 439649806 468032839 815882189 872666286 204074946 427755152 607811905 697561380 956060177 996975061 7241774 623960972 714462145 741830982 157382427 266752314 686518099 984751869 848870021 880359199 140713004 685680398 636365681 752656023 563405717 764450827 14713755 271850042 438134695 578757181 641750464 739542553 798119902 850351131 253132712 485887608 224901808 652745508 545986956 976311726 182638103 542602742 246670795 424839223 801132698 844649112 641741 753851014 300377609 663568428 922543321 996491964 889320024 992920654 648030646 903114299 452012158 562349360 717275915 816513424 264268122 311001437 441489417 513002996 395978697 580173207 939500017 973304377 858181379 960957335 897274983 945079088 528991685 713391158 387595071 440525757 46777347 50064800 565867766 691919021 554400828 645036524 3386630 625964716 592173347 892592036 303630043 403905616 110209804 113893733 647492364 920908857 225342457 981653743 385056343 574205032 16930166 862293073 170257851 384479763 43674290 509405680 762412867 975714564 372201740 762015146 361961574 840551781 698469877 714332207 541357873 765497043 980815974 981762306 624242231 996244927 930918759 932949187 349349092 511281041 14053767 515969962 675028936 767984649 559595281 650176709 477896204 873952889 602239204 717799386 728970514 740697538 654681219 848715790 479509552 983677947 626668652 915605613 307458487 496780377 659421968 708302338 4265311 141531732 263196601 702026673 204619276 773240073 874137344 879492831 457437433 713610076 972407183 985164286 966876171 994973072 368754306 787168043 907673301 973025384 209870277 345563281 781070865 878830827 52093588 852220394 558597813 680926539 681501513 960972876 444888676 743616448 121220043 302068050 909025221 929387933 935916007 988137600 844266253 905358174 938953634 967173018 621705980 706119905 23952857 771519281 675036930 995012220 214654394 836014752 694266908 730133930 431547542 572873545 44723718 489065237 403417676 560621291 855121813 966483854 959069443 983826357 339756647 655155287 893552008 965103686 615437285 845968744 470094388 483872947 539343838 553191164 69233024 770543409 967684353 987034213 218975742 683355999 235096009 906747334 380721147 958436153 257910230 739640333 688257213 855908496 955502587 965386959 400701632 676639460 26879442 252950869 403523595 675489734 494052409 693312929 969598337 987698795 587204551 627428191 453534406 993277952 732750762 815784169 474182670 898185267 666714269 789522646 493237167 936594523 218658631 375075596 914075579 946092387 796107510 937569786 969820317 976199497 31075412 917255734 223543990 936894107 447043203 789436881 997263632 997604468 855460698 890706790 505613574 723344198 245044234 645958422 150268509 280599276 869177462 984803759 601538077 775410630 60796257 909374836 111872281 524643622 289074755 464916600 4057431 525115341 451519875 836230455 738844294 744959903 930010051 968519021 435542745 935917988 541390596 853276327 33505706 592175923 944713107 963706721 586435432 663614222 399432766 922744963 5393914 903713073 353522612 945505856 407736016 433143733 371660909 664823313 992640722 995722524 275169077 799177837 135799633 226907703 67328612 314164377 906928698 923420643 906828975 997233955 745773718 877357723 387426342 458070237 910602986 926664291 710817350 769516719 543216220 729695059 525784163 769482688 423332462 521462946 298828033 761362660 824098292 964786545 717014608 817585711 772369603 991060521 168083261 730989650 840814953 885995661 710368938 910912701 225268147 808348140 159940122 691986124 887509867 925298743 494800451 826833239 611219815 829471454 505053438 558014806 644857027 894272280 916198222 972679691 562842151 643798079 288067232 713946735 394938904 612132022 821969632 959883290 242626259 929658900 130768966 225032152 611198182 774984213 689054415 757744422 121696534 771823930 176159723 723472108 98815476 117089978 14581354 850068261 491545862 739674331 235448581 680519919 623493290 724585045 305829028 689305768 618895140 856131695 561726240 913085872 143733818 600536261 674989890 864456440 734660414 835849486 484648712 907073782 713216062 835262970 981465312 985306771 194676729 963647266 808449979 974246315 119667528 503865258 51597075 984105416 601230094 967995118 271618457 994567097 988836401 995429626 720217326 909768653 779519107 884863597 214508692 280111518 52069801 71290399 879980233 928120284 309308962 607149752 678932705 723633134 766963389 825666247 807517871 825795574 52840144 490954259 847161302 981207111 879935049 900735090 59883891 769157792 608458220 623406522 81845550 580885931 784306130 900441452 849335440 970304558 151549854 469487476 518274513 710897660 521266675 938194706 981112427 981886229 360774195 508305178 744894295 824290130 9129453 62295542 28089735 655813741 518962519 926731939 780160274 792644405 902239113 969841363 333119655 550101718 611381738 870664910 815222950 841304238 977467778 999811240 972580755 974457638 295677612 527917681 955839108 962219514 121671283 983790280 381082012 422031457 339848735 385909721 478920002 878970904 594792098 672082580 175707393 570504450 693590433 865570108 45722682 841950256 132834118 620455346 183065698 869261529 718942178 885749555 485079223 625324404 963788632 988318597 954278981 988625294 86518594 982512159 955661508 956257916 168516941 914812899 625124603 772676251 405419158 924282479 457774215 860919467 762350058 914866703 430859288 865012466 974504028 993468099 456544457 685689112 866823401 980766771 979156010 983754858 43887506 83543806 608072110 730346031 985736441 996777022 465250926 915503779 143966361 257048278 121734089 699289275 695151841 749137353 936298491 990494599 774553327 841977864 507660233 950886385 202377944 372552768 321241544 435797123 138768935 439243954 54580160 252000321 908143019 987211505 54545876 847774626 79234123 250279371 697522923 981344063 414960693 918012640 506386703 658702920 760564337 764801304 95680490 833101751 815281819 934903833 989628390 999769153 239781508 949829152 568825926 852309933 722279565 829968759 588885271 593375493 836747036 940168944 5760271 906918767 24473799 654583359 212802886 564011685 345069074 579139524 115082210 387006891 954414280 956901285 325064831 761503928 785347921 982072272 3147548 310097815 911900325 931488294 401470692 780686418 308068146 436868306 816408269 870488724 346193170 400615980 444680143 545040411 746568795 791189909 811035476 824102473 952824439 954939578 558085888 997047708 47149017 933576543 252067566 775313320 261323892 695732937 517401390 652061224 850104280 883661975 92654576 790635586 309314464 615614828 182396852 600815640 925798645 994882884 258209809 721553745 258476779 825201504 363573782 993302876 948603778 955281867 731509173 840060985 358387660 591485339 247287439 534849848 119425896 246343771 849460703 989987523 120269310 604428121 675618940 743051625 601219995 690674669 720365503 802336444 924504531 984896055 662439359 712629263 667066008 952803330 719563348 911420106 447576030 786804060 260936056 736728803 24679741 48404190 313097089 541097145 362695603 818923861 749425399 837663170 1405198 403307046 984941904 992028302 557339035 691216714 223170067 743532005 213453606 729327030 51831436 130349134 267828480 616540848 820499071 946404998 897742308 912254381 105901514 467660730 884903816 910602112 844930957 931971777 196216688 269276725 724684133 765675323 648250685 649187059 808591684 970035240 439621961 833929917 195325828 792291267 795846544 992537893 194793854 208542938 393524992 481405405 320298006 348722618 877428602 922726406 874916581 895505352 900438326 982842331 928093432 983287455 884366444 912393044 126757252 213772064 743440263 840204169 289942157 411376700 835569118 848865573 978272224 994705851 428806006 752974922 197947200 746932223 409019236 830005044 815411750 979140784 395582987 903112878 899676522 989323328 786456402 961985067 390265268 735363164 123270853 641146096 158306730 241899189 923747683 942733643 667446967 927655128 284194037 447441302 381362832 862916263 218480215 856211722 327637960 914196892 448594633 613408785 406449972 774605619 142700965 412626509 408607934 964309699 360927808 551400388 459448925 713127496 988833251 992299033 532989224 745707861 521755052 745421879 558118472 606056223 599590478 698953144 342324280 403433936 881696369 918760141 22869715 256468196 382568366 666751206 112965390 513410602 665502430 916267500 537411600 659067160 76002696 429537637 391882366 898134942 406282883 515875786 620325242 957928827 801095008 888710505 65977941 82907071 97722359 523762607 326575817 635901171 949928619 962420314 573921367 857620527 813088499 856905459 358151228 491961845 913263244 960228288 336692250 494272758 779274881 897941297 819142746 864698931 21339140 548070206 602162726 736671848 627092069 988748906 874288493 899908968 852378802 867359924 726523375 792926249 242397690 335611262 415591160 638581534 884594206 972622157 846687168 858407847 194103536 930031493 627531431 848683266 733973259 870913179 243925708 951104410 213766179 230649430 487064560 871262467 952244287 982569720 491816870 798544345 880419601 888054786 748302311 811352283 707824732 855297793 404082229 910881938 594306986 699543100 285450796 483405867 149480426 289597190 431435099 901966753 519223917 733612664 297506184 634607485 871095387 967733429 509926285 902559975 969198115 987496850 494228018 662409076 861607518 972391664 603713243 632362145 24922017 131242752 134323503 293854566 208494003 780025212 751577105 821797273 700353048 707590489 738758543 942513021 468637517 865122537 44781523 773729553 769567980 851404002 347607743 570577132 944476021 993218052 806221487 985382693 540093911 944155837 495090988 532402765 104504283 176438975 78383327 957850446 519298103 833250142 894968494 976121530 3083707 222703055 704947810 836303673 624556427 794752999 446465790 541693490 358614056 515905053 663103892 698723543 835406211 870153069 564363358 816338281 786221598 904275153 783744012 818630897 847192038 868937546 548205099 655745047 159237022 775047729 167417162 855706684 941734630 982624918 729236742 964544673 386597772 587843105 584670709 902243102 37106195 119946258 892419664 960207288 616128881 956000188 807857050 953395247 411177409 858526786 642841713 643821184 748062667 780006724 503955308 667524433 981417215 984022058 628148921 715925774 332839642 429747927 138017368 314194107 781172270 946494469 396808529 723535668 112995238 759096533 767115972 958667769 617159893 916235987 164319136 477191788 231694044 594821421 70581410 171788251 51607560 254919533 530126513 837952388 133601256 501199189 901769620 926845282 785613268 829721005 804322135 922510868 931507683 980315532 448235412 583207535 902080984 982572310 897507182 961240645 550356363 670237163 715472656 956214457 261857731 748976512 92075028 346302952 16752961 178350376 855543292 880373598 235885496 525502852 453195336 848552781 223023344 380370000 980504753 986649394 882514432 965391906 578661952 771261373 749151413 946451157 33578710 444862528 247515743 977627125 593340329 967694086 808566786 835788920 501589980 650087476 225998863 733341607 250857908 505847409 596793099 637187338 727214391 943387767 182852370 522536065 21613538 786118701 66091455 469756406 93785663 368096186 563708515 821058777 17461410 770941072 532913538 911462158 793935021 964790064 464117339 850764033 693975572 698571657 83018639 118572579 247425824 887595761 868865411 870620948 951783585 993490558 876700364 933372974 231799933 722342969 826492396 931823537 64022138 948404212 990160666 996889646 75972020 387010664 59908694 184354873 204731677 522144799 208207240 375184971 381550399 511421788 520306757 608691976 194520533 382902135 462472165 657873856 350368286 870641002 566385107 597237836 377933815 957367806 753218411 786134595 319595737 849090040 676024397 818397972 10236754 867575937 512226491 706504697 917934723 948638268 239661458 435164139 338599368 518007755 80989778 166097850 211821699 408465204 214836402 643175557 828111070 928131342 808529770 949801495 775039367 982403782 982971909 999670957 29369955 853520430 11248117 679849537 58407134 393227132 390359776 919172024 545114900 788346266 727383493 758987010 344846550 425505810 23982255 992348594 263415479 905656475 435027349 521131468 827565468 902633326 584057951 746265738 309426683 734988563 168223273 704072067 23739581 457004088 95798582 263810218 740496730 779193396 922057455 970986267 935430784 961709009 650692923 977040683 60255934 794004136 63066126 523137860 787491924 985213152 134867946 540655972 886156663 922525906 512995162 989799688 635887769 812422270 800968117 969170146 159225144 705812349 526188128 987623366 763579056 850118046 507095041 991661477 142626943 348548160 136967080 930906291 198155367 337167743 463154417 626741608 803246274 951247161 494974570 730705669 606382116 624043490 739999101 927440251 290588813 325914599 668077896 990149344 183932635 784887360 238785932 331274893 529473931 724029573 525616844 723872905 405917293 898874466 948789680 959402164 895641891 920739218 196246240 556911690 95968476 133669421 669369383 996681548 318013225 954850314 236432395 306864360 471055805 760205472 982695350 982726928 213675734 405607178 848191903 967081249 607441507 723120176 994663831 994831073 51808493 69032643 728586095 871141412 408015876 872885780 803747939 918109552 977065482 996428874 485512566 996758868 256632975 340695221 716953096 949184318 934101189 942211157 682662243 898787246 948109656 957723309 640685967 952633697 687324508 713934680 471988206 494435030 605818334 839253001 764371436 787310311 282849218 362100075 900827232 954662582 458068917 670758843 64392543 922315973 99625960 933137043 171855609 244438150 196630620 209732277 339118534 910590169 148811950 992662149 676291162 703200750 176801222 320596791 201962419 667022421 259357097 657434773 568079117 853283031 159037378 171500624 380608054 643226951 941915948 992266424 609711671 783079091 441843563 893594972 366886623 675123899 668167341 838582888 391892054 776670830 343692018 917043799 427534636 446361215 550377236 740960649 262241848 648734072 206998925 498918333 420154525 513724443 940599171 969832693 245026922 313457215 635308208 898853382 332126259 550204783 483331267 670451485 638177178 681653573 624562564 919193076 761881872 997674668 279661817 900826820 388753637 882800295 337446141 813320722 184491503 278332161 288473904 302273575 354245291 360897088 616616370 651452358 558215179 991935410 906722380 934334821 876428138 955466397 175703829 852757899 873525386 975929500 250949962 398608736 866778543 981321311 570994586 842729799 682121453 913768310 796207929 864899823 744064025 979597308 185102359 700879933 567886868 873725169 834371301 871179680 47542742 680118138 335634858 542510201 67961748 292313408 921870210 980163186 553972156 866535883 219275447 760822514 880352917 931961857 834114865 915667915 199435286 524519568 488562232 869628948 463466635 764666021 258851978 766488889 253050633 616997147 683648603 684575531 663555244 989554928 577090046 637554774 132829722 433124725 352134974 933265174 748691477 922111127 609586473 967664595 582247703 637722974 895777791 915400286 457465694 666971303 739219403 778521129 200135446 602342897 860609845 969967864 347951292 707132040 236036323 977118342 401820355 543815598 857440741 912089913 702770537 884845493 618250249 897702392 741447866 812162688 666077877 978105510 169674487 903156384 13186202 239950369 50175122 776232109 4592784 540570683 918443635 948992801 943873635 972000956 994092988 997215825 505217381 770136824 692571406 896214798 76036111 499223169 92903195 770198308 531117209 869604600 86105301 939328575 970983972 990537341 50666768 816767098 219003638 270916748 601209157 744133310 632857450 810300975 24249044 301442377 829899122 913129689 541528805 867561019 541225968 762742665 992214016 994876110 227601920 324850863 281804868 520636310 913863113 960383065 654687315 980831219 422187383 471646134 313429655 605767951 814892674 907402294 561624889 594247133 235371834 446968530 719569134 834798422 946649341 996200545 212638182 933649549 103419389 310978855 295664806 456171201 537151255 691900430 585018963 812096397 850835640 908336283 230565842 388478360 676052266 753672538 245238939 293905258 605136639 858343535 695141617 872856079 734469938 935990685 90639330 736927675 127489750 278076672 80775424 97048197 527474381 532516965 177090977 568896867 965944744 971300361 219203074 225660134 48588657 945577687 886905805 980581932 837014151 958835212 675276231 797142004 287646249 581055664 541744110 764884275 311929555 743499208 554653996 785692636 31506232 852990236 634928381 636757530 905017728 983182835 260153212 432659836 769958261 883446059 490027681 892122035 234185021 603345393 522446006 576676153 117441171 757631085 932903035 967432177 738736661 824986225 890552593 955235095 517306480 966203380 277693174 959286951 129203427 749781044 25542278 205400694 636404251 945229338 179537320 481223375 13077024 413794107 518056609 570666804 983373129 991652313 181113166 376153976 644964175 899142827 401365673 531896247 795078215 871737941 58764270 68515410 114972032 123032493 470559938 976343426 73504631 425546581 314367926 448479750 644006632 900792551 437363645 999914709 809503862 967183447 16872499 846514467 230590328 302444923 389628446 978872675 141859884 789295977 324040814 436578482 538836478 989439441 132407899 383398513 423975198 670223892 431652017 746750824 423527438 951567114 955948426 998828807 86523758 574543119 668087417 778740261 955540969 993637599 248816733 732365222 698849391 964258070 13537225 439483270 168607376 945321000 978059813 983377061 59833190 571616546 415623631 696313166 636760175 843649343 67538089 567841049 130507767 773417276 943074167 975303654 100868277 684130547 923099716 942186984 405618216 899369746 838365000 964379844 120018516 120400291 181090226 305858495 90725772 429056387 412452186 418070297 447797690 814649194 16942331 27834141 317475088 535495469 946485311 992458744 658350447 757550918 86475452 918508245 661185129 994466834 846899369 935754517 674307005 715796046 653601883 675640932 286458463 760743530 851875806 926374722 723517181 936999001 849122031 958975332 28610118 949382516 736875467 915659120 300453070 861829497 327723451 748629344 794269054 887613211 131739850 587247046 320240113 560444392 165314084 441816803 743123721 828294799 146930109 613626149 253751209 392827523 332567002 773466247 600804691 858907807 934132526 971446328 611971921 670154249 499554452 877345062 923958442 977851309 50665519 828500201 65566036 867827838 64905763 466419767 605106248 756567083 402178542 750333993 982621415 992267304 865523614 994632095 392377170 764944429 378839085 560617884 382469605 793906161 732294630 766960922 900257013 920068356 81750763 901885081 200447373 263336290 936240876 977728368 943214366 949402656 521650287 587368820 823441184 880419950 319550466 530421666 601728581 750799646 455321641 904294481 751860094 937414381 953673359 996299243 147855057 895235585 325490479 872185130 559119438 942496928 86186289 366033372 72246502 592113361 210971752 871296460 480095234 890311688 610908102 985923465 219160041 808620067 322771325 887236643 901392059 951584596 775281969 804192459 236396585 631078802 738338243 815049135 303651570 381519690 870758625 964735105 267087436 970018070 674223755 938703027 709101939 973932327 876453175 923184739 115378382 936584143 293409061 778266621 850462105 974887900 889770238 910052568 601941971 720118589 599535578 694089965 945433985 989254623 490104889 685306867 254487363 451322715 836571007 996330466 326309316 621271096 185281857 289036314 537882974 978598549 142857322 736935092 570065667 854456484 425654917 815444075 746476985 879232757 796263996 860570147 648290232 972181080 477950873 535827656 623889295 781303251 787169468 841845972 650337782 972030873 156615591 794509306 730037071 858070562 930160108 991384300 709112932 891307770 743008334 808182243 409310128 901351991 603414411 770228056 327106321 461119091 558816305 592518461 499616379 785780952 303508889 611431102 788592484 900042888 512570080 741811246 453615015 525797559 511758054 555532989 777338119 861006309 966266872 971348085 28714471 981628498 710139153 854844229 683889395 880829378 332425684 378886927 765565231 907569310 949745163 992401550 5248014 656640455 368119869 525995279 599379755 892220474 919393890 997185704 965090347 979466828 586794890 706644001 560912865 664162212 631070092 903917744 522548963 672211222 966399833 998495833 189526796 497562275 979778480 993685161 868622703 918802823 972959265 979542588 851128342 927450147 100447830 416667686 787508454 973498354 699687037 981088346 165413660 418594698 563084039 771013429 39049425 913908457 947001185 960043896 737256198 745422530 436235226 610786964 246927626 995206125 695119688 871557849 949167560 985610578 851719530 971766102 290255424 728330556 466954644 894503503 825924141 910735469 326857925 353813870 643574614 870211559 703291386 897198882 903224241 987486397 97534930 870923864 502075707 756650153 123287972 467847519 172699911 601219911 772561225 932923896 490983079 860466885 567057694 925936712 642149737 736538715 26556024 79115878 22109337 252482748 990811578 995015740 630452694 738467568 161812743 839360603 907534323 995280585 292006523 520708425 624727362 793799184 913029361 985488634 470115682 472855423 334821923 350444398 799074576 968920623 972590115 998030864 613354132 943455112 446751402 466227473 323053179 684279670 168833171 694781323 801146148 937239298 417116134 561406903 94893382 657006874 316561463 523355170 120827649 154839382 699670218 835422891 23582108 111271532 463542471 970104990 765188208 854696732 490477519 857000676 585754924 658534673 528206089 974549471 636987932 805802454 804737182 837210560 247680554 511521871 418457465 445674778 217237804 658396854 564563450 941621660 996563285 999075542 180162170 466414111 427889175 545148588 954327087 985101555 397653849 758796486 882239846 945259023 993236344 995954729 308887788 453289300 754960077 771745792 701041735 945685076 282554793 441651458 97883163 593628378 143803763 749135429 243357948 839939374 127849107 165607775 823037709 966183572 677332205 725947070 715135141 911090817 287422038 925734570 550428461 659022277 795811798 941979114 598329686 671546987 551125829 869370427 284314254 992996291 915595395 984732175 983186846 999196185 463128705 814056781 215309014 960666770 287804535 454635059 470931688 968552933 416434785 965249115 566683597 969309806 811061185 856642497 389596283 665014977 376643512 455746196 116125545 343833893 701457590 952831766 727420975 836148774 842388610 884903155 896447959 968394289 500824696 704644437 835482063 947048817 541421081 981471244 970004651 983590721 834743550 956670356 305566410 604541839 610136658 865672628 224146267 546075536 523708761 989113403 487013732 753122247 1699393 478240577 546959271 624318363 331607175 543810396 880844900 992419231 236182255 887073978 861366650 983323269 808569388 943801097 112088825 763980719 395407123 475602460 513948077 640228866 103162861 122800632 675005465 800863220 1210161 877039476 59054066 146287732 418157616 776420394 607375701 943225724 300549921 883404202 921998581 979998921 176440372 584961980 562641643 730676293 272385347 742630619 793394805 873816585 925840087 992203455 291825655 330170307 313629481 982838963 584427868 593799425 163650931 345959858 564490365 647896626 563917995 658598024 986550895 992351007 284052806 728809081 738031741 858233403 896901679 983039931 536302241 702481566 806380566 854803560 659507893 838126468 148098128 211412193 115805372 496501782 492543601 872137850 34359088 387771793 468127115 906926136 221654770 699990478 753017925 951683157 877473526 950821230 888868739 895563416 746478568 764786037 241253846 399426160 757727495 952263563 45974617 927002072 487702274 567622746 837824668 892039281 96719589 562584425 138654848 297292081 219300331 337136866 985581995 995950842 839951383 923671425 957043821 984471423 36237468 419825755 908758255 964243489 31195369 727579757 592400572 789637048 606959850 888909382 349797533 486525726 514816175 755289802 775198299 921589070 931674015 991193564 215139408 770778401 230258194 669017101 323688757 665130073 794296656 908583313 902571539 930614189 108686790 460996247 491348985 722822235 829108337 911719815 277193692 327335462 657198340 940753847 95349691 932731211 496262214 800287935 304031533 601802097 214436253 863851462 422579247 722266192 313395645 535900614 683351286 828138933 242423023 655318910 352405605 491056462 724817897 730525081 473639561 732125962 698067802 864987213 176270918 548401495 438605187 936014380 786199300 969366247 120694301 238965202 825984102 986765735 487970317 581009109 645783732 861042717 644551141 817324135 791650750 952307890 708511373 731510426 667201101 711428127 596610954 803139101 509141154 765989912 762234465 797976338 780336097 931301032 261509730 529333574 35459998 71097767 968856527 987277845 743013859 769918796 70152265 414659658 954262791 990301608 410269663 821721949 163938507 331273311 718421307 969487061 682466155 787528059 776523606 918706947 866761237 885664334 860044723 924011539 176689553 346180357 237182002 596306940 888033290 924753889 489620420 937070731 760093886 801088066 523968477 692575182 607399535 845418570 34854773 272106879 300113991 391079495 348178097 818637843 656949652 742795502 270213291 791387136 443782305 838050682 768392456 935019616 675911464 697490127 510360916 977808316 671879266 910025678 978083073 985299634 762944079 947434983 952915628 997935617 995450215 998796346 934703107 999318202 967807746 997414290 888804071 900785936 422456370 812597273 961965806 998219892 412349614 530624011 834391130 885586224 109125823 889112441 931235575 963830114 303476469 900058396 132849490 512663410 604736343 844141045 346948258 373507668 914277523 957176934 69256755 157805531 787884213 807403793 35872766 457299135 178719631 392994152 974704037 991774079 267337460 857713425 626868071 630877569 274312365 365720411 656298513 963854854 505756478 817282015 868840226 924311795 557298503 675429031 847009302 898007918 802804018 868815405 889642949 900834312 351603187 849518388 254675127 450172839 459038245 935212271 831837538 863736075 676340457 885336654 437426286 701403158 467941152 542935736 235611147 470537886 289570151 571111303 144252834 501030060 85081203 155712681 76933691 668629147 281785421 790311669 684196967 825222769 778609205 993794403 644048660 659059250 590596602 773173814 798808315 948024599 841291587 940247071 617858837 831027101 217986887 387822040 910695120 957091980 476633149 861101689 488561304 991763609 863538187 991828447 134092589 953181051 939410852 959668921 978122497 986134228 912528202 980630327 555083934 991909850 420722483 572450805 988137090 989393236 123613363 440010215 382000962 460557566 728548408 834434625 355323879 410042048 651192404 915797465 211374874 991281203 82955055 234702840 47439605 371092280 930731954 944232080 786917973 874014742 784164709 875787827 50399901 721129677 931535614 992605942 583983193 867295539 604268013 714890282 294028851 748879465 408001884 512226677 809993399 820276125 265970626 557368931 635798308 843053019 204189644 857989338 755649990 936186861 814256266 905665557 136585809 749241947 501349346 594464074 282466918 731933942 32075119 325915178 644298438 950660619 976567627 977669852 222743791 824772915 280807814 489520499 222506070 962344340 234354256 304309849 640859621 906506920 69495502 750448075 854850863 893274621 663435616 672611278 293790364 999557194 77360846 168034975 574751129 870316566 950221038 999041823 463411745 561177348 10962961 98325430 614199710 738408598 257160412 572086763 509916745 714678744 315104120 803746470 120659027 404889906 843069815 865360423 451344177 482099421 124086534 730521022 295929425 897488018 284111267 458519759 496962375 820011947 8487331 224489184 973450788 989574458 446196086 835319333 986485249 987068885 485184235 895595645 617665419 640995821 533824650 753017580 904779160 955610846 316212336 575547751 85603028 440944864 736320996 944485271 857163510 964596845 878336906 947378645 751770612 976866959 170049165 195203207 866440929 977128098 706072771 733925080 980853287 998650062 285289497 349168048 738386923 859160440 548229975 747984287 239223001 976250022 921719043 933924955 228903337 338728273 342882055 503078484 860542936 871167599 181276861 284048368 484820730 832543132 580739567 910628268 900906717 915163427 479583137 712307880 537912946 700048345 178445967 648935512 528164699 974552463 147259649 815694462 180548439 960933168 493648499 720052427 364732651 829861697 573541828 640828354 647428887 879299048 97448331 189167245 724053424 973843544 327242703 415138211 867124126 931019618 524447166 707051999 86943072 324837055 721411006 739705549 860608696 871378525 670987445 819053132 88862422 489210343 987027817 989932440 132704376 929401829 759289697 824689281 98938777 890211091 597642420 711060226 774373753 881649454 321102220 590193396 459154831 520050338 901988112 948522612 818762107 819841300 434726459 839296910 658244823 979450475 958728575 974166875 189108046 799149335 507934629 728391156 305196591 766590198 337596471 984363158 821457377 961479464 364561204 589575245 25186899 250334245 774630195 845323439 443439263 751076410 19723589 96845610 742571156 869143632 780163129 844191876 492747186 673013901 363176219 912030249 414215025 708453032 75348043 941773380 231535567 693603167 564677249 694629925 829287301 927964770 161720797 995490941 471668181 789389120 987588418 996473642 595108955 840217728 467456944 794873094 357950677 527337981 43094240 464040193 232643571 624448435 332842723 902247372 607518286 657314205 377208966 793440052 95614297 985503566 854947972 989023829 6163577 592233739 136179299 723921445 708414873 844778640 816454475 849552663 555357182 684375778 239164892 603087143 25159748 705440922 391491266 674038973 930156859 939215538 451797292 909639835 458118203 974240967 819400968 843195372 604258568 633642784 525903696 632409905 651665774 673283504 574802827 992807877 204496110 378447267 769888578 812920196 649268399 683574718 204438060 245210576 373067841 392482654 564914102 649586775 926220073 934741793 438343329 630789723 395454528 658068141 852817444 934556717 583208557 796243382 316234282 768266405 285203408 410767595 788455004 998697592 937963576 955063984 77357436 368022000 546958059 694599038 442347777 965530097 502989971 709137417 222710248 435880159 707088491 859572845 45811289 212463036 343170740 485909026 873604060 928737419 159601189 411260477 564910706 891494955 826493561 861710942 321062463 359375302 463814651 704674241 376929087 755702902 734599990 896134479 507032798 663492935 187371120 416843614 242587534 591459932 255111913 612898254 987327077 993100192 69537189 248128409 384899379 707301419 718835952 959319244 625448601 838035698 91829701 919900510 170860417 786381228 83655476 255232464 933696200 967198732 309580668 622193103 444411430 575399865 955029713 955085286 2815850 867845244 737784637 888901722 464173282 655066111 935755086 975989709 960119080 995549517 840337839 863750201 508627934 817471350 372163486 996710627 545508124 949375501 370091495 602709387 883990261 919536126 197520918 749449112 12246316 386303464 931576545 932293034 135890562 634816553 296097680 649346671 118381397 590455417 407878000 650668605 431304308 933468672 657197785 726830130 613373716 799363715 799070208 936587997 852624635 933806772 242758713 570347884 163697417 730595959 272367088 505697503 616740923 902057352 67794435 268472802 131302934 368032120 806796390 982417239 396797103 978579235 461811951 672658000 548040568 589831775 895886473 913612242 234223140 628165453 110800107 400850546 34004871 250138480 868080194 899194201 819475236 829803865 37685814 610821551 322618410 454322619 111272747 585412954 455270866 484310656 591640644 810859362 384723047 680993193 397880502 693372998 222256779 999438939 419302203 786334877 366496255 980916077 248408542 990556032 784705526 841030220 629097416 822935991 23701523 96102412 187486328 949358019 364288068 792423208 476082784 696851958 865216832 984709106 695736482 717203605 658373403 734026077 395492969 648110414 356288601 873858106 303390828 498613358 282115532 607965931 4545642 750024887 183297485 942177817 753650636 840460160 946904140 981492530 816761263 889538618 47720889 781797201 725522118 866479612 700334258 754298650 369958029 457353459 372735678 492856625 234714840 984235160 211044388 572320602 771722101 899177841 419630278 732267968 35727679 697104975 920477038 997930520 791864071 805562820 567090654 606532998 178536977 811607509 237946408 701682521 911322654 919085176 438657011 469867492 478376527 926561849 727026302 800841228 40543921 603495997 144115566 845734533 830978837 945761652 554469945 615089205 459688501 822196728 913294550 991536981 991960099 992507907 175050895 691711813 992124353 999274336 994230232 997568759 734761462 823383559 651808940 903885650 113838671 809714298 786011856 808855659 550458026 894435016 739157759 855110661 57029075 229428318 360784587 951312134 923594568 998679700 953534989 968203070 722443201 828785896 203148400 210608919 583830657 674728081 392042991 493068395 425492861 579007493 234642691 956714756 356324519 836490610 514000693 716925498 672008903 817894985 653831571 859243905 913425133 939828562 10007813 648637062 614223766 801836057 255778161 470966917 412362884 642256960 903926277 998282295 777157830 856085142 249513971 544117063 386722948 868494307 725370318 793480731 762576808 995980903 309171363 798057991 689336198 999668205 826831017 992327801 295992628 401016311 838351323 962806871 820087272 969638701 141574964 552877845 127965899 567679158 933704211 971079336 751750224 909060766 846266631 968572245 70050514 178432743 649739348 943467892 101808851 557153392 225331964 487234009 192304413 904864475 239673770 875942879 526953044 777611117 772207083 894413158 793751846 963329820 552258824 969441767 191024040 483885329 110843488 418077075 455890529 645465357 325128997 629830139 421796443 541170504 122673749 824028388 481265710 814625430 950129680 975153713 176144573 955532813 513117204 934776539 153857575 645109084 51523265 401347786 534126231 640557918 475474344 814977504 985497120 993290166 327844986 374076244 610253765 661690698 408030826 699894226 1894594 215669910 329599634 872166735 511567727 709185501 109497009 119380873 433754895 900709128 970892860 987473337 393775156 736834188 273535902 566450475 156439677 514238954 340090014 987998714 316333329 935814953 444218072 458501898 670973119 862032536 704828745 867070803 475249526 605020119 92158465 771646611 479573057 602394046 909835680 940023625 125761220 360278825 645659 694968528 367651955 971775042 684863359 759564193 274658773 984004624 342058338 816813721 900240451 916560228 348927112 716389676 847670741 856570216 671500469 671859329 373372101 701866700 944497344 987799912 50050018 536521377 963075520 991625261 651035530 873186127 503254045 623622085 34651192 764816956 687671862 762923028 881767869 972067563 637738248 791765715 460335317 776802633 78153933 418880425 834288445 854067660 747150043 854500543 829412584 991771177 847037396 921429925 614612548 624543015 391481547 791264340 990204296 996816045 486109387 539329491 324626165 365073833 200572071 550628091 226238820 886198297 753364704 805601757 12631990 441754869 268307125 408846999 319725061 493861450 548249221 646331782 296609438 647312169 465945286 650912977 837899349 847009069 918536878 966065716 94674905 945259711 653024570 880230617 999653933 999805088 223476657 808331706 707865798 951324408 101947770 503530879 400337420 481023849 110556119 793322883 213400020 620567009 9937387 352878770 584524968 786997447 979244300 984979707 883601396 971586193 687298319 688650020 404888842 639012669 661407936 843542273 348347068 743507780 875024309 911459226 396636149 786795469 567424156 739201470 63858629 572775922 942103817 957204900 782014134 980353769 801021839 841230215 339921017 638176389 438883437 979371856 535027685 550235316 588467654 876790974 936618933 936632043 41889682 963207756 258341539 348370526 936952930 998486912 33552648 400135516 27148305 538819081 544250690 766559931 791127542 806997276 835472493 929943704 861136181 959106314 675416048 823805372 869085625 911903920 6090749 449590351 121352897 288856875 667121387 733328931 90744576 263073824 419351506 932403406 756807255 779016279 562877861 666412797 92834724 389495581 320338839 675785472 584546264 736068991 830965936 867549150 753731914 800517935 990552755 999566579 678918795 828805382 402732418 409432533 933748700 977072518 415186687 853537982 15068475 218826621 655950686 914604092 611346683 874196188 915447147 949220650 880517590 947514326 151417789 551254792 511979645 701290562 302253904 648386822 542508580 609407274 27732755 845251697 577525000 895660056 780583123 881412685 185167263 782795136 275917388 848095691 761220153 987792273 871431282 886634900 130346925 479842314 655558499 944868379 514098972 593796158 319285325 998752498 220353891 714475471 640022904 757589260 21835224 435879041 310689311 856682254 252796405 850959429 565185757 900957907 111740896 293482651 411242077 446148600 598403064 674776844 311859959 452266723 831803097 954133934 440136656 801823387 158274219 583369762 883966936 949034219 417521709 504759902 306599178 930334945 857819289 862251757 983927374 992383276 32788710 267394175 635425577 950581424 174559366 706099438 618509676 765141135 761652261 841622137 946292706 990217286 514978234 750645083 859429286 865425976 713141779 861631529 361342386 769495865 532334124 648212253 829552744 995420994 190057022 485574830 378462276 628598729 691230021 926708748 295131128 683962097 55703091 721348388 855582899 952161726 38863363 380207405 958169652 996625523 555229341 934144551 802916912 891684277 748798784 875115668 157719874 425025160 89233822 476973877 284341864 859246180 639591377 902871459 974649312 975335608 953729913 983058393 705224214 855244665 428336687 723213588 227262321 310001710 624886853 847094450 254076525 316273741 454898624 942630893 223021705 945904728 562417169 870103042 57803742 133497689 420260932 511806125 234044542 273050531 353371007 890411694 129030757 722926957 596363841 619823827 1250746 498349112 502988159 522711021 284137915 369047639 873688693 983865157 366887430 889741973 201668143 766808633 630891749 736442989 886563748 986359553 243592575 718117885 304503857 682723139 627389305 792025238 189656172 589387326 888533155 946826880 234626203 809054883 209760323 316880109 208512516 594287050 27014601 428261396 149060858 958707702 522637687 893355184 835763803 964576452 931630934 973871492 311663189 630036237 196840281 691321858 807130830 984020291 284572443 461025036 428375197 671294537 373823230 560816364 767366935 863845703 135742164 700361129 549266452 869228024 673683106 802466122 339144760 637995741 311526759 425245221 334740435 538198343 851047873 871490786 932747056 987173968 718176478 729155125 518074148 799479906 308789018 577716105 966524214 992886819 643141720 833247685 841498382 867782052 592044325 754799438 817675988 845278238 15817715 843834008 54118249 571553759 102579454 632589789 522147635 630707643 72106084 988997500 337566759 358285930 951954403 970102575 254069986 685272026 425850133 654845356 108533333 885298305 792485710 917396370 10018265 887812761 911329964 972085342 133447490 993930643 309188302 556308055 681500149 706420292 422741079 644471028 610118913 768026798 641233361 727342391 75909115 177253838 770586206 889119132 617585918 950824072 261209289 496892455 343709294 358844628 594563359 876600274 608210423 637889292 794490724 815608071 276709985 655906953 367665185 504030957 232121673 475332033 774483660 938932790 714731627 824464393 102435934 505571645 582597095 604041072 175579485 206272126 258419694 363659093 981007318 994681576 761678008 864344961 767037734 913892917 479193488 678049949 255925880 643910506 54423019 165598309 995187917 998808692 486437137 876486988 869709298 970654951 179497367 245214719 479950218 647259313 970934717 974257306 635335097 689939191 770004392 972466657 327355159 869848061 123818700 882472919 507694566 681756110 255527147 936314957 639210192 754328617 179370512 985013444 182681329 479950686 541491049 769144502 384708698 976639848 201920403 287065763 226798598 399222090 691401361 770545443 18599819 891284238 868346530 890305850 743558572 794881315 468723112 515713849 989489182 991723001 687518911 992243334 104322113 145546725 21988909 864031627 391783198 600467337 482276100 891292207 235469005 654011522 451769215 872739972 502479277 965415689 887007922 979791145 66459440 683874177 588343517 603814435 21200045 633842479 705875479 973165418 873684707 892141922 652421943 916469233 925967387 951065541 485335935 594081747 276432653 633399699 711816843 956347559 693334988 935019220 173357932 673312397 140864548 403388477 63179018 207916327 35525157 979527121 3634842 377369429 626415998 813401341 218443800 412717281 579615503 583682822 408957254 520253369 579461079 769860142 17824218 207076971 491931739 510595517 135021218 971767820 664660953 922979884 587232909 865585578 318107513 372594375 760413946 989441226 256583649 655350809 996866270 998505535 190768386 837109303 361929472 859426544 855562211 936284853 892061879 955923546 227701457 791046065 108401878 942656280 668010487 788167662 311388188 848163911 378105281 727777794 630910782 640078971 499498902 642802383 271452599 856212411 314009380 915611253 792322365 924487872 515007376 565922582 338709513 401866845 893996592 972290773 148749955 583447042 851206088 851818292 425425781 994899941 75565674 992493756 161039852 498904568 173801196 900818541 423616901 518994348 827236491 913004840 228220471 622382482 157232475 975281547 732135249 824455898 773816377 838574967 209242008 538339209 13623976 415333786 502523613 512067814 517459061 947474330 89984836 121545740 543820844 667801355 932483134 968593086 88434240 409899307 487750332 932103477 319595363 560844339 664164832 889881227 624156194 776454880 515557102 545270260 20132419 688563403 616898290 623907556 830351387 971851635 693129060 711654995 295115873 560515145 821688795 894577709 119274362 992061089 238411668 418674564 375127681 585371332 667586529 827669492 302476205 659835716 543468742 721317433 75892517 833053825 279935430 498042462 422339279 986639660 810638117 832742706 656738370 962744428 118078145 689882949 72057923 759738319 849422020 865234545 171383373 302130814 396437759 958657568 761734434 876750022 521807113 764998295 822308930 904433005 82893399 996546716 656542238 730236742 82455973 610364931 124979070 943096388 745613519 865289208 435504847 436899324 321538083 416630213 357708224 708840742 995246843 999942189 287838777 678365523 703411553 746828556 643961389 645047802 943486310 980877471 872057666 923716549 210157332 927728120 416936050 870852947 915422497 967376944 464303914 604783781 205938506 558267573 816951305 909134521 418188246 609146434 966966745 999548399 527919825 847432297 226783309 957038266 667420443 990468245 456644482 692613333 902109737 948981922 408360397 480276984 789477976 804977771 755978748 822016427 235656913 650506712 623915082 813097466 840777174 861953741 563177587 640029193 601474195 701357091 300554842 505390160 806058202 855667358 958603572 962482772 256548323 647253960 355194023 518935342 175389226 635032636 795123437 888296763 859710574 994633910 974978240 984207628 899717036 943961085 2944302 551891989 664079384 728043810 614060682 884547129 488847150 727522204 330582554 632505492 799569936 825778658 217187266 733846877 377123386 930531079 489300817 691446613 895425374 924747803 715310827 751438994 365477614 587106291 78240954 464870711 662949334 748144510 838177916 869347409 785473408 788331876 413881780 795988823 346755520 617548284 911705945 913717130 845128497 974204905 360633977 906564365 348350241 578233989 958645303 985391758 847800253 918463232 117804711 581019635 270055310 867588581 261715477 347636522 26611601 269145574 405964604 971977332 385047429 889988062 684213888 960042431 589716095 902852542 472751073 696078175 782713169 875968641 160489164 778883282 485356543 690077784 426868098 665767912 655882680 909628644 19721553 50388181 116612161 752088338 536463036 547402909 617865089 649631705 227279789 814063741 166688403 380824777 897075082 963132921 865529869 929691411 888175867 900043399 133847786 628744657 389444792 700025133 120307841 502016010 940328180 963632116 224033096 894750437 884642385 891250019 779962058 846268556 31766193 277513565 894525454 946316804 472235574 820929871 260259928 397549815 377277777 536659909 675716324 812230563 513623436 870538806 198004567 906728236 886180501 897802320 108855365 892416666 973167776 986808615 232262305 253263430 825442337 859875148 584365485 601852079 204992793 551921933 850486643 878405699 651429957 857862306 164505049 948360550 29819139 890648040 784444494 858836042 735624241 793286033 405711518 987436189 86952742 644241902 281356393 985719210 288117342 856580943 390460304 612290260 605119548 873882881 428636089 680220617 204471310 620816553 562306806 651000557 65521156 517453962 940520632 989721944 546440365 591479495 84305636 606614007 530763541 680864295 955089833 957120307 181348143 489950637 317430660 332647899 703019627 859564834 21916682 557032277 856339103 987334423 883698440 995147685 994381882 998685892 600012032 720291351 915106958 986146716 865197539 890172523 762272287 948366647 458686933 916793671 847871513 957693105 403176053 636697966 695661615 787380046 400661530 675068774 217907711 901770806 844564235 894321433 215421846 303603206 583770195 754434113 69148655 468466521 21770053 640895040 638625046 641052777 181719755 289346458 259021077 277596460 553725416 976451482 716616904 939862505 106833815 930336423 329799284 633510846 878320663 993226450 719665168 801369756 49082292 789083554 208917453 520139744 286985126 690376078 398172659 566652227 736442111 903754806 217562005 238449356 187293669 572762190 762326707 961819512 2436965 308934795 904313305 927865251 11736700 162499292 734799404 981767139 423945133 682153610 149852843 564909272 708001068 807881635 121244408 989812584 727493207 940607324 933177410 971450098 19490482 746471104 5094687 580097164 99296218 400209197 838308310 842809558 940842866 958436466 152620057 538444244 381102712 448494743 641745657 693389986 209095753 893637548 659066452 959098195 894457724 953951085 98595028 794367406 515053004 530408361 485890518 761159248 881367840 920316612 15524097 88877927 228798019 415317900 855662160 952401104 919679028 948892093 182594323 667368414 301653396 473350575 637497035 735253186 308338718 781929256 205726468 544595464 210392289 661747633 20289261 929117664 672618646 961570364 637480551 979760495 712062599 962118161 647041403 707052376 421991183 570221488 312531497 934907930 240901210 952854360 594853797 643044084 865395010 886788643 446228048 466864439 193897510 728623452 238939014 965795683 859066874 999980725 774363122 784842389 718643441 962641372 258950224 760975443 882650372 894074161 935256301 964949652 994917507 996574621 835978352 859569871 704277508 871044546 200480587 230816915 323104874 419121074 198154531 456980516 331080884 612221840 984138823 991581829 383191731 406193743 301120711 305494301 731103409 763632839 317717014 765527109 418553696 844630700 820439465 996354391 919686013 989443887 201576560 240085153 342797131 590895715 165890627 700352246 174477404 631480710 918097676 944772816 524609043 926756544 525333568 537683874 468126608 674574569 914043600 969168450 520599997 737271284 979845006 988021046 127453245 293518727 776804770 805762222 757539644 779926796 536686554 567386976 11141567 779449303 744823878 885163243 549610446 805036070 518291845 690753341 449220229 596643320 66466518 817164296 864084795 890717401 788287720 863197853 680684010 966698351 604453306 699633547 269972522 294665288 254693537 624641640 467251431 944199563 696488600 941219797 515935921 828434397 546630084 558177358 18364777 288511411 212730936 865130045 899183375 958101605 911597438 931505414 822588174 998305930 72095178 635765703 523575160 602955013 485297510 622110959 199420084 345827256 550651779 790733372 995863228 996458426 763169931 988850054 924157909 928795911 438186442 932768400 569909474 996145131 169274326 307861603 835445172 951951534 552005777 670860564 44839789 680124548 546767800 712654000 428619238 993433077 599148340 954620258 820374169 829736535 457154748 558514757 225607951 839371754 630372707 671827031 94546926 684575673 794617559 872201351 88719513 424252264 207967191 442692171 164154683 326146155 885354484 980231114 598779601 658634207 701967797 704231550 503273914 841654780 521652598 773741734 460302390 542095692 637290233 789362866 113859102 909827559 788794700 819361597 309244723 998381433 606012693 968409637 166783115 874107567 683838044 846074092 721921193 996688366 251555350 968395373 860785696 913199899 609798056 754259126 511329117 539980553 124083327 960251722 361143947 495606593 667851290 791532321 844717064 915381139 649749144 813043532 989504479 994379404 494712597 633765786 874833897 980453587 307428720 325478375 334377715 550363631 176499027 747608501 955970317 975939464 385408020 735588674 527603575 627605295 84469662 181096920 587162566 812214444 817642061 954861933 955840811 997765265 16418372 870087898 906163527 960712971 521136613 702783625 24946023 632650070 372716229 945560085 194311340 220859453 362369966 810259223 887239482 919964032 140566347 529894988 386124443 552655858 598690744 728612105 44418500 71651832 975891781 989502816 295592507 412383409 926155857 942387615 125793453 429123343 925042598 984955623 885366331 965662135 862254717 933321602 273599129 416145300 927043514 938685646 17246131 625680470 175717900 722104070 408061863 629872053 357249543 859226186 612661723 837785840 604632237 665037791 249407521 927214788 172777538 925058239 564800578 887421170 347215837 545221031 418896573 864192672 574846560 712928988 717152096 966311930 176184587 405967636 480817796 864247028 254083133 607141958 414018963 637277198 458514570 907265305 541822611 679800346 411857216 826075137 755060357 803465759 655612040 806487977 528800607 919717076 35605651 468438590 627316597 764093728 209270522 955218630 38595533 51733654 205389273 718461030 256135034 620680746 756469528 774974757 455341405 702167647 466654364 497404266 234205580 687739588 456611267 735422903 839011871 978125294 634972275 923018729 335965612 742137244 211941402 235459513 946329310 992238089 579814555 965025705 810669246 820325425 499504488 766019062 183740650 853791999 975796537 984665148 100721773 698087427 569303143 611841697 855659204 932515548 152423716 717588067 839733722 869944758 751090753 975110687 389918373 763210039 505533348 535968738 209130652 972147540 31189718 418055897 402887883 868372154 309084138 788228228 470758661 502772601 525846720 594246400 101705122 391583330 927671039 955730144 905470041 965900518 499932437 974517131 44589056 744218628 272503146 663917680 189131554 745937304 661062703 701066690 804514640 829946436 38082449 779031154 118068319 965696087 822746875 980084905 499099454 790444712 866746800 980463289 740849752 831578167 391878511 942203047 695331055 953042886 573917104 742269737 858431606 862526703 689498318 784676873 62471839 258551166 7073955 311848839 256211341 838356922 556193898 942026353 231095773 381644790 361792084 845847366 652988452 886508504 838385558 914166370 783758698 902619961 993298526 998992209 424941612 675458800 687788343 704291673 524552865 931076682 277316899 942669105 971749257 973522523 937352379 983546463 910254338 924439494 93503598 234072261 393260942 607456651 189425638 562991701 620199785 947480792 176648071 577107509 234524146 311047288 503552554 553182619 842389273 913877959 401419401 993150518 655444137 783748720 841137686 992626023 95432957 262711733 143624803 379923763 619696318 730663683 131538503 274817463 229972364 267905454 203961019 820431045 600802084 920752692 485215554 526144833 27164538 998987422 498603294 804981751 142737744 740836664 691739491 964733765 972980655 991639799 833289624 889458011 485555040 932834506 908972767 932797947 940089531 991580945 700503200 795207652 627106431 931785169 766350200 834019632 72425816 420451657 942369257 993044410 385416480 831210739 447000867 608384113 720625852 787151790 545243777 963553333 658449408 769738894 954176851 968803793 415402770 739082960 207546476 543233312 422567386 477239494 331810850 900972306 234977413 837005399 70235085 583855456 221432723 512072279 185146755 607712375 206825631 327530446 447465504 915541725 865999199 957739768 620106711 966008763 87229988 177910627 965260289 979019490 302885429 908353505 602105457 937558592 295512924 878052258 55159890 348815876 453067468 664132403 686164836 845420423 11056272 437954713 575368202 723277260 653063751 789098268 363587656 682977261 386058143 982470968 575510810 975487070 192617118 976676430 124136422 957277884 273191355 947804266 242005597 615555518 566973311 644171799 439476874 854129263 289159626 706510317 949904722 998317375 683181666 780956092 460030580 499050340 97751918 602674904 441408186 628797803 803278821 806109892 179005627 941570639 454436458 743033202 592788782 711009165 904166998 925634110 265938371 433674558 568711962 595836306 5365812 581425022 437478944 926608244 238942989 892027390 409992592 688871920 351058539 835358468 85531030 297966142 909448919 984723625 346358159 464211109 848168417 918484125 6461389 429803034 978342530 995349124 350425604 935976992 900596312 959339402 611051418 808892702 52771925 362381593 757498932 978573577 239234902 860601759 211965660 861612926 865592230 901084841 609734900 697417218 542061612 878977857 841579255 983367836 875324913 994203243 250118041 890660464 781612251 994572962 752441780 927728471 452519615 940129371 505647494 567015349 379334440 506934790 23181665 439245813 751549728 984938955 177002323 749405200 229806922 403738132 226095180 641391964 940727056 962247388 74148256 612128423 880376105 977195386 952346838 988106690 352677741 985284177 107335849 405353758 236779564 611886972 515107182 632960955 173684208 878073166 135183818 250250512 328550431 736382544 525473840 812551728 879927482 884684808 716922852 841305758 389682233 479512100 33553405 261385472 374085916 900615333 218330766 694569067 71091640 956186076 59156094 679427864 179402669 544261046 999303280 999440676 749201248 865904022 340147843 488245828 717780459 888328908 567471605 850698147 595614489 931183912 820556072 844612193 309057494 327494367 834580414 938066497 579408261 722339096 303461505 470693462 204424435 721832197 903800627 977659597 452821662 564023573 157945547 399105445 55203410 314065048 756198759 818443285 867248495 934172037 934382535 955560506 802941485 889183971 824462642 864760079 712886572 951821621 181362133 509580320 845040231 862604740 702407918 912417640 181486175 842722702 561468485 910873613 255943131 301364326 929791338 961406778 390291804 703324059 734699802 807457211 670509122 783223244 646767821 655439933 143358603 493260115 474902231 699681139 298767828 669489046 760512662 875146095 329762202 618332591 419378341 512707055 948452163 976664901 200395450 449214165 697794110 760629275 300814349 805700033 543258978 818698831 582484935 994129910 558684372 737118789 267566017 718263177 767960512 852147067 41793056 310811477 528180868 816436691 816420560 969670918 167829007 870189979 785279372 847831286 215785132 605341830 981108844 985024546 808768981 925378949 756387001 787608396 116424376 659785513 496539680 529735540 22160128 43438984 702177777 765349643 945834872 950173163 761199639 816876175 576991792 751681016 524508627 549060908 126300175 882309531 706509493 990266778 262954625 726371064 307093972 413535862 597785401 626234923 605967588 851076268 129753926 227250956 904411289 995817978 203713928 580106206 383140878 679098832 913564827 954408441 744910870 755275395 816481064 969986591 745689420 839182999 531664726 858345030 725958907 953455011 985327174 995785209 74880955 596706323 84611482 841146271 865875957 872180541 400976382 750776904 259858563 671706062 800293593 820156193 477558698 486301514 146024617 631499044 316429532 839660227 445629221 702246071 56593972 586531417 625853592 805766197 308659524 518045422 986775596 995470396 987705514 992806161 536486801 562661430 507124848 533679857 341110358 910392734 811579990 949134212 737729677 923074541 262456823 935799825 365979465 665645648 915953219 931359736 648910549 761903408 80428017 692236631 831275332 867583513 301158360 446925577 691848074 703679164 75073097 871834207 111688957 615488597 75012534 461411227 656923973 695272343 387952096 975890304 547365788 626284669 968470873 983833223 141771521 953762434 279544714 819351438 241850227 693420563 744900819 877504329 43355792 656185409 643402712 799674973 724851193 956123683 2381637 250746548 785621976 950853270 938153273 984653821 270358224 992924822 460304041 956301939 273359752 379301330 431484923 482190464 450290447 925409579 50995027 279355002 576186496 790896571 73413264 941927422 3329859 898301124 673482078 993432063 384642385 625187375 69964183 784273389 343943621 923995088 788525756 811055962 117897331 456830384 727394829 787447868 225981824 227765472 720153451 734262147 363909274 714436318 390808922 711452679 425111837 732964672 328172262 559931228 22533208 233813719 553208947 556694354 473959364 762059030 519022863 926252468 384202467 927457918 539825854 764688340 458716092 537108904 102316746 986295972 8263442 281169387 658141806 709326451 895813342 967950627 148011882 497025508 535983664 878863868 58753814 370574847 121158907 888086630 819228761 863937122 643015210 675503173 947976552 977951108 646123243 908127379 29277962 63375093 299925232 775649048 94514732 419310184 956405668 959651164 229579405 668272892 793547037 999158021 503259080 835285759 604718220 652940596 619356130 751549991 330557983 461621499 876422646 949873629 340308029 364175686 177589742 503310923 629598462 862664235 437738585 840023970 621906290 854571193 353527899 354569926 384968391 654403350 122611336 354953089 565460612 917626757 691331915 752761081 114207916 375511601 899028885 973171949 912661128 954906580 637871352 839602799 166554463 710901022 746577685 890528696 125630550 533295295 722224075 792051828 575495378 651389519 976988914 997172720 702338560 924517934 245173779 314493619 123364827 797348407 574497420 959120796 61880052 971742719 248691766 367140774 796327531 976337262 915796141 974859918 328767459 709998751 978795415 990434984 269822981 292275924 713611674 947770645 433450009 573116805 200213137 413138180 637127708 671290368 510832691 561212164 699322358 827731054 713576973 807501176 663810626 840514885 846735164 971361007 181762518 447014945 449490366 539344450 178935026 586905163 396457283 850160796 605914901 760638830 951414395 984811407 808405392 895194610 442860118 990510552 521324412 828806560 599784871 937813394 69464807 243989732 182818953 360446334 676158609 686300963 77558417 980136281 174252178 419782211 980187179 996335648 990345735 992184077 438800367 850102158 995435619 998711036 904047099 910655722 209027869 989558274 94249897 536157477 677611556 823757814 878825472 900250764 107815055 889853556 757213712 808342488 626609754 833091859 829704533 897841137 900130697 949333367 201330854 245499599 886977998 937561954 262825245 519120007 614590309 999346225 28881718 468066880 218198348 562302012 850604448 857314800 102940360 761165726 33120723 268241585 242886367 891327655 456678010 774708722 449129386 966858990 938996001 992418147 618036339 895605188 24786188 73788720 717334645 988789347 865649132 980047988 654210611 676625696 438153179 855543800 407836402 450069531 195340125 482875654 830682271 938527736 581793725 833263464 993868465 998309715 106784598 239302573 46846225 56036212 705630819 949244383 368473184 808056845 986371689 989331485 850787129 874063430 308246254 709132260 343809568 964985254 963477638 974138681 913028456 961554382 322228155 895547854 872021211 950932999 52366829 86767104 499974885 530680466 189318613 507130028 100049109 169069722 219184765 857077584 187663070 435576559 608973883 822008944 530347042 675350871 819149895 972041450 933406515 974843835 217709533 721264503 489044537 679473626 920024419 943680331 625644456 657215459 170319316 234681698 584966224 776211093 991005333 998382114 442305175 963203479 447691806 564003930 584405829 950859183 221192693 564919994 610031098 767285756 692493009 959974453 973894943 982441576 849364404 863015544 211256041 613956215 201384381 422719074 341404494 972399594 537003804 676421560 619843167 902271709 288977873 302425014 754722185 966045126 493847003 910168998 862179759 905545352 40231346 230602669 937598328 970863137 472799207 963158763 49595384 212307856 377015311 687655395 756420430 924534294 82353303 917110665 61905933 493359606 340486133 670519317 748739535 901069347 536013286 631514739 738033892 880510688 804689922 886098751 450942919 557487034 563544450 980616155 215255840 876999907 412808731 912290257 203843901 528597053 690188324 975932362 471437270 964329881 531285338 699434229 437892526 988208598 511003787 642314551 593528677 610468297 619225458 938697466 987946630 997303956 809245681 825046956 131583937 513748181 351711466 499342467 776055101 798007680 385879209 454031147 349662243 631378950 306257455 539487812 225135389 405776043 865780489 939626482 16634989 752543435 747386296 768359681 217366789 727243004 371525539 791654911 806449317 927664645 650632093 681981461 487436213 649656832 92217229 214609832 964212609 979472559 352420249 649350435 599620889 779030270 95926189 501463616 858299030 973108225 805272356 807266336 247691134 682719986 185178734 424691509 525192639 945953035 64986699 106406659 573973270 787928680 909343476 986321347 96794191 720248075 864120599 967002725 285260749 433202938 597766932 654232103 123768219 662019329 436993079 721257077 443703031 710389761 403435232 737915366 385902352 601845043 15477286 194622273 618880907 685284176 124402919 911870915 962688987 992304824 554801228 848679340 811005166 959870398 627362030 629191998 174868804 234616975 731728635 773447277 389336200 887696312 549892824 627833514 315560581 761873795 143225456 623483147 638293351 854172962 938697962 984105969 114569229 351006984 441808935 808645884 208734264 980263458 552775056 741600574 129522322 220101531 193099268 855438469 487109186 548683761 722170328 791792935 498534495 758678820 399970069 537159870 62520996 439834563 701624872 843619233 173138863 776877171 332823685 915842077 758659809 786228914 726450619 795606623 20154304 387479453 142999336 820509437 439815962 590142251 272762018 474569886 259851838 948064657 136701163 763456675 612545633 617787748 709590545 722266619 325586448 895838495 751779947 805071333 694623156 875591789 701313872 958303662 87573384 804787115 932339732 953282603 49171725 995719853 617627084 640913476 91688636 196772963 612324482 675025169 439676410 694189781 387522853 851185746 234339157 380626097 284559342 720837076 21136291 554577474 380479917 712504136 283661436 935173806 530418755 691872298 724328829 970160818 989748654 995606896 717583896 832273456 379533906 510362245 395870803 685563579 435075641 556634837 72772167 822797224 430840335 960210549 523229337 562027317 400094240 684046755 380413357 498525440 160251978 635318165 971655840 994988719 591400350 790938778 930008989 951092247 489673084 738612225 370635918 910655700 303696664 741743183 214218517 529526482 12788302 571579780 725908807 995938153 824728720 838938638 99398669 788084175 413080417 486257858 102858862 476436507 538516285 789903814 381554557 937204007 736038298 836706070 860095107 973842858 559066490 965754576 233597289 467909484 745937279 886486874 30352030 205085706 418241686 980417710 274871401 781019592 170695724 998419587 31497023 190969927 822963112 933030440 370169247 820475007 86872153 571555492 872445952 991443254 87346202 726708939 39880636 64926072 760179037 802120989 463662296 727610371 617832910 760365924 530162521 671945092 353421995 408182141 375524868 410814889 998707954 998931539 104820310 638846682 489148548 847563029 195009331 435236060 787859275 807650153 570630758 819415772 997790249 998031321 29359380 935745045 627881251 759921737 746184068 854056809 400900603 672616608 442328550 925447070 607925359 663820748 371055341 856448600 166696038 365261011 276258012 616444068 12704201 305128794 267794843 380523780 208072702 698607119 798035889 879165349 453265881 849432670 872377351 881025424 859116676 911641972 907216912 910443136 787796636 930052507 866054416 964160401 703213133 902987626 458151037 574260291 382128922 954009195 288545981 851466957 880816395 911462269 738161470 860698800 642639935 961484777 3658863 188377604 200675788 468292790 940156496 992901735 284394145 909039281 709265108 950156198 772626649 800536724 504826973 817679896 745313429 796443032 446850551 886785887 670394469 713635471 991485258 995068674 432509014 460623195 863274784 924989397 2601819 627646028 45142651 270814470 146068346 932372106 177243444 278518304 781566484 802222204 671870321 762296353 922606772 950225469 623718549 628164277 540370177 799256362 507133510 963407748 281619526 352421154 61893742 115140315 778943846 995745614 531671200 937364925 361201358 869937707 554872912 779432639 543733179 846074940 105067141 911028697 720915195 823326335 37542001 54525496 593274508 886432601 121495225 848502184 245476995 518923967 628157836 643578877 317401624 743268963 412942218 983599121 787091765 822760443 477548557 524398910 682646814 966432896 145557116 755959957 241645247 476008542 404918551 440406855 958948254 967676156 464330060 954807027 26680434 123660397 318952270 458099529 306963830 461816159 883956693 947866307 813153756 957717064 208004278 711684636 612395064 648041452 922812665 934246875 644484603 933103197 748637918 770247371 102909396 915809276 53815622 914144790 436592845 702527523 525582313 792521808 399514506 418463751 44877478 736479214 530095114 984829745 270765859 712800637 817344420 941217865 636067396 958914403 365389701 915568405 18681163 85177707 196977682 207722926 924957204 964382458 841959857 844599008 610008525 957166016 581604708 901877526 937081526 994004307 24139103 303128007 97918716 519264274 195502336 218072445 987641163 997992490 628491906 836165875 64341844 146061694 275046369 302682462 919625266 961154183 67605038 462839234 983466221 987061285 834417499 943115768 372822828 802786702 702419505 955652993 709234753 948855164 790422463 997325418 793530467 794885394 189399724 836746279 634261492 918786627 478570100 719865933 780959963 822650164 187503352 334689508 944827051 956808229 192466621 792086226 845126215 856571338 198483504 525434410 392776618 478649584 934259428 962180637 963211210 978689843 373657050 454093991 531297510 949612130 761073228 866466026 563370061 753858839 333505512 586922557 894731478 954037268 461463403 496263679 851271808 955044663 379577339 892500930 462040162 662122539 821605242 824030039 481924870 774374818 851736031 941254559 553136171 980144318 700998661 826195080 575747857 711976225 372452881 683629192 441050377 539969477 682174815 837178604 166243633 194376675 717744513 821250702 833625953 920543239 184574076 844382840 484113588 657266908 672346919 988182221 675899005 883292008 251740765 408365857 325172261 448289616 356974521 379517586 43227911 123133136 940299630 997037142 947539081 982979896 233766816 395268300 346166860 815493230 499769727 845411089 602553235 798991141 594020587 722003638 428400780 916588182 255630663 290279623 339133430 452370699 909356284 957402668 576267440 919879987 18440388 725650926 144019354 681048237 63415520 742785615 554157081 860101838 74554554 859099042 147884362 756507497 40779703 476446487 230185653 559296591 350833333 589645630 469689391 503585901 238912854 715534435 61987331 669079115 38574165 592049517 421795020 924854189 433056342 903228229 696190492 917853806 984980336 987904322 647811497 726584556 813704627 861811157 168213487 459122122 232836154 437674020 809950696 947844530 446748744 847561888 746596404 835007507 56487729 165856434 670826847 887856645 623507723 705148054 637041806 649756361 198873403 851086717 464112195 518362845 628986362 641475769 251840214 318627545 437770185 674903359 181743761 617458796 693126165 928462897 651742915 806581972 928147078 957685882 507223851 763398976 537464168 596996920 927965590 965047676 499942736 789543249 100734684 169164926 611441364 996341505 454486656 708238094 960725545 979192424 422658825 436758271 902032430 991010288 624438152 985149676 65228700 969293047 469464425 701840780 377905150 771860366 154529527 992997063 357444011 870648656 864988913 944283389 312221876 784767423 612465873 813982547 481415261 511884361 720327865 820860305 638787638 866371195 876694359 883725637 634150792 726535368 735785113 841880467 64893973 126956885 178716664 483759762 554808727 652430395 200334941 912748338 369714350 820936852 812450036 925516073 663118742 807421267 878580029 969541081 240414855 253694914 599115113 723247653 132481625 967416592 631361339 860749697 113494784 809099481 770245243 810434835 598170624 883361355 585486282 883236731 236665575 482726623 698461247 868423876 96297774 728837452 469069365 889851332 157565264 847999569 923120303 959435133 236710793 977390902 38035504 518134835 966553665 973894708 68278811 91712888 533520088 883024487 9716346 397904437 136915600 888677443 317493203 606305684 602398033 782168519 885623758 887706904 882970 341220698 174733746 879005683 323502320 412709256 733359157 951995931 650513143 794703611 761981302 767088810 55743419 167640127 87430802 773286607 581832957 818934275 236398092 618419561 908154034 928777274 980442960 981346500 2546575 756142416 887747030 980565291 136033572 502693316 295853699 569147403 333676705 603304888 590027575 874686595 245901346 796837394 147938631 587154642 938968505 990380456 628692959 849613673 513498553 605033719 680384493 794877982 398544083 546369954 60420279 380730371 647139367 870133550 771066307 893234357 500566189 554781724 881360165 918741193 475778989 587848987 42951375 193877931 171216882 526754645 520949400 907110146 807890279 860853429 419790421 873126389 305517724 933095067 242962572 438821135 43778315 751079336 922181470 947169482 969392176 999747557 57026917 999987332 47684376 817628975 278563292 876548773 497027970 546506385 209921567 834866637 733564347 792811051 967643686 986744648 599300687 906055049 81273708 466445348 527448722 647535955 236140716 667023259 382648725 535004405 993125191 993908359 513786632 919636284 289002704 973981278 573133157 963294969 61162071 423049511 271064051 831403853 320776789 439793725 96700339 756545729 868270137 941201306 171174901 678096376 970819493 978673298 650084651 899142270 769089531 959131678 145522561 804671498 600811489 776186514 459788123 467441646 84431912 698559313 165739976 444409639 249043833 307929404 753825548 775028441 755121790 983421154 474798483 709736144 566640428 845142288 220153349 911585017 317992235 965367922 144104570 422775363 881446093 948621614 224001470 600603130 478084077 789280991 245354075 933047608 448627205 485905634 858563570 865525515 676367828 771949341 414405671 641920964 119384081 725362194 708523010 834720556 455129023 628732806 845404416 946527221 211290468 862665139 24281083 417479516 899599053 930046537 539954341 799116741 15216974 173337159 759662421 936792625 739924769 774633531 497365009 689807465 195094349 473782271 490469726 833570901 713496533 755983319 739305035 801073227 185202670 641687826 12054572 765036792 303980794 406131534 513420749 557185113 800590911 976631118 623777781 793245360 580443749 996561984 910495155 942438298 378169868 681257734 895946086 902027410 148699046 151072608 264126744 767675048 112589372 783172330 741050296 920367448 78378454 518145199 565386223 701394370 498535148 950665495 671625759 989981455 220971789 657492094 250237739 669818696 748710855 779378768 41347952 972009535 564560855 683474132 22640459 656131317 195811933 637665165 38871058 137644076 833222010 835275337 584997020 835810789 269219786 793285136 648564886 872493820 158421168 313711487 142660085 450998807 88810048 156674201 268626382 382765520 537473802 691410104 729514497 883414265 897308144 940985955 879214829 986019585 49597287 531165750 810306301 996751768 196838700 866138820 597836178 962633808 880453399 980719591 36559155 445299838 19713213 25592456 931102129 945059009 63130756 518101799 342542240 363201289 870197587 882756441 838840025 881326195 677599107 740491311 38920818 513684182 645006315 832111615 218996582 674460555 884087964 989571751 463682148 629980070 353595197 812522391 772544128 836841753 369666533 577505923 829020094 856282623 295459632 462138840 902057553 967136525 322826799 901146704 1796067 652352203 930147433 974154949 790120730 915232367 619161112 846010924 652902915 687655355 608183006 643317092 651986271 941728527 974289232 988044219 443799083 495422347 474832113 782924315 113971665 895431980 897809507 982993904 656561636 727065713 212237125 982861408 600387239 827966236 904717177 992312575 105912149 867159102 864166618 884354717 178113736 441974361 942024703 968426969 306274104 867463190 515497472 739640486 130708915 529839039 986308136 987316099 416844463 564616556 179934952 548547289 551847378 802080542 437030637 541273030 129280358 558319830 717529534 867051773 605824052 730168985 158530698 690548631 23433108 38357944 756057150 894421289 98665934 583346101 761175124 885819364 529170827 928215600 389489586 908584136 340494155 843724580 608765398 773767754 279645727 851390141 437909081 612455508 882182879 935295655 148784402 803150037 84593180 282824808 941282708 979449538 274120718 975505124 278737067 297891936 622631372 797330730 938570638 971519958 775400529 804927870 547374686 571250280 788311722 815504124 619766339 674462507 549061243 995760008 685671479 724851285 268598431 541804585 591406038 948351104 752229860 995197443 313978233 696053266 606054631 832062671 628852824 916287488 559960021 831019889 327030400 974479259 937782170 976387966 414215327 545117297 915269813 915657822 653689573 944595363 840903771 959212104 844168963 977314301 838833886 952084956 82744270 868194207 224542154 559053786 996028440 999429506 317406574 972773024 919685001 989996020 140090790 726481845 751330880 817481297 304280024 385433723 565945726 710919668 56183975 480663451 381348686 999540641 748331534 987765472 515017388 781722198 711202255 938592498 846240964 949415159 444190568 470511459 382139526 449495298 301482791 998588138 216800062 377514234 744075012 888350745 207568770 790770512 440808175 972769464 754769947 977896803 774698715 799726020 973761677 998672762 539615013 880793128 829656751 982049718 134758555 904474722 771420406 812444282 673060493 971639364 799803729 890787909 235850306 794721705 284844800 806249793 683976034 947131716 156197927 768831897 703356975 916381027 21410648 711285336 154712778 546106832 717031680 796599004 734191884 950116062 636502683 742377345 526326842 840156466 294126956 683413916 587997717 641808492 249265269 752209619 390371841 908260736 660094924 815143893 334406854 552290661 234212212 481662475 777961176 948417864 92824019 322583773 366275886 991840701 65258836 477025406 991424987 999676885 328669582 877057482 303586393 880499920 6376470 536148768 194500544 466756197 777407515 851554460 531718854 788042228 755361071 989987767 610968233 796797670 208546889 360955097 746009144 854127415 213714929 625357514 120214228 164986604 767559592 914065293 613406480 867939401 687185404 792950012 358995487 573387574 619159999 735621274 927939929 928066500 877984400 879381087 370167723 497248289 865488607 886982353 653815990 688137834 901181991 969154584 596134816 597554544 495936951 725314905 584887254 753801554 442078557 855048577 328371021 781544524 196054226 766256408 876832966 920182242 831216543 918880643 96730520 474740999 557641578 662659003 169490868 459348926 473246575 819881852 211709703 531252488 391969921 617057546 324035406 705713721 428573938 443435991 764043051 930022691 759741954 875863419 128870281 384682972 960801503 989083126 268697981 919353069 101400665 701099091 986331909 997593131 617696716 661651489 910406214 963448972 826098444 951498345 657372722 732936934 129314336 277406296 576329852 831588130 871559953 980583495 244630940 938528576 967531710 971159334 978832721 998458351 5212684 434452194 697757509 901519573 329229997 387491442 241515820 660013641 974768229 983759460 184552341 463042118 349187659 671889961 623612869 826718193 158635992 980031804 455734262 556141284 365395846 879013768 638861414 949166186 147836949 977537763 76197265 661074211 901364493 905998650 352897845 484938997 272086145 744859144 148010390 252209589 536499886 766730270 589273632 646838054 124097052 271727201 585111142 743942201 205377735 321090899 606207567 629399915 360755178 384586052 558519390 963149597 967464127 979420848 400340230 750285010 399534424 952113868 547249884 562130943 534011853 550801207 141818561 845442200 303523284 782459348 597982971 670113611 87713800 903097525 31601086 304658356 458811364 616664171 340166100 749815863 571843071 952117511 362086107 659744552 119484380 943136254 292432692 902761872 825111534 865980908 731611642 932969144 188381891 382185971 57818367 683967181 817028024 822893271 886988696 916009422 916344277 973228864 470944773 942848576 53026776 964048294 448825708 942502983 124745914 726901451 119515050 330432667 239444157 656040440 500503602 598131805 375102414 409203129 718676965 924250278 216418857 857404836 737436065 813679387 626705100 968780477 73556962 204823606 165777607 832680777 754922856 946185741 746522169 766745030 394239166 742921966 213668126 374812954 954887107 966820013 545362535 860440131 624322614 732614457 210154078 764129899 137774275 314853923 354457293 378717117 13385120 234159045 949549023 973993817 450715518 495681197 55004417 904282975 667971507 995140490 574786513 587622231 279103838 898120461 661000719 900679850 806119366 865219204 150064079 311798957 48645521 764629192 265373585 665471510 780867413 796449146 722299334 774209300 948908110 989036572 721755374 897038780 11307768 68885309 880549323 912821948 772070783 848152576 237855775 898554050 345656568 771601997 381789418 501625399 726552242 742615723 487361207 553147336 182675201 382381693 952639236 969816379 778145844 984480222 969455190 996773749 195238488 204100583 570874888 741728945 883714408 980027069 174904671 443523099 526890639 975551544 398544172 932154481 653958072 902170140 242134942 984825081 412680886 982874226 529755088 913446630 151113647 683582823 532727399 738333538 815367889 818161230 404097473 515109033 927350596 935076614 306138424 991466606 298318127 389875623 593492482 730363236 189240815 331015488 984718108 986159937 369834064 824846418 167159886 592771406 439311602 464998798 6361560 472383212 327041378 705699150 710844339 913995336 752670347 909764887 200065263 601318960 549176780 784005229 168425104 469348437 495173718 708140464 720055750 866167562 367433858 605949492 275520850 697114834 386290905 626446075 630708066 759794152 517914834 731430823 441530132 621647812 82158301 725042353 466793458 474305988 56153935 245508061 210860391 754077323 689142391 743537855 273862954 630028479 900925495 969716687 714525705 847470978 231234193 305049725 755495912 865817008 341415474 427448095 925242400 997725161 938115482 963945419 505900469 868285167 792526306 986414280 20212859 317396912 121574775 752747769 800769307 859843814 672326772 820434422 480378357 916412291 850389483 927603756 238309842 760745229 389140733 654347348 962284821 967467918 315811858 939441379 340332414 869583317 496149969 830240553 512267292 876432954 683060043 753162944 531960487 938892860 421893256 766765861 69409505 986731210 456857044 627661758 395789850 493019034 247358560 476796649 850632000 990940823 234794447 861575894 278020472 417608775 353495707 509620270 102699935 194842909 819451793 822703433 848320845 890037977 413204257 847278312 624580940 662443299 695983924 736364171 926294443 959274375 695700070 991752677 235885373 741193146 809012761 864762628 650283154 817950111 938766350 948883964 880666588 983101280 802261590 956214373 198622186 564521418 228596175 319347349 335953548 901697439 318306492 392029863 436816366 855389434 615745930 740046928 877532067 995805957 487077230 789700547 42205199 201654249 176910343 998964548 116615670 878547386 688776936 870722401 126045932 566295887 235134260 786627641 508690727 619215005 971485028 997449251 714173491 735752598 375262985 538870418 869073018 916388606 503531319 755262678 471068189 955340800 339815418 873184545 968156199 998349495 169052165 579465932 879999029 945838608 191081257 448224375 485368156 498657407 930838195 985444303 555236833 638005958 736719615 948486992 14549784 61475680 904536423 981776684 539196351 677323902 544802067 707594921 106570696 110895652 864233698 887747685 834944060 892414133 9295019 27257536 322403319 870054551 404817407 791553840 342105870 624633090 198951367 949967111 743309976 957004561 170861236 717995360 364649772 651584350 286372863 547344970 865449611 929631523 975074767 976576466 12117048 639850648 143148987 406904950 498121202 724544569 795067344 994213845 953339455 959253846 189444236 923081065 859558467 980275066 477516216 801657884 276985940 586032022 272733282 588339684 693121991 840928611 628893287 977403158 508113805 599459376 760969350 972931527 342360688 874168194 735899670 936560451 946390324 964286973 4423000 151646786 606249465 917772482 701778566 921245974 681262261 956750744 997452603 997840873 35975593 631418237 75261550 736539422 75739050 561160882 34404951 835092355 487491071 798753964 621430811 889990445 574150258 776742338 239891295 537609783 637455226 863326616 197616204 888938179 382404228 633932919 691619634 792198203 926918738 999524631 365476684 465809407 73584891 470815153 509247010 806809221 582564441 697297966 127667171 600610171 784238289 885596879 252406146 489740757 798813245 800422265 379917664 791901912 394879556 503818104 117741010 458694242 67408927 254518811 394454198 554202539 336369346 616505950 819732858 940507427 755788308 891051097 879926045 880913517 141274942 839041980 846714863 932612987 546844950 643643344 837847325 901510165 204380073 825802630 831878928 913722647 60516989 626376455 949605475 976786028 307700540 700943104 892414161 894646995 78613227 896646714 268167588 751712194 93777993 732204599 428320486 727989474 415285616 792712976 856694659 894157847 694639985 827302357 477530532 946161759 500682875 608249449 688346218 855047729 328773313 593041076 398573936 761751545 698275867 823368231 443943356 744467420 37697763 652958843 917283606 944621035 303684800 391943912 435632313 838407518 823166517 966287216 299131734 590454071 441811365 508791449 370053969 388426298 412183956 855499448 956282393 967230978 248062783 674063837 914927670 957997805 500211273 613131940 113801793 440464640 358001155 407315346 379173279 849370583 226459918 280057447 414951219 617109597 607694155 698854412 673665681 906229792 421034454 508498588 672896280 787557839 731601929 874722738 366127127 801507681 361227346 559460572 614414453 834138512 263816346 532309860 805446921 894341952 979690559 984625697 749422984 978285805 251124592 528456974 237403017 896172885 927802138 985503457 265552788 908371018 771052875 957362250 691018225 906111701 60864745 304165151 758073268 879031838 63808281 278372935 261850714 415421930 183321475 295460902 436143462 615827692 562532161 674008775 858624288 860624351 571390507 627773895 190915537 660119876 241796136 402308017 485908309 520217042 986734346 999670885 844735084 888947734 708604404 954466305 145234126 553087561 978236181 990821341 23178055 746370135 691020268 761362179 756206119 884719734 126613245 302290287 314314545 693492313 664684001 985088107 151338639 446692730 72553247 963030453 982102098 982265497 331398060 968328060 308734763 578305322 748101276 800650196 621474028 679149281 475082057 673937533 739732922 799586665 80198826 252084949 644711558 825874163 642878328 954156195 935053017 935745971 146668547 212858418 28452655 244731989 584408957 772287138 48728583 989331565 782164938 952092470 316538697 408993037 547798167 693162183 649426506 815319160 860670001 932502302 644360615 852435133 773251309 891734904 325217970 635602577 587518587 783209543 68644061 735747063 266350721 400641620 612461646 971651649 168406370 669429261 865908562 933069188 638690259 736019064 446232209 467392145 585691746 646167501 219667931 308206847 173852925 584787206 738515819 755249220 151357626 499665318 240746291 992983073 111436638 820179365 62374824 177811862 254931611 622269617 843561058 861101669 889034896 932836819 972000731 995260566 291187062 557179210 559309634 872208152 886623443 886975866 109173921 418977104 371384704 622830938 935872606 965182374 153905791 174155725 317283330 805082453 310636276 839019096 841719763 903493342 801971332 829393559 900800459 941932791 119755278 856144206 108247443 300135864 51464511 516434138 284842236 961973452 316163567 832483180 113604549 573627303 853333778 950241146 404882284 454610953 387748073 775094496 486361843 807611183 603657594 885948738 429715117 577165298 92348693 222276056 246666997 559384725 863705351 992696166 958907219 988176327 600167160 652232591 705263452 919815215 359412655 810377411 682894146 760278366 189145147 853219116 11793025 703104560 701624260 841653330 902982581 943191414 528836599 994444766 672101478 929991960 457632529 658942424 171406214 864909939 154167868 706071378 603460136 974963738 987609643 988009438 229394078 682522598 129504812 700713530 418376586 916766748 652621909 746886542 564136041 995321876 388355588 885814316 647098547 810824454 325303360 461742879 946250972 962718045 747254466 792598764 597054721 686899834 174596948 475910303 869579060 980019127 112984525 266728317 962332876 978322423 283811468 772614474 516160885 881066939 112144350 214370038 875590798 923423798 944172781 993898496 776763858 957632926 622582753 887296764 374208347 401472029 451386728 834999982 97540120 126613264 868440410 935614770 392127119 451949409 443022989 536998882 214671146 599053901 582874103 665527956 137539422 466520403 565431627 974138779 193160145 953588782 920564731 935191748 609307193 817936343 34679471 719661387 90900568 586838182 861766775 984493879 108478635 850308297 336905187 858032543 721480323 970453734 454422573 631340239 565461851 802791972 616344086 644947772 695361260 980188196 973393151 980488820 357009078 900025295 674759602 811213515 344265182 407943764 223750237 704053769 981806415 992348566 761888722 930549539 775501208 869720396 741373510 850346935 286616433 439887176 226723951 675069161 687291885 856270912 672023955 791425566 350082638 755524654 289094638 756332415 396206466 968598259 752443516 836804219 5455795 858539977 240199917 957719291 991398199 991932433 457101621 718492081 397587592 575513708 153837042 214629684 895751315 915301493 274571567 394355787 424945042 833823035 762501762 981561292 905143377 935845209 773065043 869613726 635060780 979255639 725127118 844681471 236748522 626173326 541063150 909073111 188598434 428185197 999264394 999369054 139436721 740635801 921898666 986512752 466845772 991553330 670675045 863118019 950388403 991664241 337733831 379896230 605176556 980079568 592161966 685737387 815062975 961732124 340257053 939859749 959477385 973149910 80284657 82548493 442585797 617620670 875906072 954049027 249020987 310888050 737280121 890102138 601600012 842033690 832070588 950579195 753357435 784059935 636445804 807949008 212313305 639998100 45509887 876055956 719405374 830546553 306301422 988517309 91951274 551413100 272793377 678855107 632349466 742700562 537764748 701510256 117743513 345282581 578769953 864599922 1535775 941137430 462176032 847478308 317998212 584981272 356381104 968811517 395003798 976814056 599968526 871694115 282691609 961845759 169535954 229073904 775992869 970696502 660432357 845748491 520920999 651928686 566963556 752710828 903717955 933636638 199148584 459259241 113649480 509129542 371092004 810712313 666268280 805592012 26349293 353397150 749734305 959845247 4309099 16957884 641902278 852507135 664022474 837001389 198263142 976601296 174960904 495163873 818049895 936820027 486514130 872886403 457638675 524838959 401413715 729803651 793925670 950016531 510401891 740733110 383409080 674182437 66705128 150356842 697958423 824075457 852629184 971500264 918198149 933638773 765617036 918876718 630664397 874456286 795260611 886116293 836544296 970066441 196641846 274913772 771852843 845923758 450946886 867724311 601057269 856509343 837373329 840833161 41840986 830675820 483725797 729271845 535600272 913098722 604568649 884900547 971367614 976100850 14561757 941043954 651447431 718722027 431989701 451451413 248209010 613415209 515989126 541496098 476090552 705869327 597165917 694231067 951829375 952996761 231577601 583752878 406469668 519190517 709611818 760476717 181056373 716374973 340390447 422541096 273710797 873817941 489991042 804704067 892783411 954829248 656391046 683390428 226210104 476601562 252957324 859588599 226089500 621986878 130477815 713632583 195455213 615714076 610558976 883350577 930933388 977203129 421328481 762450658 368173440 371767488 366920859 642055653 480720829 709449011 444701396 781236284 997687682 999213746 213035007 974369396 713482256 772842145 102461573 990691532 391035396 465064949 34253023 95848011 147406524 674662084 562933957 758749349 17158081 223165195 311779539 314338515 150802926 765054514 854670295 978172392 608944984 924227885 543851758 836433823 407169388 983428370 39705199 625165666 997674459 998986916 366747876 985724525 77397039 388202216 385371553 633773801 655695732 834371475 610752629 834687553 279505978 290270041 819348864 901941554 838306891 932826182 902981074 983129353 874298907 929941116 148983185 356075289 704999123 805999266 873606787 937116148 440183214 549123363 651295205 890163193 781366170 914731609 159875439 923047682 688912771 886778239 773914689 875399707 337482535 374619035 894989351 960204068 24347057 331231506 411215884 857245832 274469050 350617726 477345800 980172130 147687580 606971861 843797351 849177033 662557037 959960017 42399337 219765095 196100720 520252349 27865727 624545717 807340912 860602115 988422423 997924383 250680775 516905631 791756894 963071499 620965927 975607694 4702448 854833936 203178373 900185978 940034326 996709275 876485611 885237175 394565882 453648490 323799444 807467190 445061949 906450221 780810000 956354901 980679205 988344646 924316279 946372867 273478657 719274235 385182471 522774543 730387130 995306781 572644836 711362150 988094185 992247041 295322676 448479313 948417191 981912224 339635160 510680622 213788392 412884978 309922082 746288896 367774376 719919072 162143324 869651592 739947212 892696244 858907703 924727196 751464182 897158087 50646322 478848941 869182424 964279006 717018391 730012894 305855881 492885553 567143925 710427249 553252487 951991887 794706063 980536746 853708303 882028596 738772478 931728391 179572549 528779195 256186546 706880472 321304035 885775412 469563592 784850962 15903263 871758942 110777343 207389688 823250355 955676566 268771319 597737370 878712839 984777698 611989810 744794877 16703820 255094686 285964279 833434256 971997791 977465570 514628658 629169730 427980741 716510853 449018458 793022244 451198340 673374205 415580760 553827670 280770634 889088369 838441042 935440001 741939565 912684064 34707281 996277148 616890222 921078935 706082587 944344357 747693323 876332423 483119212 595892897 107538282 576076800 969535996 978478894 726749121 953724800 854108095 987005062 28647280 386849529 677490949 799132793 190515588 217018145 366861127 860133810 475855538 937193465 934223583 999182299 385652036 997466537 524706800 526960201 404672310 935768564 685627783 756044306 397644527 787498345 11074576 630037754 948579972 997737092 45135529 731130625 679471704 985136222 790439147 862877795 119383679 717026086 734891435 762216047 976591362 987284802 7913812 560583771 872431876 882252225 927990680 933665486 400000058 958762783 13071649 537326016 485711237 823078395 711255216 971439105 359988246 987031722 162448674 566592139 745174262 786429574 64300871 947499060 273120209 684146267 309465321 479464358 865003204 906729250 498046944 593653705 99860007 882650833 641837788 990292788 918245709 991715826 316901954 479106576 378679465 559890426 901114128 906176877 117301037 168830079 610566879 846792328 760170738 951353547 103707905 506385954 971000590 976608081 95984250 411475501 774554902 975848967 839601471 902525439 111372631 347627362 498593206 848360116 670076892 841707548 754979496 958081837 806366815 863824976 995217321 995376391 395358304 998337980 812765088 967842824 572144325 794263203 347356386 704821966 923347018 952467037 530102016 587912524 685109052 934860823 882859223 986120827 729655228 854133711 435983290 848371535 927827964 993452235 53869381 692658299 509075193 774020639 378038105 744754135 357660658 806204927 654756993 915079857 167009510 510927237 204152143 287231767 363531331 733525610 215566121 251307864 672051955 872030894 992254481 998241347 354179135 483536116 20080820 29581093 901777675 963534993 890440977 937678167 973640688 985639217 211415894 236387726 327804207 482454936 34062472 475397932 961850071 983079984 668662156 791868719 43374253 714920659 141117512 636847634 665632773 707232720 152489776 328188730 81238336 101546557 467302535 620307511 50110577 595513110 924245509 952496324 707655566 987441333 675707811 735253419 509206910 742501394 350422320 688671855 868779584 911930883 251794220 634059367 558893770 594698393 770572570 918836837 672069595 704144952 637063797 954065637 124907127 481561859 488334075 843995888 671295842 726445027 328592529 548947460 464540451 721112178 968260099 987669537 725435079 826819193 155632046 882073372 729361658 806858084 511917983 847759059 907167507 977869031 709207596 825188221 10486368 986139338 301390342 756679027 728924025 863674341 820064871 885788226 568172090 857508206 631074703 962453844 12572040 909299108 899037359 935998563 258265699 619406476 472142573 529315378 260295674 463801824 805000257 841707282 509860630 721261883 956796898 966813853 808114404 988688676 453650889 841190601 343424910 690485976 58406239 977436101 328366401 366642187 153347381 893555778 898957978 980811641 625570220 763649792 64029595 327942893 393613860 901018959 964853927 969319889 322052176 879063602 426028596 811115614 826029541 863513862 788123595 995740857 989273324 998378867 638023157 930676342 568564374 988187750 793112730 928587123 886188863 930690519 688131013 708981341 896810769 960228604 402451734 874092411 508123520 688205974 41625702 655465496 519253171 975094095 252501357 261898720 226066890 366927013 469443582 756824145 638147967 696393077 499124784 635392272 529149179 774525356 246006063 409709542 177728460 297139343 626283587 961165789 131369408 585798999 18331413 896180135 846633493 936934618 999125769 999883394 849706978 852159602 849653899 897275996 753214830 774835643 510262686 814331466 373031235 972658747 878132161 884722611 71504109 702232031 400271736 661722317 167058723 730416503 751542230 928449690 191689270 691100741 779426911 870639497 284072945 940935454 699024554 914190289 669446697 701615667 591770820 724713067 937065984 955478057 559350065 883811440 342439311 824510667 804717703 811686197 402138812 952178495 94755125 369668539 597076300 650484222 192040755 870841905 871420686 910115214 664424540 898259747 276840564 985160136 951071294 987616690 195887577 459416782 653566117 700204670 201597337 743971285 408821712 616260792 177442268 869674006 382787772 893637191 278608824 977301455 120451737 522748202 218097568 910022260 391627028 996969538 20092414 93834144 689503063 956831058 359644599 715427329 510533426 577046472 238982630 369448738 868557871 986535034 34016701 881202752 568226952 808780905 658623217 756058053 501779454 554001688 282679237 619455624 876632098 915545451 386773796 918445542 786429794 823500642 146037417 867709231 4622883 83962555 154315875 298346357 721963468 943077784 746421181 943527849 966710662 979489179 634417313 815891468 68986325 350368258 457775252 531188248 838550576 871001038 161470215 715787736 544765941 725121922 502796131 589765210 969363345 971400456 244505828 339979494 86881101 640363659 148437232 415795071 762358676 946659815 869275444 986749795 723098659 935963724 935608151 967318329 844313477 955985187 710007110 779478955 559135752 959663494 304701302 483751735 213027075 567894778 542781508 739242535 943547630 951012549 28854539 426381580 309068451 758529329 516777042 602397082 574267704 652594044 612360730 861325331 121356728 556670632 577543590 922186610 475772161 987520859 100953740 868909130 522591687 982398510 307647053 760591335 979502018 985884946 60564226 786943139 263983869 625568067 40773547 623949852 329853453 958433011 147095651 848487666 730990710 770966484 825745483 961271182 303094796 317070442 349173180 706890195 401758699 588668143 240531012 388039950 360112395 686319143 96886519 874142822 975438784 999936835 453391195 888711530 402151640 780009370 852336700 856841972 487279529 659722570 521950446 548442797 201898853 859854468 765147895 916727730 792223181 914349161 701459743 868310862 782735111 791060418 466299741 872478903 748481090 917993756 864764790 925768464 258314811 444684059 500282603 512017682 824378148 838282677 385243558 545183077 924953716 946751128 104719715 320968925 170086159 857324297 999489718 999683790 549749784 745251893 719834594 790927337 655551815 821986811 628449195 958501794 193153110 214568560 676963433 786677596 853312878 921974498 566770316 601784134 765077224 866592573 366941029 990641704 959573651 963233025 239186142 845086689 685215942 697548681 53867988 797150944 109569201 473434997 818318925 984132612 307974722 914265317 74043748 744643138 66883183 432320309 687725842 967800398 482258754 560165255 723173511 728887463 252804869 983271211 656144951 835862760 528741073 948481446 364471541 474566718 178200806 715995117 631589587 724097430 746203850 931149915 831488357 950049388 732880094 759194659 320229737 375947209 356282679 469552067 160914019 304860248 447054432 963242383 688489661 955586857 314634890 460590019 890699197 943163330 946572198 967548065 25497250 304524351 472646636 986518766 528120362 570840725 213207536 900456145 220156511 876647319 649129234 983226190 416677086 428447190 254143809 332989180 473631248 882261891 69537635 121437511 956366041 985041145 595931587 891681467 572655775 809030482 922874758 933909061 295118248 681666359 910165414 964530824 153354313 452202408 672790219 769225289 362583931 883245244 600032501 636876842 283132692 393553018 835215528 972575518 968097211 996392225 429302825 637067892 865341102 999503121 698266054 795259578 360617895 715798223 258117616 957198290 230011449 862663104 935413513 969534622 327604862 662762970 160900773 621149590 447627044 895507635 474478979 674518338 42754274 194926356 563772687 771695530 987215917 989241277 143448419 659723706 502173491 661744170 652686505 785545531 157003408 573379316 861354985 890169670 865610800 962241017 546334256 586380831 98523351 549960728 436542031 789100935 849005138 996605266 134554083 797996297 251752480 638716513 138917633 189780803 267784003 708315060 164470305 921612543 986027419 990922039 702309161 903491599 583735136 694762772 459825685 775558263 950551047 986118647 491335646 964741429 527950617 878138120 849134091 912507811 148814693 609489538 773159726 780664555 428526865 500043347 955603153 956201349 520273517 540878173 798833167 948382828 211745916 229634308 643384199 792817005 868372006 928172496 980114199 984993909 362283345 854220718 780233540 880336564 541302455 784752022 417233820 956514927 856634298 966127371 38357532 100146650 634784656 782671662 259942781 476894116 27120864 346350886 737062987 902754171 307712998 869099649 384156179 759253625 628079262 988146615 930694594 935816521 511346198 511943649 405675668 850831500 932009075 942800534 123157486 532942845 191355343 760351109 370704991 876091149 432680828 879604405 541703521 777697583 427372939 680632584 669114188 812838741 670819737 805714911 617791054 889166895 380444368 382619525 620366514 998607251 627196005 904466520 946425228 971838114 646330498 789138229 280437762 955034108 413344500 673732081 280638703 801320574 110837267 933145664 517546102 871315860 270700382 845593555 174093462 852376947 410344985 715522890 410724938 701365438 876672271 901883073 938900682 971386263 777941904 779199426 79499331 513612954 688744078 826180678 904096699 908654864 179325278 206369809 359732270 823625243 534441220 830452267 503208285 947128338 27328820 188628928 354230676 845911990 450908645 967939332 325016622 740109458 196892768 912177758 230456661 243278760 384565758 415158698 111544659 319314829 40698057 587529565 989033836 998462226 315937790 900521241 622561124 856226479 869160034 971685339 443781358 992011548 726523280 786865824 930522072 974113117 519501655 666065164 443251249 771684326 135561749 861202581 159514005 658514555 493511988 607767472 907749114 996089716 322799646 954144877 709320636 959573380 989867998 995835723 522110290 947458807 693068863 963604111 756541389 862220742 793642055 931558979 121822827 242536651 372226999 845505806 959201651 974768297 131088737 136000844 102390799 265260599 258096297 450303152 805085823 857424413 608721680 722467193 491391143 716742456 451732444 963015206 311692773 497848939 277500266 524611268 235633218 852399491 959975286 989217626 188249872 535067365 896721898 942758876 431615909 790379951 341198340 850837699 498645546 568049121 879793173 994295628 659670099 800812141 956871336 985449401 307438926 761617614 352678169 464941513 828017358 988813319 735852661 891830359 810481950 997029485 939359765 977782986 80207252 936744579 428544540 980534955 429828164 472559660 594159765 665515619 660523420 940987076 777397749 887064439 120176416 567241448 264962614 309627731 715011836 767251315 929705920 985831014 207924577 249871581 129413650 590401257 799930387 960665827 947402023 995949530 496754927 965519313 414237510 953586570 442800039 746727311 885947259 994822577 728544779 876116878 627556075 743729458 706426999 788220519 527169080 801884001 410242693 837775291 116863408 321265477 820495185 862147556 94626209 596007498 317667442 963852097 143017630 481867457 380880298 443703675 823019697 981396668 372995979 875500360 716279838 916885106 453036575 530836285 163410304 204427454 330401167 381823549 597579555 847408955 177149563 766592147 771642188 954488255 975599632 995967417 920997103 955760260 776963259 787260218 631455295 673715625 747296412 865104325 821714831 879159961 963927474 981792663 896341942 983614292 801728512 823001845 912898838 916664375 695068940 709863651 487596687 986078833 926797163 965804768 452024543 969889691 506625800 853894465 145156138 753510178 518781062 954739843 122175128 704352218 166283340 935494673 108297532 668499587 27616889 268775056 967683953 972903870 698113148 929731945 210668981 565411644 527694944 971779652 514650801 692226446 986428446 998735078 249422308 764149676 217368614 980915805 220053262 872880987 843728703 849705520 508729219 655889244 840408663 901891052 918170613 957428439 216586615 813905784 928851710 953974071 853872948 964599429 883010006 892666493 589077870 608338236 280187639 789541190 2256634 899862034 60346475 406983743 79108670 566930194 969796719 994795092 929206790 987010831 66429183 344049493 512454707 682175797 830497075 959335506 902840095 941409327 44634254 679389875 897700616 919672292 919253321 944230181 580181278 859935429 923052158 985336465 269686692 650280759 766385759 860170263 661514502 951558765 700267584 732566230 293951911 581710610 399482635 935247746 899017342 914693204 682166916 881911593 389718255 490535823 454552223 797670092 960383644 983635869 585638607 905016590 232558192 993911701 964540593 979272846 698793739 894293948 965779811 996434964 950068440 982238877 294248215 543793373 891897703 898215909 685799489 898821756 367826396 754748373 631745278 803022460 984932040 993213019 544721787 735752798 451200353 762027264 894131916 972028704 28084527 380512912 536597109 594382054 62848829 371327946 632516498 951134388 106415411 218033439 510977489 686689597 914625409 999505086 840743816 998411517 774985934 974951724 910606713 925517667 374401597 591206839 435716990 849483652 210733963 456554184 413730230 812598198 868253548 963932108 247407930 519749030 310437277 787143860 581221402 738116731 753186468 964284698 565790980 890703257 196940122 876589551 748452551 798919838 753312290 919009006 664226104 744789479 102711134 866244413 224170936 540012334 328605371 846592116 439242608 673491925 163721588 557406873 868191428 977415309 999016043 999273520 38738547 457005440 989202686 994045353 889322793 953585676 14826707 534946151 718568938 741867574 474944647 729684385 142271938 602692936 159433459 782615001 585610373 813625099 799065602 929467013 887054914 962284752 122180267 466913979 639836815 729868651 950761790 990930131 734958145 746448317 688651076 814254176 698836467 822015156 676490287 701552330 921196656 998883339 38041384 758348162 480244608 757926313 27105815 55823866 18068976 595979868 493893106 618938186 872052418 963345990 871334440 969634587 214332352 729153020 996707253 999708997 56252848 506840238 250521396 793228064 986276294 996935897 479085148 775575048 53154396 995063039 471629673 760819796 574471985 981974191 80826755 278029068 858468387 955954423 298734760 975100797 25340209 115227599 663657710 727082153 446049148 479751433 407733593 519346292 497535542 975110713 91675839 883107084 348713682 384305458 203867537 550289494 740854861 876097152 486893090 993718447 753140768 967355458 756071344 782960099 254069190 473498751 614502590 927950694 597633496 931107992 974714096 979861560 766187844 867434025 310444707 383537416 274317799 991124724 610038127 614427911 395756291 473878506 357696593 540391347 749581906 851160227 855240671 904738363 38964623 562510701 178185461 433691596 517724896 653874980 657367093 734894744 164978830 191725452 18758704 893056252 299576819 644973478 291174959 524672243 137703470 287942973 388757067 414515738 135235987 514574932 505564628 977988301 25455517 575587300 308692360 415916822 580501992 742755504 97941756 418816748 797730356 860010029 247805776 578266570 792845030 979248238 38938597 937320936 413071106 670245286 640606548 799581958 473804277 517851301 844690326 859742453 9804199 775779697 102791941 688902686 790748927 929301401 599587513 701635562 76125663 950548448 753849532 941286136 298582198 830022539 722112081 905893402 823207796 835516078 121367456 747644632 287599957 565513125 195156210 940951918 457118684 721713679 926601569 994914425 78455199 717494074 573323016 661775458 754366479 909473626 27346881 110420578 666858756 683570630 659794921 899854998 159996629 313103320 156505790 353849786 113854637 389993388 393441065 569145430 999207610 999823297 112924148 932296974 583989202 735866533 156015515 932423594 468520315 732436106 714552300 729980006 942273027 961985640 628301541 633670292 375984200 450493630 8118202 475170457 263205508 351125338 833557382 877790242 139422014 217141826 839637178 980844979 651181372 882702488 620245651 793928720 591960646 941595359 123290908 899225619 316892985 466942472 242216078 484670055 578188943 759319110 47771419 781087129 243520401 421437350 782951427 800633057 923103118 957095188 536559089 786819221 45196101 520627158 891969175 939385939 881386093 986496753 419027751 886574513 911244165 961398236 276766233 967366035 902707629 932096646 107832495 276878263 184202632 311068183 465103845 533824245 359458819 499137338 116516944 964542333 564535228 720310394 172565015 320126054 246142838 394017663 985789078 997419833 628048127 703957036 157539982 395771286 642359513 642737959 357138352 534940267 88502344 279833585 697797522 704260961 517486423 661177794 961663393 975514800 528885691 966525505 36276375 813124956 419678621 781439281 850406375 852204523 13942433 960010289 105164081 373172453 460154927 650871917 72583784 120702300 984521436 990346297 490256637 957856052 882134510 965603007 118357270 723181284 777446934 814858124 106064089 295434647 156467588 438417756 165825065 511726385 728432156 855702062 728860908 757270787 986683360 996607600 618336201 953504505 627017443 890015388 787160221 794244720 872626848 903308179 617831992 715992537 588059605 670959721 254567151 814873759 236278137 794976593 759691375 765413383 612196308 674501848 645371944 688215426 765896578 782901348 847528513 894427406 279650531 453419110 653705072 912199957 860675082 996921646 725381302 737348897 552095918 692990767 879875348 918880502 866326187 910195526 862969235 887232364 105241827 293651779 64093374 740109620 585528286 989773182 552598514 841291492 691534335 718942986 880763831 892010894 340937103 850631696 999717015 999847428 221653761 667822598 7217661 969284419 153008703 753943137 358252794 586596746 249481618 577946100 515643984 645531572 334760726 855914591 247081361 866932192 506423779 830721023 764201552 908023277 128450779 326431071 792004884 860922274 853550291 951471216 338205581 589534333 942014204 970949107 275667439 946141501 92677858 691047386 442694848 631290084 935417251 953293510 415902283 896421629 932356533 992841274 294731525 600454104 739066317 846083498 810126657 854474638 133232358 178031674 295549261 534282587 63036373 117131952 67922159 550416691 880443391 991654732 599484287 840505010 278547709 992748315 527540502 953485523 995835667 999075509 246794234 797273326 94244879 417961056 738617558 802995096 703485976 783768475 583346446 705201814 477497329 773509543 775259871 887686889 156644780 378129923 463022448 508824148 714245825 993080503 883353103 982780241 247619158 851258836 773498327 849014083 665347370 708795590 672878063 736127309 149845370 744745703 438818935 742403429 192688597 584898827 258079526 936714948 789169482 973151770 425611241 529986161 190109610 650058832 173603477 765465919 785619390 863420309 984404696 996432016 224810786 427581169 71665300 670271962 688052181 818655640 634574195 705213093 85172004 429905629 866323680 917250480 613959682 919249491 44045150 624505159 812124486 888659507 335179406 649930445 757921136 921884741 693273755 784878039 786278126 891504232 264080687 631266924 863000273 998644372 746710708 812069099 860650111 965239334 915070156 917810613 919822668 999150151 408029721 473668768 939920918 946476895 203979841 828108619 942376327 958889161 971486187 994484279 202363094 434515091 200564649 290295097 169713056 388320981 240336146 242239405 859290545 959687470 610390526 902040722 542257027 938718817 561836199 871448464 847659300 999601965 134173316 679553234 899341413 971526570 108609477 875885369 212939765 733119617 573917335 652672160 29371064 37549973 813474922 870197215 190448129 262743084 937959677 945163159 213985521 639814411 529897224 988033755 327851035 672912159 502423355 863142678 37135392 687572594 871615611 925586143 187188366 217401939 527714154 779579336 873953998 991017469 953087951 982203433 344941553 983938820 279967600 738498578 441391638 514646957 494319269 814325511 450177813 539903996 143480767 663760952 34318499 484518569 833478690 916190291 39119484 100471153 965577495 980606735 14547140 499688037 128024365 309831284 543484791 849981687 818490745 896410318 545464674 656979582 467556638 546620947 315758809 991447467 351597023 365087703 40830495 468991739 193498507 889257685 521240714 693563747 994017436 998941038 262990286 775986944 671606827 970596882 243843521 255148995 462745283 470233104 944864821 956510765 899036696 938583472 862767797 863475696 426091066 527540855 974169205 981306382 873532284 997415564 717815608 767593963 3235044 475088891 643118635 745474262 235990999 276058227 685322259 941788278 108998697 641949073 53285127 804666193 541017094 685525813 282002036 962202617 625343777 690154922 243086381 913454806 645536117 857818872 349522115 519441113 8149347 779367434 58078567 999351859 482330770 675442555 890161010 978585877 547602544 641798132 107482758 654289585 684273024 970951746 924357582 973538192 491846422 622172346 416715773 557112830 121872324 458100200 292281423 775463549 894045507 962861935 560395359 982045202 503318668 929447039 770849991 995692866 573012220 588558533 454066932 556001188 454450803 917585107 71044278 562086345 740309409 910660832 965479610 987275081 364247230 939405579 785471629 935521609 546532028 877576932 639614393 914706586 740790252 877201054 107091886 737607982 302989805 885361195 272864392 612735313 926386112 934682880 676818349 680804912 210639458 872456117 128507382 611239603 104878014 835464237 381303002 606446865 6726495 451062472 802776959 916707682 874511197 918495219 282122243 965746479 752569290 898608621 939718939 973532821 963768292 990500007 469699275 857839553 257304690 446897753 433575291 749444021 212852049 763120657 647819664 965947447 268994857 575419221 488807231 929488862 325194382 631214399 485001069 712839776 98908125 732145372 218897601 490736109 4382138 278087320 210166494 847543854 991181926 993687252 482055965 671636351 212355230 410238563 224757056 226171261 713142331 742653574 530148815 783438716 50024062 312568046 452726638 987415976 786995388 974105627 147170060 716927309 679651891 823523766 623538027 816744890 245297169 993213537 942896677 949805360 287061728 412845320 282698297 915627009 54764451 249810496 70941283 935365834 587250062 928018287 635693453 706407309 486183473 990982709 451098523 577548467 126605474 565680225 296118097 683142544 286178734 811530814 243528313 553999971 444873260 935609947 955534813 966188691 678326965 762322948 207228941 469711993 541258171 726100032 678372472 898783378 515562595 705509512 6116984 546647439 377172433 690650651 129210812 401862090 864087012 912743030 560884896 813296270 23025649 953445911 856337685 995797606 606309145 995269246 214872330 797359680 696112265 962630498 113027283 250677880 325383879 896597006 34422519 776732044 404772699 586371393 375378428 476979146 653046210 763711638 293120954 793860577 836872526 852813318 538846701 938000973 134295512 242720570 232539684 413924695 508629391 655069807 837267169 877980699 983086448 989933042 764419093 937780912 132175543 362316158 196720737 484182391 811243221 856652945 391193972 637807011 364217535 887294388 508801164 666390703 773489562 850818000 135335555 761267726 736175012 841731171 595895965 659278565 455807852 508629767 582978561 670803576 695285288 875249039 842745987 989424370 51271067 377689664 568050392 623272180 742674444 970191464 415499505 601154146 632553787 666986655 605244476 761202099 574292525 817361492 870360226 915458152 92205575 231604334 549930610 672303866 126146604 895126213 678244477 813486182 496869138 567463205 249029995 915399718 681614291 894070798 459671779 633491783 689572253 906023830 665746761 952947209 621940925 781721572 139359850 489279424 351953967 766125223 216171185 726343138 215457285 530917784 318234846 867499169 95179186 379827781 830832709 862324399 735753194 824460887 230771777 978225244 168498774 974364014 103136048 398775299 299515869 812790432 90513339 358316432 949533419 995786914 311096605 972543636 723435320 785445959 703907348 903494345 74806466 649837717 269877385 290869130 826785066 947300394 240920924 606807865 496951860 996829429 590245623 935333723 608925900 818932778 652481245 822496839 636512198 839384968 903927831 972207376 397678892 646462062 305432579 921907539 840882643 866276964 429527213 781920413 716028816 731626584 727675066 747290965 196945441 867714616 671388121 732350915 769621623 829790133 315405210 479064097 990977503 994610295 394011799 994303471 835598102 911113098 395917440 779875347 806212262 819179701 909194606 987536274 385651505 767221765 184628028 796374201 234269961 959559412 519896907 530978759 225136561 946843194 556963555 791437580 240794753 911604579 354883532 700241045 484868352 485409868 832630117 999232805 216691046 497337417 66589886 943797445 854893926 879852132 90508625 163586787 704392866 856382431 626665267 981054174 180082970 993379922 770901207 963346545 154055575 471888089 472742799 648565622 4290742 431472725 906944311 991015399 816925144 953680334 44979284 464558957 516765683 702218820 105826787 987596205 915625071 956079721 814941918 984325365 830341138 859189086 97498614 786809919 593960700 941524046 992932581 995401047 94958116 990398125 688279667 728570243 756104482 826593499 212325165 384834281 634491402 783514330 874497392 975103345 971391936 981239955 485762187 824958649 803968479 831376103 61616971 176131534 439541543 833452728 379301385 997201026 369781778 381076552 233792568 787195664 255187377 538423954 756836074 811710854 124619647 827539268 178194437 570839432 31817692 232598131 930643567 951988092 383515541 907712731 69707921 868891369 222042163 471610650 836690707 871926886 802577066 823015247 830886533 991095829 618076334 935472467 793945375 951575008 459936579 491080944 239466162 604861970 416462278 764503203 757265490 998752664 55109098 331164233 478444174 897283863 988231140 995882336 680931443 885889042 809144206 876943288 499729999 563051753 984330026 992326076 717134737 816546928 991177096 991573840 83891147 438174790 181487159 966874400 862238285 995403916 391358721 716988492 429792547 729992962 570622372 746060561 874261424 932107712 67865681 879914667 663125205 787137714 570079065 705372722 13678654 289032406 866668439 984889757 12250076 851771175 203674364 538468173 275996093 539511781 364104263 685755917 359135724 597005827 271077942 961646920 113524969 191007798 251994273 441938205 82304288 832747539 877879651 889462967 592547021 716182842 131395499 270817558 313533243 497407184 320714698 528597227 488024104 953117147 130280729 704702004 194689777 929894686 483799158 536410905 193732925 627679429 805373737 838744232 795134712 816643393 163572790 777017151 120109905 160030402 556932736 771311472 215505507 878539399 392379411 517918734 542351404 618016094 838518833 935569374 688505366 934925496 996650596 998595498 460247721 869614146 9819608 993298302 423103386 727097742 243123525 852834056 538935471 676165611 279779868 811357788 925797462 980299402 575299885 602948458 687549631 966403706 647272597 862036312 326008672 471191411 507258789 777278663 37475278 443581844 577736727 632347405 620911784 979405917 460223107 950479709 564986165 730065846 407626492 703249922 530194990 695407148 150403639 589938128 873349653 995582890 550554013 802153278 45312726 292469996 885247500 961746031 857983030 991499197 904950452 911423057 45528528 851737489 768603035 994079465 970751263 975054378 818930869 848892342 442050461 917152152 307160278 895751821 264438926 856051570 957997737 998384168 998917161 999064039 260197724 527021879 795559642 987791828 261300259 502489487 759506151 893760829 803241048 917911957 130001059 265400624 104779597 800779316 942024407 998452151 927178488 953576970 623356780 951586332 948078403 958270102 82566161 253480138 390984168 414334480 784112803 956869470 674892335 734286447 666108301 830659513 812276218 859885393 276709096 644783467 824003739 946068036 797880901 891282039 291963269 917626980 820031374 990293855 818137078 951749203 906127057 916157408 802204868 961761913 12663456 349486809 78817374 219102809 54427429 966700318 427781473 771607399 131234326 873055226 642935810 729321518 580634154 881986027 801009217 898159008 152738442 736304270 579053084 945417671 975599074 985308529 313071644 464504282 866833992 927254961 687333091 852572152 358354554 849150234 176778289 619065640 717526594 805728058 768053244 828955076 877803678 961115507 189999709 615491632 305749437 961675663 808997075 965106435 207015619 398230457 65803118 827097937 745253394 840683102 943158007 963155522 814671334 872710808 425284415 722582364 847058182 874340167 859135542 865911137 754032906 967815594 54700777 874345426 506954032 737967523 713758032 735391179 145095871 877770317 974712148 994070695 533968809 742386784 343721787 406656847 16725423 563588245 269435579 559572291 972327227 990662454 533269098 922073860 314587112 919126314 241454802 976084752 576083214 655627467 610821847 616650567 456946933 549236485 517148724 741566159 771448556 871138467 142771058 577160452 822154108 879911509 515118632 776375529 882355535 903579487 108430354 816932465 117867912 837523131 906454638 955903610 6127324 747900219 541071263 633108261 797000708 906568243 245872991 429563261 697202910 896183909 86888982 614428310 665630639 745907731 563889794 851294365 791088911 985803230 314852129 699155687 770419374 978089273 986279473 998371424 64056079 788579985 314680922 386612314 548659350 616960283 899546032 967567141 835643198 950677875 128146629 837221152 539020725 923819059 36030972 117656327 94103689 228030953 529910532 964245242 952432037 966078562 877472387 955221200 47069059 272355366 362408601 392664089 116317529 371030200 11418419 282268512 254465075 846386404 703105548 750125541 432198920 696807356 624200165 729952802 792480351 882397946 164961186 464335068 129496862 488806896 827358315 974246648 440204205 874011920 84798072 143829451 685879217 818602658 811547637 876982914 344818339 500591924 992109408 994338857 687110596 757816727 267825518 735407834 197306449 576902315 797801394 941578301 164336498 256888119 831368875 968325445 133305582 737765137 179665117 213164107 904910004 948918028 153523980 374360256 113202361 515388323 105030557 109456047 684599578 795066999 282919566 407796278 777323490 975840598 189071115 464564618 860326001 890397570 876245799 877578921 399989816 795947835 893047914 920401418 593284979 758344401 674693182 772513517 761799046 928709284 242667005 888190573 633646908 925914832 49307386 544964363 122018356 622878577 417886607 467552253 399946240 686822310 421968952 755459711 494152699 700056649 176859321 460114101 363393985 809897541 811908208 989230737 712199620 980535964 774794217 894797412 919078211 972316048 839157868 991514090 716150059 911265268 616548989 859830367 124230536 252964611 323230827 480681345 860196396 919383813 746729899 890623808 410570682 595932768 957528599 960229677 448167163 496514314 472901314 722985125 787425571 972643420 39966459 822121025 116075749 613164912 25228850 282364487 555957766 602834771 142583802 733101724 10881240 387612852 676690190 952699317 235597820 678489105 323107569 675396492 904017235 940437350 552138793 679296773 578109436 859003957 127663608 530783802 604152801 710287827 292215516 502511897 469277911 996972662 747199594 757077699 522780052 845340064 90517129 985772197 438760765 689960501 50923279 554283048 92330488 976223104 79643354 280926502 711012032 916700332 147111627 681322636 790436588 905515714 820276651 964270503 58441035 521611617 511889008 672088123 652436935 792631226 600270761 766516695 749967113 928421649 873606545 977725102 365734162 538815917 60612759 500295759 693378717 809484700 883274982 982316911 282809254 447404888 600851435 618448103 378333907 542204823 608977739 737766748 677898683 768298922 804046877 976149139 750865059 776739197 374223484 394280995 330269573 341591415 68818974 84540821 959246890 993859847 166366660 984541276 812271922 840139966 597332743 758944430 526742778 546647315 208845771 398157034 671424479 967755242 35399549 564935989 585138288 966568374 294696884 523290018 690146457 832829374 797310205 937533709 471383883 600149916 789970679 919247196 896170224 994359753 446633164 495171262 178195387 185679007 688499154 875146836 655909884 877726423 614518926 806882760 842175223 858541555 201612270 579941586 349472183 638874093 85663169 936562736 710712563 864316967 32350923 421657222 79886662 966089665 963256990 966840469 720354045 728966558 986096113 992019632 527486475 610553529 108412993 768410230 927027653 980572822 624701339 944022858 468724127 567734645 762151651 909394590 220387095 716785638 265090240 561767774 611104878 810808965 958658067 983590796 387423085 693039449 911204485 916358796 210638451 336916601 217017008 223720473 343027074 428640403 532476746 889879591 353663576 532241415 700748 427850208 841481778 923326444 102770133 575337577 683614202 731375005 145748947 426119595 396484967 514783969 727888711 727975620 129336687 945245461 600430473 815994755 481162070 675533440 307778688 584856127 889636994 891270638 394251371 887830542 482131862 695807557 257194911 577658185 645333944 885275592 882832734 936996307 437875269 603023745 63189043 424137062 872481488 997946839 356592826 427613190 353722003 579613889 667724364 816313836 960585000 986399061 852696071 979479237 37434434 914443887 771186578 929583916 158717279 627841774 990654909 998239567 396578126 687183373 278591912 584508285 935316356 962077641 10092358 749009706 169326492 424633978 118647941 471184733 966737923 987061851 915111512 956670414 663881435 824968119 392945354 623887884 211797232 741590868 882236367 977328529 558677459 772432763 150095162 891996201 948900309 969474100 258205061 303806840 802685575 806745190 167611708 538281064 271982753 370836113 26941046 166656038 940974803 989802326 910463044 973554451 631168268 864983610 499958208 541838063 155873797 763802670 203359236 330774552 574311215 697523230 700217311 777964969 276867667 810654617 978219656 997578786 231998916 902343085 297991691 714500540 529011994 882210147 230588664 648817729 466725244 790046580 989056014 994475124 696406180 725705609 155360245 721653531 216723502 385098319 275023205 427726290 420273636 518502814 841711794 929463225 313334228 584845344 768785144 906249076 441099617 610959042 390277546 816477499 753404552 903795317 810266086 973600786 804884053 885953535 377903915 727410978 828424426 884910656 710253763 888036200 540656457 891010141 404414553 413905529 467653341 839757944 557824457 830227054 243043107 572253104 826018092 833657461 597981304 917390742 246853560 837864943 157322907 716386202 919920654 975363811 976061789 987877169 511128094 696196291 772789071 951862107 80964139 859887016 787089755 886794862 257099819 641083915 330005141 714018363 674098670 691595485 413806414 603051699 497097001 717693760 404993882 584169867 118703914 676050259 625464795 769840818 116810785 177108887 634922562 739814368 246964764 712382377 166720069 423040292 159090534 387425191 241504939 688811387 351018543 807076972 542831145 793712707 82647037 830789344 5148150 268942824 98895924 805975416 696529121 887501608 90110246 396203138 416387392 713863978 778629674 835896678 923662045 937607330 208614553 222167965 812557989 910567546 936070621 997532344 107735873 467365231 955024941 999882329 601935550 977916078 179795041 366227673 87260183 643069664 836639158 841519942 314920953 655793526 930846345 998665417 245347141 418123808 919665707 938816755 19727415 412793956 181712128 292637359 860442700 921665504 425164244 487291047 73813575 234248506 344360783 763916823 419564143 918053495 769071918 966269153 22522073 896854382 788453996 990050007 83794624 473613894 362837111 366815216 841505563 861286963 42046778 101100360 920762497 986332973 890181766 987003695 470591304 954298473 290684447 956521093 813653570 976155774 905542767 920307669 703994708 740417914 296766179 741049738 171097734 905888834 496635276 747055489 594729984 769179873 202413632 801341093 935000166 976820068 308638664 548380681 8684834 344602830 270885995 997792957 554770901 861247365 677889772 881895127 431681237 467439913 922677827 994624039 760774985 815536267 145516675 371925341 672591083 933790887 916603097 970813830 518061212 716746411 610718367 613406066 32488570 999966146 236513875 684921054 888759327 891430884 852680116 909008479 599070422 906992448 489659451 671444563 806009265 940622223 173645140 392849343 735668346 911110930 862685259 936620051 515984112 827248663 264839341 363286123 459528705 854493840 118681242 727270058 209789529 934871860 356499134 552897449 160317403 705588495 517365089 841751830 178346689 696303046 720250695 830979079 265848590 681287810 901286466 929629724 880460000 934440341 553896695 622897340 886626629 950185013 823651944 850835061 366515401 470256454 401251546 666481543 823922502 864889625 223738153 769476854 549121863 720345753 181901688 259864008 603109543 618695341 602782880 810694144 373911347 567697879 286382899 530746104 982158695 985781553 946465738 956432428 619967749 953986368 976835799 996315384 729848155 812055554 379355021 521406993 380532735 405635661 543211707 970643959 430132560 461870591 892767882 911024793 406555803 706020494 47260621 850398394 790816281 813339416 35780371 180193516 131157107 309052121 16564800 586368617 860357128 892737253 755076392 993594341 290312718 622438024 69177953 801455508 889981088 935960827 986386671 990275957 599026958 963865743 282174432 354424306 872729166 873419542 97659063 768085376 434519307 789246344 586843488 643055352 227728552 522492966 812681792 861292010 698265224 925613725 469643978 612448964 690252413 940407510 412370489 881868461 25328972 141403287 149888277 228077217 420641165 563967595 613294133 629717445 74112962 913560625 768981383 919496606 328098845 474811885 846195616 903759151 207834973 830057601 934265795 955953810 884958885 989580177 827915357 980457357 141638046 504230201 867740268 972210059 570567251 653614838 797871094 849680227 864219766 926098356 797131931 838290357 600588132 690063016 239460937 814065326 44587297 753959371 497410622 683924885 197594468 560983508 7802703 917002353 672706832 723097109 576293300 842695332 654248028 867272311 33150896 450459684 87316111 163541132 510644089 701405182 279048665 908315101 418670429 829025762 214516818 336518117 323976597 773599692 718229749 813898487 433867421 866769977 794659880 811359444 754001177 781281361 297033521 462899728 185945382 388753472 113335149 216224979 981628823 993631446 745744516 788577952 56880365 946447251 555860768 780772184 854586409 988476796 583446802 644666376 211212329 272880868 737065150 752549158 210170114 568125464 814785885 973133880 930838304 932936338 156711597 944745205 172715841 218522603 497798719 867299240 162288675 453262815 20576052 262403984 831724678 932797090 810254865 819651794 296516282 783243784 339036111 541009323 292056405 581240253 917031768 940959122 463097231 803301213 899957538 967518052 560457133 758084811 973861355 984071280 110319291 684413418 621682602 850020739 361797068 720909110 680912554 712441027 185829973 204013417 654398568 960891534 419254782 489784705 169485955 642918742 329775022 886020253 668149147 973223101 269658451 851652596 269670642 945015442 655704880 808722524 687816862 735571310 384996147 799477726 706802550 865693007 53344773 92090281 693150709 743799915 648250658 814357627 269894562 681808099 232723810 261722658 750160389 977085314 590970262 745567053 566937334 955059254 125381684 795857643 461967498 724729709 14282759 750971719 36621835 51126916 373532717 515580791 122228244 390693542 735540865 946911701 713183252 944998273 864573395 995063544 972862855 974430965 620917494 718985452 345525242 433501581 840560675 870707272 70619586 501017477 144231132 704066377 543655451 977273558 140439292 188864584 1716137 867125971 448086124 809512081 837648269 970459400 277190595 280686163 102179388 369615844 523140716 855486566 857553804 886941916 43147053 974494822 722857569 725020815 879919331 898916339 992717587 998417831 489017346 814511266 404372223 980445200 639059653 862016255 698422371 927821657 650693804 834258243 70298200 493324453 675389 459455421 33709504 828215905 911221043 997620916 805559417 921155454 998747718 998759093 281437691 766434337 913980164 928984810 582248778 676671803 37407481 723161612 116708101 955954081 881417610 924173978 748281105 936025754 530829727 554697867 732753619 872487744 697097423 864180073 751386154 936643718 698561073 715489721 275908477 509084515 18961976 290991926 352808329 563305069 321200162 889382403 319822763 691849101 45274996 644322270 978730254 985398932 978456882 985389333 636939206 854510249 649151991 748690376 687957120 692019214 527270904 833166538 266344810 703266985 599994995 633932602 570412713 875895593 562140155 836190909 790929738 954597784 536424643 709449652 209410915 486935198 45943197 446911264 877112302 923176738 922062011 986566823 789094235 889150326 28464474 204685444 150345786 734357489 269380284 388607489 137716183 332956657 638908489 712272659 897219045 926472517 448178943 535905864 733799792 852430751 57492575 91204312 46322346 592997518 611820816 986854391 237487677 677876899 742127089 942157455 59177610 848090909 801864688 955608135 32830827 670052915 540533432 692007851 19633442 426289986 63531840 88764466 504393865 625835255 537140051 931371848 322533368 748716308 539834802 582184698 127837694 656835105 470293909 803831591 346634413 427054983 943333850 957004109 422346260 601679215 866713789 992100964 668056781 768130749 629616142 936332201 410455914 526348111 235629536 508867453 284603290 663802150 262107546 365131642 171472090 748186291 489921740 659064732 141694174 956339013 895183081 937039330 672194321 832726185 883382670 943093895 428600283 969035647 533409901 962328262 228163914 477893947 513664958 951256717 219457794 419730861 354736974 733097753 940105774 997770744 939343665 949460405 894468300 911272031 842987859 927915686 863684770 930745577 92451929 214839387 910510764 983108193 592489995 668073814 603542147 853611202 10613096 894519014 558885654 652154018 824279075 909964262 310706325 914726726 434374011 629372101 872048738 939453468 332029840 353615635 611664235 972830460 821027808 920603817 753793920 921568396 274482728 693663755 414090508 937068770 629605762 854654448 433167509 681915904 591201523 917173360 746054006 875107033 458780098 718098155 774788701 944634368 417000165 448193301 396846651 861219109 789466884 823883630 439435014 673038443 386518486 492692412 688836753 882003211 622470199 657777693 838872862 901531973 39745188 507379504 66536126 83299269 441500001 908974120 265091546 517339954 222068650 647646940 52485688 404751694 58192908 123764063 976715651 988984723 315535085 628961520 544813518 766174625 279889319 315154824 754555731 981224437 909544359 977719995 645535307 695534616 993096009 994720187 252565788 731061948 755640467 792571845 317666071 508838430 520148130 947779429 917532217 940230401 230803388 966893002 89451570 957941017 770933021 866410930 323188453 873774245 165392785 989143009 144462185 284306703 867501919 956759860 141377007 697664062 552817394 904144069 43799647 692331634 746160408 847887550 62771214 824660306 936301852 993961708 267012660 792962697 482800538 778310469 107738390 393046731 597267722 689240088 381267654 811189100 762688709 868464253 140114997 173902453 385933755 759096288 843776597 946721346 847697293 982617733 285267593 631017857 401925223 535047225 33872889 292180526 327234706 741802604 616092588 798515549 432007973 762082837 316929277 424904649 879428825 912813865 552735251 640534278 748870378 835122453 902065904 950829303 772138713 845668995 99759267 989134429 787325076 839167414 633829026 746752028 35321536 648467670 147449176 623956106 680368203 904158569 719064217 748077886 492142365 655782061 43782360 619168889 896828925 954475307 241905403 818583078 350244765 925024743 945899290 992667274 779735389 909258174 458044054 766740926 17025164 18719295 535266740 811516044 144618667 769147386 36548842 748988682 666411105 891514639 596910552 609085223 293201961 501519305 704858343 736098028 891686749 973500085 872822535 981965462 865037936 883864015 177052149 183664124 484853696 728026197 589859508 613452349 454960135 711760492 421821410 821517714 26508 766618485 722602338 860163971 734513585 806881585 201029675 931867692 690861982 868441445 559936110 661681463 622934996 937275176 197995579 848659841 383109391 541093582 92272022 426612904 123928579 409020962 740535955 805176562 217800148 369117516 159601249 555775119 623707962 655189207 425241328 989979755 464819646 992193320 771144451 971383541 765263395 900108464 359307548 624109929 715238554 872147083 719073578 908609692 303086911 588004983 656951089 959516296 191590776 933423695 311902574 919781800 726364711 730319824 239831682 545802208 112209365 662344316 222305770 647436762 319715208 676675802 671647195 692361417 48942946 74993391 207968939 627215595 807386943 855337345 328580177 417317977 105041038 386624660 510206353 737503283 618091768 830081493 274449302 586753637 430549317 863880419 993250139 998175951 938667201 992157518 594820031 811055705 293294755 585750055 995484626 995681559 820094682 976024321 144782651 391336196 566968013 836495560 469972902 543929519 467662402 897133264 242556286 911918216 213669746 751078637 563366370 955334904 705319324 866110215 865923020 961789943 28691841 263456021 992894991 999060177 802674400 818512240 570280485 651681438 127060700 349441367 274282292 287063788 827881620 889177186 554837396 673204624 654422712 982014477 106513088 879349046 669249742 718530620 871959324 979592623 187319283 945379124 278010780 761303935 215858176 464903374 54503106 159070090 122559647 972460999 277237738 446077821 890729021 976380585 828223905 896769497 217113142 762158397 751127515 806215464 802680806 830415064 582984635 676635490 982821919 982900418 554530904 586686701 819870285 938080099 561384364 918252479 193615604 928960110 464931066 867928350 352138047 887054591 20127808 55585415 199978472 989834722 497306882 656246214 767997540 784672429 99561084 270858424 930104126 971051289 694884596 859774105 611912109 954918623 715798078 951269968 819580658 917128300 641087549 693689053 460251451 583398884 339782781 901710040 132209718 722928706 793414700 927570928 438823307 675597749 499896395 621085633 893454787 918907501 787620959 996057135 928928250 931071389 894305832 918085780 474708909 810218755 897806943 917779451 830920511 972782638 463215824 596691160 404690354 445355755 431201284 437022640 456083775 983187274 501427946 576416441 186569902 242144683 291959524 564496704 566851656 715854660 470465498 911032140 93751987 915508130 163363917 969082389 333685477 831086391 373349935 946270290 284747343 503479661 78586840 540369124 87321050 138914222 832333068 843861658 86780980 371322704 624857149 954312163 423382827 671308505 603521780 753538267 851460526 995491370 527168716 753817641 357461448 881976237 456512186 767026894 327298004 921538679 939994142 950891370 530015619 547117507 786039620 839947755 269175913 667647531 306314592 423977999 756394218 977244354 124885302 535909797 490429717 509178707 967139806 969511839 556095159 985005485 253524869 755055436 21702518 216251444 805485117 887145745 567805830 700379939 988589035 997480867 438722811 552451702 110982083 112135712 273348697 858130540 222299464 991919601 809578632 894472355 65319630 458714458 264645155 705594755 789449304 800098773 346889445 727890020 360602201 524667330 494688508 973057677 391404660 751098340 581151434 668093005 400088183 874437321 977901224 992367611 139547764 494504632 377845230 671613518 597028767 723822432 701903717 821026226 1033552 229221268 748202137 768143433 899387843 916758687 352100364 649037472 599116190 908486403 910005878 985244328 456074649 987903109 615060956 916749329 933551365 990801782 218019607 344250201 52970839 228720529 357451357 823804971 802615994 948435431 339725447 871743121 21069730 799321610 198754244 215147263 625574965 855576562 967300728 999691375 473545480 744440232 707612101 730960877 723894533 988593823 471322257 879527844 135849666 859930915 129172568 647291473 244322367 715840015 784424705 928209310 930876017 999593595 245906645 477016365 188971161 198083414 42917520 947371355 258623119 529633531 628849271 839955419 136012461 167480033 880491708 963070918 991668955 998473615 807901739 889010081 590810382 697439599 827871429 911671602 999620882 999831036 800213330 902568639 844699104 872429878 171838521 568177780 248627691 451242154 632513182 660034029 418691588 712880038 207526559 651101226 64612037 292633559 190195727 533101621 942124187 971651246 412002144 707647128 115402458 536185923 465097669 621225540 164816727 556121121 973088818 985668275 590575247 785402156 463427763 805448608 164568057 542902673 326434017 969285810 861376476 975257872 399365778 423895746 265411894 306322022 354091044 873002037 485216981 873285115 483969133 749539494 812209216 859197606 206181464 698356033 595957971 925141922 352255069 799168634 553256608 617288508 491139665 973625477 759492775 777859625 209439095 859629376 294653613 835772969 361921432 958142852 53673789 648179679 411001020 799789740 878454664 941916641 991044120 992623463 474645734 737429909 426956950 757055147 175331063 781938464 830710064 985608677 678109427 969806790 826604067 852274722 316590037 939750201 579682058 725196026 290286765 754713880 367609009 698176609 465369676 624746680 408514112 729581653 118165390 422173160 829707572 941032906 271939673 913934806 128063296 992160784 852051211 921382813 308140797 954036895 853373992 976548851 929199934 987120508 660402417 996820257 124889224 633732296 735144621 882147121 727314714 753745946 640592628 782951586 925924240 926400720 696436220 989191685 593610864 943184360 118072845 929458986 870069999 961509148 368875755 531029670 334394742 371249842 677066941 744880286 890313389 947556580 565676102 572250027 342339524 659212177 364113513 928013497 226454570 965847897 179792295 441945582 896004779 999642112 296869499 403815355 56195414 128943425 392557910 418886986 790015880 972062367 890313122 940410915 304114801 463743647 223611620 340561013 177169174 269595100 170886301 311312524 66357157 96463686 397067998 418344390 211604350 233257049 225970921 527309512 775170084 882779141 479190396 516770326 927601169 937435026 815537219 830189345 27302163 368951419 659116338 731986877 811474297 927816895 317721615 392416673 738280465 905500349 786569188 817117850 770921819 842935423 261020108 568388421 290595291 608359125 114477403 455890530 406508941 885084519 239366233 405894385 290840734 478379219 353985497 928530492 927630866 943873965 376107981 665153274 127090639 928731691 280115066 478405170 740683356 773073262 768765517 837918818 674489126 914386229 121129901 993188355 359285881 798099424 929111194 963861439 372516814 375450098 501126993 739049306 576228770 696334703 757639941 909470273 944155989 993789649 74669316 912664932 407256501 550334648 196302170 565976724 265239937 886086084 329595393 806879056 485368183 705026409 653141193 684165253 412478278 704337845 605737647 854007316 310290909 936474513 621349302 836799607 560489582 854226488 167130460 976565701 249859307 965286370 675208123 698632419 37074708 60007662 638657928 648381971 904004233 926070807 184327896 368088572 339843669 988262976 85811833 742181729 343926162 420386107 456461224 500201170 186206229 999781110 981733555 997349439 38947848 72242051 695348189 764580923 862202049 913484070 95258277 121008563 997193668 998724656 383530226 932891945 7773325 9107384 936390545 945491481 800015823 967293157 534722093 949540191 899267789 938555458 648107333 822843943 358866478 874839474 384882891 397172510 929404421 994966717 756256239 889015401 469631929 961802387 958191636 960792725 172808507 638236085 692670762 926388322 617332196 922581842 356272727 869398675 12356139 575022026 526783036 944019390 841291030 909695822 396288073 936380753 198438385 374400694 293304776 424188873 239851060 388540017 387947304 883911563 248302038 409520560 295672324 636054642 476465398 803652688 181925042 847904751 483447405 920832653 340872406 659699072 850557755 909846418 250830370 533762506 455687426 817371719 353014693 768043610 866340164 976244979 144498983 563196391 17587626 344886476 614635456 857492284 250716209 316623541 979781484 996445443 221876595 870451015 688985255 738368924 73468935 206809155 348112967 687897090 895780710 924822848 541487755 637480383 253355304 360392751 861001128 915558654 784654493 983143710 138739822 147009633 83683906 860017710 7747797 915530797 216922888 619703711 23978487 869827454 293930373 437969824 855719496 922637365 41033140 355536767 703341165 731915905 685638913 790709229 523359831 900541988 448153443 694841081 998500992 999981008 134885291 502707806 441533917 694732295 783804324 804310740 447700131 715114657 880468479 930805522 992977925 999790140 456301889 698882486 76843630 517746690 65325521 232896613 515178674 649092602 505221344 626870112 166169852 190175097 97951523 468239680 587887672 711237154 480453370 931502276 542259437 963566793 745007522 747468595 711768778 826441322 306106567 592682538 744515680 965671707 534876240 749634784 248649146 623187422 360966858 450161342 293288189 517181031 837301961 972144470 724178658 758362389 372300987 846652235 54809187 331198162 658643309 782722811 152280635 500824921 800100916 969892595 812539934 916509645 351680377 688764991 175617447 876289425 336143303 907438020 589000425 754416730 578755110 784695759 542695258 596773105 474537903 865061247 918002322 954545132 633975169 823788462 628744279 742552236 687133147 842353474 980076907 988008863 879077644 923122185 291451678 933796664 630050243 730953480 860218467 997635177 484077129 582776054 896244541 924295678 220080467 312623196 231139983 817406987 677205315 828507997 177705861 319212585 12587248 914822278 876059021 947499607 79907366 129676850 158349615 321304643 16889258 645501256 719749299 798474478 635704888 763253284 549626554 778793854 829288852 951922593 798519738 944186973 108669137 998087142 824405868 978707866 469849336 595152026 643246224 991969837 126365351 888729134 787986157 858923806 892369422 905032458 432469634 883939804 510912354 716038457 617852983 941327913 835254130 872676170 441019415 808516773 529716202 777765390 750150832 952250317 489436655 666692995 609910576 631390259 710899948 783218600 355459265 902356273 775271862 958971684 613250760 946216576 524107840 633820196 800208152 834534874 649197489 831534570 400283095 530033116 788938746 864405838 859089558 979778436 258218842 917362098 264831962 910316060 155853298 811574233 172784576 811084657 176940758 849620752 521414974 881983957 299017527 306504482 719302435 839955883 703939009 873476854 523283465 923306108 193482802 671178563 960508154 976237424 633379508 820393260 543932792 866778718 774813737 820228205 956685239 975288412 217742719 579432253 141772694 909536935 702450182 765236693 640148718 742570282 769722959 879450547 745962491 943161852 56669283 692594435 807924509 859137914 325950450 886007647 634835903 899153373 612745416 744669071 820056557 920565891 41750909 776287831 338508939 922220195 187420714 324125645 156176954 889989178 944947950 954196699 437243904 586042067 655826169 945968736 266560484 497569148 711734409 913716891 393588408 739015369 831504844 993997704 990292695 990899923 64591149 962331644 372380040 690815093 166645126 780607464 900598141 922876066 524095531 872542466 762022957 810412502 799894877 855548356 316509846 628190133 293288278 484335018 775129001 864955371 990469104 990544385 649404097 909583871 628116722 669451679 756448304 851419202 115192625 368238560 500147082 844770946 441115109 994970688 786533084 973415452 674401061 679623221 420433555 727629949 236341088 966334339 750242534 790120886 589105718 901504231 531918765 916971266 987930141 989302725 8615692 40861777 978053716 995506609 770614917 805967041 345666640 694642174 272780450 558680016 477823809 492881368 958759512 978882754 138804825 279324481 93577736 354246174 611793472 635738160 867737909 983050189 39769431 372526718 45438347 925114307 595177007 795505376 131355195 299431741 144427438 645917623 60171409 322609048 359781374 985377289 559345766 876070963 312351978 936623828 790321486 855902663 361506600 559548107 109257061 555936840 232853557 898073365 357548463 501725617 380984686 955373931 539585386 791525128 831803214 874932879 16219038 474335900 743362494 895143483 168244947 231787644 122576699 969429820 864744579 929610456 389111396 492544985 410963238 924964623 871711497 989017323 765488013 907875575 762874908 850365179 501529833 944371151 286256235 355042390 854969000 921644757 74855327 310043098 272453048 587762573 412644576 586417355 975547157 983799434 933115282 963530596 17686841 467776628 82920559 465832330 28799133 424278315 344575774 795837781 489857403 542379557 336693569 508825268 989342534 998169740 30545839 62798504 168544849 832098133 434739837 519595348 587150851 589187616 134683015 931323953 463025508 844323699 285133301 822803747 79565486 949486838 998789348 999371899 150074059 392037676 398339695 474654400 140492707 930580946 481752084 645480323 514832146 837513027 896328262 946019733 871111773 872719188 413062797 552630472 105130193 347192820 122741313 924008533 988701579 991145563 832370385 854445146 875965899 963911437 994185296 995963087 660984223 698068011 187493296 491417093 536149411 825700359 656599388 697836105 410635882 644300297 946615160 992662416 818950883 937333251 551424511 569858248 92998933 579272067 157176626 467413518 302164465 319026826 630802158 913650136 9448 309731214 975421909 984833305 695655535 840811336 804252325 839369972 323452202 799847281 665274350 869948067 32565986 451205988 538444523 822814228 490906396 952304819 807103542 831538763 748233936 764940851 169514981 502284548 83741413 671066166 32296331 119684657 681638436 701595383 187502696 581733533 73893474 243008221 811797241 880505194 644845483 678259378 49794583 855592987 636120861 864142209 962763016 969118444 489266159 542983383 222392874 552844469 369129714 561663782 130246881 228107643 778495579 897152201 593936428 648381413 878675115 988090561 324415297 649440513 9308916 434920248 261726667 836096116 463929781 990596989 573976249 999252248 919738253 940919647 287725345 301250413 407761597 737700916 736472030 991192851 784273655 821172031 862559398 968622520 984791047 988460082 982296328 990621304 199060338 236675540 174065811 397721656 348136591 726784785 495313098 801338501 603425391 815350927 890814676 920151459 878437525 879931426 210382894 356022201 618631777 746277905 245565730 946129944 62543809 349514222 114144134 680139251 487714366 650989183 683817993 778756592 404156477 547079236 64280537 991344224 61010850 541892021 889023207 936808017 696338076 858435790 593116691 879957294 308737288 764842789 255066311 500530933 300610639 869708733 191291028 323048434 425103396 742423835 835642497 860466171 808607213 838472404 368539587 808993286 833443441 968748623 147199781 506455494 432057548 756907988 74713365 627079729 148241856 956336931 25900316 224996657 877103272 963736521 929971389 976704473 755754006 891626712 240306330 989037331 424917004 927933948 876728102 937633073 891693033 915342567 977149038 994336413 542476009 685649589 72421265 881243530 347139842 703644579 289242470 902906440 234588056 596040481 747658306 989729555 461737726 816876398 958052522 959804156 610433348 975619606 966821403 991849618 488741044 583856310 42778403 249078222 321022512 455347738 533344967 891645763 307626443 341318048 438977856 501097356 905866545 950063670 789872069 869897088 467488903 940912011 183144881 593715225 774229473 917602061 997139013 998249719 381902241 514583687 493553111 729754375 866201615 942956668 611446023 904946945 170044175 680784117 418245165 880737422 367723167 399371005 506280162 541556645 64890319 509884753 993692534 999991761 629679451 822937912 65805038 447222493 519875523 609274524 152905712 954317266 426159904 879735411 452712342 636991661 665540374 777645057 766257812 917555971 168346629 580070596 368023281 652502697 351347475 809287109 918225283 969523160 641882698 674453672 195115339 288242780 894560126 948115005 950032209 985948098 85101752 629071167 819297160 976225287 208380623 987882739 152494154 520652132 707659584 967748569 860972396 893431334 768309620 917456082 62362889 792691660 671783192 743788156 885021060 895878083 814752631 964564616 705700648 925432154 798045297 810671560 477347750 539429141 561539746 717222407 349071714 965505921 446868140 645608235 532172773 886452848 445044352 825731079 181458060 526477923 332111856 363049981 927113144 927236474 262324270 284058082 504919784 709223468 392406222 926773008 137644904 978705763 881412988 973258122 40010699 466424564 200163473 497319404 47425827 924913083 360704222 636946479 388638926 553579572 320130265 822393391 94084341 884795593 139296218 649636605 36670476 651835132 985828438 991401675 199331132 554690584 263359110 398150803 241214810 749253434 105388077 260315841 997357251 997657781 365196492 702681679 518070921 781760627 249212415 623633684 111772085 901933082 541418531 803493018 395784992 817815923 381491693 638786760 389151071 440594018 870968354 919037475 847152163 908533151 337679099 952729510 937057188 958542273 6397527 511389404 572024556 643020420 300799191 771886369 860027068 950258376 508684559 688141346 220846169 530482026 862230688 865665248 687079815 996800304 857725270 941803213 928157682 977476914 742210077 893571847 464410650 989075837 89332918 835887249 952190981 958352754 294941931 461524751 346206575 852405251 243626354 954781502 748447254 833151519 908584002 929403168 368832482 466245343 834366069 886194434 732436591 907251632 77325572 195998521 643907148 951796161 743844921 920885333 293039838 992333332 887366980 939388121 432272770 750685652 332830432 783980356 211128484 913759881 992813630 997035577 879638285 942131873 503984326 785783514 816424334 926514614 677225921 997925200 858525360 962841998 668488940 850462682 222381559 536270653 700134454 845480285 152150581 977381235 408052888 719408680 438413543 637937053 941610996 978035781 887016632 976278289 19401906 201635372 996914647 999349553 519311375 990676978 846374989 854606053 293198113 530426068 559088692 759688092 528445144 725356984 477134705 831389812 35945141 487591386 341022131 827942319 250559852 576510353 932019452 973218558 346959304 551499373 419479954 654569783 98429568 752015422 732259606 817481536 479253387 922263707 295346870 523999981 691159250 699461841 408639270 469258142 345233798 998480724 861982573 871520888 628643252 738559031 683323452 736788160 401712757 810884413 94112709 660551545 335848515 510121960 132000238 887602007 785566657 817338901 32913122 856792826 675839481 974108623 925273970 982934900 412057567 726646213 16059143 591585887 893407785 982643759 73643440 863195800 390804143 742942597 590065386 619568908 228204287 804531086 738551996 945836580 719959636 947356993 811364605 976983623 254547042 751531800 541514011 997897855 81979678 544823995 558501799 789044003 785111465 987531943 418829665 648452710 752315552 773194833 286442236 761083799 583017162 968975322 308316710 540147731 772879604 990278155 402154776 808099560 467530773 993843192 532225341 618743291 207239300 225760036 162028723 734693550 150399955 523415005 802710167 946891085 152445284 712066824 157528909 924030729 72765270 959499951 623163069 953436334 746767556 939477122 533398589 572179058 322879485 891665939 828581658 978666732 733795892 953017897 967101022 972887727 915045880 945286709 647540634 979376441 445930914 977493555 126312649 861272385 895485002 939021479 129951806 349350478 863033034 889451488 248078913 550275860 422984921 832964109 18452309 353566441 399987839 875888037 73523581 765697444 404810914 864677491 955863496 996785764 649305873 757081705 369377755 934690863 904804509 915969593 231237480 546845006 760462579 770024693 384342507 809058490 910412712 930894528 343469025 857847719 178287712 198586258 91210332 648288329 165082657 790315480 652035223 705758543 297997180 951056799 577360648 743585637 521302892 899673721 611409870 944267174 433434524 455984667 219001335 590905670 350316239 650228645 142610811 693433454 624775826 866884733 161485558 229074435 343880078 386825667 596099407 852888267 519030905 882169689 937090707 962090299 769126292 882649102 19661932 468362670 466836780 814638524 194092048 757371289 998870401 999387262 948423582 990134347 865266343 878952739 188484315 360333657 766148705 828755545 652147563 958495869 430343751 432906751 98438910 205602879 782105489 861711728 554876137 660468761 780920806 875270311 602600427 603280340 722679838 916727341 506726983 884736389 584128695 817534905 687222787 844679246 743697925 978121634 810166929 838000564 365938655 870851852 672840006 683551105 878251325 970302029 598469332 745545259 558351319 775375361 24295157 215654454 13518662 840490982 675495171 728731128 406191050 609401745 527194323 834310772 330802412 620282614 369376701 609089720 138241248 651915121 15605626 203742342 70660730 253902807 29958586 589464085 48554462 739194559 679858832 779612439 113369180 687269779 535317136 947249690 174270542 687639560 205285444 329629298 555103786 944495268 833814336 880563294 564869591 814092313 395018652 446031789 42092488 871511939 979369308 988110557 350307746 463790131 572322309 906245955 558094863 634538546 805440745 949899666 944442438 986083373 247978443 673147521 545613389 631467014 35737969 523006786 129879066 758215451 491837620 896202163 58911442 746401233 580073117 825060166 376086350 390565550 502730747 583139003 919401361 977622953 991886073 995810541 400743406 413954952 419792497 536630606 472908921 695154952 468114106 754696141 309546847 495779786 14458432 845728199 491764388 685610453 596335068 923621009 280146060 635746337 223297820 566336250 450511514 851090396 337285512 339800791 465074998 799976065 211876896 324996874 368039686 725968456 434750866 783335373 475155905 701719050 380961054 916603530 408328164 988208211 147742913 417189655 451144841 946333969 989458420 998325083 278949182 461333068 435616013 842661991 368834256 508848463 789730647 840179710 553122141 973347883 972428005 977080379 579586919 923138631 77542186 92100781 683617124 706797171 48323579 443928391 163669557 500026974 50808702 782995973 263805321 352170489 412310398 486150921 652994045 709093003 186104932 413683395 913595512 929250441 78321154 761010818 907720148 952444350 329588467 371804670 724412409 993202006 383784844 894685611 675272016 760659862 914020115 957768828 994261373 999293558 513205601 720679320 471712488 906566716 59187505 329517912 552787312 559707554 915115206 925136364 448009758 517890973 285226814 613882764 190159423 939029077 974802257 998919481 409310280 533882955 129014549 771659573 571716931 804754518 557976156 778612489 301023200 644791462 89299872 419853652 626574502 853285539 214894534 882232860 141398527 387540979 903426690 906827307 31778238 796873519 198683813 754930400 469271180 637177418 327182141 918527167 541269236 557125831 243085509 615955598 943545181 995792279 278068424 561335312 630897115 940367800 983392185 994029001 471877820 647179940 972332945 976005654 515303221 584553008 893973468 980979784 560426487 629764897 583667423 940139217 763490356 792848595 340761104 785192197 857535463 872948184 86575138 970795896 529126569 953979930 753039117 929775091 860833535 882901092 603462359 719732962 188042876 332280182 981571253 985239444 783541775 811368999 596607350 644068703 555484660 560039922 749986246 883572798 473839647 714257632 286624568 892597011 442191480 755609818 7124230 324017177 642577653 695163600 894007432 918779435 346243806 697386855 31721471 794756961 297485143 611624524 517364066 908429129 292057987 398465421 175972304 992640388 659524098 860645766 342447490 731149527 27587151 111380289 252189948 594744359 104838488 777812573 269700089 854856861 667421427 714503169 281635466 525495072 213000558 409921126 836164093 942779905 880686315 992614374 868444598 920245726 81663811 642600703 533781955 647339117 758707450 825902719 557620790 978302261 243506819 546860148 773745703 874521373 777554181 905653460 706854149 786061844 898084335 961167093 511963253 714471128 161871407 680615216 826243646 828542564 471845142 501817102 440987309 626801557 183483756 292383354 858695359 886109504 4028012 786818078 888906611 945858378 790369335 867399230 923757826 953073451 145539614 646531876 288349579 429456742 793731894 913651809 36549141 431167902 841310013 961694450 577634837 591185975 309024665 575805748 976736736 999151451 476524630 591892721 460379485 871488319 375772355 648296463 298333516 785654644 219431913 851063856 556776523 660758624 734017767 958524345 10828357 346584614 307953606 620005714 187971964 519070071 393449440 457653574 25464266 190849319 160202509 718206687 133994515 992722638 327925915 885765008 485038905 730206160 80493284 516580550 649548421 906096290 421652381 812310595 456856036 496135649 157151392 590052255 419698522 622424182 199035098 663655686 710424589 803289529 414745979 517704934 988412220 997663486 186442857 718202638 986776108 995074035 848191057 957863565 299509146 998116352 957956671 967758383 640006476 918569623 655038930 813465357 624022177 789194579 41513949 85797570 248894040 765219178 88695360 329522658 829035826 839717176 122155539 908851127 188853338 823632509 769472397 797218806 140112877 997289754 342311714 740926741 326823697 929558006 988200894 993499207 941699946 979090889 888776124 969724828 781572373 786246390 351902103 538361024 656149430 695518765 531739219 790601974 617913358 703122410 394798885 880493369 43253194 265003305 20475394 643749988 96341776 113142152 4717445 95862764 669528802 682689548 959693754 984533734 452426430 766718547 218288623 392438525 558954527 831288988 594370454 860441130 362021530 598593159 872456976 895374092 378021694 560071661 964686936 965505018 56137147 702939703 799054705 875165508 695699509 822904668 561493517 990698900 24416168 698381357 77478588 682826744 39900037 379178732 417779369 972084515 268591757 448492207 73087995 850557383 421458967 653952489 274298622 475756879 88583440 390407622 933347681 974592188 331593215 566938738 121767579 235700422 70699498 293865241 644128534 883301932 742786289 753877035 40598390 68674049 900430209 915762029 574611174 824042364 862562679 919512192 212442827 818608586 986906614 999874669 909114708 933853226 791437332 951803635 878036839 975695570 597298873 830842531 917847096 942476628 897512637 905641121 597330425 921584490 204862730 603318250 571267313 573127921 182684000 220212457 779249804 823124096 766639975 817570636 557350382 948512238 44640826 429298690 242704748 450343375 185190101 526539843 807252019 882675090 908478030 957833687 711352236 875869123 306005762 778143789 293452600 317016928 143772838 472584151 834071184 905099239 410889604 897298345 154905054 405552207 713385375 949027028 757770682 784183619 202952860 762269122 389357119 792401740 818090511 971849277 640593531 789153795 742851852 968833269 827047396 986801812 686383730 903307367 158114053 486118296 763031200 949830119 645157107 993002091 481922475 564917048 270963291 449086493 507735128 997907697 178922799 525457860 52622638 543428255 980753277 999757452 946400682 963326227 37897734 325232686 235363698 838607964 978021431 985093949 717731695 728544010 438707640 677910879 322728347 990841355 294693961 418288895 176741293 229959796 675290372 872618103 503963641 503983795 575830399 757466445 689777743 790317464 44560749 210684044 946157477 978755087 871095917 904435903 597720010 602908918 837672296 944697235 819383235 907210809 780335866 914446910 805300639 893891511 647829440 956306092 638493369 648735671 645710957 953923419 855023798 922345226 168023008 493492476 586355967 688341818 20641768 46493046 440670420 487358428 486217033 693477739 783309319 787342787 914990989 921363648 908638821 908864681 687787980 910231333 48891930 809233826 672058118 782459101 246200613 512415482 952513401 955531144 715372614 799135946 748070830 897543492 78622522 489907452 224517922 747922894 207916039 906024872 726275716 774055044 40822360 58299934 667327361 851468155 900868619 952883124 729341345 875474969 461678767 586522385 154318408 492237252 356302411 465466690 614895909 664644325 577319348 792792263 691245373 773152079 524819971 725000224 894902223 977108484 104588701 617269286 571426473 632900671 276189673 966812916 959580623 988571104 845607150 869901200 218608265 450519140 673606120 938633230 161313290 666568142 351596874 879135465 123306786 506609933 391109615 469708208 107925024 463775372 844436309 868925494 34922294 584782762 399299184 439135232 797982624 931073453 291331171 836945398 468783558 605845786 395975373 434177750 220870567 885437874 671013144 733923094 921875557 987541945 857406421 946369547 50519746 588941121 742096233 883234496 945885937 986814919 98265863 558145736 935515183 977081480 732058949 883348658 981546730 999453947 555458389 592949291 47105028 870978590 888905746 917054436 880715938 968908291 25366844 839311177 57028258 387298009 693753884 769904500 806659346 832111571 452390164 749519119 722509629 934896423 152266288 691722315 975993471 988486191 681869861 895803108 429066045 540039658 937100603 995016308 963227006 971804876 219071696 251127661 5844678 529107945 956893368 987235661 150663563 299681617 668154987 778368543 578830840 719009119 397934501 565449304 626132992 833234997 795540385 914970356 571252492 988545196 289014450 781270566 251459351 417373133 588569905 943248936 197907128 918740472 669499801 867039489 718840970 966243079 515159897 923163889 478062471 857970398 118373378 796959034 934711873 977408233 700079186 712603046 36291760 575425548 270981753 445492880 483127712 588236810 140948545 581911824 561632731 710354208 546962111 649743051 828664067 976777671 534119810 871207630 449445030 734268153 603706000 955626166 408066422 544584607 630614165 996929757 584965677 705360457 823551306 940200193 532097441 808496040 438764400 548829369 856763129 923167786 510382492 573489267 421727978 826988841 882315181 905589831 420839700 733870374 394223979 492192726 382031279 989853621 971498514 980058649 350389079 829950649 353698133 853065679 860281792 893936861 175032992 448369910 959121749 972900686 563531632 691032480 947863197 989401580 820808985 939228739 84277221 604325043 705492784 928018988 698579654 744370957 137335598 275265751 712782166 756973238 596942149 727190111 478399225 959011319 960369469 996488822 149678310 998891115 547441405 585284757 778681014 966456667 493944194 575195782 6988508 944409609 399741091 748502389 314908436 493478891 449550041 976441194 108041358 656059560 11007591 640443255 657216591 720249355 863829952 951350883 449769922 513408461 971030309 979947088 93290639 466040219 187791270 927750710 840669479 899715794 774420703 923161862 351476641 973153202 166614925 422563969 474509278 516419501 670372911 914577657 432101673 441961988 88624823 752503204 755466420 882188328 269501802 349157333 817489563 938509365 183308305 295315974 316570804 843935138 161698593 858036908 719962150 957758807 733731622 889096471 780133951 915668763 963396172 975887769 520884254 836735250 344095428 918499930 566368095 828489764 687494589 751791230 685378132 969410928 265340722 813210423 315765332 721248029 352057404 462808849 756504563 786627897 973482870 986514389 272635363 293275437 743537925 753481238 623962511 724346034 809792398 999226226 954156142 979786296 231373164 311998620 852365396 990858869 711376381 991129458 379864834 573941293 980056086 994706533 500943979 638465062 875816640 973494131 581462319 584386112 245705575 342721401 528649522 745972523 690513407 941774921 490960656 736001716 279468421 955407885 528585858 834685974 652901322 985613347 867579717 970278433 808826326 955870846 813472494 967607006 522981582 530248623 199490686 691122652 270808081 413276605 324378016 834193882 508243153 987500605 577988684 962709470 285756544 414919509 469949440 937408643 829899745 875969852 810376893 955147733 64288074 794588636 416799236 471108437 786582785 965008108 216610760 720827610 384768082 669712189 358678341 425791533 443708609 677873005 185477390 997996105 259477572 743534557 755270062 791215958 751228910 859405292 487739654 560152288 828509732 934145812 676692413 932669901 898834101 983841554 338564629 941273490 98182298 444451162 440276530 836873304 754361581 894862721 618876257 813903991 691883819 955807147 375772184 834370793 149736738 493623593 273754004 367612881 7952329 667141538 693189169 725864108 422881662 879793117 259273951 958619836 848992916 884061932 911876822 979364129 129869883 265999888 517311604 914107858 652907379 957204617 981281824 996202546 56480468 464348991 351752339 574480908 307216817 320720489 117307774 551647486 793792943 847280006 583766689 790654165 113473724 136067011 838936661 879811405 78996904 995338171 91934306 966044556 348200234 631263878 270483082 585287630 27492344 502516302 301690815 855327213 102602103 440790099 917471849 936203829 428699142 611579316 753830071 811837009 597574896 909173625 56089532 443673656 43750467 873459350 288710418 663271076 608314185 740822379 844703487 905440407 819886587 946521070 436300431 583799708 676346093 777957224 170443271 221688885 73212843 944386071 411407110 684472164 935863175 947435249 713894308 973754611 338783399 721534585 683003106 995274259 526636860 591401069 935721596 937692741 730769768 862409885 593657590 862078025 579955064 805920222 859992772 877605610 27631849 343821189 744986034 878605298 479939301 886306109 343266774 882479548 462942666 812348283 26651528 283060362 498712439 986856399 290694794 475137267 42787865 835469387 454635775 694496714 242134599 557326006 981576572 984209341 537379168 996930305 295415834 385552594 954738749 999011370 652169604 938779632 640117005 918345926 163123138 833860287 59876555 71907787 994605227 998470339 561792843 893016317 275857771 926046930 61548756 965994484 325108097 344220075 780347039 917389102 381305780 617565958 775093700 926414449 376270449 638217801 782905380 920113608 346606253 996294658 467614493 954735265 284652629 425901292 504416688 546032617 366893473 886977931 879155874 974948953 530481575 554648145 610720318 652977841 743730463 744176712 415455531 555964860 294353815 874477363 579060161 976085435 299219742 920699304 598181002 865382689 818213424 960288281 973653673 989380394 865692292 905922667 319099574 322550393 692805596 744491051 673702875 677790661 760415796 760515206 354878741 372528506 949483239 998347018 277010807 401086526 853072003 970791233 404407898 501157544 318269592 447882210 309609985 934369500 794253594 910196981 148922914 747811376 810971063 928309385 132987431 577606906 870442539 915246764 877850490 963212674 298748295 541265895 335418194 458886663 825702621 834105457 560713100 904804208 748370296 783965422 428220480 976769396 432578026 893052960 405413357 714659481 465192825 738016656 734165230 743143226 422226793 654245067 981483163 995782084 522298468 614713495 106445641 494873026 319474201 870056082 909569170 986286829 672336052 970269328 393316747 526448579 802656008 836539144 730382149 921834614 993073654 996029464 585730503 851723185 118698644 734444613 202303599 930721570 754763657 886789098 252284384 604092816 673888506 927046334 287296376 751644029 928007978 940856358 162142124 277191814 569763773 731963515 52306554 973950423 19871202 525968565 732748183 843372227 969258762 990212224 93817421 793472517 257761039 455969386 676817841 954038390 441989440 660809886 665756923 985599861 204135024 685086040 271655525 503504598 20130377 102182769 257138993 826687694 714462043 731617631 128765215 425572947 80745834 358435419 393436927 680865403 26943934 497262621 396389333 663363371 317613331 865531360 447268334 453799359 742014944 832478206 406569359 631481641 984356307 987346569 702731737 767074209 764204356 786669067 404864485 507920650 834258811 999455837 5296039 536427729 590653895 696262027 2383182 583320873 884483257 957603825 90780399 614940980 167874753 754630273 575994736 989897682 561116409 818609489 694652149 749694346 887675274 970198522 512075678 676397831 480760992 510495584 632555567 742503540 87124695 757962250 33344146 606975321 52068710 868305804 212176122 223962253 492927149 524371102 950979496 996344070 641956335 741856721 764175049 842486880 36490033 758415052 388774093 701147229 782315526 863230784 703653100 799657119 83491579 158105424 410775325 508425408 860025951 960237182 43806837 401527909 487529410 489137903 649148463 783924432 770020840 820112873 768040447 797236865 120975132 648613686 849484884 935108343 725950596 752634433 155216019 641851223 630960446 874104151 629217235 646324896 538002448 579969166 239958136 412223483 483293576 718974956 386942146 730989810 853320541 902303345 74628367 472277458 960705359 986187981 386324405 818933857 746143548 818912051 272898238 600273805 300298134 491634393 113346706 935747271 471627995 994984790 438067993 668907104 233694807 891790365 696376735 775280564 190041620 637878175 499389165 846972278 799990153 889687052 399942362 712236070 373035088 664887463 377970063 769339998 648168351 739939272 821694304 854619426 889339432 910788380 91643972 448916359 385040418 981007118 794154524 897170562 310465993 424175232 362306676 758447868 730597323 951528447 770119362 987624497 221133957 827132357 926853557 997713966 78857061 582138209 86329417 189764550 710999566 914283889 631376186 749736973 84764245 257067368 775658816 913386165 799759306 896931521 885461663 999446208 355763916 642992041 576833626 952214388 139138149 787558295 550792011 865464828 681140411 941275753 556738009 596014085 660199694 800881809 136262135 783694991 920740501 921386381 138901134 786014761 454257890 876071695 894791603 975761389 706746709 984813231 444416669 737770051 239037803 391973110 633597363 983256540 412907302 589091306 309173856 331291976 774234029 948637018 667203529 815054209 433295312 583512628 657298198 956823466 218168636 403098836 458038277 716641971 298420947 873254401 346663468 680006777 21524515 139633680 672202069 724558743 453455930 580945943 809970117 999816650 981442324 985289655 317455369 391406277 965550790 978814128 97949352 438067706 72896437 194230626 435772488 512640298 59654465 227339525 397488590 720880249 885448312 946408784 716677692 996672532 677671747 957090375 995666093 996909239 148644431 269482500 734291645 959788213 86519804 916001209 457183737 740902598 487325343 933615107 730212777 895462670 938784622 969686812 543204680 739007342 220481314 760210713 168909033 862812073 885021473 909119077 221133548 751550884 870695581 927151943 170127180 648944937 627742291 765759051 920953178 937328869 995380872 996766763 759285145 817745071 169295748 315712716 796249479 838412447 301806067 325531066 71664769 594301248 321225151 485979398 416507290 898954357 399222590 595202886 824861425 992935117 665971624 853189687 409085348 483115265 997803298 999803050 663802649 818294910 429312756 782446738 641808431 823776704 86604993 280952323 173471647 377745761 895037892 981573843 170667944 256379359 786320268 967358383 523689278 607946655 168732122 712749567 987840931 997957164 470226897 870137912 964926129 986897314 270460230 835376527 726492092 955397332 720993816 746783744 656871765 800151934 153414136 706761484 288432035 552139733 506013397 598035309 902206936 910299856 613243663 647401226 184312444 603169992 103096743 212617032 274302338 578289067 50808871 182029485 149377499 373555528 296458076 319196922 498028923 595714149 167442458 989670404 863174734 884453973 624021237 879724927 962646878 977803538 792077664 864106878 497756381 587553824 52923272 60348356 410045603 423258685 782121026 947532761 692573625 976051468 946701407 976085984 90512525 960274684 488435890 618040723 397339805 590972583 198848111 500588275 473199708 623588240 334344381 805417741 902268949 986843139 160502021 796748656 890981342 913832227 23693428 41528892 90694832 877408872 156268066 717588513 145500986 310050905 948679505 957360991 629406392 853376499 509686063 525892348 582958690 625798178 668027311 753111191 172112717 255610062 229594000 789366083 146747805 215191641 561549525 795041649 502461420 641477611 547210447 565664108 443335023 643507347 628392563 995871742 463217366 776932472 828988878 991857255 283873921 326013304 18732775 652226660 971222829 984068543 736346924 962246635 857448905 904134984 784754108 917879324 903844585 934996602 350790159 689845613 89884098 497643504 883326018 901228335 261561275 957669708 51467638 187501673 561115332 920587930 100548860 903625181 863734748 955361494 253067387 513716928 716951807 859978643 148741399 837818328 970678281 991818691 542867919 826086270 429441085 834308024 941199102 976207177 472399413 964200377 17985260 768794367 30802373 116266502 976733365 993781017 95563985 631226500 270134990 471701637 228729574 522712149 613423074 623982677 115559050 998734793 851542707 864690951 884640973 968173381 7384151 870038519 478719646 743316174 636735452 811380557 502764555 507188393 441168595 517526607 866522998 907127710 711908614 992292547 393015922 556822148 901211736 925316721 430856761 488782054 700316872 755722894 76142894 787007593 385516991 389885390 26977579 815972983 326174299 451576222 691393111 768610597 490696310 509651951 159196341 664976804 928468241 962738770 77744389 201565549 51133133 378372879 934784464 982273683 599015566 622115361 950771276 980824800 2254747 168723027 934372304 981253785 657236991 941486063 189680991 529191029 740449598 976416497 358048584 483401338 749147095 990836001 399031408 433547454 470320318 639226679 261500498 896925062 967264756 992413468 757293110 966356172 525558733 808682973 366197584 932073099 989151061 992823256 889740400 929875540 211659010 732098863 573422731 652983923 288931200 554622048 365009261 794494042 845476254 954414829 307935205 596980951 871621621 985457831 962915650 988375525 493230198 855087100 193648628 279837677 430328616 869426780 819947015 952064151 305206878 936036464 22243118 142745428 443491514 896638541 952002524 991560025 214336918 646036327 531115609 600683862 188256665 707271026 43652399 978818663 711935019 845601587 916556001 988220427 513394368 717489795 927640629 943284617 80715795 428415936 379824670 451961911 722776407 831600223 194252149 650752628 681786629 728548038 453721282 954693176 237973017 590185585 376098164 443300371 697797284 879651727 868243683 899660324 848356082 987249917 510800127 989619869 85503175 986303562 861679027 971179319 105978794 849855803 231318186 696433211 422469489 715067675 317019690 911283276 75927253 984810727 978545982 981360724 93962951 978377029 146411161 276287074 588101590 606122686 217747727 332324385 267594389 515301471 791338710 952967358 337597819 961628567 826352849 995911493 48897992 556940543 124656834 360526017 807681192 991687500 635055105 907513910 570322785 824964094 547087753 904808102 273188268 980647705 127145402 886046393 31148828 504789428 968603149 995740862 627483359 767069606 491393501 786065417 29424818 66070873 464550919 731727965 795853316 956194180 540483036 997377939 446930840 781297517 417756029 664287804 779048688 910494692 432805901 742602434 590071650 888598869 228304317 774858572 151544643 799686428 646160295 669121447 292571155 905704901 366171715 891818702 851927898 890187026 763232661 986572696 822223284 870451121 400751135 812372532 260449141 683121901 218331652 623929823 906893240 939197680 140744807 169111665 439090428 772574306 475996725 695296360 697198581 705331803 581586935 693510965 308386958 578183432 804086064 950947124 393174318 489505063 596376233 909268686 204593849 685720002 289687754 380085641 231480686 905381602 252724035 783252449 773481476 827520568 683186134 859397683 346394001 613988238 615086895 894510539 712062242 805389529 740548390 943182608 185384299 571377529 400765665 702242407 405343742 976303081 665427226 915017442 616184589 981686362 594188726 853146893 233883710 762694208 188947915 836256675 751465376 844480232 785833593 955184759 876824324 889324465 886921623 924066764 595221406 598508367 846225781 887129244 998626498 999120852 675943880 864279300 508810987 556438900 808744192 993482959 699824242 703627082 982779085 984096859 830288331 850430211 711962896 885689629 727864458 996400531 262621402 957419301 345371653 764384341 845122814 855451457 845322438 924850007 272143995 432867137 121708485 282136075 781648461 834939367 76512325 127840049 497940327 872488409 515969428 881685721 977785285 986473224 278050212 288937967 949071252 982118404 875422187 928289667 771126478 920278093 625347455 778990047 547486557 777765284 862003582 899991135 187587905 270383099 264114415 731607131 582520177 868826347 610100412 816730423 198366781 878090929 896285574 977559289 205155098 446169702 907808372 968950303 688881660 934947606 848877586 878398786 893487412 961128961 591408559 737927317 424946769 546416545 321723501 850755855 271502426 284097824 156351713 604114393 605677770 788822737 931546833 996560498 58798551 616391993 618983963 923883027 395424952 652615536 842481351 941216208 910661813 929372680 103826366 800508936 946962005 982225081 110190329 951169279 364277790 586308632 288948552 961230384 197962336 809177833 438330550 694242527 378176955 814058033 498255970 905420594 645359042 869097490 826406157 905855523 597342749 938747565 734159505 929213908 872895487 971616950 704404507 735989031 674682930 738773346 307777314 582225244 354416722 766968711 798417796 911819966 841989834 869696737 833904555 887023725 221051723 829905564 12996067 883543117 28756045 369549675 197944739 937170998 499980702 586237960 757462494 863508453 701271078 776440959 279657416 904276310 870641005 949408082 363040403 874602001 459994228 669458682 198450413 766797596 107638937 480492971 523738516 856465346 66308263 356289351 438547664 562841527 20656208 920858831 384031708 904785386 3119681 580091918 595396502 852612962 137518929 412581766 571698305 692076221 884679195 986825490 998581420 999246991 340686185 366381776 924867374 961142718 158369601 781716165 37652862 502920155 780905768 867529120 359615639 483413222 488652741 747491775 809724816 864706793 834859359 977272853 892807472 975875664 127762578 360690144 756277723 925482540 52383077 79305254 730296722 899619922 390114975 669803833 261402895 767678472 578345786 654476780 144622313 485046425 486645959 580481749 577656719 786588646 88585415 467944038 86013513 413085581 623964100 918374722 524332885 781972445 467147816 594783383 144504780 271395518 373051308 510436114 421057988 560512764 419217516 988213673 158500586 905898642 234897278 294543671 13463059 790643758 977396457 977775898 941023422 996703434 499276853 617023658 721872218 776595561 142120517 985490138 275090874 770131228 471581560 683330982 973572267 982812219 575671404 765383126 865459786 875011413 592004680 934347946 61201819 769395264 158392704 259571942 918326941 962584714 625901146 689820330 131700556 337125574 55761318 686377613 970379423 974108034 603278611 915493818 483361604 929314769 128901212 454212692 253709426 626691043 633691832 875232443 314295672 724680839 844005339 972651271 581709614 938463089 895400167 962598822 999154526 999386894 668857614 959908352 847232361 917849599 323728200 904119113 987453354 995438619 226578113 525101488 808343914 893412922 486753241 620941633 160011628 837187608 793878061 837934936 785904395 864399465 171662718 451601945 281091418 726678110 735118897 862659411 281034732 689000645 797719759 900478338 730760771 739046225 889265358 891396368 44756967 711477800 560566660 897055938 231865151 600311459 845191999 893939471 773715721 992204462 990228824 991971819 23638615 975982927 809652045 854285732 243686031 825160332 963853174 978954416 436648666 555687224 640297980 912866953 510375606 606750531 242724206 940569251 890969059 891495024 214139585 662594390 894743608 920565795 441341476 688139538 160077696 572879987 430359895 662971276 53304041 719555422 232255610 454492356 527842035 729990610 738759262 774650754 447959731 556754692 521509820 800327575 612400893 652763743 210122257 516603728 870155656 880878538 883930694 936770579 909148793 939453426 972471856 992752406 472998147 653020702 394137300 476950029 749978218 874980046 902228726 923762618 573743278 785525676 315395 123898131 556324016 858760661 525942046 542509035 106406217 730347745 25510025 533532197 479008933 495089742 241429529 716855804 869460280 876506113 595347669 675529468 592842953 613619670 320821155 642909787 277932657 578372840 397846840 985271586 974177576 977309552 15283745 672026263 22716458 362630769 69254127 769613534 189814607 497499925 429850909 698000172 10834367 965725647 437776260 929384066 978002580 983259007 310266133 469343810 602803942 699620692 359209213 665763335 782349666 975210149 177112908 865865252 828748208 831397376 513146062 745725087 596900441 611978227 489834652 798109304 303142659 597847150 246368033 468714341 988342081 994312578 394870995 827886924 345097950 650360924 67629468 476158211 524650510 828880037 25198789 397275652 664976500 909225074 20537605 635613658 508083850 676905577 419082535 802277352 306984330 597072518 882922656 918566348 957839520 997678244 143349589 734961866 227818264 796788160 770181675 943202954 376250517 472707959 699341618 988882284 763729005 986682039 656270912 673237758 51363296 438827719 882769242 983286061 970690477 976901792 134664773 568113258 112254250 242177519 44316257 424293506 930796463 938745060 255763561 999891444 374789806 868282305 13909209 678408226 973893996 976314770 388929954 457521067 512493131 919784136 271849013 464983667 338678485 521281972 664697274 757941481 243127769 630146175 728312851 897788367 119149592 275368443 378337630 853127996 627482072 883179996 852444567 949006029 305437520 709048919 712713528 780143601 813260609 820001614 923040875 938181783 54182911 398785659 661428994 823454062 83225486 715286307 725717989 771122517 772764769 941908488 34711308 611894456 816973450 917778979 944386553 981580263 360823543 841225221 67941649 790974385 177558843 445976063 611239693 987444871 922251907 984171362 207381055 795595351 300816980 513229051 258685571 750410142 133604457 772260593 492121308 611960032 11289834 852289356 966738709 984787078 475313561 852075456 973870047 976673503 186052569 578264964 78124141 915591447 559373131 577772911 196559547 578362402 98339865 531922497 667112822 788634684 617287983 976597101 447591423 959278272 664781788 851977435 769404038 816354796 908063492 951021332 921679062 951100370 5187538 234629818 10450864 130795336 909724041 950914772 26401905 402659899 828658478 979951377 897924886 915067785 147238801 642810238 873166140 965505648 209635700 722735465 588637779 759881964 823244917 901193636 457746954 912228057 963474269 981072734 441779952 706971139 717449993 969832632 494545135 573538637 355550461 505260798 824622604 954349527 891455060 952657625 190408865 951648253 889803523 938080011 469458715 530655672 617317902 799023127 403068227 726300051 413867743 609621365 977164652 988289663 175771093 619585355 792859634 947103335 234583444 429806900 603715527 954885713 391358889 547691559 559327214 711141174 159978535 681305162 56003577 861414487 929533575 958534931 361571773 528077663 126763837 147910490 396893670 940042897 488079341 589867598 993667289 998150311 713128219 886536127 850037869 954944537 607091490 894381701 123397551 982654421 92327289 323136758 141281738 995390469 409020807 656972400 407210106 702360292 887892771 976016066 757793643 876918255 204672133 877718450 194286527 309419046 444936973 787233795 756488730 967012522 677064573 766063568 63355589 307169025 389063845 599439744 614421303 771778138 685955804 924748527 244469978 741146010 330078964 547406579 804816910 978566735 729768492 733749224 270775739 409584249 703181133 812008558 757152740 970237621 191143728 205579780 587067740 884233579 534760434 643232552 215019493 421358662 728111970 781988475 435420159 439933802 429114276 945954941 230214038 391755079 373691912 930463135 849480428 896552120 527251958 649258049 329112697 950499528 229805987 669835294 579714428 713491041 971353473 991571328 664893766 935454482 372385125 455245320 158305230 996266326 39467007 396392118 934508147 944620907 340996890 417871488 331799118 824739055 38187835 503229395 322168286 896285036 634353744 956261213 560168634 870427051 732528416 783012813 350143304 627715912 669239550 690558153 817779568 871825774 327657488 832085438 560162444 894836312 539331057 876258188 584416254 672134149 423446521 784682006 414556330 772668895 644414828 698067930 831453606 861166408 362678768 686264742 164615110 964677202 220224301 946193168 413806096 606305771 369766186 731483356 737601038 892555177 279380788 697362666 11471199 783055112 711086319 871291213 769008591 857603473 419972386 894587617 704367560 949603823 830386388 874561935 835010323 864848154 842346988 949469466 12874478 158333423 744794198 866873868 489034965 805245775 582888458 671417153 111248295 529675805 530414786 626045525 483826491 672627595 610189978 656023848 728493572 916306428 465109638 583208203 235532675 631132096 501651293 722996345 260358947 778192654 662532536 911648077 779494962 921235674 748615425 896534178 319131296 355567960 893969893 953312656 666886199 832965817 711303827 777323701 630191910 774088920 450917274 480760192 708691690 818351325 393097757 625277079 547427822 931894346 517787347 844774599 539622351 633232798 865111762 998550661 761299194 862233618 340667505 995579171 339164212 387387184 904351967 914184435 374608623 414113315 368907857 767212827 719383277 876643280 319849462 701324698 876637379 908787547 476249867 658472115 112282083 829079115 891479021 940762115 710162950 745213293 382957489 558780996 692167282 738315666 873879836 948528199 709866152 979951722 645894200 894454661 933979968 987863240 277079214 797175503 82958576 662912804 410150121 628165288 668160871 859587113 108860792 662610356 638572678 643375127 590026314 982094641 709527611 742425840 654478518 666605478 207925318 570050557 747056446 877062604 160719876 452287317 664788820 682578335 556724901 941721572 416636894 810881399 5007758 219455371 838064450 954632121 475448 478805645 367026552 984299876 927481688 977356676 886575309 978363524 200908857 687871899 466308297 942388790 294229066 524674048 742668195 920659809 455235513 598523171 338565249 833071161 498125934 749447098 366059838 375459512 670313315 913317038 77623875 217545655 745602489 984536473 974977611 986465259 359080877 671357437 508952909 601706702 328925977 447874811 568454238 683993915 923074264 949797481 21401980 283679654 241698098 879813313 264866385 548303938 711326342 894725545 789840625 825689377 765215293 788282849 450036117 481574332 604079421 820522939 807051422 862155888 852991220 892288590 487729089 702062612 820817858 925575932 843677920 908760089 519602226 733026659 921595192 928336161 622756743 854165746 670953316 848463995 415167964 478576184 268241154 635424823 736622643 986297933 753713243 866501473 954638992 963301515 446743574 716195304 806345173 887473934 266455283 663500105 190187568 518141373 945245915 960636326 388256213 882598573 314800307 640202861 994379863 999740625 727129788 863541473 570036219 721912638 507712975 683790464 317417651 605723394 63432120 630789110 521573943 815857217 703995385 961208587 275081914 364635645 633613334 715775799 164600271 840601078 725979557 768146305 975067788 981956947 356374381 466155702 114536517 176048555 545210739 863685149 88823295 413610593 936825263 961749116 80498092 865782590 316943803 656199618 593277102 692085286 102693371 134335431 812976212 931944496 262779353 756908125 937988120 941875359 580554371 756188518 408166701 805903631 123903006 256048316 395160250 587863939 437152236 811486539 239007086 505599941 432943182 496373398 374379985 974989644 853994482 878906186 663699913 733343200 843217647 848131271 52995171 525613552 645938252 696251906 741303087 905360093 111247260 470028280 898943741 907148044 178135896 379656565 158382754 475971862 811547160 960383770 720433099 963717694 563834791 845435447 269973505 985538356 881509469 931390628 138694222 843404025 569341291 725690366 421918778 756136225 672464833 721370382 362048864 857108436 817734764 859757472 981156860 992313882 255479579 740578778 337264102 394778310 682050824 953508828 388413610 807142336 257657109 710800646 402125714 408399860 998155825 998786212 447168947 568003446 411586887 580166091 282966466 933498305 887462874 924238109 421668673 591926260 485490398 942415123 439663520 855060245 824564386 938271152 996772749 997908862 643752180 821539673 181848889 990663843 555833937 956542460 29773268 462800852 864952754 955800526 420645214 608969866 110368970 208593619 850049513 860814900 294697233 815733267 21592252 992649151 151291545 364688139 520374426 785615709 737945616 791430896 708989369 934118683 350936875 949195224 740743975 804845040 382519158 917200583 751010865 878796994 3459743 570506364 179387737 576070010 288114068 290116509 443753606 846605086 765404034 982685899 227620132 419403455 496202 961954788 92167621 862292841 957876741 997414332 932945745 943795735 378146390 404491615 536613948 549132746 487764649 575149580 45204371 926488251 944623259 954457707 878950909 938989560 582961889 710150118 944922354 971191870 872952591 998341499 725596633 811236999 484543400 988178047 433013280 754247204 837152091 870880088 994264628 998242995 443876115 531973199 281327467 596561450 261970623 969804319 787167311 868380023 491421325 617754832 446038945 997756532 937124136 967135095 198933539 682877968 752524996 828667996 174423818 990689450 72797216 206295310 316772495 365234399 71097672 550265954 534780990 738286388 570741249 981725248 283373407 738460556 479572315 621430279 997912260 998354904 813125893 898431888 901074955 980298763 256915629 433132449 407630096 504679810 732376998 763152100 735632347 770887204 197171981 346591254 519261276 806964902 929146421 963523818 663850617 824468726 672830723 911441310 65494357 237916946 529883619 566735348 235764164 275125763 125091387 647009453 692875232 867689285 455874605 548036219 136805191 372437416 327025385 837445925 157213887 201029845 193600831 471782768 943674569 963318955 798624541 917538946 520450661 642410118 891448689 993070609 600776330 807255589 545475991 600751900 964743675 967969876 658291791 986281053 789975903 966522505 683912207 960932910 469364122 797134723 219816640 788953463 657885889 878884617 6352383 241803140 345621976 508233982 989167503 997899899 733264901 999355302 405991292 899952602 572423517 838863215 39096204 533933073 213570819 617960195 196436668 489044006 112803349 999367348 101320163 621453008 855202390 884573516 903414212 903567661 606883934 881614158 421489601 469826987 882347628 965383361 865334454 919728916 513709199 542889495 818977864 895943037 590525942 703833863 980386094 991770798 265183668 824024490 237703398 967674129 265393222 532727736 719092616 832343954 132395048 166120280 669512791 781248870 313449587 625462663 832722200 892896219 54659730 265805637 886767827 995067172 260722376 275434146 41434940 725409098 9013660 126995943 712880308 832070656 509821589 628495293 618597706 743740507 970329439 992618131 607767392 618007622 336241820 539176914 658246295 855380853 153892016 887874499 18482441 122365763 644802593 701981247 102246144 165621952 907044157 984502009 662493307 932750133 786496512 906289721 503304972 816110662 511245883 822697022 396072497 599530546 470019405 562058222 923403106 994130091 156786127 809227831 783583197 832681190 416723415 423475036 41795859 623017340 634794391 953209201 431966939 778426994 373687655 889435881 927604985 972603840 110220137 449422549 692583601 842518485 21251515 859064123 246759726 322566550 209671728 979140520 167335036 995009473 87399083 818054627 137662670 673897814 869260779 976217103 344267972 491871102 135205242 348477921 54371847 281231545 355609264 574083989 237949702 974673474 719999104 899275526 407673123 625357363 175508859 416293419 252347280 331303965 928162263 962564230 5462585 968498586 574257204 640573992 114017267 733364846 901914023 912228850 994077422 996817091 369828891 456812514 307626506 977030997 644822456 926316112 915046669 964661764 656449579 905227741 172528612 521873095 219124285 915065150 681065915 983201937 92220845 821690370 374098929 726994511 851413037 921474044 916333456 977117095 741348287 972863019 43503491 607695391 313075618 627259718 630762750 635905184 277518970 577102442 118872427 846826207 980732372 983495267 559388871 840246822 8490113 375481103 241948709 829854634 219099826 377746185 372877146 450828100 463693341 898035852 5197312 300437654 608650377 770010494 329388045 866941747 838724202 910965286 755828143 837552935 412325215 722061056 126822675 673774890 254302942 519689500 308378632 704555160 60305229 995303932 451280362 958464108 372145291 965206876 166250247 239484394 787784928 990416885 711079921 974723043 12171125 801671821 270166702 619754444 672472253 853272967 451244368 783956008 852382151 934755358 512050496 741003479 934800787 956161813 258394723 294778345 357465295 780593602 301289550 827244324 360970762 671707982 830464235 842452842 399176554 877396983 10497860 621419803 862799695 885780319 307997564 564902142 311931930 602502203 609989823 649172148 946563977 957038728 90955603 595150682 816582161 859853271 17069764 933905531 215565050 810722280 996641674 998566669 47262229 809564419 460474305 529186438 952024208 965941539 727139042 923829800 302462725 680959869 270185158 297910172 156456217 229623975 689565377 908929945 246583607 252356189 976878778 984570014 556940810 909453661 294236737 790316369 942374358 963911496 225229849 346275119 931124919 942515669 104233027 513863359 480001947 894744404 235993020 516036019 701820075 784931621 258602714 702652535 270721362 640769527 393533240 496207024 353358896 792579211 433389190 439739808 122823319 318870027 295500011 393655851 944320481 981839105 742928468 994057317 244643333 474753275 226150427 856084090 960358326 981551533 580518463 598472620 39046526 882271454 85429270 715382784 889837539 909199448 617482221 708976090 806668674 870511040 515094807 966427667 928714703 975260091 353302794 405595859 209823503 596896773 847908796 887960525 93105033 331980277 656290440 789671481 17817026 402059214 154192112 499000001 829103080 973025643 749407576 880827951 103435293 903863103 377853190 685698878 23779456 806215190 817083502 949157006 639471234 655989089 19215130 913949068 446199725 922327473 290535329 416071360 87079623 536044092 318516712 573598288 577414208 911483478 396805409 881815820 668982447 906435321 529072275 913349155 624389254 733523387 250294568 676359757 573203145 875673059 802899115 813580069 816571657 875277779 250634320 320271553 535222852 966087115 934935181 988216992 463188942 823762863 747476598 982015801 479966961 820629006 47282545 101506927 450021907 797348533 521211471 675743878 688792257 926084973 716713317 864142431 614898715 976877773 319472622 764377548 795387783 883188994 325171707 382950294 730169998 803614069 559455002 746981836 818391282 942500492 439043368 554620582 9782932 589866190 451341121 958098333 767443483 945596969 773474700 885102046 704407676 801106349 618861344 886985923 29217126 101555438 469650895 942220545 697857457 932313742 730553160 975062026 486913556 710242229 835223097 841999165 94184310 520011818 961794884 971037132 962280280 970873494 510369582 679797199 227062333 277585270 956170841 998478429 148443500 710558988 633122655 917842489 180754993 712164466 284972232 783400444 75663628 774302339 130644892 455065357 307815487 810099550 634279089 986802107 636767291 970565014 844258136 899260113 126901958 531605017 461051309 758609839 294543074 590296597 619629221 952661665 581836894 666563331 77389744 424560339 895984867 904230767 358312821 588684555 948761079 986407767 37675346 987677727 410349592 488720177 424565972 791325588 989739296 995563555 240406707 915398673 574625301 674125603 784463308 939800586 113152146 605684165 353583864 890136857 926837618 978474966 528112954 836706664 953080603 978285476 925041586 951439791 14768834 199974286 621254109 826019349 177428935 373833619 900980876 941389232 378770796 746823101 861380684 971215464 96664772 667311397 968371628 984145692 104480051 578341722 897156689 978548607 94100808 839393903 801231536 924744614 914315009 937650223 843439292 858650652 76919695 876497944 825991291 916259831 479088589 917056134 951896603 989509950 68148291 994032341 780589762 968117917 232909505 434209963 377702445 495654464 50724994 229058595 40631599 343975884 300636790 882513990 562184012 667518243 954811526 991599294 375291917 603322981 244207535 795343560 561267228 901135819 536560527 600320004 906890412 976441816 264690536 767005894 760889147 818842316 488935184 699216792 828569771 993987791 393358659 451224910 587093921 718572423 453751946 762871695 145290045 375202376 993100725 999571428 753791986 915424317 97126133 865426493 113562311 452606079 657835619 684173362 695701246 929012495 787205706 809364957 173437477 742365841 163353932 259284899 513450501 727567159 902384437 995053187 496731506 980850494 968327281 986597834 311444357 347325042 574350638 838050505 951342450 999517732 13451914 598401822 184751991 286297918 35296839 563199314 433161466 881606386 248090569 662031958 82865126 206970248 500980106 738074697 562789121 819198552 174925621 667054487 565475146 855105511 345675963 379119152 604365295 988840816 97296706 713226448 109281780 690837507 278885534 943788606 299595480 509952389 755465770 881992828 949694341 999815290 164064684 535488544 406832464 785745337 268605659 842897567 884432453 987127245 155437039 383580850 791012060 992276631 903153148 945740105 602454815 864635919 406263858 888702329 587404481 885566216 211285069 328353561 895273856 986096462 575842478 954602497 652067490 898102618 828948968 951175594 59444694 653555759 822392414 877683234 631985012 956050929 666333955 750586514 742614903 750003852 281746660 809286335 834224787 900484605 961334496 966867995 383551857 732921471 142860751 718536275 208141802 426830571 824537837 953471059 34311381 388673643 957573742 997591807 157167433 309361525 50543786 497846255 208005560 272977247 42155065 432654802 563285290 866568488 453641981 872342788 926413481 999072904 197247986 532292078 169443580 987305479 959293657 987121762 971860375 976550007 798966046 924771352 61712960 582227086 984753133 988354563 202320499 414182146 226166986 394365077 517462039 634249842 89057412 806664135 975253450 985359028 581884860 802160661 775574127 872455769 688933979 742831946 306186519 870888388 136189016 670869206 704793892 942337152 436856939 924356870 921389862 943276996 953403064 987589612 170295793 835948127 393587927 612768714 766648458 813646224 961287276 967809805 467113341 938296768 875245316 984372044 18385547 253971497 898687046 925383628 438527159 848208135 741341434 832981589 909803559 995302164 126495926 303623872 634991690 783728495 451361024 985011482 359315215 544390247 451427759 583201731 424486685 487689461 942576135 997190424 94322314 127243011 888382158 991981823 346744283 397257000 354633749 418503664 969515242 971066380 887696548 899747799 38148556 141882681 894486023 940612419 976497591 978921195 103564669 698647789 887648171 945640758 118404167 463210188 97432305 907997017 387268048 526464021 61529190 753859112 82186799 850747938 111728046 923327596 406119465 976390235 515576213 847859373 864937217 996967161 526458879 961494813 982134570 995591463 832803881 909229879 867247388 996984827 161009762 534100701 792700586 998085600 551263226 935286251 896982563 912010913 270189760 668492621 255547117 704397438 512031273 972272327 81459030 992555888 739888713 810453908 116140782 809135290 390720999 659911239 349307485 457229651 252329875 919862814 14502314 792867369 579514300 759578179 417483687 551330544 523025987 996264967 130968028 441802517 407441309 555467682 659485307 819072745 71693740 819414805 92984757 250779287 24905709 473830743 60723218 603615572 54481277 298348733 154837950 303647947 942389078 972553597 144957335 918194548 538992447 665441747 866434639 876911466 570759102 786176452 253565939 832298160 585739620 648796136 364595736 861966313 112727881 127346651 38149586 132362494 816884402 951535253 48417228 958775981 616947827 930710699 748903334 798827827 328539637 493309006 250027193 660922905 322945311 610620346 749440327 795680704 989979299 998349011 329946893 573311730 324114908 601973513 779188391 861502064 631173823 894070301 95240065 131924022 610609815 670401342 601421575 888299334 246719814 591548772 467188014 757920954 451544105 651717398 554340141 900425572 162331622 217624258 39686736 504666178 88572016 157054833 520313527 701884924 5176303 299274257 420159206 591187175 982134583 999253145 178417386 549561271 636785226 715050742 60190062 155927617 822570331 982058871 150360336 160642801 263892615 948683722 599778354 927656712 485145031 537191821 940191172 993849349 530875664 808640079 431383242 816434472 741645459 970182760 693665473 813024056 330853124 960721889 252705719 312898351 973430529 976186017 678458884 752448655 164999784 631454595 295855227 903983427 451936527 922449354 360607362 847754947 735940264 794514508 238432757 770841246 838628440 998871641 268900861 435415331 879845604 928379532 54763481 134709510 920663063 937516084 738661471 875464745 871666988 936609497 563738046 727628031 734475722 777778238 863482316 905312430 95186086 687698742 789253834 862125192 464976534 754643582 460494125 570966937 295475218 479724062 986579910 995223506 2027695 318526176 522615214 755126441 851700416 927624608 839282409 855428757 362508717 728101204 625996669 804781236 48476314 758380731 432213859 616783477 308932909 692924328 914231996 966913811 599034413 936320905 370033235 738598031 244339847 661123967 327557009 590866264 988176779 991546702 761394176 825450206 382397483 601132955 401205464 542706269 289145918 858688632 645127550 995542972 826714559 962239348 736254083 861973920 291913677 729354785 253160199 667156967 232872352 426210414 997686501 997882645 73977158 355047392 125514457 867512131 256303344 897099262 587144913 801703976 446754186 456597742 380548379 743170823 897969299 928107788 597382839 816550167 785110890 842892252 638545820 868996365 54364566 343632216 197997821 494414359 689829121 737300020 81519433 476810854 708350921 842629841 368043620 533988400 325494575 614228223 421540390 776742133 646860664 826545836 613281825 685990011 497499387 513236831 879495637 893279707 63681286 748809050 147110948 554087466 200282660 437768867 316065294 323927476 289760423 694156452 448892983 596509151 331680950 539604869 984364076 997368316 962189754 980221593 953296366 993350321 575967713 588684809 595490453 685171009 366393133 401304832 972614722 984788833 252521464 895429902 811046206 859276433 320168643 431669344 204212799 377050449 15197258 139818425 661407503 830219098 100428456 232285061 371845685 673187961 74866058 834389108 430529591 649116994 737657233 928988941 665534821 853026645 315835877 650105065 588832652 724881452 986406614 996699490 13808474 863755375 642769691 713757842 603324780 674409529 576321318 975431295 366823888 839596616 484402965 797577734 968571169 984511527 593368236 633693239 11076902 278045735 646911703 858134775 769068495 790657931 990179009 995740655 305163922 775600107 520887795 597609080 298656376 933544581 649685247 830285270 391293287 742259447 534137651 999659054 318579709 878471222 259346977 780680197 581488599 945681149 281866795 347044594 264461314 715132672 191894312 526295316 424426542 778024609 35534597 762310986 186321486 976069851 179643491 357544138 502977594 598966954 834341438 973210171 854569744 927379491 653821498 762302623 713352722 738650111 255227600 947472388 543686623 969789852 958789408 989396580 350736242 833481373 323003107 727923567 58409279 997863543 702000239 723955040 930929498 938639500 725476685 818769952 33229280 327147661 732321553 773198347 665105266 815470602 550409874 674338660 384324848 885858704 559790835 798759308 498240525 605610845 761493960 852421443 168674718 875763184 701933067 889863868 132704572 662179098 635827519 814703366 200256988 634660677 764144601 774765563 516994196 855919079 808267635 970821555 387219772 717397581 628223062 904470016 7990946 360160663 16247827 348921022 37410361 223951247 676217278 714762744 64499764 570054083 718227008 857926750 269807692 626465050 554640351 909011992 124176592 216720379 838731042 984778703 40253534 571013690 148412433 639202652 788892227 819485117 442148647 930613899 644917978 719205940 90826859 794888071 868881421 990685510 360186428 841073174 575756539 998685205 890688884 925686482 999079438 999227387 578679398 744577394 894373962 982788171 651989398 687379014 237376064 897933778 249094036 702016594 441811908 498264212 518285992 556567319 518936330 707668693 183202609 344040614 453701224 750206318 370521037 394176347 542424206 600258557 954686682 987479826 67784135 638052304 949332554 978889679 872277348 962492730 270474705 481941224 361162070 829571618 749998054 845248810 135015949 564727851 394613888 891927968 400619233 610063593 632741098 733953810 534790004 956259784 200080123 330159491 405198846 548308074 340649998 795206955 574837917 753462004 145299759 649602798 299728858 706151751 955036254 964589925 50608339 820664970 428468176 522765031 696505064 879227687 357057567 515420411 623326888 779023402 654885016 902416354 931079452 993422293 387662905 618379009 941961285 979360497 263101041 680327775 730824488 784794879 40801671 986958020 930855242 966191341 788793982 810411447 701178379 923743790 496136261 924644812 845516880 849480911 875874144 933061613 495213497 971142915 792844129 990238365 866812803 890931952 703799808 733637096 643589578 819694163 21419214 843702657 751523797 769060521 331155275 611916418 217179745 426181455 69519393 317756825 53341561 509375674 949790878 964377196 935903609 955072416 129608197 768625341 90319394 97080464 130700544 881318469 831649460 859366396 149240903 421100225 481719107 618193407 239370383 446907265 561408797 659009866 926454917 934176550 857253884 889738632 275500182 509433668 377705213 516912118 834645294 899281414 459664530 872287299 151797141 514187014 89242138 544496357 703006198 778842895 78743421 660982779 881226948 964767878 280301877 345865905 570949731 993575747 132279322 213232423 42540391 712922211 174738245 355345631 564734979 970883396 943208059 989978228 858990811 952274681 47201452 670148260 818882991 949021501 956739313 993844894 816397150 970695275 130487080 911803092 389370152 525250395 869359936 971966557 571878074 921632521 722519520 832760485 990199561 997686528 914053587 917460199 891780604 968766956 738403792 813604013 238945301 360526239 43085306 968246098 52317987 103345633 644472687 897594803 772880992 850747297 417141115 787864436 509942605 764055514 276292415 501345637 87909186 940183088 98223520 723198189 496593778 611549467 589017508 814962253 146223274 510653922 65551560 216649147 922293519 992023664 958248303 969338484 360146573 976681664 377572256 491260364 959192383 971011326 138053429 591778962 659595841 922728508 50486076 422202967 760641697 949672538 322755029 697168341 569198712 737126365 426432798 522640294 759211001 765123881 170017103 372878174 811646943 916931193 305205289 655991825 161222937 869681843 132193543 612824511 330751535 757216078 484157085 802464082 160818691 422810323 350008771 354649519 946799476 954966714 884609025 895726799 590514805 725132693 60077646 331784504 775284281 889484753 917480435 940603993 986271451 996908520 861038213 975191098 515753998 843073664 369208791 427500450 194692423 822479239 711360002 728466179 197009182 880653577 627847463 878182565 693218929 873483896 49387393 546674364 778369803 937387967 878782504 932643072 784744800 925289263 376440888 727259451 503696250 922801141 808440179 888214112 257784673 340303912 260620740 650949079 669304260 968931955 942747129 961234092 99475092 751387682 633242228 990132964 217297842 696504121 839260601 858971420 625105414 649748074 484644861 799534834 893540404 998429269 398629643 755750821 27923777 473551780 485113136 765052982 146950649 375138311 18018413 48470068 173307474 648632398 449876608 962883587 226444233 802008226 520520849 727483739 584127707 814063331 748963552 838403662 673443660 955727417 371160874 684195326 866690261 990129301 164712970 342482258 169144318 212554412 907192374 968981286 761273518 825656276 531826811 930333833 82928018 571386397 538112858 567119379 390079826 578373762 622834565 768990261 4905649 568548411 198561412 654699915 675932067 912407924 390637275 859244386 271482454 690830917 149409480 776888992 692604064 764423136 554822922 980213379 410569049 446830776 471376856 845556863 945463067 982739942 315428137 387956732 64366211 855183360 821595400 837095466 800724853 843870131 283962686 320311918 950181308 987121709 246081423 952443172 355136542 432483173 633503161 981585817 915206842 978365538 622250981 891814817 375643097 610771222 529386339 532920869 732442681 945092226 225168917 473508354 835693351 931460386 499705356 544507761 496277158 896991777 91538523 786622289 16862158 299697564 947771971 998115721 987142094 997700236 82630575 182009463 936491657 992869878 202061645 630744898 729830250 990748561 905718173 973310455 110523808 977563488 760889777 998787726 921346499 981800676 96141327 279072306 241520634 340846140 288135291 517837031 834863572 962080393 243033772 983289268 72321114 186119325 540178011 948233503 656498502 795138186 608963050 796584442 169846575 826870977 407250878 918226854 910775816 993166040 419041711 609167928 942589376 958654972 932429189 955069408 349999223 664092999 107139601 423623001 858051645 879161769 307658711 969447670 657308954 750775469 32358096 664783841 311490272 713071116 224712263 535825340 521016408 886138569 601398129 737436188 338105163 441262295 826038419 900997230 783200751 804249489 215102590 917672871 502358283 859651666 583512123 755472302 210996362 327595384 103836788 310763295 188325402 908646575 382004494 751916337 305934679 729514202 880706796 897532123 171927681 297489934 889128184 959913063 226108984 801210506 955647945 974859134 273334320 916264533 978163577 981505540 190849323 996604672 179063113 499367331 646076356 714024953 624399237 956958183 17532326 801982753 420513891 639879716 538799937 732222163 989062676 992359180 623822776 797932697 177435222 510938908 620331927 893360005 859096176 868812279 54859931 213617452 52416733 658783263 927939435 999142665 837949140 996611198 868552729 989690143 855467578 894118823 886331239 999675486 875452064 887674097 689749246 980339534 944210147 954110776 605805869 694495567 729044417 758518661 428727126 520208871 763781458 788710853 82843939 451738968 956480099 966662535 234525681 425691197 77323952 255547603 366750516 431059228 54130357 317021245 628298232 745621417 299601955 960383824 681584265 987184930 333812598 617312590 179070351 851876180 57787423 764424608 51482875 460663573 454089395 461471298 866318862 940190090 55070822 960544155 667081789 734200181 407232515 747072262 958619771 973609114 991160521 996839170 494148612 756216685 588709319 704711995 554849684 991844733 873419351 907424294 425162911 693844586 684981647 849777684 748316187 763260501 807058327 825692092 922236445 990527004 895082108 991298124 220529056 283397417 199850625 662026888 915398350 961916764 59728987 709877632 507829649 678789702 254327859 289913641 336864494 695329624 699737724 935516494 597911889 691427461 196685765 475186284 742374007 811228191 163930341 342054609 616831726 991941786 628349271 748808186 969262086 980266024 371780168 928022016 821547142 912090617 884199406 941003526 365376995 817531589 344813515 452412128 312812270 544723334 704545984 997567918 388406503 487023850 134238186 238400000 542136602 614569756 714313978 914150801 40343946 244081870 763278381 940066319 36526338 407029307 484204250 518019742 606807808 823659343 382417447 872098291 189037575 278518357 987647350 992570339 220400006 348480603 697134105 831897945 344444470 544353453 395804488 485637499 780209515 992845487 615938782 692455378 179796107 635690894 496653974 553368070 392037118 785660848 469664679 863058274 971483582 996556840 617249960 954371302 690986324 981645833 824573723 859260757 609729052 765637619 868670167 873016292 58201289 730309490 384765119 868926521 502129379 503900984 983994236 989759391 123787115 856940236 347754189 974199628 854954660 906688125 217946863 268038157 475650458 626583299 800069784 809047675 253864668 538764381 739252926 769015945 571884633 886751995 949163256 984138331 263275484 349693676 982187688 983932627 668747735 866479964 842264063 943662393 471485208 526140283 543721527 681617063 775008366 961913594 587109730 948778213 643416307 889153834 432243928 728596296 578724466 921488934 913243282 969125377 877771898 879840590 357008786 728170174 668596211 746164867 245242785 883000919 424774726 813604863 317659554 823187334 928960714 946820862 34161739 526228990 954934159 976699656 868641150 936810654 203687037 860075305 167843892 890575206 482626648 513697772 24231767 354765280 228236939 342679252 66126035 998134838 212144066 986598436 95840220 624801977 465281400 524052556 375542614 769393847 728341384 985347171 769060309 811030540 17505620 788812171 205715375 293766237 302680147 387381368 691528284 835984215 188431473 937923961 567004441 887575110 440267825 982569668 846403198 979919032 568360189 751453142 965967002 976071560 206209036 951784627 842709138 988137819 437584074 719147021 518153738 946674860 278713705 510172197 489570367 859679206 775438393 885781472 228199049 632211876 695023120 924692000 799218318 924691655 536088173 982863735 290125323 668199588 663625081 987267571 244548609 801388498 215188645 910475394 417490746 530744834 556868653 635179608 639906786 760906303 154902504 241430705 307657424 424821668 333874088 489176151 231746753 415427255 635455460 825600244 372218770 949736885 782527993 907188823 805469928 918976084 992754280 992836991 611103536 710204156 17226372 651943214 142111976 352165444 65032410 357964034 638662582 954184677 224973304 483845641 443506593 675470773 482863678 936626034 693793449 849926658 52867096 798880920 649441435 914728575 583379377 919724675 880089148 994670905 942903919 959117663 115978241 842874436 350918502 473963845 741153168 793521183 198173373 558536587 330790643 694789559 858494358 920154293 824200215 866775827 947303640 972230783 192283202 481710877 246720652 472088642 413521618 481481939 425708900 675214942 302172263 348165894 842750394 952885832 439704595 712449066 276179101 341828844 973839337 983195556 595116208 673023818 164721934 307784468 811061779 933535341 828796477 992621864 581369320 583583300 747410447 834699671 867056404 906048625 559359563 855473318 3388379 298563650 397560642 526055738 79521249 331521742 755493972 923856958 941725997 966231213 222515245 321769561 239092137 471342182 855821459 912724546 37304668 719578647 449583270 786948145 201251885 736080560 264050794 775424737 613366268 695250124 312060797 986546999 820165512 981464624 880437225 899471688 730174305 908961989 197116040 799892659 169233996 562527717 376578730 469824543 486559007 813523798 285212414 529508274 391080349 590923871 88828092 572020418 695028670 989727363 802797630 916916947 366692038 747318369 865891576 899006016 128238406 705905105 917432732 989985761 469319100 934285989 666464349 787569331 478536892 887901424 406475630 665750127 357083714 500545215 373936337 979853627 953462496 987085383 537294740 615050903 32178036 589624336 470101993 907257576 356374933 398919375 587525998 811620679 901963254 997949558 653417192 954121127 542556996 786012814 316585830 355786371 744432045 885078173 37946264 783711931 334700857 407609662 618248640 740739447 214182197 548728846 458072789 784231479 993585660 997891727 551578942 577451248 612259772 680861431 923260149 987915425 212647541 605366094 960435103 994276326 408034256 865317691 613399731 805014945 626780146 950546410 3305760 554597213 73613324 742459863 839822056 873252167 350465287 944998960 31996642 367462660 681977362 862262247 593958747 791606488 170105165 959823509 172237792 493384064 496176650 531099506 868784141 945549549 703509107 899608833 857320079 894345692 104450213 799145098 868872122 923194134 818193063 885865724 674281083 918865439 241057544 783659801 800062243 907770102 55309314 545539582 357304059 849023997 44631257 944418443 679604688 679693459 515042133 527672772 981013948 981177382 674016493 917670627 225430023 351608941 954729626 989279102 703397612 831649192 743823203 787948219 384591440 950327094 25095992 180202736 297761885 607123548 604555808 879606925 312934001 746296679 491630378 922517975 5363202 580363545 2364587 418882470 712316257 781611786 750453689 759208104 704726806 889319131 44083473 687116390 732560830 873526122 461862769 706812886 157886071 991270834 366338390 394833354 182680679 351114574 868499795 927642792 598928007 958672706 378543259 400464828 869827390 926860037 347452879 828055444 666784163 850160753 22445042 936718555 5004432 226910600 500072202 863051126 976589000 980212457 35163535 322851513 645003795 808514735 541852495 846990057 507532918 634046582 804497801 864672309 55279827 137840611 906171693 937454541 821124267 930348503 480568855 510240242 948486594 990806674 982006229 997865236 21240178 857254110 264588364 391087810 993267707 995511831 907787402 968887825 413168010 867363427 157984509 855893232 47486532 886785125 833942107 924899521 406592370 989877164 777390416 892085492 795927713 813258603 550943782 905781826 377358947 858607188 101669107 320041719 568463453 583480625 920330791 980091452 704928040 887116122 387467865 962158115 67968565 423442074 41112739 206597554 412096129 555212929 752474771 834081982 633467241 833639208 745844792 844791871 513543842 609694959 624676630 757219672 703003272 750881332 527670926 661390714 212681346 862552377 98100867 115643948 272639806 963423925 217079871 867852074 417204031 499017418 961714611 980759036 967280653 986710453 704923996 707464880 677249813 791221390 641298433 893100485 55858590 227038346 461159736 715624564 185887924 267708653 976003057 983487921 205753961 842710477 434484801 711859007 615726560 747081466 941144646 995988754 45736724 173482788 509358835 792782940 151955109 191073422 48554651 347912730 10143850 94790443 86891103 679846086 730805457 743198368 351210148 516602066 874265841 958476513 281465321 331713126 815190328 950464426 319063799 689712035 663304839 703741467 699581296 789890289 717468747 854829241 537309638 790417382 793682573 872304437 284781136 595195329 294065132 369532830 539876699 558975469 265489737 734481245 545124047 671556551 391892182 420322979 456881736 591705107 307822406 641667342 422920398 674482549 800673875 992100067 40763871 730877378 439459606 502225764 936488336 949595642 177771801 801141539 623645341 818266465 238966019 611451921 159633862 199436619 382587944 804721770 646844414 677096446 596382095 881220301 986487340 993227175 823994558 988540310 603524628 712255061 634009731 877431737 921222956 944441117 585063147 952429814 255765667 607418206 246441824 547196816 479925167 705211757 4213280 573879300 743387088 924085057 410662840 682169701 799705710 904370418 61420820 781269911 48223366 142819419 368449360 812087684 111280506 432869459 118468070 896797942 404496189 586946816 138379294 339269975 565300150 746682326 519144733 997783462 254252642 539711376 701412297 914486248 896080001 905188265 51403231 928308422 97864518 656160677 979122200 980605500 688247810 996144694 740884464 991060340 373733394 747279405 733978524 924092408 780933970 983481203 89396583 746405715 51575468 60420752 50759184 418327118 192493084 230418412 662257477 884903873 783048327 886511116 860566727 943731319 744330177 895672908 393468011 635364109 499886420 630534606 658417544 743552823 888841881 962119797 662840930 878253512 905732914 938638476 640754841 766164346 754369595 950451628 457988925 817937917 400998263 746456272 35568992 485919438 485688858 492194705 348740546 710668871 942862278 987204095 206485635 589143185 149038919 467946099 842994732 933172423 591667599 797555711 486465090 695019693 112347935 997979055 338066741 990033029 603837219 681218010 371497138 899803551 270434754 317516375 285134930 631552689 742360317 923667694 576318441 831789637 238978351 411595630 383182874 999734855 678079886 814277992 913432767 970560129 401927913 510196584 15956277 134393966 298145512 979563506 105991887 451986507 361308259 888765502 821365896 970818653 57198639 864626760 708916761 876263798 906235387 975516263 248655866 713361597 139955841 202354742 148309292 859279707 955965447 957822903 411118544 990551525 706942265 892917476 167565009 438263631 881234563 993957562 904188597 916713040 492670006 565275033 72168764 634469982 187415013 460700151 4884572 199296856 273008458 942242349 513819849 802749320 768602773 818704930 663800201 832877154 518892343 908429186 784597909 853158160 778962561 909426871 645268123 975527896 36834679 787707153 741436436 919539298 130199178 173292351 95617058 582197031 393070901 414771733 960852407 984924074 470555764 800158878 735506058 980709533 833484613 991354960 799200916 973038217 515588506 884331350 61403649 98983385 894705479 956050934 939911177 967883286 486014253 945754565 494888950 883474023 155265016 952958649 711102299 937009055 603525296 966117294 518198467 873971837 16235871 975762270 183352285 932113613 947218678 965000121 439414004 905997830 94397116 315919644 225017356 503708548 343650660 377277669 160460558 869385251 532471499 631554852 639925406 690886739 674743541 843558170 920753912 957354000 611121247 954730762 897537950 920985847 779038369 838477074 903308902 932958403 115954791 398767517 46315645 425872452 929219741 983247304 991432048 999760734 942435947 959260676 808828285 986917202 697376342 928544786 261345674 718652488 205023495 530587288 176553975 270753667 845105960 935277378 554407581 746623644 799596429 815401968 813990330 865332985 750903418 817624779 880518453 906114978 838643247 904614683 131219175 143624500 529282632 936520510 622855871 749741113 871470129 992155601 538038954 890896628 342519740 631997598 951993615 978965217 860184409 899335783 595236298 605527774 647060387 836010048 263792082 620360173 940398784 968281265 839741446 976003217 773707652 886866545 991686041 992307144 627887619 809201675 214039276 507703500 215412650 827231795 456765155 890726921 713818520 807282487 794381573 836101392 872465875 930202772 387760135 568471866 595682141 884974019 958768640 970069923 938097764 981570564 402665889 879104753 635794621 746899317 23224120 863582335 21517138 183046262 306002539 492722863 801396293 921521435 806887095 950714364 144246997 145559506 370073589 830693659 282812733 533916084 886845911 997347609 945942038 964953221 563356869 615211549 336312603 729980989 641769036 749787621 273564965 321532797 603545593 720094180 194330793 616919846 109790096 366368814 881530092 996180006 298868704 565548454 823849662 988411927 196573597 937680282 919115662 983787258 549261260 836345519 328062738 939148089 512558961 839674616 447336547 656191043 714614454 894021286 142075169 576672386 638070584 894864725 134705558 623332792 985740829 989287730 959321707 996250783 945048617 969535480 40866360 714865336 859348353 879519545 978512790 997882327 915406071 976570413 839499984 952336802 587320067 591817553 471312010 681983545 433120418 547277980 631922161 773708392 486113659 496268988 755533195 861695124 384935247 414588833 213684734 584847391 770426392 910644432 816558056 907047572 910263890 949442986 665142499 682233272 863656086 940776394 782015588 871186107 828558897 951836699 537051328 615884212 316584283 399939719 472159164 871330131 16384852 192586786 310539141 422571338 898485584 987154085 382996843 477169771 975488173 985177839 713768931 776000574 817047766 874347601 188293903 706862271 492609820 925092430 264150182 601885780 119859447 852644391 883260187 918298976 570257830 824078138 138501008 349155825 793040389 967051776 720023083 830107155 455554565 594846904 229570755 395382806 122162093 622417751 426038612 467832125 563863768 947176904 688823551 885614125 795396932 821169291 490292706 736211959 153500618 751600654 833489859 939221849 720520722 787673866 698949270 818629928 12065617 147331852 895257515 983658097 942829061 978673909 72763044 478236315 542623668 874427223 837435480 938247354 545639963 698770779 495676121 570235257 54702193 425700615 898881839 899090507 688769086 966605951 713752864 983130085 159248698 427382022 621087038 918696291 47158305 304735299 133583555 170987687 80335189 571640617 226961012 582340009 439834289 665838313 843247098 974496171 272271853 273092774 519908581 681621298 536960039 964393722 742325243 967556984 539278080 679558999 42851098 789332955 48856780 234825404 372113107 722156799 777467019 968675817 71744581 502589833 158169405 699144153 517537749 632396367 194477665 985066840 50200829 520324407 917867343 943178173 321321359 675565596 542655655 768764060 245578737 800059059 182938771 761983741 998112532 998742812 540698448 565226610 57203156 70490507 897954467 944407557 790351571 922563025 614835899 731627432 789611182 827677036 24921174 706985051 685250492 956675157 543233555 809371646 810320869 823371340 775661706 855961198 396803364 945699489 793015824 942016912 64166398 372630679 707393159 765325321 526950456 659253646 61702671 758518759 318866892 886159748 839414541 885381423 436443253 675926872 697059538 893532975 835891099 922892588 371927178 587585781 834315628 993488976 43302449 652749184 285734548 962577069 952606600 977422566 682364192 928863328 520101215 653762368 512931578 823366595 993656797 995085735 934611344 970706230 444959184 540263200 916359879 919109824 876712145 953053709 829070302 964000268 328006212 409924787 614861649 684095342 607869553 834600044 421143708 508840455 705265521 985619031 769078219 940645791 902507626 958130153 319734070 325904204 68719662 914026541 569439500 589507439 895633235 911638656 91812586 910285417 883553962 999059840 276905150 510973176 663319254 731965958 671220013 722177905 845800529 962151074 606158044 922688208 476358321 586937943 788165467 852042913 140877898 632350584 926768615 978269457 756806915 830357217 789580809 949010441 555029522 994056728 223317711 953566632 360698974 792275768 28233990 315548007 61110079 159115388 332665971 753458350 186086245 537147320 296000180 662544112 620881540 750910766 713499726 895639554 229205832 507740198 495223558 568882998 677078097 904787659 523249416 541708146 810628484 845047254 230253146 476150670 656161866 767035263 235878899 313498339 994329096 995536451 924651522 929025197 195507848 754926298 314588208 582518070 911773684 933019586 640911365 787491652 801704835 906213689 960467097 967146998 658185909 773507766 422613294 678463701 96665585 808026630 321661328 478905506 492976002 646281847 718303181 744131605 701873852 841967141 101226810 772534012 757083204 856890041 468229535 579350662 128618946 923527602 312050222 929514175 180541233 322275582 134720722 908287623 76171 251210959 933395083 963805553 5574832 767073348 333413323 673204338 403381048 831498454 603640676 728053718 29561876 547943924 160965724 243119329 751729796 929022738 950017995 955587046 377616104 542855022 580673398 762886323 275512952 348936938 853938593 866128677 541446144 702580851 478765002 744641864 289432239 977352190 129640080 375205500 666137364 726358705 942146961 972777115 168684906 545892846 421221021 685037357 131134620 532486086 410039932 505065415 125695244 882385180 674287191 962796898 41755912 104654445 386081356 737328981 399791418 820071862 993321396 993844122 204859814 991738504 907275932 987340751 724928900 931580332 343796669 908521856 482880623 688523196 260987418 442588139 343124023 618833150 556319687 970449442 59990051 630130187 857311931 965410026 662781796 941411384 748098167 882299530 532370933 612222112 703291082 887561194 552507232 742258782 739602468 829436103 584307743 993622660 216665421 355326980 371319669 653486669 101648523 515380050 660211266 859915666 651838457 857860384 419071262 636780180 246083496 291280669 905739408 980813257 230773769 250011544 386698582 939753288 811919959 851803357 922265082 931365311 500099569 874742466 568670971 856787937 169048601 667194417 852669415 924339603 426161604 970365300 59055815 449935495 863596558 996038743 217071771 967739464 142121062 700826125 645464331 910943790 725293232 801404908 325767343 714945792 83816023 946033429 733375015 804177730 436921778 839283455 447032963 918455305 171945003 193706867 893168967 966235352 547404253 597051769 633893041 880692129 761691076 835304849 123759284 190279637 634716476 746071069 434878378 836691689 670705185 885217106 576061018 977120647 264399480 852474569 32647353 131014583 950269643 988619370 656502877 878996872 47207230 604200829 490918006 952804292 290026023 900633364 423951333 715798325 849890213 921592020 668805313 900071169 647153810 795619010 178294671 807655544 400634789 522247349 855084345 958219746 86369518 678249851 218597423 493957565 395507743 784768150 293494529 617164960 321857252 855473164 114247619 318987512 846490104 851059860 708900920 841375062 704656976 902347269 771223175 967598393 898817003 980389864 256284764 939797050 443378736 895179714 112233025 466698441 542995661 925687219 882405657 927552264 269583620 650068221 468718617 744573913 270898544 907622519 309241474 832245558 826897944 944005304 929548864 937842276 328963348 409142191 900523989 910786684 959089743 984020878 852397591 973206089 51051577 383547810 255169908 888345758 999584974 999883596 948472073 989811848 948411697 964501450 492874237 671518857 904313556 977660026 617046692 629787094 367543428 371828825 437937829 913265253 417681801 631150705 710221417 777511249 24420704 775895688 665856972 795149790 113791180 160463449 981792326 989839619 480420333 922997121 909598380 932579954 594839283 674793411 599976629 844184294 248748394 895981565 342307802 770501445 253414977 570921037 71344540 142818393 283843337 479754660 61462931 629248785 14793627 840891366 78436304 538133113 720954628 947147746 561040672 700207228 71661130 649107284 854573973 945794615 939219130 975079886 743192135 877491110 717250117 813870778 601987201 797943577 812704258 977028100 488029587 722557096 757218995 826259959 62714928 861026476 578039506 666130216 420122337 998900488 544147085 919459978 476128482 716446794 809169257 835826331 566904740 704177358 463282065 757165125 110360149 791520358 220816985 294086523 849793892 856125031 744128501 769514152 366825969 483567293 154292205 889528802 259099183 760260348 183704307 772052257 832021718 918155027 686738564 877320797 836297748 893833967 211282789 506455239 169552339 588380930 818014633 967978906 399338973 773414182 868493252 902881683 453042024 737916548 236615894 824763635 382596384 409619317 279916850 426275320 414602965 931773921 953172945 984674783 220282012 732938405 6505667 149463202 269570349 950339918 108410487 539564697 925328551 974623380 407584361 539251908 496315383 846492254 797686513 996267994 733398285 864937841 634545214 970095493 928673575 968748014 168676384 722398634 718458422 938884978 508238974 897434847 411223254 689371399 256960258 281346438 88167319 680424838 964654536 982788754 711796953 922607434 635584406 948551418 693762378 834864880 897071957 909453484 678704703 688046513 721447940 985194173 230769928 441455421 814285393 936078368 142704873 603531293 950486025 966014308 666598579 773899788 824671338 879471039 626073600 789140535 30978559 586235519 695923861 878796822 345446173 529983081 24522010 513274498 273476798 799771453 717600306 904458628 603464293 864192320 821540834 831943283 370203380 635300762 335377514 962508169 414381989 832495082 999740822 999753797 447490490 951611390 410603348 813906413 130365781 730216568 161701353 802594414 812619169 917318635 902867473 923815041 894007172 961371780 62997020 115258330 502104445 563570518 944299004 952876009 109744441 330193179 338569310 902738327 237910659 637802095 661400240 840862592 221511198 839409191 282294101 528425351 619213242 678265348 782267344 817628864 65315073 309525649 415888002 751867687 459589017 585469989 255456210 545497085 693173996 758216520 14389866 502049356 6618277 261174438 73475331 320746656 274097818 309114211 526126448 756058848 39252917 296025803 579854576 822312963 972821044 974650992 506944956 934807267 281216696 998527140 695181300 943914288 82387494 809502333 59249692 578774900 39080325 286403770 717127874 992498686 627037439 660296243 949511719 979167899 534367542 661970369 998251258 999122594 16533572 915328749 35511952 443733111 100652390 374931340 790667236 943821001 173348158 528637592 124695762 807887713 245779048 340718670 491863529 699094104 583573185 953863858 491610338 834770043 489986651 710667831 188032992 513431723 482804121 956392049 675750679 868028693 850141007 890744107 327200489 621831472 743514867 778997794 407961727 813842717 372798046 422529079 153526108 393994719 727703472 792343639 179434751 384761378 893766714 935302980 520751133 655754221 64915782 952575948 271708702 861422313 996278544 999215373 247317155 750534054 789618577 821480794 932881228 984058371 257387745 871903914 568986570 661716491 771899452 875621128 596931939 607448846 115392660 610148483 317895395 665979472 887825817 977544170 35402006 892373043 151605213 818806331 300141052 402851180 257888537 382450338 7594955 946021977 663978134 970892336 729547042 754281054 694839023 791937751 98942056 480095437 700764153 703143379 189720315 973106020 492244435 811657681 378653508 620731652 205354751 716759571 560720362 997418554 431373560 975023492 475099373 487509587 18237682 86370010 714213097 948588689 702535092 833989020 274821567 909204218 577555977 995655734 89994172 482291162 598196033 937956099 436825440 700930091 517527079 967393592 129526470 498844961 457032289 495265252 801861104 936403905 265263069 852676225 83079658 168394139 156742701 336343749 356264891 421884167 296472150 646146542 711127355 981040924 438242287 783104640 46694347 322126303 181096288 945966687 356638892 810798116 401915331 821885345 197163901 666492118 179999306 959232569 360502761 874514744 949897353 969623268 907767047 931675025 740458574 896571682 878479248 920868636 972151792 993734754 778509193 821403790 809067150 877789725 473166754 792637759 745108775 822009287 389851515 498335331 711724427 758551404 720335277 798564716 584417999 717094284 615951330 758353588 603353437 820981062 682689525 929805867 691931253 960634393 467130754 864547754 588669807 828086997 75707129 774799900 587765600 727104901 432170717 843166017 203941166 592750481 361301095 763585260 279663839 424221437 129832120 540524147 805154063 916374840 904802148 970392677 793011617 816062804 916079646 955209523 683364877 907573177 61984297 417697388 289313227 864552557 781154707 976858275 187323373 341575749 479695958 933305275 783138079 940263182 169822301 298596832 222743998 657588492 260852103 353015371 573995755 743358196 21335569 344691094 616407144 759407815 996394061 998850545 748098129 844126001 688645411 874764767 326101043 731734779 802737603 975887822 597058977 829558313 963434055 977900531 454838825 610263555 362056553 572175977 290479008 840462074 744074087 834961513 418059669 421686032 89688385 387805643 342625107 666258560 89662979 939902203 860554498 989881968 723421425 778224195 925181435 954758911 973227366 981040824 787682917 863395119 224573363 319582614 953257648 974861678 606712318 625072310 787963841 825433196 453889919 866613998 543236391 778176798 268364839 860070440 559508795 828130052 149099540 792771076 726774457 799079778 956513049 986622937 607331917 649279572 214514901 956127459 406637142 814122946 755403450 954787930 564810941 673147580 108801578 603377873 869486097 962349186 1177592 428083936 806939134 814135277 163907493 793860591 324035011 519807632 440374355 623430360 632001632 688370879 61666068 127890868 894469414 911236381 608744170 812667769 341681679 552045015 717691611 781002934 70965201 433545985 414999240 809363814 119394011 331345121 746074401 821840329 125533166 241614272 703656258 916654685 127941321 363394123 7583647 49384964 615076722 846795141 439564191 815809886 871775449 990723006 655616814 829302118 239105219 651373231 624467815 758161289 214379723 821222689 486303473 814635940 489319083 796792976 114399658 939007375 246566864 266690701 583094708 894298229 473874100 539239648 76566525 351290623 200453915 431505739 841242594 855315764 806564035 851177951 520694035 934668106 814060909 926927478 321710348 714024038 157514322 694194401 906313438 945868520 950196761 981873253 728951829 763970824 677100415 862122869 228241117 653780091 559279541 807455378 113021223 338067842 100358599 530200519 11149408 816842736 67544815 550112259 844855918 913791467 474196940 966471366 139219248 170268231 682554282 769709274 306050270 670335212 746743582 982711005 968559488 986613270 462264173 746152468 118075781 503389428 376850387 552281201 890143837 966774026 315088275 846087857 77661940 687520485 763496336 835495525 764502914 999861943 767531322 998887424 601042378 626964660 955183819 992800034 252816703 599555968 177958228 799774437 876944989 934536835 274216252 807344724 219864538 361453701 715070006 889893062 890156782 897547771 962330632 997401730 786769500 824014676 53789756 882574143 174722398 956067745 976908708 983368783 444473113 854869645 814449229 976838818 768867170 889991908 471979139 857746934 147298612 188480833 841652263 982501517 356975403 718530578 118355659 565247867 434824015 962614044 578360293 711970617 944405144 947110972 981362501 993135246 115921645 935448424 889303444 945506442 495496683 962611618 150450437 953721586 589015795 841558645 398829753 411274316 600252644 657339993 925673002 962221027 24249777 332457836 240668438 300742743 520266134 744019661 35716843 929436902 649513223 892383824 845573138 893897317 683973983 772323870 156335278 319249011 838961674 941478583 465382677 640345123 725686229 754084721 286617270 611884069 995920848 996981329 18766225 809316176 189161750 371906978 122746191 966682274 897193066 969197577 674639132 702024050 716156736 948182366 784740594 940718384 409969213 643269077 34783800 125366956 235815476 935462578 295248481 877673381 555769055 606325960 852283404 889443919 12642121 721039062 226398085 762573683 301927417 528405517 395407587 952837708 317413474 356486207 88123580 893395589 482178022 778653631 992347607 997005259 399139197 813690505 253595392 277552161 959959773 966972103 395007142 724404407 955894081 960056864 701151280 923499105 18480571 353787752 856190698 901183162 668789959 915234661 889139949 890964894 106455195 850198729 679212491 951551088 926178363 971548566 208747202 556453895 3234192 504394675 843594389 942660075 439157356 721021589 331719109 358611116 544539314 582569079 188559076 351839337 569664567 669266255 638933924 907080881 965147938 980292967 763446198 847251669 949277130 976623338 352396262 417631193 897362854 961773696 92401966 272090991 242714327 351751722 856272890 988555234 520773486 963122244 495156097 635563478 252473365 550247287 897395827 952518521 322287546 680144547 519849434 703558292 377648372 752263056 387468984 912550239 325907699 583797929 869765839 940852506 941645749 975455882 828753376 832021377 107782580 606650093 180430350 367527229 445088788 809807332 860134203 934267178 914976731 924061780 291943387 929215585 905258729 972590939 155885576 632749593 382984778 753571404 69419501 903950050 972839397 978093494 892798678 931366491 958974844 993658273 335457012 703103107 602385054 615025890 702183139 989985789 98560312 118961426 82585488 763687805 880862065 978846975 4476408 927977769 816890272 863674558 185143133 268415698 748175576 827674385 69397129 424783617 934044379 934265421 642779256 778721453 625981844 702665766 194080567 232774469 885327219 924913684 298412482 535272674 278144702 788235320 989555067 999664545 260751810 540981693 194362857 497797198 586679800 720281546 890001124 989967213 184176530 850310117 930624604 986743711 331840023 853612776 259417406 996924714 419308497 467062150 348242974 571941258 37258346 879025792 290626526 688006499 604974084 729367711 851870301 966854838 347428506 725205889 216732814 844624412 279869256 746610287 937492810 978553306 339729063 381746228 426688367 683791955 724170054 942946458 929116766 929219640 510783817 870686698 154766047 561525377 621902282 815263769 774983753 944507113 479265405 733073036 400730424 631104016 70921428 362210980 638214825 705378628 714823107 843234973 807309942 925895423 341468797 710048889 839704548 990886325 690568792 735000140 388770458 573675783 911754598 930622691 63932604 84079274 243205199 440883275 256897399 526868319 786639878 802781722 17322268 767486168 262581307 490662832 234883052 290657176 731620849 740007091 194394199 382980775 71047562 745951974 775887922 918844352 844352132 942483112 991854983 994054724 697925252 767711601 36966821 613763740 696626512 989388277 548248980 749264142 200205565 778698348 261878581 725526993 345905254 886598831 332061584 776778578 659243715 974697397 451098555 717520557 796689226 887293587 635451661 723385653 224657991 371394911 117034329 374273979 916057491 945608433 614592184 848798381 408966929 458086901 482785895 647365251 877531036 906093609 980250332 998034051 698251828 931948152 777644278 826896460 457017261 835799463 437495369 526335274 807269724 955497322 46671199 655709430 473932308 957142937 647213403 876474082 181764143 416222928 408182011 957457941 38850596 252565658 593168697 883882293 217505346 808649737 282252961 501192627 276591646 886486449 198322005 529215147 127690729 665508841 409381661 993969682 437085750 769211938 7357407 530925403 4810820 794960352 272094341 802009377 426655634 839009498 354861531 618036164 14053468 16752480 394227439 830802995 199489923 778383218 430381360 474260318 521903805 747006526 94554816 284225911 48538546 821823563 927920084 933940398 908804643 936749525 936907153 996739564 31718271 890767156 445489147 667076203 793317535 837843824 482269045 566700145 521020981 614947863 788703069 932600436 486338104 744394686 519098761 594427370 310993244 979229908 483083262 892711576 513866718 546630894 312900460 467210557 295663166 693915902 566610306 757317609 647677719 673896446 925999912 969683236 585340905 999755950 620204419 763875832 125412408 181557830 693948542 825545279 557024755 893721365 141832252 883277975 910247836 977283881 492020351 914250121 763618987 847492673 627761442 789716173 892729999 930090777 856925217 977242118 686222457 913958398 438259487 939109920 534169115 683648945 741589378 800682708 345008865 382260913 621553846 971208805 339819781 842425912 618162616 881599709 894373417 934034888 382587030 969057787 742160826 929551353 502574945 544955427 200952111 891214177 316272312 496028912 538309394 703678765 160721897 206840891 93413477 495599868 528376595 918152985 506743175 733847933 963468675 965536226 107827345 789746133 409996355 556629876 977231183 977748534 781893810 881052492 230333277 805083252 200474698 849706909 980801469 995066595 251564347 494923698 503734892 698291943 506248635 907511330 879669711 897746009 789924057 936377562 220515478 342093385 71687435 72356215 690314504 954768292 338090858 378713834 164343485 753444452 137041830 172206639 830637848 848978772 185183903 478428220 989646107 991878707 859219540 938965234 307919401 643897899 251093436 357793190 279579425 533997985 580075323 963461195 442723416 515983788 168404151 442270823 458830180 501366524 648498443 912973171 912930721 988713523 345114347 517249736 479058743 800427095 357773856 698723800 110173166 677448298 460704488 819675375 725961036 980207406 554830216 654056257 569487197 651756871 502692787 583619964 965334140 971080451 598267296 958565537 893292847 945159858 73011899 237031764 83830547 501388556 627490368 845556906 983655335 992966061 728231629 752890368 171795020 553576993 562328290 914379893 340072500 579610757 278835245 467107777 717321251 772174214 88433244 164053341 462404726 774996688 383142361 476435783 71425875 948327271 675577244 817009633 371682357 944609143 88300099 924170914 527100583 559498807 371171653 780977130 842154954 860675017 37577171 873947333 761608975 799344665 92434316 853517272 58801959 165118755 818487803 868354502 628445737 709559496 435548375 696636266 166317025 971232896 146716949 259687226 810539376 886794127 327208171 644803621 449669518 452112056 95167779 952400188 103358466 418586062 659836971 873781454 695574882 805771634 373840132 798389410 298578319 439332321 210919811 488849412 788755026 920157418 535032316 602446299 518405118 866050292 775171507 815766474 695714980 980585093 19689685 754864826 858739528 999330845 148662647 257832923 250502639 978984899 910902971 992324608 663080251 814671389 178607087 859322709 239679331 257256628 544460730 597494044 981931765 994464868 266957512 565613360 799731956 956728694 800037937 999109619 103904235 436129050 697074827 738856472 139647319 238806376 302009254 551831821 654933983 731978407 492840657 573434430 137243718 474847841 855928928 902417655 555505895 625103515 929397547 993364509 753533045 948014626 277049809 825355663 590373095 656393342 366036982 451475412 199577303 788138840 742965602 922282249 219632305 318129427 965638563 991199625 357784996 391156929 364180763 494263242 853396902 890831013 39499984 614484564 431876754 891545360 26013711 510942003 176221483 824750922 499775046 541705567 48239338 642643842 893921142 900279886 93576890 210430271 294528553 916665828 401434714 800464193 212453101 566514275 790877646 976732782 325157977 472440499 783402595 912951901 921670734 993347287 196339382 455553480 147919967 149503402 48070531 420432066 656902548 993141807 453936677 552030064 138356341 879320748 125564611 196479847 333514728 923365168 978134008 997799160 808803187 972911634 716997419 983883238 52831030 429828634 521430691 880555947 716928960 982720099 959749414 998268662 260171986 842410929 632275306 710257677 794168334 985437546 338806984 592100209 93761457 421773523 440407710 629795460 931849091 988169390 862636601 913146586 159073726 474082775 717493848 909583479 745770826 970650038 277587702 735344751 731427473 992434063 712962377 714316235 50590151 66075880 131625838 893242116 840416845 982277261 661607141 686707654 682227956 750287487 32800449 166225657 632173538 766027178 454839038 823434181 728870686 755951466 891482305 976410054 376778759 497311287 552716963 822945536 821537527 967488254 569289946 704417033 7628171 496262039 199475586 428701469 726384389 851759075 758228009 887652264 675341181 817294435 706105006 875044440 154954915 773613643 912144755 991846058 320889064 536175382 189419470 712786350 640537755 682282603 978304387 995150711 479606641 750612106 481459389 871005622 644836010 889207803 700097544 789743924 960355710 961703749 970757937 998925112 185961227 930703114 649664959 823252954 492240468 781139122 765753949 985692210 997176085 999030084 313208099 664726219 983876913 999186846 421855161 531496858 771573849 796425286 387294727 832174185 352513313 358575085 442499 529179126 696667326 992304373 197915303 633840498 93686297 761002455 938909589 957539977 744632519 883417996 21222950 757181256 148784437 560833464 754952340 914758197 679222014 706722968 559561312 728496355 295682293 390754669 99938066 244324436 139631003 631701689 168998666 949124207 933841785 977030420 296874471 632721595 909492567 911837499 434124895 721651695 952578677 985009670 310997499 553800310 984467635 989346390 2798172 463521028 743796702 804668362 442917629 916304353 175191290 530366191 603950203 653822640 325409866 986972349 26573845 96051246 587294891 906802796 145107833 689051760 495391000 872669320 186249125 531690822 207334 222343175 263439445 300651920 280127431 498140293 268533313 591344143 357618540 518145692 951383663 976118990 980361410 992825492 409647519 479212140 250263421 319351875 864022821 876773563 596233528 728254738 385044955 624089268 90425137 689409210 402156502 968533164 692490976 981105043 999301801 999693179 958255439 999454960 9684114 485573042 672980350 915870341 834097797 857827106 378132916 911068046 865468943 950214411 989150705 990940700 535214923 773037360 483561416 808701635 761147332 778961525 921561325 941934417 804052599 865513360 352372551 527524832 132888891 674628360 353218486 759092728 712905124 969394773 347276990 392685589 162161347 779763269 176987366 595936616 217472791 675366265 842640812 857217863 394938795 899287382 184314478 316300118 377749404 488089525 602424339 681426440 186207425 942567325 643799631 773200486 1990617 485410762 867439861 886503120 387287459 433808412 953944813 984636870 553615261 641127495 828216614 989623803 216291385 772016118 788192607 915250693 362489168 712600347 205940161 792013056 317282129 700735481 795313273 900872548 889194817 984678371 987091175 998258416 130927016 192334952 548668545 745381813 519261367 768352775 700123400 950122117 707281468 935189281 86755809 515971437 980935353 992986724 876694549 970756977 676459760 831274385 679004726 893112168 503689340 707576496 981987383 989930501 461998343 958715327 759564642 926692381 298411940 401263670 226667876 955196029 243699288 758556801 208792650 614698701 945736962 948423042 196501697 422178867 741913095 813107380 584271778 975719862 389405563 586296818 876124905 977115095 920726928 929011841 624055196 894915942 215196968 287152752 320407996 373751603 324952526 633522686 5450613 862445449 542559142 943040155 274368162 487405197 101731063 925135550 772524055 799348726 511776656 522186924 260734885 400388659 190548752 934778340 779635186 887776938 448960779 708737328 753235493 918067365 563778648 651526527 833111856 911822430 253143430 887119443 124270694 683404341 774339230 919856230 943128117 971102162 6689160 105653899 122951097 341016045 850623124 909392158 190714559 383719627 342868663 772413732 919642555 977967347 404986756 493950032 228122389 936183387 935983837 951558832 742730621 942039330 861624146 880060264 409792869 454628978 918868393 981393819 360593052 812199726 552811034 943186373 612615031 715752047 290934577 994841480 439763945 545037554 439245311 765433229 283054475 406065001 972917231 991543722 331943359 588514762 845308985 908982718 322473023 696448301 760369607 833647742 289752402 834977088 262128498 826807424 221705541 889756453 769620235 966441717 850616096 972735921 692273007 925579631 146668392 373607539 351897794 727472147 633461294 826624432 236864576 576237961 402410545 535022831 511801271 807015650 967828242 974481992 588798387 629522601 826308943 905495315 8628787 129572143 795510441 864108400 70943119 252202544 326315881 836876080 177322162 574296394 769519409 832577047 440321864 653777402 694441727 907590491 449140514 900644188 12077087 280779239 310537932 486968703 938450458 960095481 351899544 873501097 11246573 188742756 895409684 960174972 56967644 390089044 348853814 588575972 581710756 805112960 980244022 981356240 28020018 925621100 968723942 969753134 459529929 674738151 359638957 418404143 46119451 665401188 942690445 952276092 108726308 887847259 313133408 994809095 660062576 920374458 411499250 412967287 377628672 660356242 695903891 758191733 732522054 876275628 460661467 485984208 671849576 820523271 454807027 935110284 590998018 806768141 145792825 289905637 340894416 385208979 866768682 932855613 518153949 668158075 373390204 657241199 193040973 556527665 150238629 353601728 817038855 893408566 170835384 833933440 132365501 662048667 323553317 653636777 70502372 121583446 487677626 639363257 71672808 681564422 95356418 798343805 237046629 425964039 511628552 962126609 407355383 513043467 795432031 933465399 55369349 195185918 790491368 906366775 629366623 923803764 609426110 834446468 573087661 751363657 29149129 849587828 628226323 859445142 145985580 317573484 378662058 510392271 281857253 794859246 323906049 940790311 924450346 936094664 859982024 984663224 303112184 913326869 655068210 975796343 680028995 698947788 137298514 222682909 917491514 932036116 985767028 989073544 153122640 893015547 454107109 848190384 864445211 974586400 6628988 769530952 245552541 264855966 620147526 849524908 761259703 951933130 476166944 890580312 372591628 818221803 767651183 787607278 359244346 568185964 205352571 513864441 947446857 984919613 809699817 905816219 776578928 909929138 134787863 504302090 352109679 867431684 719243042 827080937 216973878 667598480 397064027 837896073 877221388 982425997 58031224 560739288 390332131 511036235 220883743 982697732 13387156 903850217 512818950 690852165 315787518 332432621 500287441 759652748 233156827 346217448 27346029 155237040 35787904 353739606 321693790 455298377 303431042 430721025 786519357 941365122 167439842 995823108 726274256 978708136 826667781 955734134 62349010 361010878 407688082 888387187 834409447 934435296 470105177 474960578 757850410 820150802 5969197 156389429 933531671 996615416 186575010 358070128 773063139 790488500 812140750 818285500 425631874 450903249 818420720 879838054 844228954 867732880 238133470 490307023 338888510 755900663 425302230 943518217 606224442 789988907 372411760 822475619 532162700 694717125 312354512 393120780 899343841 980898713 91152250 675969869 409881211 686597257 977660126 980279701 718664172 865460118 40013500 96204925 215362230 990317275 142786444 690706557 884034256 954445604 367170664 524178776 364380097 861190796 362228145 663409116 89887839 175908008 478141417 550721849 770646685 953519605 12450755 863644381 433465345 564527032 39719392 457155152 697764213 896064196 912355254 979015835 102036687 760346249 745688178 961830578 814879211 820326667 397502928 785145552 586057887 678711617 569529564 753934425 540803243 776372552 111981141 539425563 179064792 560738057 433156093 629412677 767434225 963403274 507292490 553598636 366019336 959866037 889921977 971607090 281751537 430004547 250504120 271679089 753352906 910546754 108702166 226826249 245855070 544613373 45895028 689203447 484545751 831154490 206605547 567771397 520746183 784961751 53437871 403961580 226299898 794122600 572199403 622160089 424259337 768505939 457510489 752059576 323032486 511889282 660275551 980783537 543011763 750420338 939697226 954221686 453883260 828743262 351614761 890032695 851227574 858183891 904782422 975064676 22879491 777562180 608593901 609856971 33967079 390657455 408072872 664135998 45253369 499657049 239118672 540097216 139667814 419245939 196410639 664468834 713414321 992242303 386673259 512839829 4740201 488862456 297096334 474298922 216330861 727020207 649149986 860193134 839186007 998559226 914913345 989607494 322807975 730338519 843227551 899393624 78753898 439699624 572638134 905622685 532971956 723961640 686631255 966034122 926119058 932977842 572246654 654632970 132552310 798331148 349939937 392906766 171753279 865299926 347941084 608215536 338410340 622897348 860711446 908441393 152062137 261261825 121948225 608280730 99177061 734348785 387517664 891370239 897220186 907769685 805684985 862483525 813015487 843986847 958616919 990442879 648895249 682265202 675174133 853088736 983679508 986318474 194349899 451175292 273277902 888761171 784474977 812717889 348900208 712955217 650661588 974011815 567195114 790646113 656008088 807134313 586866100 871103918 151329489 217746221 976541607 995100446 506032919 899186393 69868189 601673272 538097445 710935748 852911735 951037152 654823382 841550125 863731616 997567881 110571106 174452516 556841290 740956754 309856200 809690036 43136867 873329572 446833244 900134654 690233570 799099565 181808136 511850711 631511783 904170089 594128855 816495127 893526175 959063000 754034349 923527233 824632729 842910140 15889630 368526054 784074449 889791193 730843663 770287615 837838256 905899512 900595448 983495666 53664065 924285820 261950788 856210331 822737061 919377497 619972086 620583308 103350488 471302761 263427854 828134004 552906554 637767283 759225277 926139739 608373159 834350732 682550487 875199226 75954590 560698078 239038788 936955416 650841542 728542350 299977545 341051880 676939381 710046965 266878024 762583806 82449259 753785653 121631849 365850135 261938402 821391258 934700993 982257386 34502643 816186583 684210566 813760656 121909055 410334406 166439084 393271343 557378306 728487775 893694399 982285427 68026201 701205931 285647446 347183270 453385566 555547420 59218852 655104576 433350934 826628029 639779459 919489727 186975459 841743118 196289300 680929088 155833082 947916853 640169550 928267940 875164960 891644680 437380599 528407092 445692207 454583173 899943822 981158328 651832954 956918397 637881002 701592290 220922240 328137035 605623410 894919686 695912253 947150018 371299414 742560137 410288707 436037271 295246767 437430798 573477652 951495913 834370739 974661539 257508228 521266511 637556784 927106016 427378577 546891200 764487497 821352494 868508346 957957794 474722438 812948007 98551663 953061746 338247663 739205168 33553945 384008016 814282179 942593713 878287597 964403343 938597568 995304312 93267367 998822907 723328240 745156659 124138560 389499181 213062937 293351360 556277867 644324729 930441910 969673652 240577545 507549105 807368570 909750174 20183922 846289604 471967031 920201516 756383486 922949510 132985748 222095829 707837417 903308050 602769772 778471093 919787763 992750989 546294120 864850466 362118050 792631020 274027249 542206697 212709742 899761451 532977824 563060413 39724111 363324667 743225648 936323447 896674807 932942220 734779133 745754212 704075713 830852795 102701597 894101436 259495901 876191693 249503134 945614500 284575279 919026180 806440639 888932887 475544678 706339064 530579912 652384534 822252349 921887175 342607647 414670169 215470468 518525774 640109675 907885132 896757396 966480803 84934755 601740890 20128108 75792357 212679059 664465174 879749241 947381123 950093161 992493355 487132649 592610947 456560380 517325908 864199345 994632498 906138472 944505493 366721701 818851167 166654760 178810697 747653332 801293135 642677692 724562209 847953565 957212774 830403714 909902568 597097767 927575667 760630648 837750726 802111462 830633867 695197887 781921063 524520424 938272267 867441834 986417924 172016927 939119460 645606116 862426718 258168379 978952075 620115672 637004267 795236872 840244815 916931453 957780657 685710662 756035870 931435916 949585310 506955986 572468460 331055280 694983531 212141970 564717993 363839292 377284073 221142015 735640746 472882196 675488656 371167376 479211023 112811000 446884981 219091363 614891358 517159539 661710193 816337051 980085615 573200159 743086014 98332675 853597906 486707495 636732467 751175001 977797134 229904206 419687779 8392289 41504020 865921891 912819025 276029494 640183013 377023399 569267011 600684251 764022138 798817044 832274283 644267870 969948677 279517733 591866910 637241156 930009035 57907851 994826756 176830475 223919170 405018117 796177300 340864362 400778742 721014950 814590549 126893636 185872361 718581610 819109683 311461584 417927488 385736564 665177188 12353401 322079385 600422062 622456971 264827811 856210686 425713683 560329552 695727832 867864466 937636619 970623819 759052062 869734511 43540089 225546099 732865798 742359116 420088276 938477269 529408028 605737005 932665241 998778455 111737251 213730267 445069629 837047590 102861897 341134528 903632888 944769966 885409945 949607331 962662359 972678268 195059310 534953418 288261960 942749207 473304870 871475035 250659230 596619403 652192361 955786543 504659042 965126449 422370147 526857233 869936429 989173621 934409804 948509930 403545643 894106117 981454208 990505401 420741430 828976745 620068182 688319369 987365170 996188190 783627935 789279040 592323467 993930429 727830576 837993543 694489675 740202742 754348088 942171530 110259466 877754712 174105892 736892141 176170488 416392995 358008088 721280220 566277625 592123581 804253195 813913708 707963432 815737937 263654302 656375218 371235333 674884808 823327192 919465835 224283910 969342895 181413936 517480824 209100302 731771490 621400601 639090795 62134093 700713990 784624356 825653012 568149549 966626665 962941538 963859730 259607048 675206410 989334151 995300122 265554725 615924953 70430121 296437351 183822700 197267352 281169504 322757547 417410527 934481578 185280889 705801119 354479954 623440596 580452735 646467035 768598017 818169592 367166017 823386700 825139185 962395141 814826679 894421079 90064138 312048743 899986645 933808158 608307570 633559628 236697192 917587352 49371988 443389474 545307087 997138838 503462190 556624019 925732455 980008488 497503625 740143639 791678513 899330784 477296250 914451448 269318106 675196135 797659715 985752130 581966760 741880700 180754395 586355072 96365154 857136570 168876009 763746949 5512738 479096429 953680411 968255920 686226824 849325065 934830887 974963231 346276146 826284941 467138931 597847109 32564882 601880053 736380914 974557019 464034888 701948023 269359815 632704469 808835068 813365637 461532598 544356096 63405733 972186458 951626776 986827043 651430275 689463403 234200076 823700173 403188891 566587894 276908914 725643927 154812457 726683065 170415823 808475579 563401656 806966405 743837498 984583310 940264142 955808475 727664020 999358726 283899587 734074721 836313918 911404718 88819351 826383500 853636259 895706998 93017074 117503701 505101100 635577589 932805706 984172997 548230403 952630634 762212406 835736717 782015597 900428632 477913141 670066794 188880188 934110569 383016714 564738404 16876160 445197452 717169152 893221629 200361353 251099533 111849012 360529455 888767909 919794514 82929388 756786083 107755678 913379898 836282483 923287247 3063193 726369023 800846046 856502878 987411551 999099959 873037215 996109781 498477376 555014159 722192685 841263888 697625033 855407957 153642769 508803626 682732395 938938490 288947975 769557967 943883197 968041309 306621938 420579070 683478144 781356162 191985281 763099520 922527633 980108737 35422186 116136694 580538003 635108710 178804235 749175712 892782800 977034918 646288432 936712180 350824229 742594819 865658528 937387284 226379285 842324500 52612438 196886635 892188077 984371330 313075875 994853778 106312360 262221283 597724728 959081867 649536503 938372559 365278322 377241051 265795176 585658838 692696569 917780086 359362415 422479704 344414843 990046761 431806543 687970969 442415455 902190027 105421040 703415338 430503738 735300702 178437934 951931226 256949594 768568426 733992911 998269735 696891022 941145764 520777119 872514455 801395708 917360075 581538707 752886950 904440972 953214572 544453693 737516630 651498228 876616672 454791882 950904122 846613147 933526016 348995552 607371625 853252176 968069196 564102581 688402221 246912118 797580088 541583023 703688726 978961753 997256463 605422663 722559041 300253917 333192976 116681332 226737955 712172232 773682504 185026454 256212171 92352250 230245880 170546235 650107613 74036990 476282732 471723757 871342848 193264292 812943079 899253463 961146399 260019800 991634723 902109924 972764227 100658340 372759118 978292007 996804567 507060676 912970456 872799621 982237312 668719486 723141620 275230658 500558492 135708714 340072094 679365127 709330103 424944611 831921528 179469007 256588122 480146217 691353536 459318601 661747329 191540236 276401967 839734850 979197731 916567462 986162297 487639303 904299737 997428477 998411771 413900933 507929753 955831156 956808539 584865051 636515539 626853226 897122326 605107995 879471493 789392761 808684881 728144788 807042412 384517838 643371093 895584270 974498869 488891977 663165995 104030129 935520535 395880084 662044637 688380447 975337756 248289746 260555932 3572027 191819574 194094723 831112218 417738335 679683489 475504822 516066848 644157516 931302655 100873623 537173277 152524269 570197425 790725567 795803171 392786490 573350075 762990283 807549883 871097560 912329602 728394791 791728989 744992254 825810193 925264014 976348865 84263561 504295053 198140279 238802954 685750659 825886621 831352816 868854762 815815740 938496219 165603110 706378800 929172923 972570610 271022815 486422489 505620389 746645539 461059773 921085675 806214065 936636155 642610123 789995831 273707017 687238189 79463827 924824072 984771652 992419356 972423331 991228492 169624618 774662348 200152171 430197000 407212843 530571654 918943765 978557180 461621013 763704452 21345283 576305458 339740596 646014626 670645690 885876707 356336000 943935507 565499858 804381817 990106195 997076277 633931556 908470116 292094555 379187455 394644437 919862706 581473962 984057950 988767401 992114934 586062204 620901976 769206663 877665752 556479060 966173369 207821169 380724049 629298153 772606496 632204153 737814761 736026100 845392251 468882348 578721270 272378623 813129368 790417431 969998526 843165513 929027973 871912242 936078298 196454015 594705879 694898804 998233697 394237226 781234262 914674497 939306880 100228666 111334329 602427447 690104837 859065602 944675762 654131269 758579585 873086680 928627575 318518993 895664166 387892645 582700175 202608933 850359323 639802761 766438844 19397929 368274225 526016486 603321033 17722073 673635609 83479397 231713691 21666681 648521963 240376091 621227411 56324387 782373267 365591988 652669266 524317394 740228234 734077333 971340358 651713943 883908674 90044090 941978811 645496670 678231015 170127946 324659465 908591858 924473511 231776346 772611904 926170593 961050977 642767586 871969901 795950442 958447928 545484900 693803463 823588382 849167078 941700577 996212168 653155833 862406873 239864735 539191991 681639203 935725743 460023598 560922211 695921223 928208306 21951142 688330498 254410346 516470921 119735795 920419681 282425795 730238639 992177808 996740280 707135318 857948331 126609852 363254912 914075248 995834310 634932451 679937205 403857004 680765415 415874450 866619179 681255836 940963227 756973419 904590807 405833973 588202701 193811670 951787632 155638275 398170431 404446680 671944329 999336129 999355615 747689294 765989372 956417593 970856923 819673203 935900516 78623094 156798211 409759831 412222696 616742463 861104414 840226905 965204850 448537511 900359582 403219246 707113239 351319576 475387832 115921867 566112764 273961830 923667771 601960622 872917086 471636041 972480631 92874958 554265886 627977189 803376601 421445497 594437587 405811273 635445183 404290588 716802580 327925384 550493082 780986657 890262022 984767018 999711046 27264437 329555662 71990197 316284138 227157201 227271995 409010232 840338285 943964435 956143968 650258785 822705804 258982413 740857633 59023710 221709406 323254339 993393535 439947060 786623687 274587839 782380500 966168191 997049637 290430666 720616294 955027782 964825618 849628176 995125783 342369656 702056802 273363521 829668358 107446008 789708181 782380004 944657400 528013225 853120206 55342838 935113688 630181516 638991722 418683935 544374032 115670078 840023971 501232067 504379018 993741586 993761897 544951926 676262404 547851090 757265103 899161140 971895808 623650918 751811183 43579610 637557050 960961174 981703358 640546446 643920147 505471622 956351423 657593808 710158159 71205324 813059175 341814689 550160529 61817796 740148829 847080727 905219306 269974326 292138244 968262199 969550550 741079505 862896370 522349592 578246728 148909542 396782916 876381653 887266731 799239068 872401005 480417820 991067281 364183895 804045765 729354977 785798015 759307640 804865645 922830431 955170455 481412835 600878959 780809889 969583812 769862914 965568961 287143112 712907156 836049867 858042080 371558164 499955522 606901501 975298180 97052949 150433163 872798869 935951369 173671646 664514526 758626255 835388971 139372199 339145171 768235517 876513441 2387630 364926770 920866625 943106001 225238748 891895343 433751480 714134148 900935046 905929899 944260723 951292330 790021069 897096823 466212492 979094270 354698904 998447083 493340028 921223227 786436068 811388955 21055407 618807415 216671703 321359545 151274547 177227330 144425270 486900975 495501583 939615275 913579694 927394424 961646570 998581076 274290845 732932227 137769011 917422506 120949621 793593033 88263290 709898036 468043065 586941749 352772849 999594496 709396288 982197418 710782280 799012127 415169341 553725587 676820132 678903774 281632907 536640337 380434941 745101689 442964455 604221239 287447939 614356717 262945826 641912848 471021493 501873236 917012161 922672530 283722074 506673607 56640049 627596108 113300485 494572439 943993698 988583831 859764845 916767590 949851703 959376712 547487110 607366055 691957887 911788569 414076983 645830014 880619046 896103566 405942662 756072382 276425305 968181614 314495679 644801275 111809490 226618876 973884847 980979911 983823181 999792491 985278224 996355062 414118069 836137385 49967599 203720086 892185756 970157435 470847847 868451550 683864565 751237817 474890423 957524241 388943438 656978050 942646490 964371000 894678161 922779491 120957338 956678448 866169217 900991164 974295887 980076471 751398237 900603885 734979534 880017832 9641536 630270059 837609864 952133483 223836732 720917260 311842228 506695555 812125497 927038087 391667415 753471221 368292522 544389544 717036134 906036060 161566132 553790635 410309633 710723115 616396657 767266166 48866494 636317800 307234172 987268039 778419462 868869255 107423600 540676143 431855009 726202240 294404821 766257016 774375219 882770678 219649732 595538042 886750128 909865680 560193374 763771240 741756636 880737641 189919676 453967089 907221278 947250510 378270740 384966330 956770959 976260160 57583627 891760735 32889670 134923568 983970781 994376400 352150321 702153171 739727835 942067169 407184873 637566533 743636503 753513866 978818974 988947513 849037585 894305061 509021004 661260114 315115693 818657512 469129966 555959608 732279946 861675919 951054985 992079255 542173388 906903697 107716318 274718359 401885119 510818197 777116377 815981463 399572670 573627963 136156577 426750581 169996065 854651274 381613135 555709925 694056274 957605264 720711317 874141171 770415458 807766394 315938970 851058020 421587 51337098 535267489 539316908 825486652 958495913 835037172 855826409 964476379 978046193 520892037 594704136 999524996 999862179 363254858 574538947 80272483 894517133 491470823 753344943 489229652 704966648 448001997 899973055 617945043 843217914 121655355 520059362 231445981 997766874 311084621 645640657 241896985 914944059 123230305 162375451 827786899 952003369 140812712 895077204 400561183 658084410 640015537 977291174 241588520 770721721 459952180 973660040 398771582 522868648 478201576 861580772 221563948 417393693 128435401 182138270 26811152 83480809 640526932 799007463 528422902 802994802 745019396 918079605 22500181 94682907 736077126 801941191 13323434 691756866 360507231 421953619 406467246 991675410 563441560 854879028 828293307 916728517 833945294 973774672 207933343 720958759 975124053 990134040 362732667 535418526 824968014 936719304 570515523 985422374 805307006 860417785 348261916 918192445 515479620 829680253 338871896 906065412 626475006 959455729 763433032 877877179 192226335 256807421 957191450 972403295 771411337 777124005 383973165 933336391 760772363 884231125 133743606 355247214 263134585 841991994 671134323 771094154 645886925 650964423 81042375 222477553 82784876 250160141 359631447 754459136 528694882 770614523 206950739 722314331 317481549 999523048 649671768 978890688 790347901 990023654 311634243 578783321 814592486 825772635 295133965 890883109 15273996 472035112 967525967 967839125 235306944 655877104 432133807 763789498 606308289 705664086 704391677 966792757 512227234 931397577 265273009 444505954 770629842 804071045 487099298 655238836 179413481 181788303 305587599 386074964 164763244 775537789 752839134 760015938 791084441 987364930 174104464 739288635 766815742 959414645 530442701 987269725 257463308 832495824 849843965 878972167 230343471 353652968 386036050 449978034 991990222 997786006 289770212 756965116 411576475 595542870 440803206 576312968 940977516 984936706 50656816 575926163 376573233 932651547 595745808 638137668 612848144 852437988 682072899 697065102 935074947 938530307 709272593 726579711 676201052 992644864 394744200 427892776 350156553 521960881 676612064 876408402 232629420 820852371 986822059 995603300 295751883 755780337 690798330 901875910 895210894 983360505 928922367 992607472 591141575 745489547 935717445 973128493 674947296 883200475 532380165 890927590 499606124 674732309 560710836 685397482 247931072 408506185 540721961 893654986 3723721 702788207 236654836 426636629 491825700 669655313 573655150 691309388 880652746 945275301 500365046 586278760 654016614 820496184 84298048 804513728 58543751 783520474 459231478 465078118 662965184 854747676 883386491 937359271 188398023 435144989 970285813 992397235 610817374 636329784 706755939 890395654 923782747 927911607 302597498 460843811 300405750 483454733 453029722 796385400 283243973 393416489 466370271 656818739 716903049 951462269 70150260 704572879 733809039 776533269 141018324 314295846 417644057 749883324 11162484 776106176 905550249 912726110 630813403 663690768 996738382 996938636 433014345 925653429 328558990 567551360 775011039 906202795 821211023 839774815 810542767 832283276 762670388 977293202 591247646 791140171 985779252 986247403 777278282 887064808 324201812 374703518 539251145 622542122 624523240 987678400 51875170 409958416 242877709 414827953 573137898 949514283 58656222 176023069 889227628 994726975 760553838 763881604 74269383 798788212 562676965 645025039 95062616 282081549 497598591 767403056 627242708 799934517 497372629 868552908 956264162 962701551 116535636 814938493 994195754 999260722 475984322 546658680 594570944 647179272 253548078 270673163 449202933 685855707 254751053 625125881 562896819 677575228 469851506 592672906 948070296 954839352 213248279 556544259 619257996 729482729 509788752 906167517 727947145 786008102 261659543 740663877 751269866 825425891 434707965 867638721 30429239 356451944 316546101 641297529 954614478 985234851 332123181 582730304 763699598 768492202 395059386 947992879 135078344 700120800 835424108 905297948 405747070 884884985 457789978 898152179 414356595 667598395 819230477 888886690 294123784 724106166 528685303 882591234 516573623 921480557 100320668 341082024 97996795 839197109 761710515 852873202 229105146 288643653 276603622 943824596 330062143 600602363 641858706 976779117 888952744 936521296 502159778 574048096 543724868 731941908 961148703 985494679 965354898 980153304 547328946 667755215 491830055 620301033 632990843 901293276 245116517 307419982 17218755 294163856 597194003 874336116 963368758 965566786 505931110 939865153 827494010 858227623 34368924 559758630 500472183 826862587 336845040 756632579 110717112 329958824 377954525 401893104 785718890 993037072 809077662 912195187 464484303 991537732 623420981 845902922 338021982 842051629 120274358 790638067 673182901 951044295 758844232 830483105 239100947 792970005 720605406 816462080 159630011 314869218 421778299 937429920 56610771 648682349 209534839 312934179 705753112 894832940 233566426 433824159 197453603 549270979 273094873 443569051 4261260 909787137 41757299 557715217 606393917 864190925 529705455 616978544 837964505 846236445 273313933 517359133 584559385 921814297 85630340 978334571 38856212 658587078 79086362 209163691 726637103 754563349 465324887 819738068 40310868 577534249 113584018 393249344 660343568 857301276 97856497 308784142 465665212 760067875 281058697 863436964 277456637 833201611 540172660 858575600 524948245 547733536 788794220 882467435 895275905 975876224 664456207 777352035 92076945 717313206 89437038 554822374 463231969 601411032 971803699 984801129 754127135 855455747 997051245 998931442 358958670 375113906 806946999 864405573 123865029 942171911 33593442 510724622 471870553 791145897 209658215 994886846 980058732 990752837 903149741 909159023 416577846 953175099 257458326 929164721 864051647 979178849 412660802 477708519 739041294 992971745 813412093 887106212 823817351 862510676 507090272 707192229 896050024 948882115 309689257 629549016 253714475 365032537 661319549 693999417 560628877 696480372 64915443 600935476 734932680 916757242 741723484 945610286 180384290 624498329 182253708 419642526 587404759 751891864 377870453 668451754 625536327 742305060 777229383 963589588 216648796 707996600 780197594 819849759 283325662 892577086 622073466 935883364 161983744 795468706 8912260 840838618 3809916 41071543 652645594 884212908 309352639 702851273 757905359 871228531 885869711 908019974 326522796 760217087 406389476 445968723 190125322 651352217 596654728 701493663 906885607 917863730 103324907 403324535 659415210 682087870 88211288 718683969 160444200 191855167 681680976 952877519 281673085 446373858 370504520 765836095 298706407 535252587 179348721 365588252 403680657 890015154 497630719 578135751 96284269 403867707 661010381 802623424 275047715 527825612 47966927 979897679 903511219 984281455 889588765 956415526 230626833 663322781 519379180 997710568 93810025 812939187 441489258 618099581 133864071 257730304 801561147 812942704 248463102 714489362 724562467 877986333 43166957 414616724 675339217 839200698 501471065 862441076 45510269 494103691 175556217 694611207 490943050 817630247 892638581 936852112 770657439 887479880 59580695 751423808 987107509 989350689 165009477 587248036 661023311 711525575 638779946 770058193 484018870 934474463 556157136 925135362 78455235 145147624 156926494 766591115 424763894 743593976 503046607 870578340 961717049 989756666 227552736 499218513 247786050 498489378 628326881 793163410 671246223 750210459 651829846 898686949 887739963 948253810 373078228 628125906 77144125 665937482 610828373 887094626 446402844 692397894 734679306 842093930 495362882 758903320 247795073 897072990 994607193 997113413 365509054 818630084 104420710 348494263 250868903 741938178 485882025 953803780 210292963 679557696 983161208 996152760 126976843 511434105 688751850 778354517 91853425 537448714 670904669 696272397 215225559 531276418 755116507 961592195 415056231 653433465 860386287 929546076 489998245 739289248 804326399 935973477 835278704 918361269 583580059 999079644 618215880 674997339 114980606 259509923 500486536 995064221 880040951 985656823 932089496 968046365 175447768 385222461 903368414 969203265 971964592 981612955 995478343 999628099 404867705 682032304 300369101 958797973 127759254 384559955 943014924 952536457 824215859 963043691 696732355 726869456 529275418 789295415 719149883 755810602 24117119 513145108 511031096 680770030 705952768 861686519 199733278 635200285 116345204 551474643 626848945 774028866 189435504 484113605 825416867 915617111 352877289 878603131 144611671 245362715 509444383 635975891 381561569 894068076 921799248 968449675 740794969 882783749 305453460 672193087 630077536 821366317 806765745 827861005 78840510 734371606 150895467 727500193 501705629 634613544 897502539 902935129 633663281 972423096 241134821 805545345 568416055 932581744 893626026 964483232 845878852 998571391 290042990 617425184 711803330 901730239 165021634 305612457 962358564 971900227 210750645 573589748 237409616 290431873 100553372 661445533 524883390 610644611 720890487 910183288 436529864 980396676 711192079 865506611 137475354 207166590 6715079 140987186 552811758 898292917 694945917 913745162 393033613 710866092 585128336 919864498 716323865 908447572 962918857 987794795 238557717 361052221 758410049 863062489 163227762 291996655 759144549 937091474 439696732 573663275 234907018 443344934 536884960 634451937 369599375 507429348 16832434 300698041 412185700 511911405 149098822 393823092 840273742 863322214 530883073 934232130 352369499 659930322 426993183 570575894 876193255 977547044 791004843 979307453 660033620 799765402 566518449 880928550 768418859 823441031 185377670 377820329 822808304 982918705 710956953 956492379 88155041 361874901 172647723 227477719 567537240 775103217 78056034 692874810 713746527 757032760 459741552 943085338 436633173 615844628 858293419 871061120 149112928 997466604 553520988 830670445 388246798 986993606 326936895 339591297 394262159 983694201 444543814 823589485 955904019 960520867 742584702 978139121 612781594 929333358 262949459 418446461 512808447 605367112 565970539 739578241 609850011 917009659 486524412 584076771 90514297 380851707 620308048 836658238 230077209 742515977 260408995 863439231 975940056 982191784 645067339 685531656 240280985 892763815 863947021 961695146 309234765 637448044 631335699 902321580 436203650 825694074 215916253 473884685 862153033 907216116 910095539 988938041 656659984 849707874 943949342 955046902 774980034 973704376 49721833 249014870 834277307 927554343 192611516 650740450 739147199 960510033 398393463 807115510 632233217 642874066 116392397 602946685 76743811 695724434 381871325 420375448 168568261 298776518 131118777 689204367 284016294 482887607 599361964 630135670 874965226 897226603 235287927 235642054 277112438 952744096 124413432 641571470 317095982 984256294 236008575 580995340 774565504 896584921 333567432 733192378 463247505 965087308 85025814 561185778 279639205 480360674 971408108 999322781 625611452 689706595 265215693 624766048 987088648 992137584 400923183 780055312 388463598 958544253 917901749 953933624 803414852 885993385 895496769 967308066 514122786 656503194 5165252 51367112 415636143 812150893 435527502 467648339 237875571 620912707 436577054 836400630 833020256 956696695 908848060 968085434 776805735 942374555 121791326 982206204 322633190 454332160 709995277 890159095 455385095 508578798 646815678 900158679 354155275 703876304 462250545 636802894 758380343 981869656 689025564 925041580 96807310 453136559 263172819 551035768 393695878 535906316 978497999 985407226 430004966 653720719 398713969 444714044 356648962 542839805 113783873 140071775 930360408 968548986 928827595 999201593 901656985 952349624 639086689 736285160 867241998 954626529 109810972 438429027 683325260 715735252 436107130 753650901 68008099 930607625 763737060 992486086 127746201 434256162 23027334 996131262 631372906 846448597 734861839 924811627 243794059 636322017 398001147 701781686 878749409 891494257 79837359 107045613 158479849 633128987 185488422 578595950 629519421 837632048 124338564 741189430 545017017 817490142 787962825 808962315 694933150 943128647 154772631 532196563 673953751 942297141 953474222 988671514 558974287 852087761 194829983 263650333 696583236 980211826 69340425 609256014 597438686 628805788 787152595 847916671 914513533 944104553 728521026 938254706 639236270 770932123 248323311 567540963 253501769 988378440 681373920 729835057 78615236 867569695 377077374 930405715 162928741 472232277 25641344 362092175 875840520 995618402 57799351 385597067 924646221 996754544 835023833 996133479 709302316 953695986 959359321 979195571 887393598 898321216 953081457 997883616 83317405 569379964 277621937 733107831 773082720 907779468 896166192 903753549 142824725 395516065 390753410 993724620 735158085 902029446 171249238 533174250 92846407 504516851 36646223 69293802 449057614 610635279 761804440 813269352 348626055 909366847 563103610 892296776 875906407 929016581 901732654 918189649 859959591 867438548 486272073 829776227 80079694 350155388 40844341 232029536 87376024 598626741 580507450 679551390 727177182 824407046 710480626 989364044 103369622 717688163 488772348 797016781 888391977 947376756 898545873 951634530 489202336 568825511 717066957 762544991 34392703 962275149 420501113 863496138 497072214 780380314 876109194 969969688 686435479 978510677 511695253 653775762 264228107 670793419 503091052 506778411 237683257 582502959 56616849 584684780 481519838 618946760 903941143 942047176 769458166 786016111 856110 473462769 629900748 871005853 81989794 205735343 153822895 689699755 167179768 917047767 587646746 806635549 17249208 164463047 736068392 911590487 142260888 329237610 226246097 794944893 835874442 921626040 979049245 988157459 828737788 903828252 939988862 968948107 970444086 998624903 279041463 955504209 329589035 386976606 224683261 758146372 432858141 611649956 144152942 375589574 479856296 639810723 564504702 947610855 582783394 929796667 921563852 932808937 159034498 880759901 563926345 804542139 197350389 303449810 11900406 352239210 467554611 645580783 963812498 972390883 320495528 995134357 597098952 766943353 597894206 762277991 925331921 949317889 626964527 637862849 116172974 945935832 51023105 88666911 149296015 942098663 727202074 748851269 835132718 946923838 555137867 676789668 472671057 874817508 846301764 951160883 242699217 357581214 194999615 462908574 440947690 723398440 559165427 718180895 186053965 590434991 935716236 988047613 871329706 882283144 298996519 904780729 384906526 845704375 990664656 997369173 763029316 904418588 870817139 900136770 524254469 799104572 453431871 705033492 681314645 815292935 120389098 672777257 255547272 382579888 253538184 959450377 297863512 570130439 822442839 892510674 737913174 851125582 53552379 585164290 716667561 860609400 427716964 471146862 138818948 253927899 933550496 936832745 479177366 562521623 699994650 701200317 439864068 728588817 273822226 795901372 199493137 424888363 637521114 819558329 188401244 198211671 91110103 688388449 599808922 933639354 263556255 498820050 318001383 502012045 951258527 978310252 802873337 884011680 528827895 690184376 570632123 820644137 937156321 988781102 770646954 883915063 320080174 384362962 115515389 240652803 28943735 106186398 627253547 719712910 873775981 979319255 492951277 797783425 661879458 913416795 833187264 956769406 987847891 990011160 122946755 466389465 61099583 929375738 435604831 963416617 284907274 540703283 840032049 930119351 54564753 889953152 277483097 962105988 169526977 189822322 491160463 836748648 926714480 978859835 781932888 931399526 831828554 891396598 251119184 438852429 654218352 733360811 867103663 952337110 616217311 640352633 338775685 768715839 719454901 738520439 942570388 968713212 508990777 928551626 707143530 889066746 406421952 604976148 659881136 818415624 621953117 953570148 447694677 709936251 368397474 520329583 691028306 693808858 420335385 921222087 443499111 924911127 822995943 882566289 347460755 771099805 195264369 239873941 147158204 930870351 271097294 580787893 157024746 593345931 117390954 438092238 325506453 441124973 1485396 152426306 326543280 615666716 435644235 607573235 676679088 974691181 622795373 918701843 23630352 834361583 472159746 489199410 301556369 544485244 563686162 911190722 921058930 976136026 534960358 862940508 351291716 379886424 275593200 697670825 473003051 765539156 756198825 770351408 901977822 982301088 919528134 958159614 865417137 930561524 719495183 771979299 8075844 117105434 851497934 946727729 988683698 992766110 93999175 336534578 453442982 880722397 847630868 894596461 598811225 997944160 904444268 931496945 339391897 865547290 704830456 907379629 895865344 984172729 967898421 986347794 491778274 780932732 697995505 886977943 749746098 933930178 57677722 162389423 171481672 962365137 852839092 895973704 164473182 996624538 166296816 884219684 259101410 388409021 888773118 901394447 504737331 959511337 720068010 850298716 779630428 822348004 680656062 804351358 558816668 876922587 25931420 991163189 297715069 576437317 220580939 582446893 168094645 741829237 969964450 987398946 460643440 643910989 856793225 902252061 104444428 747488096 427560668 932446183 82936343 451932057 302729527 512213848 919647354 936170973 967617396 989712086 930002596 961863942 433037081 752990119 615329121 748703539 988367983 994913645 580108774 773621364 381842095 942095453 382512515 901714884 575940548 818454495 366343354 490920649 151805165 219347330 966929480 975555960 16866889 849483312 592731563 865810848 39576850 932596464 280757650 713627310 585666323 874780512 626068445 784890873 740439375 896843807 842156768 916734477 131031601 292140210 326320423 794206409 285495523 395131896 902647506 940554466 720087929 742495856 677197985 891156573 285739502 443561442 109665806 868803096 653118533 696458077 846956722 968689502 886945801 954015846 162152135 167706876 982875843 984021740 776458827 991883220 483918463 503982186 82106455 699892035 581784366 954499953 565527860 840181371 935773393 971732248 921658320 922541490 144010163 387227064 622780640 736074322 837354849 902938237 931823500 992442274 200199675 307903051 127553724 727733803 93989281 207269659 322028451 514033638 256531183 570215531 923698143 960646565 192115680 248671537 621010478 875134176 37908481 109169904 75182761 240897478 982349173 984427963 858666449 890766063 30118367 289924422 734039648 912980552 567396086 571659142 922783158 936961831 716016815 884813790 184525535 384729091 46358990 748052389 339932029 946736753 459497427 986131807 732601418 818368129 384897171 818259798 346050603 410987260 457212064 472200483 221153313 594856415 211411561 666846914 560928995 981865332 281776493 793899251 300420189 852981167 62485488 186705513 392311878 818327433 605850059 881714591 773211525 806698270 596206229 614240759 903453629 925344826 235489219 592061156 728203272 820790158 62919684 352280076 143820784 693442178 698707552 862145590 93517676 449077664 71370021 199483167 157031244 700791049 733078618 820667553 851843288 925498937 533679289 942123189 305765903 974630910 426854292 527149282 277344817 701763243 113645155 422273023 816164176 930134729 640330761 643735688 922189096 944320138 70862456 450382188 198088003 645300443 21965183 987020072 435165289 967616555 286949581 949376119 165486097 802191174 529682959 571461194 261960281 661225300 936052458 976297155 369453734 733045607 394651166 955632736 501022976 622521684 622679114 713833020 450474709 561874178 96012670 870452309 164389355 516445860 494613859 783213139 908177692 946151946 719932824 970294479 337890399 826699419 518830146 986063010 10229615 494985311 710153887 750026794 161316017 332486993 127899866 206827922 545243731 599395738 122696802 653195913 761977109 967329873 523021531 801913898 804489549 883316878 222255334 787373825 925730214 986107699 212436593 382043475 966234664 998873720 363821978 386967011 744139685 907656391 809957102 868364980 973936402 985352099 398871876 683696148 56471083 290741473 355807420 959496945 357128968 578803214 744822212 903330995 574639664 681830064 133902437 586142104 411091804 754228767 97722234 192719302 598869816 677199443 612800360 897876850 204132807 981343607 518991586 915414962 433495786 942400622 1972004 157765808 715134037 886398013 349934636 436360747 562764471 652241697 687832510 711837368 593492001 619262304 84239271 304980727 173994329 407527864 316176500 459390753 308175619 764831790 990428902 991284836 819597731 854088358 740824017 869282940 193439109 686261612 157244399 409282249 300147281 709007271 96270549 921815451 927534853 974713506 660826859 842363034 640936595 838383999 691303551 779684626 211168981 235749343 271012888 586026680 919653215 991700214 657440592 777609428 748090812 990143742 305137277 371941856 968913996 989450021 817110276 851059160 101953927 728640579 878892674 882869429 47455159 376689368 88058678 777953089 615085899 845108143 175901407 238070124 178484639 523546276 318682731 563957305 177299481 189742588 152134255 161916656 71007787 459307107 978089724 988584584 420867437 627236139 308864015 676042458 513113815 924098678 409082018 447375918 797782886 954915794 98690092 466480895 646028668 944052375 991851082 992272992 693318053 920993711 601430956 675829105 42657847 559802801 430048627 845243042 677107551 829385767 389409707 767225313 848026725 988038269 658337270 749692481 348772391 516516773 934949473 955434499 878887607 990625923 715128677 764511824 88398786 248311558 829641023 881016327 370171959 904950159 515511458 564653005 122213729 178991531 394515184 474762739 579953879 987812481 319721525 690501268 993516931 994008620 555962785 763671312 846835121 898809453 306688537 339613819 42295964 164306743 981492576 998957661 782662531 934170233 190612592 928174503 185473391 885081787 721549490 784795163 626987169 690992823 126799359 867192630 991011395 999002818 776779638 898001491 833148800 998338626 618751519 742513934 773415379 921860954 843102199 949260516 269641772 600886933 43456003 929522399 219710124 756856627 452490240 997940220 899568402 936306855 126291783 240978498 880963113 930622401 733582893 768815310 257338401 958316806 697429254 783517341 807044191 991074551 398298932 456880016 868482166 955028078 928144342 949030181 628969880 951820458 109028052 235373176 942414918 992436522 50008685 834335081 951896925 998899831 794370238 809219127 445536721 988352445 192636045 302809316 400949209 994164563 825699485 968064037 773456436 978060953 664946110 995789559 464985283 652195008 782897165 938201768 318726274 901774006 45977172 462845105 213608214 760860467 225020800 541819911 281081655 811753248 401793569 633174188 146477758 658643673 546083721 654380201 857377089 985681318 373163998 686095689 988801840 996163890 546911714 992464634 753837365 948114164 607853468 945766634 794238817 961384742 855156483 910816754 143459399 588006961 21932320 90067800 962622082 968395402 826317131 869102460 89103481 339681807 667771194 691205636 297966403 918407777 421990138 595391921 301276810 341213483 541761948 940845314 445404088 454557012 843199168 952691042 129181367 467094662 993488636 995379678 102370530 251540320 365230794 715259156 365708487 644778786 485703197 798498301 888473526 964697145 340961367 837011102 288362047 472913347 538934723 790683011 650783441 881890717 564634089 955519081 241830537 562780838 275848250 429032676 38928589 734400487 853008335 889652657 908004146 974045233 742846171 922161546 819012855 824116430 579517982 927935485 4443209 243179802 841775257 961254736 494987857 517109870 183835423 315026183 434680530 639454292 716177236 729408403 665022954 920241536 515813067 986652667 354856528 629718517 232071633 714610124 30553165 913229699 237942354 642393996 582455629 980579147 44971439 497332259 219009475 372312563 903754229 973819623 124725319 977178958 566966096 901526184 205004196 605326377 275147771 984831182 73928675 763056369 251448 191647534 565804951 736929637 227915886 539875722 854130441 921896310 290890037 537703426 738316237 864355027 944233670 966648760 897909227 915420882 87433388 796747352 376781474 483319836 173516010 374316959 40023953 97516464 683725306 928689672 98030029 384423134 554135594 787069761 357543726 722279034 209920595 412526551 824852789 897940538 138794435 872438686 49867837 475051147 714163036 917751321 272828961 603326782 442788629 786974782 382583896 659556248 352944868 591208601 449529034 787785689 876695987 907225557 155817460 156969168 915658564 978240807 219676400 857591052 437109347 547329085 775827845 854578702 481196462 904536357 904897409 979805464 327754339 946646018 3469486 929382660 573426593 700259416 417666205 890453613 356860994 632382669 903495939 976220598 358948569 602894374 324452040 447719383 270652184 809667334 106457852 373445461 852130660 984184585 990281869 995998326 43840227 265551444 700641647 878118569 582516272 621843062 184697793 562645160 510814117 691345183 520833610 782560230 459562848 766260926 954638179 999939708 373786768 884961262 200909342 496272085 369902027 435878536 634240591 796629854 200746043 294764181 350017024 883016667 710252716 827156920 427205050 911789415 403355014 801523147 73445601 705254966 660002079 769098338 995461264 995730931 386452920 868374372 607939390 918022982 466134847 605036967 66445326 678717461 822277684 922016085 11686867 796663346 355391090 450160250 180653632 992337967 279548818 776343127 954715107 985929942 604781965 763087194 411311606 824355422 115264001 876968720 148211 101991521 680666249 851827368 271217981 440711301 375468629 487101434 749395719 877722848 942749462 968343159 782328818 845231270 675435509 708733782 445777199 843463135 857909786 914809623 462023809 508042511 367841084 852945106 200645518 819569540 822610057 902628241 645528251 907998550 373905073 904885909 899433596 997247630 1246030 190557359 232908733 629235394 46705528 688834237 245779908 270325225 366999286 660373455 430493848 791771835 438618403 864616160 140221331 978152283 707643856 858921442 421182076 706733715 4951866 789177829 279344872 519564885 452353881 641683373 586423727 985300181 670167504 933830592 544538636 565623130 749620380 802262837 573128928 827281075 280522994 691952022 793966439 847447923 495770433 705949227 482417708 911186103 729541677 748386797 713362510 842756533 774947599 860122017 446022361 461036927 126275046 219070563 16824752 760465090 83662455 117297621 638803869 676480017 437398374 493915176 720477172 957008156 262796469 448347713 210284867 504257365 601894530 982906959 575765852 614108420 632689367 747580713 3476772 219307950 839088913 935250365 593969408 923480606 113451688 630516580 730760409 949256264 727917957 940541693 497502476 518746970 153185625 157326683 586884408 793205608 876863 826667815 751323412 803618980 214239154 236828587 859548111 950712965 168016165 293727049 996000052 996585017 896537029 908980824 685491722 947286045 783801733 817339990 287483487 358939886 768676148 857677302 619981622 861445734 804453416 905430720 633139331 636944397 64932514 498062636 781742392 989624861 830532591 897784850 944806799 986921293 956676611 984551755 824377646 876746172 249897024 404662658 447175188 872327873 274436428 735369637 826873221 860802703 666113364 943049052 52058196 438175362 652003503 885834271 812595221 849397770 11857337 154126272 88454414 317645122 15991783 800441597 984185554 988822643 112649783 350512033 45465783 206212334 718310434 965661794 180154752 461702250 989130688 999808183 47554572 667183691 286190028 865348864 745276046 827108691 372765240 970791032 300982349 389439848 164345497 204258559 432693156 753277138 904108734 973683209 972139754 995350589 629728326 740300215 696037907 973437762 246163899 451341285 195753068 794352184 746314071 951322404 761624088 895840875 379608739 577115418 767115441 898795683 319882322 716217278 835094701 980990331 276246533 927675538 934307405 974665022 46725886 718596561 635533137 843623307 202881306 295537599 955267552 984850632 184835112 862304002 550516060 941966027 353486947 755127179 866087641 993098925 222602382 660162049 888990794 930470433 850727811 899456560 184022481 564816103 720251190 960408619 997883546 998964663 257110202 744423946 95139041 204903330 219496392 850227982 787287134 855868394 385345153 405083042 410832279 590274764 363358876 645720551 639223843 839865172 276559224 523613062 549709350 829946721 276342879 861874721 700761304 948350530 36691956 684803096 585818103 843880850 793436783 998775248 91314679 636900055 41571634 719572604 319901618 490519262 727574558 939390312 469684177 605993375 5385168 311647706 573856701 599476963 165072384 204357063 402904816 860424741 278936586 626984246 391935205 853042537 836350686 863314852 338022058 421768947 495296829 646129085 60646711 575543744 359993859 389981987 863691376 890990116 620045863 988016665 6950661 602274302 338339190 568220031 158560938 530552177 541545114 700051829 114123982 592775191 456296335 863132549 365219804 724697839 25642653 942311716 873220689 974843023 651503701 966800754 230942011 463205517 222749495 329308278 586619294 625635054 906400953 932492602 828097880 843777486 579501769 873404575 758173294 927489562 697349278 819834319 712894563 935089503 906276113 927523231 308184829 745073605 144336499 765298885 573048798 678464113 28732444 551104631 776042295 843295309 671973494 999013928 100818859 593924672 160877178 872275779 284993104 875252651 246687718 587219800 859159720 874859911 63277808 403134523 134093586 991670193 303357861 342789412 513638925 788542546 816357144 947208844 676646307 689012144 548071851 672519911 563903950 852735277 77314763 235098547 87790146 254357836 16384903 329393997 292177885 862950664 549011330 873840229 491862681 781506366 694916546 838642219 765130238 847466746 697614767 795798212 444052606 557304478 881228658 994328889 596591447 978477665 541037475 784903809 758253670 904951169 699116136 899886278 746634441 751831829 382330865 764671642 28409487 219020327 137002840 705461363 880184443 932837600 912682809 958712613 616633456 807303944 413553184 788747205 459093524 584534894 228296594 824850823 294162210 334465115 983239179 996835940 568086988 980508863 755476628 796760366 768925394 986100927 347640184 476470770 261358614 527545545 400822612 694057696 27047902 546971807 632144225 686342117 426786599 805342941 411539413 515611495 169196598 524386114 427124390 893096910 892324639 948292705 266993766 655969669 85823251 234879734 610508485 808944947 218554176 852531759 232718343 273029214 208147677 420217326 930882842 986767217 383106038 557710169 110889156 637146494 96585240 224232020 450000991 525588780 694834521 806224237 651512504 691529354 30394740 42522177 221359742 915234804 844901092 894071714 756761249 879457642 409955451 463358708 815004281 998544560 51830692 249924691 928579230 983341344 55130114 471841632 886155074 892100590 132543482 679911717 15452058 337523285 541351618 713855063 548680755 982983113 944640689 988358650 662804375 760965713 140133938 668521603 775187474 859105203 170079400 646707386 65222199 194388991 190015307 307829204 511304617 737396538 295667255 666620602 631788681 746563304 452508779 895206791 35673390 338486513 572395319 643758717 219223587 942447011 235420388 400443271 980939742 992224242 824786725 906446959 25016944 321647546 736861265 950545910 144665569 791455055 904869000 976545325 903403972 975328141 936774137 977261775 582324577 720857259 158465770 521823692 976335010 997759849 110173525 344551196 590882518 886980851 679395969 823138709 478569166 563286871 594312508 728519137 221358820 470981821 540778057 681241130 422168434 707546559 994438992 995803874 728259821 901951524 874790816 882057189 71489197 556374941 664328986 891720251 905555358 977546282 687224767 802856667 808088184 873481770 843957531 958150129 701182127 714736988 755367570 862095871 730771015 848992483 820675536 934573803 465245672 915575411 538344180 871558143 287370489 763444277 922864726 979319138 528766852 750588879 596298393 888469497 208329657 257149076 672513658 906535412 285840103 492510482 619899783 766346010 161585198 228541050 998663663 999292202 946056599 989012918 454346118 670432071 222433250 615936128 535252676 613517080 917370144 994102729 475417672 694436251 212560107 604418096 285115740 468075316 106421722 144160384 237576144 462471187 272249253 802464702 865194158 935640800 722402521 954733338 870546877 980612064 209732810 893809374 950737121 956178016 274251199 678496772 861721653 903990830 688655765 879749513 147282168 731295333 237163578 408024816 487220358 493382665 75880815 794111093 927518812 962794081 765860345 908529389 253183164 518723363 532796430 779647122 369812341 778900301 286264743 575618055 697570699 783574768 25479302 320760006 610941933 685885906 697672594 887415292 232815661 728260769 963108766 981972873 786762325 909890680 520549562 720814649 267999872 387565167 892273357 977223306 534055557 995347141 218260744 670940032 481886171 711375210 596883956 819929590 809870024 901356878 171899167 427063701 25548177 307392334 768393085 978675070 228373278 685098851 32378195 232445412 517170446 710408298 99612690 269855611 195425586 342550955 802948435 924395136 297262628 595992253 331666700 633492093 556290507 651236855 689608957 880132759 388696229 954143694 474693730 768022343 918474749 971237708 495503329 865142763 785292340 952331970 94761439 349574204 279078021 782885326 299995273 968238141 805135976 988470511 866064045 885195107 676866383 817600886 7091085 92337887 111888794 124776300 36702524 701053142 771920054 801207072 987720585 998955894 848732984 928085323 257160731 786224127 109359367 212521355 889386315 981318357 796543546 912861114 382128427 967647219 370163646 870827036 651705905 917705355 644211275 714704956 688336625 840371686 916818604 997618550 813316059 907957567 653064644 962688574 505692539 589165129 194483666 442061607 470402304 488186578 353588164 948956225 269189974 419324070 813375147 864307283 558890278 778680018 501169484 827091406 467588017 736155066 919625636 971997111 217971122 727308683 181679492 998498755 325425727 881290788 136174266 668106874 876253893 962659156 702586974 886123697 165696498 688744407 798203542 909343377 636855877 725927905 662433240 994680783 123019284 877731200 17404049 43445687 340389497 825537927 532869765 698292524 938690962 943503118 40644564 710060431 61850657 382176905 220221105 324986432 300987516 843580961 977102044 980677313 812004200 992446651 803771995 808459892 288117810 450816039 713074935 746827223 187481979 212710035 970675840 999321903 788375517 815095161 610471777 670260998 815639883 866313077 628287834 818728569 928735640 974071342 770274080 975497902 810698020 872238745 574244096 606612238 130598462 643270030 149534365 948161291 222386579 335205967 719861142 725039089 166587505 894176113 267290482 864079538 801118462 802355539 847954572 887149205 539543574 706426072 862323770 956813785 513491140 964454509 74154333 491987941 512096040 638142181 880234401 947876081 818954085 975539021 97408828 419591091 772092625 997255667 755524130 996463692 574818590 628063758 511710829 693732280 451302579 775722742 322265191 939535129 939882390 994520614 181505764 533915018 205094234 611679514 866308769 903674723 860053307 877977635 143415632 242664821 891064830 990682255 579156548 898708670 846166103 990946804 689091405 933257243 626100154 647807610 808430895 961166954 868455373 968771545 331678019 610790833 704228649 808732031 706716086 940149438 235209586 955437310 62146257 741682986 273559702 608443932 24006845 393222532 579395404 813786131 197667432 746262034 745531503 792713370 714151690 823454999 944169720 975370790 382656349 931724203 401735486 651866925 641451217 646894202 152694860 462608365 169848395 740683359 801243242 901383748 429005019 762019445 37044003 478412495 453749600 756633075 413987419 427838846 511973705 921210742 499977542 954249601 914329833 931988884 361286811 995326186 810692728 993165173 203584084 781876962 422916049 746117572 546877829 771861786 407240874 854355083 589050004 657196569 20913297 317018496 893546902 978558378 6377914 700809399 900434604 974669236 201077860 825794820 806063970 915882461 747680285 818673292 792072323 939948381 863852666 951674111 384484650 532949172 968847185 989488035 514276781 993199022 976831230 991207470 402219857 682479131 259872299 684423227 815752066 880725195 832811626 985652476 60748325 746749813 427896314 874226828 508127724 958601440 174936901 765952534 294419686 589400691 181837008 372898923 229417070 477014778 79676078 982791095 412335229 589135647 638901254 771442398 954164809 979831971 154804909 395951679 793989332 941592368 270689705 529532399 164272179 663446062 67251934 283569704 24252161 765859427 515548887 919727563 146712386 900523000 37280402 812632467 617804259 889869165 130528130 696445221 389942396 704369207 413843666 989694258 322688418 824601186 289317739 353124337 184157832 539154056 778814604 906421052 242105141 734284326 16310968 698842137 183745003 474823277 706682443 733367480 761079509 876502833 160145682 619431924 141459367 513035210 488108118 814550731 887088795 988819410 17204766 882313177 367375720 528747536 78895047 145336721 187250868 212427620 558347217 746397394 928505525 957087549 727391763 944399222 71965504 921313837 787327134 983348506 843725162 927582134 17095149 99659915 681301961 869875653 47513750 578792025 109770231 296470772 55477134 358810018 589130068 865498355 243237746 349185685 425502704 845512744 809969349 925308199 585626010 930146581 518122394 676580122 861333296 993280305 645078505 659751959 699372492 829429791 981394261 995019453 836843159 859931568 302979571 527045580 411469318 473938297 591978802 864592167 611135208 955299040 435374842 644971848 399726676 748587289 794357245 864581812 238911156 328812726 158854478 753554447 437340880 483724376 523618494 916176725 333563503 903811505 183257563 247307084 226613588 718716201 912993584 959382524 307955134 437876045 881343446 924791638 227456680 753505296 782666058 826184899 623637640 805449092 18654116 869065176 114619456 699875319 938980362 971878721 975842448 996290035 611348551 855736743 485992267 697891247 989508069 998464076 620555534 887910152 490359857 960542595 175168791 914835620 693150456 997486240 285161219 816754368 101726697 232880181 329880972 816566709 545469883 779579434 968866454 985506849 472642640 777263378 73136180 669700781 864080268 887884967 679520516 799727896 291012697 969055554 659186006 932651968 101742864 757084648 83590682 858661091 682451779 856194584 315288215 934279657 272364630 948312935 103179439 182787055 358165681 833345061 93171950 502306211 104818340 417833994 762743497 933963100 241039716 708884003 939341155 957181363 344007498 480145492 351753832 486362089 861951672 977601554 254168248 484158387 141157179 687509539 204648953 677361507 52953715 635716980 4573729 765424537 315629698 706292417 959023320 991433397 853253300 897602302 298382896 878297003 348815741 876119677 324680935 811276861 313768919 772846864 286997656 572276698 567476617 693635767 882655959 965110963 625274116 639793235 666476039 768681940 903088087 926799868 454479892 522905129 608111003 763799107 283363133 825435998 815508617 974794716 70007334 452176515 323671774 631842004 628271030 971402383 617044885 708793339 50676624 769615657 692649716 710674455 591356765 953567797 823288957 877609974 24500661 468602737 477372078 708240952 198950045 842680396 298555069 479067934 763536710 877036123 255327835 773092240 876482614 977539950 126415383 875319505 42156790 489130268 759618434 912246814 349656852 568304052 571953248 742626008 206904085 705836476 335266825 567765225 23201940 321271895 401477238 620061035 788907065 969939209 574331513 590859845 136119625 542630683 423932585 936198498 434983810 598628741 661257401 760115861 902443211 961381440 410809337 730724555 494232182 636792666 84307536 985251315 205715210 771160680 131476315 222354633 722776226 748932619 801603797 977585232 242096246 389072547 335694374 359397216 68110699 780411063 140970377 773966653 896833162 980458416 631993917 766422035 653510987 847526430 267901661 923284952 719609105 909917935 310306791 985042272 982483190 990347624 521153354 619306544 221796892 864471076 246211108 281648504 625075488 842298657 16757354 579964681 258764447 760225059 431559204 500552842 5842254 911086829 818162485 920751252 86530012 126236960 942793512 998709328 752649243 781490472 273010446 567546188 517417001 637910147 462086861 549921573 588938069 918917993 251781891 677142511 824432485 830917230 546088906 679196392 110195943 834848271 880209525 905920273 114070713 453335651 423925257 453936813 814397052 818168319 433817911 481524892 451258334 667926376 620747170 723053554 937601151 970673632 673222836 688973134 243262055 980322900 465844748 888395742 205033417 938563148 928777966 968351862 60899446 982583609 966583999 966688562 305768572 679081589 763645581 837839124 878750791 990319054 933950196 995255080 560031648 802549212 946999179 962405373 742301861 844590328 153179655 253907570 758749529 855493857 123710955 991234753 80461249 571557417 887343692 973293341 10878668 223100015 514649688 803719834 988618898 989680353 791540649 953236753 572558004 970454996 565860870 672869388 780093188 923098746 887248764 969087992 523998326 893156582 410311625 842538850 708171130 965190421 86452203 529787101 986747907 990550214 617906453 654002599 335021136 494924390 707263236 759803933 789599263 803455249 896932146 951712851 719095040 989601260 304170332 807026448 968379058 989941315 315673746 555580694 744881326 926695668 329635447 861718862 385587785 429113914 89361067 121028873 374310705 628955325 847967523 986130467 185690911 430511795 430720239 711729816 527129569 925601258 679440873 770360700 716029482 884353684 952566552 952791916 229724063 673617973 173121800 929074405 687688058 838470125 241265398 354946751 749756559 939044295 350879844 416870909 947838420 964925827 656050926 870555042 270521068 947430802 657915228 661553819 300771435 765080670 730357189 964155579 860605287 950087328 541519048 620324401 317607873 464989681 951794283 979650750 473737459 573539277 937609497 985905691 267595778 616487836 837192910 905985776 237961871 477648040 190735007 910017697 607848992 975727692 789117907 793341953 607703317 616180306 600848193 717013881 470052750 612578071 801935219 908825723 349489901 851394160 604127663 788222184 118539552 283899908 931934392 933437022 824410417 891850329 860403842 901932821 351545283 932806362 496808931 792005586 17118677 415598771 103793402 329482187 498967253 533635867 481357819 487584398 707718568 858299671 227394259 769706324 296468602 720500552 66144706 613935533 147170639 251326765 238474579 823362666 466824727 969055740 587165994 796408952 875720659 911624086 777349382 800976325 566641988 594024902 504841068 840677455 693713994 834200425 121258597 216081836 778741248 981908160 203278747 797983050 1346698 789269451 212211441 364994387 836821345 938355574 254212232 837026748 299970801 790568315 687802382 970179042 905547889 931851229 132816464 901872512 127854720 874700824 52057706 759307290 402527739 899243533 321130299 854889559 36660839 410911223 720117513 754880633 99941036 981506754 352527731 943729724 381438233 565393804 873384387 933635386 589418141 993745783 916075391 938454210 325921962 393661785 291330893 362584296 946335366 964096580 461781550 600841671 299964459 620260346 932107536 938661819 891662082 895837710 223790954 809435788 167311011 508340316 833347305 866627929 19883185 631708581 888959923 954527219 274401287 291603767 732996501 735229361 548065127 944894549 621279959 838897766 458684024 814369157 641216810 924563946 721830980 865402518 767511306 862245333 993381860 994581082 160326229 545453285 473927668 474533705 374411906 886442855 211852892 715138938 513858457 605160813 34091804 54562895 131191692 574356382 899586639 942515566 287467559 978843117 494371896 964668269 135651068 490680500 605981002 688798530 900574525 900907977 645938466 814552543 203487864 777530471 960030811 969186852 547273795 928850011 159272025 390833768 68762541 190047045 875347580 900755290 141609577 867461193 83086262 398217259 583278448 702027007 794335993 796534580 424431328 482107689 994603019 999092748 832689785 977130550 95710029 104093949 171905761 963531291 465772678 487706509 221679239 604989054 578328001 837753987 945120971 994674898 398214851 975678697 364460808 745859586 471883079 570644760 355627542 723937132 922797556 963637935 311197323 494653870 320480546 622555799 750959548 808467738 26999203 880898900 631468231 663050006 851813260 891207530 155120918 992686861 113701012 396189317 84235254 336429765 132077794 797532232 26679420 929859803 128373378 285946442 213377101 431018614 136195584 863646993 899877152 929764500 278487078 710750768 905513180 975773512 193698957 425054764 515499939 985280016 804794318 973205560 27674261 908755244 252141590 741822450 89777805 214991446 454975974 582468146 322687710 334453188 8227536 13694972 741687130 789266121 718899852 894247855 83053295 680020332 924424415 991990913 108672771 430592463 177564477 988799648 501207746 984251076 893999570 910434960 707063951 742630501 648122636 704580358 312918086 316548795 867214271 883407229 761822323 878736329 363278744 705624708 540439943 609406690 44779750 574986283 789341808 803378350 225074559 254696996 677195593 974338879 506681229 680440410 954189521 975737877 658722216 749981083 555751928 640870123 407428015 489414294 703199620 937735100 671776803 731342797 871316275 991768016 368409186 872414806 758181424 912641027 531363233 837272489 455997402 483737948 421151750 606643138 518864841 998776773 971910517 979118183 316355337 483806048 232761292 518068970 791887227 948721590 701632248 932132144 73716175 792644804 516332862 723705342 603358018 609697320 691357302 945904393 204224581 554889682 328478425 748723555 998784504 998796034 564415752 752108468 821396974 842721981 657971840 716141620 951754651 996815236 66310556 420312453 37083706 173395093 392596054 542125681 523724961 855167843 571077566 885181378 242793051 820107099 378552995 781625691 425676145 425982773 991927056 992329017 234119215 352539835 968155068 981893756 211819478 461280231 20240697 390504794 392834010 493807524 250027524 547555540 606635040 820463391 740475622 765385714 886129605 986411201 780373750 828559227 239134460 785606856 390870997 577633876 62240922 484959280 161180867 384402082 768411660 826804464 442580204 948792182 506897704 785372032 394222066 489289428 217236864 617683719 747234553 779498509 305855093 422063932 726181904 909003599 922495985 963162082 644833080 786784865 499751439 913862832 723942528 900042817 976061281 998175980 787635799 836806158 808840501 858517774 677314727 980110783 299165639 552967859 436932504 670677625 320517864 935664804 867415035 954123348 93492299 254131715 567683763 727707116 338938332 684207523 980360585 981974662 121150148 251668118 930332845 970152671 568089197 835446154 210779636 558916081 902585786 973140883 453303107 925134310 73705154 331841238 491520419 898179492 142729277 765633391 891643046 974000953 645426270 657159919 343051486 825083741 223940369 630215377 97232253 284669767 336882852 871612135 253711420 868746355 230416117 851075399 853696867 973082551 177223487 359526881 904920405 947867446 561002631 910654649 23727485 973261708 699082931 997885853 266640071 697845057 459952203 597105588 872012962 918923676 971778798 996210331 710418219 974000440 3754770 572042293 85284725 208827606 12753986 773015257 174950024 556364670 371373895 450842930 939879199 950724339 126061586 395576594 901058371 935497075 974965710 975406776 501991472 968669399 26443047 435705203 747390843 823408193 340998342 709825578 540052893 981942460 53358695 422949127 112210604 907254332 101467587 904948101 751395846 851611026 765544394 913274330 239363424 617638943 800986645 956727901 525741744 984220306 291189485 542464142 697978350 803465702 629910984 870435228 253166108 884854838 730651519 806358306 995008000 999949590 441514624 659353259 511727199 861176799 379565117 535684261 34096061 473753262 743092059 897626477 346119785 922506831 84050471 527670871 741814740 799446383 491289562 852338244 650627774 915943882 942479315 979125656 109512296 617529587 593799544 716254591 614470069 747777759 682795242 831352937 701295870 844664689 908348831 927122693 831678338 870833023 925172028 935278883 365853032 599728050 347308539 801989257 115306440 699368397 659459770 967635745 359146114 413618261 873815233 878785000 615689508 987137628 401495915 827191833 797034509 924233789 288694136 510683316 859101153 885658720 824800545 864323159 219865134 887708842 665925937 870643718 659463918 682922149 503319842 928121785 447060941 651734090 462633366 499062119 452255202 747753244 718078734 947180429 893562906 985159088 907244573 945449768 456811100 577307582 101932066 166645122 439459222 461369985 432609187 860697174 551338738 677953307 251978763 280021064 339042272 622776965 447531625 706084443 252531109 965096565 91032833 727844451 935108227 956414637 534354666 657898633 447469130 541624679 394714999 797547172 366276413 823959607 693352471 861591518 744331735 744344601 218273550 351659385 491518580 775519296 932439775 966570221 945409140 970016013 578950905 828751729 678948248 954452593 258697354 534258317 769653358 913633161 832696222 858589893 59719924 64097262 708224247 801133274 490607473 779783233 527940991 750531380 929936659 994493955 525089174 843592594 995576715 998482501 706681472 829888725 79687858 552198847 785827112 974921394 347539980 733346186 286965365 858764379 428651162 880892132 492392033 876143583 435779976 815320069 718790071 778862479 804530127 829144042 381992800 724122402 969238464 988223974 176571329 307935559 342908142 900664346 278826663 454835557 935044804 963748505 510868128 952706982 593694424 799604002 735921650 983076102 312602851 580417853 316791042 551283065 183895468 919381897 946186137 985487158 933585070 950112704 264189126 711612807 761989210 833882799 519050643 918491958 756340939 927309965 680673773 684990114 831829077 938822383 205479275 373988941 380389070 737584443 629700342 904631489 682621604 931931539 164948646 238188151 734785779 791982330 360972536 755042750 582179788 992225148 671983641 798087531 188167371 440873519 643923866 650714067 907280046 954899081 957458638 975534522 731174746 944805569 518087285 759630540 217428652 714465231 94796684 806816725 670190702 996735511 946500777 969434989 34183570 732429116 821329011 996738078 172780067 186956829 434660386 636973588 244604087 646525160 827445656 828247454 175548301 325324907 765461258 911042700 388147458 712512319 598314157 918024192 218834546 982393536 759274363 938579046 973797254 980543542 110550465 667723665 794431338 827625262 480289453 785451151 171551885 241141825 488245207 930561241 153781272 411513669 200935021 888197601 74719554 81209728 983066206 993063893 264862889 723512679 497089939 618645907 922539845 946121203 683562695 755975895 657576064 954465448 554941215 957063530 586851421 863233844 104585998 175196237 951180247 966268674 896975361 935757885 909713141 985644720 292560923 824899096 824174871 959936228 13423273 697555342 578422824 964367199 672220881 803082267 124764797 915495986 154259076 741822048 683861585 938353147 135573760 481908559 137821671 862429081 30759896 218785561 847055434 924818902 578020260 683600826 604752959 998215679 145658733 465403043 571621552 614682422 604388531 823190727 55280185 256471266 125204549 748425245 917145283 948955907 811541250 956467608 379383025 628896203 972165500 989575256 957543587 996646184 809959232 925631262 460216250 946935280 152487107 251478855 646719310 934364445 356622600 675764158 344548108 647870834 154150937 285159198 728513471 736501229 944804968 959329900 119636858 127179620 373650010 974015240 501132435 892878870 229236720 606901798 970903052 996738899 42149827 656252319 164647 963627425 94579558 806016672 893501587 925145121 375975733 509064256 928715633 978967553 292241808 354940871 20105206 593330533 468070362 587094559 167109142 957258141 274817094 510510350 923677906 953729210 669492592 782868030 469384932 498215049 661140112 884259067 648835424 736852396 278306472 894699352 129315768 594578411 22561220 649463654 155683925 701266041 702060423 991145305 897737486 967488261 440654966 848262132 758554434 765943708 108191559 564025689 18807892 675619971 461819915 732396150 894689932 909352046 728107320 964162547 924525836 940277046 200090398 589924117 344351189 637347998 707029009 795358813 821333798 986015930 889061543 913644800 609734143 667409359 524677974 761119207 6127394 146013902 780670485 912678043 804961329 958642887 499598133 709884583 799116862 991653448 791425480 967761397 558038167 833290262 89117004 792348871 957674961 961778560 69323965 526987622 175918653 398420623 729002200 928287300 751480924 903036299 632819744 778564146 639838425 675037233 57157128 316262632 139515744 948554081 639440583 979494053 415555203 762969927 495954364 578192990 856107902 937060262 694425092 836798873 217248706 280945100 898182827 976621546 320164122 500354862 82123956 297177579 432143877 864075286 958673371 993441726 15422208 769310407 129844607 645016880 113200289 948657619 634542642 714950526 983887273 994935449 801693967 941427445 639461423 653189500 668673809 876641322 132377787 568650851 377770169 710507347 876364628 902193327 523866719 562063397 568239853 921886298 848298417 971674986 945853535 993377614 7925062 435701878 983857618 998125682 530898280 867492334 687515228 818022759 601032165 737410667 15981331 397132280 809369520 869570442 660623743 679551669 556379054 905060667 167794773 463631886 633177470 833717948 390561439 742732341 725629412 761509902 778061231 966834796 617401456 673268957 272458751 774482719 472756731 666093770 248975248 654073488 618491966 752420935 98776647 242827489 523549063 621787769 617441386 895438989 924025729 946639282 589357289 607148202 83745568 754799962 25542953 241881454 166247140 910936222 367179046 403395545 54151204 800560650 769028505 908570527 342166303 735576769 349634609 556175996 90846115 117413575 428158258 931616368 548808877 935843291 704748478 786519070 727747442 878242157 864476027 968076648 471041079 975040147 768908970 990830504 396854306 748670413 734673426 921127394 841584571 896885801 882593253 948128040 618676550 776348459 694052231 710143279 494122148 583933483 310971336 591013891 500126087 684122681 325995854 617622344 394227949 867158504 116898555 929802330 704249589 952620446 394484982 648480240 768443649 945247926 305400801 516612049 574920648 873328996 45381188 134920859 671361442 959123297 14454272 964972588 520767044 772608671 352875767 577653698 795091106 960879679 500445119 606576671 814191246 874010103 10701488 23042764 477525236 653112734 877680115 984690217 584895549 682948080 159198597 204902917 426841944 851131814 788216816 830842816 155911256 934765190 989927976 997035953 69222293 590421071 643976201 717693465 878126493 967668650 157397609 891421411 233677314 467374376 690287745 945569972 211342074 487383520 237252099 952572670 270485644 960889579 41215410 447240954 298266999 913837644 254798965 980087250 857011975 907558058 438955024 692938822 577320302 898027785 261179619 624590775 675231983 901829703 126229882 588004603 780672243 865751062 368860418 787239636 350135795 468349555 896942600 929174479 383306690 862896441 157677524 893144170 290699809 987136696 644706168 674032787 459154414 541990362 496381577 547110302 239490927 756222067 726856054 994886082 512554256 887907590 505942348 679166783 206055020 378862246 377137460 748951556 338464072 765622068 251236028 656472677 452110098 546893594 377320768 550345718 488999967 622773273 526897297 709605583 120618732 312652205 520175516 576199157 54160867 590144225 225057119 544841205 393327146 772588193 737655180 796309599 383284397 956356391 463283375 487951817 125109831 470847421 244377687 735032406 792621436 854549323 426326104 691332552 378753954 570213621 314193309 407054321 309439069 995665533 487204384 795708851 790326329 821475241 518570818 689345675 581539765 731631527 736355414 947138745 731932036 797681077 813622272 830232574 467223913 727765681 970359494 977870548 541425703 597924643 733678973 945769881 919535047 966323296 526681057 619824725 458088172 933940813 352963928 680860352 170215243 415627139 798606149 807073903 29964473 996122813 519277023 671760774 209292708 911164685 104474119 561368113 127123459 710449870 122633395 569480073 803470022 832559031 811166119 845525600 177528527 362904934 712375139 894948634 156388928 286351707 727809035 878533754 462323470 595856817 592722578 776840446 719815301 930330873 678047602 711808323 292309635 298187206 768272464 798407663 296398942 380394190 299043393 730552239 892738059 994056129 857066910 931499710 897020462 946319530 563536872 563748311 118533271 518353406 810807878 861147689 201055326 384798858 380759054 557330682 471482212 614849483 74436499 131484954 847819773 875657986 471525950 716172923 17892768 608517031 696595956 726248269 529674925 883890916 788655581 889603480 354200572 422214362 334588726 812583450 791469827 798890617 306437708 560292911 936447627 966093174 123974896 784780360 759639092 954622307 559047755 987251684 960460737 983683279 695780091 716211741 851374667 951555669 830869162 931828759 629529858 731387806 328134774 878165209 22147973 246318903 397380144 588732195 889012343 965776746 512681601 596901859 295880335 824122782 256780649 586910985 715375072 922436342 174299175 477789775 283642328 688651223 5744022 89293624 496444682 559991833 942127931 978490629 603588092 935097107 240690477 599262831 649266498 925383593 908136642 967413112 72072885 307791265 962716556 991675332 918578826 979046762 513778793 980500596 263969690 304357352 191749571 440471047 740719030 994874433 1277224 368098481 216118208 538218440 816040408 942917280 297187487 988864004 786244806 897699637 149742570 721797159 511665592 876620122 945474380 978937762 600624688 864110012 544599050 749916288 471101022 607497197 437102429 677922099 287586693 522709813 254405923 720352557 351067191 430045187 110916952 997141240 161358624 788664846 525880467 767358110 394297492 955504738 301184397 628479623 913572268 939932051 710670374 909989277 900029467 946505834 953510674 967048005 811597813 844144016 876916196 911923092 977740915 990462864 405685562 862214583 701744508 702408326 342205993 738411445 540176073 934712760 485706329 763229364 787071963 843122214 68153447 573353232 264348987 461920831 509150225 638275108 781099082 989004618 898670581 933729958 200836406 837656414 852271519 994782785 249206453 820770319 506370645 612552654 57974657 504127285 159350883 851158372 826688745 840267156 773264851 802876558 243783142 506810242 36124322 151032490 529584630 582571795 252822106 563976843 744192967 847159412 202876036 537966497 612361757 945275350 243242651 943854740 673882358 684502438 126307287 929160703 786943425 988223278 157607065 556065072 410751887 567423553 528389426 699836969 601178019 979739529 878421411 947053038 605798048 622926034 417639070 998702548 707259705 847963994 905154869 974418205 888217448 964228758 544682456 649190605 156382459 688800700 939628713 966031274 341664718 482877229 851314901 887815831 232770705 731807026 376982080 783327075 413961941 608734843 492745118 602263114 492336742 631924461 898549809 906136962 50615737 983770958 897055902 958974880 688655292 793728465 46689079 476035803 584144964 962280636 544267198 693223813 893902716 992841860 821708161 990427117 788713947 986675845 340675838 803573104 451970835 567669057 76286973 465552141 203260867 821435968 653175600 700906814 382092076 391201341 686875733 820123875 433328907 537083003 272452730 453391466 610397965 833425008 559615333 594196677 272829150 513450828 953901158 998909031 534531705 630445662 473899307 989294502 817171125 958613626 377356027 729123297 496468555 610140575 630665902 814354326 226182573 259819955 915661975 944836941 484558592 988540979 293118373 458880022 505987348 666478347 333190849 696344970 846257719 901392929 777123992 927238144 324304631 858230702 700889394 903185893 825271947 980030542 846199569 985379723 781822376 871066059 894798062 999608797 417013150 718329100 659807470 995636589 324967350 440306139 759486487 884096845 525508657 767755415 646775293 747062173 408052475 418950693 334546610 881224489 286528596 676805380 561458856 786800369 303252338 382587442 18045581 486943015 448407982 501670004 724715108 926259611 693495895 754643051 59370722 751995485 842003756 990391001 509692487 659205097 667182872 785041605 314801337 704857135 488196192 554855717 135131149 236647973 102802737 194803511 894629405 951640587 991093890 998708057 408023087 944216077 240966339 850976505 891174114 936449965 347942347 725357138 725276334 779121165 620050145 785760582 326204332 549681996 447078202 694093558 929499223 995888181 538459000 856669818 223919579 605869600 839870055 924725778 325204585 333862479 458045856 798136031 408717817 895399565 316117829 417542285 515195465 548194028 73240161 91881897 922122567 954577459 549358771 976654085 647884194 704872625 556937009 562870484 519729179 716754439 679053908 942297476 554400439 637649965 455509340 466814560 374638156 936461510 201936186 651983465 704770808 872049147 760623589 892281651 678793101 915477025 872411130 950301983 559412279 608458569 367255244 771440336 240702105 696215108 266081952 327493876 630943548 908881214 103298349 502913457 472850582 484510215 992577422 993933461 192873074 515986982 589486049 998181458 591904336 681223290 968440057 998674040 929116166 979502770 167243190 625845216 398407014 766021730 461630294 609229760 577539248 798073116 166788988 772874778 567480658 705827346 82404465 407193414 356862199 523613949 542153525 895050003 244434943 333126331 146984271 460437259 759981320 818742486 795675320 959412901 603223352 784217716 475271686 989293892 591301587 652451396 542142187 616485849 519291856 581780029 840031407 841932331 155364233 864115777 851653994 885104931 763027569 931791858 272283762 441762855 4246715 773328148 393933511 471585821 554887309 562619007 276893615 924453429 145039603 921114727 864891940 978937969 682299552 823491931 307243643 401857209 689332610 886167930 820035051 892870037 661886543 809566497 745122726 853331360 705722944 843408190 665176509 920986071 34559510 141997484 127296141 829412660 101837191 722631797 720621643 893309572 112931415 391069836 747990709 990671039 433185371 438391116 568663157 854336231 680424717 895840041 638283769 814026647 581854079 854018594 136259053 860804963 358584557 790749905 604966557 992279010 691086553 993194252 491149610 512896268 134005427 365927379 437230039 779226192 103822191 396214371 964813833 970050728 742412022 996445328 45271778 711388874 478177822 871739908 34244814 242982116 411402354 903398940 993943539 994591075 219417184 932855410 755734880 927445395 564759586 603168308 450243719 824860966 66039189 165059951 464880656 526604403 632306727 794363371 685713361 826229330 924947366 953691656 841673426 893692416 317878092 323398391 662017000 726367522 292548229 893114810 394907936 618199138 67827819 351429011 649216090 858351122 75654063 573750240 6931565 933904014 530256199 624121064 764697342 974063658 41087377 815629367 270811879 750120884 809103639 819804964 599521446 625449825 802993450 930952033 778792519 946529817 24583752 78345469 769965261 851599542 867227041 880476077 653218621 977964760 326612789 590878072 591667346 643852564 568510737 653178500 710125332 866035966 320238702 968095154 352951617 730107208 592860632 863860199 442985569 976188776 565451504 653749399 819059874 892548747 784776803 913927098 954039303 969212892 99512940 849542786 505495053 657629356 216224327 723802526 120684063 874047151 825761947 968071415 901797580 951654232 450901675 986340958 752768345 844131155 330931630 551016623 507250466 574099851 422896592 715839189 282029555 843203749 979708672 994094308 348699774 901164895 770341993 948332853 629888953 916584277 165867160 692310427 957050134 979517422 798701316 823262874 207297699 923379378 131800163 716532253 156010906 832107669 963660515 983722926 926580264 994242096 592670673 716898095 59952171 591916626 567784865 977874811 603360610 610742618 226515237 454065188 718142390 993349089 671533127 769639310 972821889 976248310 53815248 339700275 299873395 984789544 678153117 962711642 703873412 949280760 527832559 608588388 797676940 889727456 697445263 877660834 5720158 393085192 600054228 773599127 230921296 783607598 340277650 613329350 760162686 807524141 147660959 163055156 6111738 551272078 282284802 666856218 526907343 862896163 354541625 426269952 896648316 926944053 849076640 851621105 848494710 894135842 521302966 762006097 940713357 946320578 447748929 965901531 951504335 976165061 583451370 595877865 709480961 988050453 13463595 896973872 837309615 839127931 645558560 830985273 759257696 950473862 46578887 95343688 335636578 470493024 821913965 930612918 426983580 580872487 478888098 919743676 15277295 230078486 230751496 345838273 63071290 584614539 16533579 948689332 989902820 999426444 111130113 640329689 17076765 991873708 142895127 743006822 667304355 759776417 698593521 833181818 167504452 905192302 247600301 991052609 889123465 948890499 574690026 661517145 844951312 862583032 737364865 945107815 876866378 993365126 94605282 767185005 815190433 823399355 566014779 607681986 749614540 926634384 156330072 397211308 376397828 430652306 629896480 720418660 149347598 698077839 31148372 552558595 275273366 786077562 448518874 949906085 7317763 882520086 16044668 530154202 438559128 745470773 426494467 748641679 958701615 998570646 327607762 919827876 525927306 575572536 316599549 489767736 998012982 999000543 197488619 589581198 993094018 996716550 529727609 995878244 542585694 549257192 574613014 897010241 809538992 967337859 362067854 821034580 279461663 596660130 136843593 512833789 38890428 107096736 964362051 990739647 531784193 732250808 209770373 614062422 680495103 719509054 568618311 782113248 773295027 975075585 76967660 290699941 783739286 964561995 487658660 509553939 826929999 888429876 806636146 932846655 462461881 523225709 873755442 952845960 182422192 816942214 996330488 999444839 976927796 995875659 565347900 849105025 586909869 910684928 290841071 987853316 280907063 330425629 204256218 640146216 54625575 345122235 646439630 667371517 748274762 856393573 435621441 945212180 366401285 537832319 692465951 774312677 499299005 845913794 697839511 991909864 368386041 582905237 802578829 992873418 107356002 295556698 389970064 507119091 553062324 595128719 792379437 946781557 951082720 987294467 768763110 937938904 555857989 736900659 228002689 851615762 843871622 845947965 535836483 781645555 716671095 746338311 623126807 708274750 2641971 764326621 206507879 816046820 977555115 985782331 695565600 764884625 154593584 195507002 131177975 714615565 528237349 692632134 159173036 847064060 763528328 902319960 268963075 436796816 919945085 939167427 566551908 743645104 648256056 692476076 762921509 916478333 954354337 970727800 397466628 845023486 22180070 344632056 283005943 315806945 832886849 922777624 107332780 552695851 290964167 756986473 562420089 566652808 323401696 798659637 351070654 741632976 306613962 488140230 575725723 755859459 687659135 866330635 599248152 841186500 805060431 866044366 161960426 533348810 385862339 554913786 810133353 858066292 196201373 562315911 671595738 961752536 386050363 850721305 810098218 815029026 314346332 631318723 39756181 972150639 417799347 551423469 117233733 179364463 507690694 559827363 830016155 839589715 900925222 946853133 622068649 942297242 988863241 991133570 758018062 869862525 659736675 973429055 267899273 939414789 11263404 105462572 160122778 939087814 186539464 491378750 230509685 721863464 835220941 944578716 728786149 896315292 37247969 210444805 811396022 955789611 929821813 935605853 313856134 365925757 666771781 992984494 342363198 497550642 420722394 803690396 554016721 916638301 354866450 996784789 164144227 765488786 998231695 998888891 527352437 784778581 619022172 704497305 35970350 722641064 60181685 876084857 74806927 164852886 938412516 975902716 837320666 953795619 575743915 645178383 835191387 998190979 516100013 882914921 579148416 731393805 78240446 807832095 621956106 979130493 777584110 782205826 730190446 806589433 883163562 885857597 240285644 958519948 962386642 975403522 720398548 904574218 413103526 465401330 493852668 527735754 196696154 975154007 726896398 745739622 648904781 789741409 420762316 804277963 162274927 418885166 52095003 358140373 183931513 731010602 883335549 964080552 152948835 723486971 169913992 331488272 525977740 595731289 759995451 863310099 548281566 907076684 538217744 807669197 941060478 998677014 293990115 897570897 352016511 712456269 931816282 965097926 411545579 713830028 270897674 983376577 974360588 993720664 460718429 642721253 564934884 738270733 143624635 773875104 136026867 536325643 153549542 528936097 944869297 947124366 429496554 797231944 22665283 793877132 344355024 886682276 731567060 763419593 247510047 666318358 885386956 941409761 885427803 988228860 141496917 965643025 882447468 973539063 963324737 974672308 429401250 450438492 680596817 739347605 916942403 919148584 763814052 885191093 861291035 945224455 166654528 342805545 703763237 852784083 241616429 609249863 482826210 661014127 780621854 792807929 855825516 870662223 689563324 771666104 740933682 824001831 325267615 616460705 890325209 894846759 510119544 719504901 990702853 991828871 999531304 999683384 501902135 829646009 970738269 989906499 878988310 881997628 887035578 899498757 129450374 600317053 93304949 911446735 987809166 994081358 149677063 460741819 15215196 43307895 434369479 887357279 933677358 993573557 594730180 607947569 179323210 199506104 349653242 408426998 743578674 825992498 399472555 910458267 359952828 753842627 886289199 988096212 78331036 658822484 969616561 981179171 548606133 765508119 298278662 933162410 80222502 559681909 623565499 657410462 466833949 839055749 40798903 140098263 185020240 425068455 809746127 930598418 61075109 492497958 947464099 975853831 649937875 783715079 853521549 971869196 44417874 824745951 657713212 932647290 859648966 894246115 601392582 801555619 949112461 976234034 104798955 999429780 544361377 687956540 815962709 912757553 862929644 911791554 858443324 997711241 610798037 994597746 657192682 902787820 942861621 996492495 861986114 905873185 777767722 964407933 616321080 661813558 45371030 838001718 261648751 655294758 996933951 998083058 824118468 836724698 919272091 974458287 310123761 788021902 232747725 728335384 363249256 677873514 823040289 974763775 49777242 785024032 62086806 507813838 399356428 793700523 280234324 553876059 213151336 991437658 478835068 985396956 587111379 612657031 457166990 480512189 865786361 890435172 753305661 762980833 971668822 972004805 669331499 779812351 564048860 807435867 480633991 675812071 239509024 499071048 620707625 840984919 129358989 687207066 163826249 491926655 337775707 803713021 453083188 621775890 841860410 994337115 835735792 990453525 81622148 166437809 493562303 753636733 861403803 870755788 975152778 996390192 651931381 724724920 184426540 213674934 699885124 836291921 335592809 601276374 775071719 949541323 652505229 789789062 208484615 490780723 326072910 644271297 523502159 782067936 346896958 760337839 266995749 492985694 322807954 422232898 888681320 979184804 213125393 800752833 4580186 67541755 375616522 771619526 449180358 482972581 626763131 918919422 345170485 405044394 793068490 817829151 78424713 731678416 552677626 993395104 732912412 878730978 966631428 971642289 890012109 936593692 523934070 780051994 38152085 165920609 977722312 995168120 12386395 364619295 339548408 943226058 79001136 203488243 613300669 731422113 400075329 474115555 599549434 915642496 84730358 299780946 172784384 425950307 995823544 999787045 783197557 996055411 418738364 514515571 851978541 906779545 28978354 107508138 23709011 590524917 389008796 746683009 805683863 997140469 320205142 395325864 431998177 648998172 173026124 392779685 385689198 412614060 701539479 721121582 474840627 850431157 198330641 465022601 438316100 819695815 503260009 830619891 887716511 913597368 742544102 987176181 138681833 963877656 423822013 757560811 582362279 880284681 691556610 960722025 841610638 990399062 919061528 947203675 416798367 672552859 109425464 595022275 579598758 648595596 532152750 942411420 143163764 178425568 890224567 971244219 671145451 944422988 302461724 899714893 444349117 957122165 417834429 817802701 201114326 466084032 596331824 831849781 208025114 276184122 898312740 974826903 703847251 826473207 495958362 605735115 281482238 601858981 680129361 753258158 482455532 964390472 195244554 301465505 433670657 452967671 36660268 809592887 639521216 883699722 211854347 739273604 64690128 500972818 212848610 400508930 439104627 641820054 725096393 902329924 631737341 773625139 985841329 993401871 987239100 999282730 498169407 536627187 740505968 843968286 74089291 643399063 215554541 807019776 800498405 814880675 142284558 453353674 524909628 836575436 643462235 758452680 873183475 906661960 623884263 717797787 353914190 479688828 619579456 697525151 107663809 972336024 36811555 855897747 586519768 669973299 842996568 880367771 709942102 947550852 756217932 791014951 524430850 699169078 827097473 833913594 413721483 528321530 734901649 961973134 941555006 997477820 637470744 889443889 111138557 387800294 9738128 822381705 546964171 790839211 95209800 366098794 852130700 923936347 104296391 699705512 873231586 980026231 263621353 811858626 116136128 963354741 555747092 953747911 160483837 935910354 37533638 684629999 576029104 714753483 294853998 879006933 795572887 922483784 334198002 587236901 873714106 948821260 569020001 603306991 182870524 521671943 632383444 957071768 460401631 630558343 778778784 830662251 992526934 995547496 326122438 730454177 61819699 822776664 185934454 597063623 168255381 985498682 199507382 961444913 457002002 840144429 463719329 563249953 836835442 945541309 677724543 938720427 721458468 805977468 511237702 652606259 476589169 610593170 740693467 911737834 704267261 952325004 368907589 401139534 489366621 747989783 156348383 419137176 356690133 367105274 557365233 643932763 576744620 582067459 279003069 588911887 734092961 745401754 521465658 991292752 366200263 431314082 592290914 843138274 956541115 975036766 380453681 741828909 145395683 355502807 685572725 865346882 213377794 886229835 765796732 838624215 352281914 772071666 206586850 931246635 616003812 965153828 603649384 605404486 260307359 468743746 397080981 923697163 878601765 927713041 447115187 950419558 174714071 227611065 625879752 953550013 691490427 848971950 445388468 871069127 378259461 540887202 304750937 779805018 784303585 974216464 115554596 536122345 929477744 945190398 266218128 862984266 482403114 801388314 48711375 468333287 659985431 901251562 621969655 997589101 381514794 465913781 461477213 978338990 843541750 858765728 714306692 904713472 518894546 587928956 352096919 446726160 913601279 966548337 901238151 963030929 157705029 642841988 895537430 953915026 94474572 845087123 308065508 807485207 514043838 720014806 199384298 445218371 855195597 856819405 667167400 863268155 399352369 749865963 739891092 827871452 929435003 950946653 168613533 910166393 424666864 436309827 57157362 518138851 635588416 724612012 690715778 968787027 463657716 717939608 406237854 840924721 897156302 977995886 471853376 627318354 903668461 917270359 747341040 898920710 403273666 967522875 501538278 665160961 47311381 445820435 377771872 506379301 779122790 934258595 394072780 857993197 856837644 927512294 820245993 924893979 984232775 999307813 100485237 356860995 868478925 998274852 266748573 739579212 478688154 613219494 666768030 878417891 330553257 921730736 886855573 947014512 940976849 962896161 833526112 834979659 416869454 635324857 773352952 812876035 928141446 973782188 578466773 975965088 173654582 765754136 487122515 906342939 900355932 979626220 750111985 994644843 322175975 821703740 124742177 536869774 3252979 668139769 486028733 875859305 830991626 851200115 396336710 800727673 145216002 691930774 159573732 540600693 136798761 932899989 790982566 949150631 128046613 935422846 173402273 665326166 525957750 716968664 236318837 758951708 837868474 975653175 809506456 811254779 778605512 781548293 233149654 620771713 851322952 979096735 8890205 328075614 43038901 753828757 468622074 500864646 341995597 410702320 358736084 369478999 16583572 960336530 599914062 868140619 419012790 717464842 116295919 305122676 271601769 936926510 825041495 974182098 3670508 139781046 982071258 994992865 122748029 241811348 374480014 405523664 841858737 903983657 299020980 851891488 365884314 942355043 109161749 742942382 224901344 502402215 410658223 427883474 234366938 240356321 221722349 589759092 882858942 898354990 71218629 951366227 647949438 819729079 328704851 727789227 183000187 412976494 719072843 901111487 856516865 868844170 918210536 930134193 913327542 964759794 435331314 567902771 583996814 769783358 562921387 577576114 586808714 704122008 839578261 916100403 899302321 981051834 614115529 624931967 902792705 933635880 566440428 689390388 617144865 886029892 440253936 537751357 911396289 963448094 735102332 813952121 43761088 224696033 654997540 796160638 403533636 578396521 958037562 960090691 645689462 741487448 549189058 637335020 344918191 676023739 792236798 829355136 625940514 772662222 837983501 945652352 761776208 770061680 527767494 730319288 73730397 327081040 594921115 619942624 618189882 962751038 673402329 916822459 309951783 868343887 239476545 797135014 729686644 766059908 144121657 202773924 807581135 878534182 405176620 773211757 992650470 999864717 705521126 866499625 250128625 909096194 433060224 993842495 870307656 952132565 738080073 898693845 328621636 670848898 189762778 647127411 153757019 948315910 686784796 875860060 415718180 766664478 849470070 932421000 336697809 442577345 619136773 724027539 11787403 345786679 727153298 803140824 423400940 867113121 9864478 397146685 842740647 865263231 514784182 578432394 554377746 986012385 224257993 461716389 148717540 783437200 533415146 897815893 253416891 958101856 313535331 334585585 977832050 986621806 549218164 629468699 599870424 808343628 157323809 271628802 840957241 948302914 533690360 537470571 986889803 996190273 324067419 772623610 947911156 985737095 781192231 957280773 188546571 962012824 552567564 858863076 420531930 845149343 347339060 657739144 645554591 929605217 106724408 447322616 640004957 990404214 123235630 690536660 281237881 567083266 2752859 936994045 121598963 790934793 127788440 496106947 767589173 956292164 689756103 781455419 415879461 476612678 869123860 940022904 866523697 988845901 556326935 664792450 817081582 819563935 50146813 348764938 964368759 990968765 608694201 682819782 541434615 689316947 647254027 756834303 41001390 233733869 518032571 718710843 226861338 895387446 675696305 765333996 19670619 779112066 251690302 351671949 796675904 923956368 738951081 950331658 37700577 528622081 625969306 643017619 41835824 374387487 654447090 895262114 446471015 988653052 53688646 689829853 582167438 790852646 559896826 756555934 856152971 965256672 496040639 964429377 357842823 549443092 345706877 665843726 319619971 391573553 315111586 543706751 519065239 800658772 792373434 933473567 859316502 895897912 253606537 967126753 629020156 704734802 918134887 979320018 57682729 252486298 729190741 906486895 266589598 788952868 774586790 815785633 507637730 508450567 529974213 752906992 71542543 642481127 855910442 918328549 267643960 683475997 705634309 871793705 612015290 739669508 721975849 810203706 135682138 234174235 617298658 654391234 641442635 677992406 902923768 959671901 102662562 605265112 537868181 681737534 946590103 968475105 883371463 929617853 550943131 786711917 285110482 805934159 998560444 998958383 23868544 798139115 22913666 629994361 371619825 384943866 731008559 775822242 241155675 880679339 259094756 935305495 417782678 821093053 172250468 495299149 158931900 224871293 792859690 849852742 301891569 653928882 276236252 924465532 101198301 815008966 165938390 797096370 78557192 448153330 978775399 991043977 620785443 957635006 739392558 773810570 97967428 619442285 659631910 883115948 759294306 759392300 528355701 895056817 890639974 970480210 180281562 437167119 25168928 212665750 91257734 857402293 830198423 909520233 779806209 899520721 121165176 744652516 458171381 879793300 829919756 959950269 736995986 763816785 966267984 985834782 154870094 517107677 1050228 539025753 220188013 967606649 213327890 985963536 705866410 960440867 114829700 339700532 842099262 854273436 119771127 428589572 986236179 992720560 329862719 671768914 49323275 238987924 199890873 707641544 311899304 367985248 642641069 960357820 728489680 860009329 336204862 723006563 408434709 853612634 824990544 997327136 946621465 998982617 14257123 945802836 352489757 509614831 738253324 959102311 957180352 975021494 947686522 974621648 475050650 807601411 422973291 936943767 456044982 892502085 660153074 783824108 132393291 989607593 678945637 885095300 773305789 837051674 728212521 923952107 590404573 614777503 277889019 427067904 792656675 944022786 594658748 611494286 219768813 984517542 639487977 834330789 916305071 977371233 716792431 854737003 581654797 954094029 100612179 902202764 553792686 656095671 594915261 805710346 46082634 653549739 276564029 473351445 444850063 652302541 228746662 531641717 433083124 843766130 266591250 397930228 500118301 697444959 981425289 986333656 283698326 340040275 893406197 978395676 207169765 588776553 52598602 250971716 634695811 770596594 919255510 944990812 834067564 947632616 61957047 89668185 997928789 999048973 680412942 681444541 526051113 766402438 130152515 561628762 981948023 998990127 249606262 979968697 312902885 997981050 450557016 647051017 35887806 295954996 750677133 808094237 334597874 977563431 85922574 269260364 379093369 778811144 406924529 749529327 481409552 770320456 203913929 932263881 401878211 578366241 793468989 859299929 941231728 959194727 909128628 996645230 469079467 636722372 981644484 989298094 10233132 248312549 106218206 221179741 377736917 522821205 830082054 971518762 693811723 949315848 795106908 993239909 553894661 710911234 441093135 613515880 123609502 994556675 185011706 328790475 69622758 366015888 414684359 850588882 625637298 803430866 116602082 985556686 331684957 417397681 559958408 875441599 177558098 625632792 382568333 450105550 185324183 722714954 822624242 921081015 873532193 987138049 342645702 502457175 594890701 715952489 328791616 381807229 30987168 425637893 389589424 528084956 177195805 955210292 987154902 992335558 440172691 677711182 787505376 905471626 689682831 742015611 26911341 932537186 115331125 418279849 715759222 762477899 1965388 611367912 82116279 533223905 491767031 827288867 166481174 225990251 481853827 896386701 935841480 958438040 286623929 629936697 258071512 478631511 652732807 939644176 325598418 623267422 208522659 743658568 847736425 856955975 22786683 651317105 606780536 819412034 522472674 899021013 507983102 875541318 541932530 641254546 686163763 746264145 851356821 918918638 922865913 975422479 811881936 824548882 434946076 741680619 517521278 855508763 783606191 843401239 517193844 977428889 160610759 312117653 759008624 969780020 957181059 971513819 350506134 435507161 850271073 948133287 298380769 780262954 574141106 683377127 958665415 991438796 904867518 916993778 671707245 987698671 345507674 694808195 907259745 955902974 857874091 969789021 594173424 671953941 424091477 702296548 930495744 942106972 450612864 536702963 268509277 338902978 575666057 608501181 891413813 957560417 830853725 986735491 31630332 768778725 192870640 682727675 246501926 298606791 299761454 938188934 952785813 984025288 716710726 781486959 627775455 888290463 398798477 413572549 949101662 949778774 707338642 707579049 986634209 988972086 406380964 830117245 441895466 468574033 538196571 992828024 528818036 784435177 178597269 182878517 610628524 916051130 495975073 581124483 293666027 796945288 221926683 764955208 213580541 302536179 481922061 696384357 773410775 990891849 65855126 594668580 274087427 352321590 673197642 768309619 519760498 996550931 713858744 947131397 820169452 953813362 54146433 525651571 417563049 889734152 724516306 883431281 507985744 674004524 592436588 626660760 883402796 903217705 297080184 976088458 221282137 540207873 778826770 803318732 218768679 994471108 349832315 601101842 182830303 633289959 131826650 974038801 941203702 950813346 698847969 732909648 700340680 903267376 227442331 439632305 860893479 996023455 472929020 630576233 509377482 949534452 726935293 955566376 489961486 584431431 571432353 913110265 410873106 709593460 602737076 796956691 900349068 951177631 181299308 895458291 748340348 845136536 869905595 933625581 135135905 267904909 518865338 822693134 810626711 815349738 134251618 556493354 70446982 557036188 227826238 601177386 984316261 994968887 484301037 908676301 187017664 801040849 508737738 767870537 396885315 664897461 533450361 612971388 72971165 419989241 545247861 929066186 748814715 750726412 367888272 727297948 164849500 764785799 456084781 597002579 767575308 957922264 1988733 591462258 15436443 871273312 778328652 828357591 464994810 636941641 160782346 769860758 711091788 911443295 876391735 902412081 644066635 804080724 506937008 753068395 187540486 856184170 120477487 661981595 731477413 818056803 526547606 806630781 598727625 705441320 194404881 348585029 773039380 903967403 946826214 987449967 463308305 727706414 344100438 411297879 44900989 673818565 125286122 718184796 137491779 992958582 690755417 783944880 837021436 995341143 144427293 832102172 996291408 999527747 886730751 974178712 421580994 482423131 486627873 535726074 291561307 619109968 796892463 958255275 256608052 545991438 872964501 948113353 526537223 710224971 787108287 820792105 428723827 833218770 146063194 452817029 718165518 811725602 418887894 877359343 836065632 970716623 293405321 807492003 785459904 903427070 397250035 961604298 474080336 483134765 648496938 700094709 961495918 978446149 604479880 839655570 514053620 759596262 263455226 691009403 664468741 902222004 865447516 995972182 127134713 413534454 452096939 679987729 971169469 985108876 69881986 516287215 407735907 917341250 738604942 758960783 226613230 506545840 809729684 888534966 50406560 888962848 574659849 879602195 347644547 767588906 120089054 873588541 876279580 887813640 218477480 628305809 14057891 195391487 804091127 973111569 481405803 888665311 27872019 397613351 239905106 883791062 134407942 501315506 33401945 730754387 458507440 625643985 126722086 335848062 257349262 316082703 827971092 839012560 944634094 957047712 33245171 941764863 497679330 554794034 563085234 911744027 791073281 920112689 328702524 812576982 401744402 472533501 786167943 926963925 493370357 977727109 96415629 433529179 933324351 992747984 133470704 479027576 447693014 687613858 105520288 420463716 593284363 774627735 897904781 900423787 671231096 742410624 505372889 895990114 99734772 223640228 489260921 669825158 819204632 909974376 642142580 779590041 32899098 905951958 839231886 892662853 3988381 512582277 232521716 561051578 184811729 798924028 716556834 866808020 77017272 574434959 969765380 983300876 284147899 764512898 938255973 958246281 572904268 918514269 418796140 435599215 426780356 530085139 188497038 567329025 192256731 999188204 587969978 611730198 374537775 798959004 305021044 718455023 925603608 990537620 19352455 999935704 505263046 655443277 860310439 926624513 844832739 990508892 960595062 977612278 362353499 438203576 233815933 284059515 360544264 468717795 383692362 731311990 921355021 969382265 927836821 974448572 178933204 573569729 674649025 982543628 358812893 994521786 224346949 432696850 45261041 88732365 543317225 720270175 782885402 877462552 937877973 969858498 885200388 987640981 567578913 578418450 359344782 467347768 916812023 993538983 812334913 816488239 972284958 983806655 393237534 587708062 108144333 714433279 77633897 670713279 540580869 636894609 945533589 994250155 407333897 533654905 662010683 748084254 956337388 986611087 966196670 967748147 847149903 902655122 101797132 826491631 962528414 965072057 113200864 201415267 923982639 993046859 738958432 910521500 426691735 795139918 783397119 784927425 655474778 897091333 576509986 735411249 230239142 582465025 410347166 610644493 838717709 945146188 534302835 764774634 84855257 755176194 885985356 957233888 634689905 682610220 997157257 998192368 264381426 852005825 490689025 809551233 295103996 908662938 143900422 429288309 311088982 744756216 713447820 822257267 446070795 503493344 772963998 894832268 766389743 831407670 322248574 583058440 478315883 554718165 780010208 908887565 676025017 704784832 957522726 994846346 936817020 999043534 499922607 834361470 480924834 781940297 53359450 534315327 986798241 990150999 760223010 766286102 73055578 976411550 321743929 993083427 712857145 807450271 990204601 993495501 223636442 267440265 517418092 891446787 151127722 774844274 384421804 411427932 903325114 935215453 711830352 759306114 356369413 871932919 657547204 793760799 411282998 852052056 684221522 950902765 815669236 820901262 536509251 925268442 70431283 194838115 516795447 575773058 71428874 874061847 288582649 637519391 918506700 966847946 622407811 795726551 480638337 836111780 722300246 965697734 389758915 745459827 444919403 715584748 621248294 845349974 534158259 588354844 240503234 410970736 120131967 213057116 931346440 960375197 571162759 785882831 120200479 601557990 574671994 842488163 407921112 690220526 841470007 951647210 219564621 876716629 397598365 593725695 148156515 165376777 862544128 872796692 654349466 765824301 212471964 702215538 129652202 257959691 689681586 990312401 463570938 840392109 737098939 861365610 675967063 859411003 593634708 723335138 526220668 678016450 48986723 284384919 629725759 664047264 794763568 874356709 501940429 738111457 221512896 392270300 422470509 988428127 390996136 838276553 14917157 246169133 30282791 208106535 542422531 768553828 922171106 993460630 670817149 744276830 109508825 884489135 229153820 717198346 138670786 718304380 114141029 977030640 253379787 975541747 813867866 901470416 835469995 989106015 470722135 665243951 547362971 994535832 181521200 456878493 983258468 992566847 813464712 953910634 634469768 880860600 823442612 852995864 119825748 513677354 603852193 669167573 735070721 871767793 391115697 954080522 709051620 715581812 51115455 883606633 460045819 859065337 684367705 848010414 804703847 894279530 60921236 951357131 548600732 937354225 71602940 676252141 592663820 984263374 485086445 736851221 796628921 916119605 238508380 494208975 52954290 978946760 571298925 730889909 643120469 806816894 217838525 770371941 453548872 547427840 591658840 730697978 512665327 803786790 7484386 839927041 150406941 662179831 608000595 828109958 777585585 783294370 933569820 980045231 20419406 817069794 780820735 806217738 413495774 852289828 365985923 492515360 333694373 826362180 469670533 668815713 300816617 622217389 751871478 775162497 362363524 590883511 781534368 944934737 615669788 621939087 94195850 252549898 349357708 757222704 862796159 981672337 672189048 797432223 642748968 949726023 764782223 841154936 86950064 807043954 583838105 623930098 465826932 847978491 946349367 948546570 72729314 105369653 494519620 619870428 723211461 918865741 858530028 940779364 424973529 557802377 278751150 958019117 516609850 728259740 803001377 982039142 561603556 833078092 571773185 827363201 367886292 984581977 353321770 429256137 159745152 695737415 625017969 810788952 515872361 577814278 362024025 621845644 210537346 345747528 435285644 990554770 397878469 458554525 85274998 947540704 633476475 871014333 504203013 995583617 873444559 930065345 613609213 821259440 314149987 342664617 935355361 962397178 418768725 943892235 621698463 642995303 115241021 442940753 157385345 370461036 345922051 810682031 49320297 206594318 925311898 998378896 484978643 592980534 601879173 949635131 197777709 515053886 604687243 797414952 104570386 657648617 987411947 996308845 103230217 582550013 125976953 209503206 524971135 986010229 276502383 889917369 152461067 929811746 89829353 721652321 256060345 889969413 424408348 544674423 930536313 993493562 566253406 849115698 189791568 675608365 953599070 996245539 282881665 348844381 815028494 929250587 143349500 233190545 789506362 912900423 937656112 984069586 600835276 865456279 784457711 860429921 590715722 962076410 278567965 507957078 706337928 740308681 109624789 205349416 784974379 932590880 830461235 884866086 455565576 646023711 880959563 917619023 450044167 942296388 827970794 964030357 940138578 958696140 739643742 921206817 680052977 898654787 679819785 730981498 343657902 764270256 762643952 865229926 535905204 892130277 959855534 981066442 424405079 443067496 817349713 951065001 216617141 948671736 151010199 976705724 32876 556499235 222837899 419813657 287384281 516198005 395510470 643732434 893064688 956344150 91959167 629727278 80853791 168514601 375012237 405419020 858797092 986086062 126531121 346285907 325914628 390613359 993301828 998702877 705314900 800574301 775351484 952558340 960211803 967247311 359479502 419043594 429199944 688256524 169168859 285482061 483468061 797121194 141941995 188271150 853279723 997121015 577385801 589226705 598072482 849883631 511195807 906623779 859013619 945604928 78980383 394340237 738630914 994459183 21172889 766720840 50778136 244058643 79149145 749141643 557776389 861172747 26092288 806836757 156754994 300026694 201191689 792832747 585105645 611437626 945703119 957136202 342612509 466530130 928837835 984342174 468025134 582957441 394887911 426601746 111316754 531793599 861589611 905956343 513794916 827270648 219289887 567534766 912275052 989256772 990089353 999816426 173019899 522057366 942812488 994890886 871245570 873662618 742780437 964703008 277383808 749470838 668602425 932021762 440144619 481079964 827996155 871033404 499006156 532030276 20623848 223243337 86041963 891154556 321727635 356786238 369678304 469070185 823777764 958211216 990026687 990625154 402047387 942181834 246761273 410222453 651663672 677801466 613821309 645340419 650598488 702588231 251423029 451887595 749604153 971632686 458130547 486200257 88385610 256428406 448401679 677031372 904952910 976183119 620545000 715557464 590114297 718420468 922170488 954705836 545348161 945621801 238232530 777891212 303031038 497486970 752905651 948102512 393799140 639007841 618403555 964076836 735771414 878955876 415708521 897861441 327379689 784289290 401938119 440827131 211470411 346444828 761171227 811582657 24903857 630738763 945635441 981183516 658579701 791491496 166566559 891935559 654792249 964688781 313256404 949093981 649095886 892853893 13776529 77771935 223694421 358308527 180086671 329040664 416369573 478339656 757972862 927185720 255643276 373768441 380463735 498455161 655609096 762405468 87538037 458071163 34823127 540087479 30901727 360274204 892314633 999527941 216880411 779361151 784164151 948520037 112729823 186710810 85499241 330317750 620111793 854406445 728865425 840381557 330171080 832515895 791523057 956604972 739977371 756305959 777280114 960382133 367926487 807273392 674972529 912809750 791510824 944110024 586798804 857067655 612318629 788358916 188515604 654040063 64072536 493170437 715754057 908460108 109882415 618845528 153883235 375518698 14734156 441279533 15723649 524673868 602191417 930174267 389389375 493111287 250118838 869609868 347117162 567595666 123969749 860478002 186741566 441538866 880493558 965352765 468295573 619699510 431150289 486480627 100923330 504037329 110011111 555310031 270547657 684261671 905132176 947403125 663107001 752251590 823346201 926583061 792494957 846959103 494731246 646784967 795800760 890574347 2835957 311659102 627976106 874062573 285755700 630828055 143970807 658966215 451106659 809658193 211497683 881511079 860921485 898694764 874304379 903358556 38605684 60149840 721617052 903880419 399283178 647341898 860825482 927932075 53841174 260035988 479410642 966545855 248141965 757157192 816649389 916341170 299206822 891591162 118791384 204153052 599378346 866637080 565530208 687954340 567262416 728220740 636351180 744119477 337611449 544539478 253919929 487066140 676495804 753749850 223461061 539641537 356151716 898014375 756648729 828364695 614023870 660543033 115911468 199298592 613405470 975503611 63776836 363214619 182081173 405380194 524269618 886824893 89872000 192781087 310905403 558319212 17603400 697029210 687733716 978705440 740599563 922136161 78393951 860553793 32290634 972838869 512981183 719970445 27862316 177297267 621333711 673157481 771522424 824976706 879884475 950332081 72949710 271888342 812645801 990357134 907926445 963488405 165501693 948305560 159951261 768810432 773089518 858891330 131351572 359312161 547809781 862592378 455127174 835077716 360252283 925132713 404626591 813946433 686566754 835242884 1178325 71949945 504978836 765217709 930889149 953189838 546780025 746030448 562040836 654581281 912659490 983553900 588649225 758184526 647579179 818946637 304530390 907084669 507312322 662560202 521178154 536040775 139365679 204548436 785395672 830105968 606577870 871024146 305501690 847317128 495969881 965193942 171127118 906458198 511540370 767739731 227258161 927580730 173020426 530792099 777764657 849481013 748506019 834398946 411040017 810391952 425877769 946105820 530466908 984728403 585450496 833095813 354295801 892278735 315799262 321461957 582258159 878657297 886250425 914358974 579962863 840892056 347885338 738733232 905752739 967040300 138097103 787346426 900839488 944879115 524264738 946909108 822204131 859909326 553537607 595170119 632676435 662102332 851580590 906719802 260342633 740469484 350118556 843910153 441583220 976937732 478243206 839159423 595006772 602996706 553956791 692047235 130062015 486874953 642191434 807219995 684919473 753395746 195053196 388448146 140908963 934241916 863984262 884729160 733101847 855706449 959983634 977930885 113372883 258188060 342638902 904462910 957232506 987262283 932967961 971733357 752738581 794238482 757680265 796546318 788329212 902768062 477900804 543350230 770134165 861489544 345248522 800046552 96772359 454596202 609235126 990385307 950076139 992633546 780175118 824437294 862923846 974729844 21095874 27731701 861675253 904263108 839492286 866255763 845301006 912123881 651447307 955643826 47089789 755625694 560697027 663824697 101107708 784771214 820764603 828420654 149366719 926295673 626797296 832430545 133696401 930795487 573827435 722301710 618281350 664975252 901274841 958643047 687269542 734371996 429750058 663492415 683109387 892761734 551471109 902410203 503034868 779916009 618442443 663299115 77173916 898532441 204136011 669329271 611326603 759823605 795017682 836359214 874772571 979575643 503792263 853394739 846564409 949914583 247890643 702433246 263670342 721276590 980140758 980218647 625136482 633984294 491834628 944535287 402833671 498816831 873608424 876932619 906328292 984133530 505706468 603128472 174233305 662008920 400993478 913535475 782827039 945947131 594286610 610138480 312819483 813721175 866753059 995130970 232934744 747305594 443585554 565106082 598238966 936097939 741324446 943433313 891331703 912354740 151191648 893250934 597150024 833638034 622836984 650627632 68857409 970023686 403268923 939845251 900832336 995440827 568780823 709209516 706954731 918542525 567580088 918542266 331512046 540308643 988347987 994958088 206795561 534894042 247130115 835443558 786522363 912087305 272322357 920458479 137766693 984528292 663757421 668484355 23635051 963191530 249185377 616373817 14708835 539754074 109200947 237181003 334545792 363660225 575218280 697848697 894461060 963930315 596847958 644267581 220062800 624344505 731070235 960577388 984211531 995713714 176064893 432736097 928260929 959107481 751026103 778316634 838588566 970997909 703538910 991164473 314526911 323009900 525569602 735677519 426443697 942946460 646919280 865994044 734102777 986399122 149895337 440565633 962828399 983003123 206455264 343984360 613534363 869687708 130470219 975594072 969106635 978597908 213554352 847580603 176759904 438509465 91195853 777029406 889631692 954798789 957484880 960629690 274673629 984812442 833608553 986262632 319664009 798354953 768015411 995317442 377007708 679154604 647735728 739613784 743964694 937010665 316130489 844811255 147457168 923605967 388914226 409259742 809650049 840510339 489432447 795867403 690023186 758042443 796199683 950685961 162083673 634247885 357231054 454444087 276786396 492752559 527875548 620753179 855862596 988224211 414269113 569638880 332310746 449868591 60698300 74154476 388477327 776328202 661729374 820669104 364030339 815500020 159948311 824227392 107160244 149767512 436427566 659988800 719338193 780830230 424437784 754066005 23629000 141146054 40827530 480332249 457196720 647300929 268058028 990537001 493549660 882982847 225708657 953543756 924972811 952710828 619447781 675809735 930027873 999917676 73681106 972440240 168275064 827818739 309651521 748915527 290498909 768805767 812636982 877694747 977938729 979807492 553930775 680976576 192650528 249451784 873770558 893431015 313019688 394861557 861119092 960167736 851545438 964629668 100494234 331267788 467671446 585662835 605985760 915411292 506062639 626342857 222776079 822964209 68621887 685435417 683112938 714332209 737937755 861450392 716167592 928621090 469130067 985639878 905062199 944479411 963623650 970093114 212684911 376324601 41897966 192899491 582790895 756904196 912146128 913542572 966646832 980950776 968435764 993607392 860591316 959138663 480664306 605752151 147313906 502733942 885600020 934726580 900541406 942604520 250553075 902344875 411866355 691901657 299801246 446261280 363740661 488359417 19985856 855327016 789798947 980486609 568249564 878580789 326109702 563145555 337135912 653133529 18387247 270342752 232096111 545871820 801512598 994429636 393827631 478121869 297486120 481056122 181804687 537479960 965631280 972954976 416603280 908137084 834510521 850901927 923123869 935110403 695842701 819976435 462103234 610239527 174706938 780819272 552820825 623076558 131633087 885731280 352894020 960946342 496357566 826472860 210417744 741851596 602873677 863896631 727455337 801023657 648878968 993692134 227317591 327716841 537594836 996719782 449797199 635269853 584097640 934053315 924322272 982130532 464286236 907886632 910056939 915761007 145704504 778872540 216436120 349330381 539188163 965540178 956697571 962223988 173389208 205457858 294562839 549012532 851777689 977905937 907657811 978929065 111284646 713404362 148663035 562039296 122219629 460275740 642489619 754399745 758453124 923071211 124561746 874313488 900232480 972246837 779642004 954358668 684886146 796034271 39984820 804839550 744279971 852200113 939209597 957456532 687918414 758860771 797188187 852050858 690674651 884589332 815032606 858665324 840607883 858152081 296890547 575163927 251957153 956220456 823684641 932265516 736220416 752185298 348226348 524334919 962361706 997041860 568772584 595885609 589499905 981351952 315183856 849489671 993136882 999695842 201939279 321564639 275744584 940227865 344105905 548513211 569985250 810199527 899519088 915903771 767522132 809510291 552187741 677760270 343471196 863343973 951353924 983597398 22183768 93939287 412351988 531178414 418976603 901309758 568044526 703176979 17469221 151498679 503778291 786630777 655983013 904103617 91591137 450501543 841847509 892070265 963377654 967577310 345398884 638897739 518560876 530107272 150701363 679192031 758800554 987105308 86808480 98490224 539132848 805787606 759430965 778062107 863694655 895630695 373154112 831156483 710861475 974362987 762712969 823853150 554311347 564748507 931826990 986421895 165226321 339733795 134988015 869122420 926110686 989597741 867477718 985903166 863935420 963815705 881161313 965253070 985842259 999806091 794801062 839538283 811647350 943296662 744357744 887669799 333899112 988811960 821785748 995995793 127194279 787538150 898841564 984202754 856943405 947099425 494358384 620215496 598153642 624696800 998431939 999359772 186182930 997449981 27456323 776737383 81540890 743494040 603632137 629920887 63537902 732004220 68750198 231760300 474038990 535402323 803182704 910875304 498180372 773177490 341105479 633341119 355186162 484589348 35332521 963802148 740859341 748335168 731371404 755067822 922934571 984665434 180325292 536155362 947018655 986141653 559844703 928878431 106175606 267778060 544117377 702099176 133464305 133747361 927965172 954036104 612405797 831393457 324549564 376481438 121287995 775699672 109753967 400183225 298557598 983648666 655365311 735996653 385252662 461861159 342635788 636136753 367947257 984858045 471825601 612514443 554842968 822281255 715689239 945394530 649310260 853595690 608671114 693368954 153777558 621345776 411755784 799115515 266207940 361897105 796594459 921410585 977943788 998845816 707576084 959084881 163510337 820419899 678740261 775464146 900976785 915591478 218916166 231158889 495838543 788400109 964559330 975858443 956864360 959509739 459686624 692933492 442668002 863000387 302747382 875492959 595025133 695800665 382540320 989484743 210420994 516157664 36858779 371956949 598848996 945733836 846911190 951777255 84432251 943312256 445719307 497184506 223497672 864055652 971295492 991531856 39314620 937117709 888729393 909325804 311379243 939789819 358368064 664731325 282024577 570311695 141947768 465184924 238846747 392835805 788180055 939735421 818624368 927325203 757712627 872175207 325587406 422456899 157286037 580135593 543994416 806310944 761203531 955186835 670241078 872227137 912769827 927647276 172400471 630689592 455697325 479156665 495113413 634550566 73796726 82402082 468267463 869708389 550743804 554586336 173964166 514546825 764792590 820268821 460282223 845141580 348868908 502426247 674494538 852789349 788345427 969905278 936440186 939054066 16609233 953460717 625999475 942766553 918201253 996503151 762888753 894918699 757134874 957154563 250639806 267582347 279626633 491019459 317867836 363426923 555442144 929478314 217306193 920275016 120517091 248662564 40015483 989387730 829241180 966206787 446594027 747522351 56970733 60991565 460219312 841234566 253614564 273515252 739284151 746035546 823953216 955952929 142185542 222217315 299295012 724956612 416698201 656790523 137412892 596392313 502407099 865507019 797383360 983892689 248092703 684742053 200300719 913171914 627155879 889237112 964359189 992441923 648046419 790031419 767009003 840589188 660840765 884422185 525412074 996037004 466269018 899408477 821216224 992932638 184525033 972965521 800115224 877375978 388368657 527065036 554060290 555204384 196822083 577524727 989135925 992273586 156649961 917775290 744684179 784468682 877287324 959498004 536102015 618531819 114390849 941414475 601842793 793181069 78433662 147285092 763795074 870384967 541081285 716618945 20300766 721828364 556357679 768677888 763315289 999372545 778259698 796799394 305280118 747246334 56587483 885321148 156535761 327227826 979773567 993274139 925261446 928677900 887951022 889080528 37489081 599055670 972128257 985693345 351821863 666242581 47899759 771941510 238771460 799801699 990872346 999474450 642648864 737905139 160210736 614613214 428535640 834790528 639109242 801931599 373590315 861191488 734695748 760125357 812931819 891124033 955558677 992199510 915807818 963276961 106104193 618347209 346365572 419562506 828373686 844184321 38786485 74370253 445373960 993763617 111640532 324479682 245128361 373177671 780070762 850956455 426804300 719880656 810520641 822573190 302686496 899666548 357924486 791401546 609708907 811336379 548762487 877181169 744245038 796867943 921224633 997276158 702795913 957578213 287910034 617778771 325408244 988718544 970649050 987629372 251838619 898096312 375434895 869347010 932365033 936691740 83692061 208068423 172703160 424717777 234800123 962513273 335841074 479365838 960022041 987205206 301608351 349229694 604020115 702194406 487344639 692891505 112428634 220797527 260780331 283381876 452186592 834149138 482431752 941697601 244028445 246443644 381538172 549482944 240207214 474960729 968458418 998789520 726120784 733786748 961737586 962270386 214984748 846205153 597960806 886978249 528773214 832801169 902563264 922213736 657611156 886067225 640059727 782912246 287963672 879415570 870633146 974109439 858590121 861432304 166576784 431190313 952790916 999336458 674474307 677491103 383697550 681892615 617439666 733948659 809547534 855589240 898874775 925474611 317723338 813461566 701889787 863398395 288274273 614020086 478500170 658011770 224453528 317743448 954522455 957249062 131335171 889834427 164195293 672419365 169378390 524347629 904234903 931926204 729259528 978472546 531732171 671358082 769218177 842521537 314416616 728481680 871279142 984535463 449492720 738503152 798942713 899725005 871649014 967274392 244395023 517167685 138148239 676057933 798291176 990780874 867459860 919036937 589645480 827956380 784892269 837447065 177036345 711610873 744421853 809266226 337363364 885085037 383663783 516233743 889165425 909317869 445786533 586664792 754631850 755002834 534595631 802166280 292830186 359138481 553349905 589960490 484543968 565420666 676305164 745609567 75225010 414200449 248342463 751588558 644015565 752078159 145219384 764881768 431598513 585406911 890969288 928382803 231725219 388418033 136720307 994902186 137726951 877850303 209840889 987080541 382865442 887258527 408707041 928162570 293242416 581668906 921681294 955902139 369257403 439245210 717445150 967349167 576169434 917537484 16886742 861711614 175194626 573901355 63839031 516766238 158887015 363143680 263124307 513186925 900641231 995926468 310945284 383280483 339041010 770839500 658037576 721169540 360060317 597665062 16867372 573467285 608273010 667761151 839832046 965901321 695450921 983888823 759597537 917685396 148563764 189636758 989691281 997225181 815799000 990994987 774993733 942350799 110241191 689698526 980185716 989987727 879709732 922932043 707950187 741823468 230719796 955379168 277698127 444919956 691174416 959804041 468512875 879146305 597683722 615121049 862655382 988719098 593811441 694181372 714869740 946669926 794953463 980376930 939804319 949061089 900636625 998742937 747627922 859317732 752080652 925213387 493439471 645041534 673095715 779183854 519598046 964929568 824602277 869647784 395662509 663327873 31751677 170907708 141071518 160364035 965075602 971963223 379816250 691646066 595581190 680677455 197475573 949964754 693112984 706326917 944678238 980874326 36774731 203264424 814130147 853293332 570256079 641761242 620871218 724079215 739744856 768516350 26980308 994722579 441404628 569466990 933045036 961905235 290767916 790269157 189252760 550681495 170640897 734439187 41445088 737629754 442119850 518752792 278352724 734877562 655938484 929179633 740760189 773468691 377533831 939631884 551316588 842016296 166198128 753420603 843890209 917935501 406796259 417528256 565800437 840140677 38173815 941627827 200086434 753832477 251375569 420056035 569857934 683070962 407887067 502138527 94222349 409464869 948311074 948604218 99568817 515191516 825401646 999745785 343287197 347692955 688168497 823747526 428413284 889376232 119008168 201230188 123328387 475244992 433435799 626494614 372272742 858641545 528846795 793513029 894061479 998316751 468306998 878023060 427583461 922616281 668780568 713746220 910970584 932155782 890913147 958309335 975088977 985140668 720739521 957603731 812805339 837247643 514069472 575991033 91252711 801217823 960947339 969260022 113941436 736593483 97143516 432115517 533434844 691060824 408114389 451518562 712470168 970459034 787115194 916747349 709143666 877735275 593462685 909453026 575706359 617844582 444939838 913705202 805035383 995538489 94447860 583199400 155311280 856618635 64816819 137431194 102014471 993902832 583295617 889373177 928608443 946493212 797239552 847728612 621452750 768335284 291190982 339405333 169269875 350414407 258544526 710195666 787565353 854015979 288674690 306650543 418156969 837361837 162060020 221219924 660008506 692152680 811168917 909711515 372381867 386195452 275753818 944533135 675927032 950290989 640232083 854209649 438054662 832701202 44729577 742866774 76540908 884724834 755995864 913035997 324907200 790092660 489200711 956778716 384848652 493558665 876065225 879134203 747784115 867424060 654059956 920340703 714159326 905745441 574636281 885486906 218598407 647627213 460371525 667433615 824317267 840741418 497469186 547226845 777605489 943024873 877890994 890715671 568191190 587428379 105222814 835979967 712590684 726424080 365083857 711503123 957110662 973273057 182315433 714826633 900005836 909099385 841980929 988976523 640755343 991538415 348230650 881088465 673775191 918771290 307118622 953091994 492222433 787328642 758936055 773751266 425189155 620298210 212130327 619855106 214649339 547629643 263948068 554105777 626133797 942448853 915734548 930915741 914894856 944803269 420374350 648998673 728818413 923272623 722620604 861869181 410931098 733566788 687579764 833231802 284116213 980711046 79634979 223201635 920613200 945132217 290026985 371547409 123295046 839892268 702070311 810477266 409939424 826623508 665420083 672532480 730252643 822343693 215612840 885454781 758739198 808734466 425110739 888781157 661246412 839577158 600376924 804781515 221920466 677128540 290002017 800866546 885804514 959475593 296965502 852227271 660027327 683493618 153297762 383134573 289106334 956378299 774075865 863423567 258919167 889754551 440948733 536272453 412631178 771638430 914662442 958901753 668373980 676950343 621512181 699160446 202340538 877136177 617520658 722217183 94403582 566542311 561646195 898399578 549660888 965966656 884860161 915050329 455944887 473534395 938277173 973842998 661917686 763157313 970747503 992504239 580037519 701488768 936068523 953995336 534061896 584021516 349709654 410124180 540728239 660638882 883473175 917724822 401875149 811274595 692405296 727553156 89311855 626361136 936239870 984711707 512388910 942006771 895699001 974441728 131492453 648521398 639611965 912107661 955653489 983139940 888443318 923528244 843992244 848437450 734559613 902228507 287653202 721969396 491658950 829321171 999489559 999921674 616840240 999807027 733533610 817244557 733756213 998227836 847127257 862422603 157959528 761581981 847356475 929754419 31658719 754099135 307428430 331690822 989461133 992616767 330763096 991074533 752735369 990935652 623188810 791237628 268809607 571180110 546674355 961186151 455371459 755963402 30585653 424295694 582147927 958653006 716234998 768607908 752584958 996203016 998532940 999475805 209909343 649448537 566862723 933358872 817794995 926904378 487486423 607779237 234752461 471824964 380504827 570208599 960160627 990087836 883774697 887412398 529573169 681603763 780425917 953637655 263494127 795335591 129075445 449740101 289889465 756080291 588649481 951451751 716432770 744083016 589380672 591414128 234704339 794803506 324311056 851602631 245232234 359583333 356751746 977410000 646257498 891271855 905506382 975419712 205277556 753125932 206554633 734119731 962439335 988028227 875318478 976878512 393335421 796364088 905497900 949453022 96531444 546363773 271534736 840637094 493883424 803170568 134746288 708223585 928546469 930717709 84501043 146911114 178541926 826777956 923342029 940305593 261490144 801649841 751771549 910039199 819634253 857150397 532756854 867821608 473242405 644425939 14737662 748018324 714874317 949109983 441182374 852610083 962331429 994094621 285648475 295359766 822666370 941846699 304359775 438056516 316576007 793879431 713465580 742775481 737015896 922433277 903535955 906266322 345711644 759761925 826599470 932887485 867704832 879879723 978008712 998485470 24026629 183918354 299980230 348309295 908279136 967225504 667377966 715049231 719381472 781051344 666379325 774627234 846565046 895456027 359517028 970619650 638710544 874123148 491405361 560081737 363177902 882190872 157804241 804165104 447619114 846602486 828025835 912058446 138279123 921147838 42889507 720376547 570291966 762756438 127885793 363103644 503992398 867647796 118310611 619477336 678372324 740344117 298551139 397972750 92437467 908565530 579922443 588622739 953021889 980144099 728929951 942216250 385314189 490239285 419406351 538180611 148452155 379527704 432344930 809364798 31115173 197404208 700263890 867166192 915869503 962580876 460731338 754106231 957185278 990042376 719099836 915851026 88698053 860530683 674572123 898505393 657169901 970461280 119712039 813607775 504816912 574205971 678558727 809903516 539289728 720186340 787792923 966272929 951625017 965602349 305804358 509808278 482568629 673614178 179653470 526505595 88800922 684230080 58794100 862840864 858689530 996171461 113348569 327414924 190888244 829053292 943075439 995549267 715394201 996558124 164942722 533047121 392196634 708426159 684040594 867349935 899746752 966492796 381754598 714876642 640488567 937575319 129842082 515521911 542837473 665382086 630160856 947105879 659496684 667801135 278309857 402958414 608068192 957360746 363755171 604471158 102531313 375951920 851730780 962387916 371277265 687411651 952081393 970571080 511717924 727737614 333332346 901570271 208244180 413722270 834451305 924629622 417194181 874839543 541592734 999416895 875049615 963032469 824463089 870860861 611428517 931827198 467106721 546429130 77752413 439627684 81593638 91091633 7700067 741164436 345565104 597239492 65221455 854376318 419209259 559603097 118562856 217534132 105083607 990590743 529292493 863004272 941926413 980189999 106777612 628548291 134367048 172462191 973152040 998169442 422859225 843669491 473869214 516427473 486781360 811609095 208739764 698012829 60746119 996620234 93278115 621713309 798531817 815349500 115742704 760945568 782864642 999836902 342906878 928028800 302534625 305640367 430790820 995710015 208656319 547577948 739230344 993425209 601526891 762843705 690110280 790154851 174851933 361805319 149908 797798420 753228481 888171374 770838613 848034812 495614920 585364741 197991896 573247629 607956202 992762882 916523799 971641538 110632941 536952432 202067207 762633347 435797033 986402995 657118322 794238893 242243608 605737249 964835170 991890694 364723586 418019277 662938094 723402280 829498854 905588697 992339770 997879532 396152477 700554551 58709373 856212157 35196871 109835990 758391000 975839059 689843354 704962184 785724922 980153233 806056922 807481288 656870430 885242552 595468103 600260716 215708311 555662108 493771162 836892751 619712341 897093009 820006207 909346659 861048032 996468556 456434199 746066087 322730256 584949609 396324319 669440266 650393204 776820039 889611183 986950278 716810636 895977806 88160594 497609662 133313554 486175524 238332634 695811226 378964385 515010402 186731651 783816668 281779837 692052456 505359098 772951364 347916314 452134344 835964024 858887118 408767814 536359628 800450310 838458735 936714743 955089392 812767908 944365027 930427961 992000617 322599779 928149556 987423835 994393188 613871627 677076464 54029349 68054732 361943180 789865868 105350919 259995385 832471034 954605244 677460712 792539666 605118122 796923547 82468459 277695656 696724072 721773375 108455162 977797041 664024571 849006366 239117817 730068705 829154295 877209352 144935497 707212235 513984800 728832625 64039461 894457357 122797769 462821667 204311107 253228655 700166506 845129857 472575674 794751726 819801488 918148710 656105294 998772031 932953684 984553849 978220414 986811977 450031039 469495983 944041212 976267410 63694131 921219426 101661861 614522037 910174875 955463378 299983057 531507456 97881201 382930482 339982846 713437092 281918641 872405574 405756882 717937648 58499590 668384321 747153771 875420616 399419627 771491051 525232952 797806513 340475557 516368302 578252984 585854114 272584373 332195618 740206956 793760596 805403695 980703993 766190506 871011235 286313485 355112003 616951762 967695688 837170066 945259095 103384098 198058486 484353148 642298237 902337010 928011994 546555962 999112082 356901451 634171719 189489993 205869206 348506890 925149526 954116799 972297417 462985458 960858882 189948066 243550240 578686713 865259118 521550108 549778735 334522147 536052670 479658527 987587254 901275404 963256180 852605069 985515616 12615167 164914133 759030073 950584493 676235832 869945376 192334253 874966767 943166425 994595109 380957131 945085795 732600676 927008624 938830027 946244460 731300254 791081743 509611707 716231107 386270601 798685423 797774942 840997215 206779829 453593742 537818118 722446713 342754433 889853580 621359477 772452772 307220348 429683609 865101694 892344840 956645088 974577680 812996241 982513826 353304391 435037290 215861280 944200249 156487459 243766359 115754627 413669849 170618662 885589776 36781119 578261702 284766544 629523376 483053940 742334742 749220041 999272875 682722991 841191636 38094557 164218779 511744335 890203057 461491922 647498790 835535788 972629070 250329102 911114163 997872832 998321577 504793809 677192036 338861264 671112523 43831855 321330521 457641983 789976332 268361020 722391509 115045554 451221023 268537050 422358593 733115660 891364898 706453326 843539878 942138197 987426227 423365802 662850461 782843286 804354538 595215056 697542466 720889093 874188470 900042482 935933005 602222525 623545363 612237067 668379149 310399856 838883863 919889644 946841626 120839982 601030069 510716353 872355651 722329271 980685835 183987108 354339254 919841796 995402996 38468034 753092486 291293079 965245625 865306542 939321697 85656976 948205389 808627067 901309918 939458238 978346944 732950532 749196491 4955916 463667118 265292290 590407442 992949030 997894597 113133193 603812704 40886761 52654768 206629458 595014085 41559829 287291584 949349926 964861833 361301564 637616843 621575645 697380445 273879247 621559937 709579565 910799270 845785195 924109173 336526205 698582852 785999622 851878999 130198257 579331682 558250006 628280838 629889905 926680310 271627759 787192566 71822214 385114137 533899842 945114981 451512708 800200206 987245930 990295920 206227398 223983073 40367786 756948528 904155661 920954475 468613728 681570578 318256454 876703465 722183810 805976484 266237321 471302437 543102714 702303458 957399027 965819732 776163108 954017692 707527669 917669966 844926975 874554994 804207216 883314624 166296695 275907036 794625490 945687193 244024627 382346953 252797049 264060894 938757031 946202626 103322610 307416077 656980850 798798478 365101280 966990472 165984818 519737164 854705342 883631717 231591668 294315307 644629700 656448891 801245456 968913550 773557018 777016204 733861253 805762091 563894443 609933082 571193833 802487456 740334047 902235530 997096143 997309369 277685351 889485078 705401217 879243351 379326089 859100850 819041438 868975595 222162928 308098818 946502418 965777899 925324698 963399394 217739936 538091048 870589168 969034239 574047481 816445005 828728946 931536649 508786408 750218705 171383308 885684739 556830746 915125742 869911409 907040235 295792949 905401559 286148207 436832830 293944663 801038367 229675805 501770835 795104792 835197785 684420321 739695015 316568588 771325470 629748805 648353010 875766340 959740541 207854122 592665047 103220905 686472375 240526797 841131464 265061085 404541622 161146319 831193562 631683437 972328930 256716003 523857872 838964957 885861913 174535459 592753066 892688569 939037345 616754275 931103213 974137725 994554527 443652070 926341265 905918885 906238651 489411276 643895067 622596062 631760889 711883443 890087647 284793729 949191577 52471032 999757278 492720396 558027471 152953227 376345775 120849928 127140306 615910048 979269944 676741068 844249357 906067326 935419137 15045858 556601674 819430747 905766932 737771819 787714207 733913814 750484605 882201346 915074993 729211564 852368887 630526934 973264162 463003841 919299415 361967450 723993310 70708042 666237149 942883262 975260720 814275768 890996850 198705252 785524490 911248310 993856498 928398249 977699608 998024187 998779607 339363576 693615977 921156301 948938762 146149870 858850784 695093100 904896869 765975000 892196309 666582395 951221040 930963790 937555603 987992931 990942245 792270082 934195855 73933113 96652016 465237691 915310043 580212705 966368644 726705301 995434263 167704600 805917452 987038371 997416218 646593756 785498791 353796207 570509022 655538385 700996662 960636238 987038291 688876954 745614006 75302862 90332382 447429743 463144632 458482247 935451866 693368162 931247298 477531805 504323047 918863555 991228018 857660864 907291647 652888308 859800891 453115210 670232701 233599064 912743113 848485531 894558556 557883895 817854107 958173133 958784006 956150683 973217307 516449020 582810137 681183531 763169624 197253390 527761472 544351327 604449022 108312532 850094705 872489877 980995188 457479825 796168166 849243804 941849467 33398343 89554961 200131572 607963941 351971294 361534964 955185969 973821117 445316681 952791852 823172275 873712382 466939169 787752825 471050064 833587863 973453077 987005638 942840678 992948569 23869175 770423049 762250323 966555956 912775320 930929897 571137807 740753556 852283352 964510368 496278056 512087840 858198190 905703058 41670679 850542745 162521253 175027252 462794183 775187549 883847902 898846301 371445956 661056968 300318283 409065156 94569969 158900035 557566825 928568882 210605815 596296621 583640755 799590580 542244384 666048662 948917177 984929308 833909332 915320172 747171909 826481082 106860618 178740680 532887616 935066205 408931788 508727013 291055392 812936220 181269825 354025083 351271687 593938466 531373265 990858711 304683714 661993483 904596576 939088887 169869889 687494436 64427680 889424385 491101433 885993381 12293486 802633720 135684633 185290647 209509394 358241834 659837731 805650407 412357466 741803705 946846045 963895010 804175588 984392912 320073697 527024675 825343014 875908809 121843739 215511026 387945202 703969732 451392253 977920014 654381133 814898344 771864089 793287096 255746423 476753433 130399124 586484790 88237779 782567634 388528229 493662879 861084332 896942678 930196699 962856617 508537289 627076727 269607786 405372356 253389531 415001063 809778748 918667173 849847423 868339329 750916704 896774051 377106044 756238320 414148126 936891873 846405499 958515298 391780450 521843738 464371441 971744109 806831759 899713014 550670689 774324381 556300460 795340378 335743525 348412229 815282787 970512030 106206576 941511034 571361110 750137828 981702460 984437588 52389263 326903609 420544106 989012261 811530794 860874335 468675604 584353838 292729840 576054158 246009033 966134028 518541144 625494844 631305674 815151854 235572572 479551959 280326461 492631897 255456080 605379337 764575471 873225772 587768448 736002064 272738393 652041354 651646029 837015736 904057158 910987799 676898577 749151667 378776154 842705101 705052460 870711728 393756176 924737157 849718624 976243820 527037845 779239081 287594558 332465547 284687829 707583690 879509448 960803453 259392292 676181257 465847039 596165856 707860472 813028776 964391887 978365178 354142912 798864773 675729306 805826520 774295987 933215690 498603762 903924884 118370181 154407056 833190292 974354787 580117364 699388119 905105285 924381551 117836403 928750857 883258890 970251529 737631021 763030365 587854662 646123728 682582553 787169053 655246711 897474814 392285041 786714715 853406429 888064571 578989573 794444907 574975559 793787613 837676795 956486939 325002818 939583170 907672824 955317837 761561146 775939854 746056585 765379209 667176316 939014292 442283074 564454377 994019708 994297740 402275606 438102663 160233117 321026462 749088932 836219372 462223025 733486596 124042436 291124330 657037437 710930408 105115631 326712399 505014098 796496177 49303664 457326416 720658652 915814972 718867251 775875809 174859581 859280281 199075042 977602208 56067097 325426123 865715146 986623636 201858770 305409640 802368301 871880163 137704338 690104291 875268813 881392959 910867067 917084671 224994752 227650074 459370934 980099099 437582899 897806465 842988364 898267119 754075858 910479473 964629186 981581086 495824995 712291360 36080560 189513156 771896189 936681562 914591760 980480616 707097255 915535924 43353053 286611112 970591486 973376519 910389502 922832388 178317846 950289473 789248739 805718430 816752266 942524525 271574013 442459264 881252504 958248897 442526969 861600075 297353032 464657097 840564522 846654763 602910610 983977083 887235117 908083635 400320053 662944994 402767199 515985819 388792097 742482849 645020 400539098 691482854 714078219 527183214 653621658 393236098 547843568 913746547 954032602 763046042 810022270 287518506 874985431 474278959 890895597 710587338 851133186 668691969 995096807 690414487 734761133 810391967 832303774 947281254 954024563 335111579 487359335 996059999 997971214 869615182 948154520 723650500 962507069 494633844 941355566 950584095 972450326 441166380 837532004 957558067 991207563 969172048 982307811 881936224 883370841 222501490 400377212 941126642 986577686 136309594 694904857 781310822 989739011 570726318 930553053 407862490 518918611 664019322 756351972 312035355 761210020 755911927 809378774 534446779 930242078 192079219 529758617 195627391 458099243 998013460 998840980 694474044 713505981 6378208 120150143 806318553 894765136 774363371 830238789 135127957 664814218 446399686 502856839 346926697 657001370 363038618 659620223 227121088 384979004 149196934 578824712 588174957 977341617 270062707 972169930 49355127 285145561 970030527 995979621 140698054 380400229 711078360 720232485 932285952 978110362 67877914 948813792 497551256 734082398 918004489 961335995 494065938 928940090 172097902 551921421 215931836 922936655 307390392 884597349 700759788 859695393 855909868 999038542 709352815 779102269 336887884 341682398 611294970 865133837 39565979 759299034 43812917 780721873 844531559 977697955 176057278 686159810 611492388 716912619 603339951 916919264 326206996 350061568 733109951 918383451 622851810 684948365 956651440 986810976 10330968 698256274 461550825 992666127 534500445 780886610 210144758 555143321 179561639 729857201 896135044 944056238 54451404 878724955 654173894 939131033 593460286 752370425 584895000 947480276 88069539 889433924 557886097 801926714 371167541 568375278 364458637 564499235 978770941 986485132 672495041 691027672 585524755 696076243 357514728 378496939 271580154 977870011 424756879 456167893 220962941 365559623 437042460 613606066 615943075 869090079 214676683 493861103 692740012 886435691 595479702 793098849 134476089 786013440 232817819 685740964 583219858 910600261 387670174 924965831 537570966 728243279 86418087 651995388 792400716 853387096 76182798 608283701 787634878 893886894 379002092 576125783 229465038 991209196 365698923 540185088 505262668 605808632 556653708 569537146 100774220 443520883 152966249 299330651 979230627 998586053 380619619 850313064 932175357 953080042 863578759 952547815 607670330 707017804 485775932 947946446 737140678 790965327 842885356 982880065 43285733 168911262 702467910 744479765 177169756 290395742 729812623 981158991 828038337 974165487 627287783 694524408 729564406 773028236 841821103 868754802 420199200 830051528 589217288 767662944 192172194 203908069 606073459 760029193 933216490 981520387 767528896 977034737 801484877 867739329 999382829 999611258 630348656 722661660 807376248 921179610 950949520 971594323 782807928 890418978 16413484 688933333 768497657 986043040 34491471 532887955 235053442 604951495 24650250 333513709 575770367 897550110 386244986 647310501 650400263 745309081 6836145 679861755 218884375 352896043 909881797 985072043 802430899 833410109 190058611 654438643 661087335 813804864 653448077 988592902 798386850 916280365 443180336 627229254 931202019 955435767 517518780 715797632 355024609 855344276 385979971 455214845 489449175 708655473 986556202 998651121 723796704 827726385 885606465 907868672 746005883 982815741 921345767 939342034 169335893 808957134 922100858 943619893 925120470 986385778 83606991 931008336 925139660 929575289 678785619 721841142 16909287 973397246 88611545 952223149 969170605 996453139 569321404 576202697 348512099 916774832 398660259 656643929 796594062 962014376 346134131 442048313 37315744 378233731 274099098 839838109 736550418 839407977 44744037 359667736 262193004 387321873 610005055 747585684 955964176 963777727 936286236 946886628 666859665 790114666 861545454 862762230 463619731 786394947 945925412 977109410 786174768 949459495 638253308 930641483 587089964 831987301 988653843 997139488 351804867 693778621 926983863 955040122 592309073 784256380 647249172 925186104 308268017 671905994 218023203 578740164 51555105 565227538 466153016 921798293 549212402 717691933 560919484 604896195 930176556 962027247 831216586 882774518 529811721 557883977 861109224 865524223 699219507 938758515 132228074 368450749 759507669 882486424 21100379 794459132 320799309 841699056 918809198 985849125 710824463 745379005 219716576 795539757 94845470 846630186 307145566 641882270 146540226 822670846 295806917 773590144 693221016 788633590 818346222 968085945 204141478 752520482 259820579 490755846 765863002 993931047 217392379 876828615 869893412 946321595 668258928 820273721 432739469 782049864 171160993 466030213 894473435 972860158 507673052 914426047 790319092 862435375 426620388 803951997 466258795 644564644 785736918 836794383 110364848 127995466 492438984 894205760 872187588 946135559 255043239 836688000 710107290 740236693 541169252 721496896 587943531 786081063 925187141 957857090 435009039 745570876 792391139 839068496 291450611 688863424 374471963 596448529 396871731 577028275 839708331 981400005 814986300 985247782 553867707 980793269 325581527 905073667 28789340 974842148 903821860 916642997 512699446 786811663 540645348 713876928 794603749 813080087 236478039 977956141 104331364 472374729 564336050 714334382 772451602 988806067 52014425 729355696 906790004 976670533 926364801 956920720 115886211 589101823 567385754 575418894 711984562 949178259 508129346 893001913 307616022 369689080 759854229 779416140 10785946 914144047 201347115 604487138 331255502 344223409 954791400 996092592 632956142 745408869 831630402 930687787 336948428 340616855 742522181 857597207 325771649 608754498 688410101 694059127 257660347 485654484 275385734 289509738 282549701 598647994 645568395 760893909 241494144 888525314 528679481 969957926 707666065 917006057 544534551 565967102 573843464 844012595 603148810 715945370 254468021 469494924 344425709 543370224 635754959 653718135 949120494 969025399 775727106 820458015 976899186 985718173 637587835 989503429 176025987 773694072 263831386 431000859 413811336 430211125 979644385 995966151 343605674 727913510 579568812 864763920 533075984 837988716 436683804 904854388 708366523 771151490 713119253 754069931 1135858 64499706 978395510 999524413 150586350 922628398 956631500 986589792 10320216 507933570 123536304 754549046 614505068 668611150 709218143 987953534 560313701 834441566 473233419 497996863 674850734 678422510 953509474 982933129 261441638 689702569 37412316 527362836 885536006 935640533 569827698 764758819 635262076 915540045 170698268 689590227 126392842 748829307 860163975 920550711 40961235 276630323 902132175 916860145 103140591 286201637 816374666 944028937 876277335 892367003 262149554 453373152 781276622 866903854 928599759 960283692 766350085 881119181 796450229 922762965 122720568 469658279 157984977 753124967 734763613 985636081 546806216 899116208 288257074 435079611 631954601 716017285 456516612 696220710 475778505 601549579 578534990 734970586 943191322 958670556 147201756 249888376 768055639 995544426 631474638 798074922 667838019 916520588 526263758 953196619 107713430 108533231 483419724 577088139 337758006 906786824 314493522 656321067 461165257 637546924 129859115 959068375 843209263 915873539 552640208 721907218 220795458 248702981 953645207 972142809 974248979 999973216 77261142 84412414 768044103 985029861 650518948 775793135 564062204 705909733 799344509 978316966 871493691 979298317 964581717 991583957 884532942 984615768 362869702 544401623 824678573 981664845 119840598 340479589 895058435 918620428 968026676 999120360 659757796 924846737 269502848 684035369 183352139 959015888 92782779 416284163 76057486 684743789 658435792 668034313 843313793 945187805 602816900 724049846 966878676 987183753 101992840 523287953 499867730 932276561 303667710 989683969 226479180 572341144 352173060 764790036 849314043 953203520 624922024 977013348 717286108 868615050 861852068 912239442 647277871 931662522 606841485 865731152 309298661 795875015 443009831 764904201 866308837 871775571 658876179 866385255 4830530 522960996 717136383 974828400 814005044 978079763 969900842 971849466 319733282 862610159 370613087 370894296 265693048 706659363 487918854 673479738 323051850 584455080 625719651 904252250 227430943 963069988 951545790 995903295 711305365 945823162 312009516 911946548 775631714 839313272 417528794 679603917 84109523 835465313 208468062 737796393 693527136 926323047 272505299 393830549 241052326 976478952 802197076 860145869 912003175 953661954 566920131 709048423 466493607 497626483 774733881 921254102 927039529 994301118 196192422 747155885 91267926 816792211 317520870 986737074 204414859 245962575 458342505 854495736 581659301 993343913 993291643 996378128 72199422 583115102 311067798 318994384 998252117 999875569 277148809 928327204 786549799 952122955 969818278 993095524 484934636 662187221 127176623 709787090 297746932 371464022 961725492 978919609 489542896 919393795 46577732 598756391 49006245 109489993 123611244 668725815 90811067 867170771 843198125 948283956 152143591 877878964 944002807 982558121 819063245 946279515 259422327 722211189 13125196 810192241 802356775 890033104 957353655 984983389 916993342 985899980 952547473 963035441 956113368 987311445 196803647 898365516 120143496 815336349 505173720 886861742 905074820 971459755 532464001 972027193 19923578 149034166 611791371 856724851 908802901 990786186 402522235 748617992 459240842 866011506 457491290 735147410 613539581 969798347 111556407 654636242 207604088 365583285 935432803 953643450 422127456 586735142 123104490 564889065 840850344 869466324 944987743 973840887 922889084 998734976 860708588 907583383 908950104 914367106 451067931 569358052 862185317 897464430 166913851 871532726 245621752 877644738 616427644 622733992 588147251 896218645 123602674 271054115 528591147 628388980 262214651 775190314 90734581 170927370 59170192 406559384 783530909 986136242 949966755 990592195 140147089 864987598 794347311 936936137 425615055 770151603 119532049 301652901 130133949 627820210 399208459 818801111 634943382 654879546 719335824 727763228 131642670 702933259 827816847 920413142 643134708 990768104 279708146 916038499 417569291 829627808 675483504 832736032 350871343 848767360 355879183 450117830 768012503 995675495 790157769 810158219 510669432 542937855 379389126 661395735 93934545 95165173 830064700 854386289 540598691 831080251 408429333 553372723 565887701 804157445 52093048 530830995 517422065 894037129 643689778 785658009 605554317 895066173 592016833 865289439 613762167 674033267 146588441 376651491 741494088 754762315 559328455 584555248 819010807 939448841 437814273 606812162 91351574 839826076 500370653 552662584 393693067 590967027 518584738 974744578 583228385 957693786 569703524 936080008 16254583 295850304 362006390 458015819 15739444 388519853 770861735 972311533 6903631 680030762 353071561 669612705 441353508 857848266 885966311 938207250 781013943 984256573 319959545 397703535 808918606 859877107 897606287 998261699 603768940 683236637 503787953 950663020 393950002 619044009 658218372 782219077 482961364 528025971 724269390 757737840 257887360 929589266 99839048 227091423 667126232 770834391 737005948 773102923 482584862 508305781 465613510 490607923 36353823 982136206 873823070 974537476 639293599 794056922 464006017 810510335 682617993 876930909 638467039 856645213 692686806 949786437 198465626 884710615 16963350 201179359 965342678 987123197 249685552 296719272 357764616 611484971 895776230 964655758 238176251 817436256 659329832 663952420 6122439 218387126 380834425 585862026 740647079 811256073 505729635 912876931 941655339 979874122 585820300 798079701 571659599 627982818 286406543 981529674 659583113 914541687 517751861 671102023 631762343 640336572 146091401 377003361 401299038 488280405 111118957 503064212 869536928 913802007 209387667 967043146 237512692 240261844 109589953 147117665 626309854 789229171 545767023 697405255 47429618 752467346 194502680 441370895 686106528 987193383 325392191 702300849 133887747 845495752 504269537 684709400 456874751 571978573 115362617 584074759 200962599 256711298 179363776 330094925 854154929 973997137 991339740 999220438 748092818 772085560 673643265 821413027 45096138 387663631 831385159 877954549 977087606 978408970 982911166 993708545 560033090 638302998 371220446 880263493 755810341 821317547 312703631 616003418 23331536 238434283 449389174 987509216 862339012 924660759 309892643 485629452 56336309 332105170 739083366 934819628 739359063 896355733 48003426 641415129 98588833 189403386 349840146 567780295 685965530 911316745 441560346 802477105 184974966 365336422 807944400 921460736 173178506 260277773 84410996 866800028 828613165 916635473 719562445 928234463 759255192 785963787 143467472 193733093 122853484 977567236 880022817 921697406 303039947 615708821 778560338 845541946 207760769 655651732 290614078 533823896 287118497 559164482 314676939 703903394 902372116 965967962 14894220 243491859 794957623 982645710 887629384 956614758 73689621 295640379 935870634 956604173 672028115 828852566 71821049 234456802 192056351 800093088 128536308 592902553 512289154 919531621 366772605 459446752 987193241 997782886 992340656 999608626 429846380 430394386 216202298 342594387 363956380 545576328 33041360 54389211 851957810 946206531 201449635 257500298 608723659 828550774 999530183 999818204 415696777 544017837 881747784 899321152 299106495 655867430 942168405 946975105 555647147 910920184 261211022 875627659 922675703 949159247 283203683 829735753 895572574 905570876 746314970 752598897 790031918 825138289 500119287 599082490 272565254 693135304 671910138 777001015 616524870 964113250 56166634 314231835 761599958 766757492 551821494 734521127 475101928 859268860 597058419 797815504 225882871 528456645 673885226 810137710 321878319 497367162 37692793 789835468 606781029 866332443 549805232 685668380 513764120 579681576 383504093 494176266 870494944 873396389 329912550 981356816 671872629 754283321 590167103 980584033 8833753 660044952 546645100 866350603 338894293 810041254 973420184 981485094 900191237 959301168 915342120 940919013 393809378 553341991 712633379 941662564 342532599 995382510 841050379 997394068 810091848 869943899 901011126 924289753 88608321 622588743 213937426 693600233 120211690 218641091 941632335 983799788 251987607 760796546 815059175 817838585 408148486 717780743 495292427 784873427 442033518 978517040 158791414 370347751 919241430 937914537 778887998 809184451 166575336 475143865 516083829 987376061 931743477 986811901 183771262 951251897 19137819 312976501 116359934 267071576 403533192 997906354 161861716 801602681 941314813 994870166 661395883 973658527 931289201 997258232 623630436 821364054 362328417 859636164 977139498 991498764 254184287 675128988 644823413 843314650 805044181 838382604 772079001 786913447 257531779 893748737 434098800 636538302 134006053 151362895 119444767 490601461 529569663 955313433 332456661 586535725 571546386 943575646 989420146 989536195 2250431 258246518 25241983 402087626 316052374 572503090 512275130 743009828 643319754 690490701 335424876 716448360 978945997 997494439 918264747 920761408 628953643 989786522 67738198 727079245 794192471 957210468 214887412 731794167 124023792 632415164 218595612 593516002 920291980 972596140 525923344 933888543 522269865 597941370 878828042 985151401 589129982 942774964 231894564 789381848 262555448 314292325 275855619 541632468 239199185 978480968 530186487 551644093 403993610 733937526 485896052 977084228 291736863 573426552 3356194 240407943 748160766 995800482 799276220 944966288 841048563 884386816 687726909 797681731 662691246 818535145 668265625 801649329 887252285 959266189 742632891 804344005 184854093 288020694 314956694 350989370 895616201 954892332 266243886 572224564 239881251 767665622 716114190 775641190 25668727 85633509 959774425 983041864 606826582 607015554 576893217 900358142 863873565 869161423 103694729 629743158 455445805 901126113 794380253 809092201 687835435 945527252 404959478 644087139 305962383 362328717 785853859 894225341 740932162 786020530 53217520 58698398 397590063 506433451 559964619 810138531 853947633 892572109 752835627 847993267 314758192 582858526 20798025 214636949 238699697 694430423 168219902 882699880 594184761 634489751 706697238 959690834 662949284 805611963 112839720 134169035 324048025 434501067 630398108 639859434 577010953 894061970 526982410 891803952 201750163 728475454 133871134 915018976 734165117 855426694 267971707 327680529 950050151 967925863 72411242 730739130 17040981 934410321 971919539 989557053 834606328 928383772 418790912 516470988 706403947 814681207 187235225 415299665 21811552 826195254 346030303 461948346 148828788 354491755 578819450 811100994 943299441 997608061 814870740 954442364 46299598 417066385 243002269 968719164 359373500 417507907 660218366 672989429 194727765 260133949 917628722 993694013 118012302 668050905 589989141 591481164 440066694 881891247 459668323 875737644 154642008 491625504 213894729 641778276 640744153 944996512 787983792 789486415 364378631 564228147 699690130 842911312 202886569 791149168 313523308 524269887 1651029 949933394 456910593 644113599 748542060 831510861 991476492 999838792 209454505 212215547 742729386 985481032 338299957 551887984 728136860 859446353 242349696 279378218 54544180 354323957 182073375 619144795 317914042 906167020 482188245 613020636 899335813 971931581 90953900 646392322 284543264 621462673 123196995 677535947 136075928 950462736 965030634 986809353 366322512 482275848 977396323 984987156 720779323 843999169 290605877 536005747 900992447 960524932 209633590 226809347 829669195 980090524 782947225 993407019 514570632 760606203 487257357 893560850 925328723 968460061 237457332 838825800 149073641 769668110 541898685 683480355 191932101 864193829 750852386 832336880 644563408 783539259 917859167 946217211 893041345 918505412 504937707 727800739 156192883 431566008 469405475 566030328 832719512 842220790 147030136 987690839 345207372 451458524 123015943 538596249 166277258 529844137 486962893 904303401 523067413 879268306 634726834 661564683 567661386 572808387 428748986 435553303 469882789 944414379 640531878 734420117 448173231 799232761 86755809 496287285 645782742 776532370 308921166 983211367 160886223 854190301 86572315 149320823 968002430 971512638 625020416 843995096 533327973 586948322 171729163 762362989 493021392 932069640 14549092 406452716 345771341 382886931 997080910 998322183 902857861 913533197 771240321 901514196 98183399 781185418 216562400 645160058 579101056 958576150 974525264 974756684 512382145 699344792 79928886 965808089 495380417 794281951 13882930 452905275 294051398 442214632 629944449 728629822 470505079 518589913 741130894 773466089 816768716 955608879 546602724 690554345 896137411 932021478 470959353 886732394 838486771 927157136 917502301 949893455 615711307 799465450 608174256 824522201 906430946 934265211 483643249 717751469 213037738 641501324 22640369 396475875 990532684 993126952 783734005 893009655 1831200 396636575 339966170 577473766 699711546 850475214 262606868 348629306 853636234 976453243 856953689 919408000 748170125 981439870 726534409 802226406 96120549 638257172 839381363 930686653 615276437 789452771 306337672 591298947 894075834 939576978 509786831 521908881 740241613 970336731 423188395 936974793 904212059 918960826 215572769 456354867 81214144 622669321 879677959 955410486 999452782 999614007 218053762 616281944 527658301 572174989 484135033 749830469 935188596 941925104 971749486 974389583 17435511 634468631 61547533 563393344 22880052 476708598 385250588 983506333 471704129 585264074 566846844 716956251 4322683 538819258 722676743 930868129 7051633 318553708 287185557 499960134 931154151 936889974 277600810 736042318 869130334 916233150 899860995 906042940 819930277 875862429 220326248 343265216 292179135 565526944 538885026 539676917 717503323 841254492 581091825 725913896 90626747 155837920 954043888 998095998 614860386 945485829 835908394 968940251 126456915 182509868 305575786 380294147 119152448 792990381 551607458 782316911 785235434 828981869 782625430 938056993 235795680 612116631 148052584 904983450 694806588 740677696 273968981 752034335 410052379 745234617 947986469 965896703 984029205 999609802 406707694 665776620 570861299 577244800 620741293 823534491 188922525 947198493 952167108 956041295 728428744 995795100 45619729 929767903 762473080 788418139 741017212 957168634 877246664 899093621 947669416 989938191 10233419 177494038 17735806 510002744 739611799 914277612 260916865 744666907 279750786 841422830 92704622 252551634 275276295 695770985 885213557 961946371 956028008 956532627 302735099 446809667 891437767 931446590 700354880 763528200 819371348 825539809 366400978 458910481 16470929 214736777 446353380 626085219 467591426 713464563 823608554 876737142 790286471 813255589 447937308 788912963 544392215 583215281 615119226 691316916 946710794 962886764 277340164 911075420 976833525 980866226 257790514 842847621 134765991 728732876 375922410 903320121 722205666 764542657 694965601 834629222 859762769 920359019 482844565 533698795 664335249 682971305 695171955 934179763 305720514 557573325 287276199 968909343 311963583 819167944 198003551 221944178 936715114 982241447 797817777 971194183 549942385 978522313 922789670 971551365 981351645 989119159 688810702 844078019 675408501 758513214 980535503 993419050 388494608 882113632 985905526 989755862 208998531 290806827 253619814 295868482 234086874 891070375 94674980 391208739 183722426 912064614 518894044 857131057 914883671 932013997 634353592 772291428 49733567 122091704 944531358 994400173 691087175 815130936 990038971 994130291 8772465 608435000 893573949 919227155 488320118 930544441 760764614 855494568 87519518 130136392 167257995 645380829 730950542 818662549 849412259 949641356 949440876 978913710 923989283 978334489 541529921 977945377 231321477 280973583 214503000 292834732 488220711 614547546 710086373 771598601 58564343 591870448 276881096 280161579 34502697 358544701 818342840 888876599 866879825 962156397 92881201 283574941 161786433 688438372 908487886 916468979 434927981 618187966 781243402 931835187 265097614 931976385 346177746 817527794 376438768 396977823 68136976 471336031 946905142 949063211 762587248 936435568 129727541 204865030 103695989 644444091 597785121 855570126 699388411 729296718 566961476 946117817 988023613 996009716 644069979 700528405 523082547 705436765 868745825 895177478 675240990 909334507 444280788 688271964 479763584 879909068 529253629 909882778 693096811 765921875 720694699 845537801 585330631 735240613 782805842 830671046 280184584 371949955 423031736 925896726 316955176 999316286 520907593 985342148 488370900 543912630 718908199 765856479 303288476 911437357 745211434 750960484 929169488 950798217 750981967 923208707 576658801 663730090 394853401 901154928 840878572 880202373 671873267 723095658 610322580 786350812 22629089 204164536 43529530 953198954 996825959 999496232 922720269 982810731 384661091 752711997 430726797 857184365 273152244 717322090 395035289 880634306 562699950 911235809 923569828 973708481 140184050 521551055 92842486 110208076 190345936 951915926 616565999 664625932 154011679 234510233 401428161 805157621 507867856 985719277 947460713 951043190 442116854 598925318 497065872 939357021 317546090 629103286 155286789 391146234 219711291 281597131 937366197 956992921 511746555 547502774 831808624 972806825 888522724 899701678 75643742 370892110 383473074 744319810 19922982 720699597 28510920 451883110 760248566 982091568 240470888 983570109 11878186 72622057 167068778 449828392 718214378 823384234 743097128 798673571 646459918 792648037 985387455 989920857 354040316 934831918 186478615 375925829 935446154 963192715 823810665 888977522 166518651 382691638 94726440 837111314 623006834 913811780 715897969 768351795 23690650 776951968 881104949 960648542 958388814 996052759 809618415 883594753 232374942 398210584 86820656 189895219 883696621 980545976 101671169 135380313 558331610 995722180 85437797 98773784 888329870 927183069 424024661 604302269 185323019 575557746 874414407 920570480 138716471 934547933 491783067 927216936 282269292 316182904 26637797 338352621 881096133 888077880 622130757 625248778 761890534 828435962 466814191 663219528 353579895 854525594 923084696 973321738 625526040 912517037 236994418 445831702 181360040 266693114 202724673 907023171 458460440 817707920 735388819 919756259 809474792 960460010 99053934 605996391 87878908 264557137 34640405 823030236 100654489 334227048 476866273 540923202 575690290 976786726 131129481 537681538 586741119 841924392 105188117 571257441 473881195 996591579 598825869 840597748 58046835 334914258 140818381 628723428 635437582 964060128 291978428 436507178 546827243 694674511 275972125 990449099 851256631 915246787 106427531 766962524 358491256 747602083 166890519 394660644 270492136 486488615 775716446 892806324 477553819 628693698 97612408 135457374 684904894 704790831 251321921 671850004 247712398 980040776 814464991 903936837 993141265 998038421 612699209 982129410 226635467 253672898 968465919 972130272 7154240 687213521 925220739 944607514 524405569 547244831 71186107 383335902 223696029 949689898 413055621 672520310 959254370 992003237 780646363 864465185 781215104 868626985 136089869 593478092 707854947 987715578 785297208 994697063 153428734 441472527 515937526 629002192 435105177 786061481 648762074 704009556 167772273 937183175 301902997 737113308 570075052 991252368 13846587 598799867 330676847 551998815 677987253 965212659 535324617 891988895 463677720 806168167 831128405 850608315 401597068 839150221 981452214 996575396 472078736 588529716 37325269 498683371 477628219 923951415 263249567 513583345 931007902 972002191 606404756 853937178 753648403 817905957 950786245 993029284 145728615 607665165 48792753 835659779 527199320 529140350 929605190 999158799 362740889 406544343 520850154 738746754 68414352 864049455 399632285 828294893 204305761 686280928 350084142 660430413 336297686 928851146 620300295 804483633 985263233 995123610 509202081 672243422 949397420 970324105 392383034 572213097 338754335 769319092 246874497 976878228 27304371 910981239 168284854 179891350 221813484 605749676 790928739 989104238 51791476 488711031 785554773 948795251 323434764 515584621 89203203 465906084 960656385 980587180 877390906 924433560 107145780 286756355 962485215 994347308 198686811 534182745 298502222 576711199 942645349 989574597 80383058 897654052 871124558 934535721 277437618 372966625 672389434 689241367 704586094 825673111 504363765 624633747 273857149 368165493 777728993 856352573 495496947 612260821 91507795 228259406 196237495 581615261 738757594 866850022 928987468 969484662 616647697 725615492 100769475 734918225 795871526 801786066 432922298 819379288 437984468 705085726 630478251 667142417 15369961 168025443 672070440 759407488 766784300 996476705 431108464 569599449 334110625 592829247 361120334 413797644 211784878 731935165 767108874 785711869 63251641 599759078 877542329 946476414 12218232 203934547 158571661 663366208 585612190 762808671 472222363 919681458 663391194 982095162 192699930 597408956 458139336 619256820 571594815 811743873 232222381 615075096 46376212 632331557 292102310 709981721 839344458 856605805 685021984 719901415 209142561 786655737 92821363 185323719 32843251 981581503 629936545 862674521 356912734 617845660 934072205 982530310 151618280 355650193 870717807 972419012 611443159 644581431 920507938 935843308 78780604 891128800 709430649 834790395 201318357 956779116 461767858 675085644 511729676 647070270 716383044 728680354 875821545 959086166 701726328 955798628 405031004 495296139 156957310 350306750 388763687 518604722 700106287 846776701 588555653 656591834 407476870 440882886 904646568 927499246 23130567 413312687 945225283 963242776 93815142 930887836 79670884 710168316 596036914 739744885 558261647 974197618 301772882 500463999 14622407 353482112 136773665 913802071 983548851 991984938 103968639 121831323 10546372 920914034 519072525 977493758 494944873 563633385 975364327 976828961 774083579 955414382 759243005 881876113 138143622 212521508 411099196 601890561 965742498 999264633 907686314 974915839 338025808 837442047 858886015 980449637 431034771 549354966 601706498 672994690 731983522 854218444 492987421 741861946 4790865 863515910 278329425 760473243 456537336 731852959 501440503 635740281 733288792 924483630 209092105 652267931 584118766 783105584 891861450 907774161 166098933 191817229 289745593 653560019 67711809 358867510 906671124 977887355 119918085 448567612 589736336 740990470 97541727 861421011 149398119 217743638 824774449 932842615 126348049 131914810 977092026 978228717 205917237 868941092 222173486 704012458 106416776 955071498 586898252 599075134 32056796 694424626 624480841 959872113 849116538 938952307 832270028 858284700 107084846 329860959 405352669 808154395 216920237 514738592 780521614 936524089 933782930 988585267 35869190 937712146 290894250 548968338 352327317 546909366 448233007 629036601 612798536 673298935 67427293 424705437 405318287 446250881 53878750 295555361 653627163 988515685 548403412 804104997 978175721 994281277 344923337 946765430 762969140 896993661 854075596 965692773 238225091 804344423 739738784 989339977 393318510 894675517 591011143 792804610 911160492 947258929 307894711 711375220 406157491 941998268 706996668 952165358 588826694 776195702 339970423 578428855 274294932 509141267 540891654 609976238 936527362 964229801 477024445 982689458 675850380 836169715 650261580 753998035 107603879 867613445 604310441 883437163 675537744 677979385 159147052 543799474 538721685 550595053 131598200 814792940 699851368 750533585 69696152 500679490 222712779 411579958 448767460 894156367 513623564 765354898 458818970 556185066 515422487 553985987 785101375 807971440 197817829 413539694 597994899 943398620 141651747 225481760 15206732 52009705 614784752 709231132 682152464 732135194 835572333 961157410 415214671 877681769 520035767 737166073 804497844 946442522 402183363 855161863 730809073 770348502 73377008 893537580 459260264 753603897 353892284 506573854 628531651 856231973 670195110 783442027 864597420 936828658 870601781 947249488 876253136 882271024 750688227 834383122 423528922 939630329 419008662 509877827 251704626 300809232 152733147 322768143 322380440 389607605 889432896 903352366 76488686 611288147 31230274 740054542 295992721 795761918 270478032 719321588 462994967 554742898 972819435 986599202 830390562 852135774 82678138 998030284 216798462 910309813 691996550 836613170 217387914 279029552 802556178 983339803 289047641 750730215 454894590 939540592 444623883 821867728 536385858 736667264 792935066 937909980 933009099 972308568 271839681 897509949 863960352 896823135 936826832 938866339 612936283 795927471 507493057 522373788 480803214 600666427 96758516 165061177 96536231 215080852 294707379 843449328 683573052 732078541 14029268 775903626 243274742 804409637 562369923 629683204 974719316 974750663 704256854 885913079 401917068 786985179 178107183 427501765 140785629 787488769 663125372 886729546 59267742 983221324 931293980 976504452 671101265 973130138 16901584 108203366 398424541 806682903 629138043 789031981 509287234 574124478 951900182 982296526 807769481 838018650 202581667 888459593 882274580 951961769 31361471 555580681 327666140 855554268 609531841 683124214 416833685 829703195 286243030 647082559 265686555 778357971 679076573 875167095 823642015 992187378 721309989 978194208 168874415 195375526 809511417 949429025 509313640 823450836 908465090 942878645 501654454 594157318 543273452 983092113 36425296 472808859 201217231 559052844 547029040 777041891 450212982 896066989 295434351 448470622 760492267 992470765 457677484 535288863 523441115 952185750 611551795 946862073 959077635 974868050 861553903 924306059 690925125 918651867 592272468 864343917 577184929 592635482 667899928 945920066 957505409 960365641 246986076 461296833 746020292 991208564 345850980 840944890 226919084 704491352 772624768 891308305 484646354 620108587 368402883 931492966 871236229 940790851 78230563 533443162 793460163 911829689 64436720 584634069 51934959 874624118 464394889 513757770 888837804 897390198 975283790 993467180 73122000 140077782 382849739 538216348 622259763 998287427 245661790 588855454 673852560 898210625 75038979 984566561 659327525 984500807 831778719 945591777 462380735 611046076 357071178 692146233 621263214 683915986 838530616 867395766 549113028 946626971 283897251 973511752 876650779 910398613 629501702 807192624 892006954 918803845 954838659 988955564 556257409 645684036 440493210 786163807 93800305 609619839 742138868 862348748 817888536 920365697 370835382 566712372 214146989 731415004 112581383 203373291 310936103 685837807 698351882 831665734 777955175 819058567 865801671 992779361 833323093 987924804 603469340 756783511 580119707 907332629 94292764 842147110 888776964 964589610 212529026 312314331 320992752 815559165 49795799 965493175 729287146 938193632 601651900 852715466 749938262 781857222 584372327 921647433 261412928 994816348 121201047 949031643 530872235 818359370 132536419 756461969 612010305 944436304 148724375 992929455 445596360 758308462 181549836 504330689 524411892 883727887 593354140 843003070 530434006 907952545 353397251 970355462 144340690 662911397 846176706 941353057 720717239 802802627 976051175 980073575 203046610 406286784 979680903 985809915 142424487 501988502 682537278 891835162 19119936 659648569 330058245 341728866 627142450 965059753 5711863 873441607 246286871 394742761 417550960 665687552 228172596 657759462 99230203 706131623 572172804 707867015 830318716 987203207 279855508 669342100 342995998 719233173 420866431 661119493 344135613 423159989 524791145 566857670 443121190 587806901 267206034 293995334 580162456 660926613 228400988 565392364 99858197 334809899 9292513 721741323 960910536 991355055 404437843 684812198 252423169 661630734 784775532 953871889 45470943 538958595 47629702 278763473 32784938 903510391 919633565 927519434 987583885 991239217 610807810 979045235 238690686 894734957 601992824 782237987 756148713 809626680 712623400 763067169 40141755 677538852 316729867 644871305 745902888 783138776 122086934 737552993 77599101 634085982 151006239 838944388 738051874 755751230 58520772 987095858 509920830 690099032 525530297 853940105 101464388 641088316 338430637 906587142 556588442 897790991 286689362 985204928 505953297 776268500 312847094 864439947 145607024 167463117 367183744 614976622 724525585 771241059 191785237 452266442 502686610 765888883 130912826 497815541 104816410 210428236 173286793 593443180 249052388 581903783 433547476 973835314 842908261 967709233 398371855 578147987 390095876 568826479 771875974 877947735 792478887 993418931 18850185 587536534 109817356 651546498 689559619 924792890 268391147 921080818 217776156 220399712 341205788 453860234 756414803 940785157 114015796 766685956 392373030 930514141 867965952 979111075 889070861 962415770 891241075 899235100 893075393 948879884 633364418 717018385 304309191 623031546 263103184 604764905 401065173 916967034 478526823 932869832 514840590 839167497 765045716 964868710 108830616 518516058 790691998 993693823 932551781 943299602 357809708 473618839 143446600 373272803 286450375 829311183 289252536 729135506 241942499 931576648 582977377 725578394 56596877 728111638 850176342 998220254 636434119 890323181 195142274 367524969 412214219 911922057 949255584 986179198 815373682 840510877 82804039 512907019 205389031 807522369 462925286 892477824 490747607 652535110 856095955 878662844 281083059 546398228 134393588 708877330 824784942 881942680 45765879 934421513 517861974 728617205 730276230 844299118 586820245 915866163 649321967 649458403 808100605 956361380 57657810 387209869 557126241 868754373 280610856 972968321 585570795 947054237 955637513 967659540 178237666 777704136 126576163 280520297 896708518 965112744 475925339 701974375 749616187 910133344 944835289 987323782 128464838 926574565 34744521 154381185 95364409 970644073 17591189 435084301 179203105 939070487 376293094 431511082 98423522 731970101 268356816 775823040 966902320 973949100 715611281 904472302 507721303 737942431 914779099 949314268 71130327 218512987 366803183 874212122 147956000 791203169 579128593 642959408 741500475 877500507 296279935 387386324 497482408 572168531 727256865 772704991 678545468 732998032 988313043 990861311 501054927 828777292 596207656 995273546 181472280 471453013 993486694 994247293 363946551 610123289 791815087 841718654 564201752 654230946 527418921 547100836 587826436 701910393 753968370 816641105 100541157 272991319 505204198 926539575 963967626 969071490 847275115 881386871 715684092 734546095 642589332 829712527 902876510 929122559 753175931 888875516 640226258 927148056 917696858 952311838 812850474 930053269 481484609 483428803 218567901 558191607 629617785 877177925 582573511 701935489 574648828 908507296 983203287 994929448 284057145 376247749 595966228 649946056 694361328 716732902 155481809 459295017 661603429 876004421 658667814 769786695 35547902 169105800 259120849 402881964 746546863 823700722 561693211 735574591 273598406 342617945 749821516 971481862 47378683 323505844 972624310 981547140 541907870 772550409 480435098 483960787 213137310 723544874 779358461 915151075 875149100 897769753 58241541 826196565 584773362 747608509 999490775 999553870 244048483 600755654 474451978 529734576 677791371 987670238 738446837 858047385 219181156 407780294 525673044 702846984 384121148 756165516 822401938 992734281 904479151 985927745 941848530 961579068 985824438 995918371 406653000 944143813 535635559 606712805 271086823 433345863 711916877 780167289 95378924 148045699 632253567 671092388 332346009 867320375 944091965 981118443 491224856 893233784 874533205 996699993 703983487 876273702 814529350 865087038 917009792 973041057 3626076 508237846 44696674 571981792 708933502 833822012 540476982 987749524 112064952 590358562 450984719 712105517 128432596 222139374 144386321 494001613 374126807 829699559 767633320 991957277 487466647 649280332 552582666 928646966 596389496 942343133 964323581 994692032 34859020 97232812 35377931 556247460 934525802 994673753 710543422 921507011 642059497 722366404 82961407 522044413 121268997 259891180 56991563 487058271 381238868 629122414 705463415 988136744 287961193 940130265 813658287 854616010 725776833 933562135 604189970 639422055 782881364 814790220 702841932 798382231 720519577 838841636 693953018 732190731 506540624 691847924 568238972 964886294 151227394 469000971 308131230 794062496 885878371 960795089 62604365 817905553 749086450 809420127 457589265 781053822 338374552 350854514 365994314 648757438 49847238 389150308 234529829 251401561 208196430 893548642 147450010 867998972 772612926 958888574 52291556 785354306 887761181 997596141 996401159 999280239 937555125 992528725 527146980 553399897 10140873 416962825 451166067 885914144 777496011 802166603 641062713 760988287 603526919 638865082 609770827 980631595 768865583 814692183 549154687 588491979 683884426 995901898 935981588 979823381 727849936 827048619 736299423 846441566 505928624 985026990 308739216 553250541 15403387 444249931 245834017 473139370 894214593 946511581 744845159 885762024 789140365 925728433 924444694 933609091 160086850 820022353 903791719 914595520 92232422 669848193 106780917 781469072 130461662 884271381 113768436 707130983 340681998 489397378 680390083 860674763 460721467 987681339 645026500 740086455 380152762 701555852 825055027 937294154 268203935 466792636 197949371 220589235 287649340 323635539 34571679 110832996 479157087 941219045 591651043 995439860 692477796 712248705 307389149 746974771 468237114 698209044 951151548 966409255 618932799 845048718 885884474 966360940 655138329 737034241 317855492 774063346 779760134 923711347 149462383 205090722 706786504 973485824 110635117 127869407 999216259 999739054 715396116 897324111 122635593 131165121 58787898 485575298 431575806 802171274 479876612 532546811 77764728 913278213 902597550 993682766 669281371 741934008 609705043 912337805 893825012 893978084 214672317 847183350 227205208 998963295 244056403 604202089 607688384 680954578 624402915 740886154 488342108 633822111 440764572 731507533 727018143 797921635 754848318 772904589 382063819 622896128 869402782 912939621 222872511 468960169 872056085 959380838 21418150 798992415 607204180 645064083 323988852 636970390 690913971 736641594 963369089 993212753 246403122 251565052 762655362 929264667 785058426 944578646 575856686 881250395 448079209 791551172 720295257 867557599 453882687 855901663 308637038 530061046 781202101 924644299 738500535 880928374 787574692 928833037 29557086 933838839 602258594 930712606 721534657 802956876 527609496 806002486 590586248 727121114 397349059 863647957 112107574 825376201 163148025 393113496 565393127 775173593 537180681 942747648 300119469 463304289 952179267 988104207 705167028 917509808 866263567 978222149 581574764 611494433 884625760 965277323 160756121 884988737 789270627 845877044 863901535 968833726 451032039 871536021 308412748 504707597 716533338 779052520 882979791 891832597 190274797 936524171 524431722 615863517 395297853 867759828 495274149 866590295 230728259 541316940 725261097 868364815 624498671 809007918 389268461 923242473 995566186 998395197 748732496 864461905 655542460 682919243 53795174 917923045 679316757 770255119 496855887 612338732 606587358 867173552 264641519 485486971 383860451 697945204 146762534 524705138 887406855 956249204 506242792 834229066 449371967 839267627 362746506 792600039 607332534 722418666 568071865 868173407 488321757 723955058 730809217 902110639 152976690 761822927 792176973 794924691 144498438 947007496 647941749 730266307 622177531 723298260 376030856 642303899 312899606 546084109 913071246 940320248 703333587 947769361 508304435 909235390 861724250 863176812 46977542 456826808 833388012 880938321 109135927 305479294 464182330 918798865 594508501 768113621 187853865 483339791 461265600 844362702 666417645 923069580 206052225 361331041 948810924 959037206 988744516 998177376 51299363 342054395 916914536 931428026 314899247 774993734 109837245 599183206 17145094 379697800 993945118 998800547 143510292 327855595 116508211 857542233 93987422 785438707 806848565 990665740 889672498 997141430 901249906 920469675 912287090 978896020 728593928 823904372 97599770 589814515 848307019 859608982 956182246 963761867 740097942 801761943 857497346 914171687 992858701 995452557 689369176 743560380 264181208 722908196 328540705 572351023 627114569 656448715 703640985 854960849 325342662 659627474 63986490 614726764 540785606 894462869 614830167 823924074 638348392 715673420 681902120 979531988 242345654 472554541 55733190 113527612 910288371 930135240 663243366 891964543 364204869 497778932 902879416 915851495 577868706 709986389 499396246 541913103 863161676 890236494 75816222 558310854 501953541 738112542 723881883 982845667 616114985 948124187 319976568 786446922 151644328 530533537 325080246 813193281 920602056 960886339 79585550 884559954 268739459 479378012 456121123 469661626 449927590 684622020 228404678 882934834 169816001 565444994 187159584 836110523 707782835 822889710 955458149 993281697 902693504 943096140 851357612 860570495 414865933 807759889 15762543 922237053 834960858 915225623 197861044 557523370 286698924 749592528 206406675 713847982 393116382 638963040 721098498 940204934 211941737 668927120 706408103 930528186 126362869 860901354 525455978 867657047 709959271 734678555 421907522 679135126 458916550 499880129 363894712 986280434 985247390 995325315 286734504 336312643 333184841 435171540 701031787 860981385 827714108 853853641 321230907 570292306 3290089 749014690 47138098 247297828 701678977 776190674 307811845 722207649 560137958 941934234 739373930 924392141 813943527 915792264 254039231 611379691 729148385 847865833 384348774 472826053 65631713 540695153 191425034 597099591 566228325 845742824 587869041 698199676 469083141 784948353 182389427 583570091 949048129 956610437 3697990 765968893 844039932 996104213 73532186 109984430 170985873 421845604 558287266 963053835 487535254 912375150 954448960 993525722 183540140 652385993 20629246 112993356 998156607 998308452 116959772 934456222 17994128 244082363 677050848 851670396 258505236 995982483 191086184 273938668 398574600 726719025 395405529 745863123 618446206 947849934 741608888 755167002 945827795 961707689 830526963 855159377 199082594 283832600 72816097 183075549 758924920 883073262 166282571 378497872 363203692 863890709 531233153 978134476 331990395 405790348 857487899 956576962 217407538 803743600 306749515 476554193 261074032 432113051 593831461 842698496 496936003 888310281 653923743 658898455 250250872 295489587 926990375 946799894 217565746 390364401 504060207 696708812 103438840 330213783 658346677 699348912 479817550 607613214 301576564 725517692 900269296 962954781 385356659 418123202 363149955 814328084 981524987 989603524 451603485 878496154 193685220 944929121 958910071 987378519 824920617 967607528 94269615 232377779 271719438 315113351 699569324 908231705 995704561 996272082 367482759 838054796 513101973 539434279 259905005 607564942 49021601 56058166 704014162 844394590 662917286 946723168 249243489 376814663 535930763 933960191 999321684 999591100 684986961 860753575 259729198 951877474 813496791 888449063 232134653 814034265 991323091 995437121 891224766 909870875 380067024 944553510 495831545 665519528 583064937 608437790 396549987 571823625 617328275 972172033 271034041 516880461 312349890 924515083 345536721 718492323 865163926 886461353 234748290 418519542 333615246 895511862 857611723 944415175 151667232 358809065 688432593 892517939 396997479 737983156 403722910 950434173 759407861 928752278 374261394 896623723 243258799 284736915 770280009 790633629 810136892 913227216 655518060 850598628 297719667 791189324 711878466 935483417 333340947 427560929 305150441 881821843 605809221 896449864 431116593 797005374 990873831 991758638 750115469 930028661 706031887 761510727 582078280 865301626 584910334 981197366 624395071 984189240 158045390 176953588 235152071 933113493 778528226 781708966 399560601 627134297 783186239 806279700 288242730 942921275 597283914 661617236 604949957 814491827 302418892 563362528 667674351 700257600 630959817 988384664 243125178 390639776 785529617 853116927 970501987 983940619 26500539 266819535 189050033 319118722 807414956 830063676 610144116 976106625 758337978 879367709 570251050 572873625 52564831 532534082 676182528 789346042 340271736 623601183 328495102 503432726 56457748 782952723 964288689 994320575 80338809 809590601 956765510 963888262 404842580 596799830 646071002 701940416 240600720 987688122 987476373 996169331 758998589 824654438 189368543 270576508 114391580 852521734 203649730 559071104 799925999 829782264 175138693 545688461 28769520 77976732 859038852 961785626 789306450 885181567 247483750 734945513 207768762 769803688 112530443 583928553 275563994 930685612 150009160 441495731 239262293 886436940 592530568 702240348 533778175 686770152 581498194 863097554 136329691 294192057 824866418 897842685 601392448 826791004 182774321 997579627 536716171 618839153 963885370 979505803 572782103 622062409 595807782 781962932 723180826 764644819 208922493 885383949 825668797 972404774 194073114 989151784 334278362 415146646 468507488 845054650 597366325 915594437 881817948 918252299 76217323 653529654 741208810 957568032 830560502 904280535 574092209 859794490 992895153 999071502 427417451 952850110 630757234 806934414 385545296 867905748 562024686 622277354 559984381 984974225 426364921 515463217 512450396 752668052 786916714 926468978 13283335 156004199 780158736 831198327 841613179 841622132 845458060 930846905 95243990 450729382 283264926 313218871 469256035 569988791 841660355 951013431 712072866 788783410 811535723 950695570 852911423 855490318 595300394 701396813 423373775 876660189 378555249 867635713 263966654 834850691 626575976 874892257 408937451 726379030 353062688 638416171 642550723 797244200 825319167 964623450 396260008 976855957 378680158 980631580 419640072 679627165 885968229 920079597 447259023 924530063 231242729 627356169 171615694 592093048 45805644 179790572 814730727 918054843 365886283 551394124 443063845 638561163 926116055 987571250 531525652 948095984 322451463 369015568 713684880 792448135 284736289 797364333 740633709 959416258 70042135 386527697 970722592 979251546 480797188 811308120 681382236 790275607 147140868 707942684 188933162 640057910 309995475 583645113 155232984 687336878 780200587 869021942 813771050 869527732 495709365 882827438 644117631 698215954 40707128 553377325 210513295 316595583 547191617 890501740 438834255 927658310 930003937 967719858 672507354 741873890 278366634 840315917 228760888 946087410 626518069 856880956 998737747 999086439 309612547 967487685 701926984 873172545 579177736 695901691 710024632 840570447 917825111 940000005 581482516 660925562 795613880 846757048 2584036 115217571 936281011 943188064 24226596 879285847 223986386 470697132 400139208 705703044 476539191 632741973 488727763 757573309 733782265 760859701 729799782 840844278 603846631 733839157 107988881 539213299 970278744 999922102 884620604 962203884 807069535 985308789 448582803 509519651 860978158 916610618 181658092 402317321 394726192 678891193 944818043 970027489 851104270 932276315 212170992 218262819 280835520 849108314 94921412 331795446 154827699 665204665 575124415 913316340 503154571 878075652 104493040 128742444 126730248 934374693 771764033 928983817 599729277 832002122 267468922 863668190 535702625 859308005 459618250 928828202 697629541 956807468 356025961 816126193 882249597 894137565 225254651 628524931 119854108 341283622 251460698 646608479 251567739 638352875 608968972 620084664 847741964 952628216 201500562 974202606 414418812 473631136 331188079 911048580 202664141 812517846 373064969 968283489 270816649 367531811 194688274 596163779 409172297 843138154 436529515 952189872 985677485 986604682 217247540 552258448 716072269 986858707 574789095 867758965 547434908 719659255 111178942 552295518 710410591 913161622 886601547 952807269 215215485 853534341 922332348 949613378 420990739 954598167 587707183 628062608 907893188 925618213 99963706 634191918 295340441 345393318 118210600 716658356 791618205 867309140 442034609 780326689 665960836 779970357 855050153 971777228 760586147 883900655 972885299 976299660 627289204 838124156 588994151 738799707 486186257 559195094 927208486 991696636 408493202 622669770 620753554 971523487 925327430 942397989 849951828 872133677 36347697 784243375 563025457 747079150 122355894 887346897 815169284 901356158 50826586 256927695 237991603 296413466 526241213 670697595 43012712 247715541 204906595 574926930 727152699 949754587 200582649 351917921 454057820 639798176 52928864 599332956 653287908 747637402 549615622 951798170 712032149 882007305 404174049 517894473 317116021 366415226 672367222 935234200 328273412 491354882 860606143 874305487 876868475 877823145 207577484 353259357 959336474 987906315 166541117 758507100 43031230 228413583 569838359 933391904 856706841 892219872 680947002 830448495 899161867 902521917 411229498 914265075 169503398 429623414 37579631 339326651 450322993 522469453 609518904 621564551 194346608 870483153 38824421 124828431 69877134 425771623 972510472 984128102 879655897 937028788 928235136 970278927 609246480 640077716 346715301 937590936 467784448 933152271 678576117 725809446 852053641 988329947 182040 909377218 134226521 195053287 752880792 760779988 594543223 767699422 901909711 918949035 697752376 747534448 903993437 919600767 685628769 901987957 726468669 730768628 614505318 865144417 412908356 600348116 881056394 928846889 483858493 533148038 555179863 938261022 643527403 979490393 80164790 780658143 373629845 830541248 409020269 543436728 505381674 835529789 921018077 943115340 420630443 429650071 420040977 985182951 478810210 908671153 831894492 886362188 130924722 695984291 89607723 831331060 850837645 869816526 374052102 434428353 64510662 539393213 759320774 772615437 618163632 762746886 167390443 691245102 449642994 508134573 396018021 731115942 952360872 957109941 499776552 959713056 103933277 506460314 513656566 677518901 34431782 984294878 287945377 703275790 368842765 558414976 621592859 852274397 979725115 991427906 824910202 891588101 473534694 847096483 930583320 960304199 885460845 977875766 999844102 999969666 976024322 995443434 730539027 985579458 254179989 714913239 230892570 377277901 524873946 636139672 873474428 927049129 599051930 663237109 7885944 437609805 286117021 492092833 98613853 725947856 396578038 664464395 529381694 776245116 175575631 822951746 447299643 499335116 335292376 939055401 374744651 699128657 166351904 229753391 111048765 727091489 398413329 859328271 322519265 609667625 53851030 696564971 159688357 324766542 685450701 751965676 757685808 828962309 69888816 490629975 293506275 943699520 586237183 926849917 197417493 578739283 254564908 779691059 350418147 756935738 938788016 947096903 285678776 309493927 673112446 687969182 718683207 947534660 199854516 798364429 99020050 185926588 557098708 932270750 599697793 645701771 724287691 975160817 911088345 941913304 54229479 532688083 668199357 964456702 618327840 898089486 951897618 955724176 299482413 391838805 514187861 999278301 988064722 999650805 158557876 285652733 294340890 600199695 328609178 518125851 715194315 834098385 204618955 984657989 889554401 907794131 652752781 721641886 423518438 566503809 828991233 882261079 288719728 449304981 773765362 857461479 576977720 726396799 355789826 573517316 735978836 970247903 887644629 914863214 238255172 962140639 171152930 836303884 479161519 802276443 767338790 891425001 889359043 900092557 481978406 817738424 736041400 791470628 47483476 396014919 146065958 956688986 626624810 869556440 272720544 603082815 789077028 879706996 904175121 913291560 723928145 808019974 823675603 832866069 334412297 881911465 642202903 758895019 405355598 472964986 593120932 815846031 394763599 688840370 534924122 813951829 101275732 254724415 266078502 748763697 220727051 620928905 916341962 916971240 682449237 886224393 604601198 698400690 863495113 989510150 305813337 672897434 867988771 944255588 456364461 989996666 228350232 462454093 514924631 778910639 709876315 835684513 745235398 999424043 240322546 817887112 956098623 994528822 102994552 396156319 130536088 296211669 771149281 907749389 25524226 676814038 228878043 269905841 759219378 908732490 564920615 844936315 540541802 614574939 59563277 637298734 844136124 918884014 900206097 963591245 62188311 986659050 717327963 901511796 699017476 840792448 672744700 678290099 16336759 624910638 534402982 737354580 974573590 996902660 206397218 852979273 744574209 978456606 297970431 921356102 462888876 986255448 586291979 983844672 461344706 681869767 882801639 975570036 924781086 943195735 745549717 958500422 61432530 224404860 536920060 724682961 532606015 552914186 104399744 295628052 639186945 735810924 632495871 821886955 64350499 909909815 791150417 984592410 709778525 946234019 2801951 370200598 638291336 796952405 722934816 846594371 131135689 725882746 622325592 734517903 312212793 865136749 123542077 163340371 362926723 376137418 269709421 375686305 563338545 578731814 300873412 486046404 736090244 954470381 351003118 514521424 124676644 586105619 374633638 546775041 383365690 692253560 732860651 834146627 762077745 977024668 567712183 731690567 209705951 671276185 846264620 906618587 451745958 730018494 451717298 717421377 148520163 316231283 552524588 801322445 870242681 898360191 849461671 951459580 746953109 913454035 894167849 902428483 871802666 941662658 843722356 878993390 986409048 993057753 340072395 439100857 567309056 673244987 4752411 773098135 767453026 972485053 703688596 928605852 978818030 998757875 14700706 899077765 262592254 417239157 731638571 793652308 135668269 268821347 710966342 901129232 742760717 769493542 511515500 878770521 743884598 812226510 511475558 982533344 644156921 971690252 893077355 945981787 369030618 712410461 205255740 314831628 2270713 843763731 47400977 202050813 182570655 750510386 312496871 487531701 100813998 993726290 851755225 890535208 36689005 621723454 637411127 905608247 21536019 70157774 419587094 799942388 572601514 806092503 422890074 805767442 939191024 970786993 833966007 918324280 405675607 917591616 407651078 993819204 657629286 675381054 782990108 808811406 489060861 624235266 373189168 703912134 356856785 357812684 496515668 640372374 955839929 986865700 3605963 182330154 584517862 966654940 639315754 957046229 712074765 836587798 15618436 528762409 908283560 990670685 165220695 397831512 44098638 920996746 873144070 945393749 175837343 354731070 936253287 950057498 239613551 428396928 150724592 818251681 335145259 578750848 329423945 973805912 290421082 848821617 728983038 892938421 352832508 738298687 793373536 925008025 866087216 974516652 855133953 936855579 950797569 997386322 710406329 952651220 731618253 807092933 18329102 73797165 86644700 314237889 313441342 567426877 868787718 925252777 173255428 863468481 503660207 728563896 430256635 575929171 127757372 415617923 615729880 782957615 385892219 578220626 880711504 956580978 65310301 122063342 260767001 449057129 69499773 871133509 646195708 881450487 82619237 520027008 727941665 860053015 695253932 853647441 200248439 558909768 938571465 965884783 230357626 639523673 900059309 901492513 745947553 925141066 269551006 359647699 540681123 803059914 914464851 987756959 507687990 741840950 791918570 995648469 110718792 670015481 502871424 831369323 298033635 477096150 739469795 810761536 908906790 936215643 129841684 395441530 422125035 771526892 460130149 758495083 529441723 633692110 58239093 814748172 709937276 916771621 456870052 553068176 681980445 815638908 388332364 683316879 710690401 776585727 673962761 696520391 402116731 767887513 724823256 955022910 948124545 986781482 858013379 877100631 819357517 845970877 999435049 999926925 72761050 412779286 26918711 692666235 715284762 992322818 540326038 867363329 972605464 978577466 217205293 762864748 713396234 867986292 12979718 695995849 283913442 571591887 805507053 920997747 56962421 606075396 697998320 738146279 16587692 567981562 733373906 939371395 656299634 879062959 149475265 904227287 401983426 548372256 399342887 955727759 798487637 949062151 226467557 752381679 71444087 157300540 854770116 920520972 503562873 526194298 316696224 971504234 345414860 915988301 575257261 592236927 987085106 996590155 609902853 863247399 364946185 558357315 797761327 847283198 887629971 914911215 978516367 985903550 441695119 576894923 334092294 367999102 633258697 895849280 877305923 979201673 151743751 873018508 139189095 382823200 783267923 864578936 260553940 580230510 284676714 807620936 140766723 361877603 379077993 933394140 448918732 918183827 179970069 300964935 404550129 950132126 730733790 928706378 803825556 859392628 362554324 366410451 63991309 522604460 713423216 769885019 244694462 631367056 643717592 870024288 935399454 971767381 898838695 962808972 343711038 882349036 468770022 769872073 358979332 979068296 374323997 443406874 543040761 936704831 362759609 851086701 764815846 992229815 489472387 546256058 644321705 809921936 341731616 758780725 47648528 54250689 514275454 561472343 184210418 899184483 338427074 941533348 620939434 925884620 887115955 995127230 877022527 915613391 866550079 976963397 543507389 981852079 845089208 908029350 365945726 872859057 370710492 449117678 369680047 528399470 554958891 905193701 778349800 862023708 245459833 541815330 905093186 997821416 172981490 903894658 552944290 617194365 281199227 778526238 748522295 760255026 120680846 356909118 305264511 720999334 802394613 892427040 450124727 770370115 640519868 788680681 95822260 320158987 484336668 999988658 803971998 984244833 949344665 963150243 644771344 943518800 861638371 924577910 373215686 878740817 726854681 902352275 955827514 993011108 329826131 500489786 640335353 712447992 424073281 803383068 591052316 737821362 489870216 610468509 660159999 684359681 907623049 940872958 405212266 695449115 427805137 773301210 808638476 945862403 778681105 811103299 916245160 933276508 718313859 850388909 13004117 808130791 763249569 815472951 581335699 953792455 366102363 508976318 783824545 956750364 776811453 913498059 889844383 890976387 295271653 522077785 959839837 995411621 115108863 550895327 699898394 969045331 77327985 148091427 227336021 888460106 309034728 375812763 180612925 239661399 325285882 959579491 525304943 911717069 352034832 371105283 747136009 921023918 516158872 949427037 807802855 982421361 259672261 513663824 716925582 769505492 720314921 740133478 668562619 698030171 849638476 913012788 654435920 815603720 757943433 932444403 715412041 862747293 462982797 562448371 26388915 980977665 432697832 995490518 953368371 959865240 64764380 346089940 378785071 481039135 884304566 899933371 207245544 804203367 607237415 896734247 965651841 999772017 901959466 910792930 86845365 301623453 193577250 460653144 514906532 863560093 148819261 787656701 43443475 895716745 893331710 990611661 618495241 698883620 375324595 447481389 33665602 61456417 844523321 977389742 998588442 999829767 259861018 970567449 603042491 665745905 43516064 899030240 187745823 717144834 406124602 586419792 543572739 605141770 877315230 886265643 582328655 717280985 25163106 467155596 958075996 983809270 377011027 897564045 789751919 949882824 777557685 867291587 728995150 884728133 269153852 878041613 111185007 888291086 40607497 216991670 5141050 983120825 297387962 607505807 699909594 830867954 337218943 749245848 728846860 980032869 839507814 939186405 144913904 713613338 344552087 913282531 773942340 883816180 668378799 707958415 954770219 994160097 299438918 514507066 481407568 998335503 49407523 313164552 18184872 143476239 816087289 937924822 193230103 687983581 539568970 864503755 135313318 768567817 473240267 698747421 15249620 526704648 661071804 862916675 146454464 467318726 451239149 601198001 273579815 831574245 871741951 874651729 384896593 566344650 21237533 391174594 155581687 507504982 797706511 942077605 812546592 991622981 426541584 857063212 522311919 594305958 757342987 938237346 471545929 895620484 869922510 999422937 36152188 260204120 9622614 559143264 37931930 226820829 410678732 495033225 501411238 692235749 557474355 816232493 977817013 982777880 886792094 968874277 16366050 583434240 496607104 571335541 792297360 924741962 977781524 996914460 502894680 975288422 631878032 864128694 436992843 799281645 893531524 988072678 620729681 910439601 544884303 839652031 326503455 762458040 226000066 242622104 782400254 927942613 816619792 966699003 464177475 730041394 143908356 206175000 517107327 575922087 118245296 834853475 90905229 369470366 222420733 476443310 109891805 628550936 815989507 930933587 537953326 700854754 298696112 370543705 834001014 859638841 513061932 642913008 183927032 817338007 104386889 624508433 777515503 875955540 158498104 416245337 810942723 848830580 546402503 630088708 969536141 987561591 558736983 703018985 309372472 919136811 268267595 952413878 749781595 868389914 490045229 542529294 352600593 457312976 748062997 948914813 374134428 949678600 558108793 750599918 526473105 982369750 769413987 791019502 772387158 842557740 626943693 684598565 35599369 81819785 535699437 829881521 591357063 733312367 841852239 898190886 275806652 301471555 566776079 752396782 471766792 966287654 103697927 139086847 945700213 984094046 675222181 954030310 947276379 986579341 314845400 698303348 923853155 940871323 207097040 911614501 834434929 909711290 149507451 705557994 919215581 921543888 278410177 467227890 832748660 925983901 333185552 959711852 192222447 769411682 28923299 941634754 432766181 556907098 221222378 731845165 270140865 419180450 464608986 707375580 645670580 860360958 259619945 538114622 263594209 580500296 943067554 975218631 792838627 845863675 267736357 889304682 881941463 954398784 938051342 997754440 719723894 906779654 442204952 549170908 735777573 830581977 331986919 415108960 819546827 838622542 378808040 504863865 896726961 937863337 818643500 888693790 95123334 609404071 211179132 606913885 275248311 559517715 407968495 543508667 882309494 912573641 843570483 889758551 929015572 950949979 299220347 940542362 367004194 764621285 792443880 903565864 990311052 995453954 685463417 883924092 107937124 212959624 642257320 688171455 876455771 925526137 772655400 800019925 394760383 636003253 384326454 804576522 138969612 322602548 737949650 953512891 959650549 966117412 473996408 712800091 192672438 780435949 160518071 748880217 341860354 624473615 970064694 999379736 362373088 676875811 948821165 979578212 481525313 849055208 490304965 829024250 154271838 680104892 387613646 919450057 828454608 890018265 210477108 644659798 410568394 910904611 191707989 719115597 349004972 694508986 714778688 965102282 745114515 780868187 164773044 766899870 702003468 992677619 20702868 862576844 749870359 967972341 938670101 988531964 295869500 784065415 514260147 851315380 458652428 664384526 843710174 921431050 548749165 765731511 125831252 126011422 87681223 688604746 477177444 578509630 621282847 663571510 352819953 626789722 400147292 947503999 300744827 521307534 147671223 662697933 580959135 857488393 367683175 974074832 35198216 519067388 574247252 908756224 975448407 982342299 343477333 952712573 492673168 511491771 655846585 865718104 58559806 381861571 853138005 977652518 88251582 334463689 623133794 850219150 322722116 961744848 536565 186954569 250631867 933335063 482049698 908662225 925804663 946741037 768777861 775275064 197497577 363376415 487666430 969451916 814640002 966704615 789779266 876503436 396546514 695759327 457541946 619643306 451251612 595213372 171088544 801349604 740251604 952141944 292621511 643424528 367843915 576794952 284806007 291717138 637588926 710858425 859046469 941760767 251560647 580861067 823609753 943322833 22217837 558880205 500571566 592393106 567314408 952464442 560440888 685814904 206606727 704922517 497623875 847115843 454857333 747426106 917479508 987978189 551703351 747539538 84180545 444941371 322812582 977451662 468724608 628871084 674778299 974918576 424732948 818663983 479110372 860865105 858760015 910683079 631545749 715924828 49780966 653713955 311435276 606618697 532610383 712142868 731186999 999495958 764217618 984331930 107935302 705505264 133538794 975550870 701268452 750547007 196931733 886743343 319789110 658015606 875013939 877877482 460308291 920424948 417924774 500680782 785422661 839120545 183262539 602683007 253590309 429342360 282918279 697041239 318356956 448732306 698936929 999455462 840368632 955870337 380446744 575979459 222426948 319510185 86351280 922656141 145294202 867314690 110851461 705539627 797766685 809355268 712791112 874919483 163268173 341516133 830063039 983910064 471559036 496298465 953089645 961384972 734210691 946604814 437567377 828427945 571840666 735283736 941326347 999857792 659168431 890054444 964759330 978665090 650156800 876543767 861853226 899041920 761287893 776891966 676589843 711833924 795828998 947658470 383181340 763954567 719068296 870950436 33267705 369681606 969931239 987566075 731077262 807305762 737640616 797083879 70601129 183204833 105696348 828276759 240960103 695239329 243240664 659057953 831726414 915948698 895886201 912616442 763310228 837318607 666509636 897730755 341880121 395509766 391465273 975658149 780857830 989563849 994872440 999283088 123821565 363778904 606834937 912341124 477204601 513359472 725009009 740607824 943162906 961336576 308221293 944790907 470694627 913205661 87156854 454599836 73934968 611710926 895188898 965154802 890336449 916758237 715114814 875206808 540635547 868407952 81998144 341743498 717557800 972165550 155005407 356359937 588571101 978763995 684172460 934727887 722763060 740457843 688212869 827414731 912592454 983445277 465836089 750151051 308852642 858747933 45511985 670741042 39184249 469698492 750216754 947433771 198886240 354210583 642706407 817237915 923543275 944370806 665238654 709624461 858906263 900406702 907518089 983735369 363535365 646710434 451739905 886263669 669142241 995106825 34812726 813442553 815916990 951121753 30374362 599586593 111246388 210282415 358162349 573624786 161774848 627472578 455474048 574640021 261440713 886226546 388915412 768970332 979769102 992386041 520811296 560741534 58945241 381119255 308296322 362668497 829622248 958070008 229758889 943993149 684873057 969798302 704807369 915009307 757022050 776171526 568526404 742392120 790999364 880017497 911942061 938002080 644184527 813723780 832333755 921832195 356581544 409383096 770013979 807757865 875946074 943693546 240690920 768693917 107368341 547102538 13792302 348303482 316748388 460295229 14260524 522561711 861016933 940458211 955978484 971088014 576178757 815872429 135102997 225922651 97243258 886346091 699256588 879410299 99447037 930105817 951688799 998483117 668643364 864955539 84539032 694279424 694047415 870668270 364020186 605415489 307512663 736888413 81814055 864976908 27681787 985471337 451986017 922508477 861649664 890686444 63017610 766048106 970852009 995968178 599320919 720235394 983768534 999363070 601609077 683425173 286799653 706368439 131934928 658719886 700332963 742964238 992087311 995272106 306407972 666626248 197842165 434282823 876807723 907609337 997378310 998765725 232314567 330588569 307954031 546968295 510438916 801916855 148515259 929287889 965916924 993281481 397346456 826213932 591085254 921596988 483364721 671126107 492092547 800764660 130865467 396340408 615489364 671148088 541952497 543465648 891715600 908461538 434033175 942556371 290943179 885161146 109687891 771792528 577128128 579908150 924215022 979305408 279554224 993939386 38884049 909553098 47865251 600168456 30366485 713770064 569329222 774438823 649908296 735877666 623021031 735919066 754039547 898653277 769078078 956833846 953012112 998287671 363373418 565573457 881550569 915503218 737648172 954535403 584589430 746023563 207364145 626484458 998343522 999829911 894497857 950472588 495036192 527116438 260382791 308366181 31459130 764053081 140492304 475318957 81864498 210910989 927956666 995746289 262740845 798987377 218182950 683136632 822809154 835844757 665986231 692990774 261424569 541285378 577536292 983010306 731665408 937087324 448348524 530287746 291628120 932269405 365158308 772954357 141831610 848871973 426990316 521160433 263158810 726876065 532933636 627459786 910088504 993411388 174811806 488410319 685250335 859350245 31714292 313018563 640288067 839484633 619135860 975383237 867693676 940977310 243165004 500687741 572146311 671974839 227900016 615880373 58982188 521666652 416395109 508557309 378430537 410269990 517421156 611682023 378651647 566261523 886840725 911656135 828854061 964335846 698546699 933877615 114050959 492011148 877709330 974993083 946335347 997536102 871836789 983105123 848772709 995439913 52945219 682070951 511303932 890415976 346144965 692972141 758600105 996707616 984244740 997229557 622144657 795090632 291011785 625290493 599171083 828028514 476069035 732849299 603857296 866587249 813154510 822618668 654126277 762505286 521397638 944985589 7790514 674920621 793079021 963009390 405744289 485922638 847781129 984978525 463637751 637759968 870666070 892444677 597026579 605974500 257897894 329411748 90948440 584882732 310669870 794975678 516492813 677219120 434317371 688194459 569480611 983541009 145587584 653089207 61154667 677105049 377472836 661930162 349722758 716039762 655303208 737231354 278897400 698515601 381554707 637307233 157181715 785362992 862790132 976910646 69552171 514653523 755556868 973664710 96707652 644350257 419795805 880497691 137930070 162438206 348055660 585020787 286191905 821960184 332493716 657790422 548538198 568333458 975681262 979155706 332571797 467866500 684755909 863400988 456273564 769952265 589502676 728242487 130220797 921680665 505916465 789814843 67468194 742943639 926588593 951455158 339318171 832640453 337448691 690937157 396437210 926293651 430445007 595521275 314949969 841319598 32086355 732717584 888772437 976809974 55882080 666040464 227453747 974944625 773363512 974088243 882221422 937679424 559135315 892958850 561276154 835757839 431138666 870032257 832579724 851529911 131523182 844687614 86387097 625635935 207643265 346678168 26793333 339244507 713335536 856312271 734460935 876990773 484863682 911641750 387140107 502953748 876199247 999594132 787644991 811262192 834594826 991779450 998610866 999243951 602717491 847860372 250808030 379329919 100664401 537435733 898212825 986075277 626155976 667906596 152901130 370118175 870900339 993684207 834167995 952732745 659773106 982383233 132531636 705458596 341825397 522649736 877852167 952210563 416948855 982364319 140288089 657419242 459263032 648173705 238504793 648241859 52216275 359475814 232759289 434227591 926365279 930835885 594465991 734480284 461415553 493460915 609804950 812176785 294396433 711237002 300800099 388648242 925905062 988698850 14952004 234068415 855237009 922918268 680251166 778740576 57038721 933117664 385084587 902464614 100928283 865459043 575450636 652811123 476453377 481875262 880425989 887132668 258356527 707988563 200618267 761035499 640429483 992369498 835453678 873595042 87535745 720068166 175256146 239010127 36450100 391402668 261912717 477830989 513879824 742469917 94411307 508423995 71199723 245539945 379952927 455600754 385609273 533455876 104533520 806303956 186143350 920500835 453681532 688936273 752184671 798694569 238885270 439447059 465248186 596338409 789302961 871617985 878831803 970265977 90792643 351181589 88657542 227828041 843061486 976118078 162476982 253439199 135837834 539223631 347318607 526785637 546187933 619570158 147442391 194364363 63983764 248778262 709536866 860541856 830422803 905318058 627477963 996818327 465816368 606234709 591874931 924222683 427689545 727520289 799633961 947134390 514987482 555989947 973617821 981693834 69295290 796669509 199493997 930305476 685998699 859332036 89362441 845067266 277382083 736636025 977221087 982242888 722202552 985899196 430534328 568297185 495797121 625140161 783473856 973377868 363593522 762556986 681589021 761163810 958999992 959226679 717848593 802176743 887388316 988280621 688874907 791407797 524788040 846195301 85437787 647470865 105235485 144367696 252254504 408277047 478293814 481233736 321404484 734238582 674402642 687232843 837314136 911086285 774167888 958393845 801531440 952259654 743641322 888327095 861469577 871057251 563723164 900982442 204750225 432874495 96030236 791585903 516766904 859552920 510257428 855898310 462727921 537360593 570270932 571176841 540312998 606363803 715678375 992931970 745431623 940258904 917307446 927253574 252740778 293083224 379494720 592733574 431194689 683835446 861331109 871650729 127039130 879446014 181107991 342472202 230289494 634959257 565185185 824582406 547443393 896990467 627383541 679120450 67162493 980683475 131691505 496838655 709785372 713921236 113036000 174017653 860467262 942868497 258154933 431358164 439293488 618810783 214412859 983406811 703035706 967661702 31215274 664954455 738170919 862767119 3910732 760774930 811435040 846492052 916890396 943710073 606318019 693319459 888574796 906547840 683527321 761946946 227245852 753028935 645195132 877332890 128750249 947298008 924815702 986601161 202111293 577234557 563068101 800236673 700035894 796372067 571741454 784704411 854997964 936254937 424193292 470096450 482967092 511344182 72925421 690864470 429517678 807951017 547190145 838009397 530878376 673588201 476713500 814379275 655936454 936984355 441959723 607137555 212048199 888652618 91360560 559153464 929375380 939961824 23788160 352225658 864357220 975022304 40237726 785512560 331944848 348218460 626918882 922559674 126129838 204193104 937631462 953228513 788759737 860152204 323976597 430855235 829743460 872324691 477167866 684911290 869974792 909416592 337691249 846839482 818934787 853328878 122518082 375613013 520378696 966595045 374721314 784945016 21535132 257044891 347468225 845799339 300839063 533604669 495924848 819703723 877852256 956281163 555679940 993811589 489034417 641557949 250041431 537376169 566338451 652096429 136740159 819612019 868414123 910636454 256886557 674756592 345815833 460917822 519829893 683549299 103410101 224981537 754302966 979371848 9962346 226783782 507251380 956670717 68133672 346062393 122686789 927438486 482872354 497930619 307646472 690196286 877364725 919118213 604561132 796631941 405007692 436265502 765691769 985048136 730340771 738097180 566750520 934578440 253738496 754429708 197763097 858808458 219587122 795815814 222642130 428448960 685592150 838754301 767939671 964101913 408167927 452271204 503115779 952602678 738650873 958536176 569719124 913294222 435635884 521184543 805730719 891821905 579519566 620101295 480794600 695200457 489207563 550942295 819007115 865667421 413946557 968561826 495572000 817688938 98643213 149153743 295717201 931154043 352419790 568014025 416795707 713014915 843950246 914722684 764799081 940984166 501542417 779044006 926676283 962276443 988331961 994378110 626462425 819855519 345535278 572143041 730597105 867554997 728902618 913853897 52848252 425017022 216819605 306094582 172721004 473759593 469432640 594499615 610036846 931819545 431066593 822798693 133736099 334554126 406379286 440893244 985962689 992864636 279169655 298890614 118384455 330872933 699813288 939976343 130120682 145300851 397604762 428424530 881375490 885135321 774871099 814894869 475919968 688854416 280017242 348962745 711713365 713254343 623214155 743882860 55851346 434899596 429790699 744654562 885130429 897176547 741145873 959537010 407186684 809413290 715400073 819165144 974510655 993733034 363964491 632397045 474202140 827920022 605982532 794157839 89590553 958842345 868434059 922851088 333577219 738146065 823428552 943023316 988898991 999494122 925477137 934442752 968294168 971488301 615006759 812276926 416340490 623017349 285227685 634651843 974269780 977698507 173865967 655030783 671430999 969736602 468560781 822911586 223443859 448470857 366693142 811113848 16703714 652922650 638406779 830121417 379449387 957000539 537592112 867550848 400426473 485800396 386549880 733742635 551497506 667179202 60103248 477923953 202219751 223625658 661112502 963470952 835298562 964716121 666849416 722978519 447536081 453613020 96937065 517005507 285824617 576247265 804798447 804854742 528435111 679595433 896361319 917975003 52898732 998224819 469802343 746428087 412062016 783167458 596345435 793480578 491401718 667881084 162052419 943595969 196946402 651633895 381979366 937414920 934953117 974377052 867481219 940559842 978283544 988515784 753054280 829392743 141361127 314895055 653335966 844084341 155872207 435873388 573482322 898407489 202685885 963950195 239593344 504311877 88955915 740175651 692890573 705161204 334279444 418738862 947557878 959672532 208310510 300195088 910640519 947387925 204265467 561866800 821803354 875967979 268254705 536146969 52105409 405651129 750769571 963520145 961684553 992993157 727155685 812933696 558868464 918168237 608914011 652446836 900788173 901734158 481192408 820677904 552826513 956201533 351953837 568735122 562581933 899182853 448032833 866023346 530020112 807212261 103588440 161298598 724413247 746783560 540532802 704843143 284722525 427362522 642901343 663618331 779228145 916186470 840383852 968855720 10135163 780849297 812882791 906920097 182865101 233838347 839815729 866919901 887710017 952974049 145024287 412870438 411306786 466034879 353304464 970210992 644086308 656109061 427865149 617823302 850289022 921638645 621203047 775668108 114861344 209754918 235013048 257929932 971990468 981539304 916170637 977513797 500131723 530039813 196008372 987713483 518072859 773999037 836524210 895401750 1581297 346571236 117654626 753484260 111412698 122787693 233636918 553565804 764027059 779933785 502056901 988413148 702188919 803631105 310763928 753177306 444632577 654850039 272780857 522093954 642154651 750347862 736053552 956387662 181229828 322763742 11026779 64165043 500896312 830310640 742481070 769190868 525840744 779275934 354526972 431443143 755048506 769688781 155827442 829136337 914039586 926220781 764710998 918671830 775971195 922143915 725982010 851427279 657278228 963090908 525909953 851883074 227355587 895895393 282429588 533609404 32030632 966789703 522396178 715667393 730926788 772521730 291172372 635136260 786701982 885244178 192647328 785795372 717483417 801632636 817497855 904760277 364237101 904927995 457272974 573617127 703291761 997001323 248229413 656109402 184525256 737927167 449979665 555160600 133917835 851941239 931688101 992901071 578212069 809751826 642817556 718130374 228179274 615097796 967505755 985062580 617487305 713491507 986025868 997252040 652245740 820991044 800440363 895598323 596991782 941501275 79386617 213139354 14000511 422571448 903753199 965247326 753186832 904728039 752709846 965877253 438483300 740629761 882609012 990707952 606080853 626566280 838958437 942259271 201107032 683671134 760985896 925359160 252321523 509390716 608029724 671401166 113697594 237961036 685966600 800521403 919312653 929280271 665431455 781717345 155629730 343354405 863948798 898684635 319052029 346360696 255676917 860348069 874163169 896816932 543869996 958802072 566504051 846266891 95704745 322102887 31774861 33703142 200777326 563284508 921236484 979358054 10961088 651027413 989535454 997309686 392733883 924826030 147044813 414587810 971109990 973252604 904085315 919754810 861364914 917398109 335853615 729636758 816563330 968219173 803037041 980539312 909930908 911840414 360152067 555812952 173550745 298432185 319769707 855752641 813241056 954942759 116688289 772725348 678303224 800499770 417625816 595784375 995298505 996984991 29705910 415730278 854122797 990394894 427124629 973440773 895067326 907764591 215136987 303464313 42389478 222931604 550066342 739399768 89608083 730436991 3467056 872362512 883377206 924300051 732443508 796777561 860198752 907877939 421637602 954090698 67460686 509114263 126418568 797747081 756059845 902074103 550395686 868900796 870325428 873995444 325972505 480550908 90904059 679608395 838561243 870462362 142860577 193622770 59347382 187431208 310756359 940109143 9182362 269213106 321977878 439016603 543708702 889746099 53437816 522103629 309767346 435186647 755449398 825971556 151451430 639879045 609684684 704362874 284812527 496586324 832457862 836561264 967500729 978067774 173516346 531980960 535137508 810807060 413108321 889276577 126680565 916870862 872254174 888509491 935629891 938154016 492532857 987009015 575932437 799363337 484766882 971074997 318386918 494912128 210239621 604994424 539783380 642681983 903660217 946413164 779119805 871124042 61827259 155563765 593608876 610850305 181561658 274049917 548517719 772204434 906131856 930663719 120539974 697369590 626461698 801006256 805227038 950030404 318485617 695584283 178597616 508952984 430241897 679391633 128986620 724597155 283854842 643326157 455398632 882535437 990897632 996227370 12266754 583559942 341613433 403388562 760411381 851799252 842637068 934217972 787168978 846619297 647508346 801087268 736818767 959495553 389321253 840999484 64537952 641969676 439300149 935053267 369981222 582868075 244436419 794668478 524435539 743524697 601551874 891608934 290418770 314393333 38357789 163207665 439523757 576435790 560719205 808265119 347212889 538886379 646056889 753391184 727688999 791004941 617498303 840862418 497408344 561288491 550044654 989829008 839315588 997382219 88623869 595417252 581323614 605706428 481186212 633285273 770798877 990367635 500646380 653385005 507606378 867044799 546938739 786828648 578314250 605772032 589880584 865256578 26726164 905086164 460052039 570390287 786905261 947671330 589355176 916791510 733866675 875401847 430670532 995110822 84107975 571659760 880680876 923906440 234595399 709599169 387475623 602665000 841798829 960807438 660814367 801099856 372733012 844782337 211107368 729353400 197452572 685325852 364770594 392939587 414784541 801704452 216109592 280287594 84840279 643899087 982426987 999667410 568177823 956795637 723638104 749639825 367650196 442458425 64114561 473824762 663054831 826573073 892080967 966599005 634418148 645980825 605073973 817139003 191591829 338667815 35126049 566704476 869160983 924146489 769776185 919576140 320120139 520599037 603022267 633065661 174004407 219756111 716030514 890086181 108112578 443630394 688504813 698814366 798466975 922294982 459849059 976792327 233535095 350358383 600375503 756744244 797976824 920397615 861995029 953672147 148761183 453927740 360462796 717610789 824401799 976633692 9968819 849188055 122672971 467207146 27482096 357093774 211857415 698821001 696657171 953046394 593107406 955891797 87896978 993394521 887651913 955807503 322310664 563980995 92094700 175762692 100611586 566644321 422001326 549291110 822794832 842781803 587386348 727749266 76681094 507696396 917736860 927175553 633680091 774404030 204676038 398359213 536430931 929705532 722721295 990759721 376464430 756658781 679202050 741945914 754365350 967327532 579644384 634338522 752269095 852891240 292473428 458633451 681194296 931377379 610823179 650442514 909092474 923445989 61591263 199542023 598121458 864503839 865709728 934407181 298052708 799935697 43643314 896481902 109781097 420680430 523953509 849399293 920928695 975850852 318621110 453136201 180938023 643151081 693166317 857754448 770979401 927341234 80468529 198192073 412759576 724382981 456455977 892807970 389726870 828486887 684260297 686741960 733393644 976150260 958106377 959172132 482265387 615976162 493500572 916496159 856619152 959114276 210673912 689320101 382204515 671872684 655133874 763610008 944352087 955011595 570795761 770093370 446380016 557567247 593048258 694753777 622521462 715255226 916421701 999384556 251673948 915076063 237097279 989055995 700146162 907171501 23772279 161330780 135325285 438675968 321741403 979774139 910129812 943731810 315456185 827767364 617195300 668475775 460483611 723702833 965826039 976683387 756036327 982455567 640246868 862583417 748540414 765535271 810821698 948356691 313568696 877813150 677844361 754314972 696877847 760397458 6297575 591342203 254225920 367376745 612172862 815775193 926312763 956370355 668593319 886405567 852958143 926435109 75738723 478654978 386033166 613948500 846979496 914652960 84489664 648906130 167334378 678595918 246971466 691582685 962189229 978890585 88643288 558075108 617485889 896763714 237229883 371393655 628052375 777772137 615811477 792083332 65166267 812882578 283706392 816004865 789430646 882585458 187642360 343900384 46466863 100045861 197474529 493936145 60350652 523444000 134176750 674016341 946137360 979362267 691218298 725512595 559334421 629458139 72313886 304000337 602030213 998829391 278244204 829691337 560994654 723706547 30412599 165425742 418389521 483249534 218201436 373992462 718147311 937346328 742894098 947956441 637800195 697697218 370983225 748362749 360216388 856930420 112507610 809477575 293582923 984158713 4472099 225818710 921824834 966771366 560961900 690012378 206222909 685270345 76596918 560772306 858862045 991249469 650974162 909770173 791011920 977837118 310892463 568447939 669168522 891515386 883388356 989011393 48140010 753863760 976395840 983286705 595500928 981756619 668821042 741009462 301518784 362708417 75589425 571668878 934622783 950278639 894909054 903299377 608128849 633811487 589491454 869953928 693589305 911133667 906553297 940143337 754392298 818024404 381761625 670908353 333357238 355978572 877311010 923404055 114415323 860317281 356777006 844671520 930644966 960828983 135095898 300430471 626682946 893699673 459406222 605146329 365309814 392249648 298846054 309401308 903683315 974865630 591357501 752247718 44706077 636323736 726717145 925528046 168065756 979304852 293252452 371487212 821191697 979772608 200996737 529529506 346367839 449844762 792211448 995935044 236127714 677331839 439759793 643385377 492362879 748415732 437189715 675381891 918938840 961829341 702144888 809700124 320781150 420220421 320671801 803146446 369169469 577272398 854160942 881366763 36924438 768473412 880470998 923288052 929991316 951800284 396176577 952433534 273880283 521369427 578395000 805617172 702807942 902887737 158536130 823346477 630455126 674280942 360399291 761868497 82571359 193165548 67334141 577155928 257681154 516478718 431265524 579179482 185930856 426484364 24477788 408520734 676526824 916818772 70841694 767639370 601251405 840482193 2275538 904005737 167635223 630091038 374003512 503804026 727106645 905257257 842234680 972780324 256776509 692811888 728268508 814039580 820363976 908337942 151116390 187471379 713459360 727032064 851274547 996182447 697457572 838730883 803255570 830918627 539278539 611643270 264746076 829348111 322950550 363255130 604193351 909225706 318528101 542229817 571985319 854671252 566430295 863244729 503470401 873253482 315681807 642827381 41223914 566937907 730943292 749898710 616158378 697376718 273560374 546889583 673206259 985003201 962937152 986767541 263085315 293165595 96030848 208320816 826479738 956242841 828959436 871706917 491073454 892525922 740466115 983234938 50412765 861127163 275953326 541582310 246170676 650618285 417373902 926829765 520815503 952076477 506829408 826986863 75804255 168584924 399800196 523707016 153905935 376361941 316750480 934634483 219663526 786348209 542052061 587246896 523740778 793179383 370681219 659569830 975384198 992697784 436972643 659971186 423090621 898850542 726464335 784441398 427783097 882436231 165378914 783295473 854786011 929381314 377723851 896944459 483463151 529268152 111874547 426387867 539499043 886519868 617281492 957205011 960727997 963420530 45036983 408809643 365621343 402237697 502285726 857236593 242123042 808553376 365973052 505871735 669132100 770469668 975003668 985742152 14764302 894829422 132572064 697701549 98778271 816121025 90202081 666518938 130345621 585208754 973514677 989649901 963918923 981608518 629579063 862336805 850266125 949185323 764167004 781466046 799897088 832898707 77836268 456714961 94265642 851474026 553009695 988250642 60243241 948855517 28039678 499926223 498747747 517656302 151161429 717373295 353639200 886017786 897971406 934645254 108030530 749996872 64367854 572358048 808795481 974716278 561305651 876638389 132728829 977819929 521351225 948362178 295296720 624962584 618142735 677496896 632128414 932037248 255367325 670696899 602914987 660078790 42524319 736293330 753622139 824531346 130984317 608710173 760233815 905152434 417147495 644895863 710457185 894398211 995827852 996941618 914728482 926902874 146750649 238446755 335232244 677858756 281780864 564341000 522699656 951981221 848802361 972906867 299673490 462902524 805805645 868162622 931767177 936194241 435097040 765001923 879901993 987601696 157102772 375875494 741428398 982663910 194977924 574879901 802366277 958042086 492695068 533702336 446997638 514878547 255997626 404961963 898697680 901020016 463977604 894914131 812773076 999098419 240843148 622902994 203006132 861962478 931034491 976309773 34787865 905334022 142119038 801003218 30316263 138643515 112875689 633191593 724058763 870908046 930591097 950298698 770770955 864642106 286441896 386222997 501327156 742107126 294128248 711671312 15983006 633247390 644802614 738789212 119986541 144304920 810528975 871997646 897676962 958688445 444554196 642745778 999788070 999944040 323194707 957466345 422694059 493888407 89310659 695183597 441805503 743575769 243680041 462649139 381224118 663274865 209553161 717687246 497744953 734962464 492947147 666589783 157572761 568841993 166463220 963327376 629008601 747733681 793364064 986116176 981522193 988613306 253597501 454380860 50969674 825617913 122934410 959415877 585114809 950712353 102267731 682813882 744057414 954044238 856653682 899416582 766985640 769089572 776441680 947236102 46391278 998922442 460652019 808973861 991564864 994880611 868569728 989643864 345194729 904488193 180163921 528555017 897144331 963080721 296359302 310345263 612271227 867039711 574112936 621102257 600876786 626691454 493026673 843136010 806625468 897959533 611849184 878781932 587489154 640135027 222191620 591158044 82654473 682852259 627320355 639149562 955931708 985991527 304877498 692486502 499478764 582311958 643141678 953161243 608020669 621696539 660768900 810550496 616206506 927428479 406727432 843808467 76456759 924774404 178262867 977973266 164595598 988245006 216150552 525702249 881331238 984106478 704940066 876289753 884529047 902166213 721018583 818299328 573166386 620052391 520778295 857129916 187691316 679811887 722146304 874210414 823913545 920004753 332321337 558305076 648031453 732014520 186813958 577954468 531857493 580833288 490574060 919350664 410537031 416273160 70880970 182272110 850101756 935198748 345564371 728864704 909597383 981915738 781773052 911393007 953233230 985934411 19101373 720002182 550508232 841227063 92669515 572432939 767906528 996366160 399725491 487118618 731917350 876706080 688883339 797657643 963976624 981654671 775792754 933309429 606819598 627792626 448160445 907254701 385888183 629958562 688113418 787963867 113577016 603200843 288353279 535589856 429451752 715084876 433181452 866622613 54869169 557993934 882567953 996631946 225177403 594250185 298875976 967320806 867780715 949729114 187904389 380484807 86559378 537689009 449481379 930079159 346544533 698429826 484298638 822786156 72181574 280906905 869843567 962116561 842769623 943609749 567761962 985949807 911331565 950667724 781338903 826062290 441494704 558087651 985441759 992258667 393705978 847955942 881831071 899007425 182775317 894264069 195466222 588023024 562113515 976089463 335926033 884823521 389029874 928438561 964887302 977032924 835966021 896793257 545863595 636029548 619491378 955985294 933337176 973331863 579232357 613870699 16100773 167361217 297031743 319719612 179631388 936840384 842250249 976615548 927341442 949998555 722911965 764903847 636274474 677146284 824952699 941205079 672920880 822500177 879545658 891006653 526665049 803399569 561106977 904363546 192319252 975418679 232844924 413430968 326548207 965548860 236838499 425986081 246583030 455525628 836104459 997846034 136908660 394261620 903211665 967119272 666485564 972757339 736406947 950404938 240711325 646655375 72074620 903966012 577381794 905905685 25453327 178056382 951537364 999763725 778705858 786632270 641663422 986450796 814324637 936009480 361974752 520584489 474564973 592786394 242080483 830202018 707116494 788088693 10553116 342708673 513065368 955472773 971394439 995511989 101393152 798231591 154180938 457146996 473424784 577128167 253359585 543073660 119125787 966569591 237832513 632093133 23254643 855138811 91906277 521710163 388768174 719643591 154548406 862148736 559314294 743889477 598130726 856878358 387684749 569412006 61744261 845266362 721626595 942774467 235501459 773756909 568957126 947510938 347611245 528510382 177595750 866842182 461476719 536593310 211548120 226047614 717850245 917309546 142436383 548198812 605490736 676251241 531586005 841987011 965972760 999820853 211266203 895646383 574700706 656396441 616106940 907710428 700527816 785125461 549112807 580268524 491126348 918054049 436892077 963258628 825253415 881008572 174005992 330854314 748897024 954190275 196508017 662194876 665698906 974336834 709035862 911890936 97514274 286226791 91745849 142502676 311746853 540110384 32824337 140126688 158004036 422141442 724977957 748658711 349770009 867093157 19409748 47303515 230782565 991073147 988713744 999593830 457322647 860585678 898229472 969616230 500781252 527035632 694279475 762012342 50232526 867883190 711696995 765354844 368020874 573569874 413056687 689068257 525519448 665780248 376022517 936442542 274672730 306727035 180977892 506551309 15343760 311920298 571181967 745490719 357089148 481546036 441082843 506421311 728910654 919420974 71426864 174798567 397105569 940439004 92479509 578672672 117056779 977736996 575114456 707228254 348148116 492179429 83814427 412589341 656960232 855231712 501486013 573335779 483109324 849852385 279124548 434296735 410096629 656059203 952676670 959042738 842766189 998585223 545565494 715424473 446665502 534842999 865893127 868500985 962626393 976094256 203885125 554979128 840480526 920770208 901390536 995890842 667794631 854452302 317494062 966555736 132874531 409788876 788078449 895241797 442059772 771376911 93885820 945869715 657550029 914935784 314844992 569453166 245943982 483546755 360384551 447096579 618049755 976785305 626036583 764439369 467236019 901121807 377105144 849380623 679398613 745012215 310476083 764842947 105475617 366131044 360974794 822119125 10328191 447629539 977243530 983519628 751512310 880930718 173986296 764307274 50226844 852163344 831111297 934083030 567389010 720996274 675434097 755544949 933136220 944439687 137748396 451481650 221370366 918491556 99553417 981171467 457957289 891873543 849196180 953937374 989593822 998932223 366896424 402222000 14458499 332071335 512495454 981465847 243172516 680419611 190513963 996244370 643116144 950305561 91953230 956158204 980293654 980886049 91958951 204762390 17993840 551483312 98334587 614524323 115073329 757055036 817128145 846098038 984699089 997199613 626152032 939521384 664885976 877429795 683878354 985004258 624777082 685312408 749572051 799628166 299540407 442916286 301803475 823177288 152596660 863330234 161852801 980665340 358326358 375679911 205835767 396810595 421062610 561037218 326436066 524863785 7330590 774232029 971939323 991420464 62658980 221104375 146573418 565598873 809853022 975466434 266548082 704146055 723132115 799987568 647042972 903615851 560829960 845045209 88576100 480538045 166376517 510933604 731926654 757324861 858566004 918625044 659609737 859861742 157156204 200316496 507124108 660183271 132589816 386964762 2055474 753963128 262963142 326282886 144767168 825211285 577117335 590939678 508256475 562914264 68416807 466298610 303547146 867377128 335187960 401938013 530239468 732639298 276963753 752209684 939952814 984635298 612503398 929150866 504149652 642596332 256851789 373223795 862625730 895664232 916639798 972279763 90357426 856271568 581242967 940993181 33247329 837323176 905299579 911665372 958962555 998136182 316493089 758865970 495622902 771711934 689172694 868341327 725467036 784186778 538480972 556645022 448089503 479794155 524531664 692127335 544977177 896377766 445650280 966179657 393271541 788782315 286776052 484993287 503030459 711933764 996130164 996626843 840835594 969963858 778679806 872964122 972234113 997347973 837646150 920926082 640879806 912006089 849283068 859740640 232796867 758428538 560743149 713100283 281833417 882619469 29094913 717834950 263764505 800565730 861917803 886205587 733890841 767018036 473536866 747604030 182358804 320978775 208960928 703273081 184414744 996189520 160699624 937888201 867552697 956584155 994764607 998804225 85648358 385163877 817304612 863043437 183142678 351637811 387177682 397204838 515763383 712719132 744863327 975470052 620833086 771221240 435854694 635455844 696330705 985753260 158351947 234838675 400788277 825017095 90376204 197888615 117676559 712983980 203187682 899512429 635671917 992668289 936682534 944640980 799044321 986861755 613828779 904692028 942601701 952901799 339097434 685812826 422882917 948615192 608112063 896407431 921604763 954320479 59050174 210452265 176423120 548970550 381508229 614763556 699485472 902883411 67508601 641632811 396347960 527969748 147093563 706234697 330672146 767084754 404043935 733145360 36317907 382943150 258843838 759348341 76626093 572507895 722995643 775385562 738299375 836941408 87887839 627043664 762590814 844908471 804790031 863115619 802520681 876701670 563613371 927538490 556686702 763367518 753949645 988212655 369946690 443649900 900889746 962943559 189570974 327834831 194792327 497772983 187001219 460632929 397199596 843393846 45074826 841279417 850545289 945225995 192488258 390249187 438589514 576407509 461626271 837557572 580280563 896268346 617904215 982725665 854030408 899429981 312063674 519569984 950521196 966117276 283064111 720460486 65408880 671363351 346167374 580292220 637364743 849742203 406470539 800456618 294769009 946754681 815543991 966258420 845372503 974764694 921465467 941783657 314094414 692923940 637961977 884016664 280324953 617263115 549798995 926619688 415683143 693546934 890560409 995162028 319654373 509031047 208080654 966373816 619032383 679622932 335946638 606718735 472198383 520060751 779125351 893797856 419259988 553383385 484158690 679248406 224825597 802189596 161782743 994193572 731169569 943052070 222271916 405027764 465288289 792531133 699332333 820939185 796984230 968485338 655204671 781644750 332388551 745190588 337003022 364866628 866156570 979343576 323637524 862945019 94233502 995455649 527121976 889755329 133383623 152125133 208227810 777115127 915298366 918426028 708937150 753119407 968100438 982216902 610374379 629654378 534795960 583283412 244978088 278728659 25522034 900456731 214469053 229121576 70277919 574862522 815962336 948996277 654346858 728465515 673712194 933926697 50148852 144982747 531102650 696703142 88319561 457387745 717777519 989604678 419045399 977466300 519053423 807952722 395010633 603148165 142803947 616055891 609742745 970104899 998329652 999164741 186123584 711796580 696300248 870388411 26883630 945519388 384059423 885437533 226715425 603118333 486810625 774413246 117369040 432231761 487658483 756738035 130153283 967301405 13076387 431546254 166854779 653932626 328301447 563859229 667384827 715868682 62654124 869870462 440377413 917644109 369340941 462904509 950900991 962541122 722315439 764168349 25726689 275186735 856582710 874921277 868877603 960275947 286568567 499433136 937780777 987318971 727479101 929245208 379572979 742962441 913880171 926668453 938126553 988420495 520519003 605533052 904503972 977136144 825721421 891599595 588028794 819503881 791232452 954582471 507735961 550688903 972469045 996479793 964521027 986816093 853384455 863922938 892789772 949520338 176569463 778443904 323525275 409789522 611104901 876077479 938325887 948792513 600967897 615953504 868821091 915715917 955623451 959778038 177787385 289077634 828043975 864593196 754954667 774986768 170714826 930951809 436918348 650515596 744927652 821917482 616984280 671276669 967007249 986409523 807824346 922150653 733274114 745248021 508476695 694500154 364258519 525416349 177934789 702769940 173317615 897869591 856399444 936560922 146586315 400113640 723378529 732920765 59996995 444101277 924494668 993654859 537955865 740810077 250656277 708447341 613832600 951465315 977822902 978418180 893942434 908456388 129970048 852267560 107815368 306266009 213486705 624004336 635861838 747698109 951166486 978192919 572394082 609512757 336149584 598885115 487261770 759534408 808441444 925673086 832699352 989864041 7570237 61321913 490768399 798327876 284777318 924415960 398664890 650721611 304245603 412177659 386341402 935601592 742221955 932210396 251085034 869405993 503019617 716774616 385189279 891461091 165727599 628582757 801982518 812560835 187188231 597112800 32888321 333687587 833910849 976159372 663075276 709715036 108668836 968516221 963981399 986372014 162682287 963768410 749930726 958411589 614287058 845670910 944664926 948972421 525882103 968304978 84921821 164420237 598169688 707770222 34654147 84163113 829258656 985200710 618146441 912942947 693136006 730346532 677679543 883575211 276154543 818470867 31535602 239098650 779359344 805091940 273216131 556575460 28383451 819810081 667640630 954675480 766697922 789656368 155194847 373740168 607643850 614747804 426057815 536335870 245148794 520548023 647278069 922501914 712290227 714964594 448049865 894317284 63552976 419689811 542944655 827333924 183243072 443504660 489599784 864734624 313666463 968850471 468100397 876066472 994034305 994974214 305226605 533901552 312582221 913120153 736833788 947358308 150522298 972661786 255783247 438841984 564557310 707668762 881294208 889552847 837313616 904737116 353371170 844927981 364191912 853653993 554661440 591811955 385616160 951987063 169216351 394744132 83832150 324601442 560182962 645042853 306150408 700721424 58126240 71021658 194910808 483792113 15199774 864008424 949214952 969866908 661646736 747573570 245297543 988948728 455230416 677621556 634950363 637393604 581261635 798073745 52277699 502765333 164881549 987745047 237321902 727517292 476828836 512095160 882434935 940401990 346278617 406487617 730252221 910090670 268141775 317180554 581417631 853582498 570501027 627233459 260137323 565088385 162099539 944914257 647288433 981949174 807801171 916738923 489979012 866717120 101567984 594646642 777809654 862198694 626846326 857678841 679128627 765023345 428512071 864447145 875340427 973681572 637597025 911043690 782561708 952895034 504808309 865499529 371798938 610197099 57012079 299380877 505614538 766760934 184563416 554496268 864119200 918351409 587892008 806379268 837846001 976495291 186857845 742774121 291109203 415943569 726897753 943946825 333428031 437882317 317057864 372759523 118219960 441116487 934542314 957693386 374923267 919816868 602623971 747072704 226551146 627351567 895004106 961288299 971668559 990172499 991397762 994144323 286790053 775321969 23054195 195929748 19022132 885647416 185931086 408975996 516060539 642556937 774856385 928558803 940866885 960850755 468910572 681036713 237095621 507396522 866796149 904736121 36366051 186754417 638214440 813836331 130673214 240877753 751458853 839740674 906994450 998715414 747313772 912281651 675880767 987131355 834829276 946009303 818925264 928849519 355152615 726527316 816928656 921963759 494794292 790957826 198849532 413980601 850072156 940040465 341035859 435077970 25600183 161799000 3602093 321435097 40753287 296608821 558423601 906876461 352219721 705150933 624433301 786475299 879634566 911537018 985130673 985556079 776660406 890037627 647733467 753389444 506571126 566336953 811113772 900642158 869963887 928157901 649132329 895931924 752283129 795722872 25392918 579855775 480826501 788229084 492900611 760522107 115607046 782507122 364869757 514778087 973538919 983273037 408863531 624154684 776404356 877200542 104245402 659929609 325472140 494196040 127545410 406551113 400559412 996556514 964864502 997188410 240385500 936638888 205934095 300620350 855634979 912091836 832721452 848342353 804312757 909182650 636206241 949898669 566627096 688693003 766491922 826752223 529390872 834362455 725678923 778518905 317496617 357481025 369277708 425857526 687910406 979184964 617067756 905177462 290470880 439582009 532414727 568040694 946856890 969019788 270269692 872973530 228453076 341077414 32141381 68885071 504376362 796800292 520967562 611410128 492747668 811698052 736127011 751629324 432211586 447765182 659502218 665551072 898668595 909725439 759147341 891218075 309425236 542289899 450030938 898851796 924723093 967558008 246327244 972665218 283487809 576436979 240980688 700622941 672371719 905757568 577083751 805394068 134612295 199547470 248435495 783111743 605270196 828670816 148980300 970957793 122479218 143612444 737616060 741350442 606039894 776910582 330940970 813500432 921825335 945886263 111486048 948940441 412910336 471433792 48958371 474050216 912433197 976039372 33498705 893427984 324232416 640941570 614889491 748837269 467066639 892688108 571740000 825309537 994502004 999466848 760391033 876228871 766594300 855410451 73412131 961751583 74796203 534938371 205927160 790488803 854597469 893676611 107833 956027019 882270436 991060712 90636130 216449667 963565935 973804872 447821616 596217510 170980849 617110672 797230282 985079467 221995277 505139597 972721715 993361284 537124715 955285353 260568639 688779239 61716323 99291336 684506825 764331741 279677314 324770286 289126938 606435887 184675869 408632354 549145518 734364665 772426672 896803083 623514140 688301679 387535365 777008826 903663963 954268236 646677473 985408575 505647728 591365759 93064705 886218651 18459287 73888272 97988201 647958410 276563572 532470332 637248430 792550872 367567023 403432983 399561311 732816837 597558869 920930635 877745338 984459151 168056613 578550852 134062652 157279306 951954591 970666088 346353084 727645368 842444024 895533005 323546116 441427858 28550337 666180141 113150801 653532631 111291424 135505811 367170681 619802247 717279914 819469994 85967101 391137016 388453288 626745266 603612670 973493859 649199295 913718804 436545876 548138947 961705205 994186718 453444780 915145681 75750126 466325056 595845402 938127285 495552954 501863080 625413960 924275237 485228720 592182013 530995687 965138502 208937925 652220724 520004252 956377910 654323966 945994022 139497142 965395239 174882261 733841548 707417044 851088602 27481793 233552451 183427008 536168793 360889149 973978504 627150737 633443298 361586799 945913251 62966721 360724967 513768679 594540296 435564599 752180557 105573045 208475057 827723225 903973925 67227558 84669060 961380906 981158420 118808076 898561066 566464644 799339022 103424729 316198031 611048895 708709540 364333214 641217915 821128232 950567079 119243847 895076598 176882368 288265759 797549378 845987929 688883509 724882708 172810463 863846423 703303921 799837345 784016651 809314970 931668195 948162122 146041498 160162614 885916161 909887721 719428266 938027896 478703540 851165046 111407309 967628105 823080741 830930560 154017250 515893031 656170381 735658831 545620033 879581512 163743052 322754594 646534787 806210608 462438156 625272433 410449836 413828600 730994890 845102467 483161303 660322906 765439594 997728006 72504676 529076109 853004228 898765337 682163508 913133073 879179092 982395028 963590861 983144204 711560760 908505369 76683719 839147209 889811756 934273778 834759225 989566849 219989365 309751877 784706218 959103344 6697535 189939180 392346305 559363099 184979285 516571927 71631715 961444517 243878068 307092464 787561929 894769901 256000916 974115436 760804244 966102438 654659145 774743015 163517880 829320067 184070835 817473356 75374544 156190350 300640547 346274349 201591346 468195845 602514249 951919565 568074248 796505601 889744989 926518226 366165232 465669999 428438849 557854206 600640221 889524361 780543551 964518657 461434394 575385472 168938421 696110718 152625159 920247904 888808900 949865374 978201206 989938457 206123974 836416999 909360344 948817224 369113155 602824261 872846667 908706341 693444339 699627220 269100543 711961587 470306750 897636505 522038913 795754810 689326741 864948727 848966160 880102023 835242446 866025722 133555108 542316140 742542488 803347375 773645727 956810763 868011666 950810437 763582745 918337226 933708399 975757504 9552512 855576025 214099060 536315379 189228737 379424967 40189907 454652061 302233100 878448936 691967105 817767777 586045650 856642619 382717 74210459 484282524 776742067 374195659 825364409 200670896 862651327 447240548 844472612 457767232 812322764 936635130 949195908 999571271 999606579 131690523 419381157 577453295 996077545 260042087 887875935 826010265 932568406 309672735 943477630 947691168 956691511 29318008 189798073 322926219 853375985 852697959 980814428 335722842 426076283 671381877 744479839 283224412 572118237 916576585 935259917 397626200 502446023 754405881 861856466 293514292 999494571 123645778 682854017 873654624 898643747 130575624 680015619 949609181 951144737 569858918 802803715 260373398 392184986 501999093 820982278 135749042 258476551 271130572 885306575 906050401 974805560 628233549 944143780 230456307 463271522 640989354 755646683 759753778 798428930 124064650 659648471 304201181 587265164 625474856 971533086 87482611 694422042 187284765 489538426 983832391 990894521 822527977 970850547 896808641 906566149 510206191 733098768 329865823 971333860 140964166 306070635 397402515 700076956 937157260 969060872 797517684 944819605 522452770 962954126 927223396 996900300 669862506 784883031 139174611 885608871 513565633 892051444 786194451 956962674 46804088 385824647 72859194 610256018 474501083 511446276 91061762 348985365 614101890 827605389 847890174 964057102 988489560 992676327 723617497 786906027 173282602 287552453 708772102 873340408 976824814 989985811 197491347 960411696 240184667 819452479 939020896 945490083 64988562 262601317 521993182 828825977 18318545 760094781 560665612 886431996 591095201 690533511 433349767 578720194 736382617 740643320 48190028 261337962 798215620 939187238 805205801 899852611 97207475 856180751 774652544 990006116 103024748 299373211 301905033 823536817 641500691 994826142 664435441 944486901 552810348 773225072 293476566 466317504 535581453 555006223 544784136 988186163 433022879 611340438 962927398 987507927 49411731 243604846 800086334 958191945 657833168 701957627 146966978 713452895 519995795 849321732 147679090 486655501 261885622 676841874 360092821 960900936 710995166 904168966 941113927 942333515 175202468 636363969 209003776 512070519 565020416 856893141 970101548 999440320 347099221 874128451 505908370 966615369 118587628 202156219 674703987 724327935 142513577 538956962 271693567 334023623 643205237 812206492 942409019 958047275 248354642 249088127 589930595 979985254 398778889 916579963 303746850 963624553 874854297 920180129 292054366 602041195 846129002 929549036 313509836 794814379 714137025 864017315 955322172 964374848 547238274 548893998 836483180 936558111 212074052 898850364 430440932 623865110 446836118 757664649 25053628 496757829 111350581 426736455 788082983 861691549 668314721 702006976 415461712 726643532 694296117 759849731 316152423 792229638 141830736 443072470 401939763 622425802 166455232 271212185 518504806 879457306 246442407 422971146 67009804 626379023 442322191 687448095 662498490 920924846 759755180 873307715 64320640 987035011 437713554 878660226 875028632 916940930 113828679 844363855 984985571 988205627 741882734 952222143 874796042 942460715 393613033 953576757 471404282 949604061 124141321 481700753 577555811 760738670 198292623 981883420 407760740 409263161 397347202 781683589 626165230 755689322 310703209 975255709 738765024 745112782 115603939 853335157 529592719 629347259 182869646 403284437 661402211 845402389 392717906 908466623 607233860 769188932 745800427 895039787 24353485 573356792 133740516 732367039 572335469 913168024 594530816 841146053 851530687 940355492 840675531 982125931 597783594 787887726 25692147 410070440 732636288 749692695 287057298 734423987 246216050 527992152 444224076 543603774 717728351 950011417 517633570 680795888 133188888 444582018 253780250 294062119 741973248 859140528 229895646 566419986 989451735 999994185 946510080 974195147 842453973 933212697 511744885 516560342 593164460 859897938 847396492 958366356 457610839 651718341 598696048 776666416 417910089 980078606 848415578 928365240 265105935 996297982 61638929 783981814 923280077 985769782 944346266 968561881 390937203 937533113 795141196 849661574 102688589 368022841 694193631 925251453 755094231 892398104 877376855 904764912 430878222 889078232 733857300 898295648 427304882 949725778 733917241 880027754 146656214 288804664 98014840 206106681 754046380 998974929 75502205 599445260 853532711 865167479 303072831 544484381 310274610 708431186 273268686 905186893 696174501 917179678 741384086 792478643 382241308 576541984 191477046 582178583 129301237 506911242 20537236 553788098 949458547 984894042 720017521 747687601 46803310 859702456 698752888 927756110 851096975 966451040 43043135 782191157 864553115 947316807 212571740 479696752 790683094 973575184 186982925 849674292 868835117 971796845 357076353 731801520 22117147 733033100 832989969 887307351 520018852 808009203 371207660 516596651 784487001 934639228 726221739 791109481 741698926 980402903 279239074 560614765 979510762 993094686 744622112 926892193 182425205 345493278 908849187 985734986 509549276 891425674 96168427 830541845 409723640 872746640 565721158 786609737 277974463 340517732 677038059 922576984 881457266 933678533 458179018 529041462 110933259 596819324 876390030 907435576 471934780 944775766 998927069 999547153 895700700 919288355 240641943 526287564 642182132 668326665 825780390 872889592 30511092 183429736 172185352 431714609 594124484 806241890 973714398 997386072 502630151 766240759 445442 344539423 671647662 677891870 105435231 553012133 66302000 218796370 369257549 479514181 146133133 153126659 582061602 655965944 365956758 519174307 202809231 784061200 852290872 928309813 586170654 719729305 598239146 606783821 559305069 966543583 657975825 946568482 894850584 972175426 418518652 668978730 473938310 727983315 849503133 922217221 93796362 850119118 181259609 846380905 932734123 993042573 636880694 830601056 755568149 882031394 792565485 958773357 108596569 864944544 244305197 398429139 340584692 403794327 500016597 767219110 948348822 993676451 643590485 660924164 310022265 642256378 106378994 594354031 32262274 527767075 733934979 907372212 265133510 628982256 181032684 878589300 593741577 681894124 871270599 906542213 601389842 688668083 786299842 889704640 865617630 954591312 668141922 689180988 610465315 945315632 284319317 533235759 891926161 892938407 626326380 866271113 727078898 785487341 13536518 301967200 27597007 131525606 893691357 998530611 778500540 971952702 909767307 956859479 6179269 110968942 358086906 840107909 884803497 959759373 365777468 951031791 823726754 863037969 403826734 843888358 373429707 577306209 265474425 847763988 832564717 994223660 884722542 952768711 766225354 977821255 644726309 661911470 821358952 980128446 468067079 608037227 257067929 725871820 469927544 656344443 43196452 897705144 856183900 868214745 512047484 722276956 85313900 843595325 58355224 170201185 710830067 788049589 353090535 710395749 482457392 700979737 222404196 368561551 241482234 725196254 748652166 873614892 912948448 917148835 198244392 564978778 200877415 536006190 896110912 934543587 821651836 995168555 968809501 996698440 984833616 987332926 692843174 970894094 515215068 645570556 90775090 230344169 810820312 886312404 895626473 934375301 468533065 895383401 776966836 994808497 262492433 790797472 823666376 956589320 304662376 835704768 4748689 678610721 12264195 323735446 13748337 940930157 947606254 992982002 607263283 635482172 234415367 638527506 611343087 783437258 573605228 640263099 839749428 869042166 795974808 849385786 423180765 755337153 333855348 979872860 879964307 934048771 673214270 913489585 919219330 945980623 275840842 487870528 452996072 734954972 871298403 882175650 344183900 654744089 151208274 466518655 612193540 721724344 245501073 246984254 53410129 746839870 212992778 631129026 629825971 668065775 154942311 429021807 995732301 999543949 832463382 916237044 66235334 911161729 623781966 639093044 99872796 169038956 893543858 962249930 388845402 788897713 596938180 853251414 560179238 815952560 566873145 934343827 234021445 953327811 646472369 653233439 422358764 952595068 763754646 893506951 378395616 876997499 897039309 914410666 128888998 317927186 941572018 965142254 271364996 325559052 414010175 538652333 627508287 786181221 717676864 899713128 589203362 802324096 535459584 875862078 401469529 951355060 947108907 995275707 177705858 891239545 44883004 664059723 535819523 855044117 326340654 987037289 569337723 602769198 507899164 744329575 270724588 893445055 358688004 836228717 244148005 807866674 555097134 888753863 608793808 964489072 685028168 956036931 249586508 786840450 875187326 979062882 46979243 197178313 532822981 847868320 64006498 222656678 905954072 916167996 327824372 964838452 250266475 949951181 247523998 387338644 790177654 970846144 809451068 969678643 739720652 828541024 791665048 918302903 541168913 699337526 318819675 538178940 394860726 535634629 880790342 894041235 936974683 974899213 712734605 848025262 293000298 634786030 279184497 558325476 483276479 970424259 726342116 779447858 586496924 670152937 224219248 609132339 499020017 946569145 797043999 850758063 979848524 982199263 732696354 909375937 442742847 467575435 270035615 658344942 470390566 881103865 135665397 499478678 540035280 859124149 69235400 719709992 745663567 849043707 664147793 933086978 504179029 618090738 393453349 420706584 319247971 409506514 240745228 525741845 29443688 938623754 145436932 275027791 140808786 799387705 752127638 863318518 349059804 495157370 397980202 909284728 679908119 847693581 705551712 742356260 315259401 685101349 73905377 110782302 775982876 897903474 719147391 813795580 259525261 631300433 8168488 147985690 795395345 912820854 997884752 998168194 568733917 596975602 911796644 938013711 394901190 631059964 807857583 884886067 375116869 795960852 74272432 795089380 412442963 579723410 671253957 673590748 616294257 793976483 705173777 833253040 178449373 239836208 637955380 679732425 435424000 967348532 416488825 924412974 289217618 904162510 846728305 955821672 104526072 875731420 799726586 812767600 449541628 541756451 188815720 397128610 348424693 860126426 651008361 735774342 253915123 628200570 474822164 651003268 308739723 988837607 387710164 905585840 409428030 816373695 177437504 559901591 604906487 652787613 400574535 557623453 485161779 664438543 476990398 515236933 483612538 561529816 68792752 441559623 891756924 979058258 987835514 993341835 707481771 875292154 478346579 891639648 502873387 669937442 87579582 787975695 532651816 849732361 910151499 998999871 165318720 585809656 412330936 531281061 213210204 254838941 171744386 221721794 343791076 953773292 944141270 977400713 461583611 761286399 360904196 662770917 821718435 900825646 469811483 722415309 3565712 577583124 585621533 698872876 567598893 712962296 485017081 695233744 202205011 627252929 824785357 997487895 490185956 522180610 51854965 297705806 270266058 621366212 923946588 988183925 600716436 622310311 324404107 787111692 17991980 363966263 384684700 905198764 604931142 839776274 772816006 796785604 783334348 917855308 128101047 374166566 493848760 548509930 304490103 652869651 339071564 472162214 98923842 138434927 917356278 971615269 433979361 692485788 466622430 567508648 822789642 855605015 27906387 810616517 462716884 748594438 868544776 997923446 345943535 742448033 160268006 416256070 136564979 557352708 402691245 742545221 259886677 779572819 301105787 707028802 526395572 948160812 426069711 840592344 103913093 612832085 959526759 962734305 307071056 619500553 366723038 918584231 705078365 735445266 428177027 996513412 318414360 320567323 312132919 819107238 674998562 965560416 950560611 952204190 295715689 867776112 912117471 949940540 962663482 991924183 113867226 957672539 917655275 983322462 905668877 919563173 880142514 979371108 684561493 724845522 880366909 939890149 76657317 345623633 572917749 573130978 488993168 495063746 393776361 935322611 410193600 948870241 92740939 844772607 434474818 529311564 907770971 968046850 820177154 921139035 281979292 568702805 291105803 927910941 853495019 879349581 443024380 914924413 813046020 919573069 970128682 978517173 222850307 877527631 895714353 985506628 757185251 975443049 805783461 974475881 170280060 672972737 702292885 994700234 89309181 357748110 511026442 670988595 898143153 921554209 71014471 658227096 761691820 907962955 368892610 772029618 112804242 544352007 33986712 764917029 981301179 986655699 9234594 498751833 895792535 945875156 225444757 854693872 550279603 881591047 863089005 901898999 600806198 784395959 804165021 808388450 184422113 761957115 292044342 907707997 466780861 725593446 770904113 831740549 690154256 783498164 430266158 481580555 387267292 827149059 912227415 920493360 292035714 512475747 615488757 692689865 151224609 607178826 282090635 719622231 613783480 647807467 589076907 605482924 607844683 743790176 621088398 951168974 119162483 358368555 227363660 260614653 225406176 445714529 403037324 583850121 835331242 904786368 782407510 945392779 511976014 669630968 536370510 722887351 942654785 989348803 944544244 958183633 565030492 892508124 589668163 651580805 52840927 808778347 115294682 172447869 917768787 938308877 255239325 267566264 316584355 658412177 236671237 887752650 719028325 720108917 206232693 565414388 209479321 252953058 537895123 585080144 170198778 724042567 752474566 935152531 645843031 882503354 436652133 816326150 138111071 752752105 884823792 985028923 318563286 508737954 314818181 943350711 55425426 109568697 125137084 820437193 333052811 417197410 208538800 305698275 887856639 987117790 723863276 922554724 449414145 920333524 251393737 771591536 302566432 548674246 533327323 533668490 884866163 958535435 200198975 225716252 495762238 533779529 236179815 896615233 84602839 873146004 511566855 768637985 492287038 737538864 714228076 951936703 580832650 640276693 476164089 718493000 613405842 778071837 427568897 602540760 701228059 843458081 661522379 999135470 879405986 929004434 282984780 652557786 900321952 992452482 112882044 556727472 868176144 952061108 154655276 255018024 832488852 910776488 946369646 992592687 912737989 932678941 680325408 979248770 938626998 989952420 638584093 986410071 399534998 863239636 532734588 617228637 848693110 971642755 710611696 936633382 727777623 817264892 735231072 865744987 956028711 981559150 46303108 104200360 941683097 988583777 783891641 984385490 12408069 781696024 642625012 920391353 3874505 805270215 357327518 820619020 186329139 479673423 837383332 956842000 587808056 734335616 291770079 994327460 495860537 723838282 519736329 948940598 78229460 595875550 723675446 805951100 129721568 733257209 138793789 480829747 356596695 969741814 868885934 960935940 329163864 411411284 380146709 584182361 61479439 222190110 752509980 876470021 775575531 972531007 585900191 608226257 415367350 488688559 509680520 631137979 435526110 890825799 47674983 261831642 393198059 688650933 24343452 98220132 375905126 914818849 41923986 888376096 53588806 979116082 140452799 828443191 268511156 701690450 933436470 965577985 209280243 942798692 783435538 802310774 599584213 717629349 872910967 924170346 207205987 764092040 23480331 97924882 292174218 522954375 26509068 903880849 436535072 951153092 337114156 685418490 981829532 988074094 226040472 471439673 377377773 387341990 661038387 913748390 877711585 943313563 982668316 999072419 982039090 999854285 723570343 945653327 669753196 982217906 830121878 966250752 302412135 388732285 620015591 811158364 773434684 908088942 815650296 946997660 590471400 858671474 992934761 997993879 503427688 957656969 579619170 950848570 284541793 440336431 760208153 850088815 584824631 703177192 568137222 748630041 835338914 954210059 148890610 395374875 358358087 975115611 831735395 887664378 322328850 871559899 187191596 622503940 818145413 882293725 555903929 715191531 584810415 591235071 941465934 950571843 275239677 731070202 784076586 848761278 924344039 974189653 750282303 871639844 67767079 563371946 380523668 605493610 319952540 680356303 975518807 993445557 891517588 900553951 582895448 824586984 915846131 964759366 660465836 980592863 839114202 986120189 570397594 948190208 458377735 652452108 752710798 798790297 518123750 928631905 594332793 620147712 594160237 732714106 667040636 957097850 793704687 959586839 175954350 533875007 203231963 802062474 476201151 855503772 716869159 923711179 476494293 630451003 363504031 450702952 11462393 395537043 881066260 923873993 262381663 466866005 986623616 990703528 883841645 893343404 821326039 836276135 497617286 508327000 920419753 928763049 959989103 991088928 313172575 506693783 972294749 978434040 319403293 855566096 303279952 625307375 692753124 889350954 34035817 196129944 140075439 912923642 382555699 542626064 251010020 399806071 492238912 721047114 323650118 499049506 282349040 289589182 610633454 626985447 393068855 513270168 5005445 634484265 843068559 845100272 523417858 772281425 476667989 721349024 807566839 934382365 42187944 571555737 937001873 951389116 125627281 573376342 540963187 795089321 174156236 486849311 192351898 251938776 265911788 987901860 704413849 732755525 65492502 487800739 187045691 371323464 444168525 501561028 286398419 292509650 886713561 891149701 892481923 919557224 868989484 890974070 886216873 986577503 812471928 931145451 106843389 591217995 537893589 747738600 892464913 985563533 909786880 910413588 248825907 485751836 437814628 487773510 608570086 990437689 827361974 871176080 751864480 813815868 970017815 977138256 447308910 695342282 724943926 805453220 375944895 394216004 897944095 941135534 246847050 411371636 547443687 629607229 808786990 989872889 856947305 977043784 952585398 963908000 856067297 997415642 678669019 864310820 310389303 380542872 833343755 940336400 14279886 747584849 310802164 422429178 385914431 483796463 77528484 370703073 412728928 462295192 746671031 927514859 702341787 738853706 310466665 962639563 215479490 356195155 538319644 608739834 753010029 770896344 753236236 999012992 70779078 738786502 443837296 994485522 355074480 437711059 318142226 828932409 763334244 990556044 991059727 998122153 795066391 923711588 525578864 679706588 347495047 371003414 666875720 793237609 658767343 741343133 799847119 977297813 11256554 850047657 398782840 581801608 805017969 910206151 40386562 63692053 482595252 534434466 696634185 777434077 815423413 939198309 841579115 842390149 165514358 199390441 218783919 525926031 47728697 227405920 862265664 931911325 194786696 383235795 600624806 870435455 178300789 636903551 35564281 898060598 519935865 993173787 769093033 963314826 568995019 942010380 222507664 425784226 974678865 978832009 310216730 403807263 845632151 977946314 154789313 517133837 648288519 659771126 425344410 622469626 678428684 776492428 910556354 920857647 542333918 654839592 182059878 424350017 908398567 980492320 532594849 652873899 560013861 637037229 58851557 98949027 702494650 832226969 170128195 386774841 126148432 392245291 774980783 952586420 168502856 477394025 962348507 999521097 224497378 446118566 513486814 757960515 905408017 914242258 339725506 713507870 456025721 705108073 852440976 949966529 172961119 199398327 835123397 946581374 905915693 931304450 946942639 979928547 268807387 521971544 670962408 969041582 87688123 259034357 894660732 978368814 889966523 986636006 232733161 328532292 281865841 333773317 909041599 984398011 478660793 546903329 174160959 200847341 731710338 840465980 234203481 824028115 468305381 825352187 761038264 911829819 625166021 885935038 651245300 807803285 440821307 747548315 199131974 246154773 308443809 440864027 477872230 661568435 312690027 838622703 308409173 714025124 252769289 595378324 351125113 843453602 623635108 684115835 853690436 870035477 241517584 684517852 186297620 471678694 157423344 365518275 693569842 893949628 322990135 834767433 295321549 711216170 981271283 999978936 418646230 961001041 620822941 886643156 718327695 856606274 86632873 165378376 273031140 683035926 534283367 895008375 646251821 862148419 528511722 635098234 763557105 889641119 5921264 12399187 118349998 790672777 981491437 997236701 389681640 976229805 521527747 681939020 471837327 831485402 815828461 851084441 202937218 464770347 888792890 952090320 861830307 977680840 440191646 818303612 370143167 613611985 163150751 568539315 603263510 826523369 667877925 756639873 882163133 891006860 190126592 547821886 815567498 859484132 541910209 936757664 684956268 745592431 660509979 945069727 790730385 886326602 147620081 977885636 266088992 730842580 92970515 521603592 727795893 866988393 494423453 588399805 826860993 916827961 383806385 781103737 869772961 957527542 226341122 659949720 621134108 624080339 986584317 991004089 124707602 443197705 747412116 928871470 335718040 489026813 380922625 861582394 849229003 967709416 748647402 816846393 115462368 895636215 464046284 862515543 180677167 373510934 16279654 902608112 571117737 746631444 427209140 895987825 823795814 863617836 151891953 647505638 408777890 856112954 961153637 993561928 792716331 935676304 149592138 895305553 385861584 404130995 453777405 678148812 705185307 899035295 279010742 487566854 691327605 750828428 447184303 706092040 699094261 942411372 991946319 993397623 8740116 584618778 611063857 960899317 410872819 840832225 984385488 985672102 400631845 486976056 313255367 642116342 326184066 882931279 52307212 222874473 461984653 625838860 389542081 884032286 693944290 764638367 540552207 784143413 990116636 993279463 402928865 832247287 609047798 625302696 154252312 243174195 883830779 924275844 109384758 752132354 670769397 868178707 207613165 253733855 526589229 781522428 540813527 828245450 310616339 312724184 843025783 986475706 560666129 784266152 628924279 985775033 549018070 818930893 884725731 922755597 631557500 881495988 187160682 299937559 686704988 810629101 445376070 951547332 797919364 956931033 728392498 805106183 574697937 629256572 529336039 930254817 481912455 968612858 972284596 981029699 138710501 733623609 566381168 628550453 856296029 862563409 495399258 949625172 894640647 926199577 899030401 950297082 307456994 510053371 988979799 996907713 323934907 524915736 959092830 981847101 220355147 222419828 532279701 978674505 533781840 927221817 73851583 864029995 64864258 117531910 574597390 599272562 16335981 330769159 301490363 650308620 366890210 455767468 927347092 990697746 502363425 887314381 175919216 970657757 902390588 971626936 537993942 690178131 888879773 895326591 165340766 769685030 128889122 226147133 507359347 643797320 60473359 452319012 613739864 749511381 456573687 861415842 911752536 915884034 61802455 328025941 593619957 685288328 830471909 978969208 854265895 986879588 144225569 690401883 623919975 783104110 129269342 579790061 631078518 853193830 713611022 960225150 402564377 613251762 171075597 217442610 432871533 633084009 270603992 956752612 936511087 979083812 843946474 866325941 92849205 883912546 250568545 864581234 141022855 394036979 853323107 993111564 581006085 651592368 828881134 837552837 205434533 662557971 127266542 300366083 556430937 923952076 144284781 861583099 309258772 590260926 251060525 629707371 195288330 873607618 133620860 295361828 164815745 864789351 342062361 468599567 365543516 633020064 135086277 968816574 729313279 829285151 207225785 947385722 160645039 428062745 736418581 748469735 165296288 994114057 415458705 518407385 376417222 824533982 521534627 535013565 329441673 681739372 9350081 26531322 783578728 887594209 504067297 698164016 340570639 484939366 835370696 969784338 649882487 950123714 35435079 579497258 534654208 722590554 444250636 800592275 402836061 657014777 434935074 436454040 8079074 112540304 975689342 997891330 288081519 783139328 251848027 519677838 632224845 734388256 664316396 733063311 247043351 944247439 260400620 880224526 42903350 636974200 5630035 586919789 503756058 715087752 842337830 969448930 739242890 767040787 316459407 987729764 825142155 950135116 394414146 834514071 22347060 70942122 998203523 999594501 297766918 535108082 402335084 710878654 324375713 625501206 573011320 922549265 986826201 987901277 633686250 901158578 204018195 713418647 769008038 929306054 731006886 923636602 595994577 677243468 280772817 668483846 950452839 990829891 547175156 668299893 419903314 575637159 282845985 311235310 65634696 686413609 750535575 835486376 382514361 946367699 166646412 363301004 361689896 823020841 939202915 969718735 243714552 560942753 854719564 885303401 538549212 714363572 918135303 954811900 416757087 710993599 653446199 958122926 674856386 858686955 413086753 544355862 64812711 587411699 877740542 967776888 191648835 984196199 217542008 507115927 32251762 162082075 797881216 922194781 129910124 325911363 47320269 303644493 391569783 631460727 223106381 512754164 635868008 637460246 547097050 983375006 371916011 906013381 625269541 628564969 825861765 979224148 387647367 673176896 300754899 892848136 13444304 360812569 747428237 772770227 40898418 382773418 989756230 998448014 810868951 957275902 394863448 841014339 935339600 987552184 98602142 931446884 400873087 468926422 251001195 359685646 422068857 569347498 723884310 850135107 445620402 673315502 527564479 707393518 790747278 814286334 785233767 874865097 996357420 999809164 962735098 979299604 262027542 940506310 721890304 890617729 616232906 929007830 702694122 746936970 331107522 622930047 696540237 936050974 890127365 957637274 923752891 979711625 772039573 905649541 631997708 698129902 468426049 812409975 913458448 921699414 532337598 826044606 107929107 871202165 714242546 891364479 836212543 910866831 484613124 888670702 69525796 386118734 759921217 989942661 129317389 768908949 745467603 868948705 899840336 952481388 391704318 714347352 546178363 825110644 981521815 983322122 191732707 511975315 821905250 966326300 488581358 717173696 273642653 867291236 647277 849498797 161373755 438446936 923773504 928512393 6799338 174675600 906252501 932401976 928466740 958983162 572306014 852189705 510954872 749413626 804460807 890755010 5701600 664050970 552597731 579281342 334023741 629087795 76803190 475055331 211392034 921325806 525270759 526402150 513044227 943832946 959710787 994459133 88714146 227840368 324211384 327198490 375242251 689949050 902999674 920699214 322026089 895057899 264486975 316933019 918418636 924023090 583184936 605395484 532311898 993870981 667523940 824566676 281181340 999219157 803860271 893810499 764602253 909605298 228345837 383166194 203985882 657066585 282037082 686964696 270012432 380330445 998915059 999752329 495025025 980669481 87661410 259903941 350158320 765063614 678643635 930012356 390623957 890319039 300051139 687281375 577191512 718816035 809624411 817397015 790732611 858736286 863441098 974080055 692713162 915590585 593809819 789464958 977544343 977572582 284367758 731843896 434656917 629116776 286311984 618350507 13903461 774110240 168091580 966525003 533160639 735438321 738978852 753136100 176300321 507655792 972737230 980964476 729228226 975461579 934879179 986868084 423304809 708318359 172866387 906819083 817392181 880444062 36280348 461350775 902952796 918824417 128728387 377392007 133515580 590197598 860682490 885588848 181191853 829977867 683073079 801672051 113688798 702092636 116521152 718759793 294931084 718710570 58434990 420781635 513065476 979947744 910823196 960740995 523192629 564988879 891548330 941296615 838476782 901682211 430975417 498462307 617957114 920175752 845824009 990389717 626410844 845550996 333881955 488848277 698996054 966099991 134584175 806876244 835529629 894991506 345073350 642964466 961840661 984596148 62998366 520228997 676808761 893132259 139730052 268982929 442601206 977858750 177425877 813563472 679049893 777932649 757252169 887811644 225921094 244657943 136394860 224293942 897568860 937425541 535346575 607121903 414770049 811292826 691970321 735574732 757333306 776849211 857364661 954437546 977017839 983823667 664097442 674149947 382402207 775755903 965528130 977532677 397555160 623741715 87516123 620401682 672920827 792739852 638232803 657844097 45806909 310715043 470657287 507885947 138522768 893669365 519986413 767834786 157073066 635611130 286725157 651470982 320261652 736143916 868216500 926432859 313946461 989185716 830856121 940838660 130618116 874399914 939202718 944492942 45180734 97670926 603584683 930240230 765957617 969697125 584183640 956364174 406237032 718342899 844697385 930709091 60707627 613196918 237116057 817881933 434200943 849972574 652623384 920731937 996490720 999534453 141788436 144155847 37266155 975001544 315636028 496725098 410711406 812731868 724890680 786252906 517528844 634251220 811421799 990733938 313638149 531608633 217802920 522589189 641502784 894135877 883238421 907964695 531243585 606690307 673208625 716822233 347334108 496587114 97863439 723782831 118235077 754112037 113403688 765606111 947464868 989464266 305593744 844914702 75955682 408673652 297557532 898865400 406331227 460787861 759023331 916990861 651980466 824256845 392962798 944225766 766500840 995236713 566973936 891063195 506477635 610667858 419895507 755167404 427342901 753979760 8794370 112347754 16812835 581934495 287316576 903511956 754660840 899480946 461636198 466616414 634908691 871367189 676635671 903878089 768923159 813311397 804711340 917581917 599044356 768920872 775362775 863610147 227766926 694967481 972632395 995300271 486288163 658051456 715406687 963450936 294081465 810090672 258180791 365778201 970793647 998971701 500215327 854138187 213387011 962333732 143895532 483804195 446720069 920760801 143443891 646238711 183293399 403380696 611378705 880759940 559704841 888251191 775334623 917187052 507446538 556212125 660689867 876909081 525176682 929169398 172708954 876079560 358343384 847508747 73101995 973272619 413291510 975624753 984973725 999443282 75984806 955331256 420779922 822074873 842108815 869167688 717645297 836103316 284533797 557969914 608750880 881965012 946640751 960848931 258011722 674353793 294908330 781795115 551234980 932429974 206819963 277722795 790707639 887643026 966992606 979814739 392844213 434244462 3802380 871169611 240831036 650830122 78842219 596959181 61111838 199083176 178367895 608734940 667672081 773350164 11801755 361634792 309626978 578307063 98491673 990912418 244405074 433602670 243165943 851487914 47215328 780971727 833520129 906590031 167789805 677969092 867351829 954010419 126374629 142633395 882827320 972908935 18454991 566198807 165444614 463533710 930644257 986798345 606848377 769801087 143105571 597200288 392029474 873701468 652050572 738123204 38526455 910292591 410623500 532464874 130734835 262703264 950039989 998427955 369292253 537989476 498337876 962077411 669143867 808930842 743312021 833769217 143015943 615813240 801505763 881549716 79585345 880607489 13444979 172496208 886532497 899272734 357572254 900492361 445429343 735236321 312444936 424048097 130170951 889983850 482912282 691901663 848732672 934372274 183677585 812043721 323511984 617585017 238136766 328730263 774575906 963004093 167611153 709311188 719747480 835808309 484121778 785120114 344622670 700830597 402076632 684766542 894355730 985604014 759243627 933855478 45645412 190961389 654176278 850054572 544656304 792472764 759062309 986252878 838785867 986953892 533047460 798449797 67569559 845986372 787073217 890871810 629255564 751750416 983777054 985183624 817479506 955364749 203434302 254680720 49540363 288321654 227758624 627042531 561664396 793607887 275943818 713982689 289090040 664728431 824391990 968521824 702677851 957861312 948986299 967045280 505105983 529396338 534173397 558786958 503925073 757514050 111284433 935052173 705124465 729816453 584236471 588226864 116734162 557977183 324189454 604320672 417127842 987884194 112465155 975351343 978084802 988289726 705701785 720696340 297503222 951618659 199708338 579133239 806249372 989159163 953521974 991931252 195051354 818309286 929923629 937435368 445304502 950952559 783040646 960429422 243601238 796838394 285825394 327519043 149776037 679924267 824124830 960139060 438308641 768735805 805547445 910527188 855839140 894888017 277417166 932240294 662677803 764022932 707140339 899534745 114839855 565259947 68856091 655278440 587808420 751352474 359865394 834052610 861752537 928616040 385428549 547022800 266464773 867962253 136722903 743945865 218213647 511775309 386661796 959148870 304815166 420350108 441045475 776122077 179059426 883277562 164937254 853738383 545558558 642549331 556808689 722488102 241410113 934739940 34936234 564264860 308147126 817019222 892379719 935225393 63375025 139710701 482584877 887877140 556896540 986328015 220586797 488084127 383602436 623088817 169519463 332990124 187097745 937616663 914420561 924201828 498986285 560954168 719518566 830569276 73058280 558298850 746752937 897617810 902666377 927267588 721806218 804529825 194583593 429685109 863697600 921480765 564511772 639576038 26741597 703169881 184264027 817169346 24909379 369085531 650570278 889055482 511325088 661024481 186697129 601866542 257275765 425168084 85100342 786248574 917255322 918192166 232848922 418024588 128618446 824693363 82170818 247231972 917827557 956339854 694998081 882757222 687795586 819133375 256512124 625157051 325767804 643905413 433100593 814135289 322556243 414429938 838035647 845652600 371090663 900801773 251815671 801525132 930977489 985527022 998936187 999204229 614369213 891160510 303519408 775445356 292417959 306599657 660429975 838757866 865646973 904929120 457917035 604828154 561372799 673015356 654481571 924587514 351412818 974496143 710815117 914178277 118795417 233613209 976410943 991865832 678935966 956022893 252691648 278964402 179705577 196616837 566105203 853225562 792548636 841137284 819874683 995709113 380902502 482622758 547532769 617416275 28390463 553070723 362566969 715481264 631961658 774346680 979929940 988069595 796706920 930898614 688659775 869766809 488417059 974727063 761521139 807431734 873713199 931063442 190927069 484733731 43313608 953610563 499320437 564379439 17314075 673156451 726078676 970875748 146764754 944625584 312112121 792437526 269151190 282371033 789219220 908469284 989079741 991371843 462536698 948203144 834237597 856297119 314651418 815402752 68895656 696211026 295806325 941585790 959435805 985114574 6729442 53451814 6687705 654087762 610152675 791143353 637343659 818357778 928391117 967091844 561182711 893891429 858946949 912096133 478626202 703615773 585739276 870110078 381951109 746861783 535064838 776305076 374512460 402611866 960498384 970270346 754997877 758385166 576321584 591476140 956575523 988526281 296989611 682589864 927401223 928392699 495630617 611411869 355334486 712775329 936669386 950935256 568301584 929689148 163303772 711152658 374691572 548639786 115312378 432168197 669447352 744759904 604982739 741254214 281917705 929116950 759564226 809500758 315373026 400202982 195791961 556352678 537258779 927720390 394345002 462998410 614543832 992988294 737785261 971554671 206484524 566452574 929068432 938868971 264792764 874176469 654839118 926085383 261147041 414369233 401832733 873868193 916750128 947081500 133775354 873091099 271645064 543479822 928528155 986967567 871433935 909732381 705819297 734730244 490543265 532736948 476630868 567673444 963512308 967636653 802485759 831466015 5192656 822003074 900181121 984619224 41975450 775147747 907754946 928083624 557604977 900616122 925115409 935192308 677632540 941944831 89887457 485336241 908280378 909586943 38508593 453387422 141427344 149989165 912087308 922040447 350742172 759239192 980229082 985626017 341016472 810341660 123716585 170709943 746403482 811689508 770948515 976323714 345985146 767986879 813688436 996230058 644757315 925076215 969123270 990136324 597018425 846409874 131022933 713635589 626210183 860952060 95145260 673123139 387793589 439503897 765262889 803205925 976090332 984157785 163026186 386313196 780930993 891169843 891918632 975295770 220208163 957595824 601686017 742154643 615432622 641167929 942198504 977367004 568416114 868198667 344443105 797045992 773619075 825340874 903346331 971414779 499937067 881241622 185446950 818959558 346767887 413889783 361538898 760908500 125835028 261483287 452450261 741096555 586308217 943303730 695564901 858020681 216631867 234641197 328544833 741075770 383527697 717657102 813582598 943057733 857602885 983631238 849363403 872806894 517083273 822221011 247033954 484722877 127570642 461433452 380889474 947378748 739392476 896346615 37059061 418589623 323142852 522651930 83719118 501860584 171147052 796107979 830428627 882303717 257352219 994413680 698480295 885621468 692941743 792446569 903130529 975142101 450592942 615695215 698181393 906069799 398892659 908954034 533564143 887494085 133240256 336069696 737644054 757531422 263663289 738081626 499875359 603114338 842896464 966599381 237003578 299743421 52802765 243653648 462171058 503012764 250099994 656743515 855157738 856937835 504668118 984443945 595827863 647190788 324824628 462223748 170452973 339387221 164458263 262981321 61626136 605519669 641138218 967655332 694219285 736742689 655633377 780121248 675662450 881895643 215964163 465612580 913127178 960198734 743026509 992976317 533489319 812693959 706026531 994758675 68951979 686008640 796520244 986832891 308947152 864559925 319404819 758338494 427449314 592753026 877744631 881499737 24047734 559041985 542503542 629625954 358506147 521024456 875065940 935522306 119467909 288419784 327311823 823730959 499447783 860316772 673421627 720693303 815990632 902772073 256055012 670793540 75698605 540521274 206370656 406884549 226047332 874862942 382432749 835089954 366991154 550387437 882172655 945514333 662297831 807558615 820912998 848768362 539814978 784899367 343423228 433682422 940296846 977991720 843425573 890081864 607767153 703607001 426985144 776766063 601656652 658319304 964815756 986303761 520903937 719525662 409905567 742047219 636308188 921516607 941632097 995956578 767215640 834580682 68236166 533836342 70853097 643918948 383832773 663107710 679193409 950175248 495526309 793630602 201584722 335846273 185917197 367375992 398986610 827311993 70698070 102213805 188411432 212545892 163031569 769131374 807561266 815474669 915402178 995568722 875613016 946357627 172134190 955054313 639330058 990518190 352880590 973279424 635089188 789743332 996953286 999562133 1235539 747243295 859042515 874517806 263877930 950178116 808012883 854355419 529704834 682202694 54406057 117180102 629785617 862518446 167353558 547343258 891832683 971836372 776205373 931217927 893302746 983882854 840262336 950373469 923693275 969342457 641480831 657948305 960990773 964268438 694087084 777131102 830929804 848326777 788401450 901771907 629160884 733483444 789291227 800411513 155422455 291474578 590830304 757387742 179682696 372017824 947612459 972472240 218767640 966873847 190510441 324147545 369857409 407267382 314059449 657046556 694683115 901786121 816689605 858378860 795743062 801643629 272133108 914959266 797798197 847597224 30941618 688506234 60793594 804863942 136147785 855829844 638183776 877886723 492112663 924123802 931617122 988982883 548380508 869818872 10519188 460188448 964459999 988278168 945376531 969038626 554012653 781035725 823160084 907189281 66154017 361593150 245723040 896368018 240857887 995808347 492451613 842259490 599151052 980978836 404910077 988381757 193102924 489920703 907484842 920460737 159558048 851251238 70934182 578730680 251097344 280222903 285316471 538732444 350999165 735880365 302941090 925382121 725189002 961715797 504756844 959237922 197103907 415069409 760593538 950979820 621471945 875296903 422899578 497778644 693204323 973997980 438667600 760501905 791880613 950266090 994544052 996183618 536763421 571870331 941883685 959224021 869735454 954456886 722277479 787600104 426408316 457323635 478284033 537441537 67187501 933689520 483352613 940603050 629606032 932684250 557374574 605491910 562094107 782622003 927922226 964563980 764673635 903269872 3258370 418057630 909699771 929070587 73618194 488213604 303245054 337709522 547625832 689454885 395441565 591104957 581897735 676669587 33644204 486960147 838906657 979831737 530865459 865796292 450069705 915828864 656783523 691666174 922618917 993256028 648419820 712624405 679760238 905132661 553652338 930559576 913876450 934158749 95788853 260911962 258612732 732722183 808674766 861966457 653342253 884650426 91611583 394835920 914957283 967505345 767632935 984723341 148849587 303548603 195234349 811259624 88888993 387968121 222629842 304855598 160502913 339983150 91542311 167687136 15216392 507717225 459639592 585124716 870052859 994502378 333541888 408328177 433655580 740019778 28466571 576566107 25898038 125037873 583915643 589167563 130638966 764992499 690802220 956613532 84411094 394934014 376606226 953771086 838390420 914394397 929500296 933492326 238608907 483841885 577148959 593197557 747346213 993583010 539097973 594382488 779731605 798111466 392667655 693119239 55366864 716587245 607060015 981684009 174604089 428109092 582039181 617787343 411901147 518518380 420600735 620267657 827076613 861583126 149787408 178403642 289100442 435634298 419530169 596053734 366153473 813783583 401131428 463874490 102061113 561428913 653553941 985595192 257587862 966728943 395293635 696396128 337194909 452760973 191138984 872724631 604403433 728880560 820909844 862162093 408358453 797395083 213013186 275007835 994684738 994919491 438777641 903747274 675454977 749750098 261075924 846739664 829068217 885369531 595194754 845397009 359286631 663375243 957456181 977542025 806961658 971098697 306309779 665858126 360810613 614430602 641985416 823919868 513993116 818352259 601655812 826865652 796357991 919299262 521097876 957541249 916169725 945546746 695567738 978034565 741115565 794926128 878788114 936060780 512623788 678196778 929320934 957703663 774286964 942994100 733053566 938155948 316832427 615136201 456064656 625158743 349837245 460282845 603707263 658043357 742369803 807507771 482983576 751262968 842055341 894946751 887853281 996613307 574355247 598321904 304518736 783960999 247320359 263064554 383914256 798473642 764044166 968110190 330268215 980452714 387505201 523060495 446842683 942439224 29747003 82725393 971568235 971828896 697707021 758681656 266998036 939241778 477203266 612851835 178162723 880761173 378211479 858649925 430538432 718727151 896325909 918397523 541723053 692546167 766076478 897716250 489840723 678684772 430000593 677617799 907236332 995043694 475882903 632792187 615600289 890938717 149774594 582452115 766813113 804479493 733217296 752229489 147196923 309138529 753200558 947879323 277566142 518086985 992783482 995450504 683275208 855861422 460428536 937508050 430266324 997050647 143649529 915345468 39938914 369608334 717593915 789421995 320067300 443802826 629754527 885276632 879408458 945705359 891828082 895911436 642752195 867787608 168268137 889859580 300080850 327667634 978638823 983448458 474971109 629972608 844041021 884715115 734450992 945690516 392036289 716115711 531842145 934939333 163409048 655758500 292816843 314580723 354955014 666397208 709730021 762812647 507982620 653625131 348171810 506002089 112769274 242458588 566759816 599806541 647490080 986453404 793740204 921987876 121201424 240428938 338797286 809525824 996896680 997171735 531069926 719238386 266116705 616721058 280750542 431446682 751878008 896885555 550040353 611306488 947664658 992502019 109089789 632326711 356362984 519446071 902725543 965040926 868254964 869973094 194090052 853189613 504661343 549403469 274364339 303506761 430296607 758724593 341329444 912327035 529124445 621991820 808455104 995106703 112521145 122194501 136661694 459904706 166495185 988073680 976039171 999449515 891725582 987596889 204604389 513671972 739801441 825273334 632686529 779936299 124790567 953567392 806628948 872111023 163991763 801164845 543275045 781126092 826782143 904745894 297723736 557268557 217331809 678583851 376724658 954489090 216168670 829202365 911861403 977329778 84564009 799695357 555788644 584582114 893357352 910701303 541947763 624717987 144040727 416033395 709438085 713953923 846924748 973931538 272022714 602364349 272438674 776719509 61686211 954565894 593750101 604998073 842886546 898915719 912552992 934921236 15425079 17400118 369623321 829789431 314161886 625988024 379434739 571277002 207787458 810865846 384588754 590656710 385733001 595496366 851898889 974904709 449163411 862016323 272768446 400152985 169245455 346919862 237675146 648069556 232651812 243354572 846285834 948005702 320894087 890114554 933858108 951985645 715949382 963476706 108148297 327545576 171082382 552899004 33602824 595502233 287441948 675831832 991855120 995510652 61157593 368516290 239197741 371415847 453869884 703371717 885876540 906043578 182627013 678090374 700934115 932794211 544093468 839863550 17091168 665908824 590167120 748104147 728200058 945130739 629751956 630978400 938858717 975472232 299650858 407160598 643514326 733347829 942666595 947387264 763326885 948087379 571382970 714468893 805738719 916762049 101738052 238651906 502765674 975023359 211236070 735574580 283837562 908279328 380360069 698720545 819811258 841019659 67252177 250506846 75138127 696977693 296475864 602334660 823360951 929031476 528982417 770603465 243886544 477254144 933119600 967057450 294393434 937585308 840284249 992561830 649648136 704694884 811064275 990135479 71509037 799522370 810574280 837887319 418625005 819941315 547421184 889940635 734551022 906094522 624398539 837518825 96545353 780285636 292301114 674747056 180886072 976525245 180695489 812203358 572436453 737302085 526740050 663753549 170472924 555631316 199845376 764726732 333744336 855365365 385901511 773707447 346288552 420291697 447112564 456689525 916197148 984608728 326198523 465384494 732063888 910651460 648743494 707502397 947015406 981602074 392526854 584476105 845609737 899719944 778809716 786237946 562322524 824674939 379451808 620538058 44445030 658475010 988187850 998527593 49906861 978582463 937458522 978944785 393916783 743218069 451678542 903516273 90390211 739505309 168703629 906004321 915263757 967062537 817563685 897372910 868500505 975126683 196054970 868495419 319251618 803151758 270158299 757359813 565230291 723070242 735641176 782504231 239294041 415922395 256601624 938691008 891740586 934165559 689373176 800172806 549432926 625203907 805954614 838884114 609547088 645259538 124960620 864466158 223607082 723075413 996490095 997879680 342405756 431042147 723331008 934105843 937795012 976442564 676419848 966605995 429230474 652254963 980629373 994975117 88055060 134729349 621543963 703123421 571881239 749279465 519943921 671137240 548491995 680681838 271789786 569578364 291866362 995461289 976208946 978216522 929730286 933467841 854784092 999213519 154119046 898360532 713795555 793409122 765131949 905396059 891971068 962681864 797993009 844531712 764914100 823188406 443330335 716125158 803981454 853006330 997640229 997789455 654847467 822817605 674306504 741171929 666330491 759182102 57634634 982119591 191498361 690559806 171208854 242600058 745842746 980092646 720660818 986608679 132460961 254145930 240121947 251951535 227191511 573653930 818516390 880780354 951012016 967700025 100106693 624794285 368438873 430278568 728317216 938751929 540883425 800283110 993116031 994158406 251062133 385509435 81293927 522714614 481180027 808839713 642927235 911172709 246707220 295965227 907061336 915462100 650983635 827010120 147018752 923470046 149353350 606957249 212977289 283162031 250043304 331314512 140106921 172212074 565788508 621623896 196865567 331982688 35762338 107550201 432862003 714761782 879155009 976728869 841045073 994192864 780282820 950090070 252323154 754233307 379238501 752656877 101905761 906113568 407065381 946343656 974228565 980913511 72716139 541942007 94018300 895468763 695527577 946060849 340534399 791235573 888663130 984114448 710107094 854219285 820537969 993287303 872655373 930747083 326530648 824427618 357151826 979431936 41705892 453484041 449519625 867382868 92747361 870435756 533357598 877369834 144856984 346105897 503835605 837481037 72912731 552057085 585451948 929048226 679487423 813369531 210064289 418253820 247420381 459087826 792678287 920342697 652388255 695017090 540622932 853628360 414475409 592720635 263060348 750543350 183673675 650606032 498639063 811734405 287404588 746616753 648976279 942842024 835710130 898333040 696028218 731103897 607351790 942055511 424512819 659676515 515262370 974899139 899504758 943130255 670945361 746990567 303728677 968619864 234493736 706170620 652735600 716071448 571008074 824652938 556835737 846743108 616804268 958321427 519854817 975449663 762627225 896092104 1161160 826666600 203918832 319882247 728501046 933200011 831232147 854395743 191806901 742730039 923056427 990665024 569756805 862216953 304222634 546624325 328820973 921815939 641898470 887716313 160785932 692450198 857690886 926592518 370477812 716481235 414713840 722908205 630937657 941014072 280668301 533193975 755490672 996939268 310462076 745561377 912834496 991847537 759232006 964864005 676940951 790954130 286146420 867966872 678510789 827950327 465758666 693573310 962140528 993129789 601423824 696098618 259141668 310246520 18818032 207609965 216744834 278338046 171524842 946886112 563302959 703333220 224711612 793311629 353270579 500941041 42286385 430297039 577023943 644607838 861731245 971194675 551103152 973861733 629832388 779219570 763623785 920869402 340988784 553269862 557972056 968800456 68818259 742486931 89734346 218864343 901020622 971879922 219117451 713081777 722319191 735715851 249509518 762460112 888927259 994120665 616855621 637251856 560107338 861769212 597879849 880167221 433438485 638888923 751686984 880287276 773042591 964412340 46367132 683179931 425861704 673431501 175583368 471644462 848904466 943609581 829869383 833305212 726762755 999787698 647635689 866508220 63703045 969258548 189259708 594783306 448553095 866080577 434894740 973437884 817424500 881186121 569278673 615835927 476900775 753414887 528784302 599753487 495872430 677914822 532327310 813877676 571954679 756748960 265955369 314300204 872034298 877442178 254579633 738256561 370229799 478946058 514155803 888540201 174994663 655942033 11370449 460903871 275798484 986207593 408354307 848259440 572952718 617421758 175254818 477857501 313045748 839633482 975646067 999940947 890322147 985431224 788324896 860045864 881172205 927264631 581329590 648629612 42813359 813099043 461243047 641286966 735757014 832408488 904422859 931376725 709070748 764540323 925377620 954358741 755411651 973265192 333972893 353328124 253541877 638456563 845798157 874411236 173358796 411959061 251936157 747283898 978977493 989694456 106156620 854635904 94797399 506163368 261366154 807203914 233445156 646407561 468848941 935290694 983386345 988974967 265488318 603036781 743602515 797703498 328465149 335529885 892285189 927417874 371482425 986644598 229605588 757468977 453623319 959396299 838345044 854576259 628468978 961200933 787372232 830541917 464403138 788788815 169542306 438921430 886183110 999930591 849129143 953022796 395076183 600149240 963862578 988846825 756814472 940845589 197451532 824379220 543339051 723336557 854234400 858568029 529813284 615848250 508261769 947975790 708735388 951670400 538494331 582336801 395474379 494507642 625320734 854430729 206387023 966070200 602256040 810550250 521935828 561273665 893484179 896526194 987477994 999056442 783533505 801324143 586209014 792846234 306685792 848555007 283103118 405145071 11546261 420333939 580448990 984638816 170055359 695236933 600134139 732201753 125031159 437747075 322431490 437743825 76570153 584373001 847601179 925510891 14047763 593405267 237473266 498974189 588870418 631897221 526759637 551463153 634066320 675734294 592695408 959908565 688053493 865557549 134295659 212102665 29995669 112738386 604499641 860972788 120157389 408856769 576680395 982754911 501109797 918104780 722266393 840264784 99865126 608290220 459235495 969047545 955497960 992489619 506112423 714526712 384340181 783774410 987333734 988294845 359128276 493110649 131770596 991397542 224796408 841694546 906058736 906916332 153628437 508257688 97744554 177807825 572868632 869867071 367298508 662311594 322140252 611292485 411823280 933734963 944748180 962531674 13170061 846287178 365933397 686892411 945996031 975548770 30307582 379913356 513273979 860664817 886244846 914702511 203146894 456502533 372701167 728678518 515369642 977905795 886606291 907486952 931318036 932973842 70260510 703670979 807770771 931001189 299780491 734879079 841000164 885274265 158659427 658822072 784841004 988230443 217264393 910797995 346443695 373671957 810699133 999507034 549241899 803027961 758574005 956069935 174687498 305395152 83105802 823545958 412549845 869353046 259503238 474904832 444104592 470493590 9832151 334217122 730645299 981463558 835178091 840830365 777560216 979009892 446593184 904637174 941923884 974040563 328525197 815608690 593230607 835449005 654529786 663153026 260551098 966724827 43447765 243138921 614755189 988139956 632684974 668518972 398175047 671425771 358673637 379625959 783685448 971238827 35223547 336509029 451762052 992579330 477480973 638144739 300082231 505791071 120635743 395506416 191993745 852055847 636243497 751340699 467537417 751554484 374160914 746735494 197996056 450819760 23114717 334474755 874219524 957203016 899040826 910559083 635349267 857149340 391390298 806647743 987276253 987434407 293938674 409407569 422659403 916470591 473417390 912604430 749225838 868488430 719872376 984697883 814013262 828151612 882138904 948351470 495092155 825831931 138691154 451050455 222947089 696672928 38873396 341496703 590285501 627436563 654721833 916278806 576014060 963180645 958127549 980539710 219625217 304933996 826713837 862824193 643271232 820783795 206265304 629553299 136785940 905521047 107441564 339245432 887245126 905862421 585575347 787842168 477872541 550891309 433280803 486302873 136288949 509240195 372474356 520150964 338439943 427949980 263481178 840680878 303983683 609526795 47680339 968297442 660759481 706144488 521437110 878479242 685797890 983911116 15645595 807667861 698800859 856086290 41718234 568639277 414569670 729027150 147506778 556267577 968531595 970423565 664419766 976117021 823308168 856482263 41011537 56473429 538039509 883073405 899138326 986593796 721675590 741998636 335970489 555034517 967183454 979120476 358011874 365910533 858458347 972829223 183205769 191131225 132700435 268582117 178442950 294279403 614114341 916862284 320429632 768521679 572744628 855894474 836895644 861266206 22925243 569817767 678484107 851000670 34656212 727955895 43673083 97119713 391305791 642396519 233818276 584898290 321865348 607754516 89127972 969979386 957789905 981530344 682821583 967982753 981094205 990767793 232573707 568158554 785843465 803019615 978933493 989446482 280865684 370558808 473050910 734565811 626802866 826757629 58504151 946038252 573562461 845787566 636692908 811722568 248829653 823541250 601616358 956245578 387494558 930410705 444348145 844591188 816800066 965906232 776019459 982378640 802064133 988426129 482363334 892142587 574117612 837974270 76854984 720628904 938882951 947448087 847015203 977006985 216917525 837361880 251397508 380167114 933264883 992490098 891629730 897631988 470239254 539503479 173428545 686367224 432215203 753365264 378435543 693331720 756964041 847087514 259158039 745401675 217543837 765261777 126055842 547720830 61803328 774527343 540414152 597366380 912572817 999816969 360803703 372049815 698567239 733743243 202780440 363363897 413178497 981821876 261350984 359003845 235355840 686034618 44210477 184924971 985717501 991664092 335607381 535775499 45430179 839308625 970661684 982315033 216752416 561629807 812055691 978360643 733795735 885240438 4260086 844828783 353457934 970390743 285398942 838116920 234198157 730677830 922944421 947732877 963668246 999796152 704642867 873954502 168821117 401459468 767991573 872767810 631228860 648901749 555969983 736957090 633824706 872762867 885834858 976828996 61949796 581807307 541910235 937228166 892914700 980700525 995764922 999653313 677082962 785601147 624438423 859087339 281787296 578353529 400056184 572559454 910081324 969707717 920133952 935333692 648293287 654437020 899622015 968931884 674941717 805494452 855573610 959658259 766994187 969158589 673579644 695451491 589252766 962693356 594734296 662528592 919697789 974377305 46710690 654062276 115794030 813938421 35372692 824130022 538278146 830206327 742300192 903752269 336559729 719946778 146951171 735635210 358997721 449181371 359762719 905555700 484060694 694619070 148687100 187271734 732538830 826377950 738213435 857795007 840601441 918012836 555174416 793299850 582263299 870931798 880300819 973727479 799168089 920014281 736970692 897782257 934531697 982595091 664562422 944715830 443130188 798954773 971964505 975578784 421273383 514172584 90182028 806577771 493964884 932967437 143158211 987855553 527559087 947696920 602205740 653898002 342714697 936079439 805583882 847757646 420348669 469954991 113363751 436507704 320798646 740734404 329246240 914736226 623045064 777321350 968900445 987381237 381203360 599077698 436905854 647527319 647284317 750353625 780573736 965052857 403699991 709201861 607056540 965315775 671871507 907357054 1550293 664820366 484903313 780899017 529759745 569469423 305152145 895952413 48335804 97803836 922891774 961556067 151508319 828920574 167961478 877900466 710293094 865711738 395472708 769401842 566334732 746177926 8982428 729282744 508278154 700587864 351114713 823586744 786000362 907813565 807932999 900204959 591590368 842038804 6462928 850045379 727931955 785060541 238750974 707626252 398733986 660927311 783273313 895093507 643683835 877045426 25627108 704419665 283937244 395241980 226778811 823124028 753363206 821076015 835666157 916419391 746099821 989034678 238235039 807269149 648326387 694954046 62285406 393002095 211605880 707634079 182118050 382157783 940312393 987526012 88637139 894067694 346755451 517193828 358858067 903718799 181428308 523668997 498857290 562049805 39193932 439575473 909923697 957274856 15048238 59920910 944673162 969447477 836174784 867569375 959607179 962783732 91714870 253629159 176632138 897441357 578794551 942765100 567195303 597216271 924260340 959661519 665680190 780860461 705573168 885677250 43328144 769807012 68733562 969441359 657937033 720027280 470101707 819784972 520099267 955710620 74549314 92607131 707743878 997470490 911459311 934209001 261279649 556408184 6080518 514569008 385864569 644204467 877325934 888099126 265824595 659110839 804846487 991389668 956280833 976884926 521756975 827835414 585674849 702611299 843720411 972844211 471478895 618720113 617914705 725630285 346024781 603379634 952889315 990677101 844811270 849972795 937366464 960459866 104554112 973127277 514893685 605142901 22442445 448980504 818979288 936341957 361791282 713108591 748111557 835890059 889579965 958916741 301937743 817441483 205542422 474619976 731742058 742874747 710689876 878117125 792534386 873720426 350540640 901856411 341403756 542799340 719519349 785151338 961826769 962761722 531982998 645184300 644652796 717951149 77100575 89956779 114048206 611319338 923456904 973099884 22604570 652349467 519459716 780770001 977299189 984512193 213988809 699187379 848621156 859850132 881646292 990777354 208169654 608448613 163111549 888505292 371834636 768374802 102147784 492722889 551209177 858984328 145246217 440469087 288222038 771715715 359157124 467532646 369374034 514582141 912186029 933930059 374536105 542153959 582670048 748139674 889083847 927123437 748298249 762447949 249820143 796833709 216330856 288857798 255812129 411910885 964227202 968487372 657884492 968889032 26105709 558419710 965838454 979564457 430669759 437858517 254559523 484518708 417355962 616591010 645658353 798073947 830301929 992540079 475105797 687740456 552279261 589696461 557863483 907718943 245061446 916912845 212727279 555620171 425479151 647407969 274157008 791952921 741656290 995158235 901665635 969399199 64885324 478993897 580910387 895741052 123216906 544040001 203683132 549714280 81608006 182955274 303097762 779184376 430362099 529228825 196057380 209644674 300402999 807883630 101504363 298310341 402141015 958336173 879043987 906274374 547998109 692079616 11732857 751564604 402690036 659768274 555762443 961626354 894502488 941000074 346888472 854106382 987938214 997456772 153526318 948580906 461896290 926733531 336380904 948236113 567751061 891823176 285213442 555080925 40570834 208000729 631476082 683198065 58646211 171722404 394034072 916797053 954676100 988762098 627196608 899701218 11976047 402272329 26029261 347047054 25078884 281030520 418461158 619269042 776816057 828005737 539045973 608947936 590484211 691804646 844214289 985335090 586844573 645718546 252442212 935469740 751020233 982155938 597858425 823879403 480389965 535833846 941759918 956745306 923243517 986842335 897294713 949906099 612943948 714314225 89149404 849288584 682327986 904961085 186997292 337846297 675653854 780167634 819864842 983026345 134307947 591105175 187613736 589099126 513186305 962478470 326578560 416972925 287419625 749783884 719391529 743227261 791232312 996900455 982092392 986743357 909679276 949305552 642114475 706464151 727402129 759770800 269397519 779556381 939450806 948801935 292690322 969746508 664431554 810175996 714745696 890575901 245688774 586153637 586290288 772343055 664009861 772025891 139647890 234621421 262377438 487157343 312278618 938959332 387722999 660653360 814617239 837502700 174056495 902867166 47167653 924373876 378287938 398459165 329299246 847305869 666873811 934429071 310077245 643192879 515661529 578922218 840309940 926680285 649885163 980147450 107088802 126994163 579252815 897723670 334619184 603342113 499458750 830698827 760625308 944303804 678249681 763317721 482829849 990823520 394453232 428078599 555926796 703044695 441680212 456107586 933242239 978929023 957556494 961811663 606686310 851643255 149851111 275294805 65999109 187093984 828680910 879401264 250734049 635522094 354822799 979189467 211573527 384180836 567530258 964390097 852579362 862742507 884416951 940350126 597514046 632864233 357802364 731054498 530828620 932978356 403987096 404476658 210398012 617815516 451950489 603221278 829342136 962507709 632790041 946522952 124811795 561166671 883531467 992404557 757824680 789856989 894176890 936427747 56051109 705265135 382075399 382181310 642101112 711533166 318749520 417739789 887088637 936081381 74969032 868712359 640250173 985540269 513655234 870164078 992177102 994886892 638561388 650542725 100679037 476371986 626870591 650887123 390268890 662402691 295238658 459633816 367726709 603290978 938068583 981848470 179644510 662955665 680238026 911231562 173409120 663296478 261296558 993060037 934421524 990896230 989770111 990495897 731111369 914230259 136962455 418578430 890284305 900632797 894242458 963257854 356395853 980183171 12960588 794914853 784090544 809570229 152825565 614774158 840845150 930743129 765869530 945084027 790331484 837279786 475186998 900305556 230456699 995333862 543703442 852327839 581518699 731486006 228981117 829349967 563487637 672168886 47639367 219392059 717776380 848132750 675549044 918999722 852976095 926924023 649444383 925950365 225556842 589153403 188604071 492098484 865999809 906197789 717533171 989984912 451268308 539119735 99212903 534354105 983986686 990336552 12684796 977063644 410900805 520651646 325800874 906167238 417619211 624739931 103119243 945377447 932572089 995436802 464647897 522355195 262243317 377892132 549163003 942979466 939269683 983221505 350689518 793542662 705552896 894053611 957861716 990254246 643242877 972981177 226945325 247711808 396296601 646145553 69144443 163854052 256351251 388550834 929033067 955448794 751612649 976372751 779939178 955095714 322185184 717189190 842949321 870713553 223821531 308658648 717186857 788487809 896925514 982200134 756699723 943191088 865161758 887453138 620334565 712160270 171198717 804789608 599800875 862930535 645691677 767491678 675314604 839208468 865014006 954048460 231783533 983331991 527582969 795037159 436213006 692170643 47538289 748157851 845744467 933997641 322520407 974114547 974720099 997973145 256841337 387296636 621033864 888710225 993153402 995181073 344484453 644850202 793611393 991699635 637531461 710881923 845555029 903787419 341907717 386090719 10748105 970909899 959033600 975306838 392019030 882729905 714361895 867631112 75802370 334024155 786838364 822426491 383985636 581650863 499676832 882305552 671977408 981967886 37190866 417702089 757552947 874528214 220791466 404083054 136437309 415891794 797817279 808414674 902913504 996057252 597665608 896897823 847254179 909544647 42233167 125145811 278425801 927635173 110251463 277923750 376804137 562989212 37732294 341265567 774020386 784071527 284815555 670669546 939233591 975486573 154785000 729427583 241855526 934110203 377225996 831288250 844912783 860859161 121402602 697764006 909301775 968282570 435127215 630142136 291519991 477966607 615085385 919179869 120107781 506791762 569107164 878647527 728237737 774264161 88984713 855832140 506363844 989086873 234166491 977885306 311580150 456555700 852590217 863239903 861859690 865002818 466093540 713398124 67815795 253217391 905801760 991593063 715302198 855723845 293075813 633834919 370999651 654902917 983532470 996750207 172742910 518952960 83628952 261530899 351198199 930029855 690214994 722372714 629688185 788362779 743213360 834327595 321981124 928336911 452545580 497458599 298744280 667785439 339861998 513066386 912807139 928618710 983950509 989697154 509755476 719309096 968582505 990775549 632256571 920135321 908701406 965152393 795078067 865088140 194349466 213610251 71933285 703354219 830008556 838949602 236873248 700582578 583936851 868606070 207630930 697327094 408603356 916730167 881250050 928647591 35999284 467210380 481088931 481388837 170763554 683256288 731572202 925824594 471526025 877883081 209276183 968956965 355258322 760071026 327662805 553411929 803415900 864363007 86308213 193960757 728173841 767585198 320471246 728686268 34085734 185952838 479506939 720936569 404995043 574035965 199185411 931337841 957763737 960904464 424658337 997726933 996784361 997632551 473703903 920718899 572685369 959826603 108625489 979513861 581979272 885344817 321603738 937107411 767780379 951764333 236916359 531617488 662552616 717420810 936933393 957788585 74567279 765692674 355972407 623820286 964229388 986813610 9361987 597192655 665910672 802031676 878897518 898250582 173237085 689448249 273788718 360809164 958352002 994785525 941591275 976159551 157946689 163789238 534580820 634583237 675831452 997211283 59293520 176913804 354954105 604066446 401778195 827547440 530149391 727289012 924868973 947895136 258732926 762396638 551255908 601015743 800849546 945995659 891224356 930070444 236683578 546062272 466876464 831497613 111101191 817947509 186912392 997537069 175974155 587936702 388104848 529361420 399900338 501567201 310543720 780375384 569687739 851303299 151682916 290680859 125555027 152541165 657038063 904184461 6965775 777742688 145624413 537191761 530244857 749191190 56942959 585045802 991533605 994708348 20526934 722888177 908270972 956606201 53107200 903349888 388923574 394122275 550268558 775475996 715786827 925339050 268573220 904909411 354570250 992872476 750311371 771469647 834258766 951537431 387748744 855710982 69515257 93124574 682189656 832846621 142013823 500969184 803374669 911250599 723992139 900184078 789858351 959638726 45224493 629781061 859332427 910337999 754606198 896666621 390976116 868814921 211984863 454992467 44525072 891493124 38682727 44361871 10641879 229551713 385692463 709494222 360663905 685831899 761961259 808433722 808123001 887277382 750841215 808877574 861685318 865934932 616093531 766796147 475889118 825023093 700752288 842903542 661615064 680857301 482846946 887920250 844691218 922755653 170294852 825552483 507732789 747597508 494781192 741366435 465958397 646631750 514820731 543026478 288619273 993264105 831501627 979529307 499045999 581505619 281032798 886368062 239250195 869043305 945733380 994288636 232551622 495883793 705748057 942479861 105076825 435078175 399531099 643681444 452783314 646174672 723829339 980735221 112513736 465235925 773454504 888367018 991369284 998025925 434703300 959815292 421613590 465158309 987240772 996189503 771414745 852526633 276263304 846565988 166449052 302571722 420919226 480425735 400916573 580834169 376970976 743525868 952050163 963359395 208757901 872889312 740133425 782735088 735971249 762289614 312088392 586629490 46485325 86200464 252150206 758234716 78110847 639413325 732616100 832997350 901544439 906648801 883544820 945115117 552528582 888994771 815814686 889492829 48685448 828569172 594092197 865008841 59083014 247820646 854562916 906575660 233604089 299760450 250043790 783226077 591162195 713417018 327821659 823380294 215669948 912439826 974630066 997664233 308152921 634329890 611196281 897848745 521287897 692960160 385699788 765837031 333299915 667657936 369797544 746190084 238416529 836101433 894293691 999276670 6748545 761730470 558187188 623143091 599342399 760910314 905879686 909222334 665791726 798336760 388372727 527288068 488646366 910052652 692202821 699980749 194054425 691170595 236360374 906690530 999499584 999805513 804302901 963249972 801964644 930954042 115642766 772130977 748267146 975481565 909682261 933444336 393383433 913171058 172745383 265310064 90003919 354486631 858714480 932503151 226879731 916122083 826953600 879083054 216428373 371565771 115186328 886186932 19457370 119671492 58212850 684340953 229271471 892440135 180364898 592726660 404109314 631148815 605104544 762567726 866425297 990310798 69985079 442763373 5038499 470511155 927276359 994992762 173234155 839853418 73405624 87404850 337590121 743536730 190904336 540668616 675271766 689851412 606923702 836705289 772281174 897214795 911640997 930138443 548367417 617630463 640989997 720319887 218054055 731568211 69090451 316401882 510214827 795361744 93430900 608462017 340986981 416241064 960871163 971522338 22269133 351830640 200727571 574048382 798508923 859638661 998712295 999249398 276971854 722128505 181817072 298247956 706538082 995359108 271438067 990351652 890654488 906644873 213887794 767140185 445632931 687539105 969664339 984778599 566280700 694106414 220474217 421829022 521504841 953963563 233556742 719194864 740752634 908539357 272397474 458113052 646729958 851958852 844872735 868435431 135300362 457714483 635803108 749376861 896740861 916204100 794204996 794935117 59823291 309026559 160520505 307583210 15792140 364627541 44120935 181431899 990720099 991260413 298421396 884373620 475995577 699467388 97419766 287755414 590041312 896464332 493784995 960783364 89287034 932368625 114625473 444821798 148604605 544689527 497895882 905216804 48955647 757684969 351206737 894877306 672533253 683653567 309231350 772393522 491422107 625899990 261887022 264967334 479933177 885101259 338613729 749800050 902261587 997186721 777199847 969945755 184248485 432483029 682667958 956515039 96407823 559723710 582433461 879944886 295420087 759833540 869842574 921595094 109944083 837274699 945981307 961302458 310215018 522245890 648309761 914763113 783019772 911937520 104777865 484259523 836556456 887463335 873788104 909712568 608139875 711597290 415739564 552286941 846656016 913022013 510327330 881898045 584980258 975292030 512405932 725886642 878046962 936731113 103537396 738569392 938946632 948181511 654695911 782800661 894974957 900498474 142522080 373489560 603815397 722624176 587522253 691956089 139048192 870190201 71867406 607454978 894617935 949587565 779091285 869843050 274257018 870521557 798793822 993062473 555457360 619789939 391060920 474004439 606241369 994007355 76344024 713586207 840998600 946982815 471214875 890706275 642065972 949612209 257517111 425433908 184930799 426831227 592031008 740753105 460622672 520830715 534497700 565482832 559461989 829454141 237829709 862329146 372813726 536929872 681827921 693738553 147859117 524298022 427705543 970833653 386380014 467555013 238955946 348695583 978170210 980903398 966317394 994610132 38827003 440081844 844920671 951441596 866411971 912498826 306926925 936817403 969271406 995067817 486725591 911589591 999540328 999578684 579895250 811626699 190992672 479958922 803870937 826193732 214842917 383614322 417368056 458649359 539024781 731149620 519634566 631455920 48703231 164119118 588308959 820963177 50128050 65126794 325999651 345857591 806639770 900378143 620838710 762479784 516965780 931984921 345637187 897071832 592192676 923147626 458789088 483823563 670409975 827413183 362520514 964159552 999601808 999996152 172506646 933832430 371574993 540962284 130026442 242524743 843367063 913042699 499701423 925797875 120213659 331445158 445578160 544532143 894384675 905065096 305427362 495207238 870082220 870450350 666538068 763888014 703084463 985013363 483273984 746079622 683161961 839245259 452165249 694560525 280658708 653995230 194115333 376765016 930738818 946250087 836858907 848045067 545475922 586896446 271256999 845420176 983792367 989729933 644304360 644941165 873669739 876324915 868599034 900846548 72639000 875954749 571554839 724720507 805070028 873481106 633157460 834693065 445782137 787460354 828876699 873121376 270466919 875222861 257514218 649543561 52394178 889763315 849540738 963166078 26410347 373502951 286055345 712740593 180463330 377262704 358928719 532276117 563527375 686259027 979108517 982189475 865230408 930460792 872074578 967214946 56409526 301370552 710565771 915127356 672341073 791063997 426651610 858545579 5737784 843522041 846975617 847957961 707643302 947833908 227561395 337656371 452618267 839061043 842263582 888683797 47100403 353353730 955921131 984674574 645191357 875387908 372932259 451334632 26726605 750343154 907492479 983654861 394182355 942263778 43257155 190003689 611895046 840264948 954176870 982021942 308385756 465099720 605996678 859130334 883999326 901740623 719198759 840382396 642549574 851352603 342219607 867162873 460141792 866989780 950049077 982094071 832454799 965094932 512608698 775477400 279566153 654002523 447819431 489611120 918261962 955072311 721605099 843888259 250141062 370978622 856577991 874795592 639401563 644754213 943185695 945194315 17170792 490873100 151808868 153929694 465748926 665786741 716811421 900185713 674738687 706440051 530691913 619085087 862161274 895811691 168626165 414233201 2840593 603059787 170728714 439869352 925539549 942990083 9207678 644543690 285455331 501726377 121712285 208646129 408091470 621008478 487685502 556321947 38528652 666001143 291828733 442198106 86275995 157909288 700448077 932415073 784736563 889042405 977470263 988056059 544159546 932828727 49967812 298620192 586693142 605306722 312175384 536847524 534854135 705336510 413695463 869779517 701928684 752926949 984132666 990880518 616958538 966798681 132422151 900979590 959863333 981280649 466888505 730063047 485179732 860578534 351881251 672248493 229469061 454301550 516759428 521433098 110374099 147559601 274784374 310113193 670617798 866779973 136289599 727600828 42879007 614370920 167661794 387064109 824454550 834258002 801445396 997504290 869355506 920315278 911832216 922920755 839803662 910314214 899405114 995258457 657114529 899110951 182714329 259405605 813155167 895805953 382096785 954884072 596423720 620869701 837929310 871196408 788920162 935094973 940848638 949032109 264836491 497270695 892367546 930576998 315628949 797971838 250805089 253014063 803977903 849275315 242059167 267338106 202487852 553592331 266840845 372981797 462459798 718724467 141779873 968307979 297380338 690752967 457549930 770644068 654773496 777730680 835397429 993722444 642689677 822595660 727932642 879276155 786661735 940680261 360723135 815222833 83899366 457800448 410860854 553117600 248374005 464332958 159381916 312130417 403021289 693688705 336150910 908913542 876792522 912400988 611279845 985377087 379065471 514328184 155874548 913693023 621044459 970111579 943988594 945222209 827739295 900813521 445321691 966840565 94518493 833342953 844598097 933143823 993510450 995470157 42957915 999857110 981120361 982812759 474632574 585501372 110896181 171324251 199988155 217689469 228377258 401123252 303608619 925692134 612142308 945042606 920876833 994923225 590512001 834379656 730022225 904674359 558178891 628782547 20975401 676308448 383991543 566027870 174953277 215392435 184842795 937012184 103167053 138866590 598671514 636289973 735743846 764295983 935120938 982844440 12734294 658412510 899013320 976400171 616491700 999733712 435031210 500011279 314416364 549682485 519195520 614632588 416115607 701053940 796569818 870780078 848299925 936893523 791868142 803938678 913916207 924142227 358113977 904681828 804968316 856119524 155644949 206734471 456569356 531108396 882017495 934258599 232807977 792707490 133095062 680378133 24923375 886054917 782150599 834631917 80901256 307815676 736721894 862132726 375622923 783603825 100843871 888004989 618121812 957478869 1790474 145718767 913165588 971743270 149914069 816050109 769498908 807758648 186503840 802379747 385044615 990074433 812218827 894301815 210306921 333313160 303097942 359776139 361422492 460762119 215583608 799236159 550442944 778947250 900817653 990021890 203091383 932701178 741982132 813385037 265700556 966605582 81665929 653964389 586504969 763793528 857169623 898825382 120699431 526987625 608990618 980615567 197714907 751249256 173187797 820933101 750243220 766492335 765587798 786470013 482075268 742591494 705552310 728126594 256370487 716779894 984064532 989205441 910387030 936669157 316982905 920332642 26168787 660478981 279983790 373467455 308545488 376108302 62426763 979269932 18284483 715701778 592249340 779439523 747524162 789306808 28323666 335352891 865980016 901370761 759876898 928774549 763371572 967553024 825883469 931566691 789927201 817694109 868727562 885695765 831903191 848196505 641546286 655842210 890621368 974916667 236638988 907949046 26142654 173418338 962208172 988796650 379233426 461943199 622317495 857486106 759387486 805633742 907821937 948546961 18523152 693214014 706983502 919005254 573054125 677990685 656527721 706545109 48844266 340304566 546194717 771944212 542928451 851930574 546788012 988830286 906480175 977151407 828519762 956314419 647818726 935672668 702637928 714231218 535459703 761473509 471586482 783351002 264888197 338894147 377614306 762915460 193063603 625992146 212459267 280705775 5841409 111949311 499571254 840691493 683900773 779744489 202211683 834794804 435601853 530328804 433855943 502527245 73036766 813492609 429309788 877244141 689818626 944075170 355893947 813677419 356870943 591356802 521859759 605849332 3663902 461090789 728470289 993320861 526892322 684801812 957293374 992705023 407266655 524507617 407719753 658150528 837985351 953719996 675932518 708084424 233529313 743838447 806692151 826614796 677941527 996040214 20550958 857172292 246904913 462675487 804634188 882499045 420487429 462514131 394962066 958727633 455131682 626714162 692029091 912755358 7073162 814736884 6632743 479836557 757914715 969105873 615046374 931918569 951544493 990700198 991019911 998719963 391643235 932355345 274253031 768426767 793007434 862216577 719613215 869126859 276918079 898528820 555979091 708235449 647487222 673470655 444316838 827956835 128700873 162216118 464353754 573617608 505311260 729841653 711355096 890542571 724220626 933812922 694275050 976353372 869123400 877174854 456581693 736185680 24832788 459396142 826378690 989237535 747349818 866586104 852225308 855760747 802563839 816385086 485662814 491624532 214132263 428070686 168570370 223599021 71305150 281615377 200052137 702248530 634698160 654249213 837577620 947752829 960407014 966053326 66037636 328498721 118215151 941888685 189219438 397281541 660312910 876302838 196141993 396470298 781977619 942636443 944447327 989583621 57117388 99887616 706786598 942131810 62780673 612619518 511180671 917459524 524142405 632332038 191807996 368785269 107021924 623117474 934550205 998633904 704379558 746864874 599415212 968127353 616122225 826165032 720135956 973634511 722169081 919365635 847866879 964465325 199872239 843163502 978478361 994108597 118878516 865625229 87430647 407476810 177033153 378646706 284133085 507235478 812653285 847164208 997813556 997940179 289854426 546916134 389578718 689067635 373880790 743603098 974304325 992066595 948206288 957486231 774234202 952272523 14454603 399308552 193620103 680824630 227566521 546423277 368018573 749679613 418670613 893773368 365446674 697583196 392946320 699985854 329170473 356876991 549265603 930388397 250737492 886812171 354380568 617250867 324329058 982737885 986791899 996792537 682285721 878816853 620942572 630191437 879277881 979117395 439930743 813193698 409725671 519783040 899254692 914129087 175160300 503555442 185889713 321050346 779312767 899257253 812217879 984443612 264571692 586427461 704671705 994894298 624636463 974405408 104575022 316278133 717735160 813696456 736694099 956397134 930296735 952729887 961488691 967487698 727050027 747941050 935926400 940347658 571749015 857132517 807888048 886008629 398841232 827902997 763772157 817563042 391573641 758873801 703634818 853586196 875170695 938926397 561842451 903488959 504725030 779938847 591211145 829239699 225526910 379621824 115589164 402215953 550787388 979417738 949670703 995974152 503102600 511031036 633280148 642871756 815139565 852504147 201862170 652953867 163567935 315182629 643704937 785397604 831812880 918529984 490654604 658919967 422334622 913998437 578521783 858939085 318546375 948085987 73601961 816642953 585554965 830770407 816406878 972749723 821691794 948139179 508411823 925082244 228699308 644725672 831283710 928208196 877977077 927864433 635340585 640652128 513257673 731181384 184917399 710561420 57095739 775281296 922867658 926063165 933936172 985786499 552699130 946280449 24711719 486516359 349162236 788599162 921543606 993580171 578971783 623262612 643977017 905067877 897016147 927701248 505819670 818272213 60289685 894297760 437293589 707494218 176826738 641633685 941469299 958506274 590094618 745211440 918619702 980667837 97611186 309233660 411781895 891445493 358901779 819480998 202737194 778613914 287660278 398270929 801478964 813352915 731703983 776379239 767975915 892545194 802971027 965468641 613536170 718809756 452187404 605408990 872831986 966548749 685073988 760906959 672348497 767220030 653253414 802064207 622049407 735598515 431905867 859941308 289831561 312929880 931715915 952862872 590475485 890542148 47526818 91139910 10475446 17430436 9888370 238980671 718396358 993026828 213428409 909184388 165884753 484486894 390375397 964349740 50606470 331950699 377511274 563295072 529242508 973240855 894362620 972881541 189836990 961577999 28408563 810856477 307173088 665093186 918159976 952160511 623278405 888135012 30202346 410273318 664837857 793906557 699296255 998958714 985569134 995223684 551599333 694010656 622116857 860639819 300132780 905153704 469025819 693434187 362920205 733626919 246107624 788428256 467461811 495195245 636794706 734499935 450552047 588452645 180805834 549819936 168546102 917360044 926795580 932593592 636031784 734600079 708393846 866539893 70106311 410906166 436861778 718066164 461652948 930030990 831924637 933746650 330259371 852862092 173661317 273843093 231832904 492585522 194292231 894764370 896583179 948872857 496946499 820260048 955164575 977479523 119478567 571135804 441547484 767608392 850317724 854865007 980959155 990007548 840596109 958058615 795658642 926525823 658909495 743691162 205992438 552460270 386728381 788247093 759480753 886498309 135603439 811714725 40847101 885502398 397366117 625582119 789264430 806509331 892904805 995027423 610184469 733575874 885488378 938431411 899280999 916641218 629498463 799029982 274965751 618706404 349103324 981842122 139661711 385436241 111621587 779622384 391566761 762103826 970228405 978743750 617030492 881680729 283964082 955328838 726597502 937615062 446766818 796171187 701757653 854413243 748834363 983126243 634123530 935759430 548976217 744593149 833535689 993596923 122236371 562177774 782347646 917174470 525170667 960345360 195440390 599204528 414224181 648670025 874563458 875231071 834900469 923942841 790130069 990445007 387506292 899771707 716750057 914782217 767661833 970606622 167223829 368569295 415851936 920205573 449560862 959173626 773247110 841154330 635616119 782710574 814484415 939989428 739600863 767112276 678871534 823788493 213645664 531220089 544164264 654072783 865511693 975241834 189893019 884570348 563386262 947759380 11974677 964953574 279129706 986875844 814702283 898196806 376960548 726929907 522641124 565404326 855180394 881173449 960159621 971499264 562606771 875093221 115182803 769433738 941477052 944432880 813706238 862064310 670169592 705752211 963040680 977707113 628299093 935689479 359801406 750738504 48489847 704965017 862850003 979222340 413153956 834040616 802588270 826413597 190113189 530459715 935136263 993769470 599745933 637007414 124425162 682472313 504842854 613925101 790340111 846163613 620102590 821974003 924008961 986457244 352733805 421129667 912777870 932167391 434729006 732862923 124502131 211343903 716779873 787748444 242358581 679137653 100575526 211043467 760300788 902681449 417429797 519005656 243540573 847194849 536887395 627668242 58828251 717571350 292577024 786876580 882149272 954039113 997268242 999765444 105313146 845939470 240534185 736199448 440154135 528559078 641886862 873082225 314499846 793908915 393322327 681740795 945524678 974368292 249004759 313071593 459895235 750195111 444842779 805124197 143283189 268092664 319288507 550926748 471185587 532251785 143918582 777860580 972458516 997111632 671738393 687754622 446936157 584967656 980247398 988682548 537197284 583775649 9790614 77503481 206519183 341644227 992726240 997593085 571145864 656200479 203809250 313675923 670842071 902460749 91157297 440629312 441840674 568013647 513682072 968035946 494068528 692256155 145139542 244164835 529192887 902237904 296558342 764956056 844934882 986747663 802189998 987659992 535139529 653571152 178773386 206748510 793841670 920167284 397229890 419976650 690425785 816606794 879466037 961824339 235187890 650330309 844672466 895311203 298548596 305646031 959573940 989276105 692071416 992861176 142485124 233686755 809375696 809552494 485002138 827316421 473074956 494852860 852859370 924553916 755123999 926765440 783896632 942743932 820759347 839326218 404627677 546365658 608972358 639469816 781516368 823238229 999434956 999594696 333185655 849331033 537246434 727310296 272848195 685024701 992004720 992189416 53334115 289506949 603615356 610700828 572507633 678044453 796764999 814427597 944144615 946990782 404716305 944278704 65754948 453290094 118844701 575132769 721883025 998864634 784922301 829140724 812864902 942560196 143162041 192482753 166441860 588496335 947073450 954305487 361560640 484716278 67565775 821160522 500695858 677100213 797722153 865926868 33015416 604382379 101557897 352474492 79813079 805903460 752149460 794196101 20688185 984024332 283514695 684334340 776041958 832128497 619526811 718107382 380990772 502866713 990293635 996675114 893035302 985911250 67666648 808269740 588706103 688844993 27500825 728846360 689520974 850662289 125367235 629791478 621882197 975468630 372592848 867446574 8923716 49699788 891107300 962402510 381904051 605926000 446478357 844503832 934343190 951877803 637043038 789695829 112380693 277278753 263589697 334885495 346080695 397498993 424856830 628361085 829915099 883930330 582280133 620604259 397607838 796955913 556039390 647042061 442473440 792036598 117097477 808045543 31129380 999277303 195936568 538604323 739453494 977806176 807676660 844487111 101811786 554400308 422950394 735468265 419134138 446918825 741848586 976895322 787870391 829827784 760427683 789435866 970326750 980992027 656374735 660357017 467650381 740028244 57410540 800630559 284290665 964094930 745685913 952364436 724680831 974957289 234730867 519915754 195533109 502164337 445344109 941005954 782093433 820946399 346519748 684538894 125706419 660445728 935031514 950153358 209799593 278851468 326617898 763319839 931478115 995803855 308539861 574397603 30938733 520354179 561801914 678056372 761093381 855910924 652322679 953141025 769821899 822776676 775203885 840977107 87451660 271347182 353212341 789503605 216382704 694274065 810435224 822165566 863016527 930011938 265368092 559516531 133061164 897638070 851136043 864890639 484239303 573800150 516957521 937031266 703834707 834505832 948362322 983352088 494135394 743324049 50725431 558331804 573528468 883129896 399638489 640860982 807821650 938996084 915254202 986867728 721371115 729550844 108527689 360009551 773494911 869771163 82050072 823023044 50161041 712092989 606031193 680798206 480930265 987496599 199811083 250902924 927256271 983777113 526846301 733367884 887743790 931037542 232638259 688474029 608441497 673055264 370479469 947483686 167605443 618442593 851866180 942523432 866769032 984219228 863740350 876677291 568672848 971874683 60870623 137698886 81493897 86600036 760161786 838550476 679073085 871065284 889012499 892588143 207516181 444042690 330684586 604279481 651271251 993555769 667865601 809461610 781514138 909444505 540974108 652950017 867372206 992034247 160257017 295653817 575284128 699501208 843867305 983106869 777840972 787184798 845030432 980649679 56970003 298365425 487035312 539070148 339770208 897618558 900733110 943644091 806340072 844117262 119497774 636284950 557511531 936852242 737997357 793690728 551312447 569584712 130893837 525505790 178166182 562517787 185495499 256076006 165032453 978584146 324159211 778597721 578235975 973095860 754832556 871488013 2328591 744452610 512254635 638657203 247968027 766811314 120288579 329778999 647736830 742987010 399444298 914909997 943721801 946441138 316003412 809886284 159082344 372171237 658731186 937087905 770877413 942456911 737518011 903746255 958506594 965818887 889114627 948184910 204102246 758159945 277685221 707846879 51220629 296088704 281605225 301021928 961748672 983580867 414303333 761738119 722629362 742992193 34344032 95606606 52161999 951909204 210756085 924514889 227427158 471683080 234818785 492088984 866533619 867604663 144668636 484341881 944420343 950699990 91587780 208279497 261397791 804997997 367273875 976980374 535502593 952046575 604674059 949409292 394614232 700945821 84886397 221350138 173754143 339835163 244452331 962825766 398790971 482608569 756951276 786485438 366001985 953639484 139405014 881840357 370327810 838994438 115508482 732020321 831136598 950953135 697978183 817437161 260942746 573146459 96977157 936972395 927696010 990216229 4019409 287892196 511143309 945148432 816521387 833152283 566112973 798531873 219457682 343316394 591597432 729234036 703021228 796306490 323140770 520670376 252011209 634727587 313906795 583706086 406311296 726068104 512624087 962458242 863472141 945138430 635407408 639080340 194370798 923002692 690398908 733829063 876510577 917886689 831069334 948092000 69449476 746613029 862228193 981200246 128298195 646296881 748231068 864792804 859203532 938606050 273623814 709016518 133896619 599130171 26296355 778917459 505374046 699864413 145904774 894286934 732384153 951506705 659843638 688684057 710690070 775319918 413362949 600353508 14297851 486419269 439236099 759472779 896360330 964384861 643231363 771429141 67633728 468664274 491635700 588062125 953133805 967723385 52055356 451578963 683681699 758525775 81426496 109155601 12970185 970548178 749361988 829303283 431970451 980644705 723872465 748981571 568473188 970375847 901498727 997076209 310058763 879782402 539430049 989898088 755453036 777972690 406722116 678388251 752745720 798026713 442821672 922912211 344305081 386791562 369129199 954552966 524417730 540540953 407514667 448822197 251091148 625410737 534252755 893410817 227666943 616984514 441604124 862619210 950367697 983281516 797219047 888971160 459146689 570766086 814122525 931069815 915923027 964113127 624434720 814219128 23129727 549562642 894025588 924741130 977538680 988169725 25623983 110191061 23456439 602730670 803394596 827744345 794301840 908599516 345943191 824415787 19458810 576176955 924734024 965287171 720477468 776920228 195912366 760334702 62163365 436805900 742254242 995912103 684041580 939897999 550963244 952545288 749751544 823981090 961956584 979778206 145591169 960930126 908092091 990425394 17041990 353139253 649939429 883460039 151922118 605076871 808849955 980760607 524694909 980213851 398398007 409507176 548663481 812403339 119001370 255861030 632772845 905767799 583067929 677429664 966282861 984260103 365494241 475147588 878521154 896606767 733585932 757208459 493456235 642266656 906738640 979919691 278865711 544620874 139493034 950897111 368857742 406367595 793441361 939334399 406120396 691426802 139475164 957083924 769441349 861103113 583653183 955971602 17212325 423931620 614065264 709526529 830882646 977113926 911156883 924648670 570489973 897782628 155272257 246828718 822060428 878926300 226087004 840147990 676156294 867080371 356023173 692712063 779918198 861706131 725798622 972176910 760983164 827477653 453309537 721066427 615151608 870197033 898299567 965466743 770021039 786835965 477017948 721190368 462289079 754871241 861482985 903806464 126125947 616500804 891903141 964977344 17614177 666388385 675140831 893868291 234390694 555103699 71831894 84675902 246053332 579340020 658513861 741038991 535391047 862153682 239262027 956328783 330052612 577517765 968260722 988430954 525410222 536464898 454992486 986820054 34750390 43277735 510647951 535453303 673643969 987510543 148146742 803554415 717218644 973494708 341423804 426989106 544286139 987494145 143565409 434103800 40154512 83585952 553547395 676389431 281983711 429010963 536495847 656277921 491809870 505657670 334276718 478001982 593260606 920216929 568357919 675576531 132008813 268960101 39613405 977971563 887980143 961986783 927933946 996115740 273898719 354756554 286879457 650024323 457545183 753017565 791955903 980970019 301791106 776762592 804731869 930052918 485854748 975324547 841405954 903882398 715119711 777950783 811043580 900916753 118865752 745186264 617064554 698130675 513157620 747458203 375989923 648991741 707528426 774205171 649505493 810340626 589831473 847890367 136552652 680677871 502626174 752394593 776446033 845893602 637425117 766834600 426182107 545733585 742056080 909466185 407668033 871422378 678560745 746919277 524428654 946476134 263753496 723117604 925187962 930379186 762288692 845223811 5634217 363556728 215103483 413266830 437872916 589061107 754640894 925916673 421916745 841935195 288895179 799336465 174982332 245082449 684732504 698242147 872325619 907888214 530062058 824885566 771780052 911467475 11155468 522513329 359083292 575384869 20324290 234841837 399768341 796273307 409358560 549362294 248619409 527189492 616205939 782366993 546494374 589571488 390775467 846401160 216767139 921584803 180437720 440655601 696656585 875063035 572509607 786565877 482081757 698504242 331667148 933622994 657173534 729361012 150832178 500114350 70634288 601012144 829821953 854310328 978272860 984138778 613437018 847688146 967327054 979605234 204966194 932554425 510652722 840764013 691856412 772805941 133445369 191798239 651317158 909897630 124729768 766816015 889072738 915660151 915598648 933953974 97179006 411917133 450766140 760311511 327839497 494612258 22959278 722738264 849755054 945822541 485391158 966938192 154945745 610572178 593077880 828347958 840746759 950016556 814381228 857614353 352048711 506388850 908981873 995921674 778379057 981234144 461070550 636274245 921259672 973737595 640108668 895051125 480229766 527594837 591169028 686703172 316130861 657226040 694215702 903365149 81783594 501147059 450385687 609178809 486896056 905224616 987165450 996771528 415318308 555102973 957875615 996519947 80310459 261174920 933967554 983373734 630187770 646263692 170586080 749636297 284108051 473412521 692045474 926321693 682190962 909374416 330615529 942262415 285453684 444104556 276266637 860444416 671525623 794471975 411801188 479005931 224626153 252468791 976963291 977876421 152915375 233004041 807074955 879533389 769007966 983697665 303868534 883681609 512840884 744258067 201249023 274399894 291296073 632724587 556943852 680510495 212839914 326153826 78117415 536026015 602993485 721997273 207684399 758145512 611518365 931610554 825758297 879065166 922704287 935785359 363118375 895758541 605941152 655051439 954643268 991177687 859435439 991828541 327466856 468304826 951517286 953717509 738357356 847348075 96969459 717882278 440316143 648038272 204220704 805272425 604936127 708397947 632870226 696315604 63179462 706793376 573584490 626905995 998028643 998476169 305667363 940640894 308748588 749827576 986800764 997525178 134094104 743095198 36876663 591362679 620770609 998323089 416868508 848446172 307835294 464837458 998474070 999749084 261987926 448234515 927636570 927850862 64663952 564132239 104229139 933200476 81380967 864238685 747193670 963413742 280735832 882615481 264780159 612293732 179332418 822285464 191691912 909007376 364283608 472613778 308624452 710483958 572038825 633298989 641136910 951184243 189049546 926263845 785170605 896171652 121912191 678096267 530428415 909997062 436147803 829980147 160745811 448959791 334145267 375158258 220936409 657728705 812899457 971520478 399503731 932553501 611610269 885843513 441970768 662769124 992472762 997458319 272919267 922018212 792511621 874094080 153040289 674521816 752917969 902163999 247065528 941870982 958275079 963157375 80814808 528830902 109194072 209788027 782985923 864893003 716092983 845553648 476914807 638784198 456099848 682817576 77410888 678173942 356451685 684165291 664560509 761094228 354596859 527461595 907066204 918248879 136141026 226771148 123296063 683773285 68910286 72392198 850809623 859203728 292379799 739172437 929241970 951873877 276767426 355456618 951971699 981037134 537078336 929036493 966274032 966824856 184328526 358655847 196429315 989730993 874183632 904996532 418391341 439172513 842969071 940760309 594657377 725811128 253156640 419866041 523603438 925232750 499294795 576659370 408218504 527466002 938538961 972398670 592681055 814030101 357723107 819416764 77746763 663180691 848784018 858197151 201344823 929949273 790308565 846425262 787882989 998945174 582880787 586710935 978120375 986333403 274134372 923498018 10215865 895228895 91167031 251104406 462114273 568648549 752735332 901133116 510110843 632814967 648206765 782806479 893383258 997868401 723141941 730283074 108567507 862733576 367786418 633415669 16051674 894388503 338589464 850133019 234738385 927853746 803317686 920129638 779066758 882098868 765805109 845326441 448447457 656533187 586053681 689716517 630947889 944593499 465119013 640247806 178564844 367363587 124273458 583526556 293453028 304302753 511616672 906209105 451876649 902259874 426587528 615746247 677528583 924068366 794641595 847271232 161412826 620338203 661389055 722182874 538022322 590146456 561424446 888846171 179581506 421223346 175081661 303410083 537270182 652247377 940891763 948531367 848998358 867185364 961063513 965857488 982606241 990469872 719064852 768666507 282413854 729799786 453235724 639871699 151311649 177899681 146445530 689621520 942816686 984358468 461807401 894933987 541666851 807784610 651129702 908046777 159834390 477197719 643227331 651013684 114750928 540138706 676140700 953280159 397421511 851401098 138380640 419884983 469200577 997062024 127666398 483793829 1555201 157933088 9011129 683694009 154403184 445584903 278249722 440256171 667479355 821972793 586348155 970125180 655437990 993213822 159798514 318950368 701380079 987697534 538023149 794860749 411510445 519235434 230794962 777107141 764005030 866342763 848571563 993612479 983588734 988425117 398244285 994572696 201124906 383588500 677200246 866822517 260756625 937899063 395612430 495196534 557672677 860023895 74651560 699054705 981731701 986399703 516214700 875837349 611510813 911918009 110755061 657333383 360717690 598109435 211167790 397635478 458986181 527747851 802964823 953837427 266440609 651079081 595444610 726780388 494311194 567158260 426162509 929858089 657636356 840514420 994170624 999109874 270552908 556246078 254414669 938003343 52100122 214145899 952725636 977005744 735371180 884453731 28119800 206510836 878107936 900276948 316374097 548833906 940140801 997264231 845281122 962496684 576277710 830026858 870710121 921860967 335709979 609343386 802788204 979850586 154070069 509236170 948485208 955872707 78022394 527448269 454945779 706572158 240781398 981990495 355386894 834058112 663437060 801740117 675547952 708123592 265769457 661603650 310097487 831646531 264357309 815753936 576242829 831084517 84201444 814317748 148631014 963724688 472893561 947490617 70285074 194649478 966928775 967854312 472517372 676559064 943737077 993901978 627136103 792180778 574650455 778821926 226998137 620326687 389371608 830576104 147235088 231311056 269243436 831151896 357396557 685548182 201703285 880109558 224700878 282281471 506659088 716896271 979912930 997044833 215717569 779714679 147593129 409689314 443769498 985998639 64843699 747777651 966701944 995128428 310096832 590332948 531372249 623845067 545727503 568128807 224186972 901467639 739045700 803198915 440532156 806144962 823760949 889224350 857973466 942150071 564015733 694486332 58215961 517299989 797761181 861491817 18892109 712501097 527576670 665258294 137099317 744382203 444898000 787905268 381989924 418514290 841295276 907168775 217459018 902580073 454547413 870055423 489790260 851319915 47083660 736286019 500973491 795464947 291845894 434190364 704926213 949486908 369546058 545985123 852467004 978295736 388014914 577521949 956736311 971575499 236965581 752000585 361482539 891579323 228815482 420604065 766662056 779502522 479553850 731686070 627921527 638422301 514457451 845632610 477040603 784526892 454083470 947648601 505633861 881150706 659480883 838300083 313976505 751300958 658561514 886133057 829934049 832369080 656699100 744181101 515619724 577011780 940695204 986260607 566350806 985669528 136771697 701628730 581243254 758968091 376257498 986836440 624101582 878119585 4304788 981438110 875718769 931828065 413976554 707170318 531914493 587814430 877350594 945310537 258499430 499457577 278649730 823568286 611880421 842018835 411770882 635486418 806008891 927389138 789604045 838256598 629407231 728248689 517795653 775664294 174439182 648340901 756688775 761476601 44210693 940886852 153304915 991785878 495385060 558122162 288787006 585170883 826885082 838680156 801821191 935714063 974805487 998098059 353997379 762246777 436327744 988212621 222384023 569533435 49243479 189198959 915124093 983706021 744647120 845255090 63532795 330710617 895533396 994342754 411239873 539800667 645316414 765269555 571812095 751731699 88849452 925646950 59014368 889077265 134331691 283609445 281825588 586654936 38698618 814511103 643900964 744206025 241328700 784124640 263001340 704499178 636825615 765989830 179366778 373757804 702672265 799372032 690285734 792823490 552295647 919072634 879443698 944147425 351333326 514989884 71663207 447884010 486044260 758995004 652589143 778099874 150057126 689821683 96357676 350502165 57598978 389279738 480744432 709721923 667906644 839067888 929325360 942982107 8745547 618619383 539245119 794794692 6318286 808881064 552712726 692203856 899023926 974131774 234008535 721698600 105293657 992101747 659123856 662988329 48182059 368941446 4865679 768665385 153017134 402780687 956571383 961502191 864413798 881575416 174286856 232134537 982859654 996345458 644798144 901690759 799519676 812693137 224838349 370086802 528240528 887632088 682590494 805002926 250403602 525217761 676993409 889432025 136776520 905378278 517181788 882637615 303754914 785837082 723439607 839351894 367287468 986168244 537156103 984409745 621243389 687312473 171764148 235770131 551313897 964000230 825997374 850489538 870676042 952362969 119057767 500572328 121938039 748963594 201738558 398103521 103624798 292908528 80777886 147701136 725474069 845890101 456277534 925436428 477605296 919816091 811851997 923505666 216403797 900280978 687287261 841442604 875217261 927407062 779593258 911205700 242379549 654528955 787022195 827071961 400921854 949556156 536952399 939064520 542612535 774810135 658102942 729610826 534156018 546473081 172322483 321851531 203989944 796089227 596579776 609661290 67192181 341346408 403909538 969493557 540953583 712924398 393509939 913620085 926550391 966447831 995928646 998871499 392533367 667678519 310264155 687519394 216900129 389771397 141975605 711253238 206065576 248956405 748943810 880121385 804054901 865148600 198039744 917840944 264843723 869837281 584420574 812751314 651630209 870148583 554625501 966617971 577137715 875136779 911911371 927665513 346418620 783369414 79747695 869493838 755424237 986272953 178214266 326121292 71052374 559157320 862364137 903877485 636081982 995237179 315995420 840823324 362036635 578884306 515311001 855845961 283333660 920390337 416451473 943743067 919347994 990523674 759170243 779611939 613961970 706715144 80206527 729350749 680932855 820608070 565790255 773063317 21498252 145668843 46854912 369858559 940013035 971950079 405885926 923247932 727901363 996107822 454416055 864858002 164003142 391914434 454282668 518906101 925894738 969865961 621774327 845685885 593538291 696718263 610605476 926848630 111172844 707778893 762438637 900136205 567529328 964341170 946328909 965303216 153282436 225672201 603466106 784380755 792303200 907956032 507265225 784485961 661806414 988410954 100485628 416217754 943874604 966189455 11268991 739996906 381552214 392586321 636501410 694119670 271558209 590201573 416766069 523382436 893675836 930326814 225400577 419785291 950056172 996627275 720634948 791237946 791992655 932196077 842066419 865858755 881116617 931390704 580830032 901735784 45549874 211536007 192730279 706561422 731379276 799769843 866003640 968388197 531109835 569290013 700012514 884241771 686161450 833191283 161982133 510355178 719709099 767438449 480622395 650894822 868213844 905478023 390620872 885678940 128049674 905879901 507995894 614479945 481330788 777570947 676173256 733678939 359509280 707544475 975697850 994969523 278641744 343183001 494126026 838819039 214755238 374726734 127099662 621543091 830334036 833886421 358278432 850202305 354706257 431024236 833241899 871362641 450553360 884332569 560891668 803719188 278380978 991683208 115296098 986527838 206121143 478720700 68254131 378905124 957546933 996092189 121585922 766646950 812450704 899193732 325335530 359267893 180181943 980808118 979273935 988799039 175780566 233139269 927797562 997681852 158372095 744537903 518400042 906648398 630792095 864701270 940608794 942308797 935799939 999179058 296940808 713099033 793594721 919401358 419019035 724116673 689668558 870283318 493050947 605910877 86775942 724052242 284273603 290259855 115325178 714632977 718783537 911690683 680085086 885109645 760872452 974774976 816046223 849580681 974262695 992123341 912728820 992809261 496398156 988332466 559660819 642958592 947657425 958902345 967369774 977208304 470692479 987273177 50551880 511488440 651700752 931873178 472478211 491205192 982552306 988777465 346593754 487847693 828582518 929431507 60539865 274947562 862081650 866163683 7602614 147817149 943694285 994343510 581357376 905456200 437356076 725922573 336430806 733916246 524630805 848260024 326997247 479673895 159357228 652572738 748957162 962087958 541339990 748915332 441567418 894149903 319226482 517101058 512112512 935524624 588461507 989791516 944697914 957151963 414128038 588597393 427353102 829854342 514797988 853929451 119396561 764813488 177017648 605363313 628486966 683201243 912501184 950456677 466540833 796315346 854824744 952772509 884481586 935473813 90461793 661825829 474207799 503447032 967584742 990492739 383951102 429260168 498313123 734653080 419703726 771256178 805154115 921701726 967283397 974691263 645334007 759550567 285486134 983864258 332792287 984212680 99498304 426676838 546397492 943483962 744291621 917366737 267783000 783063682 36120860 457015051 579823252 802990793 980831376 992521482 986091534 987456808 955063926 982221456 547454989 704851081 242030105 522708539 361882735 726087666 657884817 912975323 383269101 752066061 352748645 874339521 310040064 816272290 726646167 896621489 793969833 835720890 307597223 885819456 36080869 785430120 57496160 183784103 392230884 483902419 268319205 410660911 189267324 847093193 872812650 930228068 907297734 998913275 838065488 845955767 156497439 478556543 325017631 861308870 804423416 822731874 169914306 912196414 6677183 239486902 790301315 964664608 850072802 870573390 706707151 878695390 710711266 925162792 481800040 744523844 298919833 454430066 924730914 964726850 103034871 746844293 951569424 952539519 595189268 859215112 135298782 456194785 869001660 964717098 588743312 887708412 436087292 596896879 531130707 626215249 891472588 920504183 155517800 313541675 746147805 793105545 579323160 727663731 224641234 464258297 415524464 419008185 149528725 864820397 733147 228109231 620758302 890585477 955927948 964508500 315460350 583950810 594389702 924898295 942192109 952584785 291045788 496182663 894272638 949604161 823460432 914541764 628092142 863681458 665353540 850017232 820077558 859598147 583128371 730020241 999255805 999526260 911509986 932243194 794604500 801965640 224410339 677517650 704309294 868901471 508797388 860543551 356028287 846060178 294781777 939633506 883893113 893394847 57730451 707090045 416300637 444670355 888917523 938334487 971799245 980757743 554882215 668031367 105486587 310367523 495284067 509188803 144347945 684416539 701885511 928584396 992374640 995531247 248974907 441256464 860470456 883175661 807446892 952654699 129025724 164835821 681130676 687012553 313692278 676391663 261150521 748515926 644630628 970142546 651180920 670495126 495475731 548511338 807597557 837233737 915837112 953693285 455900830 848475325 825917818 915435160 36229625 425401328 367181158 683220098 473651917 606852880 534614871 689581804 682948437 881645461 655591738 884117169 306866150 800953642 657486686 934562522 443743657 463441561 195837248 407879620 792447379 949264546 482650417 501789152 680464454 799087659 589929867 837916109 813554473 814272880 748807779 762932252 980356076 997194104 899504855 922464141 539748685 909833258 904931428 947153239 299478523 760675447 132412367 578560821 912858125 977912404 679434949 913795096 731381963 899180883 408954004 488841674 964984 342715477 806934494 883682889 481042769 606059647 125422559 272717091 624568306 762774216 803728146 890381877 185356184 670927078 170748312 865613888 951191286 955278416 231736305 469988517 298480545 955405805 937953589 965901992 98396143 836246037 269533591 508049103 234344431 244604863 398704441 530368071 37118506 329973504 331137894 849199370 994746596 998971343 514030665 818264050 726822530 806855435 712420036 879969532 813961858 933906696 573650712 768280349 375282932 833286041 99583694 685043311 189937227 260119521 65829129 575068621 615572125 702349251 114044874 488252702 285355142 980098351 415678739 911807477 287746561 846536430 351656740 391832461 847242109 900890821 417906518 545514163 914262528 964154238 647857972 902781853 615784664 937402373 922806890 958148687 961510668 961957706 736148565 826711661 376653504 888571167 543243759 785462722 743061583 818396975 995326037 999121945 807055740 957318515 67975813 274190184 288169287 485914584 593684608 617452327 172284800 181519749 515047600 672699631 855521883 863485809 689520841 840005367 652967428 934516553 525162645 968272950 640050608 874942220 502135150 950358543 944365399 994594990 148924599 225264770 424301897 579019601 13354851 169430170 990567566 990755750 641969573 990595478 79408664 678095247 519124681 862063699 615597143 647634097 40070796 916693938 473430144 820316934 162833476 743052137 252999442 608114305 213091655 255747759 528741655 781120773 13133638 292646112 552275062 650010671 231634653 530935202 399272605 475511884 735303605 781654768 557623789 913555881 693667723 784091772 271854271 498702305 558438729 944852606 475633732 696164280 118731556 257181073 933648714 979443023 382016825 901646166 148268509 304170734 813074982 902047610 170263681 965446744 289262929 645686196 724404644 937297670 49008565 79190305 265522234 583848280 274642122 595805027 44475264 340300199 319236024 820930906 657554305 918491920 346260209 398010956 781907653 927591527 82296954 674526597 467974981 871882581 744333522 752964097 205720481 319634393 145396971 927362980 151110399 532767535 576385394 989971729 273202488 746826795 559083308 822259844 550592830 627099994 304627329 865939706 423345010 486822909 60167508 694826342 646878821 995383136 881195414 978686443 93894894 697100569 324063494 370311754 71817788 845724622 428103793 775102310 451783984 820427393 926667018 990966231 469287643 952946878 584418862 873899812 737113513 738161072 191438298 278490164 987586391 992707177 576204102 884838939 244246969 785198765 149648865 633364310 436496750 583679396 257321862 874866454 285093913 880367874 588139722 728614263 201072608 936594566 452604687 481834581 473211271 963798703 696611774 863801568 883000999 922268177 997854377 997900987 658017629 730460220 610981931 672063305 633987487 801732780 334437340 833202942 866492656 972430287 369817128 844817317 636134559 981299615 31316584 271253859 160972629 829622269 132988043 409221836 173245251 429996195 228365864 697412776 961763686 972895198 61092848 659294647 481120246 597254843 405842188 864961098 210642420 745615877 141613276 814110832 977851886 999162276 629115800 642283498 364036813 810385099 687102483 718748503 775372400 787255489 797512561 940536032 87427955 854732747 699754046 724280834 744403302 804254349 260027915 506177038 50280020 53097875 837824428 975113476 109945403 983584762 134227627 756356148 600524145 611968188 259160161 518565732 152884043 961755295 704279973 957153705 852558711 957348292 928301283 986920451 185825751 437184799 483435479 629393197 271340770 301145732 455149353 479806949 951740240 968609530 420126170 619504218 330167175 672286545 269307800 921616477 557495663 698024920 718620533 814397306 909673245 970107693 508299049 775487651 856866693 882067183 855879528 947517209 949982439 952890282 945834451 995834805 640594010 892597177 739498217 981275003 429216970 996251035 166665837 302930049 448674424 521086248 578778929 813911482 74633506 978900630 222265987 294018365 486073070 945760776 460861948 503520116 728804835 953628102 576174638 917676449 750405736 778937892 29479274 228572022 661478746 900512262 541635573 778640492 13717795 675717823 367707991 427549427 588812052 608307457 124840523 274477555 137513111 419145984 200663635 207106608 219670002 641057890 360005171 491799290 854955354 857360533 197349556 883324392 416049047 448917669 983207095 985506396 50210996 743983915 231953711 448784153 415334146 967387899 258674649 719880615 94912228 955439218 963690593 967460636 811564918 871929524 310156906 519320770 329999527 831468588 886467166 975361592 851201587 895722385 266841508 662790887 783042102 839904699 705942652 837775250 461444400 958521446 598487249 600414989 241964643 629939000 608743717 773289359 307172191 620783986 125616884 781485169 867784931 888236535 31435069 151177337 877322260 966639663 838117552 966696229 337200893 498188764 489584318 727743882 108155547 836769361 512348860 598169287 220818884 920582596 468761569 746907957 763582553 875165762 215450613 696285530 835242321 847387986 730308155 898986535 368793528 558665678 557487774 921095286 254647614 862175958 97452908 679206197 58485212 519639768 975676189 992768042 644902935 719180316 351662947 697714238 33493597 407844793 638238792 800044438 554980398 922845942 394856232 571932568 861000778 923481755 686446622 970393536 351349938 887408858 367365241 532244080 468181688 687780741 970048235 977683350 411110857 856277195 350676202 521774195 60618486 793343439 78925580 204228945 679522142 780551886 449743497 461724371 4398550 362523493 531887865 897167294 240803424 493918739 896767209 928245874 375841383 694616255 345797788 767302488 234025271 866286604 242464585 452489441 667484741 953819944 107195784 845945280 416153396 937101615 549569359 865656589 123628662 871903624 414272263 767124870 61404331 941418842 630017100 804463188 136917868 998305057 42273593 199803334 683821618 686921111 112933832 884107742 62859057 808749897 960459458 964571709 748746736 996581269 285454269 442708772 499781207 832172430 810486309 909605501 50053645 249224405 746449023 876202088 907731969 938039238 664853385 972503861 871024000 996597635 863923447 956506053 50074826 885758469 322042200 933047656 70657260 988686710 162529670 511083153 282506695 778988494 942919963 946386612 339462887 707228010 988112485 995647865 291898210 581473662 899596375 998459417 555858587 861732472 707554154 810453588 950156876 971414575 941812326 956617709 669280636 725704328 549073651 688228365 948405154 957984319 150883023 350471720 516121988 832595031 664489691 927427515 998217623 999662560 201441079 626837205 65622105 860523867 427768848 597825805 894267733 986398872 390211358 708146721 483821833 639610434 773250418 988627322 50573910 119557602 197144884 511398541 249050706 667194824 735124411 805617645 829856020 854051673 907210843 991531404 771087412 811462124 460517801 501103124 911192118 959497415 16728597 616280311 355150324 950004833 474896874 992165252 896700224 961888310 231952943 488456017 250647631 674017312 105099357 612513659 729300041 972199944 171915089 218532538 260814640 363918427 484391499 770516172 222116286 969501147 851469648 930461759 755484047 897077746 395040495 819107563 74129533 202278346 300083777 366967604 359180051 981267809 733397593 791504683 252321094 475736831 573770392 989343889 34623603 580089974 983995778 997479267 690273730 962207813 669096587 681914600 343739012 889429449 260242523 666847675 213581267 434924780 899868631 963293585 252015496 347598203 769731850 917911377 340044447 848894419 265129435 815748760 447240432 517805356 990373603 992409880 492346456 808429184 902590101 904941287 59643428 746375835 198350362 553716968 390609438 713757141 496417760 712945869 575112692 996128116 872027820 903380419 135502064 565835049 207983683 602042970 821114774 825569484 500620860 627518800 882478858 947121545 409048826 820599799 350342002 354225144 441782796 497029246 726968513 974409032 959971871 982837654 356558660 612272828 48623933 246747872 703040223 918684413 305743256 670684217 73804193 637790825 867832964 968056742 143801112 969117217 173738653 449889050 83701772 846647670 459827757 536297578 57543116 256442931 643210567 964016866 536830663 664429007 92618489 624259896 888044106 942673064 995253463 998246128 411126899 579534369 936575296 945689443 224000197 372072919 537551008 896016788 884585857 976425460 138832494 568237911 638972381 723270371 537163134 875170742 753522684 910285050 420253446 765561011 567000866 868172878 494451591 693901923 273639542 311374977 714197418 876002812 67054586 311094214 964446284 976256466 191323258 356020489 714168429 964197102 594431505 734329535 413411245 917427685 927100487 984678826 917890745 938227443 906791396 955683279 813850395 825267730 314253096 932967470 469500154 587982570 248841016 650288856 61170497 805160563 15261019 853181028 535881776 705144109 602074026 976081068 17960113 728238881 111178405 207816792 144675892 959091405 430499507 582127924 417908151 932194174 309837498 363290983 788106868 962206808 798696432 940438496 316018233 663368109 906961153 945015604 720746845 905404035 324804838 929717682 761726749 946388316 616930365 872922942 368079270 583597706 125845654 138295249 794393423 941899909 784297709 978815104 24284536 579916822 417727477 761738557 601568726 955650484 46704313 102627754 616035201 731755262 831205260 960334314 665851939 909798985 880903226 934738126 506497361 781577707 616096806 631081728 908654481 972608766 289391812 553002217 603475687 822343211 630009356 878885812 365416436 635894821 766358068 854535854 35620563 183188416 292127012 886058103 210076185 239692088 598963752 731139597 767952474 955536775 794670421 877658892 742119930 918860989 465902200 914850999 700931451 736556798 481479885 652514881 167196161 874401024 516541840 878050603 778875179 815131050 543057671 998010815 253168208 767406454 793481688 918684243 297060350 928733451 714926279 974856983 150382300 291526466 199012186 471009484 923553381 928952712 246703637 803386514 637943069 720701923 229668456 958865576 710329086 923283737 49014006 938038912 926735032 938830910 141502134 478399816 47819537 134370443 926251790 998677341 610565331 738988546 114739876 772007434 741149098 882278180 884404857 940144540 694146615 874438731 796847461 948767038 425371828 736035317 226555512 277794164 786027466 912506423 867238772 911385391 301211797 609528527 910761217 947153775 508280299 715671543 505585204 667424990 404769974 736183490 662479668 863670277 332212855 609637137 24957943 775624256 633980857 845663674 975394995 978211532 433706297 763960029 458803329 834754673 600482084 731953328 134936574 141924457 335824466 533532451 66663232 672429315 775253663 953502026 469873001 674752593 929466563 946171697 27580200 693150110 451217065 564499777 391461322 861485503 151946928 707670851 388151811 401408881 344922726 995969125 455515350 888148465 276357376 387768344 3840627 332688224 128441656 869366772 962093286 989667645 37009397 214143287 754601062 950962478 809785012 947051251 919245218 993951773 7974320 374456868 310163150 835082647 295440452 770481226 51059074 179048806 152584341 507262930 21087474 785834888 381149343 507194730 4510217 188076562 225088557 315197428 507992436 754049183 699690732 990539245 625734337 684986013 646485428 915029816 218054672 639133719 985088006 990940687 497048268 823873683 592886307 646028024 726708790 965690543 28141847 107243204 205347681 654851656 676549261 799493635 508785817 825802648 771210295 914551656 940745490 961395984 252712161 530740084 177165552 338942635 423533188 493127856 852490427 892787380 118869258 870691581 959957206 967649867 335127718 790999676 96915123 101314792 803775444 848722720 443094757 693967739 387055050 694333378 445692005 972305738 578032998 999837759 843948376 859338661 181699054 418804179 533904010 726094761 733428948 868376791 859003198 962088187 73572622 277257759 272899381 844809830 528041249 732752612 869858590 956834883 228067358 656838587 265851104 638293128 379133593 675487575 989760187 994902541 971248922 986957112 975973042 996082367 495730972 915137932 908587876 964066733 321481000 554694911 286341099 577537362 906884585 933291574 366781328 636411403 589910576 817357311 871689889 878542570 927930983 985294656 727679661 729770023 918178874 986351709 193519713 475804804 7037083 343448462 582884076 969728118 321612858 627745429 733060077 823248671 278031078 884728807 545548870 708703030 895963038 909847062 403263377 874119465 998578826 999058590 920363362 934987799 87580774 763901665 665519523 682378987 271821184 290168145 496896589 996723790 71750266 101682820 917013162 941424297 64188362 832401079 81913277 415950573 167574660 259404489 599244522 723730172 699598999 858361398 703005004 762866216 763261082 937858561 854050026 884832318 892414905 944892157 477936597 842491724 723992503 875727121 806957086 964312281 886442262 929057758 931963060 954263683 52690918 550684733 593171244 615581608 633383376 659027063 787549096 789406569 26111995 433713178 974824674 977199521 216951691 666477937 886096159 956094037 34944264 703505308 776233692 982459899 613691617 674791192 610782622 618656752 439827732 895782552 795629029 905944787 700573398 859364495 653712630 682791320 505866797 907282447 384687317 604275234 688206848 983642852 112979848 271522884 729902986 841974344 59283328 134103381 932922817 944862249 486947519 928538810 514171135 650335608 517348833 570169394 848445054 920648591 749698163 832177601 377410852 771542834 92454068 507213190 898821243 903804016 917199204 982433249 47014612 643488769 916626814 956835674 853780468 981211143 340175762 855869555 795619313 814779374 163153797 661280162 327427427 988842659 245950958 568880640 394017696 399461222 868074378 974178630 789342457 806862726 722544337 782646092 600057600 924224479 193505721 547260424 847520032 969356706 78626107 665084549 642295807 740465669 439330415 700522170 13931016 225824897 554815464 935059329 544251914 761782976 640393039 647365902 444836923 816421654 928639668 934090053 699599825 736581303 828586607 893596336 375522965 521792908 711793786 865155813 79108426 623145503 551044096 660737429 870283600 910294185 735062050 777054980 315155467 712059606 589080278 715854187 740185993 951895046 424455164 998137787 193655636 528846790 776207846 899005369 455613131 810880126 830609480 854284689 813953977 872678259 127940159 162593677 997027228 997208605 53215823 394198536 296032742 496743969 587022471 923465747 959538112 989534129 99693135 999051463 931695343 946005329 144965029 361487459 410853351 641108491 440358419 874959028 534484997 641529778 116961875 404698773 809030715 817950591 727670104 748744695 881455243 962642500 599284128 667115505 219703187 809978443 406438491 515942540 310281265 343340333 286924745 782689960 178307732 270208194 391105983 772041644 555295464 939011354 274716295 345914565 421838818 982536138 757050486 830831712 300089256 632455087 315129530 497506024 757091509 954083865 408747806 776948872 857720913 877053010 224981228 610036621 664571401 692745368 745329246 955021240 53851090 112856769 479380681 612397714 967934771 994795436 695639285 907241186 758703195 916729395 889135790 917700688 738630016 897322356 183273899 625481107 813472313 907856476 786884005 838340176 781316830 994243394 19713019 771337051 601437411 742767628 518930037 580945812 306889574 357811976 432446199 904817139 909074135 927496956 312910572 363535015 18673717 508949942 459343495 784598166 727243966 926355471 659842069 962710511 264011694 531868831 255913488 475955604 477881206 918540292 667679510 797877182 576501254 734001353 981673308 992427345 398187277 753782459 453560548 782557460 364424791 543013384 251816805 339839622 149051579 237367084 648546727 705926447 853008656 862971500 867144995 902345187 605671542 683817243 21727874 845158225 365659809 454761252 176613520 200672515 613253196 912204631 937811582 970134213 34930046 515906883 124447223 627423265 716746230 910220081 381794167 896237888 971167961 991421050 526170193 677517730 408820107 689365850 874087063 943768389 737232993 836490806 827322816 920020914 67645923 507987888 49927561 816893983 266464428 336051082 868539950 891260466 374015025 485936582 998488916 998782033 944231692 945838544 390329113 832608093 320418070 930133383 634415789 847068170 358743651 414075360 714191145 940559720 406261780 626593268 741054534 751048935 761930947 786789400 720536449 821260691 144127815 532444860 824923303 913276809 870733687 948922345 692682460 986445345 17993608 530672056 5609468 319957904 660399613 818984222 358103376 794649838 188503464 661621595 966780937 991474651 901318658 979022495 97326851 129621621 278449288 613200026 514536201 985306812 849121085 864386957 696091646 784933612 538430564 733670641 408664029 928769771 838356782 891081071 144614244 589089229 863783654 970951484 119580632 376717058 272870386 846968017 228511285 342382200 965632479 968630642 713881928 822875302 503824705 920641600 963483177 993708365 373127160 593168734 542026612 542901780 13290982 214130244 343525700 913958228 573540864 722839141 325951018 755684938 472895721 863834929 460286142 625509730 635579484 734897614 840705379 932587270 555384813 997808048 351304886 626526523 154325979 634989968 962391476 983863087 882614845 903762773 451953049 997021828 220454940 362549080 975265725 976648297 601105598 879145993 899176537 966469837 905366046 916660086 376276667 557887709 311314979 318421838 996218753 998068110 720219958 815985945 180147233 978197455 265190137 435370814 929078034 999887024 539593792 542611118 669553738 883717282 590362118 929576410 177198711 877561749 181208078 218693926 807366056 870260250 772148543 815560661 179601149 769393159 674503842 683480058 701731687 886706029 461819456 631728858 876616404 925363773 251466568 722774771 737835415 812217609 42238875 452119201 478331644 668345483 919958148 970449072 485770093 509981396 621580637 690262970 119191957 431459759 957017910 976236959 697797182 945138415 76838280 797045908 391641747 603360006 212758399 462965980 376736999 972224699 504128873 553498320 798226579 988241033 21010863 136175112 482318718 673899597 817567460 963421573 873058589 954089510 530621498 986528841 160899852 557160975 323442873 527879578 940141020 947430041 731508860 862317050 117126830 938441567 467615693 799404260 247464691 873993671 57521281 439198012 693667715 932484722 405528180 545642836 941996408 962080200 57571733 720562225 827491463 903153244 536322337 897755687 186720926 410793694 783665502 783969624 145449259 944251947 1097465 755099526 828976859 913567544 370315787 916849429 236119744 899431210 730556751 935924375 671910904 881642739 993594446 995536062 155007077 752036956 924545022 961529339 965707042 985382704 7971452 642329725 825644451 965573043 324587795 378395401 234220358 987846549 999758634 999826737 350813565 819104865 922058954 973567578 302463080 815344119 193745394 644015162 573217960 935618268 79749938 944539652 900125554 911481091 996107824 999166464 130700913 402687956 224251669 846888788 626185881 727900104 693896203 775156552 471619734 964085915 646689947 680772858 865103461 970129339 674083322 937740393 301899285 818467552 773169100 990842077 718510121 926827916 593866988 730682223 673847714 904555281 843241182 984836551 551026567 692123426 518347886 873985838 606546163 660524750 247590084 879313605 494041767 988277060 99903941 992899477 188398439 964713516 937675688 938532847 788347966 949366430 531909002 933999390 29343129 529557803 955054391 964106917 556285148 615658500 90127622 979306141 666119226 943496182 868655178 940290196 604473130 692368915 176207086 900935493 451742418 749523333 845739707 903567788 985791372 986528941 106103238 847629258 225473419 448135601 37312197 421081402 962501410 979164384 342586538 726556720 687425070 849012022 180121630 941504429 437662593 957551990 835624244 866880584 780564275 906962045 19239209 614418215 675583107 802006262 695671703 810809209 632332191 745763500 941412022 980975572 959672667 991028125 82642109 215448651 62371218 66469728 697299545 852038875 452082605 865448190 229816494 428053100 417918175 808751916 398394081 542263262 635333480 689576043 334676360 721383466 108320577 326474722 745223851 952235732 320926015 683243660 815840878 869534143 99158002 251317403 163389110 957073353 578231139 935617738 417081266 578853837 112000599 876525931 888379825 981639059 972095544 981702287 702734021 818122527 708198443 825807274 486150669 547932329 450489750 886205761 603762382 952193978 355036778 663084408 593933864 677660846 515808366 981730946 930280610 993888733 49334463 883612891 922683314 987931894 995847620 998715985 252681505 560854513 409148138 633431931 609929606 796737494 175948694 461516032 603681087 762144426 679230679 990287175 611409475 753260242 911856463 993672906 463279723 766686941 24548051 314509336 858893211 886141204 769065820 960782565 661569332 665255267 517992329 618888746 514812883 819896419 927250149 967481488 656729850 789578724 747939576 956317680 561916137 663283359 750650341 924792541 751010685 977598697 47624259 711344410 779315430 960483983 569791101 891033560 574367416 807559946 525156136 828431675 436710633 878322353 837647661 956279056 971926550 987134039 197244315 905506959 506276605 743200229 19563646 959183182 872552623 927752501 890621354 982045024 465888508 626949628 994505202 997160153 373211604 661144931 196366132 958718501 830797660 960285544 400273956 436643138 219124132 931135959 141917861 220692132 977749274 980011884 465902650 651171965 994247111 997799703 116160641 762652316 38753950 958069535 258684872 284217267 161965116 753608136 390478426 464386705 20808685 85214860 656149462 939639299 51550875 699808666 585241864 628239003 671556332 770777015 876146195 957330483 219285584 644203869 886874619 898328389 787058810 942941090 839307990 917467384 803445929 962977336 572344453 971498791 69105673 787847361 809337406 837627195 353281896 909338261 875144931 929052048 518450515 726096266 613347094 759047965 820506224 895058519 705043979 940270607 126660537 309246682 902338033 986257097 929339741 935979977 436225000 914376099 205454163 525729123 617996448 657838243 662511184 936453593 19915124 778014193 635748303 737390054 336351958 757513584 448289639 921321192 866387452 896325348 971665104 995762102 71504433 944382883 496862270 994342408 294169274 956700085 679317357 814133709 273446469 608657744 79484574 860573076 841726813 936953389 574913334 638451293 646662481 832185105 6961456 549091162 834853471 961779110 56196367 359413152 634740388 716276070 810325723 893957552 583228907 936831858 47616019 192414700 539586835 817837715 296986324 338219259 987411425 989894144 560750213 808372010 213622508 836518692 722674446 853246660 354270077 535329549 869603203 882493516 538682750 922176668 952087207 978816712 796935036 992404299 567068665 949066042 106195470 884741957 461076181 722229243 731088409 786474539 143774627 425377702 722668264 735025864 585981072 594511408 877116176 941568784 293326390 689264648 669689173 725889953 173109258 869926451 877093273 961550944 116745827 933628126 299506948 936601015 642898717 738461611 386334117 507168638 271408309 938963137 978146842 980917196 141383926 738532550 257064153 338771293 321380665 800002717 635974220 813845416 685436049 973966749 482557267 949373904 607813451 824267300 285392177 410467536 598029219 748846044 957928553 977284558 42206548 497494096 237317077 531132592 104956621 785004927 270180470 541771123 656674050 992373180 388465536 733514005 326970388 407735261 9801964 90909303 348571521 414332214 291058213 550257309 478435115 758641461 643989243 966939962 448881672 651335204 422882982 713301184 215405649 871453081 653257637 758566039 933563786 981159590 894733068 941767140 734202491 956574105 661722371 978138837 78103114 355867327 604121204 767706273 341402769 421275644 670396873 789438605 683456940 777800381 7981159 107961628 674169599 877703104 717020573 736247979 382807548 994900929 947907333 994445145 196348360 819983526 569591036 713132640 391685142 613978987 473639558 518881468 107641640 407154174 441696731 783065870 225819780 868497489 452951224 606521799 833964663 978560162 189448689 445045865 909172887 974784991 446898605 538577165 41835762 402400341 467865015 754863416 3086796 455116782 235399947 980366875 179074063 287686728 360339928 522303723 999469507 999704011 951558581 965762062 71701275 405476475 255285782 722143013 362042369 372360803 697375575 959412807 526246626 903220147 244141024 706904484 592268819 622794071 175628317 960750127 114717556 459832662 81387934 337765031 818137785 907304714 6912740 366170342 27380942 639940108 245552805 525819143 138538987 666200716 330465980 401585988 587844293 796936468 811206861 901786745 883337459 933937474 596217144 801478678 99926253 286774731 93454698 134334557 609282394 721097300 480238630 889108085 817899189 864305169 249709132 690975638 649393054 859945850 897698661 961837399 657896162 974047790 535912478 845719842 445985888 773448848 693407811 987417021 805046027 952872485 825671568 832027846 34117557 658014194 209069382 994896978 869793067 946476483 865786429 873010305 178661566 557297439 844654220 920306876 372961446 484810364 773956330 949086686 739598563 940190558 405850048 888786452 962183399 976047806 936846898 995604777 350987951 393121434 447109768 961686065 927222383 953441425 422303580 753490049 559389596 876662542 339433040 505768717 121869084 444736822 504230710 621948634 165900913 268769184 162861170 302200406 692872469 776096194 196041348 395263673 540830369 543829578 987467810 989747538 823794306 843374785 906427296 964341934 58446428 925623850 87548140 793643029 270613688 680159580 67974472 941064270 315890563 936748162 935269550 955661980 82345485 91690434 235307604 657623374 393458217 911174340 411462705 587960231 278099167 905279747 540984412 810324917 864436326 902599297 70481085 418976159 286048758 509938046 461364453 840386439 605805893 732989302 987668811 989122913 789993593 959949437 153231599 532757256 300240342 640308892 501242858 655806923 709454308 900614893 812933480 978814381 563665431 595572360 397769731 769173947 606521850 654040279 852570287 885635185 791359280 852998569 209208712 741265169 928135079 973966155 485424943 625953425 252685115 501371173 291452562 729414879 267483728 675153507 522576506 942057104 970740085 977273390 74476081 984013909 878707979 951350460 751585841 790106150 233054665 921244226 659291576 752159828 768718720 988271837 611594347 641388765 64510045 165540092 683942413 746150590 624184512 851292495 271983076 671389252 788061588 806537567 857097439 900220537 883276978 901790383 401028902 524939266 302393123 993902699 982582398 997967071 698096110 756789858 43561753 715462724 463638332 930051527 475867430 560519457 38026413 556966062 814933665 902582854 382433504 937057299 874918715 889990834 264487193 796664566 250105061 644083972 561457928 981007007 257457382 458580553 220593328 391142251 593953726 848671064 122224049 890335559 507981734 741935896 368854573 744487126 52922238 512209021 180622317 546961798 163584844 965616198 704690926 924060729 754760026 901776189 765767640 946010859 919948248 929763852 964238590 970362353 245567535 992362086 424988514 437356523 657410644 819031480 684447146 744232981 148217869 741883109 507780852 868053348 278264749 366522431 454380118 761875493 168775842 712005523 839110240 887170959 597901083 659446939 822877685 894973746 270495152 954723553 95073960 677716821 474873123 489236896 148730152 455716229 496777534 792760407 17419875 232074427 716534085 887604672 322160398 986573356 821904265 829406968 729457269 988142319 738372096 871025662 723562852 795071453 283361072 469239238 347255233 593232253 698210365 720506854 61512533 945556736 585462716 894058891 264509876 699549191 377836941 975931597 479080645 846512044 588946945 744117789 991511506 996803998 254668807 359005151 9962584 462278807 125427733 162457891 398303279 426297411 228155157 778460020 302273930 491708872 54997843 296469916 284604782 990256976 355367595 384501185 136571605 215666624 105946249 624148172 929278648 982269043 559761649 639370543 90902443 414162441 673800464 730076602 611021586 902203434 908156527 948301225 724212581 814738468 173111877 346973911 991292308 993285389 323783987 392982234 284989592 709234213 869677126 889875912 753266708 939846271 331829805 872609780 849696202 897947215 433632899 929490973 128643452 911471808 103719597 429614689 291760937 830637791 440440022 951503332 724037430 943178408 72928347 959666060 626864837 983618771 276507234 968513733 826982693 935775294 825070399 932184743 883921030 944696953 433421818 709728903 940607875 973364037 791695165 981211068 749409633 766656799 745989648 975927875 909786124 991606780 732594455 922539182 934266005 972345100 493162778 698784386 5946123 850655155 447237852 719796413 851386090 873053512 724953978 992041759 812511405 994272144 274174099 406726605 923533579 994785464 682114834 965493614 416296736 833633526 138810988 298502583 387319530 782714402 435823421 664045307 248015778 645807424 341991176 625786006 215740039 449583063 534783269 743210611 976695027 993243280 689187787 710202030 902189136 997682145 549446640 628942399 675129195 947977428 177375325 340799388 595277763 649895099 994904035 995005717 115085054 955731904 913807229 927974094 995237224 995829897 927181768 986254563 268905862 324113166 131383737 308587859 194823183 561781690 378726779 569067150 256533546 682821221 592041282 799824272 186990354 767508217 549917540 628333164 656832033 748277292 771317246 961807561 366423539 945823095 662969881 885129919 258905131 811107913 45857949 423352572 646181017 893898206 572123840 625042831 420931525 821957448 604562409 638570360 895939602 902049925 962536673 974465141 66173643 421869118 789819961 917458783 721310990 755500615 641286912 748001767 888257754 951283977 40197057 769510490 787812752 997836542 190096421 688555668 657868942 903484444 150053685 814941417 295311290 947263966 731851952 794410527 986930693 992319779 666608916 927457589 231744641 768023385 925651113 950655642 336136387 474534136 723741320 782731586 73245879 91934627 224325444 388920987 981593800 988857300 375510670 840249585 182162523 464551780 814801407 996127365 807966489 881896337 260968702 473780047 446207110 450796373 666086039 897166846 289445984 775963000 729792256 825178153 312971251 787190981 251360435 322154919 308318331 988469637 177438267 494381307 415803849 710913659 599935453 601433160 411890225 848719912 739140973 881300143 447782733 822677074 644602682 862124104 389964789 688805953 3174342 645375163 101065840 773174124 11272512 362327460 665994974 936470166 764244968 815402298 388518780 407080075 747210152 804297547 325024200 529559666 326321889 773183170 174164744 812247543 639921729 884110406 602781597 688989699 213326839 396327993 676729378 835579727 684698407 789186019 899165982 909537481 3817750 640702466 433788719 892965087 281185364 890151243 920649280 948901983 657085120 711493012 605569513 715427299 456806788 504719334 333268317 627439770 303587323 681586243 117306768 351745316 660181576 952019065 630388439 970949398 970430314 990871048 723558298 877057042 638974010 863786193 662561562 887865146 913481508 958277171 136705754 317552220 431442305 718769708 933975814 936819364 876429774 880004857 708875012 974072912 415372839 958133220 534271571 881426120 287595296 664087562 480206136 604652708 912633086 981609224 135617159 862223134 230049163 234920791 466446946 931187628 760921997 798479315 72901350 887892519 801670895 875624722 315879947 578881956 796282099 837600837 494414487 723049543 644615324 896385230 796281501 815686292 784492694 855664981 608589553 631148413 545928546 623770569 251623050 638302228 633844318 818220928 249916107 800229037 84073778 720883500 668717670 690989897 462587826 481553179 117348309 663096920 197056758 659861392 226001000 674656807 775739894 904037201 102448744 249392389 477010643 902083810 609373152 822264431 65151848 554429405 877582588 904789898 960489553 967822123 795369905 941419042 715213309 840678078 861916988 913061026 827927364 886287144 697111618 986938024 846670390 923544794 167367823 881823563 786968908 874973091 337531915 549083514 438158429 973975911 823380853 900424028 496351025 924774686 470635424 561237774 823134655 943860766 290355263 918281658 824916674 827179976 251743685 386189506 151138876 762777968 439978232 595513031 651424006 793815354 943660141 982197646 132529398 475603192 128907404 494578993 201378610 521274017 52385970 440625834 767947556 936511649 556278938 853157361 134087719 643477874 130046178 821171857 364681893 945316150 369647015 491111665 665999071 966811473 488159579 625412936 904925872 917232925 27355025 221420338 678515920 902253169 961981658 998982301 796295566 901239998 212289237 631793631 919618068 998361002 244933673 957518202 120559147 734152135 870581572 884338304 89244911 473526832 545566774 726135632 375072239 948064475 68298413 763076400 547391320 833099970 564182844 612510490 48354107 243892007 724256566 913766057 522725492 996758550 429822169 874232683 781144671 941217571 588510205 591905308 4065275 788495142 431285675 597428592 309361260 722678897 799225908 905540511 343742457 396865089 895024453 933931260 884140972 927176121 908242605 982315920 40313707 777539517 175741376 303451687 952746554 978161602 864049100 898514425 436142508 815528494 256747237 586279833 447278188 922219118 427790428 519618808 603605424 614872023 458671146 658476349 449412214 552730337 20091128 494424545 160554545 659865972 290923986 895168498 901680303 972758083 504575132 955139458 249838002 280432965 520514864 938184262 330071130 742049320 239549083 819390021 683785840 835037700 634397087 959822512 458291830 775534391 454192847 851808313 295611983 966153721 760104882 964940952 902050512 908044265 803013824 903651064 717963847 977893263 193718282 437081457 159499260 775175578 982638353 990099090 640800953 839830148 301801936 611453163 338540727 891336344 478075280 726698478 138587404 618560030 212018430 431064537 594254593 968930083 975987482 984124264 750835485 872380523 624895184 871925961 590322470 726943224 616823686 665463517 317322633 740357409 49733100 105147434 819166489 883572330 827407857 829513877 702104507 781053412 645635068 812489758 429790100 926357934 433532162 985180255 792586649 893271565 65401510 66016666 882077642 923032917 16868979 983800155 27118604 296658166 719401816 795431595 563480000 922763355 796927012 984666266 636511871 737166690 673929718 757093017 446517799 525368457 269929015 892809899 568229513 934449462 713544218 970205468 201523080 484236986 111878780 354138469 291547970 717927416 633672930 986060758 323802545 548696988 103850191 135666096 231226543 531569621 128267051 429448766 754787720 859091484 400393418 620319430 743766554 804830662 31343417 929047205 311486290 694976953 394824156 474960337 819157113 902228459 58163640 612084048 398800301 451152072 608667582 704072189 297161548 728760583 460574127 728530197 169363 366209335 764349778 786454059 978988674 980463959 945768942 984039373 444784269 526100793 982758695 982837889 434702454 993820978 908537638 971624804 3418602 438675172 31698575 171869354 97616721 685922536 662162742 864669393 667520274 792683408 796830336 864572269 334462329 759051554 849968167 918357118 239537499 293477480 60397952 987720126 240047093 344282030 567051426 692894435 899033022 982766194 379597145 829176271 995880113 998422196 256496885 796931171 960733818 974856952 444409799 923006982 287488667 784760794 225878745 960709500 913790204 947605736 726118519 823498704 332121459 583966120 407390066 531266967 384392095 892438480 625222846 688487445 64860746 157354724 623346916 926902018 426261536 464908761 45742761 510862148 991764449 995171108 992729400 997545777 942882946 992658460 267153344 447217394 670559626 894737994 542437663 567749947 536055194 979603626 353668317 858046749 776358982 909287839 788723263 836660260 272924461 566119207 515507217 699291649 837249908 939936235 814719434 834213008 286343754 364333502 840259559 946320497 552537370 696965234 835915586 915515567 234044990 551309235 968601322 996817989 113023943 176160670 86286177 911032891 144863484 964437896 554404965 592584653 613692830 978005399 629381785 639010783 379375936 685664175 503161675 781006740 579380534 960498034 283272783 303066854 221983786 430319301 507334867 764248274 542597292 864252337 216098210 767152574 447605596 957703982 518817588 545168055 269650033 774956804 851244470 986928031 203924385 388678172 587310619 944078754 240507039 332189893 23572220 349699310 248527270 951236905 8447224 460800830 503177390 980934158 968839079 979891390 207254410 700008402 373220390 868610350 844901767 899816998 361620637 778482708 18447556 365730449 687835551 783900467 176525857 482470706 813330806 871246868 221993007 431711471 830417828 948445478 268826408 810604837 97950223 844297657 239152604 523727898 785765344 807119821 127199339 227426925 779978995 834575396 951381784 975646229 986303710 987042672 562962224 697364958 949334368 985212693 234147962 360722438 11215943 29971199 301170862 639037189 488079530 710349689 19122851 599316707 873500590 885555591 462069356 536850164 228425626 439033511 423816631 605193904 112017729 222489269 714878056 894413684 847658905 973609115 528550497 635280355 610705973 750954453 819208710 985766514 928502805 960422361 648695123 752929328 95994156 644149215 552759280 939088564 293446064 300487243 682747869 919589634 276372670 632093426 246471360 891611406 610593234 675714378 222911238 375669273 37704073 803902561 227700155 741767483 522734401 879877180 911257019 954861442 495690143 572186363 801059834 977170970 649210180 936439330 76738887 314079627 364138035 840644453 90322906 344344843 108211241 648965623 308819069 745560558 666792466 791977841 944381012 995517590 629614546 946125167 480559822 720760400 750170691 834894916 548234081 961168170 737876599 854293303 133287161 582327532 653049646 920879223 208712790 228192627 456318386 705135210 436838513 821243956 491511034 733215559 974110419 994541354 40254362 513696562 156592651 934216785 24815033 502382571 41831573 334174722 611578821 724243068 303888185 682657416 517729252 783750808 310992239 770305546 677893874 878240156 905402972 924685801 924342575 938429921 31267056 139093472 108026803 563755915 439630353 743532687 337167025 396649857 337182702 972053476 691326978 959417262 769425440 956035377 3566543 723020559 462975552 900020968 148563697 482920303 385679439 840921677 893173046 960028973 744998278 942401795 658382501 882470447 674771952 853461653 30777194 765406060 842551432 891246156 679547391 717904930 546028027 900934512 815791979 827820462 723911212 893398630 132217206 672694271 908669298 993469600 840672706 858790336 256763223 741241525 681384575 794404036 551808697 961419755 82062599 94139819 669100553 832646564 682474196 856940676 361379831 615466388 820516225 992632503 157308474 628938473 85949243 755966642 217609770 803807072 827896469 883962430 211545787 409298488 761067618 915544712 648220557 850737617 223587775 977102264 687817324 868316327 649337460 888965911 836047134 953406634 936435875 947590206 205888420 760073551 294372417 624395755 512466456 612423658 497041258 556404051 36270168 619390924 899264092 914989902 414395316 989132015 197690114 270468490 899949306 952355330 870554795 970778351 148284104 936805666 178786725 239837998 403747888 992414274 480476802 709951705 785670412 912618364 315706919 612144833 31795958 275806118 684535725 985701210 230415520 764254980 521970916 745944667 301262510 374067709 571497641 750777683 358046969 722911708 944577398 987033810 863358243 968864168 867207618 999192487 63667298 277233058 226916201 956984833 27463970 395723900 49182700 372408798 754030086 819225380 331441284 861509842 545384139 733744922 201402069 271164734 261747052 600318530 45626628 383697274 21834619 984915091 407410976 736883197 747810800 803665048 348866694 961311425 337979013 991748061 968053535 969719831 27674759 740072810 691365352 970781941 350192559 650759002 641978545 813106150 636638312 873719661 343555429 895305373 140028846 387533812 543744259 751333360 392713450 560572632 544867235 970325955 455437211 506554559 998298734 998331518 444688738 701975081 928881655 937772082 771345842 951908364 225291060 865010696 352286592 733596605 586982846 601778806 568470550 675372970 103871489 596770384 90608945 509578630 45109453 442431218 131560130 581552932 948085851 972332987 145732753 718251044 489483669 669287990 701559147 978345825 747367025 763486694 234604116 441099822 498645769 505223661 775433333 990808081 17753530 669056116 553165530 744794423 40249909 809326877 938437206 997377247 156345797 685828378 209898462 910498351 409581464 986913791 212847349 711764884 313479619 777181242 605141892 921644560 619824596 844541682 586869534 817496767 711272042 760478634 239458346 355208456 152620071 549242112 797345139 851705252 186638410 664597548 241367151 637525598 906627789 911748593 81560101 631394060 258542470 316939920 360759742 722382012 880476538 981098057 531965343 782610327 818267989 942019314 258607803 925657532 693524674 977882921 310452969 656816555 874220580 938028740 415714383 724164692 661109817 949676613 41797458 43128192 796285699 915631313 116890585 499685956 573324669 592287077 312357042 852787982 482041643 897857456 881377671 937505652 302986683 418104929 187066664 877534210 105053825 299962660 192099117 729804476 580504577 898837669 240805335 606393006 832548545 935534505 826161323 909434750 641119020 793877097 974741481 980430765 511950370 644981420 384323733 384882126 897257018 941390271 327877101 495424071 896965253 962940822 726394523 798865428 926903262 933302305 483611072 608121892 797859842 928438062 456366899 833425430 390002924 719624523 285150558 772782682 792095214 804975676 143579770 352988710 561735604 821333945 715810028 893303804 291093148 434237427 911641492 933119217 916201476 977265563 834011866 854213984 326796582 873465369 384913027 453713043 213936498 587999973 958607799 986760722 782156671 876214341 354918874 878549809 571267108 842524485 904478018 941627009 100386137 551444700 208327275 807146559 539438500 777724377 995857852 999959272 810597184 850774814 56793546 795758712 632087621 691936155 877566963 927790428 770236001 848221748 2896830 992938233 295561015 376231798 546653985 827453465 703257664 703962922 740291471 934804685 895468331 917632362 38498278 49462306 406554410 449774915 153899030 930110530 4191290 552731469 410808684 828546752 476171946 532731618 574655860 865780009 639991516 765962007 173161951 971598492 321850688 686282314 127905701 263685036 934500083 987451492 628360322 719648158 277050025 818079438 288483481 408700178 460896571 526997932 550788700 861356831 162589605 267283015 904054254 931925870 420405748 706928026 141149907 905694554 512893374 532754684 937351304 991308019 335136271 407955622 451352212 451834440 708722816 808201868 139942510 642452341 867662945 888760945 714084107 904133860 17913970 411685002 913175370 988681733 250171475 341080490 148092036 514004574 146877850 211974547 374007359 409698195 112330573 215770601 526794137 949997504 620587905 863469651 396473982 715471820 403149272 988001210 566933320 924238072 380132977 676407788 225846453 779676239 332438936 725994455 152370183 634887778 905755889 997818081 278253455 717117263 786908274 994255939 482858991 992265555 754498501 911862262 511428069 927937710 207904684 492246039 596035726 883600989 452681391 763917898 965862081 989460661 876928655 951678019 164877155 210485117 14249316 450527210 914124204 940465876 312259953 697273604 120928336 950082383 512011351 586980882 259695661 307366542 795871219 951902236 613495092 713743405 529345681 739653268 97618903 566254778 647742860 874253040 756027686 867089589 571738712 617224712 907993855 915702000 508123586 963364078 515921592 690467532 621668357 984332155 286159977 297304438 540536996 919461138 275762913 375920693 955480968 964435093 568937289 994008822 988591313 990053598 37501905 648668608 765175272 908648012 658855454 707293524 605327974 650536480 624769613 942790411 850374889 949349905 365838206 662311574 391594483 864418511 251566009 740284977 36725161 411058143 380985324 738005898 909332564 943394672 863368648 986209733 595051494 866769482 2785266 345429735 873646821 977422465 666497057 848250596 201181918 348044282 555012770 769003808 384864821 943125717 887063557 991573390 446047205 803020636 937092907 986326317 826303483 850367257 838547034 876245516 104169966 188462607 636842411 740025233 709960371 876202566 925487890 955548678 515205405 928762397 546134533 893081536 408047762 525065622 549322556 791379782 705663683 994979573 817618771 927041008 546035419 774341819 311357460 607307078 904885382 963680618 826192549 924489299 315489297 788905536 432981101 608642954 410966938 939934091 47502755 61663700 986845219 995286486 685361494 992558900 946067646 970752593 513494353 725551702 631643207 928405865 759954991 827310379 922663761 948332931 638178829 752158867 323801110 477611318 167606469 320101644 525977315 752487426 723301259 861347187 577403938 811890146 847377436 885598842 937386630 980382136 199934793 967833079 869628020 947925987 23023986 60773890 874127861 931898586 465831470 976291061 256345201 327671865 410086333 930706431 407096877 781067162 40225134 254204172 384221223 702407208 764448622 839994997 914075818 969753073 369058613 458192906 888328670 928646128 363578350 908244803 787193827 877930528 72815216 76794320 585155141 744101888 619233180 768352201 330609386 618349604 530009364 929712294 394968980 629371689 204631065 790569553 759277174 925240660 474194976 958221429 819059723 835578573 66555576 258048849 356911057 640243328 36955627 600993330 736839712 817142112 854814483 864114262 956093707 992646481 592236224 698577912 681006501 943471839 499824217 573815928 407780040 632182056 974530001 995376001 363213582 396566306 946264152 983342398 389008350 864609901 610062974 689040831 235739986 320590798 785523954 931274059 534308105 959321150 228157494 390611202 907219206 984151010 496768601 643259302 542190902 548583717 210953329 799386137 325797989 744884025 167711367 566736365 774283324 825371402 993782850 994713050 432896998 565542733 391640485 760590177 772200208 833225380 670220501 878677303 437122887 667278295 571153973 890915216 994021553 998808340 532153373 789431082 509473309 654946133 913863907 931642090 567172409 744792649 462928868 544623246 790018274 838371513 857849866 944021161 150451314 332770121 283177416 876398129 130373199 493349830 565519636 953284899 214047913 259522873 446116021 470507075 490910524 641980266 797379508 915631771 512739549 983150037 392515351 403304009 588010979 761129564 849164072 871344902 314177470 982208036 740766777 833270085 199419253 802399509 514915858 712346453 427787571 785663873 331896138 613488773 78448953 225574328 333323444 692526021 327376556 569244510 639985612 671681730 457549501 768062104 271274473 931205576 849155994 898360970 478590406 744884772 891102165 982781120 821930652 860639768 934288821 940635421 69808959 349419517 523800964 891471634 208401852 879608937 70747571 968008634 941770514 998163689 776506864 940052785 764356748 993566353 756409139 827778357 927176188 968123013 603551273 891779470 799174472 833393177 252683912 937808973 694476250 743218839 488106548 817576530 769878657 788504044 516239278 823357114 849096319 889742919 42196210 491383995 868740559 890430218 327381959 535252450 230075895 255949847 206355033 455612027 558982722 678008928 530672810 616101158 373896707 500888882 143573922 194772551 385412560 990084169 979536524 997568758 867419898 968500723 274363727 480752488 120096995 758652148 369111448 788859276 467561386 938615155 399784645 947804238 588265580 666283216 453046172 873145352 943546090 948695068 416072248 796934658 629745234 886430560 111275453 778983809 361370631 441290432 471940160 898345480 895005489 953219910 751302845 854426166 692529014 896331984 527904059 789527448 804273808 813446599 472882273 488014905 603836063 777298756 210156563 502722953 952277657 993030889 335673074 888931301 85008679 646748556 793129475 954079188 614997675 941142152 519541499 743317424 114737305 149851526 42836347 170407902 824911659 954921202 330214215 378096180 925309106 974276523 458029951 483876674 192763358 743973597 562267807 776777997 572683173 960542319 13160859 678384403 328117308 821715447 220377779 548586029 510183190 510898135 332312293 999525386 405584511 440964738 432670390 469934890 707305691 807802327 115049315 840643405 752580155 895037474 983313455 996843057 482898947 979912844 805925332 973698290 722860211 811506228 549724309 620168669 998536593 998786627 426141562 823664028 140426157 716456868 254305895 593685680 495652397 919007703 228574406 684694621 457777743 513594894 546850132 779650396 847655770 977506355 650412764 769955866 988667370 997513224 661155525 769623797 577325668 579848627 668808566 861675502 800360976 839518911 277895826 295151564 482740315 906564840 57062922 121171853 824907812 941670313 46134612 55550435 867330003 912721296 86872251 598210454 333041159 906711450 834271111 964883122 701421832 881367542 897137968 993572138 390862825 411197102 983121634 994036547 814903226 951621927 524599442 757347903 303511759 704567660 321143988 975592096 692957233 900846330 664270482 701709273 928556141 943544342 166935177 856001428 118104068 269127345 25117451 841589578 605822735 743511832 279408825 397708551 672868888 916875839 590884892 862310466 650852392 889990910 434128053 761665851 868548378 967595682 209686332 229908341 29092758 581537965 594089815 619361112 238315006 725427205 692601383 947510177 240584325 460263207 749427296 793700976 678969153 769533283 107846752 931080335 935969225 952864426 446101678 630019741 786654881 965275095 480884739 625123843 518797549 810672411 334637471 829533686 975702468 992329137 240675513 734418929 989933456 993585535 183243924 535097768 638704728 667197237 49417066 410475910 187939452 347361582 872647907 901363341 20302865 448797015 557309134 678317915 601634904 716475109 404373237 893330170 968231565 995192158 304591838 967072766 654837167 659503663 746318466 808704195 779152445 974817479 704556082 841847226 422859193 530486352 104016400 575482272 797962622 991442119 244503265 300797380 252331189 401943896 643226341 708483961 353219638 873544188 425891863 529650544 190513892 961488750 101746898 239358860 775665706 787019677 487218433 495088198 163143376 333362545 261236049 588914159 607689389 916478243 427982761 887920562 122582182 441972219 394033876 811073932 73326892 546707205 358568254 775168161 138793842 176308161 362410378 642714145 128295363 429519284 982972384 988991072 163641254 827938794 986131212 994151716 757404337 906657237 354854224 538761227 506672133 546821315 551719330 870321729 929711403 951593468 285475386 724460072 860361561 950699884 279142955 455368074 183162208 592022754 70101144 953515408 787473064 856718404 654281288 928817294 409637876 461899839 674144355 744498404 889105183 949273209 921245939 924943800 226051854 559233585 477779537 994971409 210775588 231061995 998868672 999239374 883771793 931417659 526658206 650265659 374226408 385674308 623136021 806840003 937452950 969123709 160125113 802983532 537208042 984953685 787175727 874688929 107263560 296098845 257049367 796032988 606681626 772993870 374784432 845935210 401319800 982040378 718008536 996322681 387373439 503169213 672349199 770057138 957824398 990842771 14819063 854788821 40774081 923387650 249072810 632292854 175189604 729403078 684280166 817026432 703458157 897432564 16105862 139422481 403380545 613391032 408421004 659294882 59902875 176217972 933437193 993857070 897240292 968046189 69202427 861902278 241558627 369134041 768833380 983435100 944509061 975304039 764043532 875946262 684317719 871761944 614520970 840852041 731913002 863260446 716787053 977514068 474712204 965712478 468154062 652938830 210779212 315253077 160177112 273626317 877090777 928662902 704433121 782537276 24067910 315955134 210626543 967584490 265572311 978914929 544268885 847453099 288788821 528518439 623453460 944482623 82974125 406478149 817371595 853135270 252912772 854362798 982818997 986409914 186141948 901909976 905609467 992437290 758252878 875345272 978544130 990204868 836131330 838647808 376285955 967172005 32896654 414464742 375396752 886391867 595721189 957916947 43017208 923881456 907254718 923200898 736969756 820431204 991001758 995432833 223259300 672693350 923612924 956496871 7078818 98889096 815414107 848176474 123052111 792207473 802080047 858468211 732089166 915713841 25249697 510445414 787197334 916644278 792252775 811952850 931108696 968232372 753362117 872841006 723419307 777817059 861110236 915901104 243454837 515844588 444014364 810771830 504300649 989540657 913380580 993788178 525606847 668800540 629689816 724783421 830173501 901691695 491629539 969979094 208668780 266440703 533069862 653157951 703283764 954404635 659031102 809285200 19406485 559731366 124157008 196587597 86778697 804309366 907977347 960110607 147844081 636581573 872198810 978962683 516972642 631143295 744731193 818104067 886239485 923899732 887408952 902042088 965205690 982399446 76194898 410069474 268889182 740316883 208088729 728689354 404996192 511392853 65990971 75625060 928941965 973636092 251372053 354506847 472620682 912539876 345374135 475519659 579708328 755790256 885126603 925425400 830681559 910439337 607077565 995084383 740773442 784992727 401895271 846087970 864223003 959527458 660383689 942568001 150073811 467422744 738440737 808846606 926123489 946605143 157679671 690300744 262801333 968794720 541995796 565578340 543629512 613603179 791794336 971617059 558354698 762728968 232274604 895288897 495486483 834275055 169275204 596627748 940427848 994639703 31371907 405279913 62161858 445033580 841564386 850928924 368801877 385780334 270190687 778205956 928023135 981453891 14081181 586317956 525307439 533479362 661451981 780647861 153331873 352061731 423042016 425158092 744364808 802298591 253012378 486138204 296581788 390809096 582459033 731280703 559498526 571051109 399915395 844422036 132391890 943114257 137949806 547325200 261258191 951907627 306610680 402439711 989479753 993857286 914424442 994743658 117901554 671449497 744632373 972396370 657518371 921967615 207810894 965027132 172282594 425329119 271098254 793884478 848617652 921147532 938893712 946690172 409617078 580190091 243745253 661279099 122949726 172835491 799846656 981515554 379046161 403024470 293981551 358176435 279897766 364499115 343220996 499830668 334153024 354025016 160423999 679504046 279097594 420580004 951581521 990424723 237976292 701518394 550033235 619695235 571723383 810407957 443310637 444075173 661777359 752135018 179986843 259860254 572465950 697385809 286202322 613622321 718951201 773939655 309239430 498557496 347010459 974390162 257810932 558918105 461726388 604834858 425663620 980346659 650187553 917268517 27151758 769332032 283543001 655900751 95669910 336894144 955063639 984773818 304356139 542845717 536894158 749545743 167508699 300559880 952226874 969684738 978271464 984310952 959494507 968662751 966377149 973347596 534013051 667331442 278400338 465707314 693463497 727792367 441517284 688584495 241876984 258444023 473884650 637216366 764734177 790714748 455070990 997139358 482705891 741077414 823270148 917739401 270146334 822245137 923442615 981752437 84590965 875637516 365354758 420191727 810754004 902052641 587961843 920144373 337512004 888143680 833185059 921158051 85855032 923171478 144680203 931422560 867854107 984147784 347926599 844457791 811540198 942749661 635222689 653443795 471082215 491601611 38311991 929179006 420870647 738049787 634852516 972988456 302648944 926535697 954123506 964466237 326876110 334389304 141080789 745868221 833192759 981122080 979678561 993417613 48977591 66015369 936182152 984457080 511244247 852460073 569223784 829881641 376277308 635311264 895093658 973329746 372552957 515140711 786595579 917907441 42880784 263901715 258116263 270353694 793286701 914290162 613881614 862307411 190194976 504084081 500293275 646340754 740129810 942193721 665863873 881502914 567099080 715094382 37416690 393863246 374887997 539745224 282856919 603069334 325341506 412158541 1286563 37848315 209696244 420435648 414306043 964685874 873239774 979661686 752854254 911269581 872394410 984984278 291793957 727099392 740315746 930238632 608893649 834623122 757987372 991842287 508586615 936525980 535085606 711364621 490335763 763420948 910438590 961818231 173569474 765888333 791671357 815758030 457582678 820103004 314595560 393561862 842225891 938213632 110933288 902352992 485849086 870288881 339725315 650431041 459620382 904861637 404512406 428901528 689481434 835043004 816370114 952866972 263686643 291714114 881103730 909281848 759478012 813296761 744972031 936096086 199122941 229791826 629858866 736627099 419524901 576544118 686342212 700778683 182121593 769792434 843028352 948071298 386171142 911252112 670317472 971655914 773370752 951669711 264437338 889940395 52217205 236588519 892628710 976617187 923581691 989211879 952597133 957270218 207703989 825935039 134894404 600843306 180643048 460960781 946802688 998680097 112479514 796496416 864224776 937774483 238372430 345146074 502687582 532152548 347649551 834429550 86428863 387570307 16942644 75079907 666696432 794742893 818170574 965210015 327496892 550232636 714520015 997702183 455042663 909892042 588054178 710864857 379203021 594135659 462695273 508549614 635098965 638340802 338974004 941511937 647282045 963633748 98863761 805233890 167551498 518086796 880129691 948448768 171645427 837490341 211504472 454122820 253240830 696181798 52574958 438794796 709100690 845849467 947483487 963002446 182119409 296167127 473715124 594996478 891705521 921950339 752475939 999971329 588852471 852119497 572335982 687105850 317271340 825174353 141217911 608986574 165168887 807686671 99064675 476690676 502418251 757439441 224530563 919861854 521754569 782175319 308466219 848064098 400973455 739107617 742009669 776822246 929265029 931898761 687356202 796946850 905501066 987108803 921911952 984628606 106180300 119931833 712004507 859584390 74925804 425085993 6141280 844911324 123236512 771131181 717731971 889818679 627280206 894593797 187968616 962925923 711082344 975719109 960176980 986882337 439775842 644809698 143155884 427296518 939460659 953463379 876005434 879110217 95157018 507570228 405433621 682819958 303394880 659859604 709169650 713038252 147503400 679371057 36369207 578714619 264444630 731808436 41207797 906167675 527883280 819836962 111841801 610880455 611553588 794450242 323780349 431995045 856414007 861400543 611933065 962016172 247432791 716466885 72946499 791115936 831723483 879176885 909314222 958055616 964375771 968336603 525595054 840968021 490698821 625764489 356247463 878259739 212630087 445713525 558218961 998252616 83862869 118695730 982006328 990280271 831841642 897986622 440269175 500456550 534613755 980919781 849671604 898684908 899746231 984857826 800717937 951325682 433920063 688110712 937472802 954935256 312576015 682791536 136059669 568195984 644607457 656076061 882978741 980764985 64782691 361598954 836662023 861231332 508149810 649766409 652656790 822604273 6057938 322814342 311789434 417157420 591990847 671487436 129965324 790811290 99336073 672793948 663445724 837791155 213890579 601216412 244462818 280606494 573362787 829099538 210532298 645095337 332908277 928740061 352930515 528392645 432792096 821897388 434140040 541420221 883026550 945411733 512824595 870420291 891525797 980938970 284611004 291109228 221839676 778538666 851334989 864384996 295888637 721852949 451302175 487624806 927323869 930799612 860490446 883569042 907033243 984160384 938231949 992896348 629527513 939830770 502534745 674400185 744660687 765755242 384951298 441761063 667634465 697891865 848770871 874079858 870126854 895907896 711970084 998335527 307667038 345489758 690124312 805759212 961195110 975827269 780035610 801091093 532641639 660306623 901775545 913234498 335074253 452761180 466217776 602527012 427251610 571193232 512755174 659958776 823570056 917431182 954532122 987185896 687677116 962882074 810572971 838480209 512644723 965290862 135422022 561654702 775632076 870114007 524789390 642237626 636471485 980688852 635855824 948272621 224380909 366181650 858490508 974015291 72054874 346169385 652724885 839988857 972900 577074733 430648729 492913734 209342723 485170135 206220323 437771862 525536384 722075177 899999173 942477749 31338112 296646587 177555765 331881408 765450719 799525584 959235867 970052640 710425441 762793826 438540775 615159105 716595046 852832712 475292739 925642165 426766564 863513678 15171186 496214047 703955206 765471373 36520891 954843702 379831270 793552926 764127349 924370278 854115025 899504878 578985015 954536524 491526419 591297862 697077642 725608212 315708626 635515792 597700573 939991399 20493363 70230422 926951005 942282611 535499272 999951672 142697472 524020477 297236854 419885048 624326335 685546373 153500124 330982418 82096900 460133871 969756004 980359309 107181504 374195229 744989463 828812264 326245899 365644642 214081845 376270531 965628647 968803075 233671861 992794529 330347801 769999186 301980580 345930253 936504953 971893507 13314419 106117720 690964101 737092302 364255404 956722938 238706447 875162985 400886831 404281471 395915061 577296488 944719312 972190755 818446446 844205949 533610467 701717401 181293707 635177090 619233046 988220065 781620751 940067488 933447224 944770682 284093396 814142771 476169074 808945339 512140799 920263703 586811960 607064616 903193258 958354111 822464157 961501265 312379342 570577114 315319508 653557625 673489818 928789931 53028400 173569594 990353714 994910322 786849869 885893646 869322717 921705905 212461063 706208663 516746915 567338301 341854763 580243789 874066713 899672969 744417830 928845225 1160645 783882782 818855092 943664827 784038254 934949834 72829594 317842487 152705096 549295446 761229960 959078237 418230905 459722984 788197342 821774456 636766709 797166044 666376953 744622433 446190620 855282845 412447577 806314701 238346083 912593994 187509910 554346305 386248287 885375037 443038562 560851053 486155920 875725706 623612993 839218240 85217928 467450388 716889396 755925600 221914448 954867206 459375318 947480957 705339183 711337452 244310995 398585119 724127089 992635909 125136738 391722975 708308792 824683589 17753508 666268068 92009891 131674108 422592507 587956234 766869558 965461620 320281458 618348282 36351558 931987368 158487274 701121616 300666633 750154849 917101802 993933262 895171566 932527839 489795788 628534719 985621611 994419763 634854095 871902150 860549577 939246951 405692968 539250462 9920712 48532248 396725090 904226665 113411563 458936297 590221393 662813799 330417021 617683285 444750289 802384575 137171418 836228493 774119894 859049258 323610212 746752215 32213289 357888877 824004695 858628460 382342227 543542095 619338081 829148765 800327476 800369204 492982789 813712290 545190677 870945497 432536064 991046929 417298394 560807262 743173600 877336878 261972978 635059649 468044570 540152933 386403028 545331242 571910831 593400274 797627834 962612873 292730474 523354453 203362493 517025785 835550946 976167386 427220710 597539465 245444207 346367551 977490182 988909083 145857118 911307671 901793666 923785324 352234906 690670483 308095676 659239939 270103042 533376076 304990110 890192793 238132640 830010447 708651904 826660078 391916847 945542112 502935585 574606153 175459847 536254451 10884873 38344081 348584379 397964380 284195551 473127970 978190673 987535299 842535706 969659654 898997839 923693074 262800843 276321640 566834571 815875972 901892286 939109209 893990035 974660993 221126960 679176212 233063417 411252116 960360143 994188074 19432150 208141434 531274074 671905238 641485745 786922853 463011472 540998904 211899219 864038798 884532417 973926033 985984035 999314162 432197710 503290620 541586643 943806717 463818778 589949512 746845558 868885424 709926181 825654698 43610953 567804703 929302361 964826571 751441833 879646291 851192548 931042575 99841884 669401153 673430033 800795432 867636613 986848189 502203044 877425379 419022572 422148337 672622647 988935034 850239019 925965398 98886058 733298852 375804175 792700641 353744083 469368359 158644850 927892114 895351995 964201348 105298850 994628473 786652948 978050704 219813 26733031 293828886 509570819 510683903 680420825 261732092 499211868 304872489 465074229 490797914 824688744 938707537 979051709 481567086 491256520 952897263 969311577 924139702 984244136 411071344 436628047 126036376 670669967 546175300 597486467 851198743 976017004 467647556 607538661 862887972 878387187 453701542 630538090 968344512 984163771 153449793 769238736 911493216 914056109 136141341 932929229 637624431 944539155 349847878 768097737 953250174 974069179 592150298 944810181 364817525 571998120 858499167 877858477 320320600 718954135 269174959 508063428 311285515 749890995 27566648 144013930 587526747 794977154 645650990 777010663 398068265 654477923 558953749 763423045 909764959 998164762 220142459 517129851 311742188 363360892 949167455 980572921 499301765 516960407 364758999 977746236 884126474 944425770 223766943 484166313 295980951 964812285 966511907 979307206 704477500 974345638 369403127 600674150 231408857 545404878 73814587 571316890 477117339 479718830 37141337 592493509 679464083 965124018 757456175 919465675 588662955 719149678 937337224 994086345 878231486 938835385 142534086 159649656 963144055 999009563 742679493 834562050 798263192 859255851 250360754 827394286 661730545 937932445 164584917 517456156 859665897 905250034 285644832 597022946 610046324 849851728 11196736 290513016 441343728 500574852 727569960 728156306 902682258 974387918 411036673 983342470 462614792 991572087 732145127 805744020 443191695 705643954 293250743 602559477 308984015 827198980 700804715 832003235 82985617 100796677 896250269 943005260 763801662 961633250 887021920 963824932 550571561 673507656 224526955 417987762 223576684 790381269 256117637 804317319 446465983 504498788 628158616 778706114 965000995 980630586 542997050 931347557 16711016 691461760 622265635 800300359 193143221 931511411 786972151 871613072 807354746 827186216 815172278 962004858 630638171 791518929 918800485 997184029 195069011 488796539 94764301 174763846 88119035 193633048 579551766 925630236 554587359 711170344 902438274 970734660 885815970 929425540 166373985 582243341 612081282 762142119 606068351 933943405 879346287 951005490 655744699 997665294 407471139 874439074 61094418 396578057 249412295 688461209 827177552 841995484 678557094 862856114 519410659 588337285 830552302 935187921 528115893 754595960 570009746 944085771 480088216 488661564 429000892 800904859 292507456 886352886 743442217 839924881 713327952 787989402 559776598 992007580 227968108 720093247 354130714 908575305 655475571 794577970 206842684 687909903 494063017 933101212 450543044 624378751 741787525 914805208 84080473 267628814 466322710 752935384 943327677 972467892 480940992 670042335 605046810 908787037 884023834 895757152 140869197 872440399 311065863 984563292 264852829 452266742 829410542 900854038 326155497 938523212 933235161 978512924 936007403 950895022 391101001 867227732 991534294 995769857 986166828 999909025 349619928 752837675 645752351 850230304 734991594 872876619 156249886 981239713 783249403 790310407 997813050 999463045 378585677 750223005 483995458 512199685 960687862 961268613 538521728 723466598 198596914 453142643 5078920 477856987 672206491 990852781 54876911 754199549 767611380 950620773 893118526 917676382 396020858 793335233 234782385 358029677 415577825 785970685 580396646 734821003 965479328 971822322 919272294 994125029 85329791 246277412 644704029 688198969 897502023 986602325 795817613 949665188 875341450 954008890 242771035 285891191 534908624 848071581 117980596 944501015 977083783 998588011 285642599 325436657 497987985 956341233 382832181 900977026 252525614 875559445 338811671 981588100 414105482 431514449 190708996 402875277 301825749 397523804 743704876 844851167 435528592 543477864 536756194 717173793 536197019 565633772 311338866 473959792 367938223 751381209 831165309 848592707 815458959 941330193 89473489 748567358 317751930 394566718 210128208 859159779 503560065 537702882 621671599 650698674 667051129 931073936 310366609 746700507 658817808 906109790 270436921 868154814 494235891 827562598 731385183 953170108 840147745 917924250 485191771 826762167 943207878 952327074 46622342 382198695 749696852 784589119 737463853 816137354 799434165 963546055 112869332 755367802 266596621 885817475 945500212 988932238 693352710 812413920 66718111 930502217 134181945 419105621 278002399 735015750 781357158 890373494 790152112 821206012 902336399 993031864 918148903 993191921 114140897 578059297 188258220 319825607 135641706 336951595 314190570 778535269 880844673 894484508 103835391 794926009 383401387 731760399 588960132 730046579 998183909 999165162 796910546 926457931 194265661 750331677 493889962 757302250 95050973 384112405 186582384 822830331 178852388 490278097 188230112 322981315 493468378 901939832 579152807 892077433 162719643 964311720 774516145 902845198 531407219 547906922 407238421 462888499 939914986 947011869 725724932 934525998 720468040 720709192 228704966 936508540 402551646 526780166 94729558 591328473 708392855 920394813 402209074 623736467 875415112 994563577 888552954 991438468 304352092 718695616 825604047 828522977 545909437 857693129 527598269 725034516 887665870 957786625 461343533 548303496 628082885 705812670 252352991 649917367 156351612 629462713 233410736 361171908 53436210 254527361 437397182 546672591 559087679 903190785 972049271 996448814 295634060 765399933 496242277 908429986 99179052 844907277 359842812 483575545 941632644 967639323 314252412 644002136 370747506 859514700 506518667 828309647 357982815 975817814 26650032 715212181 967821634 986209960 232733174 734518860 498243727 537430811 797834169 870513229 596078701 902279643 88673453 235226272 327472830 964563414 787236746 993614539 366626089 799825350 477855842 667863379 515331351 592175219 34264378 303600197 580045540 869337903 560547595 644299034 984478853 986347781 491752802 889697336 888864672 919581925 226846665 311920050 302729206 486948954 257076975 919987821 930958972 971118713 906471272 968692129 799682026 964702163 175816604 227462420 519884338 931399450 566045427 982406479 172133203 227801563 378768940 427145572 949895764 951784797 264255823 700031550 286192864 797919601 878648968 890897987 313277705 842573678 329197524 359166340 670415144 877885466 642497672 792767250 187345957 368491346 620284045 917988804 424731813 751445275 80105021 729515937 637057096 920589336 116523671 737258050 44040574 777930082 868195210 872061148 975728374 983861192 562132366 936126493 763741561 912981207 386574435 861463801 876732318 967625731 43260778 563378168 998455390 998890158 654319701 943508405 448304187 504251921 342890185 559042805 663207834 816999478 756320673 972989356 580476247 643791076 129324493 196754297 97343416 847063903 842391162 988769502 9096775 506776323 76077643 892333179 440786758 651374444 954742576 956266928 843561266 903909029 72233343 885488058 350723596 508800078 462033457 706309116 27560295 653734775 308915441 688620169 409980030 484653981 606003877 904376366 257075603 548798685 585582643 721537287 524970391 701034018 54572034 229328410 26255464 213092154 371223118 536687913 784426038 937247918 943643214 948266977 387191745 671228203 958756570 998631418 923597002 951707788 405558200 670043684 417608557 741761525 878878139 881024677 506247776 580618606 69008648 349178855 75396882 420245504 767860985 852069350 429592416 435774991 232130838 280027400 395144954 711630726 391355871 952227574 614953987 837942865 259657256 495693744 737355992 895977013 952799797 966390338 916311730 951930450 303071802 464299423 31560678 586824744 358106350 799755270 915634958 918467324 289554855 999082864 412576879 945284260 924482292 979189805 353644986 493739674 373725326 806742960 348855930 720859091 804209544 920025479 162300466 688723259 403122946 756866314 559071112 649545505 292259094 940945270 994967577 998730525 366444116 773416222 837419919 963765164 172500993 537396003 199486511 304125309 308377812 777539035 248207533 525976861 147584945 963681072 696244980 997867622 96877074 836128685 251945 897732984 334229427 583881990 355550896 865706744 821281364 869663870 531711940 558391973 423170620 714689791 545361902 877298758 779796518 900189051 936223111 971034644 359870753 978475659 43790079 147136682 625572637 756777629 388502759 721078547 679111787 710061811 64807730 968607459 235590038 737460235 257342301 595856123 223443190 557845419 488901998 991536348 168087113 392780748 53766829 920236928 943196224 995540166 147501368 390128027 780124821 900899826 179870288 238022153 679434307 877618508 869124687 932830603 749657115 891198770 956792867 993610847 381924818 923948074 699469641 740878924 17773428 735861420 40817906 843249573 560844639 843498970 159843478 599074079 478999297 864041779 395465836 587148552 53987221 148525840 340001030 701837218 768799493 807492561 337385942 729936395 817956075 977730469 115875437 424422379 461676245 612293732 348859869 980812218 428252332 682695074 523051593 601353353 259834097 581422480 417949731 722875791 88303952 194426929 173238830 492130703 782201760 806622989 687294151 888479510 318304051 418229834 35902461 431368857 73266792 603154289 570761159 856545318 746853117 989952397 304153554 762841365 836709286 851186337 282454743 798253538 976623454 997555341 10558745 192497346 498986007 915866467 470295655 685514572 869263702 970777564 687759511 714078532 953264662 988624392 453299323 769359777 603286849 683447246 34785307 385621201 362682013 957516400 239744058 600299071 955726742 956511341 10087998 471870319 952232737 998291749 377814433 724592810 186941014 798746077 207342491 719908539 933183288 955830893 821032795 889124954 153263111 645562599 351277578 678078951 230587824 725899991 536958480 740308075 384296085 726536249 35496224 630663054 526802494 771208387 514018806 913189082 240190172 890263015 832749439 945307965 447535519 934794082 372009407 582547691 502598820 976155734 407452673 712592240 662823577 948511792 468361329 729174088 454256110 956628336 201826598 672224585 996302246 996586850 2285603 212746530 167103530 713940115 896189916 970358807 665759654 683136873 875753232 910888385 17279190 932774630 160682745 550052502 747799221 912867797 192012962 867403903 252532176 397980846 527443778 669548134 135771067 713889916 552078034 611605795 388571484 996121571 684451441 720883304 983242240 984694339 139369231 304276319 39977423 355921461 343369412 699414406 239790861 643912442 609105899 880154374 479753853 685672981 694477854 748605494 339166606 981909162 880369955 895614978 855778803 998750702 774255642 851833505 865677482 885711423 25458212 773072786 645482101 827450561 890798497 954788788 357942094 702281043 58118908 191492587 814657705 844902117 179115630 209929133 564695122 645852675 448937763 988710092 696386904 991838414 853198372 935303947 411099816 923053377 685170931 937772454 736438940 769285774 525864331 879919470 274825362 988240046 492951504 596215629 448977334 500137327 276652293 329586794 953206975 966430438 713677414 825175013 400443466 976489978 472000757 477814996 82440297 817903126 547481005 655693034 197566591 688283864 129757086 427232132 725067343 980913700 152603810 812190392 939526569 973243060 685606823 944244267 198176897 984684555 902240728 976159645 508034324 785233038 751068856 860787088 587060385 889317051 688512821 869488541 477841944 984166848 178368237 246502078 949246518 970319385 12480320 483575168 884122254 946689502 53196431 196015657 269090398 454933084 999064525 999101089 524708398 558121705 47123933 338762021 794697352 833884490 16427227 755625210 158524112 840716940 94573943 560993871 651199833 747205484 516344375 569412429 775625136 784966703 319353923 959987893 21837726 65626010 376242914 709356705 78983888 557804199 505893331 822715309 343418639 747253195 706289476 857159928 147472703 314441479 90964649 480549710 153909153 773845039 677251 92348661 976771845 979079635 351557351 763255516 157440470 926973266 11480368 94042121 309359313 333765108 514064630 827052482 441992638 501130897 982939688 983403564 873184592 973155151 806550349 839293663 118335600 695222469 263163902 405096420 402314776 893302802 856642816 897146625 399800743 589752078 281471579 805395553 750869743 944842254 433435264 435223522 171724412 277107705 647760354 888982593 712646992 732310572 429010524 773296793 763914253 819981178 59115166 991050836 757724839 849148569 915702313 921850119 473027079 757856674 558310459 776514155 583288651 808809546 468341592 626270897 499537986 708918349 521607128 857153243 240675149 742807025 944878250 950962470 179093737 478521207 731721384 786891775 266715801 293337810 567919786 903660115 293102680 981981946 338065219 551205222 76243706 607969426 204876602 540937997 196147473 334295896 473535566 590453773 91702908 645552036 27243933 794810386 567621040 864789276 51429251 776137952 575901488 924301223 132255854 491623262 608422002 894576480 157041003 721621272 791204962 998185868 270311505 520710665 762617204 871773045 875837328 908728138 749463415 761087521 90129956 230263564 347300089 995158121 605399649 841249608 595722967 671361878 324162907 506055104 418725249 781347846 145375463 398401182 13088769 765818253 643871642 720028046 636179754 710324196 361111227 538526574 728448453 922161809 746199019 953076232 396927471 562911659 483040481 724098222 252429302 621212507 475264603 940637629 211098402 445024039 42909329 457860116 82253642 703276597 802323569 824110941 711018601 856903708 404130626 623614399 269275413 274940500 599267425 792207803 672581606 873049272 672137706 808444924 611453578 648944653 448013463 979002517 784100131 976457571 113785307 950283267 964133842 975498127 276131035 644632546 422497861 761774631 301180601 711804046 513353276 876256905 706793769 879976643 977796355 982306223 739212183 771561736 850391622 959856878 438895384 726251493 363630193 625498689 206776138 339222384 504627643 538520780 673209579 810859112 903361219 948797382 94925360 928817510 640462466 988848831 595784909 814972255 894589827 997703086 550821927 619423080 559253419 631076665 371284688 488402596 479311783 526613090 876125746 894990886 336545600 718814812 273658844 435541960 637675428 826535822 782272990 848532926 163623852 974195545 864467984 951745083 262046579 911577480 177111823 649256723 866470820 881783489 57318721 227639747 693393182 874238652 932201825 978847027 947037117 964404793 150728805 720007181 216028081 640629352 50251648 276137118 270874897 632616879 951732746 991381490 535794757 726670273 625924089 711323462 748790420 968855079 725812418 767419644 350580328 789414372 93309804 143428638 949686097 966886163 609442772 834191533 496830604 838643614 466931218 711630192 886791594 904895638 968810992 971832333 955572591 984653206 79274539 977339405 703258774 838620248 155581077 360463113 646778385 783684161 292125697 366464070 850275272 888244214 780248588 907109708 704766954 784860064 69113529 756686798 380600569 624664259 600381021 624653441 395663126 820348496 730676620 853998253 554812299 815542589 730901930 814892648 919672341 939123546 846704695 877454307 199735938 207903027 862967324 975655577 320505937 743470961 681908715 916268231 87781161 887067954 177341403 243332278 560216421 744367144 46810213 215595290 523949250 787155816 927483695 958893958 462193727 824506922 275803435 712411825 415870862 971355649 614321628 862236978 538768695 953103788 931095209 931864988 799774555 883505217 997876976 999130427 215435024 296986202 453656665 721690920 850002031 977109591 636037900 649691447 395707639 607312848 76214358 144798417 355675482 755354327 51891235 853853313 693367104 765868331 341761172 744680803 31049415 329888197 965186770 979415653 591881148 649431576 172069458 398742005 804647347 935517125 573618363 639468318 283688296 721857105 770904052 948543138 373046189 690219027 666241042 917318489 836738455 867651132 326308352 626996804 230291160 998402606 89689340 374530318 289292581 798654020 118251411 586805167 446557211 815850630 716899876 925378077 168270370 815392582 392809636 408204291 16288223 383546389 564586274 737029066 380942057 741630530 730204592 956522388 758963362 826277467 993159790 999818385 969943658 972130124 193060790 511198832 567993867 857685353 881773165 887390151 363845502 819599091 723676614 820686855 109701747 527983863 929133890 955480779 169258472 690405180 279203955 501596681 215543832 914291900 915352099 939892889 114898721 894536960 167673273 687825116 634182433 721774838 175384627 908404817 179495007 407269004 548858708 608106755 243759466 370497973 106134046 380900280 528494993 707387354 941211317 988470850 698658435 769906341 55122055 323142565 964724621 998001368 76558471 713008741 711362118 843882151 163490224 645095857 645615219 702885094 792618617 915692705 393852563 444606272 75254420 807431917 254799045 566786245 890011814 890534062 164704876 552441311 199195290 384024412 972751585 976023971 422154763 821702612 375220682 486680884 526600289 629680133 699842421 964293610 728592329 813875724 173850428 901159668 619693929 719492105 537784882 940373983 85142217 507473217 505245274 825915172 783436579 850822251 568850566 622524282 329021230 928897310 650278228 793113645 510388451 913928872 757743293 990898463 937289741 975433246 833032159 945801386 257210181 973302596 111109622 386152538 797748139 976303757 639347976 943253732 489296494 564202450 365666578 794720794 438456047 905266565 510937607 811300580 771461531 928622264 870844978 888915138 627581875 628273168 227012110 674055359 716357349 811017515 127697600 172970589 916922681 980724301 27331807 812596638 283706672 441242987 553240418 785463507 131069542 507197149 798137099 904169005 959482958 989938125 926587159 949149962 724441561 735891323 612436566 843069822 130997377 708179250 797213383 981721951 140102451 299827027 764446895 986190342 85169458 792986283 734894264 810248077 98824884 860925235 979475214 989258313 773484159 822848496 212078550 950189167 803010726 804901596 240395923 960271425 363078972 386978425 776563909 932759490 229212471 473902436 521239007 561389220 343201490 987712129 955723146 999956718 879064 703369076 807825544 881575398 70975336 696757964 685191205 881666785 647478771 881595985 72639241 752271396 31866165 521710276 126603151 275624312 445473859 856986723 701382536 706028031 687125813 854112613 522920363 577010815 711713970 890347395 367427916 446689718 841494636 957619214 866274347 958294470 613382530 752781912 610797648 770585351 576941876 596066066 967531530 997091490 701502640 847374314 967972389 996595972 455323197 498016927 551549807 646270442 633674572 653104443 402816262 848750193 634196840 977165454 552009198 622713237 597151657 713344815 981618271 982004207 112074615 363371067 697917126 890715892 173091419 408861387 267737685 791485239 531858668 589661076 178465230 350747801 250504101 455638906 895787529 917096107 657148256 855819716 751568237 896534688 173844694 848291046 529722470 646430370 762960744 805469312 287233517 596503374 192806443 379756463 969865241 977088965 476357288 665564983 489642348 798324095 548315883 964686882 346637817 984566820 526005202 678468118 942554448 977939700 527414179 612534246 502709878 809925982 177671411 793099294 862570199 951225516 451790266 783210800 599105449 796780777 144021016 736594245 13675002 810327279 73381149 157966731 666745318 681274243 847502783 965554030 469872492 592220479 94442244 872067282 989503862 991566864 91900175 782149190 830850871 902651811 702762858 867396078 319965109 531150932 529306021 871843566 529693975 931229971 800973725 959242222 657008581 684876880 653816293 893512967 425606099 891169075 641373403 900489853 108717206 784695054 887602929 950868445 235892618 454527902 561998414 829295442 895982620 896113586 54260802 83413603 612762013 861088452 518710562 787563765 443073764 863406255 691436905 766276567 351498016 734800353 532914401 982525528 268477208 504966105 490887469 921023073 904754599 965859978 901235455 971589708 119161135 974020948 435452801 832583990 739503548 866667765 766832197 886507208 127454404 894420044 523538847 558470846 921628036 990355119 429110444 559242791 264921919 678857332 29833161 457818767 951150545 967405375 588139351 881764948 632566729 889748744 502213285 583487205 108434316 710882385 92380067 647417517 679140488 711781354 839533964 996492447 16989735 711764517 374182847 547596655 583631122 679752320 257255686 484891590 375823781 954858168 754653313 781180547 312381085 599049598 715314021 881242672 743796784 744054746 955885519 988043204 787010370 835401246 978343920 994969310 102846182 747655820 75025215 153806961 290929421 431116218 318397594 880524589 820848688 845755557 356284532 836831663 990164584 999611827 143075545 225133878 705535050 978369082 719765657 909323520 825174716 935647968 599871455 761755840 64245062 628850125 580897365 841329734 799536425 826403815 982082478 982881394 153294552 423182726 903298409 923259532 743227520 966018751 131814866 264780499 873376772 895874594 133028510 696374174 810283400 948024617 310238987 921512377 902389915 967887831 800693679 902032934 537435815 867331092 253615603 522602984 143847117 230501058 914587425 967971797 672472024 680471147 599055938 878174985 594972351 991549480 347312152 690025104 573485174 737250256 99120632 325905644 296443941 905181711 363905979 703185207 385382429 481227231 300088196 957584872 634211625 777110477 534100296 813133301 782401016 914470656 214266916 820267699 340696936 343739633 129602517 425277370 866432407 875460798 419255810 556734446 237648892 935583733 347364939 978154512 674047516 860409588 454495146 749808420 991673712 998656219 178971595 577237238 867814137 932070650 531582861 774998678 684109965 688893125 962918825 981498684 951695903 958167878 655949322 741051386 827435071 922765898 363250805 691245993 784456967 919424268 44624120 982189808 763550510 894907412 921734612 925509648 763115615 956525194 985260155 988262435 351468588 704491104 346324756 503261190 218566578 574383596 301566658 866915264 904081402 947635744 937026358 975059675 297925610 970089522 62112 959929738 208730532 833354699 439612781 613454919 623702410 981439009 256472918 526902044 254410055 621796843 219410392 536056422 293300804 874883917 580602461 704365650 198891114 274188043 762892457 908419286 198971516 882542763 689724390 941316028 439717865 754370125 892853213 973747915 533415030 781571717 414960239 776438148 26053978 511673623 374069551 753904874 679819417 795287091 334761406 624451112 332698452 972784457 607225084 975906687 967635737 986169011 527208631 746750874 957211023 966157544 171296470 802188780 390693200 586372159 27676848 656790421 461572806 489997367 638919941 741444252 267671395 729421990 29898210 200420758 85583459 821810535 701722146 917426130 159975799 577393408 508266690 684095331 986068145 986224453 318456390 970307147 284209026 698909557 145213560 277858155 266857326 485484020 818034347 975966441 832334544 872822604 940232340 981406004 282506952 875290290 614232315 728465980 846809483 992403179 866847238 872768765 394448482 507692219 324675279 977722281 194065439 394127925 20142579 700750561 443798903 837029929 354135341 442541479 58384595 296595269 425234812 986755081 93696164 333012999 653058664 924464066 892735678 999716350 414068231 591425588 501080499 919375844 421946979 998594847 592143365 682223414 741343288 766125086 435558503 518853426 899631753 940342246 665364254 744986827 428751257 829127234 747025833 868655885 404335333 822378040 241151486 951838322 199025234 241461053 11062025 981625685 653380990 796316242 638081473 801491222 239974429 349691000 447509978 521500819 678258109 694528660 952615717 996996288 125951507 529649226 378850658 612729215 75956142 285776570 766609654 809371779 898025923 991159162 461387709 909445617 739932053 823198454 855923526 938498560 558760644 912276114 492033105 643984673 269616312 910750976 793826142 799562649 465587410 836709843 622528065 659201893 566546733 943334087 937261830 940604372 728575745 984547742 109311302 118749837 476290192 804351934 665020449 897588294 350905259 655449547 924375713 993453646 498840608 516831641 132380212 361033096 763773156 984051505 270080174 437778786 379927541 727674773 975668354 984053603 397280910 821070702 516589342 857060817 642280850 783641535 419944608 862271381 764485395 858759510 2979546 284060711 471736575 508252020 546232259 601918426 453025727 612571129 589187553 701343985 811074155 838570904 524762187 716911774 954277828 955850337 400580470 995702445 768380905 977502006 652053046 666997124 880384644 963073789 680511870 863808373 553874457 638696274 438009297 734137241 977828532 979609690 226479237 831721733 438315005 446653521 561594277 658754705 576364996 886662421 340031187 985643905 803758605 917052648 457635104 915828331 218687373 338784923 479314795 862135375 870104626 885616527 122076874 597940744 694016234 782546980 879387175 899115893 434441718 595912964 466919160 475556372 562286671 783009589 54913826 207109525 453883832 887800084 177175123 302519018 357700304 487324081 762839104 962568828 776921644 898284537 151567442 943974005 559816329 780350593 767859617 923240937 726367628 765996715 600254211 935711526 423369007 441610048 296620255 774862299 159552933 936217852 483783915 571091888 347860308 815243987 311708474 523493190 827467152 942621810 548831761 947586050 463354947 721303971 632435674 743728637 607973787 707292916 107516185 650657754 284319150 672547917 926538602 966434849 987747218 993898485 903197886 935016233 448404181 785615628 960162799 994630843 507656870 936860680 353180546 579129630 443837362 842448450 223234811 982014528 442022681 868072349 621707084 897458259 206184504 685185947 764992002 866042375 504136354 958474519 781912328 784129012 848807382 884272031 944906637 984088790 591421488 942019833 616301050 906751597 88416346 690473281 436220572 761944607 734621747 937243544 814943992 894226661 728449873 736298944 410822014 610888689 389404249 488487464 458294192 498249364 497553414 554849173 946590223 984151653 865443843 974993081 439815570 789176454 466509271 747522878 338225054 884222043 931083838 964397773 680251837 895791058 793649294 850655327 386413684 780972146 577560710 641499393 321085985 514201358 853353737 865859264 149398924 496527944 942487647 960569805 573136126 884873703 530238280 685830166 237446537 931021366 397094847 571027020 270720560 620054051 945456441 957296723 270538028 520218514 388812411 936287240 600860862 612825735 176390775 746868253 76632877 714451175 294031706 576838851 666818257 965626866 192565827 946559468 94136231 509356940 919540380 970248924 689467957 719892445 617786691 661578115 677597187 750071453 992564108 998348173 779799658 881047865 203736562 662220752 597990448 750428383 914038080 972291485 315522537 377114072 147252829 478136458 640976886 737689160 885644576 997194348 649028443 835824743 366190089 637935469 527314088 878635781 267059922 913419721 201525681 496000257 595079019 734991918 422621467 759464978 296839435 542342565 963075522 982930198 527479861 870337011 97912239 344738555 92892366 434816422 588716901 861509917 61617915 600687992 130820218 841576334 878179412 996362612 640162772 981261268 385619032 884084993 445726609 980997408 296897648 662415659 509259151 722590050 504198089 650437935 419316469 464279453 9320893 34969970 362944584 694088701 909930443 972326478 467403846 677859654 95603875 268786909 467419269 602319305 755961229 867809799 980072713 986474117 585356523 985833015 968436878 977411031 762681451 924613303 675723510 863387756 345955657 753105872 424370801 555635370 387663627 876382159 391147514 585473257 233791071 253729290 976163813 995041919 638181435 789387315 93915231 994828612 642705351 995589362 468654539 909445297 217425657 998724692 795290200 845968288 800894267 830330253 673931794 725107207 491528998 954325857 746856183 875123620 618185483 690927070 839924486 843650533 704773976 971045123 792562863 967007454 330604408 568627973 393698214 397081480 935691692 953221781 408133635 600953882 927726435 973949755 573579111 736702496 408104224 665043777 136413708 203068659 124084399 292891267 343388269 438769503 12462527 252353685 113705739 223914895 425408428 487312003 352056311 514488229 104068439 631409909 582884114 632239531 859770090 998707709 324051054 568402677 639408806 802104615 958488458 962721340 788581966 808036686 885573779 912892471 343290903 559404914 693958511 917735484 508710421 876646209 776909588 865762548 293487456 730413723 516073682 667957527 39971495 133873309 146346071 219156565 289634983 407573237 266812167 678887815 662384105 914781684 41531528 855392006 315456656 894577853 215295629 443307587 786533036 896517372 683258196 983456366 621569356 672717519 899224817 924490796 350667300 359740701 570436971 595371906 994983503 995131851 452168666 500136502 157100405 382258929 189571618 709089217 863147006 923782389 5510112 332220324 973778658 989298444 589438363 908408661 620858619 816553276 987979903 994100715 138247557 908903399 271115927 383137895 392210501 458329357 384343100 987252776 212224031 890881189 660047155 674895997 704369202 742635369 856604745 873483219 297913843 696256004 320561365 696472362 525733127 666513638 521301729 884577561 695427300 784346278 806434255 816953419 968502617 993628202 877128734 932929527 639005812 680384270 625671250 780960691 303374531 420012428 336338187 917911468 810502109 877367217 10928563 464876148 19643623 114458770 321590671 547592229 349735287 372418001 279349479 404040044 825175165 999982867 657894964 716652134 880431868 896837673 867624971 871394324 528895562 766675448 805623870 816908318 310761136 530808699 947980032 958369460 285859660 701753003 941742063 974096713 275696551 363359472 208382565 266178754 467269012 963596967 930591766 974362091 189766470 335945000 364616706 729222057 578529533 924103809 183065856 313497125 678938217 914364560 942675765 949192936 884330078 996834145 606436212 959227180 13766617 832414186 668820373 750296458 131808813 273563681 154731391 694600267 849656331 975571131 131411487 932397401 37928092 864740983 684859754 774712842 129260810 747364481 505599985 733382146 583693832 947941140 888115425 902627048 616736965 844399618 256691028 675066344 225248501 524442269 400181247 942057222 27662331 869799846 420454916 468449592 684683022 964375526 581199925 946014038 462099691 984772071 114534901 890057850 148468410 647243006 819479514 895655130 1341959 826633374 699844722 995533616 364837796 427586776 761837863 954237053 591641203 597123034 24099631 448850842 600429747 611651872 945170491 999575076 770850957 949942114 563977809 698871929 569379615 805350074 720932509 869588700 132705379 652390383 432271514 840651617 622224724 930881202 673212770 730762142 677571948 946985942 498624648 922941938 43157343 48949271 99264826 320217940 169616840 225508452 540551848 922280990 625268903 898270657 473933230 818476191 322902338 474555001 348079802 548363718 617244936 717282274 955008560 982656827 928395536 967425828 106246507 153469471 569801536 691190808 276920818 472584171 94382199 861450068 470441883 753731086 469615867 916101047 298564794 930384265 886645826 960229005 105034435 146402928 173886061 200737815 349803525 433745400 962530146 984232133 127978111 486817684 103579871 889381350 719584527 758612276 28622848 80547730 857841266 875278088 635573779 939137152 203641151 242744338 9880789 181327847 423632041 522408326 605980490 803077978 555439815 719211464 149135370 975338912 643452037 726589479 845841301 970669660 175753417 734980186 956621057 980696531 149627805 896856337 783251520 909438220 362726638 640532073 591191194 742309414 593287025 729952880 155589450 784340655 666892815 846291279 166302902 493482796 493909354 898233577 719918458 743531649 115882254 605541661 398603040 517192933 44088560 958886191 68133443 346569729 708205377 764550972 288085006 896620192 556096356 633692942 709052617 723737095 147944033 999030333 63568732 195960725 532616337 686756013 931866380 946193901 975281741 990242246 960405895 967215942 261946222 488931613 411806488 790427393 411359445 959302128 138430033 715387028 397172279 894422874 75012329 269153737 436308747 734521645 479290569 852168588 164784768 347735846 596698356 961429106 138369369 359752350 839021357 912025886 631306585 713123841 787953234 849284240 615920490 621193197 358631443 846759511 977276584 978423669 835830919 913722134 783041226 904977068 462419627 472197320 977075741 986927352 666384222 776499119 219648006 791335693 195302247 725758635 275830565 988202425 362042066 838348794 608516613 764003215 166996272 904987303 596614327 987971438 778690441 918772328 196109788 351173781 915173121 923257495 611385825 669678352 894228664 925634962 583452108 646750164 517203958 855570972 501360162 633217492 151794511 780869017 361176763 573769700 131256005 306980368 787611711 976163338 981399770 991391124 932668725 959478856 375922693 505279633 438844005 980967750 928742707 962334697 373028444 824371888 73914452 536954683 220068701 393722798 221688271 508519830 6029469 112930021 749130719 963316446 800449708 967911831 797259090 814001837 595184175 969128635 683527785 989386330 618320531 922978876 162505460 478651332 267995306 497737943 346707124 430509271 676165490 938751111 929251289 944143236 894299808 966115296 878003515 931167358 21924032 271551413 849763718 965029881 537825222 765609510 643042359 862715024 455394431 915292173 228400660 680283125 752503730 780073037 87074157 696060332 907053360 929610221 169299576 840877875 351455243 953176675 888269920 889160475 830644136 978217657 383637017 910240842 79316113 628473712 47433792 87153554 314892764 985105211 32909781 763997310 190880292 220923353 652188465 765832418 191730210 671874359 734433679 763600249 78693767 221824445 116899627 277726287 903513453 942562374 161644608 808263194 760067801 977617466 721032547 829205337 581081176 591987472 789661357 912801938 126911366 743848275 834021266 888772422 616308421 918447968 477434325 957461410 703484001 943670413 784802824 874243822 505928311 726203486 589013039 751430369 578536965 947143122 992621271 996403276 143182797 802085274 50528111 442153504 679978477 941801215 119665594 954372496 163513172 912699512 12078346 74213742 171043869 583305910 955553996 995297289 268453795 978896710 41983213 347872428 845043224 952468369 875152083 892371632 374999473 940981179 321342555 342861764 458818332 958817180 874870771 917742079 735663699 850505324 835376847 843627096 988427383 994660411 592847762 607804986 618778181 848229754 829631640 866659851 804680788 879463479 566607848 619343919 35998974 90752082 82555299 341650444 688617527 794925297 212540704 333106335 163903617 216038632 641306223 993060190 512999860 819588543 592811800 652375459 381950496 844288334 391335927 883120303 660458788 771574355 275261021 566019204 206144816 813486683 872379891 909817805 101008583 617446835 31265363 222300583 756855087 837034615 403859989 816036474 554752294 841903692 826614658 925672886 203907543 216107448 556346511 906817869 287909772 576212143 739475172 957098051 231701473 960266052 736172670 907882184 885265684 953341428 29417791 287690251 698970151 915099417 581880867 617883684 316016445 950436321 7476855 870374776 991700369 997400370 699514051 828037907 242104687 784612175 306272219 686446407 190008717 933634890 640017363 940036403 613491013 736140058 507767109 670317120 160996999 620120312 310018919 559564559 963577197 997003645 700809598 826557774 5837807 765192690 291499236 572270064 964297466 992758721 279762010 544467603 422511040 561937824 92142261 974820290 288289444 568648885 496657580 679219836 139542833 634382511 784739009 885107380 770590551 886084242 732897962 988199130 533651824 792985847 472244563 931349194 282920089 984673149 29846325 346243515 855314528 918369636 230055603 837258386 236580363 962016060 484483804 723972085 61922891 479684620 257637138 416300112 519798171 833449010 437242446 519564572 226416803 257993305 337994097 905820863 312788217 636712960 683876664 971760366 387710642 563376025 762188627 936276475 785261968 987224658 555881154 591947513 163914551 789804059 738430806 902113665 80056693 151516673 263724154 427067490 759480683 805604226 335820700 408672038 649691959 692823774 941032850 944740241 160722618 613198773 179504684 727697773 786126212 951367598 58271508 303291383 103359549 910175680 161469291 290116705 510868265 647307166 752235591 932285872 251386451 789655825 288085982 528385112 127266263 565468744 35782515 158937222 906248802 952848202 70011225 206016680 495900715 712077027 40173632 853563102 550894132 794602314 804886751 949206558 289963223 761628955 251233188 833321792 662946673 950924140 308936134 641686593 525273587 855207180 510842334 614074017 25854404 38995716 322904381 977333692 599229208 805236428 74028282 727329002 439869121 982496640 223812947 387593009 678810079 777922718 808626721 965652838 478992275 923901671 501834488 902386441 852023442 969310201 989647445 994773788 396331425 676402529 449559042 722705804 52477801 794424318 363682971 833391728 94048062 982080141 595106838 826668917 112176308 700785889 349866673 943319707 113918928 535049217 673491849 719834857 524342657 761475895 124000649 997356261 150203453 187442400 245567567 497149778 73737303 920772927 510687003 729002836 767249128 807209878 476584867 647360058 462510590 723066992 939595954 998216807 169878605 483162069 388998295 664242355 728887514 860104232 439686922 774461426 554786562 750880333 22472683 211796334 673811704 853748182 125911174 135185470 834955643 900236450 364257033 754702485 530003942 757729594 829017451 964693658 106962393 516989504 328715276 669876305 989458372 990560634 894676796 971561246 639778228 878001189 429760130 968974304 528614309 693406929 373295069 961377239 954740136 955751891 130023059 919044986 228859506 577026499 809206498 860813338 508597961 515153868 220056468 715742443 321022644 445715222 786423291 791102897 291714689 619311551 176958176 663175840 933893178 939668389 105812989 644641390 103094701 470190116 77504052 740982159 938314093 940103119 23094592 870350946 162855547 667899926 585666814 784162641 412648069 690458724 307740793 509947810 929208243 949923840 304519685 453994611 727230367 813977720 635206935 672767842 503282691 783064802 231677965 253229998 233684053 752540252 193539221 884998353 255476938 269625398 38369174 402492903 740959987 837758152 641916630 896335320 394546421 993284834 516342189 935109668 842850346 857815990 394145038 463594282 176849091 533861529 425014701 772800585 5384048 448009590 692756409 783723893 810038105 901356077 490031443 964557423 985754012 997455422 850556887 974153829 997188616 998682839 769431758 851935619 633791709 676553992 736593202 837016665 15428603 829217411 873315877 963616920 391713501 462982778 637014576 913298832 640392936 658630603 372060394 688707026 858066474 973426249 658569031 707037062 765026283 772882594 102221867 964587222 185826605 582785761 732574463 801361846 240591978 371859631 82396055 504594388 33395064 212631722 421725166 578450236 37069668 893908281 764069808 916929693 485513802 738564636 623995974 824212961 146294028 379217965 850374984 993848506 754179121 818074941 943098154 964395292 85404903 192376073 193486743 889943712 23354580 743696983 776671889 970902291 476924547 741750923 933503350 966604466 23919824 947228420 219813356 541025040 408171014 686632832 120334859 816730267 434085209 744503539 242374166 642439156 823484001 956980876 722376203 976857888 760542895 850258529 585928337 958472106 682764377 912320162 387538395 623938222 904491246 918536289 714115138 887385238 444114848 562346405 275217229 641691345 208701495 454171249 966912551 979461327 47082466 204326898 66237183 947750833 989643412 990168033 564447597 600178849 934378265 978159812 440680412 941561762 892432448 895896580 871187591 961993329 598187496 981992983 979393750 986010984 655169184 751625715 774894313 932556585 459569814 829605057 863975563 935310089 813611729 930690765 976917707 998745758 503305363 817364666 783559923 927672019 826716220 924977389 871980563 937670964 384281108 750683719 309786837 515957262 685940461 875854160 936507904 992429926 82119936 444794092 253120841 903746402 535131541 922865207 142943118 224549009 772064415 779449713 974918729 993330253 43454878 587175723 698260237 769376474 230466692 921596646 933096344 987453725 464818048 695801085 769478608 905612395 510493885 528281230 484633753 724126135 682573205 916385526 729842879 980369924 402768832 653695142 435483904 822539935 51641543 85904998 241486090 577602617 943777449 985558924 472845975 866105742 444566302 569562588 626478129 947538335 746589310 872199448 890430788 962084394 576296433 794175616 243124966 674995867 665374246 987374830 475072943 640583057 735652079 809981698 154465310 266073561 692439805 806330711 716156015 924356510 703997331 982678555 695805970 917845494 815436414 840343055 676632466 693356210 437249069 931025952 201381328 220889320 992241102 997500741 386137798 889736813 116608052 319674334 209341899 918962875 413896952 720554711 377311393 825510628 559214034 821756986 236301533 603227612 656357531 809379045 343116493 992663404 21404283 374347851 663945982 705752680 50310739 672012869 859764542 928906222 455833829 846688020 415524060 573395343 327350103 783006816 185214614 401956239 419324902 857599417 602060464 998656501 197165393 868715221 100549713 347085267 808955474 885417863 354753405 612654094 262721802 313297577 767417325 802855641 933659737 937690622 554976674 969936376 64056145 999042282 47995315 960586923 412079435 534395558 333625921 361726697 174234262 730504550 995965689 998252967 317193020 366184850 17520485 74752507 283660488 719302988 873324377 941722596 367278176 767459543 635876185 864431055 502556201 554201500 238146981 387928126 261158319 357675811 719160227 764729252 961330907 994104985 196020824 493546630 51515284 515487736 293795026 559751871 724128150 747486931 401751905 436485614 360875010 985434743 29210924 304045488 418829556 593204388 677499320 758054081 748612424 866620969 589108013 977095229 262408264 828337788 921628322 940458664 411345916 666688851 126618164 552436235 843092414 848886607 129403603 445151901 246652111 275222734 293820562 897656493 585240182 842303437 285636113 942922740 392367069 605356707 894484235 895101112 42204272 971911287 199310195 432175276 931669526 988447272 83082830 389659122 899840914 985076410 923049172 931148481 47193870 669105048 715338709 903318591 72705314 936799863 874626076 960106404 670453832 820978726 443801002 728428261 642941580 862955173 145224811 774401345 895672692 980361251 867173863 916994498 40170124 61822506 773139095 877568393 679928029 807578014 99455825 170942115 226750240 658434020 173073458 951618794 92839404 778933070 112501051 388860480 55523707 907344514 716804502 901363950 563626010 919910855 881782635 925179589 186429822 273762611 352092518 547394594 949567024 979218633 933584837 973077233 17202211 416395036 242913970 737596405 987573924 989101271 411629559 474969148 458316298 786777349 945589486 984114186 302682057 406768860 501398866 504994031 410571047 740604979 756131306 931143398 622645368 935439111 913351668 938296392 885989860 995271817 227323105 760513117 700038195 866042465 480488593 804758495 74511901 397855645 349252709 787255140 116369295 117314230 515017034 623361749 594563462 810794416 390643285 704700882 361944544 501624284 651319912 980217806 538301278 566599904 992051545 993497786 732566707 895715247 855532356 901312386 155942796 754439124 865313963 881903890 200652353 484430430 890296324 944066335 994035912 996783773 120286157 440649826 654214650 692654498 663863363 915727629 162064603 680267555 922250115 984295851 324950167 721904781 202516994 589173874 562889693 799792450 561393965 941736732 914228346 978376913 931804758 984819585 890219937 967918265 354542768 466694712 524982000 796897206 553414731 603888370 243710381 255511470 250609534 594728463 859143273 955411353 467071722 581061026 787135518 931109441 254310100 402873259 75527773 119852801 684788227 746706755 132562495 855454979 635989633 651914943 435890536 610132907 691521919 733533029 75730371 889845350 376994697 669948123 232587585 884502885 699152909 883555192 251735114 407147969 835722133 933296208 475279564 768862596 557054796 701765693 884932115 892860929 121477524 354209564 138531383 579122325 545954534 594431054 599649787 602844901 166748781 855457569 918717673 973941812 836034386 985110937 376588931 872845053 729618503 893120249 555206587 893668110 268273068 762219862 205184844 435509303 523807204 856627084 240336302 985443430 721383698 745405575 460898799 710700063 511040511 599209691 372828009 990180559 931329715 954024496 72830740 454640628 507389195 535922414 427268619 955819056 498250242 909730719 92821456 416889513 131531867 725107332 564252870 580412985 266404653 756885171 279220479 863062142 888263394 963961680 547653091 942675888 952742611 974073550 127983759 861787877 311388508 904185459 892547432 997569566 362877004 727487269 872458884 918830323 137469722 295836045 444247361 664862289 285734600 570598530 190490459 409870175 14161747 217775933 714387204 829859998 868309810 976889012 611316946 716585904 77339613 842841710 287239950 764601938 693493532 832580158 345328643 358701861 947217726 966516680 556235311 761984973 131113786 886986779 595993730 777693828 936642854 952630776 248510512 659589036 865384663 999093136 225240460 765534492 738471224 803964636 240301615 678127166 671916950 795724364 53915367 186052304 942937957 995272095 616140418 631541341 645581157 697422716 616011983 875303110 405621407 608897705 350425188 463424023 84623474 253667622 869900748 955842964 158176312 539099162 667091168 924553413 603209580 933663090 319892241 472571921 906887681 962221923 388443509 556288976 871785985 968103678 369947298 787844403 540993601 797047299 655692189 683128273 412479742 809571484 465098762 530339470 394091982 625180145 577585340 780817643 694534873 808474315 29461401 110700353 699078010 765349943 434920184 806574172 373397838 669078236 727186256 732709034 793514148 900999313 192305348 462024700 673438518 957558737 512107910 913054517 190212319 760026259 547599672 723734502 986421486 995240648 32309935 852062215 643553029 911358572 617742903 972701015 74372860 992618488 389356685 443324572 587508513 874604802 662950443 965730747 415091307 856129053 884148321 939427002 200679566 291943149 369454686 733935463 140403543 836469090 558802063 903380453 416653610 433649757 795348504 881940551 214714615 791482944 248401762 604930418 163070533 715772877 168227076 410903865 569157219 919630525 1348167 387930250 121438795 786446123 677365957 765983907 369855325 961139549 516260795 771452255 578114098 859593052 164746859 369383908 748625048 858864812 773538474 798900102 765637729 784058500 10565873 572302992 441102859 569726988 905835742 915898781 140688800 431402410 736208471 851368954 560673102 777488306 889523360 957727385 423138286 600505520 272972768 536121384 753209952 985971088 355707184 975627885 719607106 868333259 792797160 981417236 645659887 652245782 217216761 616781081 723058977 731443869 301699010 891320567 602002020 660043052 229582197 279173680 27943048 818931638 884924482 917317486 806976620 823067425 793097518 883378712 985733003 996855910 131721805 730286259 248993049 916404059 843120834 996604820 253634516 779108281 543182362 755320166 480191310 660857792 20293317 788119979 814923391 859146934 827596933 872228845 237974237 821509457 252032241 845638608 561737041 637676405 361831265 682033007 784597578 915042093 144497110 379770022 991560836 993674606 79487637 886531050 158880557 758427475 29314022 281043677 627548926 874451528 913860258 947484797 186877001 722494941 929331285 967284682 418132363 802108157 727752159 753845345 165930083 729537545 102190361 241821238 664353305 976776178 666282024 908626047 263883404 774833620 567407280 910809384 374800536 568666955 546404209 756568762 419897949 512255106 876038480 910472975 412740430 880354342 390257377 511594999 163772704 462553343 694227629 757453483 911664237 933865035 310673545 497003136 313159872 398351574 276406296 331589123 682169817 917946339 576726737 721692841 741962020 861238572 836683767 898317816 900766129 969790324 69491180 402997156 60080516 760889956 985307570 996229167 926947941 965766001 284937724 642201254 75605186 324259631 207476794 397743752 318014684 345074172 696859888 826512847 520254658 963722759 908945078 971588528 694937324 713122648 672080492 950976181 744040793 767191714 782560474 977656811 537689903 663341176 274249329 787614199 805173897 848606219 475177672 621055155 300884353 531365313 226608332 830760490 880838293 924200527 786861613 845502723 982143077 997444688 753303575 947000696 903673981 973630797 253147576 909733894 8216524 873553145 724704 134885224 937496829 998262685 921368690 927306616 13343035 388296933 399402643 730261932 945469940 986167274 697782060 956108390 513935607 975326560 2567008 36689668 798309814 841335363 557733104 703154263 230006651 784651527 41773585 948008646 427911940 966123182 200625568 927931020 834838497 938607863 344267496 351436727 296099368 792634769 767538725 824969091 365674927 594211890 135248895 634888196 526274185 849590790 641581548 884903641 65553617 570862727 667678018 850745759 908326068 934029577 755042437 986894006 510603431 656073697 569478364 824297654 567421935 799152406 206359333 737508327 38420022 547761236 790944757 892836651 321830494 731608838 397481287 818979631 733125302 899595251 618390522 891540352 482838629 485244433 596656113 706413718 580032212 792291641 993699954 998533657 11982303 46973936 326620804 625417304 124960349 341596614 244806686 419188124 645997037 654016448 966188036 982399597 944490094 984112161 672005790 959604136 827366994 842721582 139363731 870678886 975530884 985343721 735196287 984397260 945924301 962721913 219330617 970778026 982638192 996298016 973572257 985402136 411189531 941555305 886059679 985807798 387518472 392499486 897730532 899073275 21862988 153094908 48692897 531179916 379673482 659451793 27173676 180394310 613434679 787063357 369085433 438461774 682431537 894109879 467912517 627845853 316665644 770362906 213178698 535881390 301205122 375920706 245659166 856450527 617168558 986747869 700805165 830375125 697021361 950426555 235526967 501018323 526930161 893133143 628712157 785602175 945331512 962351769 114195449 248641424 882142217 941967973 220144802 964109432 766160941 984262481 240120355 395656333 148912482 523962166 308710584 676213675 463628935 786072985 903056456 972260497 364649491 575449118 158717451 732695719 407681099 546305743 120399192 988220804 24867278 387199062 773455390 935641740 679166510 739766349 913329863 935681019 302440740 514868720 198175720 799936034 500099248 792599424 631287440 953637450 127226243 262355077 23976560 897133577 255944029 458989388 113602771 840431791 81624361 212634950 84583282 429403158 923126500 961335074 90897351 209816235 722832615 868333028 836551599 995894241 144315494 874643866 288158666 350312225 125411886 671776135 146673059 207797124 393332005 674270695 479307605 762228138 758196948 892341722 737084605 833650789 426118177 468866420 222008731 723650872 77406874 474238680 777107698 872011907 104661651 854991906 653489724 663056510 286935681 555261584 533600771 799161735 698303351 974599565 848183024 968733195 83462704 231295908 679194591 761145276 217963343 363004701 34667045 988104334 565860604 830371063 82524091 964414240 97231032 449484512 449207227 998454941 364244117 761431283 830133714 861246536 642728808 791929725 867768392 935195337 178243353 909456565 670584286 829151551 529874720 651341317 746892270 859311532 599063365 852539992 631712505 644994484 198294944 730441770 818322920 873401904 695937638 986574249 545358184 589788061 471973931 991018656 107167170 320227433 614310720 776014442 507685124 527583375 498592323 653730741 402772071 526101552 941442070 997227070 458729737 830201636 741975194 957785878 838109092 949752998 652827291 939221501 364980290 805923731 717308423 977152064 691337130 968550448 327422848 344753817 678017760 870953893 725947816 773762682 441739551 844088680 940819777 971582641 952464871 973421464 417627141 723129098 869469820 931332012 612924024 953643349 529444647 858664304 117127365 622289144 864241425 869701160 588538766 921803213 558980857 563680447 161933720 803631590 977231831 999338636 824294989 975740957 203852739 988533938 297900313 462239669 524975842 847220961 354521344 852657662 59309653 394607754 363956859 746310919 263713733 661079662 739937972 787568692 658708803 988281441 792658939 830057474 873275180 993853721 408971043 684661745 72484627 203101223 934967072 967482565 468077882 750480895 876701863 927731445 511793612 980927675 304792699 737178554 615781789 651717985 558860606 869820527 362789711 933509959 919513917 920065346 75864216 102588941 383023941 602941974 129868205 281020035 632540866 866721709 954363403 967239893 331989193 898119236 668005806 712773250 567507100 682536280 69110027 998880688 525703549 584468889 766205312 909077364 353064148 965145649 589193113 848171930 940018477 946148321 964559055 976282486 130484353 971912502 383409085 609495100 101059070 666627495 373014859 592888522 331687558 749435482 532607574 990125771 836924034 911667925 985235771 996533954 244350799 455848141 794008273 946738868 185276793 948981049 882650252 947665703 338631530 740605383 541092737 887300756 633562661 991723620 224115288 647766485 772959950 932351249 806720998 977473129 650998078 922431919 779636414 954363450 217431772 511513739 78177444 740947996 805409217 976746255 318199966 470529138 828631715 847138556 16763568 248883501 419101701 643333532 506833137 729840699 16667743 670068736 467061992 474490138 349929668 937320675 144225692 383537416 185091067 990266841 621715495 718673604 182883663 250013467 990763489 996956197 693240775 933464621 868413745 875413988 498618971 612055684 72421528 741705549 746798866 869534171 177601741 684153015 142939796 697469898 857896024 905747579 282776873 808485109 944575327 989979500 977501028 981549307 421423954 704656398 669487225 824804485 119985529 378289119 415261094 946909965 770448056 812925429 679779951 900860472 689244843 860909109 831711631 910272713 87700956 857494378 356497900 661132348 461493753 988782002 467209838 663492045 407872344 735414923 464869718 537176632 124326372 310230737 897199487 922496790 367567472 658563362 695598911 767487869 949209381 996818472 931774580 939771618 743013658 826496913 750629556 910640633 528005530 715713974 267621249 479094061 270125727 587052358 327646415 561896101 180855059 793744070 788875449 896356268 379542652 964335064 303370881 649475206 276900365 756922647 850621743 929651496 162735414 886301441 382490165 859714896 534517779 685971579 743380929 900205012 969537360 984896575 279242483 763382454 407299931 803003588 946657905 987344473 110630392 339881717 520952583 889165691 3544339 469436345 451020674 517832548 352623145 933742167 54251118 330290476 167529937 994399872 782412344 945839265 682262840 763592638 570205417 817041611 545732823 703365949 61384856 70394001 116416767 733403483 990548253 999888372 121819884 281652019 428008379 725690510 776714145 941318952 336017565 882984748 184080505 783518067 242664817 945546042 437470345 518882514 358315415 479511910 570362593 663814021 956151838 974745524 330405689 824391873 277628313 884835370 392356429 412711192 127746991 239046273 651840194 655025959 176588721 908077571 668207593 988876348 662693205 728917721 271796081 682102209 469966284 498993839 678039816 843040215 743188642 959676300 141129039 329467953 578021399 612899937 689078103 981404831 904784838 944971855 401541726 919249990 825780880 908233697 280096484 807122347 985935411 996571521 362061264 923448166 297162635 371585892 131187669 548460414 117991484 286924853 362825184 702309244 767633731 908906708 490422763 910131600 428744771 775745786 435335914 911527645 923987467 940680339 893295645 920335605 683321706 698468176 229247269 853817220 896155976 941086769 540123200 719848913 777209284 819484337 498709651 627392911 117809865 467246836 933959166 991266331 155687902 927739557 626575682 911932288 684229901 747493623 17420297 966669772 174123184 643444164 239580356 614829219 757684445 826877965 212093297 590355991 497704831 541018139 283458078 713011006 42990773 636615404 859633750 963130930 583793606 948957700 907311855 969333313 597892501 620906825 715616800 763723959 895359206 896759254 585441456 797697092 752814111 793800607 197374463 831175716 770917777 986537499 49858446 551086341 772475568 786319064 696504992 779022252 195447109 895475007 326674316 784736385 105837049 119666709 176768074 217895389 303567094 590035290 534238242 650930660 32722548 781800909 933276368 970654776 198828382 592167947 662805383 863543500 111046529 435172619 687321815 925181101 892942229 932589896 440313430 626984378 694223907 811746785 912454896 988277738 543018641 944971494 867900887 892933225 829443828 846492070 818895668 973040245 625687764 658935265 466120755 759042662 838444261 987753096 259513744 712932429 176438372 385988578 929743332 973002740 183378629 619587712 968827662 993017579 621378073 918465654 413623105 838006668 496259277 689592798 289054128 299302755 458031263 766492045 604465209 675356933 533415576 785027553 154546199 331742525 433188003 858982751 309301769 385163627 482041322 900207520 160536695 957739626 604520112 906051262 313305048 371233610 953230058 962592022 673947249 826792190 695865957 782437161 3907307 341686958 334017825 891061650 608454048 941680896 89407974 770044573 896952449 919488891 487909062 878904366 917645987 978123582 991475407 995742659 104119130 170001226 690595596 834716250 183718019 275277776 709084031 955058363 497139473 938135916 400852942 463702920 872871404 874875131 264943278 754156151 863108922 967746548 465927366 628724337 916354995 953463727 817674676 993655287 315445332 630148813 701473573 815050432 879936722 990044446 654498526 875370068 741452590 805740741 375372749 818421293 735631883 804575154 349288933 581059291 81887453 828946435 367893492 386318543 615911848 841976517 942290372 973995997 163596311 503444459 293633400 448004679 528783742 531525652 168095929 628776690 11260445 434426913 692551816 827605113 421074862 807718523 64415518 983291004 341341728 701579633 436737548 576929645 401668056 796064037 448043316 717114347 908682839 994204997 667092482 938310898 490292267 553726649 556791056 970937085 855641180 953186682 606956417 780970360 779040785 977800056 326782151 838537232 533166379 901906749 536945121 930781044 265623530 359144317 956802502 986007267 949258302 992468048 818080455 965159564 616788688 733858329 531610647 601643202 788149116 803776786 409634116 595993163 500245071 933832236 923713426 984390595 300270159 796106566 64137239 406592432 448438223 786247687 713654554 751028186 753726294 760783395 443961791 444562954 969441069 987756216 425994207 772813799 687391638 826568298 522949320 823244380 968937360 982058540 739035663 951434273 661410355 807817530 87824201 881859674 25999986 424984175 76340128 995091368 278517405 878301118 125678017 332159180 342190665 683957990 209576603 285920213 511516217 916600043 778072248 940486722 928538250 935168548 15772626 971518488 493196540 555168269 921624809 946874333 585291462 736792539 801788091 973887001 109685631 139095142 619358086 864283653 60223201 873509998 826859520 831374518 92392228 688398455 334039488 402881598 244619334 303218614 470633559 906527246 711945508 979696819 383578620 932483366 844852603 885572171 71957304 911763903 129152672 158061222 253315104 307767493 90945730 423605791 908900977 955195653 193769391 490593164 221609410 875187490 655643452 884929661 976278897 999386975 597006216 756774701 479323743 518404971 451086041 900891912 57479502 482946222 489550831 618732933 54037326 685323531 978630494 995040787 316702716 580614961 625275716 795586814 715285016 811813073 282270068 930972623 241470857 589865569 682230543 876791073 183689664 488232799 762256727 902236175 91104672 527055869 318487272 563909729 38791631 612588409 796205940 958326364 988860991 997863739 211482097 399916160 624058314 729855183 138182959 476290643 853825902 921697618 977217371 996085641 363688058 994566556 531191235 603154770 340442272 941910617 420821444 500029296 193208056 713865949 406855943 507405998 128977519 710578689 166626891 990785151 535915485 942993006 860130080 999209776 427289219 543236440 43303944 662932219 53073259 852678674 754778543 935664646 453568196 606468633 90183530 517880995 312231967 906576457 637384 861757340 345795703 489851290 95496088 758471074 969588415 978221027 334845429 364140307 531124371 978893483 615540668 969960337 657957724 768208934 209491530 331409415 425482053 548848733 331330853 462638251 283868453 680042418 900645023 919379696 789663333 972071543 774102155 887579312 413613263 935278439 833508428 957758790 444655263 637613849 297530237 608568249 48432217 369552437 478047103 900409499 866013251 953865709 596271130 731972922 717704813 943379780 275491599 862867033 653598889 721809459 593708394 923773250 511948886 768559890 246304871 474938269 748425738 936093721 188551962 509341862 731963630 742798394 990737401 998080597 557027964 949241451 971297118 989738103 16171574 783343831 726314137 728514485 320834847 333996125 921575439 929736224 205314362 968823004 861014410 945550731 800794735 908629307 470195071 544945777 926755038 988559355 98091214 457391550 222025060 504275337 198104755 650156935 837029006 893217462 27000370 102707637 746589214 957785445 235291985 464865868 692742324 729870690 181643882 599816824 264780507 683047221 459963926 770708229 56952159 548864446 480156957 881973795 260726269 279902620 71094014 544320746 434988552 984650796 751663919 938114540 388539303 801026871 170115168 702413112 702970563 782115403 829415015 977334985 758343731 823472896 68924720 456274534 204250505 424719757 989697734 989805217 79560802 243268828 188127124 623524383 235776820 561657956 729958251 784557682 586084932 775200582 171291222 610515341 652554728 912504564 679382159 880158451 187354969 675225716 929173343 934466317 27404290 777212153 385777403 978161134 375042715 888204243 1405602 818214622 802664522 970644731 694287299 861717416 426620838 721413339 478324685 554015044 927845836 973469951 246020447 379902079 667988885 993232627 135990936 151424458 865384877 868653388 609977343 920182510 679953297 829026853 451780319 910770734 880437897 909213978 859368851 907411539 844886349 960402957 4536445 416519431 962313277 968781916 327892412 526015660 604462603 946942006 883629416 982556474 870000182 929696375 241377684 755462512 586501303 928738578 867067012 954852547 441552863 847670241 957851107 964021180 847283275 902937643 524352988 896458829 872300055 916643833 1107256 493782294 13099332 536921237 436630508 470491984 131894527 564772617 424677736 979895409 692593066 819791211 348604098 935313013 432969807 688707440 149871532 835024004 10307391 499065302 804555931 860732108 180144914 583833269 570522568 865222668 75263360 232077271 93566867 477072519 681598485 894914287 603549115 780115494 645337380 736567500 663416329 927808977 919683686 935699133 983146756 988783007 666555777 699355544 73329414 412011738 74972147 908817942 492980253 823913058 269246248 317412534 606158245 827716480 676569 75382040 260795782 702917877 467225388 868889606 854173080 955955052 162156637 344074602 807959384 823036996 590772980 711468670 203035969 349892001 233795501 491784661 795293647 850954442 542077608 996160340 473025020 987830195 930368959 945918383 903988457 931720767 907530133 967943615 538502551 620974636 163532240 267262926 800564888 965005561 990946788 994730026 871822743 914191098 522086771 662082696 278817019 378789888 955733065 956267327 560896999 743560542 439790910 597501589 912175077 926799972 654909434 992316503 692817628 703413020 346043021 867437697 302195425 786496948 965499304 976631334 471806716 709027314 586571099 946314824 11061163 892658135 930695601 978769102 587225904 734621515 515369760 603763300 630060320 639562647 936814821 994437428 712106927 730788662 998361992 998952334 826828215 946075685 510157014 598097765 604721573 994954730 222723969 522827176 687987676 936154490 244003096 786156626 833459667 959579053 236666821 412657289 443784697 848999682 466785081 965401857 121652687 671163106 291025358 508074920 39376718 591020813 380777961 917153470 184900600 810428351 670288451 940578505 77880518 471455541 466459663 474298718 300155034 519937429 626868380 744962594 209989068 630094763 712190164 866233772 206187511 989802414 334006309 483877212 743803364 870468271 727026414 896255201 702106325 894535894 983057521 998790802 314510358 572527749 455975353 846545586 181169577 947159537 86459240 997344463 723977343 839317907 499633953 739392310 664777413 986287758 93803452 559831064 402992176 728138045 390467164 767284457 480238421 589892154 165803403 606367431 93477719 746361362 482050576 730464723 67525743 727914782 743215076 952438722 634867795 688478615 747708805 846256590 925704507 986492725 393972725 458085121 938564456 988502812 741648621 743592439 470514766 493388840 952425524 973883049 378888296 601118978 37357798 110195096 678590411 908892479 942133908 952249447 694399685 987557837 746091727 875398272 855409584 923165200 362777501 539552381 417710617 691862631 816760863 883227028 610846563 708841628 581169391 636643262 958960279 995654198 643445338 723236340 761557712 987730546 333302020 603940067 286208643 712151875 34464843 635369456 78699903 133109484 8143494 686323126 565407544 670321908 843091440 978377385 986595092 987393469 599312124 836859911 990682146 999267788 807167054 944998859 891124032 894494052 145496258 654646134 279773967 739682629 500014810 548634062 545406551 676600215 2837056 311906390 511520081 531199594 680466253 850553671 79121876 545085732 891053883 944899262 55101885 735062959 678994636 949919628 531027312 836275193 482219895 650359316 310981090 470658400 53927736 281049743 379949876 829658558 190156481 270994522 538045232 541944190 702701469 750811892 227759037 242508537 159103156 416294065 249991250 383671167 180839915 220030787 850323446 909560288 569584813 852359795 719207509 996653438 610799488 775839079 407424036 494093296 212969339 398995617 111281178 834648514 426017457 906458240 140846674 875293578 803643402 885226976 533933742 551159458 169399396 651904978 173283390 675160314 726263396 879779036 873459329 898628346 263627797 345888205 674925902 941664601 145141139 596957599 999080401 999118051 75297573 192500000 898803614 911345919 728332531 828079023 774126671 864406575 488556470 639558361 440576614 849201670 500812012 956128019 817179248 942103648 475068581 722140161 39285700 570559878 510665153 908402476 513088870 836310678 91064310 754298288 328330842 536217151 697212685 828366965 824736249 896366781 155430572 430481009 522352718 808407074 35158868 447456044 848476939 850018073 295731017 361489321 65566501 874849099 85707171 182107509 158439674 701059153 12560864 115311042 312761841 539111018 536748284 731595151 189524118 667839176 197859381 423526410 557818386 735363184 484046042 638938883 891061306 912305763 116446581 154108449 602990349 626417640 294328025 702314035 460197099 583050222 39771315 508288462 404582364 526666296 774923240 944642659 899597768 927508371 392973953 985457586 766706748 926905403 565743407 658380164 412867139 679755759 218834706 913729618 215884145 821572711 404089530 766545604 219236441 299379103 459679653 577849623 327511745 430046996 120517786 768817845 276635599 878348670 592530039 785297847 77791632 150540341 157060707 396324782 242144026 768873048 729007057 750381278 884365331 984882529 874530662 957109168 947455078 980256841 291961136 870989711 471897629 633713103 38790066 918008471 872152717 901911808 374867796 567390825 225263445 857690658 95282579 583509661 608328274 827894240 768987371 795142772 266168787 493495360 601278357 919270824 959499949 970803583 425643092 910784121 320859436 920313871 541140897 573045934 565640565 999397118 156802922 616601039 99743738 501089489 864655463 869087337 528670016 970290582 472094111 918876558 410638592 532765967 537223407 710275191 575059249 787914708 413729573 774450259 234646700 689413361 101140220 673885542 317738975 364992887 879241341 945618218 49086090 915975429 805020243 809102000 833353681 887019050 333088501 955257337 272849593 285521677 900427399 959542431 297644724 527158096 271015028 448801866 668386347 819843961 738047030 809009524 331678522 867447500 108830825 130111099 198220500 923498474 85177927 483066802 491452627 544259131 530207572 730592043 381365118 878633893 313843195 927144034 952244923 999063646 345420608 761947879 929741747 978958927 715607766 882903349 420796568 480630136 471662513 671105832 917410240 933489316 333196209 726578506 425684015 816707836 856981897 914677978 554920981 935242785 731046452 796017603 423565893 881592370 847089376 880873200 511400686 525358520 73016642 735510358 45110375 668538968 354916376 391588679 712876857 861266424 54258988 919749027 303717086 465397132 145240901 980631084 924619709 934391273 776117271 897229318 210317217 566860467 686362128 942357687 639484986 895339889 25663207 78533726 76765352 167261663 303619158 931762250 640421819 924941471 820166694 834773282 895868489 905345775 469747768 515232411 436604054 823811069 56608019 707823333 159583784 309421262 862428895 956589666 717370965 990891435 134957879 392489522 281690600 803626947 445769775 886568894 420832217 983124738 529730945 636051643 135633643 289010105 906211916 939163613 773164654 916654007 294871441 550488549 618832585 676020639 129600002 874615321 567180711 949889863 916989825 945179834 789660677 844154628 469121550 838855259 862504694 963500782 499227899 579064254 450385555 876172722 400095177 550288400 953454175 976395665 582196526 594271941 898018442 996285986 351632244 519278963 584560193 712328080 685596195 927721656 366323663 880740165 226379136 393751039 138204606 340962836 100461199 150319820 758609415 767790248 606394163 978737329 213437320 933117343 62678293 547610651 830235583 877163449 513963896 984265500 734765295 828497534 320822696 443252636 816838521 905605890 244524129 716793812 101016439 506089482 133954510 396843738 122827236 802193198 514679341 715813001 107414683 174518760 415024049 552501072 862033729 897076169 565689084 812306728 633936899 669644713 541188401 687794504 566941452 685759153 719960594 775110267 633990581 714401756 24992805 810018014 856810017 868654561 854592397 995411819 105246047 826958714 709156240 965979428 550426354 833280482 436103984 826436596 775349968 792269796 339130603 831403302 577515393 711756136 755673811 983682142 108191527 799238518 320606656 534449534 598236627 622536542 838086466 851536412 351129288 671504459 981588145 983371245 535840727 655278009 466920507 714076124 734800263 752476576 589739123 755534813 903322227 914998391 547310041 575727827 207798693 298593903 675238180 987937460 892804646 956216852 835938126 839804249 539533293 797156396 143383002 182977105 933530783 972774769 993661051 998836368 485898218 551537536 566080846 683014011 281939136 444175230 940621803 952614382 889645978 999689675 908085571 923929701 73601384 660553986 818176630 885628167 178033480 590448719 697010137 750512938 443299808 636904989 667010847 845587272 764609935 859549970 423507726 983098973 686658532 740066421 136880182 376254651 10227572 725979558 889798990 948808852 437287720 733649313 885458644 898879070 308020372 986291767 579944863 606917528 251122944 474211995 306267769 463595945 5291016 72474550 820628536 983555723 897673528 998090952 448906828 988126082 580309088 724682120 112994117 430330826 510665630 546909376 364042592 481268613 811499481 952964521 550706856 796243562 599266376 786435506 878177923 905230429 615189222 621258522 366281994 649128046 815587182 823660722 479057210 927717724 480314287 961617950 198763213 232503343 553414134 654277304 101775955 584388333 903728636 990521588 986137159 993062164 561184956 915880602 340938102 401458644 593619444 683900238 14886615 829818112 482698983 677826620 978321691 992126274 701978848 740780983 324591210 750786073 438455743 633882982 268901229 999050157 269290108 842333167 626934761 789053582 894566052 907022722 640641951 873262599 108761483 837072997 106521488 213505802 192784074 871480429 151509771 298375446 770122217 929353532 390309407 496059503 496707256 733885455 960033521 974459808 735433636 935135429 667317233 821285390 257289572 707660121 385724992 987876756 964262206 964809986 281132574 324600448 330480520 573755791 7338984 956029950 137443920 142211275 244725164 603265058 868487854 889542887 575990986 807675220 374016272 433948164 582647619 813324770 249375872 901724104 396359121 552828127 431261221 661056732 346895768 551668379 213907226 788286598 938051126 943225222 439120646 747873649 450505753 528324870 463359936 831192917 863025160 990968343 259300861 379894601 996408214 996790234 413995365 422687111 245567167 663433709 354063399 835517869 144205743 319733524 658122665 765314302 830068916 955255427 155583881 565824061 243542845 298545304 122434104 142135825 68892957 649381231 376463203 665687527 820074245 849249284 409321941 822153359 312119829 535032504 153439513 847615034 89087645 113858209 443161796 887603981 652527746 979371039 58877105 529490875 378377676 418643156 855638362 869275069 405721813 587389014 126143011 248348816 185274301 241220606 800817548 934516349 926684098 954773008 321767960 956001383 356836834 672449340 274771095 702548293 195921181 493295850 258314973 280613138 382495177 814067195 477417267 995201858 746605633 871376088 524480093 927932233 724579701 989320139 262300165 667617569 503590698 741345860 427151320 761486301 544381618 872205963 82116139 947192702 875161102 976544958 836468501 869315028 648746699 917247205 57904358 522983930 430587556 856515417 981777592 992319598 259368229 424655014 184840727 576410935 727288748 926177663 198981882 442117845 773826967 790135357 184223416 924131850 807225144 819532025 523367846 847808068 861132622 910845217 880655827 957183327 918879482 924329328 743885312 934683311 420034142 473605598 768882497 895065928 392753653 647951667 934756868 948609075 460448563 816728613 131094433 422771081 914289217 974564416 568911395 958595011 481126283 846108218 868145863 958388857 856217520 954312158 977224613 981649629 416069804 898923908 323672275 544045920 254745474 977759634 109150916 593363649 678674189 991576458 718732839 984245941 246620006 772002318 43222468 620649665 999507509 999906720 873638441 956966548 760275841 884606714 326858052 564601699 513571086 515740038 115663255 738199841 57691193 400689230 482931607 614043417 337470687 507174044 843212818 914701117 171560882 806970176 802708482 810695357 164469929 821275592 599266276 843302190 393388873 875074417 156957084 853200224 627241009 731386403 516359150 652217974 579202535 692170780 211039995 438468918 217857 413879484 673958220 957793924 384108492 887579660 961140057 962869873 464171176 642254414 192844414 799002266 776603227 904727287 706911019 770526722 313064582 976861790 706454817 783691514 965164898 965492366 457784204 643912112 649194307 938393448 610558581 960937249 67709641 588208415 656727590 925059085 634466148 897116702 408866941 815053521 34881848 86056568 209580079 623355113 557094469 918820496 439027988 545924264 970671675 998015588 784043162 865352263 661984411 884730393 505936567 722922134 246197816 540272282 850218121 882554233 174682640 357119341 886087463 888151751 885711252 947244204 902383874 936915098 318304512 989253136 169822065 204929611 866784315 969652701 413995151 546945193 507354339 979777876 815550890 958978478 132717794 855844720 120371892 402010851 362830007 672818650 313508920 895977431 762834152 950882784 978046457 995563602 627925012 656727757 412601371 595727515 562321600 837098829 958020605 996734236 240829693 560430596 59343590 947764888 995931612 999198604 212729473 243886924 829487928 979510216 281780028 770787030 580242278 979186152 722145671 842676218 136252721 486724425 151082989 655529248 494811637 683156513 920506364 937604998 149591696 693523521 667675314 978858834 618950557 936494097 465021111 674556087 249307516 278623117 835442091 909673635 544089923 842285906 161595916 962195198 833895466 883693243 789363611 817357845 52893699 192871956 900258724 910620844 694563230 785597421 338532677 882693048 248991748 733130205 871060654 962171875 179180228 381880137 446036548 582075633 924710721 927455529 238506902 669418880 71234027 320741264 475068043 672684168 666537065 671724871 749723020 923225795 593965187 788279587 154100311 732354233 338283003 485703922 316905097 499685399 10441070 39212414 251155627 743607227 616244797 996792389 214246349 897465105 774164802 971771898 650738255 738365625 111544202 214888804 672806618 930233734 353198529 993620706 638572565 799482347 489655465 904556507 694116871 843540489 813581919 867869551 328974730 982716819 148063152 488098645 741475374 867047139 812621396 875018690 859222257 872745822 681059350 975090310 423278203 921436124 226269469 600185067 194333803 325526130 715780152 757812029 238873380 455460603 14058730 133453974 412445463 454681925 916999486 921194230 766307801 801340968 619339775 995101553 6942186 457715606 12727427 541614884 146182237 381490841 394129687 682761962 391558083 984659992 191486118 450249692 573301074 595327941 986668187 998403321 369026893 876792569 515013053 689155364 343563241 763877969 903256091 973110851 426458521 435035411 954783280 967166613 340662824 423337424 705899715 899871681 648432942 654485087 287590576 822873432 643872664 709363609 105558295 878979785 145456004 795620969 936757083 960153452 1835187 996236746 739512196 749731165 704953786 879963742 617583787 708635054 608224617 839727679 376175677 601389748 64743466 928490174 243026731 273452421 800865592 916769323 787147065 812318941 653627153 808373610 127987047 294641811 398274861 947920711 599744275 717461280 136866104 334624853 731382900 793731189 975382037 989761575 473112112 780780605 77858718 364603049 38201745 333329481 224650542 668521244 668306332 762687576 315262550 340340577 413457070 514159473 617109397 971472769 275491246 911123630 755741597 785744287 53998438 968235185 153304801 893051515 879960757 913543281 630198789 652636858 841373846 945486718 10960957 481002139 591494624 626461084 115025079 870509942 878196472 987180890 36841311 894649413 310861639 793527526 109661441 546734797 178201581 816749972 839510234 994809499 846952832 917045310 371530207 506134739 311628540 594267523 627546823 847131213 819879719 905492655 915865402 917153339 493618784 996648637 872968028 893710770 835839866 980668325 177480297 662287653 793760698 856435627 57225851 359810000 255081763 290651393 590904797 720766690 89127910 803242280 281719249 924836892 380995697 756744777 434028232 803187818 762218024 872047989 244508782 751889386 303967002 778642148 884727914 913639810 682809695 711915855 577507909 592665921 307163882 500573768 514698519 936441205 876952225 956674982 968006779 986883359 737807102 759032994 324672882 975119724 155377967 619470449 138608946 903270533 150965426 718906120 724132339 749614766 620645633 790580277 443692706 668679057 738806451 785726426 759452326 994412767 357387457 555679178 841900662 926354866 564757138 890369129 132113083 787111083 646359907 974588050 163164526 294232809 918824110 929958424 359273265 419401442 300539504 330691633 308864941 356504007 789949966 866925277 504011155 902578036 464898861 774549634 317937668 971269690 829323247 996001076 605941739 810980413 852729581 854139833 23106535 125657846 688580738 750993773 113390912 682985667 197387400 901855227 590281590 788895334 312460916 783625389 564531061 768544885 622515887 760660360 313136257 660257506 788010770 900456606 668316788 735131032 514498921 946501443 740422009 880028284 939272420 964385283 692345272 806940469 692392814 733927799 821842467 853273761 219216549 979750196 642057414 765896199 585215048 784049896 567159529 901170961 283529065 843219584 231211024 970455060 183608648 787983879 518414509 751987732 757320973 908397919 272308205 699161489 198528342 870168827 599055623 747238499 286420210 377766702 703912454 905226697 680273565 968117940 813449533 878058146 957152849 986720063 25093760 337490887 693265474 796538467 860072234 864523840 783176474 932864600 905615189 922629642 373992027 837447962 898332200 951678935 509455969 629974468 208267909 966027272 369713523 370413938 302970163 504147907 125436648 524378216 669156343 962684878 626330663 689987369 371901285 697871843 820007755 828137941 286922006 542677956 70500350 350082314 111209780 948495571 142957892 235265657 77905103 715873901 316899566 709316185 997983956 999503623 665728081 757896014 271361386 878328336 165306045 822831752 414460721 972289358 233226256 375700446 467165451 562125569 500548640 889412395 201522444 922383720 520676445 833107416 427129602 609050491 886140354 910692661 171306642 718042217 726125361 789877429 264315293 486773840 752524619 935628148 478648117 974026798 37762148 223563039 3295706 546298070 872974232 942253770 203205522 570460117 522077783 613962297 727031107 820355732 758667784 786109882 150100938 383266526 650783000 975510516 39215160 185394533 831338673 963979787 116419994 759260732 852499232 984146455 183290238 329625208 117674698 451905003 926415646 958432893 838363174 986576598 359143996 728610081 371033208 875654603 248037700 453005720 513991997 906245202 433125982 849192786 125344104 252832311 858216121 944911054 892867704 943361678 324657603 657172456 791557575 898464489 924926167 995294159 628293130 648100477 665558961 745039733 743542479 923772339 363781098 644595451 929848474 940756750 928135885 962133952 885544551 985603867 136208804 328205392 856460508 894255932 744043287 802030997 828097607 882310431 919978168 957099901 688916827 863712706 873725152 965469406 623756883 931754690 733845343 861285474 345259574 727331964 523990957 688884318 125966132 294891388 836870315 981044709 624124400 944175312 57195034 929622415 611970562 690993060 961997992 966349848 199693363 733814733 723189364 970417192 920429597 996774098 632399113 816351220 561876115 868524772 444500023 914429308 238696311 314011179 619603109 716136979 587151466 849830690 290374556 852039013 516304237 573899206 413209447 813216904 396293968 907739359 492365927 712924513 745484426 786508231 50964676 360929981 937967210 968352364 818889533 906918184 706592174 856832313 666037011 741219064 509944732 929263513 690565818 939500843 63798869 142121757 567937378 702078750 886335058 966124547 368993282 470614961 96797131 688142505 904694523 996052977 930732658 965699502 512358476 878693048 766338219 879324742 857012798 991498548 832843579 860918835 284516597 716570521 280507595 440092401 549746109 634331162 598356124 859750233 968894635 979812590 430683897 431074985 308082050 879548092 936363142 969174144 475740090 852486223 435160838 548127916 999610826 999662548 484808672 596600101 840674537 963095990 987242764 993165705 858283227 992824084 347947103 900362044 59295710 886508449 142628320 527840072 905363881 981900327 84095224 958952583 990025659 995732877 638392008 650887557 73898686 447860553 862935044 911856337 236534373 497116559 924618926 996393891 907003352 919985801 501750857 610121653 262064392 840926627 944151295 957929527 298388637 823079101 930330669 971914169 931106125 973742108 686468457 898551088 140424642 766110885 830134714 839125343 104365197 519650423 48776315 500632946 912121031 916929092 520724976 834970927 838933170 917244974 842173874 860626072 968400896 977374564 122176717 670891891 176205500 516246940 631410778 866293241 534874251 961882111 285570716 434183792 338867728 702544143 152742540 385598702 688646046 780333747 111402337 700979681 663647493 789826407 679050053 891038965 925670056 979468548 118624214 455122135 183458273 210517227 732529936 732653951 349963229 727975616 506347357 679484283 521578711 983919576 738574832 956738236 261356138 556339503 324675257 555358158 839148042 945810901 285567946 654271825 521709425 587785757 544770786 994766830 377902745 460957274 577242239 884781498 225976812 235211710 759554242 938678092 638527664 864026727 269955382 439156137 2457543 988231911 751520909 939376794 939736556 943531359 929368655 948492601 343039888 660206838 666487218 689462147 531021397 944849624 309910466 459541700 687415993 789338549 961673068 987078527 367483571 916031613 680958462 983396695 12747483 683285832 174797500 252161042 45816160 48100400 394610949 753125716 231304399 343208115 91748146 271900655 814306291 962914698 296607114 720127097 903852107 990730362 301221369 431050071 962568798 992861492 487689020 792261086 310533778 886700065 929510602 991864063 855885991 884037563 526313285 971414325 879803316 974007586 159306135 913606774 889762679 919242133 977522693 980954126 486045164 625831735 507148690 898704093 679770504 916766370 566944086 789927588 265786468 885746232 305291255 849022264 832406331 977364761 644651844 906737578 375538558 722876513 331973042 607289071 621771680 673685183 572484930 663463401 359713820 793509725 975738402 979091274 920079035 966745328 40549222 785853239 391905439 601142512 833500981 943243635 24770647 181559286 236550886 726565125 375046273 561401700 321300396 387002951 893674968 958559518 713516965 801535967 753221810 840308692 616095788 954117545 277307774 746948102 467254352 714489869 971236398 984727608 998140642 998540049 892382011 916019717 229036077 550505662 840030152 931674572 295284234 507336757 550602139 851909928 581194135 776147328 361991930 391328967 715533809 831580272 974037876 980097195 502346275 974942176 136239036 662664500 325458810 345650909 571793453 959758795 762298083 905883037 352795003 713158938 518922828 635304203 727788655 828766883 427532438 542248425 563845149 755025349 423564748 697493675 189817875 883182200 228621722 493170125 392377097 510723102 804013183 948804684 546039233 546905761 30025901 315946270 710018703 858349939 767733888 773080651 954712928 969071769 411898564 727526409 755973405 793067781 35881420 706498200 290624921 417810407 583215951 943586738 540159411 585248085 875791075 905524349 379251030 496906902 125272703 895789771 665291338 995089327 687368918 860517540 51710481 895540953 286940899 879528661 719878586 878352608 520973408 710894820 839042586 902861942 194549941 977061581 483916848 533947356 842965652 854602951 12163596 739646491 894749250 983276294 661186583 668186673 57718168 210280051 642784830 992012665 389713619 591698547 976370794 977008422 961193507 985893782 875003431 901794641 667137429 749269727 431045226 492211998 310955358 461154270 927732204 940675855 910413179 968955177 212300848 726086714 521220876 873163226 625144621 693436809 808692392 814847742 639631580 985998225 526402199 742852817 606342923 868555188 873224145 982365751 37052017 528930300 521173141 718330620 561275404 671473520 608470805 880686642 319467701 848089389 452782444 738232316 431967063 510427196 578567968 897311506 159540194 414971853 13425183 472269183 899873655 930754160 472201480 726262458 741690876 850694195 52073550 647567857 980830966 990981797 637551024 973729609 790811866 799806137 290021961 850994660 424925755 902507719 389671807 851636423 690001697 999363928 179666065 429966089 866088933 921474360 302000926 581984694 302791456 912360619 742048772 789483944 489180032 871502099 377826270 804874841 687159379 960484776 214576824 805555965 512515075 734544787 944572800 990944988 934833249 959480611 520628961 846031674 954886466 984895736 36332778 549547562 76079886 922988534 478755607 911441409 187566182 414476834 564940681 911632557 192716351 972759275 501886654 560223573 683848458 685752631 801896854 847194523 660840777 675202150 912577753 958105064 887071131 987907498 537955629 614110761 603006910 650176496 981129167 990555106 609352156 803287483 697265129 719962003 864194983 950157773 975110370 975507640 490402828 728715693 649573602 657168911 477356321 869358122 26820057 305027260 771187722 801935433 830664626 879273428 971593848 986561357 25074221 168839148 969192278 970471492 418330594 424629990 595723345 725388477 831670597 976677447 789923838 793214225 685916708 715430140 295521576 458894863 409268400 606892821 157393744 765816853 471244295 867520307 351948931 960609268 115381816 816462954 368829798 790365679 507160377 546381759 532071077 970446024 416810159 859771202 595927469 624610885 974657015 992812337 306262457 977082856 741820446 954170475 442271913 754240346 821579826 871180835 976515659 993944776 314195987 567680655 467846249 763923575 508783448 883675184 730960091 777353261 216560074 799990786 272577680 570321228 699966190 732075336 317730889 526155044 654139522 902717266 645925429 692258608 229130444 815649274 710770790 824645621 939305578 992703465 297121614 797656136 119855033 872970053 679733186 729096609 378173407 977380828 99273362 301902619 37838252 615748279 574598492 696461540 483953367 840302838 253237502 746439136 727666597 810258085 770159928 946833487 715678271 895462876 845476305 968760626 425192899 605951995 455502211 891246981 699017045 886439416 319640396 930303339 747665458 790350808 650127795 931724564 273909469 328045988 853844388 921224139 459722697 628644762 103292298 757298775 289172556 367725172 172334261 261539359 863241349 986243743 797524595 926527489 948247654 964977783 956911404 964926012 693455513 721684648 93892265 266869117 897252978 958228815 482120236 735699338 97307948 533434724 303546630 924822833 522554736 755361343 201118521 467199977 142824544 157431540 848804455 875780254 725012615 851522418 853737545 867233222 553576303 667984907 71197415 585205693 709337736 734101818 401251652 453182919 509304546 579078522 127347182 773867848 387212451 899302742 693376551 921220457 157168756 678811641 884047218 984986821 296729084 657091149 624339372 672911821 933731120 996749084 262022565 950771977 692384100 886406848 720642035 744163520 757175882 986903521 109198299 527251949 629036355 868867260 366286011 856775526 742369327 905022238 717019486 793836591 240811050 600537231 639150621 778407598 775721203 969619947 343095339 450375020 383670738 604857216 810130054 922321925 844649894 926189686 170174279 297104847 741460115 784251059 627819560 821480385 657188295 749852475 25233427 26987278 57710260 914888499 817337253 915389424 601855731 990417729 61678354 267956306 903044773 946813805 497024907 964979991 274546376 876327813 528760616 660592763 109048705 320933905 974387773 975962823 940221234 997161784 795583773 867714806 959492266 975620978 149290293 177923285 569930511 844370711 62936931 731936958 398757114 625566290 90396068 193658240 333242344 903872766 327825260 591017485 214060582 874514755 22219683 863519722 977360103 989698908 224969657 663507415 951825321 972757840 720323318 927838432 350132384 481332966 531385465 669333757 745908236 805885468 826549721 869721797 186205726 792281512 64494346 102674648 71147886 483030935 65053786 956768306 969698480 975845895 245653760 605226679 100711580 235875209 825142220 930714311 601529426 970305078 770360580 866227825 237440784 491352786 728572234 793686840 442129740 944090474 246506233 608165056 658550048 857132309 478011850 733821485 308725762 909507478 824046138 834631063 131196981 370053159 589186372 690975156 288341957 323149694 163345298 886989392 499256744 816015652 400457665 942208353 799284707 818292959 516745926 864901838 734093318 946839944 692518228 841083694 45955478 768925968 740757247 753156834 327298713 358696200 30834799 862394732 810214114 840302030 850646714 919428937 398676015 662757622 30254978 888548616 673570167 869553778 43119728 383638602 517103589 712344176 62940329 890409126 458567114 763568761 18693584 680342469 190643162 552095805 813800560 901742730 530557618 582152627 342578698 698648632 825920910 984649244 699684392 944391375 744377093 774544452 104424379 734639453 443456334 468086437 715986947 771666002 978650767 997333942 241534769 989220815 45976594 437759029 87415560 424714017 873458470 920627384 714767935 851464771 697740332 795454324 639747197 896660432 238476977 455583729 298498287 886465117 372971140 932237522 91660520 359621842 333277853 774516344 404187323 570013905 211875455 321807024 612963758 899217544 778909358 889937713 456024709 958199738 360135809 829462284 645813573 945033056 966032311 970765911 382053481 617162001 672380053 765926104 431192410 558279455 980329380 986555100 391987973 627412701 171199487 220061050 624726584 985333602 782493121 920611932 614767292 983738997 243521797 284420707 544519019 827137142 519695886 593389566 772572385 984355343 239411676 388485643 515403456 959884993 907334151 910609925 587225949 798950459 659550119 944684973 683661659 775930432 699628050 720918504 90097045 888767093 585690584 656918783 243329479 730491433 64811688 825431119 495784654 877468786 34548434 715543736 214787944 465758566 790997854 937592885 132659466 273683600 773635898 916770263 385254813 613469437 195607959 331465093 969324932 982378242 368853772 784744100 983070849 997583252 265274795 685248450 268855910 869796024 217001917 971765819 197738541 582014497 978290250 986160660 799800332 877682539 489708667 496373738 6050111 240495558 890291222 958508295 608738284 979404066 348096152 535449732 692330321 859832317 42382449 462150060 610454792 840674828 465654543 880848462 190922066 246026189 487278883 900593304 658294710 775594120 538731237 713161276 994248998 998696703 749507726 846806696 889001438 936395282 975103780 993235827 687174965 735827811 824964400 856878445 520844210 831739854 86322209 826271935 443018463 823390539 334542670 985616893 752523651 802209834 239825573 925382537 173958226 571848046 829732707 965624094 862377855 909178868 937221946 950364443 426300684 916931042 276618265 393691067 781818748 973843086 81088090 869364013 243953797 591456685 473059801 909858931 603864363 872857702 856367130 889474803 719466298 750417556 602747411 652267731 802522269 873815983 583474184 925481577 33768331 115642704 573560204 630905265 709274752 819909655 779490877 905450279 25520695 450743468 204544639 526320584 621262431 654098502 669731164 681755361 39708815 683172412 524610691 722071813 440788014 763368879 374402713 943731840 971065518 977995234 231932501 332557591 810752998 921924094 179512553 537358674 739062046 828995815 520099136 536991017 102310666 488318332 800681127 814103188 853320908 889259463 182704648 516136463 425190148 700831996 713558883 980709217 412325339 702352696 841753025 941488074 290598899 617460864 362743858 934891349 671359230 674307438 457924721 911492598 195655898 565794308 185046257 590522824 980856409 996662601 896466834 975469599 476690569 865367721 714301984 985969779 505987295 625949564 748117278 815223825 831793206 908215662 402432423 408689878 595851854 850652812 699001377 783023517 318964427 566318965 399216123 927024292 135731700 538457270 387828187 882813006 383040680 623691228 903667067 919301131 674228469 758972329 738955745 768686544 564182171 593384363 384973573 526464538 812252928 836197983 978945595 981782530 381310486 830485032 678727946 743430400 461497317 883409789 85849172 108477921 854194756 951196888 844567173 884711382 526474631 621173031 421722608 498876986 961493485 983081827 449859484 842231801 964645594 991293196 123475680 392344198 849680643 997341245 863195322 881092497 529980239 581454642 762237131 845374197 279618800 550178900 608997145 873984759 632880579 808714466 828812502 944008714 891031678 909426079 785493635 830386202 910833166 923718837 939492748 967734393 307669731 442623513 957557607 972227658 510637623 694814597 379318591 434152226 822212908 936415809 287562734 955262863 474300995 954217152 879210598 891782447 324241848 469042217 422766126 747791331 369488688 697305808 861078672 884193421 715846796 746724169 82588823 378050839 366272012 970026602 364351710 482806922 199670950 361815814 490993832 926107677 932575798 955951361 399221592 844583150 283815319 812603526 715571069 796679429 798376930 911434698 896087326 913173743 512814651 561901979 547012717 605729389 335958175 814317109 646734045 787444418 733353943 794843980 367764852 869456924 255418800 815076396 105243139 289816618 447801540 604470888 897209128 954747334 619735306 635851355 930782645 982094438 939666539 942994588 577812930 582315353 982672649 996228542 267021138 755671470 317499554 730498392 372675263 789802844 141684755 465746120 65544699 931583228 823288560 938922595 274643843 417248635 632766588 830832550 932443117 963412978 272797372 539402202 976102738 999572411 319865468 501914907 537004289 712451835 729181587 845300493 520456393 693563597 774368150 919419981 80882085 759827483 985740677 995801057 683026433 971903346 679074346 743310575 682737560 929466568 57586977 632047306 672853536 939903998 363754376 609733153 465384266 626154737 515523023 534185426 365782619 602089666 486492252 721313706 296788663 697112073 5472824 467904927 759069438 833360755 817729289 968495102 262338579 411904361 335175445 817902954 278620517 530268435 876706387 939060124 242460114 376585667 503511538 823252729 562681215 705843073 592625258 701862176 222589695 485624856 767160721 789259804 970737070 992294073 859054735 979201004 510261532 621926664 691265926 995536285 377569465 836026292 144746421 507734675 416874613 851969233 93357515 961302490 407574873 653095493 200990438 497644352 555343693 981388721 507551199 816256399 17963296 936864673 934680285 966926621 632500210 904457098 161048482 751929671 433452954 828298151 412606318 672158727 578607773 954933075 801166302 880351065 784027014 876599361 489501782 551929966 367560649 589277844 596531421 778079153 298862919 953846966 874720864 917383950 884742263 992765680 745591352 745828914 519398583 682689013 616804964 637809716 951800994 975302417 38490363 63165805 564279645 657455786 443706885 660737373 3499122 408824334 339880553 395201402 183620666 339321298 169018110 292232667 588139390 750480122 514414635 754796814 968824689 997916056 298815521 309567557 423976461 835935190 594675338 659797436 740981579 806278540 838352294 848202115 474461252 631774328 501911106 986346466 861770567 952506231 411552179 653055595 878170110 878967935 836753460 986170781 359708424 740318642 297411680 821070549 463792761 877421658 987573148 995064445 894740481 913514863 200295983 692007952 113750716 855783931 138912811 274878445 297250108 682909308 41890534 473980699 353533312 763718369 791975232 798060919 142216888 975172104 51667639 497170919 129943154 614057012 568231395 981700150 727624463 849345025 908266701 961633693 450119988 591620868 179308977 739061998 506703839 549571492 222437213 681767960 404300755 463626560 435606534 524495676 597767542 691210593 14250374 133915073 833709793 862770781 15741489 120577018 648988621 970025634 738773125 856208820 130120271 585132800 928199482 959333004 226452239 897428997 436592993 440653323 563468677 741993239 213115211 603859661 578070912 828876373 774417955 846789385 123132408 381483326 744254383 752056816 717880655 756580734 884320270 951820336 555503047 920252054 655285467 984074036 602131993 665307850 667877048 670337349 956057632 970794473 803588151 996783009 448607616 827538892 271463783 444156365 151390070 318070505 11687562 292755469 652926842 878002684 805683762 921735552 989317247 989401438 819069725 968626285 552462646 773781936 396878862 512370178 803610780 911840484 743457701 949248673 331071511 528432822 683033800 826700882 344890854 398301588 221424844 429825764 690799822 774270053 595480140 944231019 776611901 973129010 659578667 787249725 305616062 871596140 256799662 970738196 672008213 973069824 374235929 597231146 540266140 878242533 643271809 771148345 615228299 738600148 591708045 699556212 13214099 487298215 166838800 711907430 520062252 825585622 337682847 701161825 384377079 490770912 629721951 992574486 74453441 552657539 17551312 695782050 558045922 882162120 876413580 931177078 581633839 701215333 411304451 936630896 209462140 333391519 580109035 711917694 671109681 835702655 278758234 886937877 478412342 781474160 86992951 561704436 774954677 994405996 132932366 445194897 589962778 664850813 823615220 968929270 696912949 807621342 12506423 540219501 941926762 950798452 947039486 995753157 259509625 411699499 209459752 414643115 278989962 625606060 859233729 868240772 496377275 717143058 829575617 925825064 248966258 800209045 351885778 477966543 728412187 836061763 80141963 631594433 319528343 379408050 362429236 435054676 786614135 829120567 499344609 622246146 477294654 582101969 734563331 972783334 829723340 871394972 898796718 954536693 410069615 534442464 340848044 403633185 971551155 975988766 886299178 901818262 993688949 998442977 985412044 987581383 124312643 425986503 506960382 918268004 350097750 414335285 18019190 72439924 84987683 604094456 746780079 841963592 556595874 774846645 167363886 682346063 503586993 852674695 843504353 994503742 829054499 879945972 476853523 982603736 925898532 983912023 595544856 786967806 107395692 695679731 952339140 976934803 372353640 989381106 852477291 877447461 604346770 814581638 162239754 171687910 631138875 916782818 926262079 988086425 425680222 466114340 129458981 966183099 39747233 937414214 302816315 417494411 357893065 416572477 119384493 557311623 220891439 392759304 800175200 847085964 858394261 922149528 399914599 854752702 978693139 992725466 831058037 849116791 11658583 966339693 615397820 879923146 244078603 808009823 415930047 912219598 36221901 268092315 834259579 975703089 977665410 999426000 171346089 197688379 741092143 787602958 940745764 981885406 817734343 860734226 521973629 954277925 507570961 742115663 29273391 579992894 519129526 832702758 894971198 961643125 156573716 818663519 854291264 959738006 869372721 914375667 882123174 923244931 342224327 868535095 882155446 911944813 678663956 991153449 276689175 537994500 853957323 942925660 945628892 994363683 26092680 718968754 954021038 976784790 143088041 655314314 573002511 977127564 634506038 692889440 333322078 363988709 881775260 924666160 158891316 817273332 351380293 533836965 685650906 824303237 435571308 816494586 560991662 991709668 604052666 787425674 196419153 880762668 758437328 942157612 949375164 983739862 753741135 943244290 441374493 931167441 581928377 941733417 372099908 580525711 736604036 766779422 336426960 746946373 252175547 826701353 300678591 598036730 835521320 996294534 38458842 439265902 365382787 720559342 482410832 482539891 896076571 963313864 748505100 955188440 686729378 897861302 284848651 571118820 974570440 989716132 858017804 859695251 246312818 639056804 241963053 489808270 89497355 480939498 811607088 861031837 141535042 403330006 372745330 924142810 23820227 213603551 477970921 849394259 663216107 983822388 368754219 522424529 220608382 720893512 572039724 863502185 293069318 871631996 599998601 869531769 942051516 964277238 156004223 656974191 623666251 994537975 896610989 927428146 888415658 993716799 7215440 116777586 647766678 903205414 181920354 546052645 71547004 109668398 118537665 149262638 876878227 887222975 297490100 589306045 522773986 577118222 656527984 875643157 551518292 961319402 502440146 566400438 195817683 217101682 816603656 845815112 370172865 953047206 857732150 984547357 856383669 916147989 768489393 842427581 690203578 877715962 854186390 908188187 576361970 683446280 112735578 923569765 504240388 541316624 329702720 860575241 673886284 747845618 135125434 373490409 983798175 987904687 564903791 925497448 415219167 913805689 618784575 713768260 881777919 889336854 220844418 956743701 150271322 635230726 454758143 932598964 313918005 837733838 685918110 769496011 556954270 654843777 915814303 988216254 817663521 848534928 785415278 811775140 598470178 873049249 518491561 945416978 558507392 657387975 425410771 818076759 458044435 711617395 63555771 865852913 572853156 843152790 926731589 982477847 613907344 712744803 824931684 924488085 357820026 935429759 121743766 460723510 613971066 922011975 125558390 571050082 794899336 982892955 89538392 648032075 14678782 727523697 292391536 569827872 413235615 485791976 317619603 978441443 993400323 998298735 410517193 661069928 310020305 875084852 678546655 772274307 620703202 885713901 433861274 534268601 15031368 460210702 691236127 737496664 276242691 839483419 176906539 178537872 432531794 952088890 573672589 726350218 261931190 282159397 870467582 932728126 922889259 993764399 23580357 447558133 239559999 296052597 261365047 871533398 489440978 972109678 617437428 971850369 816220133 821752162 139317030 422621401 458990295 491763982 509868366 834538510 417998125 432916959 174510439 611489122 638040876 877601592 963065764 970564572 346519958 491961838 894162413 935417768 421722477 898433512 265480875 930179624 706742528 887443577 906895422 943098496 188835675 848146971 331449923 953721532 737106068 824144847 727726709 986427111 625165094 978746094 349540621 602186091 513335926 816379834 354508574 945974747 731547399 860714232 784521563 884710697 289905801 432018390 32350255 774318910 684231271 829401272 288622799 423304898 516532668 533207683 240856043 977536961 818350859 866752233 137070448 884546726 749433907 873228631 10092902 478850030 323827356 583061427 654871913 880051555 336756867 582717943 913327764 914913272 208124365 298757628 405916572 926349482 866599446 906510794 840854959 900353397 923425236 958624981 452887379 845534781 81434386 531003006 318219329 762480900 133593107 557228536 186135702 808767433 20080186 419810442 282277364 609893676 520416685 801674257 987810719 997656874 390753982 633660452 675025926 768822338 783924943 966289271 839077349 978019020 66004378 529398105 88096875 277909710 941748238 980458774 570703303 721893698 955470068 956494104 651614824 975646900 849601699 882398620 967962354 995866711 426488998 551151762 547149856 644807068 696253705 775370920 730880693 870771018 31293721 772325623 918226191 970410159 666919988 674614044 630975473 700659860 548764727 838966877 28291392 380201975 215408828 805196313 755652049 988597763 456112486 920028537 581968660 711841570 972143772 994692757 489951230 680583861 605375885 763464703 837043658 921864629 59032332 147158418 918813646 925426908 106508552 179266715 440474750 792496121 923921851 986924031 267113877 819085794 680323180 899899574 146299343 684769883 651017497 666930061 395235641 986914278 773866349 791366797 255019460 635274115 462873642 704045192 233816244 321498329 989532075 998327433 915342355 952742995 154187918 255841567 947243890 949894767 603709463 910141091 101518470 311841969 749200991 833950896 561855143 915006626 62326135 707647481 729054469 798551803 475325751 854172298 862556086 908242608 661452868 721043015 253302751 846376806 817218877 937616668 102543804 208802050 964284162 980386419 135013023 340535636 25869665 836593849 199540189 472727984 523320868 934939771 586720247 754823941 756666637 799600705 59401072 840472523 926687906 953904486 693273614 752952665 291229407 898985345 920645288 999106859 936247362 996218993 153829991 858040926 158959339 508868796 215227173 920327053 342779239 866203585 949943458 968753920 812456778 920641893 239833485 793397240 656452870 941911179 930032751 970961121 740441376 955358873 344642077 862718495 636284605 709843100 908684536 920993535 558860640 663794725 468592865 542193302 757361978 978117785 711575489 820267224 692677729 989588559 100692512 397440643 237674027 851179473 129429953 783408991 155506441 981775790 705873270 807085990 195982444 201584032 826863031 999737393 793519298 829757893 426314732 745142315 655466239 681936951 724696949 781872591 227574529 870965575 674237634 982531695 727662815 992719041 420432375 554247214 52029725 811532464 28843828 421714589 698773607 952817072 150176508 869636303 287556387 428711384 379406775 910967089 727624373 951291444 868197126 990313215 310307574 429090720 915327759 979217733 786756317 845642201 630168470 697061845 270293358 576566118 446499662 484935842 608988189 910412898 858001326 899852693 712833168 771977969 709059939 921782668 579842779 615577026 979161495 984813288 488745794 557070940 961976437 966121120 77745845 98593047 320414981 683859932 129020667 357685441 510276036 971602030 194791298 595117012 129244917 767801436 766762283 808019908 835491871 897680170 746075993 892275031 87826533 209466518 776042566 889490146 741878985 814314169 35544638 520580034 747294094 886012597 422804997 599706310 542366660 633975677 382859156 740157632 880471851 900088878 996622550 997658086 32136792 947100953 90710943 615329393 780977252 859420205 878108445 910540314 445960065 560642613 689819502 992308795 613072659 926945906 6021148 930387995 484242171 961430988 679736939 794435600 350951753 954604678 518443831 821737077 743339784 765822979 111765826 604128000 928440396 958553937 45234900 953471274 809783463 872952159 475673600 531600021 39389482 274757172 800149790 989654518 973333253 976489321 345655544 454741503 8973431 781400220 132961001 407203682 742999509 851597303 203860172 978048762 210849364 513355166 12310864 959976022 716153798 719928754 59599633 675682085 694671156 820343650 876283719 894753174 20164530 546773109 970863560 975147425 360817311 420097618 319919145 559919502 380288425 944811435 258509675 477050421 577240846 735084998 884854380 961737036 473029729 669015169 489318671 980235828 814924723 974101632 857603080 959927539 191074874 595262679 570191178 952631969 332134419 742713778 887034879 935992836 850176862 951419617 622641898 931255990 113025065 384775647 795782856 912059653 163657746 960206831 549008872 574759266 551704048 693423025 846245179 961060143 704961670 984965197 972915194 996411771 306606929 480417167 362666849 496015261 882173337 995719455 903312129 960511707 325503555 916008817 74020915 79055877 28292121 554737172 234552493 610198086 787564431 897209173 567249738 649595217 267069318 302189700 46568159 393901250 577365789 690216029 158094153 648120471 287640973 390682590 354581365 892664689 767337835 831435944 971095368 993309276 879143605 896523107 698035705 991415172 653244076 787622770 663574637 821241105 66284511 296750670 973992591 991960463 529140188 531868309 112194680 527477020 952481308 956976656 529034915 966079779 961353518 996033604 222999305 869889796 210300621 237338616 630695888 700388803 399678292 441330536 402632822 543008249 765389100 813478381 963605831 989428848 595505307 903338682 933362145 935117284 272612525 280103761 945065401 993804555 779281324 814799965 332600831 631613960 488428423 897764836 371640525 965509696 42401009 682320350 590416313 625349098 259173404 459384878 873615326 989294820 908944022 920319621 818310926 960007789 870686951 928669409 651656655 698632534 604642745 984208351 28105694 58682234 348228796 357371021 159271554 278312577 81327873 271567874 161933940 380795248 406761760 475517279 85899478 671843621 638576782 707486558 462140869 760347136 62518863 590390203 292877874 902449684 990484673 999375489 479026018 651947873 395876944 935270668 680722938 999368167 696172742 710126639 187448003 390099414 412427474 421182658 611825044 654649113 525698759 686100645 249852302 745681511 190590727 811741600 964121681 965394444 688541937 744577077 433817414 557169470 951071836 978026562 921819354 952573953 399956971 978006081 574943488 663127942 357457148 561670817 414005697 697928997 128759522 902759549 157272691 595887159 757676105 911470101 998790635 999178718 115135937 447969685 736051677 953213110 258789150 686810588 990124912 994220491 61088892 824931615 402404647 894802135 744993108 845432428 161519384 781042716 172865117 270058316 182190279 459207316 781790034 812507160 762720829 841244067 980218484 992572800 362383171 444142887 747529772 791181731 795715835 837757023 826073862 850451237 502218508 978340706 498823778 855946250 847846473 899347664 552589997 735277979 668793442 695490849 560901254 679167730 2253690 392767765 503551157 920679590 179378042 340423674 780869537 875310169 394929316 727648179 129507121 575037893 889615356 946522530 295060627 511979464 641664586 692136993 147415932 862328633 682934437 774943678 625672818 714487624 307349779 976073898 586337671 850560669 284747901 528359044 298464784 759068717 833858405 888707751 780067930 923613168 966143081 977886354 370008330 673276175 489347149 808264486 597979024 726050733 355529196 578625488 51838933 838744734 37476279 102974182 364967402 481946742 125726319 373310352 229308920 749141965 590619206 854657583 939647855 967212763 206197586 736710128 925432774 947048331 775079845 928687848 726248709 902302949 566641745 694904153 610220553 705946786 415276324 877137036 844832991 881261237 380357440 471498048 741981698 926134775 104201164 324763618 188024418 881768991 918342249 921955299 20167789 421511173 884594414 984874581 760223598 995890188 692532813 834987191 766503169 985584797 687178242 836674467 345570481 638424060 253302755 657436766 980406475 981120345 99919704 947903479 70120604 530983263 316237695 878909131 431013603 529595940 617263857 687195828 430108729 532934241 88878541 947171568 610244971 954001632 699977442 721438370 804402122 978101005 839284166 933547370 974818315 987648711 887276080 958824205 880453122 966546941 339564356 559196198 569715988 895495607 729645611 959789511 338687024 770787184 4558096 25049982 258985687 531727526 340168136 785581162 22150852 599441699 380397423 669585453 975067558 995784063 905969929 946163056 920214239 928547051 102332207 182796124 685331689 761654819 521190821 719023188 809815020 929417373 625939536 666129857 918282462 971325463 543253459 622198840 61230713 108695589 92823353 354643047 811682173 966077215 96691327 820093563 659722618 679022447 211104479 657050891 484151513 580119218 567109791 660384545 329705709 849386915 736279814 759977782 498555297 573920521 822827345 911371919 599076667 836972131 496037686 879829335 567876199 736298970 637300484 831304564 308832731 844460103 666936889 806007758 903339509 958316774 798380219 947551447 254592433 302981612 75236249 528308608 831845949 855174296 851188777 907173296 602037704 926868310 874690509 990397450 203453804 829764838 399712935 419368112 721629754 914348758 769786497 853502716 496431237 984980993 837852211 988825323 782111099 788359885 5037461 763765518 780805398 960314471 562767002 713281701 457480396 744205093 172749409 444153189 260107681 377080745 709322291 915674656 315009620 456435322 418204928 973061502 262908619 545962111 800760715 888293279 154660556 435912071 558908972 917565073 735441758 808617388 985693064 990415040 593517152 656886165 479784681 567829154 267053187 824137643 711955053 819478123 472892932 895557751 940640914 982598442 966908526 987956515 165001235 479404190 233815582 378194556 839639489 922180927 147722644 414949437 653232283 660109410 233345496 320148052 759196448 782564955 639459402 973133479 966703678 969417425 870824647 920388517 869609478 980286398 73033013 74835169 723205626 999924008 24200542 647504936 425724074 893925490 138983680 657194928 294485116 440662531 737379384 739676728 34000351 827479305 683714251 913958292 505447311 626903361 19334530 896501659 936229092 974019740 194220372 947839902 759529877 920535388 28961184 220431199 600631405 821606176 349867020 886236630 830369893 904654611 882292021 949000488 212710599 665275256 364045524 403452181 589003995 910228211 891300244 947575880 333045968 337504536 557543581 654534338 263436165 916658369 985443200 987992855 143996908 261713737 513706421 705718731 362096343 847101155 991466098 992552088 908710486 962709076 955544589 981575194 568903257 640032689 763205838 989781537 111620025 154057940 771999250 804097333 32927621 539229594 155928696 944008573 339970963 417959605 640019728 920310490 637251520 912598724 829758958 840995261 850232346 998177592 166763208 971429103 189015531 413585820 150525271 846894116 807630969 853864051 973300745 999958368 149120579 489558453 278996396 943104679 447116815 680746111 45506100 446464144 862660151 867423289 143207560 649653875 410331898 875874316 635610068 670679287 639307259 906132935 419272473 598727814 15927908 838446531 819335767 910658159 962084955 965480215 526140752 638741440 916110179 963198237 969106709 994631960 108057034 342015888 506280135 849424993 538181063 628479775 428225462 734877328 765037763 943140405 807370463 895906065 504756862 534154431 522770681 603852261 623338555 967511787 891239772 965703171 674129535 954157130 593715757 630593526 123619731 547472542 371690364 454259227 940081870 975014487 930393553 940500905 454711329 830798039 695368191 909363951 9070685 796653173 808646883 941469885 92409200 237830937 818425915 835653282 921409137 932736755 501752437 856201457 177606367 784071557 197034283 277357964 840007078 971625685 756341990 943518926 195034243 197391732 885973001 983504713 705135129 965948030 606642510 672170002 604411152 772904294 127678516 822526754 858470130 997146221 131620916 202092376 644886246 835298060 191796014 998599437 223979362 943444600 995630376 998720684 486472728 878729862 271373935 462178593 389951509 613779791 148882090 941346623 839961664 901787684 525677540 526213150 466234450 606967303 481126958 568549998 637891905 639400855 314561091 494638921 230255509 658712544 726844883 997208854 776833852 821239154 447166910 980967575 734717009 973444188 815918925 876984251 254095877 938879860 21481757 28405557 622153074 980893066 447052977 782806940 696931914 862868551 830636432 946553621 479961471 651498846 890139021 992032032 734970481 885855896 708047593 996456243 747014416 870096949 774413139 883607399 476130235 884264920 70910910 423884842 618851443 659596803 392815390 529518426 770451957 947354581 886016426 975811428 508049708 962682662 289829493 721627101 60705539 995739073 942849637 950556559 5096694 648828349 605038681 755568482 3187721 391727992 93872733 822738147 1315479 87132881 904702359 983439877 570013376 867439731 254347797 447043058 996240702 997329761 874455669 991824857 912955362 950828480 764869376 773048365 711806590 845803250 427286895 756811143 425915101 514440688 549484300 649634520 174562059 885026658 599934445 974304410 403192819 705574530 574689523 683304339 753346015 876062026 601949271 978760348 14361222 750477428 465366887 628399975 456018310 974762507 533316113 837456049 887819715 910851589 406228172 988605385 491665623 711616916 148468279 212099730 603605224 615603384 955373983 995807085 284691764 522838771 236613292 924140257 855507746 993536737 160725634 194860536 888351804 941979267 392748761 627178528 656541818 857426322 278139980 868458653 741480364 954987543 335430262 705731504 587476215 984855848 868765678 990975585 610777528 726000124 895383758 984332827 884547112 964901897 540001851 723983646 974093125 989992739 526101800 803257739 121119894 801478070 214278046 769698131 931220059 959834562 390417089 786216193 340805865 742344859 77528106 457084456 878609246 931900507 614992348 812537675 456535036 968547289 526885441 567153352 411705173 941688165 204774968 833221515 375836009 673733998 477263964 881078593 296584522 955206574 938595335 942927213 282546204 546300151 147309975 527650729 682229344 755167367 974316962 980482019 56352048 777365920 314687081 968265412 527431247 587347269 152337156 606426758 574694394 790678823 911737795 941475444 590968875 611052606 984443257 991197088 670890200 848198031 931267355 970498081 232488815 919988873 275505929 640576669 408448643 879520455 704732193 904481341 130524436 762128552 38861761 384092860 925760986 996777085 466715644 860836519 119418576 960369895 458288308 598264746 38393868 708433608 508846570 702244023 503967422 624364965 125753556 295740083 7849239 171319995 393792299 458632432 301424437 622695562 822774699 999818626 569638573 667749258 815343479 971478132 151711449 263294452 218718061 433946699 94001044 181008338 163966014 460516895 636399353 914998550 508093252 951839079 458818337 934493511 415645954 435326106 118199966 146908034 301177723 989728042 356631255 915262383 484438366 869535559 173542043 319813651 123205102 704404657 557685102 647761021 271692132 320057064 412578712 505231105 32788845 341427463 261219983 313592695 888288223 916190541 354459996 975728413 113652168 548921044 111499760 609223659 728369072 886434984 589049440 954631218 395395801 841850376 265810636 361490402 57699885 980039958 131770989 431632617 970570795 989323096 591084298 779617058 717715936 882905124 421815424 643221019 436866158 771658613 773661181 957768986 341922764 494753485 704781812 753184031 412963785 824495210 466610558 828996537 85063967 325746378 645225806 825021556 667842121 962204698 52529449 447920441 552029710 864287587 135322209 620979606 804282986 913066952 633956332 667337653 112947799 799788154 749458689 786008731 936521075 972769732 368749191 581947655 799005830 960698788 768671594 960453748 633613779 994380709 714479568 907359597 876963920 997635997 196694972 420585955 646968256 804643300 756341477 998801225 812814330 902013101 799023451 929936874 289092440 727914149 778688339 787514877 182619134 867988094 453744597 606823210 528183931 751351810 311367729 385105018 510535099 844205574 823910274 901912911 188463657 861207566 759487398 896007013 973178072 995033997 601537535 815390526 332522149 919349923 40490938 509036757 746556643 777586047 551375585 742740860 264033500 938915421 418300822 427554597 967909876 981078947 916753959 917879897 290838477 521556925 166824286 666068018 514886461 933106870 591816783 905707535 250197273 900304039 789878195 916958174 605826372 748310243 507416966 740734449 822237659 925263103 877476400 960340420 483797597 495007637 166730592 613688123 624734962 666037286 858922595 885139968 882110607 995949726 963049958 986797876 197990217 659541869 924708025 949524288 856643786 958676476 717762563 718289488 784127236 794626327 920159029 983542178 857749807 891224053 910182675 982027222 330619007 694999562 986930546 991721435 646186522 728262723 403144881 736328863 588053859 854068572 305157460 555401853 69543465 534402485 896902256 960875105 474247450 904693461 204607528 874540264 439670282 706082515 789496765 953143072 918415778 966653966 387829258 940888076 298566467 625554268 460282811 786710794 403072307 604277685 495149300 917960171 592011535 972609534 117924407 160247408 657544922 731444231 527218583 553525104 644065055 818424581 825473132 971255150 812182444 898213002 487900683 664484566 427062905 858081777 314870203 843060037 402963557 501328560 520962098 534606690 380956845 755544900 672557256 861621574 898882688 990126420 314425618 704133739 75902107 746414803 35232312 487572676 650918433 992082255 766886860 882892611 6029314 916672346 872224522 937166611 175496074 520002643 30495589 536533654 839511626 868725496 554351973 639161841 245787669 387898929 994352333 996761007 149915023 814407705 181357571 858189146 27694599 643325830 703027792 801079016 778163930 984091407 433066431 498877465 396167002 716685342 162675280 465900423 705003681 717952481 62019977 998014949 991389181 998493204 861939778 924792054 988119021 993340729 486288698 766497210 776934580 846483850 212909931 975845687 117624281 780717199 71156951 660417916 569250885 650464416 43185931 372996146 819988519 882520660 519439355 587901088 727446597 935265612 959013303 969673139 372565253 534695975 268862783 873106940 82855225 778151312 955806033 973118686 945950383 958173904 840310470 898968484 257145196 694339945 360701758 686833308 723274366 724821501 508170708 883783088 277003914 879467497 501921095 601495536 47723881 610799194 566264587 945676197 293104503 605023898 324483923 424097577 455282642 772761815 673829909 877473310 330037669 774145751 324303576 970436263 466420060 537046067 384506762 446409826 939569507 983523109 385238062 807102467 723143288 911260237 204941072 236792248 434968289 837665002 263673183 963556233 51924130 364619559 338186377 642354502 198549597 567395553 17965022 26309333 237263326 277604806 70981481 622367671 929859276 984619879 181935760 634296172 247756894 626867753 954044427 965731793 988444574 989567377 21115741 784534652 381609020 664737852 422971484 871689513 243408866 862283481 400718493 841256290 554489931 946527124 160567896 751962844 716465893 920373550 162433078 253180934 620247821 780207878 915238144 980242075 112892265 784309189 864807834 892651782 978002949 981825605 491312737 863807162 178643793 568148198 521009374 906225856 294949975 372569272 459263469 621212587 825374568 918284708 765168665 926627429 113061992 282172523 468455233 967651809 13866366 568357894 602802768 607307342 439696068 822735052 524635999 534545662 493328817 555185430 977863591 990866100 740987921 933602878 892938272 948208159 600609997 630300058 738219933 744478514 312075655 806671200 660106246 945697677 296740508 879119984 267278350 802562328 971030527 989795784 774834172 927234397 686343881 761263006 131229518 199846346 199905911 805731173 743326063 854662671 79087027 939347837 783689882 825189013 464268808 515660487 281091819 951162037 876503366 945951601 527155972 607348492 755020462 857143058 697352191 837592582 837036241 993623995 496369461 905257810 99818063 776482999 276209810 738943349 953640794 983043403 367781889 551511625 707013841 877519544 84344753 849989753 168486647 730493230 177969982 338717530 403707002 746447884 486208532 925036844 364169083 791632335 609556932 958215102 716474847 790087407 727815531 999311024 257340606 505353609 805456552 956579445 307680800 536726493 661084250 828684394 374088958 534822951 610283662 846822383 522890818 968587446 74146112 749091142 96640139 354902768 271806635 481661358 589036133 946088987 329711911 541254923 650266052 952476509 89881936 556096388 195346714 726444943 342770825 903846694 512570750 788017112 197183460 228392471 785587180 807495110 925231225 947080498 520170955 606363691 178468559 978548270 949231211 983944151 459592796 464540948 732545090 757524909 706893075 990084323 563573666 826582764 628724853 694713130 307551677 777179416 819065784 896041151 187943478 596256552 779089323 942221809 234783 739410327 101533877 288659058 927101459 948509013 854017670 934211685 565012791 745621485 510996228 891708128 783016407 825122798 696921735 784616197 649856041 720120261 104718766 487227101 818210396 850302374 616231484 967901557 552017551 986447610 690673885 971945054 397090307 886782497 753018654 908688595 120528211 361207765 784155578 863077570 999416099 999700288 512104834 859253685 304867467 689453153 457165205 568147038 580497652 853954252 191436403 478781696 784135278 881803414 218293812 318946623 645466319 985444584 617672350 783512024 349220391 869417716 818603493 859887959 826340201 837807786 922058300 928126741 107817945 843934787 244320055 673321800 295586848 299110080 995967743 997168298 940321425 946343678 585877559 929901628 489827235 708325282 869967801 967700648 616673339 678647520 984313028 997662583 692113850 863130114 947632580 948013788 526185422 970135444 930252204 986248187 919064437 988122857 780725649 991209087 841006927 947827717 426151619 798040222 713426544 765147882 8296678 265015496 754469707 871565569 29615805 761485440 40387935 966849353 673023852 831596230 744427340 798897583 446714438 513702338 585419340 763856514 666430643 891773676 851109942 978876279 700557175 707597650 249237274 551523184 872447338 940379714 81188131 871148407 742563875 870921644 392883799 967141601 836395552 879684513 677202136 966882473 241873370 998120891 489943181 548446441 604702783 816349474 970395764 974280087 2985824 474055419 240914954 316038364 332583452 618970516 83865953 990661414 182044875 697470958 727578963 892801967 75142024 661259181 147475215 891996146 430530148 530159552 310173386 502632098 176391030 273972649 191207078 440961048 879641424 943381060 142286761 822179390 407536744 608491433 134504698 223679794 143690280 415974352 521852252 850798942 423087932 912373616 908973869 961277679 346429841 641423290 945817685 961902825 216725034 803473119 629565945 776406482 986142741 991574247 86540826 723117812 1245412 280498191 189364928 890131943 125082105 289258364 889079210 947112317 387574715 897792811 465648690 814248602 275711882 578085485 1327912 429306432 220521283 598412450 359083324 777640781 176515065 830659435 501050056 878163613 1347890 928447215 706230906 714689084 622250778 670613346 70753366 177788566 218232792 751079832 875801362 909823823 71639805 629243839 1613599 166129440 72569862 828044362 647375762 767777471 538771479 928668313 102545703 449080849 686287348 820515547 732494267 825220753 104386343 801535407 788789242 819589104 474659251 803701302 672492293 706215392 752713403 873650641 236735714 491474623 746759097 965727060 513599506 914363050 133317223 649334125 701724738 921898872 457419055 877417241 907511187 909926915 552965303 654743129 808755903 960886264 606002349 650300942 969253176 972780371 34675661 733914782 214386779 581972367 481902239 836681712 378489401 419567352 275196798 366559562 467895333 647616579 916099984 968004947 736003995 993215027 908267254 943065812 986683582 994627324 64469720 105713990 195990797 854259183 409003660 538957967 459468624 566444778 178878287 222039563 851720268 974397213 210852046 837422468 747100613 851428265 718187720 980118921 726800723 916456991 694408157 929109399 567824318 994015509 338616124 370841999 470022730 889757145 715293256 821117842 777341780 890523401 132787163 423921546 820066949 960456857 774219088 810109827 611576985 629402231 955623444 973967710 61155241 656882253 825974779 917481569 820531763 832195123 250791640 255744909 903595444 940457883 601007718 985835105 572256118 737137243 981551641 997240897 18027667 998505482 188829754 517690824 688564014 909578059 718976704 922822294 530123440 567814776 947346080 979754191 335972796 925329993 553948780 875882375 523823826 922794441 212377961 315832419 304614571 715955300 534866634 680981741 998338334 999625372 962088981 998224357 429778610 448669466 746713476 907057045 488972054 496119044 553522686 943905542 791194866 930816301 190784249 995579210 233051810 457034800 325477684 754424665 444121242 511581257 125429027 240520197 766510852 894024772 34411489 883345357 317603161 935885944 579864593 883001938 190442019 229626775 528787065 796354902 246324122 290464654 274389060 402688394 35727078 372409097 330092460 718548511 846956293 868295332 298524988 388678528 546671114 789997651 346073542 638436605 69256641 997778712 281313729 614236489 997419397 999292443 578220890 639167280 156684436 674667952 535174711 942359705 763568287 805916585 276653444 711670538 106695091 437013337 234629505 535177118 281277276 620086363 121956105 412990410 727133998 969288520 377995155 455002548 544435183 813960938 658321092 678169053 582482439 828282898 928458327 940152227 342388430 756300211 499371562 619722170 479938286 542965525 14468784 514853892 352680114 576208481 912339298 920050127 631376484 670689687 321545856 638136188 350936001 880680439 595852628 999208809 393286847 798628471 864695254 925415715 452527402 865482159 28201087 159825975 173444427 879529951 617640871 740083571 463038332 465458897 572514316 615019344 390262712 840519439 54992498 743091937 771155409 797297430 299706606 841923427 357253104 783729031 380016485 736282407 415655829 699271031 342937190 865344134 223707575 675902538 230419431 491445484 616734358 996625231 909226541 960047064 853698962 986602490 452872581 738104257 725612996 901742708 426179841 802208965 648135580 896311433 285643407 506765679 371898593 707378335 788526978 956442490 343091749 555169439 389458054 904370007 24108862 984120685 307133132 515289776 471077253 742644803 76002980 312234605 621632290 852785191 398991099 835783719 261535933 344379176 706053017 934171421 205008405 547372298 412911654 825927492 130400895 193743189 364125976 400689851 201394131 838790933 993507279 994383938 579516276 661382884 624364922 837892583 179848987 577540871 442959309 757299597 198965779 762371069 945381027 957138904 455625080 648658843 193467875 933851692 479209162 765337200 293373740 900987346 180055612 401703167 871723734 932946380 668430591 706679386 118102715 830292603 221531922 641392304 196391905 617232145 44935066 75988689 282201878 802405791 97610676 666951467 247757589 942675127 654905296 897650256 14291351 697096737 429405311 694225439 294568125 456171632 25731753 105592864 88587564 558652454 999604371 999761093 529786005 712952350 236073330 268369428 326260160 752623688 587688475 745763022 692637597 969494319 880056805 888741059 918346889 996310304 611812048 956976594 893600614 964178309 334207665 900687102 672426134 740212753 325312635 804789217 217981583 917584977 511102032 533327727 593913611 980366682 783803444 808136312 819342646 954620622 663049088 960822953 457146982 605512338 9972638 379896841 653865712 989839749 38927837 831855877 576427717 751790809 567693213 582360625 369010354 780466799 171304274 804462669 580612376 605974773 698542561 990922281 522179399 789295620 879968825 973034046 611121326 624633261 776448064 952681983 377727750 750648895 281034257 876677891 221467167 379962459 851875093 950319020 757687905 767981097 885942301 987504220 331857569 961905422 381452066 550681412 22193140 172880904 567101545 640298668 303551734 437889075 436879402 575863855 991106111 991618176 900689885 921997963 628833740 790685852 252938759 915430924 386252722 644272707 745090224 978523748 368053804 387901967 407454322 489141866 523529344 801499190 990183421 997462629 697016988 963062642 415074029 666315740 920943138 973415982 586058895 686524371 492323837 727188269 180887964 418915396 537544361 622524791 878612536 886187556 483583333 984222024 249344113 910478791 946790267 993615262 830960025 957225697 612409704 966195079 384651688 499319582 510921969 730436417 88802148 518670377 142481933 205815280 562768833 911437838 475442815 831800011 65278885 991182553 280832751 692531473 810378107 970750080 287116600 624366240 605996977 724980221 274435024 835916685 878341993 934723246 599383979 751846837 296190642 973852205 859449777 951784134 707523342 840070782 730706949 905768834 163892490 345402622 344471131 682219917 866683017 895938744 829831744 921666677 289439851 798001152 111651215 927973002 707072541 985180364 753568011 855061564 652545143 721323497 648408339 809141198 305901912 903611370 573475486 677754081 270219493 885581969 322698390 640563511 860209811 917380580 337739436 494027661 442525557 882677429 73270861 404751134 555654892 946474932 208360201 577371159 308910353 671680132 873488193 958247527 52941981 153532599 474557835 867495518 874520230 918733387 58506419 230626186 846557364 933391323 839163239 849590224 219197077 513399087 86595137 431684455 912891385 941368861 844223896 948629165 617405417 785020428 203097076 520260406 44102502 858750500 740611051 854935279 585253443 696835410 364466440 974659130 693169761 866605810 592115701 892473792 518963560 734637658 544540333 956655670 960518126 962971000 857409273 950703766 884984683 921704251 841207597 922196324 555072481 867889034 625653140 840890722 907833655 931412191 248900135 550568319 176305973 846639281 128464529 283349276 331153185 749233571 326881452 927456370 604279967 770285453 249050044 300729712 107711909 189908483 911113384 986670602 746870224 780953576 366489546 428748846 736672975 748960569 444396549 952820936 381254438 853694548 453662461 550468595 631917436 821459859 275925316 387987487 675544378 840812312 468952544 587772016 182361273 486148158 384689225 551059799 533844313 821175809 926922760 990133706 721857970 768165440 612352797 647476423 221460221 703984926 955920595 974579705 419837681 589997620 987290543 989513832 472400284 524339100 900067335 940592263 505990108 867999987 129756152 142977801 107496607 968007129 357702133 698760583 499947386 683821261 555894379 802238412 433808183 824279519 291818146 580419670 138693195 214728111 611473539 968494841 747125409 927409296 175263829 830933964 265742810 494982429 393539807 923403248 803705282 851099501 868909124 979032819 479863422 690434424 972011849 998146250 144715858 298395668 311826604 318556253 316919087 332412014 845082200 997305720 930325472 957854853 855479425 967620113 131857489 487585220 36081261 482743340 138129315 492287915 190017117 749527418 189590345 966427102 480848899 750025892 297352704 372756799 973406458 999255865 376470686 841092210 668031926 831429791 711635268 730869362 540445707 544927444 261931331 704014955 4085559 305665328 535159538 714192498 817337229 971120761 14997721 720890574 357035836 443354070 118094698 988132146 394109943 545900966 334410886 647759946 166143449 811000389 572935804 667525580 354941918 857091674 721746234 843974935 939862871 943603669 600655062 922056358 921078945 982852736 549804996 659104472 531998218 536430281 213830022 957973336 363788828 914737789 275286436 922550704 76220616 263503317 456903526 827935583 817857104 852766100 582310803 914076272 424537876 753782114 314192200 631323082 87371426 572245561 155530866 599012811 170479045 203634925 248558709 980945161 919490491 951553874 743566660 787127412 504669118 932469437 754802335 961127055 320174256 579737847 109847649 182281431 932920007 953515776 670059779 829066506 81019205 866718280 70055214 920307920 903635686 966566108 247459604 521301839 953475264 991483819 71383658 346966250 177418865 587891874 161257480 478854976 109091011 599479830 28035849 992538336 336893675 728705550 483350328 645225954 859075144 937208938 235234617 905475010 924145941 943802342 437317474 719359049 845678632 961159480 385199131 714669587 174304338 358266539 191110327 255024120 122298106 869759896 855727878 986875514 155145107 740230436 226762339 351952263 542016225 555174155 34862857 980035673 892410432 944792559 403617021 542116738 997169276 999615682 156121418 203483281 179524240 924499617 941902716 945747677 227439474 786102803 371405635 522700456 186402664 826386722 35890572 142673334 730785326 898035587 832786137 991534841 848777611 871839062 756559054 827767942 946795012 951946616 267330854 608213370 610486838 958011508 743879619 952303316 633990469 780157847 293010278 957645038 171772279 652572244 597902798 881546671 119731087 133806512 294434021 924157892 146056997 558061121 936524138 942989669 463850934 664026636 453238742 646025504 636063320 975489253 531953388 718345240 68977985 348057629 516143357 798764754 252590977 769239552 216216995 220231618 227539898 729200631 178439176 788356071 850879140 972776653 856453116 902290711 789311864 993420552 699428367 933528816 831486769 886580630 54011120 559015708 131649866 372299497 943664208 959040076 60532472 525874651 757724305 983151463 356817711 543331833 79170181 806513958 750939619 978092082 994888081 997615554 162936677 717830707 328330216 634969816 71976811 709167809 359033926 981070085 443743026 673759049 661367398 721470723 556778506 902069382 702732290 856032235 612008010 815858390 325137121 594102955 85112938 431337175 152468778 433181641 784492719 919365492 164166042 276825506 179508173 383863136 543716003 964248196 767827522 819758091 955585973 964264520 729595244 851346255 657585268 721292564 851102042 880126351 362323833 644998436 681074233 726842455 817443515 934392803 128596934 456059754 817222245 966978037 836904727 919565122 904487019 952618971 916397855 930085081 674950943 861489442 334850582 699549727 527630109 920635189 76195481 219550568 937648535 968482913 176791806 841606562 775575531 934749299 624758612 693033707 809156213 841808323 706149704 930462404 630697965 770500636 212730800 514269344 512054424 640373599 340370203 838444166 421657730 863544584 624533592 762384986 656826794 869939363 438202340 858098298 287313518 620512642 81713811 579180642 472717397 570876992 522587871 738362111 415938998 978213155 320221275 429680860 676699443 812907815 746391207 754371606 413638227 603583690 82885787 110465517 358682582 785549667 434062648 455021200 645280368 920274499 593626265 996242894 233275813 439878234 437100869 638141589 284784904 301681400 634455022 882875480 724340990 976832747 341677111 659861911 985823811 997441796 17126965 593183459 207018304 509473691 486817285 487506112 165838697 343804494 547299852 668735036 718725900 864838863 199273032 472974651 971820471 993201694 439873594 512128561 262858317 890185884 499471146 592638278 890101144 893730389 245370162 929473006 990613605 991012704 485628619 503959768 991989902 998779583 90765701 423814269 577645638 578638856 111276154 666345418 661133674 984494574 883394054 906908887 282458301 528035412 919561676 983596034 103564637 219977943 46882398 66492794 750839971 751175858 191324342 575532281 846177275 908202302 698259223 851878333 250850034 863348114 795449720 952132368 928614667 979897028 567132704 683937320 607813383 722008376 102951649 932890267 626180972 650547701 869496423 888619602 879734327 927307078 954345418 954930247 858201081 996875048 626517441 838688517 816204125 922060577 344889644 987254343 635438385 790556361 588547709 599194764 639519151 833270694 779007735 785879691 724808402 762969865 245757507 566351035 307577893 570095190 144854364 398429157 58426910 928848013 603961405 774612122 525111563 880657707 323734952 817677753 834736695 837512258 307034737 673604345 361733978 838077422 266765528 329750549 108427900 122512883 209908289 422301204 474083724 865662524 381020024 862677505 720894381 905161805 327689139 396393760 931352721 976329313 299581035 649454248 278315335 873569812 49798969 176489153 759971633 991902144 423881901 469671418 384402136 601029955 928693024 956819581 818609376 988644539 375171930 387950542 281718664 612614333 70627198 788833789 815520272 818238914 821643859 894946302 621455982 840059141 808720860 995781769 923022159 980547938 782061075 928430514 786448644 869990239 38543823 264650858 87733642 823972627 811223854 956578649 867587155 939710849 538533827 837802554 879466296 974980988 787751920 960415913 571091695 809582526 975081178 998189953 508512413 782153239 566410165 634699710 503732669 673292276 244065733 889307599 940035239 968021491 499024482 720956434 266314520 561726556 941321791 951808151 99825006 657618030 534177486 793152396 266329163 679503933 355485614 430195844 269759114 532947450 910669334 954144762 148638232 564864802 853151542 908093905 671960807 775468420 463182308 939211505 829174747 952916101 848661778 990301246 10880256 191990032 829846466 845435827 625299327 659509403 23755505 865062873 203550821 556953857 553779417 593083767 933375154 981564065 309772433 528471323 884408268 984092565 238979216 668537042 631030712 905227028 319669941 718285147 509830017 638743665 293163891 361169133 212018714 353037651 463812606 562887597 182437834 406945553 425334628 688980903 569640617 737041463 500616067 747255089 908142116 944741788 779285507 978449662 428315722 740055596 223948742 836492045 292155252 750895703 833410752 838420504 98913084 714483250 721939946 768954700 34063233 523189470 585163815 663458890 746259853 946880868 498961016 757471881 762227061 938845063 252409884 372006852 790004361 882683648 440649564 744563503 458164254 555757411 972479182 981524814 651641525 696373233 537513551 652863213 510618042 703188604 818840019 870997362 101151973 644359014 838975149 909406002 660564158 798532749 500510413 870987734 856942607 964098314 17931719 56779198 826258803 882657832 657738940 840999657 350528458 369075258 282587665 379606036 807261519 900724558 757559931 978788552 816820362 995290705 653328347 745216082 894651830 950081355 71649067 939146181 339980765 573169408 852867350 978564095 460588799 941402471 858479585 975066179 336762780 722086476 27682171 584401086 569101507 891085654 616993374 687530216 230507403 523974369 583962296 790474771 981040868 998623306 317355285 788351146 59975177 409783947 545732930 858674706 316542525 401355492 256563897 404164594 823657715 826404439 380758949 436274889 475036417 945514173 979819244 988878986 131145394 184428297 682727571 794315617 782255018 811840306 917728025 961338244 737239495 898106853 161787052 262571877 527712005 563467980 684659030 945011451 179421872 509196066 621375511 926819450 333734694 734811946 960452283 993116688 629518287 950443373 911220864 917045384 807132736 836536607 53081252 453495129 246330931 412958496 148942862 854933075 869022743 936721795 647744972 940807580 210058501 916137404 928125624 960188207 621495763 933250442 726836458 867283990 995402712 996825724 263574661 610495736 650363142 825277144 934507432 974358161 594163680 963294129 672912575 825378061 378294678 446299025 371020387 386101391 890375058 933195319 382946724 790781292 493164141 812759198 559575873 880221450 644335542 863970495 109387886 310190017 777273277 845011525 867580656 973913164 109923167 576084978 200910639 539163366 309900579 762314541 464013383 565596459 662273192 934600643 223624728 394428191 728444530 759775885 772661561 946482597 338498515 796363483 843251886 874859244 575823312 896756106 69466847 181977920 897967013 926895542 35310969 691585964 670460770 713180280 272274863 635201289 127709644 945860149 586862634 959755871 807451282 895481358 499165961 717492717 740012331 993679177 449215541 608258947 356488670 383098774 843487165 960576918 344596671 640627527 113681749 727667069 501556452 537798391 689510560 818008002 19392352 222998225 797252105 833817530 636837540 679996721 689982584 779563573 538068004 545875332 267742072 437814627 964667807 972631662 767935745 882095549 399904651 615777622 631944749 955190221 45904259 47301446 306605980 547755437 803797532 990674786 862364819 978740260 320249575 758120528 313884942 653042339 856673013 979486679 288699478 886701246 575941420 841235972 323031107 472558940 579832971 668266758 188582348 277956607 163928659 239003725 726032121 889432171 106018419 382569351 930381973 980227718 354991974 534014949 717199214 836710881 770182235 982369339 775660176 899355261 384332891 873175563 726056913 973427302 883019187 963828656 394105795 758784885 649395031 993480459 960967472 978747108 200027576 589901046 729261037 794383912 162375114 374848351 102761330 863723651 323823050 605967041 106398564 181968818 575116815 942519801 575641359 727830347 595194963 862597121 14361138 102199673 398224506 814495938 235055012 744036837 691244978 928663668 932648272 973355996 533414087 868469952 462477727 687390618 681168237 793955622 423400032 518607033 403211436 682625956 449889476 680027952 774561479 898108300 184466565 820094455 257194406 294154153 754047623 853070002 102471831 905047652 244107882 317375001 489735115 610109281 614524107 921445902 603599472 996890044 965240441 972677850 607958284 641677658 161096186 733710919 167069600 833361127 435139943 866812464 539798158 971090269 371734841 930220002 268366932 574702871 568185009 680994081 559485826 819902837 178669396 713530252 512678096 654188135 292119027 407908700 488378599 553475648 277534772 976004754 542021909 846424967 689429545 785681598 215233418 221213929 971818428 998349659 183891908 928830876 527167757 947716840 504267487 688050570 270034306 779257522 886361331 986541520 51247948 225984938 144814663 987786788 79722986 247587130 78577629 896827717 516584240 617409357 679412170 803419734 120193940 944498312 597836476 989177176 357750345 448054467 539852613 746422226 929819056 974967095 365904925 895795524 474036797 534264748 384679463 660664083 425643402 922863659 982858830 993914632 823165298 933022634 470943454 694897870 593658464 867532657 157541845 463923954 655691456 810055842 989173781 996181447 450673394 814870431 536280857 720085859 529073821 689041547 811400627 862468498 377340602 587896921 467074779 782429574 38869553 848711478 254943197 976277564 492338073 827710267 263516840 467126568 933672939 968221621 279023912 882945942 109321486 947353007 811912863 866530052 317241793 861761381 424933819 487695849 147966500 561652783 713436078 835145072 80513059 846892136 532467374 894744527 819758166 948182507 275155989 760623028 19771873 31052892 302811153 822166712 572745256 602146193 326061290 610155965 297923047 703926452 486835285 744479309 551970572 931479812 419451642 761016204 639033157 911316896 19236168 569194102 766287098 855856991 994421356 998819879 357042264 559346828 859597943 996807308 143542151 167285071 275202747 650417915 261814405 866107111 600293643 720827404 250760480 400035753 98449632 300883206 667165027 832342776 732343222 979952165 311333312 811907549 955593794 987951285 319864098 637757388 571154436 853348661 608888129 765995797 859869017 968225490 991572226 995251584 139458926 831478910 913677247 965707352 79033846 441740702 993332601 995201546 336723071 808411890 623463654 870958781 759934730 916864085 311686170 535394108 597976465 803972351 24857439 465368963 857240717 866127524 674127076 742169249 348797354 859789547 901785250 997982565 24183893 133218482 63433156 333996698 5456536 798362169 363472012 551274884 564476667 587320948 333171635 847576425 68102790 874541124 657112800 893685683 470808171 738606507 520759743 659724426 597146353 892545900 404324129 911879994 365104351 857578313 228028807 761928915 552341113 558049442 418841998 663937878 90390432 626961488 769696747 990314579 394202320 584887575 975119951 977237929 169764837 850998716 261517231 746324189 335047679 668299117 973890004 981432286 781654401 991794782 265173875 671994839 613137874 815189704 704221655 960251323 186381038 827774106 871502163 899418852 758297076 829368224 125128911 388929272 938289675 968577782 855674662 888023055 813915696 920247389 576138280 768770976 550688668 960451780 227965070 484579901 435593014 972862579 93947082 781807755 409406470 473692165 643752850 799385853 601005388 767953792 622309993 802968560 133254905 289092229 11108795 39845950 344791722 657865062 167482742 874332610 924449344 943835021 850456071 942421266 44584876 209296193 699302374 722757780 161957661 732111432 884937593 925475174 532013346 821037060 970392459 973719708 91546704 959245896 97930382 486442993 854412085 892347730 923881083 959505441 579290990 862478812 859672471 864609060 120193371 482232290 632836792 813432206 583890475 998562942 987792738 994110408 559491104 916314192 408467870 544565469 868795293 876553533 514984523 552873314 222902205 876035260 800982205 905608771 907895806 952276312 855143872 872696584 452547953 535708221 176260653 705652795 408063876 620587299 893808059 936973443 917883674 964310739 143701021 328178292 814494550 858184882 817071911 978661717 651371290 834695673 221097518 982661724 421901096 993463238 962652144 997469207 308368965 491784041 1031910 958508368 425857572 536826528 384007638 811592831 543712228 589061270 111301920 610008726 473880830 564977647 821240850 828331527 885377450 887304331 14943403 480532849 953009740 957736387 885367407 926917949 664973368 940239438 643885266 999280441 228192780 875371754 409211154 450902116 722585243 944889719 673275205 687164347 583546727 601372097 873318028 938825433 460956090 698641323 297271471 582797639 727887526 837607333 616100678 827461175 822971472 965698715 415812517 488913971 945636816 948074773 264992395 860110059 385399679 772442750 483569291 679941299 746224843 971129489 962669474 980307835 888835526 933383455 471028558 617161665 78775203 380972063 404483944 531293182 310222837 687345290 56843318 540852218 650119476 695213264 241349758 659026574 893277824 984174328 810530048 876824892 356639097 721095172 968734894 982376371 938153286 960494134 418896852 504545418 858578961 947584019 807869226 874278582 86010245 918974569 489131285 606777652 263028258 822409180 803065339 835268425 233152029 841871214 331894441 395236590 500085128 586224229 320248595 564025088 950579911 982086057 581475804 920836890 897213623 918541877 980614721 992669797 899840160 959879879 28905011 943181882 68624420 484425063 466762744 681857433 407773990 534141488 676912246 806608516 759436882 988340427 362214991 695221427 644822097 956495201 341323773 360383773 988024924 990138753 871703558 978301905 913983027 944938082 766026146 843890713 638409832 867345265 45337495 469774234 954082485 993426121 197970613 455628276 852632995 999735432 888962868 960570300 384389688 405415211 931687097 970649215 943567776 965713687 815743161 831887900 541199884 823077238 353872349 775030294 459743306 727439206 856669632 975140967 687860732 819745183 16066417 330769385 252342782 842758432 286176329 376371073 673502031 870729719 738865405 867117122 432826131 996613856 900916204 931310513 213557820 534546178 37830588 867502235 236414850 859103680 963499399 976372760 348186752 928721792 883346047 969472895 765386046 968378355 917795330 998727923 945894741 978828680 744546144 892266018 280524117 667673622 465712894 699688674 986859373 992499244 676862358 961875528 695054705 992439116 228618136 942429620 90034336 338557159 799131975 836692835 796592282 902587725 827868213 861084954 134458208 281350860 910782301 981986197 972267831 983619146 859241802 910910162 714851768 790186008 467715643 763177009 76507223 743923242 13458814 262548744 930611526 942381863 73151308 767205174 138737314 375489031 240917130 676070844 815482118 897578509 719778086 848539138 397100422 850224204 194710557 763076569 162578844 441006122 878320279 887354270 272819529 702019310 376637923 988357032 837176267 906426534 449036053 515075914 369048301 546751021 455784783 942140953 18261206 650732321 773868587 971911989 922774825 934291230 621432928 975541248 284419700 819543756 746129040 916319366 689173518 738856226 574107461 848995335 83083430 907529695 160582570 936901321 721140264 907864028 500138479 701968151 942746637 992925927 516350231 886959229 751734213 889087369 786730540 971612932 153867747 588357170 805448838 935931135 556423656 594706620 58068928 580782454 987963263 996029787 917402311 996026110 175193132 999371254 329502509 777113248 596696068 805519306 289224389 865850283 407023086 431009959 909795983 987971849 670312797 757040189 304557650 613840102 601027675 998806689 800878946 923651467 498066017 727980018 922813250 963243054 91903688 320375027 710304319 827945573 649036946 952254952 161998001 341170745 158135819 766686380 281214658 969656689 411224075 816306756 227593943 976925054 677128238 906458496 447681013 595154358 273743523 819333499 532325055 568881249 743692414 862521034 816277063 881547514 500382422 805307783 540097223 910651594 677181955 975823249 476071698 912462979 146490208 500494268 822432520 983533036 702928729 902296248 708570500 927859428 971338858 971817370 251627589 720614742 16006189 549326530 373056729 655089125 765190305 976691741 870404845 924339904 824057774 885299480 729549985 759741028 712495979 832839752 486021825 546002253 545968371 627115044 379418671 562057292 39777961 277316986 505891668 955107383 745128804 955018425 776267288 825042416 426145135 484117003 880286917 890687392 702071991 872284375 434202734 602001924 254407444 414322745 114369662 957415958 90136252 774655170 143804853 295400406 704312449 869883385 951483964 984782179 17289932 268259387 513094466 649296485 483550245 744978334 928208340 988427753 469874453 607740252 445491537 916808865 506095095 988271487 519703597 984561825 907736033 966887319 606104668 954688728 399875135 607779842 699879868 905958070 682368180 973739508 498158259 883028093 374516454 592580809 300717368 438547041 504302765 789317303 340860181 378738325 89833673 579077995 758573714 924490439 810811742 867133289 641264011 723424723 852448660 989170043 904714824 982277978 351582036 472487627 848903215 957506667 981363675 988968481 143570365 538445845 766999556 992201813 189406407 317106175 689336169 895451682 865573935 970585012 786705184 796471842 597031977 866350571 526304935 559817132 11648172 23924603 944210042 970158158 680395250 744696214 427513821 904245615 885319825 991857121 929030092 976800965 679746145 734119802 376505014 908732864 374388236 450184031 590698927 666923381 830704842 940904511 788908485 867891753 895015539 949277383 231835531 291858864 149780820 375693069 819398229 849078720 811602710 917931794 647185314 960456161 160835784 521804510 559329954 560880825 444137309 850414558 836137977 937249359 965725817 992011636 890570425 986645326 475696792 761013474 892361870 984582732 211542778 804074833 372123446 970457865 818379818 906354382 797370685 847938293 131807773 932459749 581259211 640089596 876879112 955718536 942015290 985970049 979839739 984434201 356231841 474110097 32861936 576003547 207900346 573922499 165280935 316249995 610991614 971826659 158194098 788197490 839892128 961832708 533012180 876447483 431938273 665243468 674929911 775719018 177077002 730086013 108952002 714064844 765045807 833806343 350380000 933970341 903959430 987955249 910972309 939127918 358967372 409952391 215276623 364329423 392328475 869050097 290144459 388775935 227223304 681453471 730245499 852704310 372320089 427024250 830042634 875074883 484674104 684556112 317057851 448067407 432261862 719012352 592828516 605555662 666902834 797369813 755130942 801496984 647375134 652725049 484432981 952921708 177486769 527927985 913908933 965740139 173566715 513622299 16796822 697499782 697467930 986861726 236116708 295163841 900024705 968961207 659662825 672896327 496006726 936958255 843851790 939176897 395676416 905359566 763882 182078016 127971260 671767321 151344161 544529530 6914502 54810721 762649918 797666845 274571771 414618800 831976876 989264028 657018573 910968055 80693745 433616349 960848369 994566806 368605072 531681933 273665199 494376775 171985032 229734304 505270423 535074858 858655579 860277050 688270389 744153824 564514707 953031443 517217447 716238895 239834545 732193132 576763164 754201408 41433660 330651264 761017829 972774038 427682311 671964745 657334842 785953732 927556721 937338132 530899953 694554047 361460537 428156311 467489853 505110057 975089541 994303203 702210675 772732777 936957618 938283009 823947757 919494609 357600752 577653841 361498067 630145452 192701220 904681444 346750441 407876549 380308121 891193340 543200945 845410328 624866449 925004936 579998773 774386910 783648047 826514272 553530960 925038091 485225093 865099580 100423904 134740822 719440712 866060451 306505571 649932088 580524871 945075489 940491901 946543178 340162660 712784663 232109573 330115677 710515210 765202108 21898975 713444603 618825018 819649618 554358630 741558777 582556844 926303792 313402296 538268256 796305105 876678166 908684138 973524293 192349351 238268362 55619086 622685970 77419143 959038919 179910223 823673529 394039479 780967061 429529567 921730190 221150769 681809113 506876964 828037634 18723205 39645015 617697408 950571929 855714760 897736705 668865980 854985048 520653728 667395686 495821867 546056486 420388896 511939722 480409459 594581019 617870859 667105408 424273285 494562114 833965297 903497395 418295819 752254060 233723151 898066257 546155897 645971474 60353267 888762008 432396914 585173281 137399482 822246940 942754907 965890676 935819745 958459287 492024792 683048927 356447881 511033222 922954622 998441772 287938271 373153728 170840484 359818987 700930917 815020946 526023942 735208701 265346148 722376866 33832071 866480114 517324964 612371579 548584388 639683606 878080995 979544284 209337646 665948072 8262970 487567387 585149275 595966523 742402167 862297801 740264272 899694545 582487367 739654906 45117430 379934868 578611960 748898389 977086954 987295593 778273680 821035293 910563949 947728066 151220350 278097383 429496616 954533385 448445303 837093684 200022821 251546456 762216136 767684745 54910835 299841170 748581196 973715552 765542040 869284206 491516091 877703082 340477489 576444710 89673698 108537198 482896916 758951177 750412523 852250732 922280514 943060760 48930953 164115744 313879316 987727768 765874530 969495863 863288195 985265257 658860007 952293370 248344480 659508868 711031905 879270584 587753588 658043418 809388615 820612100 600057286 661023795 975064140 975847443 330861664 513236012 584301934 998328936 114318906 990275456 892874213 955314324 884351656 894344203 279655097 746977006 425718662 856665616 2604547 589626372 898310222 988898351 710480940 978033365 489008375 813146363 237001038 291971912 838171385 939567854 325116775 557378847 792533980 806957966 245618597 574988193 512039191 882470340 900301181 986432179 811565961 923391283 790124439 869462195 482511730 792871578 910236494 991537809 247662297 292696632 256467388 314906908 454259371 477349845 87177920 124013246 773138509 784627844 640188715 712071819 432623218 842771431 382909535 459892336 181799658 819533298 934784993 949491407 399348066 539346161 968946125 970349492 971443444 978739646 306905461 810723715 883664868 937563605 462181516 932471894 542512402 561966331 830051332 926103937 226055384 608638475 224724949 814923901 801170820 940894493 432168346 601685634 709632790 739967750 879198173 888349609 458502229 463773545 129157041 583757187 793662989 876858390 726276305 973474038 443360164 765074513 967372006 982387218 199488025 540966349 576427703 907496455 471579812 852872246 852531710 874430862 71668156 100917607 776982307 954235091 914138801 962550951 773474743 779045987 240402410 496249486 599376885 651096377 144796911 617376090 341136582 686853529 365029105 539350609 174092565 930711502 371292488 700717429 845452227 932314226 53179226 607749975 849600285 901655640 218740823 281634022 729557477 945614662 247065374 927146528 65484176 738981187 924835425 968685308 209674928 261956585 358925481 807880131 533950228 959694121 204242128 324544905 887844642 994078638 758478768 987234212 727163724 732784639 774449862 994297374 695570998 935126559 218120921 811788214 50447319 923325802 608848796 651389549 628270324 813752375 785306594 933588014 333791261 653083905 746460942 978997608 860206489 943672105 365050659 658937382 134847589 271844565 245614200 725604744 627000415 950643858 813529327 954436109 7595816 875407017 344811911 566503224 269557633 760946909 117024710 447435125 48555729 441854925 772018634 939895290 466254082 836129274 495071727 860933583 457738304 930329913 592497327 952369284 898927660 987974605 332265864 993065861 702287208 904417003 962818563 979952604 589851056 928353028 500458116 539433218 862371559 909458836 294725365 830259378 304266675 889633013 297417741 306677624 581601667 616044510 64516957 93768564 889852101 922527056 232396309 335854863 770946528 971384899 177446846 890941360 517189920 749734952 245160948 548264225 309331673 784851522 585912622 649248664 720933466 751864653 938585242 953988807 171878078 909933055 655660828 851446692 869347646 951165503 472827999 678224263 414272997 982508444 808303047 940257641 134383639 452910955 560207000 619293376 733669212 988511391 680785903 815253375 967606297 975087817 255304887 856312522 453018555 628038862 309762464 955929533 74819485 91848262 985080548 986906765 893270839 995826741 339909860 661272307 792799236 802822250 548875174 564762322 518343894 734552722 145639698 969507349 876270247 893617246 820484263 871306445 114862516 747939609 108351110 952429191 999131585 999317620 166593796 814525012 74656443 248327453 206856170 407735820 645614275 862830948 104977132 319288796 420222966 877367739 389879339 546476033 280241832 733925147 244532408 540270162 229911277 304883954 82876306 159711192 267837642 471952833 46321841 667185780 923418009 973022251 103387939 416778870 93261281 571221285 430185393 813851132 783059929 885007939 820939034 945420887 878702535 894082554 27495272 92056569 125621696 171984003 542340301 582551453 161484181 836076860 486188223 636284402 774457271 977028371 634880737 887490191 122276461 543709417 520675044 819649257 135235506 351984084 957448709 977408874 480373973 555688853 25868083 498007831 542310585 556446702 228080821 256119635 961420156 995268570 759534888 775745693 549008605 678801514 358202380 875500652 129980779 294265261 591217733 968690205 136054766 895335154 446498972 709152319 611749182 674789057 231871920 600416953 381882289 660482854 478080501 634188952 189532980 549078624 236399983 304213155 260250827 965249883 482248916 623477730 619474431 667340421 802750292 908337041 84790606 85568441 269171335 546538498 474281358 636642332 562866419 828509841 758284245 985292940 273475478 815078783 635619676 962635715 496183131 824633058 644291809 718500635 201353632 513331790 447424634 644946287 326395386 678902061 128566659 476339523 657656399 918495403 624344082 796403359 779307607 978349386 885688133 978368555 125182005 644770274 817521314 860355168 891464075 903897250 836585590 971911776 54397964 199897974 334722304 579700838 827645191 917015431 239687346 308094858 114843840 620021819 784621486 806173001 100783006 188411735 792726703 906595022 934764434 973492346 437030601 913921230 217553683 932556121 2515103 419463825 286134658 659627688 273068082 818343650 763439351 997133106 136550887 425944197 958404285 979237603 171749693 968710594 770222020 921183434 690437209 961882595 557287579 833176413 123201761 130709595 628294929 654881817 634141376 983285985 443327120 948318235 592280318 705650614 917015169 948269975 704063565 729131478 477031758 844921306 100978486 315345356 158102379 746467811 760426628 898400844 428896549 748525626 298178404 676097121 288550184 347212510 840969694 880821167 215008660 713474534 212593875 473153225 191665349 592052734 899099938 923827760 747095355 907650838 312966186 801393719 510791111 549994327 333808892 842904646 683791667 905391336 889799025 978051048 157114319 278518249 45252527 910172273 339436815 897392271 945825408 947519278 713226741 732781219 859383589 871197631 44483399 148521131 35789626 419372330 463751049 493362863 696288705 915494657 685097023 856141961 60374171 829319044 372312117 886129532 768546236 948060993 276518723 313823962 284657998 643611208 502226321 930090217 992217473 996113704 800579247 915967065 239032599 451660529 780413300 966276704 431627459 713530716 127329259 544037474 871538608 957528234 168057805 466659569 45198293 471496128 655971182 991289682 831840295 890587004 453433467 492096202 906188050 967214813 73852232 407928122 673982161 989216481 940319863 975771807 807899985 961855691 883082347 951157875 506348356 749450087 290552819 421977956 853009690 928598792 75603716 831818395 607908784 706223600 860661340 954352198 292646345 461715793 619575288 784755899 602947174 966320172 637373846 913877199 123388908 972998683 886225870 899184499 430742412 877425615 255815493 369087387 208762357 510147848 487749698 853751152 884530800 951405185 200386996 798744000 890286074 996700947 556414344 743218826 78885526 230249024 434104588 448419557 581008843 737102623 772057007 962138531 68681608 375573022 277605596 369099558 361254350 900418498 315378210 591661633 733144058 915856070 477226689 925294987 702635042 957962402 78920235 595016252 38709517 197930940 743154510 926960747 198044608 747655841 133565878 716914574 310295475 762109373 696088859 953298395 400626570 649377999 854501464 860118175 320840020 783623841 968330108 982457452 885217060 989509245 943619192 989948418 612773850 665774477 554392485 804190742 574168473 637840880 691447606 768846055 687674292 703014062 182395133 528811317 63911169 750415298 506704408 900927754 946195538 947372835 303550033 309335401 5928567 991172011 367780583 439050194 729761565 855526550 839898037 946337898 659143641 803284214 230669241 248602614 353576804 537736640 30305632 853515277 824740616 845657223 630747199 979448822 571368228 591904273 436986399 588601729 825714180 919844926 69768887 694087016 49824026 848497653 378012676 510003838 959345563 981758669 197782782 257335734 199095958 868559773 572556376 965175048 122524944 974944303 866118284 991768348 436149795 452009697 328014822 669793766 66673607 200424037 208551556 792546307 833640728 835972041 669680452 899419147 50859519 732386408 905651202 966084398 438698128 798387729 623759912 902792795 461073962 815776536 371887016 725554100 359442767 698065767 227646481 388149168 432444574 767770068 910698618 933605544 19798357 225334379 49914778 52101846 138757823 410097428 250327614 455950344 366718095 976231806 229460043 308050553 433850524 558589080 786307108 871783369 764813619 998081989 82288392 596045375 905811130 968005972 559637589 956388077 227447207 654296862 421459285 943189620 318018162 581828910 676612772 883960042 399653567 723530476 504751311 749093632 624457962 981628914 812736129 926366226 645507042 953815099 288026179 435384045 980015799 987773098 670993989 912285176 673336956 683754228 527518373 959135363 553161694 855864199 276702716 999831623 904271150 936894614 744611421 809741972 241099662 407152696 208949217 607451117 565564633 734856748 257847865 724828102 802828870 939746092 467344091 593817431 40167760 691165865 474847447 959097010 102797231 545042469 439053931 809808582 444247780 560040151 801060671 966546772 963217262 963872649 812815050 911646235 648529734 660370541 629402164 818508808 452495010 602688983 990323780 999591401 882843281 985680704 402833466 788051004 725448625 961155507 21984151 736404900 963571593 969044156 94313963 492250711 725468241 835189943 187839172 471254680 869614168 967297541 504004808 509805891 658049140 787878357 990246903 992747111 312780183 416610798 458900225 471085373 500180885 811467071 561596654 765778635 353282777 796655499 582427151 883515919 394453983 539668296 626992358 708951295 609815660 822757270 500286977 739525044 953145479 980362117 32527358 461245844 348825787 934026250 464403391 897099837 14237458 405536710 125154075 243120080 20700442 501829149 926218099 981002273 910520733 958593345 123290878 220660636 17122474 308103715 25564338 47057737 637601741 756570524 962862399 963508195 179232279 826795817 955206647 968788795 11912922 642331239 717461149 790792604 647348423 908417644 102293441 854704210 669855041 908706451 777453064 962236910 743724345 785626984 34433312 490896760 922677648 924103925 255265676 740764627 322730956 447580043 541992226 657047654 780082054 936575090 734086960 919197602 692489494 861744337 225415944 864006458 22444010 960685615 477322199 876808178 15422032 22236017 446984570 708220472 68705415 594345790 320771648 450760403 246242322 315956182 716639589 797437929 965553907 989058894 563850727 772292115 544042588 577950319 627891467 733415534 929698618 997742089 223826001 916993050 735262261 800761158 535031490 895123488 103476007 436887822 533970013 977708849 898092387 979291592 901227601 975441946 415649243 875819214 369829004 812331568 489387862 592618925 487771129 600981448 985170405 992373653 424845113 568961542 971305418 989072869 29390795 61732196 585125339 939197631 609748889 942015856 840790344 971375972 306570162 960358384 416374587 782584695 126107269 478588873 502498134 509109138 167484352 723270284 205484188 701774986 909536576 962930561 268171690 522944378 718128340 948557114 203704556 759708830 836008500 961039420 18392662 83166451 200954455 841938715 603608825 881655563 601621317 613963420 666913875 962684322 83202677 232298574 699130515 863955136 342845941 500245635 478000198 633223960 983837212 992482234 160146008 866620884 973254380 998985641 550276836 994836338 723822803 763761829 624207466 788737275 102342828 151669948 113145964 737473307 65544619 789517256 349478139 449938266 69630742 515137956 542784497 545203708 55554260 605238489 836841640 862896799 682646275 756658004 79005562 901486652 135974206 354976611 378088025 466368593 863529557 996467695 255543575 553355673 729885487 782240936 315145284 394714391 557875001 899834048 250311439 698298616 487623167 634840950 137174198 300657646 645665760 883357354 354084347 876091190 779296147 889841076 529329694 796249067 198023373 348534184 180907311 371609599 538176012 630074231 912196019 934234195 231803970 488400916 593679917 629242270 799691391 955864222 254272985 778659444 524646577 896551221 980560777 993545190 480761011 906252445 574751206 841792741 388402638 788583981 848340099 882561567 218545274 504198579 422720086 501771951 415476768 932281044 723140434 924307942 240302631 718252573 440288576 534594169 535468346 654616104 400903299 779128009 969314756 972210574 599323678 936247384 29176945 931988312 163839125 669340349 703175090 834676546 316079722 898625770 776322956 792802335 45642863 890599491 184457630 481523645 10223842 403538079 765461476 941675680 252607053 350756496 591152588 610174792 307730251 664383453 754357636 973311503 490381895 786521083 119484287 824590735 522616378 856825795 120402529 825775435 119460132 505443726 869411669 871565590 726980259 756958450 539170392 664734525 97645102 637707016 906058954 913028132 327869889 766669064 948401175 995653947 741142298 957507058 106212297 715233444 75613726 850603998 285344009 764299055 528292182 748595392 665215788 702209863 392946786 614013521 842470807 851716634 949386539 996031118 614297318 831395696 914679806 999326796 681021224 857284592 425606693 600400598 682110443 773718659 754921803 836685716 998930291 999030818 928343770 935334110 679939357 763895493 786529550 858698851 721222246 800271127 255732306 501269974 18922595 886258125 900075109 995081318 412280527 547684387 404276849 808677799 31114449 743703017 898198184 979636611 471613999 536002240 955029762 957612444 645595753 732559578 661020998 805650721 4959827 91397579 552177730 570764151 114477771 484230391 689382803 897254263 960079800 985220137 470543402 567700773 202358942 251869273 24136323 283390539 611498634 678482112 958254413 967154630 584883804 911513953 952817820 995356046 289932751 830511429 262404739 635532688 766731960 935659382 873700701 944513124 280011264 927099166 290496339 677939166 271184056 997726578 737759095 988274231 714922392 864655777 97914117 624140478 281768885 817903281 992375298 995111114 107160200 185645974 447605126 793975279 658621974 998077220 536911128 881810784 761644527 857254842 422141160 917090065 878370240 914935631 163585300 349284013 578024758 991907496 552251824 634643757 184851316 706832417 709903960 922887274 393245900 827581861 451702900 885957387 40196192 540102010 439174382 969007693 507632490 553833863 37169770 362148563 238682190 811667445 160332444 421616618 576007513 940364049 417930344 646668101 68807155 98841835 796705305 841961163 107589810 600643890 940151509 992051575 897808301 994567541 488475873 531047683 190507463 340349326 795006076 905144366 946449383 951599094 438005610 550015746 826036471 970677479 4918173 816796826 898141449 922494797 694292191 871428446 193562935 237686787 911556988 968595039 799750326 866581405 906075382 969860521 826985189 996517987 894285400 927452382 154948760 560432020 938379921 958137873 996713362 997767661 923243173 981769907 412634641 792291900 260663027 823656479 440222591 913284412 63314919 534446207 130864066 811504625 134067074 422635025 461167345 635701801 319960717 607563590 604181390 860427369 46759908 638855676 637355912 684810136 476566248 944767173 561962164 825556001 963524889 981424179 71240460 317714733 678546235 692745485 674754456 994796817 237223700 695276826 515449422 804194212 933126144 957270821 733097732 746027145 68302717 133147705 913836366 990401536 732218264 979286244 547025964 600387791 253260241 257535815 843483800 963345782 146535041 668897433 931204859 956834482 363669761 653849074 691519989 776639640 477325379 628758993 945364529 946656716 704619055 771527606 730928808 835955179 908211300 942729180 224024600 656550787 323556712 480523593 138781423 674117837 746293909 953102579 764423817 901574965 472685875 894005350 695722817 703780520 303779364 432987725 162268448 429243348 815911540 831306254 952507249 997553231 567999545 723206040 137064713 794240181 317025601 348277400 59955004 486919022 938134108 961213032 855305636 936095296 381494431 873148044 496867761 884977915 294916020 557145582 154055179 588055893 702995191 838221219 479961031 566621575 776143301 885855108 448632790 870879133 147781785 959029583 861215707 904512646 680055927 727298457 132267063 174414167 194851374 783152936 926802660 997076597 61566023 618635233 475914248 660534641 596852234 632035394 104725269 440809736 836092359 898570394 157160320 893404255 739458055 890586215 422725269 713756931 108601447 573578771 349958541 512125358 831686461 962961518 935445839 964747135 924976484 947518253 369215859 810292441 992948294 993480209 275945005 938279903 857746818 928563265 12273690 966062771 474655073 545008658 744356448 956332082 367851070 656997968 217210615 273982131 383547502 987878433 610135383 771903539 89556043 787689289 722914381 943613229 640871044 681777410 78301961 529678317 203418405 920321315 217214485 253669344 403885650 934476481 631291064 660558111 226279796 271308003 883233464 964762254 852652348 908091689 78086671 895207441 461739961 928545693 906259043 948613630 605255953 960510596 866113222 887286283 706120584 968754085 598554074 770033517 585473056 998227022 177594307 355523045 824706238 834092148 98970959 477595250 957239497 994762036 179809055 851253777 465744152 907523776 919750897 996458450 626038663 937940332 158510285 510644859 674143123 816402951 752707010 820937302 857513021 902884838 829167648 963870393 886499362 949078399 821875463 989919574 431758138 834462202 745174284 778832598 563285297 696694248 285308806 302380821 592188180 714205700 369688645 822554361 692801853 990698638 959649192 980069398 364442290 650538044 99736069 303948938 156187070 557359070 831177106 910317876 631421983 897948835 624869415 624995495 874094338 990535185 690753973 939164804 103120755 382206481 921444987 947067954 565199645 623919864 935712792 957656441 988092435 996058170 848216409 901791250 726397227 759868601 681110674 930338396 966449806 978074427 98249496 467395086 581823773 788531118 921971700 925105070 663172088 927542461 268208381 468076299 914302114 934198979 198231703 411880678 385241494 528652720 220493673 378838121 998585508 998604081 299979484 995065727 902225105 904633378 215124267 901366194 486949200 523636951 176219550 618872384 769945532 819093505 195315487 427210961 99572872 566910475 262712320 512620421 175251110 984093964 655809096 819243019 983063928 990809572 706553713 839263414 392992979 883851939 630877932 713823645 616189518 646449038 241595050 643776590 805542468 832481195 823417654 878524829 730084144 929299103 633496165 786415452 467107767 518297895 169284798 261568590 49172368 350357159 17078355 842761312 563492207 659758575 583206814 965762946 782058401 942307384 329097062 469567517 423723255 818286225 496260129 857186328 245829767 397686239 796861113 908749147 639160162 899729505 394860591 677668367 416429300 608711467 53702231 338454964 298139667 886872271 498137142 592915828 712045094 890679067 807659463 835248113 36816970 282347948 979832400 984323415 218206179 651056710 992183212 994797385 749108305 854587023 263733494 330258352 173817101 876487731 324704483 462448323 219862569 698465720 85543945 322872346 131026060 801351735 644036561 890955057 620993640 791995410 420588546 915990589 648900287 860668915 328684724 572862953 475872969 507576296 690450358 784765828 229088109 315227598 866386151 985711898 326973037 648036072 379457040 935028639 412965814 747712957 222187499 976861792 204883182 285257882 550425963 918434166 26608295 371731675 78753381 906778051 431765376 538961911 117687475 293739261 333493888 961807539 880390213 967827417 626828858 702571060 769103179 855545356 848110291 890132209 294543962 881608722 123307102 386330416 811218387 867971044 885248749 950869885 723821392 791468422 520036581 553604967 689201039 781309377 256918659 640069559 43251134 921164438 237277833 780940321 900522673 973839112 575833730 638209495 983148830 984501122 203361933 836401641 498149153 821720087 377247203 836751017 298466278 587531153 409154479 730688957 543145161 894354317 52421375 549114592 361926843 829738492 964830098 981271662 919191894 946976606 325273152 816790826 104313776 521259519 96702364 788567693 105547135 756727018 767859959 925297885 540272894 755824623 333182333 421516210 233550952 570063538 814026786 921805501 619448576 812301149 4061384 524997897 736681132 775626336 644516473 687512399 652114230 819987898 153717449 355164839 326030451 682195111 979632317 990152402 529438535 721840089 889115964 907005864 718355734 858078667 905605809 909841667 960057147 987847334 208401195 534933755 60715479 107623672 628233641 875052798 580592326 836063170 224948694 566135388 564914943 621717289 684401990 953484661 285579152 386990420 70203973 992061922 453290728 807732634 327987983 653527441 804233296 924030506 443241499 460793926 31201016 951422392 201456764 643692641 354802571 878250258 691775782 964952719 526475145 619657040 519120914 908658484 691941844 814858729 432951964 853611955 211607032 234064138 650160167 723762252 199778578 648905375 734978749 881684768 514258054 643423710 5721004 924920134 898162561 949675105 668827801 945754699 915612628 965861901 67940973 988430606 811808150 915385313 927541322 964830846 436774158 870918779 842752922 929722759 608521630 868385007 80725376 870816932 955983268 960753375 100710929 144387654 5961939 441852790 753266177 780556067 238282744 275289660 940407023 986037195 138775530 237459647 768682890 992881130 474349502 844481885 372840267 680279441 399348643 661143552 543394838 734688338 525508382 662582503 850221773 922027472 484908537 880339529 429132507 931003475 552974428 872534388 41608565 461063388 281250261 654188704 407846604 542989502 455647634 901807653 310740328 845435886 108906576 172542193 830823366 944292964 937421159 965687084 957083509 960209762 257734383 883654182 543519436 765375015 278954050 506064082 585893754 895381583 329305007 775380089 100185363 127028645 65231810 848624645 194094134 869445057 766054484 818824352 143937943 230796338 999623335 999746887 843951952 862156589 62621099 157852047 850053948 940582021 568704177 866751564 736808042 763183383 704611253 737124284 536161024 540396495 330017577 719945821 262548869 390855174 320335693 624650422 786723329 821040444 178274816 530832646 311292364 407971444 401096765 450469889 16075128 257530108 835424974 907207308 312123654 919170977 124229041 193891998 259355090 644151663 174374197 283336827 648689291 704095461 841383513 910260304 375153408 406319882 157595888 605909505 325988041 549033781 430147923 945852202 2950313 57234954 732341523 845901199 405095923 745875558 172192394 790565782 138707064 353726252 36231975 596333712 89666707 849801096 884633329 981237685 564194077 677794148 746456428 962232959 926908261 927256017 179258386 658584481 780650527 992271319 89945881 820170979 825011523 880429546 834977107 929588166 40458950 600093119 50553646 509515415 80013150 811608693 715018622 918094618 94691001 111098729 127085556 813962677 692823638 870758465 92766502 724074495 26310034 620389843 759304904 913834992 97435904 187131514 376928849 689206009 253609874 732325853 93831628 415154740 638879456 747118668 532313981 629935957 625508662 777651741 789271638 876946911 393586217 691716755 473700974 723719976 213581303 878548672 970117516 985254703 976446539 979938792 445355202 826397094 259119601 917267720 424803107 545487053 883988525 945418099 339768394 736133297 583186306 639858395 235734183 722335590 503002700 896798849 606293559 908194564 239268951 533055673 360377477 575285763 303332606 542374010 314133120 673245857 93337682 303958430 717528267 820914309 370580873 490396163 330835247 539283469 77656183 955788634 235980902 568601443 70606666 317574508 599234205 926113791 811735674 919231130 854328854 939245810 379302755 988082922 303227627 699965561 954455623 964552423 257791414 589653545 263838510 295987872 30610237 34686065 267116729 312318056 361310726 608644709 277713129 850960270 672103589 676298868 603648035 904142732 953365728 956454436 13234442 494735044 656905942 674243224 475565427 692651153 945725500 979450478 652745294 990877624 928030166 993223666 725539399 942570645 89359204 493726580 692022621 828706495 875239427 888163940 155712044 609474992 463153876 951112615 443540982 955063715 627228293 893257169 65429383 435346028 445341648 867274376 559567949 719819306 242095904 767441176 563423122 594833174 173046813 959425556 367873634 486635415 819782162 932192474 125192274 218294067 293530386 969951241 53839643 518433334 473888554 504493920 450037282 536400012 335070638 797110453 618155138 733155670 426820860 583799739 15037614 84967860 722602750 825972339 26683382 140173662 4495962 879077861 947984908 954441675 351921360 790650847 655934489 856196429 591787705 622633439 608129478 931345653 927839550 938942006 619231050 740222994 304468881 423280604 335183234 845204854 193004251 781524999 479912374 879961579 460799077 835306933 983964158 986321369 74174605 861644635 891012002 980123643 17839403 531512311 6532469 543710749 954397653 991301003 765379241 814366266 262638572 440403473 307763845 612035045 736202286 858209743 388315528 458235415 216860998 572509308 553826953 679488580 179941235 944288326 169796993 945762758 878048493 910403368 377540239 725056694 289085455 776462198 696440092 844996784 425797813 585029527 809934669 886832135 237286627 429756956 22135994 474739976 609026435 970577430 232260643 308433306 356312293 397698705 223701048 977828478 797546984 835964680 46183895 100458916 689055061 945197771 619882283 965753902 877155395 957973142 388484845 594694467 377091031 776418412 181314184 844218622 688116383 758518072 223044432 667732991 33755252 803544697 268367056 595150668 729879822 853971068 174544259 175732347 718537018 746018747 989781533 992858573 541709873 812777256 378538140 880446509 458622863 570271170 115626648 519731842 100535285 576248065 956706397 970374435 143082843 557707202 444628807 482216851 120749097 757911542 454444525 477582565 360706529 716783733 607101685 909017201 787794725 936381091 828121287 871819238 124442310 574947403 453282442 775226262 661558054 942057282 174956730 817048565 552077810 620271165 673863819 817481125 644076427 866128810 813516148 855687285 992906284 999400356 780147722 791687434 915230612 966246408 581766037 677552174 381460947 643269863 999535187 999883387 370014852 897264377 931231436 998976209 555276072 970210834 305989656 415675836 642100561 829667353 463851552 808950037 116144178 979365808 938551701 939598686 201612295 851008467 657719461 820493131 317458708 613057244 336800128 520915526 153147081 493919081 955834496 991201390 402840972 754222214 981603919 988502449 8464582 606682511 119508688 621250602 51061565 235839862 649034699 843368250 503018652 769998952 583778940 718525735 689458307 989699667 192220229 633258230 986675230 998775641 474140625 766428930 785538327 950961768 849286283 990020016 406538841 436792931 123749008 948239451 654462466 753788257 416174402 571349235 968251125 976541731 716640132 934074308 579439408 967986524 193765271 986154423 621236632 805258172 434993122 462479996 982647286 992509742 759248001 857573497 612994401 796325210 123901618 643763426 755072978 941357819 849205359 917891868 92046439 455631923 904823549 953792698 192579531 328244196 955087068 988209708 139368531 852313939 157876517 453958901 561489324 659658498 932659400 952173736 469549338 848526629 959815113 975177221 977780536 978828211 442852919 651739678 313361821 408405992 454993551 573000013 415750872 429031750 690273163 718222537 690913537 860380862 471828877 944110062 194211588 740440096 876231028 932700116 608116007 925698087 287337354 789665106 846353828 903594225 614077743 627907297 603544524 733241005 303816516 616843285 509112566 831898640 995892424 999284373 223911891 559972444 82482510 616804915 643811481 941737715 379480545 810683784 960218587 984412818 819082977 819341968 468627109 885051308 620063304 837363914 540510860 977460169 559758837 878410460 41666366 166234177 323172795 416787546 595671894 774205676 707241514 764704203 808023464 962126210 975284613 990254931 587052931 958976351 105160559 358022578 117839394 133274544 266047511 941823299 114984804 882475747 820503273 850084334 526778378 873243073 580697880 798368992 271468691 841892448 551886656 628591327 960256405 961480744 859634632 991449669 611894087 665091578 156126065 744529959 643374102 986347245 175412337 930521661 291097890 874296501 476260893 549741656 695566353 701445443 603336206 862719896 55037437 643153930 652143086 986792366 457180709 603527582 967920173 975982797 587685070 877142561 702078607 866734136 123904484 986622550 923075123 984886570 880364643 943009149 670931196 970473361 304167989 806699350 215131933 496815703 120670504 381527173 650724742 989077134 643754106 713073343 347980442 401119631 856727632 898653884 201474000 383642655 200293808 925859717 337435164 406284700 132802879 875403838 109738236 717317714 369123789 787220419 500764946 592794132 128863204 801960504 968568937 970824928 84353025 586062806 29423947 959413985 722592732 772723081 594452686 610208134 809333972 824112909 298209891 987458652 177517240 308514845 514849969 926969549 235369577 397464139 442807327 734218933 968950905 972394060 649967860 766745197 429781187 934187463 25892149 314786807 278534797 692646553 935915416 957793534 706765873 883894128 15560303 367117444 155801242 227784493 602379530 935648346 281865993 673507718 631887739 759918573 237441156 524487333 750835108 997856987 850950470 982773712 77090381 760819293 179980089 234051214 415484004 488682633 342383521 509518976 933603769 979539841 623351101 641459286 189378141 530076448 972370462 997600955 343842863 681754320 98965652 388901390 889973575 929092373 320590069 864578648 693473424 939775980 862095303 969141174 385017983 605830242 513645933 812213389 999667123 999902722 550030084 842298436 151255840 334456612 624957875 901705159 369865881 876899492 511266845 888493038 416792822 464413101 752468001 790890966 964564341 991828490 171736668 729876409 441436786 625998298 623757182 761869828 337148804 719466501 167364021 687607410 231807627 839471212 818284211 874596416 166172528 940718906 129084131 168951670 926118269 942525518 560606722 771838936 400802090 762172577 541902791 775482933 660818602 990020099 634341935 654660187 607243609 766094781 422960048 592316824 223417744 815643708 307047250 485782885 233137620 385681658 257316633 701608459 752000754 944705090 603877105 799731533 962521064 993553917 946308716 996896915 328976228 873330763 961007227 988307464 591224101 658987004 813171579 836379083 354154972 905494441 290694198 517240104 313303644 356067392 619365757 645442321 463376233 926188886 364305166 772654975 442914315 985540692 325653324 465315643 783937303 924830608 194441112 879916708 375561535 920222831 968789528 971405513 45615776 495969345 927812525 963226442 188912403 502317770 925997893 941741849 833445353 950811869 973213626 978661108 756230745 852152448 707645525 961876305 218023885 974393529 124362696 397351063 889131611 975508122 200682407 281153265 529297165 804402326 269329955 514572065 555243238 690576246 517586186 713342695 729584970 840113357 725349653 937604323 735149020 920105148 628334648 773634203 334903373 636993214 93178346 116083053 200911894 688298861 15584891 296205944 781435705 815723428 385882519 789851110 123482391 280135660 831528917 988896604 686185206 732971395 870048415 955467853 531150153 798671444 629024377 941478872 779531323 783207731 694507565 715283281 808264386 980443858 380547222 935447596 846228005 983219353 100439932 912258200 457525519 546480917 201282099 412097975 414818053 743073630 802617234 866109401 696091572 817469398 769467300 810316108 471295521 761466514 831103245 911056471 479990058 864727909 340477847 612834556 155558414 669999929 913813179 932662804 205438869 215198316 485657647 740887156 947271094 955042952 667234917 952939979 527519414 548785108 515746653 928308915 966254105 982257331 899304432 922226476 77758517 762819514 349900300 659094695 691863227 907105211 752307344 975658981 341145118 915315570 496159927 724525454 631755358 970216605 828240085 973652113 259009122 775551988 886112320 903923767 250089594 718885504 238717375 787189130 264014932 310809696 624942722 746604927 755985105 864967108 745978262 982779698 287835913 982233796 572864523 809244301 495458172 552931115 209780760 402419127 281384852 923368808 645499302 650830160 665189453 754453655 680486348 789299263 944531889 975561755 843276337 997612042 774437820 987113363 756713749 897914954 14188283 281202658 949778922 976428655 519202020 904062570 67315258 699159535 619527885 928428272 915197236 984029090 546158619 553099495 953975822 973232433 826974216 932924635 254576264 403508076 8979915 994069676 261005435 812220198 73926606 290152743 877577703 989374121 990245879 995488271 906871958 998088046 638618499 851256812 77223022 386684703 190663245 545612448 415362899 582682477 438716500 923971018 392653817 874619936 337743461 362099132 59127835 428899099 138832165 454611210 815053712 851797065 724982043 993043389 585381238 791688982 926317859 987123353 485480735 830001034 641367547 859468264 94964797 539605953 825611428 847851079 408539716 787957728 48764713 190527388 961114829 996005633 693308028 834878416 80738330 430941199 812679223 987088012 466004948 654908749 683319492 751119743 29825392 570594694 349629658 483583171 934628804 972892407 719015710 822579020 561271715 656279352 136850356 944141510 35315561 925176086 702652042 896825145 410911344 681603945 305982128 731387676 329600321 402363172 230728620 601242925 117972054 921900409 774353251 892444878 842843498 984938059 148949105 372649903 599516058 855774686 453661429 869356558 569651135 676521221 691227002 707438289 441523605 446205464 679093632 794948848 56719067 406422699 457774410 679139570 828168552 958463111 350146054 483571819 502916757 520530926 623680703 904603846 82592619 619363608 297879797 768867121 405957630 588029111 796335191 883067043 988046031 989641510 199919885 278905531 476097211 859256940 746975965 794912522 778726413 906753140 661670977 662114435 939252008 986354552 198293143 643147210 22837417 683341199 961602837 994538713 466000064 608253208 844162586 888512384 530551751 903182576 251811915 669648265 216504943 326536482 617458168 719257756 923503522 971417741 14471336 230064383 434535837 493029299 60297792 468779947 346022625 544851056 628898881 803648882 945074928 964812543 837130994 882423174 671334690 889411508 76707722 108557023 498631379 972083353 188379870 866651447 744885130 999918145 53931011 127125060 821026543 845312750 939115217 979523678 796184696 811851643 541966199 747877655 418054848 664022579 825619093 921043958 689984534 699686346 472672927 723821878 966765742 993711853 495599367 815367542 786722853 810734490 252830888 829205027 853071979 914579631 295418339 792331895 642033403 882219736 307668870 405517823 769434331 908662292 614183361 954447658 905798738 932268667 866352180 992605912 22303616 838019292 35340675 376214387 899542960 909542629 573278991 663062146 905264617 996695591 898686372 947780341 715705455 772174904 377487823 858461038 792245644 869614570 109268556 142306633 103217443 275776811 530704753 862875679 384371472 671840479 987951682 991615047 211013034 878128730 365016421 664898630 29856154 927688380 451244062 481465622 983976955 995691553 685905277 685980192 232194948 568662633 731014334 778007723 558595901 852484350 675020058 857654975 176841658 887081565 195666612 228579008 527269222 768507152 190954306 394327159 853427625 863794291 603724198 630433397 770412609 897040492 574184420 883624661 580699117 774240056 129679733 637426458 853333144 974490493 887041132 931649734 379873306 476415216 719590892 862282862 926977211 963877158 271002937 358835475 237386782 882782696 554263595 738307141 333395558 865158842 804241991 823992867 380431712 803998421 917500008 956909267 819426317 886007838 297771726 654950757 292622299 295715201 937996514 978685086 190500639 517628463 547412438 679469595 223873402 479281408 24623571 401814463 738906234 916718295 244768691 913169477 374967909 534645306 330790648 392070345 424289118 633641418 456106789 480837004 132407537 138891122 620651905 626266168 45896352 596713218 852463090 856305040 454087421 919248218 764383139 878461851 981993419 996978567 170607539 965731334 493815829 768847144 166527739 280345826 401121955 674234823 192934351 877870159 299220416 948974590 41741817 592564772 751087609 854622867 37429009 108844936 640983974 863592722 813725993 838943346 856688942 876413168 491784697 609613656 214924019 621587865 498782430 939904402 870449071 980024596 979103499 993570866 468819309 994773462 643200105 914369722 105351040 404058804 387102831 973061015 94856394 750675653 392878630 883304153 694476594 767880836 733139630 755195958 313434957 734972438 979461778 985572984 423536684 501667394 479526822 627094628 497799501 504488269 748508362 991403115 581696685 681803950 465450317 842599011 595183229 613762917 885656789 967406961 41764258 941676424 702765803 900746922 621505757 718652056 355792977 400166687 897894514 964778461 561116726 638631987 657404868 708001482 290088763 351417649 113651140 542100324 434823611 813752563 195636996 282524584 686426178 930942794 642642835 681824540 47312304 421258053 2833783 296476495 433737958 900486857 826176019 857331019 480169902 783251882 13202175 56929810 34969102 112679838 31585755 443792943 912346216 961241361 598909527 945983381 806526001 872225792 455485542 702306876 353842308 891852424 158292838 642069713 320099299 877621600 941925430 967162799 351815919 885800785 473460747 707900269 861689374 950630731 340045824 341525510 49463889 503206178 661543695 942256789 455386963 692094640 388816128 529464800 177740414 330486825 424917441 886120879 925562560 936091267 743716742 771996866 584512589 803953502 850392117 964045791 166770129 698338364 354037758 965521605 184870078 805219710 506890734 557719696 869915634 931360567 356091987 948887878 363562851 865052396 968702305 987956831 330944130 607414612 575162981 623528394 118937076 619054821 283454637 713726603 769879413 956526167 544409182 794936080 953607280 996812511 222763842 685220268 328306247 809783370 121300059 667772687 58869666 322122219 953070569 953154610 257488753 933540477 757269944 931011554 571866509 664706412 754421358 915172883 276027506 484114468 584484781 759147614 764052610 956456212 74477445 95484092 661128558 711061424 415041852 957639296 583510281 683671244 416523778 950727415 208833691 992533641 703103965 921005665 594791548 813645665 473803120 572231975 563508829 880270277 45414728 269006662 117637297 942662798 880890384 903906147 295841938 299522422 995528758 997036972 417991928 586775231 773894596 888968727 171115602 196650978 424797117 554844455 311767736 443885238 352029820 788102294 24147782 424438705 836087901 891426524 80789553 254854179 617940513 681369699 438320289 465925395 314044583 389242974 203569793 310359764 911470768 984259532 94880608 692535582 453890939 941190629 475023072 605507241 688164077 815992698 976420365 993189920 118754092 725251698 90941052 475643394 35726170 464044418 29388777 728390534 102932633 127364778 477354891 849604145 953224057 981655918 919112310 963923840 6969610 205244489 452078083 845708937 2180322 973281692 571823599 620893014 130161548 385675807 535123432 770415181 143574257 876586415 542783198 924047124 503988794 752736902 907808200 915315469 552891387 620295277 861276596 882863103 590021155 952909619 777854122 796690348 497769541 564463249 660963106 701567571 15164714 442243100 306309789 921936599 224156940 584469830 595345902 664877531 744628525 810990337 86363374 528996011 378306331 942944732 234844168 424490208 919217443 948763855 6542238 335306201 127520422 830829438 671448583 982444644 862480001 912292253 927264309 933183541 546416971 834436393 625444206 875960319 298038104 952501530 139592862 414050533 673147941 692293099 681503786 944639006 643254686 949029839 353456893 962752244 992960479 997442123 391947142 878127056 150472530 992004948 398015130 913610059 35745475 558669342 785177571 992909024 169110850 955033231 222621834 613145858 541327428 802184934 788196914 879384489 115782896 255432458 168259086 712331406 17565054 331270583 200392765 390313191 329680824 790592052 567582800 802419690 203958371 229424720 471260735 518228780 208464945 528818180 829138090 860816341 56300971 853360463 495378571 692573445 736510745 943377877 257688705 327408895 152141298 944713078 301611654 992148484 718803719 762389045 297869971 674796787 320858771 345275420 299544882 808679806 92255717 774845693 128018808 578771866 742509432 920881295 708036100 891998208 570954473 940885963 908256162 998275066 884231005 945710942 337910477 685692754 198510602 444026003 30285588 74768745 595235193 972947811 287327041 994704907 139231646 461601570 995099916 995121733 399213178 971627079 678103409 693693421 404087010 923634546 388538867 827795787 206087583 699027201 512446336 770628507 869354841 882309366 543159484 650009255 422217662 638220475 127812084 923008418 33971064 549288661 988151021 998355291 590780572 715203579 67049985 781191954 99443124 504492503 552603858 586172862 494025659 575015752 232795065 389327976 578291018 696574983 490486212 925435020 108054294 704034251 598666421 896395303 434765892 960562283 366362128 467460222 923305382 961654543 543320845 980052759 557956147 656511074 318262 915988339 712101463 740631449 650328927 724636680 426216670 578523316 5113900 849765079 880784749 935251081 130244931 327055276 591352749 935857215 632167630 751069322 552822082 712425727 528826770 689801886 477965822 769784275 239579274 990135808 303382587 498274282 256948892 908989946 150147305 544351854 494074777 597035238 978287719 991275598 64724840 389694910 584101872 969761014 812030462 915421355 981259019 987282402 748168279 848413072 532870352 965208771 11457173 14726047 771622431 780178570 829950118 985679952 303679489 833430047 478275317 788407348 68627531 499204925 12555887 545130748 133254639 302013976 417959895 565416538 875814543 933967933 861192927 877081640 754340361 829779710 931079810 954952272 145360883 544158196 183362674 783529550 271019902 570272883 224403299 682147632 489139952 934869434 107873071 426589301 386361493 708557830 89622059 96813248 513885723 822912523 710292708 917288932 135530639 596244343 979906322 981469690 445588297 795808363 529967030 628438881 135557158 872115581 496376432 864367893 230863902 544605669 735605233 742537113 557722298 572609030 800886523 938600296 742032512 760805536 967013745 978403868 252218816 889980688 913480997 922101225 268624087 283524675 928980834 934733200 225926441 376804023 648446934 833198565 795280548 860917300 834029215 972559883 678737712 760437500 491805342 956155951 811710813 945752201 97186909 782537984 329185171 724013888 170257458 656847790 533757762 890587123 868309185 878896383 257208715 757594120 556521692 839238241 60056967 331758080 338225349 928294998 735687669 824406882 998608388 998943223 201474385 584963528 50875195 595849681 494895835 892757200 757218173 832003404 920554608 968380760 745341018 769600529 252513490 991640313 322232230 413411942 446092878 845372630 565351166 930762306 692731391 985422391 499374174 655687107 779364388 920158383 71651478 561731431 809814400 974095193 814253498 846778004 205081996 548035393 466153155 948759177 745781466 773315019 543375259 865911648 27082324 652954218 82298453 358208152 705853561 851687727 265749187 462853786 364357700 914789476 433140733 679328959 795547130 807901935 400258610 900808718 330370357 452541942 322427381 511906139 979370863 995254101 506165427 611692376 821552459 918764296 279893374 671676157 253950370 899303104 936638427 953923730 801346807 818123997 346535651 985245208 165826170 312872968 197418922 579036493 864124858 997534963 447813022 476882448 204593440 442772636 107041024 568371524 178045494 687596452 812985641 922529909 161828455 756279599 994262046 995224927 924433763 977805328 104004530 107891562 170459509 666416822 554880203 965480137 844766871 937286342 45833091 341948871 444826875 640368091 605581253 798436059 903452214 979685182 779086396 907532124 396095245 781957781 55142510 129534958 932754274 999787278 864890048 907650529 678357971 947264831 593652872 995139759 75680890 545297331 835447851 931090679 705607329 861749757 164979638 916704634 104673747 268213424 493383390 865662653 436358521 754430393 505896348 912352835 721451769 929790928 254169038 865315547 22355752 292370964 583641907 903174436 139540321 476315269 59648417 526639467 981819928 998620492 221148306 245903693 330055316 675914655 706842485 776970708 95006256 373786396 168968757 853226712 658338836 696228053 22455941 799075605 163606038 464604801 535003714 553377693 466480215 830828295 114359881 859181132 387598618 765566928 379420981 551549938 326761160 943228173 114430114 677539243 419370642 828052555 106101528 143455034 35592737 628440998 670244590 958259364 301333386 395716557 768384436 842812951 394194276 600727456 611127215 848036637 76087222 136381578 509045184 967911524 372600848 627314778 933273177 937917706 169894425 798611588 893641459 986372978 855813143 946482788 114320474 623677905 400529200 738331045 405952850 973100226 304831333 518788794 660278392 782898376 15957615 881314521 525077882 580529596 754093929 936329275 689253908 834760690 555456312 662149125 49470610 807482751 22833292 233211917 87269347 398590291 913347435 973156445 580729678 650022206 155053076 307453283 685321474 957120661 834147167 887252930 547193767 774208317 754750996 981394096 861487452 896620985 970983708 992927324 723400876 832899848 637690940 828094188 179596173 533338644 336612407 720272266 641486934 850013595 152739407 602632263 739181261 992450611 995012445 998055844 351872699 777051051 39815816 751726994 979206826 985416284 669260932 771528206 881438640 940937771 487455179 696553426 657872644 905961805 801414067 890560542 195477978 777951148 706201885 988456283 54463291 282376036 974467757 997964417 561554453 639642558 169285708 859500430 371424634 921088845 767158576 992319108 167595540 378488230 273743073 369432784 682139574 831592210 865907386 945862435 454974138 514186137 942151484 956752859 547364707 720529631 232749583 966454041 209803 116122851 140025442 876307655 754611791 886566623 997770757 998434435 351074107 756290331 974232846 984205044 253085449 735375255 635582305 849461785 10083747 251332347 160471218 879919525 646590471 677325357 100118468 786239785 6399274 328444228 920846936 959720189 311073560 544267531 40257197 920969687 464075489 660574698 914388317 989996675 92690688 430500665 762269505 854056510 120923480 597677798 386473722 857042624 998126362 998163535 55554301 922412114 645321365 816197868 373946816 624491001 782471949 899816379 324787797 523713925 41079303 136654698 876350643 926402632 775888432 967030962 185344999 756590702 106869017 381572372 729546550 790909630 349403925 817840635 986746497 993323873 486664328 533397955 233954354 476011755 93923888 604503032 416553988 437440996 919526029 920231413 771230779 943006629 529536254 803405994 386002184 492074121 490739200 862996490 444697941 534966099 712505562 747724658 140803869 548144784 378422157 520671467 360674827 491065429 732189694 941346517 859448520 904825547 51277397 792587756 437780517 481986583 986542747 993860905 451858600 537875194 554317085 752807995 706440569 849552411 266214253 558729823 608862060 657098563 991257106 999995878 172755063 250832564 914064914 997144111 258841441 606163945 336821491 620745032 968182613 976368711 166488912 387196907 26805832 601595092 814068156 894979405 551733874 611478068 28171982 639250947 88312701 221535784 119332768 358952038 757348061 988712738 272470431 901866430 968989993 975849717 999178313 999888090 652096801 920428799 318068198 517475814 400529175 866559959 247121785 257172501 606757062 959308131 605523001 892902160 488331954 805924975 474400363 649435202 265947507 942169462 630129815 990276245 682950781 784271576 152290033 532366387 703708974 996275930 229582456 599322385 887716597 984717522 655838242 901984662 371671382 528208971 836395065 948725382 944641618 985353330 181514614 204442803 717303249 964633584 500695665 743226152 552855120 948403012 30926160 143010163 72517531 909688096 692425707 872934714 494604381 923930688 570362497 803367744 88234727 671818735 865309065 940384985 727609684 805227657 573579627 949420997 367706484 835060391 493459382 907384753 725480091 877780294 665698731 710459765 384718113 672766037 401407364 942709250 180641538 907848049 886377312 953191793 550720570 832247370 733663155 788262876 825587370 834282246 166744821 366670364 278205320 379023693 866879209 980909762 387094271 636502800 831091919 842097390 95548578 695805805 677703693 960291900 223889997 616877543 753406078 799924867 387182195 496073196 85632458 256849640 124427177 983795946 533545193 715902551 104055649 292983563 203752540 361620695 146281475 229984850 222834092 597345861 334497962 774292538 632179714 695785861 639639082 645820052 283459057 899146773 51260979 160700077 289523744 376805149 304822784 634637922 504219158 608919762 3576293 92669936 205337536 964127822 902532094 949442884 225654991 516733642 329134664 863436063 417348728 688798543 455949490 920468237 636204384 988516839 163459510 937686359 341742755 933286289 549549955 700846067 41435377 556377880 59892373 753266301 554493770 841255254 131461523 673885281 632487537 860144925 317974561 580479502 731876342 910277252 12120177 167129003 748723773 902150900 506386923 739134094 302961359 346933469 428558063 528695333 736323426 787371317 518770179 847063689 342768179 735193682 61786504 411039308 533507479 909864909 495029434 710285426 475575561 992936083 689385945 726674724 840310012 974876479 425335413 485513091 542510298 814753616 882284555 988074756 367132928 525986837 768036066 923552914 698596485 802546046 839647130 933437787 278889765 378128599 204389401 524369362 606955069 899189862 624397693 740521685 903003645 922995523 905417025 982810619 359638148 780943661 907589690 986502136 143698160 587420810 416905789 666669841 167565138 196827107 237981861 371815693 761934676 935115245 210319112 740017447 118337573 788277071 468845567 598159335 122098888 260058878 926407098 941920989 587130317 619731109 343814453 974361770 413448044 602904552 823034109 894485630 269247134 402674726 160929782 973954040 744622920 929152164 219334986 834818197 288253847 555046849 677045034 775240148 601057006 669261660 147967266 207113270 683857078 755881743 311775854 703797551 654703109 920707998 887868440 916821036 234624293 936392872 290146328 654959855 953230520 994899114 12548700 812633752 92231999 331760763 517851846 685690042 236483377 312083357 493699238 543482663 67395913 864435375 733840083 825870082 288746721 515799205 9620674 574123435 509840713 606452986 154074053 617164256 146208566 692049555 841732825 997714146 117073150 129653145 862009719 946301165 447588033 895786265 204789851 914477907 925443480 964303779 602532352 704239519 638471772 656888567 572030977 844354444 538416471 613711082 47994014 805011881 678604021 918882982 601451209 696597873 297975886 996132017 454262002 825777615 942903574 993904887 395321779 744353496 119010628 648356688 511228421 693108965 191129648 320956730 71534924 163526180 1572040 792454328 265307858 781342464 665844673 745070439 192418059 712397383 597678481 972514183 840646182 844523066 800736845 956080503 125304165 828830929 519169806 735194078 209070450 510298134 903222237 920000892 456367096 611705552 101781916 490445297 799792552 897820512 690751264 765107404 589115968 600571640 763931545 920029714 73732262 173191995 948041809 953528640 767662102 768940138 267940185 834678128 439981637 857761611 397711291 785485880 579199531 582107632 558754763 832272657 533167907 597882631 242781697 505438559 691237173 978443226 580628198 877173113 530137738 964336219 489087489 621663467 30072563 76762579 653973312 841877227 582290979 728525113 86322076 626160743 700454587 799960450 521317357 849357561 603639942 774778611 706633694 782271616 387518041 615118618 167820046 570619451 149067694 345622805 771887155 779722090 893560464 916434722 337257220 785963932 759324587 849629189 921172589 956330962 947666438 950838787 652251960 822660041 890142735 985339505 465720511 863886385 827004270 847932999 540647447 870158276 735912009 938573630 214313206 858782307 577238961 713960915 124424083 587957578 412282661 810310747 319214609 506104062 755297476 915798483 497251827 894805213 88605496 444315439 863063367 952650782 761994509 781016050 467992483 741794551 430751252 754147222 71632866 287460004 976865708 976970930 323982840 895682648 856755152 947542618 141932354 319765839 820737885 867231041 91322547 352988081 194905380 979298444 835358809 938643922 769492857 986638267 915699005 934576627 838461144 949438909 28483060 823630160 571135056 698545480 818375508 999245171 139484838 441870213 146896199 436503892 579699769 800205032 512245338 854194891 990126213 999182672 295661209 528886584 191372710 343811600 38932845 225966998 150706841 302592926 617780218 910849857 185349809 956129067 497412935 660269857 398334112 862435430 838817835 995830038 955815433 970795630 809935818 876690400 553710630 870411772 289769852 772044527 944095816 952601823 955984716 969892321 47679110 759190204 760453356 954823104 356288196 541462529 241613959 391090429 339930181 443954269 420812416 615535043 942253271 977615065 792649050 972523046 14348767 386471031 583240208 768563605 798901641 868560863 413109618 790989024 360122446 676508703 159818575 820659771 29150600 977310679 962682333 982850382 981740867 998378679 683586507 937793725 590819417 770854689 150637321 855542925 644401396 958729802 257572850 431703938 76788431 689086241 18935715 831677515 964765250 996785984 703956442 818285366 486164313 951005393 683394375 817038283 656672397 863904307 850179619 894401843 949080607 970642701 486751939 965539942 387541622 497496136 355410447 784981499 366042127 430893734 607849670 821786221 320523545 950444930 647479894 997239769 858948430 960820905 274296293 452579392 825458206 869013856 520758170 851820648 244843110 762080585 513751160 853057446 345142488 608292801 366895427 534928744 505318442 781142084 205334635 805495199 317742735 763395077 698653575 982719170 928410765 990421834 235925931 342174912 593777552 765528560 378212346 395632609 753824882 772276197 85680904 649857823 187119693 832253064 74819137 774659397 415085865 425662804 165462326 246756297 952137048 966361475 203495190 888735775 816220174 859802034 901532676 944530087 729136491 790060358 513571220 726606923 538689091 782944009 428067164 999672221 386849085 714665795 290670286 774548670 711450507 893738551 443055244 807565225 969124367 990748245 479452312 660626006 852436380 975658714 457069261 597024184 737799108 842170122 777474381 927911660 470616 842382217 489091213 508313762 242090667 891276659 156996912 283780220 994069541 997881257 442077284 680981534 422453863 922298553 277562435 418443698 236081521 793304093 207874815 686569988 501704926 813624005 426127750 993384217 619965484 672116625 330084544 478033908 534791460 854893223 8093844 370752040 744372287 749799816 49340521 294630076 216323311 473535624 759057814 978743280 443541948 710214227 368920455 460461281 448697092 654615195 586194590 851525583 192012491 636589628 886369050 938125331 262112729 520955021 411126222 815085968 616618592 836479834 146708665 651492576 7804007 956980546 638977445 833500816 55934513 446163719 167363071 706835365 930219001 951707429 763685866 970788168 624961581 867536370 103883782 645628332 70288881 194060163 764749684 879554517 681189554 890101125 441629091 795429237 521591437 827727700 862692225 956784730 112515185 521915826 841400765 949832928 76711373 588420894 902164591 924827127 872917176 903849980 500746355 576779070 98001820 935210901 169825733 833555111 79244446 657178654 411342518 687885472 521868711 760525960 506763275 914324729 120025812 760891097 927398234 983469873 915073066 969660870 347677259 818446295 289118477 667216023 264678166 585895762 241189724 933706796 76914451 999378864 849290637 899848657 130643935 700615422 470075257 930842114 565473080 881432970 385919278 939774823 285883845 422668980 767517073 818237471 502310775 603694647 613413236 616695474 678795217 779995392 929062273 987816773 943474039 948852595 911395452 998821390 826693279 867226911 263369472 351879174 938720905 993152363 706598701 872341040 786869092 939672880 402296590 813055360 249442969 469931888 493407317 899879445 816544312 853197551 901115620 967353740 432036953 964848741 439563697 809888811 146276623 275912880 513929007 917645233 694520290 766803194 960907820 997473335 661846255 687500604 970241657 995862157 754767487 882670755 845036498 919059651 716776035 834149338 274892629 482186954 171819881 634492348 479080273 834070677 762570473 945383615 82501660 713629762 674018479 768260054 778388304 919779025 371477808 400158274 848059756 931066153 190760989 637080052 400947346 670754124 651368794 969001729 716605347 777905766 659483135 755006950 623305770 655899133 484370321 532037217 899340778 961173544 106958132 610884732 602673884 626482558 386139873 466858757 163835009 977537420 939408285 977138985 74881421 933694551 319326938 546100705 318228501 328139052 122108579 448305118 96929684 487480277 862166551 867024918 871485995 936621475 527580831 681361002 780916936 784398239 572142143 788425336 376828627 634367710 54083228 331375065 862427336 917908206 874522466 889993578 431377475 637828751 869751523 890238484 517748537 642997275 469088892 943426643 9878076 788321154 174279458 400050649 634647516 807548608 555308356 862784689 758065845 945178474 191722249 800940614 247793045 485542026 404638479 558665444 707999618 769741830 312109004 794579306 881205318 895335312 556275683 982669346 334206135 842259567 396729422 440108656 125323296 673588496 873415144 952320007 186280669 582956011 93047631 440813374 40191187 396150881 920507480 946994089 153240548 469424532 139721243 657779983 189106269 661636002 611249507 785573808 655286831 996402640 95952220 272890460 290368494 879645909 305791176 482238648 839458070 882029892 559106914 842353536 23996969 233657261 458577179 901920405 122421334 839544684 328923868 769898068 203212396 816557576 272861256 885014928 785009797 910598076 188262361 238532943 302044761 837917891 134662516 421664101 785677490 908090417 676031830 952070577 235297087 439505551 235405143 288758985 990855172 997147983 794315529 879489022 118255612 959231293 939623110 981488433 670418725 683383413 426640646 904223334 680204982 723334835 584545015 699663875 575569741 763239504 403991118 735143806 917298930 925438208 543675607 858493758 548858694 987465497 785103232 905170092 990869537 993294789 772460552 793195429 800407630 953820883 434528076 515640865 331620193 479204727 539552226 672842809 706916260 897162065 414934845 945346044 595477406 724888679 452462702 786618393 624249325 960923412 72843293 825316372 97645467 197692959 30657394 739409230 407802245 880772375 920332601 932124417 530573100 757272135 612377494 991503184 901520624 976113048 698076522 936334439 945452437 990225440 538424039 665871371 735084951 957298566 809096937 872119063 539493353 670522038 519494898 718493966 962573091 966933086 563944010 905537562 342448582 910038891 121341662 247353650 770961836 820169126 833089885 956385492 395195278 602760467 175509137 759984651 133060337 624247282 799265684 846299661 965574917 978503121 760974560 979337509 922102526 996029215 360700622 721440523 108859380 633310379 897375754 975912970 395430090 485562558 835164118 841869873 101074206 540011189 44571318 612763562 676314510 938342670 307957933 419466737 447491915 643017394 606198243 733256711 132753443 198911673 92142142 611269455 381919183 606854805 825548356 891766605 398646932 666972416 665187334 943340509 474246296 688019391 807337457 870969136 482786840 954600809 937897104 989995177 205469997 387473598 805323299 890887120 348710334 996055274 322841181 654881313 199456313 753413811 794015829 804220138 32205928 885013424 434044333 912645589 656729658 976943364 8931408 76231504 897225868 924517895 696930986 935580588 440519171 695545683 368792362 482955781 486442933 591424501 587870123 867967197 100037665 598176973 384593989 713160970 379408174 519524764 394685981 454672005 164002089 386497113 784673238 860570637 923919146 998240019 43061555 226159440 409522134 939237036 783071660 848265121 402530169 993322448 920308349 996954060 151331136 421209067 864665455 866377437 696039130 782607094 407164227 449964275 597551171 673973791 942596655 944262913 783228879 959688338 596921039 687155758 92861423 242285487 535738021 996738526 536464350 675034167 150462716 425327668 406166550 930424250 457188445 867406472 829565830 879021554 219380023 477762783 766209189 905129224 318155751 588838021 309278437 917242076 88863485 222303060 673084313 782587523 984468493 994587392 187416649 750096573 386727886 420237919 571086628 777875597 954881619 981512820 601666505 603940265 215659126 348858996 774107471 791122675 950964323 986619411 281573287 535399333 326247647 735791913 725479708 757228752 721445767 867696015 43806942 549712621 891724326 969071067 570283290 751861548 698723565 965929874 619276839 845296106 197982407 882338120 98443723 611138585 469518067 653968660 320202333 732440224 642574940 848782047 88585317 741952221 651453251 813069862 200634283 883863112 739042366 957259551 646721841 753054510 321803704 642131155 339207479 933170294 504973446 646288495 877222168 993690914 77328104 181183650 493186604 542148705 224465641 409484903 855515432 920599815 759279995 776665930 596604916 932914176 626628580 795363684 725627112 858845820 360184724 414062522 315845965 672145877 234275263 879704637 885025007 965135747 188101849 569606358 209581336 500785691 159526794 366942531 77962543 837237061 510870366 763549270 207464754 961235618 546749812 940399361 926853325 980952696 348076282 863624501 194630965 587364931 857652016 939351081 531259042 685861020 683604254 988267908 129830095 866610917 882689715 945215241 499633437 518663211 343768112 778006430 550536865 906103449 906569167 957001669 142878672 422201558 695931947 700848194 229986052 441979840 935208010 956749467 360201227 585453916 938906892 991434924 227164486 453738613 424201063 871458911 863464239 916460443 483381121 871566114 884322184 935887283 925693538 971162857 438011296 806492012 969954818 981335949 245047133 270741905 754589803 986776138 1124103 768042255 971128425 978852973 58578972 336081570 309082092 447239079 579702739 912963301 582952684 693485875 907166727 970932838 202121948 901128036 72690026 632411138 46664251 321833279 133890530 212929054 321806186 475019981 70897800 968095051 257190039 366833743 248819840 992807319 284728496 394098991 932281570 939511087 878399941 890202326 593877522 751881233 552779124 730338842 817025070 874277324 87199026 773509188 301002263 792810924 840149055 897150174 185802427 798136091 218877386 977025432 529753224 924278279 194321052 723388600 646534913 976178383 111070057 499542538 589353207 897018526 607744798 655736384 750006944 818022938 512757939 535179949 476443287 965694054 635346599 648262567 755190516 847745494 899525856 966353895 913286010 938807051 872097947 957980499 940161520 950450695 482110258 805721414 656806273 884569910 780154531 890088406 208519241 860162083 678746209 977249654 796569208 829996556 952254807 971825536 155256875 533845253 728738081 794637861 496296391 510408764 910598959 929424898 281173222 361375310 165391614 945441413 13668742 978019902 36428568 527612180 926392393 954497128 80697356 240861853 81228800 386315465 909926175 916267603 995513083 999850837 262617731 727618865 67936257 443197486 533391220 804468239 232551861 477807746 573456467 591543207 575639408 842025267 88306484 533285689 319844589 584870811 807375796 912005503 312068629 586093848 853030468 927351652 8085713 955988729 80020742 356304675 938887461 988486588 973944048 982202710 113219818 428611619 934645673 962631624 494176147 782317430 765230938 876414737 337702751 551859461 28450786 127186749 934608453 945074478 647784271 998637858 738895250 961052956 128267590 252466441 318693043 804832341 502910939 975916096 183336961 626173128 631294543 760097623 194386790 624954948 480854206 588077435 563194740 981021250 835685190 991787724 256306475 715176970 691029531 728834612 198162423 364553859 336584761 395877608 357224844 980079035 597538119 845390685 97997430 252162702 766215208 771420814 642296514 918908839 75192237 518711949 178244437 780006073 928627880 930981842 237975961 668324826 766585635 799240061 241795449 594584717 487785667 971375852 151648105 389781956 116165488 542294074 226201579 486946264 294740807 952505926 215824349 479424133 926720698 997140259 323674684 730999844 591775262 765719179 847591858 916600836 164994059 606451212 399577225 932577034 764460105 972932728 612472209 862487286 777389903 995952768 181663519 562354220 870748771 911580937 562516872 699917589 742140841 818303064 156719859 461444236 778821596 902364210 601607503 989492117 948353109 962235904 267284234 674760292 858393816 938006744 693699141 716803726 291304541 664120928 586660439 673212055 226969551 309462099 78728328 695056815 834854176 896539230 57438445 71292089 810838289 967270097 310988475 497965806 941623196 975431308 120172252 415163349 427986782 499409875 684252738 688253561 248470515 920440253 228174944 738209164 789177589 913099971 385290747 783047527 343317602 969674972 731322097 887796021 592854203 679456501 894528803 969040692 43534144 685609459 88750987 793346118 38374360 336560335 626133917 873932314 841766614 905186961 797926486 879469371 131965974 654931244 243438356 460738595 263554329 555480556 89435399 312767001 520844177 968999707 292184854 345194208 653172968 984001831 683543627 969842209 857561215 901666855 501281626 903482797 514179081 935924638 416571799 481794778 587171842 618682009 93585481 500187339 927600816 947055507 515045503 874334296 661993801 902971420 761142348 846243365 72034903 989446234 527196986 659753028 121011408 992444511 321488659 907640776 939297887 946699385 65618775 966042038 339658863 604863175 516459551 813637937 409511473 678531769 679330252 789521297 717969105 833156264 667805990 691536980 533468013 599784674 248241847 924019914 556685059 779780853 441640362 945282638 51993016 932844954 896677754 996517455 514508953 915959796 516499900 842360932 369341300 697563359 884810002 884910848 135529192 933441642 622734322 724574941 763695192 895389079 965165982 983762008 387664777 523076150 937789937 953678354 997130659 997893181 381946664 534786197 738099556 878094465 869702045 991131970 837490277 905472721 867187373 893813231 361072543 548138549 46787496 792090567 410141747 545902922 489494558 585790311 698818068 945090513 902409320 968030433 853345240 879875795 47952384 636676150 9133029 70796927 765030052 874084935 571950439 752313400 362068207 861886652 921114110 930860290 32175216 196960607 754411571 838526884 706322267 708210065 497279008 868341359 132211241 864709158 987827965 990321858 77787327 126786848 487377861 545050914 836568446 896794020 390873081 459934857 117771700 816958929 684571342 743696609 597978807 859189714 509926933 527747447 982346267 996663204 61688166 204979188 401860607 587057674 59013151 500309937 152940418 667468902 460135599 530228820 251354870 871946332 390538227 477838201 655404395 702168715 339207819 699818678 541789041 616030488 248421723 805942420 8603916 823679971 768537626 768733206 731959252 746073509 911789143 939051546 129686803 497654795 667420045 835970481 128959297 731578931 110571909 945697675 325278533 927617199 929289104 930851082 819379293 960853444 32713812 343138033 245196882 530622586 937772108 968537895 87086805 825647779 51711019 745906805 39854638 958489170 915090942 920535034 199815505 336888072 555015822 555628938 581150946 777726752 643102030 877784051 128148003 988446497 17049666 436953727 124103403 509895569 341256314 738835541 412022533 551651095 654992216 671894237 746583145 811853894 866804978 910323012 965058475 984484682 516035398 776434643 83519172 85161694 840343098 996377461 21829403 811036252 825886730 974414348 132570110 586592511 214358221 431901552 972570428 990666630 987360531 988003571 527319957 855741804 64916368 523770753 538196002 699812598 990164116 990811813 100243294 623343630 115153554 233707861 34752748 985332625 906396882 952773455 97797744 969660134 979743878 985568946 867177349 938743819 384345388 780230465 217444951 678425357 186025873 654924345 579598062 765549212 300679545 588598319 102038167 787089788 620838572 707003428 298953902 372832003 186046514 636656449 194352923 618260028 40835427 452754909 66093621 691444692 697941168 957732149 650272046 931973618 991606324 993706499 824492520 950564395 582823337 853369643 169402261 497604777 129404178 328530542 222348365 417264776 253649406 642014330 369051047 922948380 594932818 733095479 156090802 477575231 437150311 442936541 33215139 874767297 446429906 484983918 316509368 601702057 942531314 979283943 436265207 705920055 660908700 763922165 812052642 971577495 24899666 76311724 269312891 764058137 993187630 996692402 82940946 737119433 963407676 982166973 367947622 710973929 382335239 588193885 277164473 461555305 180206899 615922066 489755660 798377250 514375063 844124193 755837589 883581673 707975609 769685131 690576293 899928857 541325376 969626809 294578695 630984396 379343962 515554600 90937797 199786067 607652380 699926013 524582732 792741494 531498509 683529588 49332177 799662889 874323646 997487585 257204921 330528622 982192060 985998636 166440000 952227975 672536119 957143373 152996273 444845574 375725918 523458902 516299682 887916289 370368004 744151270 371266421 552696270 170678582 227568288 561470942 898461599 565427904 785697463 430978981 809031502 484867697 755352124 433920533 948239575 686028426 863797991 942107451 973263298 327089568 515339897 469667256 735661073 534596066 957447995 309613003 758649505 197242696 521431448 792402637 988677458 857456172 995837905 787392142 997152710 950203052 975358449 152597830 348323459 962185470 967651983 971236755 972973994 288387009 700274062 932466005 987919860 751154569 864949118 1218588 76671106 423037604 522734027 208906091 923659256 107272268 794251590 228596211 456380711 454218957 629503925 837911737 981680164 356853699 437111260 746825640 792881505 762794702 993237956 381128710 522001035 582239210 846661286 655799625 816567953 889097162 994622332 814531515 968854843 834326123 876834078 243371601 575489418 140617088 296775408 531134628 693746717 170227373 970754539 272803391 637740585 289093335 816425581 971200153 984233787 195175901 882720420 922039567 985549627 947634336 990272708 481088884 779761808 358695155 835142054 281827673 959386122 816423049 865388865 706775291 958627858 202521076 474957047 151766286 477680951 972921082 974291149 405334550 543027427 322853258 876623443 991679746 998931591 736335807 843533881 976754040 997398583 532321179 561851268 462852384 653895795 797800901 937477748 866735625 940855511 359556346 786779751 714669225 981686310 656899833 964104638 727018098 831694593 866278655 881208397 589828572 648291460 198714972 753997701 673425356 978091389 253845176 276116848 738871391 758381129 953023378 993277167 835742328 884699167 469677934 960542435 286126567 757555944 814898451 939014540 756830700 997104875 559558367 868944979 788671782 997337109 663822596 845287182 887961933 931523112 13178151 578486753 644323487 787835989 320448168 687004460 434264127 873882701 353838491 883673821 350154620 509886376 677584919 694244109 240294146 647789417 887457673 946114615 77514326 125320295 314433639 672529525 732483734 967584520 361788534 929633908 944461622 955234558 908823993 938749403 121834625 209716981 237472403 968203365 167321337 652375926 311541711 989514287 621059405 966307227 13846273 856016854 727214729 780820403 7460373 761408590 904382348 909546257 27136082 333028879 138703537 151193141 318203912 452047870 910685327 970756280 61934964 843809192 156219071 389642014 304450986 697895547 697490127 911960369 367365937 440592010 244282106 422266728 133730904 573720974 34344097 180423942 21732261 805051121 975127124 991308057 567485605 660765873 746702453 974915183 69782162 847733922 491220950 555980430 890562632 980859645 316362432 423057383 498414406 954741971 689189175 730526909 31026353 181096674 765275511 818790812 164862939 349251695 960675436 997019490 994991720 998521428 428745027 600886350 781171119 790588281 925030174 974869242 329289329 630875329 195270672 843337544 231462192 920709448 691822066 747716919 839879769 979702511 706427532 923400847 649163706 876221292 245768762 730350338 666838316 913510973 461016870 759389680 879385756 909542531 708387612 904134859 252445575 427549148 610498536 878315604 425164195 943188447 860944329 908921143 25434548 357014285 285930818 808222203 666393877 890476718 175113454 815528883 349766407 611373472 312873302 482833219 245038722 708217350 662932393 935150451 320980938 651588587 769559148 934522010 657042949 932525769 463304936 705378882 903604065 999544953 269771253 720852408 437786807 736646767 157127932 938653964 92782488 739820499 188190919 776914810 385436374 871172062 745096767 958087224 262225447 937248804 832514001 967070491 197467372 646689051 836071008 870435167 814531798 964796181 485914237 884510233 481172382 851611563 172424157 365134312 700888565 918797985 291426258 304366212 360855992 385501998 23288211 733306367 306581049 768731958 349723267 577531230 867165803 926471988 950110874 999768813 560752179 632250670 30728076 634606073 168132055 509461178 624825238 747244706 985921426 997338665 32011862 913568637 854020014 916610568 962382899 995383117 735229085 956442096 947164684 958188330 320994697 830090207 727967405 925031605 690936324 892267083 998907314 999555947 638043059 733694521 840099877 846143383 337171695 898823592 502520561 656389121 530965523 948731164 628077977 957167739 646553241 747126817 858469112 884912722 715050932 752399523 613939545 780510099 501626278 868338602 453758504 579174261 588344689 817148776 159707740 284265705 812113445 896442072 97609020 890670732 679431186 969671011 835788844 926344697 990076948 994348643 207232461 308627466 169900669 739520978 195868843 885170205 260100590 383564127 735985989 843696392 233560718 819189950 357617592 404463812 851968320 936111529 33692989 38446508 120754077 683112428 625075839 888106975 313882546 613561175 515340428 683687148 275741676 774093612 295305948 601159164 573688220 711494415 94693444 733717244 717110016 826810892 472188021 685211310 877368542 972564455 631455704 892649723 22166002 783882218 785812254 895026486 190662398 707698288 375257557 540157595 36177458 233389375 534020062 698435559 804610228 991311036 394488638 624909359 290489817 697343563 524051237 842825530 981216757 993940974 781242632 988052756 53361763 861184528 228391663 415020778 959926403 967307516 978857230 981606606 501805248 758008693 73731013 190597297 304983368 664527444 712869947 713713842 868512018 949283074 727588014 956144631 350295932 481978867 365597174 808005188 251477844 314087011 510144231 771544740 48593692 300646016 125053105 614154739 68125813 470426960 81882111 97743624 418956795 590123045 878499990 922198908 476731131 637812209 637281624 650498203 260220925 552641562 998845149 999039507 403568440 850659631 470936480 817528305 744283889 870253602 334159826 928579593 14282769 796698556 300459181 466776228 750350962 822192895 249562758 251792022 883948064 943021461 975187418 985660538 218560010 678505217 571403275 890109793 522041466 552224868 260635620 305231947 810080424 905832432 139860381 486966577 653984025 967394632 413183554 747615566 233237120 797676939 603811435 941386914 488356908 630718749 205727521 644538038 874810568 928661537 447753341 748227979 476581473 959141362 420288629 422923706 659259661 777660155 689440796 887369832 734566067 953922594 874486285 971912075 955223182 990446703 210357755 242481418 89291078 893474436 399860111 755710783 910891060 999102317 855868493 993444158 940185339 969797842 363121358 920301364 833533217 984469264 430793694 796571818 232040112 305402065 775383136 980235350 402723668 982388013 917800950 944577923 677172471 713651944 141994762 874588664 611256492 967364137 865895775 959466660 547863452 670201622 549156008 633408419 315431164 875740049 925402800 954753532 312620837 800075355 436315469 658253703 803200989 861421480 787698307 802207475 568844347 878860311 800658454 993657857 935797473 998903254 318732826 847206666 536245762 896377560 127543633 437394497 874673254 973260186 59936909 968133909 352044780 736317047 450704913 970997545 11630693 257148120 800944414 878780911 267834082 758986292 224284484 881453433 527097109 758103183 966076101 993228642 38794646 558641615 323524614 602971100 854720741 969466581 400897484 746074367 359469504 446871966 788796414 828975793 739846973 955122933 701472337 717282397 145799969 327701494 41459280 724046012 375541517 997434510 54157557 995222446 170858295 731242216 597455666 841679278 800218145 923529046 672479335 702881583 909912236 936500861 925953048 950394396 431156569 749608039 233270222 588395760 951135356 967893209 261704375 889056678 215229051 780500092 567357619 918053691 348820029 362430099 887258046 942656702 813618531 971001737 107899068 908954854 996198260 999116146 432644866 746264304 649216827 937046396 312496243 340908507 434985974 848005848 202213414 757137008 159676669 913905307 363058859 642544235 951514134 969919721 530929474 765861936 766648055 903584470 103689974 782327473 972852075 984276701 941198296 976867358 43764790 147975667 54394441 860003266 496916568 954465368 134751283 679267459 326754808 767129502 407318395 594389412 690309980 808475095 538099006 992133061 402876164 762556044 898158191 966304457 910873530 966739238 177497362 877434765 152481630 203023333 225211570 315334301 628646255 707678983 884405439 976624702 492118130 493172016 357648907 661185087 690475417 909853903 706068548 782237349 399808466 624743175 950663460 992646728 287876304 481622803 834771727 950007013 263669194 583798869 882576458 901774427 954736520 971911857 877512276 993097206 10499936 986730827 86371846 890483518 858489993 862915535 310327976 562443535 320374433 572754281 823943349 906518381 563069697 959695721 464692362 990553790 190102755 832547051 62350587 845212763 416659498 982910320 636599475 662405850 494983403 664297743 418258349 939104933 708154353 805075011 11586758 723284408 673341323 805655072 186478522 493862605 418612281 931870329 482448599 512812512 475801806 983254592 30419335 924153644 900979768 901830316 106682592 945267087 661833839 945096242 206846244 333460852 857902678 907210338 568018359 842336081 834451761 902262495 596461876 898964084 771206958 851438709 910210171 959610534 626959003 648967381 342825882 457579857 156785874 340145257 233702385 588468205 624757519 937912225 549603814 789511651 433784398 995080287 789010277 858344600 614413985 671318871 614211465 687945313 456719644 646489843 791575083 951335003 579325576 829872081 970432693 976308995 447579295 593492510 690452855 777110551 79984594 480703265 559302513 864254664 824829794 831701764 874764124 992837193 810213103 906645783 910822932 977838120 992920838 996500868 482675140 828194036 37712431 583374044 826910895 956274089 145529738 482187005 764863096 900306437 742948588 842289920 736172449 831271169 365947797 580391419 598469426 705803621 276583447 700179356 158985266 302628363 560491349 669437615 91284417 854500099 368271762 533743847 306181794 786923624 607172846 665053480 164749019 695489991 285736233 885983352 88530989 432466133 536072028 675081049 749871557 890993522 70223552 610090343 472475906 892024905 476189845 759042049 427094117 990149939 934288394 951096969 880185818 933277194 821976117 852519446 59481455 198322968 599886129 652687984 532322203 895592086 65978555 139831089 835683308 995726629 444783289 923320036 97371394 326251537 167310647 237939970 147243012 980835615 449646240 994437989 538154408 849753314 548877787 782585234 771275809 889884773 254260506 567564013 287663739 781912309 398885071 773883932 175963975 960995690 881887033 888540399 816231292 984720297 946460526 996508201 272617825 582593848 60483031 621434657 499479540 712009068 242264615 941095095 22025838 282752389 477590341 725220005 632236769 780179150 25272818 415460897 412369928 831626435 338516936 401020079 215789960 493337259 114828536 582474604 347114527 896651959 221194656 514732282 521945874 813032089 384234177 527624018 746072890 903939758 145936847 840279509 789852612 946189102 87345229 531710015 461908714 577009184 744810403 872766408 730538812 787844883 556209835 781868532 834576717 972979340 269704203 670089806 684048121 842378105 8715931 331939172 624670265 798824078 187027721 724321929 803499389 833368629 173750511 579463054 169182987 347959204 865694284 915231963 184249692 990242451 579699881 884714990 755555046 801844960 276634390 395733411 79894523 568057523 23473353 705201463 570102342 665207003 454241108 875212662 360104774 826955960 306027896 787880689 163422076 450025269 679690447 851271832 178247641 638566496 583032325 795221855 100792740 277171092 942562581 967154925 946380123 958636395 417885449 727736519 462596082 746756694 985458970 985737646 781038367 851074268 895569485 953639504 626094469 762029880 778040451 823210702 504955844 627163460 456017667 654142195 152578765 302754510 300103890 532595768 187426822 226301133 179980408 647724948 782215616 817376406 267195753 917689359 863802651 993134018 542771470 743679186 206942483 711791203 110877762 635933619 298985587 619555448 69106126 347058451 97473822 263591280 92665686 413103821 977754901 985265741 779781531 795141423 22121210 117866772 343322593 347216183 451615255 555836643 976059761 984879727 510016197 772935182 229940382 622741433 768053081 784356185 844866880 908807867 426280471 463833155 888711487 922287509 27900436 533532497 324302536 381933414 148535943 532623422 995843446 997226260 399041215 745604894 966169668 981179997 28122432 380581663 492407658 810836794 200494489 335856724 811086962 957618514 375783387 785850977 156768143 965138604 680136852 723619468 228770589 315344855 522835252 824478449 636793301 768043846 89380676 485531205 536441976 717494305 798336434 955787715 348363477 732646189 570783210 684392991 362752636 930462441 373620859 470693423 276149944 469868677 979925236 992785914 652031918 713102961 239921753 457962128 182460974 679882569 291623458 344291798 902777168 948331133 642990831 899137671 650049897 964510450 309866451 417839475 606018320 684906813 602954411 886997913 678637024 855700103 743650706 767596596 880674252 921257752 642170228 961988106 282778947 456088582 94308495 610294889 954851042 975237883 573368492 632485079 850693175 967850039 587538491 672614002 753933051 808520230 701153892 771677974 420241253 955030752 663086514 991174193 395261685 966894441 838857273 953752246 48152071 217328086 418641452 468790881 557265233 567057470 122166557 410720359 426802355 631846646 97049165 892433140 740067247 831487908 176531213 718656326 475263472 717993063 112206711 646238300 584354379 898397157 781367638 880669479 201319867 317245131 506230644 949186374 264950791 877310426 797154866 834095259 364985171 547857614 559924327 799335535 232887956 791997010 945250836 974530635 886964386 900598011 825950271 929796166 276226066 423312703 631000321 743861707 15818004 730781851 444693944 895532007 701971301 990337667 396095286 448257975 307257242 530073891 183910497 846595099 697095978 722309016 757770703 824659074 354816327 729975428 111382728 453692761 309758265 505456281 390167856 732702237 479218382 863583010 863474268 880754560 823793689 974410828 646307555 935112807 913776612 980413003 875232924 901024808 91053374 895168255 296829148 908589473 176146417 491857824 2179999 938566578 365370883 665266333 207705946 310240063 917115601 950949764 988505299 999798241 338917211 402861184 216074684 241545820 42105182 779748218 299892447 599989025 520464614 616502086 900174157 955832872 116533751 120743675 136651087 961396324 368983737 665433664 744401139 996320243 943506548 964956494 777293788 829435139 676928241 814640024 969433247 980484953 127084575 728723714 869799762 938289852 213836055 232481926 761010819 890906208 145213078 888979497 812664638 861855779 37315292 662051219 634823794 860450682 210175468 798937039 923162015 959265915 989352532 991438055 715191202 950628762 275988003 750031571 159482018 384637886 277552593 898188321 48149216 467188648 70190471 376033439 143405131 495668284 849971073 924259741 926435355 935673286 491495073 865907980 824663884 962751078 532129527 718477411 281066290 345537055 257163229 608683787 978095790 980774997 658776311 908776535 53510432 442328113 817470686 914568980 292904822 772618445 268047978 660376865 500093754 822513821 148181119 685878182 235579406 704136796 676884972 937844712 599474983 794089469 242494118 533002560 917324079 948734023 339665774 526252779 570617772 803767093 960972493 978793441 947461575 976460613 604047042 857412536 496996754 631393424 634141098 896070057 242440475 381331893 208031222 409750760 47506036 607600794 720384406 991030403 296794722 868422499 614199382 699270369 449813179 955663272 921797250 934836620 354344957 552842768 20238362 220899611 733107081 837698966 37896433 437327387 736451627 893546079 504533237 876597982 833232765 909812848 536673880 603532775 144447064 681214281 784252385 851629695 330682962 639593675 652201301 794690266 380217362 458824235 150516568 505924441 781632916 980871159 445464837 686613511 775715786 853249230 522908759 530520765 80937559 647961205 678339797 724477621 204435128 883414820 794975833 975817935 628501756 771991427 984446664 991553204 238934823 292163862 658769622 848648298 900085791 962058164 31390186 703158166 141828918 710276864 163970585 308511352 585021 998436498 170226909 420587486 619378523 640445312 129850199 960745271 684835470 694725930 147125471 632765284 748537126 935295980 716368135 952979377 980129621 986674957 910388546 916822178 857746081 970456125 596182601 643240489 24992336 370485342 387272656 674700340 35382990 51787586 223652865 625005640 978382696 985739892 253511058 803626694 981798513 997838919 823831496 827455228 621947842 652442506 266862091 906391430 87976763 300041503 797630881 804280833 580851086 710295866 305232138 858434459 850525165 865700662 210817668 689413243 751167950 913608892 350663781 375822709 246435922 535996966 937120533 983443827 355096832 471716556 779946518 854695006 196033861 325881170 980172686 996766095 562640757 847548304 330114072 563465304 837555263 970450345 267204953 997934606 621119575 697483066 552739704 623760259 1797050 25684858 362030105 380311246 55541868 422056282 70952156 766649845 929132897 984875305 88677932 460766121 992355495 999342041 519501425 579667893 40806596 633221220 508609543 567421267 923884031 965908447 744991781 853838807 538591778 655121705 900130258 942328974 724620110 926362670 938170267 939221268 33922992 840345889 875946998 934882723 343518859 668983696 670554233 970142777 164601405 799140172 367475427 900559145 922234255 993374449 816748956 970165156 239882899 547463126 319399698 530166488 458082915 924888872 820255802 864225738 325940773 707358064 883162104 931756356 793367436 871888830 964167823 975414471 970192214 997890270 518971768 867920685 697440656 793700160 912016175 927403137 301751056 939472631 897501436 982551861 398512437 424645609 100828476 152462334 683602118 702104313 577614991 710641676 443336468 825198388 556271774 709567680 866518236 975365075 557072715 944803616 485287961 717856082 634061504 698504533 419370544 958762313 543816214 568279170 67074728 87876395 46279379 890427018 811792799 924045175 968915905 995433390 519241223 842509303 380541082 381294936 925631312 995679239 744196656 958676849 280239953 821039545 679645736 715597051 133049512 422187000 210431887 778917440 805876625 870729757 177429433 809462586 761540496 821483484 628118466 982116202 171503444 234589511 408915769 834211230 586163227 606034662 488615492 501046269 44090950 599637915 386715413 938803288 633506493 926442920 293471679 852168389 900855645 972185995 658681124 675496344 13057850 591735360 515169327 973493678 960477137 981868846 74653005 202798114 729206081 822234809 831759088 905113629 196591635 434484649 504313197 580267020 27611253 850553888 398199633 868105328 571878387 622603240 625463825 851778160 923082347 951208586 134163581 737566710 640484445 980975055 793889333 910706480 96502544 228488442 382317636 965775707 654292212 999618555 727452845 776261864 261221121 406862084 968920662 976904641 137917031 863394339 179736646 381983845 478724895 490011545 486977731 790199613 198422646 222609790 725560890 849447292 121808340 360345921 66623928 597767820 774603791 987553277 396981225 761307438 96738247 838871057 149476845 301361624 306198401 432016362 608340704 921796997 904587370 988681288 297333698 897214346 859236989 932621817 801691676 865723597 891763979 992194241 486026609 650989409 832907325 914965602 2277951 586473471 680111249 804793748 899991373 942018798 50621393 103224645 54003026 631749543 852948724 975508908 815749295 913186657 223272824 391544884 583995506 655692950 952453940 979197584 744876428 756574681 745275613 967925454 233096725 852240675 777837675 921651362 627462367 756969645 99769820 735497008 910728575 992318897 364183378 583664817 823433653 934298201 246434878 934065402 535864041 832126341 622423058 686493959 441119345 607712605 768524915 959478171 193193407 534664664 330216096 997364186 380126064 838284718 903950512 942204389 766241897 968435279 153489494 389361720 278065576 934447888 456395196 852659635 972059259 989746556 115881599 277687306 801978326 979792621 15462120 839840160 327826425 869674967 122112778 176240206 975999638 981339367 89667652 427834919 414665118 863553883 909344557 950620514 492128442 769519379 282456877 816454298 994850468 996270315 579341104 737688192 807636510 830642199 784757847 899323221 240875279 896262108 533711833 629956564 811732520 841907840 8339695 932223359 631043890 880833085 888759391 898826263 567276871 843205036 841023358 908749908 815055647 821503681 795879512 824355166 678403095 806706363 344193149 530301771 255418166 847662045 490573318 913071080 817184291 851232191 353948950 710044203 958082965 979591003 908814442 924071210 904194088 927629400 74601069 86034979 516177393 851148015 750326661 911610755 239622633 498199736 737739409 917155135 943996760 996076134 868237135 986907786 89547057 548883214 686252849 757531866 501065464 860984987 901463983 932411088 512388930 552499384 409957866 592489561 311686040 821144033 260015116 565655627 414786930 898483522 758671195 764157853 261242881 961957667 372151112 797174177 608932756 901036475 145604695 341493135 150852794 874660450 356660196 361287290 750886413 763971635 680951224 958005851 541645669 719539588 91518128 959317860 806853643 967425882 84054182 876965606 455780515 783885831 835461191 864998807 195606588 825999885 487882142 879380517 755230366 908554356 491942797 974701235 237571054 766040413 618549443 939346931 368897465 721187053 941615420 986111510 272607952 301519933 91930158 895228462 449151135 768621319 945348420 994244628 277622876 914717243 767784980 782028122 398984665 633824188 132873282 790118260 415637882 892497369 60702503 251738940 980778903 987418244 406628675 541937908 655719613 862312621 498420658 636032911 643240184 852621042 452425830 513677454 953820406 994009015 528382694 921802899 236818220 265421257 552479591 720351167 895328628 923045504 595312821 945730397 580180970 592426511 449067921 818401711 680696608 936418434 656814970 945464706 676861988 782911618 984406561 989624509 316985138 748799692 855749935 965315232 894691016 968866329 817184559 946121384 173637415 246773256 535367792 875555029 486543616 720707600 23878332 741278751 914422090 931960188 623937754 780253971 726559621 818480584 505490462 672944390 964780204 965839549 547935613 757668863 619871148 915317949 578064166 787518293 932914222 972302207 136687641 892525945 354191096 401916618 449680477 536847482 588740106 815724857 529404623 851087250 193334153 701694645 733284242 739651472 819528955 955787921 5563938 644192834 948473488 960108706 619721534 811675440 415484955 726768402 724769126 957250612 593375748 935341247 992637430 999455587 647641585 693455330 166159314 612838009 498834385 985178086 636637893 658771716 226120399 633612097 382675922 832373321 985425052 991535892 643464607 778174144 389236769 561871626 472166337 772013648 662039646 680308606 863856871 979832457 93812176 677355952 108496088 846198755 412667560 764290935 833991589 849169771 194301171 456915990 568631610 932348397 795722228 804368725 571878605 767721186 404746186 812804157 445684699 678522814 476018723 710845939 45778211 387091921 605592058 863784962 953710755 977180628 429344920 783267558 731269914 956810452 388472882 863046697 184350091 486961559 409689850 677350711 97691174 748124070 304517415 920003638 622214310 784422436 804243655 994766046 67632973 136279612 178438937 687357656 841390566 863413118 43244158 456282579 225120920 455392303 691150110 857397969 88958341 910496652 178777695 881090828 981430619 999180983 484460599 748397274 706273665 911220794 200426843 568551771 397515781 762107352 820361251 885757702 898445548 915682470 18503192 616304476 224874016 654238933 510695032 868820826 998536898 999015244 577974840 751713518 359316618 785392912 729544919 853498214 804849975 954102904 937165489 981063033 337375358 412758066 202070639 958556820 51726445 727065631 480574569 612338558 667566422 999923204 913093758 959648922 268023329 723647402 300740639 546730404 511800909 918069990 345993881 368131949 317894853 693046579 992727306 995369958 164074910 465926138 736254969 859149277 133729407 444310832 566656327 954051788 582795956 604951249 385578692 764543589 321728934 524530281 633359241 842986301 344569212 455585033 215173367 992850881 886575901 915602826 472111713 591568429 344185382 599031463 236547895 385634155 369186584 372304843 944192890 955728966 204201782 824117067 977391933 983217940 891248179 970054433 724843824 821798886 46494147 396684504 159787651 487276179 231030261 679740718 142836358 278393131 931746109 996284528 599372823 656045138 937860476 969754098 104229843 783489883 142226005 438699172 343493760 660230930 970032729 977188024 422761175 691148701 902189329 938407933 802359327 860386544 701889374 827619257 336775870 437216308 315763693 327511666 398438139 997531029 810931660 855786142 710628429 866693200 795261396 797441166 118552524 372748873 791506826 838316487 310414950 931212255 828045519 947383928 799196492 950275239 75790182 211162776 927556661 968867594 500861986 708270966 838086269 995309580 85658481 303329537 383693027 676983032 453324523 656190931 357987908 466059167 84844982 189509613 260606244 421780494 237791902 383980315 77774894 215090361 522447183 982602458 385563700 407438977 724098523 860994435 304057676 325289595 395388775 869969032 135335739 744980230 568282709 925887467 476458135 844349394 922131817 963091670 627148049 737629794 432839727 464787013 756857273 879681935 426493491 648111334 308753035 691227511 439869815 911144652 777407910 892508143 469797433 560019921 344085623 670424151 575236212 585606372 690551267 750347187 85909219 326390897 727969043 789202704 258593378 402740292 223002369 933338872 865641928 953482429 803081573 824256243 425217284 873053175 925368362 935996032 752243643 833615253 635329737 704492873 935144393 979282449 175979359 401361970 55515565 704631444 264078742 650287617 211502278 935707248 995094059 999034907 421342716 559925224 390250207 393193606 246220821 442438091 543057641 985957480 189122629 190256162 657131152 803094924 61632536 735163178 483492373 733364221 350026074 798416776 558696389 764076347 514387177 691047955 552245409 979624630 72508729 281860504 465300092 858768676 368905546 615838491 353473677 571824926 504065010 902462167 180313725 879063175 21558992 138824283 515393391 652129554 759469345 822978233 731145616 954780373 143407792 797565033 262825909 410732616 951587203 998123234 826870691 829282812 921019033 995048063 962398886 996080337 963002908 993180746 763491283 964920932 283158682 756290275 753274999 855660399 641856917 709213470 806429580 925709668 283966754 555032513 862747748 941060990 829471028 937823186 937116399 940760818 87527582 337537098 576657676 578500317 369558551 525318799 665281730 791038835 487463032 554366039 489110731 634636270 752526363 930189516 739859836 832516332 73035031 193804593 342824599 957289862 733838019 862767685 327897511 948219431 750556526 942214039 429546701 995139022 795220579 961860656 940439643 991072409 965483508 980519566 317669270 390939256 834257519 956346910 331244374 347622507 783905086 796182166 584180686 951967420 672811732 780933153 895266437 898197338 193570061 286387957 12150252 876736297 594609478 838286418 502142000 504220652 178301598 840899435 77814250 677994419 166352165 434535479 349610186 794591201 75865640 765954995 290989170 354804805 628652158 897209077 290344735 426934869 78200630 875547636 224694017 507080633 649705155 781338207 574439089 680711107 194171910 985070163 890042155 981168091 544512941 942915694 256213654 991822882 981793396 992761007 3230938 451192309 121603452 438386045 978515305 989738892 293055464 827332390 481931122 764919479 837434729 937024218 819097511 999648142 483902448 741248936 673357744 794216314 326838413 434859391 920768563 984782285 652634279 710074769 792048463 984176207 894758973 959443585 212388262 373042352 183658242 788846291 463350146 691901862 34300808 981867925 173992373 775172781 8481078 906076681 455334216 645149633 11598241 27645399 832982375 890722336 545497769 606573555 431489976 463009111 607814827 747145564 698229572 722158413 143629078 754602111 175605767 660878727 9003034 975091293 708870370 744957394 45391461 380562241 871146354 910390251 309411754 512604842 983352728 983396228 250432747 802012948 689302396 702593077 768164343 839667268 866068358 960647986 961744023 988495004 378696257 789403326 904454819 960175840 611763165 662199524 317950374 583369634 837509116 946992538 311337116 952097597 901665168 996527478 507619168 977968484 244050085 625756754 972622845 978999920 710361137 860986819 489412841 784275396 358319405 890917165 537004890 868418349 414943581 952417553 372976727 800487529 813976554 983874573 143870914 915962294 125551925 475332096 156957060 183455814 985398353 994681170 636678514 839245140 83167899 169736860 946025946 986925419 201236934 210337068 312202942 888428733 867785792 877009631 444982992 850963376 720701054 832464197 442692943 983358781 588313923 963540588 210417544 984050500 854125449 921807744 804792271 986054235 958364916 968125046 405039144 585577890 131835195 353377009 919576431 950863685 950108269 956948315 674857800 696622051 187303005 500536577 998368207 999417145 936391316 956424432 283031132 454586113 578640900 665005473 578419808 749506359 624714813 943865993 890725383 946459184 517122645 758381993 59863307 718574990 88071354 701685486 971004856 985804609 710224993 943128618 288030918 990497816 169895792 520832770 671638712 988962016 803840334 856905737 631384694 829475583 652218644 960079658 109358219 769489681 782366583 922640452 505049082 649138346 139786497 493337531 115721306 173076583 144731092 302436314 338046085 871205025 842984231 866668280 570608311 704480237 115743359 822593971 384377284 487024487 686264020 865576728 99530552 845848279 733664738 958700364 237595547 881274611 292793672 429173152 477324182 834496634 178242359 279632655 682114047 895389149 532303545 736528844 548394381 658184960 161142522 547771960 447857088 950403672 851861000 968682347 737184376 891144292 930033143 955989225 940902371 994609460 277460119 458232680 299025894 902515583 883409982 963251723 328634768 803187545 870523895 896650840 393615817 540009367 587368116 702468811 329265745 720567697 802107809 869164561 884664547 926844767 404808226 613364328 100139190 800393785 929058954 968693879 308217764 429449567 27862048 825439695 375404982 555290274 301734211 921473543 113305043 119721318 474855151 494029465 575044042 925864740 981324881 998781098 182099906 887389260 192062025 352991491 237424750 719800243 614699399 675683867 183002465 428395430 751976036 839185326 601998090 773575403 18185075 945345747 886141896 995735970 737822300 962290056 479386109 731773547 789525361 880750717 588245523 698975518 690548733 865778058 557598046 577518854 359443607 990950685 594778028 959848921 374511563 799880412 38517087 994854527 876733965 942173766 766673481 769980573 484653913 927304742 528504108 657662229 345651360 618051827 620784909 891145880 106573312 972005960 246656498 917319007 601414975 867439132 307079852 629641172 802348201 855056785 163732389 512610897 169446076 833646889 941789892 972940060 565615933 700560480 560663081 876571223 797779268 833260082 13214984 915131242 645274501 979832699 907521648 914640160 743763589 995932415 154746382 850991222 286176122 760392249 148632836 296892389 255486505 824377117 898837832 933483410 83757279 229758688 940569660 948900031 935525660 998848097 868422443 947743941 841434965 929069933 234878103 271563945 994040875 995565021 133527452 867721322 160827901 950689115 427623008 633030686 852410567 882567184 255944270 379019162 29314368 881387306 464625088 699469434 39095790 661543052 551027433 951425046 613185723 814005261 170869480 372213795 526858070 986535245 303432482 516522140 144216718 531008198 248688416 746263078 772029100 995821243 980870024 989125501 990778734 996111389 171721088 617896374 352748008 377255555 712077339 902008411 947891596 951650957 713218032 819822499 853520861 855826995 89065212 990053453 20376408 419634479 82597150 828962023 44802163 912775657 423535340 505145459 542329054 727046133 668476460 840271902 434655921 744072592 988858685 989049636 708060331 845904562 796785106 846272054 848196270 929109546 886383028 905306150 932639902 994191901 740616626 746746169 896683271 915626629 429345180 456006759 90192406 202302297 429090379 951374076 438768634 955208155 920079306 926955867 220785233 469798058 625474906 629399614 779796446 856536398 695475513 888737247 827123534 860488256 890802013 948312059 903517279 910846887 424407478 582098957 921654333 974188336 347425591 761114671 654799146 927862988 834963032 865138284 694444034 815324708 328666082 352831709 335499965 889466905 678250354 985664663 230769577 984379720 179896693 579268567 291872758 460326792 524703564 963123187 879069211 887798851 328288627 886533698 47991383 538217961 704177765 755351067 17739598 412170759 323260430 751955092 823238337 985009328 532089475 755380330 114743290 555050022 561034373 924264962 596179682 643196422 927893607 982626764 398660754 861856348 763455310 799203356 770835619 844709263 917626387 992361964 602593439 840012752 572587522 853835570 310386511 761074801 313096163 865990760 773952054 894351804 337036109 404764975 65128442 706963168 402692133 752117179 469649970 984086719 919413274 999399379 40842850 951916192 173980698 723132054 124577237 716200875 745781825 978392936 445029213 613306292 601896333 764177386 941973483 942397756 717392073 803611843 587270336 865744814 575608343 944411497 369131107 713502305 849225964 984484581 26292712 434678767 142056060 780205511 893395053 999908157 771678905 879646232 248616198 626031180 672117420 836273085 121242780 355720929 758948880 837658178 567655615 973425048 573573959 938762089 575459564 963850987 672383272 771831576 86864986 659200172 919834378 940457387 888861680 937371194 17549905 86965433 405265036 743828396 748093666 787691952 349434051 516634138 477695060 976182060 936086384 985057220 887359027 888243461 157048558 462977753 630383731 943914170 940274616 961807762 160560504 663790717 697216387 775385116 611377261 933051024 654244338 722260508 877826212 953629080 56399272 502694559 303755361 977787774 930274094 980141865 925241432 950820473 106831835 619630521 520288241 523324659 630790026 868501904 404079413 796930826 468109915 636099723 305391119 621764319 883747512 940202592 689739342 763736544 474946983 895151114 367000996 958563711 331324120 920185810 33139648 941859356 792435818 885296884 213716534 340760834 548233065 727883056 507778641 778716069 896778165 916843810 885058060 996317038 944681714 993532957 2262104 663464956 728297633 980043269 710643488 801131803 39338497 872343847 630481214 719777030 775790936 924458918 955759752 983285271 675226646 680122862 291278426 825604236 927734890 940667814 147356588 149899642 235675648 569254895 491546477 755704776 202491403 312615658 416029352 729830330 400302614 460965184 616314533 844680670 780863152 927150649 652917668 926834372 848305844 973797214 229153468 899770293 905468161 972217659 20338334 471912532 949073569 959037648 240291066 788704645 329477290 479773793 86729090 466038985 574408584 812574747 870478814 933047137 563802026 817317921 91726585 491490400 439224855 607736248 338473206 504309262 890763520 903207718 232202484 770916038 187822450 439552327 470502938 534759448 50676824 447557065 999689785 999913399 994576684 995231440 10567339 249222377 461687238 613631232 280663350 694036729 906316067 954504544 718216251 894127953 173762782 950098745 834864764 925480202 640086977 678677782 7365967 452402596 100348371 229016917 543913268 834684685 864846776 999752417 624852659 857805805 80445691 769830759 293943057 609461052 819941606 883202487 95475088 433418895 482366117 580023282 846263616 884710423 108879826 383611964 44423639 327982390 676620423 902346721 265537724 431984073 501061641 549130034 827794115 981543544 575636495 899244269 543013582 755074589 407789095 953662259 772140144 984932593 115174704 261572078 922335402 926786202 842241600 971939995 330363810 938692723 946103134 955198207 12819753 700610429 799578763 834142453 838692227 967125276 366294962 542090349 383966832 629462183 358341717 683280265 707906312 895709784 832736911 940907134 341738059 691747872 769684581 980693279 830500561 888324506 218251208 644428553 383984614 497789902 570518454 847991000 774672536 808834385 15218346 636376054 381521827 459174654 396903462 771636296 907291133 937277677 844029956 865573627 485843525 813923291 125059781 877333715 802048234 847557062 194044183 647364942 878701593 916053978 447615246 532945311 19857289 532159530 34149270 735368185 413545767 676024212 11637505 207484204 984561218 985887404 352417754 932034513 82583772 912895362 872214296 959818267 823921021 950691934 63961572 960198852 388095153 870238052 449131867 912338624 408945912 625912207 685710136 737677214 956247069 967353764 590560068 614832843 16462061 487320650 14769630 835167450 671748327 971715367 202597930 985255334 293979972 751718301 463673959 859880529 709375375 732126925 255104759 530716464 73314048 710133262 709785927 762399699 49209094 895242586 603484733 969452459 879757753 887892317 481883424 944087483 963630537 989579569 184142134 428819892 887787263 994178435 643410675 877722764 445036071 864374009 424930062 819131294 505057734 859476554 317031696 997486748 903945935 931997851 34466597 276055471 416948166 821174903 200374469 638904935 625727956 685262031 159392819 331283329 880049743 954902757 45770053 68468460 283164379 463822187 315992771 856929775 261286423 743949860 436040854 891743931 21540779 228529316 114181504 771537494 372635852 781073244 783066738 790328837 119815920 426352888 879972260 958667094 831298599 912210802 270392421 289885376 906281631 966547188 619030246 849830145 274048382 399014708 666550825 730633446 109736046 244176844 394665382 523560238 485505423 980797864 100407629 480136333 429659925 447459038 863685317 957234836 409387713 853812846 921794284 962972635 121992112 947607697 204912336 253230237 587827320 706405017 757691343 886443589 262159707 821015013 729410079 840958676 576243603 903667919 169817064 342783262 316599722 636436039 537914523 925080632 412496675 904845369 79622895 743720091 358137086 772275924 751666754 834078355 350450110 586416086 51218683 952274378 619997586 885846321 419073756 929553328 230407360 329981325 63514114 906955347 577223481 945000618 215583478 940775009 183728043 970402031 204836240 615682055 16973728 142669133 904508961 983604642 925277727 996608513 473435026 686695716 426589195 678389765 611626590 644381713 113029371 933411145 699972666 908784802 193514315 443688712 916140309 960884706 550592531 793425532 828920032 833325350 177112738 221342084 411789131 947464684 269728928 905061183 309403092 707407230 367701441 497960976 606262116 655041954 15165543 457796743 923813228 989998336 137683216 407162796 689892005 758581983 855794948 996960728 664631234 715016161 193232675 254568475 979398084 999384944 722981641 899504325 902255641 947299599 84434670 653070208 914700252 986379493 850100332 887206993 475257669 891957996 25111964 199300398 675069157 839809718 664789146 665662009 527891344 648130334 561533912 634906358 46266027 394137422 175429933 981584987 590192366 859510166 2152161 208812195 797635773 817093634 501014203 690015868 65873509 179898187 669172733 788499173 92771844 247549358 748717532 910032314 450065871 851548729 746794174 991556367 613430237 954775158 322355198 751586565 456840938 951747097 857219536 868173161 859183839 996894422 292403580 315005435 3726573 874380901 692359984 882580746 338969211 769182252 380752594 798187967 137819754 368168769 718287164 782054133 380563936 745175910 333272956 604682007 484819237 929133733 259743098 903701889 936357076 991939374 363893260 387627483 433790812 507930734 336902147 875886145 239328915 241185404 456016339 882096936 296901923 334495658 936440684 960143555 976883100 990507713 638155657 821441612 445298633 650118255 71849202 193459497 593935877 643424749 127877385 308046097 736964309 968028078 331377548 640104507 358000880 360696473 560127711 996786870 88031332 639227020 84577955 295560214 932139822 962453660 86814210 943090373 494203352 549692482 165737211 680756424 705546845 709287654 251882272 670312581 216065774 547201650 23894638 955198641 620109785 966258982 245735868 990109970 919188004 936071792 545814142 551342789 991002905 992461146 568918842 628014345 395770348 700620957 981277008 994898168 663722069 720876998 666611922 753907612 330739363 792322129 120044251 717798206 209779033 513588988 209815383 496861681 692103815 812670911 408256700 982727904 187144155 599371384 710683898 813082119 39371202 102234317 403872693 801285300 402559024 571128269 510227922 763911727 779957740 784606428 964949781 995013699 54928943 429741138 105614844 200625925 788009463 937821183 372093530 698919586 28306469 424977498 593970238 595305912 140110534 592564342 654918890 763624944 12766516 408572815 479403078 681647429 518995312 729406372 202000061 733874349 779858674 944149912 371830335 611542781 473459287 813851610 210538724 664471049 918280055 973261675 707007148 753707906 788261422 882424896 823688295 909607974 779473477 850400277 926873643 993881644 168241161 236005206 589170311 714022295 353621744 470070339 687672330 820595145 690036760 777563289 798942481 812349094 953867873 995816196 343717112 364297842 509395995 596286688 312866192 493437240 497858772 823701004 609537855 771327292 235382550 784784035 463438846 869902313 682099323 976610579 542756891 703289273 6455374 198902115 331451446 856626145 849535846 859326245 547571126 971263182 158090540 855202839 85661293 305348870 598096572 835847190 530465563 893027179 718911243 837142035 741312379 758163608 940808684 991919058 153391261 642464586 332594175 441813099 522957289 614261109 906203620 968655343 372454702 709855192 453031251 989956574 129283176 529606075 446874105 575033370 532652741 993127683 713067410 924888847 160642711 607697347 348124509 778605947 924836841 947611611 796687883 901163540 540449826 617209144 29447620 436012555 498767150 565206395 487431453 517738716 225762011 243190585 80550867 969671133 790072884 885553126 799219034 831909517 708076797 782910532 437328494 469667401 278325869 995137190 251108271 907886733 462088290 794718209 889293509 969736574 685027528 777102173 825957393 924874642 693966027 915352216 799299568 815927020 180758559 707554966 505368272 880981110 884310300 950515217 729517630 996512986 747261960 792959500 772655387 891039125 483052591 932309788 486615049 757167474 863404883 992567681 504763929 668964581 464456555 667283254 463273359 471420823 214824728 941122041 583513041 742635870 275845661 359096623 151035119 659689738 522566591 899441736 528032219 872240043 417802583 838752865 522202714 959374609 660751678 673883843 635366302 819602229 177615314 681512135 524200816 569747328 461315281 898943601 806168123 895958532 401763973 591381935 851850048 857228560 576167283 646461742 708926643 746333719 240142255 999023401 726204019 892281908 614350289 907571570 813392176 905896970 175233742 816535200 873268833 914267968 632892689 720482473 346135062 875220100 450654700 792239145 899545271 899782561 247665492 776388390 702257080 786431978 122484529 418860975 675253375 841446697 563891578 773330008 428262787 502157609 12767853 584736324 672674896 776854593 28517230 333077996 517786012 569186850 578511587 658499772 7559094 757623019 568320366 725455957 107859750 107980046 62777268 592358818 35663472 822546091 687825384 889575552 691810427 864133362 705055239 715804086 939440887 961471986 225051284 955470598 152341903 808045697 494303605 709622476 385940568 827795416 168742862 341009588 973896665 997950751 548676605 565283337 387442219 773844763 477137217 703858094 669088740 678730162 726161894 870299764 654003796 794010560 577035729 577710049 185819755 801637511 547244378 885087092 688487849 984108538 530980829 735904219 818981712 930741582 713309565 760824749 679506508 899379601 1756338 395720350 345410365 403832437 489512705 498905354 423746135 819911855 223770824 610578197 852520910 902155414 414893498 619645131 230036054 759275690 328573137 727888858 832361620 909530486 137933284 956455386 828660228 870850841 965722470 985519399 72963461 139968773 681065376 799524962 21552527 169298092 219577606 685119656 140673168 664009877 295417231 389511922 45047060 962402189 95821561 601452731 585556336 975352266 607253971 752099948 366655351 714392759 991399652 993606041 701134245 975578986 965020046 985779287 940520992 961918107 775088546 786451796 399229801 434053204 440221965 825327226 503419045 843330608 356449929 404688069 641915696 728188657 777999354 899142331 675065664 929208511 31095419 434475525 989539716 997154469 929056642 994496183 981699419 987097313 325753381 652467652 772584167 820680747 158127487 931891517 274504465 450064245 361824794 535488362 944608905 991924388 77453038 520555409 781436996 804916412 137772846 768495677 473473383 481598311 260951380 785989793 226800967 796594531 220261784 338860880 262381208 629418951 639967253 819080097 167848157 193303534 238772276 663548890 548793887 578170780 396292983 534239600 96179491 295863351 491326069 962948168 516344144 886055916 365112016 493813957 854927387 883852946 149608749 613212132 668425719 698498377 634620946 887955963 117275452 134330372 604929141 639775565 823716319 861241686 422856297 776066744 348454736 869341593 299673544 467711380 914438469 963301249 833086412 878241046 838770778 879960222 486387000 911762986 529054677 996673910 510847619 851788270 212921650 597398822 345047922 419053534 897594520 998450604 72755629 704097622 766712622 997292766 333063940 349100579 735254382 856007645 691146054 720245532 643274129 904432450 503942588 688022691 275419588 425464815 395261674 864805391 694926317 999328443 10133992 794617036 460631544 829727169 122087337 725702074 690302388 857105305 203852173 282306516 679756825 975618159 237251064 425228337 423613281 544254735 551732278 622129011 327203294 433353234 281840829 969119947 661197431 781491595 413374768 754962488 158900520 702430222 587119713 776764942 530225246 872834844 587422126 743156202 872276215 879152221 686317420 825887264 284330463 532028772 935516399 939643160 669595336 789764841 757414909 769903228 974773710 983634658 959021688 965489506 89719862 723735501 668739574 842798007 458758845 704502541 959041120 979892728 146007953 948648275 26206633 178779812 433718923 869256417 59301232 586054522 869113415 887676014 203014443 404011632 96055081 539485427 335528979 891616222 951848132 967446128 246283423 610685356 636800896 882226734 742379892 891297622 120321520 144471535 666446664 868626178 703619623 755301233 767984935 780603452 129946272 537995395 589342504 925996310 167050552 645357852 582866566 892371266 691119223 914604099 575698193 709541741 639317084 885221426 289734511 413764979 727229624 742709151 651064598 765101850 262940998 424142524 816547352 930757109 233048281 549896122 942059399 987847905 944233450 988424709 216553685 705244912 644128060 847637574 639269334 739569804 82543534 738418152 198559824 786348455 824201775 962500788 422132816 526722396 231652118 796327048 627863051 856823950 378506774 787063688 331834667 965759777 4724003 232965382 386669756 839854545 426868540 717103353 431196680 894590229 899812281 984294900 207694064 791715897 702978019 914498843 266014854 890475714 429663590 524499404 413032765 720370774 174517293 832816328 582847569 618904617 792305340 792491618 358477548 464724694 431931488 651735299 229719643 795921823 343087016 635278065 551452667 792672833 737301036 905684448 508934694 528671659 987254447 998588271 941267012 947092088 37023142 285377623 315232843 942829459 159079020 846160041 964990405 998452494 773799269 985153195 114474386 958594098 700439565 984146527 533664613 837344211 788360544 928626613 522707486 616820721 220248503 334645262 725154759 863838166 422920868 582577190 350231242 464882034 930787320 946157723 234221788 633777505 495277606 816795740 719365765 953225653 143339289 152519565 542526807 803486853 995772460 996749655 852585800 939648871 7525266 629018072 230814675 297656523 390403486 760183832 625724516 917297457 158191345 767583928 300986186 399641580 346675041 950785335 39356320 661711046 481654275 984188723 970707121 978258096 593890128 705139836 270882256 737288321 204484074 692485727 929185028 986820928 406742004 600771820 598960772 740355780 589474773 774684955 152752758 663192048 205510546 924363486 944841069 947904164 318666854 493332360 566792055 748105545 361545732 522532093 480882406 827043879 661871428 833852735 699254277 929499338 725049040 962251094 420562122 627120557 645425906 651572913 994589412 997622108 748585095 782238167 811410702 903357425 957454616 959775044 623413290 795694284 350755668 897600694 613880193 647341330 586277275 805106469 265261218 418219473 719578305 834139407 196313330 691834062 175346464 305777961 427376401 928410077 157899088 658382692 140396389 302995465 431859340 506325350 726247208 764874228 531105839 586757946 720178813 921853415 759611298 787666131 76086881 455208037 467733577 515626822 143289692 646327354 170591300 726057366 240841119 549490944 204840994 434275004 968527965 998495237 462004088 786140033 598197005 842472982 853199689 938259661 390738117 538303600 946782194 982063708 833615927 913635814 245639223 603137846 895276105 917341541 720297033 772211175 592016140 601447472 71785117 835962178 679247280 992185026 508865506 566106353 733143323 848395732 75284141 418833286 282927965 992935282 333087284 586041301 535754456 905466580 715492467 870424936 174349088 874658340 822449042 868722779 721834770 793619010 521238361 773311469 82839859 387091125 318256881 521471775 274528732 966701526 901817708 902028779 792445173 981531726 134610317 667374846 175388152 919824200 397587049 735738284 142245589 232167500 407282588 446265731 912289983 953466749 646333672 927160960 38542894 52011113 897546944 899367537 416103540 933448521 427183407 452917471 87353331 170146971 727207394 795891388 678453581 938269653 146141894 592359140 858525525 967546790 391220184 858037762 73309743 585557244 985380381 994374063 443397604 498027893 134483162 797401058 219395587 575746085 526104223 782067186 562837189 828118728 188785889 804700082 421827764 631717347 43695748 646699790 189982530 630803104 610277966 904596553 785230674 836236551 13530440 375384115 957189360 957606877 129090395 863193970 219955215 667312784 513400045 542311844 18867975 167416008 760321762 988531283 778268922 820415898 562075089 831015800 551489491 621644415 196047994 876483243 867787208 875805274 469659418 659131836 625854529 826545192 987220468 991772564 530043165 692409336 183427918 360337771 206557364 805772662 437791440 480296264 914248203 929415736 263228930 590796599 504525649 752359902 94797239 298879303 618900312 787132235 171661032 709438654 385854377 634131146 949664522 985574281 449093415 618187145 654356514 788003607 125866972 788363492 709246403 718261829 918163407 966501854 537848163 881889516 496704307 985399464 77861898 487454244 910062160 994239086 237639706 611394120 663744729 664070210 410730415 776818470 38149955 481100549 112697561 852266118 335938670 680873748 110548358 834968208 297559682 520441754 650016038 924529239 189024960 415757032 798057401 825028877 469827216 829246459 303279366 450657111 429324887 753513449 428162752 553544554 476884577 953937476 451739140 805384986 875042667 992716445 129912833 404476361 873417884 956400455 483650069 871721440 614724135 968540980 788823016 875262716 761846350 897354948 812523249 852501968 902570517 997978966 402400136 776288533 854019017 984566850 587566120 803786472 364794698 717552124 616705171 904579119 467842530 993059977 130975322 342159297 495676258 677466698 706135041 888792248 507325153 833562060 918764502 947858571 284220537 656905287 322883427 934495766 579334492 616903137 670948032 986469941 68559192 520797596 422361612 653479581 191782582 203430442 617053105 664860962 714549249 927220826 766719861 969905771 656909095 746213924 700365500 949260651 420881947 853811126 720872107 887543480 725693972 829598318 69882445 475005503 667039253 683558030 58244015 983074050 416124388 838426713 615858219 732614069 47536800 249513444 521924563 906431143 876876281 924156823 987215927 999061356 875121870 992493621 184096218 809450017 917534862 968839031 204580912 718196835 562763649 873416005 58369563 97934705 944899980 978976638 611456359 644672984 441312068 625196392 261918550 965183179 190887493 936949260 916172861 965863991 642286986 671990453 324484694 905447061 781560609 898465615 50156059 719364872 512507327 931598050 995026618 995477562 664904771 952381536 200303555 726458778 722524671 943971988 477355919 671563527 93579052 235738693 988617828 990322447 788371557 793189795 567659684 752074876 832048039 879830870 37518563 200274215 408522630 489191655 527237123 710954571 517088593 529374886 910629944 938378346 434271849 827079703 33635617 829776287 776912930 932414259 924320200 946726399 58983833 679543761 522542129 776459915 449959760 948950757 715603878 898043029 172444734 912114466 793285490 803911243 629109857 650095969 475518476 747390448 995834752 996267879 396528705 464656915 153178900 159622757 625655717 998450813 542656146 818067296 876198853 986745644 886935838 970488711 8831830 589701567 311707633 586591240 384069997 476891745 764657880 846606188 161728609 316570263 229006354 311976731 750837526 752512941 483846377 699235207 533470024 582111721 460507625 653641339 402906404 885903439 589232022 675097534 400020403 876556866 323642437 573121787 485203081 741979934 884806703 988764200 662465939 719682721 417518593 846262168 630052504 964685594 307424748 807517841 197695366 440178490 575006535 943201385 520764305 935203908 203586496 839293037 639655669 754693637 34748446 644428497 615009202 696937237 979461413 996971065 570532030 962941822 948331243 987295531 103494435 928617766 211945009 213363854 553244466 589591915 894061859 972991561 712695480 986912073 191873743 197033130 723666561 874573860 119473227 390436248 282874736 666619385 511686333 558159024 872468477 996702068 933698127 993458986 205205999 716505423 693073708 971414022 26284930 870898361 687605349 985847420 214466928 451835196 7812658 838073413 644474309 841696168 480324771 878192553 290586179 598157655 44661101 765724759 909819869 996482166 717062980 972125670 123300009 527382837 300832659 706575955 479290491 563863073 451880989 482494771 769628349 984006540 397460145 976316466 639236610 687434311 911356822 970910378 354622699 475895350 306987355 526179527 307915511 947955879 416678931 450286179 447988758 494113681 654133985 738408117 109581291 914618180 136117400 329631887 888722750 967814475 186382460 414410237 630601966 739376820 863026106 984344663 121169064 993425797 687064512 750672200 652234586 924092307 400641039 439704721 226886258 996136102 145005671 753127388 112312432 821576219 387628713 685591384 879332995 980749556 666391789 897583781 239695502 715137006 259583613 427234695 75834385 940990018 230672413 461814479 428793985 657470666 602806208 645352906 318680352 327595823 218324037 702769439 772529786 967822097 980382236 991295471 403934806 922573288 677333754 845864748 35780614 759335568 689863349 972011967 697995251 758991097 367167191 806036883 219245302 251197823 712328428 936431693 687700950 910745844 478730905 861155813 676490661 954450396 322014565 684143545 877298037 993852766 635922211 924406881 898153199 937497475 844764748 962540844 27029805 75313131 5104227 968160023 108777127 108855109 657796348 921063182 452516432 877514792 218520593 427607261 85797260 698705465 735332103 776874277 37650602 828302665 50398102 716585006 53636969 963931988 484712914 760432226 573098746 705056076 457189409 831079587 760365173 908097873 720307544 863925159 179256981 291315232 866724536 936495485 758097747 871946246 435939587 831917233 26183526 457817826 247097315 908859164 485501207 975847645 898834245 904196252 231540884 886613529 341615714 461077253 228627377 649814529 658809896 794614922 650676885 843270489 898780945 957415704 516176147 808836999 716087320 722023488 505565298 653185479 632083801 752361156 209965007 912262082 565113618 618935223 377589104 779297839 941368680 977637217 771427867 820429730 794065357 830098019 16719636 939672850 141764369 833419766 764301202 823005047 650312424 917255722 993023586 996034431 371692806 609374515 276820060 838506424 447678717 782911148 92952350 201815516 146231806 716808435 686189546 942286639 752882819 828318289 919600116 922726471 228425933 536212306 531797284 774665346 424501511 895703779 822865893 905362327 936981314 953743614 120414013 512311854 48508054 63453281 839393446 917361655 363613970 767419882 974737377 992309372 908321200 991091848 971395022 972051534 945391759 986743726 612717299 640652629 842564497 891901523 340536680 881705951 634412755 714178267 161472906 519666241 720816608 869297802 489039699 490323913 748040446 971228212 516699290 948481840 514285573 801927322 20363324 287088313 832160126 937223265 410004316 648629616 425162070 764181310 303165183 483962990 67866693 517779559 705608426 994305485 411648190 605999201 883835249 984863651 331684148 411306618 684270538 744565372 717815400 772993974 401797800 695708452 313916207 967784508 271034741 987184512 633223780 753248264 613291231 701166937 298922856 529631665 693506383 840840968 502515626 759307012 344154866 403315674 272956195 375479340 497845085 702940994 721273961 994370944 690288392 802846372 720408720 904629885 544578080 802276368 853283742 904051414 480723718 634661978 88282637 690651903 102189979 409166123 816576794 932237335 951025297 967440038 716247686 918517217 989175231 996721676 595152904 750287981 607523054 862378886 265288216 782174751 468450737 864332785 690177698 935739652 398927591 736098466 99325161 721725784 636225259 691997377 446260002 487351732 99718741 317327304 302879314 962284592 821607152 857506981 660638875 828754861 661586319 990046250 221360131 515917532 684972560 875687986 939610162 959035388 853752410 935855393 712185782 894418699 358395046 696062457 730633030 980331636 34157030 562615862 956657952 956663739 10265045 908699582 34845948 395264876 414454331 780421890 412479960 576283054 558325120 615916696 460099591 999054627 527523734 634542805 697538260 874629358 203210136 656880836 449524306 458945712 283454421 697789533 365985134 595950811 534542546 814410661 854235740 912404747 292006552 920422011 404802143 537879598 962106375 985754036 793975950 834964418 535702118 841110696 445196567 915501147 381224724 391841890 21745517 885913305 1565886 218603579 834762150 952211227 426820917 583132973 792102175 866321213 619240817 941422941 101203536 426683383 739982533 924348602 354149384 975350505 600720422 818133210 324734290 957726981 388909553 788822597 594161144 718162639 938769765 939723926 485046313 592082065 909080272 922682523 413536596 814075311 935082155 975543799 413116538 535031585 168067353 892635706 937250609 975927704 609855210 720032534 649510754 809837233 824366487 827560797 347938906 558212331 206151459 676313514 433231648 473225868 778129054 998692625 302254155 682785313 803862695 954458424 428220223 456655451 568234406 727573700 962285292 984749620 551187838 675924627 977109198 986361002 580669404 624315465 772267565 789801694 801988967 988999166 83212761 808412950 95182245 118313842 227579687 416380821 609198353 762210242 748985934 947308934 152018234 937787336 971402657 973550190 695117796 936464271 9396263 727345363 995869727 997376739 47100147 889451285 124332251 503694854 740686966 902818003 384806162 535773757 893497565 997655389 673508219 991511859 85920707 842415827 299915870 435942679 364902309 448425513 650928902 672741987 50757842 863081703 869747786 900276248 146364731 737106399 71141587 457420477 913005771 976544775 709796477 879448609 838947226 909103587 675298035 748922981 63539941 711262874 664121050 758611109 295565873 299566116 491522742 826658527 408915370 771433283 404285597 750312492 828588454 950664814 251238212 586652330 917803737 929726886 620834517 689645945 600903415 842583870 601897096 612812211 569145145 735835528 543323222 749684649 754623762 796379164 671127004 885531233 877117541 894466725 783935646 914798313 518602723 869432602 641074375 955627801 962176018 984908261 17910713 691934165 306119392 679040928 579284672 783862782 262755402 416656164 418655504 907617824 504115084 676381052 416577035 831651914 223124910 682637594 73241300 376536627 700972036 786019459 976370347 987392641 642636165 757070191 884939013 950245188 986741151 987563261 99703953 646254175 936772238 953193914 100123410 648730042 608135944 638984618 817097157 901302614 833063457 864443526 729891872 761360714 561649777 816103538 31553289 998060046 671783095 708900021 846423858 858174623 708658642 715166790 895869217 901818352 741864074 779172779 769583161 789972831 133857304 710112718 90210123 465893359 969966819 991907750 587405325 716070744 862454221 970771147 5628601 993668578 805615421 962664106 787471387 829181657 82651664 370889573 221412274 820802828 416951424 669784186 778788830 835523755 543579197 968003996 187650812 796081261 47614873 781583338 781061869 976485112 850545288 873082634 998976601 999529803 613668572 887384754 755087000 883053088 86570299 847462575 959240817 962117908 160162628 682333145 34918729 266131809 143931778 325880967 765070262 927157711 815178150 938700318 335521103 716888664 113151636 204882613 67614834 528512223 146783081 811217626 113979116 976311322 676159255 876650955 953460761 998091761 886125467 993668857 567703558 589398113 679366218 686911786 850159787 999018155 216948118 437988485 354332636 832791387 2245195 273774006 698888294 932189999 205082347 774768227 253388529 256946335 915965640 946155985 842551025 970996075 354770131 847010252 483334761 672095199 529112917 838111144 356246303 359099423 290473207 666287575 905945814 989554920 605815125 972059805 366042220 515940820 614834035 758914731 534644336 585229350 541157368 777657342 959512415 965456467 67367476 682709164 202751435 379860327 126031799 352536068 441865243 880825788 135945386 171242208 320325843 518136017 805591121 984321637 149004772 219712802 550997505 579263365 749711764 822091535 165323148 467353924 454422711 812711668 583794240 915316178 915425757 963979178 532347542 993278060 785955798 892384960 529502734 754662344 845242763 932028021 762845123 886949247 778380522 870560093 692452368 942159324 714861676 791052069 893959726 964783102 926347422 960531858 582318656 633217592 950078578 963229524 768207100 771280108 106787012 658435938 237772094 624713305 6804329 403908325 157921812 856637628 657412948 837586147 873392170 938564944 375077912 997539432 243425280 279113377 786462028 975191404 825626073 855405066 267358203 304667661 650386641 979019246 286398206 841498295 356891781 360068164 177936283 542686505 693031558 918363986 793238490 900724923 422320613 938167836 733100053 846097135 668327699 765559021 488742325 853803620 965241665 979548995 759948934 976103867 397027346 553889304 366699187 784259077 796302381 939225363 451822558 746717807 31807885 426984348 723446247 781533387 933336330 950918781 599769807 839256954 429276540 989480425 406030990 844862330 708131321 946372904 104939730 334564546 570995977 920399579 326166701 444209128 574585142 774095982 583367608 901804915 871342406 921968269 768298801 931772278 930489849 983896372 482136842 948109343 883294698 886546914 976975080 994564493 183557361 824376232 135315815 879283714 703904142 797828041 155338146 354541897 976024789 980092781 853387661 912407360 586914851 969763988 514602512 706986495 173120541 381904590 546356893 798379309 478238915 746502869 811619482 944160787 250367921 806806695 919208105 941743815 297490444 586093729 897484684 958745367 210445237 377036157 67986088 698724164 715541361 862694060 216837434 490515235 54766238 711644221 627416684 643661342 24159315 275414298 913941658 965628269 963030119 984781391 272039418 560405021 75715029 929068514 264218663 834530426 254623679 997585749 369159846 369905136 236095095 270196805 225825619 876976968 600276139 659736067 894773962 970657408 552219059 685120882 93806434 468369280 466896598 993098919 45131479 129677166 409913030 877342222 219602559 442390311 404841144 426835988 642437889 952525281 763828169 883380504 180687917 270522137 109935060 806547359 729155389 811518986 999062938 999826330 68189760 160632974 303126285 553681206 623320714 661923441 964171738 997174496 156997330 616762350 801807623 830849674 748782476 882217701 162126621 590341651 44521423 776839686 599677370 706416588 406504508 458452951 8357728 335892741 203238690 443785084 797897129 960231247 208934449 646196868 320870578 606008409 438759604 802486732 38290896 235127665 622366741 827279330 555384109 773178198 832574526 995570481 361850963 628182317 190279644 521116827 403429698 435792179 403799987 668518729 411903478 902599691 288122654 294972615 714651851 839821791 450800814 455127278 976178354 979628313 810669896 886350985 436161781 551075189 464227897 848199515 914072924 980108589 252233457 645647728 351939196 688852006 176579847 908423540 67895877 393536339 832819402 855055462 29505210 966900361 623877070 987841192 204793914 648334990 726328705 815493186 748512196 994864539 425069383 491554408 610333879 884663758 562979393 674646385 289177426 883916025 806204750 955590378 252729131 409017262 6055563 541522223 891981279 972187274 45880610 295334169 117735376 780115818 314982127 805246843 599294307 874766487 452524906 814098717 468617629 655750200 578541811 591585761 419887309 810905627 366748145 619363388 581056976 711239494 920037684 934723315 495171424 889618504 862915798 906806839 315302425 588612483 716344249 828445309 487901286 603202655 275438862 603576759 993360224 997461565 738804857 788261797 805417602 971447315 929141514 936648795 543783374 946356287 415428708 833086208 197916848 639542831 107705383 165107775 264093045 451088457 407960169 809723489 900833548 905520730 354249994 531456645 30859231 673344248 77565883 235367662 205183334 415435413 672109687 793542887 473528354 559364131 725330402 999809659 903677583 989567039 856941884 888522101 246192661 466224462 197638943 846110676 852868353 901370238 738440883 965175206 669172962 789494116 267414508 367315934 727684097 822982376 609024738 716553287 99961594 388095077 739210631 924241049 897407877 971255771 644873979 854661879 874667798 918193078 746884508 877906088 995376183 997691738 737826615 918167588 951811575 985244868 356279098 751589121 129376057 575430308 142706783 205274298 535122406 923333875 93739108 334545074 725011750 795957677 222421026 584329220 806640701 821985013 833284523 856679627 267266910 467524744 812977324 816618992 745572193 806019733 617813586 983795286 50985871 241273560 710308742 799327967 262126728 518998090 339985736 803517207 557870923 906698552 94739765 290685248 319434319 775244071 908445897 930474153 716400278 992943299 710493076 779900323 250499347 767900077 675099087 898858639 219502760 902144030 525990924 876691503 188281225 403248594 133168888 880222875 720260348 794518120 270847673 954221993 339392885 900449811 152775753 167990837 666675232 916765430 410648588 762717111 98368205 246232772 566208809 606760202 216085423 654767143 344716948 507068238 942859082 962497463 304948478 844148405 694099124 780995329 836707961 904274282 545824928 571952460 824253771 844723959 286963916 683467248 321737262 429048284 199909888 805496749 422166122 639417233 783062988 810822531 621083324 950630637 820825358 961469570 187053888 836904423 334702236 337593825 72541870 583000205 364571866 639653484 616165356 930833991 913703207 953714992 550461568 875617947 452150839 500219946 409600731 822970890 226899948 433492507 652289000 950721818 657939964 868179274 433414675 732275387 497063139 635265818 882875904 961453836 767304562 878313292 318107445 555260406 812591376 921288319 728026112 808868992 199500026 957775557 952695795 964426710 131759071 180147899 928745793 980829592 262892645 330596715 251957465 671485293 737571518 996380890 223938983 742031303 758898350 909803996 87236666 194705613 798414303 802228423 341261513 449153587 554088453 818012291 162950421 404630649 466836420 596110086 649268985 791939639 118431714 931641037 335192561 474596165 37884278 837237183 261460205 927047827 220794418 628584261 26793748 861622048 389067902 567387350 492785033 747113156 165876049 764094738 512122820 935969140 147323722 277991360 121291431 739832212 860230624 946122685 624562220 747576723 863746871 918107478 329937660 526588294 799135060 896363933 939079433 996055886 978379722 994616561 585567315 875452377 398625229 771085039 103314016 435285194 897738521 996199192 350225406 895487936 342135138 689911119 570792927 597045013 147817454 582562353 380564914 433106347 588335218 984887192 469843618 893647218 929425156 982887021 717037465 867939932 148933777 240171498 339163933 620548652 896687859 906001626 984386656 995418080 958652514 992372653 321863452 474497065 750099395 935992044 350375881 561432881 458622003 952131137 102240878 279669453 485511431 873750659 838363870 952321013 64306980 748445564 906980357 946189987 804797911 985747189 688042857 879215487 342066010 637833480 283123317 726500977 412270278 582943923 626043695 665896304 527594919 837737969 62005415 585142643 968051922 981808389 969109469 974818093 81919910 521736106 728790071 968053461 127868965 999797334 583513391 880847643 315599847 316347604 943559716 969658005 409956806 791723225 180341470 705595121 111225142 312428980 148673548 525359747 261255984 745274020 537345121 881230991 714374943 750568880 137162458 858034920 351272571 885902439 488660368 899018299 636617148 758958628 993222664 998392027 971523402 984821574 167361474 323875080 705910513 954040265 711439997 769623409 662422227 892995959 605438945 830523932 54556023 696877346 381836435 754276151 205209858 513691926 358690478 524309372 611646554 806491910 205359870 580884403 269491096 827815631 885119104 902341282 463888795 625945794 379657941 425655464 919792971 988663329 214097140 958352324 814477487 967628599 191134628 742870149 173871025 662870423 537979273 868981398 251557861 651563627 303976042 831023253 706757579 841189424 660671129 864026431 352551432 642988124 924307182 998090531 312406983 866197550 533809597 841914986 502898206 995096684 647091826 801835326 989285987 992648658 881151853 938660986 72193285 201934278 683182405 867740265 624813972 686430498 983169082 986797446 753426760 888149571 360763747 582484263 145150341 212539338 384537417 776857853 686631484 875253117 768241173 984279607 369547717 422553761 583791047 709915613 525383420 659123317 240978899 302830667 180714763 634715845 133434512 807624393 547637465 787270336 690349181 943641087 963820322 973018379 984956228 999688026 318136913 834022548 867835806 987349984 963717693 994763176 915723723 985399452 319708964 748357081 635685806 926655164 927455305 998956642 508327216 622903319 725629349 761707832 747547029 855484085 296610237 536105043 492993341 738524232 742816263 788615473 860068292 864125717 752653102 812871688 854797128 861011220 518144093 652713379 415026296 482572576 898647361 981600153 702040758 975947458 271593853 969379699 653504720 661395423 232344423 911848864 64250209 807349528 719159841 822182006 251470228 264703809 284955000 807089359 390646349 884372043 415124044 574548687 337747666 953752012 79937507 193557979 333330415 821315071 352213186 536505222 661097943 969587452 821210757 943043325 862439119 978236241 467346864 641332488 707187582 739807770 508349622 912296411 901422354 953077055 875957464 979087531 739017883 909388739 221411346 709108312 742281906 975256009 102747257 483499606 806828292 895197041 176826868 715214306 189435881 404776693 952478562 960946673 173161338 525020932 95693931 424886208 167897410 261443963 837657854 927455990 877108432 954825517 681984849 802567382 459574204 687945245 115946329 238693497 446826912 695816712 800460589 934480294 714725628 780218973 540654339 709964564 82885662 85557955 993277845 999523085 779442086 824803471 276317744 871803758 56126794 248058441 92027314 766395308 422200019 529638991 585943802 660136685 622434714 627104830 331355638 554830224 500396033 629518726 331413478 486906253 430654788 569491927 281517579 708512537 1444853 784537534 145972890 262760921 801184128 964739685 522729972 769130742 743292275 841779579 333324279 445023351 145662325 637908857 409481827 542523599 606326864 938857873 914041140 972556572 722376291 937726032 690256819 987256336 848494872 962683237 150545000 738625216 788956461 912697663 719835642 751825949 227724861 843064638 272883299 777345021 111328420 721846279 477473654 687506582 501297189 887836218 266155344 348156828 689961187 761110514 177859788 834940923 670254981 968322549 207007857 496610565 283556264 312946116 465093707 981985067 690500279 746185100 292073411 994990120 674593972 717540870 686844040 728908706 350592581 384023869 338498929 857241642 291806801 425529222 439299803 921470498 925869354 959902843 661695915 822732512 905364275 990963825 701605832 920547447 757373496 786624471 316836756 399643796 27009061 123229231 283558285 942913988 99751480 479123036 521521388 590603399 70018551 312462923 677687229 993565611 397695262 400637159 309672855 638429554 802157427 811237442 636803417 740141371 716835141 817072822 481164837 652042539 312207133 728477826 951322968 956188751 319930143 705134702 207883461 695028260 404050864 785983979 989120069 994639982 154680320 713679863 943906359 944319761 429511274 709433796 250339368 315037312 277455681 605967993 42646182 681479044 873745947 925929024 56061778 547291641 335799393 694481979 294484319 753566243 166566829 201597499 935270423 959858365 809364982 922761922 494095156 863644466 897003568 973055014 320058611 987246857 862873690 939547779 375586449 525721695 975644768 986790432 354910156 903542382 234181722 874180403 267167315 310005447 919398716 927886726 251228498 278682535 897430615 897568706 889817867 987633130 904074830 940060698 461834409 885486094 958961028 964977156 790354926 895655714 433524395 587184562 52208179 180361862 793530420 973134724 882806491 960225213 284097660 745437809 262750186 490592298 327085907 853169677 645207130 658166717 761457699 830803163 572816546 791553425 934158952 960669484 528113184 782245932 457032385 975037617 221093306 541821168 905451683 957713974 998876870 999199462 686818439 855802585 195664880 492954331 492667566 990730607 312492848 550181881 56546488 834651475 607234358 744107635 598717579 721249211 313238698 575658996 465986846 727562176 291072745 912198307 736192809 932909002 157259330 327755800 328792159 410567073 230102306 377434042 638348072 926883389 57360768 926895190 340497210 556090476 446070127 905619624 891545286 929819645 384520712 774554004 289471600 488139167 445779464 647999045 367060309 895351835 149179623 598860552 970092339 981853046 873315627 992349760 724747560 794646581 613094461 925540981 879493287 922927632 472651515 962741655 612954904 871238322 613582418 680123929 908310652 954738512 950880870 970188094 575034142 653820336 948641915 978686794 413283593 425401791 596193451 615379314 709939472 891416684 782166797 828915734 588577720 699220130 279435676 548565459 582690258 933106564 690121833 799863067 864670460 992280692 387499246 608190723 808101871 964448082 924697655 956462233 523049755 960027944 781576019 810143800 766754946 888478539 665568942 932787216 358743103 663571065 354951919 395356663 657901956 918802994 327045768 445575286 861471781 921153117 100755846 346156751 615545358 692032638 854118425 950622119 827910217 870293258 831041343 979854606 206034152 644624260 972045862 988863335 40035964 879368244 25694678 447308592 53214641 431946506 776445227 857222994 41395283 747614013 635662785 764776615 944328053 956543183 935767446 997641789 445242889 581593794 20843198 907711807 810822582 969285066 652516640 894038562 836565183 992044627 826881940 871868811 803172471 847383519 998042599 999785589 3277846 902091982 949546268 949657088 272815159 884894699 224005075 524821922 654210144 699896346 778884106 865240916 438280042 548916387 418673326 590443474 921948524 949942545 912490776 925580015 934022489 998823630 551843754 558039904 532487247 727112018 446835144 544606031 329888012 585331121 827582395 842756977 392305654 907077326 879740700 911132316 297668079 700070286 495995832 582232372 705803975 903440616 272655901 317935233 884099199 888760145 393601586 505638230 650592177 675877615 158017721 356338859 279224440 853959234 463599892 524835661 46438469 823605581 173736469 243495761 237708015 790147738 436472941 464430321 77556581 301076224 210857240 935960151 937046982 949721494 55418397 957280382 207487135 976219287 796784299 855777786 791539105 945445640 561048618 701565917 385133690 397071475 708368510 779164139 662283312 911596336 380526651 779789257 821927749 891807984 770518887 857014368 553316115 652954105 401223968 841819279 95764701 753669300 571485522 635546479 238076070 766576669 94012527 179868318 165739884 950983464 735086051 944543481 583522391 958013924 262070961 760195328 612491660 668238686 120434272 673105226 414195450 796736040 552912789 883793486 549742909 734893098 305740707 707699715 557494301 772711398 361495043 415089239 384828828 630369114 143812426 521599124 289898917 781357725 782059436 929258984 693061490 788702713 20846149 176859803 757834909 975040605 350494382 794815352 906772588 988186516 725042864 780787324 255268321 282669048 797648421 881260128 517527476 609141882 55429956 755166503 10515418 996016784 844128152 903934361 842663355 992836498 899010358 987103414 128051485 190861683 523273194 548623972 411185120 738378014 564656984 687542108 493974779 510021835 470647808 932296073 673659920 802882294 776445144 880589937 610038258 711009669 953341981 985343938 218839120 640048372 917799468 963586971 630144514 966849968 910258648 976226768 418255211 849209481 752901315 757556503 9423752 158982275 836932670 860178787 343854228 937418016 840320140 869231870 701173746 924786707 557706780 800976040 463427579 676640911 953360726 986868228 808106338 916870847 258445101 286670663 61065899 852014291 549999752 789003972 192603795 937898144 644645679 827529998 670963213 803180216 517338205 654551143 273503053 622431411 955858676 991654669 922540377 929478512 908296275 984269765 794196178 824235382 643641260 856831465 601108759 663049743 376954124 825091255 140640966 453758344 513886646 697012229 408061173 645025939 81591362 752986431 825013853 962601616 554590247 764497713 140260516 267540421 867734452 899781937 276665302 468676883 750755731 769489951 407572294 735107710 860694884 956825932 836963405 907380096 846622344 921263531 227247237 581230172 214666786 231526070 295722293 804532151 475625762 897515162 851075177 894466257 499418547 942935647 990400270 994062603 105116472 837876375 796981061 856599749 573240662 751799021 107646542 801152072 723504020 748955626 939969096 971424571 837719610 852462675 652004322 990355753 37376823 407852826 429348085 981934294 638865237 757790656 24763913 25121612 370497922 878233270 317156637 653442543 772204488 926416334 312279922 344999107 727532350 854151177 458807582 866322601 622782390 890680104 740324864 825239626 104432368 789661068 923444348 973464930 176022515 301866918 829296859 931129681 608422485 732186228 944506710 988235354 943796816 994313320 568605765 988056056 555283544 702242357 807650425 824662642 879319411 979365299 356474984 809674105 205374864 316255344 531165920 837825324 225747015 659764490 914493544 918818250 849026603 897094317 389431439 693189907 498012996 871777097 511628669 829213582 443315666 937255501 110183980 949506517 426825577 753063378 185153517 728847180 652989441 693162401 493829955 788486175 427191145 949246206 626033507 698299015 965373984 991939221 341203705 442232873 174272931 396125423 710373996 828842137 135023123 682461066 485251183 681644109 476915569 716711004 496724004 829742925 734432257 945879833 675720808 867008647 237394503 548074211 644841324 742454788 725729926 951467234 342032715 701506452 373814716 532421346 655437196 775546386 939182121 958992390 564974520 928555776 826352422 920078033 931158345 989073019 397221725 500723111 725847386 911560089 621121071 910600299 352997092 674585344 315994398 430494347 87164489 201178459 583147677 952686936 220567066 654621991 827214902 912172484 928148326 936690017 826088381 993773697 645224231 753316180 204163390 906807276 800531524 915440568 889895692 967268827 64166400 717141042 758596598 846076516 200497042 207939823 47990335 685734556 977518172 982081680 726902367 917665667 40579396 119002563 530909489 866585431 173340669 265646886 657952808 662917259 900946477 986786140 516730410 842882815 739685292 797459703 177686261 825181787 325453537 759714462 857668787 937197342 941112472 977552238 59433027 398728822 91350784 399864392 121907410 380876295 551660187 565715714 570484607 866235712 90940847 104284413 532324629 667315472 863134265 904096412 715687156 796517405 358540254 507019333 144457711 832856361 589804302 945263132 662314187 709185893 685746743 871107879 59375366 65710439 250067576 574361541 608922465 817070659 492002991 816531888 289520177 619928375 476310038 563593649 654459310 968609548 524812934 646924590 662572543 910902243 913028407 978802326 65856718 693278790 49603581 479665623 643723961 792187927 432638167 671224630 282660772 672369345 768237010 800997917 441273475 977112602 867955271 933027456 924447842 979590942 800352733 826580583 175739948 735957985 397109624 597019633 862773173 903482958 440701731 848655401 959869391 963590871 656058944 760951242 328931319 933445299 271304806 972941829 874329778 975730991 932362948 989810145 81750836 794642738 768175821 788814500 356134591 824490846 683173652 942498906 868892870 948228797 76666403 626622259 871012179 925008476 273189054 304828438 619145644 886446595 475471688 498946870 883062373 991993020 279491448 398695218 744079973 899970771 762261118 796848846 764559343 780364096 323647397 581703832 230226176 405050785 473593124 982923855 353490543 926224515 581524163 943839376 868555100 984052087 581847378 930627813 124228132 845215406 170193010 583693799 854434151 909806662 905120333 963379633 760266557 877511126 261325483 547355776 877350610 882748218 507576771 677426563 642035878 787012754 441547757 752830720 26520822 447616524 395703371 594405419 55612518 212311515 49238499 212744463 407920927 840129937 313154245 597294008 296475537 729364733 225525778 661392833 512797380 778195066 668895145 813076210 704629574 975654966 596404054 662313231 233241552 266728431 156147413 267701227 577231309 714911531 773478763 943479776 565965444 718784517 361519090 978481610 765261714 861150430 731695404 988929301 123902624 658957685 836569035 862583818 263946501 945076332 985551891 993516912 795224727 921459137 737385635 983065646 748552512 804495689 848099932 855318443 4882009 149427610 679275119 873351346 111447435 335969343 751758310 970739582 59988571 908250595 884393950 999558517 638922372 945932527 252669303 418725354 734582202 842872759 656706525 871729881 722554019 985066615 393879333 600039653 463688120 595534866 303463812 745632095 41114525 722146226 463618132 610100094 840594259 899376720 843482657 915471939 203385283 931447234 966235592 987310995 143175903 617601164 976777387 977794623 693146725 899950684 835592738 865606335 653070993 754194733 290061365 442401788 268795465 421700561 503349547 604237875 723576415 777711276 260608876 739219993 119089645 688964106 899457735 914204795 81235246 903561502 526344395 551064163 41753151 634353160 836964596 921319634 634335426 645605803 711899347 833235569 318380447 640921703 264428463 695411831 861038448 883548887 807178857 818143619 279805667 911976723 472319684 532889863 189429134 422970591 743305061 799313906 382013147 964988780 850329630 892285551 22375325 120891285 259158325 738967396 555858744 690609260 466402357 480417101 498824757 775237528 721752607 850133164 564677137 743365700 639284608 899492549 439516435 963850836 695029727 982440465 365405540 939118694 328366865 799531841 882799030 928392366 309145606 596301394 383472712 402830522 378570792 544792802 778753692 908870050 799989118 910541919 651539182 761959680 437687800 802500958 816601125 833682247 309253697 473300168 753348190 762099927 510912157 783232768 472117476 924512740 155512224 519790402 517268904 889182184 843578532 930948552 774491934 916331604 772912980 795507014 28617389 491414691 188958135 861829045 100352329 648274263 897411494 945115026 709552999 854846974 367786211 519526067 896639251 994503476 98090013 181178262 796832200 848044715 703661197 924761153 483044823 879364661 822890405 870603147 346778042 843876708 177105731 474523107 509974680 852736239 384570939 727237951 385192660 705662171 397199942 492272164 131087735 489930339 865474654 921082023 836619380 854141951 601077970 763388091 104567331 350119852 244590756 790719253 707696313 992562716 963747132 968107193 758276685 873037441 997477206 999996523 100630339 776699218 864274242 938957284 459229784 591295717 161021725 683362004 902899030 946494617 96032861 130636624 807971766 921392269 327419291 913400007 301184494 395225869 451712115 724536392 145061679 924676772 331318800 718568930 109491202 686927973 805609164 896251866 213957442 775770319 252229188 835096671 936863056 980639110 499461524 898946013 873978792 949485036 818650632 920996640 351733361 520582765 573633421 853150330 270897481 891939005 698393414 918684571 248425652 673898061 625911422 798296080 445202912 815812411 137183077 854135926 440850712 585277484 646753228 822034590 214220560 647313859 986819349 998367596 297542011 970622166 184277395 403094174 285097033 857478311 719966807 746486587 343418648 993681077 970436382 985925398 130354870 907950699 500327756 505687084 890345088 985550503 604952039 759161174 630321487 919796941 536754362 973704492 497870950 828545986 89722393 169490904 421608667 432584307 684804948 868158408 650460091 911010945 365847516 829139844 526829911 974478001 784486859 912544715 473492716 830792972 55908282 799610806 103390663 364145420 263863006 626865072 494149619 684851881 80136547 112308534 165361431 514904315 426039959 568513262 682837947 790241722 258281197 629673874 323493631 660898651 977200073 985821226 835943486 968433587 505192828 916403693 440761333 916714263 588390640 752988837 525829381 946669079 23146855 227095984 653791706 988116439 110744119 582299789 269297716 491618387 727381058 764139639 459341614 972229821 884219563 971933244 719398493 787063257 610893474 844932357 974116497 989194254 224429121 785220628 276706571 836095110 65865098 905055222 75132357 619402781 571567836 595146484 844842832 983166330 41493507 594834040 307112165 320577878 348702321 808426995 366287933 769178780 707073698 805003024 236628898 599777974 236744944 680611732 215813785 222961588 233855654 615053449 329188377 393367352 910595746 961630263 493134431 721536747 714746864 922493660 724768917 905881757 571225296 888615949 713834732 809455900 13985727 538411400 926624637 986155140 589806521 983868704 550148710 560228846 741207427 952025430 814381141 821310970 671990226 849615421 445575847 750998959 411151400 530254721 154123593 512253745 312865994 955304335 162928562 880349713 239409716 672185107 232472962 754880677 987969480 996919204 315663860 993329987 614181262 642442598 351560033 684686938 285532371 824479777 543491 73959863 366706979 966480203 523659953 727032124 726494313 961174655 724740041 955147139 944237062 985156890 526822371 559107740 393947440 519902709 529215919 801199115 842045817 997175876 627008108 856121088 632916886 794698460 140462042 392337983 656670107 825696089 699118261 975507864 457716323 554966718 351955420 521393104 986269349 988679967 613608374 702985959 464832098 487581052 854706659 953394210 97759974 211589349 406133734 842625265 619221304 694642710 644387957 745882822 490226989 507456255 5850049 642518069 974532171 976289312 267031014 870387012 677599498 816502924 209879261 597115981 203342085 589908440 852288064 880927829 403149370 603657493 375797027 377669828 980771168 987844634 38946465 790198998 696408235 898701182 994679886 997888872 14512501 832303811 62396102 523220759 502635871 924527097 609763728 620837917 258982597 905417696 701553045 862749765 769172970 993777052 711421568 959412691 726340752 909439566 716259608 783751077 619063406 810464534 235946734 698617136 578765098 626710759 333140332 576195151 647452573 656384610 26027621 794550355 860791064 913592283 522917443 875110302 632747386 740276187 920990465 977625219 728778423 924482073 964128155 967524231 810161181 878392313 480486819 593901630 239935057 478379852 1021869 348600381 875418022 877620846 279803809 309502756 816854545 824814810 330659777 634603760 706392703 959977138 296324855 717875289 657935877 670566978 74681946 337219063 135615064 772405033 666549287 964341861 869302890 968740335 961185067 967716808 81537593 285530821 1462360 400328979 576714873 680804915 234151304 477807800 231149359 398125514 890561737 952584873 622228739 966094166 726873798 861618363 5571768 958184783 143510153 162532230 496444756 764186974 610812021 621314208 502720844 982612160 407765775 828496454 366176516 612631628 681730095 957823263 718058929 978512972 167594663 728029502 447523045 927311970 361243222 905398248 632201263 986646220 56726728 495646087 960197646 993542834 286870113 425958329 113886655 570772058 654122034 882662177 12566688 768099771 598302266 732150316 25384054 761273369 843328893 904650533 900785474 920905709 832582057 844565951 750813833 830996317 897109167 930477115 834081459 963903128 786548464 927430439 374905755 495062207 851965696 994386371 99201644 651595783 750589323 912718108 997026704 997558475 477998865 614106533 54890283 757074471 938012386 946851838 81785915 765851221 400609155 769273104 600739228 798922355 32069235 578556314 738165075 989939507 248565696 768661699 104222125 719194672 434257905 942073560 889137632 973603857 328794885 392078608 257746898 938715164 451798895 941366668 57693959 927026142 689949654 984404994 927488679 984886079 864675766 937910922 924641400 974274766 440067879 520649429 311041735 362019866 943224038 979381135 439349071 766368783 604360367 605355696 679755860 918759682 758525336 904287551 557066007 805457500 781526483 849220140 321442266 449241830 709045564 804207359 151285927 301409873 616324482 911777830 455100272 755063170 966890479 969163010 827483645 881867465 989245246 994535029 576504339 692002484 46951016 927437464 501427263 941752937 889304131 940833586 64989195 422931101 176023055 985368725 738513831 907566503 237049798 907897248 546949112 760602785 570043337 855222925 334926336 576731012 453446387 564977367 204305496 935922606 959866051 977479460 867609898 971498886 251260960 398172986 819678236 845275195 322409386 487526230 859399472 984603473 275704483 319446373 153181214 703697437 693542487 723347274 163114465 207523540 298372780 667266924 978189632 994520673 63018424 696484466 209419412 559045974 927060515 977625639 259106854 909498834 796878384 874019195 871869825 931952772 524259545 577796284 171368479 229209941 260544770 285309146 780901317 921396788 226684297 415681112 866657473 994016349 33323613 495482238 978391503 989269214 384531655 738799881 293549 937784845 340412298 640535649 693625451 814347771 566306742 869860043 756264357 920738860 579576548 743549533 757540390 923332799 457302267 495350230 960309273 975261524 661831540 957498951 500428060 822451873 544175267 701349700 239960220 598515167 157782917 674500247 745627645 910060534 894074076 967584633 911954454 983754157 933165330 980330585 458850492 743916051 866499069 904999147 979867106 982234976 62126745 314129597 16430024 246129436 551563564 844760327 834409228 903190490 710442765 890754151 7625741 501651380 599289543 782101029 288318748 418781502 351066760 946598198 255726429 406440200 790029040 964731237 413596150 953613291 788859689 946417653 315553006 672987391 547908393 706350881 539427228 653453557 955555651 965603943 284084015 990439543 949129561 983301816 260765952 377185188 2086358 166153001 568700961 890923319 296994152 756896853 705272096 938779508 578531109 803042137 181639740 558036863 966514240 969882215 142345643 706837843 378892008 748922891 513981170 528584861 694837463 991617749 655765671 857503975 974554422 992626686 721986771 852157596 635483497 723068877 583667415 729657500 272854918 820995842 837577362 915565998 464093322 612308760 436529273 483848873 239988946 655636129 254069205 704107299 102491674 461440651 561532753 561568898 386364710 720361767 311286751 391735111 860522777 894815988 76345251 447227807 539951316 686572851 694581709 821015276 820127049 851487333 845036169 985798773 846417090 997229990 914363569 986485191 383741486 862489952 653123613 936878580 245768077 449157887 998806001 998861460 364699013 611573377 866638582 892100360 283039091 956564089 751856805 885876591 171596212 892872847 761768918 785809734 911450085 923443836 968968052 989204809 136755937 518481117 121783941 563421139 440092025 530497298 729949331 949228669 782731005 784261165 199204919 301150676 381938102 408979316 697905284 900524997 132233923 578681352 172678923 582515241 804652831 966059677 171710701 488685978 489809778 786740967 288519250 585917412 433203804 916619022 902835522 940829118 8148584 17358802 47967140 116114103 139987412 914500528 987595332 995282117 452911433 896131824 537025790 949365838 368848734 966805479 348904966 445224440 617275816 683981510 386720044 683842029 366314664 373547516 760699470 847436387 126471368 472044231 382526816 757239673 622262095 661130548 485254139 955276836 940652652 999361010 897916346 923976740 242128644 391069025 537281285 872956763 118574689 718191277 878168267 922446305 981408843 996242281 413172920 582146887 410269564 828045956 320250117 734637695 645299480 811887992 511363116 575636698 399423062 620414515 222896622 248044259 565622669 638864890 200939899 718188481 242663834 387165769 91975150 924450004 594596785 771903529 779422739 901649316 926427382 949247826 883378937 978466419 469496503 609231519 238147238 285851678 129399757 816561571 302068407 346648028 576026438 957317277 9508692 216544414 475720205 522381310 191984223 448429772 368163127 825149461 502160558 963093205 999423889 999466619 385557811 836578171 630373335 842574320 70695378 100905462 63942037 976298373 493449218 824742239 172732850 470437192 62283673 198185807 881579488 881894163 545945799 842138783 429294911 725851762 873042127 903541196 515513295 673622283 961076745 964016569 346464074 955175410 27346311 819537448 762312362 888587462 714455739 748437794 848102645 942690318 199467920 257552611 300839987 981284525 607783466 702646014 611325656 844243540 598143397 635884366 808843652 997121411 429486492 661809541 723449583 974584887 812847243 981690364 166285709 934350079 131047324 850080570 941612728 964776630 671971092 792226644 764635015 948806964 232101195 330893651 937815901 973433990 669033336 989720910 439607327 794582246 958873772 964773931 464233556 761474074 336033574 385109182 540433704 738182797 420899902 430970931 433558006 457080386 404106372 554776334 718657281 842369077 854914559 872096955 549748624 960593652 217180557 913909696 519362744 722786077 434500800 777861046 897497267 916385546 880857157 965748612 133408843 721573322 803193785 942988311 973165224 984232235 939409907 965964460 313202816 508099007 130641362 732375673 649710541 691974015 190438532 815964975 805424085 979186754 953473258 974600722 47669578 888826606 204972548 576484699 167525326 881967844 189413660 953747927 286372910 948103141 150826875 926673694 930077093 940872230 336606653 709456008 465584123 962107236 620019366 857295301 183169014 643899315 703255326 868971913 836603606 985045679 833188934 997729431 707455882 818501164 952374432 961637689 224234120 347323091 361724007 846033456 833310023 861135704 680794064 978907950 415129979 928716770 38119838 253542686 340137600 366651404 806248117 942425262 935692989 993187545 419358830 682397958 743516761 836764212 471801354 595740106 771464915 940415020 92418582 451780782 724080960 997688990 653692753 703383886 709063627 804645180 349755972 457953838 520871338 978906929 539823133 651330085 256187659 898779797 77792035 288914200 594843337 919092867 368680461 579433912 967027360 985216203 445368972 881025763 450853710 987009793 460645955 876319176 252095409 451939898 825105665 859845441 378000004 534951369 384883997 899180675 846508085 968340761 707522526 916961207 243503503 860377900 952209613 967607782 538101322 666543386 946146528 958737089 551580550 861450272 155138341 561809949 435471261 593712624 233981906 844077388 384500118 875897327 764520385 918993909 792247726 905888170 13516173 392775729 250994360 662963176 910290528 936974628 552821035 689812748 121879892 145809773 747003471 803167511 444473133 965202765 298982796 774776454 517596540 567548501 574958302 810444815 446862272 531095760 453329157 635209099 863378591 885733765 55780829 757184404 783348505 919248946 928938 318332197 642362216 745555162 611552945 957576851 201779427 627701979 117225400 364970674 641031002 852237953 453109817 776303447 129385498 433889905 641270869 843522810 807495897 848670545 569968154 875309175 761503117 961552151 301623103 472091311 404198072 767784317 730808000 762939868 663832671 781050617 981064620 981384334 9383335 35997848 219936903 685123523 241022650 376399894 534266544 620257800 652378637 971985042 754839588 973572860 47435308 838008312 50499865 135192578 339411587 773700473 819329860 982587102 115709252 853173038 554300091 837178509 302009985 491067155 249143237 975636043 956698293 981039171 131093108 804712956 78185641 188252581 434926809 547290097 26355363 344807107 16876918 563747988 156851988 365293552 908993930 967645031 720398568 917135295 145207722 232436939 542122742 905113843 954337549 989722684 209209600 867316347 970271025 980351820 907539787 938105075 966220943 987404829 272049170 814046113 862819927 980161501 105330863 847620834 560060980 846910083 924038916 988762386 110723508 486438738 62556688 790841225 728751975 791623221 761523701 907581465 847253865 958087192 531391467 613178872 625271684 665962318 272788995 717560760 519977849 930264800 479516502 748871747 876507649 878701604 535334514 713006795 3344342 519305588 552653836 606451070 669343045 709445821 525013732 685245736 862192258 870927716 45879967 253649593 796430801 905209530 960204737 978568054 495767119 536621425 721082425 885986087 50630424 471858650 423043370 733308990 29332058 375660905 618159512 762310990 939698292 969746288 561214098 625355927 802056913 991988884 985117860 994970339 341773477 802687745 261215330 464225019 233874447 712706464 516167133 572825711 417735898 879320028 960027516 982406780 740111272 995133922 62043378 504158229 368366720 542237856 880107502 913639397 840908131 911497440 611295971 888974378 712208055 750741441 157745642 232709637 426683356 970498598 748630112 798499072 292386667 979545742 814759914 919722492 531662998 589841180 41704509 326618551 592840215 871440088 54624512 759983031 993905096 996505595 526889498 908128606 775438422 959176984 729828636 781716603 17614872 734869962 151563974 312883030 584840513 788838950 660315670 767898548 321135045 337147521 950374702 973841002 889099717 941392708 195140535 224274621 741987012 902837076 529180024 879612784 452192101 690452714 521406999 877620139 631185261 763488912 67425167 449330970 468125444 750719035 93729413 330974896 708200279 942062056 324820018 532404963 321454106 737724229 186993475 781283303 282319372 302856156 924850465 984500793 206427574 343027659 372712183 963132571 539859426 816324266 598051280 714980580 831040680 923881457 390734006 980260698 430185050 991662609 581333969 909960296 160463078 562495516 684417943 707514378 583950357 720861445 67415309 718190245 408873863 843306291 729255295 788727409 77192402 832019072 58481195 301524852 999907134 999941066 989417825 998702452 556632201 717152620 601706601 962641589 822497632 978799937 68818323 978848827 63620439 691990347 665035835 924416132 882411204 895456811 729632392 975740597 532187957 871073314 808903587 983785589 795641978 914858901 164081532 560089435 475087125 568707757 834015634 991128386 283679761 947609762 959298166 973362491 780544207 993693089 720336906 843611132 955969906 984897147 533208344 777774052 621807583 622577026 693518221 722199742 446375320 935818428 321583563 962882292 786444419 884697811 467358713 709137453 524987951 821957833 41525181 243393394 970287312 981131992 497799990 812744093 377767786 609834711 347773506 757451210 701689617 801464462 569492317 708724801 617291214 851288116 682696342 725299964 696065383 764543684 177705559 419059911 223326072 367289482 541809343 741735724 68959028 103300684 57995374 602410655 137667221 692856735 374471669 948070647 174926200 744356882 273145454 296847970 222499847 610250333 288431789 301836404 844142987 909154422 154056084 620361535 406236371 535726074 326071413 351677131 760402288 787232353 254364676 944336768 954952453 959355736 940832096 999733534 512919403 862315962 812697180 833966934 578534654 689081468 874288639 985681723 52035394 852908132 639259835 861425800 297770719 850448144 719216504 949790678 409433316 455200707 252901527 796291452 861345235 917655858 192879735 501654899 800586297 994697755 772690078 819267718 818867854 969198709 911957646 972999281 262674974 928778783 108732539 112766799 919703179 947413749 643375081 980476004 400756753 531550969 522626191 770610549 15829512 129769158 264100865 851402253 54795164 924846537 255923319 851923108 642166623 900078504 506972026 825145961 109827340 862113790 460494848 491335255 710176430 967015380 808094793 898638715 713217365 889660022 755563143 983542557 30012260 777762982 771133211 783926483 482020159 830464835 940709539 992407674 156515319 647017473 336368077 419024332 18147757 590646665 370251756 564453076 548986421 896937322 499524431 582613341 566590831 720008494 254935683 429183566 974609282 980063082 419475626 760763008 720026806 867031508 675024939 709134884 745083848 857940041 308694781 840010758 194752251 438871542 266259622 512992739 95166978 386430400 25211159 490596916 380928121 813348392 86252950 595256478 432145975 587733678 906200317 989041404 112246653 203241624 877372836 889149272 778133192 839111442 311110494 562779126 511411907 846059586 427589270 966475556 689132418 821816207 815542278 916164006 655469063 987148097 128030232 896752452 106939282 290111194 577584777 976587350 658821978 746060172 941503908 950210838 313859916 582726658 814441247 954288931 178918963 241952265 468618350 975954538 282223705 612387789 960934851 973803532 148281485 499361200 160246352 295245147 434184892 767792763 358793224 588620578 842777316 873435912 436339364 748380308 365516555 376723999 128473418 746898083 482781441 633664433 26156106 775219259 964509761 996512186 114188149 474813412 502995652 723402728 804132399 875924785 326544602 540493012 614715743 650533249 185578957 456120158 220284185 667744305 923450427 947028163 212948216 916970321 677059012 806911170 417371736 603905857 236292938 817234474 446570525 551833322 337446242 499091414 650340405 903417617 286690991 863792640 793342992 825102635 697341374 854120148 162390325 929485830 676465348 837020439 141426209 618795379 299215248 381396391 786134655 894417346 412147777 815130454 402036045 613606526 951129962 966377775 34505536 145292288 774841995 878823268 697013913 802043271 903657406 954506456 599868398 716259947 23074766 198929809 664794936 920726303 808243411 886014957 392837081 842768337 843350882 958590900 642328615 846640393 738420815 870476805 611328268 804777805 60468638 369198355 644554893 846936251 371798772 653685729 193224692 862619108 585258592 751318179 316302167 782071779 942111414 947557955 15332621 469211210 866014904 911682173 680745448 980404434 60671180 75071073 187727089 512706032 970606731 983716555 248489431 625881604 196153173 723806615 902951742 986663329 401947683 959586378 463705137 487938384 477553873 928965467 900616290 973845031 154279789 959507548 574139122 762044093 454464774 776453127 935665633 975251076 464801426 626718670 497585250 518238029 5511363 577458508 547032001 685222253 753937830 922582215 23197751 476961721 419984956 524601526 864050581 926253470 479098125 927446365 841780445 983946894 689583324 811296577 632155513 659056799 199318491 810687134 717597897 859073320 254067605 498935874 346799384 774416409 791238603 839222637 744407327 767262497 110489445 786056292 393598413 772046100 908951615 953280104 919755786 961981421 821207186 943511347 592685323 760746300 804169486 960680750 127820620 466514348 736252404 963982534 814549396 848388197 500216923 987635313 764422721 853159859 493658322 984579085 965328598 970007871 621670704 907171025 610903844 870812960 944132076 973169043 951287250 982926214 249850577 412178039 548704424 901935422 139380474 949837600 55992701 525637465 538139334 546468050 610905270 806865277 47618420 488440964 282651200 610791221 815727680 845104279 579029281 844640711 139767536 350760045 891886109 993554992 621586828 785501144 498445737 908901102 48511788 592584614 239612858 815412801 212949487 865869164 983663469 983955431 989861087 992393062 881288120 939732710 1112899 426473269 904920971 997738792 712066713 734818474 627652998 850272126 985829380 990995587 134934182 624421573 560732879 694390248 534807326 870971160 244472308 755510896 15591887 612959594 535120206 794512546 241424631 479056593 553479552 562829510 74058737 764106043 351501217 747604576 568868183 638374575 750240507 848517843 573857269 654448460 134583462 403914216 946972183 960176439 238599165 569723195 521916898 653732640 682839082 931383794 190116630 420544159 706190776 790438087 757671967 761247036 271100817 412505280 961499802 969112816 84151287 330522588 291347549 942000108 205663152 410593946 36530967 353288250 779102183 850334486 406296402 436896248 318488273 661674761 597383536 715801679 315997041 553489458 49040562 260685469 535280618 752438621 504870728 817491591 428077815 840855568 859224719 952951844 700870866 764770009 823344615 936802265 471426658 722633572 200624135 331688031 388983829 551746111 214611299 376143254 382545311 559955435 446465915 618281793 942438407 943819972 758646643 814047375 420139346 763198001 32338675 728469649 810960075 997244376 405135246 549100080 693267019 891185500 929116351 977941912 546545020 745894069 682973587 738788606 632020777 670869138 494636704 817450042 494311471 986316143 482237024 894699101 609899518 826091311 577746163 895239734 42661260 243054411 36798274 467497982 19573567 67286147 143035210 759897722 720169192 775788891 384609581 583264898 519647441 748383476 786280076 924009158 154097537 827664409 443608874 471398728 485645507 532638031 496637698 843518894 983583505 998079882 47159271 443134844 437155333 928808632 204483541 585864106 361105461 770947236 421685131 438815394 252423178 523390584 502024969 621380870 198831003 997366886 419151633 443131164 960059231 994435763 916573141 940775771 16576057 257216578 418126658 840035299 589713279 920519114 152329110 729283581 497795885 610296746 263264624 611646441 851004899 924097512 949347518 981105731 101585402 377825245 16120489 708060351 582890341 670790328 801447497 861296566 678460162 919680233 59525638 778230564 465664070 930142556 221355140 920093700 741189890 756228988 997289568 999587407 727292811 782503405 344751557 597926171 238141494 691440277 698668610 752066231 740795436 810967934 590878914 688682083 435834919 477226792 147102284 531323744 876705118 890519618 307986034 959994463 665065810 772033152 444402237 927181120 771999566 972339303 267992016 904741872 215516911 275046119 504075854 565938931 788909623 790691187 409783944 488577660 94897331 774979997 945129425 993642559 315012002 985407929 415538444 518636386 505574084 971462728 184655071 852296080 242761646 754281378 788811521 995105826 43481574 178578991 395240615 909359818 679790243 771426542 98677872 600701107 990839482 997526998 900385977 967070544 200298870 457111447 709597122 785358344 107575890 710082350 777723012 827830711 729240612 843129689 712741544 731137442 752710959 827660666 744254362 969697156 865820504 973211222 806572031 991235109 462765588 655460711 798044305 971028569 427085806 699205618 504347461 824916610 538867268 827654958 936472451 950490144 86875648 842480669 326679912 972253388 926841621 975789446 885221564 912341881 269481386 575971563 824211525 921263705 152519064 985130283 916114101 936640624 182074401 768632248 68911420 310065658 910151202 915535512 371735621 777637052 731162149 731438480 206934540 711830007 659806705 793036047 435715629 710845527 41026967 761169870 178394103 579197803 730412982 865642585 198061146 255819960 241197481 926727126 436659975 856172460 428146671 592923645 959211274 962600384 263766987 800469542 446983663 723156342 780802363 853633759 32834653 74034808 790493422 856359477 17587330 301400831 542305791 654473213 353054768 880831929 38768601 517977812 437733370 650335697 612836235 852768832 238801324 876499575 795666240 968847198 513942565 835946623 116287681 699927647 621089648 934504927 766213210 806161829 63660256 890153476 931410635 945853075 943328360 994848835 812551910 907545758 909743764 921665645 867871517 988370551 293090259 869234741 462611190 797125507 346505534 646466283 611622387 889552960 105447403 974741788 977402972 982266449 18113820 631494220 502704363 553341346 912336742 923822555 466991819 600569184 991635021 993722448 957958437 976593204 757546657 951357104 726372076 852507508 435775601 816604540 593953998 840765004 574177965 905877173 253654853 774061660 150193079 239921657 935222811 949755178 428445466 636922111 903679756 928072176 432565522 572784479 61648406 783570889 220863511 851023629 525670197 558888005 662367457 939669761 404626570 566361306 102450965 893752179 590038040 899503706 468660369 493377262 472742037 553254936 991556525 992695013 639048586 868719683 357196383 549739691 477185943 783411090 381233252 983264653 457622786 731330603 90704827 442414495 168449358 514500490 920616220 985818715 504586780 622310372 372154042 696125478 176305985 191931359 24793666 674334924 937359339 990380580 997394469 997893328 644620664 802940637 983616817 999538071 156732193 885355048 393518107 420739607 14914530 247329034 716682393 739972381 660948090 787587325 868573462 872308156 569385261 901822070 419572560 668254007 286383147 338067664 469133351 536672974 194736001 801746585 318295691 614180536 682801319 951507156 130709328 609248065 121769281 125194068 223800138 612940062 1018170 109216589 429137562 554711674 475241752 600711650 110603828 208320788 284331908 724045330 919525683 986316090 165073069 347438103 125741840 887026487 569861359 931594425 820476804 975240243 474202857 974882276 194101514 823785422 81592935 848957554 762171319 974278112 575292234 700111582 94845632 945949086 572107040 972086519 170568287 424074612 431021782 919282453 157250814 204456834 298877462 903932545 678301543 717156464 109432441 167296106 330322088 450348403 495450378 517464591 395161991 505795403 861346747 877730499 364448232 476637260 968463257 968951425 536340932 536698371 777311327 952387928 864015766 911770064 459636333 904712473 374088707 827964811 523388678 617445909 44648396 271943296 83166767 98025023 191936832 817776608 535789982 829799523 905661842 919570139 702536452 935324425 841797091 862696952 314533871 446014034 793635247 889260165 121532282 602961441 532318758 870474048 845823337 854757561 480763514 752849277 726464333 768065589 712817001 875533290 773670984 950984690 69322171 573636958 713495269 737470895 948052242 988521361 101306214 909189498 358895296 990121931 852714633 900554381 527065771 953203367 580215873 894037281 81258195 751420410 756145673 979846327 23032447 34183124 780334951 785774895 149476086 314599907 283886221 961711220 787785605 984597880 577093981 830793286 410864985 417682979 121826850 200200345 850927626 948349909 76870526 160812441 477456885 804513273 620540878 669979811 140353516 340399776 835503399 840285311 268171395 540280471 963219345 992916077 225345599 470677091 378124993 999653116 580810514 775519923 572983355 921361902 255590138 458869978 184560049 623162313 936743425 969778682 309553540 872474933 806818628 809735488 270966659 458135055 337695933 990356294 355854813 466759203 106826002 815118511 372086693 770200079 184728883 422191617 89729149 316922039 828952138 914317286 105178222 413776784 328636431 369720673 56452697 371576058 779651031 882763851 641500191 983045542 386238934 454087384 489339321 986828293 368068455 720762582 430859766 781113122 601284077 634620437 752660957 915173219 626819256 918799625 973487085 997917620 809901502 985117471 129126793 381999086 533260808 866516049 388737924 769326842 499151286 689119864 608949697 956707570 779341467 844408347 124750484 321056568 343030087 849354546 513896099 601701784 109689609 323197339 516219873 548073007 438695798 667011175 870344994 918483259 972860353 983693601 447070838 991363710 544882780 985725543 639453812 993213837 856958259 979064732 601423764 628129052 396170255 850703751 897835522 923058302 577439260 648777264 389922796 752906227 803590065 947217055 280112466 480493429 629737568 643537795 188774016 251559080 556158264 823036814 308170817 587483501 390795295 668749781 52281592 930543342 856961063 937457329 504995708 659110455 893211815 893480519 769826428 924998200 811126095 907835946 263448413 859430499 210000355 566025916 432707272 732375289 119188169 188744824 44338957 116155863 14106385 543324928 271090256 313897708 807111246 958453346 175118551 188839592 958207288 966942224 14819966 128014877 123422856 383751839 705814208 717581712 825907317 917004871 490923387 610029213 930547558 949364846 814052357 963115427 587271641 805113920 723326297 905794152 834875036 854059152 842755876 923672203 643490354 963492922 234651577 476700781 367525649 625703616 78155927 362315624 322047290 971456207 181756750 598253641 90278604 719089325 861780652 995553480 558115429 746970662 152308303 775682422 163805895 825362059 256618801 732214257 720125496 826892468 49556819 614502680 419687901 628415047 479683935 854944773 632865227 677116010 929132174 931197474 516636356 817086276 259474873 282591990 625279649 690968869 109926776 843845533 728076949 963453095 93718277 523052884 92091781 514218205 520530894 916526772 382597350 384857892 732741095 979957491 387799039 651851507 588659190 670258627 632896625 755994021 963515003 970955520 995898808 997943217 557175275 930430849 696942335 708249559 430262010 818195048 63804515 712584450 209817088 518117200 11190893 678319241 635811745 798580655 317217393 653380699 146992093 620600068 700694048 972218275 73797109 953000785 720536066 818299767 940137927 952921199 237443065 626814925 843718177 923238773 405846694 596566098 464981933 955106350 761843610 896683630 327308757 760756594 21264852 653234514 904937652 997478951 594697371 750563003 648560501 998303909 365068043 828938431 261761426 835877582 376293863 536107433 558393573 744699302 675050000 742854284 21547033 712580569 232583564 520353746 628935262 864902971 994828362 996203969 315879284 729837033 803372835 932282957 539045767 568867595 234291035 725299109 971396137 976851759 43140610 787790897 683560254 959373416 379390048 965911936 152600271 478883399 169884776 171537695 986520139 998862196 55776043 911155505 570896525 916876902 697993511 810086117 339045408 568864124 119828310 350222701 847083632 959575013 323903454 650528545 739175307 969470164 547039032 999564515 54023671 803200136 424789041 606767772 583573013 919959103 458722673 491498307 310031108 775094528 544116005 920141805 893554395 907354644 799498589 875853676 896158320 956082000 721808827 956126405 822318478 893449608 140352606 786937062 889124812 960294251 962005123 984559290 129316946 268251849 767212254 787006986 120755269 289014707 47023842 941648958 456912303 766349311 131570168 375428111 817978499 981392089 388779771 775097599 348107831 385979800 731912725 905501096 73929875 886856531 513303437 574057874 770180362 949093847 750649860 879863305 769148048 950383047 608196198 944143894 697059982 898140731 687595104 991265496 966572298 998548703 232558314 332260000 300349730 854495523 393782326 879331004 825664655 893649561 469986081 610969548 863967522 872124476 367328190 893265762 875449683 924498897 575345640 822402703 451769575 520472471 129060697 141588822 656606508 683135023 117815136 831428770 464872439 842400666 839137779 943551075 798063678 933348153 164621323 885901650 186261305 583411592 923615275 952667856 552979966 735078329 988334520 991283980 207643246 966734090 52284835 327767438 499246368 699454983 955964061 979509202 794319894 917158774 734875274 876141144 747867087 846454528 970281455 990701462 464087748 563388998 358629353 449701464 911637533 965298422 601453224 696280406 771394564 880697469 282745666 323715368 420849710 748459454 97652078 247289618 285443972 776130427 299413256 963123243 977297707 978591168 321295168 323486900 187305200 844212478 569548719 966981778 990553707 995132022 52743787 63955573 324273327 675416966 275039572 767405404 516844381 714096228 28947907 807402700 950546703 977590152 563942923 782960080 465209359 700377016 79009470 532478208 174912605 377913178 209274521 854478198 19776092 30541258 419994017 721340809 313569202 573462549 684251716 707414152 194612936 893613497 334486900 563661274 547629398 570090598 308736015 960307054 849212033 885566738 598275954 673595701 941091166 967109159 137070593 468609983 180344744 201025308 65461251 875510856 808939767 971311253 473692762 896211039 871266714 957562688 946630191 987094791 618907329 698135269 421675308 865634017 189915731 951392037 484359138 988663193 126993171 301293139 917085553 961546800 569162920 867697853 387419235 733801812 569437801 661394396 940784443 978502010 231309864 564671133 44343976 990540993 150567530 978218170 520485244 547539075 429261660 863493346 230136622 668991834 359806991 558172297 189025610 958693990 835038551 940325547 615803060 752521148 336198926 962045937 282952511 823867302 945111895 961886062 77535938 715834115 737088657 961960960 352498230 840407983 26841008 821539151 816351968 918089647 421324473 667669340 250597776 494953677 240540631 674405041 129091691 282849808 385751029 962714909 387509221 641019311 870295002 949808822 618169488 739153817 22885781 458787543 554607232 650998103 53678816 921743777 83774104 969191115 257303523 540617963 272026574 833193980 622119561 966935210 801396816 984788954 424721477 494864018 108222255 555666347 980429445 995990915 446351931 775781013 39752263 727694994 709583439 859575932 941160674 966767532 298676644 687726601 610746123 738765498 947774547 972814174 890116066 954146097 81406891 545659397 394569265 934715367 85769015 887686748 239081105 738462095 238619650 785873679 561889283 776055079 79973868 233173277 800569406 941315380 999312362 999521416 226875170 481933488 837726880 937407182 163571052 683444957 713074529 844615201 120632849 721694486 807930008 947951252 385643999 422958857 117771834 801129907 347309301 995999281 209146688 459898285 630413773 944520703 965107163 975499609 645735009 942058465 167038067 362502697 313509413 763338592 428861165 613524247 348687964 516065921 865176534 934147812 703644525 762937021 931233405 943441615 337447876 837542746 797898153 929838678 782932849 818459669 110394621 920181608 661377019 883342155 921677022 927015669 440221632 816213370 258990010 733665272 466202743 991376457 546020718 876235672 582285992 645515554 691595834 980770365 965644778 993228367 84978759 249657864 252732476 252920354 560889387 647408686 273209575 623166973 310856147 442385838 604574048 934713558 1826167 866441212 573608541 946373281 289370109 310124262 616614029 903667709 437763920 978092342 273415431 580172263 659027335 903062812 625762987 965665810 398149827 892050659 321189508 627655169 668683903 970082086 438380802 845529371 13951937 858191830 446727742 874367678 527712836 693038981 990763231 992551985 901368294 969542587 579967303 772073065 970779801 984988693 846500989 852738998 845104465 936508222 847741086 883035878 978932232 990392906 153324460 903473704 42965294 406076885 956646016 969870110 488194280 733978135 158472630 518261735 244781764 294950261 113622218 945699280 110549531 427392708 803342686 936432725 478859043 994093215 944998180 973689894 247386133 666621903 298338186 829844087 169789210 458615114 424335341 712767339 745861335 966198808 381841500 429717029 386991434 618359368 572256586 723247365 945468643 989246902 591268494 911476149 62681334 243994500 796264002 826593660 984534563 989276428 336507347 716495264 131059226 481203204 386741473 816310344 273866633 670755989 441536407 723144315 351584887 435779992 761922267 859567673 323921678 830606613 574486563 587665431 617326397 747929614 965814973 968318977 993412705 997519652 401794357 966396696 421626115 965075866 472974801 681472214 144300675 613342179 398425619 949010918 950515524 952506893 595559998 889288576 832605905 903926885 848422819 942236505 322077265 462441421 901700085 959018521 361345263 781199481 849557261 955751170 675375552 833901831 867561008 952284162 849511247 920043686 4559201 822563570 805657578 883302790 902959950 981234111 285580666 921709174 388643223 633626418 208202236 544208567 400643048 889870741 331394385 894093188 897120803 902949465 157934368 389610146 560992684 604389915 389331184 412494735 110018729 887283191 374758376 520155692 965801633 973373827 887304769 949728753 487202228 898617819 544328738 881598647 442420823 878889934 118692586 511916123 625731334 630769981 525015536 547638737 867295922 967778776 723431502 794330430 556555264 964177102 767718287 995542527 994837762 997589274 818153248 819848011 480126972 587605988 771726417 991284258 586238295 812466955 344788110 674634326 522593517 835343935 660369825 864822450 690083483 818717844 719008631 800624890 643594752 808041590 43139044 451552525 257997335 534855612 816659380 972839517 59738178 342500634 99879827 892790861 591006034 743785097 72005294 620875911 804749783 982192101 847224741 973412900 276443709 700839413 51856790 972645845 429021549 755758268 333168367 402981853 925379115 969289788 667424193 770808647 653526049 837969990 592359145 957130472 425092273 914396491 923660633 972742902 711352480 727847375 386049701 964526651 674397368 768607803 786864312 940689921 133664743 421955624 846383270 994292456 972275719 996894980 716033766 717685255 182569124 795114154 219526456 950908646 406571664 866041981 910245065 984799443 803235999 926035995 554103304 652775402 383316680 702266418 586475144 842505287 552558582 941747874 109923132 750475822 95321378 250155786 311169249 372011952 11305306 106662436 908896279 923879718 882959383 895673005 129574849 212184368 602215112 717458386 183369844 479691107 35057554 520328238 335938357 791382813 2337712 350583179 147117756 799121011 442794093 738993208 877133486 962110286 854452379 974301528 636615228 821011116 494257193 900858957 239202939 891271310 234882159 938164218 595039166 619074965 988900424 993309431 812833771 971041046 761045334 931886220 680771389 737186143 870501481 961301455 283405998 869873818 548447941 628071455 752536247 956803436 18728253 729841250 809229088 907529645 634521727 755120592 291441411 655319372 437628237 574290910 184680774 642188412 387120627 713701179 547130844 843414031 441949599 480343262 527011908 831913666 996881829 997414163 679730397 936727412 424661781 857636358 250558611 650837457 670322261 847520048 599023787 960287518 461563335 753942462 912606169 975812377 68174193 689021944 979457706 980482483 51253473 585290006 451668913 458234523 190711370 515345408 482788734 841730870 289812394 291562745 94627778 143933948 269581194 419579594 998852928 999045474 539534306 683905601 564987432 679270432 296128850 966218312 827764490 968773162 433790903 976665035 968218172 999942315 272183587 616300630 765398138 878594509 112028733 842839712 777764496 782256474 554516998 651648939 404459429 622249410 365208176 455147041 376847930 622632858 863666165 966016032 854581351 988034071 503603855 559667105 634233648 841231666 195346823 880893252 312982712 863065351 579756731 611262779 595216526 659677528 278906965 580773149 900247680 913213642 802219566 851068065 935944969 982860693 369064087 806342568 205487072 297627975 770108463 784840475 158242100 505748149 547374198 752575319 92564937 209558701 254928755 443054294 792147060 998867695 9532876 337394912 453207976 975687727 623515392 762059474 849045631 965465065 130420417 500492065 967769018 996532602 759135739 985817475 457319864 691425784 447641970 626910707 244717124 356932401 302547994 379998430 883387599 905200141 362065839 518233194 652377720 698879739 284511076 898255388 228980216 632503840 120088173 461825630 229824797 449436198 573539410 655162950 399363001 733791749 419221892 431483826 39050950 574422531 213594330 617080775 734032151 817637253 88632885 718614737 253552660 308483854 260452366 299388181 755857855 766135813 917101698 970852313 326458392 976193446 622680770 761850656 436512701 856919373 615983779 827944494 120625799 989835749 113969112 757472051 852293840 929452653 408803356 973648435 202821141 446308627 370300882 387147878 282600185 661734778 746219022 885625044 586965916 669766327 667308845 720333509 134619557 369233554 358215862 365434435 926864282 971097976 314730018 337838305 173726882 981669347 931279187 946593377 705928473 820752413 618750125 806507412 986001898 993862370 801571947 863869178 92604375 149181569 874845250 913600795 952070308 972191329 288298620 855931450 441875067 971242509 637399964 859814249 487794278 942941138 633128438 945744460 808976248 810459894 534187134 805144495 626593811 678622490 354363020 413754304 51545136 671193879 759102269 910945015 207368720 735119449 836929892 852647857 159283429 225344084 648449594 995002835 568188339 957135977 593677897 862238942 550656527 698443891 152395266 796906386 489966959 840115269 372910749 883892116 747499412 994014755 141904514 955329906 204167460 852328761 139395126 415225781 685144761 690971319 282239494 783020843 933286558 995308500 241239348 523064332 704864951 763592531 908955612 936910429 782833052 954836668 589057145 901176466 122137153 567626434 669738086 878380754 186809493 873932038 220990351 427270412 17453581 347194363 803379917 856838581 342687644 854828379 706816470 815615616 429120279 643174809 992535123 996317550 693191459 963176411 940648090 946620007 218320700 758023127 871985259 957263120 28728272 313647258 726744192 760960289 673835624 832886806 807689775 830746561 447457339 584608277 987892558 995367079 85657389 654700324 169287100 473592219 533195571 538391514 532824204 853204202 782860403 841257214 302623236 686462018 645730904 761730154 281969375 774724469 412138693 960029408 301334760 540895146 447147781 726602211 754412945 853044717 450292194 541309324 611265412 907592457 553403786 808514090 868940982 876445530 196323645 486181764 41404349 491147792 248148601 537357030 460582087 959436339 620346059 638791170 144446657 886859758 274902936 688748632 382102237 654847345 981700039 986368890 344385624 931408857 946105150 963685232 772083789 918246385 97409880 539320018 735299556 888565271 244669859 763314314 838258920 973388363 382815041 665256052 503647538 682430302 273546651 491974025 125157122 766321658 463219693 596300241 235786616 399928659 392337711 760725543 507305556 657201322 738017259 867246273 670154622 732930232 170891572 700299282 694894134 831400589 643243537 840306493 449648301 716283222 621144341 707781116 695508897 740387429 731939371 896751170 251986268 853448115 685815375 802786427 474841262 708236228 854985431 855191623 423213358 588050667 244934108 814258675 603591721 833891582 236497693 853422257 838656010 981862218 150709621 561046743 413204470 926467521 304547338 447262589 673839300 870757400 49468682 429720196 809541049 818608449 509646207 523078651 1697811 333531999 133377024 902354143 723405727 983781789 123805631 364785878 364897522 758597292 915393552 919114717 887911921 946549850 178460742 472699121 298535611 860198818 638737923 978696884 871617402 942276381 44369366 415402076 73605566 159908616 216550422 535050899 979144316 997104216 661333254 970586500 566122678 651167989 126043813 807600515 605790698 927003771 743665409 998578195 544473599 733657889 760561271 790230432 881712518 951433956 585833743 684729101 67481750 374137745 203317019 391129309 126223728 708730971 140033704 180067810 797896643 943846983 347028139 646381742 423313310 648420075 879166869 991054810 972571331 982116654 491891905 815490638 397631499 911116405 299276325 971822511 144132600 350888426 910458051 910789313 921322776 952757811 582720735 649230467 372287548 926093282 573197977 947900704 130309712 455931589 147807802 806844443 454009924 954732417 877901474 956486039 733599959 848321965 139958531 609140101 144344119 181072281 194640045 788578627 309005503 915656165 787682945 808952136 49244116 838376556 705536568 766241962 507582374 524201689 121328071 308698067 372448648 656019704 923887918 983690151 70350411 967545511 646387107 695617310 510329246 821392652 455195829 835939660 767592397 983806072 320610257 353658637 981829826 989144574 834875974 904091645 799074706 994769792 525993905 648783475 118506336 335992178 232631254 984092255 525471773 541076736 50332515 975194113 832802495 862832635 109393494 640692454 10771590 434194808 258101041 392302347 199020672 567972320 822770801 917242415 877033964 881975181 858252959 894415944 666253928 910144507 460651 111583135 233911090 755453389 623299592 989345353 845089066 984649333 20975700 113213996 608077958 825769714 51602921 814668715 67914824 743045117 4292884 621277263 46541805 959530102 604152225 843536009 161353113 775131931 970492490 998379071 120093122 533845640 571526152 743002377 716114892 899341849 143259156 510262544 9209007 240946887 616695834 976646741 276786851 523130070 793731228 965415777 300918037 973652407 968821821 987906626 430567796 813446133 623322439 852486312 157058119 205064986 929962867 969534762 633979803 788377017 386721334 656274125 633008788 795171422 894328517 968585029 619975587 970703383 361498080 775652011 719442656 891834494 225818999 277117610 691267862 714013149 768476726 928176344 505481063 697391464 668779510 925826584 758737917 874612843 52413775 690071871 324341036 828244122 516690708 690597363 226037735 466959299 172374381 635210935 912552584 987715794 437395419 444774824 750295553 790141655 968903611 988147489 282033252 718095617 8795355 824926807 1103769 362716600 100008953 100021840 945678061 960236645 152037551 653559905 774328425 914888502 364209610 675783415 561801998 948245726 9659524 129261918 78750623 378438547 644574017 766581994 677959269 805509176 173818965 215232931 187354638 774363219 792373485 954155371 582769574 627601945 934183662 935503665 937841216 998708966 34219078 853111832 649985806 717247506 994276463 996933064 223319441 519235948 503406922 532570527 35212742 979096407 864726135 868373965 975433513 995453489 527458688 596133141 26170785 903706150 63472905 724822398 594316856 981204059 102471186 931213779 849957669 850330227 963812687 984953799 946779035 947751186 315580011 818119537 914811220 955480893 577709987 975324865 486798391 797679987 23711257 538260133 717019617 816310362 780307554 833695473 814322474 858438693 907227717 928268110 39635630 101584914 634361631 739342852 8170838 208699357 846237523 856273003 853449822 927018502 186491918 753543734 998373095 998921605 932673069 953019756 882961823 957276890 316899719 499297386 132249068 485168319 832421427 841624146 466075114 779634186 112493177 585415171 209729761 832130777 845328742 958718368 642279824 759481618 703714155 778181720 236045384 940221852 92556618 295989740 692019416 949319529 536660339 984098550 231135983 889101752 64862362 428295040 345918343 987928137 780119916 855894694 568300084 883076909 694788000 757748934 405003138 927986846 636473357 928726900 253964334 703412747 75342908 819684046 480442981 670129343 614902746 965355842 273787687 981495841 877558774 917665852 251254745 282864545 248449215 483201430 450272736 927854171 696694617 865537887 71879374 820809088 320062018 465535146 336182006 843353936 300210999 785829117 786009195 902594145 888601883 966459587 214462798 578926836 96064628 572841515 608377522 690650857 315641154 423378774 73091685 577139716 996598935 997173688 323761542 823472138 121978376 378708159 187790729 804035294 625613464 840712143 315007569 449467352 934233497 973989326 774300020 988070935 679725060 704579247 233427142 412391777 682018147 747424612 46889664 597343166 650560790 968419764 531165575 542655446 979242085 985561821 539970396 851670275 417220425 966913304 586983552 818646620 3827951 207242493 763601942 787832021 641338326 649160352 551592894 971967612 95212383 599103657 167383841 445112569 366954684 717331363 149424464 557198007 627594758 730045648 246190668 944756101 787621151 904927161 654599316 768677484 761573293 988765494 526757459 639353022 605853458 630291844 110750559 325127462 892392218 907877402 523320438 858596727 632716629 962201098 943028367 946214956 961533511 987424032 253011440 552492905 945420821 960371801 247388568 421364682 523465340 629341947 467336040 475231929 681899978 907526603 834704760 903550160 228498495 706844633 223429602 789097830 362591357 583376485 673258986 887518086 772714368 928329280 822665432 984830353 212943821 408151719 86681652 220126073 200106314 315962645 870831798 937617496 844955810 990716935 73278145 506869011 901501326 919061604 180265471 954824674 181953328 785164145 383772164 955499110 276638945 776664342 32662697 482595343 155541609 717794281 711475810 865924784 245784526 471726264 15072019 233113840 489980794 610987410 824089781 959543493 831241787 887098977 599896451 971591031 629891089 664843378 665765888 838222136 752578150 903478116 186888007 295308870 947089864 969301970 216242927 861548329 627964162 969095752 257842744 448795712 316834700 435421108 126524259 678559150 339714825 521648549 205762468 302151502 940272085 978132864 420405323 920464735 683798723 696582297 732122482 847436498 169784906 754143137 307093443 875129957 191511443 203615649 341729672 962303010 72693775 546565150 473946625 788328936 586014309 788609940 67843399 441298148 837321614 981823572 132422230 235780789 660222470 979683545 864641949 957050764 19333260 760004906 920778686 944974220 128689248 365199480 188965454 594158018 13144984 787010951 387097686 950012963 91055775 838853791 458208754 463737370 741783434 882350323 279427988 341354759 655039315 828417101 819610538 942456293 243895062 353496506 651308951 872582682 735031157 741207297 335688770 692204784 567602609 860322805 39349210 522630785 855298892 981956773 201105034 550484262 561104251 561689915 292758127 870137856 575438848 648079809 392294412 512428389 17939270 842721651 37160773 953382774 919963117 944223398 134336374 159630899 642145118 846047860 976504506 980252126 750613307 864508964 549529835 720785398 671348398 679589451 169705100 241681373 997955395 998699513 866469314 992077323 421389989 790898137 807339380 907762253 637314065 681581274 299814658 642236295 288849400 421431275 588052675 685693122 316564886 837866215 35945697 722995273 228678429 901589646 205891938 608021648 26344744 176400156 559275039 582927613 978105481 996396104 187589247 588104974 867023605 926864626 686948806 953467580 282765430 289868269 572625359 829725169 702734506 791162291 827994021 977358655 411782289 682033564 776220443 971177091 741462538 808061546 674568269 864742265 122287435 610070656 533704841 782227688 456310755 687858758 6911672 861373207 31179602 815939686 601108740 770689779 39163381 617337920 521315317 664292089 559609789 567577340 605867480 989226473 221918948 507951704 421560624 668440594 697047948 832383322 690288038 871190525 586536513 655105995 869860965 972630219 790979148 953672411 227951577 563752525 176527351 261594707 300591678 607391167 389769253 953638769 74203470 783331099 189578398 434719279 752045251 821680306 307844534 597981000 313362118 988252077 114292837 264760224 777201227 806881461 384695463 412815325 437674866 964469369 931359032 947437829 253843852 753458326 322326727 350350333 630049080 930358591 898962225 940700814 802701717 911559153 698436877 946287599 113001577 603566128 59685028 522822959 71158990 418125578 613338623 842060147 381990834 943208170 808309866 887561784 553034580 787580314 393596637 900938957 162401475 276965580 512766090 806326538 234914943 972128317 15946660 304234554 120763552 529156836 100671330 484364865 519133145 960492169 113005314 632923935 770806795 860321436 105945878 559619581 269686271 948627705 410098607 716531222 979111648 990913811 541252168 837355469 374217953 843340917 518269103 862628873 718908811 998819242 429127825 986524080 168227776 252714619 154483541 249325103 298875222 995766546 50442539 369933707 770990655 826145465 359490106 895946580 62214700 903735309 604653499 909300050 460353423 841671858 426764530 538276009 918445960 981844763 590201323 778646035 469645992 564069014 725293240 941853117 335333842 557541245 648337257 857551807 760042191 979565147 987359836 988619792 745534314 832400109 277500635 637507235 872549192 907872112 996711172 999737489 169552497 669805578 919286629 937484236 456051102 499561701 172195047 811552806 715356100 902046456 313121281 423646428 362157810 825800505 687973401 732306979 697825907 751421965 122600965 747701156 181048055 892366109 606575831 779738013 499071626 511841813 574601069 592635532 588055697 850952191 103743956 875809136 844657904 969677026 841587142 881914551 104229190 712981186 984397884 984447076 458059264 551638792 320624131 526058662 944686211 993312122 622362198 722290700 538124918 747577175 625627241 760080506 168989753 802942299 211412232 642073611 159725479 590917067 820919939 988586555 185176076 851175029 438559487 652617737 660766773 984545043 434587586 467414863 621722205 822044050 60618154 564200367 939615540 941850758 290940749 510907140 91806696 494001922 722229660 836013446 260450985 572897041 57686649 868259588 95361037 422971867 911707959 999871443 407909751 546857931 772046481 963172716 776514136 890515192 776421550 781180277 849481778 975560196 742023231 888315752 813815445 933236017 752407629 878076952 83638771 691453509 35845861 418621323 35696941 320961099 70126537 594838249 354153220 524879426 467251680 902420908 255976614 859022791 747502172 846428847 106098505 112754380 322952375 497539986 820849986 935982927 849641256 903788016 278873814 788209369 212243294 248268702 131304298 429075815 411558557 501623724 545538572 969718195 652015269 998497501 988853641 999377747 406270380 847327669 837991740 841927518 595327892 809892492 379250311 503779552 885106326 996783515 146417456 316280874 97141760 961181927 991053641 998134524 199127008 368061595 435523869 764905099 853907194 946930332 583739846 667217388 45638187 555712521 773940517 856676568 95949948 154178887 568533208 794118544 897693981 934202811 925741826 966497725 720359389 860812555 184289205 855985318 871950345 976089432 224772880 828960903 243683443 503973081 379104990 809859662 681261933 926707072 943926552 959342897 693440377 975363522 670637466 714684148 149034106 937318566 332962585 942996208 322151678 697453930 35661588 290866953 480785589 576141386 769895876 814048618 903030088 952340355 444874204 740401533 178583376 321319964 756633215 865739945 229245105 955461398 187547462 765041317 631270787 847284377 503727255 565848326 178368595 306071598 152223085 847251330 540319347 638010714 215894411 896267627 163661015 721886955 645616428 729676838 762450958 986402333 346282227 745701427 890961292 972855986 620076857 651068525 652764984 988487253 53803602 946699507 667554525 953246888 197466524 810470487 412772136 681480431 18754971 889871182 433063446 847821704 837428539 967905413 654717725 999728753 810088408 939396765 870661058 932438376 811762140 827014433 709139688 810962665 781253146 953040792 132119294 952519284 914340495 944178672 456574476 968775832 807006330 975314137 921141794 990908226 458032961 541356778 166547574 953249104 260814897 706970336 448332164 829019474 339595775 526438899 396512100 979153466 379728196 459201315 438166996 910148996 824491167 848143389 72944684 564425773 995341852 999261132 459325987 636077096 497877279 839143490 265278522 568791407 247517764 447448330 906441170 918272006 933287216 975312286 239914078 859143268 48447074 865116431 580090981 790536028 363500843 787583759 788599217 995074902 75279340 141876396 87460635 937429113 771051528 846336570 102536137 513620677 131840581 653326433 660749474 710129033 729755145 819264541 741157633 999704131 133054214 498913964 969473081 973528458 539026830 578894037 59786522 147434183 434525952 844761408 924723004 997355750 486859048 516542925 21620493 221184348 6993133 763006464 846738324 994181259 871202327 919798972 847290153 952163144 133823871 274713050 158871100 634731473 530640405 939145796 776309625 939475231 977930511 999475257 219682334 351278360 289465324 348127831 496402343 634795324 452026536 764446673 290283637 585242732 205443023 932131651 944005182 956164273 987057240 987887877 781399869 934441967 684711784 972438781 693028399 850959154 795208354 833353631 411437302 589736597 469966696 739690865 278174737 336393403 473585525 615054812 70903499 107740196 155103842 162749864 193250853 557385150 272405204 314012157 196650550 265095784 57940165 484828581 828951309 954299703 17309085 352704639 602605820 706755433 639662838 851797605 441445193 628200591 658280697 731301655 628731445 685990682 664185486 666143313 606682394 941729233 468088074 873939164 437190785 890933080 806999704 818468032 721947513 906164438 279460411 449717682 255521691 877268734 421625192 873320185 601765750 803508228 404000984 419332791 622053377 865551566 214583508 953944057 253340739 308572734 742182128 861286013 154091082 379142279 213824798 675578254 108058752 240953751 466573669 576450784 570342400 739144594 192688765 664616841 977676743 994045663 205356879 592896698 831132948 996819020 44451764 108795694 540493975 930415865 531900134 628825549 396637158 693747991 110224876 712438878 495390656 587808813 14981104 606513988 180661054 273600637 592628293 704043180 654746553 981536104 226446383 758874578 458888841 848038987 126382430 626547999 520497633 902052885 864489874 900146910 488250875 659243149 224436757 558586251 571875443 937780605 901008935 901404558 70924979 773727703 116057351 973412338 874752995 999769608 497297278 578518574 378445096 801157076 827007064 917806841 14453618 984625159 189511180 301647830 878418442 945911526 739476070 880285318 538168974 749165183 112001991 670602338 144641245 770214856 331605216 417583937 706133440 759402221 658056176 787625823 689609282 975053946 817488403 899143814 348809677 685445014 666856022 799321147 204459687 525907171 295216779 687951469 930868678 966585631 918192660 933560741 787380057 788630876 388751212 643799141 645249439 790521707 384714628 874328024 599603218 983209821 640057807 644251081 5021482 64602218 694094601 970316330 478605919 514068150 302883365 805244002 383971768 764187505 575940033 599996467 645595546 707324671 467250869 837606314 509852685 797253402 282508169 352344097 433850710 587088523 974677322 999451408 872069438 933264087 479497679 888366266 905665666 984957458 660644199 940204873 361090986 485106284 571300181 711630048 607377302 763807337 861417236 892273906 280508200 822469132 233727599 239812890 112301083 653239306 969972814 997791288 424704250 620758198 598472966 905810545 135353682 923531098 877052178 939330606 308557461 589509776 344432461 477196372 98257270 811265830 544137013 921711332 40617332 822134532 820038287 893983522 370338951 625219472 801500964 821832453 37139202 764951476 870875818 927581863 524237794 772576781 322360993 377456451 226259739 818513054 10064784 488795689 871224912 977421134 758223836 870773654 188228187 690864792 865370442 966460946 40070978 465777012 293673287 328275006 104326152 627433610 504218301 959250915 253493051 853829871 537094464 594601736 417581223 899195406 269714668 485048899 112877032 486720756 785689236 839916585 107348320 559597556 156358486 920002902 122313940 815128935 675389241 766346523 864316935 889773957 666123810 716879899 498937753 658875183 691084701 765769192 412832887 900985926 9757488 559552898 889776038 945750816 348847963 385842959 422833164 455537679 953515713 961473856 190420557 676865055 140402028 418883371 324165616 417063345 90905334 185068293 962737700 994435652 561118943 924244367 158515902 513530011 155570217 446877247 11832379 994379983 219844273 929932145 163858595 921408840 44016828 765988720 42999988 180964521 16710496 877269122 552935865 697433436 900427765 961901393 819254519 938258158 135572143 684392479 930405887 962951505 569612946 800803155 31283271 144800954 247285013 878215280 758359522 851449519 470673350 698479117 842552049 875591449 160619329 258024164 529817094 695167904 277635180 684629614 450170008 842145903 799750029 835292338 948281620 969536976 690915425 768540614 150058025 629323445 15085276 530022453 532578145 735994123 974204725 975878486 864064037 984295929 847170327 980997911 760274784 836961314 635219143 835045408 676968526 930714405 990747451 998313480 736553783 985677385 559148968 707910213 723567043 752045226 848143480 849369804 692844578 829949747 560744998 689738554 942215805 992254498 104231324 901947594 584033154 867767596 954784309 996177999 967094136 997746960 39006646 259590620 374664146 441668329 616862640 902503805 762328794 768912156 937146327 989034080 397505411 676192257 658059357 855968578 431535723 709796507 856648083 912183283 83419015 978561154 108792909 152895928 721971608 834482133 622401547 864070299 379353663 788768389 207599785 862722823 345834270 364851454 555996954 864933620 433891198 918272309 478591242 912689534 934611280 950709175 339659530 768714954 183773213 688966491 325924224 526828164 493371347 510507476 622543629 623049759 540588063 761972627 333484245 373745267 735176404 756152032 116292968 218923810 965054691 977328370 324830502 417794591 252359032 277765310 199358507 663628613 903672906 968644247 874693360 957740665 108823378 481835301 802268236 896958330 602163079 805975551 348885551 752242323 382458600 489886591 834123503 961804750 125316965 249125954 554437463 715678211 894171578 954243959 664135570 789657591 325097992 590368899 697021819 996769599 950773035 961099398 711583651 917970765 142632167 794835481 837255685 961500051 441570117 757765638 933041383 934403054 917206542 932435199 735912515 773804299 991926274 999935968 442408696 648145943 554104915 840208193 593370433 663050078 199923807 495546571 404839830 556833152 306079917 962417319 800382738 887824865 592198450 927109544 368351491 992490345 712268880 995788326 143229473 673548592 246079388 547997791 153086879 783946887 219218620 647585475 363682799 389704693 655541027 701211494 65315160 234382450 140241371 652675454 366852460 620714222 212001085 439333388 724562817 959319631 140231684 762498335 451057561 489934003 216564896 766242428 957915717 981436420 516728001 732271894 306438259 608228905 916891115 999026273 57254524 301477360 984085223 991581498 793856072 966960942 280202070 918806845 800133383 830641901 76233167 243256639 887648226 941709095 83860871 663374091 955215933 965935028 689849969 918866496 247660782 697915702 863667876 925926127 806468936 975488525 526989001 603018150 413770493 754777024 774950807 798071895 822533449 989645796 800321361 962583423 945605771 991182680 859029461 936807586 913907991 984395146 491235812 606513665 354568180 663309590 676903373 770957683 853033372 950354957 646221545 923713650 474019636 694664732 567775793 943277101 638163648 832690975 875914085 973754864 464534779 544970887 243940799 462415900 741460968 766944973 838705488 868970061 163522059 534125335 66779286 738894140 187207835 486792509 7064041 169932410 678854201 911116133 920673816 930208621 39942477 169596471 608662673 910792132 181158335 668599436 135264350 653890153 144118343 293866146 905876585 963183163 315477656 626715542 211982900 832113300 879098684 998370908 529659293 675378187 922665926 931368500 897526244 917486825 573793946 647121789 580465567 754785626 406032358 914785064 973279981 979421183 594400870 767266956 389933640 441389238 843266327 911055408 281614763 320197248 686294082 753119503 720247581 790960644 232678512 729369615 235374729 555318825 63668853 661771807 489801790 936798509 98840177 535875889 456535048 872440887 565688298 700049709 936308129 975154315 505313060 954219654 841883774 949729496 938261347 951339173 515130501 811519335 253459916 863367345 856552521 909781597 826638891 941549302 988945266 991221126 283307202 298332116 296008118 799162075 900752663 982178091 867443356 983656565 701774294 999837057 592998872 898750330 196369161 881509154 748920931 928291955 849971589 869319523 35539408 316614451 963571892 992569103 666995489 683582499 761038400 932781369 698660572 710433597 166147286 548440912 746540233 888338758 605065390 831558129 301867561 357396594 546595196 683902382 717827112 808134774 501155054 886785510 115910532 944924422 517269535 522237516 587570697 807011710 460548964 966461214 965128110 972008616 818507239 959843074 533677825 909520248 175845105 677006092 875843515 911144055 592268672 827139044 697649402 762194004 644399680 776103056 385467155 444835577 987394420 999587833 755736789 967678576 83383616 870033912 651719524 928810321 81498995 937866084 400321759 460996068 907522809 969519236 834027855 865383787 509567803 565020914 208991435 214111890 748946949 912275907 740250024 740994970 642081439 837408815 703817499 777982909 36765455 129503434 154474291 522717108 753727173 986586208 874399189 972393537 483993466 882242213 930258961 943819805 662025533 663221532 52129809 768400427 978450289 984945636 517493755 795497929 170598440 764949683 685421498 920660305 450991117 707659433 723226734 986637157 889388437 987906059 676134358 676466975 726097153 747661043 668850843 806238210 569402135 932066264 388901597 727979811 22036840 821666503 700236220 936462951 705760591 823768306 866603076 945145971 935124585 985298418 886431324 951221364 824832701 828739148 66264192 254874508 9306430 862478923 118388990 566909977 335030880 863642504 521883400 941151631 870497223 957380762 778045945 789865839 741696694 970551471 855444268 956029282 665571939 698234337 160694684 826217971 551570213 834447950 396181756 829293788 90651380 507067730 100922060 458175412 815626478 903610219 379490219 497931698 174610555 855386465 905203120 960348645 370426397 869454174 657970748 670888426 450363226 935884127 993977183 996063511 448638036 945600928 815340512 838418575 276562399 621903007 823140726 899714934 528684201 974946520 947772941 977386932 354605869 500546670 26561042 836632425 497334807 899820244 669997470 915940932 724897361 941440003 983611609 995563234 485590527 914010825 616429741 652250764 843968035 993958050 51353694 106542975 652626042 863916570 892980737 951437292 535808963 894207745 541597811 611439937 263240390 852613911 944094922 979213614 990766488 992520653 406417895 884711293 44568991 45780941 780594822 784229047 103316038 365280055 944583902 967119930 545986183 890910403 127543674 688296724 627774992 979162122 620778785 812728506 402794454 411192442 52191612 636061819 63222650 486417224 143416391 428350842 948655364 994717181 389974236 635207956 602044829 607227086 57522116 243752159 126218156 433227142 61991632 936769433 379275755 707888451 327404771 574721821 279280646 926349399 625494020 874538250 971059931 994735081 508978916 771315539 727081959 898419365 361085238 432833793 43803837 260026135 519393584 534655015 935935120 957943567 758862452 764889108 284588408 712518610 335288521 695385713 303286738 711303854 953002678 981136312 969495756 998330951 278750471 483913180 405369206 509036210 962803307 976595695 901630752 978367951 920055824 950201600 170217781 496387755 240219113 452508519 608489698 692053115 480311887 781343018 594846872 877670049 740316986 909600284 311887323 528069503 231908256 654244098 701323304 738471651 377802967 983360795 866174802 880967146 650088403 873834555 915116544 986255422 84622268 207093458 289900335 880200557 889011640 928311547 53492176 572507614 666828638 669995894 943591425 965376637 145183249 427418765 235654396 484717306 238717666 466410243 844591057 861471415 103508712 963716595 782905191 849608690 991304711 998944358 494248180 770051513 167152917 543741079 186249920 590488225 798999231 896556506 71098353 690910188 475067295 585737789 712210103 968095660 382706188 475404571 292536262 936019334 73313523 116604183 553862252 587946499 813790677 913738041 784287141 845810075 932190721 997494560 313877633 498064242 23648232 828191745 670250726 968207101 305582435 879948064 245417250 807429051 671779612 971785939 652894667 910274893 589513606 596245994 263671112 354120165 989254278 998261414 458265104 737783425 749339709 871958902 118394178 620717804 737642003 757836708 939084212 952190892 678164013 704589473 798417173 952786839 724064986 983573368 586874128 785044092 228587275 398127794 79005409 406293658 699018522 764836579 76837154 420826868 432574312 625570961 583357241 793811797 855211572 998818673 604583193 629768938 454012022 539929642 697388133 923570393 974266203 990360958 309292033 928452863 389184153 840831362 436366188 639215198 775835277 955463864 744870782 799514362 547839569 913120983 751607514 820975750 478443604 971616225 570097718 930742509 935929993 989308950 442717534 614265436 929468553 950319292 852636295 865159858 501028950 536862408 109484960 842753929 429601829 546456275 75714021 636198143 366334341 564216081 438547779 654917857 403078033 576571821 939445612 974365337 775235439 914409146 101210167 333618859 878838765 931579572 831168483 912635629 861502995 980354909 864863106 994171653 152189100 280674233 461004343 918045512 345144514 351277764 450788465 777197392 220084128 483178537 632005864 785781832 855847841 974780935 263182611 606647180 764027088 856014848 686218859 919005158 699614226 965110041 217704794 334186642 374317716 881892653 51342429 514157644 135302702 992816801 966043182 973215778 67575240 365119142 975569178 989938779 263195261 519372027 58565648 290398136 194011139 299990138 329729848 875334104 248279107 909149063 600909713 825481369 364890181 550188962 740807860 793350926 739657647 900393001 382765046 851190842 909095149 951752527 503396869 747682886 317045015 777189598 265326865 428159689 34775358 815393681 564213504 976136751 92457222 720592108 711274402 859883519 284507692 750181387 833927156 996997651 338474647 896822451 527269446 606600086 266233412 559069738 955327008 999521929 339741913 877703119 86909511 311645110 344660006 650071137 281717290 334194428 826077583 959787147 769918420 928426536 610936381 988041584 512345310 865558578 623935099 836958531 140784223 803231429 928199456 976431439 532211669 873727600 668324491 873068044 386815822 905143151 880583174 908892607 747084995 781759401 973226808 989127804 189607489 456736058 525561140 841186613 81719369 576008571 883962538 906288179 346922464 417015697 662752623 755259788 868655967 950571691 593660236 746282538 954445652 980895749 28771002 446224869 839479447 877603189 478693337 990721692 870147379 937002261 947489255 951164498 299225570 376136042 362351631 571746083 4040376 487844285 608983253 806512018 370797825 499492011 598979325 983314708 849640302 977653914 542363363 973661118 603459540 787571907 68834032 88272168 308489801 593421426 698989157 706955236 858794728 927536877 145787592 962519817 11645433 810941368 262104400 313381148 383834143 957726903 580761794 848615671 40769105 786510357 88648027 208741078 538531627 860395578 723923722 999500494 558037059 832835823 354658921 379204220 554770120 804721285 428728022 656079119 766114261 857753058 91597810 241413461 116807270 123299849 665776038 911271830 734620656 838158527 228331897 375513132 200629206 643603213 257093381 565777977 636274476 846185338 644819653 864440974 849821679 916604271 829928310 901353933 47193501 946653863 633317969 649114908 673237897 930430169 123725242 481893854 462046780 647902743 911950953 969099302 782406468 889229486 17753832 704404598 853546392 912498623 532036352 662743767 236855438 533418535 517504823 609831183 495048794 735151870 287444574 323733611 240370951 751271666 252156516 719337137 413251939 485271066 457830221 910881644 641997093 850217513 269597989 808721168 842143478 938154791 624645248 785921030 969592347 995593304 417699871 945751909 826154986 982532720 344436793 429854798 681538090 751403407 778726151 875887664 389531395 638715049 345749226 389294271 299931323 791692354 607210678 725600538 667037480 903429152 56407079 62949739 637325438 723926570 334982341 633948393 411168349 650604508 326044960 516547613 540726605 710030348 807203045 810051957 186983397 917239243 427049447 484769300 744165246 923848542 927969693 990835467 858185569 875563989 348882282 544611002 289578132 552250822 425291944 952461428 371874076 665233083 127870547 318892589 643781918 941937951 949503178 970818887 584899038 912274929 556542113 934517069 807932253 839838432 888348828 983994353 846158163 914015558 541232779 580349019 632683162 819062683 513734917 708121318 460172828 687847249 348273929 611915658 811952723 881993778 27613495 54659604 353999202 678067266 500193264 942948326 801500206 839993638 53790702 504737019 851583472 990340609 111763489 144009629 768955076 860029186 913704747 922942453 140313920 615018796 717604640 899584309 6086263 946600119 177424635 668694903 384924618 698603118 193532855 986013429 945046788 948383731 559042175 609111471 35014800 306826116 349948676 411241974 131306892 311806077 320151023 888952824 577642714 589234812 191335337 758743281 349951733 679287768 310905555 790551005 658715746 958560575 904842881 979508283 23433354 794846104 471113474 893068019 801450880 832792253 925025969 971151543 302613726 738179495 871094904 983591973 788730647 808463681 292909788 626643195 540083574 605843266 995819699 998228421 272177550 334166457 562099618 798983449 533827799 832598308 27618589 248094029 854991457 913711273 862408192 959853283 63270293 333053498 877096357 899794084 523965802 802157431 886426850 906375929 524546889 956748425 42569541 190793360 694422663 893613518 224028020 624502726 964474438 971799669 570592521 825657508 281464738 783411176 785565477 914097664 716654695 951349618 621418153 948838564 322221397 606973896 160057469 728983334 503052301 906340038 86528051 230697206 40030518 646356119 471245727 919859426 107516201 664224858 311166150 454536891 132813159 505577334 398433179 491162210 242764864 266843235 19688138 879222053 16586163 234585564 409598550 625246878 693644923 978046402 1408843 957397184 73358445 867639291 513646239 599721848 649073183 801447307 992680837 995513041 19676244 866429230 815865684 966658357 319807852 572241396 846469093 874802675 328924529 813471495 252101530 295031424 250835525 490706013 696699935 708686032 682289781 766531803 654598446 723629354 635726414 847403319 957110343 988960213 803625402 896726608 180278731 431254406 601020299 830914335 53265278 123810769 838172615 848142881 720624697 922151889 512327185 681328970 609320028 990430123 321080708 774761674 525906129 690532956 627546838 835679036 235996519 260814590 271222568 950924738 550552525 687466807 820591926 827422068 628177005 648226911 531009676 920292722 301014514 672463174 677430977 758255527 817824802 946139162 89917699 655670862 59779891 189865484 65637194 839004992 479432274 694942135 334282661 975971550 546201784 792412594 727942495 991530581 946286571 976674787 620650207 707488048 487248876 735251066 684230755 875954996 980831576 992280375 247913399 462966251 411295682 415832348 754371403 790323405 219243219 518985450 239637986 644760264 638984745 661734416 881606029 946250971 924778678 968360178 352100729 637013915 508994363 755632764 51590019 597999111 199253620 934594817 231030189 631495138 640711197 834678066 63127925 659108737 959712826 983534118 688640784 751199590 245340737 676218006 362994872 519365626 185429148 606150532 439475040 722287593 337291530 998923957 134103099 599874706 853865906 879829413 506736908 746071563 380351671 633715874 704208484 992566793 444268419 471739152 139035237 578630002 274068516 308474080 682523201 686254832 969210716 980610254 904084055 932683242 331203855 980397959 656175321 659645098 784817693 859362560 509100023 703222556 602681137 791473741 850516510 860620182 280223028 418123586 117835677 308134935 995921478 996803195 739232606 989344956 355300357 695765391 800108178 933385568 549539724 706494339 551726901 886147468 797841635 929717400 529160691 984216330 185568093 495837866 537502082 627269989 786970095 879476234 768897988 809945507 905364772 980576838 410468126 730242002 329787168 954279325 144485426 168324871 778681697 985398176 239814256 751745455 200451066 516149991 805998219 865826797 443757177 691645940 959669807 990346534 971097495 996508498 618814514 735490721 445856088 726889794 726234064 812137971 727204710 913972731 502598590 865175151 197404123 230325765 780698508 784230690 627034146 708946509 872075167 921163096 625676284 873840762 736194668 910011015 239658575 504279071 111925448 684558459 742589999 778697821 387712959 429525679 478887898 813570109 988677558 997161035 326526207 522621422 853948164 901478299 756758553 965522098 927764454 940935866 374632036 883148191 915240595 979671258 257462053 662705011 298487539 570601584 534359436 999830907 121488612 848141411 142784907 323728746 880211927 964114415 950664825 982476534 867043544 877415261 1922486 566046933 394605654 587471681 520502433 676109762 646778462 715514238 350578241 896718922 936786965 977512588 231821062 644782407 572044084 689210457 2236131 119285725 204385257 250580080 386388788 489707511 492998443 653587630 103934570 118158610 79391289 83482685 45311917 99880393 488437898 778549649 41207979 118505160 398767071 931228811 415884255 800987021 912389123 921121503 80841466 710303243 330764850 544760432 834151356 951881175 975953910 997989650 922688001 969206356 944872047 968838505 977759606 996291190 802332490 922833274 810175657 955613110 99075906 676642462 737785704 936721433 790756132 893519025 660879208 945111902 599514126 989341033 318175117 409805708 210278062 417081523 337903916 708086873 487519906 952653839 822997329 991726167 997762083 999358642 1245345 168090265 367495365 713676052 12894834 941980852 238091106 548157151 217843592 227968647 81100714 189672057 740655671 793283917 564063726 640189708 493616981 571779611 430290609 854006726 513515188 653450457 558770279 839631535 739954698 939082698 395419077 935335064 283357041 401077969 816618262 906458895 842044995 909065624 966380053 978255159 148283309 986134111 828688061 916125610 155898619 251447049 586791768 959097670 81242888 495598477 41649083 268380809 26630159 737437375 576611416 819086808 589533805 660643269 979698025 995543952 227616189 862191983 830433753 841414064 739002029 982509929 693325226 760445925 931807788 947780562 187962126 299458871 147785131 800328552 691270930 886263616 792278151 959708729 128157176 781713610 696562737 872625002 401030290 771692305 969227183 990318934 552942037 681873705 496473579 924281043 74449309 507567819 172594326 752342584 687900409 804481123 592367472 654114271 460391432 675816726 503270661 782335339 241670829 803622209 562093649 693381200 250500385 297151439 177247774 669751868 357653889 590734039 651111835 745045636 99114974 278281612 760740010 930398635 764050365 820266193 728585396 820064690 604616077 806652491 670327105 990161538 91344917 114453725 180383693 890864316 508284772 780825377 355828423 591751182 783505866 944297214 791758662 946830698 790066398 998419929 789515801 864957853 927846221 982632360 464522139 527648694 14441329 95537639 387125759 641302561 858769993 910903857 293764016 752176279 337691136 338225423 389897123 653530524 421193443 972415300 293747065 867930399 354989880 365289110 520457108 740392632 839836618 871235490 256025339 574713628 562459618 889749648 515673067 795960609 338000303 538449538 139773511 870304345 920996066 940484897 751924496 799544411 632155207 962368612 959474864 997400955 139654222 397622356 927416042 932718304 758862512 759215319 121019825 168236106 92887787 756847964 33929884 468431613 749981839 963103394 89241874 640619434 548430976 888605111 440897383 819743256 912145910 917539061 394541213 510892370 239453250 766893237 913344775 972254889 18935890 917246657 784639560 785546157 105964114 966550225 687248229 893993032 519347486 655002852 447231456 959217922 921941448 926022348 391834059 911156970 757528406 863356395 172261651 280905302 281463066 764132994 669320638 804781851 733370958 762836304 869132437 941382522 166112956 410694975 408732432 847314938 773851913 996753035 720837763 937461735 102721912 814089954 828263532 860540074 15713331 232152132 906272982 964024780 979930549 995522356 545722227 746058054 568421116 902515472 129499410 222614461 253807469 816371045 656813729 861096366 272560364 400856282 415920445 487701910 435095559 839562635 673148154 813395211 24234183 775191030 256247997 413389748 692501710 908788498 290467683 504395952 298225805 872734468 260177317 387322544 680022099 812840065 24227210 91485515 770354428 955922396 902826384 928033749 755693710 897174444 574205617 700339997 120523032 870696668 90847261 897669296 472606546 969007478 926531411 965883860 653547485 653721868 150539891 407555766 322677357 602416514 622772244 699292098 664248408 676676830 693284967 693583677 538334721 830669663 231320174 808736927 893657014 998521832 10081131 361087993 612949063 764494854 647128648 676788729 632806500 696514256 561495447 570962577 13526867 266352918 57556579 906896485 423240397 815250864 349663161 949094675 727897534 890350267 390661772 649126693 755538526 812205059 126608332 999489749 459081291 676481939 491650298 979278985 790849150 815414929 71664452 550652798 852857956 975374126 128897667 412735411 881477265 996440352 732882355 896974016 968335482 983330401 759008846 917430172 842000276 848504763 823046034 930917433 14543515 791341593 454605619 719775155 809013785 995519179 192141980 698288993 911528112 915794851 893625857 991443161 542620703 597140948 858174032 936379455 275715617 971311140 186346796 366255937 909679598 974169442 829555699 920036914 942591344 991057574 124683645 216618200 377983884 433626787 258869951 624486142 562607586 979703764 98044876 125927310 421767803 906206923 701380862 742414055 755553682 986929929 409304331 540802681 262747846 975473211 114863957 397522039 742438753 971527280 642775329 732140324 27991666 548894218 839209083 883797748 528531956 714742254 577760489 641408346 709704879 983501641 462464178 557273369 959668571 995998166 183606586 392835251 34542750 693245049 616871271 927287257 824759738 920831539 702592285 895813983 716817938 743234801 794989842 895061829 956469055 991345897 801274276 830236175 393702775 493634113 703158795 842530541 684328662 818346869 489060271 530183419 500088710 556172006 189424799 836620498 470565456 917792131 549957160 930949247 923539532 941633242 627249363 837768493 430711543 968988350 485896241 578968444 503360129 898857950 854276936 978144759 421514628 566135043 735861798 872124675 740149323 974583244 309944607 437654656 382136618 950422313 215361330 500361068 44451970 814666841 323431813 737063606 748031640 814152799 411123125 718725389 797693385 923051426 11227132 297267421 544710503 578324768 869646178 966033738 160452546 741937161 501434843 872283100 994257013 997604721 608322914 805129227 870185549 894112483 525156422 716514948 85355665 789010301 591873375 673520783 434327815 940376720 775613099 823251392 502666153 977275632 863448855 931537945 877659250 883573525 854367198 984348886 180405734 980294837 978725147 980663899 926619848 936427356 947616602 996644677 174514591 175491746 554997477 721527686 981307339 984624177 272187670 389382186 400021960 733493464 591297906 666744188 339911156 380731225 514095949 903451840 608494818 659144337 650652892 763076576 500930327 777791168 522859895 787267032 223654824 227686088 69482746 485422146 90610604 999563305 725276143 910688723 809724920 989916950 219052467 381582731 511727514 841871036 255163782 940936973 224701430 619212204 464423337 487467629 709406111 935922775 205717257 889610855 638159424 741440299 204874342 973039863 263588063 626369441 524249211 542573776 78015852 892399978 56985958 58738478 715138990 928069300 378961719 596176528 508703831 626270727 663473163 850762532 660161822 769903342 914891022 956416308 682598660 706899757 880108412 906284174 631426147 681933416 910473062 946714355 745306185 815520706 101969979 951729037 783008419 893835216 508681437 832428898 848215050 987919203 967196582 969434918 536293333 715541753 6268933 204492707 102260015 497529951 238705580 374682790 458285390 977735485 744624546 870108860 614177321 744472628 835288651 988919706 712958897 932494160 734789352 848525455 985678245 992459404 289992615 728077529 374436461 870905720 245169299 713277409 70662031 779058004 716331078 920593768 952045869 978329475 249477194 751093537 457214249 851863963 754164556 901470171 566456440 904214857 500260207 547248969 580280098 682453096 757230245 925251625 615371984 761303553 356259197 677019397 606307786 661962307 546590966 713895681 692203570 823222185 692656747 842967889 71639994 407078838 693442023 905876813 470209864 802869393 907808099 996492980 367403229 569374053 984655828 986921393 239159447 340032239 189887020 433163755 747425263 947371560 711636534 926184605 21612096 186396477 387265349 540382152 839022816 954990507 900922756 968513863 755364238 814211840 294412689 359111761 476375115 554301642 394224421 726179074 283249468 816060428 886461847 909761381 979170999 985275999 887080414 964851844 889568321 943057595 982583619 991156652 130507660 974359838 501809123 950162236 751357797 992232125 686466609 957068412 996593094 999312238 868284249 883315108 949076844 971116370 44884477 561967733 141383518 914481917 702630382 840766480 220223011 634055711 669956831 800087541 29427631 957033195 505514725 763714749 171767868 898574175 1291717 397233979 742158384 809987678 825329363 978951624 613784435 976860014 207889881 562894243 680374822 892996898 526936170 779219160 959170807 981373290 849407644 981409193 978969051 984693191 233384977 560539955 394587707 838126806 168372762 996784736 141583846 181497713 589568078 865898791 167003051 361541043 96575391 272072530 684627771 878516517 663969255 891740898 560425330 782445762 692427630 857461668 728662215 894625251 539969171 711587722 154899326 305052074 24699700 290489779 732196796 868043036 736039946 749986411 420369481 592423320 790710669 841092158 864083934 873013271 495343731 859211136 298240794 304698185 257052263 978274344 543405044 946492221 525833521 738531774 405888186 792770918 246406436 338932268 977722506 979929354 758432373 900646920 333407498 810769047 804530666 894801239 220699549 324184817 348731666 682392951 79921415 914275178 586689042 796279322 760037420 771676000 220509161 660624814 472951733 594671705 740382726 773116549 814592735 963105110 576327259 629266650 947584095 958001179 110556596 159874185 43474015 457207366 651422606 736916823 925586476 949774170 630528549 825885310 290695028 628948733 178188777 897844679 895772342 906679515 473542977 873030674 275958993 696197074 37310302 892107466 575784071 819896095 755908720 803122145 28925210 480665809 830666553 899108438 777229423 827656566 343494264 473512246 786101988 981932663 777968071 999840260 119045869 681878197 362569450 980988807 206935369 855377044 216785709 905410670 933155260 950187872 237126567 467682140 855404215 921647836 328542869 629691610 494549394 977805025 602100811 997847924 309415301 500605456 980300091 987623489 253528894 456101761 192880604 692064259 983722332 993219059 248642565 658703499 273999291 816985022 909029209 954279359 714324584 788274656 710541775 725522457 393527094 964684449 442650273 531200324 410574334 717860870 973035326 999855358 301055015 757765854 453189050 712469850 394479100 732583893 822475707 866622762 953331951 984497318 984009085 984197694 76491319 419560375 350175338 588045652 896730251 987542216 202436231 700820718 772622268 886704128 979865384 993202800 771079863 972120880 680697372 888240363 209055456 905138780 392999502 911196422 315072118 942687211 565890932 610232511 399376816 672994163 250453841 705245539 79364005 433597168 733827717 821044524 619950408 648099911 784179412 918747380 154605897 716348299 857866962 925744816 696094071 750166957 10134468 414055621 135397867 750912584 312372949 621336034 312029660 775250414 701236825 792022561 162167376 870457873 661061351 837361165 928819255 961457920 579537456 720827547 299835039 641794142 869009388 929841224 497044722 589994544 602572261 816069067 141161863 652296016 694674168 702286634 834887624 976853668 359085535 624183342 483262753 718074072 963964435 975403537 676549918 718830177 298526333 593145251 252532840 716959195 619321210 678109186 477523723 711682856 809229390 958641544 32443404 492400143 738736755 858586754 571424985 811510898 416490824 509544281 648891303 698862817 303662690 796193696 361638021 559116717 763107183 799240440 841252324 844242383 168839513 862858351 219726335 516960931 548925301 604870552 629587760 757988447 367966785 743214477 888526637 912470392 915182491 972144717 73717228 734364549 769983349 987364809 353792868 998279539 817925118 873698692 208279405 831073745 503948980 536485144 35860109 637210840 199413394 463714956 278891144 629889250 657062650 660069605 986866120 988810823 113515954 711725939 250330130 739224401 409333125 790233022 795321753 964855096 636619603 852482818 833264467 877082013 805550309 958374584 423353720 876570646 840927379 908431492 706551056 990233273 273711675 581331014 948587872 955853410 980958824 983651158 224669225 797471110 982007051 991182116 892945625 942333445 223266866 668583461 517636268 599863185 246193992 540474632 499873276 701948587 926781561 947289438 331861051 974126850 147929511 326576801 584071035 787085754 756738737 787362299 342745601 687185207 239119652 685188857 382070820 696978245 145134233 457680827 667229677 952010960 33404206 541662045 642795426 855653170 267383361 805924351 814552742 987126789 826334201 942875542 69631948 883413797 672727200 703054315 62611364 387944967 934582310 975667996 391401252 497873826 250436774 892838884 273098330 735121280 463610923 913728676 325893813 857751412 763292553 767476805 500323713 631933415 284837256 323458390 182641372 464801675 254834273 445637449 572313740 644938865 379993588 418443939 528792887 927492442 502675805 641742843 585417690 723962212 595730686 862230603 797788367 969151555 180467604 354130338 890594684 958790607 793888588 953442140 827219542 990996673 947009821 964483576 732312181 980706822 863435627 945680449 647822279 977104279 758438776 957181469 394794365 430448034 908886944 917076552 67350986 493052683 71367073 195819169 498409896 801458197 622188050 966036267 819167871 957927989 528614168 630032370 459961657 783854906 483942137 771037013 569952159 848228025 720255340 863163673 762740538 913343791 61940583 879995108 588975284 960398412 762358137 909969622 151285096 335015734 825794113 936388272 887957674 940016941 58077819 525409190 969645485 984017202 510547188 648399330 6049156 44597372 304673850 413218850 62057516 329058216 100842573 370602269 566288925 835159518 433924613 589055835 221269658 286558125 446728724 599645223 102624649 936430597 833661997 978616065 398980400 473266183 14275755 409780924 532275547 746186185 328128846 993633108 158967414 504226073 56950691 571182602 178318513 855450122 142820259 660851223 216132795 499427022 999354556 999882681 276875955 415250906 49921917 115349841 43765599 601069987 461831803 810848492 142549175 562376852 399235571 853017677 826022986 987161940 378077731 910645056 699526357 950690612 375694246 819856057 812879157 967955300 15785100 532811812 39304074 614847890 961742033 995503406 441224978 626173382 148487792 616770720 66420721 391671052 811435645 834103356 82686712 531622882 167215167 354228113 17435435 832479620 519669486 943692452 163099717 925055760 436514464 905180704 625016983 973444505 204286209 997926388 766377498 937182454 915414159 922584040 638636536 764384299 406850413 550197386 402549295 819446306 43289200 88274196 548572505 755496902 847003427 896505062 962151481 972400832 271472403 887376160 131560985 963985585 395006250 420824819 942521617 974490630 865863275 978149546 224591666 625949544 574171604 694419267 407858116 420689326 289844628 296601475 288599621 925914324 8858211 18559225 583794575 865581655 956833876 972836572 292555404 624054931 732369440 955776410 795898654 984144405 480916291 854890870 556308136 664434297 869148572 996369557 690182406 809804584 919984724 950488847 85459801 286796847 199294189 234268073 615338854 617009452 321072617 335024615 222495624 317831407 527303486 558273301 447030817 686389345 397825467 729239290 264781598 914251935 539640382 809585132 207924991 441842819 928725045 942048795 77820743 875885296 29056464 675386174 214970925 800242494 562329274 640877564 352181143 543452436 647775411 780583772 325588166 430123979 321268846 990676453 446737675 977254201 948002310 966911924 218611646 793139436 858990065 906472350 745126939 878084923 919228443 931949359 401892118 711603143 52446774 233425754 809342242 875912310 530919696 684877919 364286262 719992015 337220637 952354096 852005909 932184727 522466850 903795927 84322316 969989677 774288440 856252552 104057538 263063100 705855615 851167000 986758918 995735528 468775270 569690819 705237150 906809083 768312765 774345489 866276017 956400853 923670416 970584730 203901292 925637235 761157212 859592197 625610676 678029418 695283925 844417011 106415557 752741319 505317997 866796180 800945579 940993858 33311745 502874769 754259737 831070723 136301250 160170475 878591706 980887793 778889522 914607356 294609833 543388532 890156386 958472497 370361800 524011660 103626025 969006129 656305532 815584829 162659773 433154366 824296332 942020201 41209077 386619844 217693121 671635020 920793215 989461729 897240570 901131436 696694033 947455152 606202053 897704748 556870481 594427314 615341680 651437707 271200872 279233735 997770577 998894187 602505116 939845733 973203569 988159514 310129507 944664276 114636254 220247735 803668412 942194884 673795228 778648176 19215233 702804599 965223242 976343970 765228407 953473621 759561252 924075479 242083863 325599975 684985778 748545633 827044880 894547806 962482616 974079872 585765830 818985035 766632691 976000336 31375505 250611315 653886325 949212021 8483857 161663585 577886465 707793157 627616380 696769273 631621196 711804143 312894334 457353703 482623361 594478031 402153396 557778877 974921216 991705407 877754406 972436331 149632460 463275598 175468030 484520143 920286938 955052586 694594841 883021025 382505704 965678186 954180993 967106900 308037972 898434304 993326298 994451805 486394595 715421461 320084656 581754340 906176505 948051834 154600391 991105495 355558122 520986867 868201576 947770617 16553706 585789659 554471370 651046908 426904400 734279549 506637403 993740818 205946494 807156637 158513345 677356878 486398595 854843589 396997796 656039378 953179160 964822310 672365641 899437452 761342448 804597656 666033087 905814981 935490952 960196201 586523756 896821954 3718300 789885105 458903672 621872627 471650766 755673385 173223371 198494119 475952748 845453743 421077782 734781678 415836233 635010318 636845483 666636029 964846046 968705275 997427508 998941683 969373505 972461174 325181708 345857050 152093723 798861641 433803321 630837651 546257801 873249842 909238906 954302868 774292853 778243023 34265928 802331556 888233759 919294962 534522443 541543017 840259115 897987193 485751773 495105918 393011601 716519342 154848864 563432004 290283091 357850274 455193210 762386630 87033789 89779820 201184794 233154671 416307406 920341598 336395984 624359078 763611221 961325533 817332697 969161726 97989195 993151100 832456952 878368950 628426895 678214916 551972578 817859490 171345593 578842940 172532659 653825917 517606309 548886229 982686501 983565558 820611181 837753022 962579402 988436010 161754906 700802067 664570105 937890993 485487959 976999349 352294221 456866844 527648945 947325595 52493645 553771397 1835762 208076943 590809555 719528336 976514912 991587606 991446720 992866286 870211009 872175950 234473699 568625643 353323286 441078465 540381926 979659967 133164736 593043534 986446086 993269274 495279633 699702468 883392782 965928484 491445186 855849201 872927798 941790442 23714025 800340030 706647299 842128060 16425059 957240878 205205510 901878762 237461704 503609562 532454414 900352577 399257027 743035524 544435870 754974699 545814861 684526574 611370922 758213423 417029724 882103195 18893171 173793193 66744066 76576263 504169257 907865482 946240236 954745097 961732064 992953889 389890720 751649277 113827584 964537385 591033049 658271056 452114670 477225097 783193260 976366782 986872282 991755355 73637099 901014778 171431140 342573810 685924416 722620215 974318060 975977189 744329459 947758857 517436139 777808660 237477245 722691137 548365304 699047927 188901387 635952476 407015500 813829417 522740252 768009056 523773189 644874663 715773337 959192842 359493082 486948521 341907392 639594700 420119018 606994381 269086365 711757601 209464308 641061040 798281223 937190952 289360203 851560101 630375306 860567564 80108257 897844378 627623009 732069050 478140273 554716054 74133319 778747424 611067854 684616733 645831439 890945422 780355339 907144650 405717480 505235668 537368381 550390731 642283678 929458056 957379835 960683283 519781567 665611134 943903030 991821712 276413540 833207560 416632896 856327204 847915161 953717247 45842471 821368859 143629734 544423203 214726100 725992786 180285957 231179910 185623460 940074651 794269995 982982869 80939509 320371236 980118636 999786401 550342403 777143632 249934061 950269537 276033588 436879050 649727874 704170824 262550338 652159921 545443259 922426837 287413313 300055416 742009359 958095512 714077695 716239772 441630008 472752577 295923094 451587538 609284487 809948200 203289170 364470001 213851633 842275456 451240359 812747128 744353996 841969670 324287162 403654377 169270931 882488256 756187178 979676791 288787646 972971186 32601414 856644722 176325663 347679906 255526055 696358302 459880899 912762784 431185838 996501781 460370955 718020892 299983332 454735453 837486266 871477690 606580034 785212210 456856357 649234437 76794249 884731894 577572413 802133530 666354945 696040310 54559949 572744251 62281667 837712445 327370090 904741960 171195561 956331857 305367538 457415335 687895232 876729667 554115545 931402891 344082437 557859510 870286008 936120012 937424085 959881297 36919145 414158169 93279256 274039430 569732327 716759025 558106179 598782592 634625640 806148477 54630045 575692604 195612081 583207696 409144083 486742386 72901235 718735390 548655746 664605720 478904787 742265511 778576873 858881752 594212210 704631070 199668160 935947252 937848402 992916001 900136878 920150151 148563345 676196046 151950888 621940804 441118390 772274934 681748760 729464864 648577634 894857928 780889891 945868060 346488278 999814359 573760990 574934688 707287682 998369416 27043610 623476190 958964029 975410460 773216462 899069287 34900421 766946001 362570323 620353542 750315557 972236748 196363090 266645153 684782900 781520414 732527148 946405273 441012080 649966941 744229473 874274640 133569383 248777650 301067114 762845450 924809023 978980219 103589865 209014368 949455881 992614478 365613062 770489197 496801609 533898057 837196768 898410950 994017447 998659804 284594221 372045528 44048693 816542468 461200052 649782669 777557415 816039575 744928249 793816118 105160322 758109501 436513387 460367483 426492584 697314248 523087505 958134009 951352900 994710982 32828808 68993976 365334872 447031737 498975319 516836730 791358085 927185335 162328661 858978739 390682733 763211609 671613446 764609019 69663478 203316921 89507383 469372055 405469236 819574875 358866415 837773770 883783186 931556090 945487476 992115966 703659074 714873782 267229020 970372757 734172450 881219099 371039522 976860511 864510863 882335877 622850430 709612364 774852204 921427329 470504117 610620155 808830307 901964306 280897840 671354082 995218234 996761955 2281381 609699641 944678884 979742287 760834555 844826738 26738918 631239596 420422276 827184998 166079318 492999371 677702157 939909563 121000396 755142963 320425176 385871015 400849713 988774614 455340555 834796723 170837550 884026990 102873837 556952188 84113560 335325538 760263713 980534089 661142545 913031123 525035229 601653921 988281156 990084762 959796796 994992459 525212191 949451659 802721328 910636384 468258178 520935445 623191605 871573407 398757035 747275161 145443899 961682527 152320582 871186248 507200769 913738331 499683639 877326462 938046806 974985622 116320908 119734360 525765650 865098868 833042400 925264033 649668278 819327680 40839121 704177926 475835105 799743733 279208922 317260949 70863351 746966092 158072205 199096950 916044986 979592516 936981865 965791717 748978841 918076638 806906671 948038451 281503328 373201575 588068331 989643944 836373343 993820349 806231244 909197308 242312057 450720208 911914462 945317438 795887894 835433917 460825412 726980573 469968587 521048276 593148945 667666315 988727224 995683100 691229793 989387321 674743216 919776439 899952673 914899054 671272438 850075289 488591196 986330789 383559061 882792770 862454131 910551196 282885516 960185762 184267523 907504439 294897375 625781030 829774536 901812829 418889892 950647552 917704829 923436688 40839127 582450740 126840100 896906675 207187100 824215208 979083372 983705015 355200567 699957196 467731807 819018967 954389173 975903403 657311341 695364747 405108264 764100260 532920160 687009334 678210745 985650717 224019809 495438728 445519509 524248308 257809539 887692194 667133551 933010945 817921964 993628094 103354327 834830825 684826207 983547456 386668505 433861742 454104875 972943082 167169791 467188895 197981851 648331312 909989322 964302554 420804587 963229106 587371970 841032435 731510664 912640769 6572444 476681596 803805057 895203389 500457687 600728091 900881044 928778068 17016563 864474510 327511335 889959346 754015042 998319846 883823340 965660444 744082392 779241125 445471720 523719059 748812267 946073656 908483978 921857231 239852769 497459676 224292969 577024521 160052971 898271422 258720417 378695102 467478631 519353594 164950916 250016553 499483522 674362564 614724500 689258708 126299207 394625967 341330615 871084045 86563622 174424432 992749989 995605871 953175397 981276746 74060925 675454481 600189907 754722851 430868514 733691668 600424058 710058373 737623369 917109806 294814187 396736840 90548898 119013418 380746848 666860819 62355115 85716521 719845995 916758945 629073952 762753503 463601791 929213108 125748810 149648328 291998129 939267825 68414850 910122233 976457669 993614335 168970449 229367824 198538733 564315348 873905114 937970435 795458713 976331789 772769435 981286583 395418355 505961737 759494375 969837981 13773374 321705065 153102700 225122096 73435252 933806604 166505141 953817517 653319742 839390055 655332842 745751699 484850022 610310549 971712333 992511631 662873292 892555938 207603191 683629402 665407699 811693552 676950301 741013001 718956486 794117481 480422296 507945597 823482286 896531163 388038482 969719709 382330714 605789281 387147850 744198185 559887741 650709353 675484854 845032748 262773655 606041699 985437042 990339800 359684329 882242793 938498626 987781654 382660356 856545575 167820720 352971358 165052107 610118752 444170928 550358914 715406656 995904261 23163959 723643792 415457406 594770642 200345432 900649044 312961136 346067762 45154346 874698621 877497378 982259582 357204211 945014855 565401277 934714155 342900325 600641441 469632921 975239005 600421755 937531827 773757181 890491160 477260959 895361072 675357695 896372666 20453202 871112272 339040053 629908168 553775043 654296751 509892590 600425162 620889052 901279489 918784642 973632567 659436223 815139353 8569887 937189337 556914889 957925630 204010640 648781513 174880000 589832826 554309210 667430916 722082896 993721281 675388801 811773737 307848096 494770814 8284893 682991923 731867621 778468273 405240046 518980012 118764281 263191538 536170091 785675746 212912447 955495527 561260269 589913866 110616010 998427278 54090644 638494693 805499376 966175565 835105571 934807766 68264838 287763546 596972353 635580490 93875645 610038427 291615519 349720138 189428483 371630801 8149373 332913737 763463711 836296121 442760749 516815096 275183687 466487705 916638206 932161342 852867968 960347905 369392082 481205542 347013002 414670767 608729969 730031601 463556980 634479478 668768892 732754598 169005140 401889696 964586953 979886156 240872941 414936274 564512942 735536490 473461882 666639991 937357046 945601792 472748244 964419455 873098937 959449466 474410523 791489970 937635659 983565117 615726322 743242989 648755164 978318115 982900022 995466230 625517583 713170058 677918670 814098235 970958543 982657455 223899569 420182403 414870198 793800102 298497336 862824092 839658297 970314654 850534161 910154092 538328321 745491452 149603239 504342899 381446891 407029341 432798299 859347326 933844347 979078070 905845470 982279203 510718848 678575913 443663662 608302742 525888067 994486128 351248825 361797259 714737345 730381175 725654181 803938018 602737483 865339737 77148011 864075198 693938521 823592819 119269966 374436771 574041974 984412741 166834359 472618796 694806184 907601926 462047624 984197856 520826683 708929036 543229846 757472094 435111564 516496531 968235092 998057120 977648091 985172398 26617648 200427193 579051362 636526201 645958430 818469687 650610184 976165845 275892884 606948351 855690883 945357430 3802228 647599406 511164978 833313649 661592103 688933732 907386892 938368989 533430847 867023716 799999464 939755091 437196078 438840061 546114135 550392449 822601579 975204477 356448092 358772612 310887846 416607255 879075426 896453254 204196216 441036111 83925151 401560773 416018494 618072168 276211939 461569932 491569359 625768181 324523381 959279629 835498868 904859027 111071988 774106622 849932429 951439985 373306739 470991100 236386018 879476630 290227045 373062994 819454318 919323705 901216937 986289475 10784145 388019945 586697126 678914066 201607533 802696464 590716573 747409899 627211750 878215265 445683863 768390222 563289669 613877923 957346354 967947039 273617697 511812568 895253004 963425550 799458094 849715699 243071199 271482099 33529606 72564797 339739193 808239607 627783579 784402174 663874737 986737632 242081342 493522386 787704232 927180175 406352676 847662638 356081049 893893354 531384630 979560532 762752684 862419178 205289247 287959520 765238475 799906701 248645779 970449639 940352821 950340940 83622285 647665480 406190172 970761007 84802924 294276947 108067526 234616680 173614281 625916459 95536577 167514930 784060196 915552602 579640733 882546900 42120332 799925833 588178835 926986530 451146441 841263577 591206735 716678870 948020428 970040497 129056417 747992279 351781527 569112798 964089521 973351070 442106173 670468961 579657382 915116629 653659938 902659243 136985568 644625647 674354179 685591704 29999739 583134500 80574572 104298924 237835889 799176348 902225664 978767994 314837048 833475078 969937852 991639634 23433263 937167598 738853974 844655863 400444321 768890325 253549651 321908909 635829394 748803091 34240191 205287663 921484543 967904954 32654217 695609771 466357873 767621516 825361686 834543917 114407043 500084061 928294880 953605023 282240292 394559597 962769017 971612598 237228910 726794338 125873805 163572858 244517615 586945134 619185329 796849447 190167503 613856321 979649566 989458148 575650633 813459048 340285442 684624929 269638934 942351553 255003493 541949698 974361575 981840713 603553738 914222215 312578018 677417200 45249069 877216055 428970656 749043318 567826933 903931222 612311566 695746167 822263340 978221502 596308926 894352868 759862371 891735365 433621512 566758189 208481196 694876738 880414437 982278641 945834072 994446539 357386930 966546647 268998231 724936688 4006785 718680166 226235097 313219880 444479684 817555795 607420843 790700063 82101825 561071335 659003219 878177944 969976024 988534347 731448925 935582171 91845539 785273341 429490579 563135670 833476176 837483593 31743680 808120634 504453942 812357544 191611375 569226446 225311490 354248909 892001012 983073745 259177735 617811516 764040989 859713871 233547592 988793647 294599803 513732970 968881818 997378200 531417175 986014997 540898995 685824802 203610856 975031346 714291864 848123008 49340418 281132376 628320240 884370464 168800196 322418828 225305490 646194426 68557032 827784946 254601802 892077392 346813092 479172821 922129293 948228994 389246695 670847745 175891906 756840172 240065199 926693325 840730980 898261320 466860560 635488798 572859906 689156151 626397931 927672416 664720221 960081284 803309140 967293813 833042739 961678109 113974534 482646696 492474949 542797066 480534786 569234194 689933627 944199394 50525595 713886019 4027938 457200048 828579370 878607460 25409541 979694347 970539311 990554863 845326003 937291656 892402937 993702044 145893779 321701612 737735307 962182127 534221072 627042188 674546122 776914331 665094105 877004447 287233822 733909718 22066308 233643707 707805305 778115771 433105118 991677917 124963943 150664445 825137850 965329265 382902689 398765193 765163287 795589106 902190264 915982060 328498422 962169031 477249091 880882015 509174729 807279756 753459527 826151968 640973627 762106004 91489073 495089755 568338955 908794784 378932182 735131429 394243037 467953151 385941556 993724051 799133398 816424720 169322833 173934804 964008022 992057649 494479181 950895552 546916327 890493849 902857407 960270315 894447020 951050151 408188129 831889876 861220974 974635177 801792083 873915554 738106513 838785939 778174598 981363284 350993876 451045099 757644227 946061796 304754706 690122338 466002109 874656023 839973937 995695861 249389151 990616146 373986673 557706839 126286668 176377108 163596875 848395686 175127200 742478641 842284972 874078978 429162135 916383082 37246656 920292337 626325342 945486654 379916589 764763838 81247137 218937628 823062198 842862191 344781688 814382643 183491816 817958209 858575149 883131256 168813451 416229652 539207069 801802830 542895505 886842578 841406726 876526305 550126198 821907880 697236410 891326762 529068896 862739738 519671607 720945854 798985417 808381990 695149176 779185155 551906667 854724850 887663515 907323528 692092478 916514375 332445253 699571997 424565286 656090043 481011325 878260610 362507903 733724378 572655866 847132323 672474562 714530778 138462821 852316826 118986158 744581108 283243319 609169919 98130012 110308907 266863068 788688693 210448159 950167000 324635220 892487013 412752000 913529222 366143861 387155568 690235968 715718072 750778953 751071716 369289534 935300129 233349851 392262142 189589727 960199427 172574529 286034734 637075913 838877342 184894772 590005576 730714042 919268286 630588727 721076090 941875175 947695126 740103633 853186935 171165416 501032858 917092260 921097520 395050624 576977298 106660811 721621313 622320578 986037255 167535635 984543631 546165800 784401018 204307239 556839049 898654880 979748513 538294064 809965418 878420970 915971276 732877470 902636273 150460372 818853653 890210591 927910359 786862086 977534048 760123515 965948691 916697831 987477114 592201894 967968474 356382850 473145669 327466029 981960543 643840036 878394280 831013578 878168153 348996359 742591333 325374767 661553263 191093127 761592444 971063561 981347522 164943138 859208245 897047017 930934203 87822564 468034795 141323313 393321102 885981874 952921625 171930703 200639255 547525166 572949590 625026723 642111988 287595131 481400603 958910666 972645720 273025552 706700994 991854803 995453277 548685893 692040088 410051789 967981186 379321573 923556945 596961775 960052250 530840141 802995699 106658935 929010267 323419391 617282110 335252220 944452951 741556820 906079662 254019044 661991480 866404287 994106679 973095040 985122433 883493755 999583025 567938726 887779932 201356822 629757161 562268062 708133634 740936214 828829415 421479932 960379116 228662419 414236908 742541993 873416340 869563099 955144605 804287142 930890847 617637293 708908551 915654517 924993845 312415994 503040607 317963643 642581651 292484612 635893097 198547031 514896307 423786724 481187513 437175915 625245492 643127494 822134948 282440825 346677561 62627166 818055268 317692987 953612103 751904584 789171186 162832823 689870059 406641408 998328810 827369119 972279540 763397281 917256290 572368723 724895558 953816617 970366471 44871515 361354589 331093136 735361523 610358690 896434787 874124002 942003647 922904974 986983475 518500909 536299513 305951905 448284650 281255125 474892949 209068434 801187286 973111807 986469342 533978520 872949529 795276404 807402904 829087176 913294733 494555153 767789809 323978366 363445671 817556977 925128286 328362179 401047794 263975850 495600044 704508825 746321122 4104188 149240520 484224009 701097304 842368726 919900978 51601665 895737644 50229578 129910651 845317184 851834284 166658757 240344376 99533408 358733813 892242820 922186185 600464400 782373723 841688731 946864197 863926045 871305809 199275787 571473593 833700847 861159149 524932989 784231754 674386628 915297374 275253019 451239787 941162171 944919732 254494872 289500914 954191409 977896160 153694656 814802174 482670913 969554452 726587654 808516555 738133670 815736589 695280668 951700484 809414458 897175475 388384884 998380074 950897702 962350752 732356465 860863592 100792318 877098254 261409791 419743628 711483959 729663854 845458561 953287067 326817579 913341023 276656144 350582428 377619448 390225019 777031122 804514820 60415670 812062245 717566466 997039561 911946445 969340358 383029558 572868003 381567501 868431589 547173227 912926892 933354113 966333234 312172771 400700993 842907918 942585248 256369253 614239747 140314057 808849837 864633456 897164718 823124677 996516215 891468551 923122048 156726407 787819392 510990796 583533620 925242220 995119213 992077336 998383455 187105204 895821335 716288512 990649147 928950331 985571428 503997255 525242542 902790785 978267238 693092566 742103469 720328080 740854457 516942262 525172575 166753653 826779178 890897172 942017464 332962002 347844286 126023567 959778147 507717301 633275169 822273861 943112822 881887929 935904551 226015683 233809691 606123239 885375227 158960336 639320563 310542090 751203912 921429039 923830333 423160484 667646390 923478316 956739655 396960062 608255182 632171262 665846377 327073979 694613841 848181650 906393255 313655140 462025317 968328900 979739528 463340217 488278546 448563266 458864528 448346326 957138724 778082855 988121992 978729437 989038147 42430627 861958373 754813429 776288235 191172026 930145681 747175243 927440669 366066510 784157768 202178352 947059196 977792863 985771651 953811290 959196916 582191225 981266406 322748638 574419674 691897892 964304546 313833130 459166132 886281196 943260155 513720666 700786782 258596268 720905215 184573132 353384279 801449693 895121360 592509934 762376754 179049536 585789396 391793286 464932275 282188704 854315165 715343086 875728238 796025873 950571885 223382374 300332293 615579961 637745641 253135283 774189922 404706568 658592198 733025006 963470021 85667013 450677608 98562486 610894615 786709361 957818787 851123233 893529755 204385886 255990386 572756915 649620420 320491793 765512344 26098670 881592248 717579407 823429192 237418546 516468666 334800433 862325178 835522595 960018062 610083844 864241067 387455465 756293900 884920391 962374530 757617682 758612081 758405931 831343374 173323737 774952632 347510903 783685215 879292747 920145633 129161280 202869005 227429752 901988565 417463308 746975205 352829822 802403843 527683091 719849342 621039060 682165577 7568635 478066498 337103422 489520820 271211176 630502839 509380243 898294345 320048334 415397116 632574441 698673169 681757828 880719282 784013458 801343124 519140736 785926771 942525409 959983761 390754857 483645740 515024145 880666731 473502669 790088844 147018038 485051901 7973537 205940567 367957804 474264264 453159985 546141494 600036814 707689550 462963469 708066267 840494939 994726323 461142363 804156719 762918346 866320007 723387003 735763647 729376683 766732913 352068600 718212237 257697081 815174705 27637821 170109522 160255939 781296886 348007215 522421231 942365891 993675137 806960885 836255255 874382477 986218957 158455306 625785348 366836537 575272302 181482786 194906925 749584703 919542933 776632949 885352213 131197610 661636891 574721617 983433780 246969181 408121181 635196616 906730166 952009935 991559418 188811632 767375058 286346786 934022014 532655014 908014466 804488887 881399100 352226136 981817222 430053054 760488621 220899151 244266167 491494792 808121861 272420587 888914203 888578401 980183620 392833263 964511102 968117936 983322748 279595893 928611370 956007429 982582473 168551557 615946802 251138236 277300527 410318758 499123254 668959060 936503414 227028723 382262325 832889961 845323107 687062130 874945574 49048196 618249894 658724360 945187994 810018615 818296331 355633760 570511260 263148880 935269356 210542473 347040661 55176332 659689246 724959710 791670002 747971179 776528925 627560728 657369137 490720743 694979315 123086209 389213140 450075226 572680525 357157893 952978918 157868707 505988923 451330090 613420603 987887661 991152933 21259766 593967854 427133698 495198031 79299529 225438308 871687762 933024421 935044651 992276007 177937724 796192680 357457443 998228008 630162474 828971571 956905975 962564728 838381744 862517804 101054776 466322154 584944039 679667051 486580544 500691830 98692962 220208700 954496800 988982221 215646026 783036197 70080377 999764512 478065324 971579368 293297513 547068077 263781973 315070675 941100840 979821832 545230381 990177675 445816821 825699458 587597510 626821076 794233680 903698384 182870525 795661085 19013692 193108975 107220746 770181439 602894656 886345637 463182507 938320688 139611055 533500405 448610085 592011025 27931907 627577963 489023223 577934506 316162966 352443295 45684401 720238153 847172029 926209297 381608114 456226444 850020921 853198013 891558911 971928133 519397471 644978605 506356598 788974958 132910449 209940547 321544905 866679186 420893972 900871982 118278360 711471503 435259473 718998291 969596539 995232144 148413887 866780894 299814114 356447167 244670985 931715168 7854700 412942763 827147937 947453710 154405150 164090452 46496875 993081585 390517453 735851055 181766900 530761754 227716442 246888003 896675541 944683058 713184044 993575451 938791774 960083297 591770879 905952969 123805820 242549161 997061897 998241971 48240852 486423242 6330615 22629436 726081499 839896045 736178574 984564331 718010456 921931377 651521589 930042045 779233651 962972245 923373968 956687283 967536350 968314539 740550867 871930645 616388848 744963101 195797077 969785153 138906336 807512490 979809628 996931641 832369986 971794901 261996783 428606547 407713152 804399592 843981564 958545461 263713782 629917731 963300254 965313749 609706584 628435389 280312446 880461336 321375172 395039233 984105751 992267527 11060672 773132393 987004647 988585481 781396141 848737228 525667686 867025265 771260179 985736861 929489832 946988590 672857403 757576982 796126625 921286088 373429352 401717667 966332934 967481427 893857425 999473115 833751395 855634734 471068567 518334433 590640469 642443793 28511192 850930334 57478822 929230725 644169087 931812524 118338251 197176009 468539488 941576107 65218331 789954148 471222730 672602152 839038196 898213505 655635840 855281169 764850540 986015090 270425946 995930577 970958325 997568233 797060473 870245189 245897274 298140200 372770167 827805574 709266401 745732001 5109762 798744989 289376136 923966762 224799633 471873436 263138325 699918276 560315980 631808598 834432728 859968798 91439170 984160431 154758618 532826801 790152171 995589001 670119650 915007078 848327106 867374022 517786108 521201377 966233988 975209986 407199854 899527299 136167848 182635854 158816966 206876062 720821030 973836345 249347525 375282690 192261075 296344545 261510985 545184172 240070707 578081194 252948019 524780850 999580734 999963905 789466979 809395328 52151629 354289968 377001691 782775373 324938260 542831249 397232046 926493432 432907688 807338985 270075657 380418904 228045853 755265038 81340417 452838973 25390412 497789673 538348232 899063527 285339242 438078035 422114459 824693558 283407577 722070658 90740529 896564993 470183444 860220114 586479059 965841293 47178205 117824818 547890167 754511392 220716824 545461765 591833047 881210861 522263995 708204108 498438511 903848713 321333536 561459693 816602072 938069295 866227960 953534608 786729137 800076471 139477857 168527520 49317190 134255717 379600266 837499052 499963062 934611399 504648958 691686601 877938206 977078786 300799232 977638100 786047505 848350948 489035714 653930288 629874295 832607669 348484681 953357509 574192358 714418471 410496698 864606795 835334205 902963421 781745285 911054183 218881620 872787141 997187319 998978231 884082486 946090633 914626350 944822217 557495746 820831324 911926119 927945364 552769503 702692735 772502068 847499104 87124194 808239763 802484600 925988261 888861760 974418127 838919578 911236855 108461216 791062501 277504702 943745581 64146137 786995983 356895405 874883586 728957229 917479070 286281241 436663348 706894797 991284393 166044545 451303870 374144898 960456795 651648214 799653677 229556644 445218029 966895612 995178389 726285456 852132232 981873205 992882740 606066512 882053503 977872044 982154613 863639290 962254192 151028532 927300845 454488125 936163416 478988654 859061785 574109360 671613849 893360726 910259340 551757006 796859677 99175569 467435056 859792258 893733325 239967813 471554931 442269475 448961328 199278072 939760465 264129357 499033975 698018116 753578770 638537126 757952031 817321274 945579204 95774885 302644606 436715377 948638025 680218538 963564764 845025566 884486216 424256692 826898844 962639652 982252559 102872225 838267472 200439048 486747918 691229603 846932579 94877562 655810511 65242957 966924284 833594642 959395975 315495606 549141206 966553332 983210099 785603010 805574013 639082857 886428829 285337787 544110542 89608696 705098436 955195659 980245263 916994666 923220033 684461867 902686897 981076365 996343747 169223642 585971926 834946416 922475338 984128974 986102947 260594111 639238454 60753680 961625344 288725396 825019458 515722647 935398201 201683506 670445680 155912194 389411162 468627976 496274001 558574157 984603640 765840986 884413941 996507062 998573989 936818800 958292926 646581065 822887502 715735236 965295539 971054730 984569980 757647788 847986666 534745292 926218968 827514218 954662258 226980615 283030702 84263436 840199471 975892139 985755263 311801448 382607187 609881165 849046751 547977001 979561540 756011909 984102308 821732016 900754561 735112692 826145145 20980679 715913946 936916245 999011832 313177542 957947641 759471490 941419042 536957567 814549982 176447133 463625170 792605806 901307130 133356774 437250012 898780955 967468935 315085388 618207828 894776304 965669754 57323155 840258848 841942540 982603765 429688931 710430905 28102023 36556845 629741210 916085449 391375943 859060706 363858509 423219646 658348600 723708017 917856118 965774770 93416619 242488589 958226075 965508679 835747937 963405656 409105231 610917755 419368697 945534399 771461921 867140850 694745649 714792666 740687443 825947399 589653145 700519761 629482816 953573498 471678394 620185895 640775139 895497931 802996809 882192818 784698958 797117463 459544818 530436825 549957989 808073071 757465766 830982643 954132141 980901028 8894264 995730460 991839643 992990543 887526033 966347409 682505070 686280476 189983269 191700390 479216664 621034680 96236793 138921533 233087815 681373459 474899120 526398229 471293124 992431326 555284610 832968501 752407173 801084039 45202675 771097430 727597442 804111551 770272992 936560680 588056599 958957525 655795101 831843034 493458891 712711027 285912151 901684574 107115826 842149176 257155650 820523491 231572178 520521398 16967125 349614864 242400150 318820643 586414263 719693832 269827580 938314152 746593701 985308066 479284863 945018154 925298497 965889888 526900039 620109718 726073220 950968686 983511399 992885045 790686921 801708521 317789004 506481273 415642877 954950702 627572249 971415021 360143918 625107647 948853400 989292505 198166590 565144049 8410102 531857165 516316617 582342426 550608414 709892352 567712581 979782312 420250715 760088601 645610615 910787998 550852194 829135140 684998358 898867309 802750245 927323930 274126265 897216228 866691909 988177268 7991051 423419072 941665273 946780189 945608233 986197608 465218372 980922961 589652288 609156991 357130004 665312284 884653951 986279660 936030249 970766790 361632185 639534348 688256822 960334231 122808556 958776023 108807328 586384941 194985417 420461580 228050347 360641189 998584055 999981393 375022190 661069238 733455266 992156134 276871547 849141335 769721824 976580013 628540071 913991945 176586287 788191362 864002823 890672407 955650917 967955789 968772652 977210301 186639533 595478437 233055112 579408498 233262252 546908729 628778442 908274896 694093213 780322070 338020335 987855244 112507343 394924251 73459788 192017010 133032751 771898167 158319847 910872214 80945366 365325397 181207078 447659730 978209548 990007825 783491457 832111875 945740103 994583730 313006786 332313060 164173697 967382377 984418975 985445217 791635829 874538285 745916276 919208766 807650980 994777036 238326164 832941730 904270931 936483211 305070870 401199537 59518890 446804412 612239963 710157347 291264876 969576116 2044497 404373040 411309338 489895295 927792624 961385584 162287353 579700913 846869916 857884350 764348632 820061574 914597101 959652427 563758790 999787998 602066715 627374866 725353533 813037037 33598183 856333847 844502822 880995615 19044736 978907849 962732098 995578703 917011433 937758445 119442579 819733569 887714408 902161542 260075977 700142911 717378830 856167772 843395946 989695982 737165724 893695271 777493061 861688313 264095761 267957324 925292215 940528477 332771577 692634836 925255002 947951021 864424586 944207017 456037085 741994901 398722224 588458192 109264120 218970990 913117849 944374152 829204830 990806181 557951898 741036017 171095329 207344572 420865744 530934828 514399081 933823643 689831440 847209062 173726451 475579875 230879499 899432494 326762234 550292827 865859896 942800130 740739042 981993885 814142349 822542941 640406096 677132112 231030331 722604750 788496122 972329353 745278017 917059879 151528712 739373474 305716758 974843855 976031106 982258694 573368217 756693460 943868520 966358743 846703318 863927771 548626579 640037230 316407432 408939770 503945921 755934553 978782174 999429969 318602205 459982379 300274178 560033250 161783496 246180683 433104375 435486800 442387866 519215621 128055823 187559656 93140570 656285078 478228715 579056913 958081224 994980629 792064083 932385468 186574052 445864022 873906750 933258692 428834806 805228401 875585309 933922204 94350232 283480758 828629002 863606979 744114092 946763044 344638469 889745491 396466273 707649705 80027904 976455633 230892569 334096677 289802514 752166155 103548705 368277203 598319786 603818790 201291539 979666974 389952151 561895409 374600960 615467765 169334351 759118595 976444965 995319101 717183222 824064028 801799141 993998592 63447294 487849961 686785895 712142020 347667404 921090684 359596662 902715462 37022348 679088549 563192984 712242340 764032277 941288898 815703125 830335810 635057322 700222215 860321062 923679155 867105487 977021377 614619147 758789739 536069309 742037750 495288578 902731924 942267218 996177473 582467798 748598091 239628837 334373773 432748314 894687727 113491612 537982302 304596933 796290434 404196175 562823836 117828281 728604506 961860862 989741135 697408311 930416939 326672542 825923075 533969525 683814088 860665980 978852559 590548525 730936067 175384644 396539376 648851074 890609850 874382568 878250444 728236666 761001422 91188827 913543936 63969764 759636736 897939395 921760659 525868859 805608302 39340757 134788599 467028486 886354483 834068392 903984879 934660509 976464963 533721508 950540396 872035953 896099981 578612966 973812367 7945365 593822215 684999956 937114482 492884338 806785267 209493107 384200512 224527882 420709410 974881399 981192464 321713199 848866378 684090071 706457164 698732284 810260709 516907638 865037064 780370669 817343127 681787422 827831446 189526192 365154457 110399938 206717115 920133706 932004263 880440995 958352381 48465095 633423518 125585025 621886247 259387452 260299358 853585015 988365670 399261009 477658859 124148892 583308081 878225711 882121186 595285377 784096169 481455751 548743736 232907421 945727114 758640510 834879400 790988805 977577837 689804704 778651861 243090493 583746659 312217906 640456627 199451058 653778611 467559408 635404425 19037399 386165232 698608321 699474853 73203908 821235357 457891650 652857360 355734541 788617746 747316728 892867300 196935536 662610185 877828155 937320954 508966848 998762584 730428406 739446933 9522830 650796118 645338713 962347144 65475309 635715890 385884435 689182986 787010354 983770865 566037431 825744279 642841761 666274144 59457022 117102169 764692309 871239790 158571432 944214316 984389205 994812387 960469016 972262737 9080477 200322291 96448167 127989967 280521820 545081299 169934609 482625343 147595299 462874819 197466486 482582778 805846286 989490712 302701913 736223399 702068914 791521735 971561027 976586438 615876592 920948478 696861870 773318366 661368694 685893131 321950496 973788050 108129620 592643475 536969802 714761296 412592140 420877171 326816736 697498444 912391905 918842403 848157711 898260035 273335920 775613381 408843572 974957203 664526885 785697259 79437284 870687174 585111728 743715673 344143257 710069008 386695841 914389918 978734773 982890247 766767299 849527897 526429464 952937728 692863777 823993605 745662957 774567270 116572657 504660448 621574281 843093420 622385307 725368594 767233906 981652820 700639595 871049689 781756649 881686287 965016678 979091696 55628934 914093847 900206769 997378338 778886052 929492951 726027477 823201441 390556780 478517544 150780682 918708423 997018177 999976478 388791399 860113144 412308043 455551928 991938911 996775310 288339906 557921809 479127524 765669199 967160030 979051503 162534180 342904023 868748233 952250595 245761778 464386790 500471051 825766125 966367151 995067109 947625112 981223271 596376958 727141269 709372114 921827794 592793190 754635159 271007269 317011891 817184010 826945861 354704421 933165524 7128988 990373009 183109687 837393116 592277522 989979528 967914332 978144818 309525569 440574489 679724964 899749345 768347743 844140083 189783296 841858770 893105287 985948857 331932850 774700831 59267204 163126262 205322881 929271780 413243905 687985822 720953897 768495217 943356620 989117974 188395723 624154645 255356744 819225733 640091045 674370770 373580860 845769699 39662981 65694176 534809330 604609905 153766270 964636936 63945319 666922617 869057366 992034747 843738321 890249853 131937111 320838661 70044835 94328815 243815396 710470057 903088526 946413020 483291840 826189494 206554960 532180182 739460608 811417907 852214888 860223239 333261198 922821531 618138679 755931190 567408785 710411218 50183282 507457336 545265082 946724259 589902020 706502924 925888199 966642584 423879533 633718879 721762238 966950999 561473433 939073359 369464667 701833028 114768064 635936344 831979717 919224250 976103707 976327559 960069886 991059824 259084196 675005958 856457001 914387137 187132401 912060568 751586246 833971715 464824653 952549084 273442201 696434773 198019957 268684458 383886225 950379511 360180163 953068516 87203806 328138348 7528465 213033726 806361343 909283999 79744005 354925624 501219048 545585571 132803287 530575690 468649948 536516371 210572508 726206199 586251915 589525266 967572038 986943818 787799706 832652142 201955941 516685976 280745559 396675402 129464169 557122554 633913425 827912828 244257293 532482446 495955115 821442975 14798956 911984650 19763879 866903617 707491375 922340631 349878298 974359892 340169873 436327392 728094680 889286952 86680143 471781369 661764380 973544189 960885884 976457766 113070448 914189177 533567501 844237657 403717808 850801744 769085603 928144681 779839383 844453623 814742713 999238904 549932808 763486450 510011346 956431164 581033730 961735591 894442082 960261497 375305388 898278086 746504612 831255265 426095880 639330785 769694131 995981879 688795491 730914255 854888671 961820385 970628789 974139307 314234202 835344156 203490115 944251052 599738862 624309219 48687781 591145557 437592852 831601198 270343048 756970147 80806925 745559569 753651125 766769899 856289396 919342396 939937758 940559185 576016662 639175563 963963361 976638860 165532599 685948226 137784285 312182331 611054808 765803325 224622231 907870466 900172947 912150523 166212039 196132133 14759073 620913318 62697213 765398170 162428676 679791405 806291946 955337604 507597162 584461622 723026647 880956229 571471560 666719543 124794640 877622255 195160620 826957198 791811077 950052837 65778522 813640666 774466859 878604051 446758353 599066852 39127694 270324358 110307804 533184801 944185702 990510434 501874498 534996857 500058224 531219384 702359158 883005317 473093855 697378125 262052022 864101812 878385368 973925024 72949404 219916097 462020125 761064917 293842493 584181135 797992788 862031431 723461482 757798804 254053784 341198389 355883795 848364061 695872049 957288749 712772983 901161470 893038241 941574416 385761310 490854452 684260224 885542965 755287979 811324258 33103962 113049290 408149240 550728584 638174126 689684543 795298774 862027092 916855255 981512571 359389975 627008144 481386565 918196420 26717805 863415653 491107791 740633488 712877143 913175893 357893434 935888469 372104433 397044931 171479629 238825431 231972 452742203 278853465 594332850 403233204 700224004 141690337 342507268 187212883 548906790 482109247 838615018 223218994 942814796 59749651 323308295 258443610 542411827 697638636 959872488 224809864 696233469 199741667 933163931 859036463 936894934 802023281 821939929 34787057 75385431 206442799 542076408 225109345 914140307 466754330 953318987 89383570 406512646 864296670 900656203 140100811 492960457 97706815 261437419 501267440 645616363 478610137 987550757 771697628 860367226 160810261 909951173 223080949 634069311 459912496 828460267 992229557 998224190 304579072 581875446 641898721 992602064 62639136 275156323 150358953 513801765 600643290 685076869 706821597 977374352 76095263 118121000 609109118 778732977 96667955 728053532 813841964 837120418 968107183 998750633 301926557 771723718 355940835 690446676 111100419 852677346 8449009 168936302 331919358 937443803 962192146 968911089 911229558 913264401 738091293 998971466 913536733 931906444 859295542 926489527 519913342 941283343 385876570 540954869 638246960 953383097 11521913 211211111 320967576 911048077 792726284 908766489 565294657 839276669 526031929 599063610 490694269 614902374 768703331 870869690 166171260 881686692 618485353 638177297 235950903 406090272 558163361 825876327 256388380 401572880 74426108 268020319 805852456 879600894 829115071 999569388 651641225 770889878 4730862 89668420 698538980 968658428 531416150 689951249 826495000 939343399 648117578 837542447 97954325 873449508 163478956 531130506 264215146 453046228 183178258 251102301 291926589 862290878 989375847 995960980 159880298 833665222 972914996 983253515 467583146 873262098 91049547 416336402 378229908 787379695 73715792 998010295 919660308 969073675 516519919 665891980 738999258 762920604 82270221 604046440 118956438 243208513 126384755 461079800 67468038 467134240 228043694 540452837 705077800 884269467 252721154 721557555 190524240 406031691 306704514 877947307 296067146 757039773 127842158 875930269 653259539 950531005 703564241 845949504 963574493 980804187 372055778 491936258 649983931 728264742 500634508 661057455 564880081 868211392 369533872 406285627 177263602 611075773 732841310 759662021 351821978 572668171 433895612 459585630 790936469 929240571 620494525 810923957 725282435 905460528 62469712 74327469 137260148 278138929 192544980 579788004 675334733 909189526 738482748 969365251 658368482 795628112 99600742 593741752 189706289 393953964 782520997 982170103 405095131 876582590 441511724 447776099 855704966 979534745 825333153 951811641 951017660 961203016 189457031 214929575 929393465 964901403 319885354 607705130 856613037 926718595 308046696 686612118 24210458 654965717 416262095 997930786 611860584 701416905 868486133 890925151 680489491 827017156 968957671 985840028 626606919 918254349 271713266 448114777 947684106 975945039 841035588 954316464 92101104 811414381 398167674 458544912 720843073 896076590 812333920 979562713 72491449 563533856 390271559 765288738 301530744 371250917 211259699 914974863 637701136 704584901 903684125 976486425 496650436 819050965 652000287 923275728 534979279 733500662 879298556 964159981 900942142 983874834 589206044 784971232 87959557 703230876 905615680 991660484 842943876 985354957 902040410 970202619 351495505 826043355 147712345 932167655 756157662 816933071 881484900 893139995 407403485 455097863 195695651 400102288 750511501 962533087 740218881 814435085 506808746 619442520 298062398 863999133 717339840 893923338 188987468 347611176 941573530 981557730 29123915 516302313 940596076 992083243 343871583 637281568 787687906 889116667 133167952 389937603 112118677 883776568 669323998 697200429 140902623 777356777 647506374 747443164 742461382 837606729 31139784 721183796 390588373 393692407 642304225 706538777 864037246 908822438 275953149 999313317 605407715 643333442 538447153 960233120 707564594 855213663 703537946 908729482 425859803 781925312 741908259 882883556 403534337 653716355 125188510 562486523 412728337 847514668 100767839 602865396 968182323 980356702 537504582 885563127 885207470 992286753 655893266 661199307 348565950 656661856 74783489 324306108 203604628 937276628 727397372 854774313 177734064 994951046 967288433 981510506 687083257 702180788 956226144 972714993 738705361 909616826 736137373 783450291 131541912 776978238 562439366 882283615 761887744 994181529 411245833 767469268 429898771 931030862 111777770 412086790 561456054 589867330 848940614 850363581 449744771 806809296 27375078 312236734 77048507 587404934 532450939 698980905 148675180 225129343 444213340 652787000 508157231 635543372 890017094 958751205 735145085 937889000 272363213 305546982 758461822 944702858 749133603 851742836 754291497 809400420 280277024 529229133 417815346 578689045 31258971 640243212 213289764 472901915 601410905 970187427 596846675 793120731 228877614 600467192 760417602 946073052 630246395 731299999 980191658 998726611 690193426 815596685 635866895 889721622 654158402 830831137 851522136 960197809 913232862 942914565 513474070 925369124 417605456 888605681 444369793 772244550 626240810 628888959 705913987 993602642 594441357 770710015 439346721 929553264 474236387 803265110 237480322 259138650 307231300 954499134 283326304 545492822 497402595 563634329 44716344 465331601 974175681 999986316 949722403 976678585 37500489 188432075 320563857 639345469 417077221 618049440 715820919 994086072 73389809 441782879 206272201 363891409 185259431 775099377 650723957 695926993 794730979 963781251 612503315 650899359 872452859 888611932 190670966 305663680 447933596 509376035 167466063 452673542 355742731 385295303 45966262 129566169 858620247 880101215 758707346 778403230 98545826 465194609 22001917 608522527 213196556 359339953 398853446 972615519 248026625 991964664 39567220 622142413 581492682 636552723 343880003 764595723 799196137 875020508 262896555 624042101 489830437 935481356 634031498 939381623 627228099 875912251 406926869 467524559 393528155 645877244 163427605 188744730 281733620 686226921 251619612 316027357 103252759 648191452 210784969 868057272 246449132 585463933 381131795 492986474 64377114 969268371 923957586 968125617 365571050 470716110 359713083 702996250 853297970 865701098 310545802 523209074 854733225 881000328 721395117 775070229 238589920 323456267 989648179 996875307 91599231 607147610 93372821 813343822 818478471 928561901 936196872 965313540 749376337 793981240 958456458 979193791 839634622 866785982 527008477 588344910 768997526 917128569 622444832 715092707 33701427 697169075 702137595 877616528 188836927 338664311 104817536 925697368 774645234 839251294 501411716 795711297 15987864 790829661 111514110 694200703 727125548 959302222 371070772 619150019 381447424 823381315 344668783 724852440 445704321 801912066 751870970 809326893 89516511 258063346 560612173 721367054 86880384 631481962 687665661 860358149 610793134 750538915 352981851 635378017 968933611 993972968 301062006 854668781 168822894 255393707 879316990 965883350 306847853 898155241 725305345 911285408 908568173 939797316 540798086 604091307 158504609 705626263 625986915 643165797 165157650 633923744 58836925 349830559 487409322 706202559 429434031 919605492 384152916 809446246 676962552 950045449 295316600 449342514 997012207 998764947 957706982 995001495 487744771 530099360 936530866 961513171 167869271 194592759 39470893 530021542 359943046 852494314 625364649 767736535 464755762 841564578 193830332 621612766 147945496 787743496 856371910 988713394 593711272 659107231 395006401 941182324 707154056 768320634 879520662 903531425 689542971 802295512 943193176 988536404 676370744 775013942 753974576 792417301 370583636 395685134 76384011 132127176 31424900 500836534 738013051 781963686 302820114 488336730 183559196 787041469 716132020 943062152 768881946 785424985 748375491 926280106 326533503 972784154 422154874 916216176 981104552 994724734 586658825 996649479 179360994 246242216 70757449 71034893 718577928 978890168 258669011 903403589 537192308 746794015 652741022 766073250 565139554 906272891 245983949 552819016 130140039 363651940 245618905 785736495 614382490 872003239 174517666 210977167 854134563 861537004 546330885 880165797 943388409 982970319 187279512 325615360 946931963 957265307 727981478 751529876 545324433 725455530 431448026 693587339 572993443 773333141 623990791 705803226 374570482 861980180 589671278 917750226 846672631 850347137 972378903 998247689 669866754 827819578 552659215 632974115 26500600 191818443 905418312 966623621 671096834 830293381 301909305 536355053 394152092 674161652 453140392 728611656 529482490 940651123 981250474 988881947 771254643 824337510 426057158 866240686 956621810 986467351 95453886 152595118 525294015 704242227 796098759 815047700 262358170 972061917 780247003 883094813 162151681 231278892 250977925 932669757 966156346 982870429 581045727 945666399 96284268 286450302 133266335 935212033 183949472 673881729 360703066 602200885 148899366 841631876 581843973 794762023 845528323 984273829 99167196 631810045 783753094 999562127 889405532 975459979 841959571 846795879 80418858 516704374 666562041 694685575 103901364 152020992 334649779 576916612 46344815 786051320 845584674 889098740 587094081 709770299 252833753 964838780 416046922 580177976 335693575 610575785 316839739 680266200 600616537 633155894 978256404 990791232 570947910 779931588 449702723 997134987 465584961 739948601 722003298 875128775 377881600 816381985 394743132 598818880 51027108 701626513 352737811 545149194 874757533 905610313 581145136 866437289 676481879 830558634 290104607 878505139 481406382 624368939 788000254 938133372 409724784 480722882 452159599 977499810 627468737 876004821 460941176 767444535 440050173 601968763 291792756 420853562 298454068 549562979 466349936 694859908 220017678 359831617 494858766 832988270 954610986 972481765 772147232 981031713 392934066 686330169 548697680 627213987 258720025 660615911 183126385 964780525 137697895 605123792 607105408 769146067 504216051 589832602 945523744 960645872 31716516 211355691 723694243 953384724 778425077 812391828 195814517 721442194 758065537 787592644 650404937 934454269 212440755 709092093 967060517 989702210 157994198 414465986 572164541 938613327 851519010 974924721 546448083 760028905 76438863 718661817 316078877 326021915 864840054 886123478 320112139 840061496 867118093 964387086 497150598 969761815 192182802 583817599 955333197 988851084 268523125 589239568 959248037 991641703 446815013 852953722 239898285 304183386 178723733 589370701 634530335 895095211 907819737 942002237 914310080 934692957 877808671 925371839 493580184 982547697 488255442 673869283 98284752 405178517 301776618 432855047 925005801 938535434 428093120 458981381 744323453 803147507 474667824 903291546 4800920 8366097 949035934 998724750 720813885 726158417 311381830 455005975 31752544 37560528 285053582 425878458 491988337 849742427 290170290 924211698 473108133 684882174 405777494 955397010 180593386 882331946 618280363 732434625 341526285 883291259 103275884 551349264 86438984 387655689 432196009 969631663 884021492 884526986 778468900 988423786 58687647 94916279 89191823 97960865 941737894 988216752 914055593 993805208 330539841 569165577 66569538 771711677 701865127 803238219 284475051 527941616 165840802 181035030 503826065 523129562 350742634 829207510 730393515 937709755 41799671 732644713 496472880 805481507 696178544 970829271 855977177 881985559 415337099 509795717 735150754 822561911 953726963 990124780 618007577 940841472 14451561 339169282 491766266 809553710 570722497 993556946 141831102 609954192 900902862 911218192 837881106 915018401 431195045 744698286 418999111 983366057 556832477 686396891 45331908 994132643 158695511 167166416 336307828 666473607 142843293 697275257 551652505 990411937 678517876 813264736 251742017 508354098 590898755 706767648 605799523 913914184 160318318 322153572 638541389 774761024 421793839 749929576 290748563 477113174 3411876 908658432 480790810 955425126 732273805 911381210 381814554 532413378 702841169 725013966 831989169 964526936 153143200 243288204 909780561 970988728 27849570 723072813 860382664 995251651 433010231 674167402 761530511 943262201 848266347 910314602 557344112 652513067 843317076 925429975 63278168 295540690 219797151 326225280 696679538 838074580 549075491 759807510 884636334 910998340 447137177 759091014 530920818 710702630 32059916 762067089 332746686 889984718 276144977 770225958 626468831 771293611 524957504 553213113 360678848 936370459 263231252 322388780 627592203 811095510 258481630 670794390 662916796 864861161 450435615 611179973 645042694 881228133 424213574 576452938 983628949 991514383 23363873 183992926 244450733 268064641 292991638 886593531 338263571 752094228 17991701 844863991 415483148 596141547 927082987 965230569 540683137 892059403 648160689 938585237 926558085 950358616 837084776 990811777 930368314 984672096 651788271 894559199 110798376 880654429 906879488 991688082 822057790 867271541 556525371 753699899 452881035 532994285 356463426 616779839 154014998 865805093 518775397 783250456 373231002 688600948 548691316 981129830 849091959 896731614 42160561 643758308 857745941 863833057 874748724 929883482 858581183 867535078 944308715 980810167 219796814 996396409 411933690 503772431 896841446 902186230 116498532 998637948 920427086 984259937 243100339 657333363 989566305 996492434 478624159 575105959 941170861 977372374 372588719 652087885 705046054 772807422 802317611 973323561 25192826 55725970 548211488 863173959 753794878 877647876 415668200 695648867 808972478 822260429 535011719 839059287 840502269 936426823 562957536 586931355 312886086 601137318 145037177 469911655 858311674 998812607 739667457 916834691 715932082 922567102 848745265 998192188 393762583 501629222 772322460 789529337 516681453 919353208 572055141 625191245 133296167 284709553 288652152 916039472 343976421 597226246 958637033 970515026 530990623 898839594 806091186 857948913 84134191 724919506 116388822 756307930 885334451 966582292 776236258 904561972 106169847 669806151 960250157 965831269 449296967 808216039 892749655 977622530 637032972 725806770 831034933 941812162 266891472 305938961 769280944 859283778 888222843 950242878 246326720 532342572 742433635 993941430 556442900 605793527 548988171 700110113 993963820 994031961 259381112 295144176 732737417 907888767 394082728 788908754 554445311 891286578 719267063 780229733 138203502 224326175 193989371 653735452 291342973 489961150 385343630 805565559 746148939 776134351 722615811 913873088 264392428 703233489 549114097 899031687 465132913 698689893 250022502 796787207 399062981 658732974 173242596 940408005 371940237 471003389 911564198 982529699 498924919 901040048 4887113 155124145 231497589 829591223 844977531 932021919 899164333 936693663 600708502 715487239 569185114 973670573 366581302 889071055 466965955 527772737 863679879 905973620 795328084 797030238 76165455 390391639 789696517 830673041 487289709 944897383 90667047 259661213 777552975 830013582 561765294 948994503 53835351 649119051 674379743 721388929 270233242 923183019 135004661 210529270 299772989 541506815 91518774 811595308 456628275 551362350 928530785 931245987 979959725 993436644 320432057 483769327 249454326 273455670 577928760 884998998 789694067 850174285 128028686 445087478 399961416 494332819 547177540 913555400 98800792 423811354 362533111 970489511 481253984 554230393 528490756 600697411 363379882 531100593 386480995 598988081 215183897 434326243 962486416 976389741 270668970 565465522 922027831 948976057 804288344 838454776 40166965 235368332 140141734 799783050 137651478 488326374 456889512 965898954 731241253 918553640 803317269 948825014 570599514 584773530 593602587 751403020 558338809 617883279 851219801 946621640 291149086 778679313 453180041 986067890 736255296 831796305 304294799 755552746 211656399 661105449 489982700 957405072 741388291 972954416 123389580 651364787 434582134 822132211 893997554 919301040 597502803 632129379 822322692 852278743 217169675 455128645 522334869 721614191 343338322 840520470 633940372 648192878 650365966 953286575 698581173 990752469 204875454 932314305 50253392 891676622 231773926 998421487 945136024 953971199 960670945 998215169 457356854 974185016 495245115 705526570 326191111 838405474 586899597 735557752 194709909 354174492 579180482 762163494 430691495 723506024 156377441 685581059 527483138 712066401 994164350 996847914 555377419 902060159 972732962 978341126 135984424 652771662 329086339 925219253 255463081 541019269 182290475 503867964 594886070 763589656 689482924 814068749 584113292 909769010 889249376 993692095 845297520 953885869 601048855 706188759 627870003 671102930 847488523 982458752 739068999 764879569 5840602 340781545 536570819 648682888 557944580 981902921 875620365 896116782 781047590 950495731 967938351 990747838 616452317 980554379 260007167 670383188 11303907 994321077 75871258 761304812 404477126 973640591 701784710 855888695 247613247 614689111 547333320 566964733 154139521 840470591 957983049 959540666 248480964 900972158 206262728 570295899 40138391 646952220 632952919 882212180 119974237 710738695 608555352 611103805 625470120 888085365 66611149 663409967 493111340 606959664 998276351 999420925 307500543 446949609 531758707 840827310 87225437 219163011 174954006 913331277 506882445 857023248 391545503 739244803 264013905 798047116 163528672 209268671 532967024 980907074 563273979 718372204 289120885 502941222 761304154 845474131 654437368 659243711 698028181 943835341 909838068 968713614 936809759 937686449 474173964 610189372 650753819 946373485 242720675 962538683 835994241 927350717 772357950 784883342 496218619 525252565 664157206 844114354 513805536 580436587 601584541 655551178 235011720 346316292 925143974 985779671 56717074 395036292 511971038 675043073 356167495 424522606 200848867 352518175 539658327 873039305 651072024 759540417 853661387 901996452 806267110 880547595 730730211 781288935 899962994 926572966 914332294 918795421 862949338 969523605 757514784 826553318 648796896 704360719 890054850 950133385 552052398 894499030 178643978 668175495 728135978 792028687 395246512 742868885 679168613 948308158 933494235 941886498 297776562 944517265 793934955 917412665 926656007 954330409 278317003 481644996 872698590 950911730 819977734 991167726 108981043 793299263 253437836 803908954 214365927 816247661 633406309 895014365 282248749 724643206 259458853 291075270 754409179 809214198 758678991 983546417 558760009 784859190 293774715 583759462 259497252 781085864 130457052 634368698 652310704 868609967 59323766 83087735 592397312 659294301 697894428 706661824 928404429 938680999 678045161 902377743 409599400 514015907 985428281 995782567 624352498 803610617 458751865 773086953 648078508 930565975 920636727 965881699 443576307 493223755 750769240 996274793 369514612 863110732 667788534 901204369 131542862 424632655 5049422 703123349 466676968 871190207 915560407 991840906 133762204 457524907 240206167 488261998 908634992 958751965 998539261 998689435 107307022 872596905 400072993 852056674 76581000 689758037 104725213 628079068 527247845 929127880 146164785 575284760 599836610 906636494 39971998 68634778 817061456 868102958 287042246 403526667 342447777 749196017 533987154 825087676 482764257 508653855 501540680 825009069 870365401 947651360 212810730 483595977 803871126 828290546 547024195 837348106 327680997 634869052 843657874 929958343 469507526 612213712 622560091 925056097 695767813 717308190 669894576 878659572 714658233 991012496 356517533 434239692 369576526 798313424 858366781 976186488 136996008 309297460 403720196 747482053 907652858 962414077 523237629 669280081 129189072 521262111 630138275 752112199 146476157 818258335 265462428 707771191 862143414 916520478 44533767 374827877 139761880 403696194 68731840 929137731 920548960 978199675 191704832 615112755 497787895 628690287 554910094 859909679 935248962 950996631 980566974 989955890 107774875 117364564 755879893 829804696 892157751 929674857 498585971 866343778 672206791 912760245 416038229 499941306 887950731 994708859 504708870 700892013 679387739 957334951 30571506 309726369 287040548 545348074 763449598 813128866 888669760 992227484 140682166 651059880 374180275 425422855 134790917 917804076 641738404 916149150 132230166 920274301 111920397 316044553 181037166 982274254 719216166 748733933 504397784 870647543 53796466 763062891 775446339 989430964 722156094 799732548 753464836 819863311 351487649 551161348 726186235 866771057 108665179 598545240 457659218 816141326 260522417 716213809 103294758 558846862 509586620 591578441 174783939 224149077 886248450 930815813 455140771 481209233 705769370 914448902 208816426 264357014 802459861 928397344 901899824 950388007 798980781 908171072 650186129 716932709 951785818 960190852 995562508 995858625 436310431 627117201 612607825 670039303 950493680 987503868 325866244 623519957 258657272 344464346 43648331 595421595 186977336 536135764 255105876 403192982 191470341 235126507 981253863 992855475 824361148 927589949 125725461 753840837 687635963 916137760 211947305 877734199 384940400 808633305 398526092 459577226 112959003 259731312 571941022 648151478 407078096 949589784 351324943 938853408 2316997 532956475 96292115 689431679 187526991 483040310 732159356 885272189 710703428 844845620 502881649 860054363 659695947 789008188 315755574 411781073 350527918 675580714 252025466 984300506 695329362 913136917 422012286 954267167 432613062 974235309 303952753 832238332 221428720 853096035 949539472 998806841 228736169 406773039 552120095 742023872 592945053 693430078 774898899 792450607 395522531 417158312 754875864 766929561 434775563 699852701 174072039 675751176 705215098 810367088 355008452 676772604 335224923 377213925 246207825 546453668 660619316 939208791 483256273 675404514 313586022 699572758 324502219 671916007 22411882 270593594 585721501 862649670 739127564 792451779 809020267 950599900 394273709 609193780 916156005 940118292 177950378 790889022 962931734 972484456 529398765 582417887 187563830 211638587 124112387 816144051 454703023 755050689 198293936 602075431 699671425 966296650 105270248 726959039 555074772 741259088 967841940 975655744 974951270 986787247 856132479 940019370 408252523 565342826 611653043 894137722 213381657 590318378 741759254 850279161 23929208 537132981 748525516 805627835 662382848 915575817 116323884 956603960 206507125 723378242 734010742 792747323 516663068 954319580 260297683 288451895 273235400 580522295 594719372 829888818 58854915 480038444 121732583 364967942 210066880 880687377 583105810 782273959 905319039 983122690 647132258 780509006 63730132 113371592 563044134 891726619 477452668 754572418 768707523 890105787 965926969 969620832 260466083 388987166 670571395 947294925 67607670 248095855 54965016 403354582 418347342 929868380 243903094 700389694 216760141 566347163 418629309 940820066 150663922 300263989 318501397 744295164 144462769 592524686 313874943 898693513 569054148 926802595 660996948 835053617 196118802 744764000 613678375 689238835 113745163 279954717 400918832 408594373 645589058 960016860 464784278 850393727 574619524 959527242 265910458 842752052 394322474 445464671 698214055 809647213 73593828 225774609 810507093 854575922 544149802 640028554 482421628 580114534 499643939 755802849 917037035 925241916 327648407 740567752 682261630 951506107 783126463 847562521 378598151 659285003 560002363 583370843 587377509 898303583 171380197 274299203 757831141 800310127 457050353 559653823 213072652 902213741 117278317 753690130 110359547 551240273 479035927 860545502 982560939 994522837 790204439 879631856 494549262 943249807 745909030 971748937 576299111 667833548 272985945 545677504 88505044 573737938 917132186 959429301 724101647 781566289 219388828 483729196 578462969 977673544 262848637 794556332 855692355 876386888 315477945 381757352 126970393 850496385 887530398 937372374 720630977 800060187 378630418 995126759 699869797 861212416 346963418 653838642 163449944 856652511 455635029 598305186 93999640 367176392 268712706 324503979 789825422 970521399 813969385 949031850 430108895 635194140 271846437 488687948 348340305 911685084 158440055 197810176 17674025 295033117 332788431 417322320 633130200 674085950 747077444 912147164 59802772 499634531 271573250 557796247 61176813 886192421 23288954 650891416 849777213 909275732 447475328 969020223 948942685 973966386 301102388 307688518 196843996 695329556 725809809 868175001 949166093 997219809 549479209 568152189 308475777 572325495 54318243 911680088 707792735 917806178 456331314 648226589 130775071 142466242 275756140 881864387 338694759 549820153 503900890 945236603 531853170 845527475 48803991 797529679 404649138 524152221 401213970 522899962 315436339 777420564 800262401 883747887 712602750 873723601 139590974 618872078 322175330 881449663 584797304 610226689 411880261 442611815 26402502 127145515 417091111 580975470 226664877 540541223 748311782 862577224 829390074 990320423 718826774 813322160 75321790 375621780 641437582 869567742 570747573 732764953 469289303 894405161 653640258 683967254 237527241 735228622 272551077 651135781 179081016 961704976 972332921 985006261 68254735 256133083 666518399 997595593 452743340 860290292 776298609 827879867 207327635 866122829 865647366 944872620 929243899 974748050 853456106 933688173 507700134 712831477 258489265 771133284 454100953 671095463 344882306 582885819 48462126 972824350 680058496 800739368 438603383 492556097 690170413 936082095 850387433 975494943 829721305 843282104 63655257 539277694 630614085 641294808 787529078 951360454 425562695 781063248 467551157 768452551 851776765 923367053 539004598 644633207 876896602 966451324 542797758 763015411 47576304 854094040 490179746 867673358 69374493 794284016 965707286 990407318 835599732 920845997 479108514 872160451 222470576 402210706 975644855 978749128 856630107 920340913 473904030 631097027 731906849 893367979 791747031 870011060 751911598 758943202 451714275 834487973 599199501 667220470 698161308 699639727 585304240 915052233 871423069 932515265 229934369 421600342 970231527 979688011 934472038 953027280 351821236 874628437 996446086 996831617 459248582 947333951 804855345 833867829 511814958 896016095 787967663 954875964 840242915 923771431 566697927 640440999 454514223 626117183 132513287 327757432 250243625 260624880 594788925 941635799 149794628 975485136 982765151 988179401 612135207 791670085 787540017 988299263 711213856 862629759 304955923 444574897 87588502 307878963 170053882 940716470 102374629 275034576 38085379 797672753 388514496 867092170 430821316 863776476 169515878 601649834 494054018 907508377 732747241 804443303 950698484 970092255 687848540 741919362 605274473 876650059 120010643 319528338 692516714 784077752 21216643 272646530 529197027 548473660 451842990 602549361 515553346 661043365 487210420 736105708 132174759 222531823 604326981 658293367 344548997 498203949 291641356 681458596 544810535 779608623 652117265 732307163 807158044 979829068 273699683 581915440 832836362 834001027 59639087 114406121 347277879 459762077 116724951 611485617 58451910 583835047 554316751 764953227 303287410 679745719 446654779 693303980 685511282 816907902 211061846 434379847 341441279 525023403 675895517 840807055 463796786 552723177 197312968 608255965 547617339 575533369 870090288 882611874 385695738 988863389 868343308 949805949 761674311 813515663 79449445 122231866 276535282 783052548 332272605 833401840 529554213 758907819 781809016 787928000 831250143 903596150 29277575 879313331 220796224 297911167 648259516 699821847 554864861 603776407 688998146 975651071 399097906 934616886 980095915 982793073 91712434 744467025 444386130 839373095 538879791 688477725 338725386 537400768 709509545 845666420 356066325 728178562 90881464 488500409 796909534 871204455 754724610 835368559 1808929 742946793 964025915 967685402 673086952 857708601 690627918 925047536 538743183 652147559 862408679 945786370 786463446 804846419 94286624 443491927 301487971 930293682 372307469 709670256 610331627 783227739 97347872 352270191 363005610 984412009 747098949 853092345 862388298 882196584 15643727 836983990 392611176 510031643 512667113 965347135 276672013 756177932 139210648 550114506 969057912 979442783 372165805 590057887 784597873 817002022 674882734 691235615 49384171 813699355 797342181 931305656 491684813 866558609 430476942 508021970 585576735 829790264 471550363 984184275 21017945 239439308 160223767 761456891 647890011 718539101 986962827 994604790 53781679 748933178 867030025 929009356 477107522 615629834 966147722 974786253 234437686 741468078 735938871 960360571 389849442 710651879 414792226 775812916 51766934 560039427 109468477 790096785 978743942 985096390 948911595 995779325 838069377 849336257 868862651 918798765 922042313 958651467 372757977 464294054 269230713 699665470 948401253 952920402 436497260 725839458 443501799 681658982 93714107 290623940 583573697 925003710 827271311 971992455 184729821 846285366 799183681 874218784 486809664 576539064 244282561 657764045 288414839 938259342 750755112 904631165 604788883 692270097 283695356 940960945 385162438 868763438 203904187 847594263 368073150 580146245 106312411 892195695 429121653 564647100 931337284 947406461 94601617 341702919 949240755 970381272 885801487 901497498 67441180 178621262 517215343 681519285 598979428 938822564 645045490 813880021 684727746 981440002 290474370 514835623 116042722 630639709 366385786 507408391 189302573 438918414 803207559 981586751 375189740 988208722 710826408 847757222 283994006 941090768 116821477 797168270 864735322 992849380 245109895 733877878 209647921 835477149 740988051 849127228 348666782 696936474 838900722 891927458 698187380 707039789 867312180 944663402 514508088 966469360 725471903 845435766 38337931 90324533 655575089 849887503 638734028 890612937 484472836 951759215 334843408 530418339 896607410 923372773 625233238 831976302 853383180 989589794 530753987 643053758 578876433 738897160 941336086 974197016 969011732 976262987 937444960 938833622 873638495 942183618 264134646 653653559 997377693 999107711 710465737 824896039 286416105 508440082 525035919 779326522 716871726 730998583 550341314 704141870 932981959 967502039 127941735 446824418 663070568 715270972 416548305 662061774 637593016 652856532 210512421 730769918 949435654 950372518 303409710 693347235 708183630 841313711 190227514 727050231 599973266 767684102 782243943 830572476 113142914 293165875 188280695 382006375 725215983 856060791 357211827 975402600 651439425 855208449 290980525 979288300 740877104 919067372 308496300 936595424 67138733 965810173 664112127 944812230 137291179 597518880 436447398 952488308 83004403 200047845 993294644 999741575 938999520 950989866 217079932 388377146 520707493 868429393 619661166 629948289 63262334 353032593 243444238 893344285 535982207 876847234 208317687 301592778 256641981 807080344 330156690 522909957 937225409 940453179 776220260 935469325 484521759 763952866 508043086 879815153 870334172 889804778 854490847 992742820 542511995 712007861 776247778 880695306 504470830 626455666 224822763 564021678 100930901 800593293 985889013 989232909 792985680 941081274 90761867 908901338 649688898 991483587 379910946 529375596 599184524 723011432 187797709 575579534 961144993 980602600 690671686 809432538 779134452 912999448 801521564 946836998 818822493 874584198 832119450 929330586 48917235 531018152 116503955 514132349 125592798 709864062 163917320 206985444 758669512 864712056 93108101 856311824 63658338 313987996 475785517 529957255 472308231 753750138 6653366 834812934 103267864 710846933 346589348 589364730 17468665 499554299 205620054 714209791 433643880 506986220 997061765 997449176 970228176 998576494 334991301 384838627 765901562 870121354 442170429 576515913 999921959 999967368 201150874 585448562 410025319 657305288 151036636 829176223 545880641 880036694 996847948 998280002 331953020 747289057 645672517 926907430 354864875 791093975 184334883 589770345 733804599 840937825 920545970 955837773 816857825 901567584 846591937 960332044 763288420 799482270 131935583 804046052 921369918 937703279 800631663 808438358 636502928 857670835 617069821 709886978 983217464 993084758 753693452 968149768 932002187 935027350 175985118 712630255 848767765 940278120 131811255 906142129 294225896 640781297 854651083 868026900 913651900 974962345 363002901 547482962 751623235 868498808 529067611 969991333 132350892 709443925 137741079 712327019 265231445 997154333 573429075 871204179 311754797 612239550 878273052 959864665 335983240 691317232 481740986 650285804 723931800 853574199 457486300 875489326 642302248 808091332 580328123 972402978 632165954 843072667 449553367 747038929 635299315 664957079 687935240 750160073 655501837 972431898 850795339 965220803 890160019 890463549 552588414 834585308 700023368 837191713 247884036 265574375 201603144 213983835 632388320 862001035 555358383 806156693 875579410 996218141 912592045 927935313 221895432 347445071 131842963 573810639 461548439 652417594 430632797 894421309 729667020 776765851 855889450 996558710 104535996 201969413 203833709 460828666 582821789 690782909 853250436 902498637 868154259 913034389 240650920 695835954 635411627 722570105 290567109 644862790 82397130 242846134 784055674 951265938 636554931 725114930 171528729 382381744 448328993 527608319 275061457 636920433 554736601 646940352 316368187 866927413 788531180 997147903 972414524 979625343 1770784 710336316 453540365 994675133 612244028 777947891 941389484 950508792 804973211 965528099 774716270 890180417 37816354 224369560 428255610 679258753 559417666 773335206 361887338 912074121 697346849 782840239 192050472 222366782 735550585 855459510 368490604 452753265 901281412 966246927 934301960 947622681 582095318 935786056 811917702 931208253 914282489 923499698 499233576 774252437 900189366 907559524 74321011 340526292 708889304 726700821 603424985 800258340 180835674 325132855 937307200 981497158 649677920 740642086 911219503 991305746 658411175 711408717 489682002 865960728 465360924 493940627 214175605 728055931 305516506 933455290 89513124 935896742 300167327 920177510 693775510 838688715 741752101 889260040 423179385 593881489 312271940 647380018 629681131 968822080 974846572 997039434 688947210 967315656 168039737 659931393 122371451 446471408 814537164 880451335 761219283 788200227 307596584 940018849 899631912 998040341 822394748 967675622 155642412 359599189 565131737 606648180 738175625 935535971 553012630 739751250 206091882 617832903 205171847 215704174 310029081 914933672 464397680 951654316 756536533 885823354 772109994 801888370 953601932 995541331 677672069 815358395 292662975 949117783 153239342 601983692 949984196 986879156 634539277 664196320 806656049 833544285 388910920 495445885 34932950 607422466 285112784 670420687 331182991 719758718 378483917 989522029 471254615 588366415 859136539 889296354 804392949 994288037 637243164 730118034 617454651 963997961 823390416 906565753 845692690 869298986 477399503 587241133 535034854 779489603 814508382 856068957 97221189 618239458 76473958 792586494 616813984 788106195 246150350 731469757 629012437 839305952 568103999 713156586 141351300 754233001 277949485 637280105 892276970 895598776 890944763 896848994 459186940 618944279 381123425 604189844 21795053 287091075 807398765 906549707 829793783 910328357 250686327 851943344 741137042 834058105 930118896 947798236 529510365 696262861 896770160 972625647 595539214 969765063 576286967 661118340 769358197 985235585 691668993 711889004 962894048 969953311 769150000 776539633 312303238 618004487 714848181 847882720 493700440 659731471 299119083 343958904 938229252 984599397 880054311 883227339 374847392 461716098 187767755 196048248 731083628 749471022 782320768 843608453 457532895 809688523 837927438 976752175 94677825 777224712 721493099 980891502 503026230 656824489 976934922 995871405 367328420 919020263 53363649 158335415 97164116 237432113 668967458 799435547 416677694 418785710 778179024 839725782 350537988 411128773 721330815 880733809 540564458 759136499 39152350 404361011 848181442 990330680 855828669 976169195 413733025 767119941 23168942 126663765 543257042 816757882 569625225 859007102 745982958 807520100 477677035 568911332 649699352 876439824 848116802 976453708 464497702 882878897 779662792 953954019 563581088 745197759 806055379 829816562 818248614 941573505 165757346 289790701 584498506 629553163 950115281 960048930 939529462 968487214 91020604 713335301 422462160 454213226 17709856 69951336 15886504 990033514 324900902 456526348 698765177 870814503 881007625 898610371 12163418 831163720 872702961 899738329 788079694 940881972 850750891 887009633 654881002 774124365 681590466 912373184 374263286 943749257 420450466 686846453 356845410 736326381 573999092 595902996 286874709 336598426 323593438 931639958 566509441 948541587 10162340 984800175 951445391 988338804 344679252 611910619 919291971 986990078 946154560 947589711 937014655 973624087 884828263 920602784 449905252 650888192 601309990 732403475 665582877 701241368 161942097 399142742 252718290 924402065 504300258 595897259 411152158 470324436 846137052 869413684 463081452 722207198 816533656 995232260 212275724 467746850 956070570 976138038 909031983 945593392 935996017 970381771 512377557 732576803 666712876 958404170 605631754 796219300 829378658 911722663 181393656 540884551 23263400 583581190 982001069 988816242 446203231 486458407 558250557 886936764 678849693 971429863 847074736 848662511 654460356 683115598 604560238 837946398 55840282 455105364 395390765 983488040 289215198 422371114 811939218 920195069 359216010 447413506 633441536 819437028 366863878 638587188 530156171 577021210 742151428 829462973 983323780 986749586 219266566 839659995 740531406 898459423 102833662 914022784 261964979 372745077 245544746 752496365 582974038 590532323 991339981 999020881 245334853 511006895 400332850 740157631 598549398 654572314 188902696 963758143 289119400 639405401 331750442 680555036 315775857 379565854 96295687 743345027 748431773 839455987 679024018 949249521 234489268 252348080 939757323 949429532 624190859 862951575 712207124 719706222 554400280 854509351 188180265 266227712 898940145 920101986 68710369 531355945 89537378 878822184 904712055 956734927 468133669 813420759 729104257 782220817 42177861 438219633 241937342 307878080 239170065 890083529 475886374 776065845 362660948 877391336 125233299 255825038 264513815 481501357 406287542 463851169 735119541 818012914 144186112 821026813 697524697 794094079 831868949 972903742 61602104 480417493 281279494 861735548 20546821 524976297 370044660 942694790 475040563 814730918 286813951 458728306 968420110 996203140 499645962 917036170 208541361 685287725 891358692 979953850 873929556 895034201 882496914 965957057 509126813 578009631 777992594 978360022 579567965 802374007 922491116 944359210 120943665 320678923 547380207 716888132 351871930 536838012 342212960 937730325 266024756 889879482 725270391 785044031 406022882 581156857 806312693 822428025 210700413 751323247 517061253 576389895 611374424 628554291 504968423 647951181 414545612 775862795 750543136 870588925 457683420 789396739 82407044 164406267 703147883 963494379 95230516 344068132 43303122 380178987 275503682 777469550 585137602 665791490 959996941 969755961 908164983 942242771 647501808 995068505 409751742 760757235 215668751 671673546 549585690 920377576 431685413 792926714 36383400 770883098 427217578 732926238 362778207 423736268 147041704 826261595 370078905 969827512 235664177 382962378 968154455 981070332 476512651 620173965 811506772 943895440 808114805 844422796 529887028 983717880 656756369 936672894 593591041 807470734 678006331 708731671 410048578 682492964 508131917 570065791 596241068 881952429 991457198 993116752 17463048 87290719 870318458 887069686 85452258 818161902 18573145 647369575 851882201 865515157 774993385 796810097 20650671 923529664 12003587 330418094 160501633 502439457 789351808 910431022 895806655 933676022 506865016 790466133 666876667 787959695 227930365 846781275 816747047 972660846 872385434 956377606 209107933 586283228 405333973 587333182 558984910 985626229 560863491 637688548 833020252 975832271 469999928 650861833 859603417 993793012 899608483 976634131 827655021 849484406 349338167 498737521 771514096 796931422 747344712 809480512 935416001 938258726 523938024 996988052 110794049 193665055 863777029 899653107 131641847 437671182 634952379 998181340 655262485 981081181 423324528 450111238 977629086 987056878 52221175 591949989 465825330 927097237 156938351 683424116 968900467 972561060 131069402 536576150 562745973 811521632 668507240 902814357 979926779 990234420 14146562 245209839 486386071 881590176 983732047 984217910 965566565 970809980 816116048 885073672 561449779 913271733 716205212 818417907 547895029 551024967 172505952 442830191 327558270 382023517 724478014 786167444 270918147 920549031 870578595 924407974 640867510 812394251 558229154 760194668 574032459 950955409 52556549 125747199 630290746 980370777 851899901 970715449 755614263 900602016 224401569 512375835 881194595 927055153 139793358 964390509 117344538 833841640 632473778 664591354 914336753 966125396 435454228 687907037 118919303 675111204 180979660 282775684 155806749 634134833 20754727 745374718 177280280 668384385 776542342 894041711 896323290 944484470 332472183 481914807 462786865 648722067 124838526 469143949 2368789 287877647 236577464 983468006 983521484 999607765 51785991 198912646 741000432 878474945 674322630 841613086 41913560 264919088 83790631 741764441 399417923 723545082 11303543 879908403 2566424 171033028 542721584 849054725 551004479 899379427 994289283 997448011 678219396 877222570 20784902 737797006 925226859 996891920 786856229 968069482 504359799 965285367 583679045 979575782 544045064 939184121 385537645 609090619 298164773 363602213 741834920 800883539 872824526 875204085 925544640 942346644 14931728 454249861 757676303 987225954 920539279 953947404 36298843 108066294 133199322 361242979 274621307 373174987 38624094 78676249 414593176 758907808 484729872 561803822 363554636 617341567 998366745 998890576 732046386 947040089 563259141 698171446 346123998 462367293 963334516 992516974 27764453 833452611 583788669 667895852 497143461 735462864 52391140 954086710 669124525 830264251 537964319 917915407 270899249 712708718 737564349 973822391 846060270 974957065 294841442 838350789 456638482 807011602 164245124 435324623 740715373 910240177 122292370 286997424 740396682 962615232 826645363 969033749 452083435 836961466 297633691 669141438 846609889 848776961 159507441 591799468 122511963 359274536 990024437 994056928 354850671 437566607 346267759 497966080 584883725 901244687 626311168 676041916 80830268 817192449 77791460 514553159 794622908 965004597 299529360 394716549 36752318 160816403 50767274 599965393 723164533 844101378 323865908 382056343 932160486 983432856 250720551 440258684 665521015 921146517 766038829 915218949 614205252 976110158 151163231 859953452 538340709 724079218 444866489 717418604 63405886 352153989 214974995 881378467 861512597 896754184 759639897 920247756 233776774 913141412 887653679 960133885 322333110 944427579 199341473 211224754 1513366 843384121 139251166 507773115 314640651 963377371 92920618 954685669 128049231 855390836 17123403 292984652 216549751 570571180 726789640 876674414 448255447 483658372 479586904 497426039 114651889 281882984 435711157 608270990 508742975 807001614 852014227 985360152 97340809 331985374 423181658 669164857 872174532 886115525 372184638 949860351 113100953 409199672 131667645 973399733 46667269 719501220 286696179 323971777 769351958 858939821 576677319 716925756 807590885 865648413 180278440 412914479 366049692 415204672 389386605 997652777 519109754 533265361 323243286 406324288 865896623 911399256 920954442 935481102 984052312 984668105 737370109 800606516 207091841 386785763 686817322 900216049 511632493 973138151 568478107 755437311 166803268 702875051 228780241 261858036 325236736 661826924 482941880 904905226 57925968 582223133 768381043 961747031 495681341 919209571 762538107 904459874 198754510 876416748 193546558 487497929 643717316 944702684 187955358 630423376 88333001 626106150 635390034 687897546 216118784 787700335 456840544 518822129 145943791 682992976 951390035 961277040 152098080 750979641 497624572 817932741 879676635 937523998 371620141 558300058 747326749 804570128 48028943 134748483 737143427 814123151 253878452 639715988 541829744 728571547 771006867 797551415 871666090 936766822 751671004 936133827 603496556 641875528 292313528 977694130 364440396 542955244 96358180 869087523 774554723 919565409 772808393 789053581 447486134 519225737 883000326 895023342 263896404 576274621 33479491 978242355 179084721 193362124 262516791 396761696 665759920 710635664 30051301 469931538 939542889 962804585 661385524 952863911 890817407 892438160 640138928 931653795 637988269 642593618 477289605 720889516 34981251 203991369 180193048 653671784 788822067 929738555 969014752 972724965 782390912 785956776 877003681 899683203 594232978 884444870 530522768 920521598 988204860 992421732 469311983 553581099 952581990 980126645 109973999 952768972 731715681 905183095 290089554 349062694 773898161 942622430 449641847 630324437 135795205 472146994 24169465 182889323 420654814 469500037 106778921 761913208 838067619 846547848 74650531 655343311 560399836 818772297 154250745 459986533 433958061 789775152 73172714 347701677 559387829 781214312 174619664 896937177 955518520 968259206 849093731 932956291 26650719 889805935 649773169 957465852 511640387 602469302 316057204 817372567 335376452 774494728 214137160 714305262 221339570 964922717 974847679 993293047 702783759 978607976 69017464 818839412 174122808 309419207 5366256 379560413 180590167 378568403 896008015 940433799 77336081 804247784 882248524 927344326 683420236 841011928 540301281 614414947 720450650 931727428 72812893 241764272 276106468 662624094 767865769 878602729 496045934 825648946 806600102 811867428 760016823 955501237 158479303 700595129 707753790 882125837 766889837 873288473 23847637 176193215 350329450 962274014 690823264 821433608 365671415 689059959 466164305 483028726 116151288 602811430 400499950 485936043 397955412 829125026 517461939 816550473 618351832 706998894 327277369 400289718 400543747 600046329 237955169 777121942 463060316 846430189 806373080 913433220 973665145 991759324 647097095 905471270 204902021 549776171 828553013 886836431 489284888 519340613 772553884 851624075 777143109 966790706 430953123 467773936 943225171 977044430 624085757 686758850 309627349 341538655 659204339 953910750 619575245 818472940 906302142 944941266 737114403 933680283 501460299 729446419 827930544 988667710 161439580 388315550 332836169 970681307 258987685 496004587 724677623 738946286 321672397 359376431 34364700 742508316 986338962 994803933 778600748 873647393 563976278 969051493 249720212 319381533 746231102 821880910 398085572 781333981 651373032 800681538 761276654 815100565 183338251 581768783 120084811 530302499 537208245 801510836 442333684 709842064 419898445 735482255 514554652 916144531 856399188 902592234 160146449 850599202 771483662 987273421 867006609 995905490 912440397 953113748 1832552 815133970 554606732 794710213 873027202 994690614 62066024 560973128 489312967 994659402 989053748 990659267 760790846 961667864 771199318 785542634 266851092 751107340 877158585 887357577 967813695 973479801 244215384 532207225 124244815 884291312 465331807 534317223 105732557 489671168 920913523 960072545 67290223 410594581 939421794 977673783 85471515 990906589 116602200 875354849 319778596 871592482 467657410 706294634 322971961 522039160 54951577 756949491 469986325 946872672 596356746 799218678 915259097 990644945 725361449 861671922 903584376 908827527 770209935 965841605 364592479 989858496 516988371 605747582 154558221 786819359 941108592 992486448 230346948 282837071 516508035 716657601 477507961 970988532 223664205 855585159 267339097 869536755 525706139 915401672 746514388 866246009 659773306 911120005 758571080 814620251 510968259 538959061 397605212 600409856 626181332 918526845 297099474 835380306 533086207 925433298 479687971 726137397 8619850 926106208 905629153 947910396 411896353 601405256 612719673 896844812 896220845 935847630 491462402 794601316 536981923 660643459 232456044 852014986 189823224 918854389 378247976 466171314 118987732 536155915 480206022 565061662 957557701 973306417 899023345 981938409 679339528 859721418 952698157 970389726 295902003 375183991 639337951 775958360 643707195 906191712 144267180 432347747 40414880 447823844 13341496 723465577 65866261 517609387 865683058 878362695 837196089 900857478 360406479 961028049 490171269 588583256 555975849 586581425 482455237 894284833 863198276 937066663 189277317 362738214 224501177 594782819 570395526 902578982 208255684 374260031 918672512 986628581 592508749 929949870 807063805 969626382 669669886 978073833 919460184 996938243 278986387 665562684 579304690 734329357 831388850 966728071 884640386 994245447 211304257 678488728 75426269 236737647 104751772 513821883 269301446 596817394 444356115 788602083 287728639 531877771 600389052 776282086 817976908 837168119 706178250 740310629 976115809 984131110 214087264 610302874 556985076 799889973 527015489 551286608 516743388 984861143 246663385 843953817 795104788 820389693 376132970 385344345 287317932 611564451 656565143 997134515 486842479 613132504 881457892 952326673 452742692 658154092 291327968 753128639 431883633 517649324 543126531 597905356 40582005 639172935 469850090 853101476 67457962 789071989 449145302 560440986 759145619 833080155 821469198 872799769 857537041 942197407 455114689 625883569 697345994 872008229 283338695 484980152 726009274 833562394 729576561 914810186 98442804 247045585 414662399 768489078 645694919 936950870 360464932 952539516 908240614 950646325 526547439 546121319 232278849 529258942 231294507 501178312 431792058 758111379 532557843 937483556 519333078 557659683 822063045 989482217 996843623 997360387 491170985 771329657 693454610 910608139 786553788 904738915 492689478 589218664 162261099 949013302 77064080 650510866 936820401 952239661 118345931 243695946 181304277 618657357 73561375 336467681 338241630 552216478 979670150 981366900 645498933 824119731 288959713 349550087 962929060 977801273 704589363 906931029 604812566 754428999 166538377 813132325 73900672 76968068 686629392 929609789 399838662 888625344 383670601 546399092 535281960 896163581 153992274 332068988 421736528 974439837 463866083 932213493 272636847 447793070 224195873 858936147 908076733 999437354 489242499 979744352 914888782 998905247 949348365 966575365 848624867 859362862 159776545 835791587 433200922 657921230 37456378 529473412 539995764 625936607 832493008 946895127 626819716 852980073 75171838 218710810 571412433 930111412 771865337 984470226 903164465 962428177 911699629 912995548 219573753 726609699 815371434 852212525 844349914 923747271 215412153 724397342 23471750 37132353 5440916 216941522 899854614 986617194 178011768 934953375 575711370 586186462 79047544 412819166 276451625 864295731 736782130 737441563 344294663 867795389 305984595 388121703 643171519 897486774 30581815 911929992 506891005 688572198 511667445 638123479 430016561 469496158 636631964 960400272 781601935 864094271 324878012 823841747 630644725 815011745 450413393 569580215 806572119 911474258 602196927 995437422 725268628 932582080 978109728 993842638 290793680 989941069 552267121 627823987 44070180 470973817 829405069 853177115 344457410 804672470 410661906 488879633 560951325 566197134 572171003 918002921 267436752 521714390 961411040 990132263 873886704 905749583 434741521 866821154 471417311 495327116 667156193 729878879 295630380 543936927 981443537 994454706 39379151 795592623 367766648 977887860 20499689 786632224 178488358 673874336 800034742 893244439 568415480 605016307 628355007 628900701 847149846 961736832 630682235 941124668 77548858 381337431 60166627 712902448 705685524 815690376 924707634 962867583 102855667 798363037 859611850 886328604 278014535 927724148 245756251 618665191 337711236 343803639 412802697 599409302 30457890 272477863 627120470 652481186 230312034 972399319 489763880 781008608 364459821 805444261 83626203 116506884 754053488 988741460 858820939 890983587 552827570 628385061 307667643 473069607 931592077 940391898 204953263 242956536 369575791 390941601 469407769 564825623 601196496 823387987 416300569 582167588 506241604 579737995 126456517 650908998 224999117 703443023 180444968 733405330 119217517 649453991 232940845 561176868 92310551 403831396 986676726 994752866 968770609 977250626 59698233 563630643 760312769 782798847 375442468 535017802 714329232 731501906 509503498 928182840 406258827 982806907 694279388 873343527 225690667 548258737 458489153 720049520 824717648 937614844 146797600 796524817 41339650 716110604 434187295 530594464 983360441 990921868 52750018 658494160 671770744 968670393 191540857 836346785 834830350 941795901 193218062 950278299 789203789 998798059 975721166 997713602 900668579 905428450 835052704 953018576 861583046 924142011 409493574 690988425 431514131 642490784 329726216 846397833 202944589 806611373 776634392 926210794 582738 487729699 123201922 839278057 804438330 882023433 649192574 792098083 707150957 802230867 394234557 394473334 173113938 555790568 801279564 944645794 353453737 723747475 311629905 378930367 248328828 700410135 688719452 896669077 632866720 690813279 681249782 886606019 762819476 922013369 87143447 479825867 699508800 962304304 796877686 988755762 547371054 994755814 51363351 617800212 755774463 790738055 973666696 976048776 15540246 377154314 663475965 831442844 413601815 560211133 219851243 471156833 405939055 697115803 141931966 459231626 931220711 943202360 124011917 454662827 606919927 853263533 853904333 989499025 262827519 814272543 798049904 853315301 419137442 722914872 761122386 963722308 478431279 644492674 119973978 166189110 723399546 755838849 275421979 291072077 154027073 282637556 374168526 751956247 52053596 497851930 342360502 357742042 312900534 630013671 242279489 990066349 260892063 799541509 632509484 642337669 327702388 505946773 290692466 932621604 578461814 919394893 683335914 929373329 926024545 973581412 692040929 800366020 78761794 792083868 225456090 504194892 456754452 961872094 366876861 511258204 660145092 797768347 274856816 613452216 402186660 675810407 575986965 880083718 233048445 458920479 888409706 998904347 701506440 806077420 123434633 695455138 833968850 845024966 200688827 384694201 151435350 857796872 407495116 934682947 989839391 997611389 696000904 939571821 150436019 177315981 358486315 778663983 360224298 446468002 64788251 615456558 309095850 758517120 339409322 345948565 204321031 905797200 812885320 827537661 389850606 907312553 335967652 530165920 994929641 995090312 296828818 488855250 902861933 993741012 524283633 890017617 496368181 649128686 298968700 505157624 511410422 858257961 586436889 666715784 146690233 230621335 170101364 907820098 643368486 989668046 97835296 549724863 538960327 636716491 879504543 996251822 301703950 353184795 535905961 905215951 435377007 717566962 643709671 877476729 252856876 562958986 872195621 959447424 525394005 618430944 511252713 535526242 505306941 627252715 864775919 887274493 135030017 622974542 643534973 670306836 462920910 647979092 764525177 837254955 735909993 965990644 330442002 747960903 955870644 999194470 7319176 267283597 48917833 165477153 307896519 827458098 47292662 150617257 498926101 810094559 157952981 700304585 537248092 717431701 926747500 991941059 837687005 865317420 455457891 685297209 343793677 580134661 30676836 375899995 655278764 944491160 887453441 996678134 236331654 634466576 383131524 858915672 19293653 355344094 251121775 406190532 145567356 537853514 9811324 867982412 231710824 911503156 904047443 970886139 87771723 954724374 946914510 959623471 620264217 726783532 558352406 717487851 501280891 615542804 144926997 905474717 188419709 268346756 130943669 261108605 959835148 984566256 899279371 949869441 754376594 854308804 747116896 846651920 71219228 256166144 641432090 680012436 374268503 518027038 855952400 926512193 579833336 674329444 724097754 942747006 394650451 754511606 46260395 714677642 5486638 315418539 792256681 975796200 770121673 894945794 281675646 862323985 768560949 900617482 744325072 783676727 522798407 896779036 625270863 843339241 600409056 762417344 479745173 784664228 151296286 289294837 941730989 953308532 538860147 774148396 657130546 721653907 72613078 483985930 123853516 465414475 539838300 772926423 118585844 286614192 995788957 996001767 599714701 801804210 594743481 714827816 769461059 933712102 633446589 647831223 324832493 922794423 522711599 850126697 613578103 982640730 653193408 956698106 79398160 806349471 457115622 770488032 698521166 920698305 486788234 690734518 312201972 662176558 288102137 872371022 610147914 637651520 659741692 876798811 688864737 733996867 415077829 869883283 692307438 827982169 999211248 999777554 890971232 913034331 593607637 974262295 5096716 322859449 683103729 923198832 741920539 772584719 803409368 910010920 3466950 774429812 186955776 434034124 882244914 925445325 153958022 807933594 52047981 599261166 333373726 724124912 478329821 624214994 584497177 963733687 444843651 780779203 892178930 912352481 220622025 503022207 215976852 769709220 522264921 794684934 509589105 573174793 889625953 927919711 428074782 822726077 290644505 742334643 448394890 783355420 693628393 821658830 512520873 845747680 56255830 868333610 42230294 714781469 90377433 500009406 607966964 685804342 132024367 539967523 63298582 363909410 477221837 853683561 53100200 770190109 281608622 645574578 298666916 664787038 464141459 859618276 142640079 251456164 355151031 792496983 606985188 875509442 527178814 799631378 888277542 989479446 367443056 687833087 696478899 965700043 880957106 997541755 90343339 961865882 342489912 538063103 446761558 585566180 275786450 656242449 299642118 659564283 729639406 952689103 595597399 862097324 229572368 448314437 55653937 98182573 803591621 831200931 366229470 688002887 578418577 776368825 851070156 919393664 906461017 971692089 992274939 998249621 157890546 776213348 531855078 763868674 456751404 583026827 597377970 663866809 688670806 806694303 851554385 884415018 499339198 684189376 911904716 915972716 574500969 923940672 631872299 782510630 541469130 680330507 457782431 683268000 40942591 709823417 539150734 666385530 423347299 879587420 68163514 477776436 390025811 590832337 734919786 837859912 151365118 345505901 835157219 849925131 424916707 914084117 988777148 995603546 395211704 546861183 931723015 960693942 359211987 400983769 806569589 842727157 142361514 762971333 343497781 937347963 801460112 951710620 799267283 953540672 90195896 819834501 890527674 998909233 368413071 935867522 76969084 280734569 2803340 967261359 424165841 788256610 784929472 949221432 30343966 831611151 857595931 941905861 357982510 788800954 992566495 993824234 318663820 652449778 358752858 500395527 26291222 975006452 536271416 842526485 903510970 979499883 630369272 693263511 524660218 814504473 78963201 181854240 952470380 982750785 371645463 892381243 183828851 936698364 669261010 911036065 216632891 471605390 185897215 691693921 907730756 922825464 410033994 636635440 199385879 919768660 897969003 935616894 21371019 984757961 221687269 681867043 404962734 819259529 446135468 452247223 297245003 904827827 390530516 980084870 990515956 997476746 762940131 767751191 496396620 968195650 912865845 987101222 471024676 554777280 968249735 968744393 665656071 860358354 60330437 776050789 678250615 946058219 856126068 878955399 815856902 855524324 958882051 969633961 388885919 929479849 800396767 943571769 106243405 616713408 736818342 957607575 492695971 672038459 878304669 990531017 80702624 589988806 968587530 996964245 55312739 917787909 943729209 981686916 946402976 998779396 862234874 913623068 646644108 840835441 875247878 957850596 240812636 883816306 840377240 995967391 688846965 872277543 954306629 964171422 689719147 720647384 535177678 997131225 700512196 871339371 146477156 687779323 356405658 888210963 444533044 872202506 36289621 116470002 224891678 705796020 825933261 935184645 152099214 786671531 463444394 515531130 848852690 856904798 339803605 840521940 393398582 589681335 132515748 284727818 727456675 874873853 473751305 551389613 31107170 448035586 854636924 952235115 935497862 984720613 667729639 703568644 43249687 553355161 356317213 872228807 718772544 787236887 775885419 975552569 924155311 978785933 869685870 888325812 939344697 989637828 59613111 97104031 764530311 889763106 862771823 868928377 845795632 870560671 386613054 856051071 813406526 897303793 329417871 961454219 194684244 786953873 398046684 861164245 896866849 933624084 148185606 597763718 621964785 675642572 663809319 864518875 464485586 931787932 626644770 719105690 335884176 342648290 576030132 932127335 986810531 999297826 565793076 746490978 786863321 853508702 342724758 554620507 753035247 898490929 834763059 852688400 853024892 936266348 396291453 722106612 29893323 405382677 664495988 899808258 477948556 911275127 334088041 935940805 761471356 915271172 368659007 941138857 451544834 788073122 643878690 824294980 611668495 733295829 817415173 989334759 549034110 797432582 797450728 895999859 847838278 856494072 183401014 598050963 167327436 773479290 790108958 922147955 613421203 786103465 708270341 841747712 957214980 979290357 498040895 667167650 679079230 789582997 288335819 632647008 178023684 821187571 167055258 310098025 863585951 922129499 951892669 986315350 141949862 333996458 678813469 891422719 407930589 623065805 662780931 775542829 976913052 979750653 700595998 719345652 147614179 478188602 918606436 931392443 772473826 894399669 664003286 708626397 15500795 376270938 876896542 891565604 727858808 867677460 223864635 451859144 65176834 109899271 674479518 792818172 973692076 985898432 249841416 898834732 425400590 839468298 366586953 965769933 97163102 916882629 423756353 475698634 719234026 888691898 525720624 671273116 393409803 418102484 875199041 983923196 139379108 711845959 122290759 600513355 395422674 472316970 162369776 695261671 613544175 765734602 769288381 870453402 82381101 269272233 512423423 766423173 442208861 642658539 354141003 797250810 763736969 988453420 721760242 792517668 711242121 803027771 335012687 935683463 801119369 938364327 422559430 454669427 923526329 975560517 744790048 960399847 317626398 518087292 908176528 997625762 330360918 613243966 77705423 182846589 856217781 973754105 796659300 991516077 558033931 829669310 609223188 610197526 542996216 965328834 28342940 150838051 677075409 721902860 707986241 739370718 919979219 983594138 349122800 788451054 972296053 994665399 333413720 970585473 253996558 514199214 954648756 994895994 225199085 392797686 316272598 393005924 933849584 984783140 118177238 901179602 813302451 894400073 791296189 973813883 435338743 938697808 241711647 455211405 73632740 80197821 427906920 573636243 523212009 668882341 424401335 447708038 24855915 992669145 537958092 548183753 757541173 963459608 577989672 634648582 771370374 891777466 372628171 523475903 713608290 827845846 296850155 701433442 8814045 703181711 730996287 967453868 378080437 656935951 61173017 175460647 60585384 916115752 247148971 723560500 430096733 991971319 506112604 669451110 524490020 786308721 209954630 858303608 316927025 891288113 975977105 983030802 871165172 951509939 587579380 743987641 84029616 945753464 112777122 605368596 13904309 989433372 365918668 891702791 923301664 978270143 789471666 912408087 108965992 296479478 178857681 821262987 138330392 253500354 271916222 814344872 853724530 935987383 644264032 708657682 266050174 622819493 152479392 266465945 107852191 666798585 609036800 806943256 622310853 864184495 16525193 523036378 449340978 733411966 408994572 570670742 159596405 215576094 898974171 948972088 71715603 976509808 887209037 985004446 556048360 565613829 899755182 911853632 538354026 771170508 497276773 667730332 874640535 899156845 607558226 821831596 728539135 774887039 362836081 992779154 21190671 632250561 194610726 227474429 941184220 985347917 967628535 993105523 903963540 987990373 951332491 967403567 157221153 536916788 610098093 806953754 482678778 820898124 482566467 704458411 741053405 980046757 463625753 668178316 539718847 939337049 205224119 685765833 119154584 881096493 846178649 872610044 631542893 888872685 673248511 874357270 606447767 980028658 635400102 836947447 4835348 491204449 821116592 922290465 632641999 714126106 14803792 945689865 131225550 267210946 590372138 922407112 370578969 933803336 236751816 640413838 965912942 994212710 474036530 854993275 964143261 966740021 127524234 435180082 570413429 613920941 20313630 61030789 544668214 858433901 588550199 673992272 826697958 919441008 67885337 668948337 127273129 130940217 589895307 906619975 423513737 489002384 12100087 222068933 294710315 632690136 20566682 724541671 327027745 937361399 718201830 994750553 396626316 597336775 118387295 234592337 651065866 842316631 302763392 518476473 649318725 809240234 957147289 997395077 312214233 646757703 766264413 832889084 995463129 999008308 416603815 922396598 8122547 811975075 956532213 978251602 61566941 188707235 316358869 548539266 382321213 408895515 376472029 606261385 762536816 846232499 645656783 988332626 410197228 913300669 746187814 903331545 439243860 676324839 1839915 182852671 685651835 823377858 650417847 864702205 385456660 656268646 212821053 618908430 702369579 911162868 59716672 459059779 906505108 991423449 26592023 158190362 664311113 743155124 906265730 991023619 635309049 814971877 959512868 962733579 299579300 843183192 563229212 683052666 937483311 961197125 56147942 978900683 296114096 782579572 424490003 865549185 208037130 667021650 188231703 194947536 733803251 955195326 456844231 601856762 232848780 859079335 398354635 747507976 405549953 915974823 984546962 991178699 238433771 600821354 314220848 991143766 989765708 996708816 392817017 943982140 742449964 805741465 708438686 792096164 80422056 365381200 137889884 182950027 790267028 957812905 902217411 962083301 845332181 990889875 828568359 891665162 724193975 752722931 451088935 483728617 686448172 823741112 811602361 977555311 173965580 820556006 721605324 916938956 189578723 854180038 330139884 631359637 785123391 962351202 922570768 960516747 124335376 711393993 684122377 830700874 172042437 503306975 276192648 534048487 954479849 988201367 940934869 948422536 458162858 525301906 304954232 337050179 899119303 977309916 534292330 978938736 911194245 922252140 494092595 754380670 892598282 932438469 349611069 594436257 831128736 896094551 220630739 734360447 862726370 869149587 434128396 724007447 451305386 486445386 249552374 844029457 11380445 908751418 274540281 691340704 992417065 997534565 781784302 883800914 131163949 205391910 793005040 993759434 659686151 995039437 501954945 565320210 261814769 267566415 355327590 683128728 525507821 588221301 447087827 462533721 814087731 863468152 773721178 859400116 991475661 997399579 473430865 641486879 855430907 883385053 565300152 681295168 992698367 999953450 241284235 503506370 367844153 912545595 733331723 916703358 719151716 908656226 67352918 536502034 552167068 743548911 528580235 590386987 709050770 749194350 286902405 690357391 505796881 595489863 774460574 961628066 661763708 751324614 98631684 933978824 977246965 978430060 215611214 237883942 199476068 764570735 704440616 942165389 173540027 953127177 996833790 997138123 253276644 578491744 856098457 861821399 257719618 496887335 965001698 985491017 434095232 811121124 716066700 902623504 583220978 634049852 836100540 936871590 950459510 981248782 554515997 688066008 96057344 187076351 172739927 862316761 28662070 674051314 625940548 818663200 139970023 566733897 143861118 728377903 606537786 615881846 836989889 909988467 345879722 528856794 661910522 870001685 625785052 988870175 606073956 712576410 586094280 697001008 12011 797725487 687671634 791829232 31693700 451626052 716667034 777844640 642294641 709906814 357082882 980083958 370844228 517933344 805748458 924676400 936712264 968197323 112645211 984444590 998369035 998978984 446776532 458402470 438310001 712040451 638857936 769234164 940666673 998151877 478745774 880121697 801341276 819606501 71510259 556557268 406165068 415272913 192112701 643530417 108937555 996490291 159116767 502068675 968728059 969080178 356883371 566574187 634397409 706526269 936153492 951488649 300922730 579822684 416113682 975432964 244671503 249559402 989347627 995125941 554250403 739915060 398868881 960229555 981345921 988078615 52420913 633214708 153674547 709716434 570149947 917352974 877727032 912401834 354129009 371182257 570080427 966965116 81539988 83934358 300123450 539804115 659766124 670993947 49977657 816086189 196765905 462655557 995641797 997278370 521063612 612607001 296251339 719382740 756681208 768078171 80022244 362599353 99529112 928248410 516995423 765537228 817619015 897642712 946121659 990332419 171914244 484497023 373874498 750643661 903581758 910321908 140309692 524656624 975970182 980584827 36000629 556582562 379200469 622959827 204761744 548491491 230576273 412475031 77424595 111018911 520689705 980120190 892186376 997226933 501040779 847613604 589535423 812965299 772916776 969884550 180481974 431127766 367020092 506141134 924049108 993535129 449362222 701083407 607924962 796322744 603252106 619334201 761664791 764921614 517950502 582528114 178439214 245217521 42982063 645945107 713326560 992696951 204258030 341126160 458172166 553746189 395493269 817619195 859423417 906070779 513804043 556963677 370356903 488403567 440583048 745263481 841098373 919468521 325205528 874666852 66921033 519353032 745154826 827075348 332391608 742885703 175548683 547328578 349169637 632646921 433427158 776187151 457658906 472709047 434293430 530655031 589423662 655663598 931256544 995241082 287187461 562172413 273554821 750680603 477111452 599269582 415850942 639761022 577320377 767044709 358620580 761628346 399512910 905871971 872559146 929957970 665460415 842197384 823795013 864974648 178341003 747131186 207232410 576310727 642798967 972788975 101712329 731075871 357271509 811683904 530801311 713798989 632371947 653892664 794483845 994169217 217765531 594063535 484327341 914835131 493127573 757615886 228740585 251636904 842518244 993021485 871185737 886462992 772150607 798317521 794749381 912326537 923783242 938547169 766032759 858780500 487752220 750502554 955217139 988249203 850109895 938170292 181861840 515086989 285151597 502457641 957351430 972972574 621292300 982196959 404902215 753579658 361562816 549713798 861324383 890346738 93023492 424821199 447707387 557741107 875475565 915784269 51968927 733363685 954307833 987975980 73638695 272774940 158916384 766219032 815932779 836373282 745711180 770035479 774986104 871429963 66395013 240725277 542245703 582190678 777175679 918402913 87342226 841217494 44319249 221042379 604769402 644627778 956121732 983961946 150529725 894003814 201687075 376605567 277456791 497382005 808238778 984637731 976538161 998127945 609843387 975461363 840480363 865112962 223981476 967737418 796681035 822599681 207657759 503614925 33853563 880022343 22777091 585606734 151281129 683946127 765321991 802254825 819044843 860263493 911259942 991851331 392105382 476485020 141232480 803944997 269448239 400778328 787159854 959498643 539778892 663922008 342438487 845766864 74543213 353100443 983547304 996448009 883994389 886946775 990847544 997325307 119511079 893212888 728205963 925821629 802936191 933883610 58139519 536454698 744742694 786881197 618013544 808827020 267648547 906738439 860168790 863477330 210202135 353116911 951991014 982926671 116658788 368739316 522594520 868614473 475971787 622451003 667064425 912587614 393800632 809612823 124318464 933267630 219778216 901814305 112453026 889969704 435547373 812826236 888154656 929752595 414069875 879401674 933478579 994413667 925072194 937172421 84735980 913748822 379993723 999899288 849987171 860131487 116999360 899108098 473523696 854738084 398486477 844185919 996970879 999731659 529774314 964662191 640490417 905251920 598312623 853494110 565900386 602034719 458762358 511085733 707440359 968596572 33242599 867124914 80915527 438379465 279335870 819834827 827336856 984459799 459985156 768466005 498545314 702654569 426350157 955164761 157133239 620383371 276032499 996097240 302190953 359058358 641562376 700440949 912660365 954597204 285064654 868251145 720452957 819912411 862817771 907829517 506156670 677985075 552210534 896856503 127002544 392039021 962933973 967867761 876547514 903788717 599557123 760403942 539966532 864368595 675057168 934913722 186813351 301325533 410001046 710435015 695920733 865663608 704671481 800964496 356287631 401721476 579974390 721027569 910756245 930530867 333287508 997774017 444147178 948465558 415194071 595265826 796841944 993037302 45583337 802734406 766144142 962003435 111882144 892891842 474757353 782204415 502358823 999137057 329147656 813239430 174236192 597227522 320885716 506337500 330566835 534862856 34787346 188106388 953556787 961657910 354481474 373570220 192395513 932690922 68314851 313923244 731974158 892785387 606265342 841996145 318840302 997060786 715614994 742939291 837484883 932106521 75636267 727540452 736505351 746758616 749149725 755124254 2446714 9295765 399509360 603760417 539146106 826044107 445008989 531559918 631306077 707666348 715978207 903904881 597759253 910925246 661740198 837418688 982224668 997012215 402229810 828489438 616511606 917178805 433626382 891811672 166322937 501039661 773559346 836061466 798547551 859121752 699276535 762081723 84616270 539603118 279694972 770634972 949735519 963546587 599142111 625270116 325577202 526914263 551924816 885878316 721512450 915005807 248969829 578195972 330478801 688992883 480321293 481593657 318594560 923356556 368825536 522751839 582702425 787821313 91540779 762270109 240063640 794099701 937273239 975850065 474070365 715982786 235181583 413016837 518282914 584566324 836944031 847366123 371250774 742244079 530088012 660452127 274471794 916223978 785785429 821057480 355468162 992080623 35424556 261506713 300250894 400605600 125469429 399715633 571284218 655168250 842291481 880039636 543978296 841489383 421728812 972375950 68571542 912203729 123073489 143311167 41812891 726171747 614520972 689275307 647249689 748578727 935966909 949766732 386522890 915432275 54259915 559263546 444476129 501576017 893585412 909062949 821862399 936375268 134154887 952851845 63181530 310435026 762292373 875064206 390660237 850354830 450358146 539537816 615606108 956774538 268521394 328175344 475950973 838023433 866873095 881035459 865243511 929151484 937229236 991468902 287177763 676499129 240276611 264636533 475986059 526016064 274999051 922902005 347539542 802468270 861475377 920806658 652398674 982442232 398226754 817028443 676515423 707845191 228858107 892831130 7034082 536810447 229287337 843015699 593060460 594495193 684681328 858925979 45569284 96845753 299248713 605509847 957628375 976658432 828516074 958704935 131523299 319933879 926966675 971671150 611824848 652179577 231971768 579909629 578581126 850704232 565394784 631759319 408813265 651593225 680937637 903566953 908895405 971308037 380170399 391082835 555453444 950983565 925202651 987169205 909984100 911236505 581282473 853329843 245212041 538481255 40378998 198344326 333860224 873531049 197719417 837169353 353872246 627474448 157787470 626263374 346650477 376283515 491129531 844370597 410356693 591540972 906249255 998438480 235949941 759948477 789979362 963689407 99788922 556185083 292542254 407975658 995362118 998512347 606816202 875147901 613372886 641572064 671024559 989051599 195482113 343283221 738837764 817996785 812301821 987149547 596591698 867714889 480084261 658351886 248838179 264141387 582271313 979849400 790863149 950825598 887941363 990122314 161663323 566179544 403624733 709037964 319990567 495719375 538731913 728471850 958222393 978228667 533012842 835142884 963511839 997374239 42730780 377825503 509255295 864969423 493184040 776282284 804917110 883599744 708035757 999291599 35208605 692983087 46926262 642394534 320108122 491409107 449933223 851969642 472090456 665549783 161840852 395794942 85545680 996332053 685813472 827646889 317218675 852295831 133193010 733407057 621292116 875279315 981584819 982607643 893158923 926251656 275339511 434592696 457940953 850795551 134616985 682509975 698136177 991139107 537494713 774438308 557261883 983384625 684744283 800937004 319294984 924703678 936399500 991979480 579419862 687910165 906741504 965784652 722070978 936091204 866963872 872065662 167643370 704608784 41500540 846649142 49500474 756246332 961383746 999135349 782986655 866971198 191527930 276588215 130936316 333826938 951656082 993025413 16314046 783114800 299912966 304783544 530319479 882451062 562575941 938163996 442237614 590838873 762449449 777362702 160848165 526980833 996959381 997340447 542025478 873530405 765742554 979539519 83039332 719517688 89892412 594188516 696796473 910875828 589912234 984800211 135960184 337915862 981791769 984797657 719022587 749503595 555582104 842671849 885060985 993776181 830182512 929218769 78869572 895192829 319987568 342131637 258884528 544485071 210038330 229744999 425804859 858986741 788979392 843482311 430111647 822689918 617384770 981399406 918922605 921844655 574847326 669798228 416346072 501539679 753775282 779867402 892901184 966183159 711737573 770262222 862722998 901601960 681816402 709669536 632520274 970195938 750818767 963426330 669818620 984094833 351779311 813140472 879061074 993608142 763075658 769891608 221060014 673128261 276949551 780199920 64200570 166950577 745278909 790347866 361744269 881995911 141518521 276516944 158327406 889208202 887709875 927502014 350522028 423261522 417738680 637197550 466166667 842217549 871499340 925507278 763819147 819550850 632437830 958899773 820933791 871474302 676329009 729582483 851061596 940535374 597444452 865018464 331110455 483357622 748157250 850784244 279078299 907200000 491318844 530281578 792733417 896866894 343569661 685069255 716393433 998314599 66727284 738555734 237507459 977521290 650413170 943752194 371278957 427948800 869400239 938666381 305046802 438294034 845204900 942503571 753705082 955774380 611249688 883084533 425254805 956042738 38603252 412536017 10634056 850165256 394703207 761228863 424251958 649196926 659841705 874207966 514348094 757006486 411760701 621336145 447987295 800207222 738664271 765383426 637157291 935433112 246804014 708812277 441139175 751433721 977603989 987330041 785376148 817409665 345179963 487871400 928371627 970956644 743120337 776362073 947788470 999497710 274119700 475400700 892537641 921578196 738472125 869511726 314120831 993985981 411518505 541024074 880248014 934575275 641807166 889048370 829954875 921289818 140331015 336327976 16252944 70058991 72973784 564390581 608212377 897567443 38567578 399191522 51008769 548304377 389815671 845837416 986211929 993008967 241533167 516097362 188492061 282951435 827994242 853982374 492708813 859733139 246688942 514849614 486094453 533345720 325573909 535912515 907394500 910872883 770373031 981166534 476518401 940924056 656815130 873954778 840905376 986109250 713262729 918066985 401597718 972552789 815452316 923416364 770076586 927764795 778444001 956123726 313186645 344869641 370229428 933803830 833391564 937539941 776316966 892717739 757944829 764168403 199270801 941258656 124757011 861391581 779855981 839847734 205354927 813201701 720738375 784393014 502902161 523991684 29230082 852779612 72488855 620337682 825132054 987129487 312319052 372071293 311666208 835827387 979670979 986526415 143444084 434388619 919774951 926899829 877170956 949122339 402885112 749476140 217929924 713716780 283704826 700093104 108400274 675896099 946060327 990957544 814846156 912450816 226170141 554721761 401089805 795664031 885706361 941200700 647540640 648507090 696760238 889611758 954831672 979042877 654876538 836038494 837065251 912949520 135493625 167626626 182280227 569084542 290145453 393823531 407242907 510394191 332313320 921344560 149640999 497727735 716222010 719733844 329439025 915238231 500279341 737447143 824638013 839061717 587962916 882828721 613183968 968780385 894485455 908749290 307442114 543807192 576971834 877125093 945945423 947201448 88733067 869980656 938656508 949513642 184047435 708406862 33119257 242847253 698497029 816731762 314091539 825887328 944712606 983577829 359389085 549379166 629547793 660238118 386152157 960004769 436607368 859563005 185538131 708615118 402389983 409208550 327678654 339133958 642925768 885170404 534188968 726153783 810247218 856461803 336082567 555997338 123142836 521809952 310911568 418186256 253635922 281993629 468245723 730487016 749769551 940467605 454145182 956322317 22972406 219475694 842545230 868017142 892248036 974421536 343853930 552626997 454697500 667871868 169124452 798911235 364624778 912156099 937460216 951224176 45404520 841580941 987623935 992773297 391934685 785940324 539962765 891745548 717816826 932813805 86898711 606744983 631132983 750699248 378427500 652281603 829905539 926249556 34403842 314446281 246110359 973982545 376617724 519737238 240893832 561495667 178988701 470482901 937283938 957430000 184041391 439741926 484981561 533584028 462986326 484620143 232986030 890698797 814255563 968062114 757799008 937384977 485973925 758289460 18917463 779990864 672361861 694752888 635700393 729484124 898778442 969548831 702619959 713769978 231960559 631028135 258715654 363261376 643067101 695769769 886438478 894531565 755685752 964469542 849580532 902144588 79657118 268786240 533493849 805198734 112286632 440400077 670236862 987096280 484244574 652219161 731972375 961715045 26873470 156091542 496500056 863215170 622777958 963187202 122847168 582072320 567220364 945559900 884220492 889939735 497722942 883954505 924918066 981966059 464623870 935484705 487747910 658651642 905699509 984922045 706965930 901275776 224120303 419022854 442927053 983561650 670892606 760657126 562851219 730310752 455162948 803088876 175215348 938120758 180929572 776972175 554019726 836924444 365121666 977683299 746730907 948997653 392965233 672320006 578208628 828068835 309830425 542991078 89500271 996400599 603539972 629874569 61301180 806637095 685768544 688403137 683766052 749739230 178859161 191315619 117059069 281834236 596396395 736194312 967290630 980520041 113893322 162791095 571714560 622609507 892428993 933576894 935617034 963713176 909238917 929928832 674967266 832144875 264945740 280458546 910770200 982382287 636123529 821565123 501351733 896083954 287669354 652741499 705684583 919155635 264723618 944293486 533277228 576593754 636159009 877354727 519543467 676298153 555619654 853834284 302713590 660909532 508973182 642976922 925770395 994140756 620338013 761654229 869606943 944063360 242764057 862877796 514454513 932319084 495951473 624732096 79254394 373686323 101550516 963231749 380501983 763357799 27582020 871465068 680599582 794125482 144855289 756486557 855870278 982617314 474228268 950832300 401611616 863848203 606796207 957981208 62359971 491336723 883944845 957764619 703794513 794120831 656317598 798349460 302558868 636474461 867839001 989764816 951635507 953469694 77810314 761234060 877076567 971857394 305769090 949518977 285560257 488314063 100449179 766205793 672100965 801745187 864491851 925049070 273633789 791728391 770743642 850148628 608916033 748905200 389919189 851597149 118110653 284240589 538795524 827205777 569034851 712854418 134678978 631113286 968788847 989898319 144032255 380622646 874803354 955142949 946982968 995479005 852767578 872361919 67046749 490962234 442467909 644382163 618692143 696424672 512136300 951172304 300265695 919707431 899840954 902364615 877636197 883526003 272203671 915821336 174034911 697990705 550817810 878085641 775193960 795741960 646251229 675130360 772018057 962548957 605540441 845331189 474579787 691388519 174535702 909120721 982843962 986556411 441530062 556897613 731583980 825581927 116944241 396570377 560410031 633030829 996641714 999576814 6020719 103954233 381054626 443631150 612448484 941096624 666784119 913920277 315809700 990948556 968465983 994790342 592877444 614481731 596238464 994976370 564361598 574957323 811039834 842931932 438185941 934163363 323903344 773378857 140573671 973456087 668240486 737464606 593617232 742218914 411009705 412573141 224370842 311809330 372584648 802871910 212070143 245621137 477439622 598436463 448697854 569850512 512271184 966093309 345616475 672193275 660553279 671984575 512845936 699962048 13930545 204432915 97892493 311792347 729800558 965050036 897457392 910661834 908987690 945233358 637911744 957839803 125494521 882625417 543654808 744385727 994577787 997247457 446071303 933077727 842043270 908513988 191131910 930972317 573764508 856870639 708047839 743483541 861212540 998945448 182594343 189440814 476020048 810182003 488735980 830454446 310160679 949680250 543879811 605360024 503294200 862465322 969655214 975524586 544199464 889865888 488739425 582415459 160248870 463955699 408289754 539153648 874677575 877858505 893545549 921397015 961401921 995188865 405334382 524583906 280025755 886681395 118483635 484375216 267051444 838117877 637311391 703019131 656913488 847815639 659502543 998669542 673721644 921142133 370719185 864333793 916207810 926820762 970690304 972684491 20228371 118321566 432042877 815115240 297586999 672786746 27953257 636231773 186081981 953431249 734832966 962909462 848213324 978344463 700658975 994134157 635076460 902523208 984808857 986489336 250916182 802360414 872811577 967031068 983375255 988560211 457494874 717965430 834013413 879564399 493072432 681130819 371872098 568656196 893714452 962022045 495971907 665181354 998285764 999150335 783349589 941342432 185384113 597921578 590028227 954161418 556449412 715701829 143149876 201235738 769608216 775181707 316890176 431067535 472575945 601629818 498279623 999742261 982482814 987611878 255156819 992836809 840446929 868135350 873622240 997290565 633075704 879206964 281472798 715101079 389702791 562084010 266057201 898012026 408976510 521522557 577072708 948665324 775371638 961179684 81184988 177480997 482463994 630854661 306593722 581399573 996135497 996983694 901986328 978191948 835632478 858987267 522540799 985170373 597301308 759735195 171824454 788009766 135956608 394513117 128270404 966998836 715746838 722425362 808160867 914195443 71852543 82375132 569809711 768101443 181371793 439274274 284046572 560814401 29390021 420837598 579283441 913036794 4086629 742425070 119471206 874424187 303222137 825867943 436957309 939008877 631733611 929351730 389825149 920883437 94349596 213877984 774334345 822031050 215990232 609818073 421570517 988263805 66720480 506177636 580787835 895218535 226440740 790809462 496981379 963048005 649497789 955722557 176872798 420188017 200511328 647817206 480151003 944618756 284154921 303694452 337417974 867503189 85643099 355718201 653118189 743206165 428374005 517903433 479391194 756819268 741266298 868499706 668043596 675458335 408526549 583110101 217066911 373015062 918268365 973864751 701790154 941051136 176237648 531619502 839505340 928080264 809650450 821275691 832746564 984354469 381636240 609654765 639126180 746820849 418115613 443907822 306098912 936328047 954020133 997793923 946240238 950305317 891373352 982732186 250962547 337607107 506738715 677129396 971207471 992620591 335582385 692851283 57652521 679435386 355646693 641971843 490042609 944134921 628214233 711394297 701452904 922845345 204660065 316085791 986802535 998104233 534523354 940729137 722369849 957035828 724350877 756948201 914060916 982523271 180901490 440492660 899906278 934329514 957718829 958678901 560347187 719339703 456909503 955298127 6414090 979582016 623142342 690301947 962719730 968852110 621740081 722319846 234299832 930687795 511825033 865001018 752059374 867360905 564372520 960435254 916655522 948537956 678804024 716954704 544998138 554456129 119568489 649082283 348513894 971476092 228373524 295053134 432338750 892005496 728481213 954951249 513208953 584732249 521401574 820782037 779885704 861885900 984452444 990244324 471299589 768525989 591651643 927298371 978737698 998930766 607157527 859490650 549885861 994407415 417331482 493598774 637994652 769778472 937419156 996949266 442314375 788823320 8347289 48506267 12676096 516839773 309371081 319423736 812485503 954673507 438425511 808691830 480538846 873814323 300931999 695899926 965087763 972954322 379625606 681070711 617798258 647048129 332651632 408699531 328579189 843340771 724960534 962296514 560133621 675740552 986096900 991469433 504119994 669444894 251042429 804198385 464520963 517172133 400509985 788185398 210863183 792925971 130431798 731674972 733136756 933605389 966379986 976628310 278734328 382810106 79559737 245080697 349826096 371992013 372060246 480951944 256014498 886546677 225970823 778859909 678739696 827805783 901239402 905230972 713200486 742275730 43025912 274937258 454046088 546576829 143434500 199286457 941070792 957029510 636737916 984892980 223812769 300729145 372224499 395380264 524145319 806501306 776293830 978728250 626177275 640497885 114724734 935352357 884874299 926657653 801551480 899101159 990393783 994959409 647835997 815893190 725187641 914349849 599432166 611488365 480199838 918134441 445532045 743013648 297609321 563590548 366508900 656146093 96123935 313525919 490412881 586687021 446013410 449448191 268698528 838426434 992385510 995945917 946888017 973200253 141327464 775755363 775244975 987587165 192530036 614692066 720352733 873971752 917482575 980751017 989796997 991715727 411591538 445220972 248872988 490850153 963879261 976920201 642403734 835982086 737203848 905452678 98935925 465486446 830132078 858229262 207695534 465208451 427243849 759385320 37817653 674443758 12224994 282386638 561743037 805471664 883126595 937177554 394825066 701641913 13699335 790065139 433848131 890900022 750710142 851503599 828280826 882624409 759355277 919712065 20151540 706380205 17545536 557703462 660716066 783072487 750800691 803934465 946673313 993855060 319156509 643552133 535225551 789589986 737224049 767547351 742032254 966992891 63879930 366306398 874705673 876020388 811343084 940773351 606220560 656219779 501025237 921921852 964118655 973124738 509753843 817086947 720028951 872042906 761931269 828337837 527491328 993940902 115897016 728118818 726186692 735709837 907403967 919873399 389482889 709783618 156489539 709366672 959982191 968273609 345057442 642887931 540984148 699125310 544401178 669757074 19516784 294408129 512271117 656382262 519477680 708651536 223585481 321930395 437167884 996145707 504316411 832340329 93768367 406658853 674533779 872160029 600421324 886405445 154894182 273427166 826449626 891912212 364927726 458680182 810966075 945678585 883480050 925054508 514145503 733267311 768849941 920714387 121860100 521615555 142714061 562499326 125590926 824460747 426985915 826978738 274218141 317497708 693804772 885421181 623227201 681852964 608034167 663225048 151783818 450960878 316630559 375960216 64211101 945283447 566317206 701781762 608810198 823727624 33175415 326198794 312178386 483740166 680569974 844608102 521864455 766016630 455880293 773113105 171021101 315259062 706884940 808558880 675139579 688324860 625125835 810667338 631499797 837512719 494320734 811405540 665361552 736284422 265718500 402634598 126219901 728127171 696457266 859000944 575576140 842588001 225328973 456339611 969716448 991827800 535735078 557212197 438765292 580355260 511568084 609635992 53617226 195590907 704410303 738785272 41230228 879043686 365257662 513019907 78859704 971605550 474953509 583948088 360638251 937268241 794655184 969237688 399960551 797041973 633678777 811389226 296088870 309252264 630712980 639077078 695038463 828227248 787360236 843051245 977222866 984780582 844308726 884618182 192417763 511130953 598467159 946474762 715683304 994455381 290452667 850767017 472178152 802769703 956357863 962040462 816608914 879021297 749667168 763026719 353472947 820323574 543471994 672105315 140469870 544067167 677273982 856994670 711663172 897634034 211542682 996488071 501525930 576846624 515101805 926152701 501755885 654360598 52002824 933992588 227162820 636506986 260367827 590575254 99669120 467795932 163462560 863271627 625555711 848316209 564694710 627537606 787214514 850979333 90388404 551663299 957986162 976518606 45810237 412269026 461233487 562466545 537864272 878784730 365353255 952822386 152128437 658226555 231139915 365809997 999817859 999905863 663286861 881532163 2134100 536125069 758412696 799101154 813238792 833785346 201034027 920728726 932215283 972400759 144776325 249913929 887765851 917712993 260653164 449981214 969052545 996730450 557971319 941996712 364158111 693114049 56064360 342008970 94663344 600996078 989609878 995791538 932444901 945585357 149442684 248009617 220310859 619745626 441205635 748987933 757881507 888225999 397076389 831376914 660158273 880728677 67898399 891320592 53627436 914838881 125471807 268041553 935479958 994678264 680708465 924957834 45746681 330851395 629281686 707561360 228667158 539368482 865338839 912043032 247585049 347104000 891254715 942847901 171325598 819332363 45672855 768917184 770156225 881455938 938098262 942889215 723740974 813651351 98651629 575243883 635763275 935684136 410183320 693771969 960362049 971455232 389053916 648602755 560021186 860376001 815934496 832938591 488493346 585236857 878134006 919437527 353879576 773508413 322586914 691202662 104171821 889288173 838332657 967943754 259241832 615752898 372067882 610576578 141353694 955652128 178862972 509264299 966523618 976830859 152198367 887026538 368320849 879238574 863807098 938492931 131553344 658076364 538629672 987517477 739042212 762196541 704368715 929922204 713685481 979589167 178537944 558471160 441789713 960035030 564928656 735005884 72211294 438323993 200886410 791347601 231928302 996489141 702918240 857943377 714429914 907012777 106002424 916177578 825917210 868598649 699777904 995965052 924500187 950837349 809281955 973346975 627048926 864109489 756046458 956073552 616792820 821713664 906238851 929579917 489581605 496816727 355228589 358364986 176904862 979072683 220777065 676296918 538262588 675802895 569091844 942931535 996741749 997445158 978079426 991737731 418392024 930903424 921498772 952005597 540371888 954323735 393304465 731652010 278329780 658554481 424221190 474111407 887033482 918769393 913626541 981012047 746305472 849645031 117174008 405076735 948808261 985984986 609772066 618468572 15323668 489413428 387162211 648835286 584425174 651904954 707387719 850578351 660768296 986329825 672776868 717497236 969892693 973691738 818997040 904155619 609171595 934619470 104427236 568587207 920833455 931587860 149258014 687765008 246709938 956328538 749067958 935970890 520767153 570201159 133651470 436151179 689259196 924718513 898001908 995607634 923070646 965255657 392780267 964614305 408187198 728341689 826501668 893428838 724414390 921162081 949038109 960153020 609135306 949098292 638184186 663804532 250080716 283858465 168868188 502451973 203112332 863298164 325214747 376439468 261174812 683993200 831563893 879010720 989472129 999790782 937120840 945475510 848339673 945782788 101504523 469452315 73974471 305733322 290147767 689485765 659932373 909529269 277760975 743645960 841630366 873785677 990516783 997087975 881172657 906099039 362216205 966661104 936252797 953958649 25580436 590277479 248151691 670188413 831527964 894741467 501213800 900366206 748841595 961120216 315450215 715228631 227502430 968869446 832276902 912945071 259826990 601726354 743614220 834951551 66347924 658659268 22744766 764688688 456285471 496879972 362531044 777832166 674163863 889017511 870683957 985255453 590652555 728988122 691149018 947181240 204827822 834882522 341166100 580470762 402330968 440165859 306491161 675344311 394212973 672343597 923415712 946542272 66331322 815861283 929030164 985959863 880755952 925433500 472689077 623474932 490814905 821408346 912733161 926330131 565541352 646757969 152041272 476932340 430692647 489008099 810300874 865428513 90084784 451437203 572829308 881661217 230363352 713204309 702553631 720174042 233408671 823885159 433431194 881388251 362698077 999295659 952613616 992964582 226079982 961873248 546482890 584891611 463840923 511731966 405430296 548741330 494915910 795388719 423928465 718184203 57934193 242475519 82980639 609647761 919540272 935471126 191163854 943922127 70834564 387870066 887722052 952083157 110806720 498087411 585562733 677507637 342479077 498270087 182848331 857999426 622264457 916123774 563705896 947789338 833015553 866505277 760595037 868679225 14119032 954013030 289367478 638053628 184634323 259195807 711416379 884346430 772825575 988943827 55078629 306495509 936471873 983753845 218114116 384865646 623739844 934130964 960472045 983065438 367621939 800755957 962195740 997664970 807353548 853839043 544557583 903253680 859345232 965496078 962201424 981505846 863117247 986135871 155899573 528726482 515457681 609153646 726926767 772024681 663805829 710323918 735632318 948001573 214084031 710807209 423641248 724303336 103757740 821602770 787058370 942839376 332756883 699310546 354305738 836012403 721509305 731793797 840756230 940662450 544109159 969193926 519034631 900842366 455245242 749963782 184892150 597043572 792734972 911092313 755844936 882965045 160250607 194575044 110687399 370792031 684605897 868394949 119791309 844867831 137461028 479918608 843840888 862129975 886690812 897617559 925576213 953732994 876583158 979328230 596249544 647752650 196823854 398489015 668312312 726006318 824786097 900758987 48203640 664108047 144770034 455521252 673801461 807402725 329837295 674112055 611352442 760331094 279386473 310697555 760989370 948408562 152314555 956450135 65681557 93616973 490768107 866039779 34536024 94768567 63256567 78993576 255887223 283821159 650147734 819885332 905682324 910591342 327583089 416206942 184427141 744125931 564800712 843238135 769727681 843726536 325961468 716831130 678032718 824472143 475672502 529386146 928856665 948142928 698168072 731430875 994398287 999900835 606884547 852418137 815179183 948490231 894801429 953128679 924462348 961029831 802302849 897473933 200986262 655615016 201330901 926150091 881063969 951050329 947433756 963825300 463717364 948249608 111912325 127604740 613995782 754019036 211419259 443397628 978174620 987047467 824731525 967936284 936466426 978661031 830615176 915681550 619581460 744115077 447901180 960858990 15773707 361508025 868353109 946189096 884316028 987988669 239212945 498545102 560141957 910702146 803971180 869301840 125259102 525292159 824870610 969968330 336077465 716706724 363660015 936827178 714369073 772546161 261844288 455413510 532181021 537917590 541613548 801481588 205000300 861726048 751596359 892187211 591802789 780137473 174207917 914049144 850435588 965910394 310960011 495724582 11466745 580034441 225751821 432184223 502370041 582376823 761907979 798080248 261548198 840998796 227660121 558939172 716045791 931427545 48637175 312957322 680960543 747900942 392819754 852891397 67836641 736060762 880165978 998639327 896425626 929715454 128498472 184567561 905065045 970716588 961700120 996742667 501387121 543579686 287657229 315611769 148338952 258617895 856517245 936087042 875461269 914477843 847434394 972342771 448394743 798032064 980789095 993063968 348341222 386066471 459589130 949445747 256301919 325539551 950086484 964305335 390208422 404366439 798906622 856794989 680916801 998276727 228414051 269905940 975497703 985152620 84212679 852654110 819762036 939368906 6951867 539024299 886510026 932306784 402674426 976292482 10177455 669990261 111726439 746132119 690138607 995129373 161375172 511518972 576693588 975454974 918128818 964746500 25655370 955422443 120009839 212266164 113917970 745158261 963029826 968362800 790763020 822523884 877056209 905087444 762158914 863867585 868924369 980179664 576388791 915002740 278410289 857859087 655392993 819437333 537683476 923476258 481060054 733130073 403651982 597073364 357529723 758634690 194617425 543211420 780072731 790070450 648984007 805602986 821664172 918333312 904925857 926630792 883381466 977124058 405286474 825443387 901078644 964608582 252794985 820812169 658830322 723114557 529766399 981046084 987836453 998969838 165751140 892856068 162634878 935460163 448316961 996423004 561163172 649329783 537062803 997350404 501026384 869462162 162428121 559642360 402680075 554413052 924994509 927773325 743997602 982014834 610732180 910483414 35504667 187997807 904572914 924438455 515989174 662157190 266438293 266956536 185696716 776304763 736545513 765964550 963748941 981482655 190582623 723398840 717102917 745361928 711178335 978427162 698895525 829010938 763077802 808081384 756459976 796793014 40822747 47405349 658881988 796238182 574629614 987779018 947157848 985465266 330906788 948355696 494051982 716487548 620161491 940296574 167841536 870396558 470297473 679187605 602625994 773134015 770203949 794591393 12368485 787570840 372798319 576413578 974287743 983760225 67621985 549077032 452167596 492195587 715582831 942679145 773245056 935414685 578900937 798740613 242703118 815330466 917921212 925271362 676960077 742410282 154567755 437717168 336582946 724963139 12170549 93747559 803292624 947179740 775529438 993227905 764424519 876260154 895843218 945427746 605198489 733647258 855714032 977027381 970520917 990907114 621925394 664363781 673729056 827827594 881789231 990443338 848023644 983250167 943323571 978796363 350216682 955348569 809294962 888578510 38722209 670696288 981520349 988513236 524859456 788489434 272947629 487024094 180768427 690964122 147736997 466208339 867693875 914409691 334519183 792908710 247441590 252905616 615938519 926787892 359215117 427115271 757023037 899276884 822357005 950376881 721373241 911423396 790769704 925950880 827294548 898670555 766567912 962481497 90254232 398193057 815464416 938152858 445864171 831214411 66915834 626878275 747915432 988734719 833011029 883440919 154762593 961079088 144815105 162196869 599461998 705193707 150961143 456925374 901060445 961336604 418086386 438661948 663753662 993867806 264197931 519904533 724934892 937974035 492205841 746202356 740095171 994470795 791115909 880222907 383654895 937461612 996387483 998757283 524724250 929739968 7179630 886076394 973032773 976860506 26675142 713340456 874283995 923581826 979485837 998615783 763129647 893400301 486303872 908498351 844684656 921170603 564753552 908570849 7158730 815531817 977007619 993702414 600857408 756783525 977274527 989041654 500378517 931940153 733508052 744711960 587515473 927938897 843190730 988154779 928212407 966077962 517139169 907944466 117719310 668058530 488319677 666748416 508611548 625958749 915551346 972618290 181659497 703331194 503892487 831064261 126584055 468019669 309841318 617463190 630698526 667680551 777131379 897277950 456949702 457012276 358219990 544021272 88408217 203057578 731834502 879225890 347277318 729090819 514553535 771940820 223049847 563151394 163137307 220218107 381155735 464362636 492131848 696640112 28847564 556956418 71359634 122874592 54768717 493404596 503084625 792084969 192840608 583274831 636934104 792749928 825308517 878150625 576291508 641001575 333946328 781165736 808055830 875697466 22641362 417050264 309918393 483204891 327137752 430418785 964983587 981243584 771010614 923531480 987001908 988359052 815985388 996498665 843151592 903401240 468135234 575119147 759420197 823140620 107052872 682941419 868676603 897583577 383138337 669412234 86033903 139365500 694705993 858301676 900292931 986158119 859764887 954796462 62286353 280083702 948346463 990412794 58276837 514899272 318391963 802532557 382372594 520827025 261200169 591495870 374012086 984984530 415421697 598763906 293988976 301519348 556107128 705410604 960409994 961776907 812561965 853296061 464128120 731907366 665530725 691745282 729926039 957563037 80255038 120719627 394398639 928668597 924646346 950194575 670518811 682971705 476249374 763027272 120532849 828525457 282075212 950221166 525854468 551196214 833636884 999083366 116093575 397463403 456110177 796025058 907188418 975150135 898392646 972880839 934625458 988653202 316992004 998845563 144770573 504157867 807051618 976363618 367445584 837634829 175916525 812594943 92729396 552013702 417912346 459778077 464477878 934634791 842523822 895558897 308038971 842414460 611852562 696927104 741415080 951682687 218669664 997405781 82868300 166958547 352612398 658677984 412610031 593430910 721195684 826604531 880842478 965042632 214295074 394323983 216512558 603027162 46589405 931821560 617060658 660028391 477893736 714399435 539764764 724734836 105263331 276706087 525081745 904507034 366652167 662638641 99920063 589481699 403294342 474006038 810310923 877506761 888131671 891006360 641584120 941858543 405896495 955107605 700540557 968990251 191940370 824525108 925966244 982268039 130463343 164944929 205259405 381244210 555368700 600442039 421336680 891971146 120608526 825256168 927332207 981838894 648690072 836306626 154732344 686922532 503055368 707573985 514429483 741578167 391049196 889320199 631257092 930664387 225816097 344144362 929913872 991636872 593352540 984504701 765016869 862675612 749161974 847637909 122029443 745920636 928557758 940596434 180751448 675658245 339456468 766177028 886700938 962214481 119287620 286961672 993602108 995039607 972203866 986966771 760837105 794272793 72978824 747500125 130070465 141206715 310321428 568625114 708159448 765094934 522401170 819013810 155897232 688545830 408638909 437739074 580132716 638534106 137935277 855687670 660978162 971083120 64552445 897972206 426477140 810127646 282043982 757912271 785362843 901107533 200301447 369223143 517115523 657301205 743957360 808900233 490315845 667710781 291921060 684872745 382694647 520149266 106099534 984250185 439402230 836585457 228533900 648962757 905777388 966593689 312581056 977503043 534976392 866031681 921453225 941130848 103387799 409066594 760589616 999982811 465939544 647397467 827626990 845499599 781132927 954617666 956150051 958126259 845834114 959811090 265639795 537533655 634286490 751775874 670831264 687855578 127188219 879335792 575754433 920903569 669767628 752675709 550158931 979798197 9518902 528797182 742901959 831485664 192152842 577138503 131294633 955370805 811702820 933228034 538782663 585467214 838193741 929295437 149078074 372053612 336893255 947205310 178247998 988125337 862698281 950457651 43329277 134586293 919027505 981373098 928286570 977170221 415101465 701328260 282222519 477226483 474205129 619732144 542433662 629931540 374406149 776233962 340508515 578672844 17215497 578827683 777734934 858718235 464601352 628821274 683794211 701873385 585426050 954850098 252773274 764291036 766694995 803441098 638453313 777164787 392252413 635477322 565437324 572713667 735174582 873136209 71932509 678750491 240606179 510406034 135270882 213195596 83989144 536902312 431470328 778231880 418574296 942559673 764348606 800319603 335455371 775553785 490453496 723595813 442570048 555414083 146925916 588136826 41641966 353761681 682587425 792434695 965122402 981261158 195320752 967514059 557668881 991024480 424083223 875005546 594678452 696559671 755122103 759248677 929198399 952475658 335997543 566428702 707196450 948840461 681059896 971005221 754471914 894273019 512491761 589137517 210076187 529481745 444749728 551991679 281611040 960135397 273011409 410871784 152683444 392493529 899249513 961418173 57786949 690986681 543533462 644832920 202660228 982453986 100030258 717695102 917450348 933726250 761410354 932979936 606798089 659332319 3423180 862757277 836268576 943434288 593667744 960311374 832957543 951209775 228810335 832132297 561222411 982034762 967282799 982144688 94907624 434321887 525669721 901271117 742659401 777623633 35888308 346204273 44439231 110598787 824924483 846366586 725157486 897036775 954390564 968122955 768925440 880952248 721833080 755331450 178355971 686583004 236047846 727350605 250962441 862997493 104116384 855357988 862554557 962135203 4001481 266086659 599968066 817349838 510221754 837198168 615658834 823774962 769529110 949525117 731514838 900989516 74100774 479620142 682781503 888419483 389303961 467403182 497848450 607862351 88647067 877910892 717414164 721872105 42255239 609007115 208938308 720619796 332069707 907014025 870257871 870988345 66409167 492232934 182352259 812880923 386688657 438652682 114973539 853387858 71128456 627256567 88930573 597968950 121248563 700387780 124004873 302961597 703557660 925398022 861358931 930048613 512874065 537379596 474034721 741365585 662309142 809463307 701514762 856957135 991673565 997826630 619023102 697482870 32017201 828490328 973737342 991367316 954447103 983896147 421179976 967967924 863217446 987589318 782206788 915996643 62500074 545019392 6032174 134840038 532718561 950532525 901947180 978863051 577702955 960093171 369253470 657753923 961919763 968402247 416229278 951676052 279217518 704399431 202884491 976601907 141103433 864573244 487334763 704891111 12550810 574101587 299581292 681960003 143386102 464898486 21311249 837975711 399496532 936143776 902202132 973619567 602432417 663720264 16259836 577417049 645438135 816662678 110235395 266256195 710724265 859818457 172064108 440400698 576385654 827608238 725733264 758299358 890842947 971969674 640802139 922049637 179180058 969168850 562486688 590546300 623909110 737587455 724726755 944602950 826028225 859704796 884820775 996641708 389977370 784331562 617773557 710958030 804779525 916644218 829484778 945107730 902828862 956696677 180181001 715894011 489866461 697914306 765133994 888690880 559689165 816462297 151110249 889172805 67571082 964768299 440554628 468421236 361865896 899537472 762787780 854810884 521150371 780415932 977600903 989016310 959367252 997475649 575526272 629146284 424965502 681346013 628575344 669464713 407414822 426705668 592301210 941910427 727404073 749735737 698716159 919994895 159267092 949051356 555496713 600971730 26901555 846188396 810484133 812070757 822616433 863358398 466004921 981055606 940005359 977434666 583986211 738115669 199790919 491742226 846800711 946833390 726112344 758065733 843237124 940347099 225745537 933864988 740125684 774239606 564166657 934165130 742387264 843468852 218493305 309584638 290890778 652658125 119113108 849130445 259631661 828121640 20276880 501947873 60718356 187543496 937926103 995296475 648293202 738062411 464655203 817035444 833623914 914364459 483548151 722230742 212818505 403327789 669303920 814978317 595135137 651654187 390270653 553756171 623781532 766885966 723941164 925206167 812886522 863878797 149841847 845933853 200097161 325358966 294551226 656558854 900907872 909578412 998932098 999193618 468950936 721152870 714329154 922126587 300324122 681822865 126974917 592539942 47372301 590540876 637590019 693831822 746944077 931882859 402223713 668525119 237658770 756352680 78705735 777308309 200294144 848275857 756843593 772322898 851322680 900362331 935483110 944686231 774666920 871626101 26798934 196073772 189022589 479689131 15810994 838713906 240544917 701874911 504584075 845467719 68492885 69554788 64717682 751373976 743698710 807691024 887470423 993313517 429934730 545841959 131208957 845859149 431653637 926637315 210453895 276786818 97945681 173244910 913852183 991096241 347037776 426841858 678097599 687654377 819283950 997368801 867270148 905892326 663977594 747725719 432835595 805910405 234583328 333556543 844813037 906054986 172606510 567176942 376364539 425624354 214499127 662130044 722337425 841478968 229865482 850884952 48460367 259598325 169410926 219920538 253915204 937208710 885429298 915823067 401939183 733768617 386815973 486157816 15624084 106513523 202953900 458444480 576856163 646258422 165122905 865719283 559959514 673070108 222758291 839000978 78118381 581297831 183190116 711755747 387601642 859920000 471113775 546726884 950927789 977287370 627121696 765842750 887668536 890987285 395897675 540699531 754025050 843350570 152002101 570559229 952259327 998937361 874307948 957852018 238968071 684941220 302880138 309215914 547133301 706762783 993706887 994936129 122704717 316757490 819613982 936023727 806206037 809067799 439800609 796540473 657845388 834056887 117552092 586909548 361487514 824813506 329944866 401785521 755869972 949280116 794100823 964036237 10955421 166278183 52719451 916197833 388300484 487063753 731347495 869748094 130694961 903357876 28335487 925233382 631647106 832689875 527902460 749150108 433146467 603345783 401091981 560749923 564843812 953566983 969263558 991367873 363402934 705956257 574003560 757119904 264109306 715463258 918632625 959981925 60379138 158383506 753575388 949516520 180923224 724414984 611997453 910456418 708186536 998462912 384042924 779521864 900499287 927347360 3193910 180624538 111625590 269714075 574705887 851164454 371986359 883234415 189141032 725523846 12451237 559406527 451180903 763966107 988306798 996951611 574977494 645135615 729529480 855452360 951897030 985277249 25776336 509660073 233243272 351065536 822440586 903427271 331472294 881295085 373540922 580967220 359895921 608505520 883731389 985293518 686009145 902529292 883733760 987351286 807446549 813576541 476828648 553196747 969839659 985534988 139049118 975154059 690057606 815310388 863289425 907405380 730704128 825827888 846630248 918755846 242232411 765181395 325299957 853264274 619115507 722582845 48116133 747338332 733322199 934004438 808016929 815152147 663409320 948178993 427753010 534896616 819737641 990512617 557871020 768457797 697898739 869395248 804864597 905973279 448951948 524976059 375384000 507080210 263184672 493070877 954947238 960102154 243484236 292349073 40889910 496154960 710992589 806283204 133921975 821136100 730045806 879298011 511230639 631636140 973619995 975946268 20521939 891029698 229618708 760559032 52224621 845393676 543545098 759140001 193885257 396483083 96150956 787394403 400809610 676894602 274068609 712946886 569358395 794130272 571079132 977085420 143180239 713000599 774548513 871869149 807263884 999603242 593147983 787552104 289410180 293294028 215667302 315208002 320171918 585118260 648265910 787976686 487626956 753305903 31817029 200554809 761282832 777378051 632767494 815259936 57435871 516584721 86566813 97345257 666058284 977442432 72322802 648854654 963209212 992239987 729902056 761481689 99380093 982978654 55502021 480201476 516851828 598258719 87963192 273932886 777950257 905775264 841527720 939349783 410667480 895655817 998745575 999388340 80567241 743939435 175119771 572717653 476735313 716438554 881188242 968863032 908173889 977933190 669642629 969461914 678633781 779300228 670642836 682847413 137130468 271088069 416908155 510517913 712893477 903918332 209975724 601569975 888228155 932883171 150492516 252814019 280106556 570069037 30294990 860860875 717195744 726727251 30216927 428834838 686837137 838353973 952881989 953799392 451374043 516508268 496589454 633956567 254726602 355175879 740931912 805355683 325992854 734138007 379152774 600393525 828160520 914400083 789908977 889395667 232176524 786995191 954782390 988138317 691447319 851863318 802110454 825097026 733961290 995332002 543937231 740524780 300757738 309511522 835224576 854979927 909732789 960133225 477868658 612289815 993857549 999815966 62687029 887464651 656631962 773586641 882150447 909739830 163522393 501408655 497829694 609428456 803852578 965981851 756807291 786676357 7204908 66683058 981253086 981793435 226944559 980425844 752473011 881067804 936596305 944549163 548643824 904752738 668646850 897755106 346678956 982019175 325209665 598143466 138839527 204381007 293886418 528143203 101188143 385534343 606657793 700810989 72200189 950975852 867867235 890845369 653212052 877077626 130116805 704661725 780450770 793558488 874460740 950161678 968732935 969940900 900574315 903535660 16340046 311176305 419592117 864598563 30885477 651526064 188077649 701403017 363694548 698784162 320977455 873858948 984577380 998414781 298880472 407961836 348431066 432013856 427218001 762730340 14428045 910089929 469328645 854783656 847233885 956158631 557397557 825453027 27664441 998941355 470649669 628052808 832605476 866913240 864854190 961816826 868202944 897177894 885824781 933683768 609494611 875780221 886443316 978618971 331196359 510924371 554135570 659127036 229842974 424382034 671855197 923601078 918772144 995671366 908611154 936206360 2233571 715169304 417860246 898661577 70658223 787641194 141594612 380282093 147381118 448303457 460729911 900414833 596286635 760865718 765419917 785455366 867800578 945689465 285123989 422405022 802002385 891002615 29577139 468149940 572014830 919568310 645844402 714107774 109721931 696069042 249351912 553815283 513513935 729621892 509794730 924172734 240279242 712062913 637710002 680973950 340608898 547796793 913749538 971006085 118900338 269210071 950073772 990041626 12039084 749165666 584920505 985584490 506444377 662560827 499182927 890064422 383197947 923681753 312297051 527448176 943088975 945397678 53633239 111714930 526322170 661013336 882187058 943927819 491253090 940004350 121105290 357931428 714402165 716150979 925523632 989318301 59248452 926000613 656221613 890953618 480984978 501773027 344008803 684442210 679403052 705178484 427633051 928203654 211330555 245651478 244479163 479655025 379116723 506994763 498934905 894263204 166295876 690290539 299399812 896243293 92040784 610532670 969779725 976760170 727747484 822131185 725721844 980015165 565537631 948517042 806171292 963667541 703669463 797300921 243285295 938624518 793443659 855386215 591717757 949295194 485692712 890017897 488782676 714889793 90434084 559724345 605524005 617306462 362846023 470881268 242421117 596951491 238648216 721614322 32058000 841796466 944026374 982283710 483170928 931271574 710360894 816790069 112264234 197342586 590539160 955515226 357777908 596154648 877977118 969558618 73019206 607836693 952922426 974358879 400425755 738777681 667645414 910130589 901363665 918763123 899705869 989639096 176617839 989308709 647985620 979606766 620852215 735492393 872935920 949214481 712583035 984233001 499381177 874131292 399345186 639610076 110101519 136954639 663196855 770256207 398137105 749371392 746644260 916515150 242384867 841472348 163519913 198573458 94061987 637458472 908937623 942841479 916054727 979220028 23921119 216533620 793296227 793340687 579225812 806085281 284526477 622146767 735789650 877396601 730763080 849016946 873379946 916863542 957572643 968545889 13841253 805556984 797007385 938517742 225202911 757586235 834743545 843509464 285507068 554897298 271068728 791724576 709752759 991125960 135382426 713758302 738607090 948308170 330468541 714038522 238015339 342486687 405443599 589773424 17389138 262463456 614903225 652432354 879045783 973898155 982316522 996549599 294715090 435843601 726613024 778248617 562174585 919312785 83400112 237168671 468722240 936761368 546413686 740742150 980583004 994515785 64550263 232480722 802156760 973304153 848209458 915147145 648830781 763866624 574913613 998327727 852658187 874790323 857203636 988041968 264961895 953523173 570398671 633205531 364426790 486301519 800987779 824674663 113720398 388213324 14550948 448493513 861467786 915189011 298177097 386916157 670921840 932259069 788092523 812605969 190557927 622252660 616475356 924776913 255795537 549178223 648325079 696963381 56156681 472589434 48873414 345833408 366145339 919467060 333376282 792568466 35259512 74850276 131405976 607988224 731219360 886134676 293879269 574704740 507282904 846725494 64218387 167168004 492078417 701829551 613001470 820273613 653622666 900072097 12347846 303757366 156195310 779779819 232284249 734374443 175671663 211326325 380420809 542073712 741186700 917780606 499903826 953383654 370370698 791896401 454082835 679930729 914793129 956179950 287138030 510795885 937071088 980271494 806002363 857969389 499593995 900697127 466221397 649466425 490620577 893596967 26847839 176827673 972922541 985465362 158577357 366230151 992987260 998784982 835314975 841077138 978470524 994504528 293278862 332475246 410914402 555056336 909338204 953715553 578748706 598472367 103956328 799727629 755113279 814507012 951512365 957780242 624584531 961836632 756629602 909791628 586509519 836505572 435679506 998770215 694018323 830731540 312089106 738506410 268714042 984408325 146325428 798433891 456245902 586819422 45581638 488002916 345966622 588334977 48211840 571729370 181922443 626114315 115538360 306919573 551435870 759619652 566863580 582102145 943284011 954196752 888294015 936944343 318526601 671589689 906998483 982117657 277461294 576663436 959057754 995655864 171342371 488280851 335197353 702229764 942329243 946531778 115464295 723415945 48834071 664550748 983206724 993347587 983877837 988904047 206475386 750238769 334161718 403076524 225448312 975755987 521572597 752084945 741534064 867160197 433516812 653744000 892914673 911612229 730961862 971696865 674288034 864058048 265319109 697395374 565969193 588479466 930119675 994846053 52531163 545239106 759587350 907751843 125364628 678675676 543309551 670289418 146843472 453198763 351709336 621026618 499263029 520946122 490035753 564961407 725605042 992518701 399061160 943684231 831629249 882991065 72784676 480630380 939558916 977428340 949624215 964758558 220745126 943785761 120490169 299774225 650878182 680755221 205510809 430028106 449335334 834913896 359276013 731026365 465159650 793261808 748017236 778339263 41874837 122748843 954345601 987274638 737370675 990937352 619730948 980927620 654969553 723848244 682193066 716239760 379424175 819955120 837759380 952751353 68466815 683488209 503743466 766317035 895497873 910749500 447765489 650951450 525918616 844373128 724068988 796534766 753718329 795924628 385551436 810973524 733225408 821639182 142596950 388359568 662963329 959266797 632786838 862714654 580503274 880938459 17746258 137866877 38779600 238864767 921200156 930574490 141765838 279267282 80800357 243342648 992656324 999466021 196469340 513226229 324700140 373921305 118341021 836987489 223334623 825540678 772875498 817428459 381152640 566198993 717385188 985161362 752735900 880077142 22247074 621577479 552530245 630579394 742404178 764166240 918846431 922114798 206433266 500831108 58234965 706702578 738201049 865079957 10543907 763477653 927995646 937798810 127756773 628624930 859684172 964855082 529394533 715186891 724561061 749718393 168685287 254636648 533967067 668375962 912229257 946634307 976588643 978841036 539324312 890214141 759208593 861516940 87309477 979540850 865507808 902496637 553320534 926718524 90248377 456878106 120447894 198474938 935192063 998098889 909011000 972589076 331302278 534539802 870296472 917545374 530931565 869119601 257569561 756635151 426767560 723582483 376870661 447782405 600329073 710131685 975154696 976239804 982501863 994871748 911032537 947917773 539224931 810238920 950440044 979630067 576868095 731354228 280683451 325569604 992671340 995453171 513947601 655979016 488745051 745276245 818338764 886038018 25039388 703060603 411836063 542320707 421872400 875134318 699466054 846536952 281776402 467337486 702799856 824788800 634910451 654091387 585371102 861396473 792708848 827112231 178594318 531883518 539263086 859145330 804568004 933240345 799766484 802393091 83019949 310192326 425419291 920073341 612703093 717006252 821282112 975482496 255537747 586379191 843607761 960750106 47038998 480536466 532149276 793080741 488466545 709624541 832320294 990507443 181141574 284929368 565817125 692505617 232428431 974312215 342597266 606620482 636844923 935662448 88150437 609369203 228868611 263841644 642491120 804322476 188972519 784336784 295589286 850599712 495209923 754340858 533769875 825531455 845642747 965352207 816906699 987357614 591674412 671975142 464526836 914936557 483148836 795279342 194126922 383785916 454901478 867618109 527481039 932461402 702280689 856461587 951340223 952383147 482953979 662718616 509426665 856904424 671391015 897690004 732075852 816897609 313208288 336120538 452561346 709920454 401471471 957739699 903990354 981245743 826702104 976969157 208017506 434476237 982447069 994243534 187959061 265415093 241826320 942523853 702077738 937967080 177546973 636049407 522838737 628392347 677827297 837523467 812880471 817913009 898746782 918566996 989614149 992376159 192624703 471971212 183572634 424200141 820640197 880397697 960304285 969562962 9997040 494887043 219794551 225716416 494774925 722896994 448202534 547093694 868973051 949845331 176768488 443422308 921698943 921833304 233110000 391425256 674574300 744485239 637081918 800785327 884587802 967565206 496753229 963463622 778475466 992508549 207092106 563332951 935429792 956465146 729129625 846229054 758609151 822645276 612847194 667913029 239007035 278585079 414951086 748945513 971749960 997602702 649353156 794088512 856576950 975125743 438291382 534306449 967683043 973453207 105434361 856309977 210588605 548644836 781354086 972651460 749922278 964248080 853002724 995695253 693131465 969842059 338399736 807328340 76163588 145318633 660061944 889606543 635729229 665524559 103826015 854672023 311161492 414139387 930833718 989558356 79076689 85481002 364532305 909707267 468184691 625360619 200628904 527898695 200996453 595431833 192270405 992177596 772656936 958183509 297663169 433336677 660181587 787319811 638320246 924327800 144357831 449000879 771416700 889777327 667923350 931486047 68539181 566249447 170445344 847708988 337094206 606652906 468305751 913860400 69419823 267535726 42208555 644743361 653621981 885369009 65154603 732256548 451554719 630976763 162841515 736487904 247532118 755080347 918837164 993479162 851461237 852972434 373298042 527248098 454303140 927068555 72904095 974967861 74186557 519986126 637397359 659921069 275422073 557127982 357600489 387939547 884794641 956025988 574241862 770953058 366009891 377852508 88451759 774710103 457735858 853353746 736297588 819552469 704603956 958068934 356899321 602109430 22409889 801748002 986652298 997711983 903564053 918162383 216514643 303561139 205849097 712528149 64380107 316307334 107456546 124832651 272039885 527967067 970328201 974118981 508273986 537465317 155862580 680169613 943413163 958854032 54398563 443382939 664831202 965417518 386054604 695683600 933843026 980350273 185800100 723432123 79395187 280441713 415294931 585680860 466555713 823851668 355705647 795431501 886191088 955372958 433628001 592298298 636748455 746375943 21521819 824691780 598904856 878685867 51300292 436354517 844231865 876695531 198354905 931539124 706087631 890697080 385180273 889524143 669519566 921979283 947289140 986479671 445810042 745397548 449965806 961713137 301057483 735133765 767265146 776360259 886280841 962399293 208797673 470275934 590271633 820170877 678315212 702291606 562400473 584006954 392554948 909249363 567070605 778725790 225192817 758295582 291577525 476514285 235541674 849747617 945045686 946627661 246547606 833583516 36684519 663142085 960618143 979322978 426581759 874640747 511544649 890112904 433013760 792501874 307391189 778910936 498232993 579667784 692924069 895848380 450881836 600122983 683638892 697077161 255414648 295467166 673451872 990727498 644352454 997855438 511613382 689351078 882701109 990824498 682147433 726505595 10902906 670276038 912539416 990541181 442489605 762789937 40871253 438041100 405186372 827870389 236501883 582172337 847303839 955111727 697385249 829121738 975869950 979041982 110855904 256755425 352169076 481401562 846643452 942394190 156928991 267588628 379329675 463854061 488503063 955592453 468049659 535177400 246372776 490788778 121648296 951926507 593416454 721141424 688381671 735153872 283445934 607990772 862852467 940070001 146564243 412801265 201522546 354611256 293925836 848864612 460901666 929063159 432425802 550431287 47210866 293766787 321202104 549560385 714148397 911999844 283157052 330230774 700795014 887957903 585937690 717190575 248249971 296631687 433343131 627645783 317863293 330967796 515385924 524795066 811084825 951431606 777334106 996831906 750877527 826030275 888117040 902125024 523081454 912338917 835903042 973825719 300293866 697492614 171347090 411820795 684822939 749584630 900280021 910197500 774616995 980707043 758329180 900721707 561853233 978872080 315353177 833256843 742676000 891461174 873669769 927060123 748229492 932343255 516026740 721131804 447398276 965484942 576672546 815049340 901901756 983095170 542083411 612863598 762990712 976628707 260632427 546730590 721862987 802136989 978636202 999693405 884398839 915050492 375097114 607587663 989647663 995428878 383907819 535826441 4949086 53235551 148234502 971527921 267035806 804064132 237701043 888789084 912291289 943753293 421450712 823097062 273919028 974555389 220689185 377736786 719584639 765935937 543354108 754968806 621650669 962381171 266371800 349595349 854450593 929514388 941402901 945643431 493054308 936564844 579677334 652461098 792362488 829258905 835741432 868586167 34272179 616311517 194134609 507879356 429506367 557025163 240953845 386538928 299237220 754249782 466873920 677596977 314584758 803257779 98443294 130876703 703385184 740494651 587305555 612154582 673000820 705772050 915136874 920746760 570838712 591480859 319962035 677066224 786794215 855583880 678548231 742964171 974693613 992656822 196347212 444050245 131142807 601807016 124797011 476755478 725482256 978242417 597254552 764646061 96964847 669300092 877506367 958760237 213072270 972588963 649006662 846234591 915614776 986158222 480441362 625201316 770615141 920240037 747177245 866320870 937948952 987741256 179316650 490503743 129637150 618138610 765164274 823803693 331119677 643804181 738570107 738598102 982372999 992261681 954457902 977450652 311486694 711350322 898670617 908276519 733743976 992546533 434664171 646857354 452845984 682834969 500338835 861552103 29814046 190481412 879665082 891327117 284403634 991920453 591259779 640523093 459873394 959392530 948642945 984503022 522269006 855450574 271998442 789885394 885681670 929344199 921112987 961428734 838324423 884886548 484067038 780259687 315595744 589488055 229378875 782939323 607903911 853409562 686470028 777467244 135534418 726429044 581373758 724212799 508743248 726737242 10412596 958402466 27548939 51742973 694740348 767336186 382613580 417887681 272201877 857848987 749350225 873359768 55337626 890520064 561128600 568138568 705506585 751520179 980501243 981604255 392425357 396685765 774784150 886128269 362587698 781609160 433585144 866875537 189122059 529629277 888919377 993592238 731822242 946706777 567894460 983810598 514734313 701186520 841805453 874576341 354340265 675772727 851092591 968675132 382057141 495288489 961198022 994085699 356469857 524550204 475655692 691082921 279089584 935143696 901495426 917339106 671097070 931797063 901603708 957489445 543557083 684893837 582051515 610181971 896050581 998780188 807593202 917821638 380234398 767683102 943302572 986919473 131930345 581002506 995595116 995733771 271573873 760292395 864053442 957368014 447975818 788436308 79444192 878495519 379744738 387889069 560937331 733539656 148067746 605745923 774966480 941886544 874464663 922821234 774120167 967066913 106264369 202852844 71045111 395188165 671379141 877587165 735504077 784338119 203432823 501764475 417625999 704147998 930095273 994628733 876013788 949848164 30453235 850349045 256422512 319638557 567722972 653285810 79429937 533208925 240604996 978896408 927695448 936167800 234784968 242279272 700655565 783300540 484143453 822982583 42390238 896776500 758076844 929944812 610168782 763303731 723543711 961668830 724291725 858764313 805435076 994917799 89386500 813511719 619503168 713122070 130565587 855058667 896526614 934853544 847843969 925286102 304730285 586319874 775100912 910990412 906806305 965652902 828766796 847102225 792370128 892876673 736692737 978087117 57937013 413014630 36967145 246871441 617482532 925593415 18805586 636366566 144149598 549222842 905452650 974374740 880516883 907095179 210834116 376364777 717163957 879251578 928239517 948235983 807875484 812758992 612140740 708505241 427102850 980481796 581340389 997292449 582190731 716647968 892490871 922613601 481452970 703008299 611322155 886898111 397966427 474041176 575258611 621879456 688700312 769595992 220011855 971103245 693867148 904649384 395415380 525280675 377754916 662951387 147265608 595406536 886335907 956747622 871748601 910850254 846825057 881726870 737206642 816718558 434868862 679600242 450470972 872043124 859722743 926394540 724414363 965546917 101123756 736639917 154718612 818341731 571056885 838579874 78240015 87163020 18299048 896118200 185788351 877322413 740914759 742300106 843554156 912337778 361941772 852712376 286261842 835175263 87453969 753724393 298926849 984026376 268801985 766944412 88140460 902927420 200030833 275699437 472364086 773387358 622384016 632197790 770471694 981661384 853425495 887237340 181626716 666782939 430190147 446036602 497512096 843710105 615836973 850990563 594087245 819960417 289726591 683916832 574722453 878474293 115931724 458978791 324723792 410223238 91129269 891356585 411595219 416487042 990647972 992326792 961612063 965851608 39014956 378178208 844298041 965353185 280212204 339310456 730407034 907086218 327590216 494154658 354199276 485464656 180193867 225499073 113959322 385287986 325427620 439539526 210482512 795028740 606920092 842756386 40534099 364885876 204075203 763572359 35596340 851963600 855744500 913293297 530416075 992868680 883553899 905162531 920215231 979999031 729905841 972905774 859713278 888108636 113029610 567478031 823049854 990368320 763544742 992483374 771148257 990414619 389945167 535972911 445497599 854203058 503657532 610762103 665309711 755839549 625230221 768617219 53892503 569404642 745085223 856498160 774390409 895053384 864404387 948365217 945072599 957905551 702257239 925479306 494539052 914066050 814303723 841860765 992037727 998862752 572817702 654355324 833454251 873884517 70209288 240987404 843584459 868725417 695157350 940027625 253634929 359133856 947010941 947113412 227953811 564504723 556538381 944735504 64731785 88576624 319260790 667790668 498497482 994597187 594932533 866905727 804211349 867340353 475275539 754698804 204263566 745819327 430259516 728625029 501220082 625940748 829122110 830624403 954430069 980552840 404778880 981651466 222952163 957774087 267798024 899160468 969100088 986248655 234851860 392129056 652341934 658467688 538148416 934630983 621456076 971084246 867781925 893727422 388468601 963810143 537496822 813772482 134151347 396438724 227266429 683903917 316870670 391494335 126940828 886647264 737961034 796629134 542704756 975454502 902451628 923092793 727450633 944284260 675371948 866348253 755954514 821066072 783860914 839332370 561009309 584753364 735934776 839526201 88517468 167083285 741250303 923706065 487785094 908358168 199355288 202938037 667241477 686597461 44177927 303635136 284835057 839607780 68190686 995168752 49005271 87976327 643579807 831689311 403976324 466797877 154914092 428817820 753981350 805167467 887559029 907046342 826222288 984882212 523510339 904215748 165357910 824143632 129147138 311514828 814057748 903967515 541047348 604408683 191878312 811858407 250242454 769943821 165792143 219600117 500191970 734409153 591891921 615421762 112608410 616897383 272973180 808928474 802766388 977135601 948114774 995434950 403967592 979721244 205892099 595544121 201999381 212558248 283410412 905868398 777588344 807625067 965124722 992818612 218240627 707787665 31684602 187671462 444181310 588900233 980932252 988832479 606656724 762302094 873889867 992580896 793641914 804512748 25604420 726237631 387898733 854854676 384883787 819148007 618426286 965066336 500154711 867135899 909596115 951450602 145882027 697029122 194764199 295485798 237387988 886070238 295685162 624691996 994552200 999267655 781305656 987604587 870935273 941925311 776391020 817147798 134103216 299989562 225220002 391854794 284932644 486871855 529674254 639446772 131116294 743496478 10548532 558950241 228531830 831224171 122509719 225167417 834047047 997813438 357529063 700209427 738329964 952439813 620995749 801534312 846596138 963053931 74366405 906680718 488311659 560403232 932814629 993158613 857902323 989943265 710192539 728301505 831227194 942493527 802555224 890321899 267066293 899089790 561129514 818046539 387770858 410564894 699494251 703967168 303347753 313332378 758377316 819522202 100076821 273015406 87876532 693024757 988958370 995582242 696958364 776915494 121914542 130843015 240979426 529755702 646573923 844598458 362899899 611952916 47064415 209695628 295032910 767211334 815818402 837685662 462727589 560338226 932137973 967880654 304558434 774824246 479596448 857326836 308140791 629961405 926983722 933626833 954772391 958183408 691882052 782930269 851921526 903559017 303564647 381911925 788460479 839173319 893631226 919861894 666921893 941639440 412013042 587440319 287095378 453484632 392431318 900005684 837887377 931838302 230738741 726015775 953450164 966298646 95793910 241523389 517511465 946133109 494587940 681211198 502603037 776173433 875445257 995986722 495889529 861071968 348276331 361386680 264222680 424350997 171739184 958768175 671855195 951011193 650936770 888401349 189545762 615967079 9877097 794791520 253562714 784975792 925990046 962130101 605392176 867090545 45909556 241589451 569139913 738110753 468883781 856492721 843847417 908490153 721548922 941433962 207433892 478242154 210769661 390049497 826778738 834787612 200272612 314365648 380181353 652721512 329078296 867736398 77020818 874727209 688593161 859018950 162108656 969074182 167169000 555005041 574975465 764196796 787790149 864539916 166798695 820508588 492286119 967142014 669329614 887712839 648265474 858244660 245033693 594074106 289137203 876584151 330214428 694325570 323091256 668774341 230196303 777025618 370450204 388945842 303342799 724106050 509241424 757143496 454003954 881359271 539662384 940728705 883520431 931711766 477648774 494652564 721996460 972102173 370214445 476642231 118788106 305979839 240020738 895845377 268937211 638359437 385285173 802623384 11519811 943268360 458717084 514546880 448251160 456034162 634483415 876007534 675286119 915209395 673928970 898258561 901498777 960511109 905081730 907463487 70876086 113143811 365155726 914944501 90008674 473164901 13348903 71784996 615627064 880682064 687998960 688732005 801263550 958672624 291509002 987236634 206327865 651631412 479832896 852548947 485456388 853194576 892515971 915961065 293642944 556941041 754155386 960465906 529301407 536191334 897257574 987278758 260514291 466158946 569636152 698241164 441940860 630231301 841719255 914989462 164904204 332210950 415813952 942374947 327067275 958124926 882672892 999757720 831279082 877177218 883342497 969437146 310059614 410465851 290422773 956821094 184009258 693145045 764660530 775853757 291885450 835032569 719003352 764287804 278338745 989298398 320011035 926483740 744122498 968926954 828075378 910475202 248347152 815329049 847062534 881925102 535645878 580831492 52525915 329616120 601117351 868883554 828894956 856607246 989040026 994230137 751639249 795004423 745314548 971773859 894787323 958324906 388327979 972206932 446042342 796265573 639165741 741746912 507871453 559473707 306629206 753682005 810801969 826784731 779583360 858153943 788438769 810415917 16118594 20452240 546916988 755017427 696540550 739614647 498279263 538439455 415301513 922342874 792698803 840961104 122540489 546399384 986072881 988141182 54813699 724089718 832502156 948768515 290823936 890758958 479937564 869017950 75193948 170998805 334559011 700207866 802794676 850510194 539621246 907979609 222908145 837789660 910618461 998236087 656498077 861758473 437538415 583973219 620744977 751507509 463632724 675269677 633387337 897908309 181306081 208457281 69662379 487456928 853719475 876513745 541646064 954276372 315666784 879825638 476808865 791106303 13344403 89866197 748509418 800161453 227496634 292029012 594134130 664296398 861507592 865672767 129530493 169017708 89944502 172465629 478492119 893860170 44967293 106225366 307325174 546814020 334013045 636990065 469642005 735124735 895943001 945512432 172935763 833991258 477909562 594615561 802629256 822093617 220382155 958724532 71752941 313218998 714467650 928713718 473790925 984657546 406902953 523817395 295974846 638887924 570179237 865288123 132558533 946620835 458010593 943963675 503810475 926864292 930763023 949164560 5266384 886942046 74661394 158798264 499567115 744402833 218934578 992169479 825414763 991954870 802876465 866289047 226126858 255356504 261196782 738171351 754638825 920934324 109208661 875334701 537058836 684138915 867736274 964555094 906467366 946052959 175281605 857665404 290949664 330299623 828117989 983708738 258899692 574102795 759559955 914694401 482123261 747664728 61673424 743770749 253579236 416282519 470060957 887115340 7370184 984698676 743893873 827704291 861069065 953283934 501133419 750303588 775504949 815564130 847010926 941107543 68309429 785033312 214050989 843817010 683781461 685157451 240191903 575078469 971591768 979580675 532298863 610463141 399557222 964944568 108332738 318141585 72530474 405267474 62487321 916261662 450163819 870907715 248680706 760962984 908994816 983964634 255224005 553074901 851189005 935352700 136931546 170606835 327791946 927592538 283056498 339211530 312081228 625955383 749072491 895207851 837314694 909237585 995029762 997030529 586544442 713850576 387501067 615010005 338505584 658342972 254920117 973632898 410157804 717430881 872341066 932723344 290727265 439581080 558404672 671781407 55298775 331575692 955700526 963436707 174167459 623573341 488982404 863503762 45622144 825901485 552311356 848799326 581576728 940876385 118707092 905436705 720546506 858291353 472122192 962209164 491683653 966640062 586236782 970072619 131103052 363687543 954181312 962522744 686300007 722070902 106986970 429701647 181850333 370310496 400470044 861763097 402833853 831851033 217210012 815843544 215064081 392941296 864362897 987533210 794218983 893727733 558890839 751984238 616427831 918680109 938509866 984789984 378605088 554599645 890298410 968631069 268650194 297748009 532726364 814138193 723328133 798462923 884999404 968635899 631399405 726103177 895061752 905745565 794650121 812407133 610886842 711804559 884917284 892687350 2233915 164741203 525509227 774722567 527459452 709476915 711535646 951913351 536191874 886813457 28862964 723416363 780387402 995485516 511233405 777847642 457680173 590931245 912927976 919034927 58879289 240643053 997531364 999579821 977606236 980824173 48096058 682838043 674530917 716238760 496321066 819580461 585815111 722120384 106322779 518589394 815888793 851699547 147314650 991086979 840014090 863169571 838026883 888189232 892918028 971300816 313301687 391672813 839967712 871181373 434481175 633287465 201602649 506145496 410226525 776499541 219357365 326647811 802162704 820719611 617238886 940703282 38489530 195943710 535780741 940073920 93812330 217368121 98833266 402239743 711954655 789909464 611408057 939750843 233003615 793963230 324286906 533642022 991755394 998412058 546114830 865896384 713518903 779233394 634673610 763430723 30852172 576895137 184645054 384921233 955208496 975895085 645071236 663189093 846779241 850694240 125062273 505255345 830883271 863782765 310301052 474198021 933913444 934559776 703826956 944626978 36155166 396226132 163474746 376045550 364012810 687232633 907571939 995434408 226052605 871162347 343481480 792827029 444913724 943525576 667711042 700539599 46803672 87211550 811173246 970235671 81230015 594053095 270453698 769270773 172986102 202461914 981754928 993134688 423313747 546588614 371667929 905200230 419371126 777501487 108164500 501319166 485821980 594457694 747479095 934828626 85756769 297855559 119589808 275640045 963230498 979378465 577426154 652917713 886746894 983999454 188894743 542392036 598764239 855271076 494883868 694614419 821419683 902546079 784181126 931284907 751221259 822917105 799405507 928714039 809098030 815782465 76165446 804067633 232529972 781784799 82769928 258694447 891347522 981014804 326450320 493132800 336594332 947231010 924178204 935338652 249374884 467626177 86421955 739769712 870071821 998610555 399329838 838308010 111083291 902039335 78732975 521407355 678529100 814000898 713576604 759579049 398192397 981870596 540962680 575128796 623076094 945431223 541107170 698847133 82213368 941851032 772675126 777717691 949006710 951623150 105315509 986698401 452882739 571972438 468767941 530656563 248563823 709002642 393689083 667935996 932541511 947764644 649665491 904787250 611994552 850908882 250966505 537594002 692029191 933885528 830311045 959149664 232623042 595394902 542566155 595854070 555479839 710937728 229554143 950864581 893121080 941979285 655787390 732160676 914059334 954590117 836164852 890165842 613951478 750600689 303440240 480626874 954319558 991757922 235113741 637664372 244255240 298606379 953016739 964408288 236519780 883481387 114583165 193879173 912995081 989845126 10323718 196553421 79546442 620156721 615455908 671022129 470447971 553315240 61578808 971493900 629607573 962587262 690985528 980875515 546807373 669987561 845021690 940966258 674701960 683719730 933389512 998085185 881634479 893348591 51937151 136033811 449440974 955549030 772695614 807959658 805842877 931106255 341404189 994380371 756868370 867672533 274147776 662895196 123184910 759389147 173956848 307342316 700691817 984883641 858081737 943347645 873171495 941616919 703266497 842501681 212107448 372530895 922094584 933002305 190133364 833543627 739820918 847039163 490738122 728311532 101976199 137207743 179846013 479625459 312954834 465228660 416265548 721087611 753619766 977887661 621589090 966003709 553966034 986187926 875173669 881817848 455063235 885034487 248785320 873764906 637222909 844606727 280052030 646968547 194528271 663946618 638215822 654261280 639599259 831958198 167435247 528516651 438647593 454222021 114371115 999695200 385746441 993061300 263621570 317678937 956770058 988494109 756026503 988422191 338991041 481827782 244294636 723754533 883117315 918763061 141548838 493725794 899577781 924015608 63321242 563589430 941426124 999600728 6366170 679280092 523291659 766870552 671922236 867392296 870235969 876910656 217483725 864478368 685499217 937571047 848703139 996245844 548740483 846283989 890943433 990235936 83679856 749101518 604871482 725881801 789835798 898500917 276957218 316827193 445445247 520205490 737058868 783918303 703557615 736836231 486075717 510467572 426695721 767387601 924541415 999968232 530362704 685113174 397371915 582692950 336595873 598858145 291844963 653985092 339602355 385298463 371471805 860088578 983154524 993378386 661050188 775896566 754319333 843310717 577603379 978682651 95977561 574919678 886089368 975838683 160898375 545075602 159805776 715475090 468678368 960526191 827298383 889204359 187109256 843231518 640345900 821280538 16156324 688762969 187899511 882143686 7207819 422411316 847512122 868585164 445568880 590706282 489000208 806923053 568242446 625776171 788637847 812886636 988561494 997049699 406488245 664566031 617024154 831572325 898427015 939142658 604712634 899947080 880900028 964360849 878604202 950155144 313275646 335912202 744085725 862018426 86293019 481335425 898700361 941734380 50214765 150379452 51822796 551072071 678013076 813671436 769194223 881328244 416224753 973980812 258101887 852069336 600145548 863995363 266274956 897660659 896198369 952602109 586476017 981347559 862491337 936611878 429192383 593127956 759463078 824985118 573634203 795710972 659763253 799577465 447206423 903334549 201539463 642562156 471140241 840186182 391440695 945942915 67599655 386300408 423642389 732874216 388112998 955352189 139058836 718844787 462515625 582182355 855278563 896098575 876435554 927318856 750637387 767722246 385573813 613992812 576714238 954051120 267708410 782569819 285192787 655347207 535764574 613688386 772494269 892264698 208061411 258482752 954216711 998380350 152590344 861304799 172321116 594800475 253613309 569405768 622738922 738641882 615276258 799678151 869036227 919877730 59820023 277632869 759212663 878321381 442543545 606948690 796356413 913046020 265630301 476009458 806081518 830151189 39350512 557985186 766054300 778478228 998401557 999622005 709638094 764734077 654153918 976878785 751506301 997633179 826757452 944921534 761295295 862186955 534733225 903638808 868072740 984693074 273459226 765457753 681514166 966113203 112904208 377126116 608097496 948661128 551412390 829199212 480838906 996776075 747318154 964412941 199986865 877941656 135041929 236620859 339790321 631103460 27008429 253414985 748534084 770188703 142720169 405606057 471067893 927257768 610058298 963178077 294173040 577549712 663170714 869058540 467525163 994517570 54084740 150060729 468037533 903121367 208416938 781733118 344070500 920898123 40464571 778817182 66053118 599998254 957520444 974633370 550732128 809715153 904054053 982004209 532480330 772002737 262331545 649661024 929109244 989149334 826028582 840868007 298994155 413333757 655461472 997287173 242131941 428764497 894124427 984392425 985624104 990863533 785055495 901793950 296869141 385087736 334335939 619676474 20680923 304904611 497253353 875714481 913022079 980021807 492089913 614635454 431305472 458650708 807027516 904400261 140502728 491786894 286011088 379478606 930393689 946469043 14851606 220737400 162603410 525330571 183142958 867981457 911570239 973381314 507053664 723548557 205667518 804551583 104452504 955598447 568194743 699596446 324303062 747212262 946527024 987578467 397644654 853093907 195789167 783467645 886811750 990006943 174917373 597878790 107204045 745451446 187524671 666697528 973618185 993055598 721226299 855271541 909187493 951560862 703326404 749511126 63374375 688792338 582773446 882540906 648405287 790567366 670942238 829571197 698513827 983654481 443024836 957292887 952903746 953790666 223053667 307593263 623256125 698565640 791269124 806694428 119329651 926769889 292897404 784025442 227271555 664132717 58102878 560172516 797907707 885427845 756955443 759717238 174628919 925615572 845997467 897715807 599311234 618228521 208387144 522279726 76026772 192701207 686297698 897869739 783913405 797124538 308905174 402412168 988521015 990529745 324039596 698547663 102565298 970700212 279662346 918669814 817405699 852824160 868956678 903956924 329607209 536487559 751557379 904435906 722646984 819501883 490916468 667355223 217098142 532950346 992359528 997558838 973078362 996459051 769947154 953969596 614978818 795780536 960360044 999513410 800129680 808402815 807098821 958226456 901851827 934898439 36583014 608075721 652236824 758571512 398563474 705898447 103494341 939774155 447820401 789586463 57857120 804085006 615895067 623602901 401628523 750577925 501710858 720221842 307517774 904967570 690283649 973181166 355187586 737765882 14313950 733913989 717497167 884081411 390947402 712782719 80283791 722102054 592314552 743713174 143266043 418672618 910812260 920700360 297361549 963454147 294532799 952359944 801974597 919476147 824617361 867050800 699007372 779697290 833302969 872284836 141632286 625644491 539665904 802463121 393441754 999999032 951838139 968424472 922782900 972882888 421341119 654157975 926857607 945229560 662383968 997226451 308918120 601493995 713411294 883451071 309031014 968234469 286175834 950556487 721168639 745510014 526276819 823413624 106435787 939867677 339867237 780976353 523974404 852328591 579099792 658409618 750284746 958169465 713116588 969800750 336433142 644026975 340027608 452012261 553500270 560140820 716538793 833480508 691196074 754164538 4445250 131802511 379250417 749439296 605609274 915394007 228314741 240450464 818969531 880823070 503105981 750876718 483399876 704412876 282638602 367136533 248197817 480526574 664385033 870391620 780024082 905434352 686358953 752620232 446039955 977804844 666145834 674716963 547169303 839029359 623146138 681599732 907199551 967049081 45181276 287478044 407059308 907962181 198318831 392396971 754831036 928091578 88281106 593180179 476003766 838741595 201427038 889614441 839849937 900325651 327238248 571916834 798427983 834321524 530052050 761241065 385793732 618411370 777410701 920508880 558774600 714287556 751573519 864623156 474076784 562035792 464742771 799030651 548740593 944816110 430441844 989525504 425492780 710354576 346821800 699351923 25088559 841413287 981242995 999636978 935580781 943052122 710152119 792464789 724564586 950319645 108553063 599319059 128025426 484286180 406171045 565958419 923506477 994653012 791240705 807345174 407212126 558249683 802171956 965623129 485497960 889263049 914310476 925860470 692303944 716300495 239062442 651445962 945326037 981714997 824156091 827934245 285887899 455463433 27170450 239588770 304333077 315692972 942013290 987237512 863508505 924815138 394035583 504656822 91706281 486197386 404802762 585302394 937755361 977121205 932777391 938722296 821779207 888851099 908118140 953220109 143899477 527773409 781241827 864686452 918169605 974178259 666181204 877779340 57639669 991087392 766953608 955145668 198984342 297733869 75954681 336197202 131934672 246658418 220921768 891069138 28555729 637635668 451771936 730291025 248322604 661975794 778686600 833298731 960684153 974006883 271571894 472776307 82624591 741510207 178827282 205764141 993805033 995345807 813531133 967890151 403276178 945357918 663266758 768757817 518048146 934875109 755761229 919285267 216124884 612986242 21282407 91009732 10297017 360262401 908019267 977510650 199551782 803172318 639831093 931628330 348676361 923223352 570576176 776137409 819872404 873572474 175179 926352033 646385290 896660556 82602570 544552744 734975913 989296164 370955143 479964208 716993133 958966455 352030617 735863300 393888503 609602783 256105938 801419396 995248661 996904803 39079952 960693740 98939704 127642962 136378549 781089621 835942324 997766167 804717681 962690142 2854488 483238722 966924816 989199726 264577111 648339122 946758178 986312130 811595359 910561072 416110310 492406675 367134371 962936830 580808950 794365285 249988355 666242301 330639197 780456114 196167988 216352185 14373582 935286640 823842729 844314113 23247835 290696509 805862575 983891830 174604627 583893041 718221287 859517507 599244181 797588688 329247108 707857769 374471001 877358383 229488812 535414757 311425645 745486806 608514631 815225948 405965694 849242610 348272168 767117991 936492174 952141869 369408786 907898344 77545446 374070819 309380579 393741326 240166620 675090585 433274588 806675689 90244930 756449527 467388757 479861544 964351901 983064971 385105171 759919171 179090554 833419209 285843201 722312976 327363977 743358590 160379865 647562839 932037590 950937696 812747396 833193060 442183255 479006289 451935190 599810989 854205705 935085800 301907121 987458365 28799220 232007614 177475815 613525378 597797413 897399538 538419635 542064165 246180177 627064772 361359011 998376030 199607518 213506137 666795589 682647906 388826067 511170102 862069613 932340127 715703800 866645564 830353251 997381326 956561295 963952501 63594354 567476119 392247649 689476382 62486639 336985291 782547907 819863139 873126639 921515910 288708368 638862915 44999789 871701092 480190811 683301669 55493845 645792974 853625569 935727273 662696820 711175909 379273800 425811594 163563631 417897226 254161851 769362217 705886122 875220592 357977051 608986286 295871855 819607113 894097328 997892205 398520302 732107612 713345494 976849150 625154535 806235136 880581663 946389865 263584594 786500836 139417610 223402401 885425754 934286312 495432133 603782636 845510892 942686752 38676509 698427906 535288202 988794486 166050846 492866229 889960648 925035585 133669288 725495216 404681194 881709323 459126947 524642508 209163430 222863733 726373934 969494673 28605572 990338496 419996767 438279122 91833080 964543210 671260820 913130508 889908904 921804997 67144818 684058198 733204319 950192547 743959485 842138189 941633071 997134841 350026907 831170475 732798696 933105516 850235617 996221223 648927327 942982103 574672599 826623647 358836740 467880858 250763148 586178279 168908332 737308986 761900561 916321858 240932537 408001068 530413211 987895042 431072334 890032401 43476767 839635831 240381674 824364987 990754247 996450179 761654929 798463860 910280427 949022588 330204769 466012403 640664790 688135683 538862270 778302188 746560442 883821468 282864684 479907253 141470621 485386512 304789483 520521781 105155495 739067865 936007400 998272647 762839253 841034064 638448123 653821760 971026082 984584053 828868423 943838796 74926465 664935952 336924294 856025654 882335270 987354219 235181592 451966303 789795120 919547161 606425034 894122730 886592050 984810187 813076746 987139660 381243245 494750778 627969474 909087784 28010546 245502100 420599207 573321608 536816820 722939033 60483165 765631697 566995459 694268014 151372405 252935994 824961059 838464820 165635467 807353179 943946263 992264650 362430958 403773779 217777383 708066151 549023243 645764757 156939955 585099624 968957399 986437573 472542525 818058549 583003411 830351142 280874063 379063231 695688683 843697536 982411215 994073630 422027424 814948697 834098209 851829703 721513443 759191804 196964051 602243050 974714655 981345143 425601529 731931766 54450195 636488156 639332516 997135472 725774677 946225406 739171386 806920634 391956501 730401460 753088959 884603238 395028573 399281482 274846976 926035520 147831478 724570063 822729115 855352797 739582147 803659566 536468583 803929734 739999408 809797904 324656265 427238615 10991946 728577696 720498248 840939371 553614493 618554218 174279674 264721434 50478630 386045885 318837708 893360309 267381255 629203727 641127658 922963498 936907242 960293287 124374488 687091364 764143347 809395308 936857444 997834028 546956595 873882544 829046062 893505122 650846011 972737966 447614451 641120478 935554326 997184121 99983218 656757919 431449890 784779132 233311297 507789103 765779387 787528637 594719471 994234668 203522762 728592293 123233897 365013297 63539825 530022096 941458035 976380570 58419422 147116003 148282459 651244068 805854012 830916498 187065878 850138469 163138771 899353000 848568751 940118396 825058891 978416306 479510809 664680666 935212799 976148196 510138259 967337354 513490877 606939207 909107034 926193522 56960924 69247050 996114425 997346691 871555210 942556415 57517243 173049165 955546419 979316479 582659309 783729565 363458795 870806685 186437355 639811618 119809451 928276917 612247086 760727907 104821037 523423627 664075252 964039111 799102493 855155711 107383751 603404601 953276048 965033797 131147402 276143360 267793665 906039197 706283022 820050433 440396750 450020678 352893067 946590454 874742614 913969378 863238245 928046587 339083863 664415063 574101689 950446892 615431247 637938274 419379474 602559645 246733608 481964310 374217243 555115027 794970821 901333633 568113253 680796804 835757400 992671176 794337405 820121826 274035015 936054050 411816302 718376590 240330510 363998187 76260115 401990962 336032692 950911675 734092255 981195206 264866817 666489787 731128753 984494110 789174474 943463170 936039161 943220559 261368666 486820179 251609154 991855938 886657101 906701472 29028045 776150342 838715800 892353928 687785959 702107944 951694373 991611828 411497156 636436724 983018574 986428738 580163709 688918586 172491305 849012411 660380905 665209573 891711375 983274169 641977616 884788581 639645704 665010882 370316415 991897509 457568285 785073814 238867435 767459205 362080901 500584011 457500518 607956350 817839297 919085804 283596601 470898971 509764257 537365834 882498684 931849076 821699491 991861086 90074648 539913067 333891434 557988685 84313817 825964926 495133084 805034854 143703716 901144963 531475983 536175350 909687402 980688408 170042874 255136025 6284942 953820301 71673401 556521531 555384267 906981687 272770026 755225672 603213007 862676981 624880300 962803613 535039762 923871324 965470728 968845419 307837039 602663896 313135047 792551732 398861737 837741187 83749654 199887523 189198824 281131595 472880425 977630192 893881413 956560899 126300301 211887832 281868580 918868934 403964462 536727381 433706826 736987070 933549598 936557692 634047387 831321228 174672210 285483626 575675444 791364791 971932289 981949299 988221270 988497966 210642889 451764509 733613246 766873474 951406940 964845102 182164850 646003647 816829769 876851678 461935992 820041877 714330750 929595903 956107162 969227801 169776392 462579638 183484139 986569695 158629480 317335507 856434298 943346971 731822341 752590187 544237158 896560893 81939353 428588943 286962508 618597089 61742893 609596765 719171877 943622309 58178252 645244645 488619248 973227041 345847488 799230961 223063864 223516290 492900673 766184037 611012899 855006676 308180707 787669039 554215159 956443523 614481849 690929730 29223220 686258528 909940837 958190136 915929578 958092704 735665257 978616943 869939890 954542385 436434089 910128449 261294207 573259343 775082984 962755152 969532861 995131402 708079601 711210975 868940515 960947697 115356577 401318763 649561803 788580700 385914604 949944353 544413627 911214486 231193551 721371986 478186358 996167990 999268752 999417128 500831198 854636728 868148809 995659480 206652116 476403702 144479610 848362476 928116889 989520827 560142330 629500138 718515309 944104592 849555696 924658289 816074522 906935152 70537682 77014519 115867792 191659456 746621377 842962921 104037289 207390221 887017060 975332914 703344334 830659593 41578126 849176464 732684206 844249705 840192110 955002090 9600008 424687005 704130882 836099861 522917659 597505768 117216323 865628655 127014025 829530165 242830063 734378752 972509915 994206096 52090098 234118856 676861563 876323913 87553478 359770051 212529568 419606044 796666023 913441041 825570489 855234503 238837102 268416088 163026763 970189723 798192119 862549241 329244552 746473245 950402774 957901584 45364385 664397513 667127595 763042604 776546074 953630542 296833972 784724346 941262192 975607700 650195901 753642101 211887377 573588181 85317366 244920177 142630560 268347167 98342489 259545539 829588523 859256726 330554619 636202928 233763979 406784894 674991078 731061944 691238675 846125502 371264602 630055198 675438493 886576088 745297610 757402981 214955404 244825550 863491391 918665801 1516697 274082587 552390909 846424026 354076414 824777945 703544738 854844099 559696695 804275473 700037441 975536890 707668943 834276525 940591128 975172988 395095074 797913910 626405185 655153790 577627593 802238815 350137345 623999810 520003572 935035629 413413922 769763767 985362146 992028532 151126015 481983309 15053339 40511816 577660282 752776619 41593952 653576292 501062167 761534057 918534720 999483936 650854009 825299843 524811240 868179355 255818700 726331616 810694216 962563408 320266242 545462855 955953632 972530910 751485073 935024674 50044112 108317692 433109978 727568942 373154367 473591295 498833766 693051703 485334119 589669929 565059265 938495152 970289599 996244264 984525613 998413472 6563644 713788493 29894831 715583402 838299875 931949239 830288996 932196891 861384628 899989466 326591851 536585543 605412217 646668626 480640210 654199497 67853057 363552339 230257804 465352668 279866023 875443881 719116487 797735772 585190156 673927976 90378459 809641543 110775739 334003485 247835567 439021952 626348965 827581513 134028225 729623763 460098227 600201652 504395976 748819308 210695782 258327065 997523260 997600584 50269929 684803697 315011262 808258162 615819798 932370930 679273759 980108641 433584849 460307613 696509274 849951787 272384331 294508026 812327498 990594835 376201311 608111703 417919526 639674053 642382154 735119362 317065083 580723762 504915957 770924531 9919433 807496647 301834479 364420469 273945004 892211433 477923125 886159103 584083374 780218106 497136918 688140869 791875759 969269612 775866384 879371749 50531278 591140701 130285869 662081766 524782361 637365023 846909166 918215861 14637036 816787926 841666845 969165118 588016475 738768361 209164797 613230775 88583328 957644032 199978501 366742145 85700244 589559747 399318581 835880184 113691963 405489890 367995986 573936735 937416884 996657647 163061018 453006651 528047731 995786689 261016451 536865413 625329897 679180155 815492563 856205685 793924618 819510571 28106485 989572995 752695810 941610775 492487440 633803934 358426687 552817889 440029716 579676438 390186791 416807658 773006234 953871122 924072288 999742762 366328961 549775860 475948909 782982741 174212576 469504502 368830932 959758304 785683605 878085794 785988518 801188922 44686 872627407 535850145 539947050 845431270 977550809 699170786 758567828 298055866 414501277 105891802 386222373 708556454 723536463 932086304 936087177 831793850 889662192 904576938 986061043 320555547 621848413 790560743 844208726 625291198 999772388 966876095 971423556 2350594 486867625 288742738 681317697 348143999 730328240 766008861 797167045 484160882 690915197 521084805 964945162 38665697 595294214 90036084 113068200 862359468 966426575 969909678 970007492 697678387 807840996 506221278 942474671 717477857 740099986 516146419 775829484 428424724 680573548 610244385 957345223 916701991 923950959 141029499 646735034 115346073 126535345 825610317 991782799 276132388 525489567 201323166 844118690 92492008 178123436 257901466 816966790 493199800 606814982 2021031 690584157 771766999 819721678 102955261 252347291 333432937 761201522 249701722 834304478 315158250 412727299 848107545 979645087 69802945 442961110 609651461 627087057 620616348 713418418 531256254 858211789 584283445 863471511 955388848 964762463 805360666 827421796 717362904 949421085 11861649 739134665 955866047 968314181 616472330 839967096 817883199 898605307 755288189 806675268 915311277 979953216 9788650 373077165 375874907 408190946 999136521 999937616 859444370 943156047 552949703 817225919 969659503 977065726 164397688 986116670 496001570 703318599 937581607 962169349 578645939 604409978 397762284 904681159 369117899 453153625 353142510 928876565 82269225 807530509 857244114 996947926 201590217 842295886 460373064 617980471 175307670 197967146 15221122 64925606 182885635 573913004 662583680 869914271 846946109 914232220 577934311 922718025 321128189 991333371 759475344 908389060 634094981 673889118 347635314 841317680 121215231 579824859 584774310 983477871 768062978 835594833 530469284 619211741 831339412 996741355 445406392 923405920 615897059 902874175 555203258 659403342 541341454 955172905 337838438 675082943 395927792 686909660 537094464 850356100 159343112 294379205 969434576 996264255 359146496 451290101 740814834 779070607 691895111 921523274 633049692 997781225 70803007 784043306 159410491 799141012 40575419 366294760 756056527 801334337 213796189 445465719 361411965 908652423 489875975 492101864 505233907 844069779 141904652 881517317 707796508 710623358 919950228 962833529 535804167 992060651 164811585 345577915 673162597 810275422 700862645 807781336 391411332 821781788 876325404 921370677 661891839 700749581 437739699 802742100 292644562 443091655 280052647 710214375 655578281 999397283 147594825 888217673 282267128 311672162 491209508 873943150 632110188 846755968 929844640 996767791 730752025 985915635 571558700 578899422 944552179 971930077 80496756 942153538 128901531 358110156 895729480 988257154 238779894 901725899 118157545 556279231 245314662 805421868 636425999 956446989 946670909 983401731 845187353 879911278 653518224 711811193 962200746 963531089 392817102 479341738 883825706 952648394 442715906 481399966 276923174 420753765 472616568 534352307 835783833 969689996 672207288 835730308 360732638 833733252 178225870 506223433 915477244 960042689 497558026 729846839 13879235 609637691 56330954 453854613 555055124 629305651 222233986 920713522 22214935 481119186 562472440 908931139 487440240 986781928 262079990 983215259 80298061 587061639 53370514 487567592 406084729 700979793 997894921 999328978 482385027 652533068 204837800 995951590 223264474 539788688 871355571 974749417 644901913 932758476 262160275 836243801 957015780 996396351 577516130 738034931 595100777 893308611 140602359 638405862 803429852 842351512 839206793 980005757 712544909 905320304 215463416 273727248 720245635 803312525 460599377 527238577 293867276 393597865 784777058 835588357 868977282 931918479 776207888 818194610 74899816 605820103 134615425 410958033 163297499 755700917 340501716 754191655 218913121 328096527 117179810 289045192 546049088 919753299 707901700 968998349 244246643 286995936 17006931 426874988 810864367 979742453 165753131 241221580 234982917 384453339 895135519 955988190 954435444 975631160 739290042 904033299 565676805 692227084 20715267 612929175 692716691 870171499 858790070 940192468 361672556 940367068 897713970 959783118 167669998 914676329 205774221 826435974 294261322 574163668 603710306 972840286 687554444 736562060 497471259 694978304 737681167 794580224 524740281 729756704 155596347 622880016 395103190 669007867 694178708 857279863 935814416 940218249 548990039 672772633 887709667 934263501 206957335 871560302 274902492 423434861 266052588 941735176 99662440 436014071 483730436 913214715 107340825 423695365 58633274 299929922 939389519 984456991 531575500 953876062 800239843 877987177 774875752 969109256 122811055 296286206 337574006 654476086 637316456 922865342 202649553 402154639 647100254 761399655 521230736 656366464 883582919 896363103 903174833 919363482 637905989 765058233 106504248 372625971 440467642 945032626 640042735 855097018 792091065 918754972 523088816 675550192 160449216 979456090 712314383 763930402 802705984 977033861 697221696 935698194 932788229 959948471 750510243 971883746 870856812 902905949 671768782 849219478 248367964 616282020 377949074 618505605 983717199 988245991 133282915 881656941 46474532 127948983 421745133 682680948 245667696 299137322 118676986 331601772 968106250 989255538 776150269 957103356 605155992 631539037 389970197 746499909 548050502 981986712 926968964 936745411 801225482 863604377 931579670 970392885 474395561 829847880 830548969 869434509 116882585 717000750 542961201 600314010 829183926 972319887 498592652 519083637 753082357 951974222 329554431 362561762 406463426 625062464 368424436 530176839 868696291 995350957 388329628 799801365 544926969 589015027 286409541 994213961 685889937 988919746 776956593 890161827 334288061 830313877 126401871 284536995 867354034 991516653 794240212 975801077 660130188 954160235 207302208 631528079 648449780 909398542 233225050 762120480 975408188 986660497 425162917 602073147 862519635 871794760 429614391 864622839 130636330 919571655 615485365 821887391 879624248 962339317 746428861 780022227 137875900 432636486 545902325 831274353 748478176 931936236 938182785 983275106 847393433 938591347 715339342 903904984 957118226 982018769 435966168 852898284 247701259 715761558 340448218 377171739 978586384 999282817 442388767 632906634 941214977 995549150 484944196 820443390 76535460 963716670 276681313 331094927 404173212 505482119 374430326 432378382 458153 822353585 330559547 852837778 323875265 928792750 887453527 972579588 455297063 899809850 858981930 898723133 564469035 923967556 899032539 937631411 21058158 348661324 387342652 786641324 581069371 902223223 18713088 565129176 350694029 473887554 206892886 527924968 20269063 834493107 166207607 844315473 814928864 908102423 419791281 444293552 489559396 846519560 66679446 770886838 69432605 699373673 791112113 816485364 503921792 996898518 445316517 770575492 776625362 924666590 473359915 711427866 547341797 947727500 200599714 937840291 125606044 708964311 196216235 337172256 651396655 991201855 361672633 719105941 568264713 640012642 555108829 867339874 675721202 782796690 554991209 924098189 668832930 886627970 472326062 926068797 25430888 72227375 95551635 440513731 34904475 752485853 474283754 972700980 28638397 922358379 813209582 987522480 193907875 688954466 301258943 923750065 917763677 926845400 127573356 213012532 408234865 627021997 956324907 959251029 703621546 803315157 368741259 824448590 188080894 536451637 685433993 778818982 687697514 930265815 519816513 945545140 496902754 887216049 182917856 430888486 915201763 931797744 21981899 907116303 409612030 413357986 356984012 561833887 366159625 783061608 637022965 801465474 196508465 197847570 457234682 548097102 355852157 998550249 693840446 886454391 573336350 785946773 140690008 880539785 406224868 465984508 156089192 212563458 683826572 984490834 853399247 964088331 696417467 847404576 72416762 994018995 436778625 572564739 605366543 664347260 564103447 711353532 762315723 873921865 870650892 876117416 609510466 759809403 656504608 867566679 674606534 696580117 505728384 965579962 826051598 879277437 420695843 855372349 138634074 462707825 105798276 116467098 930422335 964092311 480203473 861671679 846118468 923686513 562038115 973318776 289501380 697628171 554604256 806178873 132365290 429722584 365605431 774202093 580764015 852328977 872086426 891457597 111536359 524607750 920112761 927529200 526023795 694918399 757329828 961210340 224945901 294540130 513155584 763929640 90326318 739804237 817384052 954170136 279766295 440560870 164153322 494976816 911524709 933900616 404119428 833557464 354759572 453070874 298990464 716543116 833156272 966725789 5456685 688828996 261396514 509605812 259112129 517409294 621178890 810082175 849862559 940066277 964129074 990217179 930332695 937030025 252753455 784376631 28570924 405959567 31947924 604309255 463456259 535814144 665477092 928863746 425650110 450692602 571150046 844048868 135897587 287874330 464474090 715715637 158848133 262598851 771579655 961709743 725285075 877195866 987419653 999373687 774844667 782508259 363755605 602476092 308006722 972509242 264281946 810386805 950567877 983293229 448358464 694651287 387946296 681851285 301605287 428552650 609460173 856855817 646265878 795039962 909446430 943785121 795838045 979525210 275346553 418040937 970207118 993841797 404379356 943541167 209551772 816015174 482949807 566002155 676664875 990140636 264413329 848704475 50986654 999370819 791536356 807619035 460436177 785023259 893840631 898727927 504073948 620415864 688573645 978854817 129601165 287694162 557667549 778698801 176483931 688721572 117588135 424907642 492661301 586115936 195914065 861552742 856451211 989314370 580055598 779099591 379339529 840839589 441787545 782281692 849951661 894817764 67510969 569558568 479773857 569085195 605479558 660844179 333503397 980154827 648414208 878079192 23962323 809191151 491659008 914163960 381106728 923570977 358718767 517162409 62499986 371059387 340536658 684241860 842124378 948508775 149592092 535844024 338739913 570196028 50396820 301574715 778269976 780086647 533134762 950375581 821598086 991877815 798923692 849996498 955880356 964619262 185219134 946106559 85315901 836745798 360552284 737727603 430092211 745668525 636784094 873433667 562979014 664355755 96236 688460863 57961378 827634732 309050410 417847166 720823327 787865363 147380153 667352612 210063365 387075038 583738882 764369245 398924444 881173246 87952282 439717040 191996733 491625069 23778300 110761917 917308669 992439826 50666963 255050663 349493955 481743974 712851828 946921648 292635349 408011839 666748591 686166819 968683964 981088301 628769798 666273795 342422935 368515723 674860980 815857305 431925888 780253277 84106517 854079997 836049117 944427946 295101918 823292366 224622687 270536776 816347498 976421319 893459887 956725764 950150278 950716186 259740077 890529474 140236039 253018320 419163412 959123333 240147170 636339667 911946191 943228963 276925061 525296528 440121473 932304721 373423768 442882988 473401716 721372467 28887392 576049442 40983968 362265129 14407408 713647154 100137282 313935694 906202152 955596618 500692525 834054451 693782583 791878272 914056555 945811980 504116253 697798199 888582212 950998877 529505784 582705520 945448844 981071011 614237655 699790803 210847263 419532402 188003321 846124861 517099309 717094743 99887601 527447897 334559613 791234725 445962276 572220610 235079020 433359203 961896287 978912860 914486949 950073292 259719537 657354001 169719902 647582748 716382713 987972477 106798936 278473775 886284385 929407806 425309852 727801058 1595967 190610288 851553128 885286825 921389644 986717785 989890783 990928961 230271845 746845859 119145113 168678801 291075111 585675777 819115730 863838528 403990129 944051084 530736604 736352480 465053779 483855034 560161155 567971891 24161436 623846256 172755206 441154246 327430910 880865052 96584150 583238861 967792609 995843005 709334669 894987224 493424489 863252892 111655989 687475460 14849895 313978007 553052787 673997556 745066406 803516084 822120808 932472225 270595320 518253194 141853132 544958115 927799999 978143497 826586985 955789901 234845156 297446490 203316178 256237693 270837123 289232483 916429942 933185463 938566536 995047900 21405031 552063018 713551092 797456390 88194214 643802287 903189001 980471330 721219533 758376004 999350450 999634347 624907325 662431802 202400323 431927473 81695365 128970477 566416339 803224533 720365492 778737854 813471767 912035697 589306090 790207216 143570876 990670969 419351877 836911157 566089842 940388849 261353734 532428208 865995526 912851949 764393846 803481912 731085406 981111607 82118305 922007655 767625475 887029856 302594485 631608500 439614241 489664116 457374359 476123275 896102679 910376879 835085541 958230429 387484737 542897520 154264118 297529224 579147659 634898874 501483322 638400893 693272204 793936210 770160767 790868755 880875540 944532329 731482459 842688641 418958707 678744902 914274838 976985195 107047330 302569461 96547754 437982656 705684932 840744540 986387828 999539644 759353887 764824533 985344511 998003449 642806393 719701568 41249925 883371801 908149203 943293480 995095499 999522939 7647231 133830302 506684566 883358025 935613731 974319996 684341189 838138092 87342168 145508029 244682986 399472878 701030455 858396372 819669331 953218121 544789074 632183027 533560827 765379547 613486744 847012245 278059262 515737494 970970885 972714245 667320436 713863901 607720184 898161041 358969089 993841850 719439324 941245835 292007391 441967033 954624712 981415237 293269687 422689211 922218292 930636206 243465376 813642709 166574004 315364445 178091544 341722115 834880236 865445576 650475222 966784728 958521327 995057375 122872053 157353224 843918197 948550659 308590483 320109119 663949739 804290279 94955860 110326162 509159634 911641257 591607184 854366026 790266118 806759495 891091019 972947963 298010901 638491260 56900344 313624271 168502283 409770153 984905880 997955605 776702789 786584067 133574320 413463158 551278442 587849614 897460783 945569419 281581637 567296503 734106052 763022991 253776290 457625380 302673014 654768088 57113141 685453322 351198820 481140466 700174671 916618702 812205687 963432815 565849364 696472456 259196425 963696262 773861969 913864553 374441502 746003340 132217352 451727812 59438744 369838054 207612866 587383507 527889157 641506975 216754628 499523214 376423641 438289772 962799891 980670794 298375371 669665174 848051214 888669018 29442339 943532536 981312144 995228381 711562363 914552382 284664732 952063683 970392839 988260599 35933949 662358929 727710550 785710358 606906227 948564357 180404283 407674352 103930282 276780660 386303002 493425811 431494352 672086598 307892192 501375078 984097206 987049659 192277620 859360686 12251957 238850056 531521773 770856687 784035820 840032062 265459741 636811037 188535774 485613415 923968403 957349768 229703017 882607338 633249456 887744579 291811842 334183246 710837873 792665371 515260589 616795099 313145819 627297006 656545134 891042977 540584976 640363284 484986025 935374880 817051488 974877379 113911352 605378782 951147633 987140347 235648325 536027510 703186872 842107518 686358455 997030438 992022855 994312375 135528997 626166430 269839584 735206066 508686075 973230980 276919042 328991080 389070322 957284530 299770870 968421903 869299673 961554945 72835363 663582309 473688734 629552089 171105777 548016944 394117361 777539589 483153293 542954070 916483003 975429313 290808702 385594827 213986949 887550805 824600542 902108555 991616744 993329451 780911786 898182998 695245590 746445157 670001357 701099711 539263026 808623830 231623653 994523026 765570417 995301785 865135990 990475721 445268377 580417507 843064071 893367205 444955625 849461605 472989609 782092400 928847367 958118643 107313848 135197804 574916231 931520322 661500028 793478658 803531503 930302501 918684998 943242843 524489115 895856694 289871346 546838392 491468748 944429158 265651513 704978899 234110302 340155975 292469594 311398688 741062228 750282662 548231242 708445822 542908469 719993309 75425151 83187618 892995867 956198467 326149810 588276074 193167510 280088266 918585416 928399029 713091862 838444864 225958568 997702780 249267141 603444082 465051639 595083058 925611313 996726859 525435722 667232592 571278946 923373110 666080024 707294525 654492408 858764742 729136608 983214864 76653558 203190514 310933206 706783730 991554912 999827036 76862771 616534297 912590311 974908448 443995770 761621924 306958906 811058927 192669487 314146076 817653039 918802893 66264815 645220038 399193775 533080280 502946748 711206257 452755170 922420028 381915467 750853273 556084100 840630510 869021338 942781911 560598918 843887932 719597857 736373072 357515926 605526829 858466800 861185806 880280598 894822327 48398619 655508074 192477968 830653556 354611921 832804012 678832023 688401723 988574239 997411600 376245938 672444752 467160889 612538649 99511053 636097065 63270085 758217788 342568486 830667295 522888019 740453146 760063553 865874427 957520672 999546112 657519854 673950232 4172517 817861703 677399163 976453657 808107304 990535255 950307103 989195661 142600450 506917760 392521328 420721602 753270379 934899954 122018864 483911315 404588470 656293397 336173297 593606333 811471427 993852857 100574800 595660099 109793691 352073854 724889490 986785532 942001976 966867294 471859802 703988627 565174334 872928666 233214388 968285080 462575377 895227458 748460360 952472070 52168558 186946102 35012071 455211257 409004626 526335815 826011446 932722299 68508247 339704824 646606463 670307815 476751602 544640965 803995737 978119018 759055964 939728565 219908436 711096247 284611849 580486928 760627555 914932459 10650229 771263238 405488167 997605986 319141708 578732542 616337644 866085364 7893400 936015607 930283457 996435006 141016270 779628997 538602264 893107574 675761823 983266265 959289961 990464140 825472697 826460089 644258918 973219059 701022643 779609277 991131288 993390999 992086187 994001771 515787260 856992900 977590074 999741966 701620759 719204258 831434868 930023458 752489325 848688776 364705087 881710788 730118224 981091507 785839502 999717654 295339667 982992660 368496894 514176729 283725578 310180105 23356620 781749457 364314461 795882374 628147073 794737603 660246965 737826278 908147374 955463592 696401446 742476681 691142587 893323281 814430854 877092392 836024469 848317116 797705121 951985892 867445515 929117076 534488311 625117934 280909871 945520570 288360807 739691049 864446215 979129920 192978577 441134251 316483750 535736119 925015651 987754373 659867580 752396573 218210378 484678231 287464871 370349215 164237299 677409403 608485623 889608361 366587037 735433685 206996435 546821931 650658315 746791480 711435841 869765037 937745466 949929731 587201410 798920133 79116835 409321129 259612074 403672083 858619245 963897201 699609196 796301316 180987999 697820869 37237743 571960937 295688644 313985852 963715834 999177890 42254269 847677958 706257915 915123354 696028987 836415066 106719813 489906330 171446648 289441511 462605557 872805029 336427531 994439019 867165505 940607238 233794815 777473611 519786864 858481917 365392400 604510754 935921971 947794058 808001483 996631832 239074486 537659234 243810108 679119378 763051854 812693975 361200051 513116840 729970967 773139467 654082725 943561102 880189754 936056482 6087535 765375845 58678471 732400283 451506093 806671205 229236100 262504958 496152875 814155378 63457248 865390532 245626121 594914653 214350765 577675733 295506074 793900126 674181327 934960750 373221980 937621118 89670825 635383816 286294093 908492783 452443967 523005775 675347532 725060771 224133411 710147035 48175020 492150192 680778316 834582689 891386355 932565848 116586371 647993780 11856846 147625837 976492718 983708949 214581286 607507200 426172538 503371679 236376143 681057992 104979191 350136160 906990347 908040535 187530009 629713273 91016900 681883273 188772055 333867489 771768750 833469555 808188064 843388702 873359599 994853557 400132896 608673759 811010420 933174356 246652232 932506757 291731409 518668272 354530358 556650164 210989183 331501307 482517417 874334048 113768015 923141649 339447592 488336495 935184274 948119899 647964264 785786997 73145825 577281342 101179840 515326760 986314040 986733922 119586593 731294986 318583227 946670239 221085870 855863687 670849028 858791343 4103616 539405497 694180883 835095727 443164391 686913834 426357937 627800954 411601227 871618460 691906526 977619905 53207425 287301947 230167211 492238932 633985451 681900484 863775052 930288832 469250879 867059363 189019296 490190817 598373038 970706358 549973883 557413445 307621348 998865154 524045254 643357218 577319246 865293382 556090457 574309619 150652028 313739582 325817963 420925525 84262465 908174960 339950234 491737461 837817676 987416447 268225034 917175335 349440070 903575819 767392104 943658910 203518138 799956370 447471007 830155502 963823716 985849765 468844851 977003662 772888491 861823385 3976395 125320502 135969482 612584738 660225634 923416690 798417301 958651427 463738349 564212348 507619571 661622747 91547493 594902364 173232249 712761705 215586472 831331591 111453096 120108890 775911494 973399746 205532098 502853766 843450923 916604061 978341216 988265007 670659905 769649696 737129682 745686215 927428925 969717372 629860788 654386822 848061807 936596264 761243553 919881446 719095447 782721831 467871063 851609337 568540719 928805096 204670629 810768134 346911377 673483366 129720665 950229753 598237966 831137341 590007840 740194293 328450608 915241616 758742791 821437270 20304994 190825887 716253054 942012514 813514855 972100519 483147446 521413417 82594323 598098874 852233142 985424800 434391975 971106545 937035432 996377045 826285811 877740337 297497568 933345527 315240990 677660379 335505937 345146747 154811443 915677173 851412295 973649069 156207453 790219526 23581117 143713365 894691169 919314124 425500774 522951951 953987442 966920120 589545526 919141893 724208835 963736385 723116402 967852755 620813070 787137706 143679928 773540678 415814225 439993221 612223684 875679196 972957738 977082246 48905053 437503279 26706484 994680554 8563416 316575536 62249354 898865883 95273276 682807138 811653585 985823214 905521442 995370772 95738977 793725336 844531583 936486018 825557038 901318553 455816846 743037134 766414528 866071963 216731590 937831802 27982673 909457760 564005946 685067110 443316323 871567153 714360447 768767204 172966241 445336560 67418692 714542800 33169374 252291099 588980299 811057474 814091757 907715934 377559170 518719486 377793583 793241174 676619332 943738539 870232766 903554407 975059903 978843838 741757010 986164881 95069155 535762292 478929536 750647815 505329413 806301556 99366160 432333794 261940832 525112863 764909680 955303187 610984783 887660906 630810891 701749678 834127975 910445813 757666086 943547695 91105383 471193107 59233940 271764422 479940738 868706576 881036794 961110634 350811900 629167793 845043216 858642440 932722358 947431089 639676490 749182757 352586200 832740661 113704632 905028339 608703023 650920648 378498178 571431892 677421873 967893639 505488861 601883282 833745568 867096953 301238027 717641575 689647309 733103959 637755780 964351503 355410093 935063591 270691166 533031119 766198111 868716554 63662945 966118995 637079371 941793199 732754627 952392562 298901481 957470831 918349307 962245381 174739845 746607040 493934698 733292694 103307479 317748024 586673115 909389283 442004651 465265273 704668692 923342203 7090085 823997833 129900824 188367242 627054519 889256959 459426553 865664046 537584067 700924089 22918672 272676373 670836831 692111517 107853103 185215693 315721368 425603194 836238384 952958009 321181780 690439005 348504583 356879718 752818408 840548512 444148080 942399787 565327131 945692638 979173281 999524537 344123071 617920381 864548209 879290771 856368320 894002262 990490057 996589446 226471024 360566087 128734157 599999172 167907695 895900977 25954055 759361025 227151791 435408680 965252600 981047790 723581790 725017349 413711258 962318879 672691947 754941285 70144245 198812754 595428590 913224768 575521408 585530799 921214103 924432236 927783095 997368752 656359554 767184546 366410918 431336876 606475004 681886790 105184910 606762419 507938479 672832932 989224140 993398830 991266825 995312994 263592785 387533022 26903734 35549163 235239956 870606678 134340534 241661778 477490420 794844896 188924264 993710595 80554243 271188755 288192109 887919012 737688608 854214786 486482445 998139296 806598381 810373096 63803055 827155371 790820588 901353239 186646972 736931485 94140681 702857047 340321609 401264894 890881737 914096846 690891397 975754819 571819574 929581021 486620943 867414742 435134820 826058531 201281470 662526597 337262787 775805252 586753366 605368686 894228590 937531080 991664176 995187879 802445242 929152890 734139900 940027646 673765871 947264332 745918664 865141620 517161414 790080827 830987780 935065376 649460470 822039410 660479796 996737837 561373251 609078332 649075775 860358741 964870183 973141949 899367230 976828526 107511913 352455309 948993855 993573093 358704191 929353948 550747073 811656134 717653661 792720895 783909978 964277605 737449616 845760086 943091229 969580605 90227717 952564488 980673303 987296853 682270012 969891367 57860966 93082881 374945983 924756254 302856402 547044719 550359521 920575403 552299972 927070611 721235936 760297773 234977946 561118666 60953650 762611547 618703388 784175700 920233746 955618354 424544493 440476763 575291446 935173155 437344826 871576744 180496254 675217737 739851520 752359587 196571313 566027544 742268665 802662488 878220322 973234710 45596372 529800435 208073846 284571234 700635157 903104869 262133035 867948371 176080178 790939233 255026691 527127663 206635598 982532752 189171478 478429350 502936264 872041343 852026229 884461332 697370408 896434963 242584635 433306392 724317230 773692544 205199867 916416549 297509751 522899913 596531759 723843775 481372677 517433156 167236465 483402618 904311806 994652062 481126874 752590292 832428722 930166558 629527307 688893678 190654862 988089963 699966233 760887660 498904179 768648781 320616457 692216581 91175530 919423985 668596590 965091870 234360421 245595209 826090169 862857169 935419657 961408167 271224130 346717973 799061075 816247962 741063265 917585525 756293653 856611398 882595609 973618538 20365297 35919641 152210854 321197607 392678839 833638181 766677690 829843460 519786283 893625100 218597987 407826452 894863073 985446169 901004741 935398876 111464597 122114022 335165457 840026501 624078007 953742847 400411894 799453790 114124753 949999493 231009184 352351838 640055831 943093425 950004745 951531400 439522776 880641012 209943589 954445572 464899661 614861713 331925294 678505510 248853420 463793407 393835962 512043163 61940148 702169129 664082236 692433058 124131228 346612960 611884548 948955961 761228931 782354162 284743689 798592337 629847174 765860527 123281199 133131248 261042754 937727020 205430806 675490809 939970007 968884049 320558991 869538239 708007938 947630036 300388212 762773244 352941113 415424181 300156063 490678367 338413576 870359016 850151437 862555075 984891574 989907334 56100380 991375560 770155313 891233209 526139840 690469057 956512441 967692772 15011754 803766871 793290509 844514282 458992873 604835777 818245094 891956173 565681381 644739884 707372913 848091954 40662960 740262359 284465088 738966794 529988939 577296718 639571459 768192433 3666345 534112501 402495531 496863875 207039321 506861711 44458976 985001692 264648890 283154677 627340379 804136127 4243100 396158165 484013830 882401129 563247563 783656209 325294781 893546202 773886963 915388598 882144563 884231757 183452956 364737976 225056088 530660823 285509726 374313073 743843420 992596241 991857537 993786925 765012775 921858868 138221625 606324481 409908552 679174192 381253685 839523589 790073320 813471506 247448424 472073865 389445898 491817913 326738936 603434107 246568634 327546619 413313296 624264052 267751072 269069712 548154699 634071094 909424816 954204854 282153730 698647406 997429376 999157510 971503242 973906490 73800682 861539931 404700785 903843084 999703404 999882372 48909013 457439781 315689562 806461267 92489478 369716970 493962693 847932652 803473890 958231824 121678066 586843219 691651570 794068317 952836096 968459611 435834457 634661625 934316730 938671610 342804883 417701158 910160073 936319547 933067679 997339345 865845304 882241926 134332525 347319694 209269682 650550852 622134627 640723789 645049834 818915450 306378944 765306330 907027762 942348514 902794068 990811849 574796672 647356247 600558789 874792783 65475357 315882833 145529262 392880957 806830321 812338832 768786478 776074357 78142783 987212605 188021876 891788101 941747233 997624420 941940067 956158976 987531262 997364653 252361816 537311150 330172074 737121125 482441041 864944341 119873344 689689396 947569508 996400912 362716393 719246276 611878052 774699870 914980489 922801637 218569823 668451818 601758148 992234192 558556845 790991446 252942509 589065346 652173458 682829092 8929210 361380617 767715076 917134244 407086861 531878865 452119809 585036995 164405660 227996041 571539962 667541741 502323733 813970197 601504121 721290113 924137254 958262603 909751872 910053977 450411347 785201682 704105513 787526689 641330702 870571354 212891470 784468010 701033298 779614498 856299658 990400656 12843384 99135936 326974964 413943723 752721621 876057356 735998919 791936718 574577072 630963400 253448968 477868690 587210397 785683220 190279625 515779649 448724805 897968159 445652829 469487549 713156992 759693038 48628278 480106885 421635955 706400792 785535546 972510346 30240200 227128120 995240346 997336631 350954761 390602672 276688447 990502554 560488079 565363564 570228100 899573595 864141987 981526377 862548784 927416343 360556646 522692981 610871138 965564201 681207007 873364972 428608798 686948636 224234011 567758724 470706506 577397894 630616594 823016374 413947633 514974285 297685797 815136470 972658031 983923041 991350526 994389397 370435459 455946687 747926022 951972261 15594063 588394077 270130608 586102977 283839146 344605970 639916593 707457257 75109544 949381128 98672517 997990396 221039826 891854793 640913398 768475132 477630047 879119959 281077748 644621223 159112764 695457813 331933226 713257558 931658439 955027326 29283604 870379426 869799209 907855543 234232476 321714866 532148877 867679363 787240143 898688440 628276456 892073698 936030797 972092007 535060257 699594792 46888090 488277756 896586569 901628732 20300953 471775142 252334449 899482868 934461195 999618214 132369864 260515722 372079324 587678990 458913566 516452707 261433618 659758254 34153820 901398762 951768790 986149285 733509815 870365135 603736614 613715683 856727132 934290872 603383512 685794301 11479904 556973621 901549973 989054226 196649755 609442360 744644504 851691189 234893614 618534146 288392350 997818487 336499868 744570260 251931185 563799579 823886199 941593470 154448725 570972432 473345984 681154030 447549877 627297903 238503523 367869985 260930228 342669724 965357727 983475849 260219399 903635659 796479022 835180667 282111234 315993046 264479645 997767255 625843920 833649142 120486084 398206375 150328371 997906109 303830221 385867688 484218348 601665547 283555529 887969209 555694752 764075448 146305929 409430079 671062180 987232302 860308094 884621369 753120259 953797044 270889014 907217699 90974100 358195758 609217913 769089924 723684667 787389625 238922738 425547995 193586319 361878237 406595087 444630101 812141523 850179104 696288092 905067543 54889965 839263725 636104486 915923820 710855827 995128491 771077768 964912016 58224296 492833961 908552068 956298802 215746729 654354095 292972993 882047413 617396764 635944346 2434009 247408829 568383189 951104636 240729534 454011939 108622252 468067913 334252104 864176155 443025551 878716190 287367318 425386332 802959370 910929361 421530655 650036321 398472909 565905077 924033639 981568517 767829594 841941059 523709779 782532059 176982145 197703424 826342910 826413465 414532626 543959255 862640489 955674264 263411606 369754857 386596089 517006525 910182542 919591798 218648331 286390547 808571086 886719233 359196872 504142001 358979870 914813863 5983627 20966974 817653046 904255434 733171979 764950757 201639982 781268250 850028124 974501115 902461292 951401886 784900130 863518559 765980994 977246963 458094467 980073262 635840664 690435780 586481311 914710975 677637869 967162249 74811465 836909777 730827442 784338126 526628460 686773410 920276579 995079986 47256324 369498986 285238938 424406389 276633466 932535980 88396805 552188648 48605327 285109736 681007284 911789708 758060113 789702956 298945419 696025419 318585563 476432458 271312777 377400365 1101273 288880409 439847433 899270936 834226908 886540117 941469448 966812701 151787171 971080266 599304408 702740485 495350524 711839859 693168134 924334953 956735298 962249313 893754214 912561969 120060890 744392060 686667999 739100591 392847229 925206027 387654555 645565049 860722806 896096176 508133190 748092496 29970725 725670792 10082402 433436125 999738115 999987853 219222722 377613272 356782843 415285570 737112799 798905909 919501144 961623013 292950186 657137442 733308811 945248514 163472976 851702869 2546398 875393213 638080591 899333196 31624582 56459234 785464124 809221213 591538325 774298162 904685729 996152544 395365245 720510247 806579110 952209326 624947937 820410107 972032188 998306707 475942159 607004133 780698702 805402038 215477664 608968055 485463099 618696911 621072471 686694090 720836627 990076781 670625449 918766847 33492852 577981523 437907111 916866720 373912389 616965680 407319150 776143587 958144050 996562087 344994922 701264132 127154608 583344717 222901633 759710344 326245314 860694285 242677670 303915644 655370912 739394845 927856069 963726255 702231356 946345818 804186156 947516829 15363528 857404349 572966259 853995568 719444578 993060056 876452190 938763462 471822892 495965770 31710509 331422233 813506532 897225242 926029322 980240342 927342884 993327380 711409178 969197298 873362159 934310849 416785295 766444104 471153789 544909314 100051103 870653998 475573318 601841914 873569681 917713581 776544380 896128062 411573311 740895333 583986559 794571556 312504755 906502541 490156412 795201002 937222021 999585170 399785139 751773153 282294826 609657259 418720658 768553259 737560925 835987943 978775723 994372106 807541201 943930053 674563470 868155588 784686072 824174583 807775369 821043474 478449250 643426473 827616063 930340399 712393604 885685536 688073386 777042596 433372868 620877085 304416526 670365267 210233330 796174441 463816358 496584037 50947161 276005593 829095780 906494100 418918372 505905287 492037583 678588258 122466387 247855429 693205110 713391640 394906400 780999541 962843953 976139088 745097518 912566671 292345833 636703162 846729613 935003669 475699978 779212313 268232976 363321627 398544231 904231145 313664614 743054596 9471020 484066224 469249814 489536384 372371241 374307416 54072190 569150196 536839114 988569811 126403697 770504289 385338717 679089011 356720195 487300393 233839943 609721776 376719828 803988600 457868752 851898959 492982727 896060865 97753527 399992941 454812089 759016502 562886153 671186020 381291554 526163765 879960903 928197685 746730834 803939311 946803479 971509334 174577524 981957805 22260282 145558578 107240599 837628246 211007285 333436564 202306450 743029009 428038155 708793977 189818739 822086268 323582451 649536268 532328628 583099681 29141745 299327413 339113778 517810387 391967373 899449618 407343667 551194275 590118932 694147638 602618368 870365939 702965023 716138318 228799077 877084433 343253548 545613048 954676322 975846888 42565556 978208048 226723849 955424671 402486756 513165771 723259255 823760104 222659461 426943716 770881348 860905017 515997816 885108519 977847648 982363871 641527413 847952580 426594082 506599305 599583793 675635304 523292532 933391914 658215024 840218837 218068495 880680453 132597053 962632745 679700687 741384137 313205366 794132295 460367419 466723285 164617553 963600219 764014823 811248437 306279759 669714369 857124945 890918590 208804521 734089674 245606356 248525561 514018174 732028146 801865830 927758705 878874930 979906673 841275509 888030048 645023770 874157920 386142457 454645888 373397693 921697017 105311590 584727858 613792273 953525832 422412957 859724414 358437197 418108605 681506060 715003210 522581252 764326698 966622427 980894716 145427673 878577246 241281358 554765998 724179458 826080130 237298085 490116834 61765609 214185356 279187433 318941085 285609624 791675481 265847539 695813012 878811872 941322992 419535323 478364084 456773815 902516619 977148134 979522679 599530181 880161941 481075425 579145939 662223008 689246633 734336037 990198688 439920512 977031699 518272802 925727835 447448691 652110952 45817025 355145949 943430254 996247950 179678124 811812764 39331672 408481339 178189860 620268218 543863606 894718896 42501014 664118764 872882994 991924610 229288780 268032440 354452183 997741815 406011754 606207308 304551372 879075649 935368569 986292292 41483674 708780772 911705488 970643658 871050904 956273097 137716613 373590886 925221603 948479670 277886979 352606012 130432852 836085921 577232344 865756910 66255369 566952899 350463571 468292288 309562150 514445602 228528 74135287 102947403 906579087 327642811 631358955 371631528 549586842 788863959 799613932 660698214 703564660 507596742 670900708 286395796 719393553 474607680 666719056 475690862 545383753 463657052 994387814 659333136 953179063 154642850 317634463 77621953 547844999 911597482 932798343 718119538 874488728 498750593 661134739 910686800 923892750 862073182 975122600 999612823 999784824 293231959 333737641 155293379 238568946 638393711 836512609 855966170 989321862 678960690 994310725 125033689 542808474 789979988 914247179 503357942 787278151 569388673 636495541 188852603 813262164 253225016 758305795 720727106 987069591 830864704 877972567 123134514 639731598 934850448 978921652 81319066 112499450 78514991 410491592 85855161 242414528 798234715 981290371 700152855 799054621 811525147 925064090 256700608 534428425 628303648 770929340 958637743 993091624 217342734 391375360 601558206 744412893 471252683 769677194 456826636 749149655 663642879 858897811 63492014 950650780 885978818 940273181 935692497 949798357 207833503 519110836 958959143 983424323 272805311 422733564 161145314 438953894 600619959 836704224 307867784 706433120 229943172 683016058 901809449 903863920 659847708 707888680 533538293 683927190 592226836 720579518 601866196 781057839 639044187 988558536 981404650 997161102 631165717 671461711 716436942 770999538 246028723 274836695 750218542 815270557 946482475 973974922 58166652 275823291 139777027 228869282 770906632 952851387 165242089 636847731 270476753 612852656 214113798 240151198 472124171 967253439 377379420 529583996 383558877 943667097 750525906 931239634 638183846 937500822 716358211 717232301 413002565 838188286 343636006 495588536 995662387 999185168 226492835 700639700 968490312 983499930 554889053 974265481 733898104 788497714 554135825 689237824 812753630 930658672 594175940 645254463 885930033 927317307 298031108 919762178 108116987 114584437 95664611 532916964 723903853 863772870 194750771 390668186 843873027 872048465 600095140 658315814 350513783 601104507 232297009 785769357 365198256 993857655 575820356 646627715 310953140 864313321 804362073 932547472 496971385 963897619 470098675 746852349 659289368 988458526 122339220 986931673 480786493 904654809 686774022 778108210 92674249 554599988 979960769 986114902 281536727 597879780 744774357 955644335 268872346 797841103 384264213 674398871 545453972 595260197 673987233 938239896 67598980 387567848 807583375 994534607 453565625 571377774 547725414 578450255 992721941 997843809 962351620 987699751 636286102 985023451 477533970 851522587 460409553 701609567 754063580 829349888 867967176 884288842 674950818 956622829 473387977 803533125 153351899 440795785 418609614 576354361 307336766 657005006 626895504 738335214 351831946 897250831 288998058 936668984 771054610 830419461 468025781 742443863 720102211 922437418 93770046 780568099 436104940 469571952 19814918 998144866 300638510 441022343 383371516 750066037 302042575 613438017 938638954 992569042 934476536 976417480 153773791 632711188 440980205 733200657 277797572 746003437 649241377 810146945 857253671 921520534 939270340 969389593 621747419 761331195 522203948 897902669 451366203 786265846 840143378 925308879 575366567 856100383 55816617 410837702 935207158 969396689 650856739 711025233 120161703 678912411 94640120 889492413 249526976 892400224 614396109 864453482 658170314 892531621 907068742 994395396 168712634 282824827 487575248 497174290 536201478 702079997 176336457 948317769 26059075 101545148 82715617 586032401 798479512 915475968 422283044 426964793 354511952 672280071 745597183 797334830 282476646 324848940 287293593 880887049 437310451 642646846 345751334 982063744 274314107 542187836 736991282 740500101 193337336 700486823 576654469 863145121 472786881 552601774 907174112 990899419 808798931 829612042 725514188 795307277 476957438 708318576 146405227 952499966 59168871 460383572 960078638 997107201 786058244 951171670 868700042 929179433 404592865 463363952 923373089 999917234 338931311 422335552 392396179 820840023 100706191 914701667 877639357 885533357 407041016 449606046 303574371 935627001 965709702 974624591 355755353 710130185 897447198 972543382 628809842 798762733 685757299 956652274 915051169 966845336 738027038 898579437 740014832 761271207 365224980 798506346 874160502 932164960 117650452 178319355 728598065 789410985 801841848 937274361 494707601 522631432 681807638 961749947 335207894 636271043 442067877 512557401 728119796 811493321 548800122 751620733 706555016 915881711 350165509 387710154 770058659 989817007 70997536 346178098 839133205 964621023 607552746 666398736 679503440 870617271 122337981 487448009 20450039 978131698 337574630 778210575 578225059 963201637 875815430 955088236 743802905 973961833 623918086 900819961 635656935 869265177 330739546 530919060 630843626 949063818 422041923 677470599 773399733 902513889 936417127 953317863 778750127 798673290 188656243 827926766 21834728 555288332 66837102 252325847 952185719 960728872 973661968 991947321 96423661 305340339 824690113 832974302 257800072 754124191 248612535 266911954 445830033 599394139 9154346 131979943 34555450 321953490 986948221 996101879 660835418 726159126 624931335 817504291 751118723 862988906 224633212 507609247 246936 960903644 268353805 466100400 251188806 430729187 989612869 997730678 428723171 812110984 363198239 601962086 455631357 638476162 615351949 709454034 841311746 923958171 87288322 471096269 873779222 940270508 192818168 687342655 688965662 840338114 434570151 771107134 913363652 990764134 623570351 929893573 157378524 529282075 859215958 883385768 720441703 750611104 1464161 726036543 726615341 844111345 833874635 998913469 482510665 524348367 253158178 675590821 616991333 788573391 473167664 486832179 541083364 829131846 172711410 395878756 437639526 821030087 648749464 749755659 782495389 948161189 747985696 922792940 558197147 700927026 181352876 868623769 711924249 980025016 665248184 710686232 452560613 482253323 629246086 815355401 473641558 960578663 343569651 539188177 221299222 821697833 332090609 686771125 433403588 566895347 700658197 734895998 248498988 435937072 384713698 653210359 951794838 968768023 906370900 976780023 957893343 999744272 87911075 605618519 266032005 281854745 67825455 149095918 355366141 975427107 306569777 595325912 97483422 598370373 120584387 487411496 731895961 786378148 387914262 606100397 904416362 992436524 539398788 677450913 345197241 384884988 263947156 535418046 850200320 864206133 424165221 836541656 872773537 961727387 208004975 242332665 156826036 341581285 356459908 671922592 861696704 939543741 735661033 814769956 57900410 549536718 920450885 933970305 400125657 982657927 115527693 286255056 925144888 926949748 979690479 992785663 887712056 943270426 445359939 814213107 603919835 676104418 356189960 625068438 765957857 973485102 465913896 764898202 428862716 844809440 213221832 734551962 500354612 793825429 339950968 891043342 541662088 740628339 868740912 994549920 799750799 989557292 940574782 953147333 359653023 421034084 691434740 810713527 78255208 628043899 17820939 85619910 517517857 598913801 656739165 673075649 347824821 454471419 810284873 952145608 405863290 799608166 962993859 999171596 292091355 717951655 261771598 357912941 974454785 994250133 138422131 336915407 785163500 925391855 472820673 494828294 238546665 353315540 757224245 868465827 311034126 480741735 381483719 738607722 562435471 812305768 91713345 924897327 273902891 692908157 15235868 455519034 306428555 710974529 646157389 841744603 672664515 951860029 563893906 621000992 959912195 975328574 82787453 371412722 7227196 234281633 484352903 576900704 920236812 938048704 864469011 874290313 647824242 914842007 719961633 838427773 904779027 926966385 86183007 420424180 852267591 966821501 194378569 738739569 242526616 706105492 83763166 704145550 868173730 874200831 943791396 979479245 768579438 932129807 863310642 961333210 728366699 754525210 39407665 905261204 43602215 863051760 917388117 975019689 987706067 990220673 425032947 864484961 994050472 996277016 283165571 695004670 360838034 409803912 903727631 905299456 445810046 569460410 63713442 275917361 66566984 957474969 869161458 877258443 197334790 979827107 569926227 661283020 944100256 988889304 205905123 960906733 943548386 953239906 396085169 793189850 851741329 921446096 400709598 970873072 980125650 997023797 334623497 766929938 934768071 966484521 412527490 716920911 74182681 478333115 624572785 990450688 359975959 365542876 114151075 901161412 265443343 317019795 14962100 873963039 263599436 573412664 469642098 848639296 365624740 954832188 953906305 983801192 440341357 742256221 999305736 999633329 328086899 492948279 8466775 27559410 743567552 822064995 318868764 709101271 616273029 913324004 9028324 329287946 3534529 288766985 587561773 652338205 548206589 550628370 143740512 529015093 236748001 613991636 798923655 901303628 492950259 849166718 612361481 705821090 898705581 929005872 268538837 623356271 864533565 899629626 375563916 644369924 828739390 888315604 157689247 316214066 780277931 939929918 532363768 714826174 670722623 742759836 350854868 876535358 666714478 870551144 320050718 808846773 930625241 945253630 40157437 128141695 655001641 962515053 965050561 974149228 618621095 952259108 233120108 839858448 143085384 912134537 483197462 741722089 247561966 876687486 834746031 838822325 238022046 688340031 495599079 506599037 508313620 879463407 682535031 694193294 115048470 184932495 645863735 880368625 67795879 604651863 296364645 353436460 394014467 938127613 206408026 399124408 723970264 952616086 454480438 845337041 923070821 951225101 104298183 248350885 681296145 981158569 985163503 987720292 916561936 920424149 224539415 752631364 692987917 900017347 132008445 979027827 703062212 906736363 282531009 604148772 506786050 934707263 966751758 995043116 194114612 347330289 711138169 754143698 221929077 384487401 280819360 881674265 602834925 805725573 121043828 769654290 459857435 839251625 703369360 882988881 391560072 675550374 982581270 998886264 660957047 912277580 217924118 536617315 394253418 968700221 535163096 633030561 130870929 842928549 975880856 988616994 108937652 847615407 679414993 783556896 941332929 985129759 509300616 881685476 253999185 345184490 164240527 946891807 841899050 980285318 628231284 842658633 594274588 662974277 681049243 898125825 377429758 971412607 440532945 530908988 265696754 628012704 625700005 637745986 100034412 826147472 827186886 832266406 417125126 558254806 741242413 816903243 567613992 599851948 44773900 613747224 524503593 937318625 658930379 751514221 227551247 670354851 749320843 907711757 890300605 956010699 703622746 991709528 838080632 862466407 196941641 648866381 908386477 937210426 180209799 990744420 578047290 844202652 176887793 405259013 684195099 941028753 25452091 110031656 470093854 617195127 753213310 804755713 992867506 995056477 951605048 971194624 302892280 506614728 123764388 136317428 711411140 725523378 360623389 564389991 769149464 790914782 352893107 806168110 672973224 875806106 841689896 880883851 609009832 609489226 317983959 424762153 780679394 991728786 608201962 790500250 508602861 651873651 108046304 206339713 72118447 977694129 489094229 709999035 343674791 895896219 145080978 905119691 684413021 792340510 75782711 386983904 914886112 980769044 577471409 664427987 278179880 473154736 665008397 925820859 20708123 394490671 695867981 937996248 955477568 991860131 92590710 548828521 182290157 816445216 67635510 244879028 532735065 803327884 457960759 626495858 834543026 972091553 279168101 780101007 919539434 950553236 267390371 495495356 66410697 835308658 819285110 845201145 153795885 959501893 222516135 743100227 358764563 854839377 222845132 227628873 471881284 564195962 989636446 996165527 761879523 835198235 396487928 450934649 497434245 906785396 681075336 966488899 602755826 747277600 110915613 137783808 454974371 887026878 724597751 827124531 693433533 802177580 698483955 878359750 786126539 914246440 412655026 458859734 812799723 998737009 697815400 891533218 945124274 967258876 350554269 712498334 406001723 488328445 837238081 981270715 514556179 535753905 352977351 401208429 402852016 886025989 956989658 965595761 39360515 764343470 105693570 589988931 641623597 850793057 502673561 558440984 43491995 67021460 59732692 577084349 869196705 884863270 779833802 837010857 120205996 375991251 575690874 804847771 57670284 866768390 971226153 995141377 985125790 986864673 415619812 842345280 850997325 922683610 418506552 645345978 849759958 888931612 458493100 518495857 870736515 906036221 765454656 971092777 972843415 997773650 648855439 821385250 712105064 822032027 942451575 949681835 849732153 991251867 656021397 939033735 10286343 228547918 924899984 999923720 522114047 584872946 136874463 158715816 150542372 970792465 143862316 908665838 148493951 176386024 723724782 993714263 207943009 850595697 879807276 903647135 779451865 815773891 21291099 936472810 871562776 888561674 114133055 843144639 656969636 883508431 651169629 801665788 608831120 995554056 647692778 815568651 557929412 586089123 980148060 998282516 133798907 378303397 375064288 772856600 711872349 964461390 559811935 585064906 56993180 155774841 987724770 989541593 129349079 516620572 478542931 894695262 974870850 980194525 318612057 928517331 18922533 387166709 930855507 983356431 424260925 827935642 240492409 250939235 824458555 951968438 621299918 759180228 572076169 944704896 351169540 961014422 369729899 592155406 136070691 474006837 724000206 955536898 161463248 480633829 932162354 933915217 107123014 359054575 386610980 963127815 476363328 638383742 320252178 333277210 67149705 446302075 290184856 693102342 411200405 714879560 979839976 994178662 832492213 862743211 53284377 383003236 918627987 954277361 465902902 538861553 537576154 552156760 655909259 706003023 135961645 644585984 62018663 462230433 190039441 992873744 354053749 853020712 962199353 981980995 868521548 937555120 889099592 951105016 2784521 939272917 788570409 927769027 336962686 943968674 897988816 898764963 81721624 699589088 402288383 873508555 154948392 708786580 176443852 841122984 538672987 855308794 281353194 784400336 238660344 521440074 793334073 959696974 427782115 606029449 596629032 858495999 725518201 845736707 412784556 767254157 401788829 539076503 706734529 778394648 208201634 580109221 780335700 964531779 215513180 656328439 890671082 920174816 421971312 683951761 607815771 865790351 252040532 984241001 949646112 985599586 250231832 277812052 468786038 499486340 745374949 837371354 167208916 438064362 684616280 959672208 980195062 997150916 629049767 680968287 856761319 971085566 176005699 691481041 204312031 559586100 376215398 855352544 415990836 528737318 712615127 875369351 686307398 982682924 1009417 855714743 527833194 607390276 181154120 667331710 897621546 955675685 503325986 572585082 181510551 854647850 505011370 722878548 477156316 756227461 608519202 889126428 938065169 952640369 510784990 843219235 922287464 952212544 575139945 791972224 740158721 866334438 207906738 684220393 789177047 806620499 598261466 990955959 879804980 924932010 650092133 710339715 215704909 454956361 755586109 910498916 327945668 510682265 645711860 918386778 96892742 380458389 280905396 724022445 921722593 938629998 310114505 332829392 785882502 827701838 582781045 739301401 890177531 971802708 18841353 794555386 519258769 603075474 695561832 768844099 589202693 768611604 361030046 681697393 429490393 974580079 264781134 683891428 767857359 844173485 760389833 935102393 66964082 129051170 596625266 645478597 706393557 931816104 265531207 697577149 157252523 681789042 876707795 979031793 586524646 830150489 659671831 729266906 125078670 472437295 352324986 486910062 723874825 988610493 106877531 253121822 274571858 835298846 758642225 992553323 74889591 643938789 69393089 538809527 542554138 967134087 774489263 835889088 560724202 836762736 797639117 817620237 505133102 846053754 994268837 998348893 404951665 536689930 489083825 932929888 915794867 959381928 986301066 988200395 224566478 277772857 446749004 720826372 374157837 667084406 744603581 864084101 263787384 881883666 190626617 259046898 760654058 855422037 191184750 681077531 483056987 730782502 11603856 549144117 5130386 550701803 90963046 94592390 143009748 370864318 912426329 983394421 476407373 799843364 716402799 805664046 369872589 754363204 500867732 965740017 864033132 987724355 815695927 989614755 213769639 444630254 898163472 969726863 111235558 337199395 243293488 980537825 492968762 646141902 365698925 917238079 913914238 967779489 81358697 551524571 619467929 683936184 170368295 459899562 301411837 894081932 977324641 999887787 117455128 292077802 200804672 983963173 646253167 669295133 386357003 839230299 756839768 836927213 966759425 998611501 730697405 854458183 275621348 892292546 479149387 760225734 953318265 979583535 889192864 956522816 595388655 618965802 600420024 999717051 831418599 943668644 715947577 881973587 514701278 903201527 144194117 764230765 106003221 348231321 977350642 979543658 132219371 367632899 151978846 183485131 591522835 821042502 570924703 701901340 417658353 920584548 844779454 911798864 254120769 550006987 816087827 905762154 494665023 560204999 47388257 167106805 243710734 267037147 462079984 720715194 801279508 818427828 908584858 927085011 59471009 540704345 51035440 897677164 395378285 936838728 613704485 891150603 866588561 972963181 103649594 325583894 14311654 234067001 536691366 685460711 551692243 882399564 307423575 759056329 558411723 780568280 5614220 533767044 377466775 827587235 397412855 883157412 742182080 780422758 885811517 933980040 369815805 912866329 652387828 951961211 104420278 950059212 443673739 492001213 464479169 601664134 980986304 990765914 376114904 903670037 848441018 886925664 237830759 562217569 918124510 996482274 568411605 810348452 369327683 881700222 87293263 748812375 653507864 789420797 486026291 660709460 155872250 411789136 855190527 948963476 577209245 747264686 374241623 474569516 156193748 182906354 272580775 562534842 385938427 434885451 996266252 998958209 658337105 856221779 802116303 898146949 303796226 732599084 820339967 902630846 513640424 626573004 943053960 974946871 528059336 984946359 798803524 808490096 559108166 646300411 606716823 729346711 800444335 865745725 682931861 971359415 704141789 957018640 472857548 598197167 796176838 925883725 536450560 617651777 436265734 929549264 871065987 936517575 872824936 969371628 375094025 689228037 931962652 984429803 379552050 393060561 29322311 53978727 667176338 867633879 88421814 536886047 726576796 954841283 620959957 873430230 452778469 965534488 783376047 869037396 633509573 731755662 968588901 984831328 611705248 987774501 203640241 560918375 440143520 526652399 357652462 684535444 421895379 736072215 85376718 273690534 426136486 609026852 871361624 874342588 828445305 999031994 239313262 967751918 570124163 736443043 93517927 763656067 660268014 800820297 66764509 602928307 67599777 403391327 36252024 572781119 968261860 990041779 26723022 298092091 974300545 990007730 615578501 951509603 134538052 847188514 520258141 598780248 91230928 169163259 717458040 787654613 919243882 977674897 321380864 401411492 981326258 982060921 440521735 897559271 601153850 644902706 863942770 916658362 872237167 946508267 316264084 887736847 634389504 983797952 965390617 967765376 315435984 535284972 200997212 772708480 520021511 719049860 526349981 755083086 257577535 449454814 421434815 980000767 735649786 966246778 298710321 868129236 306041511 421952738 553864403 795281599 664048439 850615710 985952936 990949291 591579334 866851546 31525883 938140891 606277883 935366178 531514215 636261410 758298572 886828402 406567954 897018254 490535122 847466807 196653803 225354618 350012763 714073628 506032102 590179447 700307768 707500576 118087032 454954948 878621358 942445366 763498140 895515889 94552418 654577965 407479140 583533302 776500498 799123649 514620239 723132219 10782851 391206932 149812663 837667242 285481481 638189005 410474349 787196233 251032724 913529280 714442018 777351529 752355113 883895987 964519720 968799730 934226900 941066660 505683359 649752078 125050417 365411977 960415845 994884447 169039367 231307118 772128686 842498979 209262232 655892845 261753906 766229056 209953486 798826525 939250342 952852252 426929809 862337398 280287704 715862084 70521721 887673724 602278481 681914711 430375865 516961609 129702579 978361043 162085158 704913445 560593697 940679395 517104357 865229452 316177865 611685589 763953729 768491009 133322638 573261172 972012708 976968429 964469069 983344158 255740155 641903221 28229699 444221185 43053453 227276918 534916131 843913823 834979887 919386859 655123664 806446444 521423453 788502221 9786107 550321063 513091153 665819708 483821022 577771947 47232741 495454188 973471149 999258666 111249959 617648424 320113264 555481978 219775872 680792191 164990531 293359605 598141218 620029558 875635016 977145194 709673975 835591795 630397417 960428640 234701086 274226287 248426463 969957406 150590556 682329418 108459979 422678622 996431931 996441668 857747919 865014605 514666906 664820487 827533954 936137602 815950189 885871898 755269313 835547706 347804240 371134976 822743601 955763468 77214995 478026168 896747904 962005109 900007206 930345291 288855501 437382579 982846684 999095350 142229 287896361 424102881 834102265 262282700 476099108 241210471 971947447 336538331 421562207 695803531 875814969 952146980 971116813 87140325 932576985 383007792 414513412 486399640 561869544 698153822 952492673 668102785 827257046 18962068 999231932 745120893 932604704 892291518 957165640 852590582 870309821 765593008 767811134 469340695 767254655 783706010 978744151 304657346 948648971 340606062 463558770 532398196 687579444 955442494 989400582 74280129 692160404 261481540 816203601 960826797 992069729 524465872 650124860 784677650 828967194 937248219 990897304 349702381 472088744 725186315 785710185 942390104 952006526 504792167 834569703 262490229 398551663 616934004 956720273 50386832 594796700 345895464 911558175 864338421 937942115 424109619 734672293 197126505 730117576 10001786 615874357 743349372 946921456 155228236 805075262 555898022 744394694 500568263 631711611 586223383 621292832 671903248 855833285 233989902 842757927 450686804 817167352 405860731 476081524 631618855 756359950 540821329 992486632 134889598 686706843 586026665 650224003 245423347 892254398 72186416 263575866 292521342 619666440 51864560 603237161 328301266 390405778 929298190 940950606 569086865 942285784 654570526 704443118 330552666 840981192 20100318 932041733 216398654 387405754 585112419 607299372 542156057 671235291 611119020 891026909 90379236 500442213 935119138 941881140 843444932 930107164 75152197 126114036 544981240 919304998 508405930 945763830 788553354 794708183 553690846 837357077 648858897 904657763 948500543 989180260 779607427 883626365 802591498 912598752 630299591 862592456 994651844 998728175 965050440 968989731 607094436 751474485 262963266 477882504 724804593 940382324 146763862 448771755 488374874 789463467 105255619 958422623 834151918 887436688 773206963 903304883 759611546 852618440 714607485 944769938 209705244 647726084 635333205 906404951 540461407 721952681 807658200 862933044 796411897 967221463 603063418 891659013 531064675 793184466 72034412 619198790 194452955 584313622 152830902 283003430 793171552 960226939 808831606 816702622 595724104 656188397 542571041 899214523 40761778 482734199 68942702 425626057 816999890 887361588 872471327 989292802 927079761 961880993 431424417 655252991 22612829 108084187 426090273 478603069 721987555 796005120 651282599 943918367 280215287 472112744 747375262 959730377 388973012 946227219 880686641 992004449 710516078 732918340 893791717 955253776 24706607 851670332 893530459 983374868 910467245 987551443 99521487 926445268 837514072 910372694 773352496 913405994 390521528 701629309 289963080 496720016 151147786 597955756 946519249 969327882 200287804 562551614 317938513 997210766 660289283 690889175 939730845 942987010 370422869 934561249 744456288 809308407 992567207 995703042 124882420 997916146 886142851 969008500 21567157 439698290 390332121 738969544 144768803 528884361 153721009 189731143 58124739 935370538 355370842 678478983 642648587 847966449 194805088 354612118 407629928 857893971 172552232 837321367 118192306 799027555 641590873 695102956 125311412 163356435 327724290 845251711 697329736 980368673 716564818 762871613 380732535 386171969 143668643 272335836 567468248 860805608 94695530 300859640 869702092 905446801 84977351 510650559 876429382 999708720 12768646 734917856 406471556 596365323 336376427 395762519 405378751 614802098 924387223 973622991 241812277 267211609 45061688 621096203 911617969 950543417 777316376 816651344 569709862 959686897 727910299 749808237 377283376 703621563 507635875 768227197 848612747 848880741 367365394 502292184 497419945 519587804 385783037 701647427 466748574 850225829 81219335 653371166 478970607 848920578 359143520 888144146 882255755 903609155 229606350 609156755 138893025 552834095 82288519 428515572 337506835 927320448 323333585 637387827 362741422 545573554 144399991 906646923 460392834 482274300 914796264 937032380 32775635 413811275 229793595 623503252 93020633 668696843 232800421 939963764 464277614 993164432 212888020 569499744 50619876 225171886 623795378 683336999 442151757 512796908 413620624 980054847 575678616 882672073 585863739 800079543 98724616 725912806 226433563 654189906 536568036 681907969 956419223 965120844 496097658 764883511 816089805 906416704 191807611 991607634 369093665 884422666 544885762 927921772 107353285 373874098 785857439 837437086 515673082 596130199 739317039 906863796 635564696 912973220 603385970 853448094 624114829 936671666 4988061 293204258 334294676 368325008 857070227 877893735 658809698 946241972 110844352 617525393 318019623 581102772 776330773 987606200 250432224 844432814 106388779 716867828 737984457 873091038 102049026 650376996 399659812 638892324 394539731 525548963 519411707 782194506 659725433 846012084 243022592 415085102 131933647 243861436 808569458 998832789 542461215 940333297 954152929 961360489 315317150 610345080 724584315 844898533 132840905 927589409 135952473 284855867 792702334 896934426 282669114 722000854 536937298 644123802 583914534 854262593 337256959 398177000 682328541 793648081 318354939 860596169 452857515 467059013 429628369 918961771 206653095 461772519 482908992 614077570 539294409 843959448 99429901 480123591 544117184 821498385 709976380 779884524 415080411 849946246 407967491 936745968 987865757 990847625 210045318 583118440 459255151 685408789 121554423 685762106 69623580 803990391 798327781 811677166 475317194 727924053 542260356 955846113 557847173 888089715 622586737 979342084 659234203 781792144 50068126 291193136 149645714 875017575 98240940 648348818 473212552 781971539 385650250 475240788 357174436 424560710 190048311 526720086 591131173 621514501 2186208 494634477 857502253 951652370 386460900 926991474 517836447 807450041 687592207 918285475 61777301 324287128 594501028 710274507 839927436 948716316 286209892 907214877 29533984 953401455 984290385 987292187 286209263 898199631 421595697 830307953 442273397 856196560 979624336 999900081 624347069 631406926 21613791 999572304 466552517 755923416 756051702 772119694 220974024 290455639 357774295 935557045 501232229 589036566 787415799 948732174 66633054 307921483 504562994 927693201 128305668 658911881 246134812 456883775 565286743 662598476 978801349 999702558 217546929 431924230 419539900 999429532 578886797 702455912 871565374 913517779 407939033 669014554 687753867 938421214 775041658 779412012 538483001 855404720 817873562 908912133 349841834 577680856 565902183 634879462 834276159 836009999 953317570 980902215 970393479 975417320 136971897 173760271 989526913 993543090 956362447 999091320 241411977 279579825 900035601 934198291 979244280 995218498 965080313 981269819 44791526 886011319 660570146 844102011 8587309 211698369 530609637 967643714 104960181 508076561 59131393 622872483 321390141 832997454 890657602 903674945 804106212 874229379 133189615 887477917 90741195 261297081 612074449 704993477 995346272 996941812 317369411 939488502 262299422 704451207 902579769 913953865 308420132 832775153 983790993 985168457 887654213 963740571 386041144 453109194 280734715 799211139 340508321 411351131 878071357 933249690 899425246 947441955 755966643 884861507 598923048 894666762 962355980 972327747 131999544 935620353 977881063 985536410 930473577 959812070 498993393 672415384 285923330 657947310 837972770 967201983 871096687 953708931 998510278 999040083 385593774 695354640 48013370 216989588 366694704 830074268 198015476 707596707 438423975 590663357 203782050 978825382 436151896 833052944 163941733 212243743 484279396 807315163 425147606 992626086 164337368 897760365 445117637 547062651 693448021 701890502 28827203 779271606 380917567 837653077 368974440 824610043 942246227 990118142 726259980 810673312 910077580 939130502 28150041 93344703 610266146 658462458 951079050 998869991 869218840 903956149 62143760 997148284 863671714 931303656 944174524 987079068 41593183 483301069 131868631 847815737 833214445 961822369 74038051 105731522 536018821 764354009 148272014 376502133 345156028 914441781 681500352 748814845 697466606 819286510 685763587 811261520 904742686 954442421 89101804 782365662 561177241 698925527 116125962 920970365 761061496 832646200 744861883 855424166 355810161 459033440 324779422 325525080 774799642 923438738 703624450 883505128 239029917 378616237 893300075 944932734 277160296 678179503 466453110 534587780 885987008 978656049 834731805 914969003 132292595 892530158 268431850 864825354 187080269 431832158 724976146 965702059 455007064 516902288 296855240 711132097 97851381 177287159 337740355 639562301 728974694 796947718 243952721 617633851 387158265 752480372 964443165 971173916 755375620 902959672 616649700 732569262 296672092 532105964 141666871 980063757 367385758 612714106 378354406 938735459 539505388 597907807 855217755 871539581 201349400 494106043 976607838 994608167 975408958 979410050 933203460 979750185 890287677 893031207 652942114 902603535 46425324 793219995 711907379 797107832 654660136 784440312 267726365 903968735 797481340 939249284 641846516 684417751 736563658 998990225 214136250 545727071 573806109 823353581 853791782 886078484 322981029 904818944 770220943 794957742 608567370 908404422 363782194 640632463 44205167 516810745 580449074 767056101 547222941 734705654 724543241 887993004 655741622 858366606 288013022 788091618 262871896 467653229 500618754 570217382 75368367 586678184 344430907 630676411 860320194 873893181 204990556 387985677 983851181 990975556 444083259 793138776 660622908 994799860 224582716 602574284 947892966 975157652 437008814 703189018 696490829 742446307 636928989 946566968 135223472 612515903 972770631 978091226 363720076 840783773 611822854 774730168 773006887 846827374 532077060 816433843 496362668 836715874 623926413 977186782 62820371 928842615 858034064 900042617 325099430 545410321 552060280 746045394 77840202 479219211 428211165 461378158 736656843 828764122 930483901 947877238 433958286 815781411 165171615 617906049 739400770 761777642 284680300 305936928 294060422 455368592 291911801 776463414 380978720 718131601 471080327 575702465 366224173 500158186 813710486 935298957 621280377 982955411 995404027 997290178 906577681 954056121 382431100 808664178 443904154 563619492 718794610 917568594 540068859 798971178 667928043 677023682 850087036 988396015 777687073 931316567 948115024 976483337 394610081 882923367 307252528 884260709 729846695 965575129 891307888 895912727 825696635 870100171 614633748 623697711 172421485 628880117 884364882 934095044 375191905 917391609 932931768 985676160 255702258 473338598 804343241 899834438 770012080 782178830 403408164 851814335 194591767 474368247 804607267 972284704 654253052 919659518 561130288 900696579 467186624 999074854 462711003 754896016 22266666 534382681 537445328 639933479 499251980 590091103 466949750 470155094 673611564 996571667 139116224 872651763 209838296 919864995 774398223 996093945 138623810 468702565 831284970 937905580 686067204 780876269 346922381 877406944 790589396 858171779 68484964 692881453 398016716 748802701 559215411 832596058 343782339 845053823 571126966 644990867 638971224 877658556 449944698 724869093 104447512 174075702 850932009 867836289 862225307 863503090 795072176 959082008 541713577 703802859 354031512 528620800 522590969 986680545 591689335 902379416 384955714 481028824 453191480 953122881 40166463 961242421 26375113 372402239 89524799 869274953 29945338 879035518 950647151 953200924 199140410 528002796 993303740 995139316 823959724 972875547 740382749 911330665 148855331 702106461 469786511 816639572 44597164 953703473 506665800 796675791 39190505 788609999 530506040 920535335 754863615 873628085 448150340 774352499 915164757 969124327 329183449 686942718 699505846 965122228 404904146 661449470 604739189 905615480 345961414 869763173 209836567 658073559 420266047 764523661 424781845 564969050 248720175 307612486 447524348 737239793 463703862 721322818 347034574 752389568 86622162 722391802 601218178 902707596 680033248 963176953 634064685 707059362 439725200 863119182 115381456 856978678 69157096 193409648 433243504 781122847 294536783 941327213 69908466 771205386 683127948 902798535 677227097 883458900 42024198 930624348 582576832 978417512 759667105 973909435 831038821 965854440 140140584 649525436 946222136 990573262 199324242 226774998 69230456 193385732 286343366 430662082 948769791 966053924 649869445 997345932 258671403 343775183 646210282 712533864 733864850 816285934 266982318 700313907 532930122 688422286 101116952 422029918 533780646 541610910 403788709 870473094 222898022 606120389 735119073 785484423 848549844 932719438 596514573 648754848 943677244 960736292 971155434 981812479 819921293 945027152 379909701 511493077 849091876 866712169 593495230 788446063 391150969 605968753 916371863 952205764 626219803 673181758 265358082 994070213 795893286 853371832 834458477 944319289 359443626 950911429 239462969 717040044 885624426 938111739 768115403 771971606 391463451 896772196 647885664 695962492 631685575 700224652 408211300 418838404 389622306 887642920 966506978 984465631 406150356 711369224 439510834 916743599 561959373 681327892 490245850 591800982 926180064 942413109 416267099 515039638 469396931 752185409 959794564 976715915 280860742 412698362 707053244 735617237 533152025 839328319 106849255 700230899 523788212 873721686 548208987 956176260 716883088 777807866 707767260 753771921 389737760 903326261 575490020 818440452 111338235 714066951 804921636 880917560 840446448 842445366 614004300 699311114 99264702 309565984 515016618 577118930 513571335 895952250 84951392 363466415 536750380 585255920 493741720 833905194 364515555 988008419 89326292 434150686 29332358 457720062 336400766 521873662 1079077 808106095 715443201 863737847 12639066 116492688 366655248 501332952 329182386 945730687 821909417 889220814 411882569 823778812 439995039 600823115 580320448 697974473 837131034 928898894 950932866 983928737 726070290 984403674 490590726 970903646 815247360 961304980 493022309 845818563 933463393 950789713 134056093 362870460 314760028 372943857 450518993 916651503 813581666 980834305 51030926 303184123 61408555 912113320 495012288 534318928 304231004 949308101 863329974 880548399 444537043 840104372 826397879 967243876 998889185 999821777 879845886 887854485 941037007 967358602 447755293 997817552 877307058 900699604 882326902 939723499 263342214 895402968 808484877 994231115 400513335 835812704 372930845 741690805 244160373 662994754 270722369 678835350 367696313 505265983 81481476 986762394 194713529 219392804 689073816 848134496 870397792 980173258 637447537 844384598 190876475 619187688 408590544 987748984 621018783 625921048 623706287 694735890 29980650 510754527 735021349 897866861 292570315 984514857 732797188 802821027 211750533 836985496 373541809 460173440 488983126 585394447 772623094 898567820 308575455 714777377 825190818 917126894 403767378 829260516 15013838 892262403 112035769 114657653 340928019 563457820 359699078 798657577 648226577 681094847 836735616 996862256 555453847 910619863 832870687 914454871 456632741 549560020 618098573 805193368 560681124 649709333 676807452 978143136 998327321 998562984 921157617 985814218 202826045 429666273 889674011 998488939 880312407 989404154 151961890 616272856 165200635 329138266 223786081 659640007 510335211 592903429 538119679 649480091 93470077 112551718 864931034 983425520 937463294 951226801 670707274 801691437 570879480 940578670 81325798 133289462 990906564 998951928 506882248 645604870 227843315 554100274 32193362 604466779 950677050 974673458 950201563 990858005 750613371 849520236 806436838 883830146 526292070 915028242 975494260 976898194 159015394 579963506 560053001 707094862 558229140 976096504 107580361 565615389 384301017 477723917 886498740 888160336 311161954 830888943 541820989 704027766 399264006 604211143 936001040 940644946 413050630 909820874 175686705 934086269 20179197 575121560 738379946 772462331 654842603 762138168 356666705 608034602 61220979 129524730 367645843 602220383 990621783 994170928 473953488 796567288 311440207 923843484 735918204 751964492 901518816 906169842 788694867 970053370 367294 541361801 725883946 970170506 852354887 984007017 741896858 927504420 301125162 471272672 260711158 278663706 243425841 507800356 589673713 730838892 617786967 639137504 298770767 549912082 815963205 846563059 58768728 584618407 970277091 994620789 171334830 492224841 656666854 885538917 746303692 947665412 430091680 815177787 241894147 529791723 573223492 589958010 708569390 744375030 300039451 658652170 238844200 555226637 955950948 960111999 16168972 69243876 805184189 957469508 494142739 748962925 279807483 600434798 999000771 999435511 610155520 688702786 142770526 228017819 200929015 843997579 982090884 999261622 701764121 718966697 458385679 901599481 680788429 765584436 548602047 763647325 498605839 630003599 80759761 546651526 12189173 671703310 841627919 918206749 265164875 721687939 455829852 627190834 909825281 920366586 8295300 247351689 831421570 956366152 22779569 309877478 385600728 510169151 245978464 707255219 346154111 431095896 689236589 793651458 159761415 174742802 481103788 825536963 976096555 983143663 604038605 839839023 349339326 787325426 808841406 950485779 384941526 700876495 174028353 700970901 617656677 781971429 100740359 128226910 423975535 977897633 480696285 620060732 281964776 452733719 253297226 987390873 689448043 891049776 937206620 937986741 294334651 391876200 324412116 667051544 394523931 892259001 431633732 569664298 960126539 973434541 632037457 645827149 352547929 928535124 392047179 874009289 242058332 787745030 434470314 659102966 592417948 622808301 222232629 791340477 121647035 146925965 995508215 999721880 373815715 413234716 717149045 899772324 574754951 588551315 818516794 911310798 978995638 983306043 122355719 437337224 148946889 277323239 471927999 473735558 348797925 536248331 107000370 435058095 731552985 989139405 727447166 761893630 253742951 824349503 375739789 829677287 912021076 991977731 462261136 815447391 760866513 886688127 69592982 838408577 32313139 111287114 610979801 707424259 696346484 985217583 571486486 685041900 162536609 233210352 691154194 823438319 503301227 999188301 105870271 980373591 50585106 75778778 141009122 525724463 299998395 413493241 657027318 786638791 146318632 913197102 411361564 434395114 290748231 650377327 14713736 757230795 361315220 462542860 5905181 179898805 760812845 763294674 746118957 962298821 165144324 290399320 831285459 893569498 927583295 929011409 815186782 819817183 684097071 984985795 119554256 186603865 568311265 911580749 811325468 917794617 196587102 991737142 383105817 981547585 280866603 798530140 795593220 923860887 381925115 817143822 327892475 699852018 920128169 927277751 356130448 620322294 185542756 905740117 762323971 979715943 485528372 983222804 447977210 635185250 736263330 956296771 292630990 867109889 253810311 971393612 770467834 838229927 665837167 761022306 660224302 951539717 397571450 429055480 67455676 442982989 597626839 912595878 261660546 782624974 9515676 126101957 908779274 995395527 246336048 287590155 260329303 345354723 827643681 918842524 571761645 876767537 145041897 574028580 978999334 980867252 193275572 564596160 51436951 579109921 501346759 600008324 942259790 972330003 941152385 998698512 504396129 904134741 739680408 990250366 597126525 933709872 811168876 832409998 56096329 864962629 403490117 634100646 573997890 866203006 689626672 815136005 500428625 563394015 501636936 841829023 930298860 959083056 828530668 913135553 861610294 948876302 771369248 823305830 335572775 479515842 644755914 672060843 97277844 804227549 902806307 989311485 693992666 711914154 347955012 506413121 647753580 693115139 712326608 982949223 551733053 954276560 776676904 831983126 456596077 929043532 841361006 880202518 295559224 914518851 760909351 899165375 669624443 738177164 471261998 775030186 174879121 294255779 126553205 264513761 658940146 720092861 747566220 995019478 901320549 976385072 539911543 564288473 986310429 996187101 338006216 968821963 314430112 928493477 954347332 973696448 18230591 688474984 68512395 735279592 744453269 853332578 10134689 303241340 183721064 892298515 463750116 914297868 751003906 911248706 382437358 567384314 770324569 979847484 602269390 945907396 858072236 935580039 35552758 898067945 7030823 872309296 473159 354432009 36936012 170721176 309556083 769011314 568726420 611687270 397542092 437465849 483268062 649326349 917779428 951216717 909647947 954108215 480817248 555744688 984290767 986570051 432502759 718763681 124958082 651558050 522934526 749715779 642851127 779461308 242429510 709551905 199093688 561424413 674275937 741816701 993412987 997700032 587090418 685864754 592133939 818317280 69581341 245346020 443477863 878682199 541301977 965082689 829576655 975934180 83507283 427134512 209555525 273646737 220090755 971892991 701674349 967943311 420457937 963026001 648252598 850601569 56112678 871861982 84091442 422286891 388554494 635037380 101103811 415288412 367412909 407507380 296580089 637989489 748737604 990233174 499540653 682897461 564673705 578653830 262316199 638149361 506024989 779519015 939347450 959354060 938371633 954477494 350517738 932217271 679080930 720172391 348247471 776111008 356728416 902542293 592247389 694086331 917088508 917420450 173290884 684310119 917261444 925995844 213350684 874927312 36000468 879230411 320642227 740594036 651939724 836186701 180298420 993252200 364268557 477406293 215291783 825305282 848202400 992676904 481675832 762476709 752989904 829362044 740060996 871890329 450034495 809533860 210250896 433509003 886937654 888407161 113572079 550718115 863284582 875744652 356073493 795517827 90427783 479061967 136315105 763623122 177955731 309149211 199230486 467702402 353485212 367404436 392582948 430328257 939177832 943554039 150954641 653429825 685476240 895691564 37511331 611972912 26992888 188151828 911688668 930694120 958806970 976366607 897528754 933904106 980221435 996572465 7494804 226491674 554193932 557872116 823563507 865613481 148824789 337836159 276758875 562241608 851515163 855191875 349929083 692758351 1394422 283498584 251716255 819081859 750076589 779899953 259452084 648200838 687591453 898211679 380267281 509989056 84357228 497152469 650865632 884099255 972693391 990265641 491416575 940349941 735774900 930064371 962268176 979912897 332275908 590563426 185050866 910589833 22873572 179754572 694808701 808168792 358119487 433184006 285501705 387418988 401911940 955827541 550800204 968023431 195816004 254989345 652082164 691558300 295404860 926926338 743036422 807444141 361507920 587574632 289311188 701689512 385322495 651163802 975858833 984123415 903314048 924952565 579693389 591472973 730392360 888691057 128998889 704100523 411462867 929524983 89649603 476008208 970650800 971813788 69404675 838145421 90726816 872414162 944100937 980885988 151588047 449492410 663503337 757243572 540696297 557282461 506568043 584350336 837670356 870941848 209582312 930484372 541939123 753167802 608955391 769938115 899822465 914645494 11286911 25032264 630376376 852603547 546118606 563912733 400095482 501877028 199023794 920830722 539493168 896551180 645991112 826853977 603370554 951420853 518539023 522943733 45380864 355493190 985747705 987198709 137478173 499840248 630296062 877713506 382037114 467998277 939541013 946795809 175257380 612124059 930292508 987788140 950525789 995009168 953804543 954807688 949745110 985068579 912799312 982576308 710657310 860831379 988244340 994518530 274345747 617862080 206107883 364928350 23250629 531152913 543093498 969888231 846033098 875162696 98010543 549313450 316121498 377925451 495305928 796383759 734159905 838634809 918052336 973850506 666157871 969081539 68278413 341257959 54969335 302095512 638139068 673355654 134198327 712000894 504064423 956793048 645925918 955085459 106715450 572212273 30559192 878332857 25432913 907861230 495170511 794292159 20044126 240968415 867283987 963041283 207196317 531898505 534507688 829365636 5411275 533628172 201708982 633586283 125209217 289374681 761524153 988980829 490549425 833477637 601126207 948156190 747435026 788892894 559294399 710965059 321066236 671456667 180561269 966760734 139362369 981536943 439408945 506869600 784878562 813022634 355226891 407798194 826765969 922634941 207231814 482198339 349674877 373176212 591407037 761840044 777761143 838376267 484010734 625033431 341153269 805273955 864740943 941166703 156326329 817502760 329763572 411187660 371097251 507699845 445409468 976064425 423632119 493099544 937110535 975224366 903087976 966663105 239772987 629774014 554737373 940889720 958001479 965094883 523254573 623403445 759166217 840879641 100462176 769163757 641108640 884759583 37402075 507089265 512269041 581412889 333687789 683052460 670108529 952001455 730720561 998189093 920890970 959321727 217104409 840636463 596753761 771236128 400805972 428353145 506354146 811175786 614651917 690082546 265147072 821623252 452059139 977626572 406255848 820560901 590017522 770638144 54761276 267684507 420227492 897351452 898088694 902996939 495875776 710656788 833029791 904071613 540319074 573288991 444697240 755101135 763226265 990382939 693587954 921663127 942049367 954993480 201727110 650486286 782713752 847941174 537100796 626157843 396412752 484480048 534455019 542783362 760567301 789361932 287224092 345111489 480165486 662380520 67734046 227247510 137904752 941236782 304591852 728571895 628951085 696335626 646759155 698876385 547345794 611992854 382491326 725117957 666276782 844931957 412069251 594581290 197655716 675744163 409075840 612164790 570554 67845252 511838400 885231984 138229451 914502112 125437084 161157299 923294305 990437019 110371843 717428056 728200740 815591722 76512106 592042225 765858925 811116370 198665270 838817975 385640140 551011068 529028888 862674218 369076281 506238551 591137404 933229650 368454251 957522175 764940583 859679933 367129991 835572681 607289246 644260189 367875041 929970019 326039437 701014222 321688884 390376480 568768874 673404448 234165010 539570661 15546111 639335533 404665178 730583487 547414466 875592679 465550292 564377946 840466296 947595526 62713572 964807115 191544873 869454555 390196768 616586366 877592883 969339563 477372494 752464221 924912631 987141176 346280102 489161874 613085783 617160345 431716697 488174728 220366836 817807987 823647201 934425008 775960686 948862878 742720239 890441052 699001760 813496110 706309171 999624834 260266972 972980237 409567631 582979515 797234183 905559977 521174784 965845363 969707569 985507085 440823840 888192934 277056760 742349503 492686245 842156610 78912528 775900562 996552013 998098351 168304136 386854233 168551990 698772063 464957820 694243214 275555944 857476810 229330949 354580525 840778783 933848593 853353963 998940682 971681078 991198904 878320051 961410387 912022986 955243274 141298078 773313160 566115838 680185013 774988463 893362371 415468397 614184221 849509886 909415604 424582851 641749566 264181237 573807595 966503892 969003048 83969820 479607732 86285299 150396798 652370966 677216929 853594093 893948713 227100967 905012457 123565846 143456640 293609712 517366930 265700861 600993002 934517658 942932155 425965973 458532308 418700580 625128516 64003938 105667117 270259999 838066900 353357532 386978521 155254724 183686033 48864918 730886783 150914064 241135774 966079385 986696566 391048383 444131424 33721999 639202708 771512252 843837645 11704495 568914927 765951726 903521904 665313924 773046353 709893468 761109083 381754023 848228846 660575192 787492081 391279725 589981249 691874450 830322447 303784036 703227210 442005527 632077889 974598927 993388673 554359589 685250497 34652447 423014149 851271789 924277629 624549195 951835876 630456432 675119656 40505148 42422883 554593765 852020550 667777107 828344979 667194047 910559944 782904895 830019765 433514480 709254926 534388703 868918724 311497506 492171492 676977393 950508000 22476714 408524340 729480343 812837954 183466542 659916131 279069154 314772753 940495510 987577174 820242588 823537664 181949018 390277535 666499998 796142174 361201370 751112963 805436992 919864616 75806374 772412317 475177969 527132663 143231810 959843810 609925488 928899540 361260508 659125260 589679959 692390154 620414039 827012738 191169710 210914024 16072424 769148230 428802872 496735987 829309945 856224738 706155705 978856208 977215283 979758342 754870511 758662702 521337458 713561866 573407106 880148707 330168451 539901808 531207724 881844070 83983243 848802808 400491173 413302742 923399882 988685257 286012168 951668215 22141192 153660519 162996246 278291493 211510071 543654110 989974162 992594774 14237286 477287699 638082948 851306108 674358505 851535435 549365467 988853953 872069760 927333744 429078686 620712403 726404077 988742429 160299047 620261545 939746321 976301513 451893309 713994024 771984304 881316238 717347701 865288401 489554379 677931000 977313926 981357812 392984452 405602070 221583637 467198916 191631493 380225321 954277256 965974023 707033085 856565988 125699883 558432544 326954267 970880818 615974366 741779551 492106094 759554354 597442836 685302897 192489993 886905116 709985707 927043723 326167266 376402772 235287680 810622153 771539308 948557727 926323298 942025776 561973011 837527561 525449848 770903556 382707129 515009511 295729335 896889741 397969435 482749128 599492317 661618281 663168896 765544356 730727811 749972522 400411404 746906375 669769563 699882044 122659392 770823229 339205552 589112268 586943432 959037436 598439941 632428808 861144007 873651238 228044284 860680443 973393911 991048594 90169992 551485768 23401771 895368199 433547240 859839202 840989059 942139434 740656970 751828363 783262767 956555535 238147909 853324671 434898819 563180367 213238874 235191371 164686933 876400780 96606495 603995346 557724612 979246483 321175905 878593796 192878678 428079780 15200914 750690845 569843629 570753500 992211514 995469061 572750309 632972139 641504120 885874663 205025062 619406871 418503632 765423077 561106699 988479621 242079017 964011098 999031603 999242362 729905534 763723221 487637657 709949689 929550390 983920648 374876157 683308842 158375534 882290325 768092821 883154531 698753729 777964570 524838401 567941677 288734139 955887860 22900652 578891016 566030167 592672306 174818661 270309256 672550522 825363402 125215217 241199398 512499697 932854082 120836493 985471783 378713499 499721068 605426506 954253903 815364484 947273610 533604939 978989963 787737116 849869495 238977746 728006137 162034755 631136748 598054539 635911748 145265637 812439083 918336139 972596055 158790691 225556094 222574105 914251422 214323196 606237264 847218597 863441044 297523041 610402697 544675281 743118081 47249636 458791767 578156103 695728333 56992830 614698375 719137178 998150845 236340824 715224116 561310924 790232178 641403670 824748387 362812103 665582809 544702 251580311 539716215 663129834 543523907 612181536 890906051 998621701 405167042 543109670 210301969 307562274 792538164 931044069 70295811 75176189 22960909 532140592 953649324 998944704 852587611 881090048 421514740 783480197 827025016 946974501 598686525 690337090 447372080 880893218 744505910 991920176 229592468 867403740 864257057 980824223 527236330 703288343 364686773 597158366 443882809 462195748 460791130 800702994 40071179 873644628 27527945 256456728 263754474 810418472 996394441 999184384 575685723 764991640 394738745 874124134 118139479 793921427 637969434 707390839 399723820 584938301 53028149 912744865 513280506 643863658 168786576 931669656 618917402 727936549 594638599 812414501 665530637 792371598 538177378 710093348 154752593 277740114 27471922 127122334 948911413 988083793 406988408 862461848 567241039 855560241 463709271 751093667 822583996 854481587 320445947 854805478 275861482 953285799 786558225 912381533 863715469 873418076 110918825 181014986 385917733 636008482 717952948 938718523 405268466 831655655 168608183 901335406 733654600 845642915 50988983 340876818 753479092 949337097 469724988 706143279 482809958 654154380 228921159 950905040 718319247 824306061 800354806 898887654 712007102 812612813 583407032 767803324 465439072 622711836 779250363 993929176 268442505 351059391 34153066 485211601 741738240 987372859 276072062 477627062 363007789 677023986 81538317 570870498 118883226 490725979 876948351 913806260 461452810 832474236 446382243 992307575 104918243 959027930 386278086 721936277 678199664 744005228 126952789 328865653 134540873 368861060 151577705 959526851 977830040 998667763 795802818 904345238 320978042 706811943 27425247 531240756 426303214 993327209 788015408 853778201 190847973 848943950 965486441 974700191 59436859 977654907 781895405 951228069 235114530 544235249 535304025 741077310 979329655 991159103 31826569 187336418 898000639 913787096 845458116 924215383 431916258 813033596 696039334 878869845 287722104 504121258 247198576 380679610 483230377 809971267 774003161 863412339 934422252 945499328 549687297 709446034 79623764 676348122 772119165 961026455 111706644 993179403 88339135 671196498 571830069 668709754 885543025 963539068 442006826 617464655 752032733 816248825 582171995 936402223 300569794 746303009 293401886 420553094 913575540 990878680 299457800 734043397 72407900 411776571 723951753 973548547 213179463 616899144 267433008 634176368 207145367 289916085 681366998 851872075 12802719 220897324 810268183 896815587 516739702 577283756 353333447 789025637 811826610 847970212 678600079 972516826 278801496 395676807 563970261 951747686 368942003 550766044 704624930 942262108 459259441 800693265 323898113 470586729 308033016 688425635 283412356 474800845 814631465 992061161 92005532 329056855 734257483 966184854 529308860 693667601 707465719 947961937 131759495 980673278 279829867 878851206 920870246 990656808 689980048 795412799 413050649 895622198 893849556 992211703 625571870 865005919 993816618 994901818 133761198 841066248 320773496 328837013 924268413 977695445 951998555 979716030 386902949 895957928 895638738 984510640 933217495 954365434 245521594 953540637 649461307 880446488 172880967 869053998 181961646 805517900 610167480 971856102 366967156 891902913 793608657 797751521 104262116 718976754 332005459 761204603 367019406 442266562 552792017 629394335 373177338 569907628 888071174 901125033 156450171 689379421 181776985 725748134 748036619 979153320 26925932 551139713 428897134 922067083 381041012 532763940 319852475 940471161 990261819 998223992 665905079 878481974 944648724 986019267 415721464 928884954 595906361 892397017 531279022 871157612 914341457 971393701 297480945 433797813 259482723 494932623 443803253 590896072 71563267 182915540 136816556 840033943 151970670 773546935 765881868 953204352 347231541 786744686 334042252 534888527 14338514 793404140 93785990 678166291 844810625 978114619 213221073 424480573 651565432 900469235 126613174 642091773 676978691 948227274 913062211 990507653 554341195 654399579 901242556 958267183 629935074 954713865 476364990 855440192 637215712 726203142 71205861 846814482 324757864 853946827 384722906 503384870 302185584 830635109 782278029 825515461 112368492 762511404 906758545 991281984 654964336 899001536 470105635 946772692 575523229 777422638 871062302 954170568 858196567 947474000 2111093 655500681 835240661 927693876 646852410 685778997 823813105 874444224 143565929 504200003 107627551 638487478 190826013 720742704 949520771 994594309 772897890 876109279 404184905 818107616 121477909 151389822 534790757 938359677 195335814 937943141 115900655 935331835 642115218 945961126 45033126 130621619 104321815 124365888 879505517 965163000 334808319 649626631 203475665 866645295 815709409 825686148 738804304 986009146 982147291 998218308 234706797 511883003 255307080 862427656 417262539 604568745 257752075 885931592 181724374 257207904 563693182 608688215 555462110 651341059 373060933 800276122 312788518 787060373 751223653 855024958 91250271 197869927 786491310 801116465 798373813 970112362 179206195 254942599 8630358 251160437 754894533 808859308 658684535 672287112 720607016 958772240 230987680 261681662 913702626 949841569 772472365 977002394 482364155 622181391 359931162 846083406 708649749 853582424 779654069 873528585 190847131 886214487 252278888 592239362 852336687 932173509 449000707 534432987 702809430 956643838 235366599 950398597 985427969 994469627 40404778 658975278 620194377 628636961 423895066 587756379 207207431 863026614 603564628 920006307 435541713 619032674 743768564 984646688 91283639 316741590 736989697 890625668 468377844 898903278 15401430 73346958 267299433 923509673 235762151 862605086 663821997 772437977 234432328 391170787 357738383 638132865 337530745 404252851 987997507 996997527 794130647 980660800 395771776 493410223 963356424 974636710 338518078 528905352 832837688 843484424 978940276 996731951 581831276 597083264 33782471 253758755 526742669 933781113 768266133 848814391 223033181 425905238 438269952 691982263 699692909 776654930 226345273 867135286 939487416 982986190 723263833 949773571 456606043 560856452 989759555 991768296 956127984 969933911 751015716 974445800 242265189 363212051 49483350 530391709 567715380 713613690 268178677 284297633 667408587 915929682 207540814 567872015 261090806 560200204 217933191 488578534 900746925 931065113 623134628 859522754 131290820 696610138 756697331 838169403 964374735 969714722 682975615 756323123 474588492 652227673 927112010 957893432 610267201 731828430 928041102 976186035 414290234 944543915 29266299 942776357 706484837 802274228 414040761 542435765 519110775 826462920 679618092 907550915 875160696 960178855 965536499 984485084 948227567 977014020 50326407 574228068 569359816 852844565 867534226 939919073 249038444 783526243 381264885 615292562 231520549 378175052 349990581 629675769 835333171 863154409 38690789 430023196 781506443 848205759 810469993 841729405 111585006 184340848 96845324 986269263 96909810 400576392 200111853 404303463 729120801 879726631 904085204 976173848 637662918 854187842 933962021 984657244 917886728 982795756 464538891 642243895 167223212 311263858 812420349 924854674 630278953 902876428 452267671 867851498 408060689 871979290 993619275 993756518 151877947 964172811 567751233 693373625 381667672 594256701 974312936 981104124 347836027 673865552 304069911 563207979 400574281 933793904 929444140 930296157 743504854 947472031 899269242 995096271 522067931 967263991 84867895 363766724 461362922 592318906 984888139 986938251 90248150 156559663 365844369 742075845 827108004 886771512 235273936 944294093 234291265 783941580 150909224 597088657 706734578 767975330 260954162 701939936 932633359 977097411 686054182 701014507 604059594 936097469 630949613 801453825 464382982 735911770 605638586 889552664 142949274 726012996 951227882 980563325 284686846 546944600 961886531 988394009 544370725 846333876 734659908 810334894 812253926 946439610 624492731 681003750 386260222 521105964 523104828 901778080 128635240 310299897 819367821 836013795 494195242 692281213 742303191 748960263 548719845 998802658 555228337 722736565 683848589 841096986 702623045 944932201 891350356 938313969 837215222 921458515 542558071 658177845 352480992 443411293 507004961 520043214 456253180 661275339 382868095 540629810 482830532 911324943 440247432 843455763 2321346 913524148 942139113 968229889 180791730 971456101 926593478 936987810 654410055 962622351 593629112 662412751 179388252 647508232 553943564 621508593 148245369 892850785 715655129 924907121 756256557 812523789 200395359 455086522 76105599 161376791 241224011 814136775 506555787 549135416 944251175 951683302 800029627 895867209 777879498 825345514 823405450 927706369 763627956 926872857 138886574 415129882 882442643 994093357 24640928 997354461 482257815 559106194 900211302 935730998 839631627 911037660 71961878 470739710 667704910 679894775 102498958 860638915 629544099 633994728 10603002 885445347 321519998 970594754 32150691 742827700 618050271 725404682 809486335 987563946 83851222 516314085 513239331 596749350 126031893 585511223 420882394 498899713 798498708 923774780 614490535 947571774 920391352 942098185 879629434 919266613 565218160 912376086 160138383 413521698 743265728 745203414 512088391 819165741 221565003 694321748 473763936 644768168 813890433 974997454 73167010 791789962 849209730 862981489 145854451 557983108 622186907 976681414 819400874 970122353 301520806 430078431 189481490 809249577 681642208 736336202 725040515 993335162 655399655 949303026 799770641 972042778 73391712 633331459 114909780 887332926 917297642 964876848 493086382 769725509 232090584 389330083 435870794 676752888 35782615 86099855 19113076 306173329 453853174 739572705 198718283 531457732 554834724 749884449 848870763 989799385 93304592 713778545 496793874 637749431 650210515 686579524 271500358 694999138 873409887 959908367 964751997 991097583 908842279 920754637 617601069 981381604 793976637 950922697 617430959 995093700 410215305 599172983 311426710 339195872 568925419 953586267 27810281 603119668 749982707 969768710 832248191 893777077 276745660 631219928 369724896 369942194 156176341 453202196 987810286 998717887 144690333 292754294 718561367 860764064 610429823 960785099 322590961 473744849 430055045 762730977 849505177 990792865 73277348 255895094 679247748 710338723 828968369 850756664 354260598 585332541 329890821 451255381 275068747 727793541 581575507 986650419 828842672 998537008 529089982 899414318 48522548 249187322 416757091 949967800 612308404 703681245 950294941 951829259 714304929 943123186 394785002 617712990 318682274 834210555 835179674 928698016 287071578 950903381 123146731 168236577 255217180 999486464 119613855 784130912 642490910 879077939 353290249 818705785 771865872 867649800 200726686 408520676 207214272 493341357 200388152 812955392 522031997 812983143 177680166 240185960 129911089 438879704 698946537 738313797 28043336 100390427 190085341 285025492 702852695 933914634 527490168 689243088 35997914 807881860 442208225 802780485 861314178 944082130 906047738 969895940 990822390 997531611 447611188 641238353 71305640 885811625 459249784 550271971 542379052 830223817 186250013 997745708 832220703 878419704 414315657 917218282 899400579 964431765 396593758 538997311 793633459 951467253 522899346 909647314 499969353 613352971 991559005 993973776 321594147 419889190 858187802 927024685 134384938 660155502 159860796 410291770 984054832 998685905 636774287 903505515 306871572 667048599 333025129 952016316 316504765 705577220 435353799 584100208 273021223 638615505 397217819 516178155 29952358 43468134 468578835 985034798 467614321 916134009 762606781 975558997 675370194 855499127 507983599 794627724 386834358 932329237 708532620 716235676 435161534 743998377 624273989 964666141 836957073 982343372 189361232 316660282 679865872 924810109 649687175 915767931 928140096 975029101 418236138 976249536 872943519 981215601 951548932 977273629 832339143 942479916 799087910 808841494 30618752 308789314 61887417 121812277 737257327 845301763 790376326 889329083 202742043 203089044 464786623 670613306 242932239 767116384 259302570 586436041 928060957 980644315 502517118 706525745 640991287 866953134 126712069 734132201 932898576 963913973 366404733 845252906 793409950 945795770 811923093 912610754 57808377 524544141 543282906 663743860 331810464 621513716 764471758 772098659 80342398 940693897 172931768 993751343 812651767 977650957 885401625 949827474 853812040 916260673 276557051 874143049 539551720 989109007 598906851 756177693 530977624 701235016 826975739 947632401 44273160 867037242 918410827 977878949 37768420 388968868 86974755 504566287 895193957 909465177 383206298 938114656 296492866 345124685 256137183 933267715 63441503 402473550 471085148 716519921 50569512 379113380 269089742 739160274 977992435 996875049 4327780 578528136 556516352 664872629 249530818 456909677 468552230 928556047 485436510 947289515 274839601 377059094 313730452 881790736 439624769 467853373 181769512 747073091 223836405 329059947 866561726 979435078 929133276 955629567 934561401 953810817 946761063 970738435 63848487 832191051 112653247 260767045 474826621 744566515 237990582 262662048 877471654 933651645 387462081 613526360 380019102 905709995 342876391 547243443 813978586 966089628 251663132 822667554 887404141 908822784 159022445 599453728 477111469 598820199 15639748 750031369 657342855 886243408 742510582 905546980 312887907 335082277 784418589 924809773 592714649 685936066 747073414 765759968 860491654 939720628 140122857 372215387 205018348 442253915 773113258 796214339 893920535 925688009 922511880 951038333 215217538 896156009 844701055 908556684 902812494 959410107 19903306 853276832 658457919 861219799 53812703 828753411 345284706 839852704 890436213 946564258 501214148 722630099 466969664 530475475 903107026 934054707 227988660 679635762 470062261 940535366 694577522 919754898 33205105 770774643 47889832 436576638 992758154 998265806 872654820 956053225 413906293 495430139 971141383 996848871 142366790 547535333 681108748 998221780 286500927 750417083 461340533 785005135 642724440 899910630 139026916 824653283 204867735 970238481 569617980 605869787 727632796 908904557 641814189 830281397 543762718 683395116 69105231 649970603 219686074 701323455 350172686 643006241 967648730 992955053 315159030 924420017 889963363 992196027 221933908 256757137 999413740 999480700 620359142 849343440 986268357 993144019 864930611 920193305 195689628 531649767 872696057 942200402 881032131 943286519 943224956 996472671 419381275 810399032 506884734 753712086 719203757 971058570 28714486 491697131 470390851 569357143 547623935 622606406 281894649 701823718 102319884 901523140 87633647 359727716 556020298 563390007 949577965 980154841 642823909 970448748 823195604 909125338 948267106 966267409 735535621 839447839 329553402 931042702 946307372 976017265 673437935 991263360 345916524 762312212 140318007 736934388 429637125 980120505 313883903 986180682 559941096 823840605 418023077 509502340 515438272 809853458 977897286 982670432 260053594 405187697 608565244 733208721 292675617 575528381 980042585 982165362 624763582 957016944 873974688 898830704 127659205 470522019 278521549 774295047 900105290 934589364 660193673 771915180 419807493 706444532 60181886 456215771 681213141 978777059 260628064 268374172 888552640 970540983 819500636 968581731 725628400 879001662 295482484 635751426 257711186 858959049 338181690 461980722 948232309 956709957 846689123 958239126 415666710 711415282 974372638 976879486 242296641 399136862 682688678 814080360 229077197 892126248 328968879 357658206 314974637 635316869 750785531 944726184 407005672 409172363 800343305 985457566 790485473 809365646 267950983 729810543 672628537 853885115 944299253 999089682 950310133 950617029 453404766 655274459 7775711 415915095 220234976 777229239 176835904 318293563 701615116 809494925 587804041 979995720 521158616 705426688 322286106 470300035 275878913 392286921 564765297 811209153 93549743 431030161 428554881 580633797 48321227 294040348 67789186 152344000 398791151 729203305 27610099 698455122 900143128 969833228 773411906 851193646 375306808 512876087 646392088 752276905 598393522 732797616 534086731 972073417 612724323 805357916 595619321 596476202 274811544 687652667 280106411 616208863 515139890 633946391 26939546 740061817 673357511 806669792 130340344 540536786 421016716 888465446 640499117 641247005 209164004 927956596 98670146 416572271 365533709 980266794 980780975 985239989 154809164 195451635 12792085 388862139 599939252 620866121 591568894 831110086 242632949 783442495 690353798 835875316 435386826 511323154 198762761 437904217 546177510 684931060 431170704 526194289 422422758 703790694 741301371 907121400 994181919 998245893 17438907 238834693 537894217 669952925 740166775 910544421 185571299 670343224 973675253 975157729 640343223 875531008 145783604 816704693 964173724 992563754 943115084 982874189 593266695 595742608 330034280 433889509 408060592 499081590 84256134 153299530 267502783 786043952 768300533 840861963 233881881 790732466 479483117 957870594 300959431 345586208 698291889 756679822 940351204 955436496 366526577 822771206 160617663 895700995 179861476 566781789 591426729 866782531 691254785 877890610 419744471 535525631 527869527 726005136 485777484 900115802 516610540 943600203 619221552 914353773 373468302 427211744 766882926 825585446 476894440 935648342 826462731 865809388 478661104 522019838 485637546 913931875 970376021 990823674 748294669 833671404 283142120 358668977 140293588 681523969 873251361 935048849 611271 303383716 110139386 864207213 551913990 925687780 910334846 983191656 872099863 944544037 569326156 955964284 697188410 790111003 524529837 727598240 708380461 922546213 630812286 787091205 374395410 559705642 386445650 642055007 118722414 940758095 353089605 465543026 69228626 572302872 850332894 951164714 274049905 655157729 425736412 727584479 759502129 839570345 263861093 671129788 57747511 967531012 452085617 802514862 47789473 68719514 357818675 997332988 121398281 817559963 226506683 717045718 898259245 929133071 47172197 118153826 602231769 634486265 796112134 820169942 651381305 829762677 540547539 622015572 189697109 474695545 504583999 724782024 606960035 898078321 231661570 309843628 941480424 986032787 858262620 939629950 372879716 416396207 532276540 673520330 207314154 266180124 293473829 943279245 381938525 415160965 55567109 935114774 607759518 924459799 399601610 964109939 982131441 998833524 876562398 958232660 533119852 890011599 302629754 949835497 172848679 604952472 294600505 744932759 2406185 690321531 307923943 758990886 382149474 730551531 944840584 976051390 678695126 780164201 420759192 855262181 412169965 828556072 839658237 987521799 376259718 563790286 921171000 957054000 778483679 842322159 267015160 893277886 82802276 628150347 407796742 461227247 322041784 709399605 821708195 844896007 156784348 978620122 212053969 730061292 779731781 793513307 68954237 468492295 551905070 773906192 878477754 959061315 204525831 974329187 410062203 597947553 242576789 338403521 187952919 930771856 694908867 705378042 806757425 961096918 122881566 340735901 698332042 713996073 395025202 645628699 102304277 859431187 848722547 896097339 496691039 569864408 201430637 938056550 969161333 986483705 117277886 456817999 601007342 904612679 923527840 998244564 822298781 861275947 301520689 688713415 674968842 874885631 54883755 738345303 891675237 928118442 802322394 870182647 719944301 923383809 897149776 976615591 481598404 585494615 43713053 694267334 421716673 956204016 167901125 262078687 77025081 371059194 188424520 998357900 879279389 883474883 470137412 682566179 305619472 825206521 684262324 693634163 266350278 528502021 788194553 946920672 44352393 864512446 41170654 474482063 925948703 960974886 776082131 864075932 310173610 348086863 180218428 966124221 660384744 892124786 118173459 397806226 257070824 389803924 222497792 305969615 575871823 864797035 548639400 950067159 991511357 998547885 488741582 940643447 614549273 662618364 372096637 591681447 659546998 761648555 445168334 902716531 817222691 968867600 778688843 983290546 434879989 942408124 886783235 962036884 711075072 989362581 803036810 826531322 721477860 930679484 864538957 878539450 798416897 948572434 268144826 661186666 594393805 717079016 829135812 880956819 893391176 896556144 841028072 964172202 340213045 349578932 148486446 248031848 236290358 364119183 273119877 472707725 481917314 899357365 701001233 758030990 749489762 880806230 969806014 986776925 365248933 896638447 100798629 607724121 472261554 784805605 39860849 161475400 657609040 940600465 997980297 998785738 212938240 951807528 88840582 767502216 268385405 932298529 32869831 745172988 276006217 527346807 53460004 827000980 400193265 958267356 470474397 686748151 193920185 456543786 368991419 749022069 89292344 775101337 8974637 67941278 442934116 845521825 578257173 783870489 248898134 959219453 27597640 54294682 387877188 850619976 232879914 944938975 381067107 446106387 13084017 587978647 200052800 237011247 407613325 951657560 289466202 950199836 853596345 960021766 111041012 351482755 917507165 960424368 773269473 958764476 760799639 866849318 179214008 730788005 415367824 549634093 442027633 821424039 195524227 456789914 357938430 969282914 411309541 703697060 605425870 956799404 79483323 183883989 191890387 780368484 726534418 874587951 397426865 655501800 645492445 958165225 740483093 771660868 438051858 698191935 289024557 961806731 439613232 831791914 132737325 861701428 332997580 883936082 553265394 594307467 184092498 627750411 401559764 874362981 709975911 989230808 67492932 487532939 907458355 929694727 266063837 916272701 899671780 985837048 684021179 939577011 198918048 595099372 562170226 742033954 720817522 871213202 256849863 390123072 597713403 889308546 390409417 686395442 439050612 716220141 992815399 999156846 862077502 956129203 820767489 865300659 479861106 493103124 855526816 911058116 727899381 774610177 748455728 888454839 125605621 890854072 969804727 989958270 77356301 491087990 478172059 650127283 738834122 754533212 332198857 526384541 214592703 310489074 928347764 953933085 578814544 958661296 801703133 804129246 237085958 409334592 270236160 601858431 114636553 503687403 412599991 650478559 603860101 717662188 420899956 893523909 97664499 469987782 971033714 975447789 688808579 726672267 592293015 642704957 445874387 742554774 405533651 640156387 631995742 818453957 346842639 663629746 169026879 850740079 690913491 782473416 270054373 427721333 952392850 966290763 362914157 526124047 728644069 960167950 173926206 532950816 400250009 615543383 507237915 598857507 769137071 923375800 313651497 875295274 348863099 896443134 391528325 866050313 40367362 179390472 771982353 935734466 961094159 999552398 182602813 610558833 44101703 834680699 345103796 566128883 126302442 850569989 445599826 551611777 287942532 624106020 434453179 513856136 29758651 663699500 87428200 673725298 831568492 979223062 821895258 975957396 500887250 934382910 822032674 851618805 365249160 418545283 509273340 767485794 45659934 519129596 182167782 358165690 873437242 885379218 586414240 815565298 126969842 416400059 18770113 255035610 760074323 849198667 476078241 813079685 30209802 430566927 619850262 745757261 623285613 946030911 129085769 425929180 653677441 929738174 314182509 528313182 683922561 923613304 37609898 96866166 918647556 937722113 936658023 998027761 954043266 962085413 169145071 170905574 206349877 309396647 465300432 639467362 513486656 983284074 828801527 836479434 835478371 998662071 983581364 988350332 502773336 636297262 243822643 295437864 410562803 860432328 685530379 818578803 889650317 905561658 584535407 922705616 145023143 798099883 218972164 850362117 521438681 540915745 290321723 756519278 361986540 814890808 863928427 964212476 568540635 574375792 60908984 935949811 61254470 222190464 701144619 894877755 906564942 960674211 156871628 937152141 538264763 815271704 426484420 822743104 316816354 613961240 911357438 949137177 929706177 954579454 732639702 922950608 444811233 463245502 592454439 738899661 4726661 12219756 681244432 744431884 924584857 925143540 157725040 550781502 311646572 744716865 39615963 432523209 859567013 860627823 854091879 976204332 909625081 911110799 194144280 821054406 332659391 627769083 836845659 940835853 259825610 806941786 843018434 855476046 218612596 353855224 173718531 695896805 427326690 565556102 5381257 366669671 458864657 866524348 331536264 624058595 6888738 445958356 878496854 887923553 657791620 666507417 371703638 754146134 795109710 924302740 518135352 542048789 453327246 835863656 332118711 365150197 365066130 869988463 678718891 962468804 732822496 930759518 598880030 818370993 255926743 615679281 480660417 589144838 510479606 891087096 737494108 960713846 679591023 870420365 825587247 977216211 561488783 903586187 741807735 940858986 778542889 963244034 832651949 910049443 323477159 436440049 575102200 942912440 185249937 823077402 737827182 866848089 650789389 945197928 652512759 760020252 720156744 902458357 53202631 653447216 578896855 646748321 895696471 935605494 599233006 959909221 478419231 967174759 278865552 298873518 364867837 445457171 303378139 550220131 360888161 555154142 404247029 695791881 73670151 973472484 652701991 899130640 476619989 951355511 350632608 945403571 754867218 808776366 10158357 497126587 635829338 849674495 41073757 145603117 591152291 976681799 284770538 432834736 583267938 608058344 313110532 889218429 371449401 463907990 617165483 833679379 853483246 884588623 892013574 937086970 533183622 730520981 752652794 831299008 254532217 891791070 752038907 913681244 461476315 637931217 177910873 934133932 752507407 768488435 152031971 398531567 930686131 956180441 730753584 952086689 828855246 885222748 875208269 982392749 575855425 740061823 100982396 241738902 674231571 862184172 984659997 990727365 734881591 854193009 385310709 895793825 913769980 930556518 844142295 884429096 840954725 872253064 326071067 842591217 490417226 586757293 970087942 980511709 847524812 869499529 266497334 287967201 682300339 689888974 225532939 976686667 371029640 994621826 76304732 883386705 270051854 288051125 40858098 65024908 276943302 567497453 375758640 778464842 570273361 642146525 740194417 925536599 920373268 973387489 696189754 881672137 326130475 490271943 830515673 915859319 84969127 957791332 697114408 713500773 641136049 726349778 539505427 906222853 524807304 865820009 697664736 859279941 486526182 730976636 193443674 619276908 901422588 960397742 886523060 921254276 507589259 568091776 369138046 859234546 171724707 958127281 701064688 881185651 887166309 974121410 685456840 913732505 36203559 143186090 62671687 986546346 793245615 794014808 509355028 999075363 526443006 939079858 922694096 934671004 131658666 535719341 697648156 981953486 642977469 888394876 628956895 872822723 107717732 196223123 873927932 967424141 612334823 844612761 310156787 652791073 112005147 756596992 1493285 275220033 645177962 687955537 729870649 887808973 654751373 934707244 221455808 514160652 544787415 628767894 128716703 420076405 367770962 529716840 948489897 963848212 770762193 930014681 864226324 960526191 677765033 987787156 91330442 639975446 532089018 836322230 716071796 790900560 734867839 957146734 394822715 772500218 2738721 138835455 787322565 812571822 167864766 703732986 668532600 878593864 479647677 906972543 501662626 867298186 918165008 962366327 153921887 279375180 490044694 835060848 696511580 936438891 663405812 929162325 394908621 555456423 908281960 921459512 416659421 844513113 973347393 998252029 633173148 808277829 78937363 946923661 408462092 861357880 10581268 570208687 159725644 376246839 557875716 727593499 27261655 652247781 339940602 364698533 331537780 596050608 576693974 678461616 353198297 537869773 425880840 858469730 928770597 938854830 233966342 779835927 421510226 902784938 708107378 971455063 463776928 502455474 576110176 705152932 326483834 637444855 263885424 415877627 520854252 553564444 89334888 649237663 988190464 994120790 350170088 968066710 237207554 327188291 602548160 707728287 760687310 785964208 561960074 785800273 45371139 207103662 133524026 382006808 921522817 921938754 165763347 749764450 451692901 684727705 220203543 948600756 455496124 792968242 735298362 836205211 955548102 955610684 847847545 916228153 537876096 673394492 654958657 687605972 185323895 468479487 520610888 768075952 200467908 643777510 114011563 369413755 496741980 753705098 481946077 824682762 858432551 941709924 274825823 726562079 54651929 659123567 389906278 600600893 14376167 103034406 279699973 721468910 594194150 976007671 546772279 729206478 452837747 683222576 595428507 997200484 371307152 934834605 885052744 953952906 38529885 612523720 462428606 724379523 593790305 981173916 452151804 640959736 344057723 372418168 251007778 264906784 843700260 943432994 686286169 822658726 209547067 563104277 217901985 227905737 861626714 881341611 169659682 423916841 884037432 977104170 210752109 872324845 320577934 504807191 330112625 622688419 57641405 174856678 634068132 983769546 891440351 962473717 95802177 130963246 57516294 235048665 287671951 520800644 96574481 616862999 165511656 722498607 682862257 697686251 170848905 541711228 724677433 965183121 543760304 731553954 849934588 895853618 872165675 931028283 8121181 945610407 111404292 518376627 82296661 246211186 511454649 804649601 181130071 435886025 316639792 932307802 305679898 863767941 275116334 891737364 397729692 929877938 429974088 791777442 925512922 955988495 194164312 547437093 23633683 123374353 405086302 979409324 747532965 998771107 905264776 968856411 261111093 663712522 623339959 829493112 687372718 922665888 78646494 559224508 693434367 740369015 262067940 341544672 336003288 565382272 417690893 929720293 693218066 910956466 941730996 993861023 808530755 819863411 468370582 704002498 137196951 928297226 22791926 33330374 736716470 913584536 940438238 978579157 158807268 267156015 106647618 525361997 29808087 436424716 641171625 878082766 975891468 995817556 873397087 997797433 470591589 930144900 989519368 990291487 866595598 980100069 692507096 895736230 508020290 785094773 74882693 869491754 175841626 902775090 725762144 775518371 886937478 921670747 367091904 602804673 718379371 868576936 449577005 918638076 13035998 623664378 773165201 961063768 77104703 868881988 642638954 839837759 558020977 976395148 68393999 917750823 758135929 945016290 868327795 972080929 971210678 987281002 982950082 993841756 245810251 527724809 849140937 891819354 410819347 943470697 895552061 928802348 779217791 906373944 487742029 705244799 216184054 865605139 351516749 387239288 778537174 976633743 973415593 977600712 514165924 755052058 352611895 577124290 348919838 728880069 517059515 658245012 345698405 768141804 684730726 787546438 848092072 902223470 405707148 677495321 757146882 948937170 117914128 960152193 483365297 650558192 440978081 947812954 215884156 529661964 901523539 995619523 804272601 846374612 812691655 857631608 718097462 910509801 705249025 726984961 732362346 745813684 422667432 499589612 693728958 899003928 8532526 881585708 688521973 754563136 314343839 471422480 808483826 922482431 440494887 703186914 109187469 755726852 411623759 605742545 236722724 373799394 917262399 986625018 738049278 806291581 656459008 960244979 254150758 680445955 7999672 59650753 690793185 968945560 662558041 737722750 341350730 458759972 762836256 944801549 107333209 837497412 79977509 86714404 472039532 754158965 629199357 871449647 611751681 933932804 621250965 901638339 46235575 498393021 609588745 675412169 813410368 885275186 699100141 970861765 536715804 759419990 600736360 974035034 784557496 990822621 396578989 731774825 535520634 605278632 721151008 844154505 894380718 899762379 650560095 955248118 202961515 480999198 807835008 935676393 414855800 690449869 105603587 688281915 169848677 248697056 108165394 665747611 159788662 494980432 713610742 951864234 712619277 834465453 563391500 623188623 510673039 574827835 475427709 839514762 977604793 997191129 893821347 914991142 82069541 516733721 173960734 653439728 313419426 487101677 987887203 991768279 317859247 457876084 937746414 974267986 25095545 154816301 38955843 730170403 320675120 946215104 418974369 622001313 101156778 285597259 102459602 775284280 573442369 767237590 604615351 643463129 318961864 520686274 770548384 838882697 23660397 778025984 844643174 894046037 462622223 824216725 907477880 916382638 298956599 737707194 170741770 583114087 745692381 838816108 747483252 988546142 429201334 480073847 834475363 897972388 813596004 854078325 226477418 640735231 396253886 553245707 993511486 998980443 425021324 643345697 769781551 998334031 697539980 965337686 909026132 983778346 439902138 553080658 339750024 674949405 814261537 925883530 76636536 557843412 150497860 343539083 42059151 666217851 850741166 951917015 865041235 933229987 266464953 864270052 805764487 908318437 364403249 484353981 674934271 831974073 100247007 624037169 589657784 739257232 69570783 345263374 629690109 751824394 668182165 707565933 174571324 502129055 33667970 651372247 137953874 359871106 273712205 579544460 223518134 443660050 931277539 958266443 781037410 859715399 549424122 992757894 719604749 860548457 161089579 369014299 897357227 937104394 231175159 524661121 581455062 992156474 630609088 904035435 171195116 296301028 34257857 116432872 896618023 938393892 961367996 967757679 182911335 358744564 530487134 815154561 251095641 581210604 144403373 912532940 63426609 790050701 763341769 770760590 211815087 835679145 754203532 795829195 10198149 15601538 577367210 913461277 269301281 623050567 926762517 987787987 48979656 795640719 63355303 699191336 700542737 842937068 848205071 850037010 445082926 937984440 509099230 831087876 891581728 922710137 774469156 813030936 548780783 915694282 923967292 937239632 28053934 711517789 657807881 677907008 368845906 883012476 762195588 953093492 866624065 880135005 134247656 381069987 449139950 598413400 614529595 952120811 702370344 971544842 175845246 830758377 612456346 688050700 108328379 206066984 344202698 928201293 794870677 857520657 323308955 942008092 580830943 846137192 601520891 854101124 808923507 833730124 857567565 984343259 88426972 625737174 473959023 854276076 539263580 629657720 569199848 781275421 548566152 978540185 78590063 379615683 207065816 601979405 769933694 848846001 458690259 854193733 695200446 845986031 176622852 777544255 254021897 477536921 580751037 834964497 668075637 964526016 537861601 811330163 423492067 790676964 88064862 473164067 559730487 909164670 887629871 945596466 804509001 805885284 215693981 944146459 197454920 417149123 137902446 759050127 123498615 257665015 284324837 412485734 364409692 513094830 794617874 852755533 900888424 959577017 875584299 915818601 205221473 334138796 342764032 438751390 228549070 679060705 537401349 614348015 596730927 607115610 709786101 915418708 744683518 869497238 948485008 950792680 164654811 613109547 20360741 794578865 849991392 946480422 321251590 416302111 622615983 797660261 115709121 457374032 384281805 592518619 778736691 984563289 849461384 958516665 243792931 803425277 305992931 739396966 656368752 758545737 343372020 783925097 984907560 997940549 455687305 871429149 263015626 947294752 20706296 143140467 237825021 959048418 73491852 415848443 198758705 879285991 739624330 802727063 629555536 994491946 821656101 985222401 189208230 717506467 4877324 464325271 995723501 997528496 628187481 782943881 595077931 787197999 394209438 690177053 868868719 949628117 746391344 746546297 418368804 714324897 703401819 712585220 65810478 847142811 268970330 813283951 200110903 643138300 110991370 860703050 302523034 841507084 212250770 704957193 923020582 987328621 542772962 622184979 953550984 986718641 370173416 808465107 281873177 530315467 502847464 793017499 917490697 942850076 344396735 562950788 254769948 593742923 811034659 966586470 644039099 647324309 743234631 802428403 987765755 998950000 676632991 808830481 111356484 115309213 84038436 163636252 468909380 508085516 174045222 954292095 422882988 725950165 101212530 579419944 479392927 890277858 856509410 994659166 787638872 960339538 473066498 867297549 412297677 919750973 596200296 743266156 42083377 349849354 214532256 797118495 915939348 982010867 759211126 785731255 108972218 532699362 508527483 631665414 532806542 599639243 245067837 517352376 77052006 375043698 329338177 603060985 104053482 597139473 228606428 866122882 126092355 364780875 928471096 974210164 924164021 995490404 440529869 935456540 916696782 947558256 8695875 872272098 842093562 843961620 417479294 790058414 898018907 952351889 209330527 595687004 236667412 855342965 98588510 339926477 818776541 901203065 991818222 997444906 473823334 831977027 423836657 581465277 897447255 946237185 983345753 995914463 974556219 980064309 796134368 852626345 485138256 655951289 537439435 681872387 434154850 693092178 109373755 271450418 512348879 766376315 191864400 971816999 716680824 881849876 977624696 985602485 548930414 571210792 944330174 966260741 806578302 836451429 590215466 803630504 787255601 933186052 32421555 923100706 607990423 641498126 166583584 428533285 49127799 609951755 374020861 780755524 690595601 775687490 790286448 815043665 666832400 819331817 299415618 403230099 202537481 379047252 625366418 691584592 336419433 379282759 460304579 835547300 116051963 543456847 507172406 652313031 872668370 938596910 63275540 338554216 666698107 828902588 581853864 851929918 481140434 523185532 810889206 865709630 465741313 888068035 799102881 808328942 892563530 894292661 991874048 992756837 397328405 906397666 221728756 336542768 496226970 872456647 658323062 854917048 941894330 963688060 916817020 991813682 404740571 626601585 246240538 906129305 138653628 846760386 693826578 858460554 374836708 594946001 88323594 902710929 97136357 116902507 125969180 480097296 742747578 826376875 575655729 881570770 513415291 573571059 166924121 613234882 323920621 577138741 386106906 456624661 915591847 928864958 947484590 999869368 341237107 578312586 662931022 956288938 302580114 421459566 9964889 472749760 556583528 860355578 703201711 930996145 534915087 901085325 212327291 365234610 88227134 594614938 704876065 856059335 693963720 796944830 531212885 586227249 549272309 754387816 557256665 798655352 112442786 248657097 416971179 867746308 782457805 790474669 175011115 819722344 657570235 932170085 43605066 731370508 390986985 811865112 32334606 736213965 954590478 967309006 599564388 653989052 814121471 913776832 580060704 609990241 753948271 991622058 585991709 913158275 806932201 895548868 445806783 856564884 867911374 970445463 302011015 942156198 461766146 658802145 390505384 915041946 511601951 723902787 664345923 765833871 477981754 711356227 413352204 589845083 294561566 912920946 656723756 980595923 723491063 850386668 156022990 571969473 306080347 663082140 516988035 860101334 567937409 899466904 624457657 938125074 304244544 399402629 725837807 946943971 610083545 748097427 258290760 265440441 371402430 404851294 409117675 461031056 199176107 896526133 839549701 871459973 971054686 989123363 91468714 983744424 471001093 910411672 598147830 710164850 112372476 722168652 265385008 421562011 416049747 964326469 310151284 930017628 207448149 457736899 584022904 897129650 242705638 345512584 769951315 780170115 761098490 870014753 967805070 971493300 911355900 952973631 730842910 903793975 749437930 870513750 658258777 741811792 655399405 780292124 34060563 772491151 712494412 785878646 673385102 727386024 914998758 987754823 348298795 417725988 335349519 505247101 777015072 785629948 476586650 959854827 656947226 939350691 142449170 380667912 803027469 859003606 415084763 426440206 316142713 820297904 270915727 544785765 484201354 911283402 283974034 516454183 571241678 623128418 308130546 889595277 682665124 722191127 258397 157721591 904646682 993653376 121149080 640293924 702806685 901693969 787129556 795407687 488198707 558853936 521598839 951425906 986026397 993941825 872825977 937322418 29325566 696633094 462962547 955354226 942942193 950307316 323967717 433677954 939556044 956969930 441963197 896873274 457937455 872052197 959762844 982629502 518890507 568107475 642126292 858491616 254389810 988655263 84797377 789672554 469556342 738681763 403112967 864655347 238242908 722779980 324619657 485681902 309757963 771525440 404072560 410952614 20819237 426063299 778436103 959429411 227254296 331635974 425952258 950630679 184895624 897091309 761717929 829283428 722427705 751966280 722105624 987262895 103396412 930777758 543689626 953405515 674222841 805403182 896124587 977685433 354412771 653475449 874361360 971099511 183971203 399787222 774373492 970977720 71938732 87273876 61613680 848999800 339587240 904167984 733554341 807767928 381246346 870822881 274259386 570719567 542633615 678868005 392117091 577823981 410326079 787144918 321034366 514347096 940039812 970149830 145860767 943116577 401429359 979772076 958777252 974163736 844659143 904390134 686756067 819445157 680672237 735426469 672340642 712836174 939241867 986452076 620434074 691109344 467021645 634918742 353491199 653917498 465137358 754598779 18430685 872848499 628796082 879213445 827184784 908555453 962565442 985566185 357386076 814366174 551825503 781285257 9779215 961496540 364189717 854432082 667875672 729149760 442768618 605847706 74811778 667320213 147435464 405225301 686468241 873929564 75846804 740605064 380941169 591341629 192483108 913927796 172304804 510131740 532594542 804553127 535205786 696076846 675123089 719617788 913121623 979913053 690310976 753347086 209928594 329644983 688782841 756926300 524672403 670492200 121277537 604530942 72968973 620811727 110288398 188504478 251061067 998460661 295933824 904192036 697774330 959882156 178212472 636751665 524446689 601844016 388002350 849397240 491060887 914843030 537772087 796390088 225442874 427939954 475602436 927700082 652269930 836349266 445378187 951748744 353192170 605418121 945351764 983430442 204791469 402652131 406024677 882398448 863371515 883340366 970567372 991979006 342039401 435195034 772388951 889572339 990998476 995000242 989664171 989762167 596233681 873359322 494836758 989253248 647284679 987567071 687638022 929748621 946159501 980896559 704463847 720308622 405984636 562144250 57641282 216578383 847658406 946932929 473163669 878779768 668425533 686279511 715261242 822391717 777097473 997441669 637866840 665205856 557900757 963337504 317701043 595521842 592349076 734633718 24454540 859604218 876954112 924423873 318523089 748376593 724248877 844357208 336058765 849249645 604742310 761910246 632534646 855227393 992276035 999468284 997892081 999776318 994177388 998937427 368805305 843089659 164231333 610661966 521406251 925449935 743921404 796990560 343791768 729184857 389996320 477413451 269631670 899846267 465119069 960227072 270446371 743373262 605889713 802693258 326627472 672388278 633269894 826706547 331816086 472387059 448766576 955087192 496854936 979885377 135373437 988020196 411964730 420441867 604735033 658510258 377601991 509726789 321174618 903378477 783492685 857824762 362886398 634509494 7110709 321180455 899548487 996430872 733303216 986882920 204689632 663689087 219099874 673317317 899738608 912290144 170237628 354880529 265786267 510091533 269052680 940804512 704025416 953334847 656329337 920771228 648497759 974049612 137127097 646713560 839668965 954946001 588227537 759179133 171355542 494808356 475792340 782289347 167979392 776591237 286276399 946814860 123917509 253861983 65842830 442527233 908857557 969701883 561410954 942615452 52907228 594763667 127172900 966156440 355277720 589296305 379874517 984940528 88475853 511928176 16919815 943326856 531095486 700424322 288598061 668967059 95296329 722598221 802997683 929474840 156794451 440988037 128747666 621998675 929218671 984305297 391860745 457720887 931148210 959773716 111997679 893630021 768059332 878126159 247047359 975196230 328989738 988946428 154843191 990720859 178835936 353585246 785978266 983780637 559397475 655510416 835935846 885984828 669739319 826829871 33179020 598523718 907594553 981077345 171345284 951040147 763439454 829857942 443040049 528644305 192385432 400269112 381372394 462419177 588845681 970401725 604487965 762774930 672290765 946877479 183860920 867825326 597645493 724476453 466467559 852956827 326357715 789467291 790041052 982499238 58840962 956877543 356977764 780250575 397321307 819372606 642342944 799087366 431686275 955610558 508378648 857167632 691803713 948042748 743429508 993687797 910269977 998724120 451338933 601504039 657543541 857502559 300618650 628686821 90083854 535868266 965494686 972465946 987916961 990886812 996825365 999813057 662672641 900858947 963186849 966444269 922342916 977099240 445225933 810705352 632684151 676865434 835019863 983074223 536216738 654252453 877649729 914822915 586858384 856807956 375291874 728606552 997806012 998597291 159368010 434353032 398444306 454710976 61377085 599695187 929029416 992109301 653966914 717870254 374218427 559550785 839685561 919156432 175552969 310295766 383554365 629663475 521032327 899766188 906782354 985688823 808951615 885389582 667882723 725449993 881527295 892617073 808775447 958432889 131384404 225729672 708884235 949207022 133168470 825647941 188855209 584486429 393894972 413199502 88701966 174396475 392721367 819415882 134583776 190093036 10278511 909085823 797128481 891947776 281850668 904897932 461226270 482274608 970387787 986772836 936982725 945632585 546277240 821407168 864487329 963888566 687461549 892052460 697193720 699166111 309918932 776628371 274339502 658220218 254963615 865290092 690908419 822951846 882002542 927949885 987513033 990653210 464428610 766986950 54399054 223198770 179920501 877764533 934074528 995946955 822135622 942817368 291203528 768126599 846992744 926505092 732675364 755395773 815033581 887877408 683029369 997172187 550853240 628747837 186940023 308567550 545255520 668069186 19961729 506909459 813496651 853444763 441042951 659011702 857159383 858141021 580493596 614935923 188902642 903192229 198716231 884377047 21089127 530571185 704005674 724197976 722372072 859563975 212529227 553889015 614407698 827323093 57652500 649930156 322889407 525402117 840403239 971125348 991319235 992294284 70718910 211770667 137014617 898055114 720035824 784084712 381477170 941638727 880794787 882252789 594913576 829846983 867043405 878549165 190271508 470782568 883199035 955601740 795706889 943248779 832934122 996559654 111208904 535837970 833158268 949228693 886475811 920014781 359097407 876642682 532312479 630239169 367499619 455218574 634216118 928067270 261857195 338923804 519572562 543641923 358661073 483274481 314761611 916295834 777375483 942691653 415271777 919803657 945866799 953919914 353626549 584865901 890189686 912449919 873403353 958206572 285195506 841125930 774124621 938555102 851362104 900234121 408442865 588755810 748062705 773837283 268759589 677660584 256692544 341541890 869959392 998465601 763156672 972305912 627570588 706873567 756545051 873790562 307389742 558930095 885683846 947435816 684759915 762352247 438932095 785977252 762477645 999016974 117217157 188809275 578879010 640594561 399689499 592531452 768370878 899109796 884983947 952292012 624367239 628152045 203867732 684607047 126066381 297535070 489304863 961526462 661512270 780646608 692773317 833468739 3269368 927417435 770135009 964128711 498004675 940321114 802924689 878458950 142477710 702794002 865318038 990396271 393283787 537226650 356065898 449523535 389195058 541524405 878154580 950999627 418691766 599024743 572629767 849801081 290949398 969185983 770188071 870986643 332905484 547782672 419060295 894618782 426913527 780647634 302835679 511163924 4598710 434837566 691144957 821600420 380379528 783553376 70796689 275555206 899745241 927751622 604675321 808424355 258448155 882475035 625161870 636027800 462033935 742700242 570061901 576609506 911979382 920588700 333111786 971143395 149731957 987223847 800548713 973752001 716284388 884169338 578146591 870977140 647474545 827420762 828237281 905055710 316467089 414411596 185389216 794181872 492950933 768678016 279510662 382142583 149369359 593757879 962208389 973715552 173370246 185779541 80518696 961346555 998178327 999221840 684860608 826126771 780665070 803223099 168841956 837365557 329303419 604139011 943323817 975606262 696658655 903206256 768947873 908331113 837989601 846997206 265173732 899023015 114228470 140396695 248307799 503649360 477013056 907549376 7130976 151487108 732612446 997670038 988883204 990451328 830033067 933822981 799631827 817714174 430405894 431240959 489791672 841166640 916809676 929904357 847231716 865433158 489257253 935001529 695415409 814199706 110551261 284277795 54272316 487534576 881537283 895230574 647567470 849502015 197032050 409628205 324966805 959683882 401778336 745150390 52341244 771322426 649028986 908275187 489880033 900250673 323224670 557275457 182842390 383497103 571521348 750365465 622853275 670875748 477222034 743484778 338572543 399907212 761427241 879421688 203995788 432330680 218048582 628951412 337712401 453092916 242243064 524446009 16966283 816171832 575619802 971880940 591496275 917773465 821207165 877681880 282040666 901378599 318640717 327642828 783260174 801117812 958964851 966819909 671612666 701079978 163277304 188370677 899540099 981575936 673367054 743488077 102758960 984555197 897547498 966856654 588052839 668906140 726216778 803766031 710608227 757773902 177998461 400515389 436027849 587869032 152683585 742906283 459394584 796393886 934589685 939907161 529637665 908501804 399877369 773629192 843193784 865723743 839631263 972092395 61624708 117264144 911731052 945594078 184983925 945957481 521005110 534542051 815508407 958134810 652158920 722078947 239933830 971288258 990933411 997678736 977935888 989259601 434290997 910650154 589828500 657806082 946649539 996376399 49987228 357643846 580789604 793726568 271587064 739411791 314514819 477629166 968393694 995654431 493706997 954025470 578550940 655787746 189144716 545818140 760658504 886805089 729442035 928172602 915114374 918600057 861258389 904422466 44642235 499220920 505096565 632041401 264747603 580279770 774886477 904335244 427634654 599650248 193381692 766297168 990601299 993067342 26523379 141713538 136695590 542989925 696331768 920681489 769535718 932600069 669029761 677925913 469911968 709186848 184108570 684946659 850264253 901348622 443660325 616144785 484678868 543364951 34743575 327146188 982898517 988171791 221369872 478600576 899368146 904126391 145696926 587747863 575047842 945471243 580224168 817356330 264915169 454677026 321157738 581559189 973382311 988179483 620559200 970877455 468108548 725506548 999865918 999923614 128648727 678426607 704422821 994765529 530374088 610032241 662265059 860196488 117565949 323135916 509389435 852094443 13618741 193279995 577602657 758315504 171092181 737410164 782507942 810265649 570676878 872412840 558660669 601914283 850016311 908701182 777571723 901497527 372973409 650844367 430517172 545416021 736777801 987359843 534101614 745979330 618402379 948685968 115730913 748725172 34168182 638351279 647267980 660848671 49264042 488778462 454542370 835252340 949376450 964417880 10092875 874833154 697707594 880753904 932502699 959803540 848643299 873590910 275430826 578192092 448314028 533305843 834153210 982157751 667954062 795420005 692121192 769884507 944741066 948487134 153343969 462084517 578003568 666962380 244357065 651806436 738001168 789197710 987839615 992405743 843861721 851229274 399513770 894630757 50087755 381730679 450680631 808522026 26483404 695857964 254350382 294450787 306612142 627635768 607652336 908827226 314588904 314834187 960899043 991058624 135643913 584728419 884674596 930609359 422882623 678492690 276040289 768481959 520382249 841381432 988197375 998939463 324631734 331389188 398924601 558467375 564119642 750307349 158360907 258456156 667716057 916338559 372588139 971093853 815362203 968483390 146456840 196045495 55212097 365453464 57061733 156331092 503319335 684855057 564088158 944295108 976924850 977091242 935600468 941377121 530821920 655283708 760576956 852496523 49831165 774808121 576081197 936387400 806878895 823920179 258918394 345749694 508803537 513132920 845253263 976627323 786122553 801856429 922741682 967573946 9163878 465484137 212422609 311830033 657625607 913123301 950471749 995243798 391164376 703415362 430931772 943474397 168148628 202103125 211860124 327304343 211245579 559854885 246257909 598368801 939091276 994976782 913802383 923876796 362404405 824333240 604781678 926024291 468159810 849133178 459129716 664570819 710012754 828237637 702995307 784487100 486241675 821323104 112174731 114711271 310688616 836160872 79347617 618983068 855769318 948914389 228956306 774781777 420637851 872165352 845920526 979513558 523789616 689251245 690569428 807964933 325122906 890422986 698292593 857826340 824564574 972619819 179621269 750654903 746469291 882957665 977222161 989477489 745817474 774166307 983608271 989021266 105959435 400492296 545308268 906127044 377784157 466847190 261817596 572679792 583287564 778727906 217625888 904885247 331004433 482280057 394726062 407402560 515174381 760052776 975429116 997929426 706055301 822314583 453648129 763258917 45723940 192105510 914173831 940068127 791336501 935906875 339505036 419414437 880902639 910003486 378697582 947450485 499117722 577669528 142306746 933077948 488558592 502537467 725949747 980137043 123869324 921329357 751441154 918005284 188907471 221414732 983460539 986042999 173339438 708663636 520558009 733825640 138978470 232737707 977920208 986896632 953413223 980018202 134706453 834698337 127896931 268361225 246010112 832642061 145068128 594752154 781014923 912742387 163620102 848736196 989235211 995551342 70320049 117307000 81903091 551016136 53144142 73621456 507097163 886040035 899963057 957660571 209861058 342886789 447292533 719707341 746731300 881382715 684934846 875434202 668654435 687920558 440851394 776483249 426507641 866289581 897717409 913773638 735566261 985987501 890552998 911192947 396905285 971260045 513492105 618270761 519500978 920054131 64131083 379279180 676743210 874383761 823714546 907180599 450439634 891125248 401731377 741413190 420307545 738344322 55556460 422008706 767785604 782491353 141769273 227242154 372240571 619471280 902158770 978329203 85491177 879769336 327877704 562905469 966344159 984250839 862777723 994155385 536762872 888019484 334223058 402485836 42463012 544898689 710001266 856479870 73793520 471357939 676036393 679522163 800222022 969200847 671618613 969090671 966921293 970061757 315252860 968029240 532648630 899219312 501428794 839765479 24509166 145145173 76013233 275536242 534377915 777369915 695105498 805013588 361514334 412274071 587023322 945941550 630573854 688655546 496338622 607989643 594209285 629836492 700519570 779108647 343574537 896879882 915359144 959791919 461408466 884762947 92459606 192251369 267648241 990709090 93661673 267336752 134251806 502661945 138882748 256703478 353307344 357646602 787612389 993509385 193155716 382811582 804253982 833647589 14942748 498925217 199738384 955116998 535787077 743901200 426973765 490576991 257091457 623223605 236529389 838599574 326782437 356465688 442307204 654151522 201832872 803003109 754619056 800777152 47636890 201060322 613484046 965269586 836601473 942810747 750178670 777238153 701746850 725756204 606815062 862469484 292395252 302937279 889988912 922644226 555934189 892686191 854842526 861761416 28891639 659053888 66289221 937241273 684709740 944929605 619374561 694845828 976471088 984749131 475991416 711528818 8713229 43804975 762551054 853717337 106437044 327505173 9413187 603332948 335705298 651914290 777483874 955833238 892177073 960118950 762751941 766662100 264904521 538569343 759622198 776513230 268368217 627791907 31114193 333848705 183959388 265413021 860158632 868577743 203425604 324833367 146390946 187016368 506739883 924006885 794186419 864823391 423213692 720821211 663624083 870331457 337072608 611277582 673326437 762190292 980385911 994679618 472772502 874752585 804188623 922319847 311035603 968446547 547786626 982309485 232260705 393834365 132255863 562864412 812732336 943934680 961172237 975458588 690592271 996495673 53241308 291145984 875134162 912622120 109715769 774597442 925252833 995924384 928090185 931430816 664899108 922023633 790988753 796042174 827092034 919625153 738773490 966127212 623379551 899210011 521244226 972958285 431902316 660768824 869500293 983961679 886913770 902767637 947789334 948728896 43558297 105552445 823015587 831308239 950616866 967215997 433992232 797644698 294915298 717905393 951677417 970807566 167030031 951666106 111717622 915938793 663350203 762826776 936846309 981493337 249705593 869488652 21085521 152198983 766989797 795817843 116972037 266223162 798929425 863813809 893693586 965207936 473405386 858508546 731665090 845944980 955382598 961098757 278834331 540769951 127480043 442513784 623249245 882745271 346809071 808070206 365804136 970423592 612222947 940343711 467840807 548297497 463748597 969189067 675096760 847259788 727207579 965204037 627745158 935048566 963876204 971741400 165346755 436073057 778550584 825756362 111208618 293962292 238471262 412864856 681378960 888582400 412271397 563124082 77753864 149566890 545788600 717743342 357569305 887184166 698006282 997029730 967478825 989161723 342896674 473334254 961716065 987173822 907357276 995160063 292234257 461336738 745305309 942091187 570323958 587563233 383238032 550663433 884499812 970214152 457977934 653665426 137458889 161602656 256827187 274891121 360301174 457276451 798655717 831559841 443924613 920364285 567358681 660888651 95158080 483309462 225264022 972571309 212771063 490883764 66504040 584544174 649585690 980931867 310572247 997542362 387677268 913102350 453063685 852834997 388125087 994777151 430327972 823115566 861831696 946755921 953511898 989515063 539615913 896129709 199907598 539963538 670685420 796721919 194820871 491039548 878563057 942432794 626620228 896049106 134728934 193589469 172467222 691445452 94895303 788495969 239748216 397164994 841821042 898552900 256615453 706080885 575178073 762235749 601826775 810672574 57164071 950839357 391937898 655352729 459053105 966118297 756006623 898648878 705387690 806038616 521847242 703282900 522119335 576955803 468865749 833746148 379809667 404060277 929789548 936318372 145211876 987936330 477524831 564384527 770918210 834399994 780668706 865447580 67935996 68619067 711619540 954240499 535542576 613449425 42031410 296031554 921428653 990780056 950493615 989987441 145274691 744655774 407521968 506132694 767233654 844338880 268992977 501118667 871343407 913856150 728416413 983170750 1591184 814082125 630048527 634109720 360303294 402727737 191743818 329580744 780560704 959735477 650233992 842706711 195301326 245344539 345514011 997854491 35621321 801090849 139441320 668294671 388783661 598493064 458412047 750014347 832699299 995697667 266484728 836214379 914339179 940004660 528974202 995898981 87042916 553749446 229844219 493092411 783839437 979742100 133247678 890407179 748511829 807095369 452233840 732451129 916351207 962554171 464971886 679042890 658242221 816636862 593715309 598525964 564327336 825783458 44353864 915289808 944281487 954893452 190028311 897104800 508920061 809031566 903534408 928702737 42544184 630845890 57037666 580304621 516265129 564736136 463250963 517634380 868881117 935817682 573724593 650064904 672159924 981611395 647308617 765936555 521043204 540435651 877561288 931371188 856265708 875122740 132175918 439881047 751079436 871174509 846867565 944951990 463771322 464622238 525949825 781532443 635891987 948924145 47800173 822764366 76230379 438201652 267128330 425667552 132788403 152170387 512633241 697361904 764255985 895041231 218512891 889462479 610452825 913966429 573162665 640514207 537550550 829024919 92106463 887137631 992873410 999509668 545433961 556957794 669062401 970602055 433455050 531411654 498517613 611421687 330161037 975662732 242067931 968845279 528982170 942989300 321152623 579139139 119086868 770865665 985881817 995707169 734150454 948675635 863008291 955739905 695585827 724980529 732270117 874110350 162328908 378447802 797432846 879795182 651274716 732667488 441977217 909763470 852862839 869983684 371123375 801182243 867549331 927129123 659192140 758503715 42620772 185908574 895654437 987637534 507928925 756869898 438422541 638259923 565253409 675892829 177731474 410170331 558340878 739296207 822209409 889292674 849743939 894718779 43057667 700402144 535676327 994279656 80857071 242121369 240913236 814356770 550075051 586960798 998433466 998873518 776757324 821891320 839284677 945975436 86785267 389892028 796542028 905354293 558586024 594666867 121715920 331596451 234167674 696327600 99049718 867766992 950038160 998477144 619261012 788539166 680003815 918946597 670966355 712057155 388719585 561800765 709332437 955758322 205631804 933624357 730724130 983314361 303325277 394099495 396483101 781858520 600533317 790664529 83382584 99450457 124450908 172659099 170422932 797725601 901653669 929457461 783283603 861936083 651765721 975505951 179849655 395639406 456919234 878235128 369196625 623105694 1684774 345558041 8711822 299585388 880453349 919152130 400004421 585099047 897576060 978586563 246366422 574233076 841097968 943838270 246610022 760133781 848618799 872780547 962784187 997734308 678136558 698487582 102766491 774664647 355771697 378280931 209186987 248278326 473328876 670923544 706009441 711978832 708062975 761503228 91062363 689099635 216640593 573167621 174312857 377013762 945692161 979278436 595520194 833732956 763997425 849417059 952547695 969344040 99720258 825661810 268867914 852268231 623229862 808968320 490031583 822064006 294156745 629126853 3669444 454853588 577046550 725379685 879990649 986652847 412575792 619590160 188824036 222706804 422548372 913497926 642211613 709487745 994788587 998686085 98932824 800110804 767038310 981389890 570317583 622231924 549536696 857033742 980667768 983356991 25911027 321074547 629298918 953097821 786220698 923578553 81523966 259874014 144897675 468778362 313810959 581072168 772069894 917290469 348231999 521193688 218175849 279913497 669782236 715573697 756376639 795461820 15187144 833958332 201951549 596462631 706876775 797584262 206702939 997954563 437649095 924247094 355549320 625259101 188672436 718203978 764495639 812713430 969156037 989500816 727172060 754369717 604748179 710419734 420577121 518685751 311281084 693192402 276025973 434254605 860390478 874605743 956601744 975291171 414043840 762291423 707630966 866187256 230277132 925737622 710046473 822668179 796863814 875338901 136870199 687193947 335588956 497987386 709174194 942339044 263563267 345532653 647209845 993424090 562292444 793511889 609159057 713033384 349573186 491998270 745379479 959015621 975005270 984780257 308479784 504241315 317355991 533263627 690058848 725486594 221693304 477369408 733973506 872023231 414975510 458125404 513585675 655570055 914438358 985030300 30315212 683365056 418925454 996843743 789901672 829673675 78833846 739424365 932523172 996472525 655710963 922515720 103589415 772532971 374275006 677353030 498353147 950671536 341803050 802674640 582844618 658846650 225349942 423280414 577632139 946485217 427820351 605957235 732496204 797832360 819710542 999671663 752653317 813634831 355498960 591850100 216056879 930107465 652943491 970814866 847275915 929427996 996554300 997396909 477246410 562402588 981566207 993850497 679019470 720615483 907243819 924309503 400188971 445994713 33342134 466427341 176741644 202356086 490799236 515095783 878540925 905876374 481854595 588384672 565336619 970124956 240468818 972004957 379083848 469903141 1573541 670089447 622311958 915511131 432085934 500010927 447912438 623057743 977103782 988416896 878176215 901252783 16168848 901067708 780366519 863117803 549477941 721867598 196251939 592983759 603339714 770981569 30122762 567356034 125074232 491564455 635109173 727260009 834575333 974283596 326783951 616571989 395336301 937373781 318391944 951777228 298345577 484737406 884445089 927663676 967145602 997643426 207601723 570319540 971429967 990643134 284042091 714445792 715717467 980405818 441114058 841405683 949886965 965567659 719568544 761436767 552526164 769639184 539190529 747764796 714465076 892680235 568298433 788901306 909550056 946301480 79970944 84971452 351086835 449523941 453614457 641051077 954624870 983287408 769548195 913788390 655927508 934139622 134330879 711764993 807916035 973855492 254904685 698988488 917186020 925350843 888220253 950456989 77465263 245268131 387304308 939384344 585103041 599123347 397365043 416579177 346888661 773827306 424136319 739181542 356744648 972559622 702811095 703680415 663131226 700918389 568190760 650163583 345572311 856068816 388011057 389179898 971498412 996547265 280494078 690637821 175536167 785254808 220694212 798864380 72686732 576063044 827765515 917329178 722801317 880318510 249871054 523673037 652903673 716533449 699237798 875964974 844755782 949054425 54820329 625145362 372109064 532360284 789180763 869336241 173369094 255551975 369174538 594107218 944168624 952623352 39078891 579431844 100057196 408599406 765432566 795305581 666580420 845923718 495779749 736332816 762076397 931301050 163131556 673645253 626181631 642973337 443061071 770153176 587375077 631347160 486425053 883691302 836945276 860839736 715855553 957673827 260486538 789328569 852440655 997773193 648118475 973165502 958456328 994196694 287796748 442274347 968978195 996067917 650727297 700819339 567114351 981232345 909489098 979914608 162747325 715035784 329620264 826725674 861954765 886263380 371654403 461453448 895125142 951302458 175830650 800079254 978828912 979998473 134652951 725220133 137114371 983414041 628222360 715376693 506082213 861897136 12948125 597516859 980749525 997281204 611015883 636029031 509978145 661989844 791357618 826006901 845154964 923806632 246303890 279109454 917202526 969504415 369388450 624085562 140298403 452082000 420024564 755697307 224777988 787357134 471251350 656868911 156078528 251908358 690181286 964184206 995906355 997907990 204537996 845070365 172042253 227057877 738345134 870951232 607726526 858761920 632908880 920102090 618216576 726593608 870887735 955838582 435798688 745956577 901931006 950843421 71099318 667137838 292112504 672940754 774901843 851930527 271494948 822303888 420988805 732917851 791396194 928643125 366201646 666028316 61669367 146734399 86953785 105604967 640329392 939163678 409786081 740518377 651139964 655946120 844118444 886210633 280786851 371589646 339221365 890956181 611939486 906330709 143102048 638737354 182386104 357831545 356423242 928992280 97897242 783556107 663978275 970191483 828966722 852969107 744531972 866494563 311055284 353484578 57302800 136230225 533964174 836627513 74100215 954738274 740458357 766774327 225650164 496166031 924835460 956175773 476303550 630567353 433915164 669528900 207113288 733969286 406052691 476178040 359729789 755974854 46790702 61134946 228226517 568045736 303509305 574906102 170098436 279425225 867127021 983460340 297351319 532049092 469914385 943782816 89258211 200525235 529962062 835847907 492316743 555758478 577153179 797966616 586137206 674478142 731951289 981799975 772982270 941051493 546689464 801064641 180064358 895886252 478081089 895269358 714783143 870618151 736101162 888190597 464219613 724696638 841167454 927091579 580892728 743641371 85893182 126362752 58702319 627726317 238852323 601720645 289787565 303876733 519647773 560241344 195299801 696173897 586617714 710378351 883140670 926979766 729112330 813688303 522404126 647374313 92711793 316413547 239564673 556087089 461657470 481326661 782537007 984678839 648623039 826845932 389305911 908187510 943300745 973504559 155425302 170353524 124636737 666236260 313329475 626092774 36598518 123142788 190256628 210595626 221761162 996210069 431524778 991503786 976845341 978268169 415197388 851287838 302388497 873011556 39206800 928915540 573365614 832948931 912166554 913257728 717197154 956380043 399894987 612372715 519519361 778723948 414069508 671982902 387348677 735684961 526474934 909557303 871792245 991288917 594344862 733296474 534253788 878808080 825407551 916787444 948870804 983868003 952620467 988944474 308899643 704687166 723841085 956969731 832267712 911487062 47022921 482712467 270733220 869081864 190955159 700864535 482244807 967884226 93066933 684733856 542496913 988656628 690996330 791298511 812139926 922540104 418593664 549806167 484387191 849645114 502816850 611443690 622757959 802233046 959166338 992739955 364046386 847031086 837067390 979997438 624836806 959494943 510786198 548096960 695216691 751494121 492569093 774410098 608737026 680262612 48338405 829234754 289295645 621388804 239016082 529075947 386028314 610467116 575949418 955498838 468896170 576267328 673079729 915197339 6567327 600602928 216785134 390198434 884936422 936277528 82390111 876484062 118736715 802929471 798728973 908304733 991727516 997116135 365420851 861463850 549662829 952262403 316048899 857299360 388950608 669497461 957592428 991298862 597966868 838054255 380121834 715333585 489846739 695629791 74680389 318114166 668041569 902006794 122728864 811749532 892557238 904492522 656579217 681314501 534699497 651868407 714303849 773109161 701137895 918714561 516183524 522097157 3458246 445156625 517951197 771269388 986419157 996575772 972021454 977827254 567222061 779424230 195357415 465597812 391577599 895528847 459796374 998315371 146896254 603423290 346199539 843162614 534710103 751340583 948332616 992898276 844222221 857717935 472556905 732916088 518358696 877113738 547545216 592050116 172545614 909560905 107958987 385550771 362147952 584423225 170084523 230263972 912560701 916656044 68515557 391745260 675478257 994259225 640570347 805224486 257446884 534206312 551618123 851369814 601051647 820687094 20286346 713558741 556757809 928430870 767172843 942246462 405899323 914375470 564692207 802005977 780859227 839508306 906848063 922879041 30601757 250149730 919340115 980948199 277821388 305282575 386957285 622834307 148992234 410151984 436976775 799544576 846467743 958741234 585036344 730461933 796981238 943773085 895216989 935162777 659626712 785664524 562262085 635528863 767338596 860514112 921236967 993675317 786863115 923228397 879116921 884017093 183253360 634996630 650089609 716291733 354701066 936246840 653317241 968665077 300592741 382109705 162587845 363751950 425045623 806605910 833713208 859821168 804508211 840705832 165610346 343016393 996767699 997460676 169211904 389011568 938717886 950917014 937639952 970712752 424926156 501102240 245199450 290097625 817790330 988615525 779973394 974228029 541743728 964938462 973643020 979160421 232249343 521321585 473669926 523314185 937713776 954330096 267664153 330980075 345369049 623028331 383365848 744728465 993602726 997546896 439037702 968822260 931886221 962197185 636987196 730166089 382774331 503842871 178692896 451802836 360180526 699721547 74431262 485622142 593245854 771233379 110118075 678809635 961947316 986256832 898798415 937721365 473732499 651600774 60503122 660540039 985710749 995546760 741286873 897797177 377823490 999633756 640971895 804790075 349958234 729470904 545379223 747048672 904699744 958417154 284456698 715706284 859986979 877556262 99888055 695731050 346029502 372295934 345382415 360293274 256709448 943550024 508030046 808487542 593922784 745347006 938850840 975549518 62970627 459798575 524048778 762832457 705537975 884591290 144002850 758178678 124872207 135657743 302114502 541051889 55769454 533353086 757379260 902754664 448534022 924934162 328836723 483340364 250775070 672544128 667675002 901454467 219816458 343587055 115527711 961609472 634408763 840650193 458651706 970226531 509375075 614248705 68563120 610796973 499145643 835692142 554130133 591698022 569241942 759042934 569130409 596172384 775778214 890912801 442618085 514001346 792114603 810745354 778300173 934274985 771217290 979381333 149238914 922815714 13758797 860546269 619026846 936202983 609544880 926692979 116093731 588918134 506954412 676617142 352163299 937368898 406309669 551961446 776104082 883214530 308585475 894751451 637312604 831831515 441444002 816207680 488041977 995179791 127924837 690562848 12595804 953466784 970778706 978739365 937638651 977345186 772476303 784875650 312444150 373241243 734639362 887117986 288704438 842461750 153334146 299257977 374273171 375069796 590895441 846352024 141687180 699112431 795463852 798569787 400668972 555183546 731320753 980711642 225989883 413507029 933647242 940091580 839867901 965003395 175718521 203870383 312295349 441183841 577701008 951913160 259049388 575794703 858370463 975299366 769784900 972927341 345720194 743026314 998833741 999795283 747320016 953133942 575228993 736702753 673722600 760591915 43421238 420917208 354242425 840312015 149553756 534538479 187737565 524055136 373788639 686930468 897765601 967124277 443897375 777459938 86474056 252177887 171823260 916247122 51971957 271641433 783328314 901986288 559165933 802747178 960720697 997772535 87908355 185594506 63005348 882480879 82003162 137712719 539859774 882289174 117755557 824367930 28714897 988492196 281352736 857945573 57679253 685740680 395380217 632943173 799630024 966341195 700070301 850663729 132520599 690221101 621670614 783370526 123342739 373328879 412276739 471133283 235620028 316580309 278125328 868022497 751819550 780114878 554058628 582309475 51472186 145762287 121326332 598863722 323852287 483643637 273518295 387961350 750568893 787749654 147037674 581074545 135161536 948588656 495702895 767937748 816666533 926983440 12620110 38554970 270094762 665451481 214718111 414511469 33939919 135011072 611523662 774296182 227948292 919289415 165167214 337887516 586313979 785224006 949191643 967085337 885307277 917511444 628206111 823347267 385134800 404313433 528049985 696309747 506681740 967831612 516876479 765585394 658967065 999653523 811659196 915419146 62868354 365930242 176784176 205933207 631900940 965654574 874083846 883233260 11574693 61342138 659441687 806805531 741386705 932721001 963959227 985833700 944611957 950263158 975682956 983968835 676518910 708131287 393577772 490531871 200474885 411015245 871071029 927118169 510013469 769837887 162762702 928070784 559180900 892037238 14994276 737473705 58514455 922532237 689110341 761149620 208877028 230629194 140051149 321461890 354476095 914183274 228301401 433302458 976441501 985672786 628664610 657019557 791325885 894560969 972326417 989605989 829468707 942515913 154724822 487995977 657539786 894606041 978376458 999529494 452744680 748920009 446245742 497984326 62907280 346129580 421513935 974282788 518216364 700621519 866160163 973642522 616399887 771955609 566642244 733135054 402451173 904780747 962730212 972511137 562138791 911212364 713228548 925208933 563436119 832236929 361141971 389683391 467677932 677325444 842497893 860357513 359967 870916110 199120499 721755912 51030362 624161566 209737440 702613689 220682968 645623880 742922645 912046980 99148574 280726916 314722109 673998564 500525539 651019911 372705667 866571566 409750829 844627394 494722004 727148926 179735218 750458454 254648826 377879002 221186824 422901260 50318510 398795527 434903806 819216506 293934652 310080409 855672632 905830067 309144461 752827860 187590713 240933393 220551909 343000397 368309156 738206800 942538884 948358327 199690015 487321165 1445289 226978097 982133791 985895710 99352461 828088518 977280628 986613678 49751627 645607851 755196687 778008059 928887187 961286678 677678888 801201993 150692500 600009738 869434840 876691083 692114521 818684135 738790459 864458749 181633780 722375631 247560996 376890906 908750368 969721471 127148184 813415392 54205507 64226484 361588007 832099014 62582168 786019967 990503356 992433945 651356861 746823265 219750828 655193848 598458231 805775912 416777592 523794144 965661545 968514798 470247639 716167508 687662111 960222787 85606158 358467785 439398326 875898372 973094979 981247835 906908642 935184780 810279308 871413367 719771077 861083908 382253607 759453031 547626384 747654964 501060477 897442252 484949237 885261549 634007575 905220956 696293756 889276647 239922801 783517082 869523163 968005834 313658299 459379104 712332839 986613138 603831656 906007344 767809544 948414615 190608364 614021934 728179533 893434854 185649854 769940601 914654237 944394634 53038261 97422742 818512128 947784123 27789381 108285606 256562479 466487274 501825712 568344934 932115649 978867177 374524212 676429625 720156466 789840732 528906392 807515160 228759476 786862937 845343889 854464233 673098288 806709780 4783539 426997817 288396729 775619791 286772268 922317587 533125588 889202711 41518021 199068664 603275599 944535862 988931000 998612250 640270334 731461633 312497668 900521490 769651929 926116421 828589684 913623588 833950112 928047489 662451639 685967131 658705157 735847083 512465410 658302523 677323394 847903220 79230797 328135112 816304950 882787713 453963119 888429025 809494184 939663804 155330797 867935944 804763357 932296195 335927487 606180974 179388066 765869987 254766097 410895963 464491319 488084947 993994789 994914510 60489480 959881944 555678830 588090827 508269355 909811827 183099280 213561574 164671925 928628275 202360732 517920012 964502825 996777206 47391011 996689206 419091127 942239305 807025269 902252452 248263661 297585556 861138009 914964547 16278876 950170871 90810318 275873923 809433770 982768899 846842814 905467700 357675077 795283256 852480632 968460126 949621861 978312259 128878362 296107793 950505250 976909713 959736760 995137323 799025721 905403718 872261581 939127974 986936369 990000188 867157089 951907247 200409304 749239277 210886465 301167540 553704910 909601768 953929890 957823830 352076985 371322789 512203817 658533109 647173553 952211930 335609031 587091841 771442138 887037688 72605018 103755921 189334609 378114053 280382095 467480273 745117043 753573048 240455067 946378636 55940898 448856755 218642304 323267834 64670460 400385919 135260759 784925040 10013876 729175864 424817157 813998665 861757788 903439947 171838052 433334250 300773955 714985113 2183364 849432756 623423309 818523543 134546801 632503283 4327424 534458242 75673565 998855818 973399875 995501281 63762019 750359569 505842559 909067295 957754685 964328583 947077726 998632484 776357513 827338303 305615796 437794108 671946540 961487065 919355791 925785643 305138977 699118899 104696041 943020308 988194187 995003746 284451263 428271249 578683592 709280605 705072231 832653901 734293788 820406616 941665604 958151164 74529096 647153619 703533445 943875036 916268762 958791296 910937772 916942681 913543626 991696625 889845272 955671620 811478294 912736953 336845205 946884773 753984828 836947424 683099709 730862628 840317285 965978042 146308550 966073689 353253435 926275149 501511956 544001670 268459976 681147744 487209602 878862809 431024283 771268110 996472283 998595590 842901471 946627766 657074840 823883375 123120397 883779057 872143405 914331426 722972887 901606800 19963637 628407442 693349104 881826763 358032884 569323856 90390802 441944355 347677280 729960301 655570966 741863228 772900081 910831825 210737678 811354397 163420319 290280690 735978422 903489172 791826868 919346349 418477129 968320447 786290701 796142479 988651764 991017660 7544775 408179465 552632947 947396036 941715238 968707731 410575627 715043170 95478273 216554665 270681614 529209628 140146385 679509912 753889275 830006311 20669536 235316097 668249708 777281625 623873319 709022269 905384381 999719476 234723132 442793483 743183517 932558257 288887978 867391690 16261437 442793571 731510845 875250013 62105540 914198995 511737402 855710603 246068181 897657130 761006390 821226610 435521862 499321435 562107574 789294230 233202175 644386521 338359796 541059577 56375105 673523313 416801056 879999012 732640748 949623370 950069195 999312762 616075493 713897600 78783426 165151283 495151668 997932068 621872090 650794215 356906180 733055267 582389567 963380509 873829639 964593846 873508714 980202542 549622963 850869531 483837797 963119311 787843326 835593150 48847667 766900102 48016065 961579978 887345204 989625180 392155610 891608960 935218194 956798968 76643825 595666113 656238130 955758849 420282462 684956360 108433951 213655451 944651171 996831793 49397961 739238421 732945654 882132245 259255933 649468865 511841516 897680731 674363683 897582233 945428976 972928731 842433207 911296638 765661849 864105412 473149846 617306858 447917013 979221974 124873127 931599477 479590220 948763379 617886301 957821773 899803766 971726298 484088674 797928336 568771061 632247909 368762878 919575136 843154802 928404141 345708553 955199771 706167641 841569442 123053065 810217990 40807435 123702800 23374856 809666119 763831117 781149607 839357671 841694214 802523104 970983394 197549839 949361211 950638096 962546616 637787845 699729728 569009835 641063386 510794465 591846078 620483638 786752938 163845150 497663879 166917101 622173190 738924145 863133457 243020810 574402374 250761791 273947816 797482862 859987616 643362412 886728595 786350848 812087737 958439589 986861882 1987671 143028944 553112516 741012280 265889605 424996162 692234321 724825699 369376762 982328260 806993404 971571181 951267670 972621386 631887782 927311122 881126523 965573305 812447226 843011849 954811548 960503537 555260510 749346671 445382125 765778214 966051132 974107666 775819026 801016818 891873240 966319463 234813514 940471576 61184379 617040398 956031015 975607646 309354488 360016682 263131507 587086779 566996720 887400862 33459657 621872712 975664728 980781444 26444766 909287221 332754627 732053435 860309632 982226663 358561897 383478096 843188549 928242390 921489455 988518452 538128237 786897742 888357170 965155260 219083783 332363161 610381868 865257664 47773002 846100353 881538659 992132414 106767244 885992315 692858284 806712456 222050662 941830839 453350525 966096684 852802589 979402405 450419332 884470234 691072731 769838403 141151005 354433044 507070892 611082663 313081628 823714186 35605352 373798998 23277211 486723635 477695806 861137565 390731775 955440871 168745067 896588544 21326501 993293116 994582295 999634198 514572889 723372807 212551700 595865199 508719348 569117596 869900165 956557441 569131100 722163761 756148336 958151878 127383714 437683550 921996346 989293249 342515078 453537208 514000381 943444534 409636709 859482202 41249248 223654764 828582045 857584744 9081782 39616421 862600953 871207730 913322065 995242280 337928692 721860787 284155894 631417831 30781768 465001992 357138202 495841850 624351914 684715416 101236240 402372893 361680024 419117712 139180264 700631568 86826686 681059109 119055292 479689918 109741704 473447987 311800125 605959432 731413427 749031151 939687223 966309398 939643038 954557813 367889105 766749964 758672416 973273178 502060143 912264734 180200096 594873970 594710728 821452573 264805241 786798677 573001079 917239068 565214120 920909742 818913490 957354648 924373586 969894706 387136539 670872464 462758359 907501479 647915237 927480613 338974965 814927599 969248640 998643728 579121568 968669136 572797752 926215079 474224110 961132984 897945524 941031249 837508482 972163127 77718354 787792608 2315199 724492454 514172279 942408819 686630508 842080437 442750356 712273031 62009627 233673067 33172690 224534032 326751106 712531637 137379500 925608526 362985988 965097678 404883813 627208362 837121480 915147763 375323050 605652324 936641955 972564226 465114704 991429080 905557463 952328113 254433401 641482849 18428428 244204795 223972683 715611576 708128428 815451014 633736536 927152449 805449944 996571314 772033612 864814505 734458499 949034315 87396627 697102000 823681682 900239436 186349879 591242861 886160344 918830965 431470883 438837572 858590497 973060060 48484814 512285040 729071309 959038725 265737157 671118081 697001410 750965824 431948610 876226905 513926782 654889905 362094521 639918237 705615890 770388578 538072772 733887916 113489272 377288584 249263637 907804371 854882290 864784140 862693926 946896040 847352522 960133061 278597433 553033277 408263564 488623657 440870274 857099660 390494311 682184166 305746290 996226108 919456861 977462016 369843941 801508669 595649089 687217124 637991578 639572028 299106394 344595351 93153992 262849875 439898814 760703850 598806236 714257871 5805644 356952237 705633785 923159810 948964250 973708563 254204247 774227898 222423062 400603151 658532451 849675420 71739462 857180046 275045128 475006354 973877063 983919575 719224618 890152765 123845698 496357396 975060011 976779113 186638560 267871076 220330456 918910054 593065894 961941052 400987653 467711830 188446667 839116768 967650253 982927162 953611736 992691717 626827813 743868820 835742600 839967609 845105069 869333506 328659608 852886336 69871927 943574451 130706763 199340037 134226312 332255760 479764108 668477171 265940332 706197227 670041289 931043098 61796347 631851969 107422331 709831436 625477632 696055946 555633411 923093719 444377470 695998286 422143641 946322901 226987934 857195490 118238739 293371509 717164152 724193924 206989482 339190136 848761739 930432195 15267982 273982801 870493044 949937082 80961630 144764946 738199308 802183980 37447903 313777695 277099694 363067251 110530858 947060873 19624355 906548508 105723794 684937969 276642781 309681548 418575139 959210939 153643272 463671521 527971844 607462519 967369287 978528273 235816877 670118528 91887150 502806867 229572990 492849422 997377389 997598869 356430744 824807641 184175259 289205490 695510249 831466350 725608964 984364602 810174973 933570854 832866913 838736033 907756825 997675543 800070914 941019390 660031531 753721362 451119084 921003835 746040521 915420310 559186875 752676579 388960282 691363335 273749213 561638561 17567029 756318934 824254477 855113427 975719006 979918678 665453491 739208548 568467080 736383617 747681893 802073185 787357661 932328366 659575954 797973516 899788076 946802659 376486611 555459332 971709423 975520911 443566075 706048233 111436334 154597610 250005244 350084485 218802048 282902741 638539621 692361677 871526126 942777408 158331813 776408584 729507741 825520837 989883810 990583811 476989721 894767715 931907455 975597611 397036017 644833110 210661473 709142496 557904545 994412810 297742100 384219203 51690190 618213496 738816098 963397976 184612657 517606689 332664426 994070267 438103573 917947417 571316576 667605817 185601676 672841332 236242270 793053832 701222962 840922954 673538961 970973726 537212428 628894913 841206488 941653010 353608376 874612027 132627710 199051435 452955070 856411415 258846459 308340640 366169623 688690733 713882912 732889813 536545080 855397920 24147651 458027705 630889642 997829215 869173941 983833875 12351220 644826943 376623744 394768573 908769123 940021480 86970780 974413092 489367532 942798814 455311103 538700569 776888355 992216596 541579001 556970363 433111741 445976939 630680618 891243711 438865764 812850484 937452783 951149258 373379599 537663424 417048653 730193201 858666605 939867192 257572523 642156554 969083133 972261179 610067204 999722766 908769664 926819525 376030008 498397408 236329031 257427814 772120896 854029643 439839031 557944091 813125226 885259910 100364020 414168536 776145238 882765371 291876933 295241503 436770107 845381180 474660726 872692058 209499176 527822678 219276486 677928467 807609623 895422352 463988397 606395167 912999929 988375048 422590903 774165545 675952187 846463981 37135083 264061790 884617468 946907457 401522252 514520862 635996704 692165224 212545550 572796903 900575517 911910363 852021162 993787393 620038393 983039079 702842858 715537565 131920121 911614573 185073221 640798040 283931711 556127560 605121471 854107288 828851520 980075909 564369461 763386597 652850772 823292251 331653482 690890386 335669805 812185007 703793917 736755856 906666336 913397341 934671191 954366651 817547426 940795971 602199100 822190443 300407988 687392120 16743856 800509756 172468973 298977887 984647030 992445732 226478976 440741146 664777789 788258558 975375117 996983372 139965349 454234152 639856160 957003264 574697582 884407035 158873029 578035920 208641674 729869391 852867508 997760310 956780076 970954800 787839306 920390499 602502702 747254868 931538143 937138843 767957559 879937276 54893371 180073081 747663573 986260419 258802967 575670688 361706298 380871981 756434912 851073106 39372637 616577286 735003035 830443699 877795491 930236487 459590877 718684745 193391481 846296857 448497503 911455917 300862345 371566803 953045180 993071417 103179530 347684332 488953989 520511575 255843296 639408442 887786145 923297985 812442170 967462474 661652600 750551544 557821421 880056241 475477108 774367317 74990012 176892085 790046260 848213506 974033379 975925285 835291461 896375486 428702227 742124311 690781148 708472101 557638999 721161320 583298759 905145171 570287586 798345661 790669853 963296659 308054707 968653286 778175567 871445662 497695006 843209483 816356506 883854339 70016822 506038782 49594735 710806027 706255002 710233703 476080573 737859276 695968139 850770005 59030217 426026230 835115973 908353707 404711608 545018838 886548120 889334118 670009032 685380620 510596190 805032549 946372875 974403953 588322412 858449245 455060823 680182899 624096790 830859637 237843498 743271919 399825527 607159831 230486104 682702095 8439228 176622361 20077853 858489383 914719883 955704503 822416011 838316211 144097824 765178918 905167745 920740006 341130851 486957726 341267876 395680242 860035754 960529877 800522135 955528566 709156244 862900543 72744939 884039050 503734971 856658537 33210389 369222921 540667545 830782435 490317320 790889716 996982257 999515143 419497439 743807195 300859322 738654935 424802085 925854915 402365098 606805142 787783018 798365910 619150871 868848292 362667839 641652633 992184340 998535761 732863655 962985062 32910582 426747926 615735642 773140675 968823912 995975255 520217601 993765185 870467965 952025457 821752959 947660000 277822523 646814186 159016245 405490959 725207383 783733781 384872095 897436077 44970018 674571067 623185074 986914277 470400781 664676406 226512817 733237066 137813605 635432146 592257652 673054062 372214682 482370830 141334857 381715026 442709434 797525597 418670002 875947465 387962458 643064983 947746007 951354916 832290106 910211098 729415220 964380436 609839227 824314138 574848296 873707338 290588380 593113971 544266102 711120670 969667469 992575259 33049253 994388232 330888461 653897787 428843957 877061964 616724123 954646247 88844760 783299602 97765727 322044368 379702882 492827534 780798393 971590398 573046043 740697101 595973099 657290291 678138438 916798100 984958374 993176567 366193322 855827316 617425942 889108846 773533614 825384282 133701041 620765007 319118976 680674731 221526077 991297158 189690521 939028133 502338808 901759806 814296963 963852508 630354097 828021590 547533946 897530591 89841619 964900054 557393122 611083457 827208748 831835627 763283684 962668567 467582395 951989989 715613408 810948822 604157332 673723453 820018150 996662477 287476200 487623832 735109481 849014544 819012420 989677486 29992437 365060880 600012331 664141586 810539466 902703516 61327180 282943680 603128115 804056400 836530128 994925956 804816965 852032408 423459998 770783810 694932228 922730702 990999627 999174260 505909415 739711165 46440621 527140374 284570235 528319553 389737260 807790003 558111615 717292197 218954905 760175919 600226223 689992694 168943253 910496628 385708831 485500633 687909745 978823951 247529366 821051693 803331974 974545339 977019989 987033387 539993971 867619121 787379766 881378189 784980634 969425664 807991365 840159076 386120662 520171829 641008794 952560867 40658802 185417124 554438365 812630640 107929051 571017285 118499531 823883966 801801351 837104066 114841314 308703721 60158746 303461873 223150307 476576435 298715645 313313177 913937885 954261584 803098578 826114970 775401474 947985528 388486518 652275559 302970426 577576190 160035894 600209873 439602002 575770527 796363999 987844030 170887284 846103781 393386550 485195950 499620552 568938684 967348032 979441842 232844959 737963673 439342171 470060001 250990624 254575658 721747629 845266928 858441629 985176158 604460307 708392361 367768017 699138635 704235936 921529879 194068401 555578934 305705776 781902982 393321715 665813084 15367674 204385106 55106052 508163088 967728468 974238984 239819320 862632015 607261632 916090836 472876677 870733619 639558483 708160357 741202485 772702814 508122887 684277243 197751062 844585673 328793117 507645504 698095945 876848677 547191296 965366402 781710807 901939196 250409640 812745275 961566913 987169432 690705843 785215847 622774109 825125837 66747297 223506927 696949583 728971236 863119488 983673552 206273571 519722256 483449900 524307981 120291279 161979958 244716413 940918530 765292275 933525869 207897211 511960913 413339496 614628936 462473624 897570535 527159097 666126791 169760224 271573087 13999869 984207204 622121689 916218242 54084374 666489285 92513860 664932197 5937251 751831002 46428019 532424411 206892273 339963833 534341454 693470105 287764367 879804931 74123934 185424926 182926633 662762376 819271100 984287400 726753428 830932214 706092466 850275494 671464851 747155292 813328302 902435736 797553126 807055172 588980147 866578040 719387740 978389199 123620239 542502880 576551324 646217923 120741426 736009587 22612783 164908966 247546942 858282609 808178882 920909208 826319521 994816299 147865657 394701643 47025500 85465179 487800156 695494459 346606901 428469620 978564210 979243282 792702750 911745538 636738889 972650008 698374490 981170966 553884653 716430904 618760400 702244594 900760379 906506819 555132782 891706639 595701714 817397222 911302015 988856561 78968719 815047226 352333613 700740212 827006584 847914833 337461672 486925039 77319734 165887461 123743454 567789778 939758427 991162934 56876192 163163388 930226817 991114418 318257446 897194164 688965189 698171791 188827894 780507218 689213086 743230210 406393491 987493564 186804306 992980205 291185642 371275415 332041442 699421194 72528257 501470209 104077827 753245625 625747552 866490252 709064272 782873808 66848773 797350115 601081829 695781947 156651291 696296123 737916000 876094647 502575506 884523539 282819245 512670581 590154855 802408572 213482841 320444042 338635277 944282546 461819125 760345803 758958750 908330714 598533287 965137617 825713542 901770969 303647054 669348096 18683460 536408027 339022496 898988851 386560166 611583917 363981085 895307765 634759805 998705425 695967315 711447005 574018106 673368245 241338080 666505648 170826507 924985014 722682859 881933982 295976639 409378504 33124838 451858305 717121724 923288072 373256445 832932472 880020623 957311203 659970336 707399848 308560441 875232757 81830329 853647782 837755603 861094578 746413083 964362914 891139266 922691742 373827722 947239165 743039540 952057374 785678265 804366559 11021999 219465907 26374698 394603558 288450059 987762077 722231095 922993285 89220349 333386785 964729901 973652588 701080843 895038535 661359026 946386226 761349250 883255268 288989836 656142706 772367951 876251808 580636780 667096790 518115891 635825897 133412481 752769746 319221759 533469703 982397139 983626009 450822010 972600883 502200776 601400497 318303440 542155663 878278951 902262716 209106149 910167010 597400550 684673360 980488716 985235494 620720842 673854546 545018871 898303285 483393265 774262249 767460955 931807799 866942167 939600563 890986715 933797850 724257714 964950589 204141621 781502480 485075078 813062963 363158336 787727987 661217232 668419531 242339272 272753798 120995925 567381026 872526383 952921217 285642466 692168250 788045662 840891610 773330499 924077648 986180602 993144391 22197172 678198375 646476849 987947620 216656034 547806767 757213617 959514377 216029319 824369109 465644413 765288130 804688658 918714327 572126360 691545242 846877735 880159670 283079988 642094507 818452295 952690617 798463015 981790493 146524819 410501948 942137484 986859877 785011696 828447713 800476540 899172736 337296096 763655002 802635755 857773761 68788360 680001856 507075251 774269353 821832183 834267714 246316323 533163912 455174925 662468330 928666104 999302766 487967882 880006943 806718002 881669957 9023710 486105910 413825684 619518287 269614972 959543837 47270365 655761111 841259682 865554578 836849036 840585718 646819975 803614325 287593002 747110685 645164281 722565510 806693584 966996501 747733776 968663555 227258385 485162064 881925379 968938432 451740450 479959161 238453663 452015864 45038462 218444811 159057200 870893105 548524461 901642999 435702037 558484876 652546873 664848155 902298902 927887073 713374917 886146433 38151038 685197836 79083432 106694970 682749823 703204560 80048765 190939605 786597782 952406300 885048681 951785202 908656634 988064527 613478262 967335183 277240880 799571396 439240236 984852261 66368191 436538360 434095049 534787411 95831112 219564982 722993204 761476781 732603530 948004475 898712527 914738996 244985196 921676902 126196355 668741228 275925413 305494719 715491537 975416619 334447751 701169634 44650725 114908279 297153108 393945879 88695492 247658918 75089197 982204913 704873315 753040629 228260011 401694333 765648382 984623445 445270795 467789080 392573240 586665676 370472008 544932749 345910226 720092499 923719716 983065734 634811100 877497822 509688417 897171412 405622669 757667294 666462315 817161992 580276892 966676127 705386295 960979434 924589053 976462214 224837092 919418114 454839867 606172586 286673866 470965713 72919262 442094173 429714419 689498928 912603603 947103476 24339771 748474721 622526903 735747824 404224187 842917553 794351154 829739513 192261478 418133446 791153103 969175202 322326590 855079021 436562835 609825143 928590568 938801867 31498694 893544567 324249458 858441491 309922480 809448009 170771987 271826685 452140369 668156703 102862690 218547079 610935348 849128888 504070176 683020827 974441436 981318325 751384802 755584421 438132287 647049428 28669402 587205565 537241616 580466839 452603264 538887087 742814735 873157082 515756303 710362988 635229760 907364034 700465867 751231021 172098369 543611534 973916593 976589012 21793227 603649054 570067624 929680279 824836154 885809657 595002034 712279537 437474657 780313780 502608629 604606095 347130250 518485105 140627814 866792975 811601175 878885811 314198684 577217864 972438939 996186778 871504833 911562458 256967650 738150513 3853473 930532276 87985585 568056079 900046541 932405151 868599006 985810045 394017972 422655799 27686239 961225866 501182470 707767887 293048244 676323728 824448639 833848375 420302273 717941207 895213523 976555596 687861765 793098015 46115261 847887286 123670123 380521577 174280535 779687036 630463997 979034608 262578205 390735244 439242247 804381791 184889181 337364843 137823576 439116409 985637288 987168802 98388687 632460324 225293742 719039715 689323960 971599350 856761900 966199418 612116034 856497271 703769888 968794023 227697062 332125814 616035360 842152520 751802907 947567462 262661503 359175264 135139773 259087064 798078512 962725499 721337150 777208904 780161971 901717073 56715487 716144341 946621480 985013256 14000832 994607355 634465712 844758452 784390846 971948354 220235894 765327780 286803289 354703395 304169958 798384860 124159001 809327936 827203294 945358757 650786506 907509722 570308972 690304829 375446094 841927108 913038969 953065771 574908928 840205815 243895063 244243063 229906571 680296495 870291943 900288197 683337466 763309067 837952988 927533942 734191120 812219587 382357877 605277477 330455978 643253300 344397974 645524401 832685995 956683040 795466543 900485674 481228237 751703630 185502960 926873581 567233587 954147909 339935927 891902160 36841039 424076309 719852244 770480946 197178954 420086430 58574251 973939798 846616946 945394541 216114125 454561930 148149522 633124199 252927408 858757942 505058990 734140307 964414652 973793701 507803930 903161364 951678611 996369385 200321394 335177119 439392306 936395716 563793368 576289817 221760176 849129263 143189051 155359331 940203342 953696976 86762365 444115620 750862262 969231761 569523585 604571604 588130742 680226773 621303238 630710453 288948960 692741091 166044639 729864223 220217554 974638673 336859405 719650004 831080816 833809601 171100042 738565900 171029265 604240597 72823920 779729191 251288425 272818347 565622964 775577352 728313895 972267919 340039083 698656881 356591926 788390910 726111589 749399615 561961441 646747843 33834121 658593504 772509799 885771265 684252132 787444656 623789365 700066709 178316726 826481922 476585145 619799367 660175122 744341559 668255559 841505609 293537295 775552418 432707254 740271827 654959133 808732923 382225150 726945921 486417196 880814851 760076756 807328792 754495321 980854526 242067534 977733396 439818676 776283416 192728938 204786254 549638419 792194473 96511639 897650368 284580455 580669448 173270153 733418771 488992140 941310153 765040084 907270005 185373711 372514912 755352936 785393158 659291749 898812566 325852688 904584364 351830727 610166498 367758944 993966917 548834748 796377351 695589236 807179343 185726059 749333750 543053793 844623228 997270570 997869754 901512517 925138580 18158388 237556782 50858836 515933362 798087039 981908650 845355106 955994222 137922266 208004130 378716197 767293625 159977520 207358582 223433600 981591365 420015340 634452964 238329322 566068631 41054000 215427651 612154441 648978025 103366690 385584455 68172566 115969148 383256667 527301406 924367137 927119692 995207227 996728491 796591285 921323944 134138483 267013389 784109359 863209322 817930497 928920142 966290244 993360453 947126640 995920902 905193431 939611305 584554318 753327111 320358059 533038730 480289887 883965534 979977396 981753779 468755823 638372235 290842888 516608663 470667821 716904072 69387442 487509566 44545983 286185098 762784202 884102925 801897348 987164871 458953094 674135447 674117687 783297841 257586802 691017466 805766468 856042116 488276761 765512658 679878610 800708974 538311353 734644163 153037652 374455698 412732510 852091671 548629110 910386906 244195264 528356413 479481208 655249661 91618915 157517686 407463258 993065449 529365287 895506485 181711897 229103205 438668070 831290062 696732516 798887060 40748310 359035170 162477884 976112978 908230106 943942985 965991088 997887050 57412249 681006788 224005796 929317859 750316927 990064830 501263129 742784059 801174483 815917961 899759463 979378385 259516473 324850468 203039031 505927722 171431090 262796983 570445007 927297403 439596284 440985684 467563465 937512004 514593001 681029284 223791699 268829847 486085125 996748662 963912113 992338124 486600267 532645341 557782118 571942299 403197180 413122946 226587830 228254660 157192132 332572336 902961581 934442267 161579858 263080392 766303031 790547585 280670342 487332180 579660429 831514315 834775778 835459746 895351168 978466672 539427464 586489003 447970997 866737390 744427384 915655735 888911122 898534650 899120534 978166427 377961843 820704818 998296521 999526164 937459548 999120864 995864610 997744502 826178405 880899916 417088994 547308263 834023186 871065357 356485584 372500160 690164870 769567928 821831049 956213526 50119313 730038935 967180874 994421452 73472563 745697443 449078882 517196014 797987400 909941916 912328991 930908669 73466593 327502950 737115984 958156157 372444573 649112961 229060446 836266806 471973813 483931005 110061321 273152721 422184684 994236233 233166632 515001339 127310429 826321356 826026636 991870084 844995455 852165808 127410969 706657136 881160323 969968462 682703908 947483234 264979268 343578456 771245822 797258478 928821354 961506799 170261886 316225573 615677614 694547385 518649330 613074936 110197408 461977978 864328641 869529128 343823794 554297237 888692289 936314226 783540594 992990601 688065334 758719571 723402899 893567085 735719092 739332198 932997865 947102325 2162834 224948836 546544985 868024474 312280543 966966000 655967306 939587498 66961447 815266882 128775201 642219993 995732401 995873738 351853230 681408975 877308975 936846252 629777463 987678575 978199022 994763238 170484157 438950016 960591615 974063384 783359954 877729101 864246981 907353412 528072624 958274052 744259439 843178845 408795665 768201880 187187104 549230247 812732048 897964421 682690921 773205352 704215247 931105285 506234640 951821504 761175700 907455643 11966451 110393107 332209701 711719015 463925307 587120207 164117114 288135819 552152012 940482664 666077417 680031293 1775326 344356042 138235455 276464107 333713687 521143089 399313434 467601879 409744069 756905722 405211189 798039327 605624974 962081134 336237891 337227356 458317417 968083984 591088673 896432223 849351420 962309914 895919641 923707762 465761621 527365646 428342646 574535616 77693616 102694214 885169405 940452212 338795205 596027930 466984672 543368617 3396051 298789875 733314845 863947751 708101297 902210072 693818650 776340491 690563434 755233076 464528083 610650641 558250277 896823073 508410638 974349530 104190100 961988416 804327984 826044761 465008742 556405407 995486384 999055170 734878565 851203226 939943699 967101522 211210208 643263776 109607568 541992736 823896519 852534541 324473502 810467008 262461762 736785928 538164135 978077846 743495582 950149990 123320378 184581312 671901906 783218019 917390293 979047373 106814170 263497234 406007665 731582980 435016845 902589836 836652072 897742919 456294105 497417180 291944502 787509691 557843216 850682847 612756221 720313375 230752374 557551740 718099459 837724860 206384419 525287874 974180274 994809920 809487052 830617373 182988416 309215561 630012902 938020649 19585061 285589739 252362618 770456399 672867943 917709503 612970670 859903729 21729766 350096781 661496463 759200192 78891183 136795816 603225525 649565257 650192742 757498757 65203961 761664026 82361517 584376004 258402013 453047090 906885367 917315179 67635919 585397499 558976738 865423490 365406620 641171173 125466138 293174396 928602678 969042063 602827777 690207229 677022657 835340295 186075464 369622422 937856428 947607838 141308463 705533531 804310513 930099627 867565898 940266835 298348829 718867119 266054540 396044839 709771125 714105673 992261660 993794952 418909517 959339481 39821672 196018459 271071335 631657919 649859944 881875953 251741388 723397631 873711352 883862805 120883726 129385419 702450127 848576015 382493553 567858803 662263394 830671810 303680617 647722484 634284576 945634221 519074312 696601140 594781585 738256242 126461942 748990241 990548617 996949200 446498549 663394382 840042062 902329492 189151457 627243168 931763060 933568802 481998219 812404984 65476551 190751608 225386474 482393356 933689846 999170695 87799530 158952268 658285212 916041633 457379266 967812678 985580840 995714742 632657180 869061426 311267642 598358565 681150753 961368112 438916514 958679827 177242189 756498230 236739984 866260951 856058272 875288010 94296418 619988662 260410592 351479255 381630806 949681246 271765473 431824214 28667306 140753434 965030098 980632343 8000214 272171473 231426378 887794672 729922218 806283821 59479486 483544026 297113571 383628766 214872735 687348647 14026004 64882185 748963709 844905689 616139614 934870980 287696470 894719861 737596369 865539212 721467746 782927662 596979198 614772504 467065368 957255832 907686281 919516757 767619203 777216137 280040739 314702031 535484362 756382094 51681782 780945342 95709132 241790212 701507166 713089071 294672314 593816080 394466190 620708267 559814224 962063934 460101020 661506084 546853011 801999989 22215745 828025877 957522065 981670894 864315788 932200042 516304071 886099214 842501889 889175397 633172426 770368537 752395328 968284543 377935149 950265355 860049175 923699742 982501940 996719509 125447853 916308441 378307365 517969710 911281919 923414447 564836340 728078438 953793732 971847599 932061514 959237556 669395413 906092219 423002328 496645458 177715503 607296401 10626729 88755186 443867113 741977771 645747908 833702940 295976996 777768363 201218388 743767730 634626432 805400785 185466103 397805586 675033379 885778180 834778926 964329468 49851445 365116142 151023754 427376731 733979329 983045191 121846151 245288195 639088059 842110664 216900172 835933100 471334839 562739604 994266102 997918265 620787507 754836850 208812365 693827355 702337518 762553369 189565541 636888063 192121975 862530208 46208023 779966187 733031469 795900191 54869567 457238999 243138274 510253250 859877567 940554559 984741216 991899545 48596791 699812325 373381264 811166196 253670992 849976615 939432361 939947932 203917180 403965166 297685664 873696377 111177453 749611829 342383412 934310945 646848716 687486307 614598935 803057844 295656369 761091276 125700453 945591537 390809548 412054309 865743634 918030971 374071820 984822367 277527082 997982170 582740682 808338260 6394017 844302846 611648837 989836870 659578853 876115320 92440470 978404198 521993361 855773889 191760451 685500228 277188955 700797701 591756324 925740225 445751744 544711552 412634706 513788976 412927218 897692681 155107569 637922924 554228297 954657660 230847062 959866834 870801600 959640246 32730450 941042801 955144553 994924963 588306579 669368806 246184924 691001030 291973750 456318290 456698001 964121795 226124740 458494470 57741746 976493974 934924625 967322827 719041983 853065235 265752301 925025508 127797091 411156759 807787185 945242302 887260120 902867803 883778708 933760904 944238936 995371936 595533549 825992289 864678218 871019005 23912364 731538899 522346485 781296381 457191658 769962156 63849556 641760537 284406771 989501512 419834150 636358756 233988365 819291728 950359352 962822359 790848732 900499913 520116100 757175862 96077120 787305683 967970092 985690875 302807784 844310283 680005747 768309895 845130038 953347977 424301064 531675272 717542921 944131357 996841780 998922465 378429551 428713175 192199167 646878117 511237194 717272927 210417095 946260383 336844619 450445678 262266075 667239512 821993369 928643753 292928363 693491177 671997317 951268791 278438412 713864529 905227508 924048040 309967746 572776779 482654011 809132004 426455940 954932964 97565861 341307836 641823557 771592367 71203385 803776302 282539579 421213516 747752780 801406824 50389125 79910390 845384225 883913060 783243266 920923220 453126738 869282822 197192840 901795654 947262558 978581561 774389949 941452375 28388527 465138945 189647946 372941010 372353665 816400418 350119513 884737996 265835720 628125998 269702105 743460696 329753921 590864353 141832343 312867396 287174694 493240302 362463877 821006251 555936980 659431967 683993917 884987226 742926947 798066419 977156527 987676238 733205292 735268373 881273097 891463629 771061908 945914998 520410913 883017684 908370942 972428073 771840443 774745918 826795479 993399669 62644356 725605421 112714617 272690361 81846122 766429683 415722357 802798631 986795220 993136182 870312584 953793745 585364091 870122363 303242676 418497955 680285519 868116976 899575220 987726660 383515082 706730300 945780142 946350810 10057345 580219431 271853233 940696584 759173240 928702644 349777835 550719664 736625602 826443881 328073127 384570468 10901825 724744223 821223390 892050357 990146251 998646976 531571929 559908509 763423873 970694795 435913719 551251676 427988820 527244540 908695800 968311999 667303413 979242088 828705416 859090935 770610674 892199690 758633724 848665149 978108773 981039423 386117383 684443382 20891476 311157099 988435459 995932378 166953811 500579040 437444993 797680184 678835196 740110240 364246448 976801208 185989487 853682438 318361268 359379395 549869704 619140705 998496999 999080503 231048722 974184994 558619459 834281885 73725518 568371200 714686372 726894147 693546814 920360725 212571025 398446196 893820164 988510064 482104577 632595802 758048501 922572032 809764237 905293436 567506162 872018164 636400581 856306204 722797595 815676025 554625001 570928520 471042089 590131074 224136405 463307891 472197465 931917839 581571821 906566312 755490191 987266167 926434513 934623837 72451549 921798066 109299553 567942561 523134615 588620404 634664368 646448354 759061736 838564147 211695600 810315419 198279946 545163612 719022674 754796569 679677404 889921424 568413736 867054542 965832593 975557531 387632954 477853130 469619069 645509324 498967030 824694874 6814967 439574426 467564697 597568285 21521690 925706677 578290449 651742617 594787742 622815224 976590197 983190761 803097913 908012645 334559009 418603883 399507908 755450114 673907555 708565183 632740877 709705930 841605773 856353847 95087576 243538661 426315380 601658413 725554717 877604964 256248943 897154326 910699947 992233801 403951884 697023409 473269780 538264122 280695519 468536439 314093710 615389636 30330476 54784404 541604150 961911517 998717199 999438863 331877897 957988135 846234073 990583151 417912947 664495921 619603152 836453018 193867354 345042620 537137491 561838838 659175935 834981240 873171751 962172413 4806271 246318187 83299125 989036079 731071977 949696937 948979442 989181786 729606425 955663334 208922147 259967488 604283130 716233808 429313993 701317527 765734762 806825613 157263636 510972611 209912864 382014591 256185072 671889668 344346172 820512826 501518117 856724213 415712373 458860676 116421169 150966867 474749843 854644592 687796328 930607429 904238565 913632109 618539852 927102164 798866952 860128962 353048505 516646028 522622921 540870800 677733976 768839686 634302594 903754622 668051657 942441973 961716781 967299422 539154561 718850872 571125337 713850488 893815654 930271213 721550496 843312135 382220627 853671494 568137266 908335346 785124647 956416317 117324175 925083077 180271258 908989763 765975423 773879045 151939454 536959892 878273246 965514313 90458639 144125129 143538004 565347530 316782610 523872452 496519802 818510734 391147314 877425253 131808799 253410923 677005345 956192483 644746398 892765939 500903196 815351033 883282735 938804300 543029751 558584577 270128790 545710532 636837740 755798048 191436886 668625628 500349959 585772364 962656608 990957562 819112607 918695293 501424144 881461112 311364176 590256685 328312244 352493532 741610423 959148233 276232327 533535909 574150039 968750149 810758051 909531696 333425542 971815762 537033504 653971017 344293469 836484193 366708023 831106577 199456901 666988638 974391901 997634187 724054087 810361648 994926945 998181218 958344219 963448770 85472505 778462800 288811624 341102212 776661157 947621442 715395234 843920208 607428221 868133261 942376389 962060123 360484572 421979515 424170071 740098002 429994194 590301443 673051377 935967494 397394917 986522159 181688604 888608373 478599972 556630547 971526273 989401977 882572674 890076057 576451081 875698376 798424324 826371181 421013076 511052514 829695985 940075211 879926976 909943139 893063160 991519528 695540854 723193983 707534022 721577017 188276114 189382691 168557914 730050274 212436187 377880639 806413465 871119603 546488418 803385485 460242755 464434591 905195929 931617839 268548067 658810646 858398321 995527194 297242846 443315943 525787976 574079986 996393115 996601903 634782973 685218236 701046389 853003710 677091518 708483190 632690194 912018459 584663584 988360438 390069412 901265886 929035066 968305324 253370806 450371056 233467351 984186525 882636588 936594683 608434635 639438481 602890416 768870800 419087583 613461086 183413026 575135973 355423749 916376718 738174504 895052156 410238026 852939878 663035207 967093717 699453800 730617676 750982133 794328696 548109689 790702259 209864319 990225878 121579717 997982077 914308622 933205162 960290229 971155132 20298444 213905199 843995299 850802546 991451602 998430025 40386378 666279003 313526324 745628138 915314221 946890800 604340474 702826277 276505986 327835217 795464557 985561417 103943168 981551161 977096532 995870277 591386867 611252596 877455408 996632504 955968420 960456657 166825220 179450524 553333221 623320402 609171989 735022953 482773847 629733710 178386449 477112170 628831970 793862083 921750425 949634246 892988753 983447809 648683782 996829475 43600865 186495034 744459217 744760621 429249928 591650051 504722684 788898424 350271494 811818758 936458615 992848113 288642171 797795979 918117221 973187451 77053502 732310666 769193613 913338608 777997283 827649705 698133453 916105051 959998446 967296856 138868444 584098468 881155651 894972351 953529298 977527664 643616305 740912647 505418273 538740487 448818334 759459628 403497176 428767762 10032317 429653627 46341681 307028713 139986765 273633489 268833584 430763684 784801795 980981411 265322281 650394072 623079847 790734714 42675326 915512448 399460464 792865519 365841978 714250682 845379585 923000741 278942369 703769933 558783338 980574781 936565240 964276115 488058912 813349357 638556762 885282726 589821758 704846102 991389445 997894980 110262191 701349908 446861993 666506557 72097737 715363848 371016697 489029243 839125744 863521872 230229973 888690631 330233839 845884422 357458553 406321029 741725614 925132213 153555976 612804654 994843754 995228238 608667708 969797732 845971776 898220513 753864018 875562566 854265755 953013208 552562157 826128551 194934595 782272389 652697567 905549377 534441495 974389730 296988234 419495626 416501250 896327115 591616673 842110890 15431665 159772502 599495391 771917257 377978927 480149126 932190640 944058007 548269963 842741339 734145717 980479901 994672971 999322568 615279281 767054364 738929218 833204260 113847610 568978765 282580576 407344009 793966035 864074574 222292483 359835982 60411549 847950742 285894342 308166411 147464543 595632524 886272324 939026199 805559763 933894360 885960330 934955839 413236608 681430480 163848715 639265417 570253412 706161506 919473756 936016223 283540718 665152492 618740817 764296782 854627871 951301696 647698893 773849403 267552596 888054544 44802851 868224527 584700614 647262610 482557435 668951083 655753804 803940072 731963292 863664569 228146707 766436629 635387963 648108268 158020368 660526014 681845220 821383430 97560790 570129821 807527659 963108196 156938011 327708590 757018855 790400575 53607291 846164943 962499701 994774610 610991653 852788278 809354340 984898246 676262882 887551598 909755909 922442944 573303811 689957197 778207874 850649719 133497072 528540456 261756157 642627934 848055434 968999472 768339958 841554756 50309493 311493773 565317501 629318921 940637661 989661116 369630940 524384902 349078732 800226626 639935585 673346351 716876843 952087472 146359413 375304646 916816972 991865981 87697122 404501256 954884050 977191086 363787189 364499769 876882114 975444851 914719038 965559463 671029129 803321176 743819714 747302306 466569842 955660621 480704326 933681510 241342611 950826649 79850901 168315303 856165218 856780503 310483111 776063930 10112665 13961905 984632623 987048641 729590975 816891399 579262083 657971834 970868450 990140645 983613279 986916963 608358410 917704766 830026500 863947301 749753424 803408782 951221177 991137516 788894701 948984204 626101832 981033607 523716744 576868180 518332445 645842965 227946600 484947371 847493545 893188949 955494261 993835964 13221900 405564776 352309367 667798655 957724882 978035757 69265947 883319618 410455183 599134516 603161707 632875614 496520500 727366873 17242926 356299320 551784356 810918448 448760608 692495791 336413559 548625056 783718493 787725426 109203009 960571452 987064871 987466647 859805634 870208465 354501350 794211257 15170707 462420007 834168608 983940300 557457510 708441403 855307597 887410670 304250574 887077751 502681976 571528619 678084076 996802012 416174645 834903305 405317118 725705381 794740348 923667200 830785916 947650685 613988722 677612891 675439059 816492254 755396036 948761805 983821304 987998713 411684511 694979393 713794960 919616374 839246616 851258645 852844009 930858370 383123755 618074742 394008507 909162462 361025202 935414369 521169290 809003240 20768442 589181773 552750419 887855984 383810139 698348106 712697958 849765907 54843720 612732345 908926326 923816193 345488715 640107987 275907985 666600355 915099298 986104804 484417345 787377117 452688593 548681162 55172546 348028574 253586656 521094314 858409172 863688280 981151607 993181420 201955864 991219744 255677429 616237938 666101780 830962593 705065386 891652241 10547902 856564014 412049191 893458579 717345470 997224157 387487659 583047612 445930351 613115043 768936857 937632048 191794016 257748806 374153383 712121836 378414113 771269270 937998638 978570321 88031937 672091639 223717703 304502315 682433132 695461641 143176719 767029193 103028920 826138084 435113324 584592377 9099037 15102942 445929190 462684306 996697852 997663795 640386544 789172250 315482648 583886483 918841277 933987045 99817922 863593170 74243780 542638446 428280278 831048514 725841790 898835812 258641318 989422845 624195181 998581608 695053145 977914874 922707295 968938240 133111490 856601776 251223039 768996211 754421838 800549886 335197848 937982726 850169882 975449401 433905172 663941343 917800690 931098632 751417257 770317565 840778964 910502082 993651174 998506417 767877407 773020878 232630980 248010851 521496124 768416365 868133262 940389244 906861814 939964648 180481847 937890306 433543195 692466368 100069314 266152934 961969791 998442108 278184678 488227582 830536253 847188891 919912814 924800823 65381726 981712132 83758014 838448773 200887439 333670597 775563074 991198324 615668247 734342945 942488502 962966166 597136495 903291252 523428184 562694206 387995568 847231630 141951623 393703153 494926232 758017623 657092678 941422479 524062562 775604799 840407667 912973956 184907971 822198984 300747940 596392534 464476279 511528482 1076017 825172314 944171816 988033088 912486303 953798848 86106666 260587530 754815862 951242072 314829857 866947539 304292156 979732309 200227567 662235990 554838041 636375359 205444032 313775569 990589177 998615609 8477898 950341190 879321279 989771226 180245192 979371958 993697772 994972129 188373090 704245427 837308550 919895825 203100496 282497011 557741557 812306246 162667723 461994997 840220318 875914059 904290022 986554935 237541148 712402108 902238485 955374298 601486456 744907717 352798859 576951815 248451176 602500909 269753824 582757499 607740088 970501777 771087252 898760847 643014600 910759639 128188821 635899951 4619949 468275097 705145390 743426694 859911651 921070759 917960568 989536458 200732140 901377189 548387066 865318929 991897167 998487570 87391824 431896177 907914587 936302369 526175146 642204317 144952757 575397965 294803321 900875876 497338895 882107006 679066020 941960301 947694143 961690908 241660982 477798521 916749192 981304699 832857402 874900770 947453854 988911552 261190711 273090027 356089414 602510451 246459134 523240462 613872260 897423049 479390296 724950444 81613362 795354819 905123422 931898777 609914441 648834021 923621242 927035414 905099979 957749821 536380701 591674804 131705712 270271838 745081913 864465502 79987677 665713418 749848495 829837151 926385742 953461647 576524165 739199998 827101854 994030470 511395818 761919385 849240639 869264966 850345218 882022542 907200061 927738524 447428863 880606505 860141889 973863179 796749758 918546026 729037815 940406598 816217812 877715232 718263104 986387831 390112868 684091199 66836545 915889200 464207954 682076851 16818801 405624200 929433839 933957638 618836490 950875446 559839949 628092744 342412316 805827634 464729793 853377945 95244317 857324283 618685691 776918884 714570070 826769921 336493967 942521695 490295533 880427619 288511253 792278463 443978148 751694411 578877458 617694937 236820607 854497968 466148926 723754797 144048115 375623875 515976128 643389219 666898097 731263488 656762371 665192333 227870015 966991227 679217439 736068998 498619517 532609092 443546960 979543129 938331395 969702242 340611822 538370483 274180553 737936706 779887124 850884690 920160412 979000892 508419292 673175047 683665520 691361436 576699393 590586439 979710369 999770173 685916351 799811921 493341151 843045180 196584888 613274730 340849436 849800718 721838352 886438204 639522297 900621036 743144851 908340489 10512856 445179552 623433168 948255798 292259206 338558720 560418002 577130618 945618504 958045198 701375825 908687410 42959371 323706600 658930307 728450952 499032959 754136144 356052198 393739599 326169498 937391324 777724103 827564301 909278589 919266279 931991266 988679590 380754715 584226838 584663574 652580570 718716212 746385324 656708472 753606185 845427222 870360595 155941749 851456371 520596335 981698068 213339152 683415357 908350145 959268634 703701289 911622908 923973621 965370324 12129173 701214082 710049810 772962821 336818344 933968962 147918368 943060046 228557710 995203879 803813430 860774015 338441257 416798963 306885921 535714891 208075543 471340848 455575566 483179329 554307244 825642637 371373223 637703034 712496136 878356805 929574093 989655633 27632582 248453087 551387857 626632476 3808759 625118464 153153697 516304644 13798755 533963888 933951535 944152330 628301569 894712583 583511820 730779358 760174274 985411703 980104968 987572723 606470264 869216676 867764377 880554515 481840753 896924851 973597729 973656513 608051557 900347282 67248094 795478057 972739339 976907302 64594238 897392710 249438521 905432172 155316661 191038739 442598007 450663072 616818674 954234824 740727723 756683788 857439313 898474104 39371397 508324717 306057464 536234114 171928728 641835202 784312371 987537953 65381335 256544981 978961494 992655302 693638371 856796057 171344214 830836707 422414333 801532158 700471691 777508019 631686067 935551979 527472486 846288944 501634572 696507336 375188168 403102187 617017850 995701884 159010117 562868614 663886696 872565922 37772235 793781358 230492241 959047922 667769544 848946824 92574471 225863922 695691788 918660827 282005411 553022125 88345013 762433460 644772324 871006686 53768696 669317155 914182065 923461197 462219995 877611622 784213051 936896845 551828528 900141371 12197108 296204344 480268011 699046822 413613758 440606243 898507130 907027557 120441771 999239166 851129102 857632564 759312410 961357796 534526626 694307054 890174286 940739112 496660593 982593745 399546785 686867318 221802929 579065728 54359225 100932004 262088139 469581983 929787902 983875949 699407072 966899316 327735074 619589481 782673821 880993161 925218437 972229314 59132098 229809690 232728072 938836945 868378682 901475502 582319135 904492410 296757466 317516591 128326511 334180223 720173908 975956305 47648360 612255658 949216619 988476755 622848483 890722680 648922974 712542230 826937320 864253103 509114755 899692633 220227457 303429210 818409495 885374811 78911904 605525487 649403219 969285740 179184166 362837382 814516913 912874230 29525989 521399157 228941312 756269925 54609623 710422958 217556718 260097865 695397271 978798715 831655090 879343584 990379269 994772675 867700220 978543174 136984235 703863569 318916923 450767352 788944362 858128350 63131471 948259584 952122221 997692192 577656811 612521324 834400173 990911702 488609346 524397359 877449471 956955982 405198827 659392710 651265092 902197996 731965062 809208737 717773110 738253291 566201348 810833654 427401967 679674890 613451824 837434914 673591499 856787612 99072846 409566687 31082977 964249163 664720456 719527823 65083346 143419324 645756132 909163340 662301502 768646810 200705925 769357556 440562123 953243830 934655732 972806271 112819761 125211106 815539299 931163798 24088945 673468804 996773427 999672148 71253276 976485692 750126502 803741251 373249804 380053728 24383155 842698998 881558558 976433274 406844194 533003212 316517658 607427371 241882843 430837145 954490840 965633987 518557133 531542895 702578366 876612924 577033769 634020191 528318512 966197387 716415868 723605514 825975113 920477655 417681497 467914264 158393111 289663736 694036140 708942741 592580258 762770427 236023065 623322126 473917006 680888748 510194513 584699240 227709053 677543312 140289924 744996353 273386669 591458206 357149533 775704312 975224979 977852057 922690085 994543073 314190329 718839059 929330956 930378500 270043762 733922084 66370312 520188296 41915695 822276143 785731980 862292253 362733431 480173072 309447945 391959012 687485439 872804685 982170905 998629060 223896112 813903715 813243178 840686799 648134644 770145495 280499478 531071304 380989970 501339975 207143114 924779597 370097264 710730045 441127712 653500178 398332580 631846518 292663023 814045806 295709473 790117444 965748411 979265097 414830687 975223310 204073514 267162633 274508851 697646703 750293402 793010270 230976250 862745346 950728188 989967276 484070006 976965256 415885213 814648083 591504763 940527787 355917035 525113658 649849668 702030246 127114645 800409962 857607992 986327923 147703800 277294706 692305879 879102758 160047599 739442619 791349930 852002657 155862338 668557044 328635413 933287995 698478078 995442651 934142759 937559917 611520573 683765424 605273532 794387123 204767642 559627953 69713059 765824496 834309196 875826005 351151654 679104428 738694078 880818093 391187846 622914563 779232642 853236898 52844195 666893434 466689115 664905587 817765643 919046103 320144953 560193243 99473792 774876303 776702491 862030123 330784584 654578310 978487619 988006777 598514938 878968800 719074498 801186843 907245369 929105073 149916749 368743419 962318749 990670908 416192799 843273108 976532441 984067637 255914741 448025709 739392462 829529011 161220002 444102269 548481509 984214417 151557174 791677243 527566785 796051725 716117040 850285816 472609533 764489224 773762069 962643037 234366795 869528250 776210762 836064606 493834150 690207841 811304063 813440020 308581401 572259977 45824502 156744305 708525963 915075157 421380655 712821329 825515327 847377497 976194054 989919650 752483325 938041587 520448169 903310567 561274687 653377375 805609171 970185289 844066259 941300798 413380499 488316154 298452443 814758077 961731877 967495618 532549009 634187596 152184961 743189445 74178242 348643871 359222895 580049204 833660373 982808985 631141753 654602073 812875108 881383326 456113942 576025340 831526225 948185067 958506567 964124531 383594044 489004945 670902128 759594724 44881362 928816448 320566276 502486256 989501702 993351564 641291293 884238539 632707283 792273745 554154706 734063160 198258754 705342590 810066951 929328043 716148804 843516234 514469415 799023465 645130574 851334995 197028982 717281288 598896453 688858807 943020163 973027824 414406279 881372375 830584801 966498321 600127931 724733277 569258149 586658897 722871934 826207866 633551454 969134090 255465554 527210716 928948889 965923627 956879191 972188615 382984532 661940522 108514626 162598265 48969493 596526898 692223644 993762699 389672805 780123408 393683501 978068931 901298452 979510946 355540948 611619947 199647057 638991945 492963751 793639759 167965182 771914492 623063987 784499957 336990655 441324319 901164098 989284496 900833837 940751231 610675828 686249322 763194820 828038540 586236071 663430130 502764383 650036126 287802640 711627393 210456389 667323206 926260640 977250775 11546929 777845672 451260145 531676307 732199453 748583847 928070134 976863486 158630588 614558569 627412902 821908239 490922332 892942466 269459943 433902502 853862508 994380646 127039361 807406029 670125125 720502571 821562076 958645494 149964361 654403968 983838269 991029199 130700992 904089585 10789035 173696820 804270023 962060799 490199117 511246952 115511040 222372747 103410617 905565148 231008741 642659231 601062954 617310831 358138458 736835332 839743185 889714207 127341521 927634765 166649326 250057649 238060305 771597299 330453334 358123195 127004054 217401114 880852422 959534159 528189660 846569339 534781012 607992421 327336886 620985522 375950191 902377849 880502294 992302939 337267383 673674892 894849496 919836954 713310433 738806627 929076803 962824323 257391541 816972249 369772315 670116686 655466739 691309215 484232212 766656638 647867491 752714026 546483231 618681438 958727774 985095166 213007762 299084601 348297361 859169593 387405266 523150403 583283240 746378960 510434314 799047437 790218757 963157536 814182166 884283869 772706187 841943164 68826775 235883560 522262440 703424555 166386019 329428296 755193517 936055056 692450423 696593354 868238886 954302136 335766687 700397246 121142660 987790806 682965330 700990058 348665642 759372991 93718542 607529637 362770880 387575208 893940606 901024653 735179097 969928859 606545373 820294867 232105884 948757161 657505457 970653162 471106407 886343841 155517888 459025915 747465493 796543947 500236453 848588262 805739173 861669033 262808660 599752262 184262180 326406386 790829817 892135844 313668807 999535922 321197134 507312054 178912053 840507874 960244019 987379741 654755026 955519410 258876056 555782414 901489063 963601063 538689816 936398261 918779467 957532862 196714479 482653470 56106770 911810981 823617639 823904861 172629842 231009351 807195751 813050254 219950049 849337649 680900747 858364551 186791418 777939277 226190291 817366666 266698743 287768541 691473387 801244956 229409276 669733492 839561182 935655278 645110978 665575423 492986725 632645470 748250684 922598890 449204307 791808967 542203171 739577461 92363661 338443554 166435764 646201951 938184689 961932231 320613630 369177344 119179365 648327711 829173861 988589473 73430157 81752127 56321030 604615700 250365515 520949150 850358916 858565054 98629352 155634087 910559999 947416270 174446620 210507964 982740848 987683015 245239413 680482514 647528513 670210078 28796188 513793329 941454471 953844325 401366790 620844359 718705872 802328313 482377174 621850744 479128555 755215300 372525951 502418219 702344007 854150288 454593015 846186177 226117599 698011480 476295059 491110258 814216432 837875123 129635690 348243483 594927061 686860581 732404822 863162830 172736325 798885026 770192163 874606970 122028042 948871709 48987186 207456026 841047086 888081064 991595436 992186330 321421654 809292625 685400345 803090469 149503393 297045823 438076950 609835690 619273825 917758993 150996875 748305796 990902014 991791286 564755974 617990877 10117774 337964423 663309690 924927232 822164775 929322457 131561168 239758024 571725316 956634109 865695438 995834452 971002535 971808511 777851551 996475681 513345959 693688760 430513733 642485579 409822505 978107389 442321644 951673441 353422152 945750389 814777221 878701682 773397928 909973068 462677299 896028900 767996976 890281805 222146920 422113917 149224494 343176893 635180500 938773942 426300269 775344318 303107167 816711157 43711559 784046169 981016885 981977674 205783936 940645980 207037547 843560066 528436207 727539836 840331037 974672007 23688337 171371867 275860436 322963084 769414439 868137051 850370667 948648217 198482901 914453773 555818458 612327888 340010057 686914689 371888766 864882508 128112576 321065285 894790788 981666505 421678888 449865003 3905604 869564853 456092133 608045787 878112659 951563428 985670164 995343033 661933510 890329128 830370925 906133298 1194519 512152211 328547972 496218453 341936323 512119237 577196432 874725238 597972660 840562295 250175846 287476810 237598220 441085932 625232108 979670772 945289082 968594793 904801015 904854389 173669703 281757518 598190682 833405643 203352998 423344050 238569239 360790089 315726367 575619442 872142419 879752230 905288274 954568481 431406357 886239606 741505758 787308456 973386932 976079145 989208328 993106456 850984918 954099129 387284438 958790689 861161992 930442138 551219796 693722249 390773860 988679137 811109265 987857990 868714490 917894182 612502728 969774543 693330209 712590455 749028615 935538116 762664939 796581688 7070919 799106086 529695959 792002776 414490791 788377237 312817133 744922915 181553732 403653969 277221685 880822910 481903767 931969891 60417035 478667641 354223049 750521059 957992127 972993956 447626018 879445432 305454153 835449780 117902161 546552431 970727436 986445838 136948701 445787662 196915244 339241496 408591059 939317940 857521340 998633802 306055790 891418946 273633343 953579107 764218311 993099652 244048794 473250782 999466236 999549914 719014563 738746249 57210680 770341801 178224723 613852097 163950220 575803426 948639787 973683172 672718950 940609636 67583860 801260796 118085104 451028187 909764579 913178510 818685096 969777532 671822717 954432386 773825408 909697378 228468561 440844771 62886542 300044416 89246635 652197121 641133943 787378073 823430448 916152764 294945501 835273457 788187470 876392995 477836521 587555231 448493751 987941598 865393449 880352471 881323828 884855511 154338464 997740444 890671996 917051320 991264475 999700664 513896575 726839853 81489737 715729246 811149737 850831112 676239204 947988290 441863471 694363011 803987234 892836934 671398867 786782337 570592918 831939917 811993662 859587205 272287563 310605002 498995874 710435618 643664934 835046693 401343241 747084217 458321326 679448523 240552625 684809546 602111115 829445614 403282342 446208373 395007599 738026726 887598688 921379103 534623893 825681370 852094925 896983904 513617726 698824158 667964604 965421663 737655911 847214412 628412905 924470797 287126782 861237365 435692038 745969140 504570699 748270820 838033996 846070389 182503942 429026831 530117229 695093726 185819557 648956044 459476353 555801839 767472359 933774554 367965161 658609951 137080476 230870136 316999061 482962592 3546999 137433296 626925759 907889095 502591290 548031234 377499666 636495851 513783315 758242713 869008709 981157568 333243103 793746356 356184059 472733257 887356000 968436090 556135309 616455299 669200108 841552558 683422310 970773406 456473091 771020578 450036175 456574486 79635338 131605639 544319217 793641152 835058217 955396277 760039172 884579002 808877338 918372938 274273062 514653921 185264951 958927089 753102043 802808590 823792148 942249908 58713832 729592110 206252041 856353227 356444475 691140477 181467530 825436534 691308849 796683997 7834462 176671996 506282363 729134833 983588707 996920224 514741747 695607695 398227820 869824491 472637699 853936376 77955164 783761715 13014259 745285908 539011842 602192025 568572975 654346158 649883587 700119201 499090572 819276066 478986095 808931693 525390543 809153912 551466930 570977084 727716996 858750547 955494792 988613545 370514122 957555610 610361685 626092469 266703428 910832039 215418409 995957364 489099840 899478931 414139619 693843842 174555907 212619334 472902405 987368652 453389774 860216565 394681532 672406656 735520616 870898109 630129536 768681784 728032101 892570820 578215086 926096898 257833592 937243668 755806951 950381334 739531334 782409118 994901709 997884441 789981711 909781755 791431759 956832224 380558762 771874501 965280823 972714839 253650170 993613531 710656906 925134240 858032198 907929077 855246329 996524459 929051071 999314401 215087867 719296700 985748004 996585244 124320022 294432675 3694078 447499229 560362154 612104921 199561894 721879082 257870087 323238102 612277106 876204653 685651209 816271035 658811535 680672280 480034027 826181980 104968161 365888828 825675285 936075814 329810771 357635925 149189239 231922892 871325748 903097367 391172462 728878535 124128455 444977495 7185640 488196770 94766412 131723434 415716474 940887940 241542489 910217857 264631920 453081221 487306433 613045552 151155517 443866407 626402744 674151443 985518042 990064028 113638383 201516866 132715666 919791882 422417556 466936167 957057683 958661851 546039311 895976327 649819298 993044021 702319706 853996049 994428914 998274936 564394162 686120181 405397689 852270743 121677316 487835214 994129123 996009667 240340148 995933591 697561344 951887973 498363940 727159006 138088248 715536366 776017553 921029536 153213073 767736114 453530474 816442784 977467666 999849639 187952956 644323817 781799368 801473399 36227302 547396130 269317821 821994426 207052717 464656815 138421389 906502008 631720581 732213950 359620173 617520981 418916451 480340574 160807916 219876702 936627810 968339210 263280813 277876387 102036052 260648942 165340896 208481304 378124647 593954619 526631060 986564829 528064477 939570008 362798541 653767698 832546114 886707382 872350764 943206126 369169277 574338311 839429180 986989854 900579611 902939317 569253212 637740471 666045036 922851137 736829700 908750540 295532765 426998594 285070179 830535968 93762688 178067639 740601452 847203011 516629276 906256805 478928814 620938033 153140513 286582384 842679530 927955845 881841533 935985979 824554289 835439351 237300748 794567420 697084487 858381038 570123104 635645681 19329139 356932858 371293436 717950969 333700578 365199275 707086839 905732290 475045816 910547443 899495773 997165734 582111842 691565297 121667990 486529166 509350733 523405391 832816339 931800724 62437890 581486100 699892082 791208387 290198049 679202886 974491485 976020052 18265156 908855671 988116540 997836941 1664487 421658775 435057498 775073906 822544445 858849965 240858583 721611577 101637365 562626733 918962842 959220987 436217719 669478795 698251981 700687118 469425824 510643620 848623421 928635453 481895563 971073739 22677091 299325618 487740554 794799954 284220884 858922774 8351829 10620470 433782379 648233974 584469856 900984741 173258365 683815837 882668513 991881299 634120381 723244408 105416602 167805753 120264326 392632369 308235010 916112364 676242383 790298422 398166271 755191496 270682282 386128397 645905384 861713801 60986650 259330742 319289398 375586842 396190260 899257706 792858831 855006553 613923804 906773006 654090106 860484701 567936807 999273671 583705589 615024690 291876211 925254693 949548403 979272848 907481613 947886023 707745672 928492162 477977147 589789453 303727223 706068630 728653794 868747954 605018065 807979169 534897083 925524674 490139253 768008912 734382089 893073813 160486462 377900541 676889471 965402161 219264294 433133615 134926530 759895599 696632574 748642126 561563671 662568332 901260512 922773584 130253184 955437233 828512364 911943850 221712586 655635201 294379167 571619809 635072002 874907043 571614161 763815310 355455786 683833419 548100787 692721453 548616991 971384564 428255519 447312155 808942204 837957896 6873899 247887000 951656454 958647908 389197895 978199683 109418692 455242866 973999233 981285843 267473772 805796763 680817254 994943117 323263070 339785841 552917586 557701647 851110520 897703534 489067071 677320938 995323748 998090407 162285221 530620102 463690153 797911350 559425119 782056367 593584848 739433923 577062250 694397229 487082978 962178947 773414717 774028041 277454714 482019994 802611911 958683025 557511350 965682854 119525655 133137962 707141427 749965544 112711954 880296767 317337648 901774644 219976338 936065646 735560790 782837247 957744789 985859165 434789432 956622072 201585880 448740426 360394566 483575133 984663318 985168399 53815553 458031792 897429855 939565440 112958715 265656549 343962241 768694617 218181763 613339662 169775446 180742830 717805016 935711440 412381500 528234509 426652786 877814300 205872586 525353530 574314811 733143699 992981529 994114916 930910757 998985882 750451174 787107685 391538474 919133577 53321660 78799138 110656294 861576232 961648010 982607919 849493213 852311112 551961616 775207643 349149315 839889117 908735690 989236849 16355973 328542101 123352212 482275335 71220902 120726649 361134987 628367815 927856198 945682281 133891933 797901973 998659208 999730352 671511376 936192983 711719302 978739689 300007696 812083271 120962632 311867872 394917969 906052995 68023758 578850738 727877193 873300318 861610494 922165616 936788921 970323321 659676273 664601294 578928080 670082657 201355408 239447764 314852528 836506319 818891717 875430055 288356783 347507852 348695910 432484478 195769494 473372072 161644117 234555884 419759881 618212907 146163603 349511553 860627853 995638484 1109097 779795476 352864909 721124181 192585725 615224694 570280064 836123921 490926824 710470237 202091528 726245687 952907114 975691632 511580762 925307843 536335567 961936181 944599072 970625725 401741747 709262628 108221803 884634209 110085821 511813314 914364575 921320988 314373415 746174372 792149604 940738362 375399230 879090103 312558330 648066048 462776000 588011683 701879063 813298010 657453460 742017068 981525862 983913885 448925903 579310500 204429902 282212953 149869038 622548968 784513928 929385617 931147900 956053206 646870963 908887203 3396952 177164094 732531629 795571669 969935860 994448602 174292949 284264167 618457023 864084918 449674639 706634220 517184154 554495776 278699272 988081468 449697764 472218443 348050326 969007037 666752242 972622888 877116633 958406558 204436029 235976762 588580907 800970949 755164109 925747822 959602685 996398935 667665313 992126416 169513330 671272228 550797127 982360378 856316915 858639788 253769432 800575753 787173302 900951979 446960050 930160625 776358455 849244967 692616106 848510818 951935834 986818528 633671012 946806988 602607051 689519858 828163013 867414126 599567444 732279535 477032019 605935037 137607523 367245161 57947484 810594543 721843885 840497807 430262220 627549606 575510952 795020837 402665330 587484564 310514599 652165648 827768111 836099256 83667666 307035988 383357317 795111446 229676229 556921111 925951319 993423668 874298273 995529967 639303670 654939777 24040855 482342664 115205449 284268774 399781636 759629420 675558882 855913640 677555017 776453607 426661642 817127380 895272887 952737757 51029934 939650078 234589292 258714823 455628329 924462520 880490750 922022529 873396412 961345737 213220143 883759073 359861666 844855153 63380083 707035668 209921277 368615652 899804769 955744952 747236863 809371853 228659908 603842994 622782671 651547567 452106488 690415775 314972392 855173151 652051964 995458071 492451721 745910443 895121747 991944108 167672243 833409711 515937884 760318188 692041319 878224753 853028199 915329780 476286970 933118379 734295274 807043695 354459033 583331725 287735234 710295562 782576668 908271396 326559684 835231226 706554026 833485729 81957622 250039564 861762877 996396983 887228087 973764120 775062891 829088703 760562589 936341892 304782386 756657977 18530443 513085738 208757698 843807030 291676870 512036118 809701081 951490028 100247647 315127522 725081669 778696268 316220634 550443942 965332569 967005128 39072530 714132959 621170369 902668479 179546576 613459382 846982103 900197930 69767622 280327684 566280572 900587483 677540219 842097372 527413949 664763175 41644714 498872371 835597699 848529059 451250769 642674386 680447395 842670655 128415701 366884886 663145106 849321787 949328685 949379662 999079966 999940136 243571782 714011359 946261420 972786518 171803221 584782136 384316953 522103683 368118160 528725139 379987671 877922797 545710077 722830696 943500818 975219227 69114484 991278141 958804608 992200910 36013019 349106789 761428428 917276783 313534260 794048616 515434794 688680941 66273013 702833012 428856735 678842146 565747818 911160637 654033987 848061850 869916835 950691805 503311077 523528305 580801197 726270952 728529572 741563009 90953985 256442367 286122100 646471280 910247146 997767863 834888260 922035090 443390199 782268524 698740238 832988402 725547873 813553964 265225461 832972297 372220282 693925893 964391531 983841871 97549341 170330128 938626354 965731896 52342444 538417014 992764105 995573411 996345779 998388899 992829982 995563935 411591180 606390846 244770876 332334944 360245329 975454633 548172 901269726 54994978 846748770 46441254 919066413 113753273 785708066 427128024 512606921 251103133 438912919 10513624 131824899 108367119 609877567 1520135 609857601 855893284 990336715 291296035 667034412 887855463 927511321 635329478 639535510 803321696 891173359 339248625 404725463 580180480 988418717 653836473 662623628 556964890 803176753 38766770 571152850 919736239 939726483 339786310 678931367 595470571 635257525 807325564 944105868 492562278 814610320 811074673 963720642 459426921 912046070 935995969 943088332 301496923 786037915 291517491 652257725 6134815 32393308 97209609 816606855 128121345 706669996 536486520 676576606 532413594 917133654 560231932 853756197 11100264 35309131 966662653 987710757 896048769 982338051 232183670 513879922 214418349 219487912 320248416 566116327 891005978 901015597 378558284 596016178 974638550 991492089 948803409 974040800 703079505 982343126 715175783 886432481 558861208 720441739 254027020 343327405 156180564 430674107 287068560 792274971 571457682 580542058 314660089 732185617 246204815 940846359 810642142 936083978 11075180 752442286 911143009 927652775 681962373 954677471 109412342 923897760 366624207 583375355 302038975 858200848 33969901 156918057 210591681 336677267 604928172 740761958 108067863 467583012 239788665 948790671 798314493 805576908 378509376 835410103 277751515 738530228 301012218 820791933 660716348 878714584 828274761 828702602 211486893 963041488 301534404 775790377 266718669 354890170 403686847 783078906 758209620 801500485 472660575 723593782 639448827 730319388 775260866 900061296 90205767 234368572 667704590 882204531 694404584 995054693 412069603 665575341 614461278 907808342 768615133 937895432 94208664 769588090 135189221 291680896 485988272 754341742 577679100 711329536 379416425 989026703 241061778 853705499 955894253 968753217 573664833 668624834 489722885 856897612 745100484 996071144 122456999 713727922 966190236 976228110 358703349 450946715 841161773 927033646 850657763 944112725 663821137 903975511 682046943 944065025 719881167 917273407 202173176 545228883 188185970 614896370 554769790 999814898 904174040 939163148 831142052 839653913 587644414 934319896 746314372 895454910 267154201 708628720 833525598 949334474 991461074 999842535 627852335 689152894 538354622 837712891 986099485 998524739 627496895 699352186 419687316 474088922 915322604 951476732 194639713 837480564 548286549 734453768 965220375 980790630 943327264 952303481 672235213 871990885 591257572 980790911 894961285 943643516 353336178 436144415 627226314 873940479 157679578 850094573 685158862 704388179 177687168 288550603 66431079 102947385 760682588 803393577 687301314 738803020 523620058 810803500 441752330 650666974 755241394 830074625 888449 976846988 521384870 674732278 997711418 999179373 38856325 331292510 326936558 467096486 341057063 886013450 120907014 497041983 445299469 546778365 743108298 920549757 134448247 985292419 172181647 981944402 384922739 496045557 643634496 678352153 861602685 904944340 984760259 993233093 929616802 930372813 535977335 797793379 621286445 963728365 555906161 981227483 268261575 290756052 579326553 798946510 926589553 977379270 229317173 243058555 935496841 944431732 240044296 828936745 441690501 780242986 911728971 987546572 173199011 276196709 76809592 528358591 682455116 842238520 468043349 528608158 437419629 749255672 423249328 636580672 422672522 903356966 695745120 758880336 238839506 894860909 472589019 937861345 957710364 999767302 77392986 775564545 151267412 298109442 493559381 766104060 397860825 601682019 197403917 212498733 253570360 866383688 479215750 618834925 903988828 948229794 160841490 992872945 83863552 300109967 621888128 771510489 60425973 160053432 872136214 904567945 346584894 722211930 223376363 447462194 145236031 963410068 680632445 987517147 813332787 857303175 224931793 474969975 57070161 72048479 23669491 487162281 347506807 690962246 103332230 165453787 292875971 348564351 429434441 834713140 554411915 707611169 720548570 723314716 478120407 684141177 754768384 897854678 238811208 424022076 899924508 943224288 72701956 622364034 25363994 608627833 734622229 960839791 770153078 814702351 673937582 678705714 563987711 710362748 541866810 644369961 608598101 847624518 155195389 510020347 387183724 671855368 202903749 987200776 755237925 862612682 175034338 189685299 734162108 762540766 344355410 789667887 204419431 675421058 206583606 238501698 46423288 392285848 810240887 984712526 468546617 667178938 908264360 961477502 687910350 904809517 208413852 584926724 682262201 978302789 92027400 244348052 788682918 958754005 836926404 948224781 115947393 691886679 811687667 976813810 219376178 244294232 368094136 739931049 570577532 991606987 268912833 530850649 212416899 321346762 471496169 522773188 620913541 800022985 561885967 709675204 440050247 974765701 776097761 809061540 597191253 624610667 43805562 609727394 54015362 979485207 301587167 879201415 786221305 870452784 720684692 726448199 356640020 766522818 990194297 993067863 574912174 997163527 667806868 830556682 676497339 730381571 758197463 955979880 222566277 316783969 727413657 856627355 528115850 816330714 451063791 935447631 734575995 763635432 67989583 975280505 332625392 953102365 217090854 350603187 404213374 607713480 480508334 683425281 865798724 945184261 958078718 973400950 379966854 960862992 678663565 876617806 434077577 626963797 705632679 974662677 245048380 851084338 472227632 871248839 180246968 719377902 774868609 834092572 332881304 752474710 679535235 974569150 454984878 714762882 484064214 546955711 305183494 344617968 197771852 246468199 55352018 97823694 132060081 684519580 618471140 817231688 625685716 715490994 406576210 893553770 486641353 992279133 848470491 867286918 76882621 453134492 529680162 827528789 823582042 908164320 803492159 858239071 667821418 783811845 581844870 858964937 225039911 464575023 543240187 990511464 388620259 600373633 491174662 911671790 786250567 819961357 778858879 899120616 57991343 967967358 370091380 941225229 156948502 492593403 16144053 418041566 906487559 952322070 64650763 80264388 564955357 741863749 803200557 869368087 970031921 973384709 944835180 965977172 538600834 788337251 39332021 174366763 728330726 762905358 946893656 956354887 318539923 842306478 196786465 366397882 797790538 950900235 846468211 993764123 578168629 972636695 793043474 930579563 931114631 950736736 48458846 256100224 819716570 856677935 814235450 836831198 383197 156497350 658324258 881796541 704229316 743110279 605679479 654382462 225550596 509920078 417518692 673019011 992557918 993089973 183584741 985522547 700960035 745667282 477528638 809923102 577288040 594826727 689956520 819034794 168416198 558151944 691383433 695726480 709081746 833438133 466256833 685621236 947172943 999350823 48064820 415386546 480022261 659408448 757624975 819527168 49828253 211762186 72111192 245445995 270746007 962734030 36747800 48733768 750749403 840017379 152145361 906915352 740626292 955792742 832167864 907386289 423870961 897484442 966819975 981690204 716225790 978462891 214799742 981098638 970591415 976480465 408405088 526480056 833814105 990447940 742861442 900747483 678843786 880568937 992126947 996463399 693195761 944408082 635968623 705954843 733433827 885127809 684403736 685001842 793580310 829722799 104605299 899864005 735469555 822481087 767309666 874418960 225827812 511281623 441951734 586853193 311784524 903558628 690664602 772346285 755130411 909798490 978506708 990997963 969002939 992575338 532573135 552255877 213489061 259807184 600763945 650113472 357769431 997495933 400423200 474037010 228846007 255138010 264944290 391955020 960315292 995547925 426441886 913954647 235395247 244275154 153453445 395947761 542696884 667307429 183711498 374652880 335077628 459943710 385121700 912506375 338330986 532690098 141318589 716039990 134169330 149871882 59701788 318858993 872881085 952447918 380075583 974924779 741309352 801844029 831871406 964904100 267896035 552049364 181888232 949781562 385561835 981574864 100129564 415687544 699035353 807802771 122409187 592730653 582480426 950119057 223682889 690774895 388480523 611700804 711412753 881670980 351918607 863507903 891385328 915657029 985095222 999344757 207707631 948341355 952089009 957976496 455294750 772813509 960230413 965260898 614507286 927906218 863785254 883125666 143892837 427173797 258177125 328267064 37981491 593444822 971035350 988724063 926849610 956942119 643051149 692511885 316604770 603599219 785919462 992217056 540327839 594419945 166912375 372862396 893449442 898020980 28217547 154899621 457851738 792507282 873229550 919277186 186979293 324575051 798145270 840655559 183920290 366539249 384734891 677195211 878300928 963316890 732401027 964119030 380183900 828897323 888457092 889845198 444672611 820337015 302995784 944083856 114799221 333303875 199519959 789857450 407180195 752426858 773006071 836505564 747447120 889444076 385512166 674527812 485348480 728073771 584509033 972690041 574498737 980595507 108554408 547799121 40285376 352839618 106140638 480096672 921651986 980894970 826841011 896892857 663079799 763948304 345212295 899715021 532664994 888369691 444398813 539615969 406295057 441379238 588059497 797609393 442542799 561852409 313926672 583675422 287392979 515601094 594921143 800285888 208955730 541107933 694571919 985264176 73034056 689037277 326217585 636476669 279069360 768066961 523934735 961974272 672538653 827439396 539104904 763046429 752955001 892108297 582075285 916772922 820888391 938269800 385635524 956448108 484549006 775786287 966023328 999522695 590745002 943352099 649458468 659963272 926915694 960064904 190493683 613670013 352796756 486802191 515017554 860374261 867619138 927735734 585075962 587950378 89744717 436285227 669915267 763245332 619798322 797406380 729851166 754274347 834811415 847794824 914157188 981997130 531587514 944835851 805601001 982825781 87417210 794178756 802875396 844022836 298293684 606478135 605967139 992792411 84203453 741550696 174196032 416059473 732760217 943288359 579173895 823263892 569140509 906604315 360071966 509572673 519734594 746419071 765243829 951128217 631766860 750084292 468643634 804469018 780962705 977458217 712322662 880571873 777344471 893706022 18200806 333793166 965731613 985798436 322942485 409805086 915886809 961465225 124639575 257733076 900782800 910979477 837825352 974373724 128405202 992426074 423364712 503887310 642626047 861155753 168774950 991268487 445485011 775498796 140263031 228759765 655995120 926301414 499661479 504485292 110743803 737334308 9101008 64458560 958213888 988352522 17231189 948279870 635092030 751769685 513348150 899727626 122235382 596213971 152800152 304039401 246041854 870172852 832837555 890018604 461557486 828449110 137065723 464185868 615500355 778678495 218226202 835698560 787824795 838102275 28373481 450276703 649580663 917813408 414164672 698311728 520649948 638255450 251506565 889938741 972311702 973239043 74597180 992592274 119493157 212817638 723697506 782921584 97164371 508902755 495203716 890605484 960140454 960489486 715487432 937385614 124442310 553999374 76684598 781296305 71719073 576861199 538292144 583090228 68582884 155645538 40537700 721870572 741183856 961673439 390555484 675681302 773727507 919760223 503790572 929156338 890574267 946438703 147831209 733165262 457596317 724503569 439349666 734006199 875803558 963558517 531271409 731494646 201646518 262652626 892666411 894368993 968011164 975809968 604843889 790967072 347778938 352163006 741916633 979153336 941085379 981480768 440393957 464399693 575820710 973341039 922320343 958273597 458076531 691725767 707165384 886633507 970275912 991747518 932611035 969478911 805669287 863458485 465624778 570516387 344321952 854502877 728973642 822225419 930276377 933149741 997526338 998417609 994335871 994634773 566911988 624492603 429798684 610446705 242778239 848930120 970435603 999165240 543363840 719690565 926641484 949293718 716740704 916843001 471875672 987234689 337639213 477071994 773850895 914109569 371376522 558084054 518361578 812747588 712082200 735871428 62102741 611471978 833555447 993322026 35619154 733729319 245036222 756929934 588655850 656712880 691914949 948537911 303813847 685669993 858431312 858755230 775894173 981710201 50601392 65487945 447138233 510412545 660987364 864407756 82309976 328164151 262821181 942206777 915565625 972480199 153280469 826130266 72466074 740163180 374662764 519536233 770334374 786763777 626943056 645773035 329589142 906164095 958014450 996691276 57835667 296935163 787279124 801258866 171379577 985845557 417587274 772127516 727600558 829674482 992198260 993654248 671087555 979900051 954200999 995669631 252964501 453675480 615248276 636772450 84025350 807301305 238087816 494369857 892426206 899529947 218349808 679897478 684906870 820505548 300085124 921683929 228835345 942777449 630515795 962639572 185588821 386577108 239254560 615981333 20591461 216228669 995822219 999986171 283982707 632819306 866082655 910645372 647584146 873516849 192040633 227959584 730452255 867531663 892691214 933222073 643747407 662927174 867110292 957785738 902923325 914520915 491174259 802938289 727154778 925924430 170095520 251724662 562581104 938682787 942450493 969584960 699590929 959296546 935443198 955681940 338693965 809840045 731011179 873951666 816249795 849850776 908310504 944302228 652271599 761755201 757330131 952036378 47458007 326844528 235662258 924321431 323213161 849779293 416037675 995551346 946733848 987013623 12190854 456421960 766942172 893378998 812507375 900530894 30698697 905335792 484871592 515494008 314948579 841014529 279816336 889871359 697731119 697743788 114726916 626378417 162764110 994473910 551008221 979712060 61438607 614172220 416089805 943729887 980027302 995115015 257188376 330046326 465629015 471623447 558722505 763906017 873536676 909416924 100808241 844539236 918032304 977156960 855380693 911219885 91531294 264447816 79380613 180615481 847597003 938745813 385673173 758500495 416572584 732672522 120367228 316125115 650669025 965517617 862327009 947924307 306240523 389422573 388680495 392355857 871078721 936865765 826333640 902030354 155688097 950051309 998289734 999128558 694196013 833951355 955492347 980356546 647249815 869779306 59662535 722275301 190424021 579010144 961892001 999476101 366549825 796677015 725315105 749366924 647592424 885244764 164275747 970417087 787276517 830695042 54787969 574938958 476463786 652658166 122057033 862729226 348059549 927522827 32541709 948690550 689545284 985809216 565317860 987066052 291773480 976368686 622612554 965121152 56082193 766991658 731641367 873940393 36499639 85989480 187574800 431160037 256461298 292796018 548882985 575524714 99477382 849837360 412315560 874000510 912063360 988278135 274095521 906523455 291509851 611967200 535365215 975794258 330921563 468113383 491677614 932176899 696152589 943851809 490119787 809569485 862219993 869114039 561119465 952747739 183268809 509522184 948886397 949840184 103451492 229476166 43520532 613077806 381250607 414562193 475285215 694244467 123741990 886827706 941147407 956177164 779452977 788059033 724539769 823613140 458246003 963025833 889009671 894545705 681673892 829514926 938179386 944102471 929480383 999297572 816818251 891770384 860637115 911706612 157922474 402077489 160624790 851174112 93269821 713662791 325353683 625663216 488842900 694984294 297805452 440995806 928121916 981294927 706736054 836026968 395388590 584867355 656235535 705278776 525910862 576886287 840886471 858500236 633618825 714733789 804609653 931993335 327076791 903747976 359022771 730929645 952579555 969805847 510616773 868143243 377251722 649593545 22208758 624566666 968839141 997347380 817881707 880328394 136126590 839488669 481803461 959145904 368929816 423499045 399519556 685673032 886948385 965500330 684518136 758339664 747992846 799195407 665485805 883162490 369017281 856547922 219499392 474122801 9285773 709314908 243149311 831540127 601302429 847809812 274804800 368261792 113665687 898938177 106069880 331261966 623408948 851903599 272346188 517672876 408094594 466491802 517750276 558941937 606032140 895694809 188762358 311629221 697329575 948721901 402959903 954104162 942964995 999421439 311659719 486406296 644356280 884798998 271586669 416518708 618346855 910294645 476443742 751940505 974464891 976763337 511459123 553231446 67953798 499647816 282691573 383258542 922074905 947598191 387174968 492481201 892854122 928176840 678324714 815952112 965807697 967620316 680754266 872145330 737362814 813102584 931783718 994547269 489941383 748294338 949231722 959882382 203887184 396757786 362502433 679295972 585723276 832358557 544085435 613884705 92075559 950307183 20788436 107278306 887933766 934719661 699528687 804819363 433154991 747285115 886606729 917455113 16970527 68040922 610229822 648916863 164409115 289505198 561041496 598727271 813204342 941973729 696344894 775722147 856000785 986094179 503216318 791675624 30198899 262779339 862402827 962278453 641996223 755133226 748977921 750905392 894170639 920934170 169101716 601427943 39972133 867651958 86797077 910513714 728491155 959902929 99997058 566075876 156819957 903250424 407009914 911968557 531232685 760126191 820729869 963274906 312428031 932482026 739140695 992630717 153088810 586330292 190653445 355875012 366093137 683423535 439709626 539397759 940657036 948541881 337351080 538027581 887609224 900393980 722352906 997095113 448028804 455996470 817816364 894371869 553950173 984334355 89187298 852405908 340073088 904727048 11531744 402560103 52487909 249382972 568584365 710390787 549187835 945935770 337269228 435025885 375819993 391800843 616851986 899052962 922935027 970562295 699716404 730284352 955068518 985130832 130279304 974497727 360140747 682670524 270974875 409037414 152402188 408893879 799662409 988338525 784177794 795926362 453118316 935004314 628320524 829941030 453495555 881250030 216966396 415349500 343744632 879595219 997134860 998974599 46823779 907840457 323622781 809416455 779501846 881103271 614872277 719351329 184205608 430260952 969553381 982400591 101351448 665195195 266726059 462115765 358798125 556100906 169498015 639706775 688136854 700579074 894513517 987161124 341817245 486337513 298627295 459739987 64600322 341505772 135224694 407969290 819553064 871952599 167728499 202059665 927353385 947430066 422093785 772318323 943836741 980342709 348816143 656807912 178852626 976997945 987238121 992361048 652550018 676697998 807575846 903985520 664221828 917345929 819180359 938607801 439315456 546430496 602309264 668712409 999559370 999721382 575058383 968291102 148218109 770522114 70596363 891389928 665382717 677419653 295238814 751601880 44496305 990542518 323199292 756557572 405660886 422498625 635707698 648080425 544753865 824387324 417501034 563789389 610899599 631048084 12715516 82815044 695770664 898244674 921962997 950255204 817048130 921226041 338168642 381956635 642154679 652556430 222822883 894891203 736823864 922382323 277784353 968558086 271284031 943237208 339163858 425810460 176963982 893650651 385691840 460965415 661937666 815074850 984419288 993882185 437412360 838484564 855144955 911328074 969396247 974833605 959623673 987738428 118474215 328817241 459223346 676895564 310111222 700124931 8385102 470313277 813127644 990370952 625923665 658473155 62138267 840809903 208591583 295738915 722340425 734662994 6639343 589842822 561223094 594661108 207991671 812187747 587118895 817654937 521065245 611787112 493275825 562789251 733893682 979954214 386181789 443790821 510387973 635618163 13865498 225681319 21210461 876276770 368375891 937400866 40250201 300272092 261228003 657272918 938285944 959785410 324691982 419095237 40592779 267993035 451561739 485626116 178158974 629699403 621530983 929412265 383652272 567880531 243862733 721644489 950091908 993162481 483802658 726747415 657737654 963530085 511723083 809860639 24915472 429687715 396839197 990690065 166487458 673608191 678712906 689637442 113741054 321021141 142986806 224700520 905365938 974370918 440054540 543819793 317639399 328065335 338499828 529484303 594640724 604222980 194135915 712017904 470193397 860038307 444636919 510325906 849785374 987445552 919590678 940728528 34268006 223284898 675238208 821521781 385475566 971252071 520169274 913768112 776815412 961491876 140136461 464075641 985659879 996179888 182920605 515431057 332770129 733432315 579845879 686866117 704600212 743178210 174408670 626168403 484698974 560001540 348297370 721342642 841062230 846810674 111345471 434553623 63623704 695664747 693969988 694586174 123413561 379528441 308180431 413645731 11134543 974287176 379937105 868836588 584152187 759730513 710311565 762662383 964947165 992889155 80258767 500663267 106241315 708678119 440334523 882692913 45744145 744943139 819970944 893761229 413775874 718191920 472727884 503235761 822818869 846940816 405355849 443245286 446403839 706121677 871517845 960112880 264304126 532504971 729574028 840383617 999779692 999906190 482609810 824046998 162493060 878554357 405584768 821772089 660498535 767667027 814950933 934635914 561674597 650558693 248456427 413254649 524016879 828681929 702255219 953148624 554986595 836685322 92755419 856618032 785336903 827903862 698543329 893433581 968396844 999671787 307738404 963311182 693592927 819988983 726496498 934089678 612452808 918943384 155924809 389655245 723357319 989604018 13909078 964003611 22598414 884203518 77518549 842642990 357248202 396765944 138476809 693910338 151922712 620569030 153289226 997054733 631362369 807474037 904580974 923831422 465333853 770707790 142254604 745116148 758052554 903656865 766259131 856403060 109642545 679491350 349276764 534482584 973650459 994156188 473916537 873940035 641932098 762592690 703333898 950378818 496897049 896045516 191713701 448344150 530573694 660757171 242483620 397825148 845806013 885167197 733384435 790958186 431225351 647971358 51671521 466929240 493424157 524269146 68517493 671293083 977129538 995327476 882412927 979700105 766667454 837993861 19380445 747775871 321152422 556637096 966769181 983251296 105730510 550254502 455109382 783888567 861412152 934898837 293421583 790285588 111869647 165143445 312730421 561243987 218277863 652812854 425122603 711843085 802255011 859710453 708703789 737643980 853599606 934308712 22096220 724305099 489732452 634656196 246386035 664963326 323536824 748794369 34599817 901484192 697359837 732081725 756481444 947327978 362936974 692093651 971231707 995136915 916787151 926523046 311156899 538375838 788152067 797162064 208548221 993757522 924455454 957437008 529705583 814045732 760308663 863092103 269139777 586804327 319788494 442054789 858952178 876864571 906400225 946555728 944605184 958701593 838268525 854589052 896046562 921237045 573491175 738472044 941532317 970214139 160399896 611579658 276141427 389804107 783069737 924983505 844176582 891678019 925048880 995878812 216349276 591694441 116351067 614567791 863188546 994220071 452934883 971932116 419351975 457548383 950228081 950391840 323148217 401640630 101708562 460963480 710780895 786714171 30783811 319651835 834898081 927609918 388340699 687581481 716007272 913470983 358367500 425761601 884235239 924177820 16921197 695011446 274787102 398114887 969149185 986465680 551238621 860996687 253931087 816217092 335280554 769269094 798711457 919705316 375693699 411734734 473292494 792258052 198470654 774525015 453754216 769261256 838132339 947913329 429253364 544811805 351557217 653518676 686691352 903379986 24793112 664251706 800506450 983356252 872133795 912391635 102766810 545894624 794005404 872322573 249720363 969862270 712415419 842255193 854837406 996958394 189703235 391025186 179487444 232374618 703489223 843781709 779609052 883676799 924027229 943630558 188522789 294726451 294323297 351821714 266874095 690451137 471066746 659072154 927113161 938394246 556532080 968234166 184287262 869809262 260480045 859283395 497388832 999528169 678622109 718623039 969556974 977654264 836849524 935848618 566071275 588937155 662533309 860658271 576872718 639975690 178765084 949706275 446852163 474452107 818720999 876257751 309805568 453119175 712957414 876041148 808956618 939427810 802580675 916712604 381063824 916769303 632696913 847281560 186509889 507779429 423532546 889672985 313394912 611258492 840233296 886386297 267265722 554366194 294885461 406360597 524238361 707445468 23434832 392246574 35422023 59350361 374018762 905059526 866914326 981875105 235976423 531059990 10139411 726330179 289478925 587655946 33284415 141831836 673830715 768892144 313601475 728575667 238594498 960735106 97543020 664918822 81582027 792521875 864395072 941001167 729769125 849340096 638872121 649390632 125598483 802946434 50012838 638974582 455482205 690155697 312183129 826081059 977061184 989102620 17745813 51767841 647728931 948026744 261135782 810739909 880186111 939185765 940671896 963112237 68419642 866918930 340151691 501310293 230408631 701584054 753116935 913041461 232438200 763638335 927232476 999606893 597779155 962398995 664439795 703766257 442321977 568844096 455649081 650153206 286131887 536415948 500293227 869126473 590877380 646221019 199044332 970006052 923006429 927161432 662384549 711863584 84062523 771730642 235075049 529226187 93927244 832502605 745449170 780850080 887999155 900649959 43401236 449163303 939502605 977688443 404296546 888720600 665774125 815515596 707378159 753853731 500396628 829150570 545920441 606509751 526230543 898553371 848587498 962808598 728472716 818677826 12909258 58033616 625940145 994342290 106899460 361094715 206933678 383741281 233791233 929832194 354893000 607999799 9617385 194475241 882768685 915253772 881575890 933810715 170114884 618132211 299836955 679017431 492578388 749394394 296847513 992320924 595964297 640923790 251947337 961707936 941700374 981670510 770257686 837436744 965865418 970359009 86375255 212317419 690346392 692286859 360721803 890275969 693965671 759664825 561675972 929657060 577546964 870666261 854150096 988659147 104842815 149378607 523486241 937584593 685803661 861671928 926105516 932919396 44275011 325560605 98503450 705811158 751319103 825021931 847286392 917199123 687555658 808630797 30000802 222321745 295033318 742215205 218418516 753320210 614849500 814833272 543493760 896095128 272006165 349508662 124523752 843409549 793151193 963933048 579289065 863078883 570412068 862708544 642085545 761480376 544672443 902197335 309086619 758128932 703240267 732875203 917778215 994096712 124880494 246273718 446798283 595955755 838903754 859749997 155511634 221550594 592457886 858595973 116527345 191392421 608508953 669939951 313389195 337619814 553353014 934092360 167615090 795908302 899641104 923564393 45201062 223042876 343572222 830262827 327418809 934446517 860182270 988386464 716976582 881291199 816721647 863483003 893920759 943279299 408167822 582050143 693909928 820273152 464113593 592972500 418072464 744378095 914486002 985718612 898576389 901459240 894953727 901071683 83348063 202770716 283401346 701675300 569675416 959371404 249387047 587267077 411508442 873835997 699165127 754447898 985947034 986771098 622655549 951601012 167575856 553177603 795448269 975210359 754223681 974073179 221282767 769812810 850249406 885294458 528424868 586637532 721829365 974896389 674127664 794655615 548148762 667307097 373127924 611792667 389274621 630990549 924419038 945474660 240008180 682104095 479482622 991280150 212258124 493645811 76772666 698715878 617612405 745563404 301706077 812813983 417299839 574829208 697618946 698349776 195498275 538107892 547659240 761884115 687573336 979519664 905175556 958019387 110184793 156075252 929059596 953373175 985174681 996957217 152638048 471041675 695361414 789312437 22816194 680651697 502331180 561805714 582889739 710454102 391294662 586337703 137615094 962285871 758883903 771982712 11547185 179540426 13098481 927987222 432318011 720218743 792922737 799617635 51356084 170133880 439981649 607904639 22370717 167290740 529535166 917454183 366602205 742401073 932713558 980095505 289895620 970596178 812789047 842518588 277840906 456096962 827468572 972527244 533150201 604458242 456962664 955703023 805025005 954094490 800093969 988078675 59672488 84399665 684016786 881695785 754911157 817190480 787522513 949025229 200300225 794064795 843535043 882422287 966628825 986573235 598157508 974463696 621356515 709808331 583138339 792857452 432261231 437220723 233377069 469746451 127487480 294062785 849992474 996627492 498603355 545354717 287222163 390623721 868437441 891500235 193711620 987054714 209305447 229414055 79590204 86987320 137033390 190341198 416628256 560711640 229416687 496287221 610143057 673131184 852897570 895473016 390057856 519557320 541220560 668988956 941316674 972294059 111248337 513532202 12068388 573631360 229967806 271418480 43240880 507697892 462319589 555491207 691184246 811030392 165853688 270842098 506085251 550223700 635545744 770100179 344809892 453171709 813165014 885391976 740083386 741369183 453281481 515230664 636323208 886552757 380796968 696802153 601760185 608114503 452742400 463172866 14702204 563506055 986431035 999979244 456447504 771546129 377540112 786051094 574074553 654662035 719999966 996349809 724995588 811483518 412521773 572552255 163163452 693293438 227079274 243058747 541898082 747268506 288048416 658262027 528249718 760129906 811553360 864879451 126329172 326366941 606187119 743869526 887031427 928527787 241533820 268350762 31449085 962713907 104466600 132947525 750754720 886835651 97741239 546640822 258170338 392132994 498568564 891482966 104895454 518893910 643084710 692333041 807126219 955261168 934722132 973841823 302301209 776345366 784545805 815624946 198894009 337828926 101965326 426690498 85724203 837131251 9858361 40493911 77066913 670581425 167235538 893922751 29828866 211659369 223812948 681762187 268748680 573658251 116382955 902028772 497431201 794500113 126825704 567181400 314812200 557415684 779687196 936625092 714114420 816343026 760927972 896579424 319382247 820217804 64242138 749084999 919942549 937877370 249544778 337438144 83712319 538705277 380273202 855401307 334414504 834665547 659697914 794273688 456927560 552628581 118856555 504835488 305336326 496944853 549056632 825833363 959889775 990015904 796888650 893865689 715089514 758799737 201895840 572229406 932187426 971913969 70205677 564272888 137884178 409954847 291657458 555569220 80325084 469137626 987225940 997056781 798507911 804598651 618066433 625707733 68840179 532715423 334327393 917214996 11733485 143709654 352100138 573245858 746743829 854849469 849326393 985225813 686381476 837274897 124509874 432335895 992191127 999219327 16684591 100540001 382942452 837119814 940289483 967871512 518217763 600952426 427880257 953502967 295312839 527110367 421898660 697662473 53411518 339343925 410429075 645634258 80672134 470836394 191001436 415254636 275672313 757783135 99162922 975393487 220533370 861469434 791627248 799577157 529617284 728969217 569457842 904107125 496101594 843199193 722082671 996085972 646263419 970249018 407183195 710699548 530404191 852425921 323772017 740035655 678043747 769711595 769738221 903297384 648736293 900395046 509404918 832580585 64992887 737106193 754126906 954938054 985704046 986575983 617673495 975729303 678107551 812910388 449437915 886233468 444875275 607030309 858744169 985758801 693755511 876533833 498333202 695337103 932805807 962645138 211197410 229473046 369850609 433973262 713650587 764230170 779857406 780106883 57601524 232001438 507941103 887777613 787645124 910651894 195293430 709284412 452953039 668999329 290614245 302454682 25025139 449154469 943322505 947077256 875323960 985159376 436243147 961690802 402978055 819208666 366380518 960595856 781713701 783164614 784285478 867506999 698010124 752602959 174797140 861759200 495303793 830592982 479053762 560538358 182056080 975163390 808013827 824739547 301463069 798590932 234878761 433270620 692657220 871454072 450867201 453975081 938522208 979976705 755012864 878227098 166473750 509312979 405105314 796134399 834462561 852983823 726515530 826327503 660477494 912142690 170770878 229331013 14457114 817742027 571911302 784378525 730502465 847191687 376616385 889919103 518412178 896256433 788388500 881889232 782048653 991466239 165049639 708787496 50140880 237784513 326684965 960828713 733628395 866744167 657068318 980066651 704575814 754934522 915514734 926352650 909897316 996710766 209680808 237575398 231930583 396458113 742851510 840125056 796250811 814428130 821703058 839929110 74262459 445775513 941220342 999844319 473818436 569307529 268418663 592923491 112537765 345832179 7781715 748027339 555065819 923646122 566989514 717822886 285989392 355492802 953836886 972029497 658310778 884713418 183836513 529907833 921253909 999195986 224117239 336642263 74423247 514964303 746337525 829152410 883395427 899596963 968408796 974881894 4621454 626766868 33767342 503735904 325884562 633421371 346428262 444624352 621371359 758857136 945570615 949410764 633291936 817123682 931695040 962068699 565783033 891218023 731363180 978496017 728108388 850793328 180275696 391187100 977633757 978409329 505745965 744763861 676523827 936223340 576701546 810339699 30999906 956320409 937492746 948844712 913164030 959952401 556379522 947411294 850424027 913753909 157005461 476461755 488597913 766317175 403069766 424121438 783108074 858624558 756760439 838165155 301489270 578578598 106233060 569775576 84631354 709378116 819566390 878549611 329261499 520021249 741303434 843761102 546348099 950785978 495570211 775837452 303377170 571199881 629022676 889398844 611611458 875239722 71007778 329373894 991688413 996230050 156609924 724802580 816081993 873899563 181692315 961553329 138207620 910943131 532872664 675687791 964092513 999952630 944304725 985567846 183871368 225908779 375695541 946051583 223196966 455639202 339549929 724763708 85179380 920379248 260846706 455520947 543403156 550537782 321213368 434840397 165981525 663053251 486399609 759002997 93206343 939344853 669639153 870830239 624597346 895749512 758775172 898727256 845780581 878267947 971275875 989628292 747602579 872963127 330255470 464559652 305526598 991945355 262580116 978998261 96585633 260378033 133200744 663673057 105634696 183477006 362438201 818973696 62268023 270682446 700038745 912124090 498180240 690889795 444179961 549183044 47914751 186168133 532027857 763531249 532224247 986565610 938315836 943321928 131317408 300831535 201808241 815295491 672114664 983864802 905687075 989962986 310999071 598410008 814867677 868409489 750875965 932216854 733917572 758001564 212653381 270094052 926514071 987394007 595876391 669866281 267248421 676963614 364860916 392934588 435102218 472000451 487567872 906134985 834214711 940337809 248082642 959835236 680844427 804390714 307530740 308220349 288403794 671615791 687127914 817904873 630935554 690108543 226708653 804778844 742370315 933235649 103106043 579241578 379291625 872111644 884915380 907566142 958091171 979842248 886998139 928087258 114986168 274205739 862695919 971663660 888028594 912634302 846050627 927314894 457042115 834618295 489523717 662005633 214312426 862752836 919051907 960979214 379874340 578276265 771415562 798781952 535859288 995532625 339879125 716525147 995342357 999094237 939339305 976360932 960654934 977407917 637540247 663448297 586973253 836861677 803945660 953683039 173859535 610597345 214545989 759462586 838853575 899325850 145676397 722252555 168446012 171253484 702607096 982768611 374809357 675896378 405484723 901103449 407467069 742623360 715609941 859815167 85256647 565757855 998017715 998061642 408587279 468465345 790742092 908355879 224392920 439962938 623267577 913923540 928557724 996171682 522518330 612867171 79433895 185248511 544972072 680023146 27770502 66793484 971795798 980347677 162594586 788652890 488008654 976023964 174720103 949793175 840044850 924719873 772090898 923133281 261166818 698302283 256661234 453773233 409292216 450369349 232994933 434477663 343017800 877698246 622241065 826244284 793748086 868349585 923116169 933471205 885333442 977879997 835457787 996989423 812783340 909648765 582808697 752806239 674257586 835675668 797601179 979174471 355115007 861433164 724160517 960569752 734653210 753199399 133914127 331348173 85537522 759707809 863455075 923640659 174967119 219134487 363689397 873802073 915793855 962789638 634310172 952784647 248885236 357152180 880552158 942009801 111857951 444654697 277530750 786409508 18915387 186272226 94082110 597444952 974605924 988005657 364826359 498765060 69256998 272541426 608441208 904943696 680239839 869753883 507102890 522018111 488024962 968830146 202321528 674081954 158078433 879420629 920536758 954353857 479934681 678477650 754867578 999453025 95123944 409965569 932385644 995563251 355651102 672172081 759925600 930016867 507336273 538741514 383046775 841164891 239212197 712675545 164267994 845123074 650126844 864737798 325397030 527894643 114238514 375565089 949501861 979394222 99766613 785559527 47155417 875456465 308247202 317905272 99175017 279229130 712955316 740659008 580575264 752302381 198500415 319446058 621364241 918920898 236986626 608988934 440766437 698403980 140203205 322720114 100618785 908549670 263250832 342540255 652571721 749683269 768266818 898343912 88124158 656265196 926195689 944440794 816724025 818630974 712108394 876915801 760515121 895750052 298843811 937963762 546323988 874015794 630087005 890128501 52291707 503124195 999326938 999470392 139834244 203263994 497674536 627408258 654564161 763924247 752180470 952040166 270623357 384303487 886088582 977120505 146247470 377251198 471006300 577687806 375452178 848616518 26023970 78195930 4251916 718842310 123978153 580529825 759592672 985706832 647454827 999295697 152004749 176456919 374293224 633769691 606417596 954900444 956563986 958006357 439500358 551699180 385395892 935934305 619335351 825864984 863289266 991871394 197956666 793754809 524444989 542693623 296960251 483583461 565297379 870037669 721581189 737427618 562183445 570006430 652135862 773594534 324189278 562273292 560411199 807437976 800734186 972542335 540126289 957436835 337982528 503583365 520572881 898473401 230272634 925099980 481093772 827396256 125870448 937738896 109529859 982717905 663660363 924471129 736440856 797841505 142549386 415486847 392868983 746340727 881530034 969412499 10162258 833030277 88572265 530340072 591377074 867898306 350968317 863649041 103529376 611750345 287522812 790650683 137369231 488100218 502889995 827157574 903096280 929864358 437013009 785286328 851806554 941156130 561138012 657046917 763431567 821659629 851986994 953845894 912715691 999508156 630435691 839501691 59895976 354021911 981050170 989415729 59362560 79987251 373094896 887136918 539240241 825663330 569965363 884186765 590367718 881537378 84825907 704714082 560047482 636446266 59931367 153965483 326563482 687755915 807262014 879293006 589860228 805837867 964872853 999461782 273315447 683633111 820990535 880780627 164566219 886776112 824197833 857518416 699872661 779400002 128622600 556664764 923606985 944530517 959271458 977919601 208368510 989730595 723891410 914279974 584751367 697041123 108075821 977488131 711861259 901167238 853409156 934701551 8090830 665948933 121266510 765229446 42256716 819471984 397599636 815837144 202573697 628417642 176902907 283565535 416281967 835695288 688050732 973585878 690427805 883751994 743248835 808093954 211003056 524406093 589908319 859859675 157730128 480859658 40095119 495209396 426946868 965441422 773530127 994559018 544281423 905824041 867404418 925561362 401657175 785778581 382325419 425436346 530493609 931683299 504449559 775060688 273674603 829670004 282803617 757191054 358076506 736099993 436836554 966765529 260618238 835671925 965385152 980335757 371943138 651901879 660720256 772998278 132116796 565838870 400458898 854957482 698086878 927852060 396672293 514428926 26344191 220101545 237659421 843125173 910051577 913077548 303415248 820718554 294418182 491262128 604373 897499160 639004849 688738429 649072714 721446810 440648718 531660744 112223038 629238753 440487711 507828714 815557466 847621323 1738565 105194527 654052571 996918350 309858678 824181725 125677697 717375063 500136010 735807676 89238299 355098970 748867876 951914464 574978550 639866422 660797870 698089006 63273279 851178970 214706123 582936355 54567254 198318455 945843167 963914225 335753820 680580613 610367791 661247254 168136370 629246134 205830609 215030391 529567318 827022107 309107710 405253659 186300770 278983439 626144906 890007808 121493860 677511943 711122955 888648801 493766723 592053217 888582898 967014900 84381601 773936425 85345820 94675665 519368157 998635026 461925595 527850773 513521002 644420523 971554504 995368722 611207930 804448651 266971014 404878408 610793661 765600995 190177445 513212733 72780783 535943961 999187291 999680167 780980811 958405398 921194109 950920583 279671094 323945844 639671623 852859276 211640703 314676318 410108190 414597983 920435253 932749375 307756852 834011487 5192587 163462882 359415435 973247007 41916714 908331064 84340680 300337796 193971 504785169 223186344 334227612 710991837 842521463 941702286 944576702 91648363 885317622 448126570 598030394 507950331 772230115 882265185 958479559 522997400 707786021 738705480 762151143 121965718 944100550 243115962 715271509 9170990 326639697 308759079 559394342 97476197 967364010 684673635 826111808 276975420 585134362 380364635 606470577 173389333 795814135 566932758 888170007 537271285 750238070 490509586 515773567 944099398 991514567 282441471 521381297 583324411 931866581 976482575 985242799 422471783 833717895 969038557 975907131 711289190 912643021 691429325 935062908 393462103 503899028 554941263 891948632 416199962 987870968 977537204 992941744 916065148 934634692 932672770 964027487 462862943 505487745 164020027 178459464 346409309 730709652 813927914 863259002 664987968 997969929 178712239 804569007 921433050 943044990 46914783 157076186 583052663 792424548 389735799 713994848 139908719 921069275 111256307 479261200 908802444 918432099 867346353 992829497 292627200 910823403 760425348 831628961 118344434 872944439 369299104 972030127 728059986 853994691 752819633 881485358 951649284 956476703 607127519 635860316 748257616 956772024 943338358 979069807 941409933 969838964 295763677 689340269 876329504 877649807 853929245 882018677 858081626 998511481 980045215 980617880 605101974 669032496 11206311 198102332 489402818 649081560 441624115 936445866 578788810 845608134 930543537 988983943 428693261 431778620 439225814 905057227 635410002 920727150 722050173 818230714 771150103 905416996 271505400 751123091 861415764 981119972 190259901 407788854 154347087 438039162 576583123 631539108 188651423 577414751 602717688 614394444 853690369 978549571 407099984 636037326 902173427 928366480 404421208 504467489 309106343 837103500 908012444 954672584 895040764 904005936 598967825 636750854 533999712 843522189 213494410 797005077 925340096 948993099 835315547 978721414 642158931 853257814 490254327 998220237 75498357 199051711 863211197 986600371 719302137 879014500 436214169 783918254 350315312 892649034 970922015 986717671 490983584 500105155 436865018 890335339 798682462 849427377 851445113 992774388 106622556 778882996 886336097 935002288 557271763 930548876 358611705 619241962 149554979 685578263 833186598 860449779 435352558 931632227 169348963 291176699 188924393 642782230 881644105 947751591 34389268 285619656 829594996 988339340 259008017 961269321 326041530 956787919 835907615 972391816 368463745 656489672 492106222 824733977 90755220 796201149 469103518 829253376 865589516 959893109 796643591 819044309 932977310 953300353 813153084 951644022 440647799 987280650 820029538 956323864 812592495 851080934 874129192 988404767 502752886 908662130 981463385 992874154 747887890 904979500 553087875 810788656 441422182 671988605 798837267 946165857 925445334 938792137 456378013 510471700 574075436 794748951 858917914 981134951 1329637 220268588 306039403 936923135 172035053 755336374 76161518 353338198 42439784 475678454 699995613 716495580 639375965 699971785 753467559 908563417 682679109 946776275 441175878 612633671 88490842 377179852 504097208 800276563 955900759 994409967 39241668 71293494 868055335 987832122 769302504 899703384 678052543 846863261 147192729 327310369 603730141 630680468 913580591 938653701 286659331 952968094 741190465 762462111 41259807 606872319 842277032 945016005 419791030 721214583 214717142 795168192 22511035 181169764 919558005 926342899 383587682 915157988 649356742 848222187 772622941 885117219 155985418 906578253 604390838 899692644 67010169 211053727 139095066 306689509 290817423 361731180 232152998 841443183 936095776 949312668 962942483 964520349 681744289 761893582 688495700 840997737 363210156 509136490 37507851 108555791 985295878 991874556 768690722 858708870 545211885 546380179 76122791 784783864 287102368 721326133 999485044 999607741 460739617 772350343 316253648 721457017 530645721 560890876 161067916 356614397 226938372 668624021 919348865 968248043 83258162 792094967 235745981 763157119 86982478 174731710 975065065 982901291 639280472 899745505 681881171 870213335 346733424 664611955 63485131 201420681 900168410 965804399 260340196 466436731 235851908 760232232 386823776 448375048 982805382 990362651 484844462 789944047 821402880 907499349 804372732 939135617 318827325 778723839 458760870 928961991 821085004 942679401 989363252 999413571 164114693 211964902 591441546 895548211 641547540 746698113 321307085 773525889 890962231 907960876 646546398 909648582 677991247 710692572 544613224 882643150 133204164 860107861 721924176 898532991 586587349 639046246 688153234 832914106 952215508 997462041 833685470 895044660 402667874 415127857 900442045 959063194 791485831 822228052 568451194 854494687 291446610 395750674 995194795 997369646 200364809 736607592 339950280 891829630 740195055 827091779 965982407 972314189 833592152 961739397 560189054 607053200 179935561 421859493 348530531 684410123 124256014 676572629 845880207 979239323 731757541 937006662 253979308 856252707 692905860 966295995 415852416 785189551 303716895 381536256 503552605 737954178 880282718 935136147 561283509 963312000 562275238 794097304 271309843 288041554 223949243 997658636 737865386 964196789 550321744 752788278 586023397 658890059 293587009 821926988 118732433 442954579 959215569 971093099 869530918 943148667 315201416 320135178 265104559 856856121 663968034 968469934 656265142 847837041 199804011 673499955 507593473 695144250 263286478 917071817 990866675 993762312 304562530 647500005 252910591 435911007 677225775 845678114 609578159 671162078 639677891 883892660 468465612 775114422 20179737 551288668 2204450 954416435 601778974 854188419 854571478 910635011 994586593 994811446 917038710 951762215 139615669 803855730 139280617 353583194 232468816 959157568 34390089 305978731 224357125 510055680 892347325 976280689 512341440 972941158 234855757 891279479 322511167 979621937 269671510 717371703 752652953 988560749 893169572 981436043 525047354 632865337 774853614 850083915 40895962 651500065 940286761 978570455 34397143 584624972 315755823 891773258 92140894 656774612 551986738 942270604 357200520 370198104 293996013 773041184 460537758 610303175 623148535 709218421 562161336 858773918 755554155 764996540 775350813 875451385 751566980 759434612 840868024 862572291 956204019 967512786 190325175 355044360 730922589 956377665 784229564 841761901 477799166 767270976 129970169 340749827 798832289 998894272 133527370 153858158 92624558 914753540 814691657 946054003 506815200 611889573 170797437 704251127 433008032 474524727 362222825 672739266 571206417 661139580 797125396 958494202 10396707 868432258 631642321 637664796 978823610 984445607 198883936 322022650 244080249 319603857 333631337 829916586 408744132 497798356 949922075 989103512 156366514 323269670 441781207 461947130 58899380 621551914 814401944 899070873 256022359 536383828 227251082 509099621 839061082 906269354 93473345 510195024 281032179 965304468 738453033 977668298 304490808 633363922 332852925 439732345 635945504 828944126 340527732 797368573 302299387 982211826 365393335 839437030 723839031 860191542 569811872 926484374 797730867 930869791 778330227 875761669 240835992 938156044 316763811 435952869 583995382 973952876 181313007 292416776 487590783 960005246 368898059 731481764 168084942 178329826 194938455 954639150 139162967 472160033 204478588 255617725 45154958 338060436 137947305 160135277 433296837 602406857 143502572 896401845 682761867 696623582 480215778 689031334 836088216 922543093 571619320 617744077 651903503 910328313 952590523 975283970 536929116 767864556 644565352 763380791 805825863 868867046 844991535 872496443 5524557 411857223 100648898 832071616 48890675 574245917 950216411 996659424 846976152 942511699 530259736 746148465 278463753 939892938 431770124 773725963 477316420 584704939 117530101 954057934 124994213 346432514 178963645 873063937 221439120 782620942 156041600 407587792 898572221 917827261 159482387 226897667 371360416 904229739 154457951 604418605 705773515 879504430 896442785 966951072 703167158 965333005 804213826 859809992 136797002 472019969 389308531 866695106 111323365 663876279 341583629 928257749 874941429 895711956 491197937 899100006 871955302 902856825 405600169 691937208 105859056 509716752 102349370 954585657 592940881 644093207 960697593 972624760 722784061 779193811 394192835 459017128 408999890 927566856 32271292 482035819 127571698 387792475 274827432 599949397 462289725 532291514 84507418 561841475 194309030 860541819 862980582 876554401 336592545 429653380 521167282 670442987 700468354 941973324 118748700 227080726 168849556 232567209 309842419 667013259 138526853 420676302 878653665 979211644 190618331 486916541 167911833 420394730 987407837 991318490 423905893 433426390 479680864 820876173 260442681 890736960 675872271 916846553 83846839 376055626 331290064 726747528 229878753 504654494 313659568 763075661 671494108 882262576 491713397 875745517 320004731 474536610 319702720 668174431 573771668 880936030 769891905 999017096 38559764 866411244 582467918 589980046 73370694 429947066 20765387 515980991 217149684 654763662 625750711 702803894 180629011 805265875 559280431 575347532 663686636 984131180 161094451 770803786 602312377 863042555 331764229 899975878 82601712 155218937 71781110 673471598 122602973 589016050 795698166 937412373 475915531 707154054 18230993 99282935 768008532 807413762 830610430 890922993 345989784 948665048 350932008 665827999 860191273 887439870 997298199 999991685 763757612 889934122 751239107 981035199 347790871 359658721 59523105 336415050 619709053 872901591 750549061 822797031 909437611 929859692 598528192 932266646 263655334 514204208 854324816 933960589 190243198 218747769 414662931 935340508 69617866 663506068 269032892 611229893 246080125 896318694 862986416 933801402 991016905 997214067 181788397 398107531 6342972 270435249 95653689 982155051 891133908 923698440 265874059 486940606 166169752 636210508 37606007 131597806 432190726 771525352 187592349 769282351 507611880 982946970 384876874 550447884 664139506 887986986 390239593 781820985 140864789 542917710 769112666 826509954 860376503 973529505 829917565 972600654 577479517 625206256 873561239 971174846 269374316 855574319 841570631 843352823 797462219 922219894 408271490 889882510 937724892 992476973 770058897 838308673 328223013 704476975 987333796 994035721 221324299 910113136 681927281 795767308 46375184 203388482 652866950 780364674 774366900 978696874 682870119 725065948 682785497 950932481 968357332 995868614 429399059 453064001 869607561 915021719 798162581 807799199 440638639 929085361 720188147 912999309 583467646 957694644 645244560 888253829 803895192 812819751 45236535 891213158 38786044 943697824 484971979 596675681 486433281 615687644 419144112 433591936 572382079 630781048 143110806 243650457 566719662 715551269 10595461 403427132 617596490 755003927 864552902 937840674 845601898 923300670 871806057 971225415 382390751 522462268 979715423 998276426 12064919 522505901 559105452 887767169 632257120 698147645 373883519 736796622 97218861 686117352 634940856 676950401 115404028 779161561 891052002 955438587 549309267 886034067 402417301 440182883 77004610 828124684 479659768 803335088 750203835 757767764 579498066 631142586 982773988 994645238 587431885 762122067 362704803 638187488 284364390 628773945 315702558 872447305 223213296 635734384 26294360 101379176 413340684 585821056 122598170 502817786 63855737 575525594 124320336 959868739 1212835 744760483 640490031 809742275 620249440 637719139 954220621 960130156 101433582 900856035 581441581 992623651 174571933 581495362 467079227 656304342 64871527 170012951 52177255 474814397 697212172 842769804 347993185 556424307 572752600 622609288 870719575 949361172 154844365 619743692 605207747 884662956 623336042 905993231 554679758 586748115 209456972 267916579 364518754 479315038 268787994 997691002 61219771 907696825 644456962 688600941 326020412 699988087 123401637 463944984 310125780 729178928 218860466 485890935 429917042 940067792 474952929 557225363 168212716 713427031 559226467 728473955 436501486 470825938 103919752 299386536 733676347 844885844 610925689 885200570 807284019 809153887 626495064 658138088 226238899 604548508 446592061 865211029 158640613 247380707 98139377 720670772 540671858 663807800 999285343 999925576 383303489 916605466 681042121 795693366 238711755 827750851 637495094 859761821 627044447 948994284 195646905 653533040 931067534 998435000 51936162 725681355 294358615 459363895 934249949 990149743 76959589 167535691 243884941 367606148 156060819 547083141 621816372 632964367 139722767 524934186 841513063 922761229 833338305 836040521 731948685 950158700 123036717 327907334 136143139 304734908 64048348 745376163 663545010 951722324 207723636 814921853 403108485 941212292 564589152 704792752 560103890 639397923 61957612 744577029 473835115 517448399 838581752 846374825 326555660 700814382 776881379 781328871 122955925 147580898 828533467 836717209 22728428 224955926 938125577 970622571 437240810 924567991 157327475 593517038 674733177 770148427 865614024 897630248 670578464 759073505 328629441 475529013 432730808 462933067 442628726 632232351 41707280 650507237 350281200 754588223 30075826 352012913 815719301 823582337 401062967 506348401 844960315 903564172 334743802 431522446 418341881 835619548 419329247 978733958 264753414 976678834 677989025 679447355 237365601 883984725 324590831 909999424 277202796 365993392 612034421 660546748 938722122 973972772 196264733 315926131 854668758 972332184 343427988 479167080 98266398 972359639 467719695 978416767 82568423 903361780 9067584 356911904 282698156 566619195 454131707 637875999 144359415 536149024 577171534 890705576 324030210 482845348 802279079 950565431 951884341 990580299 270916240 595869041 211174562 334689585 449169925 952767795 412647004 479216587 90169581 383046844 352161721 471603981 241616266 946958919 854290387 859427385 568674603 579042874 406176918 936541024 289584384 877991748 228078523 523918424 942189097 942703829 25273344 68905533 327885783 788460925 723966216 916480271 511513268 909154013 259962134 738523841 663307875 750479834 205160550 241317938 429589778 583118823 949060887 986465984 131069009 556517616 412924357 716278126 952463627 971170572 507301715 560566516 99439099 945654406 753080064 765837614 125368810 785526684 343282615 812460223 483996329 525332235 3971494 322559630 252617620 401995164 528341991 840823353 321873027 376695169 673356935 725653855 257888916 791696854 868674034 924443579 102752299 283078791 45469634 107539891 64001434 209605113 107474717 689150524 797235313 832544899 366111569 947839635 148974641 707252754 801530510 944568060 75363708 646010587 241256811 396029323 475270170 644619133 974259207 976480212 967551549 984113040 39420292 954940110 921168105 953778897 61038996 167679709 249747450 324968249 354812346 801971868 772117461 773203028 800284517 918885028 223678812 492974655 610573473 925367351 42554906 670702194 30669507 723388461 300277315 586319572 444198200 774081374 945042928 949519753 88291432 818228270 36686184 643375445 591510998 756713140 911619312 978695999 431610776 783531883 87133631 289337111 6691744 285834912 311054657 392705839 679908381 828897499 294977875 713709765 216666780 652514828 845884095 998018185 536424006 548581828 490446217 889330939 587520062 698593985 411136264 519646535 525068396 537196243 852060425 935678752 591443325 803724901 629898023 820331838 714726260 937283581 804643867 926940713 58209354 406671920 270331484 362596188 835043279 971182234 242121814 266274810 179415444 196116522 244769972 643246229 285998214 996002037 61882570 824185961 58226207 90802560 607969829 663601393 626385776 914969177 645305016 739022831 959660843 985222606 492579444 507130396 308117608 882749258 764052086 801394107 529871475 675772671 810068238 874794661 323903961 567505750 286364777 861875823 206684441 295198071 502053023 813858026 356137661 470095561 283694733 727167265 455023959 866890415 261428924 603942649 768643457 784906188 485864505 977399799 567008371 799022496 406098389 428414065 41077684 182892443 819679706 821011775 539723494 892460650 332104723 858772659 973857076 991392523 365867773 650455689 794253266 960380021 146297132 699060689 617000514 757170825 303489324 754235663 774738041 944343657 497617660 674720436 853034594 944665290 882142349 985117543 280800062 672235526 467825114 890650585 722165528 866559701 414404370 953738405 739678289 807361796 576930237 918783608 836029898 977424544 621308743 965430036 60203424 94355097 430115580 506929336 880911614 941083796 61061529 108260888 597642139 885728745 101910328 480788911 887661184 922381540 274006631 503335529 76225922 621703141 544205298 864723811 781712402 807078987 736204918 820244486 809242202 999548766 744657243 848686073 175823359 486341145 339133049 675122740 236030528 514781770 429498056 612614266 509365209 915003217 539730927 556681394 187764360 526728737 774704820 960039915 644123335 994290755 935809183 977411218 252532238 408280192 686986024 830817922 117777909 982289147 748594708 885704614 573588442 999182414 302814255 827352341 985567383 989998340 476214566 549220417 226503499 711506102 294077018 744628343 769850974 957611587 903486620 935157017 605049673 748236547 136411955 446957860 540063217 694971457 954615994 969951370 187484748 574881581 508813728 768959627 198394873 644157241 137685705 941505773 96732826 326489942 486705405 606954033 844273973 957783935 74690326 177012988 384529238 520691525 150085620 264105152 683056761 904521186 169418085 370496791 261917315 306276108 451663129 532773557 626284228 677875850 841334451 866750593 46198650 123743558 622114035 787125831 938376061 988354302 499209907 671234682 578293975 606148714 257994142 577930008 173429364 363231976 738871467 777702536 608540734 848536835 966742896 974499587 209038082 440333558 390244036 413587761 896763643 904478275 337425 520873791 815486235 821953498 869597591 899640346 12069834 925082998 918700097 963681385 918590817 920469233 136690771 678811770 659320652 768000248 741123786 871091587 196343067 242662408 111870624 876075472 203675340 223038373 26421290 978206862 107970827 622567855 175142055 684819402 774648168 867303451 875532599 905988753 824057290 981948485 947817460 992646862 90754620 618240993 185275009 472788132 980594189 985347439 207019369 271535266 118736758 876616965 338464683 463052248 421715815 768053501 750588128 977406225 112966610 328478588 410326857 578940738 793055080 922348152 917711393 941806082 280803975 490052824 208295769 673951471 577084459 630636365 900003637 966384060 839799038 895572467 914911823 979647022 304419730 914283244 183770593 598646713 626287605 686921560 817066534 990116060 589989509 742893152 247225964 874383503 74381248 596991728 845341124 898948634 651329362 659842697 766687080 947916235 997564320 998406872 535922062 677370916 103873496 617119123 47426824 214812868 674710411 824917012 978447618 980190770 299668199 392185947 70786090 307712669 930734356 996375466 753615754 912916877 212462172 703470979 80680098 505399951 500612166 759115068 379397177 411435386 415557847 424827110 63734876 414891972 693147753 706794440 293701822 626267438 689613314 757203190 984502084 988079173 189164800 589578429 189213252 812462740 230607715 408460929 727433854 742686552 60565958 463205466 440884308 802050296 345283682 427816977 219805517 758560806 574843325 846223436 328318808 455595587 979521103 987264864 693078980 942063430 480475011 513125366 610535916 723106037 338410347 787403563 356928131 376828121 540904486 860197275 588710493 618798483 895748563 965780195 240891777 486162978 117608919 538432410 54381305 639096229 793167363 915939984 741678498 941502123 434539215 495820227 378717368 824465319 129491184 393651241 728918160 906320119 326684768 599437421 773797661 835308596 139292320 375512129 44764256 154813120 936526430 974348474 603736116 698578143 325912767 378696239 278826708 948288907 15933354 622509564 655573991 763064450 481793575 837554541 542075076 574435661 209872357 934053562 829293959 888267503 452436504 622948587 615730346 873607075 315877324 994246646 684525501 803996009 457858005 670464597 497027173 599863843 93643870 490138254 917234533 927540607 74277844 936604875 926378737 997725185 728118828 824525376 928062485 944285232 780824128 812908194 953749777 967589365 268237637 446559607 274411031 449721265 687328712 919157956 967147355 974692110 812284428 948389043 381039047 928681174 874846399 977085849 532365959 895121138 124496455 299536117 109252480 669566656 637394340 780371802 717488247 946431452 403428667 414775079 241453959 534877925 374530720 720271010 829568202 962591096 888982227 980166742 367595893 842720525 562450866 743781990 404194868 547932529 964258102 973848330 977724498 989665738 815933484 994045949 128574859 946414337 630169430 681506593 447272032 902329915 635159024 667887174 222552446 508949856 442614814 583514318 310231030 995823364 618927202 777308929 985025700 988578848 308345421 914252259 644983474 684721215 22196101 304853812 671798383 917652034 277634008 305774418 733409825 950879683 539006413 642686426 999576247 999858880 326774382 816798412 380563134 966361211 541012684 735597454 155889271 450476658 463708622 664235338 303625962 889697187 951052172 963933386 69557611 410453012 385169612 394873478 301834763 881978135 430183172 607168226 962342076 962473976 908177887 949887950 802557259 817429599 913674321 946471633 765594519 789829599 761280697 887480747 533436023 796582574 307689295 853814568 692570686 886599315 516433537 901126513 407039356 414142962 690268540 922832009 886558673 997806594 107115004 816636067 222744989 947307729 862872464 886970935 710092630 853102895 689612217 765731150 176928346 503189936 571416671 606478117 856455292 890334690 974111429 979361941 427783983 827123804 949889240 987811342 851223633 901001639 690129675 920937594 240994803 487030229 214124265 473747934 764539543 871561167 164488735 922533034 427949303 629895058 118489843 134044960 382794276 750802340 596435956 964824406 523132140 598524453 429909549 767046090 667180721 716431651 131433740 778597097 852153122 904111750 745187573 852716575 429990030 544926772 26010087 962112171 74819746 723576430 90248335 132134453 545343119 937461248 817261393 992753599 961718527 993265755 800765020 842957907 445171260 854399233 501216907 621174586 869173588 930565241 317962345 791250467 842475438 855403676 645171005 667610807 48841881 517210259 102769953 401079706 691284240 842965073 296598341 505241368 88226771 260227692 709887285 948182984 746680379 906422393 70908242 486020129 449890394 992281599 231104427 271077841 237825096 352001606 51974820 863872414 483925135 573064796 838091654 944020906 900863750 927911760 434608036 666192724 968339007 980793517 949354963 976943829 53481789 805300164 714349922 956251097 214000866 307397588 492140742 843499706 947767914 961097559 364440278 476867481 370905071 381065683 29315501 939774377 267788218 403559841 445810250 643935805 354043398 396856136 917385740 968623487 760474100 994687503 501944289 881909140 884572748 967786953 236466642 362905885 628514852 818378702 57683635 379867572 371247814 673551134 859161162 988875969 979500291 979797503 828361038 911849769 73750059 409606929 645970085 768637655 497408067 517035982 794184528 980541694 793793339 939781052 124250927 637884520 13083141 86835051 303092396 641563566 398380649 453447798 47452555 758935530 727398054 781904966 793508602 916532767 212056241 673298000 238755522 946063974 656384054 918635879 887542621 985209398 869574688 931584639 664554498 894801064 932538713 998878450 539051520 671291573 99518178 892573065 319683457 876054306 248112413 387106867 993410765 996074838 533937166 893024696 845652567 991872388 979894133 994769032 75217930 556260009 461904589 923221483 769279554 887161217 884664401 900031953 991941616 995797261 690485535 968981607 286237185 892236690 484580309 719807635 11941355 430718422 592742017 603048217 779086957 986667061 366959923 534066743 192373445 939872657 299153839 547323602 811125429 866395899 839067951 919545729 188306529 190678022 597418765 985676855 509408197 571812610 639332585 872841862 597852657 883281818 406804306 718137582 700469982 758113608 632996343 785720294 948624885 960950633 58895084 252844946 214147226 565434532 696412085 803036684 743345696 796757384 288538569 852596911 13125397 247629834 682012400 805305429 34137161 295633508 328512852 892669874 23142785 654871277 446530793 889550804 55764126 892674009 670602847 872586730 445101091 747192783 300432391 938180477 317711410 843581775 247372498 247978341 267330878 825732987 754478822 902369198 70915634 762122018 145849469 752034215 589660786 649182655 266674117 461822296 829182369 889351778 750404638 969704122 645053756 927704185 323870852 568655163 531347241 677887626 797984572 960431660 662472030 743443160 880947145 985546798 489170353 665751653 410931697 878156156 492014621 505701901 589638261 974002305 925680740 939662866 628307605 770221622 92663925 166468125 246038595 884688720 172918517 761453384 256895758 537504660 783204230 847488033 425640630 816792069 183058646 989850767 938632299 943298862 855754958 934220685 65227377 616807083 860698769 934369403 508446379 544097265 140644479 885494794 848188692 911506428 595378333 859727165 38022521 140635591 176106334 746618726 287239213 434917965 535441324 734173784 147577943 734285114 459806971 839852361 59635350 241341458 982243866 984295590 543721889 814455943 770110186 945460927 776326396 871577391 439068061 612748756 395368777 641930883 720066109 878374515 931826114 967452321 846805237 937140092 595090458 723820665 595196379 620550864 863242196 918108882 545784418 800789535 324537103 653263672 359124370 949092690 403201995 581041142 932688098 953100384 475395885 922984627 790499127 827736444 242795028 885721657 473332150 602557701 578363033 732041288 940117560 991004553 392751828 649093796 723484827 728734596 598658614 866395864 340841220 952085837 346003277 804610944 655621175 825889189 952985967 997465492 532870443 549758316 496861225 989351603 407982866 509341448 543614710 901637949 895752112 931286700 546786484 849366698 341216774 499041797 5945695 438550170 781902386 968342607 962282659 979256261 332960973 957396541 861677012 917631791 992545805 999058717 501980725 967831372 227121731 275393883 606482956 772227472 163668384 945238001 561111466 583590183 444809070 611873498 967066296 972157713 477093643 913279815 903280336 928520349 207361732 508967685 731705022 875681848 50123671 182207489 757168919 881881257 435227019 446813555 420779847 930876211 940090745 947151397 811077400 959291444 782153638 806424794 57658150 311061405 299696427 905140207 888741278 895127934 672410425 722004515 541231235 612108366 477227417 688455775 135104547 992582407 326033316 794735040 982343755 993899004 711286661 744367481 343226300 583890246 424049949 746598656 458563114 524172021 801253469 892372304 791309624 920129467 927479903 995756750 637002418 703049696 130737737 472891141 257626389 776046521 783006511 844995506 93747517 775595342 742898650 916116922 85801081 238089550 22256802 572997324 949917959 983988022 369139522 658944384 807857172 922707555 669208364 881545504 447789398 826474683 40309875 759188543 560649474 971500755 783476169 808253168 875033419 933319280 942360090 954638331 847241776 926651072 995366045 996749793 623804835 836550097 301745487 717663820 13848209 289727583 995654406 998872493 149492951 787071259 829305503 843017080 79764727 416559370 963612730 984050890 401339727 534108218 627931247 774149146 83793132 514600159 546423045 800690763 96477175 709521284 86507868 615806747 837027901 940877231 60790106 759775249 790996910 875597904 838941976 868452660 410988155 678154493 532846510 764020747 30740500 217762655 31715859 689311053 608982029 815954621 812076081 856804400 728798475 943944229 419001608 885731626 736131235 943689209 578471427 838278018 632152091 814627103 762651154 842084177 316999144 698933885 374585350 652986723 280789023 708906566 881291767 928418491 166180740 258819476 957194702 959853268 561460586 836250775 82847353 554459762 580428926 701323881 758580165 781610199 527172317 692803153 98276954 375414983 345659701 931448677 789451790 830862704 742110679 824511717 819390873 930896363 83293444 211906882 931257333 987880183 8854417 534841227 791093944 992747644 983282206 996724468 652540137 908642877 248255778 980107069 270214797 336302001 486752273 650032112 889685913 949222470 734004995 789456183 543384630 669793477 221728511 258442660 11920154 748327893 319895371 840075328 383463591 864195300 140614857 195922305 493859983 822728477 132851648 713410530 970542972 998136979 746778470 863456034 522637038 667443602 744844912 882709949 656792714 873420494 355976411 597643205 71199077 273131702 902932011 967521527 470408386 631177536 468405117 767549795 631395210 726793985 466067549 523078649 708136340 850231523 535491838 790137691 773448813 935980651 773422457 969905248 777515508 945233227 967759717 996172211 995346662 999688676 458997114 826112624 389472125 540434261 500480426 916652561 492592866 993277659 345650490 509411961 945135347 993033082 786891835 855523501 435308086 934282736 234681165 914353113 802141829 872140656 454029797 951322340 337917460 569988588 799121180 927066398 893560277 980124465 176235853 286430301 384673339 619628972 916199523 972076216 647866318 772716551 476958760 647486958 422860095 503809625 630605553 904998399 398590566 786117012 422275078 517404936 566356459 926670857 307590975 689412455 985863812 994060793 808425485 930574600 87422583 674498979 926348306 979336822 484431518 532946092 704177167 872615048 111906386 621758457 219125483 616009758 634814502 641665897 80035734 780572033 189530319 330521619 893525608 928449695 892142008 995425830 819104951 932879203 792080634 813051420 648103938 671798255 745204447 906476653 612969549 717511394 65191441 741980595 876962833 889749563 666798453 983775155 487568678 605359176 617274145 632280851 328995342 556878335 633127028 954058170 980281899 996998252 814383355 992418731 434324749 812076175 169883977 170019841 440844887 670475505 444560757 490285318 778745731 801869735 1898138 444146600 383422498 430747258 850965841 962688351 212088810 356830042 778906270 879842999 71937721 550388764 416801676 821950040 800578528 831513053 245256479 518707364 784269489 996854889 660701818 922256513 524218152 689941209 756741120 932435721 225587826 426721964 939184225 971714346 420914631 981273730 349572475 467303877 848415215 852715675 980018873 989956001 49914478 688373891 729219224 957076281 827765586 936221920 766169357 991388594 558122129 592983571 382195054 842019435 421444726 821596585 836903203 913375857 653423672 931861198 647017191 928885939 319280218 381646430 387933980 978726606 26294827 879939725 616103307 687177602 988781827 996509409 414821810 786623701 447079926 722373210 49703610 368122536 936602933 993210335 372976797 689829461 257215571 320931981 530373059 644198611 839344978 847860681 601160287 898430731 490647987 905859450 839545361 890767843 790015164 958929196 942546915 973674284 385773542 665871969 789360789 832877897 101810885 256662078 917697450 970886851 826918842 981180489 990029785 995508986 536877718 617732162 167481509 380513406 678382313 922576635 348161593 451776327 59541632 873895245 799369559 880312602 117917655 673440751 359942369 488001035 581597498 964076789 130406706 782761875 251363647 978608794 694335614 888722330 343637687 763229730 321344758 933814914 591975479 803650640 89732928 393123302 587827841 816905712 190697960 903994304 511295409 908520443 809432306 873918486 716471864 764050080 298932840 784594381 366233054 673394725 393156200 852412217 924241156 947898550 478045910 516875905 572412621 728497118 473519164 813212622 266839996 919267239 372851144 874555563 455155120 760346302 432464599 462766445 352607247 857756795 508864501 619067922 872375304 981311013 525487221 961163412 532423508 763778987 631452852 635727818 59291775 652465547 498262591 606913147 992144240 996906088 376770615 846185479 692416464 915177444 286450446 777776478 63708087 672197165 117867163 144854723 192309459 515926493 251413077 410267733 747095572 880635692 249986207 376387794 857631173 913844282 220488205 409788320 769705793 807734539 30240883 809239764 56600290 713146559 289161174 840269087 880128108 982453347 613471329 717542096 9988574 792886941 347485900 819924529 107667267 663424782 296941625 542926141 598625910 684335266 114702733 590599798 73163460 646442526 677939286 938908210 536120966 718159475 200726954 741300753 245603891 265559982 933221024 944782226 961855451 972258476 572778084 859377848 615509109 769076413 378109904 802604031 315871451 901688594 697046652 971988497 612758486 868129978 262934243 532862634 922588480 990191069 553655189 758219638 365251440 575785350 946635562 974032506 898202271 949341631 774573250 824189171 461983526 618409487 737523658 748952124 610486747 947158697 872301673 922739766 225740209 596364231 85178365 448351702 197344202 301980079 366234275 684765166 293062134 824256779 441593495 812829474 34454414 259626621 366168800 789395186 118535136 159907760 638025228 674870349 422706241 531421326 196904586 204390270 313824588 836180772 784098708 990018685 483395145 597427690 875041334 938355408 966386682 986314960 172323901 183954068 961708500 993990725 300956847 858698810 468455474 828471983 861635723 937496955 579800523 735156037 666184030 955035515 496053446 647130288 517122873 596093890 941139959 947851528 820334732 854382303 653296859 984777311 563727958 590161368 355020239 757702633 309908387 597205315 712882819 877377738 790293790 940404859 904939611 971614621 760828203 933245624 549933874 600962718 199410766 509655329 966109651 975632343 736117750 744765124 311184524 824450892 905851524 963392587 416644126 802824392 869031591 927986212 428916000 873166550 286707133 883806620 783319225 966691460 905032926 916746409 699636754 797756834 319795954 804560973 719843262 936657082 304215687 695239792 917590337 962620887 641927213 905917580 519016854 991680275 774823744 999324915 108480101 840376287 307110870 477153780 962659176 990387235 774161771 942906817 132398983 229342305 674478191 675957735 353045073 515848284 582453260 627561500 517450095 910730742 810821519 968463449 984405896 984879095 679398616 731073551 340893926 441609603 717242004 840675085 480518001 846040995 511431664 548676964 849347025 958399190 891797783 973251116 219349256 872464599 920119584 939871682 42892184 772934337 217673474 426952943 592014288 961825173 398818721 456538299 719326495 783748915 273352089 988345619 551220339 599394417 733491785 866018788 777015090 929098280 644254888 996205514 893969182 894639632 605195753 931321210 106875047 482611874 497934576 755156159 114570059 984237652 608181310 638385607 958004140 987140974 332573897 473446288 436113631 889601917 535932508 993548274 137040509 427716052 751811399 996342604 703366732 875802580 263674751 686970198 734205467 813709120 83072791 709788979 71601442 706628936 280223581 465784322 435701661 594827080 823409053 895227257 847806874 855474130 232112929 475736819 72586145 410338375 703133424 977315907 269648693 768217183 124178517 791322053 780946376 806875625 454927018 941097789 933677865 945139963 985126288 996034247 658174176 998296066 916656819 945279971 529489567 967530587 506727835 763048494 966114130 998910856 497091831 972117777 103600181 803106030 416590624 580407068 676068662 762997891 624402391 940456773 603211539 957966310 84704163 277362655 454365653 560873840 132949115 479160409 799222674 828963404 102602636 356925982 225041117 454907864 186501459 825755053 34373758 552495852 406956291 798247282 46926125 578609663 482518715 597538148 568455142 928568541 899906265 927328475 744203908 877059906 548258304 665579561 482605016 490867538 337718007 881393238 427248974 488935823 118485361 843662177 117164319 646406555 905709653 991055706 534415780 665954661 112056601 191956901 63406382 332814054 176755320 601183084 788521807 914270368 931071600 947040442 35825192 967452067 168716508 302903984 512308600 766806243 774949001 880478670 577320182 694661062 75603695 540006862 428755269 822192774 375662265 722486575 71327325 696321081 790263738 962281922 155289226 177450985 999664533 999704976 218291256 805090116 806312206 994726736 541871805 921129158 675683333 760181710 634786457 750561797 639495882 990410109 241719566 968797676 811847844 906802769 66433829 512266517 749075788 898240849 554821629 713758958 251368239 475474634 123234090 726685185 34726409 845350270 952582690 988355792 937043712 983624209 223778825 825930353 301463379 487468967 893775002 912702839 634077296 934843255 29512144 71154834 296304168 569982065 663299931 946769367 48852223 869550482 610229232 655445746 205045074 665843896 352647452 621464136 642248520 797860709 169041567 590618866 7038870 131918272 167521072 319334558 20496350 585518627 995150709 995619088 38341735 561007619 332371422 498553930 898707229 954988530 93487805 683169089 766110331 849336053 37649402 206820641 886542643 953093241 368638549 810235206 132923086 226783413 802478310 848455334 896358105 921893083 712887110 725643897 791955149 808190449 17289059 313739556 847806664 887658845 13338197 119425249 551868034 790667181 68640000 540922474 73796522 837191247 388511491 829815403 120755658 228659158 972442330 994162907 146041907 901669504 352014987 791053779 442349890 840433380 5456583 865342897 302774934 580367046 552344223 717889546 375009625 465955334 872204839 895109357 266974822 761432824 179247362 215641845 642828361 866853642 894070113 918270203 485331246 998425429 147912206 916050007 417853391 504948843 757683787 810489007 951815475 999293649 57706441 287014352 248225003 857653263 935955935 966884813 140390950 805273275 164293828 297299522 513742794 558741014 764545797 765415482 866241314 952956653 993336364 996509549 21158444 571939457 930821658 932459889 93628547 319325762 222991489 308797586 268985047 531195809 581785048 742556508 817595629 999069159 375226870 629279929 573020252 763083897 702544057 946375383 489428209 758866050 715497521 896477755 178080242 656138911 755185310 954295248 156466820 551568581 543780730 751249851 256521796 526988926 593909170 795157425 201988793 710952966 484049640 722517076 501063290 510823060 996774773 998916072 52914774 208301774 76241675 100338249 748542036 916637277 444848323 693305103 324221227 607545313 376265896 491690651 292392598 416820493 645724244 688741595 665545363 811443735 722585804 850341223 813245333 857997626 649282478 902637944 270313993 298832654 265931 987684877 20570588 68927130 505592411 686446183 737402298 758554168 896806766 994302676 175090806 278524599 551712953 841323927 594379669 862630116 752684847 878766296 133266491 296238876 981591031 990525841 307035031 962339251 492000898 735372834 282806486 386026721 85086250 996841751 441096618 931265886 247930476 459321417 407391800 666083392 263661341 542955560 35988681 996251312 547153756 834737935 515716018 938974734 553730270 630455592 98587737 880909257 820651957 869559083 869532375 982053728 659122524 908398073 941623521 963155493 555950087 974473315 796949468 927493144 820491806 960951980 727920219 931577354 242162661 452289063 624925988 870386528 920607806 935999865 228258845 735445181 577268671 970180698 372278759 386968692 96246035 125832533 724924150 886672530 403633315 725544899 958850903 976604277 488861672 544456461 678479739 832228576 112974059 536281112 795304897 801833974 925602259 965507821 164429491 866450843 689730168 754635990 816882073 950348979 923863758 988967170 919264743 960709013 342688746 538452390 540703704 743559207 615553567 708821804 57749723 994395687 172120057 740176090 123996350 601086487 754053733 866540642 684676414 802609222 311450253 794202654 31710765 982384016 954338706 981025499 959387946 974847183 134681667 881654415 883145077 935093771 423181672 466672544 684409232 981454938 584014597 678118574 173666786 422185786 934974389 995358513 527830405 793791875 464040477 778458847 523364491 727124553 695506234 867887731 383044816 387161980 998105549 999403472 203029261 836898885 999428088 999609456 127736691 681747416 899779838 955643247 606077060 923763435 511610253 927684304 551935176 768426180 901723869 953796119 527699 387300443 222525671 852127595 797188044 988940159 313723252 730156949 979124668 992420149 204247 857354934 927026867 960029905 677633143 731300512 44897664 257908381 206768385 829864482 544112556 652216144 408039009 533078789 953319974 973769065 284436406 913309095 279089030 592159041 420188005 509696827 186848590 391018606 934080521 979139534 875314849 881480527 521743934 828490249 797578703 993741640 1907837 655596703 391682837 857994375 708278239 736593471 47992841 983361543 728780996 982603064 24402900 699659099 566717634 633919759 370844005 872069422 575585267 818834010 881768071 886178104 948658301 978523681 827856730 861121117 700295452 766826678 971131160 989646841 780765242 908134002 605800968 842959302 957074492 984036033 665367603 684807369 929027103 989771106 64644872 106252003 429235170 504197491 124383390 124687480 130532040 291049154 311897320 638594123 278179155 590118292 692821728 799360066 927948879 944084025 379956961 720458637 749361779 908563088 261569681 503206097 118634937 511544384 602210520 901261315 209090340 601890530 313327653 992931713 891737043 915540754 829258407 974482284 683959801 836334189 17618456 419112181 84828196 325723763 108931336 119838883 375174921 868576560 410535570 829140814 687725759 965245839 683195030 899802998 726427814 998311599 712760094 717343962 425640055 639787412 336100643 869179284 696176910 716228818 479612463 947064506 13111063 655761682 395946127 699113033 961010047 995539265 12653334 321834729 34164288 115106349 926699650 948321644 899760866 959011720 795880749 952959040 175052979 565221690 522228895 720935236 995109736 997499437 266642664 349980073 549625493 892421478 83641587 775250478 333776393 761185705 257814070 890493604 150810569 417188205 271614288 755407583 768991881 802130629 171348560 661386726 397575336 520809406 263724591 645594145 444239218 934846949 371342404 794627857 127431942 131997505 576537289 857593904 701793449 772158185 980815164 983492117 19741157 923297486 325264613 618955196 711327596 713126257 147586871 507499533 968953733 993197522 352843671 358226939 268314749 972806700 646362280 702005633 570666414 645472940 947492259 970497868 632601277 768789220 504848030 586320870 9823394 84961479 131799055 443884329 286211955 964601946 964849802 992925084 343568373 712390837 288348894 725249158 705892952 980023373 682337776 686589300 188081943 330573272 949625935 995967581 68909019 484297402 13242713 412475486 552941542 816193336 129251554 480759551 980396477 990109371 959873026 978183200 183986335 841057230 787935882 955037347 297264634 447456263 777101687 872932349 766991197 883439241 20125918 247920013 335706084 365998036 27640739 319198771 707288717 813514988 900445557 969075164 651161531 754128377 275994672 523275581 173205246 269022248 390269188 961233137 521352911 883253301 417309974 683382220 460371935 907186585 916465912 959693295 596531111 737385762 935700945 950263953 574802921 660990799 666213359 906504011 120427147 511847232 76608826 629914233 810136346 832454802 977977442 987992931 990205280 997346556 778964562 851988259 413248247 659035921 101881888 211068054 908063876 940430105 705878756 927422552 799849536 904296769 645857723 849865054 958442794 974978476 752919323 862263204 773925802 863209110 379255163 700378603 855687718 999481079 486053715 849393390 223357856 522807257 782644466 829849484 117860754 417111225 353659522 732525749 22239804 729276151 199256273 872247236 685512061 846897541 514731634 646483347 938676617 998604098 403692470 767432369 966938357 977481327 387699980 698882212 362170047 705959854 260195351 832857283 900487263 913732168 58822192 292491701 267452384 465709861 183657275 292605258 502396908 709542340 885675562 954137360 60508355 913888935 954904745 976645875 174197115 807662676 647311663 769962948 796631647 947568150 789976971 937832399 139478074 740017575 177894839 847993670 544867412 903955222 415449811 919261473 936568630 988010337 761680016 842150573 774727454 847737943 943930088 974840221 431718868 854431105 361155422 584241778 447431541 562542447 171181707 832289963 529530987 860495417 693287602 834948251 390326587 831347107 141478229 274914106 638067912 880431262 599198794 870421616 244622465 282687891 339599087 764841614 924068480 958987395 392855136 780596804 210296428 340778119 388129721 819590713 501823966 973540934 171436092 847321498 65633380 485147053 307612102 536340482 619702465 961739725 319159131 687642255 820649676 907487338 127960622 812998874 867734785 978645042 155135885 703542360 370939268 454181687 641189684 779058893 499392905 769195390 432771024 556819163 268396117 574052470 316460353 904736357 247151067 441002622 226539820 231675776 937022513 947766738 678933070 983405760 790317990 834906496 424828138 598505590 988597041 989497642 77782035 557555255 580725066 623257153 750077972 842577083 456302205 912645158 963527904 992954399 115820222 763416022 675691823 985693434 150215845 637726146 589181726 598453987 693215660 768929591 953325899 996344738 68658068 151908524 454581156 542108433 891161118 923602190 955017115 994924149 374201641 500561180 951783347 968730310 608555796 750535706 432397950 788458161 266238464 912775992 549191693 671193438 837257961 931764209 648950110 930171483 104330086 383182098 285514686 682389687 334469100 993390759 700051470 745992139 592734074 625707730 26780148 94685967 68553180 148600988 70273683 941665726 161272933 867715996 355405177 767973984 987273519 993715661 982359527 985267315 224525630 486185989 536361712 633068027 34789751 264102295 610733476 821983758 227910183 927726774 885208193 994781411 713770500 762282316 875950765 971037458 946877705 960061701 257223526 283333572 506846734 808828417 299528791 613199045 240928314 700978603 22241447 971040765 729855999 891727223 594814357 901627211 972264207 996548487 209019903 560419057 120604849 940694529 425950667 572655770 833260790 929962458 604722346 739051074 365185860 747380733 915397048 964767194 386112351 859218031 436091927 695930196 106019510 418368840 35432163 531666541 83290768 562530801 838936537 944203667 459506709 876206875 503899753 675081015 235430746 636038782 907841291 992162816 743831849 981135988 4576892 140698947 511723856 796977162 86814771 165719228 386812295 466115821 232234169 358591649 383471142 854598203 905861430 907043173 681683474 989323964 777007468 979903920 38976451 921963793 906130175 990002576 913541376 959396050 195456292 399578616 143689554 276022212 66643327 446106312 473283142 992254736 85252338 482776458 677613860 711346748 514417335 864051084 188292447 890584809 948389287 998296310 435112186 577404893 736332455 938914049 676220689 964698221 877412801 908175466 205913884 546937032 377047653 930661044 141998446 891641352 957164340 974239331 393074450 772093330 566861113 697405778 417007153 701738472 874479391 953667222 467912862 570796225 986887651 998092834 210151522 459467206 40462032 200127057 732472091 768392075 370627171 463536209 442032666 996412994 14705055 239966231 161358290 235919538 143318070 717107291 54325178 316774096 18388720 190075856 207588327 583514947 127779393 474334450 960744353 985508805 606548107 751682311 405285651 502034742 769068973 989942654 732973241 738740307 772708407 797583080 413294539 648984778 860069770 962691137 753216784 849239837 950415714 954170146 431120510 672751499 777162504 802615026 451653374 586420778 493943580 960836283 271330502 311118578 767827462 814819177 295311880 645081735 225975577 435263586 172502979 635711453 433244367 884053918 70001886 675040487 384748616 535219389 668963296 748624344 908435384 970104202 606203348 629942690 502343596 989909931 67477372 934055486 841577893 877523517 486702350 774906226 608494587 660887842 480114330 858966916 659576980 862271195 271646096 517790175 92344057 288097917 377475113 668941728 322547822 631541653 755914209 834723150 240298946 396325101 20271469 428820903 10283553 943454961 547606305 947238251 385284605 830906208 845197442 932362728 10697022 117093919 334110075 564949812 115600726 510957897 767797356 980015589 402903673 422325850 981788719 996392657 59980809 514349320 430062025 830244996 742014147 801723830 686414943 963284088 988361752 992675096 265722337 822108251 872189895 885531014 382606821 838322105 501606950 711730890 736423082 983292007 724206705 741353238 177604606 651811495 821028362 970531057 952342965 971701428 488087130 874094722 614721454 856705895 327449548 555081998 804487865 988870993 3337241 159999348 131954083 209931628 856389183 955678341 108430338 251966519 413503857 504098075 960118535 981257155 71847310 480369340 675811204 780139597 124393945 770510321 892905489 977937107 407561890 675274058 281223234 679424285 984665225 997317086 537884571 823207481 466265172 625838084 150485983 496478569 113197020 682273378 438542284 888258309 857910850 918283629 592154720 956971286 795800073 802084680 957022346 978608319 551191718 563582540 704055113 736590702 478251105 620697677 15231997 632755617 562326776 985898491 813501177 885681173 874932263 904379485 843205591 957409613 761139620 905051316 336624488 888203394 812703146 931298072 621418274 624345536 308820760 708324266 466913241 483144522 646356826 844091639 560735477 795412925 595911354 673677293 254987921 699790611 440501418 474375768 486310847 620324669 348829200 450591074 658974009 670125268 200703715 388675474 702331993 886767006 552841828 655507269 295801621 914696310 525226355 884965831 549234959 702197333 686280680 851158557 546479781 602227054 207602008 324350119 729578673 830348454 124037522 794194759 551618884 924205292 345960645 694162726 665678119 711129246 591727960 662958499 96367267 677731621 251885877 827469940 669337837 775123908 356477611 524873448 877761585 932346282 557937009 933329344 590787603 755136572 123154783 355087302 959848580 982188271 627434344 820442072 743588652 846265746 256628536 769555654 7364365 654244278 660680379 833804287 925234474 925351661 219199177 788342846 209693234 336309638 249941430 497733057 152577793 828072854 926942451 994010327 630853645 680791009 687554519 737541170 328184941 381114515 444586785 911772426 297106776 426842294 328875572 534252409 955023108 981246387 200634564 533805235 67732279 562487309 119734232 654436472 434966108 856791962 295796992 610537550 439516755 687444297 802537245 823772386 736286944 872675906 347785022 600007033 489507012 904707004 196386537 527657431 593474955 867081408 365559891 889109509 831464642 967662645 746742290 790984059 215409056 977538819 74972386 971959163 561954541 650601381 896595519 896981049 995447042 996041373 983200831 989717172 637856917 892668689 199048568 366650229 464049638 554391691 907158159 936606933 661696535 782136115 959095143 979406258 538532919 677942028 969224040 985511382 523231722 748354108 172688379 960722806 400874752 683292997 662284407 870764593 588216678 844142657 140100487 767159112 466446012 666552903 82274384 537030785 795886761 817803187 993744594 994175001 662882346 901598313 961292986 997594654 902506357 934618527 127820460 533126552 359343188 946475536 711832145 845321004 301173687 759899203 758682081 835120535 475545601 614985718 435688244 530063624 289635777 714888913 561374622 615917398 447999199 844663660 347656241 693733808 679528977 820987758 905833284 985907307 958472845 981077655 582226802 738316754 405072712 488231328 124702799 491140529 152807060 767945303 452631693 987173028 797381465 989728569 829546904 972193029 213240607 603669898 763128103 941983214 31189188 845038334 539933034 688052588 398414564 596947935 292940780 945664852 857242317 976828415 840547965 989013687 706269410 869156211 393225620 456159632 262667763 537373387 986613433 995592169 162008329 172901021 602197277 602460878 445904146 691589360 145698525 326834895 790818983 956113445 864345575 874656517 995321473 997228833 692270321 955479085 372343533 573644346 468913455 490985531 774389053 835984085 645874228 693615438 302829230 960871369 891880625 907339336 592098875 982485480 611526124 935572329 392438236 678932238 6836847 410937564 567071159 656286753 691651924 877740847 28025734 658660352 70633592 653238108 159090420 529260330 882195217 969044444 991395526 992252877 892517449 903294418 288163333 940980858 412821853 967438402 928650006 954763066 382327518 578378778 29278561 240447947 576096004 875866729 914706108 962430570 737915405 979178976 266993267 671634795 629891841 968122853 415729911 584044539 250062055 633810370 886400871 937603569 243061726 597280756 361799520 890569006 28927257 580968650 519643155 883778950 348022452 431875278 19014348 970570687 375469354 745602968 491164736 882372048 193256292 942559077 775003680 822559344 581934771 757764686 483984257 531610100 966480807 982244918 500341034 846059855 863900231 912939381 651968578 673465984 618015430 876362030 955027510 977616859 77928499 861257142 206052145 782032967 636827122 713967481 966112636 992354901 750865210 903099231 171768636 511995923 750914341 824627913 722870333 860097518 274583239 309814067 901808753 989756141 147991542 853386112 542036925 902814899 55531079 851972268 749499852 965052839 911162059 993603266 641414156 921371255 225765314 371495549 960469365 988081041 265303701 400433730 804303888 948265207 661488131 787206932 631864199 957141910 978130681 995501280 525744000 975599646 939357125 969250574 403355005 603489338 509438697 649971025 307449504 718586385 989672142 997503754 78412104 409080763 682081434 736070860 819499285 846815113 603519889 748308297 366728672 750759770 624673766 966849132 449231024 817709418 539242508 814327601 505035061 550204636 320452544 609609079 608950338 801850315 52144292 844412800 189579783 467181282 166598998 470263292 933859344 959870511 504183153 991581620 983669417 995794441 674105824 733742169 989668442 994635711 890257 409503130 257413534 616333176 429887442 920635082 338441468 996760617 770260180 819122778 857994368 918993306 238998615 922221481 748634465 843450908 957216495 975770374 386817376 571963881 120200004 750257717 825735331 900846633 945899923 949240146 686350592 891941449 643242389 829294513 331361283 975023726 330120160 778707546 302619913 462385621 481686554 493721721 266418021 869533868 873314098 925117826 547451504 876642256 26101605 926473547 569526050 592077111 509966754 663186726 197354305 949587632 76705467 522091339 69760348 824082312 759896790 808394554 601580248 821562330 121178740 674122102 793721860 914153476 898501565 985970355 158826962 204229211 485361367 657502990 319238564 580356762 267958592 458327627 658571133 809409467 88040208 487166301 843001505 888748086 170518478 936595232 295522341 303638203 505326137 667645062 11666105 763562771 168606585 914328514 657708756 892678834 874064310 979761998 749022568 955428378 416060849 605071863 248247990 434067932 821658965 953431386 719825573 787207930 270811693 730633389 829352090 981954150 413905498 437138567 715258786 745666331 692539252 967210897 995775528 996615795 822204927 838651406 100826399 721048508 469129454 742562295 686562399 852214895 597428389 866247779 974326547 975606040 157705093 285556970 684949958 694204241 874946379 949422355 75739228 322333236 958913291 999931605 695011150 995520005 294114013 643750934 289459684 773835403 641630882 899011459 481544758 482804303 928494153 948092055 126916531 653247323 329262221 572985960 197703111 770696479 799454800 878854305 861297925 920538436 208763020 286074328 329598342 670107592 290939427 799719199 903033451 975517832 459685298 940685716 454339554 601986713 490937850 733407841 689712820 941259668 71131650 97483585 245783254 391168037 757296123 829101108 92430027 988075374 624467874 767769583 279512169 995800483 780104614 988881122 234028355 752182071 212879477 899928501 244233489 784576068 223775578 278442785 14164562 339460964 205386092 916844107 644727831 890992024 526169528 584880255 868550642 925043752 810078633 881639407 155011014 946087045 428638112 621591041 744240199 941404144 86545779 441546991 126496183 814530716 834210606 859776322 929678366 936570733 488435276 783798057 302199077 956785122 413552615 786227837 168897305 337960297 828150406 881199713 279683148 696399737 451304989 724661075 907259800 982476650 702545490 793726346 167167029 836564752 554336549 593489400 516329976 589356068 908613571 911102958 345671750 864869230 849777427 973036753 888308721 923522500 393032330 633079577 754024518 780785723 203104804 948390739 804241280 865229748 151271360 611562486 562500520 656953067 973580165 983546209 44125240 298383871 42866380 966194599 693449939 819012721 832002580 837917866 766062610 847335590 102061619 729002337 748904765 923929910 301486232 314496126 362858968 461791125 165193011 231214460 938901866 958378610 884003920 926707743 151385145 423309050 958023436 999664002 623966963 774130141 981280293 988274763 983913768 996325248 252805309 942678489 142463796 991034090 501336612 747785547 793686209 917841052 397383219 427731614 171617956 217620986 797856136 945674317 464835347 775882964 470590321 997459898 907935465 948236975 495653180 840748836 891424021 999960158 331054488 810873862 322424705 400096624 970475121 974789342 108691430 489239413 709893926 867089739 693101043 838554639 625241883 671692249 836150718 938949927 297772309 382389025 272507829 546256431 47507608 672196623 101703106 507901197 911837079 971880396 197139873 529763774 825644043 837159274 527442940 575670124 65947060 96920827 284125738 896399197 591339351 657384637 845494857 937041882 429595468 632960438 714960738 897704853 758941144 861015009 438365792 441694593 118667258 458459602 111505137 924974680 952538897 983737720 360042147 782336770 289382058 729277808 518402229 904270870 491923278 543822591 772064970 954230250 194933576 627776312 918836146 997883965 305834791 326169091 37610562 106013887 933036142 956518220 187079089 351472851 612957563 794325632 657357610 738213801 159283355 182908122 9903605 526578152 199558960 785909879 379263043 559992903 973072574 988947208 109208592 283069170 475352796 553605648 739350326 868485513 260912569 897584439 822859487 901248739 871128529 932391117 881493181 908801228 731581398 747803151 977482199 988010996 232957979 622721801 278554876 611891712 78404243 791602681 632249490 937891216 149298184 359828092 973805316 996099712 751883965 909341799 102734890 229672560 744961009 866315651 358395761 491898771 234670754 587169117 390611206 514206245 930520013 999654588 785317998 949248465 491656071 828900227 682064697 919533582 982994412 990770392 641341568 945937123 75711382 394499778 579511950 826976589 765471721 931067608 166429323 514102195 321095195 921224614 187166838 637729502 106726610 812829837 650039819 709937884 991503146 996969722 330993518 921449570 712432659 897813274 464775925 948338268 83105431 829122744 126864599 618337811 58265437 93193155 31691727 884507499 257984068 620945547 701034379 822954123 710499187 896385667 42622228 553702601 560054489 871282167 59314024 608691288 140118164 778629736 959182083 969032648 370409981 776907674 378883668 382398159 869071226 887918694 958071589 981609525 906892099 942705539 161641951 914074725 20007963 410247912 354859457 414624601 332689558 348789427 952308484 989283268 333020656 633409266 954315189 983363969 941730477 948433141 567298534 893250683 600231239 645797349 783259075 872562069 187640296 696563990 458588598 973798002 396708592 846198573 761110605 980533823 693383979 953339079 733337678 823874846 636340578 939539041 78324228 460270804 147654266 660630943 15665344 465397171 834337575 901061277 648632661 653653579 168908349 989088596 981963914 986911616 764878251 841582407 359767124 847704241 522323719 621889688 383453770 815657348 586746327 992039178 221710170 731844282 975289930 977670827 737476091 947136085 271704506 743265234 921614938 956324544 958714404 964850799 495070484 723425587 150573261 932995594 519420043 544479219 581862686 984475923 487433750 527793382 697463097 990245888 922268568 971608332 531260814 942590184 878683291 958675858 342776591 445586871 833856890 857940179 811201315 916974862 969568455 976519664 589195485 940276693 778788635 820362011 889415669 945965386 294153890 722933404 147939122 152749252 51637587 510827619 412187340 683993209 491539937 918928634 4668254 16316847 357050355 749905359 294426651 600038453 976220190 976784389 394113365 686764866 382379613 756902365 426711053 511617701 826078039 870461095 879586840 920000492 770596010 884157084 961525575 969076927 177722443 751698578 848354665 939527349 458054452 489446007 154393542 264257550 656282946 891442485 698235827 931366521 644378890 963842514 889066590 952655208 474340374 675198015 98773369 810206690 850108416 881651379 9209103 285825666 145191444 568526609 974937686 993873889 14540057 895547415 722092356 922785356 535566961 967367990 87839626 339948733 476472892 659070723 906920590 973006972 641644898 978829997 528975479 544532396 80412965 197589477 328231853 350954150 642484467 805910412 188512390 703135383 749523003 781803385 261401717 425647281 220229544 764756570 193878667 355121899 797337203 921002424 493387893 827021892 297876106 445784404 483643217 988650448 202362361 420922694 33582689 770114084 998364650 999531596 252871113 545090553 327169132 809707771 159107827 953329657 294791236 957505244 420496508 972026829 305090935 618138287 686450894 687898914 333113724 942049161 709641125 947557009 174971867 688977200 400084973 855020711 408454946 830893528 297988155 910466550 40531177 512136235 976252175 976402875 45585732 736411282 763108388 973453888 551051950 820995106 530157596 784413824 303924235 751890580 353607253 858198264 335451414 549461546 85443092 251100603 189300703 359253009 653873246 992734651 591156622 674967160 638338890 947146423 830929449 967451453 395429135 719919234 914901430 936582753 251926139 889034275 236769981 991134386 375113892 448860365 601672451 729586707 870727475 954758771 477158211 556377231 556987364 893311211 754238669 920777722 637913523 895021851 195284588 741877317 101115825 157234596 400535649 596825853 865551189 990735845 948934954 972212958 123515186 451545160 420537385 795853974 654240564 863580111 188342011 477290535 543817428 770176172 498301859 810587781 426233618 974209803 161141143 838285817 162388263 659231763 866688882 938242143 901840597 927841608 424660245 753822618 742085075 946717840 654397839 887401936 373111576 400783083 754394189 760572702 302595226 365842291 495392111 794594723 623224501 845722543 978911002 992886362 435888469 837182130 498056981 728866752 486346430 898297978 534674752 763358077 633577994 661725086 404257513 717235215 658658553 757241244 720809551 852434465 747635546 886000322 116114253 751296502 514163211 945672231 648207841 665221072 167671234 933541793 212745753 473777449 858262462 910686231 573547698 960632166 579269329 886633094 177893350 192841906 351814751 466120754 542119259 659801607 869554394 919933231 759984442 785987346 971245502 989796399 613512840 750019649 443592624 848866004 353026841 409802739 623372561 675923079 165964402 407876066 386565843 531458133 455445382 937882200 270044673 588067508 23513193 740294700 593807072 627371499 679535608 865037710 715498602 733370907 199484004 291839315 688058209 790913194 766863176 989024156 93253745 804270309 296012051 519411958 138793533 954875751 891383508 931725988 988770746 999759173 349587682 912431145 212836389 681668990 721481552 985391946 817348698 906731735 85245249 645292689 602295383 620339165 901146579 941776626 226865272 641641695 398115828 447673388 20082704 401056813 367875452 545252436 270426737 491956198 530882526 950705437 429700073 653073191 717774724 807137771 659675638 799677108 930748419 970340890 760123590 806058767 253005753 992689857 364315677 710938661 948636339 970450345 188423259 842962632 729208004 992428010 224568512 241689894 380666089 530596315 201217537 745804568 134217972 911874987 843421181 922884706 141344952 327149832 204596629 426083700 877649830 882267005 861283046 891585901 977831957 996521982 183107509 659879756 396223876 449495484 256892229 803061673 739260168 756980023 671482105 898363469 430760936 673709836 697659201 950093032 571570265 869997249 170101028 937256323 413086134 929425343 677432765 701761388 761355634 792654956 305855417 799799261 903092669 975689415 46802292 463535768 840326985 880359897 756623492 953330773 281238645 966764579 16710654 995515078 240744900 645207379 645960531 889869259 326252715 522575565 200043413 323286253 990504238 994142059 723178215 727164116 254658629 737481558 968139483 997892804 995228946 998235640 866271519 921506924 113380499 144965770 728643106 929793349 861814549 953843976 171684713 359822723 21230788 549753977 220343533 737160143 756977041 838293207 942163734 988700176 544349645 721670644 704127811 879747695 479219518 819302491 327659262 401543532 867213110 910804252 420445476 575106412 236518933 893974774 954020980 989604996 502022211 876253727 796702769 873555406 74575322 380386660 172657663 648567798 401546369 654970084 909584804 952498485 432619805 949450267 269626526 529629077 501457516 555497466 521981578 678566702 487127211 954245295 848730643 964508701 737411123 763670832 433042685 905516512 809380344 851467799 60105088 149518378 988991279 998900730 346363579 407261122 189136335 960343063 284146484 668376308 65135674 533677065 833412036 927312809 848621719 908484144 274310144 340854626 582310221 958819633 910210411 924943635 175139132 676851997 235828025 872409608 123001132 416628670 488646069 926688965 488359258 639066790 459798144 787522248 136836363 755440878 733342035 867979758 221858139 503342901 297097576 682461008 473048938 496563717 583696987 654915988 259378558 321922309 677685655 815240249 992699307 997138776 688753730 950864952 764239053 778986492 581728410 926528654 794456954 960103033 682357789 889402060 574502816 748160413 797280682 918162834 149195030 624248065 183590261 337370035 704077907 714071963 173401504 481962018 385385854 798545422 740189814 921073472 258110762 267864651 482836230 765953371 224291970 494392952 765410383 960805534 820096087 910935516 119483503 860342609 177299770 825294940 771595240 807608704 225407119 489351211 844935821 866680285 725814225 733555513 939018610 986263924 95785260 141240102 210450753 419167979 868528869 937004289 366356078 727973453 950746052 952917850 775528288 988933253 668074543 919627125 453256270 528644484 254354624 268761304 373015091 564015783 877037759 911251204 355924142 680575856 628588095 699392811 982586971 986148164 115253501 121337485 404323839 439088124 600344292 776043845 983172053 987406887 451295374 892956211 3069323 77178526 991728659 996352834 257292180 508258613 604551776 686584865 802358119 844280340 6427174 842044035 112582776 825296820 545873001 678709258 301046293 399821866 956054272 973005961 234845952 470719017 414151364 465840128 306064439 599184935 775438305 880479754 271997101 633695453 56423952 97071412 166110917 658201156 982652425 998427000 713897335 778858218 488386318 739178174 771483258 891135300 754632969 812592463 99789301 834191130 374441783 944729239 18998271 933967627 43563986 196655656 77968754 432141256 165095317 215593399 653418312 843006867 6699072 981840594 414284356 429372014 852057911 888707219 80800321 939309620 466678686 705855242 62487192 313259963 310511629 448634662 544926725 632679079 842157434 919497658 194884697 390558946 587810112 713721126 133318193 795850182 383804755 397896817 24021778 867737801 587957342 671932007 630489142 641825434 435333957 968792456 154632787 588365286 517986144 954590946 31270016 68382266 486034217 735458938 729610034 803576504 765591911 974512992 177355858 228774656 200942181 578000546 485162598 664510676 740756983 812078356 105759064 754212014 498059517 613239973 192518222 563408590 479138904 712371734 338425233 910456690 497862071 830048568 470292054 973793614 428684867 995554832 273035108 769283464 457937846 475262184 733943520 750038621 687582432 886555413 982816968 998224673 510167714 913551823 583556906 803252674 903018901 943689874 778578528 907809721 229471561 518398643 311559055 319685585 614757582 686467825 458157804 576540905 157740425 305943758 17348979 567903347 989112318 993107707 768218787 845088173 361115553 379045573 734676537 989037177 887437947 890617988 312516023 904707483 235005916 839346751 761167937 942451439 942015189 975924604 851830112 902774026 251840006 770531877 141185180 366163974 731274293 796489669 335734567 665110319 881551364 985366326 751722501 789786204 546029210 632934635 830762211 832113945 518308487 931627273 861357234 936488922 53516577 552028687 248630596 367421496 767606445 960029591 863084860 913761452 133871644 827955648 594191228 811227375 983448152 990758436 701513701 709872766 887934495 888872872 924637857 973391438 639044739 778846785 916862270 969050194 553267265 580084700 19476483 621662348 537420507 670186966 477262217 848975663 547002785 989822740 285325880 887208552 809963618 892228307 815964636 860332198 467637187 482765460 751746636 765029062 920461835 927813882 102613786 728675045 726305855 926825022 886256677 891512098 84406736 234115461 422012255 664763454 383792961 919783528 109122008 887725908 142029467 168277264 350337586 506038186 467025212 725564586 318407094 460502467 324429506 452445607 253220814 430048845 383815909 709361395 479393755 758083271 551069173 957708318 268331229 807355668 588439732 686178700 826238670 849656195 987484733 994692303 751308529 795967161 24760806 523242463 262791918 725713585 34368361 832580866 542558413 839028925 791943337 870203200 193186178 816851041 838681729 841928391 218977388 794993503 281124553 341357641 246157897 575994642 65062108 434523739 508152613 900624753 903334265 959867123 311873092 464375820 744848809 809359582 836834111 969309085 818068640 910671162 828523131 855181271 903970976 986449561 116616619 311823252 454949058 709497489 10329112 156163795 141070726 147094783 706844868 711350245 766753413 851316360 478237826 954967550 37020168 535700453 403669431 881287229 404945833 708657861 619311660 640797852 572869766 944213200 472584525 879257128 267105286 599314764 631707105 852468822 11413221 458640172 186516298 709991722 297890741 366202838 561151259 961593307 320482076 868729380 458446217 771188661 809904163 988821316 300004192 300641630 953326924 954237982 902013165 974913340 364678135 996993169 16949511 218161569 455961655 600848278 988198033 996731040 194802434 201054567 815200016 898044273 161905653 808131869 470351590 854783144 645073287 790845789 676780937 860496394 502571882 517667005 654932806 754433288 450209741 883817915 936013279 977904036 221206252 310032125 606126416 758072842 436904041 925718450 267377268 601318966 712905503 978287873 148174972 875369531 516203313 558972931 636716494 724391507 233068898 437001879 929638746 988457973 410447053 649112380 711377950 851126638 919969685 963285022 756122622 846245350 986036449 993151410 902464967 927239019 382252599 993086095 515421855 522241148 1502150 217090601 827153352 848783693 776179158 983493310 993581661 999709784 715455894 853059731 353027680 382590699 909585498 988919222 946729770 994803660 962208084 968109461 797086498 863612909 813489276 821082882 516761939 550350847 780241696 813411247 364829492 702530658 606857179 739740683 544784166 923129941 896596081 902867170 938843850 939852336 637522535 781281595 307839705 784326260 445956171 547819303 917813664 956043211 335380133 604303450 358935133 875068642 533843126 782562463 474950690 534733622 84631796 434610272 794391755 808176264 410068418 442956328 519290311 564356043 328468224 879058247 990662128 993656628 868886660 922791400 324720228 974746345 372609847 670294814 487566102 921210090 238819478 453299664 356089911 732146549 196257882 787319875 42167660 208466532 355678778 736004037 385360460 390717241 988443655 997242640 816975390 955283469 710688567 981495377 462593816 703703297 879856075 972559771 339688527 938534378 777693567 821832489 283998688 589531688 5402423 702015316 305300849 833249245 547858213 993794251 342557502 861778742 611346244 631737856 343805029 887256330 288719298 331334530 512774049 634954451 48895120 924862372 538830199 678079377 1991807 476552932 789542879 911373354 679623023 689394836 552058363 623805735 883248715 954714551 17130888 129453596 884725347 972101008 379653610 798455408 746956673 988723430 748730581 766896950 451269616 619946289 927288307 973693945 192463392 445709743 30834080 727722401 884583613 960909575 487067226 606091056 635490158 979063736 692903071 966307182 558356267 720036690 60825771 978633798 97537742 285723324 185307224 206843791 52530185 517926204 791655970 833099458 949675303 978467314 599538405 851321832 714193477 803372465 441585390 518763091 962502985 991165427 818298288 920040522 730974702 979911290 694636997 763234004 553353761 959844310 169439714 834081171 791832588 816639793 268676505 841995613 979181241 989077650 336568585 726722009 301065022 346022786 718772651 761854085 785142306 938938153 554704535 893731061 718284183 806192717 11733770 492399808 864259576 953524222 284684626 917677067 469342626 527271761 244456077 409372557 262526246 985130953 896391839 946216594 182745716 737199091 544317785 954868527 953395007 962340251 111352268 963166835 747227192 874883007 364849028 842493909 66841206 793786253 15237860 463300433 50660881 529868983 298533447 825502405 357531745 401902024 917656768 998032306 560013056 582627987 540021419 869860130 571160075 818717775 343171397 961477354 802872861 903246288 59254744 389936738 718428105 922915173 117246943 839453776 702839205 838854191 807958472 958309970 346031166 799519450 598482657 975437208 568315455 713608430 685409005 845353096 654442078 904850058 842553975 889054152 178676545 361277438 874378868 966059906 649231882 690706047 113241912 454752741 22038062 597187620 597318121 873116302 180681435 937747916 92169749 753190231 60778346 188371456 221952337 814293729 839200373 867676971 336753890 790437280 858613247 966143518 631823886 639309914 118112477 745685186 887042677 892206349 457806799 828945432 980251850 980667897 179699326 578248231 220586310 750890190 269553338 681310724 727148312 986180957 380076314 628955097 697493740 942496072 205193008 275652377 475681486 736889584 792328371 833334277 353858046 746912010 126066413 621616306 234672926 641969654 818116764 996400930 573144626 955029573 974407218 995314564 916038423 989392004 292205135 888403984 557911759 944316745 440404298 728146581 738483169 882063676 84356295 235739236 363829921 515923801 391510026 561942236 313420320 398731965 783552353 968582918 294447315 516712537 449901210 580816123 10069410 810992828 721105445 765658909 303311369 433234266 251347750 841849185 562967075 958356133 653437430 746056494 383061325 677148699 545259943 926458147 308638581 867255132 556749519 886821137 661003057 935687596 787991684 907570406 856446854 878590532 938914892 952418798 33081150 948362568 414065791 951779442 96517953 929735700 26101784 125923737 665993254 683155332 395124949 489210532 709405220 831870119 231320288 460133655 900737190 993665803 745302208 997836180 538371070 773567325 98929584 566376619 436870479 680373837 936394173 940392971 736063977 764649428 480500725 887420882 647064486 728664195 413372953 858019393 377423718 446722585 290113497 351935635 657833176 858649297 536010825 687048158 655905656 784386132 607261921 911708095 260590356 289218579 462095363 947611283 16588770 449162230 606852960 861957237 165309638 879843995 922775380 984456083 531301048 542497264 681043870 771893055 568245736 700739553 326331208 713043691 387523775 599988599 74282419 368178395 222241827 650498257 484205007 996454349 477145679 825012465 123704340 374784232 164533575 309503383 838366234 852560018 229299820 973818820 332636076 858342470 676691035 920004142 400288687 735787465 637611547 828946754 981023254 995491370 64219528 261783165 937799356 989912807 978033020 986982559 752208813 932140095 53639699 882881706 435732906 671418731 362499911 985970477 529493882 737777103 825282335 972493931 2881237 624196844 774878149 957574285 611728331 675221560 320856473 909006386 531654666 646207216 925923522 979187327 374455846 718537685 263691468 632140687 145887064 300688324 383938774 763242837 703803667 766187752 274527826 816402405 102817907 223524122 607267438 752730635 481209679 789118116 266728229 488377254 242349706 314533933 6273376 526205973 882956741 887737287 175765448 795714779 976496431 989770285 823879364 848963689 107297112 330899711 309669628 385174347 426269032 649996620 989198825 996892704 743633656 771814525 732912623 960698168 595524810 915748637 46772487 831747703 783235447 799293618 626339811 741968520 901548269 996310827 961859955 978517734 908459464 923383483 876047530 941195260 417378182 618256045 971738664 997763873 523522392 575389552 915021996 977048306 809026669 942371059 302675829 665864300 604923398 961952638 576098440 937530236 342882262 464130748 227527658 979264833 601216357 712502845 115179163 793535922 363245155 765991017 727441950 864389651 71240902 766569238 387235542 882725048 679227066 830452871 95167567 842016278 932195762 932480952 236207116 671975807 669214892 845912881 977051912 991112961 860417011 877462438 237706863 888233202 467293250 561662859 957692175 990832839 403945117 446273827 473039388 742410705 485828244 680794582 255845678 832648204 719294555 869719843 310019007 421629675 80980296 973958756 376970824 417725683 324682876 732978779 645330109 880087317 854240195 995659532 871049874 883791657 638583808 965108350 332285282 892100195 673637201 688183697 995957999 997692164 635857251 669471868 769483018 782224228 983764512 997665119 484181835 698838580 62970938 468582438 124361713 363408524 750229972 751261409 563347194 990733907 216566462 447192376 787625717 814790634 682723012 744422370 820699628 834431364 139920137 727679252 324531332 973275327 237184379 360152796 301799389 510708313 196980413 945511638 480646659 779766837 415610531 470770812 562310874 579686371 613237151 963510326 710059177 714697964 7670412 189257610 156085640 415732499 804339943 991508888 238274238 970687055 920566949 922711679 416682896 720640340 154575619 580891631 735533521 953775015 483357288 907989633 816911558 963734170 88044126 549599612 949879395 985291463 353351812 418298159 963561318 975407113 263482745 563335119 682676746 980985559 958027314 977252215 145177538 630793046 668926369 885250790 677966362 939667333 178896997 443174114 503990291 663667869 126768625 575759268 661208388 869479915 164120807 578106568 69282384 101792739 607166341 797656913 896547480 909834594 706282733 912795520 89965616 241506457 920109246 954806536 360274836 733349374 253623853 347673603 810365524 986753474 967387730 979601096 231523116 367821742 997797312 999131351 554727356 950080434 517538513 995553928 862694377 948994457 487260795 770334453 78166620 769870039 494360195 597084798 110941361 919430770 92778631 700974555 176943208 331221938 881178194 969393950 588842619 976500845 951815971 958487683 3620088 65297242 576169048 962250138 408155175 903170923 143424656 999257932 719501938 911028426 297868847 689821452 360766593 437259641 652283540 743313689 181588071 552230990 658713296 810116425 572301700 779182743 107356590 899668750 616298832 771132259 568258823 632167378 266140744 981233620 397739937 458028059 731945950 900360271 587829258 910491162 503358071 782477900 292805283 973471917 580782919 712727905 158675486 467774097 780119705 969027749 598406987 953396030 871573077 940175990 733737778 751700806 637708093 923380261 558718905 636272283 904198837 921127239 280817240 962335601 932817831 960681937 387503570 542433603 278325291 307725691 858824651 900808156 107997299 566693058 231094609 614259919 291137045 509064956 595623112 771388392 568404971 697672074 286497860 734783261 81013550 116853587 307413742 802691747 156908415 362776523 217868873 376404052 92844154 260955484 938221089 960010270 928406526 938514653 907691748 968122848 509975817 610067186 549686137 953974498 163209749 766360937 660562281 763987862 645736775 961124631 250068372 702113829 231156985 875879934 194410808 673203897 864842575 882469641 966287288 975137723 380798880 632424719 794729188 952156372 823455478 943625862 469087568 510507869 768718395 935131487 228151706 949161125 665192721 750761153 872837965 988390435 485188603 566270491 474929758 492798903 869482924 956052182 726507902 747012790 303345834 744374777 956945641 977278958 916484898 937655026 187384467 461932427 135468381 631777672 504385074 909010866 319501717 520447052 367766073 940974317 647126524 808101141 315767720 903593885 751940812 886086461 714572711 810329906 365022852 919341629 585673510 886359677 170597196 206960189 662870216 733301630 515161392 674918300 48701812 587196026 32295628 415686426 287892322 946371766 17654071 937883422 579946115 767659745 631202842 825044183 378009491 663502951 210623084 820834414 253880391 799562754 141324903 191741344 751187999 837646782 985244457 986173211 918867962 975185083 987214890 992389674 783579696 952893028 83729555 978985961 715388284 869254126 847760131 862955474 976719636 988612775 886059481 952398487 433182414 557764493 592832038 974395724 979939545 990300846 155635799 181180889 810540441 996827952 74875151 277939304 480805408 589933630 617525126 702712284 339864921 481198865 565644356 817366447 826807998 936095995 902381740 921743173 644584574 795479747 406241619 715801254 886543717 900476092 212206190 354458180 878578407 939095263 223941006 889660254 738478411 768575341 998975371 999840495 662745086 781855784 156986937 983290289 387728715 686404354 697879643 984140439 396991770 637210244 55510378 803988489 116105232 916629150 858318122 891669910 516055726 982694545 848581104 851208686 423514128 551269377 979369830 990473880 508000344 649691231 499324142 600966056 936887038 981143892 760616595 847957948 329859116 674383145 596794789 761205460 259395112 833094439 448019587 646598266 805917177 837078888 6646063 421248033 677575452 727240691 309285618 874413052 433207309 538816541 216603883 217143077 712987359 775562949 562521606 966789232 50725568 108073876 257321581 259135423 389514972 862918151 999751903 999762628 746087483 921855003 747776686 979135175 336939518 526394026 442631163 847308175 664092030 867332987 264264865 660932803 736041269 760549126 425209927 912903362 165895754 547493393 769378667 883100541 814051055 910389059 713378787 793827001 289333335 664270722 961791719 980986879 275671433 492555804 846735851 915186070 960328485 993623839 668310168 798370712 476141634 957812129 728678121 857864945 466045667 720210551 266854397 961096377 474966277 725989365 768939480 990114243 344514527 879172563 922089349 991646390 306778829 759063104 607096673 607295710 462296416 583848356 688499896 998556466 872548531 958182881 319766303 642234467 364001206 423067614 657128540 978050610 973373454 994529354 721888098 722448465 230224021 534876095 297009105 559392408 407080836 777798371 145440731 268971870 100808863 177310431 900488552 906610574 69536547 786651908 474017745 580480418 426428348 534480017 663516527 884534628 792351488 937540177 947160974 965529426 302823129 670800331 80334303 741900185 221227144 465544791 80815770 555264309 138574938 217397951 423495017 984821844 257559406 510607900 828347946 935902984 113938952 839197014 69514230 465710826 676886988 717055806 841725629 989434842 545690310 656453475 46461686 938160152 879833568 947737437 398989515 910897459 109709263 783883096 931479515 977409499 849145635 888030475 563783778 572390365 971888454 978463267 978812842 984770483 668937033 862400355 516405690 791486283 509313531 896059024 526809171 771567607 388421979 418052862 60721638 604248338 887413288 912772079 934526935 957233693 409679886 977521401 876744812 999272449 907767367 985607035 994016517 998425369 541734247 695830731 52404027 972033325 844926022 912983674 75044267 753102866 296634172 483018162 10877601 181875215 789339682 976519290 863412185 971885525 710333200 735995654 207258239 501657005 398292352 789237524 162424894 817728060 751585411 959066675 961901313 974045063 135798970 387689601 312223408 830013871 939339751 984729158 742628822 905971517 122030924 593103661 426187317 761172336 107862974 549804068 603898115 718372805 859611927 993235534 314907218 954749117 789759759 836537924 596394176 952634174 208346914 762647417 196885346 982979866 374193864 778872135 137704582 174091747 647054034 906932194 672263740 847812360 325486034 780559999 595642217 856199150 42432306 742292116 95952326 349618407 641885571 997932637 510805833 810969647 356902905 476119872 443851717 986666090 825058497 953601149 752207643 937504171 137077855 558114306 523491063 838169082 476630098 552990915 444813510 486736329 918965872 983959352 392876319 444854549 863470834 956253293 908020183 997709715 291348395 895258152 608498669 991397512 173647724 220535254 513964431 789420968 765970321 908107323 436175891 719201978 87441666 526720641 310188166 374116513 108297740 375345054 726970608 861571193 458779962 811763121 16093768 91341509 520183989 838112298 193929392 673700219 446032580 540022065 228410774 382722563 622895172 745452562 750460191 760392886 470099047 762631527 994302538 995443020 269151604 718207451 777999981 801833756 234111636 885682500 476895596 746213933 574963079 813118420 393320524 781530258 832053889 941556835 517844503 591830072 853370022 860970538 759998840 899420947 83097463 893466984 800269760 910063394 973074413 978916281 873425915 946575059 358885962 999903927 225233279 459079168 763629558 782147359 171778288 508038502 374583321 588497877 596216116 799936135 535160119 604490035 593343381 721180764 914575208 960214574 14214023 898909927 133316494 646212714 76851365 645413883 798969011 874123262 462503911 662629550 439596680 880371398 270245569 333703333 771794458 785603244 845679781 974479525 907660405 912657130 712906965 781726049 390310632 717795079 734153887 738449444 275770513 941336285 404472164 893282382 85221659 129691194 283218111 420035819 389364031 396590056 693798244 846788837 886244771 986952439 373112736 777446046 281446497 417127103 568709387 819952597 108175091 710826338 801910297 850928981 939046121 953639803 889993092 932047370 473075239 885209949 721337682 753769965 689113931 914839164 415488545 930600384 389674039 853213797 303633323 761753640 301930744 541045541 55596406 521457560 792628495 939047780 556187503 901528830 697945962 729126970 466438971 885420275 447852616 889190694 134042293 861725269 972061484 991615078 453988211 792706882 848597890 860674833 412265319 505965938 113645373 367750338 228108156 559003367 623268689 706703518 75998841 933630909 134803680 409365656 91137423 338302821 228038347 866703104 905638089 968682620 235296049 549882431 903988288 912356357 594872911 614505781 783459985 938533700 27312575 466125111 707947506 739006182 450715591 454507160 687950164 972614526 271648208 376926716 507548452 809826738 292382330 780274581 339260698 627292510 275256336 635532420 593031623 714526598 990314702 995978450 889744696 918072113 551030084 567630826 728341334 736458410 495135552 856364302 406560517 745637559 249739553 952097698 56180825 910404003 228369816 642490820 625518100 890327239 439296851 994165170 68699211 679823326 565544245 943336020 142852109 290558904 647175889 761358539 456458185 660869046 500363385 725917981 787956892 808669243 367525533 993667643 883767909 951247042 353319611 973803309 715448349 875671145 105346114 532424357 322727167 937099396 581291022 964444069 605761974 729463232 283969140 593701204 974072279 989954808 391949745 600398566 465347872 936957555 990921838 992980314 118345971 266014662 482398899 856242041 866555267 963712498 925712534 953633470 370218437 743529990 180922356 457390716 993667079 995917191 495081372 766344301 127937554 490176574 526434938 615922093 569343418 652583300 106027 37134099 95843703 840925756 620931429 917280464 636487883 870344935 729119204 763367226 209515010 913236877 868478565 900611567 94641697 615203030 17501318 499126386 519908140 725376777 934475817 990492531 152422310 160031580 542081341 752705915 12272229 381834640 494958925 918194570 704137929 973612133 491161887 948276928 969640320 976143280 537448136 899205949 823184730 951666131 17004208 767554068 103784477 138201173 14064156 300666221 423338740 891387432 356963993 761085642 262199533 520097648 475235734 868073625 710559454 923812146 912738703 918239231 109718777 415386035 445352342 807442721 525581109 743498238 156467311 856143478 2208745 121659720 404030334 462222649 125829649 881289777 131148934 745048103 221614690 234392317 474732450 521652619 871618000 929900051 23593906 484307951 598395229 883983369 28321933 78121524 562308947 937249391 498833839 980139629 498627014 648336709 695952971 747996593 373940856 594866173 495324518 921520122 868929703 919366338 605231503 746543779 657216882 785631911 49197288 147820658 431313536 968156875 799801909 992662965 420140540 478196412 597252605 815582985 34125063 798146071 462718028 793819310 577756507 702400252 128632558 828216387 322212309 825939330 272256956 541096499 551903247 692303540 851197907 955806075 4498100 331936664 660004607 831754610 987061825 987318347 903127697 962516608 660688309 723022060 541886240 745105791 723791558 773724980 724749519 824860348 218827516 394014658 530434263 835730744 490566333 510127257 45248892 326348590 669258669 767352651 291694477 738142929 897411646 921959789 935481348 946537411 5579306 768650873 152567094 894395687 852614688 928403535 478016918 492918498 969618852 992392571 973988376 990815440 12094480 37115045 773760485 924729146 146505381 361768780 878399238 917918278 415249401 841437365 765284818 823820146 808790470 995309562 586127066 844105569 156352356 413260375 427115783 834806529 502109744 760184067 293366435 352677406 259563200 938988550 405771568 746613743 78349831 118785218 882505107 980071713 102393535 499680589 932464394 979123008 360038414 554478982 133404498 741605255 56341680 119220019 993353156 997826775 437951524 889596514 688776100 765575725 9500848 705656680 443609044 956551410 541697683 889802543 818696725 874717255 914592310 977264569 273958503 463057851 218492827 588433669 913402299 995052145 801392799 807427041 90443746 437099181 132030452 949784781 930653721 988215958 889141791 950766366 588940059 756635707 11283105 482175659 874029392 882286351 302407994 302796233 593446950 962845945 748822563 992974500 870666302 911341492 336285130 947167712 967589633 978131802 585898782 612359994 964879610 968439022 289617713 567245471 857842929 901868862 370709268 467245989 300227832 644387048 14742716 796138068 583464365 791226947 215409275 938627797 56123904 940262663 598926774 827614890 575722778 853694321 776106158 895528008 217866058 769886149 210257346 519340705 132300460 477111433 43011326 618251687 604514978 784396986 53173529 269650182 274428394 964856941 152964597 795725972 3553101 231352324 771803765 826502374 767667359 929318265 827645351 908609653 673151184 980550425 576075344 741245177 756623581 874969657 872756162 996985261 916655124 978783354 63509107 601377490 162210094 714612718 273498381 675401627 628102565 647781903 344802591 346660938 212332834 527847906 419950741 481182087 586701810 907443265 165101648 909686543 75204350 217053972 140836749 379274031 259956943 604123269 469828417 687470758 236731106 979888226 628274465 903620398 197236994 841084558 335279574 676652620 909585352 933403066 925770690 991322283 50131861 210049289 412024776 834422854 279454887 348007103 883118766 924731818 354768902 570910547 174991484 282681077 702528982 924665336 34491722 46199191 589055876 603351756 159676207 376449270 968178509 968822120 575886960 672551666 34145107 962131098 702670226 861733640 967804801 996936510 802674439 945356747 656860748 795631173 449823990 568042420 394972469 889931815 756480299 961775703 267723685 831063396 729408983 872033427 86368986 179763376 381312160 988808937 592213405 883166613 502495278 696493788 44291577 619821234 385934406 606308983 197686735 358307213 763928140 851937292 40796270 685660113 63727902 107517808 446001498 648934817 199751795 812514965 604512912 900238920 513764593 885179427 219633515 448052052 601553134 825596909 311227826 586227304 849969837 910321709 938678672 980691976 318164199 624589672 994389201 995845214 409421447 822785909 381750172 411545416 161351427 298706749 84931624 561001573 707679097 941586437 22648946 190152212 255994399 530789682 177938179 688612885 413990199 484780276 945122654 966821329 130418491 157306904 902680768 940479363 802843271 974659507 757190418 882347838 745654998 963080286 18661870 565718105 680694368 760571345 287927962 347040075 759707135 778877321 557780210 616921738 722632308 813577874 133536348 781675179 358755191 547674276 194405640 964451372 908050794 949339704 381910370 638430025 377006319 567440719 85489291 640025527 911066817 968199055 384744613 980975205 353228740 378691760 446841536 855671970 600959164 810417861 740791756 990418518 210441075 906580234 857138517 892912663 468804863 964709772 277341799 873325074 625352720 680414560 929262507 988182675 681466508 997963548 527794629 777632977 604263543 620338821 446898433 727754071 808104613 872716288 756529902 895085627 847002379 889447526 465338742 719787528 721864169 772416787 307702679 515088717 121789522 265022441 554436100 590376915 165378131 246085680 380164898 957453837 245328454 820970812 520509830 884048123 830260520 888174027 831464750 905447038 493420950 653160855 261960352 700369947 191126187 209238232 25316707 752793715 985926309 996232307 143485019 364415129 479842641 707925093 991972246 997670101 384039961 886053063 528341228 711895212 879857189 977794722 546328288 634588366 144902227 774133974 704504268 732140013 708139795 730226129 291406944 647450362 70457097 650660853 475991074 849543437 370620641 986240116 245132541 779477014 655203449 973233183 247745061 786941636 272658501 500852757 452778236 910417795 830868011 841795444 811554501 929654179 715118566 955070933 35898108 681514698 32410326 121021141 817551411 906307544 643780025 781767405 246329383 644927244 437810462 532057090 872522593 937754314 685871061 865532160 190105392 876838921 769060531 992447354 564193715 650310632 534692134 632099442 671392616 996615028 276600148 880632798 576890693 916691425 775883656 944179784 922656908 947189688 41259822 651446028 625059060 681046177 585697702 836872474 731717119 855520638 468902869 593037270 915314852 934426178 951026120 971925949 138586707 183200719 198658429 672270981 971695870 994385155 10491519 967079777 861997846 914587409 344682356 905525340 907015929 986047189 172537526 390062520 750157576 758738762 732450916 956026089 86048516 549516405 94943205 378845108 334111585 807622061 450589439 798877133 572909659 866233763 745092767 904160717 365050833 901108202 444840030 897878829 769337518 892332657 873052257 891242951 439303996 534397042 334275967 712768843 988994886 990333374 220953108 512846724 226386268 959395687 810958764 860867504 235854616 807044044 681712030 757431111 780236054 952488700 655858849 842409401 134926916 895112843 800537139 923810472 346542471 497202578 20200389 96263884 285704499 468763465 376532951 795373746 675633658 765176241 772076176 931187672 590325367 690695689 184151738 989574219 771101928 821225327 138203898 506715212 947231521 962495993 127622809 810251170 774280442 802151489 973489179 980746657 985894046 987134519 863536139 867120775 451734188 627521657 745631259 774302001 143332659 473954081 212900514 516033607 364017559 902553288 69234305 131967458 266378789 500301474 683531946 896915408 382033862 983616070 763271951 901514773 108917665 768659177 976875085 976965326 941885377 985434057 761616731 956851118 905204092 946576172 836613521 851149975 800879526 965261244 330689192 933264378 111657754 871327752 416594179 477756193 127939862 927044343 906512584 974458608 310050385 565372085 968192090 985860053 284335399 896033061 364753210 386735834 748617485 896491587 271376682 906006270 259359767 809280537 708162299 738488698 895929823 903284819 430360306 786247808 919078804 946238984 619422759 935214984 478032871 722963687 327986897 766429568 418885004 475189810 400072631 403645541 753764012 974844827 374301417 889033236 797701009 953228404 298694297 912507519 918232129 979253165 255773651 506609386 812674859 816968164 589154666 639199657 391249724 414278147 602239776 774013349 103238835 811146238 894630487 948150474 27459452 998570393 817210118 923641783 702882028 843229816 986948238 989538724 796668919 994537824 30390264 786342690 442424589 900507462 753533701 754429549 291760187 979552755 99960378 505725457 581139679 835086548 252756309 613561257 64187235 520766126 476555331 830938674 260322448 929556735 19716359 690187158 55779759 202506909 874305870 932924836 654356847 657126847 743714519 922086512 114183969 364550012 989784964 997927015 74151845 573229116 680278483 934458925 596604989 816408883 884551946 931470167 47207398 93478636 929311695 955431661 439431341 633737989 694668618 923217572 624004550 695775745 938117745 950312309 798045938 931401400 545692736 817597410 799698369 833716145 937101691 977313931 430149260 691469370 514839306 975573340 96933143 219326876 951041632 958284150 701797074 789539243 153174878 665031231 501579707 913507499 597599298 733126655 496297691 921570947 38387364 309990377 986706309 999645343 795795025 939718429 341700218 612836427 552095113 798614279 293625706 509140106 510261073 704174457 15428177 816424953 77300717 986989769 143664607 739635256 803774365 963877124 480567993 535053894 270998409 565045238 480852571 546786485 716780986 738072611 62598271 487529090 800745531 873820385 775190544 825160483 425141068 563931392 639580850 963423571 230724168 737105590 790822878 871394788 209608119 842360229 355177325 978846546 947189210 971623387 559570922 697590327 851471525 942376230 925695322 965692469 119711862 854754451 702248372 898032078 727511370 992306154 160696433 498800614 955444109 978619491 160620894 236840272 40456558 589882430 488059616 984621019 357262745 368369872 675002593 951625504 456617376 705772574 127155465 585764244 133397791 767358460 693377576 936616393 605676622 915852286 727194182 995576951 908941818 943402704 546982689 820270065 85664205 745566738 829001513 996564888 29543170 355570717 797895911 976863737 643170350 695273860 432482185 916703389 272449772 771286241 612805870 847598467 701724896 998739589 151749458 517300086 790607777 943739180 622784562 807173146 569121549 948645688 900176170 918346032 440976138 932868790 713823978 949314243 106081627 921808995 75992656 158554945 438658490 930152546 746337408 856858160 516018816 688017677 444785583 531607863 830540279 981904261 835548622 868277104 911407285 950036958 862348506 902924854 46004119 611277885 455212053 701560851 176764676 416957325 426013978 554770049 988907605 996725599 41716147 207627803 926400807 935376863 132413207 618546517 986203754 992924575 239049573 864747290 585130396 702720204 224369371 439508744 314340179 911232174 221288618 442008034 775960535 990832876 305536357 377514110 158510623 288103420 911175408 999229219 393493905 781893004 621450881 713094887 121933347 425058560 456953762 661596356 415362248 869640964 360213686 734825375 583955978 850129304 550560367 873898985 61938679 644598700 561814684 603559964 248989984 498768134 935399248 968385526 259677518 795273877 548558613 941328571 276590987 587103640 922311868 957001307 30658553 728358200 606043359 741518575 647327701 983722005 571126257 902178320 298214605 397151358 321249876 703082267 813533309 960774879 936256000 987036043 709729385 714026650 493636064 696337670 40412337 977273488 642463286 925740932 84647680 482192490 871243254 928363540 351819432 947243446 695418091 892864464 333358422 878104595 527848061 617996587 773192301 813450701 870357631 990807886 313919749 386133095 250158411 503350230 153633918 473307070 458045969 772088390 920897995 957628602 258147422 801609083 132175020 836440682 938593717 962428629 915329564 958851564 141141103 264592394 332366313 886278025 690906851 798984161 973588900 997655874 519280979 960692630 680278056 880292584 855045598 930894268 174228325 797954470 312165260 697586020 648862655 665552046 680269899 741778433 897857974 958425439 94580666 128858469 918043822 980102696 363428910 696738609 800304656 865835509 979361346 996788828 204705067 821216062 969682394 989528876 100353830 467299086 253706333 593260163 446839493 934301289 65439379 99660905 249090461 380195627 170493197 827259023 612546881 894194175 875437768 877991309 872414886 899917081 785577973 945899849 850147433 892725659 619934872 717831715 195211839 364964540 991338917 996560044 489737727 505963557 840605852 915021547 924364244 956409336 16659589 675492049 105649841 349953382 85829814 838946765 175958531 937266085 339226961 922951029 711911511 962284981 424839074 663419150 450162988 643501959 182851772 935394429 307601181 564047643 15032384 998439727 281100382 798960466 899002425 955648897 348085297 713914431 218883671 924188870 72837385 600971005 568898108 832434500 11411063 933989840 498810215 870521460 529714015 775604634 904749957 906897291 129217376 564386463 234040034 711215604 766399378 970138062 429455172 973722820 869516848 981402780 485422663 799947333 203452993 848513432 440186969 488746261 815944495 837180312 445875652 869615551 895632417 968770888 296007677 805200270 40454704 844468815 55177352 302332982 808699815 982131284 78564701 134335726 24005711 651948566 901741956 936282089 160248840 975836404 616812051 765758547 118887248 230700561 6327002 409413915 904335836 906700823 458782278 863140897 150431228 451186335 308468104 910596830 840291422 932738102 724639447 769367028 804555137 832721291 422841616 427549698 259328920 458239755 86636964 962641600 912427545 953757652 524175981 751804026 820962843 927403504 248873122 987322127 693835070 990534726 980352390 988703713 508423687 815617913 392367112 544931020 342404553 982397936 146712396 845648618 167171693 439030778 980984523 981083254 938406395 987605233 851955030 917903563 357069539 808446695 862253344 923583275 574267976 597257862 527504239 710351695 859429253 964041951 695890037 893220526 318172657 507773659 388326610 528329137 695940074 909792648 72319161 747261284 910682941 976987849 892136019 939742473 515846143 597365673 432145943 911571162 490524963 720257546 256400448 794594652 731195501 905675086 668455329 782563253 43546135 868854739 53217220 772214917 608749185 788899961 959437130 973344563 230803665 439182763 237403167 521425198 43767971 411151997 544165365 748445275 10372202 565570226 486277919 500370155 299095928 704274261 431276371 991256346 357571644 458172640 467341263 763006579 504158612 616516024 837980995 985082581 152739449 916734265 161471578 236270389 957990973 983513105 592978978 858222453 200481487 856199185 16611037 231083890 889937070 918132674 376873589 977359437 294367152 418974309 678161422 951532563 236014684 635575457 431241237 821256957 272828667 791741028 473782281 659599270 38592510 469404822 728674334 783617710 255188494 393779529 501763587 546131269 743771969 784798359 984365794 986850640 590294386 873007876 413457803 769518177 830590484 898026678 528284556 623026000 23472963 751098449 278870493 852437507 191687145 240642524 949248591 966917747 657116743 724080698 479157142 625663379 560123445 972438660 34366776 973432677 136911031 860449182 438921220 780409946 273049188 589825557 736744378 860137754 522270612 564782650 330802902 633919728 313956429 464476214 565325536 689600532 580079077 661877533 866042812 925174687 430410445 593054422 955496112 969393727 319631556 764764352 591063230 884804417 59077031 530437850 465232332 548474758 729723481 995110690 286697842 798232026 946572504 982291748 818847326 821556344 391474494 496434588 611762014 793291288 393009841 691779725 643872923 924402883 728832520 827417130 25004185 932036921 940235591 978269488 60260320 675822379 227041021 513327571 154909916 367177807 507912019 744238015 411706780 603135534 464670839 948909709 688950866 927398301 407643351 683972283 154956085 442154239 813406677 900859018 538510009 785636298 427767749 805223151 995414221 996757364 420274484 824998126 622693789 668552766 842463788 853373243 541935384 767268294 972637016 990783864 665441175 946514991 514305672 569958981 781833652 821696483 612918771 669172983 715728985 726285311 700392853 955998297 955715788 986806189 865272351 866610753 790107062 979483602 925788008 933561014 787281617 905706602 677274246 772813285 335327592 593980834 753625845 833465989 486955725 690182539 722460221 818024017 634397130 855656552 562395727 596128092 705349419 795621030 574319190 606547672 900963894 918261028 759775326 763232662 774453210 939393419 793752291 902099825 494512559 791920577 917789979 951614577 882909194 961650806 610019987 732196811 273834631 346369529 770410214 801998334 406288775 833159772 716724352 817646569 331886461 941047469 707126589 741683543 875490510 887542131 383497098 453193495 731339191 785578075 261061045 296011484 264359967 949248025 609470618 686662591 349905162 537799572 167960118 449928608 624314779 787894057 390593645 463757669 607994832 917401987 609136028 618817336 229177998 945318042 946865364 960350379 474024727 895173432 839362971 843426274 138224256 188024996 850488266 975533215 341177596 832494708 291306793 296816777 611504386 704771577 419687767 968183309 54533402 90539918 265993596 520498421 734495751 823003867 644309410 805693529 748475305 759401531 167674343 552325263 150329831 956586680 355097204 539534386 510392277 802133793 292057758 834488767 707694774 925406731 169253421 918252911 327632090 872307844 3010597 713074235 262812539 553447053 397817351 631650666 12685713 698707351 519672855 902513160 606646048 860661930 211991815 276916730 745484122 827134080 944581632 975358443 284149953 765224148 965017569 983862860 245830279 268718030 989824092 996386171 451977090 622657268 399365987 988439766 999904268 999969846 216476738 492677299 816768023 935972490 643164364 737944424 809854506 861712380 354047169 716604146 494902393 738342654 675888214 773194716 499198479 959648645 861627580 872832040 763952360 938961533 272002794 870576561 842658412 968560134 998431466 999920191 325336016 983974511 262619564 310230109 439851765 737721207 761022974 982039870 155028751 156356510 627969537 963883245 804168705 986021238 547284093 683847298 169816481 242081553 987654980 996917558 652027890 661107429 647789663 774925471 144853746 213908639 450450261 626161683 840422891 869862480 34257286 837679199 154404254 372851462 510248260 738741528 948525371 995848539 419293978 846587647 767287320 989267542 668510275 683653057 186750589 716738634 805070756 858711804 109071271 149308932 223688333 663537206 749388217 929916377 933800360 980058465 856625619 947816171 65388254 281136692 642524551 743084902 724598467 732450251 271926822 776994995 596902041 793560027 487781888 674555208 496265279 647422972 319654773 380789202 48183818 909365264 936486359 938915073 855314813 885148623 916199353 995815108 843590675 850656004 694314844 923715640 83290736 459807266 294426273 947949932 840996168 860826292 355021966 787614290 790588444 975512145 784479860 921085887 777082165 881145817 107844811 954204408 881102458 942675949 99288033 178070478 555264473 684881394 122159134 699105813 948112423 964525283 471141810 612024896 446171575 535393570 861466964 917830037 940627644 976737697 520761512 890156401 756017241 824859281 999435680 999528883 71958535 676997652 393001500 532835198 495807513 970738937 243886604 955558754 450560438 978694495 737196803 996089495 845043676 951889991 363983993 814574155 257854282 842452716 797639724 864979204 932868178 990328071 968814295 987778179 368647538 444462403 888668105 936481313 779532518 983410431 572958709 725844111 448001231 577451499 512415551 863673265 732380546 822236675 745063032 845280784 809431278 937583400 37146436 367314667 856555541 961155492 805989994 886929135 345176081 939038434 795386510 920194023 72612678 577486970 395341187 998307680 351097598 702938961 497742572 740330626 782848091 835759969 15539836 198652031 432895484 584831155 922432114 969134779 951296093 989407430 239572923 301005050 881601726 906451543 886314672 933215205 211138245 518574539 289054620 822708933 713093618 772200307 950753304 994818729 919339620 987558680 948240238 991351488 728896025 989526069 129441320 245181838 186374226 895782990 226476665 550488400 762339939 779946779 190187309 868874672 157444543 787203763 52056585 218108669 72421530 448708917 450616520 558205402 839943392 962242647 905668979 928272701 985654233 990081564 998202146 998808288 350451769 578413217 267420416 436683620 628335393 847179377 866657631 959760223 599231185 874799722 991112081 996345338 329991528 526648506 316446547 718048220 465048901 619197045 204885051 248247503 820116661 881714522 992820012 999470520 58544012 664546991 338774572 749342514 110776567 709835495 50045089 328661980 570939432 811124207 209769973 844709614 641542324 671699568 112508203 421409491 123111230 175530701 429141273 902762819 655100989 801681885 513111846 658530792 929631111 983171363 844991132 949419419 444141921 834825738 90001487 129255116 578597165 687724439 851645259 880596272 788520537 909958588 327478187 810435781 776952314 936152650 269027632 748021669 579107935 868631142 52111796 960205103 679215260 748207268 203254924 798934391 838101446 976545270 750108620 941267962 697681598 707956157 689295519 942443244 620858212 675175494 123398507 810609419 269167828 451170480 929460879 942948009 868223718 897764654 109525248 367168997 892610772 970592680 469754090 549452907 248277772 634508813 467027463 700832303 829847126 952661763 163921139 527788894 802509739 916499048 763681847 909333503 438946189 752933031 881392948 895961510 290295629 628785709 39365492 461433221 721241390 846811919 659503242 728839861 559582583 629184445 661540009 670351829 65699940 923110663 209722531 685570970 678555954 941297806 45448992 830606958 737911166 980208563 599112552 767633720 427739637 900486401 181206824 406015620 459640491 492344553 625142640 783497502 138039312 581422739 150297012 392341349 467715105 500144548 71073793 366320325 116542781 200317095 842926958 918959855 153607126 703840953 94691709 310184194 262261663 872035315 576358066 781566989 374717572 598228010 821021237 861288203 171086324 842830815 844797721 937438583 277860800 317606299 331364888 854199014 717385835 836518990 98280635 438683899 470408521 685240737 917145051 955984800 824450471 968750082 209381011 293087662 613832809 769897736 233435888 482629946 485372373 651219681 387369257 439957469 358503870 458966780 72339083 893183281 93612840 893851541 943008644 971266693 8269699 692456327 785809609 914121026 5248278 274115157 89654480 579124642 244313269 303541983 591880075 858523886 740887895 885657196 534086098 851992504 430501510 834968008 211567514 406063941 542717855 665048494 745253466 772953129 544156029 990388549 157938660 842708518 403646455 542500301 30987048 174530837 655092862 750852527 772388669 959713937 552323982 613299693 629786506 940642799 940278440 972531624 808682957 966817693 367479726 868213397 328462033 929908038 344022152 527913515 533441781 538423262 620490316 761048591 935905018 948357051 734193195 910545982 242657659 764172494 7061878 893739265 837586402 949767496 695466165 896384213 711479174 999848538 277847431 736835419 367768170 919533499 410251480 454439546 274190294 281812661 392483542 813194431 777120633 880625049 990786486 992514831 701516669 926395121 105031915 433508276 213220560 222217909 349558215 519244948 6906348 25121113 424113375 462154286 947479185 956730143 489261961 802850894 733124918 926533602 272061670 466957498 831813263 886946729 334375486 624690539 102028756 638672110 290267441 412516265 963311814 969836673 107806474 148549224 412314660 591257731 575847593 711064857 973077733 995523353 386635253 938230198 926614787 950006897 871279214 873097714 649074776 939391417 476803298 817882978 597774093 718097827 292860165 971555315 198158860 374852001 432978581 900528214 985485977 988829101 277529115 507119974 724496368 752365650 992043069 996292807 115151505 151636378 138738402 950892239 48652259 920324796 364854266 773614059 939204952 965176225 976638750 998768494 991440482 992811809 961910471 987559175 909069594 952755784 672787729 880832438 547001556 816016196 2746150 625724601 422890890 537785723 631490784 799856777 601179411 663029329 536810439 890255067 367872539 925127398 260939523 995208133 87579061 804170144 276265207 937584833 207555254 868415022 43545213 736653165 290967059 773370804 886901451 890997579 839636701 847788702 899186459 942611596 39618241 263198855 252060904 334823194 506825617 826755020 222369792 286614178 351215381 596534858 203382668 596418100 384804681 551835844 3456371 279386189 57240942 419573516 680245293 726610251 117348279 852357321 845412443 938244142 813582119 839408006 767039007 996342569 103914348 228300557 669075133 691959135 513980378 910576162 393285142 599588265 960850703 988246547 484294982 682818025 151217686 983074843 772877614 915252884 657855434 714746634 457285050 584738784 571447361 875336425 858980914 976709867 64095784 220220959 10461776 359230732 58927938 765797148 76518891 608653237 980389534 997997964 650197074 652232388 86659310 515397640 477626699 626136322 31963414 858835724 478840480 805317295 993561532 996533259 405895149 806538085 459030161 877278337 705835459 991626456 699773453 766437322 250635403 688477500 780564908 919688946 988051795 996929286 518230485 987438842 621247697 721334971 361419129 634044425 426083394 427655649 30937952 854148751 684753434 940373230 187544219 736135670 682665807 983878381 922944071 980658679 420812563 878135582 604581327 685594561 204424983 866084194 997037330 999945067 49484393 716188924 509422252 706896215 702226802 731157932 604499603 663908789 386664700 484729718 661719830 757969198 920665105 999209037 249591505 810243047 418132016 595368678 382718161 465997237 642860751 899611466 763471836 846316667 420855438 547195552 795111513 842481416 813665599 996028397 688165202 985281835 283119762 653779569 44928301 947395024 227897842 579611821 552552792 600364664 580792421 628194053 896554612 997711919 210392991 392627421 612668829 646541739 904641108 970377601 891711109 898714163 451553240 830664393 893552782 920605932 231482183 426989728 738153515 916838033 708309001 991388215 195364584 838615987 297891082 671150763 225579188 874171687 432836862 584610886 691287864 865316171 152857060 571647538 749627172 965487685 793430084 901104212 834030798 932028921 627330272 910126842 183053207 453749260 481081840 868124776 807409197 888030082 772484618 828018918 741153427 850676082 658790729 687037447 336147781 357017250 690143669 743834058 355617090 694616473 536704725 647198820 680793737 839942367 674075897 989059098 263120036 881231926 269656696 377559708 558691713 985637326 379413807 868212857 563493716 636557469 271461002 377430119 650213061 995641169 64652336 536236018 839398387 928851270 389718377 915799610 329431368 779638650 76298533 342008355 38742242 461496097 531621594 774825935 94693815 410954327 259179087 689375534 536011208 702960013 492472746 869303342 606352649 883067432 584787517 659076007 715990880 723190155 450319147 515238588 343553579 856194768 771341481 827017227 46820536 663442947 926362251 989314850 25589581 812309782 119771933 356940757 978592257 980824734 111592170 792886432 4301599 875957465 319580956 756870132 388856079 661279660 279721998 727944761 739780293 774480948 524563221 568349008 741870614 957281913 82351093 944500578 140549814 301879565 34856633 509479398 529694337 727255018 801720453 921456973 314275772 536565989 443896984 907612492 589392680 683096496 607701510 698636048 74543954 710328283 347770697 918406030 963001030 985091302 354018897 779407185 217935210 887475973 294862379 807610626 237663153 890541865 14909243 564251828 626748921 694948941 883616768 927433827 624445547 764140905 145726893 474049733 970709190 980119545 537606189 549192346 109020812 969738110 487158548 570104883 665615696 838334288 422745855 485742999 390126853 672315757 932599073 996882023 433939147 466481273 476659898 712528614 334356040 346337333 220032019 869875421 116658597 415468190 577275794 661049644 853439278 913943927 189697177 432500561 213854279 755131372 5515149 829770652 146107453 603421922 248053204 388429179 821410777 842211422 727228667 867168310 978391985 991778621 949542921 973432742 730975336 988298034 888508213 910358315 722755553 813220502 409524805 902465996 29737679 565986718 64447298 382408249 359710548 559262818 944559428 955851783 661725809 999841879 716615556 736895075 249422476 327101373 916497343 964055620 940339661 976555640 394408789 479074321 152859718 889835997 15649018 655606681 355676267 791796991 761909466 986808708 996295591 997178077 149276324 206135920 760378832 790429580 740331612 762820677 390367858 731294757 335132401 935543394 532149263 644151936 315926657 935327063 466466686 971110818 81496615 356194918 101270760 862779502 330431272 596912855 850720314 851643862 527558272 747695242 823822964 953158353 623336016 949427856 230437288 942749440 369605223 648115840 551695439 855065416 676945832 916000735 747298266 824476879 984803433 997895683 631523591 722573649 506436375 799741857 480202715 535268286 609693853 989241338 828843540 907621279 651880913 775355933 985950236 998271565 661520636 705714781 364320194 775516021 646667465 844505610 890300460 896622633 36343032 530393045 854569244 885627940 359615777 557398390 536619349 685285291 142779094 428269095 460527086 884476333 766178948 907606959 6172956 503273460 843575726 864449698 107974612 358938929 179115751 323053385 417470646 976242234 154480769 585486675 453656632 480190085 783030507 848841685 203993659 353598961 156164106 451727839 484162599 921809430 586164357 991957860 485097615 734457248 475290743 761340715 652565602 988746323 524076229 894602818 406010023 955315799 857646881 991218660 991447015 998248229 204847995 273679904 954105788 954861275 848073524 967735815 912589694 986476274 609921083 829303883 646128758 851346254 89577008 226752924 368963552 578628692 917228444 971431847 604444620 767272696 343028456 905757985 748226044 867146984 37030144 138751189 561839934 897033952 697731655 949775470 905388330 981199649 882700727 939773535 368843968 689105288 936686068 955663017 30459377 861930889 338703710 490648095 825859838 836852449 357238823 797128602 458646696 727139266 379014454 611119214 886683139 933288135 392460145 439979900 863202956 940044709 76015683 633835505 152105161 701938417 851926572 915986775 281652187 405965466 541439891 985867170 380924373 819051330 68802233 450556325 928854418 979283908 950919031 959029050 163214310 294322351 573653216 722434288 299715366 728246836 695609351 737420223 657535314 801192534 395150156 738655647 940958199 982709710 153986833 651615235 438818097 921052999 485926390 708074387 787655088 925313983 227263938 503537477 765176899 825690100 933115705 968803953 12955794 444352340 930013156 983994074 967873212 985774586 373792987 936456472 157565608 334578341 230601996 615726039 862703763 915179546 356219425 704380999 917381942 968458133 548418156 752464686 508869782 718533236 351997348 400454459 313477430 401612569 827197992 981981285 877501959 951495657 403575957 728123848 962069103 966744949 457236125 577614141 106843027 548997029 998823571 998867811 959705074 993807961 228056635 874263602 923543742 998006058 704033066 722341496 278940118 394527542 897627990 908138505 314564968 870791919 843985683 872941781 301538298 509536780 553769032 742435287 180407663 487167097 381025972 631448634 908386066 921064753 950686556 998447890 666709176 728348257 425394247 453265115 646178515 751364241 812421273 921999728 814282075 828352845 273873401 833149995 417598652 662416177 170153509 428905329 585433157 886668229 46026886 396530805 419424192 642948653 579812475 592698587 129203014 337504529 25559062 526161949 479734976 946644819 273061337 913203691 326624271 995529048 922065979 951831140 235385604 795546853 255110661 814294548 469463290 994267958 632473565 790287473 457767767 519858299 89277236 715025202 722718203 757114426 213830100 437221817 795942028 936149926 291146437 633311605 809877051 900407335 142425690 435285602 356990643 833990343 860328928 915690585 252810693 804243750 391613952 903150280 440618627 601617585 226269917 746622554 101084521 117729239 291786383 802051626 216105796 316292403 96524239 572854034 901144726 952425859 408148960 712115865 500644844 549097061 187563123 705754820 544497402 669309553 602373742 817665835 886690218 948998914 395394136 990374293 461831783 775482598 401848495 875899300 955676347 991666989 363103977 826258362 597816276 960054555 707357136 961649061 626266748 959784604 405666054 685034298 460695466 954315016 682907038 821299087 578980276 920327761 26011224 430814038 278650440 505547905 977683161 992453234 200616886 619400283 313349707 626345850 662439263 668604344 589506078 988268137 532825997 725699108 451931939 653469313 787184277 887300384 122263277 338459837 758295820 943440818 599168077 926928906 837034698 920824768 320120495 590562849 889318956 926872179 97235968 162949792 489572346 995512276 97970565 131777749 67307412 693690856 674282174 691771780 830772966 881524666 987319626 998765301 524060131 540820967 403467915 796057462 406995996 605301003 706297089 946471141 265580292 889833947 20831423 639475656 384260493 804116190 681609218 715702332 712168847 734383876 670895827 953563689 500233539 985044981 936637544 941236590 549403751 825863244 405746152 438458604 129911134 428221389 227920594 364605996 678534401 845622926 737061319 870791090 109266882 561620586 997961374 999836186 507919442 511794110 73378138 557693067 239647483 821773380 863583296 924912289 500874770 965012090 835032963 926435008 490222186 752051593 206105584 366927629 154317405 724145101 625579964 697704421 548687001 685824298 737374374 987126800 772838177 838059976 793619180 923653983 616636276 852879964 532609299 794938526 997299902 998130321 820618819 975484101 661899953 778760256 428012119 878325301 9117718 493318772 328801233 884666713 918643047 922457437 602129448 670480524 757661730 858219152 598162257 723389549 983204328 995544152 167090847 897730418 685040386 865929991 411394862 444560459 528944996 632729920 314608384 656135746 42537130 186087437 323515806 964217823 70513117 780185585 534381365 698113218 416520552 861322014 414985435 678902889 327245413 511198615 652944423 851608755 920268900 980808058 746550548 905665684 800247496 998662339 287061848 972667348 415508396 545453898 807091826 807882305 239169476 780711773 512723249 861742902 579897005 727574898 844550397 860317031 535594698 923059197 218208669 588575784 536549271 845281949 935351790 982449780 215889379 716758839 26378930 880906926 556149938 929175200 356800882 941053995 613440615 704728888 873253040 940450988 425883965 988046974 357516888 667968328 210359122 700385088 289295774 547373260 731213234 785875061 228038144 453017085 892398223 973715940 394802391 652982129 745239035 759640911 216223461 749707624 720593465 906574028 779408528 878463539 903667561 912620062 120015755 972476556 597649508 863251767 194754423 965828757 83860236 748862169 617023763 772567102 484912167 920177302 728177602 922065849 830391795 953652320 197609617 316232044 311126728 326487668 962642683 965755550 383638827 776915588 847293578 867061504 701499691 874533158 723017900 945388548 271077954 641125557 256422108 374810099 956914777 972893272 120309409 162825627 717484785 937900192 456063313 863554414 564139967 993150123 150859840 484908680 226461667 528860586 561765174 698440144 145596290 902632069 52085115 586739468 675615656 761705915 983075714 998158700 330116682 835663933 605245402 622244800 412157754 419110611 350351607 759162582 547318355 701212207 402096089 740881503 66779829 205837968 207506136 234079132 948453633 984361676 16958017 756068833 792212720 859831554 170572558 671940816 828225659 940046886 252374650 475303230 178380151 673213502 463676377 785016807 557686576 642534467 116468266 173478354 826593583 940574153 694152264 769960831 311458744 359992001 356777743 857393788 162098434 485540862 782548583 856475074 974219127 998916366 913269183 929789469 538784856 924910582 138208238 745936145 305398333 636638852 248446256 562499240 223945483 858276006 500843937 968148011 777692583 792897275 217666744 802951880 9079256 566122487 74327086 778903321 881414842 976775602 164452941 241863878 147917959 251843744 428883073 433811788 623406066 742921202 868847096 888985852 624832095 813105343 945926762 995101220 71696420 921073046 264371025 859656681 197273243 415725407 680022633 694991145 783183520 807137866 377415528 792091233 755768261 999823219 554875847 926771542 671313383 895570999 907241525 916206272 750587807 867906236 686178929 795222052 197478026 480375679 700723558 886226203 514978599 745102927 529846472 856178577 297140851 797856561 890943526 902338221 610868467 756673002 534343246 605382838 532280632 671332079 937358825 979848311 231440469 853601948 556665340 610204881 498222611 660727679 427829914 553206657 393104182 753257909 498502127 944370018 685657463 695405018 271492807 660695204 765036460 857637887 632226593 816234064 299539480 337406407 447032779 909860250 495701740 535241412 397817614 856999747 656298562 658899619 842723651 855974362 109031346 961547293 275973180 479103219 452769162 551814999 413476747 791031918 283797763 688507393 189808405 858652434 987426704 995292116 797432255 871931514 669649584 751758680 784760392 906784983 829034521 933402074 891864853 939787769 867372364 959237539 805859396 978458078 683987527 747198372 201798754 844355112 43895949 975528647 143136131 160316801 273240442 993067405 143628106 257963613 940855467 961772133 639413199 882821145 388397118 992799948 973350766 989285142 413456387 690054796 548692037 769638793 150288436 170213750 7628196 904000127 487490384 804065487 928274484 947967667 449966004 927804597 447626439 730404996 332980373 916101582 654226604 681707796 9341527 12321519 223130071 833211355 986110991 995408028 523624563 954584540 72048643 550154005 474787225 754336833 337550246 693312875 136845278 805110276 293090894 536558443 691992797 983533385 479526108 520106406 790633665 990855435 312062833 476209673 622002391 886914758 60741671 267362070 89165844 546989183 872680703 980467719 446486053 854751867 43657717 216807900 431403330 538939939 300489835 702615565 264790283 934202078 454859866 767713432 24999141 307297022 842154420 998447310 5758774 632977790 313347558 702849014 802965244 971729250 481554673 556029261 642486444 822465781 429701543 829277906 707238859 755194862 31704693 685198456 206233537 636406895 226040967 688705784 482021965 709615607 260880694 522730092 585694196 677329914 286603075 591828830 2371300 14519614 810703371 888672099 5126321 135439070 585536437 677954619 185643072 642235629 11677628 781670452 353122634 640899421 947617356 973098793 392874955 784682322 371659799 446303372 578339170 702091144 447969355 900900973 764943275 937506717 617238765 958216683 703239466 787461540 224676944 430893197 621083858 754512623 342800987 873543928 943984453 952369391 363784822 395297332 258031197 862915591 204994934 985558686 955269077 969555945 310777851 424555275 602797640 832383590 876151262 992098257 186758587 549630425 365232173 741710558 868352291 968912887 499443049 647360245 869239259 912992105 647344106 821522203 881143097 953281483 193226491 696168837 923140821 952838303 115936520 550189219 151287460 455648837 753055701 944495228 112839475 666956996 454076329 547212424 598633788 888571008 962159206 963082631 903122709 962892552 206102972 597441279 874488724 915968526 772587522 883161445 889910524 981526525 498484170 928526196 591350858 855610410 184765665 465040170 561762380 895192302 100219951 536411039 12822349 830884670 19169206 666196170 816131510 964713286 473172231 570809368 555169379 624025385 44779750 206605084 494356910 821315314 776951264 852247580 381130778 776334603 684754769 819723402 822304615 982028567 561266727 972988487 852879055 878537410 228515543 330362767 619584211 849636444 799417448 883444592 996778329 997502431 545267214 704277493 884201749 942185900 145817000 507014873 948120824 999553592 832266708 855900315 807965755 999103397 561136103 995893928 559545427 564796879 725257329 942054089 163519591 631072771 740302237 930379452 513782601 747833929 148075856 947596635 842949421 862549155 218004120 760216078 839140518 893243249 823847250 842527294 272574932 524903860 359707632 912085432 452631813 484230665 945794989 988216246 475228798 612309446 306217527 340931621 788356092 961620312 823027723 874016418 534892638 968819979 211991026 591709817 293789063 529852475 272692605 378118544 285815051 405887102 612439053 816646735 78142655 97950454 168142406 333343926 456309970 596048084 731209890 833752121 651044086 733844895 208650826 957367173 645375084 671283489 734348005 993188802 345651136 559493004 622307233 772825914 802622253 903132152 657644951 768475217 792640905 962493855 579257260 583178878 205332185 600792697 796922204 997197888 797671541 830056893 698440791 798440902 120597679 149086158 601490684 877730189 408204799 877083271 664967939 864234036 608051427 621500173 850089524 926082274 778635375 850802987 637047292 910649301 106759654 897715454 889920185 954258395 238845467 500989344 154826140 214464150 483989053 746109986 597604089 950897807 837496346 878346265 340618346 954621236 786237418 826355901 565735212 872570628 282169566 697470805 103480209 117953077 137794780 746823332 150978296 945977619 225024347 876789257 319974387 620878348 380299099 415775090 647552334 887310486 58534232 409325040 372923812 829072441 694651681 934728644 737201297 970174477 230920813 318887357 77214184 137104701 899709503 975029361 258528745 508536308 747399532 763178606 279056732 634041555 546474252 820802054 285476793 325265568 759931993 857781987 205938612 408010166 482875161 734586628 943610178 951286561 293972291 631014729 715323648 816789690 384725106 828868636 246457859 629046767 757356811 938023759 569031781 659713466 68030355 842941351 443718384 852258540 733422887 868846710 79929549 305826500 469776727 508441540 749794056 822895698 520053037 998076334 72028186 137897696 946957134 962751645 539229964 936346034 193138091 385796058 308690578 639240781 293596945 779201447 127870434 455933461 747438628 937501985 835281517 840406031 676107531 849486778 649818444 687769943 240205368 722112654 603540630 787542607 354494246 583351210 29930091 259933755 596590378 935724243 506936461 941478328 237984834 922966205 41450524 577403124 109607413 325644409 92385730 349585973 524210115 666761814 473174331 511305006 911297066 987620614 312960865 545055344 116441668 317181278 872113538 938268563 435733296 723188509 865067064 898909893 237754302 982154577 661405817 990007073 71831515 904815138 520946622 609047596 343819022 419013974 226040689 480907594 329748871 345753351 713039168 842599425 661262588 951896872 540395250 867533886 322964261 452453184 605003732 917374992 131554805 786012478 723462955 753783602 309050431 353100858 348193906 904182499 924968655 926933364 89187803 122928411 958971071 959962636 88258600 214823214 42978803 534774605 531635767 837102507 131741592 919023350 129537286 321793317 339899596 396087440 727328066 841215864 657347838 876363815 936720180 994189396 713392444 741804306 690939266 847422275 378023597 786584959 80474377 683990388 572938173 677325145 551652622 620334834 157426058 966454543 161097150 390058615 257755717 660628321 264918134 530655709 371266440 676796801 890805707 978302011 368396456 632914184 658147827 969391175 279588060 517432543 214645603 536005749 933381847 976174125 79505874 336663292 198059392 245998652 43633401 982574086 663418213 854827204 756810016 891389921 553813322 957569369 948270247 971683252 169845097 443502875 950299912 961607816 393216809 772959632 442197670 824390442 153186959 281108889 816707350 981509310 616540941 666436883 875346619 919378698 681516526 734734490 787593145 787736459 218924204 451549627 244886943 818586036 588027944 752734335 633177818 727738605 395982306 523971179 508600097 601494889 288800176 584372794 702480362 993220168 333149276 751744808 677316648 884518697 716132819 903601999 864114236 898016970 894648652 966029159 763472808 844344342 185363010 374762589 270027452 639596309 969157640 980613899 524332035 956585320 285634387 489444894 868910586 894597908 266083456 286118770 823263041 905820275 954917896 984290329 855584041 915359180 344031462 629009962 751772804 896339080 97685003 374184834 353416539 367958341 705816269 897711828 424895780 928992600 355162929 825603897 330980117 613547516 477040169 789467755 177623689 556245036 34176927 854410127 320882404 820801843 355848518 874524435 875680075 977791834 23066572 571362104 727401693 974561243 459545853 602817245 878327710 889831681 219457154 737282726 247690262 914389867 313106371 697768942 817538781 912696734 89838116 412476772 24474253 750281522 963374527 980943833 950174187 961521471 685721526 785837090 58332881 279766722 154253133 803786091 358186318 679390286 193936992 515138570 268496990 902414676 463097299 623791187 461482928 838167738 524991854 923020114 342421040 534034802 420887922 695529642 523061281 567400559 949273857 965600578 614088417 615136171 989713086 998356085 10097190 954350648 903821040 994869143 861078995 995601314 248936794 564292487 68607735 115719638 522013088 923183363 973070628 988082141 176445306 675410047 637358531 791733002 950640508 974864450 838740914 879519224 713158339 897717323 744733356 919893325 156285103 253691227 643009024 929721957 760354617 996020759 704518405 857355177 181115437 467453689 886832357 954439320 26154076 483152774 738645409 905671465 911530357 920806495 375359511 704186882 818522268 879596566 22428960 761963347 477409902 845859323 643119216 709935393 4034550 481471813 4097968 664741431 785546984 850871539 711678828 953218820 580254510 662762307 239044350 239301633 19054219 690824430 835371295 980441718 193482340 302347426 970842589 985994353 161088433 734433009 868052458 959411318 805175786 990229401 875477041 988980091 742532182 957913406 893661591 950622803 708752097 952266635 704192032 957808704 116853966 415348582 264124552 344952719 303061194 902409110 962134709 974996535 57003686 259900431 108777548 493967921 61270153 736189616 465658986 791713458 827959192 847713560 192997025 603223355 829243997 854842539 54816141 663716832 849789911 874986963 143394404 982798963 185055685 367153056 123216038 473030577 854876196 891513341 484677394 820205813 513608363 650607914 249225339 583958545 224025273 484249844 852015108 923964932 525737596 831342180 739431676 815532681 300563729 419040869 412394662 746340671 412283703 856811022 294730297 738985163 786978443 831457968 477366781 848971558 344966996 406806482 316157539 636402648 760937058 788210644 607590570 629489384 927975106 964033753 527470419 949297227 486584465 563676007 874461598 941462398 560900973 589660509 486459226 625499604 630863534 810869033 300087876 937882509 207039240 687265005 507960967 616254945 321892688 901934569 337035785 627277342 567826323 600979889 529610810 555190925 376437980 916810908 120173638 851010836 960242905 995423816 108990369 224948815 856790398 869086730 630618922 926597281 906887275 920782004 327734540 984972614 955424708 963089673 188868062 647887174 603915801 971541059 372043129 626476440 852236877 880691506 415555815 903917752 140518534 585861750 431212528 738053867 312947010 696884992 507979289 723736122 432691092 761770502 762640219 987009255 195345463 686264204 899529331 977629487 566016239 758241119 96142827 702779253 43033407 242070970 39549715 432555439 579362588 743143918 153385375 602375460 781075124 814335699 620748312 801686016 754638388 775938607 450507840 724145440 673215533 997672552 987961282 999556410 921789761 996343277 501977302 689683085 2370351 175450739 12948839 774443535 231976201 849175543 849256116 941266719 816366590 838208444 978534324 985410880 47429242 474583492 984122046 989723353 729400732 783295628 855354924 868984828 163531453 501240413 963345686 987193575 222322076 839641512 397780317 829153155 314855230 346741249 733403548 769576509 696616148 994133066 558947562 591432587 217494233 536551333 482744816 654710420 456926365 718156164 988666250 996445094 487707297 726936293 66930476 129452399 634577076 832620988 860848320 941466816 708982510 960013342 425318759 601203563 225617057 457530399 660156480 944028593 574548585 985367558 129096797 644707610 196251068 754655940 470346165 615981233 430899849 711710077 640480568 682753063 424029499 972948693 446291279 468161845 197526951 712340178 240562524 902086888 471027996 916473891 618625049 957955271 648780883 906331546 60470065 804172971 837960673 972706405 33529075 844907042 499770820 616196004 749052837 937484921 990258036 992585225 31031183 807343425 457347083 967020047 186422573 544348907 728875962 992531494 545664346 590390695 666443861 722579395 895507017 960877494 766252659 926592545 726159732 852256577 176451719 709903375 914013736 995823335 641653328 828522091 316360315 476711919 257513915 902231913 111793365 512344268 416191592 936377134 523351518 983524573 710351429 921820987 939342734 966018005 618481756 646600455 517708354 787817660 513885702 971205129 880728256 984933745 119885371 705546550 895234385 980617916 289178227 992599012 830192360 976288277 750052738 973751868 617652952 907488810 336872323 510891517 683899331 932607044 874097029 923544782 708620415 865195946 604860173 656554431 150270544 388925113 767456191 840439394 831724050 978816824 5876852 396523298 73565946 803652289 326769430 680597300 547956784 557093304 235935555 959528451 586475698 679507354 137809513 405186250 646121167 949625915 466584672 995378065 177947075 842809255 836433295 931464098 421074861 934956827 39495605 139353931 294773906 430720122 350932861 915797979 201839972 659848939 460302785 527696156 174874121 837518917 404941956 960865600 618698317 905369111 863370034 967968123 147648163 338003618 437188790 904970566 743056042 763502987 921133974 984269550 786450401 979380467 552217710 937655586 422983178 846011450 354337998 374481254 184302527 265264379 478074094 802950175 581915338 982300282 325054854 695275269 397103316 795519673 95639177 420579042 455838471 773667396 895166391 974021279 107115438 749048824 177091188 714149871 821102890 884044523 410530209 935567602 468845666 498914387 136234219 222987103 712093383 835348243 796348732 865441903 932710651 950590030 335809779 530481660 914155372 993902674 708460222 841294386 35866019 641561658 265603441 705130327 933242177 986765380 773831106 786353162 45257954 665577180 711984904 831485447 145318520 836708306 999487292 999970156 708670316 776689047 599251072 687341945 471330323 928638513 359776616 519613240 238210294 625591001 904084264 931353825 641594834 815382530 50432584 917519132 718832022 750671074 240126639 393458630 917308911 927776990 666415830 786628510 743458085 946505765 747437717 750636166 200103144 403131555 362871080 795374282 95720625 208158835 809196103 903918102 47161969 397079840 660355024 723855165 627078924 804940736 231355574 673028060 35731889 882137354 807135403 978065962 108804935 257689698 549257398 707500708 959686462 971158284 610687417 763926654 820399523 856200248 748600395 816106293 260255169 627813231 217776452 568788940 41876612 757434345 899098647 908913381 122084464 254033228 177031540 493916514 83838993 303975513 227225185 686890664 627561966 629579098 761093452 936990449 958286563 995026684 224453278 440137982 343392108 698736363 908858271 977862702 201499722 257282734 868953476 899706742 664231859 711301989 870391591 954829821 852793363 940413023 836195290 968393450 291673974 866390198 167453541 868493005 155355584 628470801 248983566 513258016 909442152 953281513 133281138 725401577 221076917 282111788 737019903 952874711 214680848 419094930 728020765 777055180 673364595 871227662 136405319 684440630 472343485 767878749 360609367 893003465 615637982 916723659 218846972 498890332 453986468 550542655 800408991 943294966 281321262 885494932 386688836 932439561 461119969 871817994 689319533 786933380 341606371 625509873 334016762 790859256 606478772 772493933 317548504 656927309 163809678 519259768 193914382 365187974 396733935 625446296 261007270 794132146 344587 899634097 948634840 972814857 406943699 954359516 352675868 626914495 253306109 577787939 545458673 584632741 590703998 998100500 999479599 999794752 218243753 830829543 760035613 765874755 215433981 466997158 926929094 964858867 640018652 708373403 18385577 924794221 637969872 890934693 193617771 499760366 700559023 779304066 148293246 277213854 854718586 982878050 569347050 693474826 88491354 471268845 167692028 806734135 86494164 360609278 4641431 432670186 415212206 765701073 389146894 944333042 294316335 440231925 549703198 759959598 389138539 403496409 253277857 713188442 526054836 529306557 910054814 972652638 392169060 457804545 500327896 978906023 495359454 524028810 316963274 436372962 660272061 790521819 27842735 532429741 266076075 306480761 780533903 915128870 892837886 946639393 847434382 962833987 461905856 514024744 791552559 911006846 378210334 407982993 862427411 930101470 602015601 911294889 877228883 949066941 131806982 195835319 163239182 542223423 670315698 751269153 233473668 727575564 392560678 435555937 180995236 822366341 65761609 537688728 896613879 989819486 533810958 893605711 850833121 900941693 28471478 650706179 155285370 856505770 963404374 987680764 981519262 983890069 819420638 925191341 412803223 777007788 437649053 736977405 331400420 880761418 621339612 654901207 746610390 934678414 184256978 212385156 317477634 719800668 800211386 820232827 208104037 218384098 119188079 180912562 186401526 538835151 791385238 930161071 436239391 891703417 297125727 525307211 229361966 858354933 787192424 870221522 828821907 927172616 490934651 986494188 392574220 809315516 149060453 950740283 140321605 414552470 33640338 182870721 149842155 575593125 273065005 918322419 315269737 514941189 672757657 774597955 105012462 978549931 20012789 110413416 895953637 995702420 954994691 997073526 399816558 714873377 304559558 675057694 792386035 907665896 676225630 877356076 131874351 369898105 159236008 549749520 460676947 822575691 383697405 383835739 160408706 564451675 810510589 977867183 857031224 964012454 434163569 979107650 85222297 642197073 425909554 838560156 872114158 967534338 736700462 771992556 481908032 981852704 504054336 843170048 979306591 988938703 664839530 805359706 677479626 979557823 881727127 896019363 853480920 916903772 164584436 628310022 938397832 970543849 309615973 877051012 272352508 563479677 824130288 838717541 492531105 994844568 300691258 519772982 737071080 907896064 218883999 293208024 991969698 997028713 194198547 742353083 45602728 600781744 984811936 986497384 346358936 362566583 988646355 999941506 70270256 472215998 696186322 824863180 716455653 826384888 921649464 994516874 47500275 557217860 18335307 818221681 691601136 978247882 799286909 997221517 990939252 993106966 906416946 951120279 551925011 724225722 651493812 718812170 293374618 587124944 593118345 978103161 161119991 377727128 87088269 581961699 633514891 903851277 847372584 866255363 990175877 994570749 53994975 593453290 656807974 707362023 780813556 839318133 125929788 896356534 134183251 694387845 707005370 732216789 609418929 747652465 871820434 913138432 637263524 774287246 576732530 863136967 645276860 720566430 430689848 963865387 739193649 810714309 250284037 682863648 867700177 917472282 286393844 879828468 80586928 608856314 375821902 612589551 80250274 161346300 300265467 708642204 138697475 543835741 821653758 885286569 946685737 978757171 705933442 935750883 269476448 766760034 298316648 647561259 652740425 979046708 933897504 993730189 527294306 694655389 435569923 588633460 35040564 556261262 193688464 782309701 6090533 883558532 686961064 931029060 33347358 448615448 972372425 987269307 383772702 709121282 142317455 210743878 472889795 620963474 111169989 575860961 453308853 563765133 433345740 966193987 872779102 891169625 55855051 457822529 882547997 920108307 769455422 821868425 212492525 826648112 1705280 548629130 126401476 601146965 771451779 939934794 214309088 285176821 382819611 981606632 276280463 894689255 264478683 364021251 92507020 200312902 968074425 972062799 602616700 745095987 257415433 614095357 508931168 509449372 562313948 597055326 710918375 858783821 3531655 469352508 889136751 897213912 164058702 575034914 932630526 999551376 124322400 399378207 237112926 934201717 214047062 914540461 290898546 445649684 259242777 693967134 89305870 419307869 325571658 978384471 525346044 967111795 477077508 486236513 555527065 674032308 762520326 878592835 533291270 926571047 817347360 842140574 339963182 797312907 890615423 962505177 834435369 995169430 164614832 920603364 773366338 869903672 58237500 433422637 921068670 929470477 479273612 727517524 231547223 785273283 88458553 491479843 552036759 707316161 952177289 997507756 377313343 599646337 455359416 496843979 356121049 990966314 989115103 994167145 923854804 963348634 512243385 557106845 217137532 264938265 199597316 621919106 799135264 854812489 731084880 753500631 592115694 628789739 659185304 809604043 760160455 804470117 540330144 853897982 908369830 958533697 368608577 648452100 119530842 210780652 930472396 933334461 306736053 766419446 348529294 687186641 114723733 346618710 984989400 994872249 850768921 871585998 515333651 963391320 881579119 908187027 807803578 975783236 899064097 912526088 52253024 558855579 531860794 864998121 344963627 903524460 905812379 957527021 649275221 984443871 190514698 949559409 505493288 600631306 808392339 866782745 439354139 559611438 614972194 973566903 114798744 333476351 629099391 822041935 868046374 997843010 704517432 931454558 667229284 823585341 539118561 612051675 451703235 709185979 127414966 280981251 515976781 834118015 246076903 431058870 614809175 841073897 744137090 880061118 868267130 985638724 934791263 951551449 238420831 251070150 870399970 902059361 49396432 155810885 443769286 777967656 982592573 987097921 989870616 998072811 942308904 968962975 242138704 353944082 720702894 743782321 314204016 652436178 817232591 863975995 886499292 987229965 118833959 167908565 190553273 395814227 609608036 964392286 984437337 988121794 7440861 960290263 261258593 647320032 984649851 997297881 11765858 56773131 487391354 877337419 802997833 887103225 575194441 903895483 30330440 518916825 953422027 954414134 799323437 975722072 725665720 756774719 264417497 917429090 231889265 889551538 485435551 628562256 815031657 896972124 832042501 856327575 276178165 835889839 103306627 912772171 879417390 938514416 407019625 430443773 182695064 262920670 839027523 840120248 726204225 993126722 344145350 770423707 30636608 668350340 960327948 962905343 151042918 576795353 826980140 936511970 547937079 735712936 985539467 987331024 903862242 957372996 296717992 509090255 798911385 829070600 873201392 911930230 802650487 922042894 644517341 910034077 807259389 982518274 446674320 740435212 734223221 794215718 298530744 325119164 655747174 687092090 789883663 956342462 775564794 799026209 115798844 602958769 311107801 893040297 708982430 720798110 128196260 366967371 88241928 936568659 383711125 837952793 431506757 980385001 351050293 601259100 595077001 914842603 348273994 611475234 128606748 901297026 500235164 635881604 199969857 533394865 189349233 788427173 518948688 950041807 880529371 891783855 346090924 362704093 544151636 676082692 114753293 732357325 944637045 951531027 644364473 728688070 394375824 659437876 749033607 814643756 247127827 375889419 197943256 331226636 554713563 664420774 127629097 498791670 905616241 970198080 973000341 978416531 828441586 967702021 261972567 460348259 754219282 900092091 675058655 929658367 359433263 889178733 56580442 227818956 621697924 957464796 507043083 642071605 891017538 925082952 191210483 883082739 286991700 697596149 277659766 723328947 925188569 972131484 357264372 896089373 562524812 953893528 44554463 619459508 574097678 654379971 572200232 793352884 767892186 932371951 131844378 857515534 389476535 922541331 227563853 665364938 560270276 696893635 526252154 620308128 97246050 363886682 741011213 843513752 963391567 993662765 947264523 967853444 908718286 947599873 528960495 854918974 830262657 899082994 120213888 484037945 695929610 986582120 582190700 809691989 198441466 654247025 16321316 373950509 236214090 908899823 416064369 917272129 547831175 838984726 227019975 602423113 117024105 381257324 141689347 597698265 105007130 826316498 431471562 679106858 441003596 821684041 889454945 923694653 505310927 647483371 438112768 482389875 586466712 625295450 760608541 853893128 866010158 907010962 887080506 934628519 632101985 998407199 552030283 555680408 568025916 737348636 491874239 982773399 912736455 939010838 874562409 937023404 52200110 140033719 353545339 460693429 628606791 740632776 765504403 835189202 318302809 344433542 598732244 658865878 10858021 34831196 211432468 301473742 537463705 771439390 552697660 771940421 310946578 838491234 612116810 978169137 770406306 774077737 379957556 650528569 924995237 942436267 771669334 837316405 538786318 863892202 382389760 940298193 271373188 762358442 593660541 985843425 727331967 847356105 948465816 953902141 190925518 238207635 889721037 902762411 532855003 792647933 944039571 973079253 702419707 973307951 307805796 888439856 322775150 937553370 793643588 809663296 685909916 868731038 622224697 905712453 970360376 977413851 187257378 836302178 732216236 770710103 999428481 999880314 425683601 828926149 445226579 905509996 799180268 810303355 122613057 208169914 267530317 740352444 120763683 343003036 496090407 748197317 270233474 947174300 626188217 902016846 850948424 990689215 442718521 529830717 44679170 363230999 353671259 524185492 385409218 995156394 360162248 836231182 993340085 993611501 39268482 86845977 459737134 529213226 240711212 602133202 519707896 920055100 791729793 852209929 201846547 602317153 644102985 721608894 8708568 292079883 415043740 827044420 865255212 991430819 303584924 943282431 221936973 947067302 105209875 656632268 940019164 958485588 100567713 124714698 470969435 568134659 572813709 792971806 261842266 735576206 509511182 746371351 612739076 776561830 818578116 898283906 150222967 960624067 365458926 492805530 110460939 492436532 754279161 817040868 541229180 979223786 10153892 646190565 742031241 991423669 777615141 795620463 27779096 277046077 243805948 951603986 955435372 967677152 865637096 989993142 639275236 930580866 319601884 952414783 253588639 750442807 68938572 894151658 861241862 937345221 833347462 928937998 839590298 932708925 363646446 674049492 449111927 457980148 363018413 423589621 988955141 996794987 613165559 880009821 9172301 876411665 684555984 710719612 109192712 901985278 389538902 787122002 763453734 830260134 971614297 999429337 575302955 594123714 935068795 948317931 706265580 957360788 946786815 973729740 144444874 178162335 678585802 875371827 753066078 992406404 470608470 561203550 414173720 980561570 368744757 809707987 754347673 891892848 817831411 988273901 959829670 976174998 813855953 842281214 637758249 783974637 868877953 977715181 199713375 761716483 553743999 567141703 581435595 763255034 310197978 805813949 711448593 982244349 724265514 918768253 277564866 764163149 741520602 960771888 54305203 118583194 777406250 837531165 70607785 715382515 671466813 792950970 467825280 982526032 367018246 686911539 957782479 991299994 829419172 952880791 297384646 600429311 742349938 759323550 877591128 897502252 653950871 965706478 399867800 481034875 801478697 870391491 792323559 983156936 592085078 670623280 435336270 682603631 135812870 509057691 486463226 976720741 328482817 549420120 957353592 981633313 322435489 907078732 640716121 744551820 869723840 987906288 689986984 905257543 100344238 128986374 904182223 944348841 266960476 595552456 660087167 674788016 381884887 554633608 179052397 923824038 409984189 931924880 913062484 991081797 361692580 465265747 955635582 978593238 171747805 675883828 224960232 348472316 74083411 624859863 932892063 990676546 828408547 870147405 290522305 854081149 39609465 937758956 224770220 460300506 385686767 993580949 4508786 50283542 511983902 982356283 421468716 595131436 243106294 688913724 764312251 810727782 136478607 518377454 184862992 509665011 995341214 996236750 577260666 790060397 482120012 597956298 943577917 977169952 202119716 659645871 78872926 525954259 503991573 773255219 68720887 643968964 569791154 942387534 267735657 891782076 563395455 602217430 544639962 921538437 230476391 785367626 460312002 727044085 283780624 761386608 736602689 991131283 673882425 803774306 321313245 939733694 130076720 886609142 63524334 949594286 525312833 575025960 532638335 732651740 284493363 615303904 948062450 950774298 83353575 606950872 236048540 833870550 911984895 953903158 234812620 466170144 631726692 739296161 549488225 897000494 359717405 997487804 605857365 923043554 905047321 911939388 977408361 998880978 607799564 755660696 73885882 970835540 784506009 804718074 267056981 314304440 421708061 727037581 497238028 745623860 753098670 890045561 988121202 997972627 324373243 959631563 906785016 981515544 601570829 971130814 380983125 598935283 274796001 367206941 343154989 918294004 877991660 982529435 680049915 746741484 750679204 960543402 227829021 832494704 172355876 483597785 650210631 684274222 301289873 828645673 836374140 930155005 813736723 831818247 199021422 412246546 380753941 847543136 910684163 943255499 697132587 798667921 88038855 344580290 603026822 707591533 213028302 213826317 892104890 999987895 922995206 962056177 755119189 950624519 125023864 619125817 911091849 963915865 178777894 628023379 558906555 655927712 387062702 993315237 429322396 525037607 845794185 922981712 669896587 713337431 58899165 772718919 929132977 969844990 310943338 981573374 264545448 523137820 837291346 966535849 910840648 978664094 688588601 994968863 220650399 828347548 776679676 975153930 600350477 646865758 248195528 376711356 949665004 962681266 893568191 894952359 42480337 62086377 398151785 479532509 83736260 138719113 424458789 594886143 649166600 662089326 239010426 524031264 539022489 648192739 653301636 711910088 115909052 586076643 69312581 473328214 585452023 644378341 777787823 814705221 987635695 997152849 916936783 943416217 55877476 142193699 747471105 797288244 77070678 614245726 966813448 999280602 781024293 785970786 613904294 790692535 990658750 998796073 640193716 848304210 32279276 893571981 885966639 968623666 72704699 703970743 926276520 936629723 694608397 929905913 336565450 428060416 483415516 644562554 861476272 896045573 338454706 802915954 898772049 957467081 842682573 975935756 978676351 988329593 935413511 966304007 378357313 526826641 196432571 735681135 34010587 525978192 167021109 210482560 114323574 610722943 809826170 978626752 447368548 989966528 596753713 616959767 549637681 769144441 109690288 769692670 924885877 925452796 840648128 918728082 193191592 776147117 603205700 986734750 693365606 884212821 92665900 331470547 186675561 914811079 580335515 843888339 376935513 711089872 288928992 324267777 50375877 398842425 214643391 732501065 974628799 999268199 698041518 919145714 16550350 495139736 995647255 996196390 486867992 965347973 951788583 989417680 265244789 854367325 293816662 750182643 561294008 844189570 240121894 363931652 968912877 976077128 654688550 806133539 795464515 893775341 271091229 605966863 933159751 993983643 461265528 737825162 928584627 944343111 820995138 836809379 915303950 966434302 835770927 927863711 947223635 992603827 849197875 873837856 896868317 912791769 690833470 717489723 939578927 986358928 352327518 981630164 788210535 990212100 221126552 280569119 212372256 894811259 964482811 997591646 557139654 624235363 640549960 715677001 269134599 671569774 779899323 802115770 67289253 823063675 440412504 869300904 44474439 983553790 841183232 879592401 886708351 968944293 38028618 395301924 260827994 976616870 355438835 797443680 725656082 914088689 8611410 358219796 836501773 982753358 479864092 828176086 79748108 753645237 384505909 532883253 454061440 552615540 240493886 476573828 810519444 850917546 838602189 838669375 250694537 934679644 539289044 965391434 931913584 969448551 594227608 731104089 212552510 988349993 532019346 549591098 214184059 939444651 44648876 872008996 210916 523193671 726770459 775690746 44343038 252126367 717085395 756964518 665703771 837316353 432094192 757918386 766729842 857232362 792427658 920070602 566991732 670599855 901577799 943451577 386035948 724071465 664020374 701041639 935775361 996039637 370589451 707481472 828988421 854172540 765067291 980499615 97025197 409997524 630873767 918804729 852004291 921445512 408899109 650772668 858814342 976372793 419741410 543982344 840217857 952010422 52039448 918188905 645270626 799763870 777892893 812279643 412541632 497578868 792593835 840134074 530928082 663853063 497105316 726172853 768960523 780473094 977805821 983542941 137734203 641625983 710714371 769437363 382950309 752393619 140057625 336936617 849358743 863855096 268500518 665608990 882937451 994522271 176004899 242546783 985805780 996311696 73843820 424570570 197458892 419757983 692639976 881789811 461395372 863539619 516489778 777191617 470127803 544727372 577314378 950503959 137707856 382515408 345713394 944745797 930102250 979982842 113497786 369916695 454028430 727672967 28391161 733113316 946829709 984928396 824917316 902217480 848133323 857210008 781152203 815486956 936362319 961701495 137557167 863141014 876280348 897229971 571746003 589148023 995911088 999055510 169900067 292256454 90646750 136758725 269812565 528414011 843866019 935493753 280032812 313289976 442799936 560200105 394639186 401079056 159067074 323926033 690147247 906373801 642102768 697811875 778697296 846657295 679714588 786796399 222136738 344339815 597898333 611350332 783848609 884179544 782216579 935742438 278239872 495768410 92748174 361451654 840445931 920251328 568123156 976835068 188754772 851387429 727241833 878990820 632427414 933175424 659803380 973433694 686018772 919322143 682510876 980337895 720894086 743674997 97456959 297407617 921273723 934126930 547179364 877931442 229803126 950570741 6081233 60924007 385216559 728671673 153453530 878061415 565412131 838813077 3763083 179970830 838722601 863028923 834993096 852599390 740500615 743390569 324948644 951980444 152497956 399974153 896204600 947822167 387367059 689853922 993040976 995299912 697966917 725775829 802299397 994083265 895353158 926415693 73429591 102659009 10863226 724784022 309168311 382971006 632173849 832641464 485580703 713118173 11551453 410236424 793370380 800684730 898337604 974766512 134347440 836580130 53794498 194792781 40188976 780428649 14059272 751950171 240380307 469175629 935584532 992636476 460769656 740644716 941598989 971647778 2724540 538781774 856385713 961454986 820495871 964702460 175692391 578739989 603601029 741619517 109246708 325035282 996878555 997922429 66935183 273025525 194762906 874556782 354000064 385242704 331598619 540189285 495555073 506363182 741827383 972231236 390228985 470507336 417718269 680031214 224634356 271342638 726799016 955833493 18038279 965211295 333714942 335099127 472900881 811633890 861628483 929315974 233527176 342243624 557891578 818836631 152320406 711753473 835908215 959499930 386282049 679822384 88254692 514908079 655473293 714707997 38083483 308520925 983293571 996545333 405389857 748260981 72640094 542912499 830188264 918994322 464202804 472473440 589840863 645440944 674466807 797224191 410673852 756483344 348114404 355562523 777442386 863876736 672692686 877399952 859267827 925629646 135196609 976546371 619905526 831644429 144953231 353635394 914278040 969570749 989311344 992453896 407869950 633748674 291200186 968242548 881298302 989374581 892571383 902968834 442635586 633587836 757998289 788584136 810101487 880117989 678191990 702733445 843180532 892273967 887895538 902503604 216792898 620787935 675050821 849560220 82673658 974922270 800797572 821070096 605510228 892913361 308725585 792223729 149236152 542074869 472403723 665770483 701682587 786767920 273292009 911621229 589387180 807007740 135026991 457957742 278214448 650026424 695118323 826731900 315992615 829786631 28269560 717312469 356192992 456837749 225344154 229970888 14854912 751029489 495577210 573353530 132873813 996282124 15339446 158691225 696215145 949707221 327635304 629605322 529301938 711119810 346906196 456104543 579937216 786567292 50143437 619292546 800686126 816773348 230255648 918828083 501110703 952517721 937592480 989106945 715104338 834648205 151758632 695645394 388629657 970209367 818111107 875262910 815308838 948558102 795901073 987330899 795965757 997597800 531117221 772082207 185056633 300324893 33858511 790328540 653003782 753631889 780301093 890950340 344122745 899151845 480187383 833465820 318157303 929903898 807822086 808231767 192233610 700628697 122759738 418642710 748027199 783444483 803338267 901708909 417975839 903985883 768725942 994694389 466055234 600339788 213585162 740145864 656430131 930324802 489320519 512645876 115605069 969297017 598314072 994861611 264694524 285872232 815452430 877661681 961594944 983777235 309518935 373912380 789586578 834338381 10097198 882717777 202174576 899883850 646307639 978119211 765763162 889961768 902810352 907716773 95462729 249976401 339654943 425366424 514733804 895227585 690638143 965086671 759673773 820728370 986601777 989660833 153359290 657498419 367172983 569998295 86093897 878578831 716193694 928834912 830222749 897068004 855360314 892068672 836689737 862915928 87359734 647035754 175632653 599017069 713063092 972863518 375005498 604413903 145594930 294113283 700310353 747734103 708761664 861344875 829338978 837732066 912695341 913636796 81907321 827115008 593875830 949938506 310481925 444638411 565814204 821478724 135619719 858512157 488835109 654642588 460034944 853058689 843362929 881059665 10659307 746237009 28837787 956866765 715516040 962893118 95565237 679708021 20580052 31379771 676329970 960825523 213280384 379423363 369699742 472217062 638829159 869365745 626197327 646633509 498616652 617603686 152512676 839768023 491033952 664199142 660647960 762607413 826325456 900109305 88725502 598933579 766111606 944007901 899453492 940130945 927651989 988475974 173957325 560088930 162916043 923218754 696953622 698552476 101718358 846910919 568793141 797362836 679246440 755226318 584516954 863529886 100945533 264482630 27216172 354948595 30588235 297091901 130747312 864983951 308889615 392480510 231732751 549290840 581703807 713979508 569424061 658700677 617772087 674959080 699421011 801500648 954755277 984122965 170133752 197003339 353783656 943509707 40450273 915670288 358761415 508635268 941771878 944451643 373137684 453328520 233881844 941346733 892356435 978553227 470111872 660394978 279818621 289831583 452821354 829218120 545398282 771815983 518705242 694518747 390363587 453100810 387009690 433313405 13285858 100783211 161955400 802350384 299899866 924001461 787520496 913334268 968891483 979473822 450571172 727961233 977932441 980028514 87187269 369771521 605377765 766484963 990708110 992278141 111300863 982558817 945576169 962871637 736616195 910723437 893687553 978608376 516764351 914201685 661640026 787381005 892287471 948889195 582677795 793586874 245472219 814709539 636101225 745483064 387421194 539327997 868355291 956408113 992136846 994063192 634396247 967979236 492064824 842713149 339771654 511489893 793217773 872126930 627822180 696517210 350556548 374519271 527602489 841463177 462188120 529507883 964172508 996001578 397736798 742355847 990733651 993553448 772881798 993914248 846294270 873754875 84033542 844928300 28676774 289300028 263258899 872324671 322574778 392554626 397800475 649849114 441539009 741185378 722154588 740374911 306950777 823686301 265960456 452239720 760288275 887035831 542348306 783373201 80779000 961892230 641338864 952912704 452112910 461213588 941528579 988510704 229192517 664532801 889028764 924190273 164843206 835407141 655126305 942131950 56578515 615583145 435527539 547381879 823588041 887182454 273939066 787639896 550321264 896547246 929831967 971759616 35747496 968170135 135744855 337742059 850573001 859415193 955588414 998801063 653535743 713672599 13594915 973112995 460084329 736646573 71525622 994314684 267636606 450748723 306458480 960895983 428023206 693529032 824709511 873122504 980125763 991315982 712459346 994640761 534129012 879193320 734561315 805672637 112207175 156099665 774662646 858589626 151402874 247143410 155383177 706516979 806174089 869689419 39900678 76985305 305178550 615337264 159088762 772524245 48175377 846321303 214998133 462526391 630050188 859702007 385908987 529552595 716985102 771541298 109535796 443508631 122784232 768728190 437474532 895094570 678618796 709419500 305470656 493994800 758996042 816791585 515060477 770506120 453851078 625441297 272357991 718930328 152591264 196172579 564087851 790590151 621592832 982898905 919633902 956110281 520203006 693410089 582637989 980491255 217795904 358847511 914544940 962430150 358397553 409359192 442238456 814719611 146171255 442840034 554766491 807890534 812704549 990527400 367460189 999696050 748160502 870134892 684619648 918724062 68423531 834849290 786083537 792181592 303236680 472381271 574431356 939810708 302703347 674098767 45551580 233853633 784316772 954799555 385965040 993321514 436335359 545994434 291163049 423748335 380145042 800088207 588817754 984898219 540017572 935755792 951272444 975880753 571758242 712920938 732344048 801367238 796413865 890421828 251054866 826724337 11991829 717917600 621822032 681071491 978727044 983953207 125764430 999712793 184770422 775638823 517671069 596887143 378352170 671643678 265043883 511281020 41746471 910091976 150558880 170165900 748560228 782910173 562008003 707854543 850415785 906690044 137074216 437178126 721294199 944060985 903257204 949353642 141684568 252353844 459139408 697389639 650200537 788994909 203567857 387347392 497261468 741636562 891546157 914864686 130314578 523769134 220219457 856173976 625888774 701906356 432039724 909571306 762324014 867334811 984487952 990993734 344220325 421795480 374900398 423255960 937533601 939410057 658187959 819595429 966617105 990528534 393270771 512163957 542570707 588967330 515548104 863424525 58764736 206958685 118416196 164962753 79633025 777528314 26163470 191026352 419171685 830859634 859130537 986138817 601946034 765394459 980703612 995490491 344293141 345607643 91456534 522657107 155564590 387480159 222867382 808761956 923850258 970273935 206942984 583942645 515205857 610025145 587699838 800365120 214108870 699245244 168715843 780656303 159383720 697631098 347687692 360418904 410329885 684518306 642543553 687205969 244188987 364459938 229244739 814748519 613414562 920434484 192198862 921897848 218058761 943865421 825430513 834935403 590335906 794942210 138732189 167382425 290658501 500477203 382084761 672383417 807469536 819323684 413731237 693937489 892595785 959393340 704434002 771682472 620302615 846359143 362877183 459608402 730960617 991343916 896389434 956405243 668676155 744980363 86758323 700886591 23983985 760479061 223370402 743217318 87271637 127548381 321458196 444130718 395587719 960234016 597349772 709309614 728450405 945932589 835970985 933897359 804635227 857545697 250007159 589150087 477633149 797202365 357874032 841584803 441230277 653084075 872325565 957464357 409298294 779125113 502703226 526334534 915440833 939436210 735075944 804048161 537443116 599636580 604167945 682298612 218106280 669150277 10388072 132980895 290655850 414033310 790481792 987282689 482252270 525356119 471672962 557773823 931097086 966517627 60365632 928325015 955399134 981575588 380370195 772989447 809551293 818038569 546112197 865786468 249160254 501242157 921089018 976149772 526726668 753073792 190719694 840616218 827043899 829762577 427763455 707877138 902144306 912126721 516605711 668844422 517082527 566961128 623029411 920361312 822589479 885693341 681191957 882514225 613234195 655053311 585456565 786044737 455298628 848391429 265826632 950984720 702484150 855797007 866177187 893773743 847886280 945098823 312015522 944073838 53592924 785723759 684898233 764527710 535899034 916599580 494172939 743479366 461545337 627328534 172122587 313041512 357341287 392891879 812602134 914830678 922667546 974956907 559033642 734252176 939959881 998580854 452140494 686339657 850582568 903962257 66410264 828118347 771301931 923520391 504581013 837533758 407832888 636551783 892126504 913233883 88274976 479294803 350513602 899663024 563893847 691451129 807268573 831896356 157802602 219247462 190235191 999209859 13222175 239208608 937049342 956558719 20080815 673636800 232988729 249530645 351886940 818144178 898812142 996112845 618628227 988113140 764904525 963493693 87952206 179579436 641335152 912086503 870955777 939810764 489441480 755034671 813234243 928271117 389880321 867051677 618172628 645340536 919732345 926244888 482580120 719171194 864054114 896218795 910268522 952581209 347747392 702866230 200763875 832364696 727371223 884159368 912503529 987194464 470025931 715745725 696430094 878795310 961025307 978887975 949093287 957089361 694475915 847038030 971271837 973799271 105322965 335625383 723267160 986511719 279926196 622686905 140329331 853614361 322715265 636753318 163691923 848054291 71062641 387802551 826851684 900105262 711837525 881462709 115374199 933365403 55839358 413421960 250879333 255847846 318391860 714179227 887852488 935598417 382932515 709354545 636061815 790617824 496605911 652960283 93758598 597942919 491688989 774418688 421242373 947501341 701780134 745440124 535446875 695250453 140364041 878310013 212256936 807027840 449078293 644345625 102499569 186805099 138768951 319802411 141898931 590153388 582906426 896182577 380866897 761257663 208199826 331926729 405960594 764278850 111314418 453343972 550320624 990387070 169429896 337740952 644611411 928933173 489575187 861852830 913741357 985034221 998314014 999697332 63155924 969404538 949527152 999101758 260239403 505049693 198294350 374604404 452076937 805441415 355443392 453542074 731844937 942185449 313887237 744569036 263795797 275518427 219652693 383630955 176579408 362433608 472726827 866892987 773823877 786773511 698023586 865685939 780286941 813887406 305396587 629918064 354251665 512185355 760603529 771423802 426562439 889522303 944880199 967593329 305544217 648515726 774786067 987131589 195143730 681859132 87036223 639965404 117369297 132353251 328650675 729953798 828033298 850174360 533159281 907406447 277689076 637270486 315983890 330471406 930188734 974902075 257921187 286799949 51866860 478535291 692589218 875795080 538837246 838353282 927309714 988210918 333047639 545521955 419825955 863355867 941782774 996547507 6427408 45281348 677174031 750219105 212547889 823127527 794777052 854263608 590768160 845625203 477606109 611043685 634578846 990881728 59849294 864946191 823049925 971868369 4426401 765978702 478726457 590895741 994396547 996089932 943865189 981735420 279788259 928068025 415618673 749707236 980033171 995148579 377131137 558589872 611238206 641104959 164129512 515921941 533711545 651665571 234284220 255340539 769439228 985184473 785854344 836929809 249103228 856909996 828259090 986605353 826046419 947656675 84354703 815317816 668896495 839239926 692819727 708465280 462358741 530726289 589075697 939126472 377973236 775191369 8424946 121548173 210481030 633627907 13495836 541198802 286558588 761034401 783782890 812319514 528379970 912537885 9118319 745366619 501376252 641912729 381956059 754968822 432273897 556497244 25592894 567605439 313915174 826837796 589242985 913222938 775342713 927470526 634019092 697414014 509499555 864117342 494316242 612961875 91577995 801690262 238985377 571691893 399377706 483981410 199935803 276598073 246947456 347000636 976857408 994802829 820440992 918615638 376045223 900280530 402294358 612376548 187905814 386474605 706007707 992753587 101142947 215012344 249195141 688327541 390888167 509709129 40227932 176172415 88893793 340168196 386090706 620396816 571351838 956583698 82301336 355574340 837959585 915259258 345931134 919836051 411733495 780786244 828506465 901825087 67293998 419939245 606199930 845869677 821758118 922695665 169648432 739146777 342962337 889012848 150487114 526435017 327388137 402034065 827100719 936641745 987520971 991402003 484006059 613972231 951558233 972186503 871319281 924466266 334680834 344562615 7200419 105238242 674496928 708116771 265011432 413699396 511641972 645397940 315082140 817935223 738942415 839607578 994593822 996694366 193157157 791715311 46793301 720570439 397201017 901333093 564812760 766225630 841604656 982283071 313814801 516520653 298184424 733365669 120055570 331094967 381517323 787792741 78352975 164614931 517813952 536123155 571472391 900191801 474907734 572220268 827672928 967044703 261205604 583504424 185189476 910898050 891925986 911915550 100751582 167103714 186982664 681109331 493367137 557278978 750409035 778409219 754138309 849356595 479625311 991570066 928637341 950771397 966086845 997571073 836544839 952518054 658428863 670743978 797754130 846771566 183852377 533075119 225619753 777436038 907760652 922582982 2743334 776268423 109345507 156478182 894114976 899238193 951688684 982399039 63191724 306421011 992039667 996120889 669120880 791180980 127175424 630046117 889882618 981183064 336028101 861432334 256696074 679250678 746983766 752997891 865650508 969620467 968239270 970824606 724558240 914086898 343801558 426501889 593335689 829333658 429445527 739645830 401086891 771306236 560538027 741597934 491902282 546507514 644482559 935430257 246973727 905139847 461060169 592894490 877546451 986472375 626756560 900528791 479419728 822520224 660032318 804173374 163861091 195603199 309254539 605186880 651919698 843647165 515087108 569179246 862930156 887952401 780165498 905650313 667002490 897319408 876721754 910988670 478072249 976410233 423518075 628520522 758083235 810350927 629731177 758114178 797088080 803137696 782029321 815017041 738660072 846578329 838522415 877509272 88396376 194482598 319225729 871779491 567074773 818176236 173667179 466373818 290772269 615380867 42707878 110082112 348010601 430812885 549839021 804290155 441188032 540840742 721427190 962046894 850154447 959774841 732314651 749757693 436658179 658501891 737243628 997649805 168303231 541606233 747023544 982319521 984116375 993235805 734633224 977031957 36228645 579570663 999022456 999232770 601604614 747965472 740829518 741394735 189547983 713100507 155004059 863751910 767605724 903552117 433215015 834101737 497000471 657364078 257247371 675507960 368985855 973775927 170634323 747461847 217152629 734749989 518452699 708860620 962860597 965276041 554309874 968934107 435444376 660977746 420347496 986714833 488971599 575769583 63098437 403295965 843723889 905921857 168633771 321798896 424573097 448688469 616922337 762304695 930729647 960502564 562113583 943764727 247449235 334774892 792274358 972424590 107042158 834811821 366105773 466734221 898441718 938590718 889418091 918118634 598606353 925853774 138290893 428409694 564986145 629283448 826750411 894937118 189721289 859678763 142387158 758094606 260597235 597021498 932856772 990694171 14822405 449317678 44509284 301106663 543630925 939254837 515424355 726757734 500142261 678847322 156971121 329558544 676444769 968897312 70222200 540656197 916439707 943789699 443776877 903145807 53522882 254172507 560524403 697432080 454952698 547203573 823215634 918525918 680082315 878789101 704434035 796062747 154841980 452335329 790836287 972522300 635801605 793983569 917554534 935854481 386365621 747435789 601688799 711578805 616328454 903495260 737746443 889740056 35936599 255651684 963793335 986934349 218109393 583645213 568056801 802317346 618568510 657348431 650532540 948311750 856141824 981941742 617636457 712935225 371484042 762932083 524132588 921803627 218139715 921200555 977739131 989601243 773968397 964987064 742902752 915556971 227756978 973176529 521191001 794651197 245290058 707770356 731100908 936917323 506438617 782165684 145333715 971465109 981607078 998105302 866993485 937648567 879480685 943493632 925371057 945154285 494964340 589914715 142215116 807400522 220268793 256758821 894833994 967486907 426712199 786303732 141178132 322831938 481136434 747339858 878357544 897008035 393534156 787678742 435612390 488767113 713149119 960127452 814346196 834520060 393751037 733953916 496640996 666004062 146433379 374713547 186670263 188973598 696860945 753569260 857969503 990360490 331789929 754758544 334247456 611979518 290071184 524193524 955616691 995446804 91465668 767575622 384963130 567383595 103081191 374854729 944604868 973097181 911140435 979588801 870106584 946803905 882121701 900418490 848491112 941982187 877202861 958166626 266608839 411942240 799998898 856124630 838741633 939405927 555700992 863398677 301113042 449553189 659614619 937054239 261488399 457110205 147167956 779127401 71124428 695172971 542748669 999601180 458863505 670775815 359315168 899191476 583346632 621081149 411614283 799425737 7309463 954127003 504265963 617974454 513196753 974364500 495272831 519029670 205644432 301923199 324567227 746216324 647290905 814249120 820874911 843790252 43542007 430178256 185426994 194155319 140089492 506734299 782111422 943455952 469609252 883177499 340580053 828721824 514162449 838540882 362889170 994006064 53563479 498795841 744574202 890554896 210852416 659077056 792163830 824498590 312676461 997198113 405534661 723000901 891330000 933395909 821695841 874051904 846739820 936799837 171763884 733413565 174742622 953307564 33356042 837768400 986599948 991633490 936914836 943490117 700613874 944352315 900214565 921475675 889093224 976414826 572220646 926075952 471321552 852518175 229326320 875824631 353031737 850043154 966008514 972335588 62755929 678613182 666679134 875488915 190184801 868372691 261625060 872515110 630284202 846349191 832211847 998866063 391316612 796980532 992816121 994522774 310737174 649729044 51263975 545948307 485888732 787470066 989193750 994913121 165066763 685762390 629537033 783044371 825992430 950069617 788842003 966925295 736468282 968761029 653827270 894383734 742993552 939447817 946896957 962356172 236956862 293632452 485078800 731221908 512080094 843057613 462605349 716816680 464823439 661520165 265307916 337280859 192448284 452154018 494523205 502053339 488659177 923361231 632067672 633748314 544876167 741617763 79599554 873742393 358619589 746748432 689026616 975056380 19794468 329059327 450744009 951553863 141910026 412322240 529669768 653284479 587700441 827330850 988569019 992226635 913492617 920878410 968394092 993131163 16716794 521735343 357006995 772397718 981863776 998498869 320748717 750986148 35092122 638308177 98680120 308302380 321543240 941665021 833889371 864282588 965191279 972022144 422706931 832734770 406328059 740354772 285358228 920243233 389703505 564947579 513033493 822038359 558709220 963072415 181982 149549638 410401408 904098295 196800120 436038803 194583109 551642440 1206511 984894610 780243530 989579223 764769466 901087236 635155875 833366077 51754892 186587064 629544384 835639416 44346875 138690278 470160595 632370411 106455685 547723084 591667903 721003210 596000261 907267914 920653892 938465866 517417791 872435843 19960187 400485449 638660204 850847790 689159164 825473557 741948057 792023522 808581678 923034898 640449821 727019167 106395624 321343759 53972919 261745025 647226655 845386547 646685138 923538650 479216398 813942319 861347067 907605701 664898533 740381373 473717962 605374126 572090932 844974173 118468961 493438135 589276559 861858992 689504414 719647432 721210413 872111484 513623397 930296067 754420023 953257052 37741006 732867558 302420191 698410051 644392343 777215329 39351453 324418299 456846156 963523191 202627189 443693389 650405949 931526436 274212126 526266629 458810550 830654260 612033202 928419578 36175540 363818906 290957786 891453376 34945261 150204275 849476777 922948807 26899100 401915280 270871698 273202737 24238039 185911319 309768241 533236954 386002626 594294162 356287483 724434878 59764860 187276886 278696252 973277466 759027071 899380632 104548818 198180746 912684477 983297943 140635 430175854 668274189 698635124 221003639 612565701 689467444 725538056 269131936 871145443 975480820 991671855 528304324 971774510 434770367 544471838 256094087 273169116 133530064 455563896 742003406 999321528 991223650 991746102 234441923 335764275 388635738 725948922 504824104 520142605 849885281 918661179 785261482 878675280 860107368 894542234 86134684 351852832 305969756 972312184 773117333 987259454 219309092 246713764 378610807 713627371 642032301 684591799 662243437 673133438 769609907 810719659 638185307 843770283 396046188 852860717 411054721 600145041 15819567 202006879 785802384 876665667 368246367 501093554 572429180 816203511 882037034 934215256 785811113 888680995 417513129 845538368 875221139 972322423 127772006 336138474 842398808 976843255 897683120 942372367 175194657 217027415 283958239 473030389 624039513 897212221 191129541 958406157 902209180 925151038 995757180 999268231 239202170 302908942 375061565 896748545 197713389 653354052 852485250 956001674 238999103 986271427 196158294 503572717 57349727 478339595 762536012 803759953 185716536 582311423 242883503 501265014 559987101 662634085 901236466 934715637 291862450 365520203 891738706 939456751 554809660 884742070 489251977 696074013 839268919 898016321 670217848 900131397 134134764 753396531 374295936 638652716 276205517 626711706 625021654 930971175 39658207 96721066 770971060 962878397 161898090 650431435 166393470 765669188 140222407 440989823 293842159 665215164 780793561 931899730 582815292 962746745 864207682 950065609 723536462 854622609 8989994 899039630 947254900 996521632 48774009 389161137 334495826 378608453 647547646 995177263 130648456 425942272 293456383 397511934 505672211 772959866 970208348 990497616 355303150 892994547 109753308 359721794 238771734 426915202 399851856 602167176 850681761 968724790 380109288 952519953 435510719 577514485 184485909 286851066 859528497 895373086 573253037 785527018 960968484 964117714 122275453 277075110 182101527 648077696 294741373 647764975 164712035 327994643 195637614 699044347 719117108 892757359 849236277 987385138 687344759 732074006 825958460 877542989 880860111 886210831 806867291 916373781 805778728 899004744 315805059 832677655 298667069 304654575 433829688 445001963 910462982 961242663 104427344 720181653 637678433 767857951 243117434 692436262 372923479 763139869 676345464 957710696 153380325 676239992 109236769 206554626 564028543 670407587 865119215 962803109 286819564 747401898 866696701 903846186 381401242 417242081 419037348 617294255 331177454 913941902 485544393 881110779 504237349 682288900 510082180 816232035 796531549 912713986 366052209 739517520 351872842 491314492 546152172 743313013 889661195 989361071 588520991 834865534 498899789 547640374 878867416 954886323 509057849 974304594 582759469 682051934 258895143 975176484 18564694 697764242 21570577 915744660 596763634 641034265 898446624 939567438 581299466 994919750 637284912 893666412 692656147 885338492 447538487 477537205 295936023 444227387 929588053 949257234 820318755 956335884 421553276 511026747 763571236 966682114 354185615 459780363 594479836 794205522 407102231 833009160 848756072 863305768 947982813 999884656 997295978 999801733 718232566 976127800 724893587 871094748 882547552 979721184 263674570 536682259 193615573 784079875 508510044 945977662 420866647 708498758 452790530 616012932 292152266 549212628 311581381 441173960 988496209 993332909 598504562 885806815 990551283 991636428 201167499 569998874 543016561 772044962 715405819 789238721 59223811 407096005 145888938 618390203 661053586 667513747 878146848 924384243 82371681 749923016 900343753 930796485 810821720 974084052 688655275 775494804 29802737 827338832 985558628 992291489 172944597 470793151 480060804 650033119 456364338 909479082 562583553 640760631 539750776 910756422 629865240 664507748 833473941 920922236 789730432 995112718 944502100 952835716 682406214 790788609 34659320 243506648 942288194 944237414 599892163 698300654 118549294 707709963 97244308 681250685 393930967 921006693 412879865 593538669 712535616 826433874 971430215 978990022 214383883 542315287 13509397 335487388 82412154 453848509 668783169 962965081 98307514 179503771 349616476 640640624 182547420 649039728 945351314 968402619 317521484 835076337 651946358 926616518 506546114 656021898 949888507 969100850 316881792 598569678 477629189 689849155 361472336 876902346 207664948 507948119 623511357 813449989 863773445 900698470 959379442 960218314 994760075 996854735 268835850 547386060 669063498 775244607 922114057 957117426 696560319 882843105 787548159 991974475 646119182 795618587 473104753 850518868 238177265 421865197 282264817 882138566 730311349 733515531 579194775 914053044 188945927 347206003 166971112 527760690 33078137 324578959 359088766 795057941 704117833 801388510 503545914 813675008 485458467 762911520 347006312 732453449 802091429 927038503 812728387 935228306 375262023 966945097 120708707 250808834 392672416 751736194 745673705 791905059 743928465 885089125 695421951 903049891 651549287 693526891 660302123 889446968 257705457 916440190 306486186 695458651 576768829 873404688 902924464 947258370 230449108 420343726 300590552 490586863 393690244 865180007 818382227 848704904 299556729 391942906 176759121 927988822 289743924 693336769 418239814 991768251 475726482 917001883 616814253 690925378 243105238 457762149 203155013 775358806 406257966 425237824 247511388 835064184 611461349 765226332 402890359 414464538 462116420 679397809 67680434 749862063 983379429 994170604 544712775 917611108 84328799 136701036 810713952 990853738 409987697 780437459 127831431 176540049 18026326 186218741 448457762 988211120 335099705 353296353 910090346 978955929 580586669 890342496 866870269 915355429 892952027 966948390 276173433 904014505 191437737 493151007 120244482 180305151 586655721 998061872 155691523 389640203 262730674 966817215 490684523 698619717 822572735 996318261 148852235 543630069 435913501 835604048 425384346 766395464 148491856 324636593 117843920 761306997 661393824 749644338 214666723 807691686 370689534 433971664 39932681 67389917 566390070 888348837 339057140 448384460 124532098 139262999 861450095 886166048 526936870 960665658 216428574 495701499 931613526 948477653 52699612 693325844 149131018 211079778 677461575 944049623 58497580 160818325 658867832 838939390 375041087 773743207 319991281 682614280 631515298 860733995 922819195 928634016 577142787 932996158 343315434 401656796 512841761 889371334 598184888 716257190 470271641 530108062 526547575 872003502 332037365 344161025 464800791 627611533 239078481 741887174 999904520 999975267 625711844 989009531 317105432 697882916 669286375 993009261 289954548 390858782 563559842 593875350 168903316 977190406 235235337 841796552 943274462 962597722 530765773 660074279 791236604 995754931 167664587 174606788 412138644 964709475 985068946 996155659 863896693 954077675 759933512 951408298 712789139 890089226 707322240 883956972 104463387 946316785 943500012 979715530 185315402 436723188 211558333 347416605 215731590 265354379 526285566 770569568 883524897 899603010 870272608 885647784 278008030 901627015 635932553 769705021 82695689 363746935 474991460 944092660 157273945 343197686 780202808 896860586 176585195 560048085 454295923 583486193 821620566 965319637 318450759 489300620 653285520 758700875 305724730 608136369 829110566 995015313 717458981 895624838 395043384 890690529 222683831 942421606 312676551 376945916 679897483 872401479 798951248 882632492 746074246 751867447 868792430 999818904 561331357 933757649 938140089 994871438 812455613 857003099 551024912 753923832 325504957 800876415 913230645 994257086 169997987 685554213 40723629 56426556 148964862 671396517 323326594 914866052 659933147 837716219 288267828 659071483 451531981 565953611 436418620 992456809 688166275 722009658 725860025 946933733 102542324 365364027 774229158 895168604 983664217 990720632 128952130 836638059 64990711 359244221 934072857 991323311 589031710 911991509 555724382 826869490 749500423 944088389 672566265 781546220 183694444 248063202 998217999 999482561 974777640 980673640 290545483 369702454 729394329 906030064 325103054 874801704 997462735 998449231 510646787 766956888 353862226 797920582 958874554 973547016 511262336 953023053 60916055 676887686 857707822 927328531 822288587 928307221 230343 311303579 689545329 930260820 792435731 946491993 754753512 944514733 19309224 862887084 774273138 960164237 165983558 445950446 457329811 475778689 350259161 372251921 658600312 923729766 803023775 838056136 200113316 787275759 347563641 375857038 806995641 923985637 326651682 726237038 732395821 732980250 119432313 184950908 751709935 881264933 200077584 355893816 657731307 934034767 623433361 824021942 746830002 834327074 371617368 412661142 175777440 456014781 572191718 813388202 913547534 977953184 809954078 921522955 594720492 772537503 146269820 466194627 111509736 615955637 620410977 749313328 313528841 334929800 839792707 850027823 16464004 581034534 394371245 718998755 109122284 941053971 993687139 993794622 548713166 897660553 108284012 521714622 513018242 971722536 608715117 701346700 632375374 793064551 228784141 245421523 141164575 532966359 601808406 911813066 432573274 460266901 365016494 762951597 661435589 735938518 887073308 967922488 24723003 317986310 654245908 715939572 696605573 873768487 335866215 913346108 683564477 841292232 579675322 713378829 829242908 904996871 108370409 870901741 253050708 490509522 211492946 669171589 21085417 188595687 958647164 965592075 152920321 856036492 107091868 964815288 713006079 906337502 231097395 443406933 401596304 990671815 403938064 615651825 188769146 461200477 520010996 601635018 365659374 738511154 649434913 747182907 385896932 421975648 860611128 992560878 644848052 755051295 980583922 994533817 479302422 699039073 965491885 973318800 355107974 865600528 531371568 770458335 92126445 613882615 822661537 904914273 433013231 683561267 429050348 661387646 159749815 842128088 433641920 978364042 70633482 853549055 375825216 776092060 841201790 987469729 739576276 850190429 951345804 963124495 184823149 196867389 998507376 999769919 946475829 977274507 374457996 977148175 946547141 962897960 878194545 941789858 817077503 875611177 559922539 690282537 109998301 422445432 43886230 327874747 841439738 985896958 491770203 903154316 853396051 883423231 283816051 572535471 990850040 994468608 71365312 650892684 886179704 891343984 161805968 826927140 939681557 948256495 923238449 940114800 281529144 916889343 401290915 963417286 828733538 837762399 18764693 54945213 496880222 582586644 123545153 244859771 875142905 925161525 253594749 776788186 954922792 997589491 362828491 438779145 464710870 839334757 977955768 982964043 93270154 136927027 584857216 946038334 573853848 833355040 4766449 12736008 58316339 196339760 894125425 973545596 932160497 979863679 565644994 944289164 531689804 536607933 334416237 423454050 707585780 882443027 622904413 680969575 539031772 631029303 743533453 798174737 364364046 876801419 396533242 594486422 180481589 248369737 638864465 736930969 92427192 280367089 357881713 546428219 66837628 764836197 175322711 194706795 173453132 291202495 131855918 433323764 647951741 663943834 985270658 987123138 997451933 998627172 482669751 780657744 12844628 186463020 465610822 685565694 800220368 885572934 395833635 907736805 964678604 997066583 691551527 846068655 315614236 793245710 776201629 959980422 22072268 862984599 330043475 731852207 243788250 278726721 739974656 941692962 690765328 721274639 49261418 430322244 525143594 875924564 789736002 916240757 434771192 482534008 158800826 846169401 188822654 776835742 590395683 929964919 243971807 313637220 383878560 983171804 403996566 563253356 220564992 681399220 196281915 345575946 697600627 871312078 715060098 860747720 43987559 911794727 668400417 813015099 291463430 300710368 579744148 759600241 399000742 414709783 909442712 950427517 180604494 601813804 962616633 963510416 536228812 954156410 934730696 951828881 328532440 864382341 801260970 887958877 492460418 598030751 556197415 572076134 260083708 281051335 374082557 745169952 751275922 817507147 562192229 723618550 550645710 802715308 882508503 882944275 391857638 875350633 147443331 606270785 259161756 483937117 470627921 805076928 926536058 934870097 308516057 684844457 834048569 977935889 71552922 723147495 118267260 119289528 928390253 965328533 111867126 487053385 876042185 896530044 151813241 913118085 469313012 615422317 245795114 553491086 731547956 774937304 209522673 618665045 537543865 980449786 927610615 978031339 625572822 656790760 790605046 972931294 239436380 689558099 716496640 918735835 617354554 851828451 925716671 991598448 76126799 612641679 475542285 699991280 774628050 909663013 202404081 612082784 506766819 600223208 169487928 376355890 53860427 178842753 544857762 932581928 301135308 446699322 538902218 975778086 848986758 860235371 312574136 844811075 406490662 680919240 555250399 820736451 549684245 753563347 203963985 367720811 949690566 960037174 896474111 911665471 985921269 992936010 525045479 729881108 596990030 982128582 843978788 931944448 860253856 870942296 430721289 927540200 30730985 562641323 25353103 584520088 571721086 617821381 778523193 938364202 125787095 134761238 978941303 996326050 949547688 959683166 192472810 688560186 901175604 946258917 649609060 868363686 651797972 962109886 955174774 986210099 631172445 894707487 961449142 984756671 762691318 960177134 344189924 650041886 557368089 692904792 693486347 814771494 831705774 872458944 897739241 960450563 661734860 826685563 231059751 695204449 307245525 550709136 606778199 653437215 448940843 745289065 672964761 894566525 801625011 808965388 492505753 688384001 904079804 996083297 51536661 703167003 606698994 865297463 178345308 749994363 923412495 929891053 812986381 975371425 285901115 817667633 704895422 791949814 853313405 989165830 49952905 337031631 808354386 821367241 105382835 527460780 315409489 999655784 750449321 987864398 180090834 488848870 136063973 658643509 826582555 948085091 846817684 871641533 596470649 983246780 506724030 865097164 718283985 900204760 127884342 474022464 858105749 949778553 108146403 733070302 716107383 824712220 679944151 861641503 788592239 901929633 586662296 852492413 779387094 816188134 375326070 919770233 496098840 818612391 39973848 794139322 655836863 858537825 78843130 381505011 257447575 377768930 1463176 675175422 913168177 933737601 383853541 873770333 514050126 974154965 397409396 935720848 863779479 949108448 397560933 413541189 351715742 707395450 870627114 917055163 260336029 814222803 267494741 451871498 641058691 956726838 389567542 724910780 390190807 997602430 189300415 726800336 546218386 831182893 232608743 536353034 505891448 675101424 277573261 412719638 52326746 311930733 698585953 798116551 982345219 982940571 61242174 504567599 785744795 928137145 260047128 277120173 310729718 581918324 669816703 904905231 864708043 917287463 970670608 986385021 659862268 709370960 77947765 964738481 994608161 995330669 193258708 780466101 434858516 727300347 262423659 500701122 997826567 998374505 596286264 645744247 124568310 649829245 774803176 787798592 873526323 919168496 411668603 503712630 930860380 995697016 817840112 986710616 819988283 921303962 444853481 460650316 256069755 715741199 704264283 792856897 424801833 530125675 399246360 900954090 989450189 996436416 512797267 700474336 758973006 764112879 466651629 945092977 599482890 688219752 77872238 905175628 671575786 814871975 686735885 960182825 135504018 942831479 158785532 679911060 698746663 882638401 965553553 974628403 403134030 698443761 301102000 993703180 830042713 985171671 149905562 405791243 862625327 875818718 285356675 961269012 502503710 778376874 313776889 886010108 273089398 446474338 26606539 261687044 480440860 666228244 351193751 716109441 832396812 839719226 73058667 502796606 159652960 560881215 662024495 988963623 429188319 644873638 26633297 67821678 717439731 743372990 926892240 963766853 438392747 672529472 599629413 874922517 432611040 823125039 225050461 429406476 884692222 997816769 470759436 851331265 963211737 993384643 226476173 879633057 848009684 951505111 621612433 826163615 258096691 680727568 499210105 590071562 52981058 817667275 741554258 744958478 627271824 757155722 86573132 892582852 360083802 998571147 760597065 763391261 307273988 985979652 309758450 799758362 365245535 917167383 421667304 823932457 730500833 875218122 267732596 507387400 626757454 828928425 272545958 858270735 530114218 721519535 807479315 951978405 727672015 812201380 386779859 415476034 492248965 709064981 158600304 808970198 364628594 461616125 965144290 997273257 319211101 344808339 586053209 660823576 461794876 606728221 975585132 983048555 467656001 569506521 407346004 892292200 84485558 705141565 824322048 921492557 556091675 696878693 624949656 649570676 855655841 950703975 953551850 978249262 477316914 565683344 990067579 996970122 478176313 554122506 915311824 968526693 286923064 667323738 462309598 482008775 782360419 790226129 92998540 907400238 455997349 562356322 259024083 409212002 957264121 989002862 465485361 488149468 865123568 873401381 664769177 970289184 119551311 780417396 988308345 993778490 561527969 803435639 759916360 899455988 858177175 954155854 357876414 676466564 832832703 994273677 973875788 983307122 499055027 500933190 786564320 888377539 727482693 990146765 551317810 813574933 503501062 717653232 703963892 770378203 115963462 699877503 382029913 702180512 237512280 258425420 582860271 696161598 553365543 638293958 692053314 713773769 240051509 440978731 434780133 718189364 873550312 942306941 563073667 841061333 31675439 480598821 889207253 909187446 722899709 806405628 574521326 845380712 104056783 353238947 896668724 942306589 169328032 202542568 160095076 993998794 26588117 863080967 727091720 760660797 604862461 694103349 764361804 921880892 426399508 543435270 760589507 995377520 966795481 991588985 305722642 944205373 158756565 780524637 25627703 207592181 383731358 925507859 195978965 893240772 413728505 466960380 632919614 919357013 48156545 73050432 292736620 880276331 637243341 719595842 275130179 824300611 210713830 495926199 307157977 425255037 863374634 898427327 423920550 895508032 988226485 999624608 69485866 331138590 944700849 972338233 841117 255320502 17103953 492754605 64037590 683601410 725314694 779518071 419777801 691775712 888894529 995792046 509224301 925125858 462684513 909188788 697785054 728627142 494059806 705173563 378014074 999648276 355026758 779986873 491393038 502706085 628638247 937464445 678105486 772148610 18289750 479127658 318097734 753557652 489357174 744334190 72401069 155490025 456311247 776177644 356516787 556217655 489548797 983324252 253073659 982071750 45917572 304588740 990615842 996945407 242577031 349404418 595072429 869855462 277127321 498956194 264894139 607892109 790419783 969445062 531731114 975131096 993120514 996610188 586002164 601438588 800445591 954899998 964686375 973771019 917200677 967258517 814589533 932221300 465942081 869474429 601529516 661673719 227205529 398148015 551660661 690873022 230443072 355030500 105478704 681586987 403092105 799610653 662363822 900792557 138290474 171197815 103106192 109803252 229855329 857117767 501173549 659677996 576398972 594541389 751368091 831132572 882535712 972399193 748164512 824832118 25486294 57102721 800309433 876146848 185022677 751766336 622228438 631407744 235631851 317156951 362769483 903977868 237223871 394477276 654992615 851764860 999879337 999956484 146276090 838160910 568007864 729441183 196383312 460539538 899983728 987338553 762614085 981365063 965136461 981781550 963785399 982748452 13249295 561554100 734168763 794763713 337170744 448180334 381752408 764684602 920383253 995866243 86718899 511189757 700235904 965440012 27565979 482344990 822880814 840905979 978098598 980070093 382402244 865163695 390321928 735954177 881389681 926371497 908691872 936999062 524038761 870265615 897529977 911142340 344329140 767575391 265775510 440673252 131637958 362786273 663813316 815538588 970341004 996791255 893731418 991299876 996173434 998430766 165540365 419582906 819907389 850251683 960350694 984592132 455164317 789008292 34167221 722919752 650959699 651235501 258485476 802316862 251568847 288385269 636670493 934347097 538469221 790561475 386923774 441266655 852456178 959688043 259183145 661575655 26948317 937526023 852069300 865224710 956492110 989166799 853043221 949882336 301385549 820024483 11579819 321748578 291955431 362033022 161603187 282089107 760879773 987371266 693179939 776203080 825137343 853449298 856666097 998631736 843701977 961382373 596606020 601089741 946050463 997222247 904651170 945920659 89629175 131229092 575057248 806521211 241752762 393117332 415536808 454090678 629746718 705710448 618873419 674911591 364124744 933878510 197658068 675222881 905039748 950170189 806266343 946251549 213213021 822794410 524206937 725051130 536590962 700394552 337075543 919823941 127770288 979468360 245725863 660064069 298461167 524572014 645292880 860177765 702569070 896329899 58820481 463579141 247174938 649716185 102028451 104153507 189254351 783975166 343427901 605608792 397479988 755698305 587288783 713906590 163959948 942898008 375811205 633373996 668972452 813226387 424922122 700731020 934032763 997633987 919045510 980221232 618971188 835389461 293117829 624094906 207877575 273191974 724978037 942918295 722657645 740357297 613593822 689654105 156764906 746049185 267189639 725995008 279501433 902197795 264039088 594434695 577033847 686744175 206296412 722092150 131946387 992736969 248651050 655826471 76644840 400284999 128080614 620821197 188570989 418235375 757013370 834889884 24881648 615765578 763992450 913350400 328208270 396065747 132108635 830340515 631584347 911186432 401010051 479203095 158007650 183327480 415193105 647756074 712351788 895886551 518456570 702478344 136326837 351988917 706414672 870273102 497432024 783935380 761000271 861982789 127010336 484901508 959704572 996791564 190038900 857703681 588695117 613076633 106012649 844737952 567707341 697380870 719688245 758896214 775118872 988332970 402014520 664897001 849485664 966561682 222631880 482092771 479110264 999217845 430970618 748522797 7471379 272121018 983635097 999342667 613898209 774539640 507859278 724308345 324035180 685465778 976729644 989044960 307747518 736814699 40043164 262015619 501564505 701502717 523465129 836687135 83993596 279782854 576628738 629045077 437265566 973085250 903680685 905129828 594466972 734814863 477884963 749799878 148723776 718743618 983672970 996498005 729361649 918226118 357530944 590276110 40306081 489508832 391348570 872357903 545869614 724441801 205434769 610753400 765327689 772886682 211099029 699246843 105202568 430193932 852140091 989235789 482071316 674313923 998816691 998937896 377640987 659203454 434927157 949684718 269615379 731764236 521996643 908430713 234532606 405876472 74048296 542246149 51683743 724218405 157512392 754766340 846795422 882864206 350597243 772322786 865777077 918465403 715264506 786673572 361283903 938306142 533527537 952754723 200364618 868521505 653567704 817497950 617159839 743506074 151121848 641132772 446769398 750731459 635593519 697948561 902659505 946152289 567050211 688162528 233438123 828788766 473315221 926382670 731349703 764538900 493389698 552978174 731790683 778545983 382875966 740540813 258927280 287012342 77246174 792744520 735689225 885316005 304894976 789566022 342005483 884819018 61832931 871022259 337051618 703190498 58237114 760627619 735918224 975297258 360541595 868532247 476758412 816424200 719945756 733119443 782683605 983059789 703781353 721352502 650583461 953187804 7125263 956601431 699884263 818918405 80378703 334645538 754906902 810500003 3561665 926558721 192153529 389648697 992013280 998627322 527190285 654144692 122758161 692556739 881897156 906814614 632214056 650002753 39145407 278196268 509490428 532059226 484588916 608367838 592297646 761744384 848340961 892908383 913184578 952051105 533719747 566454161 745445956 968340722 656124199 924641882 330345098 360331881 930854243 947553473 728615038 974063417 953649857 977134502 353123802 524729860 41287719 906117962 190316539 365610355 528532056 708480481 513396482 774809779 985905710 999405073 332019325 652228432 511024395 530233573 370939171 836610945 170394210 555691780 685449088 792299949 204785194 650063987 16602923 633802922 611116300 887582697 696654421 849131947 150549627 790222502 412435825 681081212 6954044 698010483 483949071 638645525 897590841 946187654 530729393 942036795 555100892 726274998 151219155 564024789 608529674 891040567 696717945 822496478 835172261 859489196 647876083 985697836 458002792 766949269 167475668 930121582 858482605 989968196 133767986 780292580 228670989 817514279 267222803 429891228 288637148 599511719 783269027 810063972 407965651 880777584 322294299 496143606 758750896 774896049 621238456 780817669 271596955 533929555 75893041 803828530 854103443 908418136 701208470 979266421 391659649 427567726 317647685 350025452 306052609 979107169 555484058 631846887 977689941 987983907 492085557 965436997 122115364 487311986 6541386 788611211 582509796 965454058 482075223 504774283 463312995 485047447 349661537 444747247 464956129 475503856 352650083 852107147 239284261 245212850 664855165 825091536 452410117 989887790 689635824 810854473 707608710 952775380 684235159 722060414 446230852 841613221 82337943 445757801 585043389 603061933 366419881 690159693 983531743 985841200 319648968 900424168 638118981 830869093 800001295 858837024 631936833 818853557 659011945 760361002 121466205 157472593 934593825 952402722 899472372 950833512 533274490 687548573 488789659 621221436 691028432 939335658 375392508 956875567 985621267 986694650 153096821 324532136 608088491 703124134 255036926 891000760 945321127 981574952 993904752 998066338 912860030 966091754 338526422 765574004 707355617 778637547 46933175 128702565 332123320 606644862 473447692 799412984 602767013 675912750 426077950 551513679 523473208 816507373 908139604 982605322 78627260 498070124 881018406 923786574 461007523 662167837 416340088 609880355 467427709 682025817 438698696 449352666 380298781 760211923 322212884 792236901 282941393 320328968 542724457 626369418 700147139 722401175 141629422 643673047 219570072 343878252 68800091 180195824 319992572 424990537 332883857 681886317 96831609 457188101 956278573 978047934 448082264 757664762 207430445 852956429 415772394 692684462 555530664 757741288 25432895 545205782 398277096 699580674 305155469 754597669 617881946 806302541 829393998 999472342 758420758 834005779 930333499 959357626 578862670 604457924 228014761 491169049 257591176 678663094 481509457 961743411 917306747 929459863 124980982 814143717 220694549 291199855 604307471 789157699 818040492 967673705 745448083 778421936 870346973 984750558 930661414 946140800 2895447 393085550 349601411 560001835 758931153 854778774 64131268 756573177 99998481 750975963 450063356 728625926 970654603 970772367 503483660 520939362 894114140 919276647 963873636 964110203 424707873 560658626 293790192 697483125 972305810 981557072 705995004 732804437 929290218 993782602 927203758 985649258 112046517 317949104 183847502 276669336 910587977 913731183 153945836 882403124 992358486 995715138 899933960 923160730 657436619 753985929 30996035 156542109 878397203 921044628 451999983 549811558 596750017 715865435 165661667 303434317 17257084 122577436 144075723 886573694 446427821 753515359 145459690 746535623 720834745 908548831 175662767 917255505 302628438 763558365 124443008 163004514 158100463 254055313 633152027 729596298 128710084 463393601 598816647 722064476 109501259 512974417 524452954 837944169 721632585 853824594 447741770 987385141 283525176 443903255 590332007 649618041 713263457 852889931 580669294 603142075 984694694 987046140 745190203 925912840 37157908 388706820 46415138 100222349 801999278 805033640 943711030 999743874 198839091 484632687 245073792 265431836 248984391 270631300 714815355 944503809 722896961 756079224 321540904 945918142 903141830 953579490 185778377 651089669 575964761 664650146 728423892 785597227 381247184 626422521 781997378 914837495 853708759 989685175 743985138 746830893 620072882 986073247 389029216 690639982 187949090 190094669 143435375 274883414 126405039 584263694 574432342 677949063 399917041 455880160 13208906 901514224 903402276 962072927 61032120 74086308 289775828 519372657 383909427 935316904 104612558 980511210 462070239 593806662 288744838 930214716 260196584 721580277 969076059 999605947 699875701 714709118 369182691 863421398 480256192 614098791 807482525 962085820 341886705 584479266 22769996 114575390 214940941 216880803 277754981 433527083 650423296 883402718 830165734 939674046 207083658 450439160 357896656 813192489 880206814 979571632 473227594 818797215 141339694 397850640 765271999 869393563 408497901 928119961 826427183 888007843 41993333 142191766 774073500 870755047 169493811 686342209 798614926 813363722 112004176 865759564 472254486 677457974 688486506 778122582 900632276 966220892 167560762 321717919 248906404 677318539 42802907 881395394 781364227 826542915 258940516 542649891 596803266 891769343 336224452 706549931 991065350 995941886 430522367 802642959 697293877 846609956 89980287 150686511 888055597 996314865 948450320 973709776 96366846 349177972 156177754 700906634 443012528 893588033 693258361 729263003 790519988 870785776 71916995 792779533 259706995 655400384 15212749 259646899 527431514 854236803 622175294 627842098 439287666 954074493 925905583 966917166 324844381 696236866 747581607 775106459 152025176 940063956 145835877 596164758 578672776 914791543 703812523 923722222 971937432 989780312 545536601 907474887 308080678 935813511 391740691 412706609 104241204 978780685 133322360 532977071 788887447 911049709 685358889 809017359 754832073 788418970 533641214 904770142 185282976 193300950 401908200 969469462 75756973 849383405 609078643 656947131 763152922 946851704 777732256 817132045 503308007 638262173 514260691 661613067 617443817 654289722 535542834 718246013 535957500 858244498 71677705 630140539 832172793 929648502 624617898 776297900 872786272 939424664 626545058 692769672 416953621 573788516 192236402 574573017 380369863 606570597 633117137 800330618 221594984 661239457 697929618 780862355 523807269 584862869 231839834 437769885 378346755 755271409 492702874 649405807 778386082 914481133 697394593 773931525 822913998 889600691 272557741 657250661 645534061 766359678 368638209 572410208 780727630 826220044 200407875 920053022 7528621 503717056 819135963 859242813 932664947 966966041 652871030 839251533 45428971 389951579 568511281 756071243 877345727 982343705 379760360 888411001 817049899 905522443 268460979 791333687 398106796 724859547 584556532 763880056 339725214 504598255 550266902 552774047 688351994 803716751 397087556 669361900 797557995 872394177 876935344 899827981 307972850 864006837 766693716 859339984 791786514 948710038 10925353 12473446 364882664 768427555 151286957 753336596 305874804 729330714 823614035 948246831 47790834 494264658 681444069 899023058 520014021 745121025 486597880 955338528 124225986 673566916 426844211 590777167 221413952 884794134 389343499 893681656 753082282 961429810 541419220 650988313 283905537 680087114 164383341 966270743 240971780 516179176 719004770 825114790 417690519 770312053 927413941 945620840 932202262 990732278 537099641 844960865 254770222 637228838 278827156 725137800 950696835 961090059 523543113 951820398 896965995 909680861 452451422 607844865 786291883 990830208 193426363 960659823 803439819 812971953 422462415 961513266 793551714 815762269 923063588 986711014 404670686 815056830 692486203 749345572 423227862 586170548 97926327 804916494 714718742 835163376 784840960 919619064 115454908 446832946 793023314 857645140 836266502 866657263 914948505 954399834 996035258 997393635 483769011 489844422 134173966 370915752 100210256 340057204 669063657 829453085 374776674 592401617 520259372 737884639 408499433 832080987 445810863 543717884 243395828 623396411 786086971 898802055 376941209 450905336 587021720 791941958 841171570 926147124 833175063 927017143 847244694 849051154 617051268 975342871 248625752 895645412 633973357 860115426 526125465 800728852 5627349 315043513 655783150 779026986 992146136 996152382 921590056 930430178 390019329 975997693 136582621 677431042 323312460 840548669 153427066 254446729 273180993 631684875 850615775 995868344 220713410 913340178 108888204 239537877 427837112 618165179 881406483 896499923 693580439 912986526 264635703 320154519 650112819 769377370 281269908 912959321 414910536 875429479 946512838 954188333 848927752 885711756 667814999 681731451 484673729 507307950 791395491 932497622 152656058 324031192 704375778 759447302 753022797 890354564 171894979 917891879 763812441 986423586 664321314 704828217 551711431 923511237 512132201 994542171 2461791 65601840 600394231 750049031 438569749 615707564 376771190 499827899 585975410 796226592 456319515 463079629 961576690 979386183 432636555 682403970 58369821 122641789 629272963 779222498 265555188 994371350 763943136 794172282 604077348 812597460 988388830 998561224 682488057 985233828 891321165 972155662 987027333 997684426 395702694 501848657 486055328 914286515 442007028 936498505 257303500 613137617 112405060 234786552 374086366 721273808 943214459 990219614 21045236 958172102 34076916 700563608 814006751 927764115 140845878 640265462 108682211 403029852 889845688 935835618 518201114 758070989 862809886 951674289 483589293 583645191 814015477 955140507 334682575 711894355 6215408 30429177 973284774 983366821 771643616 933715609 422458947 763291446 207606495 459315417 674442316 779729179 538850891 968475995 353648708 552097582 101704362 664708374 106123413 460821492 821087885 918018030 37664439 710500720 185104194 383626443 708944427 871057821 100881425 565633434 380832032 982570076 740290146 789254573 190905341 792163144 753629939 830610416 934358577 946814042 629796609 872572099 358853564 768274266 515586097 620037518 7616819 768012335 538900336 930289635 214674964 781527390 716787434 850690456 91440628 366639314 240413395 704149164 582023709 855928134 531474645 738942630 469513922 772346355 876513802 896770378 238322610 769301910 539356367 952956546 623697663 988720553 33657508 500984945 336763278 471603485 742612755 892229956 216184394 456148407 781851297 870049567 111264521 204005552 52158941 806812743 324265907 327132805 382703699 444633001 680074614 797381465 428745362 896326512 558154926 566713270 418121144 626097013 624210898 900969099 930006236 937451567 59957229 263349892 872033357 915051812 246765026 704985865 561184956 905153057 156281363 446305283 698289537 855150055 31168699 599496359 879321285 957434379 843587199 953241498 957227094 993498922 408062678 611344316 451744951 534757491 751851508 769697927 504295001 942744933 396658553 787405634 659899312 695657612 438293837 968375879 402677559 675830529 411473140 855212705 932580059 995035822 539592231 580908098 37680347 555322232 731553530 984536599 475041388 896881508 930149437 971939988 96327530 338791358 827696354 961282451 810883736 970634978 197518621 326930394 631840669 646873432 414412540 425372421 87645929 610297768 681197935 861597316 656282458 771902962 976374903 985053831 518383490 907990883 948004482 953235583 251915178 349222813 239538236 589438895 138089764 256484373 464355888 596660878 887850790 910341449 221461119 817757500 704049220 831372654 724840789 852300717 974711763 990045792 690161499 970994362 216896141 835605473 205120372 863240417 476313031 620057399 934389660 936470309 669807438 836512268 674384625 955460349 559422662 672119094 263206961 891209960 701302364 892070458 404724152 663373333 424621001 966473331 324902678 854747620 422276779 505684295 438552488 884923259 76221292 588412021 663340454 893080602 422898695 957530098 440819500 599965180 911113193 956175256 776369276 817560747 594637490 687148990 405066029 497942440 535595544 803661411 969427503 981797564 384438657 756096985 776323195 794038683 697381443 717710661 502119886 526851911 589293019 632192535 240761232 282409563 143577041 803211628 449846099 767429290 395384217 782109461 16177294 970327602 149371789 880077936 318226727 449589845 451613254 590999405 921065171 943313939 35963181 653271132 797514273 984749609 143898553 227185185 36137971 945022313 994102422 997676722 510705553 906210750 567530678 601061042 588733129 956803769 146070320 506929785 11070838 154371232 106174798 209412657 747994027 812307013 306564854 911780000 802160377 985399487 623045782 643195999 573626787 859350736 668583833 779980417 310087752 405322159 245890347 587605636 681350227 953993990 94316232 639863241 133965909 570151046 603647220 696816681 943678896 953409572 828050530 934720999 379164562 400825696 407858622 577649065 4115033 631308292 450953686 595859691 432880777 859311118 935619019 976137090 47198899 494544277 998978652 999477808 629466471 945852714 463670186 663020759 504591032 548830393 696240416 947480473 138932307 496129340 603051970 787379188 755510682 873078841 659963529 925443048 720479338 937536637 412667317 759103545 923237111 983503108 530510013 965953230 502677417 761373960 881253983 981540846 393793606 735581282 701457496 960429637 592532281 804202149 574260291 616799227 917656950 957261731 499758558 712178406 28618189 433583181 337706690 810802124 658746065 977843667 132473203 885941858 895037282 979164289 49011611 962788237 625540779 807916670 367639013 861645118 789087710 818136495 187626524 569761644 551107503 808815694 189936341 813195001 787598950 874424522 289480700 728759190 741277183 856118477 990197673 999467657 288905967 487409996 710244255 737823414 446712821 907152930 442940357 821145107 895792021 941795998 192930744 218284427 109820089 896205676 704513619 920968030 956444191 981718399 976026994 991540135 22867082 139538275 439335185 775508306 233293802 849112253 175911678 598164864 949192561 997651422 974119862 998638953 911698452 992899831 690367143 822449578 685554454 797838226 771600315 789288398 317830988 422901760 555215043 851066283 315081930 983962453 543742218 618993695 27057057 156893756 236396996 371533446 785291296 825798115 557508351 906027080 257210419 551210855 999731957 999835197 744588970 808945041 317841626 986705094 715607921 907683057 780484725 989684868 337253480 356220815 556585413 809664653 181556689 192570279 591369175 980754546 462217739 475229001 153464603 473060091 307696632 544147053 566721396 957414700 402543178 647977851 775280447 974526236 894583070 940503553 668511962 854843644 257949547 271573807 126257985 401916127 260294258 385000397 530654073 741154334 188061852 541109001 993333737 995363651 107521624 934175830 204832704 225919831 587574072 892949718 952390443 963356243 345738727 425444363 613168589 962988556 184640494 790884467 420569583 697305580 300593943 884680488 394228960 700219355 859467423 877141292 915416279 974186347 375579865 794915584 634513973 635371251 181636674 917044004 68066985 151536225 234734875 639202490 468586698 530131696 413529175 823805423 396987969 739173755 498826814 778494000 153672164 562613909 184044924 338987079 841218781 909874202 214374685 716261793 808829513 833484568 225302869 847552870 886095581 996369615 222771074 680758665 585778330 973622716 4084031 796841332 775589378 803331980 205494264 234049880 563089640 661581093 851606002 925505368 142345638 630443887 353497353 750079563 317973351 393132719 95338685 745612999 946767411 998928542 677352857 955267882 715826026 827527531 535625981 917078828 19034701 705777809 163122563 941012263 440789901 491254008 632362051 752464845 959368842 992903850 582470295 624589491 99031815 892485504 596608149 841264359 143476113 680925632 137624763 910981309 962687672 987539687 635468757 814314913 793435138 840842696 930053785 971876594 753496577 824517941 184458662 296623424 49333171 205417805 225351073 536116660 768076787 965592735 979808436 997810564 907368054 946138044 832657533 843593384 436836707 667182962 649787500 757653739 729842473 751536445 657170606 705384022 261519841 330979902 528359705 551723216 85098378 814676878 50577788 107391262 482261011 985442316 211563867 229904180 663166948 923640198 804846700 901154092 774358758 910422080 107246974 582015401 178610768 279699889 454873295 522981350 371244731 527545603 871616103 993123415 687188963 718912486 130863389 931454902 726387311 864539331 11772577 562442180 866328097 948581506 496804388 732344056 100311109 765305983 957436703 974596603 607275964 636309042 194901882 232220253 850331369 957730262 865938522 954312631 328778240 823180939 214592763 356573288 499328647 739692794 283315801 813557575 181838639 626673950 202974395 841190758 699491726 833723643 771268326 877411396 283477619 724419947 87167237 696522163 197641408 915710986 111886591 166681432 845390142 883892723 703265424 935348416 5768314 437102573 103415567 164148733 914394235 923207049 928420379 989527267 629720089 925160814 153206332 243808879 134258315 724953753 527599447 562029809 6872969 40843258 194238339 612285403 38916902 246124343 488355039 774103147 615940261 955222058 939487507 990204095 392982086 493080639 921612232 952118397 222581292 227993116 681065303 857815215 199320878 643513180 70935169 434509823 486353227 761901241 488857399 623427793 301868367 925736486 158489786 846153826 698800535 978258127 450162892 924926964 818657139 953149415 711637553 828829307 733965698 769157916 81374477 866549124 558184151 735607260 489442101 649098164 49598628 862951090 69756423 855395730 639972181 934217446 871745951 987561691 754201061 904096516 878223238 969123482 492909325 884249376 651631366 764118633 942815178 966665370 908812310 968095593 82255736 885074367 463120224 826253236 588181173 936077959 478443921 675661013 190363373 575746187 306983862 740798727 196551660 746979428 349911042 865861852 439451713 491616077 63752411 918754622 208156032 620099280 649709679 667798047 277500789 296550363 710598304 973491607 503767523 903261565 3676289 675568627 847317578 943209521 882105665 971462794 201639602 288525081 428373968 685916895 226648786 368080764 359385636 491259436 661142657 731259874 745627728 774567352 58394864 408311545 982884926 983207236 623550462 770555556 561843627 759673670 25461423 514822056 490953346 686103198 806468386 928278943 248611683 305671710 491388525 818522395 619882171 634450307 649189146 965236031 164668892 920163064 861704209 987897912 416603711 474218138 958006170 963519052 832762070 850939151 86242097 763651688 930191236 941313620 254292314 912552022 826936636 830431238 284129871 553059493 114652948 266779441 954859601 996481620 514530605 685312193 938836038 985072330 606910859 631129459 421482386 580661008 188727407 658412763 880422036 924529193 679091999 936867216 256444415 911186184 280773498 336511139 3361846 882756512 706603265 828696152 83224878 451102010 868959250 877377923 530434791 674182571 513581756 832589938 242202509 439883790 834123301 903314446 51631261 633613218 216345040 476762013 402420518 877452261 964636352 968653272 197063236 847571893 279841596 949185014 184419966 831768855 667208775 770585420 87736169 758653648 920589820 950888406 591341564 842995064 6181491 699358350 277956611 788132879 609418547 835205162 100860692 918493973 551375982 745726087 3762969 666886114 991480413 999195551 176465953 391294955 566228389 737545872 110700441 745073387 668467267 882890798 367680047 843419915 818938819 906001644 462636067 983426574 982482587 985746524 456757330 586231525 410357771 706871944 635786451 661371793 127940148 897267635 152614486 465598925 519911969 979237024 606743686 964278966 832476045 845725144 694552142 905818499 521537393 623295738 125816276 253613476 623356190 960803720 689634629 764458377 964918394 983537598 937408278 946084672 705945246 785045787 730914435 958631595 433973959 594078238 949849126 995550138 603932196 905224871 936920163 974886980 756455211 804614806 989595413 996737903 964199550 984786110 527701795 656787454 554631644 860171683 688874080 981253393 614792744 867214771 167171449 534196856 220517654 230177086 600050691 621891172 352269117 482100659 337716528 755136500 808332533 945234685 399340170 572362550 36590814 369683115 76387257 337375816 648149629 805783618 268695159 781312957 71400726 749320137 721702646 825102573 475840095 631802202 125958859 377478067 393623150 699740889 212475176 438030574 223393476 430599534 637511790 806450576 185090582 778558021 195354002 745483205 748833143 989305001 952819609 977571865 518573040 924399871 486546409 788735213 136312338 993908623 454230946 563443876 888693897 926157997 503377119 816886624 592855211 970211907 236648488 289349261 111541635 661817564 463634562 635051127 381494741 602573465 949407611 978820146 234555 519088656 133475983 336204934 990882451 997658423 918082229 931364167 727094960 782810098 980307144 982417020 976152699 998291062 883140187 941120329 191842506 689455472 366762860 887790602 721723969 954736054 146579631 492802417 627793275 804448825 585466341 843818922 225165303 230367675 55954097 532852758 185834535 732886433 207629000 627661946 201895702 278191678 585746029 704017062 731973830 935004149 547566110 893855942 117498807 620313065 56361443 855842431 500214970 762010423 854621632 965388387 735341924 824002594 612418411 962105455 954097807 981006079 534551796 599214530 323255728 627337692 78799741 885455683 910452899 950224971 150181350 606562608 211276683 588357910 204406859 363245794 37447639 308918576 23724164 456637573 145492418 213611395 260700361 703856802 39619329 219648017 795655407 923487425 804312836 857550307 842022545 884147692 588896095 594296733 870674307 891125126 8880058 697969798 608141944 836964037 179453997 321760894 975452935 986455835 645377424 971150737 735799598 814894469 533256537 794084211 442689714 496524902 20695602 623497218 89022530 375026433 871225538 879722325 498166408 591175170 411756776 545922736 686276885 743383924 667150559 841535927 72530090 474762767 923365641 980764723 864991888 962842245 598091713 921925791 344722811 375746359 128921347 695296750 436858022 868317476 355021454 881454417 413261165 499308236 268902971 333578188 439717502 477154034 618350785 708971579 717200480 970242911 956794086 992656857 135715584 623872175 970886077 991193390 814371107 972906483 942613636 972454440 846910807 939111392 613425634 661261629 890448243 936178895 674087351 864593989 13033772 455651563 549213911 995014892 48347848 589277445 760417318 970619326 901159107 952043651 597120722 939854181 373260496 630956171 734743905 750628403 891003114 926636681 419521846 830461298 961941825 966369172 500568571 916743449 353927383 855255478 743384647 861424723 399305487 467960191 677613796 833108418 565504412 934393003 684951073 712759262 87648172 141702871 379435756 407078038 70187433 388623762 588961730 722652825 308303861 358936532 623972858 820854128 189236433 197092032 556130694 813043879 588243081 664791286 966307502 995194544 35751923 169190198 270228018 506052596 108860255 138457271 712782788 991077662 56100885 998200019 473151029 753035695 501033360 687548984 208909942 807423838 328236043 808120520 479919256 604048023 936577778 997216975 251206764 753143076 897726520 961838298 761288762 775251229 76425650 935677412 493572575 794731732 612908030 922046093 104653391 947289374 87769919 571173197 507556679 518843206 228067201 563537442 966596224 983163751 14890673 15767436 301726192 514041364 194019017 974889697 601547488 885842889 349827019 845315599 112079853 677985356 520651302 937355196 157170673 354006451 614700684 876056346 184352612 997263047 36308864 569138588 717454835 910276501 26990346 230789178 384325265 711737612 366623239 464195591 363151238 425478924 444053806 892191876 910105673 976274525 653493436 938980328 409320382 621787103 334005714 606433307 796870227 964015562 841069246 855699680 997395979 999207066 725861806 913345197 79074302 695124615 423107036 912558416 786553383 833702048 280206159 857297111 352576774 600113137 739634969 820457292 63841056 603153133 714431063 964198913 420708952 958804378 930620043 945545429 658980753 863286452 530435504 831428170 610887147 924790454 765515242 770305637 619787125 957129829 428756293 783283819 250839951 451822310 14581047 93220738 687841158 769490579 84364622 621197918 923453139 954465786 15517952 962652417 126576426 742057957 680684076 939592047 975511943 989366805 236441474 282935359 179807259 753325610 161932208 747409019 217242607 258870620 432674226 897173381 396853483 953888863 684748604 914736002 389891422 835885095 172320563 217863179 259802758 352477409 803213193 806360529 329982608 685418655 628789762 657115429 979779517 986235865 327376161 857602598 199993210 217784190 128615649 181242011 31866093 851910053 153016769 291974267 276787420 355703483 803611692 951467773 542601010 987837743 434977052 879090714 427241920 495390231 606910735 907699317 309513915 785313692 297904362 991957742 763589132 955165467 962702728 969329988 731238158 907436027 847457973 874614036 378824346 444547692 266307275 326689619 643673378 737607000 171474175 176789333 22490230 307173825 199076090 914781424 741799828 760982700 974205314 999426538 621897613 673793595 73865812 675264916 717519501 839325308 276479308 378042299 706940267 895615513 426304080 919136026 315751692 382745653 744812390 933448833 125508521 333385959 991669422 997129203 702616491 912546725 493395537 745256846 342981093 956081616 309852474 343829364 318153276 770320509 788775320 878685165 433157716 563304618 28479383 482401137 851654376 972818119 935047931 995794617 710540781 988555902 809957655 880967122 610484457 977124327 993895143 997072967 561900758 630199820 150650335 917616980 92683651 723467109 186645601 889913434 102952904 684678434 370365903 406903519 794561643 917285510 520801840 532156875 465873267 495652318 515155450 725972354 638400265 775957675 637604732 682038365 530886495 714697836 983188036 985496847 487605752 903741358 233103567 322025863 62582480 441081967 899121166 969161039 723303694 744420624 257021561 631962220 689034017 936597480 362465286 494789306 173508983 248268815 296236688 826167065 363807470 797226546 123767366 306174858 984636143 993937968 229750536 650118252 351464378 589155072 218101518 364089453 868818156 988929239 125738596 482305414 416027036 426829563 449229718 808662000 268604256 275125369 727200972 900046839 593088146 969131535 948859129 996927034 25564393 371185272 554472373 877591980 575060885 695582150 637551841 951799076 534755769 923968114 777121376 840681748 535446606 822614589 975578086 992550207 114835809 886074138 931588657 999861285 674142746 801317676 237053556 698507571 214437272 932947018 321457475 487055441 5211471 278739485 733707609 926009083 210733372 318258081 533908217 758334188 218228528 406852930 536437049 689625439 148307430 859051406 930274816 954972792 301731638 655455985 55737197 943213581 797470019 936323824 288763250 844829644 180687849 343091148 137092275 977941818 55095426 897189469 81065895 941858134 427135291 522425909 901024260 991680204 281340855 536323023 394992076 803585610 937515024 999063185 451032618 677151905 497234420 735940740 216005708 640057602 577424519 887157427 406457334 739991598 464341383 719045517 132315087 756039584 554896032 857501638 454703178 951917516 958138961 984804606 779022541 998243778 662583842 739403656 345393956 500473097 863589705 941102249 459296299 785709353 280543190 843751244 844293313 868247620 940166765 962273378 530494240 972154763 881586674 885677836 221843387 388955896 570597572 703685918 667755396 741509924 251700541 635849648 740181174 900230109 403053740 585322422 17805344 812389959 334434751 400563505 284300986 723817183 581473083 743652085 219043063 894238665 54414623 749018502 781925833 903303202 171418483 384393654 91513756 315579731 545230404 808845836 539783349 990540135 54736640 602146564 635383954 781426615 852895394 869822282 534567039 777973042 742362944 938023775 210457950 788198270 239043337 475289188 57364289 840627165 805961930 892550743 892410639 999876234 581454623 693635995 116106175 566571000 5004613 795785742 342928132 473138107 610130823 799674472 34684175 674885755 864937725 893626046 693263963 746385755 577728194 627474539 769954947 778513371 572005246 686146223 498232003 555967192 889764229 939175224 753168246 781519298 384434048 626470325 257113301 699424024 895164599 916842430 284607923 949167547 653677054 960052880 952815238 993785380 456045429 978605562 213347158 602430708 468627221 546064490 176879955 526781479 399080207 985599651 635160719 928394478 11506105 202254948 320233682 747675961 316380865 773119736 360158539 535590502 984152787 989896084 380782811 521197562 743412367 753201115 745853117 909292517 888083455 975768888 656741600 748751508 875096155 974372597 744479599 985446109 229305158 725972049 6823534 390350914 310101799 944362518 802322283 916487438 339111263 514935897 593555056 991966991 679810337 950117863 313088560 941209163 404806629 414184144 974697811 993891037 64727359 204657289 609315731 998033779 321931072 347627664 135928247 788218075 871660385 884110357 371767910 824160769 988482980 999970968 808620507 927582618 519861476 524878450 65591337 250090859 363326869 584856412 803851627 952190429 971627664 981020145 298228430 967918213 673112783 953395736 738427687 821264298 38318890 420547929 115041692 916817913 315195142 541293366 873133088 945079549 632703503 664035505 261245544 428898442 270948359 373179261 395031724 808477655 343125453 848282631 156230196 793529544 387365477 907879837 704159621 792417380 509247625 728819756 643935256 902421660 323299009 451614879 161634648 861930614 751601067 987443797 688870198 835511725 246010879 990418068 489816378 783057338 98061604 762942572 313399888 895897137 801799494 925619676 101399580 762632628 64330422 807917195 977512649 983059016 65477476 226296378 352823774 398043971 119990141 339688922 874810667 933430965 66867324 822508839 967964974 982380100 345338335 401686153 542648971 998771993 342743765 391564706 604461692 844070110 776714021 990585146 909665328 946382387 456399917 553486683 133603809 267231387 266126929 512902310 764203854 894044454 123131442 448049797 949966555 995160904 578313187 668815073 140899299 996876042 7950796 338592088 394094041 628241171 47069086 405580985 159229848 290884619 180631114 324806043 399866222 811937580 177553704 543607714 488387388 745634800 323685377 902328657 561326506 943905853 886777888 926714351 4233517 682126500 176137491 957179724 861852550 977877724 956052853 970754907 651726766 955313950 881174491 894040692 531227300 937385600 693623319 743083552 309548127 807773602 969211558 998343922 986466729 988029566 654097840 930056313 478618594 608762160 215336220 468084906 591575205 678539028 374448714 682544250 405248871 528302081 707543420 724799873 908039432 922368560 723411058 893800627 736866771 946753084 314101349 430243521 664243140 792778528 535565668 875897661 237441521 665525589 989648760 994472690 97710778 128421578 900364745 941838062 340581536 420487911 223555027 780890529 730796442 771300339 343826590 442549919 295430076 596819573 404679729 617100450 489392580 693852671 601831477 745280401 483991212 820756080 172665735 605123268 533395296 792606527 7403447 499861574 969138419 985409776 844477713 910752143 730009748 938672607 304449551 424828785 498124955 731854758 477806136 592019408 738119378 936786748 391070289 917974748 410914479 429934690 644611103 647878239 498035311 982595466 41943820 358646549 100988192 797010597 984386725 992849641 991750800 995514233 616995380 662069171 841490183 927882785 548466782 588076805 509774591 709357628 935753604 937125144 373289332 726609662 238273245 317516013 604632962 991857800 600746631 683787507 588439549 887323313 980836635 987856001 692832142 697655085 402359952 512663454 574687830 756563669 332254614 873774618 641262702 915621843 974992299 985930180 402137196 628987001 154490274 976761623 19739705 559377892 75850435 791207062 718763971 774062004 223274001 546072559 213911751 989052450 104050418 274312422 788237847 945401448 333940472 966041844 686028366 815767871 235965932 266941055 257892862 676110880 389991635 910776288 41834334 585342584 924251557 988465716 695934120 758685277 22800363 879887580 755505204 902473220 64985583 606753467 60695823 372636902 725185054 732242295 631063995 763702380 603875689 978519867 555159534 984027708 282168870 897237736 888243420 991232432 999120064 999901372 886082221 910035440 934192574 964685449 253849149 784479999 489986727 964913119 106292521 672873422 721213012 778460690 390996685 634018427 72577777 643190987 218287974 965368539 443938740 605319768 477759614 823857978 297405740 463381336 14037044 949367570 638331188 939319659 547868405 886190046 856879532 899822327 97221084 848863562 302022126 706312052 367397183 793386602 133233479 641955392 930682103 964360551 636934869 722713136 92675084 686702052 956968302 983699476 924028317 998007394 317205017 528397213 902996842 990515347 169741204 239439433 79769005 564713917 950148140 970629506 790958061 925235053 927015554 940460617 353732296 649227025 119910958 751543259 461668257 862336067 654078524 722985906 944482386 971917057 947338441 991285559 960828752 976309121 839751977 845650230 843498832 948126939 366677219 508361732 497213934 830232418 228696976 962645181 164576248 805357605 529781126 686983517 779323447 805254352 237204290 304627850 502146912 823831203 112933470 246344122 426618304 999120206 161915358 743106233 326641747 432248864 428046475 447132279 395594888 520774738 693097786 708818665 277734904 426714628 869618720 902483511 863442825 916127194 707979119 838743348 153254878 609971438 593194835 988516275 563199903 619341977 799086443 919399047 131010782 615547494 604687328 694012482 268572680 494920302 676606225 728760642 626856180 674061287 82676626 217468629 449841452 706986099 329431604 907109608 734424866 807194640 712838029 754434292 743023957 784591384 530915224 798319492 10505140 653858970 539870367 746100467 973707452 998344857 92201350 788967451 830591388 830891934 129097425 333320572 767874354 925448743 639510594 907343694 562171333 828840188 512242514 831467453 601210685 608209703 206279290 901110892 778980935 931307767 181399793 581868655 782168234 880875499 357469380 726389860 853606514 865814823 441664839 683362242 485618592 488097061 348304794 712872871 345861958 841800887 276495879 804405577 760672370 994485639 918897660 983324697 46929362 324918361 10304136 967063619 839885742 982874779 865068985 908823899 616329794 853445432 499718253 980340837 966772542 985829013 314875703 880548832 123538773 690855645 989080178 994489866 84403550 265404153 146813676 920379221 904020337 918822914 175042948 660715034 937202667 987190469 642391336 849538458 767786315 806347867 512468733 793280418 803565569 931048706 648732892 933663934 223389138 866632907 108921802 561686400 559920204 837356791 882072163 917899871 626350757 848800996 181968469 758887960 765096612 921935872 264389036 394481117 788708857 874034524 283095613 554062901 887667854 927705263 167581824 873663692 441021421 599607233 363168038 898841906 783607987 869481393 96980975 782824277 48387094 296349689 252861282 356539173 576850625 802836422 385726434 407341922 352898145 765223692 655589154 941650895 80123905 358417016 640352069 752583753 625101341 853540051 622472080 758593547 415732783 820410938 243354089 847176041 677526364 976807652 169924424 589081374 795163968 893100990 451424545 544948302 635711013 835104372 325632552 657091720 911583324 958403514 728071745 790320448 973167130 998646763 41073506 95121756 40669634 466911832 251540990 455635302 19816247 495422475 732947967 957213228 464712921 649440455 313917019 427552521 924121944 978333006 155085071 482712320 506847584 623437668 660748560 690284327 291384161 510909257 108542915 342185448 61425482 760973582 283651975 848763278 802698953 854721595 953241077 990188613 295633402 938293183 506427796 765986433 448236934 717839414 212581649 498950450 716560720 830141182 721035947 989630319 453680450 776834898 472686096 770804073 851674713 867779269 228428503 636596222 529277615 970229096 512564896 783173776 525015909 864843117 740567035 759544834 165651739 243380795 37700078 752113104 97756673 624614490 309556756 997362883 651254641 756939319 214051681 240324728 74837300 103528543 59895414 447214096 438623078 527748049 204334329 792437504 399971047 874119879 884440475 967701124 981390055 982944383 851076562 928510593 125931807 877579207 596190791 817159285 338432546 997445559 820509222 923415492 450141795 887970907 65250149 316913298 599747650 631306540 169006470 459255305 723211718 983311294 305609743 843459005 920663679 974515677 900016066 957657151 854694728 883507115 443092999 810172349 944367106 985630548 27717525 158589095 251722816 659940803 769216880 940222521 204112969 316430621 419506506 952594197 295561805 418826626 219824508 257472291 526253884 893308423 264563705 316336182 929523494 988680364 293879680 683498781 368789320 858669627 665544451 836874949 660332983 922147790 631312982 909515744 137450746 565912642 458894306 800601039 775424405 984885629 40204139 807283460 629121180 840030809 231760696 502925427 482148795 947935440 133591153 344367410 176246244 992496121 866196593 934903134 235373940 414598899 116360949 765226835 419419697 478731639 126405436 294627304 450518326 882171495 225062054 809424570 43194533 76523100 203603493 392161801 470171800 872899540 271372710 420350190 963599514 987058569 137128666 256221086 665983706 820888446 548021224 814372713 109210762 661793397 839163848 965485204 9383974 144998005 27111882 915203558 383742303 538465819 224994371 688451400 345528436 964225917 659815643 816414926 894588638 995076116 626090234 941825960 567394699 694279566 825471053 916591054 479156156 697351268 891789472 990363024 359493507 629934002 811735148 856512160 818712353 950160210 752442657 882473069 994827030 996115524 754942593 811464558 825973949 896112683 239439580 585390387 552290101 595681978 206482610 229955174 542814245 548211761 803400329 828487066 451326356 939396078 31584560 136300006 149516094 279489131 557578084 839976298 669603136 856706397 390063341 436839509 560782646 828466462 736119919 909876473 344452149 912705180 834473058 903339728 163001317 538915159 853717240 953200584 598415675 805718945 164966740 917630982 95920091 719528223 802875592 974947152 860867740 949542871 213990567 365796493 953269954 980257218 888752992 989189124 548582645 945663970 501845248 747984676 103607317 916471596 386482976 439093620 826641968 977135398 795686534 959969074 522368966 984773683 774116011 914014224 12564574 609414993 219606945 930105809 178650062 890927069 384513832 856190861 365733859 895511763 840277641 905813848 869899843 870728282 769939969 810545597 881743168 990803042 236169409 569790058 992329486 998982970 290999456 612010931 366868095 508618153 314185954 770285571 775441996 911542095 194589089 401957259 772462785 838788695 229379859 530028647 912975253 975668337 344871469 817910462 482428656 721148634 73372936 80269267 978375878 998528434 660250187 963029136 60066368 372492566 782985437 950317712 822521059 890799359 252288464 449176540 12755135 705382734 601924650 893538735 255062753 578576982 400490819 968864195 727779826 820308075 492640351 873919303 155113519 642431255 664918224 713858574 973129253 974031141 606109140 941733967 160239636 960836448 127058208 695544073 925298614 960382271 538072998 543717816 706189728 945400067 581202689 595669993 839701251 985726001 931093999 987702907 232476898 771617450 550744778 780941670 739914794 883251196 59767314 696255891 81939952 866699947 104610241 772504827 603314962 721886838 107880276 329910971 518189300 571596675 428618910 506735042 864501952 955969735 634445924 740917172 44163941 119326034 421555947 599426516 465857145 707321148 436910746 633325859 627717909 648301717 991408912 997020048 27893064 65396558 135649614 934636358 19837997 167945493 428104709 916451031 893388581 895243245 628539831 629106720 724009627 846243339 774508311 949088934 771347117 870907438 528598016 713383003 16427914 565134470 73964718 659004917 778380770 847328898 959935283 973167090 37074110 989211776 824002429 902705787 551296946 856812316 240687162 949236087 828087524 878181165 953524836 962334428 845940136 925841787 255949578 605480217 851839374 914449904 820664600 970582887 647832908 914089091 392601383 728785634 337431621 792251841 452742676 535823789 209177029 911460167 319814508 917704645 195524359 661570138 717048199 768021832 494999903 805384110 453168869 600724203 917127811 977737690 507817684 545178663 373462788 895510842 231069248 744377244 586380735 764256356 964769352 982625924 827426183 967912794 644899058 725264603 871551117 878925395 700137098 991093759 961424813 978199981 326534155 709955558 372116306 744010424 407763819 824437110 70713051 727084032 871109245 881125487 191256632 641139557 494324323 892978516 176491803 639973574 121824744 282961640 361530248 514806380 439309864 760855896 454261545 662032565 829312866 956100770 944161846 980983387 73778836 225009249 72901371 977149326 994438978 997023512 955207142 960863893 859750471 892558023 905540251 960060382 162603143 489376177 543205613 543898046 419467584 963171580 724006610 780586405 830166983 971791749 596317178 834393655 109576376 324625440 494683239 874971351 717446217 806666922 93385019 490133413 365525353 546600939 989343709 992041669 874672603 985639656 867279023 945113842 354654463 478000544 663571126 734036149 530667251 761996937 30308203 816766033 338349899 731664468 349667060 880616149 762221574 816155001 68177011 717492759 756837505 777940274 592888152 921061282 650907122 727141455 184225938 209994256 500600751 981823810 431192090 683228235 485117530 933334957 240177107 525810853 423839302 800692027 198458805 824930812 384896971 495923913 754783841 984333903 617986304 772782791 72803410 659650112 450765946 818021517 211533261 770159767 263009336 738587499 73199427 574503747 770442062 790999574 865405846 879060792 923400465 934270833 607486767 763176369 179737081 973275707 184911723 784846362 598341401 785537986 708279148 966128181 584391636 677942447 655509265 690766359 649534708 737492174 213752116 357906335 83437608 437700180 414967045 730495669 27386869 157167904 799016563 967599594 844262771 949611292 12244689 221787785 405889375 477560644 158692354 836948297 76939899 981691330 977413520 981374108 71234901 732245471 978916938 979146993 970998911 994011092 186994196 755098591 594140018 922686799 128195503 285447311 704281410 977265351 449141906 748420881 196265013 258734013 643712252 816908041 333385717 773309249 136238098 946618094 941549387 990246132 946233739 952640025 51179010 217898792 48463854 297476612 455611553 594492382 342211423 905514295 217614213 331753535 407801005 450991394 706704028 930464058 165224981 413648367 550381582 678932002 134520037 139425178 790661138 823316502 362478808 794281849 806234475 940271458 181253133 305022066 65325536 928581411 647688069 869214806 929409703 929861405 574709661 904749728 730930493 989642604 106051082 343143987 153886729 194700040 390925067 794566640 712765797 780657076 717439234 849139983 375473130 656075793 862865913 913272838 211567663 508077484 655996452 961502005 733036987 817291891 181286039 453683461 713990589 759680121 110781451 973609124 411954127 780952021 120256254 666722745 906780224 935492081 608610438 812567667 560038345 970432233 309530660 694345490 690418890 844204845 228022709 260141877 390669351 979576222 337009386 709606964 119999519 417814455 408178115 758167629 822155639 840937502 480317744 665502309 825115990 986512698 146150975 585540093 952788967 987791541 693807849 734572926 296514009 722924193 572345602 781312718 333874080 928899196 542511183 640666427 50707166 777244400 392386944 455162541 427694672 915046983 849282143 900097399 199096269 758968175 651795872 872949569 37287164 324761616 474265885 492337525 909037157 990517471 236161274 721903668 391276999 772341497 804036935 949848123 618340058 650202112 654763418 686102747 958427388 969975653 461392531 730959654 598358893 825254867 804327563 847761259 526773480 584551132 231874789 629213746 761980844 832646828 372665293 919778837 482289359 883802027 285966339 784130062 919004575 933110036 912746316 987390593 371506871 790782224 770088162 999685211 941537895 944233703 772136032 999918751 304584065 738779860 726928820 789839519 519951861 613282729 252436170 895151229 525223111 779539029 532515299 872939449 840443062 951479628 300967951 645307764 833509602 946744268 365301698 504536068 660811611 664198525 401510310 896998757 978901157 996900506 40958633 68320163 367079345 458160890 216751023 659045850 794317335 961509584 814635574 847954308 541271501 860799997 178596626 290120839 774175376 829570336 460381182 525453955 840376115 978413762 549537541 926549454 863302565 891413198 147105939 245061850 985053109 985859365 726734349 837942868 54069992 983375832 103216865 216332786 893050845 937101416 465098384 801013034 628314299 790765196 268155059 409766644 241924481 557387941 102353224 609515693 576619676 587150710 220319123 317674048 550287945 558623692 347251769 870315423 663724048 778186333 639487303 967599882 163275936 991993627 425147470 952866438 124061282 213126252 152459346 370340812 624058290 667450907 264861860 661545516 916768556 928512630 572514028 678850930 422762246 834338331 23174210 173895447 835253764 942477003 448485301 546285622 160687729 442241861 384362584 440216076 616812621 964877369 531953203 650990127 170915857 755592603 120230968 701765428 259883661 443155603 972888035 981501948 135616527 267260555 184839908 993403912 702160495 902836584 257459611 996278297 115099244 465754944 143588152 893178278 927008787 997987823 42976857 637398013 596956561 657303048 261622712 762439153 684714352 859702655 870674261 881516966 779862608 981320955 523315514 532025364 744022279 747603143 79483443 234642141 776450949 873044943 354260947 434558345 639563083 818750177 784775599 982506315 196839289 267144921 796841233 814516703 725250023 851843323 701465635 998489794 253761089 875009104 962066048 986163928 515690642 953993175 193976634 590164885 276545250 471982529 824633061 896151757 293271584 816903962 898440292 939191695 920891050 950209666 944929754 963441175 218677436 338809244 747468119 760496127 189384703 436853134 287962873 658023572 794586742 796228322 119529029 168358225 125909685 149658857 149632074 630350829 373827288 466478398 449827047 854368297 593674220 923919333 431024615 813624579 398405872 578140619 430822564 435862303 184609383 816184793 464475371 484380417 957728894 987417615 110221854 793081379 120226593 921061306 81833644 975173607 192553121 985678735 764424481 945756298 602418520 775249039 768397152 836485567 392132042 750763219 701242231 842366092 37682851 620227441 570427928 964419869 426666606 969243983 945950315 971758029 333975147 492655496 828432689 888687288 944426333 959858665 815629579 927439422 525834341 612790589 118140937 494987409 128574842 503916123 882732191 959489883 257692632 727462098 691297113 904364811 597638841 883473634 562670843 848402814 83848319 321080034 432088919 699384683 752666461 945023399 6048121 156202807 464693042 743658147 293030068 645755868 743897458 874672124 754902003 771677016 855508456 864422625 661988245 779173232 937525171 986245533 333342506 842408671 919041617 980841552 717548470 788924541 501165184 642843049 217579779 406697369 6468542 152378816 744057190 882163238 712890978 895678132 438466107 450855404 123458302 302448876 487439652 629710148 279519264 339685633 490711339 919660814 590097069 744668131 937238414 984018483 477235147 606574821 32612347 145056215 147675574 436439534 263345211 456287133 914835322 920677080 504110981 926093441 573664397 580981272 593007291 765859653 737275897 826279383 298907180 749057227 818511269 956701710 873150677 909710004 596184028 670547120 4356904 62401094 90068445 615835244 516574783 676213208 767340941 961604542 776140017 805213339 107366873 289219351 859799720 957567481 172351046 487042594 690376961 814369516 322073630 928658995 218663938 834011516 469286835 917428533 12775656 761094781 779921924 850352258 624258522 904271761 654569843 881342125 534342813 701541038 767272182 931350243 463344807 472004032 627802671 931929007 313393822 938237523 199109711 779612991 780781016 789859846 985147140 997695177 712595189 831902622 965944497 973759537 118584078 810841376 668437266 906542668 275819691 767785744 595609405 739292777 767505516 786288053 226340387 274454900 677849746 921644402 153197025 677337912 583151359 870291544 954774655 995460075 913096239 973706400 136164540 847923400 664151908 921616739 226154715 763221014 212490687 905648169 389563235 714593492 99064940 141870728 990299464 994687553 278863139 687287221 131931654 835739956 222757346 547071470 164103031 849668724 40418019 106897460 471717656 717686895 325298190 960928144 806516657 844358664 441304840 936191196 77339297 313967039 25202269 655246693 466941674 780204521 254344208 791684287 87543149 371916807 721090696 926864116 567435472 589796010 894757768 957945024 12873490 116416078 375736363 451218149 662118963 671004239 843266125 902836884 933129541 938942462 996977261 999001107 422541846 932660057 754839833 967293426 671714637 960708772 638743116 679022018 631736545 745372448 53968096 274538940 800194415 818438832 561765249 957092714 538371423 711328570 130979338 440378333 537394205 944771533 218160819 473376920 335682413 530736644 487170221 604693352 782238764 835438135 189239343 707252128 239433261 374937076 596958032 941167692 145264527 403288053 878491348 898816846 916845171 998797132 716935814 883855796 314148327 987186512 86403059 453874544 24087708 501431631 650444624 902679463 446726413 488581274 8923119 913537249 183550434 232545670 19668486 510435495 345218216 599651764 910412317 951269070 72494602 218173204 283330455 721559971 279747633 816872795 111531996 385889397 626182369 813604345 843522518 940398719 973610071 986463976 208353124 906642708 283455028 356035894 186976435 445035404 96780453 114353448 956793437 965675948 958241649 986660185 530946573 750302430 669344425 917213280 773456731 928094419 682855312 890049194 209407186 888770780 913058269 956400256 376029584 910853119 404717691 661367312 853495774 924178051 730857949 853904574 892414787 970920510 393523152 592250755 748770023 811995252 152650610 314183645 521766852 958239562 668018743 740654197 375992650 587715558 172902685 787752350 634545360 904790337 386766156 977175089 748839727 753367377 477267118 801854913 115107184 884267883 750786928 940180669 395728630 415110931 648151516 821075201 330779123 894691024 782932559 853812380 783527890 801270834 753871491 932819520 343765382 748142160 380047846 801074099 762444236 970943674 179679240 705944858 358346482 843989709 917532943 963069012 872400785 961745987 144654045 801444238 696261368 936141231 219211271 886140007 70890925 939740623 220087808 843195368 684043971 897402216 338585661 402876736 689401593 964046282 532659109 714875609 934967314 958601000 957679127 991255940 889752526 932408648 806105393 960188540 455226448 543281360 210990407 288475076 187749518 749074926 341551845 628747171 450966080 912233513 943393857 948998710 876976012 880598333 290230319 376513737 779979852 848111508 96089769 420186416 145633066 239471007 678539296 958480917 547864287 549836015 896384152 971425610 62855873 721201716 362699243 644469024 314607422 420248045 812920359 917192921 292888223 534905622 448738753 585227979 607670161 817113022 802911477 929109728 246305039 956226864 349654599 775619017 287508564 583888672 515667264 792593494 948787106 958197350 198238593 807401241 244373842 338147130 108415591 326903166 339919510 821221178 18563758 509132119 214070685 324876213 404649901 422352971 177195003 779342771 309790901 440989627 328143983 426584949 11880512 968132190 82997097 471023704 724749150 939678606 544523767 602855692 32980035 653099158 387718156 914252643 643319362 930366903 196942799 328933631 558146143 661268290 376980754 961829779 798964986 824435418 904866909 939243308 744471427 849579027 837501500 984265422 267899261 874447225 81283658 580932682 62328728 116356428 542201375 976243105 119213535 823348973 499141978 517938060 753897394 942806442 783117325 797830421 567414157 938693248 992908516 998201456 577622577 907066573 824056345 928026203 315493600 816847412 935204031 952753194 915454323 991542080 907108741 917161332 916622659 964845521 984998166 993463424 660674674 901855571 223014081 934038819 138416582 778664840 620136039 647341333 6337258 549413030 516959420 573628263 954056273 978765322 921777711 935738073 351058393 569513096 600775510 837169804 911666446 953092901 213854377 430779469 524675441 609518584 553552979 968617944 960656484 984283841 984371210 997595291 190726378 542443676 904930090 950177710 282322227 512444343 375511621 594425002 85700382 452179304 696206103 931404348 837888844 845035868 154075217 892372223 618475861 974801878 224919106 742915314 886970771 911546082 434732887 511593881 730178789 768130138 183101447 184313845 476323404 947250680 955884984 978132944 941771727 976146689 563649565 807704377 308576670 568852066 394487445 547453754 52678950 247722741 691578595 734846856 494611039 895069277 557137837 730784816 958978775 991696638 69158031 334724973 638346821 822224105 578937062 587466096 697459354 854524908 134954507 145894009 199201807 827712964 982281120 987041976 429935083 846696139 97564908 544147204 972326118 994107478 373271434 945996079 823387437 985778489 842867721 999758125 127367514 684714835 573218312 949769770 519168921 597538279 202911025 640501154 797849051 809914996 288092521 470180158 178206657 409974167 254290967 448936366 299928810 588636135 139740383 249564050 150865339 842421874 652873879 890757967 830887373 882834290 576018683 631661519 588896556 965117140 663488432 913276469 535891525 625626410 180522245 883129112 96963399 722937980 862726292 905870895 598288633 734555422 45225357 358579321 763400687 807926181 157812547 705004269 691664010 980314436 373977334 424004304 693284376 701211052 549444876 943579639 724668174 794941292 25698358 673245068 999743340 999914768 494731067 805954599 222145642 303844616 48013955 800256877 252563771 837304866 734565379 954944569 815088147 848490465 619678199 714254377 173556565 584846180 793519640 900930611 613743295 803410979 636456659 865863062 802889032 831162628 862783171 901695247 127431765 155877867 939796584 951540107 456636072 468817487 34931964 191052998 663889739 984338917 671822635 760675548 475332265 582258490 787448740 931010605 316636264 667921609 338046586 734993506 483539781 729518241 369910913 423456469 530898911 741489299 244685375 406963325 352289411 436694003 544035765 751407847 528655704 869320441 759665174 911460458 697572066 817523641 706726440 794566357 352389052 762708317 42784765 56922688 773663865 871297275 343077842 538344089 366061083 380077377 396996562 578259210 348677563 490791973 740079971 882154938 311377394 835627997 739026347 941145982 686245995 719721827 886756451 934452675 779079465 800991822 531296742 557253319 562489481 747820325 480095722 579361858 512764555 938686978 64526729 786362180 435703917 486387151 664515728 973523801 721490806 763532677 425693161 645025446 935561423 971183845 88617064 386032287 68085822 741702050 512534457 548408216 980705165 992183732 509001725 996307736 349860060 374273924 863496897 894766036 797161970 948707348 453017093 739420393 181128192 532125590 279697611 371434583 735629893 992738283 857450797 950749739 507709250 613582271 453402278 991011321 309487708 755979477 212791394 322794293 398314265 984712571 245203335 769598928 45396847 618054064 733426124 743561742 840307624 860665161 943274615 981697297 566411445 652394988 370500341 883322872 611159206 986844586 833104111 928614203 586964266 722528943 626914761 805389560 27073108 232651369 567100338 717720854 493851561 730346809 17285855 459749632 959232393 982145017 552786257 600905767 888009163 915036066 914367232 980190902 915118589 992101845 829600220 874921327 640722759 890100870 951075979 974047775 584534918 848605510 703275660 772776119 901416305 980352501 638064002 761775274 156987322 744688888 284162580 329746399 250523710 454686988 395323224 656421790 374661800 885243526 558194863 811353441 851301070 942782891 648997554 772751972 584234644 866520009 941685590 989530330 627741264 709537151 156097297 987480973 416750620 575392207 992846050 997651513 767403662 811810009 71081320 587899223 325908814 900651155 637489720 748443516 91583672 369799838 310199242 839730850 751162061 925004416 655065163 995831322 349105508 515696731 527855133 621060616 635025747 636864420 446381752 747116157 730153286 812232193 403532343 430091674 93890852 655531286 137570027 227185065 550329867 827555725 252007833 363379091 774829292 839552816 597801437 885393830 794434359 923298383 595603731 797158267 78974151 819543259 461491397 535558401 348952474 366689330 139244150 995031620 261781418 484582080 637387024 813949455 96163573 126269341 463553432 698675547 664329254 806650494 223850665 711944170 540173920 914516386 447578444 650586582 215728465 527671298 662990387 723620458 235133130 638442304 378216413 968980707 751738806 814186196 305245506 842514511 577926789 920980408 516925084 975774028 699547127 770889686 230630685 589864868 716519052 773897427 615682609 981129170 779663617 887468015 731410559 857947645 427738513 763360521 750512474 988463847 67700260 978348124 42327880 653171860 209746567 355086794 1432382 964529738 662110832 993885754 213586061 352400816 507294814 898237678 288089811 813674178 985784979 994130616 93635659 751657142 728576101 938996149 314012467 340508622 964789106 975083695 369766589 644185088 417892004 846829294 713754508 805845196 130665528 634790119 319172252 555040577 931942026 952003734 670077839 778403705 816513230 867496473 765688382 774051092 652580047 801022334 161456010 404971705 8495289 989983766 139722603 588765897 393849545 720050215 65111922 269147341 721006336 992383818 977248240 988818027 78368470 320868623 971290668 987561187 151078019 873432753 191207379 804778094 492248329 670066107 785533795 927207485 991270922 993746634 924370952 983563469 226211758 369055452 66188453 556120165 487743974 842502341 73388263 737892673 120422164 814706333 546590719 759531892 585723652 784807375 433144288 984194288 166959315 969982792 740941875 960467426 410439314 802976078 57724912 724000359 114773541 545586466 955068812 959118203 313887396 799561095 25554148 489655937 65130266 394161339 347791639 568730165 882046179 982601993 971873485 974209298 9464516 428995880 867503556 933124000 525891942 719995107 857843643 977222350 561299798 581963377 41735020 541340164 664266179 817686318 196904245 814420043 802384453 808107373 892346404 957507862 298281084 809599606 640960406 818312870 221438237 585947888 564991253 924256580 650343415 766430233 552086848 939248766 587698133 846068474 36417406 795688178 682085249 757951917 861480634 867492152 596504988 841689995 903547527 992490962 845105493 877972032 519150447 654394581 176134516 708186211 545283300 957237668 572843394 615076185 941097220 989123368 880843387 948839011 883387079 917604814 325115195 585340775 16679877 619701304 217323147 769118050 522388447 563212733 348248496 825443492 961023037 971246659 789886023 926803966 39396435 87707458 523488164 550485716 220724205 451269856 781702722 877586594 170394522 885044759 68206215 203136274 598692139 741275846 943898818 992922259 453688929 894271516 198183647 352303497 642347579 728087065 20513580 182699155 316439912 856502084 75537937 594888976 755637856 904367998 208889869 643013988 165799491 693673429 867781658 957829722 945988098 973620780 618111753 662886418 610994048 872136947 911625408 982042706 861502356 882593252 748167319 991489675 958106858 958970262 223509930 937864122 503533147 843135114 358490161 771744140 106430998 222722781 848457481 956767418 106751786 181328167 531666784 701483792 463570147 528919946 300558553 415485589 515125572 856723467 606558708 795737185 534076628 837793863 400186007 463770280 334921249 885841030 872286070 904721383 529199958 637396696 978737888 985677701 281782326 576667158 816292411 844964337 367795819 734956996 350122295 845453417 620440757 723590604 393299595 560444116 863071868 971795329 668418681 869652527 158995914 498719644 900311097 927708878 25975838 789697769 935995508 994006088 665003025 783089285 644428421 849421412 317771113 350077941 705691509 767867712 123003058 493009904 688145285 842512579 381633840 862811014 648587968 911614555 347273549 935103231 809324051 989955387 57430381 910741077 263568202 685030882 321197577 809743404 81350695 750625618 555313772 684630655 835460390 954412286 479708573 632948848 569983404 721970883 626585334 851588308 335284700 518944562 804534736 974365226 129467791 827737881 658359569 779207178 798917143 998291638 918787734 919216940 342362806 833304505 383193860 823004304 564749576 817599507 636818158 978568853 190430529 250591897 423583381 946580807 782975956 878925656 670270675 723395012 61920165 421467139 955484544 991503825 233932968 985559250 201068385 653803694 93441797 95758721 473609171 992451620 503197249 642853469 328270263 813891891 451678932 501399453 433042129 644791577 893474011 931042554 801430063 883388391 732966196 764367961 316741116 903437500 768930141 851319481 361812564 364792897 925656802 962260400 815196568 845604638 113842805 746018664 572820046 753532167 946045742 982903082 349962458 551879357 361539685 780554177 926940128 962545172 733765979 817232219 908781936 913701201 532666298 748340334 972593723 974881141 524847444 971265494 815148763 948731887 632272358 791259274 931196868 939273770 787162917 921895608 190810201 983223829 87206949 754753375 779756238 922854109 429472424 614255526 879815994 963391312 202225613 886976661 417300128 495807814 240249917 860390881 544024545 756091028 863980908 998766639 539898042 563792603 703822735 921872713 43420139 695991347 558337834 644749006 577282019 777180375 190430689 491501249 285206107 299158384 871953031 882449312 516080963 948522864 449755082 480487814 352152538 786334089 714763276 934100766 95161864 885674762 111188197 260095193 748675363 952768818 256846748 714216705 90505646 571667516 617251060 836584436 947064692 967336428 664678132 726508680 242321606 342689801 427855675 963836159 620786500 768331935 879674276 966442231 234635593 705618923 805879709 810372760 59357434 60607069 393479925 888347155 125660121 613453935 495446939 596745926 551412763 952772624 346890910 588996486 95409547 550355913 755010098 763293469 790697373 803719078 224982666 639397305 835449163 869131900 358685567 858712529 325800629 406898285 36390910 215418808 402354074 903575586 754582099 813909194 210762671 273930952 78363532 319617391 902607719 916586274 482888504 948607239 766254750 866110961 201246495 842849140 529573684 897109742 198480741 870041423 281295914 704658809 713851974 965360450 78505163 406432584 607180665 887403693 890678219 920422503 665956502 836194160 553601260 679486274 380239969 817821562 69919861 375342111 449513805 472074294 461752806 600543893 286958253 814996751 462273834 518690218 491674703 840196171 285758763 410705158 393329847 469128142 805991270 931790004 519288773 784330780 179934868 405453068 86270387 692204509 717566093 788415650 291402509 896326523 610308950 627866456 462353440 813836005 772906701 900687461 559582117 885835571 348035686 878489104 317303033 766809795 114028590 180254514 550764622 789172967 591626338 721747668 967707152 996870794 870874363 979009221 832518009 934614349 932281511 964763155 925533568 998164270 819427795 907605044 783097767 858831984 923475652 995886610 262574383 815619409 432875155 667449119 411014924 436204275 26652223 292474774 407308653 589484198 927837802 983667322 286491873 773230796 309879565 335826901 644552516 682667157 620161292 710036734 853748372 881198348 541900396 573994550 45055847 702534125 806818947 851905286 835287384 985372023 236113651 724918149 637641374 870129815 925653854 962372503 1165263 121968027 971473139 976456566 523169442 609756768 667482269 937023813 630516786 814592906 841887616 858152299 613407116 806095835 851176205 913980510 662534193 933380678 639212330 659254264 147781927 860083989 115129733 207575016 503185285 842769355 945154243 949660834 371220434 427500057 922938277 974569307 263629801 423939722 629346340 834233937 857063320 878231699 369928128 871086732 537702845 661774608 864390584 960001620 339854212 773338255 923286981 942697435 938958212 976646184 500301862 848598836 175724316 646846047 80016546 446035979 245411187 622837161 960729809 979270175 56163948 246207285 284212447 332495535 804619706 841493989 547002378 723031544 60732672 814051056 674481399 800410491 212771527 870772452 910799568 956742819 133119559 188078651 59205700 486944254 797941589 995123211 97017237 397368567 426498706 828610920 726117763 912374181 132848573 950525970 70193999 452933564 922011876 974468686 942224619 995288432 344337286 768324162 999509986 999652755 688787595 876191707 877246094 975265702 514378259 928063789 702109137 975597071 857277096 861904570 476349553 879601601 411542622 468402125 996422622 998031949 425560872 469236990 833663796 855688798 415852019 549660118 175114220 801266038 343137955 402970159 355198554 890403552 982563157 989594330 817118817 827775024 773498906 924192694 581606084 950675050 366328258 967615115 456024031 469484859 422174341 718527967 543398323 734367035 209358186 213337912 505650884 790113807 672058883 992547795 881359585 998288083 128178406 380869779 126511087 209952125 468343250 474101238 632947339 854913745 409333592 858738782 316198281 522740159 436819451 680333940 618646258 782178288 692590433 696402228 712262075 845861827 772349393 989689478 683401620 988221647 595178432 928806803 906607814 906778110 770011965 810788459 612581664 956796585 689166906 862484469 901538365 918843783 205846728 733255662 855337382 975837375 408484610 454542821 810688380 941887023 946768300 953140780 143062910 379307614 734071759 883164036 7722478 203172969 943678843 956967059 681041751 771878671 121795831 758997413 229477744 355106339 577989102 780368231 912260711 920888531 734429229 992984581 448524490 630263918 894645870 896073424 329363245 837508461 542748951 673241463 566427604 995635660 599636318 834224224 414974377 651284886 221463212 539342174 881345934 973896057 348941692 785791430 219049481 508008156 937299754 999510238 192260218 230073011 85118980 771592765 34123541 614247791 424272847 583796597 856005108 885652023 697003025 764333718 848173453 930170106 257639940 846604442 209212381 397708986 835134338 964378620 839761582 916342461 300633348 814832470 287656233 498029051 43493016 776163068 274500616 565488375 743894900 781494297 318256433 681030156 377301986 709179638 534124343 642152762 318891416 870724054 77249907 752908717 257081215 917336258 170276918 702109222 518383485 629149837 899087979 965618761 653074054 670642069 361889199 911574024 27039621 281777182 654545652 852198002 964297220 986400168 143830148 282123090 439634126 987975241 50074143 231936652 773232419 903689680 135299052 180756682 198778174 686019011 865910911 918496580 712659284 957661157 478804715 526769403 242515499 736266222 457688954 795740961 875336324 980208094 744083767 757778636 53086731 70025978 275618987 998738182 473728858 865000288 6574951 838430645 145594098 285375535 309761980 902021847 607292797 883349128 671538683 738435729 965095155 970216583 99060691 314104312 935125046 990572656 778557495 832956805 933993159 970797711 431131211 987029987 96747907 664971963 296232967 394138811 960571533 963160944 762013092 921541937 763649623 966167775 130473621 972024087 160650409 373332965 993412944 998446228 884929324 998471892 385567747 499881476 681964915 952088377 768341659 870974368 6450605 444496067 768335955 976140882 386338238 735256218 724108492 752390837 65692034 523378069 197528106 455102998 530040833 866136280 921131143 944304363 210874244 747741895 618820895 636267900 32109198 559428241 625258589 856401611 514500564 667942591 376789235 486822395 330275167 709769161 562049847 709373537 243910395 844640024 192599312 668993244 63241379 239731662 395954595 836161401 127903637 775831746 943925668 988427844 738288261 776928966 252157236 792098713 551992363 695872213 927366670 933386849 630988014 704663175 952007685 977281652 754100111 816714762 913402054 984438390 669855369 919154642 97992489 250060688 370501263 605462145 771964385 893728742 178365254 361810136 268601068 964870445 931730554 940516095 343544794 610945347 54096368 785867132 627635018 765048870 49715670 517389323 360744875 706715287 992523205 997824237 752382893 935634638 141688901 652602789 157165051 319119309 462261470 705524053 695843023 922451900 271736058 775607550 402934684 956790843 313213937 718254766 95290335 660988366 343651318 471157440 219264601 610312093 823954027 897054541 961334972 972520940 76262199 103066136 739900500 858653808 206292530 761421437 410957741 462446323 738657749 879711172 923633410 925009921 988098055 996409312 670590935 971594712 67105394 761888957 485131431 500216931 249891936 617193171 45162400 54253108 190239605 911822619 120078499 351586528 699578786 743300996 370721989 989693885 896353100 925780628 243863019 378645635 179546853 355922157 645281287 714344147 366092061 663615876 670458954 894579895 526198364 802579626 737959200 861701145 365016913 411724542 522426912 763006664 182084950 314592462 198708089 273554682 587437234 773076564 513824709 892169444 995731534 999273655 886794789 954234608 517602332 910556022 233390745 603062847 888126634 973108148 114058346 527432607 272004321 285731896 67695757 361713110 759736776 904194206 707000301 905549833 748439471 992275807 675104650 924034001 538600760 728473036 408117308 510480787 5136781 865798150 406323689 862393996 482684905 597612208 246627817 586846860 371916496 953054613 765259322 987042708 490213455 499740036 89522498 709982815 603342300 808038711 258876848 781452795 640895399 826188136 279298133 450361139 420172007 780904595 357182958 802719006 502657165 549780568 601772160 673938330 659808658 670996926 754088280 913223578 637069917 659573621 622213503 970277435 788210597 940102266 728761263 922842335 963231170 996758127 984620238 989240800 431812882 465482616 541837137 751272698 277670943 734040986 901054387 977864912 955748715 982077362 967637888 986934840 514640302 875019918 843191632 938456885 644348129 939339757 717720760 768553476 170194478 712405570 795858693 838407426 956814098 964839845 482801524 912847293 340418045 826695313 863055377 871345022 662970858 887284120 265361456 635784455 222078199 870454805 223798373 518524232 196140747 883738015 146319528 495634346 774104848 967738853 22918750 34073415 893741181 987942996 396824684 945976613 564692799 596461555 957792822 996233006 104085374 567554721 201231971 894157766 396892005 518479590 487102699 887871963 460021796 641538572 84296868 223239944 24025862 508937696 833995034 900576298 453173483 733820858 275585435 845543334 250781770 439085598 640782871 712786014 4291798 165848100 792752282 831545486 173543817 744841452 754571834 861300512 341871742 880504732 763395400 855915022 23125421 567062603 931963752 988089101 375712196 674989050 371549860 464068405 61575893 851081425 741802671 821403614 122888934 699270539 619203058 850788253 212947087 947231375 474310414 848122167 32908402 703955613 222400586 481474087 126670780 290653877 927465756 937054523 908844888 911516108 672227328 781564711 536578175 819459860 718003226 808893486 387827298 430085902 736765114 891805834 315035452 878933786 149977689 770485580 742107371 821816029 703329277 802913324 286016361 452599851 381193947 704245125 693914537 947586922 983725152 996886165 442814143 903962098 766992394 792914482 512121288 833450876 600037500 798557473 133342955 714799327 257393277 289584074 610994106 682296364 662273909 790773569 514694334 913347165 157499686 253241314 880640502 892851809 621254385 767940291 302158033 738354602 521519465 620054669 264531642 764299371 318884240 536042422 458914004 809427862 357990634 488460925 295408115 841066557 188910055 242606625 984455638 991076611 393215512 422664543 975587286 995769470 222644916 357265085 821950622 981999559 945976613 995620648 374738216 931346041 189622097 865884573 425928258 777626195 49636495 194656741 529499798 710399295 433075771 520691699 726487855 845494681 758667169 979253090 966717911 992996610 7400842 569053754 144899581 566493600 694185616 831696654 24375951 748091955 494193365 643107957 389525068 854035969 93175205 449982847 481676130 567135244 337520481 913617800 426825603 468435566 441320377 951519334 27895910 327353335 768127893 828095139 265788445 304654424 5423711 875654472 318515782 905926792 562452862 891580875 893980079 930888996 544730649 649486125 535173312 983773589 754320322 773326301 865913090 964819218 316766504 349239201 563823099 826897508 281797995 540991813 217891464 672822274 279930488 958611454 579372244 953558975 9633682 355129557 827761454 917833986 686732053 740821847 136971785 578540231 661999048 685372985 802938506 996708216 501576877 574857078 632717153 652150225 280969601 332599627 136593281 174409678 182178689 496406913 586815854 612997017 899176993 984368077 244236578 871707518 43043014 347308148 96404744 226853569 775628759 824850785 991502092 997135490 220955153 660609332 278935935 460759951 827162089 965380060 55568882 649778042 734200718 889493665 540470661 713563024 614837014 987549314 14587731 860851463 412951242 634440457 350706450 355192351 995023220 997976141 966694404 993623294 959815109 986678253 806782397 938366644 781089009 863072023 884140979 955384266 4622557 364487167 726949537 956077994 127698884 282575421 735398984 873096762 800236335 806331411 201457416 785835125 149493827 836865033 525755430 892097776 235965507 343547366 283847696 331479317 968879829 982637476 854291254 864356209 158928361 693209826 443943402 584002696 930044797 965188051 633031231 846146805 823834685 928766485 77878115 450411028 948426716 962186444 857527043 966921641 224015298 952474703 739856658 747436428 259124486 968985997 730895546 966786946 714791465 811242920 568470689 752628343 296704705 729170245 783622998 857042836 337362907 723333362 163356863 249198393 495274423 560275577 319008743 857075756 802011781 883050023 47987260 618843318 689958659 799151750 388617019 757525630 738284856 790947741 928963424 936884526 539825822 818645003 33523968 693736045 104168286 260970575 991076767 991983829 229833543 792799516 480795883 551012339 880071517 892834504 668146937 669313753 472494059 800720318 733513143 895907187 405174494 562208823 696567563 962918443 522991313 796855810 559509546 694584452 522522219 833630159 822900021 835253549 116487704 380735570 462179769 729355555 884234637 922649484 652863310 740865592 991089682 998286899 187766527 733596172 125301091 466821821 438316250 567699500 605182712 882253642 664722503 823861813 276800333 993685080 849831057 863976663 764512582 998811927 104317912 787519933 584422535 720249182 541281777 941425696 851491949 943968570 313266022 888410941 255037077 537063701 129371916 289343904 705133477 907462750 73750741 420499299 93997363 438086770 130739655 905441887 609876556 678594451 665098217 905232677 730162248 944413921 666663442 749961816 390868904 728765113 118654940 429502644 867842005 958825118 108551724 921044146 794685286 935742095 661086700 956009108 889422466 969067570 258119970 943653646 256592425 553323175 166103305 604241269 310388845 688533661 947999127 997306767 804993060 843869954 960568633 996705214 2605735 722892031 888266994 926515872 980102781 980547028 292686558 951868241 19772606 245348966 220893947 937653348 288906694 993878826 982866836 995415036 411309243 801217603 988167753 992794060 74592759 920991783 853612465 942066244 591016763 718697630 484467077 742558669 981245609 990981184 843992998 965660492 150417560 599621608 696079873 950321316 812730027 889557425 907617813 975003857 505884989 727755634 727401328 743664677 123382610 735471883 944739081 991374123 509423718 617089120 96338555 712372203 747738675 981390829 542924955 601830531 837734492 870153071 9727378 136051307 318088426 826552518 218752877 418400988 426900015 985966031 226458640 286957318 33239254 874441049 156112769 771976963 174377087 688097601 602037871 769187131 989081532 990752447 648308090 775788319 376979818 813669853 98416951 485886674 929008250 933026064 912832432 963336192 770788994 882486650 598999409 906630004 893935174 970592802 573973280 798375868 510531917 962083216 154980472 422391799 84046628 150949199 30808125 649083659 137053215 197039164 938823629 946175909 312238208 763023846 455398227 816104295 820147243 970761589 266993144 613470141 671755860 675317571 483121095 837761854 31233772 577104022 594563138 812441487 904143193 965803612 597555412 671399421 69004965 159991543 598163780 891370223 937851682 946679770 794088066 872370668 641247164 749897456 211500746 755518843 264697422 380183179 794755675 821758718 705379466 858363353 260630407 755948807 462380703 792636065 682329278 893869745 299060283 982854829 706352077 726391153 908676755 917047494 248431508 496075985 294668351 952780670 846074477 955888773 723059936 881964639 27865835 591038638 386581867 826604156 480162194 984722062 464360313 981148765 476006047 946846056 167905343 870209779 9406878 237344113 339832167 617130387 152556840 950680242 908072714 959746273 427061944 721902477 869987038 906723415 486484868 538404421 885148671 891457317 167751858 903237322 786319349 833129107 538566511 738290710 376489954 546065564 682915493 724787327 952689387 992537756 64303514 834342939 494229230 870850030 840386608 875665268 864191443 946888542 317232861 887823434 307158055 649797808 952084742 990725706 274294501 642668275 365208844 754760418 320515298 618381105 977372984 988640444 103118578 452707033 193993203 538474918 559797862 904401290 816367684 899392069 225652334 601622132 569672858 612162055 654618082 957393870 724464932 839794281 323307265 455240012 612268006 756013743 934066982 982982704 551731422 804943328 538855830 880584716 426710501 923271940 343960438 470678647 194576601 305726123 987943935 998496997 322107271 791379380 455790878 561681098 690902579 867914938 753451412 763733288 290557416 492517097 950694668 990612615 628047575 644618461 983709163 994029370 907748772 952435806 904470040 992052936 709127024 773122338 553406339 809869801 418565280 466884426 240957363 351138803 262514393 330479664 759285612 992951041 524296369 920717384 960985167 986725845 762001688 902882042 433374140 515837867 91783849 285054415 579817969 831354782 842128271 914127935 324345651 459980098 257200259 833678665 608675287 700960328 177415778 495942259 93696662 998049336 759496778 970604068 565585363 593604709 570031082 828487723 199659743 226470073 724766902 770066047 996327432 998895861 977892849 985712315 256567209 916987690 475099245 509429917 795591535 887956508 982358825 988866451 314147084 457787579 981373602 986644286 288900324 992766876 963460346 986727530 638313354 713417762 663457259 726787399 130734877 400576268 25608226 809940919 570506397 592272049 170102708 393353030 611089544 682321218 448904830 869622162 653322042 709369172 57111189 284547397 762787195 975942585 246806138 273025528 865733497 915990616 58524684 934615739 771825768 932749329 190555940 540074014 413222164 620688663 952858707 967344388 337990172 395548953 842917901 858268258 540010455 982558895 189808202 792979357 468106139 664148222 415328142 741299625 955480511 967658215 350274116 652276785 336821021 887246305 941391852 996292934 212113844 504560638 953894131 976338022 92462021 222181693 117188730 134362392 48680938 76750920 82077898 340592036 767151572 962196327 576038531 842486734 370933161 610726117 759132076 817003719 54925952 995531651 146490617 808308177 733691647 908239795 557738449 709606699 33468148 994170186 92559 418834143 917985101 998243975 745892684 949585708 352187704 506080605 966285748 981840368 918921633 926901791 597000141 896823306 117786487 345099300 112922718 148999691 742729884 923907477 122720040 461384584 621141029 997986607 210102247 618604451 437690724 473234683 231316235 385314321 714329935 894294900 131467819 618970752 839822613 978383228 731341035 963023989 136270490 402180202 889735360 901968543 100608041 442788663 560282330 958750957 369475219 566222535 619604484 840097181 201122719 440611919 897725137 906607640 771908277 957596865 183737573 841640815 181571335 234914547 342475043 746777758 788682881 837082541 249023596 446257979 657310650 821784242 232534847 844696416 275556571 839534938 670753901 701352357 289288581 567750230 718884758 823097265 426275785 530442365 106458814 736866728 165465568 390372729 689541166 770857150 677530456 867579419 345201996 540620479 137752197 141230330 426955263 830550629 466832513 535998865 703772178 984001772 793284872 945143315 198953027 487402669 317870046 428950022 5428958 810795841 681288840 772339530 654804113 884065468 321349414 386379025 193809122 251113165 207923806 876606356 823661173 831980344 41163465 592287437 307265131 437061426 479239481 723088827 367932155 431318107 46403046 960430735 826184109 938433070 393891306 574845277 342600702 484415342 968923588 987287431 540218669 962030291 688232205 759152742 41392623 517930403 671381113 735083170 971155655 977403891 496145076 631455884 534260390 673970421 519121355 909395678 197966322 248793236 116970656 724154233 186611407 857420197 888857222 905666973 5353858 607829610 684113978 690370158 890592037 914879552 134861117 410661128 271474429 928372609 633817070 759941891 996587279 997931118 416301236 792191248 677446273 787112566 193669321 311582406 220485119 397241356 942933348 974764262 570266291 718917686 756399120 879640234 126471507 145111988 249527997 418284538 289427416 968765654 78537284 724626827 89621964 293488345 304029711 884237523 40200922 928500040 777275586 822277578 367409456 963789957 524908822 778791588 235982059 692635633 435803189 606180369 316354783 643389454 5879252 836186403 650359344 772906307 343470264 885191602 666233246 740532208 444142331 485879349 899345137 972545458 44446427 587838387 110250371 178142309 624792811 645649709 249166349 932628300 705136434 988095980 807614293 982662159 214272361 681606931 353136022 637740952 517342572 735858020 164023824 222063043 153452193 324177440 30212997 38223029 637093001 909614045 827021906 909370648 359327729 705460273 312076777 518178376 762465987 929246947 906175576 977576873 217581537 553080626 102840171 656742674 571759111 586051369 946804336 986789451 776115010 870511808 840230552 873426078 602058927 658519138 423599956 971439225 918113068 944489871 508693608 935177980 206880429 587122437 182179319 788711348 369614849 680596875 647799106 823399260 647331545 928358138 134863550 678048108 836334492 958706839 322566357 532749381 648981233 871335014 934832327 957745132 960921730 992048348 930009239 988040888 517051789 564251028 852771778 947599693 87436421 790190534 307014420 930259251 196344830 549326753 251238866 578988526 388351157 715586156 849785928 869717971 619805879 634191742 931536787 971736839 38511673 494421347 294507226 516896161 513463700 882216491 981121317 990463275 171973685 844764408 748913648 821208937 400661008 413245580 566891219 651313404 983048606 985404999 88347536 431887173 2732161 864482155 498101530 519907236 994349006 994709610 308014030 417063706 884625285 937557474 710539834 877875345 739134297 800312039 709570250 969545395 422445432 508111573 222160202 971251093 387445326 691018980 530432809 642199750 585172900 927295827 298291507 811544228 527260476 628064756 529300390 600437415 108133033 855227421 58748594 933391501 682578073 905123685 371968643 471994706 611389371 787334772 178289769 623804840 531127289 901980009 246396234 364758008 603759292 804959040 618113303 807969079 815683570 916783708 515369685 567206735 123411634 551545580 542204690 572830208 701132124 760611501 58794362 727139243 393390736 597591945 99958464 921868324 522391452 729362911 860639503 942092753 318832798 412978323 689672489 791455816 697304040 798050719 175004498 747289549 265706834 595965602 67877133 450281850 745309411 947483858 619548361 822076313 194624531 331102126 893206646 954721057 722710656 772562579 196659961 465005518 55776656 778229775 4014361 251573985 227059508 397475571 57971205 592393029 612863199 863893890 645605130 654416669 836951076 888051503 496194901 935302939 416175370 561657161 458373414 885854599 394036769 727544758 982924144 997554783 174430690 313651056 698342698 718360051 845072665 945078591 813591444 865719999 101197057 963789135 408580086 854529435 90999383 481282271 221291484 317320998 685276081 775723892 78964389 440459742 521034820 709672453 635797274 901379022 91157537 190543769 377944593 708369935 594955262 979961264 263052321 439323315 854810298 977526110 975747059 977809425 735127808 978918492 118096692 298532527 146633168 332392729 625847010 861633832 677154098 737269383 15229216 638023228 43506072 333104192 186772191 195112466 362010962 660388019 388553196 491518574 117787371 921999507 150049516 188079983 336446976 424904184 598354337 877889776 957159266 971083237 553464228 628346938 988934547 996519253 17183397 787984882 746935997 984387490 552594061 686697949 344167366 992731622 817458107 962976323 721007203 992346001 935013681 982634369 887206686 888085517 532639869 992872143 198932527 615058279 161937878 636423487 383589 979683878 576260523 646212576 215957111 400750085 937416559 940918414 828326110 831165525 260711280 842605771 681439672 745398728 738239989 894461013 681284187 957933815 880107117 890864874 195085050 662355253 829025698 830724360 916353555 920109373 949513338 972643248 364024517 996237260 12399774 305067695 33362312 253198575 382707158 920958076 647979053 971078663 614295849 646362934 339859516 855764223 935766022 982137854 664219997 688812351 124222368 750455515 954634535 988129242 192759686 385031789 25502864 526658930 387512964 703474084 218957625 619265349 745679195 896949362 889402083 926020001 68987171 398700747 347538461 856225202 237939205 569446083 826857823 831841013 771657148 797123145 112120122 390670364 309952451 777274296 350032999 692749231 664287448 951778225 985887315 998379800 379348118 768436552 582621925 906998548 20713585 351444048 462294697 809262941 482814469 774890909 756515439 771356193 976999001 991834858 240866249 504761026 110797100 695362001 107923498 112677481 396797122 525535406 602929967 635665002 302644647 607881174 489509199 696284609 70741879 500738666 75532009 535634252 596467680 783211754 69782451 765914846 287243327 558570495 590521423 778790270 699260088 909735983 202371619 615361302 776450703 961344189 748679051 925364932 512515772 945731254 568622712 841354951 742923215 884716820 452325193 960929589 250369168 954757611 533100420 741860697 720514468 964854489 605951943 885490290 528823742 783699617 131508602 467269362 569694144 962682460 961112388 987328949 722412951 955533102 498896395 628515089 347016126 902812239 306251096 346149107 795146013 961759693 889724225 985770952 579289213 667378660 530591430 724764685 995357104 998125530 590193564 745771338 462575088 502881826 303694833 564932633 18225170 980341581 774541571 805426573 966221241 973154587 743004007 868182165 703923644 944738884 910674672 953846830 517841388 823730455 53876643 184416273 360306242 478479818 175181566 591836886 358082769 497529170 491203418 864978383 156352620 710574589 135687359 321987835 753934166 921100824 669117429 796493251 404571561 470437525 650715046 965423519 297770758 952417689 678676345 917604220 523331667 922560364 671043596 885192470 261712378 523946717 117012857 806016218 663397254 962890505 897876133 984111902 504251615 713450922 121550029 842441762 479656751 860526666 983703656 983878985 543385086 963130651 390456341 445309524 952132038 968620302 41843137 535449445 710693111 932849748 231975770 242440289 302385496 358947660 542644298 675630163 590352592 618769288 175883939 485113857 697311226 803941553 638257107 664685473 643759466 879652645 203486982 505861984 648625848 660196116 38208560 796279156 85998596 343760406 822602941 947894418 616874570 979628083 645824100 744154152 648479452 703600533 941775119 995202021 420658504 776167782 706319806 989065133 566903415 943942119 360581259 613630974 761613493 941041504 881824317 976602456 337764330 997918383 748699608 940822073 326285634 969153543 283546775 336508361 745213653 904415940 293084077 542341444 217494301 590046270 278066650 689606666 951568057 995554001 749308317 827048488 960730264 968493882 428373030 786651067 883221756 959311392 224571757 610124719 105930544 419792860 539748974 672273393 515857836 518546107 922766360 979887875 374323666 761962083 547971297 594153799 768304987 918342227 357608485 551792838 345093789 977576009 632139053 988762423 167134622 728424701 423758410 740025408 470506753 623748278 391638393 528979808 410958843 762333363 8862084 303137626 140932344 262540671 403189030 743069135 246931953 617620452 978932581 980592995 232979637 369145807 995230610 996682913 606318268 717098891 969553907 971894173 159013413 759450877 605146760 979548464 129449188 847303591 683316961 951418975 92420193 905411864 737422199 788329239 60042128 224001924 7831921 961461357 356732038 640585509 535152343 866372197 699266205 770077647 222915555 809059243 913858418 981933461 267046466 769597103 1771780 51212372 636952514 782083978 766682 646232087 950332303 951428722 103456898 494665114 379161122 852376763 806480796 907388393 547057560 599383857 216214543 452630315 359041449 797249680 128155039 197264597 561967047 628127740 602197001 623789046 390243519 486444564 392072003 752241806 118085164 461767818 917769539 922183174 806042677 809383665 560018910 744300610 376744147 488261390 50933897 833583875 415587624 824329201 706103876 862748591 120737295 653903295 159754852 643469204 934645677 979048279 608828707 839953112 923202346 964410949 614092616 981454335 238956761 788784104 593720554 912694386 802590227 887295811 406753094 908918829 566878346 604706677 477967136 691446595 36413225 721750326 532817920 722909391 839726108 990980620 204415750 426222689 627254498 784791265 948972159 971882948 433977035 969291846 289013916 467791104 585439817 899388154 58712191 380187370 605584138 879016291 124696171 678571498 577564341 965322623 43613601 993688335 700429371 727030576 801787992 862626039 325629304 451972102 171074723 268877039 475305699 493681257 821825982 911764307 694958142 880352587 586818313 637831918 738111155 933481840 871754492 878909720 868138728 897422457 873550659 925590198 950697925 961052632 262277104 362295567 7034621 171891827 363891633 827994700 858554816 863377530 209949864 556450104 646526074 767451315 811018420 897141289 225871869 662569346 573927526 647376658 630691174 841765920 401115074 448569184 523635334 626155407 290364775 681390499 334012172 338298120 681140876 989551552 541979973 650543935 519610899 816762164 617849662 939268726 810882390 919011809 629072393 779145289 787387437 842449959 849172530 960111636 892487968 977982454 861407031 868373862 366935026 385693901 109570148 397961141 39448884 74685846 167399131 889374433 89765272 290491633 461336187 586929766 867467503 940784234 822952612 844036607 560173123 611005341 421089971 773255519 804122590 932775030 850045934 864654085 565955118 810542959 288254355 623337458 801191527 816251070 906116414 988049752 351222426 616869871 558991001 804393673 73532084 73533414 105417233 314751677 268658229 312326375 513470351 837509000 782330664 864224686 514712043 723097074 767396359 943291142 779893776 913903726 77021502 986434319 168320720 613557318 468206518 480709434 419785191 970384256 368621519 722303358 431773379 987079163 414636409 693940076 878420303 937949001 583566885 691002909 506759259 646537321 233417121 936371009 210044215 563207656 286421121 409471447 400289923 854953003 669121809 971610057 868386362 896235175 959122246 973527657 980411317 982466715 7514100 446327046 765003963 959842875 462246081 865039995 980692249 981043700 944266874 975605869 625198655 640403654 868001016 891524779 343550962 668944145 271289440 354979864 489421097 968054499 615490527 786472245 602587286 832768472 372545420 749912445 620759131 736176125 844151447 900455944 948663570 987197083 642376913 745243552 972399688 985616846 720923523 819372772 455114237 672780290 544082775 554391650 139513129 666256684 160675930 875429704 52303342 385450072 674749314 722829953 914892053 998726756 800357805 900121293 890079088 971982868 847185942 952825010 757198319 816673677 98997108 336397789 38265226 308258644 133207688 240000669 752767336 902762552 290800914 312651954 773119568 831754058 736557717 874712550 627036253 841382099 617320612 626030191 785022053 975438316 660442946 835301349 805267585 941181236 200647909 976923862 747396972 958860766 608272625 708734947 461359660 895010362 832874841 892833819 999660199 999688253 21467475 422491533 906697035 938104310 73146338 553123065 999265783 999317541 961511549 993137495 722544037 785864236 160821265 573244272 249570974 444227244 501159365 541731417 238697237 684953443 456002920 566728027 149944625 489889810 309062995 859648545 694624163 830309568 840776276 967441169 233068585 605824864 907823079 967479873 196729963 623857523 794504944 855392469 841419836 968672112 215410942 575436101 320988038 503818531 196526093 290355355 252833769 859008552 989400593 997435214 30778197 356466268 729255543 881033342 261177278 342949100 222933044 505771459 656602968 707677266 593269867 626210486 82865591 772399340 53552359 689269037 302519900 800552687 533773438 855519203 667934438 918858455 810304378 916232486 649078710 891960970 892163372 908637499 994671644 994762998 53212937 593359177 191110834 617183642 1996041 204865616 506131123 649680710 608687871 787843657 78089247 651795839 626788286 764545944 646514667 695804350 66150437 515432459 561805948 570651777 82018416 947896185 443656465 714668772 604543281 866353966 406470415 886487250 94205162 416758635 637679857 847310182 842847638 945651316 453333215 766421335 728374123 863034588 626584361 670293325 831238078 980163454 665470526 731610850 329044993 790342723 417513141 759337498 170181969 925990212 788492309 963850833 993521232 995754172 904877796 963092369 912293167 919329722 927880130 986426111 553912820 972615063 78512668 997551146 958611836 984560639 75615967 238889175 531042888 827531986 777108056 790551090 994500575 998048625 651803974 955262785 897990012 971498563 401471757 788300449 152069138 548802527 378756502 542376797 622240526 922210399 654719054 777033248 693178726 769700949 965143923 972752812 662546883 711927112 840700941 930413790 441864810 913946544 325608400 360202786 112983633 664138934 597105460 635682401 279330360 515981505 15429471 341173265 507676889 791508359 489800020 864065804 95393904 340909769 826327646 935781183 649723554 959156799 310189563 715751751 961397876 991735967 117576285 750269730 431840340 732220684 467430273 856690490 841033185 995201943 117534278 431721772 161237195 742911943 3293723 543531607 638972341 849447198 478441046 531745307 209636933 999774211 37190683 345639509 552955293 624164220 320320456 975537969 288301321 678911716 730008279 896070624 863024941 933016660 545907675 908615083 957993096 977193937 995142708 996508256 770392750 995002109 687550343 821367982 645239320 874847174 311031067 327249039 459757468 569108474 408672007 677582258 747086003 825639731 915501284 960696103 994227919 997905195 688393467 864368113 260915912 460546494 347424864 470519276 435158286 630977610 92813608 391321022 733717474 896862323 643643928 859598892 92807297 409007986 665890483 842621520 422041896 993865319 854644544 924588508 743882274 916900847 828518929 966903471 648417076 824621982 704472647 783498902 15188606 834893229 864923951 919395497 794932823 842511588 285740362 978106123 36935103 70314972 700538404 808466389 721956182 770672885 770862651 931172848 108844866 956567675 693306449 716964074 891146121 984725563 971002033 996088066 78012403 105777092 266010085 921583381 628751471 901929422 768887465 981377707 201257490 283290556 470549048 928595412 447286756 535042760 809869475 875416969 660110706 742367031 24563715 835714358 762456498 797093345 505768804 731401923 172797785 612171589 989234769 997680891 397132805 459444277 756760153 969630538 467284018 856502562 958239769 967338620 18915568 524486619 998185489 999538171 637951766 760592257 36375199 44433995 19525320 60581830 9680598 867613670 751384859 988044491 767858394 931222703 110770297 354486265 938722111 964528861 850196086 857356473 913730133 967468059 639258675 881746723 136805137 763684185 195745971 208336709 16615900 189907732 26897080 217821967 619008350 820753395 291158227 433072714 840775819 844388867 995737864 996096076 107407432 593427626 322853908 954730082 979458309 981387705 31323638 168503961 854260899 943620084 720023655 809369903 859333233 899315840 377688802 631444361 800225161 815609389 582179141 985559914 247399296 790616577 663088422 912423597 433065394 595905718 163074249 734604084 697803707 879271483 860919743 942753742 500601943 853747141 499027734 960604028 1817205 408139937 906729933 999098124 279132098 738462428 234621963 440707389 214406229 710291244 210744632 717867325 456212399 907870836 663344117 776041616 585077569 989553624 190331122 635517562 671872204 910948765 282236630 488249447 231760779 845689256 99610261 988275561 955632400 969930908 417369121 698471935 663843212 666779084 23732549 572922307 447416331 976539341 764532173 968303105 585911395 720737339 882966867 891234894 895046104 995123309 153096154 234580561 261613626 561740865 947358500 958434155 933869633 982070486 624467149 860728331 59861822 270406771 330694391 567680542 493325615 596231992 932374004 954906838 298288855 572156601 297847538 980054135 115170650 173941850 398740715 801858837 450189768 533947732 97773382 410516196 595932721 970099336 193232108 900615036 247153629 249258118 940513516 964022421 449692898 716601683 144294836 353335967 221441945 675285280 318553552 625909260 292672409 471059598 863753222 945193549 696167304 871687469 460996738 788801814 512679418 634994948 330524914 599498313 625521482 760546735 411764800 675500430 920965163 988037191 210318372 727246890 828806323 888689072 866655312 904856453 8277438 405884683 831515875 942434530 349461024 899201727 384621148 817477586 123252934 845401425 456387036 830712174 64406828 83124621 367274428 548200256 175741689 333872355 297962753 474783547 349468371 421921033 521243580 593173419 142270029 864863730 569066870 656519508 332382060 834297796 749203928 875156620 100666624 146885813 650412227 930579165 243787434 467866121 142261637 568833293 732572006 906343570 794305929 883815194 129279348 856558713 669608725 918463580 789620665 991938131 47054261 379089181 642694049 823963564 556367620 695716301 473595559 687393646 530310049 601847565 992880351 993784856 901714582 928537081 963918123 975108885 988810551 989829563 128973212 256031807 18249764 843890224 187072526 363924087 267280905 536506844 507672193 812524103 320504261 394095607 862906677 863821210 929285511 966161123 368877622 663370879 26861240 470066049 12548331 578775223 822661227 833367282 774951561 790127784 134474240 603550862 407571648 496912958 537412367 680962102 459791036 959305766 514682930 857884720 714851771 876863251 909847482 963563002 808232072 864863008 825583091 946132432 693196730 695457216 684094741 786241632 356564506 465119988 564579568 604667790 937775142 948172227 409012077 881017825 568377969 716390615 307658822 451826964 147328638 160412360 994957107 997972402 886061098 967398068 610694540 914862330 903411578 994100954 34710439 801723352 404253788 894516814 591673630 748723050 893522567 902023157 299253943 427508468 893360883 933428454 8948172 119236677 584694141 978771983 507267965 838064339 534577810 546047962 664085456 877593637 923724698 979640693 44935667 204101375 699099864 982238017 25185548 293743666 421011091 654510979 709993507 981014509 459606843 520755262 442431182 688379080 87449562 97908828 229238490 815060559 922848907 930991283 77678283 124201012 783778240 831306987 519329110 821963420 687897786 769928371 783091652 941149789 585630020 870575645 567661296 959874823 621836191 870477607 60039842 919832129 962432437 974009853 282382527 489496513 83881294 702533800 941487538 980189294 410190769 972936360 222160945 925138042 580453539 970710041 394193066 426617293 232994655 505908833 913585891 936917473 849967349 962035376 645701745 732904413 766048136 890023093 106346756 730895992 815667496 904448629 69987621 550309312 864400578 879986552 375299993 909148116 858771321 881895826 725390621 948476085 740998587 998979048 96261331 119701680 154769727 314496032 556639611 876037317 229437760 911362358 498885902 749402560 650347199 992478056 957922373 963390415 658010445 903940323 49194642 271415589 894250096 959320872 363650597 818453855 694366022 793318113 103860188 576420467 527455839 891677657 778405998 871974571 729175614 901068198 109047079 206283694 286069945 913351437 299085282 430693853 463248173 526070573 213325987 696923791 503991536 775360020 981391447 981424999 234481523 377747121 691262849 792081005 228560733 443003502 960350234 986408107 427540215 715210121 33011920 168811830 810818540 867710138 603427841 821932976 666571283 793309203 862815541 899649535 313192195 847030600 532942978 755046700 771345510 870701191 730190297 982635344 536668876 855802405 624575062 972344920 77970416 483998757 437413914 912919257 66530189 998982432 791017995 995526866 765161464 839758756 513541315 959883456 152688282 862959039 183457607 546973246 429266866 442630244 743721801 907139039 451600071 660573840 599491610 917312417 772394332 886449498 412900081 857027509 637034780 747468277 352107842 802531666 113088431 128849924 274853012 880503104 676976788 976628903 872603336 935019768 478706038 565450420 532495966 945738586 867439905 936351384 803993193 969157688 556208411 635089827 123962635 811254016 723720881 850134556 249251364 433756420 748928708 820419764 233608158 766550874 602623565 937842626 19680982 795829587 743167148 839732318 317463893 396347465 972016687 978470410 982920394 992371315 792084466 794836621 823875872 986570317 418075612 953460319 691445768 852361765 349013988 437707836 294470674 937956429 173231062 356972316 753306710 920270740 663600879 846601389 764116626 970396550 903947697 919083001 114285420 632364505 650024153 794366078 766476190 912402829 517587356 953803149 264611771 370715269 243108813 873228599 226094674 319044730 790113110 982746026 749421917 986433881 732227072 786947810 191695960 562356603 851923521 947303836 333326331 502528439 284406238 363588216 158093850 818546218 72093674 981139712 414417874 417166673 739319682 854456184 680056007 830307025 41538144 998543920 619437613 786883392 290709031 525486251 188856708 296986306 656422969 913347070 225482296 558223602 296449212 380133500 561723236 660327310 881107609 929955843 305229848 832081807 288691619 742800567 165982399 636918455 206986892 869654539 39044490 394517850 425939117 923926264 891273727 996599293 659845213 688262057 394686943 675062313 936390579 967719393 37957734 943283714 240944083 992516424 525168937 939629337 653547046 767171960 727271023 790694327 638753144 787398096 279134683 792379722 639535502 750393845 271653930 685189909 177372981 699709939 76491473 612754033 349018538 866258415 467118052 561340744 776387096 923489181 513799796 993590857 722403852 804876848 798224428 838602218 268791102 635539671 947755406 969857886 52099199 649933298 523637224 570348960 512262796 822147621 609114008 873081213 826622872 937860218 895256492 989906268 649625332 709262694 81953486 500681237 303390930 675821247 646070029 791077272 697402017 989514475 484381126 579347918 121936234 846451775 525195794 671705268 526574712 741621477 752672437 937915838 373710435 574255552 454998171 823123093 590591759 608842752 664695932 807693170 320242316 323937319 910692805 920144800 318593521 389027179 352964843 981742357 530706814 863436339 956406976 980482205 918642219 980738919 865547444 872469952 551356758 913987251 718318227 780677984 957564219 959599465 806959516 858217548 840498450 881965244 519134319 905179428 522819502 708801774 379135280 631994355 882666687 923538844 524745516 590239117 249617024 964113259 395846166 425523915 729603443 982461696 372522742 738402921 702208386 902429143 638105553 759650055 306061531 384692794 728815921 863872902 581788991 647550287 256241866 860929154 537383223 573539492 547390689 952251917 408542965 725206922 36487935 800393848 40166847 536436582 373880570 947727324 189155339 615792037 926224679 949876763 729975044 931553816 754478625 991085510 916570435 999281975 736017501 831553651 211246298 293516078 811708238 890387919 576044294 782032833 32044807 824493934 342336657 537846091 606278831 689804752 236167659 445245106 92294597 631424277 511908712 933717499 694613942 874512086 282549703 291343711 40682275 736622033 471508105 661272425 676236823 849148254 82174779 499304199 791057885 988623603 681360115 865922951 416998118 428078727 232400649 868363727 283824764 933547734 997500453 998424429 621950249 840580238 499711771 815981359 202570244 954518220 416624036 440227446 659502139 848841223 646997455 890533886 99172409 822249556 280002093 845833573 977477064 978233497 951123433 987058093 49513616 158468409 984103977 985623224 95754261 220371434 830076365 854890076 2790144 564328642 999349240 999948946 985451946 999182422 132121218 371478563 905019910 919824951 593799353 806689096 781458959 815977601 807469965 973685750 840893098 854456100 771017709 944618564 55852816 591818793 741636412 909391747 146371930 636339934 620558302 762091014 159326921 842363510 892630051 972096260 774025396 810720947 264089701 823522571 776985666 783784685 993837502 995855523 680740063 800845289 61992005 277475728 551300934 642724418 656810419 676387711 945274083 983519659 820307655 884595838 868701713 890679889 51971440 83789248 901061616 905616268 484847091 628016618 312888428 803282275 359630017 745698395 732433692 877867659 620801901 719771847 494051702 835249441 817913653 936467498 134610932 492942703 286812618 547268856 271879667 278683365 760602346 804493719 581617701 844089888 737089595 865598279 548557883 863053891 343238935 836887414 738996057 754971674 814420825 885022923 479000501 519792486 646347005 868885889 128624150 726704249 893584609 928426874 595740845 889678286 584398149 906340410 891757415 962965495 153034503 670013398 442564179 948598345 40209135 536535008 154078634 928962839 950368892 987375047 457856522 617066416 687255371 877070692 615114827 991097047 239948977 531746356 564781189 985954056 141362612 537271242 210440581 635703542 814309537 935790449 886963154 982926329 362674271 628846791 547266997 791731935 540942688 948424308 307286634 483023803 961921320 966968936 820967924 921584816 973051617 998045055 259178226 877390659 610441221 660827756 812842495 847465796 841858405 920500317 740333093 962976503 784931196 893692047 612221327 765968330 219971775 495212161 531198542 766366580 877068148 900728690 801703857 976916759 878888143 932785719 437316735 833028046 10112154 307597326 871426745 968456699 139723599 800549118 781829495 970118214 548426494 879280646 469368652 984492478 602110868 980770371 158920167 581034966 46468012 948513331 939039476 978540059 920045382 960174510 296436537 836811168 855711986 869753540 725170134 875302147 412414441 511873314 148620482 949189703 143724840 552694711 663704249 683899043 938060612 944362540 46950516 379381773 295254416 504034431 568947576 935079027 473544724 676048798 500810027 694682269 568122506 885265842 101131917 922235810 814527457 923611535 544814377 982860259 157628112 304984937 615139649 881746263 324892541 610882449 542189933 857125722 878624919 968161857 312485993 551436755 622738267 947416239 56509912 502798928 833873792 855233122 991470649 992359763 806404968 922433797 279327666 281716666 610451756 873773285 872478089 966576757 862261299 981105270 904549500 948647381 747285227 816323265 323371253 602831558 138048894 773206077 151911317 837496093 978024684 990325099 389238650 491305928 861775637 885566019 249764121 953443083 24693495 579874716 582435194 748949971 831762048 877316768 408862576 893308714 25951143 150230644 312265801 703250536 763512789 965610003 837828436 972288812 530069649 996977070 232321043 335770772 936753360 961701876 924457027 957205477 576848675 779121421 987894136 991553221 748993435 952681555 691232036 890587024 485044702 489133756 215303702 302535588 834090305 967317562 881221771 916471546 360628656 959039832 652665845 835357935 586199417 766918168 480619144 792567648 304309482 552655345 733332035 965376865 776727800 785962881 947014411 998356001 201774014 978730172 118955174 791108247 256899404 833478939 300945794 394283583 161354603 821670233 230596763 776753656 237633523 803203055 538874577 656388622 746618260 866434743 849291606 995510023 339912698 736855407 825388038 972536616 689481712 770865378 790134815 804953645 524009831 821944237 177606830 435170455 476351374 689120439 972824332 997206934 297632610 666400402 307589376 467664939 84744058 334997721 712996268 767016235 428170434 498425237 161929685 996520477 921914010 958695171 859022172 906467090 949322635 962597070 348671867 752002070 180298671 366252559 611662781 997142524 149922254 738459885 935632112 990311547 190354366 230962483 586843292 797752282 705311730 752389616 921948320 954675166 104628558 643111664 835545927 932885981 578535913 772506980 882965609 884512619 285590064 479785225 770441943 890683485 428488600 549490890 160743744 226761151 274960162 627684797 645914790 721425920 830903155 849525500 798560082 863289400 668227007 898935872 165356608 557914095 904396825 908769209 321538983 652587507 933177114 974786660 520966904 743091327 319788660 810458989 623469727 784461029 532361046 965221611 87453242 948542851 324653677 450275385 716650371 799479580 911485373 913351531 615959596 741616184 882565522 886531784 717564390 773477872 573679305 883696428 537987728 811094499 474250539 963708793 542426177 696197999 88613646 182270507 771838967 941495214 925120308 997097502 264186010 990295013 783285704 804649924 297715999 986185580 265225073 283035934 349750143 749323584 580130157 742793160 471408338 544731567 641913491 975766412 426151710 836566243 187336605 834614198 110399873 156370313 544245596 794226091 341936381 756201234 681872170 713915879 873707885 876675764 189407328 738215949 124364142 167829179 219387213 267593869 798329974 870287925 371298310 436226609 419582076 870028987 916000288 924112600 326386205 501691367 593080091 805140964 997915907 998092097 680266431 756331423 366275899 760329308 428290280 850485372 333757330 571571803 998260374 998337343 918217716 952448444 268777242 288877578 46957900 759790406 570305783 663175007 57030870 443415360 29923017 188020587 338344396 697115741 755094867 887408149 553431485 681646385 947217317 987639442 889108523 918094031 49900596 362434127 584517558 999061053 550396988 558195969 209981692 482563087 443091855 492699057 368323228 684279964 5846095 870701721 430593087 535252065 519367563 625114465 887489324 944730066 74506193 222313314 611683905 884614020 848640179 959071434 526389837 784150984 263491397 761246991 419009616 864742016 794601025 852732351 440835215 677918171 160947702 722272598 322566280 939618974 33109410 816264600 723637548 817472844 550296805 602894535 562122316 903710253 436278705 954029416 433051379 914745303 766233509 888040167 610171765 844662892 550251544 875237470 909949314 997528453 942325663 991791133 964890688 968150357 280626640 910319211 641347715 854885863 160426417 167432262 146515017 795448513 524563087 674137293 304851618 418132071 127159553 226799243 209954014 394264156 522256996 837372889 71840020 137697537 897149686 909269383 46500189 530026429 898497696 940124354 13280836 252076601 828325349 943192830 812219171 907537406 252259189 312688538 637689436 848964643 5185108 763813024 70580323 795520872 66338183 572352223 252813705 472412394 63896817 987343320 777197455 972626836 278065087 636237872 362339720 697632526 418068768 567978550 219722375 594799022 2370308 284695282 714050537 759134389 935331870 975974013 92781350 506436561 470761363 877621629 988979981 999677781 281093365 388625869 544609086 777101129 82564277 728200079 476549488 597804263 94447878 506443376 63980564 836906019 390981836 919470308 562999915 825119671 539773578 961827210 26044804 462593576 602029826 962429234 788929986 961076968 54829465 246747631 217864714 660939021 823777760 950697111 891927142 956452487 271093774 843917367 655829103 997937899 390151889 791783615 798939474 803120307 614142438 855485521 354226737 696040125 854964290 982670943 660292792 916269115 378427179 519985240 367935264 533664072 609400991 788706773 142231009 821181775 119879978 475470448 854098093 910505868 192147545 562741229 147781866 680138711 77042183 246552135 769771722 868396052 796611386 967982203 742630490 847648600 915465576 984323741 382701612 572607852 147082442 517637356 617273408 907072478 365784712 410760731 349758148 864455849 466246775 868823166 696853095 738034143 561295657 608417181 254549441 430346974 465232577 834804601 42309920 457772508 455213434 523660650 262013692 405269028 549762105 697882987 385646452 830174543 391848808 868396173 740461926 894890846 295589505 866041966 603521365 773452307 538491398 818245100 700592924 882544270 504802842 730768036 350739396 635847486 426923913 452750296 466948606 819149865 300725131 439953661 40626606 71426250 40215370 101324958 832876491 900519802 233380178 756676216 734607204 817830057 709068228 870667642 410174545 755436288 551123484 700011044 992292788 998457641 307938315 823976126 579547716 955059247 279585636 679710941 638761874 808305654 622813982 876376003 612326847 769795602 95017944 925021972 444483390 746532410 477975228 782183222 82867628 236239411 319141758 960634255 725565588 931009455 879771620 985482425 366085172 490568830 100606330 929012324 250191762 395066194 805745535 876909199 874634113 986854912 403782640 647545168 879624747 952521716 900105159 963099107 380820693 470845269 640957491 823322399 649392595 723239670 866233497 974445285 392555741 992932464 563965367 900004468 460346669 747158164 836913471 945334330 768997245 977092984 996306349 999195631 656138314 850273711 280971870 658414057 132961430 918874309 744346829 935167720 452722734 764695378 913337695 935025187 297140818 777472986 241909840 695665759 767441846 980338602 320661728 735531788 723048096 822572252 911714045 922584171 681871364 990949933 800620690 907126457 116340359 526291566 566057294 655935495 316153106 605979160 482859723 504868833 625232767 951767715 307449368 440906635 451075188 934779151 911189557 992553841 114426152 536644806 573492157 701717094 674646624 740608792 312743388 630704617 587436509 987275637 145306499 436426660 864385842 997039647 112963437 550304350 346271070 465543864 440546210 929656919 904398837 990873830 38741403 331157661 638603520 741812485 166277087 842292217 647933146 910229526 641653999 671579536 876012532 895196495 437115645 923630163 999393040 999564206 705557447 971957411 859430329 917058978 784704462 824521626 659734942 676207754 355920118 604519459 249006640 298742819 318205604 477256039 518794655 562053354 167105704 493536739 674671220 788515276 971092159 986639199 937294246 981587313 581738235 755009669 475186189 977587589 627319416 807541988 90061426 741892625 602501774 642520381 119082355 628782125 180233966 339585803 498492651 915346555 215376562 596338178 299497257 626783666 999169231 999395062 404965853 410625296 262188990 807943472 236216926 825281592 479242289 589442098 969665622 990154813 41786065 914145527 639801985 831680807 744620596 882851079 539692034 928607959 123034097 206251733 946144262 971945518 968244243 989207452 637974680 955741266 841206735 922720296 458509575 801202048 127043890 575419704 956040418 974115498 516435047 684805950 150746298 311196296 588464379 639905131 529880773 837604523 991256821 995700237 781153472 921977543 424731359 426412108 185289367 984006073 569109768 849048399 635328314 721116853 930845114 965243269 945430125 976153907 491147344 947193467 40933369 848615570 759187227 918902411 973988286 996352415 146113037 340442597 522741713 762621991 425928337 970459620 313106438 563649335 704673690 765059288 625181956 851023964 427530834 590563371 3110583 308777471 788573476 890586968 765265411 861230767 475138054 584364731 506684879 660616322 181619896 374278872 621490837 863679204 360452110 700393023 960311416 967825715 984990604 995487335 105746704 704335330 91477205 707553785 56111133 495326957 928702362 996600281 527962288 878539246 890888674 915122904 987882564 997563959 183882029 748864207 822349358 858662191 996031874 998899020 517967115 620631934 684965709 943719608 978489484 996394483 380887825 609221418 691308505 777802631 216051205 685775590 788998739 979553011 222513658 828368387 34669380 296108954 102012012 862154506 602136333 625668951 755856042 960361392 714427501 785507182 110730013 551160178 156135824 413622864 699455512 767815027 973237163 993318412 586119223 673798156 415518791 533545290 901222494 907517825 132832055 296550486 955382136 976738781 241745932 751079447 270269504 704450130 880949517 892102932 304214312 628868218 836244768 877513371 19624195 500610989 459389316 723796539 102381919 817233402 701129116 808300776 999713297 999871639 397101071 815685390 64311335 615735461 243977929 246456128 852350214 887265209 965777 567832079 43509045 314083642 369826708 792009866 518563749 880383977 82228920 314555638 863069403 979688194 127460565 896672118 596956048 959735589 753925651 988983493 936200892 948920701 611602403 658665186 450396850 718524668 519981807 762447783 878386022 892804719 919228210 924756817 322712726 394030585 51196377 412430900 230302773 526760247 458707749 464849046 763839021 845993460 759948728 888584394 262024067 425677355 422098247 754711765 628899337 950881808 457376820 632138343 708206848 946956968 414149624 968857213 610317580 849866415 777802407 921812225 49662069 348738752 199655071 761590023 627687818 975646097 73283218 170885244 899183197 942770007 380219969 543789348 211532873 233188412 597127122 753189772 87828877 453760941 5543079 347322377 814896830 988564592 477791820 547695007 771764571 840521344 541827721 709497114 777314180 800551259 492770543 539929679 362496071 481012602 787113053 973865555 213641256 984710754 249588162 562181215 91564674 843325800 896774185 990518588 480513586 902544730 342100957 407041860 197084286 979851791 560173003 846063429 849082843 883190120 739774582 992505835 357569102 620433240 242848238 601064386 108784995 892547356 900657005 967505256 455099127 775422518 333745843 928041023 135801956 904634515 720044953 965327609 668607194 871977327 556292301 833805870 293888493 764953120 644453954 984922307 105223351 413659379 16894048 168775531 474121225 738287059 880801801 982509899 952533101 996568119 647110738 960197228 302302960 546331679 38339662 343394084 106337445 992257149 3938313 377323792 81284794 146487976 514285185 729003631 13843029 55559765 609141633 686593617 151574734 809148544 964512182 985911516 476508343 698408738 243178415 512871775 764623632 960233566 603780497 935642537 358507200 840489377 965759827 968896782 164407173 841337641 832566632 856938661 746290639 848652538 116210965 746197968 281875214 537764524 933026319 935606645 776240411 801585754 318776785 943985272 246541746 948447626 129402748 462344726 227396655 991489109 780932610 906210527 815269310 864108773 481650495 745677290 366462980 816216521 227697729 763276494 473693964 908288420 984402609 990059802 582706681 646711154 767077295 810002650 379889657 993202467 710311200 831810250 323751802 406090179 660711696 721666252 795143446 902919399 808991356 971549802 190220273 262073123 898742739 938642876 240303476 609950018 654238497 742163413 685166394 873668643 513040258 965866067 270254443 370175631 254877173 858318509 727943262 852593822 939296828 966059680 498382395 680390531 485172413 770004143 294946753 902072141 661575795 850974506 302218971 641319331 732454055 922746438 845662675 935422252 457198855 911402219 983864755 992461071 835455077 966080922 585659977 656971488 625698050 954118667 213408696 887227155 968462882 975095365 840320058 938805973 748654121 897841804 100258423 509748646 767841565 929393338 999182398 999431871 731973074 911547419 857087354 883671376 324244892 358094144 660976895 901782294 408224922 867446876 548981527 907864376 580925785 858950497 791272074 826428228 108187118 688620238 21347024 769152025 861082182 878263899 946249279 960560819 179313191 469486308 467999080 930289110 474596003 616323672 94138246 890731709 76143420 77673598 740815480 896999260 745793637 987601696 884912599 906156866 257182117 395622894 125464743 333451151 141032028 444711060 679253250 767527590 653205117 807119589 114953596 683824743 753468293 903007657 899243069 938440751 850186136 983527773 844608102 938331182 24169804 59683013 435596360 549429321 406341981 698170901 61471006 489349840 201510670 475391324 533734922 802570279 188832615 983471459 295760118 530838536 612601098 680296225 208737217 580626477 126564734 191445874 998869425 999586699 861819091 909639224 565000573 755187916 588166900 782760742 5251630 276729072 630879582 907920546 677114523 822910928 43535002 741027662 662730213 721397348 869051153 873881517 531443750 840564706 551838589 631169589 723600817 986672439 705745095 861366402 80353131 414280146 409782472 896656693 930830988 996280258 223654061 318867512 287091859 522374625 343866022 379579925 833357504 900714647 166602613 962540645 440930279 882387607 92834350 271468741 418887247 875946463 40024683 797386736 802201614 946096834 228515384 966915485 419297559 629499561 542750675 858336908 877013742 967468717 822967228 933424884 288174873 548031375 555071674 768750570 579710483 680705691 132665759 836844542 694410577 712509990 868465450 892134368 520432580 638515758 875110487 897909850 798321240 877284532 573009602 793967400 69223476 303219669 443829475 867613269 344353670 833901426 696746470 823865003 231313201 958607533 109103757 769002549 231893629 702736656 16592592 330107643 438076128 787259019 947942662 962830403 903080322 997444367 724808622 856284136 830563124 983317280 841856637 951149047 857347421 982775625 335236255 919098262 852767920 956551592 358820932 778461798 597518436 928185688 829791778 859672789 33289534 106760681 599223967 632763445 267924053 547180474 216591040 643730621 522333212 905653214 16150375 676521194 908912383 922811233 297734621 916569944 448098316 576732622 639971457 949642420 311662545 937915198 476505095 966498846 462437834 571568348 788314119 879683753 18255447 531744431 723795172 812649393 136838176 690265171 73954121 608127000 509383669 860406674 979406815 987175163 821505846 908765136 52127924 735623697 931640494 965215925 926332797 950402095 499898242 983815522 250979203 794840843 439376892 730230775 711356323 935269024 32130727 243124587 544779640 563540424 821671034 921665851 490181575 693042721 215628506 948213124 268934102 375732287 740209486 856925008 246106118 471370297 488879947 943061473 677727615 735349896 724713425 817386337 339441168 752436032 921907731 962285995 184940356 903013047 159002837 617582309 873029217 925536367 895672522 979026216 110108574 240887804 915204189 951231143 544961631 623311830 782494456 879250965 632547462 713705413 60081204 80479210 533390920 906956369 769299704 847421460 732543474 786883260 795438581 827174461 693883909 927276393 985311039 990755526 933072340 964007388 798648354 817145251 518646091 745289051 513518485 604610431 419399636 499432457 836905245 881546912 854602045 984382151 349326940 718043687 748279067 769639666 392536035 843543294 866410511 932293811 678939392 881418565 593754308 697332424 240938434 487166833 947746725 967553230 700957496 804935979 164740047 798363245 861073089 907993827 605384338 755907037 637319453 877433311 121491721 972595049 612322365 634970447 655591887 907184990 421931999 948027877 204438939 855958155 448574584 459790328 344458547 911481857 126122691 446748003 833877099 963167245 781243572 970287341 152233828 332305392 428746333 716280841 166688390 320934569 452133797 756573645 248805175 530666368 304437770 982513596 705867890 877556061 182282972 870431644 674362221 806885649 883742549 972427367 625245243 980715996 956426224 981696783 505713131 908070862 960783752 981560425 224096288 620322719 137068226 524778776 320255457 625055603 718402342 778371222 138745064 769973090 455860764 714021175 421811638 928814567 242994094 389174328 160726127 986160460 852340762 853517280 794899238 902320853 208048948 437367787 360635323 682614857 642069963 869064479 646211252 681404493 912990769 964566684 453063017 994791601 773108932 882721097 963267509 987797918 119774937 730189271 437804066 552712775 79383477 681450924 379723846 845312874 878629100 882957669 406298991 731643458 237040307 570088747 723500220 870718255 502118573 587209781 663001978 730427341 76979367 498906864 209513627 336945610 339402449 382819049 705935671 850812311 723557009 725951192 431089703 834648928 971325399 988565712 246023853 892587406 166159917 620025604 72443163 714833774 230474626 996758418 585978277 644667452 628043764 683095813 99068853 819900625 853118309 972422676 31254518 243648274 344602605 986731586 867670055 946695797 211036116 660479413 662886773 754028778 544421551 567368171 519299602 855792478 312130186 937600913 390507532 694363058 574522903 608171557 561632668 844616221 143502588 498722017 69803856 801310131 469863959 717329194 429999145 434192020 504861766 790016109 176719191 267741526 313280175 533533727 505666696 811227574 267069435 619501993 121428626 515819682 322591437 372187159 958984840 998797799 292309384 566756391 661639148 927737597 10466673 375496612 986355494 987810891 388686775 638731563 591109753 624350099 810523846 916695855 376265101 735277926 545104957 701511084 976311086 997268475 939871658 975469086 18622622 800951490 558413557 781234217 732924589 960485866 677627050 881117209 697370596 775289546 505777361 825059894 738377981 975652720 879137162 937121607 198268081 402365968 458704870 726226726 230731604 627220868 176440840 459298977 936219738 948459508 676523602 977915778 568411178 867101538 456420073 996051214 485455140 618935272 159512939 432004121 155532807 796650419 816570869 831970068 197483405 985269576 888576318 957356866 943311140 964539589 974331428 994046527 145644938 633443353 98796262 598311121 994740798 997206549 621874553 895983288 233528364 727499989 40839081 407598377 746771266 834484873 782077795 931300637 860760124 927439493 390605468 622045650 841143586 901560121 779338204 916974822 719635970 868446622 260196002 858788818 313606757 700401088 734312877 826847613 730722597 827585553 601450433 949792846 284891130 750169213 647837104 778003742 597867918 862946537 759600549 860262645 162139925 955630990 104575547 261256736 960912093 990529173 395316049 661337403 121234237 948895765 967733326 976319218 755517225 957452504 87757022 713520584 964611413 990228528 966603116 992534575 789867578 923685199 643408395 963873793 490783351 956511558 12667393 453623115 6880429 528657219 629184103 977689612 332981679 903773804 542086669 808615202 490501728 624069126 986229765 998437297 707775655 875895421 656845616 869595946 718403589 728879444 677357592 748399369 162101496 869282647 12901160 666620275 353618641 941079037 394956969 887279107 320348971 769168501 810927463 872848916 147284501 281075313 385774493 959472639 451150696 830383697 852286024 873314996 343220232 382781503 873994862 975314335 680455634 717808871 623162732 840543343 775065003 883792238 410680744 946043030 625608514 657465175 450191528 644110289 261206371 399335679 776237298 847870378 398379893 739703246 38418478 712137215 966005174 984187955 960185185 971522292 175198978 427930664 38976535 878297629 84800773 439563513 727882196 953912880 311996844 356844393 547800089 919722546 809168140 848128064 64675485 98387982 557007681 690814297 631730642 976087008 253952812 635018732 97223221 430592707 633698584 797189496 189023883 438214212 722688818 977039100 613015272 817401635 373461798 618962303 184997926 547890380 925519489 980631713 727472241 971926123 48210036 196527647 121886990 406769095 752823861 941662641 716060772 739600480 71254787 264169291 123568160 728558829 455243685 625702960 523794644 771198046 788924976 866124657 223767893 988037642 794828777 889288551 220262529 879538999 845577014 863096244 153390839 255134831 286523674 665175894 854733294 977988802 301013984 863334471 767662435 834750064 277342804 540565485 162290661 900924857 335530485 365209150 267428522 547984412 357885576 710578790 934422667 964518611 523937306 811761703 398174091 540280529 12574236 137717288 965205767 984054448 627148080 949217400 312781366 482725771 543449845 856052311 323201926 916855806 749576789 785344674 598616189 670436811 561777086 994102539 485200926 684799721 959773907 985121746 332867388 478380277 346261351 437527268 271986846 586129363 26097447 406916587 822548465 984514188 926761339 985094495 435621586 866436998 10517965 418512632 901876068 978672260 966200886 999477549 203064910 581182797 624397318 897746443 277289783 389279424 334326654 825916132 354675485 774421344 870257373 905705405 282838040 664429311 874224784 962749386 431774622 775606314 786181531 854384407 829102401 925013490 999267015 999525379 33997446 653088135 452304749 836199597 785736438 956398055 331207106 788239736 397910260 404799253 489734433 776242820 161292886 841076275 913608250 954852228 702197420 752809690 576366293 627048703 656390607 886253879 558235832 973747665 278467132 745490549 640533530 708982728 660711322 721044205 63241211 233456421 939898270 971875691 205046767 648144103 801852541 970052822 986831167 994123019 868409673 885750349 622435914 770248146 214516347 519332512 324713832 897496738 832249190 961206484 65172185 812070644 68238205 972747523 805178791 905806163 699717415 867599497 374604917 756592806 878331834 944597562 803112420 879580806 847828516 847908518 898054123 992414171 225460773 319064058 962978723 982106603 51324365 199046000 336722463 469721615 632762137 768558555 848067896 860154854 421459510 729313103 390458889 995932962 580312237 616932072 105389109 569165793 782585866 798935420 944273782 944288758 188556900 843603713 472383385 856193942 82156037 892376976 262364985 847121177 76659647 476424510 843825042 875388429 132882597 734234392 981294077 990510048 664308179 664703982 575134867 953258143 242958709 308277205 466145929 677261092 838022977 935656999 837887487 876057716 286623459 572904232 467786177 765890194 519457922 758116967 893131487 904838971 942387680 962877381 409380318 713473333 474510693 839646132 967003996 967971279 625494391 673026965 310435082 803464676 780275000 895684007 256029238 813048618 763337772 822109728 939272649 981304595 729758972 766819924 684506760 955607336 60091776 424419919 546950504 642953370 277734007 500983913 361988214 392371748 841463070 869088449 241017773 790407486 140153755 183681249 185678421 283697361 576925725 628962835 378368345 548375968 166557820 171767327 649610489 981831280 773393233 996753368 481294218 625957368 650327837 982203852 22384986 360886549 621542232 695825732 435203840 739167716 801424458 889960063 961298379 973489648 520570302 909357273 100238535 440483274 891586319 974037562 155096896 469653613 809584139 917404472 610989909 963121964 60273102 657238605 853188874 854877539 654708366 818352308 718407957 893995101 97738903 326801852 393576340 478803079 742670728 953404358 204574305 508445999 518779686 840105559 457508235 902456202 732232546 900074572 397151844 610077486 366084156 992028754 253049734 395025020 847283920 910375609 504188970 680191523 97174751 283050114 937342944 949180058 272799494 491899352 817580775 902166569 102704740 760684228 910006147 918508861 384477396 652770265 152409236 925603177 649965597 951884710 393418372 404965639 667210382 944802635 549876266 676389087 17769624 293386432 978972977 988323240 348780481 722625060 493591371 873126675 342897767 656981702 94018065 443136583 378730354 442907651 979171071 982727648 49714778 783484116 625679101 676448767 163128455 406791125 92314335 918365920 110236828 419551624 594605815 701833406 472352162 975781400 212998152 714202540 671361357 955247884 692685554 828096444 903156902 943257902 560603135 995623974 894575526 970187045 337120237 544355934 159669124 557548129 128166425 193514027 475868079 650819295 275094739 565099442 822717073 831863796 682027174 732532543 499324854 796136162 921899336 937855473 141304810 564979926 142915238 940289515 728963727 734413096 497209498 795772316 966761354 972908264 325427425 515318537 922098182 988539992 747575335 779112137 875441721 933373803 151892972 887840444 911840009 956048254 699964759 928819029 367145946 397279664 247123089 737496598 888397947 935632736 156187373 335758878 322370656 591189675 957024681 959146940 88058060 576089884 502141010 753501660 858414557 945127747 767900017 946243267 323126005 401190109 662167615 742713126 254659225 380944130 826907906 847567688 737075998 792730851 247521215 672295447 279020329 908756029 362079014 914048427 558172768 577326013 110947936 479653301 276197972 830479138 387323392 735421200 846280968 989658776 335007746 566493981 412990775 931348892 18328057 695984093 760493355 890908156 558587071 637058085 737564232 768405443 707248407 734553387 780760580 823638083 101837998 528797000 829144455 950485396 253843693 787447239 547868578 866088296 274304076 316205506 906090130 944796207 192597088 887223481 572655967 680643817 772902780 822727594 690869861 905076522 456765126 970863510 807878775 894423523 739687413 864668214 220187174 495097040 917806116 919161147 225783510 336534835 245249382 325739803 471314046 480131898 233225533 519071671 744023335 948858409 872221645 912327854 275495620 999917167 483044629 746640919 340311105 866310595 329672758 855398052 816494497 994733290 172592658 262545746 352555960 502237303 322014014 821887174 345514951 510400639 958584820 991860108 565331751 692436448 423767635 895050960 890443515 928718904 844142008 894193806 947168728 999673166 642476344 921175465 665088485 814830041 736328299 962848303 813798538 932015578 683305146 897063376 353381237 598118770 717296451 961242497 950929590 974162474 454145023 481795995 769381679 777133640 250560579 493989636 491477951 641522698 451840137 788002469 429848141 513319987 421026470 847766262 970118604 997099902 947065288 947239820 482087065 655199228 947294928 966499992 850463695 865563747 884360542 888343232 93953767 529572145 739797348 956642501 736435639 911393952 307635136 686562874 602095004 921835322 94925918 109634078 84062597 819236476 836255766 890846865 283852662 360776670 710200538 726525294 399574550 636289957 84180721 922170372 135501196 375238182 620881168 769421535 775915448 887993839 922747748 932513318 857329452 889682093 185959504 203310988 577986824 866999931 641536408 771283210 948617915 997933335 327737479 950251004 323874118 485891687 992731740 997771033 116713318 615930393 561431071 795079687 272526220 517954705 86515195 334088855 26050002 224195413 425807217 840431705 673859026 935167035 607235073 951165380 543949631 644170089 665079442 742433847 27720293 581347568 919671537 996837628 634980263 868382104 955926928 956927612 147743081 415223362 18225818 433072603 844420834 910532396 437610299 924303845 599336358 824216819 109839252 165341572 330863595 554502071 643591483 753724676 753013197 976540469 279053286 521844150 847790537 943888761 330997091 964497163 303874994 741863878 381889816 770626392 524127510 572028259 976892239 994648519 556583240 800955743 33198056 236273978 363594140 387845283 994110440 994493618 604076097 846632488 402392834 477012218 110761768 794713405 631791808 949786993 283779114 869999759 833735767 942153212 318926212 840225888 140122098 352939149 641254975 643161148 948907707 996266016 24075360 806776157 448067201 543397723 115797560 202486472 541619237 946266526 932790436 978302121 80912355 122866207 58539297 696383432 553181848 619102071 785599502 797309359 485101529 788020565 456830240 674119914 190890585 741203596 289010696 530185803 897786412 976885563 925898306 946934085 838509255 902197669 90529460 760951208 975114043 986751534 463429452 600029477 181403343 928692266 52683960 523903794 842081986 978218056 671918022 689145816 701921872 884467919 637205049 946537090 234099240 564041873 720835170 926821112 556945063 750817042 102558390 143774300 535110795 997759732 109502181 552423405 150481886 626758072 389450436 708990395 703067377 994453943 611846873 639092714 672857621 903185091 869014251 879961697 470760737 867158251 582889190 894469813 451392114 503152110 517491517 759126553 792672374 923979605 407155745 721747399 8441473 954157018 35252417 783384470 44084176 660305866 964741603 993205030 5876909 458899087 463487525 982894836 723642143 727721491 299064205 426882885 861793341 877657707 777826878 962072018 175576775 302678185 427088283 537149090 855360475 911462601 126965667 678978027 123209678 576376461 841420769 940287880 993168268 998029995 62704256 752194424 570476351 714509064 741568461 769822759 110575603 998871660 280262882 480437802 757216108 824866932 733810673 780581798 418825316 759567765 938290167 966036165 526489963 847771134 383453334 518030427 106280290 637464730 879980050 894975589 968358626 988761506 360801666 512120660 904918699 967104273 955589997 976709836 712685848 841593752 7687088 585035969 421216405 422267580 284924865 315681022 803681637 987791719 438767897 575690269 446304888 523541450 699652790 835494649 286689939 458964275 541955384 736284513 860296858 893972274 379930930 632036504 959826929 998444508 240964771 614647160 129020412 653785419 559599237 897825304 151676373 713925517 297243061 930314564 618630531 776188849 657165602 755386845 326338036 880442581 636360273 746747378 520826915 913341967 687690251 946031963 150075628 790950898 570163012 620441191 940560916 980223022 27079740 228778614 537328372 828349161 613832553 996621821 814249096 832657222 147551366 470093582 982548870 983112741 796874119 943420335 55342947 896640104 338254459 581754858 355399225 680507506 589233453 936221512 923579526 997525636 120536570 330270942 640989257 683654068 159554225 851678718 229492947 727013648 734452994 943403939 15467726 675423341 831019784 947349900 340022583 703484747 818496804 989296474 238656665 268863646 852686096 854090310 718301773 801484421 739608238 817676974 599551512 925207469 537117662 551417860 542586868 878852918 400804584 757690569 814026394 928492171 687834005 915936687 558945997 760025350 835599923 934157144 480289062 799435159 220563662 310639848 262280397 554957067 275401216 403220647 143012846 183589067 271132864 463698155 780038425 792811718 283356424 801973110 713039790 995041249 934581653 937604461 443224896 680551822 382792078 985916265 912484861 993246589 610020395 765957699 9629531 844979403 695827198 926505365 761838620 797023208 556374441 844475118 199781513 432887659 853865155 875213404 832057257 879846275 957967342 966326185 695258114 798532473 698697040 904519591 308495442 955882234 460540963 783476616 897225702 957767892 173537926 587057550 593756664 663974139 618733187 817450897 932740775 974363505 916086870 918911520 304130607 409985290 688895020 723023324 530388579 663351485 503563556 739965604 453484614 833037261 118910160 373761201 688021646 833967810 565879495 923540612 133363228 741972492 334438225 796361734 790452753 929352238 372251948 386460064 880058275 911503500 994766769 995567716 898139500 938620314 850455263 948575200 150978762 567294177 205398309 794704311 260731857 630379293 700788728 889413614 136950978 835646206 463667798 970162798 150939247 855045132 213570392 636540218 3761080 790488257 793606368 805538098 308704801 864028770 304859749 517592371 298367209 786050259 676345984 894419784 421313253 556053718 596213807 792699007 237541863 932437184 412843988 614458007 378817576 444029126 9564517 684559874 912969972 977973344 806324350 935022098 134424838 943124254 717912423 967129141 158151726 654221307 209664417 575018786 919330247 931051085 798502908 846156211 128621426 940162037 78077576 318528107 696254860 997667463 17842544 375575121 134227317 191771280 92919669 808879701 292210470 858178863 566320992 767916789 104505535 761235488 450868923 726156645 19117049 605486629 741773608 957030538 411234484 538722514 238682393 905880845 715011564 892432736 4433042 136076354 117462475 717613871 532166453 790475598 28201827 348681882 953433790 968533881 339309160 607796505 224125489 753777864 426288679 756228698 713348008 811221066 631111798 739331405 904598734 964412934 756265071 787771668 633676439 819238407 926809863 942294315 326550987 475277994 67954566 435339809 532337572 676739781 218135574 751086920 752161723 802375752 98265660 914177815 348799643 605735865 217388098 273648735 927962714 941225274 737336357 879868727 241796710 735907550 406859049 973254282 777955322 841878204 768581848 828480194 501675862 655068635 351200094 967341867 908051748 955281061 619562954 619805133 585844003 784813732 424233037 695412773 557314977 896962591 892847092 952997222 821892451 982648126 349847980 662255815 798625380 938085966 81446368 197376008 769225840 890761846 245060504 359026174 690947663 807538435 747502875 789353378 687289780 749882457 487999549 888722864 224579122 370650889 638914553 744518456 487357845 578999828 142354616 301730998 865898771 995321082 23054422 416324740 410068974 772365432 213636290 581866215 766063463 854231858 625894130 679254194 158837949 587289773 150097345 876470163 31394443 504600128 475077052 895470341 883518712 952103814 780027858 919382167 664758009 957038268 687321385 839087879 773435400 971993639 416929539 904165454 330527302 504017115 843666920 924585856 452620693 672288086 385335275 581706779 692459646 979528941 732592968 997507855 46426243 91169126 707449142 984181370 580028787 734064224 85921244 88450354 250279032 890229465 112118038 846248001 126022066 144944467 889671906 898946150 607444418 939218206 731822266 788855488 995887387 996996671 712920001 945739111 81683711 623513473 746471363 904549215 166631353 562510961 907116129 997342322 237462770 894154951 113190602 865655413 626651803 968398936 213649848 501687506 522791655 568308104 767669994 779212319 340559123 961255412 24883815 562865790 650601226 965679100 410864915 471473331 154082099 788487191 744994464 918011675 866410289 974774750 937564695 965648480 771774903 813962920 412991234 414472361 172914192 818990074 249911884 764875215 850152776 885638009 728122155 974916803 172160844 970289157 693968642 869608167 601664801 818799383 438372745 890535132 104087811 898034199 174292817 903052750 769167374 773374030 527970012 980448660 37140187 882367219 510432905 793075504 62255649 265484278 818484705 932810170 315065892 495601154 733388899 839309908 882835453 929164529 426381738 524678687 283807419 477642477 922913314 950549078 801163439 825056236 933896682 936797035 141042849 865469566 108133942 446488842 537504774 871948297 215495151 770177390 518468364 647356937 570492572 690473112 800924942 931670571 641425533 817285471 963079274 988055332 346957931 940673429 167382860 211557212 116023088 584460706 16649287 154810379 577535891 947393465 122419973 658288564 937079133 981261364 146722506 181880198 530744506 627266237 189449026 906774210 957790553 968926890 105077420 613687284 334085678 434415184 898053408 944949517 179579873 301948059 696679537 998089028 909651431 989739118 53719113 101487061 368083908 585309066 37785694 139252061 4500941 731732308 552268125 863619044 746787959 869656108 302806129 818979160 287037242 861539058 291283781 538545977 704834414 759504025 346221958 374326170 40816099 422523130 437351441 632490115 73237726 373844815 311869889 764118847 857004859 944855045 635465522 916905667 847182489 979751498 939959860 978168269 248983366 487192556 974782320 997149908 446949250 643994204 27137463 926375782 630298506 728085683 470330733 688319015 147671426 921402671 641062756 975009770 188747394 756584160 43709748 989099756 448313694 615246195 630380037 733245959 348375989 651770563 922607354 967067614 761766452 788274675 586005914 780736204 588141401 720176925 101283347 617058833 656211381 988115783 210092492 308434883 479349183 837076690 342296435 809488534 789834827 798324726 491842608 718511615 586424653 782098171 83922395 549051229 991237060 996120930 222149717 323161813 125121275 290729880 934625294 995824008 180958500 371564098 974212996 981387678 561089703 587386812 702047072 809798833 497107459 932657461 390285697 801102585 141182910 458248283 489019183 932691553 463089440 650973163 122658903 402024426 563622020 892049453 557566068 974821897 207261369 784174933 765421544 798161041 608983374 973749907 217726731 762570315 661570527 785525519 207608963 261053709 583333615 627571414 853489860 911877932 50036958 657393489 29921021 743021194 762455561 923254129 374043011 713428148 251944275 985225954 767390095 855845250 348227322 730783383 858787551 936671391 484287342 825265791 629273582 655300337 195047527 990718526 30278965 640465232 691003837 864903533 3027237 743298516 642746482 805224540 542907288 857959554 39674413 906772221 35411833 910569179 567968611 952990818 857458235 996762671 657826933 850500683 513808189 783023370 724579085 783847765 810253418 817726915 507621590 686696759 814603584 831824727 96232771 378952152 359233931 704228026 663255008 981463284 156035936 409652809 784778232 855179273 544657805 635407023 678477066 983464835 557676898 946793346 368007109 492257065 825926162 927737400 857910161 860578354 232604483 671085657 633724851 803801139 587224646 683897132 816759467 988699916 25243803 229016341 423796190 854774378 256703522 988918049 321275886 874317731 284374190 913770956 579109606 751113639 257972921 871480601 155353572 838143461 288275178 331187911 232392893 518320529 498861002 602411690 674713177 761786705 684877836 822724443 27299341 678084055 717385819 810649592 360870042 845424446 339900880 517415594 838733594 991980589 158448643 893583694 533593930 724141162 677481417 739025328 858346792 906475181 795164319 998104336 396811489 589412306 997082029 998485107 371505359 998023752 434333841 730297389 998196447 999474879 752428080 937222816 764001502 972911683 912166818 913768961 582434138 588159238 726236746 728425231 728981611 952209012 507587191 523709553 688815608 897507991 156000114 249824887 219261230 427346880 576260883 716037414 16747423 333025307 365672138 479872971 629373640 996387467 571687291 882464119 26079797 471545788 7714753 867956354 166472815 377563728 118814204 586948483 694054644 731115035 591597451 618728494 459560880 588629819 776144944 967360917 324100631 917876962 117999454 473828459 932620157 973972317 313033538 316318940 212489679 675888137 277754213 874362188 574118153 959289241 914940350 944378362 134218318 964880136 524999740 603518546 810229801 862233234 606479131 617526010 384221884 586651166 344444004 711209127 206225026 854504678 197822986 852908608 980694631 981284246 343444061 465043411 591631221 667549287 689842853 783782576 711619528 909115892 889923148 890585161 699337741 703467281 46582427 525047679 820497502 988096867 230258003 531464572 976918581 987983372 487493382 896484203 360015186 526912911 42708957 435804558 156303407 926613172 629164359 924887856 859937507 994550733 710152864 790844741 147128171 242907826 872432790 887134120 457910512 889858974 363922654 553827406 55499917 231901757 710950226 780237791 120138985 663821988 799780708 843316728 860452462 945757837 944876301 984765882 305681843 939432176 149850019 623585038 852681294 955732735 723041525 910416530 887167966 960350771 525875696 664722682 760641394 970678294 332530532 898978376 450716394 675711747 661498105 784532042 556145801 598609341 105198512 654667569 194897307 721906443 184976104 360183671 205025161 420409744 452002268 915412367 829090591 883762989 576760783 834248783 947008874 979825510 610045865 768050327 331412512 934260148 11161635 686929052 495244188 797009575 302072465 625975105 125284411 578891793 890987431 986628639 149801580 523907603 766816358 799308728 439351365 869139147 233502220 861335150 669308056 894001172 631826559 927302422 122307531 157222458 83864696 894252423 882688112 959203948 312576909 971981014 5086361 379653212 14879847 300418974 679970475 923477446 638455294 641217422 132284973 712839864 607241611 833113253 673456613 880790959 545751733 942792992 828896155 869021468 717512920 778606785 337153956 639422129 494828326 569098443 739815260 934118433 935396501 954197551 568123883 852548744 752981108 868259301 651548664 971215934 783165709 855413671 964767494 982270409 933737985 978420103 342785024 751782053 179766354 532722579 470124743 705894092 970030316 988363005 279267037 709613634 832277326 963633775 516537705 880804777 326228307 850152839 919667457 930207463 195614279 674454886 910271355 978579182 143704450 873692633 549829854 732196829 685562543 991240685 925031791 997027513 198094585 865562189 332837624 705296359 552676105 622618621 804400754 846094335 500024427 774395844 680631550 999961264 249822892 426623622 426848639 626389157 324311056 698194276 7798716 706140540 35968383 542364129 267425664 282807892 505083915 517194744 685315967 918076342 522082539 904690181 522708990 612836552 640702300 717190018 187297378 663899816 28838515 652044555 129879357 336041695 304412760 357628025 326505318 950517244 939276377 947014934 649202344 660746304 466867233 612047378 236343765 904544923 544649780 978296359 409875879 941050000 556592258 617657575 394373618 705952030 902463337 925441687 553401315 741501217 236966697 503463333 802468866 834247153 400584774 774760701 848367263 984015260 66369729 449151524 92084769 133861149 119179801 697168551 255224458 923279031 375582307 601339824 14465095 167732024 254776833 451087067 22816979 866720180 52155002 123143413 222506647 228300865 311048587 567647464 607016731 650992522 600415156 969189810 115210949 848798000 640119521 827103761 459425282 618178443 452691534 476346507 474099222 497139610 837204441 934790889 252299197 323777109 619958360 911573874 1356092 854666441 96190286 835863559 946116172 988686081 746166441 895043841 261896134 715265951 516791177 863904905 223010559 346842726 648290788 712904982 264396615 534763712 873055718 925297412 80185635 375022638 34862117 970364218 435207124 943499667 303501492 908187304 657173588 693898291 859660478 995016897 701420016 779363053 884932518 946527433 904956560 910697513 525221872 657003476 770634512 805536655 66802398 927839322 827208334 994001511 237895377 792164116 739401525 989711232 740334423 954353065 663846062 876726539 55105890 257333069 426642267 729921529 733363423 884735066 810038999 961460513 13043366 240357752 58330565 456282782 647209703 933388414 100112960 221885468 49299857 259885455 855900005 902847548 76849248 920401707 213155329 267933500 222176929 328312681 425349752 613762421 737417360 835540542 315406651 681688208 970677990 989959838 216313665 997986596 873891915 964525660 83736712 128775824 713915808 977726326 243243235 771365140 442194766 848058013 747730619 952129174 893651686 950431519 494304762 892431971 662303571 778230960 442461268 575142960 174713590 720074275 188934704 702823593 341879541 874771616 82189654 152761136 649494674 672149459 513883438 929374126 401170816 441153754 367572888 648198013 566649703 644958928 512695101 889530250 760672539 983616738 445535244 773617646 450288771 955656592 988267529 995141143 557997100 942268288 971914660 995246684 466035395 836250233 359105811 569031825 529547762 662369870 911354678 967403004 703092594 895669099 535471686 581952086 245060981 887345225 450317940 599006801 228368947 925680443 35539404 743563215 925887795 966537945 683808952 959257762 717304348 906338137 590224409 753368328 474568207 990843314 490367433 599896077 693830161 772756839 880984216 923276103 638456525 657868374 785659685 988952931 890322609 918255433 413197414 838855637 808302582 842907336 175834990 892313642 838643039 949296425 324202087 845849163 646662660 955411350 303424073 354505205 519236613 781308362 614116772 780390078 804229539 944931992 646192251 895520604 728567516 731760765 987996027 998119483 933196845 978415522 166719976 715987938 271879058 911351207 301124565 958175867 750921721 780123777 274437267 578307123 255799586 312434776 738079618 953679614 180653476 430215343 257150490 743156936 949900874 989485928 860100815 931738219 592599386 841478368 234854748 503037787 123804787 163964506 64290494 560334414 971467542 972496719 118626385 707682253 461464095 472428116 346755636 570964223 10754992 285635412 684046207 836251272 208885954 966625575 270404886 997352629 764371540 769972468 346061516 724575275 963713984 974155990 62448297 875226475 649490224 705072729 497768225 695477248 322068722 900198629 717985024 955618356 772004413 809563924 732986344 917589712 507619465 585617888 426941489 451608526 614898983 732134289 51929508 127557455 396075703 824458831 287686810 616687914 598853309 817448775 938633045 998593421 22748558 840258573 748554971 818864791 309568778 647165870 356855647 938140631 520174927 930971408 169310720 271456720 422275486 745221524 644305975 705954974 85681072 810750728 156457179 809909946 792484959 971080566 748400 242926783 139824638 507145119 927011567 992192555 974558837 997913131 454623498 682858890 511020136 705982887 829429290 885396838 375944665 918734392 594782739 971847695 638142040 986325816 558783679 753093089 621360370 765281674 886037796 904302362 212439947 554402775 249509907 292227271 81793490 154148725 484215344 703867312 329321670 924926120 313055106 971172317 81557680 829726413 589806052 695228263 4971539 401870520 802894636 905617215 301226340 618627037 294934061 876284717 848241022 993587412 216792056 600021330 185447238 948154683 556047162 758121380 8492473 267443956 889966107 934528693 519054169 593362568 718063092 994610308 590077697 836319040 981903002 988704764 381037167 970586363 411004972 646371569 758812307 891957648 871947622 972895372 321168064 494798794 140523074 485170321 277022648 644315456 310370234 680665045 18740053 570204645 826516998 843125805 284742574 770233619 475127863 697976007 141335825 638704658 509874225 795612187 468372964 560218803 891544732 997412829 432483238 921659670 95006773 369437803 383114894 561403662 53367682 530977758 159873361 818102370 78440685 82197088 262082333 875464497 685727633 951788810 681995630 810741879 392864282 405474978 644880042 916794288 60750554 450497696 302152211 337057334 856985400 994960301 839829297 885758691 651405742 799967674 927895849 963545604 349223542 980014054 825358847 971097416 809930702 987719623 508707168 893803902 380253580 813262160 80682532 508645853 278803647 290396478 650346180 743668642 41399155 557458699 67233295 313065923 256292725 502271119 908418911 974741866 318792774 516662535 64491054 819028073 677405537 765407804 172506230 502763723 184854712 706169037 159925983 381991738 327487469 634343214 74963850 884241514 906815086 948998028 582992456 952738479 713723932 889764824 881159413 946183955 94305733 95182045 340191735 578716608 743218199 950542205 952338182 985036999 451801080 735516702 714847883 910978948 251674639 841822948 353541520 769847077 699940656 741060092 831595653 924572207 544406117 783067005 798250287 802006082 137777475 174392481 757197073 789920426 682183583 834321385 268019350 890518614 876712525 965331390 7995959 466974119 281036850 849908588 578930328 584342615 238659725 849446753 548082729 612407053 560778290 833965925 762323360 803881018 892975409 904192915 951998375 967005459 749703770 790010170 846870239 977268625 94703279 918695893 473546008 488576738 899542886 928230081 798205529 843310375 195086629 975935471 964997386 985367791 523648599 746967037 2510690 138354969 775717029 944021178 302867288 689732729 74764307 903052345 861884693 876295190 585998164 770704568 710001262 735736935 867758997 877128115 717331527 847402548 436938562 469710915 166205868 200685343 486596855 779617588 705477504 900164246 685981938 804782294 779817419 921112660 325978282 911855079 416591381 880285928 96603520 607135997 642280262 789337904 273158041 998777911 894623339 920510735 615388994 831424056 222037479 222749200 23193097 930738564 12353003 339751568 180254616 738131895 246038146 786218691 167877169 697069391 68968740 396169303 203314920 589538490 106021424 562112036 705783903 864976413 137425264 759935867 268634324 536406670 7952541 978941521 433569189 787516509 682779454 807019592 312285436 478943640 377779914 659942090 244890806 464429617 844292262 919836923 787404431 935707126 556347985 811771254 104333247 143698586 316328474 327542613 649887062 816815316 971358538 990517076 321981386 584572164 777193195 898507445 897910126 945345313 178389094 883568184 751014673 927948221 352598521 354075500 554965747 562173678 633125942 788225768 433731036 736713489 973845210 985451829 45978905 437854005 881511258 976460800 946405844 950028436 946134503 959837851 782429330 943269371 216515939 823990099 503609768 651609128 556598478 921854465 262778963 652692069 819981664 853365630 770089348 782449658 170707896 293253214 331725662 339637902 894226515 997921627 366370904 988393789 169338843 962369522 446578337 955349098 958063885 958705217 759017396 959382365 233638997 855739183 37784897 290726417 172795918 862430340 994569772 996501473 130788797 156143921 442635579 552527265 700349538 904581600 413900624 761926979 734162060 820214861 415393409 532766488 127450997 419690809 336776898 766262279 370630050 544569893 684681059 847363176 726189341 977393797 856223254 874294076 268301944 625253196 822901493 886420815 447616154 564227256 427725841 853010846 19672017 183455641 873414696 996066656 421580458 599965065 735067885 863898768 160670906 357123718 150907574 839465076 982541542 984568079 527190893 784609474 533482565 837038166 54240705 653218844 321968463 667614810 327084133 549622288 412742067 709175504 38193086 489024593 13931290 219994906 280178291 382155447 964474878 969546745 293859428 605631003 524545058 678192988 717048381 915958104 771256069 980738909 400976650 558926241 23931813 305531284 666460324 773579488 471802406 916360433 287864416 528756627 3534873 350726726 864241995 930706213 399623720 506097129 716026755 894029361 379117908 555073293 763978155 864378617 859648333 984627778 862037741 976682233 566871148 869821712 773962620 898116528 660239769 936914301 655213030 938531405 422307346 567115110 930394484 999271313 855893963 957947442 456192940 988126951 199608289 256822209 430135912 439087927 888164083 909082854 708888103 760016049 897250085 965000631 950214181 952550815 484102259 555225063 160450650 989758147 573656708 663864531 663802830 748725393 10504589 931550127 918286993 928044051 652066385 769180752 774291437 793194011 728619352 989234601 409900187 645924567 190771773 884209861 447247 719570786 10380517 574554613 138669244 375747649 192338541 897189225 247434382 346412209 379510820 993163866 181215529 244813212 431898688 861136394 526086148 577528145 349066852 774431243 824497635 951585448 276511448 682470207 54201604 391845100 349051579 737918887 378143115 699821483 102659615 494194393 891540124 907140981 606574469 709412212 183345020 848489225 849067445 988908285 75088097 335563119 816104939 916032758 675015152 993566127 634842741 656938498 817320517 982885042 693017113 771163774 394513429 419832790 224031938 587746803 859876520 870244544 245558568 343584490 634105206 712042874 394081237 840026311 532153522 538145422 975908250 982589771 64733431 153464275 747289366 904340397 192570616 919015742 722053671 988660193 186914181 300285692 20973306 503123740 826705371 829951485 816792164 906328946 820226306 919891699 905789608 994808924 434071625 858332901 76597851 89026018 690093624 751738542 741893275 879427426 519651668 569111625 410090406 577218784 651431774 868268323 406186793 745291088 637481829 793820868 781268382 946486949 708918464 760339151 527201797 796447040 992166164 992994874 203645567 350847367 744425577 935325351 290996785 643928356 98601774 173210157 676926695 679222621 597687477 962455813 962494844 988326705 92423834 106771914 295849844 396219978 477929524 516547154 387072368 404918217 142374345 406356171 710553801 923252495 639996988 762664029 420763480 490739165 641175080 921139869 456669481 969652111 311726216 523551052 221520422 735991298 894299748 906075328 177427622 197056295 799798335 910024683 65944514 364351866 894944570 947758773 625958124 769230743 111338598 657700433 843033915 972454968 652951498 901798291 222264631 408302518 117680386 399070496 745838113 855684635 867425860 957556993 17874149 180923570 410559189 630754494 94538808 962827123 594510398 667024428 409617828 837513805 480469905 495338619 737952917 871231387 330303888 375683046 857844492 933435845 60840568 759633219 423238677 729953416 834356937 922360035 842779677 975173299 492166185 976721040 608073104 635069010 577445364 927331330 990538280 996867801 643708586 909739735 702959894 985915602 551372492 667115605 452097001 640615681 443095077 694484281 875138643 902058622 893219957 912417232 226607032 612806368 755961294 947186299 333030625 630239676 810722988 812063557 462764502 800607312 788325792 928218648 950974593 958886017 130885554 495875870 658024127 667127846 861212621 879943108 821832260 826753226 545243442 928587489 621240638 750068964 843300568 854782967 935551535 994833620 446231895 663174615 39131684 477018901 201828697 987318780 676971208 992611339 317474993 747595015 589506181 624659841 670358608 721046324 841992730 901293971 448832416 705135843 383894140 982197678 893611816 936530901 440261706 545546725 408958605 587999928 720470948 869298899 239260704 732168893 196504229 614968754 331267728 452466322 82562135 631937286 796682210 999156576 852992882 961005347 365559602 438525883 453636650 548787675 432131259 872001939 978560587 997692192 76483266 635895205 44290799 745956844 498823548 971848861 678319591 746608228 27340624 837800352 244565438 973256811 368882156 840763212 856170796 935675641 634879015 839855957 251900308 265580658 91194499 406474337 831150027 988120863 712988468 730440884 271141751 814374790 908179656 986942463 612069710 944753650 477954416 833298311 661379275 748827619 825145221 944053798 121976342 523035918 805392273 866153186 867015763 928126482 761638816 763828833 246755965 529010127 430816694 575849182 264371035 383587823 8724153 458867262 929524099 971560873 617268101 757070375 957446649 961958300 494665781 950295119 924510337 992488475 820471540 826142550 288278003 692186598 894457790 958516268 918032509 983363989 174342851 608089480 94797758 232969477 384729347 395404955 549122687 825669754 176416444 474383280 249895802 655792512 675130452 863343461 580541791 640868651 562991675 725387392 655230690 934886820 642213967 759172519 727417656 814045099 446573194 716360670 922839677 940331712 253409340 482200046 796190282 994137961 703886794 710550921 534238927 795910115 913119864 979957265 767589128 942119756 788246481 995192014 958961949 996965211 331311951 456483150 114332313 793725264 206234193 252423613 156951531 682145344 580489741 971847925 704211637 998346076 279790629 689963891 94162817 427911203 814404251 827269279 371241557 501749816 789273574 974425976 975710597 995014011 946241092 987185398 595630460 718894593 958011861 970363310 306202757 666126060 206239763 221972385 249462121 470437797 431973797 479967982 536628378 697580820 244458241 426195529 810758179 826636425 563304229 951215603 134417088 807852237 989002041 999825786 666586021 753611079 666586018 946029678 673668246 892552947 825111992 979718093 720680918 929607435 532695874 622524309 595210398 604749129 354930033 770472918 225631969 829697025 413563765 866601000 5663386 309316892 245908371 311722589 327951358 512761424 380609379 759016280 466495871 475074670 418573763 456878060 819490367 904990041 147064903 849398140 297817797 377581877 800011537 866423171 902635060 922545485 270724902 395309677 406625845 710752068 80997351 316313458 115595202 719665181 1271854 212172358 227300254 791478030 664943190 877778978 366062660 785412534 802334491 867705382 864884827 870112916 494103318 567667684 533082704 574694989 661609628 873195562 780315598 820537405 72244478 642398565 795026691 990474733 298302865 992461937 407500368 434467068 264166833 273785741 164692302 696468932 309056415 457210352 695245623 814225781 86894163 344429070 938927993 972512422 633026623 943785908 415039305 967562693 660317626 699063552 932010854 951336569 963914326 983179147 770382138 869768981 809683759 988261810 453951989 942319328 540776768 679276889 383398234 881736075 260402803 297912436 195371619 299014122 98881206 985051384 181514006 375099218 118299410 565926816 967328439 996504051 506705553 844334719 29683553 842423033 752824748 878048887 143154534 444115440 845065827 982716506 665838439 673263783 956626726 997387450 668624450 915227389 350364257 669473944 756538726 841429509 270497609 879018731 230582367 517383236 76904664 703387531 432533192 758776736 229786584 886697964 994941846 999970845 210768859 365772634 279760627 771954762 519073448 958981178 132194256 790240121 218295198 735695735 881598236 963424193 795758553 900832855 458478 538967698 859188018 976361628 895078857 940455751 338285612 655468952 285870847 505640824 502446799 748419923 226811336 955199148 576054700 656220763 196737474 279310939 650496000 877759743 590664691 643195594 726250243 954686762 21009246 632497923 985156865 993038136 358376470 588868650 825666936 837738426 692499888 994983163 735230340 958952437 186042466 850487913 733297699 905153143 612826395 974711502 599202692 638865852 223945885 358526142 629283845 664935858 471646441 697087880 23996693 738161030 210600524 430513985 683144784 698770572 513685249 736078750 89815054 108866393 909508880 945023268 490242801 782465359 386950853 641495145 921973984 982404461 21781226 735883260 512271844 718842465 181479504 213258515 14496174 43872314 595779822 711762152 31279191 262078317 548173971 772443231 926738674 965623428 633025922 932565185 735116820 784798300 799589176 919560857 706230323 816510301 26967956 561910745 683184151 720360182 517017365 568149385 339608999 762421054 581788234 712232471 167255171 613379354 36171159 544569361 820057814 977607588 779055557 808132063 519653172 788102848 468883902 698921606 890076217 912169788 254905971 443634448 801437407 876355903 658373941 893644536 699853408 899577204 778609741 898119053 182852512 749782316 651816407 713657439 913923134 921353388 97364755 658576715 37725272 879242069 782244172 799859056 779839926 907581339 324063403 880097316 795025232 969697388 305351212 726081053 660207688 826507835 642766352 697956248 596753564 765571393 943914209 964869676 235425493 594268507 353549889 875913997 221499976 537974822 399485725 515490875 4173052 376754052 655508642 755816835 396710490 415157077 886110084 904499596 4423188 310119891 778256294 808411338 958015996 977288810 737601273 758254501 366150627 671805041 991885076 992623168 985545051 997574140 747867718 857123230 316336025 679223033 272046253 690131993 83346774 427988010 15881554 887408921 253557441 749988859 942267839 963025988 43756640 130371855 228175688 788858954 239401302 873904001 527441542 812280951 455056311 648002661 44617864 922768484 402398677 637061881 334310774 797786828 534197603 881075956 949665904 953804033 459064608 743156715 212977996 259504537 658110679 742229824 419375710 454416661 188194053 259209893 900677595 933888194 22557029 849705075 814077496 841777605 491996009 832077038 858222138 944072224 565552820 700096154 41300942 912577300 951085771 963035573 948802990 994469879 987628144 997412023 800780080 990665171 400571097 952279994 404303631 961706240 387093665 926032230 286534237 412787711 985435073 989727794 316044184 853247709 940136747 966333165 784561256 950518964 690674197 947444178 887941584 899547119 679641152 718480318 553548893 611592122 618803391 817063404 510215032 590751064 634897522 656516160 511406664 670978164 814635407 869823627 759537092 861924134 261323298 889386136 765741644 784160297 8360585 773675517 677239664 772450687 945255611 977610141 151433682 759414865 12931323 192306571 690173786 932940936 435145728 490651886 701240525 981072126 250305897 525260659 225457555 485309806 332657829 492292820 578808887 769645529 656324309 727190883 789433122 937272805 643342970 827927147 72084571 629692144 82951044 422580047 814662129 884843562 121259212 422646875 806053409 841657641 769331781 805716173 59679827 884792391 890409106 960268974 107122366 861970778 10644640 452739211 904843874 989429603 359452073 817041391 538270664 997747886 296408735 906586783 745703911 786023277 514028424 614497307 617691019 924756852 153935430 717393821 14854721 78221352 988774923 989423875 458751382 471317271 733956594 818832155 182876168 596949072 522262157 803935300 872202168 954720396 439494385 795962293 938382806 940293371 405835217 907013422 585786349 891229452 344851080 552969394 597702829 944673324 267224629 476703376 197474699 360066052 537832631 749274650 992468384 999432433 522211473 592765766 176729333 252507976 403983178 929564822 706312319 853400762 842081834 887586260 282625602 965685508 181627108 872635683 329978575 609519301 615475521 695683943 154961907 356260349 429553644 719746561 978247425 993987664 960215913 978739422 707300153 923309658 210864534 345127304 866005650 941225953 299774989 528028086 72487572 373112693 756958768 767341363 685286680 763478968 497596298 764660916 639474176 655230356 857544196 994975364 505002033 788614354 711266423 825468553 468522963 967272464 626597557 657381407 170067545 806735814 216988749 367221452 404415984 541307294 114172822 154390174 751655901 807082318 237713403 924066511 20457607 233441603 591105208 824505920 284554925 306929775 311844495 370338688 718561100 817130031 856181313 952566905 550103362 632979172 496376146 666312098 231307912 673997951 383732531 934870795 626111260 756588430 250891360 914519636 620491951 799536327 904355759 938836617 822692908 870368513 348321914 780464468 892547054 934079465 264429996 818313813 836180218 981534347 911442039 920877512 926105056 987260352 136557449 363561509 757848737 850549702 403712742 878875294 742055083 768212499 630565935 682931155 259530475 590968861 101530713 325470131 998147130 998633622 882224957 938199283 887182906 982249350 96588028 304248085 665129782 831330095 341400784 832649268 602322910 821350218 73307495 941421957 449908761 661973184 212836359 236165627 403897971 845031452 102886887 255629646 24669408 389253617 856193465 867773972 434986201 703935645 789829554 876329206 275080803 355666509 846783 989329239 644756945 683894123 888200944 895060366 823197750 954367544 904173767 944477047 363087326 720213930 55279657 388819187 45779239 873692041 180429766 543228132 362375948 831164784 920686698 963649155 905434735 945399552 921165659 944359921 958600240 969760836 735679691 744944125 823067784 970139860 501536340 507260752 249866464 265787922 331112088 731253809 519953639 960402439 814129162 874780659 61494391 283776601 918654700 987999874 895293933 987340109 581012243 974872793 678972602 730915778 588112101 880060968 917720516 965313926 188934874 711957081 799648660 813867539 217667351 862368615 219246028 711498968 134697815 551576715 324593151 751387833 485887934 977840185 355267482 831152013 631767997 730529817 976632602 977017381 435000615 977777876 958223656 960729793 138041828 602060358 79252319 989371875 471538832 514435580 745501699 862080100 861544194 873877361 287369607 723964191 187634086 539824187 54972296 702121131 125638276 211672510 232406997 781296212 545509453 853294763 379524409 738452361 262672207 501553438 458821523 564535528 492616562 793726566 631331117 675997430 541619550 871038732 956207604 998959157 722914927 799284071 339552347 987941989 794283797 931453515 10790645 659173127 480809782 581841758 742170954 792476339 746232007 873326671 598032407 615053115 961787606 979920471 853268885 905805654 166452009 799424284 393854863 926705118 652500631 787876728 796756984 807594533 541385166 581800886 931449899 948522315 865294100 998795637 713414918 882480682 123357474 393935771 264134168 283137666 148431698 997497342 780972607 901567524 327106893 944861699 101860599 213757547 612934493 971099764 649029981 783181973 284541971 729915523 323170696 799321918 502657570 994235630 372426732 668439430 725980777 956668232 217207359 236786031 515370838 940354510 181747293 586815163 2068418 527938555 909124378 916006326 615780607 647496120 768630042 837503998 357640702 476495465 568122697 603115564 388531708 615066212 910684181 948729899 182626458 991868111 932592319 983710221 193614967 380140622 754132 381723412 138465686 701617136 245299450 620183228 547383980 595737211 885766185 908168371 739761565 825593805 740630974 970243711 350076405 778848863 414414288 654220551 714347281 853766635 145017906 607292312 986499630 988812411 161870957 384111898 778192497 976758483 326092457 591716641 281207399 925512169 336397822 548120076 143535289 290785471 835947310 901365937 750891029 972295458 840755516 941057532 525856170 648891767 345161494 748254142 348547294 819421754 128720508 166279543 904758922 915432175 544058126 726132430 28944421 703401448 81143669 206358438 577642653 846338355 741173789 786398836 90209740 577283317 161856423 960400368 723330593 962712906 313495882 896487123 750055542 832772785 458588119 775604314 116476353 280038602 66824808 412242379 717979189 854566221 246462195 611336530 660562783 694468156 399009247 468574333 615054155 697393842 245242040 569936070 806355854 940763409 189047901 889296670 386600093 678239255 900206666 935625589 203160320 576511305 481182582 486026419 3637163 815692398 528365309 874593126 317238609 733631222 195584790 412155247 887079665 945138175 98197509 226844576 959755083 993719469 905418288 991393042 499493987 853390309 537281267 619895620 884843596 995671969 499082797 821734105 365176038 432995340 233051898 657196856 285944785 688160342 785092970 931820948 993495621 994302400 870543125 967320734 762033819 801882593 704171362 721825109 998471214 999673292 198264080 899665416 822201699 961613781 641821548 740474395 355426250 396644817 143080201 999898635 781927755 969864367 667601684 994188306 180985638 935332978 527793088 757108980 794827661 860370068 307257100 829476497 723913420 964373787 190680206 366633123 503187592 805606277 497509189 790149000 370568573 656158704 688559615 882656935 275033546 633112151 934770384 988573835 286551338 750262954 107044883 653968905 27271436 198652659 332120176 389770081 850634384 855000786 95117720 902291175 997282829 999911826 283475015 683998101 961657733 968172134 154725923 394051211 991200020 998298297 303406582 716016359 473386700 750390056 573663244 795226596 586280723 911655979 827299415 992243947 478021687 541749503 306707286 349385464 912096490 914748013 917496725 991736850 498885691 597038263 587542391 860626537 280858719 339994874 525824898 594926078 894832019 933669913 207681116 595882129 109227639 937051696 425921907 781339567 364264882 998690042 492000762 752934749 805177572 808838147 374204451 553477006 985157490 992566929 289260580 954635560 261625878 579536884 562766415 910262874 258398670 931224378 824337843 838492048 878831520 885966063 255665012 544943360 872363647 916998105 533889163 745222755 707426198 740252752 440361718 653131412 928114106 990225323 706091327 859583433 421467047 615230583 960497964 989086059 328023108 499305005 162817627 266005439 13517648 967778942 575820498 643033768 865537392 865998441 905387501 909350315 270246137 916451677 958419219 963080653 395896862 709387593 498537064 943592128 865766385 977616534 687068236 801381160 269877832 903516332 484651200 726200138 492670762 605609829 110118988 865885164 412042484 741488857 314981997 430223632 321115899 797496495 828806051 845265803 540489153 636133622 758677363 954199089 327210821 393278531 479498876 504675252 211281334 298214700 643085283 750724349 377762876 932897775 708623349 970680343 784206144 864815521 654690943 744389735 556060931 670362751 225000418 687875467 582993450 810518432 61229862 560343492 533197881 860985650 7046283 68585855 733173200 917988717 13371939 451529334 287572206 323374689 48466418 894618309 175530786 294345358 962032100 963782396 590074745 841373534 829768798 952588634 531308375 722199416 450417266 649635774 583917774 803433122 671251949 973219966 471464531 720428426 331480673 800693501 475259030 883580516 410088726 540940421 524738198 627566492 43224299 606357497 856087804 953322468 387962532 509988757 373942180 992498056 982045692 998325794 829649139 875733484 939788737 966633471 710449858 883504240 462016741 593597951 512298547 533515355 486491116 642339085 976650688 995386007 973738844 979516829 769927705 967830238 488956883 824394470 867285540 931522515 291593189 770237528 245099779 622124571 716786051 906797765 691778570 842722696 988406267 989617559 503671436 634752259 548641603 748136548 648976464 722655951 451858393 981002546 35859451 308730427 458877606 734998831 42087387 959586313 588800054 812098797 498332747 962963035 982070593 984672227 261854549 606869916 889101261 993166412 971522288 989326411 199684356 469453692 530935939 717805234 866310026 896783605 125590156 868609512 713009649 789919455 992283900 998106152 289779298 555184373 826879303 841504623 225030357 385393058 131646813 320878922 510236768 936478445 992010661 998250689 485681301 588426599 184299478 404930150 483321289 695041731 809119349 860258121 127825046 281548775 170263312 243230877 340575629 417793776 530074637 909571158 637997740 667766457 842593860 994388507 369725558 762924889 113448624 916899970 140832804 362365192 273721925 836354206 216124314 430824038 253430773 317228691 196330650 574384943 60147405 976592875 803811209 878535316 666979915 886842974 452377439 544171434 178918440 465173657 860266891 872631690 164549551 532012701 482793963 683030100 746651390 915065426 673572394 703971968 21220749 212228511 237864832 603857746 946994815 990570402 603311445 904762230 96344739 794929158 472356647 868627948 5578735 766134481 120792348 863316376 87327182 127174167 172187701 938837430 685149854 936509748 181026826 441324762 771516186 825328381 223819343 812148049 947088443 954253777 745412101 846073182 112835771 903241983 16380691 650411817 304655858 437494860 586899770 906511866 925742632 945694277 715943367 890035815 23298852 63878114 344443715 474142772 100539122 695167269 334454438 843340491 543538030 548101500 46064269 658636587 794329677 881239899 325193369 919271514 365590075 540588383 807811991 863316865 990581489 998982437 350100431 694304731 68956041 891423428 606495112 923982350 280392542 831583206 356764262 466098273 53783399 567184894 717420384 990030062 963863414 969078251 796713741 809962637 925733266 950633626 906146121 940205239 373709852 990850672 797090265 868269184 505519611 717513802 543762653 885383509 24169480 281900814 736166375 935130882 569986364 927478115 92527535 162095122 571248571 704145123 362083515 657738516 700936159 781241682 147094818 938854084 77569289 209993366 531952237 809433668 770858243 799679075 408182937 426009308 65006366 183452061 766031866 863618180 548220060 656597655 769760587 798623251 652380618 714833754 41791770 340724338 350481328 467346344 935071386 990540653 378572428 565619586 289227945 741189723 690555341 856017948 361679199 561560156 897155184 984393623 969340613 987395970 404136960 495425015 758455605 959830499 229151087 792180687 846306167 867402066 73840820 639047907 367673561 484872538 121407817 406776164 312165746 997623213 711842357 739937150 259812391 808634199 704460001 918719573 381660433 389706658 200148207 477269264 447974979 608740480 772790419 947190241 182002823 646922536 589664610 794777107 35496708 269795516 938583153 957510475 14924519 314459490 679118247 717716320 882848907 953597406 604290634 939354907 623362414 749966407 137722620 558234488 320436145 887577398 225961322 396451689 706461832 846599503 437809507 681533262 989643697 994846524 781928662 824364039 44610837 223061463 298604034 726083873 131693651 830302872 362650250 769032509 758834969 842415240 640598016 903573241 817405437 897980166 677869714 799606574 476414295 868068043 780309670 969217160 531764877 579055694 480171252 671306864 889147823 991057257 179502535 751022382 869707727 880080610 907651739 983630953 443722723 907198838 492704837 824516693 754429796 903888410 993252471 993269801 548895209 583281958 449811290 736732284 797089846 809461103 821585971 866138182 194361439 624077380 754033158 829813641 327356127 904872254 216594054 957921147 220604018 612791601 74805126 742176939 804659278 944532789 516385155 790648182 391176401 919731785 725976360 940718765 798054941 926039334 493310450 912138060 961049493 964326776 868423356 940253726 282070834 655329924 259296727 368024684 87762027 197543057 837047897 874039375 249613656 728726762 903491158 981196812 724637637 764129567 156831973 626507799 433259736 505774954 98638756 138553992 808158383 916250515 244884139 798387898 167517092 347230079 696524280 848845972 9482925 329845748 446571367 961726802 434188654 743700423 854627862 915794209 779616964 791929419 130325509 242604742 228100222 709059505 833531903 845922905 500369317 859759095 921555783 950517391 966852751 993687513 289358697 729495886 795691945 892458734 327504433 686785375 318443659 557036011 584351596 671140233 340601924 610604167 393286832 686670987 675428813 723184227 665207932 854429309 627627296 745856196 830057383 853081027 136750184 325698623 649430371 917679775 856027295 856087343 706430638 873898039 679243054 778495287 448633399 729859521 30487643 154432368 861607153 891417339 736544680 909350214 295200397 993256546 213148902 889257239 544191319 910605969 262639957 937239770 62631245 950474066 356959424 739918190 777766609 791343648 420239672 960843039 159839282 583718778 295289636 619516836 386264420 578623979 157100614 272841747 513380448 588968231 995884014 996206319 249544383 709977693 153513157 865963810 754446695 949975303 739939638 951435119 519876835 925284683 512027360 988237413 682749689 903884573 398015164 504695116 994278425 998820986 696741554 955742855 578835209 910679249 949635105 997539051 238099380 696930167 991012081 999594055 624343394 729491423 820015673 896346831 523621925 978477613 245712468 355173202 923439080 925955530 831335802 921274525 627045549 765167908 831453407 927552240 686428066 783085053 757140484 889923364 529977029 801755987 108193711 508642729 991834080 992228270 388453221 716353308 986002095 986539953 77283193 259756084 54201715 216809909 408407244 847716788 592332809 949266703 904956889 992097652 326292191 598280298 646814758 828963825 523853191 704728592 765950964 811438495 367540853 699911714 904553166 968796352 114322723 613955979 421016478 716294011 509701692 606420758 670723849 828161833 518780804 557571990 781272571 967424929 668475365 797672311 473205696 802097999 369328632 424551097 462106026 999677482 740634198 757786532 77986437 619538637 417662267 982085529 748507449 756573375 226013566 586849292 456453005 705298579 611408522 680244444 329946141 670296767 961738147 963427180 704762287 797065827 670952525 834693398 802883525 825958388 303121024 948144330 532535123 939996902 397875961 988745501 922754461 987590086 273347867 533282615 723736768 996544643 410853334 813070857 336685605 493847060 323925156 374331989 481893048 750254556 38834265 119984361 192482114 343181358 518298624 963631878 730556267 748383890 396387968 421744148 24352255 796285736 123197088 824069038 684287245 923863530 274356640 979205418 629477658 803079129 654783994 873079375 667874549 874376365 178357328 334576236 160720435 162685408 122568135 521021601 541253848 640534483 746439118 947621679 25794609 835624049 736355634 874753772 191209813 771125436 205127678 537232950 957381509 984308957 402182489 619713630 662749159 897514212 211758841 839940243 495966042 596807504 554442539 851359722 509856949 693674335 110601620 965684670 772006052 835475756 868442109 877807989 367135724 410576157 134261979 508790542 311951710 844197096 11368997 415504691 176524133 186602359 707015612 808272952 351750194 519357884 66025979 974449373 945059764 962006720 396009917 759599755 551794276 888012622 919221205 923024342 465074424 899840368 329080927 717150053 389456955 638742711 335344264 958864463 828987287 866704682 248942667 249765219 443295748 759130712 683128286 754835389 777121170 891809336 474935051 790494061 515642762 763480358 515843313 653723618 582493483 811036427 721291029 729952093 353740378 446468022 194298097 526599751 16569371 952525658 39197158 470555186 105456713 147705726 376987967 846500565 238994241 776651907 177860458 750349550 234125184 309085900 659604824 938757011 923196680 955701645 556309879 742700339 695884515 718113764 870060817 891096941 733250389 818071526 818470133 956999164 175551174 894704056 137780640 560026567 848162659 967105324 905356072 910681368 881680470 898291203 455873684 977526355 666058129 744969364 731829967 853028082 941025196 968530723 78371602 537055341 831892896 904553126 831555326 883849075 223535893 450216670 705455805 814599993 594151856 742446984 778263541 803179053 32194744 511217209 412790940 449924815 726430706 742627290 315028470 519014574 901045726 961622467 14102101 975759376 297960714 356022302 184154505 881011183 55098721 357349003 369268357 868710317 89892829 628488505 263521926 799760082 386687730 648788598 267402222 854270592 473684987 485474582 903283989 984689342 296604065 303511012 564860812 919156625 858666327 868879966 846154799 991886489 727668147 845507491 285154170 596305447 363791906 690913762 920430022 983436535 543634754 978325685 180565478 544445972 21395002 746633084 776925737 846757328 530065889 987332319 851789844 885542480 168209496 340323348 473739555 693005332 904487433 921786767 653900904 686868128 817043045 908325931 878767199 941014278 696035943 818753297 999333376 999430281 552646855 895463286 952219763 970153321 296019721 988853444 524710244 668810315 774129427 835306474 867912314 979574701 947562586 953146933 727910462 898194637 565405276 830646047 231994191 294478790 670477426 835085900 15440685 206164816 709947433 759066598 635741291 708606167 564857529 964102947 341045285 483574027 758270113 790433446 289202833 627998613 295999188 640278433 674773068 764939963 516005308 843108219 805758353 890746631 103059024 253222142 636303544 797009396 765001364 782085621 437437964 928103149 378577082 427292856 935060124 968585758 161931261 780536701 633151692 864501436 686309985 942159835 428696320 510395558 331910316 933756725 171660204 716604174 882292057 932716889 851681126 967473503 327712705 552644719 894880470 976393009 203342505 662059508 838356845 868719361 650255962 845108157 892998248 974565591 111189762 143984088 731100876 844268032 574389774 858486420 789397027 961897161 110016684 413085524 292382016 871357391 958995398 999435938 321080574 591110568 600982270 892564147 587334704 747989279 123488495 280399308 730766751 920898787 690930254 758750528 483924936 833965264 680914870 895794315 329468392 753277974 812347781 887276751 184744505 267069138 735477966 987790132 303696339 734006520 968320773 977293557 567635506 649055178 101552631 819422446 406231718 511356682 814914227 912019189 222094579 963963165 567486973 903632150 875391601 923074880 629792467 972272872 989235106 989649370 771898575 864635437 956281645 987896028 450532346 479040092 746871305 801561780 740385278 801291706 103091472 169700252 969100074 979228446 120628725 793463964 74328048 976688518 985141543 994548575 10450475 945067862 89650167 234311259 566852899 687757943 298835208 803471353 670871551 745486818 435419598 834864420 358923738 623158304 76626633 601710614 402688832 719854840 873241496 894689561 617091596 841169984 872222118 873025115 985348019 985408508 505402472 909746950 669079035 916541777 92923354 238260662 717934192 991579018 523131992 667262579 564126150 862526482 350291211 561216260 111086918 433074667 962463479 991364382 921709202 927099061 76705226 286709692 999100605 999600556 688178563 780432718 572588427 617112673 649320891 993813368 886806995 982175534 268215473 558614067 281989431 383450199 438892139 784875392 921057932 964579208 740924630 766714075 894595545 913453038 107030047 812946100 723659785 985298513 258340954 675026413 642399473 759997721 985614084 992633942 431438084 642898828 322929364 713822667 105673674 762501064 628210553 981473340 570215767 765064551 868781409 897796488 163515544 637272494 931630103 984492282 611590802 936682168 732818105 861477881 434000474 737490791 691511228 769662241 222974586 237983116 826728684 946150350 771689336 957133115 951873487 980966975 423607193 983317828 62373543 144176542 862131229 935727675 673244158 771492749 62317946 289639554 360940757 429472925 417294106 466293113 772840135 953172676 761786777 866400921 989073950 992541355 32163791 947000555 61599516 965497911 343788894 351846849 170680487 703701520 744072483 811748524 758677077 897986907 859854516 876359520 433512915 464134371 578129464 735184403 731893878 920967424 537833383 714537987 335015426 922089141 228762061 958353366 655131754 936445431 735246270 843279395 857727588 964148298 935584343 974587209 835397747 951138462 210753292 329245426 4350264 759731461 373469286 504472326 921422264 995536869 164364759 245850076 103344259 463606780 986480285 988417317 612411502 956101519 644063932 768142550 350571480 994756907 926755275 989366293 601682639 745219165 72388664 435134070 951667534 964290500 636272459 658458597 966286464 997307251 787046356 873263255 505013662 913407158 618938501 828449585 660010273 835127158 979947744 996371109 904733597 954773864 922275119 930450134 538358757 660191651 21795369 314333404 1417965 423956863 548560672 990607634 426661300 802712431 716416293 920326504 730329955 818912345 725405081 770249870 666705233 917253424 640926742 718985804 953460998 959066886 531517676 572361878 322583052 515130590 427761494 885598857 341907688 858762097 82874906 568017321 906382576 970949530 347696475 651566514 57843250 187739941 558568143 655930963 139201005 271162922 801229505 887358722 362167936 943021395 992830703 996699261 809136757 858097063 737035366 915283990 616493052 701510885 492862281 494218370 422524575 712968550 625610176 955243216 540479767 893656566 230464439 887180217 234054266 539755855 628950891 948464562 258160654 635897965 839994536 981090142 196452050 289991493 39313499 407239971 900657938 929761677 588391130 608370312 128200207 704981206 65693624 623895292 806823341 845421875 587407463 654363266 999468345 999529580 861129330 939819454 676669163 703891006 367491958 761422309 651518312 903313322 461696789 848469288 621643473 947616403 473710897 997898534 635537529 719088072 265882627 328463925 784492338 917068112 671488994 851981062 85705763 795873507 434492345 467514867 347745700 951043531 559306011 599644211 334856494 979151932 543759687 702278337 636037096 820908194 23523761 159743962 660090163 831151296 433915961 960485982 475850608 489455663 863285805 875175309 842441175 932542047 615624561 903009962 382200445 786249381 796369554 870384309 490569314 833266466 126118566 488244826 443941528 758123843 655785908 829245039 589602111 718487087 236441862 526211622 465241232 948435325 70751273 719827299 327157850 750593544 519939714 558187067 169599318 561418010 295264011 399550873 759075510 865233061 433952885 991204221 881055257 905480800 847065656 917401798 496591974 809340103 531870780 657092667 728883138 996019835 314100085 484360966 535757201 900599813 401852480 436565589 828621056 853149544 119694155 277530060 180637132 939964517 381055951 805475798 581804600 995865694 146583628 390052191 614472817 679614933 410018615 634091409 969548401 998828391 339077103 396931860 992684282 998650022 406404817 602423363 151837094 457676734 760780096 888647379 152178385 768553970 722688208 804912467 280076973 335900023 381581714 925312448 362986301 697780421 728278618 962289803 299522621 306871465 346582194 613154547 53627215 659810824 984146955 990441603 313472980 939335368 408833634 518240898 90160472 722033300 707383434 723555736 591871780 805270945 618783046 691483930 685817780 999075472 956909656 999285054 659252247 909684649 87943157 801528114 856919251 869036138 724627607 793490895 823325880 889380809 131060025 935500432 248968662 356788523 256275100 467320238 919851778 944732734 939916096 987433486 864784029 983652070 672613211 974119584 650026527 740303561 200651900 271242124 282794966 561335279 612296110 776398888 86498604 913840326 978245690 992926054 129254074 880438485 569674571 720643898 251611274 769453457 232915566 598368103 790430420 928808790 897748273 964391590 730541195 836427712 336074446 344077672 546457989 842306281 750509594 798418950 421498022 617225443 226049588 816914591 824681209 825548902 171582137 686086280 869655276 873962580 14955958 482685325 429976818 925647979 656568989 860494595 119886097 330190493 323053013 367341494 892936408 933459566 299181654 460469430 226598201 753204171 832741708 912628749 846971902 865535099 537077668 551532147 549397538 831397968 650658623 896440658 276416828 396766910 311264661 857850137 847827132 856757782 36913059 829631916 647160426 934245188 878158785 994953710 469042544 600056722 666487403 879747395 476729363 506555589 889659407 961448059 245741052 845762830 717935794 786187911 50016052 576971619 742449087 831130353 154319918 938930891 948297781 961765362 510325942 642227623 389535879 836317096 441538648 556834687 865719344 998445283 989912160 999172728 863637350 865224226 357721976 555127549 936201256 975403379 113723225 297737179 762274287 831407079 606396289 916433612 368530423 675094718 64414117 315340869 539535324 604550438 367717354 836863047 801950588 889859443 863904985 916870336 742701635 961759261 278950195 838270970 618127010 810757767 193769706 314954126 401349281 525235098 365973275 835509837 493230165 944061253 173909776 698567022 683138147 695870980 188196329 904515875 903984220 980175413 937065027 964113970 102701025 937808213 613126209 631091158 964840210 986466155 877862618 922661100 466922246 528085221 313957001 486752453 556464035 666527842 482190118 926290290 381122043 782463688 617457327 768860309 476073327 553689627 94139861 789159534 284930902 933836263 833475513 972695149 503192647 953805417 849363923 895850387 400477318 689381094 698057021 898491539 842893072 877252463 510913103 644045552 904094771 989997564 288243328 693804679 924503165 929691272 428863267 821314393 434260 762396314 576331209 891442761 436844547 669682300 103936412 909159826 702041794 871603273 594841034 649037810 427336744 467279543 619861120 930445942 741607315 853804561 590142528 601044345 576020675 816559851 444961572 794929818 623556862 905993849 654747369 844713078 425584065 604116959 407194315 954541487 723731821 729444767 604342381 961442740 968588785 970935836 696006517 992474633 512895137 618858630 596287357 955998909 180851175 761971650 337960062 529385682 496794342 618932387 922508225 971400977 663606165 846937349 612249529 642864791 912722531 935601503 324487003 398458628 745527712 948657899 278326883 567204885 517793608 528679255 398797394 573480497 484734440 522581872 154966559 640256483 31128086 635138932 693866165 934112714 264614014 630981070 143388511 635662639 855632484 897677785 577865113 925147165 688924658 944377187 918653569 949385494 433017244 770792930 961846587 970764892 150517398 313189778 447249781 567093023 523975672 530379204 838718100 941441276 213486309 220869723 707051607 968213800 554389682 711017178 883987426 978183896 198030016 657183954 27852640 609455399 207910611 605782980 166443975 621115294 461809396 542407073 717101742 917313637 234167775 637383326 442315053 630670622 226897883 558512651 504650963 863378499 738385371 878058321 727330673 814929958 250582544 451048220 833079536 834267061 787348170 840406182 581530701 744812170 484296456 867023590 580193480 650995197 366488181 782978378 473276085 577067805 964733536 973981892 527892036 962336901 554877140 920349285 949980724 966048422 760430170 803808644 785455109 950450274 274621544 359067071 238299873 280570730 362481224 578343286 294699098 967835892 697949484 863095000 982995742 995728632 324266736 718025982 594270564 827494008 428233193 682969873 697574549 840424779 383321460 849495855 80753325 902565994 920506607 993665091 852436082 952749682 411726487 760032646 883105218 925820959 816193456 951656067 810035503 914123784 130929521 201685600 98058974 408351373 610403592 983441247 657373459 889666791 200669956 347598790 80656569 130753680 994374815 999861108 877576552 914898710 512855268 908090041 317733074 877658877 271305314 588850589 436983057 724713357 253946093 976963970 789386608 995651176 871792794 986869759 874823584 983712093 36270894 485781192 736182942 915825098 628721837 973593172 624458029 643507317 764060697 855324853 92175902 825827744 782110301 814379564 629245219 990561689 333573612 380801091 273078200 369692912 649659445 743736324 930372380 961628301 328374960 579609832 240528904 710306104 50968334 989425531 13351758 736451536 499946855 812705504 170855584 830148325 18915281 659497993 845672864 930936270 88573920 529423924 27902118 725004254 637108914 686405741 79038927 835332897 672941741 998159466 196252964 523030583 363085431 411687530 927674561 960120223 638801885 919262532 696818841 792275370 520679547 764479944 89520104 675910196 856472405 948805239 693781895 993049148 408592434 768844548 612476341 980590328 4234670 911463303 152653789 226211956 367441853 906245091 653347921 796763068 907629101 989293806 296209965 325937687 264381940 843535501 757999172 838572628 657695690 983862668 754932603 761593720 366767946 712681582 936291426 950009035 984532995 988680867 169335671 374095618 298617526 687688867 843302765 943573530 11084105 513076711 224209898 520785246 32740673 35890115 843041924 933401365 38416535 365091539 518710225 866068853 858837524 869088439 991539312 999222508 584644958 665421856 684826832 694185044 717908970 943347849 491610131 504763277 648599407 672932445 379050479 918100175 507151193 691901051 526708844 773560585 495540857 847555097 432540918 815583294 71465629 115777724 859088376 960176403 850079076 860451195 21249513 156811866 151866280 650492124 105536356 725610136 727439670 990471927 306972808 386310417 79426857 302618058 391604330 777822359 55913710 458728993 210707925 797511186 982353559 992011691 489326320 937340834 538303517 558893287 214064460 601039249 921882889 976192779 614650331 906816052 757331270 987048370 339955396 789430862 739634559 858517971 632371016 995521095 262217948 664176885 631384907 785164140 766079034 837763649 580744858 807093107 758390243 945659180 684709758 915399462 571582446 927610988 754945362 926117506 328354179 342083973 600959421 643127651 462992390 644601671 142386955 803681360 434465797 924149164 754719113 804198432 973028491 991777871 921408509 955239165 849234464 870187139 935382369 971696739 468308534 791448374 520321016 838987096 875035214 975749586 1553391 165460067 882564772 907096032 195329919 850075472 665576689 880976137 254591919 302333933 609950221 882387504 696359011 985011628 24618454 653835478 448281877 564811647 339541345 398828714 281092397 669214424 74224515 223772141 483460955 803897628 819230594 898198084 719467208 810911900 292848723 777673651 603714207 758225722 267752323 904923208 526668399 970624573 147454653 946897225 844365514 888439431 434502345 776844191 792348882 866539501 986209176 989579413 371767887 869844925 380434114 916967162 205588384 653339297 605796059 943077214 726001397 975269741 419607740 953403377 4109966 563672835 820142471 990990750 86548035 796742894 351341811 524056798 19583697 521848869 955034573 961685812 651461169 977948432 663304244 996898325 47936264 197928675 574394380 818660034 514821568 954433325 938262677 957161711 331580597 581869716 612027771 696470367 776179709 964220358 275158069 747695913 151569486 931824506 723050233 944323730 708731277 904249253 242900504 867489554 567060410 744131998 507908125 549760739 670823560 699520474 95746367 542639542 352051331 400220054 910503480 960379286 595007697 798875877 584069590 585363677 811278370 873828142 910731510 937218407 872136966 883650244 764417161 931154386 809217802 949758932 419056264 665446108 41771735 783091581 550547374 832094880 318572896 334237571 679546323 748386686 914740865 992118423 794199332 827349192 372211829 450240500 656541766 892291119 347205100 862377522 15820207 854429003 840248772 884867663 870658738 895914739 235251297 368742150 44665494 528070032 994484795 997987585 831008445 862717514 173069805 567267454 383807294 918720200 236660336 836031236 348967860 579159084 908819464 966148030 871300749 972649076 629196769 726687535 602850656 662576910 401607913 796548972 132221688 404501310 508485952 540558384 948034152 961916569 600637202 794760618 195857234 222450743 913943929 938792069 921732918 991395480 713822732 872060584 749683959 939746778 972342834 986451129 39205504 873708879 432005325 741594556 146445971 829136831 676944139 840777232 77097925 692892315 583130423 960845300 982673099 983135042 767760417 814258656 68050909 686232692 645978509 896976713 872541959 932802847 148763850 806925201 924783148 959899611 599338992 782179542 693134223 914583245 178744997 639653505 896487163 925808678 365935658 791059534 681310234 974229620 126199575 763420201 107039333 682884564 859319790 925057462 370855354 948612657 361190972 819128778 799877005 896813909 654626271 867379385 220759188 300419249 436472461 718572682 708752646 786416960 696040358 986417124 242100452 260576422 986571280 987832364 141816036 948551976 293801250 774540731 665963140 894644210 792320428 802690262 229493470 281917258 980441136 981615040 852716412 866931937 716409271 782582401 327422411 930637946 945759628 981798347 470954136 978618530 5819094 750849625 426116946 826218859 343505347 598487719 693141703 950597303 456147249 658804220 86443009 942211952 639400049 748948712 39636123 265440510 878296997 944407928 702695395 922671600 152828399 653175357 669492677 785047430 558642513 633492142 37065091 721232156 990186405 993142759 233330978 359825045 515224287 647249893 631181507 842810349 296867218 891551291 272899463 943210253 628965509 639636180 213661225 750713755 492351298 885317357 889505954 994918650 143932251 166410748 784729369 929601160 979741610 987801646 875398946 890401587 431550783 685990040 902767318 930574867 314584318 454155396 1469556 164539050 388326635 635211408 223252075 868029955 443515637 600038505 790920263 965112887 718565485 891443075 707262078 953307236 289037097 654415037 630691545 754007354 436756381 502141522 638923277 802850860 805921 982519903 576562694 836168672 689261770 968999805 49628411 127798733 354215333 966660165 43194696 576750425 592936596 756827939 131701554 278452455 379162151 519001626 421890581 873059849 706061938 810515809 202220998 399444653 341403505 552720032 421013134 579186317 809658029 839141719 551948744 623986263 70684997 901459040 273257159 638011862 722983875 809625487 390619714 767695544 944313407 988882234 222930474 791486387 233092986 874433215 266912487 967198946 29644394 417765768 913486393 978198835 579918791 677481940 771886187 855540206 682054564 883703424 82086927 367520360 627938788 698581761 90948994 280566298 195546965 345702582 789832884 920867134 119386506 953163234 663511470 924791929 540190787 755152936 803709250 886667605 232021935 422275111 135333320 182546135 797786340 969719870 454152621 993148379 856928690 981180890 125350763 643547134 259614988 918813050 991451483 993656214 384784893 618019840 942436857 964081917 392270206 803101775 424913775 928064126 526099401 567487860 123529954 601394477 739111081 758698694 470020814 562767950 45816455 565890732 600770093 850372886 496496064 848754254 608686116 917752985 48791876 652151291 282036645 552895748 736207644 765608858 213908720 915355752 123741046 692266566 2335639 51854056 477705773 553555178 279340883 667984102 821798050 926730873 789311554 824647095 349346746 851301125 993000858 993415423 914085057 951830754 400958445 481127535 365215937 603866308 739450832 817097219 922878011 989674963 886990676 927862692 366868020 499928301 55191173 343818778 836368038 973702506 406196572 705423172 350032440 550066738 223239796 874263989 564331589 634405575 831777319 894466024 302497748 405370299 10762227 886641207 946105457 974190102 960744135 999475452 749391999 811731498 544430075 733639919 852573998 907829554 340352915 378739671 33541070 357521696 651917470 851512561 991029076 995870957 158909445 565286551 275997989 946579190 296148500 575131230 252058186 666257385 113197265 817421188 182272564 271175166 851224127 896880842 800151055 908018204 904959839 929129910 12204259 778096844 951311550 989239786 254055728 618144161 171222426 806477405 241891209 863421999 856180915 971739026 132122532 746952529 619733603 911786769 144646964 679974434 358434474 991343654 925959535 946893335 713061332 796029530 10876611 610806570 488514131 532188450 636273495 764421846 441482710 788048313 746454228 863287202 431279098 965135545 976103222 976905812 841591235 891661067 215857324 826132173 531920696 591092203 240432327 919801766 823690076 996847362 113620922 770532256 957990937 963550450 584063764 730247826 273059 605025573 964000182 991314621 977450867 985017659 62106759 444318906 773936872 965205237 540939912 866978862 161818231 270351459 829769244 844603763 873154908 957702522 866426515 953072392 680221777 881530180 252019751 857321402 638801940 680247915 877221409 904408760 951135523 962160372 965592245 966199030 622136497 647389384 238001237 455982776 965169931 985286557 404177314 884147908 453170109 550523796 599159350 918577016 646673199 805283610 792041618 999704025 190700874 328265681 834008434 990611862 650557092 955045877 728215458 871777790 290585561 396483472 989165699 993685919 660397381 684872418 125874740 440815012 235895458 276573415 519630737 861856504 297202258 808082162 733244348 799424368 96219576 812132905 684242553 718190137 573927255 625478137 343858864 350748627 721556929 841061377 114102746 628534185 517041335 587320931 806133759 809723899 741180059 757991391 218236340 980931356 525936907 999804338 513156554 617135584 688915909 924142887 636959742 810391264 542834322 881343889 669707872 964052176 19564717 795715203 161683969 783439824 437589838 913228124 720929424 985381332 283730384 833165493 265603436 550274716 669399406 898585893 872117430 927282468 704581260 785004199 92026572 533132690 65910819 971595572 732374911 954691125 606746371 935856221 308025155 919976627 976272754 981371911 775857281 889856717 706555187 794424387 106831303 667064852 350045380 969465154 293643776 311210852 847107231 937278976 708504022 844477733 947578989 986530558 254850689 503931230 882288306 895904687 377463010 455719344 77911710 203365597 578171356 882660540 619688779 622899119 148255502 686598628 557434499 962806025 606727872 970890321 664921014 800372995 867265692 888929794 946363280 978307733 177122354 702720445 465335970 927499778 726188870 939115962 36806757 196005854 290496862 827291618 984929899 995313777 354086425 668657123 254584154 716754948 233320422 366739715 40904527 993248976 80126928 472655692 455487017 542404291 711697550 944378764 163522999 307879001 43502880 878953111 587561368 714738449 708576793 752693100 771754922 991512383 348532327 770236405 707457587 902622903 883199920 909453317 558395082 618345135 956163476 971292834 372674361 422062133 678045429 903397794 486365912 768937081 179817029 812541231 596349652 727124523 348091902 524699123 935446698 954175729 322500084 672802808 398958824 971474490 863322564 888623883 812285724 993434044 680423170 865984664 183345720 881151754 754478056 970706433 815907614 837200149 644517178 947171969 995236882 998642311 631791379 698940507 463179910 731870591 490495760 931760648 874850519 988783615 299363102 706552944 939019719 993288247 430590599 722312665 510413169 757289026 111484387 278044226 169240925 334703335 348788063 497341805 794600256 812380333 713928520 970611448 667909026 679956818 4119024 93813537 552867843 684474714 688310347 806072417 44211564 482502831 340347071 768528045 351231003 772427770 564667777 671756824 551648670 833780669 773014574 932089986 717346107 821530987 150536466 469306434 323743408 585696513 22579623 411440880 64313699 217058463 119734056 280069356 490110486 602333705 311507820 820396581 931456753 995557685 621330834 634332634 318292183 940708763 797277885 962580051 866407473 944329155 899089157 966999975 66781584 538951600 555814402 859542259 158001972 987060793 672241873 685983503 272031434 836675908 332053011 723491066 698422109 872457993 99468136 905617222 457512879 686648246 999464397 999648170 442694880 514039189 967892012 977233146 16105443 227874238 93792848 932052078 489880737 941904745 30611213 166722996 164311701 830891448 978326797 995716237 4956962 438853267 846610845 847712580 677178444 761931545 12190892 964610292 825885039 970111980 37582954 527172823 511323961 682988332 375520998 659862853 867223776 871512488 111877173 430732017 590528303 827442758 320355609 982314291 55460591 440587806 740989033 820987044 992144851 996731325 706117600 720751191 651497909 959596276 886302704 973701543 152196909 959810378 349988388 719594492 65270484 153439211 762299863 833725858 60143206 273713353 620893316 836179096 726410654 795807809 73525561 940750247 423474182 972349417 722195236 926070403 600763262 643192443 733476082 986874876 262096861 386513799 121645117 199412122 901439466 937621151 895176002 964171438 156690932 638178762 423705669 991651717 259158 27332484 264214045 273130987 800988789 972084015 987024812 994460246 908553913 942258888 232698890 719230701 734059501 815805629 93968156 347140188 334491149 441103800 887000346 983517272 430844264 991844003 904122829 978944079 673420651 967716502 939638441 993855436 33866620 695928537 700536929 717931375 669031152 784296621 173312572 592471139 895823544 917509872 194261191 933059310 41362399 348258194 408387079 859202436 978619091 987765187 699524046 905402383 656546652 866904082 798751657 816136126 960195319 995539059 505663158 641519033 758155122 950193892 810535723 859786692 546195348 993226165 384397278 445621425 909376591 940426004 54847146 420705292 175128763 924784981 413455007 752678135 713892908 760642964 501276869 649091210 589349913 640468366 915410456 965804781 150517743 191885994 982228682 994835792 9706762 737350504 456276872 639505417 94540835 788900549 342940292 784004573 165473038 751157283 89502868 948074869 681167556 863508184 306021736 350560392 292266410 768958126 53670243 240415946 944915541 999529812 130276584 634225343 327501885 950194292 742156965 843386105 930076469 940200399 695248893 817136557 9644109 778060601 662198294 730404905 789136950 792289913 38538225 907928254 318950662 757181009 718771976 844011010 295479826 989847524 179283028 971566163 643808274 965259560 746794277 957391747 308419194 778074066 898739405 991756630 442730577 757737373 741745502 861440941 238166553 436530958 542460249 709124477 502256610 929388427 913097140 933463081 756313594 921667043 986232285 991979764 107825936 436487895 63906620 993264310 223088818 561990914 950439151 994795848 851375300 870446603 295859260 690003394 581104698 721849348 139539068 270836159 499034293 938121459 885255219 906815137 929105191 982031779 442548389 855360468 496694521 645454158 260705471 265741492 644878075 735657417 46008480 141850849 284265424 706611873 967792668 995210764 587786505 840192012 590059198 995317286 185043394 831603019 736569264 855672804 988570532 994941324 324482532 771788474 60934881 121916198 154841167 859206549 149699847 225507029 699936875 865797541 401900778 909817533 991258675 992679642 612936060 815502808 593157751 766686228 94814904 666950598 679752159 865693668 767666929 983304454 112147044 129533659 673149573 907270113 639838658 651871858 122010434 603516037 883812138 994161685 336815795 950566576 605315348 698804703 334542758 875474602 945124860 967013971 218183414 225680399 64844149 822595058 198413885 382037007 302895053 690563916 750816556 826205472 417632669 512260581 58157491 522037815 508035169 626927423 53518225 933188527 164421199 348643086 532627228 603310873 964116487 984625506 911723457 919918571 707906097 731420422 170669260 366467981 54946939 381181518 41553016 287987667 77616585 293963726 696106540 720094024 238556718 268837110 560185750 850480743 33015924 186852958 421903899 774617955 875777221 967429083 748615299 970869005 128752455 946889629 881395845 888592644 384644906 502921267 155516779 796747698 147939046 841804345 516495249 697880304 206980248 895095810 261333134 560393510 784271871 835145729 89446896 789869829 203018354 788914612 934803011 999211602 757398630 761155434 38964529 244431156 284409160 811006747 152001547 340096891 769433041 873077088 158344359 861372218 774607919 813491036 255228783 491961618 726472736 737477669 865016283 872913918 243816842 654871536 805319838 898351430 856741114 922756169 130182835 775097976 968704947 971627922 461143545 780424877 356708067 373149530 325099284 678444055 445499740 843546034 300796384 613481673 208316294 251687637 831611831 967893033 519537578 547231047 449265539 817126365 290322064 958907284 901676158 938102751 562646564 637516497 998376348 998941499 911482519 933809065 850913143 920469791 94025317 455957367 113493034 834031503 846349260 887133838 842076271 946118404 836934966 948375386 260229567 911988633 901715465 945216561 649585628 926935714 405451958 538617026 525363154 718015463 263036815 980913564 614620402 738785634 567639133 861696056 56065500 311274093 506107971 720707971 939902092 948393553 67205278 238932590 64170531 827247670 420901342 465995202 255283529 670285199 978758750 986925939 870532101 885691981 87888351 565330050 892619876 931203802 381613084 954043691 832515287 920118417 864862398 971813675 914422093 958447170 415900278 738186943 614637360 635725959 882876641 924621012 596631987 742311005 183957099 467913044 303302748 427598170 294167860 922318255 567624730 649920427 548828132 986978963 512535920 947847349 574205082 857147822 5846904 616302130 22287813 552799918 815611554 963312697 577560954 919636247 667763204 730569876 753010615 998852911 590163791 637217299 242332409 664176767 673768663 701937238 86675178 122499839 15325612 621001615 321567991 605457715 587890126 832998913 522539818 567944122 100435753 926160668 528469875 651336688 320318125 742806549 614476953 841614656 821786208 831609503 761026777 957578958 530181914 942836350 491091522 910489909 546071670 994932300 364542113 388677237 122090091 586603612 453920604 573217013 317901226 565700077 961564340 977884728 400153985 477257115 953749120 996581571 303931249 318145559 884027730 946620515 233233123 444435426 303322976 744465053 333710964 729382406 921182536 976937514 901439000 980704736 436313427 654652093 934256245 956856267 961593288 993985718 797047696 992258438 538547846 543581340 446373810 672787814 598325843 735184669 639133833 750422869 848178204 925707290 585493089 756601739 543135799 729524130 344961272 861584376 232299490 678290950 345201537 569811842 853842886 967899000 937798690 966531032 625518672 684306998 685702391 889502973 518952347 594857118 475469152 583045396 822327487 990968511 590782285 692360113 996410475 998869340 538523133 793939993 149008991 713161286 72601864 921282849 826654599 851253825 277099346 893327427 260900824 653356458 910137832 939284947 901225767 903963673 505472578 768109951 402172656 715469945 705992584 817382525 562885432 857862972 937271657 969844174 677450996 881847714 749284092 754881935 808729130 868301583 894884647 905551149 198397358 938805395 288897709 939816800 322339994 780305431 283803795 495329110 556753700 774707627 520129137 779922009 722009797 901658607 664395008 785155760 576828488 595391126 396525125 524078490 817788806 904905280 801704416 909167616 752062063 838049383 660811403 976114836 325435508 574799637 468402504 475866032 109796438 359798126 904225718 920020067 191086961 963579956 812559419 846135509 538471705 758361158 213389463 579638348 298089962 439577892 432790973 579215712 706227107 764762009 924557404 963437748 699487914 712146859 872877109 941016101 169304506 199951641 110673254 213088518 931888056 940158766 621732586 876507677 412274887 478248106 130048624 623964981 568915216 996615542 504056416 874509466 273172991 703340283 46175924 295805462 82501862 205197675 301816018 730416529 951761721 970940211 441625336 972277943 122263477 474089173 525455471 801855316 438599519 835500475 562782817 954986600 872889182 902933136 328937561 859691770 691481815 863054215 844286617 933322375 842461653 980050515 508015928 524699334 627078211 720634607 418905860 857214842 905921825 980599915 121892599 417166982 711012414 849322574 975475326 981160097 306995490 483891960 731692524 794557266 987496105 999896919 359416441 616737772 241041992 741883638 370784734 493918019 467408849 626332831 418815699 639292303 620621999 775920339 698062719 971620304 984541504 999199077 238105457 692317547 173765793 505343086 815697767 994782050 613941030 911644134 152776845 827562974 248995931 768614800 134717143 160515565 974178717 998577690 134801106 804973938 747935487 946310207 576260226 577900702 782308682 813516167 470742916 789605301 985278146 996736714 82228979 134250773 638086877 946506114 414253726 454292636 932080888 955795492 730546278 904960566 631557587 899293130 475104277 743203350 78396877 779813529 292887069 679980578 608956264 760077543 47406014 103701292 785200221 960686775 432380496 766014393 340970111 541207954 204744390 637388575 584525575 667283392 267159657 818724066 941794907 967287517 759352600 814946330 264598244 445119574 73945706 529128728 402529755 943748014 35111952 517870771 271009018 817129675 526452060 965261103 381565662 527983476 18762395 858049555 229523699 580561642 40878324 740439997 196873435 238600204 50570650 811624929 943072007 961064782 526719894 940281555 672943463 786927173 652383866 787545402 706795626 836112036 126726760 721131736 511731314 717280087 291515334 439694047 746814650 888322233 678925320 838060320 960205932 998355197 813303754 866097566 245051952 495426257 129438059 434349413 342942590 818297703 640759783 741406158 310962023 863478489 248841328 711257777 606468559 716655415 384177341 643081969 778850175 971427192 171867717 300347279 818838998 997604834 163939500 825160843 688177274 735818767 654018276 752860114 470709016 620241611 108706198 363650045 842895594 853906990 563190667 799026000 769212801 893178509 950906873 988864059 762791976 779726262 932803937 954906620 594572194 890971554 720688851 743425710 652698964 758921026 220208973 793071940 95970595 162754793 511307257 654389694 720343695 965772277 614287145 981577811 190777295 662387869 97872279 941641401 940910473 944274190 442226348 545342607 818149220 923848615 160272250 381137692 584232378 777750984 276351366 710904819 293827837 876239971 263252819 330971901 317766741 942927938 843505350 889058562 827584744 832215462 549968065 753654372 392040530 791504696 901368166 983993497 941653362 949017842 575167373 868448527 966965055 997573726 792150169 792457762 995809469 998544723 287302022 520020105 46399451 92659760 381946366 931159917 68775539 533035075 856157364 877514795 115519941 852671448 870270037 955179310 142076377 402987429 726071882 941885099 913287774 970326219 957813274 999163497 131017539 765048692 551309754 748959579 800797868 816267227 770526668 912466445 561094678 865180131 662283912 737146317 31741228 548795526 745537382 928063114 73275006 414372280 548506900 947217257 111622330 574622409 271263328 432844551 334900617 850694360 157220375 800204186 718620626 764092110 671013651 986014712 707362758 838415686 443834785 944927680 628338418 934264177 781051688 977245651 765396985 839212518 209235369 662447397 551213439 673764355 292625093 655977047 813536776 867935791 186776596 557637060 825351510 968728478 288471316 665489334 754223705 821317132 977677621 988669012 77068904 231092185 497600157 587927398 794041023 984891748 518704256 919059080 904081486 906818517 317638176 410684031 587047326 983655590 274990602 507312343 176069227 606508695 691341033 857918827 512511852 755040462 400836419 920184729 634240179 721052625 566278709 930018746 708354874 923712737 274178399 722199494 687988614 764104738 276010431 698002146 736076286 754826538 401691375 654907045 254021407 576945578 652597937 951957355 73783967 679122160 358756710 528948862 152967136 154488235 470394331 865844210 76152804 306800464 222542682 652506552 272999285 869254481 515739266 789291820 758429164 948998147 147363577 818359341 970477895 979220364 591597035 742583692 566243744 788830689 607033058 681304404 528508648 638643163 407125517 875079498 491865845 666613385 6398488 901441587 143237484 452741717 41628830 314309028 167455885 294439356 45849420 126618846 480298061 545841078 769373234 869849288 248497318 588554695 857495306 950548982 923805559 994668493 486469602 535997799 992999221 995496681 951988681 984624179 596742738 829823759 333689878 599246764 697927404 877478085 236406843 251625857 811845301 998358257 134268234 268020383 530527037 946781376 848536142 959712298 528711430 703057688 283139818 355836122 13666309 361504280 880250402 969683908 991168368 996844369 555549910 656121702 84874959 998551906 120447192 924296365 976919160 996843359 559593190 585837398 784225294 888326031 292063964 336262257 986924864 998940713 909632642 970099915 143080616 343673588 772745840 845339480 950063467 957013344 966826229 972791485 62181776 282315695 941792438 965609512 754141467 813048979 618501977 946877469 673732490 953145218 11433766 290344287 773858269 912766841 376318128 881109235 893634516 928717396 544731081 778620002 331988703 682189690 1261238 625690466 261882875 491575271 349187766 698547245 139888897 311966553 699270982 782276095 572598078 828806231 837545643 979630714 398179433 671685986 635524391 718558088 430629709 488330052 227301400 470772695 606905830 839304626 51967744 218039998 834850906 902131350 369562699 896717865 398235278 640267939 135612601 678569904 3237193 885552789 739569346 977172035 55963086 674031418 710133527 934966715 116908197 939488626 112728576 232833057 187206565 582144009 592560664 943102784 774011811 847964714 381733553 808759780 231472788 722719473 687091181 749909642 362802608 918625238 269204021 948307047 610757292 737570503 831442563 837982833 694174302 916411731 820726670 937140539 611245936 648961757 626866399 816019521 240838291 910140175 970870914 981445862 962802951 964997149 113043560 524453954 349324835 988679293 882554586 956366880 725496678 751187689 854572583 959193151 895109907 958709580 947692512 947799040 142908351 736429635 929096286 995683315 689455335 791190926 777771758 866408934 641596764 698572936 270629337 422259352 163214535 777562847 183343508 386024903 834159349 865892448 101642471 404588408 961910422 972360003 402845181 588448350 343023319 847891051 110411270 233465383 562547519 711337247 180982582 258768438 346296881 399539529 921413878 945743760 409070662 638344676 866822524 939219463 484360758 528035470 450090817 793124791 560925422 810475504 882940433 892789933 676156787 977177439 398676352 664008909 578672675 953494819 479756875 736698433 153316225 695938470 13896803 345272713 717875651 747259483 153336810 753637520 509640223 748395101 800291116 941845882 713925007 810410357 896596012 993773504 153857885 329094075 386844329 816182482 830718498 897434662 30511747 937558725 331460526 727569165 825233168 945530269 916662141 997103523 841776106 902186627 424855952 739262186 535588877 957361771 268915923 484487263 367624084 721330733 853212215 996619117 562622042 894792829 145723181 756852846 931421757 996355084 793606433 946744050 739659549 802033058 562342693 917885747 580160694 611877999 684569703 900284393 127239616 704917569 858711416 859351964 923153837 944726235 106608675 728995785 715910242 758819069 606290419 638843440 216397913 542878501 141921100 470071949 519990571 636863353 391029456 798899818 717814597 841875836 417991814 714811772 927865064 953953646 912352939 944670143 291130078 635903465 824202113 850460868 980154814 985328755 991463060 991628467 451399496 490038539 488507264 858040917 742299789 883219212 891236679 977485111 709962046 796918726 820712988 849325458 19668925 737867247 373646325 652637476 653429122 802418575 423976711 974358329 45424849 578451406 362798811 497497445 228810649 511208264 638558925 889630978 340810014 350807002 514966616 722976243 535054223 542727376 286326383 483320398 689329166 859271814 437651954 685678049 439971474 576161983 885018632 948472984 319292116 482307637 14059814 316289245 938842592 978966919 888739923 972456214 583842142 667178640 401693081 681482539 306874191 979528166 960119299 997544466 695484487 941329518 338314116 826057801 205205469 560539852 242874807 712012272 834603930 850387653 693380768 713559371 575053956 788940708 510320380 526744340 864862489 867947429 359524352 555930732 445092693 828983835 305703256 915720497 696949782 763703701 362138647 755338903 466988612 717067588 237297853 860995758 717671986 798892342 735298494 941573940 333065673 551215940 713801903 769901307 42500977 404962923 454808621 991601041 387347989 931209566 469340872 532850574 889094417 917050842 622319608 623395271 954577805 963969130 6120517 656528950 286804775 972905803 603884317 901072889 241676514 744908479 152999698 978346207 562917889 613577248 955277845 997554172 719554928 807035923 16573564 49480658 932783780 968606649 627732511 645670796 413528968 906815654 705648050 837653075 889312085 908828918 429094456 702231765 619957578 924638515 270227984 453160260 345930104 454454725 964706440 987955834 19580419 848196361 43839486 800742627 351247757 684535166 595260914 828515290 105311692 505212622 125064317 445717919 687136184 738033942 385478056 918984121 371733403 659126683 189108222 917144447 351036366 962360743 801364933 957562955 79903887 244172552 379531142 477784862 537458615 889595250 659829894 820039221 590292976 857532859 673975034 948657948 336771872 860248549 628765188 647080649 820617053 886464785 136310682 888062941 881143852 971384711 528505517 873348965 713736546 773859672 16233190 698448149 410227742 820043367 112781795 544493233 377342277 675921203 828192406 905469802 359989864 540711228 388035163 997717226 196754571 723863039 372966473 775014111 783613122 871115032 921647606 995841219 948829436 982680532 559686369 567761291 662066728 881118236 149517435 373182400 762766248 845434602 557802954 639382381 391400726 452131776 544378575 788203073 633786910 748900879 734192303 922462390 448576998 487179434 513376783 801080646 40762669 453524513 268396771 396691003 675792707 867875273 238208628 636674751 343141065 622091666 563451516 675466856 493907830 627870229 478157968 630726022 435152067 890172054 52453745 532009077 375403468 630691515 16161648 419225381 745600280 799168195 588293551 669200747 549662459 714678298 589259446 860122992 889300814 958475612 760604924 850108692 346131030 452945470 871115021 966563084 694867195 928036289 112317727 259570253 724029928 967812146 100536914 575750211 415090861 551409945 228465783 591373885 40389344 466643839 968509419 988284480 57983795 221878542 205528387 430832571 725713284 810209899 344644361 613861115 57588406 788861837 863628980 907122730 575577276 664516293 920322417 927139525 183022832 530643384 560482380 959248637 411238616 450910177 574378040 786785347 481980247 797608093 882583491 943552352 111921572 911853100 983836635 992127040 920983485 958875588 30778215 835897321 687936537 926761516 928492940 959485449 837508367 858928249 351988810 459886395 782211001 846949781 19232106 855887557 35681426 892030765 993650600 999388042 905229268 938313342 350079689 662962271 615282380 712662336 671831572 766834341 786039708 826061571 764625781 978717370 653356988 751534560 419200117 982245093 390033925 895159771 397861347 551048722 199225697 695439798 240470046 543274669 38676026 79155645 172410207 712905846 139510450 934332593 929367065 983892207 460193799 919023851 711358991 936328795 619311207 636242515 387410838 493171467 351767842 808354795 135936267 669899919 202211653 263698806 146942840 722057650 939687279 966172620 639973412 932208230 343049543 545158327 275962682 812105073 193962658 526053117 747696451 940675892 342814157 951394736 464589056 815525035 140313440 527847126 692280559 947622325 227439369 575661639 174101837 308886979 884500341 963293728 648255473 934949746 835726620 929937300 554079708 653578400 286453698 638144528 392389815 747037752 602787405 869831354 519464983 695124649 555785218 938629821 573160389 810988694 619574894 652988801 751950574 793977019 142545155 877769920 303357759 733153272 204583082 505528328 748771259 978947671 476397235 573371397 528431119 729288212 883216050 996660871 236113161 610614824 720950606 927246004 962273986 970239854 434779101 846996714 392573589 435701126 684826284 991796846 512443885 776745474 426955748 964159860 680280773 781978718 638371806 940812258 913418676 915598221 466134244 910851857 189927373 517283113 167007212 706379535 410647936 516653368 569567955 826261448 693252650 919319746 68012740 853427241 140277801 272615681 203213313 271693861 998780894 999659096 196881267 323813638 413161053 800006583 300860737 634618462 445812327 777223158 709651456 834207889 790142464 951154044 487377881 936475523 786630743 813634745 513604024 951566822 975838132 991610727 758167828 831988690 812786379 885825548 204097643 279114636 353470386 941600563 980261407 985769617 302465161 330848512 468949720 872249697 66823272 949075863 700577935 834158360 463343643 941760886 414381553 751513412 609996688 866707402 98056695 894944505 193832192 992836042 388045731 672670144 906936329 974135768 176175799 363013403 183548458 609680557 8229802 96459381 325418747 813471452 95251163 465394713 335222331 562536326 478888256 515103035 170401573 427747821 31571876 591457463 91418878 517401307 579178560 782963265 885994967 956502025 532791034 572401601 678368151 715764430 853861448 939195703 221491372 938764599 509021788 771411487 796755478 978585190 12956706 572287590 174185593 690919871 982722564 987708837 316254512 380461620 974106332 984750322 580603866 754199353 354134585 387202032 944595183 990719833 430044481 996866802 901051790 921314843 658809226 744943754 350617644 972964933 551972944 990194912 7008451 640355833 937243753 950276336 262605392 805953828 725153109 926848011 982048869 999425489 264936790 787448870 14068963 279224948 955752051 992407730 670586405 939347021 222536095 759001697 700727230 935179133 659306274 848725089 74396691 110070783 300247310 920111462 886945529 960511075 860786793 904274274 754954548 790723003 720134901 988574040 613077227 920520045 496403183 674233201 254065362 636418169 193291013 257496734 505962250 986029039 712416443 735129754 456024535 645145656 997046869 998732344 312359760 562393090 340359499 961075406 961390550 986397105 644378188 864091607 579904206 909150141 253977475 382417529 710363995 987605156 830146184 988466663 439150372 651701523 345702159 930476880 841555437 971418857 12198965 188594975 701465051 801420719 867732796 868502688 902763373 961670266 597951832 749644842 140313260 176611604 253914992 343430050 710595523 960995480 485516689 581980072 909615466 979758093 260018382 649296303 419061133 547756945 993288119 996685863 971905157 991018581 489556818 539180225 568424162 896502604 554939604 898229508 651667680 733373616 770033662 835205652 180055637 806035614 622498431 883302236 97427778 262475328 601545944 888602868 159478881 732513834 377341653 590479843 799331531 858166923 596114104 649879869 846795191 949107602 957201295 984382439 260465850 585592844 724552257 884101848 749065070 977381700 140785747 170999167 614585153 953673896 316371120 592903597 486628692 683904221 778065893 859540105 795444355 796762392 618528957 980352831 172009869 857001016 956706627 994855280 834127364 878379288 533980398 615014789 23273338 394270193 46458726 892084703 183270257 653891938 189619844 888302404 710576749 796704007 270976267 676908874 659126305 678107781 854204437 935864566 697512895 785194592 809149749 813049213 778431767 892443559 303034193 525434612 320398324 678394690 647127356 875226304 236557516 941682523 552703996 604439326 828151343 925318105 222923339 344965783 197827382 291168985 32266416 547218205 765990534 953780523 213895466 331539031 782002681 989688095 730158325 872662087 894243770 938197156 182952996 586635818 518889294 877576031 252432982 327845902 816248356 825929348 82566026 336410392 665668495 723416133 328417196 555233668 316125013 915036022 127277011 901501943 390447017 461351547 89305929 899005418 405422216 736205714 95699801 558368693 890732265 985113727 582591126 884656137 960532068 999189517 920887768 988387725 410780893 603559245 372193086 931525459 731427166 972873935 963229600 984166455 35834368 845868772 210365746 541742995 418186991 802225390 105891875 437017099 685977707 984656373 545120707 556074502 805947356 913056903 763517460 775631255 834545130 869407166 17489438 154390088 309566535 380404515 467162856 843330300 485809007 806688492 729877806 767282193 279857706 353883876 544220387 909384921 748251412 978985236 1164275 439078925 362815190 540681128 602355073 652154832 959216139 999732167 553743337 680066553 620342554 830302212 432847394 882817649 590165669 802253729 185418381 891746062 805150883 915680557 922508832 976930219 123455934 925669646 5644614 887313544 659580768 987093797 710409074 806243127 891582820 900535381 782126637 961401081 582950935 901158905 57143865 461123887 201062219 649525160 536817299 832110602 961234290 988727416 774045375 787611504 321349838 855799934 304028669 599680343 969718958 996340295 514967402 706065341 61437775 74369115 601139394 609764893 738793879 753424828 355216983 837678754 849677711 895417547 538515920 634210848 624027318 957045662 554452572 857115004 270597169 752622181 277571868 715600212 977993359 990642569 799473891 846875690 22812721 528827291 918099450 920577308 904794342 988320765 718094384 864133366 847110108 874784081 846532281 900375510 49557820 168815458 59706975 448744639 43778409 830008519 761140904 832999390 671204108 901446493 147022624 419223825 402845898 612340524 905530325 981869628 556483302 970147388 912672763 978813218 64115876 68549295 808737897 910111158 77681924 206706692 646900056 949427872 400528635 548443205 58934156 227451218 921844051 946221051 34298586 670778705 365803747 380595747 74087298 843943003 553498083 940396395 278577297 505442894 112904663 149366066 547850976 979159908 699721441 741512049 730122069 957779802 8586435 832353677 67926276 172464448 655660733 958498665 339847075 372351523 386980944 967833921 280439394 393059317 360866028 981364394 859587426 946198245 884957175 944059693 236026503 263409143 468523393 680984614 416659043 987501405 682121305 793582856 412169984 989185743 356384684 596990936 423332454 553712478 963842593 978801771 481658570 509637366 174749464 423666046 673276637 919265502 129040714 221584901 451771624 581089564 215586791 385811031 566834806 667864376 354442142 939326884 137988946 214634679 857805182 941375732 244647503 577386165 971097653 992707949 531114940 998142281 352055159 434797344 172663227 177952776 386261801 504230034 682272904 961327798 542248956 746677382 339018300 892463900 953204740 973124031 341263353 757401473 443608259 761538888 881439071 913517308 961330499 999828308 342330225 556083205 36339905 649416389 539908042 553111794 965652612 985028840 990253197 990580497 394779185 462089032 260018507 638663583 817247177 883500203 348658358 705145832 707104216 999212217 390819257 839027477 443303136 486193252 585177793 616820620 197200901 782394227 553967779 774547197 907081556 996858904 677439978 780007157 682043356 911726977 737900901 901485695 385483673 862273074 170049314 278107494 350710577 627716980 497753442 802919631 168737964 557619553 984505733 999078692 77211257 256258529 262447775 593676822 729799971 978078479 651994341 848182218 185460388 456912515 380108315 975973520 647070418 931826959 557631982 873027124 54974822 626878101 642572963 681066343 577914772 877213029 487320846 676546870 911092238 969668955 518881776 922207077 69623859 972893354 599222758 722707145 156966328 981914280 932979438 963884614 81196587 991616741 492595608 794482212 747301866 940603256 392640074 872862950 588582940 981736668 198764423 525500904 22245155 464369899 810184909 811217631 838226405 882348486 891342629 930893452 590204768 764919446 264143965 611704935 377250394 727993973 744712765 889664670 944856026 992225604 348861795 762240693 533449923 814595657 118969970 127215381 527354678 584183756 280923909 854824848 350573690 928124722 597497314 877389355 56271754 777621850 709541917 917597339 550086247 642234357 943017070 984016881 586798466 870901182 821133803 925437619 677785972 949068486 234554122 250918521 460163241 540052335 669375435 960954231 572366279 741022455 837715212 939476490 405161345 898630124 396048517 543493115 850749961 940387504 851134582 988263554 997141714 999822687 576783383 800673682 732603449 937105262 319282769 558435500 604049665 814518330 692015532 840383155 235626497 469270874 517177706 619514908 263107585 595741779 454520619 722449177 158090766 612427926 993689683 995450339 522696424 964457434 21967328 116461064 462744430 534872318 795320579 984180435 942557247 959031703 792611537 861804461 799078094 827443534 17860906 501056453 732961932 840420783 574545829 681444536 34118400 450364146 344444131 592055155 660679374 785396917 184799944 194910815 373133165 736998105 912767469 977283362 423301864 615156517 123057506 650764424 154222145 771643054 434841517 894917517 1776300 30439514 348713996 734884849 48158466 375116017 836258052 895676261 676955898 844402200 898792602 979006705 140961291 486755609 497431556 665922602 981442565 985003829 890888580 943156284 99768237 538341673 851693718 887634511 460169776 508488533 293995971 956325341 867617833 999397794 964127735 964559499 386103102 475104460 41680086 218931097 766789369 853491154 497415295 831537849 289588627 584116585 62196295 66030571 745257018 869525031 357117517 767124163 886237158 923159219 924972484 976073967 599768386 868446665 116291105 122721093 753358035 873514288 700664920 987122299 532469713 693977674 609557427 862421502 696579731 980433261 335183818 496061773 472574000 966839787 404865103 601465527 206093617 497524900 106593218 345610261 723094137 970275394 707276888 949852802 808115505 957427125 962957604 975670494 260758830 370027560 850459397 864420357 80104147 343643823 247858171 728852385 912174134 952472154 351231767 712036505 251579302 629984551 691030179 973885063 843886369 965601062 332414696 602488719 876454053 893052039 986090278 991914101 688771244 765862627 507276491 999735992 128073656 607187173 934354206 989539110 40498020 157818792 772802180 907085294 551958234 652985054 296345745 368495468 781025976 912290614 250044512 506067346 318952406 920685070 180516502 472947849 822913366 944964962 716414192 881926597 327885421 900347461 845782866 948159300 868755812 874542448 450069232 665168165 941680351 962779979 483129184 598086850 925949674 964748887 993965560 994882769 463350464 683102867 33913989 693530621 698021599 980300019 453862839 773434737 956649347 980800347 6452861 42082849 658919700 718276358 259163497 272345607 793449015 941881647 975829960 979607517 365325141 752375586 720004342 757575271 642410315 977922481 339347563 665404524 326887249 355160065 248872347 343627821 958380925 970361047 884259265 937539497 410020964 817125652 994499813 997797829 867917172 952644020 656794606 876459731 399630435 899260040 717426287 722132157 42490610 188455912 56052515 90695322 157876296 921242364 621457821 713411227 157364686 381534621 94146242 342446997 806557661 980691654 77384076 817963817 824676398 901883767 439281053 695325578 220339604 275345675 625041776 870956932 812110195 889492423 9166192 187081714 57128999 642342164 289858693 731186807 19606865 252076383 731112826 926663373 817337947 868286767 648892934 787471812 667680381 952915809 90994695 953483575 16241802 345833393 553103472 603693236 155775714 307054426 863214163 973628475 610203014 991301319 106978319 466576787 991745602 995122114 264431275 431413005 892134509 933012882 359596360 786808274 180159247 796055140 253862142 707318744 728577850 777543808 410059688 749347853 438044017 978440308 438788209 510924360 461665623 930594862 321561689 919882628 627501057 776032095 297539863 422166303 413879737 592037582 117686440 361436320 441892200 824522804 602244544 683656628 300080360 989760244 767485587 970183577 453033582 722135530 302396805 677592792 172628301 298111289 8602860 980646027 430788588 573654243 679654673 991072533 902560869 979615337 384772890 952912023 833298375 858355353 797871946 927264443 844779767 887714242 382351483 767318192 735773290 855696057 434486559 824102639 117007750 724129244 97902306 188103310 229571531 839744671 51891708 343265930 782611042 910272341 475771487 809949146 469859708 790848243 424373961 983708232 350384164 835497607 549740894 720031672 284094259 539733881 636189059 954727006 302350508 443976764 12754231 407233616 25721264 654027964 260678883 669497675 7640500 300436902 968371740 989282387 46886532 335208840 117198259 503225014 280105431 779928016 783328686 887198329 15186543 801494666 626102900 664361713 848494994 935906654 410844523 804851976 669102695 752842376 505326787 629577324 104382453 287929380 606438604 735991078 923306049 963234465 561504734 624472093 376298262 621775740 308971574 373816234 11590357 318326107 459194588 546979070 328139296 693726996 127190657 262580865 633044497 910049569 815395938 949556711 494785297 622253301 25713330 176687170 559835962 677298051 830111026 841821649 68266457 806862614 692714824 922680695 769962022 806014260 843728927 983158375 467237158 878091576 707132788 965271995 807901937 998097505 42725188 749366794 625215898 827531282 922403643 996799214 967829436 979263552 946764507 966391358 147584887 351261305 627776656 750764042 370843617 858227423 276521415 360560779 962620061 980030178 974320852 996691909 632982891 644934888 819837863 893843953 918271936 950997031 983587967 991837496 409283601 573314569 350460309 933118928 30344352 405207648 378656881 488320340 688285866 960908629 270471235 923330494 888814056 967768971 445149551 650142261 316726181 583843256 681463280 779697465 727058076 733163356 48936343 214771795 806261391 821235925 510927502 579617859 343508545 802148675 880958316 972508734 11740462 293372270 827240391 959916537 992748618 998861819 358992651 519091487 954471242 964283923 758005890 824720953 476907230 655430852 507807849 656936767 723120264 765031620 430382788 590220779 483940692 498385436 349813984 507974019 936390669 958809689 212327355 879041377 622028020 858760165 301560699 547110483 309867545 802731523 844512682 850919869 634226588 657361946 247580948 732540693 97586448 773787474 391393712 719427941 928053941 981749879 548515375 826563295 753012193 979235424 60764138 361649885 473460563 871526702 508376712 819475949 2270055 771038208 294586761 329803020 54608646 61539849 292275530 388848373 571617740 806666136 372088581 596412169 169391732 674807531 560879463 874213870 948669638 968352225 484943922 758492482 456835540 598421262 811182160 887087246 924003722 983488616 659070418 810341600 719814717 778190176 330711493 428923849 831140607 857860558 63655133 928235469 667764380 930633836 481234253 759746472 804083437 911143483 908289197 987782009 213933943 705180984 4035230 128806882 128405326 283744737 12281082 57632435 955364897 957631035 426094799 816441091 317883966 773095852 476845365 755756613 151074363 282958283 619478235 660998127 293771274 678692456 10487581 460414926 504405460 940749146 166269306 507238783 458542522 565274818 726972052 858150906 956845518 984769992 751855307 949274315 567498635 897577698 719940960 820338985 746910014 795029782 290306714 657639368 83106244 886377328 303572726 968008400 637252913 716855034 425348280 973040694 336619226 695821288 650502981 768394208 355520414 489433383 329276891 572267852 749767857 840205092 176711598 668924029 913000966 970903711 905892820 935712238 237570856 851584025 665762674 846634369 87149894 872903654 560833242 890550359 562845244 834212474 391844658 804907334 852370050 903794478 513039431 804544375 897223474 924010036 916787976 924824970 26638023 523979259 787927149 882568031 262685281 546402005 494421415 858905046 148081612 503987309 447039187 588377223 522409152 955459679 134215327 361273656 396395636 634352822 875732459 921784434 326545271 435529948 266020769 562287621 13332888 38092092 655863004 899068214 138057034 545756870 932291118 944562377 544667935 676781221 483087026 869250440 554116289 567343594 985220474 985578946 912552769 984278604 438330717 629533102 922697636 946645966 152210160 993676824 783669277 873387833 568986627 732337896 919665731 957461883 128695629 265731564 571178581 691643846 800236427 898353508 847997694 866163700 362430375 371796209 955470251 966188655 792789877 952646822 199144307 636695313 898734105 982442406 275186950 760754432 556009418 899363726 580742750 588273238 760157575 790074134 382226038 528092364 653349956 971256606 516959377 662847752 683453870 895008199 77893650 511768074 721523899 886494815 79370410 755864365 635303810 951262787 504015773 920800282 464026894 574192308 467992655 783944123 86449145 729948393 720123332 833381343 490440304 795991886 62534886 765618734 337273648 521986948 155913501 585093730 431255131 623645077 10251002 528637152 879163459 958501012 811794549 849408565 897480279 982307975 145912623 481159345 874856910 898399965 915430088 918854539 808302200 823258431 586612280 767869731 990798590 995220490 478050192 940319908 542047184 791550209 623045732 678231061 247214191 386735473 479245099 621061620 892950704 980456083 61240564 462724372 369859207 694415993 901626392 928829270 719333556 923644184 405072649 750338997 160387917 943461906 27840357 181212026 919074595 952745673 849531380 968774042 929798777 930659407 849986794 894645956 196955929 406966080 634331353 962870790 231043 896305886 377682211 933009922 19400289 197119075 899210918 969947556 199214291 527316291 747086458 986871649 53563076 499415003 252024871 260383018 947111837 993378830 962305288 983822315 721013849 907990299 189743626 389264547 985984145 988148855 899837465 999877240 320235908 429552437 593615049 599219682 21657744 896782218 395772330 619703303 343329944 680628727 911724470 923710388 86669806 670703600 473859047 679284953 119987868 615085668 445099970 452201933 964338204 998972688 929112663 969606022 807010918 857951226 13170761 809706850 606922949 646962106 713788688 990237130 889514595 916694117 474678964 536441036 587672793 642095528 102900352 691845843 713916946 920011345 766372211 859497426 529420360 627840306 551984757 782131263 999622368 999962084 944019903 944164736 126299461 641009170 928856664 990162647 899425903 913004775 469353481 779898784 358471706 706258464 563516601 897725704 887607615 998848462 150579817 168362499 235728335 354140448 85870025 794665749 374120227 458948826 550171288 593687924 718510989 873306544 462150696 742212932 603075362 968493711 78838721 743481066 458715840 710328161 620084748 950568026 124823309 523103309 545281208 737186468 788128980 813744230 677857279 975213140 496123195 643768771 576162429 699400383 184894276 970362282 190058010 854330512 327446936 950477263 109530909 698856377 441000810 606523640 266298918 891228011 751109045 925531121 626626267 816880296 854994315 987258075 853835271 974538344 835703388 915158735 27877089 678809262 629351909 905229228 915578548 959509255 216123275 346751489 80445232 360419205 584413440 996520307 477506609 959756646 313979282 928463573 961600087 964650773 274522293 919980572 723727856 967387769 374154770 988062652 124800214 809992619 294389954 586981281 874154496 980018478 354644786 996917639 38926814 441106478 772691597 796000637 222942780 321260437 367246716 800067044 836658312 928377395 10024101 994094697 481826298 601305477 859330697 916724134 686779312 884393253 493569325 771774767 12996008 750287427 904611470 989034443 675868036 862209899 38602285 856749469 325512565 764267381 193943518 999168705 933750161 934369890 685079249 734961884 860075815 916546314 172730936 489496872 696832828 727206215 52642663 770399445 400462553 418817141 649868653 968122640 108228518 125705247 56318437 556735082 430511008 554240975 34131943 754063476 225312657 290720854 335990442 495707748 701690674 721640538 659687386 940461167 916788303 951650422 608424094 944090062 80099147 186781713 474736736 576575506 518850700 898233811 26871025 508098152 357175816 480081029 321589410 536793678 458671927 596586519 638233705 938144394 333781736 819327045 485586151 773827775 490061969 590619787 82180642 550933588 60464882 682477498 576928683 702309122 146518230 539888618 809877142 844586240 540726903 545184468 389366678 404939075 389861402 428390792 596497990 749449936 202393102 348645486 886692074 968806806 385678477 537141588 926377243 992652443 321149425 881961121 42668521 576205734 778524441 859149084 80742667 108903477 499640432 752439048 675530569 893601928 156963145 214942220 56534035 726208389 51096781 453976023 531394715 810911949 951497449 979847679 439576027 708749433 582910864 675654822 415231547 441799101 775945208 878335846 543855313 675084373 187522218 680045282 367947841 974957423 633110126 952961347 151372348 943443800 614084462 664275773 194855889 333088320 650981795 791576651 182499202 787903211 654428561 734869331 93921107 700081198 884356170 913127712 852931355 985167792 900316358 958867632 444898349 901713454 344348011 722031333 12254040 707115733 441452196 496177773 376552839 751785325 239724905 509152688 540571227 706233905 316049160 715657949 823901455 990178742 175132306 494103862 128509336 507498537 450848666 984934723 736561113 995554618 120300462 455615986 296825379 304956100 899459047 963442754 241420506 441584172 187942073 667599104 240828625 620658262 14296993 596092858 509074432 832533836 518443431 764181532 954711748 997163862 407065491 599556612 614633311 993477802 228711498 539880060 447112957 958491454 946323850 951190139 149752733 156505628 49178029 419420686 213212440 301443114 931866023 952567076 325072150 892207569 724129667 742401877 208279041 894764246 131008072 244077236 926520398 980235352 834304701 849971130 838295407 891448002 276862955 492252079 138450867 615916285 750426786 928937926 48035144 532576350 270307893 482163846 193668691 304430010 772686602 882928688 133849343 988273514 774971765 997300647 987091174 998693646 71763550 436360819 707168232 968349991 647219808 652633329 743571208 772640331 44433759 896451757 876656947 943479731 625807494 998870363 643893100 705852939 550972045 846919750 726406961 887782388 718615783 792264959 919185276 942522985 730796892 994829607 636029431 768805086 593148817 903222095 871166247 972445415 145785954 271412900 525533606 683821558 90544252 321383696 568758748 712412904 650317734 945061323 155158673 896747338 691535040 713055966 916941106 995361439 601809716 960164411 821144832 865139223 789464928 876281624 645546177 910239459 749250857 990824219 1427096 700790101 373541637 930630670 585725541 809145643 681741146 844004242 908943205 962489557 709082764 921627708 646972161 973851189 711673660 903820039 949628477 952684257 791937294 916216489 36925650 986214964 128839576 658415966 719824247 765077640 469475950 678575457 216500456 730260638 649110820 921535355 980681175 998365505 372459968 774903121 186105858 392389148 218365940 451678399 846974696 976830078 439480562 743128387 18865770 913815930 888624731 998336719 626441950 981393582 80946400 350834018 818497598 857472978 19469808 56932036 792424485 959609937 553227611 613366012 397876057 772128679 328471114 799187954 679262724 827978767 474477467 626018046 640296160 849615547 715658622 719182882 112024373 307040616 668752031 718528652 609082892 700834224 915654994 988408672 397780100 536698283 721701235 955033384 541917555 809721164 964231292 992322877 748249766 954589598 321245731 524356540 818844729 850338123 741756268 875358600 570289564 847769668 653106016 815676197 477649440 930164143 461985656 557640745 748108037 823188545 702395472 740891058 82071074 593372194 359369398 363397820 287145950 590866376 461808790 611724839 336557063 892283725 297427463 387007132 483929704 829171132 151576773 947880970 689265683 779106747 345071264 571159660 178108877 597261073 787151773 877023589 12459505 295662722 578418305 608321040 26548467 221169023 80737165 508012547 894516166 981845510 616546339 727941811 69870744 561076024 923069268 988345216 481902096 648376937 332017064 918269058 227002353 858354088 951657422 989754163 904315105 907773536 624490329 693367845 613072240 948442452 176084968 465867375 346262528 608160845 633501484 693566434 778698257 846589495 214310816 351921019 675349844 852121347 536188123 908351198 531513503 826876554 946781497 980051181 530855883 631684848 39388194 834057637 315398864 590635119 406316125 525210286 857037991 933295368 376570777 707458552 115457721 388306947 902845977 954575857 689241413 718349328 514810884 624981086 943324195 970954592 729955482 911952920 838295826 890816770 668658173 682856754 996093986 996880595 838696115 994260131 503179140 962230159 825249134 966833488 110708640 477910871 793388837 855937553 675929528 940126435 268972895 646862813 451588348 694485012 677666113 804985491 109801588 393416943 789276365 878521679 133142871 420893537 381142004 517891058 646438925 856776477 378360875 827717591 597195697 734205349 2191179 653261353 121416024 287091168 486113153 544269168 461423992 932411455 163103674 460090523 974639286 977183818 25677132 237177241 825917250 849554832 823861095 854423403 402051083 733419547 998004086 999883569 741348929 970703168 586832603 723535899 665612411 801068785 618974258 901496960 751865298 861161811 114176766 534267870 382264818 914381626 806843081 961073214 418765312 865298019 540733599 547634873 628731641 805879149 839584551 976055592 854658357 920534638 711384249 927809915 150548156 489039656 267105845 954032289 625398172 708345460 150784311 653755312 389129269 425476216 644185253 730849131 87836772 156521042 39613990 599517236 45301694 97517102 351776923 549806704 907938046 946335585 814274751 815548687 953082080 972899788 583390756 772213876 29286977 785207819 705305996 783100713 7127813 683432287 70484983 861138147 163254149 241779277 363562161 862219140 963028817 979538492 727576035 990599229 822740812 909944356 778559025 976613754 324735893 325176350 266796541 608641931 780957648 986429136 252748454 976922656 908034924 976370011 831875445 841140807 940673634 960703452 313669296 572128299 373383864 584421755 914308254 920087383 558573315 740713346 930778618 989340000 588627690 677515961 782847228 906020310 520044926 806457512 168188998 900069466 384261759 968179996 702462318 850478805 870620743 908850538 103610723 990092900 427232556 481117497 79535847 319162164 289951451 899410093 887123347 920113658 387561166 943058106 178330575 969454049 964826901 967574416 51168485 786916226 571424175 999107986 292205179 721887134 17075050 267067194 132364110 607390687 188817509 567870638 496438506 809860180 383840656 394436224 344707263 883345872 937918983 970589276 263514599 655521260 248385526 855183794 67772343 353294555 625706294 978934498 956349348 962440349 848484369 896850851 494790203 499138387 428410471 518240799 856703889 887438879 839891709 928553632 830428598 956063784 737489858 883217187 299037145 420568631 505759737 897925725 586166943 689890159 304699649 535469466 719571176 796258599 252231551 481854254 535089834 897450240 8838538 162784550 303042329 980990099 864107068 996223448 49356480 881058323 451035577 850275793 240670131 534544774 833489396 838414190 365524737 985174339 135221941 346311235 782162427 863006143 720277366 877368135 314677961 943519537 349597421 605837408 296953339 898308249 961976019 964411923 242380714 987986598 217451583 397606970 305158695 851997827 240443368 584589564 411283430 886429162 690578221 915910673 72317836 968973802 668297209 824080087 849959626 964856901 610803315 615636366 104833077 237859077 252533403 776377840 457272213 935246582 117253999 763809640 137010956 653980881 470494425 493677250 136197490 183331962 575973798 871471918 255289443 514020841 840584594 933049994 547883584 958876703 980976771 995084364 525455165 990458410 226398172 619038442 797417960 831990038 931617836 932867122 130071107 239468264 137276614 933166455 121745546 307447845 945941001 977210119 172231806 341434504 354223572 710103534 354244731 779646323 615828648 700119079 924775462 973721342 415729027 502061251 901315001 936844894 949211011 976084779 165291707 491742605 619186883 894028699 837960521 934502062 551751291 950585513 439566991 944647387 917728918 960458349 52263153 611506072 829889789 898460277 812378373 985752678 388117568 995624291 135285650 742756238 92007160 644189245 160482510 290785960 933805214 994267559 462019517 803628285 937488635 995890142 131317807 857760100 184847948 186282010 623445664 912673244 43908918 82176416 395000210 922151284 916271239 963908226 371123233 851455373 945832133 980622981 668688633 886680390 994368204 999832157 966887391 974351730 45583159 577349852 964709589 987007506 742583092 769858585 162257162 834491465 32215546 115024619 790104279 962690890 358171428 901378700 945595734 979833186 975412015 987482999 562186933 923141459 999845818 999881745 991107452 992538120 794827704 833627989 258675932 719705339 62380011 183681409 853832413 856698393 828198391 956494878 62557385 168026021 687637793 872247227 293306720 639156737 361741997 774789769 662089052 737563242 434361064 483116283 988617309 996877160 850424814 952939139 982626187 990920388 523083828 667711243 116097075 131126517 700356708 819040980 863051290 948938208 698617936 935556715 98948629 425500316 242885796 396565890 195392112 409843526 194039464 467966664 750871079 751651371 528975358 717880511 926309502 926311625 857868336 937105794 272385231 950353342 479114730 733408057 160982950 738289781 366908743 379759996 693007216 827106769 379148076 810403189 855953025 902203918 393066380 799330049 802036716 877011838 15884459 731244328 86124329 202615938 737034290 955414211 108430585 825447657 642341357 872045784 271666263 529664045 271937415 328252524 636275526 848060498 775930340 826026593 871035987 918429321 915412222 945612562 594566725 809713150 649049342 694132413 959178455 971118150 575755430 766154177 103522851 492960335 999704335 999978400 745869080 847315121 26870418 495973694 124786878 351120489 741658384 891528617 722506964 754228657 430162980 725017663 334551389 434840723 403597096 979576539 608159630 762313074 90569618 295638985 514792201 613363777 958792599 993652633 982488783 992140715 586552923 661617242 44523010 124241334 395134921 535547077 245165331 457169003 473218762 705555561 253251002 887036789 643849943 753448943 825287712 895251493 697678737 854207073 446020176 791506607 584322452 735324566 949209997 994027275 353201414 599569241 150690579 209908339 53366495 129068776 871021302 946754118 30053536 280383408 712657715 767080282 272455971 861901372 494302752 536680670 385448371 826637072 149251168 820402928 794115832 949458344 993777050 996556500 312511834 632800712 845690316 984967010 95553135 569854995 109675739 343960925 906382372 934380131 389693249 969001898 817871447 967919024 220516757 477975527 533212748 879539380 123308910 401100644 789630637 984796753 502760141 965762617 188187065 278857551 656330294 937212444 10513039 65457166 296768147 323886220 275490477 648037877 350963631 462611185 559785919 592761464 917660161 933332812 47490475 470824774 981697096 986733774 610655173 911434752 192255472 356253171 167144341 392982235 894365690 972488195 741416846 827958611 36826038 938876684 87391953 552564418 721579046 908306093 421653936 730060076 953642902 984689614 709919991 978071937 646358912 698973384 286619747 391057756 9621149 983376252 678975577 759624840 14392004 503841810 448195690 576008795 32898999 983941331 517999745 757869806 376875198 465137993 717590178 976958134 343064095 522040783 719301309 950517087 761834631 811242075 253930004 331226954 484784226 641645203 137948371 383225910 80895421 760618066 994581532 996775609 23333293 58237114 388163854 970771619 871324370 986652790 712922088 788147705 982136487 998125918 212285101 912439395 681538401 839605003 97969468 906610557 474316163 987878227 641378381 954530246 210427421 262881688 470749807 980740883 351120540 404906097 210229151 637249378 16418343 719567014 135592117 998013279 458280763 751179389 37985757 886239934 853139395 855706939 305403318 325832580 931404487 942382961 106959010 540504613 959141625 960064421 435693160 815590731 580113694 732012148 399020101 773855163 9235589 878516078 777889944 960340065 2246194 183755541 25980012 114022107 111235396 575262762 69783614 316861870 669915942 740240309 691856030 714895189 894302124 984273075 680444734 935123658 158452798 251156503 120747715 603912492 989509995 998654374 445576932 774414983 412359724 926495658 882118153 939364393 542941426 657056826 663746909 825603081 129769270 425363778 535777314 746605969 352203146 781241424 396436123 787222985 304790094 426971399 318506690 596433275 282467648 693094276 138500219 338057001 745941621 878732991 885772043 938468900 537917122 613448741 855581782 889342183 953193266 956859530 604904162 892942194 80681235 599116563 167966799 740198143 375460061 796276298 633732736 847520738 519503864 634922004 731819016 971142143 271978241 824074435 768746420 842319180 368922350 903134063 336446111 882944124 334952173 667799620 649878685 939766208 241281281 410866766 650294508 940851825 538595210 762096143 928438855 932869758 621646684 775177581 452371181 594491244 910371255 951395297 269837421 917360358 492859034 891610173 27981160 127155567 157718095 865711537 459053641 918083761 726541813 940973806 391291617 685064975 60465703 881020232 697693191 702472553 924819108 989086891 611555086 996550748 937603256 994205059 356112287 911932694 469804339 862574856 745289988 809557209 221646230 962407051 871542772 951394732 510944232 821077668 871213625 896250686 937802370 943556558 27245656 785385181 845926653 960362222 469830138 661174046 99507420 791391653 161627451 797482357 925807079 927926185 55274920 253266587 268202638 736996146 949387959 983346752 313352563 798887245 834094343 878726253 316254922 465876442 219682673 265308118 637366833 996510889 234683810 637412616 722824235 929783423 346977652 722224361 738108419 824989110 682036502 949806912 364210602 868457515 570607352 789156515 355326526 440302695 701638953 744735937 959750795 962061157 624732214 657433894 133534771 653118741 390268184 759612483 394363608 815935698 217070490 421788087 488124647 786419171 999790821 999877525 91738079 706401783 389361624 624089463 517488398 590209256 632437498 948558693 748772553 836931023 685823236 765491400 442238784 916482072 734771251 995926845 330815363 403748858 949726489 989566317 277940611 785727365 467840491 827918100 559717130 714368070 172991238 769659618 926303621 943266274 938000270 963881004 720243452 797105252 871651158 873279402 322884160 517957175 962295418 968901850 886008886 954782879 640320708 752789014 41160190 309123208 407222789 867926898 532609234 690337990 608121006 988003963 625147810 758851253 298189818 593108353 742665175 803518844 608210977 993959089 2513154 400031816 271129042 541285673 395389612 972711479 511375997 903520119 993919674 995740221 576337127 605037785 570562661 858914328 838141896 969241867 44470671 320358867 712381981 737215592 90919323 810068116 284616305 717267871 442104052 460564359 751602792 938882781 283790355 451987962 811751541 845570469 827523038 885934323 328306831 862961002 27104285 641616570 617194874 623089218 521918187 892909132 690720821 918801212 756085442 757325309 68454742 679488951 490762010 502501440 693210595 745019660 292687757 617163360 948983948 990040076 920974179 996749582 609371244 637789689 673901132 783728644 981668112 991384501 843914092 880662137 250208125 632150794 879060746 919470173 68960045 446363547 593435311 715841178 959813829 959938818 144280614 828780823 916744770 927344345 626287976 872358911 32165239 698398112 987502243 994573181 923181812 956538849 483997414 742980259 343401545 359340852 743595246 827007743 951452133 965887834 173725030 701834837 154783169 873666481 733228101 929330172 286837851 387757087 855955675 883617149 952740708 959209731 372494115 540440173 731626311 732964013 509965451 587297170 169708101 291216145 957534093 980456022 72371518 174831341 530176615 596099308 351218189 848747492 913614483 971763920 438782658 520058703 651898783 987730751 105335606 682780621 295885559 745436890 72500881 657409820 862914758 972926274 615259625 718136523 685907917 796296570 216303213 599337680 187587761 623224366 275187499 588271756 393961258 451402866 303595596 366489777 605044731 863655102 705335906 833046808 157444350 603218105 844554229 912072757 29587 603458569 108949562 908726138 2970584 787422187 344985983 716428264 326719902 467970883 731657347 839109261 876080035 996822463 921791260 996169546 928338963 953150907 419974162 625341342 944315033 959939364 305739299 322001968 605385456 999341694 40033132 907747761 937737363 995459655 213513014 234313800 256052276 577286162 2235083 850328545 703276054 746842316 902806178 910850401 529588287 742424817 675510912 751362725 526233080 782478333 66467731 789781409 208741515 527693704 650910138 757971401 459601254 868620260 164300949 688033245 272947436 422275874 956040438 998659650 785527208 894075206 194918759 951412456 856952272 870063357 497758688 605299801 459775505 472416977 997271968 999310147 757565556 816116260 482608110 604092129 697034072 865468275 859169311 950334548 99275830 590686082 289984468 631939145 669529647 779512452 822601099 913204246 729918368 785232201 447146242 758661116 165917855 255236104 913051311 965005089 788905887 794082181 903325610 907981238 757032835 819138209 617160128 924218012 850799567 908110372 710135575 911192984 821849917 909787047 640212196 828646165 395338903 782575318 253435791 982808827 401920713 730137529 49558768 391887454 933353341 989700176 875940440 878261794 98770089 742966227 24842350 476997257 46947636 422180686 210206803 539037596 279499797 941597040 256594854 441426860 259272866 388859036 692825873 699495599 117609030 971919992 368741114 410622171 340594691 607340633 394739213 953996314 161985612 720206288 408563505 672340965 705211160 723584917 687100021 938492040 312045639 769528416 606951637 978026376 397380780 879706393 782140275 814604662 589314048 952573956 960587715 969112231 138684170 248353120 373190031 554683689 682253912 887859144 183421166 322578666 443214767 464025405 359829799 878448816 472567544 969658455 989266871 994449532 806514543 811955561 735061875 869497902 494992095 674452835 401237577 412262528 868466146 950710507 801510362 951683167 9026895 473375217 982727316 998757936 342681507 684007377 666525333 769477426 13917012 470237948 995082513 996359321 407039655 853643816 43158217 348711557 869646161 983269290 910845188 927187998 567243867 930916251 249218718 649778686 971309805 991104085 959376524 984852811 770963844 813836633 680916851 838826220 507156557 576104783 312527677 666881158 736823898 952761053 259275423 920907375 669731081 822286668 151929852 435843452 64365452 127895123 116998818 900235525 382720592 456849346 207311438 733839365 528464035 901010406 688935450 974951428 71489694 576805968 812171353 920612282 668639939 695632143 10421728 90397751 339034619 719691775 213329850 376172289 248211457 664346569 132765261 458721345 123846772 801772651 947959874 998426682 785076800 851936259 904381232 976963886 260783140 587140306 42256639 964647089 918974706 999480405 544363084 556711080 842762288 842986417 596059543 677563064 854557420 911471475 635283017 852995565 810473114 880099490 348894909 414933425 567538183 661650453 340478689 969902897 130045805 536572747 812723433 902005397 533195383 989444283 612467775 760470221 629723028 982026894 81958753 340624862 803141358 945387741 33871338 284909953 864743749 913936222 760466929 841499483 464237316 753405340 618674808 884588820 986726618 993043718 893045251 911322535 990013673 992982971 594762866 879692260 661877398 877135871 99535738 768000185 836573251 874379632 708697523 767749786 130336019 179201690 635361373 649530397 90379183 934850070 229238249 822118051 240138063 548478692 386227575 982700858 87095035 483968981 863903973 866049032 983519567 985692922 850409841 934799977 442518478 461341337 357937960 457032525 651194027 863184749 365382500 786411058 654733296 946467148 981887987 998080129 597738313 889083687 442744952 917407729 517861415 923588191 403221726 954403896 869681374 899088794 447725116 771670147 204449307 874095795 161276538 775359297 305002220 615077780 439493763 665870827 10356071 491912501 848194176 863967148 336882182 493432420 876648402 911548551 191978700 703604082 902140611 971751059 127079969 282364671 412250969 928795310 273232296 573533366 382804403 713647832 715907948 959040901 914146152 945324065 686758498 892242357 933850655 987983757 943937378 980532913 956284238 998435453 845550683 998260934 302214273 445781967 294110585 767235755 586598814 756445826 171577248 467333487 891878410 978838765 480836242 557346460 129266825 150705198 632439828 679766153 965557351 966089160 682808777 786355346 817224057 826263650 560093167 900164362 928123569 951284763 645833420 940568219 451222457 706930872 760430999 934884843 174956649 705559948 487452192 919379063 943724529 966124408 919569916 977964522 382663144 813491194 370248030 522238948 38069910 277721262 697201250 963127223 927754789 944204371 253885779 648280933 812216860 889884340 986549371 997944663 225846047 751267183 659378522 817363371 31313582 65218133 66734699 835284631 822944802 878840091 897220374 900140732 702620286 869382610 79973144 691027426 969880337 995923020 893544980 979060613 296082461 802205050 430964567 586854375 281486407 670597449 564148455 790854668 990657283 997924522 761650594 824121249 748714975 904762344 927224956 940230311 118355751 190568152 498982488 499963052 269309549 519077947 562010507 667700801 495525818 502961240 530477174 959689091 416768759 883181366 796988566 900569991 864002718 906318664 535600746 981949148 757471408 811834481 979538256 979565210 879996608 964528543 780483030 985835428 394463263 762863381 946394379 998417835 629759379 983352682 699634519 981115457 126696884 376029916 645818766 899512130 541237009 854065821 321355311 398194468 766228548 963953598 46493737 278052520 124235699 659786488 466202553 467234976 944024192 975097320 962675840 975882214 677781832 782958744 119221502 811339962 643046108 752030020 569063935 870348573 553429429 761670077 256932732 701821645 227576556 729681565 964227699 982540369 262956806 593503995 32517361 583718571 138095226 339952327 977744451 993856663 57650493 848669893 546036606 994753102 768544232 780983971 449064397 534691981 327212717 824373382 124307931 264417030 450107021 606229944 360888082 482633807 966161495 996565142 621164237 800340979 407667163 472391722 818600275 912703886 136248461 327037660 901903669 942644998 841313958 931284011 962732548 984212633 10072070 562415827 574472643 827647971 580571614 994350705 508940474 563112403 152807298 438628829 551438356 620936081 918550876 971111316 929720180 969003122 463193306 782526876 160871710 382538791 86137162 961169389 689604882 995575408 567118121 888674630 953560051 993430074 265262010 415562040 635695788 781206081 427467513 524007408 381723724 923281937 966433300 985479854 212744022 251139147 268952912 791789151 494202739 840150475 560660074 934121254 168242468 645072865 524159512 748293716 95118825 201832676 160896869 451162123 684533051 892716711 301291316 906804189 185679050 772303472 220604869 936876916 16096390 751319490 660630834 731464716 437343338 941427358 713134341 732494509 23859089 416870080 532009741 871262093 502250446 974964380 97805197 660849881 42000727 530728795 591871219 827745766 887278197 945217518 164125320 530843297 670185065 841781092 369071913 472919748 351326384 414722042 724046139 929875858 841877978 951259655 450010239 915043702 885091976 969892554 760564381 823330755 310711487 613838031 91415271 104518515 209516511 821037639 107952689 465578410 631738723 936937693 858440226 901179552 371221648 743015179 263782398 744113840 699827786 803901499 270419026 729739731 466223697 836092905 802089439 956534729 633696162 834629510 467438395 545174697 287639064 469309141 839105819 892421608 20121353 828601460 696777738 858507831 1548347 761517327 703218343 710191113 222227932 232570391 283387363 880788913 504426621 596553643 466553103 786705358 810323395 888132148 409377293 907770370 302256072 875421020 683772560 720144678 542072071 942111887 33423910 192344674 72148448 606653216 868652590 971739774 794519028 971074057 181556455 623879094 557550924 675854982 360866514 439501225 806716028 814339374 27459826 959886297 703386397 716405416 318995048 674086310 679145679 993457960 24360260 887367147 173277900 901085721 800534949 805921938 665431751 990607413 154545008 977613370 915480110 935267114 654638088 722849110 608585204 645694038 192689403 753800014 998254634 999462099 599510253 669493575 941072787 995418402 525972782 954308388 800737626 991392424 743747831 823385078 828216260 954855033 428822635 919623598 675220575 915255592 299203824 422802934 896783915 939820805 598063226 796825219 634397250 678408129 590800871 657196522 224768674 771081061 496617650 526753754 278988088 924600728 630384675 707966385 953473401 981087458 639149201 644855884 337210564 420756863 344417916 646853294 530031577 658321819 105260540 748924492 217329007 462241282 286958530 468009046 813148979 985725463 459855708 682206907 510289431 809357372 89112917 431664423 110206326 423890898 188971222 921304398 420486311 826070892 218630992 284127995 517349323 898759343 624727076 894170154 73394119 804224962 603096113 612837251 983149122 989913060 610096699 744427603 41965465 591239597 612453829 956752814 74829113 912379548 285195335 865726385 862097137 899831048 398484145 506565210 802215788 879707382 164363474 909667488 501270648 843045091 12873514 369149345 842877438 866564763 924276667 932391474 768439925 914473397 505777863 647741032 819533949 836763270 746005857 867102523 803618569 875032562 98542944 456219921 749567615 873964475 525508176 908222060 306898648 635103113 366664450 670310913 288239090 347727230 219691049 340686637 509118549 639368941 971274206 973758278 762930473 912533538 800012820 835241530 714551965 715842805 300189792 598112598 308899367 580463742 260210673 397670329 469751278 751467091 220187212 596301839 177856903 528741891 440584016 857285415 393767532 714189129 437115522 779018217 290823942 621751110 476228886 480223218 391376849 819846881 346029544 911390266 542751675 833870559 492374853 715731499 800213009 887383120 112295297 822568769 257241704 944962485 981562754 997125805 721822618 895054947 194493986 473070610 37280945 43962176 988451303 993451727 241800005 342428584 745104911 800642073 356358435 852134727 327151486 606559712 710903503 934627098 928357462 982669386 121464825 781916688 676001744 723180846 966929691 988129675 946086587 969554401 87499689 294681997 404665748 678488480 10744607 13936238 172951491 633978465 648972955 980469466 717324788 756394473 625070112 689026885 853563146 865661980 927628731 967925330 340990940 543064297 807565949 917544198 232395654 636894630 295265171 947432167 67398885 148669119 843414702 990751051 668302401 854010498 582240463 936758965 865869644 878318922 330947929 842302496 24959448 133354624 574244300 782740479 532829065 569198167 642192257 877962539 312512638 952714506 825516867 898814325 431386799 630921005 557055874 578524715 633212337 870085575 422432409 992950362 819002086 947871901 531438065 630032516 511679449 870831017 572999099 942969405 610566528 920619868 170039294 839212691 519614076 836910842 214862484 489888344 773448174 842516504 216810835 231252385 831391957 993906804 669965175 802004970 175466229 732407802 515233142 541657202 653664963 660749236 724316959 787373313 360351863 544534034 152534545 926476521 816012317 881857279 119413383 754671818 936556328 981228661 711763710 800116446 802068998 803125874 315014093 903669659 308554107 417807645 747920786 826506287 286876779 570628655 35314749 543791985 145132694 609705819 23209920 641094642 251666484 541384603 655766665 779477164 292669892 948549447 45780896 212779138 923724879 958057678 388472593 453121864 905622914 982535782 736370619 997542959 665605260 720334610 623276716 768641903 643919356 835175420 585612859 682670857 150249338 175822392 362574857 493357150 908979911 948112870 819087900 838468662 883438952 890428739 191615819 740264869 587962062 841547372 748294493 850166645 539741259 865930513 682994269 774240976 264621036 754360069 414092036 952582060 751450034 909543663 139640786 529188422 81326358 200125670 87606922 303950782 534955551 966824562 891901148 922492595 313539031 324541194 173096446 332664360 985711362 986246646 927578064 953917644 194865373 395100344 705169841 792484863 723414305 752173099 761386793 990861868 808277472 933283330 689888189 823587698 317736068 324261409 30710303 835626160 585846411 599448436 223540264 667766920 314540556 591539001 590727632 979948072 114755715 942272238 318762588 352595819 226123289 272856670 202384642 272530360 179674953 336800860 643097981 957972295 842957729 897196365 597245661 839868477 599995397 947755078 571546014 825287342 842279265 977996349 409909483 785897999 649538104 662367766 236879637 949831183 785685825 804404403 799279330 867727925 832627659 999809394 403146461 496646805 718446509 992679247 145180838 379794370 245254569 473172400 131118307 202671913 641646194 852349078 360711206 378752388 655188178 949628781 180465270 595709980 121116193 765648260 625167430 707252956 534041193 545590531 938732668 953060864 512689487 797762245 51423619 391104499 16632947 744414927 206613830 491667890 52671011 114825026 735228384 796124758 27980135 483157282 389969717 795951676 21052756 628197922 608481429 832710450 212729722 495598927 934210469 987650829 234658969 496363352 157551010 288713080 243366887 544972507 72660765 89883188 306236499 630557483 170366407 350227308 558004424 907559248 318458916 655776064 871511470 905279773 997375621 999676951 400684169 482832239 428140396 965381134 822245519 826440911 835572123 950971987 730097476 782429378 328883536 640738632 320324359 532818291 720850762 905512188 150651150 466171723 457210514 841585888 845034050 869570309 598856849 909917792 687511577 891439253 69130576 744695905 537846316 646220990 827790398 990446480 129657927 137755123 69255713 638393122 59391449 753713718 139739204 216604741 223681917 642137317 602917495 859700174 690386965 918255299 669577005 673948641 206912777 338006821 947251166 974909700 892943225 952995192 758329018 847588935 987974702 994979751 513218222 880805530 533221077 759655897 272837942 520700699 728849048 779944838 614347585 875111331 796107417 927314662 273555075 546939354 736023333 882697525 736195530 934081233 867326529 887686142 229900381 410030548 665728739 855214055 649406377 838381258 482302886 595634791 31895474 579050844 554960105 681296755 229517486 845642362 145566504 467768854 756530907 783713461 175833497 202564351 621658556 793463928 137442359 461903694 594570069 899649123 922926091 952484478 864678744 876721315 811629526 877251688 423110746 716313690 242774167 801497077 126853723 653953066 710517011 949521917 570949838 599181501 377688265 709747452 395475900 982652827 946015938 958581565 933355870 973813863 957239993 964134181 224241358 551750103 293013723 796107241 554150379 587920899 17769391 109743288 284684286 910687127 629858795 673172276 287100873 441660041 636780135 656521559 359856090 720848222 305937406 613705680 761419008 779987723 28777937 572444483 441367742 548566484 768771112 927333573 167984997 283761766 975795580 991795258 306352416 727358799 662962911 907694095 254302264 488056030 318077155 813401134 173011412 903912881 257497686 273740299 903186012 975440167 350576394 703971062 908554951 921109383 358211847 747079817 688359593 795434307 511843269 612934824 343210470 841191931 791248000 901592405 401312122 691881615 547274530 582262589 477172222 928757255 28887614 121333338 913337093 965519943 560679981 941420379 591653403 917395642 52186289 975359243 875854234 878963076 640975342 716224862 951771877 996625422 722589403 789642918 533634754 843396975 775695925 883949697 270466015 903396354 872822894 947068243 321872375 539841148 233052175 790545540 434607341 493662508 568075970 913270219 788680275 827205251 600468862 928833302 761217510 784438131 238437835 669627434 753539136 970155089 584402622 976214170 120167598 839192728 221335281 576717757 908731435 947166964 807997108 861856167 60836043 216822327 349556901 768442709 414384685 655422330 306124404 906330463 199834096 595184546 568613439 782473931 24299755 908770156 586369919 866777500 187018578 803198961 24810033 210305275 577370613 869438758 347328550 939109596 436030802 880660802 772415697 919877098 507956315 565644289 503680395 806786034 693870092 794237579 14309844 895364586 403684972 897169094 221611586 352976238 222914768 229863876 25121034 189955481 131656852 372371602 847704632 921740932 867449809 904385022 62162108 534824085 589058953 616537191 498761658 838623431 834164714 940144881 171369625 234954975 46733594 442520919 394449374 497490102 182626053 199801069 403547903 822515515 755159631 788893924 432485095 884844050 487672161 894724163 305539245 719325362 557598317 774259849 389570044 683724973 196072008 446430963 98281750 980418305 741017984 760370689 778025381 908625789 65655107 582781341 275116917 398060781 59766093 579230195 187331423 763797611 489268928 734193687 872987775 916495781 753495445 849672886 295160012 833618304 158478570 174379500 317284206 882483933 594325446 613038138 571090162 841884627 975205631 989699148 182618073 749180115 251667080 958340660 819063506 906845661 112214697 552891604 849724527 957712739 475498664 574539786 986208494 989984903 916776172 996464666 791236944 795711647 239099485 945630734 873120525 932817299 664440606 701632838 621237887 657447936 921234363 979890834 136038102 464818670 876227338 891434253 586413154 908441396 967531123 975365028 353028038 950214203 176365284 488626581 892796540 930596503 446178004 769851450 88836766 172208029 252535373 843425269 769757164 951417404 429040936 647728067 712868823 973994937 569540270 898096097 552090086 709719408 268024561 740206281 864289826 874594571 393812623 666897191 475185455 989555747 829964383 892607689 676348231 749552848 646236271 981327898 736392463 945744305 15636834 746882028 529218768 882671396 185832262 543350698 368374934 595661884 414136885 711525357 861432877 969537597 617422531 839795850 302832140 544940963 928936552 972584995 787498102 827457337 582420758 776128070 845569220 865896027 992726040 993814219 120981764 440023839 779647585 880924520 506954170 965259452 181118112 875608835 141332035 914135214 935727106 938651198 973295596 990279789 413547541 611783303 937074736 997131005 755848370 840480377 822725846 867016861 89222299 441689597 678726406 897095619 46627293 855344753 779104598 999321073 60142474 423220182 802631864 851314091 412685298 997236834 923312614 960766587 69698249 96425264 848154429 916012275 709548306 944486148 991475506 998758004 471528001 584740880 829665486 840821885 604817697 771930182 654124147 869619290 546987853 915507196 452272097 553128278 660697111 884745771 942380636 997603510 196089199 900071531 507833328 898710912 627714308 717156732 192481576 752205515 311783440 770238916 778672580 899961573 479170333 694485488 616641209 925846636 974182859 993566727 938088927 999935948 420814389 575672477 164269567 527122266 879327542 973890773 150627274 166586061 462904213 660443928 573160451 866993425 530506728 729982184 142858086 190182917 73914488 734839989 252340104 407815885 254294231 526253342 164869652 240347210 638426003 642622457 349258732 605583965 75134052 654764252 649713528 699624527 603604854 863875013 615872280 998059768 124459683 788609978 536875290 711805655 983674700 999351403 864656876 873636272 45631825 519448574 464084014 831560117 160962227 180785268 412555581 927007093 178585367 489565481 862743720 905846190 112286035 218713995 240073838 347817399 269947405 581935387 914549621 959500875 353584871 491546308 940534939 979805049 848344663 966829295 872266262 996395924 628203677 669568271 219454753 568286206 464815351 558249785 891143776 943736552 677013163 905164744 219867338 615067599 435856038 482580934 667985897 847217358 882941757 978085865 15630585 511949709 260291218 303181397 970219882 991141334 91067926 322913844 566530659 807325023 820845111 965819255 19206824 824506944 701770173 987104396 336200618 692464692 646983235 697090861 475800561 999968169 900077506 926285096 303730086 427673537 121873172 556550957 50589705 130473097 749528876 932906808 846849845 910189767 992901157 997566320 244298150 901148544 176332716 518312244 671795240 848078916 42406640 909451302 511572627 696020225 334867754 748298545 632082683 915024221 636242497 894459251 426808249 729569189 630128555 660950589 601375504 970716952 583677488 779645305 419440048 643080535 244649674 474074054 866813283 901594253 728847854 759206544 963195557 971039745 663334955 848345590 347763348 579690480 841826988 929987648 995766567 999394285 662673576 784562681 741631579 945683506 402410703 680849313 24968092 927287622 983292034 998856126 495057880 529694686 235603357 341468057 275871170 612405609 750440212 780519738 28077279 346147597 621264126 657785757 598518850 942995585 541735766 640360179 793183146 935810503 260212017 342853820 677757591 815777031 709214288 841596447 927608102 973080897 128848275 356381050 816365629 932188105 213762159 517749952 404124318 467251166 201413091 638112723 406726661 626785996 69218173 741128396 442868343 694158580 665451352 666725661 50348093 426322444 598407293 988789710 79018917 430764061 646662257 867433658 202007059 632335958 395153093 670648637 644736638 764893967 857703590 984707986 820647045 946059989 11583796 615994251 501478455 617238173 674981676 896460130 802754843 946133641 79357722 245687170 478752591 707964727 72817695 912187033 522311946 625405446 19591296 325713938 175358688 205185657 785668794 817261565 184956542 664083846 5656571 185792273 867197920 971531877 866935940 888297399 710366335 746589902 854922045 951583946 751555394 888104384 804786761 877174715 62603792 813729000 56878788 812801279 738086595 912342280 149280561 556388845 898986408 906262496 61604379 987816446 393114012 670200073 432047770 555963548 71896074 93666780 565855760 884692398 419178113 870719729 233403901 995077170 577480760 597980560 593143099 642317533 456375578 570237443 189974745 630508635 398886363 769549716 939934703 943198403 763558582 955922151 406787210 688730871 453510747 793406106 760887495 807103510 52604228 403427906 483011511 777324969 217146990 454872426 880303314 968581949 326226582 761444741 226533098 980346871 807413830 941402169 131388895 264887650 953599136 989683995 561922885 607352857 164782646 476984204 263988905 458758524 746056887 888003220 283649281 722564280 502157728 997172965 989934861 994690380 616372707 997334152 921703703 994078834 336102880 748991485 732880455 932179781 337713539 664214111 529724751 763989468 507005498 714295462 318674119 510501736 664746047 736629985 282142091 945208070 196987794 291729417 419663377 456301825 862203362 951586162 694216467 856691820 376053824 681303101 362650673 738404378 362252024 466076659 302666618 511560423 24217907 768544491 763699610 973132062 316945302 958443269 467460889 766750523 278001751 847292866 150190105 855202085 417921669 462859708 395144295 651934314 405680403 524591481 659691866 933399530 482159614 851334703 939885698 986562481 61069 488902978 973808624 992837662 690583422 719592762 64052471 596042069 747414898 918606612 138132092 662006763 608575285 713644104 409087093 539620027 290380862 936187426 453078600 515257763 495214391 559047748 926919765 938125866 490413428 554513083 399889728 687591131 636182275 895062710 862503520 927997589 697636433 717825606 944379353 982494808 863957643 949913089 92037906 889206802 330001184 748939603 470822810 573509114 986589537 987559705 639724706 955552436 582986700 734895916 558692352 722393794 268312199 466775092 308083216 850525182 852435478 897495942 425108510 659242029 72872241 637882944 66138077 172755605 320159427 452632519 582301290 942918666 854666081 907008279 705121710 921374412 791976710 831304810 927962927 956287719 877162647 885075309 153889879 900465874 655078958 816349215 970593158 977013617 290177676 692284004 705409795 983863906 362779261 636972863 89589582 978595449 16438582 286536731 206077378 623192827 658667587 724750825 975307757 990139040 22471407 581395190 508129751 586391101 329810084 535323274 450573235 982389661 725099376 994595492 236757695 724066537 403201779 649579859 485721282 894023216 283893577 445929684 563281579 696889269 897585612 983877002 54496442 415273876 590191296 677069740 513576771 734281376 805267263 830506088 989239745 993037974 606973705 941422538 844879697 942003763 954259394 971718334 333119702 566384449 647747348 825099147 962507187 988746151 177144357 683464849 339660179 409259643 468542437 984515815 15118051 20474250 700462888 922821325 5083405 83441602 812089321 818318278 522436055 607890187 19239129 252684841 378064946 743994896 184234150 960739891 484074195 748653824 785943603 864220209 60545383 789735267 229877517 948680456 803243761 912626273 440095413 761104072 958943054 991837327 546808011 856163744 457365913 655210267 348816193 815181702 176951292 277735482 401654873 469173361 297179763 303392215 398468110 994000514 814438453 835771276 500683816 813708890 698670114 926862107 931078102 980095055 752721163 868107608 48073229 987848577 665382730 907265216 6403853 468361783 485835974 627560302 549617134 617431955 271092745 780574490 455471239 805834939 428301603 512870429 799931611 921757250 207527454 356361918 947372978 959475588 100898038 457394341 102240521 296227902 293032405 915651062 988190419 992128355 591225235 864156851 563227269 577403827 353702961 901671076 609403574 741861653 89542335 422831026 585739420 743628006 521256188 759613354 425736360 489216787 656913151 757023478 94831493 149321579 831557757 946569899 425743021 948660932 828914768 918124496 711509850 985064050 478295719 524339089 862924572 876813026 708039419 708914689 442150880 575753670 582578061 968961682 958988755 985253762 403868136 714243016 217062419 394773993 885034500 967832794 806223479 923128362 406625334 991840826 887396435 987787643 68414100 265258078 59905425 630325476 846862666 938835279 406515698 519176009 743448346 928054125 313205840 527039260 449607498 599812905 786968378 814861380 101796516 455572261 456639906 948847811 470825227 955684865 617704192 631816388 460994863 937011747 803516341 862468522 928597977 995087998 406934717 735760078 674447986 968646767 979583211 999357696 778381102 931905788 793742993 885344334 630341912 894205012 26674925 268358944 165221356 904962413 224318140 261177718 973319284 980992758 940092801 982125548 974106342 988810631 281314282 847597114 455262634 764863806 894890344 948061707 841097891 990878353 124771988 228603003 241142429 561809477 294999806 853566918 106473546 944570649 70581016 642843040 685343416 808438496 296442952 630790954 471121329 803537316 744009485 801875406 650452796 654914324 9438694 69588530 620127851 652964114 402058013 956135842 645672111 784526390 517405809 524186458 793387048 858683852 243645834 747528706 386397084 589271379 566840033 754853214 514458014 962417706 947486387 990156747 395446012 748855939 775674049 840374942 307849586 524623673 392942264 516153707 953882909 968396895 375449789 746322081 844601169 963457416 183639488 928261815 799475373 817574938 770998149 806201242 38344524 568190501 659755971 742250565 252371133 454072016 633961091 685753841 455722179 731278029 502773161 786328014 992543420 995013224 262259647 993669176 717077166 853755322 513377139 662207364 551532388 847744630 96027694 753186034 457538007 536103947 185303288 994668569 996980227 999116942 173733100 901913386 170797636 362034590 55312566 116681701 186821543 673037883 66848196 516173628 443499562 739782123 752841789 906695236 6388174 674446216 320914998 459424806 445890281 691430253 111022066 237699647 971162106 998018256 753148469 903146474 893946709 971015999 423349260 726555862 806557323 902154836 333833366 408971254 218061595 306709871 70894009 890003778 905141991 976462591 464520709 761270264 159755204 535594078 966481653 996765008 688921061 816250627 443899045 720691989 817257890 914095926 433644066 716464725 914845825 992221672 461590629 596956144 685680733 783060041 545407375 835072217 14569101 794335211 440708731 600190802 375268143 401156904 146660296 877788484 26250024 497207602 485366481 604254803 976473818 990442867 459484310 984027637 448003695 498437424 223702842 231903380 972517234 994061624 388830595 999706051 811871632 975789332 750286079 975875130 482497737 588743548 19416479 334241019 547530328 620312555 745402178 987804528 127253424 173447033 479933749 883226826 568526530 819140680 177338885 512402872 936756095 974342040 199826950 541665094 684854531 759592354 96944894 502478081 743110014 945013503 387029284 510899561 334538902 590355946 816123689 837738929 172954731 285998462 735322277 922798798 666573894 761072947 957290656 977595288 24760650 422839304 594009910 618360169 296091991 518487728 406906321 957917808 51302914 424609652 830242519 935242521 827601896 870138547 640160996 942092039 819752642 970429935 428230539 784374538 329379148 521222694 106273497 494523974 347034844 589919198 340868546 452666577 970845084 994286480 727819895 938903155 346168785 423402704 943330457 984379158 69372592 532048732 112983366 153591875 764433784 972646135 373594399 759814803 263541440 328026091 728189342 833515394 799428780 967765546 264858543 732331083 859638081 972307075 709711854 860890576 443561511 704756423 377733027 745485167 540047020 950262804 848489599 948147703 293881149 957070775 115244058 775971788 931176305 937527089 853488526 853783063 540108739 923403195 816946565 853446330 733718879 786731339 51126679 763598159 971736314 975343263 287741869 874252266 884863270 907475137 45557369 183236482 405646014 847751572 781921606 934204247 632573647 920145940 946072741 947128732 91513137 481873217 54441588 646639201 760040087 787062008 33012997 597997461 275202420 793234166 491935491 726409815 197535210 804743013 142824431 466381731 339617547 409000780 617451459 820170069 699791972 705098238 951664187 953114292 377708660 464900146 234305000 714300554 751765576 820916895 263744193 651799689 583429417 643340753 421329869 908960381 401630110 526533468 346741096 781701155 524298449 896872024 820461662 845840198 667959514 857717647 194558673 525629245 412719942 855491674 915299730 959008304 135445661 500719878 261494485 607685487 775949001 998702380 26092809 87266043 458077339 548138309 323067063 551659836 500830180 615559753 928021183 971308773 10631258 370344982 327637978 885771802 71969711 916780914 688244455 863876627 574275455 891749670 721728440 804731632 391642312 774548113 444694245 931307239 577778090 692700388 374582957 670678379 581117620 899938810 917965943 984959741 309627938 983531816 250703986 878733405 406714403 629743857 111946408 932547486 831353535 981673031 799127348 845172559 919438680 919578947 990911729 998367495 91480050 506864474 799761004 981531635 153510791 794346546 438257128 540470947 642018224 957092897 992449721 999020979 622410648 957802783 156013339 657090121 930966124 965856467 813944511 894614963 900047836 981667059 918146880 996328671 437176758 718930513 738481721 896375014 408724253 907046072 658095789 823246035 870942574 973534838 550085218 802497241 884506053 998552891 87206906 98765833 825467378 836929644 439843025 737366185 831441447 864252739 459170780 802653720 75863420 655686650 210692571 606433737 843317929 886884333 115469088 932211877 779021822 982943947 74580737 188263775 832981732 991949529 538744171 929712621 122516213 764207210 412105471 713444370 534132068 943961029 873180937 988860901 872024290 949673394 871777766 873508941 174998036 184694867 405186420 755442658 201230776 248828629 269825097 523534501 353592423 958869753 30040458 252895610 968097410 989152413 254524700 579897013 690294222 701545606 458973846 627524319 821329655 896844327 528771400 850626806 484866661 744872696 923266406 990045305 559281306 880462529 716541868 722184451 723208528 786827999 772348012 972871095 446443985 817006393 503061753 988896602 919954029 972760722 341363177 516243538 243690118 457621201 841356376 994276195 411908037 552989147 952646874 987971822 31380736 111403235 690726652 981696531 460058377 660027989 822160061 946829364 865764344 940413693 559084028 796664625 767651851 905572599 670517055 704820179 949600689 972450697 675167036 727238069 108924628 828760041 328637892 869967060 246503465 416580848 932838308 940284123 79735853 295956728 374552149 587988898 359159465 555297450 875068968 892932433 486629897 838537606 480444652 982798560 177904152 927242151 238255625 610514414 24342212 697310401 665286083 904164758 934973154 982318782 858363891 898303692 21693551 779844021 777896853 778415661 42360066 838212106 231717107 911358178 289302479 510922418 453610146 828761795 956833963 978866236 374415126 830536055 690786447 874757967 294246954 460737371 556539553 741552497 979059317 991857867 718385606 926979646 499288205 675693254 192598225 459880477 70926477 165103136 532290702 940001626 198392906 656685657 980062095 985631503 998440228 998451289 517261906 940383230 118112082 864828014 974511315 983134874 250033317 907668873 602656913 890951039 282376759 785787561 888764403 961298364 4700538 565967652 499859337 778511924 756149191 861928088 85682145 305471022 942737970 998149653 556473326 925694331 173379911 717200357 199182273 532967817 398711702 914696881 986759178 996791997 747792155 880455388 13263022 120462383 955668918 966685039 622183851 967397891 826687871 980099085 331663054 792723246 216432920 355451719 164984817 262267540 519766280 561151259 118776903 418392013 382539025 879131692 280518758 372684957 117109888 184961446 810479132 849967789 804499111 858112365 200625507 994112181 164273981 445332302 497830290 976476836 560421585 967833369 826389831 919691302 250374424 616846319 331042347 938580305 348182762 666812644 355268657 435314231 20965980 573832552 664828729 919706149 173632842 514160004 97969705 931509210 901715282 916264944 271076936 774503031 800097988 925827415 547225825 577918570 91671522 817245316 854172029 901749941 592154315 738115720 510381148 862909446 506518219 757684116 259717588 869323737 752369300 921087230 95330191 442596098 940604546 992128920 126839149 734404702 278572797 386360067 481379638 985147104 333170107 544775705 721145978 978581267 140342215 570561475 879444744 923531260 373352796 992455822 807460576 878468711 18929485 121707200 445019956 683475802 678996821 768705926 530535617 869977496 399413067 648170917 855209814 879067840 786725260 956569229 371271740 668404586 243132853 566553846 19562302 813898972 883410707 903846260 6294638 833090159 88328372 740231608 775912636 924768293 70930597 978148958 914311437 990269144 782116370 953825690 217408508 755793970 580988591 771802318 178611548 434282489 956131979 996321733 25252979 593515286 469521663 855556882 636362790 729904234 626625531 673436281 18507431 681960764 863051278 889298814 900381791 907193745 849576573 905929537 261334960 572371245 299737640 496593314 544358788 684259625 265075765 283900565 880153981 935291454 562411464 892338816 701593759 927679657 554090651 900386679 852314778 983663915 220984613 751406270 32102362 270733317 32872093 700050172 609780656 974999466 551036292 787029139 527808859 536905187 785544199 789268010 790660643 827719035 978255204 988564496 223905212 273443713 591655054 855331822 637591722 841619354 305329105 697580084 32036980 867686811 292489729 560694873 269768589 667514633 545804162 725488272 796581685 815768455 515009180 978563914 815638184 900733765 869702295 979527719 986848624 996354362 827634403 982458970 958708167 999916474 769012403 822320229 713970758 784075953 685911864 934456776 321478621 392133803 797577552 865019505 3006800 16617829 795607709 901864410 697834164 913403265 513349267 822347071 362582473 779679125 428680770 741039569 711229442 846049773 57553386 508370336 548340630 994141117 586421915 646188703 488467294 760409034 178596677 476262972 992316022 993619287 132359567 188667342 747354882 861851656 204531311 796968562 305525772 811179899 482803791 701357871 129836335 209949708 729270198 932293516 232000651 795050401 949247414 959181541 209791096 395521184 90855356 823510880 971378079 998724535 843242392 929500558 932190801 961862227 502631575 999095127 399112449 719319053 271714522 327004383 14167463 894382288 926934933 950720974 50680882 743233095 398491541 497963292 577638532 956241116 612276845 791110847 165972426 713637517 167667741 516044228 183156203 225838102 386126717 957660683 980981780 988808413 579671196 701466185 217008864 964375193 372174387 886056843 573752673 865548363 603680754 659471564 720759775 920612547 365517719 394367871 312741652 887632515 296537559 320295366 894904825 961787137 686150990 854234990 155827659 344003510 259375191 493054502 904108767 992490273 143323790 644571277 970955400 999244400 151974758 395037358 604421838 866922491 551158113 735460652 28396410 745951139 91488587 324333271 753961920 977206500 254346198 843940744 853255693 929270956 892598420 941279574 937748043 990279431 149876193 703705048 826481884 905931415 644933558 708948519 839357541 975467373 499000846 509636847 573323985 794527503 913244638 956478950 106003956 387571585 715727404 785227802 72952218 118771181 448185164 830090150 262288468 778981876 54204971 455470291 747261448 750580307 79320191 586034805 80801925 487921282 573643138 636294625 177814677 998591761 457811168 632830254 993342887 994505115 481896968 924684024 467582078 985728005 403675400 854333025 364223830 521896304 168838938 910389990 384604196 618712658 969182088 990163176 287394644 426300919 179803164 946263137 587958567 864378327 971991426 983380190 367778001 668746236 476329005 789340187 885422784 933526583 567769976 684745021 797084895 983365826 576576341 706531255 76861706 225112362 98941326 474956101 95943331 911744247 9671235 953880008 596669631 788577268 617563138 659195861 462783838 831009364 260799003 874581582 571859457 577606590 516588622 622437265 410045294 966430529 336920384 774249086 395391706 477696850 682728046 747176396 27560080 399984317 731087151 941220986 489009167 921298097 576088200 721914918 945265780 996021568 345429383 518950792 3936013 92447476 850879689 878309815 774119913 790828003 965065515 993027023 787643670 867938962 448208018 686018323 857355229 985614620 195908468 924507299 9646117 899747143 942862546 964961211 841051357 935481176 136884820 786981920 103985414 247771226 959536362 966870539 498998491 522748772 444598385 490697212 982235183 993033957 445154607 955880823 296117676 713013566 858631793 912113439 498321361 500734652 418161974 501907478 49727263 986437234 667781986 697073073 795501569 847100639 359159821 791608103 607066692 642218096 833118079 847922071 573249120 777662234 340998586 501221249 307903742 495847377 508629261 796300980 417856711 530464993 4724462 236555878 285166354 345055904 359930379 867595298 44410095 335572517 238366539 786077558 777077516 958314630 788030622 944092493 710005574 835353853 329046632 549280490 76571987 985975847 714018797 996113613 735821006 782048938 603276490 757714119 619129919 956189126 804145802 920309517 159234388 227589153 701545075 799625253 565776089 865516730 904617961 907193675 968271825 975237714 149618069 868399623 269058733 973645791 809797690 927518919 553580347 861768354 676011064 759814540 907856317 921991978 780049086 912704425 595695170 818331794 980490043 988935776 397795730 649794147 752029329 781796463 914815145 923404078 776536479 990477970 19992714 406167058 384106604 747533682 307976581 852864030 735915327 827059067 697192271 958964060 4742246 232343801 435035510 735821665 617948232 771517430 469371955 516899060 534434193 791530951 436375817 885106966 174436683 232108215 340418790 687208674 941593707 949733220 660082325 828183201 628975768 642932938 750859546 890840342 700830542 739741459 12994264 132120148 394111942 671364378 903342431 945017923 286186267 925573314 659020610 912428472 594320271 978381923 905405388 990862830 291496598 874712043 631604626 854175717 341210506 986086174 242849722 831856791 622768076 713537901 907915988 965875009 487910354 920604536 835371077 979725482 888561964 980352160 36106903 221766395 747786581 941996561 785581570 850280332 424296924 531344778 730077745 736514268 729701301 868998291 221050477 756880734 522766624 675965946 883247504 958622398 498990899 962580997 291585221 663689540 143133869 454389457 453352568 559121522 939806873 994328334 226670245 477047589 936326776 973431156 401126362 485512182 555749008 823823486 120259569 540256345 584154519 644843497 583875441 778843063 351326031 944699211 325052071 328485834 526336806 842727007 383287406 831865382 993546639 999764981 575073054 901297559 235198601 757648464 416305277 792067653 468380652 710088285 830564723 852938105 31543146 450687705 492128389 649878539 566226385 580831431 185189343 655346399 775430797 789621271 343981069 550453566 745738953 854630444 513615771 988421383 220123753 860719181 796266763 974402221 804941064 963091762 961001676 965046595 784565524 957416357 376211304 480965022 769871751 942523837 799157620 846443941 573362594 915873814 204876900 745895906 948318083 999544417 45095096 130898965 63250054 900863468 935040188 987986701 38633131 97436844 752778062 973595637 24465664 444072859 853142731 965704791 615798457 907463519 30233613 245079849 745986340 840898760 405073723 929893966 776502745 849065622 797558811 902442506 859242155 901907587 95011627 164541964 265710340 549153663 313911853 514236044 884364659 939265617 188776020 789919422 878325307 990032406 548749916 885946608 826035568 891093855 452106962 743559002 653321281 837774525 169196343 526176487 283497917 585556448 802151109 959548241 299335994 840315470 387983694 786923984 436384228 933823524 977470654 982738739 709357629 788236743 705246371 961948894 934695413 987852203 347453537 458872701 692061297 882888217 218918896 856753190 858833812 988235728 419088890 971699892 508082845 775412326 168357933 466708099 846454987 858410789 621799511 882100480 601570078 800929930 492630297 982779679 863617949 907871445 784033538 872281993 112028576 553100886 318349450 637955586 968932317 982985694 508252738 879528136 864762308 930869212 561912147 807627379 11930567 20658127 641094878 654338487 348282909 880763502 201668151 957366888 607523105 909181897 555744632 806650722 656189992 948588195 513163026 554263258 609506885 869789428 576573993 758284296 822356858 886564915 643437039 948405144 848065482 934220641 654107518 709241783 365556267 611413540 58226931 734237197 12937681 746951679 16489436 646921905 224513255 786048134 579512487 612029958 801110640 892736279 222057868 892134641 249005395 429515205 220478101 375734850 662807009 976393796 498335658 948700913 402352359 705172118 706753612 906786872 977392889 996824585 938923780 970303901 979890632 982738038 880138921 986863838 721368970 742827170 901285263 921342434 474104864 764796039 500300049 609661753 772072614 835480408 345864428 894885882 941664859 985966091 594522774 620089617 563992654 703238317 989988531 990612192 724343003 755453209 304195531 725507025 968392196 975536297 984577078 987439616 828944661 981337174 524935749 889152923 566188125 889130349 568510773 730581792 27577666 586123294 358115414 814375202 728914009 805972121 735284049 870182334 100812291 876458685 562010313 602012270 877247368 992547971 322770764 969761302 684631313 785039995 484758716 655489722 587771169 667796119 700019583 737952445 308767036 708744081 994214126 998345399 774860071 814224526 327364449 457437318 618161262 958052021 210928644 493541948 57463788 551710962 875229785 921136589 800412367 985721481 891663587 955768551 49864827 563499806 798224981 936348714 932226634 979913360 713387037 900292865 881352255 941868838 364491498 964479761 700225441 774559308 780034824 929232254 785593014 794758165 195659851 363994563 798404696 944807566 966091413 976097942 446391403 811695106 953781100 967583769 195167943 597074698 755521868 974426823 648113718 752791874 265738844 498373322 666907631 964898055 15225656 460617437 862316762 947606545 941652183 983419498 316208103 791030871 488321882 942650777 670599957 960143967 801099227 977811888 695506121 969118226 346406566 728417930 318602995 830878443 916583188 938195788 721234311 897336541 580341648 991172331 313057890 561651268 520343457 782687189 925698547 990004018 45386109 321482825 617557095 741931901 383311851 899316467 969935609 993537259 622631029 942253446 977741588 982501759 411731754 542017939 959457862 961761343 15071598 962103963 290635541 742907491 354828998 995938896 541836984 630244347 925888782 996260686 266925200 566002695 767884171 780972316 407465063 511470057 993042695 994828605 283252531 937854952 883518350 966144420 562419396 724502644 434036264 570471288 962013399 977961900 316038873 964354651 987732263 996508056 40123089 67461018 322048213 969015747 883264559 945489362 151397266 582520706 472659389 553669909 859081621 961076513 279900314 286216379 37720989 805134634 23335799 621108846 769268550 956790233 77484969 868804613 158763367 737944407 861253221 921499441 519530607 890880592 699540457 776597666 450524016 549439522 688158851 878109411 858375513 905547973 10285788 935080188 311770249 868553223 737589022 754793934 451874407 667504403 300889964 927642027 939009826 946857196 826031894 834144137 474207485 478304217 733927642 947374353 743658019 966262964 25226141 52872843 127558472 359248529 674624547 692952469 923981313 966167854 755055073 850387600 86905049 733955228 778963469 974769605 517159800 764036364 695556154 778831144 676937089 737951908 275335234 373637598 970375991 994762818 385361808 923880167 164661901 395103627 186060286 631721917 219746489 712488649 211548692 271155204 644040725 778507870 157039159 660437406 324355166 915626005 711769052 768499079 428321003 514267986 9520732 115732795 86400941 129829284 848403971 978058395 585782789 882561620 521375714 817375591 436782141 446146193 354266861 696738684 3496945 153464191 497105959 888406374 323131910 809298108 308365251 850505793 157735011 354034303 145004067 371082744 233402454 755543608 363671299 557420470 190549947 417476494 775957229 915599806 898559288 905301508 8813946 331255836 198943550 756740309 143976505 200256216 888609165 935338783 999893855 999985167 590248414 800813855 718999994 996700685 868600464 916793887 604359543 984642841 377145543 735282714 684332902 916102918 159786304 887856996 855311062 881451421 992751891 997266629 210308233 305501353 497421977 545602184 386316513 774375924 320580297 460144011 189383073 845134109 379400647 884202722 54238837 140053038 335332976 621905625 876897574 927486589 547257692 821542947 961818330 996066749 771671807 959949035 709503074 963809888 288270323 511190919 714088751 938622709 680678546 768065757 611458125 645236722 593227568 670914162 180919463 786639762 881821067 997040078 71972016 928031701 389061699 515931224 754372153 932486234 34307976 917030011 387639157 773468504 102205883 167244986 326556329 716744861 929312395 991098944 450850663 881082887 753314966 971811767 297803597 516350150 976014168 981351766 94711666 964649679 660444167 713425659 650954295 703366424 225739295 592842327 532359532 839052208 299639459 646875636 523666092 933038729 778287572 924157240 649239016 825155328 339489515 856752644 435933920 775250290 130999129 938686565 510453191 604120325 332874893 620382113 794583276 976099879 675451016 773635803 748406404 926641749 745921892 794593487 666000225 903925932 854358983 915976608 352774488 575870366 448346615 678766981 475207875 646050197 497213849 636331814 752388485 888163283 368976031 483491680 347161645 744240726 350659885 763096218 634082411 825911586 918231791 919375097 148058901 447991109 678856439 688312653 191027002 434755411 675751006 967954277 465421227 615476398 460514619 695791512 862400089 956415349 787506122 936536732 729731061 775862857 22154388 99755510 299844495 660128130 544257306 841802616 282401711 299450564 434843045 999935982 790611005 954207146 277423709 977691048 730991163 925071304 909209019 985867984 129341841 943028245 25172239 119260055 566615925 886370840 617672051 827981481 735408256 850789086 416739026 937730429 578043627 640099293 652427667 982677120 771040015 962146705 893550671 988365776 405991068 821934901 463356837 530116711 374844537 688547293 396043373 486264716 772369528 984278137 326770684 940055493 440501009 901865597 949263219 985891917 144027434 451572074 29885919 510348589 770575061 805852554 237533253 566085532 47095390 660008640 34845574 278502209 909843606 949975739 708831396 948349980 607139388 707290103 822985866 864133150 655198512 678346262 870381177 876713537 251878284 438324760 286730303 290157182 97492626 706810106 196617803 585396104 984555742 994462004 453972415 553360647 510000141 948186339 815410201 957891888 823862960 876566315 276011265 294056352 682240847 726331183 193606665 715141304 91735841 708275645 617731185 798942719 311135639 941705887 117454702 555837843 823613869 880682899 448213031 574880790 936239765 940505404 492992919 715208667 716182539 960809554 613662481 876523418 721532980 727145788 940641460 991996919 901381801 988540553 547828887 849773477 812866975 885139513 254314482 942387979 936881719 951279645 850108434 898668460 96221383 364520514 16227859 58577478 11960406 651610054 727311829 928957958 558866726 694908520 723359514 990266576 204100440 457955207 735014496 900597413 823105997 903331004 764240724 791459945 695431323 703824787 755984032 998391716 250581100 571457769 69626735 515504403 78011739 137446446 421605392 986629590 722066146 739198866 337629080 874292868 548656186 624600127 884195976 944385995 694833900 763588787 29342961 534138099 743064638 827992401 491339840 605298194 749959082 938104101 512369591 707783671 209046977 611606391 798335778 873882990 621183957 714042866 828772628 885321689 355267285 375041034 767698830 941245093 692605992 698898659 572725872 818840326 456858880 766626422 340606833 670727307 62990851 878467121 647592303 659202323 113648616 715827087 509932175 721033216 671024763 873789004 10440128 475967918 235161166 415648791 407683558 909370588 927815293 970896692 155474796 250351601 356162052 434127946 465303393 840762475 124572768 683606314 16272275 372957412 124583655 957289158 132921641 200005605 585032247 905805992 269546117 319444301 970765550 974798258 722909024 937535943 202506849 875701985 596193884 763289621 572626699 589129457 259343133 714057255 651702823 780141571 497392565 524973300 761183506 917690648 880489621 968039703 179336356 498669318 171419897 354663291 484436899 678214488 769372434 926937002 712321360 914298891 136458929 763722382 986947443 990998961 54509459 579837853 423027294 724703898 103379656 584977853 504662970 602750364 77510502 286417030 881944504 886898997 261920611 697502977 142727899 393738347 901492660 973891406 126442893 357217850 855710094 894382814 614949304 771756737 656971619 933435645 367976155 765691196 894545719 978080621 944282903 953920394 660979686 956091648 192747830 729551888 169766849 172169702 621078206 968239685 550992584 667414818 85042005 429954069 512170242 959779232 178889984 816608153 234569839 494580909 188000010 919350465 511988209 684639888 157658388 347727300 775786458 842295873 694794502 710014304 351489947 472561680 687090024 995057705 987862030 993006127 732671763 842617377 316415422 604461038 961216547 978002276 299876253 411316093 130192012 585110121 485026953 820315406 448864525 901040707 594989620 800022161 463370404 580196503 199034655 600780011 460387867 477806946 301380490 511816140 110618494 451345506 95468557 510316631 255831611 574072677 527325539 730729705 444317649 969259322 240529226 692918364 417185704 940159599 635713964 936085752 363283943 975657761 87695407 640489891 206444012 939251891 80812323 488560210 128819981 652916952 265405302 416347985 431474587 868523825 683705591 884269783 85262366 184624392 525200097 859740219 869564185 998311900 578742569 762032046 555399692 708373513 43552329 960714283 168214185 247347241 503496686 678712067 501618953 920509762 801523822 946934950 211911542 263290248 564518988 701969843 363857031 422654861 460161130 979515553 508971770 670421244 985745453 996344372 793633927 904314786 720573130 742255187 228942897 639060707 17110569 736671425 65362686 275548566 703993358 952511695 729434656 839737586 725580013 806732592 559918032 968224202 924729116 968498488 666010530 835280452 901432468 936199322 235155743 689838909 556065150 815010498 189461765 817414951 303487971 904738062 927887917 989669916 261028122 891770144 887790909 980534343 595255617 974404260 65162756 107572245 95104813 905270565 308601908 539810992 350440803 665070835 288902212 391686859 268107775 929230123 141288037 639313999 863842851 973035348 382901398 755366335 565664142 999969904 793319025 807996704 32732474 715247347 214802766 974829938 401912303 405735168 716127371 745169351 276789856 972898334 163019867 722880830 471307983 716945189 532626242 581840652 766724344 977246058 160274779 422833932 704511422 844287616 990855868 996415707 973537847 989777613 520523089 695136437 882157022 954749853 768833338 880656914 724060697 810386675 501239287 791086039 950038361 993558500 746323037 829732609 81356497 440299581 147870239 730090812 431453163 453142419 308794454 966750466 738126514 790459836 189187276 403830146 485176584 570695755 781006081 881322956 531055734 836379850 398693987 455079460 55519471 448542798 678721133 834317833 677980565 732898235 304604461 839252763 899243117 930283740 120298997 958710980 534463367 606040063 303380461 592119697 379392841 845979428 412957878 535356442 719429673 840616702 702668140 834108121 714545062 889372338 774155386 948797423 309716551 471566084 126224049 482815671 647030234 786885640 499522 999292980 514193842 862109560 682098407 781537276 198774926 318465745 561354114 642775922 189067352 448194949 378411234 984738066 660697072 773566896 492438195 619776338 640768308 725941988 606649034 997884480 251518721 290774556 125122489 188845002 303735131 844027569 439687034 787482220 860716160 996552440 647871500 711561960 724393682 811573739 394113178 777510593 453480384 891231243 695977468 821132685 126901563 669548441 299945839 507034193 267421400 974578985 60011297 920379826 926229407 956043094 486978804 539640940 727088127 755446259 25021184 632461153 362699234 403170343 859219705 967233215 374670737 554314523 223412596 634814206 922704759 962238365 338347946 461129712 137389903 883397884 603151371 830471229 884327007 923477677 642292392 651582666 198349699 446508578 436594537 528078865 928433768 952783889 331255237 780752373 749456972 766907414 660487491 678510883 795706049 801144273 962948548 980614168 993506267 996895511 552266783 624605158 406746056 837890392 864753418 907901823 982443066 992801901 263698792 544685404 622438062 890770912 177557561 320680047 940664715 982981503 672777029 882103473 694864324 695854803 522707929 859498587 242189809 857836177 199374379 345909223 183827797 336284373 218259296 907765336 354136280 989753667 477837657 587217642 882837816 934710063 267091079 590549086 164013332 835861953 782711653 881819719 997467390 999322900 863970344 972032055 548600392 973053041 914129698 950426669 364502321 996699163 421082804 608831852 170853277 946545734 158524351 976572357 743244451 783373181 926015311 976913509 705567357 755204674 146569580 326853661 782929806 805895440 159493143 354140780 457021135 537792387 482117301 608430716 646311859 846567912 9623067 486031753 104031145 885596763 770790893 860953978 138259150 448055912 343008548 678397561 545329911 826721352 39619566 509717674 847438950 981789952 578106850 925594662 520387044 568836471 327663709 758242437 757740417 893318333 265906187 663364470 681046194 884986909 618121311 803132364 314444590 964674510 162305438 432522989 963438033 978448923 655605099 723328601 807823638 923197705 570350206 758565797 26998494 906454813 175329562 739184342 653647812 769271116 543051417 681450262 945746293 958141121 792916891 907424934 623780745 977744170 488408265 746931249 14262954 683965308 186220879 673191761 482818675 884148204 819165027 852907811 655882486 814929589 243625093 595486467 908445300 931224778 382766990 595552076 90643662 149017214 458464313 741823794 929048060 948323596 406886231 495374357 145041050 576590396 634384611 853110542 672296902 711678685 339952970 377902875 366082399 875391348 331703807 411415211 641573783 765189429 13719908 181472035 246402770 672400382 870537119 887345648 99526346 650102722 317172127 442111655 267003858 603408103 413681597 554039860 963888899 995333337 740959276 778707692 409759982 821871027 947449999 999499226 37541901 81509378 108541184 957337019 860640006 897302898 463463320 991255509 420037821 680178566 156758541 247401124 413480206 427181620 141351055 516297930 920685895 998288033 452337099 549304418 640333788 822984726 921056771 950285218 287687973 970128358 5320748 478986685 454825312 935434313 472944875 669044406 942498340 975324073 350006996 951730788 838625936 870969404 308009295 754996730 329962042 765185685 628151371 877175306 175012498 962515606 752927572 767993362 272709715 296889475 413382258 500947290 478944421 666676970 100622580 903426306 832570283 861370091 365767499 675974981 781676469 920576408 227712061 487687230 482581446 618433583 200094307 498429930 334949966 586485348 137119579 961997221 295081112 740596138 450819299 566476477 985514519 990982103 251908639 485287701 716056833 843245113 96649683 890618051 210037421 289897718 181939687 656545480 896105498 961559133 362204723 404720351 32568409 927373983 563020765 858290297 195989513 904983548 442805598 542819737 986798965 986896010 640961357 836412032 588702231 999402972 474515519 511424952 415600406 618454685 879105426 981800624 242044395 758821965 716724554 786174057 703557207 705787572 929206372 992334992 571672983 722041951 435230126 682493555 549389063 557440354 624585288 901645063 924882307 958668499 992470036 993435228 995854436 997587941 534386624 963521164 70851848 503823278 159020181 895726432 961471617 965507671 331946098 683231319 970177063 977179189 432123444 605628949 45580902 603091045 675230219 819961569 35356126 508722163 603340105 943402657 318341670 353215315 970960824 988053120 576621604 799067130 618022678 717314498 939575425 985970079 448972554 989186043 76173445 754815626 682188126 986131405 891626434 903376678 150001108 765098918 321889004 593781921 171397022 191162782 783112356 958314642 136196363 746787116 818866929 941676784 604140324 735191537 208655467 684950181 918713796 985277077 993425859 994499489 867792489 887775013 910374309 957899865 976647634 991588623 367833948 821487015 754546618 865651941 139998482 362543153 718588231 926041968 620569895 669781971 797598867 917230705 453321847 834765414 638016824 918972104 856270836 916380742 827197797 887862576 340906160 394192462 248154204 937134023 974246080 986066813 918427589 949726741 897831373 997993030 936900955 937235346 30970066 259994465 48515092 394291296 585399458 766871345 855949622 933690561 948673996 983863600 686803779 775642625 546789042 876740704 89295500 221274791 403253453 749994536 488261983 813327505 382570293 934285202 74190324 771228545 894648524 894953624 568574065 679541000 824890828 885864647 291337607 300016509 6307329 251459243 143786819 435484454 82048577 941146699 281704977 465644559 602562448 949099941 60455714 560991669 518641297 841479586 465664187 518429879 462436338 492356608 486972471 888121525 208042493 547489846 823293945 916375095 113369294 955740125 745908457 975278713 808704720 974805804 451488277 710450323 300668940 463763344 303563675 752962741 121917401 807165542 725542910 995996188 451662432 815248483 877577595 925455985 838889225 980261739 997625136 999471243 760205955 859384876 811514115 900164227 953614001 959741716 823448247 945652550 150427944 945053268 488033577 757285857 848832731 880427395 679352908 947653728 8848178 621638884 237600234 504397645 152429301 453615009 949949273 996193356 901350709 954116506 924505299 926206793 605631411 965356364 914311962 940082855 332865890 928050716 388518991 710001034 48156847 562833966 10236158 397220102 35128898 440498928 249274204 253612957 858992964 914133179 489092948 775468276 369742361 962074894 620480184 712864761 200008043 494758620 433819237 906053806 288630649 742902860 244938599 616949402 999058660 999383914 497803981 855727281 648449635 863873585 114057046 235841430 1180789 796487305 110597642 594162589 19667264 578450291 194221242 942109275 731841808 846633472 710940307 772148055 238691354 444748715 295107060 494910019 640134672 728539197 289103832 933715658 794008421 882042091 505348156 847857331 973217803 975155551 498945731 726750363 978031643 998092493 192110550 771893649 322596303 354322018 999881004 999933508 982699201 990359923 908213009 988900977 518851487 568961164 149635046 718281424 685817331 775608660 981585885 981983793 275406942 980368304 830379651 991367509 481177986 762055716 191692804 639296571 307114814 444079287 687530 284618946 298674555 928161405 399715034 472115618 514052022 889908698 306519999 695014780 135657364 137620415 688988119 865027005 334371770 360701391 781775969 942917317 136157926 393689550 682587231 943420290 722530919 748327570 17379636 938273373 575282551 596626500 349705327 637178000 650606461 712118054 658480628 838862415 302167010 515296728 796257522 831391170 598729809 979197974 924606723 983457397 975993990 980450931 854685797 946467150 112794355 894321462 689040927 973169413 537833318 613357858 229766027 393788729 910826657 977090993 696264587 776575612 322942733 895361912 423409283 450628882 940036472 966580922 628219421 923414233 664945490 682319971 140727859 347114225 247121063 294750318 550861978 587502430 560683642 876579098 286777398 551298172 212973222 516340620 882532085 930727395 62033783 919087396 404622026 905515702 900394451 957582453 560169065 816776001 759315304 894522789 477200807 565629128 567207331 629135167 377329528 695933691 455418264 789020460 902077018 953648325 873847762 991083904 360533849 904349825 114934611 131803210 264806578 769196169 57791052 781515813 881832279 907585350 137904865 998618639 69471565 595990764 605416309 792980120 389998071 573775708 142118898 651857989 738341596 980429752 45250931 799920540 602304840 664983032 759444001 836590658 194120833 241971680 358171087 450346060 469361163 472751539 592585149 976284642 570813916 805537894 765381378 912049697 396262178 684869935 815774200 933571589 742138297 787479246 145612517 486015380 546550836 987780055 700090599 769792037 103572628 757294902 553837321 823794858 161234244 470865802 568470565 601489062 760712687 945239129 394271207 693855175 897593079 930001314 287383964 701190784 922054539 962746175 176995297 499550584 233816093 911841577 562210896 781001013 264785354 312865968 720072068 747660260 433888420 662942001 871904413 955026164 91286366 197813010 25097771 762635309 727146331 978603443 680501922 824395957 257571211 322496437 424301806 642766249 253995463 712352763 771152293 850185716 866446062 967326397 510653090 817266199 828137978 931209378 490977636 562766486 216299403 958893978 115956419 668880448 673994719 854340442 720910210 766681034 723640662 756895224 804954436 857734105 51002805 346411247 421248456 432538127 575712423 615486619 280222771 484009947 792629557 929406820 657094875 903638688 489002471 823471082 686794807 992253517 714928069 805148541 265481486 647475677 716449068 981571915 84116940 523961886 972093351 976472453 940879921 990162885 151689121 790392165 944158906 946313196 357793287 440820686 993748651 998272044 530430543 816577547 353336581 720261143 830484179 930466836 753370641 897226427 492734648 919908424 378030817 503558706 369796365 601731599 31840153 785047646 578634417 666571227 3777900 112764642 690796050 977314383 320593498 562461180 964334923 974561666 681312815 718624495 445666263 815079592 79549402 952992667 340705325 589634916 200304836 306457073 120929487 705426276 363924810 990542234 41402827 59642126 598467673 748774279 12111627 205545609 622780767 986428367 231212425 327683256 223067695 769918156 595260632 900410486 145188724 786413882 578773923 603834293 207334425 480133342 275419850 752719159 32952583 315370599 294409604 495728936 13806624 522442724 42363895 635991377 820056433 908304247 529344201 610881518 766279151 902914982 436300870 721869045 381651012 457430041 274174053 398728524 65927982 129245419 750573684 969039204 377179852 911990285 133409741 769046919 292585504 498478034 239815112 615220646 146342731 557261564 300675729 421504211 66061407 244086172 472585138 859205407 894364810 950559914 452543046 494989662 903444525 927906786 51677351 842684726 582103306 943460976 134030973 212562690 265582322 633471032 396626219 574392450 871560718 925397019 238531116 473713261 696042437 719251972 163493465 619509955 798392002 892551676 603558669 960442793 718917546 886561207 230432974 976180703 914095574 915177031 963919110 982143481 741390618 761409097 965067420 973449136 170979305 210602996 788985598 793414732 158629112 303400537 487683294 690287746 533832021 713848954 286703106 705454710 307021676 744026946 503884566 683463756 401524786 419940099 888024398 889059622 808043087 824286222 414690710 784575489 201166488 235783808 251152663 899015789 738867208 822968738 150031774 667430964 703781594 776977704 581094177 589964313 948776343 964127822 668312799 756596391 766630039 807505732 499518809 566874619 897554394 964459439 81550057 635676164 195599703 503489597 897245576 919420993 154987312 219633992 20774139 870319511 680335944 691461171 888848505 892292059 461284974 964278693 866450613 870725466 686727419 726452240 934831829 947782462 78547832 363253911 54168002 142679892 239823958 689962675 8237185 92320165 124045190 868942707 511427820 725586889 573800016 957355930 226386830 468392655 173937098 902490105 272423322 735860362 405780586 811530772 666851848 929770009 739660935 741213535 499314161 734149553 518035413 534436351 194011226 820663569 211725041 326817123 490504039 746135712 782299631 808476595 539893482 601053334 47525180 600888621 62646080 998095191 50068870 868029358 724234073 826415622 594264445 687937901 866522270 915923272 120234376 937632868 535587867 678136499 949216715 998277471 527901448 744824120 296373333 862337105 177374055 892728375 725332225 738358910 168929079 946006960 798979356 810324486 615022559 896086087 96472760 762731951 110314449 359035674 525091645 606555970 877440130 965382967 834151543 969716280 653481911 902266816 138161032 459059756 841653167 989720643 53059885 506713986 84033474 910315852 18617960 982914459 86732796 439260836 669649708 936991654 856567516 944394654 748751688 824330098 186727502 545040342 971700905 974090908 707155134 855581747 158220244 801110015 514686085 983732995 143835510 695755968 788301816 941131158 22804797 325358075 53224548 267173451 969774049 990065954 892705392 911591028 476646325 929314233 123336589 930598767 202737157 272990570 375538621 445994856 118522440 256923555 577032366 858160273 626971690 928745890 188927241 465948528 924154872 927615944 837640069 916710179 775723169 833029046 432164215 979218483 945130670 960278315 458417956 797223314 81290779 693765611 195028102 658826439 256896616 319189774 544761094 927801315 826977792 869929065 719156701 791450213 306086739 857310531 34885799 577753282 732164765 791896341 254390731 269765201 419691309 882404963 811444411 996248203 867116731 972274922 515114212 980561759 815796233 835054125 852100249 922283378 649608902 996715667 93812964 663822485 928804338 944169476 468761624 889067917 996638098 998804522 560394741 708382117 868977695 936661316 452722027 959570484 396152376 527883776 48322681 758930938 489047316 644225423 348872629 929689418 879983007 947643295 518192395 906197396 5347912 8016524 711033360 929240184 216441648 943088094 628685964 696327800 958347450 997987172 268670513 636773431 585965882 914128326 459067794 922795767 777002227 794905867 622018773 918906931 762726011 791434437 426015002 967466918 854152815 907658491 516390820 646390148 258479057 602626871 877379912 976897474 339060572 646268541 209370471 311517113 806192964 996118753 354576460 801285831 996018712 999812159 564280565 695601076 400535770 843502565 515582584 716346223 160934956 532510429 883585319 916293720 292468119 476890043 924248445 939589311 216611322 731547415 816529200 877067716 966124024 993654501 797942128 803616026 192026553 518761326 909173366 922395107 639522997 900196546 938603663 959568406 877516842 957307554 264451963 267559341 361792410 386754891 686770635 775206883 442369747 868975343 303987782 811875851 807592491 830694861 488491897 863518612 799414826 844985667 897564225 943739971 274692182 977389059 768597813 818521637 596959552 809015054 500102736 794481519 900937103 986687576 20793772 99079216 503553449 968014119 145867495 938213826 642248091 724667219 760711084 881692048 652625100 999105014 894742150 961408471 863508388 910942659 718605260 757628030 987813377 996689677 574229864 993726052 903887465 995215885 227548918 881912751 853964391 913679083 737718448 845742905 877402933 993421023 656503139 992051521 606376281 723265957 651760880 709132728 200479209 250673388 343919491 761901232 318153648 976378120 702742834 727416983 740332986 914309002 129493450 493174062 928965329 935372581 681290705 765135934 984953994 997730074 765186319 945746213 179327098 270233277 889587744 956365906 115011044 632943608 499726561 961377831 928287531 941247352 171380617 830414379 558087333 675175968 8710387 339368736 714716292 801029584 27590810 991529908 500659503 513880154 775172313 999403131 651158908 857207066 214066363 300258746 867587593 871396425 911234807 995797182 404051339 510338723 3464534 368935551 50601582 462469412 686085551 766537064 819207009 852155980 896542310 981614645 415841876 539761840 112523434 158780741 113578702 821380793 64788384 467544323 903228029 974236918 259209194 342894180 368792149 784319373 817969687 996846639 493556216 532090770 502017123 507645779 725940683 883596170 486998557 751965443 5579813 362931243 915656658 931007249 460376767 879694117 704777689 899595123 405419061 512810167 616112723 820907745 398750081 510538023 480757417 627190727 777738697 782099570 349827255 664873919 19699300 64010760 278786257 804475142 620415926 639836913 929333394 966517354 183690506 376150335 795326776 918477821 71769130 154592218 323872825 496993949 753234002 865948029 148194810 219739863 329757842 706795219 954223642 960651242 993711828 996747147 111375334 368060042 483517301 566230287 75965426 135532014 767818744 914649256 82350113 996493585 242235111 704675345 917826903 989879945 623203863 791732359 886361677 941277773 947647532 993981309 660340050 769792670 430410024 447096615 660473358 985507608 52381621 814114124 312307828 591167479 917798838 994950269 750402549 780054586 941347432 957466481 728045764 893941864 44909780 256211640 88766225 599284135 900180220 910244663 468033627 663602022 135633445 751536214 886213315 999824571 328522051 398133571 306168184 585529946 764061376 849839093 472796828 704398334 978691106 984328868 793353420 931071396 198658989 444018643 165484640 983938029 873314567 916484563 757102538 880375964 32428470 506146881 92100911 207162308 568154904 577837859 873988971 997369307 617784596 719663500 511779568 586281456 869961827 947249241 296931219 320823063 104240008 971777780 142942798 472575423 474882505 742973564 380887605 419686465 759698018 940678054 135002135 633250835 817404546 954336488 645842877 747833611 676202149 903442212 565401282 603333988 868403333 922803733 839306581 866320688 398620261 776472295 540569855 595004330 422035066 872255177 518411525 676183060 294787441 534577375 492151532 859351295 435545886 720454553 472550457 486354252 419872408 813270567 102605059 947603230 927939881 950032549 130194631 942130773 57595495 188029006 308052083 583044075 404606623 678249729 660551789 963524891 209294680 638067727 133995339 503449246 462505610 627760151 299840667 559899845 263079216 555602400 842776128 983509446 382432911 945555044 653811682 992544714 696862522 958080948 881227112 981915037 888443597 927270105 230268188 745084780 525405038 842282363 19833693 920540385 933926931 936119003 646927428 721000122 731855686 919451001 617073460 996438694 724361992 999333382 163747620 392047804 387624918 397786466 472871160 488973069 785475826 855468595 937441826 973531050 738855185 779124558 418425349 493506416 904719850 919384939 613067363 705923674 121653162 300082645 745548461 951032138 597897272 855731572 266012652 824826698 926126559 948354167 630864632 694702571 56482548 809497921 333093995 574018370 416651852 492779653 489164536 711050509 427618798 577213169 22204718 837800978 636854184 789081669 902197241 905002239 780863526 979233984 280702446 657463674 802295612 867334003 905883520 925959684 797314385 899498831 288756337 611572368 37834080 966276073 858858705 996373654 965392197 999129147 74006011 736017744 346184739 994138218 22095978 786092038 840949398 873620708 319997522 732107101 78396071 673045773 841650403 845202086 812874047 891170405 229810704 345800206 129245405 619498874 411940665 823221672 66925695 683908955 809434850 921876067 772905302 980194353 601260969 658607696 71258215 328108301 155193690 919355165 97403769 599756499 909954815 913650827 633718683 994952229 418191643 936332137 29040192 176141918 177217230 724448035 333355670 584686211 537605568 928064888 767561493 825397414 812873966 847826863 290583802 623468363 64987646 553124130 263156974 448581274 728800453 951552246 212188916 334387909 102604124 267930806 408704395 923373650 734751478 816588081 492011781 778191882 539858977 922477015 401359284 813592005 3560862 858406889 203220466 837399298 630191845 691035275 626060418 820906954 592677462 823026335 406755522 520045977 160856291 387997847 513013851 711224125 228184154 868926108 390123755 520611436 511653955 614812125 776869910 958990519 691345851 990272899 533549222 553751739 890049913 978965621 7593644 975142492 620617774 928482162 65980305 745785924 751159992 953993252 22984663 506020717 367856526 854405746 26142197 638275774 66888931 275539069 442017616 632868271 994766513 998235207 143110988 760325940 785439541 878235389 41111423 125768788 597247704 685953647 17939003 660858323 913641186 941091866 883752506 996538773 971601570 988921307 716900474 799957963 371278532 720340092 840890830 925858516 509762063 614990674 859455860 997264209 242704974 423897199 419757633 701097504 267656974 762634694 323995800 696440739 54852517 248021031 182213937 594916823 578326679 858401441 431995864 814694050 532262 211003696 326062611 781107500 984180558 991490947 421384369 719612517 579465008 910260466 772268209 835568040 801360429 952729002 417442426 489752467 861203313 950515472 31946203 911858676 218489958 441391962 348609007 405349952 874744031 991282511 557859195 948211587 699834986 857440383 660602373 820537700 452210368 824063196 576546782 978652069 912900734 962637514 5128057 580709649 533755565 586336516 459880987 686834580 760258738 951355978 94174156 199744041 868931794 997879889 527090183 600886583 886271735 890116218 294994995 544498212 764037835 904270670 303470237 653498895 915373516 961953812 730312430 816062679 431846471 777684478 442951658 997829329 149857871 785143173 27621507 44031732 614417451 970832676 740923061 929417169 564630674 632111529 276339442 853865114 947448923 968426489 102655706 304366715 928849215 983924655 701470136 705464917 372948368 814008354 846114454 847451722 349266941 811308303 778485059 889774399 874464462 924835570 37904468 727792397 106077011 921608572 708531553 848984079 3603506 952651376 856371873 908814162 522551261 653768116 406899864 650743250 392260519 868590445 103384802 294332964 144633240 401362983 88276204 757395010 363997785 587940339 952941343 971191684 619895375 952227627 274972849 361854676 701765203 890807754 237200717 654508577 270789634 399036096 655024295 794249922 719590580 955353825 502147075 691720476 868422332 891739202 1453160 666947256 22004451 404267312 695846395 747559329 17233624 644218801 606527938 876924701 571990366 837651712 445284428 840374268 328601472 360005638 198425172 492587629 796795853 861889138 784704740 905823050 494683195 710331790 81463880 178639947 291405823 609662024 638971634 900657493 473395405 817915438 346389163 438481618 275523995 724179541 494435349 878994028 903116859 988421363 565072481 625685939 142454300 339338555 116725106 306293316 22918669 74154691 88849494 557949729 730262805 840248291 580159294 643164359 113335128 629271397 232244361 624935557 370499766 635147201 650699028 843639140 597311574 705660850 274590628 918609142 998919220 999459949 214828973 623438618 387804965 685446943 527943443 875635602 362795152 693215419 841831239 903511710 862485332 967737841 404082836 579328106 602378244 750753496 376187379 749210982 859619834 993434602 607086298 624221468 437571681 645460087 487668864 923997679 457403973 680336720 764007672 872264471 415010519 726593540 383755433 481819822 829205721 937901155 674947535 844983616 561782612 930827762 278129845 728019190 904422224 979466062 452418791 971746703 590246589 663558430 586224949 857186807 258549043 263622465 694765457 778993250 424308752 771778253 899867518 920118520 364846471 842932459 671785504 952201844 542363268 569288705 371211404 901064414 690873900 990804738 148102244 564836188 273100283 684995183 557022566 709234590 321100892 759195461 811337139 875243267 602832118 937149467 63671236 291961288 994988181 995579519 365125825 527248709 256589265 957682241 657966410 844429570 888919092 935994072 77132519 319103892 469044385 676496767 185349614 378550399 770285606 941928389 24231355 237402518 744585707 854300511 920030018 927324733 391177847 792952048 333651824 400719712 532873264 540166941 874131268 959779727 298230600 774678392 123195270 134729752 236886293 756329059 163200191 950716475 250996984 747894682 324109890 753754124 959591879 965612127 654310754 982640068 958063283 967736664 325381727 952232946 322765550 525531237 713766462 893189219 14421964 773230814 936597006 960491730 454686069 688965249 547139310 922169744 876581616 975612443 94070139 224580887 446728370 995748433 522872301 835538877 981944092 992704164 25250020 723400030 426326196 689008276 758804626 892685453 632556573 737271567 356894463 494320227 217066340 403610890 838546599 979097709 459961651 738027006 74364720 108280018 879982361 952612588 623066980 732447480 26384992 343060253 542544806 877270000 271407379 773424386 880524574 924333606 119052019 971839487 467386345 630333224 262820218 437204994 210358134 925326292 566620120 789149320 310769234 663417453 513319851 982894675 496360376 861727866 260627550 874989074 868704543 870089291 575130355 663017388 688763199 714763737 628738673 937645145 250316093 652676209 944326204 946958432 195113746 373078119 678491711 852206742 521177669 670018613 526775986 973720582 137147679 389035526 993846510 997678774 212232677 387589877 892286061 998524822 899497489 904038092 86084575 613848488 736005990 752992599 860605584 885109364 525693658 648512053 389153482 553259743 56292438 655890984 900015380 919448807 451223100 969122146 972750668 973101945 287172527 961621909 60607266 831379162 69131241 537799393 16525476 161269585 560696003 830532503 425564161 684530796 665823402 991312653 229989662 466411487 437613012 529369282 10071140 97914944 13692424 601846356 473811174 603876656 432798377 702663434 666455533 895339475 879540128 964706970 39713355 546855263 319890035 961423649 922693106 939155113 829024249 938590450 838045906 941468376 969353202 982292508 913421523 962826222 191037164 545948213 704872156 766102573 490975941 726341714 705736336 778946976 386250470 565202428 140075147 451313017 115851420 389061893 39779254 605958479 601639839 671237875 337710415 577063686 124064315 926715556 733407817 988761525 836114602 847919555 443886070 984447149 121988926 197922089 813999700 819953644 904382897 939211534 122853278 501972403 544283661 975062461 469097674 895799662 227313680 669316025 815681578 868396881 2470632 189613808 351674024 797238995 358107323 959182767 21480915 772629720 985134685 997975471 875059231 932589256 667997508 980477979 572492125 706591075 93185586 496743564 422487802 642090258 715516607 871450956 48511300 170088282 451856590 766508823 350639107 923269288 965884953 972581614 560998337 819217724 935137672 985489645 139855398 712878420 906433937 939524565 907649836 975871133 52866558 550439361 993056751 996503687 65735348 226785933 119319840 170154380 945056504 947537046 57254159 88864700 295285526 361294763 263772948 671317092 352974023 562531177 899460925 959065623 562315352 961890322 948762326 964137261 474788854 487773979 87046645 313581694 570074814 748786553 561832404 741053208 985629944 996825726 458684951 774621628 748194065 951866839 822972917 965746052 884050341 966765384 129878904 347432776 483433563 805415554 987178413 988483988 739022619 806940546 632062267 823900567 759605607 947614018 611497603 941150997 238339913 583563302 653047101 707063396 802650058 858902890 299620812 472571990 76335785 664312880 398426083 753201290 14102501 218734106 164068854 644228751 199266555 455106702 288142169 965386452 395962490 677911691 798432741 926115537 916624869 983556166 95446978 580828372 300630725 899496638 740462688 764368241 525760533 997830350 939756814 964860994 293293241 608548151 562390247 769382632 200501772 434148342 113280375 935373633 695014601 760992403 935954058 988077857 576922359 806717732 52340287 693474621 402711096 549230931 612674333 907543862 750572289 909419023 342772359 533297789 313927855 594675614 67041995 480055674 69558880 112668620 378483344 546737926 48764072 758413214 500488396 669621562 503942329 871154573 9475186 637334254 640306654 702684837 697001645 836406502 681865749 736942732 955616172 978966847 871498738 914594495 289384770 322534158 993421508 993496700 156311275 697520470 470873742 787069505 313654013 800783869 716949360 984560887 115323829 189139796 912261389 971112142 420821402 952248223 729192088 852929147 993695665 994620331 833442100 984528070 478739890 712688922 458823856 715373721 780872961 984965584 325331521 448995618 31551276 247847333 232739003 626243573 763506838 783332772 408020597 641500828 135136356 182432304 337680091 357612425 232162014 360429360 480930598 701337510 669242274 745986742 240750186 298130643 251051038 917049181 950561825 981566089 677484211 755943927 272854866 541755710 73655992 469392523 281102061 862344095 513151390 636697532 50265460 654483304 678196443 806489617 939656654 958202228 496234671 611888613 151108715 317283920 255571869 551474937 160120602 826011659 779345012 997706116 87156381 205610503 15202766 561677855 365851598 530669812 168556672 659347003 49330849 963704632 400926018 474480568 237326444 616048117 212965645 488526409 725857427 820115746 24212774 965564100 613156929 970942612 832936028 924044565 161878961 808419496 721372294 918271263 49657031 802842969 250608231 927967268 940080048 961735077 389284255 953031620 712684093 894148530 560295132 591992871 110975735 394702698 357381306 930479744 832423298 892303443 867791501 970946262 650998898 855412803 745847316 947790241 937244975 954826879 269539426 995167261 588547728 935258805 203063010 670627558 505642434 818568026 316161307 595664630 860697850 996792183 845175418 860923204 323210972 828980164 965864248 991888066 664638687 987845360 338641477 996080577 988690104 990427532 457111326 862900901 45884184 441988045 174968442 820148772 334948563 343875911 730175747 933166043 33094546 567183278 421567187 744961373 249258706 681036461 429807111 571108768 697815993 837247160 500016802 569283730 580377826 585250394 791070903 819415751 830988478 894485338 419067978 488593033 884513462 956535755 185494782 315815614 201499466 998047341 199450665 929190522 367021892 407328057 186407200 188854812 71944783 537617929 745621781 834142542 588658386 871634614 345364419 364229051 28526451 491321819 761686859 902996212 951495206 955677469 811210661 861167581 247533884 681958053 94299374 158127808 298079498 367166030 772700637 833436491 841164037 902110705 931798176 986845190 429309368 780398408 452982188 484579770 750796604 903915863 411422053 857236713 892489363 933981178 498438973 766415873 207757236 801118252 453139275 764073386 190925695 582713279 478881651 861535858 180187491 784245747 484668494 647227426 592435892 742575275 9138125 554533548 223841764 351221163 813885750 938008255 32910344 397294721 165684036 487855882 551956096 934992504 523058219 714076756 946161456 965829786 401646087 799437612 280434810 677759062 657625366 860962949 499261835 519337107 696652965 855881726 616339217 806232641 797747485 903368336 596272855 973548544 246740352 757871226 382909545 716597608 659718854 870237039 279504260 416513233 864988349 977860540 275876511 742944626 165032211 694935938 887488995 958557650 457338195 879181643 446522291 678678591 950250857 956951032 502204629 750970769 270443390 594789841 230316368 518861242 704186837 738125816 330713092 618866900 698041320 886193240 423445706 510180675 807270085 815629909 758641501 846543143 73782751 513095028 10929071 980448366 260831096 302620717 836905664 896670396 17477930 67477321 622907486 844609633 167518572 941395552 788482346 847948248 76035370 332053316 500614606 926957712 440748446 879111030 262775464 487960818 321740178 771429608 139037564 991927772 540642518 638817746 869979742 890331617 322430482 508084646 702959937 924288233 915782740 997636724 148531018 972556083 756339450 993715475 242136415 978264809 534108346 864160736 302054739 437564622 389854671 999110368 64970417 927244111 799057177 903361563 211079076 252566150 61725004 623571296 691428096 738982530 163681567 502808761 124395432 942800139 321090004 811223936 157287835 617977922 295769964 706669546 665131004 841945441 552408665 861772353 591638494 881330705 486707215 965036145 148702183 647572165 64691330 903985348 200423231 754654376 281232122 613381016 313265010 733134096 208017969 942050506 696186709 789902347 663417338 759365231 670730873 854447031 367910822 745358259 716523554 728745218 754506242 982292655 116609122 237233187 551946306 762427238 178805352 976323372 605321113 829975123 379846349 910282138 238030228 544357677 587083857 898972053 929070561 969757133 159268463 324135354 974753136 990272109 472303301 564779209 585581678 778250989 228337482 812146393 545320708 640948609 80827523 476813075 237475481 431777837 135906660 177723483 855782587 889584890 736011520 857704372 935528075 954379371 968868990 981910264 1085130 13387738 115760646 460673355 906435762 990469671 576123165 695558593 810775463 863694693 526677333 836976172 741892098 811988977 29541418 487455105 418494607 540337794 203094923 860978441 334047476 620300132 333323359 901838358 689381394 830138390 55509183 372341528 174875106 721362376 485340427 491494358 318786524 449431761 996508754 999905982 571000968 783134602 404254671 838767516 975393458 975935469 4214134 108908998 343722341 489683244 106270864 332796946 1248839 20640377 862616467 938281432 572779721 674043082 213320923 641625166 90751116 348914014 231342242 680421737 52144815 192805239 236818485 292753803 584183131 687782201 409649298 611228958 110462303 580829424 365547414 667410533 742519864 788865196 311165145 337591866 51461821 176453158 352578493 757409505 978272590 983581659 15556737 471660329 207011226 389702376 754718941 857346109 286527142 375088928 388070492 774659586 420327361 547327909 613838938 967493791 45787062 616669089 252467542 269218861 173080590 997024889 893153158 957713748 177528633 733002692 845401487 943778360 340375429 454540321 8333285 281061650 350342441 828532341 919462808 937266426 467836361 839268733 692489864 952221301 442392460 614027635 71944032 820373568 325062196 565319873 168502241 290956251 482057638 859088792 685471702 937939913 666117463 766553276 669201845 901744798 37717221 243808339 275841504 461011941 209001635 518829011 585687172 863743116 954386994 990005289 529644731 559219333 55708769 646468960 407239314 820778506 993818007 996595447 674265856 800386651 747608881 971688010 444982671 801928576 245052037 437869052 65926421 167719793 739584993 769565075 996778434 997627166 632588662 652657381 564476475 903301727 191847454 979178374 330089617 476266591 728506031 774513338 838790521 899061812 623953154 975582004 928709021 935037370 155321918 437466891 238291254 897795809 344175332 361197498 875460976 921824479 187737928 662453350 299994351 597250782 939196196 946249931 39190730 164695271 11142000 846930425 8669553 137638011 395908052 981865439 990840591 998436734 214707306 769033139 292595912 697624283 564493524 855205988 44806224 439621770 293185962 645092763 321980219 325110863 191602524 213328414 497772658 614466997 425097456 459183736 326656536 924955180 797836148 933497937 488256572 690255018 828488124 884999781 355181230 925930163 911104173 983193860 82303930 795215965 210192334 317693528 837204668 950851410 178704237 348620141 328412143 841555917 174946929 306316554 528693686 858103640 815492476 917056669 381100392 487537499 835555090 946468122 983198074 995284919 110392854 868273452 421424099 590059165 770062306 996031655 783494499 857126773 410000645 829551749 454382872 900354787 695801472 968770653 29343240 159499506 325930991 514570206 212555899 945788896 788740842 805557172 24274020 513506599 626115686 714096559 22733569 545295818 190392269 458804006 977942528 998222646 153137891 443779222 868098509 935132268 573204686 765747899 893162547 981302982 208569551 472057128 798835960 856228485 891685001 941954176 900621168 953850607 133415878 259503212 964373448 987108891 369863835 657967757 920381068 936021798 837231617 862848606 630398453 811769413 309697096 831056256 256762431 593331333 733868744 842936547 812950758 993752150 307560764 368956586 949520958 996797223 822476153 971202336 776015763 929772442 438241453 506195227 378216871 848272404 682226698 954335917 836347348 844775318 249162829 710224645 715137098 757089420 446600811 882057065 417083832 782546498 813985180 865071028 546600659 975031427 765556160 769655557 32735300 427901774 680107891 969099548 627770129 642289469 415997886 534530774 853075421 872678774 477412098 973453421 652058559 903848867 393329016 538383908 573516615 726884442 556744255 919900106 700089171 731390768 354824206 964276644 18637319 892683968 88677702 544850492 791431940 876123400 984243300 989032009 221489850 582053647 793673650 901673237 22496910 472027076 342665204 768169069 893027289 964443808 363427401 810900245 288591557 293734377 573924217 900729282 601995933 617719151 644140301 774443270 134144341 391463530 205179060 755011644 753473397 820859656 857520694 970784009 265121917 354371952 199186942 475149170 530467079 774046445 909927702 917443320 449615470 751472706 890429788 966756670 218068532 759241023 50406207 301224373 998485601 999493943 606459672 724022221 554556598 794601108 122373837 906476941 857009959 888821017 623602190 947951898 323328861 651890285 586417373 853833726 139294608 830713721 561817177 946406906 538027124 626914819 137117512 202712413 358466486 822173449 281692749 802931009 483351732 868887774 602780984 824337084 777980089 938621167 721504608 775631898 794806039 896264135 108019928 174111773 40814619 639660691 79783598 581680918 969179440 985421358 489351279 929488326 7990683 953138912 366331617 931766460 203467418 731379047 372122593 652333101 571358814 874171267 610024412 884306760 939415947 970657489 487383778 846931835 409049452 779634557 949465076 952260163 694940237 996773478 837534694 880419300 81126244 114329785 111951495 489757563 719906522 781946819 607852813 695063316 732456317 808851126 25966072 741478245 573065082 903459112 622686219 632761104 504233161 953818855 782124974 840722154 106061662 332535370 423635582 732456649 341997257 940404654 751704684 791329466 354446849 975951782 301964087 827336030 823752402 962071668 216714620 329418326 721952405 916158392 470472763 803256618 860845082 969678152 370042206 757423344 961199146 971116077 471207103 730065935 669336841 845566169 417230182 738548426 419515978 868479458 134563225 403642010 165404031 995173033 554635081 570338305 981344854 988747181 923054929 950412458 231677892 632248682 500651687 625839892 936147560 984474577 847650108 889116100 435174455 729956086 284081375 626427221 356684919 365972025 850078880 949654256 403414468 417276934 109110679 788442976 476206568 780014700 514957451 696283288 867584254 899871817 192456717 935174061 358491934 435479960 964006996 987552165 368012633 917723194 478774221 600138692 643348444 804665770 423279491 795874517 88111776 964607691 284880599 597328923 438987147 920334133 426283787 489334008 241980432 724862294 61466819 962036465 680358085 897692384 557209235 869233907 478863823 629491223 665621035 675829764 137007006 521435145 726615209 986682446 696726695 908404466 732335789 797141442 116158612 450672438 769718753 852736014 677226947 883403148 653740189 949804355 126955459 406091175 527296797 699244026 567725621 624578586 672395893 893428380 897124866 999576856 64571509 95408622 669096878 985566717 683194606 717801562 571138178 900165761 173188963 686374738 297874607 711311574 374546738 516751926 853188221 867363172 334774311 961336538 698120163 929136134 261818007 488118216 945771731 951731265 699738054 938477285 282928479 359076586 621053798 679412129 823010262 877459808 489197515 793897854 607008501 972646142 482435290 488229958 720522851 890368559 409276304 469185146 945150202 950652143 776339937 867386686 931447622 959710058 975034418 979041078 484862053 965987478 478223686 542613247 774008652 868974823 67842466 694260500 43083026 494320512 424830556 958409297 37336298 565165826 133504375 386843288 814709777 892613373 865742106 958786500 572768645 818139492 333882598 468749155 765107597 841096007 202540936 495298342 788048671 925717723 744364050 999296426 196926459 521024050 22172163 560170125 206803456 437696393 486278101 577320870 915199365 933534282 478808754 666280274 335784958 921537570 864165439 928382945 858526631 917595274 650160525 946131587 133330137 631043965 800135179 994146368 850558659 970636351 539632858 556422683 537081722 552953484 668693443 872882103 427526546 673896451 187604758 402801423 284725532 290882935 682954935 822907331 425364139 476175611 96983248 565042530 585479670 910875989 465014256 924383318 497344929 827120187 751449960 985272743 481382535 667028683 693922546 761207073 185446303 667468881 483963681 503850529 299248188 727355718 895586384 993398795 827996310 865713631 24391014 935273322 536535252 698829716 19616409 952302268 51494062 221011851 469643195 957855414 927460012 929629252 629719230 678898874 762578151 956084836 942429917 966786645 66783084 505984199 191700196 685473139 949701380 994144165 43895597 850332322 478442873 916021102 723775529 922962947 973085904 977177118 616024174 913434987 599828231 921771856 76662711 427936877 933642140 937496707 623708340 890048461 791982174 805388273 919630010 932331710 498205864 582225769 140261918 696345849 159782600 208065060 697679856 987953064 987093913 993745856 723909346 857199276 167002206 379086213 28681453 977828278 213669204 650709395 857039184 977056915 646979097 861284693 573951549 614038606 839708785 907918050 544261997 872791002 143214396 292992075 236716640 890528738 725922742 958095836 475807896 841144830 25158415 229863369 479094281 809174709 126655611 242113804 280548785 473320325 921702617 974892491 16908602 849565060 894006645 926565120 953214062 958339322 724251806 789148435 894866683 967754955 80425910 634529860 587164913 861266107 462723508 973284212 274271536 471938247 384630567 416526751 354271270 365960849 649292493 814160430 488202975 960856735 617648814 621215918 315528159 767159074 598013496 780515911 723176113 979215363 978465380 996629335 286271857 601871974 133978768 180287080 808575703 907274559 894601323 930389061 112802787 204717476 848463401 867215817 883860756 899372052 305527684 621260531 266749723 861433858 961981948 999763138 374746805 499876758 569163189 634667452 191981135 574786328 575837142 736652617 248872254 592708711 164310998 795921791 299607626 339498991 215786381 661161774 962490097 963287605 537213290 749404826 161190326 509345489 744093801 986076195 309325181 566365041 360874312 531738282 963812574 996722610 450886582 824117227 479363512 597868755 935950232 964450007 199212667 809089129 505791975 880141358 956397203 957393188 707938660 862764850 726948967 865630696 546381035 764093271 439215202 949651642 434739526 517525091 657205894 884128574 48777111 887162781 798246857 839770137 868080111 919727670 760811062 984416692 239525069 746668428 738333823 821810022 635157338 727348858 150220963 841636784 299116448 981728205 438104333 998310705 416198535 880249563 567158431 702339919 568055642 568074215 25114490 545192275 486292638 620299039 730603728 775691373 15891811 76834066 454345237 681914333 392885414 507087443 887350610 947815097 977421621 991883854 661527375 799091256 941686598 951555810 742471606 799930082 598350584 926397753 604438018 855800406 281515722 516580931 528225535 728502233 193626764 649500093 304751624 877704883 558934641 576918446 420341889 454008264 426465042 562289358 358872691 533277925 429416351 745948439 379415592 450455197 446787784 679074211 849238612 898461005 567463866 881470104 194717772 773553552 538253867 687182350 558455748 592742442 52889537 483942039 209483000 587060981 257633180 930250539 553312054 864036909 5184164 682425511 291830367 341108246 170567964 744406514 133072377 948577981 84796315 833398297 363115695 838514579 752111094 798638982 223658200 520027206 455704027 498973637 735548083 838645812 722990968 811275644 524781966 979712506 147063494 510483448 159754213 212470057 173940654 386544803 94017419 887468950 834709422 902676679 73544770 383977411 804632282 949827186 856867916 941745129 601254577 864884241 56464173 247278057 573752647 621480198 422323865 970406253 867897520 983283763 227864820 270635229 540482237 702546996 648209366 991158275 544058812 600591879 637067825 660592488 482681960 649977449 317820738 530464697 607326907 784602501 971056184 991714600 374195379 522366917 817497723 933805597 413685863 967740977 133840368 428701089 667416502 696951059 805906192 981754887 161873187 478462149 144424791 852134822 642380853 938384903 993450610 998420735 519000650 795346325 977364157 991579752 201266991 284981537 260175514 331876797 651619022 678192086 483661342 983956726 816460975 821950482 603306841 814005415 776596916 903345971 119744951 160206309 918734558 926666875 612684730 839483892 188382852 507536192 747152843 937465105 936034564 946639582 97903335 458298980 457155231 645505404 3752503 959239422 417898458 673097691 472855357 938777273 978488658 978641453 720580220 736029429 42461410 188685140 840184530 885048876 117819376 392329327 941332542 954112735 67574431 553813838 754221432 922073222 461174239 975406382 503394142 926406249 76813403 813491508 140723110 447269584 966910502 993656806 941509939 973185023 268616990 746912900 752808558 866320271 307929890 815968096 35977532 700740229 612059924 621468183 789342216 967854347 327243821 477223096 832391603 943675796 364210010 463218748 312919714 316620977 322084978 334462904 185951067 473698675 297001673 838835757 215545959 403814650 782013934 917013271 111531465 139754467 553561449 648873078 443562578 935989662 461614482 932510283 4818212 545501323 90885678 210852195 143323513 196005619 917522042 973445447 665576037 940691396 309670306 922540271 79650320 389731950 813969175 908271907 234322545 445369436 640065943 960279488 389940424 799881624 924230865 970290461 914305946 930993739 579290301 668745669 739963788 990855270 819328421 943136573 891201326 965771782 951953825 967036426 349177183 968011330 97314094 138302449 513251943 901755309 353479116 537227594 606050743 815770387 420691809 523390802 169183837 249101313 289142895 455541247 4630568 323416554 205669739 300656830 496129743 792563567 868916694 982352916 684190629 912544524 67130236 125943599 494852645 772029689 961838153 975360253 821312354 959201128 752513054 841952174 940939056 947513028 956243180 956493114 241372032 488738914 377014948 765110163 831728363 890490099 708950419 876538393 580388282 647566982 407875405 938097772 512069661 912440433 621671648 983228994 576765242 783556589 527477766 783505813 788503640 898688738 979981803 980584950 896568368 943610459 964732291 979963910 34387901 840255354 184096014 479953594 41170475 772261279 145933711 835838105 405183372 913443554 663340353 718806154 331931624 956535655 114298953 682858970 731448554 943708947 182285976 354134921 944461292 955458664 466147432 562907370 494151246 857839142 166221021 789732099 774181925 899170153 861044323 932629957 532254418 788600037 593285122 662196706 867435676 999047497 164079821 755925348 559733495 789243769 755154304 799792417 644628635 762083857 349457165 440235593 699467169 805157622 500917161 505439690 436162319 612333155 196246492 887937167 525246717 782246747 182111985 808739610 781140622 901158226 178175599 679144298 409929594 955652992 458656201 690724419 371009548 658022432 541746424 567922531 100158894 371398788 17255764 819594960 673503684 858830554 40218253 485670620 352691261 725285878 499409990 595782560 406834715 864657957 931560204 968048643 665342286 858329708 333357552 500181403 829196803 968635222 370509740 948089126 218930440 547284428 213824665 505788421 929389751 964760929 974061628 995687826 869700610 964598668 148578449 204905079 226321308 521994190 69541426 93648437 819855783 854556582 290427303 379808484 886894385 910550600 820463780 936624189 372005849 679265833 714530847 748066226 632973056 800693588 615182727 728844108 637923170 711007159 198900413 586465308 684197938 855123666 829967510 959089235 322393017 654144409 923157958 933249726 282930806 789156791 922678540 986556808 290050386 807286264 317901061 342610598 483800705 669985789 615236824 772563199 317142203 345494983 155329239 779717674 829754041 840950363 217636732 934510256 255917683 348845411 6307525 343045648 987133407 993247934 4936894 409836426 956898120 980896386 212282454 809427256 558584137 584853734 23932411 254649375 116544781 364285536 922517544 956193090 967046119 972716403 141575382 726231903 13926195 72701986 748699902 767186145 12077974 499874116 182080858 402697521 687989122 897509887 117360360 667605288 961493895 967858499 147768125 983305603 885717574 982038252 760788531 869459384 668205493 848761030 694909004 819181543 736732501 838835017 663377654 916131647 876086594 906796159 894653347 941370402 658481074 985795558 518717106 745172329 369742784 779776766 724787897 944360594 517958126 583652072 375512143 954204593 271122112 857823721 448919442 862467126 691566399 754974670 953051963 998802323 527076116 845890421 955251489 966188011 689180053 817481426 181028732 323614199 683710527 856607469 819518126 872489808 944695579 972803684 192731833 768700197 72574382 645703102 433080459 514153849 170187342 926250550 768990070 772015084 86737081 603067883 504108708 708362839 252481378 446328687 618100414 699830558 231670429 337157986 235796457 614732461 301937022 869048640 613940819 886943528 304758737 400238148 625080700 861155683 85916613 795225670 572633839 976265762 483048731 735128697 585948829 731988107 976007126 980806270 79025441 167491411 146338445 263657023 402663967 758961195 111656013 659338093 241376180 894189502 636669890 723787431 217583979 227121416 202636670 837976977 17900512 745224115 429448370 565851158 667397196 707780220 91100637 123637634 208759326 585782928 127631560 952066171 424433928 475856415 539149726 774331386 240023925 409788820 24420172 865005204 521366077 898752983 905713270 984555506 710149734 801199500 787222259 803927489 839956738 999786431 851004917 890417020 480449394 655903432 791422994 960896303 379744432 508212259 900276754 931559711 207986386 432822053 29760579 878610474 430572310 542112318 202109903 364424674 434267024 804981078 138993919 804545572 643936613 777470800 586636599 907461208 499953548 643542885 862827086 998525595 691459875 770701840 913733473 990672066 317746942 617559219 331626767 505776412 468689492 573452639 507832601 863228575 209635753 240156095 63357737 476071608 159652682 404272033 181360245 962584476 848287095 942936823 173348487 930167415 783305023 827074857 906182173 956841762 461462586 495936445 613262850 790166015 322261564 847068947 504077133 757059992 738461831 831134240 427829199 883123993 777505516 804693008 802361826 856584502 452200330 948219016 974706535 982527365 681345786 692529090 355226789 759970578 918011235 985358291 489933261 850746976 459055183 653383101 680781672 799769550 172064853 539004234 212756850 730414135 975017265 984999248 912738133 916740129 428326810 743281502 397195218 628216800 285775747 727513006 568467112 568919450 120487376 824755114 829144470 993545700 721226841 795882000 195137198 819423618 186083482 634783578 488857635 561348002 16174613 163133117 6570301 812473015 940921884 979244200 725204961 829654804 667161095 855124295 425304158 518824446 67550824 735507675 184405159 583786710 482170139 706489022 35121150 249142081 874771655 883904273 801089507 812104893 994933578 998510058 504468839 982027154 571927582 978421342 764789703 821535082 981434730 989383035 464958906 686180346 842018498 948564746 848905846 937866523 150084364 877694137 580566843 956960668 49678419 755524829 317478581 561650387 648006542 888601523 129055399 665684917 399760168 684579649 245086604 847973895 535063094 583871970 64555166 251905946 5073449 834327196 589990470 845449979 774078584 841664137 140837633 485431065 458228936 510516930 691920212 867387215 207941548 712471001 111977717 673972656 341470656 588039061 395976434 770590228 657231618 943679520 872520317 922392099 12886185 32416745 231900368 515863328 581455699 711194416 552533681 942334769 309592244 715656270 993175560 998421688 502825277 564740488 423251339 575301657 414369210 836590384 218226903 421009576 196017436 518069220 395651770 510896442 554492837 860255899 350566221 485187903 242256673 759865365 811983850 812796854 547474355 752754310 416796054 934666965 927031716 976801970 865088609 914014908 950732924 956544771 483176902 907439773 361369825 806795980 266742811 426386967 292403277 861362872 452365995 564560582 13756517 553832402 510174893 522511625 385877340 788118538 519821932 553933255 6051380 195290750 25030823 292198336 915968043 961444357 906866096 943564782 538897237 609783129 538580452 815234520 731894631 763434757 660880250 901493450 372804036 447396548 785215369 837610989 465611774 944940431 231637153 584467153 68368802 109461801 900789210 969218178 133587526 939685443 288311391 936135109 290376035 587158515 385574299 882754050 188535083 989790900 857686832 967864927 170908034 991894520 618972042 831849000 921638276 971805553 623766896 734876932 216693053 422788877 551276995 692875069 215609630 901237340 178280136 652439609 229062119 563047348 929004488 947839529 762087705 856118223 333584860 772396487 597715377 917920954 592229763 744372513 512546386 819285788 61999467 885961909 836828305 843412358 892204866 935344710 413394568 776855970 270091116 318776558 240927944 717230232 433701680 719993761 695104597 974308576 531456531 877269256 469101539 642286720 464773900 987705939 278375176 321449474 228088964 266472829 462460684 609524668 338015982 424692073 404861026 855840263 297981575 321236394 576890483 986425067 846460671 902011396 109686227 504807104 739373193 819086929 714177207 822007618 185310329 670314945 252301695 361502253 791182934 857190795 547697636 741758702 351122670 424267136 762516233 952672392 623940687 626993321 341212127 453532071 835981345 999543592 708657372 974655124 527684477 819514234 286405069 904181649 809109693 824298818 816914176 942716089 493775778 985377416 866694575 869400031 554509700 837628005 666744973 735625865 37554114 829492187 683214892 991752238 248395968 968204694 443403996 598093788 359508253 596087619 294778465 691686782 447017144 596521458 39504410 111351985 400857753 485193296 673967291 723918832 997866585 998844323 354661251 630515806 150310234 946180688 352604708 547129938 594013355 778217898 659206027 707879158 340470742 399763205 485949475 518414541 885031758 937806446 963176920 984941947 577609930 801096993 277506866 380022579 917942101 932055231 46057310 378772658 597370998 828895579 452613768 743859614 380589986 491206444 309238141 585685709 660912039 949527410 868608995 928688455 975098538 979860762 112632871 356905890 679078495 764213132 532514033 694411756 948152172 987079489 565466256 991423890 290905952 531694315 947406933 983400110 569883243 966581054 109804334 818420190 110978552 939771789 846301969 853432114 3753107 477489607 842901340 914292307 371762524 673534373 130002840 205799399 798535535 958369450 180160499 943528509 68038968 481589897 110198279 239288458 358390951 541404180 108130630 332486438 242652009 665151432 193621742 643586139 597684815 834139152 880365879 979824105 807461603 871229546 239388116 828513506 371169890 520756686 720548170 952506912 614693943 881891454 395935033 623905108 386662643 804773732 956620415 998976854 490957002 537989344 420074624 588037550 52252624 246604374 179744756 206475012 964182836 994626333 49091017 236486280 34844029 401003855 856667549 857471525 808973748 899579751 569778407 782139983 221211795 778297561 436249165 540013290 388389005 851518471 642116253 672552364 104131606 687922874 482929897 751016718 618974741 825552685 926261374 993052563 642534597 935970632 240904632 572536833 791047379 910927257 339969190 651756871 622798998 963465710 615524700 647157131 561948710 883255461 217230448 668061455 303826189 554163290 659011986 864647042 461947928 695981459 836214171 879117046 918351399 985447492 759295701 979835843 379465724 566756864 586837465 615033094 257883885 911957867 60851134 541440958 231297414 381558502 888276029 925697393 899372702 957849545 704951632 717542328 172140677 730314018 328759314 653680342 192722046 606097319 572724330 978484568 940825000 977516391 474625206 813121829 603215836 823345269 495415545 655669261 277721859 896807647 83294074 252880546 278080690 291173221 23673326 393972633 37754547 270612659 811122930 943674478 512367108 772476273 609445434 617580381 944673071 980137010 41358415 439822193 979944133 988673332 453957227 961281887 917635965 954809340 491453770 515309708 867333347 905037442 381025304 382865084 515063471 999851227 473805095 912798269 877702793 942323904 935083253 975797579 273067556 458623495 537777792 792304061 48098028 344693464 743593139 813830925 367993387 765043044 902334151 976190972 478413854 552086408 907079342 996646941 449125823 479850092 991255648 992563307 275175539 299074001 958748619 978204653 805202307 843555448 448080610 798158110 856107049 954381334 816100926 883917951 82361400 830235085 687649697 966614356 407046708 706524096 895962364 935028813 853976578 928676137 11360370 559715283 821160898 973118372 627777645 697779848 957276075 971261242 237241165 688364605 855981409 979209849 117387041 678495921 860043932 970174092 319803058 797300285 331699214 925395799 9011193 337060155 358941725 930379679 841011124 856007140 170465669 327316861 935091845 945459064 545733930 701495683 892733530 977320481 67552918 208118990 417860032 662254559 415493582 737430105 124482559 290231816 314204821 345186695 5867394 717487321 50693360 443364659 108238728 622151599 457018789 670042303 314233427 556215027 900779346 988487197 961057155 965245973 110942285 393638169 666972575 708558358 404674300 542109810 920486342 994321419 196675303 373046888 262241711 577339808 574584275 891490335 835896599 904576659 260776190 693244271 461333370 605208988 670051938 802003846 641482015 747497028 443325851 653501763 620457062 772372479 839739505 892655821 523252575 770288662 437718101 685959023 936913378 957032119 920959717 984330820 943306540 976143179 626154772 944641358 991324742 994397923 660626692 998156249 235063915 417603885 519006359 922358048 864060453 992653000 606410930 987238963 358481757 925828869 911780241 939506686 319341917 865486163 685452184 980434117 78758589 954997147 509831508 978092009 688067 89720309 454086399 914424429 708653402 871143722 967870441 999913735 640422651 651625972 673066718 978382157 342342226 706252047 565601110 996987765 997296666 998099933 257670317 724498569 798480728 993478827 386098959 567372525 223844730 422009070 20287723 739228513 285183344 698247682 96689892 335781285 510199004 643073422 410025888 711569127 870156384 969986441 564434662 959335786 129613243 324083552 650480908 854683484 747351032 790544344 523555454 827282725 871132303 943964813 615056531 882405545 612679364 749326546 920037655 925400318 388189317 475930661 705512463 758081225 850783069 869947584 997981584 999099924 582532879 791197217 485519430 693612106 95520366 956123516 372986733 546241491 470361963 964831080 268202677 760834001 791540496 866617525 425057990 625373286 301641456 320140916 76795550 320050843 879486416 984889351 704363789 893326496 686149847 910027379 428320247 846680405 198244543 620320377 644438113 864998728 295667828 440899336 639202020 843248089 858864278 860523273 474552744 945460827 589124986 673664038 20696749 573049551 273876232 836570785 351831656 458471803 696363625 732183350 529394072 621924593 842511183 986357357 724009971 758801834 490257274 522842173 121824336 829305910 522969826 586261474 688695922 847406899 119893385 976334664 731217958 849752519 860831236 911227742 642091168 955627172 114603697 324913280 766106558 853846305 518877452 933067346 820843840 821528644 5326222 76443079 127764390 143219235 773880038 947767358 767483711 896713459 936325802 976218270 111257978 245641781 96676017 259210790 481524927 945832894 689242440 814023265 549582250 607522125 930587399 963695661 218343817 999473379 902596458 982589926 293893663 896063575 632298083 805895349 480931447 984497788 577419429 928043734 115492376 795746155 233510721 595242118 388638646 522656921 827511487 913325632 68025050 490569102 290698249 398320637 661504428 710267017 197498891 763009394 574793398 962083143 887311447 901805770 814747148 829729786 201017667 263741457 564374693 677431052 587713049 863886204 383573581 676053858 803523906 850669435 838119554 838443671 11341477 864283077 709163992 918249973 699688435 785211457 693317752 695143606 632840111 950485645 195226082 300380782 598019297 681534816 718064525 747515196 350219749 921352820 308171409 934459497 238968962 472378835 401389277 870474116 176242221 846594716 610711482 912344196 498101239 649938255 361470745 966651469 635132659 862297221 724210532 736524193 512307905 520426436 792829305 977739163 268064716 653396893 99739830 231955109 19931626 959754812 614638818 639550162 570640872 644375885 698012448 868576074 612565071 885814743 261026238 719912954 216556413 428375602 315289172 548287442 628956970 831434214 361690959 506212550 166329222 395185207 949055348 956878207 799638407 974244430 149948051 900022486 680494875 828841080 355624694 803348959 468483203 633211982 659113843 683619321 436291237 919609592 230621094 288746650 513197949 545435578 429147177 941413897 931191148 988732661 894964514 953341999 820286955 908558796 421315624 597727900 66954239 120436052 636881654 970234120 601027247 823289115 320794134 756022066 108182117 395216639 516599550 521144970 719768517 935296804 599212394 973588219 233423250 983568489 253224768 797227776 385418113 569978003 348042764 578553389 871239539 915285972 888479701 905136403 494611165 731838990 16595629 580655553 983581829 985227910 496234607 898372793 546067474 793724426 408480519 676601397 260955073 713469435 510493499 559672045 849444724 903595233 782220318 889094991 742162889 743741901 622755256 700282719 411717847 650090153 456413690 830444494 956086071 964701798 825571091 929094237 609894681 910128589 453573179 824465813 415099630 504501117 540411878 941970533 584751251 901750605 732151858 970490387 30680670 304501165 687429948 820255372 151088006 210343023 561267566 796354386 726762354 894670514 96913483 202319720 394040163 734448591 227732109 846757956 895717396 989630535 250305887 657301249 900229728 951102840 588833771 851465543 245417065 550522479 135853528 697536305 818232731 912696925 774570551 781058608 304171866 377546261 151749091 554412713 509097189 621682696 866106680 882019748 120747861 134308922 874062279 882412247 78360879 405699972 262244248 489192175 540420970 860475893 944388330 982286885 195907411 720441679 530772363 736808106 611804786 663873543 870932802 912644467 169312654 928645756 21220276 151032165 171546897 384325193 368866157 684253312 8361520 853198124 61100706 842566510 281743097 395405184 710092179 918225972 219556988 841460054 794206661 922870316 281211044 586119974 703289093 988490800 819766586 854757769 537425921 573678167 903038301 907250801 188090595 964417465 28906977 899933102 850640992 961000449 832433237 911129415 323756280 843305241 369088086 725256941 51669196 974888018 954459566 993485390 334208847 510697986 836867746 897865137 973982382 979160166 717398913 898729530 558749338 749896721 152592251 169190408 362463135 888656329 112955380 554903306 329307499 982577136 613450843 747276308 947962409 998472076 6298220 308517846 863262494 994723590 140063519 489430851 792342068 919380241 32792639 495696948 353704014 555616130 130007310 572053456 222111851 664621750 183393943 606289048 265353379 561816487 839183454 910634639 6058917 186469455 514920098 936138425 279440486 897772529 828105585 993060622 420025247 553350612 483024246 822579104 296493277 665310833 374251291 846105235 793133719 932464301 580360500 632610131 194344073 555364825 959144066 970982637 663219076 934065432 888142797 898511858 780628255 990135321 461082577 792269451 77243204 731555678 240710627 423626105 98586618 959037641 141129704 443257247 965715386 988908243 527264083 609095339 75248126 964407294 865554687 868452300 151955185 691480108 724593945 812076578 700685108 745308190 592850356 898293436 819402893 894356349 405632105 634582193 761194274 941760518 689962720 907874991 509320848 990403382 153329258 500907831 655597511 721719868 520751177 773823734 870548110 998746134 451169044 554700040 756429666 780176242 583356832 855459863 391342919 634126795 220939938 596994668 469327464 650213188 48995570 672851238 225057982 871470050 67774717 940612568 35952307 616681619 542978540 993298799 313001457 805096830 151284395 778889357 617867198 987969797 989247767 996605083 718502683 722594325 705508166 769245097 361002509 638739187 184747137 479243652 525915680 924635571 272580027 599846291 919947586 939440029 415159696 965415807 719991019 771462970 683666831 968720774 988992120 998831664 326813653 493390281 147414706 166156858 409789782 815136300 411331274 963572488 799618881 937150889 697849743 836640871 486780088 969584465 357238969 944248511 224089832 902336988 971000527 994697769 14027104 511322772 469907822 805124619 405825315 570772486 843900544 999389044 371260406 982696630 34574264 629339973 699099164 990957736 750726679 766866534 751740493 962027150 177664256 822557575 980475758 989990939 243662278 994059539 654837899 815944028 171542994 226780360 673228529 810941535 473911695 658927118 183719074 355384649 814509600 875588896 611094529 932408329 744549751 749066132 467635105 699770607 906959546 921361915 8831813 920509752 374507241 461077822 635793382 823926609 91948805 454557254 832569993 923570870 813687322 836247263 282912064 433484052 701899924 726183242 299663355 410945950 922647622 930092285 338398975 803937879 999074403 999869933 775612440 976250767 676440334 770035344 609176445 669093713 824637678 855082921 560356757 783070077 866004971 873272945 208649416 326149636 775320850 894747140 375953748 874587019 172528484 384578323 814040011 821264697 254297455 970249288 477114274 572023801 180439956 850990272 522937491 716158956 742242208 984009741 996538272 998649581 997405412 999741410 578125331 915270259 740975465 949346237 325238453 505381881 487031214 586996875 233463188 789339348 624777723 910029744 459719323 485583635 138000427 461195086 925018116 947660474 173615485 611201866 200353681 867405604 134511721 283495543 52535564 371322549 643071893 800399076 940703271 975306213 439142101 529826992 863775291 970986732 205146449 619022224 527667160 813123255 650814143 754966830 730407734 879299700 649565114 803093009 354545768 818780697 372074388 392855113 23847987 264267788 571252556 702005242 247372361 346897432 858814336 990844590 457283728 585011997 853345123 911499889 448394884 951491520 28191112 639543732 171898029 711059163 323896318 525986155 900151525 969386916 65710293 620705647 717469794 862723274 854298686 996356889 210901459 454338599 753061355 826135575 625922539 786899217 891069135 941864412 412519625 910620094 926943812 981162724 516326318 982525834 630625647 681657903 399236660 588921843 588744130 841483881 156522798 590661450 849559081 985518981 361063567 538883149 972131212 973444457 617320585 824834353 538368607 612278007 799679480 832625679 476801333 569157795 229918163 461817240 354469135 496989739 853760704 913495527 228195859 696568656 886638075 892425200 724922999 912480579 669030280 871629220 786488616 950148927 437391855 956585072 441195118 639068444 964982785 974469052 857614662 894439267 1049106 197460305 329855322 352550769 4222625 616861096 389647494 501938082 277345076 410697322 674367462 897154700 366912485 997887430 747348279 972625492 870011496 901509210 512059107 605330951 620386579 875510841 327795671 566946829 432155202 734840452 866111526 884154377 462223667 932607654 658380464 918270426 679738903 907143657 532692685 998298008 478474647 843415370 551269948 976818795 626041558 905473938 118323038 857865030 898945843 973917072 222218533 970375526 687206067 877196640 620438290 933186773 122697315 714647715 325328131 451267367 639418766 930665698 935127739 999117514 799127561 837491436 39177713 233103031 247572101 803794231 58418362 106099955 927004619 982576823 43069810 223564114 752150474 801423850 57185985 815352190 81381753 726761498 292964671 325858622 82440493 212777965 481790821 907760527 75916010 483918387 692306719 827860559 244313007 829457680 32226318 528058151 702174546 952545562 251253237 957578890 137554146 799297365 122813696 775916566 902341192 963099878 592152135 664077761 493272471 675664535 104147150 747942565 507386906 650637699 458362550 732035238 803360161 867502989 275896751 753950933 777149947 875905525 366217205 703797565 757372697 783631875 170976424 202522930 110229261 927682599 167723149 970752037 267488130 357794689 997961770 998938172 24596690 177505096 85058621 628843041 474201816 906070809 933372090 969575045 795024984 966709661 450062084 892086611 618805768 889362432 966391977 984671172 124596370 545112745 614224868 996201753 809741628 975832439 167251650 775824234 597438889 783182413 355737990 470783434 676880706 848793940 665817420 841986100 739622482 790077485 130736010 933797535 757683780 941734556 414559096 427872182 226486958 475026418 604871954 880243695 620944627 840123977 197876957 870999412 223676911 234714390 699082699 999459828 334929377 577041689 395997505 544894968 719180034 790505481 178129899 380078165 242743417 595616349 962568458 966826531 478127910 624669846 629559081 937046929 623496535 970326793 131829149 220142473 306441252 870929939 247463181 313924442 503037084 634696622 719261528 803407388 697605313 754888820 37081204 900615863 125766682 721935878 966858699 993248931 884658676 897666162 532739912 795758366 20581397 617463295 669132705 676528496 228450003 866810762 968863537 971509804 518863229 755389776 763203663 970455618 275347601 920201580 44171567 497531487 296614843 936381663 150721241 212589157 79474930 870683569 291151207 593977067 109251652 128475070 293246421 768831574 325747533 923195970 972189848 976798842 768639794 949376122 296270778 680378218 992872660 998579805 926471773 987384496 515712379 578765088 990911690 995529239 368672500 663872095 275446161 634199498 613997718 754018454 844072396 884959144 655926018 727906092 350426248 549764582 684726072 947524595 721266134 910515997 549302172 870003821 780709534 981942022 514721923 982116680 124384584 347359596 778351165 830640512 892216975 978419110 129017937 335463604 141252817 450072119 958193693 994394883 49518438 925060777 232281671 828365307 539465253 945013624 821052987 887605599 33485386 753317538 902670474 985367203 714918976 826590394 236150519 440419850 206770493 909753626 332880159 737102420 634371142 772533732 620922706 927130663 695670765 993608328 711131181 762833081 212649069 852654565 231385068 619160994 961162401 982785935 390019792 639384650 864789537 921870617 752877949 889373621 794214845 924849833 652582960 882393352 398463037 505961805 533499840 966433593 734125456 850920928 358458988 851651650 411578296 555710141 612422120 787413037 494529557 898587764 662370114 815106173 823641890 878896923 779829891 903136759 26143678 885828784 483637231 908948377 499668798 618872591 565283986 945466888 303105417 672139956 872907352 976539346 607238419 670239745 563470887 986138703 769348679 848117213 46948097 141032704 769215848 783340919 666435105 745930299 385275704 391316618 599692520 637092266 886713207 962629881 733514776 921210796 896326387 937648239 320103431 917736110 302361269 529953455 388132738 645072966 860803521 960123766 575409947 639035782 197692248 637764968 380759774 928677219 299456832 693143145 232053133 729418048 671221849 837937718 649675558 764411544 626677425 645415717 571771457 919605565 457631522 925596507 401470874 578203189 2031289 202363747 642970537 674417624 833986732 900180634 985841745 990210661 249207323 545462559 797345879 980846535 118435233 761870217 571518069 891787890 130909905 575560047 596132865 892659060 4862261 160430493 97677628 777422838 306449832 691390117 832745624 933885812 628179006 719458535 123312896 316929098 242615382 668627179 518676208 805601904 930212609 978646813 456272035 755325410 2524028 292816739 799009941 813092199 854265699 881388318 951495602 988757179 57226539 142081855 933019560 978448886 414460447 504657102 804796862 808688703 286165116 378109816 656112851 943889623 592166297 684213995 78051522 717990698 17031442 247372602 312301105 866218961 943121215 969032783 276632916 522300005 805618486 947243468 315813149 692066480 783752721 792283676 858289288 920749975 970117089 978738640 660425799 817286422 894181025 964730522 378879671 914887902 119277064 807251522 205982717 457542213 393486169 760841065 67348968 87792793 886153922 919899367 46901224 431001382 771013755 897714813 526056412 909081454 856451633 949756882 825144431 986369305 990160085 992302087 822113484 840087297 760703075 828484160 199067793 475282837 607575860 977925360 5388436 783453471 536934997 955763797 70621048 740046553 184738632 286486326 873997935 891571164 113359844 876180121 704963545 924764061 202401035 818262134 364224163 757246990 823299403 932085506 143696614 720331892 25475086 73109996 276301760 775128130 654628057 837284523 207221108 433596154 765829708 996542152 474845970 478103497 83953396 532228845 516189800 849109499 356791514 479067025 591373035 772708354 22735040 32528311 567312534 782157200 248179852 288686670 548347147 849391047 254958011 824255662 871484701 922455841 467007029 940941907 789004699 897048681 515737639 840604528 331300504 729119804 762230327 941705925 795143377 963467730 390180268 538565777 415910775 929042855 992356096 994851554 516145809 596776284 44247147 878863289 919818402 931639208 482383304 914901890 150179186 846734508 349803904 569970699 175824524 830293994 107664754 887621849 253055209 334086879 785299707 806883690 953953825 986167138 135439887 569057932 242185222 613528081 414787548 752642551 793788825 832315870 336497690 957201217 650514038 729655330 597729605 663155956 411678237 962338024 435284209 836660328 10465487 853281758 153984825 308142486 386888799 482552122 53169289 339144526 738591775 776742461 818574438 867598686 470236790 620959785 565247474 621978499 446843054 672820387 472903254 986196753 623758175 800307302 178199444 839296207 277269507 726251018 7823963 854467893 72411133 194670285 74752512 181982057 325854097 327571766 434404817 972626676 986064089 999247217 380137983 648121137 996014567 996748137 735468930 900317985 850075185 879714214 487624562 929987696 711535421 827356028 516165348 797920447 933270098 993279343 213572204 458625001 226588942 804392871 674890197 979238922 117191253 334990842 927109115 993247143 836309263 838602590 588619977 646264783 401588377 833104759 882793333 968920828 100947744 537293330 688188079 814522824 777392168 988135744 938113471 961814482 349142930 520378495 787845137 924554638 727073690 811406231 791274935 808821874 866661478 900126231 363144390 585213017 979784994 991783601 645261953 737394102 993190932 997130691 990655558 997927057 952993171 989456554 322964782 539396027 818983901 961096017 152127783 944391672 643782444 778997279 901753903 914963704 90862440 706107931 954209764 954680877 942445403 955675384 575377502 715249852 360426290 380718554 879617449 933097412 269619182 418049990 107444459 249926582 767185575 976474124 907954126 973272494 520115487 639629005 417141848 872326042 133036226 489434754 621266206 935462568 571074775 576207899 933901189 992087273 568181323 792949246 867888996 990285196 417874165 628963506 228094400 622993255 838125037 923998453 792509126 930253966 685639327 857302819 378453169 997420597 104845817 785891547 213885401 754385515 573224643 920973741 941621551 951490830 407700547 452703102 121382798 430086309 566488472 600744270 633653774 857821485 116472133 704630435 235982863 954748847 99030745 458127532 577049996 925266876 113625632 776645068 308689603 341896352 977289740 977576480 121441323 963698307 894765285 956954610 793431238 813677815 209790600 986939737 780271829 827303031 929933728 985194848 968324364 980277122 235908189 661664479 937203902 940247104 817083880 899427750 627574334 769015249 908482001 921407132 670930244 941472501 222610172 483240091 357966556 890075108 94325781 704869894 707023427 993378445 587723857 743979111 529837581 695072822 520521607 880204030 224883695 272856581 903772497 924344832 798063880 870372192 42791579 822180298 227603656 311928671 332840110 776455549 879416917 887281759 797939454 806122575 64276673 179015297 640927264 920745968 730031279 851023996 224452412 696749849 917927604 978880428 769194114 958358074 937789864 987275868 218664685 987278405 859612897 938437995 36968939 335348367 969512453 983516428 764466747 798864842 338311744 853036326 399743921 634193695 846298497 936758029 524573207 649274292 142065090 389141036 419290502 890728662 544809881 564297777 378050768 453101671 241363783 792534947 316423360 659306603 336125657 978451137 564748741 618808609 899305372 936306231 490609073 592942538 685487536 737656854 555288566 585904487 270894629 663466866 161139395 975750382 84412475 210845939 418942766 645728444 529862654 606321060 630729478 956109225 411703584 793767283 66073827 706205674 281638212 900690148 699929221 714702552 429062198 677744340 13578712 973357694 991521160 997257511 728953949 794440954 439496616 529756913 935766435 950618221 938433249 986427582 935434251 972417047 748424974 962388750 395403707 932208221 681170557 960419843 219734197 966636140 584408511 921334997 677189206 930335774 392885423 790325046 79365180 438861152 956891590 985443866 20338438 759088952 516435856 967550667 195439178 668126968 329617151 846055038 67662704 328877496 91881456 98297032 259891242 635357928 541046044 731179699 14489429 470742811 757907430 808279524 124399322 459576945 853538936 867261827 471508669 662610520 383006746 670868289 775587425 881660634 754093346 795448816 219098371 764391252 216679653 675700892 207176367 699881206 239861301 600960408 414843310 861355017 553122080 765005945 758414763 958767753 2765644 94803740 665094608 868041966 165134369 631327596 967042135 981840298 520141410 530345575 477869614 554236012 909508056 987140463 890928549 912373910 97158441 920075110 845090171 896057793 664785568 845717328 652146764 822140835 60968289 884102804 261180633 401054212 91233462 612959449 856201015 933837687 25796685 467138573 502481897 941153649 225185530 861518155 748514842 832051289 165835479 857350846 708361501 743707871 964599814 998289789 628425988 955820245 223240153 465470276 419894494 640170649 376639591 413786442 323178912 528578304 424979593 923317696 40409081 635317334 891359474 970160390 173016112 967770559 746880178 752124792 120990620 566692612 44015199 549596809 464773601 787193249 526326540 642971596 811757083 817177973 10274040 535426363 562820468 990016506 989125983 989615059 284894994 301998720 167791619 189396134 805665967 877533650 822870820 903252257 79308085 742352108 753569110 827662002 198071338 304445402 899123478 933068946 223014877 794099271 229514861 804043231 67105227 126377437 105344512 526341479 726435814 903596828 750538517 893944100 541996268 997228237 688713210 820271172 274452593 327806761 167363050 707794740 644691325 716664148 501357125 657427730 235532993 448599410 216648684 934971162 832612598 894023805 983599610 983920328 864477000 973928720 225025850 525323346 390901706 895373918 856589587 931700416 146348390 689675855 765926087 876543685 490713134 492364546 580506381 755938056 78268358 508283686 844351371 905156178 671887293 673473228 497721598 860741509 90537345 912567920 888225716 893307260 21009777 275591967 512127228 828725140 187212756 215874438 150007069 817482943 988893675 996468236 846332385 908029039 496640945 956185783 822841043 902622015 101346602 943573910 607449760 939302261 704204178 983460718 651212211 679557081 797368219 966800956 912511537 912815795 653582326 671832961 158559662 696800649 477479163 786414645 184312160 745012874 605711574 903809099 502287531 700097320 774537385 776879349 129585443 636563801 65912789 149880266 441909115 781037227 109990014 419811967 570357727 640698353 229800930 897853316 574497590 747557660 828398053 940607281 765681532 972790715 784924831 957868917 86304415 840428276 844226780 961938344 964250319 980975770 114891252 582759471 692858137 829637581 113589381 347851568 866882699 907110991 201659392 945356054 974970852 978216217 430700718 581470356 738273644 753760332 820580712 853444318 662918973 711238104 246518199 353938852 917763369 959256595 712253575 856611038 995703041 997446044 445459089 808074021 187208003 787256736 666175891 929657639 857851330 908509804 864994127 952575804 348500837 367795048 11769899 509593699 972523721 990860880 603843297 769634004 696961706 702461417 607154314 620509586 125222925 262600632 419861912 737433232 971409504 991149886 702746834 813515167 597915814 672618387 797456620 970318113 894031547 926531350 242819340 512723425 180268092 869918785 312773855 410698166 752216422 765373558 356669671 935053261 476099984 703770200 444685665 949963801 576267311 784267357 815323425 989538347 431581800 996864928 562479402 654772972 199560481 795128087 160416449 513387867 156652493 933801941 286456276 395097159 841409376 886767464 634343070 735089129 914251840 920026211 196326624 734567519 370086481 567454091 272992258 326596687 879903614 905586046 539807038 560561563 948399008 977379069 823896816 998378950 274597617 650715287 833569508 943568444 484287564 596564896 566141863 916449264 459765732 682455181 356615548 804904958 856034298 983475023 778336947 815216462 700870214 909485692 187979507 696847659 626188099 721150843 124601470 366013664 823777949 912306197 10389435 563892692 695375316 956394794 803383596 877859488 682338993 733468307 90133270 162743103 929104823 969078870 156183865 861325036 487396983 913662160 433169347 901235401 162647577 623584947 886306733 991309581 552509363 703579789 571771716 965898163 117918614 192065168 670383436 737777393 981264476 983409511 877780595 925312317 474146042 945665982 809964576 836747554 408967383 588888084 280695668 928286122 500902489 827716307 929544135 936965557 322122449 484235025 913260631 935536033 644838138 927824736 343377745 432721247 938685804 959463136 150666100 649211706 526658375 715181389 773813172 801940985 907996515 919626830 105515541 372182976 380503803 887881761 9394615 675297518 287880450 297727564 884742710 929452971 726058749 944303482 178945367 995980804 735877572 851951726 934428343 954747859 73284701 657215406 381744967 456140618 756855075 837345938 242855986 867947421 240945747 998677522 927939303 963464481 535498572 858528494 486237687 748825358 418611379 746667887 499188594 892482854 80533737 124445463 689108745 937525643 687680818 978438334 769463273 826572328 708775524 885867855 605998137 985015885 732319133 796436045 638250493 718099969 975190091 983551747 118679130 824342809 639644520 793859933 733142039 772414332 239088111 781686546 594070859 766487430 169811142 862417791 282208766 289495850 599690482 936674353 434507399 579716102 529401419 811198761 625328707 626835163 425321450 972608507 577185588 793658941 324083626 875189133 860198261 871388427 181470696 521952807 692656700 800698929 640019429 765557393 525654411 963956850 174389137 771718122 531908361 664897288 223046491 650553475 474669150 646854439 620136234 652794092 804714172 895626445 28100436 827974290 677930050 915433003 367708267 641776915 747563280 975754240 461410687 721613249 837538514 916914748 810128186 915386407 948302253 964628937 617356667 952829736 56914232 861700198 775015665 778988554 383850426 930892995 111816315 663794769 210517509 344702297 548468396 686985164 823906918 941081279 672150793 852462798 863654278 879338763 941363199 968260114 396561790 794534062 324129587 827785355 617173385 988826581 479571217 961536259 442004757 992952292 410809197 491976844 227786083 489008756 993051606 993603005 348376431 763016739 650861445 800459441 895223355 977165334 506333479 961311466 407946261 686110428 940341238 998872834 236283609 936976061 516316153 729047232 908471936 930703381 860124334 932266701 683288995 936646831 201912528 757074735 654113567 784984318 991204868 996258957 489047965 489662890 943999563 969352452 791836708 833783298 622168370 807648889 371855259 462301809 416455603 839553932 951660858 980411545 909031373 947906617 140977228 662092426 923566185 977064488 456695149 587459709 132755086 618457191 856082200 913324788 269700812 279791804 539476391 614529423 796115891 930778015 442913465 970919066 210874650 511206187 941542169 984705626 560599780 679748132 871444505 902556133 247975840 528009471 960196675 974817258 427320868 854214272 91547690 675609613 486969791 915637257 417825143 798442536 569214211 596099166 960222681 993780347 693531140 987944159 658934630 678825264 79488964 880905235 787943366 950350999 518605819 975403150 778076546 822483931 799430592 955091569 259311522 651684764 877241538 962630552 577913969 997759354 422620119 999948262 344291039 798981775 260590156 543857008 438549994 723787748 167323015 825005197 638374625 706468202 447366406 599373513 469223155 917233699 121129826 463673537 887743948 909416686 394181875 608987497 300777606 864027116 57933260 434805212 332464764 966048483 373461432 473522090 416906864 497796307 402500470 574877310 980902919 989167199 589414335 658602280 713839964 875598602 577345294 747449227 109869177 396259726 80487229 593786350 187147988 602631778 377121440 885408451 379495414 707954850 511602283 568204135 354179461 464436708 428706069 804290207 583891389 801954023 313470584 481043918 236488775 332204904 64665212 166581682 623910373 941976136 596352000 653728452 323044895 357505592 105352142 155992025 547622063 967248603 642285095 827275376 244498484 882914928 669330848 807567614 368150744 449854591 166915894 309062965 496840274 923378095 217321284 844952680 55839267 829455706 157569251 266834053 606335893 858987962 669801270 741038868 678581740 762508656 632522135 994557115 429312155 774505793 811167975 883617551 319937957 670531898 963268091 990964446 957297051 972711344 964699058 977856022 187219742 481211471 192892908 613184332 312716817 859922248 167263804 191225924 905856869 934971518 491544591 965843600 96929067 254592053 258944328 274986766 279428443 944310403 443916046 672871938 877775786 983350025 49859319 321803267 734032935 739743414 907665490 987161992 609883391 829408795 570295014 993268914 962824417 966405942 889510571 955913967 948453882 964163843 204908432 336376526 992576908 999589123 599503191 828042373 243327742 848475566 244777026 608909373 703841024 753229178 525051637 840894260 211639265 532856378 354410482 762941780 782982087 832327317 968800853 997261078 972823554 976016390 518600551 719459570 169395724 535242593 825961098 889504952 26880981 291235469 644677671 929620766 371193080 758254760 520634986 613771537 7295370 717086199 873468903 974857807 34232754 440534279 937588818 941285104 988162691 993497917 203646465 621950773 902937462 920037929 259092916 938947841 481195565 917600519 354607351 414849387 996802740 998605562 265439096 401381698 54891398 493328742 263357207 725402456 797439892 891193386 253458076 298844751 647075712 683242353 403241699 689084383 363659892 868932025 330181103 961071268 997067839 999972135 983308646 983582000 395921462 970798085 773193330 867767136 887925402 989170987 718508479 914305657 899085120 975124145 145521580 510167637 199756728 545982740 606249025 988983674 514269584 561125777 742067696 774153591 167670684 285951583 511105413 636515835 238120711 622716179 156994734 252702152 595831719 876579697 740078149 998763978 575681662 896650399 171763060 635811599 144754099 264798565 660122788 772378243 566088182 982387245 194122653 434611281 712943421 924962549 317171676 421873668 60802402 516120473 32499429 329210524 363179767 537761420 160339714 245601165 787852990 835918322 810107716 935366449 345772761 959029112 449238611 993069354 76308813 455094423 260553496 752165970 486911232 905820547 264408437 677313714 384862771 755384294 850984774 949677684 798634022 890191515 523032778 546452477 547480591 781806107 732997337 801457509 990601938 998963958 33998591 653263107 146218102 274845403 328146743 447653986 476584494 760467596 233204936 629948338 565858031 836972882 204761302 636628921 391859474 743408514 642919191 701240849 19440181 633196806 692258013 841021924 206024064 246198340 406357556 985764268 698242141 702121517 130080598 863233911 248462739 829198843 890038963 944025950 254533090 579542588 741813676 763671089 536983540 680007563 619799236 663450990 695152247 806835427 648850137 838036029 778930627 832758720 549902618 777167631 33579384 402333544 401129418 492477994 843420244 919426388 351855260 543183827 562869729 628917038 741876165 749746206 556362989 918878141 935347946 976001122 619817778 738246079 293825609 977409602 860540375 952611433 154230599 246490017 613426806 989399856 858534442 955026872 285555958 538578801 145624191 714739199 946191395 960163523 39324596 919124211 299173621 611392759 707415341 859212661 408704279 468117748 554588380 557394987 103356201 240637936 565949252 635534547 481315249 882571875 265565959 659995071 185751618 186962099 972553507 982566410 811780674 834287747 990433953 998904478 305782986 350593138 984783469 986907850 777733083 868394449 916528598 950617044 667595345 985769110 891253679 981558077 878398095 967971633 836603639 837998187 63536727 253996672 432099446 704137804 780230200 997021661 544221878 620320452 644121196 712349387 614615699 674243773 691340013 728221129 251846123 263380345 454484783 550234634 778453322 815094619 509900916 514238725 306753501 361363693 430534460 810145884 603996543 637428062 185727376 191729840 462760512 580665410 520289203 966295653 113620498 469041755 626323777 690245956 779749962 878267013 841708612 937229381 928808176 936857507 614469348 716181885 572780292 895706891 70883085 524016142 739254792 996728596 170830300 416425054 283910611 892922373 369223340 472828201 569552180 907459194 201164169 233038775 260743125 266618536 713385956 845488735 91649540 932811767 839187692 846568655 431859336 596759853 886741530 967112644 942622094 981449198 540764934 907023129 353139959 443255114 322344312 589821242 62937651 234786209 932761283 997464307 521682071 939564590 612072503 671026419 700647588 901012557 197557249 369808812 469928772 603354008 217697898 512284868 447306344 796909428 745365552 865293962 856334101 871116615 648032023 711352084 295086719 661624135 111996884 353674954 889808237 927607349 800809472 831500814 424034669 833021281 374866401 377652004 383939859 473999099 754192601 931454786 886102995 942692213 733585010 960671437 297057741 892035643 881981712 938393022 512366518 730782842 724025261 766031959 433971535 446703027 685470075 976711725 718312980 721017173 798389542 875938610 427058386 658038977 23617988 140963913 212912741 318416386 300868706 445299561 370034253 884905802 711451640 956012431 618102487 862075146 908146566 944529526 571869309 601498796 590030893 723840689 498988502 626435209 497733160 875186642 583232454 863287736 461490826 795812085 357681780 588815125 631841267 852866719 86422096 858168685 915355794 990674962 440547150 521499690 139912355 461231823 303945999 781199989 953949184 958348533 39413242 443637020 578172566 626279411 316100641 392476363 957181962 967209437 456354058 644649452 774054297 785468692 124304345 374523125 983566202 995395940 521567496 718129075 117323077 944940069 555537632 717366015 11777560 856630550 334391734 729490719 528245480 671316427 625328158 629236485 79183922 612663070 963773436 986432856 524653066 780807488 918404346 934657459 710058863 743337182 491116010 729775962 382307668 674694659 337038054 728412853 909635201 999098729 610738611 870380859 957907551 983508285 14980685 208145315 842874228 848019421 177649946 822860273 409832324 924211508 275236913 680362554 178731567 969215869 787024727 969146472 395711880 548727048 269346485 484230799 875485584 901910355 485817006 901443622 765584031 905762898 392045541 818444878 194717672 728736707 263133005 752150581 587837096 660267780 908045829 912833487 288978325 495895642 644230251 767238020 388347536 889503554 18226244 52457975 957216680 962614127 213827636 830550911 658187913 823274474 465573661 596515634 628930583 964160229 230529364 605064136 448180662 757676448 768553872 843625780 194527096 229289412 493463102 512555313 48883366 78075930 266445200 540355278 685075273 702976184 859175535 871364024 966848866 989243690 375777832 400943765 81945680 165550372 756237007 917505910 619420938 800587962 409633470 874945815 356746197 456790128 183317614 735385785 711309566 766158238 493034626 683082016 22440597 740204148 242061438 575358973 753319795 754184603 526841687 788813529 772498195 827513953 398441218 849894490 543073654 554753147 412097202 825664154 23539427 976382051 249731844 679495822 37849050 277857307 196864561 217486535 861759454 944243174 717594270 878117607 631630207 908582741 977082523 997754943 714905106 896239204 886497618 990283329 390608873 454830226 690182607 816657865 213798862 379867779 150249115 692528989 734280044 813812405 933549822 958253199 457181178 562408796 790963085 960170222 459164821 991326377 722762118 747611701 682288777 686434829 652005489 849453627 521956865 639625776 612877833 921059515 192244489 299336195 758340701 804026863 331507322 731567168 602601198 977324858 264459553 645702381 373188372 801106952 932946258 985194251 48531099 232092379 853794665 933957084 861043708 927447069 346326782 456465766 580705776 819574584 319573802 906842104 817502976 893276981 825040239 896761715 762369240 922799483 499333621 982044215 710224132 817306354 896603838 916098020 344207273 649364641 165384660 642175527 821797027 883884231 513329830 950833443 241874100 292658469 200106850 841484491 175816171 186062425 510989282 699524297 593752925 821735738 743173764 754815192 375367972 647288389 38281338 825701331 616951140 959637484 312492311 536133103 120224830 400904444 566675659 848712725 404640730 870889914 838836925 897330776 961310919 981529535 879810705 900294085 502256524 657319650 104220759 543628602 85524497 233030696 385277296 754798254 106772433 338336848 51854709 165772788 791973708 867532563 628990761 844924326 211918542 692558989 798924228 956270019 304976437 407257265 938878503 978875358 18803894 498565523 174338470 281206957 277471157 340222145 70638783 858691195 709842773 740752195 386136193 763963780 598064678 791206840 717354326 946143875 533716740 644570699 772550551 969125060 514233268 929256243 651985892 665106889 627332858 956084548 75230368 618653699 857576950 963837486 124979090 504867484 558656091 897449582 367039637 696788139 300381362 611566841 873022002 884605572 866974125 987903076 361664938 852094395 398833352 817233474 450232456 922468794 292694765 935932583 581191609 624884970 142712278 537228801 710537522 894905388 935818745 971249747 323917814 842827667 438315586 581763051 458024574 595987073 260676869 469116571 37844166 476839937 955152436 962514602 698901692 908121367 38941441 235372016 732714568 760856338 115359779 306034725 610311910 714801510 269678081 616158923 44397645 701007629 828943705 907034074 374312862 598362624 282509395 507348879 601270868 877282790 576542892 904146881 989771391 999738453 268782254 617020776 321646495 458788719 49269779 863978134 649713676 757385296 898019704 956082809 314370169 697473782 622125963 695201476 936876767 976727150 302390132 675344404 632920523 918463151 542014433 815052424 386668992 955329985 7335071 995439448 710483484 787774311 156877203 373440958 799422977 883916578 790234976 808544593 860418731 937766729 660452361 968358840 286128699 763916658 792236939 935682535 43050317 983571244 596500221 789816461 366803873 670469436 778787357 792313224 557047928 752244635 969394765 996500450 556606238 577672290 128697163 569684572 301097467 470226763 927600365 985249088 893115350 917767750 709082989 788055546 958651626 992674616 467094266 862266358 932989388 999801004 761537796 881808304 349167701 903499567 398508005 799105458 318235972 458717118 613195941 733057024 154873260 611647487 653872365 891144909 800839721 995677507 900377183 920140610 598452141 902453722 697169798 779133317 341639780 383277948 56733583 661831521 362463554 878218049 585097283 915486739 105731854 488880216 52124161 558323721 496819929 892879648 150426339 919006288 550941887 757859224 416943942 460747207 954568527 974467588 282793414 432682675 338789731 944335580 487580826 793558842 492989456 691226048 373025726 776528368 115503994 163902810 569402990 980130136 591315475 658827836 697304755 817523440 867782698 973470329 889273656 890622605 446436473 451121503 754033177 755713975 329553257 869644566 9106158 493743220 104360630 873206036 223750910 369924507 889637364 961554190 765928169 953067378 157019565 162544820 914100765 973305106 360589587 574553537 724043572 925194880 663352013 931379636 182521127 756991030 435465689 882953510 589074759 747673322 418933798 554489375 657481502 983437684 211542943 738134664 972103752 996660969 615691071 872480779 618534474 908156116 109112164 235070382 913148528 923441445 904198957 999450638 754148778 822098041 478703377 802326355 333692262 380311809 94558386 304248583 493186834 773713453 53408467 820351246 476975691 869560710 282213414 762094010 998579709 999202265 232629616 750653825 806537837 854212616 859315548 955174776 296289755 535693418 514724655 977763460 709781032 855180412 251652510 709823029 30304386 170648722 961034399 969919209 35807224 362915355 935775850 951617305 228396793 583609342 199678449 982850234 730193925 894498247 885607850 936344754 668243090 763184533 110600676 725668006 270965887 641735088 157835633 593056497 181335821 181346601 534732808 655696574 633045721 840863274 52640074 883212383 449642032 955747270 387544216 787885331 919232879 950582509 443771121 907443422 318385909 499157750 920472133 965750936 788179180 858951773 530415417 669959464 949815260 971411130 103133025 736759462 133569370 514261047 70090175 767673552 751768163 992510714 972954557 977611537 741099108 882017253 923276883 930166873 169163371 265326512 947235949 983958727 672491057 948130600 376490397 407560303 618477932 965185210 82488049 830388037 496620268 631537246 375853461 738532743 206739847 664276820 663991193 803458507 352089276 949058530 147629357 402398057 252180315 372408261 351858309 904590723 62646756 866296383 714835027 912831215 470310439 805637072 241424895 424272933 647287457 794172578 550674328 931914040 435991101 607574788 101518161 873634630 298838668 683075120 659154978 835571352 559022201 758089202 805974175 957193700 408354579 733410433 720058502 872374229 473479105 626648510 24312186 658970453 170226563 265122214 752604338 994184468 254738673 580445026 575973248 972680884 390879834 732224330 690126250 866546481 311880824 558163255 948907670 974577387 915990466 928958758 710807395 840155948 685052837 834083445 965287053 992600098 647560826 955958307 701532705 862838088 338722433 773803048 20457703 198979581 457843771 632316773 317960492 445626526 524080689 643340445 621534437 984538454 426503704 872438016 404668009 576044753 180337200 546327349 202966813 417524657 593452297 987223794 388812542 503190345 161574401 959039364 598950658 796007327 903367724 941193807 183132322 425134377 852371559 929002576 419318739 437325114 520826280 982632409 215748445 371353255 542617050 903372431 877530703 902764555 250338965 941867773 235523450 843449628 486871812 614334034 817686781 970928923 238059735 580212286 261338314 652427179 694088406 872867324 695815815 823128659 890380456 976691603 570936913 651519426 1147774 456235986 420704313 817327363 472751345 490163480 139278731 770726563 864471915 942452021 72827196 724474356 748872643 986071813 884303480 887218148 129895060 174044045 451512335 990831086 950222372 962858146 382991426 389613834 524408418 984531662 202950063 330830141 477447460 484903890 879200778 910054464 493332244 757685358 318597412 521447750 189173305 369767236 381842654 822440442 319678977 928626595 578565259 784249799 11524313 961436936 283571253 515668266 829917383 985651042 587094757 855979676 145681038 186306019 40985781 484909856 820983043 946671538 75363570 720243727 918005345 995158670 557294286 942977537 370770367 528472286 190770739 659109175 274142090 450324455 967887837 997283264 154488615 439018624 313913648 416575508 838817641 891733291 888271631 986755007 146882117 866077408 174740061 367181400 685373107 954588745 226303491 744574595 86551294 679800191 187583090 423253160 105721015 569024174 200828185 792196324 935434457 953431049 664481050 949432422 307793453 890599401 200138423 261460696 893463245 951756564 520254295 592952868 339232699 484689481 352415318 574904839 860974251 898274845 308932766 536107587 249914899 874531457 20771352 788868412 299330507 537293298 520763454 865071062 10441814 612030249 974289368 978185855 749195869 874063900 185061287 267148934 370645480 484558244 318748167 693220870 742613642 772989095 311260280 450640476 231324276 634492183 392331976 667528018 308858561 828597408 656378603 956885807 679186648 785151951 446780424 572001119 50395847 315626275 642952599 985463960 795668071 960981840 222368742 698776195 614367253 657644670 319229198 415201035 911102175 969317163 194547186 441194012 194241552 890088627 419443290 756553371 840515130 953699763 709651334 781806266 146075307 597646809 299240336 951818384 790799028 885135784 670995065 914042759 615344512 841408294 477785751 877196989 86990163 449254526 374954096 945559157 218184553 292438933 102460799 277992444 333958459 382046032 915165589 979988910 838645374 880137277 707071591 916039020 654570577 951603734 901817841 949856606 841607170 852455571 183707836 720694383 857478128 863856340 42335799 533488802 465950682 556115381 521210446 778322184 333032280 386824119 725363433 859640036 399754989 533441493 583104080 698843471 598374913 895278870 488620225 912418330 913640402 950063614 484999977 985593870 668605019 707443428 799125462 964266782 275454828 671268838 886986545 918153377 966890518 988399067 740663277 912044636 881558953 986282159 692922096 754139792 106051596 556943045 88069564 400686236 705322975 785154123 706395344 921978800 990375798 994107458 403427082 505291362 225602279 326996815 767604148 830313756 758837632 841667365 150141217 636257503 566910638 958475069 744424580 779466675 163152487 664541909 717451124 879343710 504981322 599763997 766066822 852025547 758175434 765008668 293366544 621859036 128187883 788268962 832732061 878296406 433014237 667554658 62468291 233667858 543254314 766203632 999333708 999660741 985758674 997277729 929276191 929424301 450738948 550815567 83896569 409214655 91493269 180881079 598249153 614114139 439008622 561136948 557395242 785765275 413019239 553547964 479618015 780192664 207361454 664503411 543954294 940064118 196564864 317900522 442967451 577886791 279855151 943291318 863452350 991755625 841613948 962582322 695370968 886509477 751307669 782403341 37425818 583864513 884454241 984486206 745166209 776468751 417640661 526775673 703467804 723563087 251741342 382655711 230910690 531041178 605638632 786554723 195901720 371756117 876924911 920657341 956431901 980057705 22855114 706405595 610525885 905885691 967921679 995026883 554968566 781918027 36858404 740391267 266896791 308002448 201021860 837030875 491197010 816827681 213181174 530526162 753096119 897810056 177810525 405045505 90116635 892292800 366487883 908760837 39994370 978628310 857726003 869693087 554235106 820294457 634896515 928954302 693256563 762599237 389476164 553244072 960800728 974646143 59678119 150111528 263630339 874435715 821813251 909852854 753730646 793676132 829048103 896509781 545798474 937928460 544436128 788130528 283242084 720387777 401526676 730350617 530313408 615952426 24155539 805767863 797623327 923516421 28526796 574980726 612500546 813237919 94444171 190265485 952954326 983104334 90520209 701579487 827860637 861044900 299064530 409795075 18295353 485723373 677467511 986332480 581525863 988879501 342641558 943498052 216191421 586094587 679250532 865027955 278239894 791762664 792133449 821782398 430503345 531572283 408286993 750809141 122713969 469127619 433901157 811859531 580308410 849038752 492331416 589556030 467509641 471515094 109018699 985439424 85053465 258408339 281601822 952259626 172744838 639540751 620722178 803305927 679664591 808755456 1222597 561385939 826487613 927877747 246841005 792388919 402315357 764349296 978816747 986838152 107148538 543645545 898993901 975415414 870964431 956439744 41774503 640652565 148232863 336847415 264624356 864831972 892136678 968501358 922942843 970070233 977741603 991422591 511592822 979378838 10128002 529238284 713643132 985330957 346427142 916369844 872324537 942551577 819930718 944268146 211375664 272717272 407619981 743329778 442350377 569476691 402002557 709207808 790508374 877064043 471478640 666271632 737617107 986444086 674029923 730684111 151592181 929220740 639541748 759497272 721390777 984427289 347226133 705548604 723697832 855456372 819260151 882684225 193112113 427441954 654163901 951013178 92405725 574665491 249180612 405152058 785235650 981899763 697487842 893533413 631017082 952899544 740691984 960526395 448379462 572976294 41960599 709664620 978016421 995205046 522866876 682259429 193795428 966766693 84544436 437451060 587500243 625264658 907755921 925638714 944031693 978040577 744448111 807975017 673609739 731950086 621996358 769603475 11857062 679713446 424540602 458960965 717393038 839316741 373280611 535491298 685701732 804918914 163825564 320556625 424223591 510289449 162668937 484582829 487503901 633049717 707556501 753147856 859431064 987298761 726001414 968608332 378133026 470437824 834407509 991401745 280577736 863722426 1483164 4654077 556985128 870596945 166581741 756991813 497814394 904337821 321350310 346999857 427689423 573085749 437338971 697106224 933838299 968451049 724004063 831228552 923512797 926870889 982650348 986108343 907217754 962911249 983180077 986111538 375282518 605906556 837441681 935847833 730490288 879267259 798462215 853607796 412556078 944943692 732917377 953548631 671223293 837249864 928610770 955256217 395033002 704843658 688137731 760714814 698562678 881643139 6314422 728091639 687931121 901393919 168026122 866268495 738631428 793177606 834190709 988775916 458499582 988917184 917677426 958863278 861646756 906529821 224424418 327956175 268076278 941578459 276044998 879236387 390208811 564430864 560234593 848797462 991077415 994401208 491982622 809715574 628020135 741548401 13356628 283248133 598562554 973039484 789020973 989973870 366711116 661404617 355917290 716796008 543289374 909862562 485076700 828976026 11249094 396374387 388015025 757076105 838853577 891570931 969736279 972382954 275510404 820951320 918577554 946377552 43180379 965019438 914981130 947747394 344854415 973939999 478693760 854866740 522495164 704676406 826352466 931195820 246894207 453286012 910490384 933965173 397548484 709141912 32328732 42727015 320856523 365353494 684548956 962217216 888291498 910935686 749966115 821160258 538932311 991252457 604344914 611043091 419158260 527168186 847887859 999106301 212949765 641608769 345142885 586284815 734399164 964299939 800939268 952388426 720905281 865014826 311620181 860188796 281738797 293848995 703190358 809669284 171831902 699713142 512668531 763749667 998789115 999870735 32358755 420580443 716476751 845751917 602147232 751460343 790734473 866405303 73506925 189584146 273109178 933364128 106318606 364624982 105533314 590468830 825019729 996943737 318300273 692923997 93026885 506173423 45773672 577142168 681875653 824895298 114470848 822155528 485510178 922956385 528274432 950644623 169485695 231472992 303057672 354572748 984107211 990756358 349044457 614367222 987374584 990744494 940610756 941988602 274694510 276308059 1930848 181446456 669500516 896167417 598275694 904769848 894357208 935189773 489058463 578175745 495307351 934052731 698751351 956732283 4145382 363268343 568247895 600634636 603207925 894372668 318822232 472268024 288599627 459320928 697693358 737440467 24872314 718884840 538688676 905391104 320963177 884110416 382137644 843944828 332738769 340209665 856354099 964972094 122014019 713038993 937225103 965407326 109400667 703194481 941321057 998268026 846301146 935962882 696090438 816238401 33366497 139748820 689986817 735108554 909896824 965809978 817733860 902534352 587241727 794235672 211446993 492849128 235012644 523013243 842651948 892711705 5575507 176157069 399272329 972603029 328277484 722428648 568816029 981325233 340464883 697603534 432743807 475957941 983898276 999914231 370023517 624294604 791527226 905059461 780727906 935776812 993412748 998474694 291038934 524801585 590985560 688687634 148063954 445909294 143135882 992029270 672440411 837298175 116548292 886668030 486212963 978280982 958014503 976007567 258706154 602441897 858475147 885818391 920924844 922003264 73363837 775291821 174360365 891742083 733985007 772751745 217071697 502368272 758606968 826979237 538637255 685771898 648103001 785072381 115825333 802744082 460808533 988373773 275024179 420805216 764783424 881849500 110697885 336404865 522356195 548747559 903462450 972157353 189946298 714378525 603563313 825891227 32466760 348635935 152614223 207666262 987139152 994728948 596352727 896797266 816259644 861786197 938839630 999167857 587199311 727529556 362903179 664044479 319726472 492448131 912240629 954760190 710482248 893387055 259045353 663413640 88469265 600512214 627136945 666753802 376259074 534035842 221632783 572617485 604743587 605712974 210305907 602567821 562783885 755312059 135201821 605895234 870024487 924179572 458204575 459443062 959936738 964149406 486015446 529985247 372406741 613166479 45340114 157322533 14192142 651805896 735953600 818962996 365627367 795056861 140329443 478078332 690981790 734664143 130124877 358444813 130470677 612389207 908216680 931798477 338650505 998613276 434174044 535169583 146431537 893575429 290422679 858151096 697025984 953939044 791734399 902326428 878760243 993054246 251900955 274187818 712157846 814894160 188914930 564418308 974051249 989090734 438513021 823251086 532161443 622780890 856513571 943183802 385588639 457268983 166479470 973009118 731543977 801773226 638027747 836728463 938636226 987666546 308648842 646703939 725626156 945365526 755508100 798568615 723732452 993027930 115168510 509064568 68421881 489577353 447067669 957586292 789496883 815157323 707197944 927148658 133752058 399472000 822531512 863123359 829833032 867240042 14587496 185783987 537807369 835215495 984403951 998795203 185607761 363833814 358308021 677717137 582506369 674363936 54428520 523864704 172332912 298206620 103049166 498139975 329057087 333559308 457791236 797501913 341172475 434573212 867178570 886656442 733137477 839586514 801019105 883174767 402820364 952698415 615431517 672326048 192173324 844889463 580242488 846300176 25520911 396311150 800963842 845065443 659042734 703229475 835434587 998426648 146767730 509923722 489363889 892839393 376929903 962223238 842889261 926326869 105653994 228271095 973914256 998907511 535770747 901030745 473913868 758937100 797892209 819674273 84611421 531417987 165953501 320750686 526082988 922864010 832730921 857668183 19720901 453631424 248053931 909829244 662356083 747142341 79154667 619532908 707500578 720065010 264610501 901537054 244850052 441679847 625359585 672005437 431496815 915108081 584557974 788580345 927497340 965435812 324040967 693272426 45253303 513173089 439922457 844140940 271826137 695200953 551726491 919419007 353170301 954791159 906177631 983116314 464572443 950793885 520249169 726189251 918716474 963001359 678527639 686039219 263127922 274469166 266095766 880555301 926137967 954979993 610937993 658957852 911121268 950015430 508246261 651784972 384642134 513992302 934687896 964336040 275742051 867793418 618304138 871425935 923073322 973973581 418186061 883094640 120390930 314058099 953178085 987972154 817806245 844866856 842028998 984808983 764541630 985479722 74773993 214745509 378418588 561921531 530061064 567689574 746642899 988495312 150323426 311831923 936024649 969283031 852526593 940775870 312528785 459637064 150131949 251467630 164956877 528417980 285053475 692972927 873421727 990734468 518422021 747850374 468467218 937342488 441856103 705235284 738326014 743784817 176257205 487669940 267324070 336480365 995232805 997601864 419447148 581912557 941109046 999526070 187106947 974523306 894074589 959202474 620982261 749370557 777559664 849328643 640007698 927293488 838299923 981701452 58272082 130639423 643167042 865050190 179781482 981977968 8167989 935078274 642013205 788080001 341588354 770409420 361027796 832332283 111046541 518169181 98921210 874721606 232003657 638641393 881079043 907354797 88398401 537348074 973620709 985242991 18264905 524353002 562539557 984697536 376661148 836996093 120509905 773208259 569312258 658612803 132566815 775646211 723272604 779495699 853945111 965632166 655600626 708339193 147364743 888616690 224006141 332304822 573786302 942534768 77070849 924949832 133523541 450283172 738812860 827485001 241362886 912038585 11702848 406730152 678891235 782192021 469842215 812863153 263817460 477672684 483147362 958781339 106502381 139635586 397941714 963553528 206017661 942930052 927278141 955098826 820989926 987962092 127347558 890716609 801555951 892819534 4948792 939078056 863156825 979870224 234896410 565914202 299970446 404037036 129110613 668513717 185848916 687715561 977619237 989678028 767611293 784861129 692321357 747734681 624532080 799820760 300371387 911367227 507196385 679538923 395884541 800276473 512521167 908238358 749029590 799264729 120113051 913040240 358851727 502864425 580037319 956581306 137246904 615650434 923367465 976113452 718558722 967915078 796500183 822664580 74999108 651974073 714460539 750689510 342644242 543181691 599631105 803649209 392758816 714683731 824096860 846086828 798468061 983698418 868791505 997640029 531448703 870480729 202446199 966275031 140538869 518733070 981370049 985758070 344658272 831985204 675869517 720315758 93146122 259324866 882613980 924812520 156676769 944064179 27047591 103019455 213043851 641242931 635489618 798930316 923636542 962520001 5928769 594047305 536098670 773125396 404210047 985162889 75769037 776784646 693683668 935341737 85927171 516840946 297149388 480263057 153874998 581001098 820689942 936953346 763686052 780726329 129039861 788880117 975021335 981882513 739119135 998032164 741185040 912131600 857478477 943136782 490079461 930406028 788539099 973039920 892240567 985285537 113706688 380849713 542724963 894355815 948329505 961554505 279391272 384444505 544005751 781349035 798535602 907023333 428151434 531798801 843945328 927996480 525573464 750101653 415640526 964139332 411411023 630828944 140547726 444511786 331017420 783609453 466236634 979753332 136604978 175845575 124106982 674186457 428186565 981710496 728141692 971430176 233988764 809617381 796500874 983059574 206128536 737252981 398478555 620985946 924246616 989503317 884187546 964964401 396953497 672744931 390787869 849706010 167593468 532465759 229696266 620992390 961537933 972115732 900128148 960254212 781983707 825523616 504631951 603487761 399002444 503989708 619229799 980233372 290573828 856943018 570971127 713032939 241667046 409231354 755797105 914969546 326133261 335356622 298606395 721322884 429566767 548621735 546057731 969898815 909322544 921999732 916583752 994031835 586218191 736742409 179785311 973987863 452162330 864245626 111628721 974605028 869428847 939583739 31000977 138393060 23692767 901788956 937836588 947219913 321611507 883285677 368995501 872783987 150670542 361568815 457402699 752689239 809574419 947264212 320229382 396093490 355361297 957400132 847765081 981332488 498246700 949774551 634012404 875003751 813980493 873963502 912829210 948869134 156312142 584428090 830220357 997880861 446000942 903064376 780758118 932855588 884071262 983512500 564992014 692729605 877917632 892631083 222090529 914779715 58188707 589358982 751360051 941529781 255033094 368520026 561092347 972084129 11192532 67549032 539256745 989381950 758924831 898775769 609368323 644355821 545204944 941240960 438319802 476410836 576531442 657109020 772043866 986411550 820893613 969907596 319010131 911712121 718093687 851904131 24751561 793521935 3316034 229504610 788514165 876619967 113383966 687498819 609390497 663442909 903817554 954134012 207427115 454202996 413883187 935288961 487798966 691272784 520366486 723427438 356212617 481546060 272529300 905784289 353107442 367221255 736458242 876359530 775055612 932528484 868488601 935789580 171643111 304713601 226036876 556801338 774944627 878418158 685152802 850200125 782192057 797202724 301367810 815637919 715828146 730870393 947614684 975398417 296547452 747690231 959200878 959977503 757878284 917566558 994067502 995850115 127287802 607245068 898240752 998680668 260544598 993096632 138473477 826421777 834794407 865058369 889930210 939712044 396324414 977799680 836726474 866320456 810576619 942315482 270752525 697484211 725484006 973554276 818989009 998418742 439880667 833918192 815295149 909060363 624976427 705383775 847930479 878487261 506462862 781974436 540989173 955962606 309474772 424349588 390195900 771678563 698974400 858689015 571237459 881363182 281406618 325770000 526259210 559328940 125815041 933063148 969553951 985262018 73622290 700184402 416607900 879348761 781428237 948090291 942988227 991950533 874004623 957115473 959142431 999451084 737811553 834943169 987418358 990347209 516089752 541781500 652420533 772460343 311666062 329461312 863826002 952036292 507962531 599833794 614828875 676520796 498833530 676456771 349760120 913041598 470012470 535121242 123800536 949744192 713916681 943937234 668227366 956615777 537036859 538323099 435181435 831907572 303684192 667188076 78345005 940392153 945778749 969715084 529374723 800219671 155580181 772442568 267188216 330172099 889714760 914774878 461677348 846039787 618174589 946153537 884289982 903473011 678021649 826071079 786037257 856089392 347009935 836525498 719278378 921204027 42116517 391626583 639583462 836450905 357614252 871997518 959669892 987622693 717653091 776516762 868568261 989102648 15169666 924876086 813864502 875096610 958637778 965695436 254467509 624295461 550540533 817784634 433374261 646812753 12071105 375845033 743950135 800358118 340028875 442080460 716503164 957246982 587024716 677258825 220860658 376752969 890256832 946224784 802611752 998738355 536889769 713831360 376606722 991455788 291222261 749013054 817238583 823962347 17767269 627462190 491386298 873123151 488638894 658743316 121631817 328459445 730660248 758522907 507839673 508574351 143417659 840989062 355508599 390572332 350504602 690332298 128720879 434651202 443323684 698312765 259348446 366476334 305420767 572025882 490843211 561053564 499532581 609333745 890102842 968616668 21718038 778128185 576407423 753477586 517176929 723139813 816586482 887700803 418413909 942057575 568478782 939437036 349708337 815522419 216118277 773473664 540838506 731285480 689327873 985839815 92958761 676911118 840322993 840934868 178989997 749074513 34195476 709827372 602264087 866341601 943500403 954640056 380036287 707925423 560850386 982284676 707202509 916855234 226231310 776797229 866266342 966758644 708673634 871758983 981366095 984898769 591198428 727989544 491243264 807241016 652971559 791563569 83964317 334734666 511912370 812245346 229228753 936352072 213308762 371573280 957783898 972910566 268282079 578781935 545619642 906452876 952006077 982316110 285078843 630372093 527989858 633170575 702327473 854916839 643902597 705952251 773509135 964893495 951984978 970931849 262670505 753521680 846928370 984193859 600192770 873372703 608100231 808277484 905817710 997174260 461465170 806986205 978826238 999238633 661307061 853337780 241842866 946757166 733287167 746702755 598552089 809924954 775733881 972441579 661822223 995995120 468224330 604914115 685246178 984716558 130565113 739132814 71908859 625722551 408708435 596264544 255027788 751079575 697723737 988706409 636029333 829159103 73290355 989801346 126439468 446224394 857491711 988533748 648010024 942112188 711294192 853361917 205529149 839158200 379073879 867636766 867086602 944925172 731896371 904852504 663402544 839929089 278688161 875394880 781796538 797681898 344339781 680293461 716263675 875000066 809419180 951407723 22135652 70276245 396469498 812632615 315958473 364038489 279512279 317054948 311529361 629344145 190991909 303178261 862604317 931263455 501323142 570512884 427230638 738289626 608635859 900452192 184006789 856084075 315857152 471961595 937167078 958510929 945030481 984695030 41048957 157509131 475629373 682736535 37939918 558772603 230214640 788099441 265849221 632186202 553681990 891162775 530994597 910988857 517696856 731072902 689921550 955479874 847129620 863919791 990617313 991446067 488909832 537508811 9428235 555240570 769858685 771485200 508631714 550277056 428585109 847875139 248077685 451876885 16805733 205781066 479283073 888428315 328141274 788480079 781194945 888530169 554068469 574878199 10591091 574915253 596699702 665485600 479641988 598138713 772580422 862952771 376594902 616853885 96694480 400830757 120246949 776403327 759876273 963731459 954708728 964117550 54400309 436863485 462777812 720134932 549495788 799475416 287757113 605812629 651349252 757482005 988798864 997979200 215070529 700762779 840232601 952616399 206692593 836502741 152806236 730072066 245329085 898907631 639553535 728315867 623637519 625307287 241089193 931831999 645310196 753125717 845601040 996921977 556393942 569814497 931506521 969003025 115727812 956151199 78274229 211053394 573293056 820471576 211796764 828266437 787513453 926760036 656646632 786205736 291103998 510683321 1158229 25278940 662095602 809065070 677868735 826943875 818308597 923603583 686731747 706040468 317032117 425853562 983303083 994380086 117862509 261046377 863926199 881442573 226441184 432248137 955441204 985803158 111402161 820921888 336115101 614810070 717433286 981464121 342708518 423909750 347729901 497359001 421113582 960737608 298697868 980419997 969091944 970948402 60496773 704337360 114065016 847740590 266980130 583437013 633208563 706983760 975291237 986465410 53915459 894519371 917436699 951742118 268085714 876396193 482630652 716274560 813717681 876481002 285410862 777888612 468338959 522375171 395150725 455320438 337052119 911570542 365856261 564919603 570420432 774319271 998975510 999562771 393428054 849183478 890680826 976390311 134983556 543894415 317315739 632210224 184524472 535710990 241187692 545980883 419876085 709071662 812363421 984138434 200315850 761653069 105327145 817941650 908680491 999537491 89676456 514449447 343798891 557337026 558986309 722824602 524827936 671712307 423727404 751908808 545900785 836452399 241483938 639201033 414442111 489426877 468411959 781493855 55575437 129952108 345192507 356246289 914341372 988480593 714302382 963467571 308010896 984283267 469559542 653235935 92026926 899168740 53147378 307641336 220319768 878919636 368060043 691114326 872975454 917162284 352790492 530953265 596768979 800955959 851068173 914638527 338573518 725106912 807447440 853660592 607011996 644924820 314813971 522256398 440283893 509027135 786280595 787706677 450317028 720400142 705946105 710062384 860489824 906465695 616557627 935440371 646529466 807427331 757269138 914832327 744053838 817961075 118035023 583083092 663098284 791334417 831105506 947365835 785172250 909607061 677765094 900283387 779661686 906718308 694217891 811183629 767449665 904815718 778048753 780893447 277703439 648028552 983079296 991586308 345578574 909601902 853268389 978784317 369182516 750013931 696391667 783100388 467261553 903302632 465686950 967413735 617481971 690356422 828056745 942633288 988441621 996970329 662483065 803670476 301473101 352275966 552545511 805850909 24128790 60013917 485443088 686364478 942919499 977077269 271598471 653945772 951404412 959970736 196109108 870301366 749625693 931213274 45306228 504167928 794587940 984835683 57934363 614908745 604016269 976118758 683537832 966267007 60435577 165230273 598616826 955587665 938978654 982384081 160562075 510881823 38077065 964193084 641521306 702006585 848403487 985561238 649867354 706784186 509900243 862621029 517941615 847070426 571168071 830254915 381671425 424277736 889715135 931728191 812502069 835878194 444467257 644522600 701166095 767845729 759303069 858195549 642168907 959523302 203531396 371367410 719022454 817843378 379703650 721620795 4227208 401684237 410114680 560103724 387651613 993558766 287022928 420215915 718827913 775488307 965443289 985326238 555841857 915651697 678702871 921115334 740525989 899216828 391781698 769876502 261977580 387480732 180301585 231949568 683770751 818898658 318898235 405308791 305041892 842220571 142456971 783404973 685715507 939353367 282275253 532021531 431111493 593118542 828418760 936617609 295067833 784734697 640415178 728110758 497206613 637855729 393063508 848131837 635881191 992451940 498261241 646006409 197829464 598473587 245712412 476738726 584937744 688136733 826200168 923987710 988364063 988705607 906292626 954834435 541672184 987018533 549984545 803410437 570112743 980656091 165686184 979856801 490538889 980326436 416658907 830314419 873069301 876486030 887904762 956568465 923815089 941336216 352741672 396821717 896399433 930650118 924997882 997902919 764810499 898878469 653915840 790473159 635807516 948629354 105189978 688738238 300863424 627099580 120709860 575601404 483420942 489513918 808478834 986365889 728429199 974598252 213401139 438013601 408517943 712808356 212558710 412566267 778345684 997383971 664329458 833697443 278113479 972893807 659780540 916651571 140397681 178101425 39384134 566111482 275297600 850004722 94827307 991705870 771130538 823687255 369396690 489045007 281520418 480373401 724331419 895957284 644556072 977606069 398629465 455561848 221758851 576110464 833549360 997283825 388765314 845853714 228669888 775163517 85097355 789218747 478636580 538757332 773498679 850263316 3302206 261234641 868658050 934455648 255860271 902884989 432792121 869968141 218643922 541034194 455803887 961394001 264943853 299480709 515022712 600944531 829121556 965931894 884100410 960333717 717245694 980068509 64169204 613330186 223466010 505588854 447161528 474138553 904994543 965034035 726535242 966661490 286228489 431358926 148141179 714824691 363053275 715408634 650779916 894190594 67632621 778266990 435344576 822578598 665280660 792266346 848236520 973850140 3228401 169770913 701323149 876318863 235484326 652039501 45538237 232339165 732452646 958904962 536884606 754711408 843864769 917848255 64038953 986429321 14449369 256524644 986193082 992265514 295622801 691500847 860989944 901132210 115947006 172596100 875863564 898272673 542905797 586549732 980671177 982892188 25498890 944915510 540673553 975484955 727906581 776334724 68141454 998016817 814761944 998856184 278955539 844445836 869381537 970183247 541256189 697842993 89925903 480396815 464022384 611805784 917272696 956885858 501568501 978386914 446310900 462642494 200492930 511112404 232611005 725897407 820731192 963761612 307491223 371220604 343982335 821260599 457213184 686533428 539623457 687256108 452057217 794010735 805119036 895641112 69146401 912352903 343863669 676274708 723749155 932427239 940821856 971396172 77893553 704028458 946174307 996783147 734989908 807728068 17503162 943439236 183925301 240519706 883787351 950383120 807189314 905565108 616791943 728352562 861726938 938358069 97198818 958479163 75121209 77429728 703811063 878820214 385858478 519808918 62795480 708196564 750866942 775768336 104769311 835309219 372863552 772857549 221390823 343771920 792281605 950018948 834827211 853173949 628947349 888833876 932667168 940052546 695703243 837855803 648174953 962083251 119799812 144382530 169763674 183041642 454978114 774176965 688197539 936545368 149535783 878219946 566089718 730137475 462438449 728935400 297074149 775761610 547345436 604764184 114728183 725418975 336882603 590972347 437856164 970626730 485332081 619922165 75131018 161729350 800677091 987879778 646419480 672871978 983451749 992914208 480949523 842914829 474722964 951418376 481948232 919318187 948271264 957329514 456776582 569963821 793421670 937997314 69334639 826238501 895293741 972419269 8022240 869116254 644683191 782868145 226407708 692222832 83281908 421467802 162535964 920146372 505918172 600089266 763338075 795931633 498707550 897238240 717707117 794287416 199795304 726981589 434405211 682218610 937648332 962535618 474633506 647972900 772175889 917209923 96962948 509495191 346230543 442587385 441075621 588874633 691928171 740375062 915413661 917166169 815812529 956158928 264242742 930690774 840897865 932758289 570249358 823110819 378535419 661051458 890750488 904424010 920481875 930441431 811451262 905034648 577726665 751134988 267325684 435793176 140199906 563349421 759844442 957093597 712565432 788978695 129140035 514442209 778252362 940757063 915650217 973001133 7413467 639949587 320421817 523331460 231943393 920602500 760570483 912915560 394262766 813036857 879423465 904085884 95993449 519673720 686962989 911783638 149182236 703414768 62860790 694793891 391226411 847168243 469394961 853186867 185501907 542936735 393268764 691788595 782823636 951414535 875057336 950662947 796072993 973935707 276834279 433226696 175229589 778606058 287851692 313318021 976263043 996039216 803067198 903022782 512128246 714173138 596198211 777762312 297833798 434887564 965279732 999344619 49181723 902959236 920409857 933501789 388802628 830141566 586371075 924075814 330005207 854138544 590218935 919059944 442746725 540071315 371013046 723084920 717819896 721951803 690813484 967475429 2349940 873990007 597365031 897675604 761378510 791834749 540805017 632249093 278752996 639313429 898439755 952428890 199947641 592739528 456879125 968730417 585219290 878143258 441576394 493389256 997835420 998699944 182854439 332358550 930218774 940373811 526948508 826290055 722254324 899789407 65213494 914867036 419703410 979104589 298067204 726432696 562841763 810777963 637301932 711756482 668170251 896050620 196909768 427084813 164217606 455291492 232185102 454205719 83802742 530529817 7081212 15241647 871800132 965889862 260964627 335544287 583257625 777397370 393785562 980445334 983580815 991635085 312360542 366819420 222087619 679898698 303545915 408602814 792837942 797203900 117053052 138647967 833456134 910909639 388620423 669895123 486478155 723134116 824349263 909508012 26467619 265658444 113395579 328966451 738023283 790422235 19394099 960509412 373097801 748837024 859575067 902517271 578563362 798730080 57182705 202192985 23559835 578865289 356740851 778414913 844582045 922806859 337318860 817869289 255747721 546132939 584240237 744765884 711382542 727085383 654318031 737704452 756712090 888971404 911857688 923766865 748801750 933690632 730943590 847566351 10808155 333464014 125065768 462093575 775079985 940340601 422675952 610896387 973830197 995273629 509413605 828709053 686470990 791173944 28279831 279899652 473995611 712780039 280419313 429116818 334618044 480399940 32934255 885361090 606137568 706557576 126672880 170502848 398240892 883050437 668137905 954537028 272796993 854301891 349805198 612519982 210311206 824145648 460704751 781276496 348752086 796665804 58890411 721823937 55451689 303334392 964572645 992441750 807875306 961922687 315706846 720160931 934959296 995963000 366472872 839378001 378363097 993721334 230445207 976476288 48450331 619304126 831808819 867312894 385921950 855710012 518424793 563883272 374366797 602469628 268551088 332492388 772594438 967265410 333361533 909837133 291801 262257372 854023618 873113812 506897061 838106346 484567623 826395159 447293664 592831406 355368424 616619782 274607195 861058260 533453209 940525197 67834088 484552382 806179241 811874348 245038432 850237721 413631382 673185432 396850798 672765081 22922524 31616654 315492669 468176102 627746710 633296664 477301951 502479912 565069756 892994336 464122953 711439827 663589678 883486711 451267114 835066050 590190311 773694913 352519393 616238432 106376041 502984201 558151691 921344583 166740882 859566452 354749735 908627209 554480672 830296722 223758845 285349277 993757728 996446590 123788509 865064822 245530050 986317449 225217291 403482242 376891855 701305106 481665549 595651601 782832368 882150330 504717360 808178049 381611808 785325782 412565456 521636451 826920138 827576809 654777234 952028170 313329798 924093902 333928419 435206836 259858466 661446043 895182776 950596458 708186843 870792207 75845988 801741369 885525173 944239876 578872622 841660023 486046547 534672746 561314742 708072039 545667260 868016429 579010635 698429589 794758251 974569922 251240786 459397890 846180079 943068835 633708906 807786046 745727575 880659812 438232335 546183117 125135507 488369404 511284853 803534269 912518171 993847187 80804480 533906512 449624065 574189842 720572024 879927650 207639085 849961047 788910416 951054797 707121928 881172515 531050648 636627357 320917186 553147847 548593388 732800883 724028090 937909142 541766435 994063939 343063230 495837216 101356166 354336080 199136829 618970937 695975114 870270315 708646698 864607078 889965934 919193905 146157541 388200118 199592615 824282521 849458809 883404902 70271540 618533503 703172682 929686646 679947339 713006394 974276274 978563319 54537073 378465556 396562313 893900061 404946036 728873890 223072327 430642018 52201282 791709218 186493301 387674084 323601985 988409360 993286214 995706104 573931235 629893777 409344113 640623756 869229655 956874446 608439835 990569111 568011354 823911627 417200691 494405709 394233694 833198826 822625622 864811423 691115787 791662402 314279270 965203690 36380385 906359817 479400032 937541779 153193171 187755023 202664921 832567197 387005582 746383634 594685538 915207507 779095396 977107696 378223786 828136463 78413300 734288379 658812972 815878838 822980425 966084556 115607373 573299848 486392864 684876540 853820287 989060495 606061062 720956134 227210167 593676809 256657367 605114587 552286909 672729255 671544461 773479179 290127531 564496619 480436459 748960634 428148491 723159340 121856894 136311295 1901578 416355744 775336398 836039358 619400985 721081746 846429250 973591922 997918515 998053437 914099633 940193024 338892495 341757626 642719623 653024027 713977981 759439525 942111896 995488116 591065692 615789350 63667976 410756811 805341901 981707816 136501936 387057980 318564208 499329280 651423677 737328999 895952141 909436213 933754971 976627733 139581178 441415086 267197548 655694762 29133388 859521259 81832915 968121714 931765498 994451687 622798095 729314449 80006504 153106854 571971387 703427160 155457903 501816109 876640833 885000676 507145315 707957109 990578238 993332833 674810353 967528169 833398638 864771243 549606941 903644978 477209800 995115705 789636018 810601010 830235897 883103372 169090909 439636151 27612984 680597516 743533149 836968998 182638414 952448336 464465079 907190253 529520502 800837831 979101477 984283097 519520316 731022415 790121939 877045798 673550374 934829540 943323580 989096997 423760385 903156833 983452797 985172440 717816063 943382709 645936347 774187333 210712669 761766068 14289797 563035074 706958294 885123997 267287118 372588523 463931924 560885660 621704215 997900652 820151310 849235146 617384321 978597730 192770024 257798089 229638212 911913037 635336067 947598427 382358557 392066410 187332425 391656848 380503833 579894866 313593703 510592479 640461948 911062582 102899501 942922972 340854328 969955735 343599977 515780951 765028992 935456876 217817253 374468947 925010493 959720407 821901008 842915427 255805622 512699411 5452398 736791556 880594452 939190827 572109939 783054407 261846062 456510951 417571496 682778613 106273778 816169476 429225833 554305937 978201190 999800753 194647460 322836200 790813132 921992665 14418859 986888987 301532136 851110159 184274865 808527575 70972622 905996624 90156235 741500002 588781998 732549123 503480617 999572984 552817862 812020699 599015753 953269666 752833734 908880172 374372456 485751669 343285860 883449468 663121385 740180507 526827741 896899500 214913543 304886658 809653575 811293531 43193827 235980760 136347729 544871418 789990241 859620383 556857668 981229464 995074599 999529506 721359015 936138127 354668101 761619524 860200188 916070910 854091407 917975453 753594967 874996024 395464249 950229169 666732619 937343369 580239935 679690038 994440665 997762526 510686684 961984711 103611402 644789408 464305549 800627790 894022997 910515714 670176234 847318626 235802697 351710737 475095531 986679389 823748967 986286288 324948386 327309517 924527217 926905484 504080462 716052251 736881087 784448098 367145912 374001521 965054099 981567806 435510500 462455680 396051782 991155048 216126103 923311335 731258473 841035615 429572010 655559033 244444079 589702750 615329123 860316233 81140459 866701032 10774240 23754962 96473477 607416841 407667150 824461652 647583919 958644283 653203749 758372814 798260480 824480083 615434241 828983209 900638185 981592500 307476141 536438351 534782562 981857394 792925715 929473148 420474547 977792023 101605586 841234568 78116260 679386171 970390431 980452868 63338489 244066486 765869244 823554006 253869572 659069364 7959156 396245841 532166487 816954409 769209795 784947634 135772573 660185730 37348819 247207658 329398608 377898333 582411709 708896576 915574648 931874606 775704676 835676017 130506539 725080888 657870494 777013434 894525773 953544296 629415253 946757378 499620503 595582126 324928091 365804969 958971634 969263586 888054226 926773722 487496173 755814466 886017034 918432290 169529158 430432020 456652858 505495092 810396328 873387492 224205080 921111706 987246623 993617407 672329160 804005274 594583885 998064630 309735764 718322428 820614501 825695065 698294633 724987636 541349496 988765406 886922784 997098597 12765741 193388870 87664507 265911461 798983464 861082942 375785352 564442079 701169660 758466627 535557284 566235365 847970287 997395448 229620942 257061633 607141755 944432863 44193983 732314731 272387058 938414519 467543688 817687677 479742264 993012896 407798685 697966467 428530518 680822669 31329172 229406918 815807588 966355292 516354431 610322722 841139862 907547182 374689518 453767792 445226077 619360383 178376991 855907634 777483478 990993896 640180734 675126980 279038887 992408104 989274524 993264177 31451014 545989152 301770744 937023340 457761403 741336978 871673012 879520738 143705017 364425806 10011133 654647943 464132394 922357278 461211870 922348247 645449108 794237416 442917691 969343131 575836294 980266850 679429575 961892534 427965982 750413241 356608588 385851451 289702112 795064928 481308837 938268932 904630724 952128838 440911775 617142672 183346319 862785594 482057640 482681196 264435743 445106096 490829469 939954625 284745895 994081284 689079027 879579480 971037697 990634608 955651727 983932809 945784941 951134347 6135806 762443867 277913046 667671770 157672239 262168474 320036866 413943162 261638090 491374202 20927705 211090705 730367472 859601814 163824395 903091321 761977752 883106054 321096593 946394925 978333206 988483314 251806618 531288535 88502087 248050349 841368217 937277577 370464063 696257469 282393045 411190877 297558067 367416314 630909638 672425788 806850147 829207404 28246933 826728178 984675400 990181099 531345191 901447735 280398618 454023312 39288490 632261435 353160086 640973477 542846680 914890335 934245537 989567356 141161300 542155369 193907956 995146577 316484446 628037046 686110616 836230778 628032180 753230087 375346871 653750981 721608564 774893793 964694267 992669843 527523711 626344424 855107508 988083893 647844806 761952791 283524410 360789236 820103936 998153863 890051951 916355285 735775178 778880226 837502125 843631890 626392731 640123595 211160075 861791440 196180880 331340375 153691686 481157038 576649961 649241739 54258036 811866615 431119584 931112217 785651647 878360366 220457048 650838951 613613347 778903972 148590868 567452994 632289994 674400219 425642574 970421364 467734766 961951227 369867253 517806436 428848743 622859292 155072604 611955298 510487965 941338763 225668212 862703421 636824462 947378484 511434311 584754840 981468316 996121572 891613802 925712810 784210744 833584916 753916820 940490255 743959470 906969211 430912769 512287026 834319271 873203678 598326990 748793078 307442266 853281746 475769219 666473487 534409103 997900239 352440213 901952422 677079496 909828954 803822681 830923430 986267554 994888799 596401269 858810178 309871317 800081279 775730129 896634343 373935128 757116441 694284400 767053763 794600384 893676432 611017624 696848487 793026552 903275664 829375330 897014169 953018 890607858 914463239 919982213 773298828 955353371 653998860 802249147 806400232 981146128 250214639 883490800 381678742 642446966 453228727 846978642 298981763 538732317 871000895 883145063 930349441 946323589 775907583 855970754 808840328 994851211 71458088 838606502 513276077 773352047 649318701 793555094 875150773 978110764 604827516 748558469 242014074 737052643 618094367 779901054 11903090 235693819 556075829 628273324 413415805 934512234 830444724 936544952 848533626 912886053 709259039 787260710 897709095 947089472 732345887 951472238 27479773 327224934 681880627 763732180 720638238 820252374 4912057 58012437 433328881 750482202 354329272 825159454 890007808 898494064 227255920 440296234 296147208 405482154 952487384 971098890 15740029 266863396 97366266 310719802 640478621 845067860 929724283 978393249 460698604 831057331 374784561 669320711 76932451 348952149 115371727 232262172 321821592 997820395 437221688 528324237 180469081 369734470 19395144 559861599 887732285 936996077 260630032 526701646 689821360 761309559 738156956 902653666 880298478 942821443 806848902 896420372 721034183 932196637 855923346 968550177 94043584 564173467 797037742 841437454 129512853 760355835 614844759 653936849 807444416 821815065 34519255 891708552 928581082 983734208 134537616 188915065 243842247 865246394 180758574 692440327 742414218 772606291 969762721 976821232 834627117 904031733 101713584 857337839 994765975 999414120 589601805 831941368 515093466 677008206 31610608 264922298 544070583 833807697 241209843 838018896 989812917 993822301 346539584 690096282 401692351 583209173 394147134 588427138 253960036 738003733 739888034 839812804 866468366 898494408 693786323 956453127 651871703 836301648 113255652 607315147 410714770 593574900 863457011 903390032 155980716 796522619 61091050 567802919 364823494 858076787 775440705 912779520 786512761 922520151 842855591 993351244 703400937 984257608 300029089 435665680 851481282 898681556 809168904 929412856 728257538 953147031 637373077 643124090 445771466 631576172 128270521 487158269 44636190 908203409 119219753 473069487 632627093 691723971 217599097 887180801 278078559 338922734 502384818 636654840 772031210 898564672 866794754 933075682 193174762 831588551 421352865 856845387 921342399 996066172 673004573 729569412 654334533 932870615 710869902 842831769 220230894 382086709 274185840 506116792 562113642 651313823 373491383 501795942 184822817 920886017 728592325 759599456 46483167 805040574 126494709 595704073 439033143 813564639 396529529 929113158 347575135 875706159 818444640 955174510 904402689 982219012 735512508 867490995 350014427 441526467 363497040 967936316 137274573 470346372 477210682 829979137 442102897 449179778 30676159 166634295 512670060 651912357 247511356 710241665 430915167 547389468 275058841 488851790 705758414 834958044 647410668 894914201 820980721 970076068 715814345 831502382 157718363 922461569 537182232 780623595 167061203 220940810 503199003 708167001 635290017 728772198 967983811 989177101 826227479 844271717 493570974 935986536 845059153 850808503 436102701 693640383 675079432 863845085 984263530 996152902 788783628 842423893 13492804 74804604 327182420 450935630 220960942 901188417 837873321 841949926 886453740 907510887 63153374 604128192 237538908 445075331 203163052 906340060 417755387 749644342 247473784 810985110 318784046 425592565 813002485 888869865 928814631 935215244 299527626 407763959 251204748 446109860 540435937 879080583 769345918 805809293 911730544 948767122 69865044 808501765 597360596 883674683 209185612 438126292 785677783 818859415 712838264 994101122 328505675 992235085 732260561 902932382 28064236 791809413 28858654 164634421 518048587 577638969 735195981 990532961 671522193 916979604 150526167 226706379 740343114 916350796 808409794 936565398 272190265 735893698 895489806 981426698 211807223 759391983 556299162 642553308 674053136 731795102 228477851 515619201 201743527 526780694 898476986 943615578 359156810 940715370 444654963 515820711 665751524 682037939 504947805 802026648 844614367 964034154 200678482 287134015 429702647 991329529 223295187 563969522 166423975 658072315 320012858 806544448 876845147 951087303 955572625 966197716 990355032 995382125 269658646 296698571 722699537 819037930 282017426 715726627 421375990 877402463 326350102 773744862 854425765 931244991 176748922 941418330 48580645 114655564 359667509 407402675 345439701 346493964 535861081 782564490 631654753 758298595 345047641 594700272 686022536 975505570 139876813 963069729 367816898 506034451 743809625 857903308 422545704 872173707 708661862 909024443 962310420 998084062 173803758 734042793 904675197 943809398 706468338 821436090 902130753 920239281 981022217 986795610 760818316 938748944 359664346 709947198 628845074 847788868 571995590 841403791 287799239 811461856 286937833 719100514 47387530 494318902 207358287 643222220 159391545 706718443 686576988 961129661 546567843 799640654 842615872 899845548 583972780 838079131 131854425 605484696 960964314 965725672 754948477 922187657 3870156 914864824 722629113 737409505 661961617 833388876 392972153 949397839 636559927 807163005 978092240 994280001 31311799 916096254 57323518 506313602 525120926 823308339 287525357 314348768 828307538 967752020 410986136 493932284 279282187 844348015 52838144 628066940 240679104 369411129 565952116 802230666 294373428 299081483 5122920 953938512 251409545 752400524 747849751 999257869 561341752 703348465 647291781 729561079 654010697 876906149 586739593 625776922 667007903 719446182 566712309 573506010 19459582 405986632 767945951 903278283 664413916 955885960 29898526 85576225 682930244 814658249 754204382 926362672 304779527 943521241 607311948 673513489 922182536 955255771 136444846 511257121 448953330 575300410 428416540 710590669 280638598 994970225 371879802 932030654 105776474 215564762 789630053 874046887 673504323 944551820 972524243 986803938 275722245 482364243 717147296 869120739 797310101 849703123 772497225 818993859 50206553 752428251 216462359 958094786 991836067 994992622 399010886 424653126 408099880 933201272 601601177 744021260 734138044 796792898 188796122 466781391 734501777 959090204 703949437 761685700 877002506 976975301 836301976 980287474 939782089 995151342 752390189 863760468 370696550 929680810 635939523 714615429 20137032 676525574 958438963 998545733 702728423 810224799 15231528 37242902 91625411 620722325 984667869 995781327 322646702 777968321 458269532 685243817 249931321 972729278 746702618 916215627 829324887 926509886 556940659 735277403 727149686 931294704 895282079 931880224 550115987 745185717 897926663 920166442 276024927 361201401 410920889 564890396 273967430 319130003 1183355 725907945 624378648 646353527 176870368 395828935 679071746 811689392 542534511 988487797 561976970 820490548 553307729 959944107 728288831 861683880 430506136 519972842 531226 938551693 786566438 792084157 589100153 882498818 961786995 990639075 191314777 980435391 264878343 713848191 444896222 748656157 43707381 663087780 995535137 997570417 47579805 200867530 549983203 945632547 693728024 930610512 902018915 908085140 25147378 384412923 299298911 863918611 98598683 631043744 888773300 942840661 228295718 254975954 829914397 997377790 900201001 952775531 382966260 765507999 445084357 489677297 430392446 987825121 897178873 949904039 705854685 765600207 20544212 764455974 902897025 918264694 174027564 220634782 719780470 896027876 327337962 705924080 445772605 935652242 940425566 959196242 432199669 802238554 179359908 795563454 760813845 940256728 342434255 601205296 253692384 380810956 882617188 890292582 808377818 933177506 955009213 990467325 236041969 434003605 275445947 650742633 567555039 770782439 898863942 974761666 402387362 570097062 342977893 453892666 41255689 538505949 987386159 999815743 498814974 742687112 292213759 440530139 676900542 838900896 221617155 487401517 218494407 749797958 26233463 921052494 967351131 974609328 590232971 599717780 608655859 953222040 63842305 499528260 546204616 647022531 145354810 568584496 575716760 807829795 870490330 984561585 467840705 534644649 692751883 697164163 45638614 967770844 665787081 705370751 236810010 653058521 447823027 609020484 960840075 975193067 996360224 997720352 714114360 965306789 596187522 783569506 910025761 981376377 148165908 262450679 870977510 878193963 496334076 970500327 235623299 303765696 188810962 988780124 290712973 804649389 735929043 737379419 483610430 818003986 340215594 907652825 844126893 970839779 458213565 815084886 715643488 801649049 929464757 940289454 284335997 399872222 239490749 989889271 10668120 164495308 914146418 991201370 655598987 725880913 808492911 859572211 555442611 801888809 131787392 409785058 331986373 444135053 127835033 766544640 934448545 999028788 144101357 713107505 480998642 873311384 394713120 827072346 624377961 833240257 777939096 916498175 919261083 977801375 256786437 820950757 318304705 757456803 334840879 612729083 360809241 895648315 227977122 650637357 892939658 897061782 257803868 709611284 17478547 820256163 550477727 927943414 310628441 971912305 23255516 909978732 896855822 987838648 801570574 972870088 782559318 796261537 384319018 962516568 156702612 481687613 193596438 715010600 670577814 870696002 282158143 616263505 941213740 949083955 948830548 954597903 717539357 770382647 692419609 904544860 461737047 736599850 527353857 994725035 989643432 990536129 928078190 968688751 927471885 941670305 86869654 87505622 57016257 730049910 468634789 754975184 439026074 838639829 500683803 934947154 581110418 788417327 584186838 695468822 600272554 614017296 97998210 978188700 160970005 986301202 782885959 835328480 185239718 589416715 580018269 686594717 814945489 972751145 95516600 183205991 901493554 992552752 410045213 639265514 207132100 337311055 444180231 883500502 44637863 888833138 123872497 943341508 818383807 924829738 778773007 917853814 620867035 706960990 134892785 796901935 533069046 607063399 139926181 793077014 817673308 878662640 128960259 894558976 509117141 593043296 877961842 973881806 686037586 983172687 65968532 938506760 559106810 710247527 607415317 886564873 837522806 867818206 494762983 644052711 698563236 901253209 69809368 444819049 280057429 541731302 187094507 335229495 799903334 965064322 677616306 870941855 788095222 872559186 49782033 583382849 480104383 523339087 977989801 993887747 454348985 730277406 766832232 847015708 881390549 948264954 499109644 876336324 862086195 963494528 184781519 878410867 61978751 190124518 707105303 890813131 730031456 909139550 744266333 746923625 151439316 423510355 317449708 870995993 904738885 965606260 675559828 716217600 890059137 956642788 181104504 429129116 954949581 994431735 222974788 598462600 748500287 772834613 358131110 989021706 960597117 978491096 958865736 965636867 24813434 585840869 847068243 998670658 189121509 364402054 670533351 928478432 715458043 985222157 795123157 975722757 927654425 967125401 317081189 751138464 682306442 723485736 280269252 562215496 524499946 674811116 371603446 920688338 26729001 613153879 244116247 722261928 453524835 964230605 73145344 99949884 607551247 787648930 38759145 165707670 287048692 837349691 186153362 764239967 854765589 921056726 731503559 903269538 768692621 963954309 854213120 958250340 932653272 978781665 537070763 854550509 818818355 986067721 359768101 503143883 526069191 888318639 140596322 850007539 583676616 696835630 524246921 866457276 960343705 990243406 777319920 908124945 461906159 512386650 480167852 553310317 539146907 970628539 615875218 719555945 345637778 577644079 132421356 355459007 690055451 764473098 608798984 657105235 131798698 407007296 809757637 828507241 266432436 968461651 581607983 652866945 136170249 614763512 888010386 896115055 969051343 987012532 632721315 883732042 617828538 813622260 961162303 995200590 714473726 980210378 639998771 725984765 174026 876545042 31367822 644690301 293366466 849312974 119002026 153903632 623488976 799929875 822226672 950594261 219366679 237533217 888313446 962839233 955358214 988850125 570087898 662184043 308164753 638918257 337391837 664361760 841663980 925019626 89093083 427009591 26405709 423263602 471042781 636369338 815336916 941211877 700234721 839690807 823205753 905706287 100625171 975423985 45114765 156348557 235724689 545873581 138552426 265893168 476662371 972482782 704063786 813536913 601054914 941367745 725483635 848608543 781582812 927253991 752335243 772346837 584389552 972608126 476452112 867148123 38428152 789254431 749658276 800613369 333359343 356718833 567955965 867685758 753437792 870590784 905123225 973282679 891597165 937541575 39723396 500798510 949619065 960132341 936894801 996440442 434023744 755972250 357843416 637166795 577559334 811687242 874763883 994001741 541623698 905752622 963603838 966874842 472434316 723080972 931413323 987342649 593238351 771861899 878585778 980460421 277714844 865320230 207621689 402151917 35550663 552943058 844847381 897648010 775692178 821318239 183445346 775732871 969051327 970130899 67802639 405008074 653207645 869336668 527529720 618607422 225122123 451298355 975263534 994008130 783981604 943181207 165230274 907279820 536861724 554404717 509674864 693053922 917972442 933473091 622233667 920716384 919351524 999414022 717750535 955063973 528980839 795001010 524964120 650206319 234999968 728638572 715082865 905190090 343736339 383484504 498964847 602008809 122462897 272768174 404740352 781619690 959266892 982312649 647611712 847865718 33399044 538466832 235542248 711636852 555597179 746586374 947111506 959585934 459344819 599663871 336852818 468987614 173709615 923485271 510509976 608792552 16970918 359476041 606950023 871939001 683728747 782087336 381734518 945364687 77036752 533484586 707734044 927247276 961039404 978788087 322948053 819149809 356980778 760729211 267684690 387577613 549434904 989876508 747291394 851593725 515908358 872828417 163563802 716946179 310023460 389996014 53675865 111326861 4561761 248520850 742062046 825535924 436502948 971692480 798039547 840494036 854125344 955230424 358800782 733937782 513290178 957564667 764204001 879020132 638517830 755764032 342627030 610213295 338736043 724416125 529728234 795171502 660964409 909702435 454197690 486471051 744663205 797531697 115520861 240508466 264216185 901643156 512653723 708173373 880928697 897124227 625431885 868528349 179409396 476661135 962449840 975990286 119473768 664959008 479827775 925404593 972274584 999759366 324378797 854078357 316286842 346586745 423714502 584402146 75992541 565889738 284005850 572285195 330214602 509501549 394929736 452570901 187282921 699517635 131198563 216513876 719274869 845813749 551620511 735260072 662468870 838203040 977090375 983410436 171557463 719946422 685593690 812738522 392697161 812289208 691803517 826755746 92080985 904823142 935627627 966720023 735606762 931770892 552276104 748237127 387574855 866345381 950821686 994615276 402612309 513562661 329674088 507904521 204740708 398608071 231591837 750292707 639525803 720083631 840130968 881368368 978449821 989106021 817361202 900556304 450296530 691586463 275150830 509117816 214956889 942458059 992973290 995900176 585071792 620175462 205881355 874908101 762647407 933996113 604040800 788006321 814276320 972117553 219804570 501593682 844413311 941542907 117332772 366409518 738217621 838096973 263951155 416714344 447413917 891063946 465383075 976183396 780893718 969755784 903472106 978445475 402754580 473667800 111432441 201699879 183619885 508568201 775363625 903633383 733857713 788305388 585131233 920370569 493381778 858387252 736001521 991225677 161689668 183401403 418905808 747240398 853815189 982462039 680452220 726651765 428798671 554836416 515110915 592685645 23623187 601943361 850016577 871555831 406499385 832765392 151801555 698443605 777734879 897015525 412574270 688543399 917270738 985033578 573353134 610027427 996837813 998526941 889813624 999517643 331767659 899446594 171753036 598605121 613281585 766382861 800620015 881938803 942750501 975527643 430812658 634602649 80422589 863557407 705664314 902260909 252396967 793610552 303232244 456011922 531760828 777525936 925547794 983592787 38128686 321341008 665941043 784198087 546829125 776556306 664377084 969079990 85090220 333271369 549190503 553259004 155733948 614429141 651063855 979861773 620214143 748283849 544637913 898391466 856635015 980902802 686106941 917435475 329144078 516873302 22041544 681526858 844366452 982702932 623568695 630447176 678251410 702107482 910380595 985057338 667898 598993626 688737371 796408933 758900811 829800412 292635149 709367739 363567346 649632194 307693484 350588276 786926941 790071816 409166861 704755802 818463466 870645496 77603320 228114741 52814259 831544562 680130353 944973287 990245358 994327559 939284346 985523877 266783988 594809919 785622427 813045683 11861878 659416313 648499731 702904486 637036820 754175730 800292731 829686837 425033905 798057481 863035893 875945245 400004505 869088896 294352106 752269855 773831656 794511790 677436958 761513864 785406428 892352590 419780530 719086291 91513932 446099296 898946711 948848104 222603957 461642191 504361749 841128997 225231776 887175988 930357753 994609640 277022781 866524944 121097460 747507403 10696770 283612520 785991646 949642370 33505877 335771656 231118924 740029763 47610095 384081951 795994016 837120436 50967013 907374937 832896331 980660657 709113297 732084934 122842261 191478358 364832804 495481932 698174722 856240644 877663653 954440419 269724319 401191716 475984035 514296974 519762269 718832762 917101289 974884219 363353673 744239532 541383317 773578784 8430599 216956136 201982174 541380525 653937677 756222370 847421774 887462458 476709134 816609652 687751906 938818241 547582782 928375834 556803196 781496974 27763640 531527297 773212104 969576281 341751011 509597888 757660112 991369725 293134393 809206193 27309434 493332170 483551514 658997403 177043071 725630599 307418510 876710667 553190950 987833912 973823703 997764392 98826115 467063311 55906653 850621057 984464018 988660499 570495622 643609975 247493576 635903255 336000349 684037585 560329280 629066934 770352967 840186104 846873278 986033848 508773223 585592343 67272133 750722544 275383738 996510507 70987301 558956521 35017530 553266070 424720896 879726932 689712427 698153746 63221717 684295601 854082782 875894099 504543094 613291378 680610888 719934809 844627444 928819639 420335017 884945467 938257584 979237317 87898526 135663487 282937156 339496179 988408439 991999626 965651819 985608196 76464908 935165188 797206649 825790732 500943676 892545427 719465775 722862014 875609733 961614798 493635422 913791481 454200186 483317479 932215088 992310560 207117782 514419000 911949332 913445843 170406668 952751999 176192834 982404839 120494103 517691246 298339614 492208779 859055123 925372238 950853271 952055751 874159236 905118855 136673200 871242344 292636299 952391738 781093980 811223094 603663602 689009355 470604089 624391143 611228397 704160242 945396796 981868908 970588757 986457206 586948571 697291207 132318604 880435687 378445622 818971101 526623942 840400452 477432518 914618375 977409152 984170582 773394593 899560264 786327863 972919526 438855954 689780525 952105543 979225889 13098881 823681074 656822985 671331023 606651722 875926624 475194681 866595178 501022542 645956209 678930136 907235967 671179080 982923322 974487640 976972860 771224031 844585319 397278593 839590434 637305030 708368126 58461407 941959303 218985804 635143578 697971184 754736413 405530816 899451956 753789036 836040153 146695124 277764210 211706782 924583930 337774156 621948773 501798898 555856081 445979769 452281353 608914060 978304483 646843388 815995705 116315678 874238903 863667911 952933218 962808518 984489931 961146032 998732893 255012632 416644644 601463857 734107882 342219152 811888051 571441073 714966604 145936128 640571870 228926941 334593356 26719026 397771637 689572371 895786991 141162066 653473940 188055418 508560409 669285244 942130550 707500968 748946573 57484744 873791891 788894791 836789104 991012988 998227068 352535511 599629035 742935006 784091923 301038765 793850773 990858445 992921278 268265083 712565962 463760155 578161029 647371076 820966767 38668491 209626620 332617160 953979251 123062940 504417834 433243587 559469619 436405968 728700233 434843398 460477758 246699229 763123500 684423968 895609051 134888277 787625316 161959058 596080920 718894134 955440964 297731541 726031667 647957508 687363113 790767028 903705822 348040754 666145623 534946240 861551297 549117136 650002333 651894075 877193645 338507766 423109950 303908960 472828588 438605491 712992106 927014646 934528617 938813912 986115791 385734425 390489332 774504960 952738839 639352898 808672432 734102743 840558978 823158647 865163854 390428056 967961577 984787961 995857260 449418611 797096096 761150734 979182519 335781806 362792346 137004477 873111813 627590993 978259253 1686152 36884254 738013686 954062327 343265564 519342311 275028508 562452314 694234600 974496066 58066202 145215201 75752637 411327468 255416919 812801048 342580216 692525569 366738089 803607389 636013299 880554298 844922176 863671450 159917339 970450208 302743272 739738958 156876964 848813550 291512572 735883129 614969167 955962694 794925919 879576581 361909446 550075031 707315453 772092815 829480623 839022333 59836390 247834759 282977095 934557798 998601842 998980657 205358148 208784342 77040116 952087862 417711535 857362662 236542081 612861357 886511425 896504992 236228746 337383333 434782062 983465595 828978180 966231086 139959219 586703279 905129309 997973367 360983764 400326875 79559350 477083100 687921980 871774391 785938628 959795242 542851304 563893190 848891883 934341625 955780593 996726506 36203944 123489319 35003520 497328557 339713074 586194664 994209697 998219335 572533045 846931151 517159323 531517148 689571901 814812566 729109229 914524564 911979284 959542656 997404912 998889910 396624447 660154928 993649467 994138764 284335234 334388348 670509068 758001808 894612311 914769805 447597079 908531477 994567009 994892431 985865984 989036859 190422623 274794458 502241339 858282495 432904332 700463681 767379125 801157276 997449129 998858306 430224271 646704921 290637613 383931800 478529457 701631725 589172595 856308686 73512972 825574300 757638392 876341727 827886555 837807937 350489092 412125114 287689893 307442232 804947986 989448501 502887367 569815106 969147228 971563063 327029679 582389651 294454408 497397846 230139748 397785289 146118792 236545215 174412869 408014702 498051752 928469200 951437246 978746113 569419609 609404456 342238103 889441549 11749403 488138576 713399839 868394432 817826173 892517499 814838327 899661634 642203719 964805814 707341097 880891955 521384429 612579841 73735761 453843281 705034495 930073141 791077312 983749871 911414201 980994863 935813243 976136102 856136446 995158723 602162670 657450635 32333448 382244414 385766149 421936578 937018243 990961332 215112479 697420803 443574509 918253714 411863201 932702743 464302911 900779418 170360550 399194477 458131310 644231441 352021684 546099383 667987186 701236693 466946291 957523873 575684592 925642874 945644790 971701373 729309506 852430489 558786540 623039731 977015588 984314584 83526211 412131964 489246385 866299255 138078044 970532930 702892831 724026717 694603116 929379252 639249221 646524758 500071482 854315771 659642891 726246560 951686947 988148942 370271817 815723028 14046817 765345492 210833773 807624919 143554168 501480040 348690683 680049236 112405366 195457444 654421899 787239417 96932356 262417281 267314378 567852994 587226878 865711947 762626968 928731809 374204158 648463495 363355808 649872072 193457050 868956077 277797166 633118812 197942760 827559958 652649402 898600844 547884831 921478641 96390974 757878495 855068195 946659907 1167053 862146147 979581772 985755392 508415273 646095630 827819232 981361191 467949046 634015435 843771566 903306153 118814016 424521362 272756819 853384121 717454978 996810803 266166082 584802079 650501865 952956051 206787099 688512394 384192779 670956649 614043538 819230901 990148463 991504007 848829759 993473120 956504476 983058464 65643407 463199116 525360360 981789392 482773728 759544634 860779115 881892059 730977950 832126263 308131 198033784 434916636 612725138 316672330 439811487 725858313 905435517 17121371 564035968 196620000 242906433 341506148 977342093 49030858 436328373 938209844 971090350 2068886 550797340 917208427 980530577 629773187 678803224 934830868 970568011 335983076 811303001 933696902 961422823 461520997 533141343 584486418 889010004 500688972 515369753 943353164 970049483 770071058 913988719 731494327 824255941 399832021 882647754 518765140 772968038 305361280 598141368 616140439 883462279 618077413 668516980 780680042 810756418 569894305 831680602 790092122 810436970 437031717 713102859 347534575 760616570 77121587 469179911 239507723 884214476 390536352 595801298 912979281 947509444 658477992 722389016 880378423 997838630 346061681 350247809 590658483 964999995 579872437 995882725 570676458 910493118 780935848 787974591 630813883 848247452 731952283 942216915 724060090 898474298 662043604 962295997 816545420 914343376 974735372 993451577 834328295 882095632 329367611 586222039 855013540 864126477 152493498 696665861 594738584 759956223 700782112 994549135 23665831 566417216 978077370 999970088 936602031 970671562 786759123 863923410 337292797 484215457 422560705 851752696 495291795 995404247 653619004 721744228 755668179 911839781 6524945 942321140 415442355 498156119 417710359 642330932 292793341 470526660 725220245 980646036 741749912 980763270 314240263 757873522 582637477 691624615 610362280 652349033 488924874 831771537 491995076 642904901 120830527 175378356 118886313 599483826 681420303 804157640 343369209 471081778 386703859 508627080 589372300 599286332 196264180 747290238 570218082 812192221 680406363 750942864 274462818 578388325 610027830 806062887 33008787 481472042 759541979 991876976 972579686 993859623 880955895 959864083 447367095 957418060 273672062 352970286 23737194 872326155 169954141 979026762 157771921 598304109 554541784 781567022 925740712 978692257 289663308 619659326 978112102 999896209 675333846 748368187 714536397 996541463 745971449 902330253 395295051 577874267 482215575 515342241 858645262 922329223 522383850 659353234 445897895 633123580 64476213 925298374 376491913 567970363 797420148 832383206 248214604 298299869 193205722 478986284 883483775 994452094 68378955 455941780 88862066 676573637 670506218 752714416 137932744 229137223 370110371 629188719 26043520 438109996 891938017 895850627 689863112 943592151 475053490 595975486 196091076 306728122 851872858 976259033 571997589 829746233 476117284 876048687 120715941 998878816 53204350 249705961 207183601 455843296 625726306 795420416 307924995 560041961 100600683 660180417 282248531 975350435 449387197 941242634 59971598 691053872 921018828 944512951 516043666 631790045 835301019 881318416 784712124 929988262 568174726 897243121 296607985 596743037 431997202 456378727 500072120 747856494 236245362 413463323 32492402 564003995 715941442 966293266 683604883 978908178 857531709 999517487 242022326 801760924 505538202 835665786 153168582 447057604 90282528 561957615 484783816 689957464 190912429 460510237 221789206 762416021 452722905 697900201 702898180 790537784 364855109 430526515 840173975 861096221 670828522 782378648 497847932 972947110 899883584 997515734 181388710 656576663 182914363 778527376 871548918 979430842 443993484 843175442 807832421 995967596 908731177 916052729 337824844 954564508 766241611 858869241 819465778 983556162 657692059 700333185 681022375 721632254 741932401 859418450 929284227 974787609 302344441 889664612 976428663 983159930 587694454 799547285 995592811 998304292 150449902 812359325 707123694 818977749 782384954 965294935 809717915 938296588 778079920 876047931 579171231 926549096 30254985 779533832 618253088 968765539 524637944 540308650 624698714 823524813 807461060 832837538 590516444 855845845 956127867 983512895 302299944 345184536 235685648 540673197 962281259 965011585 648562151 983649560 723690295 950751145 645896355 857755902 224641455 590963219 604134877 936150033 115584024 996996176 126667110 886473063 835059953 900281669 780374754 921187423 459324931 634803729 759932048 827917189 499084801 812094778 649731065 797033005 615883722 770387273 320361888 377744202 831716558 841576115 820997998 861808623 845561650 943895174 50363311 331030898 338338574 826961820 782978719 952909341 607249770 630452774 598721484 772665502 146100756 189495719 206744229 418318303 294968616 784810902 730562996 875807976 930929380 959759870 627096387 852416369 918150354 927922502 802279088 962725725 99321569 272628915 773298840 834658700 360533952 509008764 529358184 955472573 865632602 870156638 430632145 476967419 684444848 740885062 498576660 621263343 733792556 815455936 967311633 969705410 494629302 578475398 6067581 250686302 85052866 147768055 572167402 738287588 827751088 982634836 383840446 781825595 492316411 972957279 296753169 969593147 712291229 776465666 698281230 839047184 983402342 991611267 186895189 757702109 950914106 979586551 58461782 428069141 448003270 868611459 171597586 499374001 116010665 382006971 490171962 597154387 487189934 609538823 732107666 887547348 626828128 671947925 887286374 949127212 234835321 733124830 387333742 814403939 149994051 910000122 394440806 588986935 161644042 170978055 389364061 616138824 155182729 810600767 297668348 452709302 475487117 646000861 231724178 528179145 344969383 980136278 727661285 862446924 958520436 983100071 243825473 524365761 228899209 978248105 406704106 532383753 860672832 949348043 397747163 756908455 296383715 551140629 666553631 840179006 556311445 848299020 734194259 944287941 246301130 339518027 918614988 955659759 812631759 864110380 157940612 355920673 838969869 923263315 903941147 959664467 901718359 995022527 448752967 630318444 589291466 971431955 747929220 804787930 476189086 548142673 38838479 914452163 589545120 763013463 816066078 822921064 991422931 999196030 885095881 898725055 863648820 941748331 441156368 752605679 444066945 883949327 144430126 251248184 769361487 929747355 842799845 873268138 763608887 838482636 41695571 873022708 254081872 554447695 461923469 683197256 290909569 889507323 328429068 395127886 997632889 997677676 4880708 948928786 830807048 899758358 26555687 765147819 698150125 882127279 17511432 397317556 348808071 940397123 334366026 653843187 674682334 865826988 84007617 474000012 490020516 956135026 124550702 968015466 929909030 953742699 100178855 435091182 347137103 564043729 117665980 260609892 698003701 848060497 610811881 686954881 590925476 914017003 97611242 230897989 626515559 828844598 294504709 985874491 609931815 969811465 463465414 766293077 772176767 816522191 436043010 917147398 44279988 999740951 379977776 527297205 76742266 888540373 402577113 767716723 251871818 310742516 651988440 899692564 478838531 722119581 392789211 714593191 869496949 946134416 148764329 403945610 739770738 959739996 837776760 923282884 675578060 895084601 749896961 937815693 927774681 979543820 919848934 991911221 385291413 792509886 913566265 968925060 314773559 870928039 729462345 799191139 420856181 927082480 145422625 747669553 632365535 963564226 529479092 761274727 567167436 859454729 920797908 975360359 197922142 663461875 251887806 325854504 558436990 974768652 450189267 757804515 487645541 685567469 134825244 342024039 380145401 812770559 150930193 286768926 672872667 907236529 587911359 795530185 475874152 606710707 540624885 569584208 768415359 943880001 621606325 907564028 534042347 971454313 672820074 693970591 867903312 923536074 373174205 768152774 357361810 911762872 379262451 684958404 784915953 920853565 921938404 934410288 258608280 386473979 136857443 430395879 513607023 688941916 915403884 994840495 945192352 975676960 225693505 647301390 467147507 632452037 238548165 528627978 421092610 439799617 494556057 861577210 420282534 538400909 417819419 709181183 48495075 510327416 270600678 623516385 288939376 701315215 721539835 836921108 530531020 653601147 778756797 851570454 986062745 996759692 220775560 228205461 921583400 999247481 997449564 998621183 511298752 596913035 580857801 766131156 560979026 754995481 67806381 640980363 335450570 608622480 40996885 224399868 365592098 751788652 201080289 253772858 904105372 929030184 236078944 418448324 119243868 262811546 339249296 523200890 761032027 969389296 875067169 876145009 438328652 863795865 638571816 716453164 672112232 862256184 603767735 910941860 363269919 784718265 118342200 768778968 472261064 485736196 510443414 822996988 809993367 853085057 783223769 804303903 923885203 965185016 572739057 658932042 389144898 401754250 661039600 661488000 299446274 587329345 900704782 955825994 673765564 963970523 732118475 811548684 415878390 946830664 255375591 485214038 659446913 895871192 312015667 974996290 786204148 811421107 504280320 820925151 975586913 977266103 462160047 970378495 974445007 992767455 160853120 709823789 761427535 810166497 904380201 978308506 466801128 849313045 451391996 891337667 694743191 754576326 127968117 679778726 261943931 762912795 401284849 879565108 923520129 966267637 129951690 688788170 95756708 285462057 175626914 697304366 640130527 752452199 769272533 990254387 902718308 987725630 721836816 934447682 63684935 414065109 21484229 407679668 244958802 475220128 942984642 975841988 719865666 762651722 870305704 958125789 180965759 873010358 282565241 504206502 5595454 212738129 832125596 853193372 505568662 541254275 922094224 987777107 922201217 955422089 441646634 886995459 23340255 78640322 775829466 787030978 339722461 738926332 556087310 827431330 430807288 883394935 968084575 988646052 407236181 979407525 358652231 629760501 587801864 732565663 546078351 728395470 866259373 871412848 891067395 913812824 114852136 167751579 319526726 567816589 895819253 907430408 121335318 330313453 720141051 918191701 395327844 884061304 727900275 818798482 943772256 965715966 139152128 946141548 337662803 428614441 476207084 974280932 298736853 630102626 224575258 388771131 898371999 962119128 146895333 382292417 752052464 921256289 292355764 988628060 403822561 724386391 736366724 907744868 38886064 277405953 232253973 798116706 487382676 744870239 444778438 963109597 748706004 917740381 791243094 833505985 937634828 952519514 270901965 356366844 847085562 968505544 49507424 765764090 579456596 985563345 980656097 990609092 37500389 321967749 356066051 386697945 744059254 780487007 767957981 974112005 927833165 980270883 379903927 435719938 685828484 983566174 154217206 637752680 34278874 435499590 592958172 780487045 677897613 692531344 827006055 936371058 456643303 587139712 604622160 771323917 692504404 977974573 181227680 420716278 912920003 960533485 555021517 625507904 747619286 926481666 411797422 646425045 769762728 780123910 678460705 781256465 590160811 877179256 652605490 790452174 970241331 971980259 701299640 887868912 383008259 790116725 74737717 247443562 167895668 432974521 88724041 672528141 559063224 916993883 162125502 428585922 391872314 579354465 723646817 884476321 267574262 502827066 693996701 702148147 933429961 998135812 351087881 996126637 145058182 407446013 88637236 185414913 921603849 956418982 475972442 727077004 896440548 931131043 923063712 976196473 831892764 854873224 801439392 886522071 728261435 882327901 910257326 912134525 773401155 954984119 205600599 898197016 147749006 909884066 486133168 924317131 232154465 735411080 871435679 916445090 273123755 428971270 708775835 959016680 436810255 843479589 339176238 636695121 268533139 656855690 830839784 977809556 302000018 556914839 653648277 717550680 624147350 707873126 783886325 959318234 511822366 986313852 516961803 582327203 30024157 825599148 75866131 907909845 445993652 701895124 331651579 719458432 150624164 585285032 317743778 948136136 785450648 938360159 74868887 440777713 259183414 825980752 226824344 950609585 971152430 991653096 785915212 999980573 20766580 561161888 49606322 300046820 393037348 413796962 848850384 867740159 651472645 676674846 476018570 923126008 476900007 586482732 819224980 931918691 428648104 528554992 914352597 946175971 669875868 862320773 408231618 999721209 86397992 581595711 160156897 326152740 539735305 921364096 785745643 943481470 571905769 669165287 118917191 961831077 50527202 416596603 396329171 423180732 28665059 190254044 175011032 235649449 428133320 716551868 222032765 568937873 749420444 887825983 743075694 957822266 952242 243249710 344518725 941466446 455190647 707595305 697683813 900397025 971138056 996136408 187980807 908337143 686935289 846162728 583233129 731617315 344537051 407378130 734320611 746615112 418304461 853358531 272630068 966542096 172037743 579552395 399796133 891191126 42910174 488640744 811847902 866365248 940946114 955369101 564814429 947725630 661344423 884362724 95470103 981147155 427416502 676654732 885691306 950820299 422784472 622787032 591770856 845084705 891417931 928326399 127101721 727823337 46230337 913126263 567709245 663644026 806381682 867750056 295377644 833812773 765392038 911673395 676969540 742954830 534851357 778619017 374793565 584905085 402065060 437669204 795900493 886512414 16233263 177302112 37958248 104904542 493593569 947950480 222389825 256828043 264673716 483335139 425287103 617492388 990978425 998997549 835535178 971534857 732332344 985282437 425607481 495570211 663950183 809779327 221866228 299229608 348295273 993990349 700631641 910525058 116529181 161160398 717410655 778189937 202612280 446009129 536619789 743070735 806544515 964257482 990513000 998056149 885153650 901757786 910463162 930978853 268873859 876636955 208698051 321421201 842971965 916632978 763622077 800841601 978945099 991128423 988059062 991677915 738947065 755983919 836506771 882238215 649383577 989183318 432323937 792976965 574673383 824897232 645476626 670574432 773768413 854956850 664737459 796918751 71902800 197791241 995216694 996486661 393060903 546572742 575355291 645964915 232808520 766593179 60816899 178029397 701219955 796446996 550893939 792002175 835335111 919712941 448328191 922119249 350749114 479317943 276275268 476854423 494714924 910935974 178462407 364097527 13972974 997943992 19071976 298871299 604445624 749706233 213576972 352797971 795242457 954593238 159311525 915358861 36305804 65777857 787157632 794726104 385917207 616653870 330545126 961280707 696714489 901392298 705959274 855302253 756806372 987161834 377145004 687093976 258427013 964867748 213508778 668586573 994048470 995148459 769497199 817698124 705775654 822338010 382120329 404462065 914890840 947357812 144108431 460615308 206987735 472125589 272083130 517013520 698803631 755764506 393533172 630418962 563463791 781501371 866344036 955654705 481558356 905756883 737253119 756823862 360301674 987933275 378558776 671440129 134634897 862859487 785883952 909942916 633434134 674215064 224085535 619046513 43272222 962380055 985748241 999583160 31142436 37253719 583454694 872157406 190201251 965706982 48890448 593235043 908301279 949826331 145319465 555915359 570134969 805655603 85753316 88563383 44735984 445678522 698320757 904672645 282425465 608016153 668178198 883257973 566293215 594472332 601908587 862492938 554426664 913837047 999451734 999756271 978440562 986707408 752109881 794694749 479524721 579664226 374532675 646885679 981992242 993204853 730249501 964466849 711049311 755654754 496108602 872081542 42099087 515754443 421702075 777639011 244328982 767099741 342884546 910019512 813667364 937083109 366837557 963805187 258904766 553337953 677628908 773413158 956129832 957071298 266103298 388662958 592904686 694205270 925854499 992371505 902002353 972445882 654179376 805947612 943043189 955921130 244536519 789659793 368579503 906975299 493932405 779784645 607050550 658273477 343012275 597960179 131221099 398973400 389415050 542911340 427888928 568304056 352897359 945422164 589222850 661054077 937636958 948423104 821264126 956123394 123182353 283622410 849812968 947862984 664833743 698347035 901378377 987315872 743339495 876861396 729372156 762728300 245289204 535755216 269447093 492348255 626381533 916037840 124627840 650216862 676364653 970037184 151241758 801692658 114602829 301879328 779181071 840043865 697309023 879237309 137308978 242530626 480659737 482568044 886304741 900693852 372755433 723211702 636811632 638931452 78513882 712027044 468680144 936243954 914324300 976741584 71093590 838651786 575725843 579464626 797746465 839409694 428121620 896029313 299636546 316192860 199125197 453370119 188154973 475019320 37959800 559315359 338841216 356686880 660311193 764542351 572604716 663544618 680622397 879508241 794201440 932033828 351357916 733471661 868375600 899517845 233449253 763787195 134758145 333559957 715179496 824948037 978706984 986954975 2661787 516088066 762482997 942391996 127651446 297503328 407269020 451028835 507952408 807031628 758989202 779041262 149738159 258739773 953409717 986933539 113635891 594978785 863645893 956916023 474823025 613892833 889223514 977164507 181453030 218065320 572565097 623320268 612859996 896391299 530429729 914549310 927304985 962960477 315225199 907138469 784314167 876087122 325508288 555683470 379014906 706773446 220117398 978687171 201099506 404107657 91110101 972901754 554211719 600488118 713776947 744093962 234142270 439204287 512833509 684525165 193080162 841609999 504288694 534042784 809334963 906378606 268692680 532351964 766127648 945379834 972924091 978256601 841538877 844164180 105398055 937083609 662124319 733410487 887859108 890678796 324888887 509632087 524885033 864945864 485807410 676847718 157018073 212978789 94535542 735006590 138434990 426505683 870793878 981065532 435462058 577201657 920470036 966741614 549480922 963811245 860832693 881901894 262290393 264470402 627690204 861694385 16121500 366730314 755164936 918300985 937175899 974572635 693770878 959121775 360438952 435913620 665119801 801674818 962291611 968258301 463456329 712068807 198241270 470937205 962657073 997272467 887310794 908591103 439570220 901426413 811649175 993386604 921396841 977778684 982873611 988623744 200427098 702721175 591820440 747668711 9904020 492228998 577518186 672373115 72227332 871756774 156132567 187828657 432262707 910967588 652699211 876464779 2808725 483289921 21682087 533894060 522771660 562184975 284651876 621102084 340043064 446501594 326946683 935860027 270099092 672082852 884792594 928688500 354568182 374104017 887693599 926933841 702551186 703313415 303172905 351872868 706754034 798152703 992528764 994095695 382769993 966348638 277119267 456557946 783822791 825436149 564817413 969813207 94968516 396028718 181213436 402851232 428347271 748501968 620974752 912106120 350212305 554523853 953222234 990806244 979952333 994895674 676766735 737555756 696963084 761200978 293795764 840143416 706005541 721649474 813541675 920368125 253062597 532200398 950589156 969207450 594374938 887413962 807552962 924458786 647912526 879596448 309913166 440648807 852915485 997027220 199552138 989798578 899985506 939814762 671031412 720913808 154695662 776958094 272769420 611920023 858500288 882392885 141825180 350061873 240050720 588254383 864717308 892982855 805354642 863409091 101314297 750423898 48323123 473915057 937579919 961095516 85472717 209942352 22953322 910539345 597224842 861553677 871633596 980700280 119827219 474821245 293917000 427789082 321111551 496255062 751765422 863753103 127851475 385550112 380633072 548022852 275398915 798231140 920071132 944796396 135293333 288826091 312447867 605364826 77244197 139392417 765795595 879246831 153632282 864600375 947164335 997392659 550489870 955191890 45449921 441960780 801918529 811976905 632582090 702174746 818850545 995133138 70141496 665478308 44222057 519997938 795021242 823417566 145853456 858033532 433116120 508582386 643448768 983871308 900473107 951630706 305305937 542043941 549652335 995207517 334633797 591036536 198642519 437257208 51672093 300387189 617949524 962451985 408912818 491792890 849974677 874040535 938251284 957241866 255726511 852089525 679421956 759409109 312399731 597853694 429871778 937836604 830372395 919544639 938939237 953352489 243478886 466858709 521738660 784515065 529383469 810662535 318185346 723529849 395760317 796040758 766918134 916586004 424840629 994299768 276001511 476016244 631413905 991633951 361033408 934315925 113869768 750755054 970620848 978107976 789499005 832220253 726220732 976372585 830973817 991245392 879981627 926947310 522562216 602823963 516334197 891571539 165006776 814430798 64040130 110234698 869227950 955953828 708205830 805057441 440796481 805009505 192860033 308321606 949043811 974808588 33627965 877770537 161029541 264359320 746357165 899581135 507034290 611412433 263471144 363475193 476837924 943886237 461409449 702910933 683527984 971460366 891852586 953677554 952718157 975075671 389737745 705532663 840645078 921154470 956437597 973743421 390064450 524094000 393538021 667661074 916944443 963179721 997056683 999053027 524202161 774410969 402841602 646712794 818040140 932032778 960840338 971433379 190052104 388653667 508492435 843507870 54621512 333345573 655393603 927321709 285689910 963193522 282091597 918083459 207842305 423963384 315903159 686731911 537204587 705423478 798462098 804899261 963088765 984182014 203185152 763782516 696712946 991431970 32552604 762779617 133426143 585777891 34129636 82676784 141889212 951279535 845728714 968413303 424225541 741825715 688224392 737608317 279453612 541820395 558305057 815471983 729461949 879107782 614377111 702144976 159432251 975827600 435031277 964349347 861613834 979493662 105307155 819166716 267210512 943304787 860666894 874754080 844877546 892979100 627225308 755641608 659331502 930717612 707865641 871245884 57889782 802341558 841644936 859598255 275585734 972099662 766003935 994383271 724496038 881468066 597537863 979885955 948892209 982866805 279348763 793094767 482139143 803557271 157907537 263812527 282476527 897502667 510405722 893122936 45394954 906214753 318053534 912044200 605370140 664170738 196173743 599886403 543189289 884269868 325042142 380134222 31687422 210736861 762897644 881298946 581184483 982332595 74724941 391986668 545528443 818145321 604960009 832279882 387909211 457057790 469265696 877195626 277786038 463460462 385641588 958277146 152963393 328112551 924066642 969413015 480429101 750297365 919072149 944077284 791748116 940812503 306188987 900507944 995985552 997445625 394600378 997520835 212249190 227233445 339314995 520977170 547589873 688731569 962335842 975951676 333274749 435175917 797856028 947427975 22973598 846337270 215759917 919050303 897839426 928301717 991253597 999697353 175562829 380991074 924577474 998306716 182805393 562789074 955043698 994695508 54216901 289922037 586819285 730649498 676214558 947720695 77733335 354619519 815394271 829824376 954923380 987667335 821506427 945902053 610215234 725128647 719245596 882961328 898819814 973334797 268665828 963568499 200453474 275228911 532366766 859326795 799839463 919738139 273567103 383276054 783215186 940603670 243683026 312932248 937481261 944795108 28903065 995528978 559568698 788661771 44466363 256356978 973409309 973577900 4953051 925231734 108757149 432015558 479914627 668093922 617546647 908680884 377427284 837409406 396587358 783583328 227552027 980647075 885092608 998061862 881119611 905603517 830051028 833821907 307888249 461550090 921937986 956426117 725867482 942666974 562769030 862763043 12413025 539402909 916875851 943091466 172370616 341464251 904043595 952342613 948929274 972966193 649551302 805072452 46891047 499034402 104979539 831421320 722948731 893303538 185618175 623405790 33246204 499778889 533661844 966912374 603027362 733592376 188600683 298546110 638446141 710253414 66410867 303433851 136535663 468319217 247782682 310633893 916344643 983675090 57469663 728520216 734025470 974337716 263883894 983566350 62006330 549526370 611733783 770602790 754321588 868200928 893042536 970890821 645076766 943729929 115910004 498273017 192296918 473124367 532595309 716947709 59900866 292368608 273612734 715399998 164109912 922184582 166707906 509417663 287291971 855193135 153398665 549644646 588296431 849082678 844073419 941308205 719624692 862534030 503847600 878795782 287991837 714466686 529578369 989206941 970181139 986630637 342001396 638989608 750345880 879383145 583618429 930868709 29148110 875990079 394430321 824826707 676084504 759014226 883466536 930362563 665581102 897026232 657327210 990610289 865303900 894143454 276678809 471282438 936490092 954410089 681398589 951578593 397634298 952736381 101382477 941399119 342826621 659101784 350172369 774561606 528295402 800343929 814464490 859692826 777821968 846007122 49797399 230911237 186354935 528782753 848717531 999285541 561388519 863647489 456280845 975315056 788274851 954177740 848217618 913701415 813564628 919561049 280132385 568066862 384006756 572777752 277145418 924995024 62726022 351944408 823421269 850368004 429433036 949127635 62862817 721187276 142254275 360860635 167894215 353234175 960906504 982593073 856338370 934270656 273101574 382832312 252658512 306397297 589883871 987646600 623763693 950568461 704832252 806169281 703436738 883856858 279319842 837944767 67209133 752621744 635132325 691770223 242677054 412110298 765649523 877855802 510727159 882456846 911749596 944170995 47494020 944182582 80535402 538325660 731582073 807812710 789187754 913434907 157871387 713442431 601653389 813307732 237082862 645145858 501331609 503385019 569296918 880851050 246984965 777549015 294597612 485091127 311180211 624963759 147578202 792896334 488674631 851697867 153658139 695379716 71615455 789166481 337280213 739726273 533819689 554450950 262871083 946002465 506303018 791685092 496863179 975989589 583681495 768459635 491874979 768546343 724220390 857132929 629663769 957160316 800521416 806296707 948350314 978186356 819122538 873982723 141301529 388432638 356680402 678126915 192039186 530398537 914577138 916644435 352753035 866388758 458593886 521092748 836932470 968225041 395723578 813357698 262856664 437403564 991694411 996795866 179690341 381828906 174922417 982433317 487957841 706949699 831282014 873591594 787958357 836412187 177682703 884540743 156771758 396990555 502606745 814641720 221560042 853742393 450255245 790317487 126958211 384920081 487156790 523037750 54200441 335188123 522490181 655488230 800878462 915155840 450729704 819711982 859688758 894889898 570686256 815428124 676143109 698881706 243227029 365417450 172224131 667249280 458175635 924300678 311574565 318730961 963567131 987650346 235540453 612751796 264923347 533970182 348141176 411683833 616224791 808643379 255587482 956740741 424831318 574993284 821174722 918788417 441040513 627517056 779286920 944492677 297018872 386153334 824819448 980280665 298336266 948475706 663451051 937331542 570495528 802207325 188209196 270119396 918925336 967445749 281767847 572592764 614264563 913971147 83286197 872480364 562919743 589738396 398122525 501200297 291973479 293522265 80722637 587825901 182694783 589936943 425745210 489980879 244549760 587721606 847926409 999994380 543640309 963832294 495069274 636183543 807508732 984388767 284482368 979372044 732027361 782307284 130375316 758187474 65250817 801889618 437467256 582383679 371495111 741908998 785637150 958351518 177795375 575775999 141566730 652852474 583903377 713174239 938456967 962788899 748795679 938236659 613136726 640885032 190014158 670619802 617510731 737708519 730977697 870440703 642498620 704807571 419367481 687230506 507968235 670118163 346519302 429447341 187025059 722923429 970481146 992092528 903383927 972738258 901337983 969317765 939519199 963739140 941068143 961638273 248737305 812122699 558573792 662101270 270337382 716451678 39773284 452514281 46249640 709414750 896453872 958002370 44069148 341098539 764217335 829679995 85655086 717461034 608886949 767450973 240655866 478526590 903116623 925853348 648929656 653178255 854859760 944521873 619758960 779423348 46204780 381051390 306176197 807610765 875904088 990763999 699582974 757497199 986999676 995770473 849370439 910107579 148778549 284253681 138836403 696340996 850560280 998309053 190383088 243779905 742648322 918231474 460533805 861783933 956426932 957426026 746503493 750222917 180927925 783874378 725591398 740020301 294248455 752795217 4012081 271939280 455652959 780245102 203038676 232367123 496162614 612136785 140103341 827347894 170898549 758096053 866077249 982134928 722520817 790673052 68376880 869425189 118907663 256842086 120636637 236119910 437099858 548722471 672999139 755793927 286400484 541275641 661318667 761409362 460007580 649158605 103272473 721992736 10660083 607401516 829828639 898976107 860260535 909198747 247129324 908288457 634675643 674573274 848821548 868230454 880899759 945322556 777527524 978627933 945994422 972335101 366719032 765409516 310709533 924607750 343812789 649388110 471451344 474992842 149191913 606903208 362780057 427108213 206460852 234283621 297215606 521681970 643326230 913959462 107828115 418961969 557931632 883969951 459665577 572358934 978399282 992280836 711689614 839266448 47538236 879635209 357232974 979734829 592389571 600729433 206258796 773922399 832483568 841626886 667564961 737156969 993372742 995160208 878293343 892940186 731824755 971498793 994631788 995509817 561488933 653337536 722747776 948587718 360196458 756756755 43911201 827318519 51328599 636630048 510495730 842133236 75308983 174472071 603272238 854764594 172441287 897599800 291460149 544620628 354250493 879719962 626965985 655779029 766984753 964436887 217692426 685989812 212864788 224252717 169085847 389125252 610698462 761865931 621203068 712495155 175038194 804763511 738538104 747929541 653558784 751654847 491480691 936113980 380663677 561343195 667648647 957209448 596128896 960061253 915125908 956205541 549091305 972310422 343753747 452721962 187755360 811901639 392228392 919360342 903442348 934345000 927902181 959272302 625817776 675186900 360360659 381697606 416827090 762289279 292637638 909680384 982635985 995568561 918009177 985034154 2679356 77105472 655206472 798599674 557060576 980268444 475659349 840034000 803788538 957783434 865645554 900210202 531281085 631169306 453825002 940780389 855410145 983312742 428428589 510018954 704204236 911433464 965444808 996105212 678054208 721014210 835176985 859455563 220544128 387353055 603237511 907691964 886877861 997782367 874134733 889325526 755226861 771054691 289575056 496696626 522211627 547254783 905344067 967629977 952246482 968744386 688490764 966495835 581546565 893812731 500602101 629228810 810618639 958611680 931017940 991963329 809043732 870046626 989977743 996332474 80625508 382124261 825316436 926564939 479318551 995853688 846847720 850904614 574358245 716989824 353331752 904374740 319115070 361874052 363626569 528268269 168993786 473279459 513751515 582317290 73314011 745503998 34034560 960478329 999118019 999271700 583420177 913252554 422007693 700277441 806106118 837341202 649218602 994865918 803488828 829037940 18514091 373982144 53577556 910071346 897554738 950696070 251359116 882375248 567976629 671968563 982160668 989776536 210033191 541591916 586869183 701321248 958288420 994747865 46307572 330806688 164414368 914482839 535706505 684305165 989515248 997135849 985289861 988484675 653843025 744518287 277167760 518639236 664391191 977713705 748850314 836094191 521866256 918885905 860706009 973419919 353945923 460371216 550128934 777995596 259577400 579909655 880919112 899662640 20858643 595304396 716794942 751985621 290127585 353000998 712096269 948796603 743576531 879285435 959480398 987506090 206229459 821936596 412018672 727678648 196984719 207403968 173312375 362697676 769496191 821231570 279964966 776012285 535746034 673224399 51057444 429934479 500661458 601509866 840193228 882788095 140324904 366522970 287149021 372914180 187273095 558940475 497413969 854265395 215957516 631565064 613256017 961595454 594507658 864798930 515132097 602309556 331189284 856605678 844823955 928485580 27451001 216132951 484368999 499921105 94310052 225250635 286143569 881970343 210059068 891544054 745092454 845033792 988384232 999584616 372560113 820854303 987504108 999273263 206769247 709440528 122754535 631516201 691867480 841136272 671072482 708102611 140695612 257550237 200243952 309017859 374626874 949364889 675550678 764479407 876753421 993549646 206005220 431803796 92635066 528627403 626325994 883300427 403141622 832381998 873309041 909162999 932964083 934762373 914998438 949610293 467911579 636626243 501143816 606372878 727707659 985709563 78103823 564772892 930053858 981120286 777973946 870278624 771180055 987077498 445695668 746186241 214183433 995204690 833826140 845122890 787579584 902488898 844459944 862913260 593205039 793215924 594010049 804726376 377134123 791203843 874350028 973980342 99782857 626962973 222103108 974635220 195754105 907632586 709137285 792230102 975273040 994720102 63742607 614582678 590702181 711148827 179409286 753991988 994732093 995156074 139138590 922886643 830178 505758906 75351756 218181348 609282260 704168629 428555156 672871884 620845885 912475038 17518467 170602936 901650459 969140389 744022734 777073620 335236446 536633080 251241746 607183556 941946243 990860681 266012784 934362184 3060132 148178170 49839791 535386657 358043481 973596709 464316512 713646894 555143906 611616945 986899750 998223066 386933416 604731185 65076672 341157919 174176538 548571914 666706681 933953239 655101236 709511064 163066747 470186397 732668773 762584992 296707127 339585965 802202734 946648627 578025586 588410985 378948451 419590284 237059043 303779009 470342947 877594931 371310442 895390944 234533065 854552588 947134457 983904228 349198710 841446563 151988834 845118945 35303365 151497119 647570080 679762391 726997853 766379559 971976055 992214645 985484084 995463635 32778069 523522871 73475194 724886667 820234576 997150212 828549506 974329617 784203979 823832015 672082015 792239774 669772350 814263081 487969158 614253200 43427621 211601824 775957604 896844142 596983227 698756791 160448694 902744300 387375038 630002646 166467936 909233136 619215800 621276799 86557979 676293914 896427874 940077262 748146107 959627430 996622217 998856530 963411122 978904800 522791716 618966903 143869751 764092263 805031732 946217039 15031852 771407092 851762836 985419538 820539893 860996584 64812252 463814726 866315541 893768860 577756426 999307598 274855460 882835041 240755354 581832486 423039853 448863684 765552385 981897020 829338347 923206039 589680176 736195336 346841968 974745283 534725478 537758094 485801161 953077906 834074303 912090728 56180243 497013610 120230974 207290656 238173373 313565942 393889523 776597525 386300055 854970275 610463390 769537334 358600634 538607354 501288354 642058828 588429425 785463559 516568091 758789518 939373245 963960957 408876889 901797010 365658059 757972986 257215203 879873665 202132161 813957521 521963019 560096929 705468459 868888140 650249368 921590570 864782659 958425441 141107631 316848915 877216740 881297127 363913896 429090642 747596469 851205442 411744468 892753417 450387754 628045792 669714348 696593386 783086417 894406111 817397068 968672262 491484578 925598637 684368746 741814711 148319456 327901867 427836935 795945163 376648551 623862510 921880588 969459626 413892173 757088896 400621649 646315727 159013027 230474471 803609820 950668839 891128546 975242875 695479437 961521004 649684898 679475642 945370427 975109482 232826814 583834890 703239219 990406849 107511769 860543043 681444241 884263690 663885176 886853814 443026860 954156333 690930422 775801450 934525494 959688520 578801507 957694638 378659180 432458181 150788765 524378777 965010441 980721760 311859534 317970568 107174805 143495385 34164827 943891693 847208679 851604814 736524762 938853075 684704205 947641064 456668789 640254192 726579508 985453435 901207610 949989109 43080190 623220612 876174798 917272120 54785580 185159866 996292209 997943290 508054207 679916052 483985891 598961737 864348604 910154813 534110274 802061733 477678883 689635745 868723781 984093035 500613698 675718837 550347591 741534071 854023882 967595246 191576247 737219756 421387387 630393988 488994099 738018395 275341513 740619633 578406843 646361281 847257794 890722042 59745637 353387471 29411183 189731181 10338194 156996674 50443206 70002472 877863271 886813589 469092251 982878632 370112684 603823750 371658810 992840788 787016746 919371689 489014148 566405079 117599605 472954389 695016970 700697485 638933793 855161030 847199650 968001532 621286562 949406106 666315541 844653872 437968289 486321773 459093065 500845462 422171462 582729089 866200193 898948144 521874375 834249161 382945015 808814489 934196536 942182612 970676343 999005620 462757336 995097470 595379270 728247273 965501701 994863721 114376404 128213207 350159123 645951899 613048755 898119649 867752701 889000347 489302459 514156263 963682572 992483852 27359494 105045976 949308469 978524831 114559198 527353505 414819116 853424158 416375368 639357923 409521270 884189264 695327245 789769437 215037945 599658871 39184300 397711825 985416836 989358316 182805524 998655571 597520977 810406754 256972579 850574071 66643092 661479342 347837872 476312321 65417036 943206199 698744287 774698447 22756512 919049170 365542887 498458805 572891588 999134416 884459477 885575295 91810636 630424350 826719074 874517665 87153861 448958534 212037509 218867334 240770890 605373171 889737179 947095162 688419629 832889096 931387091 978817752 600676713 775110395 693750939 719506640 651133305 781437813 462025086 573353796 216103521 311707283 477987812 547507383 952781888 991484783 776520904 785263790 573763276 798943453 923021310 979172615 988189837 990351713 741564206 908742166 129658768 616307953 705181893 949508021 72411338 568221280 372369174 734437581 681612408 732867180 149702411 593830536 454234639 512050279 148015693 462679771 593025608 733448482 994791056 999635821 139673467 683745692 673619601 895143818 706145263 743702219 317138087 716668845 67305316 119331790 944348930 952497748 109143990 360086155 354488395 383704658 541209555 872820503 6916698 785601066 832065514 870049898 309244964 584824583 763410258 886029324 944892857 952986408 786090682 849831254 248196785 508674954 885178078 914661689 242403173 389047967 766061278 790149981 663521433 717622872 250951476 380636894 803005077 962733740 614498732 993763695 828973508 977885663 582934931 699217276 309488407 959946512 713684677 922117044 477395351 529814830 124687992 393606059 733276641 800371478 686227239 803734678 893570855 920095740 18667915 594057887 615809909 992160740 971887677 982179660 322456529 432945457 802123400 999492713 593168989 936244447 460084885 548495462 898460549 984030026 370655571 407759227 385450889 899140744 887645104 895313235 432090238 454026363 598394672 630273856 572142847 575469334 871834578 923693920 527819955 585259640 909111721 985535830 914431553 930849363 170367001 932959009 393136760 448451179 951873950 961006393 4879707 996876518 647813655 790445663 254459982 763549388 367236196 559028764 476429931 572298403 300492595 596568750 329005179 890534468 40322534 250770769 136662008 802313882 50497657 815584588 830218583 967606245 539309549 576489403 520590668 732011185 721004893 913052166 936943481 958910450 89250997 611095026 698438099 974119578 811172481 823091649 666631946 842530682 776577365 803404068 567070840 653381411 977662892 992693351 747510096 997048412 998333825 999802109 297223342 583010832 137077532 675366509 850198706 926691921 386752826 442293010 819292115 910908016 710901376 925046777 946388019 960593030 712977147 946032381 149164799 695493195 354701362 608849920 116590408 870433461 880101289 903088942 739937355 974251035 941347502 950342714 714246079 917761955 253614252 377121076 420601905 872166728 557663414 767901777 586789258 934266926 486239872 570218966 243348594 465956492 126849601 918178115 585439314 848333045 464855613 753084404 115409949 415871199 707938480 990935745 486050922 827659266 20792593 853614056 950248990 965010056 673562846 788296116 135733248 821745843 175418012 576818352 469135785 558899939 130498486 324394033 141248238 969207339 363149188 503490941 126011699 456271427 420831042 751924975 340880298 823518054 498756853 523221309 547213747 554671291 20155919 754710339 404329447 793891507 106714277 545137504 472152597 526577701 668572805 788206001 678367925 971764709 747257535 880385733 273325107 461137350 443459729 457775053 123023374 405016770 917430966 952300913 187321749 615538156 2653232 864977273 778361718 811057744 796796873 925819448 538024347 708250410 618355298 641608481 395618114 586866104 804198378 896548509 629795209 804029315 257042713 971511146 924409695 990244243 833385035 921558882 800227642 906234939 741499816 982908225 967416701 981530148 666082735 910169278 731599637 840472946 814894150 889469766 314163194 955590776 572891664 661862663 342339099 490107420 276798375 948913875 146762178 184410505 761700867 987005703 34110322 319036377 935591627 956677545 693456226 837181998 772938950 945837060 383060171 400821657 437659075 857338901 779124999 796095259 912191679 983457967 251879442 799019314 638877698 652033583 603906294 690901812 192567847 604134391 968268089 991358836 808842459 930870234 578536873 851092439 728176693 728336786 1359930 346641146 344022279 548445272 404099945 874764132 8732167 394112664 650189548 997799977 782475638 959752943 88660714 416372354 46793547 731072626 633243881 683711764 689406670 937048208 190857293 908459150 496891938 775120079 496083554 898033611 383044379 535392274 495779905 676436674 512083367 586601795 364185305 675155229 795685103 938371644 22928323 207267495 970236163 985572096 375306328 449125580 594964714 959040226 238685101 374062094 381961377 855763407 405536061 899466455 259881147 418588458 925202744 975546876 255950951 892607155 680553384 848886066 999674949 999918275 458670924 521685962 206784721 444280310 398937788 533596423 682876174 782972988 324809992 696708898 275960731 328217296 557401848 734237490 662273695 937656634 715146901 961076712 552789619 948586047 774936683 867467204 298569318 938045399 991372946 995407472 1264644 521108562 349213138 391705923 786316522 787012699 609975497 865948249 641275470 683241480 142986695 576247594 556742711 978586212 17403007 487050503 805792449 976014347 589280815 899232944 447277411 597386344 364162257 596023507 163773709 943683732 453494602 856389920 821029090 892108899 51884408 907969642 173802935 824524400 357970356 954165353 539541452 983489763 714109737 869287608 977956834 981832660 609360124 648993142 727496350 764215997 976543561 991072539 908056729 950013280 115834330 841695370 719699048 936067683 467156577 845638487 42203237 959836720 458193648 668625452 499022763 628645986 889632359 946629473 301578158 840253064 636531069 699889458 456565552 663706590 349852323 934401636 88468385 289480540 243000446 474803220 102032167 704929339 751595831 769887928 790925308 893535002 12969212 893132059 142268358 308752942 934541606 969976636 328141452 930220591 331782637 642302904 806472095 939678724 777400333 938596295 553596870 937368615 981656472 997543032 787489200 842699558 111803971 297931998 519013197 865794470 719058152 771462354 265611673 615395294 112980684 499781026 119886271 578527992 666742899 881765180 453897236 717275188 557504582 681926781 26511780 326878481 761727746 855437142 432999382 641338617 931896748 944470646 903429891 942946373 148676175 594138055 197055581 607140249 151011345 427756637 325477279 351205304 134997484 412483268 8714994 873933416 524764759 879279670 218132838 750345193 896941853 949390434 268248400 531518606 80732239 902099872 824328905 835227894 876191339 933869402 95773020 635912167 958677302 993674825 167140745 603899844 175427745 955650467 103392687 227701618 382243684 579277488 705241816 835990724 845801840 934733105 889019853 981599663 646295725 647623206 521104529 742626084 657123932 872529950 514372544 952555448 987822400 996055072 865351816 940020901 861222333 911252644 55455093 877788330 356674680 999870312 386343978 507534373 335473762 765875385 664348021 796789964 527031762 695886755 606321457 649527798 931229024 999959443 912467168 947847274 216504705 501283465 302051087 816157429 149238481 908339981 455599053 679379786 33701622 290356132 465965575 810965047 481539774 676019383 987047289 999452866 127667912 366995642 203588800 510968517 350717719 804275990 333905182 715178937 864277967 986929699 130213500 669083092 862925978 919845028 683420089 890832245 882885258 943486525 845793717 932468693 327503084 649126548 268134454 440075877 61311305 456037081 837433400 978969821 430241332 745759629 990339111 996726625 65212123 468538063 550443891 593641760 304015038 667442448 197049677 980720731 108233104 887764031 282721661 493020291 136856002 785655835 175346652 551753807 64890779 672341916 853002402 936731060 939958163 970325778 829606442 991357229 940936996 941241680 353660476 563485437 202459105 888561845 500112931 785090214 756831617 907911947 145662116 435974283 221593965 845338074 799833710 989462171 569245169 702609994 895153833 974679376 282818459 697229091 933523421 998758121 428070194 600109286 512035125 927499322 186080339 797705918 799483536 876482909 357554148 791804513 421922100 445782574 747627242 958921787 528249677 536932288 949752248 999019843 559209560 984859157 27295898 564801987 115736876 162238748 346738212 854197460 196613056 425679862 356594752 424272122 847728264 947993297 340187715 392893648 704008430 935152965 559674235 634249712 518756303 764861417 14326036 542047022 925659622 939979071 431551429 767840292 629216357 738281917 555514278 665221939 44009820 814329085 889772683 938533291 592910129 747770719 96985929 359242368 919969342 940657062 629514862 701636891 903864127 946818443 33499359 112957184 878864663 991197724 439773011 851173748 461582378 474034404 557419709 717428570 199367995 250818697 681278795 952990779 247305545 706794437 765751313 934283256 820699871 838417665 277990336 655662237 140722408 938999260 733087770 862574449 286415302 428947540 704979741 951600319 643677287 885241079 10690630 970109202 82952850 409648855 46670522 771982807 32539101 844290188 574829837 592061699 543268819 740561490 14166154 862735160 851047318 920695377 295870242 730808623 849768682 858690173 463877131 796210549 369131797 650441573 14118006 205220451 447187910 741767699 103968230 604168019 675243533 919521331 638701189 841227041 392206895 836122834 476309152 580087186 449120132 869368911 600803775 724300963 919899341 986349924 913088013 939852243 180596226 524197809 942475397 949616630 592268874 844129964 519170531 843334382 353122288 979986736 417900940 988506024 521771313 536550785 177294533 187274828 61672192 893283461 783111241 974679204 255244847 357410347 36234056 432108243 88686423 139997926 445302936 824436954 538466470 701601056 341137106 456247155 770121045 836350827 567841078 772201213 198214837 988845919 232252332 718670866 811710234 943756681 504663649 669944317 602766670 809684900 996407084 999944186 439067699 698503156 135616157 349741527 225212300 340905199 500409465 572778275 924752245 939294640 708654334 851909670 232170870 447503621 417939704 439451727 934750160 971825708 381399428 732670359 407953908 925881308 518743583 627141825 228602666 990347376 478588976 983426092 519412255 763309703 11683099 345625701 683382634 688197823 657683714 978930718 970241877 982881088 528155570 879827754 27552425 145460461 740865870 796433883 276098819 783746996 207406648 739616643 731584818 923739571 378457170 876175433 460452813 542578920 351145412 892220471 474139402 750720274 871189014 891189743 411928787 452290336 736475894 996035627 178340581 520866557 642656490 797581621 229543133 395525372 528934921 544838031 227604156 774652810 93537371 377794696 200731154 902460621 671740345 794164743 636078735 703316342 135655471 807810828 318805848 343444942 189960306 471128738 865280716 905703668 629862226 789362735 658763469 792907948 773127036 998246522 190832782 807675624 944698053 966391915 863356051 888804498 181612187 345448719 566617795 726410411 721753641 936895373 827918225 977783288 493063772 829529310 758834991 922922246 612334528 817304350 556304349 968324536 449860616 779561501 794645202 958017835 650077004 849516109 153268544 977787711 656764875 754818004 879341118 951175137 603607129 818884149 575019104 658934330 674704539 752240852 809292815 906927665 550768445 976592953 846729681 961420312 565648120 611172440 746636841 991998419 67656456 152681430 480952075 955773774 280129044 640054820 933355978 933727446 213846003 262775481 575218016 611446723 423599024 491788793 434815221 778750424 31696994 947736489 489839611 520768739 391673641 586253586 260779907 434763905 312139282 893750702 305953685 845651035 804942295 868485466 363810055 510072804 411924588 667065837 941147923 961705738 444279742 520071644 737357958 795216196 143640918 903062058 10606828 14751601 989921718 996617968 804526346 975125073 549666735 724347279 339892676 474542630 289064200 495395748 670322271 897668851 356112043 535154399 578735727 592640986 681170345 890393868 596850456 725623762 284843003 417048426 478257981 904700437 984179497 985000625 35730212 118831630 755259048 810610608 55505136 323004237 279191537 484088339 980643520 997262295 925562814 998593466 728442452 730207124 173712334 513433857 108105131 521774373 338819540 921347232 853755690 901685337 249068374 771673681 685763710 707505439 173282287 922803690 459253988 835052106 530653475 816244946 423319267 521028051 215367021 631716554 921767509 963004889 991887303 993526960 736986721 784868605 284971131 902319355 636387603 735504446 693427042 731015038 779050878 921268856 891025234 941838323 618146847 859545737 298476875 328109472 872660651 988391776 282394117 504987526 520043299 824676602 562480097 735608441 497577469 880433188 717024989 957943740 886233659 929984180 82394500 909296135 149984262 539708339 650515226 903874631 578669893 661805431 558935762 774498191 938547797 983372059 74722217 388936632 843940528 966137984 610301099 728182657 978086784 984760141 856068974 928144650 244237892 512515137 140265304 368055706 491353832 728710855 196175794 718009651 52512716 450040686 421607766 796627529 403132126 794664480 722153069 861042815 36354918 453873188 963592701 995720075 32428764 947010322 317456351 520670805 560326496 681946824 892521061 956607855 340558489 701022830 53697992 919796517 950434159 955376596 275818147 834740547 263821231 985440337 140967667 930734342 937453776 942385258 378058608 761927553 170482019 254461555 40873848 567187842 481204928 483213093 453833754 886790677 54575603 629906031 294904743 803954998 86738551 198690047 145069063 667629598 689898634 860028196 980268333 981108310 706220150 831009380 377071219 657851546 286541618 441210124 839679087 998335875 605363455 823299772 113783648 557144403 597460596 705545885 461396460 469998833 475264085 805407096 876370934 991596176 985514540 986470306 85647029 424443739 846727783 893053454 798820225 802858801 54322030 156591335 769282622 782469870 331019841 945951139 827420983 939652301 408856051 694953138 967074080 998977276 493223595 534302818 393639451 754846175 357988011 655195469 515458075 915409478 90680025 537947432 475165724 962683865 491614777 718418664 650508038 997183561 861232916 923599006 647067808 996305870 295704761 766140353 559656703 923851714 405077929 836557832 912683854 982217089 417196583 753301285 340803571 516988575 566342001 694139857 149405067 806387671 757636889 938048306 195074981 861808612 350607490 459614879 537081063 779725906 931198268 981659937 510718558 976751244 113787608 288628738 58179333 409031420 979603222 979858804 134541355 525169071 917117495 970971587 630203426 706009688 193137563 746463553 850180790 983717648 65597003 440268065 575737960 819787734 894553714 904673346 971484822 974552233 205943971 523244214 456327440 543090393 671357255 819744089 534917153 672438899 623690120 745693322 705953193 851637324 602956020 955249842 418613176 611134842 90922415 942544605 526292323 672278719 382525752 575590487 207462662 532353843 312286548 451358583 438158678 491143408 786524407 850714721 550067439 887597379 924720908 961531784 174830987 365112087 490072788 759008412 340912705 438725908 46507129 187004626 585135758 813459051 210354316 861079322 989443148 993486491 709091676 755919545 705724208 942322758 226070061 694514211 521790530 665905970 929418407 959660760 315597782 613305417 314500548 538255675 425077731 938726786 481938877 913778657 386419113 623989482 853277842 856187908 929281385 997914037 486926029 825070164 983086193 987774968 577134651 841346084 245429277 379504196 855325087 878285204 401032967 931605100 149975494 150890651 385618802 849284731 164154352 870684817 987069197 994218327 445144180 842774465 647609206 920247245 553744221 736852718 671362822 993934717 497638041 569891397 906567342 928514196 116215433 118722860 326469668 748948360 20174883 73966217 663262921 799050756 224960699 973156673 175856724 340511096 497450638 520573941 8046980 808478080 351540008 597185280 950848042 992024405 454208754 783350691 161007891 335927288 953789634 965743648 554824827 752863282 571079249 769819644 966374027 994060269 548904562 919803291 437462970 690572332 363804313 751951079 816632530 979892074 955319512 957511025 647911659 779470034 775719373 995494004 683954862 862406692 158359792 937793996 595060903 607317564 562782770 941771392 166063564 985461055 321486067 825369254 781461210 938138650 207208794 819319581 408355006 987878284 739470354 785263523 311180848 535937787 486854879 925691091 401205658 952318620 704733354 988340565 910177692 931377404 714619034 908745598 596509855 774718463 411973267 820223140 659898186 959835357 148674475 349643377 758440961 907503151 185312776 409373806 129799266 668669022 420278247 422713420 986252275 995511823 491938282 601923504 267183641 731986508 630557729 712647607 335149613 762381573 333182138 994772247 411869954 594499972 570690944 995343249 872644847 894230635 897310943 940679943 399946552 981573693 954239527 961830269 312896592 376243194 868637854 931841762 526685265 918160248 291220165 692026670 793079063 991759653 990373074 996049422 165343217 721757318 594589250 777339617 834516395 987723908 20642644 53609953 176635430 356206662 163927387 768178362 332287995 414835348 641999039 731041113 878644517 879699539 331544715 444689354 135434955 840768535 331915888 444393540 587178892 893569608 606959998 826125344 87000230 134837602 151912842 651559802 953257676 988301193 107510457 761659943 297425013 837885439 275032353 754991483 957864112 978433503 830459787 899394712 427505396 662220019 601229389 762058062 51270300 489255838 512161622 561613195 979934847 991092580 550906470 724509315 268611991 607973558 405961259 949475026 948294282 974612425 595738760 681531780 365325471 458400097 344131796 750358690 208774060 440365793 131692079 733486370 655920887 702344505 144315386 619018706 935254454 945551600 970781500 972236928 519037794 826016525 628931167 772857717 505229965 640897873 309423772 967242111 709034950 833231181 798343101 911592694 657539315 825216573 742737696 770314636 676358827 913290361 225605713 336126593 149261718 950087197 264028632 918309340 935475647 980641640 191016894 800999400 449381196 733828288 572744099 800459469 638416354 645371463 607587167 661075820 157047793 241728503 754327812 953924451 934158862 983959343 757948584 896420042 519013195 670606460 378767354 397184402 184229864 238274988 549299512 582512237 629685799 843088711 476757082 869094538 343619603 356082201 427243607 529318373 142946406 605921624 501548033 699231468 767051018 932468955 816881408 909793877 928358099 992246420 928746108 970835472 815128941 924335397 942186183 947473820 537278780 897342239 49325376 938239511 65771304 517025832 644341312 657154716 237494251 602446992 620653906 900341007 381226100 894635505 137889264 758485239 561233213 727468584 52511097 399361443 454913709 639641886 650863860 980855896 671145460 778499047 929478003 931397631 102742933 429420487 328500496 987230831 134737022 286770045 679354425 969096410 43123159 915454798 655766771 963687150 212594153 233546523 952316345 986395107 114906262 130186854 108740225 849567722 960978748 963106335 956388167 966996623 989640910 994864503 625519784 736246388 273443802 943322408 100230655 359030380 609854508 940187600 204346148 633897731 78017314 615693322 936558835 990456826 602860969 730971282 104980020 868655059 373494678 646573012 141021465 841393340 163597306 255924562 485076357 538371357 970548751 990489954 398467442 602964140 987403976 990332487 64002254 684440018 246521979 888237169 253698663 408698617 777647104 922777124 949913438 995692119 817824741 893071390 676223713 756812876 307246859 436472679 258172878 420507557 659508203 989483234 862594633 889116092 21312291 153089560 156914766 994669545 244271701 340238641 295871785 765649383 230134078 855340717 424683011 580194162 527131025 538718693 43310107 116624693 299270446 923249823 262827282 766297544 48028869 910469667 284750026 424346110 739830971 984628149 985469706 988770427 222862257 793037752 528261787 792504828 899588469 984816971 672649722 991189055 383025687 573725183 758082246 910975800 637626415 691742507 165174018 690792233 44625835 520965798 546913174 637081343 148219572 395189521 637465487 890018321 304228411 644707754 456520686 464911611 372178876 998268906 254601284 426855866 927030873 978507310 460156680 679380431 546686219 762841298 764944969 794992946 430254292 938847891 391885392 501625655 434687906 842582426 203542285 774969606 122943470 833947417 227158038 423206407 97655488 252576203 611642333 701090861 164641616 431248638 4117288 606591285 357485102 445323338 176790218 690541105 811169082 964812903 381047962 462691151 841690013 998326888 74792744 308986143 8158523 924051716 552468916 745684970 487804501 937427492 152449993 906252660 234267231 917509273 905334949 944941257 844790837 935044518 800017592 863290103 843838253 951260379 372010756 739386135 724186286 860335234 126746370 317375579 200172471 668436743 329118197 837148649 675030460 714677643 173838341 376674287 272737019 430417978 62662511 333435255 935052490 972570962 302037036 650430156 789091537 992944289 690474019 872397375 443250155 862904959 855371917 896818274 890891338 992579365 561369566 970522564 243234463 955197932 271514453 686378885 475634372 659970230 473134894 608923079 494249226 869809851 36346569 171772802 670846871 956994856 523414751 575212533 211664966 211872988 268976734 402800893 516452076 597143110 870023295 987884494 897075798 954504506 936098213 965456169 817569119 894943210 533707353 842784194 741895007 775534725 736892578 797726986 147900179 567331597 350273718 599301789 275526266 761609653 396599582 947130655 880174016 941166831 657686528 747376254 279697912 943504291 120084984 356212397 544871910 876388662 829908262 886300943 988499938 997402351 270515669 971114315 847932621 986331645 743097017 758580230 720495014 804585166 599189518 703433872 108325141 718845993 277558418 659716224 994848659 998344389 618439045 672200633 717422242 767624587 808871446 944658683 595458171 700320703 521044196 849930940 641472903 679381566 599361811 932105156 677437687 906954403 941742385 983605907 19518808 882119846 750123357 900731227 319358485 701399003 833201122 866014080 102027048 210315789 375508183 400943714 128059650 399904592 454457793 751509591 914269241 942162682 48917772 549014334 577713575 746686826 390367469 742117382 817020918 997752736 738491575 798931301 623097565 662878672 114226371 338805964 523246060 673105348 326655500 992581144 51040185 167836816 341166453 627469805 728861761 772488739 810193901 917269406 462606608 496594100 435801403 452163724 460794969 718376110 782966079 898738354 893833354 961917364 424965555 933177825 279796084 846806855 651936775 723633718 616719891 757775761 963835014 989685168 39063526 605841922 422330043 636505686 375263146 653550586 805151381 806903856 321941111 968264628 418965592 518075359 593089560 726783344 292983551 984552341 350349979 779218293 953272060 997678636 53306163 930668085 282046884 373250158 83931350 746913413 499059144 740162146 70836327 667880027 51822724 70941413 998816905 998905439 101721402 902601944 825845230 883660523 574255167 668895216 584742358 802168575 115553801 329004495 611957486 956099171 22153259 76926542 133830185 527467702 550477120 626937008 136037813 752334819 96065564 483537858 48620345 108338812 22478652 807358173 818605900 835417889 867325691 906585025 44340370 954230344 190589990 346192502 829348018 995074947 125786948 956672651 741432575 882538403 385880970 843195264 313096239 894712831 411729234 579124206 477271768 558251609 891616850 909288498 424923441 802870044 823359149 922836959 109070906 277566063 408440654 507450624 888265306 965215356 871555303 934584893 911186641 977817713 569361260 589378183 177705696 503964073 832345485 883470844 559889789 644519432 719183637 909349757 231521180 469939619 151209884 412281969 122655101 210520729 651045230 944609563 211027171 471522614 753427971 833248644 950156860 999939201 796830850 822875746 411531775 776877353 455624430 506731113 723802849 799919324 530610340 736599815 494407860 627949594 530484445 658315133 482451097 609232566 21005910 657853315 806437780 935046337 739865933 833625066 841881776 985768793 42313986 134874832 145496477 842214348 551014507 988442651 164456190 720451547 364334534 624482522 33364348 800810439 442247349 479914887 175724464 567355736 290660924 435938891 501049083 849541630 242832585 604197140 647681802 758099417 23058815 925984967 47878635 65814567 495619069 661510991 460435926 763481050 487126876 737631130 810237738 932026190 19852633 754375953 899153746 938701360 263900203 956579730 7205516 750982378 732060818 777659427 985975739 995786461 322475373 771843516 113679714 273990697 404859614 622449881 217978157 732960370 286339861 839695789 409231934 711557277 912318381 915635108 739780152 982611266 56297934 948759209 546339870 868060344 523794585 667402548 671463 193568468 224604880 903082312 135612324 765907339 621216000 711202130 53237532 347240579 651380246 850584147 329318800 766705023 997297806 997960173 964989133 995452927 347190759 987472979 512359727 548783404 43351534 786572769 437776733 475377253 252385838 929224345 60723758 905794189 367567203 992214738 713692976 839800486 496322738 772957414 895266795 925747202 129140680 589721588 254616512 558072699 97275956 392428355 851491140 931625162 393488290 836322248 808683615 993308070 49197689 358614806 358748436 558022333 636318641 638206299 189100097 457595823 489728080 576727036 705748174 872352666 709528851 712041872 778879243 924103797 889044196 957697247 431507439 538979780 73664536 961217617 872905956 986451997 619387868 876288607 786495383 942660685 669943426 957312601 887558427 996077935 149876670 785821595 918283998 964211948 418928475 436228920 829376130 831678470 665890570 770487484 324880589 477338851 861325215 966882587 137376877 739414552 630715795 708198353 908277906 915269562 109384613 828874491 333162145 805902922 920067328 923171355 67975447 851971944 106562824 195351824 969163474 981975581 902948782 998424839 836812863 881565394 598848952 859790292 50328827 325329636 478814522 604386302 614054451 665141943 965870688 982480946 919442247 958814625 21189457 245720090 543520830 746124917 41334257 239932860 573050507 665024675 159286023 842423804 891222905 973952567 304044714 454993521 320392184 670215164 795841567 942007213 793830008 955055134 670548170 891864420 98161929 637007402 783157995 986430850 921692952 935952844 580746928 783953010 315554010 524887270 259370085 608659755 843894056 973428311 858221869 859739040 90618456 333628778 132941817 557597639 279696981 995061464 140923525 789279864 609115403 723740462 25715369 673894063 524702089 975385573 182404388 518511205 260412439 778111655 104130282 633457607 40171961 692545895 175258100 536601334 618680291 686948593 794812418 802113473 387468183 506298986 128058601 388711350 237982602 688225586 561061470 890053652 586864734 729409676 349545312 993207624 915966545 959514505 442290673 492214182 845005773 893797269 719592397 948183513 493296056 541121982 206222400 921952959 888499477 945521368 892219748 928142460 242915172 995867265 447476376 968398226 858216684 941069978 951347270 983149491 856754377 962876893 899919685 911452995 53739137 826768145 24113192 700076629 538430469 683824742 69225558 706280280 407432501 895294763 284701278 338736845 771399532 999062782 841981475 851712259 315903684 926133752 148961527 281573817 184131063 615868946 435994266 722783344 358897051 558808740 828932092 909676890 543960922 944529065 610834580 980988762 368139286 690297790 438840761 445642635 967819016 991558569 598279585 939209176 256319157 941237580 339764279 861934913 302749242 557708572 89743435 669149365 417275693 548915360 766030748 781842062 593471251 869194405 874005352 989453263 820970828 970541667 443830476 732551954 423937765 932310678 442468792 452422496 936764404 960496844 809673242 858010144 901966483 992510757 69827993 385905790 251634878 928769869 565584715 994234149 282460338 612763106 15388462 405169538 934853587 987810637 860271041 928070618 722988366 879067328 132858425 153468020 291615426 883280967 961574862 999346106 810206230 947897200 605785584 700559018 594163382 915695784 274568059 776019163 5787979 20381847 265561780 555387140 590038181 840649576 486767589 735389647 287081179 434853172 317879400 935294730 627598874 916596163 489599758 626931947 885235655 951285321 158533832 923750316 921777169 951389922 465486461 585265371 140759639 459785190 15049318 109146055 941015725 993020673 230559811 690568444 366104043 525159826 239969994 840545791 912984938 982143537 601916010 850040123 142538933 675212315 54446526 475211958 26637864 626517198 381620408 489819617 734726437 836400390 148902146 886492501 81193583 829443892 722171890 771153923 999428468 999995364 351609991 584913457 436463786 773196699 281453653 994284808 616175097 796350804 367853139 373289841 567591978 991287326 472900430 927140936 483072301 594266497 969521959 970459819 59406983 435556418 640911370 804287459 650280459 785654009 336121641 812725213 741522673 960195402 79582323 137416281 247146661 605616565 871292468 998148831 748311345 820094242 208973122 653764517 213954826 584912452 790617386 793545630 102356418 397677666 83173682 210642238 209079983 288107723 920319978 939428331 207116645 818915043 108507925 384959128 612337177 779457178 474440072 848161601 271865672 646257332 112634089 631948574 901748439 947248149 533056341 545884141 188800681 821740167 469440802 971119688 42391251 188395591 540729493 990785618 645053280 985104675 79190823 361318337 575437565 699430815 356973340 793538421 26990505 508330015 130063715 439827360 608408525 692276991 480052706 800104415 184079310 474777610 503702734 789516088 989223040 999659749 436876656 868671556 874020181 965697882 178486013 420605059 711827191 862973247 903173696 904598235 607948062 857795050 976840212 990113716 92023839 853688943 312663125 684096673 575740797 747177604 603094980 848408731 118607059 444343015 615627741 648496031 197658525 277097270 508059376 854648367 345841831 492078219 727321730 994059480 411822587 534807077 419658128 738525195 300993364 350863742 362336883 692565898 735604345 921217067 939089811 976820012 429509756 712058201 123800392 233372487 401172986 963275623 682288194 815867073 819050714 948312070 786247553 949422277 165968160 832333053 19890537 335626005 154390832 910631718 228888172 969780937 688660031 721783453 398420153 446435377 997075278 997790741 107170195 274021011 341379053 869359550 666092030 935062311 903898921 929004091 631563587 705994826 825568943 845767118 52186012 391005376 836021101 906163444 366334634 600810967 734808704 821621853 731953424 909761978 586417166 672699592 711957037 878057679 673120917 724637699 6463832 509168886 311298925 782488146 925653753 992150091 570669266 925136936 361376953 623797379 533158837 813872752 311967636 517267044 87199428 434130313 732409682 920109197 678746647 845722014 156589162 264238755 197077918 991698135 614163225 676032875 977886227 987872027 991839483 996483956 118232410 659060491 107232186 324820655 527549515 938362573 495954580 807929514 503044571 934680710 879276532 988540975 676785989 823921879 299195982 466289980 363942585 513704108 4183088 234251397 336480724 450086931 290212771 831267003 100891203 193971314 88561833 127360453 414236186 834106075 508259047 724988047 92771971 824415244 833227308 952285690 622828056 771265701 437031929 717317561 365040133 641764645 665156463 727774861 457600901 682837598 558323210 578682269 672583025 955876263 645935162 878139716 129961180 422925426 432625159 654051130 434149343 771590403 486375361 977022024 733522515 764762632 135830467 757042451 818365631 977618868 175177459 394808947 529079434 612122385 478801192 879949185 474825981 933635499 529054379 901430185 967887884 985009224 106330071 283336762 498694422 942816274 745066432 761642496 723983257 963305516 831501594 975722072 730583617 860166286 221684103 430038444 865409190 869470872 455028708 660391065 293470584 974654195 359303250 509124611 869445195 949762397 522691649 970300803 845006539 950792155 616395654 672719434 456478538 880886841 346991454 936166815 232353598 836017762 256183226 380987965 987305370 997465679 983670544 989878721 795943805 984775682 413434267 507352730 86429181 162571193 69151966 429962099 711042890 985824312 495018852 709352631 180537404 871089509 97079063 565551297 589473269 832599208 591769289 939576162 126661355 401326152 237980089 559180180 789226826 937588956 596821035 910105122 463810019 553788896 922915298 967085089 16491850 437791542 486661100 622360519 791622446 951251132 682676906 803875614 816523090 936320594 759388976 980406092 813832977 971711734 696452222 899106690 759421752 956571678 904828754 975138891 309489168 883893155 418042728 528802810 715147315 768084786 943436015 976575579 427277127 726135555 924700507 974889245 642695429 651550076 341996084 515788782 669908813 886339021 534579230 708019527 219390564 588649375 191133733 504955187 938135480 961008816 772589892 812315584 187935732 992125202 822876412 885832175 748117678 783473957 393538397 884856931 631103978 652001713 130582035 672198781 933696601 962922213 902828502 979559172 505319331 937785941 16244154 881048426 733459982 947001267 717073538 992094392 87589183 567076946 723696998 970096220 743720607 930249305 769329570 942090828 134863881 464707133 534132112 701686902 371300044 740531770 300886449 855921865 417474379 837341047 291096388 646047644 23276249 312739198 897767302 950989495 120831452 155787314 17318023 992308282 992154357 995362356 680325015 944251940 946572121 981466204 222134094 891156996 370486241 898090362 414088186 486332366 412255846 539867907 603042719 846397880 938766835 999320823 39737597 389122865 387438930 791199343 891679242 978118954 83717118 639833048 558759222 844753894 880535396 956276965 687078976 723947786 676097494 767832041 262355518 494926334 553732736 955362888 241615162 682972919 238616454 839949477 421475675 442535434 749977407 951974765 854168773 949921086 671311323 950972633 939035904 946764925 615136231 732853033 16672771 346129847 596778607 794110230 33913972 233247940 459482796 661523516 79061054 498629709 512723345 818564101 27272578 688334317 93097174 974990650 637695616 802024380 834709764 980322184 673961430 936293675 46223637 834463661 572929834 924451839 204011134 387118070 832002367 906325141 68451986 275778822 815753226 873178145 876592934 914300952 313255097 335282839 19280941 160394659 994017254 998585035 426051331 730462541 349682391 528561916 33271759 505650394 12974174 200629407 97688980 459217195 68536509 954647394 458216258 912572133 134496225 804784365 975825378 986978113 965832161 991977257 771796351 978826413 878432576 990713295 504374654 836025372 182358654 271317414 195749245 232857384 17177045 757592534 40146580 465133420 113605593 710665494 652172870 905861115 229081115 645979600 527440838 813180569 109599552 816323425 709573589 737902121 745852421 798103081 516371955 863835666 192146015 981253109 165017678 476950709 261931055 352351208 833830170 853609618 371221354 410054782 374255088 461417599 356699535 713868251 443465677 520492425 945639075 989285859 169527245 905120898 725678462 915414706 600707610 686516510 483752731 697968581 535439197 683733426 790516416 837721880 562061392 579130929 922082938 924778031 750915199 845272986 553675008 922937680 9541620 153259716 42646841 193281697 596087724 790774062 802668164 933988220 554463942 949448171 109467356 857009950 410544795 550627847 165013539 934031009 965206287 995207663 4251674 699104858 62609725 343659325 706495732 976664505 678983180 876489702 561642171 847751162 152192560 596124284 846318886 898058231 917814768 991239534 193695735 643320767 185191863 571241697 155973551 506740282 788011496 846777004 339958595 709904684 323063011 759453022 915780473 920855437 485331895 987817050 180868357 736240904 200119605 932400509 550846532 620332274 235699291 488554297 295160304 340082138 888145804 990275549 952272213 963174608 327858719 894337754 105733468 478100068 791241647 880645956 503195520 661037876 968216593 984889840 195936668 813608055 35327125 187453730 753662845 955427109 977701667 998224579 800796296 978266225 962282692 997963915 888058968 892074189 952055172 973482841 808553971 965397662 249655997 608370751 826165707 907212085 748439667 966316435 317930451 952260445 504856031 729800040 333965651 529063456 551019274 703341786 318409160 911141734 176337551 422833627 77731086 840632603 807736363 825235633 877732785 948980149 198027748 782123983 36914175 120457173 22599748 169374659 92092181 953613799 301419670 686447054 784031528 794495636 765301377 818804736 77735050 601133797 130880738 163460080 71970585 958002953 387777524 475173831 285752561 473539304 219879540 960617436 813391579 976351179 45653344 522656876 557057497 821174111 342257346 994873680 385989860 621609475 645783206 789349072 450224963 881800757 479196077 792852872 471242550 823922050 403243557 601441646 740451594 885156984 996994540 999939364 939560216 943139789 888618764 965424224 434772640 990296744 753886949 952878382 175157604 413446623 323062394 584327181 849196631 968306957 314773608 899308873 870935239 918167404 995865986 997565207 23977445 789881190 419198347 473528210 506292 121372447 936328867 960211298 338109655 877172972 545220938 911331940 145415662 201689039 30596842 974655892 448924820 680262398 175388163 686675530 131205129 755678716 593323087 976461438 946625268 992362596 164378172 680235037 157787522 690236069 331555974 977422549 416160005 801548333 596941132 628000125 863255487 981804203 660927080 994259487 24042577 835432358 605989165 718125652 377342125 646914809 180270453 302566233 2301733 654942747 510520852 828394741 174953566 918594926 502866845 544872531 111599960 482876589 398963529 457277137 478958103 998129149 857789973 950479468 12978326 432377771 473857344 762099499 816657619 920976591 234812135 970636539 889947859 945476394 731659327 817341166 699132972 799426220 401186462 496280816 438746730 516928422 152754277 702651172 699005007 849328850 154375893 361148446 867013820 902397361 277280930 366954415 427142013 707607673 556616266 739883383 967146276 993319822 663649297 926571521 5895860 923074199 889749393 902485799 176350854 913666342 179986919 515997812 88407794 872784430 441623991 472856422 120556915 554192337 58774939 670802308 187052731 496764535 594465226 727191892 981105089 982883958 115121291 230624731 324781944 837070333 995464022 998696516 579187891 591007828 179613356 811995401 902224567 906669689 223002040 464227015 493974715 968682146 577840487 591476224 690422569 895683787 462622574 506345579 803372462 879514746 410781232 456713925 163992347 192972145 347290901 950660746 226278944 648091603 121623448 723591337 278911336 909998246 91105755 419969515 238351297 686299114 576674178 727480772 843539012 995497655 910825599 999055543 956255705 994602662 842070705 875124081 689492574 704135529 358730575 884455187 100358524 594371910 416106467 501875118 637753660 736889012 617415442 650764524 828867314 884430114 870882444 984221057 900253825 962201637 479485148 680044810 359780920 395414159 221319320 390871177 635544614 896143264 744992938 867874246 959662025 986634778 683759503 720623347 279930691 698154777 714322508 752231785 658217853 944089428 150083082 484321858 912060687 928342787 761082119 908323305 757571851 973850835 861166953 997818118 850312346 934767494 260847087 265816676 612401130 736978396 549468635 822819865 702701249 737260469 409058959 956106696 739626154 925062125 687132993 997289031 682799446 855965705 360289431 534888584 637659925 963613210 581669947 953066901 151009516 440049522 636664949 957626067 709619388 939815020 284376158 584300804 116293200 447014723 328750281 413314054 640827939 686958620 190360214 829233340 955173620 994861948 456754162 744341413 274376350 886214324 607724427 958021589 891870065 937751912 295937099 586965410 758979200 801385786 482428756 834115363 968644014 985524308 764553625 912770974 987664359 988930961 746987038 817012973 865861715 975384712 765522150 816674630 280144208 315933198 276343472 975802401 759909207 818129108 665574909 943740023 734071352 945820599 457201072 726940832 567850146 785075275 163393246 568636526 796244265 864804258 442551001 621565597 114801134 139916822 79763182 775384458 836870122 933211192 469021151 579784494 924592044 957440021 146387136 710922178 868111874 892324787 57155895 353708991 746327563 764853207 542373898 854591816 340604650 959483121 737404953 797807153 742982241 984785643 580582052 971944780 420653858 637657796 52975199 337592355 135131482 216881525 102907056 343324225 659791679 998433910 130571215 987829628 988958843 996681880 810747514 860662306 21100781 360444553 886731076 925737046 888332099 985374495 899196961 969647356 716879518 929270490 826277034 914196553 964331590 990764288 505501841 517912495 824257716 831983020 474069926 793986532 793113461 963516799 884755180 901292850 349432208 615235696 514290511 589994235 94667940 613242114 291249313 878383158 349759434 952014543 34378282 950251395 569120505 941915215 330201257 420244178 564333206 872838865 852188844 996512965 738420527 848807508 105433617 850654191 938392689 939968359 633885494 779925526 417768172 473628944 932674927 935554282 636216513 997107141 783460998 867479464 146626204 463926792 612307114 862919318 692699753 981299856 937417939 937427169 754018525 975333824 938103677 964648281 589983084 950855684 494207333 867714755 147532207 894252719 795948303 908337471 991233599 995507140 896282377 977619738 428985878 966243466 192812235 550427828 641362604 876398626 344997789 552142224 132368070 836402799 357808274 774409606 410639922 817819386 842413899 924796448 585601834 592874504 206875084 718076149 264358528 731587512 872991536 911165332 866355902 997075340 444355285 622220036 61594327 332749804 805642184 934516121 432805842 902044645 911059524 944024907 213388942 663114536 551359545 598482751 796705839 975007860 611036967 667557827 112789426 743274253 59828693 794173855 202716409 861033318 20596798 669949020 110500137 724005059 280380502 296155250 90707051 814400624 809749135 838915671 113924770 752230398 325916603 423476292 810399238 940326448 456182108 880187792 273231700 853004358 774618408 989495247 686210202 960618241 238596909 964815942 49626454 658250072 257501202 339349671 157115968 900807868 852650637 858917316 381066875 695492764 849826828 893248641 168391467 373961412 574391290 579364306 469625931 821978540 478864809 913674434 187772478 275576351 292033590 361808817 339584135 376671993 428531136 923740691 106043504 711104575 397122833 704546572 686013647 730956640 916650046 964254723 681936184 764229991 384722219 469876362 673779167 825903745 237060714 275651450 25162656 873011191 580588620 877295234 966125102 991937855 538816421 764267765 922597278 968479087 147680655 502751692 376328816 616789151 785996534 792866035 109824539 816822033 256978592 365395524 99578430 212124881 509831861 538154303 723898375 781220218 233268937 805472644 736904439 957974874 721651688 788724863 490182583 615732071 902213386 996005599 477279061 538684802 982630271 988096068 400989032 571676205 309463782 472455436 510052448 670034524 439563162 588417563 375878203 954976155 915603902 939070225 584242691 905320825 698624918 748368078 898436920 992217640 341831189 553262356 526833430 904446099 712394802 944088170 599533717 882492391 460739034 710634625 376389324 609768630 948472599 987661546 913357790 956396441 612317506 723940577 714133569 990470850 613888436 627174071 649982253 936475105 168079730 950546919 503595942 548514650 538190183 577829615 893264417 898031059 214902402 323065152 160196361 600942381 107563254 895473126 998065022 998651725 13318281 498848875 919449747 956162181 828837000 989673231 62184435 497792763 408501401 449352134 102338323 658608738 599638341 606184792 41858158 502122127 577961970 949199758 29691643 966987123 519596354 947722278 12660648 680937642 766298062 898625077 316577584 946587594 714303001 796402758 717768600 860563863 220764003 717359450 166562063 525007232 690981354 701577049 96646615 916158000 87012429 647349359 437891134 764017163 160553530 884711886 627536036 686781333 144146227 460917503 383391205 835605903 270615848 495369380 764929782 993089885 80595857 188322172 18268842 488897104 60767647 959652373 584138594 696499938 295855377 719432443 859820023 991674350 5833669 299021501 881665236 921944006 525885098 685912279 953518779 975192853 9570218 330012569 896635279 985395422 987561356 999522467 90320547 137863305 878294173 937615146 476046488 952495280 871459572 991903676 253867567 759823969 393470309 925914058 426994912 534403791 239894654 777184561 64400230 493735440 450751130 691785380 261197642 553659210 332592908 927788147 439691971 835994585 87728191 282833414 372157489 944783347 291390432 551444507 415457035 549063900 285026197 545567241 715061353 822258716 606114467 962924565 544639391 920832787 805532680 864520202 465535619 830698510 579641363 872265189 6188782 75255361 409944594 443258289 260756106 709087891 990545120 992421103 588858407 923572460 398151611 853892016 721924316 730920470 323465919 412643079 53339585 401638369 260421628 741750727 818571448 906154168 710367722 972501604 565882714 602507430 502659516 622558842 850075617 958514236 128526426 783105718 598830937 715251071 11448728 614382230 322132794 479604362 830147225 848054953 194752244 922470490 66340243 770978665 921815962 995616030 524336640 738339427 834843370 885561664 146966055 437485847 223970861 576133432 20090410 365420646 650265164 957023522 656445657 709392975 889429730 909026225 932993620 989666886 550792424 814317962 316438180 476555417 702552232 818589422 706480842 943986764 797565476 872763269 214385479 712643285 244236682 832194536 916255227 991825149 274779701 513453017 958608192 999257926 482082790 493452173 345983956 897580700 79314844 953426801 658528569 770776057 517409805 786410393 297521785 597386652 909620817 991567088 603248014 782232766 614769003 711740954 98094907 701161500 743903165 935914641 234670109 827696241 69899561 351025613 98261372 627625224 633184625 892765873 420083949 988663027 788512292 919269580 920233296 935987019 878368163 880349169 3253466 444090838 909439435 940874377 694939648 905248636 328735567 407787148 879144423 943108640 193202723 449510610 493951267 598558414 333924588 650277664 462383445 854146154 399774194 775726547 2262668 184834570 992748253 997320967 833240490 958189135 336809899 975170233 771649376 789237410 841772881 893997257 583711172 908444619 334181066 927478441 107657367 275037837 144112606 563583339 480943245 890792422 570781297 916540759 600350940 751511456 492099647 767607139 116013807 485132302 127427703 982827833 467061041 984413233 231915088 887678352 664093806 924465710 987961335 997439606 290464674 896554392 915408814 975580045 536758072 958700535 240188747 563054251 489596578 906601139 425898194 673301794 375159339 985830338 207605995 468439454 194905760 510391194 309270564 826115814 608160872 916641149 363538474 881281003 54217826 761872612 467806731 593383846 982346938 995187710 281692302 997257669 227641005 365212176 146492256 862720304 450862437 858533829 502404289 582426223 689588010 861925842 921535704 996817250 672709616 728486850 768094813 902685104 366744915 498747275 480810580 892336384 905371104 999612394 627459875 962346498 619906529 913187946 72037083 563235863 488144562 806948878 602416864 961329223 240123236 558078422 635967952 971191125 460963661 536303810 80821596 946740725 928532751 934568926 508677030 618886628 155646857 931956182 773908797 958470881 440481203 529628341 391909700 475771590 665810603 827745381 685347936 891869579 711989297 809145924 325770877 681005719 212179648 346496334 819748303 824581846 210874974 889395602 801319704 874253344 754092501 920943806 404415959 661118758 595455869 997628980 521172326 818588417 267553857 936853991 576863660 843412841 99848288 172514167 79766986 616210281 262132212 318877218 655345095 984017602 484044701 535315893 774615837 787427461 273047417 961767270 390287591 743586472 789672095 947295652 764249754 779822371 753179815 946955927 922190770 982919665 529225951 571256227 406861400 973353146 262800752 910244868 226232567 940012357 159655635 927137119 321648520 981609296 876875473 957824889 2393827 972679666 845103915 921351356 550724898 790751574 325625952 333196960 364780680 563286825 811612681 932344523 417274737 477683923 2879429 570507137 475224526 965672763 854215682 989805781 871266160 929707475 290753153 535447520 403382062 640464023 296436694 307997036 476143266 723961140 486449527 654020627 856982245 955116551 777157404 969167918 462314515 567328575 619095384 628728089 14963196 735623162 478477840 644984782 720006907 749625768 23355808 802039575 959978173 975929235 71849832 834598689 123328471 543947934 255544133 740612190 481892273 857526433 743666375 963563159 833016267 969899312 443697274 480691564 745444633 949961918 581454876 655782887 807336713 912616723 82207177 282275294 475093981 938736809 687048673 892209338 251634417 271202597 373795895 973234671 229167663 565225348 209818916 456276247 678660931 810403992 614859535 883102721 373761579 467441104 139611554 993414744 388822843 400298467 418358137 516301450 396737716 998001057 191835093 210220687 780896202 857167644 227380931 422729691 694816883 972416620 75461920 519417321 546941226 584186423 186159068 850227497 480338860 696620175 45768370 426968915 524086494 538610654 744146186 986954890 332097056 423221794 502896102 684607504 941467199 947227813 59529954 118762748 854726566 938060653 496262302 532697513 91113577 969317152 221002552 580778593 774239385 804608137 971711282 982121012 304529149 828726557 98746015 726400255 549972094 697729748 832050879 950308932 50917233 237844931 713366944 831991723 493100228 808968159 826346935 919968488 435759920 484718880 693584392 736815940 256553926 671651675 904950860 993164001 475657545 807210674 41787482 613353408 737179816 895838421 381687578 662503901 682256946 990322330 82352816 387856132 298983144 960592039 800832230 973166832 777163062 958562608 700893266 847259228 471650898 664212319 743177671 872047006 824098932 923600527 598608000 732559085 76466313 549118418 106495158 348876770 794988183 921346856 690377345 810909787 65933138 873853842 191967 308995974 327615269 686556295 553515644 638650047 384551006 812755556 295906260 461615666 494698000 834481310 136749454 736463607 777465375 979774833 146076051 909966956 288733576 925305610 819385258 830574874 828336232 905572872 822194382 966376257 916996997 921875600 602807373 971090999 136433872 320394556 986242651 989164541 380521379 566581976 156547111 245549721 908739041 975744177 99175662 629139912 905619493 923917182 413288513 889790821 596079257 996103844 849327650 892591636 713588384 754707365 687941717 866297367 801883322 808684997 832343592 863418547 713606367 740159577 791501644 903397124 515786408 593793721 70918837 124344108 433442832 987447558 237619059 286351792 840794094 923871915 23772072 37226104 726630139 775767137 301500207 998647815 82338899 96976074 383556128 757633896 828824140 888490785 543167394 929535789 361177753 519714242 60628932 627845071 324302297 361256754 585916341 852374917 514855110 656461536 108022394 350935914 593885546 878000701 910990941 952282979 22972809 599521655 113195988 924787974 160604147 487337476 891388588 967895181 155959998 894603047 914713255 923989625 774136220 861223283 164714256 332799919 193691064 847970856 870704077 885117570 554224812 597297608 97252687 237025209 356277700 418437072 559101046 912735646 934737744 972475185 177680903 827451998 432911527 821403600 775257243 893302269 757738769 835711972 776075441 957199516 671249225 740846351 57859630 918515514 365532909 653726439 999480235 999738044 21369058 154593495 372839475 412937987 369510527 721271757 458363333 853895486 101258152 772358041 349891528 547730852 834739292 979732214 239800812 617103032 455585711 701788501 533811671 708789988 288569835 863155055 933393581 964774770 578593754 706911250 473929991 599621234 410347925 609537332 900198613 956000351 627576974 726390770 976395352 985569290 845886472 977959254 365948429 882426525 592564138 718556844 87097534 546440442 71710364 942984596 668364358 909415237 906240006 995040072 684758045 945750903 816233486 830033399 54745398 831652304 725702623 967606603 886645110 920690212 444973264 507675080 218410226 996501324 204501212 226455244 669407229 932891296 571069545 736630823 452354376 847147344 424787534 889898243 648785482 782845074 342250075 532165148 179600420 947170737 596926264 985358166 384317968 790615969 861578741 875222580 63074668 389126928 557371508 855894087 154167304 333697254 734571828 994880070 69011336 215332191 688737953 958650076 59585034 810781868 296000368 956867258 601410447 700587788 73446729 601543653 667903118 834819041 701662032 744405029 302705255 643286532 645293547 799384410 75091837 941295860 870192154 963210539 225505061 509555617 813887664 924056430 260793802 419980941 365073917 667684437 974778883 976219128 982645103 997502693 148883612 808049226 190006699 442275846 210055416 477307435 411617293 657396432 352529057 929460393 125072719 777101944 719711185 735571454 967324543 972914963 5893392 304409790 202874127 568053871 71375056 770615130 20913977 744421635 502614165 953373492 243598683 310720031 901076648 975952008 675410694 814677744 879136679 972271918 960712209 980507249 388205559 491346628 111886940 449164428 339180696 379165456 67914251 494202478 912286961 926013467 428319801 978211086 71102052 182851242 258607358 343359142 984149036 989383448 188222554 237992874 384265418 507461123 361842045 945577980 724078469 746498673 920534059 936112100 631232330 964880915 105562852 618362324 186241805 558227051 431898656 990226842 477442724 510806203 107597189 266948969 310356709 325027724 157435436 187130237 195493491 577865547 87892467 179530746 532419623 665273877 368265569 567418396 637115914 673174705 786288776 987129132 118800369 709104648 358523724 790593730 586336554 849836945 169300124 647894473 386964294 573840476 464388794 823999783 916020326 977394747 251005580 754312192 73579444 643133616 727409681 954647458 879614636 991975107 747170966 911605692 663930762 867513129 518443960 767084988 806548496 902683171 832832526 836513196 109359525 301245646 351475925 606522164 456460249 932929673 803656615 910392776 179409480 478876035 745042105 759134084 813845953 896928489 209576059 813237727 881418044 885491524 275213520 382649423 16846715 923773171 781381634 799223219 572742963 622152984 707754922 777438692 788124418 981127200 150504474 318511829 654612951 767760793 854397759 924558182 176857353 939897665 503022396 680362758 955208188 984267513 937848846 940861290 830127661 862698708 444162085 483639957 883073301 907172226 595671617 657908961 602373643 830144964 497271591 622790194 358194036 986895850 518341034 688431679 937857720 977479016 249180224 728292007 271103814 283113287 547503928 620402694 79339392 443652440 637987740 691913313 817648076 926347145 947788946 998003327 188687989 895005522 296446337 602055122 425706385 791729641 675665506 835275135 485484860 993481777 609300463 954880223 885398255 916191202 766684512 810265774 67575288 649504332 457276906 984714556 865994824 913958067 205870986 967455476 422803514 710532975 735011435 942465008 333536721 938167594 457081184 780806071 634534087 925840375 145886396 339607145 724813062 750894123 221387976 767324303 223744136 229865172 922394962 964958426 110182133 678704672 308795293 459946752 73489448 602210390 790984930 997150070 3572156 203635339 690030595 978022203 309402822 413665751 493112975 945086295 957408992 973797385 914150828 974605570 519084347 784747417 762719422 953670770 87070099 465134262 568923285 619204215 118947122 219211620 447044641 463887851 108085465 675626933 889696622 998298199 90301746 523079614 892453957 985572068 497300223 808705071 421666158 995276831 576379793 937623323 170158759 273740038 214881711 752331908 730303244 771569371 106292483 627523763 198704891 262304330 540053110 758558554 12036525 352335008 32485077 375076709 420389353 771539754 428131010 657948989 782046649 789974847 673947591 699497740 428545681 700815691 670281036 746708254 302339951 969198054 322924896 529282757 314468620 946019894 842714827 906660926 214991534 286538596 194543514 413058575 77837226 622226252 868935488 925141033 565806975 851746057 64591490 912032440 616045594 619398583 933079445 961187969 593626153 595560640 282731447 393393861 961760031 985561148 506959818 608921491 76480900 628164474 134859630 956100917 87200785 917286922 665921760 735210348 779455389 818473376 705552347 930566333 749109513 906255213 910386398 933442103 197866266 254830893 33348786 949833592 47276180 799948494 474948424 768848447 124133122 248014385 131025692 543818153 692332117 704458835 677186435 712126060 37374503 152055904 943098292 971164355 205014163 586643902 709155760 817653602 177146228 435956308 742759167 764297648 256794409 476311210 303730140 523333062 319425162 609425947 758703083 898331606 430851278 654088830 709064041 975647274 395100350 937364941 104063349 551218082 632041839 720079490 953505982 978161076 116843697 316680287 930620173 951907016 658192516 698205813 675764912 836662752 644969716 700806084 193643437 208835476 882812574 967300298 267032193 789063861 643758721 767338014 240687723 748830490 919675730 958631123 861554511 890896570 862110249 887193919 253827605 800394768 343065748 733000683 265701662 598446474 239528672 915320191 433383552 456923347 860987176 974313722 368891521 713378537 113625907 545260106 445991006 896744556 954681080 966239047 117620815 662045464 750436957 759121535 348142244 863889066 434336836 956002700 920245650 931477316 325870867 776450698 839197909 906041564 553088103 731809838 551034665 736904126 604314938 812858592 11314324 492685003 832012469 864583799 35066514 216347404 40388293 815303646 840437580 991461623 29771620 636347570 134801103 503480809 632325559 684947732 665927586 876508663 968019074 977341488 751660013 938403269 95615902 538597128 579965826 770495615 480199503 786772378 468671315 494059550 294307524 535603753 406392008 493589560 501372784 952760961 217029406 693342156 776331450 968250444 390438368 412513810 710673470 777715876 400944877 848166586 39848056 511797885 367981151 947955371 719152261 963243533 913278366 992166462 309058102 928476602 363899737 931859771 54685131 844620087 245823645 786713387 997110056 998264182 917359433 965634417 334576037 539020916 389547072 893777943 273586732 429735496 988826598 993755621 616820065 696026217 822052801 931192313 528356913 624605064 791972641 947079267 390178172 759136867 159818387 547978366 790058577 917981256 526792202 579848121 948623474 978793303 798125225 976296856 425762144 702855062 675168668 994963409 388418311 462898182 592948006 739906939 130347100 429023182 251672469 270164883 394364415 480874366 614558629 653242972 703531705 900130079 970776637 982074207 556772471 806236416 359112127 941804789 978093159 999771678 897963153 919237850 33312037 901283525 283897231 685929080 560414340 919457315 123192357 432538864 788912396 972933207 576107449 817687030 184203581 939217521 232515573 434319520 494600131 836537028 439473753 531316077 976582682 984648369 844522985 947113143 485237341 499519351 480131301 626801540 415044496 786909200 861439406 995550086 968503296 985282885 578123103 609395350 843248015 974678855 602843017 845018735 609452791 962893475 915607932 978927652 484938172 894674285 223125027 951367271 107211859 230881017 624956638 962488753 418059578 860892817 555936939 939611771 357974333 855150111 487105206 794617062 578375487 844872612 191659783 809891294 840113606 920667420 199139802 397516090 816130300 858368141 495709975 496671475 657386315 878191682 565765058 988641765 196627607 655570763 845097475 855627665 641436643 764159120 362085326 382220254 66114442 877813022 625312675 664184801 631476325 753168606 895449141 899234418 445465574 760336089 188666487 353234868 653757631 740829054 846488137 960490293 895147330 926640702 935454656 958562142 744196762 883244458 469169866 630075047 427386601 492131579 39533961 872783063 565727606 751284744 26577354 839804504 535622542 969334045 653459747 913826070 981419048 999924218 377583855 803817697 674564705 859298437 948017237 988071259 780662429 994808302 134535150 608955352 596678954 695941190 482132190 680325874 815393456 835169724 706333296 858894114 8501481 91981087 943843674 978764035 843384921 927647025 740330897 835143616 925132683 981194566 912962948 984445910 926964627 976891921 603318817 608806112 918945704 981802133 825835383 903222669 521424827 629194617 928168723 969215723 578000685 929668205 842926207 967294323 807896385 959170996 652664064 784551095 223553457 785010616 638168483 638882721 525693375 833563624 505654429 893019006 738254413 874154256 666759489 999583229 852502397 888081415 938632444 945767942 59064405 616047932 676437694 766392518 731612107 980386711 992402823 998160614 648812432 697325362 357822395 601333501 171761263 802501424 486433194 541480424 177774025 629425916 669794844 948211684 785637394 877567793 798986330 847333948 162648120 181461729 59198226 742226393 558128188 966119915 807142369 966714737 981396847 989147224 897178111 925149196 325536644 649967036 547211079 878005805 845085851 854805915 488287467 991411340 890734062 938116742 700018228 995367971 594859165 887387497 307305688 425851156 517815507 847688697 834856473 890464068 904362295 916892463 420249048 857873611 803930184 868203153 185045816 286262293 35521097 182345672 584205517 895359393 201996272 536116624 613421985 998298366 21022729 213644403 80681982 113103818 135308202 757092270 341453484 455555837 958639497 980846797 558501853 588916816 855044280 898666803 404820740 751949468 338188855 869956355 706168325 772142893 606423902 977197708 364094561 729701338 124424649 509667106 111771452 398827363 97377462 149258237 278940158 693452007 647562822 710552162 668007616 881255831 551831006 788789005 23547923 536237235 989822752 994994847 734600036 802876582 943196277 976803065 439948200 490167933 127462696 207059406 715044440 956475303 467768610 618810386 276019372 489566204 23071206 56053267 845227812 939906274 907358494 964552604 497985424 825788835 160620249 892125721 718582644 724987541 999306346 999931446 911136292 917655194 25382879 832027141 937571903 955475627 475003125 670865158 30950738 739301372 180066187 803481669 130257459 272917010 345781408 364156685 711869350 735854171 531279796 778144627 104066254 575123401 965010982 965491747 688601827 987978793 486939337 907234704 300399106 386282912 769070979 934783814 537929328 768937116 442324078 990235013 831870845 876770176 561833299 740586016 82166894 760098758 101080481 452391959 626362749 998744849 84932259 510199983 950870385 959013752 603682637 876113727 733394079 921214070 912241963 949781377 812268909 944163444 64774648 707334407 928839290 998247930 585244505 649110182 364552036 786859258 493227527 571620281 163614410 590380088 206073642 480552010 328457808 653456427 809130670 922873151 785491901 911792759 144675958 432802299 547717894 673856658 680911424 958764864 896967681 918107140 355265636 737826541 963268441 982881497 781791448 803644328 992141047 999230640 995548347 999503168 809487258 870274221 522655456 905929268 341159543 438010232 285693200 758078197 551788648 577593284 734244941 807677002 675547949 679878009 279382337 669421510 655665469 862014513 353893266 902614995 704090123 705094084 365470839 996043803 239878579 935079295 770593783 849781935 141078073 722520983 584419022 753697900 627088537 632468897 397838503 534224003 783554429 961329411 996473495 997636958 156964578 635498760 518940001 870248674 717248361 805213647 304917640 620765796 842373565 865809599 273340142 431929934 578285340 583645630 507058783 789525794 806507423 874073671 253891815 914924134 208101983 791233696 139430696 540748038 930841865 975689065 329257897 911152084 944032096 972899292 882982625 897933950 790828284 955349277 920387279 991461630 214071192 326478874 33480626 252889009 103007026 733561327 136450494 499818044 922997842 995310268 359044753 569583325 51483532 449392361 885130784 900389360 61275537 342797208 968302664 980002170 755445136 941731408 303752242 524037027 719367501 883445484 623965730 855243511 378107108 678399079 989065852 995146766 999031520 999783832 545107430 735790385 632925665 830271027 252460098 985711641 191175590 852776568 224877804 521815228 226278237 728336843 241454851 851912942 98148801 300146856 497976271 746778306 231815442 800942457 442951847 984278456 969760332 994041619 618301637 814119504 867495972 879125952 371211380 983714991 363365995 392345181 284972771 563848403 296928866 819784342 392892314 897415909 547090895 767348332 725201607 829329103 918644400 976670825 914528403 936653545 882120386 975319478 253922679 413477960 353593819 541505890 126071382 720819537 85437488 98290315 746849286 968532382 473032884 782521068 479778372 643004043 9897250 941712610 841142455 860968329 397496208 930485676 855114211 993622210 435898626 740514571 922252470 995995987 720127010 865435686 342364452 736090329 204987213 260945014 588540319 628794717 758105021 902219987 297986317 802855229 460421131 724216736 490789487 734101708 121741323 912360498 998059328 999213348 988443377 989783268 664907312 783809646 298715194 837832247 113746133 612890703 652404455 725457179 955849231 963568494 850265510 899331430 625114909 955538122 618467666 794818502 193035936 312966328 190091887 481842053 385887214 694858698 638667882 731345409 710571886 827635247 796773194 800430590 283981888 720030225 916105666 929285204 125780760 494949023 584263288 891855885 391083778 897002579 373797369 415777505 801560328 919601941 109078205 312456791 595317658 998201060 78207742 856129770 151358103 363678128 863660782 891384588 777265353 987431305 581058516 826960155 932979482 965733742 441899841 922926658 245788333 435021875 397597588 932531673 151374835 567984416 527648986 592760847 815883616 972287764 313342649 983637112 893032092 903002469 126772411 660111569 192347198 224328481 983141975 992329864 743459697 980386796 598646143 938238275 632156807 754069388 683850933 958167947 716327631 875333275 150259980 480665740 962194390 963733920 692652248 787497980 961632106 981049418 816350086 965183723 998204676 998919897 94030408 425948838 534112364 957927658 133957254 345409881 625010322 976006670 741944421 790330617 172992319 432763685 904646810 925386848 97078591 465383710 154580248 515347834 367446193 567292430 835669157 904128830 163015960 603762501 170365489 565990125 457334605 721562799 575239496 687218365 748845311 926725340 202443787 319620811 505400232 691959956 296233011 914785202 460649527 614524132 727670559 988665382 680888177 750599496 871669916 957736702 769504751 783642388 32296496 636005578 136276556 723559978 611550783 743675095 773002386 881834618 939484450 979790618 693413051 950860347 776788522 962602508 548831917 833408769 896549846 959029901 881899235 993553392 963836606 970973289 226339595 397342970 251963702 451818797 302263595 873381295 262442879 656878634 812213954 819963957 104028617 506752576 741237454 833728111 422378431 638061518 624694500 973621786 422895603 921835962 121834746 306878186 834721932 999988225 624436159 736208885 555460633 947937044 248510291 939981878 60101433 583813788 725994402 787643664 303632122 973212832 302613186 419536753 345100306 552056970 825299333 874572437 496120176 744206276 230113898 954659840 109728733 994293182 984842241 987555209 646022316 848457855 537378790 553027957 273697700 830562822 966475176 989653128 722240886 890543117 573343279 999959146 541703748 596268546 945010531 981876602 68233667 419627190 746583970 919471527 951180004 984532917 45432999 981880040 409295550 879894799 909324911 989435382 181237464 266641877 934833659 944675028 773671175 943824254 482083479 628841945 650604008 713368819 164952182 512319814 676181261 766059389 827529039 967323816 842140679 964489949 727111535 852293362 855313385 883163443 741075222 826066963 863385209 930764589 515406309 848199190 19883000 685210386 725477655 901223974 68133370 631251956 693944289 839581636 787671473 985595325 198540980 779527515 604874571 703975329 142904342 868122596 712604473 956114084 954056941 992537788 476060881 620168780 707036692 736868095 898739911 995446139 670120872 872044995 391667693 698719036 261868800 680873018 174604894 598269266 230211353 647472613 825233699 866328662 668910994 775850345 207826739 660690664 848297408 941811361 744546311 878171840 163758826 659834255 796058567 854755709 460274785 665665223 715538214 880811818 754839986 887785893 240723427 874047221 590285580 859026466 228808937 247820693 263857617 528055891 792241966 898992394 334586390 488350053 613433059 992173664 406355129 910560463 329694333 854342412 148803148 843208710 634941767 815580261 987480630 993093472 80157844 385540006 271020671 552325097 935393935 997542831 50123349 857719371 685875369 788966346 965891419 999928671 497141466 497442368 465077860 755496379 34893131 421123292 610034476 929485537 179765320 230739715 125415737 580615110 882747674 911897236 55265636 300489477 605014896 935353992 952804701 953874705 112363489 342893196 562276683 927729143 403194944 804550332 228480705 314832203 829600284 924053596 409494470 432904441 698981802 923416862 734643478 871936902 610746035 950670731 361479861 374165963 705160519 985741821 543179027 553602391 797902335 997578735 239852511 408318892 86789387 929324262 336456119 638950719 433059021 701408032 349689423 491819575 752774113 836189667 164158191 485930228 671044729 746607000 806193451 876343872 146367168 474904773 633000272 906268591 573143560 898130474 453964432 997064121 429622508 588753427 130879136 590959438 978834482 983328150 641486496 737151544 35372328 725103783 827580078 861036518 652366040 708014634 867151044 992258942 326996533 871526519 2791222 278588458 672049256 988778211 734873094 929687113 366016896 914607190 600291484 608284708 700624871 993370086 154034950 368127345 239542696 767668799 146760576 394493321 347270925 510221279 972290846 983499097 355850529 441092286 299376965 323459074 92154502 745640310 701971089 946799031 51407187 176270957 726317876 839931256 859643409 923604436 665082815 945484413 330372161 888910511 713050025 985036354 633254623 867395503 772364585 840550212 806596910 949293552 207850276 971679506 420583646 790732139 583646348 799652607 78974381 934687591 988569679 994987415 216648889 372168864 383382251 402083642 914126690 921003325 372450966 982214787 804926706 945298840 362296345 401755993 953904970 967687372 85608169 311724347 190305623 449315272 885356270 959514582 930240742 974732303 803178735 972302010 566342093 999949881 654921572 913636077 370847113 944032657 440325647 868305083 652853270 936844467 415004348 900544667 728764591 843367935 825009123 918406005 924089381 976452084 988954005 995937079 691907302 758491919 665129847 893725587 729051613 860695645 969790038 985327754 797196335 821340824 811046881 813720411 880636683 888867982 343863387 430075302 856217162 986328631 939175086 993686116 262900955 927577937 931542687 955339617 394291212 519645204 901504121 923510504 638101911 821889935 426683258 586573900 877205645 944143750 945587360 986969681 695842047 979373473 819724363 872706837 751096393 924519074 428962106 777834427 611748391 819501399 412808769 924587426 954349317 964288726 318242552 601446845 376987197 605298052 833768219 966595990 55407941 853852426 500203937 927943833 727846145 987269975 864278358 948084475 59300152 236472095 104082628 401205588 315149157 370240513 751362379 947044188 483312914 679927580 604541788 741011166 434970751 945284762 321390526 765456792 489237555 502973932 159675073 904253925 211294824 409623074 4262428 993605819 692077564 719611114 496547072 713300578 197783255 375223961 726544900 771441953 154774389 409780346 117228891 497542932 419743820 914981622 647985430 801162924 261593650 826273462 770435989 776915360 403168546 515464983 515613197 986231879 746901378 931946806 596410013 781321426 775956568 777785311 795265842 841896277 467475381 682554182 369599848 445251190 323163268 977700211 492399250 864435810 642010607 738611687 754153071 778030257 732382876 933822543 82752734 504112916 553865694 705882733 108820450 953043584 286009298 636207740 220077978 965883539 581322859 856434717 687206275 703343056 293799973 761549007 507817511 512134652 385037497 986038767 336352936 838462314 609315091 775026274 526072858 693511883 277929171 732050686 280301837 429764440 751992267 983566521 576468541 957173187 776615465 974067770 186917281 861326251 248135973 479512646 864551627 917723333 824703331 922246315 762397353 997704557 480582665 586832278 424404387 698533214 840742009 975904013 344785570 869732823 717260517 783064178 249564365 512224041 714586115 886976133 107227971 461922495 711830054 914177770 407730880 906274062 712803370 974971426 382683659 547984441 702792335 772244930 8880360 578517819 647835202 851147962 414158950 983567507 44166048 308346152 930781599 978224794 989974977 996283822 51444481 544615414 692237161 998618668 84307306 906149908 786098989 787439756 933534947 992414932 261531451 438736225 690031831 914939065 781200821 941689317 908875374 939753616 688612083 760507716 932982096 998293113 952612584 966589854 372136311 828497480 916482849 925119029 406015688 882827027 476349674 590630704 253962839 955704936 82018377 291125940 976583875 992808604 611452477 774135093 952401903 964633956 153040842 790959963 100764743 418810460 730036612 776256264 30723402 989494289 74526497 979116702 936619148 994187955 767289210 937711620 110626377 783119430 112899537 994359346 974179021 986403074 10446278 985869831 316470966 629868316 394913144 566863170 921144477 998567464 655279459 877494234 937435759 979552262 831084420 955094227 663177464 947227875 546556317 742428523 492374968 736854315 130328274 241379911 709472101 974470732 133590929 512068727 560247634 984583173 757408939 909095673 890890221 971730145 79737628 876804117 741960341 917627507 734685378 973193911 654642025 808586013 277493247 741076106 737522005 803854714 87327554 511031527 553564807 654035681 101402452 841796561 631999695 843122884 934639736 952275930 903865146 925409395 70802564 152356505 693941467 882293444 798035903 865000470 597838692 806467364 671308566 713186112 592076060 723732229 339387732 430930862 884165518 904246819 712921191 934310353 978852538 985945156 934527453 976094832 749606247 847891791 674193394 873871788 800162499 934780956 621322467 836403975 274618697 909261855 920474473 948384947 843959431 965711430 725408179 854593727 43559996 482836413 772159243 957703976 525021104 918511065 346075632 729102676 672765727 968127921 441157572 956977808 253821775 378252580 382964653 752161804 838370606 963420543 778770884 995772503 734232409 738812584 574980937 640336730 268863880 852203687 141544942 343281515 869836047 892581872 364946233 912601748 6453565 309209105 404129580 432349116 985843448 986098309 594616600 934033228 655254802 925635500 890448986 985097908 378313515 909527920 426615434 820551582 902321843 928173645 456773888 812244989 589932382 884621714 226392009 646026985 130110468 352048686 563541451 767240917 109216263 659520613 334444093 601016955 757607727 901811877 47961930 138303561 457867225 460935646 164838098 701098159 926670807 967379609 863193161 939407401 562043339 943157355 848588596 951060858 202362639 243642805 440827395 851325086 329010319 857272647 543288359 898838575 243147383 647630030 186846282 781012176 734737914 872619617 159421753 621004236 626718816 705523757 248872031 709520022 268456854 688234239 758133087 761747447 379370960 884217475 205299332 595228804 693734700 806231987 219229584 693284551 850121828 893112614 757394649 845413845 118658533 175740212 663766045 882806715 299864318 833161634 825880303 997462014 740360986 891004456 980578824 993507863 511767385 549465836 849843164 986043299 886697781 961401056 804761926 818977685 86643296 239829276 464678154 576285409 841918318 930660836 324869056 701988612 40835115 274585893 544438521 924519819 558225281 691322203 898694018 936776304 522989149 571239465 590163609 828027886 402010360 811969063 798181215 838793098 349929336 741535167 335447672 938970084 470498741 821033406 543317015 863466324 302940958 374814717 507362389 552354077 418985403 737741378 804208624 806167355 251943874 634796250 515227839 888373754 427799689 540036982 939463764 949767857 701995724 831128225 682443127 896252580 865512303 902535766 831418584 990946156 996854613 998574152 290462713 962449761 870481364 975429847 15007189 465051077 300224649 885993337 434023524 821954285 35025252 169667669 373740060 883101791 135742930 243150665 145256252 968008537 243854163 406495242 647550837 963861288 182949135 441368631 479872854 542875679 84397465 303359762 936680034 996344484 951258966 985670911 546840120 790675229 522138120 756856345 121196245 132850911 44351507 484760517 978367825 996182203 920460523 956324458 769202342 917653678 500068331 933973645 771587702 986128537 938058431 945846548 780743622 861880790 480469113 548187018 280040395 869562138 675821095 758637159 714262888 916852211 16151321 594440071 718172930 935698361 321530889 583864813 578433018 675926219 627744995 859356792 529442270 924572943 971773353 991638899 993590121 994819936 482454446 917676402 933650696 979544682 127294410 318189920 188351744 383348399 886799183 934288274 953498605 975327819 723246411 841162151 443120039 717848441 675289931 734697730 461223519 489602361 538078746 925200499 623173117 927441854 987362929 991123027 551370871 766813510 148586930 696022785 899116894 960952382 955593836 958522657 548470270 651390545 336639882 570569296 876451546 966314972 215153738 508409782 453975061 913610009 112008216 277297084 720302674 895518559 572207372 880153674 699306330 797642178 490572324 571039555 203298123 680821145 991399001 998407043 756173989 791313106 419793312 946597226 496894891 677563115 547575739 639028009 6676782 216909578 746645025 814454338 160990212 223051039 114457861 950088130 524941228 525714608 769452372 951240798 574104290 614903577 641154211 713295900 753579157 775373742 974361155 984314219 584575397 819509539 779437767 992965142 318461910 617941025 629201479 881580415 189234855 897626029 751821690 896893362 638018049 646045230 121100945 503187723 194370191 891998532 143543198 879994972 961223398 984592110 503335597 547012492 532029275 885209619 280873759 715898756 764260627 881850798 830403552 871088161 387337860 387449917 110775865 760161630 25295314 689785540 541063893 872202253 616549827 855134221 228162331 447538100 660026205 949757887 872017812 930057443 64285159 417651110 95520485 393242007 357523219 439549841 785744340 876157721 165010450 660801052 167969225 394774665 452567265 530946041 679527780 779563845 746579961 749981354 764904274 995496662 172606958 586879253 223285864 418407051 867766867 877439389 951347761 992646775 756806775 993753046 663232361 820696427 715007819 875524049 519719099 702559634 303395570 491413469 42262689 947565902 961030905 970320585 203099007 578396557 817959632 911604630 385225753 859753632 524500919 807680693 617990739 681734276 111635922 687083100 756438246 839304484 25871447 913341486 944449453 964631436 732432722 815426842 830040237 989403116 730271113 873371884 15518876 244689642 359166735 416386174 10437473 970755366 378155727 828431307 295795513 558031560 861282880 882602748 288792714 392852680 2195975 708902498 610103055 885627230 811535581 812357506 956232908 989230394 505910892 801773813 403055434 987812412 108943722 835509582 474765722 482709852 896345239 961479625 395232239 428075387 112719361 541296383 102851308 967876070 990334531 990350472 153907736 234176689 208812333 658895948 728133221 846692487 426871332 731126792 744203116 798745390 736394183 741096898 551769427 798036225 38803572 970055199 46305163 990849734 913011628 950128434 77125158 416045949 839939917 858359231 33254384 884783893 809421553 888387756 61660026 725728331 535955604 874025614 609672807 698891792 58139283 140667133 454985622 541065935 139653386 351568665 6628482 110938481 235382674 421779724 844576610 912769457 495044904 653422123 609120298 991977119 168404334 993776674 126021684 922443815 326661169 705948976 580374837 707796846 2615717 97026512 845107563 933072364 178242996 868669886 16127198 271572866 971459309 982281093 7645617 506853195 549909235 555637199 666686302 785986563 672589665 974415486 517904079 537305101 760129410 935222450 173017862 348632237 748175664 931522116 707064691 854216348 669974166 698367941 375386971 875633682 285492382 791948968 68549291 584491723 559798058 624641711 807485426 872146130 295554184 482916858 363783248 389359136 811638677 957903631 324855042 396671933 307949552 673333557 590804510 890351754 199399364 482043612 81731263 621837317 510264984 604051877 452213045 823715863 5347626 448403974 244849793 946420637 544226305 887330875 501559987 610722476 637228787 714107739 352623294 411491809 808566775 859973056 15305951 703374101 517310800 942659810 405105506 457881972 865018694 927154074 645323453 657317656 504634157 527686219 39387451 503885702 150258715 727911125 65841881 132222842 743889954 941894508 852654522 985609801 179642684 736656462 993055139 997477977 241030549 475458100 249137605 718411508 255853773 928197631 78305093 514546794 42122142 913886220 625924386 956390716 939880781 978690088 285180704 295590482 910043131 962031113 208407097 628089005 997848546 998149175 157854473 263376712 459984515 832927648 105800299 995319075 553751727 662714888 726575622 863557197 597769594 825534369 234284834 348419538 844551929 898656326 736857952 832426109 452564097 654732773 794212708 973257849 717732806 958972421 325599194 337583320 645760691 842318338 921052150 976728227 610564831 740084775 650027139 736626718 649545284 738465992 205822143 860900395 126752300 928255664 619995202 736442387 586151772 626558954 42087632 79517109 668757623 763103684 858863960 973449749 413376248 882739178 812583303 892056279 180224566 781103310 163281491 598882074 876484306 947293897 358832958 490748170 808795163 895778159 272840167 572083755 614846081 732003056 33770850 390492240 852513947 937799952 377090440 719311128 370154480 840339630 938751638 970058979 447103856 852698273 672161401 725743833 177558447 211636225 315630210 903120577 922261962 941983034 575609808 614081627 251691625 916948125 977954967 984739803 29577187 74944023 318490798 856541992 220487178 797375370 798938180 946932147 91692805 810918817 174585304 776083755 116519916 321173800 185843696 287356389 204199401 307868749 691831569 803868981 775146290 990328555 999472910 999555574 401450421 892633740 641915026 748301200 603330494 903142935 534657315 614585602 495470179 902936624 222639288 940610103 310184007 837112408 808235117 901631987 350464559 350694413 546991656 886508958 102875765 568432031 208044672 544189964 390434608 932998042 91550744 102414300 947840373 983001543 500847174 661463829 481162247 809361678 875831872 911949755 685200010 941247619 427238602 771146682 875917133 981456381 175611540 678306130 564640269 815717504 58483195 613500476 907943394 977866726 616516488 751060515 637120312 707705816 395521758 532522142 107605283 921613408 558163228 650945240 20727072 192412180 931528814 948293146 20906096 167388521 4681763 674052627 563714215 931621151 50327024 662433528 539726730 694843687 333731455 506043594 875149545 937376350 221221055 307144911 713432435 956462062 657581063 843564993 125355467 929633881 313481978 613023400 69152669 930398870 106562014 594374638 976571 815061660 153108088 171647402 691093734 698623878 163626991 756020877 167881006 531021309 641146182 924801984 611926099 806475995 685725993 779140333 719833744 942143265 607837177 785579447 287249261 630889424 830524552 899653759 838661215 934756611 523550644 724569944 799310686 975666178 701158907 886040767 77324366 392820129 470525819 612801115 933817661 937287417 646170017 680053902 371640376 981247057 528442258 958294368 800635497 880272832 848185792 951223169 624484222 837387462 743440571 980241582 770228564 990916783 98970091 295628784 371027516 667581545 529717351 824767181 382737164 522535661 435810918 529599542 676892639 789317446 110297249 806178561 717628201 771413542 87450689 172232731 548170239 731567957 682314453 764034444 50018113 468194335 543814394 892419487 127531343 413812774 947601528 985199571 620639958 984326748 533004869 593057162 463275530 510834242 964833512 983238117 980651761 982764764 182009333 804058703 42161110 362753242 679933938 775692020 145842814 181408043 693346591 809328378 853237456 880605397 477279614 855884520 711952725 996435700 85050753 93377680 233198313 425487876 288976514 942423490 862315415 986607772 275085762 497944309 104210788 965041329 313783396 432069917 85124259 466871252 270442936 545162573 727930991 943440579 634404507 983110204 386222074 568851789 672000612 812631910 158784235 518114568 19466292 310758754 247477284 936245863 340974296 702637285 943673012 990137423 395456627 610984518 997997719 998475500 318936363 356912265 735148227 826417611 312414219 541673565 361706248 994482390 870017139 904320906 130161376 842343426 129420979 258518016 361925086 623007400 995440555 995636847 25744406 643834348 582461664 749387331 89559975 793571374 976122855 985265941 615505854 980390613 594467946 741129855 74586720 986630388 632767684 727708530 951853805 952790397 512022668 591353449 795215960 960968228 284259630 753224471 540765429 857077917 36560218 77128396 982435594 990936915 881585760 958330379 385398022 521590292 401419737 776797221 273444945 658188394 553356778 954648420 706349836 836154176 794318321 981857351 791093382 981298823 498905572 835502975 50739329 759617381 644483642 855646493 996444948 996804673 978790257 979971903 441447792 736454375 802341555 949764187 766986909 811230131 999832826 999897981 497157818 898027947 144200118 573735627 72182400 985452540 9404176 850485189 790523543 917251425 806953564 993175927 325591466 739989018 503620241 827872526 320625440 391522715 365927959 460798863 753756652 944448365 186016405 874037592 786657571 805159039 655579404 828384718 903555732 928650400 244764388 758318740 838257475 987730020 890392136 910951970 101341134 764953483 446871997 896357799 365648020 838970437 813518221 929171529 90509276 465947015 871544546 904482245 236724944 797684316 339281238 778206562 692787499 971864383 837852282 916968604 904319870 998862460 864551419 928494044 525318401 568237981 497895077 903249326 738058260 900941371 238952876 803183574 628494335 638319892 310654054 927451348 427276584 909045358 556799072 795585396 119436024 861295145 418006210 979042627 986456364 989404469 961205709 968203099 760866738 974509334 493868664 990627644 150116247 731783526 102401384 746536657 578468640 823447707 954540385 998486851 589226330 843522159 927952187 961776958 182167709 935672506 19745498 157849297 506985861 607491818 973611623 983833123 234803156 913327703 379661608 691196369 564758596 754677889 297468504 651525436 158576934 928558769 643633615 946952348 440410111 644127768 176990789 942440924 776662483 847965456 946336642 976242035 253061459 361494931 64065357 409936894 201173616 915728990 862702493 945273509 53134139 317263046 735074321 842455548 11287852 739513380 112409746 364210784 109928792 704557382 66853406 116138788 282135525 518459698 571472971 981738191 310627352 933284740 823922513 962609937 663736143 747597248 80931217 240274636 722636353 890380276 623932221 744748350 919099484 931660493 704638192 768617118 314848829 380963971 970892914 989043846 428036354 987102636 671279968 958756994 880405925 897012085 962296266 969057442 560073362 670031541 54062845 136075416 233412358 734904120 757264718 853366868 622723245 665573064 656573013 868619048 326596723 362138552 342777831 684753697 192772624 864360243 576190169 681225691 380477651 658302063 316047414 409174861 785276486 943491028 547064711 964528630 684851056 955873493 481158832 815074204 463913932 614959038 933225575 955226619 633197051 987545591 167814043 284318651 110176478 270515258 248554492 452771750 382085772 898794995 162426670 477948722 169104916 215060261 68250659 215835253 701752524 813890132 879391809 943501036 218356197 237937434 299650058 453100600 333732729 824287095 59637280 770896726 58465466 159964540 545034306 743368090 1965506 11728275 472286324 777980312 181840918 322466593 995006149 997213645 736762843 975748822 603696583 769804874 130922871 229966721 810315317 927215095 650412348 734356723 449283047 472348230 421856739 711937268 124992280 542900470 938027392 992907309 824817292 903330714 640389363 703769318 283451076 712914619 790682024 968350274 33897158 189969522 917625472 974563245 582984121 780671745 728795421 879987194 382309476 717022638 7292080 784536073 641545533 677623449 855341506 982279645 642751292 647534741 591993995 617505118 239152288 521666943 335079386 524449423 166256374 731860970 819978495 882356643 375285993 666843883 460766317 598962520 916771812 961316177 996968504 997457283 323624048 918778624 203072083 534889502 759984472 802875097 850557819 859898872 322995881 518834767 324342757 445874639 164296436 341116799 596603493 634254276 974251318 982877790 758097309 770810612 712715909 936541708 789418062 982968986 99333144 524399967 806186778 890676176 664669886 671399310 493092072 607252706 578227175 853578361 76183387 375897755 95939609 899799594 638818879 910769277 522850820 879450092 688035229 868085309 478461986 617461674 846686950 848513511 240196726 897715548 190679555 917396848 400282074 552395341 470663720 976747747 332139732 838151058 90256618 150062484 955566714 969603213 707816559 876300205 785144953 901991933 752850823 888983228 290864492 534799641 568349950 769872865 759372048 760054152 736662271 995973919 378175084 716339056 624416185 713018313 532822357 618495726 604865363 820224116 611770810 857380573 738349090 767201610 948827910 949748843 979870772 988916054 356788856 615164848 618435607 804516282 716321306 803046548 540279807 557648338 558117727 972692685 440583876 965037739 111914840 573201788 232139153 395704847 945073252 959759731 933729382 983914019 645563937 789960108 640162101 698487228 305570578 599439565 337864880 738452045 526261941 844367350 246529345 698386027 754103878 796464844 304729530 858069177 553441944 769411398 473281885 489499393 104173302 131839639 113345324 706768182 157511799 919809085 389870942 754446274 676930620 697446040 153533238 814163320 801180946 912103667 469891206 888626606 758734564 901246790 830347933 916996981 133716247 309847324 218214368 703568143 343055219 851599367 769934594 862404398 602501332 720933462 548508402 622391942 60109092 438726842 627198281 732798449 917435111 943139899 494520208 804231171 588800220 823467899 353855863 577091300 280826586 828568959 211168258 917523246 703132781 964496285 600410307 694084354 212794227 307768364 345332894 983510793 985857969 986993769 546085230 993709626 27098363 316827437 156341528 995323855 895536651 989304029 37581149 686358144 417802541 787639353 655596231 733968922 269558303 993732034 863309127 988655863 832545209 933134763 184883921 620746633 673402991 840932958 769067787 890400201 745538114 868219228 656790719 892806109 163748455 639743644 702850113 891117279 589075717 732518588 447616872 472441556 734597561 954378969 827150099 930090756 248790702 350778509 251440324 519958913 220750210 783481952 76689462 411016514 352667073 929012620 347755810 609829660 898609643 955073046 151368743 314012503 521452294 642575808 933302546 976774155 388271798 960194658 194452566 611607597 244240911 507028066 219696850 981636523 22162716 195554935 832573255 952696656 181205447 748202968 141762488 568980212 699278623 751700229 848567415 909475639 440221353 762689168 351286886 814761223 113765689 440363082 472873135 884609504 277689724 664879940 56678219 336098811 272994609 576439712 646253918 967210655 476697017 994457258 792177984 860580598 302797510 457868072 804446989 895915486 199507868 861166508 663741011 702384080 901167088 920471112 461598282 776394641 260906289 922106664 378530599 844866247 293505088 829619457 384106923 961608553 784778957 931684992 847096642 922495337 717988615 863564489 699268252 999009952 376939671 608647090 369643465 526849650 171865358 711535727 341370450 672016842 670614254 993600876 730280308 782178570 323104992 464303727 147467213 345811131 707568534 790557637 101811435 628689061 74566508 999118643 938045235 946085812 479237082 525023792 942317586 976959993 825663036 845729198 139039433 143361468 603494360 625361264 896509652 945823053 193743542 273920605 315554221 536217663 481661042 661395456 527414630 944285955 743213852 915250817 580917875 956125649 92210952 601951412 610354550 777372284 31881023 255540941 947327164 964390091 440180070 900867441 193371047 941556710 136079783 737543001 393498123 517710732 883007718 980914588 617462053 904902635 991977144 998995664 535759188 987962624 387968253 753829961 423325828 704401292 734764111 904699558 62354083 670157845 296202091 453948277 472940277 945052759 485119729 719646215 711116290 845080936 982839956 999673135 576350530 664818734 476658481 792245427 728275900 762820658 130995995 696468226 26315965 504377822 767847240 926317916 174085246 221705191 417261045 659161822 457616225 862608600 247313070 482729887 417177265 486768101 396370004 599683680 784427646 963939328 563222525 717774964 988535013 994397163 563222446 921180600 676718705 677028112 530945154 596874073 332762748 871755660 243682193 833750373 775132154 975994104 593631716 759471788 157319304 348605634 555444146 930179980 407201603 437948888 137136264 174227349 745227826 840456975 496316741 578279101 743155485 939302976 270223210 817010730 653195940 857069090 406305097 933200025 682050911 910151605 276648051 662661923 384250392 754884100 215507952 761528774 88388715 98308275 425503668 700047438 672987715 858834574 480220173 662542002 388959997 778304786 316531101 548346393 85937883 519571446 173719620 836465094 978170051 990621009 504366019 810659819 50524693 976993439 910458298 916839863 801893432 809803700 321124619 620605191 229923344 484788196 537068933 636736992 541131529 677707293 752256307 902912338 6193567 781879768 246537308 493731849 899772822 999383145 488142658 503103293 100423075 144384766 222095423 611013645 191818800 524852564 509752235 541567911 396928406 917247949 834363604 858058816 493056281 673439635 277836681 582989534 487467925 893738894 224127104 538359028 994131817 999528989 569535037 659216066 392169886 662081538 589689905 993877126 552811905 864495900 826727134 980404346 312629039 687666531 956863345 959613970 22491375 154567590 644065116 886280050 234077066 263960614 843721501 886853158 627151123 754816445 909121633 961347904 803774563 821015549 669372221 739838503 456852573 788597982 540591184 793520275 435644122 780224921 814110730 896237284 815912719 922743372 646343240 785779181 648389514 944527614 267597768 756470092 56631116 193526703 305304094 813828657 39241511 470445054 738523373 861637685 539944360 655445453 901488401 992098135 632368435 686226808 80864327 109454450 251872232 691910370 876493349 982326804 112800747 710984900 424361316 821673836 548867328 816367158 135703190 909601167 883830367 928579325 756438835 828939560 193994337 909997259 516845548 575168397 516243128 870796574 755251419 867487912 664531160 830068354 791172086 793763081 831781119 845086796 485138038 651218877 889648719 949061972 616132286 959907128 752837080 892270943 890586213 991555831 425685399 546021693 929389900 969365059 592030455 673879142 519178100 724580478 61586881 995279477 735431842 748600730 468298232 855532747 748411066 972633574 651486702 862837020 268249355 389121387 595586491 801569311 160234553 606691574 602257747 955794371 823316018 911160482 178650461 439472027 424205231 632496247 580297523 748708241 235518950 515389280 332386643 562462725 390860028 899417746 396358658 750571353 318543901 630987324 349751069 459249815 437130350 845605907 478563410 919925680 459231150 668296179 491016428 565206388 918387589 940758379 45079032 209096965 887718866 929864776 375598360 963601249 243253165 485665877 443587418 507148911 341971732 804945320 288764420 697085506 341879105 880412671 693575795 948556866 837610731 946063938 7485367 639321369 151664734 288332544 397796471 520707152 854926000 976678278 636314373 768761126 370780936 981911726 589874773 745608946 4700432 927004464 381231558 384045000 91717109 983975401 923794418 977152177 484344553 971670919 390558364 947597434 528160128 605234816 384249843 700397611 80833974 159170571 856134796 983529192 729143406 806829148 379740565 526524252 964089222 977242260 363870386 782863257 635362610 656218030 349273733 880643573 763743027 808278761 793118057 972390963 425239441 544843637 785869888 872765195 783476164 907169498 7156945 274850923 479138560 916861282 763701249 889311350 308150969 561576263 35249337 681683518 353409117 730817453 398613632 720880026 450150739 457047938 907114330 999826192 754338892 898342598 843476870 912946196 7982651 785929175 603923473 847354464 809666460 891239181 436205569 604751591 609652331 806837139 141902219 955889890 287019885 915516666 307719594 747230022 886011041 890382868 796884419 954731844 639854406 701930116 839559334 963844376 371229660 600194997 393377054 493876767 982164373 996724516 259742667 868753415 109370432 365547813 826218679 847993025 554201442 976397965 733609917 827096562 850482211 936245585 943341961 977653457 932148366 985326925 696414570 705622709 804009922 847220497 640256095 931542759 164633076 690575863 666133454 721368741 437659988 966890124 442811466 473131086 121846888 550041223 434705022 896474419 126489622 703051542 587704858 996078733 417487838 496813665 265889223 638810151 149063368 348053195 822152045 835173072 149820278 399769211 698694903 951511332 425868033 942296822 584788430 805516037 299684200 566010818 945348861 992813428 4378618 65801456 746112105 787310612 924043476 939852369 16104027 484397012 950815927 968854708 122765890 390842131 343779838 613014889 299811491 480856446 140935717 306916151 356174005 392067317 705753170 916130601 611279560 625602655 387335740 776978652 661026446 803253266 327456353 341623528 404430690 794440064 80048259 109493875 385793805 677812631 659909655 997983438 240999651 369572415 849788968 968260369 467820096 773688041 654024941 687954889 62201079 518328349 578858171 680528020 924931084 956334655 69318695 788053592 185458304 241945523 686400709 926710522 519984722 541040466 412155637 860808713 530397743 837294641 230426332 762062585 136628785 410008207 159886297 698790168 721955787 801400530 72285222 281365075 497644548 600092233 765515224 878335988 325106483 896271904 129215762 445914759 446402694 697491204 560436590 650239910 806469126 909623540 895794667 926450886 55063338 331918995 681496417 762327096 951136689 958246984 172437256 311366615 415959732 741410044 82278383 775113631 191872273 319648866 450349777 491366127 452222 91995711 153691327 322863427 38935201 424017695 526931118 533905280 85606718 877913588 479750648 808365861 925498997 971480226 958122275 979111689 412996574 470825036 114928710 760926823 72881918 565290899 231986899 999941504 935314421 998530207 32025317 778562976 851587724 993424386 568096981 877742817 782566866 863579666 947719169 962706699 515632571 516756000 920256955 991876383 416531288 759259784 570711402 678332613 107094526 746716224 7948382 930504297 529208202 861973011 848819086 985419038 63571126 536496339 423888201 461653928 459072864 805525652 61506129 922257445 317466303 875840675 802343952 857918184 829394675 901492010 724635993 915815634 272456056 910697026 814250410 893833110 69169812 266383873 604137813 824356150 673554593 966799851 792860580 908406051 744914905 767049533 711046779 915466984 492753380 620734631 986459093 998710906 96426961 902765180 434592057 491178582 290545925 612476650 124649608 597324282 985930452 989204466 206670231 378292284 348734829 589060285 512249019 679931932 963075479 989953064 636181892 702676729 49143652 731432986 290295891 837617213 398117055 553711726 122047454 840474798 298072518 347297388 797334334 875047894 999594037 999709912 104390385 572477993 823285776 829154103 170954428 832336824 162729441 523797493 954121830 994531683 557947600 642560949 79130381 794350124 183093704 660410144 189813256 264418598 632443608 962792715 541003278 580322451 799449052 815868527 44385479 178888413 862434640 867995118 853133655 877897695 882815210 953441418 497522958 754461831 320378922 959885645 915072706 969557687 262874069 785065201 153023717 547854579 195557908 427431342 65333523 257806386 69598836 656868730 180092228 522514276 498434022 713824284 404586536 596164187 395541557 935446671 699257421 856388437 940681731 981110828 719400288 727368177 151580486 598053494 272464125 705199000 344095372 499068756 703007337 988439982 918072232 989978953 418616741 838673309 663836387 925361811 600400845 658763099 707994399 839453474 50802139 162404259 215534557 921747502 426613720 694717489 462237358 835427761 561612560 934512599 10189648 172985715 188182484 782669192 99789249 629958854 222417704 376233343 878249589 891154266 4326078 73014959 324673159 647953659 744312947 910473019 350239565 753470730 791505714 939437662 960879183 963224572 308109899 587938992 103033575 788965815 420158284 601492925 578133027 980124573 835918229 919403771 56497520 133329702 860674256 926983462 759893201 959847177 146453635 683445799 119206594 682727451 789396443 944416303 424350014 828989127 670248081 744111018 950989730 968695266 986591089 993297777 417390239 958170800 33783550 770192349 352068602 822658239 655068571 807530512 15649357 775526790 245760556 864697081 34953393 337082502 205670194 646622411 330101849 709786017 517773613 970404300 919928253 925814056 95646250 453178887 429773958 468755435 303001285 870241170 915250931 996641682 78308364 570762685 237665422 282402076 837637558 894798215 946697654 979234051 18734167 746898896 803334094 879164768 192485380 966250038 306259325 916466221 825165906 977222252 287733758 465776790 464702383 645316689 263797583 885954036 229173406 344875539 822806220 952823977 550263818 662417802 822509512 863918068 26208683 354596417 362972079 788066807 787175939 819746812 511336848 513197781 752933294 982166497 428972916 899825918 154883050 939934480 334446164 431858058 638038631 861687627 312193914 849662201 943016184 974195981 702581302 737949123 721174352 787327155 859509843 975045872 856857510 874707920 724122772 802663711 949436392 984207329 963437586 987348440 189549560 346654243 297412408 626950592 104033033 615396098 141245657 653394636 42999769 567989610 345073562 954919117 500104908 631101565 746715770 815069904 257592923 644095256 855483210 915521144 686321609 961199681 327336597 675669538 39139480 243835112 611691516 686956003 642833891 645111461 454605631 754653391 937387322 985098038 68274734 672697343 290650820 400819815 806002984 951494730 683633562 741809027 928057328 964528890 6817088 404955991 448038653 903605204 850351448 854287491 43894264 58921581 153408307 646352644 13843980 502762895 222265379 316243852 258055171 895928146 162242282 415194293 191390142 370374467 119478694 870977889 601966489 724492056 465858471 796992784 83320956 114459413 657214551 984579733 952358106 983609741 636337138 884911414 416963160 693516107 50550147 639454762 258826733 718809612 367590993 822700223 990971744 992747843 44843235 77966856 703764353 705516446 582441973 738574134 660304865 879788674 779650432 850179981 229183175 861146641 214045387 456491907 884072903 897586352 962517796 984910530 661709448 778270282 308692632 364937960 23862253 905249970 420545769 829547951 313025245 365154864 874877723 955622273 741448360 933103284 24884658 274868248 419020761 446019891 300076121 637498820 109922560 350038732 100999044 985906132 930190548 973607200 872458455 976732057 3195279 397469957 875106300 883864645 935190200 941903664 682515012 786338399 493551477 778713803 969757291 972876691 871788020 961873239 88392821 106703850 729173296 959338617 35183484 462330830 726375098 936058493 633690124 734752762 578644560 983077900 775263403 919809668 655683126 831647437 939580453 939874508 984532678 989973699 696674053 790730055 61845833 504227819 796115256 901062408 81434850 206709126 471845011 828543219 903109169 973938564 624657798 640576115 704705946 954538730 63667468 751715968 838561503 886651505 550120394 752321029 17219157 185843956 372901251 602769966 618962381 785314830 198196064 327184209 400859297 608253193 291311601 774221146 139596382 866358152 593100566 662864985 498122949 997582737 760160177 814212077 931676529 943028466 235055107 919386542 315254717 746455165 157442843 390797381 613029526 835929876 505955229 674182885 702915147 919701106 493646160 602446664 896505012 968584777 986974211 995674547 44225532 249087721 957999401 966708118 893688805 917506804 626680437 830349429 477945427 718435838 830774512 974305973 557411776 584281549 112103593 208487294 799542198 828933855 683044059 699764824 840350400 954427512 444381356 657649813 966807395 985558478 849767815 928332466 344935881 501868968 497340791 759678052 610066817 645394839 838205230 909565692 339386282 519175961 903732899 987276753 651163421 941303388 236006524 509637875 77306641 315702405 199891750 863039509 675809947 974687374 130725332 936460296 963960986 998163527 402308483 908532876 366239029 512696060 175426034 854640441 879665938 893202809 675565033 914759875 220535289 609525735 385415830 602862772 148877455 814674342 644607687 738439907 755519232 900774120 707348265 797091597 296817881 642323549 474067132 548106760 953429347 998151296 346999681 979093463 962033552 994465959 124351644 383202000 686990545 698936266 751768278 951234122 296501787 701981201 482736829 482746970 507765823 819349701 624839784 814437280 410270809 796058092 892705915 959667905 638427202 855685752 84180710 992349314 857191357 938533109 726207119 923865675 256169204 820223886 104466118 542979167 913206259 981443458 305437965 391655224 559159405 586123973 193003103 546050007 237270176 311419824 375246280 915716549 172770911 972969643 477386975 967667257 255210660 311950888 896403182 992011758 385831196 798119935 427564191 899772870 688900610 826177423 330965313 419428752 584357223 834135116 366458611 681638449 911508470 965880936 240252286 482414179 954453148 986404542 120003343 559603579 152039024 990256689 716801227 832233571 28171425 729649257 906493240 985663331 570974731 843430791 209170870 294668156 117496038 710133109 218595435 572678915 333259849 567744253 640409846 659722792 960539338 987259085 548030900 715136124 253588344 907445391 806630876 949723211 34381257 434243832 628117635 779565691 914217013 940035362 98068467 758105877 452132678 902844029 738460415 832985127 523598479 954753622 707921587 989394932 706471005 998066623 357815994 522204301 587815606 600540405 606884840 800125982 132356213 422453407 121121564 869293576 245590551 662343463 531764134 775512445 815753590 858609650 287294464 727384560 875408765 961304587 285221986 829333689 229302370 635140214 499789109 509358887 93264567 398630661 928017078 985951949 107671 25044257 423389997 726805673 74867672 184326510 748421879 924080472 731010309 894330737 932311808 979888014 44479836 226197385 248546361 712825942 427852932 523237987 655999010 833912357 455969904 647339543 463514061 562106138 711379568 996449940 27322497 560234917 618932085 923600862 771813561 999925069 553787388 800377925 102950651 306612637 620368919 698195958 45564416 669930053 325991493 990652252 595540726 610268704 875372527 963473158 266051592 673753630 985543085 988155349 892019292 939976821 902287167 948389671 686662805 713907207 784547065 808657027 318124196 570072646 388336625 397708685 339725198 644463463 685698358 819214950 784890394 800052850 225354136 504556935 166002707 199854551 297939981 727645047 813451324 915193178 492238575 868823871 702735815 933875400 762210378 960565432 219975342 333068429 304481847 713050447 33000005 212915370 147501902 867437954 791832975 840677989 471960803 521453592 458255844 502555868 608558504 993453276 654573463 662996275 117370834 674344485 857312641 986948858 876128058 977241349 426077581 828647609 709853323 971196940 378718826 819370198 176174776 826909006 841046807 941362623 237240357 268057228 956805741 997986075 402713169 564245393 719162961 999291529 706450036 876127507 27887635 671554559 376741658 762085531 378188916 626603219 326592899 567606591 463771226 842877279 814988967 981619680 449727236 681364644 950893242 991792918 45461384 940809535 217538085 647814794 553307291 664993225 815253261 849535327 644229301 992443300 3127693 552208122 287881621 600203166 428589472 517793932 350406024 758282429 438847103 723326709 905361640 918569746 462234519 629854842 658996865 923751914 675011204 960183192 776879309 906320308 631011843 954691884 261175460 664158393 927655157 958779338 524300419 688755407 150500989 275472200 685057287 931961618 867417181 894491491 698054165 989592062 127476061 461437579 582308514 809729175 434626858 770504202 41028539 581410613 82500084 204059673 953517454 966494569 311815117 681190173 543568524 701922923 546580986 666612780 537791335 961248117 452762951 521546116 348199377 356087020 795228842 920596160 583919713 949289930 896554968 975169525 177367195 686585065 867640082 920207181 198656673 201052417 213859600 992114120 477464353 855911079 978021100 979001716 488670517 772512051 822000895 926128197 364317535 821676525 583208451 718081452 285924221 884811920 919705599 996759900 47736689 233522474 614355882 971285016 708542639 844300363 492083316 641970833 918571791 963139336 271493013 352773928 225566685 593052407 115048063 152566453 837428536 895899261 330543437 886158849 969748631 979638179 559197529 603361279 399725087 694151703 632964297 655164742 901894408 979893337 596558654 985567827 779130736 894054570 998686472 999022332 82564072 959969323 280938992 527508888 241696401 629070173 935105951 982296952 509226796 596723385 658070300 907697539 452762216 540231899 481995824 675898595 638736364 712403872 84000382 102466857 556608322 987896593 284232161 897738398 58249154 469534286 728204970 790552304 87254279 443093620 712688844 735443366 365703179 368957371 54287126 310496920 910456799 912653376 905509233 911939489 717528624 939918562 844891026 923165149 340588083 453487227 905061075 958732113 414812081 421413211 229849978 610073963 513216532 615803824 789953645 857411480 251752066 768130192 531202874 895056816 642402255 871298071 28586936 507057960 674225806 782119368 181003241 706578696 871209924 947393841 512055256 544763305 749661289 768333107 975685101 993556687 460490443 596078334 255794078 445803580 131214511 723333588 855111678 962632122 182184876 532637841 160247111 901231168 537898490 979841980 150944404 508305912 569239887 679207603 603931001 765306376 816168036 816975459 773798671 808335541 855795555 885036191 740276536 971460960 509507104 975934554 676592059 766174614 883093437 994003207 181108432 436929022 470234392 512458536 66860680 150121102 232923035 439925014 199418261 409025570 329887302 371593388 89699458 466928395 788008159 855843429 569755673 969872644 642080735 792983112 800856343 877260498 172193630 329902282 112846122 189794904 379568170 957718237 270385218 734181834 793543156 985832642 358880354 602050228 51469323 899582637 629366205 941333512 286301346 903559563 374401350 890466208 863260242 994158772 855859102 905666549 571709766 901279374 800682566 807781625 52226695 524826020 714803499 865432154 183646476 318948022 379580174 740008106 187892518 423454086 68111961 702767372 793337412 927685747 563551623 903537961 366538941 458239774 878911237 903430915 373018397 838993312 244711824 303366322 199726199 852227917 437913801 981656499 163129823 617950089 267868725 303176573 608992311 727276044 687491952 930510389 216646367 387862060 918035420 955170635 485833267 830831095 132135891 613526801 349942975 370646727 509641014 901411007 572040918 699730158 241306753 650665014 299096438 904093132 878276270 956851759 363501569 926644520 487680841 975737519 382416147 904911406 957776812 967045589 106751282 244904717 289020743 726323970 508441741 561966921 75312893 397419278 694019400 987058265 651933664 713446713 851838571 875813146 151198237 960729570 54633039 881673301 260358902 605193648 68027350 420049372 304126937 304774627 651399609 947923419 757038544 970930709 916019996 944707954 839030145 857022199 322162053 332583389 802192950 865511660 241486872 798849843 613666599 996716601 821655133 968137830 736203470 973890301 626589568 805717479 82609252 805030219 149079694 275669503 312558410 928908917 51295183 933320566 88927386 853823575 126339859 760850236 383575919 539733832 69365860 859983269 421499623 780026233 97529334 153780169 821858151 931514416 798119452 903933092 785312983 941051064 562633773 824706514 601233837 630854233 783393108 949455718 293067466 879249547 255287570 347855258 154918213 177998454 552675467 894361551 500437046 549636869 87574059 599408867 532414274 820541937 66263377 980684033 366596630 942937463 146523366 669932466 79170223 253299978 337615085 547627579 476576529 677027319 614501168 967653100 761794112 873035474 33957956 271665637 125266419 478165719 245588388 728501796 417987352 519882565 262734114 743556100 562617141 949126958 898629215 926375853 768135783 927802233 187952872 195206964 831639688 932068406 324546533 568908821 49381956 970085184 577745768 878879796 838210521 856325797 191816062 329805220 239682651 632357336 410698877 628896218 496596116 748480109 295578456 904515857 815432208 968067029 145277558 658054312 664288121 831589966 186259607 762705951 267855503 720136173 414732513 972928448 937600082 977970039 222903874 584039421 658714441 826252356 925674130 956111489 123762278 815678398 635362227 884949758 448445612 555779328 669218450 831297381 609517977 727432824 356824399 518954486 241343267 876732584 673964902 790690207 170060319 602206067 801477278 984036951 916598821 969090329 22591746 296715619 767448702 846738617 970095044 996979242 420629708 919140908 976597488 997204944 705836575 923470569 500650949 711911679 275689456 407040694 146862569 246136278 885364831 895869631 770801487 995851003 736326269 779163488 556565440 773283325 648871725 664001781 172291577 684372219 17007877 793871651 559810702 940572733 709208869 726074091 773994637 872893801 758922725 803727992 388040028 995753578 556632845 638101305 903899219 948562033 818829043 835560061 763137007 789792172 432506709 712553196 583221968 857244581 295755481 329647634 247586176 726253002 179559537 805302202 828255865 887118629 694444692 722079330 253879797 347328694 445784373 846481429 437717281 959611183 677187352 961680324 290251719 534721535 195710441 226414511 193609272 199847834 598317063 802568879 888986059 954433457 519482180 741279427 810189703 836845235 283291451 381291883 124449549 418902780 145776975 940914892 581328838 954695936 608091336 763682321 187703563 629829559 827571826 994687790 640209980 922540588 634677608 830031469 910311704 991314976 501566358 980625659 88207539 242962863 454573665 724242666 73013863 642492327 679030888 797654061 39588153 322527306 971523488 989245691 696146488 993019605 632374389 945404941 507329919 706097366 904424259 994179672 955002302 998127250 587470289 808757938 77325416 289254847 289980678 478740269 816686209 899457899 416216287 657822373 808838536 955287859 925655728 944798362 108449721 880483610 180733948 905107441 679460237 947844536 900122789 919511239 134465953 853513590 59919563 680934528 81553937 436798623 363282849 831928331 242117848 586428143 308363984 717586477 921624390 960109457 728189413 756109480 499011812 551655218 439998887 798857440 421383162 684495094 398132459 478700020 746093294 767361627 454145157 655586296 601361233 888227257 64799769 619455758 505130929 677960678 647434801 724107049 214056789 229203214 773379452 917969078 724670108 996449059 121673223 979441682 695258307 926265488 571344686 940867840 389518866 683059124 704800800 777035634 27205108 659574946 906004071 988805676 449885600 937949525 661724199 853531359 731197782 945048137 68033874 198860679 785725179 939832550 227835984 875046707 894216916 993346240 121371366 233957917 225482746 484300064 666883965 909080229 212336563 935528274 244070318 625559677 161555896 528870246 849565628 899399844 89796716 225146450 338092547 441101308 73004465 329371230 493579231 996873514 712074579 962582883 857202570 981514491 848921786 925474514 182888318 694639147 976137278 996826201 499018091 680380744 178075006 254732577 902070058 955917282 606113226 940517649 500934219 615414601 89676044 891048211 193943316 222840612 488725760 816986732 146945912 664562178 201968089 857108086 756029826 927694316 256670813 643664301 981930244 989007477 335279929 694479590 847525905 912386262 883823296 957928111 144270360 985418535 44736766 204674926 266108929 434033171 233937748 831640718 690255140 762636652 169923801 308448754 871640128 925365393 375781100 801460917 239634903 673918236 750970191 818286587 322769845 719196995 580699377 852542031 29225406 37592690 713038564 889680891 544866533 890191242 353173438 510236935 587518535 600808259 555228846 694106527 91504266 633506811 854510056 908702594 726300376 893680036 44388903 128940612 611847397 710830115 316353968 530831982 18655347 680834754 62886493 763719933 194565604 551598703 959946087 996347864 860323437 869134548 1907242 281107479 603283000 846288802 121586621 578233952 673297104 680551944 838223231 989189568 843258862 967472319 111406626 282561610 222745330 257078520 494492300 592089864 668969960 712298451 206333014 632472139 377902937 794243121 503189517 990431389 452339561 747046153 95755015 650756439 616279625 693427575 335050891 966553262 887190547 968667896 693330443 751089428 793682278 883170699 275870964 932622511 676274902 820326820 171934762 256206370 565646161 601589151 395918571 871882451 698929220 874642542 633759183 753880532 583428363 681886866 724345728 875969431 267147097 835670493 910271069 919427086 472746227 571961109 482300580 901706100 883552050 890864352 731599245 893856942 897748383 991836750 372579153 992852642 525053761 995706526 24392390 166391471 933764539 956125476 340271533 829871639 18946139 687804022 63611130 89132421 414380548 719190891 119297865 296825171 393457914 609067543 274582418 375028998 170730751 910593692 391208024 740739312 88472242 161958429 919494865 931842597 294698524 975280365 942524824 969875252 962024004 991614251 58053285 446544941 839636561 975339968 165148914 938694818 665534984 903096389 582182713 908403364 784438339 982686372 241186842 564464236 89508418 966819797 498166125 824015521 678950409 738755818 69229139 905274864 602006025 654550569 260999495 429185863 137711523 304307248 480835779 729508972 633748876 743656087 618363115 835970332 435849509 792626430 957697957 971326651 246204197 305990823 238253713 730960250 588043402 927950770 315663136 735503777 453531696 504802359 387265490 889458147 150721922 295199237 176610251 913134658 179496052 898593994 439149805 585254198 209526132 727571187 803358871 909673760 984684171 999810036 792202679 928212614 416922638 709191841 87362160 821834383 483070722 654189261 761476687 886137107 696130661 773952779 604243669 653151586 281762634 990751322 198404916 431250939 159357337 878725316 358199114 471927257 769374582 959863527 5826336 522109818 664815080 738105816 909144481 957375798 601114040 973308017 374865372 431398798 692678624 828355005 227588480 430124555 462742694 903979342 653115526 915930470 578654717 776594450 368926220 399026028 904892165 989305778 402875157 875459490 943914074 997125994 65564881 436897924 557592508 686570528 417550553 647882363 723076755 879388473 798545540 990696078 575981277 769145318 349130181 909808558 868197669 924342638 904475076 930009718 820439111 930704333 591842675 776220536 783280384 993609562 132110788 843184656 100944440 305849520 704688689 946472259 656393495 745598357 803561590 891149355 117609699 323755725 194612469 223974572 572096631 689657593 374728739 849467163 621650495 794798772 889143717 988359449 935979556 966672815 805397061 847845550 296526445 455320975 890251680 910286472 92407082 749347336 381659773 617305576 945745165 996609770 538494041 777832410 79890996 650979415 896800438 909945313 902743162 913946776 743743527 836120831 105791807 309668204 526850037 870969493 510839996 680229022 612109893 742387294 148689269 604461916 780777854 828607387 748491608 953218287 681010769 962063540 865713109 925333959 870465323 955964330 73207947 746603310 608928300 711352799 227609984 399101216 375615500 845629414 568102739 802967840 259561035 473109899 477159100 977255833 173366610 624333782 191200861 616971561 777108258 967299653 389944764 935300606 181662428 911286211 790624542 904693201 538152100 662584796 353690645 411753198 593456001 695037339 22485626 386955847 738598275 795897291 865555713 881406566 327618769 966147679 194999124 808418287 564736853 862903066 68514364 275219759 385338223 925379039 483762349 520752257 590342144 982902842 839905907 851752309 941166569 962502587 778690185 973159281 542826360 699785159 477903076 943676021 740477381 871355433 117232834 428108096 947014808 990370548 242360525 302057281 283242949 950715995 114397798 569508949 288159195 637279404 710863686 803250155 657904051 749494525 946154538 976760553 233161745 832612850 890537563 892991266 45737062 183568335 161815622 401378836 586928234 975432455 957448486 994790233 179868535 263475090 442054603 945576403 762814791 771551048 640540820 890983181 590336445 969452918 63059568 569494327 858667406 863119130 209173273 719790631 842337490 952547844 281813626 912697672 38111403 817135326 565657863 830776311 609784480 913481571 17323706 911591234 269665147 697773201 268810176 564636191 684878077 717438181 570480763 711193283 403505569 950075044 540196038 598556073 623808030 738073046 475310615 529970471 810643264 830735877 646263266 776447230 756084582 945117988 650045816 734426477 852151477 983828561 76291897 393176987 336377487 581931618 410004267 798995220 548043746 808585787 647553403 885850304 327959811 355041423 781631258 972743916 442142027 783398446 134931557 388518639 124568624 295865254 196472576 600957155 593067233 848411643 934033309 982106185 374992031 947307661 933678538 938636607 756174351 821715426 568957102 608245355 342521621 732518607 764601187 810719919 395317743 489945021 102377809 181249491 458784129 461436901 111144065 386239333 965762640 998505145 387631272 721353599 448254719 516974040 268316816 497899654 96637921 321599968 497429902 578320093 994047493 997971970 184608961 314913057 67293321 455279118 753422573 820655407 854048116 979080861 357718672 533991861 174941317 750259710 819630595 980957923 988572269 989486829 591253981 901756838 400348417 835932336 373577246 462085322 500954968 574194691 439589183 649614370 202682341 309431827 558595902 821969389 257953683 896823538 141345822 241540384 881138275 998960293 2572383 28053126 945521594 990019891 575493927 870293420 574806261 724830838 888365501 994787488 833910418 931367466 71155734 945952948 920734441 999269434 106049267 362386449 967201897 975289328 295508929 319584104 227336747 955329954 114409400 728736659 855793667 934455747 109085604 995252043 101354869 397219142 563700768 988789123 606777139 691206771 946132349 973030357 269288670 568847018 531454116 945200326 534115242 864452365 521732071 824284269 538978156 806382486 625363196 659158557 588989267 895885336 986705341 996651040 453973152 699287614 634937949 985121280 813105340 884690855 930199011 996603038 574420622 988796283 652999536 760398538 474540152 633293194 562289897 939313856 10858207 360387497 513035554 839167173 7280552 886716747 975221190 999589032 19749236 833853383 783907786 992901665 993335941 997450537 704825702 841439413 696078697 914666417 246907049 525950322 559790383 981268228 864887534 871675023 324628642 929937077 717241501 895161944 32567112 891942712 276848938 433758790 305716310 748353459 389921625 721877889 216239085 950645061 476582204 645331251 685633978 995662201 893097882 896512596 12171063 192598630 104142513 703210105 397785063 812896463 676274720 848577514 938055047 964987916 104163648 857739567 838835280 946134762 398479099 552047609 670379555 982491967 889188057 952569178 147173326 922559159 503540879 881776618 704130872 736160442 599465831 885846081 205297389 784968610 281290159 634825365 351192570 889048530 772682832 976375319 325796937 612083172 858145320 916179569 704046443 800932600 406150226 607042194 158264310 398328150 226638564 320379688 286133980 431654247 317585678 887149437 924036585 927197101 529610995 899581799 800554392 843241847 280023544 786275553 347470938 652137906 570617538 974163768 152180027 368867695 442340232 846051319 979713503 991134449 643100558 869789275 626786006 921806541 302916749 753403639 380398712 494384212 779813624 847039566 675069883 973434600 143198663 855101409 551589801 686369737 244826446 572847891 2509498 387020105 765403554 951781107 643147801 814288347 808007857 898220074 290728512 328535236 106857461 373385506 586662544 787066767 371461989 747766674 918630866 944978665 948693461 968041204 870645879 962661269 910237375 976597291 669073561 763790479 7131335 164970126 687045690 864745773 534386035 642153592 428288139 524742388 747232826 938748176 690444320 819107999 69381180 716541567 322001475 601958364 687705853 886404958 384802638 876676732 371107386 716743982 140323390 786056890 441423088 728724281 544347412 949557747 363276367 386263403 313791873 435952749 483301921 788898484 578813730 756424248 870174599 932750179 100539542 790671973 592670863 981809962 267879268 780140238 369260799 572644513 201424715 978517280 831392555 876169637 446542552 627312665 196402785 778813522 742252089 852083029 260552390 295662270 288597569 886619971 513510502 637968753 503676301 906107670 531198698 598954721 362068034 708464909 5788129 117505980 361650824 622297531 293335849 650816107 372300621 508392870 663825980 818520428 680832471 884644556 327603697 927469545 365847745 699503427 214753197 945376773 393501013 579234181 281234639 746907764 386575233 547885862 532304596 735977742 666704270 687717002 207568950 957632705 222732586 777226797 766008038 809061786 432866451 476908074 4065216 235994737 731438029 825351458 305396096 485511617 787788278 935411832 741557109 916244475 356775707 588783133 83162365 440372130 800966622 875357397 333498388 380731515 987213221 999698758 968022506 998248184 330008126 344325969 987468383 992781928 539494567 701988735 20235301 393901313 399711632 527689925 253230792 350767364 70301487 331846725 43948347 278937544 71712234 139719177 515751043 691610403 101320097 881987045 967577369 970232699 169459366 457804242 814730441 949464625 499314592 879265383 284694565 392082543 550951050 792231963 814174115 859789104 547719330 588548124 515823433 625123560 162074099 372755144 499145946 875065671 942560498 979351280 778844570 861708390 136132464 694353626 822076239 976237656 497444642 688021492 409664124 590592518 745905434 825716737 993659245 995740038 205025615 314759998 928040320 944528442 142719938 954772503 723991296 794630983 824905720 833080646 97906179 818283703 537954144 993463324 161206986 796696770 961801228 984337337 298176747 375977166 622547917 692687719 851241580 940905193 984408979 991095553 759953102 963705711 294853344 473834097 748258238 815790157 299581035 490576933 153774903 291347313 291756609 935155146 859525318 992876088 43208409 911279120 195846540 817624672 854814368 942930497 663914016 752064488 718682642 787225106 984195186 998747940 292805160 380515739 359744369 770675767 1660366 91525432 153940531 350100230 411288323 574108893 145693595 623259288 13583009 284060410 535095759 649244662 823480083 965336884 958080907 988536814 859925407 881300455 315133847 723553792 443963462 469288214 461438653 989704980 537844743 675534269 845280334 910603622 874613744 996484024 12893455 352554861 668156049 907754171 672066800 707110165 960104846 962730067 792461188 792629020 339252339 405866186 466130824 616732181 529798484 953755283 516496730 906699204 376764275 615038027 968806735 993494658 465676633 821337163 317393847 988010382 123097731 226633349 709300522 824164667 246457333 564224913 515520112 876284669 382790061 607786452 921360720 998592571 665508217 846432530 407582822 977237187 823311053 877833121 665329191 732410085 571329975 871608544 17354436 95134418 998375594 998870231 612313668 722379737 645256947 683132158 173763638 673653260 974676129 979422312 857055260 885337216 410621836 934673937 927030960 955730717 837109259 959613302 938167081 997692380 221139993 708880372 899414243 999981191 127954856 838941625 754314453 816721309 231108809 353667021 851288380 929412704 594589175 905016396 725342845 894936584 272749339 692355688 843767000 878410521 501124337 669772804 998885767 999812980 785159223 855948009 343935467 593167992 576780552 872857828 639856109 915762755 559682442 638524246 590462610 755914113 323234384 924221565 655669229 877206551 312696912 410681506 542887600 901490370 523537611 889144820 659976019 873322183 203175732 502243711 348800530 557279322 2007589 82793398 131376316 149630986 280966610 716809113 897780239 940118428 310543969 994879642 242861467 964696601 112859556 902412413 926524922 939249127 396317069 867204343 412881851 995829152 145398602 696254557 676278970 821814049 78120906 311167785 782013728 911829611 904361936 913471420 378110618 413116198 225242094 273509587 918070946 972670841 495135456 892348412 533948705 718570046 583041828 853961781 451923097 452142910 600833525 908738011 217921357 691005949 310265041 907792318 527136115 859163521 719289289 821345713 627335166 735325780 377262326 654895022 139145544 543508969 233739686 846263577 461931868 869006190 811260729 863934987 424964606 690097393 830985569 893155064 205112352 319153891 75628488 578859263 874022654 970654027 540968215 715877170 395639151 709051050 438504218 638248233 417532489 505589720 878399156 900036464 181808889 843725465 918182935 942877536 9184961 554024644 855960238 965773056 7512692 49551566 204364959 462721181 732260571 990825380 54599784 453260925 704803720 926414076 957293051 972938742 568240496 877916633 179459247 232135135 65670181 748392392 290469287 540082944 555028773 969991022 19653569 980866303 406674779 606223260 286189351 443919484 470546082 825459378 278098346 383739297 122735973 508146712 117147507 626758346 922402520 929363949 543006565 563292062 900476326 977651915 351224388 923311424 384177790 787711676 952403746 992964046 743219549 980768216 312531293 397311231 14150528 481949786 249171661 784837106 769016525 833364793 730358813 860559814 703981365 852407292 467530426 716561134 18964008 49463322 653021777 711709443 100209865 635741040 517643368 808876989 494369044 508306156 144301809 671772276 448341014 930980167 452130736 831067361 731310677 784513078 483255563 896312552 57408428 894639129 323654128 431690946 124463333 552244459 333473575 821582964 585567334 905783040 909203553 949389743 75185153 254892007 765387152 996732333 608439285 731988636 825669342 985967304 503719512 935440736 749934748 765303394 288062836 450437762 698712251 836741751 779012543 887056359 533074233 812045958 586635028 880492820 768129520 908226052 715770012 992146825 473671002 525253219 396744284 463994476 170079349 490653223 633272491 912017522 206467658 336984367 316259394 743711535 897543968 904486246 871702063 980852292 599197339 797421373 108110817 592747863 129067616 711998609 21010503 841049905 934694706 940906617 742551803 869213694 27552269 701359834 539736930 751127374 381618447 843404681 233187451 679379770 349880556 804735300 993173790 996313309 647382922 845404867 791747857 792598123 114275002 372918702 681800986 961048670 208801799 424382663 358602139 899195070 255192810 730651638 669170665 828621338 826602875 866105278 386032560 865092658 502542523 553047601 947255086 984367717 748734337 838570425 578739902 929190973 190006975 999666163 603284442 749765144 680898758 711225261 121946459 957431272 147060210 501834384 642190535 862218748 671980844 791249553 682468453 790444942 109745820 188279133 460126636 622905861 901535858 970414103 804025521 968641629 607792731 669839800 243769235 401620828 257518140 953913644 157945292 791603108 693997579 780044876 235729884 598873221 675919610 681400511 721086639 880322889 199838954 748116602 987879549 991472660 19867021 343024126 848699978 874975398 188026384 493151265 512816604 937503603 247852140 705539999 909553264 972233107 683570846 964160542 263704922 419449307 655647771 969459603 232000079 499333258 666921345 891723630 363854594 983371011 515127472 828675077 708233347 723731643 349783368 489787301 893717866 904076106 448595473 698628443 893570968 937596256 256657048 414048462 788587239 854210443 315801148 541972999 29887997 146026876 180806751 731003419 213181699 727064797 513424470 740748069 395586170 473592526 440191906 520156195 44880281 848650948 512350219 970038459 679859369 784446885 413898637 685669193 198710799 786303963 623921904 740410727 7735760 899843401 545566770 892287833 656592587 764266302 233991974 481232292 652722689 819741418 534531845 586921803 244501334 803140087 331939076 388777605 420445803 677137123 978635692 984077339 982656386 988168957 350355408 643599031 393899635 403502060 495030947 607786049 207259545 373166696 16287278 128440211 661998717 823360712 36900803 384795557 395137392 545120209 79735743 883184144 453778958 894872004 942127250 947871969 385069643 652628552 974567443 984283008 999232053 999504145 403951618 540698722 400329629 639536752 719331844 747655473 285928935 568007813 256711438 466185507 895588656 935667029 481500847 774042200 234435681 669538054 296308113 845712640 388610850 483970502 252516351 509990392 830919615 919023938 454835358 673139668 745236560 794610235 32291282 445587703 951275881 965586344 949276971 972641067 9080448 991391102 450024369 561655285 586647397 951451649 597992042 992420432 662627472 882414036 131527054 754034041 128726021 798935749 104816250 658294931 736193574 932631878 162196397 811729557 933375188 941511925 656608842 997873795 96366675 610646433 28803532 767514337 707225464 858189556 792008187 868936753 128051756 215927585 264156379 269484423 676080224 695221847 89161119 231043517 455861997 979491582 538518730 830856270 305397597 962573800 661173734 842912312 533381821 849173180 106376292 881898632 448946737 877089630 339239327 680871378 587987094 917481368 971938981 990900035 774799706 809101160 309177568 426951657 494920963 652061560 842408975 996947734 196047145 803163907 153587632 741703961 813333573 988834401 626786590 912602082 44770480 653252635 797495554 883402257 843570386 914275378 77454855 111784321 317610398 677149036 688110836 887307667 49549213 84273623 104840965 699949077 543206558 685512338 441497111 702737617 755936823 834894374 748544311 863242353 78241275 294359868 427469004 672448987 676751615 721526145 7992473 480567147 15659679 481570587 5274315 686770547 310215727 450489341 174016934 353546796 511206949 680963806 308125231 425195969 971741174 972041054 17830264 770637812 937001477 966916865 233623334 488722463 293650281 946210800 242338697 926476325 810200379 874150091 480350032 731088468 961207963 974782732 420438451 680903560 496019641 933986317 88042296 284442510 494596944 974602546 99889143 453823598 492614279 623112970 127963837 623669588 801663840 912297308 241225689 898180248 687960647 826732280 592298753 797917219 243012965 603065802 782494846 864961154 789317221 874554654 441330542 796486274 464575429 570780368 139136334 694202248 364431956 410280900 582843498 949212590 126017500 992566172 466911028 772844645 384755483 539068194 862809315 935108156 860783227 865561924 634470317 727667583 590069037 844990941 428734600 870905054 205911064 828832502 163473773 903406771 137117008 340370151 718304610 771685050 471106585 801900762 772464401 800573317 562450743 895992018 781731087 855494373 268038804 590300562 323873741 815769165 703528100 846195628 332635918 612400803 151290707 885529608 405365964 646930281 172183117 985580807 637223897 987626468 6150397 93784224 950226200 970283346 779283958 839418844 500089941 963399493 56549447 311792553 781219804 937199600 903622101 942088043 302782610 779705879 213721406 843102440 395172346 395738651 710852796 827573260 556852938 667342522 438735215 786855275 247973384 582487504 140928103 803184504 117453016 952242426 474425969 892435831 93527704 114133418 719593066 890043295 48728956 420059265 601328648 941866537 32378883 775423730 44989378 125998508 666368340 762821266 990859700 992769556 245292896 458654307 925356804 970945812 397843907 818115375 933296545 990707678 288494568 649894771 975275192 978426721 709234323 762769996 773861832 990732556 363879588 622300261 836473664 898272542 838016975 982299468 201510503 891154734 112695514 339581257 100775081 696233082 578845259 791038090 19696207 666803282 632851247 981005446 110116824 999950992 291486505 478209377 552298351 785740254 922187057 977411487 112783504 186799945 764230366 937626526 423339658 665679378 420120884 526913319 288616985 621641707 544260325 689438262 652496058 836642952 115394379 158320512 191969943 555632866 215422411 259548902 686377180 828222740 994455053 998620530 161923873 532035682 973012069 984708361 100235035 879271718 9163834 245085643 130348721 599632489 28249872 377210818 114446773 617449853 614088107 946298539 279756909 862590839 786111422 915146297 851455297 909010255 614755126 733012939 38574554 574324600 667756785 779044164 498410296 824264398 684033146 717995453 289313985 513336023 711668630 792128562 591858359 804917187 798887627 931401526 666142729 919552854 733553524 847025408 994531550 997228289 731011076 808637098 149215076 639190116 769183803 999526819 827918797 947076770 807167467 925029491 427766145 653722046 454844391 504541220 745964331 855555199 632395703 950914670 109239921 352165729 817187395 918567049 135895246 419628507 723115521 889601107 350850585 709341166 813850110 978112451 808550103 815413915 815230851 999937252 621271265 874891469 891371625 916961344 328199694 546728356 619723979 744102041 716929798 911542497 577658407 851561315 417972696 695627592 896767123 976853240 762898823 929146459 270964203 796032241 972445543 982537279 713862603 908181551 357502549 873624400 238974658 751827135 816705145 818291080 485936662 855523436 724774599 831066585 323053848 518661008 162766158 182726489 716072926 912461420 75169967 623740590 970727686 982559739 788261661 969443473 493289530 495493293 220431563 490800750 437824583 582242210 195959588 650390015 648569990 817877207 95790183 273593472 802956041 929400636 908480445 960487533 723603226 772538976 156850253 476014213 805664018 975734532 89674139 297350763 554028949 954142382 130749997 333449042 989394995 996249153 735015028 848550930 967779391 991980543 571746377 957350789 590928484 764476470 901988529 962490816 510484293 612456469 394196616 401614945 982305292 982442563 774112963 791983760 207801517 788620958 741234557 995725010 778531293 837134757 568590086 830019137 719554721 815391220 489074327 769958153 441250947 951923832 509343411 687241961 852360839 989728033 693239188 713632206 875367744 969213794 749152346 977992580 314521385 737726543 129372010 405721475 137833333 362687387 264540835 731205246 917972674 959371054 179898329 810720486 865488576 916717183 997997840 999759619 132697944 988165499 858815866 977521270 156465553 316198915 420508720 856501684 483081750 523466985 626121614 709464410 412080589 757478056 259530900 949685811 512197224 589147098 685210590 891968177 811979237 912818780 959595062 972946501 702151893 916614637 917637179 973615167 116393296 669305254 266725914 815019989 472178074 788907460 113537605 667176966 548292962 761712845 943666092 997526851 347283225 832371173 510931405 964976593 933012557 968738961 299779740 695893564 651253338 872033115 166815516 477050525 28657887 770271303 508790656 652176898 905345137 940141702 605277405 793476439 584151231 764232774 83538399 663580374 713826044 811698593 880545005 972852009 455023007 977485868 811218957 833463440 296522872 763292463 467083728 740465026 893031016 954343771 59884676 799961765 656860402 788661710 735186860 793496777 239975020 487570222 311455632 669888362 213080136 490933954 466173753 982221748 522449647 634290575 177791055 936882647 920818363 983415641 175364640 274310496 792395194 968090017 294284050 780327110 836415606 930224408 656495834 769702748 528649582 980389149 53266273 823359763 700222959 935141221 579488397 905099800 614839917 862695825 744992925 970942271 952594038 968127844 834916488 996564801 571764905 680346323 109390907 670553344 308438245 437704234 582806082 668285804 596410816 744850629 995317557 997870895 747994338 934540519 458921087 691418397 989403225 990626081 993187324 997496946 173381651 321969102 546227963 742015111 834096395 875630141 120776790 994712052 490841741 884930556 419147566 803740859 471197423 833574615 737974715 738583808 66804810 281041792 531041622 663696781 354507325 847847873 581755601 625522779 761103032 973611365 966290469 986890702 505673786 560306573 263150156 910507522 699461295 752385686 177901995 293234773 81889286 300809810 132903708 649681644 819868129 828660581 318219808 665038982 674962232 768331780 884046456 979904041 690791840 864635924 775558241 910724235 240895262 449495589 442061104 771523193 980390953 988908374 21703829 132766791 700710939 790258409 178700453 328504138 167172880 666675520 219390883 980076153 182808082 891569845 41804599 450505549 796027335 830503182 858220833 938636545 18791146 621546628 302842950 589004474 520709514 575356010 518794658 808352620 958281772 980939090 975914175 997887680 646478213 661436784 91176765 726368614 978221734 990616042 845965765 885215611 112713203 740690269 311719917 818373722 583016132 965282397 498830113 698839750 282577275 530534119 347968813 446542795 933778278 945720317 83111180 393109106 446527493 645015511 487080005 719000368 106449746 998293605 357433743 552786643 46116710 634803522 760076525 770989537 713685807 883442341 238967322 455497990 985027285 995852280 427387394 827460287 979186733 986368516 233080417 497548622 851952420 882987626 353701550 767679116 375290229 569563742 274676785 936032839 11116888 481294837 222138627 377385779 224964431 807766514 368566177 793957808 144727350 575338794 988551087 999524868 74488307 353749326 82489290 835233537 801054294 949493041 673922175 830745497 248010201 736116699 771262284 791762924 566671103 741047553 555267706 614911405 981199621 989633485 289488085 814903561 544618702 853814354 571935955 810066752 997344074 998081529 232454236 637891297 196828165 298639087 100492299 784690556 575294622 960390138 718240967 919031686 939436072 989010879 626349991 974022645 185872990 878352309 484016612 584546569 928699564 997561397 671561326 685682402 555529765 772581369 547115368 615006873 527504770 696049445 550776716 954013325 158193487 476376889 540082211 874279159 773226548 889714020 733153951 885635399 274820680 312748845 816409354 899993080 695946477 915595916 599069473 973451972 653448566 990947288 982176562 990136481 840763602 868150918 142893764 967812146 422872322 930544094 920550448 957813474 689547982 912565734 399537704 849594653 581749538 870779045 349710100 518155283 839635963 904540138 301485689 388005084 916023412 975580614 47259244 477546589 945278166 953538495 71678269 460305337 198374999 938111639 352041830 964686432 386843484 569336835 947854422 954244918 129971727 847075413 63092106 425577160 367402783 890156188 302410009 635854398 887364969 904427527 13394452 814574302 142693386 971744196 638941407 669625965 228212114 322890111 221868230 707770738 496922335 773652315 415410134 605164139 583669809 911394055 606109735 829103710 218719759 569610565 401234605 541806103 17914822 674950976 506233228 519089217 422382718 806457331 298380363 928118460 160122830 205260549 467378990 672967352 5263573 590077367 467533907 541736671 188948048 999524897 564552536 948956264 12152119 258879860 256848940 533028596 812703713 831311611 180014398 761211196 355530849 886060991 952386289 997991562 350151097 925750360 685574242 931762706 421102862 439710442 476652243 628122403 522425238 706744660 88343281 390507007 962697986 991486231 789042908 948635522 683947299 751939054 519763413 799439647 643160288 880679969 712309203 812596944 736746620 751847682 86538390 154268812 49290270 367583303 662945223 713038129 936568663 949987299 262053551 510849489 382290951 434366697 412018991 751511038 879788722 890600485 45870393 385983558 738530606 964407481 992305269 993594630 889741387 918126772 288582165 385007467 541429419 717545365 884822818 903572314 412260047 568472093 865524472 931721494 786254033 987721512 454219076 678473506 165756104 323524472 848938781 982875756 868683902 931835889 214359654 837422069 816324788 952981989 706374980 966681093 750550805 950104042 311635813 613215083 837941337 879443872 210072748 628852064 600272021 952094219 721565802 830236281 80530970 744931426 695500037 907803266 711438594 712078109 791230893 802931562 279058608 859571867 24549095 964155705 694542751 846652675 338237997 363450326 342661649 609209354 764803222 808397769 829923634 957242363 602453342 907495240 753160423 911729041 101831332 464721036 733748177 806173402 814556643 934921046 946614298 998297954 252257555 485470417 716293233 871123478 34200355 831264456 810812727 920634923 923078864 942362245 467680278 595007353 1887961 706003096 382335963 688492281 532600880 926678010 184906274 971399968 764643239 996284283 992275548 996828798 359484489 979623929 614578346 663991032 687555963 970869577 904883402 944079617 900092811 920950072 51513690 300380844 537029141 986105888 279245168 618155476 291450368 456659857 938522594 984016496 709720799 910936266 223527990 594504952 690234513 788489784 298993294 404027095 664388450 970383802 930372638 936074180 297894133 640189618 852243691 880337240 254812443 690988972 586692157 704349881 773615253 801712663 61735872 554493702 889408140 923073357 974124671 996771349 182580915 804678197 155104747 266076456 514879084 865546688 731736380 773510804 44921191 167297701 884782358 941943411 301662662 618574378 288227385 843706272 681704485 992589494 500996610 718004819 844564608 942273335 449774372 480088119 429819827 528450321 295060096 827099855 275098779 276322050 715641525 991670061 681826658 825365067 297469616 430763925 504388601 817486691 312148882 591449766 751330810 885297295 553886725 804892030 756904096 836723724 46441375 628399534 726162151 792846438 419210261 501159404 852693192 873194428 154848509 493291733 645368542 945434304 973557065 980462971 93783096 229127082 996910069 998153482 801739010 977438168 451561764 723874253 840496958 954440726 898302385 989087217 247787625 598293932 824682728 868919717 105823962 728118977 850073104 949385973 791158330 980081611 826242603 904887449 385542975 594236398 764265626 904982305 10312354 806693134 837579500 981322117 609615404 844339315 401133652 602985990 114051864 174363076 239821433 418255330 906273472 922700410 865601837 945837259 609087754 764282388 400961611 621620175 692857899 714035633 530659393 644115604 618473252 705797791 125669895 317086608 664183977 989463014 576551888 827418912 351347802 594844270 351163238 593897838 835222330 842878166 189565728 824831804 325897162 453317534 138580771 440569913 789978425 820357978 673508625 828670770 332376633 477643595 419277790 799900033 293822015 439900124 605361555 684523174 412142526 509087426 294084694 747329583 915511173 983060991 633896667 831980072 359002506 905766606 769178334 956066330 786222465 819471279 753125558 852324149 613646147 951646783 650498081 699502217 948080613 979453018 516338892 664042736 410039460 611949253 319221266 372909936 516448687 669722263 502838193 563427805 727349417 926246530 27422154 439332191 748170983 977242697 506138062 934116648 906038248 924471985 174052804 778959369 774406113 825662757 993798257 999815699 826634265 902614189 130905747 439273202 942427454 953473341 520378223 556205545 158543798 745791371 425251615 887371540 10898828 925992831 804159920 821458682 179725091 621948999 563888873 785371968 730766863 736358500 319457228 477584269 386524819 598084843 224266219 570651363 166998513 169855556 201875562 266822069 350647673 414483264 71257588 742217255 492262246 535847792 319326948 368393546 350640617 520443865 118586117 408198912 10377978 398410451 71567643 194207371 668778171 955716586 642591382 701779568 828777873 987995707 808570344 843171476 582734513 930305112 95090759 594145926 34652646 273451614 90517024 245947455 804387759 936446460 936084774 963915886 405559680 584102207 874799016 991730461 469217353 785625991 449367063 488323250 374682621 778538729 694901973 924116764 34158009 542694458 55753471 361932949 831286341 852020283 54738006 184282505 373913223 410038163 35474059 474424007 114015845 660802864 941484846 975312435 457168112 951769749 220977630 453743560 192473798 528269379 204630213 784489452 925551886 991301615 152222759 730787608 440924311 877666115 875367759 997348070 574755646 635314262 888235852 996666816 693824285 786071310 793182996 954374310 254493889 301497728 738152404 903509348 141417342 783793546 36222577 845022582 789166015 879537643 807396301 868739594 91109136 967738990 267236182 838442322 18670544 337784233 860760738 997330073 594361132 644842305 995753626 996233455 333431766 538080296 205446750 262539360 634340199 851703561 792086005 851221763 12910346 977810890 680166114 724639318 555711790 930368707 830368341 850774132 842446066 855497142 899162717 919226651 543246175 551412494 758786899 979488121 386627626 803083797 770617947 797115742 469614513 560860270 342018178 346874897 748565844 950244023 196623643 342506876 695971497 761069824 990216908 992320195 636281266 828275683 768692902 998407852 928911524 967383985 778236676 982727271 205826250 432909123 160260859 960711485 155667006 248472605 140650339 328455630 319371202 428211883 790668317 889624633 645450965 938343810 124404187 797712419 779910815 972770702 60357215 533529823 124299947 817877715 778844768 828173852 630758109 729301192 234941378 703793436 137875341 399857856 574332470 659192677 345567958 734628904 438795657 634486432 174079186 184087047 13019302 652515529 274795856 487235553 81427065 956827857 850944728 867105481 360248690 633011256 985186404 998166443 474407703 856401325 608078977 649413356 46509700 853891283 924978570 925149813 248212184 771430994 198401668 581393938 992641113 993776402 118322627 527244148 661478745 670104297 907253363 958197887 419623184 604727989 685816176 967160228 762228545 887186761 747068517 898851272 315737748 735351931 871623740 915269634 728990895 737791155 839597641 946195999 939423079 953332421 745319456 834869192 31394000 384822816 795256752 880584028 275061842 724336628 502617455 546580567 829315789 913058496 526953590 594683270 227645630 847356403 204284191 881944109 594625400 947984462 385784381 557555124 159080731 579904371 88917086 433977721 980309780 981486343 327003078 562066588 851987174 853447502 351767784 590315442 929980095 934517649 751061853 820798279 889000096 985912705 469017399 682692422 416389566 746976188 566354240 861749419 364300685 423732928 722047378 903838337 540831094 639373984 74975157 768062402 623424604 989255367 768507314 910465324 432175273 772324796 433326492 451525035 87242612 844773433 530733896 974622413 847014116 980852037 894276365 923571688 113256315 630795447 499129329 654065430 68485925 306800675 242664601 833446101 476018371 950126065 774224322 782060533 968471941 979709540 992802174 997462318 105351029 502001560 435873350 533213911 156610421 235383150 381570868 755518997 359699165 830266046 446608817 652894414 507996154 727026775 498694064 911336913 947546593 965231031 173138954 768591180 604707503 630090917 117281108 419465863 438912158 755658500 3140248 951440637 656473389 694579384 481860436 743633623 354138278 953272076 312264838 879731251 859868800 897443727 125604040 849541327 901020739 973413765 340879302 354115111 636477629 797708734 61798979 294766754 885718395 931680486 728203071 729248843 796912840 938280689 330586457 980034830 132782650 723925445 108254038 742538765 115334164 149211066 832021811 902418227 817026471 863212174 803140195 828430375 554497861 884406942 789684804 869423808 788509413 823105765 118215242 582185255 737402153 777532648 204426733 506959629 485582653 796482577 826413280 853306241 934898157 987221127 275057103 391484352 772736516 828033155 670708103 820866166 556187866 661160561 183880625 790403415 17759482 356708390 25303222 911598418 45646803 287440616 557271938 592007115 871730014 958866495 590560949 873731131 630180004 948473465 642101136 909136185 68991083 401610010 612148968 661594997 348924293 828267826 660931801 955990987 322067729 569236034 819808583 844389428 808923070 924991206 92751473 248908460 582901748 935074067 130765215 345564053 690957450 762931917 899725030 911368299 99305771 830932658 224262895 298925102 872413244 979089090 936015574 967417620 722985438 778323392 293818196 335819636 805647722 956723456 760955952 874876141 600438822 834962491 462113692 484758612 854313105 958530809 521245653 759837808 875739249 970737387 120766058 329711772 77618741 916925492 590571124 761767685 327241059 878079418 490584181 498879897 208850789 766877622 853895279 898022285 565690052 892899858 625547859 770631052 129954938 899487749 658472827 774294376 217316385 799789609 223133790 261534804 155736770 626783746 957719593 985423202 579778359 964441395 265365048 546060234 796029810 908361664 686250022 819036934 128756451 284516970 249446184 888778323 124121034 321489787 145701689 282817640 942340725 974292857 235505449 814936998 710927362 851149403 169742445 459662921 753527758 985318204 560637451 662217873 949070746 985506091 419001841 553714731 53398326 914736772 650789365 923345486 381419511 944793935 782034184 849443541 587190168 898964834 953876154 993813232 914862666 978231724 821226301 839896451 999788253 999855706 569064243 651684594 563278326 833854448 914060278 966778867 864809312 865151651 254287738 350400781 836656039 923815658 123877972 837094949 508787711 856879648 823374772 854864171 237087985 770686149 130057843 807837245 318930359 531461713 558146748 820111009 607413112 710974600 967722785 977840010 374279584 939029991 760657083 951564488 330716233 872192253 399337029 678857207 104544448 927813718 86872232 260514574 644423591 760719952 407816416 514516275 206019860 498262253 613257236 695647249 753517550 769310299 309279888 602808118 752896239 856813167 243448834 359356103 618588922 822504332 983023564 999015644 39121393 399226735 798025193 874790049 799325836 977683262 118671889 170655079 433486185 857591872 370893178 750571065 665705726 817067337 302856453 585232333 715712616 947121877 602754897 877238826 959831940 993625940 49960414 352540851 231693260 970234529 511916525 948781560 198981771 543261666 388792412 738387860 920905678 982839261 477612 959811431 664939432 741975022 276233528 645413011 936847313 954826323 537161711 761367066 323722729 667547142 781367535 982099872 564217882 981778495 660251572 686309236 714749162 735175483 979813111 992159121 284584323 546244005 853201343 975526058 137467206 912716873 900729995 982617707 956395679 990321076 761624885 988555783 47763406 332365460 133071124 377537448 215004264 275088542 928127630 991018639 228115515 621754970 93938469 384986407 664886731 798411032 827514983 856301020 964943144 966068260 483014115 753193456 519359723 696999518 692506978 992468431 510359113 646006456 698227256 725476483 599937711 715430666 95340864 540400718 500763396 780362600 18494367 171030405 551724755 948186868 268166923 481548103 689262703 921778448 127116564 177121053 613240850 914218272 818328727 857294771 785779218 933399190 159313431 456528658 620176435 869455397 691530058 782438923 687496983 770549610 429575514 806551228 501401039 942464402 452664213 854481837 988721870 990966240 833859931 931495074 575070993 604546066 974281279 998287764 907822333 909557342 742304037 918820127 910930293 963447972 139925801 223719121 512212207 599544664 951861366 965940909 678123994 845457284 952419409 961209705 324473694 388068360 208710092 786157651 79899354 944624370 367689112 837497985 682218190 852866121 276412217 412108770 233544334 448590488 123121738 605328690 773057357 872640596 719597784 816304581 397485795 508176049 85743972 631585933 785505811 941819846 145760839 354665614 718240708 990564566 643888799 909402470 465250789 644199354 115143501 793468609 203011409 324164279 462573966 902692000 612416217 784293473 247645892 716585177 545915637 638938090 787449939 873484546 303481199 888553136 16704785 743970880 759828185 859097021 567934822 853971832 486696288 937745257 382630532 956035539 664385688 791955145 538040376 709900661 540461679 892500092 225299075 278661490 208399933 394098264 546795366 874551903 993429916 996670519 137722313 997390093 690521241 929752535 944587772 972222805 143502841 269772401 792770999 863798876 528009971 676755163 376799628 736323949 775795584 872863053 659705425 872047135 769354603 991012662 572083571 860787405 215045414 678517088 474928080 826076000 101881814 645705911 823185307 839754722 374242931 409514385 224365082 333693421 489970188 941965622 706590295 823263497 699435849 929476586 66849927 224348838 79269139 323993587 9779858 28715045 737197609 875007584 489857122 543549925 768674854 979628103 229996943 560793154 879378070 893609539 600652828 789711009 898227954 969888413 865862781 889579654 97142369 822920646 553709664 678131441 173118397 262109649 75418601 838398446 886868040 967674632 836527859 883067082 977986562 991677446 410220909 836677461 919521622 956212010 440178873 832490692 837845789 929700712 952696092 966800815 975366354 978885226 674131808 876430674 313774333 540441417 659565465 859108327 842487766 966928916 939126456 952392420 134383195 427580137 557626269 682950944 207229283 266470854 175787382 279459816 693475933 960477541 422902016 844797785 19813334 133500280 548876168 768504174 511226207 995584684 211850713 317691108 52829706 469403229 429688855 892994162 589110619 628918735 994488061 996739489 246104236 575640656 521119646 575479861 429039112 982637105 981511768 985994784 295027772 928536053 737983226 805202593 448035131 588195584 362441927 450709963 986458793 989557724 682822579 889312569 956329920 987678228 752561466 993720427 389518522 629773438 190531615 939426990 469208772 754102730 623570334 790135464 107549414 319539384 166642180 196150364 314170131 636542758 737771297 881694615 88396154 646915136 660272659 890838719 800253017 874246061 748816793 855656758 26961538 838707491 478852200 953100605 81000759 611618333 199879444 790046495 594172095 894589350 328542809 377742544 354831789 955323630 360137218 542614454 518453172 558070471 352913003 901864050 126427996 485878203 160456341 642606209 255142726 572110478 376396839 721691057 35598702 752899076 373963011 649531077 613946167 782874881 27872718 387318426 642983931 920900791 30173978 225403218 701572064 799825283 597903176 902237321 213917760 709936257 531401763 651033871 307154869 572309298 464070084 517985874 405971385 558222401 932256436 961686900 504801623 574172032 91807013 632296592 605303769 674098344 962860501 967270569 744542463 893442320 579468709 785566188 272720111 704879420 12994341 308000536 439359331 662546046 934177894 966488992 655876701 867730614 386293066 908239101 576997920 732609288 573597526 908286839 664271507 999098482 646957781 672523830 822015721 875644899 241095737 835703962 900740495 948089093 703804801 968714515 366983398 598752749 607123022 937895085 820650399 855323659 686583444 857685684 87148666 565478910 107984380 873403640 525201639 687575743 10827108 425286367 264577856 869261661 799704282 921280621 58825159 634537864 467607047 493555509 633592810 991135139 274948431 383654151 562022923 760232902 171475662 571683212 749893917 765182785 183641704 224953873 173439394 890878334 30446856 313923442 618183939 959463260 564238062 852982389 401949116 804922416 151151066 233340774 703140211 864091665 700911342 980889664 925253672 956129929 852225739 955562412 112874217 931008395 336149402 846752997 10729393 836951532 291021940 562786235 806873626 893095740 505869731 992775690 658157960 914272992 988607446 994804262 155623461 602170896 940926428 994717195 307967938 648725032 970936496 975069928 956803700 985313154 273400769 732684218 227143429 439187980 761117662 820027525 130287831 722545276 339839763 781658837 778466341 949918721 125953129 569214278 179080301 804553933 404823675 804104494 978871295 981834344 352779603 742880370 336236495 862078309 888019281 907291407 18908757 401040407 768851460 922835268 498256155 998950702 999719798 999802422 816176538 938133953 806213833 899393985 524972023 741300957 579492778 684644916 439539345 906301119 351670893 445147323 257507675 382108815 946839708 986316920 956446801 989102353 770089414 930714534 275245411 311378407 599238166 907023577 252899931 535150860 579308564 949577111 868846938 898053201 326006721 601221424 269301439 939888193 343418015 560255928 293586118 327780210 501589058 602336805 272579360 325394717 115184746 539796170 725947307 945615368 128429973 939535705 802227462 925443162 820986484 993914099 823099018 951233108 723193504 955571268 18338343 771738027 250300940 619025784 979250695 993253160 589495971 691911228 231112716 740927580 929354381 963902150 910243172 951839411 576023363 935651178 155574124 249907165 81582762 981471527 296958657 304119607 106736429 953018267 763967940 905907119 893224252 952571047 443052051 459608129 772751939 949303250 644339391 687965867 581576165 689957298 576239369 959574577 264771988 833973926 551405054 689221543 932851633 952117182 263852111 290876762 990119112 992119870 849503559 946527956 693740861 768596676 768235657 843536240 616550919 671857327 233745391 257782248 184173054 417872292 242288223 617756200 393768146 468297144 848682998 890369509 729310342 891263268 650209752 776215977 914609495 988659348 585635470 800315474 650908012 929617261 611903949 821063971 963479563 982449749 644439730 757326848 229989124 988668889 787206977 808682439 193703922 716043455 448914051 912609473 684159159 837121916 257084784 538392480 418118531 470057298 503263791 826875172 692376010 706752627 607574690 974948911 306052855 974134661 692452635 915620373 391813192 512128999 570708386 922324199 476051923 593531618 488928170 663918624 904977393 906373537 326018116 488040307 711115083 837124389 330131481 648212244 35083321 406399134 89064477 430971295 333858878 553627101 540274911 851141946 614235699 992528896 401592337 676612844 448829439 755520442 66645443 929347854 316859054 827139998 965826853 986421324 786513308 970013897 700308798 910827163 447754356 921073400 908222322 935852883 514007383 879801476 945810084 998736989 559855242 647096616 316094236 818695255 27562794 835582354 831586991 914554218 401114911 924009182 426476049 429023118 980711662 985652858 211944877 399033130 606539109 812846079 959701003 973083270 490548 950778771 145142200 580916122 637059061 930104811 132128039 155408541 287129590 806134183 42484556 426218561 626094862 996438812 535614917 985739245 749532075 979404490 224371400 807300391 678976889 911988323 944775496 945876097 924446242 981356889 280186841 939974374 884217328 990497519 984612066 991663583 831203926 831309914 951768020 952727956 25438989 36450703 268856369 558087362 576254364 621817841 477997151 764121715 230361611 890204316 946845267 979367940 391801022 857252953 572955319 960442446 264812406 846572860 806991811 970714603 902446310 940936465 966321980 997630811 502917604 544981602 865138757 973715469 732754474 848735480 796479020 905250191 755060735 853483585 841108826 911806957 173118136 299147852 982090935 990442085 471943255 518833723 469492450 608122055 18809858 949271100 662472033 749647761 471787511 772606988 705579023 723170469 635598384 727228013 895706843 999672018 248321036 514823829 588546623 851883486 754750969 835325758 331103399 424457084 985398448 995863648 957002532 985180285 584735243 938009738 760126665 790687220 893300199 924163467 939050935 948837735 219209402 986737639 52690930 379148451 811931076 898748312 531076533 964516810 567990756 967203872 101061950 914010151 198303601 869066284 440197310 678953087 454010166 607492254 949561751 966044987 368763578 588342893 347856756 782672654 975349926 991130793 273924663 584550131 470353959 700397485 591663471 804131419 116535262 432009397 794059919 969128168 709909591 737209026 753213914 967072296 265580966 661482023 860524430 979358443 881536130 937960038 260819473 733065734 868484384 984486709 595742921 904439834 427827954 767892454 368481423 439195769 133571970 326246528 469878189 765462781 441580014 764863681 559171546 664556142 758218127 803887529 471124962 958044798 166347789 195211991 822476011 954598982 707659020 906735401 264253386 800728498 96237745 242477294 45779146 840692147 734536379 796681464 928365433 991514618 737910989 915786249 14958388 929596937 46335026 270069676 908320815 997247915 541708499 656516527 920067204 979174709 892715355 993463849 58283578 191198153 953958037 997797113 296643175 509662428 954997538 959248211 603644465 768711817 990430184 996061601 964194948 985089131 196671194 575954736 228924963 369031600 610933884 748455543 796216987 950082805 279031690 918984135 500994874 965285120 126127415 383780610 465598696 466271331 513886774 950118663 369514371 922609303 560693619 913340523 589312251 730311344 224244563 503961267 46451300 515903359 900170386 933576899 772777399 960556299 412546274 619280868 886405567 892229827 115413620 740918563 839066306 933531375 523534605 775880161 916676102 927215036 630323734 991769938 341959648 399541102 107188181 645818692 275313766 484567615 480867233 968570462 921799727 983999626 483258441 753557596 539056094 947463078 981688197 993071338 708253434 975499457 337274633 562023111 352274901 413651103 164156477 956529817 846054220 849162988 203616932 995888039 866763588 910747740 764140882 923485589 147348446 396477631 438648211 871829649 215107918 374475835 657878798 724593672 707519661 936719300 869677715 881592842 335149760 398208801 267842998 288331447 973733091 992697780 976088959 993587956 762438683 991442065 600586987 794219623 844233470 940219479 492548008 593644452 794308265 797636793 502366683 936698943 787940049 837297828 542500034 991585435 771469132 946422109 207970911 240817772 757699280 830449254 352568207 639981565 633934727 968319466 491848312 758157688 957929848 999700646 873864234 941321800 930554634 956527020 204101620 930628997 593213939 960771236 40148230 715275625 391871774 924039600 935180018 993650886 28471076 301059931 434073916 974492185 326624626 905494574 185640934 748007364 133337584 681000321 793063157 997915428 772865675 991104330 719107064 725526628 604143348 765284166 560609668 920759558 946995918 953007039 756104196 927264537 782509120 824262922 391925715 932565468 170499846 948403317 219415055 648968173 408783459 969464391 362291212 878311648 280340278 768244310 644086721 785555499 662153788 766758249 151938519 855012582 303673172 426112277 719860488 788256208 25395307 180245754 850638568 978604513 168532061 386037002 921071110 993193924 324253359 346033794 804324008 833023501 411600485 781676109 787453535 910105896 228981998 551079709 75502726 414619956 988593219 996243629 641358814 849293885 709523770 926542263 211734920 688618341 960617324 983866846 887138380 948906382 557286780 637187145 63104659 217999088 278508294 346206892 484124602 922089866 399230227 423518631 270704986 879278644 511203568 778024606 453794440 902453412 884032299 984551553 495055819 600804729 561301470 632346265 145102111 697760543 117523517 886548041 75932773 978582110 6628405 468244155 412849266 659132970 603227133 826551088 246475062 516042128 61277414 205626348 731920049 732911528 117337210 747162272 537435374 568073303 928799897 945003249 397897942 919065735 688360472 991487962 703803916 957184795 146021830 813087597 874857364 879581979 985776584 993772047 583629864 587956457 72359890 708074186 284692395 311447722 823100169 902059595 430467093 662576893 67837000 280408948 923171237 966254611 982146252 985333972 821097059 863479901 484600171 734316127 870457049 986932219 461849744 700374589 182174868 415149325 733119853 915160209 260597136 924898395 529119940 586122366 119031170 485236221 213003535 393232189 23325574 747483914 469662750 631668693 358085977 747588333 839176082 976062623 34571662 267307240 320511568 464101541 552893528 655539911 679677710 688823896 47904082 573594488 947786229 957836572 382584542 767128289 138794358 957266861 266550352 283763563 82694261 137278266 155591132 715350733 124324802 211863788 334386077 870937958 316823366 617468358 503215092 862506465 491620170 895349228 801395771 863961105 130553682 554558182 793241402 870017160 233763725 485724063 330750905 984281628 700805986 980219793 771642895 942412524 225989947 468700240 761532096 869151038 615256913 950796863 167689988 316634877 528315226 736736563 66676812 631740272 160206018 578402573 46060582 459286252 171685981 645484540 369275374 924772635 799015364 976427499 127037591 658539125 492361113 843758876 29836775 788483602 620004832 792529604 291439654 749070594 569948493 854222994 394643274 534501145 407963576 807342933 545952122 829029879 231665956 826883751 793660852 870622600 120899196 273159785 266283860 736259685 956624248 981033855 320443657 486848464 466344905 506714149 236008475 369240607 869297101 911031842 917247135 943431551 413664300 629679702 42218597 299508441 957903074 964037033 168013144 421522898 227221348 393161245 71847282 826215984 208996649 353491559 795469261 965607544 322642007 825598578 537193852 711900949 528309530 803621721 274625703 804464436 833108363 952907801 257338043 508816151 678213417 794203705 401687281 863681028 200789833 315985460 617387386 824990370 997864070 999057179 926791591 936620292 999899336 999941045 725630404 909047609 316397272 335939763 630973882 999152970 772225633 948592834 869125404 953085613 913482835 926825968 356411049 420936841 142445750 243511167 955784595 957370548 936828240 962103017 626914123 884633536 462233567 576078621 953981771 966883429 50228351 485982885 360739997 488837968 730516303 933659635 955579512 975488532 479905369 850213451 441708628 946052149 468628359 824932539 942256137 989497656 216461120 258843160 194252471 810692823 681847494 955972416 260589530 839269097 289971172 370408619 744130563 903449305 789204705 897891063 496678088 593868916 405781307 988826518 170262075 246489899 765631979 774063632 265798655 465603870 532616530 733002524 329689099 394203338 946964303 976741995 513172611 950937986 677850992 678767616 317597232 507142679 817513054 980828594 969427623 972288083 493878657 810384620 735840017 736111426 729201467 943169636 661183656 811144175 897714556 906914375 607351051 677605570 493539587 864319798 227579065 600814352 586490663 905987742 426423975 594075237 49282105 441640531 536487335 795524280 858374520 933471093 970821745 977977441 272715049 489242040 961063228 971180685 594382469 965913470 883193787 975119434 615425098 764004124 116404536 342265854 521782522 532093579 716912555 881516575 176740400 287222175 686511225 895955729 244580712 417819255 353976875 546431058 992152995 995179116 287819865 375687990 998858055 999092267 149219253 713373684 186048500 945701190 438305270 613075756 36345388 202510335 503322819 672680814 648707608 980743489 306491037 636230907 455981021 526313455 336828582 842879557 944310217 977514729 311238272 573504517 836416951 899087333 11148772 277370042 563971762 981796823 831259238 989021812 665799307 847424987 734571579 957558451 401303947 649633803 682805729 743472373 215801532 832379000 125311192 899361913 777098523 898173573 135501895 707779767 426809398 758960859 792836657 902601515 18035681 836948614 959926853 992695612 927055228 938240360 261233508 967430646 21019089 452374078 92191472 94369206 518099495 644401741 266007706 990954027 8413817 101033287 360226288 476958810 217517125 486875966 137598476 497580064 220116043 792566741 333894017 490656229 724927890 997048070 981699719 992701572 94083676 847621601 518293644 862494779 916668791 974554611 165700686 852002869 412154991 713156348 179252650 577095419 655633375 989860740 771980385 966387001 617388683 654345348 75284042 854461309 153862840 771288046 244248433 475046629 423606533 717563118 173704086 443733270 806425310 921636789 139233432 331915599 982645092 988825211 745334597 815396027 879486588 963825785 592982074 923711604 249863143 527771124 862694119 933789069 787134364 907980879 156411626 907528700 214934502 499863832 72278786 850089582 222265027 257691111 628975052 687951702 182467983 770783010 35168037 786607608 188925581 591309812 171353394 533912749 662621998 876959977 184072883 620652057 581051015 706444747 736653338 918035838 423721004 922278169 55646376 768855397 686417884 961093963 942233146 946412377 297664234 781484162 802177734 977058030 714598379 975327985 801193396 835400946 615679946 622276167 306442934 396847482 454047051 892354115 14533098 465200805 184976819 663867339 451719145 847705625 707305788 945622650 376061918 700093280 32785584 939442566 506604766 906032541 900157053 956635535 79514758 564817229 179135008 357287983 384763957 568864175 784228602 836958284 794807087 925779869 252031391 745228843 497500124 805941156 622898271 739116315 923326156 986282337 18188611 55599215 470485437 687267190 450552481 815052263 449683463 951658797 252360264 736504732 718681479 975725248 304787888 567060162 486647108 530837155 222626225 620936048 266779275 405003508 45929802 383049747 899896014 974759849 202015816 705216564 253368672 351696804 898494006 965201252 99731806 433601455 413357889 536306988 853144401 856484478 460324140 790135573 306333357 350612631 19320023 804569097 482872162 589133704 855190148 915592143 956290272 991245356 433962541 850400299 514301806 763710621 918054234 973642362 741273850 781981127 838736735 998378613 543224294 993607156 754571748 921574005 851242278 948498062 537692395 720571522 825145937 835115794 541428896 996696452 791712973 822892973 794977137 851084444 327316971 695133224 441032910 739236327 758629111 905574910 56727921 479400101 825731269 977948478 914750499 932371940 882247687 952296568 303439184 360701438 915319254 968474831 27548323 973711841 352152528 685887330 766719379 902456557 154895379 384319911 604960594 928371663 312709159 524599491 992992700 996045899 793911907 975445693 532942110 667939902 540702636 583652671 13539600 374082677 430846785 686163888 705923120 834132087 698714359 979084686 544455725 674685811 694978312 849105250 274130582 343708059 755340635 973982251 430816500 481308501 213660290 369631647 847386994 862600256 22224335 328100539 953553162 999974946 734088002 963603154 534077209 683325757 704953578 713321105 127619759 563222615 979458087 993350770 480987255 960701163 426784706 697172064 764560303 811938111 8801966 322124547 977419765 988410419 632371677 735628811 756359396 777072455 440538907 563662534 85974005 553968355 867697929 982267191 605371886 967375005 150745145 243452451 720831989 815264289 764576262 965622060 556713316 641285749 642155404 786132412 760261362 943698727 858245114 877377505 820196512 850084171 158370383 669926308 698329925 726984429 260431993 541259443 863179901 929043291 574456786 773445806 559397343 821913324 508186636 859447009 101594866 921232364 698055598 939939224 773494858 879251705 119691276 685287790 187479033 560638312 975419386 985486670 834039337 850715535 690719204 732495842 487341388 544958242 595050000 788188135 871381155 996247932 265725824 632402392 869074502 872327548 17351865 621937472 905106245 971973894 750457358 817231811 781689509 839453028 336288701 767019165 818070530 869951921 553507292 867691795 991907275 994418438 416524110 953549797 495541131 502827342 48823084 968654097 903883883 981951443 31897219 304502513 338292714 576355455 817824532 819868530 283368680 719821305 315922456 402443023 67297253 808462496 710848154 973512251 682503632 881442830 673510734 733036208 782744537 995876714 97414359 970110218 878806227 889731311 25310322 431640205 214592369 296070500 87466634 806325356 248216743 763518497 276441407 365552684 25958348 328715033 234506615 322501684 826886348 899491081 360835356 721441650 75560270 443518384 602624292 709763392 789783839 906735646 21522116 850110172 862040951 869360231 258732574 408806197 436554291 955717102 386858359 834089005 434910112 693766935 702513861 979664843 544172873 599860010 88054073 459294028 99850897 324127693 408140500 624480430 461866903 768645592 59400372 763271614 584864794 672943335 260539653 384340499 695567343 883451479 98087738 886054408 822122075 842718442 276288695 378069604 663883233 883785526 276630872 485803398 971824340 994773578 876345131 969281550 589858259 965384812 864205608 897117739 47727804 897955293 116135657 144605372 193916063 917070623 505598041 780076012 709455484 924891552 470702958 937995900 869378263 969243040 984841782 985893038 880805080 967672022 226038654 895671485 482594538 781133264 141191569 651152412 812429522 969398946 24982676 920401048 351915683 472001092 927140336 997418211 570756592 573515961 388794834 467574443 453826648 878637482 702113863 804897288 541789051 782459223 873559136 954438975 726176422 920032335 683452805 766757513 430824715 535793584 266150121 760807547 271983231 791341347 12460471 309872360 846262638 922227062 823560647 853155942 973808862 976730492 427164662 552387556 3300893 436290605 52054829 754106567 671562033 928863656 69658835 80641391 37884119 229968918 595704971 709710719 37730975 576017075 955218354 961087588 553584171 662885819 907823717 933407127 439324448 842947625 634184198 798247127 397508857 621164397 632581285 711940731 790588646 859869176 211843878 605821296 458573491 466321424 631405525 823603575 601158978 902422880 299074956 649953535 386492343 555373377 441469750 648534464 174869071 738720233 158168815 633127450 837228964 840046600 44035288 547841617 145815813 276224728 148652646 196754141 258671309 999276117 137328443 988424586 583502115 998725900 393538663 763601154 144082095 397465670 989061104 999380453 488550025 986815143 991192632 992763149 926120456 948650241 840173232 915592777 150194544 918578655 143365796 212907132 631042547 986308299 648197477 899709775 354119363 757883691 511669032 757891054 117526724 535075435 545565055 687555916 517891527 731099105 263741263 981151789 682491070 831188038 209062057 435472453 365179881 426614170 983659167 993147252 898739218 922969501 53550677 926683232 959690076 979793052 275057641 646531476 543512805 775637496 116850435 131220651 728740400 834395027 959099535 966796205 918598570 967312973 506801713 620455410 768678883 987658960 318797896 397200640 505976757 585388967 612883953 716172572 729390222 776817873 186531688 826486567 716852522 835159150 447730883 795923407 257030739 899270439 972217848 991938440 315783765 458182382 134944886 356025542 415522712 647554644 849518855 924319683 838472422 872955198 999595449 999769375 725868144 927979368 35753622 923964755 318462732 783787108 528537082 965379331 487209436 605817596 13721729 822346004 609265534 694866450 319660728 751619543 118895863 424250932 262936207 779611190 525826418 929612874 174316449 239116453 829684015 850233976 890596567 920867328 312329984 520414506 122764057 307597428 789333607 847017057 346206503 856599144 910923821 995005308 143605101 831719515 124156953 554235207 237573470 465072807 850238727 852348284 856434152 876683568 76846838 369120365 575514099 784127615 662409982 985818353 257851726 430662658 208898449 701561682 208685713 609393630 975314326 986368675 480331769 490748022 109752192 752501634 267035926 538731529 452537998 830814489 232693113 564098821 715343129 991356328 698147331 908625642 881105389 943893180 985205758 989499379 821324457 957182156 398442612 684303022 444516150 536791625 200826429 283226963 897364221 968277578 25458208 291053478 68088432 108809955 939382551 974475021 216663389 612087466 401901706 819422524 487772695 998179918 301511647 844708240 63633150 358341445 823322429 930714221 600598228 730190297 443558598 749859104 940467737 970637930 33352755 52635095 601410376 812387110 289044607 411781128 242683383 408693805 387951894 809407827 958804947 979628324 534144447 641791462 975365214 977474241 310232734 949271119 359322082 375517686 187208466 810997864 287151157 781215282 834802114 959314093 226646207 713292919 257688972 691321498 583257731 730652159 359390994 556012468 655815534 806724455 805746628 901963185 592191664 857847863 221927473 612628910 443969087 464390217 304087013 312945425 558578752 998867663 471418079 786238785 279403974 692996334 670506756 944713514 548224080 584480298 335344909 420653178 639997934 906976675 712683063 874281778 519643902 792233157 636692524 951541641 751817871 811805379 761013592 777473964 402369647 845596399 375690153 445059792 880685357 889296539 733396162 918955890 473639597 595415256 836199985 839875501 351180195 548042427 521310467 966378644 811124409 818270116 486548858 842504287 85036260 954445756 861817178 874054085 893584768 899837886 999419931 999649246 180216568 464626701 919292432 974000046 269141116 876378094 310533542 901415260 888987214 970101136 560211054 610396164 712247564 899025553 756099952 804490327 406023537 898387955 545739405 988301265 95440574 618859156 955640620 990170038 709998734 865300137 38268306 820887352 319006958 420407215 315581552 905691294 502297546 687354961 422857718 573940237 723201770 796085039 775995480 977007063 317045776 417759702 899261552 934315562 36584632 530567994 236642335 508338841 657320126 964473277 323203378 384695613 515330211 852128465 224015401 481760893 60329973 886006027 602983319 756907005 603210088 961435201 797548816 918583951 90253143 531883591 633348947 887335091 744758131 866868799 643027487 865916700 21356521 366557301 422493892 808739845 539704688 832887039 791323499 904565207 697768975 732131084 271525783 309224165 721517348 854023646 529842546 900938541 130543053 741650215 807756128 808819042 866872555 998196368 365974291 743197179 694805351 701437827 685126758 873685573 602005682 805947610 967753186 969887140 810384066 906596339 605235998 638817354 664305715 929125425 535201884 752068427 573477092 754894490 104357718 957295366 960470846 960715523 454221389 558261731 71071679 317412050 835246150 887417661 896683355 959808411 662898835 800778052 837018642 943705582 285106225 463638556 717146039 999811712 582109464 948936124 119597935 578966290 28890190 757257849 27196796 670308760 769459538 955038614 970592777 998716443 53731637 366217582 978990444 986325559 916711951 960437387 338283087 471247093 455530852 798341086 41036481 121437356 257773607 372069772 251613337 543423563 669813218 763199442 451994709 962536662 593283254 686731740 367453926 598760444 535384395 622507384 435007209 957673645 823552079 909446588 973013095 974063163 385092655 739311324 261383588 890247145 147550173 628600397 239528292 830191800 167598520 181694820 891195101 947324988 780996550 831396196 142714812 186021702 344017906 856700054 127801958 907355620 276956513 651096136 644272926 660046700 439645242 810772927 880829852 976564252 277546234 537760307 911342751 964044053 771470156 860311985 910965387 923137728 659144736 850595034 782983791 953009265 753484329 862022988 399391246 441775675 200921832 722709237 365069245 991022529 319514750 605345972 349473895 704339175 931385870 954492489 232155111 316097552 933099657 984966024 198956625 820337474 393198794 627646602 847440209 920186001 782415692 848441260 644558163 848962401 980050053 983341426 26550951 502332516 487832791 860255800 877087836 952932167 975208489 985660375 664041598 911169274 409519564 443049603 775364245 898355983 542544546 962967418 913319916 917044689 219756790 566622740 7180364 295480316 242719318 564422788 463263218 866585901 79359189 311596269 326054574 485196274 593349795 726740667 781662021 915873063 130738516 285387645 563595938 917049530 641721871 966326727 331039498 806180103 338192750 896562771 804670580 956322246 228552513 603838935 589354041 623630512 133580620 499180211 725178447 860578008 643113773 760403001 31586556 854166342 975946947 998615365 379933807 572243771 651996916 838640306 12711400 528937908 160385 309293210 844739807 966402383 439881027 593027192 759504326 984700798 38497450 242317193 910899637 944407752 308204494 364824449 797954636 804432840 138228268 537785269 42768574 477321121 530134300 746288441 821522465 880329071 339724307 465694320 672700145 740342270 133642005 845013435 487296231 761990284 367299216 834134596 22283314 553310293 985837984 994298619 167738251 651564019 918934333 930211360 983570392 999346959 156406502 490316116 161289557 452738463 806913083 951342709 578193654 954327037 157810654 450886701 756150098 962560553 812040118 856262406 771137981 819363562 931684836 970560009 792119633 851522068 198460650 830824102 925896615 934380167 532747627 815975321 710008607 711944974 269087475 905452234 968600769 969324210 764442814 901644564 180608753 673022757 856726737 901976885 430100750 982336492 970859784 973930039 407719117 488938132 633771479 687724271 977501109 977622246 992503920 997742744 294200377 810909524 497603582 842010085 495262242 507298397 317047489 388824476 294786064 604727077 725545024 835269941 770815646 824096086 21636254 559933383 120699395 509553431 721168688 870627334 451365228 940760276 512427591 615642212 328659283 574325462 921709298 932838552 309988268 912288543 529445849 565894408 732709118 933296266 270861047 299945009 811213191 862640168 452938920 587001646 50872039 596831945 763018469 938984948 808707340 864221175 599293986 720297579 4048362 166307773 899018230 924727784 790138200 970312270 62752177 104410362 514213430 734636937 54199295 275693169 564894132 676427361 76720723 413356021 734119145 817862774 698048102 837751700 719882746 791109610 35489672 234569172 203203012 213304635 322120151 725735587 141347715 298578773 501907918 977266163 163430069 453220077 19157338 285844703 855327620 981887261 881346766 952324878 892967788 937944287 201983555 706555238 387835197 689664180 991683487 995167881 496299557 985183548 428573788 747184405 711299669 861531447 229415209 825560811 255810487 924099411 752621318 780601928 808629678 887243230 737678207 897210125 241241986 708290888 660717446 719761714 742905192 953529313 98680710 145310909 672571163 779028978 145457405 652423508 959038863 992143881 174737909 659445901 821295987 821626733 114108795 327523910 286116408 669723539 376924821 404214741 562024086 587169216 87236555 133048902 386266337 488900678 923649481 992663732 823399999 885745875 36051183 898335087 745516344 846349342 929520528 943787424 381062621 905643735 280691409 859685899 484858383 674881303 991059171 993001489 576738174 855907217 505173401 981647257 64182073 956007911 625878809 766603702 407717553 795117310 565453285 874517594 119209739 726461345 307292972 716599975 630332248 813695114 195767017 941007964 808287890 937128224 598587807 674584654 229439990 363495302 823317608 893037179 282015052 876576271 672330050 756901502 988462692 991115026 669484737 895043606 119590754 753220105 181838475 185245765 270161248 276975331 123938910 852453708 518756062 711606512 125323036 826938715 845366887 981284274 719815623 797782613 304945480 772841318 781349774 845857933 824854871 894935269 473618276 698742711 94179730 231602772 78801483 563885224 110973047 847478792 898109688 927226812 270753299 398026318 95359179 360406016 638131017 807939481 526052068 750974030 888460987 947866360 247872359 863678206 546832843 761044596 249648018 749888728 543685133 977844356 562051864 884458032 396982637 483631195 244315286 781296237 141753996 429473046 130727282 722172556 328007792 513899225 887238580 894273793 928254129 960540576 994099209 994845093 837573168 881756738 244140134 266740718 86300459 387727511 231918316 411976078 327558869 727404569 267824798 357642353 533757062 935003547 892963236 961515452 843014935 963291300 545857726 906444547 132537738 218839663 17449093 554020155 223778668 981890511 173740892 739390639 920494218 975255449 181976823 290730356 55763796 727208270 231579462 355369160 523437147 922818544 268512484 578325084 481374968 971408061 170856664 309802260 620661449 909528843 556877523 697909212 910173611 989579740 273275451 487567379 483556051 541494535 254850627 659132145 236308853 297547910 694362881 870245744 677410000 708380466 951285121 968579245 311551063 620298042 438291585 951104343 532582549 691051631 123350180 591212773 994349101 995904112 905165527 977755523 877729412 911134251 80437850 412025604 603889673 761290272 493313342 549619206 703217457 736359305 529980131 729922521 116487959 335613905 44708625 976210442 340384616 405780124 707593203 772164198 790305518 835077209 454217593 477695287 49800993 130139963 547002502 786732534 308288773 422921287 19059878 410488987 734535108 838026211 999639863 999903855 526763159 674473353 640444800 691816328 212293820 457072721 133399968 991328191 614397448 948751940 100232800 671974816 975672385 996567128 542811471 630083916 690246465 842823287 703199617 865895331 644621977 899198657 501294968 950210101 733509606 825116117 48340671 51759548 509228127 618929832 93214371 973889235 313996215 390902020 583949747 976366392 352648531 727883746 391747881 665194133 460965549 640983143 975053526 987117634 632030613 757090349 672308624 916133507 166155002 216474130 666264787 866887002 233295684 746983579 798719802 813347140 557412333 676281927 130198672 878540217 224447987 812625244 568593070 640366418 305799274 840400605 958792030 977706503 390187078 620734889 16894527 428298672 787125064 866385666 793558088 841461205 925500407 958729304 166695688 747759839 945072704 945259339 572022045 739696377 296739873 382275550 960102555 983748523 193038883 966212318 545380495 712837943 775336487 994958541 972293448 983202011 26461954 120158614 816820673 828040579 601000366 861466973 795383280 962863634 976899713 999352202 137878745 262650480 404662029 863097134 912957857 974424877 505501021 870942806 800278380 882465574 521205905 854713104 61354140 847894973 126108529 616090364 881246405 887185750 226072483 448262098 616797442 748708635 292206808 659052681 163305114 411869944 787835651 927392329 835328145 914896374 435458873 776405597 551028061 879779210 484592563 923443317 977685363 989767886 122295998 508803955 853809799 954773772 174989084 801717560 5051252 701715563 805070485 972766797 744405566 912210210 697946228 896646743 850235263 892870710 151739491 775082000 707769616 787365500 950333010 993448099 292772572 818005016 986413510 998529292 600755019 645988655 694277072 901959434 633521590 995598608 26693178 236629790 775789996 913618106 126667499 268639944 308774054 988353464 688183827 735586539 377250209 685272621 789430857 844314497 819054060 853483003 132841291 498278232 681217616 856859097 38493995 359792170 233348257 327217763 97288222 375656584 130644651 386064701 627480080 715563823 205680594 841527683 637297327 844106930 766996258 854975968 264276232 582703544 88999200 418872883 660861014 776549008 21005007 881648852 38548340 203282605 740623954 839176740 758493067 929960289 37159885 400413504 484078924 710530258 427446950 597822256 889692037 946870900 558943135 724190108 859946827 991099633 526965471 652135122 671828618 799916091 77026360 886164796 211742046 507625896 470804492 647575986 353214931 517889379 574859377 666427276 731151016 845414554 412695063 581634225 833955291 942562399 979840394 996877451 802036635 933896396 375731378 591763264 328239955 444727596 278882314 468569813 867472843 925787003 197253132 690986947 423126639 561685622 388294360 670693143 817557847 936637967 416372017 896913153 522968713 732348840 973065367 977920605 588806013 968647683 867622977 874929846 71978213 713985106 656512367 774612585 866670296 892563130 900510508 980155227 823968967 933568633 449362487 821844332 669331153 680801930 738722035 948793862 637880538 933425352 897074893 975700951 314071328 480651195 804443740 946989351 380770196 627035256 423922772 544746171 67971685 442868852 264138536 348124220 296311910 531803953 431041100 588136287 380460687 912612249 696712459 931354997 390242014 982628944 3989653 464873709 126561141 277465722 942534962 997543157 25862953 126965687 377095374 749268068 450808046 635782721 39535630 209754367 377265285 950402704 369079647 757898132 113315517 834699524 11952199 286742983 616361845 806383523 406222426 984866018 633205259 968188090 697924578 731828880 952988872 974394270 5352151 846000143 921105321 998928453 591121122 841332394 621575428 884338886 948972380 981100246 292093810 530127581 880965090 981975531 697079293 708094709 745271509 869861901 537797521 993222286 669866286 996699450 17412901 946523210 968685626 992446765 353646221 685317403 720602655 912181631 617255199 742693922 600103577 732493581 154254613 395042045 396861807 899222391 51126623 58595127 48516342 970868773 252835695 432467127 840511969 916190190 793467090 995329157 356825145 694904783 479142026 665680386 734403844 960464705 581221525 881339922 720232587 720752791 947199737 950992530 9079956 502428651 904413332 917220615 851445378 880108636 422605952 806047887 537963901 903053485 132896016 193692857 576426025 939742711 976257129 979980766 495734374 589509927 170984956 855648118 687235115 758562433 840093834 851015078 296011358 642198813 171640848 593838195 769998029 833393211 925249691 977376557 962357522 967487355 780740611 953442349 192953404 472353443 943754460 958494906 505501682 666868584 206282585 783793575 905584056 934820990 547671279 729210025 454143433 722609176 597446003 878591030 893417596 925645549 720432466 782395180 937515498 971816680 620330949 857796377 851313174 987500894 22058050 445267235 370154553 389653900 142026791 992991391 368769013 528622452 837422484 987088125 831761524 882946023 607501115 953366071 842177092 851937970 571335688 598739242 742826424 927010755 920543735 947910871 540894612 775105912 459779779 767327769 100730727 481203615 134215043 721859738 7836473 811765228 994659090 998864660 338221353 950912933 541204498 839503842 718443895 992085061 749257302 856753227 748578717 838355942 874365548 892237806 698417453 911025405 727358143 857801506 690706745 881969435 304473860 330407208 734341039 972253020 512828708 568591533 929389103 960329748 161014527 651587628 714499170 799469343 196071674 986098777 695210827 755991048 23687035 808047249 616117832 721145958 340932516 576369157 175421607 649014714 338254401 493319924 59573853 627875727 377329581 821884176 726048820 797114489 563651397 754543885 54292472 189923458 63993705 720190451 838422041 984631120 283223561 754548686 829426025 999072087 940055491 972580848 572125938 665383550 707775909 728698973 776937241 792583635 555464934 588828862 19190032 945702403 836585432 981459705 41407189 819498849 12002888 940053389 390990937 639719701 227477694 778705282 388062426 691855496 510385827 910438595 33304429 821398424 282608661 748540484 778704603 811551471 846154900 909646703 448678068 716061744 678158407 908734660 197787734 379140176 355440010 871282612 43975515 264350072 657061879 923077929 401572488 788500898 845576347 848743879 431699457 587573236 962674118 998595626 207980710 689121348 131188177 918858341 438749342 479937216 963443276 969166144 784173846 935817253 321644630 531746811 554917997 852039427 494087038 996860868 163650085 784222309 274607525 426096821 532218237 923577230 907865353 916163988 134538266 706618928 939187474 998217958 322595059 924151143 139280707 839008108 240418306 934125230 477335682 940791725 764740513 920651739 189473915 465977153 602561005 839904443 520350723 627534612 374913915 995901304 221344567 688075269 83171395 299954760 368916370 518573027 341308489 434663763 564950046 854222495 307695582 444401830 647302821 837267546 499232880 843393048 940460529 948060385 284920992 629294677 717864410 917552868 572235736 589591158 913506122 940265251 131102356 319883738 132386194 875293859 121629578 484877306 753351168 841540374 583472406 851063712 984382216 986182658 611526437 805727551 207914042 629979929 27482501 964917901 171050881 832936876 50865460 460826220 35216873 274092347 445508079 649233236 156067465 367727673 286692609 757041074 280323784 968958718 653138100 818854804 807901888 873238989 926609227 989370892 532819525 607303399 439951327 586792023 391588080 670824982 172139179 466623566 959155118 999530223 465042490 495945069 926786864 990175462 721019682 821893509 719392805 994888002 406831640 888434880 518060280 539155147 201434426 838871640 496933129 711295753 528604177 651514198 528811220 921350982 183873956 622868223 824225300 973951119 451325270 536442773 530368898 994949313 915479319 917854157 48188252 469445619 800514928 938910978 256986321 336273407 970358561 978207152 47389237 369625325 784029691 794022490 300721941 737596496 268930846 390609034 329682363 762487416 794207031 833394776 103706853 370352280 155441667 446211259 656456287 799429939 107138561 203070283 721893687 892299444 549150839 554991802 544737423 636989351 858172931 977306061 89524735 227910629 146375890 432063610 102007353 915890451 792048828 970852320 51422628 748397627 707362786 893669998 242414684 526314594 419046683 856057361 946140770 966925775 571179762 873902403 994450622 994682868 483398019 837828189 910524400 944770373 736635404 737967686 572240160 929623957 427016127 510648520 965321005 975178201 386546297 389248802 786764174 886722173 477401488 482339443 587277488 748192576 473613945 531248275 286648017 660762924 734158266 767633935 38978367 986346768 513672314 660619714 114688080 318143561 427209591 941361195 831316274 946025180 978765904 981048590 738469171 857324787 966255609 976553319 222924367 558095098 45710477 791611685 583595532 808785069 740499306 895819516 200080709 609259667 548401779 893960829 44362873 951043916 204372516 574178109 886198901 927719572 91737443 100984045 606086053 738644152 528439546 755150769 990197998 997540981 154684755 351299209 719231331 739685049 301021623 696787455 574246412 609009236 335146101 546527021 409950154 955098085 945038283 962638355 631100736 953047129 338888976 804245331 590801473 591866699 820307412 964453391 924574635 963205099 776993304 825802265 675604936 876492562 940282741 947411833 708456828 817237298 717497036 885258963 526149980 802987791 758156286 922269423 689666458 895423008 315065423 535629529 64450601 569193582 25510246 503945395 938514343 971328633 262855681 365130453 14052627 472471385 115115220 230975105 276121608 812883089 900007864 906895092 225590482 429641650 401058816 537219546 235698541 895924291 320696732 406422294 282210221 632792280 934586027 935386702 380907375 797211255 754717321 867115358 641477150 728085939 114834924 212004587 76508203 978930944 534894387 911498826 910837966 982567651 644042016 787377190 297836074 370119898 746932124 806876868 713492844 750413602 71139496 71228398 554149790 945606277 34853364 774522005 49610913 987716269 621745454 939553250 971448042 999345748 29702712 803166376 176914681 241841971 616669248 773562882 860913120 882085040 760992125 832139895 652307741 826437222 364408037 937807198 501343754 603784755 702573989 966008332 811652852 991798970 445346494 628002627 133465402 789686391 134988711 484332888 80279320 559169650 223506222 893402991 433945687 668181889 728261197 763752166 623644629 778354757 904708476 921628044 491911439 545960519 36660730 772167144 105048847 808166361 730409603 774469402 270569484 556425482 12499508 303822315 805600940 842028191 85166336 467489382 557445312 799992489 893066580 898425363 682492269 851462421 33969657 490457154 183066023 486253393 977931097 981038567 580514607 939891985 405952127 824432398 493743521 873634212 222177245 517343643 580318709 795921196 198227602 301093468 109031542 843583439 989142105 997489102 841740612 984895114 518481644 833848323 573580761 974590305 789143356 866618705 543664318 955835398 350802492 537250308 658901645 905832225 830912059 989909895 358648928 504302189 396087193 602906811 593922385 712436476 415570344 749011714 441582101 643525356 560091142 711194765 818740374 854236767 865969743 886514959 766664267 797726856 698867249 994744453 742200074 747204775 870305508 999289688 417011908 861933672 935809679 999327732 377845707 881831156 229806408 649077127 502235173 679374564 168694635 175003185 459536803 637301067 617475551 720402318 2465063 783365243 419119337 986434298 908319702 991256460 359910233 564566471 317691141 912574650 770801520 891196777 535009909 813934040 395505727 739732444 107794915 777460684 499067050 995469187 266368038 349286311 417743476 688424615 235974285 635117157 614806076 925371778 494287854 498542536 566136232 842468836 35104162 609056572 585661917 991778647 278317545 279355278 966694485 992713809 107875853 116971053 432795492 793820438 243743524 592219937 502872488 601111092 134248248 953190589 619789559 676169271 69025237 908294864 738944772 774864576 586872953 814440161 207610808 635559628 441442045 618285916 189897506 792897831 715849956 834183248 86034859 924808920 249695375 940683255 354427782 531558929 556836810 804975198 420689534 576667365 476266630 674074209 711062799 936366828 492311719 614624416 749961096 868475771 160587497 247635044 321812974 427730201 275335511 832335915 280097058 842959208 797754122 883189055 568205446 950384354 913614995 921701151 370273585 719578629 283650222 781693708 551054784 583098485 839947352 840209137 319835176 442075458 369898545 561752449 39393314 685733212 814161167 978818977 656709489 840836131 933448451 990473962 367676230 907419831 375174193 523030538 369138806 648103356 16361253 742675365 750088353 999539402 889405150 944005997 298371966 513106897 209545097 675171660 426228207 820242185 710201569 819451712 849886251 995434778 98455713 984122002 412691368 489040947 325491751 899607544 956895438 980525396 150480908 441393598 266057262 418022067 300378314 351162454 519688917 904567636 115836762 439396714 988419452 997831779 606654343 936004623 954707953 966845318 576780176 640674304 63309533 782373087 260780292 262033097 764445015 941201059 419530403 783362473 383715117 867525943 75865942 713863310 916056627 993966141 399361205 586854718 549202850 937614444 846240551 943563192 675684864 763009916 301356641 811404704 703739538 822252533 418281850 957064343 553749135 556384762 606090316 784665448 788233950 805968305 77205696 934008694 158552669 927712526 711033714 823257975 391527003 778808907 995510921 997977495 329317076 563304033 641379566 686478631 509656712 800132521 287591648 366722358 523821646 607188357 302524039 618351437 664358873 717208592 843106113 894787080 420689227 486802416 177516610 561870158 50681502 636360952 795430643 842999305 268901959 542815469 168064143 927447080 195864490 349822701 299985604 581419501 930144467 962361376 148010241 868449608 260206426 674950152 452807564 647079164 611376550 988328616 285151778 514042715 974050034 990825297 140934673 276474592 487997985 678523030 116112700 886190684 42396815 438995713 855819893 950087038 277709544 594342382 381828944 866932841 134525621 260038978 572393369 758748720 284279410 335369560 629374914 681077253 843866838 847250832 407488105 784037290 337008020 484998406 328474275 677652179 651375318 858785038 44338930 204851649 573173538 586082073 131389637 271881216 542515708 876676585 8403767 335001805 874617688 905115591 798430348 940601478 399351140 698935730 644529430 897761994 192994723 447845625 128831696 878406633 994322482 995506701 687787511 689670801 871422237 915657038 303068661 619179550 965733304 967135635 910622149 940231234 764307168 813618087 409936014 848320238 224531835 388075856 64722360 481937330 68260812 891890577 578394536 868086364 500048581 657309382 146677886 579997103 504677858 608434643 527311923 832252798 550538013 921026067 611618431 680140162 708267140 931546666 151041830 449025289 592257779 616020672 192024285 905896205 520347969 607353315 321906501 812405699 315746516 772994469 307115601 897996275 950359986 956862910 755501010 807518058 93632958 312702913 744794153 952855789 494965435 676202228 480605508 526865076 32981723 599986441 711259746 856444639 891124921 980810933 524437631 570384055 115262103 560129227 995299999 998369781 78860672 511369394 874314442 950089248 715906837 907187717 709643469 715947913 18187102 666810854 411824903 549095270 913955238 941892184 556545913 741402468 104708504 819698466 812153915 868477202 94137714 438735911 916347907 982471520 560248437 893711261 960865581 961951306 756024737 974124807 929761439 931037013 697272052 736365073 382410507 759587387 975250312 997046549 769830816 933331813 752522045 905920081 226246936 573155265 446871380 696655445 215668472 333057798 797141903 930895216 408818544 548070248 757833475 858786112 646663386 756484733 797872891 856905453 20550305 65422791 338216355 383618005 85534166 122587811 933333613 977729903 269929314 273859502 106578808 961705310 667075417 781877206 14891066 186974613 610379197 732466260 969316178 972586704 50065457 684547370 644252754 783685861 607379120 749021802 653647452 851030688 299715686 751150680 150249085 203276714 47512453 377795244 648866469 896485286 236635714 285062154 811655559 985721791 486901997 823522232 857237229 912139893 639170230 749303300 940928074 955526811 296310399 684379733 948345158 948362977 528304692 855904319 563327207 590142534 866350644 903035673 455538787 608745876 965231259 996761034 128753345 710982051 588899593 927098224 286239589 994684756 83415901 931139269 431769615 484239865 74698797 668561471 676014724 944589033 909614648 951167178 982834101 989000798 866594977 944888026 991091461 998343346 284158707 634933303 846622950 919110537 52799745 537713651 604357138 756512167 389490001 418145563 285122149 299704781 922628780 934129655 176570957 629617650 810252406 826832810 668627392 765837633 833056829 965515032 99269386 738696432 794428795 871244689 985454194 999694676 404012963 919652067 105632955 567974663 926796581 964923808 450307910 930522726 719735835 997151921 27524636 678499470 803866571 881614668 360548737 701234634 56465759 687867955 659991836 847625753 465888735 846444610 597758920 951525998 901566411 987554891 154305027 573427278 223872619 714027216 232354386 423286742 917822732 994359570 417944141 768735784 4928514 454407986 557896853 894100814 913458057 940567173 721060592 843230469 411362156 640497173 482057272 784588470 976682399 980770070 50054947 596072283 883024148 946883522 841504267 939250108 880849293 942415876 462879161 652897756 22332694 462480011 349689800 688698328 572795846 749374917 63038783 570425926 418726863 991940321 881059690 967763644 58398889 685341148 620548925 946144976 957180562 964525254 830517070 992119210 768517533 833365673 358656058 359616249 42221407 627654379 440007038 712777800 512673816 870163242 761939231 897416056 204345767 438966367 519321233 782115594 833700276 948593485 591508255 887910312 892773521 913272510 828009177 896769333 167445744 917451906 319857061 897336228 566506489 645062123 430681185 522100220 375960016 799547398 442005746 576205692 781072670 796321021 638625391 683562029 315608034 334085654 922330636 981327003 678145745 981523611 404400973 982996399 800710949 829472061 161643555 742157433 687102932 869062435 868206772 997102129 191357301 209083500 592511380 996471722 326581701 750203198 761360430 962034923 904562407 904603060 159029864 378757765 227245375 810304340 33078415 691167983 513034843 586366375 619415476 781437142 418234660 917847104 505067615 783707157 674237017 688158203 132133111 300476314 549594682 698760689 378409030 531695411 344538124 509802920 253199153 677532022 705767231 817312651 341367655 926051323 526084599 556224653 187875767 690944479 191110244 940284206 71626991 243151110 716052919 865302315 271937611 526255205 219197201 831684266 383322738 482305629 542117904 946390796 403305234 433350095 379456294 772252255 453147505 899924474 78900925 658409491 392787195 764064336 927283306 955914621 960652343 999322102 610994586 747784752 871087204 911345457 571452789 705857112 433010157 566375280 224207629 918165364 35743580 937260216 620399687 829699634 806413241 995948920 149065097 702111647 243359872 338436959 805318835 955750743 898590861 967525347 446074820 611646497 641029033 974031906 235459701 830375472 118964655 357182274 753091198 889897535 433148033 666784249 236248268 633648014 239920978 265004494 389527472 595638540 52652588 834408344 416022499 957769141 172928329 674613337 70617935 140389460 828535243 965064883 316958557 999688164 33417979 206316295 748653938 804712427 258129995 285907020 999747686 999986698 873349425 948013422 159656949 644808402 523329405 835982728 52417020 106691452 498798965 817799843 339512612 383944215 482987585 879381217 899416055 962077518 192275143 583950583 945151317 997434778 558810352 855698854 236991271 402123733 22123216 136061539 61699616 132132804 447671787 736218589 52023299 821586663 71076787 875410334 379690756 977316725 440398683 533351896 495641784 797149744 516933862 740967195 492872471 661209456 114766536 173989558 247578512 800149501 474097023 627181203 401566386 802816089 286289917 417295606 892587504 934985411 262987727 538499602 767532339 838842967 706813520 794426016 948421171 957113264 45036285 944043084 294714762 338600972 187266108 468026146 523233062 745559981 3059263 597291447 507396133 611261643 709327684 946761883 199569732 349229064 354748268 487226453 697187503 727130197 239417570 347886234 459505416 648123827 584748091 843824095 25600148 105908569 36039286 101418481 737566856 994516026 530295173 582385755 672684629 758784384 441361473 551835622 684823696 717588181 586531896 622692468 695243621 965734573 343146832 545864635 784984453 813822908 157698075 987075433 813241504 941988673 439117174 577707334 913257475 997990071 299874682 590561460 885709707 892363591 212360887 723697453 667391823 988362489 887005738 893925790 813478417 960505271 679829893 685567203 299619031 939579541 861718959 997477572 272252090 618912378 592620716 943427058 745852445 795596958 538204543 794855633 70371975 90794141 362486413 526579767 20858803 737366760 159865087 600483343 227038826 826534337 948915406 986246021 978683066 989226241 216007262 538319667 416394136 457354262 474277082 974899653 186194098 898091265 852684726 949485823 472974400 524105771 991353745 998047608 168059649 717297596 937900546 991971183 333509475 557889048 820130613 908079187 79553353 723510721 695895335 984446547 513670880 961551192 333707407 852983797 924987447 962167617 363071089 556237737 278508068 905245716 692242077 716240485 649378769 952983601 320289108 973074787 587460176 724842873 810210266 948071118 599052041 759014215 121805438 536494640 483038529 881482180 984018163 997679433 915970980 961870568 365265657 660122537 318022249 318323527 247464738 904411440 655768748 936942890 104056332 426076837 872861225 877694062 614808208 873076396 364843777 580997038 845410607 945983272 390037464 732470736 526137275 702318221 879236783 982296961 479434242 691608339 827043657 839700240 953484787 977141535 927682348 946879498 739887634 843746961 635943791 894266135 497280445 902176887 215448790 392724901 48736071 312549868 262440374 505520685 529547621 937381712 838053659 905343197 38620983 477359355 382789997 952792478 327836536 866505111 901408266 977089249 62158441 596210535 694006407 945497875 953077480 990707350 139103578 985103195 621754028 631406446 384987778 809828247 808236142 814004441 874143451 882944109 378956569 518312760 919754496 952081927 749589942 835921153 511157316 616305447 45467046 593198628 861062109 908123670 159235316 489425268 735285908 891488642 710401088 805153451 781928777 938491549 172829591 568158206 698986440 767119052 639628527 698320737 374854457 580819898 389991174 646123232 556905048 640978818 842033368 926187848 530905689 674592542 493661356 652424003 733563041 870251937 837678488 917465803 216514393 661073207 96346371 681212906 913378187 929288025 821600065 833139763 537640612 597525388 629358980 636109510 258843413 465595935 880845023 882134059 160640610 541219661 900534701 935395090 338530145 355983482 451581210 872114274 473610961 546177439 468279992 834416733 865818980 936105087 476008802 997679825 655457613 884741603 830648407 842455252 564346148 968010967 784158166 890507396 345786746 376901313 245471701 946745962 28364810 205754167 323361656 683835454 304377310 706670210 195465735 440997419 54248836 215282545 7591965 47224369 809092579 974958833 456694906 844928581 346944934 867232894 689393583 734775112 503121914 800930735 211474216 698650615 306856037 799231306 565661320 883673290 335867840 672450160 952957682 977917553 527789169 868341679 283374987 862340791 92364882 910640992 432836577 580689869 57317634 104901243 390760182 947730581 579854998 891657457 585830970 632166831 998573771 999539190 371129715 914412723 689883394 793110738 308033347 373326044 656261848 966964704 964334027 972446165 318279216 878295521 68838837 978912856 676171480 732454119 580952683 747423652 48615300 579216015 535367771 966487430 298953755 912161428 978761104 995024801 355679276 602595085 493278408 686346265 909487150 968780930 498434524 833655178 503032247 657758312 844908367 947703977 306219226 919340657 809810522 876394939 286648878 656164316 740809603 859588340 708357695 805074777 414621262 920002553 961109975 995769983 951645603 968685990 569215207 786767789 41898671 981867586 433516882 981040805 859534578 922209610 66877033 866748907 433504593 904750019 296501662 402892359 850320677 863447213 600865669 954911798 831659578 856572849 947435876 991404958 147480023 354647691 299429692 607105079 488289530 969699714 673945854 722165482 262387306 695078949 595702914 868673922 560763199 755975051 807173259 835729323 798543869 991439912 151307190 605524396 692096883 899217026 999300044 999323403 855514041 955204331 712007923 803208528 571292799 837979818 607565216 738490039 707771052 994185137 909887580 966521703 782551626 932311775 685753986 835006710 370699753 696376912 134267157 324519485 335069833 986566557 643212265 940450208 625300241 844162624 836534935 897875179 341213871 602633629 868552340 959352014 335337596 972007741 744513364 846289444 87733922 947885945 918346929 923665489 808032826 914339001 981574532 989026020 255069417 605023451 488664288 723228243 786268959 967911490 77537779 234307973 512155355 692762126 6848705 873134777 617959499 836215806 447429418 802741583 30353276 299359303 197646344 392134923 150110806 429380461 766773910 883974741 281693173 926940235 989109496 998160894 542839746 780212452 146981274 904268468 13978209 564367965 152302178 229342374 984453841 991548793 569854120 644341363 602377923 819923380 561682201 727103704 398542034 934986589 100511690 403324181 857330720 923247198 24185171 398903969 672064049 948419648 341534193 823960917 553420572 881046180 459538939 480361506 695841426 951385623 32896177 838392243 776787030 871208973 208869797 813251156 772830970 872952030 106441516 224675567 764616775 802745050 343599057 887667729 477567100 875947268 810601197 985418068 835255003 878796899 949585084 992040032 255351896 429357660 334888266 498994377 665111170 931982598 875025018 964039182 872420272 897001814 497956341 569895243 794724621 858468423 270965076 633608066 546960183 688511750 171486874 595661215 577703376 603928616 116849275 815079531 714353412 998166966 25092718 999623845 242547541 723363373 425866557 528703062 948517630 995490200 10017866 491714845 73466559 225779657 19681680 510454405 516913623 657846262 271050029 854009055 299604919 389276534 82306850 851947669 541564238 968352989 971756287 986308950 713566039 843396333 754974064 777768848 8469418 685525877 41458625 65771414 782848490 975098340 757810093 789780985 674580884 921418014 408426907 678851149 633580000 808314441 446048396 851145462 650692771 971061613 805159067 885148665 944708621 989140074 312293696 424112389 141691807 276577569 160390739 855444888 879600033 967136402 476477295 577386515 626630129 891425643 323832100 399180109 388645519 517525799 588120557 795766870 111903429 449414235 618765118 887686058 411682240 421234369 493688414 731218948 517852455 686142354 160391160 702981100 244836096 747564735 79807778 439358750 40053354 678499561 726496625 896079092 496623658 518992906 595872180 609852893 509267618 994619964 704782129 964398505 270203049 322949016 957447422 995797408 12072187 44528756 764855799 983831589 771604014 960149904 915715289 919943171 195800391 770263902 768624865 861721036 837594635 957471798 665049666 760871695 366265513 386564260 162003664 421346024 490119252 953305501 260828360 458770043 52386583 221451196 811563739 881875400 797613173 910422109 758166574 902485822 413515414 634750188 882822534 993531838 957962477 978779094 595896167 852904517 981489502 999310930 479394688 481077447 99256482 736106401 990661184 991748804 9610305 198825509 703714806 907963787 730888563 868911868 794784653 841842749 81283391 210524830 714072253 991622945 768260592 945790693 772389191 772695732 110193138 552216376 732488911 850365572 697240126 895038889 758136619 858837168 450408279 804760254 557888698 701471913 472997601 772566985 737357673 949957819 923230214 971366761 940286966 981438461 459690166 792503383 865348450 928108649 281409901 413451674 704538958 737088078 262089140 935791332 794096684 805150737 594657795 777189995 212344940 747959691 156859192 565737098 788107138 974606603 986995296 995361621 330093130 927239565 162300172 610872230 929119118 988202328 133521678 768647415 670706600 782920519 124986615 993713967 755475780 815385290 435908223 966088206 743934508 754488002 281585230 577208871 155044448 774102267 949977606 970818431 189381219 950108431 37868642 284155887 357257235 671530624 596197050 629188053 624087865 924305248 555747415 642626473 752492616 786804959 48687397 342276326 282521012 409690434 961922661 982723934 6819603 170810094 475175423 579670452 532763859 717930425 177237696 496564608 681463233 833337959 24009512 291654819 249689881 343118030 98240343 344331429 288043961 380452382 8428557 268516941 202304849 223926990 727300439 867383967 945395390 990392354 602049584 873256273 942708280 971764957 967813697 972596243 257312018 894103688 385674989 540264381 189645257 251469618 125436652 463813261 970250334 989250279 415136206 823769159 965688515 974282523 362980460 546193266 370266068 721018972 706493309 965105345 915614736 929928295 313102118 623181529 73113462 587092331 300465519 509947088 37587351 665558124 258237330 866297035 125571875 246294355 667290324 766204873 87490790 768022594 308779548 333695700 639815861 788631547 846368189 963197772 940155759 994227555 495609223 826217273 871924954 921613368 809819087 893403365 198988692 699813078 465123914 477438223 421102410 814817362 551572132 651858422 643428653 764765858 592060319 892532284 685633860 768227485 4890066 851509179 90319060 169693741 22896560 380805414 974262624 979869516 537356988 887512446 796859882 983134198 146314438 934923499 638210139 943516674 98721104 992281397 411809246 820345737 538571591 745590583 308012238 823902603 478060551 593543284 862031017 904243823 682175537 938079522 297858811 670077186 26078912 688034399 678232186 987811141 981663145 995296196 11426292 753793625 515926666 550758057 920761671 921516088 516099667 948671182 453427018 821954848 6175020 978061024 167045821 982098565 285266569 696688885 298752361 356930311 139439496 712473119 550564102 634762963 698739496 830991720 829815958 889374426 432878124 624194910 907478287 977962379 950191300 952726367 62707886 747496467 366623046 609436067 247944690 559391025 90747391 149816224 706297336 977529656 631562787 904519218 889598184 891489593 828860957 874866655 219133837 704759881 960046070 994928178 80143668 983231806 360155000 450881868 85455880 217293799 537857726 590020478 458144692 632852587 859057788 919186038 2404452 73283993 197710689 772671103 950815708 998938770 577385691 833259338 666333665 730626190 584754074 642888130 306761282 501849790 494094251 773950849 366709851 677812404 95829151 446609426 960111001 960886057 380838525 810335463 564556606 877185276 721961353 911351120 557473295 998982061 40666972 980452101 182886087 458530806 176339527 792535420 44741500 54005097 738859823 750622702 447043540 998096627 240140905 837985707 277991243 992156686 360066694 403493148 457046479 588864618 119835042 819204087 302228449 824212756 998946882 999912380 17220150 274036459 37284316 369939215 563921708 946314496 420491561 497306052 258525410 320384322 65166448 196606405 27223051 575105575 413806180 672439266 543273525 791554101 755178615 994037567 257847338 320749081 940015222 967551603 342031160 858695540 320346480 366458070 754655491 789827017 947269648 954096575 956159027 957760872 69220768 602987545 233871442 620919511 57124838 286255676 956513255 985811200 785215948 916555162 435729866 449021004 681672362 989403633 414104682 943849892 205080231 222553864 387833181 804105921 174259927 768754746 2819495 720720515 39562010 632559442 984685055 985844340 451663993 882644427 349348550 937009494 447449828 608744979 833949906 900282660 451666366 696985143 264690125 707067632 517729309 657715423 582844320 611309004 781568841 838968744 717331893 946669274 161258867 671913389 19880021 460937775 149278776 892522010 599899352 611170912 167262384 956082840 279604957 743447100 639412082 949179560 546249419 811810356 725825767 938091550 596987857 625071372 627909087 718553762 687683847 996638200 774270810 868699160 320768710 516880480 292425032 522554399 70988744 898504738 692090472 912917814 337709594 833958806 373092045 665462724 929731852 962835974 664191695 950651286 285118339 449261060 852623610 931242196 79064725 754767260 792213222 833700542 195000051 552710717 833902265 988967443 62592390 505280569 268281367 667411255 714747952 756392918 852394881 967091369 619691099 841542140 236784261 798974300 337279943 619262668 466794782 725404652 764021572 974281562 989471440 993355911 769342629 809750734 981643889 993025329 613773751 636895174 291594776 431530351 136231879 712431132 491835534 827828019 525627144 969041698 669919859 823206250 471817588 481290688 610891790 721439703 457526170 882085263 88502813 164285067 519131222 534970276 510076984 734876598 680533651 934493093 970527650 999614283 239726058 533938221 639261425 792034814 946153403 974489450 6529735 813348794 519122065 858128327 597294714 997771026 144494219 293290448 120480677 955456558 273545460 648049470 606407272 874929566 27474281 508146924 822724337 890529272 196410639 970922591 343190726 942079944 536166237 752176990 831793203 857124710 670057989 672148355 964794690 979356287 429334221 775495483 627591603 840295828 462526573 481552421 274044841 425151088 103017476 528230658 704380154 855473664 301636872 323796763 626875399 901895429 987327641 997717211 438310343 807996420 402882336 491921003 765010520 903343236 884214741 892412299 682533576 920095749 77655175 978551644 991720452 993876430 624339978 629997693 492849600 817032846 886202969 909560593 589006299 843362603 122448116 713549058 931019823 957259110 148866024 836691599 184679566 649475970 560884863 799260363 239344807 308103672 969317626 999976466 810542061 938965145 28275163 920072923 545891225 757449174 124026353 175187966 918494244 991686679 237612828 927098847 747203673 850525895 360481095 737162325 982274136 997574338 837449548 958845807 195451279 632050570 421727017 742148988 583455173 624090703 851213514 967878404 969400959 979190438 764249631 845684131 401835327 662565670 337023763 651125110 778385385 993326698 896579001 983716187 563038086 683382934 150707106 180173166 344380751 724247148 145941821 148808858 173665280 303536007 846070834 970681590 180091002 418696605 663203381 851164483 307682752 377069713 276955776 911083415 514607345 668793726 907343715 965183707 765251632 856114019 980584449 983873165 720428868 946330713 235723974 668735729 671618017 885587832 643713578 979329606 35930288 342692350 671853582 705810525 612211584 719416344 365950999 377839708 283769309 546693400 837419522 920668551 493500759 562359616 146819765 515570555 58252961 266333801 895043742 966658406 852342053 889517318 846846071 885437061 903224066 905064319 711843255 861540308 839443300 977081470 738009469 742192686 526677181 839032330 202783777 760809461 487467868 761886967 288824316 934272615 821713432 931328369 615949299 737354406 809113542 851791190 733667249 969247974 873291906 987943850 671490745 962475413 968152420 971883522 578188571 885287057 712347133 923223080 121812523 535920823 491489402 670214739 903436179 955051405 994408888 996941028 217515250 292379165 201980405 413132227 530348499 571323139 485766426 975993864 616376880 637163017 753077995 885830579 468471985 624629602 112268186 671599005 698227760 870724496 702052418 815275570 171941971 806135064 364600869 426103096 462164122 832138504 80084935 210647943 481337911 996173185 877520379 878573365 789716077 901967584 772549495 954328698 552146833 747370942 907465242 938647224 131600791 946021358 52195048 67002283 862845072 979449070 829493789 943818040 363440078 736084796 941476211 989515088 525934165 574188246 754564014 796055382 549819709 989059876 241200681 828627111 465567420 834005383 321524175 628640122 252573445 977265821 865809382 920432893 600280538 721612054 520905492 718076236 45014722 74692200 36362020 706111092 952922103 983138210 708183683 786963613 902104555 967675780 458493424 534518600 919804979 945125482 506856824 563089220 431835617 581610936 56391481 131604353 542829881 937491046 567321795 627904681 93186961 215763657 39135492 786034609 255396715 344228987 684781492 797317133 313197956 631518932 23579207 697563254 186252006 654784181 284088091 649920107 629776367 739420106 999030968 999789474 507951857 972875996 269859610 633613132 32398813 473754278 769449290 888137066 100562036 239461580 2759439 661329600 937000847 963216683 522992879 777524888 767570589 956087566 151448951 626150323 669063467 790626100 501748381 586542534 395710805 924663686 755772406 895792652 110512529 216699576 268374766 389492840 358283841 591442215 69723371 886407258 787785502 806286610 541626399 907392230 2732843 610326919 227161664 749209930 123805901 767819070 176580150 886020053 304221166 889059662 878230304 950568633 852263035 886213086 424763794 524569201 785678566 864892176 383872109 637955442 43848033 152740938 744421071 794601212 80797766 149958294 669742239 807604235 639000989 758950070 382505308 660476315 403462319 703592730 766363523 835982669 897344241 948324528 151660604 546410315 62027086 281699524 514570244 557108459 489933912 613880043 47585135 665005799 195804829 246019547 614239189 714103980 639079458 888774422 124536469 441829404 34010889 138550338 164848514 290649441 169580875 275727998 739743497 996316644 142163253 567372302 740805839 886768757 358852143 865132398 678166202 802540899 27741506 268544963 281995444 779703732 449573199 848768486 609156030 834524468 23500470 465711899 123285679 415020712 151076528 503117101 841689336 997536295 876522678 953049856 516146306 624733026 417500989 427036913 432357823 829842434 851886878 976123289 669000346 976307972 508678534 899647208 803942792 991586792 921509940 960577855 914842106 921329189 633991844 757054326 53460747 101483807 491990534 586864072 497935615 520937095 583804786 700439899 5455315 464427378 240954726 838211315 491183165 721436864 608973171 790830496 162254609 653876812 30755539 940861388 460569022 611509008 75089028 774245840 480531642 640919375 29591366 632450650 363301904 880443321 98802875 524349614 931874228 973119307 82039021 717402023 277058371 482137561 850616392 864533649 650390673 825095439 831881394 949633450 836498349 920698965 287541987 941694776 437799363 473315281 573653183 644912173 46038795 643536324 23150188 396113022 985475989 990026056 916004442 955849612 157904232 930635530 170282070 957672459 211928533 705175387 986666735 986716252 329287198 555639504 71755021 905147773 741747915 985407957 586861742 600009291 617255250 705925306 504933922 964584849 427008929 807528563 381548377 569598616 944579160 957738367 44289594 728867727 276212432 781375035 349113687 447248979 709601328 752883788 161739526 807521005 744803076 894531377 42980705 824532857 654567525 801323333 760401435 925222097 466384637 920822307 245027039 457989832 370564101 948107403 158436405 728364519 899007229 930596916 534083891 675886479 482265271 736287402 810877310 916641256 48802717 448940971 796267711 935134105 163040589 412362453 986966870 991933148 854922944 990312818 419564892 655211913 694684988 891961783 726669744 852639889 552278107 619011273 347829208 804720778 164657151 611859362 406854458 482930212 484127938 651906651 463135946 719145135 212642300 311989509 554009022 751745428 761752412 916870735 686542144 740551443 521491086 894695899 903082270 998843763 817368223 839910145 741557394 904117150 437098160 535620844 111507646 299286185 360991784 875605331 827860527 881995527 168441556 964045546 93353335 425966247 31547118 172302307 830491817 869469123 551926979 967087138 255979291 553966740 451195430 855484329 272225470 914714619 283839801 379580697 360652196 573937761 883449219 975122400 268922394 781366047 681625995 812199172 927596211 972407998 302751035 700096037 78737680 952308976 808362911 924091868 370467280 473042118 812141175 821661170 278541891 601725115 913967363 985392650 528476254 618865988 774630991 802330767 206201879 621820247 588493753 704940956 205438571 971204224 467849411 896949102 626145754 868561980 428759109 740383447 329534474 655736498 244886530 681782954 668728823 715232598 23594058 342757142 841070183 852904010 470121863 599381577 421200722 798530193 458595842 901592690 803484386 849107376 276482933 710705292 50638155 288887270 565682741 958814888 527920339 863690431 851754480 903458966 597917364 731212480 699494389 771348343 581181021 869778180 518776716 917597037 672505347 696195648 612609533 860429469 863370385 868488903 188620274 629808375 789115883 899058800 258990525 970211921 604624047 996234279 856109519 866347946 213040415 719564192 908564362 981942969 509685334 726486145 575206546 584639399 231651109 309034493 827374944 929295450 278869601 305898343 323183323 956076393 112203797 873940839 949021271 967843830 172769012 219776022 746013497 926414733 435867235 663700189 991267374 991702449 17681362 533713660 637643129 643125722 711763540 923494781 342231826 911190496 942468025 972698383 166125241 855577421 161073560 709362570 212992210 328604235 288446327 686214284 272255863 601517575 420064546 650846857 517675424 942713740 147603655 188711784 920343328 945204751 925062763 992387536 599901747 670507536 269536334 325218780 641725348 643953092 662093618 695217294 377905491 977424854 83622532 160684065 305413926 536077118 618573482 684161234 611087627 877934649 93494659 590481440 952971179 968069003 723595307 918669770 846493046 906929543 833031688 938553095 145898772 960323695 122624958 952509806 82383180 718875681 741569615 889676960 106682169 618695886 444770480 596233066 615076701 809651829 819057841 987342129 491260048 523798514 938875981 955557183 647099515 969381366 948819954 973221153 208787476 965590550 425728751 649159683 433089485 577237756 887512311 928738780 789632669 970686113 147602930 731083372 876419643 948334489 941576970 961051346 294991042 771044538 717150335 890448870 809354915 992963408 777596960 895200625 320842330 444221394 410502197 655631176 170245385 315169757 843310757 930511522 214550496 399052913 158088269 391075531 329180986 363964991 187531034 535475426 608822049 880231420 439972958 977816835 51107774 386851995 445541863 979882849 220535760 976541708 359956826 389088448 396619687 811099911 418484504 615441735 709685506 757580155 944038464 993922827 960242377 985500062 999632481 999799067 454762723 457345691 71082602 769573907 473384698 589251021 258158966 379224265 584341751 679161168 570748739 918969574 528363563 689178939 464579598 767221772 31980792 170720786 423249679 968396622 915940684 999840150 777805399 956304379 594689373 849468250 781549045 933705950 118553396 479358736 869350199 878032484 654714762 916485528 714730370 876204308 544517199 618732105 992009334 996508374 328602616 508870914 924222088 971685832 270324315 679762269 695255226 991101742 454416458 738535124 466017029 975754650 986563333 995430322 447210599 947088823 982950852 995191994 830033037 900654989 780987602 829693583 158414606 311460626 605320879 923271014 836524762 875835414 977321263 984859889 214385252 732423665 105088740 437999451 570378883 736147768 600431763 878706806 523078989 898652373 571211058 771179335 868362582 882159276 329647009 725981570 111158629 597916769 87334436 878258529 724816142 751236964 18517401 587442352 808699148 858854617 186866951 214618852 992406588 994051741 561790755 920449552 797392570 942429648 674308929 994887553 609622242 899767944 179917647 340430712 321182563 561406827 237165396 942334356 7494031 484562499 155311489 494318159 180870865 615504918 135909126 592861239 595544706 733215878 62095778 922032499 787631010 933274656 520780306 708272794 707997987 766935609 730023744 911900832 287096436 330385851 950397542 999616954 416621567 492876941 435030495 975721826 776833316 853092406 745535594 860449886 611795460 716290337 667176291 980221537 107948768 632375310 950742999 977088638 829904576 830750960 209595844 661361836 780899900 862680921 430133236 998343378 224781697 480908522 273163742 298465660 248359052 356238814 848442063 849694418 298460516 436938134 490214907 996697003 366293782 596116047 23273140 55134020 403167650 794552406 328285804 397006029 713127854 754895193 105453580 759998975 261366543 368758231 219590500 769310177 423853551 473964917 70702346 178766398 341630320 528815713 306610142 983896073 788371913 797544275 947799223 999373655 167173349 470749318 216028749 920793627 720687053 761568794 582345939 884796344 719160706 891824389 560329991 688974445 533984930 875293159 226374220 267558400 977659241 991771431 999194856 999978698 150113802 445983102 643500404 664521003 872879684 995830588 903772035 951675622 99508195 780419746 228405040 521120852 230754164 810636508 196974264 854736011 145718164 193822638 514830054 931385381 845994784 935747496 479547637 481945848 633831083 911313553 670767828 768396369 973010190 993249123 811918240 825882906 104410032 130335209 621487420 658418441 733832821 973680815 879988584 994185995 951976131 993892099 761158242 979232460 730413930 766028233 292961836 724316163 494863089 769942962 174935660 246811753 264482231 682593640 453324345 738934198 451036504 466294291 156766372 523873883 508487156 576657458 701555994 878138127 705201358 876294502 86181154 597567743 239839515 518766948 710832097 881072076 827211520 973915623 889905252 998784695 624705566 834212821 841002302 980599383 315566365 831010177 849220313 923000688 581505399 683589448 163456787 453526569 781459154 978134262 607627589 627349788 72647543 406634230 441206079 640398330 417109928 959692335 557428937 840003328 568596235 569280744 750857451 826109765 427996604 973003995 565029776 869124957 280162448 880334614 58270859 767854945 646987719 740826111 296311986 998273736 938910744 961616183 131883225 242694314 863953829 883912734 194658306 300896109 245062605 355324339 113805284 356065295 907436383 985893217 301467695 875112671 778803179 787071776 458207575 921194008 490659041 902446264 171665111 259287449 234611152 427659406 339644783 767496878 339255216 493238407 612335181 846903209 452789392 646199085 247676134 389709838 793383396 903275737 179912392 793128959 375265648 709501742 688309756 749471375 131138432 468618618 475259146 545015958 903878636 944319218 671796716 920299617 567507327 760400436 663679356 664056664 899278979 899583143 422428653 619000209 498394195 919436353 133938145 144049060 538380705 766318740 905081671 997873035 168210624 764507415 43969073 441498851 632312982 651866601 969371896 992634559 683238487 879763828 711003431 822132880 885928519 945245774 158308563 376974919 179582030 933629799 83325167 100121752 530812647 902876840 911665271 973168964 659383274 891209225 851480078 969648967 369699318 502348807 48407898 280364106 288075038 657549583 613036114 861316657 272078996 975150039 167368541 937123788 839371857 876505835 536810993 806038939 272549251 786607007 523531761 704326720 683225736 799466355 862129807 927830341 272735138 798917955 43351962 662523044 697551538 992371316 773375141 885524821 728995823 804298305 936405264 971974579 378978237 627955300 126760649 211483147 549599308 808895466 271171589 964222159 646542953 805537212 850837175 899012081 578925947 931485103 320990868 784739228 677863627 744370937 905812366 984931232 122275662 564454050 782347804 890788055 594647928 968976329 290990896 678932797 463634720 771877190 92122794 109385953 900147577 945789900 5628268 686909304 538133425 612388096 459549553 771786416 229772881 674290052 210710941 954738615 243822749 771101543 574698410 826418846 646966195 727060740 460422531 807839681 382667850 541613092 397402051 668623040 554496605 651754764 700225647 947206433 226766161 923264385 566916835 808979813 399782935 509870257 240978898 907783836 32187021 341292227 679203048 845932564 270187085 401499978 768672775 890344199 666254587 849220698 199239440 277660210 107884217 983073332 346042067 988087557 919444953 998681915 23710586 591966418 590509496 981866984 272635991 705162156 630444314 775697974 984859235 998908713 809835039 971436975 605934937 645383968 477491054 573085351 977178984 990423802 528314638 938895979 560940211 665096986 851602953 902170849 388116175 697195526 876120407 956647981 653452585 778752835 544472788 592757581 866506030 888976935 241557982 403080274 282407801 395271348 75201575 785730991 225142143 841859119 824400930 928962987 431346332 585439014 404300639 998204608 415008373 661218410 355069978 620138457 263314326 505492156 452796735 957597446 481114752 643938221 603456294 634162607 221259768 869867259 708655102 877551954 309870283 334384737 841466376 884655058 406918428 780507899 767531384 808277435 446561266 725959788 104051739 876366273 746092149 980028123 650067915 839171676 715160500 936587124 323584000 340823193 37962508 452524994 205142601 279954787 24707719 136778790 992192535 993766390 610907693 819257120 440105106 482592866 85223193 98480870 691958338 736013605 918951046 930279310 389936744 683001674 632213680 818036128 988513660 989044953 470841281 604705177 838108920 861160492 748785331 876145404 189604536 916984952 576439867 970471879 336772421 940098355 825834967 931080665 808828902 933280825 46324874 157216853 173291967 262598540 470548843 475272045 800859294 924359056 598454807 638514025 385582889 806592759 985640991 990671533 823049685 970451591 205186001 308304807 748321909 932696491 745038928 973066549 49481157 803535436 806600928 988413823 481042476 888766977 810554494 812982515 238842344 645187388 650196934 862654378 697425055 971817895 911537209 946252134 802692010 969313635 444939958 506327382 858307498 964906335 45797111 327205864 241853860 539343847 491051751 534641699 280470638 864443673 268704554 877917492 90643337 919151350 15334747 799864661 285112648 856435398 904267992 999428093 867407459 975996185 297832779 715982720 372000168 383569272 221053207 880019793 653401113 820358850 9194705 275026175 189032099 396432934 229681569 386048443 700107008 718331366 117899631 718047258 915520480 947136879 448301245 920841329 399333841 716601398 91894670 895014091 774304815 926032952 692067224 726370500 476764653 788673723 191588927 596296924 965400943 972542195 885412406 906959806 20124614 175120955 208692900 699705715 498322028 949804173 741830163 782269414 449354035 712723152 794191126 942673513 674877760 771644281 507610251 778935812 779764242 965576364 915049924 946529132 385983719 671504430 247636253 826947365 903534299 978230659 531059746 810506672 15997896 977637583 168793876 391264637 296524049 357055024 984454966 985131984 758178197 828601866 25214694 579761524 413027472 848681358 364070398 485649620 394789985 856062790 286502846 333729727 290426858 997442070 813934607 904537723 763433855 937557565 54733480 982678335 523998489 616509931 94591661 661580677 32990969 372893123 853787928 963924576 111301897 990410872 73407121 975785489 374797792 640761519 312051561 973063718 769474373 866477775 314441101 795774662 929690006 963690873 115386278 329732640 148453946 393796754 736914600 901026249 492842951 607672563 552474543 989813237 688946564 897893769 50466696 397460779 463069670 675922075 418898883 828132382 949016362 975986650 216515742 860013315 158520697 392452518 285079817 734058070 339672723 504529775 180412338 510746949 226837225 461507411 577820781 638442265 755481200 829240157 733971494 839511062 854790854 967906723 294925359 704407097 125997278 296759213 824456309 905918599 703567292 772675538 337194980 777873568 380377576 539796935 981940738 997970269 609442724 884399010 18215444 984913058 783285462 890215629 172504570 480568344 714354816 722446018 870350818 975518867 191394219 436711364 360663873 964375398 216243312 309524693 827596893 850126332 453369751 525515374 842510389 949763540 768847810 886092329 372773453 403300502 796837069 973646230 177611841 744751426 497155289 584343638 574028847 682476528 818393722 862783360 93409237 957164489 75209045 906201143 484094174 900282200 920044783 928144559 740955737 986457062 876312425 916391963 978764166 995154141 868251442 897558928 71620189 809230820 428460741 772598902 613032710 791575642 896081031 967545550 956978732 996707835 619344657 746921538 52040582 970794578 89772201 220207867 643824885 649074291 321206317 361458021 371903080 996873742 262856486 394923496 494886690 997610163 821741301 872619172 595976537 719404890 717387042 933123341 663121412 734657820 404768931 732802346 440006331 813944681 530887514 902414522 223046661 250661545 489330216 847020182 318678181 678607854 181213852 946631051 990829329 995936976 118681440 365595489 447860734 776165147 732539455 847642766 423035714 532504516 171029373 721309944 240234488 615648267 233936486 369501311 225550767 528184297 227518640 627256148 958673946 964113897 825279548 897290142 205471517 268304832 713448421 732866058 701706308 931625405 204467846 838032711 584709101 813164053 130007314 194612841 128537289 243291169 603731730 757708396 926828026 933301372 86502771 582107731 274404215 793600518 909261580 992507085 920300583 996050113 259594186 447624584 213953265 314646742 109546014 172983787 763932083 894424688 123626860 315000883 288332152 790620993 76471415 820443314 355304674 883292945 977710867 988302015 538109821 702611617 190068701 199478532 315998498 351975940 5389187 70493633 585153855 875642422 319719048 436752380 524818114 904427031 867547808 933198792 85851187 842814006 531597124 974429032 541638654 814691596 710287710 767965684 936202978 990630597 165340492 746147731 341401828 525647204 404042880 799158785 10513466 633830991 158865350 895602419 580472040 794548301 520181658 876355091 554913752 969526735 784163153 926377107 576796630 830747837 390142035 441014702 191338091 747743900 18537874 355793289 466246463 792104862 532441559 883505330 445271754 881112744 204761425 922251965 517934195 555377977 623784013 841816549 514910788 783020228 167146581 885882003 284894033 823459369 207735641 526885864 834946136 991505345 480508813 978850433 870199889 960533671 786690095 923401912 950795312 971973633 979646913 996603737 246769723 320388372 759363621 919196786 20531556 517667253 22233544 33235256 708385726 733706324 502783221 639843307 646681273 786476773 527128684 534694946 973173272 999021336 129828195 853991375 348037103 780302261 312522281 437629117 319262298 874681819 785051283 907325238 444881673 609386317 671643148 766880642 903232676 944496245 918303620 968106685 929473150 998686952 724339936 969649847 59304773 220862855 88522734 370239019 985440864 999708809 514251030 898638822 281020617 387578950 494589092 532489021 109745919 591213159 566942300 870712320 669728648 977922781 54099377 322167845 253057052 386548124 848304180 948927910 963444446 971082514 385527451 862790885 255344951 917978053 363458150 371193439 11099244 114037171 279398277 804517188 34310237 117559128 176332107 841117037 193797847 257327042 726480946 859002095 182257456 621042629 282920644 393079783 717960647 845794503 137498952 381493601 86784733 302163667 608919006 869705861 875522655 923179512 402650097 705048404 102287484 214290458 873625840 961398878 279125460 885072569 820581713 990500581 648488583 727441392 3714669 117772994 470699376 956852785 201403283 255692380 106454852 297762511 877318986 929985200 291499286 769173105 689396099 813269791 893021177 977030452 664095078 933920142 200118860 384115843 957377382 960903433 867196794 950883719 722325746 924150137 646658901 728010423 989953506 996959290 288041372 369120374 854622448 876535381 967181962 994103537 575754072 601908287 742874493 917843646 797102890 936074992 588680909 755504788 54400204 963684350 366288837 525484732 703894347 738847318 110795384 811744519 878443810 908473948 363960094 904212135 337150035 351455847 339765361 564233452 422613135 814401243 585693903 718574616 387766754 841147131 946103948 978067561 590476562 770845962 630955779 803693833 110828461 993060644 494016809 573876679 71994304 973395176 913491949 952072023 674352788 823754772 346205843 821814850 39430272 932168591 535281614 887431964 216908230 945707606 840267256 932683035 224943446 241802039 139535103 872719494 243304254 962324470 404896374 598674043 63618613 947158272 287833245 926126896 649784472 816828481 73853785 236288439 632819492 900815564 776821634 956285767 503182678 933786459 701599524 757839242 873980406 894000341 443088343 928214103 514024891 721865028 974330836 997611465 813217357 940685795 209653944 534974497 383181873 593620062 181872627 997082396 12956257 250630285 68911824 739408156 173416403 716810914 864820473 980701308 514554814 769656568 367343000 727344068 940223128 967183605 891772027 903269586 291549055 562254024 557370899 646128762 925979299 977520463 198076751 573904052 360881636 463932671 837104410 932157013 691365216 803174614 468200920 999033568 890684531 952324713 535618487 975334115 292028791 756834403 577759367 988191377 478663015 641746244 440730681 789853016 169135938 747371695 968341085 982332249 407006981 703544210 875660427 972806704 256137142 810339995 25126746 585780675 152018 904412650 412000521 824686297 878601408 931282567 659339652 742792721 382635330 656816184 686750795 966960516 122416859 451500901 41945643 176467208 768683885 894797182 282640570 492578825 84092338 566233469 428984624 840873772 787732433 933170862 460342774 686551658 146007518 469927693 855503870 946049819 507502837 848200095 44597429 897316443 102017286 248897948 660327165 919334605 824165478 851772597 449439360 852775491 399383488 613836402 975607601 979395608 903167597 919329549 202225911 763665575 449559115 549120872 754298594 909837345 487326870 618330149 385944015 555207809 339035851 823411566 729548389 735604810 255724708 376346900 864074787 977851071 478323968 906883606 343264875 509007536 32046684 602470327 840334422 868030431 759697300 775845444 95155393 334290549 675556510 857489087 945287 487978015 711398088 960629879 608261632 636626404 469101118 863152801 554075824 737725943 480556163 815340350 291073458 759199678 809019114 816584382 433771595 915721198 78205130 154289156 100050281 237750289 828447556 891757954 813588470 842538504 603144998 780995901 618073087 649756287 966760222 976703193 271312723 907144991 171334446 503067281 750926428 973728589 532148070 793105773 625301600 943791882 158522352 833951757 235304385 612405587 336750171 359563409 3263785 86291115 8083202 866788617 908144117 915139282 681952742 900661077 344724095 852080981 985735000 999643227 11546851 445931292 664675023 770026627 205943368 930080470 134560299 334785028 797741566 953446117 668947477 696773950 370170748 881448030 426031568 691490672 781877936 813685830 854582629 877273176 682944364 988327026 116997764 307274250 88060407 787262529 338816786 439347834 243305053 646980692 116655784 489599455 747539736 897114718 80813577 904119001 402294755 458818701 871084508 988379189 701384187 709235462 577552124 799820073 143987117 382389342 108636657 572312544 419945517 909357226 542110130 799766699 966448344 986914341 646993275 986475169 855206608 978339583 629070194 642379517 68150756 293971768 864916059 991314304 72871091 98934003 633709164 974829898 929399405 997041737 268647270 882840677 858816948 897588379 140778533 621438353 98238373 849771738 536601422 846573895 424882532 642240510 966397416 970155611 354592691 723413800 321596967 543705685 778899379 980735537 619825009 948322502 207075213 251966821 572649736 579508924 527478807 665879988 358893590 673223927 655828379 808634364 207597493 368826929 668215437 897744333 973001630 991914162 714940433 744201612 488799325 626678497 621185388 853901062 196653757 290194844 737568005 839269913 537644363 815983177 444239298 505320923 553496825 712167732 993955385 999652111 253895281 624170279 51527266 52983381 742258287 989793310 426921790 950669292 98138 687482385 738203650 764544409 392950868 585909331 324456085 333792367 242305946 320942049 611967555 981766564 799787660 819258778 471170931 722803973 840100786 847214208 607401014 611775530 858213217 888435126 459225604 823220391 902984166 993282024 235887886 918138123 716877265 920932269 593525138 774926594 924736390 934010921 877552737 912493995 578416529 976767584 41275825 157060435 273742416 817331628 714914049 742443851 624967748 904912660 527559679 958104623 651667762 786100673 12681644 198325642 727002597 785085559 728981269 768500709 172440895 490988490 38194920 780956409 820986989 986639911 664513843 746411356 15189436 961886580 742708943 817411340 378856065 668163195 125867713 205897298 120698754 751042194 936248599 959178453 499809535 842471471 942475437 946170373 797086346 985305504 425698770 528641937 384886153 521625477 373926125 412473419 866421199 975661806 983353566 985751574 491873462 852478724 400498386 441354100 998809410 999991016 371022507 701184526 367587972 503771629 578394281 712576716 835036451 900752072 215740966 788148890 114914150 223692741 297426293 794003205 719731893 765204374 578397478 751338877 645322068 656670850 913166702 971525631 852414212 995330822 70026809 971049213 619074235 707590295 994287880 996730931 23581889 598521492 445151395 637853872 591931944 720652434 536231642 782378727 726764564 817310783 298730476 460013809 284510001 958332498 431875050 518816819 443310330 561304012 438186590 503526650 959096113 982014972 831672172 905391732 724619331 963760935 589698870 646157735 707702456 879610767 94206635 251297671 646251823 689265910 918879465 991763435 756925371 814275891 803527110 871127970 31857994 156810018 161974837 565090935 137983659 468280459 967806534 977746457 519681796 851618758 490525328 751684188 639166694 775896865 295294438 398023317 621676802 881821348 699347108 711730137 351397883 934738590 209512706 689881927 560944636 660284908 456497010 813219963 986443671 996328486 847033782 939333012 757596211 941308391 271994792 715501028 636840594 751997693 756992129 802218092 558704937 853367839 843612952 901347556 207471651 303623102 305308950 479704110 309929117 476116288 937465727 944427532 525843355 976711151 817870515 938731115 105865096 960805816 932799705 977779398 261436711 307721257 129086783 757558859 132060884 891457031 769514224 964422214 727000368 740219579 84985250 846144385 841721003 912475220 68117997 130099617 556834860 766143564 703209775 857559451 648649930 778195492 918273549 998722861 361570269 397455434 817603594 977292823 663917380 865700548 228736513 691727667 888382421 979185796 95017936 999857865 594163828 696357260 392900458 531680663 87343551 594076457 994044756 998550622 743406758 827381944 339370131 370262601 715409634 769571400 172886551 344178471 318729750 840382487 63590220 402994595 378374301 628766842 192792943 663565380 745210294 945171721 225915539 846943103 383825405 764011262 616859634 699616285 869852467 885925668 511037361 661251313 156197494 688697295 886752093 956466080 257167957 586883028 864188773 929307862 992000559 992014378 440936563 495688557 108354643 584299426 264802204 280948613 214219103 882633602 332650269 511376869 631893739 859533466 542636289 590394468 811184268 874717491 951700904 954066026 872514612 959847897 246534220 258387421 173015630 971757637 340826309 487602111 341609999 964074273 96878502 161367693 184994393 192165987 964051450 968610595 418341765 628803712 204969548 952745440 609527707 636826519 692966644 928267025 652346757 945740636 575971841 703149698 603161105 933138940 76890308 243498082 85590841 732744260 405464564 654182190 559311853 638541772 534537102 578753258 763320059 841855168 774614106 886458902 50548241 146349385 737053776 907835088 7242969 867571561 703596998 937714805 217340813 956440430 783543605 859788991 262998199 727403537 679136844 935677178 968259540 987853570 79324726 727640818 454008212 819057650 846831036 893697074 145370204 565052019 323453592 558208396 541355261 664458856 555010606 716284368 299324579 879319733 647549613 945427885 226943006 637537540 870920364 955488653 623864047 858611980 325366886 327882840 14492374 138958333 260550408 311551857 492673769 707815936 213474754 881585417 328385987 627129085 658223280 784727962 260356077 844703557 438639855 852234421 61117933 134473724 711927577 866135910 64647390 276400973 927215357 965763201 741373989 970993470 246914430 849873367 287560276 802032089 610954961 676360801 781424006 942085083 939487204 997469740 281047435 942672000 776863331 905160469 951720993 966023805 117284327 381789094 673828401 880754769 688582320 842550550 867942038 984087432 301952676 402352341 88290750 773064622 384078544 416146778 949291270 951446301 129293544 494538583 727878079 915581830 973876040 974842147 239514517 251147181 149904899 923650573 663667758 887774634 13292775 616901185 515975531 839115503 834956991 898079151 307015782 467593841 588640412 829052274 7766532 815737573 315065472 908347063 231326327 824162834 814083951 974815536 528437474 902187448 508726014 726485585 163126919 862386065 130798432 498585243 900057054 983391571 518459253 930635231 611574808 938989637 636562870 799877171 340439494 805576837 996722490 999200897 544734430 851085384 801712778 828887050 157034637 836284774 972366992 979817018 697666633 921453793 328244623 345910645 531944603 548288707 444203092 656833456 30709109 385533214 66735575 242656829 878233155 956803443 447784632 912711191 283906447 743318019 207984217 437271762 76388931 97311762 645948163 947359944 352466193 947410953 598540765 915650245 950806330 960521889 783777883 827008626 601607934 650590682 752173770 884410822 495439944 840106824 444218323 460803244 488734943 673599614 961998512 968061227 520045836 717867084 572421238 749931183 533808649 640756146 173741068 877859668 244712547 275060468 833440960 921592729 456964002 749556455 982791252 990637205 426715616 456750404 222987838 601311323 849196499 954342108 793992597 811557093 981788903 983137915 22111830 647969607 92006588 324243496 813454068 824095417 65896386 506622821 285741745 463350980 206533697 662399742 838591073 964768397 57995626 236569197 530264637 929354095 376674437 849507578 324730927 723200650 84565363 990833778 876723374 937089479 885920992 918553081 549618067 567302259 184947422 810853725 326564640 334216465 732982006 908930225 87817297 907382662 617340902 787521246 734772884 953862638 112025600 149637404 666035450 723907301 183152184 785023562 584447157 599132804 130570540 844671015 772598051 822046870 598600240 740020594 647313498 791636349 101034826 434897608 932039989 933937887 432207167 581204697 447618353 566140852 989654321 991498547 168679522 424189787 228164195 693675239 101194384 899009340 63875882 165961778 445997603 562590056 950853327 952570633 545317280 833999236 414132854 652514539 78244491 239338300 104804067 763298634 125934832 364733783 88019100 445624696 929313989 997309748 413168898 807097124 893963412 957198287 70290119 833941172 538757483 669489765 217042883 327209728 690946652 896351206 795579480 988904798 551891242 962385815 343132986 412645204 319956094 996345586 129718039 995455613 808403134 918873702 180729631 324242186 625121761 780760934 579335531 766011306 149861624 200283023 758765730 770439816 865047775 990665567 859464189 910118142 842262028 922259358 71548336 668185463 312531998 395119574 183184095 463977029 909786448 987055307 94037704 925431996 434407168 936749128 618326403 634906678 989575938 996788338 647683690 802620736 402505973 808729523 821734452 941308718 654684069 856265055 254656046 907072938 542653594 965943795 65606239 373099578 522954429 612886716 910726669 992441890 55092975 157179823 960079124 961153280 771117012 898794001 173095331 436530170 19818946 567509382 734484804 750787257 632955400 939077241 648221842 927237054 812998060 957008335 790789148 901997644 402356101 458011108 884197727 979019809 759619787 843801934 845416786 895681568 446162762 747444531 642763181 911679887 634477465 998891481 325913559 975710189 897883050 912762523 694005659 898810075 112119086 326530107 709536270 888477095 338511456 795814177 465623430 491636570 312230830 835389199 481088304 976616946 704597754 711014022 302587426 890420277 957203911 996391478 787193002 952452428 400411483 978946544 512533520 793213819 372258145 793209395 818498935 882847467 541037502 851463887 986763114 991803253 574788854 913149850 596931519 731642106 928029961 943082559 293413398 528030981 493841792 963015589 526735819 599022323 326861554 446492303 801777010 886353609 124047778 313081943 183824297 603836719 834895581 980349547 36925894 112335886 246867669 567153512 248959111 427658968 807452519 904411261 583471060 912451985 596834523 930234012 710877388 713984505 364255654 826952852 958558088 990826679 72932430 849772215 805050689 895666404 836056121 941383776 516260662 647175111 988842191 998619924 867502760 878418953 966624863 987763156 882212320 967301539 418240556 603689710 814106378 824908605 251320019 933314240 303390432 820755235 608497536 674925260 526816762 617040093 57817882 775118085 404794211 635187512 581982310 606097241 457058188 690127343 714147742 969544088 958289891 988019826 76496482 572029093 508750748 617790828 260559266 381782857 892624282 915163779 822001250 902400411 514466363 542936369 470441446 607457208 363997736 829129238 737343620 745526345 402012739 737424037 344604452 793337487 892819480 970554116 257780239 296107051 489860361 664054968 840805881 972335724 19216877 718265807 296952847 365774978 306793023 717175445 597340001 842811296 284978302 360022014 922796439 949768708 901063714 905449861 59460132 72021051 83466732 502548321 782523680 805590873 613577392 867446679 564306154 579268205 284171585 977876289 46613169 604955898 90813661 810866292 634027878 941378402 551344798 938974794 772741396 929920429 634458544 857822776 782756511 961530912 475569538 529769246 944687365 987239691 201329805 518211100 684037330 835431307 775472622 900347248 823727435 917603950 928828272 988830668 976812678 978724932 770612854 837466929 312591873 335159380 423367769 865568058 340655031 730863603 97412134 922210294 991188600 994692961 23748209 80061026 84449666 186396881 975673234 990982841 700007000 985676744 201513691 445472422 299706019 963481787 945701594 962225443 834313900 889160866 636343924 841214015 988083646 993844637 800878149 983502763 261692357 357193764 331693785 922795064 814678965 954183110 86599731 734610922 925749092 956541532 549462275 993350665 179834781 388682975 747980948 979613080 313745613 835500383 699553464 848327661 423685409 732868295 833808224 910828579 791223073 963664630 89820541 847564550 456253565 809404718 116773614 797702432 711142118 956337616 762293522 864876912 164466694 670576166 186676913 596913518 237854491 254272432 472599940 874980146 960738337 969494875 19972778 802126947 477775151 870725280 154419375 406641209 432373325 890366165 123665167 264748478 838860160 972633660 807745970 868484014 964198660 965394840 481302426 582861425 374219063 434546876 823420700 881391971 109582356 682109524 763563751 797202223 479075097 795656505 723297882 923007759 970513721 993285607 269786787 413627944 818284056 891015159 476767442 858288898 870986623 940632255 702526866 843222644 798906193 828697663 285651817 785822264 687263147 867699772 50667983 354843887 3895322 767727475 920992796 949260474 120588261 125778475 447333943 605055252 37077349 930926921 546197907 951084844 59164793 242250945 22026425 113867386 671954556 847942162 634430892 949903461 199120446 999959242 323996056 717971308 753261130 810263107 275504403 622272953 459046577 987708043 271539198 566542914 492558140 807272639 176097584 176993969 419026350 904261502 272186684 854776896 679819417 885595772 267132663 855641012 351802438 812790607 161902968 396605860 567121990 894866777 657417384 860790861 194295712 712266518 46456001 214395778 366475363 842818009 267048788 745401073 981726013 988808061 747052132 975791703 295653738 520641693 836811950 988246367 298282964 754172540 409470180 823747231 982573648 984326791 299285852 678966782 739148567 885199876 191903958 711666110 874126455 935997673 329402090 713844145 898983342 972612584 989247921 998985911 343850146 614528768 897775468 952112916 470362772 655997895 779530847 838184980 840671170 989949055 636665896 716150289 650309130 950463853 388884109 569975144 157400629 793710140 36772078 415921871 68336125 133117423 269118620 848052014 654503876 853676736 471290840 535335541 251746355 701895231 651572776 735467007 387777889 520293437 232347560 675252048 91499055 774402362 770592722 894120634 661503912 979323081 624064230 664589970 232891041 918597848 436959073 832637242 201893564 335898319 451196775 789913750 675298726 777155549 132094127 172411670 114486538 770987734 526879454 628621606 416610356 711307543 276926778 763201821 851852968 916367162 272743583 689434905 530661212 537322449 291275174 562848566 555200821 903159685 994380957 995011976 414291074 633385347 211883394 895331036 55310146 868318209 648214979 982778591 432790989 936003564 117566193 202476693 524506415 959590693 122410177 338646340 706592517 708140162 817341574 932131633 302268651 543427657 551474256 834686500 959719973 995368040 837028889 991899316 423141579 709628484 449324772 524997489 970083317 987727302 577445613 960126517 578521335 920148452 64780365 131899529 239800240 902425499 734004696 898213087 973071065 997295119 705012292 968941413 426452288 769460879 860515523 891569844 598415511 864966260 954912706 993202600 211048722 445882805 763536704 933163359 348917667 614669252 133405740 987750137 727333678 853876619 834861839 877309117 857727393 888164639 785424135 831560718 255244363 597694843 82040542 539979689 535323496 806760976 487901429 820993519 239489589 777814032 16715373 228375887 444191208 902381281 907221342 982041387 248009803 902501528 879531723 990720935 739751822 775238491 501019762 691102391 992681145 995481125 89761329 129807852 814046529 876195030 345382570 622219175 247780761 377571402 916400305 928706759 113375543 450182995 788157119 829353241 699429185 762226440 878190462 942366122 87371137 912624282 52910158 306394814 837162970 868407924 779739614 943559572 880206433 893226352 15903854 18373704 723995434 942918182 998006397 998696959 992270504 999677956 747742652 849692557 29549392 967303498 823336152 882732032 682275050 733886273 140905569 486291219 855866871 973187507 857086963 984709728 599799167 653069187 967808278 970105761 103943405 349454469 771474172 919883030 800544818 856441084 637366880 656874281 977882512 985474345 505222070 859534523 695134553 705842552 766535888 958500960 658451805 860964818 68190958 693195216 399794793 568678336 175674600 613925079 4570524 343228785 825492799 845933806 918448428 936024554 738136539 969213798 973639783 986123648 170937332 898643615 825753595 913667395 707286131 733117518 276102043 953363317 338546737 378859949 603327472 984974902 675622733 958178919 108463964 213465992 586397561 694757608 51685158 783954133 369745609 579334612 264374107 843041942 960117584 986919178 31338282 756471839 96734206 355872100 243551799 997747882 466249913 681966701 905799857 960211306 937964013 993994558 595875859 905418178 475579030 640147323 363366565 477255446 657857711 698382574 820349698 867232075 984836307 988550288 368282961 678292279 793944993 806644895 263492719 651387586 536210539 964621732 819809366 939584589 94764658 111914744 959858272 990368069 495202128 699246533 655801263 696442180 259814594 468804312 959683164 987923923 573057239 606796208 954492511 968640748 887630469 992869436 562409888 976807703 717713196 979966691 480209217 654965869 766075435 922109256 743212075 900118149 404022017 569879259 831140963 917970329 33629941 34881644 200452136 871845722 881285566 943159019 444335637 806223285 842591187 874443807 430408399 769382121 414885389 850348210 431722270 740270988 781281529 841337948 483420524 803833175 412873521 483427098 698810385 715366049 577580497 835138270 529950946 827413550 168753411 761143073 638275608 760383602 279168611 376809148 410165056 732757285 691711064 935238848 289444725 444820857 600262943 957716941 349534963 883863854 889034792 955305402 985097287 996209521 521917011 578969004 560955229 579777314 68980710 118356880 262542469 691152752 102666735 898513795 864989095 952406597 780415201 995113850 60859907 164422071 619182674 908286487 714198347 991896123 956560899 957109448 918164491 977202382 266523975 908970724 42104575 97126270 998117871 999067627 126247790 934694674 278492786 810117005 729946793 925474675 498264467 598385411 4188020 345943596 814301187 983023899 302245064 520816504 471963835 774776908 29224781 248099898 819654245 894346080 137276227 735390153 849080309 943495484 887504328 988057027 942920280 989118167 932299721 993324940 959646842 994736013 422551277 563403206 963329133 989992513 709587104 851847270 398061776 878191749 777106542 985418027 388528450 941212528 845280166 991961026 356805955 545026579 699365761 994217656 813211320 988786274 648563921 755256277 80719413 472311992 285548220 356057728 464791159 784069491 24835257 838786978 837395972 979405076 788351044 791124763 120196231 226885070 300439753 795403016 236458714 796957785 425860661 599656387 664087649 795316222 920473086 964581894 958399026 962553663 340337012 535540496 129664719 745410274 608652745 785917947 458207961 573076176 271614255 798895937 660202159 897480435 928578574 989020020 942151289 942350461 217895458 783253577 349406220 953537076 527447240 728013558 81957511 87559538 404091175 427177575 483806570 742518287 379604521 483173894 225318552 905941311 147058600 413925810 836142997 932901487 2597557 494344611 67530432 343271206 224583562 760286327 38647548 414642793 739560736 806378374 654573254 810643505 153401235 256269051 554677338 888172479 806463956 842871019 725406890 817840944 278175144 350390071 709506350 897856999 263540803 963878476 292211690 663766162 235405263 774429157 670130144 888816118 6099175 487656365 179161965 547904927 443711252 607045388 33008793 904699203 466961492 997719161 436182598 845224606 415719465 929514304 269856483 923624300 507703644 645128685 841831286 980892993 4982766 367579975 853287012 901759128 824995557 829017651 943269209 999685709 466884508 494703180 974853092 987833147 645462718 851261569 208720303 214784534 556914941 821517032 34475252 838679343 420938043 976693054 804361750 847054434 426751278 603858909 500279334 880368961 289564241 689105217 970643429 980214564 90870371 453864483 777310634 840200237 600942416 781863121 965222402 990800719 226924222 254091745 450330085 762878308 733138420 906214033 602320430 645980732 909561969 931893953 840697322 960998781 347481648 719508490 804749647 966550118 126474758 697013186 720459276 910541865 591848266 790365658 353446966 436458995 124214787 197189951 330207868 727136641 478085362 501408254 625736102 875684212 348975854 973759672 320412317 485114565 921125457 990166461 43435328 622977173 953301652 954376952 778154317 841268731 919774059 963802786 240412972 449394230 16509194 943090800 379330354 430434728 577307788 589071185 704961795 717536199 81814806 668938286 759116207 949225841 872860167 959430836 332874958 910956363 267486267 914073425 220068955 523650660 607915370 962203836 80537129 185826896 681537405 774434003 374019397 415540962 132024174 876903162 754839986 994122909 289771539 795737252 585639992 914278787 466652391 945736268 664601261 789630507 104798034 998807390 279254071 927155995 55331911 379867678 438660318 752575232 373438260 675429196 446928372 541736431 44485290 867382465 262207300 618676013 862481875 977027002 448695429 794642999 413133278 707629847 944543668 976398173 739333707 819186723 293099794 653397146 640305594 943126951 323231766 894304255 924257751 944504270 730613708 877010006 80174579 144282204 475980035 954946473 770846422 836907652 498861353 994750128 292455107 699056588 105873211 463048015 302867703 334085784 956597044 979249250 428817707 465382613 134299590 284881303 990686023 992708669 701336290 712514135 425576188 846492235 466128531 773565049 127530175 773124373 778848553 987042258 72354545 403306942 916118474 931076071 663846486 680934849 701792973 988333916 620269393 855596529 354739455 821831650 825406074 877071406 394598180 703691887 830646020 835983538 858872786 883088210 940758604 985980751 950763220 965971188 736893162 950203256 455669953 783442633 626744518 888410202 903860140 990533720 887087976 963594746 827688165 879451983 315016795 897238130 837463269 929819505 911166813 948436095 53996389 308151328 724033192 789803451 997931981 999282131 721291931 856267427 498058203 932092644 206410424 452364048 643047014 923029449 155733261 739824111 361512394 439325897 711885245 827739438 129889328 946409560 825514373 863679314 999153977 999526016 829475827 901829799 155769940 602421556 430953117 789082540 233636510 656496100 559249657 596491938 464344038 974006952 312676676 349120760 895979831 963230104 88034055 525078561 10588549 71156822 847248634 930734145 417784872 859726258 439875808 912722325 557067961 831268745 77016119 98182170 90197119 133036315 688511672 696006632 632327137 686015152 34320042 331374124 656342509 749548578 856041436 873381979 155981800 909440956 193937074 581520416 725088346 910684087 764258341 788625358 132055756 697705446 69743769 161985259 480872290 618023932 407331895 606710559 810415379 828982428 574798656 904188885 261541278 502201856 673577947 903866120 511703861 512893884 429348046 810447121 56467752 154402735 615462850 999862785 154196922 998852214 533374541 664799848 748479233 971691811 399195057 772096653 446613887 493846509 525001334 576810211 808438598 924585009 710720671 857270735 251638112 266306392 765541843 823771776 653422801 824510199 11898839 470472579 917521125 931666782 74264071 937365182 209963878 510824562 756959851 989069545 286580277 379583894 367942397 506227432 177544050 729147431 718196896 991080357 263239939 912141176 980468301 983919482 473732673 604302390 745334117 859144952 166859976 405408319 210333900 871894087 947062933 950746821 499020588 706729953 149967366 305606870 588296214 833601508 247475071 302544540 673731920 888905306 103585215 855183055 279446310 868522368 28862624 883567042 132002718 576565124 449912081 481042638 895100614 938817738 548830438 608093568 516934501 963770638 596884936 669124158 821442327 967581139 612822350 994501642 403150937 491448554 553134926 614200193 350171459 932865791 357647540 884421596 570957169 952669967 275145436 614749280 549212720 708641190 187011576 195851550 473052893 831703388 643251296 838207159 993994694 998620190 183040395 775734612 778368141 948990133 517990069 620957347 779722634 826894353 725872048 805307204 439279618 667700444 778418779 948145867 857581505 991977445 794855463 964837898 542788163 887477568 79015546 95585382 725468404 879736190 872755959 888458368 759369975 896284705 12697234 315548949 397615549 623831734 880120018 968598479 545388936 728750185 230797913 441985937 35409621 552966941 363645687 542936129 475287463 820007427 583793141 934420209 366314763 789290151 119227480 645867168 383340819 864812280 933580529 990513514 102771872 295621417 615940249 667004960 17704656 382816067 401316775 793462811 83893682 160133270 628891657 878972265 683198376 863101288 995339843 996261185 218439630 505665074 338817181 749293082 18563050 756370178 59850926 837493666 106792925 848138810 397152607 554463087 723481164 892147271 285173645 622557698 230383189 283700789 755243316 909676595 471004517 674427791 499240573 780891844 583318754 600306684 776138282 805601170 335137000 787009273 184457283 725662483 958591833 966129660 710332911 878415452 696211035 789463384 760694024 821844175 461237494 700458630 713715201 995995331 45458116 483283978 530715242 950020625 254501396 797181266 362088225 643046995 711655677 937586683 420796926 615017082 435644282 987530093 184477878 897774244 946255930 964334586 340494793 721191008 670022474 803215818 811482061 904784959 745224510 871878083 143251361 600465115 280921129 687228765 651227033 785225287 693774412 873352141 708690584 770307890 682944539 773021423 698804364 999229106 369771325 910375635 932807 613585438 514517124 738631947 494305560 685386849 579823892 686906089 161830209 326723709 487043382 620895960 972551084 978791976 561698700 607158608 858126889 964684700 250269304 469698784 516595328 558730614 193472988 333816899 297318833 501091103 266572744 837327249 363749800 766805054 696369491 930311301 491140505 854256601 631616780 859676431 273017422 785273864 436493041 817779898 996711087 999776900 709678714 781455294 27953643 404557142 541122481 770498215 996719338 998096115 802432565 985353882 452322577 617828576 810252644 872793617 166321014 892221090 232635773 883427826 567649932 615883374 653903025 990495980 839528360 908689985 159967971 270122825 374008630 569782833 64245046 375941203 523391874 965355345 981170603 988288577 103366661 498020698 961352586 965692568 551814175 649688191 892727900 937941620 451918283 475528110 116150400 860167124 585463234 991086042 845942557 918626193 283835379 656635651 984406947 985411513 631440460 918371114 801163550 916914253 302400851 557190641 933702979 965320350 758474930 817840916 250831256 718794460 637998857 944651337 130989367 339924183 53459939 354752505 295000444 368043042 628283640 717185431 164184002 182450537 320182752 341897366 128443126 234835998 950005860 978651619 939142656 994529414 365830913 529823662 618850744 991622245 340333852 988340978 96308605 240111259 679474655 766464340 32641385 600486480 860982279 961630191 550159564 672248027 172722071 794494646 402198833 861657454 968802969 981058168 863496066 894913220 513794238 622286034 289666866 388405587 339186358 630962469 390376241 698885919 347372387 727014386 293512853 866344707 657252140 954315185 394932495 778539983 852503314 873573983 462082003 570460634 299866949 578515047 710303122 769352760 649171138 890875616 599285412 975341836 437819847 762315793 660967020 757235833 680096491 789399705 374860230 590021356 553863825 698359087 286243933 962532398 442776868 870187191 659452967 954888941 560697715 574376787 330574896 875469585 617828206 806471180 807036866 849821311 987276032 997655792 231096988 904295400 765371775 776211946 884661763 995697073 722856579 762084766 800496019 993814521 621159832 834477768 111786490 372208726 647028645 975881320 295391967 631833631 192300252 521427959 406787834 667142938 458925463 965135716 906568221 912778117 773614928 968765131 921675242 977268936 842623326 843986565 604973730 789866480 583275800 793752105 245310150 740009672 705934333 868358183 984719664 985847602 225029292 452916249 175366649 664897011 672540574 927866393 839480368 930855638 812499971 981553155 619997545 915840895 708894783 767048647 359091193 452956849 907958775 922031600 37312672 214129789 844859539 861357542 237637480 754442053 184016224 964181490 940763170 955001688 289791856 856170281 928899896 944529286 145197777 530907524 325080721 849779220 856098019 963431313 739050227 902262865 591296116 648153991 493649722 816997221 761024710 807118081 47429435 388950658 777546676 930880171 465862476 887799572 575182482 801885804 724027358 856084493 255926069 591423853 607451568 662742108 534365461 929290791 428953400 829911189 391046764 529508271 430978176 934313320 857274125 951406742 857689789 996539245 508370280 626934840 670420212 683406469 455641808 968979517 71805787 843181074 854751120 984622209 767413586 883883434 465562705 562177193 660130502 867516605 87273129 425306283 621112417 787466279 165841560 625866344 802611170 980230452 343820073 797060748 744891224 968138275 337558855 469527470 423450607 869777571 177334362 244083435 903397792 905405372 404346014 667634478 216737676 859269350 283231257 992632715 543953804 725316037 642841670 838530276 625447201 871332007 368316340 823113227 418243453 595087731 419016481 467217633 943530709 965262475 498655574 981492555 702244027 887563520 300038432 342503502 416317223 890073096 215349707 369838777 377553380 997280420 133080262 139837133 704880977 788671172 958032450 960513095 256013887 321662694 704647877 767838181 502445013 553297049 394367667 741050870 420202885 477570873 946832260 974756209 494148894 796080630 299708450 577867168 752950197 886821247 834125003 952542670 700929689 849201858 332794572 940370463 613496804 889789357 138590087 349528514 554492200 876667563 66308764 225547265 195241819 940978696 789935632 806746787 669236936 804007238 519671400 841973459 491838906 607399870 624074341 902134649 147671606 379888909 476384975 591064034 113709819 947141062 941965165 951932502 36616769 637713469 135274878 807098054 151417417 730468003 847199536 946596200 677837536 789740542 64711028 858969766 6191661 321795259 891840944 985343092 128728540 738760106 364709473 862342659 329910770 920626262 301556539 389648810 512489187 758143353 928794421 997481478 61300044 132289256 603552365 617057586 892218523 928360390 476363118 968083201 208926564 719025067 498038284 666130772 758965624 827006420 222887769 897481002 723760813 821775108 686422933 688866254 279675669 401571056 996287060 997851272 668930159 759380209 668368342 946969022 906556379 994141134 375509463 878622135 757175309 826299269 962127602 970901047 184603994 541420535 346091711 853760268 674721808 822692004 103898928 169883037 156209156 330020889 55041891 729323674 715553035 802747360 256533684 522380616 440224035 717556129 564694646 621517526 470168013 874734891 27194141 480921112 918858343 956501792 318097681 645429332 787652945 913685870 597970962 986971295 185372672 775236178 963187903 975000653 415886084 553111094 383900854 501775277 692274432 864989090 456922884 972252091 253914638 260403865 824114539 898466262 140009960 666068302 899806237 936448460 718476900 859484110 145133416 150615823 142753539 810045452 69960134 956727846 794411648 936973272 978450842 994137822 272814483 747234126 839060609 981718637 242314471 252738821 324472556 949153042 37444977 842891063 637842032 946999516 375334551 676148347 779357355 899125482 522497824 917632370 751160292 894508981 57728604 974550085 915100121 998245555 81122170 876732311 931553635 958305431 118590886 688562739 679967180 713412962 462995781 786339173 870153889 961142474 811031489 943477969 828696682 929026692 744115002 812439672 870229119 978499755 284275174 789181823 266833576 822742736 605492609 993618322 722462039 771476870 928562427 991936770 952712330 993670759 308317481 682364945 287850230 855625763 870527032 878306630 514069728 766719887 930476707 974478679 214395834 434643876 758720524 898750353 855674271 985069026 496182652 840110933 864589747 964754467 490196547 490710033 422582913 913598331 965480826 982814467 865883408 999966551 650790967 886294834 772785988 962292890 41482378 772207931 49125163 760295747 674411323 986020103 107690108 650837699 401209926 615386048 901050499 973529759 218652360 898585361 964548818 967300338 345770953 530668358 51312887 742291498 747527160 762686971 450124615 595932222 331049759 524495234 591179226 604260035 596760503 984765174 607503425 844361064 334950848 558740099 293553595 384637270 719252783 807251280 420443767 651346594 589689978 634108378 54402725 92577013 660258845 823989913 601070519 661632121 404446575 921574193 593827643 888282177 783635786 982780164 787713096 946181886 1148379 484712200 469027047 658999638 102550490 401526488 173444879 379445076 221102304 392916677 492466256 774512373 269599481 950462367 280195122 514623763 197545563 453114400 400337049 662357721 32184300 821373644 983788053 984020245 804784592 990645415 783044162 918684519 550419552 594098305 190256755 485592791 419459574 975364832 325848050 757356157 303918626 474500950 230587784 860964826 592288024 901472193 663535029 682862789 873658989 987733215 239859581 714502969 302349507 981515835 145304869 648631433 295096534 439108348 917392861 949264338 441005262 758438726 169583219 894778597 471250718 716889577 961143517 968137431 356586684 363360378 352180164 403374221 713436419 731284027 317620589 625921123 470208987 921052808 809009070 981666816 523690122 875888944 637174424 681661744 81897563 456443998 78995392 520441556 434360964 474121519 295196340 540528344 130381310 218687461 697812544 760326786 347348300 993463275 248106780 449433809 385772518 560341556 323091990 401979969 205941127 374310320 599145655 804241938 644697144 881310467 27214771 842995387 67567978 907192866 690782681 844544571 645258125 963641799 966615256 993110608 472553299 818767786 686119837 771082131 92916267 997056391 255046510 624367014 300589407 961173228 647994537 692796341 182364157 226988874 560899015 573534087 241557811 480699730 807916455 822983090 865187816 888656474 64062084 548652965 325367890 496706878 758858802 905375639 611907993 765256745 455551660 524689381 236970247 307768882 391244274 930249144 534945134 781677723 149551984 618089751 307696303 953882509 275977694 946046053 462162162 500744945 933025910 953151006 954710096 971429929 325448371 360935873 622219353 797179242 231831487 651310773 481904456 597151943 671594539 699470053 260689984 821692137 425026899 463910235 757368134 871423496 840153651 994067387 543682779 643598336 145675514 956142947 831106020 910300193 242702678 554710186 80186600 986102994 636252932 852198082 364955546 407959886 532412524 695042588 604173483 819076939 336290242 650499940 188738715 219652707 522778453 930759067 82001173 441718510 914487903 932257050 372497224 981468345 982994658 993401159 672195455 812871604 155695873 654026719 10405316 733834029 790688882 973734777 212957688 675249309 302785077 661616581 97809867 604932242 810291705 863227958 657118718 982708914 529116686 529821667 172966880 271385118 266168814 324394285 1863946 199138877 108423100 837665991 645813125 653075045 818918980 865699676 841887976 979623335 263292461 976212996 479302503 540952223 245544091 645646503 485205622 780833684 175362734 602033341 733182892 943219287 823606498 846246085 861996557 952645973 451681456 463440435 154365352 259730568 359944542 412587133 150864881 952153509 124139864 405499853 529301624 906040363 860554375 958062046 423925534 453087350 498403501 507312409 345869970 632737657 190820882 266954436 762351385 887194435 288355343 384737330 916933346 925950306 827468966 973049917 604033235 956871405 39487308 997636911 70729742 503466753 216276308 868557589 313210009 973530134 476595867 768474051 43686228 919916815 188989841 928339999 979208027 981831486 618925910 939206984 350060758 387131486 704583834 731196632 281960773 473505602 956369951 996684752 660305751 774809130 403098520 675081181 133820847 459458106 23775320 466728325 366383404 571682506 838636421 954944694 434130254 462498663 620315231 729733019 527581355 680087373 273118366 639806430 859018243 898951511 342020074 846251664 836935358 869628161 122562482 453378714 391910253 492555625 603547362 803555388 480835868 693137183 699622907 939927999 693385042 974302872 871502432 980766989 449159496 786928370 808441933 957227596 568286450 599350096 265484191 827341244 354263239 510249954 352465512 420395402 878921123 939058649 186710922 608222103 494476687 750967535 359767517 999844227 938629113 965628413 434864035 911128792 395786966 944400951 599917970 610302743 966251946 976957649 729428612 874517247 985583586 988597746 696993003 932597457 159914025 360471329 289922581 586141101 399203715 597704915 414768702 656597983 241829605 662834940 285361152 367734645 861648909 966893647 56417573 734840921 215687469 314995506 419722439 825397484 104553177 546014767 420791738 619997978 224985778 599447412 455526850 971603551 230006568 469659387 371635425 571685572 879966898 943413618 156887618 503645175 888415765 894786519 938146203 970624928 814548557 994876548 602804785 872561104 271077574 460727769 695916346 721276782 124754890 209588589 589935407 833355567 617003694 773702153 297063394 938937631 394224588 398899733 427159028 681998183 308216020 341202527 866454474 881991591 77088024 378871410 563191252 664544390 654544413 847559203 905086872 926604156 492549197 611812888 115884950 933616990 566750808 857177516 78237493 316675977 743433771 969439509 121049399 678336986 701804808 976706148 104147035 735576977 352346839 956594171 517416810 834153396 324519813 457122762 947602796 951187944 43117670 501378236 474003648 569318294 70885355 973653931 640190675 905120078 205059313 775784942 885459068 949982245 279821632 631140286 453456371 722862744 832208679 978678865 819091465 948612918 979132673 986758418 189942933 890120349 292317838 308681710 634216342 866426603 106105386 875218127 516261772 716254965 55522326 897776523 83949567 264398788 87923939 121768601 598183919 792668341 239061281 817855547 848672140 940615858 96372382 699639102 372848364 893485541 127019880 175815417 207365781 928113237 77012818 358149934 518381448 690743175 308299194 966244694 546607438 775312478 241366861 617627679 349723685 894588114 529524194 759550900 127377953 425763465 344242432 887639354 369320128 509212089 839912996 923644762 438311161 611089027 460388996 692344632 478779962 681920049 800365342 926321016 628478645 864275104 256768713 925488887 707956740 912636420 310118484 620350398 480002505 506255702 294738280 817861467 723355832 975989643 230312175 672485087 97179276 567829432 26556874 97287931 814300846 978450362 786328996 922033167 334691278 911639674 986582253 991985369 277631262 891381071 80781952 149069435 301057605 937314113 215607162 387703590 433131947 438271643 812673489 895033339 953732501 966003760 887582221 927756842 16177384 585090015 651141257 968201320 438691494 959961136 111904463 961790967 62454824 314685734 309787718 836481411 346662036 400939819 669764753 709466265 639842147 872765100 580706943 756241128 95662002 394160357 42839251 118530857 273867249 373061139 315015167 779939372 148129547 921582216 80287617 517845857 763859058 848189766 627330611 893939864 607075500 617276708 32228592 965410702 8299262 797561753 987966787 991964912 59858399 352110813 702495729 922557024 730954298 800766970 226994188 315051169 110585076 970316800 116951311 639117089 908126227 935255908 344730262 980606405 131819350 751608022 754743921 759640860 612831687 795075621 813784937 984624242 755672602 938910785 391540542 708975925 921272503 948519937 436175704 852509902 495417125 768146524 190620464 385511981 631660723 772549916 343531999 973544814 511775943 536226617 378731667 610066016 935113171 955583347 833641779 966570968 290399789 904790430 467717720 587820165 507222233 531922567 540537182 773526030 596731826 772572170 75579522 824786024 218973443 745056532 266008514 857617207 668213020 673122404 537471719 725966198 884819636 995418929 377673699 769385631 249018547 935840641 694527303 811883158 494560161 806396750 61477578 843857185 498508661 682753756 529792120 560346114 349847875 518474409 603589268 812360049 201317274 275931178 150594684 852506640 781898183 883856481 19844051 410648500 11298644 935169753 18129731 127499676 101187721 511358084 720658029 925375857 140586118 292996292 462044625 804839422 93318699 769136098 877040892 938045052 371549056 449101154 908030560 968723079 509851477 770184121 370192987 896318245 214138229 269698098 439170685 958862432 981173879 987479285 276522963 953325779 896717194 943615453 235113723 345032852 694519755 971077227 591642042 857168209 735585417 858937185 535698603 624890849 5930339 217992934 32110133 411976657 246542549 745102413 969288221 984461962 308632579 840754363 974530283 977004251 553559996 720428884 565016747 591483548 599344312 638191325 631624252 717522189 931197574 984721551 976898746 984490275 586371693 666970035 535166087 985704920 631359201 870682288 58062824 998946653 998170992 998570664 903182667 975809719 667294160 696295259 374480941 391795435 776292787 915219567 868959883 884927503 127543969 498873177 351607143 448741065 636888296 857558636 32553245 490168901 675857856 911248091 647565684 648143009 914545058 975785587 101594855 775149467 152433804 985798866 64881603 741172356 311273475 542283284 918711761 931953953 687429939 951362204 803206231 978520718 579465316 914311488 853895826 915293511 425230361 542691359 894605805 982589012 205951505 661115516 710350093 903395494 761400821 914238130 802762873 896072942 399190659 783834059 223929907 402063418 701487307 828043633 457874294 950550854 902072933 971018195 965155582 996929897 260574295 857705234 531198598 975274903 762658593 996915391 927735787 984231422 64114541 394668965 537002566 980966420 227536523 952025291 755240598 965700286 320612855 486268627 755609563 925066455 578842706 862222080 958233908 964927234 994609860 999787339 365727555 495691281 240359526 894539621 951744510 990472970 452867605 904880013 987937842 990734659 513649304 544225308 474151687 762987014 580368500 916611163 362765763 509666802 499200140 938262838 616120467 904488732 505808867 730377822 279944485 740885129 363205116 547028215 884496317 974838515 881659866 923253701 599141065 799040479 752686493 841050884 143653416 520611242 951930223 961695705 992675173 995640425 706212304 812171160 889816990 984918639 173258890 926932824 140810867 413398114 738969428 764275164 419461902 672468071 634843819 664869526 321958188 858084131 32351911 304858558 24822534 308211128 549520620 835740505 219234080 749174269 985174153 988400512 638213597 896543902 536660976 806817384 932355396 962518565 746937772 797623697 101873367 631617774 916884874 935327260 341988707 399822924 664939913 939932467 488251574 948033207 150998940 822925700 761935079 879355323 350499569 871033720 430969475 715313927 233861578 753531919 529176490 688754281 611218707 750061630 492770588 653144694 454940800 862252572 267274632 490668968 19683292 282521168 193788924 435581390 609888612 621550670 348232502 649189772 778279393 837725989 480033512 704195658 599185023 861771839 77096946 305057831 879498814 882618765 476331568 855728221 618344700 897898344 855500973 896414418 939734911 967296151 556618021 891577867 678864176 868406708 320582578 968494298 450572504 985855604 894918129 969135744 272504837 702276255 248212709 460904248 381072466 661430848 390002666 852263109 253367625 577880747 901437600 942901216 923638640 933006182 123595386 162074420 651332121 685954801 495651619 620495272 771385780 788297967 125556525 212195607 903828018 952403098 664938211 795388329 616163311 657747590 429559593 608400662 840161577 872457407 56556921 515715347 297046540 717780456 455787632 801621384 52716623 653564792 802476959 923985322 637587688 684259287 403532399 980806470 575656937 602591821 50933458 581156244 361751323 932963817 999342796 999877512 989062819 992585520 485997957 855815383 148088378 818675856 930877612 993799763 207842587 518891485 391479277 515312819 876653825 926299005 61702293 638326571 882239615 986234205 374476249 707916346 375786926 475382421 217185628 562290019 140499942 351450669 962960555 971800982 276257113 785581573 246845726 772442933 521778146 868461570 277171280 429790916 941267992 949389128 944582219 974112835 207475552 885924975 679370209 803954099 837075296 857019850 302875045 627620763 941939468 978885544 941456974 978947968 515635262 793367350 505556822 626580222 183665481 848927447 151072095 521734882 988063065 998060314 984317403 991401178 129667362 145839549 637379563 646964314 554434332 715364264 353627765 744966122 511528820 798571408 27017389 768855653 876286687 909607175 929195317 997897732 980696627 985956013 185008834 221589329 713757805 777685133 352905275 511406016 38931736 582837481 589760743 673617932 385469900 906058584 447181392 642336701 330984798 581141065 114855628 436473677 980303746 982052306 382915991 810875408 266517386 672340753 527558913 905180256 492520679 539016168 728636983 880079423 301086382 800345057 938395023 953275130 362562112 690900834 799457528 934332307 765149559 995044991 786740798 795200062 74879196 752389545 259879814 356438974 943325830 980990206 732748422 876589108 49419738 400782625 274783989 324801142 200133785 247386843 333166826 905854483 91322374 323272225 137267302 872722945 395593128 655248493 868584758 984612360 721146927 744701987 361038867 800528811 211922630 731574856 95614383 764075455 963208751 966546418 40271464 302990144 461053568 764611805 879118686 987583892 634180970 970191668 783792206 832996514 532608151 637122084 237251540 533528393 671894638 702213340 374553999 533204272 143154761 650850496 594296397 648510715 95526980 341154060 628356738 659926010 480215194 689953660 318495122 934851886 459528004 541472678 754069949 855800128 130800160 946577770 599483001 910817785 630037025 781117766 896136368 918421309 140903609 901613035 864292596 868792984 861042413 981581589 333339644 371608050 458628204 706431473 876185628 948593673 299303931 903846110 59867928 417796668 280372025 502845316 206883119 464481937 990958206 996143112 373679564 469310878 592210436 905464783 62254352 433805158 623485338 978791706 289505289 879408217 486146125 853340453 846149448 967653003 988920233 992572914 949859694 971570480 385813535 996042408 32919781 858132317 563716167 920891484 879223994 887633283 793003019 921122352 958174263 967999889 375012285 777610382 461439299 946942630 637636481 818137736 39594540 163128424 586567478 705088285 682159067 713815039 58028268 210238248 117584901 144784606 229085552 561726033 818576701 824981297 989185610 996843920 708823436 967175603 430289175 925127397 204753377 472179250 927283477 990260767 188540031 416688759 238527974 976375279 793754581 938702297 447825718 534540318 917868042 932463474 564668484 757787395 346491863 681232002 46890608 244212015 664051861 941565150 857210573 956887730 402744552 499386400 290316327 704417492 856747226 964584423 344353954 458383712 914611599 948904173 406522638 967413608 652646316 866172919 893991188 921764856 995326012 996868400 120624201 668602311 570427410 824792606 911497730 996742307 807952889 932826920 161276029 852051517 751776099 935997666 846203602 867473468 3193631 45088752 102893526 911856531 403955107 814573519 746676197 820001922 687654527 696398616 733881953 787671841 118039283 948201337 696579029 727213973 391342786 842018884 197990081 693733851 250583693 728401221 304315597 746728291 775326637 961049895 181706725 905294247 824869506 892260827 462339130 462510046 430802205 736843140 721021154 914961348 328686923 941820286 138914628 585487201 165931379 432665464 426736271 447699768 664519401 798269629 753041883 981067813 337008437 468386733 573961821 883504436 774335147 973723956 212698573 897870079 38244001 392489957 363029125 638584643 98314501 215064262 941984046 972101013 735904381 838007071 849679477 853451860 962206066 979458567 323168034 800297169 577075237 607081224 408333746 583320044 104430373 656047291 525355384 807155121 240791151 738426665 763074707 899433333 100087119 725336879 968999890 992545393 106562573 817543532 383438629 691534934 691394996 975023125 838672286 928178941 372146842 540980767 407576519 512221799 102930745 256502054 571008218 756757466 546597474 931853717 416460180 805887672 649645671 862799635 889439317 975144043 292723702 521817311 580453040 859536745 207128437 534072801 899793378 982097039 224867957 685082485 695262394 850374785 291334770 750145546 404149489 926637086 43508189 141055599 571569359 598771213 4421781 612587188 640141309 991822387 69156674 291501068 636215717 960920027 605794050 813683652 339387278 944704005 952912213 976449137 699617437 765194347 800302962 914220618 733697482 888188325 498177604 706917556 237508764 413308713 573114375 834893211 805098519 809496592 155493616 833823223 872477144 946300764 800633944 875975273 487233882 921645309 290684559 823470730 164119529 445526841 328144222 915949412 510626603 853514385 429055186 585592061 525341416 897322546 569265409 730157624 410739611 917143564 672036569 936770936 402304873 991170932 659047954 742644840 285993452 334974852 151247833 374230021 164842192 294185342 709393018 818535544 525780983 581252031 744949486 946325335 344153760 406694408 770225988 967841355 329988423 782177443 561199820 619457945 210533979 418243494 906001243 996485108 394618800 969980218 367921387 631002451 181067522 960799982 973319074 975269136 901995231 978760121 178225088 237377198 296774004 416830805 10599712 63349049 115832300 949966414 671731857 929805685 885597958 991076479 976974037 987148863 686308922 834436934 385581909 998935291 729162674 997770123 627056614 796799920 53114711 841177842 89708541 142052499 901354134 940878240 943402026 962112972 956169179 985215203 231649198 386408545 587534658 612161541 759026844 890256404 978742183 988279193 62656369 699490996 552458261 892699394 432074463 619864731 670999201 814740901 805536606 813499768 745878343 939927192 547347473 874528545 275845649 349353242 951027258 987705427 226840119 229649895 863201173 931500426 613079386 692483653 462183865 850483231 316501517 916723522 503470843 611050723 956810347 956937679 730746433 959646504 902085355 963789128 359998521 873970991 34354840 365591465 406523003 902000520 560056801 855410221 628160558 942001572 859187416 959991118 774329049 795636513 923272953 966753169 432069734 956723397 33860406 623539859 662633270 811278665 315773417 384697053 858056064 886632466 860280459 870683027 660326384 662107562 777872578 845917518 421321625 699527797 434959053 680494701 266329928 879476424 507388327 939090811 73192485 118266777 497302885 659888266 682488273 829973130 756653916 809087442 661019896 862780253 740231055 799313911 845827058 924962849 762551047 909979289 97610481 905095422 662507841 826366252 364278754 504643928 328957739 780955024 568184884 994413912 785855743 929209331 333602013 457823208 109310072 389495202 545987260 840602953 153782930 657766806 891590009 955569201 776705073 917035360 839572579 986655041 624659017 919812201 613064535 808129184 231101792 241974641 798069482 893676733 742470775 783736121 878944756 905906097 742174620 744639217 790915636 967625071 599529120 994263683 980942510 987948964 871679532 969103642 666298543 966726569 503803283 959381179 188331339 456584871 414816460 468782533 260425515 470639161 955685721 973809964 104110422 955674171 695689210 899119860 653289997 781380999 648916219 843142328 923657341 989214106 514345137 877473220 398784543 460934352 210740250 964854041 176857175 497753484 936555535 986377838 850340238 901872173 670722670 869542504 381166424 439520671 403467693 699620049 999279376 999837839 656884590 994702750 444168857 829267475 973091308 992829765 16813050 909151791 294781971 371389040 948769571 975941998 467927623 837581695 562555374 634304757 959979087 986215253 877419137 944683257 261354637 416348799 379330493 859304704 698863081 724225652 426079420 943942152 724154407 845454415 789933660 945403396 3009146 853712463 478991045 577687622 127397890 577310810 19692807 88854220 451036820 728280361 807096788 923051643 407847053 963300484 859423816 997701564 579687933 664789865 475489481 774902513 453420180 522841635 801157130 892962705 439567331 497086693 562315386 586746041 785740280 879065702 137226782 219290526 376426898 553667580 874480691 912049356 576589843 755857814 120280651 855202325 964027554 992879286 644226 254709518 857414187 924378929 195831315 939187514 118675098 589812004 787355912 973761878 874901328 963993557 246650280 341898457 843073942 979378673 229258904 238660758 215630280 506020560 776107821 942055523 722760872 794333269 583670843 913934169 861396325 865515721 403593109 967482291 153011257 321456350 849266888 915989651 272225516 464357564 590044175 973626268 267586941 643252841 384838607 607055068 965126979 998174061 289571346 966975992 686708172 934339538 33479368 659698775 581419894 597996659 267647125 626508645 623508047 712403814 700358265 882381366 198672203 516810306 186822692 583347520 361556646 902444806 350441451 842326687 116950403 854845545 46353773 142630619 498284590 667662023 299737850 313185516 212802630 250643956 895065403 985130262 47356641 769442028 582873400 659215864 31958420 659771793 722020306 771809700 405931112 742386869 241076841 393298109 637323120 738446104 372460968 735502348 372898256 738022028 746742896 939961623 898485127 931116907 788129103 891867845 114586455 785762807 5460610 378327842 553582048 803528808 329087666 538182972 187728912 811524777 665342585 706534111 292616819 756379659 936328775 943855384 919507041 943511991 313132974 516876043 46076949 386105401 927374505 956237266 792573309 829051123 30611976 214121553 591096349 877407703 813330681 936368664 20809761 865989190 317664271 869146368 136460476 466639622 289136292 971730840 554380845 606947610 584947178 740598267 915115827 921679509 730589866 770867352 221850635 324499890 261389593 370780217 683198136 730547406 855128009 901842452 127665401 139418502 342571581 630485543 99952226 871136063 197321482 792300744 894354985 976126399 586410271 861552543 942952583 999786484 424700864 995418453 24491456 398365759 985579883 989501329 215868634 482548543 386181406 987771125 866782945 949951816 646389396 823216325 913466190 987919507 149030737 791042304 164918991 247546494 704376712 909091530 938647775 938863042 692113433 801163137 495711801 800149378 445343800 485692717 918966267 926390687 573665714 880870469 435783931 938603432 639234747 648381504 912927863 966406092 836574355 992954631 24291721 857351001 503603089 954472862 628006918 937798111 172660635 850243032 573815681 978013537 311693975 401927010 550188566 619598938 461747961 635793658 482605893 674097217 211788203 322392697 819939621 830427977 912534022 918751443 381322786 833556004 176496464 224429264 893015373 986208389 983576718 995062294 931637647 992934513 202622505 700302884 77221471 216063427 696577637 851015368 483945259 756374792 702092662 917330918 864743705 969880375 611501668 865814534 400008689 826288004 586041247 819266854 494241782 693502477 93607291 993415342 5907467 638219639 749521563 987695969 998175760 999785987 166349634 785330180 719304359 851169028 88116948 482492469 44189699 990733090 438513617 445415841 903551345 939984922 672340676 964636249 66552569 357822793 915958248 975492743 368639891 389929196 280838591 359023574 86375700 197376001 149225809 636641017 593857883 943665057 373425861 516590049 931181981 967654789 700132029 784044560 749351278 996645796 860392441 993977689 910073838 956609440 63220622 744043253 901713679 915481116 373272565 736353470 157245139 964345780 499733680 835531381 442460536 656979462 323651822 691369882 465032916 649467004 110532330 988820509 241324394 851941384 919041867 954230419 699133925 771413073 423332203 748891846 568897973 956182457 915868744 920578833 661671359 680611170 406213292 518762408 889524461 928273306 317449669 419033435 376495058 941406125 310149469 367182752 858398254 926978972 688253388 773006559 20532423 42994495 355062803 418422061 271544016 935510084 922397353 952272248 96744425 758997708 13857480 211962266 16778801 957441238 861746819 931857342 57937528 469309771 25623414 58776051 369063284 875527845 79317220 830438143 514340713 687821071 315031287 349382412 457444773 530161894 471792928 833992085 714678433 769653765 193260243 851346523 101862149 277657024 864449022 933302708 850058402 995095255 829869723 852873981 434038007 956439744 216439866 928360142 602012689 788000095 845705235 860495493 794517561 836803179 18177662 389904456 624213816 808318350 399307707 705992327 676840534 704820009 902783064 907108267 883227743 911922868 325099157 719008342 157934878 819715114 97419894 690854186 634256678 855273249 324927493 794492442 483807569 663903413 427613349 692702035 885054825 947826177 896763838 955932764 828838775 982156365 195544672 340101795 260350218 419677672 255299189 946734830 619145282 723343543 327909058 481047647 66777879 81760858 221689487 494049697 411407577 811113098 946921330 949566977 866777930 991231938 563070918 913503396 915754843 950288388 42848944 638736209 6124076 342551966 620850526 760959734 881037715 905000736 967755393 992984824 171620560 668802112 972334547 999015084 125192933 238193039 133064830 925508290 854810439 996527365 374157074 705463088 688958245 720615695 11515196 592473459 66186088 746644692 184412835 365424215 207976112 431541291 636579694 810762140 972660547 982975693 280891785 782721213 911618944 936438221 476302839 669386723 171854300 838140938 354709006 852679122 155418489 647608976 274898424 683103030 92186021 297838602 218184143 980052399 984196647 985332340 17674377 836853451 456075951 689686796 673214969 731068272 160133017 364352869 104806763 579934963 87891338 457961854 602648753 986150311 721000778 962529716 84445822 868208397 215348108 994606694 528621798 552516435 124221275 521104173 494188095 727595349 353977309 991268240 10226282 297920100 217367803 242604903 483866406 665916588 654308897 721008988 398210028 466408459 183890316 884085906 919260520 979074675 730936364 791065951 257087165 502770055 146289660 629229496 137865603 585055846 593018702 708420288 621436485 942877462 72575661 678960315 579205427 864995401 477236950 628805100 897570101 990603921 547211963 925553847 229500573 640018514 561540505 786512573 359581494 518380595 252781855 739908888 613738117 957505012 512280052 885481197 198153007 650372060 644668004 772200603 556347674 568720433 947340879 951611142 565269331 850591756 240357362 835172898 94092066 937474186 813516597 975681111 547967410 964040426 665138926 732767405 669566242 943895566 457247211 738815045 643872165 720519806 163011648 891163988 608939087 724077132 773234648 953416679 253778137 669858114 849379894 923640895 422657098 507133556 434716560 605881598 863462073 956676426 356866252 813084504 462365950 956736974 887703946 939105203 896259440 979099445 965128557 969672548 335356876 708873673 154219024 388896897 988267503 997150382 551066103 899766247 348764022 400835972 893452865 974324651 556134134 776487326 404138649 696006979 397395552 844704177 19873066 872172397 417104940 650740735 826468401 886010404 481944084 803485936 340472667 374402992 296948212 489106586 170993210 296598455 485212406 583290888 422896736 813218743 900280151 988124797 614521460 662499032 231992381 731138075 318610742 578837504 753522863 942436979 446861144 704534863 321731266 461379096 662037048 738899940 448381752 658501947 920329446 968955601 149002499 407922388 354170135 569097359 62839855 459583346 413492853 936507216 431914325 932221061 880642168 973847587 87013289 771580355 766420040 910216010 895337558 990260749 993768649 996972018 314116183 618845974 982134549 986662859 399760526 527631666 123798762 394777734 632193088 699265555 799835768 858162474 336686193 471935782 241496025 998048616 425773867 467650921 608246195 927362795 109294391 851662319 21889854 39069735 666784839 701703702 137680466 385580896 977508034 984087688 287218075 515113305 643888859 979330354 330082199 364496405 270972090 424994328 441357684 698977904 279092205 391508658 296422327 953049548 279574316 844915975 821732305 919508409 438763345 542739392 925309756 994028897 201292790 563679066 177857304 514571717 365482470 727640794 842000215 978000065 904145532 990491818 275741925 690759133 779789585 933696258 985231268 999890443 538572668 894847410 289297918 336230126 88279544 440823111 649219342 857407324 372497698 953485243 121320671 802494284 766778099 800306892 936707806 987916258 500277785 689916173 742039324 949987693 513709955 996841491 820260131 830959773 727316871 888140522 483802841 632812597 314127200 510831938 353370371 855022741 997235086 997723216 813379043 944356114 617249384 873622488 761820065 810853587 100044721 247001607 266542438 333081836 567039548 648171494 899495749 914803216 745545473 824101051 421041668 567261140 804211598 815394055 743163913 808758118 56607250 427980484 581429772 747767400 37753120 271578432 806918393 866925641 634270039 741450595 279592079 574427008 24404586 698329660 153763255 833502922 192057617 760685786 376372475 786011459 598010943 814063132 948752613 962216929 676075590 857261483 235886304 450512308 640471079 891408846 215806599 967515682 277289159 694086706 320910909 551086896 105957481 545364978 841386777 887154834 221677903 803558182 999511462 999980954 240172280 315768877 172535940 600275871 251047630 580549404 863459408 948660828 384817754 834076734 971572369 971947638 793432623 873947169 685983151 788849442 848930698 922746943 7218353 66416000 941979995 983317891 181788963 812049488 495169734 727673429 776830092 929857501 409282607 430593492 487236700 981517877 634374553 927086422 773787503 912700149 254465306 283395597 780800763 886549252 661295195 951869335 9069125 748282594 540251639 639282853 190521995 365363013 850403688 942298129 892262565 954334479 905532095 905644240 385856759 825787993 230688104 645609398 686847758 853057534 959059428 965591260 438439888 837108534 943657197 961887362 4137844 24640995 10573728 738184039 239110250 496808122 581277073 787492526 663710314 688460126 433071756 848106545 831572492 839547381 651816508 819636880 630369015 752790510 970205895 999880178 688582306 725062932 605478132 870214901 521200212 793858089 981864770 983664210 537860365 728154588 197140239 221762807 482510565 659838900 261165211 581753869 965597947 969126273 107583914 845050026 903928198 985138053 754666888 803996243 706351045 841459417 680101491 885865843 350719775 353629810 291801085 308943652 829520468 958465656 227696393 920396753 504171123 704315410 946176810 969711005 219289071 708459054 341769729 843071845 359424722 512338876 196754440 563359934 901681308 934053513 204401693 806032220 910095403 993660526 209649569 292930653 832422666 879174651 241087091 577278415 295293163 795955612 682236997 923943010 874519083 910625284 548090475 978251466 805407525 896846770 694368716 887047258 469563785 652684140 3365374 771988531 964246007 968151338 876024533 963108928 678846999 829926687 808428744 949267791 270958500 629098894 857270765 872610348 742921796 928721354 610823632 770044775 605649952 863498132 984179722 998402705 910857787 969999315 776806144 934568410 714712515 845735929 757614801 798083986 830071409 938579367 214934241 575896675 529312817 999514772 591633144 752853689 502769483 570607252 165138478 481317317 509911464 606735897 840389056 978571074 707421700 974558994 998683453 998779118 97408301 300435666 443526418 815379071 765291871 852710539 360857733 871376885 959663012 981458976 882342855 981584044 636875600 674388484 745825009 752184024 951397778 952927192 703094371 821265792 56908063 158115988 75086381 929071756 448245512 937391651 360388735 674966569 481620558 557507103 209642172 613958192 285073622 574742646 996477903 999249263 774457125 944607407 871163236 918571878 146094553 431344381 739762715 821150265 272242558 814946272 755621027 969002158 752196425 924630088 93806479 217820252 472099436 690097369 762574656 837039444 680288831 884752909 837045394 934563834 451891688 740302803 908273879 943954072 363868008 770807284 178215505 964489765 852947107 899368182 881604230 912906311 309439352 610935253 863728986 962916733 679961480 682358267 125729805 752285514 384491134 496489972 4025830 943116212 407706489 623224384 537532213 768238402 126037155 718321490 166655440 823403040 475495140 910354529 587939869 654436891 864948171 947166301 817927315 975123297 220178858 588197154 174298983 945002048 577311097 712254320 864023003 970319711 460785963 654112992 909136233 947582992 961146194 989776214 205120034 327689799 779582785 830318961 360773617 472291082 598809999 981500043 706856366 722861298 529974265 991836002 712944299 853965496 176066004 982639041 644919298 989091149 199347054 567863660 151772732 923667399 27105934 974950815 558743028 746332030 186041443 429300884 102418134 570061766 986658594 997367702 761006820 808837512 100524358 742220450 192708480 640360480 672074417 908457552 510870795 691714544 156985502 637706333 77732501 566639422 472259736 597973560 502523368 569896766 70580574 496715100 636453268 978275736 304053566 888233343 407037619 627411903 273455823 764738339 965005953 983266652 263722489 526374105 919812224 960754159 5720262 491374431 112985151 132741183 17151538 328762830 974650004 978825473 383877508 392248477 931983147 993838987 979719834 983306304 241950606 377150069 635366651 870654329 261010468 824795249 259328952 744694801 875969856 971811123 546491832 929021910 686623223 777240670 401219260 901432931 344997719 582755361 32683832 298054524 961831021 965670309 494880213 975953786 128272080 275423610 494658493 968565407 472774724 627460106 957954806 969574032 109331707 425384698 966126519 999098929 898207244 991695609 683081452 888314199 638436585 898469882 562175572 646766116 440107953 599947367 278844370 974610690 657778036 906801402 89983061 976255647 338086552 789002498 729139336 902454762 652721476 944655062 146735060 693886363 117196649 365875579 582118037 705259167 236618670 477619133 51000930 418286845 817748309 863341027 196927485 772912225 606179071 830022367 955928549 997714324 342069268 982068237 545992963 567714960 894865040 946046589 886948208 936253724 632610504 763688998 504498061 779546269 652210455 710525985 623436150 978256251 778406792 817625655 405049391 686931812 216783055 624700200 602392969 947275878 723184538 752786274 601292575 847842416 595625191 899564882 664511561 952396789 67198529 739336007 61863048 688196113 900073104 942613695 854957192 948379078 654041705 891263047 597924637 791535510 790586791 963065233 618865051 729817344 185213318 944836492 832020847 916820647 105486766 750157076 684048700 798230109 187642013 263498169 828981249 903156907 835859300 961712269 593408926 646783664 74702732 158954918 312209857 572069716 538709572 789505638 418669458 892713518 900996677 943471055 937688995 990144537 931094534 936530314 470381800 518678045 43253991 962394100 881799740 901179913 678157338 844115035 253787881 459752298 741939435 893883914 329702729 891127941 958925936 993626518 78854302 241225986 828736765 930624472 259367237 275656758 387046399 540282889 258483837 939710123 987093972 991810435 820378160 860930066 324340283 920165671 953615495 988844838 366765322 553224280 462700914 474811961 687900101 866888391 407940189 802509644 698575088 836335730 348535794 362054217 897794644 938994910 98649318 324711521 368616289 956759998 71470980 535884919 38806659 642903369 253829531 367456147 814731689 845054785 405203520 587558817 361771504 508152221 160788751 255602445 901396797 968489181 599438352 718512012 961057754 995976848 647931726 966493750 907103118 952557714 446283774 946111972 606638585 685674775 530450014 908290242 29114881 439182189 134569194 735529201 843256810 974807518 502409358 766766365 573349855 659269366 197571147 649332507 741682491 996163881 639855641 962473840 215626762 332068883 460606129 560676184 905908008 980331287 288203344 352978534 846490168 884066573 71880340 631913055 932719309 947516280 315026985 797183832 85291161 398626903 659967715 920883033 678395732 889348193 84349549 250348948 569215216 639945526 536464827 613716872 735949850 787245125 170802455 206426391 434839256 909319018 893783542 965224361 545183708 696783840 450628731 711250105 893898112 953433011 428978400 721109148 577078248 835658702 699578833 699927910 169337824 456271855 441957821 471960681 12955820 81180593 465633273 474695294 344045468 762525646 73264294 130775957 327817266 481463646 357983653 987867210 609126797 706629277 485313762 906272526 465474068 728803016 96714102 195624018 105709479 358086624 352463649 990639739 363679054 925592004 671919726 806927819 428358086 787364112 790557181 919413501 47886454 106494095 401201391 600521313 243974543 656463380 860631175 998949450 345533382 360016052 925229636 996476559 119314922 747145948 808855292 897341191 386839687 721210131 371396953 881377506 28233592 700395429 847059209 949580293 145652952 694054167 430759750 503437072 650388371 713420463 739853092 890933303 934473816 947313277 350965425 718102803 141003331 458150404 743618930 901602194 62482434 917731179 732762445 743448012 780281652 924588290 554996632 908391347 939716028 987297627 773403683 786133430 795385117 864477934 565440245 871009776 836612133 882186647 46078083 307638393 93886510 493308403 683618175 915821523 180274038 588245972 60263867 600453323 406449073 917582099 577703474 986356512 155836787 912501443 901170929 928244911 963986960 989260687 160493730 892676067 960522651 970224942 951414024 994516801 623364963 662725864 366449541 867196673 403992353 556375035 282938303 336267521 832910126 907721292 86866121 539215446 388736999 691126329 430109401 951625202 621700041 636816698 97134972 291355968 873769684 883203211 650002009 900028551 366701873 562434259 425184893 702714772 343563865 734244992 246520267 730206602 728500843 808749789 431704068 897215903 99734731 502354265 901198349 986043042 454452524 540134568 734518383 791644960 466775673 554832906 508833937 985077154 774587333 833203418 337929950 611183142 228136274 540742293 731924497 777073988 81023594 92697202 537837531 937181953 875854227 915381163 317715555 890984044 402836070 676290650 670280451 736456548 720550307 943658666 136022499 323864823 289989128 649695876 42895483 589575093 252760904 569364847 512233630 710187306 47948637 404606867 600346608 722898981 283754146 680473254 604555139 787587252 177112903 818815729 238102027 245968306 202859707 946765845 923091024 923358549 557134573 750622448 887164338 997708272 946533404 980025831 596368404 936768289 461483713 720186283 597768796 816825750 334555410 781710052 147118287 862719080 973658721 986591947 879520275 988771914 173102808 345454583 506204929 772165578 944348125 950138056 143860355 909056556 42249168 337949662 960356007 969674880 841312784 882972574 231592684 246086495 872081703 988833562 767979969 807842737 53039256 580796199 486126147 634272000 205137138 964282818 101147472 580433664 518490315 714960734 577022943 780774872 38203587 157932780 837796633 871068510 328985381 643664727 231170991 309302105 73541636 937233966 948575719 975925601 354229132 544300734 31507978 175550894 29145964 109146271 619068451 978731523 183253569 504303645 400038131 438922860 187018428 859241488 206160234 720943560 962579534 985690679 41152755 221299320 654920984 669173908 250342797 992496824 895123199 929913091 557570044 570734643 756401759 770002817 405350352 561379063 242479826 705686514 875923073 921504755 376377306 844068147 338927640 414678450 642681351 789884543 514298573 666956563 299164753 540866164 358728948 654929433 104025418 171658907 214955049 530279751 635738707 988490215 685654452 947709904 834567565 947096261 394009808 557524224 483376354 666547020 852282916 955331170 566964665 718832630 992788694 996521006 173680763 558127263 428957888 799961471 837239797 941276612 512823193 752716228 665273197 998857193 189596845 268912476 605014120 872540888 869925773 906709902 144173281 549134507 672881075 968741409 921387899 966885105 232153127 951674553 981435560 998185296 860675685 968337942 792991460 882204169 148733513 882084253 587766885 841580316 557795747 999994118 266047431 332652738 633661972 667097332 831828004 994653884 299074454 820396053 961182850 977591305 246211 140164228 152625556 597249089 557155483 560270079 65556976 582404890 496778015 661953622 838967501 891618063 226069981 396564869 498429419 788963267 678083456 864466529 851843834 915221610 369920396 821319539 652094572 904270526 548975670 581766317 247021444 825663419 161575938 992987986 733591502 802384024 125070446 267937966 367967555 515344971 712704517 843860733 119002920 929497806 471988899 786717921 241462024 585249021 239200331 531821059 763561273 984601141 138277823 819918912 228163631 872757863 209879975 823024357 961671676 980031668 228630042 412654219 99146864 538878089 101838855 730853336 466066123 846905662 126314006 521897540 117662320 630291355 523566071 591324878 357240258 413978000 641080830 866276571 384894967 532994557 471398596 774999014 402959151 596898431 335395418 849679934 433776128 866798055 694258813 862998241 679681212 803894982 673584617 770320264 253274206 264262737 781968993 805747158 334071915 396254124 719126424 839455381 306966987 470563910 739515017 974146216 1780502 467756073 564658328 805762460 329672760 864086818 727672361 783840973 365669339 804986412 434219899 512764548 616029015 843042671 674951304 876920781 337174265 959364087 134105388 895720481 144231840 573594334 20359497 570566412 684539980 710923433 454017471 831089743 833420588 976059354 14284652 560432358 37155027 558136873 802164914 993114702 48743435 632461254 397464041 586963269 132338437 329914686 918226483 992480058 815548304 946776390 886063008 973953795 113903806 266971243 546869110 926954362 941693353 942796866 431487732 438519235 795771017 804361196 164790771 517797935 63016061 77724405 415629332 599079264 334218083 802286289 903195957 950304477 240607467 835316918 779273427 965992130 316921796 375628849 803896306 872874366 803349141 970787593 159423172 343412149 416505167 725997106 991515928 996769234 433736354 626998000 771045839 898831914 238903120 955706485 969039349 978195886 423503546 783425087 131819303 333423502 728544224 825070345 89896974 216554949 696275957 938219266 827873208 858294677 693348990 714351413 621471641 851221723 782293323 817569710 318357105 583501315 946578341 988228683 65735773 89167525 45872947 857798617 815375750 971698899 926640474 980162289 192570292 871963325 524594854 825913369 167127170 430446864 630367062 839120780 740231663 795783805 31486176 996182954 807692549 860541329 523801447 582856861 732732781 979217662 738874814 976880732 812867028 832642398 718142909 807350755 206230128 796426903 119444376 971384067 344514516 832294538 129850044 175810826 474231830 596478430 248217069 419659909 407613382 567881850 924699830 996319637 792151025 890703160 91195699 607271047 655222150 736420096 969049642 995545778 967252065 987902242 432606140 827092786 696173169 868766207 992700107 996000755 200253035 926508251 675729071 896214096 718182799 968949252 731844774 755941850 257709997 785980432 214881027 348592307 163973702 530858724 255008289 728780286 855663222 878125372 522457826 680532303 463535714 930456447 627829904 771734882 23736323 404249076 31572054 311187905 892095102 976126940 514726981 615611622 95004190 298667198 126106577 547278304 54953780 957304386 238245371 888716038 968399999 989802657 309384130 769222969 655654252 841464568 107979917 436836765 460146709 826920020 337460960 644007707 13115712 65507887 291836141 816689743 250747364 911843275 602090034 950167501 588894450 937857575 599979050 675258947 532346673 805756756 250587959 831695905 54607778 813548913 470047434 716753576 799887720 896328043 321189817 992428942 382785359 541418020 331899140 986584238 114356352 391898147 96419568 411832816 164347923 771881837 183119357 478813247 825188739 948745418 205910355 891727878 452455507 654171471 737668885 987937721 754541966 837805370 663427950 863405139 185856056 521564028 859585278 867872392 352989708 481642514 796888587 840334063 785057830 901995931 226554337 417249622 24562808 251737718 443272650 774315792 717325811 813933927 86033570 393305140 778163291 779017169 536333062 656580436 285425656 406165830 737914947 818828183 35987113 400365602 477761490 927227942 327626085 335903815 207456402 240932345 909391077 949326456 446248879 849700158 169809555 504724802 776484273 827731440 989867793 998886825 204844199 865063000 111324347 724214542 946216530 960243448 99498985 484056723 487899538 903021512 203750543 510728336 171203050 326400478 724133683 984891306 374275735 887703315 270886691 627839256 787353099 995809429 162881807 661267348 751343271 805697261 797019777 853596165 46069982 658432622 781041775 841848161 340825515 587848644 806282278 818933075 486536677 675501682 633929728 872336640 385680332 497111246 761656725 961355293 133231944 968692087 51962984 391117166 823433784 999171150 794793531 841676289 579053154 953621917 839291464 855494980 33528714 331936168 760457020 884958764 847374556 937034878 473340927 618020290 640777409 717262231 595908692 933372786 520070749 781866321 102346117 880048943 989314424 997057661 82518798 457306026 718096405 925456231 849792270 948212897 666101236 896787147 206700522 672589182 813135965 859918108 414778310 649789178 234402874 846653125 617680198 936305435 341930501 367976335 971495665 976942440 898585785 978809499 633206639 960127991 102632442 435370630 984541902 989580945 26683887 274132457 282771531 824934316 526692011 802163323 943059992 981247463 39706164 646654133 692999391 817287304 853463250 911426557 215853752 387849751 397487178 628306506 313846952 807798446 9631037 555011902 956810957 990497404 247621321 444248614 190892474 938597819 410537538 981145968 886648886 920789561 380142175 814514774 981579670 986580998 204693366 617240316 603967458 755740823 809753545 836240881 595459594 834083648 960662524 994108375 811558958 908001123 638222190 984348159 564383298 999551037 843314584 907552392 593734389 973570363 161856647 748154136 368996858 513081336 281846418 424318576 39570185 92304448 776487819 939115638 343236497 643240520 607804965 616956929 430192755 714044508 728112004 989524698 890480628 989231182 948548380 996001692 252454343 854765066 295625704 486819692 452173966 616726347 721368956 980647026 326447155 620077286 851231870 859993547 834187104 983069257 935307195 994636001 738264801 786132261 978806504 986583964 383505734 672354113 477578766 806131844 571875268 855138509 242544831 868772078 912364550 915741253 744551455 759673538 680476265 891239297 386234287 774652318 805275552 928805947 156816861 165804675 142690983 202700280 835755430 874637476 543938351 913699448 422774809 638302417 772908038 895129852 541691153 871442403 76954458 452948238 496495889 792605476 316071146 645740264 81827320 572219697 188230857 639234520 723240256 902520163 465422397 960211283 917607643 985709700 319792695 508790235 280415771 797831105 899959056 948126885 344194931 881358585 20704522 112582662 551109204 858387925 753199131 766300429 839635205 858887421 208845049 512223465 267790882 835455507 512054659 664829644 376987920 775964168 800560139 871169677 584230387 850199365 878823604 897533018 1791365 71849626 905113692 985302485 569874175 825431375 869627806 992533263 821887249 988742326 571716736 638326037 896730333 970788474 970007842 987254012 919452597 990958369 960959673 985774152 601252451 674643590 74952789 837450934 164642943 762067351 609850750 760039370 264161397 817671038 451400894 929333855 230346284 617473594 84000819 409854146 144691328 843729961 234453526 524251005 16391807 975277294 229150470 716535512 397321265 820370173 685053126 793426317 779421404 936917772 520825529 808981339 645435857 835101663 302983209 742783604 653858363 862690789 702372404 747907878 53327972 866296813 388351377 596002068 703900614 893500722 749578795 953498336 679082660 989298610 538215604 709905509 77861122 336008797 987247649 994751900 674047322 845634405 849862429 912672185 132701661 248462157 83016951 251928519 90949522 449525841 714769152 901269546 579665467 659637225 629563566 962650578 129422646 874491714 826427536 920274676 616211407 917871243 878473 19356017 894132366 904266153 156706526 480687830 539099148 767471368 609017254 787637755 144878803 227622858 40005319 437070017 182549629 386136341 147300738 910299615 945398230 973299449 667918006 809177375 220273130 512234626 5547115 171454007 470953012 688961488 245804258 470254365 196707982 941307791 192123545 403193551 77999660 388415111 626448063 933511740 892525456 893121808 886538503 929659879 525769878 746756343 22846983 940994271 559120473 590499427 853588692 979802875 908655883 956942138 526667793 629993226 812952817 899346935 241889394 343434727 607827666 739268453 390521233 699062602 739361866 958228796 896922841 993794493 19609574 370088567 910903495 946277505 666955153 924932192 854385681 916081951 214155089 663333044 292204002 663673471 71139217 304985881 174676489 551848102 275037702 544266070 602713200 612973159 945211854 966121377 923572819 993831818 264567291 753206853 337141816 755019327 497916399 935628158 352373211 391976934 190963141 383985443 917421933 968147897 976698688 977613123 998608449 999387312 688355868 983440497 233130864 839215782 478940766 755623065 710189138 820373508 907267863 961511578 206105527 362009938 451658621 807704923 104348505 782243547 514392099 895886766 991967882 993187733 250384596 793802302 774797425 832081794 850616020 913859548 743802758 999291455 150548282 528536046 397784198 448391558 799010157 933941406 157602248 854838098 267054253 809119286 848476242 967212837 232146729 831426954 261439181 883287812 578458175 705021378 643637164 688506629 256754795 680638074 9813904 283117402 998620514 999305401 265040328 465379118 357421443 814918072 442454805 495002318 743056069 884417472 967948803 983618516 884335042 969657830 674512076 769582100 298421120 948494536 641053215 875787746 357984591 834662197 923277886 974857395 575716345 911014014 729727168 886856338 891800801 937346627 486337748 836359258 854549699 996745263 826888817 936436753 937872367 979035902 285995840 816082377 866970272 919266123 814532767 916284100 782654226 998485254 174317159 680354339 557019041 942850355 22801505 326914546 625983122 897418483 386908219 913498450 737982400 839528181 426136249 649571024 557050097 697285792 643139971 822588384 824532731 852585657 326408845 599597004 882642636 992361653 992301302 999860221 397726349 886162567 325945526 978816327 583730699 981461450 800754073 960547442 396927493 509265008 508278820 983722960 40570390 561666233 253153270 539567569 306287657 308412168 940641686 957598564 258082163 547163402 505822495 754877845 851589911 985450923 174174246 483359133 345234880 513941858 49291103 330117311 20962594 411891108 403313644 554722471 113159489 856533027 366106162 591503634 32593907 241234493 807249896 933562139 421284039 738821143 208160107 304949352 909345386 991724523 728779895 781371072 717195316 942251182 891410720 979179429 895075120 992559481 978038490 982377070 942366383 965067261 504552480 559362273 724961892 943760540 55319294 462207456 693637160 857280902 961782608 998938234 454317534 959443569 125172284 714899128 735780611 949470421 964849691 971712500 98249487 132269116 709142851 805938535 954101543 959720449 118317808 340132858 439961424 452802696 336214390 571112592 560197192 581603439 859001656 866065436 595603159 737488394 432391721 742131503 373490071 381248878 664348964 976155104 820003925 959399013 624575045 713850594 914543052 984578329 69956753 957327812 83031764 831646740 993661855 998520126 27717739 244260045 170001530 991572097 755067119 863064720 435514932 547173414 953050204 998354905 833887987 902266208 420890044 797561645 833424389 935900967 474684435 586704965 990476081 993721711 787619339 848599415 423288685 835572618 523096724 645523638 39591333 847723003 783463064 871957739 347817394 442445681 382409358 839657525 750488636 962449606 672490618 918312209 440975576 508031218 561227318 980865031 895871929 952093938 433526016 990924165 765696132 934695149 114688755 555053917 538435451 845701205 566614731 992284426 403706498 903087432 851847690 939376245 669023071 688916147 426612210 798172112 988827282 993014051 636297674 727445236 58293803 636750217 23910207 697726680 97494384 956505071 46067668 204923466 779037025 902058239 917192106 978330272 513844764 794544754 723628762 758565584 849100451 992054982 915800805 934633714 858593369 959360087 770948531 934615057 413604503 911258896 870363777 982901396 122646055 313034592 989844469 998782744 120271491 146033908 999872393 999936710 389241078 933899095 399433043 939269666 62904781 372799285 437456444 622679098 159749169 385669376 833842386 861858138 70088241 764532149 68704753 494907152 318373020 502856233 103765684 965399149 726272904 782080260 618582894 712174461 32405290 857409661 258704212 605616862 393917552 528910697 532883872 558502183 715041471 800102006 811801093 975381064 275962083 921646775 577635840 913465998 143065982 999374368 427586116 469295539 809827287 903982495 636280708 883960635 146118867 755906259 492110672 732424726 108117437 676461078 817650718 980770448 409714894 417607411 967481861 989012948 438751084 876640899 421046381 726624491 395217136 649152732 107686320 751042611 990135632 990892221 795222094 967085576 316215236 588209082 24583968 962425529 440682041 727196908 688874774 993575273 97996329 847820901 501027212 516260052 642026640 725231897 758386385 997063844 293358845 344540436 997016960 998355263 395874246 987258064 684064485 889662213 148198628 761809889 965397047 973619054 851818566 955469797 661254019 704984562 35111007 629409179 423504263 640893567 658869130 947218138 556074475 627509560 263921746 744681678 449944354 687763159 367228427 514477777 626082771 836518648 585196193 994226100 557198867 901556278 319818821 589367387 43233536 987192618 643680956 947957400 957131628 980144711 391436889 784084022 252541360 971402126 904322867 993922076 174638742 806562705 46674774 91374150 384355511 605520110 67381304 480285307 135396288 322620308 589482951 872731076 761209767 881660959 554316931 803381141 289559326 567750637 948987626 994133055 699157345 999921485 136130076 527911773 466213641 536772465 408490217 888928368 225654444 474561666 41439271 987317556 503109298 988193949 403351430 696672355 12002836 27184974 655685697 744817293 155843742 199213124 375981719 997418517 235041284 247828607 215344978 738362407 673971060 687610974 664769622 973216902 207140729 755030300 29148757 460986058 487834252 613967058 595039424 640950157 548609531 552069511 444988039 979736867 193892246 584770272 324922391 445580102 473603390 747292040 786232308 838931078 87838947 302167973 245463351 359378203 421968880 771666755 807633882 978704003 874725757 884447794 837337041 860291414 670059972 932965688 227590317 809281834 179439819 251564780 96339332 97767097 49635803 503115746 832360338 927971026 865486886 975205831 735350709 888089600 915706440 948178974 463245279 600730952 618875186 905178562 302970465 929211974 964172382 970630501 718396553 840276322 365423826 947159250 907485487 925715140 643889138 839934530 956219127 974829049 377740946 752814221 671393556 825691400 564860072 574766518 943581499 966977459 548428116 809232097 297657803 965122817 650468524 842019034 640950314 841079931 89825315 914335206 845352630 924449613 165884147 470952929 863295309 881931767 188486292 603508856 17620189 533305855 58265261 353248209 171036183 496020132 584929896 921145218 184859837 745370069 418261182 884746892 744562745 946604299 801265110 959840206 749319590 992950416 789459506 980230385 152592949 787034574 926512101 947668202 285733716 756705253 508978137 693805631 147711769 969415705 630273737 852973806 274842536 363544657 261554212 819938151 845976296 898583213 537020216 839892748 68869063 267311104 431312780 882778636 486526634 626617698 619242149 880718855 839478648 964667534 727526032 812398829 348084895 897122898 103916404 966516551 257378131 719631650 287794316 570154447 461893447 751712071 416385174 957836293 198909423 332907682 466519491 920678130 782319646 994854679 404107911 801076214 89482197 821711843 268441887 654418807 116069564 276606888 794556379 982736668 29252739 463970968 70407079 965091117 500207820 850936537 636037078 667976200 977917981 994126040 890023060 912456509 415800413 417751338 515566950 788237959 310051070 314072411 150370729 664258462 573500225 799345213 611185419 916303540 521517784 929131732 354730864 373387321 867199799 888348046 593707842 968421990 902852414 988466740 934349917 949510822 160204680 743380749 456745732 558959074 555413170 726956937 165056063 206892061 895821491 993874008 580304428 622665732 409308310 509422884 151555872 917696547 408633191 526105260 905993380 997195822 780455529 908018524 54569701 728858848 728418419 841585907 59040250 507304428 1134551 140980649 84944343 491340681 514129037 918504961 872776600 932808078 882336945 910677391 385589476 941716293 896303447 907699422 691926310 989013780 799691991 927715816 173954233 838912752 758089013 758124577 567850722 641331938 312424571 535859969 873897305 974662321 661361419 756817329 407674343 695474442 813783436 927113924 608566831 756639882 769652290 981440585 638177694 695258286 653654742 880741997 923746875 929851075 638743459 786678560 148708910 878356701 655473356 848360445 516857680 717160544 250751520 337417425 790348965 938858893 41464146 507988806 345184751 558968201 940648974 955026584 914951827 957455065 561961789 884229394 181329523 843483987 437920764 690859323 838079149 952555113 383255943 733665402 471264802 911944932 909524471 931491851 15258334 968997335 495965461 965688010 275647640 940448045 637394819 998608080 814506157 912720074 746497552 998050896 918607658 944221575 145066884 175047380 297544020 337974565 268787132 556821576 143371751 237648033 638192492 731152217 30327386 267120765 832952268 856744199 508200131 596359793 791368125 849278233 451294401 547160141 42129281 974610399 712019644 745935305 720508851 905087557 573963058 620948535 999625418 999677242 535108695 897660794 713145814 958318032 180392366 581101378 389694688 707568832 782246345 815081816 350901323 836317544 665204124 790782536 723597086 819980456 521920014 998703339 620769041 666743154 775691510 892158306 78551758 249466903 413010274 737075782 222877885 606047606 520267313 554983301 445072013 808133514 67905583 424952856 712128104 898835445 421507579 925851852 423723842 431170223 241620477 380944504 460085342 658204855 85341122 158666151 434207650 581620120 330284567 371372172 45436986 375193481 37806 549793184 820197455 985126053 256101695 658539362 917412047 976050487 273820391 886667396 459432767 883700202 392958050 567990084 636233578 649551190 845234615 953910783 88491989 919721006 425488329 794254261 925841625 979116245 803609612 973730591 45251764 350723745 470569949 680593030 736895840 889329584 542987935 579096317 705086714 789335925 139242122 795922839 488583686 834066620 702172409 797692157 94621718 660891756 943146023 943697008 61921253 482690689 141288568 681261665 438056818 763549885 204827468 323100740 82446671 381097547 653346706 946972723 745076105 819690664 697870058 954554448 280465835 961866315 147264067 861708397 470678798 728914679 99764706 602927069 358945798 911098654 550601527 908069958 321666413 437182171 86184873 393626219 928265742 970220925 336284416 558655984 427087493 867040038 983217125 990069809 682481753 881370946 760393941 795257327 887840766 983326482 28128234 154602411 475726769 536192345 180573801 871124236 986381434 995947364 706530416 740275919 715728426 828646494 57039073 838851551 270809627 380247453 560994696 868146634 946876247 980090199 520716099 788330512 390785214 532251442 859997825 993668660 411679764 676271420 124328632 626894128 643454803 937325690 737515470 764309522 350178415 821592910 911477004 985275154 866865704 927172421 453552059 604105734 779216749 993736842 379241926 485417851 156950082 262404444 915398203 971601729 561805843 633523635 148690668 576543858 926513110 956190471 555126671 898441240 786806410 817881937 665938686 850045391 823223072 972571029 451215787 960224824 469947030 734374751 391194375 574663721 228224477 659969477 572453363 881235722 267636024 685251795 812210640 991939786 874598066 951533697 868346224 883487908 826597146 986149907 932906337 984918361 441481878 723734710 539661686 777943289 484554329 485890735 957939405 993298183 278894559 857756748 855474090 966204964 287756377 531958858 447387099 955377369 585831103 760573847 858515380 981089376 684222434 901432456 602133240 665492316 163403628 851416158 387164696 823609314 982188182 991790851 314035273 683566274 719720205 846351512 267891021 819025846 733691056 860944830 685394684 803913762 246636701 801973263 326812305 448467769 71337258 846405595 946085122 964457908 880580861 933250942 898891502 937078588 767403527 960545706 230151860 669811881 276936253 534557352 634299291 952221884 828789730 838279360 271717075 858166635 726595158 875845653 348815909 387715186 168743883 385657478 981704982 987339867 178154356 309878229 352034745 634400484 541985275 876231543 525952063 676519801 717880329 793536235 540777139 893098590 503624409 845232085 247470583 340353075 224360978 654073707 826855903 918193380 920582614 980026764 605751622 641860385 543410558 886011700 90305259 650408129 129100375 513256615 262806064 767578300 37020388 607096853 958028234 960993163 113453997 114773076 719560689 793146995 774042589 787995626 254681062 289415359 210813009 655590295 120630056 774169894 790447503 841771687 579132698 799886818 553584175 887244887 983996168 998386374 311094071 732879905 918375364 964428072 4656805 62722150 379543451 672080335 526536832 530946596 233716906 508983911 918977641 972441260 208688998 399029626 917386850 949294887 924268856 967835349 72582656 80400655 49554868 271092777 216005218 910976393 78324460 259339355 404317068 544402387 968153452 976095198 273005667 992014166 136370867 964797146 457985732 892250504 573836256 873956307 342081920 441265686 108757322 336912080 775913046 990227091 729036871 968468140 555546160 595073437 775475559 795821215 558444331 613958794 93603859 169414925 59444366 284759807 370609482 829095602 263561737 912590396 798955289 839487676 558661556 636426382 725320549 875410571 104624829 251201974 892066115 981209546 642837005 822416353 294009617 410843108 68256936 961095907 811493792 843858313 735896827 740970753 856848192 933318557 422485198 594824584 455328732 933915003 833550377 971571385 657963083 762614233 282694175 772750015 886934990 921899797 269655473 508011272 886002303 930450944 368590615 799247708 530546808 580564848 780429394 913008161 473215341 895878011 782934669 983240148 11595632 396112499 369278938 952244199 31252449 87035484 61322217 185016806 437000550 557362481 307754511 417234545 61207478 797920907 816827052 867255604 719732608 980192429 637014445 782595533 774550086 824991530 807292072 851297996 466919187 806577250 298193562 441644223 581351546 771880296 313317708 629046419 981609078 995659988 530490773 580314553 623867286 784106832 103312211 299025412 307317183 498125422 189542623 932747442 167152924 445032846 818800019 936107905 891941952 907482608 865916774 956616360 403529285 426880645 184401135 471874668 475705390 795076479 877098570 915144691 239537529 969065336 135246442 536215648 435132969 823884375 574035440 985404865 322347441 388170894 585639336 833869970 820324517 847940995 463163861 770968624 515325739 873016963 576000018 583763811 364458911 444599428 898457071 907936957 727141218 910313699 384147138 606765719 148831550 156134833 401904410 925047434 454119553 561265855 708419593 833822300 395038131 874897081 211911453 310382179 348408243 961208053 807699549 950816667 55084270 225068672 176275911 928318005 460059257 747828788 411481192 948858738 628546271 725193063 208748274 326727145 554336733 714044194 477335051 703847473 392712659 587308904 121917080 926272216 137537626 575823079 890710073 959672868 45569019 674826092 157863468 973452080 941125156 966042355 503194696 710282796 275695993 844356390 786924985 800487907 915263547 923664100 846710247 872327309 458555361 683962762 104295946 469128646 954581416 963761099 165831905 716864087 322381961 887613448 777244093 854631097 37207647 607834876 362417398 810381135 739404683 878036662 737701249 815196991 45892805 384835670 34088254 205809185 253093040 642545947 936455291 973369761 678298268 777322700 714140089 941204842 103104593 669608492 257412462 548508215 24374751 511367406 192297884 866406537 138171171 913924983 609947085 921360523 711167027 868863203 117860275 343660023 420062531 828625244 562693822 766109944 81946967 782552026 831755179 854774735 789710878 813923161 559787544 700185349 761370960 769539485 286865346 833518906 866723061 872809324 38885723 177650532 103605984 266821417 474600461 903636285 118282207 259534390 686112610 733960489 968529268 975598710 704162249 868980158 608287533 637535470 242567291 334147336 339877055 423933184 458352842 479638086 119168059 610089205 149541336 829421768 973073336 982289495 583942851 875740215 925593675 973398993 415566770 882063186 648674575 854967006 677181136 709618537 657382828 722234586 321273638 790230432 673676892 920832791 854282074 898603308 8799927 444157344 858655176 992601810 400201206 547190014 893396093 978665347 454131109 711687433 975720929 991919782 411515211 486579239 98078652 954935436 142325146 975346792 856951412 922223839 184290903 542252959 448047070 606974971 363505292 929649287 172510260 868849009 442857159 971996698 55875670 561239895 574639943 954061346 324653938 928395364 583956983 897974080 23653344 881721671 707823086 807992943 670750606 681132281 348047921 505631118 276434282 772833179 387813846 407493859 508702747 567489132 278754470 740161824 388914938 694952844 380785265 544462786 657781295 808260225 909124449 925753814 824665881 872289458 563239951 859488084 771779311 807955936 641753558 787872180 855550246 861482451 52653576 656354422 235613557 506482014 975705919 981149864 986743884 993979436 190236194 748681297 922681642 962911923 320362314 793446517 92905825 816615561 116216651 718827526 416669938 638349660 670426422 686941744 624344241 853231617 912403164 948331850 382032945 791640356 968340568 978927983 974714070 998365661 985925566 993440001 498477221 633156475 300132509 842398196 759014971 988297616 600535844 743037573 934183310 950465411 15807395 19963117 992132171 997170688 739586992 874349349 499947346 730439863 108637981 926706856 313112393 682108476 363069074 709810103 25857732 345793786 468065408 895508788 478311421 873690762 234886453 323404062 337363299 968827541 385973297 600949031 57335479 83077116 419631285 549511702 378340909 674574596 177722990 181140206 970062290 984419641 715338250 976985222 277526189 465747066 903384098 975997457 75245949 892592209 922750175 960458415 473596754 604732972 76523004 573905882 89788171 508727805 737910065 880678377 732693155 886428826 504417812 952635486 889319454 942497659 769767809 923714625 590614777 632952969 859621787 946853948 486636303 975493401 635141285 737164512 933544878 986633129 991695968 993144032 740930875 880518573 696940270 915841643 601337660 865935945 60952554 797324834 383801355 429458351 668468633 762330042 86190782 890174174 541360006 660200665 186946021 602589850 735623684 839428542 794834668 872673585 695385654 814365624 508125050 791280611 693827022 852072780 663659874 852161612 198480680 879176607 961972665 994181067 886115663 998918263 328833037 490351574 212908572 790020674 887236700 947029226 654721105 707723758 247902906 676413462 199578426 616053490 916724999 949752395 777532513 862175445 813058339 878121329 767688161 962222319 957999198 967224172 72702558 280657738 806874481 940556205 746412770 795440101 133513503 299930552 551528096 660929636 280812414 856176615 544755624 614629961 608487745 854150092 969523003 987897829 414275524 831593435 213262809 772649382 685435247 896631854 294291627 388322101 149616953 784312937 966847465 992170479 886366709 973650377 650483983 933646933 220932999 717710322 861679481 916253382 88889000 313766858 109695205 343816220 605846073 772390552 468635776 630270872 672737606 733386158 367725934 999416782 169600305 193134854 962908172 963026517 60534435 180294628 240374915 356595117 49807233 849900855 197801177 779105292 160412128 329474380 225619023 482458028 677359166 742547983 94940685 962062363 449524955 916177213 754369323 989016768 600585511 910448238 463012199 836039301 317554879 421638277 486331306 762476606 498478028 696615266 483478109 499000008 268364610 720687107 94983331 977026439 380679404 717236795 446697727 838243538 29245755 717225132 429341608 481553895 355914743 894078095 154217748 393550308 610638511 828871642 152271616 617306979 120071492 473091343 488804612 601680023 281011611 441057975 510865439 643595734 276092911 767015026 179144112 251779675 247007680 690421154 941658161 941868521 698842502 710838657 904862838 937467081 500643705 586182195 19540868 93424391 511430205 941313125 828661231 908975047 758203885 804277352 574810051 912749418 554917168 599602688 687285768 927095127 629123374 895974182 538979410 755570962 905659617 932405503 888142116 987851705 434118368 981166362 955327202 960369395 469515215 983661746 750665099 903340286 384131584 955902742 121669903 346540580 9801923 108647977 966228515 970227620 648582314 815179040 558752450 686174511 369100707 389835869 926198282 956709168 465339886 763443846 792457044 817748209 989603559 998130714 132471683 666221170 392326950 799682493 870558137 896019783 60398552 850080978 609500337 668794145 836266075 842945664 518227537 987306990 970812320 999069956 910765145 967529463 1549300 589436683 390370015 849441072 691084157 935615399 738571817 940516385 803657968 977303476 802628275 943954649 790160053 839736835 510934727 863849555 951003474 997447988 867722839 897087753 435698365 990242548 163796773 881578416 903468785 940283375 448941072 469336462 850924653 876124067 914857445 999468859 545607481 608663067 564463680 965346067 686523300 817860416 156711749 740758118 77071010 560062296 451233961 520728834 916870566 936568561 608117610 939025487 769371355 870502893 227965786 965930635 948010661 957850774 797979946 817725685 759807272 864803895 359434233 918584930 599125156 761714714 495443705 873735724 952317419 985231073 528565352 812836778 652211280 670299776 478797532 938049162 926368125 950808099 217791124 828793402 967475964 969853956 431417300 452521057 139963731 143975883 705860664 734572704 435162546 477842983 205254817 625390329 734798047 874221272 486436827 623534905 945804676 966904922 209686354 476518253 228123779 839480488 875899230 962947965 425714411 536298646 840632011 957464763 70062732 971987646 596241666 763556799 42447616 751714921 433418357 910580975 188547745 430359834 584725476 814336826 250275628 342038181 553424808 737933091 839409250 892279710 256428263 573978739 85023258 265901649 606384025 713582640 636459691 807289858 881406605 918292662 705904327 775066787 768526378 974795387 855890089 957081967 900416223 954108021 307420094 379377793 550446039 611080476 424877307 763756377 146903792 880263815 356609142 661515480 928180285 948032209 167013336 354209290 403699504 406411848 538103185 984085303 221907004 747797975 905882430 986138257 376461197 651636931 730116284 823270100 446234876 736610681 252740872 492915042 116128877 987459184 686510839 792560934 515879504 726970670 507045381 681605147 995261188 999788525 209388855 957896104 529036828 878292426 571073746 652459350 989585463 993060926 80818117 773815782 32624378 723467088 617517091 749570752 169626236 849576942 480256987 927491268 504696624 527745246 295701113 666750363 157692073 960969656 119954181 143753848 155574144 935742176 546416431 579895346 111688621 734007294 129332368 969855028 716118615 778766060 191440213 885684265 8546100 93356489 210661302 257261726 871975236 970588858 96505582 197139901 270606602 644385384 880165480 991519728 199696643 837134410 782272195 940876516 985651890 993993947 10749728 411917420 833473857 999488419 693841723 808154810 900695392 972725304 290572705 823019492 725404304 881677343 118958465 567762220 527632840 757753888 249094080 801752108 751428962 887532222 867651934 916132755 915201169 939115901 708406828 805725038 845118046 960612456 299068343 920580497 701497509 965463083 373626359 767791879 831963258 927774257 416029203 806634233 547801719 785068955 859094485 976269954 960470007 994164402 876334408 929491785 415384787 724945488 480663363 884251683 566808809 994302063 870253166 994654194 396605347 712419577 751598545 948736883 463390218 690882044 971550902 998445600 187684060 960565230 983429701 991324853 343284613 392857356 187346907 582602263 105863242 497987274 939642391 974916404 430824720 593286358 701414369 746817253 697523086 865261277 865976644 934924714 63133253 959443846 113674359 668332578 872724198 958595174 906411062 997934812 307560309 320093791 296058986 846432592 478633479 908994194 144529303 827696324 459765820 829251664 142467445 689374394 627285199 914090550 691770725 776322850 629491997 693893358 448139924 847195765 490582465 498246074 68311718 352224151 173437977 180750898 378641842 885107078 944108607 996375515 372993109 487864529 997862942 999250497 476043775 602500926 616130006 619636549 479904534 552981328 335811595 670954878 599908399 710668732 606935573 980436453 792476286 842120017 984601740 995134143 539547123 904410045 568845592 627908591 94492852 311034585 923195840 959878612 450298872 831766049 788105168 857935089 980425773 997617173 753272998 792803496 941825543 966581191 201187405 705926638 188624237 800299850 731148998 757167238 13688534 39532341 589765734 998384416 505811267 842737530 288521521 323932983 817349479 922806192 756359859 865593054 15063140 435953418 712372855 792268454 241630762 638773527 48752596 396197285 328427562 704491159 906285641 957343729 749103990 931616513 350899390 953568286 127509608 994797863 756478207 948548481 763497215 923026513 45192653 883699910 645784996 810873389 973531693 982706471 855118731 863235198 953784023 994121551 327834527 598925786 854367160 867916412 423919839 679648263 386854690 714077228 674706254 962335277 962956503 982614168 18173190 376014730 743391642 950977431 221484428 466145020 410265749 464378243 570165701 761110664 8570606 440389092 694136192 790303442 125047043 157458176 312801393 464892179 109074091 759589414 578041419 842436517 738118320 906593565 707343555 949978577 879026913 965855147 625542012 792987804 950475939 957603613 844004067 976698888 727236239 812765437 726323628 865500216 397834961 886753665 87621171 178514098 786518885 954816318 797700993 844339084 795110385 939654714 226282522 790799879 507422544 547343296 647383063 854748478 674244582 755870267 775829132 945004069 398175547 770900994 387254848 769968938 845322060 966862492 984203049 989460500 482514836 773964107 378851496 437493344 147424419 801851652 988010973 996698733 383967878 998579881 982140566 993338630 999644392 999799643 594258867 830616264 329369478 444072411 439288763 738391566 92406745 642741468 466671146 570962840 376123855 487408756 359748863 448869687 562050265 997173927 4059588 125392599 460452048 532513072 852259430 971216326 138837557 617966074 595493767 956678600 700060456 950134163 532962468 657980128 927679729 967366032 791497633 988746627 348797261 765248441 467078315 503114015 690141926 745726379 399337416 658760904 290455398 739711151 837084320 997659060 822783592 879728242 629999379 790158813 505906176 961192234 94649689 657675256 968261981 985607010 927476981 988798677 127935671 430814010 110635345 771491317 414816635 956599802 167938978 714784366 487612674 763762054 357051047 446194085 326298409 787420612 916382128 920397167 169557399 357061795 669055958 711962674 66036913 826611048 394813085 861518235 672612049 947609024 531388417 577805024 888620355 941892080 407691205 414841491 614447034 959115403 710122525 998211213 735385303 910476324 705802704 783948045 817934353 913583721 949076309 949250017 787374820 833617481 387042545 872477696 267815621 991969208 527983406 742370157 889211362 946091160 96681529 828623379 187762452 189850742 94996825 380433525 177271788 749365301 7682945 16151923 157874775 805332678 351229906 596284207 774940436 983226241 663301424 744062019 395988244 719825466 382538079 399230958 528223562 901839385 769937111 973471960 213304312 745858176 721208606 791046162 767584017 844694520 375093519 772013639 885576504 961575618 578766995 604099489 110457411 988759880 934174373 993983124 661480129 790101377 682933488 816706456 207042196 571673199 64710553 279747350 20494162 574423540 376014743 476913869 294735476 945693394 965881852 991477523 155848070 708881895 218703412 221284440 792937572 954017888 829833524 863913053 745468760 956249805 366815885 513442703 273145932 910178250 769528681 788494233 213333993 351189228 514405581 673748274 692050582 721169400 32247626 174984537 794606396 942532742 673868129 870844691 53330709 932231573 767830275 990925001 931846423 982580900 282913747 395105605 932358444 989692333 876985941 933912749 749408941 779889785 191547735 747618844 43318967 614574341 739064155 852722063 316317421 537892539 447768455 946991988 14991216 130624245 463549926 748165093 719817293 881449557 265195739 713472232 27180352 518064222 123099242 334590652 808765314 964314350 60937514 688873391 91303467 999637868 347350307 471687279 851918080 878291373 243255674 875530249 207512628 508968313 97439253 132110237 58357874 708062294 761927556 995232858 649559409 828270280 822887647 966892110 885049274 991017951 555261314 564453301 287823345 545021101 929671903 987819164 41584661 174580907 127563745 421476204 380361035 913070226 336993702 884521643 40116505 457144212 834952276 835169157 188705177 847383239 280045855 357254571 480317651 502370466 927211862 967061179 133788643 756473202 144484796 210714768 736914566 980694978 879904604 948197498 266186940 512391737 757293414 975958094 392711706 541576333 13370446 796319095 427673917 740120297 811479117 910483572 120220370 834676454 805769428 904630597 286684784 812990580 566399485 978204286 94020200 345677424 156318123 970121366 340205448 926804958 545809654 794137800 402007206 833216842 8739888 32746004 391046319 586153167 898114556 993202926 872577975 988661262 508340684 732355998 411907582 530538527 566457259 983742160 376632991 771525776 898110261 906550662 305521769 771620885 396240169 932406938 502322647 782358671 660962135 869984259 573599489 902970551 431490302 458891168 409017987 813799946 134678982 924765183 63834078 333865072 216760034 819026743 148281881 305780536 233926821 865532254 444960836 982984341 492844937 796864085 624532127 714604061 481284588 486270194 74845613 205106507 380782168 472513078 425503528 830008697 54207728 921583998 209640377 271895754 573362258 707698263 238280245 935100439 113576936 573500000 862402550 995070442 259709979 275250048 98858519 896320671 870724079 872048527 712975940 975202455 232965666 814936838 942558375 945105163 639849190 884016576 595024470 901825577 718009582 753357320 747655107 857295815 231312908 725064351 268314953 489737961 168090191 779980329 303694209 936473693 721502418 972899299 866887291 992269678 833803513 923780964 407637383 474256031 80313744 838354484 538192462 814806704 979561655 981847682 857026956 885830378 676950237 770627689 161631465 925787644 198706998 917755238 570193355 951298415 124260198 469444753 490221067 884329998 10018546 36077018 244923517 620478234 554027975 760830857 272085156 980010881 345209795 844398681 145361993 171317201 383939066 589513118 698890574 733241103 826081994 911034719 216852080 923728630 374153640 701491144 519459972 621847880 906492477 988494056 929338589 990671474 612514311 991662594 646162060 668612897 483763342 494050649 273682006 708685216 973166984 978359530 554224907 841359776 850028907 918968900 983501726 991980238 54241789 590465459 521617117 813721881 541241072 879929280 933314693 975361692 924877719 995112759 317782001 494188018 680480798 972171711 559012512 617863485 169847455 660941717 738569119 863440171 108673127 605944853 682043970 888671159 235082339 416471640 518978601 785611854 969984928 985135781 588738329 830666191 134804703 721740487 492127584 516825140 642269664 862557421 19044272 486957157 20363291 506803668 486297598 918676346 817000376 934389787 87607900 203788581 192929348 596907307 328056747 719342050 752995939 916835609 244203485 660764605 858441891 991065865 486209023 590906816 5920341 409156452 368781684 994390121 551380509 718926575 952162269 988239085 408618692 939646439 818618509 897783812 94250426 601052780 333937918 704880369 213052838 667546904 655391866 714146840 53549086 77564263 334695867 837181375 398532576 760415152 23637874 202728576 986804980 999167001 377591391 418297557 290620442 508015193 526520469 607162221 916821103 961625655 905195122 966546459 608781918 829788239 347137566 702727070 831465321 854020184 280377410 860175051 963704396 981195789 69713446 830929259 14722413 838462569 757707937 982064114 484561300 842522725 234274587 525527918 891367176 929900974 537667656 962276568 925235074 957496882 378972573 713666643 371644124 783719887 654461686 738703670 189154937 614358126 587688250 775330642 325990024 823453825 689517203 814793326 379277186 452757340 29387855 68728661 158870293 581371333 82827888 664251268 40194770 166451661 244279813 350077954 929024064 945358715 412781542 672838733 877817988 902042309 664152689 897583115 422326839 675244809 292940093 422634611 865808875 960129615 100064067 533831682 934037111 952187917 958371886 995228167 890072017 898100030 311046405 665628374 727896289 815783310 429841881 455918789 614431405 765530705 392778635 991563160 766267403 931258345 495690060 767476083 704431295 960148270 83656177 148343015 118630732 549170667 372426307 694181531 628177173 946873505 473184897 781343725 706645264 922969719 282528449 371258234 902899079 952192710 170937281 315669367 382622671 945566523 860631351 892996713 558883715 847436474 653653657 990213971 205848756 605469751 344197562 351389160 511889060 804516405 85582260 830554192 127643563 223904063 246396260 652057568 158859497 274237738 564949859 644345000 395381339 462539614 69171774 930185757 209759956 919279992 756893601 769321029 790075032 925119157 455614155 989426309 722408288 866913537 228361767 917904427 760848765 777486622 399708679 962495576 522834785 752357263 662642521 671057904 755286649 847527341 197080394 560211365 593249240 974290009 276241091 658683229 924202691 950420090 353912079 866433071 376044172 865936503 95030073 855496201 827897124 923193710 473751312 553301349 531697946 644264626 302454559 424862978 550273979 664033623 604663170 944478526 501632396 737876588 521605763 952725594 181436851 681231235 36314147 629731242 362238766 539814480 140589109 290804703 16023081 200440083 433681680 684874820 222809891 842755671 64775085 272286946 106521746 170280254 440137891 796008843 706667501 856491914 110465183 519467519 475518630 773241491 840774287 920205579 82989867 379254402 855441509 861254877 567782617 659552242 619717694 757456279 712381711 734559891 808348231 893175716 470227640 658040031 457532999 471093857 202515844 705896099 883480780 918438328 161113679 444909969 739969679 964183340 239841847 869279043 677461205 683302629 805573986 854482630 863779449 884604519 311684196 366139531 737445745 801871196 536371665 808503559 488397379 505827970 993560406 998133062 181876178 512215330 12290301 739014230 297310512 665753980 148268811 554526718 702270719 984190745 140452322 387828530 875855308 928348283 105290266 459280460 844114619 890179326 775955505 802004626 999384375 999513435 22747175 137532049 107008453 456256463 665420202 886708754 821750091 970432695 665511513 736114860 917523639 979124342 157388158 938324727 335700938 373479709 540858383 834805502 197917401 352120096 652231661 999159751 718730266 992278762 104262266 461037336 895311138 980093342 975440450 999511010 634658461 905506093 221896721 381946709 91570865 397882221 799704235 826341059 223910533 346307992 674181480 869616942 848020817 975531869 893985101 953466574 638642510 917016412 53623653 505908982 86596436 107072100 24053014 328129424 757551800 866164106 603258564 615769136 748998490 871924565 563690531 851381212 480805115 617848687 8644164 418089581 107403759 911796207 917756432 983917597 85082707 844459446 912911944 913915903 42179306 553360265 654534 65457848 270252497 807459828 422140603 897764397 957971022 998467897 981689277 984126681 815445376 841238366 730884882 991913848 670497304 676189943 271193069 713676616 933881913 974934799 619682985 726717658 789992467 943960095 40592211 344637956 12316347 503185170 585476596 834223640 215468880 948624082 19733020 655028020 476720137 562554309 605339014 904258846 70120484 923630753 937104680 967143221 230011887 864361061 69618411 358297784 507102865 716637244 564738042 939559052 47797433 143877115 36527306 905201897 46473000 218560735 91595989 754270611 775789712 982547706 537463949 876022261 381937768 764393241 199747230 723953401 198573801 693537414 695238789 867195864 167844616 868435861 310478107 634281882 196740186 873380287 559096858 726527271 651033212 918523440 923295871 985884884 670739957 993994327 78285840 303381522 393971252 505373528 547819658 958803147 295649579 947967795 94292089 247999002 85419694 92039262 981256863 997111177 46031053 317431560 592190138 624748711 112203826 780386487 805400040 921754590 106782934 589721906 232415101 907007155 838093838 932116549 324444967 945345190 696443986 955645294 985897987 996550198 355705795 739712580 662401178 667976230 896296382 953718230 520194754 786972679 916323990 919281910 831784884 904017063 673152351 808722117 708774750 722428651 943652569 980152377 507599308 583022464 583981426 822041697 885446449 959510666 133214422 611290721 297321622 785827158 69965857 613432952 678292371 700704342 397314515 773846632 907459175 942813238 608326180 882732348 908041218 969159608 395504684 886875058 217634030 620824120 278705842 968243276 451354599 725703140 100444962 768516650 986400005 992938382 242676996 632686401 320162247 415662587 167820498 995145269 482393297 603698992 446352859 828831865 534153749 676232407 582253185 594631604 356255789 873883978 231872450 661083665 141702017 510848895 518354105 745008725 844018302 915624234 349773168 633493947 352058382 972864977 744750157 956777448 279542041 362655070 170372101 778513068 827650471 865053753 454393999 993527087 602933503 954247225 202485997 594827869 284662598 649943341 535590937 705831379 552771547 811187680 209147532 641116128 217056475 497659682 666636605 999277356 887172076 931221745 820174434 947247330 255981591 374128390 97973205 869704693 170328262 823873803 967659007 985563534 380580642 753043083 50787258 985356922 133265992 853283490 246580284 331406678 554244412 671698017 285798381 314798239 209671412 927932573 142822989 830510508 923669599 944667625 476482267 816097416 699829866 929853914 595362591 619969585 605961090 939180815 502666708 571989370 554527151 670669254 824693856 866469881 545242145 558943884 250645400 251967170 973574332 982592243 273017426 822025367 930055005 939955893 705005531 706347138 267475221 643952961 222748818 898882277 75544298 816899079 934737876 958459943 241970139 666974650 241424225 919603928 328209056 481137268 339853552 905032310 683521561 907387659 244191872 851137547 226096737 489565518 99030184 378207733 857367729 871886164 158842840 740416371 212924842 724998686 175681261 326091152 81974439 514259679 239984039 710700024 648804188 800029429 226728886 899361165 290948240 769263839 393017864 813958647 515303336 612600072 274688933 343162643 174060346 270253064 821568807 951960671 643271147 817229633 433129155 796485901 983350764 994249381 485804582 680746651 469791175 757725852 169399235 801616922 188880548 824420889 662978782 874869639 483446564 590832533 323164751 768258813 335200840 387943677 112315736 346003210 639374406 842742262 169807538 375513929 837259150 960062650 900982062 918989249 671540554 680087194 50385067 304244769 3770884 736506835 421529294 455967816 737510133 801840545 45080836 796019978 407538271 479574150 863603212 932811005 161127710 405421972 342363397 832600471 856363748 893575191 2423842 937892827 461905888 648468470 928550335 976307596 398575241 799577830 827058042 839983379 639344352 891661178 202322309 945220744 412765809 535084541 978073615 987561350 654208736 884907582 591497162 608960130 576755221 812430417 906101065 949162633 712623186 761653999 517254272 955625645 67830929 240399984 833989094 989311400 828965991 982746242 959928265 972056659 330934218 738572319 465329127 621479094 301509688 662268742 149705476 644600556 969227297 991867578 51878847 324296848 959307217 993499313 986495530 992153959 967940600 990821328 188519750 751470823 366909103 832974890 385941632 487194383 457665184 642001091 161290525 872584027 713089752 927949919 762652508 919329626 201075913 961669016 413079333 600305673 172570871 559667743 336820361 593345777 64187437 381585596 936600122 939704938 353377133 667317630 214177023 238252557 383840717 686701180 948139623 950438323 665671300 929233993 530749956 576663209 251659866 467992183 598913060 902283642 718957400 913939344 580659256 976668196 54516928 809285701 199808198 844919854 991227342 993220552 224524792 249546327 714742261 738555388 265130998 337533955 426204770 585543953 436104048 566075726 133139431 876666550 590285069 658383376 263263109 625388319 514203697 518008068 757667188 786530674 377847803 920294459 147647577 419248987 50453407 181376381 194753747 832090974 298267513 564342763 904762568 931336578 936909367 993284022 30145220 180469286 390396358 458533542 317117322 320759745 8056378 942213599 866589066 951328627 352517885 782709723 553404046 834956147 454044309 464887000 538862247 682155000 350153162 704429730 66889318 158823289 170751721 699300869 619094257 924626043 147450510 500945456 903701156 912731808 796414298 997902662 459523193 511894342 975133290 980625886 151557345 510416561 53318900 696010444 390441938 682037803 394342912 966643700 103082093 677108150 629518148 837435562 326715569 742699122 305498886 762259802 764936841 865506026 480491235 770294012 676018034 795231009 850359848 942863066 439149723 482513910 590916705 696159329 782941903 848908453 671374417 830418875 823891121 937286226 489177901 733167942 888629204 890564503 338240375 742168160 353516106 408833762 821764166 908498351 488597374 965946765 921372268 948211220 954097313 987614666 810808618 916978259 235514715 436477099 600044637 785382328 942162454 985839903 288795925 703533018 704825896 883156617 44713789 503158345 404976296 942219162 821799091 986187824 725665281 736373329 786109801 935416305 170984900 229451692 644828361 983394636 110728029 165295832 283908994 769981789 900149595 985417546 105123427 446162652 23203402 115188234 6520542 20762278 210613808 230993845 814054249 999604023 675100046 871410491 886120527 947262129 307056867 954461117 21472368 888380799 216392443 872028040 36181769 903893449 174621018 509366211 814017218 816289168 372808250 797395802 494075183 568828930 225382629 480185378 172988216 519811217 649489364 776295082 568455892 675150174 934234659 994432059 769226323 837554302 584832350 893592955 7850133 286342697 546435377 992894843 510245550 962650573 429238159 970055141 551591248 704580547 89564096 672281032 469788731 900531306 689338419 790338405 820271623 824899902 868364595 885786965 278133094 503950318 19814575 626599656 886271609 970750762 965085726 998156400 433229295 469485961 741427364 891444532 944386402 969709159 543667031 578642845 617610312 697431937 420275880 610134043 31088197 450774388 486358194 843176250 404513005 565542531 697349241 856938185 394219912 674674438 446195885 977675527 838525164 895815319 990086450 994817332 442972297 500134487 542683308 967528928 860238742 871438603 15595251 565610989 128189932 250793877 215089458 829318397 472212688 802215548 125011766 524372075 335010717 698731396 938326433 975105339 504696515 954334314 337354358 625616322 961995656 978589466 628044864 941939938 285093254 616291366 758399608 926069004 239409693 680675126 349819388 455971346 729383518 974098644 511583080 876712316 85089290 616137840 441042989 947969993 948871874 960742387 98488419 787997125 493242139 506890362 552288981 871058636 69020984 906237297 357832341 511841269 772500442 962913671 316199185 407247441 71700158 759993974 944417927 974415977 208110194 332245380 598731037 693097587 168267652 744444553 734750402 874710260 413551626 848376578 998755845 999436885 171352439 184450518 21226023 283236123 261862326 698750783 775849640 825889061 538911880 811852151 588755893 995904161 761236342 844574760 642105315 978140246 826543030 919041126 729217540 936015660 631248678 673133194 500350654 578273977 351061246 719553799 885331178 975215859 579206387 659157567 60901404 554883923 232151206 904960714 806982311 859168156 261293949 920404862 234746739 759005007 784013688 912805694 25162204 437365596 356453696 932740392 595850616 865694186 355476354 540631393 9499399 180931651 300209946 581806840 460316215 517009099 181427493 887063980 155341142 762559536 955554038 999245024 130323067 747840779 587831558 687785133 329171459 509371126 701555966 716466998 906910920 921439165 832107325 976769541 297281290 823669351 49278536 219384955 215086074 848425788 480879078 653572297 990796957 994920079 713692326 990909001 729304698 790542630 565535006 824642993 399972845 459521064 449859771 660329492 750228332 921075323 901903019 907112275 39048718 841588041 454023545 604587960 482070117 663597979 972470302 973803050 779910571 884279432 74323376 164550547 533324009 604159426 268939013 790348768 429951163 431333813 787251431 998081806 318643952 462991144 913638636 996313232 644872061 667152924 274570911 495489828 113968098 877858631 750520013 924606922 289282993 982394027 810993952 909023253 446590018 527183092 588867793 646731835 306585482 583926592 307278483 378300811 449323768 649862388 335478642 408005517 453204535 732054591 309374921 915705909 182065290 777207950 725602544 855624961 566773856 791539723 769080368 996385075 502510013 851348904 63422465 176485233 168198606 378612994 713712349 957098142 130642187 196270154 297062720 680048932 408970976 816523525 385757855 722152711 140235008 263368899 135741481 933287947 217532065 719532933 844799107 984766490 507162133 601179831 584412977 678690859 265003776 653507143 251904997 875265184 640016171 641651721 531027814 821906607 101477411 474147406 478041896 916675651 926995268 970938406 921309822 945001112 106029375 741453981 246370478 335416550 861718348 900523408 391740944 809854924 162348759 687515944 631485965 847387957 804658727 944411060 483962281 730083850 263996868 886291259 421654225 804921252 276719476 492954696 69623454 678378935 133134755 722298010 253424657 775107136 458521892 772020631 149122400 374153902 272403904 854780492 890302231 927854650 631108754 786840782 631977943 751866998 687105750 720273558 731140995 844298941 735625878 865193567 973284745 994452563 298639639 315148974 168657842 259557879 439863995 563543152 283268717 736694626 988124321 997386471 763382502 856536152 216585624 450274017 740286337 809139357 492711623 639283033 356280717 448525877 407403829 778334581 388342185 796552600 250047595 758168520 662938982 966774594 640454886 667818422 652022325 751224912 754092593 943272407 317575829 510995444 655489673 866893454 349595275 732318819 442666190 680658975 12942180 217634192 761663785 857864312 437980086 959229671 6547181 831169253 699031435 713402095 76105360 902124468 792566954 897582540 143060107 987957398 4287640 272525575 822502591 875527966 74757035 413942862 264714499 832867025 875285001 920583454 434730070 835333146 127742776 250672763 995233419 995776469 171189387 494049785 396203618 536084212 958364821 995473601 488106872 843942901 30636031 720953869 883050452 931887390 326394309 650406193 800242920 978279901 235359523 711863396 693327912 718129696 356473578 893898310 135649934 443309180 641316649 810697886 160343674 907156462 580183413 681105500 100516418 961772883 922811998 942425372 821694413 825876078 681731457 708175642 124256623 839993388 573183998 833228675 571260376 728667501 23229001 182983829 454389945 746455221 238392600 457946990 557294040 691233329 873075565 969890370 40140639 204120135 232298162 612188843 728510086 979318878 44454315 529894537 362184185 922325422 623399953 782053627 614368017 693592742 98317879 276178542 839166637 844097752 417492638 916369186 261010948 629830664 385194390 899488531 363539811 790748136 149595750 191211765 296965090 473437102 438112941 970361479 481795083 547603266 550874311 760185950 630932216 832676843 333141368 501734963 920816148 988409495 24289598 864261186 600034266 860750292 598938762 898736582 399390069 631901696 784043282 836331944 698204220 834666561 974212103 985737719 771080347 801345913 423811045 521343068 173738039 735655930 541923603 800880476 171459419 429637930 258692342 335668248 677651781 917354711 672766862 969481910 767634023 799592710 260651085 878470478 830876112 832174158 382550699 774694748 583385923 801031265 116825841 910144074 365655510 878282780 536013845 903758833 267567282 853601116 587062334 870404932 389038600 899201309 44114454 48454121 941857269 950070765 44563390 386718233 251484288 984213114 462486238 966413875 79243745 460115706 466052423 555764213 601490308 603347599 783908965 849594669 704551087 736280778 244361762 509324525 940387340 960062136 943778651 979589575 411033035 983391172 987808620 999950431 858393752 971532257 188766970 419882200 882313686 911344065 373114494 535352679 571092280 688856023 296235588 843995164 183246286 260135085 931686429 945423939 500417670 912687786 300375043 951431522 249064201 543116384 878671825 980433392 269702449 377523136 814081139 896396827 579782745 693570233 874753823 981960295 207175072 540442499 769944089 956595389 58550095 582217615 730529964 945978221 55033418 674644042 710395550 785189140 882191635 901543523 224100964 256935006 351785404 515493148 370062875 812352587 921874346 942401853 364692204 999863765 59290083 761135414 50677890 79637837 536614843 971048454 651573764 750167117 308080788 605859082 68920680 968812511 375483955 481578413 982718265 998012859 790813836 793012095 871964757 969479637 823450761 904961710 577716355 994265045 247559458 946997470 143090844 263388025 138331149 958667461 703126554 755154317 556472356 850021205 817239677 817581141 326889121 404046210 459520514 553237122 767005826 930093140 423041208 594953943 471761681 867188193 714514052 901115054 474177996 786342498 529184851 534393478 606573159 747483863 799543542 900356089 814332600 855834374 522907309 983838251 614829716 901983273 675342820 792630623 949771905 962026147 467461301 995975607 603051196 804021025 410591167 847555900 332071428 734215337 790114592 843750099 519611097 680769712 786258300 831830194 696607821 944779590 860486757 993635843 868556689 924528511 401918089 574471481 759487920 773171945 14069673 398378118 60096746 659880324 279607630 638884672 677019880 837027455 348942072 653353703 838199042 864739015 392949513 410109347 220568024 655275040 844149277 930228617 360463041 821183084 233294221 958989464 923371463 959617302 515139995 817574733 863955549 922153205 147051449 505328335 569355562 574333966 954766048 989757692 720637579 739603820 688187292 772464074 492596395 753779010 279624358 434704860 649974128 840793618 461810094 750582291 848015996 981556243 444885520 633743315 214194045 578490275 404681833 975484432 458561829 855812137 703178751 932959098 866130771 886882908 244313059 627986773 756350433 894184396 908339341 916677724 108963654 658643888 19826191 93466257 494310225 573442938 626487188 732316668 792590982 844011436 377596636 852239429 803535709 825561576 254404898 621601264 509640760 846968017 930531900 979420305 405698098 926503218 428112446 977182081 251827383 786855726 20275680 776466836 831013787 836244715 904717661 951898387 909026254 914131944 410810570 731812818 752316782 771783132 312894541 837269522 86714129 847430899 248511753 307480886 868081272 947610175 766823872 906698480 842001284 976450166 687843253 817642027 323053585 560018470 360069885 958050950 370362883 559564635 48762521 253101567 828065219 928844116 354723806 413229936 471506814 677125907 323227417 814744447 689454109 793611943 391199609 516338709 563996325 999364403 295010012 757531895 143288084 221830081 622962967 643589325 640676699 978193777 401021253 726223532 936158771 940432121 320383521 997269263 931103702 972492549 328150006 773406614 602473127 669238118 382508366 426120072 108218736 480651589 457250913 810841555 614147595 716014305 796668176 906240382 540770629 663535025 243413446 546242549 672166635 850017278 888278859 970420933 462643168 751398350 739151912 956535522 953536208 982690271 915222080 992499062 905545209 938406567 864353857 902599812 820306175 949367727 229408629 271382851 347420332 768243748 428887090 478628076 19208923 525329306 718172026 866340677 930634220 982076946 281167321 339982509 414898869 636083640 572559936 998812912 888243545 913399537 763298673 785835938 406798026 510769209 188308980 897931782 85186789 816158444 372045055 583777283 293694063 543720421 18522790 755438053 725482117 893874655 311194441 924040728 830731083 960120566 887258934 976600841 593656361 691257347 670874922 968582801 756796384 945695255 677042544 677341333 974704328 981951812 122970061 647751206 964608046 990448002 155376426 218593045 132422185 616901663 168677232 396077508 260433182 714471419 103899394 465114382 258140557 784226582 535964242 611129274 142234826 218516310 608442777 978741208 433004904 720904988 136071336 808543358 707976022 884827266 147992158 277379916 443010533 928264141 371382836 440352695 233382141 820217791 18569152 239812278 300498742 958339111 728998670 922666961 233211149 447497735 25127061 682686473 867193701 912756548 455073802 621404992 949511665 952330618 145123622 390537941 440308309 491477588 512762984 746680020 808366097 924745023 530904719 636242145 952159996 973581419 46809436 210217210 193843171 342946730 57339591 275793550 518897577 905129928 845852977 989423755 948153307 987848645 968790195 974982348 672068089 965198683 226149316 664146499 488050787 890584112 80987778 780825874 115662553 750129610 366786900 389881926 358752120 858301452 135715525 449733985 405861815 946614858 861908359 881434880 827125141 932575433 55388855 913226404 57462539 409325700 18650694 91215168 674130716 721216385 908357799 971718856 315606998 350700210 100237024 960813825 621124514 891951863 22860876 948507373 80267778 800441747 536430034 719134151 254458574 843065109 366978573 453357693 65882927 205237249 586440307 816231261 369216408 508885647 396982710 869441954 85998452 286097058 254095434 684942372 412985370 744374536 857556616 929429176 145424738 527975618 638814401 745742917 438621953 919219604 991297009 993084480 376649848 786178733 524264951 870013080 905079496 938269020 466289056 968062701 481329696 612862936 585558961 763822504 361525755 401481189 2455364 410786455 881978121 883827466 373792400 415649227 658581751 933963473 487500924 964931144 718070202 806123495 624487521 801939238 335321679 770626037 818216658 968176657 688793126 975210900 628843033 736294754 57540414 510100784 680606978 934975492 704906458 707339087 394605685 654614148 969779267 993496422 15007764 711511140 620328083 969742914 345094571 417830042 606108405 673303701 90914812 785783499 260553527 597267710 287293340 996734415 672307418 905516535 453790668 615953574 293120989 318241033 2805615 841158002 573480244 915487088 561130803 902255093 866754648 946865995 511845643 834253273 872401186 939318350 981732294 986290117 662403777 867592530 425018790 450638555 39646620 824915723 867542848 915033365 679012198 756485493 175215816 195146065 414914342 767144603 359854340 816898039 342647671 484259892 861519811 979599400 973118745 983135267 865901114 913646401 846161474 863684806 425582901 628539167 458086985 905344502 784622398 867955592 637118941 968271841 522389945 978967392 968567990 979571572 307205996 726506635 295793952 916807197 3683889 861332622 830036193 984448745 849382916 856788283 712521626 873685345 530057005 890881124 648072451 949036545 426783650 910290083 707516390 863009657 677277975 713662962 685617512 724222466 339107799 534243068 393132514 441730004 144222665 539848159 517167382 857253714 752219756 807576941 566466431 979713180 533152840 721951820 499164709 759382249 465394721 716267960 400914574 412743520 470775882 744231830 608200748 744394303 650651409 792870251 570809115 830513590 302889008 979701796 347857951 363034602 813611103 955431127 404428538 499110928 981179878 981836429 2735990 696478895 182905410 796246491 153480840 903246060 647887960 774463805 565349139 727824435 360910918 878626212 967358291 977756106 928211372 960854072 779180834 842214723 664141033 740567785 133414076 258815980 371614219 389408264 398206410 994165477 103989513 526363424 616667712 733203531 303764388 560914107 245375492 472293897 718284065 812670084 978508671 979317662 527677347 919637935 433419347 538619444 131229094 975972289 89645337 274676206 179575161 318815938 512755930 927906548 526870157 726829972 991982176 992554093 342892893 519278106 457480968 528434282 49614583 990963755 528905191 730816640 276577892 928242262 174879939 581760621 309576287 883291146 715227537 727131637 277340021 896239921 913844674 953529919 940608672 999057794 285159519 397724823 62060706 761919308 959154967 988935510 393008862 599568870 297669832 600446417 733044758 950835515 29630694 235022319 254420327 282950536 445193580 921144398 382518265 440334788 962198395 988385295 278493802 478399311 245559389 583485494 825390413 898108204 989218122 999989950 943172961 962218446 96150397 970860820 735090376 866616448 142259806 930306328 3084424 176830889 635173041 762499524 184218627 997921342 307137779 359205899 69320209 315768566 479511516 905941245 871843170 970710181 116218240 712997249 406560828 826677501 913709169 946378573 256514642 654327201 696506714 735075059 975512101 991570424 170776904 715143830 678059623 896777076 800757727 878505529 147224073 685925796 580867363 803723096 420517084 793600005 486122530 597492004 652524273 740262609 980309737 989283946 192302725 929768229 91437692 963145149 71231467 140400018 620952622 793769890 580823964 820585699 981368117 981718882 805533723 869506567 841167397 977396598 546181286 788316851 396907804 613699154 294559933 792091278 858377500 906653083 986696291 987831607 581605901 658807759 690723003 791955839 484486876 865167623 355790730 392223606 5722323 131990005 13810766 554441829 976857120 981567657 222527778 258220497 763204042 792231398 889826391 932779168 256233160 343540193 28358352 428181671 135574607 920128506 446351586 610969871 485357832 624366142 215591079 945421815 250343954 385868281 96177599 964177185 556071725 829911884 395703853 708423079 903922462 920802850 859761448 964464041 672381046 795231289 130085680 638365413 376018479 860182827 358448536 459926950 347631649 864395860 237376283 518746784 59403650 804950341 96609972 795524611 779744742 820446007 184043169 771168252 109186911 995309652 656670913 885622185 815942594 846248708 943540824 999366678 881773201 910849526 120928138 845871632 326123383 651379768 723854052 984485452 968406623 977438829 492996321 890435099 552865256 869905682 718222748 909445368 394279675 427539056 927568766 956805505 700298922 999586923 904429502 986029404 423075278 967511120 273243696 460735489 112606401 963884065 222430100 320094853 440726432 844196992 679740554 925885546 186419354 294651137 512945417 610155597 582649185 739019822 92739433 414406390 987978058 989080302 192063136 799371380 368082733 780076530 425944043 502493631 208345968 413316470 825450890 898530716 386838824 819648686 735655490 948606140 496557872 713711240 718615590 933124846 626581199 945889847 964629917 988144390 484863253 883976218 242686908 958759177 267818574 374109576 269180228 292708604 548938914 647457633 146714028 231716405 602490688 858801142 642563931 796073017 163062483 923724376 412671747 913297625 739198960 866125221 765194068 851645612 566184745 600039222 69292367 942683179 307333460 819850295 408696534 655961718 741698986 928699065 453153550 955074987 18563349 803326503 960158134 979318149 455006471 613569522 724132188 943932799 751002248 808845762 802006900 921743508 709618981 954069081 822251452 847702273 402277350 980868193 727035242 794606306 908262441 936881399 968358774 970740239 349133345 920577337 365462013 401942447 642339122 992035049 825522829 860126528 381710681 422685379 211896631 916500932 549298012 754664669 12082694 470861505 279882286 397499446 172245714 695325180 328149087 883195189 677865596 844637172 559768386 648132543 996094375 996987267 323641939 514986074 717115357 944022651 130479330 998347497 123416376 525955614 407233766 633745577 449806396 607118196 17660423 960864055 1094691 180726850 225161874 974761034 243845134 856286272 42990470 900993414 196723094 479696721 211262894 561928292 510172884 927483013 177845211 290712343 16034874 662341776 350601075 522370373 409805667 964900717 496046265 718196573 603157840 655384394 855119372 878650448 568932432 676623832 154548458 384771053 392691139 487083760 454239557 911112563 590849459 928394973 327881213 718961590 995626776 996877743 29954528 566847074 12801186 641640475 876084952 908585927 79179073 914572399 345317484 893825347 939848653 975056809 203939321 960089685 839574151 868152572 603227339 824617545 970686126 977224929 451694670 672932673 624848202 842256252 984974565 988130747 14516804 612765256 96736468 245932166 248973048 357784284 231812856 850919391 835134441 848086496 301881897 545774202 483797542 731565678 529089066 599912924 416063742 915994589 513884484 880873539 798081589 827383063 846905447 880316739 242036981 280827256 246067035 563761033 652494630 845325764 839572172 928812752 504510742 770822460 424913985 555691690 228412272 680217096 650840856 789941516 684561690 752770360 234598678 434465355 193225982 299229873 387332102 541131377 54842229 765216923 517163079 665646683 610270962 873480824 490277199 965244435 649412782 657183540 421174068 586805263 142651906 365026716 463029292 554983205 440289334 592342185 14078452 429303090 134342109 901348390 68601445 530025996 660086549 943873881 67193861 843492550 863649243 869643777 214042930 425170910 260672720 327075970 474199066 814581362 119893983 376135737 967779740 988311748 133198049 177402802 160452059 587893120 144508026 602870243 87655708 573458553 301581931 762309196 381589690 802295348 987969079 991969969 203989755 671326179 689465998 782105821 761182111 942502434 413138727 601047217 549318824 814080000 966615496 974041631 968798642 985822778 37782496 54528184 287362639 553003300 639353246 981342439 531401796 701471058 469999876 829218242 697916306 717501763 319387324 702245099 103166429 869621124 507073717 813525161 955833532 967068149 219145327 990498511 520450266 602796638 744901932 919374277 636948451 845594894 256379507 592909103 947693317 978078096 937928492 950966381 652105712 985601125 107704776 803884525 206477529 309464091 860671344 884235462 359094823 422602448 441612945 767899521 978290477 983207960 303947407 710084961 847500197 919833991 268580218 462190044 547711472 720607383 596834787 988633239 109240324 721777838 10241560 893016335 264385528 315515335 519588547 584851503 468373853 892761064 982089472 997094814 92940233 402281687 806875253 908683290 568143924 915963596 110909334 639621974 194664035 604053471 51119752 698353915 657993291 921141270 156188877 340146207 246859269 618954690 714231973 995638711 119871663 645591684 231291113 946348848 842122734 851295795 839218945 839689690 55176335 638455601 532054799 931113352 419420679 462844336 760799796 909018230 927031847 947016277 25087322 209280540 261128600 500911581 240541311 286580802 41328992 581397536 875746036 977438735 971320772 985353296 873850007 910602257 885062532 924791491 972401080 994370657 137836223 396960342 830725773 984714620 632878425 723507787 87072498 113997289 709537374 931233958 235793218 305436769 115017815 190872933 123380558 138632674 381282461 396791592 725220123 799706555 129247537 789346103 477287077 786050899 512911449 797317572 815809703 875058798 532950300 759200403 375243502 395831933 110365148 942413191 476135700 957320306 349119274 950361208 311374276 467548217 239873549 309401330 880264624 903646015 766307899 834178178 818023758 937965963 208533117 256309304 497187693 561843029 949954896 981847445 543386363 589763669 697104504 879062011 525916965 584046791 902694510 983882056 695489843 720780093 902444130 939069519 889218875 932843483 236952138 982847900 928523446 944828186 510434468 920226801 275672331 660906033 458133685 965604025 421130748 912325300 647571616 870635685 372367874 426566365 732255211 912121225 870180841 966830584 914873295 936090386 745325592 980540224 911253161 974079122 158367572 626860490 862316269 925596490 192277227 593011380 924467524 989837445 519893768 533356726 823101451 908750149 828954229 943221013 596939297 727143510 815042017 943450858 936918361 980164152 924483537 953319711 95003032 348366845 732134837 747341327 378250239 915937627 971878493 992782410 76920321 186382161 395778865 521702257 714896586 936515275 36202470 653810381 668709649 749525582 724957799 894373761 995308123 998518872 61311816 971990664 810966583 934292582 912176412 977850421 132555340 752294064 906705930 958013352 957795934 998700570 669393916 923913074 567117088 934790772 789086418 986614158 474155983 712507133 774319764 807181816 990738458 993393378 895144032 950687620 710394428 882649765 874280383 970525674 400630280 699456733 693791364 953664011 819294377 914546483 62846729 694067347 410820218 431168575 523286809 565766769 243102579 741761326 955684491 978042653 977961941 992816867 140446186 455993031 141567004 995538148 558559445 569784098 81563723 836874297 120755175 739840928 116939058 131223461 916985978 969610277 399582833 612847485 771505160 822797160 435610281 902525085 570163658 574457449 564333775 607450889 678627848 754730891 272809865 849611214 718396835 785959044 708678507 868529269 153451058 890549626 429858360 744590990 87086159 813887976 353905625 962160818 63740390 138913379 66108729 974230778 869669158 874938321 620546935 906261520 248404600 716445779 586663173 810984682 281632898 643090752 827849599 944166338 973786452 983980667 695996123 767004412 568414847 937028784 914983886 959057194 22459959 728491354 143210578 985271427 990982714 997202013 305019008 410730630 275375823 289397441 265710170 949377940 313763925 598208512 415855012 989516208 432156779 673880767 634739653 924892882 700255105 951489650 678331918 803057866 525735496 884564829 795068947 825087016 204090403 797879916 402407913 574502940 195452321 819068454 449772008 747784129 949264694 975191410 719431675 818005761 441062112 629404921 480128874 641718300 53323817 208916183 540508314 717999844 250107985 748757305 201426601 498932560 825391143 856020737 62827698 760595801 208276902 949768229 517657478 751393809 337022066 752718562 756437646 884816432 981085074 984933550 177577631 689006654 270159900 854730355 178337219 853363001 867606598 954512906 295686202 846130948 615073992 633514736 880077542 893829110 486520202 815231327 861105374 905444442 909521678 930598230 271328093 920314280 117326437 144337534 249853999 635900888 355994661 984308993 522502153 819249093 177164018 500929598 55001096 484411990 168240970 191077305 476630173 969796957 610569441 721279751 59006240 361851431 93988200 745514790 71716362 138512200 861671820 887738432 539585931 751252424 119686196 679477692 656438466 762201472 367992695 617160658 222273036 872795443 513027340 634011026 151801487 615997490 376210058 454102651 653027342 839832075 372399382 934477627 672937647 758184026 348984493 971386459 985916856 991988326 873289493 877814464 534715970 749681347 248895595 744725347 279652787 557466083 51206359 67167867 819585990 955563000 640004121 675771970 347167955 982236673 815377157 857975755 398822636 896840660 613850555 659926573 528884217 660485765 458247286 731517087 24759196 324242886 806514161 980458567 172062283 390736388 48163220 309373477 86196500 126755527 234385076 351159233 158650320 223597147 646904730 879280058 402390216 451373541 523639675 923868993 865418934 979919193 743013101 968971795 313597922 844521238 865332759 992596974 418049722 577121761 175540221 930870089 827311480 886026005 914167936 974259509 843510605 924170888 829823851 994945530 784518483 860699068 253281614 618967748 479919730 540021020 25854585 793420135 930296289 949039957 634265493 712245925 768828688 867987281 356884886 615661665 829966636 900520631 743577750 805096915 316641541 319379988 32078813 626899870 394292919 711968846 25721869 823127479 846022068 848385180 271506184 503403097 906714679 945417589 125830755 506851451 811541738 950994407 499669031 996026041 831570724 994325689 637258748 741146957 249994482 390289210 728465843 736745192 896459416 960499835 580706323 800913968 693814107 956658010 480988140 704252233 469903088 725700806 349948942 996152839 827612859 986515183 565587996 996420475 544196771 586756321 723054735 883859962 891499861 919918522 605453340 658085205 689639823 789523759 945086653 957075013 130183785 422964987 121796781 635918179 498490416 613565597 346061823 444822296 208796105 731782981 702979858 941710014 387715262 839345259 788475836 837674648 293631900 875345291 774968952 935798557 560537765 626463651 454858064 548477913 395519919 544416888 434311772 682741143 129705978 134544135 332325854 946592436 565604839 670830654 270017261 684361972 452910066 548877090 252503557 459702662 607075907 887977284 119440300 715346742 863792505 930526070 581641053 901832833 309717749 353838153 493200519 560867603 231920939 829695895 739528373 818184978 465033749 571887835 91807633 220387575 500339713 624221167 189563322 688339915 265342149 597844875 968412700 998821145 78726092 877296651 40317822 869582923 509167167 977429295 140981195 630090170 447680380 548585155 984783587 996445325 444283710 690041413 878066449 910880883 700637615 768192748 560686098 964962099 830891241 840371739 987830595 989503137 839176139 913798217 874861106 982611696 332589621 524418446 149352451 611553338 789627721 804751617 531899803 755508355 90963344 953870497 553523764 943562038 39544948 463372946 747324379 782124130 629125370 672395824 481483691 690353657 659124548 664428879 771073221 966613231 566378180 630493029 324948313 443249438 467155988 938754846 16357906 405478373 395212562 720451675 143634627 324273477 672430116 802820592 213478109 652301199 147940410 198213426 913084147 991533335 855291503 865249827 186565687 774003367 850414302 992015787 516507369 772527533 515410139 632050630 935817123 995716282 151773396 901446363 94798803 368294198 769662144 959105641 866964657 962294325 710860260 788107255 480942221 830305277 888356114 943291660 314798523 915714236 321339649 982803795 907583416 937150520 390067572 616818699 207449479 823485904 325020988 865956259 988732441 990643818 7834913 393550707 697018086 728964627 551824726 763452870 152309008 621983007 92038850 737622213 215034276 932433659 133154281 720494038 626254822 655760309 633110207 974342530 86744589 92459992 633426586 971119156 531359893 980243572 470553222 821928989 555357742 793100092 476317255 811251464 621044162 995118271 125715273 863567287 28742210 672287116 971530136 996030736 619115225 717902040 993627758 994452599 250754885 848293533 761475771 942854406 910825887 971873736 223904107 299241372 740058943 795567143 888981045 962079425 759650727 924456592 406899134 915244118 204740264 761057412 573507908 774196538 483801227 887696746 939929511 997007156 275098785 526812197 51782744 408493918 363407340 486636002 510779454 841675367 749744001 799736801 491419042 555222216 946881383 963182112 890410306 974843313 822794954 872791343 167948341 575761866 378254957 774373175 906782465 967630749 159763396 395826899 454740189 545312430 347196040 734421676 935778667 968069353 170620464 798364271 470699346 812962111 178240528 580026911 277710057 303019907 242450122 325476324 197630006 495418960 355391688 897101741 941817698 948196824 898499793 980540710 25455006 101218501 262863078 894775532 222793779 279229928 490915395 829621675 197180522 615767895 722783290 990692521 739523324 943658887 313902251 936110125 619540280 718904988 995251737 997332719 398855716 595117970 856829361 879536826 164771920 923297379 113273935 440583289 623679685 935452098 574699138 609170931 730499344 985255286 592615545 907514466 501179798 887815641 92134092 350303636 283249120 538492209 490446291 981702212 493333661 982824209 353298187 375150911 501910390 540145941 220254613 296890817 414793901 884800926 7132900 288563836 460372213 997383767 233415711 273725685 372264361 466981816 648045925 796584423 408204196 595019889 976542492 976698373 61141219 594827725 492946684 843545435 791964605 817628471 730126397 992997925 189509492 369420659 983996019 986467080 819476458 874038413 26948690 146147092 253465065 439787407 784058048 979477336 533472811 547923744 127228260 811615793 100562859 591532248 655031632 768983695 654136689 721729024 767652201 866241630 396042597 768704281 753814539 840368311 593562983 908969788 467642820 923142931 150330086 492109572 627695447 967731719 120827922 951786778 459988113 756749994 457152469 828129294 994386632 994496434 524230631 768706034 99688834 295112517 463495204 882038494 785140794 891951933 578491966 942410200 263750245 586402106 508937654 747200186 785264188 891118092 907283653 950606050 92911704 251110393 716280242 754175398 445324776 956933455 407064685 992572547 80225076 918230761 64301057 483935515 809811970 980259281 937402447 944557661 622268628 818883713 155181993 510117511 553385258 688704598 195922474 198634565 854574661 886004258 711626229 828927082 571712118 921208580 921721772 954090810 765009825 886494739 75419994 534302973 267328112 288150154 391345829 478897574 886376237 978907245 166461258 846816407 154572823 442572051 174953434 843629625 622589313 805313999 468472855 810284293 145594114 695490310 488278145 628568700 32876145 139136120 936377217 966120466 458312689 518983806 680859662 983817328 763752431 856274563 904209255 959840640 560284960 684405718 129299558 370991629 757160108 887098419 261644586 919085843 416619617 769318291 409811225 561779466 22462117 877282702 838371227 897718212 867252626 918698921 108254136 403758999 206596925 372226914 513680680 552310594 87982944 489861425 874416269 885152023 453803497 937840370 686583883 840083683 509905056 963092258 250733103 647768524 425502604 778624130 725923814 828460050 433689152 906159940 200903822 835968808 196569063 611682678 903525641 975702271 123096236 711292484 934117488 986227199 127607716 477259672 836716748 908082628 401156587 704565102 536145671 774609021 85709846 737742075 780734190 869002439 372420558 933950644 947023749 985477099 371751973 920787328 7745392 67925364 822857063 827323844 262145032 403417979 203546859 689723248 867033445 990964036 792390003 817981274 814300987 819398221 527093648 629221448 597952679 789468472 438279344 997447853 873623067 917113049 390818575 933286941 779849523 872898568 668673719 865934666 417700708 882435602 923971488 990848432 336060938 388242686 523054022 959861195 466369880 701036704 797237528 981628208 399404552 865991679 190826 686018042 560003998 749888414 521336345 698427189 573838692 759476317 479518620 723652016 275557443 637907265 693572421 835168020 2320102 610069846 476312791 974051404 512049096 569514721 349216087 893710509 419716627 873213697 714626721 727998394 754239537 849081989 543729190 637519058 390719403 719857074 954521749 971228156 427969327 818051351 128677946 776116336 404279060 762223794 788688266 801378237 467870109 899544821 25964291 904793481 804373518 855376310 120197215 792002643 356441318 451469713 55855738 233292428 684615958 847217368 799001641 959254580 414183165 916020020 580004026 673000358 982375104 994229299 612814132 670904269 978488547 979080276 818391945 945642507 868012332 945547697 892388193 924451914 822698296 834267587 291923787 354421868 831093823 917435781 429169127 783702020 797150368 833104210 814797254 946420659 421438134 766127720 222778883 820960421 679124101 792992276 22333361 656965974 298836930 925478976 454123498 475266993 955917180 998102176 422839887 601522586 407662130 626616794 631787557 959355184 391568284 506460210 511733363 676869129 947879450 958929394 991611805 995512907 844864698 920186277 779984274 915287939 219982335 483317497 278657600 350438820 712519093 840062679 845907667 868111270 448369098 604120664 598382534 608579875 437251757 580512915 554769545 815185665 174838039 285777539 852942046 954184975 308934227 402339166 629473783 769453279 284918696 461710006 500246860 803369500 703076481 805583212 67682143 791488294 626508772 859523526 24819288 524542904 4858304 153858545 256442123 582667608 78254334 115879721 526440096 768411050 136524029 430152190 960627987 972084877 37063997 282621106 135356852 850187059 555497034 951143172 596571496 992890914 611016955 808289177 360673109 552623545 284933015 447635899 855838905 981540809 261434665 678181128 76791652 710247829 949152562 977908189 42243425 958666031 948888867 996316202 311429525 700509874 101396279 475511272 835401249 940926209 765067708 907978746 123340154 971148236 528474349 936743749 943674618 981803409 266693347 306585165 551222318 930240786 396919313 749980845 222236907 435896661 525093578 718529008 592383779 774508874 118825018 495121708 725329295 922194447 221712597 988638953 668795738 802273758 343447993 950959026 247634174 523779306 340215643 353803878 431958358 719272273 165102945 205596413 364896856 475390015 49925083 552918597 782392499 984425430 538543749 862213623 405014440 642473610 929965707 957207275 564467123 832566764 382218628 694082954 121453565 321785397 931446449 985106710 469160885 842838284 690874802 949149741 157252810 657814611 40240811 539253058 754491101 886760537 46845936 430601910 679235755 806968909 307540567 658970036 309577428 387531520 135427660 541465420 760337439 805683817 22504259 513243922 223762390 977840118 762010441 826313117 481391292 828942324 340014984 498476281 612984126 796768116 278794334 407319827 272302163 824437016 334800177 625254270 777076074 893818214 929985991 978533151 999678537 999797178 269980529 319476296 579901174 728387638 823064506 830238126 28510017 632519941 605193085 733155514 131460108 899056136 830953462 995528298 65235274 560708164 504441381 774248495 272634105 300870474 312963661 366120242 602494445 717462319 368631503 737084986 751492836 928230674 465124466 844509814 379055108 855503255 67035912 181024012 214688234 961450123 152976154 188498733 758074502 938952569 207162942 493573158 877980459 912270807 332782525 728337640 382079186 983440830 603241197 751247013 391711414 703271747 360969835 439058450 370179631 613996157 66730132 750932433 177073785 292817989 196868296 447267812 522248179 992265911 400210549 748581751 593052032 833165461 116746097 951183948 678614721 809418490 379018974 778499943 909817525 941366454 388286829 696825332 202485017 738034129 931921691 953715269 88721539 110135870 629638118 975905254 83945982 118877181 314616650 380826181 478444617 670890892 564543660 630752209 703398585 879232569 367225032 622218600 178978758 941621232 775287916 946936999 951573925 959735459 453393207 942581756 616239222 672256766 648732256 720067452 687848287 923108788 63734542 475656868 225846541 294439787 179714016 608966522 152331588 615701073 99961130 584543655 671493282 701403871 956702544 972659856 160806868 958221169 732895523 800260753 643509875 979833800 288446 985672654 71938231 423094289 444168346 530138646 213126534 816857480 740408298 958996553 373038906 391701819 940692876 976401808 971501496 991222171 34390349 540294057 760945457 790905540 478424180 925070340 138257456 741293176 362389106 385575941 593498815 613756608 243377227 992008950 956775022 961315179 900010148 985950917 243496336 633343247 289577709 964735750 292277362 996681871 704550006 921902183 19806633 870753238 642242747 883237934 22173653 589566092 566526813 658044849 257603008 301536409 824528348 852790641 483851997 854801836 61083392 281501836 32861444 971398813 348569089 350788924 195828291 580526454 61869859 570860340 939799293 982469758 31541453 514869840 570395659 995635795 30719240 374191888 162550871 624816795 375843844 402817844 236028107 535913741 585995196 870279644 545239507 763207597 957912427 983999401 231070001 663617817 972638645 999502932 562002249 809055891 907007313 984432566 510965405 941883041 408301680 881811137 579941564 809337960 446800326 721506810 371550578 484441770 594491317 927399250 727171220 938127008 95901651 425423609 434809968 895464713 629086977 882134383 796025416 834689704 225701871 639268054 906372263 994913285 690131167 985197725 706664341 890138387 357150611 944943484 320419800 513952258 162095027 610963840 254670625 500776396 553860905 938118260 832948772 966033118 670373904 963000600 713996791 715056102 436516899 559123980 73853932 789533517 503764021 594780803 25865291 757408940 644797086 812822547 662178810 861291199 543994509 711438750 290354320 565359480 744341933 865143278 634379793 748586369 553751487 910601520 457105205 611912613 468483154 567395339 334062263 529730257 344607424 979127191 355178717 526845384 219910178 333987259 242535862 266077369 526273167 802546512 994695191 996776239 187690160 634867149 188872243 838151932 463527234 970859536 40437786 214619903 302975436 467958438 514020311 602865888 840383118 919181030 770190062 938417031 138180801 768744452 158260416 585369034 254073176 385020554 861828589 863809774 370993556 597848958 547313405 914299612 76501157 124519764 756662156 934633726 910022906 919254592 839109779 863880423 916574560 988251426 569710071 629345083 902784229 916413814 43953561 362006140 10456813 228219685 149186939 355420790 69447441 240809107 637192401 790527867 519390980 690076924 532400727 694506486 454655549 514296961 703910294 990294558 943351950 990214118 483608664 717895114 905500251 990328864 956643794 971789572 378152904 499182788 398035966 793946088 174010370 366862128 96648273 106859936 93823952 478176978 123216606 553237709 902552520 998259379 437686211 476263816 455343516 580078328 260817341 358531065 127038182 965562242 523811086 620862380 345913364 516196881 556824748 958066146 505297203 673828969 973416116 982597001 483752370 925391034 197779125 859151232 83099296 746067142 592363918 679689279 615094279 773864310 929935237 940838848 198616503 421874249 168344248 755960860 352689015 991292551 865129172 875481485 836747024 947405335 232938304 647981819 795313071 980363604 239567445 443624292 270028427 465209189 2176188 158842873 878116050 990710850 922260120 989268708 361118431 369463509 337615447 423901711 958794717 968910702 736266314 785750405 263443027 468675914 271102259 468927137 207908020 916901245 945489934 998217919 115388199 256691334 691484695 747757642 75252063 135469105 852520900 883554722 214354541 833614726 125740308 397002345 140720866 733130499 552085317 943648746 952950880 984302785 4957090 590960894 78296238 955099413 212416263 663433070 108132054 989554648 203607172 639838236 487709397 753647444 20499629 883585029 841962679 965642460 379730317 676064995 607922349 891101182 793911452 976452685 188318943 356562017 615742631 775490342 572469058 906326043 387053506 649447468 890611545 946334726 629452748 864220348 460952707 832671094 424866741 735615560 956210457 964652384 905459246 918070477 176934491 722294088 944632821 981221006 771753281 797173891 767431944 803839912 841120842 851678303 255325235 925934260 324623145 863757426 252882412 450796644 792495104 903297277 792062840 818011741 957642204 978761209 472683930 927036937 551435549 679073424 375685755 861808473 349954187 415346936 482084391 768319467 838414051 865550352 392798464 755757922 38882639 397856143 293902200 530829402 740754720 827736089 956225224 968616728 645936471 660125337 445181066 531635543 623414351 865448078 635026765 897369383 576472033 755296141 538371346 831987050 786778817 843690197 22647717 580748778 922256898 983677874 73345929 83162480 271334860 490675465 955200896 957023232 440597645 566208787 842369459 996737571 711781500 916291990 488713103 742858296 636212455 660239390 253138835 678746349 667766091 723641829 439839908 530898059 631313951 967226700 127184169 232827869 396880729 546050548 970818107 995179789 586688777 714658727 138501956 458302552 873493284 880386047 825838983 991951560 107112333 927831464 509626445 645439035 426292773 463353328 801018861 899321791 2797039 194935057 873166810 933151245 445907477 855987927 573383602 683259053 20563052 813806990 902714110 930914504 818474742 900047618 940825169 959296175 788382844 842406051 293025135 788798802 492220975 619800787 878645876 992138242 174697728 489399807 345953906 453591208 942964592 985304275 652273250 719897029 352750389 676556220 274656817 402551768 36724619 906177589 563221572 884328987 647276882 660634972 766141752 799402903 619247535 955407771 50349971 592886634 9423717 269544210 502173469 993709980 414964845 894201638 640282052 991407674 222854443 473123516 498763462 786112796 894604421 921915169 508674478 989726317 287037225 524070286 162898868 507496675 966817942 969823810 923732259 965789721 912877020 997346838 680983928 758541296 292882001 845488920 614860310 642974779 787008930 918438904 998039813 999188794 316540671 905099536 22243447 505846516 750540885 943388797 871226935 902739020 433965190 670203729 903623795 961560428 498473876 571172472 348646900 441263334 195359728 609031439 771044976 932212961 786463699 842420131 642047933 976673527 142555872 641846240 41285251 907261361 357078551 700365591 499034579 655330029 225865659 310279167 408812081 574125447 748456712 876377922 252043556 841890381 330867559 705958851 106127440 373314584 69363890 786996585 873919486 997058376 591710978 911983224 97785777 275875282 256939047 370515104 366804117 430052496 354398431 763111214 304253893 742484025 71148859 108188050 117823485 528233850 824824441 908054127 345021371 728203997 368251497 815290272 47558223 330776446 179839690 547833812 743289973 805397831 103288388 892590855 925705081 976305778 292491530 339172923 362683467 424597650 12320407 807406477 750050988 851310619 687445794 791468230 425731969 515916534 860331521 908660268 282408917 548192788 900640947 998333743 397943238 953514470 629122718 969843726 559565204 560971060 750443090 970033955 886629097 919141065 35077666 43920035 65647522 349131270 547923620 933368840 321231861 339187804 176185215 516269398 978708197 985382283 228319199 983782704 398920535 831215709 304910360 929569783 494083377 962625405 537278267 574506639 892788199 993009319 838875499 886683065 473770989 710111310 707300110 847354878 807552562 851895795 551903221 588558884 328375356 478119418 991627879 998769981 509969084 764658876 694825537 784648118 297727800 711807800 786809400 949440163 342153514 409526903 51839487 782379781 1333446 967437886 262598753 283705079 59830466 106162045 485607283 807558158 391213812 693366090 286654874 343974958 838172993 854434750 262424349 650895535 468263832 736879944 431901417 510168456 475354491 649399050 806521841 832756934 429396245 443509632 172274787 342018149 714520636 960174351 441415224 627622540 715708115 850372240 208743792 520617416 751347953 934180973 85143982 809772583 638562036 932774925 639743786 912011911 511484934 526581184 560767601 742715448 184948293 550710407 110364226 323921210 741782691 964436305 787867248 789095088 196217338 526765801 560141345 839657313 322662792 420595564 508376849 943997088 858127165 866889138 786081231 936714702 534598399 677848258 364413611 979066196 677633508 978481282 995773363 996168935 26962694 816641156 799218025 995162483 439777318 788034911 734476913 947547446 832856103 992705966 816085173 942256040 782224959 848012884 352592210 889088938 519603808 742043080 917134880 945784739 544747541 774371611 209295533 836431554 531200264 840740790 432676729 731637928 878020018 974933016 537371080 990050671 236693423 708180629 981129318 997268866 379135410 957443525 832923436 937884686 737455763 795345510 723346918 979749795 426291470 963591554 799438650 834219638 909756305 940831480 920012641 933400862 103971678 259523627 942497018 963242283 109550322 295404328 690849302 989090652 156184503 801553632 970188728 979886792 140639591 151976269 627917437 751169648 447045873 636062771 811898453 825436800 673083240 698091401 477049291 956002470 809376833 926304611 359549010 880241449 662371804 935854447 847766025 853054459 613273646 734611216 187435268 902772434 125145600 963857142 155171887 511319876 140188283 274124459 166116696 951127538 85258378 396633849 506747459 693387074 283447942 779494646 584653350 639463829 324328742 503730351 343988731 772127128 623331906 860607142 207773043 423012047 700407224 775145293 875565473 914656425 479447394 807585198 567188402 588030102 620556628 726107709 825477108 854224032 46461073 542007678 372045113 634057653 147609005 507021359 496109771 763246987 734941910 898574973 676030553 981309414 414283488 633016518 786319169 853868033 386519596 618109571 144765439 951299537 828598976 923992166 425904244 588128275 479315484 519893616 967195478 998179198 805498828 949197280 456013723 597857090 75217583 408034904 354173865 858025850 206599624 501549217 56878545 360129790 300251757 896695492 397718489 768950637 793511157 840339624 388411920 699267960 255170568 279442647 703702373 947944064 535836892 985121818 401072973 724244594 266117258 464014043 632576140 935214148 940691010 969122947 810418223 997788597 929577650 940708845 619909040 942384115 508653712 518182713 195227935 867404972 319391800 393897944 518763778 955097459 914019904 991678649 672762741 980919035 515911681 637825341 21317258 254185708 428177583 891969995 548338401 737180282 405907864 786927342 292452275 611701228 700160368 757495300 358617544 786091796 691458888 818939470 390209078 598778994 749471185 932938765 970179022 984917329 651259358 969330612 226706083 882493524 256029679 669511386 504847977 808571629 398994575 590167780 371151699 691736650 532866502 813344298 171460037 181335205 434940364 655578255 361809160 361916613 123841080 721461120 233789917 767531880 576642782 652149847 605845904 773703924 532206924 932713174 133947685 182773610 675921613 927696782 42921811 146661520 859746218 875342932 417747357 784101488 942114327 944780519 269315417 661192463 446001277 803636788 866514215 945291494 647500924 750841675 946513021 957698416 783934657 885455149 893830725 925019736 658479568 750373270 416419407 612567032 227255399 426304363 26245099 60898531 629462557 720018612 545787047 935118870 580617815 584424864 310938604 906123332 250296079 821504756 362568582 529127945 895655689 958309971 113980616 177216369 53627244 115301615 168717325 452526612 125488872 597702167 418065783 881372301 405238905 896990452 910328599 987414114 987110293 989550580 402537143 585962112 432493272 921890047 465894547 762540847 107265612 360630143 492685939 642043359 998491618 999892735 74071793 220137703 239918490 798568048 13684678 77694246 12927386 776865694 149442458 260676125 232484557 877880084 942641162 970076275 366368248 388738017 546845506 964779391 972076290 982787267 32065913 852324482 961936637 985838994 177137282 890331426 782174267 929590870 879211738 901980587 439661457 977096983 885527729 963067531 814818924 939096079 262094170 753219098 868413294 958269965 473955767 816570743 600504911 707190665 254201910 759281024 470185620 604312371 99484217 786408807 850005899 953538739 652761771 725594611 24369345 864963668 780328938 995686966 420255309 826216922 338657248 709922527 695002416 898394415 518508413 738785798 10544142 985309733 918115272 966147936 218516570 810542343 100118025 576405112 513229370 845438071 69371111 714419214 733675167 765094026 964385691 989832048 214078951 818311246 853791067 938819897 222190884 749004061 406564629 666037956 591493995 891133026 848211568 913609104 15970693 508427523 215710736 319092940 339337390 999603311 450894713 869883570 977987337 993434966 249222289 817852804 229169977 426342358 431070864 863681978 578342779 753520862 349446672 374165577 435870671 575273593 489378808 806743624 417503098 608339938 516120858 975151022 467678018 786128634 641149887 704462460 264706756 571851781 821023662 973448741 332530566 806361792 257436936 577682513 686420340 734442820 695972558 916383550 77351193 383348906 690578565 740345097 80453756 215322326 663711567 990876067 448516166 529442472 693115835 707579263 855302849 932541477 733679683 951931096 217080419 581100511 907905038 980535555 175377870 966086992 241164552 998258167 112914864 976160009 846298414 972865096 37208322 944824548 825266479 876647368 573848269 679265850 600742944 844328263 313504332 784905128 479096555 982168481 865530683 939883917 261817489 314805256 578866650 764049271 654026241 826268101 541470814 926641157 125484269 541917597 257719254 539823342 59570881 226913302 358586621 559640788 603476572 686021891 162769358 540604990 339747563 617881718 461735647 936034729 992685395 995328560 859588727 926637068 928571698 944551341 280958632 570527760 131770412 790541057 57021964 494583572 768556474 847873418 762522829 978378360 340066246 779618826 882290968 886024448 294691463 847541753 530229299 828855678 812644040 910177933 895130514 901531290 527699085 913530024 438938132 976144966 562312066 835987724 150215279 459030067 411970885 634643486 350443969 859128855 370524355 611825817 5375664 872071627 746580135 800282658 993516422 996882289 755863545 791600467 481918639 994214589 57043656 133080139 376600508 384497047 648353708 893547307 978799813 992274344 90747196 844321409 898072730 966721395 170155072 697544226 727707074 954692273 950021212 995241695 561831666 569135030 783258245 974230186 652574679 922678153 324949424 572125073 565232081 632203451 978976679 984017180 354113517 510512603 324171478 833474904 440411428 914659582 885753473 905723406 852472679 976924740 585777438 705862141 350946548 747858668 685890399 701923275 983102358 997305672 798572829 873070711 603653576 661249211 545226095 841388926 442222251 813662320 726123387 930710831 865640970 983123062 817048669 832996140 761267612 927570997 164635751 402736281 586580134 591260186 603387340 925399555 659782867 834468274 984693749 987030260 194619281 424707289 73144673 421014407 923471671 988511314 509665 648793678 289459641 316910228 610031623 750177034 115432614 375975047 133609069 181086257 852113108 964347681 109499465 673570599 920083766 955731530 978015905 997413066 975071775 988736948 39791869 167397562 886335635 900328199 131213582 480701924 883380663 905345374 738036624 944953433 623867518 658254607 998304621 998768635 56147231 670724266 640194261 763338557 566259023 628666364 241366861 971408252 72987951 973652496 374126942 628322187 39818369 822100269 558759006 837322316 857495245 878892645 225230804 560701623 880355746 893007732 340873287 938742557 12734338 931546341 917714107 998834191 669892039 713542200 982801482 991260623 805219029 974507890 217871193 567181286 388452527 391307710 567596654 820080049 182809494 726651977 753551343 957261596 34742826 485797840 16887124 375326622 731769191 798008540 400204376 806020383 610876406 731573521 594365393 799107787 356098015 451657973 100797192 347943301 412509340 696765979 390173631 670879360 384896046 858082174 255545641 382737114 449233055 554114264 573845945 987743623 606168685 691895743 86460933 944127167 255869618 839292526 558654759 615544913 332326393 356896706 176382112 597439391 651859593 805483911 988844466 994802006 627036992 906250560 500320677 766079942 194877337 425234994 853135287 959422901 201877046 736334672 625791423 927370720 829235057 974613347 840796507 967244873 347734676 768841064 837160632 859730626 553269365 757528103 366453410 709568948 318849761 833659520 790089004 891382402 16749861 422247083 293757684 418078886 726676931 749748935 439985369 950569523 907487543 919752316 394273136 428546119 582953935 719187197 466346268 726025793 489672453 525129534 938002691 959311673 267750269 321906951 546165875 985228005 651908952 690268615 162253781 303375726 314421332 469007136 79355972 713689259 573515963 891835107 418399835 429509496 146939576 616200741 439328894 738782199 450245906 929240066 461241999 493325424 322678558 992772706 757761165 942861825 871354180 957545515 230662504 593359531 791310851 987948924 401221895 401946674 975475317 977162402 279404776 760540920 32181319 37162603 182659699 983323961 80967716 209142680 277095710 284294806 254376991 825644840 53480771 853993020 341966102 549510734 853295061 952284549 832308936 996522287 709975181 906376187 201952906 306729264 254244111 933556117 460033299 835692160 291978325 571252704 189393768 380859550 967396707 976668417 66071838 578211762 203962600 218231274 732825270 798448448 499021254 764926078 56976486 65867244 316529175 613212440 248142208 459368050 597043324 924296513 960072638 993815802 727688940 906556850 842502666 915794173 662316477 718887744 836759103 982964340 120762843 678814868 404455557 837544792 735783910 943326587 604564398 629836500 340818612 659742847 690808628 948910807 307472907 810673289 488709689 583699838 241373388 515792796 160324321 490500148 688958899 914961192 112328798 928652247 400061401 540864116 294006038 877793308 28858877 676892232 802839479 902030316 752255599 881588794 368002774 483835831 24158539 816046885 299003454 981637562 27319729 174807835 346023734 746184650 568966948 571304951 405272807 708834413 580646140 744913855 533030023 799853464 264415191 618758020 444283618 496065576 895216009 910906185 313820726 931631805 158837877 920205478 632915098 926507811 889418076 898846309 889391406 972083643 350810197 449201422 326802108 932499602 436836078 804604647 988650133 992630922 897892188 946087427 565551029 573491937 877062785 991111401 832673312 998371992 674721302 899384777 986852125 998001864 577416603 805808997 748699423 895323128 653935798 974484970 966931655 998440519 51904184 587502026 23836716 981016997 50153800 542990324 346145566 549278578 902610942 904352405 260676621 342829906 793626523 990600937 919703725 936929829 56464567 695941468 320137309 479387622 668840116 962273870 766388524 915463362 1238911 24945130 260231803 712461748 841437554 848982823 139078392 719065999 54464618 544037539 521208234 942402099 285751806 855015942 76184842 321467595 603120781 967485972 313793223 397328113 922602826 957916033 620962029 954935120 532532228 746159713 140144373 871702828 45412536 409986908 638806291 704648458 221531923 726852873 212879046 285896930 225818727 705685304 240010360 320596421 482615897 609438668 315612093 416316161 225341273 876673555 98605147 724363321 392139143 490471269 859826862 995458147 66306155 526824497 622298980 912944925 952448294 985008654 936987735 940611787 621400717 900927533 610894561 760727861 272221841 477242487 251115529 977222832 673171461 704649831 209483488 534483426 328357941 527778428 11142 856374319 270020593 435209580 100738870 878382906 48322505 914736853 817894310 899982579 510645500 922502632 359030040 425604074 31414943 534152926 259017949 264871018 106308306 440034736 819474902 901212036 95202479 611981217 434654490 841344870 648992038 803861769 823689750 991725524 310600008 386119922 471281733 983764575 991567525 994393605 907884913 915076327 652956290 658427038 546098360 934699109 522769711 558601219 436886515 711949792 201340295 767042277 783646186 951425110 732360435 963781046 381743877 964230182 358470291 599863161 291744475 444415505 452843982 691387678 300750402 650529795 391244193 711260957 890602918 962549711 385923606 968872951 561593749 593046995 172700240 928188647 534630798 813236997 794720212 923778000 261125549 790126291 204287745 390875394 782490554 845834725 343615473 983062503 704492579 828375725 154198787 368932287 418324653 524716541 279586574 524160014 578296050 676889541 610519271 779906241 961155549 979566246 630724334 825170513 352944380 655676533 384429260 708218723 927832241 967459704 118397324 668671894 384649225 453018775 263979125 810197716 884294350 972787877 67057692 381329662 698981492 724039022 745620846 929387982 954184082 976476179 684373141 837832049 331961551 907788887 310002551 354970449 903178149 978553719 804246458 857760791 28020784 495099754 577955817 942857210 390661563 776151733 505061535 548163388 987662446 994081338 554334865 834248545 535564642 833893368 91024114 651173771 101734035 991732997 391979171 947095096 170858553 529684550 593380366 700168836 882640270 932388112 608456395 633485746 984729040 985495344 843163299 849330642 797556283 843766013 330318240 356810594 607252656 952693585 562068957 647517183 419364877 504326998 729947341 767446305 464656637 858519572 697850277 825749657 716316601 831773630 111963953 407248614 616212726 968106239 49581047 523994891 982197381 994192791 470056459 491617917 494848766 801171710 782454188 860224634 369665362 472379739 578347803 938234563 476637517 540446956 706860997 848811633 461982778 534248040 744874958 989444388 12480514 940001985 226705215 880660811 819535169 947433271 853301198 915878978 192971869 844034418 738825648 755432951 485349563 892503828 231133104 610158619 588591113 638005060 148791216 496209307 344804212 819038611 214486007 528192657 344080295 729678349 862610909 873798129 969808738 989109444 993969333 997736251 900608235 983156943 652778605 979762645 572055099 614480970 237603700 590212319 121313703 897045593 36217715 885766191 735400758 792450549 652677136 661581401 385264235 489587692 127423459 825575933 329720876 699933902 832958222 838443170 363490168 912700811 653091737 986970128 669884951 919475158 259104607 747525614 457161494 587148133 603538191 979253058 902745807 977592537 670468981 720687371 313147655 964653225 864001870 889013411 872725687 902609047 174069719 400109448 902813593 944335739 439939946 753920439 745391027 803070074 721111762 741061538 260165305 871412608 645177892 954560333 858942477 957512406 108591045 673167385 435419698 995801010 241751283 437637686 340331125 475066417 7952504 54909959 281221006 444475554 550230335 630318058 478086067 715124620 416143588 523955064 320561910 745574098 951496361 956371474 703933399 928739303 761504670 982016663 596794849 893699655 220400535 334780951 297146398 983236512 896844897 999284898 512282380 554467797 813445244 903721988 855029477 888259251 846788098 913486451 175848251 671018518 28608170 233558014 794534405 994431501 778326895 791966743 132896423 665249783 463046397 689535056 725944882 972123173 646039157 750170815 19674073 56743292 47723226 514521043 12891536 528705001 843844331 913514195 271330902 653461618 701355921 810549166 807845793 828029978 151104942 660887310 134412777 553707359 884541385 974603722 261830208 988008311 272587833 686889168 475046209 832687801 894611996 899369648 768252416 946602712 295641348 995553166 749942499 970006170 356810280 604686727 885408760 927432059 850873774 975356782 722158522 734185680 393520318 789400762 761929815 930225619 959459550 974003471 912633474 920908816 551715671 768640938 413973114 799981691 22331738 519057472 986554636 990578865 528225881 762774297 694792774 821790907 252072164 666059259 546340969 770343450 745167141 946429006 140880352 976570181 194660040 215441218 945331578 997168359 871945073 950538028 797745753 821455552 334276396 383755146 562821340 703821360 543020287 623372855 926537451 975518460 596269768 972867436 833701083 990850233 159186910 433643715 458712802 968975304 773567820 926761505 323977291 470570169 186493651 451299282 484057230 842738933 503953451 513432558 137604185 596877123 548718942 996961511 774855480 898291318 469847183 679733752 500309538 552654111 822861601 918384732 839805913 951198494 804093336 983907173 829584172 899959300 935749551 985132201 487411858 856067236 159231321 684230384 814356500 835056374 524857992 723699429 734155307 946165736 185474815 821009162 676848650 933792726 834646055 918865991 343182623 523839932 824219167 831989390 272118797 757010230 773634188 968148502 760709217 923408161 663823057 869389565 274000736 624981170 760440778 996890713 808284930 990704672 648974712 712665470 277957483 700677935 699594275 956678051 486316849 917518039 128668088 248938588 535194116 537286095 415512816 914034214 193464586 894144190 758070697 928080932 311002197 594583166 668580639 691519717 668692451 776646415 421224858 989730763 500173338 645730692 858865138 867505395 879972400 973226298 924973021 927239101 729963970 948031834 929699206 989138611 280754149 303486224 610437590 710278371 241729955 684012269 864052217 902634881 570972047 597550014 610948110 619181190 869029210 882705060 184381832 427626443 408183384 610426366 690144247 894806063 305469578 919644825 796988727 797995890 226476266 489723961 359784464 400641018 937585927 956988828 396171378 683782338 578240954 768685950 626207418 860052851 811606576 846196367 731647841 882922470 60849913 731325400 783608656 810488029 274247764 969754419 332207614 645503123 965488475 986342207 263092810 278205533 778796524 792984031 391048814 586457817 705372580 850868253 818084018 862526254 735018897 824306057 126272735 365241873 254040519 626079208 258925387 784926266 689201430 912195022 430626333 876123385 631966053 705715958 981540781 988514039 877057 82664169 551081441 561671081 242164858 946648548 934193738 946116413 627551564 817987702 840064461 989907527 495363234 823898496 343016964 707818095 39659987 171469710 501628642 778573241 919480335 947476112 647366084 770334702 169353402 273542247 234320617 689856664 458284966 847241803 493245057 600490078 455457252 986042863 949271388 971247733 930492300 933623642 23738120 236234957 103140547 134106217 456270482 832499683 538785934 751829620 397785263 565232651 993690466 996995892 600870408 649392504 71964098 205840657 329572428 349151151 175861656 849198043 157912256 320015006 954790701 981985112 101347763 693802183 438027054 708782261 31545010 728123523 62360627 823893169 807876102 809346111 521265830 937790357 866552154 966136833 466021405 955619631 218785127 604859882 108944729 231310575 397290053 813228363 758332645 792128168 613094130 984640031 609724001 930214261 175685213 988559135 836253413 856631160 486061540 839866489 532717221 983492505 624742381 764793279 944468716 960204980 817089651 889344862 97699585 914706918 452871572 783568122 880584126 982416286 56866896 519616300 376831585 393733372 513355105 898928368 597704107 799801242 784143487 961533021 426521616 598879719 419602896 714216751 926393208 961724159 880650162 911985971 501698537 818624771 475632800 855517380 277953581 641599622 732119185 868566682 208426642 277377921 406154376 878092216 343681455 832403590 480383188 830716503 775453875 938500750 207066081 877489407 1236816 872842336 185897912 594920901 955348693 995199426 690107618 958266580 402768488 678081820 731812001 867382535 170406723 798898784 934219232 942880332 354557615 367149636 533984656 579628775 819846108 997292702 693113742 800369010 425264805 858027841 953036752 984279632 35292260 992951365 175032397 809544012 977706736 989149104 338554104 371273592 46073334 47687469 539875436 907482204 485765686 610852499 618202845 906159865 385047333 867662783 239848624 332919347 51123828 842819131 739088737 742621496 878855282 910227721 560406126 995352212 64706894 836350060 530232422 798603565 36521328 160261194 515302103 525430666 876599366 902234970 470343502 847286747 961256455 973848344 39855868 393921030 636214098 642117925 910747205 948656590 341614715 487932310 13515861 753144964 923500852 978586610 469866132 726150800 465382402 639114114 232027559 446882646 740971870 914063672 777331612 972685705 943783479 961622906 999118074 999752320 983919 578686998 301794444 443671811 189956320 924262580 471641739 491887387 344301442 552180088 241314537 519811986 976052918 986631557 930570006 937613811 768821750 770730753 716262110 777870463 413300583 917467190 894574414 916163327 796647911 799425302 440689823 545409503 229775670 427443922 404744503 411763898 529987440 970061160 445975723 802553935 165833006 486895107 243078786 359951903 417626034 609404188 62800781 426705975 741981741 921355933 72698224 757520559 227735764 871885969 755807285 990315697 262826195 797413382 144435025 705127401 89404170 867678480 490252127 558866286 909341958 926634475 956780099 960953878 778986763 961329344 92976808 159448896 587005379 888914518 978200 769603632 927370798 935804629 217519186 703169528 140123673 806519563 592729735 783092942 652875915 868014627 438352891 847065527 585233756 619639992 201150040 937192478 466004116 784049384 844507063 922811606 386708998 978732698 364174110 846934618 300424444 619153792 403119805 944502377 153502763 451781869 455217042 817313288 955546418 962337086 692696969 952808294 552751035 738872310 524971673 693032502 398438414 466751270 985474657 986153836 219765051 835339542 354595962 400955566 869630285 956334102 898089740 915587805 989133985 998220597 818515418 915187372 787177031 996589994 908606144 972739150 478108687 980567942 126392723 575859239 277866070 821750876 86074883 823063590 355268617 453809741 735466797 990696041 350608107 628519851 639047780 719501495 838749885 914116240 793220179 857046019 961854434 971714433 104062840 929147166 903907445 967796009 103357165 812365183 181095572 457873818 801942586 976150759 556954221 903560732 294467581 599760875 175998129 577620741 647802760 763944750 808432135 939138594 323786266 876025765 195933546 833354067 629034840 866729164 95731456 940382702 81261128 459289940 841586563 945212114 314952465 399208985 858513614 988615683 147104649 857656633 903644071 974597914 815657027 826027791 574914940 888356871 155444135 657618014 130649258 766525668 840993841 865957496 761950162 832946769 290485313 888241955 134056945 829203761 718021122 732289885 108837560 470124061 52112145 558144793 885581917 950471420 71888083 762892005 312329763 687952184 736914066 954800284 161947622 552402908 314255524 707486267 385464587 705635988 878003503 992844808 191577958 501917611 240198235 528471376 856130178 865773320 336472485 512232218 24920709 417733982 951288577 997089895 424310929 876271644 199938889 511767555 585134418 831275891 88446811 212842674 837165674 900119330 21464545 403437776 46216189 780149157 400798299 930034040 673565453 874891156 498754600 522466545 79451283 248461878 52566092 779442280 822331695 976765783 671386291 973049336 157151204 955784177 691503076 901952259 449716733 906942269 224552215 892979704 464695929 617127341 408751673 825676737 569089821 959033219 72739588 421334885 132199023 523481028 252740959 871811749 553591436 662160189 70479688 105168397 275126773 345282257 383433598 743950349 649486692 839750862 714465811 979542328 106609326 241642842 710320019 797563270 343967698 787660518 388396547 508066983 393209779 797370795 578068720 855129168 650171860 738069101 709012410 810138965 761141071 994541303 698868663 811113967 404014100 599529770 258909898 468412006 21302127 183910610 468602685 722362836 975843943 998255443 976412433 989713879 106762043 157669468 879602613 999326564 707695244 983512566 431625053 743331974 12371912 156346510 175793851 728810104 300411744 691691300 139118492 631768571 274258183 439124710 146943193 619454192 884935465 947299498 225703782 525675299 747328768 861773531 922420049 969905699 886588566 911569263 126025250 416985427 155981008 599147219 213083338 800339822 389536603 935927698 967203034 981380699 151873743 373640381 669209857 755184985 757858885 914525937 473985401 531708629 904679661 910717761 47949576 918245772 533702864 896874003 227129167 487381791 615006468 862323337 244083912 885582017 291083767 519232697 243083528 930757219 825634697 859768017 567622690 755862657 915520464 948769401 864776552 927093285 452515739 698911099 547014155 956082088 478511300 550729351 514884170 576348727 414942731 788068698 532020513 997435268 175383569 691848043 401147290 925660011 711778791 783642133 597755411 974387560 413212027 528224425 77033626 519953799 475093728 720447712 205146362 728627094 265787291 873050043 852570959 929617068 689553560 855486517 993598666 994734397 780653240 884832714 787083584 842047491 460506821 689094072 957409193 968430653 393528734 411160683 988436085 998482011 10334448 914804859 101133655 587480403 566146917 987171108 696071933 789306100 43110504 786472994 531897799 877247040 189343697 373749486 2746590 515554801 956119039 972561599 623815127 803922763 119521286 408211102 547037350 767807921 475601416 537496255 215591870 905686291 717155150 828523468 589207781 608664030 209922493 605219327 380170504 736642881 927365165 967272044 708478559 959241386 267023964 634700841 881776934 885496618 544096407 729777760 836418124 852271830 484593276 848723982 837355014 868510417 601136803 707351541 412725715 929355336 94906804 555437920 131708436 149244488 626602950 899151026 971010280 986574890 649686052 718934687 306734790 425383862 122515775 853853631 86093132 765043164 254996604 314486025 601921628 933775321 688286391 701300976 979415390 998688993 65362741 113409763 241308487 470949515 176360477 382047149 98276090 930554014 862456882 870796477 198784547 247568653 506285199 623649051 950723693 957618532 901220105 963356355 263209713 552060485 765230649 881667944 354257332 682175796 313084047 565358438 517663038 561383161 567100096 917138697 379971658 469792964 680875684 763307744 145137347 923179039 443063810 922078581 899574375 974491017 72632698 753684100 96448836 123905534 353129575 864712447 741442422 829712702 38032159 378277431 225000255 289693402 798313868 983595273 481457649 612666843 174464096 517197947 456070132 731036741 918701903 988167035 833934371 909286108 412451192 970746180 725321986 967311144 346177826 574204189 487587362 597655596 768283715 997783639 150309538 164987999 200450037 953946659 643248441 934529082 74714134 441564741 461164218 487639428 974611843 992628466 346144609 621890729 306407685 674233067 390616383 905868809 722688485 792641148 69863397 75853011 680061378 825097474 269351158 939898203 692312116 985502742 557481453 645609727 4506537 428995949 653871971 905617930 73747045 749628470 616523801 749302448 493795961 927034624 908167203 928610366 511261685 667007181 471432181 634125631 740949109 965191093 148685208 847278728 259104100 462202165 952355155 955798731 765779837 767437504 861803100 873011933 568199486 849990942 144975279 709470347 973934628 991218973 100692001 350872830 643629015 892864869 253143593 648447463 170998694 954819801 470574352 875139370 717789395 797960998 803939297 969974200 236464636 910456184 129197441 754209451 889437355 925560187 193705113 911449495 622888741 880631997 560050475 801387146 175013914 903172723 214431116 343700749 81345627 245076685 689898885 806069389 894308393 932350875 211068431 394629183 632278683 864102586 782512429 786192134 250328277 699148011 968157291 994916957 275141493 972104393 893846343 917082016 911041549 953559532 551281725 836623413 907287580 980406017 987071686 988787446 963904687 967633697 110998836 687339043 251783856 367551696 43845720 212331956 250112280 251889443 747176413 897649232 947297963 984687637 786160535 863080755 68274690 432594318 50597592 381123888 148123487 603662821 892530019 900767136 428344113 627499396 32837981 825608107 858615540 933418145 337922784 717544082 90406087 150479781 895267854 999136471 987860366 997832619 584075255 615096139 987425064 992835456 214258747 302820360 509693361 635801908 527236889 722321902 100577641 447337511 85506826 852773083 158239761 908067083 109618174 429667720 792289536 882731915 101198982 138241064 69997750 672722896 839054628 879436316 326583458 511335239 416159676 569065006 221447534 397465742 312668976 480350229 783432537 798856529 370717608 929900521 610406746 990755697 264262973 897393734 496274781 640205030 380136716 665858289 594844908 805849246 724750623 844442767 901161019 979586981 341658764 599707627 105876870 677866378 32809726 217842012 712954586 870690795 428919934 966038499 283964259 555762335 784835861 944503992 818415041 958055275 114455442 554838961 492943743 576321066 722236481 826944312 533318138 647100630 836588508 903282247 182899750 519550001 334229868 914625373 362375185 460543729 865226659 885956947 904742207 982030742 869097020 980728573 89724291 734394662 327863748 717011749 978343210 993276644 375863148 527431861 750010008 832809349 354428920 572694957 689048489 704194720 147392670 882541999 797108157 914259602 455430788 549860952 215869720 565624934 866317189 946227414 634270281 696682688 3908982 419278701 246657269 427002109 59877884 853211140 424090064 721150106 954499258 956474266 585395678 759269228 891865486 909582804 893353090 970946728 288290277 830518603 392914324 956297832 396399876 587199465 956298063 987321667 937952708 950136860 646511874 840667809 571389519 793353819 252438748 699029859 521621834 939747853 785639473 830335960 880394711 887504587 403852478 990950197 179599930 871940170 670819323 902307295 764092080 848730558 290624662 334066807 163198052 728936908 278641367 733922455 329041101 805096394 560328441 814785566 367946491 538819417 450775803 568601860 663690036 766125741 8611648 75035109 571468287 575956760 325599310 969248847 902496433 939812843 659472859 810831034 102217776 558678104 911070569 912050223 792051181 943993062 279372710 485279084 87824889 561952478 991278621 993702899 126169137 394232242 645045927 722770689 140719371 295169542 515952948 940262289 263819616 291501932 117748974 435809063 682754367 808697372 921218073 990913029 245101105 338591605 276244485 882469940 715267931 878516004 474636703 504937959 586427661 949349645 921870047 940334879 263744333 297133759 891097257 913629346 546056857 819521208 267100536 590491080 868038169 947424519 33705809 636540780 583875994 797429032 419280660 519109603 582952892 940481679 219196212 530974658 282021161 945827528 981347147 986188112 736238663 881725572 870207896 986778911 605097861 948513057 21449755 184302740 895617771 955556031 270914377 892547009 702260970 939878593 585459706 903766790 78938924 744195305 920729690 996329987 920878987 950100891 161035162 855348530 361519531 603205806 144485665 712174385 594934438 845658799 979102270 987774997 949714896 955661648 252843886 572685058 911689742 934789027 48480694 268211727 929363495 937986928 40695180 219789243 864024098 894249341 276970461 769223481 399464029 587695556 947945350 993378384 151618746 329907223 700412816 885318039 678902661 778190159 69937120 862614705 327902835 991027920 527161962 680372760 972648100 998689049 368741584 662042965 694638174 798082887 200152847 916173954 114145519 579049012 7783930 716495982 493615486 705923502 296359708 459937103 930967384 950580177 106821313 261367883 709005838 999266174 16735944 463091350 86512268 198453258 807847675 833191238 253656970 326412096 94535440 555838693 768220446 929287361 543313078 748484831 803510455 934297719 832251192 862594153 305762601 910803126 84489830 887644080 320809330 888186255 494313121 921956571 34846122 900216120 87803385 842140334 814853940 988219571 597914086 743660783 346336567 501078432 32200001 818474981 482437753 609828722 124945000 411403092 668314527 744558355 217697588 415450830 725565882 911942139 979219566 988744471 791962060 940415842 722582075 933289220 979786494 997295663 400222585 510957356 107462932 518126573 30921838 726460562 607092219 737751233 456549640 773760909 660683004 840805996 79682328 937067926 391625716 902514483 645536821 692851913 827732196 848621718 805530379 923959836 449346846 625577142 277144015 339196062 185305526 268728011 834032943 845560312 832926426 900045068 295814045 463900614 774996858 845638038 136886616 518440963 306554262 664013760 616552903 851939649 470651127 717120572 410370653 865800685 593552468 610190753 375403521 959764567 406601104 424403721 849134153 893862226 482177229 482271297 937180856 965416264 897610053 911460124 950137781 996605184 513582435 869544364 799853510 904111276 716475680 982590942 849364964 879988554 363321829 470602765 667104433 876838958 486162024 547201380 352214172 432211734 808115618 883379436 211566563 526211944 179171557 305923908 99039435 661550280 647005184 974982986 502485352 969148739 712500836 966806191 179885498 973757208 623308985 634612419 846084277 868024033 862843190 886363398 573487216 599088641 995361969 996577533 616473018 744113478 162353079 408167372 184043058 639458858 257900565 729996864 303007079 949750518 417962528 628018345 101447965 177451699 756784527 905293694 28070638 316654533 480710115 594722164 340095399 974414815 131248007 713032927 546516461 655443938 325514248 407422889 626891499 991802130 368210537 870950478 315288303 571532345 934542684 956290803 109254693 646782528 98924134 241573699 202424346 767165598 657250883 736239668 456699459 741139006 564881177 640357142 600461398 608382461 181859830 647812395 674154888 952445134 36671090 117317033 577150158 926671689 425901068 536766125 685833903 726621068 183135984 676610441 675763947 915863680 204932085 540280181 716719310 886313950 371469647 778810405 76375553 811075811 500437541 882948671 439399915 907027652 214196143 871124705 811421425 981200438 348457192 350957976 867525715 908528315 625897592 909796462 489353116 940031439 530492650 742373952 899628200 997820462 723212839 781191020 301317352 735517051 811378447 929630006 478213673 731872525 250722826 618874519 957680110 968692697 708243139 991194551 959945027 976156643 390490823 925564458 378410796 627590057 742161760 873760692 363395184 382774104 17509877 467233167 536537935 551974065 318321991 992846228 565560049 772051042 961546973 989756787 990597236 994185184 527640794 765943752 481458154 797260461 572339081 693937088 664523011 971622270 336012453 602079168 600865126 800179053 967514374 978260170 668496390 713446690 623771099 788816290 674754005 981573751 808986774 929606752 249519915 363067889 316951509 338856815 732486635 940486180 986623831 999261514 112728476 654603649 72619950 739666345 115575240 410094018 549889673 814801984 160535324 952136596 270272282 319459943 788370577 925403606 467118383 720936785 515358343 877314552 106790200 638846119 368535367 535555865 365124350 963636026 964484086 979286499 383838168 484399818 278012503 804565620 713415901 732497442 838593845 985905811 44271241 709885807 27596226 807288893 495926136 820741738 427986670 776226052 276356681 697297182 327259432 989944337 644872964 973524429 288627082 613643787 356254936 861493802 247346890 777286927 923877221 993667173 274082176 414481880 184679416 630862298 941765133 993660642 667653120 918792474 183377455 400827752 298783568 839228617 652550283 948076489 157020207 431686620 919445778 926115792 264617634 546160745 518601916 693767437 689457611 803719917 41574632 738161038 578612609 641503491 687071468 998076724 988904192 992874569 575246155 896102121 480785113 607479881 692232667 908522224 892899818 910945433 16595194 794512069 110416164 201985447 270508070 719722592 149007579 982461076 641044741 695035659 96387461 773576403 412197675 611497725 572078748 913264522 385803791 874154494 307176902 799349833 139291116 358166353 651033227 757787549 640892087 755473549 632285040 977464512 230699906 380683026 612190281 841344022 785691002 931882243 23398401 919181486 236096737 288250209 804834 76760838 796553989 931845097 874113081 891111454 85871899 713408859 583968818 898238504 505043507 776607582 867000135 930524438 666204791 869602348 344961025 437518749 495417693 997771759 958192668 981944064 436129876 479746740 586036451 963070499 554010845 841973232 191183384 208961230 58369959 246837015 156497526 707129565 594114451 640254025 942525166 962481429 894755002 900679438 96365692 511608106 332010124 474765632 841386221 988964809 42163623 581170582 215813 728469533 684731699 720228715 111389218 708488912 838297193 970033093 333583449 647143935 297668430 788948344 291059517 771903112 682008720 727403587 499323 679980591 329238656 788954649 27623348 319881192 214062309 815856434 600834718 739017823 33931020 822486520 776489411 875182694 608048673 755817012 380233381 882294182 961847286 964353956 101377804 675132664 605511570 972410876 450512057 805382814 255425116 676937919 904577014 994440246 540449120 612417645 599708217 897112603 252601764 990834294 756980953 876190805 74207728 124473192 52190674 663288344 602704128 775208904 886782122 940616992 36316863 81671581 325806841 527841957 531495405 959370842 923689839 932525085 619456028 706066136 233110329 400863563 320858783 358254692 490394317 565357533 587127106 764637666 732566607 808745173 351893917 772999291 905360278 988998585 836078534 989589529 113788374 577864450 162624060 329643645 40439384 888344604 794754186 962461025 499009725 709880005 559593064 792017105 712249466 767641180 473464867 683656235 439255682 456337651 181803157 449834002 920174265 949549583 536377438 539157820 598598679 698644235 310590215 910441611 860920264 887596415 574178961 831934259 937830419 939890733 373944693 823988951 653725594 755502488 803631554 951197276 430668317 479210362 497366729 809524226 454501378 645233999 565564687 745204439 424355216 522862034 486455081 911566271 963599074 971013361 206502880 622055900 366721075 479417487 45060265 846067886 193374048 443358076 34823987 922788989 199777078 535070672 732750477 956199727 922519660 930957101 621215807 935148912 112230805 946573990 92698790 502358416 540510691 759487308 540672229 907801054 350275240 525977021 377991496 730765368 579623590 784729680 597639527 991010363 765889072 878084621 509043225 574173582 739421299 976097352 791513008 887042864 286128729 362328775 815625260 973016428 192040949 327121300 849220610 913884163 867180345 943597378 219493280 449051461 291397352 626942423 649283561 662583074 77413299 729727520 794983948 903282555 964704452 965224372 59925789 245505501 781523278 973656009 167007665 178135921 308160578 600042977 872331619 975268282 850888989 858535587 782308053 872577468 257681367 376615588 310020298 779715951 866343685 909944201 461292135 689259277 895677607 903725817 806632402 938227792 207377756 396421886 238776586 253539735 75606919 562747354 251933199 934577302 261337031 969701661 721076705 988691992 601202977 882211156 553358173 959078631 532902588 563461285 853139457 926027852 453722490 815736850 317829882 458522708 589482426 916752220 362340804 683244202 413363645 872563713 222750786 631617700 601935013 865764066 846498067 954504279 477479515 477710628 129899813 575460293 188466098 502639984 545094994 845352428 948483795 996769201 29410796 920501446 580637163 622494472 724254429 764698319 342575364 389821690 809071768 942405841 915412391 940808940 911251605 940474974 655735960 901654171 342046161 521590511 313600724 503365220 54906164 221239344 613153724 912781421 915338340 982966966 820879857 990245784 642072845 670476906 670287916 878677418 110624984 932862844 235399747 608863348 674867174 848357428 480650683 897751432 574811021 976528689 525509170 970707641 745081576 868823137 427803361 440155948 812549413 990445075 196575537 769504922 676123655 938239178 78583948 338362546 854656213 890651690 634724424 854898283 657867618 758842780 589580871 756328742 894505446 940226272 286539843 960883363 179467333 410115617 280214386 714607486 944062845 964650045 913138502 931409725 645167390 681058495 815227820 837862074 120517240 692414675 499678091 532051984 456756252 596739951 860738648 949506649 339932723 846675588 339370071 866603554 69247311 398374693 980427387 994009566 468297076 659242727 138670669 607455321 127665322 305732582 362073471 854077763 648809231 846751541 586606606 650229754 219822186 749419604 786181609 884085975 266936149 756195823 258488217 942270371 580343492 809017755 28216236 952108693 453672384 598647830 59116667 459918425 296644151 478164755 291703286 719640306 392837892 806787584 756428344 782157109 973530233 995679357 224249765 483459646 780685363 855914260 841800605 892746953 456654748 711247607 812262625 829116269 290225983 595456906 338562834 733898558 193889853 993787860 787326698 928916550 639878215 847310667 228488303 638938494 959609514 967160784 123168432 631956389 707092195 793170091 490150983 797991662 126567117 902375658 888882417 973750748 742189191 805602693 84972500 582787186 938280902 993988029 814939447 866465653 729664429 781908406 350361313 809138784 384569329 445784906 80049585 138702430 494478117 686688395 887129741 905447625 985620188 988777549 37580790 124869750 674102912 990408042 566045916 597630987 992843301 994683608 546959475 844247947 240448021 332582324 826440954 953625659 652029083 928212106 290901810 515248890 502293433 899939137 168185899 296968542 391183095 795758746 686398514 764176302 324543400 850769558 819429597 997982340 628888472 972158329 190271657 223642383 813491191 908078746 642650520 717197162 954142208 966749025 52995909 245626828 966590347 989178852 562103427 760257986 5685634 50495965 620577660 862434431 103378541 545050640 234113273 486187442 188492104 191289508 679375723 860891617 27255777 773728643 983583697 983848319 810922437 812330702 842861657 857401691 475447576 928023853 178848371 658927321 203762975 530868418 352694731 766741524 968326260 998753776 927602598 963250618 849184519 950790290 127773359 854428557 548142701 589518778 616301125 671329832 72604773 822927548 398535684 880717381 83143457 860654206 853796401 864873958 94252956 341662723 202580426 797975222 191570401 608300410 343929110 896285724 236304565 351629010 156880830 348033534 639016783 941769312 241205563 704416746 30216755 498360893 292684406 941112734 894085936 935236499 409055588 724067303 567706362 899080910 726956247 785973548 313519714 521671551 157090990 946998998 102400391 639275522 260354527 931455855 974641272 998076120 629318628 742709609 799760648 887071699 75758851 389834238 360578722 412687968 336838029 882638033 735172463 857277153 243366769 914960246 363037414 684269277 662662204 925328060 813734503 962965785 265350482 594474211 874857274 925247226 401571976 755877829 393973145 948882033 123701016 995828709 238379400 790174312 921325956 961325979 534230666 830101432 606880260 924043732 120924057 250616121 702643810 777140193 955257985 984004772 354080521 751604334 702729931 975317098 778299804 844737785 535117669 856384718 865518216 972115876 634201438 907699718 568926528 785656166 519231556 761326152 705711405 803123745 181613261 678717916 180221279 286229235 143721328 855636890 602967532 815293351 397300507 573136638 112502197 786680347 588771913 619583103 208491814 269722203 591904990 850616771 659618269 799830528 452277097 661507496 108472525 826074748 664641059 711093107 792961905 872454518 767645626 974518216 324588039 381173839 101749844 457810437 857902707 909636012 53110142 169055250 317201276 739851974 306294113 589399758 642036784 999082426 567325316 727739846 92859604 473747307 848309337 955082000 858647010 864191552 984067500 984699278 283888300 505877387 403832722 928158667 506007271 848798777 693299172 760117850 779934802 982051684 607391233 873864092 681930905 798887451 224532376 701611358 169276611 653230556 489008283 786715746 722168784 955330965 160430145 856625145 542319840 545410168 279764290 902642166 718066295 927762926 809153769 985389611 897310618 943413069 618079224 772715374 648760938 867652261 614729347 952318300 258933372 334981651 563099629 569708249 219414047 391288003 506859334 542538014 663849390 996312861 879771498 904825796 101025229 235412601 772272814 985370668 805921002 857087129 515240930 850199425 726319190 771765031 557202249 748373916 612172524 983443526 407189786 983002527 23179149 64286417 825405809 927733505 143603475 813252873 217286207 387510675 227000211 441014654 101462756 310706859 713936852 995246939 593246617 924439883 37759147 145317686 929339443 949597614 275112172 851389705 432267241 740937996 854052043 884518197 145135107 641622895 933520771 951710747 672235829 880593036 205049215 931202406 964975310 997294543 742522598 851364482 614967036 616948305 201103315 714821210 415750483 603773134 761817165 843961228 82328893 443296400 208033114 403465049 60341273 204815980 745564928 812745091 870883095 984620950 414116694 865198528 864684919 977751598 599949152 700211042 162454315 329874516 794768525 974402355 567615197 802507347 699880339 955830153 583194539 850548960 291597673 788422392 933017400 951436665 808505418 932806222 286451526 807250369 366625509 560004409 104797388 608623751 419112456 673955922 547132655 858412441 611544913 851464048 638022253 814664583 959378338 996247500 70418719 534272218 852553564 980679248 584178844 766745455 453774892 708413203 614322581 741192999 23007305 186273206 808940533 940743034 81314430 564382482 639688752 646268154 746894823 858597581 761901821 762799053 523833150 655679372 836909070 971881296 640390233 856387531 702675784 953909053 435453193 952440989 335642026 573825701 810553071 993666794 946333637 999401009 227846809 407853042 309091393 516386365 518170167 572682053 508062879 975983807 209522471 961714005 799898914 913723969 320119449 671061396 510180346 995295459 252059725 719556035 47851766 697743164 461093256 859504400 244316602 543807426 263090571 768030127 438962866 717952015 543493484 966844861 257096638 390364922 579138908 807066659 504519705 506944616 290768671 458047067 585564572 961068263 753687755 998924358 982201484 993295489 316978635 754357688 735590761 738963997 672613126 873247211 880421211 939159541 483275955 950043113 177295931 945786488 904162822 989754395 311121741 375268060 304528383 915176591 757238533 821271185 744889897 907393152 293433110 943631696 318070474 457551388 305984811 629487739 334029736 379272752 804466341 824480065 520471625 910189651 904155673 968964473 50353818 137962571 714244403 826039225 778199626 803598443 229171451 990002738 815895064 864812743 165638757 570582398 272698239 685871086 467248653 895759337 436606090 528011264 980609220 984837333 699826880 972169756 370072026 656591529 544412859 878846213 613849475 653134941 552042396 583358235 654147677 666765621 409804176 746463772 675528877 682369225 620575362 719082048 196571188 328450410 238282178 722735399 197002577 494534054 176186141 899492189 299240121 496581255 727950412 777924986 570211232 853132234 668208497 967366248 194359259 314449319 169238914 204591745 342625866 552563124 448489121 493989635 438565121 986694887 984669583 986421145 441459440 822705762 955739950 967440227 580053850 722380753 778372524 868443438 783303698 870061521 694351121 976777555 86511897 554221901 990604859 992268581 645310675 889097879 619241770 928412903 499139342 740286277 4153181 328108348 656595089 864384679 972473127 999339774 529228268 589281665 833051875 980893169 129838587 793144099 305076390 864586530 695646101 762335250 96010814 277114800 258401052 439255020 861404569 900582774 558473623 895377443 356050717 796551640 829370216 972864620 66540676 113186336 905386075 924630274 514950325 576969040 791008739 853971157 152091395 241496447 588651207 883456467 322938936 812783727 764205607 901504966 748377132 869375447 745320158 757446186 108887303 493876679 403285542 904242505 579432290 751043245 870173905 908075474 866880577 924215758 763176485 814781908 728451916 960118756 984030864 996486276 874385413 891465277 322177888 776110690 435866232 625956813 642678144 740380067 910452889 947768799 289451232 418543765 637014566 690325372 345138005 745398735 400336 297746256 811047848 880874497 256369954 627010517 915762149 948319483 474337015 525295841 260776116 779887446 619557249 640323435 795853363 881886678 74983172 924281504 987900336 989155405 699525815 769502066 2790838 563996990 38546288 260788399 307812852 696889009 76697490 973054307 377442802 792044846 188621494 920238841 536290313 677844796 696751976 941167381 506245288 960967016 984218769 999768697 747172514 806113098 223052200 428906900 414322848 676670331 660331488 769095300 2761953 316708895 719827768 753758543 445571053 678347872 36380878 635436152 133901594 431633335 357463541 521243256 198706885 964310212 901421374 937781480 347352774 873688747 939447587 999823120 722882192 750912883 293993051 804596408 345547609 489242794 325410042 534667461 346045941 643453638 675214756 739622315 837605500 842696201 238336230 712342244 669315568 882908402 671503447 964387264 20008069 762437877 877816913 914614975 869595207 926618274 502679716 597160682 629784123 768419179 897510206 922150814 881878124 967807468 666172223 698006548 483121341 498565058 565522592 692319366 498969720 584634281 454570115 546181947 36871540 207788457 42241426 723783236 688019327 786168469 855156295 916593037 309215551 780368364 213602722 680586110 32817929 645538133 51210876 135351845 26694657 36730252 475552425 686184371 615053056 881538306 529920663 638633965 128093910 859153344 527430792 879185414 910647475 996837902 632541609 664639732 442293461 538139285 483874343 966823879 462163730 815818292 344207915 345155439 895413625 899889787 227370626 533563394 308858295 545732154 754932660 915125861 673607789 859506271 432849015 936901046 698934164 894591120 225073483 911414587 223774914 908775503 964338721 991635220 27526917 241450354 292487039 421402431 825510713 854977631 337903303 999188923 631445273 749899954 866315675 933595901 322143250 491300141 403129747 432386072 769200558 904352151 103745695 355648254 535201682 824264539 208150688 786788177 568082124 711113284 950755736 983941645 631878470 964149047 687458700 997792717 221887025 293985239 369644252 750522646 829536185 914329503 974997782 979923022 493207395 958523804 203901997 512206517 524968086 827857948 119484407 180894600 489012901 927951201 282541061 438956283 644573610 871997774 520994058 679515601 935412505 977287287 912711831 930446318 68987302 811171600 169879426 416864956 17964343 870109908 463928646 700915798 911748447 969904646 909999450 946450824 351148407 589267458 748408129 963476565 946433390 983473723 548795450 789983627 984637020 992061317 783521685 921045646 158660057 587105350 277614340 742319968 58953303 347181499 200120760 790117762 18157426 591716774 149866472 223886441 335932737 989249809 43916197 490953698 370379342 635736513 769329227 987380199 757558158 897945233 844403058 852269842 877761235 981941592 392569834 651737361 974940189 982137950 456877224 878231651 392909179 441441174 773606080 968830878 172097409 510611781 341118989 862794436 488116040 952972946 411211401 523189372 48845971 907322595 647834538 691143409 913475702 926300340 546957568 757604091 237969226 340986639 536141108 854500961 497652027 682197593 451873453 491082395 397926273 676964132 815400515 942364571 492032305 913031698 383359241 616519987 202621591 711214760 513840160 900394167 244129989 809888531 782178575 837230365 350232604 371485523 194733424 506241914 26768299 692548239 293736291 575881282 51466941 998256811 83997664 370748777 86744637 383897337 384942744 915275267 910781603 924102093 612501047 951090140 451432810 812593841 399204816 736413925 251906015 721759674 113296952 346394808 651483913 813092614 58125796 681721172 921173137 927371817 151232448 874954449 820018347 918696658 322470985 514734812 122336080 646628668 76831882 131536729 50203450 574608264 951130740 979163041 902992394 937922655 921146001 971086245 423133131 549928665 942448757 959465043 753788909 814538155 112158643 329627621 228933609 588702370 951135828 977910466 394726213 975542890 844802497 915408516 394171894 694009375 779643489 790261814 325859820 591674725 620374092 781662456 346387166 890161750 166445075 443105368 797822098 854951229 300748402 616670003 686686689 817746015 584164531 723674994 431219535 590882128 129916513 990273962 612523184 853626787 930570532 957795958 350327701 849565882 731346635 774742386 359950016 526877734 907146340 943741709 756381221 769912569 976102840 985782728 163627829 929700762 485539640 543823520 745504604 774149875 17655103 944602926 705033313 998298941 839039541 925319675 986789072 996648977 747830052 892034102 59243387 583253877 135947578 953658671 958761996 968867569 830482871 978837450 948252846 994711879 382170754 835556660 440288244 500024354 400799582 853418243 214699729 799593523 555214269 768955395 88477982 367453250 641274759 708645103 707104249 981406924 954808266 964883069 894137283 947983607 872406488 898352817 448183599 688778241 473418167 635004217 410365085 775502711 183114848 408281435 245065913 684296952 911745484 985765771 438251157 727878294 633059857 647310951 261125030 755530025 130025718 927887102 368496218 979150381 879646676 907797075 804114886 897369404 755523719 885048819 704122535 766189158 676590412 771279256 697296520 759303101 609663257 987897481 267788367 574968247 399774080 621759315 9818240 527526826 984463966 994015387 377512563 619563501 217074306 250929286 946058568 969830081 257251498 736165446 80387548 836905069 304651107 368223977 72405302 849567986 333951528 336754801 834690324 874155788 960601635 975246983 827217394 832633478 994233198 995586260 791239574 871297652 768732528 950510581 468272844 984485173 913695369 958683003 798445331 840874213 796787157 801836207 513510351 521509830 431820227 520466438 35507773 426647694 955355523 974997943 802693483 842492952 152022231 195965502 414246872 653066900 987318205 995417844 844726074 858559776 756694913 758810385 633939715 749684626 255796697 617757846 563642942 652096876 222751275 267247575 407549173 860374576 129305142 720693921 467739683 475156325 997031531 997444937 995227162 998568008 902256451 919771880 356936438 761924634 148447399 975495861 889322805 918652813 311561495 509551151 834624881 911501003 221259637 627136643 460943701 775320085 530814123 825572450 583185835 817031924 516351495 650195361 658582382 686383615 720232349 931621435 799697922 825726178 411563904 590751601 894655668 917025522 52734597 869200609 167558456 366430733 527952480 705034508 898947148 926579045 562693578 565766423 879409885 963672222 306234542 914601597 963311381 979054289 994780798 995809582 254239376 464545527 133599161 980471166 203949055 806489967 982304982 992783013 909878956 932472696 489960927 938664343 998029759 998303605 661570670 742441208 491727200 761958339 552253261 945456963 122942244 501951221 942283487 956187967 48729343 144953173 609241006 850164787 925799579 950847946 893198510 951641539 982236066 991409403 142614080 485926414 683116210 932539697 605082390 908285790 101606551 948430329 630664093 780998335 187725277 547435354 763399287 820249067 331322230 964108012 647273088 904128702 823483252 939323804 115416774 757521929 494997058 958294503 104387036 894316369 262129654 281399230 183872653 247485688 560029265 935044606 225930093 769684743 69531946 827182506 252788052 942593348 537753033 918720196 562313490 807336425 872592301 950389869 837945597 935428141 536691101 907207693 339062408 971471506 251972697 882955589 549174928 564454778 707430684 820177260 576221969 658937936 405605778 605586754 376438351 665754620 624746920 865047071 38746125 828747426 812490855 906987054 423636775 925281224 680984546 919662989 711457899 912968215 329583783 910255661 592286939 727144186 991166415 993076321 144990373 213762142 269903238 411785064 465564940 829898059 409594774 831177246 80931136 203923273 283176150 842030914 527022924 650494275 867916317 877852935 735445205 957246271 48460535 303895124 48922704 323790777 81097164 107168050 51098466 350748361 190036570 678730178 257508986 652814719 827812852 841401538 214053763 506041193 461184187 727223834 896928565 969416201 117633777 206592037 986319681 993401502 15803834 728377129 412669081 653676088 505868775 928237240 594247814 900230950 634700493 833630228 805139507 831124259 630692593 948014315 91819843 667160141 549037416 579267704 912930292 952413872 736195529 943839330 815538216 957430780 1032627 777232488 730449515 871348311 269300083 874765067 409783470 877641256 75941808 987369289 343763059 466083130 170511753 434593475 689056595 995784870 818831529 963492764 980906339 983939715 283655121 768579202 104804112 756482579 614521931 712054570 340895746 359979141 752675008 993657108 997845968 998744709 448517187 893281644 453628696 956257982 626760809 642194119 318304801 401421844 565753071 865428198 932853793 967364040 808472188 863708647 378594002 777776149 494606933 783204686 195917500 888817003 160937641 177215326 858989868 992436052 895704623 908241411 414487645 585183017 607679205 630020030 557717854 859849619 327598314 332972716 134224781 145137812 211709553 393539193 323075812 937423509 128020296 625787806 630749960 962590630 431660331 927397306 880719488 953544495 860657711 892677995 501696503 706496436 22964630 630097940 517470127 544302104 776773090 873318529 835139701 979815725 190320704 814378108 187307829 993584039 13159314 107341642 225073264 682350193 858678006 917691382 673513840 840369845 617657813 619696798 481060797 699332622 526386448 530759486 253667899 401535085 411409930 977974881 174118321 954948875 430882143 540877944 523038188 747292974 250530066 388496040 961193126 996714138 946885060 968579207 732811510 847290730 417932129 783511913 417806990 981053728 680479350 780638337 362189646 820921051 545751005 915777620 724343988 833984955 901237471 922595333 851511969 943158760 544528960 547324811 976941598 982336724 248479190 566397599 264923314 835640894 602958101 804715593 407335610 877978578 544580020 801705388 559864260 560132544 866390415 917847669 631086927 973369151 33255540 769007307 896584753 927440385 150661037 311705696 214439004 368594714 637024348 957166147 92698185 730594158 998436431 998931462 315094370 837593569 211930218 430197754 693580220 984670798 448884245 553948766 109797177 897129069 109893985 330598502 61429137 776377546 491940429 542437380 85539973 96890510 642148967 808144796 450456942 481995342 584300818 874120193 533197296 587134471 303951838 334738446 985035574 995342335 301245289 819524282 912759762 921156192 976808076 989384174 20457052 310482343 873821045 875999533 12099063 149927095 918429683 996996284 23299418 330827514 537540419 867789570 261138169 713094698 287425000 623452248 709677625 889103154 99628125 298605781 45399454 519365160 72209499 388585048 277710271 986054850 89986762 311871580 653770342 800028040 193935667 678837169 70601415 211829217 217721930 488079745 550523253 967590407 374915805 957255180 40548543 594542098 941641167 991010564 877569409 904307791 391974599 718977563 216842667 698004996 266721555 705715829 574379778 941593491 319691914 541481896 158514457 886473728 831730275 971381597 771162275 803703660 481449888 951533628 95571025 697231462 867213158 902256674 618132903 930484012 970561388 994843772 447285583 581719350 926009778 950112724 256702751 783958475 387422404 459109398 390605696 977116219 644683923 672256080 550596003 561727127 576120182 691231072 643220278 852358911 832486920 949536181 471795053 560959134 440895243 806190879 746791311 900598136 301273392 457291840 342137895 615907377 404381314 448831611 120481976 817089334 580458303 740253206 591821861 798242745 478109261 642457145 635699730 671369541 197264532 503102371 448528388 693866686 718728567 834927935 190808900 560194791 498033723 523256726 152738516 622629220 797232026 925141569 563424517 815400747 252695976 356949879 579521783 588585071 488528639 905602256 449577969 547609958 205220074 285965581 855131349 896082090 362715293 513020435 526639647 825797174 985678196 994520532 948628443 983760102 595357483 957266160 215616642 225420285 184613015 605005323 859918164 952294957 304621852 383411960 219803982 718182217 939495604 958299264 284374280 938296424 177152606 927278175 59302148 998528196 55059473 169196374 204295363 476312041 784152788 903579420 836177911 962470326 266718449 363776290 385450981 974089697 616121897 950613676 630193986 662686605 456338461 670836344 659741869 955808407 506869631 870759804 89771303 959887812 390471932 607416906 354921241 619385690 280888788 608504189 535213750 608763163 295033321 299119288 907204845 949364995 950748814 952685068 328085391 534294994 911360075 983581399 520372789 981444058 489441085 609625425 430612002 698301899 211328373 369362822 137296669 320540402 56836285 898919744 464033744 989218391 30084784 112899955 734566148 775662083 969466441 990920550 18456332 907845997 330829830 735900396 639498579 712080185 165240367 360412897 764049981 876643207 260182934 975679730 584806473 933244783 398073065 828623698 468995153 719375377 956015697 976100029 482909646 975376948 105774888 547336794 739168328 762279684 14037065 96193456 902038217 937685165 251224450 394856208 190705419 746692379 392295038 619350031 500170832 530111862 920191906 936069103 779673938 923495095 778301992 843552354 278699400 870394696 64633422 382572778 102863281 231900484 894632538 896038406 505119725 784570482 486341162 733734697 129599388 573088152 955308994 990400119 721407252 876763551 723483848 852692795 52821508 588152295 561550686 909226967 357107459 834784709 473712338 807479940 215877605 381228031 40300567 736144147 252785131 700658639 469414295 625420229 354048347 874451889 916124029 920855619 75648296 485582315 880106576 929008134 254047340 400288580 722517134 801875926 399536324 618212662 839877742 886504349 831419420 871032666 898668648 940449354 862117925 865039866 236736419 521470169 129430685 696926477 587791902 786874160 509598405 840517029 988183884 999739581 705986433 822176583 63314093 543003685 737882451 999408579 117035652 189095282 239138040 734069808 237287221 586954969 749878720 791316456 521831553 720635520 413118366 696429147 877055738 932092086 222877217 360075421 460362254 751022500 25963196 675387125 692464306 876912638 372398014 606462055 403457965 499998125 268980329 526984169 350255805 988721074 702062801 827585428 608490400 788880069 229079091 845416112 790934915 931336620 260255063 762691151 763365296 841763801 446836237 699328539 58998256 346913485 734622172 952562569 830960122 968007944 290520933 545300367 613649725 740040027 652327313 895472712 940742841 992436220 453759614 627333699 777593682 815231030 854080410 947525320 981624417 990828974 445615280 994718037 381074939 971880030 977591827 987190871 350370047 530477887 877363732 899843323 647292351 992989620 334892287 717158025 381279297 573942920 468956284 549884259 322718086 921613452 904181465 968794601 744582467 827846192 635026979 776496014 38652544 561911734 495439214 639893335 313943016 615014124 435259537 809446274 229593574 503339582 957984792 969978579 326614702 874847422 499824762 588145424 849084275 995210762 334634736 395675924 713613749 950301856 754614368 763345903 46485410 605465317 778389866 832739785 561897186 598427001 282809519 315719087 946933340 993688274 80762947 735645906 188561567 441321975 628293731 739564176 210502956 307781254 34240177 377680112 686139021 854667919 425171263 477912913 953103605 957262025 426909515 711595497 782166472 805875310 935931437 939880220 234407706 514636414 674627686 996777015 363090937 612632790 539754995 935276335 398938134 831602829 812329938 885530502 744326607 912979245 942770630 989869198 109280553 895440067 655434627 797568259 50887491 689814530 89401529 202794378 213413381 543697443 121608318 321247065 55009819 914274989 605997363 638708506 243023584 751574903 726468463 798129451 713773621 743572040 707570926 928357312 878449094 886675702 542221278 775381960 341069437 829568057 170243040 326069780 964641261 999756218 757505230 831311332 353871958 573966711 335375650 664681501 299526113 307230540 261707004 501952746 122423568 916172864 592528105 806236952 606020295 983233348 469307788 624058281 230701406 766108453 903163377 960239086 197534387 897942384 47604736 254409554 240044449 516275060 238873934 797020130 908973250 988106364 355619172 873111561 540848253 720897851 51875428 361183560 873207724 901139383 990346208 990695532 650433190 902625348 398730527 795946859 10114416 143021676 184633553 942916421 322248706 402853466 115496665 329789378 961253424 985342565 62852460 295930845 942558039 962370075 222218622 875735179 942738494 977108316 620246374 867114579 778130667 993999379 127352868 982160291 642218128 926443843 919216352 962489604 433423257 542654095 295352669 520993192 551310594 844352721 795213900 849882680 643407756 895228421 849457308 984050914 645311902 738169045 58214978 499087815 579831870 954619294 739728747 932115049 40666682 867266976 912161815 965292870 838362327 891525825 327696430 490655652 1938104 613312139 193595056 804438093 256590141 309994670 713461543 923732256 310395900 491203884 285264023 643300333 866109868 897191574 320498098 921360802 631839438 892074278 972602375 994857161 604943524 691417245 44161355 401959271 916608576 962192193 693550495 894083571 594819318 742668150 748943722 897360101 218787871 668427826 132565141 377542561 574796277 987832603 480334826 659937813 284575026 902156008 820417100 937315934 765747125 999587340 696962128 791533262 280766187 650802868 134326080 410461489 927976321 994267741 466697355 660711557 568293463 581878553 718277251 758734089 817014592 985344903 432868603 594241011 829441856 854743975 557875673 941011931 891399306 948751544 640772618 885633463 93576994 991019734 731409384 904815840 752950095 856365927 123421533 554577740 430454620 982386879 416697872 998335998 864577236 941228298 735109136 994378297 374931110 390870854 642440631 817956541 785017614 905315725 418765781 966558224 449878824 708356897 661486086 995598745 857841392 971562405 309303727 742495032 160722294 624081109 670362851 866714891 316721909 758766307 260365711 703220915 84462780 602332717 759592625 763921072 225875713 697262157 714799931 819151994 245455563 870520233 485180136 506681545 371775101 852679963 800356979 830440227 249205450 469333221 610664372 943545941 691280087 732112065 452924697 495566172 94491295 588943866 8398767 111467164 971378477 990409685 659469253 838971593 943986073 986347677 556790629 777035412 214020524 730689218 208070207 304607695 499875186 563903905 925096814 994636285 522765222 631846330 622268356 712545146 360729956 529505470 895401347 961963925 262911748 303177546 182149915 344929139 446246240 888128617 163736358 987800321 649166473 691372064 776671744 855202654 148227157 492368426 296681520 634152811 751531081 760827220 467490753 812859264 671401213 920114046 871014429 905346679 1775389 687067353 400777334 472488126 782962569 969712252 486546936 697567087 490199621 807957497 578107116 914938896 531049157 732955686 307748132 640120415 625275041 783280002 243328315 296485524 622519131 735814410 133893643 239616676 830834954 892260045 265780425 440107484 912077029 927855724 201660351 824854337 648223393 692004627 693413953 844872024 165890409 821099067 875652338 941405476 280716376 389179765 306886025 721559601 39812318 370682079 45877877 159411125 346112270 979912365 837004578 939425356 422008196 667876601 744892174 956310909 90459196 564774270 659116501 771282023 522496277 780297381 250883014 416907456 303578906 458334542 173901855 620980857 534383874 660086231 491471647 898556830 179142747 731874816 369594563 691367260 46622440 455455064 758508436 906855013 843594839 957159392 339700126 506989287 725545615 954888646 667733596 964877006 946657256 989152837 979755429 997444754 520510942 809820981 136297594 684748896 210310424 885346402 147561273 216892605 691880740 708451045 117537457 360839934 981921147 999031720 654480772 668200846 985614707 995877559 126535337 871668926 888785256 904694616 792609767 854373264 871335753 967926081 589221544 828215876 929629636 988301173 280848086 852972586 685846259 691657732 11231545 344791310 165445098 742886974 23530933 943940679 820202359 935619602 618908756 908777327 728957868 732423170 240159492 996603543 130825721 308536471 730398011 988093934 113640761 277508905 369590033 869037775 561929153 767014780 51966565 745978540 845688645 887821621 194300949 805520572 708282663 875712787 904759004 961494043 690362942 939720313 560985518 585247179 906344589 971292846 188031707 622307327 336539313 809535832 266959434 427113750 908156504 936783065 709608487 786766157 961426910 971145825 798285896 820664858 804417592 899806603 572775056 580170391 103593744 181863649 635181634 648868725 993426650 999267621 170543881 761263951 80006941 255686273 509847722 982215949 295710874 477777696 843444207 852433368 396554301 865130941 242886942 948176022 667066352 772447781 857950671 895347053 913472278 993539363 901317293 917950331 398656086 697976001 758166161 930668473 427103292 733966161 313301181 748740233 671124514 755866588 826747494 909288280 927223939 953620224 698380264 775823399 920770349 923047363 827800408 850118043 977118978 997348285 882990888 898277999 626402083 948453039 777833617 872000222 903772242 982633914 489165170 811855023 272940119 878527635 888720348 955438137 690431174 997444938 939197750 958136735 645025747 828229718 972641364 997876656 756385472 994654906 759586197 873208028 569538282 763641422 377013455 949980042 241126203 746850270 740127940 779087770 494717824 939002987 84383527 278096893 619751322 650403041 263913328 507764847 495289772 620185524 726518613 963835055 598952037 861316665 191067433 847377859 115486508 948960998 216252387 236514590 15303679 801084767 105031288 640840184 985389507 985957573 363409508 697379844 896316626 986589913 54425617 206796929 721691618 907695960 527946341 712997238 578834198 754969454 232566035 267570670 968660609 980437554 178793948 831873127 901394043 956026929 391267728 427981546 320771723 861113965 66631899 823586757 362134043 710845416 588451113 644585952 287187614 906400358 738838554 981847021 271039900 500891470 773231901 777541146 604068648 907948777 525907593 699973554 123820239 169022550 917090893 917916579 567832872 955466067 898891724 945894137 421771880 747584284 979266035 990409651 384444476 800569051 780781289 885535616 174802265 356041738 895199384 994499604 624006967 957608103 259903427 808868895 276706190 680214938 232569531 323559663 115822104 940767876 530053382 918586463 535756961 790194897 234770423 363216144 842856213 981533719 616505943 623205573 251353185 320812874 325395351 753879439 235857868 504354119 62001582 303869094 406050516 970886916 98286914 622189277 780853662 780894729 206703910 656526884 478009557 925189735 171548387 640019619 977987738 995318587 314370641 408034025 271536735 588715563 957551812 991498867 148865917 289645602 110774198 430236875 650534338 748792691 151924137 426683583 151359855 920892936 626914534 748656719 535947245 947460793 36588605 307067096 352862816 897560453 470323448 607724759 268172375 597462251 587084650 922647039 183658336 659395662 707528303 793336606 118818639 194278060 796588449 943941308 881582946 955345141 864279065 971317262 360437496 572285971 337140239 964233161 27347992 358822130 713555323 929034883 931019579 969716169 337421921 670782942 416689555 574763086 61767725 563226446 557883792 584492395 312477723 755797318 374598654 975397164 809875108 843933051 627648447 671535889 865765695 986061510 107599405 397087328 125556030 831519919 231487796 436065398 145048440 890526426 930621658 994641407 992951379 995521161 25783312 402162977 690313286 885880464 684042945 685471626 799604927 925268835 904082173 943043398 982614808 999563138 280391897 550543262 141054574 982886040 293172014 294129486 773596004 954364437 293111222 948616838 571129943 610587827 671963733 687500604 707436164 898863620 791965468 952115589 139032590 633586171 621040049 847602428 980799901 986462590 874055755 959952505 816286668 887843507 785540776 838149702 203651140 445345331 439406580 607354240 498248379 743427156 654712349 878559474 91018366 505820228 446287186 932677493 513557485 972225784 584840324 971856153 429095156 539192867 676164772 926924651 270660486 304459103 249252708 937742311 808222491 998684129 125515378 742196775 959738844 981426719 511841342 824851728 268719858 608998675 391928352 909989673 658503308 806746109 684732549 989925776 2774362 150436439 502620004 872868337 954596922 991862406 405768685 483795777 552014762 835795947 182753551 345665397 956355579 964930747 494074343 752297049 276071163 668929468 606525159 971012405 960989586 971074706 36974851 276626283 785176829 793624590 906095650 932913153 455766583 637824547 115258614 691574016 221170688 486793496 658336526 683829693 442543512 833639347 370851724 565686763 945104155 955682688 924473710 974217859 723916413 873046106 445282665 757689791 312128161 422846050 694567880 936992270 845983424 909400099 240065816 608593266 897008048 905571990 437344205 499122984 794655953 796844801 826330015 836024917 828564484 964473037 665744637 695936171 138760045 150328458 610098166 964303496 527747336 948618142 201612616 743665438 991676848 994019929 166665743 768939156 273642121 900618823 412430141 437673505 191036422 633457367 598079399 853610941 734275493 869591595 333696882 936275988 929822338 931294732 349438716 914599581 861803775 931482985 264659213 750920169 296348243 568845482 334575224 931411368 511800173 612334795 355278054 973535403 192939521 772977694 265325193 381890463 127486472 461412862 329661252 810220218 43172551 388453556 45682261 192502219 553212731 973522142 561006682 610429694 863954930 891187412 419727636 597864372 855252578 906669014 912056215 918578746 577777717 603355047 186632695 872862423 259334061 268297052 104164433 760525774 174873524 992305975 847064298 962962648 557614800 989936723 381040692 608501362 944751809 948644405 593318139 952892509 570511877 605078114 958632168 969442258 927774838 983897962 500113264 713088152 592936321 679931834 819746950 989922628 256970688 582997757 677675712 974669937 479743441 877388965 534320175 869075306 218330898 995489549 911607095 912290644 236443141 348023007 200163620 872521047 574983480 756441304 841028016 890865698 980989987 995907596 851628486 896069434 9832087 886104955 876510604 914543025 796990234 900789224 587793025 989261151 145144838 837811768 164058086 507949623 554558068 928739003 364696005 422886597 344535620 893289621 181204162 365615346 217925441 227564560 491883433 803011458 704443590 854414790 544761123 752583038 986736598 996952627 898887880 913704953 658363148 836080177 953871184 964708476 451941471 562804603 105072239 681872685 318064066 602212471 52011451 411337347 846289035 871042337 305185376 793312603 874947829 917861579 350127472 453581646 15854788 144455981 79844777 861077496 724403392 994972718 972445282 972888021 497418214 913656236 881592486 910071057 491489357 823055902 639879488 876362127 200183931 589625285 113490173 129901893 361184948 999457733 949205671 993215807 287777381 898221238 449173336 696104904 70603946 431891040 726658846 868979721 833010231 896245086 50261224 75415763 323284800 716135209 215490352 661762170 431561947 469286171 769434225 853467242 771244782 991810386 778963822 899023386 535585297 909171768 287014463 546050247 231744042 702673033 857164446 870651342 669846243 904752680 931245184 970202187 740518661 770600814 712727747 822289420 212812860 306125447 664298972 829451895 536671646 642761387 60314337 473543985 803695295 857359616 417022536 584431937 28411875 601853930 329746817 574134863 451677805 451776542 875025038 966398346 441475380 609117124 357250111 832061349 468242149 810793408 890477393 960941529 418377974 593763123 311703792 732698915 999244651 999878271 5334470 401666809 695461429 696111901 187816717 332142317 234151998 808732080 986836905 996684112 800701029 890150516 368534627 376186466 343011424 557473196 432602031 722570487 791039723 829779630 996460822 997709659 51899395 968772048 871767333 878945331 304232454 748521182 859717743 912695176 387075802 620786458 460682942 695432747 757133934 765692697 676968427 707865101 73093252 847369327 227740891 677976611 563129984 585845944 972914336 991961099 220807757 496699525 954001919 960019365 791738492 963819850 468215830 596646788 110308778 365237106 783766667 794847633 230624568 441316497 967243248 983079044 306492251 607260182 152635626 341114847 829662539 952324969 334997839 736745256 193340705 750145753 431448109 435253032 825026063 880857379 412170161 585214916 861136532 949289924 948552474 968115872 148647645 971187396 151623531 217147810 155385740 202129832 438335779 710846694 187091116 222306339 874280922 887850610 539803375 861451239 763060947 866005213 73905715 573522200 268285408 695564656 450777290 472296309 856798047 987830607 220997141 702060057 149533425 370239430 400616207 942985154 815051366 868587216 240969900 566407901 841051227 845557200 468513512 568461025 448362854 542356058 788030231 879990522 427329627 784809772 96479489 927069581 730386351 814636215 605207413 687709597 514300716 786892355 593203377 814245585 603476151 855603928 986019746 988526364 579839761 625845696 545325752 979851186 705635513 920118507 148226297 675693578 463665198 923109046 416166367 491890206 995200305 995849133 996354978 997878660 734394317 823510740 263163414 535792565 625775744 772670955 453860385 532653139 721446715 999633948 970514260 979159952 979756676 984150511 175540631 870069196 821353935 968770348 738817935 934769641 919202491 999782299 887389888 953121632 655587416 727948575 312355122 523694455 693256956 913149412 979037335 992832320 761414038 913336803 625175426 861746285 625868401 815315336 807765540 860431247 402701072 833620816 531662980 855991657 277479214 872353301 993449587 997673435 282797282 512073801 228834821 543835365 411071578 801963580 564399659 751100029 207417987 863264859 706671003 730994072 681797762 810436358 426544338 430214205 939785534 944605930 760931216 898461215 580764115 599428240 169520615 501822754 708868408 955328927 830660043 868403739 758930296 897007109 812521753 926409166 7065063 536277693 269515979 373989876 469221170 701793332 628934258 704206419 659332699 874449672 478355275 505374191 74464858 487145784 718954191 836321073 603150621 824049699 979959795 982360203 356205661 494079424 22083046 28522917 110650852 204433807 932254370 972082038 565642474 839081283 428988045 488317955 321406565 651178702 113740356 548123130 319746485 421824001 555799444 642411948 966113193 967362087 230800710 764053909 547363477 680644369 401900153 570048683 318106744 936549558 867924307 962062685 210593426 787327910 996245182 998439774 681099381 896884596 898420881 924449448 499732901 866008631 507292292 612158225 660917298 938184872 404351983 918321105 427123670 505895661 899823509 978436955 961468181 984581434 885788656 891492067 968613034 984415272 655778671 679251177 116198099 473479399 286999341 388905089 573541398 976510157 745765887 864409903 138094357 190281539 474899372 721571869 677235232 982956185 162813283 715565176 624915315 772092342 175730251 964429925 736954284 914242023 819335005 963869648 539513362 783236815 388280669 551236307 730895311 897402838 94703826 103969630 578139606 692895682 609559200 890824119 195601896 718907406 745485043 822585323 45404931 210439392 486501305 635508693 897966476 987785179 441700388 581570810 693679854 985953999 132296653 669368651 497312531 930660624 325697022 435216706 993342247 994236647 992627934 997408622 671409856 948883554 692482651 776822976 859683472 903512026 101912974 428591992 742630329 795036683 302419614 841912229 483170465 974686348 1063855 991094759 264715044 722195200 28360236 161619039 102530509 611437919 296294959 667150624 941464458 969393142 159550455 238309084 305235753 951843839 52627768 321111569 950424297 975288164 542555772 956514928 219869030 466830396 466300722 710855530 169635893 387335226 127946876 603595304 1775622 309238970 928317955 932593305 672387668 691512753 962032772 989049701 705179918 812009752 807593482 827722898 560555477 778300333 705041656 824070560 653306322 754520089 364135946 767031347 710328939 861484759 291143844 996475986 591508535 695105702 244097030 649453476 80766623 201543772 213406007 837628294 320444774 603257416 983255955 987660384 613513355 910928592 705218006 878349517 964925949 968269831 475829437 894341703 33508175 62325140 426507002 882131119 198732939 993446745 159907872 298618237 497152899 930007065 149834154 809329257 949125726 949604855 972846791 989396559 993235228 998003364 945281462 994078814 803963311 933277633 815766295 951601818 516236044 775815566 876409160 990120815 305303911 528742253 752389519 858233659 926077591 988206185 162064033 475790692 884923110 941288525 215537538 368998844 750086442 766088609 763343519 818067449 850077738 922812892 471115638 729445977 920827339 939439585 463701602 837210434 685357958 704343409 488144259 627724101 354114835 533051430 713184553 861460621 537174403 680517574 883323579 924268162 251842851 346946893 818213651 854278025 610393075 986771322 926046512 940644472 433771893 779019858 335736975 910488866 310909953 737825897 858117294 961267509 382648235 920407979 164194727 164519645 406033276 458757943 583655916 888327420 689173495 793455395 352658020 404009300 108625003 980391614 237907271 650380824 486657483 614313421 637036466 695480483 180483580 625904697 287619057 302697831 157070777 563223583 420538425 962802895 112224869 420832456 248544177 922693906 629402074 670359575 505506566 972728144 796136395 961318773 161768767 498309457 555880888 752826353 740322394 795694358 619431269 690480631 18284968 410947376 74876925 467474393 712958409 763128762 504343447 650207036 710858736 794611561 313982165 747446980 467592331 847670546 763007853 832643388 448693704 535850581 385043262 567817882 859368601 997333488 372531462 971363526 925596148 930552563 79088773 365258254 253035968 297284995 278899628 988373302 312157646 852516548 656143229 978754003 264779600 463705799 369547313 659812634 917861572 948325509 966122558 985761097 461254830 726121230 142098402 439152813 370895450 737153497 105626496 689940092 263464762 376071723 533179322 866979258 638801912 800286253 603064931 839946899 694333841 745413140 318671112 894502143 712662113 940549354 44658093 503315680 660147503 770460126 436694214 771383536 589094196 638547936 572213858 654165590 757626256 930405140 907643240 999412341 203872538 479935093 264021200 800006348 72235096 935226878 890218102 971246454 621850755 776289883 100632082 932353053 571578950 996009055 669536510 701523545 427529177 861585781 170142384 297393971 504640941 696745166 86999496 430500982 85270288 629950151 983813914 992762687 17754729 90614586 625857916 901348131 741758833 820949707 93891454 912456914 361304 64388591 769303189 858382733 669858264 994806967 391767148 468463655 605242294 776401983 932008138 981316183 354446966 412611179 2093452 62887825 244549156 569222633 578669010 878943242 448759536 751221950 615348022 936743486 494131811 578485762 503955395 733946056 798359139 836262487 243679330 535280182 38639739 899794169 937804409 948646551 895828763 976091153 945744287 956758023 722965148 931914834 768744803 784955396 650420306 706874031 795528332 992670020 620191661 767235717 241284874 285015861 577935822 755581294 226541807 965223829 561808236 766084987 331136192 598557145 132609913 643079150 484127666 893820170 805506219 812318839 692407947 746993802 778517121 927425368 510901261 587871509 554800512 947825717 529996790 905902749 27738902 927998901 277785371 501394663 26483810 564634847 220699426 392157896 708420960 973274719 601337388 989192733 48876207 152083441 739075608 880253991 88288046 700053366 788057636 914438742 268666711 840299600 977594293 985222171 781180376 806407565 587461093 890616897 918181621 930975886 113486259 277043459 426722064 593593350 530797852 952804344 604441233 676083053 868623282 879869700 419780285 838882841 384246120 702163156 396764993 429233497 61096660 408643651 257472028 679732027 674121269 937438272 780733987 818143025 35787399 631964609 908198380 944310792 648129871 950156900 402409264 561715456 538399586 900975649 253989212 465178698 433923873 655505233 920617689 921974858 810241111 948677399 682946549 794777692 993782352 999098659 768373689 811016562 388479598 847361625 4507842 307043533 834383896 999553322 53738362 78044632 466423107 809395222 35025646 338315734 74466514 940311741 482894753 492489378 416580065 707902317 784138373 969769320 908625732 921105884 845128963 867210568 543192982 662562142 175264863 305977808 920630437 993863318 985672486 995481505 87507928 860344696 465506467 568083360 634396553 922810216 284946911 684045509 823793722 866105994 776188493 946046445 350165794 423379859 757211799 858908527 363058533 833913610 525779967 719627548 883145625 940057141 788690973 853483104 21438628 551612666 806219706 870810765 267660768 915725987 553422805 904142298 425514625 647366438 585274601 727608858 67948927 533581877 683214579 685492528 307239149 803750776 222971358 592286502 917859360 984922338 344686191 533848369 585607238 662861598 71217481 378454683 806968172 839920110 224680548 537606001 712972653 950287072 80971066 613111959 525380285 614715177 287795324 719881108 729868930 759897941 891885621 947269641 97567254 967256176 579494945 652423661 767366039 839060133 927754456 980282355 822141437 935595833 315637101 466240792 849949168 915752650 743913521 837896526 480366418 540369717 468992563 732566725 786461099 937700927 816512619 963650453 555004459 749699955 953731612 998070619 144744927 715022937 97586017 602431662 950794108 961809790 228498873 625464405 859251812 861070158 72082922 169173859 936025360 995726902 866921487 961306728 258420829 304776999 139827094 236996738 220813669 947673191 660874044 919277758 965196190 997983814 132514057 657245044 95537374 462903043 266161886 390035030 491089976 620441319 823326810 864045656 850818944 932807614 162585965 947965722 611888085 700475127 7395589 327234734 974950965 996128142 803999852 924317422 341632976 398653690 725017746 951861425 451067332 935610353 248557859 789501568 461450783 626043524 988095748 997610174 952003216 963561447 32303725 650369207 90101135 400426840 214310304 287380650 590077379 665268599 859472754 884333797 156125863 743373671 59486810 372770026 746328958 799448330 513233283 823978885 147104534 592214773 978758764 996104119 243028190 528456017 560180955 998074023 578730312 717871367 342107910 645320718 936077567 939545284 37195279 606296695 444135102 620185725 157101862 397849330 668055148 745734207 68449058 249418073 799922140 828002548 336846163 890889060 685258211 695586683 897332696 921086303 84683595 518252109 714183429 964584250 67127200 158449795 927725207 995143835 348709559 850151167 456044319 635024153 842026660 939085600 624291931 729731864 262552991 550443724 768560635 788793093 38902159 134776999 149031647 424343856 886832366 887195576 206055901 662487629 12441672 645932559 394474559 976924480 436042967 574976236 359380064 632576660 166143283 251350658 227108147 472864098 660471986 861812373 65850136 575072688 536275100 849865101 254008489 779308275 556395575 686948125 660963058 800362476 931877710 972422962 264174129 835247993 466894197 476436770 79263298 324987732 470687470 848941711 876138048 903651108 736930844 869178682 96076645 669121261 401374530 890664051 561044992 708660959 998870432 999421843 868724234 961463175 689680832 790496265 766996369 964784159 230846143 479464061 135192311 175549517 14293896 37046623 762015522 895197501 989630050 991514550 265127656 454776357 803774048 808601609 144314793 198996362 977572901 987587573 326004482 344008800 50373985 862960134 270508971 992962424 758185320 921604530 732292791 820256811 744063951 782515850 373963879 644143301 732192845 973510940 508062056 560357144 642202194 980817609 483801845 705598220 885181924 894717771 409600403 899260467 244939072 977817402 554621222 883272212 31267136 673878391 46607427 866191655 665833645 917392826 866504768 922441140 30828196 375204195 314009582 905110416 975148882 979816046 45316717 744012078 837553822 845426840 876165787 943132855 65559406 102228426 371282141 443990153 5864921 109891526 344757911 389386716 762733585 998760601 810114000 908981958 795079320 914817150 39556173 597273287 19473055 219661075 378471116 613727144 433059275 652316369 480301643 807214189 442558183 780902925 189115535 977850106 919048910 936456508 896636779 969151806 504293862 753745625 637905365 812998252 768170055 780777826 558690782 854471773 128200612 707746425 557950182 728349566 879769323 922122224 585882883 671406558 868037214 981384083 594825571 666874921 747052045 949209105 517306443 676814126 121036670 853232117 496934178 700348894 440558302 461486339 496000671 897283775 656269806 865523319 826461388 879622438 606063113 732846454 202759230 911082382 477729224 642144768 193829436 825542591 440950563 845760834 812469517 814465107 942226023 982071715 935352087 993592844 399329575 610030319 173033890 704067612 826078109 949235129 967758628 975488061 85941561 957913090 656216156 923784553 487708047 818836097 216475269 556080252 518036729 573481461 460123307 516315150 853628146 896583295 994839103 998622580 323406117 962900353 114958310 958166098 18215906 874519477 516254192 865996635 80216488 675378243 491463033 988964861 906949938 949092229 987116296 996424489 831870486 977255158 958321884 972529230 440848789 588024816 953394442 999098164 814389007 939231354 491188536 700567682 146136110 293201735 86893789 703181421 2985695 190652551 775870670 916553079 608554333 673992575 657448701 884542349 234824650 957294732 948166302 988428280 133310381 967944140 90771875 509584858 536243380 702765594 504899998 524273353 209582061 675954896 311732862 939968598 520580016 826831906 277700472 977173737 368487992 376109580 32857278 988296466 728984855 941143115 458556178 965676112 737338026 743373770 211204389 762722575 798629721 952357329 242272348 970041151 771686654 996213014 466331063 548179071 537742095 916570945 899717938 996344772 92465421 192710419 304436680 923848453 940933064 964691017 283051296 566252410 769519279 943434938 628538420 783751046 209585104 879170959 595258905 800677945 949621996 989443202 207358267 724930458 261625535 723758442 744498476 868965557 707680221 715932659 921630853 989575376 518094120 584710196 433949797 521428927 890520843 944958147 365269801 919240946 848580564 950225865 783260702 943557781 350451300 424701301 983938932 991056068 547828686 875409942 295118663 637436799 750358384 764121473 299206231 466612325 103130964 829435475 398280712 703975318 788402629 791951096 745923028 971131633 608132415 880663275 770832128 988592398 673987073 815119766 802765811 829369435 95521578 524745676 620374258 994889711 340336800 569352269 574615267 956297641 867158313 956830988 344824952 997627614 263843929 877359668 638587869 853905687 82088220 595918686 930158584 957344906 726499686 845927704 348949371 558691606 308783979 836366831 51523404 928040211 243463204 999367803 966954390 989707707 3668041 836583064 839944252 952022339 374932548 960245972 411455033 816454761 400915864 888946281 701315897 716143064 133837798 610878256 21788528 210318754 115549891 267936469 645361525 796740704 844907648 923206795 370789116 652627980 702889844 705364922 308503038 415675437 884175915 992420343 88054450 130531777 894006283 989110766 980541231 983692830 71628234 253993200 991952412 996744219 729549568 928707482 681156677 834302699 66286912 501049138 75549740 310861625 455608857 839595320 36074943 120126237 163817188 296423436 289354342 656539329 571668392 868070708 470997961 510396235 156477805 960532797 306700753 526685711 469330916 942365556 25473154 29220618 632245225 905350750 270784344 667620512 842157224 968513477 86727165 488752289 567984935 702242761 84999936 802324167 368667920 949858427 938387357 988675024 801266652 858136236 313970791 951450552 217565288 907421468 100263049 416593915 366708392 794167055 322158382 687501463 532393098 725836408 556151887 836892689 508175794 573806557 553099350 568023005 828870329 946921607 164332962 627133268 794252780 984352059 153184339 277312823 835910006 924689203 25628322 677981431 730331356 796775998 446904500 758716979 168983758 404233260 715253147 832783617 964627965 996941432 707149514 776151376 301205796 441574573 975735795 995534497 792161587 794164324 721674728 930377912 928620977 960781093 161409741 652178662 431319289 565896246 72853989 781430972 215598870 656619568 92239056 670172168 54045473 431475439 986799582 990243033 476240521 950194089 726205571 940471483 557233931 947338596 32701663 953716835 274378519 392582284 700217217 790544889 743001629 745568361 104004055 955344741 114100737 818253140 523944465 811089485 237707755 426783359 833068312 853599801 853954595 996967751 142618830 305892533 531424377 728997349 583403344 675531161 174059395 509364422 370783789 382152168 662753920 828548641 535223335 967346280 155439598 717499319 462391137 653764375 826458191 997853766 256446252 283046053 903797563 999446712 823439722 879537883 855526315 871176342 749309084 945613132 980742476 987846834 838435775 925699139 231625000 490182858 659472858 932056528 676284064 714995676 400170221 439041123 235559072 651150524 225593582 450522098 629387566 917358046 925368712 988194081 643281391 655681138 488866100 720002851 382598481 486404438 972170506 989125749 239945079 253499430 441960318 710441728 64890237 813126356 143292694 152129794 638185580 690382164 23858497 888354663 383709439 683497820 684409217 757274219 271081247 895318898 85925503 226868858 306182914 475427313 822263882 838899869 287964100 951220735 726130651 751351968 275792863 362545908 722957429 914151242 181061489 634234672 387197055 865971752 251841766 818591176 968989890 986765956 812928373 860199824 876537081 929389752 920127768 979500233 800591158 991916890 445505555 893340943 338253097 489013336 178641431 187804611 510205752 731143693 123796965 949961657 158347824 172784949 426126093 950164002 735141389 889283620 259432980 414316336 394626748 786701372 599034180 772595897 94903684 373198713 797687885 997379291 892301735 978081894 823934759 940989717 233976254 409274351 739944057 778250295 614971724 937233293 179922766 626479980 991961891 997808995 419079454 662787814 311435884 468842127 153111671 854456450 205832227 860148015 992917101 996031660 264770392 661391699 890411439 930297158 770726455 813674431 706196395 831413045 485478649 888924507 745657237 978368477 323461421 609160581 744622409 881311917 554365333 566105904 559490071 874728882 342336130 854464594 557033777 616777939 460512226 471810658 842572650 851589594 630248845 662918124 511035487 987572861 203890082 625726536 469861767 893076823 118350279 532639887 688838427 700561248 975578084 994364436 198657229 863512316 534995008 712585396 733868324 883662439 190916111 566209353 142226894 977694016 214710811 813054305 391582582 847534179 528155004 799401233 261327112 338755775 750779527 796867333 893873564 981304451 825799571 942093386 570091622 656847831 455206525 987666667 464896231 492665628 237739455 859555087 230381318 298436859 544914560 631527744 203358115 761340051 449968662 537561379 774634432 958792800 584107241 647452226 357436167 722804096 495235819 936780034 609751034 634431439 775034922 979352554 420166621 629306962 245875628 771844346 574327972 847083766 722434101 904421800 927079209 943847457 813698305 817363038 551176473 758876891 585437628 656391352 269189250 522811329 133854193 215164720 30233880 861151673 96329552 941550782 577880902 642881039 615456094 904070724 336208764 833145159 778389850 809227740 912465850 951825073 230686489 756122863 633316717 684819658 422542730 462824784 224731765 968203809 436281758 609170782 180034360 442219595 120882073 178337497 912140539 993033685 266808198 404532813 663052300 663328670 627245354 695337076 674278006 755638594 561668349 709035408 711909059 820027502 552756669 898028983 871422453 981390675 934023586 975032429 894158091 986061430 461695974 651086637 125457612 778779931 960337627 996615440 938119065 989698116 913680455 936877962 977406752 985935538 867947508 981013886 763342060 892997718 787275175 913217976 829206092 919463167 235467086 306069710 932618737 975902532 127715030 911665314 965735663 972925217 88803435 415394799 690491531 978077433 177423823 416103400 474296648 894991939 975707066 987213301 891940846 991521883 137137351 263802216 396059192 980610024 629256109 678635205 929932761 959453726 802077990 884533086 295317826 986177300 1329805 556382020 297790496 570069288 311298678 854116724 895377599 901533206 451986072 562789188 540758006 936372227 635025768 883995127 456981999 863808028 238564241 858557941 285561123 994797295 947338991 998618015 892208916 903387332 103354662 840028238 856953708 900189658 765943244 806984155 632164745 907436768 809095328 844808167 479014285 504393638 493025885 733559719 826388264 875665764 536599232 765833500 535825142 563689711 413564770 693164952 94440917 419635145 211888977 912077897 294825665 846276146 999696222 999823577 629130122 870925080 82766475 531749729 563291338 626441213 525224591 997188732 743906010 793529469 237512540 430598359 950707394 969467642 175426253 970059583 776775289 818095033 206076515 904761049 194436622 621066388 914352793 954641812 840016394 882055079 106610622 528223892 64510429 890958096 840288333 963475225 854868888 941217836 116792683 357855346 836572129 997535710 145086158 629091853 695097849 911403306 426073286 913236523 751330292 821689211 591085699 616279555 741240643 798949757 528855624 775896237 258417436 338548276 105624521 815785912 206132358 723677416 598144748 613356182 653773152 757584751 137979175 609500890 101028183 324271374 56821219 883034417 858339735 882959792 843955659 934576892 563434723 745760046 577881751 845406818 453231440 708757813 251307155 381575630 745891951 817224373 858457510 946769783 42649250 236314186 319335138 967593968 699070286 904189327 352411108 666848886 335449970 613787094 535200371 838857513 405306369 716566477 236572050 689723088 915792208 980018475 56287644 200004111 285228850 688395471 175536321 325181595 90959971 414183915 359952636 423496942 172670176 619976441 8394194 112265223 784253363 878666130 237679159 269257016 543600905 667740710 236147380 415884131 260010097 513975917 952560358 984025742 627879720 702189106 732988646 901984861 914861314 984188754 997738710 997784808 126270035 718838285 561424622 850111114 89954481 610625287 953574786 999959342 908599602 912446505 807133500 840491111 788797390 949256503 46083215 471118018 851428396 951849872 595648287 815405542 979777604 990325610 69978945 216485024 751466476 871305900 648689535 925907003 184587307 384404266 238237393 685408330 522919679 947704096 462128491 859550333 57816785 307242045 833620612 941923595 286976566 823968351 471716314 933140239 691716566 761018545 884512666 958886254 972039322 984491359 107887757 429447076 623186228 951356412 538699183 952200410 175429571 802982656 802852685 863834421 483230636 762303791 536233272 890138540 295329615 681293663 989552940 993158937 182837073 961445655 933574235 990644961 344785885 780062719 569159487 623852898 292379978 530309539 428235441 437535487 984418232 988742833 508787867 615198163 307352585 379185347 172115620 247584306 21286257 307947468 887886106 900254337 631758765 668226311 645188380 989060322 35128476 772983081 9262757 160104063 254205203 591757957 459080899 924949561 171261 215160655 171885123 492712239 514086748 954906320 107029603 747462643 801238510 837535553 140622023 507223905 794924929 952027735 958383174 966170653 183425273 319438967 85865423 247239554 845675194 849032702 115743668 428527357 400451688 850435071 240828120 668204612 510880656 657001337 878017318 917780426 539703158 609546192 413247322 534765274 958595623 979992457 761211431 949600227 321854222 503449698 654781738 661898922 755154382 827399114 763368889 840241606 198934545 207180068 200992868 629249061 492698066 790560282 131031561 576267697 456393879 516162415 584186865 724389994 496178005 775349376 746262159 825561539 261115221 378171041 188453762 295512250 162755342 308839576 313447498 460732185 214630365 635331196 841567778 938797888 935785392 939589106 712455014 782569482 877263058 887403601 553879191 765708411 227242359 268462070 249808632 377685616 114595398 545016872 327303846 889456964 724843581 998010233 950599911 977203276 809741995 852251555 704470479 788797782 143450905 219699526 759098703 891902718 316019725 582749240 651583903 872881625 805020714 874665131 866919535 923877415 74173930 295900880 693542080 862610461 319143236 387265734 923821834 936969358 352043926 403139101 643705557 882435735 209229974 818136178 360299636 513191109 521491267 613247657 631474751 930305719 918412024 933017435 611325176 673076183 469041863 894655883 302373561 669783418 867618029 981697182 676489192 893137594 43707967 600059794 10594367 528833517 276743950 783646203 935168060 936241458 391955706 804796777 732958182 766053434 989688882 999166231 959108946 999936992 740744517 770359698 797902489 916730457 668322042 694364492 905738590 957724192 433585775 556342752 236713688 255669732 421857311 475950663 613181342 784106981 376546292 556189618 117449328 860725923 713302648 744748185 138605356 896390093 364830339 837325633 111247112 307205545 782435083 844487522 430000288 613928069 170399901 643965360 662471742 929562474 192642239 213830209 209104557 323072499 87392964 899038845 374571528 735111230 431722306 921770694 498956263 508530242 448885582 478377070 88470058 488306229 921703726 949980310 824828138 946049719 831545290 891651356 740261005 955423408 420149622 603539533 316137935 821692887 192636497 579297544 711048516 845166620 865487895 935202063 95104500 418941732 456790729 763818031 248373717 908183998 406139197 501098888 834900900 837976495 294394209 885204488 737788955 986629837 387702566 542705644 239956052 643899453 354995610 619152776 508912635 695095429 591859545 640302513 277146609 530781634 368400897 654977308 431935406 948568576 908042086 976247474 981304234 988485858 72370386 612367648 257854070 804832785 161696323 224951872 397838631 877596804 943235511 982786149 124621788 391668092 61204747 767808075 705098434 900317632 499748467 640417571 910667297 991032380 470559041 647110118 546654349 935235648 192071560 882334512 97598118 238845662 760458504 913841814 884328117 885403212 75332598 211213602 712728275 728800989 956725034 993242884 507711167 816945088 996503490 999875329 558702530 869386326 160804939 299241135 497892402 858027682 263733189 905800589 56675362 727846803 82937738 227170837 244480663 894336453 646529977 870683432 818967526 831642458 761954348 763828939 229190345 468301729 164573657 862631207 333980732 641278685 491852758 505423618 824911799 969114738 986629090 996335307 533786690 958059595 203102656 441466129 439780711 681170939 2556526 462077729 292341402 785923343 711825554 955188578 70752861 466338746 350529978 596121965 401030961 945019478 718501378 912939484 78823397 206372958 285035739 567624921 479109119 691206354 973258140 981454767 158817284 316035331 14691945 937450896 277077960 586310081 624841357 918324064 39486762 781034990 614285414 666485114 446667221 519578284 943047770 983776090 957013391 966736473 319113662 554849416 640388629 646969680 748066044 902123214 535725119 833107710 349255109 666985294 455510856 904975905 749310073 921014998 77427700 550421964 663591570 922983402 508772986 660830681 948505607 978279611 146469829 988979158 183401615 673703733 152306123 361261195 139754226 772396624 296983829 562765069 132037635 803304366 912332202 970782628 120738855 184590820 44094383 572399667 573546102 600627676 90663907 301714551 757158947 925974125 26383440 511916315 776165734 942842571 853513211 955170297 251120167 538190381 52376064 684541516 825640829 882112297 375990083 397123197 871718926 986465208 501107089 760246226 208321099 323743742 651897113 785220170 336155845 891427453 384156497 829948629 784698396 971793556 528164222 607752394 430448185 609180669 933176479 973420458 799015256 855091615 797349689 908860022 433800763 437568107 189709873 367329110 676947262 952620689 526517387 762381350 93834209 151900391 430508330 782190768 683608381 999411427 611085169 994302386 269354582 607067527 698054159 767419118 17021466 398368424 547013316 770050739 235887032 989544917 737694136 937827300 495781377 798034456 373169094 849759229 543419641 720417177 272214232 435696827 265985536 734519542 161313639 687071785 117248439 476194218 905178120 982453306 970257656 995327067 380306753 557919935 258107202 810969529 56124993 222352833 322816566 501379631 501000158 545079010 18747604 247864634 789353420 904925975 146149867 375770869 268819841 925816993 432744701 670159556 948048435 979298211 791399750 983285336 423146244 878495572 737365575 995918383 143483627 919659391 241108191 936938643 630034293 632678605 40555587 584704408 406017199 556142584 217455918 584422047 415435655 505624809 498851986 533497404 317936206 625704560 752553857 846463093 262304107 492183666 341049186 715892559 679608872 778481656 700875344 791491216 79912044 478236619 22003458 278379241 563841715 649644280 6871663 15363168 672454406 855190226 677849372 839872101 742938129 802645759 225036942 280261903 755719131 819871926 617174240 749188073 966218060 991244723 407867791 411739603 697718806 874324694 408020094 790217828 109311775 570239784 712302652 986185558 136285715 994292747 557846121 867133338 593062627 698071399 207612861 901023466 5823008 165410033 104278383 162466621 423643115 514168466 471171450 815992564 150850960 908718551 180076638 668217710 447044764 505947039 588722714 930687044 419585776 700197656 476605520 647971449 161134401 482085537 839744421 982242498 489686245 924845330 94607020 381042936 16328023 978921410 50527842 417203415 66660007 515717195 677318952 736768671 829432660 833509486 548215877 935834026 108848320 304489803 306757025 534163581 447677422 568092358 911209701 919560205 284706887 706091847 13427367 461448165 350569860 363498371 381764700 983614325 325396956 777955346 896785280 911143355 816812524 889002699 144279305 446138709 31919117 604191809 110986101 679512054 281218163 412747693 690194915 879219595 265425773 567858648 591464809 870147539 416846895 571634505 751016444 754088659 298686786 885260609 722246222 896353427 743087301 768046483 534260879 892340970 499152949 707083132 272019842 696407359 931382892 979549466 221220880 631448627 911406161 930139369 687084025 825368728 319737807 903739832 415586285 710442673 897665495 928827717 98343678 933306348 779253771 811678037 201698682 411314877 62376223 340281222 318028490 428392412 441530673 526379686 555347612 624376784 173097248 354631021 477118445 646456967 551121696 873140280 156027440 281091090 975722066 997775747 217375031 622470930 803283110 881911879 29196160 194137518 594378381 891070309 251647614 753799396 773415458 840802342 511127872 751254403 238707550 945354046 462861438 505707821 475393459 818874414 726922786 870789475 421552549 759385312 726090752 970430388 740607636 848281526 188489366 481940971 436977640 609104167 956068729 962047209 992326829 996270553 597809933 960357842 123272664 787735451 692364851 888153856 358232289 535954714 140181929 509581677 685326275 708588958 524801173 580969691 971858188 993329139 993182851 994374124 198514455 477449042 208303861 501952845 971889352 987750642 378060800 598293571 304857207 647745412 743502147 925849579 618834994 916935654 503718491 609279871 672408595 868582216 990185365 993340852 647394629 832246737 382017047 747732837 972753630 987032659 48902426 470115580 108389408 264553673 330356171 476679483 975018115 994574274 945016165 956367678 558965004 642800666 125686174 352025436 591320638 675549721 813502867 944367856 95690271 807724923 302251125 374008407 816172404 827092900 279178312 630976640 272436570 772235832 863678987 921930692 976551908 981712474 428398453 802483740 564740900 724574844 613312093 756809223 1924445 815602262 961331444 981438711 449651983 984461468 739550857 763693351 316287142 710689411 349095741 386124914 469415581 743292508 404022277 713223837 546763458 550680608 567786612 745838008 174084846 637964054 176409058 426834113 508491772 728515729 751410497 875849737 931570732 983409633 164980041 236465503 9160616 296546833 185708482 854843965 15028290 530133821 244147872 985264248 101502309 207386935 53265817 493625569 601505436 610319907 551989291 886739377 718594640 832533702 175626459 555082399 321314832 800010918 326455748 844030839 684560509 853587625 168479381 684211099 372226982 831998115 889102875 955040604 135380604 757043303 754031662 939578888 890207832 928402190 336933505 655561805 12436081 988562083 816368402 884869955 351862285 427630499 605978651 758213071 974606038 986827038 864076708 987827625 706178525 889767908 769582581 826381296 283566579 485781291 362134713 619778991 262664173 535688845 810187626 878355612 990523951 999720170 40867813 104028802 614672611 833495301 625185075 896730914 136214916 651912810 674160737 674308746 451264466 654940763 645706121 899368983 730568438 989502061 612878720 827659371 380754513 643135393 547196426 580945602 149012399 630844504 780810461 841792725 855218209 903722418 105504636 237734394 895528886 923117189 698404363 737715665 228337171 704933965 499380950 749858285 921141254 969284397 874510599 949917321 162498602 698289273 184623600 287454934 641449339 881534440 709532386 886355372 727091068 997323976 632337318 988785740 877635634 891545843 384007995 676674952 838722480 929514419 412711673 480419839 376711647 459778055 495340065 946341319 660512546 714654875 362179105 525637625 559113539 584603684 717928898 742481542 576308772 670854530 73547477 177756406 173467170 843446107 460129703 568000230 310412440 765655780 119669902 333373314 410975354 773322322 891261505 909103342 653435510 729755615 517157493 580060332 488632753 660925862 726432147 994814204 48152873 653892066 238559401 692555287 985407652 991937936 958773431 966567729 355139235 712649121 508616343 638000649 109603986 534726754 702143436 854572949 361577316 471024201 561094293 739997618 433082928 840347790 790257715 984664852 167613349 169392280 18000725 650057578 205629866 474151106 200117723 257275709 9457131 726073194 726334235 814927673 832603553 951967923 803654082 934012654 99967331 672802283 716684500 781380385 920921673 927230537 30566769 409827585 129224262 562138371 78916151 775162444 216494357 993302171 470724674 923840406 482959663 529007439 929477721 973790851 967354022 969371370 749366249 795629482 316456775 371338249 805554402 813237883 671465598 822135858 433935453 585509795 59344853 276769043 28817954 326014990 755754489 901404295 417403680 417911413 160079173 418993846 148169716 542167965 259691199 750316124 767881706 995286366 573695591 702624346 901608284 956468602 88285263 994400837 564239049 948020223 604339646 755130044 391088048 624521067 44772036 105672339 185121398 751052159 660709759 973760137 547320779 702572268 460498934 462872470 874122014 910617363 457945346 655469205 983552157 991595770 717345412 816861456 791974787 871272753 26504832 629642338 833267069 956351737 613276467 803517319 313211539 763841215 221227886 320086492 907729131 931532138 193399303 303496037 582448279 666028501 618914064 747672062 103686947 241496131 571506177 968328225 480561344 949116616 336926767 515758617 18874826 955423939 129287270 647573929 98752624 729582893 270783795 758892388 789074124 958482965 572286987 685176256 856584488 896131785 369452517 687328724 859904737 940606168 338335696 739092971 899254742 993229341 274248923 623543318 163481477 800437458 880405870 918420745 985278700 988767458 864270518 925858301 24038600 384693908 499996196 549228166 528210810 695490234 622460725 808792303 899120971 912996045 923474435 951224105 336536759 724508623 431788020 526478840 129092593 829684345 169142268 586117066 265078362 750889549 446937448 912873342 384797187 910681490 669683071 711917508 922707788 929597698 228922773 404332914 495235172 870093825 319442523 599176167 255620370 459068758 145838589 606001230 366183244 920370128 168595636 942861420 812952055 829229427 90579908 487079244 815710577 860061315 803866394 915711607 928502653 944118574 894047064 996770365 19032340 591980246 175759305 307639710 486773577 957365558 681948858 809796478 43739879 527118114 469141271 769101952 599411375 747201384 801387254 960185079 644562230 751085412 810867045 848122286 397492912 651806817 190379127 437864895 610729663 799966135 29998387 685862363 241239448 928535333 945737965 949024871 90247188 637801354 632584560 766942659 221128574 875206520 168079466 467536881 939570408 989271973 806988135 887460356 608118620 974301753 376712304 592909160 663330018 795312523 972097308 989804707 413630755 423500344 430482731 668375951 502515786 946505267 757402835 904799091 570767376 689812213 691381291 887755896 981070615 987236856 927879927 938155464 139841913 837521609 217754434 570339783 646626736 825594266 726072433 751200855 838716933 993093295 188314845 491618909 592168322 883364165 179538579 464021772 846824497 983160648 148341601 890258724 596254486 871793358 482577066 640201325 913407367 966153631 582492160 905523655 947987942 996727838 415071883 730662331 319789428 985602632 257775089 550979109 225478650 706115633 756080751 924683461 932641997 993329210 903699709 936958962 272765988 577910978 929317857 943008123 172621936 554496697 680018790 894459746 669765501 806438062 151818811 407881826 197710977 482813250 77961892 769129052 894569393 965641771 457978045 760545424 452206905 699160136 990319067 991428564 347315478 436707864 325341903 385237851 219048742 368516077 82657009 567946603 291847174 733949124 257891786 655786058 490611999 507177327 71370329 943601623 595299195 742965257 758212284 769821760 694267106 875861904 937497045 965950736 307738468 661270309 780539420 858179436 371760098 930186721 255525164 810195642 360985889 664442459 260507548 599365716 597836628 887761249 151948230 313092713 942660071 963674261 593537250 747099923 492887258 767632783 646025240 729802524 132968224 992264581 458947069 761170594 196311376 290830415 38129732 155614483 543373527 762709549 227559922 230876006 5489986 604431863 308128853 772774769 91353960 181754666 575976527 703300908 474823160 663601378 635513725 933836238 279944888 796307217 576275510 775751397 548261167 622859263 559562867 888131460 271824195 774562080 501849331 538863342 92590879 586182451 436382653 622886426 62017403 804251065 397678098 988986950 282104470 564202371 446523868 574984018 148339583 864125850 368167951 594473984 514509269 873641437 139757460 680550038 497584326 781642569 943896581 954488546 835355825 888372402 512850961 810809295 182398924 275165026 819786476 835142524 133729373 974148024 259837573 934220249 935120237 966732518 134663536 310043498 983365242 996850717 643765310 678923140 894459330 928500455 172352338 327797947 13292338 204800273 494304844 782490431 948894028 986867894 504720279 997790799 990659269 991619643 977184180 995417637 273991698 464815325 573882434 938073133 314709548 688411172 977549488 984268601 762142811 784942465 19385364 255400517 478953360 689059627 514531288 776299169 246590872 944791261 415157628 889563688 715668298 917827862 184963104 397729206 339299587 600702517 280766508 742142509 371119150 890742012 466525378 699166523 305628128 526721433 363161540 836018859 143093889 297030701 237801393 448337345 433254261 602245749 352830517 539870727 433951517 468577175 928199615 990234269 159506727 455089576 574170072 703649935 548484105 948406962 184293262 727178375 726792457 984857891 530648634 837991392 539143231 598970152 218639152 931654474 459753895 961535393 91124275 214423293 120303320 385609347 8177737 906954203 606041888 941717280 668936995 860374950 662386646 709472725 501012281 982348473 73861704 470747501 563505957 724628085 738008091 798910670 893577080 965151869 371469022 905766826 460532714 512591705 93171690 528004746 430998552 614492758 493239834 754587849 739429298 790038886 440182764 747907393 318786465 344460751 182732874 687438622 930851297 969058019 814301882 897690825 717847910 869318863 689028461 920056806 871083613 948619423 133618780 791335972 800770477 807059296 687859937 943522937 983489621 996633993 868464490 956381252 771826993 942957761 563021889 815997771 78638019 728655909 111284691 569618685 394212769 953062595 194798190 889433381 719209986 783855480 94352234 461919613 849115149 977587397 855773026 909044971 230144979 293967862 663198124 864867556 823820163 966973797 720149185 903374478 44668839 683881932 442944347 735213940 418011409 879897902 101594158 482355192 103677585 758191990 353366854 698156968 558261816 824532534 424500284 904756348 732081389 975162626 688890985 835443908 613544218 831871966 122807982 156573407 336612824 867552618 581616106 752654448 746476513 870079073 662610988 832708253 209015684 288649089 245906684 426391923 464318488 992072445 252896148 544170877 460689511 589873492 612038454 632046213 29796368 954627350 526445878 686739859 551505581 993531732 340294388 492748086 982380575 998273369 404657206 815570606 987328625 998048045 323292650 541993401 515868746 639727538 386130411 697048817 753130172 970184555 271719622 577145732 462160726 478048919 746792774 979368462 755220924 762520782 824587719 915626717 686259072 792778840 154121556 902176502 719539048 862960978 839326658 986063137 195180233 433386053 92661596 871728503 391718974 953426361 419322475 695758632 573019360 656851583 681406611 796637655 888987706 924138779 345757468 498118868 245791917 715295615 123605770 306663594 422120040 817552859 910511137 948212262 29050568 959883570 715731054 733645270 827347784 967823103 743577516 876050485 213741166 268185492 29922679 179755578 655323308 845898673 175310109 916769447 147238136 891088631 531950173 692708685 476102435 686864216 599278346 767206070 398464766 416994437 453861373 615873427 623399800 792274106 803395101 830631079 608901022 863370956 549121152 980001022 876043831 918878257 371447026 614141003 287105680 822987065 643623559 720747774 105062738 289608164 949863199 996952333 432285786 932259841 417591289 733846413 253620140 844412899 715071752 895345217 319871510 989785303 79728124 782991796 500897441 519238923 54480115 783388879 795619258 835793704 865847268 906034125 145267528 969468318 704903327 732877706 150442637 588382756 640557478 647072048 443242141 871051340 190931511 501119359 138803086 763416143 994858906 995798637 767607882 885630445 689956984 920828519 366639505 674599722 631163098 707975238 621145392 749119509 695961220 771682045 969443317 970422506 183761350 516627706 4438484 114449278 389774636 886430407 22667338 564639770 278565394 445953353 490807711 750438321 163986852 708855689 906983317 934268893 546631322 860716716 396908850 820860089 992576975 998057606 27269054 495733394 661776639 819371018 631232470 719609879 863094563 924025913 464395236 705486614 689638008 846256058 958364898 985342916 558923594 846903969 153393353 731699988 931448345 988627705 437008890 524816123 399774363 437313658 311764850 644144505 300194693 460918049 155937204 816066898 702312237 986914670 837593628 860599079 324641820 774722757 523010332 737147601 806957419 937227010 939635621 963020766 905602401 984377890 617237952 745194890 488214051 727168155 314245199 487882242 151911484 819472624 428283010 639673486 676342512 691669298 888209650 916811243 381262076 583338141 840752325 903864259 608313865 926729622 169030758 920496400 95539805 109787319 943764048 997404879 419829855 424393941 167797767 736356812 331762438 910945767 111304418 433461413 630137373 944508199 956285601 993026253 20592154 91981839 766693170 868120058 674718907 846685106 864568791 901993759 228307856 238382888 921260718 925058833 61632165 64337829 29948045 68665160 101989985 801866099 561000815 818570851 369492416 593765995 899129907 992517352 812079479 981472276 878201777 959719580 80664837 807965627 785907534 799427194 37739214 304297678 532126638 889030793 588126955 791192863 945400517 945728194 974467284 979149775 553028256 725929440 760623216 817412072 880915903 996219889 830026126 928503860 917521091 922378745 792213949 809882614 101267736 656882634 412231845 632438305 652194934 973760921 790668708 807648489 715763392 810837412 272823807 531810740 113425447 525288697 834124387 907824161 606265521 916107952 783491999 833234672 166319174 992806255 164260202 577929072 113025877 951252669 167285471 838047264 469837171 527055021 972658930 993485577 921661186 967656509 329842933 874851043 458027897 601896415 403936844 857300023 764723412 849014016 909860552 955450065 773872901 916599354 22796685 712589444 174928454 790489569 357841226 911837565 271144517 466505738 742479320 824717406 321874403 505516680 840317001 909313096 982418065 994786093 7603521 150614823 162107192 771241666 554199852 986188168 761565513 762699616 628511278 838756591 57287415 731196337 264073000 977264021 214102589 610530829 177089670 394832761 575456325 730939902 976808990 995069873 554818931 671305215 727768111 933328814 617141169 873356322 562172695 924548356 187601155 569214486 5781739 128778092 591669411 959286349 192618747 578411180 944474849 968827920 406985023 490653203 932692015 954695336 354146985 670561210 179694810 467852105 623407039 933333693 637915318 846923831 547441802 792933676 261415651 432429010 389353944 739692830 249321729 965563035 409888143 582539467 972790711 993842612 126003326 922698619 688517877 723505943 305357241 932035049 506244209 608580710 393854841 429963582 874457070 880013924 992974485 994569637 179767966 527116298 803220692 946346494 778118259 950617183 481702784 982872779 410208546 622047113 766583874 769392680 101321923 620523923 379668473 544733041 41371993 918474626 749856708 803782517 806959260 878116688 207112377 462569325 833733441 950309532 596551176 901405951 44208369 396716941 843609480 900321955 141134147 660536367 970704253 986653653 868439098 915611012 504711439 871765474 218628495 438771569 565638383 672623702 231853004 361998141 586196073 692966604 46696543 783089154 529138230 535495638 979656360 984468583 749262042 941544099 810188810 901777969 490508891 603462936 473318399 759035485 788165081 846226783 707855708 801002742 497491782 895460233 178173547 775470594 633621846 718955194 177611221 429552519 936049164 942321840 516191402 555928452 188508964 346679650 276442860 588937045 759027744 978678435 445242891 559142754 597952576 788663505 305080880 591278734 510180754 691399315 370040441 876061214 606143818 863762444 220472794 916394391 86780416 311448114 549112159 903222578 223906445 449355994 782339211 999937997 376241971 611800704 912916607 986869784 767315734 825238087 592032305 668981349 326825269 851248120 911259686 922602520 373463431 432151347 156736485 672171820 847603216 849998391 393846285 814796493 679098803 890421192 963425864 984462600 752862279 853319412 361247165 895769102 920403080 962104011 641384623 643294007 777544628 810213477 947589069 954511547 709726884 815105001 450942030 986348794 608801597 641794616 438390700 494466742 75105187 597391609 554835662 633600140 330160790 332598250 976806833 978688788 53046823 967648422 768155023 785074459 965842790 981257262 129566010 950946676 132719839 993658784 379943428 783842159 571380417 753068543 685563193 841232567 549966692 773716617 15383142 779520380 938563557 958757382 50824459 186313677 127163590 435962788 158171392 479354992 649745497 673994025 730215416 890085350 443559788 893972736 886802755 927980606 753026906 956757497 569003385 636626199 854743700 955171430 200971134 824362270 469224182 706628280 456473564 752210275 305895814 836278325 65119898 796282385 138693965 188169954 366243629 463590439 319494634 657579133 664746467 775929961 931958714 942850113 200084884 496949321 987733749 988183215 783955050 875889864 918503134 945729397 216821101 799743422 600632173 932321493 281386760 528679820 283189108 515198454 864279002 871515469 266032976 642907009 887021199 975141795 342536903 739024625 626949072 701347189 278509635 908875429 567329666 851261147 376497428 675394017 132987354 761675747 449188456 576450525 489363449 646927307 856906661 941422062 619347082 647737209 354721611 997500763 117184273 314627864 133604062 962489950 688722018 729753455 45459965 292621126 307173626 611118277 229108618 595578671 220819006 527886513 35715168 492896049 889591825 959718189 784392966 970792588 66909276 199336514 773398272 926998515 747925618 807393032 477277061 699328569 617788316 843420862 391899397 563025600 424130763 468870546 296663213 559063307 561297449 636057547 400980710 667238939 873469105 878558540 94307190 249577189 636499724 920042763 362196706 922316491 473954957 562430729 449304700 953206150 677414954 890371884 446518027 564336484 807796292 984116118 602778454 914178556 159501553 658629378 841759857 954235445 53403468 168757310 952927804 972251218 626041812 740569684 441100812 765625579 951185441 956937340 304640207 995435046 452762158 822533712 648000926 771579102 441518521 621321667 653179813 684352978 341807492 639024539 446420622 733251816 210949933 355625140 681654861 853203647 421810651 896715268 995895391 998767574 972415306 990067779 752500498 773110128 901991854 992881047 61992424 100651033 891716988 971176559 831440075 945323463 89397116 442949036 904650124 946804239 84566292 891139313 901627725 942558364 991150323 998823505 773952720 977038763 677030760 763590371 590038598 635473202 247220544 774181357 934250528 969746755 360254510 788759427 202857038 525804152 765276478 964022036 151871527 779414577 916366882 972060573 727045238 772736807 272573499 281726653 520493464 742844699 473674930 661732286 860524263 914463303 543149968 557820054 299791531 479173121 167061126 831835985 718427131 773096601 790123627 892055229 595094856 991694351 112925653 179181735 270978799 340842451 82061140 474708639 168076342 920593947 437879692 983895221 411992155 823314343 40035725 298493727 306440874 773788846 636070243 667653379 498275410 746040928 275802863 935612933 683159943 731933921 309410579 593332559 104810415 752438672 388233353 408375518 614797356 869699369 706372321 822559354 366297241 795264168 513700405 627579551 669003551 750775551 756355104 758245515 875291465 967019244 776163589 794510293 163911402 422945203 474955722 550859633 171658552 298058152 811283955 835528944 560011277 967739940 858218082 976545638 610020429 655310239 123342967 392524733 53982557 629235307 717333507 728855416 376394001 685399515 256529936 660644248 442895773 920882474 414638482 470227031 249432967 975583159 105101516 441835186 968119872 998178298 964264064 966118512 998118647 998266598 141055910 274694104 134168739 963216400 658377938 983279110 332744237 907843234 309577 890022410 284378440 496355366 821512206 895786917 565457382 989598067 420138631 841937718 219709430 709943239 255260659 798015559 816254917 992751060 672695696 839435955 78890921 250273474 271524227 290362848 422713278 735157511 991936719 998116196 403480309 446755133 140528435 766365498 435563846 601093782 78778525 107568397 675911307 887152645 420613656 867959595 764655104 906587945 531362778 645682120 287322142 640647896 530308779 885551855 794197008 840007124 973313534 987612942 692850760 818442472 887997509 933912461 925772849 976411912 561136930 736147250 181316125 864763029 830085532 871185666 39910591 394278577 261499228 521271176 486692331 798695764 835158142 910794969 920076215 979644720 537030210 667477361 378818763 974468969 782155120 936362891 385775134 925833626 542016406 550436361 914271847 914539824 248621410 667487725 433153106 839052274 655840 55736026 648545278 843191316 146791864 906651071 160279952 178383934 251192772 699165841 447919793 831478103 33582051 402132353 217073554 947955796 164116712 855008691 106216032 722694137 654596315 656321942 985186053 995538349 587029502 811501508 434169451 661291527 998770202 999294117 742549498 935455746 349636718 969271860 788039573 872437463 43195137 346471234 125098987 965957123 590152935 896583222 133808153 465956627 508990078 634806487 11004187 637928744 240808745 928572752 96220592 774570287 879424386 896265944 93509681 557533468 508115432 960949521 806157334 946321857 835278630 906241340 155605060 432854143 508875903 860785252 694757419 711707374 317349108 339485163 956066850 982831270 268569740 710122312 237795550 508481734 981064807 982374054 135111150 428514356 569970885 777092388 399008162 997106977 190828924 525992607 692754717 868994374 465477946 900484315 556572926 867163166 560149045 786956174 768678690 931674525 821629096 898948784 361556427 668763499 247075864 469696163 394182417 666484519 602326153 902473730 890292594 894608596 171224031 328245394 116882079 456096790 744154634 745523427 608796318 867370067 77101125 896122921 306918535 486697629 122461109 957239573 132471311 905887781 820252920 833027568 214266245 283491047 160375206 665426422 772085869 922141178 970989543 999684580 732328897 929304688 845158474 928143992 838420313 874911821 501038764 868336865 598565140 982814732 706411695 721850277 726070365 988575114 858166319 915754071 265233030 872225460 982079422 985600302 348708044 536334770 798303266 986262589 21252216 753080404 902886587 947485846 951817532 953475725 840822172 985969383 348425327 808834941 802466913 874232646 229940276 502809728 639343458 701867424 65298152 542880234 377883796 628502397 381430168 912507504 516928764 557280858 616137323 654554510 666770211 834550584 701247647 820498877 427620716 528890067 795032476 942021768 767925700 782570127 370282600 542852158 486392322 762172196 762870168 972554596 106665285 561255494 143296868 180693692 971384550 979996536 737803276 829286886 150147741 175318902 324713517 592026947 761861890 929491952 531216292 796214053 630835574 973603979 150319618 997344069 279627254 864647731 667984814 816343942 829529576 856744211 107647120 630900168 364552039 807953328 236648310 288336662 591758269 907868804 464208714 753298412 611116609 922399751 138744693 273786185 189377301 625711619 47976116 690593483 682331794 921111282 396043575 916166689 973845300 985641512 285136567 912903637 947549246 966514711 212696652 268257046 685222664 903198965 706092106 807516263 774090035 814702344 28534416 231768581 444416965 944289803 943917328 959378941 298666246 411981022 102356413 124713063 149769830 455190832 564877167 836151018 217741223 327749260 372352829 865386742 294537545 552127585 945407306 987062725 46147778 390103777 966498716 986292766 162758268 525743904 477092277 983441113 225862682 796145967 723562978 967865320 757412741 785129930 442578790 580241156 582478998 845260463 373432568 755425414 213291029 797179944 485580346 831636619 501389701 933812057 88546066 344716793 835816592 858462141 880187868 907729818 821000205 968502850 985609404 986689467 291556013 382650313 60779005 983483647 3665223 40548413 389549000 983955045 594392375 736065849 619618341 826277699 46190799 346879141 9280554 649257318 937058607 965089231 569842159 611296611 712410846 801064415 828567877 899985520 560125092 701557373 958362747 984370886 40532768 486577437 298923983 961567419 30724333 67687095 171315467 655482772 989519145 997128808 660461887 727433224 32236934 643287169 595085522 846545316 12665567 672109754 718531798 967066338 228314278 909764736 602548309 765347494 358258409 447192075 80639148 469442095 23779105 260786913 391205055 656748274 648798355 675468633 919024631 999967560 954326157 966163017 183820644 590515258 140477138 212937210 884070057 890790903 650592851 980423926 652029532 870293764 864699405 873027229 162050814 968614696 882314124 941409541 717115292 862658417 40499961 475291328 162446367 340579447 592516585 720242380 257070439 745062638 444329808 810453278 837368079 870148115 561954234 615926881 721540828 894829860 472853541 592287692 452208679 485431284 712139820 712499064 348552671 716391897 838503105 966775290 202355645 688695772 631973097 854248822 807366416 877895147 684368586 869751883 560606110 963634810 103746129 837046042 163385742 384753984 709464390 929433807 579334357 813768693 696200321 703482508 182822722 650390860 442018586 502835126 851376631 973592387 640389456 958208692 669427639 858759326 638944946 671212974 591466855 647093818 85555236 922363838 815532137 835401307 814376785 891948978 530824837 570030457 427027382 769165778 94496415 257419834 884406439 991303615 158998948 935558413 824673425 841785592 529139816 760883649 146642286 376586931 425219973 454866372 27720952 686785794 278310423 316787071 219584214 550039865 790438997 968158924 157027953 317197075 111491110 935806233 552283566 577395267 208775984 998820492 346678188 844129381 402749650 992450270 962827583 972156993 522069582 586471005 206906641 791550004 189730173 875663434 627857269 690564050 262219872 509821230 814834769 902726508 236223854 704190267 917082120 999402546 14305030 45459949 393789797 838821099 524613824 996798804 490542206 862254669 213337467 477421074 355724773 906597295 669342371 720784792 26100358 269897417 689198663 797589045 923880067 934340577 172503485 472773670 244057766 965972198 810870898 854184024 657742835 782458387 800926139 974907736 917033811 961127393 415964971 430135922 113623707 985784421 947185364 989564608 845703126 976324899 523056100 803024897 365111923 567518923 741446875 892063493 177359856 284754991 575838751 724341285 472467738 786900848 121011650 853994350 333058097 468646735 465783128 779629337 366451595 978241680 278535625 511429388 517828419 997733811 972562743 985907464 683095774 935315004 538198706 661277133 624781443 975988222 89121067 721049745 193765584 247107427 704021012 993205437 142872608 410601736 692023404 887987256 17569970 206017573 716074975 781595242 642029822 804030093 203989404 612772470 12866153 221035296 208202720 238313797 563772389 884963242 121537832 250859917 565395975 760498939 26341719 285860955 608291100 976780702 122351484 975010296 991011429 994576585 785166554 933460977 378176748 760096677 940549812 947624607 569111501 800858197 852117796 882737206 204353976 946228713 336746484 855406581 24584417 783711816 30994182 751569103 45401941 107250282 583786717 769841825 934696863 989476254 943780537 985882378 450269982 867840326 120642879 562394345 121135043 738121912 360110097 798427501 445176208 808159035 275181978 760704007 978524176 986104737 277995675 288472247 101985795 761742687 816734129 869326692 492365540 802833024 194661571 705899630 93319348 514402511 360663072 533617053 693678937 789007680 623365929 675009182 895592353 988774343 75900814 388365477 208130694 685439479 854128335 916903994 713742630 962739670 153073356 299234001 813037854 882569873 297683684 581307585 971477272 977999779 176045728 224446108 707460134 946695721 494815569 994084690 906178197 980527496 218391971 573253401 36628106 433420392 252975598 960819719 816131598 988063146 542437146 665759413 45562070 49113263 872774589 969344999 674673189 730729475 681225418 991680111 330622064 677449406 228167872 327591611 397471236 647886545 229040062 982501914 747556713 857751154 203722322 924140289 493339373 507316353 391846658 873754541 357766912 585890127 811657589 943820739 643566822 809840709 695044741 807152980 343739069 993233610 352931835 405324308 659434419 759436018 419805608 596867378 829277626 937877847 705376863 867567143 336535275 870608942 65751756 288339138 221963612 701646018 93419117 702331956 747080622 924177162 180543123 471673349 440193558 738915237 457310703 989830039 368525662 483324213 60885793 716305008 213058787 364265943 30442263 216526333 216632562 932469274 21234125 343046109 901645172 916839966 531479348 790160050 812709305 907364876 457519777 496990101 270762590 787528997 711270220 979213448 651478016 805698398 534432319 705719464 862585118 973184890 459328880 959740812 213111347 977976510 477916065 877756722 927109600 990975216 481544156 596218407 846196395 969749637 7822452 313715301 883611724 947560152 773011050 902531849 876448759 959123357 308420398 469439833 207326747 504305646 849898897 972779960 412841534 756225484 402182726 520502111 116025010 427856046 804012446 922315159 24210492 457378660 574171295 773690783 142456583 381255171 790083128 990618646 8743235 520076947 760207727 840511846 923507952 984062513 704347935 893091817 991684184 995861551 37655898 733459699 182510313 956525312 861330305 889556636 685310102 786954656 283160537 714884199 717929926 832786587 60221495 561151065 767166501 980317522 386219501 586645277 352717727 461396753 440972042 647500623 550760429 720890574 64148663 788939186 684731648 685865626 755012750 755118024 223936237 395384988 251367574 583673009 240767999 469094667 883363465 899026946 301792509 679560962 361327808 663486628 834165832 926587486 42616531 716013695 752313078 987589989 700510011 775342215 286996275 443344756 201311532 491176649 887426315 944922614 259411931 958271681 833207350 888379720 372232178 633400258 843699670 921512230 24898288 517341239 272036681 418143859 323160138 747350112 536495953 882743846 400672422 704793430 203226392 923881768 461605356 661969036 304048643 760912433 685080917 878517755 165581905 843732109 720620771 788854822 744610853 918250974 883270756 922004915 964419572 998253214 690358543 690936152 507859739 974754828 258805803 890914918 60631640 640137168 547473291 666499166 230556350 945908591 89388822 371031950 683610019 847836564 129508852 671928911 815459274 871360618 64826480 480452670 207518245 986504556 713322175 807500941 793904655 794675817 201662067 231641649 845750805 861894239 554424123 818400423 939699630 962949485 255870075 762642774 381517889 691461554 87762352 246172767 125698373 349351632 375183150 873650595 413719095 985352607 589911197 843177826 623035268 962149618 67880421 669307134 715565670 883821266 265971825 731090502 44455479 210168288 253725878 703756737 547008967 772913583 11295429 461291975 135381986 696750896 763601301 838465648 749613281 760892306 362708426 665001952 360783778 384648352 478142777 561242132 246120478 859739091 600438911 739679850 724194593 903592526 545321138 596084897 295506610 732915668 902649464 962435779 947056190 974154988 362442100 564898095 677479428 961734020 469115392 732979487 134242395 505965588 16072470 695935287 470893898 850817116 292134324 809951023 260624927 855365331 888330652 969282015 600768058 904477524 454634965 635638547 930185594 960754329 300957895 564855173 178717811 631811158 356176627 958560023 894315607 894416943 327809418 562194316 666301369 783115767 999745757 999861856 812698610 995990016 238627523 842870272 667692540 884095422 913853152 960042258 350322346 966318819 23625973 964767732 792514083 994576721 845072666 926758471 839886876 884819065 192769430 722097939 74395410 561305661 833800563 873542307 375637328 962904206 449663745 610293384 808084899 813866897 2762400 859310812 870635084 909012554 99745478 182580477 904016186 904147612 432166739 918129884 379538651 751367013 767896833 930305710 481772172 863303785 541148792 610635682 258690360 683599850 426440799 791122069 894020026 944721794 736472777 874505909 450142298 647456005 897837915 912866219 166421943 385148503 549613905 800896918 806916287 856295556 306638797 406781727 247403626 398114073 952695927 975393096 960518953 973076564 96951799 127214724 797814427 921692475 911204395 946002741 775583409 857840592 408024554 978127363 998899204 999814143 202657536 923620583 4671280 110296726 78296801 884417101 541764559 788657823 499087420 576517516 481882166 923297567 123462764 299566734 711450363 730088881 562167924 853778934 343661235 683424987 242078347 469724748 834985688 958087981 532789595 881295550 258756770 469114970 286829600 521445711 665373966 691836325 706323278 820023236 738935571 929664182 818279806 964435104 163752040 380552430 669910005 823529455 238094183 350012979 387707548 692441290 374936113 666328787 767625882 825913412 434541374 484676709 905285912 939347627 488792540 757540065 560641578 754691455 803446626 987767073 17028098 594651947 381082463 590033634 685087667 987055792 332876790 355821508 450804114 572318574 165761121 998647261 417926009 439727902 273292397 939921881 358464998 933594376 235775195 297711593 38486479 746680821 538176380 834148128 223958727 312998399 759154107 900581747 728032679 948583944 2261636 60048834 198344274 475994461 897197307 986747588 534687063 598659535 27204262 477949943 573359235 912950107 643462090 650584127 316358300 657265463 563835371 710865766 388179767 905201002 295508345 391957500 743291562 888650225 618912534 980198082 747544096 756507710 53140210 169767919 948588757 969816212 669055543 875955992 222482897 795346266 736241335 924663877 436210664 930872140 403895008 457615974 135702276 595846736 889720931 940028900 620257667 705518682 416901002 756231270 152248833 613801801 289025525 527608159 629192231 781108531 307924595 328358205 800621791 989169115 693079482 957399496 512550828 527970048 878346147 977592459 591733629 661082903 764410565 817468870 772017373 920197720 955476137 971777409 677303280 964516771 823357498 884871208 936090129 979693297 994799290 996489936 953518582 977241029 347372740 908592735 461291299 837564062 84336957 531089490 463056226 634902691 590948928 752504363 679279157 814670385 868125526 899274396 926543992 980844450 993414938 997151636 211810898 303020520 229953670 492507340 217114490 658584942 264204203 850876609 119632104 160476545 21404026 580019514 165415951 823087427 713227308 991811033 83939449 642231299 638114214 968807251 621735196 735834984 915922465 929138130 424675251 708233365 956887376 965039950 971837927 984886931 525443886 926802662 733732858 992916640 78555724 578992695 366511450 957399648 587279649 630302750 781517259 905409345 743819902 956497407 578674495 843328085 823242685 852011672 2322906 196439069 922129051 926648593 19661636 643480501 39051299 569321995 43156974 540568022 214399639 763536980 934978102 944253293 792094571 850284778 106470366 650831598 296877019 991424438 327625897 424072719 229047086 922705337 866783568 945348361 276495715 678335712 969908493 989964154 251143564 963098637 587124050 892183786 724813050 794990721 552757360 772446327 26359887 572685189 95695808 510484432 121444526 251552463 551515274 699736248 538099107 979827706 328221649 538198722 281025164 994115636 515340256 821959374 459740766 740555882 969341683 983150446 794844750 900685611 454367079 909125756 785689075 916028844 228496023 939020263 674278703 775835844 112094933 876005076 976402484 988446728 863881806 956484979 68985802 708633436 597007448 994073468 958187231 997813522 622419844 899874917 44468793 621075987 732404138 969788248 355811003 985757028 864755590 878573584 788161353 898791546 625716811 721961250 719393687 842445298 467153686 528722722 893515088 897082734 914503810 933682220 605472762 657049301 585103443 983469931 161120703 219017606 85325763 476270810 705357395 892916461 219833417 804750288 969146890 982923126 261826734 286105132 623330996 659898603 76207157 762079441 297569723 619341581 56588182 357953196 584697714 790472499 57955176 445491688 937367291 971686634 592883493 821484715 824700302 879120224 759587135 856650116 960118071 974500152 377336216 823798724 190216102 606673126 769607437 903360408 706776299 879868749 875147064 897176587 671388943 769148858 247422051 506710663 22588083 697385233 466804766 605021620 183216516 320107013 702413572 811806308 145338839 506432133 343533691 915309312 41671401 769800181 501826424 507177712 257149141 475521917 88541806 328185815 315141997 864527518 789297169 917161126 265426042 820844389 905237670 926547226 199874277 719840280 542841074 943514515 757875928 787000272 183843486 233694826 140634283 942816723 540508250 638395091 479203494 697625852 438349436 986669026 997516174 998048280 234200551 899539991 635419333 729873408 349916838 385252199 871976554 941166369 985099534 988562018 113778708 925577824 614876254 644604014 350221701 978156422 77822175 401179448 189442844 829139325 916218637 955965924 61030912 861417071 65145110 712121146 693293355 809309886 274407844 575145019 263184642 688391550 401132892 472566959 491917038 556263891 768606173 862779426 920476657 954110495 900061525 908819795 74647785 176741743 818945405 977212463 812470525 908147220 349002368 543437869 941598354 962274030 280456572 355006629 744970439 982535403 561034769 997101403 363944057 701417585 438251423 855511232 210990648 304370002 500904276 507407263 779913729 913168859 866759504 949345808 73779372 322511777 336521226 415615531 637626886 916394510 160174879 819525240 106831099 408480474 200328159 692813164 354423330 797132692 762326126 802298569 63740140 594676096 941036279 980188303 72588137 475266385 720673587 785856167 958012564 974056767 772924017 817830252 411995343 914060529 916004518 970375900 303904326 883728011 757076497 980338692 821605297 872433182 547633229 859048161 733065402 749449994 24014212 463713940 488995524 931985015 843853542 916539273 833266236 902635484 804468559 946462869 768506561 879385445 330669609 394824799 417646828 992205873 582245986 840147972 924045685 931845736 935051021 978751771 518218522 760167833 494893035 940399740 8334126 437431796 451530504 851156628 328839567 835807643 597824655 916080649 692851200 750860899 251078415 310239820 231427704 664621180 397716208 849007489 296970274 377801253 563807874 778502953 852099894 878651039 178927241 209920929 478098290 727111631 925689772 959219577 858864322 892593511 266033432 739333399 271661450 821580695 133915733 797130474 107090746 215547391 544361981 692063128 770503695 792996630 458443271 834602656 129184196 140894111 73814218 968127212 209225416 866572708 372270723 600571724 490680888 966596844 437768496 928969804 832594442 918017617 536866765 886427931 864070436 929614982 618733604 727135662 316134628 781249437 525810735 783484995 102158017 646570435 148563909 768450716 561485406 855501432 63688097 111904601 475671550 579241113 72546664 745075212 397454782 492252382 78318880 216696830 939859395 978407773 906746735 956962908 551410253 717723211 84287695 523789145 585278603 644460256 377059661 689793993 706098992 985237079 950310050 950340805 9581340 708255992 273490268 682041927 117893928 148519549 452930828 933771918 949568991 951903887 451529023 918861823 188528208 290223887 219708211 830048300 852626433 957715343 855275469 970202711 347530539 686822378 619834761 903421957 566391698 894425416 242782167 561645686 145955412 279163060 799842043 896941193 120229907 870307157 609186253 798202908 263917392 310492910 795602293 826538829 389468841 688058993 88382558 272019115 319245860 454603231 965217164 973062622 992834850 996345520 172648990 644514642 227556991 856691260 716080280 917856655 53681078 75353915 389002928 694228676 636270264 916409745 798100222 973810134 125132832 653005154 339617953 522229429 148021621 738199398 805431916 926849688 128027348 775317089 864186256 870950307 636544236 756862964 176725999 985468269 397961437 957894281 458264219 708190049 837938434 926495395 673354910 856565630 529653858 669499127 598310003 644830776 808825356 832278440 798657732 883619545 338109286 767521317 848434924 909038907 827579938 959073246 362814219 737180703 480385373 676116935 704191353 849804014 625436572 764430894 949114690 956538221 585434982 889760764 844919193 938295689 54990073 445061047 522829272 579020024 941055247 997956569 135737419 413347726 29393220 841841512 73658268 172397472 945474270 979415399 571680804 926380808 128308670 677373336 119357342 969361533 909215852 984880875 729950156 954571690 622607418 729636323 227048163 488325131 796801683 998145995 173458175 519701111 751761141 959897907 715705418 855805339 875261181 936807431 357635970 833441965 509348859 707347348 512139135 915331113 496688968 698121245 459105386 594099361 520566841 782449667 568878393 872569224 151395368 499958083 913178758 962620495 786768268 933874271 628071756 817278054 756537704 779214312 277340344 660989347 574056944 634713772 713539841 918166910 714197119 722856489 29797956 92045546 486793472 774870611 929904442 944471106 62852302 781009529 192334296 627338253 129555713 709222621 688082332 781549324 451551372 688421032 654093324 874398377 294752593 551743143 66463863 444379746 667613267 729303373 363265747 758431030 293826893 827560240 339200751 643276935 404571844 745443953 419356577 722364739 185029118 987390449 255295531 794098991 494195674 811321786 397685308 608775716 412190923 826253016 246576796 405299203 512410410 644264728 94087119 351629313 125628062 314172669 363087723 971215757 625572457 683618311 156794734 806992082 128683550 750618260 668519637 775103006 856566718 958064779 576988823 908813777 340526482 679708833 980414397 997569273 228591847 366191574 923247260 967334845 562290516 790220969 608586353 890857625 437639203 630546319 822594505 892046851 446401208 586316734 311059250 471942744 960594486 969721810 762112331 790683607 126145182 408536550 577211637 826425210 934970197 976850182 964858484 989262179 275872403 551211150 707388447 761134713 325213249 441987231 344495128 909527921 693193235 786077921 936078319 946607096 621754847 851277887 548155961 628258411 947949836 950540562 451472768 951971175 258363390 481242923 406238475 422859504 754389456 804117958 230858076 237650524 373313729 763020409 578058619 587623003 886281556 958642197 919091386 991618969 430646402 823039305 896860754 980849155 184938809 719227659 6612592 96625498 213489283 421398747 907436615 985974729 39546706 342087582 445326382 785097626 599827708 608748006 712806146 730997716 329408297 608812917 498849415 976535480 465203361 490512800 629506782 798369527 137557801 495954182 164768287 681029060 983632805 996294956 434855664 726536688 979094773 997457247 152973030 898240426 201421982 222201719 115542284 120381059 74247510 547369821 629202157 911890254 530018897 543192084 215204323 527764571 317299020 426511614 760893378 915532765 664863625 943658933 792545078 955757191 986878477 987733178 744992400 936368084 484435636 578639104 810107512 961440997 804519795 822174363 410896501 632219478 745508324 844800049 779914099 962727918 762369694 808766493 903829880 925691905 540478101 605241371 746050853 982517799 177819183 409190327 833819673 890806348 380733200 606880121 319844768 654093201 417238668 729109047 155021810 173158314 825545917 844941522 868340548 900041303 133585195 697715304 590888590 836342806 388673056 647978856 592864928 784192239 105627443 983265178 796771310 832108497 484930995 702082879 257952172 754177335 478477148 556464749 241277475 446804225 254023636 622638472 9458382 30075050 531956226 661592566 139353667 652604506 458389186 579902901 896306100 902231871 719516832 800338604 514230646 524286484 642131934 844817319 674379910 866117666 42891691 60045255 974807634 980843066 758490617 792792844 52907581 505449971 643272325 886859629 297162944 687684019 1704577 167842666 519455202 634019023 183738276 377259914 713983866 899614038 97605137 587808038 631148470 852939032 506074543 992935091 797830147 874382896 121819157 485340789 950466079 981769487 672521253 783340106 833366356 859434233 125667796 858601191 359949178 623310354 404966538 654939187 292604782 627159913 289963240 784266142 731889282 753070425 71403154 268761995 174262629 738092906 375406891 726136755 179091533 633479869 242065588 615610786 50952959 293016900 96601894 478033265 110844502 810378307 934480097 988072647 574684141 964006451 445434805 733801825 346378931 842242125 849831399 900619062 48342395 246711516 501026840 832460748 821635806 918417637 595511914 824020427 436450306 833035388 148865886 630905756 826575296 853315232 453217629 963309050 35666884 62716419 875284616 941425091 5010322 28160575 585893998 799310716 960178350 995016289 594795573 708255440 490828316 873284021 558585057 590761420 102048227 158883366 470601029 950615863 613637693 653497606 252331591 825750384 473093184 619323460 71340627 439239325 111037644 681021419 715318460 792925994 268484207 550677126 104576474 446087869 732482029 982061403 117639135 263297333 531861260 661019613 254453274 886898236 141413285 801703430 608224425 883576537 786172084 948703086 254618845 994946240 830604540 934024146 261555673 523003548 161620196 882578940 995963181 996929124 72511700 351690773 906584410 980007763 852727279 910338699 4119062 783615189 815229456 845782494 227051932 426267257 629390619 693539112 468229265 524845281 734954719 851098059 567049307 642366303 217627979 433740961 81607135 591179110 322021949 561531885 917154049 976669982 383960979 428144387 322144462 789218073 480836561 800047084 754712019 827485874 691094396 992288913 837373820 970079973 178659942 408751041 13921629 934820801 641474964 825520740 431615500 717506242 894050853 974279121 577106422 654659127 533016028 783017067 902479337 954153023 598992508 727093548 696107713 710739202 618927300 932306034 768609629 955354156 559827275 912777305 703315968 752678388 405271740 777761269 133201160 599067164 94963746 694992060 548402179 672180044 99377937 488587042 679290586 904037046 492324437 847116409 740440164 948081394 63413655 767638882 575835581 885675902 110264340 281810027 250015252 494861792 273981286 439554873 406935012 866436457 268494260 409736846 43611695 739067460 456491611 749240290 469244842 897424359 282136767 376555016 439312188 967872787 606535870 965838693 310074433 685169813 605066525 801009710 310740361 961353713 719071650 845185947 822080419 907488175 124681280 286815992 121626146 908509016 853863841 903138755 353734411 677169609 826402380 889419459 540967342 948166771 961074660 985968479 308323489 456661671 339607232 772069603 716948698 939491130 887645820 900278029 774260135 889783637 369037143 897695764 680129783 994437974 184594502 227344666 202248290 289851736 712015272 876060265 651631580 859469383 737732061 953036075 553348027 798864662 464965285 849080078 971570323 980783873 494187635 509955954 328911523 508670896 42181209 209076218 425027509 875177829 515390369 915186814 183366040 726128575 986967047 996603047 47914733 811808499 900183011 951742220 828820473 904887531 298535851 636642302 203856394 747391923 584466204 742747970 33187624 920633586 980308727 981532593 612845172 796874760 531069036 653547456 869972852 963415196 308020517 755695110 878626778 888533919 615955996 801363584 450364852 889565263 840665951 933349857 637317443 824125977 492134882 551588564 859381264 894944062 222783757 880108917 247830650 388392544 223728038 316149696 665563360 903291813 56681170 985039885 297112074 636117888 468864538 527685188 281317661 524973358 722339778 947268158 903911011 995993339 347101998 750059857 144602790 770826502 830757036 835494094 739554314 923096113 430115475 957041477 316990001 736932404 64920341 859680013 326958709 687872974 382077165 914764753 902687123 917715072 734354059 982626036 96700021 733080524 540579181 713086231 607385543 995909329 171814757 942107518 302187821 526771483 231154915 542379793 50563294 162611357 189704329 311137858 369974483 964364291 886816978 895728760 34570476 169206980 287879484 378075133 463869179 602422070 116591999 978212114 781689330 887434812 177936593 637863989 979225326 991051707 639185558 945365712 559837300 749459950 853160344 957318038 720902427 958492154 810394419 865455132 11963380 513805196 444098039 456493285 767992062 782188622 968889240 988328942 480466506 570078252 375316059 957592339 115587897 206218129 497323416 563928683 65401198 434615067 684321124 815100969 894539238 995326606 252976395 650301851 812926092 966569380 845386956 848042140 400585074 632467170 30570184 550655582 132150833 891838930 532102838 675539691 150393331 890715605 326596596 579692713 696271221 784196855 330465147 355741944 946429279 950291206 624597719 725565373 598853234 969269179 307502291 647012381 580897166 825391493 381552647 934239434 821721450 828386988 629834047 796180577 387522019 924083765 248330131 799053687 136972614 541632526 965858567 984811776 292043134 531272515 377682315 546497514 509718982 953291305 894476110 980669411 954672712 979849633 435756482 469610849 299450341 885472660 38884651 589722009 406191434 450050639 772968105 832540528 498724256 800964809 211216294 931515413 388425507 600820462 81215384 268210298 805836641 909782125 471537315 974504565 294914002 627126985 717532511 960101901 710031124 900925292 273466824 913644541 347907131 399436173 310051609 891777144 926737460 940966213 726988858 838592080 747773033 902026234 951311843 991560473 298014296 875451056 244982990 336933803 922575919 972052420 861486006 928507492 477495920 870152854 38632563 894890746 889923244 976479795 95730441 776778936 140822890 687227940 404997752 776474189 759183253 820623535 969165768 985793056 198778854 761235131 950387013 985874527 978295135 991617037 880136366 928421575 197117050 412406865 796767419 944808477 153064167 766427296 668003788 722646982 869867299 984329596 94753329 488631783 751258047 846301014 592590986 914719277 732994047 861396730 961238264 971568270 225863633 616243380 156577025 342468539 229823881 656657261 242743293 910354432 262903252 874755488 584955378 799415500 446126512 477180354 136034160 828444525 776641939 804265395 396542431 744806332 909560676 985898524 244490375 245391537 347644995 867600378 497458972 557993378 705789410 781681604 239265901 877421471 360680402 395252663 987047436 995698183 571814905 780720860 136909279 217426986 706580553 893681563 960552535 986789484 993581497 998916217 597513006 889010055 800395179 991885895 356240422 741697434 388451324 739356034 730225035 985697816 866226162 918425692 526670917 847137475 354335501 675021658 961243184 986688224 498460362 967634153 490671008 534343425 517191529 867092709 843093389 989544746 300609841 668951360 52997996 559449954 452791917 677277009 680836397 848917865 616884619 855340632 856185651 871697262 748760468 976564277 241594160 879434853 716032181 802804144 998111539 999644949 360487946 646341165 675822600 800108574 488924095 798013902 840598201 928975929 577120880 737942503 191357134 802507345 109440598 299540814 899503857 950711352 644651617 836515435 449517107 881250956 737224865 896463401 999845599 999992919 646176637 693065382 526065875 672617740 592072598 888278909 462827437 767569703 163469644 603207476 329322574 713195988 542632756 644767537 849470786 999310879 508746093 538200337 358533039 906800408 654940489 734595854 112623163 590246983 809037427 891846147 137454337 496966156 741364139 878659114 903552642 981573940 493123345 652296724 210380640 835083733 554387548 618165398 561490066 710123610 25609974 73678194 672774738 675086390 32088087 801557257 905977687 980093316 483478322 978961929 603874975 780190145 151002802 159147273 487911231 940084014 803944809 944534235 939104107 955311093 213011502 362400220 871541793 954719175 501579891 887066043 956158087 975099205 319149069 792765407 52130883 804137661 32007200 892158878 352281799 612045990 727827539 798884834 840185546 986742779 655727756 903269815 312645539 446708155 939208443 946888724 597011128 808995377 652828515 982305252 684793836 710800560 410039794 659311618 65164746 439742593 992590799 996970928 720452540 909510295 896373440 978152390 386370837 756554141 915205957 959000967 639530196 814589580 312542275 497920851 81401312 130957091 747712924 908162996 155787954 279056705 636322460 828842682 435034628 572488690 811033512 844110108 387712539 977446527 469129305 492987754 984862797 992592778 36662520 791383300 214015621 461668050 75312852 129419164 32988658 107180395 926890644 943007618 12774559 259371758 357218343 459961382 583250165 798167291 231311380 713993303 598073530 982000049 81259341 863359692 886030589 921239785 407709036 757005225 238645273 525490551 345745676 519807519 736690312 788260514 398404079 867728817 720861011 855054475 847149125 885282353 627528391 669080092 184975743 958207575 894034147 946569895 798884556 895495618 702964821 761635242 127782449 135523118 349618613 397547007 372468099 581660166 240129907 499538259 559076558 684226810 408023119 706652231 258654438 547110316 371700224 685321091 334534228 973256283 749491305 778422283 573412522 689556688 471587499 506469422 725428028 770629265 167244894 180630743 609074338 624176135 695885425 905100751 53673996 561850144 993782 617683854 795484872 962769965 711136056 952058843 544941311 712760048 268320693 720448312 261110804 493165126 638439419 900427127 404671420 996083573 301420578 879100456 958371077 961798852 854250675 968119152 852895798 977870608 313052253 904281291 780255825 909135751 792639488 843894327 858219921 871663130 419592992 621155622 381550597 845255807 105266086 687564994 100108343 213920142 211303935 632596587 267255010 678069049 827257171 997235685 567199299 685102454 966036514 986920805 950279883 966211269 494993283 503328114 219890537 963225632 555206460 633458509 400802473 545650041 279543780 481276402 317784504 538276523 728585669 844269930 967136 762503062 273953654 440999661 80657929 434627746 375125579 486718311 984343709 994569353 118519089 634332487 821616004 878026413 688714583 929526305 276448902 929029134 669416011 758027218 63238958 760594695 125423586 658958966 879435876 931732936 596221591 602436772 155716897 380474508 255640902 396172028 72921084 921058600 940339232 952485906 616514843 859452209 46548869 427219514 538674186 868670443 784484753 914240646 594093618 721785152 636056204 854353161 175459222 873280871 691133290 780640806 219112652 646433287 168500847 778992301 993431378 998008535 387502467 865312840 762583948 822368399 75498886 161066483 351281455 693810897 193379 461783386 346199683 541136441 435131197 614452105 841923179 911660547 877806523 956889632 548211387 793319016 832342373 978954372 710446615 735706017 294849357 416971949 665883806 731155160 6707987 899809745 244778010 746727324 74080634 273418932 495851250 516914785 995143146 998578540 155129131 305523696 787188165 825365567 522432659 553073678 410474765 993148737 705369845 733323553 568927093 992186411 332283768 701442784 144292116 949483261 145274898 920686911 472128419 670405674 949139311 976031974 471550804 821963539 791007025 817769525 480525115 688914480 683474035 984759530 46530142 197997637 351129561 855333014 827052237 932209114 239931321 785649696 882492786 974586605 376264052 850354281 472017154 799976761 818473170 823181741 133169393 332688730 372662098 407640440 689607716 776206583 942107719 956463128 871718264 995386052 363583448 399004625 540328348 687753147 553794084 947996345 488478531 836611210 619515416 949836298 15257345 144337160 31766238 141492973 197668639 465097396 228570161 590399478 83681381 567602926 48639135 590928057 583300487 945502050 557120782 863504416 288751161 719265627 165350274 732083880 520570173 949428636 530353077 707098535 764824409 904208468 809942836 874141242 297634052 476136880 885457302 900136887 260006059 835923862 760630639 852437274 330776694 766353749 949452220 976037395 888020571 981597574 143519687 317371598 402548056 765165286 829873285 853724623 730872658 877973004 182760414 186271454 12992713 934318344 584333705 670468513 864257817 971612422 252907224 299120817 388467626 491622967 238165270 762142118 95682883 723857692 107957850 386058512 16633562 673152505 775495412 968248358 949569813 982501550 629947071 909210546 85411064 98918636 793353760 798921051 383911737 854508731 625041582 699107191 554980312 858248475 551313578 892857134 849092375 960363329 127571735 339929066 157967868 433144293 880359962 999290510 459882009 864025118 600151474 744054921 805507565 972847700 683034414 851421477 84615602 995688472 677329788 966799073 61680279 720559681 983345157 996444476 327325034 979144213 264330614 525885088 837662648 893405268 197103697 427128547 283496564 458222080 974070391 996199231 881167702 965118674 592571332 843311105 652211279 733951473 949821396 952536731 160242412 176250961 279411364 949623719 707902548 826543775 880958623 894444491 219505957 607107717 713229727 862783774 585747155 721123422 975855263 988459936 93408692 604825737 991348011 999325482 577676735 967425249 310504539 662183861 24268641 751263454 401074366 947247768 482055595 521385373 374968128 468125118 409568072 677931701 851849957 990843231 257359171 687355149 552261389 759471994 209302504 674069795 752982053 876456256 617166492 933330322 969820959 983394858 28405207 570483553 455062143 516796377 701723788 759324516 466116582 576184664 228763844 441666575 199686067 474078918 86752783 352612799 469557741 536224967 359316315 892193063 435442301 671603905 308840569 951543757 806372806 996775210 411233290 832824496 589707304 667980420 708588856 758056297 440997458 930124958 22152318 242421351 352271828 901797330 908808297 948208705 499862523 656552201 621916880 966807870 704227849 768227043 222116739 823440996 814161586 817009045 310826813 679969094 833822826 934230408 800691224 929535672 376220045 836283471 72653092 619177671 757492275 811202861 604181058 729080579 941883639 954660795 806028443 919324850 691367150 733695436 730372817 969952167 852703789 870947488 62781192 232470840 463103290 925980348 38015744 351293382 950922991 985405673 243439716 837536302 999685161 999708015 608216021 864567577 325297285 758021904 151932562 548259641 754551965 856703141 692943199 972862840 413988947 848926897 481088344 842436986 170287518 998546944 900363585 952042690 538268373 699721061 825742045 965279222 980330266 996133618 215477975 865495418 375912068 513963519 617787081 720260487 992542852 996388137 750841215 888065074 385686388 695993483 916610384 994342289 528343611 747835088 792062184 960996619 25116935 995298549 121411612 231838303 212492974 594244596 937682403 996199378 405163718 679987075 868590429 973925929 598139986 841352824 74723356 259986716 280520261 643773058 441783756 651347472 760049576 761498491 829202672 845070738 382748848 701021405 772902887 999633819 70685433 300534180 254625052 779262756 507573020 895098650 248654794 815603959 918706247 965464989 394219523 655323574 294107580 894740916 710130866 905614334 986176703 991404027 501756556 589018804 52376043 257060180 484862822 768003876 17547881 865747803 406042827 784233431 707377295 909848543 279127210 347679182 74255671 230918752 384758469 447082951 757945851 800215914 69891364 343847080 655595942 724078073 457615404 534188690 580247051 934825046 273614743 307460166 21067536 229465677 865503635 921490291 818129380 933132401 566121282 814009811 498122784 664933724 960463049 997181671 185245547 995041792 85297194 267027247 441223054 709069287 386195576 508197183 780251888 948801604 486206599 998505803 460618004 640716668 789720396 939950061 270849734 869590901 410636943 488788266 144403529 999218235 864242873 919603115 751395777 898536570 904977591 914807331 93597448 944249191 512912999 805830627 761362603 926902257 362195220 693503182 432167384 978817995 478401104 647596376 79700201 672405401 8948117 318511892 216785394 286520226 275282089 469851961 283843354 855579847 133483068 950068788 216768395 538920590 518404399 572859215 26938328 136120192 203468926 855596948 40322245 671375725 741955681 978065603 417508027 648990156 474443092 596369256 629208189 926045216 339966126 898708909 724297302 997206294 633994713 678213042 910594325 930233071 326469290 427280428 472405671 960220626 274422288 302976185 362201345 493135180 693084289 823275884 623609234 696906700 551105200 660668274 845313846 945789046 514077641 763771009 986345131 991364926 1099654 361564442 51050469 566162490 641504853 843221372 623021054 747674717 271071688 940903406 262345747 702759608 717084445 954722740 126960664 297085753 405890839 495885610 946997180 955301424 383741389 889198344 434319426 853514783 376887853 510961651 532674263 634639597 831925040 864328739 548857448 954556913 516604276 779106954 8330946 673132310 857158490 884531402 536393405 697365098 562550510 615005208 21352931 65395146 893188657 981822032 220819723 457594212 318392960 953255521 651514556 847412508 644547246 946711065 529410838 974820546 336059408 633265226 519033846 605987557 659025046 983728525 380092853 741153641 516556077 812666108 354459838 868839813 297233927 507115099 557627806 695900873 212775909 364650840 991038859 994597661 272603864 523561797 465208432 516147532 345311438 669335138 863021366 968060345 327278977 731484755 440127281 916608188 505094298 577659984 24548866 947807152 550798392 833234318 150968249 650172447 253647457 330035142 412524444 488761603 780310072 898286849 496594119 610239180 649513666 741081320 316915117 363039560 232825438 602112796 236803423 588640102 850582341 978727956 674592711 767444045 652283113 797464810 718281378 738085857 605141956 609844434 682350854 772550849 706657678 998215606 988416757 989425668 118062114 542249821 277806328 618499828 602472714 814948037 29174717 37912266 632353692 913202918 326343122 858413554 416804225 725692350 725724594 832322900 457204648 667035915 652166814 940103473 457496508 564291514 796598706 834436687 926692249 951637142 50028176 139533956 203886663 935350811 505396589 839429037 929318678 970294080 596968019 939399114 502015413 616068917 651466371 874312297 814727143 895693335 249236325 643686463 327982532 344049819 986984239 992030499 329696197 993741268 550049995 973777141 699545745 767821787 794244193 875062939 608089329 846150275 442279354 493727968 116099192 196160771 831768054 911866037 269436361 621055426 892775078 904720478 520270782 678459415 158620222 997969222 423368795 914610394 423687438 624637061 108708267 366055026 657285726 825191814 590675229 618451527 150561553 270645325 936970913 940282593 309855340 928223726 643151181 655127645 287820616 628706227 573542679 872699628 265067178 898464318 390411344 448501852 343156773 756652810 377373484 521050552 396960856 769951527 675734771 762916372 767891616 865304060 744615041 833984610 395545097 516575088 349748747 430609028 737691841 891326506 952317867 993926213 492053746 744058883 592900513 951557512 409148132 552632185 60484444 406465602 588551600 876432210 920246125 932039266 542583721 629653233 671410976 793465310 314517466 559112323 257715721 684261020 92023715 438910134 911475832 970124134 832067550 928385709 758864413 791286305 390644341 883010077 474922458 634185435 320293611 881865229 417458979 948567455 487550296 907535153 512385397 836786408 917302647 932368426 114195692 377987809 599688308 803196945 378771361 666180673 500721111 942116375 58860093 692520300 354439670 655342069 18428608 341406373 723538073 841085071 744049284 946470556 331968851 680495693 542451750 618363236 771969756 844877612 935159946 951050741 486296047 638851317 465368995 483933850 475387049 709798657 864782263 930207173 337521218 501366470 418388351 895890122 406843006 467620408 55018663 998270626 763061921 765274731 103464272 566665274 469493695 786110164 482742029 916646885 588992684 887374028 167765638 479810846 49972366 458454268 54744357 418862271 294178044 647844430 366666484 435851497 980973647 986329899 467176906 912588337 481309705 878419818 25719225 189637631 670381037 861031988 544609177 607845329 264265852 679996001 62690648 85712535 822434587 872229350 790232902 934640595 710457244 843993660 949982935 965016098 548387277 795396238 710082480 736566935 155409365 505939922 519824231 553935851 496759137 780693211 911800423 959310939 633798074 687459515 822875706 998936224 896643686 956115499 717414885 774063800 808931597 926331239 967658199 983622212 788496389 900009328 509818007 858046485 648425020 727455195 933591884 950462625 42572833 470692281 122004033 836344833 260648584 814499324 608428569 661986045 490079831 807010302 448213322 728820263 355982112 824788604 644234314 751769032 660821765 893792051 804216086 920641344 74843883 963129235 271144584 588928727 361001504 953488900 135515902 432000081 445484478 962333543 588292423 859980033 829451212 838953260 891073488 897823089 542571654 958871274 441794465 772905637 153241110 635016490 522398008 674523671 769023369 960234491 872807479 958170431 736715912 846608377 475842117 482907360 374239785 863321963 226156399 637434001 347113643 828813758 833730817 863355842 896106492 950898949 56832181 77724937 67659189 981894524 887440551 913490422 909014220 954140396 694469707 913644786 567567266 656755539 163517418 970385410 680651970 684845095 106306258 170892909 411629377 813813501 864149445 965519588 405300662 496663623 260162123 911329523 440456284 903917391 229242224 358501936 414171497 423734284 860530263 959795504 284297504 736253149 365151818 406494229 44846399 881530580 121408216 808273840 56231141 289435490 835242574 996548920 888527841 911505600 775802984 983775232 416455591 894502271 727032406 929559136 30604963 284682085 74058022 644098909 586768956 789518183 55146030 432153806 273336916 920538909 301412751 537303311 938461747 980127239 454077476 944331595 235449217 765379815 909772297 937062051 943863474 978907346 577613747 979411454 633097796 922450515 691390 158137713 775396359 826062763 70901018 753234289 410958338 480099544 895815933 982234532 547916489 911171138 593214255 607733869 290860761 978894665 106362184 835856639 710751650 746388955 565956111 747589295 392973432 944798628 986669697 995383221 539059671 553328213 517122384 955839245 470273293 861281408 47778423 479038520 204281193 253204762 796861129 995817523 972041367 988631968 831006064 960722733 798432092 844925454 536091138 748607767 109350116 530262357 514405783 722284651 360438698 674132065 873809429 895256206 888937847 993897666 306218170 922194815 799805062 875819565 778114946 789083322 502096466 993153008 99427718 104280459 447972105 612357009 660884562 839901355 273948150 880424202 458746381 589270598 736382559 810014743 170564003 174487959 297232959 693302926 780263619 856696053 246941675 434234792 677614908 923881789 61142671 490655284 976503536 999155238 47253947 763604914 72891568 956436863 179419949 886299604 622793224 968028546 764274731 922771475 220778153 267522448 135941500 194735859 649120768 956254131 150238023 655156472 983333510 997361829 804955057 809450377 926372444 953455854 490692926 616337897 717956616 880508189 715731046 884569249 31688897 789878800 824803708 909720819 606323660 766844310 317655148 502364356 421663761 527201198 291030244 536421237 124829662 756508099 117811795 865340045 799580646 975955589 414221017 540710599 515654418 920233095 940918620 982823560 368079558 407974497 184418123 454340065 325193170 784857864 679129647 681396116 78627898 759888171 533444269 794613416 115441695 303790237 677311478 980153029 696540354 945011557 259590009 565041093 550911489 613028322 904806625 923815342 657449260 738306888 380183426 432050765 890644276 939027166 365585439 785310225 113282918 813377001 235866462 660787256 118738484 448347482 424926590 765446342 386120963 606903725 400238358 823481572 899913911 958133464 309713023 537222923 901655897 979999962 495568783 867262406 216232063 348234887 179368046 551963784 641346389 664186542 118402288 686466236 427133704 920937559 509035770 935230695 6501937 417838904 187086448 503871677 932482818 943995965 417778660 875428368 308793070 413701776 726096483 887037034 431002311 608418066 295868706 905877167 873706394 916806996 119163572 727144000 321995644 671195193 331102893 720196255 345245039 667735164 622035400 966639323 806492219 855338674 941449651 956921483 36970828 866759251 901050543 978721956 370783560 648348085 516471572 667033091 174664162 325517968 578667175 581711784 99695604 958555985 22875032 353193566 504625451 727650110 701519854 892574398 278499924 535300165 834291963 885425297 986731307 996966326 386734284 813015509 688778991 803260528 959677037 987150433 594596901 666413176 490914631 714255263 317593953 756066632 907471397 986600173 652541424 894608678 972542646 975633588 727490091 875947630 78130414 764055995 818864614 874816337 241235607 747906831 317524697 412575095 445845319 795375589 321582186 475679385 833871414 841359048 177475919 938473518 786483231 895110569 824775257 862897944 258395706 297594915 682559305 927862948 357765518 979847954 414453902 470674994 114713705 687771481 721099265 939310671 843850901 852787697 469690552 977536708 524284058 988537987 783623024 834404887 742626672 910420897 173228994 770549416 579305524 907969128 213464504 253713056 110372538 113642976 770058367 819962012 327206725 524924943 124793221 787958193 804157597 806461002 990162114 994709697 910450256 942111809 987781193 991377789 267871915 517581392 329763217 392326749 653763393 792745523 596148125 805528018 611764879 784857643 800664771 924849315 194565492 658677448 262336938 855301141 635797057 806749557 731817149 890051375 905187635 963258501 173770948 206201072 797042113 919299856 760030290 946372030 877772345 896709093 55463188 468390954 5525267 190310117 557835722 882555122 753547996 828831273 964249758 972126350 537243154 894594385 126702091 217530726 30168469 493490995 635039897 726574521 159185652 290466088 927779829 998457431 387565097 564339270 431036121 880924331 293004693 535791293 407827956 608163452 357013143 912222069 167366388 524181398 562178590 588421807 242034310 517229510 869178180 894678359 621168651 989198436 574751421 649586081 652620726 839424596 101944431 913844102 23181206 773456035 525541833 742914847 893511838 930509673 177074545 363809193 368342970 846852805 510018795 962598242 629489237 943922492 624188098 700020105 56291959 486710505 661778839 828615616 544979712 784162272 189301724 603922899 461926620 704497137 752854519 772618702 560429539 891837831 204331760 644079192 399682782 882876317 738283889 768604419 453708378 531806762 266773865 659177697 358608086 884390999 835042645 879927625 654746307 661729278 174383749 811858075 822193434 914299679 795536285 907319713 626392656 808485858 329348395 617335438 386271476 964504858 67365718 326423990 285556066 759973328 938153316 953521928 883298255 885078825 10480671 345316767 384819416 807795398 536063836 645008574 954572671 973580919 282926922 497495904 130023559 806413147 669467784 848251070 420073355 880539632 407244046 760315461 194582600 462521548 819815361 908579618 500778731 905918084 29218885 252061163 591637666 618867014 946249070 955791321 871516175 875080764 956860037 966299241 306304165 954196532 570525749 759149971 131405792 829820301 402128627 492873738 587234176 934013705 767182258 971663742 473317159 604400475 547838431 761651944 71358949 514109978 118846784 603883120 730873676 733735547 52714270 221310719 844136853 887939019 803466755 866503507 563872619 703705515 689090952 906065534 246626403 977601428 252716975 314691352 635484203 704403755 896634377 967078261 959900764 985004014 76302686 651206478 745317730 917118308 850793087 866640395 475926837 742560860 49167509 648849648 505090776 712511455 245360461 421532368 611893489 858874132 934975708 957553042 141429894 750260206 649992591 740382263 661287473 943917156 22164290 344254187 719865891 990770727 434228387 839095940 386665343 527690804 387691607 854745160 299923769 882954076 255323048 564958118 674994958 694520819 68447736 834795329 803562190 916586489 602568959 675526800 668463255 813850836 790930619 938645013 406180569 885358863 137180154 807622056 298570398 435927705 426880136 921640717 402901112 888568031 968840750 971004140 69200964 456650502 475139531 570200493 441957927 689434110 806514390 885684164 733449913 917465141 61980619 856157879 285462512 476898011 562897154 972619042 228982874 431855438 252682633 506982278 267227897 363171029 180045250 364918831 501375617 861712241 969808862 992889627 723797540 962244257 495237607 508701161 352925926 856871447 612532034 871103595 739762670 987465840 297042713 460102646 387846022 534074124 349361588 753678423 24379610 281797070 653772731 774815497 280000714 494758577 572898896 807616252 874340042 941407714 835453771 894348584 148981838 986240521 46244085 861939042 712899446 785167257 623864774 740245228 707793710 872501266 113352922 593786764 667212297 693934117 685787873 732229549 973965099 999774459 583978704 849890747 609471662 896753804 858920475 898405468 672261456 798082932 536265290 699633876 778994102 904921951 161291702 890690531 447036094 622653303 96142694 126949674 711558309 728430707 603955137 934157665 684708699 711750502 777551991 911308137 67963904 949708056 576257231 763567276 305457266 899527282 655777161 959719529 401859318 478407422 653627080 766852283 745416626 937606660 17582806 941460890 781877472 884136289 782989386 935109467 110489228 158628188 816874010 902133680 453238269 790828094 181725233 426098291 635020217 769085076 562581821 914845784 47751754 599146661 940005387 958313994 262810745 430969145 20871704 805658137 832553421 951201601 791973461 902876587 910105862 938947745 483786307 720439698 973045458 977514188 378056056 446000295 607976623 994865571 91429027 722624844 641852482 802603292 312376622 874051718 85346159 104571285 902549856 908546172 977088566 987024155 81771482 720661329 752417709 986748964 350816360 385307724 651834237 897294698 806744362 808592178 98117340 928370313 527343821 718111222 730040734 849613704 277825415 359767179 139644620 981019953 501556229 834058182 494732620 883933588 740264503 918119418 921215106 940616561 150970540 822448380 121738369 972712224 859901426 956772811 829911558 932130314 796928165 977177047 267598579 508693993 569533674 743549666 119673987 530929897 521042646 664339418 556050552 604490017 34312656 76652636 428293581 669100493 75886981 952116356 571208144 855585274 294720334 515921375 116371824 684172308 132668198 461981540 474142955 478071491 416018505 538657997 283492942 577233258 932460733 982100423 971462384 992993141 945855868 952083305 204821295 258784672 100799178 949506805 969530790 999069808 396194751 417018292 415393468 880840535 29359112 472177343 822085724 871607942 150824335 162925775 221549391 850736766 999258696 999976061 474117196 809215357 525431873 921384149 397032230 589544677 78335126 535514897 933394188 968923576 166663075 558156753 220164206 729891541 682918443 917099080 168899069 909914724 702076930 703682693 904991109 967455910 884424865 910611123 921910005 936638632 546729694 786676198 470970763 614026552 304616415 374321515 928663172 987736078 44424500 370468630 22085517 657255592 629095757 646926902 427933768 589689043 386739795 921580797 312350574 961211805 253962008 747666229 38825416 458046166 319213141 781449725 362395869 816841996 313743120 950766828 193235540 620093360 800613614 871844182 255419993 734848853 276573841 506835134 293609975 643871979 866838179 981960700 268886130 499514687 881261685 967731519 222870333 616724094 640708306 874681919 274224304 742870367 716102108 830884503 902958115 911797576 434521705 586019116 495817847 929064265 484454718 499389882 606442791 736487878 33799095 100154291 191679438 719187275 460006278 905152240 617267506 978822517 266668223 550268318 639194075 890976455 681661713 953698981 97948881 149437775 217853386 267054672 546851681 639818051 239771669 913350526 432465328 695270100 713026778 826698519 915331870 969934813 483678786 922342898 939771347 973800804 915295809 990472716 828182525 848530628 483717278 727276305 935331014 968702216 260438595 472638155 628327564 683701478 501777365 590917585 983508547 987720789 186903627 948037058 407421872 519031030 962228832 970389776 251853593 425707400 166806772 739150103 801565167 883782218 859410617 888556804 784163795 961835209 789684539 814775459 207394047 809132765 319387352 379809428 854417569 979255094 965771459 988130054 971112689 981930961 269042148 942880055 637455089 997685122 848745169 947473811 7996775 359797895 602453088 972323112 351332006 729095489 748510429 976093444 187573534 603921847 973448305 996342956 129078868 386832669 453380338 938680627 442446354 771987416 834736866 855074506 892601777 973056831 194281716 689593411 693854493 747171120 695578682 946751074 426699909 641379794 335126250 636755261 344165748 764365349 220482086 423455841 951198551 994846766 10540073 882396121 592513518 965337091 651978268 791235222 259374412 346187249 924512834 993129231 881500575 992753010 678021234 931777763 723250233 911856205 322706508 499285449 841338948 903532777 969383040 973842100 903804375 934243228 477936026 711241136 224188863 412588931 496432803 767628153 202878663 401502148 568882753 690859410 833178877 949474460 511585289 741118601 155856563 294990943 765004271 933482545 357022250 542856375 604475605 818473704 676586927 895407927 288165812 897492463 791011578 910149717 42738995 911167849 269996212 638536581 229619887 722656665 332921215 569744457 700508444 957635506 753117324 851657419 700727414 875226340 874727026 971096509 311657765 770723324 752494840 923409087 38994905 98249828 979353076 995421038 681330747 705908044 235900203 730973268 217041293 893376845 491225716 987028257 864646980 991214012 335236162 813803658 993898518 998214469 28221928 524095896 698632187 957790228 123402782 488398531 350378961 703561988 349508337 802820146 771335578 888897844 337039173 609547513 604061579 911743941 85401251 417032650 779503216 804102187 640244166 764271864 92656606 874085764 745670576 999140959 472748382 698243088 616168863 876057297 305096934 545725165 208822725 616204129 664909577 959712087 929470958 995620412 915518741 967064550 286070 504618669 777255537 841771825 139061178 514586369 17180051 190463065 898277045 948416537 90582277 703059672 507795147 552707806 158414814 720600598 556046615 632487828 332275511 430520371 881728503 925334871 875989601 939954960 22313843 948662675 188395282 397622783 727059973 730151755 74253810 556857802 690272229 850525464 713733726 951427476 750728610 919851263 257900803 489229285 752474208 875084934 627416660 728432442 478481098 514397234 289355464 583605697 112856469 389138746 768480036 918051946 724474126 992818871 442340612 837755321 806217508 889568444 287078686 463970312 487568878 743720465 839782411 940003897 857381965 925015950 578256187 792431111 944362849 985846569 677300741 761856732 651885295 654654081 510022522 945118921 928049978 989859183 255723625 655039157 976346839 993917853 921675197 966011482 387999127 778938023 943158863 990783595 827967994 913163312 146460140 431730697 269765535 756038973 958697913 997488851 690558409 994371035 261562729 604860855 383949630 935504485 73108424 549222832 778896930 859726203 291608227 685032233 67415650 810092248 536102485 590631912 568287398 702051268 890099604 938513930 560571578 925465142 945592504 967040499 5135784 202035239 237883605 374604208 697097072 785140834 553438620 763252745 631729363 654051754 787228874 883030897 214029915 386574666 185471590 861142435 55093127 163861332 889633205 941534871 164020617 770970620 400257896 669415974 876050198 881819157 729438536 856889333 331181010 765703460 953633320 995822146 424839396 699197370 278091203 688927723 857623522 886963650 97610090 424919094 112895763 525953749 246979158 629135152 279322448 637423855 489875954 887667645 454540150 584589190 104630557 882807259 200571668 740033370 697143417 916655305 449812160 600297484 138579165 648039315 257530661 830646027 936496003 940798797 396005465 863712863 285923364 443438361 688569938 933359939 648344363 927679609 351886190 945502692 679564339 903755051 651621240 993940393 555490797 993019110 166781590 830953249 279148627 849787303 406925591 473043102 766195462 813991415 10659509 81044609 279525703 754084446 419066454 432006846 628315780 690528917 214662839 842668579 653731405 950059588 235644840 677408005 631495952 675258352 747351576 867960094 625452871 742981087 946238837 946613448 523951573 672673565 583915953 610961811 477837977 586497271 291468219 539692547 276514617 604158678 1202385 349753459 104462312 724483470 534442005 960411951 99282752 570133000 989432145 995030713 436648759 708051170 85445452 985903467 927761434 993381825 147618627 187357695 473797469 614267236 139784076 346303203 186632922 627588473 290761720 697294621 659053566 766657119 527600609 646521628 342557491 395920326 46962971 145028441 470072695 639761798 481555260 865430472 974157692 984714872 498842932 623005586 534018962 760564429 719030512 864054635 488646318 733781190 811252344 920395597 412068477 445929656 309173752 480491395 47549371 588569194 511483067 748308642 763642430 836484580 599139057 628849352 589435530 849130111 816427148 879019215 404413512 423242201 830721645 855736976 658614260 683709247 411699641 796551109 530088036 631639968 700238752 935677863 45351725 94484809 861777063 905128660 108634321 396248340 309176693 997225586 29059770 810304906 302587091 462742106 958935088 994937870 460841703 939052022 600610663 769875793 693915231 889921206 291052732 744760004 608783131 731107492 214249637 665061952 658778755 764000201 251664697 558474087 686945040 852053640 326565950 786579392 214540217 677136509 342481113 847026144 125728086 309091852 735442237 978251697 42872991 489160033 566696062 756045963 563271739 710720785 550417425 688188474 453586686 948912769 792859490 895191181 61161073 407500059 892616939 983152396 987967872 988813869 534395756 593945970 290833321 550105226 64602703 78239637 827248479 931781683 273760241 795963964 785507165 946410538 374046506 687156912 295255754 940826508 354252833 565408629 195942582 268292101 545217340 954079973 702995465 772374319 197496701 271654197 112059864 280199840 420861253 435380469 8052490 846708864 930113297 933609180 436100041 604524264 302502582 783926623 403941190 642767454 30724420 407181841 151525734 899650696 79012172 334657911 647797089 879525351 511094738 822038032 287724226 327991950 698325964 747765011 537946944 775131721 169694288 597162803 141375056 541600134 445383271 631690897 508098066 849148785 65527577 715860228 478334414 911927943 270086140 376278338 588843248 598776867 29377597 215941968 694400418 790338875 535102513 959546872 718100319 724473620 604502205 740594339 25229680 294732899 405643342 408167421 710563671 730729876 853443673 965596290 586753749 984843712 221647535 422820269 516287280 542218163 87546053 544449311 216141448 264305216 504599281 757075758 755784235 946417908 988376281 995383406 166451331 851296448 456562023 876568025 228830439 333862579 657708286 990256099 523985387 622514860 763121336 798560884 596263075 836818982 222262471 655568424 992555877 994248244 652099222 832492409 189592267 926442435 139082664 947505060 205522712 877363664 213483001 467632000 415804560 552986603 96320046 570957227 548479539 899706713 413243577 471453142 40053996 306396911 900660060 966929284 614097665 783649503 649299140 737896773 120840073 211403529 154842311 982779709 496767261 498196014 10883059 579768274 250809454 599633040 187047772 727542728 552154974 603483028 964145241 970689155 428374012 675714382 355958790 711190569 830831223 912650876 53619608 75891165 748691024 825528657 753328829 825338670 108141204 696268089 738073318 738569704 313368773 385484333 616850161 816681260 181072469 889782610 724617064 736799335 160265837 869016654 622647555 734540719 186356058 804820468 321490605 680498056 479581644 784179116 658654902 901338850 326266399 581361948 564170619 602128294 278797913 429932918 702397357 774083535 997330558 998380440 99141460 890665346 135027578 151149282 719681973 838364865 348582509 834381459 655373635 968012871 30754280 617555016 985989712 998979355 521402572 972573486 328305047 963414298 862841408 930912714 498868935 896312299 69321376 130019283 152096448 153482290 904729004 980964138 223111736 483905610 367384203 849143600 44274317 838057718 695206993 753164586 898338710 960041879 367280555 889127481 792499382 860947698 754375601 956461420 637678383 685771897 743310900 991717483 145034528 434957258 356964547 711951490 637493336 918457337 409011146 890173851 572758234 610433587 828998665 887734205 447350483 716636667 957158198 984091095 311239693 535900507 766845472 851463852 103546250 862293201 896666795 973753218 483844092 558672156 450374234 882698728 156783365 934821143 317923242 733367716 79440312 878304645 447827508 896370922 926944076 959080441 173476443 596647032 475087402 545931682 305803553 993545498 179622210 519309753 669279427 852583656 182995496 354444603 389829408 510289735 522528395 994270875 805270239 841270190 997999145 998435814 655483717 985306986 313505279 544616253 96311131 781434774 149519959 461453255 538576232 953150382 869487770 979199785 22762764 205635612 854173310 908101335 15600581 406248551 15490515 174905439 303192607 419875858 158071917 200341280 731280724 968478902 406217951 771706544 544577942 668449742 978479892 995735004 443990273 894796465 65737960 432047552 402405393 585893825 296589687 746167411 314653190 949304516 22391924 788408198 474045861 781777620 823266166 900046434 264185582 964818660 747667273 753087470 467136857 609193389 710251443 948375886 364222956 948446931 59006764 284064991 320676605 659511890 554226689 867288424 932471658 962693661 134964782 769601061 393556240 894053302 976712031 991978674 560587060 576229413 487809641 612013666 253822610 986663669 821540756 842156192 166548670 881721869 754253288 891752467 578812993 967439304 65111711 688056828 290131005 580413325 444722874 695176710 913646524 942447430 441343368 523188600 85032106 404800341 500835089 564863196 840066659 955698009 76495843 729789175 509419921 673729620 160675323 752757764 191226648 652937714 854460960 878037329 969742154 970125779 589784347 896197424 923950594 975903520 149150119 490840746 133208272 539177189 229290445 752525289 397872227 456083117 515593885 765304052 985202928 988774636 210691434 419845030 357884817 778250515 223435081 834395277 450451437 865138105 70074764 882334054 468834635 742988375 627780122 890075183 924618544 926912962 90559723 424192592 205481517 988112638 75785979 390322191 404918102 710920771 134938657 807141810 876563481 966736952 291545941 689254549 847531630 960888176 601592947 864883873 442476445 998335321 270295805 327961908 496509298 631974275 613330885 839683090 718285034 963847299 684530967 918129080 77219384 488487814 438421640 979334963 655875722 698292300 384577338 446974972 104333861 561847579 109285936 470037983 110353189 595129037 296917857 916009676 297751429 463876033 439157637 872995217 598170991 676048784 172825410 226470117 305541216 747580959 115672775 608616754 736843766 861363924 610305338 884327452 240914504 526827029 931292348 952109204 542238372 843670896 245935946 659692314 859097356 859693855 100526079 378802188 708239148 846137303 697534654 700990808 889418854 893753347 899504873 969829951 582820925 946956212 650669016 768124440 439235597 841249148 233791304 622492771 378148908 838226680 630480906 707103479 576134898 703371539 324983626 390656061 464466271 694135952 990563244 998393530 407949527 916445661 259598788 884799342 81555378 203190707 477752647 707892076 238316900 515757331 193501337 981550397 767531369 873225301 633029365 976321875 648273864 869411762 710169338 770522193 775981186 805383761 761284155 980704793 110882825 687685956 486073854 565047155 116338090 356040701 241752739 279854997 183982750 206873176 447530925 955562370 672637409 677057258 261575069 522649084 381652959 433702095 970668181 973030477 24895354 171491884 475398183 627073530 967425106 975890826 114033991 779853910 310145745 695780762 167354675 743156884 632822082 942937336 18941845 445327162 664378490 937357825 565562407 989345173 516737048 783803473 406821793 624305603 326428910 403765947 953537634 985409759 362726402 565830131 957914129 963776706 37033577 622986660 509911499 842170728 354441376 866142047 463251177 883926138 636527412 958897608 261055810 537834855 13433597 770555560 359069762 625342895 993992093 995271335 83608078 200752224 631159627 772608262 637065741 816670787 711067219 850360769 815459405 972894000 145317668 413284908 72951425 189830167 156444485 941996202 283298984 628755275 563935081 960835774 796405583 869182940 680172088 910921569 490011087 722997583 587968048 782368401 246300963 288638078 733894092 910634476 506949997 988807537 971175502 990192422 950337111 964736424 779031413 796658153 879864384 885008776 907767700 921254960 692837644 891924243 426711003 707640660 124386214 263972905 424788937 488268129 693007127 744593326 453934027 466166251 270558431 543228448 554867269 821762832 85800943 450487901 396319484 826934924 118438186 407232888 927777925 972160970 338228583 598910190 282284344 392961524 747626802 790585701 291861636 513354626 943664341 995573105 984357559 991431515 666407994 931597378 529377043 961016004 509877809 734349741 245514336 447042368 14932487 35580481 931537779 982082548 210472658 483304015 240676469 465695624 904560940 928871142 376786029 690587495 843226996 932622709 470787798 500959040 989383058 996837085 868884167 983315595 338011257 479776453 500552727 878393708 446458533 688958260 916325091 981912362 4486698 73568752 913334771 997362236 281946987 868260010 396236575 905567243 771542747 811440653 7100843 669374682 698225752 907302007 496818928 905278199 283074902 473260480 136569043 880839693 585115478 701711775 589472388 762628444 170529379 851165107 786677965 958779971 523539994 553965487 93914548 830318547 261862600 428384294 487875550 993328159 431820467 926740652 654818393 984712185 191779286 956423777 873703306 970543184 759217704 865473281 908779571 959681465 724694892 756756351 822270437 912147179 691015643 911342210 54713325 103617736 715626037 731475996 679718275 809736815 729774495 993636083 570806827 820838876 913080793 965044496 933206243 948965314 312795913 441611670 473226824 583136639 482250393 910917349 953591050 979725281 201758909 894259796 807873866 957208472 123000252 164128225 520614175 576293909 383416252 569838451 671721151 923575066 562525932 818181269 712528344 838889805 300617312 999986154 256288452 371594884 773372279 925017236 776853670 779070995 891900982 978176470 774737658 784710206 696264998 779976059 867771185 956875645 119265568 948932203 286369668 586874847 46753048 837896726 291087995 488096660 357554026 534067080 963836384 987382962 4056363 694707181 393821874 671727952 408807197 608775661 279655104 307539572 656521751 917168028 687332768 846056678 369206666 396340844 940143635 997379068 828777482 882985691 722376222 915615177 932584029 981521816 379073347 990452052 626042380 735963480 848248111 995328193 984054 946676640 895533584 930269419 783385849 788264885 540556451 753176918 448409234 920666307 8076606 268132168 858058190 967968416 683429740 968750749 371645143 527811422 545446341 974697284 281071008 340983977 355264112 801736878 333275948 495263965 535444185 951642151 168690216 786878928 323483924 879138072 514387432 981015986 383651027 534423193 733450084 975720015 353906318 835976940 301860498 745737964 657129510 935087574 208134847 707432251 397584221 972029721 837988490 940826853 605425750 606585624 552315171 890250415 575349418 827609769 625319994 942338083 853832027 870833283 884429677 954213075 32236619 61864594 877435539 941060707 104071261 746240323 554897450 609800780 426769266 847464563 841391409 935572718 429571325 457426785 728281585 857297026 955661347 977998039 108061278 316604493 542109505 690839594 626796371 919759006 200623142 959926319 365994947 723645007 590410267 862932559 372002195 536364127 731143912 955439235 309411923 564373639 827544701 873591279 49776041 444631244 890934444 982220788 602611508 871234229 273823063 383345117 423417808 772298150 439337362 688524073 154502931 900242576 318885597 963214252 561180799 837876317 310725192 368436162 936886866 999639051 29441744 826950749 605042901 817039592 53216132 462652783 514976524 951744240 156821925 898344965 825616990 918130669 9395097 446565174 831999822 936367629 987489787 994939981 393301727 788582235 640715871 660995503 434796908 655159175 371533314 956730047 102942336 121085290 32536721 808757122 225536170 755535205 653089547 814688865 290056717 899832230 316304689 516608927 22888260 979382917 598085036 862625669 287572202 799502768 339058902 475380366 434797585 664952122 998425413 999929558 171466669 200272699 991059804 995219446 760946582 827001495 771086903 827704508 453100239 813233855 665767684 823051971 532359524 579048095 103215267 237077136 343345088 737434648 858878663 997067241 972032329 989042342 484163705 853252804 942034159 972718123 662174893 689770758 314099606 888521922 425984699 994271104 62533627 698230514 939546097 987586016 497302229 945962968 609240248 685910271 331616295 804557904 897584390 914948121 693110548 998065639 837146523 965682174 245402835 761839673 236825164 589220262 514069783 528806738 771514548 802065765 811113824 966624849 384309214 490554898 633171433 992076443 716393007 838761293 9444578 462010510 256471344 517945989 549089350 940534018 61353112 412085124 878218924 898676694 860765534 967293688 491366120 833313371 103937950 264117248 447112642 699595822 348709535 951487014 446938064 524154954 310733901 983381272 723044913 962337128 98349402 572976685 472017354 673041129 415578934 816641724 74726277 182863555 239526563 554823740 817608275 931391952 665051965 887797559 489805888 912193638 684283936 927410973 311720272 390258985 510847009 669411888 112063706 944476495 254431843 366896574 653073434 715230174 925464031 977815666 192008539 665143830 217073006 401221748 695917114 984987986 514379884 828042671 564262909 928464446 86763002 254569537 548143526 611249366 789412112 799292918 124863704 302220651 634064405 743933899 243770865 758374353 925589403 969392125 757661999 977032318 816593726 914246157 504590533 640743738 484674113 803097864 851803595 993957187 310012017 460242415 397673036 471129866 758592800 925421195 863857712 916419166 578324766 766677027 214652036 842460486 792872873 952460405 34101659 358465092 385074695 572873582 257144628 663072493 66550125 174196813 45479788 427043809 267172553 325773880 556364338 753355202 911380580 933129845 404776077 853402899 480317973 499191415 24032709 964609128 91717273 416586427 733173971 915585347 720119165 729267611 519290406 924124078 947901184 975158118 272396101 612243257 353996828 373851145 116704492 787544598 669069017 747017042 519626993 938588740 677328005 680382978 224021956 856407146 948326021 971241397 553907694 781578180 707625008 947911115 208198593 942297401 310398479 991752065 392432037 640299031 91517729 840213363 64189381 348967942 805243510 847627180 944605844 947038853 297750027 465015678 52008341 717363784 934312220 975375882 518950478 544256052 862765135 975234506 218124900 238296487 246972391 473566172 793242232 901896259 575042933 773568650 911163295 959277995 588198072 687434307 139669380 463084785 809377620 942381824 239734773 634370164 910841428 961363482 776026828 816051113 991318689 992545083 737692502 900563097 741390673 807946035 766318221 984016186 839195908 878823378 59282912 592069991 853701043 903542057 115526530 715390668 759184083 988469146 502916741 810193363 434737029 776927475 324505527 792042315 853608090 992677798 126401875 680740939 546657492 876854572 420212180 950440684 775494608 797519290 651831851 710648268 253149742 267747859 211900220 450484847 388139080 664509170 664957555 793609196 40963846 384914203 836603262 842666747 253357036 728038215 947462456 968545885 363361557 560561384 695411100 866291561 33812874 90858665 838213526 979926509 561969039 689163355 10471988 416775676 335346721 686783488 534443059 661626047 475624570 677268790 117201298 605134288 356203969 496154056 931324369 951984976 975373914 981555096 832530766 987769531 400357536 512192201 625491342 692114305 968481815 992192089 739778110 841193775 15246580 121641269 38080651 453536139 268044483 402649549 874169104 980577060 779748370 966775929 903009488 910227772 217523826 595064828 325542206 948643704 537708274 865392239 363646237 364269811 953914400 997295244 425022348 621687790 256534850 919791783 729531152 765483922 545002329 891113132 302969651 573025354 194900951 228761529 684992420 777019320 416985786 885861565 687823214 863934079 173682258 439314266 129207835 304201887 123848839 414500239 703453503 902781653 446371732 873686972 808074278 903480309 615076882 965945205 219347934 392416535 20112289 625255476 559799799 827088963 288958110 537611583 795953672 842030473 402272492 467481540 835844249 872859314 987806939 988432947 232922456 551776934 106651884 678224286 97127289 127022083 317922837 669438180 786694139 810534659 434713934 603458012 114737709 348174755 188480854 311114280 1824007 748620061 605574229 955370504 432746228 620868407 156285425 782353342 89713294 409978072 75888057 167671683 623921464 703732249 968015380 978606867 80855017 344353529 834930619 901364283 289691182 335662222 23688153 601926512 277178100 639966499 969673847 985414097 86554211 289762556 918344894 965812598 993566952 998784509 695251643 721201103 508901076 598859206 95106813 944848008 466248068 718393435 236798284 458095794 842238147 864175687 502076197 578902563 190041812 835810656 323812759 612869917 190873143 785833668 800422506 953849798 356866152 399225451 743321344 781024336 634578800 750878391 587619882 950790571 814112142 979744451 571744239 618629772 605781911 656693006 197544260 802537902 263145909 947550638 204919091 541187825 554667824 560304674 604503679 658554544 13473586 798171561 417698614 649161783 565075873 817465371 891999638 920161929 588082704 786796553 837304915 947749677 584414040 927608185 710450182 823492759 855359843 977899558 201532704 238426104 636608672 783778624 875809761 964710883 20858823 463874811 396976219 631508997 623842412 751123433 762737222 930470442 773461937 880273570 111327438 217272825 881170624 931210768 463434751 937770905 126577154 491966260 905416418 936901211 963512325 972356510 210621830 718227152 285560898 494725095 132949291 487749354 60072944 390387056 516540342 554243441 212914845 432066101 216944912 263819091 386066759 795272993 911366560 994326258 650011782 822742137 758121181 917809082 327418867 935108277 486021530 498701029 784074884 980377067 377287023 558132267 613493490 971121696 180080218 738758225 329729084 362382083 488805555 618759023 162837010 388810833 648373182 862836893 933759622 944632597 402113976 564114069 946820495 993620676 499623293 542827125 769307294 785578128 316784213 465879943 897371590 926299412 691871346 813568343 932560370 948845530 297547931 644403562 23083279 471663868 512637245 815250015 840786070 867354605 586398240 777070776 263037793 891924225 968137070 975781833 547589925 569494742 419434713 827480900 529721645 619940960 512566045 781943271 228040454 918686667 993957730 995286451 302077572 420217572 19867043 979698597 908006299 977385096 62018758 780535115 118164907 417059403 152656924 303446386 468153355 687142522 414772351 962253860 165352004 559551679 974709482 992934865 645345056 687678613 357905734 390971702 126448816 177361254 798168581 824407307 719627966 828085500 113407383 351378161 20395857 366899552 467560108 825195362 340806230 881838150 548925350 987430082 780479818 789259668 977905989 984315202 419341479 806049566 414951642 745053442 629254774 796178130 892563808 990026518 842891397 891808223 69956450 988589645 257101619 352616683 383867646 804467507 839643063 985480792 509247391 513819311 979966999 995980404 299129293 321352275 55826048 906333269 317153745 681067847 191897158 982553087 749246944 909228921 78083212 322502378 174665856 358355320 222126460 656541225 632620180 925073692 888470995 955538997 608414372 714307642 606180503 901885230 413364746 625585015 24375233 869066302 630381621 724682736 62962282 223362237 783210077 974138894 513987995 777538537 581348821 764555560 763920406 859524577 997825671 998205233 792020067 993712967 758652737 964487787 78492135 670967015 277576429 684407124 818116470 947437166 82404386 623241376 558563222 661394773 869485611 926224773 572499856 712159449 671001507 822814022 556583677 628025664 507230898 845448973 931160465 937336028 233401611 791581561 601799322 983024682 940126183 969305580 876029911 902132595 799521422 946821026 112109217 613032613 297531055 440533935 341035077 922727678 6496264 361332009 405292688 444641469 792230233 890381976 632683362 671764869 701183534 725521713 11291266 27086866 729749229 924918953 900586832 905805410 492155842 815608464 243778591 579741090 195743468 251247932 996557616 999169340 666480994 684629134 694142157 928183851 321080636 417009882 113017036 893273941 813576928 997836310 979535297 979879007 630957974 832013563 520879057 600786566 886804724 912892188 649183127 840661907 307930246 679541678 674303401 707832293 849079764 851058518 591286277 598844855 808916790 954608653 448986748 635752385 360824292 481022848 30238878 557258658 926191369 990660897 941164899 953177231 845897178 864693149 611654420 628371353 851153420 962804691 880876586 982003898 814777494 836998570 30353335 383086478 718852439 882138982 27812461 247765706 355055500 984698498 658070769 862704803 32606301 873090824 118133926 730996317 529124597 570589348 909075969 970880180 769807553 795319113 60799545 444585473 567160849 700689847 312351266 975326799 604391937 865131744 409683444 987083973 354072201 561798170 908925507 942805057 116912860 786915348 73438403 192911570 19151703 831931772 290579288 824549873 339665222 507100670 556933989 931753082 930855815 970585922 688436669 955778249 869981225 974946417 141349006 928788729 86988217 696158593 472186724 958188553 202617355 982413411 132877440 137509908 64002062 812544692 336759113 665156767 114520788 890612144 937115868 978313977 412643441 965041847 10694380 214436854 762120558 836907184 257104212 463136967 88365078 517098832 778559722 998079858 321515660 998638452 669830152 922000068 275665292 486091746 509478101 586905248 7554798 761679638 505339862 984860194 994509854 994623560 972455662 997504257 364588823 835586473 720766222 900244696 924851369 943576481 656300205 913010569 411326781 530978163 747469986 767985996 331786270 965251552 117667535 582426064 514892741 862813749 72296770 925756118 78432262 329397377 646222167 749214173 765735572 810573733 221296718 867607463 353134193 989091262 352418334 626638967 447817080 579107553 179978776 767292975 405478693 618849624 927293656 949678371 548645707 903656651 731589544 957176768 858845028 886784306 191978946 979377529 312346627 829605582 338014138 896527805 602336325 997449586 640984966 860837809 415551159 979539977 829636111 928350981 433674196 470774580 804328339 952278830 5097221 185593890 771402589 907150648 740931088 742967574 564056910 751997119 204103391 357179525 676536000 941972162 965854752 995540563 103304225 146343964 757254716 913651896 294280177 312484237 75945734 167687045 294730624 800754587 893496879 955156896 748022802 759064702 76031101 720075485 940074407 993100008 938969049 977632435 721352839 985893444 309754159 447076032 37000139 632776109 246992392 446791352 53854452 868583474 521420337 558110507 97783620 752792340 475627724 968055411 248028293 588320779 485853817 669479364 737519702 912708044 378177525 518270110 406469253 583100590 262036741 352310583 606565256 897233544 760801090 962602134 233258537 608444565 782492165 862057769 810840727 952173355 393489711 609649287 254807482 669970502 891051728 925256807 205679620 874208237 641239041 859858333 339906280 705418306 633520925 680447400 566739509 744339159 270927291 911296669 7482687 921517845 347927840 565934011 46708335 656081593 234466233 729748798 321771859 467469871 866968794 944977448 475700679 793418228 930851278 942574262 66932216 906549657 73321432 244202289 284277367 854708312 557195758 960919556 546015177 678434400 349667291 564225377 387077316 814825642 934279538 994920982 481074112 495410438 648416417 695299763 421213930 631693958 872575146 994416579 30855282 664026392 984840828 994035182 577342209 953630852 300910996 502578566 470504719 800732103 765226485 866936627 447148783 905009427 655516155 789897630 412325263 849695479 481554993 781774095 432634787 564970043 517504083 916346917 357526357 573263245 463523040 943698335 199792086 353466206 82796325 255075429 645736793 894152685 836803606 976036652 301125705 930197338 245733301 937283265 98815965 834492961 93049654 144707743 755166290 949150463 978809731 998631287 700239734 756138071 616967208 956264188 217837445 325354180 384229771 655176439 7578211 301226636 623644180 959464655 126310965 898155458 988245132 999265450 844826898 874785360 345984966 783579973 451633229 538203488 708472772 915229201 270405087 709988347 347516525 710281359 186731497 504512520 539115905 760263498 33535726 898037183 503059078 662284350 944314259 997753563 354497456 804087888 13660818 743574793 416323681 836455834 787314130 925659824 970443355 994766334 169763057 627009653 413595825 682361349 249135321 965260362 334283598 371892413 818649868 821222620 353621846 464525333 776986746 858818378 323814910 816513873 914119602 994352901 698808011 871149969 405746740 541068808 584372774 867820671 705456780 934592944 232754147 285458711 221470086 609185863 842379337 926757485 769906021 873372782 881211673 915353310 203202788 211658930 259003741 896860916 318122149 581513694 667803902 856337632 149306744 753335501 642876033 917475628 359739378 596349437 78467135 687971895 619530214 652118469 164881013 623796759 145910277 722131834 367699456 915315735 349154265 814902361 810101542 987060118 855694063 921843852 197255463 458469105 841195979 948606240 35550234 260777013 973293056 993343397 733623443 960381397 658288148 729938273 931627299 941450259 604270537 634564591 775529289 893783026 749320969 850006100 308669082 323192327 286510384 683214788 183882873 874981941 492495970 663514054 948572289 978683465 400316615 837930719 941628503 971522823 735140989 777109240 31956811 948162901 195665842 303185176 969152278 996660116 189877340 317009091 621428651 799035577 890537338 971718927 122773552 865402192 498953 226651083 87927512 552095698 812745674 971780820 884865611 925403643 628555294 979194685 691149814 872641979 911461043 976983669 886635159 962084669 634273042 768479076 161374439 727960347 654709930 710733247 953621320 994356148 372565052 868866685 860591642 922210730 529681064 768749566 906424225 977907762 557438414 626466249 228908511 514578142 600083950 909417780 437580042 451819899 789011292 851646063 261080944 763195703 126607389 326585507 670853859 787515789 225634136 859128140 706708652 894193280 844508694 897541854 455354627 851980179 93095016 797370291 437038792 488336002 184166262 849621122 768674115 774291899 296635957 359665033 123934725 466345591 512144595 907677933 90963376 479024431 105170309 935240197 75072503 561810098 692594886 875075701 742428810 886436715 123749052 982032653 251120070 898128873 163284829 530108572 470980723 832730781 58954856 640436510 358654330 630183224 471122787 645038236 61946615 360313743 529309410 886049871 181365283 199575822 236320908 244836352 356154606 427410918 269090172 632165772 933416697 943889137 132248678 456225085 302658392 835791763 860362693 901947266 399221323 609000391 173481401 964705613 623646953 784252145 298155236 913719771 640547535 987779468 382559521 996775415 762147094 955749352 843410750 971042800 562360663 948721717 45405315 947077776 474719087 709166176 795694984 900326500 935831509 966168875 94797826 712085911 226431652 720631405 710948482 941358149 291609083 550053143 697151720 817621763 657660225 762973045 746286515 790850331 202076776 491744788 482008067 787995484 374983127 390229792 72653713 391884762 937974992 996952220 373085333 529624263 735648894 941906612 896323527 963342770 626979564 730713281 627065267 654894815 938011587 946528402 83726892 987691142 842990791 867046178 693991968 867780292 437980446 887440426 961203026 973885445 644179675 881832125 113854172 970880459 765193955 860017727 892803616 908840665 758814406 765107441 8472763 428689325 522332481 658249869 811862846 908228011 648981188 666639092 790350587 902099583 48005465 187589341 711617264 998147014 764418916 868683572 163779568 396657314 349071734 696016963 335025462 439407388 358462263 707296501 425589537 755563427 541650855 741949739 849751051 866401351 566703455 654415261 580516541 959428035 43887685 114596192 547817032 914631394 124619379 931097447 572630176 961212562 903490774 959672896 927679375 963489475 990288276 997978831 142641949 851506842 29765948 481054040 800928213 859897135 10473226 388032524 184742896 727056391 885425305 897329082 633271142 696349679 862164327 890687861 15235345 538591836 627600545 906752325 14568072 85618866 605465569 632477487 62174330 227899341 917835601 962748729 183826392 867887140 945079533 964228497 887589662 974078646 591017264 893903288 957832713 991721404 467046833 938339336 361813820 970211063 354492744 435448392 498116107 760153375 242708720 298120433 28950389 958699070 403933046 819151614 489821278 828790040 439926718 731515616 992071123 996144251 459899264 911705171 633066211 820571771 356637567 619411146 682386689 940086748 442914388 702863991 605763793 666913497 763608444 926142179 586564904 766210795 364485018 392205199 514391702 771702812 68910860 835262776 771576112 778350978 720719026 974880611 151307406 256377192 58250748 742755918 960882927 989954503 298531755 632838172 37014021 944515910 332910026 384473520 672298012 904582954 441822663 538928100 770379112 951246344 95560537 919235738 307446481 917806755 996009763 996820751 458713607 567450683 315590457 915031734 89903849 436687304 564665471 635582442 358453868 875519353 134602140 152863312 817724617 880029519 937160874 964848485 351064096 359314608 522459173 718514083 648910827 794578677 108264234 823122241 899671124 990254539 497768204 788318905 953122276 997457781 979670042 993324060 754747110 902637960 685960052 713277625 590505060 892862029 870383269 975034568 770454005 800340074 336719656 466878990 123618144 863141127 457991688 843469138 309462733 581633236 222675992 594749690 435926507 750351587 277933349 283350883 558669371 862836598 803458940 936748014 27029480 850691849 757117818 836262849 159533575 199083387 81643061 423581292 799754028 873512325 843666103 850289643 934473634 943806781 559618644 923359554 263148660 756133279 936219865 995454933 287074929 432087589 14027578 697262146 642080929 650888677 291395068 488319465 464700326 912007356 63568613 838932157 825997345 987161931 848982162 952726482 326627495 811615011 98085634 729080497 695239156 947997948 372936819 868277580 11175018 440226166 594874405 949778745 599772341 699664943 997969552 999748281 474233696 868969703 530457470 729394834 60869581 342185919 809959165 811938946 995926955 998426423 86942005 662219039 264615765 980265710 606767353 718335593 869049278 944016077 37694038 322359549 475267599 631261761 395014579 587913044 75995241 531393169 725812926 800766485 259888468 880785275 250041588 676579026 414606635 643665963 807510255 883822705 601330048 889070061 611473385 862105732 262054226 508062024 326866434 336254673 172685808 913154277 745621424 935573137 381297512 941011966 514179597 729611462 357631161 932697958 177233385 231101734 834164548 838936767 661078425 980796199 359808676 363504216 441198626 692564378 157543180 236834152 439280524 526467850 280495765 896292779 725997631 965895226 464687938 966428941 729960134 982246418 94551348 240481911 832942112 916423487 141260356 499305728 977250201 985868837 35536639 773955054 263699663 739004498 721062000 884119552 688222692 956478148 925297253 990527119 67500556 237487483 346223322 694631730 401918676 999745541 903761884 963496950 469716559 476123394 630012205 766319575 773419284 903590097 886537684 980540678 220164891 628739238 72297063 932199389 414456966 696813717 558197938 974049160 834466235 911426875 305013510 584672730 162560964 745874115 601251153 931919900 600112265 750313801 56204252 268958594 337283269 869252887 842042564 895169347 777733227 887446761 436445524 855321199 766714861 917049376 881899839 889129975 272837845 655727466 412368904 546442293 945782344 996901436 573240269 989612086 226160664 646674154 431224913 576721604 227544696 847359506 530880145 783888961 306313734 510510837 885568985 992829685 874381889 937066523 786572579 919504031 344102823 682079849 87065432 535136338 795728678 885946680 173538389 190216754 38148084 962734341 806107245 888598056 627302273 772447605 247749340 608148003 259939733 796308075 51222892 903933662 42060545 863225760 94553270 749958629 171258375 205018349 863974874 925967466 5659258 592459738 587739601 722600609 329726469 591299114 117328664 490659006 474688772 599172006 327647898 452665719 555893240 878600537 4693604 387445075 509169771 838444194 159944639 338074952 114788296 680609259 308545076 790758685 40504672 760441042 582796355 746325554 858508895 965670499 57465490 415573289 683389961 990320354 963189132 983901897 271893749 541413238 439749662 690481139 211060983 260642555 879323448 908597175 212073594 370295976 66220844 431984693 294433399 309996229 334918981 555406603 675718277 702894121 23046279 250730522 906861219 993649146 149078303 712254202 5822045 934073883 627456811 815966520 384957524 814494410 149601074 784420859 223730954 276814957 383012162 768110469 359640399 492005916 794815016 917214333 117251657 765790225 562894381 773709320 100613472 294863722 407306810 819355358 426281792 522244827 407497316 599851104 164335204 911652136 985674622 989370949 814202604 999145213 861954929 879308650 149929444 926268699 58671523 966672810 691961626 861297265 474846198 895914421 708207434 836817310 121006763 385033662 69898806 418635212 90123696 102794475 914609956 920260935 444136571 699427211 828558508 870735834 262759216 326108396 536387496 668814056 184141738 964220104 112954927 180991648 808187896 868621989 222882987 537691154 828259355 977388023 60097259 964282301 773381726 795288888 56178576 251308018 311139 478657891 264338237 436340373 277779010 746908799 369224558 560297548 988224917 992999006 955174337 984703273 778547414 840078321 278767125 467367709 211868604 816026230 955418929 966087172 767359245 883191269 445651532 934517630 819709413 834923529 665390115 812736585 953976791 964594444 509358466 963319182 81221758 860434796 872801469 958829113 83950683 707637319 194747924 680703452 583995290 867870249 88980510 552770800 191640382 750104488 272234779 824554466 318149923 410686043 534461675 849648495 116655647 464808277 874390888 991193331 517351916 990800414 275602675 403903110 775647825 933085105 475347959 626854691 821835883 940987187 958637518 992200569 80821426 449299505 359917030 693823426 503814502 705397561 512394869 591872905 107647832 275334507 556258127 811349815 954735527 988612557 18341752 681336846 78587443 674971836 928220006 986916851 171436878 694655754 687157506 992767524 110362751 369214342 634088404 862545550 704740775 771231730 706782832 908722269 868744738 902597299 95790309 610347017 341735831 402530620 362030677 615186511 398032417 777515873 399371059 528409121 940272675 943620873 608431078 692152986 650537334 675783395 518256739 954324176 4838424 824463973 510030390 981776810 631920308 752329110 857786258 995726768 896979979 981793761 510983662 923839450 966757977 979426098 178203759 357519371 883017998 902188626 653166761 654134000 946324870 998614257 105247844 234397015 503346777 940291215 589228853 823435600 228979380 737677721 802160552 874659708 425098461 478710228 462835571 526376456 225293375 524605829 897830232 937010136 283951250 947064550 389334176 887305692 833331413 920185370 264932662 755567496 943758296 976454589 989793148 993930577 371506903 762687827 637846697 692644290 376055308 864064355 223577739 409585473 154292578 832489168 128505416 460238781 154887229 462293369 595423178 937940096 778427439 856189126 614203490 850970544 291628048 934714940 133582097 772591549 467409383 788508332 464852036 696534005 863330781 965949297 556106580 970618873 375122112 909578482 452865641 569790705 616055310 685712498 921613487 999482758 636060697 914535926 476160888 565054478 5000145 613634132 407730174 446951340 814556909 850271166 678928598 801510588 38970504 832718558 984515289 993463549 86995189 541202094 386732332 742659404 677320876 732268304 50505698 252414951 421265861 503200097 706425974 938909030 120476280 524747510 548598529 837901230 732373223 919060087 101927594 459806041 874256518 999694443 975033188 995268733 548587403 740814787 444352792 468153866 117475722 142936249 418524134 515826056 987604883 999135257 210100544 697282560 267211108 308144947 90109490 839685557 658280006 766239458 836169417 884450570 364898682 695614969 992270815 994500090 626159626 949767636 938496425 941978333 738291082 945663846 246225350 686552175 171077248 799631923 727270099 969496736 585512052 995959970 606505970 808906059 391399084 618108105 461324570 581743877 975306487 993426095 356519422 538622139 540962351 543488546 982086779 998421467 280833405 843724235 103210044 872829392 357315844 479588265 514824985 750126124 292357344 768298592 558365920 940287174 771894812 792406217 727185247 907106676 792345295 872050368 543217914 702234501 603683651 722249257 969234168 978309500 608814292 900592234 849791102 904928658 615709520 911134446 373699763 545318725 808847632 842355282 345910534 763337774 42403301 654904294 402658169 816475774 101795254 562155991 126589634 491013060 754466937 957374680 56950840 819228918 917800167 946065613 355333111 707537567 844664253 852900746 284041852 554064821 888166337 977590721 713904238 839881050 330929200 902908858 349149718 455807988 189374042 768340908 802370587 929345443 582858971 660723429 500684883 927337470 993944948 998320934 966303743 988279736 87675828 377316518 135268949 207157885 523812738 762102715 58859446 248945493 32849761 158034061 376233875 810105768 292027192 536648684 280744378 430633430 797894213 929521902 3867530 602599632 623365047 965238708 980437730 989446410 271077480 583735043 767849152 837106825 914777824 951146309 293351441 440555138 257232603 585962998 366751052 563619787 634314564 979528904 729350950 924752785 397134424 464562804 192522258 336468228 640422013 997660027 375531513 711900112 868057545 970268099 52561829 580739809 248324177 482727522 383650026 384869466 150452272 189135785 176635264 502510273 15641556 689660600 917960760 943417029 75164084 351410430 830426550 875657416 996797246 998234597 751728885 910510764 4207006 309008548 989414559 996406460 419022671 610310526 260322395 791126180 75917281 92004472 177781479 526782483 198722967 357349349 949654332 963599855 70491695 842660051 522062371 555749979 61788576 583901091 539590479 969800721 295571755 858403600 991847455 995706345 250747145 640249226 715301219 955111766 633787491 718680714 338065315 527394415 506360767 599848842 315349244 403497334 284847216 301158174 762651464 901668015 980191041 988338919 592631627 641801761 47688091 955248894 442843883 662876955 197063019 199695564 16756631 806479121 625403278 909602884 663502167 769544767 789468850 976776965 181824783 854183586 506005672 723643126 342782442 818904502 43441645 741882371 150766738 495416865 636517307 798605495 202808754 367773952 936244113 983593139 33390777 232177266 256268277 958282181 316313248 959517749 750703805 768526551 408338371 816438761 89099851 602535547 342387126 871152752 4705321 606615898 994222704 996545025 869926490 878765172 299982865 359661016 202867046 212787262 287325899 833512113 20586148 917486356 754927968 865308549 883551068 983135099 447505727 851609179 713448010 857357197 683846922 951857329 221360779 236620718 2506045 38820761 428350450 932245785 147949443 894330017 450464351 616847974 484630719 780205437 849461327 993245121 402934954 722004457 282904987 994677526 963730890 971929662 461730516 998855864 416322197 462642798 13779099 415173616 676769013 943176897 485322855 546992192 577684623 662263481 634966948 798747285 441258601 730269336 879373392 992954310 539111853 713428112 719328102 844983089 266067676 515561696 863683152 944758573 157575701 423278642 695100552 817996399 792353104 876089425 990176124 999559282 604738845 734534713 75362968 894671883 837466429 843116653 211918212 541176200 797104052 984042349 833776780 980720452 274553559 699880159 515001702 515492607 669240769 697501946 611827954 798029217 131749712 889934430 351953777 831279401 201033168 836788420 656031290 917492281 994393145 998115543 363360416 427618036 828877478 962441815 94054970 102559505 341085904 564302144 965915201 977976711 497172190 984465123 605511151 930530353 603555278 985441579 429320231 968854351 817634295 950827698 480120925 782262283 494573498 772649926 534395110 736433186 878996517 931032978 160652311 935857372 619503284 874729210 276953429 969742969 308328844 605932515 617493774 813758499 322524945 680242363 724034778 929212406 699095684 700195831 92993350 386347100 102344583 812488011 496412165 567960673 635403017 788795826 880344811 948937743 90295075 705766454 371507566 550480600 486269891 552037362 260439968 559795447 434913321 531035646 913561836 964414393 879019770 907365659 411962406 992969476 46206678 743760740 640972160 797679593 966485731 985247481 942811631 993372492 915628054 943325904 944282179 954548545 794075216 986743427 909317563 956606240 762335347 955331731 153855985 170639214 182442779 466241867 519615115 696480299 146598781 678883159 557518881 611686267 894159215 911462890 240598859 848987834 870348036 948841139 522836819 760990846 3891027 571594038 954768336 965526574 606837727 648096683 413421448 573646265 521523561 661638329 188641148 624552164 833769689 922299512 643352246 751287896 528883690 778522709 755702908 757101744 43392046 562224771 209001016 999909814 25875044 816106944 410326252 580000681 823789005 937353254 527180643 575865335 203418403 958925490 711123330 987653939 855794509 917432902 338865202 785916243 940795679 980712887 283214591 828150643 52965223 726586326 992619300 993534352 537056931 786565913 291451329 310013940 944447679 984090138 207908161 235355060 882131336 963993225 218721453 866890078 238002820 807572045 810079505 882504480 185437844 993944427 678827131 700243446 246372251 854992170 853233410 856273443 419638097 924514441 7933207 257497923 861027786 979751237 478162786 558030649 473635355 672365756 516682705 897599414 266994203 394853529 938412923 957617901 638536311 951984651 583513642 944665584 513456675 547241757 447837175 487693234 619264128 800810642 426694513 961920850 506462334 605543537 714704087 839119191 301441862 777788451 71928117 537172236 250023976 940176134 105549954 480214129 32557135 309779728 350464634 460055633 860954831 952030273 76803850 638679861 548917103 841340937 834884002 967892645 633948664 760135265 560802233 740596931 544479197 905592343 180680195 399547539 261085142 695765986 315982421 617124691 286508568 470515139 944544816 970161177 66650795 514358126 999222228 999462797 275928521 513949106 284219135 752477960 455889412 869152649 573237283 778749603 873268698 991794737 353564289 954106433 963698242 987787452 580499486 736566277 217739761 529498416 176324473 448265283 105986349 270801492 99925397 154093623 278340436 300479842 909289033 934010809 271324088 560538645 492705331 701279977 512332968 917770965 989507016 992801860 63733725 514977305 384121079 722412907 684934150 706549914 633245335 700452322 91829372 782292501 794595475 827883594 250413303 808919014 495326623 706245094 538963258 998079811 19330792 586548593 496981887 763260980 664284627 862760887 585064007 671853799 55613690 995418981 747970729 832003482 86438041 294742329 875139089 892273491 442806500 947087609 466918404 553392600 109679451 151959886 171211199 208379912 16062499 989901670 481023682 986979710 466530444 555736108 233318155 927633172 198886840 373449745 619126061 678008872 935098182 976690073 916023556 998084760 574605508 991348547 57783589 568410851 424967782 942633825 31010592 368166577 679103474 783131509 356499690 591111383 959268522 986983357 713498058 947657682 947718179 975286622 568931484 619083060 531302713 852108859 240780760 948530790 709048415 890231104 452721350 771626911 330982295 424815477 82340175 693683462 548339813 741984777 962203722 990102554 863239375 902766083 248920233 662025172 78581999 95704221 429291487 844127461 660888211 972689519 601306919 996312957 157544965 578436863 245494754 504621098 886098628 940360177 397346270 778163772 348560533 964264893 762628228 864186575 549961583 715371209 644144334 776595817 361805919 538270532 86909309 907435402 185851249 637321798 596260787 664331811 577935080 669784929 217585493 852775741 662998764 741661834 169115710 718043143 100019898 551880257 835017280 851778246 87930207 602161258 127555313 705672581 478534665 892912486 410588251 624287472 93284131 362863971 706542354 893371731 341567746 764396923 654349695 981513611 425030200 797925120 126592315 517602226 434294834 828040150 453490504 690899855 630728006 899359331 842079040 863428258 154073586 741682581 726539171 979006400 701040847 800645339 444338073 662471763 144110508 915480695 354233451 979422985 970884167 994251432 633143733 731255755 967240790 997605566 89934407 802327201 604371744 792404350 756600736 916616784 40948932 500757453 537272612 567852756 311487796 870480497 425139153 903983565 118016218 486192541 798461289 924683964 620140564 677312018 553439462 634405271 528407686 900726346 866848815 948513778 943284992 971674507 810454165 991762752 189081833 836061247 455515828 904031215 211039295 530562056 131908164 598574474 796005370 969071315 396319271 401166507 48260072 527541082 49431387 183046511 161207713 447016039 482145197 757792747 723250946 819976451 934975665 966647806 248459759 334755215 893419421 913005391 714708435 881302533 215584287 406959186 917216165 927742488 327319014 715977438 204973552 678921735 447150750 972063005 830353939 980766472 668595522 863511565 949375616 950912601 20076515 50903575 837722332 977518235 426755676 866187537 335541386 527827648 338437934 410306473 896490782 961220633 339959063 378115285 576199874 639616084 562361677 685064534 586374229 631777331 183295598 627920986 648302880 753091282 977291402 982857338 937367181 949981394 517129680 864638776 110115243 247151296 348522192 635203300 818545518 904278177 877809578 973817186 128585879 164669364 715111753 845765402 127269742 416079670 39365241 167195598 437700995 531298320 65712881 789933466 372787709 781770166 846643181 944813342 271234904 777034966 752142914 992583398 982375818 998332794 148304441 825506139 613957901 989084824 474617114 970465018 901090758 971742525 347733082 395300343 7500153 722319654 339415971 578974309 861181812 973848451 535771162 771894986 982742878 993141605 907945858 991311006 385915775 623126377 45822856 654701313 774715855 900306265 840571830 861322225 861900006 904430710 638874759 765602656 476207600 800230563 389913700 879794834 228550821 261403957 265138404 773162280 593757612 735426199 858285824 949021802 631413630 982062572 559963810 626553557 386973750 758684046 43639059 261667766 485876280 827260606 448305282 456407284 615693923 656038858 332850499 854546391 752545941 975885143 734588253 741681510 99306839 685453543 335204092 739636676 495457392 984788055 200814036 826476061 481001151 714297697 198846164 825943485 357823708 718416798 454339673 472826238 162846038 668434972 212008129 300521257 661008586 690853891 81719064 815989249 163314767 262835651 437742264 576568891 432805028 839322981 395257907 592409931 62152302 381889747 305491945 707878515 557651713 914662950 48393024 641260824 579004254 864879013 720145712 923851126 605110448 940277585 540833144 575446313 558638629 869912536 465746062 887217155 327585060 526494341 165370736 216099444 572812310 739861022 266692543 879123100 532519171 574826957 87057030 997354173 484556433 698006478 476487174 993464862 759947550 986853204 79792957 102113022 354226865 945115603 380525355 984974937 218354804 500519038 281825379 329379923 297869634 927152752 219436956 800401142 543233937 841840320 348978537 362571052 122106561 184662240 981430698 988673728 325058226 366096433 33848807 123585663 891595559 918290748 596466333 839655675 503705828 822424760 49335691 313796163 915456018 924289838 981071798 982293181 949550841 970165904 489213134 840350669 281463386 826014589 145848979 965966823 57630020 793397021 131756555 889155725 407831502 670432537 760948558 905350709 749440198 906881174 637518406 815557085 929683237 989430285 581362459 897375411 671181197 738714190 391085878 445593268 29547858 965876409 960429832 976200410 457487909 979643657 60069235 247870507 227337781 228027926 231437720 812065337 836209664 882039751 826854876 962408051 965596509 978125270 80112091 961428878 604774965 825494909 81150001 195249378 216797264 890973213 946856612 951473402 418063780 663002292 731683332 757222235 530458970 848766996 945341921 957983201 639048926 706780977 974357674 989097402 607760707 674120930 232604074 591289424 666414831 998575032 783715947 950685855 789976544 986097759 713244521 732899760 894958066 927268679 872439917 949786343 622443520 970041181 926647815 966909406 117492306 702064554 573012872 854900236 265674698 523633427 581900223 816464223 790708796 958368872 951314292 994965028 84097926 772700048 579293200 664527597 641005323 707478388 894889010 976578976 508202921 945942397 488522392 643800170 533809277 923175899 916718074 938072925 822810951 888342362 69335719 186463015 48531238 735303605 907363429 986846456 663673040 958884389 462343955 967953372 703470797 894981642 651300510 681527365 132903275 986135726 275497050 919621168 51253503 715376365 45021166 689487902 845363647 938929326 232628247 754262605 518129013 890799579 812255804 893912980 438839075 827451826 788468900 842689351 635876377 666435026 252683799 671449004 514034754 779957548 935321807 971059610 789088542 822072690 905019335 932227036 532893144 632536414 726380187 822290704 624044545 909135582 158042795 927578228 127728716 865005778 338043079 424106151 244634138 475314512 292095589 848646648 570492361 701995819 604496736 758089388 954581515 963905987 993731167 999540290 454198582 905675935 5619829 23042618 8981369 964555735 23702227 644466915 785432272 976739764 24062958 321858214 824265659 899775575 14451802 586626747 937119245 986551674 975162140 980680630 176146538 640536526 614283931 743067837 424628502 782754142 83006212 655964757 59156069 189883034 697175620 719764420 729335567 876668999 358893291 453256798 810311008 921263289 141565129 587843103 141900024 201153629 993278281 996118534 64243663 675263648 896269918 931861382 376455594 453733228 464218868 982065724 353099907 918071968 580598933 683477670 104268622 750126574 910247242 972703913 714307071 924949766 182023550 963240373 749732846 941887798 762803342 939956057 586197391 981512935 906110979 920983511 533398510 864807554 431644123 682949233 737052140 943104621 241938845 573687216 177737975 852680605 665156554 888801241 54372340 814454516 708407588 931765379 541649943 927302664 548822200 813227261 381167277 395541905 698497391 788041746 115862904 261720041 559028396 757752262 630904893 678809408 17291195 362464942 332330981 541668942 155180300 374423699 262987894 312608957 241603765 323765457 731025889 862581028 558469754 707951008 770738102 901475201 154339180 974024873 457214815 504619334 320177590 868555375 650848667 731859037 950298403 963193760 226115415 716447954 625581424 715957601 876788126 997780850 954080138 992654877 397815598 462080868 382553147 599133234 878003820 912270455 130666266 856443629 857885235 862153975 541472209 582419525 737350930 743486917 893463374 915368836 457415948 625813912 399142781 725437145 325180078 550928257 948230510 979859561 801420090 956433584 747946246 981212823 950779509 967709377 99780872 855324236 369839779 713743850 374949485 848623680 821988705 843061960 851107116 868387018 35513439 965131352 83108804 549604962 849895872 917605276 559030338 783434756 680765278 839453108 513412574 749446904 166134761 313297900 707650441 920998591 700836680 743327708 135371284 662856727 512882376 660926468 587150714 642023325 350609492 961970667 105479171 523673326 432130353 514890100 355065086 492315642 119071467 629192721 273994744 697449000 316859009 953042636 872535753 969565403 231968089 842793821 489337661 655197423 259331636 590377385 518711890 763164434 220256672 769168235 596389692 903514435 145172634 776240482 942540590 964186354 494394179 593092444 267681028 533873882 675573117 700394514 478929549 727429132 340300468 665273166 313916796 663732388 597150144 678777127 951621190 988617705 548249635 761569068 314031086 613186192 924871786 932801593 656188256 716729114 481211549 909013764 502340733 658447275 697374662 836071548 944876511 965306722 699241306 707764717 449548000 800434584 966109713 973633878 922727422 944937719 526577717 793323094 304219410 970566831 996255323 996485087 631186982 875675237 388751025 719515764 740242509 770465022 816434039 860481166 961133541 993729428 479032736 727303524 110042539 805686554 609899525 628834817 810368738 816014255 228426133 716060359 684697421 701850333 360820677 571961032 503337782 662734621 950870426 961985570 935154690 962271611 642106885 688492266 496613076 625478133 983730093 988292700 493686181 878309521 416193768 976268663 648097120 862147085 477364661 951020980 273647733 554578450 535442070 883448561 492427752 538420756 200736470 284742461 226182333 969143318 687322007 948659144 392136970 566651090 957592694 990915315 901628002 968656160 404308623 965028215 534735065 563818340 896250032 949835392 172737446 232477068 55332667 553983646 597810490 611508051 861547912 980556384 836699111 991537190 614861138 688044501 242829162 297434006 705450123 755590381 493627205 920257961 136000689 646070789 95539086 288085277 348188007 878414834 200095088 349409124 428611057 665663978 615675745 617321548 887155485 898038673 929294959 965308302 781021456 897871586 767840196 918501356 576563379 960931171 63508212 962004116 946706489 989746860 803014770 878664532 916253937 995197336 110774389 907408475 852673432 906997929 690054774 983785555 629607498 802669465 154718970 775848848 575996259 919914572 311013983 418814220 907940334 940927874 393196921 828120788 109491761 822236425 865091885 947507075 867532436 950719982 493946585 741976357 912109624 927877061 282226862 468356356 935303313 998610325 661508727 666257529 256971781 882479457 130798070 542544681 608116271 949547173 163875637 860160209 562251815 594282080 577330434 794399145 82418584 497221982 595778956 984821187 58852601 545241212 679865063 898740879 378965753 823250940 1815345 754522996 778952105 927520207 113221652 395196639 617231438 693479006 564220111 732787207 187696313 836360564 270067233 752775026 653989970 972125758 410358756 437102356 1207163 577484031 385230278 565142450 269913812 929762114 577587744 785834890 725137955 736394423 99141398 123738856 713693735 884808579 519135295 815145244 347210597 955357419 556417675 652409416 420963407 492794403 278391634 416984304 484433933 519340233 426357048 721470255 191186665 509903359 955403885 959028148 26746865 332393342 193627877 890034387 711454699 757773484 691730712 699530814 527354780 736203794 162617656 743379543 972232644 981669707 201574946 227961419 912887990 988614148 145730182 380555938 100070143 471079871 167544 25523946 9076699 693688672 151658744 863849088 581672765 936142022 449060964 960311151 557367541 710912724 866927893 886024985 516837901 853385552 735015459 773803386 587598114 789707328 110229605 832206577 884930629 976858446 694178319 907356101 620289914 751560843 176131216 466789710 299561731 982862632 386623687 713948108 875988006 906702159 706201012 895879871 338806113 487416200 728994454 803570334 705944123 894190298 32011902 73647860 860804268 940215450 87416726 448906325 14671384 482194991 558345651 817008553 160648431 800027918 715707900 988426284 966080896 996076450 444901981 729104652 851974962 924885516 944164690 990677027 8869199 535802286 603626045 854817113 483898787 847312527 550031283 692543998 492486824 599153887 694886204 722879884 698617438 886402864 632288615 636630333 557427207 980114073 759031217 951879772 769510550 811897269 409947102 412414945 203383642 687079156 255869941 772585893 671501440 999769982 925259368 931723507 956900146 977343739 571408474 604660220 356749299 456078008 656891445 972192623 873611351 973400831 526678571 622389741 581917864 965979040 233120411 717141883 850860725 869513364 786828704 968559689 522238528 553321620 832240483 888479200 99236236 256495365 415294343 431653920 407015394 534800660 391122666 483907720 320109146 864292301 585719239 790379831 958237046 993297355 911267152 947144511 644544775 851091148 226219424 761278777 936800613 980811130 513285888 614612288 338731245 858832294 829275753 887113274 496951483 611728801 530951614 736510629 497356754 575292926 876267939 940240616 834170159 865532714 566641749 577923581 206114641 304512405 971838496 972000827 453192212 729122604 439604722 609163274 649763358 771648285 480250813 818700488 217927240 716861290 185529274 400663420 928810854 974149739 482742666 730606897 578103702 865642682 991060307 995671792 754031442 937658603 204805837 834350889 433053738 793103228 597127410 940353309 303876237 506718097 820147309 934031131 716868630 776885873 546682953 875672364 863957713 967557213 932808036 951614593 605640779 742439420 612127810 849657888 716935384 763978125 295138891 304618911 58569353 868801614 776138436 868487702 661428921 998640627 18632572 128344750 306143566 937552343 485649712 636295298 653333321 955218850 741589254 817177774 445079574 465125352 568394929 765926201 64747483 984858536 773485805 933159887 807585912 969837455 667796436 731328446 162706944 444801718 985262535 996342038 523374037 799729195 31793151 816290013 407045490 461795168 604663417 666916822 707714694 997908451 166505162 777975825 138888036 176471904 966692890 971693196 196824934 509936273 610726721 811795267 441735511 444513034 651544525 834223886 72157991 872181876 456015192 888266889 498857775 530955411 592977179 714306453 103106763 169326271 968309781 979836082 187450843 867348640 83993347 759458900 98119689 340433252 398972571 930705086 10598148 499608551 377525128 643947217 261978345 286162339 403602137 483921069 705839860 789915257 996840398 998658886 537158574 962288227 559826927 930661606 441698528 580840135 877774827 952488801 516489546 675258503 509979671 561984757 539672985 988728880 234094580 883676722 261339305 602458556 770954248 782480161 606642790 833663335 772206984 974584088 255162379 525006389 530338759 914750113 385855874 603440395 644616635 977546380 774854414 940312407 703080088 736079036 162271657 284961925 64486759 899594453 44538739 90968441 384986905 520210557 240480733 422914296 967555294 999323060 838459613 897187217 569755173 870638444 163668993 607902350 58898908 335940880 994116819 999616297 440302269 808441863 840065058 941272586 764550081 966993447 345801557 816347698 904348636 999854661 694354392 931001254 4358198 932388483 541077174 933185024 967326620 968044964 271481793 652297639 413175434 761380868 909034819 953817246 110501684 471105623 234226322 276891706 587701204 737567237 733018546 844103237 463084384 955475604 745659136 817826446 629742953 874572589 331555457 620604091 859945703 952070084 673454422 976693633 376914467 734265755 420117183 938701283 875989645 920449666 264036952 687826311 609806712 658689851 249765092 667904156 926267644 965623021 496101144 839562983 616384911 821390674 721022674 750112268 461700132 894769151 554086617 840947667 686632712 849390624 553231480 721955742 186328433 765439975 880486346 908063032 593094341 884719130 551637492 941770610 571359882 729627211 385911766 985545459 69530050 590145583 485257978 559941649 624693138 904414777 34469437 117215607 979194666 980888272 692331976 956246414 736791570 981195333 758923014 825489523 237604094 516876956 426865151 454639515 834777175 903444893 820259307 863718804 151032447 605711864 946013050 987641469 195904369 877372973 666502476 747872004 512252133 596077960 960162188 987128181 402206565 644687041 792234490 976496326 754971006 959507796 831894401 895199324 114638440 683489346 109713982 620448903 637417314 990712983 597738661 715371280 870695940 951402671 274427676 812256479 42917986 952682668 970299272 981381300 181881723 908289969 823237088 839247300 934670853 935171365 356851263 840934850 168641956 583251989 349904828 419544990 459529215 859853264 127585625 199079764 377046142 918440367 600235336 957371223 56600939 688369285 342188843 826919981 496934332 785555537 800728543 996824672 446333965 975626048 704155484 812031001 286815790 395879015 83477381 156162232 949170148 967573805 56844237 538733731 771451991 841517563 674959229 915806957 187612208 865465010 712056761 788709017 558076915 764239774 867817197 889218007 455414491 843699918 343961915 672146158 79221454 303233837 744891505 783173012 444608910 607246429 622021464 997587046 936721141 950607185 500767320 673355168 285154919 547873577 56185023 260668941 108500700 832368373 532561268 685543755 183760733 978477076 288946216 706509256 745698971 797328030 30072867 755876866 503811294 799333708 403936985 842814654 655202641 890409951 641129317 929139214 597941752 795466788 594321997 599257344 623447154 905338772 572682362 892225408 644234922 878714507 935166628 954684974 21877719 229778949 749607181 942401980 653965385 760460371 458786121 665221412 435724459 520904174 540532991 962325618 411382725 554038066 98778933 426936180 378286739 383115732 379002722 533020406 358674442 720012289 479409270 647592069 268830841 748110479 141057700 963643628 160680463 707523330 914027965 987221504 580483253 615063636 728085667 823170911 716055368 868931994 304279863 499325626 837211248 849380702 942098210 971403575 207525930 323617941 650116217 731605227 315720518 801999380 710075824 876714961 982237285 992791495 812758417 990685068 731062779 744787378 809912289 966641974 269493302 728786701 389470323 428804629 690640220 744126230 671837477 715401143 268574848 504358756 584321312 741337691 383847012 415799601 325834617 950256985 228515469 792894867 276865140 746561622 692542943 874997954 205257165 400888359 901099629 970667044 414101032 970982550 602083180 643626927 387039416 703056855 45613923 81263241 397469699 584120969 621437619 874795915 898984604 998163144 98659661 633724132 194690597 630677229 798440113 855117490 271395988 999872039 567548497 665038671 378118917 442718439 115123959 490616553 813254494 821069480 125983543 801713186 566234760 764867760 208637706 940509520 796350809 820674603 211733444 543147765 719028948 796986683 425576696 627712927 876145895 988471449 330999872 701312948 346290697 872825133 775483270 794871034 772679487 813394887 446850175 660455519 504260650 550145667 325983156 878583966 410287444 951761998 478323983 949561799 700833127 788199534 521940098 797820009 557477555 610375551 920662382 974493920 517408099 762970501 283346974 324409272 177643999 429756709 731960852 837932716 985290519 989669703 467767605 790903952 232376876 806039690 780638616 871831923 963177073 969999237 25251193 582495170 826465611 958611414 116553711 876704749 74050291 671657649 496150267 649625811 366859557 665850252 177334263 442837303 174942178 811249327 112536292 390019452 829326131 862500823 259261278 898559646 637892365 735260952 697739982 840170836 176461491 297983284 915931378 956199691 182346875 640747006 96423135 951734688 312634431 775690323 977771591 994779557 865554613 897469179 507273993 804637290 258092109 697925384 470822921 991154033 704432021 720845389 205536458 975998949 195359218 620198927 219266450 553039461 576916374 736413203 714563086 936566578 106892346 558764690 993005982 994191782 383361533 802889639 723977403 791180583 657485039 969734456 431848992 564466444 662386249 952638587 94126332 292281672 69348102 323787170 58015043 575678817 193268918 944568956 293801923 339815997 99692497 116334669 556627368 908036655 396708983 798561419 849595802 861351831 222622055 750145594 989855380 996764729 280332175 695440378 926595852 954068124 394769230 512027811 915613400 981854058 174032153 939373422 758091167 993612073 730045075 826669744 613145058 800759285 603999824 838872410 423259651 799595505 594993998 949814715 786617643 869193893 845256762 923874920 388393717 434201607 599685248 971746862 351436360 367852255 606840789 688618864 75071072 883696615 65782345 440885286 897097529 949418447 149100832 775833038 579959805 694119906 163561481 420649008 975357012 984253058 158045072 194751006 838659096 844252568 285425901 999311101 454593617 963033589 733429834 967793397 454347920 943926725 138375232 430765005 685899179 853183453 792618228 885846807 645223925 657669392 621971137 899198542 931128894 971571114 444187757 757846071 251383208 442204994 973331379 993764206 618490894 920431121 352167199 679349862 694502197 703503096 172771819 835855174 352388849 934437817 194668969 739008858 906526952 939149730 235907842 515960990 183893822 348891251 938501333 988880384 919867952 937791976 671941312 868123185 956685423 995505947 124436994 648673810 76948942 282765521 93740689 199652452 146770656 224750663 482183689 564935388 623498996 919380297 926538266 965987753 492713263 783278005 477742301 845144293 228915078 763567316 715285020 791117591 553881370 566746951 971298445 997666786 366300093 376358202 623867169 822852322 355720309 865589943 109359113 903015860 529028833 637927447 400699002 744344428 95286662 782505040 82134610 884508753 707385002 851983507 220128662 754364131 385337295 479315598 405851557 697550645 925409446 925726069 255954066 632049847 178243272 279145129 122815861 322048865 924694488 934584228 398471930 530564324 89299303 727784537 18381629 204832448 995374918 997606370 70078297 205715354 995529095 998052304 36134912 558882120 153388826 678163992 931866946 968447858 658670060 968990525 248959148 887489398 363266366 514917574 623023925 996584546 687481326 986760147 679610054 973668224 221913705 906147432 238273428 360799527 644340023 685611362 833764586 990514038 255491392 315682099 447636987 457881103 358621072 628765831 185330946 338260972 773502050 788370950 717082485 970378102 642267268 684638119 143683108 716337992 53014909 992482486 377946814 385970289 641788291 936066994 786067865 797514407 291450467 610330322 117469691 348263466 369622615 683068385 7222684 116400621 432765014 562654805 746988629 750274961 205675518 584017831 735939892 795693009 945804487 996787064 397109926 403074702 18797070 450645517 822610717 933672915 638903454 955383984 824902086 945140607 486733378 546885008 959403516 997081353 567099185 688267984 660028794 757047636 91458024 544963699 903316419 932128324 464171713 609176261 260919596 294135465 488114205 643737726 933487874 963771943 374131975 727570534 807541821 857743750 149603670 362991664 422390713 530333193 349059078 842415908 128343722 984451754 201955386 740899969 266427539 944670363 113785673 437714087 242266055 252071501 504202810 897123483 264181699 707611598 512060986 748030501 616596198 793585753 373570286 608148919 369455722 529574436 580853781 808217097 471271047 649778229 793046967 988560242 50045297 404285252 607703128 914637617 54965502 164657358 959303904 991654290 47726881 50548458 709788058 711378254 743417316 825212693 962613123 982473087 447528162 492144670 759170213 913464240 50181309 89386437 828956090 953754251 36341466 597316741 179813645 218955988 477589617 618004369 850398780 998704588 661052968 668304048 748848138 871192824 361160982 409731542 781847230 947479418 322946642 410109703 30771540 337210304 907583593 975300004 419810799 851688659 344692606 389099288 82598123 696306244 736395259 937931756 769805426 861877400 97317633 964449962 283824471 916542163 70501005 772124176 666077648 784538104 728911133 805968657 807872107 826986729 760712014 953527820 728790226 819169393 294421887 831655687 615304466 993095372 932889298 935015769 890785835 902793153 294865948 562052850 232304830 351549412 117004527 665348725 596543310 842563807 511318605 825426300 902434801 934631061 280878934 680903924 228207742 847769224 860158339 885659143 10603920 462131970 630191640 808156432 400147028 611824048 911883982 955996447 942479164 971016339 416293674 658341792 656239195 862033253 501369052 709623566 545449950 987694513 408129907 864672902 965407627 994322596 397786445 763675278 774431099 978255188 108369326 671749686 179967987 432529531 803004675 909462508 740153268 805304981 724203732 890820828 70630016 878032967 781049009 794785005 334536473 489531974 785820260 995359372 54975792 762359143 82012438 469509820 821628895 986153561 605645307 973461597 363091709 772014201 189567592 823831474 111316453 144709182 807074790 957601494 978945725 993846670 822110692 901658275 596455420 762509174 819446762 907749586 476167026 641230532 516923293 699617628 711282970 722966956 86514607 551190271 710181008 851890818 373140973 892518410 758057292 767784216 681881776 683294862 774308065 830724956 831208691 978569232 710054964 731237245 64115232 723211632 120161824 916630140 444857597 680875318 378735580 970466869 377761042 829416295 208548926 855644761 382637856 775801038 825215844 941710700 228808469 327887009 559070797 805579991 474598858 490442637 203122665 877059238 812073667 921321350 351597169 619923056 365918903 979583425 911088884 954177353 196668401 199860647 977397888 999447283 174425721 180651540 619870125 667415356 713198659 988281402 680640301 754349552 446638556 645646831 91443358 390317809 196620134 504452223 362097348 925628879 576549254 786280605 465318008 543892485 626848206 849335127 649193989 682880455 194311916 771087501 695140226 944750421 699182216 996478955 915719866 991744106 204762898 878718448 999463560 999836178 616106534 983938788 874178462 901311216 809928809 850996167 339982631 597327830 149742691 432105272 218100473 997203737 822214489 915836982 818116521 984283024 997991672 998936278 881989731 905236486 414778647 725416225 321008388 637083203 332208064 574297054 588135534 635001307 556375704 912200633 232766316 507371102 892170647 903603528 850535115 914410904 49212422 332318114 920529058 931365994 616560433 701455588 792245044 927629047 297336994 602064264 804399744 813045288 28278736 656150365 336540769 611622073 752295876 937320142 871071451 966008797 940189837 947825942 534626778 908950454 120424120 271179419 670682460 808294278 265425336 954874250 776589389 925420188 312759352 415155276 458417973 980572450 397132271 724075794 448464422 811946094 335568690 992545926 578401641 926452291 620132224 697767362 579839896 680272415 737891689 866322307 497652940 968038067 45722015 719919128 811979847 822219354 484052417 869558793 58500941 564683668 292170608 605700567 437434584 834023730 69417554 696390564 711854155 869475059 390092215 936692369 509279839 971581626 247502114 426457683 330187074 890585954 558773823 731757905 422436729 439973560 536804487 710238371 428996078 767067146 257422820 519533585 841126784 874216599 203814185 277994714 188927472 781643735 828454511 883696340 553352258 557454553 70134016 299606039 66262222 170141080 735826580 863607719 815847158 821836766 825470535 894816331 508292501 574114923 391000993 801032108 974147151 979132488 637487493 652960299 840272216 965079990 127580440 948213539 500428778 645348963 454240295 556453209 754045008 960461035 556504932 945321072 743659336 769624619 503834391 599690627 711010364 971622127 370142790 808434792 34802349 466601888 187361897 212512339 512149214 700803054 677243036 915105671 859430279 911374189 80344784 408900059 629256944 860184734 541179658 569549877 858510363 961463590 829123486 848238288 540521954 582270064 867141681 927420640 205556773 684636043 918898371 941288568 701914502 851034835 269248837 630452309 28640628 704373499 802581366 911390637 767753543 774070930 978837250 986230961 949308034 967371766 702329781 967356248 365879782 923996073 24867818 634622947 921282450 958635347 946931274 971766558 406459474 909127190 259124365 575447691 996450449 998334686 698631140 882314771 628398691 770543502 886003763 932629556 395076359 444885366 744589429 903158369 569705317 579503477 696444964 881038803 54725056 88685658 435353018 899740730 426486657 833879625 683043314 992666226 783558771 946348307 651408959 706239466 826237182 827732242 758890266 833708785 379840684 939101765 752159842 798306963 417127216 511496196 779571419 937901636 918166253 988328399 214516175 701663763 785196296 852402804 931128217 952212802 311223444 406926685 61035713 735943017 45866995 125422059 809011641 965139757 742667888 917757173 109303945 361501209 945953413 985755684 629966587 732994369 330171143 655302973 653128980 796435181 411270389 565794495 83892073 510556706 411186069 865757469 952959434 985275713 570524769 892304174 451397536 778201744 586750915 645049279 592855103 600353412 746488037 837733308 752434107 988448860 74723086 328483645 597284230 810006231 4887344 531908662 407964770 921474807 974927944 984015372 780078328 786014756 886130753 896490947 631581241 993977057 558844865 780545561 848089660 870375563 698516114 786374892 495171496 709468964 286808375 904988169 707373663 763615756 265149966 832480651 865847454 920481167 906935833 991311227 783035909 819738254 876188312 961493964 907743193 931648516 129245267 287865689 190579505 817403938 688739863 971129168 758319956 763289146 329586859 867321392 118625173 642061627 894606362 973158127 499281369 615760380 733963069 928362449 70743970 527681061 920027285 983699921 470170529 853432661 99449837 779892649 185616147 405922834 873908835 958763416 974783149 990549703 706996520 781612601 253921558 455093781 524941528 715233281 677622833 775589704 488505074 817185551 591997429 666284414 522651550 904315221 635092716 913379535 133198295 595566582 664157434 714501014 755485038 859720802 758356848 937668414 704166471 784448289 418039404 857331811 740847559 968851161 175929364 491344997 130323050 411039846 185511554 734690126 528367922 982658012 901414736 926010565 973551745 983656476 462993408 853105780 239139136 995798227 256319872 313638944 963384324 982112869 363516010 526530771 92432789 295518822 492010789 587224197 709717653 960144023 872203807 992741572 32544522 306276162 61032362 492794772 954976508 986956612 485215391 868355630 556237226 690736883 343427597 471571241 890753867 919710697 93104277 178654893 956953927 984763902 718779045 850262620 790011223 924584417 817477218 979086075 586838919 882147551 842407457 874969426 558277447 917950336 86790350 855145886 730228968 733799021 451725432 761851367 744358194 791046624 683751341 777402673 24311884 703841626 672912519 864245920 375484382 635649464 380144708 688819302 540762381 563450794 246467409 986566265 306243638 582888578 854629900 974637331 901435810 907132299 314025539 698302293 798734341 992935302 944929552 954268183 852088855 979439096 179971471 323925916 167042570 643188796 807117478 846262631 343039657 368885588 809117716 875984948 82941435 244243903 766816281 886826903 610242494 883359351 743180811 768029631 362804631 511547232 872410720 906538196 719502506 880361896 265399950 449503772 213733944 615443618 822132367 980315992 720951700 885867542 591289628 776252126 892383120 903643463 555074931 703388853 654439577 896887204 698693149 819781524 380319454 960863034 972170834 989937747 887656848 982246533 947586942 995702089 106219808 464478583 898030441 951718667 149942749 981092949 540783654 938872077 171828633 966493501 179283374 967346091 431743094 639337331 700057116 703573799 397705671 642239802 348276794 802798600 138120180 166348984 522929949 555906648 499086543 743795785 857212600 971613906 572755239 765414011 473051883 713199442 135470778 742821300 481984444 892912416 48512687 833974636 789297934 886184024 186445349 837576903 996376180 998585052 848301043 993384115 28026929 847732929 522342170 555520683 374997032 677315122 720180991 992572789 131585764 760182622 526825289 832993642 283154181 347500992 497758984 567469394 28549071 652694244 672537559 877208519 943366133 983851061 837356212 878638423 839359098 839815046 292511305 484232468 198902484 725705950 518874899 632235243 879609664 899998273 338336026 414565610 633252003 978123799 700575034 958796834 606328942 713985542 103683881 159179304 815822958 924558150 496077315 830779482 876789863 997854371 985580238 986895944 182110795 250640888 693916962 971595850 999365901 999422332 341269801 602366734 778169538 886276258 456089095 636767191 243382756 967073042 520210109 934634982 41986760 705209353 812396396 945449172 944588290 979666007 74441985 904226456 719387477 726051648 385815875 835510781 156610498 666395378 672189003 850702350 566147670 891590087 423761988 647778142 53329881 188214802 698422366 794876771 475548359 791577265 334497609 902254654 533598789 841463178 67082589 762479870 337471746 960442490 283646789 441839213 213905259 761074758 239767792 386104569 201610670 545645761 70354007 887567454 761258661 900127379 240309862 794971639 577009846 984897829 768768110 920273979 136288450 933209912 766138791 974788826 714841244 993156944 727665651 757804652 285669239 479861318 530471088 817058095 510114096 529569113 719126343 843315270 402182350 965785507 257905749 742917822 592189504 693202347 298750696 517314079 260506467 865485592 212779544 759867721 265486596 656128572 602559473 619278075 301791666 996905449 197718508 757271341 669498106 865395608 817048038 836495506 54438912 91641841 525055275 709828185 920635321 921030022 93741379 204393258 382619155 831965912 856967204 946670870 805768664 930565104 458078859 676734654 474295189 967661110 686564739 760239819 58649909 550610010 537540290 713209271 790822922 891535546 981749346 991824682 33369720 67907336 185371194 649082655 608114180 625654732 957494041 964778193 821884479 880443310 733945170 818097369 269798382 752949111 400931045 789183475 83765802 792479340 81370118 657528451 289678602 914697358 305500228 554764669 666125556 752365954 465810653 833626289 959522465 987480172 489153495 820186352 252589778 702819703 873350174 875805610 457508498 702883277 962669995 992016493 289649784 902808251 224495452 736742061 868267772 979588968 382483188 974529852 106961942 240261718 103458296 336551582 124827487 931577721 770544453 860418588 961411233 968658591 486098572 785116962 25995 30407157 870100362 945734170 280855476 333962669 26957960 159350079 395329976 704303134 876088942 938897277 237747837 775602121 360602524 602630332 536989522 548524987 565043693 670008837 502495826 538337458 773763471 966053085 233744535 882586390 295524147 402086234 340555612 760130245 312718990 554638760 802806712 942216250 601483195 867002885 514828503 708161813 17034714 18142356 397100355 656959926 958780820 978808802 488218923 813853915 707068383 770429912 915077640 985038625 42927850 291823464 703294849 785126398 546941385 969471575 127842297 440719545 261459231 435219619 786012696 914321896 900061064 996680443 627575997 914487426 872897906 922898383 670773070 675492340 469563186 555896977 806479529 899757615 583540728 740106920 742553462 835692475 262147761 616227720 3854388 118564442 787381929 996495480 406527211 590508390 799928794 845940156 997056977 999152850 154897687 731511253 342693332 405294360 558499508 745058405 146075183 552643628 809374414 866682717 657061121 907740099 503193890 527843082 793040013 947186482 288332815 857104664 172060556 712048472 207775543 957192149 238033497 766595723 904477450 913137363 373774621 757588351 579015147 837356544 462381949 704813855 742940655 953091034 425276815 735792715 699376906 879076632 326049631 583795689 319039236 566192176 273593652 672835138 675969634 676623101 497435246 573828072 483631449 897531952 646329865 789861590 691027136 775756574 425206553 532465858 567698931 789261010 373451343 958386689 122735219 994730133 890954392 909292744 31335827 365397030 308084790 355732068 830613175 944943223 908999256 909271822 493348090 721193077 580828135 767341155 629127720 720762131 938065103 984888187 728755632 782559574 933687321 946792077 779536181 936666811 112083046 485128184 276326028 552671679 453858107 636325302 985749154 989251264 565685255 740552683 44899381 720977393 15365863 771366268 500011130 613991416 316702298 561058529 596935072 648503700 72696582 127069901 6794547 722700419 84261627 526171472 888297481 939856135 403114545 422000958 282285515 787412327 60519787 569708533 394704212 509578303 96896010 321805597 710492821 845760949 479724121 867549321 515672260 710106093 491594376 821579971 105816916 810536134 138709775 794537689 39941495 375650969 990431035 999561264 455012299 991414469 637269757 710916339 437085522 599493504 377082270 633624067 263627319 777634706 595989055 967154390 583303379 987341178 521474434 888620515 667142489 924313894 231428532 714213386 102957582 273829508 429038491 675642658 565232170 755919722 560512979 640358905 916385273 922584179 838713620 856162282 829432532 953922313 328899650 836723582 196082224 607337925 701414240 811492492 551999125 829938526 30892126 273990262 377633081 459077224 665522565 779977409 269357059 521965023 244915538 556894645 860826634 917215220 792371682 810565721 853497496 882198432 719249670 960092096 715852872 889008102 346071378 513045956 782446455 835760512 148914139 753187407 769537882 929236461 92674936 365259557 293703180 348948388 543673463 929242459 855268563 891640048 39323247 881615483 780533712 996174505 233600303 613116751 108952042 480010970 817721965 833336494 383380588 555541116 438248427 542702948 492115932 781392799 516497441 786793814 545651078 777657456 972705138 975675631 748919064 754398928 301775486 469646637 522197624 633230255 719519781 868525927 876605586 885193213 151698588 285241639 389479252 910402556 747473764 768690031 737376126 931630955 745831773 869685734 155512902 452209015 502501993 828621053 181910376 845056875 872222117 888898761 319578864 513415295 201288423 715296028 77325676 823876163 61009235 702801921 22461833 876483694 568852757 988629755 133618338 250243153 206633927 524728472 417424618 599144096 216891874 337463078 256928988 648576222 68204699 685433185 152444441 250545057 396608790 820286669 738258007 943451571 939275745 996080186 22572814 584066370 623669 694343566 143960352 502527786 999012471 999805391 496992959 765393511 82079775 255947824 893758501 954836691 298872840 483155278 774165354 800363561 351255573 775665102 561361464 961356238 665132812 712530693 729558854 949733282 241574582 536279349 330878759 426394545 902840991 938841549 951958695 961263634 96551221 798758501 494921401 549839259 99795761 606654888 127333205 786796135 428261439 461915575 318771476 979470127 803058043 864000716 214625302 376334610 837076627 999583263 161739462 830860881 720655928 952342569 156118945 586227166 50689813 988343631 246187278 585276654 14058612 993077448 725565093 900966852 965851501 989887114 363676426 871488599 113381248 296557955 402496729 994627312 273215559 346041537 334611933 859146024 913536292 919920283 118034681 932823428 700719381 926835122 336863 304222397 983389440 997274054 442064661 602676682 239785601 845315659 557337679 734057571 741574549 775414345 462769808 632074783 297947727 738005877 255998533 444883099 773963675 892722284 950036293 964076935 802438602 974587681 558811686 948419911 525617373 595481319 718900427 945413587 872170336 998143432 176563764 766695526 879512739 939130158 724801558 893294295 944005780 984750353 762598789 840814603 481988626 636515468 914808860 973226996 370532946 606059861 921314000 943951958 701247961 927451183 112393787 493238872 44200893 972625563 130873120 396541074 244306803 298388156 924080748 983055572 85879826 144395054 349151235 484668048 779711887 870018969 219265411 611255258 790898483 883268365 358314422 424366506 839493332 867648082 907489303 950594451 538813559 618043794 164001636 737925722 575357519 831294410 431182135 871207695 541899369 816223070 103451559 499572603 861459341 874215439 725548770 893175093 894049544 919457441 190199257 985431768 337501250 610512328 388442972 799662170 16636930 914243624 63178671 522825219 603916672 613113021 995816812 999183225 466144246 627801845 309586109 627303148 229753354 504890379 477391241 525833021 472182241 848085304 928250851 983193444 412055066 523140235 405618332 965083518 348632287 779037109 925945564 942094618 716609060 973457700 301798237 475523991 333159103 661978367 596386450 770231237 207302281 737249626 65032845 83719057 403421045 552132112 14825880 625689914 130750424 138409260 217729766 766504653 749354053 941799582 55101084 354338745 106224686 140384747 589630692 835545566 707845729 961867709 791398603 944177640 582360750 630870168 384988194 446711448 218426169 697130021 897236277 939106078 362761136 775697100 277115070 720542254 23330541 189995165 416550462 623019896 6423230 304567618 862908693 885186651 752236954 909801391 174289042 286816938 762067647 981639101 127325914 618729920 820535392 900453255 173361584 982976952 413454337 959124107 711730932 793334885 896315243 919352088 134467082 542105335 202130511 228090333 233044488 678053371 21489520 999521028 874876390 981125711 453206953 712943285 700783107 984985241 591046306 860123577 104636956 664722303 136554619 396924890 93919159 143743470 37297330 808268647 216235346 893048685 550727682 602197083 468345382 684433022 200922185 381164808 299291138 518617323 387137499 513556536 761966270 949561576 829939417 921369230 958963839 977747257 728825433 888659623 911572971 936871440 266951448 447768888 841982933 936339381 109340990 502048582 507699003 676712938 204147357 546026500 387181850 387908691 893875706 922564902 335034230 917219703 854243936 990014889 331771955 542067153 537638730 618057690 118942185 369600810 535726758 829139996 894994386 972592998 143764709 648758158 502357438 979951145 237100565 417583235 881719536 917091482 786849081 998787579 532555960 992234683 805845887 933593827 109635909 813722945 993161721 996434349 537999533 900669326 584819737 825138692 864565671 947214075 107907055 261224348 841387072 871190837 254641806 372408387 907309215 915053463 227711058 744975689 225504279 379183957 827603244 882921062 406027360 956076260 519568074 846039788 720868637 825425262 386705771 811614355 394178794 856058451 559240066 967891176 890290065 973674203 651572682 837956518 8362348 208453706 453612570 497263284 360071964 744072345 175397497 327696535 55126083 841119277 798634016 873523471 45481460 793522418 305701197 951102292 782260752 991594652 499607898 737303789 271716252 601419058 582095700 916020737 358352413 601163179 791751515 902809287 915572986 993702542 692633730 935293025 521355278 546902823 302240224 543570087 143231763 927687225 626435574 860090957 58919465 274032016 635971647 653911802 36464192 423229084 592836427 766325597 816980780 966960635 608545647 773901890 788275968 969783766 604796441 890400059 769943333 821307862 524652913 614824883 680180621 682734947 691591186 788424819 683812255 698679748 968267768 974843560 973852171 977281692 867934936 908323718 571287998 727208661 711887668 774998315 669104322 742370585 361347838 586637062 292334984 951650114 825959522 946691712 255996670 891399236 907334508 926574798 819398593 995641578 905481252 993176469 612286425 905242751 673832906 843751272 213827749 293161647 479642387 689198315 662193772 917967871 335554381 601064817 724294590 948041682 56905631 421561705 733722667 775301995 305967096 865706041 998098384 998484740 324317095 813039731 187690442 613116832 781000555 840473057 609703170 888792476 258176013 901981826 768068905 945669543 208995780 278629369 169819386 812752087 993840025 998625766 466665576 909908494 353020454 807534241 642162898 879610144 556105037 682302835 753986995 824561148 750401999 961795657 314940748 476887153 367088285 632321116 837565069 841354816 869716944 938981612 773215708 796918407 782219279 969534457 435611909 686559023 993797374 993867609 68704104 219504623 270623984 729826330 787601913 891627444 441144479 543977538 543990682 670177363 174967187 803375637 215022197 366637737 916074038 993182218 918850409 942520410 965127491 994877379 218176998 265711932 691226684 998740030 178698432 894980540 576759606 769269833 524826562 811013729 928141002 979696305 559564136 589555199 968566230 992535986 383397478 388689198 928606587 988707779 172646571 976135275 110490319 196676150 357355904 785136047 201745019 937348684 756065870 889720695 514297143 701348476 943043799 956719800 774691602 795520154 43240053 609600582 594089653 892287751 914464821 959049860 103681805 578806190 807136472 897254765 200997660 259282405 410248949 534377776 706222877 899808454 856092794 861683645 949295852 979627454 592153632 611685928 664752085 700033306 192402153 853705871 64288744 681834413 346144624 699790421 173806148 695044606 486398323 563378774 974053411 982719158 835369176 892872085 872249133 874627444 78071771 602139861 890259753 892149233 660656095 871102554 782846911 791973501 951011517 965333984 806091117 945288241 265482297 623424253 357361033 432685145 308073125 628491237 527468909 730460322 632771275 977451449 358610090 949666083 984743512 986605802 217323906 356326277 941309163 997217975 809670834 864000323 107274269 484983022 633411307 905841566 926048017 944943776 361372261 497134358 409508946 773397410 331494018 331892423 429486818 496003473 419200924 575420702 614904730 895704229 707831001 817772918 549404014 689702298 388015686 960873323 486005833 951710502 213713569 510044482 896263826 908675598 541720084 688857750 177269990 624331292 902089058 998172454 250282036 670328679 928601687 978597873 219824301 516326263 654533507 747973330 911653001 921206726 34977448 357426960 451896660 678954535 565092719 669353079 675612623 845929486 886952752 945338894 995135350 998032095 60113319 258500117 825502695 942192313 63061298 535594958 373744191 463352114 62673327 134982198 88547509 699445764 877051348 980462460 454117904 835817738 17340458 378704311 631003044 805030528 606451230 757827942 699400189 950932824 949969970 979753235 952712595 989855880 881161104 943227083 386878492 753894127 549461744 970809671 118466425 415781044 171240196 594174012 840727727 937328842 503848226 698715232 276842306 801159294 931859830 944713882 579931184 887804363 641510210 836632212 53317659 734720445 394202945 844959832 965926649 999986012 74638989 562962716 878014687 976771011 854139218 937306051 137334729 633485406 728691835 794425655 627477432 901803783 627757285 805931607 333082590 376882709 407521179 974631632 481264340 828890233 301863850 504597339 56406180 762629959 822693106 964064947 671477310 972190389 471931958 829390954 126918301 668019036 284990135 505118698 659387654 726521034 179420242 849583281 289292613 763753826 552235098 945940095 447624124 602404046 686881246 990127702 742826124 812027506 84629493 162165378 746730142 759434878 347341130 401274010 37025393 754866438 30619297 546154973 831499008 941638500 849011983 993534552 268109982 754772955 388152198 628179196 961019949 982279354 371756910 517984135 691842162 699154172 406619187 552345097 981254086 993791663 35610337 792355227 762374358 894948205 121309217 667088069 378952806 523984990 440547790 999452577 958338131 989270068 408920982 768445252 413536460 871685684 731748167 823515395 486379884 618326352 494093857 956063514 652186406 711607970 10754524 563540179 31452166 128122964 670350625 939614210 779679625 827926333 298392406 739316562 633582769 792645150 48739300 705513045 832720609 874908133 630259670 667731015 527616396 680170485 708743137 896805248 827337562 986953862 246202790 676791846 144247443 441297012 746724941 793583050 521094786 982574198 842698427 878613158 271912210 975793422 496564835 548126756 683410899 969026585 80125070 834003042 950155820 965382691 513863522 613190761 194188922 924238199 555248544 781106200 705262953 881790970 6498038 78371943 886667506 899563426 254004919 417638231 149488959 500891912 252577170 510044420 123244384 796647778 690935035 978257039 932179790 962409272 766491567 984722745 969023936 984090353 438110724 492685848 865846874 965820968 244701521 591032111 576499826 801905769 672075069 806039732 336098914 851053820 711976056 942311134 22832568 806152868 249405436 947578890 383932862 385269197 55095959 554666083 630375592 665477867 150376022 697374893 681598543 870424056 223893477 345481289 488623040 591761349 125687539 947255438 35468158 843443536 131549661 772218285 874855164 991367431 265630569 308677030 810589984 904191834 139103192 379597568 259490794 364231098 225766520 828469180 555146394 763369633 542541746 736781519 254647033 758775381 957579451 978702903 182328098 206246163 636205865 966610196 724758187 990754728 555033256 839937125 13846238 454848316 163313621 174772919 308586613 336624809 936670200 964319909 357421574 504705607 965038895 974905636 866102311 941198131 502916600 564918802 741800521 988586200 201562500 814195696 442723139 721388122 359801559 889680135 770957928 906770080 197918756 703283221 237103733 736014181 206679093 924555235 257641117 822727022 704086678 715732912 278547779 915486415 793451558 833989650 434388381 667529111 690237523 795441815 554643315 764929134 544652819 617591789 347930116 810082385 714978646 818023664 456098410 611730038 971506222 990748504 872497235 998512021 469133206 692057349 563077484 711083384 991614292 992925665 133954880 149761668 915189568 928082964 967584431 995310891 680539904 757108449 637071306 833574105 79488115 377466994 13621586 232462761 541480101 555546283 849825346 962131475 646326579 772396537 948131267 951169789 387857666 581118062 690613697 826905110 111951619 774682285 57926358 345941432 757785239 906579313 571493407 962702213 170624203 177532376 220965210 394837006 6082013 338933729 24442277 716663798 500126162 793307722 401774790 614868959 927620574 970058670 550910558 888787481 600976785 808406162 979144118 991822074 871813105 888301610 998609234 998658888 48102596 180104861 493908116 788571427 647168320 893503674 557148803 687998601 84447514 729815382 122860077 678672595 364067440 505652093 941574630 944351554 458420127 814784637 680284668 681106223 239707297 674183263 998740299 999285397 381979340 919181177 495255027 583887978 573231266 649882689 400530 333033713 518936094 544759005 722123016 846564819 89480681 781457962 708481327 897502202 146757116 730730283 466635659 480777345 869253237 947561244 994119194 998896891 832567741 845736852 181104114 786755768 586835025 621093562 817984807 959311405 917012808 940208824 859186398 955851934 515776125 895275856 81005673 749857292 760061933 803486222 879028087 937442545 551339914 877276744 446403105 464500695 987729885 996795251 40986696 520153788 637363792 974455447 859269563 888690953 579744320 910845590 70278683 279152438 594618598 839148758 257618237 443170024 709917831 797657020 797257535 965328497 538083187 798916485 362163467 887348522 34673741 308259556 551602066 562208205 959646717 989612817 640253913 819802167 960838711 977741267 509258136 703040472 50936501 288595260 381020333 725521016 566808985 664545311 726912448 815383610 441026412 932778670 297019671 816553936 553578122 569597060 754516254 983930716 955572136 994857699 136196090 634450295 51701803 500875451 963260293 973294521 878103873 907135037 479346772 901773561 423116968 481625180 399762567 604576060 959346341 973913306 141287395 343957247 941123220 942009285 23365456 750086250 83720145 337160866 803549743 829603564 670613124 900170221 583773923 667601539 357364877 664786811 847499655 947309032 731493382 736738373 749342004 814094446 880841985 898599424 309315946 946539541 569144956 629599617 921861614 923707169 750655431 915450135 170505540 786642145 441236901 642651049 740635951 970266755 485389706 772925159 665588307 971658297 460791439 622209824 177130934 920156557 501557744 662797672 974828426 980053975 369985777 945533905 322598117 460671290 172430213 971185872 423484311 861161251 386472337 412129959 629161642 843250744 139335495 875804012 931262909 968662162 418352632 603012641 688439371 794104791 64196531 123790802 832153954 932675165 38707685 745670603 631603025 809888123 302230990 379939772 886609882 989985467 991935478 994142292 479086841 665863521 170553516 508088473 274045968 914458649 979092816 995945884 760834959 944395055 807112839 926572491 953138158 981639814 899578166 921300605 418514311 719214849 873328724 924155885 571320856 841575203 508788899 640677787 597377645 797816697 47981230 257964023 789525390 843405445 18629543 56914480 293828385 324928428 990751392 997510583 550002848 584172807 737392820 830764540 999177620 999839471 910329711 924422598 236698140 279764716 700795557 937803235 674766778 857975247 756225382 918823633 271971610 770032983 256511325 499334186 458224412 782057509 907285874 921541792 68235742 623184237 640300288 790908907 132285924 205669335 223565454 579953074 958374887 978058617 555945957 711539431 680379199 934943264 94629126 779817759 420010842 853302921 625281868 990916477 461228812 925312071 970271585 971665824 31104500 660077406 103944038 356486260 688563721 991634526 512750103 925715051 103737712 591094194 669812325 993073367 708321691 916748502 230385063 339469782 833981695 895407427 600281447 876303673 464484453 727555429 390128531 672886996 534383609 706715956 567547349 815746446 405595735 779550790 646831148 766396170 903844698 972971520 480617419 671483236 980664499 985545827 849862709 979357198 650125578 927782656 391346766 735539983 155091428 256734800 894719439 927273625 421878045 572364395 481157616 487525652 383445062 448804919 227220682 462093561 614186493 844040138 976099832 988245864 62590292 471321708 738123409 812016469 38533840 406036687 643267749 883142424 857042725 949513290 647769970 747078257 532213620 835030102 693304836 733297515 181372011 645621181 254614144 611042068 839817154 932131988 624810476 782913569 360114253 577769369 943840367 971494297 978407946 978650587 774913792 851339530 983882537 999297946 556158394 781870262 490420868 599919353 811765513 878157676 804311759 907067183 461448935 976659427 713598211 787520261 943845122 999426024 210109653 682875726 567054571 804224511 330974282 986258364 131894788 263125546 877389928 929050938 472331928 863823859 430502268 897199907 466317245 796184984 528637213 773148573 866427312 905988808 951293211 997857182 230607419 314464860 724566856 804434859 85279282 340152462 338846782 670822271 140507228 636669238 60721695 504936305 358425688 960811972 166389530 486943716 733800784 861860194 64166038 191383206 343466044 626625828 767816991 837284277 391904707 985052456 33068244 54044476 246196466 944725023 903177721 987661742 62364910 631777167 15947474 597771527 916859782 934397131 650608221 848863136 727823558 842483121 294870923 741116758 12141451 398137367 189611270 993629726 897561732 951347400 596404248 688837219 916097334 990034827 145789662 915074682 668948520 775712390 189236190 910519784 572382136 789318283 504702869 908082862 710673534 998052657 630128329 912171934 189189543 519169474 948102718 991439621 750754561 919971098 646892033 949874552 355990409 829215189 715114309 785300550 254199946 889444850 811477087 989778769 102827482 251839835 286766830 306599536 800586668 835808895 731300880 980895095 131453602 203322830 754887961 757461978 664198340 746524545 283553119 839227062 845263503 933700400 518466803 621702501 966198276 991237501 216098251 958455458 950525379 994448140 261931087 874993125 560687971 719489616 622458233 715342444 170405679 850384696 427159980 784676723 594188974 891747404 836289088 966844617 662377860 989071940 317323305 636133589 379101702 754922720 661705086 977857193 907348639 948686697 409840775 888071041 780855182 852143478 137977558 589963783 176641070 482908199 971714261 994537390 493043279 556365010 202872284 406293736 713672675 790030282 35036410 539113271 480367144 803808027 154278781 721889511 671066177 971664405 582525132 823156927 9892235 172234366 53478940 770044010 129122814 875735954 135552352 169604800 91652684 505235281 992873735 997422668 563861729 735168977 180131722 927005972 95260846 499606562 606632545 928874416 993557992 999725952 27169742 390910708 166265056 243348563 599470771 750523211 796020711 933448169 647889794 961377771 164990313 253695950 646766278 996391802 825458330 917897100 390423860 636170987 499205696 754444781 323192736 684870686 117425969 761709533 351024843 456340839 789712731 907095289 922202275 925690085 45014360 935375726 791744343 865553754 626051282 933662249 691232302 792279376 42370450 895975353 678445383 742206773 559346709 747285963 678226733 955539121 112444824 464111207 690211365 813717878 357618808 726980628 701565033 799535585 508217181 659314799 293729108 678124583 780784565 995296771 57539678 652928984 724783365 789506295 66892742 341126180 302188752 862583543 442781484 760896670 40033563 397065808 374911455 674475847 992480236 997918660 591454884 982210368 556101810 879898794 92498626 430512779 910633879 973388654 698090001 716308459 506059483 800122870 559603785 858494683 450450627 790156939 393093025 826218132 229020452 509620239 409174765 680344789 555373613 881391059 23667142 802094776 431282816 797652122 193041232 522362171 923235861 929669887 943453006 956030178 378987419 692662891 720858091 942347931 285099496 475549505 993778463 994866448 920512156 954890414 69668662 832532754 405789476 826813674 858738830 951646595 592894457 769629105 782110481 895717304 936644198 938562545 865999624 972662167 990921677 992862098 732055905 989703143 976050389 980686312 1889047 901672769 322352690 823175767 737541308 847338838 354502926 424857812 824773976 859943424 48023811 97819729 33706426 520861270 461475546 888736528 542774023 775335900 573415564 766727624 147256623 702486719 531858131 569280636 644754977 938417305 503698350 702083853 536174975 617546122 541082785 968825424 585651420 875550157 809597064 863773306 525471793 593087234 71827084 296030224 949396297 967559893 964333136 992302523 300422567 706861340 484561808 976070033 542094713 803738520 805497549 984164759 88574928 767665869 948662033 955501620 545501411 679543625 902128408 957821231 53457788 526585652 677282432 781173294 783396812 948504271 411312553 729878127 664512441 688326954 89340796 138131455 36362180 261836374 411093071 522955188 761641023 931921857 248198870 341475389 954368038 977778196 636879817 653985614 672230132 811521949 264010272 874701340 426794768 945993331 315810127 570656409 439214590 666886153 813431569 875103807 294359912 544089406 74740439 636999964 819679715 871439693 572631889 848927507 156903167 534557111 326876898 539368710 542590399 788387727 527408001 779648789 849190254 926353787 643386684 870368239 31380806 908704904 189290792 453544152 991199006 999531332 800468070 984546927 971031341 988297911 467996206 880336684 751868965 798396424 83421618 230340918 333990593 401170999 987933349 996731593 673617874 881124328 829393163 972538278 809878278 860072267 693893121 734630948 380326980 765504668 377459674 432252630 252190718 757564827 363288838 616941489 2761873 569257281 640477592 758308990 298875956 662454666 901815440 996160867 469164687 594591534 480094726 602438296 683068138 898967027 687635194 936745885 811184866 954518809 342628820 715357699 733737405 803955407 649866020 824692826 758605865 863024804 74222889 913083622 869049955 908684880 898237934 976207531 962250046 998850381 622617815 951966460 136232984 640610307 685518505 889405813 344180981 614127891 333129105 910545292 123227494 817583263 948748165 952588336 657160538 750382817 860008795 936420811 397217550 608617300 552134591 673387535 164459360 984266644 53135687 62710396 937621126 961612830 813427533 841011221 823210170 845824230 204788473 793540454 368678851 661415548 718962105 830169385 809439039 922763239 885773869 948993487 912458950 992189721 587986876 740097092 13474258 497360972 593485309 804846349 953941647 973484108 899185360 975308863 758011048 821111493 967498034 989313021 44902207 898532887 629500857 772003008 14909875 176275203 424020535 634525295 957497420 977757058 88820027 508392633 724462076 957044945 443126644 480547261 523262574 734636962 355348940 804114037 877251430 890677839 352932297 920478380 476889349 878121397 893773836 956125362 158613910 986741226 475539168 797690251 205695245 288198092 966623328 981969797 613312663 918093418 523378411 561320186 154890812 660371969 449587365 975274292 624298290 777200688 139951484 442029597 602889940 686611836 923957555 961105253 171938750 788000123 537204184 690768271 165885606 753574195 638635944 768839817 580780123 745289394 308840018 606361970 742971783 964858277 506321014 994274032 694604102 952433776 427510419 460494987 836094648 877500422 793169850 868765321 225382394 652835668 853963904 926525497 158399139 171505265 545708879 719890336 605949692 694638068 552413447 604244185 65566470 792613447 533901393 688960547 625782043 859500895 984195878 997966280 129136323 288328791 859820044 932833774 287005108 737055725 155676245 236094301 74783812 379910266 616421962 684291190 547043252 806126624 553592235 986667743 192804256 513772892 193422135 275164653 22862659 213564714 850733845 892317661 379398301 550244147 693820349 931382909 630609441 710513755 104388417 749581198 384694518 732564329 628099413 951044828 305332622 552174458 400898148 439510785 547086012 928588458 704193656 938689030 679194622 745778528 429513048 681548156 509651650 696206430 870329757 934322568 382651607 427522549 453232059 889126850 702510999 948322938 75086084 630165930 648671385 959025121 491470243 906048021 418922264 486364825 972922378 995030725 900312463 940345947 251595859 792006532 880112450 887478031 789062191 791258477 271498065 492763917 633327768 655026259 570089507 869036422 686016599 753373025 814863255 924689310 686909119 730588473 106138792 236397754 969591510 983141299 512882583 966020677 924657449 950665566 389820562 776367097 214355338 446866886 598005722 630943472 642672761 996680586 926186011 934571336 821617932 840010886 455605866 547668561 607334357 737698471 787433950 912579465 762053524 821031762 537525728 769005710 414151976 639811062 512780365 807365111 86305058 519246431 364482267 474410191 938772892 965411120 302037262 773628420 290093103 304297874 157797285 653081335 69115690 984073767 496302393 584904742 380333414 960132949 864812293 949098473 205663362 403964437 785704359 954529038 377785869 477196573 577291269 816495990 695369762 851829927 1675344 555519915 639828440 756972409 360913454 764759928 218288439 429200228 426209538 573361122 578208274 842090028 362928838 532064138 42209640 336392778 218007969 843956177 289377103 496800176 787146947 912452906 548507820 577828765 558759936 960287529 780985784 969751684 929727703 971268177 652764596 817602262 579708333 868766618 455163286 706705917 27063663 397667702 648438325 710057217 250898801 540057620 459999545 672879093 129498001 762894011 397558833 465908758 160013562 445530377 981031162 989764294 369866398 750961730 815386188 963352049 399729107 841720036 907897795 982012625 248417976 949810541 466898400 498588901 603388598 774085478 112915117 227181358 115469351 758134548 724351719 819677553 480403897 519176092 112909160 145273463 107540556 500099019 271240173 366692714 75283953 937913321 931109815 950910886 588672160 617546306 39506114 949874750 725408799 726369525 815833433 888422584 655295350 780348172 519910852 822047715 777852158 916427392 867033085 880433867 590274336 640480508 770439392 944621338 30338076 850685178 995935215 996112467 381732419 513818343 562639628 967735550 900862870 910854286 30544395 888194399 85005728 860258625 805467925 992973257 867269612 993722984 3242325 817149897 502118865 770606950 452601668 833727266 798041544 833074556 342301675 725009785 754108474 959567724 564856687 981474986 152562331 459429236 585773213 740523899 974933030 998373565 94493103 584597450 752004970 961996973 939819344 963812980 950670003 950913217 244988327 809338723 802828450 982234097 665229416 981269288 822104566 838289877 35827675 613515224 791800920 990917628 779164883 908197004 566873677 750535192 537093133 729790507 473680361 553166620 748565041 864348624 318148556 776393647 243779650 608547468 944538279 963963528 646982123 687581280 12936320 508753656 541014202 737918092 527109890 877416816 929649306 947145799 61132941 606375678 990727715 996858203 808328729 813356251 132475181 493336760 824088029 849045205 348441159 422472084 741540045 996408009 851775032 924621174 360264173 727302740 556005076 573322464 338503531 799136338 289544718 957392403 7167740 173648675 550230128 572376446 728860556 854151615 798093756 845989229 48687827 334647918 632699564 815171497 749553165 845008635 415614006 544928192 168859728 715024048 373062825 846200840 324004509 531298113 283425556 332199337 886251443 935301803 90423245 278116581 25322244 713805839 231502804 963410346 706798521 819260213 935996732 957699792 81376708 519077485 754601645 786588066 739174584 876981696 735658121 914327795 790285798 824722560 826748284 918111924 518104043 801264694 81480849 179924605 794267820 928013691 829016306 907569270 474433468 944295785 626530406 782124744 114354178 722924320 732806942 868584675 481168890 927159576 503573676 690755102 355307141 523638975 601781294 721441412 140521158 197409304 378964427 727016779 529022802 949695428 503391935 884144454 152704546 231649563 302922908 411940041 281724715 488722519 916981505 967093675 660323477 833189346 782557789 916214138 784155654 883726961 30080204 554801530 774278778 799089772 326201620 326327748 474477363 559804239 921713678 936010678 175459638 348806932 26738532 785732468 225915620 420889096 926099907 956513246 779996659 790827232 420166698 983323272 16428991 524622164 738776232 981902030 208469541 482119926 810435495 830020902 108915603 893654820 886844899 903720561 318034467 622306798 783613683 916183099 992767126 997553894 565713965 976723316 238410876 262330816 668908172 746657557 145539210 423427286 732326225 771893418 153802075 660626409 987033883 990549122 675656157 911033182 183978967 613344541 656933795 671735283 765344497 867362660 16454599 728196228 13623974 35172314 723287721 806451544 301206849 577887835 868905266 943600840 54758105 81047610 615086229 684376777 910239475 952013318 691920265 718509955 905558100 931867717 595320450 890512615 753968679 880647707 373850297 647250309 917124406 967254469 976445864 986251109 27794461 522913858 153072061 760870690 906995709 994502407 788327487 960714255 904076332 985084456 699816589 934441647 306665761 710863952 52037364 789724634 595083172 982090186 664905925 991170001 552386833 746262651 24513346 104256696 262999807 886445111 420770966 555985709 586298137 881970074 829100230 865136531 66218327 292514191 530913276 714604381 493471591 723249570 450633462 988688708 802759304 919556175 905509207 926967651 582793334 656426282 427118723 652101642 7392727 694783380 60925078 757849318 476891160 833345499 141292416 219819463 126689362 866260976 942652670 987770979 102120812 735256453 318751356 418686100 855643877 864957451 420226808 522400247 164190422 769945975 882399252 932166375 823178211 954692763 988481012 997853983 481085563 557194999 459378245 940550191 739637260 987145384 803318562 949874410 437971086 444065881 567475809 837899944 512051454 799430265 64316788 422760000 523721452 591608482 647559276 726302036 164065229 475153387 238810881 661149878 135731079 407075280 437816599 486463939 593747947 921024564 287240332 341321481 463946320 881486841 435768910 631815465 334588624 890429914 121161174 888013848 543347060 654148884 110833785 365341233 811401344 924315437 466103472 519715787 598143203 739235808 367015278 930672507 786554099 942678061 139379614 977320945 16528669 604393070 496666943 609931224 21206788 684423043 459844067 981738376 939199298 977647843 247099998 803109639 982189938 989105836 526758792 638280248 865488541 928211257 90539971 946989626 116327548 419251820 458114016 616250289 97222068 541060212 534483064 632787149 359195339 792567894 27121686 149659496 895658318 900801478 109464000 624575871 649576857 990668950 520372703 871696206 149196838 728388961 240754154 430142475 838511448 958200979 813571976 920173953 274724301 567881011 990601405 992513051 911718166 968313496 968579630 991672577 583356706 726127716 588995266 759934440 126625997 948413228 716286034 911798925 48695977 659491658 598363031 918819473 819118093 916738651 289253293 776055499 691451299 879670563 209557500 623532662 313683375 706804769 451020979 731026992 171524525 460979374 694001070 824708152 682009339 779696558 626538876 764581842 656192661 803391333 367061518 574662931 482763102 588008517 686470418 786480733 902853790 931868637 199188615 324920498 949956707 967573947 537665980 621398663 260805011 979185471 752564377 950885112 265433469 961320037 405343172 521194267 202296464 982667329 509721443 876651793 263095214 799589769 862836863 959239830 281507626 423866694 835646797 912100523 442321875 513899259 456486741 976622464 796973379 937352969 757004776 998512989 283268525 801625528 668773919 728605912 900618660 949597070 614239325 845465919 425726671 787288459 157335524 653795726 561488812 997727825 920668654 968931676 22273115 277482123 781952847 828133220 754783774 907680272 349668941 655796235 182169621 735968732 644213688 844039280 839409486 981767212 380860418 763227023 912159552 966638051 248817614 601008305 807559974 911869559 684468279 805874047 617784546 673394656 260072013 377294819 619264587 949289470 84383318 107480539 663296311 881641424 698740803 790450234 51091878 882984240 197407039 871526076 613520858 788788676 688081777 757852175 421895989 948555045 593784806 602450390 469161871 573346869 114569468 310622214 632431519 746176589 455916246 811078473 387696885 429114032 573351923 950074758 687832979 850940311 250632166 597071978 865635986 880106200 615114750 664354695 478735676 953037967 802701615 902028917 30720139 343230115 143312469 982287749 245306862 426272406 68900570 542628966 773392292 976894677 58790854 640925062 803422958 946417818 674750975 835300725 143088774 148245606 317280893 709537509 466589567 633703261 764154629 845225726 492258779 593748600 422689765 496850579 11103764 653476044 211112895 835785536 95443698 144054443 181732858 354748933 337300121 885786500 612179711 947657605 168127883 435018636 948951126 957904570 782797847 803126791 613469393 955494824 286171637 956538539 887842352 934731832 874149149 907862660 854454771 875762072 397952129 970269847 281956530 508467446 195790077 212309723 9938923 843514930 730847016 746684722 784884003 903479258 483535579 876070180 628341833 871305463 435862812 830553176 716632165 979402785 767573362 903931860 70693599 294680735 21668992 701552815 434502422 612852769 173486551 572617450 102808143 376988636 185685914 525172790 799993578 822270105 661920667 701255491 607185852 951149763 862022749 885982270 597750856 732535666 398555570 408626021 247170374 388889677 948931497 979118583 15142037 784946370 448770107 679101435 790131347 839184879 715949377 795048784 570164576 937973832 350538146 589369781 2840021 466682935 181447661 640092262 114048086 949620589 183816105 690819010 730196502 968929385 185677877 289330531 337062295 901738800 337297652 388481358 105139669 381984481 588545333 970944469 177283740 217600475 101324675 702601179 895826444 932016862 472534674 477833362 144281083 678167743 868850783 958862439 496589097 824104024 188669662 959092512 226514797 378234069 476938952 638847450 997588940 999755482 993223730 993243571 926157332 998319988 128146603 697286578 395031881 464227958 688301829 751890688 304473751 836236215 594685979 722630796 250961148 269868879 183484777 501228747 819037509 909029541 771340855 842752218 955672548 985666858 142084233 836776971 422631920 708686307 989753499 997576951 297108607 681114149 545858555 660252251 258862547 468999532 985724321 995169447 476676692 967783565 117417993 191966530 785409888 787683778 63678388 254840873 81354896 746804688 111119813 858267180 345524849 995843835 681142569 848659629 951703900 956517908 603765473 704581373 376087912 684190745 724015015 936980181 48839026 458378665 928284696 933839665 58822398 279868618 524487542 924899743 234497996 604326898 579057999 978066364 66177069 885078703 940248651 952635270 64539954 722909987 214385425 759184816 764127797 960289556 733426261 738213676 74989742 635543502 882290458 901892750 169562179 897041067 734150767 987729437 879132815 912017936 827532861 854669646 632084207 994990834 883244987 890064204 512617274 762707966 950533280 984199733 651015312 929522314 64596825 98418498 178126321 433345129 869112453 889283789 16312368 253173696 550210425 754852404 774684785 957267390 255785881 717469912 786075453 915596244 546204378 675004126 937055209 997558102 595578195 738987538 696946779 989989530 659548787 682429538 576576480 689561698 309270858 641260483 736405505 856105197 994132824 998827628 417597497 671901299 664530848 930627474 314818016 958828592 310406667 713263308 173252005 348016238 454127749 911948927 55261070 832024685 132610718 174770021 284752475 473647756 427666521 833032863 944095555 979121515 288195833 652394535 130950284 643745364 370632492 903795816 716420009 977712076 589687651 870210029 97837880 282935592 241852689 846253515 694917494 743067395 922493438 937127619 456713052 866116881 982103518 985791315 821804783 966878205 489415736 719999392 666405480 738658041 857530393 868903264 600093153 652877647 446511868 790892220 780062812 863124813 581562757 932640924 743529270 968493813 943443992 944882131 138068051 905634252 960814890 983684756 16914469 796558546 298877759 730734287 831070065 854897235 363248920 617118560 92752631 306847976 787515497 938490575 372329437 743068194 706869523 922323111 142648938 449450617 996946716 997235632 294701733 424289827 209032858 368593403 315437253 515790338 798441437 840594457 58016085 282174705 239776249 980041321 579302454 826945035 585327918 636231259 169774273 349721681 636940224 945423407 469529466 668198642 344525458 606019389 462665863 957329345 437107876 902677996 83085651 585760545 647560228 751793279 301741809 336915891 482285298 486905403 433842336 486279013 540767153 861346243 889116723 969354512 46715740 308958675 946697961 996593594 71273540 839654922 227180726 973142435 120342213 975601557 109831796 126397329 433453984 594511549 620193179 977151311 292058971 773848935 960795296 990841685 430292271 878229065 542235815 608218442 602750245 930218182 602755973 617866515 819523488 840504535 496852665 580643405 821188472 931952052 667188915 926656893 917826656 963297705 54205836 223459087 144288555 285472768 88369273 919181056 301598705 370947008 622228380 965545616 505720700 913026284 19166387 465491345 958140551 977839758 771600365 773205624 979716856 986031916 903526235 941115705 604953982 627116976 446469606 530031686 72358308 981151455 579643363 761147799 298927729 867886359 26426477 469508242 686046031 779148912 91604264 511316780 202863485 336111116 733856851 945568577 45228374 173487627 556858910 989534601 560916395 727325941 351920144 711077601 318644308 608362088 977158449 997732031 220573630 444389122 801001864 875524382 826039471 965148576 441069774 883726290 86742847 488017514 854555752 955797592 838924772 876401787 979773812 992877263 593099813 662083436 674258234 950214462 417947805 691710704 345873375 496194125 238214316 903934518 906205293 909399595 862686167 920965495 202984437 519883713 407665450 641449566 392001003 765223852 934531958 997717342 203324432 784263811 563809597 647887616 448716421 731719037 400913996 923390687 796266186 823790571 420977072 775473859 755921959 942145913 571483405 906582873 335964724 664894956 365796270 393242345 299817604 809547548 185725025 418106443 199527290 931747301 889842455 916993881 991089875 995912764 426336968 740624798 127998959 256890465 285354928 287302465 347036445 603557719 301144423 632702282 208595294 249906202 48193554 738351462 871941919 979326891 430748091 493895728 50546496 279617624 14084810 977550301 857915514 910272843 255893756 813539552 206160803 747010059 22571197 101568852 3097850 571683022 471012484 621211184 79669824 980015965 267537843 369751576 800169159 859066288 702018017 703318107 432293307 654902080 157437602 846776351 41058627 606186070 285140817 674230029 621338570 823579477 20729583 441777781 201076081 527018856 877543353 933985804 463698150 465908341 153664633 257135389 838304074 918154559 936313049 971601935 908158557 981199055 808760768 810036950 278403038 849651891 5819058 338661540 728721373 918428833 124425320 265482674 536238243 778653540 224225389 633913743 732568277 856887756 749746285 943184611 512645270 741793533 431362631 486703490 356613699 953157259 511054461 844443207 578710759 944343311 769431522 858440536 833133447 984813853 90051679 210457325 544285282 705087413 311347554 910600263 772295199 792539157 580417069 581575929 320704485 597449096 396314653 957862136 167725613 326885789 615505207 977432783 818139364 860961857 668706485 991573476 597374548 787884265 863316546 993835160 686443901 942510629 22386762 560138819 699201596 950411164 910678366 926003211 761794327 765252100 365160682 555589256 459587615 558359002 192569180 943754193 344242866 584479834 395558792 654183610 877873854 883452296 730392321 799797488 738352388 801871065 127452919 140086688 280950751 886039187 727827946 791444639 653530538 852490981 495338035 701366463 627489415 912146837 897346441 936733978 153528893 881120751 514538500 567346913 398658783 981543761 764478938 963374588 869824635 875211796 806250820 827059924 722925497 913878558 86485137 520615370 540773185 547589141 719861427 941978921 506805951 584355803 706318593 922974005 407499173 744005434 104392314 577337900 353739539 861521906 91535197 811398349 758654798 811413658 885438623 943149021 887405029 995754474 243298167 547931902 828095822 836404483 917934463 969697261 782763119 927764361 81274436 708504248 693817688 774306231 371335150 618336456 244838870 383332622 693017307 859909883 339930209 694389640 859895093 938408474 144452410 731841068 729116281 905118689 564941070 793086643 681733489 996464595 229489076 785851330 180395274 625558732 607686760 733732390 911325032 919165023 84950672 273334964 378583044 918294637 535347702 701496350 233939280 719796020 200927025 675546613 210802474 642928995 326981298 505338810 632100704 999854181 701888765 894164630 370132256 896600199 129591444 261583038 46552980 507417992 538433033 813219428 967090457 991263186 6978166 927028710 492099470 686388411 484827153 930763273 194469889 426960212 888981115 969849361 83182473 852896602 106747320 460473382 962631634 999245398 76142538 659380872 706982190 874228715 369600395 763846638 290574869 852527634 852862381 983188537 315307829 696330767 854792583 905054005 726980708 808952640 440240740 588093911 683713791 872482852 466795864 914948151 598181980 696674595 457264104 842912822 456101868 671903471 291691969 613858234 992201015 997193813 194273423 283673083 153901135 700297761 429461045 573840922 133479286 684320419 36169275 414703453 252448277 761252278 63638945 449809585 560637850 676935483 925846782 997420841 545052486 792046923 932252613 988357988 943378792 976177590 427737697 742207946 132119474 407708107 408633471 577048443 340147073 959956575 156360175 909608044 850993272 996142524 188374027 743333104 295630781 540475878 366716354 836482388 421985540 992729325 787186752 983334684 190662648 691059552 976310516 991241098 630466398 824172452 194095770 206485814 903307684 999700561 687473306 907448424 172632196 774942255 601641063 974002237 872206300 906514997 633822137 641601587 676006680 771229641 895801117 935481736 552911489 821508538 81795824 622121597 932930123 933215330 393801368 673304882 418213837 855724144 799438015 889065247 806391627 919534369 957700146 995404736 440767155 711012926 779485834 863326201 819654096 902358405 461300617 606568372 6443296 587385943 423320899 945948277 243726091 347221259 772163959 785566740 204350881 449648896 268111491 944981956 572162532 747717157 826494740 866337908 466745748 778123547 993457729 997858808 804751532 890179675 90171014 669933632 198569942 555485666 453220452 880446867 479985474 554384325 429062434 633231622 62323222 315857049 131462154 969953815 629167162 907312148 976057381 997076178 163547596 654347702 818671225 855847022 354701447 361632568 308599948 720031982 76832762 555572686 812273875 912284544 645232047 773472453 785879368 976220212 487782833 509450034 582241742 878674420 289395021 898546992 58432848 742889890 518244063 919492529 279341479 794073712 587143787 880200112 904365521 927746247 967192742 977602288 143928809 965273159 909293103 970110059 958927368 983983525 290989652 365913673 327769798 735043607 640262466 991814289 628230360 664883152 17884112 824924499 53033976 838210992 295220559 912523833 647751236 683122798 157525390 398942357 972611661 975302568 565976671 773156554 246875665 853647868 949889481 977991836 700184026 770134387 840627854 931772846 223405613 678453397 849943735 878945332 125214482 657661342 934327551 939782987 460911052 725905966 772088994 982733058 287980784 823348506 490786788 629909867 675940720 702932548 646872238 740903025 937819025 965948759 729943173 813451835 412097531 470539273 752195518 756349489 657748420 726996859 376641183 628266750 402428924 434799009 275097971 633445010 594387417 986558200 833040464 933904951 941766286 966466380 165053824 571071083 636191905 886111349 854038985 876659428 491260942 937444942 14976493 915051293 542113125 998910728 904983301 978681958 510091508 660282885 539191094 809564489 775271734 805349041 216206247 523481743 626402499 771167078 19270952 761609372 376416683 420411487 699606738 778180571 217378438 312516501 54569551 874109452 934766311 958094973 843486375 939662479 952759221 959112557 169709807 901574371 239063599 298153513 403345001 981696914 524645384 596013973 7331233 875982123 536558212 869509575 240378660 844120799 683652130 709170064 872153675 935094132 342572296 574488720 557321579 778005501 233170988 385495356 692147704 931791738 277523061 718302958 746911548 990813889 88671971 759437080 196635638 266339204 701721798 705102358 298490495 749372082 442985716 937006178 554958820 637854815 698455731 858558683 777111498 859674894 367733001 775417743 347226864 791235248 413944847 798641281 164167780 220574207 502509640 713122431 414069158 753760927 183088469 887797207 479732157 854284727 771195476 799081169 999484252 999568573 874422484 931375777 789289209 887163059 545494477 558726964 700261893 850064356 784518578 982020154 663359199 938229120 774876761 934737961 256809980 579577494 298877342 581513697 727117060 848616827 880763835 937065672 817921754 823033852 177116720 583954514 19611342 428842967 359642059 511466702 653169026 786294328 221253321 707790195 567144888 863040533 659271219 928681488 70180981 499815518 268749694 500932836 215873471 316417838 832258175 982275241 518574641 538586614 572890817 780174747 838985841 967164386 260924494 766315149 687869127 785004969 478560878 697640695 204887227 622237126 278956024 619115428 416210185 463706824 547256746 722977178 326072453 978384346 392410706 977447265 147344737 773960067 234240330 466051743 766254844 990257515 600863656 681888768 766743819 965964654 816829477 858425692 94674455 701854319 230624879 765214205 259980195 469128097 120865349 917489841 553932827 734982961 20250559 932817794 36454983 560324403 693170095 855695470 779620573 828707985 54831871 825620029 867393834 951137138 160817241 442224490 931518907 954624094 53329522 474675081 891132680 894925301 69305955 874612578 288040047 715896836 594900452 871393317 227164912 318138450 483104478 988499968 625547579 916659289 359674432 415283171 487725407 712258907 279309993 812355514 580949434 917626815 481581255 679590924 84215109 482125187 43559234 495393045 578822824 647708889 495887700 852432209 247527247 304111809 676567421 857712299 687530017 927639876 788092030 915041489 365159683 827780235 621169517 919472007 736337340 786963034 516990300 914013794 723121667 759744279 88734866 238261441 461875855 956876387 925837855 983786030 797470470 847594124 537924948 786553365 983370287 993944297 738190031 917595202 891066053 997277445 970588963 989997059 652726716 990613554 500777037 702034754 495903333 921817717 938882429 994018314 203833787 736570662 290247686 945059948 482331939 844044371 820723455 826381373 781054405 914270089 856573847 930965168 934689615 970674937 914141752 973148620 62831249 969452983 902014493 946067968 241001539 724663333 30027670 846826039 813381427 916604208 391549691 701302250 22844956 858005138 397789380 405585987 357632047 367335657 673812775 904269772 728798661 869189155 299762434 492158809 83178212 857307456 456871888 555880435 763210003 950822516 933891615 952648013 654086531 873212204 455536140 456436386 658943912 681843860 953025407 983892857 432425062 779433456 378364306 858570056 387880246 509774940 460922769 649374116 108798527 733957960 920289976 996039709 942267625 958718032 231316121 904931896 998466994 999571638 840470544 943552795 901426617 966939900 691483467 759749860 356913868 652187234 573172382 817597229 167879518 542933341 776280520 991096519 60405633 651857683 871137764 927394508 942075486 942958375 540882174 562572416 739072583 924181267 112186170 736649154 836694429 956100993 458841563 619834726 219299378 771154391 463106232 684586050 963349165 975958110 464650373 526323139 196459764 251698282 563248067 859370119 851179442 996407491 99043953 769985127 414792091 489077170 98957387 865072506 878743084 948272149 941623706 961355817 738097464 900894149 294298643 658372047 253431709 341144006 649444730 879452886 186325713 869874206 625241162 636522863 962564363 987580641 108473966 858134003 168857679 715915066 948045814 977387203 448790692 783347340 190160066 209115443 446803365 788865885 230623657 917329120 283339081 441616190 443967191 591626797 643662584 850522255 89006186 415406233 9489402 996228608 315574062 513640210 458400048 924240664 941717682 961236107 777323457 851836282 963442997 966586914 100725981 531569770 161665333 694732437 419047525 674677486 985811909 993857015 871853324 917042198 196197420 465135343 143019911 776196649 887354372 981634861 507893497 796992316 310850779 545137214 642081127 926759990 151802883 176272192 503597292 860251090 149509727 298915316 201649070 239562332 236359643 391387581 466297332 736882626 612737258 938516280 525186766 675602463 723007802 815170362 632755904 781669374 256061476 709913476 183165159 905788836 174587246 987713916 27795491 517127031 2746735 601333816 934602547 997421055 587155228 712387000 207036615 359374550 322552138 377374255 34772717 181685173 160179438 822992368 767750806 954501327 366285018 769417435 557560992 853196160 388628876 982185044 788505135 890050672 641200559 974850913 35403548 557069572 2271430 418148943 348462384 613306038 352586595 448522017 622306398 639327728 599296995 661657101 686262331 929599366 555228856 871336494 49244304 79299359 567389083 695258017 42586253 700898649 30317910 802999487 41433080 76918872 991164642 995400525 154630980 254533623 337428810 568626781 977162830 984953226 325369841 974499386 323925421 339125428 72496778 760457097 852215945 964919411 269732003 643415580 970004670 980332045 798379469 870901056 234869485 320468332 366652669 555274625 8185347 485024698 933427632 992118000 156780579 461861461 509514762 955444364 785463107 969931825 943501217 981266019 792425571 951991637 747511218 759901516 413603283 737352355 614013886 823625113 597763606 965636101 9073789 77121703 312130513 899916918 876892875 971341853 668381787 793628513 459385023 940752126 140147727 600936092 238956185 428343671 934754584 990916255 424954357 534230194 621531312 628391338 33272689 647765702 814525134 926286686 482201057 660091898 455135397 869843275 269503428 483319799 102688529 271268386 465394107 864277012 529194766 806867051 694527731 771701671 689955174 981354343 362146015 528339463 365805392 936438523 708613986 869075247 608519023 861199611 59521390 978549316 890523020 968569895 342312316 978033896 859092758 903684385 968200306 983081134 950407837 967104457 827348295 994682079 30892615 502380121 206819116 750131894 483518145 868058945 236154143 415684931 125062190 379263994 6148128 982014903 89402611 751698084 32172906 604256199 814799447 834513761 764429556 997666816 485628621 818814107 351962739 839825701 754009666 806480137 947886269 958050264 583634699 967344294 814612052 982315500 203019303 874708018 303215300 320394978 955332000 993217884 774085765 986341018 485537625 778621929 486786700 593640408 504060508 596780250 622862837 788091341 643646290 649068190 176553048 346352602 49796401 958241844 358148880 513430005 198517267 318420843 870479241 995042999 342355815 493420740 859428262 885120796 670908404 780986987 92150522 790613509 661865311 911557648 205155752 758288079 150852183 823243735 810663515 822737985 349535028 546610895 73595877 825355338 100111487 181116079 398595422 704714538 198549877 447687368 57153089 714264602 598562135 990722934 222084698 539180280 223187826 782494023 376952108 609947978 814341314 930731973 405559317 716511607 831246698 968973666 835543266 947813682 932007662 937071712 766328089 948894190 595935040 607944176 812469422 886841231 127621201 599429208 380106377 707585460 522963178 862959564 565443112 677972623 989977519 993456874 780659122 970282134 12000452 504772323 357680603 877346689 813083107 940915761 503643535 735820822 148294914 321073709 569407359 609042026 767155157 874481501 806511367 916853514 656206059 934263101 328538415 946522580 931145221 938710975 524274401 767213476 718283762 847527751 826423457 925858772 181576605 527151585 804858612 908465231 596220442 643351341 380667769 797457813 975107864 984330734 940253302 962097359 464815970 765180078 587147246 669824725 425710379 776253975 969962613 987384877 195561430 397746329 23804119 182010974 147349156 477508719 744461791 784101031 110646589 593994845 526813866 854579827 454768068 467758826 456061410 781527903 615491482 981809101 119102140 346564387 687106138 965796675 847421072 889708832 508501173 637327190 199433555 350356991 9894269 653900604 505755334 833628860 808819179 813796507 41544493 218166406 371219135 688704462 774761124 857037508 5806574 738125007 274161678 617179838 368759109 419885190 803567702 880240429 780950701 871422137 39940208 553805507 195952329 226234439 249426996 635578354 286273536 871378001 321631598 340544519 86989217 244583404 206702113 814842990 188051640 772254694 972472171 999952351 773635017 913516719 304966227 448384129 25832555 516577366 655379258 756269918 669915014 989953970 677917641 679712366 816608928 865963051 913836957 934209983 958570406 961408578 642998709 683818661 557286274 711012548 345815052 914920703 545284335 803921768 246884318 528623231 143560951 197608760 711629393 747360652 858472733 891405112 582624554 622226336 81427975 464545493 727395023 995628105 483553000 813359475 961846020 980194110 814506782 939204661 730789038 922113715 95525479 667671819 119570571 988002149 627784109 827072459 39600688 976512749 23440051 224424668 387890385 762586155 253703454 334981669 268127359 790567187 530837862 673866667 273267519 581565887 638791234 701441595 109815836 656534420 467410385 854827151 956509357 996063833 648584825 683538046 851797307 995817463 730388834 787180331 767916694 847064282 173113226 927637991 795270154 921703467 423427250 673898434 810770123 890789745 134725149 366460139 605739968 678877868 754225178 855692394 758641971 926746157 181265406 412548009 414273823 575144602 68622540 758952042 492608229 964181234 47854727 616851103 701644459 773705243 140044084 189510056 282667149 967032986 119348497 189512971 985954999 986814817 776462498 970828548 969891679 973416995 729540757 872670324 127460299 478337809 303345068 944020279 526962701 947377943 615759586 932959426 680501838 932629821 289760206 831368138 514599119 757168925 570881385 845357204 928180657 997720721 282409577 462655654 102044148 572545584 582871606 809258055 553316027 977934656 91160022 416934450 710007266 793758203 639667758 833265230 412208162 889931208 534852648 596240164 32616685 576834999 435417974 897919062 733879093 890817010 618708173 892952794 582076825 790918230 209676973 708560845 37586066 421328495 483072 973628827 269495341 512936325 895917770 922833359 261356250 897349247 366595176 764968444 446607690 501991352 356292205 683722290 676506551 962670591 666540268 852777366 280097292 891917679 798820747 806217094 414531522 784468722 206994838 667597957 882831284 931638018 527636751 918978174 218603511 684073388 484326797 674526398 668988834 975646126 457285817 621968191 115784862 180829470 884057715 977371288 229231211 789605499 818002857 844741566 688075373 914298167 592187447 866127489 802249553 836689294 964035642 974459345 639239579 914026050 735919920 972248022 195042216 548375627 328745516 522956908 275048594 314764247 9398440 474251277 450342311 579381066 57165491 910864695 136385679 684196585 892822960 917695286 224872559 672240730 73520278 378563965 960297514 993520896 571835536 755578591 928339830 999449734 106078971 818770171 981891212 995660809 71445232 257836730 328305698 459259288 358363286 711771673 90070929 627356993 665096409 985205121 292835458 689900225 599980687 948459690 162058900 599956263 610779280 786393262 209563103 634542083 67749873 829876409 594765440 811271184 519174903 950120473 896415937 982590715 988196798 998149318 184258122 670679484 341324762 367258553 328681680 878832615 127640398 862539630 140995460 834724527 349352702 375186337 139318612 178747251 558525488 877941062 809303436 836553211 302208662 933553770 115738560 851434184 261477901 667330873 68401477 836250685 982386041 987578730 125851269 510365168 80322368 809754897 847798554 920211715 705426810 988259282 453717625 885213873 692687018 702918248 118891516 932420600 205533712 282789198 730739894 748698336 46309442 192206325 344634475 985772004 529453703 680026849 166803409 411334708 202448351 253603296 661035935 747551097 213860063 998193094 664804309 964758939 394737672 685704868 122427324 374911801 170270309 497940728 108763989 661209249 994872701 998722635 721797307 798248148 159120038 598227423 327653940 694942078 633243737 755598078 725660000 772690428 865943541 996737726 841823528 882898692 16949440 999868074 303522808 829679216 25177930 693203257 983479185 988827903 375687762 611481225 583669397 849234763 247882684 633790462 959308888 967582691 955361639 957344506 844418913 895285164 282124 117071678 317439374 980072740 983916395 993459071 399828113 925746555 162129639 266243001 107241360 210677699 302028347 459838527 845060038 950935579 799749357 825055686 348518765 973342564 577033797 580392396 783588324 926768907 797147780 981787368 469065065 741928359 679450803 831554994 195011758 667958163 45860331 892766703 619939326 700221242 785119410 901624342 683251655 692844687 606290301 980824883 159573552 291828991 590714119 660315891 626530118 840554961 549306156 885309107 912242473 973206438 81339993 632196751 194340327 263303700 462652416 731233185 291658681 524481176 732262112 841307458 451907442 495406916 472537157 950760140 504924627 940011200 186126145 751612175 421173729 999749224 617190455 816394109 163012810 780348808 874259527 955342748 569424432 685228647 332754592 433183576 517173051 944399793 728901987 914282330 238541794 251678447 944095239 949875332 895156384 904353714 776109511 799130502 876593348 923460046 454508472 493036067 479976134 489870967 392904874 522440008 75981387 897310722 422080225 886058580 225700531 370596937 428425838 856655805 876117561 921291356 986148965 991938859 468780817 781652742 849626224 974179344 885910941 985366020 169991008 410458144 531698300 693071112 339392442 729289902 634292882 867876172 888772960 982588798 394719655 712027312 288144185 593735137 24059578 823187397 621988066 663632655 451971613 635655912 459581594 659425874 27041829 509991887 253731662 486686859 89257332 730279624 958499502 960043433 927225306 945644757 961998433 996734875 450764763 993235995 860988565 914218146 956567545 959223555 633842407 679526776 401659967 695825689 860612609 891934816 113021634 219667916 262910147 786308029 269420454 911881010 742013538 918237965 235478347 975764881 871553815 956712928 446935886 930160869 379080982 641113102 334439001 589666121 909953106 959460835 948326086 959648911 466038602 903752455 605929614 864037780 903770354 933849043 623595739 982915087 662695052 999995344 507197057 517963713 628145097 828898766 109721820 584438513 532530720 760733267 296229530 799055701 71197678 960589982 774178808 784831228 730146244 931254337 181594383 729778112 816395035 986910585 560675159 876290574 299716756 357606955 194955547 878847507 147980698 913307982 535905386 649069967 108225843 454337399 623041586 807011483 824253405 895198399 176359230 668580069 498180348 549271869 552967464 629602946 378384166 892078723 785628290 827697591 304136009 913935453 85313093 778987989 538533948 752641065 676730020 807232322 352722212 498487044 26388629 184267617 494604948 788239560 237484783 334141607 215042321 287466878 404353815 943199715 381457430 688101644 694519492 982591964 946298614 992245316 281626863 957817833 621913075 911668823 985437078 990070741 970424265 998096168 20200792 69679941 123385371 143618354 622508730 852213987 226235579 410092130 236223249 305100039 939910270 980450009 964682614 996688552 648172388 687284338 479053546 957492765 335429285 584024313 480148494 666984204 173194524 253332200 813171803 844606138 171258779 538142129 487385996 871119896 180406081 507463103 211865322 493940671 15496231 61386893 2163380 734580334 537984058 671363518 984144450 986731578 198725382 710141907 963760790 964557815 431356853 890606444 347953388 785134582 509764073 711270920 328935552 591891690 491519197 824914572 36084294 730987166 266178759 314333181 11293631 567845427 987885460 997994121 306316220 822251523 588982686 888082613 985003153 987551717 57239987 624439305 867992594 903392709 56742528 117513970 663668219 752528673 952682620 972458373 665873854 946695626 619569396 926768486 34693832 517006796 571922855 597049861 552770015 864993040 538045892 593170288 782485216 815900333 171413628 256074675 38904747 572585132 819455333 834086478 72898846 637006863 784767010 907921475 26834628 142463727 757449060 860836587 229320220 567988515 527077752 861310627 34296309 509797839 669449552 869175066 599999886 857152519 438291012 718606991 793005925 973249414 486033809 841784259 89696573 523040317 636690534 660804399 56101564 213069920 456927799 825065536 141170760 213847807 38033193 796632790 825678264 940249188 113957573 251768049 285972789 345955985 85964763 455690727 228585345 289408697 202433320 714050954 452848523 645425458 811246391 986122416 652194442 841393404 979141441 994766926 444877385 753957353 810475233 815845745 618118262 668471852 5925149 14608528 876534771 891503407 681002062 778455187 372212254 616668319 386521688 793603154 574913076 864891741 955814731 988545162 531751574 850469248 485881874 739189207 677958802 887934477 509600914 653187034 226097892 536085769 440250012 798106076 466365996 997381220 422426825 781685671 596144275 974597304 868926870 910048258 627238069 726357176 650974376 687999443 260765367 508716067 998816443 999006918 431386509 752955816 466852774 767425788 225388576 548845188 793708405 934638356 393741471 805688721 21401868 197615129 596623925 675451059 974126858 984563538 180573435 546179618 664050571 707820044 170444266 857894599 519315070 682533496 21749159 89496257 372887680 955426071 563784404 714519742 881256947 998364548 985351794 992332295 667089402 811671425 693817150 930788779 638800976 644088380 557702414 561876661 919103611 999476741 960640379 995281623 966008580 975080538 271795813 541801390 168139489 856732223 687320773 962618239 313837230 955710146 784323833 878407074 126976000 162597233 955906808 965600925 850385731 897211751 409131926 586844231 650663797 760769315 374919257 381676623 579513816 656456170 177537006 882831127 658685636 840359757 136901139 496158170 738612703 742870828 894848292 991172830 966836395 986421739 864518748 897754573 138335093 841120615 210550854 848067294 383350086 929174682 294924522 455548546 757708500 822027199 75777505 882719038 627928514 977707960 735928643 833465233 132414561 295461661 352260869 786383944 277591001 608757855 95637468 683767709 402629715 576840111 85372704 170441875 574302158 889258550 1784963 339964474 267258680 738290517 350116966 440116331 858262927 901587812 777537453 979640550 495155320 701555642 753927197 916505592 840236450 981449326 225714568 906739917 928938629 971081915 244061769 578181816 509693807 705448398 283960896 992911335 288145696 917727131 102135702 341943689 413624801 801778525 364139050 883511147 617781336 643009338 615117447 869573116 702421855 994981139 779707657 896354305 575716936 839819858 741317660 760985294 438044737 564939097 669391626 902204119 801515422 825869746 941680203 970365707 557133466 913449097 980162209 991083445 386143282 929966798 935906976 960965661 746572550 998286132 650920169 669859871 361988311 862316613 988850272 998494425 214437276 384201409 287454236 572328277 129159132 199470517 880209870 922682658 955984438 999427667 552442548 971617952 346146935 707006335 437620851 777370683 227429883 417882198 373906509 880881519 966468819 969467800 992452115 999375637 163090484 668847574 208317349 809029594 975601826 985629649 630260343 886838644 888847845 949242362 714466514 947576317 820274407 841876521 880626872 953952758 942429422 992376271 100604458 271866403 805757539 867024533 653551347 773159591 466834116 904756690 418011477 861186908 117719522 966069194 540469956 643591239 359813448 486894670 370332384 607355504 73520836 123829289 821567651 824899122 670882531 928685930 68056197 634143316 966044411 970033327 678177292 901455289 487141275 531920565 810692857 830012533 834431505 885850018 57187416 807091598 270314196 580703177 972166170 992988313 260073416 870608113 749145442 760293700 936384092 966971506 883761878 948167588 558669648 895643135 63331406 595428185 610337880 703057021 652363428 714403525 299935200 337918412 639404050 821575819 778052317 861517796 643124610 767688327 622320366 852219629 647949451 983079337 949249881 984916096 764224916 932268496 611183032 738999285 325891750 532397904 564206930 910536993 122642276 160596145 949505973 955629728 503703240 997254954 849710742 991607571 372618979 461241349 868698800 993763807 271244646 565402190 257754755 704319395 198073964 798653852 133198915 137670838 361663617 788967983 317397132 379370145 327828444 958689398 778113551 897755197 173721362 271214318 156924535 370317838 104942648 372028222 966488861 988104911 736052703 906108677 947762889 948494020 158401849 400606403 42659900 861226847 177474552 975933113 332995495 416975139 240053974 293302786 353183095 834524546 380617445 991064518 184818822 626190112 480999579 568037048 922238138 990074083 723163517 764788333 878120879 903866940 465846807 813087856 363648742 765500394 929782189 959037110 957812841 998040859 990201977 998922715 972373903 994629144 67974445 559892718 532343438 804928188 993817320 996423194 950187522 986005238 124211342 143092130 203678655 752812431 630346298 936006265 627035980 712603228 508760253 890143929 558578279 860664841 225092942 655997524 453093304 724034735 488156661 631826535 235915119 747562222 518285611 821536117 629504968 720671892 761606949 940123797 300405259 672058162 680245999 848344824 306241750 892616024 723666597 894657870 892897545 993915505 982472852 999549561 218058667 698432430 252482899 494294636 908721484 971614368 268184083 554282341 733918078 738696751 610685914 914088047 537031584 972032717 815374365 987377930 739804933 895965936 807361288 945540564 880393559 977122030 615249757 711570686 178889318 609006206 656060413 747343555 433439618 667988478 849466273 998429836 38826136 680151602 784173864 930024167 518954642 962068242 427322916 976688506 625272163 737581478 567053148 696691258 709683146 716155731 984136383 987500902 388171158 776075645 534584236 611667719 88439614 455383010 803375502 836291545 694945097 976982409 371476048 990605428 841049184 974846259 728006883 853293072 352252345 431364744 998228195 998444273 868320239 973979744 804946993 859000383 792681531 803973112 669972031 737141424 834740826 848932323 533870394 668111090 701088423 760190094 556903357 586116865 123199090 744869138 82178050 663863241 30662161 930408949 205669718 959504887 914124495 967276302 363928525 797921965 426143326 761245810 690772653 892636806 420109346 763494197 990637874 993618172 870776743 967433928 643382139 864451245 691019787 708211267 530767130 811515817 412456499 943304178 305191748 677186832 872657615 903724161 670950575 935045789 167610936 728116985 23771999 873626305 467353929 882208288 542152867 934338533 648890617 886454970 414738582 788394003 103027832 403951735 632511514 978437686 937378252 993483918 671309637 952373892 388404228 833675755 835889046 919840162 522576417 605788615 125274438 312340944 659034122 679309988 17642824 781717376 258196389 669584017 29275268 164603701 41799023 778602922 150382127 711497329 977945940 993213491 667389117 935385492 228570871 776379633 900405622 968254214 50587674 128128572 239829155 493082633 981784087 989265540 836299379 907764613 505232247 899073849 776229073 940419839 237106973 784999157 919035673 958143278 852986434 981734873 137807775 418548837 496809499 858716728 794391978 834688411 751008471 829676160 743662615 990026705 263836176 429150365 957475966 981001273 443580296 481388602 242136567 668235912 560417764 657256882 980945096 991454455 696194996 791599704 774926892 827291851 449675335 847927256 811117728 854785298 144537989 562422456 292667479 729288029 402808016 559581683 185865932 539206601 509118921 941407968 107982373 224419891 240291017 510085091 888710233 985691542 166352057 497836725 927034168 936262586 722964228 906163672 357611699 370207713 960468295 999996814 487232991 721781777 170727794 833564052 475305028 592873869 474329039 517376953 411031507 622593486 339742097 594023005 99386679 543156484 31382692 180857680 133990665 425850876 573222468 666455251 521118408 671153221 193699305 926673096 282764144 717889730 406184285 962931043 415359139 736324227 163940495 512160789 585559649 746242332 138425285 218368634 546801959 993570398 766085872 867533314 343569497 553721072 47742619 910794087 289887297 529954928 691128659 763857467 852326531 858300624 900129017 971177186 631094869 786146153 855577033 971049717 889959107 911464971 634900824 805579353 609731854 812074246 219869674 642523478 498538811 728613793 672087901 805614791 214708215 220167989 975221226 978114868 269686122 838751355 184014585 786825051 583651236 632254598 925495307 934051276 626713182 667615387 997485628 999378692 727130975 828871703 100787863 694642138 735069722 962075671 491303198 542955048 767865012 785429603 477671723 950671810 590058211 597187687 629017061 929409664 739575387 950919319 218567659 539607266 990958281 991394525 898340870 910027286 253327046 405029169 65180569 524422138 182416676 942943700 705607845 889725884 296060993 629122816 834922887 892619094 566557186 736681612 594756359 879247248 442925551 754120337 125457778 886096381 596074509 650083763 802174905 861007782 31424027 716794103 296788555 677874610 143057729 528574204 720447700 941076662 482936043 529960217 955762519 977639082 964967032 991416357 326863397 518814468 63356582 149289448 73989420 688214302 244142068 654064633 214199799 557930070 425798123 585570073 614788424 969668914 794908602 923052698 517030969 865572229 584285568 939446391 756204411 841749826 779766126 936387534 649859032 869539875 865245908 992335777 484040699 569222332 746241674 990426260 395656993 912619025 725598952 751111285 296329667 669170788 39470478 344967406 539230116 754988146 622549962 632697777 326960307 473815702 405501783 456130451 471148193 656570156 590595408 963557315 68403259 364050661 568541510 951802171 899133790 909881845 242584354 866253915 26932648 474353732 888513350 967111287 96051884 567421113 713014359 713141758 57421501 337408645 468873989 555484387 315318228 528464325 687418460 877020347 397721860 671930320 502521740 770727687 213194653 410739233 647752278 982550976 140669117 998977269 203471695 813968325 708290383 975748643 417152207 632053704 843831491 959649473 304870303 592304816 311628508 863169953 258223737 683827467 864866352 871079226 533772066 883300437 275564801 673203278 237099600 417666940 238842168 811720748 448302120 531823035 527080870 771210751 634270752 940807384 973047788 995875711 393971343 960146836 527836184 951295644 685990995 878828382 327542422 597046026 90579645 302198465 73911801 273286236 818983830 996652890 845166553 966533163 829728140 837468072 796223013 907249896 597962391 669783723 948632787 994987488 964545947 980905207 224199028 310535361 304191355 618745722 713485513 860166452 947535318 966195737 871036627 991047683 556702658 709144429 537388396 661849873 489171130 752534753 707220243 984023199 175638493 185435722 409864747 676801600 246327048 715268461 2298701 110074880 736256297 779573152 159421117 946421025 371996880 751422353 30878139 438155236 849390396 938778760 536125104 572307820 783537572 947385541 626844599 657623096 406679476 415836449 525171357 720263164 945469451 965497443 559173454 690572435 216290273 523810705 985143461 985209811 16846801 410333651 104377053 711215325 360853570 876558841 116363205 944255335 436223734 479665623 591936375 721337257 172885163 969167891 983394743 987341356 681820195 696245536 528829438 696227300 619719624 704715798 462043166 994817441 255750544 367708131 297452616 345849599 88005095 818847276 11921026 48808981 367978020 390201725 135597012 991153426 261677896 785482387 646637258 858025372 715153543 928119699 193015310 728458068 869335254 907699673 782145781 901572441 68695210 386362296 229206952 534206711 889101122 900792450 838276887 930838648 292814627 654974444 505804194 905595589 5391780 401402705 765544414 984700908 878980321 958226680 651454890 700660281 912149104 959054651 461233556 561062078 15918225 654481265 376475156 590861783 12608762 613058909 446022812 565711072 428221524 886911166 379843959 825376069 25968650 916360356 636630049 893653657 127142922 403743662 184418171 665715245 339261917 693430648 320533134 575117230 572097391 607572735 186303657 614222314 918250478 932449059 716257487 741344791 844386115 927434395 215565182 409297699 955745737 983331632 467920437 827993900 723465021 799394914 646743094 982738492 452134830 765288688 17598327 592163896 799637719 834870984 324857324 374481355 331323317 822670299 970011354 989107769 393846901 783096454 22202748 146730658 713321153 819768460 984708551 995973237 888471087 947209663 962148264 969208096 324661736 655689048 508810066 687555180 678814118 932264119 96150357 100260399 710666481 862007776 576923431 752466845 703494500 765996360 13830695 174320969 851655314 874502212 416228964 573891732 753506843 941578156 902539559 913248063 285259642 819399811 59115933 433289868 83986760 474122048 253318017 872389889 670859167 938534494 331628576 974441020 533215184 799314398 524482779 727824543 202661129 815114778 496598199 634450364 128652014 226866176 368047365 456949312 994225281 998709948 421853259 434187934 97395823 675292353 601566337 623793494 429518277 750906683 61645724 741311382 674577866 802587198 737318948 890136454 607286838 891432482 402606860 803590622 351400531 428748930 975675260 995646151 543886075 722338838 251086996 522894538 94231689 351689110 602763889 787909985 201846737 268779064 736411888 866192168 2816230 633358358 279557319 873792011 87512837 432171281 759634378 883558627 784989405 949596519 404651434 838304811 801353634 812988161 156974548 546571411 890287757 965323677 928436949 968283854 768343665 925813917 781620422 789206167 904904163 967133062 163920682 882403214 980780920 986133724 845955898 959647361 658031389 709190136 295020127 688489631 134306929 463791362 176594317 396418727 244038167 429001647 447930150 935710685 652999650 739821184 725907490 785793696 481309269 888848077 65018639 406674734 438171554 712211741 459813853 475970524 872008204 991625407 362062866 738043563 486936852 533811041 499569396 869976453 400153826 804226187 231853436 658751230 327295964 512001399 220256796 778133148 666285309 879075471 726321811 986771013 260165331 671929205 757622917 930651158 487846733 682624134 373004963 419135071 715205510 800229569 732991513 740921821 610980702 845445219 69424024 722653117 183150989 420138766 418898707 512328922 64301354 521433891 520076176 880972867 260893354 689122062 275702611 345689301 180565007 662912362 425849194 809107767 943973044 988681343 346569101 458201243 711296595 829006497 859033009 963967423 700137133 925670079 855208550 924501484 2695799 570779722 655250292 713162370 449516419 821310565 187017617 785720337 491910716 498153357 214607784 326803429 387815293 419747149 513665151 820084881 523973950 674666998 10732180 285902485 531567625 973981582 470879319 661126692 285433001 578967754 143940107 175218310 5012051 706337043 112331091 710249333 565254265 730222307 54573907 498159291 5355267 370596467 229075255 369990948 906263357 927716741 716378624 747415649 380053236 519030971 520798563 748311333 898756736 914212223 537823412 703928736 729570402 778379737 669062521 876194382 477543164 889023479 35771442 52689202 501399989 579197791 785125774 858817492 7604673 141208460 512796599 623964942 234160630 623788585 420590264 661727108 939310294 961746357 217473214 453717207 923750800 928129898 149487187 740368781 631985439 773972480 320531366 880027322 689809834 844171322 978114293 996248261 248540446 361783886 424691019 724908693 619685278 737096091 770369591 927503086 590853560 616235191 740813840 832956021 724520762 832037158 306267768 481155365 641119705 790307574 81257471 946544539 276508027 773831484 37408922 507125350 29582599 815992625 996162499 997863922 309317501 898408491 817126690 989819033 363834902 363873865 964445524 994814135 506494590 616140012 603751829 787898814 464499313 883995409 604162585 952170461 133380031 919710493 904648605 960754700 977016945 992011106 232696456 324518403 296893837 440614477 602083838 720197935 612148834 621356730 297000581 767975867 260820990 620001603 837698241 859938285 766170701 863447927 637914432 808323724 334075893 743427174 818488019 842290975 945385050 978159251 584989718 614267898 976706059 995584305 364107410 465736330 747705520 990252535 451458616 597847885 974272330 983736780 489354540 648986590 10775044 620573067 797828782 805926533 612346839 642540866 682559680 903932171 476747723 529114861 500796828 882322174 88607319 397629501 284062473 467246563 977544168 998720676 769760538 789503057 725510307 904814947 452741038 512488617 362692604 856660990 62249788 873167348 744483758 747380812 675412414 779598668 381581643 505168424 329437990 431528690 704787381 957149744 19028755 845642420 883834515 972673386 603971395 860886521 759380644 913095563 498713006 593438816 385955966 763252468 481458038 901053890 302926814 424742651 908765429 962456526 977771736 995380360 75909515 901673955 74907563 590627491 309902293 441643882 907560847 908648551 508024288 857503592 256996719 979322526 147630455 904315208 767908442 988933360 608729913 930819610 297110865 994652937 814681461 849392753 171557874 423193091 57831348 408602961 539760416 842469932 639674458 987574252 189303920 272358368 533136546 849631511 654411357 741565719 670386708 970928494 187284050 214796349 23553954 417292607 657083503 921732612 40855060 179870311 662067370 796387369 886998551 977833491 889427841 902641333 724670630 941411779 59332686 876053825 67355140 862360511 692962465 865975751 457789904 567261425 880779504 920758380 222827419 826631950 724675874 973564198 748735178 920171490 565323217 974904424 799913555 832063052 869308806 918624279 896345646 911515000 153331268 671540950 778737597 948226696 979344563 983093523 148545951 507511950 777022777 923120117 647213655 733081070 178447395 939541558 431502380 653004719 658362012 756937648 140738678 803300867 514814068 726726075 138078454 735058362 334627577 653561324 130014418 632066364 723510719 828097152 122769809 992919267 646664820 698373352 342721244 845919254 161214706 858634847 761299028 784628140 94401934 881902151 379089928 384013181 900805360 978943743 756836903 852709040 336841566 690011195 793548163 862871058 519940107 662460161 668237457 846665956 812774033 950964238 75331059 323999236 808326810 810515695 212014189 804574867 736283825 897243215 915236101 979290805 497885876 768229285 929218144 964348727 426541873 922546021 805036511 905984113 677322097 762412489 719469177 785601422 302532557 618963090 171586668 743243053 110797769 420973499 183668702 844875549 710464384 999561469 43817329 103179589 976728674 988794572 63856479 341684504 639534375 843085779 863411087 870284269 749982494 903153218 274516313 509087205 30583503 80310736 276497664 611639120 886508544 924645831 987295021 994469297 444638985 522613325 866756098 868173753 369679615 818753066 438325572 787936001 598537044 896380148 97403663 508823558 501971682 901610443 247508329 371806995 488547989 856186813 79149152 182632279 958888727 980524747 386905013 713428472 285863593 526820794 391312159 472957579 224884051 275712084 341312315 764439764 645073417 683893331 68823217 917377601 29247359 220385746 878039022 939410915 753160814 889264164 750607147 969475813 627197363 816399452 737672212 992231931 610948579 784557574 637986369 697996551 125528584 585065338 483889204 975984330 358664090 930397070 700169411 770954469 508710052 779789317 276926689 672949815 488334980 681147672 532229827 952041967 103195228 105813242 894481863 933180798 350218737 418352641 13166225 472413157 369314423 669468328 545657102 648841921 23641039 498460648 401654468 806063863 568664160 903925695 508950606 933610433 951908332 952780629 920174755 995982273 775329515 980544247 664377699 949555379 488154535 674789713 510082155 961033931 999825663 999877827 801315078 909552263 373582687 644250018 494499802 965023204 660327234 999441341 318995234 795836433 48962812 303937715 317999152 886174591 564790248 914744038 220824567 269677721 138457127 837734253 341489916 781793116 164856649 609599525 523703685 967624320 368983158 817714219 622847151 742397784 421174244 644986500 957811537 958659236 891929095 946114291 956979801 961856795 84465361 720079987 707652990 854111970 912257609 968974308 582978005 754911373 61931757 504185452 445522389 545423103 101922960 233592577 11838657 234432774 313566186 776016873 946464717 967165145 81087434 818974482 524278406 766041888 727894813 992334663 773593844 908581669 343770873 842286578 203546855 818067238 939283883 939567635 37577524 894153088 755823268 838943357 809429372 875499976 881073357 885486506 223479772 529664825 688899824 984634425 948091982 989433405 78633584 436231795 404616162 661266221 463835233 529931171 407883530 871490181 237983343 327287030 512408813 721389565 7345521 583379391 373490348 500134250 429596348 455756923 304129319 733346500 123558746 662155712 237310546 930885132 413146176 575064074 749409068 763438735 348004467 835577528 968700700 992756364 757334081 958728202 327681791 535098170 611050073 921629779 263753172 977497106 913673692 944162922 713947288 938658685 470513095 696086771 745141679 756200185 177164865 440961515 16591965 181599357 759365356 853362205 579641016 857588154 306875302 388393480 175042274 502035782 174032324 383928417 529006363 542035292 283924861 657457104 980312791 982587989 843723820 964621488 367470073 617078902 727804857 763460505 286146842 875948124 196855184 969960644 318472538 353517645 232677936 879625277 654638315 913755912 446694047 996226428 42575318 910115601 847664161 860969756 171696620 268612831 960017944 963904409 947171451 992834781 778939748 820809380 151442093 602120730 469203584 503222364 779008130 915090904 154051609 853190224 880306339 902431815 429570752 963192244 841948645 856236377 839500560 961562728 651467009 779259596 444268904 734121076 131995079 955235604 592155720 844256614 555300051 823930838 28445589 933279657 162014629 195111294 850108984 910482652 219216709 260550940 392416406 934942348 874924862 978833587 893830733 955618899 543338132 690237475 56601703 163925144 38677400 72535571 579388788 762031063 706438088 985430679 15288439 782131154 741115121 957892400 188836732 874293793 852225082 977034231 737468640 871166736 492265780 964733475 197483984 225828613 250340382 595194254 935365592 983620002 548201537 673479833 136996382 700925428 480553371 552138312 235023626 353219121 941736693 951148265 175104988 921278770 677344312 974263860 85350618 521584886 675009015 973983866 140930098 407205526 390808171 587132100 332389502 561952840 986499436 992920729 928111048 992232670 480635974 702341096 783059560 785222723 846139323 949855913 2327824 98079633 30897976 319137590 475768865 711732993 195965845 337379653 363901411 509043104 203126448 824367339 547730534 664812773 639244318 803323035 987255410 999663866 592382289 884201944 620796792 963752901 946004789 961195669 80930173 990750801 649515878 736836186 637286121 914359836 260554848 417815838 599568142 733103411 837666227 944467569 949244555 988259508 364035232 843631647 523644298 857923400 503839607 962382429 760946723 994394692 17457863 881431871 793141615 835691005 756885526 767075902 588992884 851146958 149344268 505171380 164604423 714889502 149522590 847036962 736184513 949765458 973884859 997960705 391462888 626895311 364856071 479959300 306317880 404347639 454027780 794168919 341643104 913446471 303585175 441957967 665381439 760060669 734945213 900250879 297135279 804675494 963843165 964018964 921274550 954960909 915037493 986440620 303358495 802790416 372596737 680515756 892625690 978016777 398474578 807196020 58505881 518073556 354143764 598294553 176931754 644614706 73762738 911245246 993870730 999208223 163312882 417546227 38076960 325000916 444267426 970626164 770427205 801841458 365401735 929474373 169030867 545439561 897970893 991571421 960758132 978436827 705084484 932848760 28059964 484301961 888654101 969222686 169027507 398715465 841321695 875527303 459081272 827839567 646755796 664215697 234437392 943945587 267020716 957541147 854834141 879174288 641273756 908521230 428593639 685179287 43246261 751264194 961781978 984646587 787755840 980047902 529516744 995577167 718420054 830325430 142524699 438385275 932443372 965747516 322261771 949548304 948330928 984932483 549609391 979255587 310903995 331267201 672185704 951235030 185029733 721674966 757704841 942864902 908905219 920330188 979056741 995439371 446831961 962409203 719738114 986078827 218716194 700355897 690254665 984454021 476648395 753049732 792712571 969780312 631150283 830028156 742966052 904760127 998442405 999468373 189804421 736992907 232585006 637223425 395621849 508380316 985272171 993956393 576760811 744606707 984327294 991518571 746373541 850845736 251363762 546862981 462685236 549873315 341523924 536429424 484896534 696029423 406139092 476144598 707715820 791321630 349714533 371874352 5360282 277385466 165582526 415962915 683501517 995450139 10763480 263892671 736195875 964867548 637849647 800146849 743354569 865773524 619558251 677854132 931617908 956146650 931147679 974534189 867588514 896610966 198973773 422657255 268362621 802489961 811262976 937101839 946006690 962335536 45883043 238387334 535324114 741981082 748234111 797658371 381714041 630816526 881551101 884199540 58561875 290930282 94517706 876981624 698875377 700661580 612018696 827760675 987899876 997735528 958582635 966937222 329855656 422259958 74784705 833416007 987444239 989970344 454233892 988906960 586677172 787452363 635240069 669038441 209197220 921540328 691638776 692127534 298861953 703797072 888099228 950927996 345846324 828935542 469185799 673069459 79810927 989932088 999416527 999619100 998732679 999914449 837443053 982193667 810890905 989605846 678668939 810715959 187498420 508853783 777156148 821648217 439954067 810255372 958399572 981401895 620517869 929471680 388445430 461846785 278797784 366584562 174715108 249432994 729744206 977307057 318166616 456968761 451990718 630454712 675115970 992342983 418988147 777325202 769734162 843187471 23610749 618343361 317439983 516896984 591973227 987521362 397327251 709381110 771923532 965612807 110843499 596937471 684273796 724305916 524880950 655457690 340783493 867984935 318358640 831224105 271033094 813635638 962728786 970030206 318577261 847991971 531899454 827771309 5241163 52343232 433289897 540607180 628528171 990116705 780802446 885217162 434904470 701068390 190710075 964115101 466155526 766126277 477711246 878752345 68232389 416683283 267139605 943088825 430258504 555859378 29210219 948660945 801597057 856073985 190704450 527035293 404106048 463879206 692109676 814284932 968320633 987685855 261916368 954463400 989588583 994549547 948753894 978285548 927227250 971119072 968727199 978655040 881243297 961606167 281707354 829390458 560160868 574947752 688942555 707930671 567344162 580976589 542850461 765619416 656128648 998383936 925060601 976154772 343881974 995981653 576637100 667166921 357646262 365381148 673869645 698884010 62742298 502428428 202260909 557361122 880746844 995781487 916300098 973083363 7538723 955531787 328466671 542753294 258584248 642426255 192079228 354328945 526088756 929117934 974724058 998086497 702414322 932383614 37175357 391517802 300804355 524399779 192343445 362789491 436778393 561259841 891801760 902848013 412365932 857032402 319840221 727080164 462268266 668597660 43908497 349569356 692275573 852238861 509405437 846624183 608293418 774257941 938759165 944783244 99145037 323144157 443263583 768440226 411998876 760349741 72620392 429122911 471656408 684832760 993151559 994524615 417070009 512947261 677560909 712096397 993728847 999703840 883836741 951333861 394456439 495317667 954535700 991446397 476847142 621228488 541909700 785353894 487032504 612939166 197636898 775373788 135744317 962393586 358229400 471386314 319927882 323754235 180038743 420011285 895052324 956608139 496300040 837657529 10864114 732330260 968274687 972527130 799170856 937057867 433796620 885115968 144300454 422065415 530669747 812235930 54516699 786020737 491797553 919506426 766917983 865447075 594669859 909408481 889029049 976237977 769733684 824016973 917545090 928880328 761577341 949380182 616298400 637177092 576587012 686495084 495189776 561594414 110976062 887875975 129212108 320367301 190496799 972725510 380404634 725844106 893630587 951731065 727724436 752372797 239848816 480864391 57888068 812347194 300698303 834607236 374579483 920022086 733120395 869141945 657172016 804498554 731693094 990191801 166854223 722938640 847712677 847861054 240820669 393383463 108015245 232106721 994097534 997266435 906018832 956011699 848389851 970784918 227359543 649746844 403937636 547359431 893998446 967925873 61664542 197233509 495331641 735295044 586510027 827438926 926365672 959310038 102630186 901544796 217641301 583498289 197902334 735281977 102927633 919483020 973921374 978815675 215504519 702928250 807656568 916756910 837924742 893858656 500903822 576961630 144964918 330111037 700980883 747569440 959653960 998701686 166915781 711893574 848081368 953212544 815255486 951694826 998067829 999864967 699450433 936864122 247052820 492865767 971318826 990504233 27065990 325192589 764593807 915564794 579903156 801688566 500347239 978520112 611708913 705053923 619035489 653488320 118053644 415059366 324265396 622602623 773335367 900619332 984879848 998346982 349726283 663674971 940286535 995195070 150301959 337137271 327732214 763568318 367445753 973042208 758798845 902222486 161616185 174767263 113663731 352570901 935795368 947165976 477440052 810380663 745959113 884800601 878807387 880782395 208337924 414459321 130021757 142868064 807420710 846893536 501605527 679245938 498673948 855471223 725996749 993584362 6351837 524927877 91257041 272636787 945849140 946743896 535736140 943523707 662657378 697413661 482917677 989603384 425719703 463626125 175460552 509304555 921772651 946445442 118858130 454674398 341423766 632898964 636668247 839069198 742925826 844547914 798362843 885850750 744144699 863945622 895328878 965897334 538995070 672389195 707875756 806409149 986815362 989796295 634060089 889932933 385005474 533646541 985937627 999793144 948851632 956533913 556853226 578504295 159044474 905858824 913578646 918304655 226599176 600744193 135100634 755101824 652491462 693594372 955087746 961011096 802998956 856677510 555054078 895494825 306254545 359416196 583417751 771292710 534943678 699261619 8793827 435084134 519459350 531648968 77557092 786922769 800356195 920971121 422954481 424782395 221496900 582947684 265699477 964856283 328736611 489123203 919270923 987051280 632564061 874963885 913020572 985737075 667165422 787531823 36283093 63756603 858590848 897914510 318401163 965582772 215573784 468073190 869464096 893382539 996136357 997079804 520129217 698320456 714123710 820605260 724832793 894792674 227904682 512911535 120389044 288018869 745977328 763818560 292610299 456769528 985733100 997183385 791448520 826443333 265631900 981006503 412805435 909142930 221004702 483903386 86546470 111176720 39800011 608872558 442252502 450065287 508127589 965295970 797421344 898976262 251423126 938371187 332082693 680173854 798940931 960791569 334448652 411522572 255140455 733705840 611662847 611729270 852897726 944661058 543836216 845151038 332899256 791255195 652997101 692301510 421548363 497919771 141622089 269938674 376040942 704770141 274118878 414148338 958540915 971356322 36185894 64289376 886105325 952150194 811489732 878309908 811973454 955285837 339250673 589820823 461876049 900713297 788917436 886216472 495780475 720892551 680356865 957575321 425633141 894650318 366711478 647890716 539343996 733572260 310752760 455420510 823436522 878948401 447938751 467859110 823821817 867456803 53181333 60858276 29705437 705912707 140250030 966650111 944470881 959302955 492499426 928503332 346266037 493361895 948243731 951325889 572621394 732512624 667599165 943121931 157906433 187262884 490998891 500897209 645518300 852296585 515480087 716297581 564238988 644184860 754919434 874625528 570396802 852656795 489966752 855393449 461833172 917725848 251718982 858852940 333440325 717415143 396811815 423718252 263741516 940919771 32675800 855571005 271505499 345495968 528231250 621151638 100469538 589445118 406448887 424749840 51532257 483110557 874652300 882128492 916388174 961918756 14361910 851853996 400543876 916326819 901828523 919138950 947193857 951561825 715150245 916240922 641547809 803708374 436935154 930230554 404310534 567510814 691865240 986430157 339079205 935187859 85679803 828711643 64348827 690819288 153351172 175473081 233398432 874851013 752299343 859773812 573346683 697059740 483393127 818881399 684241673 977601477 903426125 928655628 840285017 972865813 304366293 994409469 473216039 646538808 961485031 998304783 913599162 999153046 293425722 413244667 229144170 817713137 815521641 822899281 715274305 790694289 315431065 909404098 387037453 489399325 621967047 748677522 26707848 239123224 64740129 987353492 980157565 994544828 66766656 286006662 91565381 850900462 412086596 767767204 929928772 946202458 679529272 723684687 466307004 748637842 101371715 902049551 576164869 953395362 762416587 857530980 584102770 642658025 456353911 526670286 884908471 969284488 793158550 947768133 595636810 660374023 981929736 984294298 388722291 896821231 620856066 825114639 325741969 471346542 535661402 832589585 733684985 943798780 876564034 940609437 252227976 643598874 214869237 216270048 886400902 974783605 804653349 953671093 24575630 285978805 476790432 656864223 105997271 745376539 628581177 657364280 233078585 951080946 161717850 944820155 983377659 984164808 428946035 756696005 62420041 306579136 863227439 870566542 389629503 947719914 646239519 963756295 701118622 727633357 842013867 915534283 816698063 871249585 867046254 999675154 485192 362732343 269995569 900581925 187513353 752449527 474047903 988882817 526931923 741585032 804340273 954149649 679974702 685591188 298449203 771915472 536766465 762693673 54901331 228828412 402530376 766158506 48870458 340020415 848145776 898901640 446469362 749817098 253648436 887306072 307018410 829635295 564790377 833679801 359149632 432095206 274531095 297497484 264285681 449533537 8132347 197741671 603610022 849147062 720297836 824686451 529952476 924396566 654232532 685888361 599556804 704331069 81405576 568782405 403255930 643079562 729793449 802700285 563602811 903216966 57951442 350716507 453751260 559667257 921548294 980108687 535916213 746328482 573725819 931635070 398493793 720305791 600229488 715320398 765024007 937873303 813602589 928490067 888773597 950101343 604937198 655564929 839275282 903527550 828364192 875648588 390350086 711695563 948450250 980980495 765353545 873728846 747891286 938521964 657133987 712404354 641264854 724484487 607014078 947171327 858048634 906849782 758162335 853172773 904019769 994064604 64177683 346493492 459038452 465893163 113459338 355213703 367928401 729055742 189612470 702854858 625046368 764902121 482374017 627237170 242246935 612925550 921814244 985179746 594503260 709820011 271667208 464017965 411766179 499202458 836896011 993667831 87551595 880696671 983663503 997386031 380337261 962290114 687546759 970788550 930869537 959682966 994074707 996752257 107905619 640584001 53122220 855358963 670334588 905413484 638842457 651249967 113740590 453883664 989156086 999361411 905977263 933372633 568506576 683404854 48624102 723583515 390661874 476380885 913513460 936594412 950697784 991886993 90762636 955338850 693422689 779993353 24042319 524775218 541940971 602692919 51458724 300784646 400016654 455078437 890143576 997680241 443104893 639238001 271896765 920164725 707558908 793695937 39052254 186540123 372656298 378524734 387221702 798679593 858402345 935117038 650449336 828640917 552768329 613545699 590324157 688280530 220115666 957846372 496476500 633814580 44058581 985288516 90211754 148738641 680233497 941871783 567786117 656051556 945101549 947753155 838859465 877707091 155608868 963420326 413264017 711577469 151772396 771534653 4657436 82580371 555790009 649624454 540796071 637163328 874158130 932236592 184251373 440058510 676899211 855986468 265611982 296035342 167748257 583972083 344960263 962225172 879162579 936565587 274284506 626420586 742186043 917528704 190658643 972889618 765564792 819308069 863975331 919251860 903662918 942046071 635672830 657744048 864068534 915612889 394578763 845051824 172899005 717589196 441912099 935511348 44498166 885778356 177626110 224645364 406247517 929781271 82322700 832225629 263681414 687421893 974204966 999040745 961654626 991134137 801221681 808962712 762222744 906764238 73666590 172595951 260599542 532888457 813088472 982712204 701782268 869305252 232220073 238778146 653310094 992541191 716187225 957964129 247171289 975405771 433072061 921436207 589718563 662415197 681277531 711397189 325590337 492893402 835501696 909735008 991082520 991903070 3275582 629129298 401926131 605811568 518470321 801461549 448986134 922280420 86554781 709023853 786685147 934077934 838361177 906574306 257965615 535266045 145105592 925177507 84025366 689900577 263367578 962505479 990479422 994903952 330909628 338849518 596213124 768314454 11688659 99280319 106379987 227800902 542890247 901976924 808721422 823354064 943488282 962273158 664474197 702406799 548942164 648388082 891864724 950903820 652336117 761840941 840066674 899184312 422369253 661615530 175428842 666509526 607946702 632043954 243427019 351397045 882650901 932532116 446833918 462712085 556792782 765134687 925460369 978210425 759220533 848931446 737844283 784877961 807614922 831416662 327799410 430133758 656007810 766032829 203284562 878717105 187271458 320425985 625652999 972530477 49271389 440711314 534967403 728979075 814489506 906677738 117881407 280764309 245959125 408797119 431141427 470440124 872111055 960556474 701466973 824961290 774234451 922202164 848781212 978423417 843134627 866369430 735795615 794378238 587501227 875720801 983540094 984238162 808525662 838673675 515133872 839898658 134100261 230273097 786096169 943704914 428908050 611618128 594807263 703670639 437182044 760921854 389133686 443674248 213482498 988929760 113142289 470747937 689699693 759720213 92372283 670393808 56446439 487680667 264223845 495874976 547767491 864743213 446472240 848767573 991728128 994106852 511514862 814869661 780381907 886488447 457911880 981648620 23728242 87675422 342441099 460565902 389151567 423607102 671686542 851284596 893327706 929650683 561950321 959284522 229991742 273173321 188158154 986531270 983307128 983920797 329036911 910895574 548588422 666263116 743062218 786965209 483700862 901589545 473075769 761200214 806935148 849359580 921237300 942383784 200377004 762458227 48648264 176558301 289384268 607888245 654205555 796330158 708003644 777288582 430429745 796373400 963709103 994107949 703656179 833531187 26350963 299797053 69419148 955231400 858585047 977779293 780835299 935163531 745444799 861466218 772703645 986739755 274772485 448757995 69943225 358142067 895018328 978663253 565277812 895730901 233243895 617957087 817690946 960939371 949681070 954072778 510246753 921655448 695470278 952666379 182041039 972494951 504983364 649252509 971856026 974388837 271515263 490024659 425711191 638544125 142079051 791839482 770363566 897587013 366348675 903493489 674917938 738102773 959930820 979495737 139032510 480538652 134278328 862561830 485893616 637443991 994878790 995459875 142486289 890009913 982879761 985369086 383909270 994823641 862245502 944079757 768783529 801922178 623304473 724484192 213866763 423566405 678913121 986642620 54699892 995274431 544588043 772778384 851595286 916437437 784215132 981601777 323262078 896084043 219791840 980916860 487833226 727731439 839636554 864314938 436944056 849222307 183138392 449830666 9848114 542240861 189489214 968512516 493311192 793249957 936015450 960928915 971875422 985997623 262141692 333008015 727794505 964880011 103708445 386800505 807811892 990454447 99687193 781001507 221439650 808871462 577028839 757943070 623164927 914781752 963658783 993459079 508533867 692748741 61057440 760681119 960032927 970677439 520826989 632166857 133918957 231341599 401145023 575880896 806972646 972214114 669168074 809866878 733948080 854618718 787406515 801225242 472662770 932106023 957947947 978360777 90077813 600633712 526014522 925234455 791646969 906951912 643754875 985842528 805180135 988386723 384636368 739123248 463062917 465196287 729663446 836818601 899211662 907651032 75282445 97890684 116839349 255819784 876970070 953888846 211353704 932875174 806231443 984998574 605265024 739589493 33649829 354340614 52813185 353146474 540784409 540839148 662906589 664971017 582780680 591543427 313014986 620190107 431944990 655539351 734273055 778597750 117109916 977966813 748799097 765739022 742734220 822634495 492101052 593509333 331627357 334579108 752001051 800954290 837318886 982703458 385789145 920186624 549131219 827642517 233315793 912255949 347101170 834074176 138582043 414491194 137601395 557128586 864652382 977724160 713367421 969212693 766753699 988745866 578258189 788080022 165670135 307085314 458682755 668302909 891668946 933171520 675917536 844161152 569779177 763826578 299339814 345960784 603341997 629822773 98980631 934550244 636748985 849059676 117745703 783933752 795260482 926915355 478572323 611152301 890676622 987707611 795295084 973693127 954877026 973657114 174946480 713077305 223862650 243602438 971441734 992124807 851973821 922431309 279355281 448338297 366330772 526416395 317093067 770623352 848645408 952354113 175191323 933869556 109131008 979370119 591497542 911110955 454675759 657188407 238619658 258647167 63875272 451795895 977660363 987868591 281392300 755893016 397786951 805151743 70426699 563718116 748394164 960911057 417156748 758672489 157031599 532249985 225779603 713365416 425385524 798179489 815474793 939438952 639303191 787658897 518787688 798705338 340820356 854053903 791827608 948372188 9087615 438219490 315091912 477265902 744365978 925096575 483085638 766400660 752846581 952439771 290820551 556064961 170852163 994557809 608789384 785841109 333027110 954675678 716898403 973565832 487558076 764240764 844345833 994392471 560103812 876975693 718064291 998779430 850819507 877443829 924989525 962263325 44497247 757809801 664950305 906809196 596848543 976073240 88906638 783225808 128277958 532654496 283111094 613194605 211967027 729162335 36649694 45170376 210296858 426468336 401742110 823354789 128021595 163028285 229206401 859392373 94699498 971917053 885825422 906895404 741154932 908940160 751487964 970703728 586547971 662045533 793380806 979383299 382384020 718558337 430223570 913824517 55295089 632286088 626756449 700335343 514182870 529750345 780983406 937369715 202187742 937137240 464912092 754899908 297749400 787072312 304796004 450894511 799865692 921124429 875074870 979869883 516627680 554606196 402451604 952499629 560900633 734282292 317736714 362606783 220887119 463398906 941520616 961652764 311268512 844671359 391813228 809269998 408982092 930890800 67490101 766623818 178812825 622889460 49890400 436532699 935810245 993344731 713242209 977079111 662862859 921812729 413232162 428702790 656921704 931196554 99201669 692250483 648551402 707483830 422452007 496198599 551776317 614929511 61282547 874220190 977996234 993332064 997194825 999613145 640043222 794197450 68470459 203572666 604840918 861897663 308756483 375426055 166159512 796880231 382458356 848561478 890193469 944722451 192792032 492333705 346940469 395764986 959295737 981057049 968734759 994778192 131059201 862671979 673870164 859516672 513671338 787048754 94276385 810429931 951860194 989901411 274810742 466420015 425979976 713413014 81080226 587687967 195152429 548664623 470540526 884537919 850842543 956828663 96419455 633635107 541944110 698171965 633583112 967021850 390895648 589864055 591606368 619057245 836688854 885663551 918488190 961214253 236064850 975108905 494389908 596560756 416509467 962413109 930470896 942325531 736234547 949302339 428551045 534785374 178103166 204942307 925762438 926215378 186675801 791384001 492223204 969589595 133604654 610559131 938112602 974239967 560487993 776859382 516966540 804886811 914254238 944864364 265261451 438487925 27817439 339763255 706963618 873440981 346924109 674960423 893989441 946696866 381132604 751596053 184162056 976608879 342827330 922843942 817332684 830511115 837255824 975288968 249678511 899424978 158502181 281580757 535707967 992921373 531285880 997324782 218784710 640614427 881627025 889991294 475722144 892865409 852560323 988736874 121446779 593765501 992896931 997348235 979146232 987820594 562205055 948899324 237671054 915777926 585098665 740048409 472480285 707569640 648486584 866039467 127654334 353483659 507133504 827502817 941066591 959484900 777098678 877892404 932356161 968677811 5220467 341678882 380569958 397812716 587002923 587618966 394900238 880351742 607538374 722817615 999227750 999397981 787460066 966047140 394849507 707665938 205685356 302550274 927560230 988775709 303410146 921038973 587543788 845745472 528100062 701180059 260409526 544688696 924858936 956265274 537542280 555462031 429874973 846076235 272073339 437211279 626211779 798011603 152439084 788451696 257657879 754593493 693913 188216883 688326405 849420547 58082126 809482717 268893354 887045996 849434623 943864472 208868103 727999953 276419202 719165308 21950805 214417590 67664369 866915800 450441346 835618589 872687856 935194951 416195656 454801358 817238670 884701969 5152031 154300346 705756711 842992391 299393286 939887770 410355359 995744844 262640642 787882955 767840152 891575401 35426949 891663791 730964703 993930994 341820393 515072393 358991506 659582407 527253449 817712375 589503087 869871941 799542493 882355616 348352024 526342619 638472310 787089729 328925581 932164266 441992181 553954786 93455855 848437255 388872580 969272730 807935716 888250887 951633801 961421919 843272694 876813218 795007425 924959954 426406905 868537789 2257125 720525224 892178994 912467179 455318132 480184863 102078651 231249403 549507858 798162675 454053595 646078298 368384928 684778790 673203469 852731507 267206420 646050796 653596887 787189660 71256782 688587629 128414302 301499455 275079532 749803712 663796278 920255532 699414356 737847727 212887214 470148975 787767302 816637678 712673157 895349720 383184470 880073532 194043193 498156727 22728517 308600651 17159745 683614163 321488734 585103196 274203574 558164445 837218581 886225703 766714650 861067436 367343230 831146679 566877046 618716235 110509168 529415150 181605238 467704332 937325811 943790548 675718752 736987339 979630940 997573300 251181000 354012577 319198808 738619935 282933914 533609842 336894298 632776563 6939653 411234218 632848955 831932649 34719289 220897186 949194321 989968387 723681689 894472142 407685544 496122884 653827465 711396245 816211380 972139271 552858060 659667973 508401608 602198123 28722648 645721771 188394153 710138971 624470370 717431342 637319945 707860481 133589227 759422003 929183232 957217341 944166200 961358041 237378669 408871189 395999428 664448419 994185188 995521074 661317856 805347828 176842671 567540269 640622256 838272822 170086242 701523624 673862315 998047860 60578601 315554074 860749953 934783161 464681757 875703514 641202584 723700339 816925429 935768182 57889019 520307374 668426563 858532990 755853113 894715576 882572231 975100276 269912932 527424986 809328768 825408990 14035504 959021628 49673953 215325952 473423108 876338962 999203164 999972903 34808397 42939180 723344206 732895477 524188059 732895827 331162413 977682460 119578591 885569867 38354164 473988741 954460389 955830077 390877931 538459982 912564988 922008709 992187893 997431191 774446275 858681189 822070366 989026238 782754262 882021476 638057849 962897279 700027382 891127307 818317393 926250160 855758880 903316588 550020043 706411432 286851676 695394493 721627155 770412227 567190575 675042347 691860237 993375928 865955008 944206297 22403694 911509666 850062395 963982165 217504300 288456993 559403484 866013673 469805619 913576209 783605638 993950024 245023178 424541886 796460918 884346866 799216979 886594874 576269685 644730097 747134684 923669480 582615930 950125001 857174040 957222230 499023916 753208867 592784117 691462636 626849215 829931402 369849341 947388501 83846616 190410466 907945059 920923781 585449648 891262367 478405452 850192447 87631532 340674472 481192405 736387063 1815840 900537815 777469963 850097567 41200118 476816590 713216633 770024193 556170150 896965432 653410419 944710296 32387176 764439153 496375325 718589048 299663743 413329730 990864633 999286127 452709889 892727982 814252446 826789037 16792461 799792192 623254028 957265851 729331996 825540148 824184912 906351550 968662093 994321627 605793176 686381792 549819065 854872547 18592697 573627396 978520569 983091684 945519192 945620187 808659316 985018946 44066098 941178238 623661213 649526512 523565247 556392983 325935470 518595906 151221904 589878178 815771023 946082806 312082213 330714323 388470851 593487186 614985575 793624629 264362340 920659148 831994973 922891047 962948700 989329690 777954265 885373176 215365763 386752330 579471633 830903072 886465205 983277080 863494635 917875821 668213752 886124855 125175159 280362455 642756104 752641061 167813453 840870444 579452934 884774598 712813478 984914965 984212727 989375727 823972646 884462725 432932170 595213114 544599580 727040817 249744696 429225018 306532257 867409199 682977469 718261812 412159011 584013159 369347461 568127706 832726708 954717765 546427360 640111231 704117917 809083274 85270827 266325601 178493956 911443824 840603885 997849214 41233264 108530754 609846896 656358878 744009738 907252284 428253562 961699643 952453551 998321393 981488866 983806191 130694862 580102995 477357616 723117501 583733122 689052978 527470956 730558870 197242578 748526388 151502073 950238751 425556651 955342625 490982564 648362850 243186442 450553534 250056731 584618829 515619135 853693469 45034624 444209222 625573593 628884154 49699855 736439425 895310251 953047002 238547475 654572852 906195960 992933593 92762038 784311350 778612828 963654442 865651045 966690258 327764713 818534065 488952730 733689259 187252444 212960260 99466400 863524544 447963504 929737172 52808304 385904184 190828846 988672075 162956457 310634719 70778643 752512947 653777902 993994217 141125771 530014511 495384240 844959192 282296190 838623526 909879317 950121962 826555387 937078394 283245060 966803988 18642825 231669453 529958039 544636615 419485237 742949735 832152263 941836178 713553195 746122096 237404752 314054862 591763845 756498739 78398985 273229913 555560254 586200591 779655819 981892215 382060687 945141154 148411562 552634765 903230242 960965458 882207183 966985590 572232344 981663657 310007828 946655502 706106387 892841718 649528740 680616975 31542693 90546132 864300583 990465873 652329499 787960419 677637145 736442361 939738364 972891105 954639176 964445175 841102924 870991812 519606937 678320474 553349128 904367750 429989733 527409223 343610500 673143857 336915013 648630452 647268132 805536765 979883026 980516584 801745326 918119057 305142239 645535271 189350043 872367554 524430155 729966081 237291696 811669196 389801912 477227457 747491196 905265774 215538383 915169502 600244772 857774978 512669106 893151321 783992942 843850812 410635721 711719252 43228477 88620737 535161893 997395920 424140557 667214657 444977147 819801736 232355647 830854939 488288831 580493818 25678814 458605398 833598731 974709741 338056882 575682784 810789830 877262851 752811534 991206116 428175267 803964026 144118385 228518808 753927676 924066449 51687199 566059470 913108641 944563470 592533009 781725642 828669379 871010280 556564301 900985499 964378599 982573660 84283014 752663322 721677941 805089815 426370216 463957599 392880359 569854093 898431744 975313501 966730944 993360300 972797549 998116416 860462268 932471615 415094799 798340315 677437486 810694568 490982413 782286830 82272105 682595999 307446323 641847165 976219721 979605193 108011704 917300762 47033366 296172935 594091020 595595912 374225127 910159623 970551706 970906019 10673118 375806362 381915210 896402854 115913816 478130798 324212078 725218866 876706587 928352595 860366860 990397243 570464765 795453787 81479467 533714921 389224935 865331218 765081267 976663194 707856681 898843249 483187275 664005901 372841300 441114075 321759899 867293817 269169125 949277208 319009372 757791640 529744000 869306030 983951499 997415780 656523466 819813462 894771916 958384299 11515750 328902503 322043101 966688624 590731860 842836178 648434993 724969014 776331981 939103763 257583392 396100670 130816121 584320312 693270030 745156415 18882226 863216516 720011198 997798371 367247042 996737031 94993646 271144427 529447865 752965568 591991323 888564466 163897077 715519766 327387815 870918753 951850246 972516361 909093524 963455897 569384846 744708510 122741725 169054294 851406475 988015624 864390370 868813853 82619444 935416109 573199423 817299723 864477401 886720540 809647788 870854238 424469761 809701650 879152252 986552290 264359984 421691619 740365090 853264125 897557283 942734924 49215298 296036350 524145218 693016391 565255054 877344045 381498224 989952664 437622927 726875702 483530136 506842685 580499320 620161946 450510839 909264250 948578088 992359419 20824647 517423758 536856817 571025930 759159193 792160373 252450361 787162587 82962910 851286110 157571956 933633989 856856613 995170899 99821066 582671209 561333550 616948970 264863428 916783406 867157943 987684027 713475297 778968324 167099025 473014305 891777148 896513697 404662068 425022078 26547880 150982592 309095296 441359532 113091335 827526470 482614678 681537334 849258335 911916463 809395935 822834072 165321220 851965804 508135360 721864212 329903130 744835378 355960696 545318275 703656105 937793478 49009811 470486306 652969655 784003876 666919951 851241037 549792942 883623749 194258296 546528045 91008742 686492273 844651171 996501949 160508727 224914026 331664643 400138767 138221871 722384421 759388051 928426754 882548828 954697058 581249785 829046429 742041232 950000459 802512004 923893240 322907893 645031030 35529402 559814914 861475410 867867900 268874802 771110622 113042348 747815713 331536848 733538759 227971671 644608782 600258348 967607752 324855088 800551702 753110093 952461858 142766063 840205959 192787865 802956419 869209694 900429717 720280331 966676229 440027619 868366727 276614456 317474736 402194839 918780793 121240793 614019209 500766842 607816106 676875411 898088160 896479321 906975262 823513501 948422485 583064608 853746697 85644587 809131292 265129073 315949406 927508381 990638930 646049075 799423128 786277905 974473648 478066199 752452074 215624191 372839531 628806017 757547325 664940200 936336864 497963551 900357412 684100083 823524849 435562617 755682077 706069766 921818842 12309513 929641151 668608709 690325567 189179266 206712018 535951746 752380455 425664370 688292135 892955584 967012884 509642095 897399109 491116519 848998207 460747785 702347070 748874819 973211498 228835455 636424076 123238666 240869492 94465786 647530345 782923545 929441599 881411274 883856168 72583915 605147356 327470634 794281665 92834138 605545565 843539545 960205059 683555190 928644588 952997678 973453497 784997119 826134465 422613692 619389111 483276700 738238759 577546128 844650575 726187515 847758554 706859949 914790316 937562548 983832184 780177318 838438361 707784956 961658712 38223572 44299214 269405997 803548367 892058664 974193266 405940703 843444509 254331327 839559468 613072358 899796527 917555779 955053546 258771006 303839298 168614275 649942399 531044383 672591394 468995282 819255282 408406550 904950954 831010059 837841553 217589232 623870444 754287709 883693115 168883340 232002121 308929193 822141942 2348805 585635694 945523355 983707610 334762511 930710762 942316405 992427152 122294975 541890397 582358517 679331536 243856443 885553347 893862035 988731767 976127614 977269998 660058315 665856325 719332919 794742596 347458974 577432104 373186741 593599744 802927176 968925998 511878987 532292622 607870166 744693806 332412616 865514732 982118173 997022490 845550585 879331118 396893068 422869463 650217809 657709148 128706719 298035093 482128008 720821092 779834088 963382114 331311186 915328500 982126172 988944842 964466057 973643193 463966540 858219938 636815957 770000291 58884775 756296515 259313210 354764659 417954489 473365412 34029796 825383040 617980009 858734385 763051183 993182982 856665046 891707364 7280416 958534809 643100429 815689897 136687913 927865632 659395896 792982068 458377386 608762351 238323003 444728424 357733780 768170843 254926290 380756789 881508331 944693534 272115781 973064341 35440597 126726148 269314365 957391961 648707677 832970039 791875701 904994675 862458855 993797466 424329935 761190306 618485002 790249141 76992641 640294857 140262274 983252982 765093370 823975086 946820738 989613420 373765791 882718755 886298337 979467590 394869870 720983308 317521293 963602594 998166710 998600010 49297640 361302590 411441486 673378089 55361788 190219837 114159799 388829507 987217221 997565454 90525323 473796235 543181818 831861489 690523174 907191530 493249655 925189415 285091576 473441744 273080064 542007103 111662917 825802244 897698485 953147072 846407285 955770968 211617851 414625653 600602470 996031510 118609236 838725748 64930906 198648516 942760987 960503708 714801323 782051204 904207085 936955683 85052165 777052301 874150080 909826172 144104507 720902869 761879451 955045787 851175072 991172500 575740906 703328264 573497545 670134821 914533684 917512652 100132419 120886468 934706104 993673379 470201214 873895322 192331573 996575318 299264578 446412550 23721829 113425617 932386169 956205793 373731109 488177035 711380175 756438072 247740513 543014702 935126883 942706567 872361390 882513659 370336371 869527743 669387570 884789460 557229904 609408381 672782897 726130726 271056167 909988096 67451027 436551892 695304327 959233466 731156295 890937862 82137071 261851972 805115531 894549376 747664103 761283719 997942483 999143261 600330940 975066372 714577434 919315193 238972446 501972177 644748509 808376812 10034379 444665157 839829086 920661948 551445876 946939152 688488353 740340988 619574708 967295041 215583131 626571483 199526448 332442437 754941600 944240577 473718524 663288484 438996454 883735095 982388037 991208693 482178601 955361604 890436891 907705611 95242410 306316210 889643266 963926957 731926139 738032518 511576051 839412703 409561227 678041566 614421502 827110585 36070971 235553156 117701079 877878837 191551201 935143878 710238614 905565436 568371923 582884715 246173506 559673570 227258860 249674266 34779629 54372930 59177499 855334198 698744876 852893998 733980949 895839179 680450052 785719935 651520219 743034053 137604352 172063249 748016735 890525609 468332436 579054383 103975997 457574089 525831193 715141064 403310584 566941419 642988825 831824657 977966102 986205872 182876490 771363909 687497133 827441938 507430463 525354683 119402317 228293276 760725342 929236352 197088087 742231327 144377017 944000123 170217430 219089870 611794886 729246196 792429567 861316446 23568376 83780614 394457855 917802617 168268970 892686903 631483229 896812108 671326162 769090443 820662288 893535845 778518347 783787873 785443200 951555093 137009834 961834581 213038364 464866866 505562200 707312150 879676880 907267908 831593765 982235852 942837518 965515570 219381630 904369727 846794834 847454310 869423187 983872383 558472480 834480598 248691731 664460563 543896635 754864441 370248084 380584638 20008484 609103867 890669139 921734452 617783049 730425836 226113145 834251239 385151832 541053718 475936186 863964188 767472523 828927586 173264711 802008726 663518767 822610916 990624955 994398504 353497450 569322527 399599727 422519983 538331064 722022333 13769890 345504360 402617398 544912037 542882559 779996861 551165160 670172081 186948491 736766632 202180308 767796497 58778526 541383179 131142296 525776755 320658635 360802604 730607204 856888109 521944270 814457534 901931863 948702382 254807611 653920363 459137447 990517057 326611095 954940718 171905957 621386246 908831849 924985303 879181379 884814912 151551647 753108827 746621246 765339034 104178754 113384977 230128590 757343144 838931497 868914732 166115812 669015389 782273441 994726863 894839359 950296720 149320154 586515038 70103224 388594362 308605789 756781251 872980001 880412243 179235777 312124909 690500068 902989784 763168244 976186956 769884258 957210542 215194024 642528529 322287735 850398838 380702599 676430802 732283077 862136687 689103367 764584223 480887751 540751358 911420632 975275654 156446671 647217080 486941114 709214221 407310339 774221356 80562385 980734866 646645844 777970733 555384119 802347724 728176427 761545500 607954363 696201546 840875964 851415388 311808511 923079446 507491676 810594240 371437367 389310128 334854615 722486527 730765024 818160468 163133612 647449621 779456385 975504780 25250158 588501945 555697858 668766306 667378979 760398975 82142702 199195644 710116634 780919499 723684736 906095123 607559357 627696627 136284637 688202742 536788458 690639866 257743052 771502693 703790195 966393027 848014106 954313394 789818473 821477448 436258218 977065377 406725473 643681717 740419083 986661858 443937518 910680193 35184723 242253225 268432425 668367117 770083746 883014280 434826010 650143383 81199526 426332289 22765119 116167981 497783131 992500109 597669969 994895559 354402228 692868842 736539822 762632821 622234584 746093575 794600761 973698212 225269446 817628013 490561486 791642352 761844949 772854311 899083874 905759132 725258490 754763153 22852350 238506028 221519003 603060853 385058979 414922633 738326686 800224247 993190409 995187963 3697496 880512891 699727615 816990363 133648938 642813150 627914744 823715042 754721487 854490263 860090273 995040317 363834635 396962814 329339445 559884499 481053247 818096298 423527570 528894962 247209385 376377783 395361662 408571538 565880393 685382407 480706958 484315850 435906488 718625606 896738755 921251165 303220314 858795050 513783184 826751050 646434121 778846979 707541602 886530244 469648098 990035661 417723412 756856514 919399271 934181855 542331891 756281344 855469268 980554091 616858785 857490487 193503886 668615394 937552831 968529750 219169420 306515952 169727171 220089405 216435155 833020233 996825450 999369276 291945133 399001845 590824451 778803616 917461724 929954064 659786647 750833980 652165877 968266696 909593701 971394657 70608134 947220320 627449667 801705399 746578185 884306785 82291089 632144846 744643123 804935810 205156089 716683500 937303457 978472553 805035280 951829677 603850689 610714082 222911719 752318133 235753826 790241075 486988060 779656394 775166485 894972181 487998179 524686352 231235865 677537894 465111440 604767243 802928560 812842744 566757889 925869079 434463165 839461960 583132329 812874734 494617814 515888213 570529225 878651917 569783567 590009761 886462419 982744839 330475579 958715712 821632672 914114911 409968072 664194043 216189857 793264778 699281758 851474118 868543625 874732214 507284329 526345590 864519488 924470043 129209434 716054245 468095241 524547189 575017645 902616537 866087630 877163385 426038758 565984878 268272371 473226963 921021251 922999697 247686570 382451724 690738080 908965668 899902998 976688896 531849126 790424648 187679246 881298366 399949736 743711717 980707661 987935056 689646423 893195012 897755935 931259410 111578506 753756197 90694856 810150693 926962181 956610968 737658124 773683333 703776007 723031976 336124994 996004997 745638098 855827581 358800902 400588617 588772837 713081996 924516903 985032836 296575988 670951707 569435225 953819763 186160872 423478332 523664131 967174837 559622240 843291291 390791375 801371713 486500348 896837346 325564946 913632302 1814051 843202904 867180137 961358572 229589031 942608920 830640966 958982790 854586306 880841098 75693015 362021303 918608673 926918896 128684165 559316613 965017523 992908757 349701037 610795620 267139129 386447943 786695043 790720542 53903213 525349688 4861334 83649059 259203000 686402363 788034641 946060868 150594131 993361217 748054977 826503735 594509721 882851688 724223571 852117310 126172527 159757499 826645272 852770441 881125889 949072792 771304217 976734454 878079873 931372141 328426995 861908510 109490382 617371708 348814275 457972434 871782454 966069298 80176889 539660360 257625074 294688789 962643375 981594495 83023683 229527388 935579861 968999617 410382665 742044828 584598474 806162473 209266469 758129044 118061600 245042709 443528109 917169488 541202425 683361985 952885401 977780430 901850733 947557911 814821105 971777583 332289107 772482876 296214490 682287734 398110958 938182091 343496907 445022918 162044047 463920443 117688785 521286923 249810959 981092282 921118047 934967053 193620428 354031721 299396314 994989935 48184157 686335678 667443690 855477122 459028893 784547285 599903951 601866963 104109626 780274065 736635590 902864977 231209331 977148000 704381072 960517301 238816548 715772941 38638288 498674813 834564016 856044667 627142252 879672685 390575255 876670048 55565558 374396927 578618327 991944727 7744093 468155337 184132489 532608267 181466339 520135080 96299497 373476055 81903165 149791815 920805882 934563397 962284944 964470200 204979218 936679432 583107684 949320617 326802582 695281499 456057831 973793771 544245811 767137351 527147787 875949035 301038527 505873551 665486552 684157713 676416107 928911725 75516593 149896137 857753714 859828390 968641966 975556215 68360159 668908621 666293605 821848642 301955250 650687049 526400354 583876784 579485812 816210524 14372987 980524144 387521445 663244114 198107229 755653488 326939574 590568056 845011841 940115264 551289522 963433765 745551968 973591065 763973368 792757365 270541033 411696296 665310110 987257328 233055273 478221993 194346654 488892368 357802967 721102617 659527488 736068636 140132511 272686676 69384299 291565872 635325607 957609441 932252049 993442589 134428817 649471291 662795371 807107582 430410338 685619638 416122150 661100372 829969080 931008132 98445165 305050384 155458650 463801823 802216158 910066939 490824358 775750662 642634290 822100121 398412975 978541918 14791322 87740488 733149724 931492272 456262232 840677830 896241532 901376111 77394349 321267129 451287596 916303572 960806624 995315248 772322906 824173737 501207053 549568127 713051262 893910750 252985411 600818899 763182142 967134986 790891219 816150543 21309466 75418479 635831257 985014408 340258936 856856417 287464505 588234484 340630040 425794325 903415872 915827406 192517872 302023627 236481310 992600005 939198655 973312859 765072607 948280997 123143204 279749659 893584111 926118447 900446364 912347763 6979305 41119396 825405447 842595612 841905613 915620016 772865020 880038819 187805593 654577918 266219309 571846615 656461511 870938859 920619629 982285526 655499562 966263253 904257771 968380772 86292369 265625418 414628621 891833544 674852712 913770998 636818991 827394188 906823635 985191546 707844032 818821549 874175038 952250768 420039407 589038154 22985487 527836769 346814594 516668294 868682085 999593315 964147720 980261462 605580395 769800311 885214262 968322931 870309279 923730365 783017655 982859519 238949010 469248382 819342112 880025809 763922617 982056615 287758746 566354236 247552769 616709233 822440307 972305171 336079176 807016241 231105236 294170784 235980526 567195256 224313348 353901355 295247590 497279927 587497915 836695533 243220549 772000419 484426010 854764762 709254759 783178656 438413235 931845339 146695521 852851028 753659587 760014441 272877274 413640684 587348809 998297659 303525075 730520192 979660235 987380334 879560801 945840584 156967957 241511022 590348205 696258567 263527660 895575801 223000951 468818104 901936314 983275643 620644519 851927632 837859944 898387872 540149849 964321900 279978757 648990983 621307195 972789692 683899220 750024899 272696521 648137206 426912184 527759976 727568175 904642940 236494384 721003283 810797217 900827974 328349196 920349883 382283672 781294774 249577383 746992380 753724883 880928157 841173999 895407125 370790614 929020198 526939419 645964811 724822155 734541274 413863883 558657133 793235148 816038683 780843248 936740498 673108454 838806658 569552296 887540140 251229615 856376023 612762751 904786800 641137191 973253651 849222985 941952606 382490825 489841401 509645370 995266687 573579812 986292432 625528179 997663367 544964653 763703961 23862713 826384500 455735054 522093826 103260461 289946536 111571762 325925619 796439305 831127805 287573732 725842863 457536594 973801056 220628441 348669315 412134275 816776399 149480174 982771541 522894772 609513045 199967974 541443383 644563622 845858330 662643452 743575431 463419570 970301980 198190848 757456271 523776120 995935047 168663312 904086797 111432395 257957318 371770636 719654950 265966393 692507723 340229974 689219591 132044897 482219769 577363312 873383931 845269669 879718865 85369143 437380688 938165208 971998580 409991684 618500978 940459999 979135018 404678840 839786437 16452000 952381982 353805896 792950686 50300576 856523605 649823722 760400459 768749910 849963746 65698291 133422763 312930377 853664157 258282016 293799897 804106944 873030357 826334038 996899378 920032833 936891095 531470855 615436803 353746846 979714778 672045404 946707996 290863105 361430008 21008241 378573638 526961674 915967463 313316922 774595568 383827476 970093322 25294098 725826661 939769237 997390536 835052892 956289999 367715053 502893522 141560221 977320617 210448499 316838524 884380098 951564698 198170094 234311517 474486365 521373231 566322447 864991327 618050065 789667670 157792870 260571222 103750105 141428077 400912865 912711458 806605077 966781929 282738191 899611847 540068639 990358747 986908984 989789079 759830001 778215119 150947932 996258037 684058051 946642311 48695934 681725008 204054925 303180082 209708902 675558071 852558575 920358921 513335955 923472065 495568544 735652697 42372261 171157571 853722962 951607360 675017790 784870307 920203417 980794294 598717295 883002341 912098820 989276248 666688633 697718663 585762417 724159931 596340911 674058651 761100723 894442580 604286568 956953213 177720660 538613840 531165164 698222803 908087899 973264563 489722588 847603636 426559756 740110931 548673698 781726191 333539218 368462904 297656425 905743384 618582663 768813201 990863601 991506091 226959082 968806944 18564819 560482079 894137524 926707718 885674747 930407584 990095616 999897346 839845398 877370301 962380560 986431302 455780273 530313646 85823387 193215900 854096120 989616978 3417156 122936085 957423008 979153277 304197495 528627575 331022497 590214103 782098050 969218702 643609137 913876005 701208236 941690795 614984887 650855829 167829856 435561544 176006784 322347960 873981663 937559702 942692441 998325714 564854848 878989166 723023199 964267672 382258766 513210308 113382021 474456326 572458464 813310067 761468428 831691667 81953828 987342793 340131956 973004465 292251806 311050506 588991711 853244972 77860535 154714118 262591714 745389837 45551566 610638784 345011165 724379141 118826548 986334232 322384671 353155275 65798963 971435248 26068986 850452139 606359320 616760029 65300043 841876624 77434155 343226098 203637977 855064500 66579159 247293533 492904922 725282942 740564054 855557558 665007417 905822665 658898373 960602500 38015977 312332443 351242956 969438647 54037828 249446795 279188527 936752257 233358 557572146 653828875 695844316 317913999 560913940 459584243 505740061 202529487 607308485 973359447 976750440 638838999 951148252 702859799 744521495 665209670 783079893 617072261 781424660 786247341 882226866 971323658 971720638 164730857 614890868 828135633 937616697 104812408 924715156 794888719 837199201 259799176 925103246 805151884 834456591 556484812 904391669 107240498 169498999 526873278 766051196 410413988 504406008 544718766 792734393 625656993 971937469 531068816 823090327 142367133 828018546 170781836 747580529 263581301 678004856 533314558 817035304 886386406 925171482 569851413 592188445 155931710 197318468 19112517 357815533 502838866 992335914 627031170 937157406 733346918 784061117 612117998 802761234 665348855 805186828 165899160 679437621 888132546 989805316 109555135 231136590 928450540 955100357 525983462 636181196 567167534 756547055 673103970 786307119 233077356 649473902 891344555 927060435 393288410 438540102 303663294 517897273 328169239 885296780 635212210 811811940 332956094 700393470 840868746 845289552 414250227 737992259 249150797 903514720 72660665 342580098 28497144 596748110 924780538 959218228 850398578 982749008 267522007 416409882 549083195 634576763 358794242 532215672 465418481 527849068 988173358 994497972 707022768 907827983 370193156 556292383 206279472 602355435 695514870 879729331 694176799 694877712 942809468 958525841 788121760 986112739 749528579 840047338 36956618 620575601 681625301 836042310 837313041 856441247 986397032 996524983 579180079 626234047 767328620 893840857 192707006 530860245 43828991 314702997 572991972 848383548 341949332 407835577 561067582 967770464 156609878 775199457 358104310 917925755 19974782 88208329 757084681 786708567 898910208 936478476 53873226 372996585 368463595 549348600 558829225 905002660 119088092 220226007 517403607 956610085 715495032 931578454 980368358 996157897 417023763 653249539 624670821 970013393 261718528 272195665 905001312 948048658 778817034 931525122 800384315 996594833 921851420 967852671 678286159 780622144 15101528 409410895 586016006 882962045 399157884 498341990 203245868 256418199 910167107 957064523 179022855 331047139 743468773 927798387 736766211 791168248 608525412 992497692 268106926 613631516 524705737 832170273 654216755 992254807 162503861 737963200 725136298 896241435 578458252 657290666 193820813 749172781 37869807 693215173 66249448 123732518 793715701 959503726 623200497 911234705 709088132 850945410 331038381 994319327 170045696 448416727 344195041 382024861 78422355 515683239 111953001 834602958 114157786 436580512 684165933 776574723 606258718 976799958 370272213 603515556 892203023 947334122 924325539 972764375 88748718 160799509 333743373 687682303 285468777 751730810 501676722 869585205 546807579 976223493 902885085 927666707 541544989 756684113 728642594 980543638 532075499 710968938 640885009 763468290 780160436 914346141 52881051 781920074 398448237 833689327 579119800 948807061 45534077 655283718 194454598 474492414 12421254 550659839 198380194 513436008 198136441 860372167 100880620 463810697 801041665 932694871 719272818 953998179 726050710 961066908 785926915 961213192 916098409 925003177 228727752 519006260 553512779 742272270 358681243 937789837 739830459 995020923 541163128 658027324 135273763 585380821 817631534 976284990 596445061 618612313 848626963 935304969 809571334 952198405 605701282 672350744 826602598 930060779 396760314 701960021 481992781 729921683 59104451 480767532 248169281 983332314 700300864 963495631 995042186 999439688 193603842 434283532 630274057 687831460 552466483 809925294 384791526 552487965 131067250 322093972 341891678 437127170 830238224 876336984 211845603 304162798 894500205 922757779 512448292 664783112 756635723 971266520 413495380 487136815 791403609 827398175 779804931 946597819 192881847 831911487 745542759 842853822 254026277 259123947 691365106 843774705 122424479 630859754 200743690 401966019 27112451 378031012 56136914 131840914 408829990 746679578 31923237 39986596 238296950 700427872 644870894 710397064 259500214 443974657 282359569 946723206 923050514 970746138 169490651 329078539 124060229 281064358 556330268 752508484 826112320 831651424 958352971 968116807 93459523 247723863 422430381 540828615 734571578 813308491 942263224 993570243 645697271 674367694 109094990 619058973 890488234 908460752 976978547 983473644 843167847 968238611 588918472 706674931 738013180 914271739 516006696 638771599 492145649 759020876 746324582 920560511 757659917 967073642 76153700 995214655 883484030 891006138 303110352 403192308 810702518 859658455 636101260 748409001 943237619 975371966 828859466 996199182 993950904 999284504 249699861 364837733 634637374 975672297 130484634 268917847 978177761 997807387 276758010 855092768 405322150 892385666 442835508 870384341 960180315 970455693 823821711 904613342 446322186 833745946 898423625 930323235 830488596 925505257 848773287 909406429 911002587 975035882 370056856 550982231 172669284 677227494 12961358 14967747 333328145 784968429 754488190 956583209 326529397 576996743 957686888 968453403 582296544 919138323 163993997 234647279 158784378 966426532 143916235 599603367 211714158 761393202 81434817 373674750 939946592 967305879 184251597 618911290 638705106 681725410 135474517 344230420 577892348 595135985 272720845 424048632 813741646 896013930 113589597 245969766 107776407 473629085 131388784 281440801 172140482 491572324 501874017 519851905 901587815 963015742 906398430 954135078 672157277 744425040 37997510 903547124 182155290 561053807 825674963 953818822 586066994 694796153 918020021 964945917 489345298 935840990 682877415 691640664 412760800 830074856 668266761 874255475 822994242 845917275 498393153 949522986 452607424 710508719 960217427 985924815 128673935 745337611 904581995 967048799 993769916 998790992 580325305 746719650 497070153 590422586 183699732 665817668 840723555 923450911 782179948 985010846 922753262 926247184 540549887 823033983 786145228 791159667 219785107 527514642 47579106 98417843 93685878 306142676 351190903 665412534 985401491 993189478 308982015 899728594 401476651 541057172 159336554 250281697 27559321 119856094 409134534 579432034 249215219 963261689 714596923 896494954 606273337 846535657 839406718 935227295 641519457 964153891 237246951 649807959 275078491 802426939 411063867 581572018 387983947 530005802 728791600 868795957 985854396 994544194 826195092 875874907 411842721 503147395 305740362 829250735 768471181 992753393 440069755 595162728 39023531 301899340 909482325 953973248 38231229 432533724 282298838 923466237 910907487 989928754 420411284 571588434 513474157 904184814 501450930 994921932 280881615 894308680 164870059 306317316 86279390 609002736 298062149 315902158 574397778 863757710 580643387 807049422 931931908 951081233 711875550 998196335 523798231 816943431 260938144 575646727 290882857 783958636 209110757 355492371 184063258 649153457 317642549 874692381 79167116 395857001 49850463 691643183 159637120 516705416 997849661 997953350 475865927 860327266 297603834 863645363 22024223 931333916 850517686 957713674 847044816 910085276 602064379 974507491 635879177 822549708 980230164 983980101 718364854 859338669 484840656 789318270 160582878 925054030 73416969 975529390 97235599 329884116 659896478 721818856 44819073 173273270 915075535 970538479 645693845 863990537 547659095 604964034 114494333 979086676 982102371 985937735 257102446 957228678 534849408 728371118 469602263 708278019 499058646 940309465 661601991 983415698 421905246 512430779 134561772 961305918 793344316 832949890 888982390 917052847 334064786 989609226 454072864 914109663 372695273 714137183 366841042 803003536 509191929 521798177 445790756 790657897 951781943 970188277 181059330 517460350 385332061 486081690 598721588 949207174 386674650 570184550 919213985 927960002 688465343 781997196 76939043 852322911 490381210 782682348 728950170 874666325 754134965 871458297 16833645 807910491 585462399 917481607 682975565 686914627 325064398 559667246 821136666 935443598 368142011 606267479 754193597 948434775 255240662 473271873 937517119 953402019 74458707 746575483 951064878 986373310 850343533 870509866 323831300 844108593 501472200 870252314 623695014 781019941 636342238 819021208 187087097 961067491 170927859 615132419 845674731 888974640 473092889 502938226 73220306 641206299 353089492 821537191 174435613 503808832 644356899 644523682 693985551 773747610 760634196 893242515 469045076 992851420 65736472 359576086 917411753 966977505 314647347 726809556 23268163 850713649 602196357 967450394 340499625 852890565 609603239 732963956 937683068 981779286 752969661 947095748 852974182 924147755 75624186 352851636 354196812 614244864 916473086 959893138 511559251 828636237 253391228 685593265 341554245 572566501 271767884 495276453 149935438 511250014 751922128 789787570 108295290 571282401 256552855 716399752 634332513 659895048 895935613 960373806 985156836 994850376 827540863 921112637 848015955 921933499 94555436 834113985 849582990 863666176 641557575 672642332 596973998 598209469 380400372 982592738 108409490 332003567 837065304 929400367 939514247 991857925 572034802 993857340 765172351 848475377 596962444 780988242 267527382 913401313 941621729 978552617 699666951 955798033 834588740 913590652 613604360 909493520 762720854 777926801 577776276 720352488 341486365 848184106 349240463 676691576 196776439 987199770 894826268 998127890 38529577 173811430 691589917 910183292 146238809 503491150 869565445 970903137 493727579 927947678 452835926 860984276 763124065 940266386 298203868 394805206 980179781 999039542 573179204 606850723 943666045 950438326 829255878 910925650 386450118 490042271 414879149 896535216 998858344 999047060 620002131 677815665 708073748 783100938 389251388 543391783 1487279 563354768 137523150 161735324 468178219 715142055 646020042 963012384 832088521 934476066 872321297 938200478 847479325 951012251 453370375 836672241 110652483 142232388 406922912 760950105 462939765 469429737 783073132 940148503 362711030 365624609 68177335 523754314 275579385 602621854 494916264 642729680 164621685 202921789 59132485 114535648 271984124 451297225 561754818 999472593 907980256 970630349 789242716 917388913 158610130 159976834 421913514 734216362 14890886 504821762 829863905 978292290 942360738 982320051 426764733 618529928 133231277 788294172 231925281 445736379 232987589 780538537 801750749 967000479 83066710 276566915 649152841 964535852 435428093 520175032 19624405 659936234 58401492 577970140 34071006 348109218 416925788 706790792 498631313 885122018 655127569 894867478 483450623 625566115 837924856 966669017 489086591 805040920 476930216 505634005 567584607 827960517 714676627 909519912 550366939 735734099 768796165 879617680 355558490 448977239 891347364 982978675 298598105 626220391 544541396 612161395 359542091 849728871 253732755 274308187 482215396 526268954 579231285 992954553 116696449 663803526 322558876 611908686 667323686 829068921 647145567 671586860 815547370 936313718 824977891 989706908 593578002 658969969 8162863 236149669 228748578 533183639 489158441 694876640 947665631 986792993 710652327 935411095 457865907 678919548 778726910 978401885 628297107 811096229 251601447 581813499 443835370 697245894 897195305 930169518 288462432 723013737 107232098 779158766 666775029 926875458 725557421 820183201 643154079 922174715 328018550 899792073 579929243 695218566 556813651 982650727 695630602 828807641 842643977 926031538 744569663 932594504 91851380 453972099 382951847 896947287 826836084 849132369 690026061 989368131 227958919 448544578 99541318 300848061 563580535 794787057 347932816 533734019 713776344 827675554 124269871 145842430 654589033 969625517 544461679 602498746 22178225 975698926 459276686 962817534 667104085 801598318 424567821 434138744 849674070 925104418 828368865 904062186 167311475 365551680 445983484 518257802 884686683 964561067 319229802 729085727 558118194 801870651 562841777 752963227 516671060 792524079 908330378 939397644 272069753 647687342 162330349 760804388 209249565 673177871 120595872 705637815 486076702 631534905 287552172 386198541 859611040 880420697 373089383 740824324 516879696 893358676 491560425 932049693 934744071 995999345 176783800 365688334 832964924 876459978 734019292 908890235 190163128 261185476 266017706 549863697 464863723 766613052 692196010 847284524 67195576 100170192 323667924 664796810 620174799 637856275 274560406 727748644 54332541 60820145 333387362 569145773 848820891 947425437 351463879 937712941 549105146 623882138 549948848 551874079 40240576 622707837 704576631 995542401 321573249 961122264 438816738 553014983 20268406 33531613 481363264 489000319 219587 809528297 539390578 580937593 588341350 639546623 616575163 688962186 306758093 416170653 474623473 581835938 349162075 400019766 479859113 968251718 361306431 642642511 846396221 959373767 513914401 750240353 802643678 962107899 802604320 978093756 461182327 511037898 693636232 696911620 581902674 641579956 523404117 560860934 9458438 257060513 912181506 935454576 292879330 476151061 297406378 455904395 892441816 987744000 784768278 836621816 565328639 654637737 49386600 323534923 992720941 995421325 87433115 103821487 447815228 497506348 969296995 971068891 733792718 780737975 173778351 220114832 301205686 884790383 146251792 920473145 646356387 769850696 426659018 978256959 79382747 456554604 432119908 781118157 752354706 928986716 690240214 965035102 2485370 635932147 243110941 949473075 839417095 888451358 168642861 441130295 804859526 941408475 318942716 869981593 173257441 882458413 25300887 532035502 873115292 945577289 243764316 816674667 173795418 805906276 91316617 546681104 171556005 839584090 546280136 675986976 869820322 891209147 322361231 545399128 356418979 760588448 738909600 826896796 719651432 946017298 985033261 991171029 749421166 909160593 399145612 404531758 840229421 941069995 193604231 773522729 982926975 996203327 309497315 788209269 742517000 760692334 394741222 431257741 438768798 925741179 179412241 451736499 90666794 197137408 459226106 755262513 31256059 703861111 394230435 975610612 603169032 893837445 901863449 987184801 445857201 610065406 915329258 974061053 320860318 707130182 159896335 310061941 314848874 445007654 997631742 999575354 867054326 997753106 729689265 839116336 63054721 775293765 650126764 671139787 698869170 886806017 231049734 828361274 222202170 797280257 187154729 606611240 29387524 622808815 627645473 722864597 266506449 845756345 683183330 900782949 298453859 341676063 858369502 985223297 16522901 634147127 639743175 812065103 845858691 855834087 287769478 810616270 523408494 653794365 736630851 793594932 69601599 129089048 578398005 639804331 683688656 865137597 78085759 909179984 925745112 985202849 457941193 737543831 516967800 677055160 865526185 909038543 373593632 481461179 273814634 487519290 64934178 768131656 11791044 714267123 563198485 602725604 614660758 652322866 361080103 635244638 98459636 525440708 72318612 172020156 139624813 182655279 13145664 153001911 747183929 759822333 909261124 983419704 780076263 985295735 81543937 457030692 714589577 802304430 691246331 975276013 693002338 837134273 963012757 975345556 665149997 913655332 93779231 115979737 498715945 929358255 654961568 937024495 790209164 947337397 245689104 864322409 375834420 393092383 417813155 544695715 967876085 976163708 460769163 857325847 192814437 297420783 252708179 962300738 681892418 731672394 174463681 350444557 859983852 962606722 144788137 726260912 253137689 258059874 488655411 860706844 739501031 900301559 731259438 772468954 465394527 537466131 950704078 992756052 922813543 936159412 737967162 949812368 607972920 955505670 225567639 934586717 32389574 511573436 546247328 549211846 355956233 373932400 142537873 672935543 406957064 866589613 440529160 661869277 402232138 545807441 639190433 986554911 188635737 268396866 33132936 860376780 812500917 858018519 818606938 872963215 350648863 833773174 709252592 864538502 103941964 873055477 63516108 469677896 582766312 920205633 638925254 640135716 726537098 756122257 500505656 542023022 447243344 642765392 621708292 993825109 957164801 957572582 373485163 661421663 173706463 980160646 423629802 765756803 378070214 984722350 62880588 250132465 280561069 923513491 908258917 940533310 71733282 220734583 94905432 312692516 619416249 859966778 347032818 507812891 591933602 999890375 45002177 542443220 962212806 973089283 860356248 986410021 401388773 484684738 833183720 948709276 131268568 810446383 864906770 928501081 208764375 993686317 440859910 797320254 666235795 711572037 927621724 977080230 396591022 518481395 449260386 833144501 834509891 997193760 778325606 908485408 448748413 567008137 373591490 423862420 541099039 543686517 143040969 472430842 958473774 994437186 784285536 805187149 572968649 706628314 589821316 781657640 988366919 991251705 635982953 837235067 591840093 672581381 256227500 828669508 224881781 293215553 414328821 531730694 844512362 950525033 67667106 955315352 297177191 473616474 965501692 993503298 187607413 703402534 665410963 673959259 408209875 739195055 15821216 912604818 474312861 544664514 324168124 500198748 564942492 883363819 757885331 981250784 246712619 749162912 908716852 978814084 226188009 261985284 554159774 692206473 361294892 362441898 95360347 533914183 862393961 890656729 591390477 778273119 859150795 870593187 606442465 949488239 462117662 747620678 373075208 827781461 361313170 973869536 402940989 958886427 618732134 893308471 970995544 990420061 68993172 560665072 258317220 531726555 893093000 902853518 190955630 275273083 463993966 837031258 232505034 566229350 115320587 701978589 854433308 886002985 457031959 725344564 562781055 820539195 64294162 655513765 693305582 960683551 476896328 563147240 977876991 980525362 492021290 576475941 720337680 995909667 218650447 374310747 818667284 997102422 507805361 606672541 322202128 855110436 267355387 497304463 720348485 950662673 100223151 398916558 675630510 675718182 189564453 673896031 956113836 990826342 404173982 439415169 296218858 907860534 97603983 384970007 979881994 980820982 202928608 588132516 670949417 753268780 818228722 990600000 311632617 659666636 275598092 427921338 591846210 885761678 927554550 927586405 186861688 523437467 416951753 450142944 390097424 492186721 893800243 949650682 744910942 868037324 444675717 597335645 448191525 745393587 561381312 737148457 726941507 742981596 947022940 977732199 935743888 952792161 484973227 692389885 941083162 979053175 711043080 952845261 735417047 953280233 217214418 347728577 994985395 996176337 464414240 786582973 315363110 725131386 401887100 745506965 563377324 851461146 817324373 976864838 724590434 868290528 673322898 855117182 933633457 962942922 915067361 966850450 15884541 532168125 180620107 379784008 205051819 960665989 523453761 763562993 73970519 101573809 327956550 892159154 109906841 792809445 477194606 911733465 398216196 983004529 69237752 580589118 754195055 894727010 730604093 768194499 832451455 898847017 450038962 759939110 975364086 990922353 124267337 130011428 86235620 356261197 784515947 971344162 874147618 975636049 854073964 912759784 451433710 693192911 529668291 937755049 88064596 557680376 773701753 895026677 22940649 225836976 956318379 991195795 17246858 579313192 994064585 998178417 474924342 521102867 637434345 844340436 396981128 589825737 129596224 950168456 379031508 465768311 97871725 631658152 658156305 929587941 285257795 839986886 291430855 668837461 336608160 770370100 392133709 690496149 894551603 961239567 350588698 957443972 214086043 602970548 793122539 941899881 70579106 462916925 916718817 938793315 136068651 336592191 209464232 817768501 510241535 548905108 428967327 524553216 538978579 717177401 607560690 828680115 437261038 785640762 242987812 971684022 417166011 953673878 9615646 42638491 373326868 983035745 512078376 636641038 101923337 579118812 213079459 761017483 141272575 175399107 20380490 443717284 9270201 881610322 681496508 699310569 485546985 763184862 987551845 998938743 293678532 330280653 955008656 966863463 429670185 956909675 956321603 962354090 312502573 621766536 218494588 366010365 625563163 803862850 450821029 598259368 99307497 734902622 34656043 116146576 501410642 674905350 552822867 669489685 787281731 808232371 301343832 845476930 292806454 797364247 52553122 251997474 86152622 780350517 475379393 847300641 955662379 964762771 804437568 822669996 574767832 958226454 801678547 888606453 66489752 669420166 223303187 740499857 51305884 580219574 500481691 830969459 949020321 987087658 492479017 967589746 301375344 344669685 186059736 390746173 590444602 895543619 820845427 920403625 443820220 962930333 321193677 866372366 725872393 909071295 665227026 979602464 840455574 939527038 681212484 842981544 134972827 738686226 416474602 461282005 717909512 830127830 616081483 939288088 688758605 734910535 419174102 866103242 979343746 993768030 816412487 926418219 696447455 848355208 403264535 717003294 860582312 877033824 881368851 956618623 542209064 780100964 869383295 877271881 515719805 524605800 607331631 966852725 472394645 681839431 761877223 939142144 177525969 533804154 581574961 832188939 188201900 493610203 334588373 539420805 798639465 840872443 716207096 881684196 132144115 662073052 903406349 937645034 248122542 501334794 572305798 943565434 172744407 569439163 934660817 994962497 954088945 956261437 754631055 759157922 404185362 525701700 574775751 705272353 364935386 894503862 325240095 393451318 293363755 812268601 920988470 931635905 438340587 624582199 648688178 983065841 788030758 842627430 427294665 620041386 504745789 756821097 641200121 833159050 770654436 859307063 932930640 958377294 380978967 487331321 830937019 927012817 540655323 685183858 771397137 981563489 266573467 640494006 995495310 997251870 417659707 726519180 214884272 533386838 173335267 398166798 577462913 735775894 449575674 750399694 61101462 983777396 937416665 967103615 681983969 891042530 377890272 661941558 486435094 529923138 529047630 725243249 460798431 802995247 418174661 627924690 770083015 900561703 723460251 784755841 339001426 919131698 416178405 523997970 772525367 807463365 224785690 633280978 214160839 890794196 650123492 845863366 171219054 246249032 878820762 908372204 688922636 826176346 583334643 956059811 79384590 692491036 781377478 842248352 153571316 176985208 854389268 912682449 26901717 880186423 407937958 965562520 126300813 905409028 458240224 513501537 561662356 842870076 838520935 889947605 579184455 885217419 363992549 989422708 272677748 978044460 329129288 675193274 509870760 782037348 355723417 369065185 761927799 842979601 408041882 929498012 452516177 655115220 184415619 416101147 812552430 921043058 26734324 118165519 345703626 881442385 387152687 925641972 310745460 924321597 558382641 741648914 589878172 805675114 577198861 852181718 593569409 651012133 771309805 922963629 718233497 731530721 395030059 598993854 621868999 628489928 238627715 624348222 906077548 912564691 536238118 558252548 755219407 988207581 592025375 657478779 68273259 221492894 550314677 885205205 553565271 639105662 160207557 792071373 543690699 668542951 562863634 891929537 182944420 740042940 747764534 879220257 150257521 178126143 9913699 191863614 134051993 561784764 918552941 955031675 332269349 883002789 687284403 885280656 451453898 550594227 138711480 233347082 510885957 635542611 128526287 849073544 676181032 867022000 643707389 745264507 552754422 911899973 53165220 141694201 533325774 798248218 604080831 723571370 291924160 888825674 676341822 958196877 533954212 920838395 995078744 996253252 868544528 941740224 921228267 992065979 219748234 705316102 269056683 285337887 344260500 569798371 505461343 509264094 137073971 832456606 661303760 757931597 908961266 946281436 712882728 747225078 685943525 695664887 965591570 992953217 331523916 425697777 198829568 208090484 411342374 585090804 981699858 982144846 918438227 982864056 587478514 775303106 252795110 679656800 221946625 991581900 206057702 543050617 343393455 968548347 266923434 549759775 882434263 932534310 980655592 991497268 126401695 239930798 265308489 451509863 205658700 618032575 833034011 965750417 384945910 777251402 474411373 481002993 308184835 530187192 143671421 838490763 851586221 990486466 247159863 898952991 77669394 624954533 464348978 506265352 346842883 367760017 524237483 545250874 675640549 947825652 707090821 714694119 128330363 399134937 900705177 940139449 256654454 424624436 934081247 942179165 121798582 746378395 316833289 948439069 413050380 644760298 994745098 998102812 481986687 599067711 555328329 758375778 333749873 469725627 226324979 400511447 619042297 919174470 703115600 868777275 116020544 200336383 584451164 916595789 296566110 370997649 152179117 267168908 506289550 917986022 339990723 562932536 417911737 587846676 858690804 860818965 315757185 772115213 545400500 625419842 8043 239053748 491518662 785957381 754338834 927543326 808089662 980936003 252796292 886862457 244186463 934602174 106117937 739677510 138042398 952027779 764028250 867242784 768850693 908663568 677564735 810004334 85120343 495914473 337983071 449707936 793955298 967780629 347744054 822479704 580808802 967496211 504463906 846694505 772338236 998181854 467112057 507336118 127169191 592951830 742629639 809348911 257265442 433618362 452219736 628038919 969252332 979539381 113537583 464149733 486728507 926349661 967519671 983722774 978900854 991492522 459492136 495902718 512575890 521946036 614970253 966265975 17126595 921089986 988132815 992301697 31908967 639608373 58434045 885332372 510760420 572543150 494223379 776951274 503201614 664780617 55940593 536669291 734992450 975904032 536523565 883171265 468149481 926942325 294996485 394715516 491113096 709052982 209514868 747033604 132460955 730117477 282188406 840017369 695901193 963560426 273166054 315220736 208420962 977881179 212455680 514230953 535493045 739379956 14077481 676369465 771452274 837450525 449510888 684813316 143081092 424375505 206328643 535599706 622758672 894193329 234105815 974016858 912221923 966626485 100837363 829564214 351916561 994999309 348793489 730660335 214115509 888074308 498983283 675212267 252739039 721577125 616985459 734441011 169171440 898891241 325736784 777049758 842802291 907187729 180235171 540711473 876098306 931771497 926637185 931422650 156868254 341081954 308770557 538362068 632436292 995462282 201080557 217766161 277786969 474456908 534408092 918377240 718265103 795509381 637157959 789294186 667160142 954793699 823156020 966843896 7948867 458412481 773088688 922685190 375357323 900736850 399067296 693336811 431050026 871818069 161227102 212178678 475891434 539087268 999403231 999571336 114874818 374526073 985783426 995052097 319889936 737333273 823099384 986129719 981695635 988889668 518003467 585615531 756799616 908107846 243248375 772109195 809151128 818262976 971506697 988089429 538266354 773655084 891954797 942134439 471235421 929812718 696765170 795305794 13264390 693910046 652276611 677204226 600647033 701587671 870295299 972143793 921937062 981748054 862581386 989617154 549206579 677531863 514679449 982136872 86541883 91670356 397874695 909905660 26021945 905754509 460066063 643082501 942694346 994720640 911290116 927814923 39573918 643280501 192364791 879158411 911298955 974800039 600493188 951497307 997772806 998790017 94631520 722910864 802380964 895173775 40059791 549412796 332469673 930988148 943648588 988766229 554839202 908626922 782053350 987054145 704809507 734778474 210273884 363493346 343804734 661833577 705188453 921213039 575117293 966527757 608443419 974553373 132513146 197254964 963063549 977882866 966344753 996409468 400257403 518398917 608265693 716674362 676310311 978271435 962820969 974287040 417858880 860604345 294147635 403401481 489752217 713683797 227812866 800258857 724444851 885917749 697568413 837345901 929886609 962984924 113499353 727573701 363022739 924290160 937788487 950907982 507951082 798001691 669697172 812317552 113052487 445461655 460212629 467871794 786895738 851775123 467221800 791901664 506698067 627303315 307288415 460159834 342109272 740051435 609085733 621126080 650460220 675852895 673874752 717114651 739403868 962776194 220040248 562873771 445728920 766402154 894941776 948040884 162352555 591978415 402710231 455831888 286442411 408548575 573090953 636522047 197765100 940486779 975645850 989689489 26661754 216208314 377244695 877492548 852909264 868495823 843515317 957190943 164719380 381013364 252338484 300070524 587746015 725735943 819642204 942977463 793114978 953795652 184448273 381181657 892210815 909721442 620295346 939508012 859642345 941857314 658095754 738609096 310472611 661871297 216967862 220294799 482671137 761819340 272527300 667507214 708663630 741840521 60401758 70794960 189293142 373757236 704965143 874099440 684792228 701926033 917868819 956383879 202687726 429203952 453561677 842920916 782314597 969185029 246063876 505526012 480898760 703054195 59082538 707626411 911050576 973526476 798251760 971305901 60228660 323438023 169364304 847600534 736120494 769894283 592382009 981148074 887582411 923283634 883785624 931341232 705801326 762294684 799341076 837868919 342005625 540433975 365560980 667156756 491366803 621127879 210479255 666624262 17642181 443008201 774814207 824505651 202760180 227059557 806927357 986611618 828425415 888084390 724506091 782467130 326118322 591617836 406296650 439571245 364583119 672548453 709156046 941048050 651082959 816586073 399830974 621504553 105582586 781857242 257507136 981041559 662074698 839138471 446846111 986981334 228588548 332566692 888713527 956855690 186460296 726119838 609299791 981644132 160340152 269958666 398922057 829504835 27086529 971719453 974850807 981840355 842178858 938595280 791728788 996592887 323561328 589094905 937641619 987683663 905300370 998745913 297699941 782722729 76011785 752255261 430365808 586471816 179268308 967480927 82986126 882386978 820225959 881098452 7399516 926246088 550963726 775281169 390744145 419984886 3172513 777295434 873900674 903324555 460003747 823166337 794610305 887577947 76550633 177696101 872440989 950753739 320944362 548572367 872115775 931000775 690775454 758264732 905826492 933664837 796057770 818652992 873062173 955281169 687061898 858816645 585501046 631345008 962757675 997403813 926005212 971829645 152627222 235034036 90271753 787223720 230106446 759855007 234340284 269564939 854722970 927418013 340839534 825272387 841402845 850333894 97236153 425443444 261786650 776971198 755369224 851374942 547468913 691935105 116193677 482224097 310494979 830053316 600799834 874817196 248248204 852434050 160489820 634733507 485217677 853976464 358470072 397408407 885448225 966536678 760413113 792500456 582730204 736250568 138661722 198588035 455332898 660711808 750038557 845653615 792630835 899347197 387540656 950488109 459121540 960019777 439126331 919802828 664246877 828880741 310896809 772630840 527223070 538659637 868975905 912978954 670323999 691751038 235957218 881271237 199330502 353497819 23928021 584601116 778754049 951402719 108904617 142898053 754848573 893324828 141395941 318205184 801493124 951367961 135104366 866133392 389769713 748884975 815598699 823335740 144826686 504657827 960903922 988572612 665687779 777345708 178442642 796569430 880971177 918488140 220553067 821727222 476095789 826487680 594643634 681429723 973632117 994260845 144060638 580197994 181377929 533378046 909781455 933585965 499556693 856444525 110434754 268489966 120194341 896604282 847369297 871746003 573661947 909280844 955828760 966724710 723373315 830072770 155086955 324443469 937720884 938219604 908767892 991624116 838154810 877168916 594183412 871503389 639539978 997952204 912838933 926517775 188175991 445156085 40247582 219210147 108317585 600702112 618297986 894632532 844274448 962893349 651405893 941555583 63188289 306099197 340598909 703807980 387973359 728195988 10479927 441797289 271911258 659070047 860407997 959478452 411022569 635691803 500845695 967137210 580896707 625614832 83390967 441062165 633033364 883910091 969618618 983176370 78920117 912831471 749833770 792058383 575601104 929400340 215787440 765029972 928481191 964756931 527730733 660666043 955104125 959317352 370298658 755184357 729757369 764311037 839231074 862762976 452974911 914073628 65773168 499668437 934271549 970614783 62107382 943711703 728398685 785609567 598803431 928541470 432053771 940846218 488184078 699057445 616043174 893050656 767784582 828428968 464293248 668871635 207002577 938883514 381507695 824339782 280847710 942523773 816747830 992727962 439418590 560450745 434239034 480979745 488463018 867026175 163705413 821436589 615169749 729009569 426008143 491295696 630260094 721507555 60189346 701022426 479279456 737806392 584924063 877223325 324625913 993876743 348795294 784245778 432938083 548502725 401591285 935399610 253005378 392092250 507115962 703607613 60418507 288667957 252035264 624552775 753553905 795914836 675247850 832675529 990393897 996414119 840817764 939099211 180133684 509729446 831902992 995565704 942919834 947914253 66838265 78447952 447376062 591326191 763234216 900299529 251439373 611707239 134521938 896755647 360978492 895898651 303639032 983458050 582459276 950073856 66659604 888835424 363294489 567588661 888256274 939201348 788965808 890224527 123897645 133447961 312933912 443360863 746709735 882360944 843305491 992509204 806249466 808450920 736077141 960084020 77801373 851231847 408798630 939428341 616847028 639853312 743257631 898117364 833084627 936750006 636261399 757413368 646646102 993198029 850925970 898960847 985550583 989405536 672793703 926084376 476411388 640473700 614327450 738143287 592641212 791672502 499710219 739106535 912127383 995102166 632870304 681284665 612658813 869659747 151161789 195282567 973669086 986610239 749364946 782456956 630403539 933243000 386220946 613580478 799006548 825014511 943579087 975504159 942072148 948755845 450337836 538092677 56807793 829770267 406598702 781215457 958232461 979515728 44483971 517838211 308137388 613364549 275863710 417516125 57999999 650489306 961814203 992842786 226332606 939555348 581744674 746769278 260220675 618845516 817600407 983749998 138229248 889411786 549516678 654495040 301820355 745385860 937572132 944622846 294103865 358427342 299626098 615404089 607645863 780963721 484457628 923830346 820608761 867923406 828068484 974734810 90561714 397752876 632413019 988563007 571099883 893807622 777479139 882895363 23008104 320208600 898968496 901212821 129001994 273491138 366803309 816138034 770910701 870127929 767933628 901836661 616195626 637103014 301689535 407483637 619644808 971026142 557391744 679345179 247662443 849076542 394382561 496524838 431262301 598456723 31875804 326924888 644332652 748842650 580138004 767937211 469795594 779683329 678504513 689391834 248658479 358495487 256790057 896299558 853204791 968433662 306670644 800492256 295222186 560346022 546402818 730370509 635971314 940790961 922269084 963394202 448715737 461106779 904769539 954800152 890248720 894714122 479876491 812809862 20508499 913668286 681944578 934718813 102061094 736658793 515682065 966897651 485677099 699315594 940513165 965730620 97395535 875743153 992920981 998568364 826757096 969939177 833086947 907860003 250508041 578503468 884371608 999368564 186956059 371771767 157968535 860463675 861605022 939839810 726071243 764768281 323760994 944392171 529624995 896959067 479850410 707356184 479562460 854835271 745981848 757502781 839277169 965153179 380736521 646689223 813564705 883255809 585697931 589854721 564640846 970784198 172682651 420899172 422101130 579342731 776071717 954028419 117009299 676566841 338203751 587013002 161689689 794756978 180799215 632842848 484217859 583509699 25705812 619765187 71406805 815282263 633472482 655695277 445280959 719201532 465829674 752235686 692352868 701738963 923607517 960010083 215539420 968101189 736299674 872616681 301741402 996136089 697513093 719712966 870539994 949980377 778653863 796950949 639858241 786080303 255383057 388573112 439229253 918786496 307347113 491252438 595325018 767463342 43313944 626980174 828561082 989397453 964099145 986435595 891284142 919270221 664678554 880998978 939535598 956534297 656196122 703259574 794994102 804067576 981779354 998715468 328472898 406356004 444362624 578258519 767438609 939600948 812458712 889590621 505200630 921919903 624345827 644441845 609553587 787659547 885756663 987089782 4000849 452414052 286400281 408429257 883247215 909718636 217239555 547895674 432038844 955556354 138109233 308598922 154118524 208647240 437961676 669982463 216592417 439156421 805893747 913921622 851652753 967569635 554650172 666949624 176670208 225795938 467508569 602917516 839913523 995184344 184218145 933758977 496241815 853577945 614018362 878642541 359781788 520503058 329622263 869481886 534842530 602304121 778924283 975938607 784966191 813474064 958285576 964436071 825961946 849607969 946546103 961317720 215619689 767118757 95670736 137593703 81345017 231777242 348608194 454777892 458166459 995653524 25778429 699137871 460378703 816474215 366342801 649569956 321067306 741398282 55612803 255090015 48470976 454403187 361267697 954720423 246058626 866444066 47117767 677299507 882624231 933954290 737593681 835362723 676004634 785274472 94553304 951745683 920600807 998983798 22549973 552397314 413073816 932650060 145411335 420014465 659854064 952236971 221854251 900990643 74781771 928718380 177128236 798593431 331308048 977341529 646894953 801382438 843861021 989245395 625071933 734679941 99268922 669259974 554952119 891028594 347387906 902010095 942600215 998639712 689238204 787100810 148483830 354273846 842927773 932807621 130726039 621214152 267078213 371569177 338535784 765240924 591203176 621279644 407041373 522418108 445310913 558363128 576917973 940010227 885668158 905752363 765914849 950397128 48961071 216144860 524947700 747299934 429466004 887079573 273230005 460419134 820315783 941207017 234013644 845636175 558027380 978084931 466566938 888092930 618939761 765458309 726795804 737605964 626956696 847876378 48948221 943249300 822663740 848861468 481115277 995012344 951050654 953406224 125695865 697584747 972864385 982689548 636373069 741772649 999535908 999930394 907878708 982328524 242891257 665246142 937987412 950222002 758163127 860349876 518280331 741356408 407944806 717726518 643297170 763206923 409589653 725333755 499756547 712175965 611464542 979785073 203918453 209460336 904709335 976070819 793352719 945171661 601419683 974903650 413560568 932843064 370046073 378333435 68744070 562633720 971446774 978232577 791397665 877170676 363240422 533847514 214037667 780625010 749963122 992143453 299993347 607504564 508236641 700281528 702370250 958846709 417173950 846029360 885174220 896025554 147578990 277256800 34970682 704308765 192350762 703281983 27458114 270848702 346171231 499515959 889363466 899605150 243413725 860614325 103784216 812981995 887578503 902408056 804201527 865337891 840143813 854996116 304728596 457405516 867765990 974471737 835131176 847307455 8838248 183932239 947625382 986147780 454523058 808431467 271714706 658300405 137535872 376995564 518329554 813321174 453375220 524641522 490812562 937263015 684905360 776414738 369733865 940513404 82562835 159744343 335516459 960492621 378646680 723541307 192818823 512263901 407620871 746130719 29141768 772507130 805474358 943312620 200458121 299028595 914038644 951912949 363581600 468659506 619038652 847982224 755991512 942196916 971883611 993051154 95448448 721216350 439354816 458070183 696950283 777768562 802335157 905373788 426918406 854515153 190172341 920423676 945815293 968485510 119204245 398374077 709245704 744704297 811719595 813286068 603268807 985418818 681633865 986660782 47832095 150342432 848600831 899395905 506925063 726640074 719471094 765744663 77735860 721528193 680923097 973442371 990238794 993937675 537296795 793745417 2754680 411911334 776298948 865707506 721204420 980863003 520615331 843438932 427579424 601015078 59019793 213088239 358637775 547313434 81156815 333909220 295321676 720887094 521291865 951496525 724054277 763167358 932232364 947380323 451354977 627385284 582750179 848077576 431006652 448557534 540473024 841984968 257122487 921635292 81743481 805961871 254087740 394656056 906616519 983830074 196866118 434778006 197807157 213051710 855266276 927227631 210002445 846465813 324991535 567973195 297321132 423291500 170623812 796881012 866764499 932300817 260868845 405810233 338338096 765461410 827385953 958420285 640889466 766157264 991663809 998462402 477042748 987359405 511737980 816787186 71561415 363853715 843394164 985988569 3416307 81209037 908407814 918598721 991907156 998011404 250118352 780091449 610729500 808747041 652491787 785713716 847513854 998822122 522069831 724992369 946932460 954812231 150659466 510049367 870770774 959843231 778695372 877651352 791008206 874222186 686721277 705710585 922630898 996581925 885575523 927435179 869301220 991179873 164235899 202721771 538208318 658322029 481688092 914605373 605216677 617433156 51217710 152185234 746451072 822121521 58606742 690556107 450910973 540941297 42565949 340522777 357440885 435627042 153742185 498382481 543528633 913838610 10570201 500932213 547147274 747054927 436376085 580919830 433960569 995669670 906262468 923559433 223349020 844329362 888010810 974110859 527269570 574363364 688667575 992148247 644956878 779793109 832740990 953923176 61508955 982495255 865309051 907602079 972303857 993606009 927177515 989320625 144297059 536089636 774507184 932818093 64865562 188904445 277601229 798435669 240081078 465566092 722951892 943542823 653915089 682165118 456455639 560467396 860499029 866122886 920321420 922107833 594271844 597816881 312646564 887167949 180959634 618831385 263772050 562736267 836113547 970736592 366164098 762183723 50457364 874291282 536714034 800144227 257204352 357052764 47366322 540132884 544256932 654686448 841787736 911420314 433187865 713689189 304567371 706792971 902473171 939947687 760994671 866819961 372733904 614382069 707717112 816280531 259032864 353274445 878919721 910462391 84212559 348151919 672961986 860300891 841495388 964395932 360943129 587492304 468400835 937822441 726243016 889014877 560356358 838270188 268774937 660596222 39189999 280233843 765048050 965442988 424832193 713301508 375831229 719065793 621104688 719371269 995463089 995674512 429526084 760983535 770527945 903526005 203342719 602718514 782023253 886782596 642995216 704530744 364574766 798888454 899879486 976527702 84574830 461493232 555048869 744272287 673019418 755854284 43644790 188342133 18890400 822894304 586640253 598514478 243254987 387448719 55848507 164955006 485240298 562446849 259098778 509485017 719804947 916780854 571480040 609432889 699934315 872788454 560186436 737373240 609589585 830184317 659454018 813471797 386570348 877206558 29496720 830765858 702271952 969529721 652408418 766348978 693229911 785539404 656303288 728995891 663105188 741125055 876379365 908985230 642029542 999485170 692166965 928078172 688572518 994397467 501642790 738011321 534657256 984047599 124913838 610882398 723234627 955218744 769925560 794817051 556922323 707816799 226133125 246892806 611128425 863697367 234960404 930696377 561331193 856436872 586968369 610173773 823878161 844927130 481761896 942081360 305861827 892572022 927891702 973790052 100719606 495022136 592721020 901563517 391808699 622453045 499772660 611611605 946757365 967867947 305754616 684909607 992466154 998366473 845705133 919234150 121856758 946026012 136050682 988993141 616017526 693533169 90914154 161526597 41481146 913278565 703942369 819621623 729486236 990827259 584666932 700634759 388353666 814585845 205595374 961257934 565162864 582416995 12329153 277916644 940873931 999640219 586848020 988961842 110374549 595391578 6019040 729036906 998307741 998471447 987547388 990178521 205577692 590779208 974652750 980673303 874609124 974553380 868373404 994481458 113312660 192789252 770829606 902073286 941915860 973217545 368182895 545051773 181745089 299721691 836713334 871293175 92404353 411817763 455265173 616816014 570009345 711381527 284426031 958559872 645341495 663917654 488522713 569878091 624858718 820567859 101798931 504331433 767759507 989794083 844322172 904493553 311808661 337025864 590388451 602106015 167538487 871638386 85891213 359791535 426192839 703907185 330063126 455556485 861831651 956203362 638195763 752021007 669772285 859308184 595391961 966531474 806786254 935359017 913399996 953451811 881135395 944336465 785585920 858440219 149031892 405658648 838350749 902398718 62853287 229745899 790162797 989629212 105145625 863856000 800992793 826170079 940963790 956171164 842567939 933211380 796374404 837468652 201774839 828426045 566418258 646243942 707377957 708958009 491432206 546334124 537879233 742688285 750543428 890506920 358616763 901206318 988334782 989112309 518713953 975398545 180967370 291754374 777635228 806257746 221012960 672936064 206044874 514092524 609813471 974669747 99156183 369256004 500254056 986376617 604691970 983291571 619222742 880745605 482682715 827059490 950803338 977705736 373999598 570446660 888601563 909895438 629257212 980604502 929101853 944479425 302790212 782441232 837042160 996884524 879034715 950842270 913036026 944055869 784971182 964179635 124957782 467875146 558547974 595120726 149066823 369766293 543077331 911942343 262071601 784370763 350181130 955113262 68762267 415380662 323031249 881632803 513401772 533035153 18989767 161649082 580978694 743504151 749378791 979758528 917480366 922146231 717928721 929567157 953229978 972272572 49445992 99282551 266603018 400436730 5046082 763988284 704540702 936033521 201973890 440141637 553835379 748981156 395193872 894973323 715574454 872001162 624360786 981561797 558277501 947330102 975210952 985351989 556068206 762557620 168643323 750176661 488113828 949194607 763302531 782929110 612692425 762976498 495212753 767605592 560503367 952461943 876493297 914593150 33466864 542905228 663682251 767757832 1262846 405351991 548273967 553577113 48824692 69020187 21594257 974392058 404068399 641685095 685983532 870246263 587655762 919656216 21706250 936731060 812418145 984002959 802756602 805310980 256450883 987816366 3505680 633666175 60241276 710662863 781201197 884626610 334929573 995910685 702841195 899707912 299764890 746613908 897204432 927436597 603116167 804603914 684295278 833093554 667418203 688575677 150872177 722694966 85027879 382156413 794470195 900677205 986183565 986462615 552458629 725612914 893313681 905232062 80508023 957999250 984271763 992804411 94673439 589221770 183670907 567919506 704925677 827467874 800686934 907628447 872284279 909365347 375361884 527169272 894852216 933405841 775017653 954558006 901474302 984200758 397158073 442892700 437967903 909735382 805359932 979147584 599741899 912207619 345468401 644438513 190250421 894269624 82760384 638827394 545869117 664592228 537362932 547974344 461576006 731007140 173387136 945737606 566077485 677290695 561657620 651060125 165265122 943434289 730116852 809848563 478864403 893650315 704969106 717564761 713408774 975498603 797799624 827448441 623838144 677298300 496507408 621859889 116777879 577670371 167028186 610266686 827427144 856517724 428177500 563421672 801140194 999015126 469845308 982120591 807063910 912471417 455823087 876495238 439674751 467914421 817349946 983860788 917539167 952351186 857620147 940047214 429694073 667218895 801263977 979374296 678362215 938869548 188788806 996996874 180655734 565797027 834602541 981784419 203739408 239694798 565730205 825766106 95687458 826560046 360343969 531019958 463764173 492821233 751135816 995667045 219257902 933810342 836544919 972778189 225839390 879787921 133396886 350935751 926721181 966802121 241582150 721438336 830561782 894733115 479646630 489038150 764734034 978785621 592058430 731238561 194345710 849780898 617899882 984892649 266282160 481272844 717295176 851786713 253946376 268268542 616034336 778215036 706636674 880866269 448226782 953416916 618424032 691268915 242016130 469839237 937086425 942534990 870757399 966628063 680481343 888521917 630769874 767763429 362942648 661445007 897409324 927252310 518446715 618910700 469945667 982949510 683783593 931858076 395480067 830861349 703642199 945791127 758605718 796213362 696302695 856482762 671755382 728794419 875130446 899321054 108714966 463046706 358840995 473646119 356740353 936437235 605143666 884066213 772374128 879765040 526776809 788607756 57199411 638136361 728621394 902083117 144611969 906492298 509520582 829415745 375610786 827834991 108120422 885556626 758930562 977528757 855617130 857154625 425260252 781384224 140375279 208054329 224627484 895546840 471998946 807098763 488460421 665593854 863622888 987599151 681215322 979117257 379647597 704725432 473092370 484940040 307295208 384697246 988206390 989642120 395415071 772282102 346065795 912315863 537524873 735813907 228522061 384540765 984414459 989489370 342822186 682480327 233515880 254155494 520167508 918816348 986022958 999050076 942709732 953202410 882798819 978450013 67850494 401578112 959550836 982748012 999939495 999962842 927737132 934484426 210348718 792485954 253557519 871256302 22890645 412058970 988701370 991150147 808094158 979190975 384714476 660263133 927802860 934763018 655803570 907105227 508614509 572723856 352362328 608680452 178445092 811707849 976756796 999050850 702608128 849468247 427241054 451041783 834977756 957905701 856301634 953907031 7650149 411004109 263344112 540742864 128249095 300323989 657260182 985507754 642671676 780547824 982056804 991137610 471834122 910108252 295141188 750575209 377250552 604544299 928242075 928309272 219197751 744063231 56028836 117911059 39915186 910880543 536720921 982867072 705881254 759216681 183668666 854258524 12740002 365871622 404279983 900176560 505514177 558294126 880206442 950440164 905115707 963163900 861178174 997032325 673472640 763853507 436616992 717490346 507703001 587861224 54358988 783368814 33147925 137176454 55540166 997730633 240039285 479029094 754074665 993842739 227810770 442787749 920278993 982512160 394792740 915205622 819736157 915943947 158909338 254656711 891421482 945115443 334572281 593292607 287171945 302536015 529880048 869160284 142702729 835391252 586822548 789125215 909767535 988557929 381134979 483358305 830559828 996461698 768000310 832274675 620750760 992452198 213967060 531470591 286343730 603290385 87590217 560240907 675266487 879648707 640379068 930488064 394006088 734429511 970017207 994484181 97091187 782279178 465647633 686772991 452080144 792118098 108536697 825500076 11756495 769226009 368787512 979880584 867108368 995757279 685416054 865064600 974509283 984420185 803068599 829185466 752883204 923345002 28794693 41744692 860213784 981943264 922445629 940947609 312426057 828301051 881704336 964356560 131902989 639767321 492922548 990572191 883880393 933425664 114264451 926090901 792265484 871629474 67469796 103242136 561389900 889786840 109485988 569531801 99269356 510773329 174666333 958741216 841776263 993016244 463734396 823319329 991368899 995547058 649315775 962819028 784431937 896412628 233349221 665922507 835566078 983916874 757062982 999547787 588341679 862082521 358968117 625981983 952126365 966325961 43027859 685551948 509387286 713167618 28972527 395440759 73592952 940049655 728595698 779977170 563589512 851088985 868797902 914019195 78145060 770967266 372523590 999824029 551846714 559157970 714165043 748587148 287784483 472270497 314348395 489676806 768962574 888185842 182552254 200515498 946940764 970045554 155648789 728432254 435594827 551734276 225942911 509623115 588617286 861431577 914559910 964176352 594451275 693717946 110597283 990912414 37298295 628169916 387539658 618777270 549322970 857677249 945687558 959998404 991337883 992628306 620438034 897317931 652794253 748297668 842249608 928464906 102216493 433581067 556954249 886190247 987579307 989439529 605536581 684370746 314864773 402107024 99590903 835985075 206177155 228423920 533032422 660095395 382083078 936712133 48628465 455661404 17989612 596477953 453964701 612208834 770706939 943688915 612893283 898257618 277384176 926262621 570502380 928082492 342346124 578039039 469907314 939402593 38669884 72658024 339863646 383997510 360235060 400089353 20285802 631462573 722068232 961444682 902373356 935095744 340513498 777182115 203183791 566894632 559666055 984753475 263369156 286530092 462532854 818186748 771674594 858832415 864472669 943713615 49060241 820660485 399617410 703539551 79810915 471012966 864408227 953649375 113949571 116809632 755696098 793404408 59073317 175194608 136218575 659816109 859683354 954258782 623398214 687512019 324738570 340575085 229131129 281279266 212587846 874736227 470749820 499912787 693057107 900191371 654018986 895166966 525049702 947785061 447430043 746737958 417318461 575877052 210079704 678027039 997171186 997388236 63246025 723207537 234826707 394363075 576939862 804175520 61200863 142220224 161134761 603854510 306377099 381802080 418625672 939288577 887456263 935046754 875629261 947250342 706951403 777840411 217118026 829780103 55760173 714679653 283097870 774338906 419112135 753437777 295396500 881108167 790465581 872039336 373633843 905056011 65622920 330836161 119627344 368890960 111319390 115637166 596270943 706154701 144000914 706744535 194801904 270708171 670547534 946135195 749691358 815555001 450787612 455027987 438462230 545946881 110745637 143523418 417802151 671457669 304974247 893488479 567974584 592572370 489947044 905424839 114676013 289048235 305860799 895443155 218517163 649538988 831765426 926988695 239976924 944907596 648623705 722839833 367181188 608353441 370279992 376379335 607187690 936820167 386385626 590620179 928721619 946328005 77267355 948035281 181649365 953353355 538964552 681830866 911814662 975086307 2232211 424751588 862649183 971438175 517156896 742752970 649225764 826896727 394662897 403025762 224570247 408611847 176945750 609649853 283677717 643543479 129654621 988027551 327372839 730710473 834426867 870178915 237351210 240071386 731564851 779592197 414704469 849849193 624978107 914669154 618229056 807761621 631750638 756095540 387423759 786443329 11895109 636926784 186862093 878052802 746192978 806086314 859107237 921264930 186584281 581929223 631943639 705955748 590850874 857444276 848043248 906540978 658660612 918184834 96777009 552301539 877514421 889055596 842290071 976297520 878385500 896567493 570364077 926738553 968588413 973543308 647820893 764746179 570821057 699765130 179989374 371984558 426447364 856402518 338745542 944643401 329171915 663268222 383768963 893052938 739953190 936251801 7581069 978731846 475837180 970861407 709922220 980704701 82995960 179178362 984447715 999297078 597230262 996758770 678344630 915020650 630516641 751552416 258635003 412257224 837466968 932021555 378416714 438556948 77683371 651961025 211104811 666715086 192343431 788461847 387043867 799886589 789978928 944096808 896052438 977467674 294945680 311990583 340328011 888829931 129961401 617468410 901120628 968955471 559286571 767705403 450372315 908345955 751608139 942258432 897545621 919852409 4004700 183297941 699739477 930350292 968592863 992404382 543070202 639431557 100239553 838605797 369872815 804293126 961674819 973666573 222131593 774922464 197541113 923263343 499833096 624613493 794964300 835139689 291742443 669423763 62104776 429886419 765662770 789316916 986732296 996796666 840557732 907529510 202810436 448527358 868993065 916121973 936110007 974365225 874489631 891015210 654342877 843787981 841133376 882899497 222512783 993488357 858558276 935478776 556001469 965169282 117475631 169261659 791657159 928227627 973553172 993132125 590492000 834313717 195663096 281949740 847238324 976384721 223557880 862070911 262455475 537759597 458844528 897391652 448975457 578408302 506572402 734183938 614726548 685815219 66370830 448491547 880846303 891009597 371352679 796147170 424837366 974228168 967608630 998158647 425588819 980235208 918738554 933643510 687223764 748462728 937209415 938064049 555887128 912012744 232638634 481270086 451979278 793946530 97658445 700462427 170324215 889244659 696136159 885741920 118733186 478363027 200176321 849327409 752638139 771319570 639774796 839996520 1627739 67124707 123178800 824949894 684259857 892463280 588977787 592252678 419997621 770201493 851049324 991198871 974649338 991989184 59223953 189135268 878477822 987606761 811211664 924029325 236258549 693171284 646998905 742275600 113599176 577106450 10679977 822383645 76827962 609022668 165475090 224903773 575439915 655803758 952439063 966681454 586027501 912963395 187126650 991585740 120449102 266838863 89667988 922478463 715408964 804018815 120890198 161931381 741770802 958918177 614725560 923045277 562757901 769359389 56487712 490957707 475888884 647760179 925220448 971374356 202134538 661558214 531839115 740302918 485526656 818382228 875353653 942083310 513701734 647931411 145521396 844514925 972827693 983637556 193733304 571370312 955799588 957800582 199496109 257131575 668617923 688636831 670069232 946373345 627519989 696227630 758887489 807830620 246022065 754530548 14003179 855266742 292822455 955582185 793824105 901879163 660765111 880654848 136612652 757912498 673967809 726392493 184671989 815360518 760390784 760610384 841154460 876078272 267910780 551874117 647471472 848637441 898524031 982078269 38740223 331309151 792485427 906021537 854875733 933767938 330253203 650338331 481207886 783640422 310698640 809246992 155439736 843261985 436840969 782562943 950196866 976970421 636281704 698622055 724269378 766819977 481923136 564530296 530331460 613929781 670856281 773280867 381319380 912565419 957712405 973696266 991445887 995150167 577981431 762157374 654918758 672201560 488527348 979980935 544293167 868919049 147892623 641373531 483601967 786418265 320745922 812821992 332475835 978159593 176103702 957075595 335918828 723987265 324906530 648572081 254828737 554282977 773134484 991307867 322006963 336311883 973611284 978519516 491512380 766521357 261531816 883677631 622127787 695151723 164924851 718615952 978700979 989045129 832783787 982190794 162921991 568352775 441838343 769233942 784685856 809167474 826604570 951869351 141547364 887143807 715287664 883700688 390755351 954721591 611224127 628655379 221507176 419413994 138899715 779187415 766085181 887022476 295557665 360420940 957641538 996889055 647404797 678073956 648044068 711253793 375551489 803831934 196923208 614199449 253822108 886349396 778694961 830547369 936804573 944362748 803820272 967008652 84394136 361368593 484532396 758513941 2288286 362992216 106373236 550206944 723302443 924250564 505257174 549714580 964131087 983593431 933462477 992643057 606942550 786094377 95260887 690897966 39895450 489165081 415962075 560864694 126397865 313434573 503021810 630237978 269582245 289570935 755217159 993399249 37193512 110765625 908234892 930716327 622970786 693748716 115658832 895963623 630494500 848593682 658603097 973456876 448256874 632864722 534563719 611218875 164867956 264678671 769255686 805366716 838598526 858362150 815638181 895457206 419195129 461904152 541951227 861743015 351900600 814805564 496024159 876358018 211284103 568450498 772744775 997125157 930999228 933974308 626735033 919004832 439723446 993623307 2601755 530343024 439160545 742450630 184115412 566501732 789577377 834951964 154459456 644687734 643538155 898050520 895663164 952566075 763690739 836552002 973815178 996872516 245745326 654416310 889050730 928795907 59764695 462844853 351145768 649269326 471604007 890367395 176640539 523903658 877179887 882646974 325024928 582578162 517729983 740143134 117726911 320760994 912910565 953545398 251643564 270173382 14837889 860078493 633262957 782530730 168121055 175189525 862889191 937540162 545456422 865429142 103076813 480771520 358570962 598397244 128439631 295513061 145720163 777576226 347818894 597760406 525852724 676680993 341371245 433305248 710174024 764757780 936384817 991061636 114810487 306065193 286235932 716501733 162664450 937784058 371010924 619961814 397579515 452429206 628370676 956347842 382866357 714878061 510073641 853836642 229385664 635835472 674071937 731328388 747992188 929587714 433004754 653351153 592414257 939240755 771350853 899495175 98435465 769114071 466466722 819165911 295153723 994030620 827936550 896783044 995750441 999855505 343243013 460016064 672413270 954030622 92929193 498160111 78603527 266767625 765016528 841285473 887365317 984088338 574463746 963690747 453829177 535691444 123934866 666409837 96815957 975250717 70991960 684279210 744568215 759442482 200431397 929394211 853910436 965737319 864616796 951605772 778376353 900406826 690554432 752743177 962142443 996505678 774060111 807601431 431577585 702948509 555481590 777363416 168197608 597223708 349659812 745193819 868909494 982513914 538322015 962724539 197084695 544704835 155288652 722486777 841183031 861286676 947120 365853603 801473643 973972225 881081553 967827685 129424482 145421343 393897352 466251319 842378589 959820159 678292801 735975337 509652577 809134146 40333879 865140945 668122150 708430519 213658319 760046203 397695373 446954551 33389136 745526604 250390190 494907626 587689813 749440439 302819833 800992362 483076422 536051380 400562380 614293670 805110025 883324886 874591093 985364711 791965449 849750527 411789619 497939551 481043395 931202693 145748644 479896528 911006732 960075319 579344896 656209885 782088925 998244616 706364922 944456357 728958174 901139052 512846407 518176509 676334967 935390581 748749846 858636677 859592158 984841414 84666975 230511791 998033811 999235524 159720541 438814583 72626202 962321318 615054449 810920237 898165129 916009015 851918070 873156131 209695703 436000720 51050363 110601685 200409881 961525776 18613716 373583692 473575224 609091778 85748684 430827027 117798337 237351121 119941534 230480851 233626323 282158260 951359783 974627784 706138850 732234735 232106250 825855784 218698908 647332794 614113113 743816860 62359681 794381658 861995342 928857765 313903603 416086719 375598084 602621595 977787125 996099971 561063387 827908077 132249886 960940481 451060981 789191017 865988031 921815093 186322830 906778874 760314190 772225617 212150502 662777318 944505352 977720661 545712595 696087361 990294091 990631989 845924392 912182016 361356721 381647455 769793454 815956736 644408876 938415470 491921033 698150110 743221207 889695631 617846929 894890340 882752413 941973007 132830219 778862828 659750751 707886236 250656516 797943430 364770008 935599769 391956855 888649425 825530443 918757657 532883673 553183215 973082476 994440812 799662741 884361907 129863285 740946353 343196057 465355045 980379662 985164779 392932274 544190926 801875568 861942494 229699643 534984312 432469107 596899840 464490750 876797140 980852403 983613136 964351571 978173771 746329668 993894467 143592621 560203330 915031709 986349624 170392193 966448216 825899848 833895867 486997491 791343201 503429133 507643248 460457574 542183545 578600940 611806385 944655240 948164328 890439439 922192280 647019971 953973406 485048927 904189113 600181838 629975762 264026142 541767364 629102973 772843709 825693276 853340398 877864308 987438611 258990735 944244769 147332483 452236754 975399807 999640360 141698607 281624462 112202900 748924719 996448667 997703539 222818944 950505596 196433240 951227629 901549352 921327538 452055631 896472767 739177979 992667341 883553898 992675110 737057263 953848110 769471961 913022711 12647259 426274566 230380619 890247359 243331797 475207627 871037079 919788869 165874214 503035265 123430318 769064659 950326439 967429699 82828311 83866817 290395199 871154400 832634000 970918699 949228666 980205695 126542945 202142664 99505106 820255211 900644530 917620846 981345037 987876825 390977247 819007147 698133561 894415220 675538088 707553918 766106321 892278658 688316068 829682163 240340393 917564227 314197876 573864539 724564912 817828672 379373741 726724827 446769438 555454625 647547479 974877628 326682343 351627676 253217218 566253312 83050060 277943939 195191566 674141778 264805369 743695376 469528456 970559694 431780468 834385862 560717519 887448983 175830040 428458041 12318204 897967029 445990082 970000035 894792677 999818267 969595101 993484675 90778310 215291060 213757266 934086010 982700692 993937050 74542141 402450545 295121924 388816565 533257751 836209026 682824148 904269522 241169737 767035468 947270166 960896556 241776210 637902213 596550157 997676170 669031073 854081115 852854163 989013905 971860406 989610557 897244529 915115812 897824543 906928894 584475416 597017161 228598252 860529772 664138316 786120976 798768824 820669773 992723568 994804114 61916485 609918198 670544660 774544783 495310681 985897292 160408957 348938829 836689950 995313311 132768884 939604731 303676877 577442247 865283220 942543188 914182998 958053217 171593792 355961782 440866605 508100262 144646578 426844867 197221717 593523594 524648932 839819550 82372738 605875382 452988355 760652590 372945458 562624475 659630606 876104860 868595272 967801762 315611065 944787931 426855764 707805873 442348554 486578194 440256021 797162655 444658466 469359841 908217073 940870296 522246637 766732867 486132561 704801702 724635605 849263212 658315116 744610462 268444432 521926970 968260026 977141371 63516021 725185911 215455864 612193013 31770102 845107374 713920493 892520516 846171215 881365891 620157830 654686770 934577100 961825024 975518360 975742468 967932909 991201348 992966758 997399080 333331595 519573294 138789981 706781900 827103587 909905910 757084801 888613103 270268828 853244738 416184417 470823252 946809171 986982165 828989851 993351210 879753205 923023855 693054926 935234173 693222464 840565010 515261693 579550107 286396803 683589514 521135572 854211252 893209587 932345421 193763012 559435029 595236238 826333801 873253382 980982148 773223694 884573480 432283766 494945095 193707026 714299049 956433643 964273407 323901838 706523004 523530217 804460326 572099594 937902580 272442313 982926149 348159312 910707791 509210779 634270892 394364590 670385747 493728870 968244894 65274477 507261523 245722450 777398608 876244326 888503362 958765135 968177384 177617165 603029671 514167469 920800275 257162697 771010886 462007393 830445418 982794080 996515388 849953950 903580889 314787449 659798593 695694170 978736187 390070879 529784505 798775372 919092640 115319959 640036454 504758241 903356589 763585807 835627654 444460970 834982664 652713912 956436753 972607744 983095923 830109143 874538363 319939379 998881750 786544227 965293687 8966641 644213671 54470299 977590252 953794311 985381002 830451805 931824366 884368694 887443755 381601798 449826656 618919548 808715182 325569797 514954255 902833565 963150659 696974093 699278592 988008596 996545423 677637073 859287930 726252679 850399657 233536175 398519996 266762920 672883562 928929434 996030203 766241536 819872377 327324786 404747788 274891190 475997162 48711114 851197604 977004651 989491166 578511284 947494334 499008897 586183545 767612936 795651203 790070790 948375366 780219961 803978187 50549404 692993229 328814582 469751234 249250975 864655446 841064810 953619868 690101135 833180840 188043623 544850611 676043282 834985105 295736646 893952056 351099821 855181257 183525368 216957832 163140409 782273115 873610902 892614701 948544226 972862890 356454244 896863644 557778696 634915838 537933267 699835033 571486306 760534196 540915421 727969186 782918943 802859000 453390222 651311808 281078090 399444842 117798458 311881994 352516113 486617452 250242720 378754149 948541255 999890350 974088652 985244713 9711372 215223344 347859402 708289481 533886670 964591602 894828221 898194037 928320194 999103292 336889226 754809951 199259677 369261425 861507372 953235900 464274671 573416511 428574997 469533776 522012798 707928585 35529894 443524194 446769617 512583581 244225823 278351838 471838258 845978007 263886347 786925090 180959142 673845666 175748259 294663404 211017938 712604177 591795855 662603470 845462539 963886182 872792053 949663359 477019451 993715415 848854766 864921953 932450268 962094823 945173092 982566368 492546399 833108930 729118039 785688489 790281509 919361707 840810382 938886021 503083614 797668133 69621706 130637460 371243760 534563796 361096689 525921927 994785929 998327847 737277515 932725965 3079063 303735139 695161297 911913086 813373321 926348015 93454765 382775748 872886633 973298364 330312752 387029800 608471676 791358278 308823490 669327631 956541275 959009851 312401496 539163126 900272035 959685479 87020400 355506654 917245622 929348130 504394081 541437566 355152231 356666238 452962646 562482130 757836650 773801745 470519624 931695483 620799703 934013624 642496749 669266762 78963542 839227513 196485798 779391496 443080454 953001665 308082542 637672809 956578464 967581028 562975879 943194660 192627148 198828021 830454268 848462246 958544571 982010354 547670286 575610883 733046063 938432690 673127624 911667358 580642488 820919665 568519423 733196951 644569184 943965384 801691324 873443130 980880753 983512321 11310503 126107858 586702103 594978235 889500701 994873336 93041655 653370634 693693644 896547931 325827385 743517932 320414666 712724686 487487393 536394764 231749025 735908829 518214488 948065520 340354566 375672795 185250415 294294389 741942463 906006209 337470348 451586374 510554575 791892125 260119931 879299817 47285333 182436961 983656450 989763004 98053477 396299989 466182985 519145177 76201833 259324390 139114010 996500932 581247683 925625255 961054361 982029777 313111649 855571218 243838177 798392971 15214497 606011878 529487387 832053358 422971670 859501326 762768927 766789495 804104859 823964750 919193393 968234849 19740293 251722105 261486442 524981396 174129390 472849341 228557971 362492173 148503139 510439157 313574835 885507377 752224976 780387048 216472949 987253002 648148481 994399530 409680512 652458003 721855299 804954921 669689334 715916037 648018455 752838167 860252691 987302677 343036208 742883795 13077797 944279872 320710556 745262494 798226135 803433897 444366178 756694594 762447283 815534728 907531509 912945579 308977490 611641446 85942172 110520660 406695137 991569920 697913703 727116990 842342212 894679591 643209930 857925047 909656226 961636981 837271883 840045944 110604476 967389487 329107008 657741697 496799855 533550716 177395240 385715444 588206533 849739550 210829702 289155048 197676241 305380226 481070464 664279903 751583676 941529299 905971268 919904395 962892824 972051869 561945383 819494238 999303108 999320301 671347370 724053049 41140867 488316332 61985144 880429578 856206681 919682988 727751066 859954217 453117230 465000152 872924624 994475842 293302859 911834765 969711265 983866190 580748671 857829025 668119274 863241744 20623897 243372615 746995229 777478035 618122998 645651062 199980097 291495463 13243026 387626712 608688286 821952543 163428732 280331714 500764587 695330297 114403857 912537818 162717205 972717839 931497193 935224198 196941172 686006883 73560634 505395150 950012813 996405360 720099649 754039776 122402217 773335046 247089743 290869851 185868421 818327970 882189274 908767747 677248754 728388549 672605202 848047864 171325251 390463634 36362822 817179211 342270001 768205361 511787765 774780736 291341486 827906904 641783522 642268531 338858316 789311525 443990683 683052564 30479735 64951482 851248451 883647411 615990460 896426106 694862256 876351296 19010391 274670481 782242905 907204207 813407179 814041380 342214682 827547794 167829029 850191890 803360282 978560236 838879513 841266648 473680304 749079210 846363500 909846922 243319150 476666306 192188262 353305673 763028876 784965327 404106820 595303555 653520022 931282786 223384136 348909836 708337564 915981259 465902515 865152321 687925446 981732930 315611204 877734439 565468216 679783088 320364303 976617840 229398282 885198822 853816858 904332664 652102612 679067145 620982489 638343445 327569751 914831335 372100099 658967623 46348027 428780336 574059090 886931404 871068201 918081211 504063237 735661805 527497436 719049593 147067229 245834729 700266700 827694099 530116399 954313599 618328687 717460244 228680291 564954197 499046635 994120365 553530604 839399432 100030243 495259545 658823625 712977543 328120914 556599684 641667432 769351956 49991185 665825783 296156545 401911311 160277182 953280286 432486301 931336508 203703086 361854348 346799436 437374553 267200086 742482661 92339746 464296404 378510204 662837729 682549496 793746332 701536147 721300582 625103844 941119684 920219060 955160091 469906587 837398573 901995906 964695662 186007472 717411009 11249038 442214943 136518460 139996164 139329048 922768489 198532444 983064152 753834956 802824208 214759882 288962282 448490575 925176619 913123549 931005498 542210144 907909151 296115163 403134771 65889836 233327707 775834664 894377343 859978489 951913357 619104856 632958847 200160096 773413022 965171750 968271579 252306830 492401404 383863447 395253415 591751994 762619897 259219057 628685627 693650074 796704148 453069553 967499827 694781287 812871321 753133108 985664783 702756734 877600036 119597383 800730833 980568161 994146462 529459981 886962254 160544741 610798520 554471808 623586487 54745279 253953676 833847574 861750316 106800358 365211807 573602116 710745494 110795366 193498596 222422427 999116953 88830105 997474605 33906941 172190945 34694215 119389460 52949602 898983250 546033995 576429975 940266110 959182976 802291877 918182234 867113172 997496052 622974087 706975792 739332119 927888237 320492035 852172817 89984350 983098806 858560450 888238813 114378257 683522689 56693525 167216954 188282353 430482735 333920633 778610055 93097400 495227036 722340832 891260374 54726840 689792598 138522948 880501906 5138623 706633209 69414101 104241810 422817360 573427979 519939777 749056756 341532168 571019412 741096683 780020617 809676228 978002012 368654047 706312291 440828964 670380842 969379375 977975192 749155724 761835366 250651176 593155398 559043448 939374750 169012089 529560396 304811851 337074785 46156428 618139250 893488954 917168025 395408706 997644898 85342834 950672478 354325070 543464436 642535991 977434873 742850971 863934681 53421792 602958916 416798283 774634268 741882959 800786930 683843244 946346423 207214894 743268661 94222196 155550720 319134056 959306389 293262923 772363764 885106862 902895814 316039621 407505681 265425047 996660836 747753086 899392454 971439925 981330607 342148442 538662443 217773643 816217692 747496186 887463238 860729090 963093928 417868958 751508812 824351263 877093882 700118789 961586888 130248153 356205569 93638722 329840200 468381979 713844599 941851212 996555808 713880456 879759927 809224240 847905750 634716575 665764639 504514643 519293800 548578104 582428387 567504693 906158313 784999310 872743451 322071454 407909782 851732461 945595995 236983514 557004424 131457851 567831878 781397995 938337423 925104239 987769631 975051891 989500561 480447635 531375442 17973146 839427369 459507813 829412204 941727327 973508855 233742006 568064775 577841549 662833890 711351275 784299556 928978268 967462667 663080905 803273325 966399627 978809411 771784692 841364320 992445954 996552531 367240283 531615930 272245036 748569394 90102024 899167715 470703655 601184941 860472521 957461184 527078199 810293640 504325157 558602738 353209755 988124583 555875847 760772844 873026491 888518650 167758146 776813232 468727654 993021622 305497325 902867098 807469738 907944744 201093448 484099452 884014326 900285279 650246477 973541902 559738396 574849813 259838877 494678543 477546987 690298062 746999841 878708719 128264362 487343000 221267113 561076644 358919137 827054116 310207597 786567057 374506460 893417626 61984825 572940956 722259431 732095343 167985387 505364035 808585479 810455651 348175550 864895244 428758251 561744332 894989142 935714845 743136514 813583678 218621814 613405087 286756868 487824366 591462433 835752404 720608092 749512100 337944436 517477072 486607686 541560878 374757799 453951920 679712599 946873087 618048729 914820893 292740761 755394290 424674872 514275220 834118668 996016241 913620568 962611067 429721845 657923837 83619196 692526753 426025641 540204162 908316230 965371499 642690038 989201231 482009174 708561361 797336420 891743420 685810788 961467856 952514400 971326340 21745717 485507337 373214633 616077011 730496881 933327002 753086438 798888797 608991482 712920118 38231316 739292672 961987714 984186351 877319390 904706547 152831691 161987575 532419520 987399051 999449541 999641223 84604827 434928879 615101230 890233604 377337273 916519193 624149195 966795463 648155161 865308891 108501787 475839781 757296289 839901816 355468293 753127533 318486161 660886997 393288788 763834540 341389491 537317877 942249810 971172982 361199550 774496820 487326913 599878881 964397707 974780137 389095906 642886566 665060824 763455094 904841969 997730285 19518137 399804237 803943941 844686618 243781519 273624819 880679030 893833669 946838578 965258163 469275286 479754645 224189862 592387532 649643900 841143204 825839451 852570990 942149683 951202604 201876745 662368181 311798915 444304720 235548342 855012299 371510294 552429110 976966176 996357578 166121322 919801277 952675364 962885838 465739146 910806577 24986756 253552085 968606039 972174472 543586459 638275109 445316964 818652203 497345199 863085701 447948583 594521565 350054943 641498961 944481743 979194189 830102419 900682718 268916324 310137733 206111296 229394106 592637258 941937984 679690422 993084732 531921042 620780465 575086328 670858718 175719902 378786767 990546015 997707184 106726810 463396508 348201080 751632410 803932221 937872981 878584971 941804333 214873453 669919706 548012172 737157199 337782550 525124051 506509019 895700055 213480242 898802327 103733692 993990520 954034157 960213004 916526869 993529334 608066645 743929676 271992208 807788351 426325147 441990316 69421875 439566941 357277274 892033322 225967577 904838712 621524327 982408813 528720798 865289165 280762226 284126123 2449144 425118320 950275643 975202068 651315905 947429390 900357943 943283968 154295109 747739532 975315636 994874668 332673161 542603726 541375222 820539711 995379592 999776837 788290738 891214530 789765332 876501032 251825376 632103010 837103045 996545110 904369082 910526833 89730096 419341728 301582608 954826303 206120073 227639957 775585527 830727707 709731281 971585752 828023663 889218799 262482194 536459367 631717568 844557983 775254422 838053854 531389785 843911879 230098544 959509884 866666530 914166811 634131580 662071040 137427397 653910025 128242847 138116652 352109289 748685917 348437138 479716137 645528243 844006989 726541917 849210290 248426394 880545094 129240676 694187505 10852377 856395550 167276184 593343718 325197524 902105812 514444155 787381737 774831568 955737549 922985968 946802731 747060704 786038816 578107231 786415995 858372849 898627252 135578927 152196780 222262578 414758689 948848640 971985170 395257545 510467641 194411136 332534725 342615424 390416474 689029230 760850321 898147111 965176193 836157904 839548753 925440636 951938852 140253385 411526375 135890159 312441910 602895978 930614661 552446796 687840168 888872136 896334569 83633927 480234700 98711621 626447187 665497029 979991873 926530982 940961732 528741094 784025892 314038654 910864051 713125211 827911750 605711176 993504814 873118295 966738200 45951509 428846433 748223277 926624718 89530311 531892838 196850111 876295915 458652394 869741617 942379373 962816148 903525971 966873277 596299367 745070081 11930526 484216380 398278511 742851355 414918360 825334559 672864327 903050354 160179891 522897409 913722585 972292091 774250330 968970133 52417090 229944522 641901742 748935932 987785319 993461280 545752151 553170653 497435531 751566225 268450972 476081292 138244174 832290846 968918222 984574643 816607702 987802374 512487334 963144487 92682133 701358160 20935516 107174418 938146721 983171800 678463219 866396569 357562401 527064168 715484024 901718866 538915590 702957412 884044994 963361477 866847360 922531190 932051206 975364467 705975700 885963674 57523223 321016463 740909347 962094158 173919105 839311787 193946076 631654243 903194930 959800982 722140451 881530933 885220830 951108919 203033872 242122603 701118974 732868476 225255742 385569527 517072485 728753064 691888195 918108956 55923272 214756943 423291179 530399084 903573013 931638380 930814131 964881064 309012333 597801073 506908765 863407724 699354749 699929549 671845650 844480301 969092389 995978230 118873073 877619260 858752231 928859119 983831221 985912198 707954289 890888100 86774899 336995655 253367719 641691374 270054721 385497731 323603309 907621824 36306146 938947591 182074045 333268240 511727693 668460764 618271083 988707469 561207240 662929900 893246092 918446671 505956579 710950089 799451069 931904318 85910424 815169825 802976103 844477203 575611059 973310967 319786343 600374480 630388121 667926999 676962137 756447551 383906204 751684411 641675744 741589194 264871756 343614976 281891887 725718476 789379561 794096972 910022605 966138017 292253909 477440393 652741817 966669679 83473460 594102171 426193724 637788395 543921057 561238360 235201262 900875000 197596703 792188836 440673584 736055104 298980505 453569577 554112153 835398518 240297027 830691031 928368673 979245559 684309633 954937758 769841625 846753427 824639680 904099312 978590349 995035579 855888846 902341309 9097036 473319080 932311460 940658204 805250212 807642245 539537448 803120703 339300369 817587268 590714600 938728696 18935866 141546545 810767229 918139932 384756907 818603719 809446986 881650624 858359652 989470444 991970472 997440756 521698061 723396848 158593777 817799856 366725520 763727100 683976050 939855875 894413446 929181801 401821132 527502948 290910353 466157805 417351138 735900210 469285436 963353152 183673201 994890329 984367970 988629861 641456320 722874430 667296114 709974279 995744656 998076934 71892415 885982392 363840821 516809842 829042518 972260439 971193347 975805604 428385111 622835280 987776588 992117052 322729185 985258544 921501894 952000394 140618757 907750790 251558158 624266071 287453670 622230728 86070494 163474193 236901682 993487504 790398940 869427897 816713742 917757661 394256960 965722484 418733842 495410064 260799134 788846210 258954143 571388703 708707283 894190837 817437961 939571647 534610005 986044487 959077362 990456444 239337102 494895094 919267603 993154536 956618011 992675671 963958050 967979191 559870142 798419001 474072898 711336818 956996074 973854820 514949311 743799709 737709245 986282813 669601840 863615853 157246501 425251462 429703395 674887766 427725597 664778071 685836312 852122152 203672807 547393002 587708750 704254655 664076347 815672110 154763964 248260189 387978661 780611584 860420465 942375264 181759310 806698745 141530717 255812315 756791379 877455692 764465671 793760033 384222195 854214037 468934818 851695388 718970999 853355496 367967368 872677913 193860681 675800317 770833693 947286435 526482331 827125999 787988809 876852511 239282949 867005163 45853465 458570398 117845125 470481227 197239816 569783924 964096627 970881615 302974757 376909849 363148742 486423935 884743370 968951789 146040129 911662756 863512004 895697574 182199122 331063156 992267483 996828422 176720418 800584617 150784932 431285998 261560776 336847261 444782902 825962435 86600637 478446406 798186345 801556769 482640288 942491617 531276107 973738610 765861388 783720408 407208005 429711257 71304870 297178188 347664449 627362923 54213827 454694525 815908701 858744291 973198638 991635252 202037594 393574252 56687951 789428105 227440721 510396333 159359794 233655261 473282573 572170223 352970529 769494432 686625665 819208941 491529612 771362781 402867251 424516419 29866504 426335219 997429505 999241761 785716130 845767730 609483968 877857165 336616813 587312836 524476525 687214947 729851344 907941879 861824774 951735800 998690890 999160762 639525988 975861460 437547862 439757667 224123231 314253057 15145027 164217279 918566765 921107212 567147238 822922770 338644753 774926023 792538099 895026065 546297720 987358994 26519306 557979030 571322234 575194296 539854144 648984783 702687904 979959894 368028383 994794710 397596681 777909058 985614136 993868852 951888014 963267175 193542298 536841500 580209292 893955939 184354129 753771971 236691554 820255946 167323604 622422488 354834153 846656571 939769971 995273705 595788540 839347012 983507001 994840304 833058274 836960973 711318694 767431209 511475577 907085190 546275565 899002769 250354640 408178718 594529843 760335704 553935833 834916244 28819616 820435139 739664039 850312122 200946651 324633827 429908054 949560353 217553300 498380956 349153097 589984473 748164290 792192187 963187213 968020323 531121649 547144191 501358988 603965766 771166105 905333154 637701393 778346153 366018997 602997438 868822850 883515762 181903537 219072276 241193866 758272991 391622902 595728835 494555334 676265055 484936330 524966156 824011618 891653702 763470774 960399987 43091519 175275150 733924256 845402901 636891437 889361756 842901571 896129250 628356965 903641228 317519504 813970154 444841251 652586503 225668088 578742630 704082137 828464388 848561341 890191526 84039676 489250715 545772939 744410683 43287592 465418947 784393547 981765777 220229801 435160613 755000397 942237204 73382766 324235669 789465123 907072081 881083715 996338587 619735188 864106499 391113605 694981692 632719522 665126057 133446994 220419848 471158555 533789434 355566671 498221093 83814516 693566184 142588085 711089002 491548765 539433170 17628750 178431029 640973791 734083221 121507262 973120026 964386055 980073967 813393847 969858036 110614132 619747785 391742718 818763508 630467799 881563162 367203237 408111765 136558802 157873129 206623907 301545937 272564271 461604821 417690152 714639859 46421701 178153483 313789853 335670524 694694174 831768149 600926434 918022359 643514899 760492598 207744177 787769568 834938856 942685686 364041951 630938816 497301462 898371187 44800468 288994864 485424291 662432326 903078123 930990004 414262834 721530508 862760794 999786270 762960334 887813795 573808315 773561912 321179558 791561909 140805493 827866330 855552364 882614977 789978596 805734210 391478820 646231865 652697782 831741064 617281441 659032051 371671735 477101566 46458962 968859924 241163832 579391464 198722810 662528335 833550642 978132608 880623589 921751138 388783457 654801118 788547579 986763454 961417353 985373732 153233154 531093367 569724779 625979849 94375286 764888533 510876211 930800575 943902669 998516861 912462801 931324132 4730105 920443205 220565192 709699619 861248730 982618724 140788302 161369515 78866172 537221732 118841270 545699705 670745114 811377369 404601133 890591554 833493002 989750754 624009218 933656325 269563492 829346304 834931199 955500950 321363857 867308077 265167362 299370288 734532012 818504616 571729815 867888509 415284577 629125264 71043468 657161127 359049559 626347783 435504286 766468032 73181491 643605427 790334029 957003773 482998895 958859157 311876952 703571148 168017108 845884352 721914681 801604002 171363298 845036164 974537067 974614882 208759314 448953811 577021220 966604546 909565342 995989862 652479556 881153542 192724885 806477958 807213506 971898205 319584445 791893571 406464360 631777073 969236486 984534579 925237092 962419464 518398057 938987242 978845076 998965618 231306262 326558406 307534635 384609261 467179484 740856289 915791040 957301155 634605039 723151211 796463234 844645647 481041282 916190132 414713073 848811379 54698619 885467275 607416916 775504745 401765288 520190647 173514569 346908094 535629030 748408103 145244210 582705355 640027048 854268126 589469966 693485053 551697396 838242970 46669287 892795629 478698119 794530378 804854731 873715173 737437450 817472999 716931520 729208963 943840857 957376993 75788955 783664726 772182451 964698860 105422359 221357891 630998201 773210234 71390904 544858256 329153714 999474704 398247225 968182923 772542542 968328701 820843446 961616156 218264120 686486682 883827713 884952363 716976159 792562834 479485261 687245920 802410323 946781120 199694341 981088878 242496109 790404913 194646619 247411157 901500071 915465434 32403658 137509945 4345748 726809025 318468945 785784101 968912730 990486845 196681863 671655803 666173258 707860773 308038958 736863284 849624658 849979788 270722146 809927644 318277097 837213697 521212119 951352227 224401660 803864335 361037032 817844124 156682507 968357531 675666995 990333637 736340791 938073189 740948053 816422092 890445244 942275276 35609587 604966133 249990814 966057029 284419630 824144331 425988589 796118508 457980200 733894015 924440151 960866713 385572742 658790649 922841690 934736261 510508486 656947188 133116472 295157022 590076751 900474974 374837226 470187726 259102389 938783073 349092805 433202129 21578609 897528851 348939811 848771410 621314010 765291339 720444692 951530475 174751779 580937131 174863522 753215795 407488553 446460131 642283376 837879315 631595762 926315043 614506815 957767536 364056481 662903716 137847700 927041487 953323047 969980959 648876850 756490535 448743317 675557047 62466557 287463558 190987482 636967538 893387956 933378344 8435541 968022785 44128271 366428574 451223038 695915180 238103913 877882737 99564398 821687997 261896453 761035161 861077011 924303832 173817032 446408859 885762528 997627293 104855260 700733940 759727593 868324286 272799196 461410838 617836945 889960298 340122765 610630379 811778004 839025025 719794517 831967432 709055990 756245255 374420803 433777130 127373434 156655897 607446328 767180055 324372887 465479282 288870537 821200923 219914091 319584643 29687385 252829810 966880139 967313457 725802574 996666488 555807207 571498438 75863407 912332547 719840680 751745988 978263480 995698385 425129724 808164110 156367262 599157504 244662873 434091853 651603096 846806681 367456698 637109804 680317783 920050893 45621364 974307337 120617325 992975259 98230100 768617156 887700063 902051520 480097746 565151243 6925875 781238948 550805983 779230532 453133970 805412590 544213914 833498638 321212094 721879053 659164313 952899008 779502904 888005495 657583224 859600770 999151896 999289145 251282079 764851936 719549420 937998327 129319421 743958062 709553747 756947447 735449892 816750862 914489110 939904687 776704097 995810176 311591508 937857971 546474881 686911789 182996287 934384373 995343188 999491352 771122818 970891177 93228564 656773619 287564850 977544408 3462086 907081389 622303392 962322793 905424755 941931072 630795613 950561615 803514424 993852306 961710233 983892816 214332821 944223200 237378296 811083542 641543231 799790747 18712474 794234545 251945260 882055617 496495492 840526524 650899732 665550399 277961919 317613900 42603164 758214658 554033774 572211460 271769474 507216957 830114946 927828569 734994315 849496178 675232994 985081581 649065712 676892217 59827981 658223032 718730551 785105305 205340668 327566673 79262252 679464560 517271907 699476056 191047925 267386354 973429453 987887680 306188187 983091344 596588481 845102926 381734482 954050070 870129083 889387359 179985055 458874307 971285978 991922307 601890563 672688526 394500480 926477006 701537301 849667488 971406509 987170939 275884061 536006647 870386938 901541806 559387205 725519416 45746712 142450146 983336814 997312343 539539638 991627013 884125826 925434834 415209500 816342394 476044938 554892953 668910782 832373263 717476809 990661171 660328543 751984146 419908726 605755212 52656497 707953150 834659866 970608160 790144815 798054443 926700480 974305343 219137990 887528788 326967481 485168852 994593394 997485858 8951696 191057507 27942329 922420188 174206518 515893870 458679040 629727096 788991602 932713388 285094186 888582988 93000373 450791455 208919537 445942005 604144936 850729420 713769510 731140862 831017660 991093849 660143395 996431219 838110419 911158786 264404261 458688357 254338686 535494913 871582494 946067329 118348660 412715156 155372655 347322620 193566972 203311720 969998069 986323702 20529907 814150741 832124815 938351243 507551175 829362579 913965295 927164709 711210513 781913465 718466136 734321652 996256952 996291339 247518512 477379603 440487890 740133611 46653549 433351698 86261965 284871239 766977259 962763045 853565663 863756894 843177218 846307472 988347705 997907731 545310829 744214668 978278497 996168049 80513520 734895984 466471718 637217360 521871773 872081149 586015964 614212592 755826874 989448875 665903173 797390721 692516408 939783584 424859842 927439422 914442320 945154729 544635900 908972693 596845829 613662146 893520534 956145960 507794300 521783238 316084941 510156730 790007866 934055365 418504832 669560416 834191576 867746781 833879162 862275997 569595040 647553733 844020374 894622262 499019966 560074338 658081618 932284468 812995962 843412650 562734592 699057910 882958213 986477950 820623160 976434212 36757113 796474436 511755310 904238407 339794253 961885266 487681969 622207551 325030999 686013334 643942710 724471307 638602480 937285595 549411304 733345680 622656261 731172360 320791432 911614732 998319248 998725098 795391875 917026109 416406485 963506350 782401866 866087937 688382317 820112298 243393877 442160275 866018758 954049177 84164122 531335443 604667645 750278909 877811365 981441510 237782152 589654344 20596397 782880577 763496083 965589803 311555845 735591650 421100169 576598947 163300700 511371691 725968467 957892773 931173989 974210352 106889470 988244833 858120740 890680350 211188133 470741696 270608411 868377122 953735035 954599070 528985968 978966649 17932915 626462930 257532047 305857133 974251473 977013811 198895613 897956649 611375405 894460893 69956796 852016546 852343512 920177791 961574260 987176376 450442315 891312168 413838268 956337475 453819632 497299505 650458321 880803449 649784716 914246965 74894695 747363005 953987993 964820013 914620850 973294285 852873322 953462394 711097196 916296001 878822043 937158792 687233969 720499427 444702952 541963996 90287728 211114859 430371739 554668932 500920510 924342796 215065261 269920833 858547543 993457679 85854103 414151202 708076132 994465070 33491160 761875369 751380615 921961598 76305610 77573198 358309444 623222855 50069159 417595796 163516643 996492412 237194545 334177412 293094897 837182025 685037343 836420336 97054753 407445316 74065578 634912883 147081478 798780670 4707742 37088644 318548975 439571149 335543202 901128228 635444507 667955411 394625703 935866247 232222508 679964815 728620644 774921353 419147539 609009471 740599732 834694140 488730511 624052971 867351393 999828363 865990924 943340863 367197029 811046455 380367548 531937328 518592605 630435568 4656922 498448297 932638376 974459350 45604246 733174908 718117349 722199226 711322605 961403598 359050155 721184771 692573532 719513964 828250110 900543657 334260705 552461191 345541931 674347722 712485119 715646500 76343547 186583306 278493924 692093874 341340488 569860011 814448655 842059365 802459479 805137642 254801871 498164541 312185317 448193177 240119029 290863509 968797871 994626975 485617585 625236275 145293900 575815050 690109343 744199309 330921645 889335955 323913262 746868997 70907537 842609408 432810453 997065008 903105698 907063256 651657341 711094395 464615165 739027608 957648124 972713282 140965299 934966417 97328322 243305177 749787427 978798477 72669008 361990026 567828782 875558944 678934949 977283655 926160979 949635254 638286057 945633460 553422824 658245366 341854233 411262731 947267249 951614929 854280286 909959414 957411478 974941399 731654315 810861126 838782790 957665274 436937770 884883468 400488474 978545990 729936579 736458204 635961587 900417507 420320464 624835494 678894497 957414318 253142413 289598655 688076980 955385644 390619502 740397339 847185695 969800265 933087926 967503921 46868246 761689692 180795252 765170210 962069023 970244303 800126487 949621749 227043358 716021880 665089838 925205194 278021771 361925368 452728043 857716820 729339879 977268268 333535164 586784810 244687770 993367810 183012390 342827643 908208559 938097803 436339564 480591410 764985050 901182011 604907816 781628364 381898021 609372837 121234038 479773147 356482104 743680819 380095749 851958337 797551494 842720847 928123444 957660573 205128273 669975232 365043977 836090070 628006982 943225010 24936068 653678663 472283509 892603857 878595233 915944102 690089941 830814162 789095286 973162162 564333674 941848197 646446580 678917562 415863331 614727683 536196431 631246704 765898152 981455488 657649848 730263717 459999364 778544266 322277643 363711258 709224396 825311745 581673323 888637649 329944470 996101311 224575262 493089106 819073837 960278678 367428573 401839207 576679719 648539628 906141238 937662270 953353279 995677351 253281275 997408559 796642002 923971669 301027725 902546174 316829179 976645695 109281718 262175401 975635220 993795610 548046069 848408978 571796239 920673610 995545801 997365888 992974047 995186706 938751645 939131720 466492394 503122735 521822961 931554432 628421876 730017027 877618846 900198449 688524973 729699545 635661504 833586280 617100739 648426571 398177816 925946127 33397248 379395057 964544842 974324846 665047761 877854152 331568403 994722634 94382547 388564167 51596605 374961950 465431918 623224196 655731016 962022211 838038828 946357030 833490030 896420444 307155692 751020530 276357709 539390084 189823447 593502008 450939531 804363464 808715035 885758443 11219605 429529070 90335845 408691079 49741656 664633244 115748803 464216517 424998217 834548646 709708049 982706763 512607706 777236709 269662271 544883527 370498993 700594171 234819102 969788145 610167178 889237352 537423729 743688829 934935560 988261093 302925229 869649076 800330965 963691086 865490123 997684715 733760747 819698109 167427260 609938782 632160749 736183299 893186478 973752467 653037841 717427850 704557306 791827288 669230766 763246704 803964598 887001339 696311012 785972528 727236605 737142708 780820837 884079372 522503254 976966693 726720360 982437820 598702792 811667500 423195159 488315876 295368488 397075081 718201419 915778733 905022672 907971483 615282274 720020988 467265101 712258942 979809828 998366650 404365967 434705051 966544598 981443165 85310238 554457659 744038413 820705621 981942704 983221302 311759499 536862684 772701350 980816886 536819673 560192797 60369206 66824859 189676621 691052788 561195285 759781941 260228914 987979758 659852028 883324174 299991576 597364136 332676824 590385670 933069111 957599062 610180498 668617189 108658173 417511062 253668566 727232348 320763070 342337919 98825678 858197051 830788366 939818545 455730591 848690461 285877031 922407826 756576896 773899541 862822632 956799344 970996575 994868480 386906172 771145119 921308412 980488383 490610320 827240734 419101713 448828031 957458658 977912346 265952530 267182631 336753205 344841904 386593826 652767917 640995660 641016782 618842916 908422424 987702927 998771889 627474054 805220329 355786158 825072768 469684623 688559027 772261714 784093445 708749150 755749777 301016771 417939171 148069698 923632357 635983095 776962263 621230121 770738621 481140217 710263688 226850815 709849484 667322936 798691676 553998481 694689747 846488107 945695108 5256568 418607320 414128590 503339190 684090052 812536395 601777912 940983265 763123828 975012549 195811348 813934839 840044743 845448230 290272938 464029073 535736908 718803477 812601340 931951358 897444841 948276783 370534427 390512681 68853333 958783078 354014875 804391523 537658250 551878490 852527642 988354817 271547694 799405590 12892833 106153658 659416333 819458217 57550069 679612473 49755065 440266062 588950957 589974015 201016099 648387137 154885471 435223684 65670221 810148841 828692923 990512486 603473606 720924697 848572100 922242204 135008195 145180481 502392253 788746898 477110291 752572349 913392202 934022155 136144605 748837766 284759235 513431276 615699777 861885017 871352097 915005002 737913777 807337173 481546828 644162832 510674531 791017861 537193244 937445306 996921855 997958133 960904800 981237394 976102650 987293938 459809892 598513499 764309523 824547575 952155045 988944618 138367324 995471253 227462064 767036408 311499289 604078279 870296058 992474335 360683390 551713323 386924669 997922644 875487549 912974608 599336392 843486101 269390735 631542384 539223220 998521926 905835079 937221578 198192537 909805398 166113365 546624367 211635912 884902427 915569623 926435825 875074921 879969869 824685943 859917227 111455898 683702018 912112674 939967418 690854646 741596502 706795392 744552247 872238318 909269725 226188491 478259622 990202000 991661953 690246149 962122837 428056220 569829754 780496261 820643182 191133637 504566549 849347465 886289486 877572550 937573252 1451315 285805672 766804417 828521427 808515201 912628211 783045666 847082667 878146165 974567481 981217714 986667885 132498691 527298546 375145311 551371191 367633407 506439224 475806774 754122653 838521058 848617702 15310954 727708117 776903929 879232566 249089313 616150955 968888335 992518535 256383237 502819310 878118507 933780907 743198118 914519369 977560928 991788196 385176417 544990902 121815425 509424698 582731253 790115354 507465075 775488954 284848272 768308322 352146449 429444886 961148436 997026125 220258759 839970678 236704062 460292521 559695448 975263923 877124929 985070523 658645792 777419345 717495319 771276675 487400684 990083151 249898389 801168251 862586618 948301485 34253438 891530047 152677148 321183128 295366373 340401049 876265842 954339384 808175079 937329218 293817124 338048007 235515859 444036748 539143447 658172005 117034217 969015408 365202413 923278853 807846169 986170160 578707578 687565398 118314325 880494713 188720637 715590849 839379613 876944694 318510779 688521717 421028916 880788077 994124441 999452793 644316845 680042321 482905194 809812161 233768951 590609934 521244411 727308960 834402720 923323190 395283987 722345886 950461246 963287261 803737682 957857165 326344911 448906226 97572022 661736479 434970774 717169374 283895467 702877483 721868486 990750462 71649715 375819157 171853518 370924657 712929916 993179107 621525547 742047466 787653388 824267486 469304544 779205585 174306444 387200522 743488327 908419801 207811631 785803560 585167574 918526621 240541803 764199561 711850777 909201089 167087157 454208822 213623727 524296172 793127693 868259710 339218004 884900667 212128975 470398659 650761354 898314096 183841037 321264365 923005617 938130122 511501595 536624550 125968729 994660976 455198312 896713583 232071435 482068898 737004109 787244519 412682634 802138590 961313165 968384571 879565792 981981543 615104375 947032762 415534590 708698941 791738129 846577177 355757371 636360424 368755004 472870735 475307578 564402455 146342694 231598076 413540205 806420289 116022955 806981572 562925273 685373755 111943174 647606013 136139939 662893736 713392168 890509391 421323022 679151983 813680334 917690136 798841414 883590971 65260265 251385874 263594342 869330576 583642464 953122184 587310737 815295420 980409510 991656899 859040962 862070404 521260404 964574123 316914418 409950076 3423340 126379325 132322560 588596388 523679097 664237290 340740622 811684834 852534953 945303351 987288573 995454926 148895588 261571444 273959803 774505631 379409493 576644623 682558072 826295509 647841796 756282492 700732492 817566560 583599651 755957082 351182494 729381877 441994551 813895412 972426623 978375050 629870217 753274490 284718545 839070450 508762774 635636825 514149675 632573949 414887837 444713845 499862353 632655777 669275335 856167377 63255371 832258212 797746603 815061340 922993701 959499642 843347412 954157395 337597528 698039673 960098160 987142657 38653761 897614231 207741908 717515703 816988526 899537219 22153704 266576986 822193038 987677705 358826875 802934353 158880341 299364704 17811428 53006361 473460535 552712284 784180659 801213099 114329263 274572114 235121773 306194849 150016554 608360029 948241371 977539856 963726105 971887831 440967661 588789195 30892122 408235452 893601351 964407289 765344113 784777984 341894516 697269815 764064122 996574957 397091370 547844191 399808775 993191913 945598801 980951432 269451794 385592888 236651695 386114741 959327627 976401842 467318853 566185755 868699346 884787630 101813002 540528298 600324589 632756823 602854646 637251205 194216880 633350973 821187352 847739558 815879616 841767364 14719810 696776039 185095093 586203909 742263680 860516381 107659458 943577397 984977205 993821407 9806781 530185762 331011977 493304304 162775878 816899057 638479897 755239447 281865316 881970243 729434765 890516211 591319034 948493857 179565244 203192565 496112313 642500102 256182192 256429914 27436944 678746443 304124785 879370733 158512714 859272858 979224934 979327687 77728347 788954115 406265836 494099591 542683888 552690114 523437393 753495113 686718729 846795465 176553177 984755065 328714560 940530548 604601209 671844965 795519025 824376566 225615054 619034447 557520924 750132743 100100901 319484059 253988301 748057431 733413756 934861579 116899148 997313780 66924553 358178804 373589214 797952885 82936365 349801850 576014291 732569607 225719680 777136950 427449709 635344363 617155333 619188106 120861578 163843587 196835188 342796220 412048393 583804277 76528473 437022813 267004048 936937904 390696572 576011308 149748875 765573964 475413987 702618499 118514770 908085818 989035838 998878164 823416702 861510189 171488033 187430334 88095145 962180957 684846396 918313983 711415511 842219632 267215356 428627880 964055713 964143954 965262187 996107154 283550274 629406527 348112393 424924467 305754942 364985579 937848684 959724288 714001654 858966126 740117118 823237160 159801624 578966932 75197312 297877571 65441209 339703071 194875204 685168495 817980159 914430966 979315553 980899481 82310841 896516898 869000048 873263329 704141389 780204374 107634406 957953424 155199616 611301284 5343556 879761738 916681051 939300745 785587157 856780002 107096799 447544799 988918287 993026915 412552668 868452537 907647498 968730045 439408798 809413375 937776856 975076936 120749663 939317948 512848533 830063101 800395853 956050902 130463925 206976960 199859443 859970062 267312414 595722114 271928415 773223565 49758900 935501391 988762067 999778158 113978692 869901208 74962250 937896287 340130899 874192548 491728640 824154382 261274451 317463945 360168556 691782010 767843967 786123778 888833524 975533220 655930941 668627284 541804653 722772810 181306557 997741295 427095095 641369588 17159584 87900569 955062098 984856713 284941848 341740965 667638476 923953705 278074475 294687833 382572906 554810729 40007777 113797076 198300379 255656408 739696049 911449185 721696373 868376701 291352152 687815948 484565203 545487545 224043128 684657980 87625003 150585410 266643521 793130704 205087084 209508945 684561174 955274548 204937188 998705896 620626449 847033413 629858119 884755403 844998566 947077460 330959393 585769041 25013235 242581722 463254498 741563004 818045371 839716202 617944429 628524731 979339261 984376706 552702194 637576620 911258312 981845252 774854484 940636075 865578721 950319532 918128711 923654377 400012087 466938611 850601808 917928788 76581472 817476339 206056942 815232116 988026751 992955274 453057063 495336071 807030488 807136675 868667582 939491009 28553575 972857379 257986817 445342464 140695300 719429781 40139212 688049136 121278242 326185635 110318696 213962774 505500513 642620548 83619388 942044410 901123524 946227194 904712500 947671304 167757533 684323194 416174049 552354911 131507690 237646271 402740196 692749834 825273898 978920047 458982495 788189380 744607400 809502879 505586247 543768457 984160531 990154543 31956398 947774399 674177034 675176623 867401930 907456224 817747027 928401135 65528917 215373632 236588969 377855675 840267633 961712128 703737402 804854316 219891278 678507693 772434038 918593056 985846793 988744713 609177948 807250849 4022149 328367091 170672429 178691174 102955561 926543553 203010869 348715487 112702921 763375213 815512889 967382315 737122569 906708965 279294326 784561150 6142238 26985842 281704629 710610828 810587253 949132942 326216771 351093598 230176336 983953003 37913237 193567082 65842380 500901481 39048141 174497162 190145108 675092046 735002004 883821674 305627823 546439702 414051569 915767803 271358909 443905747 166041353 886318246 940807510 950399342 529072996 894516797 245611696 720271940 481810929 512293854 864384607 878365253 189557381 871039903 757481859 787878899 399536985 733861605 774413409 918020223 510612938 510894010 23608339 948576390 801203577 897973451 685646979 837223175 425891645 596566563 637830493 729460477 316499061 330866641 530631936 683090155 532704139 895012457 842648024 901459833 439343045 478412580 146773579 224635226 935635829 935791146 546068014 632244388 946987445 953296343 791722432 997367178 124616594 997107516 720860534 789258126 762930404 799981364 281016723 595010811 564354904 917832631 258618679 802267331 228324391 798195428 993005597 999263539 454739548 514584137 391727411 843797430 593135138 874683885 390128833 529602917 486181900 663551803 559564771 909279587 751972170 890149917 111750691 995571399 783473258 915499412 229967855 853998351 665864580 807026450 137833093 145044994 751654863 863773328 450959475 638333296 323420309 716509028 197807608 470154360 888086921 903893727 874431588 980424050 702782083 990078756 408288892 627370755 869243866 962589479 344143519 463674421 660704519 772046625 479879796 971637877 254641800 862496010 601010004 970181119 756677801 877044427 347220765 891901875 891254086 959689100 735250663 876829300 610343149 861845424 321455526 639863540 717091441 722517733 937174575 958699351 770903054 979030135 596229625 821635583 58220956 83976314 869060889 951099182 66553571 416082572 666542630 782707322 494291659 929287621 958793728 999460335 94643147 764818811 900528079 957815160 944526936 961784680 210068073 282174600 718384188 961216006 154217133 257602725 424367547 939755477 340182429 531113807 649219630 714963265 608352027 997860147 879969222 995973952 503038234 699160541 708698301 789302074 649600064 895033187 392701163 748726224 637008957 907447491 669363005 777594417 182385704 387431819 463611102 700190152 335273769 746194160 194679249 560351477 82885577 881514842 666649303 681651952 741222655 990742756 859172721 906363910 605864897 792953069 364464605 384409815 893554854 994226136 186540242 874965486 104679207 930641657 496339409 873923037 979905837 990694119 103024318 191684795 814716559 903722075 421021903 824337471 490733091 782961111 517401143 608857101 358709986 589267603 721148058 832616166 227269714 832878498 135425731 600269184 560051018 987669928 712819108 763452368 580918855 822927464 697644833 754294595 756527633 963667390 309011743 567088820 57787440 819289153 347619176 768193557 253793576 906528470 691192444 765890947 950100286 970457832 819434460 935874199 712778497 806299450 899705183 901722479 955691287 967776542 197483705 454451065 335418871 367841760 708121933 741876676 73370377 597902372 995728424 997421387 280518760 934515423 872792828 915622292 459482888 902429428 48911386 811587842 890610377 893710389 915624499 949292255 300476471 777447660 155387682 870954811 8748612 966607135 295268594 824233518 870106900 952604128 801626473 818697303 92256901 838173493 660768860 738047483 586118147 852758491 907000282 981347929 666345773 897760212 863445119 985031753 15047679 422032448 534184059 812166881 366862965 585612683 363972683 460944129 60198707 259759409 635616500 732604116 15633928 871444300 449082168 959311407 876589704 909784900 850079186 992108934 590913470 757443513 618671599 797696028 393767219 647719051 301550796 882023799 561909776 963157500 551532922 977468727 918686353 962713192 744118548 815463692 520725456 810842000 152761841 785255796 614665259 948687253 201661363 911409176 85699777 559960418 376317148 675476902 85843402 362710288 137840157 889453848 955603670 994416539 410038606 444241915 99795747 515394695 426396374 499848800 581896679 753358518 270797946 432172270 942391723 946648668 323547333 490174337 484044796 891240460 175587816 408395331 952806244 978450507 614163855 876675947 222939862 717080719 674036376 964044158 471758716 937114798 803800745 839792199 68964388 145577868 258606363 643872244 537318500 800502235 823213365 888730264 682961211 960661519 20426751 442446865 234706745 936749012 977916657 982306421 263421060 428890463 574371666 880054388 264113298 322566568 722298231 832623241 395557095 925146704 72589962 228310419 496455335 725991468 408782534 585923064 938563310 943496133 25142293 231842215 308549668 463533077 4831454 214452625 352967707 797841432 683457520 950948728 145795363 163603065 674021671 957699572 772546111 878547118 865082963 998263052 356373706 499471597 885671940 951055254 100734946 555981276 153445575 812434838 614164118 941785627 955598654 997791300 558199549 776160604 817799113 890878788 949092786 999061883 155335085 226850699 589619435 621675254 559432722 739999125 826006667 892670482 924587869 978767443 579135677 891776771 836894756 848279961 634017830 740029817 425582347 687222669 391932664 974360748 874734033 896719187 559546191 949081170 582848626 914837406 634505528 669494334 815810523 946283929 91541334 787399980 276495044 812092091 589454522 662163772 366695139 586988364 334136302 680367711 216502195 572878415 334757041 785421073 365304723 504895955 170189377 828164570 47744559 207931782 287917832 842277455 125774618 515289283 136095958 299527158 884058959 911682377 207017302 515468732 716583602 926388906 861398331 992526844 415244031 809455885 824287576 933906444 540890312 900854019 330153625 416198349 671538032 922311750 165243404 699341656 377259753 650664913 876051263 915837361 305352280 751939820 904172943 953426907 348398291 398454571 109088590 640942153 142415456 698027881 951077736 995154416 427193463 432207288 871222332 880554481 800351538 922327980 426109611 908313777 562367139 622515943 799919372 936755727 211198307 986868396 332986807 973711899 490643532 542728727 382715399 684073264 991833151 993923215 136436367 465696406 6453026 316459124 832438770 976748377 105747876 407230952 891069920 917605141 913395106 945332633 504471745 804554073 566973425 876481789 123304731 328912551 68233224 690183672 182951090 307807911 349332880 689841089 477304965 674667089 918225363 970518366 164847834 410672911 100359762 318743577 699413630 985212770 393852236 679755552 901909272 935817700 88620039 919747865 472246288 802581374 778505991 855411589 899424411 924285200 411007345 965912747 929149304 992962980 919454660 971617237 807205526 931266863 172864094 933475672 44620777 864495199 167102848 337937532 917144142 967044050 303294708 835773438 149393987 743825476 834711641 888893610 160344606 547760008 232492969 650818020 88072214 307275866 914844267 971465919 114924912 526597718 591288073 599902896 675324515 842234644 664741196 702638233 256865323 951169347 855756517 956676989 303364437 736915147 742255675 845789463 438734884 697291309 23977905 147067098 756344312 938548771 8944125 493170144 984900041 992533216 927511598 942168872 864067896 958480686 683585921 796605019 695664607 878479980 892404317 965852727 374534893 905681901 298882524 982577026 289113720 315135800 910217427 985831294 717658463 869712942 342995230 844166644 392296894 497278172 388130298 617630287 157819097 842277624 291054463 697618878 280932863 621714240 219253767 250136959 101953769 203677302 561972888 831545326 965060016 989240787 958491556 999661014 928181659 979348680 49474401 758610016 220783223 326896665 78906249 654849461 754226978 805970763 82286947 613282818 557403934 631497908 697147580 852848772 950268453 989048283 664007842 852114780 729508946 798421730 417863482 710272928 764887824 878910818 635483580 841020868 185210773 223556974 316132372 385462525 630565080 937064152 858154259 881333187 706564320 845012442 957587255 996339211 61920025 820592003 393725653 702104458 489185997 670616865 699998647 775945871 359405935 793111947 757923582 843946247 801343465 975708909 860165379 915895648 337594204 443393916 72971786 458409845 354047096 637785567 866099608 871990335 50824398 830576313 207732365 766600426 697909936 737852127 702538561 930712293 539008742 701887859 662984671 957405655 254625216 676948375 937422900 994901537 994002174 995397734 405594952 773054171 808140625 886048333 195828846 541537037 463909790 985359074 858017441 897405612 93954804 479181510 141295101 576771403 293800970 456149985 518008670 867494907 994045115 998047137 612168818 981616771 388853971 830084016 381933243 953545239 828630016 968202671 88100595 252199948 190746214 586089149 345006611 568289099 339457798 799741241 620522784 792289990 127436711 497092024 671333954 906830947 626834230 927887978 465568831 992870557 993759224 999562020 926188274 962469244 965944305 989872547 294854552 626382637 451835414 601322550 96034705 168600490 509991050 778015305 170020298 665707938 399702352 831868006 149222643 844462574 980938106 983920719 760280032 765123540 541332049 705831691 799861703 951525122 989415023 997490101 829230144 911546728 303168223 846273647 181801579 955095030 514173917 592191309 317932824 819745087 542972277 832989857 471260137 823418108 432301728 755010420 5367599 378509912 100148285 384413918 364599559 664568770 52456637 352692678 583307691 758852994 914289981 979213365 312727566 450988507 999940876 999941786 794448215 974832871 497358644 824625934 245207746 471117042 409083487 474191776 673411494 699106825 654511208 870924393 963238008 982725540 668047695 700848772 997306729 998774209 631345782 762575739 699400620 807314246 654181426 713206990 699421107 837645084 258151600 912734186 96146530 704372934 985315041 988813439 631622219 845385878 890652824 972725290 349498246 461528301 3817770 50291711 900143140 981844160 689450805 886542833 638855546 784944148 946705545 962384533 247392615 828511381 101218639 403661185 82414562 159685836 734036651 828628276 661902189 820014625 217646550 517260378 206883609 663544005 493579489 599235591 950402170 970630849 35086191 120331869 645545565 755906779 808220002 920468267 376077326 387376530 15386695 123805225 990513658 999868854 961019610 968970909 981197309 993498951 381261854 707286551 119369201 304339084 287161908 321490216 813211796 985795498 672813127 682398550 282086050 441075741 56218807 786160372 189301844 931669572 528660278 709991373 80616922 85654793 375656511 990537910 438266540 503802631 590608142 892609738 758163510 858223775 826933568 854764863 705816426 839587353 560683428 770535640 623384565 947195418 791120944 797410446 9855429 763248966 247995568 748427243 451334417 707912856 225985124 938206856 337663976 636377515 400989640 492476647 549552069 996478995 163878857 912139038 651417127 712212209 333269505 857843190 979155269 992279688 275535121 509610503 82673898 479113862 268801834 734402961 803734103 909136076 936013640 939209702 140922535 333190673 718902789 988806823 206045882 330415884 861149658 988805056 802139648 806745441 404937090 660351630 510087223 597698224 2203649 459983825 255221720 487037879 297413962 774112185 173644188 690773557 941552205 961990456 490912195 924108306 140964158 913519753 507035153 856901211 540973809 982837390 526422397 886457718 115545172 302217010 69562066 975808440 735854533 782490621 618911272 963978030 676689861 724785097 608869735 637321854 730509562 927484699 626929368 797769097 92990359 152620181 304006175 814406553 305806021 608633975 614842557 848239002 180733834 884601000 70966525 387156905 77075753 262777068 465674396 926639720 772642841 867863254 98054466 906324578 864821078 934647309 911669423 962866399 846476823 980258659 75010834 93832439 782853900 844549058 603568465 981135898 565106832 711873125 686138455 722614689 731643500 820127251 415617139 808985826 756504817 853570365 445542510 568732628 456658087 892675628 165406295 300420587 323262472 553737166 91196343 434214393 230911891 901993567 569114234 755165391 530775122 706756719 905662144 992197900 485834287 792168581 955226755 989734343 743011601 915963405 848729916 972704470 884809683 934593898 379298598 946841711 654759651 954850159 771997489 799545583 836071744 995819417 349893189 745005082 664664721 884832429 834099286 998979312 251675662 339273676 613771360 688658868 752675006 840860922 787294896 813809468 6257059 635619266 660494134 809445845 451569097 579419749 329728030 417190537 573935957 774153095 83486642 938969522 321498963 597783672 220687109 256251440 22803013 442133919 398375216 905401954 928576191 989353430 171286320 583211719 34058155 364632440 391194563 608475200 285633531 376516565 519068807 870455674 382637870 579408834 302763947 599886447 102094849 526114017 298782849 467211698 37923326 664108272 634184167 673678113 223454396 303915481 879283742 937305526 481497954 566154229 105729493 816399226 247500675 578403796 299978129 545383082 288277517 642526459 203253146 232710626 125753291 731170128 104663254 833326669 633050685 845078634 825004616 997465805 612559613 869437016 409802281 869271454 145243613 286353802 220071031 568157823 911019414 942447307 508809011 826627748 834927711 855555501 586434272 773833133 304719831 784129800 457041562 491939869 187054596 819458363 374518009 834262906 170776555 974014607 80735736 694230063 188710834 612445734 824553439 872554483 233393471 379876706 95664465 889782044 971823892 990334581 569141686 852244931 269473999 285961182 391058872 943091864 195556540 867737292 25048943 421474290 597565055 636174795 94688507 659747141 263412437 560296403 924109410 926780111 428750094 605637710 456686713 473197015 499641606 776392597 169595986 483086481 248638162 447607091 648436853 819685475 257326085 492017685 250683018 499475853 964980685 999793397 34357593 342838003 876468973 899989112 609306258 698992139 408447876 925283385 787735589 960651683 571290216 610936966 971011374 984200529 339441363 769455887 459548255 489266707 254770332 412277220 927211937 982053580 506871292 621545932 76987511 639715632 374745952 989991805 149094886 971445453 954643756 979807642 717439161 990749035 274234839 874605675 95831666 278935588 744014304 804530282 342573442 526697267 470967791 748029688 664443377 860459400 737461744 816977335 414294238 811090915 820753367 988942038 578595210 935128191 240734850 853874037 780857783 783229853 153567343 459891270 386293498 443818689 710887785 978419891 147284529 370627615 366294213 541689012 565809803 580250234 950919997 974872511 709907808 761434376 164670742 397925351 916928281 969643831 751623125 782924850 725762610 727622846 312827227 869292497 971246140 979573472 739422551 851666557 395982266 704146379 98151458 749183942 498176979 824126501 578089478 643218966 439890522 892930948 804919393 944167133 657763724 831517501 601226178 880646576 297212407 899583237 755210104 948499610 966865299 975507502 389508184 556098538 929502485 937362920 624249487 853841144 311221188 886026573 642027042 705860080 225240755 470471068 513564189 901924925 899258835 955279009 35521161 341331193 50675168 271008016 354470445 803978175 623112165 650918241 254211269 698169763 919988165 957009737 497264619 993479065 794713558 965461530 607262388 887201526 556565229 928153046 702051284 985225304 709035182 985742522 676722362 860285772 654055719 775490946 434485064 549118286 461433300 704918397 934408413 972231737 493392107 764507241 304852680 751410110 425314908 858032324 479764584 491315590 632886943 789382328 977338438 984689396 130247086 485487873 68313520 411323088 133206089 878378866 496352593 552959461 601768219 943507381 235670067 943634707 353238888 838292596 173656312 648419853 323510767 955486743 930516784 985076862 636468018 966975574 357976683 827534292 504700265 986788951 749232951 819990654 678591437 973047146 394890582 986207235 795417641 805745424 531545141 803434642 687246537 737231144 182477648 418757642 677187451 764336753 278546778 729895457 400718712 426803641 917377529 919190050 453693618 638798136 520902298 977688587 178619704 890176547 933260016 968034189 239816374 521943568 882437714 970451604 341530343 375688262 946746917 984071198 895544966 931710152 988610694 998516033 212994921 315803723 880101202 957454788 438126087 912973284 771565859 885548576 589616106 784179853 615034422 717313205 700234395 762357927 514748811 829009681 771330070 967148079 67513 40351925 110437954 835438157 141384799 750007907 984320751 995537129 712668031 885778235 705214862 707492313 312037766 340515316 726634964 899877852 101151176 401104844 185582969 423729414 44398629 175223292 604653581 991558972 526044843 667302341 333321957 922210579 751674892 984138215 169578624 445373722 696218125 955949433 338711331 816974745 653494851 866386017 612200891 716010832 830080290 838586537 165903688 311307554 660440741 902018007 448165339 945983245 57539554 839834772 311355602 529609315 854593181 973265694 302741297 512788749 218118831 764183912 612066527 992987210 81676894 719687276 614476360 863026231 281677259 845233678 575478108 639161356 496518712 995283210 467612565 994917043 908357702 982100003 964453930 997122704 474191526 941796106 406328632 915993683 48052442 483124654 652359307 745551293 291920951 661918418 332898359 893951996 797657450 853228868 502367859 693992610 647223873 851215996 739684997 858726983 224876298 694931683 201832954 392254038 152156075 272352414 635351102 875332074 298363478 418171964 87096492 134962575 313296455 733912732 363479393 631038869 190281834 289229093 819682222 946010152 598699866 838801921 978541549 988244441 183045043 589508166 851639829 900316789 843159567 981202914 395056856 664274731 384420953 833722980 283317696 760067010 185035710 346528492 259710447 661138152 219718103 880071009 74468548 674391757 752580940 781246409 366418601 586241026 390729202 743874150 262351641 535363079 589020287 748865708 327440708 645712370 488288243 813338387 398441047 697092754 590708513 640482863 59567788 165991432 749398775 807932861 847593646 994193163 898109741 957737281 408877103 732761253 727544412 952216828 710047440 716383113 667294583 786585339 12339142 175900128 651313695 946391078 719648698 950313774 337302482 667482322 582527424 819666887 258755069 752098812 444930673 555024120 936730141 992192315 427615094 964789834 157375700 813624406 663286425 958827533 770120102 772275945 751483411 945369895 282620393 985018737 216074860 457258812 511074781 872832764 422619664 854862869 708377135 813277012 562265695 856677576 113030459 633766074 774439276 858979241 208931736 607712732 251298772 525712018 710794972 873658635 746239366 760673209 55508542 231579140 785183569 934242727 238928986 999668782 535723117 757805049 476279077 800789127 106812486 251059089 451642432 536612085 393377183 839664174 806416305 874827877 748029742 817197952 322811071 925656347 330689980 916611232 714267284 819782960 188193171 732962681 550790555 758914347 615622648 617231638 282105375 317831400 149439691 243687134 641957025 646369662 113598328 156395123 2466573 866813318 139474322 181738148 946449763 967697368 13593173 445054071 550837464 595106382 680635175 739234848 737285209 844099232 216968794 778605863 520305318 950550250 284157745 978290690 681725673 915640515 560954977 776145545 339418293 927835721 804321390 941670332 228823411 528062036 331900461 620276479 557148265 562510235 173706444 469267486 874036964 980379234 502396172 679907555 736090601 742093067 706354721 828856873 918595349 958650272 704324592 899750229 516472044 982666761 994197531 999101275 126326315 404330873 681047143 784074150 427526408 821574425 727864951 961477737 46031177 753236592 843702608 910903713 678682327 902192939 427255473 791792391 423091260 897746142 281253959 318871590 735406946 798277471 787681566 993680040 600366334 984800311 219703432 394237964 745120187 820245733 324609874 927288158 330840453 375968847 212561160 904207542 262040577 466200251 668426981 981677982 342752917 755308740 107818592 478058362 286098772 604301891 934167447 966505350 805101472 984451567 876405663 946207086 341185529 590291848 493288658 515926143 214606104 786615117 244991021 487331179 424312287 579968566 326450864 926442560 109698392 468908749 940395072 987809207 590910506 720467260 51227056 626016045 769923754 838415126 855897945 887381150 626798058 696273215 536432367 614922920 564649709 616221535 254570485 526080729 464537803 675850414 972142810 990218122 923227078 970167245 204080387 974765551 725341102 853406399 59957093 867114120 750460637 863246167 478924289 882758140 492975227 844644242 223693068 926896042 828798799 945139134 135196503 985351478 390453030 545966148 761783337 989388473 579510711 608261398 629032935 670579514 352746836 744754952 164808718 432195282 361840747 587804303 880089540 882975633 299524599 510337854 65822769 126299508 507545440 758137627 242996368 654796148 452888842 823969575 61627029 741277895 913279546 993770630 286536160 313426249 671148514 925033428 941184832 974418982 536101711 663812376 904961456 969477300 393554778 796228385 261730095 264597191 448424861 619608871 635183546 742726936 556363652 788083150 494697998 676880806 389952691 697006706 440053905 730996571 279237951 901624506 343929633 874002845 905898893 954728590 706735389 888751382 366115281 506175291 358410721 368253492 415766451 593519626 828061805 983621912 54532404 744974712 378293869 886611034 804365379 859345646 876046954 883013935 336716206 369369400 195033302 655178857 767261429 833152910 560804891 812701983 546783305 642238630 680110778 773415377 707952111 710287309 114942205 757416317 824154209 949845919 708192570 819652232 146023515 700225225 712180773 714947192 877481825 965571322 150229761 270517818 147465617 270032632 992505128 994173207 658629799 831901455 61512556 634166339 379186262 657328919 46666309 946160828 284834996 862600052 180514032 241777327 243481843 871924964 433667827 839163477 185900438 750183705 437519853 455458348 859990419 982990579 654022263 660661171 72594079 708374932 606809013 840420123 709995340 947380731 800596030 920560683 160049192 460447389 940631990 981136404 602917377 935331858 25831152 784919229 448248640 925630007 87371460 502839551 578754835 596324308 32312290 586947484 931150199 979518246 379165313 745877044 590715037 683716373 977496968 979210258 60945478 777970412 504645982 668964506 126116352 529684866 978185263 982414431 523373339 601928833 285524424 684427399 720920937 769213236 458523486 770976561 381261158 482548412 96595684 121789677 651683333 873316370 152336897 732103444 617893036 632544641 713913859 825347338 858325085 897529309 810639585 976253918 763051122 967379039 383474457 407316104 163104269 184442519 442900356 468961517 379831540 598490230 312487775 374127175 293876534 551251345 677950404 709299887 894235445 898896351 190086637 198503281 546717355 623751406 14920881 697132643 442467238 580431505 432495889 799088065 630417680 726016442 139627101 965552333 274558215 605026180 840701936 958747815 64145405 352453544 138952755 408415716 661863834 923414743 163238360 981755665 614077534 852975041 691780310 819650006 147225905 842337656 863236328 915361761 434509610 806602845 738013716 751486363 608521238 845575040 664040885 840441639 443222453 684378377 953161987 964956085 719442596 801370314 472313503 791495637 997339368 999120107 98593639 333206269 765142522 834779463 790358637 896576323 484808958 742013436 416767909 575348537 686578961 883138537 646627790 871316684 895925943 909309457 260419656 291229610 982178495 994883477 402569409 515689369 675547896 957432472 27923462 653469235 689916938 786836534 570995728 822876609 976321623 995005745 583553123 632476113 409806205 932037842 394965366 565142826 420300967 856505258 965778298 974182764 138288707 238650228 468745553 707673227 312569043 332238522 594386466 713881489 239913943 462783506 61696293 104212924 567656248 717940916 535021688 792647087 719351156 932290805 520944439 819942213 817283573 874142025 315437736 854920929 507719559 640154568 822814335 862744853 55494771 130795995 328948638 965403787 700337588 908162418 145878014 167224794 166947967 257886346 563523871 856597913 401299896 993884972 852763489 962647445 435706288 755900278 84144638 402200152 345435353 769686354 60696295 280343042 425628063 506633711 405293649 846317658 37480037 506431536 841912993 921416697 661662716 725633153 836995119 926895934 456675955 757248026 437067872 526387698 213448657 492977371 575919131 632796462 564679014 635842464 918096792 951562507 909671855 925638053 138014746 546326661 691944068 974791606 537124248 642748470 158334295 733692230 532992902 849800165 513216713 700581159 574917821 839754660 296151715 429935767 823865732 942863522 5660451 285628254 203973700 866126881 858919609 876137663 279528082 692797947 905460625 909028321 975182232 977855936 644136919 880766628 286311285 874240383 391552110 746158519 845369919 949043636 463012999 726383640 219664011 489054530 95063353 875183150 526505837 568673597 140196390 540362681 405201303 455753100 541210776 927351259 498795649 841007724 351657964 581882551 619020003 813655715 555093188 912132064 575421916 864638567 579947611 882620781 634332418 827516740 366471571 892133122 531016067 601454663 832188305 869379552 195264872 929538897 433644862 504023139 251656632 427533809 378873484 809215960 143076285 673082422 501272095 609855221 93198733 131874958 689948163 904313748 260183643 856825327 673815169 838910736 249919908 508175279 543877211 736135270 314927850 515895475 857572065 967936759 178614055 349660496 795908710 835548942 888924805 979031750 164749020 933065809 739480991 754946308 887045989 956492694 950060625 991359410 151781695 344248253 205416343 336496654 89183768 957932680 368081490 572642461 554266914 961548407 279559236 489770653 341313058 646573923 454883015 585716678 99821578 130864063 254139105 829004760 20845056 823787523 430858591 858440008 458464451 537741364 248155384 309799834 672494475 884122010 260450077 772862746 217374630 841001076 314691873 698095077 554164698 780526598 631051145 981566669 454955113 812729951 794753861 817355524 354831720 555678519 189678609 674400312 188429170 314001806 743163605 765275251 324834282 872727191 925760015 931925402 135585896 922816347 893842988 970921934 372856397 787169594 38807505 555453455 33450360 299505912 398156551 709901946 399922035 401165927 164576412 834229404 934284020 999582397 216472089 727883513 875144874 934255771 194996145 876824872 347854148 876210861 340731281 643913993 705616631 795019615 757577432 759998383 595231090 904698603 438724902 710796995 569131858 846059430 649128505 703713239 253004765 295999558 226201311 892085791 378889017 513182805 385207656 622081743 227390435 746795253 148837756 634214977 177189871 689834518 98121085 689281196 797881370 931907806 886948684 917449374 15353191 565053989 317378499 698368259 810356178 839806154 784308677 892367174 567109707 575167950 318808373 882369885 477837727 925384798 242996996 897166247 844918525 864139143 409098895 918081214 324567260 651427560 620267891 846518180 607342918 610505977 82479582 717055837 609950329 861918956 773819860 973498748 18092547 542738417 438402363 488904378 16492382 658080911 226308213 854730671 519339621 754237269 547593563 615663329 939872460 991692365 381492137 891931016 913294528 918351472 725561879 911831719 103110077 290557256 421994976 877640448 710106214 921379207 505521074 737480273 30831743 427943941 476620482 849498272 842821118 863632846 870024218 974689652 880906949 967717394 824386670 977157284 972186898 977357543 107981173 641148505 929745313 952647709 81277703 938074424 870917938 945790080 885331375 955888570 714481092 724866284 329298250 442296844 513166668 739917307 29962116 793903744 174840920 956713709 540334291 976194383 573522710 791075836 955106112 992903718 614014318 912286920 17449034 165652486 732564815 887469728 306963553 936316685 78541530 792578986 764449546 966071586 522331747 798970330 396216805 600925825 604629320 914722441 306739578 903817960 225760485 450444372 185765617 824475733 400469057 691850072 662235210 993041133 420292867 477433543 118147143 663675890 99397077 759189965 755830004 994420287 46449432 739433982 615350568 940151382 952927448 987354289 827957029 852488521 538419204 952157325 698141566 728978791 248082022 777656316 589517859 958285720 367008552 865137880 134828770 406991835 649156564 691397462 589226279 963390679 348314644 355654263 517688319 649518602 597517571 837153353 107609700 352072315 287838731 492582580 11334570 327416471 923031112 940424493 708329287 903490942 494285529 942290358 586872707 670950562 887399695 966639140 178832362 588042031 245249136 255014110 158490851 721695476 906507090 990359591 763566280 822871180 806443680 903010634 689917842 712546697 79168990 159961579 705306186 765742402 363649916 803675360 770684790 802631746 330653413 752520448 420825852 521318537 559192581 665313168 37761218 120581923 48584574 444650036 95671470 833529656 3847663 640268391 935821578 936077183 792308163 827049374 108010094 394181532 300529640 556528550 188114957 358411241 75126225 697226650 50898925 829980341 484571896 714021838 152127989 373223201 591997668 732015787 43964405 226069634 920340325 965198730 218726230 624722865 919229464 989742975 55076544 748220522 674818188 983808633 249389580 654430134 656235416 828335400 35090397 744580558 223287833 240049057 167829677 926007399 159334043 922283126 822296065 884919425 994014366 996367547 114255143 377060360 252517909 432503741 889142958 893215098 315151395 832429521 14194111 444541298 943628024 965511143 70898764 432692467 95358947 206622954 359723829 772288349 485898541 817900614 974169192 988303672 375577738 616422433 362180084 790000754 452945699 499014711 516082510 797103092 187392638 201135293 421226088 497961759 397274722 834498345 420855370 749542470 163622999 440909204 905566897 955616340 192287524 682121586 492526893 913491610 734113086 744410319 835794840 857903670 543748039 670072177 473993006 875405085 986643977 998531092 34477326 122379848 26106459 115984166 246583736 700079371 722062394 923186530 954281732 991276261 992358843 998993243 188205564 632891200 69126751 360399311 861709111 878500192 222391692 676386115 208775889 999420854 920357021 971529932 636750423 881542258 932187344 999091742 469090783 672229296 639558008 708839186 868937907 948492802 746730010 766145291 882175842 983818282 471708109 509873077 540858574 993929475 836746623 922439590 611804681 793443302 214303696 284131712 488904515 516545532 546618443 703931835 964754391 970968394 79126174 707646337 251037670 882805583 80876290 685625021 264782497 710718857 250068359 840484318 33329658 77952939 520137043 791157821 291170151 585031103 679781598 683969928 467291706 813488263 136882947 631264018 432521076 545942611 418988634 862994010 913343278 957567497 353126044 848981581 98506360 875468554 160889561 551152647 976471976 990301394 577776135 888580944 594489450 998765575 365022515 568431142 331727008 390668603 478557156 582416374 958413961 959317080 121581616 379689073 7251865 530831873 724697934 768978508 963957612 979311793 928077231 950020614 778645438 969083519 923047650 991781575 808984372 931301103 98570081 949378996 889193114 975724065 369114239 789012048 634483508 875118481 471655317 646546899 937361516 962098675 659902090 943920605 748007152 775032313 3718941 273993843 632480609 893102357 523468173 819201663 713762702 853607982 99122115 971095846 7509331 990906938 139623737 933870025 8404713 295586648 721647984 961073519 867744343 923959100 754934212 825760364 246800445 267295551 850505335 944589407 675931186 859246808 635638186 668476197 992869650 994378162 734601577 743455390 548918672 858206546 681673183 689666581 415352598 564058062 333472933 641267570 792682614 959546509 366362420 992111015 95842883 529886743 488133576 839543715 769561329 794088528 10759233 975751551 195646560 425918394 612956492 709387612 51536338 90766084 386861931 649664059 210852027 596505168 684786672 692580665 235013419 353416962 221434240 333754091 388633474 435421776 957887462 969428052 742630957 996228142 848858204 899325668 53951295 895489102 674214593 868977731 700499433 702615078 80185624 615702019 438235679 749717781 833430501 837545562 443502512 598603149 242180016 522244175 912258304 917703319 299416 335513023 14292534 117954939 686812857 883698913 946216837 970024513 388236509 701855861 959271314 972379914 452199779 681308576 497298488 669080667 515443360 658941895 469861262 829814100 125719805 730283411 384805752 409707416 999824041 999904084 785338807 859350155 990784022 997320949 824865536 986080554 493817442 931459946 858223976 890836666 74671947 844895220 244334630 900424457 374604884 515017322 764319716 929311545 717669896 904330243 271564569 545357429 370272526 593302635 302556965 453345066 530066825 855539773 3831874 35820258 150723784 335915986 493662592 887653730 632107812 897995801 383227875 783088894 782828786 797656929 813401108 964527460 471613423 952321708 311250060 931911940 444709531 674261888 400041144 657432838 952514082 955745852 486539688 505229448 925681683 928079984 275065795 885332110 678072898 863102997 186120528 241443010 922439348 942370627 807582769 873610134 420136387 552141353 538929500 581128806 559035655 948591112 494202478 550002930 813632851 978065567 615240737 881421586 149128661 348131762 848346522 948540817 632150175 764547743 141960892 201820454 216492558 529290606 859980693 990590475 729331443 923764227 644545722 753115845 560242173 905248282 918372764 962920963 556888257 850687052 121413273 274063319 600180707 603599364 988793025 992223487 535372635 946702281 593995249 719132833 326860373 831689545 524979774 584621811 985394216 995361164 891404352 920634117 816190450 914387396 856350472 921481535 511992351 897614922 171468971 756136671 407866993 603808913 175913560 366130725 198171232 702219274 88786782 792218335 486603721 563676042 767348121 774018889 655562320 732349012 639931111 974989989 306086245 356887492 233855860 831309644 918810385 984458193 840156176 904781691 871702757 914918722 47235605 666874145 356196425 397546170 655904220 845506219 338303663 644971046 86578108 836100828 684275844 774574007 730550131 762630304 148465943 620127964 955006787 970416812 404353648 893088136 778578620 912258229 246594638 564424987 862295911 890593711 965779482 998001207 29646357 505125364 351996843 604305612 192870367 380294106 778430983 932990729 819404750 910124709 1738657 571805456 711382495 722225723 941215165 968826867 944539025 958504554 136337177 981732929 355985650 715669282 182295710 211909028 523946392 630541867 360612217 983182782 805152242 986088294 428302839 443684224 110944512 379496519 982024691 991001501 63754349 82336412 400745038 607484286 344877357 501905392 559120490 615970290 87830144 760561158 962626355 967711913 296225134 894718310 399673571 516544062 648176516 940404832 696110530 737516899 911993817 937463768 596844988 956665172 83463696 516144558 851696098 872018245 583312219 718678583 170562771 888483951 652643720 971260333 384354125 494426975 452961194 584069930 126373131 193628755 269250904 737747519 299683596 472457749 25108582 363570097 654891504 753923437 567643371 938388896 430485466 875042430 118352947 477167931 995554302 995926292 284884513 458171529 904660178 915248813 884325667 892137605 717114296 827155308 975101262 983041424 437511015 595189215 916465359 995780738 922402175 965461406 894900885 966104421 792221748 909880552 538464396 945981985 788303532 905190205 212635331 698392505 197117149 455019583 302957631 310423035 766253080 888647506 746232172 862578929 742702368 887767878 361510815 372620157 517102388 631930174 508410064 564574235 422995619 961317138 419159355 520021771 629415834 977569667 272149282 476719198 46322415 268191165 315370771 588174516 920476608 979317825 149926975 325013355 545999687 607389369 587571035 785638141 630423406 982324509 777809109 926793439 170196221 677617780 877677846 938398326 428979577 559649362 798317506 867492687 308866642 631709536 750292115 992106637 474819648 644289652 243745243 528732370 711581616 776936691 522729929 880253721 81180330 108905130 564488323 790899085 901504286 964676652 269845973 785918816 427892638 595807762 68059784 420362971 603514241 923596614 197151547 231734598 852619617 957948950 681054522 749655089 740362881 978593165 4587578 840444173 943422811 947519913 107681059 493271792 617338233 733920156 441653903 949585480 1144935 685119191 731152372 958533994 705655030 712020690 647703125 960088506 170013913 951393158 489124512 495539928 789227871 900485242 157043776 174120127 198918762 450498624 963317595 991715254 167045229 340495704 755675371 874615857 677606886 898791044 539816796 973247203 872785048 956888543 646531105 667363880 143160355 808257604 861866667 947173505 927648487 953187455 278361942 890859457 275484610 834899640 915962664 927445738 590954251 915109693 23730649 495043339 275558805 730654818 538120569 621434748 891596409 953437415 47361017 539755482 506688931 706074120 489661713 615791791 692014346 872085749 275433210 858509389 210283943 950502811 585429444 760536006 172065160 241184394 643445576 888225879 491655667 689859535 634796049 809276749 495064284 525716856 650601936 735250374 460088423 945045194 877156445 919646443 558844159 750503486 579754111 752461661 617709237 642114681 554251402 779812768 2222798 525609497 365192104 520039474 297785737 326019494 421624347 878129032 802653865 913247932 209882869 525811155 330016591 836795420 724939987 877694109 492309206 961209881 350170982 373972848 183684645 438801029 863843230 883398328 268924988 419800105 218378344 668373033 936175635 953151037 296128839 549286166 209292288 286140824 70801245 479028486 527736248 592499811 511477513 645535643 869542691 983088300 722811251 897535682 814760116 917847583 380148290 555225605 688648732 829394640 512742024 812388929 351717740 840393307 149178009 665250537 666260012 938738226 684440287 839733618 297678011 380021252 169558041 674805348 44463266 984505108 488280468 904346354 423457652 848412847 631180965 790961872 639960934 973307544 557239958 764955916 200497659 990152504 968950150 984041820 790513362 908250828 646718468 757760826 616821734 894700555 682729339 760010968 51344872 236259655 181791156 299246542 592669667 824968892 831280802 882901124 148604234 948112185 39796619 430168135 335784701 700793636 145643565 822639406 297875237 419204511 792443131 967188215 852436673 999393717 895188646 957038523 675831265 889032267 566432769 913695671 777823128 998471699 108434683 323691027 769631259 997048239 187802518 695797914 672541573 703017086 573912908 805177147 704473850 828673833 816373106 969766430 288553260 914803489 143947703 224963059 806399366 926879685 485909311 755674370 249440885 351429293 45485373 452414850 106231043 297852622 608242318 721953336 981591717 999304918 956458304 959462229 537628395 952999913 231561826 592852597 27314929 175117342 29792373 937557608 578075889 895822670 44483649 680761702 830102437 920020743 822568787 906229755 315706741 649251589 644452643 824571321 424145577 652048580 498926595 507084613 388126020 450526441 729077892 997527996 577215739 913752396 261150089 463444856 563059870 977220331 212335552 685694478 651697816 986895111 957461257 993225640 972275233 996259051 887588952 998881699 509265301 829757517 2303185 417482165 760033503 810651729 446065891 919721103 906784654 970256641 706393681 957866641 82084007 312577527 198120282 917620444 808308445 956539535 179280211 409792638 383545409 433471606 201075610 927394927 759950775 762806694 21033924 63978207 606413557 974564079 515418825 789224623 58527271 668983397 173346404 401235004 204461697 217277258 169936193 899162448 877048487 909963581 487278546 690365403 991538132 994249730 624236669 648252434 183309362 444168466 866780998 975934050 603142652 975969077 857945063 911915208 687776367 765823621 116357822 461829751 391250081 774688072 527058303 652055230 111999443 182269974 916494745 921235238 151921357 365998637 77123546 481053938 689386078 933595671 262429553 401690721 156747239 522693378 420221613 422063998 218049667 415798658 523151648 662816565 303758722 784245057 870568509 974649730 544566954 651208099 265948123 624965708 618756457 869562154 627264624 871019784 947268351 992185235 660997903 707338072 573072357 976307642 460882993 845937750 336284499 512776958 892037835 951934748 165877128 309509844 259133239 908562833 728001490 782415509 119199992 344278679 657883038 785846373 25277683 72708695 55153636 894494268 199419319 444517930 640445049 735543559 133072257 696537951 802951526 838857781 41112217 718176970 657938935 958414863 341958543 492261089 123739450 214554113 337775129 758289079 516459205 699788252 963652973 969065108 784215460 839227902 252403856 558821304 78875030 120603870 675873779 832081743 273642871 628304334 457983837 800402528 621651 678505866 230890958 437155860 785017114 977580078 890712492 980944389 867671423 998829193 955901762 980595796 37139842 865448266 363434771 810387842 863956400 869641421 365623072 516026507 936611 762004516 493489751 501121655 432033488 563696403 889215899 910724221 996051361 999031829 462805771 854092558 275119222 734101280 138226873 297549955 445860430 919259490 469298292 761970249 830558665 859930323 795818934 933364611 907342523 957233895 186402537 333814378 267090680 881391758 467898745 914240947 682739673 875059181 975958691 977819277 795461619 947122674 548673023 738521368 313559754 652070413 968092490 983224861 384997072 762004124 218439547 380430837 729647687 794605424 749441388 823175950 47699870 834962487 527963255 753319818 405288607 706948458 277882457 786186507 494359524 886413886 795526725 844940980 591633117 780198585 401237710 645444488 446857138 688932431 554398188 822285412 129811483 324302616 657878008 963538851 847469667 993905148 910637137 975995032 230524275 997303761 751393329 964204010 321652409 936633643 171383799 430993439 59606098 456182122 542212533 742705064 55303902 317870387 536637807 807939770 70482726 251342480 658101687 990197562 456624075 927388358 50671485 144843837 728066927 735479196 743044738 758261697 595577179 692112627 854737114 975946012 253586626 306733102 498989879 547136997 909891002 943614736 816901415 840031539 477382447 862708073 365904292 978133085 979445419 987379951 745853000 940867724 680892058 808540465 318519218 419310825 976202418 992219682 928052774 941839770 196657794 460850084 342922900 930472108 536267216 619535168 327510606 800138641 29416585 555594521 702274652 815691437 826457961 859625230 312807599 319274438 535249239 747353351 131985799 545248032 705681183 896460390 824367355 847651868 916430176 944643679 760088581 821969459 542996107 797365444 543274012 830595564 788280537 812244478 892289707 896333628 106689766 549019281 358346786 664503228 80643933 242872321 538532703 550983792 706548480 977266783 591541786 743542615 369347399 819272698 972333967 984394992 586422202 817664526 939184560 952494654 615184644 911679682 452585930 665578713 231862053 387419252 683611115 905633030 277220291 866088265 930910897 998133207 403660446 610313823 734243645 919256260 87284265 192095168 233812683 366240209 456067705 738170327 642995754 674887196 964424257 988774079 522169471 900527607 706513264 757691947 141503278 167333373 681946147 984767105 821896807 885820681 161620815 162584971 806384153 898128680 649667601 689636862 369527034 659282850 775049791 984018267 568268510 619871741 760842224 962378940 773637924 928089742 775402158 951574428 208449608 907939402 304257710 755877607 385742601 494893279 584892441 824338191 171267633 316498667 555241231 881138276 630215143 958945070 633896338 728010335 573686727 934470742 501169955 507104964 32403484 320373920 66576744 995291295 317312191 860705868 555998066 709662345 702907477 760973535 305617079 894556228 823037918 903165607 129214325 965984350 997425665 998904341 698694178 934586812 852956417 867213499 68805007 887371700 979836205 983915950 170243680 519494682 309116639 404326791 54003840 952964974 191068491 774188660 614621822 954630368 60110447 983360734 386357498 922771433 655760487 987251944 517699279 957307081 314543724 359553805 791695483 848001121 596688441 973588067 229143690 492158247 664193533 808052697 534133424 864036765 590063987 787628887 980406339 995899633 418689246 464541753 370823521 475141833 901886096 963651291 775546549 996098877 929514846 944009090 584497082 827991604 490910329 696028109 675860891 759486240 458595542 797832990 756652037 887103201 649070404 687706902 113875272 928688869 625537036 964274144 468782285 693717110 538713734 735960971 947589800 965470017 899213178 961094861 997639899 999874305 968400696 982303802 209255139 888796578 945585891 948050745 859887823 874701577 273083954 873795206 614626748 924818608 811728177 854441584 551285351 957930523 802573338 912012812 836660030 907187352 253853370 402004407 91322754 592126089 771736716 966033828 435343423 482349451 600290198 758068080 352646735 852150891 119135370 517455442 714347033 821843484 926461487 944325840 613592407 642630706 849179121 913716457 801655268 846550140 168069974 841780432 742762215 840559113 628488581 694530705 789827730 824836451 549046235 757782400 291571070 870208134 160317861 645701256 926872874 950147316 945004073 966992897 652539675 920548190 497974815 930460188 796669487 802542740 877551235 942553216 286683929 564962592 266063529 870422246 440055445 969623976 589219296 609937349 761651045 844853850 897838188 971946141 436345559 476374401 843336574 888772370 654594996 692118857 646633846 660059138 693159839 993389851 347956723 429107599 181479218 339183009 64327203 864770055 538562258 630419694 552602552 864676445 919211984 942082851 308555383 511309298 527986443 627541237 92574795 171860894 723248462 805521178 884517010 976267155 802343781 854289759 350846122 894443076 367461895 630459323 369766844 957407380 227132466 959509087 514554362 612629121 830510469 832658145 710848833 800693481 501115532 651072172 345659938 942456606 398505041 799447528 19049311 852363841 138704390 189412951 373200098 536774534 141159925 453296256 71772546 672247214 666248388 958671454 315604523 568366444 986121962 996982293 16524637 825579808 822982214 941519072 632051499 991023814 566409976 679265572 238414292 693282376 660189693 693719780 196506778 441042151 190874052 739377947 29687359 581599223 754800383 972330850 885724826 896705126 377110005 439908626 808459128 905284118 855312578 885147827 478124299 624242509 455344335 970215561 270302032 769027279 477488385 517912374 329782494 812968176 467874545 528733893 902740623 941728025 322518876 385566895 164007379 227664535 136525899 436329155 663230056 820132174 893736366 914002926 388560493 990121689 724088417 748453731 920725270 992871159 549243933 855159802 840944841 922464011 310467114 667620311 633833494 760882804 18292680 421811525 32236857 730125246 642365222 924454450 347650402 456489376 304221906 704589572 779841356 844970306 98109748 512226309 90893646 503379089 197032329 426498671 997007071 998431335 730454762 837308262 922626863 976767552 190422645 392661960 916424263 991688518 132374427 969745784 210234580 377027098 872556879 933325391 886814074 965725501 820109109 840669742 775073210 804568710 415976879 949774387 384425686 469660103 151812215 479160246 44487971 564568155 214289251 681192919 271231580 665470068 962896800 985633361 545788331 675015271 127579432 446745472 841040906 918716394 980858332 982200494 654339830 663666709 714689989 969936724 15587222 46962465 723639494 758339549 923124294 985928814 44000612 109518953 85502938 251665371 151586429 548890495 460491768 761202367 324406977 609643684 446008613 717642403 43233934 443165233 914574713 978173577 789865607 816840944 363320688 465121914 840608035 983522070 869936542 930124564 961060767 966747188 765967748 928220009 355006362 873963605 441042450 982081793 981094255 981969418 831019742 974997936 343731101 346072658 155598440 251223256 777231801 843248475 139315888 647269397 101089892 822123050 593058249 711358611 635107094 669701975 749176249 754536970 120442705 198678136 193942206 466589769 342753786 969704765 307581310 400878564 876944853 992716162 730760152 932914786 109081772 514253917 160816166 802029394 951317609 988203337 503539548 743544201 34208336 40383107 846331852 917904890 92168189 646356236 8229810 633325629 600483413 973759660 225941863 253235123 901091569 983848920 908385772 923493335 525039207 841412625 244125761 362526717 420607977 970851203 198555014 222548391 115321938 598282878 797146109 916429887 302011280 377831090 128704143 765415840 338741614 493494381 763124691 940598130 317787711 907405041 177019755 186806613 436226049 781312668 326448577 951533062 153473717 342962915 810882848 996935735 178863569 681266178 294606586 657445903 514275656 784365728 215362090 384228353 175146372 713800659 729574992 961060224 677413239 838192979 552420811 994189027 307318445 345898136 10208520 265148909 993017223 999665639 71096867 491183646 406830884 787504882 213891687 464695669 960892726 976713537 393163580 466001793 824409654 915488371 686898858 829900437 61127368 247550645 67661529 917492460 623009141 815538756 430460335 603100885 812494110 886105673 466915967 509206511 7117633 152251479 648778645 794525895 543620900 579448132 246866574 493853070 844897416 921861143 238853233 453175154 151048128 485615027 579434218 909298441 712788525 953260208 436869143 911893515 222548115 512026040 322659297 653241493 537335330 839924523 993413548 999727819 301629465 905668589 427051749 621473436 869943058 937002134 369781460 919973270 55660136 675842402 551412656 844961028 199272650 454494944 436330059 808698411 388522894 591515987 41836613 977989412 285771784 589366086 62827630 889649523 398243640 613662889 559736269 830664502 936825474 966895904 633345635 698337971 889973780 929105008 336086713 564557005 803380053 934354054 135632949 746317559 389665359 970926670 730070457 903301032 876459378 975893354 60357594 315554079 422108833 984326912 967416135 999507345 852538584 940056272 282530340 932344646 556115273 706153809 872022197 923763387 260904524 286235301 795760407 925333296 568147955 569803242 231434819 241770999 685282096 866160760 546188769 956792063 148874898 187352158 383163248 855779851 688908547 702473547 436232020 877698137 429762698 536895216 354931716 845752583 655518300 762114084 787955381 883566483 158547896 927168678 451152371 658916197 594198880 975762194 577726412 805680123 722972117 930173202 930858488 937926286 667374372 989551150 921075836 982476731 207277965 382748864 906593981 976739238 367504555 405180652 719637096 918156101 447325207 735619397 743863916 967734275 146417350 256979728 795863722 831403243 862935603 871949811 361410566 829376628 143262520 163450272 459047957 616199505 837084189 845214135 141848429 737819657 915774736 981276495 329974475 471760578 216999487 789399681 281628845 754315757 241400032 522775548 213902541 749732760 160572746 308632705 902463894 929452825 280892081 342974704 801050306 851477509 42052526 831729125 465643391 722678454 770692998 877389245 534604681 993767980 102017650 830361020 692747758 857656294 292114481 690511486 420384670 948985749 526218683 761136842 13766820 492728847 843695562 863691781 844467874 915339668 334755442 648060679 405432683 857373316 359519341 437594297 497944818 918909027 351906201 471351035 328841417 874826011 832887055 936601213 568122192 916507973 248997888 692928316 252694605 489850237 985103555 996610867 486367105 672291867 995303430 997415385 891698038 976427334 769520801 970739611 47633527 505892207 7477747 114486135 904198251 955608004 904295211 909293704 353587083 850099409 187700404 542463257 438435623 879259505 157229481 319461510 314422748 340827485 208564201 989790508 241142396 683478149 361452611 938878030 650944504 752405798 366074972 796926410 474840842 880679249 723286723 919149423 49107500 440103131 617760347 827676895 645864453 752565650 761035543 801782385 519687711 521524910 343352617 502876463 790196731 933437832 159793672 478933030 112491085 850818900 520875766 736635127 215978323 490840343 327413842 741186374 785219555 839863500 871804996 976449122 319310844 392948816 385743935 942086949 784892741 880332506 948174677 989866388 304069086 513988792 738856054 866076264 793909562 830550884 486101847 744338145 802247737 997877358 954450680 982410979 364928435 503360075 863384581 964747928 848121077 887013027 107482886 747914240 59848728 451247677 64383353 844971452 389265341 582452569 545469404 911958448 855882482 943821601 359105519 596338403 47959127 575508821 225269752 642557594 666302184 930919920 407024099 771494780 660868673 969334304 118694141 263933862 700389252 756688917 341603815 871375184 607921942 609234252 929488313 948543286 309421462 656273262 829834962 879023549 440946215 638404118 55178717 869843745 589967834 652525243 963860053 998212657 186083352 866050610 78284161 740766488 125720802 306449071 594158987 913134843 111839481 621653250 22893868 513239351 781113755 910671559 11143565 900932924 370987398 571083469 517332149 590611614 184997758 337107207 15560811 401495623 679386856 703862431 23121818 831857140 818148403 865824950 947007937 951091105 780168992 884244806 534564952 892437028 990171537 991440111 698676871 828044160 750744655 978559750 379500591 525514897 31495312 175639473 808801154 975364517 470662138 701021392 207532344 728804259 342573108 754146233 463201127 544809013 738857549 864873627 385204412 928340398 227803019 877605234 154818207 527591597 283495443 761897801 839740544 862487367 213045011 930844433 342684810 897342662 193392189 537756741 171576713 657368860 785621805 928937950 515828060 577121451 141824002 660149049 649961128 919429886 705489942 967566162 203896409 738038902 987399934 997403022 613173284 936954015 700863560 744785229 841683461 919705959 748720171 831593928 939386894 939829896 203701943 742321850 345588712 876499546 509480078 559540746 290104473 800059128 827507034 828682556 786127640 801605739 732578547 952225991 432981947 451242361 515887281 908091533 930037107 969474931 450150176 641374136 966288981 988987530 950199393 997900736 818427644 968512663 698195565 836016461 484235366 696254524 106771252 614020311 181350026 610539131 368731142 541640803 888255401 996983326 299280383 495757835 138051545 283395944 704325375 816212812 139968478 436072763 501259637 722656522 199417561 304082808 678341767 916927377 247288056 844615451 652085411 891608698 611796484 707392102 658167721 793285643 902531130 986954172 176051225 759290047 289639291 749076395 266526240 626902167 853455095 908756432 957176560 982908148 699482070 941103330 330522215 780745522 211548845 961052628 424266063 497725044 253950477 437007897 586608966 609299078 588253168 978128352 730402063 909467216 93736415 894622766 289477758 858420707 510863762 528372555 910129097 986851390 61892519 861711344 48515734 593481597 509837855 721415117 239172362 834214228 34468920 663714678 408510338 625119076 980937287 996613416 523184847 900356173 87087190 714265064 831312711 834222916 544114203 863100212 996082273 996825477 158122011 537970662 919819476 946929465 297254264 408834558 209519749 372502633 166906211 860452896 998770981 998952615 296745955 445415883 502791299 531143827 241842748 872737818 800943486 808554395 420398210 957752964 550111092 669942010 696994216 983563727 948435334 995167904 950344245 976644448 92870823 990285073 600105326 826193424 930656930 933033262 329384634 876864432 298742463 582528729 712268121 856151153 884668152 909315805 610411036 881656789 517362070 805769756 758541242 781412905 774296205 896219212 140603532 305615088 112315533 712923191 971862769 994628303 330121128 331791073 945781806 955256968 376116317 951157020 270242475 573672127 660019194 885543693 256834207 700275727 210189303 637718330 559876802 677922537 856512304 856842831 666819772 673353253 747349818 778458210 838445023 997161095 140400466 372306132 788991232 974256215 351062498 352436890 988176638 989462203 549006325 646368887 397126484 655543497 373628468 889442082 130847985 479362821 474551710 864553180 673656533 935004186 759873124 772950413 681700245 846880817 284848539 327118760 867917127 974892305 692079942 709404250 91021455 327040078 643984165 782749026 555290691 697269343 604081654 979034713 646417400 672239742 278820478 391518695 330199407 365928984 269239152 293198152 588087611 708155584 477347693 677466427 970151953 974841984 770833398 902151901 901985842 914430288 690289981 744250875 620006182 889875620 511043480 668695094 384773781 573286915 331833598 400210492 539251464 726331167 691398661 710668550 249311626 452614511 513707364 834180462 777390518 853101931 137126326 676455176 312085559 647069986 374150943 977285208 301261377 848304933 422422946 674349896 541538584 990888727 928435553 932283112 786748290 840180334 532709679 773706191 406502648 784128930 323426639 663966275 418366174 492161197 480545540 662588495 858483994 918245794 412332518 636244431 49833998 324575858 17748894 381290280 692052281 926942628 585619191 637762020 819821642 821440793 495393346 764153119 235620173 995700242 587055394 740901899 693254003 792227818 976561096 984922310 650723913 701769181 457369787 567343313 246057051 630205826 862818010 864487762 111952881 549165563 279519160 805262121 801665952 919681282 401210513 457049776 31557449 510334611 431446246 479544239 868954396 906590592 393882003 881749643 881758818 966776078 950600682 989713453 953981950 957904543 779353919 954199545 470343293 845137477 840697511 933298932 443363231 518482619 950722562 969542478 638122929 796726937 160541902 741856645 582549019 718600796 461815018 881093874 633814855 931383721 508701135 664736346 269117752 471620683 994750458 998226832 347542942 543681354 536615919 686815550 991758458 999151137 280726890 441816271 412754220 641924283 36826417 759636706 819459370 877018231 690770096 993841988 539585486 680506110 535251091 617875605 186566156 650645792 317496645 710560393 935396587 953569610 920280069 926295219 944457508 949052545 380175038 774104330 339985110 723997383 498770389 620076186 262819859 920512944 677728766 715837481 776387356 913782721 625468924 869984706 70373611 566125323 737527851 880506172 970406564 980411060 77297724 605200997 843254683 892249674 67842558 764671414 470336136 826501877 66285158 808527209 856253710 956132644 319144688 774099118 960578112 965272830 286802074 552590307 152882293 893998187 733583614 938017449 136911566 740685620 419319643 502976681 892879057 977320705 454991689 692011827 52300204 397062420 541743954 552837301 630778820 681596266 243293014 910982677 712326410 907637407 178711883 694574256 254866280 758689342 859822335 862676949 942097776 966936400 609522969 754739193 380658668 608270903 35407410 559416890 722875743 810793974 640159532 860361330 407254182 634554821 205629061 376618433 675562773 809270590 64302317 246242640 507324026 584908769 475826103 711063899 796889649 852759387 308958337 784324291 736291707 769697218 533737823 704135757 634557323 738917113 693094061 857314305 675796564 740365490 57054081 407541931 278951257 300931043 733106134 861171136 237886217 640789566 26860527 969162924 814675524 835820583 589442369 790882295 772019013 955312075 520552069 566113288 615747669 795852157 850221182 954330809 959659538 980838373 584608700 855512761 331132483 802359425 656623930 804040496 633979273 672985297 95169821 322359236 890006616 910709322 220912961 467006789 590091031 994477880 452006127 485136630 413690623 770226408 816345598 947231799 938423211 985942071 609022267 978781806 588948797 615039405 954870267 987570212 1285402 969252270 720072794 953154331 963538987 975921680 526235259 965244138 325517739 421978434 352226358 611665126 604988437 951730806 961204185 964042846 83962763 208932793 619588277 833130967 427934460 705645843 13437625 168486992 102462448 302433783 773682113 837201842 512005660 587486605 159844122 543095947 831278266 989078667 606369771 789393005 983918646 987783923 899829969 947969133 420377116 667666091 359853374 729811575 339870172 859546631 487056850 634540630 721059553 966184766 51066333 404244943 350402725 549908378 260580130 874587508 465771767 825751832 422010451 556337881 740580458 953461837 650490545 809829753 572429321 866988021 835960371 982067623 489264153 614056574 611160405 962146118 760260959 766731287 743532721 876026318 956205579 965415444 103812660 988979062 814274877 995016877 570866741 859642789 748212300 816417601 394900182 487426848 299928908 303015188 955163620 981883390 241539452 507809152 181910906 466853243 335832052 387805663 740530949 778778650 179407667 843047784 195977888 342369256 12500288 844455792 149978108 853788776 114455718 162729185 730021357 783418357 667371868 733548259 419680010 544570048 627321705 852488436 175371641 445591902 41468865 711611393 268069250 434317296 397419942 844845758 434361869 707100435 451158176 571033013 969288501 971651393 901331524 968083426 916424835 996287786 821668592 963993490 474555898 943317863 502461273 652879464 747355093 969760997 133688243 349029286 752181711 980122371 575837851 872865165 686375292 895925902 895432752 961069071 464221114 774011081 526444044 949108895 157870771 304722172 675994878 922070031 144919851 603538022 282477369 785244039 977103621 984286386 819081463 970578466 542246909 999938874 420563573 561335196 849674822 983267701 493492889 745253819 568663691 881645973 775426865 850105310 918161186 922713612 93290808 114159012 667830807 876991300 486613883 827945969 398227598 420053104 350631781 500026400 899612317 909668031 788901341 795091685 207451635 568152110 365435757 706177122 401380352 758751127 133763081 321485758 795508547 926643607 780066209 824903132 77947402 674261770 899961618 940276200 521978771 708412975 197823493 709968183 316572316 507455343 817936314 887453918 612473710 666800139 740051678 910793427 949087795 989618106 433905785 453668682 696943232 936341121 349402657 963574676 41731853 572269933 820445898 921984445 695151846 972805444 874492551 904153306 487396263 615986025 653106232 688533613 298433646 856098136 46515288 129804119 61804066 995081846 102427976 423851337 279438496 788060082 2206654 510063176 561704387 713975561 715288381 991645730 320785368 972108255 91393700 318662438 994303896 995594039 627014407 707647526 92053292 490882841 216932053 601005442 507357398 980409899 471963023 857591665 423967390 838851045 857043589 890831548 472502931 515932657 869431595 891166646 869322297 996228531 123948491 876475992 292242757 799505150 881555232 926444244 591819052 792439023 715798959 797209469 677649680 711372053 801589798 834393477 44652053 963212954 283161089 287756640 506646921 749793867 755489508 844897902 101758128 146985049 510354225 595654734 597598051 913183880 764763586 897410943 5011756 535349269 27213753 516361688 183365067 198248966 275580089 952587532 94037090 718460166 229728927 636168580 57341146 598161891 626179045 768536150 386059511 614864356 550075263 796891803 519870876 589585567 427313705 531542851 477254305 680628636 70988508 225874563 43258487 682920262 227871768 686887075 716460977 791561495 917022022 996014408 623048223 643675967 194092037 805828576 145169866 812667316 238444633 735546063 801685739 813686844 753427556 931179844 678667157 895786612 557904670 998136481 352917798 888607492 406624690 578006928 643129534 976406400 498150340 834502543 814904691 863805558 122840604 289494533 894609297 934201523 777230657 788845405 220397011 221229817 223753465 367681316 161911300 827462084 367683192 796168342 440763976 689897300 818803130 965275521 18488402 466847994 376870832 989254979 247357603 877228883 827421396 898394924 581472531 748713691 695441509 714705959 826312112 940643983 830405499 919599626 994384560 996402194 401261193 573732313 310553673 993185408 402177605 902715140 694451720 972339820 333042128 968650597 831338886 924914279 407616703 541880922 991428998 994662854 921436842 971515291 133478152 898005031 42915352 663421762 469952901 916105652 124181424 651601671 412759884 825617744 160519455 763845922 579683868 937810822 823067871 881622084 371595405 688338164 921769716 966287164 808864204 931764251 891173598 978681132 287230760 887591973 425215348 963997993 946755229 956870835 866141169 926543084 143409063 419624008 306140023 697760198 383492473 739534072 491492594 959364681 516974792 616945296 526912447 902453264 403895067 540844242 380782142 785549049 831914907 900335897 852549167 882635916 455365358 571945093 861572955 957628043 66262712 927042779 580711629 885997830 869532911 980737182 497975026 525023675 4532689 459282891 965734605 970192497 51362774 378337382 426254420 624279135 669109829 890748013 754242051 901638075 117094532 599922068 84735825 900604195 908716060 970289002 376585020 710057607 733610806 828863406 140264018 525098610 20875534 284337695 739015959 740496084 806543765 910380001 825326644 911814035 517805069 611247610 21309643 540407019 644938726 780454026 145660190 523854360 665161041 686847220 311240462 444430515 420692013 745125401 242206110 654997522 462379104 775612632 689765205 811144995 379733200 834139047 9744994 459106093 273848960 310838782 80726048 794942549 434864285 494143341 454634750 622786633 430228393 640552508 25141268 834023172 74319742 733373117 755466751 779690243 179552582 294931688 279851941 881273263 308864282 857463311 412253463 767478111 181189286 690916821 25599705 380998315 477138617 817824059 769344180 946347078 191720330 237514685 779335844 853604812 166540287 812540604 914599163 958829963 91854452 367047491 146274997 694833167 169542792 280123859 737201695 859775159 53845277 673407386 655391688 737090230 353622175 498199285 838896196 997740293 892831506 902270390 967131220 968638457 491657927 502812142 482619799 928979814 605315314 967399705 35631164 145949348 196637647 680630033 821327250 938857999 706766879 793017081 155289511 320681184 700535779 804715446 820910316 972811856 487018353 551282029 338300281 976400852 873817410 883845982 469414675 629962659 802490635 889489383 828141875 863677122 146042269 886713526 381447576 513886476 809991961 863122780 200439293 243589220 701780324 740089129 724281085 742437533 927060033 962490758 588469857 724191137 595231272 891187547 882354807 926317678 219542007 336459867 56710643 843273451 803913902 975950779 890943305 932089771 152349083 816819191 324693745 465309744 845058766 903315211 887600377 981113770 544268759 865964576 836413039 977303765 968976518 998836563 28712905 941347364 760725614 938499592 109244262 138074250 846762536 969706324 85080659 166560692 484130391 912036790 964944684 968213832 631898596 911389288 283083504 829486960 219929405 298410125 631566940 995552326 854316494 993351737 483064894 757521203 275883800 500804639 737579463 911707253 681266828 820681106 86326379 299596943 275823807 816088031 657615648 741291911 188912120 506001830 736010121 864125753 507027237 900629411 506091477 868274665 876075045 930825507 767863351 951596674 935907308 944938503 447090619 857309918 416463012 607471041 771307134 786669584 625329678 834036289 253533067 723993830 414058861 785920249 231962156 910060310 479886385 959693720 32463961 976218108 151907072 668469036 707756971 789414307 36043620 854090882 96917344 481015935 893145588 909986633 67288399 483043844 63009281 458832521 37086819 461679248 52842059 538956197 886999918 989502967 403893856 714744538 385029335 968392610 609683694 951761091 324137098 741355605 50265017 550252788 325010150 658650357 48186796 511436826 318408061 918373241 919763441 999183256 546271544 712533025 508529489 797563352 235450131 511591376 18490247 799761140 116388580 237064127 868702111 885454150 609090747 834887520 982889438 997039106 525032952 663835886 844701061 872268890 466452844 856099268 575671199 952783980 644386549 932877992 993684334 994882323 586043903 880110347 946328242 952511391 528781857 701559467 203012903 456503522 388439242 922399915 522454622 760459478 277731733 856594311 22728228 711769179 901231194 902496406 476158076 681395694 870034871 936533831 392225682 671072851 142395109 690777470 976977836 988057981 919050934 928626905 404893614 534722060 155172050 879440270 549549983 824881217 108807775 895966127 600079201 994417099 353231455 570399053 977747614 978379683 415994376 684731382 63059194 714172559 809848830 942644755 38283118 648446112 720708108 752584995 71338965 992221544 47867573 271048117 404178485 469708900 532865174 791009098 523960755 609814634 980858125 985199414 927900275 951524150 443432202 984114287 464526737 567752347 232608127 709012388 255369794 687934458 596592789 872089241 780665338 821603298 881896789 935782382 774928285 832014319 480035586 740328744 84219200 415983670 779103348 977876701 533252032 619971368 203374605 408753114 562577684 662308347 875750397 966785538 790960037 974379145 767454130 807743208 631114135 965869419 118238216 139270216 449616573 450057683 91202914 455375713 459934541 801752297 618655862 633316781 730793297 918464522 908315992 983088231 963455831 984701484 999355692 999878599 334461033 417830488 201831712 747508819 441952847 732306912 933804383 997418114 695255576 825314380 942328734 979722647 376145967 431308324 201683096 260769297 747692513 762188600 573645860 750598327 634264278 745360987 895905055 898273878 903146645 999813699 371292826 670615218 87762094 332010056 166398213 277632228 620080109 961291914 458304293 818751122 213450473 565476090 432037395 687367770 232338501 947494587 538156711 694890228 752111552 896453397 607704351 942560997 734313133 930652882 485644439 952705023 973095465 982006661 994058779 998215712 802658774 803032813 116542042 371325312 305027339 323850970 560641619 924053866 939981138 959870121 687587911 897844035 209105003 488069848 179135262 527361304 692413070 988071742 508253984 625584229 922662506 950890142 151366355 776033384 9274747 344478185 148845778 332129333 530316238 669198357 642354835 703610856 443770124 567115976 291167023 309994695 685886240 747891629 329191281 885733114 307138874 801613301 726453259 981580142 503827116 921893484 633060099 849169286 2166598 312085612 660687050 691605043 531984050 903260045 552633786 927000659 536959863 784280914 782457597 961434980 748188160 859347056 565360979 574248213 465931957 862851255 886770333 913101119 671958494 847917906 385247320 833188105 971443019 996279738 118755389 706308918 605173107 671385681 399533462 744875748 477069727 911297966 864642114 895659161 676859455 882447686 488710 522898529 610571768 980748792 217645856 865696809 128700996 622563056 556261761 654578404 567411886 978543184 746823068 988267454 303016632 579029648 737389497 785652830 92126025 143510184 513875035 799296961 473671784 534629540 989170899 996619062 937768162 953741562 72580612 211416860 339900265 505658443 937599948 969052817 167371020 618295205 270443467 955778442 2969118 680211359 424946181 868233830 905997320 971476888 126221342 664736442 599912928 622026369 722684841 894044880 594882653 967698478 193712478 485641580 451665063 957184640 527574763 577012505 105116903 955587186 514689937 901611930 317941598 986496180 963151052 999594414 13485744 800487048 537888731 756944609 250958434 724432181 224239864 665144881 237911432 736025146 912275645 958054090 903936823 993358320 966075012 970929397 327542766 990521291 798363530 963846771 652793585 923265786 225044815 461567716 87966935 499462367 951599888 993702572 412944399 538778195 882359283 995566216 508062683 875092281 986557910 992645722 32132092 545825407 950842418 966984769 521902573 681696821 287825317 464947051 32002534 250583340 544939650 762341883 885880528 980752111 942063465 942948566 223872972 956131770 785969317 804547077 38665332 599978193 131488500 844989569 74965764 370951840 926585509 944459902 801484664 905395302 962161577 964794997 366006027 816049189 630123922 949136872 648921531 929761482 967517350 987034527 198997898 562633290 696198136 762808766 966411966 971764746 315150253 644850997 996896178 999854820 745585290 935922781 78405500 144493688 88228688 702665064 557946256 935193394 563815986 969845045 95439714 137532969 244009998 405266221 982620041 999567644 825977963 952392342 288681751 855779865 259797142 627983520 931290051 987863628 969485365 999257942 627346144 828457621 309834000 429807580 551195593 817595064 915724486 987268555 210813241 504722468 302645652 359286803 448308908 819957046 510899037 768778766 22609404 815874137 735729605 777821806 284170508 830603366 359420163 369267109 440311335 840906226 172312482 977135377 772970420 871794500 570637852 916914999 729325823 737322126 208563989 800982913 390864498 689406180 60063096 586040294 233306613 991840417 584272297 699994580 139997732 912112657 742686306 898362975 125423767 474873438 317404668 507400528 274413013 714547214 269047657 458744103 315426882 657409885 646149644 709938226 27899603 718499993 209918706 711741664 86160106 140086974 260064323 706006919 414639883 490907405 266330107 574820800 383456225 423928364 732489290 974205305 841033873 905123017 746009122 880061387 713368115 736059348 231045300 678411180 816375211 915196151 250626404 432978471 63530389 636714529 467344479 946995514 319661574 567820510 215192091 856569824 340402749 763347336 691887531 769822933 114376794 441282955 329999683 420503876 383884360 713514750 843223501 868494097 289849855 494605196 286213057 537286216 641124621 894282067 800616713 904936271 942173046 971530889 89853709 520012616 553317361 917111757 96659512 566343037 363085550 916672512 387332150 893290745 768987391 900585357 533295923 685581676 97308597 658181106 129632441 245993673 134331576 469296366 710219847 885785647 910137189 940596465 505574017 573644550 472287790 514362548 516931053 620965257 318932182 900353395 100293553 326439123 349422801 401679974 235878490 439755659 486580981 976501048 104197891 638070273 934221618 983797561 250223433 501015968 667801725 958296385 777182761 872382641 733651997 804498073 548046787 661239518 187649492 776911237 714811134 860757710 45445383 79251706 857982812 881530818 497835543 938677994 156245700 934168344 846318326 960551461 39329398 475807905 257053753 577380725 559055595 850712435 965666352 999397900 152549652 898588711 201803747 823560988 827794362 901399023 665790507 674462240 36493562 398017643 287789860 775151474 235868640 287246903 110595948 391220915 851673302 899218737 735539431 905202210 498240663 923163557 103049310 212364247 215137709 374134522 772732879 892671765 882027816 960602620 180958409 553069128 819527451 967662832 142798765 918825662 404741111 486429407 920850629 985257501 199483847 947468382 598253984 847950544 536489244 796314080 135458512 325650282 236808885 844313440 231413684 292193010 151705391 989827463 17724500 372159480 308255061 451780570 733290110 917865556 957574557 967260884 233081578 708490153 14220998 554849712 20310722 722549759 111905103 914952637 867709169 897088939 50013031 360901350 540453660 888458146 63317479 258729995 89332277 918156481 587232466 852700450 743332431 894880988 246961282 418835114 71681625 587993785 478226723 528872381 915530529 983034352 978500645 991053647 222356408 286583877 150588387 480822359 260571520 969794290 558203503 602818576 2610274 862920421 622233660 781427634 192557810 814950948 586563257 959139500 323206280 841810068 20100402 990995194 482101923 861573736 852813464 914700445 375222544 964350762 244802847 640768487 72623910 239031611 53009222 586171291 464562658 981301682 80342651 282316479 812101135 875825345 207890734 417482273 547140072 997068566 847239596 863085149 213647846 615309102 909305135 920109797 15621698 504911544 108422437 661824975 872984563 873303689 995810182 998350312 872069668 901390902 151918119 210926736 935711659 969269910 387694550 803947022 702175562 846490062 295575494 768511771 340834273 625808931 69686328 695295268 541172594 730174041 961567314 980185384 815002399 962430970 841629969 996328616 657149526 875073306 753841636 836116245 425106092 507079349 628986184 976651787 256334714 965474598 503532644 678044579 782231671 830371127 483172127 744847228 824973403 871080002 956228256 984704459 42461794 677022710 796230841 909713424 355325741 831758931 829673901 933617441 981124524 998278404 580932896 985956193 937770896 946706158 964064580 973780306 491169432 712902406 999031029 999681369 338932786 848069090 177894863 413123757 874542695 879474855 902586869 968652942 996832758 998038206 363639171 784123700 164736987 659402280 77953990 761350672 224731514 335178053 278828510 530393435 836101469 944551766 29283260 233477744 496550650 628066471 376186505 821740520 163529977 293749701 678224548 865156309 196645042 806786701 910635349 962348044 323984239 949184674 382881063 985433950 685332364 988032973 935396541 962517387 237508103 761806908 223223802 754527418 489138350 702680034 858123410 963250785 631053903 729929221 906309019 973801958 143720506 783880536 722388522 771909187 259958928 934566391 736598336 796473770 115014284 435016411 187535092 275942346 919708297 963760562 951063923 960697086 391925364 463743120 896509823 911803543 291788560 835806477 345385860 891675872 221160150 534878716 248497712 641670390 786299103 830786881 852731862 998180269 613068782 811328422 220124073 452139550 327221515 711667150 264146200 753419639 228681674 848801767 913664127 936744731 341314511 695211727 458273449 536051677 529836690 748146541 921502850 951438280 669722154 972062996 114837846 547754333 148740315 873527357 298160786 452374971 129301003 306857287 613376914 877274206 515157659 707888929 948173160 974475169 681884576 783173979 782453815 851975073 55772403 237435727 798134321 966243178 598645557 697456853 959302730 991767564 640799775 792091402 722856022 804972404 948233650 975268134 504204280 777557569 81800858 203355989 247187992 508796830 609320486 720773108 273376915 512273463 309142917 449027304 637634296 706359983 513473696 842026327 778758099 944870084 465866373 541417827 386351318 632274435 126224202 975955023 374052849 584554169 864856321 908172706 55182212 519127229 887486188 925721574 749260026 959897980 249904472 705655556 750783432 800126961 750495937 942548149 258249470 408343307 531647287 591630181 66770876 228383957 909701665 934469163 55234980 275457657 771905371 779576259 510704625 650034601 773852783 920749462 894024725 936652408 250149522 457286010 427478560 435635435 785721591 900076414 339448464 600438258 384342368 816310173 532084934 828234411 397043571 776702035 167802035 936506152 478633503 689185985 108613055 676644446 29352678 434132688 918544765 941226944 255542748 781225259 354233875 745763198 444007972 808497602 865195284 958864984 126133607 817054917 210046080 512082773 891944913 951934074 453725640 691082282 586044263 741640548 325378034 563960981 913209605 945768363 295985255 314224933 757515312 960091366 707883089 983513401 817411490 837759965 935472351 995995713 821551820 953199153 115711718 298106754 541026590 955256464 906428472 971892260 131825233 998075471 656883213 688501419 4513297 352288020 657310861 680086902 880178136 899130989 693672385 886359327 767349214 848550004 82016252 925250261 434924588 956454522 227137971 879648828 552461385 848357829 830669333 854591342 234570273 608200597 899838978 921986173 921963815 925230022 54166592 774919568 185327490 723494367 671109622 679591250 672090286 844816583 901269306 933485709 57059922 602349669 460075113 581467669 21918785 657863412 970993854 989725568 717488857 771539695 238891530 455274281 193162384 575140982 218330672 944590355 922435676 923708666 804114061 888005530 593968304 881653028 880555512 917646949 830421258 860932816 468402668 480725595 818827955 877016074 740312796 771478150 327693823 356278862 159996308 212762902 710701645 754848465 790960702 914852253 366922527 714859742 883995275 956653732 442735375 701031007 519060909 837922657 685659622 695077778 921590787 990725209 934511144 981627633 688032037 815309342 767866690 952350992 341134166 854075020 175048804 514275890 120624412 194036851 387951322 719928047 921045026 945222459 152577136 271569246 705089897 776460891 518341817 877356400 29655233 290101136 650199462 756910156 935459913 973926238 164115003 294583911 463970287 606329424 259515118 760435821 581095026 634356731 586796766 766316071 519768414 999390055 91707107 737173842 893834800 950500194 72162719 562074325 482078272 859964849 845548297 884740561 237397426 483812043 221618049 561555051 637236029 818550127 840862194 938970453 732562739 800741036 266930557 634418021 178736171 641043404 150264568 830190780 227817261 482395383 612314828 772583830 240198716 997491256 936249001 951324018 647912813 879130047 152980518 300394313 122317976 595383079 385793995 702245287 82798838 257217322 649874551 953703340 683717326 767460789 544522838 693234865 843061063 888277922 183620733 837100668 148587916 254162751 458811024 816627406 904611352 916833560 962174359 969807296 210845441 427598239 999751994 999798574 285318354 663877243 963216660 974149247 520526745 947853565 933874866 933920593 110927215 725172363 632058735 975884038 838931444 977233848 695944990 732318437 55988817 338642937 878358116 950322142 125656075 278142577 184198197 659953787 538169334 778531318 201450745 220234314 68766808 743502236 881326234 902537777 17140422 629030106 182451356 501404840 262271108 316223172 544173124 881503531 718123964 957104855 678368667 881058950 506676602 621245548 896375522 957695681 69641609 468436853 960168951 989445181 833748029 938396937 591298231 914959084 736158125 810937760 93564666 705280675 74970656 936276756 695984034 817215110 854790327 868979533 668112217 766088034 147315818 183346945 467446884 668515570 725711035 922804200 238113446 695458597 239659998 598487143 819400023 930862249 512999771 717372942 39021441 618961522 25465574 891632793 378978690 959811238 535372575 584479753 393653742 452142681 302360365 533340552 763732895 999131001 11110631 454406914 110091777 188937175 258350665 867122447 667012010 690790736 707679592 965279123 987307574 989719165 57016236 548201585 506079534 625311282 971095351 986628896 314316421 740706004 800769509 977542032 272869240 855784590 639851392 746161181 849734154 880428228 880423510 953596488 580613635 634853730 241841463 471015965 314321198 966022636 363073172 587769972 65609136 850508487 664754699 766556084 426045844 747912982 703133067 909675220 899995757 996421202 818490217 930484676 950147005 973469881 86523878 149560309 38764503 259448327 79211993 244620812 102727187 965090179 930403198 998570911 952805199 977430346 144444903 785165208 348142157 814911380 534686752 685262384 693230612 763896627 671342629 985505087 919989409 940152478 683235671 827008315 140556324 326540850 517079816 742922001 780807606 883229359 758481281 925764466 272999313 996994364 238083570 332468232 250439257 729665788 550920594 612944312 119987548 843446705 12601014 449868895 582282540 694641543 497037356 829667406 776978924 904110882 77221046 922799507 252695545 928580811 358403760 715977231 887270722 898911220 155095526 989775033 970531647 988460054 61886551 944254011 212922880 672756535 170168178 621781114 360450972 731519885 609478169 821956707 873243550 930171514 202562406 538357087 664525263 881349375 863382619 990843883 358494756 562873466 511641085 998640083 401879266 764219509 776305863 826155952 63052158 527640349 412150029 967902595 200399433 596133642 587043795 966335386 406958890 990204390 729130676 819963564 99778477 134322083 996508138 998145453 926337492 947137996 904696818 949877046 323010443 411854956 144534361 626321474 368539725 431190922 226107214 955576301 599629374 663825020 329445689 828830796 341956811 760180473 384549474 441989344 616182311 913701534 226529888 829687780 58342207 376012368 242770781 759107808 921508502 979483095 419685996 896595527 998753191 999046670 200282773 477929892 305620155 559996283 171764033 415937221 777971276 801197550 914467966 970299085 441677163 513454323 397732648 675854551 153139653 340135762 43873989 543243479 651271526 696069121 48867678 690371010 782115294 986898447 435328161 802517131 358433354 500180628 538370365 892613414 825278305 991755815 817675478 880076208 291610656 881137628 179220605 866379739 384455796 482171259 64102942 67701541 130738161 962518425 419491691 698118230 854576824 860005305 253037701 356414103 898311454 898746213 55581867 652572314 737330878 860184986 221132180 491332177 419482603 704625838 639018978 807559531 207395600 650918583 854651320 878909458 814914145 983579940 163428016 875151287 858405501 928093036 500947588 852113937 739518661 827329469 114960393 514893723 514237733 761619382 994820068 999167986 929382305 934013978 891688742 980643122 714828140 752232702 586119365 911375663 723410513 843596416 306001127 833830347 510545154 913820923 776473011 884048821 769207071 923179226 450793960 598514754 397346493 571564751 642879998 679614520 552204913 739330644 591807812 877586300 913658827 925621932 277136617 953245671 923077554 955495049 760833385 950500339 107435243 423750866 627092991 777277664 425253051 911205305 300538385 597151084 574806942 737206175 763840015 856384252 628984842 799403138 155453320 796311613 661545567 783095366 547559832 861372568 152411532 434271534 234368320 381366106 688822726 896616104 360583753 672762359 261838228 870452586 968673071 994315399 141758990 454188264 983399044 995053338 27865993 56386241 694570310 945020627 205994262 819185147 151403628 286895830 211936188 862025706 76917839 964870756 173147938 440754858 129567742 540922316 331001605 911721614 950914299 980608632 913188638 956334942 882362248 892377820 755737942 886831997 806979301 895418942 494169636 769590323 403642217 962652327 392516090 542146046 238482019 954353882 85707090 224593183 992556288 996372985 462749335 678893228 19983395 438851215 640314610 982370255 353206808 790863911 428084441 565241144 766310665 964511897 874540890 888911196 766487178 914317820 160382494 442120567 684248644 740554889 388806245 526922443 171643493 580250713 579437127 987200950 299346439 665426909 163088102 580554201 880111717 929102927 990489981 998647431 456425515 856998559 656632878 706094078 772488875 813434889 913702191 997775282 376639331 921737700 361060415 915272696 31724985 781378139 812866637 819953342 632222308 836614238 295481130 912807068 638934487 716208468 961160035 975609424 201543033 465720109 513978684 870340438 466608861 938046634 496221882 636260627 230672563 547329109 790327154 954063009 247176698 540882357 932082856 976701432 975920996 984823241 422852442 737861140 584738631 777965407 723012610 841023705 650576786 805341232 967840173 974589804 225550639 464205255 89691554 672681298 855344912 889859883 863629521 995119502 30488418 709933557 39413202 913000138 523039430 902319232 846961556 995390620 344480194 522651278 954781368 989458197 140603110 173762042 630600431 963263899 535623998 665452166 154742695 366198146 136355628 405427627 789193823 882207194 939456118 978299826 332168408 908539693 955790930 988666068 876922014 970059296 584980420 624814928 192880358 909614657 977833808 981971643 302440939 859592576 176804938 625127084 402496862 614651920 127591501 837431610 861998424 871860032 985947618 991805843 8554332 438258052 335614952 950387680 275418848 400133858 265566798 854484382 240609226 518394025 942511208 992917043 397653333 463292691 56249556 787993698 840622707 879636089 150890820 853451408 171884884 358656303 204034429 909918048 818553666 902741000 406303498 874922462 918006967 938081843 128303941 865738699 127980829 626833954 630855107 970992497 101475543 172498905 460241877 865531721 763917087 840056095 432928507 801784625 400526597 866908659 526147500 568346426 726244087 879812158 603357047 834945677 770794974 965288062 756937774 837476743 405629687 513376549 222931253 319478776 634199308 676264583 783791341 815328012 706174120 961612170 422667937 951547603 580044395 933854164 306714603 489413794 367059487 432552686 390930028 700212114 129133508 678757721 529238779 808198322 442007402 804285311 161055136 440227456 209551862 885274303 31145296 359997020 250661604 306292805 527524912 608134261 852788319 996172933 704977458 718461052 295311220 403910430 232457096 349626421 277345815 453175982 391520924 764325449 838127311 988729183 377429136 472931876 101612318 122413028 47510420 591562742 218530069 664906220 288638530 741786045 395032625 710542651 24681342 923168217 847074183 873486199 647720413 854027391 888997338 968693596 165245257 830452896 936275771 947891604 183138066 624566648 599329154 966385114 885159153 912067260 294335203 458867317 24050310 580193291 348618651 873482505 401194121 866146318 577240345 591915312 306356159 376960394 363926259 367102036 8947440 770977144 575358541 932095457 170618994 691093440 658780167 774759338 435565807 912684119 633984087 827085558 556823803 987266074 126230447 340915154 346568365 845603146 892698392 894182798 637842461 858898248 137341287 572649289 424670558 702562511 928878837 985269841 34302385 74187154 438325203 671546515 688119413 891266760 497157850 772540092 198840746 624432930 271081762 752885209 231969126 242475309 768793261 994777630 2595235 860219953 662497032 717584550 967005470 993106223 506126220 661550558 604794138 640372442 435738250 480687033 520277626 845743364 902414348 929899053 762823836 842657251 119852855 978262842 661677861 892454133 201092219 702938352 234390083 296905467 894759167 899922050 946916281 968754836 175396771 251708163 118529368 505727232 916335228 925951377 222956651 272623065 621797985 952803455 449547806 829080984 63169128 634182121 227765517 572264999 833428702 959226006 584174514 796714962 272095641 943402031 950291958 959278532 21878153 49178658 602999855 606335095 433796108 749340356 352088704 975033238 482084115 645271013 504392660 993845555 138704249 629351572 613180094 978309347 358676721 505346368 567756869 600185958 162675927 756385950 879873889 891954491 802599648 949417916 667892531 856352452 713085430 758913117 213518289 797744705 782674678 801469248 981129746 998479526 821987287 880065328 719457258 746644121 642644007 787542194 608935815 630520730 706449355 734225111 998494370 999317893 473308249 490930795 248923767 524457411 425501417 956994501 403648807 427975990 719225118 832771819 373751260 569530735 715486963 939651695 70740762 744366293 641156058 859817187 784177592 795834359 420489789 478092081 767964360 803238876 729637502 958719294 259461132 618693770 606958382 935237987 839827342 950895041 778109763 833111919 823008140 953728238 71218829 818186108 550658060 557050401 743347789 753184322 510244801 942190429 680140457 684948176 842830550 966009208 650372993 905690000 76998325 243637194 658552839 768857797 200015134 630130550 326840144 595858544 786675212 955104476 420426619 611193697 623759495 865720432 718441022 995666553 979210778 988463221 200954330 948642810 129231133 627811818 394834935 486548396 819973781 922337478 512707398 819334805 991109385 997267212 682687819 812998824 105845171 376989216 388252345 578437482 642807388 868522780 839481830 985191428 257929816 667022646 491715945 671036220 594258954 966635520 853676734 979932394 953026188 953896116 454085982 993309557 178876040 193010836 289316674 886321916 941672905 994693047 467417760 964013773 606207768 980774027 213850350 619163178 314183381 839180207 559846686 911010380 395590484 775258370 993398846 999333661 809893262 821522694 685150019 906714518 272078369 284397168 336365452 462339226 825512080 827350178 766094485 945737021 833262498 992160906 169473350 947847748 436526324 688178941 40487936 452909418 329864998 712767468 884057553 913306219 89630432 199878142 199637637 434364848 630794970 925003015 959369075 969356440 431474506 657457555 69245681 527792039 370013674 537322240 783697389 979154663 624662291 711124533 484265264 659770258 118615141 172083427 512096098 865577207 471468894 980424531 830282370 975190850 832645959 927112099 7744067 660939535 233850579 604293181 725858073 925589495 627310415 819539054 710336299 924399307 526158651 832738984 562330473 739726434 115969904 692364946 382923689 520457508 153003326 883906014 746459810 763904529 419946211 658733626 442279897 729128506 7320538 342126524 556773047 831119280 4332000 790928770 45626215 512983847 288877523 423489859 141690180 714425135 830190112 844926578 843130004 929348701 494561556 926034475 72927241 685234587 301675228 562645057 453209848 569303854 463437959 821111748 635713571 783311909 688252960 696343119 280809972 733711736 1352766 308911391 719669630 849170574 978324501 992619386 794216467 913362137 18972012 350461399 695866458 912250965 939347583 977394465 603691481 970465541 108315387 336348911 640437993 774101073 903346394 993427197 195750980 939474333 227331990 455962232 935985850 983987091 835113382 991131913 511461411 515661371 75483855 134755628 98437385 177562436 618569285 732465911 102845144 176082586 544287527 823657339 90077646 435449471 455306311 555504777 487115274 902723232 873896182 880208119 364715561 604754773 756341636 832889401 348062127 975379265 960092869 963587879 655935922 837337408 261709408 639793491 479758557 906631551 424520002 798950875 903271239 979317061 278635367 894826341 822008290 952662742 643897997 819163645 307861603 651996841 970371089 975263771 233376969 434106158 75828734 923942277 590504533 998964650 950005721 968079795 124920961 188923081 600362585 878298625 826177826 888727365 126901172 229548326 238603228 371185218 663103606 952926845 659086435 997629099 655871350 987202280 251805625 593427081 881937604 941748777 681084987 739949895 125001760 907408602 912601271 947477286 928254496 998979063 790682420 935921722 879747109 974675422 116122170 510925708 22452730 744078750 510496166 690755569 865161573 932447184 99532426 256034791 653133289 690427654 271644684 531291071 465712096 825757481 803531254 883138466 444972854 722266635 134664230 725814852 256473350 780716036 514013348 939407727 754058028 965795133 327100988 629852661 514110872 961785074 48591505 740718916 685586901 910111227 315507354 845492770 828363743 881072571 185905830 720850254 275781452 610821023 599463029 672327610 895160671 919324462 771289298 939347578 228791673 591285347 150969222 354463318 251446921 804643777 368071397 962538838 393626749 755140020 336723724 620674469 496388982 910563534 799915048 979199193 168406698 261732818 425697381 866698463 583027859 767066713 817250117 869919284 412932697 914473086 223402494 740044400 344875395 384502429 53211819 236430658 342027605 751198638 158318851 566942186 213422581 433224580 386653618 945375719 571897179 931654295 394768477 734084152 571339473 885605064 245477287 987879888 978045157 996211908 695728758 906162290 236034973 829441659 661473180 714765426 807337860 826612134 841374847 889455291 180409350 410675896 970694462 991240700 513650883 560199836 55267112 841527060 278678716 577355101 139782850 335895385 991898696 998013526 394899460 932033672 158315966 566238721 185087779 652777296 682897333 941576001 652979115 815632633 865254597 967865188 223263260 924322557 720084415 880271824 451965060 873044614 881351684 894392554 99104166 311650098 813961559 949401406 45867504 787275299 730999374 900564493 466728944 718366852 837618580 953065811 923187615 985125096 669781416 889557499 993346613 997701780 31478201 754498002 143823742 511381784 827156567 934792015 23438303 879980771 778634682 802888665 685265249 920537084 851789915 991858106 138700392 731101440 873639339 989891225 925439610 953175966 790783643 820810933 257985046 913142891 477250727 931326389 810283718 839371472 43733064 129480663 845957009 937798106 305871999 764223474 870547403 949184718 170699698 309906366 54341467 450822104 463152562 936372520 976074021 976118236 269527552 534378016 708798320 783701944 701805234 767232722 840241802 909832098 591015772 871299687 253634792 824768152 657946151 851681510 487868453 606787878 785299100 804727783 49359584 149076410 212965328 394961342 593242278 776655302 789238168 936120970 409921763 428412182 845292708 967604050 988558415 996442773 524667632 686441708 500807860 956540594 99868265 773163142 361139716 629398124 933789675 958742236 986779291 999769811 102230538 103197298 233686691 416461497 884373107 960289690 452449604 917381966 425653164 829412244 147237582 471480855 965203782 994320787 673610917 835210994 882837898 925020606 936551370 985355086 677148618 837352262 182850243 230388520 41069579 703119438 602841665 952719261 625068545 940198064 88083066 418879471 152584697 963215197 871933764 998500872 164208454 477810827 193618807 831025686 402961652 526793889 286093872 553030055 674170655 693309414 423052598 717439327 699987864 791066006 18811379 993468178 85034072 388167003 714005864 872582907 130236349 988866927 595883663 803422274 543322691 898142763 150055537 857276542 683796806 794236270 878812607 977100816 475556824 485985107 166091420 384777723 839806568 935449195 820521065 890669679 557600605 780111106 164110759 300480570 563877093 624612406 434747058 927819563 608960333 877924547 410189508 963288257 453181070 683208207 806822074 945219940 655636238 834179811 12740319 264944129 725223356 758276603 16490136 702563910 603915918 976457639 48713999 428439461 98207662 405377896 969550837 973379589 734518303 735898049 65401072 551051585 750861324 804186137 786188476 859058473 540339424 809778634 584947251 805191485 93723402 186077404 908539290 969649870 821591148 861315405 976435465 989490292 142310696 782142297 296625321 377383625 240410480 358799348 434013475 699415087 673622202 769035814 205460129 539121302 327393055 405726643 166154883 627429259 988463584 997225433 388180689 537711875 8716144 500295736 32037868 383146697 202660212 870422025 289106960 829021442 136392618 287051471 748455876 887186061 445717210 561271539 469065235 795330271 886366842 895214524 366253533 928191227 934182297 983337982 670875621 686566862 494843026 850737733 32526563 571272713 156048839 246981560 864210512 944608593 670808166 703240015 504989238 815924675 686668814 732085813 576649747 684713359 828473596 871968354 554133051 889268345 156343010 472340156 630293597 949886311 888223396 899794385 613713963 658448651 742749243 914597584 948827948 962055117 943304581 985544850 617791753 880900064 590775624 766360422 179070835 286383637 555274391 574404088 659892150 715436527 532112440 840616745 360585024 789837775 793668924 907447014 276750493 877863063 108375204 821848296 939290720 979840250 859988121 927518629 535920534 894602882 607395831 625508182 212111335 585670751 28210439 331223811 941000924 997746516 211308995 427467084 127123497 290043440 472252739 541991931 954158316 977266844 229970638 962834108 812626551 944612576 586698146 798425801 722808326 942872790 597090096 922961033 473469078 872103829 613440300 746403873 385542743 575439660 222359594 507190972 203073938 758995320 642288485 980283989 701591655 710846130 929577229 959503048 615371268 936371589 370112529 958673452 492261848 953585242 475718577 717096407 930295710 990510205 168953139 640807816 729110556 771702022 774058215 966227875 521320687 754240484 634582129 857443499 116565380 640571084 512833990 718322290 136827698 906155420 736611229 882012226 447669525 982862222 737463300 872902152 285384298 786737224 345929394 604476336 256532818 690522473 875787783 937179448 95892582 531608555 564920067 718307351 39921477 473800849 895846316 970551508 474075124 542162561 931081585 971234788 551527112 735148098 571880787 760392150 904166773 938746624 12414770 801810143 675535609 928398400 847634387 870101839 652385532 968989516 962438519 969437712 202512629 949309142 340666479 759375582 92124584 701567209 767182922 777406924 134269957 699705777 81292601 448640727 190204452 816820831 949349087 980761520 544584985 846443122 203083239 481030494 630063366 864658025 943264423 983605804 378510978 791802641 89985154 172301038 899770941 908595151 115169016 599164320 447764940 801758881 39861261 522691634 726547397 850010078 29212740 541559838 460625483 516151005 414723702 620699003 683659873 783751542 607360094 996523918 988584757 997592094 534036950 611086066 828204605 867642706 331365078 997068145 747771375 904210484 213099605 461174136 889272612 941488731 669748428 801648508 144160606 205638440 136819269 943671861 957791152 989583708 100053415 964252121 80495275 364506242 187947829 804484622 682898996 864118459 822966872 914944702 370849874 959180198 627996818 639242098 313961956 405414120 721545541 997060872 401619387 905179419 812259298 920627632 667496418 960618499 41864372 713117055 603214509 839100610 204170537 658307522 379029287 534134062 17981699 235905059 321777099 447376945 837410587 923461933 304155294 715587164 364190485 944344219 192921244 291931958 759343492 768055463 203809069 976501415 998783432 999725171 349934275 855273704 224111650 633924076 528789718 725494367 555539942 919197165 51346240 551426825 131945777 189100637 12545864 60780748 45404946 974263647 571943596 847542857 774957303 932397167 92613647 752926480 357218283 824000275 649553295 961735267 328833971 956224848 222139262 830802754 337700102 551472268 673661951 725681724 322478814 762479440 487229434 488439155 38312192 523223130 37455518 251043725 844490785 915917067 46605618 753474621 392555433 485700341 49997488 92838186 903490185 972723222 890849918 898006373 452395301 542758203 660590360 671129310 546306426 855365132 923906768 962965997 867673274 930143520 499059805 929751122 65365057 366976790 817153708 882792594 541766477 937850541 407057295 613973122 197120095 316445688 525975590 666963992 560664439 965847799 299264829 843796852 260335699 527272451 434567902 667666800 588060549 768024734 206413191 877191202 618632031 975847371 650885118 896122433 189276855 372699742 727745705 750570343 313065421 503718724 299291445 794402334 838499959 933596871 553158911 876703367 811855785 816977272 669924833 985000187 377485075 453303635 87389295 288395735 69683463 567690584 812689687 993498259 863573137 949939273 607550010 705779295 910731050 963641719 379926545 507248241 723889548 990667835 857369262 959199641 622694419 735075208 585649197 647547955 188954097 634403803 898211801 957200354 473609661 554639827 172364575 835642255 42157927 522954873 771617388 887435839 841376884 889546772 175665050 843252528 200389315 343004417 49880837 606427514 925308799 947707139 777170469 798578048 151695490 218058879 753956485 817804322 506106312 918882752 662393537 667836533 607335133 712392237 511412130 667602534 255057182 615624183 356073577 547537696 395313103 832930606 834896387 957138578 969594761 978144848 564192519 635826302 365331869 387921565 122030169 311076849 359861887 844081345 147398564 267952841 4352858 384105229 596286619 794091189 992342639 995256184 264492055 706269383 524448171 593380617 875777517 990525652 526724959 966789806 692221208 726593364 847999202 902643983 484796744 672163740 758637286 920311967 963775446 965168753 35372271 865807180 75749660 306456244 353153753 898711688 759537998 861768411 622311492 705748547 439585956 915141981 846894826 990868570 371325990 892294820 276781872 877584465 336904173 870182999 858507328 909796772 335580223 495266816 99076468 114707713 601066603 623246570 112803612 778462422 391889366 754215126 898098568 953440655 49361542 475031956 439882775 965582699 802985289 900917913 516222466 852959986 535214982 988516645 192853363 514240295 378264218 393119510 266182604 673419471 349415960 965880370 592946060 940130404 815189453 835954963 91753333 215369222 375321758 718496048 524557384 968240781 794135074 959563922 913145985 925397381 427286689 647441762 764666529 789305362 704741053 842677587 908533556 974254546 696054477 916618130 138081248 708388643 71325539 960446118 844519005 881416145 141552104 596185915 175368533 597281376 117992525 699623758 944706485 987601867 41696510 524461281 107843442 941717878 510552245 774752247 888865519 965992821 743675880 755080631 766685327 995729453 312487951 808081799 631757130 781966267 115844631 329766586 967728787 977237698 929465279 978260266 814152799 970726520 228402974 579141644 892837983 990009179 926769853 963822794 760872757 996147250 154418739 656133318 200937368 555195703 244983598 778476644 542624387 913569351 836574204 872200435 54643134 377248527 762758149 987474774 612057137 748954097 341477096 782865184 206766846 503084983 640515023 855708277 587955178 770433843 882316350 927825738 745918152 803149645 147773031 698969140 848299345 959910683 671861322 939030568 288400361 774480124 197153242 547589201 152692625 373839591 138402837 414942373 869926527 948828418 351218152 364492944 510184707 651822744 226004930 821392274 433868770 560325306 439920504 870571051 706441973 779816199 157653929 789828217 238815050 348446480 271675884 422299406 585538162 815029271 377779012 825629747 619267321 633563085 920780227 949405771 518673779 943043659 557922292 725708869 575076475 621004706 633624476 653423767 150483683 862056758 12450174 484251724 662462696 767500758 404719295 761890725 509144685 971595098 901516487 911074680 785506904 885601947 735039358 777173746 227582582 711400062 227569 875978687 924979726 942802694 478402485 918353059 50550274 742688990 644818705 998163692 94918375 919997013 816428053 894449935 618109584 890687101 36481173 661161409 443031993 652439187 987237847 998814181 366047765 930094850 627564249 702642916 81969079 972298890 374075605 800014773 530430112 747954141 877066826 918283885 218543844 422797257 1183865 399361466 973128949 995696840 595344160 979376283 268120025 759299101 100856276 287877047 541593932 893048600 14106710 375614136 644998671 936408840 213247590 808465139 861089180 874439428 691660875 900059332 788358409 900499879 620093399 667667783 413185439 889445379 569864145 576654446 857004738 909569593 26462057 304825930 327568625 634185908 437478612 724648871 866046579 950566458 364026542 604191439 135166658 427864612 363870897 616318623 419314026 583033361 121679781 535623465 481101213 968553830 241076298 668172983 506548050 622660562 562251523 929093421 302263810 931123919 618577223 896297322 99471612 123338541 482330709 490725663 657677556 784925300 698469205 865401861 474391481 702637136 749350941 976929247 301973157 927183440 129165465 196999918 579307685 764356556 357384623 627535064 487451788 879476919 950104589 973639898 593849564 611518786 296853229 670101310 246031029 445515450 751581556 929120679 951511142 976087764 123308039 440770207 491789898 882231525 909588593 979033138 442422471 942750073 379443438 640164343 555507824 692631990 400725708 833686615 953258746 974445125 544654731 965236529 425265528 995005454 657583471 806921098 408782622 959187538 993683509 997995632 732110359 852744912 550022960 736538254 6678539 75275709 903967228 983884162 824898822 866445996 951945388 962922498 431873372 604570707 151449199 577014624 682339661 886747043 804515254 855154612 6568138 484995697 144899936 987690200 911453630 970254462 914725146 981295306 70616933 414294407 106198832 565202819 4871332 832420728 379635664 508928773 209961756 821061282 16884239 758777116 412498574 816439461 513980111 658114675 335880874 982538568 252468184 350024117 613516681 988640770 250988271 256260717 40168284 791626862 522569625 851141638 441988445 988181188 954929938 973114113 481593583 990450415 313110698 594715254 102428041 892063446 188993250 324448587 505937482 752066449 309186964 881964069 305360501 837538281 700786161 949621720 648481963 959949910 319128457 917435473 47018115 319088438 260263183 779468890 197931824 242840830 568513414 966337981 137275769 230876831 907783117 970412658 583845081 814456352 612590368 644162221 419829869 666787359 84278545 145753539 614806448 625271407 414560138 873870620 785759043 955478937 848367618 936714536 583579277 601593113 713906807 823278976 696648529 800905675 842543560 929635267 694202254 859922891 516617013 560133341 840082045 915889375 759568641 933824669 562559053 983502662 938193767 985470065 890315267 909843030 525741556 758683052 220374983 495579135 258185540 825731791 731059879 912301611 333090713 411108523 224327894 840440350 670321980 783190046 37768798 254587906 788180133 799609797 692636995 720687001 547352022 914493078 348105526 714600417 884319630 971141241 880382557 966077056 866203387 944474631 397396023 838814687 790397813 942806503 598739366 834738687 271471315 286399135 681267540 765890332 33722544 492232529 594737072 977328687 827278872 921426136 261905566 350277307 601959589 630157631 678387483 689790121 237545712 303633102 979078126 995741872 242424987 855568640 997337061 998700781 754174956 902347359 853735540 899975051 287683193 749835120 786532780 947109519 592149036 854037310 644903722 991820444 667856097 858256454 664737242 912957474 676163844 830110617 580390321 924539228 338248674 585114167 514506968 721774127 861730331 974341721 136178350 271952568 470108423 567641481 314706538 712747025 371230971 576592712 746214837 855158411 602769786 824817579 776702924 930924643 485816102 711218192 115906401 837456322 781399709 852482977 868241660 920759077 703299653 899029202 153663659 422026436 2841269 380063234 569108720 908644266 29269147 96847563 596801611 652378970 500329760 766710954 684091925 906338413 968801193 999601307 947694346 968049497 900139599 937489915 504245647 668312658 415160063 885471693 147674906 181045735 621744825 661177276 915857704 928483921 221516632 835928211 684086012 849989964 903242282 984559210 110243786 762239314 747906523 961014864 562836879 890724218 675426334 862612696 96305965 293453552 151013432 864492545 349918992 717576707 277598820 916931860 675333759 860931070 169487059 814777996 430482349 451287660 794636696 910560555 996246609 997754542 476673443 546998186 501370196 796359978 242390560 307364074 411997184 796299188 356309807 715998163 144638480 731594653 504000558 511107332 188904746 629491340 724896860 959755318 676806353 955551367 925213008 946355742 425320614 917426912 54269002 323727704 360060331 397538349 767270958 871380823 880784486 892953917 109732341 429551626 188216379 488320168 978066393 985559725 307289238 706827017 50975843 66226883 495704918 932036726 340898317 370156094 326146352 546980561 299376246 323676979 626534344 814313329 607083219 638457760 339777351 727107589 562394145 580207360 657970517 908510676 855465740 911138237 944646921 953553126 382824174 998384830 942387879 952753251 568278392 855284317 428470033 987862213 7973438 22262794 795470062 844388400 761694956 956402263 474341355 906771364 940699375 990092164 376195497 681506710 65255230 818128162 663850047 679206137 221043705 972232135 400958183 783510946 572188823 707705341 341587519 986988398 414763564 642237232 569031888 985032167 300291561 966647125 942197109 976123190 518524864 548336883 805049036 958676810 308460104 459542615 95532480 509301363 587728375 935719793 512203251 949972504 941787738 987295388 758143240 864301949 115607041 991649499 965369197 993923441 714111419 992978785 964612012 996454252 107541908 895624048 894311165 935634223 826539511 845720316 122697873 168775952 731065765 955959958 390293125 746391565 66366334 620032789 374083368 681627586 530962298 688194607 667127067 738792558 498722202 970251425 473509311 773694527 140024308 238619895 628580660 748171550 549154173 668488945 184787161 838048534 780102460 993136395 974407929 982756016 738074992 859951762 297779722 778818364 594739751 635821611 785229560 920516406 875342133 983621655 105354855 855915191 469382921 652853370 891829817 956027050 97657843 309704720 735441346 866903357 860782792 995902305 681142385 691759254 562578628 882779917 182961531 767278906 789139548 883659047 185364111 244287181 317406146 841554856 798294213 855850015 210914003 946152395 68886034 865329713 798315734 900362602 59816182 169259713 87029777 802327973 752743348 764365589 962593614 992211296 979142972 992703605 682666475 687462903 175147076 791350803 309503378 521889026 325698812 592160764 385661032 637332761 174351489 913852015 696288983 939457093 192551237 328171064 240121691 736079488 302905625 839640968 246366047 841147647 582184755 659657839 62257235 405689362 305591853 715407555 78055195 91365178 301384721 775358850 200668215 705893375 350809094 962216227 620897998 840580229 980902650 988659761 788443854 870778538 679948507 725881892 883943121 915705288 18871515 785911600 411689616 688672170 989044903 999197880 446642888 774708037 154601929 941555746 413830800 978389651 693998605 694384084 608061183 925010134 32370499 869706427 212012969 304508118 64159549 544587759 176424149 409836415 966670681 993406069 569753258 993021577 999098061 999299500 619533341 836966832 987343518 999668695 89878300 485619832 573863682 856355520 522690972 695099742 81932161 687144863 977436707 984395726 350485856 937899485 479129124 730046240 924476620 951874517 760136474 858566369 573285189 782855420 514796866 599720797 727243630 866691520 69907250 102998744 22966467 458174626 979220466 984639160 640442578 740344870 306963284 420566996 461053542 910276940 936438004 974260750 423234197 906604493 195664365 858627643 483054249 792820708 407173258 587423714 44464820 184788470 901723081 903394947 954264590 961904917 403497063 555392385 955717920 969492144 489082438 672568532 224053820 838151465 791959556 898515407 896224128 953254738 103263398 384699737 350142728 847315443 821988027 929201625 619039217 678311489 520324496 735782216 667243567 680105131 841774821 879396761 228747564 736656431 129787209 401806819 90358912 619285947 139899331 145159499 756706724 863258048 131312338 625563768 377543408 963631049 348175447 803200178 514062575 520642876 964244985 993043357 759760947 870068216 409388677 660935040 233497183 385996881 32620446 210443266 671619074 715918724 475891892 998148831 651977299 925840293 810945543 986442815 386065890 720352483 579394765 694217455 211962626 467101406 369436910 578620008 594026910 773250064 588386764 997379004 211036885 639991270 762055288 957894075 652493594 692702948 643051640 908400033 549206109 702596050 760572545 884790349 199082758 239724826 373265395 483186083 629723524 874175338 50548531 635710554 131855111 802454851 837204929 972287008 298219475 651482155 869658545 915047303 371948436 473073311 843238586 883340962 153602573 219258005 880782238 948888198 526149529 699110999 151425057 747472326 31030938 393391384 942822430 951416900 907690622 918332645 580335070 799985276 57608815 274758353 998651495 999653534 647099691 761914644 625187028 661538569 325331873 807230931 443866592 502856777 796638140 924421779 766018762 908373915 908657615 959788595 709293512 720554708 189154220 430668932 446344829 579706182 456280233 655935108 592751158 822917727 700801258 738675431 175852371 630837535 1669203 167016315 714628710 792128283 243183849 814737062 624757217 953280488 56057256 159011171 570227245 696572328 868049968 994568561 182256393 457521684 731033232 803397983 467901841 518418583 88160642 346711232 66467075 851292600 469093002 803889500 25136930 412394805 76148908 912339063 612176049 838961840 211267688 304035091 203853599 887392005 81933690 917732218 567983773 613507492 951007563 958410488 51634249 109043807 144913178 247107700 332711187 987628639 125751896 157704225 733842128 995574810 683656324 727620415 672459304 767349648 774647607 887473218 609340368 769541516 236467560 288440359 277562350 850378908 489254154 654679462 286254590 705412061 19832281 365174653 761214183 974548877 965073661 967002651 234218110 753886877 534032631 542016793 297522446 874125146 471253429 882133149 951045909 993597046 479542746 557810349 919437543 942240389 315916098 815144277 817542104 954195838 913740425 914398044 846240264 964710621 647286907 833588945 158058664 336710440 546086005 780031766 403693842 989803440 483541502 855601864 468353658 803484565 189208417 876101498 807509583 997515657 13329139 648155558 199227451 959788518 959540913 976448009 372811695 718142936 923082386 946629532 50436160 98409536 393647591 838035145 740615217 865134076 849214786 912257291 710293623 798315311 961132211 999688778 637995776 790818894 828581953 924925611 175333781 499558370 148805520 230486261 586339651 840367448 262060752 996756810 709203376 826445294 27201903 200264210 350812548 841802603 590598171 734646802 540602942 927617235 121393361 773867002 126577824 307106187 214976908 253166164 475946073 866073263 797956960 865270204 100294595 195911910 67255585 907556962 928415671 936122699 268627258 923894260 473346543 940113508 452161893 877188630 279099789 928909491 526152838 989887314 801302438 941095578 476142812 518848798 659311754 998596939 60763384 189163095 840585868 898992456 926924269 945839204 581084019 637945616 86388600 556579151 18434298 506935168 457420110 645530565 413731936 728931356 660445021 826495010 960300199 963260648 14514009 848811655 144707912 398870108 828555542 885273392 473952358 713671188 838407566 935926493 104384474 387922968 171870766 285133787 21423401 539528908 393476903 668220956 851745223 991500539 291336719 505650158 559099608 869316901 192882344 632072109 901422842 902967948 599972095 784337959 655319611 966133818 691004239 965068673 535576 232349676 152720657 186628268 695337060 757081558 717838737 801108082 117012900 384210077 542038452 589941540 946650586 947585446 182246836 348837195 274014938 960211964 931858733 987315630 915157937 957238499 110313202 687925239 480979556 828658705 920358083 971358561 322967811 742686678 835439405 908015921 384824870 726062483 650143404 659046581 914764732 925622711 755732771 841025009 273330722 394796713 508938643 864135050 253687909 495110147 690602652 982785597 820604480 837172722 399791092 495468334 4847662 518470590 843972052 999221012 742120549 959345151 214494619 825148979 524734843 930112433 326498284 931492802 128133096 732945676 411644461 684033217 389314662 429690591 816353673 934098385 565803641 931140990 221278957 979551007 468674041 994036446 981042960 992324497 181327100 435300927 675879570 847089477 591746543 872225539 3322638 974207847 308409933 522985806 48876124 175961208 391201524 743964227 922810205 937285746 400942644 436327868 618038130 638552947 623066601 739291513 973862405 975813852 835467792 982899199 124723190 824122649 281849002 727523809 819868213 896389294 410222191 527303203 311743120 742587469 159964669 872955303 625183412 731242753 31581012 430408190 63926455 355668016 762950516 961735971 807960432 844592588 179740805 374889411 635117357 638166732 743590790 765290934 422481397 964124102 502957852 963372029 343753457 921893643 534090931 859850238 249009105 823964370 766267228 887939593 729896331 966333248 613603703 925204281 832518710 950033346 809873905 828322759 338871808 541808497 283473213 946754731 915749370 926782445 644035620 797081277 838519619 886277926 604088582 987144422 418673514 872783138 427590041 479050828 363570640 704652017 532643572 912662911 328093977 732114814 653291114 720484800 159050445 201398813 312775382 661713650 682886916 697615314 524934733 846401810 97401096 114565746 152184764 260021533 988091719 996373510 852268518 938415673 668919271 815900132 847178024 906378308 994137213 998242626 559748006 921572227 614075443 622773579 113638940 440888236 470034468 735281790 210172513 290156897 876994004 886935627 932636775 999055908 861104768 936654148 443509898 949172341 95692778 457508095 794775601 928674689 505541210 976395221 905136541 974883262 478772194 664710121 6703237 308679840 188549603 627974538 233446071 856246738 146759138 832921313 525822296 840928986 729432543 950024835 792429629 880891650 660972477 929225498 559288240 727540576 728385484 924749430 457962072 518972545 161395145 798272139 335726573 893624660 314131641 976417077 583074728 985945333 353215157 675312883 897519344 910615271 120428583 673581281 894367798 977697566 668745080 935411846 913497939 940077162 874932866 957408043 626755532 969293083 215631897 690446622 701568254 933933149 349722226 796337854 164091964 694435545 823497691 921031155 99666745 214765553 612648288 846472997 557267079 757882930 713094239 889906165 289137859 304127781 92152871 523070704 866069863 927568816 800862016 811343282 723254433 772275948 542617654 589021936 539695543 841266246 254763183 884365012 406225804 960570362 486379741 818003257 405911276 670443557 117225989 133720123 665929138 990237983 124501729 136442455 958181470 981994815 357789505 790659815 633320383 839164146 230695577 640437405 569697785 740081462 782969379 959719545 65080753 500705594 420607800 684998515 934264572 937643310 633493911 852191028 453714946 620481992 147666101 273180762 888306248 923639942 653604812 888643897 350908567 855953204 341665416 893326829 453939239 990324824 598110811 995587720 726464864 858780855 105826398 525512146 901975758 964311075 147452515 783929711 569242537 743700314 364429397 967775418 832772856 920013162 109306196 905133566 975969805 999233074 67919923 794881452 767909407 993635364 388548197 765906834 493104120 520081112 229911018 666667415 913178105 949986692 710557038 771760079 738848451 753945641 676780667 874474672 384198656 714466923 143394327 558207900 916738622 953924519 786237937 880382821 432421117 992196094 279475164 390905805 157474996 402855992 2252190 118059237 808797600 949381039 673854061 995717517 749706444 936417185 3239874 311989985 656482524 993876469 100351351 569283613 233951910 420836493 439994998 801326073 303116069 417431314 973462091 983123283 349922339 770764807 685138499 938224170 676093797 799797455 694682811 862177446 854572546 910678529 735692075 749496967 107611847 937901332 417481597 514966890 27479819 881686955 358155500 453887043 976524202 983399635 39326362 50097715 454057964 465736603 109569774 590226372 773606598 824591153 240804884 527470859 91314873 668883607 856017627 910742527 479852954 662274185 860058315 934893765 68082671 502936603 843020072 894049511 328805765 402953941 663957675 845413888 77244662 603695181 165017294 944392407 800054274 831239774 190356164 617347600 259634035 410216139 381608522 871689698 955199785 994684063 509749162 696000518 325330755 726077384 836491881 978000609 274901757 835935550 772308214 950580748 441229477 542315489 70920637 997449410 882321978 885869536 191099277 230094951 889189791 962785220 549590611 733845839 777234463 883983126 623642168 971090490 92975328 469640070 399302653 873675581 106690146 121286223 288701581 834405596 890635751 993606736 769839103 846622287 804789929 909763090 126232055 279270593 442547607 930289209 727108217 974091607 853935869 922430021 349515789 932609251 872276374 934523266 399068228 697313227 134937685 963993482 302544079 627323607 721558852 894432166 693099157 734909937 882670307 950462180 97710500 414506717 636991875 996674547 819004908 830203799 248980613 461188236 702488660 914848551 927903741 966759944 532586233 850197663 389749446 419328273 833589384 834516075 799435812 886028716 210115262 269394485 664128933 681460126 490785645 553396325 314226057 946237478 786406969 866193150 366007356 774556414 16333436 855808393 303071569 419207274 316375330 918227963 18779442 824480550 742482151 931112392 304096235 405176161 190861441 605995062 378122634 926278669 48339015 120693476 808453924 899250539 419683051 924214609 511460721 522223305 912502347 977832224 36671423 858909288 119772362 175825906 52033338 742313999 932907351 995218365 763945186 821306130 313676299 655898475 457780737 762419804 727660949 965744006 407524549 901472408 111886827 880613983 841676062 998034809 694654277 912903081 237190216 666912145 89798707 868776675 736277058 836268620 823705514 840659591 779829036 971433225 804928446 867803118 547109537 549479642 422216082 717834466 530596030 939439571 845200413 909340022 830077368 876134331 239019798 788281690 635212622 775396500 522975314 740996514 933722871 946922364 503092679 690268235 259995808 620310987 681613455 833776331 423620160 549806590 834893974 952936827 890682720 977771756 161617437 755745886 424895262 741928042 518931857 836338668 727248866 842525866 15964281 523791476 418743660 745762430 517507085 617629124 87658425 264697093 696494088 706490864 549336057 961124017 674070597 795340416 579822794 824884655 89887311 993966122 503034472 785818232 829869202 940469468 525619882 832956138 329778753 777204512 468749186 760536014 872606910 990310587 115321077 677827001 616569260 956592597 941683071 954588146 651980506 711344954 874453818 961417997 502631507 926238034 807960606 863853202 461051373 967850315 393632973 535535320 432919214 537322485 342211442 352921136 552574825 924360145 217414344 386787812 426443094 647229972 477513833 766690476 629852827 852872103 6663031 730188459 574954740 985588150 682246428 837900078 694640242 737621773 586155265 762237518 607140052 823297608 134374777 887982933 713571030 920589993 977747034 984493071 358915830 924077218 723051575 979086203 3822110 894772425 433744984 664289934 828922432 834387220 925026292 980867226 756867938 967691403 881202859 915425689 557005735 572251803 981437369 992660935 567218722 839822780 462918247 981810294 657761476 982634127 220786891 394971894 807043892 882016847 44934244 55305385 593395144 944345887 998749651 999320529 518612603 979271286 642381383 886583917 30768469 620390506 55475426 481508409 397739682 614771900 134201427 942184101 622850235 923050046 870164455 947574500 934197046 986902364 303565043 812245254 189263953 525162166 207746968 774209913 621195579 844413378 138472391 613767905 704096199 789200068 54066753 658876037 107120725 662421505 246626459 850051021 425746412 528412050 972785525 996064989 709110334 973592197 684323617 932861211 73964470 495685925 85137487 478442434 961543950 975859670 949414374 971135255 349225159 385303851 187818229 769062367 949803512 952457248 418269743 576790581 431789380 802537579 771740663 815628110 127805256 157405662 202138533 917558426 979663308 991245247 3301089 332027509 959812479 991777907 104585415 155052541 794010268 890504039 182411732 390856408 57129754 533088277 61661247 67369008 40142425 517642683 706220751 974045330 395499911 779425577 380872014 665074522 606212091 686118581 660809903 971093269 612872421 671874431 668691970 761828250 926606618 980007250 797528742 876357222 904450338 980913775 978433018 989193179 386743936 801087433 884379893 910798872 580792287 704879986 413050267 892605901 536022148 962481781 190863519 884195536 742519991 901180949 193504175 281507424 845525094 855244878 221720643 776352266 144398755 424954818 973102746 989528210 858273216 956845065 152380579 533662359 259599765 689949388 696782436 972578684 660604179 917306681 507993550 913588762 572319769 961873142 885906237 942460534 616865051 665981635 83319451 220879914 70195611 160743194 588177699 756101858 480753219 993184182 185325672 600679729 75488278 898020126 544854179 558883106 20630633 503130136 78749383 747034990 953362902 959961830 171468623 961690588 412710782 842854307 426559811 755884127 874034236 887188260 798416875 806907093 560392213 619200425 519953959 617825603 914830007 916122873 711515619 906385504 220858845 970586830 175043372 876077901 121953294 390313374 551461387 732038943 310313223 803598358 806357798 980903290 472409087 676957369 45266650 610670398 18108054 622493960 295891577 834891086 874583492 952293578 868628005 990498462 851932867 975790115 163155199 426807679 721448887 795914201 653629066 807735553 109957862 193340638 355952166 960726408 783423531 875748486 794172997 803490190 14558773 481450568 524331545 603625945 300865602 598959759 815810146 935021826 568255006 678223263 629602912 711390703 926542039 986249783 182565872 452675168 735720552 971572816 190352742 603697853 787907596 891579109 231769754 838099315 764012433 939892472 489360065 941190351 635048218 644530261 356331733 840364018 516695675 650967225 112036152 700165308 338205032 985940467 639745956 713877267 989026139 993796760 630491488 902940811 495660564 982155034 40638589 601230868 313102804 886283039 987892537 991081980 71896612 971412204 944837950 958058916 647516207 698695810 237672390 435822385 665139932 735549357 74607709 574112728 11825879 840006656 90392398 377367999 171689720 784985461 86975489 873678127 363062250 651807545 455185678 750768795 775984189 999467615 331457385 725327039 82210975 673987267 647432500 846214620 37258531 568100992 671780983 683163495 127561168 706049286 467078107 758551694 229881089 573079064 616888577 951475441 208719139 416194071 39995039 775850113 247148183 711515339 791482410 949364247 779845271 897087050 823459245 836145022 522089825 897170458 453469702 480017353 334441050 470513481 713481596 899095289 691263917 933757663 982908332 991067087 368907671 949990633 428302122 619926419 782579045 792941249 693052176 906289769 374326539 518746611 471870123 625107898 706878939 838984674 813745623 982262361 626067058 775927544 184206744 940746737 320270951 855166923 84550755 774221930 37405258 989752146 345103830 701557919 675981885 762554465 584300825 956358778 743430759 758405240 819926523 856700548 157115402 332062009 655201615 661367680 102486761 458738621 548672411 661603403 466426544 990315860 557032618 712007994 708557933 784880371 644845727 648888390 470316059 550689313 636767850 828794889 771685289 924114688 342383799 875501892 284747855 897701969 798390109 985492226 409883171 598336308 27442616 808362213 324458741 610832157 968652704 984017056 668399696 898885659 976895827 995587725 123289348 346884423 561297904 642051920 234464759 350772337 786443449 954402285 816166707 978085908 593654396 595376038 823195142 826260834 935087815 958143540 373230667 526513737 151910332 866624334 673427384 903651811 735462129 976362811 720089021 994307901 387048627 543294177 656149172 684316579 213553212 257407471 59080767 789914345 639905618 799682487 733659578 946917398 206658442 373459921 529635 801784384 301102936 352410816 617170910 915722601 326402314 410610111 869054175 925179521 530150838 671756004 891366521 936343772 931983831 975209179 548317258 799830919 788605926 809777478 40383692 258928575 751430026 913892642 988840237 991247206 995681625 999450881 129798413 134172541 296104523 660582242 721709148 787886147 146590200 187801213 915280361 949345840 441386248 646611354 846988415 966907313 665133433 980048979 492432103 758128486 363842384 964304034 594898053 973019840 755753806 832536970 183121044 928617375 992454040 994954468 120556262 941211407 62458748 353143549 228981217 346135671 855938666 940955872 850147344 922551373 70710782 435838592 411906412 514417178 193634942 808387525 271674523 787810575 453651917 528234749 775179035 949473116 571070232 694089650 794779089 816403854 899751327 980725577 630714175 985053012 984051170 994016126 915654933 916970725 270110675 620694999 862626627 937978543 880070914 939923142 72171923 598639385 164686709 476518726 69824522 496579509 423705348 573633734 954215002 957263604 311821708 695860291 178624599 832540740 409689714 918706620 641070347 742437652 472191957 772780057 58243604 277745799 921606403 928506867 278342057 964020904 732017994 965691864 379965037 676260462 974089395 989590494 681899766 992202812 14266517 234407010 618000190 743536256 826336021 864329935 879114794 975378692 780449906 848365962 863076764 966832965 301946392 713554422 372188775 779359739 728227084 824466225 831413999 853841363 302788520 832950464 849002775 887299290 636456827 761870463 495784062 736321967 533378538 611399427 751454741 767729483 993902996 996983197 288871626 563181302 517388980 645839835 700781661 783504648 502912004 788705622 781836581 974530951 634629423 769392628 532189731 572240057 227033145 482966016 462311013 536555371 622824795 881016476 851143401 981263507 454503719 534322375 871972854 948029760 655884341 929056882 870768619 942387525 498511799 577268915 162607269 426035422 296109444 950283561 103992934 998327218 290392298 876505039 475086039 588058659 32458646 948177411 157755850 462712223 334656328 407246445 263536925 772464878 37369087 599485343 374591691 839453216 668749934 735669130 77961065 888371804 299169467 299412743 873161732 891757301 734279358 825875720 907828113 960388287 97687421 425131029 2631920 313529247 303037959 609344095 151648319 802547387 813710239 918119242 499617130 808854188 21846686 304086029 74892220 719528528 284023741 857308160 341259031 932187952 472059452 641487614 523026041 649836470 507377482 684944556 168633743 176517865 430948280 516337346 156370094 648826421 804288974 863262415 556831932 950321103 82758338 894100432 378680301 887894657 87196334 306382445 25946506 863451188 823263470 931081979 672656779 832092338 466792799 861021510 652034323 916626037 711527759 957562888 769632307 886269339 896227761 931523062 755323769 830125961 126238169 285022126 478751299 908453306 600875453 980874993 834620910 855317547 702715961 807669268 243149446 914873413 973738576 987774126 955497143 963945735 547391424 558771709 963719899 977450474 101041333 926753716 243798677 834457505 685247351 923943876 975756359 991357764 129629896 276771410 233415989 755584678 373764019 500342908 449140291 816266858 403097932 874314192 918562956 924041356 175974074 567504566 617206232 689223095 555675903 643461127 999615432 999703016 915985330 952351523 618903577 647499516 598357617 630271246 295393421 650861708 366686963 492420864 716602723 751652147 785660196 945105762 892634607 945354887 572333506 628478287 641085144 807987936 704284195 943498258 533391764 804428811 753258359 920262867 679253881 829395245 138688232 236449400 509029150 927462193 327600143 882929075 895336827 925415195 211303152 915083876 479337787 739321341 903934650 952343649 449534025 961654995 732207825 845972342 341282295 400565580 563071173 834203640 873095129 898677337 417324052 460881853 503392295 574000284 6572953 939340517 335826172 632324365 738866791 825558054 785519288 911183255 667767957 750981191 264849251 312600238 827417176 845561345 557201674 599222526 292494308 510980931 238432534 708557550 498833029 684757405 171205171 391726468 609631310 921791090 700206181 864165263 10385543 131602932 439248129 899831924 356094957 910572978 537586588 670880948 720896421 950589282 815717660 999373079 1374266 642028090 534763179 729851199 297075172 925654721 423960843 794267983 987363792 992485189 916093931 997758937 497536841 752199383 102621023 924937527 722604613 815142314 681446521 789801636 648846271 669929419 712018668 849258364 977603332 985154776 597430263 938508397 323064990 664331887 867803096 976764987 135765618 301338030 407728508 978606095 116627901 703916903 661727032 911171951 80299605 320359219 723821663 812937552 221290705 741167669 715351619 957120152 978556440 998968431 80103231 755057058 361109331 969051922 494655297 651938419 656931158 977025553 100585982 777407290 821018531 958837808 60235040 270317082 511490855 593959021 45647174 972502971 324033741 411969707 687391383 867206797 584326431 855808293 347554115 596534912 456373466 644040135 407766572 533976855 794567482 885412832 885450274 941212221 673437183 930219032 540158703 566412855 51786662 348850454 867445167 886916313 167321128 555864896 631194139 741096888 658066333 818238057 107183551 720683591 656643238 843887235 297716395 387005898 241258702 493728853 621957257 853610647 669207956 746183426 748065821 806122271 17310764 662994773 696256724 982285692 445781531 883343898 717761176 779341613 837851680 913204751 816658119 955761499 39597492 431146333 58881638 642239364 95138634 298538409 976622230 987962446 952581505 972934948 398396424 488467250 884105290 977584237 518315049 934078665 458403048 707296485 129355179 605244820 688790189 774203986 489877601 490950253 583579464 854096408 77684189 662293940 641917982 913659415 432490161 726362732 590633071 803034235 502082483 626284284 782194705 874099595 230649287 989773603 43702861 95545007 380287146 981102229 125738655 520056837 621569094 901817105 263612920 659426107 638179000 829777500 726788992 794462603 781247384 837789064 45751357 690789163 99612080 419345321 480793960 812312753 634313119 773710295 972158783 976117048 234516342 616459930 455531481 588275067 3741844 354551016 810688436 933026268 888772571 931899147 285355909 480545464 702675759 949218096 512719035 798312612 585613389 622644359 375043742 452977920 152222702 370296200 672417073 778124875 18607511 307756289 821865276 893525712 178200021 733492198 476034604 481987421 17995328 497216840 373282482 909111729 666331775 896063213 791052123 837626135 692239964 850778126 63956298 258421609 194738653 918840678 771829115 905525992 488265620 941345326 474389388 861636789 285960293 554090608 636739808 699514358 694965654 710134668 135055219 329118839 965176116 987924428 810990067 941211101 351950157 946023690 101665326 508075114 225754406 310046779 914555876 972009073 942660557 952161341 257962940 593706834 364963629 956705860 943429689 993881411 878468294 996683554 368018468 629645993 76271430 165266508 88958694 473375555 225337063 451675860 646139670 912329757 235516646 884667970 644788609 783613660 321601581 338599567 277975049 532264334 469490186 616710042 657882896 686303703 249285141 565090008 260764432 472499053 791297736 916489848 670523757 931656117 329280790 405676220 879544499 996107343 160653116 470927452 395178059 515965985 442467865 443262423 496129583 633099706 824518217 855438772 960492097 985096921 607045278 611927115 383415641 690543438 126009934 194221655 769524124 998792096 270996786 710583535 697663558 787994957 753238329 788861428 617892669 988730984 610264635 737170411 611792541 747101929 470220948 633121113 437949765 693529481 835423194 892675437 77992886 652387318 185857963 813534082 917709129 970551323 575424415 867038228 362516294 465179791 370709360 524917528 528988709 732334033 762950922 808246534 68398464 915995648 889430261 945615057 95440577 585230140 58867691 306636330 993646831 996085975 359155182 580246487 679063326 744416029 253740889 598013782 666294545 957103272 148494586 413429058 237984719 424803331 491588845 646365218 571886999 759889039 213686824 615283726 757148507 834829309 633366280 974321154 475244560 645821068 758074850 881193097 448142868 623687362 45491071 114394874 480618265 927295838 305408725 326161984 118478364 842045665 596401274 780683207 43254749 616804631 882035555 984470772 92430321 230885455 342559783 368531549 608715380 859806949 451588725 614510599 823677417 856142565 963035147 999176537 599883964 994578458 699845558 744537203 912609463 914431347 626328155 821709735 278705551 320961173 70277587 962177340 111527458 307006787 743808236 867420089 78678030 698864813 30644597 425988286 995264545 999771689 175172324 620436272 760636146 848598950 120276138 826518282 192056097 724301350 989025153 994970491 272485531 943533105 696474905 749269946 510612089 960645076 858214851 923993084 414076348 598916381 108536769 669891043 784108849 966532715 902762371 933267316 265642119 592215848 235252338 766584270 650182741 892231022 485708944 597153049 928516810 944836695 507409693 515971684 839620220 962756599 853639978 971142450 320440135 371648110 319830663 671704744 468543126 684958679 465796551 591464181 36626926 999965983 172447808 759660203 456091457 554460053 932734860 987881681 210277436 355455940 723204567 908562581 222328336 991858584 471903621 584892165 175473089 433350299 700774042 971891131 202804141 969911899 512927842 878859654 88990911 346593822 410467225 471988805 652015557 707677215 344787791 781646241 857907177 975333274 834402146 948411203 965877079 971179078 368965093 631374535 590795881 601162886 372443859 917097244 211406377 783194363 122181610 419694513 179602834 611035775 366198852 532181060 126627503 499986606 87006326 887790138 383896308 526505825 806020226 906722438 417862505 482919446 754677334 876181069 672215697 865726270 438825945 832394384 946482867 982906985 204549808 534007326 270423803 885200773 753254024 981370524 844301208 858391698 475631252 688993437 716656058 990347312 486047507 903812484 438699843 550569387 470595866 543757803 607152546 744968305 246558944 398197843 307570873 953711981 222138315 249325106 245932391 676339112 833193123 940818673 677323177 702398694 744995165 769275203 785721772 797137620 781777314 795242159 935734950 999898056 618315820 872643951 604409013 742996965 440229255 641561772 491997454 807064599 253304870 278655483 975532382 999466883 42209034 735754731 932114355 965430647 434191472 527655002 325296225 784193907 722914377 724146212 433616186 722579824 245951162 884943071 22500505 975229425 77615553 799321576 230745022 574883840 845080349 981137196 477858276 693870043 326399304 856263129 893184399 971701670 597340787 943012450 789175115 953821849 920821616 929591571 372840212 678255991 439796543 953405838 338913028 413608087 448542899 989469968 857710392 977077904 678439136 950740852 849403684 966118506 614704461 988050023 73093057 421794067 394713340 902398522 93176547 371917260 699875598 854815529 688974413 747396223 984480598 985408970 908454892 961252893 630332290 887827390 148859370 598554665 317574091 982643265 708406552 887765964 732803456 900442386 155678971 998601806 231005266 561896728 602796540 799659833 488965014 625773673 645047047 939924289 809515388 907811110 258213036 340025585 15000200 277304620 67641295 801848474 379356444 446246336 991989566 996421627 116103248 620208055 822062534 943299245 674753527 734699723 22232719 952484610 47342805 172929149 491733041 665627515 918813126 926702719 35358200 616664143 532100866 921033715 35050482 713630754 208789937 400169541 883216855 937187043 208334200 465485105 939165412 977559569 967520064 973312106 334766387 690733751 321529951 652725312 963213862 966014993 825030858 944112603 98586905 819633135 354226777 719859833 847078123 906502397 668362082 810983198 367947283 970289358 87581516 372543032 115717824 284213693 761237585 880371768 439999101 769113602 492776154 936843349 560076479 754133384 153923258 246001176 364754991 612742083 294092548 552657492 936911758 938500155 32231348 933195769 232044904 521107540 799125214 834095869 272623862 710176003 353540981 529787511 980817665 995121735 711506797 823169297 307981135 917343581 597085011 708715622 635636504 647968231 976452538 985299814 667352686 870182334 327225092 348963953 104797405 452386214 556826143 880722521 916586075 950745532 943395477 982664788 423392874 495001026 783731156 905194916 326182830 465013748 445024425 503256882 574521607 992169169 130219503 959184333 383086941 996751896 336493189 355761709 674750192 936455525 715641951 971445073 604603626 670763103 862310986 911654931 33191378 324509144 729590684 829092585 202943131 557024181 580247687 779282688 979739573 996994509 958195255 974383373 913244096 977517570 133859064 160591256 768789604 930391058 177495945 260385595 917617305 992368928 983765704 984526637 604031751 960632292 343679283 471239278 351610909 572144174 177656315 997486230 670655420 968075813 486015489 741551885 877135664 882531243 1547573 523719674 943159077 961510078 150961184 921343726 602649920 903078931 183047948 715036132 3408476 566852823 570587769 953968820 764129437 838274791 532306795 717555417 520686859 920029643 249968338 295504918 235588330 575261066 213646854 239941603 575653365 974087912 490875527 800604218 99407628 503744736 718087311 849761986 174737734 509198354 630540083 771791634 243662200 397714739 825483077 891799494 444569494 570761055 699697217 938532840 197885265 704792261 185562022 996902665 626520394 976282236 410996886 845504020 148542825 894421660 787783784 976381411 717671488 900080049 975029605 996017396 438617810 962990879 85961697 410539243 689598396 863094906 622099128 789206385 157666343 590514450 831874235 874413079 294520975 372892078 208726859 646249093 732069827 886252263 940587956 976912001 58337391 558276598 765060211 796850731 908836707 986763625 802624245 836670655 604999302 929876139 727477414 784213363 197883121 729860130 906436131 953714997 30484157 672632942 257485984 499460234 605894579 887367952 537992465 564825374 527217006 651231074 988388674 989656051 39527506 861603986 568413701 944821010 745827141 967055133 908443983 960032848 7140806 661504001 181372693 957046518 909918252 967244852 516457099 777300992 505066702 943734496 209236679 933089965 331415752 420581217 754124592 852160737 338351080 546849628 500537926 882263711 792293389 963887338 905337229 995912925 742659490 939006476 120652950 354944895 648254586 974001487 790266952 946004495 670419196 723513971 667728687 873020638 140386831 293852029 381353593 706821226 603003065 787478314 438693140 874086838 476576644 911584994 712070607 960078896 299080339 462987957 799630715 814801769 648355332 823300993 963322446 977900451 415157962 518213236 213696338 375283656 861835067 871642854 824168402 875928822 822139719 991383873 985037843 986895761 569653228 662994831 993572420 994431283 994068540 994650035 210820479 611997623 524958869 697239214 920671570 984825129 175995328 407093279 348496950 495212634 134603257 808647069 479214168 920544343 324439057 424533790 397591769 971147733 286470208 483094168 31340054 389497318 106624483 322590813 691381667 805022284 900945077 966034434 325103361 498749659 518972468 654013024 967007936 993903317 136480656 492620211 847518706 928017768 653796857 862779111 676431745 717770937 626102114 818331315 892345736 903259666 669746161 715868111 733652799 919777449 841187111 876692768 294144929 415854686 912283894 927499526 493532362 988788799 813786251 879112681 362457729 526860501 85988780 941598926 84579205 461021743 840991783 939277753 226333121 240022684 682368852 865246958 438998798 737054568 39424050 88181356 45992956 185580598 370568787 578741201 114837851 441125034 178429296 865775796 835180865 917475936 608315835 782543540 788645987 923710382 417302453 693163566 641404478 890480995 936928152 975345260 832668681 950995358 298415111 683506517 98061958 367781212 826257186 854522142 696121530 980608222 178311810 520518135 658570180 760828017 861767829 900008119 356445760 439049210 334297543 545905535 728154374 938506999 79226522 908435737 1543112 416704402 273137589 715431450 339112618 435679498 470658802 574779564 102589233 928821343 435837879 933809911 384486022 996487777 610847913 886473069 352535522 516978593 318217513 404158630 884749414 984134759 90955313 164407738 521900944 571172075 212011244 264373778 582701960 783102327 283498310 906163530 492593956 622864990 514694975 523118767 855464475 893022343 106674968 904179923 464835554 854874665 173684624 480927789 443079066 599734444 924167437 953654582 981104452 994835134 136855418 240801531 247616688 871593315 71122901 976066115 791464630 938747643 761337198 942553124 79830393 184090337 348846248 633148637 674211925 778146686 751754963 769877788 505623983 957898411 568967550 677615551 633110332 954575520 136722786 528818988 845654717 966575811 593159579 777339778 485792787 938173130 232605606 527832123 707054103 747620693 238756663 531702180 823259596 955811729 732784767 805868558 28145598 71727844 785762231 921436842 919193140 997160450 113734478 312640588 166459425 272574583 126954048 279457752 220826507 626060798 437169811 578058300 1811615 259765514 463370416 609506596 62218324 654478853 159441984 974954481 886224906 940785338 950222446 996653062 408199336 669113625 964578806 993863740 605673732 990153124 756315450 815649416 409864639 801257228 854602754 977995940 927195458 956308289 48914397 626191806 238255983 985984817 621544652 720408718 392397018 693783718 110818765 961036935 537219820 778569326 589019362 704072613 602880858 786641327 530043657 993169768 413989143 519207607 242246697 271512458 678960984 920948678 957894298 971475124 385584805 691479099 965914180 981913573 458164541 730357514 563147749 837765308 259162258 826476107 515682517 949533812 521469566 623420113 189646052 450136799 208585522 780657687 450324770 497709180 809167221 813818864 323054232 370471159 289921270 919019828 121367364 558562125 188279219 917143804 74432966 709692852 176942817 177427293 353356432 373863342 191838222 752135492 411077195 579832850 116165365 886477330 784823579 823352409 25041268 679796173 586508452 717430019 57335097 937844713 969062902 980990579 662509519 691539600 429789058 574741917 934149920 991136414 131664599 156814471 517435365 604928859 669108947 866792213 746368488 753404564 496817467 822849590 136657092 452799582 282941270 892948041 928507149 966630581 675563510 701245491 382914859 984560545 802954173 997330397 685079985 738129559 862822694 936033623 936739824 984079814 787263814 903122500 388266422 926172242 250848766 349712121 792462676 797715432 13566618 504764756 374063430 411944996 41954581 474003680 966246894 967678599 904107577 926724512 619800503 779575959 864510079 891713911 64774147 224846060 739401215 985650386 762631897 849962788 863840017 975010379 353850042 781261957 882022722 940388740 483356037 597424943 353651852 447082928 645243969 998930702 706642593 996735713 397387455 925778282 694980094 813058505 999590688 999901416 144928030 488185154 542250069 812147209 676680840 979485736 828077701 926583105 822655311 890195155 399129475 984877933 206029008 800300851 359849494 884278969 946345584 985229819 755828790 875561328 944977408 995850139 476968340 499288020 217357884 515868019 633097854 856214612 492802545 948179538 170327238 996659474 615712870 669200057 370287458 512156931 384945224 477104353 856891110 872483053 415026703 523805050 202896003 533942426 162817949 640144127 967507119 972150879 527467923 579848553 777278046 868083325 170877637 480501904 765461077 943006016 561640594 890653257 447860690 455992049 291062579 762662302 419398700 472901949 523316254 758723589 190187439 535102294 294346233 810213661 823384763 916629830 89702275 342426727 92524859 864785327 681502640 724357843 280866048 971506205 860040342 930953185 805769103 814197000 313593413 790674260 794881627 966025630 625520739 654419789 253934817 461714594 88703388 732699679 832513583 991677874 637822366 985015148 889407580 920850604 925211708 926453900 874163581 874599290 136935356 945785300 126017464 777889930 49437756 849385172 574845360 724172556 42940468 168780612 743418045 772904072 345265600 564076082 486205641 616351895 69239816 148243241 393859216 995922071 878193365 998094715 854314788 863549444 91262331 564625869 727741250 885626203 791082343 821772977 51485721 934613076 281694704 324643858 284983103 861123113 929320978 989999214 280081849 417258340 61864270 964142163 212380133 533126557 328474993 750996710 693414403 719849561 231709096 843553602 686511562 809129331 997783394 998964375 667592589 963211555 5981317 697154307 518501853 634972576 732145029 751284699 222525533 784124442 750466663 896515114 642101173 926815206 825958586 948219976 299354457 862068513 816530561 888035619 66196796 463526718 452782963 953531950 556443782 829203487 987786702 994066100 375502337 879340583 541132015 566683613 477140859 926968707 742859991 754186601 622391704 654643596 522195632 943526318 23366365 704141874 568920179 950229154 659014665 984560013 846485819 931991429 252393075 886892759 597452011 781386676 833085112 922735664 386021449 480825214 721101163 953050138 295919888 700237035 322270835 921764521 606509180 694029165 907438969 964733725 614569090 990263546 536448305 596791928 696735602 858296341 191631455 993234901 110327680 235580345 736781286 881390812 422909519 906350841 934540534 981100572 711769533 729324752 247349907 722936964 756537197 864588406 996551602 999060849 649160271 959120359 821369342 886247703 425895687 619413865 227498418 697349994 379381573 384387535 200713930 598043968 267977524 278122776 181232399 605386980 603279470 764319335 844224779 869233521 293786764 349585789 626586095 751385803 30844570 653431685 240925361 481851460 290514786 881335938 418163549 428796153 650019866 900507127 743952749 843766646 142117614 349678194 701679499 806332511 153234682 555494216 729551790 763259759 322488198 565629556 232781802 657208409 778438784 785448026 657509627 672514987 194261982 441587092 658348663 856819537 425983060 636640322 67338234 223860315 391244084 575657988 90902428 495311266 669335072 807883308 121424369 519125799 619136348 929641052 723076599 832579109 195122864 606181845 695613192 890720871 997242583 998844734 347754352 368578528 132818948 651638930 307525816 632513263 454522823 518817608 826331651 939057878 107134608 916528619 853713831 912857836 484326168 706691978 777024708 866265299 202967941 975249258 115573737 675523272 835085297 880905547 836970766 863115675 196334207 348758448 563322205 821181934 192242827 270156119 702624568 760312628 88848236 166345845 571281012 850791113 850446088 995342469 379177663 632946895 403200087 534386281 480790192 556057344 212777686 279737170 868002813 894105488 255369825 993939782 811938965 931365499 375469647 669976673 321837495 993520023 211382582 648310390 163246442 373316411 586668330 592734563 878096931 917359469 972167463 995173066 437476842 857194501 864561636 981144324 560011075 767037781 470860519 989450956 900044656 962776294 593883900 688004683 721161078 880083281 765251621 792929650 978630970 981255647 76553108 720767846 784339298 981190961 922350474 999145138 90019795 138215711 36417505 784884997 398311243 924045025 838612744 986906989 484768917 939187699 121648656 662600881 543166070 734628840 705654322 840750206 18490785 810147139 502312949 526058487 331302993 785997982 593615652 716335974 347084794 638205543 386573697 553898846 544035255 757266927 732504327 805710824 999190034 999616796 59872865 349998291 632825217 820337016 304809394 466667507 459054850 576353417 860162133 941713381 310421376 816884229 547305620 688554295 866750725 905958327 676516341 689951842 487704486 774464452 4945595 63277806 929374269 954672568 737567753 840949305 290370138 542314169 921752799 971422199 178230350 322656382 898021347 915622360 624132756 835798698 348895081 657368383 538909483 627824009 374790059 771924429 682530442 818646154 734315754 905533635 289308256 917223298 522404478 762098812 579885502 800291327 822859571 868340046 492639718 848460529 211301326 524756430 486275273 929231627 785055546 879576247 37619950 472078041 22084906 801361538 672450999 871888483 952726112 981083375 280386220 797284746 652084979 738150616 383766942 634339687 599981641 728835015 372664591 897925752 702007905 722299345 833926055 963452674 102386317 201421620 145550062 315147615 568913891 576463579 769441866 897883969 867047505 944725079 386815757 762056047 377818595 751298263 383305946 760559848 341568682 869503369 524402983 744740862 995459299 999438300 606794 680308557 969549241 991862605 627019425 892245807 509619530 512366841 643483811 737161893 763293142 764782111 317349642 886177562 519661501 954031108 611095791 697421417 968346779 998362226 335569657 665420672 667332927 743538802 549365290 664111820 904510478 962674754 467536093 486951063 943004348 961192252 547543372 972243041 448843928 465429833 920655384 978807654 322909749 906512857 189586903 441508626 694791664 949732462 536255034 864540185 485576977 490517203 414742202 950941684 753464100 944488441 460009622 647015108 537992569 977146390 621750751 854679023 391785377 829298688 400205035 462414802 835918853 870681027 585685872 670530715 377360859 879137198 886529917 930032425 954440263 962605295 829824922 830669825 814533596 987191752 415756598 767380080 222386490 561005576 721335699 919101600 168372487 826317365 801728205 972133115 605785798 914228961 689233027 978957150 225814466 264704238 424733280 572632733 849303183 897950804 68434129 254356657 740661079 846147584 427066588 462487637 103921935 894864798 445101527 997202008 380735068 820398182 937776351 964157999 235560079 856603036 446618113 744506414 922085807 969438810 831291368 976387876 156674309 246164556 718628166 829117609 499789549 949254644 943982423 965079524 139465835 513311241 402677118 453996876 122265311 660073252 38370805 286913919 536678101 635148693 244084184 521827893 858396089 916024608 602096115 894034109 175828757 606059673 6157733 969635855 178697162 868651363 81091357 178763540 453363269 495674705 703631158 772569805 422745063 893325101 336861932 449167567 152546331 369283641 599187452 689346462 402672658 711871745 334695043 588616805 449352182 899049738 845899533 930877802 306258620 766420088 45401521 184425260 228922886 655562065 593714369 691453769 704904253 768744580 86581873 707020018 350407869 646945021 291165619 785630484 116851610 993314606 140360537 833700679 88158862 657587346 426066369 847424137 796839613 931902752 538083772 553411158 236618102 645192194 685152151 956523546 9442720 113608779 955823310 986803549 688708391 928930832 954144758 963914619 59141092 506234143 118427122 145578043 543923338 616486967 126343493 902523845 267452826 288126605 194138787 379849879 662960930 974120912 90196061 850288938 316974895 901734847 980785410 991592294 437630978 495129441 287556304 577383885 110796051 601244041 511985116 533321583 575983236 648327864 63348871 281954743 370794711 988767469 978589110 980272344 387091171 857100005 521528450 832019332 953961176 993763728 171278513 726213786 349987194 392116617 126544614 529472312 996020915 998040497 616151192 620563951 483934629 924701778 310739035 535671187 922502053 979083421 393984207 623830654 348635462 681659324 921356709 974659720 523704937 755814950 397909611 653346534 906315381 917119239 834194857 888050768 705884533 757057208 910308006 969373236 264558669 755982163 969348400 996742288 282846649 589471944 115100811 696674766 92483149 369658497 895401389 914379084 517491261 855888368 548295429 613791813 365078195 649152064 851375319 953826906 894168122 939486582 389163207 833557286 228658176 734752586 992720357 993502433 342203704 968872445 943321333 971961763 386379106 477331215 950553104 952592246 89328693 278553108 156949548 962568067 29763712 189327451 104235611 130559766 271195481 637590508 567311012 804285359 656953766 808394039 244836426 435208741 981403308 984217636 526365168 923669818 579799710 974486251 403860633 697237399 276410069 819374050 571403426 896741804 436427150 720205031 724228053 915736140 845000913 864780723 431316628 915566063 274629043 753012075 58559204 567884598 160810461 287260813 7714643 318316717 692310559 977258259 374685961 637619558 268353178 723981640 150402013 697021908 28371380 246262075 766230117 949831617 243069336 253991683 235943857 283816695 507460537 578021102 666968795 904315564 654417737 837721299 107318477 644908023 154719251 854107444 71462224 645755524 195908520 499349933 716788877 761056126 870276176 962410193 620261486 813319118 705181649 708201321 784517745 914632510 251738049 323849048 258871170 871917993 157738722 791059817 195829536 567089481 778978660 797907950 579724634 947975431 966307983 985594886 33846813 775139673 38641938 635446682 141705155 319627202 725924276 914689798 710434662 756652246 242891602 337997525 737637324 802506347 524882375 812459575 453429965 991229315 107709938 119228140 955539548 962096244 47042592 873246489 559385784 966317294 56749423 435054227 427793116 570158582 444319823 610307538 558382129 792068166 772694867 840571338 956767369 979116062 498580452 561553776 147892803 335499588 343233548 425020022 502132093 502576190 261342887 550051783 796620519 923154030 673749588 836931712 265650996 420434827 893824921 912094793 820675701 887304577 541259814 848607598 910340147 933075892 154756680 598408870 98802205 273444256 714690448 905482781 35057599 926319255 703053439 835454744 530783904 845237195 984934306 992004846 482736076 819443398 101882043 465774360 300072838 906500092 449091894 646622680 516899891 670122275 805564015 898407258 150727044 707793316 678167214 814566660 712677125 893818324 202161803 634078956 12357206 377459798 722993085 982436914 925933205 986591687 165945423 832777078 233586339 580745212 545590236 693261937 501966386 813825988 280842834 747377823 677268823 821677001 234306877 250349348 21511861 216130387 431990082 621601017 172734724 665655296 124167607 235011078 693747774 800727326 284210790 769905441 259000860 841820256 366893414 898455322 156092669 773816300 485068505 501779683 189910710 541156871 974602784 977317721 240377236 768541902 259682079 831803686 794951807 875126581 566772054 761637082 786948302 898572314 968866675 983373625 292605863 428269732 593619421 703799713 377495969 905407710 345990952 576369521 783330362 903773786 512705883 966436694 876279463 882571603 509755448 660067536 775645564 981452754 125885334 177911641 125394414 639562640 535368509 737670300 771333815 924456728 755744005 957450689 714433525 909598138 797136259 863376691 556163243 928081467 870145602 894681735 50993573 683518328 75684303 596273233 520771299 731116610 892066943 914357389 540006123 753429822 528117637 534032574 413124133 469811130 384452181 747740465 643022753 661170068 983000367 995408778 777117440 895493544 692443655 803606122 80445503 337633646 765987169 903713946 755584378 774067702 624926581 982982269 870239290 983028010 233633906 951908939 14014419 54000829 542890230 838250450 337445572 527702604 501027411 712438806 429087333 733118598 797837297 902549419 24764991 235439513 858477222 995998215 801590341 804857904 556588479 594373682 722482373 780115989 139851127 598729814 888280740 974371737 568313519 959914915 760473199 963346233 40296526 855241534 330110222 923301473 675137112 825078836 312872619 621887380 595271676 723311461 703405826 810116360 657784988 998373842 695268060 832267823 309222677 793387830 251493598 516326337 624663247 872906740 681692357 851982024 972945532 990837285 556523190 848132979 907553168 909653506 912427985 963173731 964565000 978273135 439277692 670043716 141937284 820696813 653306630 816995925 989294186 996592147 899482621 922390110 738548517 808244708 127437734 374862966 397810232 821072333 796274423 990243957 44855983 697801541 864140839 874117191 772998972 794740465 182124791 224190906 905671806 982342128 151829224 409993779 724267341 880647488 333656286 408498033 300378919 492859293 360576929 998657498 205441805 625260992 910927986 988190897 362160715 633626257 786347761 977022076 187063356 913105984 43290221 845209841 711604846 936739117 885459844 989909010 922747285 930235060 853279840 858638565 761982123 962252848 377208719 992078707 378254837 958416811 45367477 571605655 617754152 805731091 651447447 720176103 411676918 507042340 745680528 987400043 43630360 102179118 632261323 844864575 99885875 880846070 719651328 801358960 760069238 775121361 973296962 976385369 919403743 979675334 597158869 730304263 495077095 722916276 552665278 845835192 93762351 246613355 178190868 197215205 606791418 973084450 732313349 755373899 794194025 823187855 887967786 897362463 516171819 821202736 134666646 677526448 84222720 974465393 627770408 814943065 457029949 954829100 920138533 958255547 20655181 660847771 108028751 700118778 797834164 967640003 461628236 579897697 811917161 819002491 436853891 839614094 199960601 836109441 44521820 991532185 77569928 586800925 330082332 872462773 756616332 840531548 666393392 770723512 774674941 863071037 763912996 953444362 620958134 885771315 668241444 698487515 473216628 891121269 113512215 118902775 740012608 881010079 456893782 961274258 748784144 771709633 802338552 931934449 844085299 989769299 302751244 828074050 640661189 741240217 195229086 861996976 309206689 587403178 119183546 906089105 669590386 999997622 974179733 982098995 632530960 638831467 948219358 985398680 125096451 692187300 204736949 341356234 404724172 531253959 257614706 857327556 725417575 844216802 258375773 410719747 45242659 920156628 987340068 991503012 908601202 928195112 615624660 698932195 331793578 664348669 823560016 862700097 843555087 939382120 856404441 932318789 67169907 321372899 521144614 940995100 971076301 972250744 68827264 86630301 945243706 996722625 962074684 984199141 696438995 932226534 508976406 955625004 107717935 594417395 433439227 907050343 785291722 867779449 357683713 610924181 247288027 785902249 396205073 910911573 808236041 873007129 699007756 787114587 568305036 769831060 975886041 984699061 76824752 982217303 829493172 924108358 768297598 949799339 290317542 780502484 703196723 774925056 917787621 971848542 726497116 890882950 82910113 127420263 682213866 915220424 143868488 343528663 291866196 986743264 572098007 897499654 815522441 968454670 933294276 961830992 194220328 217553849 746968206 880610181 815024231 946079753 834927993 932497723 395281461 720836056 925937224 989776859 234696081 850373666 687289351 852200426 799857287 963262490 404432399 659313158 816439974 839138150 160737800 790404109 88478688 489123969 965464795 979848777 671725703 751751756 289213690 481653668 212879492 887844813 144616897 749752042 868760870 933157285 415869899 481062046 311788517 387852864 759257142 762300410 819767550 966326094 806889841 878459622 306053799 321507815 350635346 715906598 766380275 944809462 258449492 640840299 116938991 546774166 639837766 739532422 761981614 850144744 528869420 880105143 230760143 884561693 740905603 772743175 496120740 881974648 642993538 972170103 477091854 719123382 453003620 704950573 878065524 988366618 661117534 989446994 840149839 940075213 121532180 796234190 390035443 577240157 824327571 899025605 851527514 865433082 211060185 981146386 490035138 776874660 63550535 578620638 820930528 920004463 578153415 917766119 704120270 940152164 277055385 726485925 878285288 914285163 692546612 728789442 45940317 561419226 719602013 778447417 549091200 602867804 308133786 561250690 180927584 767183087 801598288 825729602 542788235 743320101 42159339 352046895 967940502 994631454 404953613 866000178 120496585 779205769 585859688 690477340 183605668 367756051 523136714 818474352 459505876 894004101 570294030 945064364 539886370 829938771 17358323 102345334 620382929 868717627 728421904 828700569 483320052 560593878 607518820 924814875 591635680 929556518 451364739 745364899 352336436 781085400 871143042 923336040 160516429 946362680 297004391 546720795 565772498 740378309 301024977 588631656 753304039 869323169 22159271 912643802 294849177 499699018 843938358 858722366 159729976 525402423 441156869 590988778 888264019 921147515 598143637 784576206 148379993 266572880 195019711 661613013 200123391 945474940 866220361 949539502 531934602 536066895 972381246 993861613 936920665 992222263 477031318 777425080 111452629 321099290 11053975 792785021 198325507 626000486 574175082 753429366 941740193 989808785 766466154 925782486 429406976 658181332 687467668 960787242 270189756 720228393 590135581 946624205 897510828 984414472 337479832 661531859 575873013 953758260 379929092 710521607 181504951 656764305 905270802 918148974 190767090 571314976 847582374 865780197 267186028 763325794 765669288 896738510 379341933 623628808 710269610 860305097 274738847 912036524 840726746 897534113 158488563 366047572 54830172 324720513 782064987 785228754 760356957 845576640 142700296 389617272 668236389 993924689 240656540 808352245 439048855 582845990 427482656 866003849 676499689 975266962 332515701 999639062 917252401 921153162 137643585 178854166 727602815 744387447 646528410 723232183 808445599 990245285 235223879 645790483 13649705 69361411 694678790 993429959 884667071 977818586 623133753 807928499 750371780 893005673 29838379 765355693 834513793 990572378 564823145 736554093 270266971 872790264 587584561 939162433 624934127 852684656 47586902 536436650 80864868 426666898 178660201 225041900 205116871 511705934 320810755 518594560 214671782 769726069 146843155 332044801 116817141 233370048 698379851 931735930 388802398 938481441 416717255 674733938 860775407 998013072 860763213 861332047 81296516 697457802 595068940 976812699 543981758 576431487 467163202 480542854 939984357 970050471 14701256 463833487 596340782 637012625 364627712 589576745 364446249 990955547 331395483 547464437 674380463 733752040 612251208 686319038 118580350 537298176 283119250 360619533 387413248 624636023 895001871 975752947 424406623 602722642 997093452 999580076 284411249 949734982 121414617 515013502 715091972 910791293 591243873 708108472 976147008 979091037 441094167 764257793 351308643 587144148 793367770 958673269 505529615 661980100 903938938 907817210 776031902 882436006 120335460 995955371 488187019 760091189 313400619 389530896 304564517 870502922 483536280 550993789 616420316 733890738 299344860 351590408 544913569 830067145 461155282 694058898 793091707 986886358 459026252 842507073 338483531 490384953 535065230 914253705 58061915 109531891 867718253 939355501 598987813 690860923 526635089 556926308 767660224 844943358 450765169 520211048 324504101 556140777 904095157 959271679 26759947 129579400 933098246 973901600 955749306 997964015 562514528 914176206 588833213 938271104 573524372 945575527 147508055 634883361 747183247 837357276 614027162 650007558 570115661 633408968 835131071 942699126 194490531 511424492 742799811 765454502 389614880 895461787 310960975 728249138 287722322 378029558 692914180 767232518 739136746 798156438 267253633 437391842 420523383 899210969 773458495 843536496 811197635 865728556 865619351 981532514 417221591 722735563 49205091 250644774 91564745 513414151 239043015 922596103 905476033 929777600 378607994 627753810 525610280 955231687 552972896 603791567 698542864 792144463 984377726 984726080 233627553 894394370 483457655 743756099 38978206 395781139 128481724 932157197 957993278 994284219 136973281 145314237 84792512 669323597 153430027 609204138 973880443 983971273 618100860 888551540 889905537 932035406 260901024 592736258 771717435 792672837 411522001 596619781 296950555 878004759 2168998 833696924 283865076 301355168 154218552 811747452 824955816 829838034 783840386 935415961 780589607 803399309 501715023 677230642 995298759 998743956 159806589 335252879 631013297 786167418 673560402 797680312 482027711 952680310 44207020 392619914 470829396 787631736 464416464 764973978 999917457 999996839 671424030 912333884 215174404 882624193 485095569 929914039 818977962 895320407 211563813 218257899 365740119 661603830 905253119 980660148 290121859 897977643 654185416 940213795 784647733 981086771 422785779 507843578 592713152 994277927 384730004 838149179 952851946 978106001 811747186 970121138 751779303 890407531 116170426 641286648 150850801 308588487 525917002 801951768 372792053 453437172 775652411 910120190 678722086 710912000 759609348 966469829 394885049 780244478 384070356 604455322 240446453 914505924 575706044 649035961 896952403 939474332 581950843 605054739 29825605 699371875 875761718 973706544 884406154 915506833 280208305 731264915 867933995 893715790 300811850 411545865 31378019 280124225 257328331 428440416 893643291 905486562 729300702 735044892 728608174 839179721 858071453 962370512 51700461 224207475 84625010 899856980 611285983 643821984 302379190 407487818 865672689 905742078 917571167 995494456 163024038 787370325 316487724 840776770 641990566 794589088 415090842 673749186 239744979 916944060 338711758 918466135 153219010 835128436 110321000 704836563 794763511 971471862 241081501 626273427 188377578 516419161 32894437 617879351 709748423 944047514 465454576 568009008 33686628 513094087 563921208 619539118 464670303 730670987 403698483 923198307 645831934 665617804 234986235 890672153 981112184 996388707 319035814 561803972 790861494 929727632 176325810 504080142 248478979 764698508 772669157 901294135 578309832 862520523 168341826 680591268 737707349 953440414 554659291 761199058 518499634 934023144 580023014 673812432 283181202 827056165 534396704 535454578 828833618 884125196 560811046 865497624 401643783 479592814 144795362 838228028 257108772 835967498 932104075 953404432 578674314 986186275 485997648 708918294 976212169 978606057 693102305 918793458 243363123 418941090 216237623 942421156 760278949 884876401 632083784 903046839 706163593 999158240 546797729 603667625 94289009 341173797 525824748 619263927 118024419 726896754 873960323 893071101 300230287 596442296 335145067 448453357 154455339 239520538 617818847 828559381 590601818 647232379 397842404 951436471 398469901 561382394 850692730 927525799 347668338 662997933 45389202 392810687 898654251 986227333 893543007 994478728 32878572 228971119 930284255 964064448 268624069 641961281 553914488 686329034 691014983 864116030 424803070 885047510 814046767 842923077 532769149 740772040 778098988 807553677 576359840 679862965 49287594 750815363 757069735 895591781 627844079 919288920 592787275 726279224 236109350 906930190 46111256 207203384 327374144 383259695 882972431 991926006 784493954 947396094 533371293 998554027 617986224 896319812 492912176 919286867 803782598 913244269 255045074 384965637 547088571 658095006 173048748 529053952 76383444 939853743 880958062 969016498 274262524 809961339 28735041 515328957 900911037 909461905 64937347 631381508 929419760 985768149 77493595 222838884 288748051 752157645 566609627 733076934 155214791 742717048 209135602 580174830 824122940 896087702 121464877 782468640 153175329 762553326 702755653 897726842 636756300 761349261 916144549 965572811 826880420 939153992 296133251 944648920 299137192 783899201 883544432 936728621 533907621 809633726 818122048 984428541 785516834 801617894 444739611 583324309 946605339 971670151 421004271 577969198 746780496 975404393 122488812 957255068 684488069 804134530 248098525 339169025 575762486 959566425 729680665 979624354 469178805 989805381 766033531 876019466 439904862 443803111 309709990 599734911 65633169 699942101 589706500 719326033 163254793 760179753 523159090 711689045 369876957 909878916 313455615 630998031 907988641 926024565 130324576 889502285 341130026 442118112 86492229 551634313 548347275 616261706 52930589 116162081 198958226 670925263 958597893 963215060 460685406 560871839 396955259 591347104 566389173 713474739 947594513 997040169 769063949 903901374 929127153 985855425 590011543 919534151 425664956 960985050 725352165 798172150 31952463 249769385 596508144 814068838 428485529 638742505 841343340 998224405 187102089 394825610 772274880 945341842 455256395 652846217 987889693 995105296 411287598 596038680 277241515 445309566 714078299 879821087 182141503 242099004 249448393 567444535 421831970 489281356 224079603 899290205 48379538 587344899 736482337 804784242 959722659 997909822 478584688 765053926 922252983 948694121 866921001 975612651 695417445 868812265 935034406 962338669 473079853 698854288 345247084 396292514 616612023 724792681 650315259 868839429 746963802 777208734 998164215 999990600 656269857 925956054 874611325 940963159 901076586 936092345 345070358 402362278 759777713 831104579 554165381 564671825 6178644 116047626 472115364 838325514 327442833 782128673 119399319 692291264 620300206 910580606 937464075 966775148 890776363 901683108 422186514 474915657 882691686 945821597 298904207 588995214 757760888 775559007 61653913 154640164 565123899 947554177 948678427 985791936 987644486 993496613 882432257 903978475 395945650 923278350 882828458 993983945 247907047 786827706 949672485 977631646 996984640 997298381 331149924 357974083 268736524 990939514 453667080 916611699 601378962 932506608 896145447 958296489 103777451 678382215 608083964 948080498 509109293 784241985 157367622 171124194 326554000 739385444 359116476 929324117 23862050 579616887 159585506 913194260 413591922 765766276 81596527 475707973 436978454 585793885 795630267 827819990 420507170 751759549 293868987 891621220 229363946 694508507 304390958 508092670 163872539 878131345 866082217 929640550 543492471 804598991 938623 23489803 745663522 825565946 454867319 626978382 666872177 688547003 387772403 802527891 797265818 847663593 218290724 659452612 402836288 690503533 950218329 963344943 485053949 846942081 205256469 432251676 591908787 768154698 218778578 324522934 946743590 976833923 920722279 972053530 501782409 689783602 571159820 918913764 222603458 631982787 833330809 844218611 396330926 768578294 701426300 909683042 908484905 946705245 75088143 736083661 291400048 900627041 652144379 767378726 83051576 250212197 432289388 577033446 435697510 753714985 681013015 814766451 733679532 841803799 303453878 714530835 261711284 875315118 930355824 970233324 359164912 711791588 878227782 967146953 296976778 457092835 364537765 842133252 920413637 963282073 297674190 442363713 117195616 325003352 729295738 958724927 173741810 729413987 831176690 841922088 338387657 392156701 907511373 991182720 603348278 966537998 494510183 653881496 252713750 625270682 709502847 736768995 756271923 793712213 705663466 930596508 719437390 940829058 270866788 290535041 874067786 996378038 855974997 881358187 413962664 829785450 283530280 972095633 430062131 948037215 641082431 926631003 788958936 988053365 908251603 946065695 286175041 702545332 109635426 262955232 31562552 513593826 759244802 797703686 341769278 378286684 597432949 957707491 885130867 925524279 129630113 529017487 842579777 931957633 298848332 447271816 454588293 800139811 278079797 614455843 531937919 788862665 225371507 413346481 426233874 978797735 17817755 302363973 425507282 893385853 366760127 626014767 977083518 984328615 239833544 473083025 143091555 314069330 386178101 400103426 626949189 691986695 679856731 874579684 786839977 972308216 680598748 945775895 27022338 878314857 570771557 584302258 629353237 903463021 793770553 810034037 642045883 865197227 175512947 735501588 446827461 554982312 483961698 946843778 199785909 814082781 211039591 323232193 135150653 913632720 607820669 793127280 112378144 208445144 575817858 922525302 80535520 452087515 380850265 955404666 910420850 915103875 670732234 738573111 215656886 432470186 587877604 964798478 683651432 899295771 773880235 885522185 536612080 703672359 933785210 964101309 558703874 818731522 766062357 782461914 628180714 651870710 216940735 820793833 255381688 665024303 452495720 870490915 959630339 968255556 496069590 733139114 789863245 987360169 996870067 999996246 689714866 717792046 153015823 542460048 285774820 577793953 846552787 965326124 885226479 941352785 95484579 573918682 721805827 944444047 509391834 687599854 897859798 933412295 669007468 744979972 918491352 941687929 635287704 939902822 58390354 267662889 982479922 994216080 331937629 711151866 186945150 915924826 290136437 379087016 102090082 659577822 566739173 893856316 740938458 930697724 56526775 873591020 377466568 760649257 328638728 853751825 865743502 992355309 180945097 182206914 244424320 487799813 214342401 550095530 198944566 300688277 778015900 911659150 898089937 900256601 608615631 621605983 576684385 899955076 443257629 464062361 169296483 924988872 521480151 967273981 163341447 746859940 658403158 916964704 580648694 985984032 439196323 753437346 130902210 572392479 430867106 823154393 994985119 998218134 67962305 608453798 303430258 332253423 990263570 995224836 329024799 614832017 947059089 949796841 948552057 952710008 630071395 803217583 927448907 938392244 546255282 730637440 839942519 991015518 183279131 185732358 227739696 342053043 615927481 691334544 978207490 994106110 864243395 924866698 111019676 135923402 376414204 577011400 224787722 227096246 266830202 982095857 755772062 854552008 316069663 886084023 853999589 881576381 187887474 875822615 219312553 412439634 964397828 994857219 368783718 794214473 662473015 978801244 208472768 262189498 926794121 930421596 116513259 156434133 485247289 832886219 460749185 541285071 497888662 539255284 174809112 477118610 943253447 998829999 933106756 976381051 670151079 909558054 205505070 354240287 256854175 427970976 95347533 650445014 388210038 521286644 128811145 711420878 612148269 966859679 519315154 659459570 780214345 920403909 413547832 947691607 296879586 934357381 501911969 891684560 60728428 860719114 773310354 789522935 155644394 202043152 603543547 855047258 499419736 541722972 916074600 936018520 780388475 889269133 370733615 627866181 801079830 904779218 697198526 858027954 626278760 756433926 435157006 615033365 431654294 849661948 281757461 299193805 300377070 868655620 825276601 827540993 439348183 903251371 336215419 520647310 714227449 975834171 934981047 942731175 760421064 931513457 185117267 983825112 122291604 155322579 836175774 876252512 863608428 939037405 45467373 725191242 740719702 948397460 219031922 243348860 303118352 336271296 867342165 890857430 26894491 127800590 962315870 980242960 341422905 489770153 841352 219713631 255412557 613305355 139309808 861358670 777338386 992568859 514698483 744477398 547225836 763595194 359184465 364585758 690433543 813243593 194712362 295060719 707307420 977804145 454347911 947348777 47718532 704958073 702401546 928865726 77562624 289989298 688840934 940461336 389230284 554149040 725850169 977500184 322262614 403137021 863583560 923535944 879525277 958241237 977712503 981114811 233867376 891032722 292832352 856958237 404449258 927787569 718952251 951175313 695925539 847561758 895640689 999473848 810033338 816631611 768636402 878831879 254535408 300693597 772401088 981235671 381568322 476895176 5587309 213625107 421347836 900852031 653337555 876048167 564891880 612846287 219218411 894122260 287361568 481036241 362767501 937239584 252484812 624628902 873326297 877916354 378042812 981226357 512057856 769383910 523731407 996757617 656866650 971969775 346061879 591825442 123083356 922306762 117592223 604506260 953176643 962602271 942068596 994023823 304425937 999644153 778624500 865798828 105272600 824232529 153254527 464927429 588619841 916860135 520968199 656561696 841692548 867138324 103491571 294017813 382272814 849880598 982283144 984122149 883136272 989481204 129505066 799558509 712903639 882974843 601559481 847442897 25610606 182919072 171492528 862179135 474578534 695046959 76278467 165465346 765684473 795715413 998084552 999578081 23010161 252750341 571495964 729709205 497942423 575767918 750936284 852380623 774701187 831123833 457613877 533453798 857930768 906544036 123703165 502417232 817163088 983697214 959488365 970835781 131766608 551707938 742230692 963852062 505280776 826351286 608220238 721929743 747227092 763462770 163528545 640016357 775999524 984716881 884955834 888591419 521859658 619496053 786321778 865036522 651900078 991594854 121084642 691590619 462234792 818455233 758846119 785439319 139363239 255792361 57802035 263739354 214448045 418902342 404668609 834207807 867738216 920614055 205135308 901548172 293574855 649435954 260610477 888514740 13904695 799135823 540213127 672658947 446190228 751839143 191858693 694704454 127431409 377560705 541630082 887932806 812126355 901509918 790656393 889331211 133623372 602751648 996148564 997196804 56968999 278831395 508254456 761285010 771325835 899796669 874007030 878687794 590206664 841911036 550303592 705935489 523811345 667494010 739647985 820330990 415302052 909592553 69677953 902394330 516830240 990171197 522615828 669959766 28186570 60044198 63974370 334250429 617698119 750612915 522752335 863210563 984357663 992729911 841653131 984135768 855381253 919773137 601452648 703538782 976823840 989816562 317603640 997874887 862007584 923543496 492082687 717301636 905784543 951271444 510619331 580107443 653987160 819116658 417848418 804236084 156217198 632703585 438559647 537720228 184885504 595421820 119059783 132774617 33929831 361606337 643979371 790023347 464229969 615432640 305309306 628050443 237098184 519671237 244914707 276119176 322842698 456021329 363006426 626724642 325523706 670270859 164252233 387620518 955726395 960663258 484097233 661235746 381359795 657679183 565680294 774299120 367474696 508474092 691956649 860224230 113557576 737439259 423080249 691128355 484143570 900637171 339458531 703872848 238406385 944069523 486296527 877896332 735970586 941836913 121375586 195380905 122071017 232971027 217965326 938676401 677842455 748443388 589285846 776591430 731712680 965141277 382013543 532392154 315934240 926128581 380883329 398036986 994477113 994706926 932147417 973825459 864596488 974738546 985067874 995701691 192767515 462455268 887483450 973360352 877552497 987400986 861610271 940526692 381947587 908547742 176607689 432155255 998342602 999848263 197468271 870590604 273883382 297005674 83579715 406964576 280395759 762604780 957807775 964514462 508705294 552159302 276578798 347350743 148176218 809557859 98170298 232410123 381604200 421499956 108066034 455936996 147492373 433674950 661854204 811899031 948266491 974130813 304368965 548385443 50455555 598937514 526750759 762458811 476666927 597513357 773585821 881390144 568047054 940376866 322072141 464279040 514893674 767548995 592879688 596972418 761329527 809426107 949745987 987347424 740783832 927122493 22313324 577638120 126524635 411253421 65258696 873120417 86094889 847823876 989815809 992624475 724592619 849905845 499114475 948388648 857733632 927809034 253935153 742893728 512341077 967521709 26628052 440229061 670546748 966507822 65784235 683536484 661792335 900303207 950673419 960855458 955641730 957916298 410376851 704670586 192771389 276858764 642139778 823478413 246837102 918331013 559109957 677122794 208547372 855627187 325150096 879862887 786856621 844258442 928498612 947020126 619892585 935773936 927244686 940829174 456438082 663917850 640081335 809877348 652647114 980302877 425625375 967783208 322403624 546683776 258893540 725889887 178216846 717951956 787637949 973205947 242389208 947622046 203962402 992650121 440612153 833514101 137091537 284353741 16536323 558470093 348868582 388038814 880846021 937284506 211785594 511125122 379592493 635302424 932231766 937663282 901538418 973979562 543193831 771720522 867542066 918720820 676197 312333513 219903038 965011320 262640375 912304389 281466994 646728566 345732392 797588287 550452223 909450097 24046647 242768243 121742523 501565424 833620153 854537142 96754452 317199432 302537110 614332926 96322386 846041069 604151285 610090305 779725453 884957760 145626088 157656604 23095800 567767308 84862471 197396717 239995379 656462449 798632856 884019595 110910625 226600538 333115754 958397525 991054304 993627952 936920921 974600372 595040831 613713664 515899975 726472774 140279876 310097295 219323525 647386355 347333400 408782203 555252495 560916182 184630250 208414593 233410653 839324397 859594171 986362414 651626451 849324621 149448224 314836924 798971894 873347915 754707919 977463956 74068577 907244922 870165714 958857844 622060007 715075473 966603407 986298881 183878371 592203390 759892231 963783824 144667011 556503210 661717148 918352889 238688402 842137083 347669388 486488157 817513138 972884616 191245115 495528357 276605061 702957796 385986417 803116278 134983242 662761462 449978680 973914179 610372268 858612473 497322515 708816074 675746643 727144832 223397405 498189039 817245958 989576492 513079538 764688373 419588373 958336517 619207188 892737107 278676332 803902468 362222943 864775688 20679951 934264140 165606803 359800623 669711563 908302715 741343215 924108932 215477635 674524726 500172230 770154722 829716981 906880370 473593333 987570075 475783506 973300589 887670403 958190761 457468633 676802988 247677863 557565455 448758478 955783351 479633541 965374742 741262559 887155385 23286273 35608640 266368556 706011595 885894963 958579086 508464250 827715696 587729677 738105701 838231984 904295219 897823743 968634108 301484278 366386905 989634575 990351989 297919024 630635324 143232589 404403847 701592054 738853119 212763323 388924013 814198262 843735616 693178061 883407671 801067595 960284729 896545295 993466018 271028118 995853777 405247282 624749776 894418600 955452687 322311248 439547976 947563112 989196310 681072143 748612054 168540694 845083399 122900816 898130426 379838843 393888731 354572323 518763979 677232292 916235455 183498912 498752498 150038013 195621534 936192822 963695399 614206402 996236333 254811890 431463694 628403702 768347772 30432739 398638512 595893027 711093171 772549242 841387267 782693834 827696615 156914393 466069122 177618697 946869260 143353640 322444447 724842663 738180836 136943817 340454076 909690584 971513288 432560562 962764056 393543930 742990051 238462575 913934874 196620310 594697075 437926831 991518313 983928311 994904059 38061787 203349190 8609023 501343197 502001913 820284738 248936823 668155607 256340826 539361021 826770520 982176869 596164272 822486580 876729089 993781589 493388661 663762879 691296564 934878267 243929331 411545730 306358260 830308904 375779630 833855859 901395091 902715667 868152015 922118945 589637111 769728537 201972878 380489943 294931272 559549362 982376690 991291232 344704416 555092178 147144999 612307175 881485482 993992890 446888240 967034715 991237394 994078180 96461139 431173211 721687552 935373310 586499472 614658440 770419794 877088255 893532605 962371606 266118292 529470613 778748645 872895749 337026613 708181683 956928963 984233479 475885159 625288294 473247841 807839574 912899706 963064217 556343968 752000912 49851089 708924407 372197486 972838766 428872468 991881177 578533923 669109291 855857463 931574331 395032381 580294651 384253416 848283889 482239629 864919942 18268452 663406048 457146506 824735460 514156102 743216960 865948735 966705625 119334391 573285307 594113404 998011499 431014620 956555489 679359049 991188220 957076692 965991799 331391855 906177716 139787986 442197273 675346715 763627684 747987852 986770500 180645783 874964028 434742298 985145839 448958109 919480361 332071560 772168274 122465982 755605348 377244503 550663041 610883105 674960246 583231615 609661891 273561300 468106039 586520853 707067715 256561086 916733498 835891850 987078106 962727555 989517939 4201591 655249693 311305929 756440783 282331999 385064623 556534822 567723995 935487482 936768982 346115800 620208238 487399971 758954544 251002791 642261187 270808124 789047296 32558936 121057977 119696336 316661417 348156652 691039371 137535473 227040936 406137018 549063928 850638089 899537192 459473019 686901011 65628515 893713565 303014964 894476430 204810084 397914413 641042409 999041805 860068 165556466 890508389 899134785 834135876 880415500 679185976 821873765 733073972 838385466 434503985 451648243 796794736 829968116 809447281 875473810 990120807 994280519 132069069 753790664 486156038 602389114 766442252 856546171 232170410 539033298 235175343 720766078 447884746 971382977 150456669 599362836 905949609 942563953 341633284 829947364 995990770 998810943 41815240 849944285 796162763 830204114 916494163 973311952 109760026 401443945 820354136 927350745 224379745 478943534 169225329 338374754 593361763 675337232 923489904 977022691 617868090 905863704 488491642 645471276 91689162 508210503 399665518 583574604 592175481 927426821 710779977 869860156 852587274 863485382 344843754 552835068 81731799 134320550 166731584 841745581 152814548 552548038 54420263 504926597 974513069 979460992 915106123 958224710 606601245 962583868 166087280 571624439 564392088 708283673 494962881 773875580 930660254 942517087 868683560 915291388 66458673 799332853 105468015 837850125 96766079 482825603 482248510 578438040 569265608 840052011 931313294 939928604 827366578 881653757 171254051 610580045 484787754 976636812 5196764 352414931 77885801 484602912 245796547 366168997 370074332 841948222 889792216 975991089 336231986 935088278 15663982 761126332 879009972 885487657 546347223 614371559 908291455 917041398 902410877 984378772 906667515 936259829 446465927 821304749 936156959 961832029 377003909 628869030 642355947 756316031 235478730 513963749 694461 441767374 15812699 585529090 424369524 535758363 959519507 972734618 177154825 433365806 90046352 954110918 395105484 894161802 643335022 726699896 384075682 724273541 617115473 895070303 340591057 522417803 892793639 949049927 662536775 898499084 39983473 639104991 60311250 617364881 687919201 839267151 806585211 821662235 427570691 633132948 952043754 958722812 755029490 816725871 404566834 500967166 892767346 996740641 740726343 770652333 366666757 542895200 679177021 689068757 676865397 939825838 641174415 803880044 660980062 901045729 317615566 391181123 199625036 823036684 345198544 673095872 596859346 612718518 175216205 253505394 931773886 973108410 582844013 685673803 786190913 825704664 603324780 855342258 408341002 988716166 34891789 245811567 159368100 973440241 693470563 928216066 564391618 600205705 266343513 698628746 671159023 849679004 843698283 958633580 474640281 619576956 889590559 941113996 1136118 176976828 318624353 788469593 331882044 969929533 183232721 401816228 511930214 699074613 858477941 912816050 421152869 712130727 16698550 64681680 285485773 668385604 793056768 815689808 175383474 533011651 751561814 913525243 960786593 989290781 900698087 937943021 959931324 966855053 615561200 853795317 967974098 974125243 336193106 914127540 820992889 879801996 597872267 643300215 284054371 913343982 34362904 561095154 91115348 934251817 500351241 884629051 183781755 352567167 507772478 865680859 273219802 829835427 466275232 551506846 173601717 854564225 516644631 581683432 306954464 896411624 700917596 814527543 767189999 912839043 223326746 805850935 377068642 571611008 930351136 936566482 85611976 623876355 554870843 594566386 611272739 671508407 276724641 586590682 568734750 623774001 873297322 916590249 557951158 952108082 559338828 674826434 36287965 389606008 833477099 839101975 824168671 934396047 440162023 912732897 302408653 753571717 43832857 859798604 166408249 487847224 318258211 877448297 524862798 883958530 505136567 588305428 410926675 827606588 108603678 499003409 406920734 629548827 416572989 567063178 14440335 743894901 823993934 909670930 83698539 716441108 482853907 956148520 28733415 165732196 234607128 515966154 379957014 638679595 152988123 488997122 139339039 859164812 946938496 992079104 549212807 704427251 65242860 923432194 602324164 615434088 580311707 889713237 842257602 877614897 292258183 995487895 986485575 992935741 13725209 804751560 838182236 924038617 809434691 876111924 737866877 992697465 819684084 972330395 37568381 258405061 547915917 918398115 383267056 389199500 200067650 392518818 354441638 859638335 164390753 414937127 661285767 713646528 563623216 997426868 214543468 305325260 873748641 916916348 823799834 895117840 519550805 880225322 491103672 714418970 434327465 926412385 86362686 624634341 544973565 661119705 19992595 243273675 941277006 970514530 667857141 878998597 184178701 328622475 716303576 994934713 890763507 973052690 601801420 859463487 679374993 697710749 612348642 797109940 609987759 829685140 677897159 710887417 693003347 928564669 30145018 421501705 799647772 923888447 17597900 418090625 238095489 637911770 370527240 775287678 944714276 992008915 557110079 629674898 313850489 634987013 484318686 867306031 137854870 902581439 501872099 887116453 199981490 290997950 791730752 896930372 98039544 691334761 386124410 661495649 224313805 313011886 877949204 939074843 211114841 561347808 647690065 899306539 356955801 602421554 939433096 980555161 695129656 873783438 467001004 716989828 892329964 988086142 619007768 820489074 91439573 785217493 740589510 915974165 847203527 899394057 142574751 277363206 168149667 194125428 713839425 758598248 584381699 970415287 465761971 520180583 323167308 572630919 679804197 902400631 882423243 969642046 183213280 294980790 829925134 909608310 971587074 971843839 597709080 942036024 170947616 694550276 51024552 99025319 157854460 951951495 525157244 851442873 104752588 516664611 280753352 926533889 618119857 774290968 674866257 821655137 574615395 907260522 928504193 970620014 209606952 548659814 676046300 754906935 58377859 63431369 73215185 519407244 73674345 897269299 579323843 763327250 958093329 980421886 424291514 917776809 832701067 981936979 910611329 918443034 773139904 838336085 428244084 453278378 525466314 846476950 615775213 990596822 21585170 744469653 542935577 619059847 600458421 844756630 891242760 987417416 109655677 457381967 260568931 987520316 834160124 880232420 248457052 836615616 300122109 988265137 208525536 468686973 742548775 836914598 917949633 926716450 195661313 680321082 469458591 691289619 800631489 901756727 269676181 417288275 847462071 938737391 133187450 993623773 536651415 958854025 636927801 664591173 35165747 450259654 313771694 376855976 874331420 931268295 445321068 500636982 870720186 880393869 93456293 966970418 317438449 565325908 484940862 965863557 497477852 822422730 809530996 951813478 817920178 869442054 380747826 668545651 610096430 652139819 112104441 599394322 789346703 944695360 205504508 347774078 530748866 997621546 183485925 971660331 908802726 974350939 429921917 984588636 198836449 258600176 569748525 858662883 349950207 991185855 161274841 728567149 670324615 796255747 366534598 497832245 579859627 908416841 448331929 721367338 703278066 910682728 394569473 756891099 941338925 981736822 605665757 879600157 515120352 758050785 986416390 987558795 203385278 359852980 218739113 912890810 350746273 420492763 367286546 368093518 623125351 871202095 290909254 943498999 104194151 268608278 547209049 992015440 734074214 802840543 566752210 812889793 204448516 365450976 209584378 927859052 898067734 908751280 941214066 951796680 599399559 852142494 957685934 992515431 97694185 956926253 477466459 706803412 432364116 978766851 761844429 778981391 301399686 474616789 645954434 924288814 760695807 833206159 389760575 518399668 247897058 553331641 168754419 522319389 863069323 891178210 593308472 625894170 34160951 950473499 713164212 848163408 524905584 879469239 788119120 973874646 346574751 568526468 627090497 984743760 129923292 681154581 381527482 685567346 962125543 972336234 127374876 635339690 557873612 734134545 56861089 537944716 19580849 693410831 460393525 663851036 741623671 967961413 648309087 984537520 303589428 697968581 589912174 681109490 527345770 731768731 617072462 728123751 437930282 672903968 674902085 922482887 826243972 830829915 991863433 992350792 615647951 980511257 965457825 994735035 384353124 406437650 880284908 885077094 229691503 541853950 592743372 974295476 738929091 831596987 371085541 918735891 94317890 462730810 623396248 945376170 1174333 77913669 656981285 679243428 292160414 898528476 915883550 987819812 134355681 517652927 775545811 793884921 475516312 949112249 763256081 849766936 636097333 760055680 419224678 928128237 796595864 983575828 75655882 605016881 665038555 799338971 738193169 847736817 492484402 838018917 686524709 695618563 687624898 920450068 641320477 762702832 758847204 844999834 770034814 946702002 693323951 861667672 667460920 863336786 482807224 798126560 308994756 321929231 271214565 743627636 995984435 997890848 738861968 925417252 763750143 962487157 356257897 379788668 634656428 825201361 527425228 793766978 857219006 939655002 157093133 439298750 131722378 376246820 172593142 506336963 978409738 990037106 878114348 904951635 809480862 916828940 783604638 930926391 867453911 870034909 580564902 744537047 362348456 436577655 972730994 999949556 238041860 626258962 906098637 938172323 5551525 612269594 283908910 451022897 217037003 235755929 824715476 849698097 582973767 806767519 491755888 635327937 90737536 387691701 48846575 840878925 284969086 337039792 801225125 983294701 962492006 985872004 477834842 969751798 410205211 489378756 209314415 540999254 934515707 979690690 868238192 984767271 86996359 450837053 283674033 546420581 456148762 959656401 640842977 652298996 52833388 790200197 949385906 961905037 99559932 432536374 145508396 937510312 232636091 629323258 324208456 600834107 119677121 783622014 901324075 956016327 527011855 838741201 672461949 839109115 344116194 736829195 788246987 804719900 479665200 652683383 349185435 437640660 146028301 864055339 294121130 702682041 123964235 844219997 748352740 860821478 42394785 584826125 273960972 941154566 130262961 487349465 204414944 651585949 209613589 694573646 339802945 555865224 313082984 598544729 56836623 605007295 942853533 963748069 767091854 974725924 599943914 750455348 260946018 991847683 869119781 940342811 448640446 484772837 536012354 826901319 104677069 326666441 617532769 643229180 757962180 867942384 992031238 993137256 626229990 855043231 130226477 550213474 129422256 976637631 281563836 996072296 10085256 896071883 427099267 827596210 468683192 569630668 295763796 790089933 791042031 866564961 229983595 503027167 584366063 879461679 796116508 852002042 497722144 562805250 194318467 802291950 531504524 626546349 338824471 359271770 767379829 971539448 929755631 941662562 924529320 969109220 691284634 973976159 879668109 961601475 575015137 794165493 704560700 937321353 722642625 898346762 8297518 15482676 209571873 923672919 646818082 796911007 766396351 842459840 626879831 720667076 706631507 861897005 585201101 975525472 874685313 935908382 877647747 885939231 999317532 999882970 128221426 571026962 270735848 984358253 475104983 552265959 791232213 855459314 380557035 423489754 513001212 865773539 515917894 948214269 105731164 330784008 919945647 994918111 814345181 953035312 279423595 391347441 976086325 981351574 587270506 862632721 695266189 982881083 198154133 711403195 859044934 900311997 746190390 784068662 418408945 598444119 906949632 917551963 435604325 830384552 939448544 957529373 966849859 978834679 298921337 537896177 94215442 205622044 478410028 578961668 39624069 802154885 182524656 330533270 667575925 958324777 3797453 482723315 428171753 657519424 483220194 865611254 851031585 871193256 258190686 414481013 693096486 993105929 889831819 900593639 956426192 990431448 302672820 441392406 575625782 602805834 445380832 514340914 466840306 586174415 716272646 716472275 946300920 949027039 645583148 898259570 481449529 711672976 54375979 464209307 214005514 775260695 85221534 332309926 907487366 959253232 197426575 827333169 557182671 596523494 847144816 956763739 145486814 661285180 728943249 921221684 547164816 896013023 566459647 976619464 40823226 237336481 807880058 935209420 656388895 687841120 104015658 377899737 78672474 774821733 236482529 336626712 637265558 750470957 908210641 981707733 96103273 297444468 662799374 897812216 533471618 597746397 652246920 779830439 265771256 884334870 462866958 853879087 88496256 422700943 994887931 998457544 489490864 918448748 398813426 719981568 647925022 894464004 94119259 261143966 108663401 119148741 259578569 895886893 316493358 958689398 662771354 786071342 873726953 917014958 657945813 687568605 745127980 994173780 597338454 992348552 836392891 904464543 594467026 720297742 801353478 915007111 494973663 521377532 644231846 899883919 310074496 658233430 551341271 838383658 779270911 879666249 526151211 708215874 601520298 917090561 572458971 728628679 727098760 941850836 814468479 837614671 861567422 911815252 240062384 409123635 876075926 991277221 696858819 826641276 407707515 611675208 645924113 724571311 719206170 804410575 244160387 654589774 529524745 823173009 326141777 829433993 311715150 791332249 474977 435441344 745935104 762804916 653271484 864983655 53608950 853816789 575366632 860747146 455799275 859065254 329223322 677828509 436309565 505054039 743809220 792707728 776215305 793383157 883704946 986345564 924828208 978090780 475112577 675572768 691238173 923819544 629155918 850109938 683566383 917150564 257796905 787834198 15177946 764735517 926976888 969238584 5423957 735234747 913365327 985931306 574384121 918491455 827558254 882901649 730714492 801326910 364080188 887046094 786336212 871883906 854956593 985310922 289184501 323690556 572535191 572852854 460110737 760086251 767738308 980153271 105364023 734474162 730560183 738846506 825657365 851458501 474767157 958648859 103495446 847965393 769832855 864605746 283321725 688600327 605223474 680086720 374630989 786554315 711225754 846523500 1611917 58131596 473616783 673597332 743367704 767600280 413934222 721036095 531653437 971162450 449265612 571474939 978605630 995260829 568783225 970353180 455165137 603156573 808084134 876318413 657384059 952060341 350778410 796075338 521004695 800715311 910887048 997546107 137665378 767197184 527022048 968203657 243234646 653134052 847739070 975305966 394728331 930465629 608389044 911780604 595937730 912422369 329615144 482665744 83486148 440375043 159678951 234931551 748201667 890614821 565705495 646549729 245199264 292419148 322428683 733350911 499326154 658078281 558585245 774629839 17511486 526907020 538962795 755577782 234172198 328893848 792389751 831432784 527252700 770385903 621391145 905531374 32446518 599252277 482596716 513503862 107742846 477913234 22902974 332367885 321920672 998251410 337059115 543329093 747932535 871102074 487841117 667366583 560279641 575036813 179262059 520189249 360393492 921932133 229092901 683258421 537022564 794290389 693486285 839136452 981456139 982944798 336703236 815399697 526390207 647619346 523838294 713441024 756526770 925101638 39734955 782745425 83476937 691290782 304592861 718400875 888547785 978423702 544402746 941214381 247308392 645515629 195977162 694634583 986850344 998014061 794233779 795962980 420806254 864089945 522634719 661286833 299045378 381465412 666790758 945941608 398649084 976522520 563840340 779658204 388672862 614632348 136627103 364733834 604230156 973781441 128835350 542953496 108699182 842318445 595359589 868681174 103557818 789711964 383014878 409950450 24288736 691692082 215833592 793046486 159092839 893181773 528183124 792145922 981798029 995452417 200206793 228296541 103772824 499899346 776554626 829926122 141479874 216148730 41691424 774422544 291016893 820965268 740598729 817037310 557224560 950048303 705009656 965313365 456529291 540803672 828123911 919516586 822855 645462209 602715168 695302264 259372526 856683100 934741470 962361044 635327860 684059398 886124248 962699366 297757160 772054288 649030030 756715864 989996434 993801256 604356615 819199534 250251449 694036087 599654135 999033795 435560551 767716956 840443070 852326998 261689701 282264156 177079409 678362792 976041410 996751199 940255482 979564282 697196962 761185583 632500809 692028384 104756167 444855603 260593809 597275475 703852020 778407321 130852215 387987303 591679506 595389619 662320866 911105533 694422472 783721923 286092642 401039195 686742699 835591667 737929158 853051333 532987782 622953102 526877094 608433115 611144340 663557915 425190101 875430135 625893033 837553892 188829054 709770341 994375446 997380508 628018531 717506987 809868485 869620680 382213475 861729375 848856909 970450092 318532410 388543018 825195449 855479532 373970814 487310921 254899143 519833389 26877828 637354987 642613020 970868745 426807315 469057219 407964872 445749438 479478926 970748568 896293359 949785919 950024504 955133772 582609325 673800961 507744591 923007328 267064284 872920272 718913449 830201094 92861357 862204352 536088747 955863332 432991159 724895615 343393001 493767258 254732125 815996277 634128430 695732662 90948559 820609517 858379812 877057592 474034551 905547041 430377492 600432062 924942955 988309489 354034626 482466955 509338068 849423066 477543897 844754217 483356533 720738316 709487450 863716022 755923905 774994730 941476544 993074542 445992105 559047005 509077569 724258862 777372076 963470373 815145597 941472094 210068305 859754502 394673780 585525552 996134114 998167497 282222967 716820263 122257734 548852009 984401076 997070641 427984931 596148296 101123442 377927213 696515199 793009956 572115408 912204569 112688900 408756240 176655489 215001922 247157297 875179181 292744133 620027409 539123261 914411295 587208325 936649949 856890217 870413464 419003500 747482344 273649778 672635985 977229141 980953180 419370871 869019473 69246490 524839184 131009416 544642808 232818023 533868898 248114003 423925943 244114058 386291159 460868424 661600312 248384823 464458993 311080650 564771509 215194865 951963334 690351688 793937902 717887582 817414267 324650225 953562348 201815728 484869774 652645122 827658445 337084215 814176390 68081478 549584204 952310 328071907 946151857 988384035 940772167 984503583 400925681 503493435 591101707 727941295 778255889 784987391 471400132 559077910 839824389 940791529 358308256 364542696 260894769 325756535 492676258 938679523 720514068 781722360 742449374 804312113 457503513 523168779 676979445 733779531 724712993 796698279 277151616 801123579 170364049 517752308 193110232 389051981 100376296 425952837 375437950 608182076 901729519 904776084 89084007 166131305 301454822 389391399 633537080 755097860 46746903 586634620 889001916 907428883 72133718 472948678 740380700 856999188 505815704 882386622 557897050 773139990 358289751 749088262 477643324 926753444 250875804 694779747 813472075 826228703 782781970 800876938 269550117 850027606 88827737 932845094 712307977 949236378 682527813 951016361 711742996 980854021 32146291 439556386 50166880 294521660 257735855 864904009 933341999 990068624 596887825 663018333 503442427 890166220 615123708 833840532 261112107 831268867 42665575 954211513 476370591 756052617 136139381 746902700 702340101 795092586 255133899 330635471 392319325 848545866 176763612 980533440 756894673 947692168 431036585 642345137 563817357 698662246 41267592 429487517 778418952 854864219 784072339 935549200 173666409 267360467 213586058 737336419 368028645 434396252 519401955 583704249 353008943 701618171 729131263 882764078 540299418 577032640 148063533 689383741 869436537 906195601 478120372 486083154 217475271 721604956 714289854 905222736 865365363 931603096 521683577 687045716 889273686 953888925 937322967 941915958 571026846 987886397 411212973 461907810 166276496 979976621 88727571 133422371 955135305 966454997 210887079 381251529 592706897 630850443 937886100 955772905 518016817 728253331 383608142 412838569 119058574 147135447 684437325 860024705 297527435 700413682 438668830 929639370 214179081 893624286 533116662 839906130 109909835 610782517 548139664 644531156 264433861 625063731 767561056 913283343 987276855 997397715 668534231 948219879 562548305 670611548 531366479 997058020 222773152 727088314 539232791 583761057 88991370 769433541 707672879 770415117 749077836 945880360 985174550 989242599 373152889 716208185 810876145 975566817 1988302 410230100 581150732 907146290 762550688 811599637 751738598 845213938 720169431 846104425 546973928 999956490 747096197 933159889 528465945 870167972 395751614 598704755 873076018 978038279 127984759 824334436 364896333 549218574 442913398 999994176 189178705 291206459 511410882 692778084 776455566 896849557 965513946 969397897 45792620 294725077 695895371 955381216 374685777 469314213 457374973 933730429 476655377 754865463 605468192 840787692 159927827 601990781 131131624 775990486 779176584 802743814 578335954 863258186 144296805 964966205 909750071 971317817 552266385 774457521 617320968 719787305 764460673 782950352 962330132 980053503 945264296 990833363 441312246 520055097 90138226 486043968 96956428 983126487 797832569 850176393 744218187 950337969 683945726 735126372 242847650 323984413 210524104 490549993 687605747 736300541 552556639 995879025 875541225 986052625 139926510 907580789 186097716 387011474 962425826 969737840 315525300 944885448 765335823 881118493 105742491 986123074 878908302 990252134 276861496 900679205 889650601 906022314 207325365 237208712 683925439 894161293 630438045 927990063 634188315 827065644 780985491 937182519 150429582 442840214 408171285 705441300 97456912 877045885 607394665 893635804 14234714 62807001 6216460 385791957 428567379 582391409 858706635 950846341 182050248 248204991 929930990 952893700 570664596 621593820 395324938 595785602 309141589 968728154 133523006 573090453 349510485 901500972 977913913 979649002 903109973 957879023 787218618 798125208 975091391 992963411 893901599 924607013 8712958 967969559 119593824 170782159 35480604 872328733 91098364 192100413 254799776 326413407 112258960 925026721 476229054 950355388 139606769 956398361 901643259 904249911 288142181 552728821 551027522 666408592 456114053 614688653 720053554 896357012 400447074 431978238 304483121 838082868 244067383 854277933 632274764 774749886 156512882 658016103 15661076 204957913 324274622 939302204 58082556 164597670 139656493 626326542 474653696 949174141 398205720 962672229 513233722 960829173 679810861 875782418 476252638 995722306 552180354 849303752 143839692 571338688 445639100 936903337 94929843 894984104 597718449 985153571 806720018 867699479 826906551 951475761 706602529 963931314 815265473 823467958 972131569 998142773 452965170 516508024 329562730 557875936 694260618 791802301 368314580 496604437 427114311 795487759 184558663 444410722 388344487 612876100 498855899 645010917 273541697 712545812 320497425 473019044 619908638 741481759 653479945 693154975 518929328 811020738 174714186 746068453 935111084 973039874 470553768 938461006 370356862 576495854 472753679 878751412 172028734 735349436 65789951 908267390 195520388 512914208 937240281 937689465 681319860 971713328 360355647 390417257 440494442 663627053 570698043 671394401 761059556 826646280 933184680 987139557 78320283 356755631 66451013 301370518 180190185 431674908 106125038 905898493 142449307 585238072 434606419 928990188 425604675 617046039 864674610 921467975 929364459 934792451 799289579 915599830 695910402 750031063 553527456 872216034 14493656 784465799 848326893 988229882 422569851 433343011 919396561 969959864 576721678 882374391 159384560 593558929 410226520 684257224 796366215 903157644 245178322 839643412 804203052 989572235 737533589 926140932 956427798 983848428 153649077 916236583 719885997 984047718 520744380 857665448 903955028 904218992 720066522 889598308 997173161 997624620 269307119 615683083 500670781 556677003 580960711 591674393 356673260 941433746 295327702 669522707 3009983 101995494 822134242 877045239 855424421 948151634 577718495 659682119 190823252 375740151 765521917 854646620 813302581 982837455 792544860 938770567 422150648 997569283 551945669 995708626 177406803 985701889 570998742 705275219 549275133 830734310 437325853 806054603 586569853 747150405 485984664 834799617 555871784 571831057 157010967 398017449 631741349 943667184 8044404 284218252 541505066 793701105 795084208 963057349 564963515 916041922 667083877 896631987 410989630 912647214 708208262 729556980 518271466 725136895 112266939 952113729 658627597 680778412 548441078 690490211 292997435 465467868 13729461 528004242 559789543 710818430 800764495 941287772 44890760 468296463 539570509 828834757 390204284 540653223 664501300 881891971 66725611 780860720 783543558 811623946 924465653 926927952 412895967 819253803 517783501 774957950 780622640 793826477 890543778 927408583 286286159 968762201 858401304 954284043 810783797 893085283 378292577 944107011 117881984 696659652 687530324 962544915 101773129 715409029 604953631 693298937 736883478 969862621 55292457 116544922 854094980 906604265 89401726 817024693 796275211 899802337 969775518 971337818 73063834 238694253 178648319 899570944 303993409 446027513 304524935 339877784 494676134 836063405 963712398 983295630 33055672 743865267 53584220 615534494 946208928 960681905 152663743 155198007 421510184 972906520 961548798 967261536 869822255 981913190 322258063 924309402 162288409 889902711 853090269 907054279 205307651 907634952 48646388 679850086 567122623 657311127 318591185 990071299 556477777 987664805 834007533 862286104 113306815 504725505 579523216 691646321 199480526 279507943 911385806 981966716 234521118 268809463 969232422 983331501 661029507 790993018 952929314 970090569 324507581 803443914 359282887 960996984 930696972 974542401 744671432 795219484 43204269 841488207 376707177 953876938 145886468 990624360 592560717 866888059 810623671 870238829 447753113 645809901 772763838 791653932 663492885 894588529 642094948 728778734 70981353 496820639 688553420 915430025 9065018 565469968 415690907 858395415 270515147 646843520 327000536 952243434 322500626 643766718 967838285 977677375 290332782 407377892 30791461 259238522 106622430 144860615 782295102 942762998 374319888 424216898 495376717 615761265 575354989 874604441 209848931 262203973 904931440 928314205 322025354 912568753 649520440 861034790 104407490 140488332 754613633 848722672 828378457 978121737 189498015 235958528 653973245 659276455 715865381 924969478 75902414 818805534 100198390 887748132 144172964 648536617 536022776 996911805 345210032 345930117 594223334 926746013 20599813 675873221 836704048 951238937 236313263 544696694 906225381 941114993 104826768 538329213 813962382 880526309 689711653 857395337 745577709 829875155 684174473 746333050 149630317 913465680 46867847 934561710 376039548 485058527 355327488 531520090 685851548 917761194 310914039 403759500 378218388 993876136 847999603 909645943 860967384 967414146 311548579 675546507 760504578 971528192 166443213 628468803 168758594 391005798 438287221 554036901 749561466 835334426 305492130 690262613 677800556 837037290 303830370 465912086 572598014 672891092 716966991 746062999 867641163 874342952 230911925 703869266 552341639 759615086 479087266 918335238 195171619 587721491 967313256 971867240 165609563 953919992 501090430 633758604 147816462 416023592 989635135 997449486 406139041 794144112 349966981 963292477 949131942 987925077 603153051 867084405 616932063 788726781 365575819 989552510 319584395 607129169 585596127 899111535 956383460 974268547 290559359 401042501 653710202 871300158 984302869 999716678 746044620 924750777 82128311 194751300 669242325 862719507 542788683 878139358 399997196 940125380 525000159 560932836 202901869 622656033 111828836 224767929 443117364 599582089 18410526 945153505 410286144 959897503 580206295 915282212 590333271 596586747 592047176 992253116 276735837 794234621 953345596 953855078 611493906 624835249 47833076 226015894 772306591 884396018 881585929 914315804 766698086 903067239 839441144 891066324 533385050 643588783 607951981 762351833 12203245 543688792 20908884 160726988 618875981 940589810 834383220 867813630 696199011 977101220 188779823 769566851 296238742 499127470 687934060 842677308 168451710 920725268 35629465 486582607 617048110 669394157 22624483 350114713 147038052 154694591 836201316 878330308 795767139 943791417 882678983 960422618 484365976 500148622 537744609 695237982 442743022 876140912 685648433 833544610 205871459 310136192 263824848 662167514 951714464 968154666 702671128 760259250 26266933 831391500 695108811 902632798 222082713 615928813 708927529 795632535 172673062 528057164 321529148 656734872 166647157 964841498 527058110 767840319 349934845 635587632 543034214 836896572 998379587 999769825 391910696 409759622 732054080 935097899 363739583 975778751 362204613 982614092 752040508 948328481 422190090 695239271 974025724 982314473 279089200 843810398 775488036 814275007 58133949 626568447 759136616 953694228 384721296 900640224 557305895 677179806 540511780 712224398 274728060 502506822 335372494 649609618 686660483 825825408 244553558 906348665 224889701 687323179 409889394 865816085 215568325 843379753 521667806 816235793 942074339 990457231 867805417 932367727 712982593 758508195 95445110 955587203 584229865 907424162 330240790 649253452 826099927 835856513 850666288 904885784 666673210 937334650 806043256 973611537 166093772 773485584 718107547 746718790 218098484 743967043 743741478 816145710 893578375 957134669 747938860 974136017 35674082 65235303 577100909 821815551 158413012 358236876 468917938 761226899 203360689 706417361 906347830 972739025 484282134 778717227 912212 476993588 966237906 968165089 676561671 723659029 528746983 999317826 266917701 580921663 122232296 820715466 132737016 333248204 371689292 570197095 602740159 980583408 455447211 894064647 795201714 812861748 335989809 900319297 992266211 996325667 334752391 764222257 987335880 988155557 223193979 574524336 278957395 683545110 165531106 896494350 547616181 708274328 661063809 845897923 294852795 377094752 228278472 916479680 627296890 790076590 230405702 918828343 906969342 936149470 302730810 686887227 423489738 687067055 968826096 999113355 199449250 817715121 786341547 865403216 614877524 989774725 256917182 768701895 366600957 367976713 172019376 468273726 215385939 264060775 627514951 943367948 860820712 882271096 207824837 722124125 95147692 409783683 952553357 974822140 827010475 943413268 856875619 948934115 871758100 942315946 609650387 922588715 514149351 593746111 860639949 906366250 519479762 732868087 300470198 525742311 223249855 315877563 41176896 71030543 411944964 473915511 123735947 899216369 859750468 921488943 167901662 566150014 740625069 930205257 631850296 724814376 685032544 858504307 661767342 830786780 362725002 460087436 207830148 693923695 274173841 438360699 14613372 664118093 106659435 648591185 939448607 957942997 571707706 701619613 131424113 465504777 978248295 986754123 778427275 787082580 717805507 960786734 417937875 783517303 685728703 774201416 963984576 981479086 725604613 751804688 822549106 896464875 429204913 760858887 263535524 796090941 137363308 227942583 141580516 402994157 451304824 465852989 300740304 778564050 716222650 734803063 548130246 792035422 700793254 822182747 753457093 902400068 25215012 412430728 808326059 910869630 284423007 433745231 75627420 959181875 683588800 732991510 906917408 982217506 714529395 946402898 852589975 870549284 866009467 904223661 382952399 542592888 775304539 992673715 47438838 150748724 908368073 911943348 237208483 313424383 851018200 917608201 14037911 292647305 503664385 687276984 363345846 373238617 615634838 979093719 551723994 680131947 420653058 976677403 381670926 621588723 46795689 295472983 111466752 402180567 404560309 603895289 462125997 677043740 190669527 990031594 680716256 884583068 33634845 38047113 564194368 927561974 371759478 688820581 756905576 845493992 73920457 311275082 59018783 555011830 561270086 924723216 5994521 372633683 931263334 949905715 363500883 958686845 968745738 986964622 920647399 948340687 8944197 50875576 107582979 538239179 92767261 303898492 290306462 307582282 168136098 466823082 127643991 361475335 13118127 286860654 541867237 939817639 820247825 861286385 957648219 983621062 509373732 827098324 204093375 399431118 831951684 932082892 39499169 728061208 441346290 673450859 378681229 713796238 6471523 157790860 186735947 651883540 63982712 905802173 369114533 901843277 305286322 470595525 112763623 814492573 910755584 945452709 680843293 954541975 653000446 824649760 771867303 893720860 194141655 299500298 640169896 830897976 856756847 966806282 86815581 98793787 968033346 998128983 994528477 998016021 510313023 708373842 693987404 852009086 62687146 207233300 231729825 890229649 327356125 518408581 567128003 821847115 615129410 973986996 292340037 866160782 828842082 860185224 322175337 909712352 869007814 994713471 115439651 965296585 818634196 881320282 548439617 764129042 107708235 976177900 646368197 863932572 809841903 980358566 792435637 941943349 401396513 753471298 255109607 673131278 204471548 383593024 379400780 456465519 746489461 958519582 431308580 547858385 793372169 841715029 542450378 736948658 654773603 655733445 712433426 987680417 26685098 125111247 681534592 952215326 65650919 374436779 121522244 237501687 133764202 616308366 542745968 704899027 287757385 818211655 214623112 867378868 643849063 801805997 962176965 990208618 793888864 814935139 196557916 414708825 942605903 959161459 195832120 939152768 826414180 977688666 775981273 980780294 289193757 542970923 856725456 970489306 838837003 874017678 703481989 944714770 982403163 983184621 561734284 987081639 157018135 734187444 376214402 889404577 753792164 855639880 100641237 739731722 608375514 766146785 62671872 771924907 55566309 453439979 152600278 215851239 617259001 940619042 88908893 235136282 425211353 940414636 891474670 911062561 618060801 708052626 972164617 986456471 965149221 991408839 477358706 575091049 518965512 878302890 592004201 900383240 728051948 982411466 370830804 678969301 942253647 993658957 575150322 709308516 875581023 979372689 337049381 526989701 541279765 573888637 925681523 950014484 392079727 881263748 614135686 657975540 226362948 592975295 520460337 577304544 382672880 521267227 945005417 964906273 258414449 568592733 372191442 666770943 829873531 951628191 558515087 770352193 601343695 673644601 262600912 587257936 468934960 591184970 153979916 838965939 887967568 942494779 555381455 597023950 846765617 952210124 982542281 990654455 887057722 896975281 200685498 814858808 101620231 596511318 88707471 606523871 229130861 395726639 221446061 772130992 49646681 569820519 824714775 888080335 628208763 754438544 456680069 555114468 919900071 980928679 589218103 654719148 382993184 693168355 767999707 897139812 335103098 376565498 790328179 858516461 184312740 696247072 136193042 398747732 607783839 627129384 519614481 895631254 266619378 355369898 343488099 790744668 858090182 951127194 12532551 370265410 422827472 887347416 378399953 765964560 327741099 328509774 39764294 479684641 317986389 559347547 618201698 830203012 776394078 835973364 750075058 890551483 715025713 965977587 44005241 895628251 903220149 990781235 86358354 227039109 670698777 891741508 704149084 902151357 682841763 912901786 221578212 826555943 727514355 753365846 790215097 960980169 561585121 972098876 69045219 705648547 363340408 689173586 167447883 202464634 746770315 824971042 86670934 510187899 681489399 769687529 242475373 822551503 990846496 990988891 131306413 329413874 234796981 644490007 194076085 719869504 529418047 822746596 707447498 707458255 113027028 626644969 299840169 936527290 888620887 972909716 450835940 503134233 544556920 742002701 988980351 992217991 935784171 976077605 520990235 680628514 254512164 945862272 952530253 960145601 263613129 774060872 918017205 966477911 38388260 610335798 510839852 529074497 409728058 487145041 242306685 365881679 365232459 555402257 534120114 735489866 415080869 780882201 188869134 912025050 261640208 707303071 675637538 938011009 253158046 857802756 436165024 637641296 146638976 529865096 900350351 939754356 546610775 891887116 50540383 545055856 266492817 519308693 816228497 896214226 181493887 736900993 796711341 872185800 967623019 997763365 617875613 772900707 154899187 325887241 734506332 889947886 590564829 598821567 684182274 712438109 165287033 800816428 48651883 668910287 229765607 579847901 550315702 610147577 632559697 945583527 35400304 313169354 87155995 754103181 939634491 953386552 180460142 873641393 601329738 780853472 306423281 785216820 32930675 80670033 700382292 908979879 723187455 776736575 215791807 305506146 181103763 680503703 710695897 751869594 348012790 377637992 386613230 678151904 457599641 571993452 213988992 478162147 696140051 831743691 926963904 984937700 712964711 864155468 112951134 674107169 321041702 947228079 856871823 857298905 389878123 987656587 774868855 808824128 200010026 890952652 814766285 881872063 733152055 859858743 981282121 988653440 537218075 720138916 859772727 880652471 404269189 782805682 926473981 986444987 945686136 949577871 168704842 507851819 152113680 208627913 47312865 85310942 693818917 697750933 841928115 956770426 921322093 998320949 598664332 884950730 927056503 961119495 98069391 767001973 372912899 375229096 240961780 393282554 906899695 968348773 193785046 271186671 403393340 573580145 285869648 395506741 137870852 898850014 783635871 990776313 411785421 423590689 43300524 446346344 250112122 265837570 741302527 951246910 35411733 174732987 810588714 991807638 283742176 320742856 902588567 944658589 852814555 968860243 968766800 978235053 757611408 834496333 207872547 573628164 737413385 739871045 209996201 836104980 651514662 756841876 334546173 695967737 264568993 485845408 35514735 530970379 306838795 895111595 937677989 951393444 467372595 628313555 389859142 896378573 581793084 849600095 730301948 805624689 351193499 968085040 659974019 808807579 39828992 164912955 357018639 459984871 499295981 675696932 325791149 552869997 438229059 819289143 656498645 689540536 302721416 934480550 284812155 289506015 612857564 779833153 600869517 896544275 931040124 985951757 732846389 768537951 474931345 754946450 251371154 531659564 542387153 609447508 765681933 854184112 408916647 418951667 508382229 562649397 267221730 472653587 913062327 965992251 145029892 961936389 98141974 372337774 675528872 948710715 987155123 992675650 325074197 586185753 948623208 967663121 113419327 802541640 664386974 885027943 259389081 542745549 429320539 665172151 848777262 972108312 789508358 905394373 966357829 967393977 760954645 936211224 133920635 343545239 697244560 876616883 329835214 632366336 630640938 691941788 342177089 459785941 836693534 907590465 445858021 592647542 524237307 902568889 544440022 779995592 584004262 711625638 714926863 848812753 864169159 917571920 48200741 139476081 805583363 926612868 964797722 981968278 307530240 646808854 987561924 988776141 771204276 940428685 221067918 734377646 869971258 952716857 632339004 995496500 386186357 568561220 881366254 901226676 260404587 350883921 137520740 311317603 177098538 445990511 76460382 890089384 236781166 901024381 602502408 640972273 895222414 922186112 276278831 923565872 331660614 535432324 182686805 477112836 644584677 812901923 503101879 831388859 389994868 978354670 358870843 431465512 128678465 993217145 324722183 931416960 578542690 874388140 960780753 969966857 726866061 978349856 759615405 833156004 142199590 952470944 547488129 938423645 976113362 991509215 800317930 876586111 837516760 857627659 991765924 999159837 761447355 897617244 281246277 470815234 567848462 775085601 805841229 968732895 420983469 485562718 522520448 885287149 883804091 999712456 120364510 315886603 684949507 762907144 474124064 780576208 660106527 832181596 785124471 900454926 415423531 628776860 903930660 920113011 203702061 475671186 206073181 354480042 213353106 634122083 720286931 755693307 930640041 960321589 595518308 727981396 706317807 934357433 69298760 536699315 384939985 608323894 221183849 238077971 273356180 544154237 435123832 692214278 400924601 733530557 709889216 850736004 554500339 593464569 903149987 988262140 526075711 802631498 101103192 434168352 711785713 810239186 264168428 583802579 833951473 970446767 584307082 953889693 726781672 768302341 359176204 376357702 623961578 643546030 853871368 949445407 215491973 430391925 421793920 952825406 98787350 481495978 952347529 974723635 214289093 501498183 2249879 687066080 164495224 488205581 476691104 742334033 737478440 854815917 448847407 866342095 493504285 865190653 136777457 321718209 174603537 542035658 637740075 973994521 17591487 265682097 108943830 281894473 590030744 919932389 736588611 838741732 552166356 642933032 591038981 815412442 445898762 890827468 261984041 637993645 261420462 947686761 774740297 965921153 62645311 325750537 222693117 439185902 42544239 847259137 479484638 742788338 915645003 951485788 487834081 785887402 121198179 714198950 75958922 183541438 272952277 437380859 807992830 944880829 329067898 735388927 625418569 833109402 927652683 958094563 987457268 995799763 132894214 541675042 390383134 460528033 596491903 837889619 330285301 701829448 592381119 820159302 348523941 518489732 193685128 849506037 62959477 490572202 172593263 210503973 443580557 932904314 662164609 786376394 81954129 962941813 999170171 999309423 968601567 999019517 44356406 219673802 98749050 990838250 815974399 888049688 792912672 813289610 754808782 903677527 832720152 904664490 188402201 511438398 756746362 770047026 243018597 889249829 419736141 885235563 10915921 96427369 829469346 897288122 100006522 370749630 358961521 678205745 946097412 980151064 315052954 769464238 731920522 912913072 898480506 982952724 130269044 689643363 457266481 595508827 638191178 755793848 673291484 779150079 384604429 709356972 130340037 705811171 760703262 882634463 373627717 536656697 707948126 757486005 14688056 588632257 320525570 911497738 999977887 999979059 481780662 819815188 229685642 376669805 887285527 999327530 812011824 924950169 741494318 746081631 615179350 771631753 861378725 996650841 694411816 869865894 964891946 981937915 133944350 756856143 735362269 819475915 619613513 880452219 150469099 597119994 135470887 373994132 978437900 995542502 284362588 428290136 697628515 970591569 210857431 955743473 829475609 899746373 331395123 767032235 2163085 147300881 883079717 951205301 300266866 919209760 830548013 857357271 413829255 756420280 775451891 926004950 955873209 980612828 102223378 981602113 832930016 927281872 279714276 480072284 670777152 974401635 2182363 450399163 686547410 698700696 159150010 235964702 402046732 845255064 224288611 244498488 793886429 853437576 788452255 940584961 934193635 950236450 758794399 960081038 527063091 669430636 166041576 531050423 703816989 948785453 174892822 680793495 275201108 423373182 95092318 235680858 242572115 974004471 255508250 696321748 600415405 854187649 644435498 652874458 107618293 598959573 860064113 918061245 143733826 340165538 92402825 747613075 999910058 999967394 362286344 927742998 76484789 825732955 330444803 591378762 33524766 817154245 580806530 697651822 349188902 893753444 228793377 441812773 114802329 680624727 441148493 602133141 240187565 715139595 506195142 663833202 99029142 367908774 704950530 828547097 789867547 856264662 229066119 835404459 432418837 512332023 100732871 851409366 229969403 396142580 870698360 932677242 902076597 958697749 307156975 657922309 797794600 817808498 315317894 376878174 86051253 90677011 673329949 675079994 730478717 838145731 905090988 930200465 17788971 996560341 541657636 995789587 64681889 255895812 887315177 891483172 648503158 961142972 879116763 932298332 950054350 961244716 241219124 499149968 669642939 670064413 841694718 862252980 768308261 832369130 346288173 816115533 532103951 962738660 162121273 713580935 736841417 746560195 570747510 690827713 819848734 963960535 884928886 898654200 755682895 755778265 569515015 677648577 473605548 596521094 327072335 457986949 285966609 944284829 115139744 856713341 993220429 994728525 765891482 826209058 995639285 999668496 873586493 977405523 561024656 883888030 440145870 732684896 171318854 727459705 534681631 955776778 217181538 960439697 767870341 982811454 593052815 754756782 635773209 928019799 966512457 998489057 878944583 957954655 197835039 843669667 530018819 803245157 643071183 655738295 118559418 358609426 823399053 912692456 80391124 519665119 998987342 999772462 543884725 847219239 294450240 604748326 491886726 837784285 141009290 600457765 791591029 855368439 347990632 384730723 905773674 972007447 911448857 964173840 849873938 877019620 610588638 980994406 136607670 643457678 985327262 993639678 90054578 200596367 327177125 396620588 6367796 847347586 115645481 703502695 713664042 976981694 282171 76006457 350450432 870561067 427116853 441972083 601990026 863378789 653267553 880443941 12162150 490313491 666412573 861263198 597052417 998426315 20668493 787213752 324690301 843426012 848465310 938558076 403816804 505496449 489077643 907839044 467842228 501140034 904874774 995656123 882980632 999668910 573216403 695716819 794426576 808449744 554659365 661866678 739580682 850386824 478633342 485772973 877051453 959771593 206472551 791938543 149315625 915312495 461260254 564044641 478630458 656334180 415510555 800371641 1087943 315902520 54689130 659453301 613297524 854199484 739453238 974558151 266751437 433424109 464375791 626477447 194863234 583730629 994784538 998502761 651322868 968014337 904543126 925133693 583335044 672244616 270800689 933560976 66448690 666841496 682391000 875309175 396477752 494852799 399364622 418384093 167392396 190506920 689284727 976432589 827740273 865547647 310424775 891275714 991226259 992019570 609811097 658219351 158923205 849314622 116752511 585595789 668963765 914080465 485274634 975112773 782926846 790841499 325189978 407139182 710718851 974890396 990958419 993120763 51916460 934090870 73767862 420300632 985556440 989490609 257153924 550654967 497479350 980132691 563800937 676721428 390819572 439416827 534682950 706491136 645004900 811866539 832556303 840509443 278573304 911588217 532299095 876807512 129291687 972120087 828449676 925601207 728226798 967447063 654374814 777650837 173078256 700814810 514722502 917643366 458585412 792111755 949070915 967232027 530347559 659347655 334898051 921567855 431806499 996432380 70655013 969515531 260123670 739807938 959170935 971997297 211785570 228058682 448677122 529390985 421918967 762008772 672846402 837143205 985710542 997555669 931560773 964049031 190784989 908209809 297742225 501626144 472528459 632655426 241651127 662975631 525003431 592815105 639984168 643122030 69301976 549215489 756079230 820888274 686336976 693474800 688172939 913302501 541756587 614978538 612130806 683122757 338672787 974822789 105634832 785155881 879736903 957559948 639787760 655971366 480405838 977383687 577887952 997354957 567662298 960382157 406035754 846504906 208120456 442595242 348842974 623442097 922298998 930729822 614926174 714687494 478380356 802834490 655503012 671165362 796668905 820177540 745617589 973721059 588436670 782743510 911774844 940604476 477806625 784387497 955679694 970517239 314755653 684330205 738558008 790322092 134563851 362049916 779314586 785799243 802643624 855901133 892013428 923561416 534783003 728095211 585576137 767993547 855387343 927359039 653972470 976386952 697615177 862968458 415683971 537237171 5381828 893905468 665688090 792820001 115842585 977986474 199980049 636149846 343775195 784314174 270985914 627104547 203232927 267185118 578060797 798588859 266301773 850747487 122944461 742376732 985872815 999649144 152321115 519523615 897534557 993915623 174776307 953113984 451564120 737675956 369484156 988057639 406760415 775886712 281556017 795696774 240315469 570372747 977515694 978703113 381458000 927817350 867531419 965348618 930575528 942779728 322541827 739808923 230565052 779495365 514330795 573958268 878658027 895171750 434482645 942700824 339165940 871588688 641156078 775868876 355067891 975672725 20075243 772431766 234643565 489492566 826661216 844284201 61504455 317096345 339013637 949912034 488788416 765605531 512038429 792374034 828520529 974107219 227615935 705154540 982765503 991954139 752028755 983359992 26416368 882162435 371444205 469511731 789906591 863109900 783516982 795243438 368458100 648108103 585149306 874858703 237295785 786607163 926226903 967256961 392374710 513669305 581180176 967908171 749699919 957367956 468830091 706234800 584323198 678612949 481820317 637518208 657557683 998544375 782207917 824390033 350726638 834035619 624901140 960207687 224275703 390519673 692035571 789626482 617232925 832746703 194316338 822557609 522636910 561506702 892933593 912089445 566344288 847627741 884237825 894924374 978043315 996256697 710536010 765135914 576389850 615409799 615169212 735744225 96358781 513619657 995284041 999762729 370714833 575875780 75729220 589774010 959356804 963960094 137895712 317464692 646058629 744124646 507396210 819371331 103504935 816627206 935053811 957280776 937758644 953581970 239292085 436409590 582576714 682412537 452337548 768764994 674898557 721421143 593338336 717668975 104975721 974427504 25725605 153817902 541899440 598571688 664181494 688294748 849296212 917895300 975766940 990731387 662174238 669589500 86851292 883761791 669931722 796621555 342282629 919051948 495985808 632669135 621499568 767250031 886785716 921168817 501451460 671489519 149622444 576495354 55160628 660719455 432108461 914918242 665592544 958387721 346946013 707786016 746053614 921288711 584382565 602737514 656908344 936848408 375225928 480130825 938340749 980051115 564056722 932004417 577485041 995433660 791543211 815611159 852738349 957599771 751459514 923704007 584810298 822237966 495538922 844547903 237014561 473290177 583147665 986918900 824461551 939085049 295365485 388481960 314898799 394381235 931514542 965141173 839069952 846260983 597723229 778927572 838151896 854308001 751509234 832688615 991502307 999637649 426454748 881076533 179919781 222362812 406363892 778152506 932524283 941851494 917064408 983732527 128531049 344095944 737160116 820970852 465456908 699003098 707616848 840422404 988687355 999337409 142373539 290736912 55830525 718620644 157598077 540977314 745012169 984580907 465250695 684820330 830581190 882574637 394355176 637085654 766477213 917893979 402731830 561159276 913210377 949549009 485556458 875831136 76359846 777763525 131313919 838838758 752096567 957577996 231054886 261841313 672707870 810373512 263547037 447424190 612941384 694590896 731187156 838928083 620669784 826625399 530097322 795689437 619988056 860422358 115796285 616219438 619058648 959842028 90041360 592066683 777328552 810651143 515398663 635674586 901167158 931419154 823648811 852005465 510932381 589795212 664988708 897442337 101538712 978245732 150808846 271180320 320547432 595107268 89257815 165011064 211952949 212340726 509104955 697785592 403290250 946116471 495966985 996709903 679723937 786122577 329237730 344068439 426347029 645866987 595681615 938679238 463200225 635057343 672339890 992112642 396818793 496367456 58372464 997328620 904046160 936519279 437042716 540681135 637233225 688919353 78282573 399394366 483460013 791774047 793854512 918296476 953402784 996713720 347581252 403309099 757912023 814113727 315046373 696299510 412458036 920840037 570492961 726967967 520415773 631833413 600473459 801730569 290051847 834396046 559423793 883334321 953352820 971433914 938708164 977711682 18160559 51586325 923834885 957340400 272457038 453104524 928355326 961428400 230405810 304437318 409519835 656952410 141743869 684210748 388265374 755475527 731240830 781976808 138196117 996148209 94496996 606791245 593861243 791799711 688856856 956635155 398423627 645896689 33034286 972638266 421272088 830837568 375327968 388244520 45185524 615188609 695620192 844960290 697423083 895032895 24322400 178159124 601251006 839026689 312680067 519487264 500665408 684308042 129350696 540209976 934891977 996428703 430674975 656838279 83221246 89209491 195656109 235714080 134965639 525756331 18569704 408474184 659774083 917959333 669755590 952243440 800536996 901404669 341787814 932484177 77104870 982007735 723974230 755692784 972345852 973315932 185121090 914275741 331302550 873451405 436561004 956709885 614757962 907194091 917532386 927853819 719714533 896935509 115257919 311725683 410947063 720090475 901594964 918862669 269655652 333736227 851592394 920167952 206671567 382451407 674945791 878888777 420433378 713501041 144897950 726911225 27405798 323040089 174111530 202230909 729028029 912233474 448955060 806735902 620078831 933039346 419468211 556968588 295323470 641234982 523174449 716847303 50518543 699049070 531181247 871853331 196570470 317583199 113748479 598125293 388646822 437114709 428934405 517433534 428438815 601013380 51378580 967848905 608452962 793723893 245220738 911594313 627827885 805366188 765161464 791413213 230237584 543370872 588358321 696255602 654169042 697762220 542760830 669707692 518566834 991971773 673223469 817546830 686099818 768961581 120310884 550676400 702720573 979356374 626305656 876835682 216896997 869190059 646012171 932175044 843846601 881589659 634177245 983872211 82208132 772358144 777081121 923082150 596297917 719112882 346784612 490378373 922681577 929349502 136842473 692087248 360645700 915478143 805030467 839706519 558456423 608106445 525562071 817601160 281473613 296381452 572782435 921995481 725450868 988696026 361255297 783530812 249458252 518364681 330184169 460207842 354024020 833465238 280053341 651665960 280021609 727623016 333920369 817871029 843968958 894898691 851239232 922313509 325642789 862219826 716606375 792584714 667002906 979482335 352911519 944070065 947538137 958516703 651268056 886016199 740237494 781552869 152110410 301513310 934943535 996733949 70245570 693432358 739698975 835431246 871656881 897111288 242166479 480710361 83535035 277174971 67666545 385406039 356262396 791289569 799517731 910202942 872955880 891575030 465890567 945490012 689378347 692016165 781363200 926350573 893243181 956193750 154048083 800209857 869232443 969823750 913473879 967222947 470742423 560761782 147245998 724188416 742794381 810084929 573902723 835256134 663272913 698050814 529751244 979219098 946752018 959029350 467292637 922184345 142435310 508705634 411793737 797882304 300128904 927134330 554522804 898476231 329310511 939542104 804661135 993768762 506853159 916169994 314157076 693227103 603076237 611574205 603542350 737020432 574653730 629969430 585617284 941923924 125108880 720356435 672395105 803780571 301857644 508728814 738330184 993522744 21873903 990198119 231376891 743410809 482235647 877354321 60331840 721826328 803958461 965040569 566872492 919046631 112279885 767351962 781438281 811577990 991340626 993588021 683684911 803596536 850674521 899997064 965591176 992447622 262167272 712334464 43240083 875950301 906323275 919376980 656257770 989875153 130959074 652789050 155145933 236825169 279003074 313099095 118455971 611396077 718813528 738092721 919743698 963169849 443182542 968872208 245272280 922651547 417848388 830127831 226698340 898454298 720496730 967944267 170242144 435509449 7074068 886957678 441535559 987250473 873614341 973355144 621231914 636955023 909104301 931352841 255553531 643733783 150574560 475549391 116367586 830363974 938794762 955588330 835400656 959038397 449576253 607117103 43918063 312081723 947069741 995428890 452040 427671295 626212070 655666304 656336080 879918699 283713703 974179439 454375860 772262047 57184301 86490810 726509456 912640563 793883055 858700840 776766691 888056915 527829205 976324782 871981303 873300449 975969586 993605371 137107984 818684968 502644436 556630614 956770390 996282538 859623163 924633529 615528244 966868709 303000949 589315952 538075063 772131200 405827944 506671174 752054705 778728314 876340013 927922290 542416941 824259079 496098614 627708348 593987007 995499208 373532722 931351979 241629383 711018046 534757266 713549784 273726414 343346974 613193408 717126269 119952238 885859465 893199938 924895051 900744560 956670491 785959416 993931000 749935732 840028085 314554309 625634275 143764347 680273072 473696161 898345815 777243570 905666180 192334928 772020969 242801381 589706910 398139416 485110708 559865426 991226011 939483515 946363483 629550129 850646377 967321740 979071632 458932004 922979329 261372698 914399884 286988406 531379335 723743908 745592184 405643317 856962643 319844348 960474340 87675501 186527672 908344483 992180613 286918675 855352810 566481847 962114358 958215255 967040729 482284245 684233063 773154986 802222249 327258989 389674538 211365616 601115960 835921171 976038159 801605993 976805318 479726667 495355504 35240161 645576952 14524646 47092515 998090912 998515857 276366829 773344514 962430321 980370592 786819405 992852095 960264942 986386805 891516243 904158165 455571217 974821496 631923531 779758887 6014265 886288520 17032709 312133845 923781831 982331742 930110319 951235041 597857234 633259311 725350101 870399776 68379645 308271812 44746208 127970054 589008577 682662206 174524263 793516306 688502698 751327926 818148000 903575687 53231114 553415147 263275142 345454425 738509254 909983603 987020217 990685586 622374713 972334279 554332634 636663444 973862003 990526921 126932761 729125545 766001833 851552205 536269653 763160057 716152380 804309018 347516410 957897496 380986677 930626029 779299278 795929551 507133967 905212741 633215946 816382241 82364259 371625160 465724373 879584916 402879253 813532020 622646240 895912364 373289874 621347840 626529314 765991673 704297130 920351491 681867908 840786384 138209022 253230439 6148948 913752205 527640256 943888643 115959043 548181889 104500315 296050371 617022796 808450288 45140384 628446244 93846482 918580635 129954371 481165681 645805991 710460315 311741639 316047852 902643107 949550716 870731974 982762034 137339441 623943092 358172277 583859386 458885680 768232751 890521384 892358511 395979449 398137371 272914822 819674597 735087541 952952788 682248904 843492258 29115693 835526099 322510447 487749949 416744428 422915087 621609867 825251451 57885705 655552145 9585602 575688861 468006750 938867097 779974618 938265516 29673659 181932199 84656811 652195501 633926086 856957247 55511237 793905967 348316658 382780321 89353969 757663483 391466510 490021289 700080756 875351981 358424247 450288722 765439525 927094647 786157743 947145755 19662302 441464189 837407905 926226168 503626298 947571823 240297848 366059681 338077706 365363098 903274123 916135303 232060921 314432490 167888616 606783700 309619347 786920080 208869824 444123333 231588025 819573227 101622980 988262200 477500691 807099361 827471258 959564729 417606647 613834616 218559798 396559613 677949016 824633385 561684819 959624500 471493617 856269822 849785552 858552098 254147179 532483332 91948861 515354970 958439347 962521722 498765827 644377048 743262507 831725526 560154971 726206380 481248777 834119164 66652263 138691586 672345053 744535481 741358901 863946876 828781076 851970838 490490866 856058997 815029578 880063119 250236656 342700740 30964517 719869761 498777860 769203199 340201907 380345725 478806544 531933748 138411605 282712176 194662854 631391083 888461937 895390890 699861926 783536866 410570196 721474857 950592719 979799457 324260707 463916394 32697 474997606 192143701 250879540 564154283 693150096 409672050 462232574 53905995 547176466 555660711 907520457 531790636 877887381 404555906 804344853 885096285 975318221 466652220 907373447 781375346 959307879 399448210 619833658 339500917 589439915 191534183 320079938 380493905 694005876 320929567 523083297 751773811 929791938 2711567 844948688 477478261 898134315 964864962 994273014 776042255 957423181 377955875 548689987 527090792 774161960 645381975 777842887 262780460 803088606 593796243 779275768 380819207 748551665 705735376 758811109 503374663 570957170 386149169 432637057 609416603 657830992 752364937 814470335 415738407 881170107 252140275 990221700 437428745 823428370 335083276 634392389 755884829 775415036 148161721 924130407 923997551 951048232 396551664 759689446 871344760 991784199 971425284 993087839 107469257 116428806 450621297 622819306 201859286 210761505 122925592 793258489 233933614 274477889 443541347 510842815 851619950 975358757 867126000 881037179 608996568 694415662 344865053 996534246 473906219 625241566 492093417 642543649 42878776 53228127 212191248 454675422 40521182 737207515 23441595 690579725 895612787 996555636 382749330 860744397 801074906 815335013 588064784 591971346 777907497 787584318 546604448 616832918 536893138 685134596 787379710 855536401 437315359 814954078 559848263 841117850 954796207 962974654 769304375 888003025 786147062 900867238 55398640 637850736 113767776 678028632 512581340 974266124 132237851 905537098 111696700 634204303 65910547 639367822 24254610 797303909 887156281 922599354 867847460 946450211 67321619 623718113 850698937 923521738 245682635 365168883 35124814 885590412 203809943 921459779 353510537 912678527 14209922 665723537 434595294 720208654 964042299 977056566 601197840 781965654 387763761 431572343 986981770 998550960 529535016 663948669 754497796 777110570 322787861 640904647 416551118 585285131 376231164 417760508 106778763 297597274 405140165 853758557 801885943 918162503 13162294 807545030 598389683 985841809 297340411 606120577 694779526 942352625 285588283 778298981 654062452 961142789 443795764 582366937 810826809 909057040 287010969 857275479 767415189 906998411 74829701 441633021 865029414 988553169 784939018 843508195 794202698 813806679 131414178 513181941 864157390 981678082 851360203 901279946 743434435 760665514 578185465 826910584 294799126 931081765 552109857 970830431 953568297 983411494 129846501 824088181 262654089 402098500 209506261 967017488 868706417 952724019 69572308 817635949 546469468 913600648 180557222 714651351 489822459 555059731 447289470 682542054 375805083 547683705 467662300 924619898 369407748 427947345 914321801 956656635 696925838 701493554 784609004 916472499 458361059 700369004 870664809 959691028 363137976 602821736 957133175 997250386 640582329 851348786 106484659 340999145 210630101 260317942 44449819 769658196 260117247 332588570 819746652 988813464 552652078 902966039 986240004 991502241 616911632 640905075 567422089 784994153 325060150 724938366 841659404 855927490 440602903 461204788 309847246 884436042 855655701 856240394 169932733 640690023 429458055 948049857 367163858 450018395 346934651 418503520 942063502 991104691 985110235 997517847 623389297 825348317 452206981 844771019 353801448 428900435 614476184 962570927 589928577 872124838 471218808 600865650 600359008 710495574 266797544 534301479 82493075 86593385 850305525 937014682 68168988 334712696 390905614 732973847 726196902 965533551 464669517 850339873 300236996 645566070 443246770 731965820 316992014 697875476 120060457 666326998 281931268 290321601 8746734 135102221 179341999 867514945 814168503 976098072 147989147 198745791 549013889 702977179 452815141 713944703 746309696 993206625 963246042 965747703 621081278 758934127 919131742 952174709 576879042 666283068 984611373 985976978 988830744 999932467 760505845 885050515 310112408 600872384 590429116 785313322 226791979 657635513 52475021 820698506 566000286 962705050 200736674 538136797 620507365 770141891 104640658 906045140 540706982 619011942 159225605 649293847 377605010 473607069 120811131 817477065 368482507 749892076 702481373 909391471 311348750 714136946 95142471 117453166 227420645 674837790 7655487 561649687 772849963 848935051 410143635 735923654 238339304 840780787 12284980 635220042 368601190 452132234 406035280 599520429 677661644 773888657 267106392 720945051 284432840 291882208 2888627 160307748 172359250 641607578 831610136 838334216 297432232 895079937 434373340 945789003 575976741 883325697 121544301 252432020 784567249 888435828 56080039 304489128 74117801 626890214 19387132 555747982 591512272 625642353 570504121 589526575 403493312 998527193 180444174 935894468 244528378 298401042 221343147 809789045 103435161 279687091 611287510 981370748 92203300 766709014 219359037 605937880 7585153 194816481 228001526 289641824 649391999 849918050 429162005 548594380 103101286 237845195 87699281 396254665 802123883 948476781 859903623 878115147 182441525 969396490 718919667 977889393 56608683 555499586 801853450 969964561 998484990 999840438 946195512 986101228 520563414 799929657 266646687 287074012 449500317 935855303 481054390 746587811 876330206 880691840 971991349 983688126 752995984 965004934 616164993 923975121 50633720 496551622 420060139 989889516 86212547 491927475 29250481 591198687 181148702 914967314 468758186 628848645 646405827 662403946 823007205 864236875 700454413 783134105 237999981 595778284 584066017 822773317 526028735 726783242 982002063 997251172 269772423 832138171 707466492 957252252 934197480 993988772 797410916 901752360 372568493 488130261 632615171 709526660 789787616 891563833 325117014 547500033 391022483 866712893 181883700 629610732 334504807 357688295 411409410 885212346 874616214 987862418 841468145 928932404 802288154 960081125 453785165 851030912 585769066 727733478 172092606 240221411 82761679 996422031 745333024 930510465 710868439 762304986 780131663 836396354 339076007 930707505 338710074 898496563 670134982 930050897 522770514 862408018 754951425 824746521 814887321 816544857 479217557 676603591 955162149 996216871 50542065 792555561 525308129 556241918 575090687 604926562 598162079 628832481 296436897 835997275 359883504 950510759 111361300 293303837 248595061 373697717 209464365 487972708 431071611 980688306 177380590 991058072 969082708 970364850 563875658 901535358 154182249 644465486 180747892 676483901 546907519 849414315 373992774 766690283 179824828 637573542 149753000 510753979 769921230 995592776 893535699 932031484 603765734 694442475 703757333 906313978 623974398 773392001 45902528 471920227 823604958 857343094 595117007 965174495 691971366 737304255 763432244 821567056 464460415 509494537 606780743 666069234 349613712 612723088 41728754 877680366 24433442 814451849 849712690 899735410 442364042 767520442 111010898 515601697 724705079 732240660 537691108 747272109 867921729 940409687 842409267 887945272 846745995 941872384 576210274 611429142 403485442 489118933 671050111 714237150 759852870 770229435 192781160 795348611 880441910 984516505 855243931 920841441 266046036 647499887 697100852 709304597 614062411 811540396 306647421 847085979 194453124 665671229 386615307 603174147 628396425 748074774 663393719 947962395 734745877 971975525 132379501 658693671 561685551 813621914 213179057 217903481 400582219 683246303 346789689 423044764 693401803 943357207 103765395 805804478 857001053 881146460 580655715 971849162 431480584 683223569 467087940 741272483 981880833 990217371 303235381 429357287 753784117 804150380 190034861 631031269 805083055 840792745 35300859 215102437 471040910 877805477 206488303 230727170 972078484 995957369 679425015 822991029 323429608 931804177 647751140 912633812 740879499 942902823 237636329 990580700 377023616 780973452 366794696 920440504 473117054 872346625 448654401 781865428 331904451 816615075 280579455 334411699 782895293 975413695 323844927 671274745 323158617 780066027 795431041 918295171 332540182 807412480 170363543 246590630 376719391 974281636 317441211 993599729 856733110 988254388 613569648 690890970 236154841 628834613 692001007 940594242 6840203 604908898 298965394 364330205 485375843 673310695 148654374 314982957 743311209 908781325 44376269 391625287 442138700 796245498 866750833 923664970 419512843 871106593 152563532 655880181 36428821 957319857 197586572 310902831 16165971 17944893 916234762 956604901 230661867 574665795 472833767 887812689 59545180 811953223 713433963 977230137 799542537 988602385 935907968 971138318 744948993 917792196 536543914 949825181 979498407 993886755 366863437 583517035 619662639 636005179 520777567 811482629 48516356 836620562 91473086 149698167 868618236 950481922 620884341 949933713 720676232 737705157 305061463 390618147 366549871 796299998 759392294 861055237 963614357 994324471 820016135 996377226 331373545 826322298 148145698 801121003 602263107 944199686 560395622 690041345 146586377 503164165 657221823 774921913 862306887 988619970 304732777 352995683 827199106 977092355 600076790 634625533 165323368 356578202 951668577 974710478 288402733 983693967 263975094 970284564 17614905 481577987 355176704 608344586 203652171 278856317 253760760 722720054 78315187 977626570 124524034 558495841 560822038 603146283 178672507 873862369 332836701 700465471 618107962 858573785 834702365 899196917 215740322 621628013 20416598 247148656 301162372 784093055 183685237 244853393 248312266 984240006 531178592 893623185 321814716 400895675 897630559 993301286 790553947 987854361 356532923 571041770 955618506 985408957 229273556 503409501 956240074 995408148 793045183 916476736 755635597 804420202 740307907 933842193 182260126 366800750 607055867 658273964 148934938 379315593 164339498 857424314 882413380 981874802 99357050 993996989 629886781 677511169 831315049 958962038 416388867 627670123 725657606 886845017 196620309 221535081 864259548 952287510 50699927 844541130 67600204 992283737 717945276 921688164 943055031 974698879 451371716 912616519 493986681 729436438 264270457 782655382 940350552 988993852 748596192 940732949 482712002 541530535 292126543 974420554 809677560 922470655 176463703 760113419 876116487 971250131 404446000 511629769 41577154 951508925 310712559 962350643 53201004 604045890 751822382 995926634 161088010 256625076 951401769 979373387 119230136 838653262 489769524 621385295 853896868 874263564 821122310 914280562 590950136 650286917 147189268 704187851 293618500 406651592 915026931 983504458 605801761 967403485 2686555 303577219 328625758 577788089 394848374 804745943 186074600 298503924 885888894 994803700 230609342 994916380 183868516 747372325 647317564 799808018 785100652 941584454 33605896 249714947 19244699 926462463 911309232 981105954 182214410 349362397 543571982 808759416 253712539 468444517 746185133 760112981 191909341 620900846 925509372 952682924 213818005 241846906 333513339 509693273 556728563 991526677 812496690 882123829 374245142 991862497 22822115 219301027 749045126 860917600 481720045 863293254 964470714 965412984 222973516 888324189 934826097 980693807 33415168 816066010 740324559 877369647 293179484 862208279 804257104 936686751 58731946 217580818 627942998 631581126 304912924 351907182 550057362 557570366 604729620 796742137 484890917 980750508 93522664 285034099 934422999 996152832 688199404 697930759 957298461 992267548 593163582 749768229 907427493 998417855 694505895 818008558 962230272 963620687 58900867 938044270 248648266 708684668 676703706 992832983 959000467 989761560 595808395 639855411 274448405 697181381 219509116 952552844 291345254 920496405 407744381 662615864 351547422 828063557 403857850 643455394 730288668 843360996 107682040 862294821 701129691 854551651 751455855 965606359 241571147 549485142 145195227 361737484 54766605 675089336 578875720 708206516 428032606 893791964 111516356 329449081 972839225 982471702 522303266 537994465 3487535 746183734 440146066 836812456 806432566 823298922 396829277 650335749 62103639 476516286 166065562 175940881 54912478 577462210 434684551 647640758 916932733 930304101 187855597 858076023 765340364 773533785 966843933 968080686 621532008 825619427 631651863 946848801 171284040 387256249 75855515 802664119 192513251 660817347 979450951 999857285 202812506 393857872 515595208 548578057 736916963 856854488 546222289 737196975 776649848 925010394 411016144 721450288 246689916 371852415 687887850 855685866 457709226 771763215 533194344 754287768 995463397 999752019 642491311 930912256 226011470 918042386 797845095 966918973 345486549 457701613 122721025 424001783 882644974 981638298 798273805 946046106 878411501 881374662 207689131 595795108 380226155 556208266 791815005 976995720 106602265 118458457 615120666 640258967 291666878 675419787 182634809 558914169 780405674 791878751 132681587 442899326 469009799 951208367 95552821 432981799 509044075 891009074 806339538 885985938 316508854 742662234 850019796 874217440 978272193 997262087 698639175 702213835 558248075 574700430 348586389 860786189 783263804 983942888 637180090 700342524 840873999 952114399 324109608 329360049 986998531 990962789 804733932 831192332 236773934 594607219 704225780 764866249 641698697 963334200 206296727 492833057 276750781 717519741 768189676 924346829 435582332 537238433 292594971 805234353 732285429 959221682 463167742 478363631 165637183 385392340 850836015 885418608 662228817 762504469 443007970 767819702 195165059 371200858 584940362 798022126 934770293 968570577 581209810 820056679 932909387 951840253 562014577 683642822 280008888 486815374 24367733 543882122 312023559 490702917 810421443 989505120 547670139 740132377 834883808 870874970 258433850 703354493 348732352 590093123 370470062 812995508 899027818 901381384 655880562 775131011 891170459 904795805 165988093 242418543 30884084 986440351 265417670 984049549 388229480 758513049 695386888 780164374 448384366 678859354 445798472 661682215 364651306 936123536 84906433 814009702 210698863 401088774 591683284 649564558 505609589 518035668 967786409 997971929 805942899 964556364 278726618 500455955 876324103 975484622 422260082 851673154 115060341 476028404 63691112 482874485 747340218 806335936 46065287 934651462 706623446 966297260 799085610 866509100 830257353 877941839 994536420 996476479 990526738 997280113 200201137 523066578 120697890 798896481 362465489 548173843 81915946 815891315 271745342 529019636 533781066 663967381 519439333 877616240 367992851 553148020 471713735 956783875 979282316 988714534 287299927 838982493 303865888 911192040 17283094 339656808 693899410 901802303 794636642 909809146 398416777 893338079 782586260 878215764 843105436 991075674 727267466 993792290 175154824 875212166 441112348 604151693 973431746 995759329 708614650 829218994 868652474 882815885 82174846 616515713 794028130 833771426 93793491 563830287 787806895 823671362 67158704 750301535 294839392 618092546 154371073 842990149 690403040 948556418 326772489 490694083 157862302 815496100 520113566 802218217 581303647 692526347 996294926 998442103 439535451 921908393 368925101 723048553 348507547 551752512 973068770 998995709 907507687 929600034 228372465 493867015 191596013 412550539 198667651 719385637 265585372 946766334 385053575 849585112 100442194 169801725 197361676 785852600 357071326 437726555 4222101 504314630 483549506 896802082 555788215 679765708 241737054 641111961 17908084 579294286 981975822 983285899 455199178 892969176 405084931 515448028 356668528 424182529 968832846 990937645 617702647 791405819 863667472 892879071 310690256 885550345 282714195 620822520 508046647 947438122 420976737 679128243 132071832 486024902 70168902 513766028 260366466 808284118 874193914 978396650 401143539 612989293 62358154 776509960 896225455 959476411 397047575 553090319 468045845 930566765 755250890 894163324 453462711 657922566 13750899 367243906 772743266 911262474 165297220 705066824 471455888 690138274 953978570 966965371 815827012 916636353 89332053 668062954 2059727 837012425 675319059 820756705 893110720 973138076 329904911 991827169 117284007 614166346 692268817 800685680 928575250 933664340 146368133 520095003 383989811 662914692 802954524 898684806 881848069 984338369 733904464 858576658 554987414 746039152 379590670 955643918 458591420 983150118 129945879 810825387 321470401 359195301 437080078 631130772 397045520 976862328 887285605 907874370 974147070 988106115 849473243 904587664 521785731 675522477 759765701 901742559 472432513 760953264 366277160 811067747 951263228 965971490 556253877 589383933 840762856 850154432 470069988 670093341 60293369 137145693 191556108 908438500 662522932 787390180 919235756 963078141 648181617 814039521 955828534 966250008 100383288 832468059 271584294 725349484 228395418 239969830 619653261 963764260 320764584 751002632 35066538 166236864 857602853 976793083 756776075 781683690 616344094 753401769 643971041 966798777 999509071 999852645 882502247 933887769 751310102 987666078 759393694 940418472 689123772 987069069 672316140 930514962 718800855 791503423 906000132 995248539 358274841 625658398 691914959 709123629 475530301 759340249 823282389 962091345 800470747 819881827 319463108 574005101 818546313 858836428 394775175 550684717 695469240 771967578 748326227 807493731 244913362 262307509 426515302 720326741 278557148 874811249 558292183 801043937 688406541 817121949 969095027 990980511 280966649 971657521 635140756 858378570 525088997 705526441 89205921 875549788 63121636 809862713 218493231 970663967 309330523 719764518 527364746 552687908 594134069 846068468 555849145 616971121 145141178 677526450 53881064 972903522 790301139 803892398 377129673 690215765 543671434 599473539 987132411 991631605 325772310 364201442 778666718 916926166 714953855 715262182 111958888 647500409 245134135 511710493 711052587 727656003 439615139 980547625 294869919 535672460 941643976 977155056 765867901 967803994 153507917 791787814 197228151 809987335 991254388 995874774 710934293 994548685 125681093 224155586 978980657 992712460 336469280 503138814 649417560 778390307 438714649 474472676 577880133 755109895 338356931 488580660 441560291 610144882 219269314 526442326 912972866 933381643 315610141 509071598 835566100 857378006 111057890 593174761 159589448 920765649 528086731 656962272 710043920 820357225 576549518 624060929 660021130 931733025 167549147 708693701 770613918 856218989 449782481 564564975 474589029 859090496 4470573 489877632 978322096 998852421 930955457 957000507 393876594 447814015 460701182 521572041 213389117 865950906 855510817 907799964 110135905 321815925 191541452 944390982 15533229 159378293 913219253 918480674 646642916 899724461 565448359 572057297 189052735 699083339 793579708 823660628 204124287 313044901 925512338 946186672 14979666 583899332 180778608 350866033 431572713 507279089 953538621 986070670 726138555 886428245 816352252 996761159 775172218 850436906 612588260 701382582 619525428 725364619 403112907 621586414 678082795 736916201 410619213 523878456 822420100 980778498 649436217 681411167 79468729 384662216 866754217 992381690 535970673 826266788 437157872 492878114 777720938 795906481 281707845 476609521 868920427 942785103 776684634 830331355 258178494 548655763 576290107 631512860 427153636 710881822 217652825 355060549 255545653 604984780 132929133 747326396 721058288 848205403 470921200 777403940 265121661 859278490 651800876 913248466 561096843 828473948 264581987 964194286 660308959 741517111 92049744 732201876 868812550 893305139 284443577 946741960 280320318 827572919 811091500 858114940 462021181 899048304 826877538 865809858 633526148 668313052 362001353 566490318 891491574 920298024 47076604 830604340 770298379 801527154 145842533 539268182 759958454 848814410 545935721 697387332 783567500 997342915 445116599 971296363 90869935 993630390 460573656 873766024 126895331 512279303 953410738 979818471 468143068 925938205 28423436 343966350 646495711 915711609 784121880 948273847 396011928 915773322 705375720 751353910 345587982 943353401 485548800 557701150 707977229 822502202 310637985 499305085 886417628 905234710 433142933 664355186 304828716 491151697 54774412 59199940 278762462 434408369 655335941 973588348 1912186 938282001 63056673 258744463 614279217 983370549 47030597 334734635 8189456 592118450 206112071 608436205 688459779 807169558 308143198 525314919 518362098 630623037 870928367 947870602 129370153 851064761 171207224 303964462 977161704 996536275 858391716 933629802 427891375 744826453 47975446 711862689 274147864 430450353 763310495 905442884 287659124 600608376 796413409 994471421 715711948 989696436 931123188 992104452 240921137 495252057 978891907 988415008 305609538 940228842 41379594 962985673 529025789 773203849 851984822 973398948 460727702 998282299 370469708 563306843 556311754 718694441 543889378 762291694 259036466 793563925 690129891 743564167 325105930 614700798 955740754 959037980 681953277 978298119 215570194 689394399 784620561 878615458 42235002 462575040 809876158 922314195 182988500 246690621 423726110 626376296 567789508 813162810 375252280 669929619 940510051 976639530 261544673 825625033 8364875 848242580 455281243 989328686 727231472 982924392 3991427 508083257 875925766 890573646 36885540 517921208 505362004 645160053 32117071 494108509 480503502 918186541 98924100 192182285 637355518 781754617 615919593 662401121 445484560 700512037 755564392 760972506 429334885 952596873 807523532 839712724 889272272 939036401 533825802 760265909 223742060 484225305 376337651 488067943 332751624 785085958 508738629 792294724 407516610 875652022 951223232 979741900 418667000 781566732 39542914 620865783 622935631 792655443 608433738 686479357 41485863 191171412 536805315 745592641 773785903 895756393 963073136 983946128 396993772 610395764 989802428 995071285 222589404 653128876 165961248 473233549 710948574 858018716 730239359 971054403 507005944 821213939 993976253 995915609 908974762 975988175 171304114 932476609 922045993 934648384 404199665 407804040 727228138 919837773 420426822 855975051 287381662 637075634 221058531 867726624 565925672 582988735 456840644 890096305 167659575 323534531 627309229 774650050 68707897 693826566 26120922 286535536 540843605 925840363 710917549 992690960 477135648 996489121 629373978 943099632 73401465 992943727 508351180 831023833 932892054 948893997 34115598 155650195 259354102 647657404 827408729 836148382 138462724 936920884 22907736 197007813 610195528 975765439 675790496 970791067 732840143 776410169 40540907 535909093 416612696 553189695 816044065 834556053 554164511 809894295 718754707 872308509 109017963 355018468 481207311 964362657 308023445 581125242 149366589 268233987 299670276 757471457 106278273 972506953 526640936 857818320 493962352 716458680 976517165 983295882 988124933 993915727 393104514 688367663 320119987 940484393 992928656 993535957 768594295 844947756 166319236 199981787 333418332 414002191 8909204 415427238 857334540 947415908 16224226 748400232 722874756 756245473 940658978 943506687 134356719 364399945 642433011 689804511 87047277 529967028 255785283 302300645 476323287 946887869 311175509 905301156 912323482 946378482 525646831 938949050 789776192 973116498 971176078 979859265 217649855 894765958 246192224 518547614 513770897 736544710 352381873 477781555 164042548 805006805 428654485 546648777 211184322 915846162 626309487 711777752 191847930 846896288 130663533 599196738 89266840 412831096 818717252 969847490 345672780 571796671 619230729 860888397 930782385 989816731 336530732 721518525 373087129 727186342 699058612 828432582 157271601 449266256 225965148 847411669 42765117 271678438 50451040 424076812 728970688 907691939 776983077 921438991 465034441 870402846 312762959 941193576 523732151 762835109 674394347 772228195 217814874 728457790 923264993 986791493 23318672 793565342 901321560 930420359 389303515 489090288 457867123 819578149 538984028 968987511 315639221 826369039 286471445 451566863 905695317 906163831 863005610 981293660 475982599 496848729 52635041 944829272 648255308 870793477 697728852 737713582 165658350 977711108 146444463 339098320 124994374 422177422 929130046 955377524 598312782 983854988 846186865 920011181 847955675 895787870 487845583 779874069 827234012 876105945 225032070 794020039 124756484 596757151 637722506 928690915 782044004 972212091 36575819 692251814 108835813 219731781 223230442 689473550 157013419 792881133 77385878 608783649 171087962 686471411 948329543 965057905 218760024 460087217 274501519 800755642 449533622 476032654 696048267 917448597 798127517 981728645 118798635 598759736 499618698 798990073 847416048 898376210 516947577 628818644 464092730 941859615 298788986 755275039 467043449 620790412 78075515 827124942 359048242 585543531 209793142 947113811 500745956 622110542 958591684 966298365 685077010 962806194 553534614 768246601 518559706 780242070 374119648 716008764 819785807 894870353 143259161 488648524 836396717 838397552 259579948 858419321 323471351 696339336 13584076 654783048 394645825 900434743 934485946 963396346 924963812 934859494 549266397 668393229 256371169 358280719 628706737 948857119 968432447 979663832 647816472 962716693 351488767 455265530 274798477 799742173 893554997 999546208 371671606 459617739 93979692 518379873 49069449 992702425 843437888 945630789 289235444 621297668 378999421 709738871 111008914 948416689 739927790 949101294 451182802 632446420 893603429 897249899 755026049 957265885 240051667 442821966 131336340 447352834 496102588 613392741 328225532 407492496 90135755 960870171 653357453 984278743 136292920 153209932 305084539 953662279 695712713 866958533 884907896 992685714 492045581 539894972 53134986 923269945 59508114 860426376 801655171 976996785 26891119 581545204 908926698 975654123 902937891 919790627 433926519 460571862 118125822 185887814 87393464 993159325 724751034 920909070 868892378 903292089 369862375 884806134 469485980 709663123 969074464 980885063 160108100 162214119 113547986 386931442 408265782 990655783 257633785 457436551 241363471 628447161 127647094 380223386 886536155 920797524 443857388 493477210 252105082 405187574 503244368 529814144 518801368 873751781 963753564 999718964 201728873 465853756 389125976 752171107 135661899 340835491 952498976 975891466 584873339 735563681 302482866 568296197 957662761 962795495 983457035 986933784 193009027 537594502 113279945 212700666 667157716 682619886 216032453 972413624 699224756 705900253 468663409 640596620 732697946 982959026 261678729 959100845 712542861 854296596 279874060 516499081 507805903 907534202 380508896 885549846 97864130 315493787 931474249 955074301 184444653 965291743 242757128 478474296 743704414 748440318 71882463 795189380 17952460 507317649 986377643 993995774 684209717 998325566 911259447 966847276 60184663 288522830 955646842 981849805 618566617 901290509 909051509 969612614 447271643 863328718 337383758 737802230 550214162 779486231 189761029 854333718 443191950 477398659 320007837 808324631 195034681 359501001 62694527 561115974 748384536 778187677 982099388 999613465 414983452 753901701 88275452 318893903 326286526 637030364 931976873 998887603 454041651 574398156 624102575 699156357 272757551 378616592 758378196 859172979 999799721 999912310 971252238 997088950 360265756 540843099 797280582 947229406 644212294 651085762 639896633 995339185 720978296 956165877 468438819 628568675 684628072 958483084 226401012 938268690 293062715 611440862 783426606 862678889 288190955 911488036 420832755 718856567 359387070 483708919 339328482 775109876 267435600 642524004 417359130 742449999 971332510 980869533 334595256 878369248 249962997 811093781 586161296 926033957 809705819 980319315 545264854 943049277 165105982 900123535 895628128 986933534 587602907 945956092 111898661 182309778 719905942 984693196 552034674 647537619 269836252 378360256 770432620 950730303 831086591 839875903 284400979 393261318 975041406 998553517 466573346 733998086 436731883 540280301 105118272 181362134 333650648 863791111 299382046 691992918 102946005 433354714 822063103 846041582 214253247 274567994 583775357 805687084 626796316 793552925 42503339 585250403 786061780 996101543 550703885 892453688 261609500 333117263 291137073 387636603 914529755 933437448 567582098 627220056 904235541 942448032 515888827 685449828 605070186 806310454 531305595 714745365 557555542 753836397 473673977 508438363 15647338 561277537 154562969 883270350 67831740 532817922 979619800 993863349 55939297 730617833 739756087 979354768 426699546 610857575 121178789 511267741 681347165 835149989 367099348 547785825 343259572 596698411 986106992 987117689 143561081 373638640 656690157 741108825 39081826 368749401 955639690 962490658 742690253 826401090 849907084 990102961 15848691 778718919 283698527 347120256 787597663 918806865 816356328 972592513 612679891 886762607 234807426 404303765 861769197 933414363 598202276 729127974 200121367 958376685 82421406 231620328 549290594 576191427 26679002 503078136 987997689 994150725 172946401 611183900 879308943 941006610 452741556 747471062 881924097 888136492 839741490 911717082 326820687 331196496 809310976 870649117 338902817 659472152 332642303 462319949 920757187 981118312 904012950 988355415 141943523 217283259 801976185 858699959 900792953 921931949 745681369 822284520 439975686 972355471 47894445 232931019 591968679 912951864 758456906 864908032 422737196 925888892 521194094 892192452 568595130 884230210 505273035 568247882 128443565 382582432 617195135 647919954 174344846 263809429 816056347 919528998 211019527 589958845 735673954 977065606 544436826 705929105 704309879 932840237 990736020 996180543 725946819 887251931 865351599 883624147 522665423 769959272 79893752 82682697 16938501 132827255 921787355 982775698 16157181 889078227 216841410 689571321 159233186 977229962 763021497 787919944 259208615 973694252 761725418 847530651 838826356 851746413 724112622 855018522 827340119 909364413 11806927 541339994 266804760 495281318 784510594 907911003 394590904 583621874 863496422 963951387 655958260 973273968 560842164 647178472 845164667 979650438 278673402 841614535 194052634 584597848 462335191 643640338 470846898 702245719 223509330 948334768 553850912 996816600 226312075 407821354 6611990 650675836 104853691 228548856 441073781 692739163 814052659 878768969 523699976 643220238 778136596 871474641 186908708 673939059 941565083 973307374 238128728 573807454 124465221 418670744 849469226 928864896 124667669 720405866 259680874 602746346 114083401 215390918 911213468 958437904 175636906 575265978 114126001 297539824 77584803 940575679 561078810 613375253 973486318 975008553 435876583 834471697 730381127 810047603 995353532 996149672 325330850 848236967 723980950 753830222 18097919 342583072 72953891 246653220 778730300 946658089 276078045 877042422 963012769 991324090 155771814 598554699 30861173 414474060 659796616 931338978 880816835 952722254 750149958 988397621 769938160 906166992 17786346 155557106 363867186 415437578 317653170 685707311 782449665 961357372 208262894 244452758 643003668 733720191 268466495 821746266 24340142 158390894 31293984 184062381 864469382 865094018 204079926 998961389 172571461 822620394 339973164 388997460 304429598 467572917 187992791 692102579 426652893 449894325 455947638 634271611 338345935 706674392 373273833 559665426 468278795 915806682 828574438 927890661 870759161 945853691 176767415 424212611 56164087 480572525 245138629 811839022 345744791 520390881 593209010 993529373 283527186 707896926 579399276 734357169 603852630 874137953 527869520 984149228 574950964 632060696 118929567 378801448 409801560 712862052 143603542 755469522 95876294 585184101 502570206 792858710 731173960 927271142 85602569 657458980 72097221 445949444 440686471 812279752 226591639 353140507 318351400 618798954 408175159 628275250 978314313 992932312 692563535 950669581 620378434 622388669 527994121 999606377 954022623 995930474 206736316 994106670 467667308 756244796 392711589 896363260 215796441 756819211 998624822 999838090 397279033 996733111 624845219 822152395 354594693 388328835 265156176 862877192 918318212 955909413 328741334 402161906 542861176 966609398 969211436 973067177 199769159 831782673 764859249 934344677 448972639 535318413 380696415 921523989 766553043 894197024 66913235 926637042 637560098 813097604 786677984 930053721 919652629 930416054 19557312 903599651 406099362 602419549 166710587 905765498 901686901 986192816 379937048 497241504 16381203 657943655 821902633 890685273 548454309 830620051 561582987 713739187 8492005 870393712 955392828 968740136 130539165 721957523 957870537 987836023 5305167 759425658 436653236 764654552 792768695 923416960 784055001 982930844 401576414 512149812 189526843 522319760 666281488 689673698 852410150 859269324 649811116 818713741 431524668 501822443 316467162 881572274 858817367 966193478 115161616 177344985 829174566 861326706 951831960 985536885 789587479 840004945 849763127 875563600 931205023 959325447 430581768 701093297 629413736 685067937 26708742 664191142 653070880 727454213 771151655 776281399 904332282 952770688 906490687 912602232 203242981 990769526 360783481 513371810 583944700 797655314 285230125 322267464 921203485 935496981 432629354 466223253 662891859 976630076 847183395 887201414 214632549 555666601 282514562 300378486 941958371 954009228 639039774 692501802 239142604 773936238 631923472 644744111 490755025 545688239 402914813 701156447 982714226 994102881 78735536 363079452 129112174 386689026 927175750 948372906 478077504 540134268 654176629 951937127 764073352 959281335 319672618 447778677 718641442 747407463 7087638 182360409 325164135 827315820 712634451 866607806 664894338 918404834 329386014 724344699 692968927 750933788 166349199 661109653 918523251 977599174 829225277 991211707 703916974 873391006 30162587 396821205 29074401 960172320 735497608 964854735 50106679 778349190 752393738 880738991 634730886 735716900 800771508 922651013 258621916 480536230 153135583 535545607 947330369 953746999 372031356 657917545 637932338 717453957 129936904 268051982 875071351 929989981 503410342 611293192 446304972 728578655 778779263 961815499 722177044 760058248 552515623 913331410 674820577 768924443 998407509 998738703 40857114 97709792 324101727 490201711 704396725 939300200 455255779 616412945 991499250 994699438 646546256 761000239 293380405 636470518 973211879 976093477 435806489 716387767 700160622 801411885 707465728 906534671 335471225 982090113 949065284 985513098 847134268 847645873 577628067 629825810 132051712 159933625 381734466 411125103 590331917 861315509 588868015 847928315 197669896 689138265 911223116 982572174 518790902 767207338 526373481 649020489 110811406 426179985 667154865 679470414 994485720 998805402 208372762 592839236 99447304 871118381 925171915 969572952 449690137 487450298 821623319 846890541 909405727 941570874 717537619 912554719 843790725 879660622 956203103 992650209 628685905 996788707 989063821 989650457 241380521 772696006 596660508 777720302 335131166 395727013 789894123 790455150 25512540 311647731 935592118 969204329 988473520 993045187 936640695 995296511 97598089 275061838 540699331 889361878 712886530 829998837 34485226 598097801 265422892 832073186 929939318 964919274 406344650 674736264 581196383 825644209 270216394 408217039 163912923 280008396 728780842 948568367 520023848 566756061 685499025 789197277 861720000 887876224 850955622 897215468 723370519 879048506 431521244 444104736 24021440 405207998 17070682 41674034 315497206 471710103 535662025 875905540 175136157 499649464 378248957 623683728 346398477 799551696 824707142 986193529 435311635 656221905 890188845 899198701 157453450 957690088 717227333 722185359 135128832 777746246 912062847 934478077 656488794 700989401 824652541 997217818 78161886 851069606 907481343 948446448 651668404 759038697 283956673 908786797 356148819 662999316 87781112 755433605 831072060 934246456 996219238 998303687 283906269 824661336 901919280 999746410 309968202 486133054 742343727 815290136 582324193 777027857 25091307 553438385 823169689 855061468 395019077 893837784 903249871 973127375 566722482 756554826 312411309 997836577 904990434 905489365 993812579 999033057 325893274 994971320 301627984 593930515 679131391 692431816 424313890 792257281 72929473 980417961 752199829 761510022 127678740 192778329 710121470 802908535 891558856 905562241 607247439 871912651 651217098 863644984 200159197 750438400 733012784 822655240 348556790 659566328 776195800 881419578 108851306 616740860 501438785 581597093 996922694 997270790 742972319 828542628 746690441 824685145 162394984 481242442 389424840 458966149 61947595 764315084 651691324 857730805 18092536 949893579 467050562 509089768 798232800 925076245 429651853 807107769 335932512 550837478 260426430 875482969 882760323 920032399 610527499 799715276 558384121 620215116 799682368 839015220 468598526 524735722 174920008 401525893 561017463 661285430 875510418 967289754 18173290 373650407 769958807 869367018 608030228 689555027 654086948 930840055 929866449 956741923 20331442 867446451 460804336 775123357 452633011 649177693 897432894 970436039 174470057 572908767 78302028 316817654 430616262 827019763 607432989 882764099 558269817 750141154 817033249 881105212 403861809 584987818 33171631 458347101 709842137 949555897 188359715 601484620 972428821 988193930 730910981 796367320 975029954 992497423 135978248 784818381 777690197 832902397 916866907 935043358 205699484 815371280 933196603 996134088 46791317 672152337 878775508 995374537 191995695 306415151 370727472 448536995 2080859 973187448 824413591 910137535 323862104 739351993 753542138 913284408 574446808 777556554 340773052 707005951 8600996 560335703 761451668 871587413 242184613 285281584 540324928 855404422 950708733 968508004 737207689 968897543 642528300 866221859 834699489 911954169 138877776 859734967 251872364 949999543 793116680 983614056 86300371 482293554 278940396 330595934 957342445 995341954 760617785 762457925 382451066 487781158 313401247 480479145 935369438 986781869 665428985 910514977 396944662 977727255 338633966 607189167 737390213 870671888 608514063 921620084 748294631 965623411 234557666 988977672 346382532 446005640 42151305 200516756 899553045 995158633 904074771 987652564 47431726 990206055 727309076 943561693 360120233 511144589 423655512 941350676 885823932 991202502 301947868 645757407 251236510 480650464 610888881 701797386 650898273 722219136 180718092 267799130 648191369 942071733 270044054 807531346 383984667 921273316 257409008 868455892 231742451 963179708 185659637 885366673 567745518 832100381 238258704 922905208 764150006 766674709 557861841 829199620 691683091 910198562 931095304 952703802 387759491 963062702 755165860 850050751 205383624 282579562 620793065 660615371 535477470 811357091 981122730 991894299 931192421 996409849 717648651 733196854 480474783 741846639 388470844 978534649 956422565 965752990 343636353 446932123 58797549 649356018 867259723 976746394 534210500 749637575 391008509 705854370 558543813 989126190 65237636 478325981 878440238 899101930 601522696 746029758 548620482 562195253 842474400 963799619 375565338 620317121 139628343 955771767 966310698 968404284 101656919 467599730 825953716 953201574 230528006 295722275 330587805 518307866 417866507 829824915 832590660 954523646 793716062 858339925 250976881 671396073 767830229 895911654 110268029 703535122 673415749 985297738 713851604 998876186 492011913 995707350 83400603 903048818 741296714 774830388 185409641 246093506 488855610 589956088 118681975 444199043 804618885 978865527 871674642 943523718 546584697 765151433 947426347 980934838 703389197 795587148 991219785 994833828 756680949 933340808 837873177 882668692 591533122 664876846 504657955 928545480 428555593 674748508 587656232 611355586 623726132 815112739 920792091 982348026 195505032 317353457 194954495 330418437 87862156 163159212 988258663 993355549 357367044 709778986 727757924 909644886 447538919 992603174 32819467 944598295 859520138 990089670 922549276 981257233 690869400 826150829 214886655 916166554 961355537 961681892 355225089 759835135 208798381 563220901 976412339 984106753 441044085 557083218 344002604 387792821 743837246 791440392 234010143 933112416 392703818 430566900 94803186 781864364 430864656 745582796 549809427 690700934 51786004 785945872 197926992 762768183 814087182 961716998 766398120 883086033 909406401 974599487 214998621 899506164 631289481 659241847 928587560 979209372 628988579 732621012 405051099 706308056 279282735 315368859 85362167 412513280 643736478 869441007 896433080 968419231 826593549 907921221 506574069 812436556 377690370 637544808 580978671 767738804 544196215 559627062 239438024 942106645 422152141 951295590 168935757 651947051 414131750 991044657 165386177 333554116 194199228 670760191 865820805 867164317 670901510 820829028 980346592 995646133 235606643 265126287 764427108 827095844 410182651 614923985 655005427 666551292 52977733 358015233 469150151 591588419 240075167 448247080 788227774 989465584 491502324 803770668 265230829 678655573 546978445 607402492 195844532 415813425 780812752 888799428 572743187 783086198 603502153 969800735 944806211 951018393 762236643 780377337 593554155 976277678 328002459 389443185 459016209 690417189 16995460 236970875 137624050 395094564 565375149 836683716 926861531 967091316 191000310 369071958 720383872 737716721 79712651 431388405 163445501 988513754 842149952 863889833 623169451 897806893 437710224 580841173 800943453 840012870 813836509 993967843 958355591 965663650 572530264 625983711 111595660 728559710 43377786 350481553 408481384 994299561 95733697 295848407 980806381 992052774 150720479 700969821 899830607 915624719 820131045 967318392 927365396 929666808 161014604 966466798 499231184 530739147 115192498 144618550 515451649 561052528 99764454 425202276 681751910 716801801 603850423 966966009 176274532 585776980 274557540 291475246 371360743 896215929 668117330 779349271 963440063 988471551 747930951 804105913 383079193 751304315 37969621 420612117 766275853 861056108 118309142 222259342 801034108 843217342 99565566 327932170 867226646 973138864 449725076 565469723 977284474 990032324 59044 733557977 999134007 999137501 737638263 831761813 32959859 892187815 525555544 662151908 797034439 949353453 972420408 994488165 143460327 161018168 526396337 783749142 446509413 672422691 216352001 584852929 809633222 921047237 12289342 37297588 898618084 966613726 394011409 489147925 812242191 961436627 466111525 662641072 600063573 730631232 723836862 906129651 882715207 888093972 722358779 790711548 631089803 754845069 973359884 976110886 742891120 768911050 80424274 463325704 636519365 655601648 16098832 807757444 263169816 529517652 91790139 839038510 846617033 990910105 166865767 751332771 743042597 933184280 671863737 909838751 218008699 756175829 733804455 864507266 636206415 864315046 166386368 510835940 962909548 978583979 454721188 651800398 792691609 871228672 711510337 755596090 575011184 703890867 334265994 489910127 600225431 758768217 722170742 919074417 413127891 457593827 45339342 931247735 193970515 956909068 867725076 927106411 803983773 987455068 836892528 911542188 377387031 702116497 670507071 749002114 902307872 992645195 381005210 532730975 659031906 828516834 447837634 940779119 57853081 279288864 389933897 403500336 614972032 798589247 871176854 960779020 433710136 667010636 583114636 779627234 481409003 593007063 963223965 986665944 117342433 983818763 767950748 941196356 445152140 578758407 309682322 606653452 547159322 998887006 648969381 682736159 438690359 734043703 260513483 863013608 423936326 846090456 169938690 781608761 482562860 848578180 244112658 623814259 129957427 985225431 71549093 864115914 452952295 944581089 845453918 949481150 168418602 759419621 74674152 388459689 549272379 946721166 163565284 349099732 131341944 256493837 262296666 390814236 990805914 998799786 488958695 495429038 972136554 980699616 143903729 403344759 52050148 501727840 771344638 816161583 667038571 939731232 775822125 837396609 553303511 788389200 921086133 930144595 908782409 925159183 305190924 369846605 533025513 852481070 353106655 866362589 105915890 546225241 762378330 935568336 372198483 867754058 5809061 679592220 194925395 794790210 245959482 985060056 567423374 874208965 556813648 587479304 984579058 985636190 397324684 612735257 926732965 951415146 816215749 920052499 313538024 976795539 546455520 616420440 404619417 628188760 955242840 997728212 10058073 424669433 359378159 929817950 250707483 435947042 607080500 971014872 369748819 976894949 263129038 631344075 610219997 776469887 99054652 515388770 347965846 576308602 799497061 895808925 124107046 306717513 210171328 805688365 434072325 727193186 537024649 724524250 599505332 660600750 116620289 745939625 663528643 817311577 642269112 678824458 309947731 833005845 971255747 973191950 956952159 976839785 315011559 581288601 360694212 844684868 366340517 637666135 787706589 840489779 629724639 877184342 395221037 691297657 716728192 910555426 768703616 874371549 380599630 619047441 173659560 292095596 459330128 891900823 375963239 604865096 904815427 971715371 803316859 857750514 328900062 585763524 452391185 708206834 877125209 918131391 175894332 537943660 768526640 902957656 279607187 392645818 582491290 799819686 128159048 784953899 414788484 808836532 852611898 908332256 552341926 890505928 253125259 495507557 773477785 792202572 526042846 809619840 840273551 999635416 658828409 732953998 88199531 912218716 461987567 489967433 586516812 842280935 125990943 938212313 427940384 607633032 584928203 744944080 670142921 933863538 628714620 822559671 213147886 970188680 975337015 991982586 99556876 797991375 462023707 824035167 531364329 590796705 47826007 700676333 408058987 865351153 564493331 642089144 112822194 543259987 548563726 687633559 347578906 791271861 15950295 509229962 325657916 822485896 612475900 764891025 914063561 958526123 719762268 802502164 620710070 941233857 661171211 973472192 952258810 992532140 996061372 997520790 973403902 974030908 118753286 615736906 841171511 908340848 229904300 259222015 132966539 184624042 763194726 797878668 916147368 941218526 122735413 487196534 10937827 314703638 872033206 989038878 621167810 719720782 219862242 970112136 149232068 708261141 210287593 578471919 372447778 685364107 168071917 906892225 284745306 665978802 262191711 789992721 752205482 835463639 70976911 831204113 499283474 970192129 343810934 417006195 171947168 715396606 238960274 957315127 300654538 739440657 649062037 825712950 305275926 851518364 475461507 552558505 470855026 898500003 494872145 833535969 791876836 990599287 498744519 504725332 458594049 641590305 177190697 449183332 140499844 583673122 644333396 847801645 643283993 965974221 262474987 731981869 587805424 828378617 719887279 885348865 832205375 971595503 453742957 970802609 863115291 996391461 456301058 727623618 536380456 925518689 177858959 555902283 6529539 919096696 855228630 886849028 425752238 646935164 521737745 529247641 986819531 992843234 872370423 982263104 810089115 874735223 693851754 729809947 422500646 642596712 649986035 991211502 221511045 540432157 963654450 966877932 776394082 849649671 149131642 480539410 178981468 360977070 847330806 969692093 765536086 978582012 63414290 108283860 537250403 769299904 456651419 550347575 474216516 539405625 423221253 924278374 800146423 992909825 374137464 609735827 749811665 795475005 125416511 203259328 23430356 914040766 695130308 877579666 888222595 974868920 495236192 878523460 875306270 922811746 416598091 745607091 364353901 466313459 210436204 301383253 895999558 949116256 863597002 866324681 827779105 943223181 129826837 454370543 145656401 351679112 747371751 879357152 501545944 778072614 420946771 652045107 654446073 932220662 943133874 997311572 522425464 886720467 176972513 367229872 291711610 505910123 55267389 352920583 882600195 970677291 976612730 996448141 282816188 316020460 486182359 802274340 808073499 920893915 277457408 731283358 793462551 943522273 544537588 675653032 410204345 656282362 397658449 545180770 265400001 703379404 27261068 256695991 406599768 578276474 683753399 876691355 30296169 219564478 250261606 718368452 445747785 989699217 700656203 727126183 252359274 810987528 680690022 893919596 523818090 686868925 345667566 896649472 792438017 892043791 852333335 855917355 5805740 544065300 223158318 894508199 955814295 991697026 680611010 943005810 152046467 940934933 711385348 844355612 642304333 684546282 731211162 911457932 709806475 902783183 829896937 910790518 854269662 933803274 933930327 936885202 523162647 790855287 766048400 933973009 524880272 801949552 650228658 872625533 324786845 854001857 541628036 710269296 387148783 685705608 410206274 419838022 284712949 753483906 298431162 755502561 762054102 764462620 809714851 884219754 709177442 879642945 610177456 869917137 491444148 653312075 697002428 815165190 338131041 758562728 138651798 952177702 270855070 652855814 414874114 590929736 400566980 830876298 108156496 560786420 240281962 895210979 832269625 837657853 301608302 577232078 250585587 571326762 736362938 838667997 170516107 803957639 420588722 892914581 787467237 806321922 205038721 643735488 52904571 229972041 652447384 908025114 944773952 951708236 239192149 625180722 511954964 927466549 203285750 687729891 287965612 467281694 560389919 572114069 672617030 722523126 976791131 981975958 931430391 954176867 164533015 431934835 50682525 449503030 702750456 768205612 66087556 294437544 765737421 976458173 833680963 929897956 957532080 996951809 990136913 990840988 135582134 534192189 131785390 422685474 752481677 836298111 132538691 995952293 557170678 756419024 537322263 963892782 576790217 842098360 942264404 947220323 519756331 682047450 973052410 997887733 739439306 812136271 265409807 742895983 441080626 740319021 483334507 868124998 220065952 342780740 760928317 992571105 666307537 689519420 652202528 993285653 985035282 991477126 846392511 897198543 508500369 524996455 125696306 688902098 337979486 456550884 259405726 937784723 492418681 913269180 693399740 778572963 337938717 906914573 127115373 667164429 702912054 896907586 223296695 621755948 753572993 918536422 811655216 978581263 439047094 665375808 261424524 753258792 850604167 853581030 378895283 620626749 750730699 808473755 316920937 450219770 457755824 612950088 102881030 785273487 332181078 713652086 542533124 905033973 125493308 174858707 835223881 958622264 225371642 326371148 428430156 890514335 122901708 506261049 545777235 710394306 679156333 910357288 386432155 614808151 624450229 950309398 418123417 678061887 863130156 868713976 535420259 914588154 706655368 896227689 839456701 906352382 893272286 977514632 222897701 878821465 264650934 850956334 480772554 559653174 879488295 957154304 845089779 851190288 152071846 292067456 351617890 491371057 952779681 967806123 123861637 231099717 189177891 310651695 318232599 770080547 300427302 708268571 118727958 565315948 517724766 573807609 237975389 444400291 64214426 860933459 455954042 851456550 55668054 450703638 493812154 944801286 316198436 591489115 387564056 888428708 687483871 931581001 545522857 739216962 53328957 277554517 444536595 529510615 501702404 706236550 322811840 511115689 2766461 244732752 688335388 927421526 718665824 840880284 576155711 879999764 551708048 812933776 636297607 980512296 429660448 529779345 372836007 418762107 347812032 554025539 545773075 679381373 570701547 679435244 918034164 994711374 339492903 643427724 237427979 715722900 75285916 426652756 332127609 703845779 552593255 747405340 439201558 810100707 18705217 223768413 576871325 996862890 43098091 918751097 391251392 539082078 248044394 829024177 317180309 454766641 576681956 658624935 371417164 688461777 908781168 999774293 260850071 711516001 832412797 984862444 132388231 356016380 614153595 928564263 246504653 284816975 33698741 203618083 394263139 927115426 494516350 941679380 677069295 847105555 830576073 863309070 57012134 225917777 380777198 554134983 860979424 919982966 972729296 995428093 345563801 782760482 551306569 988718322 687708355 918455645 886064453 887051566 526644996 602696409 736084605 780206267 528436101 969289994 977659707 981516066 959488665 999413631 770554468 866939114 68226194 135595965 70797817 656407646 147222562 773229774 656541436 975259583 362640205 649951158 433524164 959698863 9022849 656575341 945607 554502719 175579376 535651496 626442812 933978865 259103491 466137905 248901733 643679506 402429052 727551167 355852573 609875936 605393240 742222193 736241269 987402758 588609786 758757863 310261899 451305729 123014098 807423754 858687232 982564417 985188430 996788948 937773851 941068701 628101907 947766664 807439865 844047628 830757505 956945275 460001801 881920966 687650583 751722037 164794083 434567009 930908008 960883871 486174728 584686059 978823491 992962047 198403632 508728784 302796585 752902748 44715851 782890734 859438502 868211425 19836813 583252808 274924363 311676492 859421659 925364245 487270884 727584878 447853658 690609223 191278981 374926805 808646338 842127834 428312781 820204606 122221688 595281433 547325973 674643491 340064855 570757014 38700767 660486958 371248359 386573342 555513878 634701274 527094720 710089585 421071295 950696604 613541718 996447186 132077357 643903855 32431118 272323876 608923646 786548599 979321727 985769339 261222316 497889385 400367908 682621022 712984215 715990824 811665691 838564663 802844361 933914418 693629299 855430720 281570170 640318836 946449882 992315232 948580332 982154488 225315979 494362300 39982932 628401801 649750046 926447327 271971377 361982108 56142108 515374071 655025552 688238788 435162781 849426501 636712459 947229105 952359852 969204315 838929333 940231037 970797569 994979724 196110907 761851851 444016696 453737467 504013471 738385815 612925801 917154008 206612405 630273853 233283595 614053065 834386761 964738928 48952149 889721832 240719273 903772152 876837131 957276325 260641917 922696279 212864583 767775874 65322 177756985 343901412 526667614 563774550 682500790 98330041 836662775 411335388 520145457 477115770 643351530 629041734 994407746 941369932 993498780 504779175 574636884 793809593 875406652 37073262 921988069 937833886 960968938 659232255 875424968 529595830 692735291 736242142 881017824 264232314 323290716 838535773 924827865 65669622 665770122 314085564 804397992 360148689 768216568 487683454 507175681 210274108 530204323 308511755 499113019 407147521 511220697 983850793 989457849 733620628 892042633 578918272 964205484 391161385 589127415 560659802 966942295 659109426 999226963 764933913 968587285 660802525 991780578 675802299 705745595 738145063 950929427 644310019 766036046 625746363 936441538 928681028 953912342 578443184 762465034 808430900 950699599 681779464 918693748 505255298 679452329 751582247 862197194 334420418 878160561 62211723 833148120 417166462 505213312 514268672 553746436 496243875 816786344 533451055 658371231 668757799 960795071 777936095 871479936 828193816 891231722 626098635 779893873 933990767 997167043 894240711 937068606 52850853 883077942 927005604 960308383 547380966 822842505 651214941 758724976 905118154 991058264 40532938 498641388 799049508 869940340 299099515 922515175 984056738 995771388 508490940 790187100 929210147 938801020 325688806 548991572 861305196 997948015 250353288 287740108 924840937 942380011 229066189 475308482 201667267 912860352 487288860 603391724 829962976 834199474 754262423 993861428 996960532 997981923 176254100 707140997 478417396 573015554 731374531 851099652 152945010 753879758 861668932 950433050 761934766 865692354 394827910 404902643 50315521 149259567 883163048 951766204 276758060 807097139 249642481 619327040 434057530 901535169 548543269 977670316 121848844 990598402 637489880 710736336 880698798 891899973 464014160 478553791 98600523 156101918 988156084 992647788 227596862 997736092 407423644 588334204 458300956 677564338 294615573 358024144 372442238 735974203 370544175 723470454 34295297 412985250 987061567 995225101 757546759 994550282 553226339 904492221 305932126 631406445 272378428 525436430 706676617 814118605 704734431 723069647 861603713 881841594 948640137 969521743 755547409 935334833 852976403 946351758 950002389 952019009 69747902 821539782 490682705 678933435 440982795 573747582 42191569 925920474 137663081 827966697 100446492 752890049 939483467 979347456 378050947 603148524 981490514 991170414 52589215 726862329 227009746 445224893 417820932 590785709 707644161 827048325 208330561 909091916 699541215 734043247 520289248 808393112 868788865 929414069 479412564 514888889 752983580 878438826 258121852 610316062 270726874 897095892 580437047 975367823 423446333 570177196 69292312 481230629 352518598 659432004 312996598 983451849 978960024 994545783 729484361 899519540 178716915 229599642 251133209 746825284 673648003 766456230 126092799 331204995 657552266 819256163 708770547 933276232 126625856 190345414 476215561 730199700 961251861 995112360 774556050 903083635 391706050 642900376 186180335 901674281 480974949 593677925 365046962 529029164 939658039 953799048 11610583 929362742 278175503 923440703 696633237 889216580 185326498 722417912 659525943 746968472 648878270 733049498 553139245 657054319 932434713 963641762 231769822 901611400 608743756 740543055 945932804 991776860 408763232 942182653 562136764 736006859 225459631 366113044 3230547 910434575 563622971 879068157 771922875 845756254 454803296 788533048 80682037 126574132 537433734 879154695 608642102 842216767 13095588 119588504 68654625 483443634 853920027 907272820 721209895 752980258 640603076 803965682 731068121 765765761 752286390 933399304 889914940 891902612 661171088 787028700 354735163 692152312 951354567 982406758 161082331 484420097 843048337 860671059 549107255 693143185 373142369 991325853 617717349 936518771 775479146 919656816 58034349 180921452 244550280 699838797 398470567 591638793 582592298 745594547 672689616 808583441 731268333 952654660 960094398 994011816 145378672 824094721 208672323 341694488 448810472 835535738 703441901 921588985 901034608 905518865 845193621 893971018 309747079 868051780 160536072 652444092 962584087 986606338 341227285 740905056 450037727 965758969 576829602 839014964 535473269 602816400 296779674 608870340 853461557 919586863 649486354 962795474 566728998 981381469 111749445 123557200 94904983 324347565 57291016 955308404 645366485 844492091 301302429 871080124 413289707 531487733 133412730 755811187 843542702 942817373 35945690 859812279 731315832 792880909 399898709 581120583 651788557 799712310 79842453 625833276 570996153 664783322 800119750 861930048 312827856 848826735 67167516 526588479 381456399 865583980 927073201 961199103 939018552 964860095 151613700 877496458 31264446 506041331 497995174 820663172 561289353 680716712 602148272 721659154 929708526 962585647 858736710 921360086 731016871 948316782 631579166 745580716 350183466 936142945 677232041 915548882 144809829 251290056 385456927 675466374 399729588 774726691 961143373 986710860 700848877 806679186 464234889 954006227 41832444 581950179 148860844 882381284 727642473 916547045 456486243 505277583 946014435 947178436 558430326 909219116 459969536 880386057 21873886 300535164 70575553 185555326 192696628 880219558 894436957 927375005 157409017 696677622 809645519 949695234 810785955 851636475 456789836 716181534 716874852 958054629 176865806 720464078 681441067 775004517 454788902 927514735 658746052 798946847 623253881 646995760 641859778 880805174 105524832 766450537 876070542 939762390 554875151 755178421 968990983 986441601 796587070 812086660 603791382 866196046 276763694 619364044 937767930 947984972 992657296 997263717 612230651 765428914 864551374 957010677 347096968 596490202 849824766 856731282 907783842 949045895 88442532 577509631 551090637 644860344 733121199 773034409 410992500 576959093 472166840 652907079 628076230 946292963 738407617 769442564 179648529 689604458 574300686 863639925 272628867 349633110 730932720 867316683 327166235 761276148 82420460 717216047 827453636 872972234 301487036 459555465 420771884 863163337 186127702 930249537 904837624 946667770 469206763 812974425 25280506 467188079 311331606 646269180 391997372 878925417 552071373 827503962 310374413 676736037 203452400 885682102 582971747 670862520 104369069 328024848 233701333 305942943 688068993 862419478 769642944 892676233 768955592 805909369 539893865 614697333 331245787 950236130 301883254 610071757 889223950 962197385 243207556 406483026 867578820 882876656 382360506 508331403 561435320 844818457 424175854 927969406 997614312 998265244 606673808 771050980 445267592 447207941 936026613 978855451 254998234 302789369 132701405 534949316 913370192 973040573 543795682 882906012 432039905 988602311 912588267 947612184 392525488 884213802 73046201 205273117 726975960 828303850 171820224 984247720 555725575 819346580 781180521 825145884 700723027 953318110 592281546 897272417 708446102 951116550 271626317 409230994 637738047 893716306 543339055 633562992 681107896 976785080 276661089 544774973 677828316 951032642 610137452 717841994 400826380 689883227 529441168 570480550 660675124 872233246 196419349 819772147 985861438 994251029 483368938 629656818 93587662 473098952 322641970 464540661 468687309 630622071 276113985 908740187 554212541 864990811 29649475 772790659 897771606 965686788 650337652 695826526 777558801 797014900 788315799 848621574 800908858 938070099 831606894 909709817 971418644 976384998 30956850 525390556 11154887 973111939 604679310 879450754 600340418 771749804 735137568 748112061 374899338 609950599 46610668 709968032 380886451 716469710 731716975 888981457 485576375 610330150 925358435 978235816 993524652 995304138 33304782 687771860 552836396 568451245 435789555 584326357 68756413 87116066 175792528 779256089 819062120 915221310 418393976 586743983 835326386 965755177 940494242 961820825 903653466 989379674 718836226 800065845 294911029 508037572 532768550 746221839 791184172 994339690 650073349 937672074 452733497 536147328 321622354 942839911 564400979 765944565 247493752 507373530 778811848 787693216 781206350 999485184 234178808 806310931 467801453 506477112 527155073 883039085 123502480 388260677 221543530 411908078 726668878 781241485 845657691 992383628 32969265 737885643 961249066 996480631 613276332 741783847 253363826 979302031 188532256 825620058 46495827 731832943 878460032 963522134 500977926 733030605 696747702 976627257 918110504 939404176 670244173 869690765 269776029 831087514 164844641 590201727 516494897 895496808 512435354 920103030 821695811 986542543 2282048 245115424 521518570 636770645 899791083 935803311 439447750 701825888 295321708 301554233 18995216 772751509 176110608 488432496 323407007 684146117 996565068 998949406 254952283 557755661 67368732 146627185 929459079 976843293 202692777 599301635 321772712 529624612 455470086 855172776 268907972 809127508 244131635 891227907 108752799 696675498 20945553 633314654 788733539 824176515 472225417 651854814 277553326 690481462 526314403 870849071 367346802 775204621 707638806 966389721 882011525 891650916 22570169 421122957 574955711 930084335 525121574 591322631 576620717 961336438 804730036 993401050 700920964 825840891 802945055 894651882 111917903 473333282 334573276 958129457 725016744 991075865 309874857 829409907 631760695 818198858 895470791 971227279 220885350 285489145 808134030 921635982 672919359 985708016 287295685 751002402 561569839 628234850 518428091 939941252 43987375 46767210 796251958 947411039 400087761 483134116 997477774 998481927 953196805 956422142 514684094 796088412 886539326 915740293 558728728 670247408 368425421 861490469 184612312 503107072 946841001 968117022 875190734 995617898 766698568 971208749 336648959 356159683 441315001 970215529 817806496 820275854 544016219 591310463 823071380 932759941 19144039 665866977 508611163 913568579 253675270 543258431 184230509 241842148 66579302 192045655 665985706 757590506 963908179 976928324 750967735 814885958 847713402 888768005 541084046 840562391 183297299 960284194 537062500 944989683 367863221 557379574 162212882 364876670 553498385 656630553 526042073 722705408 276651260 904705106 681988830 861202929 472759016 844806465 481256413 762537645 289137167 715214880 646459773 954413903 724372452 753324212 849618587 887701446 869769577 905487349 387108516 874342307 734812252 748479882 741831940 865319846 342286480 539362349 625646342 825200962 371993824 463689793 850079941 973424448 963349566 977194374 30716828 718602409 114688386 884626383 302062799 969727986 755129560 981984792 407038042 592660240 684689583 874717933 853555468 911783662 74819252 294281248 552042370 917285240 960954115 987790120 821739498 973442120 423849309 648398538 202410596 934179274 209620431 968432990 561595365 654056057 329657508 474766380 207283367 209542261 238670087 583177366 514057843 799597544 299865614 410524425 867275798 976209000 978470348 995010678 931372471 951621161 981591298 990284547 378605154 659627788 347269092 747656175 114629745 574429863 700044127 978486063 555869600 973805727 811552349 954849944 258579679 591670483 726267393 769602193 883388505 996965489 321188091 747156298 939873477 998459767 513836550 809076161 249212773 322860625 63724941 223599119 704038839 737892346 208188168 436984945 440798294 975257453 982522202 984750057 769095635 899878022 490621742 650191625 618893094 762733818 328695514 527441009 686732670 755742981 527487569 610135120 969391476 972822238 900860931 978406896 40009576 655146819 793326146 995268292 26928583 405264392 369148360 462501785 238030426 839974612 907057762 998074693 79981083 685975226 271417 364873110 956516122 992969372 294074772 535597737 53749295 130762646 117588708 308873667 799670882 992444537 168615634 734508458 471619098 719743462 140104878 160020973 718890604 924183463 193810262 236508353 149160836 514583904 916707826 999895374 239749316 845509376 518100830 812885259 616510958 711466125 567950730 594323482 134835358 160667115 279486151 810138677 353752669 387138808 344112945 389712891 169779193 205738980 292233443 886913266 507144581 756986351 733547740 944149766 453095517 511859564 554378952 609637488 117497665 750563960 748576878 885082011 719207292 806192542 176217492 533617669 249832497 753557468 345396649 413659321 615763729 948480246 798761725 800481834 505298506 784800809 301588549 642727778 675708199 729637466 90921547 757489471 244823706 878860249 765903891 862125984 25432729 730830319 944511701 995010248 751613105 943203745 374647902 578891275 431254109 701832718 756768884 792293119 447153383 745696496 565083504 685785424 533794198 948972803 644693044 845664383 889249749 994845470 257603228 976862500 153643522 488809203 89872166 362630939 935908869 989480077 896890415 989845034 695467014 984132420 662768168 904851744 924202462 967293823 983345191 997660672 502558154 873858987 619829538 932688139 230938923 294770496 944904769 954432816 560066295 902939507 89723747 225330296 644588205 910273096 887420235 894376497 707053157 819025473 280590058 594501514 774602027 838774962 423449000 996875336 526889890 560331290 704263902 951621004 62635085 151734977 528804264 984093804 155772914 320691227 709975890 767613984 788795696 890970803 256036737 771617406 690451478 885498267 987810385 997085485 889273380 900691822 610634125 696589748 21124868 977818921 266525128 714360212 723149793 771957396 869250559 893596801 539936118 964696086 273748343 976247732 345765269 839245664 355198556 948898265 313972355 481207626 739428471 920790589 191164585 503939733 709204989 969408469 761036396 935378978 136834082 239759358 946306803 952978207 909275947 976076479 129726104 743078381 988479197 997846435 71239504 98659866 639430501 945051102 517326883 743591540 336160688 847599484 801178719 852698395 235051876 790717197 557702376 605394193 651595974 988204227 547043481 730022407 674185239 776264841 647653706 918976804 92829058 324151550 751138667 846928924 159582118 647309258 263063439 560847911 685243454 873446128 95659057 154812952 423786026 475166252 856988181 891556639 311506625 693023060 594307301 899111596 497617649 926703124 283762305 820039130 290755075 998456002 617857972 767784745 924615120 973602066 931846260 953562095 757363878 827022256 441721820 528896663 910851907 922628189 222589863 693833950 220545273 387369496 281367671 959484621 423884312 802952679 738136323 795009538 658209050 760977740 725469642 880057592 213353236 226920765 48760087 142900545 212898862 618504141 390288122 573000857 835613274 887685538 394123637 636497927 808787750 845271782 819457064 877084767 533111300 623249629 190694826 415940231 4600682 840044948 467902710 497024922 939408835 965499706 292372377 438618059 515709419 558157582 29483583 115735650 722109111 786960965 391661922 549026311 95098768 641614453 646252965 989017476 812075168 923202036 728023753 776129006 402059250 500170482 418210129 784880215 478816885 643656761 828612323 847182539 213622487 861454821 337421007 432170478 438937618 988230973 362950192 951245376 593519289 718237680 182402685 349247114 251974279 516815814 279010050 558858335 823879543 893253901 687220081 886846344 62182833 524881442 254234530 895647192 888564950 937084125 832441847 844146861 484521778 783167470 16814564 992188881 233739185 979590698 678715423 793708584 709624517 757307090 571669112 878970911 754469186 829263277 806552 574851244 824971521 865617110 674587952 894338803 544912514 904799335 157805627 940408075 64768999 584172323 750648710 988559167 202825727 408699883 854199902 932864594 859426435 918643559 302131943 371250481 860112245 950564304 286018012 523398127 102774348 573222763 530936567 696221428 18004385 931721899 324994618 571418659 697867015 865536216 370354963 480818279 596904671 723776614 727349043 908986292 236082499 922171794 647636341 690508471 957807133 998758906 227350604 604158279 525112157 893031605 439135354 598986996 193809855 903045719 666851533 833300398 901312469 902438588 254083509 401491705 513840652 561910688 432488973 772222789 325120149 931332009 727317601 940744655 35705335 869856981 541939350 869186039 400808384 580072737 210370470 408780545 251516170 786416592 437173325 501098635 743828385 931488883 830490314 912842762 765434545 795533868 675187036 978265539 29014078 160862396 764227480 948337122 573179600 618774083 461896430 943227500 675749353 926520464 141673956 428689851 218953740 602959577 693371414 728331091 659105199 909615820 902779800 977110821 142478129 772445605 92183134 679039305 320993842 740044561 131931897 705008769 471571765 926890479 243285115 476900965 994464097 998400058 25398224 27943527 176484316 495828220 136036699 269574890 738811276 906525086 306262368 715107109 93215278 550125132 536674751 848654327 805990457 943227871 228369678 312297184 141233737 237509238 173763621 955713917 555209014 735983839 853093640 894216097 652897451 917118418 845478666 959091657 452272677 533938198 134099655 393305301 511379914 751787079 413899358 740811690 876189774 911571268 827837839 847282903 385743410 798832094 529238265 758703391 432239529 554279576 252091656 374055250 244407514 364762887 673014029 959887857 377031531 949886900 625034552 647589595 382082788 545634569 217696749 546291426 368788688 885972263 857439735 899234568 876591055 998853701 422697076 425052715 248711342 590607167 258666411 908388345 880776564 998975574 62900346 994090302 842195271 925166428 995098472 995627200 473643478 862373463 973349248 975688448 789973881 940179576 770448381 885076654 385720506 845739186 711344795 972192524 376344146 921217233 366489452 475656659 62686733 901103669 807879007 856406267 20039061 260280547 641634355 861994407 826027192 831932146 1094583 244152739 736532088 804146543 840925204 858717851 362983741 796301678 877381042 990727211 810290544 878926498 448879933 889464951 802430451 929375075 936751764 985604306 542529557 857464957 368318951 696036264 807495219 903722162 398272822 981393498 449138019 852591956 938267126 984682642 413069842 718520274 280628085 415998424 902842204 927108505 435109944 461898249 405980141 817088792 440233780 981226988 570294156 811557408 242569888 490845252 589885174 967717177 354735228 642837737 354367314 828868059 932304186 968519083 555797179 951329561 80160854 422105839 397740948 852000330 639525509 914782228 933683877 977072065 704614912 900301678 181002890 665025058 978405967 989113218 99680370 121317868 213654533 676318096 629903730 981536328 275440498 721585576 732316651 949494459 155455384 663393362 307453575 443963192 643071801 985662171 992227105 998221156 446245974 966299677 63431094 214711872 759377117 802197809 997362298 998030219 106937980 211244103 111516386 557357181 603817398 681986676 493186309 770383282 362255833 771539372 738164880 801460778 942804267 987977574 236867871 360307994 751901135 961474401 896597092 919023066 576704308 777697740 764118187 961569725 163843154 566156829 211853208 504648600 230075623 908377268 50309695 627362219 381306125 519374806 550010583 641855790 47443034 870040377 128649816 776650361 667084712 818713440 504796910 821243243 577464119 967823579 959797291 992463996 156925928 679909992 882717512 889918815 174007580 289104692 340272822 408150153 303014684 841500200 25016311 759349483 45568535 872034992 698551862 782108048 681128633 787826374 779950241 824056448 847212808 929485476 852231406 892160734 388262881 686825341 68454347 597170455 872570165 913540909 692766642 938131853 470317615 691950589 735940543 935794686 380705883 392335247 125092935 697101815 261357140 545586278 14046040 109995431 568492071 930183031 656877464 974591850 620343447 727496662 59268909 535966119 801112962 926496460 33743548 788053273 888682663 985059951 575139737 810458616 398387790 783131793 115303972 391589382 57009445 835727327 25848810 396817292 380539864 998494128 718671266 948478287 961553312 961951313 965578672 971175984 112348517 621141626 559320061 667390457 232108107 979807802 752477128 961512764 69959904 413412240 306612373 554869598 291514390 870673622 483341545 879059348 597716398 713624267 345053013 361173343 146986725 750891843 199555146 960884343 444141846 639741688 787023221 978191366 559724540 717394958 622284832 771560708 44169341 643014955 288043070 582634893 133987669 924720777 300715634 559626526 244855519 589867321 595825634 912997745 356888092 596279650 550927776 758700353 431171260 616726591 167416113 290099926 250678790 466388545 712719552 783968053 290378931 552299724 471153907 996567533 743332892 929844505 729682015 809060425 752578858 842580519 46296485 166651095 743608250 868114048 27154448 700920753 961756633 988519468 13748368 614650345 621556703 940876675 113084125 897551069 336110464 753457798 726567272 878017259 389277785 868997018 641592968 750600315 244308173 397491285 581503029 704275917 253493409 557638841 315828439 438833398 34833011 90205672 790522062 988048621 424550228 914054843 343957488 925618519 780568865 952421382 311254798 517748708 1485040 324699781 356130290 603711876 608539134 977437442 317203049 416945707 191057320 628082826 240283474 639748403 947596737 984256092 652297952 693245616 794682076 843354952 327580490 762490485 694214963 957545361 517816071 570695104 62227034 145819264 119292894 703432945 719668916 867368070 158684699 872598093 954120629 960145858 752729237 952672836 147502647 586596245 198037418 677558959 757089134 966147836 190401787 734748712 56028691 629308372 271355381 808542042 629069439 632185546 400656860 468493749 142641168 420415982 833365981 936284737 338647077 562984312 952269381 958655283 999472265 999550113 467557121 866359713 265130113 882961707 677048795 722877333 218957920 659057485 423983465 654640831 804647553 865673295 722945134 742973728 767579882 969030990 546065245 639527500 49250794 887378811 169340901 654120780 593508742 979630406 543818293 993965131 350414151 566962363 45931737 123791632 63467012 794830745 107990278 793227102 254221744 727462770 19590465 251941933 977031129 994748110 558902754 959037129 435726961 769028339 457344796 685479747 792352250 952653865 306341875 312747952 431798391 750338563 148410689 476782335 375448091 592731560 897246768 997362096 908586412 969598886 225427873 406747724 567973880 667197801 87070869 602681032 411346089 807840468 420866865 511972524 515382003 769346919 873097728 878372539 950016574 953431078 522735354 783989653 451944646 812917097 107737138 236199499 796783701 894557301 910854916 984934512 256374974 752303523 168496718 935550067 321507876 829717883 790156680 991949450 45896621 208173717 412047798 584637817 8503153 243510143 514976077 790724158 805053592 984001460 390187630 633500690 725997160 794699094 391502073 393084449 387876917 420658128 855854262 964481585 230703533 730226149 133129368 314801714 796449582 951184023 164701310 644981193 463381048 704924197 751504262 919550685 784670610 989358510 45555479 877311503 938557204 950279269 30888258 785362411 779949471 810647827 131741784 604248022 701338902 761526507 814943757 839825198 771581441 857154054 72064659 714100067 575135153 939036724 371524153 994972654 430195096 706036094 854693352 917391130 157524944 562770931 129442012 447076985 105701634 881223309 695504735 858603388 223036651 435513610 399982370 646159048 511033625 908032742 951163771 969282345 252716444 916477748 504308673 724357588 397890094 468059355 834953794 880584886 22901460 170052876 251343880 711992462 926538528 960848807 754807380 950518437 977104911 984981858 571156083 819100669 298157579 497485407 868223741 945917037 169496064 230046324 71650659 780068560 406807834 726732715 783141473 792528499 386025874 957318827 98886799 111249846 193677618 853321963 553606621 828502295 677848820 844857763 481723009 544368431 448856374 759202636 245680238 712890205 682261471 729291036 282839499 793330959 725533479 727404248 35578428 986493427 679680545 935675852 475042113 954416646 328561191 816122715 797432135 926031378 603240097 979931453 443846832 894227063 986395113 989835820 498727872 666362109 77982756 829797600 374885728 864119623 426320741 859235668 498842094 906944587 963855396 974906960 805276949 908235096 687883780 779063543 617296608 964056614 500317925 640180950 263690212 978906183 26571931 310274389 28783437 258584920 909503686 968698917 390865548 784671079 5527239 605184601 210757108 252484418 653055587 694174548 619329075 906281427 778714243 915337861 388374062 468596746 452561209 488366348 697873668 755536596 744190944 982757602 173523960 777415554 681535733 844976514 50896816 922711197 692481328 796776132 37178011 491755238 369299324 393635777 271508018 988753901 245602071 577500383 92818860 122010831 537082347 762988800 758494626 809803825 175830499 710980365 666372839 854417448 686746638 912176536 655214659 839988525 482830304 614538008 943941623 981959892 621832012 964240068 874853986 968793124 912337323 986233344 115290617 571390222 946751962 991961104 854180572 893742045 31088780 736253661 340039063 886035893 394439717 773839401 793167487 913313396 72771863 514794405 581651661 909128388 180386914 352280152 828363020 852794696 124140865 291493360 354193075 968018934 438256094 884879998 840406473 919603739 924763714 993337488 222271081 333442432 968117230 977894775 929404211 931799007 744507023 864634635 472205854 945124063 34102462 619317125 646883432 755714115 580842852 585827144 225335854 745126672 667359185 880476190 163603039 449838809 687304322 823713667 677506708 752548570 616078946 797977992 491486383 848214059 345776855 857487347 143600554 471280827 258855217 542729159 633295666 937062230 72319368 705038860 307464502 650755803 583890634 643075563 32671071 626842713 934964478 980892419 385913781 932388890 43570847 117408262 46286959 931576953 399394457 494105929 321018164 482858792 818762253 943838288 786593927 827217940 265214150 385618155 676398810 990646004 4735588 491495097 112112963 121268547 404259584 772575890 542688974 871533788 353750198 710629341 357883973 593430430 203645162 607606773 953893618 977094986 2082186 101484731 936512516 967697226 74802377 592858102 942114395 945597978 395840114 895255627 748054345 898702102 735170171 817373392 912308500 930699901 30171334 239716715 887472637 967022132 308682842 978071066 78156287 169399762 958308415 996907580 331621114 660364796 890699759 905064718 801178995 845174767 174464266 566513027 880887194 945837587 505528569 833798398 931405224 992597410 366110428 394852841 74568679 430443402 443982504 640783156 818115335 930656316 161155524 539580307 504004518 989711045 925214928 933639910 290633901 490232651 293738771 333706311 807910592 937818251 673007013 800331313 486063237 816922181 336942384 350543943 64603659 852212355 224171147 426025874 35742506 827553624 44080002 306956038 883584483 952406618 865421812 956876940 379295225 936175969 30617551 143049987 246437209 868174607 827717717 945518372 141145996 848868020 352369168 466626234 456475763 616731747 406052307 632509631 2300927 958006450 861471036 990958494 702982582 823006498 334737755 769115027 924129490 998635894 250485825 579855077 974288525 975407276 914461321 919309208 851755957 984910691 35930814 125357411 405788701 714744011 399477261 727803434 780786287 967395500 610112260 830355340 279233288 303141042 558919150 922252936 319520299 609435649 800379960 850312650 427984166 731427072 596167026 613679686 205895421 332931787 912737887 991198422 566171259 619012410 421160973 847269325 360132458 934166452 940786046 946548122 375513608 577439562 286231026 410631126 826547029 923677879 173180678 808238486 181571974 797424597 474727235 978401332 831685783 920970444 876514020 916059285 271304688 696790202 747946930 827076878 977500761 996033232 996764782 997264861 44448788 580594407 129815794 181431375 543563475 820553732 150729808 988641806 261070587 319060011 264415645 664106288 58615601 987880222 175843618 274470339 715861384 819539445 507240826 606874293 733651070 803468833 273736835 619192679 466445034 743960885 303709686 346050523 772444584 836876711 973266099 987665413 708519037 979298769 462289113 629289930 193344636 769606876 511127141 658498905 441371690 566564020 599582573 885993551 880665354 968330493 436106907 464608630 864971188 931318282 51111447 458954742 737303122 971397766 148228865 305191358 614318431 941802319 253070823 888254559 910952907 912166985 663805456 885978599 67210649 256109975 525339864 614870466 315293461 529530725 920456058 929396720 737393302 891052409 607612355 948020805 650543559 695452578 220328394 394943966 22687959 687999656 251778218 984832470 638994842 953099760 614378706 710825363 794698616 945836481 999012302 999805025 636270477 802460258 470495994 704275013 834959224 912191019 491307989 812087097 858189441 904895813 78162342 757172872 56966806 601370437 617766954 901058722 937867857 952246802 31233961 82710035 22332323 812237038 700717575 833863413 336413569 875649230 632342544 962125454 914877161 944512307 912732045 995074900 946676771 990918914 409529704 953971322 397128616 766633347 986584762 992033974 616352889 710680749 344991371 919879006 480312355 556415065 171785899 635704148 195994109 724386628 511482186 732641169 91900139 399796301 510813293 510903310 38396798 783554938 925733854 966755760 142812818 649578488 58748393 495427669 593316126 743494008 267403521 392291620 212125263 774922100 818721195 898573314 370599186 951878248 313721999 493585577 152946700 788343865 961325581 982471043 293702816 476588345 601905552 843612440 519515709 748405649 76486081 872565987 376739822 541970910 460173104 780948137 112658901 250103597 392032113 904434280 523518948 795836861 141411759 430865682 501134275 614052964 506912757 590085844 622845028 951112772 116675943 934026560 590869925 926092350 132988509 255805308 596511157 971718768 963998037 973372954 618964041 937244250 825276293 893086273 492502000 600191829 96737420 550036124 267252792 855692821 7342160 326788018 77396228 716817357 939298786 997786840 544882290 775868459 718176980 845448876 210210721 389411065 117245599 455836684 217721452 389291859 12238731 325462207 539824160 897406019 540098847 575412182 506735343 813793025 176249167 619163495 343141983 727362364 865325963 970668974 203766858 654153917 254542626 730656029 319067431 865837006 869427391 887953924 466038758 716821087 991991957 992734899 354301450 693941503 488592259 511260212 72499724 579524781 974217275 992861940 955630251 997953558 84790515 333967285 167771100 604188753 1535727 427493980 112842298 589935725 526733052 655755459 5689579 548984723 648455833 985284840 62173907 467254683 406731104 493979519 140560599 778295927 268728190 605843732 310145749 478515219 158300196 239282849 59612117 261233605 468106228 998176503 291092102 705711542 206700621 876556477 131881001 588548141 65218944 917420134 490512477 930249051 873626340 894731574 990947851 991391479 44221480 684545390 510339257 550795020 498117427 897095805 477342863 597266939 88191563 479785401 6753544 931534115 985005146 998230896 397842990 792912037 378998419 885582063 752461485 844144210 503638446 537777680 247916917 836759248 653823475 806617518 374842885 842036174 539505137 573602238 351126561 910766224 246995868 824360780 753433067 799900210 811762031 986676441 736735845 805121430 653835275 964203078 269450548 989493734 832121556 864605526 648347868 817999036 509046665 574083347 733299259 817529602 139012617 272132334 526756869 968502190 102900710 978227496 658787342 837123512 219263889 362731551 363808157 540864683 103478725 699936025 754027390 863594265 401305917 928988549 880355156 938083015 611934364 716328503 322323823 882714397 191934004 508671419 781192268 991612365 851225884 995508215 475980062 519923511 217782455 286380139 643101817 816077009 949979354 962497084 523845588 999393308 740753288 885497398 699259351 965936233 628440800 978665481 237164569 614600654 899653804 909288423 335494114 619013411 207557866 444659050 177187356 974805093 83546121 601265597 614482374 768658791 651757636 945945793 811163216 856874670 414021707 632865107 124669273 913834480 311854553 675296435 434421090 605264675 286377499 539234492 674383599 877095470 74765444 495871677 103210917 630300983 920551051 967445767 165121315 867690826 628447634 915752275 161718995 561325446 665684850 817696953 326901582 543550029 632006459 918299784 45383015 359580131 422737029 788709484 695159803 721668496 991227851 997247320 421162260 609210084 689073865 724207110 637197729 942268433 347582348 932753556 323074226 662117709 989819148 996197017 970490750 990484377 555723546 682159147 740537708 979964291 324011729 904089323 939478064 953784505 188308890 874522312 549842482 606709845 528181279 906992366 497525288 804370676 882136906 888472313 118415526 390051537 12674034 222728939 712724600 919314414 61440607 625438142 987048335 993736114 785260829 927880443 164135591 361885690 119182645 389232363 803312956 854196597 105861954 677094723 765455564 838038991 461561443 657392966 648979128 799044896 200235418 272506119 51002283 752788975 267596779 864072432 33659354 726236591 341800993 360538206 813178937 967833341 638521782 713217617 244801447 513806643 133809553 365989025 808407658 926401867 855630943 885726322 304695091 749468296 143731224 159393740 839438266 846900460 765232384 817539201 732740806 893828663 364577673 739660481 897882830 982121039 679852849 785831688 144560 321448995 801365780 848733956 693882800 830095999 771938568 934307714 980714958 999295367 992097307 994613412 917989102 967326157 779161131 918779360 614758630 666049191 866798874 993425501 548921937 860150556 111609028 257689481 682883182 952676406 488598877 649494187 419665660 705933507 632017331 722877968 332377600 463767918 964520181 972087906 507600656 516264052 914295486 961479329 646948910 925616038 440025918 874143702 690974046 993289586 388940157 768599411 340681476 815972254 214345662 838059857 804814116 985974925 285116199 956874318 846516881 882044243 124097715 763865227 939984974 957260614 597989408 915342780 744874713 956973762 627173706 700458708 996889035 996945462 399064965 857824028 28534945 587847288 955951792 960256169 341497074 591345847 577083580 866072683 830937868 989547953 707414312 901665237 540505810 985339527 416321600 440089968 693040802 940283745 974275937 974594936 543253054 770565414 309957618 664800609 756582327 841758376 24933581 236258117 594127727 840920162 811485330 900153515 107139249 590543637 901575851 985161345 169579735 811893397 238982663 991499400 213057167 381453906 175983277 645328245 642422051 794175486 94766621 370430156 431134084 877060254 91820279 131664790 346332402 993819342 772356796 968350317 80089952 731832252 21693983 257875439 975961125 994462028 266547191 333703915 72776901 78948224 313352926 535885402 259981153 430377267 978444036 995359021 820782595 952074539 132473419 853458129 941288958 963286290 175540699 347321878 574800081 981922957 471879681 987757881 136571301 694393219 391916851 530842737 698229842 855911271 338941625 391633363 410504881 618164192 129124622 550646932 378732774 648253852 391372828 470631344 123023987 560803977 443896686 782846807 885204589 972336348 113121355 127040848 780733206 806408092 691696895 931250672 571321705 861630848 2598558 323961164 712172496 904570740 660046331 934004118 453468513 580657361 816033797 874130321 706513190 966520213 852338947 879652868 717843273 868533779 548862245 924441994 521541888 881807206 916059162 938567618 890730831 930262848 38036006 248626918 965198590 972627848 530144623 546531263 973160369 983620192 847242874 949181996 79064058 501853166 557873449 651715258 951446533 976848623 781399224 805433865 297323529 872923687 125481669 412930241 852187178 947956083 873993024 951486515 739616820 774371617 402203949 546508692 472885224 860751532 817580884 834000281 904576100 993191865 768514492 901791046 881447751 907370879 430321336 679075447 739635080 935236050 762699745 815430850 332629473 543459852 815806887 962107634 165359027 574148343 84957301 727665352 532486822 622394777 983631519 998529725 781815542 844235595 102793823 360174584 146224080 233484418 613384401 937843967 224502916 417269325 52189536 275266454 303370937 378628583 101808794 978058222 252125600 386195580 718257960 885125553 525196127 856328675 157052892 524785742 265818750 287620210 406013943 805332203 260346232 934442844 345912905 933751061 579749629 658685092 416003147 416900673 579817041 648967363 770433333 895815950 23205932 643429291 474681861 823906472 90002199 122903335 71219164 586184104 554107894 960263694 181970211 360143655 687231846 745405317 201987559 604207042 407725812 642453730 714959525 991967858 220500353 987737177 821203475 917602961 527353972 557901643 197582332 785100923 164374474 304713946 676577927 898299017 67430050 925423165 803688650 858863546 166371815 643106285 294415174 488460510 546170716 829842501 440779422 651004174 719281693 983161067 355430430 710851350 836946564 948965278 419048498 573249044 809777985 920920724 42082388 702865224 585339187 600552115 491715540 596063427 79050285 434954085 517764832 614288368 414327814 801010082 883884565 905371258 827419748 948034295 186011105 620812517 931897823 953105980 187399767 457114399 181036787 967333748 338291897 974825779 450738565 988524512 595726273 798700651 67182217 89053867 116414115 245165332 485052084 975732861 849842367 868497696 565072 644238132 679218140 907820073 7713721 210025609 113001381 804503694 728659871 933958799 297401257 355796996 415442912 699784906 790958238 884064026 942263776 995578998 67341161 220434345 435367407 975011080 892582706 912749361 13434094 68769833 397504383 454664516 558538252 835443553 474439784 771297367 605629125 696375628 129699467 220307211 403367138 690228100 787513669 911994962 465823185 831928379 612878856 676092736 923812660 992874569 238032252 247410221 679374782 946993275 800637159 817412682 187998339 310152928 421430471 572825374 624156875 838941385 196077417 892993395 119743955 898756880 333271915 823320014 507433440 836694909 591883428 959464786 941399454 991786268 261127199 778607315 432648138 858168150 888647526 977249930 487446566 826083592 91614467 510453449 548316205 925242045 35807275 232824348 828563793 898642053 643398123 955139897 13243935 630092519 200531267 477490102 294482773 925782173 512698809 830787854 656993133 801341200 615495390 671712711 313624601 996457129 579564904 606465987 367771781 648527044 561523555 886261514 246253273 680239827 676791907 721250109 267446016 454888758 418190966 944182335 815438502 925621146 425453763 830420850 169100966 501277947 942303606 973094599 335700326 836200364 975798736 996964916 936599157 951703928 853028757 939045398 324974937 965120705 222348700 224365958 384989882 685634428 626145181 899166976 588260522 617708365 180431663 681505920 937316374 978882754 118693246 818510590 897553710 968870241 407465884 496455274 432991815 692857902 983278086 989867741 884596238 933076038 685063183 703036263 929246923 931615526 440701669 994831842 967878326 969716642 853465019 923483691 58677188 280842010 962646970 962945511 951173004 983557826 675797001 978452967 89006581 946706210 975596977 994331602 360111732 764267582 322418790 691010236 217937607 943949728 776245268 866605394 103141599 752490486 523735903 947979198 871736961 885270692 90737098 971160644 244619792 621850566 170359800 663871721 958197913 991842382 705110323 976299820 329871188 499039995 603997873 941574390 117411420 891273315 857811897 908869876 635032284 757205409 285567043 843646502 678564790 765464434 645922086 668723854 961847985 977160593 746690810 800031444 256175631 840721242 987927355 988097140 567295893 832097867 199468472 279022587 48820923 873203010 308836525 518268152 168552007 958641068 700358553 870473767 898579340 930905926 175641430 454692984 517299998 702068805 709183416 920059934 80551427 158269972 275718871 484209687 885164289 990865117 241959955 689019758 771556873 815156253 398899297 965428968 3355011 288770750 669410460 806441913 918974445 994460932 21013008 927159048 164334722 480768092 405070034 672343128 637912122 846558411 108497666 810584443 439219024 470993965 854372287 998283834 852791784 950085528 45209680 295445351 943520200 992799120 420498644 561986727 236854339 755252670 350845395 664276397 574590148 973009401 341202295 871753360 81049182 465859848 355243697 689040861 735557444 841399732 245636665 753667916 854079636 893563274 22271558 397900031 719222482 745123249 429470777 879382509 491576074 951187915 602275270 841832454 928165895 931132581 760516995 831934779 48964905 845261457 940649649 956841975 762863005 990015223 253799251 257166570 696481916 813244557 634770007 806978841 548209901 641789586 812360474 925026252 72138147 815254194 19269820 363132184 840764271 980164155 765800280 878877369 439798175 807612249 787409166 790358525 501762560 767966248 871836981 964101885 700834740 859000691 550320253 797781908 53563576 894818425 756716203 787615517 743525780 904946738 660255172 992754084 172568766 784473626 780029082 948319213 700106905 739405908 590466363 899072308 212886927 564212359 931922526 970152770 365702985 427744647 859895618 954017406 363883343 649388517 978358860 988391632 157257088 212147895 645548789 812699009 498234752 563064076 566291615 625553406 315024371 535375378 26456854 975887578 142824573 158808970 74837809 645757914 962312500 980850227 646908096 720539926 629141109 765483899 86469224 926756578 640500540 887605497 352176596 585179198 933964821 970912511 327618390 472101658 251792505 952419244 555525809 869446069 686503826 828124990 969217997 991494357 310958853 834236639 667426374 957504480 807017554 932079198 174338599 711909292 976778678 995293916 174346810 207270693 378553750 970063350 27359509 980910779 561695799 752261084 903591275 907428224 409291481 907382285 221835133 626824473 283203623 406271983 766653196 861544459 277486840 297198861 920747597 999119022 944722718 977996448 858533495 941570961 87269510 160335439 819882838 912116931 394083476 994072109 114694739 849593674 191256593 233804794 838178463 862574135 432573319 757287272 495067407 577772978 419859717 617837653 943208173 949710931 603796168 973019101 207073148 435149674 821676958 894375303 831538249 906742523 659052869 764171416 574369342 948516957 349593451 794446185 845771011 992615087 437987640 895584039 273549114 772757333 318229206 474900882 20299902 842547132 251801657 539867984 312414525 316149078 74710756 521075324 36382747 361795865 471408883 978323094 910587312 954392528 992685353 996112420 937709455 993455163 914875773 955988379 611329470 770101356 670264039 819587028 838330843 900859702 681878649 873202871 337983080 387727405 708863362 873172198 374958125 542520320 85301787 700080378 7837462 301261409 471178737 756870944 382466824 457104845 693602053 998860923 572175474 810178339 344904541 478992620 67738331 222247842 577366346 894821870 306697431 466278931 726138879 735421905 531104380 844961122 590671715 772564462 583288968 651759681 206576724 946847839 184115291 575107745 849949337 896217738 458901235 958629672 842721850 892267069 630767298 958747697 167940072 739536072 659795559 946870366 267611134 708120775 248251112 484667763 559018871 716058465 63967403 756740085 875379757 908476573 921612859 990728089 612580461 632524152 195865881 644191143 450874758 703315844 729428811 838106636 824790328 879205635 161138441 996643755 939226732 958520581 541337187 727035338 730120160 738596657 833224229 951237512 254451493 626483230 488827162 736907164 743349587 920921573 972392015 992012497 70751364 926158903 181310178 522254250 479495362 879547008 364039623 649636599 141773054 638419162 348547364 481469636 381302281 400587798 699519744 762554081 954521529 996709631 283464766 511360161 519435403 884932122 518670275 850522611 326980760 593666428 143252300 474843340 998362168 999082022 943097918 995845423 911492952 940968988 247756190 519256408 815395198 912423680 779172846 864590168 546284960 681244116 708834715 984965841 896408145 976192425 962510950 985936738 892209958 986122542 944423753 981005914 884022066 894175195 517027286 866746707 993813588 995264229 711633650 850478060 99553778 104355058 412524241 989076842 288897283 971004190 335683897 694277882 234164455 448886290 166958189 939932997 37180562 971190785 13547625 646087661 559125213 794601182 259862095 963512732 17953682 725811133 822268128 908117526 395443712 806871499 605140547 767058352 650799487 809870927 151098581 636139673 111760271 713537629 584935920 909034452 848512143 858954987 396576563 495602084 780997602 890963971 919447040 945496782 77102717 224586558 415856674 570254381 259950233 381333291 737282359 843625981 966698131 983725465 388578261 833812430 754652125 759350420 174103628 248743015 854745395 964367537 931160362 981953582 318351178 911527404 248861705 958075802 693037086 771049949 592803936 835172598 424813797 669886339 689141389 947934107 282936398 356329791 533283859 662334983 745570811 914360596 410336149 485260108 567444629 601844406 594794487 670181797 474197454 889006500 244301471 928744423 471949474 722222942 200096502 955173826 916305074 963189652 325509053 488636620 915834965 995860103 10978850 172961385 711553528 715481324 394488385 661168865 598572936 828741292 50780927 268228253 998016533 999234384 390813257 410019715 493500950 997202971 570681285 686010912 667786213 890249209 570723776 674141603 120795298 144309825 172991600 993035679 628652626 642989886 423149451 647051655 670652988 797558666 217521319 519872226 743839031 871223922 165532577 218572943 95069281 930014909 427043996 833615669 331827339 962637714 9535977 670113209 909436772 932744834 581174493 899587915 655887481 706317963 398269176 502143978 510307231 624921556 23573828 441660628 918796412 994759725 363212286 673004100 183071722 439906757 625202296 781133146 851471778 962189350 755402384 900899868 489233508 639169263 503485008 829125230 460093959 747115173 334766313 800940893 48257377 581888165 488338958 528500870 947201019 959790921 570534606 847886769 299065910 868811873 797813983 958408036 912834610 975446474 180295404 554455492 566773876 648944902 171858010 699771009 613362816 680757437 929056915 934185439 166338943 876152435 984171623 987365643 899089402 920002795 321118472 949327051 147784698 951313262 515387757 811845377 415946179 597218777 198609476 852203816 625923279 713950842 298427870 422882659 584496883 734037159 860383708 996264957 391196226 679570529 560991488 801476816 871340594 938151515 321468312 844864185 322690500 662933969 122523901 538528997 794106045 987468556 291716471 812577941 98734774 783496638 483302335 754121954 298909391 555578720 551065751 974147588 930471350 974404666 290561925 969925570 313347842 895753585 705544615 871270459 358006317 959118468 667349680 685909193 484696118 619030861 50091520 853332540 820743409 957825435 56318381 276329727 22910372 835659310 447941889 722005062 470669805 909072859 240225846 658932907 769372387 939861750 991376638 998821886 225979226 764023565 945870314 989988166 824404186 838428844 425308075 942285259 504112723 516597862 794917035 906869252 522349284 890035803 512580588 929209651 29617416 410594915 932262288 994462130 107801928 784677521 693241394 914469780 861082679 886691284 855212896 898232104 42218292 297601543 462778480 651159172 377861827 667216428 352535795 964410490 971614786 986968298 102389409 986418465 153872326 295837340 463262570 956957902 774275789 785223320 162373490 510515657 141319833 217524829 487111654 683077155 286553486 749018163 647500883 893913322 855241103 865673335 274185544 759569581 873574034 932906661 677934822 741001100 183399638 814648351 189611861 209595064 808221446 927334171 966734196 990297842 194012811 897639376 918987690 960366530 891264522 994714106 613744801 917193946 612012484 825311817 904258033 936031206 363155505 640188503 670177214 804070676 873736824 980704198 968715295 975636018 479210396 799740758 202741058 470536219 240205221 957483909 924749284 958446750 63158842 339916774 493160580 783831780 335862954 875689858 914946693 955027619 715805061 723241171 950053331 955257384 225366649 862112970 833390651 880502272 652355792 999567566 991940870 994179431 11533130 96545703 447781016 983520952 460253447 569862224 918942075 989405216 127996868 610777521 950401062 981788017 876913119 896089519 693542611 865245324 375132883 878832126 1694511 841527261 907989191 989077284 305807271 648998427 919610782 999787326 939305380 986098051 314179019 910034029 325266766 785946794 170015680 777330078 423729490 686366190 926136202 978404647 104564724 543407844 709648893 851822895 315609408 389005017 527121210 612603388 590271371 649988659 973690663 984461760 900893217 905044941 940821718 991852638 482669826 779528907 601732456 934274914 694451791 712717284 534911954 972097123 852172522 878539536 959008634 973930702 633708254 960430967 921644473 960158668 69106573 886474315 578392900 929464510 820718793 930382404 331461453 978498865 40202197 298909342 544523357 629041103 896963444 993889507 570476139 608670986 35170596 459985739 962886785 986217496 229724208 791817436 727698390 997205448 485990817 872993809 795498773 933905397 23208891 133491113 346919213 947615484 330057613 961940021 173012515 469058180 451343610 910600594 76708169 979142518 253035202 258155465 568064192 670042517 234773316 402766343 233292737 345829728 617183258 975706609 623743013 690380043 68606078 538557963 204621086 838336246 272918204 874021356 459079046 851934234 691641360 726148440 949187363 984980188 616715370 793582131 396542884 819429211 351630224 755388192 712954334 921537577 627703303 681958118 673724491 796096779 96262483 774960091 908880873 948279651 535882349 623245286 810047799 977706858 180499620 792331294 546059946 857016645 345403495 858468894 400058398 855506308 102912305 322038274 288308859 635572646 634915539 659141269 921527760 970450577 386533650 672163081 965607184 971573977 615676806 645731840 347715858 826215608 13562815 975197534 73903849 958483016 722631899 796270841 498080332 540952276 955947980 989284568 625617885 771734348 467985825 670819801 656272968 735641012 782773908 999083457 826860651 943569720 7116017 444178037 526882104 971388629 46995611 115205768 633673016 931977219 337770502 940388699 368787122 980840966 88669405 465892924 535459301 753961012 255648860 291879224 282773318 873504479 929674262 933691299 660248378 823203319 356250787 667322263 274441537 687012675 340013475 611820429 996642535 998568244 718608720 836235337 102647502 982371582 701778839 814182968 942216069 986961613 887358564 959962681 718411422 892662192 586826757 715100828 42593888 838882035 927972755 978886005 490723387 813952681 495842416 885763987 433334992 783256058 113211873 854490140 463463423 689909755 45072481 498389044 323166512 512223127 890405849 914383208 651854366 944437651 588028069 801429678 954584259 993487772 650471089 767948693 634313852 650844851 464041331 714178155 571033914 639246555 803026544 876345383 267439099 448902145 124046548 306835240 772826895 852369444 371182581 521042751 739812539 992319052 477991146 486035984 554292270 611915141 410877371 798947954 685282026 883524629 437322497 950850123 531341128 699311854 712561146 785013740 380381036 565460773 203771051 788422034 438343635 941020980 758525330 995208450 830838192 891455511 809288607 941992769 448605844 834623614 613759815 760214910 155328863 430797161 370905037 624181335 369241542 598407245 475653926 816725377 63541466 438385622 71612256 747231726 349923046 396224981 500456281 623520492 190885641 335664485 458236856 679260224 629420878 944220345 375623648 663818691 800086427 826838048 310502915 858211801 299884373 463786698 978677912 986724668 617891803 737795345 129523998 340948868 178367871 388578087 147160672 632518049 915309241 955418555 504409988 947993010 251028584 562445878 304314850 456487235 566547572 717818724 963902816 987304206 676612083 719035745 458954091 719847202 651724838 813161642 798615995 989946135 989786646 996901412 160877002 228077561 422581696 456277845 910102285 969859082 878329687 985085564 276506764 982750528 100461046 957036030 328433808 683740149 752202193 842528246 986898309 995142993 359097757 597657559 336061011 431556981 9474203 698626593 21983683 479369660 575195090 621963809 495957404 719448725 429525539 633888717 822870613 968507460 213597060 737505729 588397916 996011518 679386949 874644336 162694042 645491154 700853251 802431137 352820765 539750441 166408430 438058617 510197118 895546787 166518214 180631183 932751576 965075222 719619454 861714208 774969731 898853584 900404901 929386227 543970548 659377871 63394785 922453741 713179828 962593954 825878657 980532960 97280645 552649261 362355387 655724265 191723065 925833782 512790112 656700438 70294796 354729206 932460384 976927563 430863233 900659461 366816675 577581159 334289663 991854971 962119368 993051853 593120082 679361103 428397617 910103159 63760474 458223831 618722587 804534872 825705044 982819640 466756782 764462631 298169917 798453875 362936588 487857984 755231177 920525528 830132359 885894638 446195110 621667811 239705546 960833879 96566608 569833087 793858241 860702962 569206317 878163389 182209629 220007928 781026066 808402141 764259294 816082547 543427122 938017315 616539511 677120237 966282461 992565755 137856354 739113660 800473824 949495437 230995802 266441465 414466914 592317739 726119118 802782591 538606054 673649816 148072280 246796771 266272118 817964283 513018976 718408178 351850955 716143153 138990224 262181658 4428620 232750803 17600587 959492449 36409711 83811302 791055067 880071591 716701790 897466424 473530862 923864262 106778814 985567735 917962794 941712985 267150658 477142427 998711124 999115195 22932260 313444553 214341799 249616645 726427532 742498718 903828905 933502892 140937042 724015034 608136876 746940503 411275174 815954102 922337701 977093198 118819052 274421751 914816532 945603364 231930843 567153667 514628983 737826298 795343420 912842251 851575623 951839006 428868586 441476069 46114512 740389160 368274955 546881528 880040316 896329627 633366876 942948044 957173248 984555065 629701725 819906769 433888665 537486831 343867820 841048749 803932026 868410589 667105873 779699716 714506533 989652267 657258501 994005476 611348305 801956506 454355012 570703994 101672142 609720890 553658422 751699333 97868366 871236522 825228541 825528622 54666365 488353861 262624975 678907150 911295970 930971749 716875830 913933001 297330271 733314771 731919461 745954185 131593858 662987284 569095111 998884862 224790439 887055655 932447946 942991935 765212785 973497086 982864607 983389581 814734745 821883181 944171344 997289389 887195870 984457892 974819742 985562623 339250919 433499610 278447306 348357403 890414719 943645518 179514578 298320977 650840926 671860564 763437922 798539431 773242394 896687446 435817567 633784297 288206478 581491622 58735819 432950145 222160381 941745097 653018778 734165955 905535054 999549459 173442081 206409987 946623144 997267368 971539262 987636934 531953236 949828031 938635975 953899949 782149591 971655226 174160185 661228971 69065692 663691119 263998351 671342074 476638023 910913732 705902552 772989131 611370141 725827425 851026594 922027243 31590255 110513458 338938568 613351333 620406894 801171748 873994087 974140764 330460847 815931555 278129995 778070383 357965583 409718359 994032452 999141669 738102305 799682067 202111954 873069188 272664838 308279383 420559944 570940405 619652166 903187592 860820781 882739123 731167509 936480009 460889129 482515284 925739508 954628747 819355632 855463442 801192233 904949593 744176369 864545826 715728470 961866529 588281556 888478250 11123732 195051238 583169044 870202883 475219764 706613133 225156397 693260011 822518869 972576333 679404521 895964997 853215453 910743543 393941211 814152810 353707063 836827855 492110786 978964884 362513256 368717843 167882415 360980485 582609212 946558239 539945258 653079982 503862478 646038586 936856572 968644326 342945843 658098049 837975415 998403032 913047496 939200012 130837461 615268068 968601312 985748265 554593224 619147492 381982364 601165639 727611119 876808103 440785210 607999839 337195226 389892370 741692787 979809293 565867637 702531232 836357249 941205313 15561744 64531836 538265047 732541370 153040410 260578435 772906785 995869593 15443891 396426120 697180886 997457345 743444453 779152853 257762103 586993892 691459654 833381373 58728105 650269686 1293746 174614535 550188785 665124550 721592544 728978893 530669949 866668941 296284383 613721498 990381936 996438727 268264137 857238631 944262649 980882041 196161990 465702830 381116921 851637777 378044037 932739918 903588875 995243009 13739280 330268783 352953192 600151492 68662599 706222592 739040517 868084353 374965550 557280763 263770225 717432992 416931749 614611929 474057447 894973278 722834566 946589234 757893501 783985850 442773585 998344475 759762299 867900666 846400928 997147217 403298316 975391803 406516941 530571563 697135906 809822996 626699446 950932655 157502191 162785455 73165021 897832234 8939473 619288309 958999996 962144336 511005940 882382612 650708071 669747837 615673982 967553888 820639726 952208007 1535056 547041807 380993989 847408944 301060589 714227520 278259616 613069420 520117119 555313640 242892690 722760129 206834140 220420230 543005478 914395918 992073658 994807169 32379828 135416350 546412538 826728399 368811635 563051143 439680372 770697894 237041204 898749834 871100619 984184298 232774199 447035441 294942758 717418598 756521592 909307354 211724975 472374700 543244587 972281046 675501479 739104786 276220429 725460560 892056178 970321132 136604374 568960935 128183127 609636678 313643372 845313453 234600530 777066683 28504024 588906489 992072988 997509996 924534696 938048314 758450000 828008660 829372868 923548250 106019225 635937027 732394347 986155841 296811041 995295533 170876868 712809765 588741154 686707320 388398861 903214270 484167849 554525069 342617682 472349595 836289463 888874119 511584566 663567386 440888634 828872640 18893924 22660552 722114024 881254957 159309534 712018053 115006394 860143579 77708344 688914364 383919294 715651505 790775026 986985811 900878378 916012674 857153573 933747768 285468846 638584869 270020982 856239521 491973320 936646765 780634055 845056941 525938079 854318164 677249884 951706461 709914747 860121428 833175955 921831716 821742212 884449507 797349892 917136869 150098417 538269123 841217521 960941565 192889474 296747392 662727665 821011072 718326430 821916736 365213911 418542697 997425483 998171170 803238279 844931810 630376128 697488966 29864774 349381839 178334135 317642971 630321276 682498015 697957157 844362504 707913776 960360790 441323136 684555064 211466433 480623261 382778182 616881168 837351480 882525680 946899651 962719229 835955745 866391155 42076741 790128220 130226286 915636492 922347695 975772675 329608107 398827310 348565360 725348332 189693892 209756873 693846925 790633769 335802992 771325948 365664221 624930660 836426575 854340260 719693666 928245513 776770391 883283030 82621468 857824332 656102007 697894574 267309755 778192505 967080317 982486714 685802224 896239186 467241689 810030072 454208152 864592563 652791259 915002137 63646447 801348144 556003583 885015334 445368180 660865515 205034665 988318798 309826532 331709945 3799248 232025524 814619680 997374268 122538391 700908867 360356864 739620172 375892673 461210642 95613647 978675437 682236835 983655933 699125974 854741453 837840058 922056383 249918722 341589797 642484028 840535260 994517320 998232091 717279784 809659339 521199790 591333319 24911153 868733144 320112609 438834431 586563104 656605875 412019578 988132665 886117391 998350791 972862919 984525040 387112291 589928759 481978349 880045267 545536472 699649720 328743392 783191650 25302898 433871540 407519240 552191719 721063687 746490715 244106534 903467195 919958837 962090790 811231855 862281933 348694521 575029228 143209344 174595358 846952141 900803430 859825407 896263527 895760296 935218710 637859575 674319842 935126239 994310797 967005728 976635655 418566137 423656906 114934930 980389958 630905739 669523861 80133673 973700446 44698341 410265695 800651490 988503338 405432619 952989982 994614057 997484345 612935291 849893521 250561054 841958047 827469253 885341940 43773363 154723065 667191264 948332354 221050028 743229966 79642761 448736460 598685009 748753276 569915407 773825258 223859417 352190491 329773105 910305130 578597965 678740909 210255155 454638997 862341059 884067068 272323866 280113151 218872144 956208739 736047319 964684177 313386503 531518585 490100927 715950081 50317446 915773543 253145954 671445639 163067132 628275774 683977960 689128306 157552235 669350645 372732467 462531629 955166485 970036973 195868491 831279311 4411651 134449508 738248567 931714049 234320285 443778271 873321190 886015846 129771528 800207242 424703942 874090682 684661077 878783505 556770850 750765173 509020804 792042306 391656393 480056796 195037273 953747027 764925536 812878251 769106372 927955892 659475491 796110430 877659956 907306739 272431890 906123522 65664832 490426186 555953772 902176894 91401444 512779903 164452236 743966153 805334622 847212105 826133128 937920426 855569798 865317767 394266616 634725454 189704024 429536838 300045361 306552112 169054867 575554975 342069271 601174372 753528238 863826593 556027127 611659300 180388704 432306594 716917610 818129235 449555420 454664644 418644061 430858785 481839891 767542316 511704564 637083077 46827522 889687816 254562655 332394983 293190794 348371330 593538476 782932024 516771930 818221119 501145654 558565242 588554497 959886485 806273472 827209590 621604027 658596517 730079079 737714235 674226665 695511936 723138668 957860999 284490496 296371424 930084425 935358330 935346225 948981179 479081644 518232026 995805829 999769413 81988376 973237913 395951840 738386722 618697812 989446290 811699811 980011913 664911696 878880980 843319988 904956673 206920733 213175757 662667450 710624413 713467502 934838521 752986213 822485333 873322388 894413266 831393373 963794633 39014362 344483246 189687597 337727812 926709803 936111570 706332191 820824890 893894464 924255853 775423756 977670607 130155776 778832008 132895564 960248664 976351244 997005839 283139190 761744021 92899862 898480935 715071975 897882729 892436617 917225830 361764293 873067480 664049752 889039870 135407680 622677702 36582758 194599842 720516215 769605278 131705265 218283609 570168674 938336129 975131471 996873981 492528439 618601208 462415021 677403631 890147633 986248776 614060714 729606169 965299971 976194550 756517137 843882555 386613216 572897335 494124870 584810720 69061881 85226074 873641176 905093494 124922726 265738895 870977505 903504032 404244505 860413383 279311996 404840896 921343666 967601627 786070251 908595813 743612277 987928232 277180818 541455086 83826312 93046436 521883104 791305994 589405095 652604877 811889004 960150216 960899193 968861674 798705483 979847694 863660663 969552790 369250994 499706128 785895596 793822664 575468237 675812858 877037647 886108207 110689770 442124710 647100455 708564315 366305125 673614306 371754 757820377 560991334 965557347 11129519 856024214 724157545 899600263 681303817 870117339 358064282 974990070 976174711 994518054 952797103 982479644 799918013 936515844 313317664 406129149 902327239 966975342 117508276 658595972 333154404 801308992 94672776 115241386 287028104 395864477 817943503 986549420 912006879 993279217 344941495 823004621 343884087 990243448 506748110 613494633 496113537 896947076 599863743 880150835 908201649 957529903 618880137 856783383 336493658 856503660 479301893 607432498 707718357 851263957 267475105 940612176 5556712 388675948 235577088 859700747 464653587 676988694 884881750 930828764 992625283 998636901 288239643 762950651 232996743 811950652 818806409 962188777 619260390 807907683 205721743 584190565 850105180 987508148 212186396 618747493 285263515 382685533 898111171 960133868 691374780 976782132 537026786 595926285 943437114 945890766 573119492 759676406 987726818 993698115 755537644 928730367 52854243 656406833 876957804 999679164 38130311 914316428 603036163 655373518 14926762 561346853 532915977 961155315 65652605 648801216 231793416 880713686 538622649 545198667 250788648 831388096 667719401 696033594 372818058 471302148 678122077 898122961 140432327 508773449 292035071 390675707 214189198 733665239 140023798 884121056 93781 955655504 965532227 999098964 21969411 941989341 486068131 780831935 927379597 960457608 241942020 280940062 870915925 913910750 769952503 989272313 767111721 891349226 393207057 483711910 390480568 806106008 38568686 464436239 803583664 833219807 335527980 716166831 249491745 253460393 106028260 998558468 288817058 789599794 684195962 964440340 391553439 542952574 363971218 951773918 888584588 924816308 765308437 945874262 541146631 795181997 896583188 907430923 596927376 666705338 478395367 502751554 115206114 608971537 56201097 230406049 826687352 834868540 629678585 878231190 370512829 966057233 939746657 985692574 990257399 994939139 454260132 680424648 417659469 693175868 1168656 19920512 744799823 964556218 166082177 832221815 783677748 998108970 135924551 353414435 59646270 436713454 311883752 327778593 429021002 990789503 96080685 887001385 221874177 434063499 264837429 738233408 881810072 949109910 736714868 759782408 742258095 964973778 675659364 780082181 824862235 906653476 147912197 510922566 372811155 465606605 745007039 779913228 379060419 441701512 591904728 639741665 958963250 999456236 706772372 838569483 9379010 294974085 626229646 797957492 827018762 916399764 483706231 690800979 179129967 721297062 265209115 814425057 795498807 803973886 954206650 975403313 592937188 897126224 253934535 905275271 199746098 835582439 554970575 662708112 333187207 994692048 162236354 802648517 999665526 999815627 451372874 760772719 800968253 895096783 387340015 911586160 219492874 885816949 548955956 585932029 335042945 957765438 165083534 920350655 386384459 714372652 765462192 936944328 752486143 763000945 599819392 605049488 313844659 475568232 701743168 948161766 552255577 753492697 322680355 467535607 141811875 786952538 284085064 717278495 54723255 833331022 203968718 771567033 564584961 819736341 326646893 896146413 342167218 850099361 99287372 595313311 767255607 891598583 373420617 693488660 251222915 679348756 176019347 749592481 529192260 884452731 858106894 936605288 598958293 656990859 870721848 925132703 953690345 972505614 297578694 954289916 866899063 911966190 119253542 259382277 388245024 989479180 97445999 494465121 498517729 585279689 226632804 917658718 145063496 309408316 946792398 993405917 614608161 906813561 350002256 928365283 771702998 979133886 476438476 905345904 884976301 940492494 562541412 628246604 79746139 693653558 715141662 947458671 775357557 865358442 370666646 721362173 453336716 813854878 67278755 984415208 278781618 831824565 575004419 605589674 356785070 820728653 71325193 801111279 409966709 967303436 361469697 995797233 750184032 751946520 612404650 794228979 74729922 309421899 218614622 291390098 336335217 587676976 899105019 915070115 371698009 976825261 737746690 863245583 88845603 511996348 142191562 390314166 603582354 841819736 94740623 252953156 675682867 929404747 195501057 834822528 578999474 881019906 119390156 544369607 466346132 741289788 288454650 922638364 256645353 829764587 989262739 995404303 923946594 935957873 695764318 880061280 732669430 899108566 32052458 823039519 686328162 723703155 760606982 774173188 580430937 601903801 328483264 957687464 195014167 654192268 302425319 417801675 286815873 404601889 618042192 674074071 372184274 560724286 764989900 939922005 791593121 910931588 625363650 722111170 406118815 487774076 15117663 28462383 947969627 952085699 925080597 979443422 119256246 792316231 680718219 920181971 621417821 795236689 106300802 782887596 344467145 463262553 664637952 834852858 344462769 546548166 412766144 684257497 537266591 662765433 109649423 379729281 97444123 765155357 178209671 346458989 817449545 838399732 416133572 627306208 401247717 979241955 918682153 996508171 942449763 963402103 890348215 931054506 329618899 737940214 997042171 999348934 187822268 981808691 459379812 762436330 896725394 901075327 251470115 321192191 790063476 906742451 412662868 500684201 289296441 620790692 252846981 803578327 287253280 952666143 255128765 901389064 215441491 232439841 563282755 666598798 60520395 197798547 149124284 755905208 50493605 657023208 112676856 500184607 528638606 779561807 786979052 857177986 581612252 675660132 313497312 584478971 443829696 587713815 328437999 421309451 264476691 476999903 80629322 913992349 263786955 494681532 333714847 622288526 113141282 541453944 579136797 869691500 604596240 832680261 228655423 964932504 190146388 607210583 946168836 996610957 28745454 610550408 189667563 344006423 250775331 370312525 515846997 951491533 41522492 372878688 749111348 835296656 136313622 226419280 977025566 983484993 677701624 692501849 101148750 136358012 978759871 990812382 925718098 968677146 341898805 900129123 748570351 994289911 156776939 729240431 336104531 718058322 839465756 913576989 52420475 740111518 633001388 785273572 710492625 794869126 564893751 661246378 73287391 381695884 968698833 989424055 276127813 858023114 964143737 994881314 533495463 991418127 26841448 152467084 343215000 877191492 867790403 968510411 821428359 980632875 135723940 512333395 732484038 803024295 605124282 885336016 359425675 481011252 492722534 749361715 410815363 459806776 460038195 775716270 728444595 973649308 132848203 653982323 903218698 978255569 193203241 549419760 600756196 876033217 206339937 926584967 270850690 492866013 876398282 943300571 640813889 717828864 563605243 961608858 785872002 925697069 508192427 715936622 391667669 461715591 15308682 658867533 36595220 527236827 102514343 192742057 522989036 859483959 611583965 985322200 61429135 244140357 565832127 888586941 35408876 960151904 917131871 990952496 304678330 440255151 472348064 862467438 180638872 672515199 832270812 936607676 116797728 574852695 605113424 808448588 374213823 932963163 560932474 780395460 619222236 685397918 87945034 362800255 798862308 998998818 688205955 865188318 203032167 722284764 207257954 434664351 659201588 764530859 248842063 725401173 989939159 996038304 59477415 871591697 424448433 521871354 282305668 703220383 810334327 907652727 965528004 969466719 837693821 941104507 711376478 953008398 69978905 742104489 747457416 857609378 61826173 444783680 276576760 586269540 149733386 212877211 602522647 793765093 985585631 999268779 532106557 952352994 202169840 860449302 386861582 936247681 824300236 907878801 58018814 426908754 364606069 876436782 413189216 688895523 216275362 950970764 607335969 871574631 127658970 477673611 90612295 169639866 402558790 879458925 739999357 986916015 820694450 831883017 35993027 740306803 624012512 950311536 597498161 643566921 273626286 608697568 383006672 951602079 248858826 447986361 662017441 693037753 823086112 959430693 400814119 703958851 226695960 518939796 626656482 888981631 661108439 879998147 514641747 890523368 908952225 922210498 667358370 730125205 322522443 363228618 732025908 827896750 59489444 831857943 434355862 895207038 394382837 492947505 619502566 978528265 825543758 989552999 928354222 940269405 567116687 774416106 826669213 826915989 964122971 966853037 223709684 595049422 365910126 821620146 446353756 590235146 914150273 961135916 455198079 517743805 158744235 390668853 196460004 231610672 916998615 923539579 535705781 971821577 65720702 115296925 324055064 637386005 115117737 319267299 925227108 949462905 457991040 838204283 714919004 782665754 621715914 656739265 512105156 532328735 192165373 203324684 596125368 685874533 20559803 500343616 620762955 634301737 417793646 451014699 756121935 812644161 583508713 875706190 424752457 826224093 498459653 513616546 624067360 795087689 876470356 979468000 282042635 685910204 891653176 967055860 468479619 634248369 250529786 641968568 119485663 514832233 249570424 496200615 363699680 603274739 94274448 674349363 636769981 651046400 951648597 960143608 607367384 675976298 699456539 779519551 272664306 739307431 785118137 948989765 888619396 938978247 258533833 306689275 864980032 910042222 569290596 847376460 607607809 949350534 590123864 869386477 836200146 961078998 193975150 550964526 523166312 652907207 479453646 898125973 365265855 919941651 20723702 81244794 270619834 483805653 851514632 932029320 255410904 983321054 476250937 839908304 371009271 723837052 483964929 596123517 464813097 551246336 810510932 838179927 277372245 940413357 323602745 530814827 356993408 802026957 520825206 606682419 160720284 971213935 883415240 947330879 965195588 982063442 885515526 995737265 523871551 776443530 609357954 661645256 101635741 224349004 418964080 442372665 340903913 742345744 378791566 875027239 443780964 984207116 655667982 951795604 445418564 726098256 559236075 652064394 169510534 649553379 833140742 877191299 670553203 682829101 975066511 980673082 660697611 998308061 918885754 998299262 892084285 990377711 825733435 870727349 869145697 976730618 145588711 539061731 564407992 973834957 826486909 969657091 672555533 706307483 809324827 909217230 650155073 784683110 504304833 525760152 980229171 997597689 11655058 783249889 496926018 628531533 669874592 747265183 982142908 994614099 397783082 454939370 770489873 889098556 498850155 975090731 276413978 525772364 680695325 926589140 803944136 850149024 615718719 945409413 464423736 885589714 269009405 905300797 987632315 995407267 93222314 300156461 373682878 762490873 744933370 908699665 36200160 891786846 128165864 871185198 571697741 658357886 762909457 869072626 864320012 940739342 548097397 661671312 143255201 726841410 276281074 951885097 282504780 921891981 182174742 635360006 61566775 834333036 110896793 197303305 193359464 717407272 140397600 686004230 81971036 899392559 636151382 674280099 263172411 647668254 427085937 689881842 891643824 974679781 960350790 969465717 917349232 922964694 119659458 208955026 647125365 726722263 687449469 774747899 305432965 403040451 405203794 405718883 740127764 760587274 59761480 798468718 758033344 997097166 52977108 987226906 14159662 855298506 918228938 944329172 115370043 868876809 752385475 880874723 846629757 992995602 610295794 742335828 867037661 973542587 990603622 996750290 710859133 717539637 96472207 139132909 408786821 721942037 555533726 767476608 475355239 588269830 355260681 583486687 131600303 965383092 650179726 795874671 150173459 271185653 252899921 538923260 954241392 969348319 390125034 947305886 484877021 509240347 376893736 781929798 214362222 624877924 446424717 904862412 153046062 763149436 392394854 614151422 382098752 740613383 917230210 998335471 358749430 887233511 432308097 839293085 859320008 866453697 220412775 448327269 445763427 693834499 407086481 490912621 768728154 769802419 750585478 764671207 785538174 840593542 488744787 915397043 300062909 486179597 440569292 675735429 636454842 906366655 705763520 835216899 294876000 697491681 988189255 993433867 421042011 916504460 202334481 581180733 338550134 576620156 960611496 968230545 590422367 794640694 908810677 959259488 942024185 967774364 767162568 836154512 731433621 999225699 683836808 917697444 595000800 715796459 48597889 764680426 560022869 699071112 747329097 781233429 170603318 648952331 485187979 780590323 792880679 835535465 105907 663378074 337931719 760439768 326590313 586835698 75238970 171700451 555757694 650039513 485205212 812861832 105611398 558722963 586969931 610966541 234906643 292627174 696708536 706830787 347544250 384699331 145491642 727500659 532787944 917218229 493617851 726854500 405403990 587434806 13187870 453732421 139332059 621924568 949976622 988950635 129330934 683242718 710708171 825413657 304629027 769027305 437706195 820297082 452490607 903088742 614833315 726427153 60775451 379020019 944354961 951048845 574715488 753028887 4160048 194327261 294140890 871889342 923706441 925858377 617166768 968213472 769544038 841795723 613436773 728780645 935097086 949165850 857195224 889932420 930762481 993565900 744825057 797996569 941313698 984692056 363183425 739570919 807814582 950932644 172105823 918736406 123088760 901530028 541124571 986310383 195703121 785889582 185266963 269617122 269508987 928816361 202703912 971514244 203261664 372572341 754637379 908360667 508439533 745712387 964419055 995701333 544793847 999674015 193023661 494095203 396996142 425964911 312910749 718789741 86187006 164781293 606714824 927799391 197393889 261263497 91034930 732106978 998879650 999591197 42526517 325528616 179520181 672282872 763552193 887099773 341084328 845779550 672416986 950393960 132091512 400817957 89336736 132416921 993093651 994697961 297235712 430297830 359298391 864571714 184100259 701637922 235281684 821358884 814133813 966548375 654091877 874540823 343416659 399452528 932508043 984635776 383913227 925621989 295379654 374733499 1792510 296803451 763923522 892254817 430924855 648150517 724496098 867046736 514762694 713892818 319981836 680870217 625474051 864832821 819821083 841668968 203420078 891771026 452847092 713787309 432242968 955572673 260695569 384136961 501903282 601705586 361516127 895577483 720798200 992462150 589715485 689316171 371245911 560225471 832741095 932521025 396764326 498924562 886232467 973555104 535510469 723230596 452402904 564684955 828609797 831918508 109774278 991562518 717768621 979268651 298907868 652065549 278189760 384346611 561285033 618586750 935353032 946819729 678600432 770455341 227469371 755631616 442431433 939588062 294291109 717099709 646940262 747892278 101860993 894627785 770098012 957436775 603231048 662796842 78268184 829556328 808680261 886312656 219061957 304949052 793538107 836497437 445167993 961555816 20781098 229957749 726308987 787237668 163681963 683355870 632913599 680981545 513667587 543038053 638562151 920917504 970945225 989653250 885580101 920626029 577434011 946885447 710755884 719108415 762892439 894345106 205005057 604915059 319332672 819963745 526225410 907644649 522848147 950847087 627901923 962563745 210605183 629059738 919479939 998012683 350217732 641791447 148350871 824360759 974896925 979583584 722902459 879299262 523121773 607840337 780933851 890403664 388453831 984408399 9580541 497242199 186751121 595026510 851740244 913016569 16648140 819697544 19604393 285531172 69582166 472951257 305822611 876818227 26449655 687878666 267318233 796622242 592300317 942237657 538033046 848525002 67438282 381400180 257203492 818372105 815006629 871898780 848630119 929410384 436487020 477441552 739439004 991688381 394240991 916854746 964393957 969141324 974407785 974569014 379879789 537532104 447684397 918492385 836500249 969930202 551571048 640124377 76589913 216413005 40998966 543153063 829133176 886812208 808649230 832553888 404506604 812108037 144759841 687535686 690767458 701647608 414461924 738643240 885104030 984587279 115509621 629405462 498353567 962139271 851271487 989929028 132468914 906024707 3607012 157408858 871132811 987149919 523592624 578498924 483194035 727783063 584841925 957202588 993200032 999582390 496635537 612506706 611762634 978334176 929540609 974531120 741303035 811629854 168544006 267375875 240841588 904283825 611066105 745252973 661334377 787752667 55627032 605489446 239009856 663007527 27594840 297086537 946744375 991677551 810893302 855733055 873145995 967549009 449928372 544618126 720809689 960941218 607791467 909088957 40581420 503385140 765353485 848750869 883401101 911941143 665226466 741358948 978142759 984006650 247633996 545130429 26979960 772297803 313250494 317590359 198757380 439103786 689515476 705459820 321334126 693828256 749698021 860812726 33856395 545276262 325132432 993512282 333876987 992355964 105469530 458523362 725537155 752062545 682523972 915048702 273628934 290761645 669246935 810066130 609634874 893323465 565947699 805367235 775623121 907624941 80618193 343859469 218638046 651692270 667832019 906663797 333635160 881088113 146468157 433331100 406141072 607020711 951571186 996870445 317386910 887358182 739469253 947598154 49327901 810906533 974194734 984525961 866883901 967957796 83626135 462322135 67805457 371172460 997475796 998298281 599215493 906293191 404252299 844481459 955838288 976584553 38305773 366925120 1445099 163454524 105438718 909543508 95691642 661511543 44884813 215842626 490197526 896882790 129813208 380671649 186100644 790427852 37273707 311166286 752999811 904432319 544434664 963191537 920448165 958356781 328521519 562514618 167084218 806744780 145314953 635554721 971425885 990772483 42001446 467010054 274897391 655166142 585234132 651882536 449840700 951819024 701334381 753835567 387103238 396729115 168535051 919571873 505961962 605062024 544447092 663646830 448985681 557521731 779706228 833590243 725445591 813737464 526002637 530295709 492496183 539554991 17472184 385809812 68964465 564395929 535580167 951978724 546797463 861495336 519551031 873197478 5843180 951105271 893439893 978368027 501669061 680796999 398632554 874115865 880174377 901733039 174848609 512127122 393196021 789184330 119955571 946389208 651106056 884363371 615364757 903206673 160163839 922655211 391381061 480496758 95476559 872704703 78407654 733778940 648717335 975648846 117397535 653636274 656096840 984059150 329965371 553051177 257584294 566772700 809664248 950329648 131716760 418428489 79363168 779352292 897188228 910685255 735227944 919805017 256830470 276529918 136233484 309354654 375776217 996416278 836629972 959123264 161548550 476621965 926398728 993381984 63365158 970869910 278533186 602887696 298383276 406240796 766206603 975989574 663809696 984151500 55242458 65602642 68681693 386826362 706180613 890490069 140708675 850655814 111360961 350553120 155158766 806915771 174398693 718937713 446502933 778565695 259213941 687454794 699133861 823971714 147539434 634912946 669914261 876359605 849812970 968127898 526289991 815282707 873842481 944302850 943225333 982930967 849792830 901907323 197206861 222985730 941135788 971814540 964476770 981900695 716051534 993355388 160826324 769803164 127839287 674478903 37067945 516279192 179089864 870074295 99806536 116374944 682005906 743886167 355959112 666419847 473459097 631979023 796938601 919993944 863642166 879261421 745831327 834232223 135417657 632680271 590522150 792856797 867436302 997657456 587228931 965124314 988314903 994166196 453579114 855047884 821181620 932203234 399406478 516382884 289221950 623985432 25414124 886809413 882065634 975269246 74819770 367699160 33176137 691514751 625662773 906465694 94658103 190483725 508596874 652353900 149868263 396114570 56062326 563925227 358117463 447189661 337418272 589978896 743736328 826797019 18165430 880397820 715184855 720456431 16071183 222161624 914976222 947376289 638003511 848140356 583350906 593413862 374181664 607907377 712562408 915283278 839900767 881550390 902134744 958048015 667122222 948522623 724242754 730799728 112109851 594659457 880070759 947883153 7008422 990702516 634468582 731013790 298012614 551136182 642654999 766237272 941245479 953012774 160355263 745325487 102251918 426948410 171132796 824453642 325316092 619264475 127280600 761681894 616772918 844492933 906555266 963797299 397200661 527215820 535116290 908303569 603570204 677052886 17860278 109123158 779651398 813260787 593761727 826707516 562837987 949718443 272108114 313239747 210799644 640889891 192649112 671424004 695159425 866573322 715751133 945818781 366244076 704169025 747768705 903172047 180153460 834085216 148117593 201704773 136018308 434205452 574870562 736677461 898877356 949937976 533527316 646781686 197122651 426310368 939505867 945745178 511642826 913439178 22544053 859606054 593570425 640200284 731344465 778284386 289982825 533085928 99016860 121240008 566737022 708274144 169857214 231772937 32607944 830219992 342686745 913244229 980887285 985015390 379312845 618494224 818918998 821476312 993025793 995660790 991440678 993057375 648449773 671079629 136450366 218462920 256583050 478377706 434982169 915550644 785277652 998037939 431772238 970112296 328153492 762483254 722117250 770152993 462985910 776137672 969706059 981956163 91611799 483129178 347477205 489955841 647800272 938695274 884853115 939469038 253685158 848226735 134088 741296718 959716627 998968870 517112808 586515291 752536654 839809323 675978897 815923499 508348070 988712997 65136070 683245462 167589861 232535655 6704969 917380073 979496351 991161889 563459436 931999909 236280936 659108838 647420896 954335807 829764663 926717629 115841714 760774949 336983676 834999208 573702935 837216314 825002662 911270745 739952586 895868440 323052888 440980143 360084449 616031143 648895923 663077973 657317956 846683143 444180851 960616913 980593266 982985109 458266315 820488954 344364639 528893412 21439406 204745805 447581934 578566519 18232218 148266313 472184532 843961367 842245740 976224649 420639828 584026359 29784764 338139772 467147018 478458811 20189372 917295741 53316060 696950501 148445583 736719243 916954803 984475159 704341200 779703113 929007710 929714863 971205162 994529755 347811650 862382323 622682383 645061857 325791089 776596841 461534019 513037162 245631847 635274331 851034900 951066725 726414386 791666403 662151655 722266712 140100127 802676071 60920156 166182172 718760272 771823730 452059234 560092896 527258964 674483368 395538 520408193 227814664 849215084 541574778 568265532 372885035 440508865 602893146 699637555 345369975 798741918 997311591 999502844 701586494 865818620 879806476 972707916 195033024 836512803 200309480 214785187 609517312 972767813 710299473 926780527 499851593 677588324 875408434 904935491 767615157 778975461 578363017 693037687 974565564 992608495 73804622 900666298 347440642 958912401 468607307 519315446 605733888 955897714 266564940 697974243 93574742 539896211 434452436 634055203 883118605 999575090 886298142 923190306 434613984 704963996 778839584 987036710 982005875 988506933 561268349 721799721 315698414 684103216 24362104 763910085 33477812 644075211 175693849 311364855 610509342 631028042 588033238 878547962 362653695 438226945 777617542 996716929 714781924 867027396 890026596 899223081 711266033 991375528 330118957 598697047 40262418 733779701 135381895 738495018 70343833 335704505 757175486 929282914 770093609 803309991 425410802 827524094 240538383 406458985 702353938 945249111 217328917 904342975 927452522 945445012 998828356 999490758 995117972 995882324 324044641 790232014 882931605 955956473 598227159 857800382 514032636 515866593 943044445 962108321 107344983 184571302 618280782 978917581 64316738 352315529 720445489 916026549 397662362 687581572 327148251 542534973 604011268 646046540 202512553 767249142 595052561 796788529 549665013 971378048 413560459 609898854 779405899 927753292 443375194 957835485 587528545 986877020 29265607 441206573 445154672 947312273 845008871 965531346 863324785 967499570 344678013 548185103 139171682 634678130 596172238 988251646 753925677 848695950 38262954 743112590 241245426 264343557 835399293 964166967 36818098 608428323 978140195 998106278 257659446 349784246 440743680 973986906 206614159 527935000 859201001 874875026 901437042 966297509 457988349 834945722 922143526 925179700 73247989 921742752 671965998 923114329 276804333 734727758 861459659 921576197 695794142 796007830 23005118 622325925 209656576 922638053 497689487 959398725 982665937 995134583 420709458 840525219 220557306 578680008 890201698 927307543 923229076 955365438 988833375 991397034 676121317 892015976 803316929 821989233 859246121 870949733 819543928 859653435 44219190 746218761 549701682 930029026 875379616 877295239 357076499 567991648 741048364 977005493 428536221 844643745 950364907 980890907 39794038 600290819 561298370 790168907 187555981 677027514 863394083 868681085 948703492 988202189 12523864 275391968 605587115 994885201 155396467 171005888 189555908 418614330 293591600 838809293 769613824 818765333 341475026 856509137 111571041 939541286 283455064 957098737 326564966 541081447 145994761 203510749 897944942 919048874 249565891 790923280 993879404 999751529 239662629 883333495 756231708 863877493 279914262 586678613 698973167 806949294 834536180 941290776 449694582 659837063 899320794 913043584 475846974 808856223 911722153 937622750 641828824 772752118 390575084 683156674 521016605 646514243 741740781 776609581 869274748 942441679 752582087 896975134 661362415 908494930 80333210 800845807 522631093 855777512 540314658 802078031 977656652 995185473 784303200 950684855 605742191 908654742 874783140 933744638 496879352 631562693 915530202 995159477 334707748 491142793 801341612 976470119 858956069 900063385 82126269 866454259 967992562 971750218 378194759 431206478 715159691 731652832 675071987 771355127 105379006 203368693 686367767 803446354 797681251 850959244 999616925 999880970 831563946 899301981 218755340 934986515 124866769 673573106 253346163 733708504 111540425 725457173 934950139 990897150 114809616 709027003 778888120 907075297 889294902 967316250 713209816 787910554 840233152 929227814 959698190 994881725 87497510 352454461 823873321 953415439 49948118 271353909 733443668 919320408 899939361 926759829 873461516 990709981 248599664 292984476 402047423 855472754 432305989 670292415 24081950 965019236 193438459 279963022 447064121 964193519 995241900 999846531 248284155 624919716 661169398 730323480 167285264 726878220 766022060 794240360 779162054 803198122 414003940 430969535 608908802 639657334 288183573 599271837 136336681 172140348 901358376 936929829 474033547 576756064 786079702 856137593 873915710 913118639 534621532 922227102 524404838 911922708 685664854 845380653 454242178 753244712 866702327 914287275 562646464 801462769 205673606 536414909 844958146 911398182 433743728 437329289 300481522 694842999 445771560 507300437 228149522 468910137 806331972 823463139 279153081 799781693 21082790 348429843 7712439 150147668 391251963 920544684 990962735 995091617 34934841 158991902 393697270 816870489 574590572 724747052 60787628 901772720 390059702 662039921 565574299 615485796 757430217 869899046 456283202 697848686 757158085 985450606 617381680 692671643 879815485 988558335 487019991 580179914 376303037 773816697 153700553 689817112 765194890 835651270 970345867 985034917 355422957 493364618 681292099 764523809 129206402 875559775 146012312 443845405 925621639 984272431 941620188 994969234 388419394 676450654 521886851 905257788 841976682 973778505 710472708 948328730 101999655 985538251 693562829 885767969 528763075 639254870 416252632 428395651 251905921 708727916 776057977 822345310 34575087 743186889 732251041 821092275 74320471 326505068 660343228 852587786 241613186 830524906 251240253 365233664 316092321 523696415 772360161 808460056 999428419 999563542 951734296 999147301 864277595 875829737 165781812 550417371 704487808 729907257 293713183 431600715 500042430 835628493 446296215 884060856 815398822 827402621 553026832 805248716 877013558 880762350 934524941 971335364 704446460 949809530 655914083 917801079 577312878 625298391 134063290 968285839 670944480 930367843 317214519 996007563 148695393 272223320 261619624 442226953 238254501 873943494 847167242 884428836 273419389 370855473 719224393 821638452 101226262 546536114 535801565 625349823 368694812 586400928 471843470 539048034 978852679 996162109 533717993 608346605 77073271 529069226 308901257 877565358 723934196 966175788 283233378 408667166 549666972 891829530 962185811 997333786 511876486 834274830 110980602 202887279 312532664 840856803 853096968 994538965 996979255 997455060 572414125 714059525 388373019 976830112 893133487 936653743 170538363 554804813 764580596 853585435 484771112 923230169 15984915 578326995 890576564 915899399 853573770 879938051 560042901 732356189 431718720 842618352 808035119 879156748 219685862 570308164 576965732 995077831 805085671 829873083 243573865 511382874 805606673 845800592 336329494 797802051 280666917 526029913 805258533 831225814 793785402 832110774 802188710 912692172 586158692 841196023 922966275 998810216 63390844 841172167 316275390 545480354 52034693 74186177 836066075 977663502 535940763 965835864 179872047 629760611 333088725 377955395 567649461 734855410 976059266 996008947 561703739 941397924 447179953 615970183 550172887 785418924 44306473 215030515 267949017 942192595 300778868 957646745 384774367 858366373 727745393 959634041 361517726 826186122 319764177 717349248 176732358 572177605 651976342 754470851 922918757 966473286 999562830 999705882 484537169 894346417 86387960 377326613 867696245 943560116 890005396 979000452 238726522 351997870 595297496 854060970 756181407 988043679 414419199 945002306 417277930 582326594 765853808 967797359 333508302 601639077 124629877 510926262 773346268 877375086 508238668 864018723 102409844 463660653 456506390 892056300 667581747 912199443 909655657 997221427 143965120 271629581 422337114 824910660 612655508 668898293 456221417 661214419 183482523 862993754 995272701 997415999 580321156 696627988 429212975 734341677 673341150 911272649 475771655 902858321 769389313 970915449 765047068 786093951 501169157 926196361 738718515 741735242 671979812 749483439 926519333 978792177 303977763 906389604 986950486 996912951 541047172 602208726 216537815 597524343 855236058 913925511 695878479 974460358 519621547 598231931 862742245 878224014 337846415 932018278 209177024 766477507 282224515 776179611 944470823 952315392 244123953 775841296 179510924 738943863 332389241 737811792 745924072 939178347 47699123 641034622 281937447 332323769 890914887 951866338 654874664 708577147 605661471 948213230 985203729 988612053 520149973 814411639 729919674 950949107 253828859 497959297 144530248 856798496 495084895 517967653 583439007 722488316 182964510 611973958 457691684 875876562 877002999 920391872 128790312 136432412 381021732 943459441 136156043 944711343 386281041 625026528 662568535 668006113 173705383 537302354 51752807 318306339 739049040 821844382 98103157 446436772 262087490 568853819 967130885 971600019 724369999 979465873 540842586 944827594 823309663 958149837 603916404 729937020 660783865 663263838 893485358 983473399 481087107 651594736 44303419 947035429 179208878 266407951 568922649 789686520 347420624 730381297 463215897 494977994 938994073 989818802 328199873 487925025 480625177 734569302 144946702 787763860 389527317 745800225 21013330 896088211 761560810 845764261 818317316 902746939 436793750 529862589 839630091 940874144 210539632 539642621 791124570 999185855 324608384 592640804 84247687 380984485 318102629 794138493 910307773 910840755 756339091 978904885 696962473 794659460 56297389 494301547 597888306 680424507 499520450 808285317 154474946 433190139 564080018 582972249 900692442 977297749 294474329 341870436 559015315 994290420 809553344 920838913 473184577 883646341 300020231 312993030 26475542 995115375 245110117 380011446 527537500 845982571 803939999 904010780 306116420 593334828 794634209 817564235 37695270 434557898 551120236 813593574 477915992 927455509 723235244 740933871 160880029 372642275 565869047 788488515 57368259 659336198 790083941 993152477 319549027 867731717 357515797 849409347 738625263 742849325 162934978 479498401 196652887 381384973 650802196 798862004 806484150 828551811 170222229 174920980 851012124 960908907 563350056 885869649 600576023 822506675 779724115 858444839 579835306 823206730 329578507 677551330 266749558 922596558 50785367 183758163 123142742 305285571 541716362 785701094 24179922 718343388 337171857 729515571 762968904 770665645 875840329 951378863 462948509 698216035 726921428 826338478 340802633 721651990 421186848 925673984 33024679 639713949 773851980 874164338 125200449 813780749 152542339 864912399 574193742 867197601 590830655 949222318 796916525 861963845 693814818 954074163 294397184 812033183 97008829 683704966 147428599 309038153 510284611 610322328 71603178 928603688 236474306 574261866 244670988 545635598 129031843 996258735 322689667 493009914 84934891 502575168 174454987 481172270 101310223 898872721 968028267 995194631 458224257 463421446 951378538 965859715 76694272 273722246 623898974 785832652 272274646 467441177 791999510 818783069 62801296 353823526 907503441 959675776 34034690 950480872 339810010 791718852 689262993 990194453 560137739 753418333 758955013 943019309 769135589 940470818 69773929 634452644 474882141 948311173 497629468 767930546 192844964 630040281 567067712 700186468 539032113 636532544 975605349 985917446 529370664 621437836 638266306 659122754 902774103 977313726 382670840 861523114 813685502 892445248 581965685 641624990 383182164 900710897 438849487 825645490 517952621 869013451 319338940 823673434 722321545 909265252 79427192 737954436 50515131 871592413 833058633 967428541 276956174 891946948 84947982 535738671 608823147 767351737 251306969 495273491 228558665 387547009 92702169 902786574 606358051 872026997 188693876 309328026 329771657 508302984 383153607 983295159 92528336 576868196 205682685 385272883 952459330 977043218 68306412 731585892 783994746 839541408 317648587 632482870 874652776 983135369 709513573 995750811 327588814 695098961 659596577 760236542 547246852 576148626 24666494 135911532 246413196 372038100 763867670 950047331 396459382 712153767 445194294 578353751 303560100 592443910 779555689 817719544 113773847 680672828 966113461 996842048 83198463 826529719 642164025 663814925 503246333 883722241 861453654 926049229 722326246 960621955 220840723 247293982 262049141 931719719 28854313 671562781 411530014 542317538 887184664 999663591 53755301 970997716 700802663 963334463 308528111 870282737 65365018 965255666 772455649 856694545 358054015 852991819 981880340 990012171 43447128 247402396 142386478 672658467 534927555 829056579 417559192 603732890 146571459 152907882 910183150 950934375 463065860 984065455 953344408 963159774 948778847 997206972 981054425 999214412 854567467 925418996 374217309 884586635 247638945 870691777 833414035 960271432 96845824 759435343 704960541 744656667 106190294 137528116 287346126 304719769 650143576 750581205 459783527 981977363 229971540 725839376 187588190 511782852 312641354 551041671 584040463 913134104 521452437 745134209 524701477 719528127 6615554 661302889 21131107 500732143 754139086 854260631 102711477 104766741 622301333 815596116 726102961 974448986 287311083 688282786 178726645 202130500 397715452 430354482 985333695 997944806 64660724 602434441 543300837 635605076 289648086 856313318 224478154 851351543 627082049 873228103 462245911 965383474 47431615 633239815 420991338 860519707 468946619 915395683 816180648 840256158 91393898 319096521 219901074 832647267 738653654 994857238 593248653 901002348 167760743 317535029 872079412 921779453 171469899 351982844 795567587 939730210 803580398 817006075 966790188 982897702 757192609 925539128 150059406 420597504 412562524 853013456 265429524 714596241 232110488 237182493 313827737 809556772 479172256 908901863 207907590 596761775 928251877 928980851 24064579 127057487 216567952 412647148 823769995 929227589 261875686 463842398 155292223 828159918 489789737 604879011 626659096 897028688 769640566 821081488 715320753 840569445 501624341 741445820 865927691 952568592 82930145 965498782 978766993 987449175 361831469 390995606 713014745 804283604 257857703 593708793 777962503 860474421 911180919 934333718 873940980 991900152 448858326 773937820 736734327 942976578 784431781 799639229 617542949 918128632 861810759 870105963 409803478 670906234 397970061 653524844 991661820 997163473 746183282 925669462 480284837 839681071 568766907 662608303 900492207 982066993 100494586 205786848 56121136 643571966 20537359 982919028 439503623 853048545 708521315 804393653 110300161 329507921 200914258 769527394 893812863 963710411 651135377 846056884 700129572 777499955 480579453 705874024 729439045 902854278 349129391 949619974 585553019 978034542 393758449 785267917 872934109 973746027 202895612 552530129 676879108 930174920 450949990 893792966 983482795 983712510 276742597 815124654 52436030 176073152 20747396 824708176 668621583 851360966 93071041 750458524 46550833 151004873 545351213 644195239 553106874 681692690 375538994 635665277 556572602 600050463 328634069 399116635 174455281 603990538 190252385 456067026 515679126 980458561 722159918 770504477 58547225 874030163 960681200 963672437 259458113 549991501 686758090 705105414 970087323 983828443 525833616 601362342 557190985 828070570 804160564 934000408 668466277 701809416 295181003 774674961 402486625 674546007 281717838 521347108 565259271 568913535 750322079 788650062 227207087 760964732 304175619 973827341 375834223 414072798 738519242 965281172 282211247 649805888 460560172 796191332 56501296 696297659 490290628 806461129 915478461 927751113 404975110 873325222 379802930 890480965 651193373 931390435 14114474 151546075 229939398 683800899 58252637 549539249 380088054 666506880 33524283 75764505 418616988 689381892 517310117 552930008 415898859 842054379 419316740 885048692 615958894 770567287 572423662 947265475 804736897 916831362 889601269 962482831 920718012 945139492 385780484 990339965 421301345 659684639 141693637 302964938 935976247 935995973 609824790 957104192 423622425 467593562 526245300 679424991 579658854 620820156 598609631 894322193 658209017 702560485 317149723 792180587 791790436 867825213 114857342 120806460 908595555 987632340 888529413 999163163 167727883 809651996 283363055 350791449 427879254 707366674 421076007 971488119 162224368 479523621 722412521 910839731 462829560 488864205 426368534 591864559 803894540 936031798 952710108 983746077 812115477 860308297 224835140 423447801 79152786 196331978 801813888 923343676 664992196 698483284 331783425 380202432 940817241 998128176 871144121 913021461 932951888 944764365 474952514 593004063 97213297 919335659 147457641 976912927 553827081 750407488 88492754 222809945 87111549 883345284 522487033 593569210 568408501 982447541 561883306 947496987 891753418 997313566 504768358 674056795 345833293 556031731 756949149 963845102 279977113 843215064 995912001 995964299 299139820 760874840 283533964 809225391 148576299 390820009 567613448 625331672 199158902 645222490 96077909 784697335 218278929 632215691 291207942 877473339 958736944 964253309 950292965 956279332 555339125 606059666 357689896 479110764 94957406 683833276 955553283 966410019 703587263 739444334 713601671 998104897 903548178 913832870 525370359 660467760 527144260 676250974 107908397 844455077 556666966 655249805 817674547 845912216 19197278 800112984 246799975 416141744 314810796 597732965 674341397 929954155 979481479 991316853 454036151 622487855 792171665 869004833 288007577 720489819 724613826 952276430 781069607 920208353 990676454 992407961 541950286 942267775 341302499 861513010 554300950 608515540 976385435 995486049 565076832 987268405 768389199 934553697 358410155 489146749 136416447 334542932 198547320 653256284 567681546 686753457 974021207 993948150 461719464 785396926 212254371 293796247 118965575 585747707 324839506 389873953 828618371 844234000 730520372 956149318 76286838 474222915 412370434 630279857 513953818 895917831 572789961 705027600 328928305 337296941 31294763 510199674 957088301 957973324 388383982 401336820 323923525 921816467 280330253 713210654 315895201 381049111 858283915 905066797 605312060 853294336 826159460 902880532 68088976 266386050 452012014 784227578 283164232 889516538 883961771 885307247 871947369 958079297 566711205 735864431 208135050 509066287 695852314 767043903 749488447 972658714 84136140 823338804 390184535 716322666 517493726 991166734 777090762 908902739 527319981 985935629 150766467 742780253 695061983 946285009 991822286 993885183 107843898 724342388 627992129 656433940 453703348 498408114 474411153 615680652 520929287 984490680 447441703 909968925 996801510 997082880 404019242 689999758 891410570 993074645 751713988 933157558 992663898 996973184 307877724 647522294 982411252 997853640 499317703 558977840 130775755 499217359 719393391 944777965 274817812 968197361 637990237 978270727 997992519 998910345 714365958 913883961 859733556 880483478 92956436 995247479 378706968 487094551 998335938 998431360 454621744 673557481 413177773 952348482 699793789 839453604 216105424 422392060 225359341 892766797 385552992 495895040 64626225 164235681 868247277 932266401 246622935 315832780 67532578 442969162 431660554 975642509 12208165 573506793 929482790 970784105 306040709 897876740 328156011 733712112 861402401 940980310 490325165 725551591 519497124 895808356 112930968 993727609 910800758 976837965 699477719 758667759 947139984 980947853 785809788 882695205 442471695 994604151 675678113 902140294 171031855 977451353 681894962 758202948 225452321 447859290 6392081 429907308 916069831 918125891 566972943 826399544 15564147 421516879 242999508 584350752 226900677 649134261 271778370 387561483 421442173 488268924 939032218 985960396 666056541 781087951 865198954 974404765 104198709 395631810 948253112 988630548 678637445 777429022 721387008 739386115 139822873 536623487 231436947 696204413 329657659 899605811 558521545 935934844 885564296 995972598 758054786 948721059 543139819 657687957 889421092 945796953 63570699 458074342 275549426 275673093 546086077 570647315 627642524 828678199 658795136 920152441 86342106 497862216 565650139 716288842 487484331 885200170 279852715 858674980 990847876 995874646 55113427 548160805 683871752 865565873 575055169 831634498 980284795 997203163 822561882 936012511 181470858 331413529 750704468 856346954 923483948 928219761 948489845 981348560 352864741 511368436 838106706 843038523 117013947 670175696 394870304 411767205 22119652 117771728 633101852 867825126 845474856 970189109 507752150 802804092 643620375 708218471 469731509 902953954 285521637 815877828 547396246 558811237 375764938 866656864 524164426 572705615 549014081 728396200 747927510 964251850 342333955 453004607 471613491 636102456 46835903 648911812 298407028 655873918 503472971 912461853 431568592 762901422 31763970 361558828 748706528 782737785 908931185 921150622 567087662 639747974 535788039 686395474 425029687 647097058 841017496 953345781 563803526 809521656 365779490 880253418 693045915 747247652 683821346 856539254 275803935 732731856 801212326 841669570 700851591 741530675 295028679 809741269 813392065 879304658 85613524 524474167 32240974 856178061 285439138 594077730 16119711 915719420 900531906 974639331 953952569 964988283 545984959 595637898 811498945 981342008 583551670 931460605 834801244 877086736 475956894 991718002 306759047 372521690 737541600 769970090 160110707 700999203 373105738 431224870 233796407 364310026 178992573 772566288 986409939 989600121 153875371 617234323 310946178 854676976 719303468 862938195 577853014 583939500 89636966 221204279 382461941 471620461 695286317 971356896 777552680 950230792 314563659 543634469 954054075 958801378 541327334 784757766 437538703 704076833 754586177 901000867 158440206 968387074 977152987 980180900 889464333 964943886 391455385 469379201 617967317 908036277 509944933 626303846 136045233 508089649 357709067 682108965 341421449 457549151 916753620 997198545 78846802 301296534 873251390 900474226 181615096 369234937 322617506 980468548 759434628 821519804 623814307 853279424 59873573 661559272 510315076 579947107 38291272 189377872 359798388 367130359 467891197 677857384 396267658 612220263 828119184 912495942 434434834 977142121 806061113 906146224 557093376 858746274 759713 468627020 131305021 577798945 298434922 597898714 357210247 502572096 402927412 817067546 985832921 989881094 573734840 900085212 248112000 256341000 72678590 730610327 617599096 668019411 850093497 980003682 381954498 579012505 531863757 576885045 487739395 706209150 267790643 486512139 642277960 679285140 810382729 855081564 487351385 930260353 364125449 624756518 180952911 432794379 354661500 362260747 322874728 733008520 719334416 778671928 426259105 842098983 842943147 926873700 7217696 493251935 195066051 697280078 982125082 999119113 594036375 733187531 622656379 972526416 180057016 505521248 498324049 501772198 337048661 634587832 807287594 870901222 853701799 994727943 615445992 686543794 768182794 833319569 864737044 883728809 50649114 927745623 274113905 823492200 743190240 912450921 551694981 672683518 144958205 145408687 976108962 999721326 477034399 819165103 134751043 299042678 987313665 990473153 732955975 810990711 517432905 834295753 900938292 932674390 194107479 938104127 297528856 535517681 294280455 705628525 557210843 956438426 913117799 916556367 735422332 931116123 65073860 491569025 613126116 684411866 692288243 791412205 875129734 990401895 868391793 948582005 666736658 776326320 361630949 535136873 125823341 892535938 26070647 956358269 197049209 737059757 224232457 665217603 62486875 103143187 319775772 875969180 975817867 986260404 969279929 983983266 355121537 633369711 824067145 879472781 383720562 940657950 919084059 942560744 868219389 931318327 789929583 976529850 194701605 755065306 817032727 931206003 439199297 763892019 343818396 460804657 643907091 947109450 177549891 578873157 51351899 617243191 190880982 946149905 134412427 907815143 108186572 632686880 166732979 721146596 330730114 353562893 210943957 342861072 958917887 979141958 916729147 977651477 293320108 396711528 361603038 967265556 101491411 527803608 718753670 876317026 807705602 825798706 902837862 990079711 548498925 705205527 194155085 315850310 783585863 977591678 341709269 483376819 658096420 712108378 111551548 866060528 540705410 874818757 191869895 779464862 974415624 985754638 491600713 722207926 307747068 484432576 847748866 999932960 192833486 595088647 813601823 888008345 752355687 817244762 441059872 593069177 926704428 980067331 170756343 240631650 16151531 252325335 934069722 983572546 225234139 733077850 252046385 752224517 216488754 265987254 801891821 978115754 961745067 992812222 877180985 902156887 533281260 726399173 490997357 653041004 323775696 562289642 48797075 581254774 184407121 387965739 996887854 997139758 915261594 926120249 982479428 984446593 920441871 980298467 271039197 409110659 80961728 195690429 675862685 972478246 570594902 699640264 592857405 746951255 210876441 400843149 559931989 720888794 46598801 443189032 472974069 543418273 306364056 692061826 587395941 902766712 810744462 875977749 57217554 881611957 505714514 893911483 191935830 906792455 294175932 940422524 746418331 938515399 801076666 920689303 662516493 770520921 87158235 798684397 979048174 996775158 713034930 852814005 227179674 253151480 518052963 876270861 128101113 772238290 815315251 845009347 225211638 888342539 942441061 954856519 841722559 860325265 609440418 684514020 802008537 910641837 20205495 392174936 708346186 930857850 451934312 798097491 389066127 793747880 523972210 653877311 301393588 419242837 294290658 604004008 934269545 996355237 593889004 741809087 99344425 571487648 690870550 872742771 196700158 970761094 429933168 633640897 629246325 662086995 625239242 659292239 579923562 766247345 268021095 921543905 411576276 712534538 276193961 353599602 167969205 996706711 484041181 622142044 471391089 843046239 513829738 985831616 96760612 512671175 40711729 631987378 534977713 983463292 550122104 933479222 892379835 986523820 979569088 993160749 629238393 863673622 892902632 913080849 234597701 417880795 508299169 678541092 283552318 907495110 369878187 522496678 663229886 831264576 721174623 811468071 661784672 949390008 877512909 918682725 679547293 802558290 171193481 252563629 158986465 704685507 260066369 882266661 71683803 670435452 315038393 599422726 197965389 248939025 619785634 940507928 62421119 628987363 466361747 806109578 820960941 838561091 71581343 540418817 327009369 526286019 393730226 604779867 156169078 416272049 331501373 490027400 415764872 440510295 537367171 693467817 776018550 915786050 967365787 980722829 900400765 928789575 464173045 470878440 370789708 565465674 934661923 955861554 769997119 798285689 452180018 772816906 695214495 711321864 291440544 622406089 827728223 920993093 294435738 511736165 883169555 930264304 408869445 670307881 105256560 853130030 517965911 809211582 955464785 999626323 28735471 166672225 70370544 664093919 436711971 865265932 978300881 984167751 600992789 745231885 61090771 954096878 590726438 659167542 335780656 753989970 121293715 586979145 534525111 711602958 994183944 999141804 844885803 971634651 984656245 997154207 601413407 803938820 577781648 840356608 110156730 132148349 852225207 861836364 931473610 931784830 403587099 895458185 95263085 820164174 82650106 979212053 857900585 876035313 276044646 805564123 722026228 870201293 770367831 807424145 39156190 338215313 712031857 780007234 944776372 978117410 984340531 992353171 886801385 997502320 314334241 496543895 457464719 526849150 188899461 565736850 755992136 841894155 400953717 921381426 71745637 742861686 615124349 971911858 246197497 579792994 919837644 921615229 137043499 619602801 757853332 999138615 706295513 733734693 500610821 810863839 201388105 626542471 199672797 433235192 179224700 983816125 842355919 926252248 705805045 960214392 803357600 988724729 281662167 908317938 354416895 372191416 104105676 927971067 844386721 872660608 595785935 657420521 761673450 874486022 578203144 769083267 961097276 975844209 907215543 984238555 440677890 686339836 989613245 991155250 97413392 836936114 478542774 960987020 154205463 268255739 491872005 710530015 483882480 656449332 880752125 952461267 629892124 974337937 988026599 988259669 103537462 270670900 928646321 928952465 83301643 757946903 749514885 972110871 824168739 877998359 846271408 877879409 206098592 389382555 730620113 943988244 470748336 763842135 549741854 592387862 671200667 825293951 924122061 943383343 395207111 735047634 755743541 823477069 270509275 599869334 957973914 993384594 247406886 532376647 290307406 985111688 884622393 896163894 960462304 988915757 427731154 713021067 82079677 613850083 585651148 892121411 291382790 383461036 702356198 789872519 427792407 901521268 410222534 643670449 593947252 659410275 712024406 725872081 629553644 932357474 863392008 948815400 901492653 966198186 216620683 293709139 325014585 380098404 682316158 761351108 731745999 884999295 593322504 891171939 273062857 768539880 289896419 897312965 873073389 884510424 203623599 799757362 268385724 444967401 776753851 977400964 987461057 995875272 35553950 140840541 611839078 634670626 495289301 534624666 312574922 598210032 623957508 990911274 372597199 862027560 453695174 601483326 578720173 629074398 199689708 418616057 71043647 681304339 648545280 725414235 760794181 763707141 107314421 672069318 417108235 730607447 351544621 613268834 103542435 670442035 777209328 948005161 949226308 950497016 957454232 988864048 738139229 741140057 959323147 988262692 72531849 210789650 624111816 967135298 477744760 589746268 303710348 540390033 425782961 528807844 222387588 348073448 455284067 998015937 483949520 859276811 666762187 742038856 489585098 890774815 997018094 998350074 110573950 403895286 926592576 957543040 799617816 854431731 827183339 927889922 414197713 926652227 255474234 994620726 10039224 285766529 319060314 825840004 272001324 467740985 73897153 665430252 81377298 152636058 678962838 897268275 102036496 729224076 401077701 981160190 587139563 620935973 75598812 686376507 423654610 755229449 434725494 444213247 443131532 535158705 111989880 510900269 682404124 744349493 621032397 863949380 103796389 188132203 85466793 812821876 364849195 411685944 766491532 942102958 64096868 263771353 108869188 368782556 699336098 821248749 241788130 272578138 264639826 882533166 630472378 907797259 757809370 777350877 703862069 717011607 580136501 975533207 893107966 926126781 640317166 961058933 443727255 561810401 232283992 262429759 284825470 838045711 197602247 505968744 470692247 827344306 142489306 235226826 15129001 732048818 531436692 775887908 656129892 778135800 209236084 615781161 189163503 448615251 858685640 928331245 76469242 661841875 5327491 819248254 305583626 420160559 400648823 813701644 963831688 977598503 168512553 313366567 786075556 813087010 64078007 361422240 672942917 814816979 696594383 902099712 722974596 955055044 60341798 702684971 299573283 656815050 894600135 902037140 573710503 662742931 762326999 822624378 512556432 959190024 738304114 804951151 78421948 777492413 659460058 990933153 840918114 910930370 399590429 531900685 339962001 421365164 124077193 520795841 674603173 724988448 931978871 991196306 874214606 964347269 466237881 519211392 109762929 799422363 203223462 824206158 624846776 834485631 183149077 703596022 547782630 811753248 211419012 301071707 742797650 832451348 256781165 916425833 721774024 850516744 986513427 988066971 267724450 977958590 708579231 997181751 820123684 858474983 562790156 585586832 484396808 858405475 41560267 730649495 335695703 662360332 493672035 963676977 411709847 977756158 158853927 991645129 584920719 729055559 140370409 509702296 480726110 733048304 22914239 490043936 54506782 903794266 730391177 920308231 16481048 696573692 569348276 599626379 538762540 704010980 100830871 107564892 258150382 674538237 105902381 829962216 531338457 598364981 377293184 599712739 819811034 914644190 651777625 729917341 552196021 993827065 792154659 973853886 193616725 195448797 866246367 998072863 277309172 762528523 856397814 951756121 749199010 786891420 753087556 801573583 743649093 780116040 918047958 950530823 26308009 310243143 477981359 508717403 188517645 396772109 283797377 520864395 642545479 673928201 981090413 988333343 727475867 853768961 991320703 998793488 374391423 559335274 948757675 986824539 463028673 671268846 717473891 969056304 659402137 670957319 598937515 943755017 904267869 952263756 13966613 584787066 901598729 961633919 886492589 965050269 861036164 961992187 446606950 856621863 918307502 954919017 740507386 907564935 81257605 509635884 700030133 776246274 183966065 919094200 870199662 878806523 347707257 792406989 713221475 875495391 210091196 881630716 158629160 395063922 768030465 947647842 544268031 710636640 106890558 776888397 171990978 913866023 718441998 967889162 348065972 757707517 927249078 992843318 295173763 448235603 209735362 667700519 850383739 877995858 189898132 364910909 484437159 816054822 528387583 685334485 693766835 695251483 409833391 555313207 445963646 633866116 403546170 743666989 228735394 767219172 439467241 598611354 85020718 718260307 687245960 957872269 904041734 914590339 268281175 738372604 948089325 978873157 626039167 768295441 254449745 977468172 100569858 605410831 208226351 727985536 738654907 832544748 470544532 677149810 489340813 776057526 841706742 899472787 670480657 700448356 816063760 917034178 385463297 401287369 360011291 914183479 40568493 76833173 628351210 767396190 461547527 952101981 655753602 989058210 625874298 912446789 71292265 985329693 30790567 59204272 123395019 702711276 412429818 457860175 609786270 700812346 503679156 941044973 167267238 731535052 73558185 645488112 803821694 877500853 151757479 469868044 893028550 935261427 346011501 731328431 133411483 964124252 589344306 596185052 570025794 639667013 395575135 506609865 476769023 919924988 735706829 858082526 73779905 470705282 399624873 831137625 249995969 958024777 830285044 915200503 324444334 414100349 221959119 386271389 932989540 936204258 831241417 943281083 507119974 583729183 920806037 968740633 823821969 969824489 793152393 934286354 803438422 961740482 227408623 440130633 210050900 877007880 237556885 407334515 573805630 929895536 178538351 480567429 712998264 820652150 383107448 639200133 487773687 504000665 697609557 804563200 187371511 631863151 406235654 486264825 907750623 923683659 2315998 302839970 212294712 452843869 822329385 875992313 876616936 929689699 972055079 998070786 672245528 697632516 457742698 663465444 469748639 954783069 134278783 974942034 990154847 990202410 990039709 994611107 37741572 368298671 203219306 772280945 376700351 950844388 687953597 918886202 727983779 745413934 738641103 949781399 967193268 971584916 269193957 957562798 759840960 800200922 452082886 463344963 139618495 622390857 563438545 924464109 758977498 770819826 627610317 932680212 315506246 980561050 383253039 829636745 479781651 697212734 258525227 602733183 605115482 747035107 704143588 977554874 432763821 624577466 876302476 965399396 785877039 896147944 750598757 787560779 669692330 953871018 869220615 906447169 662017059 957781042 142629674 594111590 581304902 743139328 433114106 812440999 475924048 865524362 550408003 702247903 205058918 725406454 905454268 992296998 788365804 998182374 159211447 855751437 667247683 682290236 996005075 997133613 494687215 651780916 956917209 978679457 42600220 595122835 533015072 917287316 748524263 763559209 925027978 957040956 517350423 582709134 24273591 201711195 431394465 763820026 96368349 822640892 674930871 794507882 707715246 942462207 541359692 793082341 443464139 957141530 913580095 975386141 188597157 697018968 893223977 970084892 147881062 341832833 955396283 985950671 150510293 862277143 191343379 958959040 396604107 814049744 632363516 830309853 754337182 859505230 138213311 387512008 176586349 862623235 553797926 972099068 865380919 927715343 548047194 802007299 939772671 980769282 113993306 670393482 150673297 275325518 291892970 974330432 487997862 770539548 47296601 347802060 906171335 911609978 202359326 816798188 19082594 679281320 774832585 941736148 223185056 328544610 234012892 569246009 210439992 236787991 206324577 755126681 516154945 950101723 276401596 306501505 172382899 689562666 55955510 814440824 148159299 822877667 576599994 922212543 402433408 592378676 147490232 180908591 953519102 991838119 165970917 750877664 282895384 700720271 676412804 839554223 578959962 846910863 786261655 985805541 926049173 968473069 427425430 849646061 167947785 963263296 349912975 888590726 262692225 443895418 786666077 888477448 352245019 961002626 788668815 807663786 274179423 801658285 731286305 807458197 84276295 297697300 864725280 996787646 441525251 989691512 504680908 757532341 734096204 825990834 869327102 960996658 866793871 961761478 166305768 534243652 556771792 986128262 758569406 955369952 467215575 708897153 464571458 557806359 235498055 363446794 520292222 532491712 535710513 588694419 718567167 968124906 599482774 841364291 83427770 391781370 666557060 985798642 543957525 938576391 112752131 189987440 695447917 879231846 609555375 770111481 396218946 585802560 410291883 855904637 471479627 829832307 832898363 934606690 518493374 842538019 857857463 900217212 563906503 724743984 168669061 802247216 605951503 727880304 422850308 696304436 791572414 951918238 868932043 995917657 725443222 969889352 399439073 715763362 396060244 591953503 906416463 938140898 74202899 680706923 130348631 775920891 235258809 921313168 741280763 741788544 564402302 663159113 725238791 848182528 344900745 356835526 178956792 651882736 405456463 875295417 225293170 788067118 943017835 965318854 74114533 211658624 704298926 826730358 544376585 795769795 371816847 560373219 416140822 987656043 848837854 948369475 804104753 967905286 174544866 665870498 862442870 977594089 267715706 869484852 744583444 870713725 361785856 918359500 381363043 444263165 629892205 695786406 75704451 392432869 206526231 260906138 827225876 989927971 126805030 334833981 300676431 612998402 377306221 710489436 491023590 830106585 549879880 811815304 251771167 400909859 201703267 293916927 800723238 990415934 19328594 169384226 283346071 544710224 281491965 542185422 855547341 955320957 834754501 941564120 652177642 891643103 564581618 675276554 398831890 425690470 265380794 681140306 425341874 638535660 416916815 860612667 65173756 626213053 25189856 826911977 397858229 753032391 3740142 456104011 174415305 840841092 109550301 600357691 59719363 451096286 72077694 191141182 656795827 816526735 838001355 912509158 624001235 987514217 682952295 683565563 810613886 879082118 119931227 963375391 402806696 980770591 193855109 616423812 192894547 221602711 397015338 448566824 54734916 261085912 109831444 608525907 769739474 933173964 359214848 858118673 477049242 875052522 264615728 428659115 767206684 784087650 730896560 934442091 377662019 469661915 556414607 875889363 297404195 424635232 26510764 986935970 938458581 966764016 580993153 626664537 606100753 683848749 455700475 654186041 357741221 661073893 814777196 928952774 190994277 335439197 706143342 954578183 265749173 890090719 416285855 528850782 182461805 854991406 838472019 957382587 714105039 882068136 324162294 830940001 866642687 998273239 40635728 275017235 688828064 907779048 268798684 323179593 236324250 689451521 11789177 209302806 588711588 971627551 587180699 841053392 560578032 711512134 530983743 993131622 373224195 405722262 37359780 294549465 690261622 698578597 880869110 901652758 994886578 994913892 310347644 423930189 75304693 905581101 239776371 392583913 362746235 939593708 106199126 291689356 721202999 901319406 743211593 986829048 668154521 671414462 141656427 453136472 979325240 983014006 473109 869097194 512339755 619004466 119119434 410370009 178349452 510348356 541305504 606981262 135978572 166310479 329868931 666056669 336256386 475674474 132613880 323395300 240742268 831913862 699277966 872879715 915541021 979079069 33000497 748544571 73019907 93860554 283618979 352921605 900957748 940989987 22335601 717184098 794722820 819301664 934114417 990904070 119203740 151320326 621914556 971194461 645203102 758105669 612919963 667057023 282895986 850966310 45841733 904053280 481672104 573327316 713477469 852655751 908297855 996100691 6090975 819494579 915150767 955581055 587770392 862816237 652785563 953492444 525398204 793715442 342852602 898649382 736678021 768396587 120930900 939331893 258339397 536807796 541721552 608874375 110339854 541368883 316549232 963439634 138236199 823254853 1041910 690417206 784692243 933166971 540123853 796856907 114500650 229995335 740616429 956143396 379944637 577898090 323452880 802165501 807902262 864752294 584267748 849023790 322007873 659516539 121796666 651820741 671804709 900103946 98733975 799817070 472703294 550380125 484110724 548705626 369695123 406160714 810157454 907312508 880036552 890635183 417842262 430964518 543085166 901798107 825098650 956863130 305120632 578042113 276576531 886491408 198014710 614959650 305376275 568149670 180678210 309734555 256873911 544233530 993087148 999446101 582849261 624652932 84554941 969353123 752335783 825487272 909797374 911365518 545427104 982945739 343909757 808942015 697117927 707944164 271452905 560219919 577997123 767671529 506217727 874768524 695713049 719508237 338245574 908862809 939726768 948878143 91346568 142042218 745551694 913105041 880173467 955317504 689653920 756041241 382198430 451724555 131160841 880510193 820858278 919489105 841962672 892627612 614982813 898685197 232251873 725034439 668781639 979908136 250443899 419703966 88247621 348459609 815583024 971192793 556940384 954472105 246879653 571385720 176011849 265417924 680267579 805929369 735475926 821229958 743436084 828545489 280841837 662167076 949206422 970486929 759372270 895956611 105617581 965268484 62828706 943391461 112650 501565597 169566537 896066887 360881232 661162764 492986734 844970980 909444187 996515617 408953351 564065152 332404204 990201361 866582814 935306438 480086318 805266169 558933379 722275054 608942366 931675199 595106215 675127668 832332569 948895247 505165269 606870996 377664381 523578856 198093544 448063921 545395085 612001644 103306528 599393957 142500852 791570237 382870025 838267843 781854269 846148441 979027893 983582550 807677128 848305944 125395623 325704565 297983558 813347524 556781719 666314814 778272391 937812745 390740919 479704599 689745898 940185943 669421365 673520700 834915742 841731934 348429931 700120843 489274808 823282415 37557165 950517455 248288516 493338518 574367073 918178153 919425381 933735469 552005831 958643685 170846721 560619791 847409523 969912878 382591822 482555329 463999181 732008690 385057513 663514815 598552781 709449883 311428656 464364843 366955930 695646446 100589162 447921591 680875965 905232962 216965951 854165077 805591591 865346165 229093385 721874538 441049761 529627678 870638047 933041387 959197271 970195401 171854680 878749116 972088350 978360693 195785617 500432903 177864567 775461096 438364177 612034390 837767006 918282044 188728834 760043553 838243797 975354866 451033221 733877855 105648389 772902372 348545553 657519888 940115567 962163117 502911102 717460451 845897110 966413838 734333340 940014981 623184863 836849011 777304961 908521123 999301491 999748678 652356091 753205295 98388756 192435325 589524258 785477918 119904937 227501256 249526538 494899228 629963923 807674603 666146767 839206288 70690379 279315824 243580734 393078081 881991726 970150400 437264125 599185351 839759581 893633873 843668876 935429616 698807307 899038152 212950482 772000604 108828182 606428506 214242347 306145710 109741315 649308237 146256776 217418557 839655351 940805713 944982773 946477805 800319496 963027531 538850754 650256274 982835612 993334921 86548396 162948490 966197086 978105162 9246965 120778758 530665358 547727813 178172592 781811365 474242398 619453777 720208357 999794587 308883907 965197660 820765511 863372082 118761832 249376675 317362623 690075838 130375112 278132405 183932232 452179066 496906290 964016857 189751235 414599212 641212075 809275535 574050417 587327551 103288739 147631585 94460641 173179896 481134820 810539828 285164985 844771056 655068797 943505347 53879849 907553905 806069653 998990972 942967331 986342002 807915002 991200691 271685307 521761061 621361425 699720043 189016883 490922639 834578057 915221367 194804658 718831079 533171540 938063102 609574670 902801483 923213340 966833372 808108361 996194886 43515927 878150755 178816535 828052879 338562288 385723438 955268607 971700053 388586404 944252679 336566429 388551724 233915778 614217066 664996061 757249248 309183182 469575874 922971199 989623846 483908199 797779423 710689071 977707456 798158260 798533334 504547790 772307399 466333634 512710189 974549683 991881798 780322212 885471862 342184022 450132992 213184737 801786885 901576714 966491309 814089253 885699808 449570365 581718704 194048755 468086188 547586600 840729152 599745907 870447362 175556227 898045988 124537015 156269273 737937282 927754428 734582482 754055172 148414560 233613831 128656894 632171894 231590652 693664959 890900018 939482452 170277961 431159803 423927236 944963283 764682685 999962018 264054755 329780526 649937296 862359605 30409999 162634021 658172784 939407035 983317074 986853585 359017974 811291752 247648979 291356019 329343717 970802308 303620505 563804589 719144193 932382930 796755424 900108484 815762831 837938486 187986001 491984462 937218930 954688615 984332204 994543554 125906889 442865552 785515024 900377847 83097195 709446294 979778180 985151370 245224192 806210186 920241897 979131245 739403349 900050499 325202133 979982118 975175683 999336444 136913160 575236201 253229259 266923422 32640630 917152737 937063440 957214263 173137640 286471703 489490380 603246018 550026759 916869657 327152946 444379001 749445057 900418679 551038703 731657039 953634262 955608317 368040062 385381409 543807033 858805692 865786424 869322528 582381650 898092437 966754277 979118567 259675340 403366147 634525491 755979312 81702672 340423949 73161460 290330906 152602097 338723731 556791270 642933181 366802686 805721648 895618284 921607938 530293741 696802609 287411192 605254150 7278504 900303457 43383302 119935505 678219829 776973614 842184253 848855762 407780227 426168496 816396149 990690423 98212686 500534702 184930132 641199455 883371310 939827820 68952121 342600718 723453658 931072272 558313377 925539096 570944268 932535261 659157405 707715323 825326060 832267393 417960092 574666062 309018927 439411113 60076211 845716892 804629055 898452822 782565245 892190588 584030647 682694407 9049332 821515393 682942757 944590849 357242747 933646280 777118138 920432831 60877607 140638908 427477165 581216230 497738744 724678613 865259768 947097456 516537180 928495201 330852582 450020459 677543695 880528203 415891471 473433869 864624780 878206975 390667640 533406825 870944759 908848499 588900580 851973531 250342010 430397301 356235608 712905875 289314982 963241598 249803921 300998401 365964807 881205944 727956872 873437515 206040028 275688182 932498305 938057126 194740302 202270086 223911487 842382911 485191615 923396029 49455850 248795247 141116403 972666677 272363581 513302498 366950451 950196568 168249109 242314841 956684853 962656395 991246383 997913270 27812275 366875567 904623830 958331087 912216604 939530757 970909036 992464807 818728484 837677694 706686201 735957713 390784732 468818840 694108807 854654105 853615654 949132552 537045807 879789905 858069425 932503138 767126690 820608626 579970617 964526687 280441682 447636857 417862448 713866341 710239613 879897602 812713483 981574323 729784217 813878972 586718332 813598806 887595303 938402279 848640329 913240649 747040163 821850971 651953691 674797988 518538145 787802225 121758409 490823088 84398276 105293257 137610770 842106167 717256061 943467353 750177737 758767041 232730944 512391283 666135105 844664437 381791021 900922162 953566913 985054939 495994979 664269558 550811502 553020914 68259391 826788074 466794134 853197542 692688348 997423053 912068641 916996633 877930379 994023176 432357857 629642366 159752955 414621533 928942330 997288928 933547595 942041436 686051145 872684104 71049011 395215211 688973671 706593704 341661437 347002059 59635632 450315175 291906662 512195355 539470702 851044523 185232268 649059354 926307651 933778810 795230564 881536344 535760473 911785537 167177132 482705628 19886784 735980750 17422439 201105725 114329277 872012728 106513202 138893584 316336298 322069697 704592640 808865071 509623982 523027304 811265205 958794146 452898175 459783450 155077022 172395384 682011646 964334202 757898594 866005319 914390068 992783346 176669292 515908743 433744702 718539282 313162842 620239404 241010013 937000358 483691194 731880562 123603024 798920604 520658292 837901166 147880376 552706447 578226656 918448655 465036889 610304702 195233869 267758509 368789200 538342220 153961193 696024155 619060318 849046677 724661584 767999973 105755995 745773881 163107819 208361178 250905224 526854567 395936503 403101651 789210926 987032159 106806458 588677657 911805585 914990287 611021470 798153820 827090582 956680633 72215415 135067159 596336687 775814471 540728719 866846416 784634385 853699741 764299932 895382929 158198483 445035402 82889105 561479644 995827889 998976858 520355587 758616603 924759797 947285785 749630626 873876979 794844223 800193512 466008596 672793792 173652127 797013829 377939265 708397278 50637073 744411069 148285684 627292445 295813016 585467155 642265941 932986082 132454882 864415077 197501725 965498488 677989642 948697812 280566603 393576027 179145147 529177171 102229248 194285328 343669310 392619873 961226896 976159870 942639431 993424821 740282171 816930830 398905561 630474988 915284223 954823432 924398205 977627573 166722239 206781453 783782372 801986321 19159324 33245881 164211274 383163139 828920745 935149208 712879037 978827645 90608252 517468368 49131619 443456272 941989372 987659281 294556963 678263763 151507379 674462094 908766341 919912852 137387937 850758818 232162426 936684897 986613236 988879352 418685833 918021241 986432406 990835990 100583966 158785155 331225574 758877487 684971265 748529669 789169451 999834203 78396664 753392891 755787944 990532167 47725409 66935388 213433223 889382390 6848762 71239625 153507486 801174586 44410772 947342306 378574255 805725807 191671863 748132270 120549896 580200442 371311580 504297494 454798103 664258602 1423075 111449491 315012062 731310057 408693242 960126792 801792941 889558562 392729137 580339655 525718469 893340985 314655597 318337087 269502872 716644441 159835931 327267388 317292097 971532997 767887193 834835074 94859486 300487561 341009136 742683788 44546654 178514234 602133834 831040006 466692825 552444739 32385834 136152288 81929874 634079556 48064176 785718949 872357255 909416384 698200700 892148546 67823317 349705327 189075431 466956101 99493284 170135510 786383138 806131507 723888974 943225705 356820396 605034899 778887419 854804955 926496806 932482267 320917239 860974046 900087212 938560672 63715406 436786360 607950374 618337102 859089296 914671907 541720425 844664284 600592187 739730106 618898564 963240724 942116927 988915726 904121294 983086177 324684343 603078024 913591678 933496083 423469103 979787579 979321918 992928530 313571309 481745804 871156999 999649571 9030466 966545299 146650556 798190664 594786246 916085385 783509468 786198236 418772511 882032589 574189330 857464539 622145558 981855154 986292323 991801268 22728453 82986775 757165849 857984680 636563657 896945989 693772241 926299134 171175905 895304230 665890198 900178625 995548642 996739672 963525423 999160170 80586517 869355037 845775169 920052281 538198062 798026181 413752781 868920658 500457354 630222276 44297559 450439124 542376600 820210214 381118943 468929220 29738876 780579697 114970365 794648689 573100320 615284059 460886392 463841874 444012719 888799822 97284570 788038701 248085489 768789818 834941706 957569587 888465845 899962007 761572571 896194037 47559804 942245413 783547086 970062272 89381847 753481599 265942528 576347848 781451380 905791886 294702224 762898746 960873743 968822674 283974382 439519192 595830210 820179442 729145310 905288405 774464048 838064700 856896735 864963650 193351658 627339842 59753696 454155897 113932304 682689304 905476963 928674499 204591846 649527694 200872859 889146577 843154678 922933922 414796771 662230491 827968976 965910606 501386656 815862345 688171400 909984499 902557966 978077493 844825021 872834991 695344382 999216748 654615206 781492421 767904998 786808293 396841698 965087773 426703883 586890074 501748300 873156296 912392 583393296 116977325 299014510 676796745 765218385 222575186 498126552 980150324 990819942 594276308 898074537 490782117 633005007 665867938 818788880 279468537 303179572 754493755 760876468 104862151 177700262 738384714 806950232 807870369 868480860 566307965 722652975 283391813 702686214 444764154 773104084 463535119 565551750 694321258 819927539 18338049 803842192 416069474 573245039 918335896 940492386 58506686 60712599 488154903 809180133 318653964 544027086 381696219 911563391 932485446 978379552 972136146 979100220 831707081 985404957 294066247 755443914 934668201 991352475 135992471 528054918 745357394 897266518 58951617 249500032 209236503 263831013 22767235 45003485 56934976 981979983 245969731 957848655 641841192 710432091 510207769 956119782 938803260 986875929 798056856 964605865 2985676 96868095 883437636 945908821 9349102 259945814 854267452 962666165 431159575 925343750 830812871 985156491 233111877 596996826 345283786 581154732 374249551 929979621 315876455 584574980 524045603 758222382 9118822 873708571 959929379 967941112 831933382 962487940 806736164 845135360 55912109 98163323 932348317 991428699 255282326 495177965 844160671 994520540 75277402 731470875 115344551 731886091 936948407 966256406 545936555 678285713 250097212 756720452 187550042 738300250 611791614 792818257 359465621 803203305 240017808 402038725 260328427 816916518 43260771 123358096 82081514 938164844 996859095 999767479 968205821 975713070 432567013 735928026 350256526 837589059 607327941 907060328 140668276 353052955 451975412 531128756 17669141 42084774 899363294 942776020 401318524 894887753 507498892 552496271 193138632 362372160 944538445 980633472 142951457 262217171 158240577 692856414 702241665 832326418 659602473 968234314 901707903 944931819 634572659 765057156 655191843 892030152 547141970 725762978 367354165 861317508 372879191 941408319 824061809 884873397 79236967 757580586 574399344 654920870 561125811 758284234 900301320 931723307 798388782 993381007 60649850 165899569 772828876 838716857 16618459 624368871 353813539 509538100 870651569 895649863 447766332 907835648 168220561 387513188 731406613 921826020 926258815 932901683 935711217 980108365 173489248 393604960 462391995 824367171 534234206 587059292 267214389 941271516 190522987 362383112 433889890 772735624 119604682 615690961 725995726 833626960 925100530 934360274 742719084 866658473 604997570 892601215 720217165 947204662 10526676 770784247 939508117 968381113 868051459 933395697 772381150 962430345 725591397 933357475 227580875 406527084 775414683 944890837 300267077 729085173 56413190 953690926 686680874 977545971 465344590 626285895 504128559 572293479 929295654 960224604 269361043 539651207 568437205 828653976 165849879 381784795 170650754 249840400 224697171 756888249 770431557 878670133 961661022 987949176 5202278 815789844 63062190 671526933 812599749 905046828 777089822 793942010 177986805 347834888 292105838 845375902 772832142 970973397 786825680 932578041 135742407 369168441 589810932 671263734 337922718 901687944 75022465 597019564 437622245 508064036 250836038 628635927 755331217 988841537 148367356 479438386 310697801 490917995 796391227 952441922 771172719 962791453 313975029 769495661 160883976 922358590 22584278 990009623 490288176 947841079 736646654 992591502 596814936 818489690 785132433 941134268 128778771 435676936 623720290 763986282 696465861 947470495 259227497 763431160 174623502 190351925 624845683 813362414 366316622 927371175 442978464 642502530 674254901 985142013 366882467 659104398 897407872 926968281 824880728 837966204 445150754 486374203 475217978 841467728 408747279 435188015 245642934 608832208 754445197 784772524 554245042 889937794 812055287 880770558 880282101 974451679 753259151 889872969 384644659 695677118 733712065 761915066 346065837 577032455 238666864 839285573 154496192 747899194 750802236 875375989 480581077 718140608 990500024 993306097 682165966 834299317 978713616 990293783 623833854 846871418 630481015 633279117 971918235 981613775 967768480 990838517 132184543 538957716 959763650 999947662 197896691 925736208 807255745 844385128 924850291 949870395 196524020 342789202 744754281 939672173 221974806 671409697 270875309 336774417 29345509 434160605 142403301 612354791 748754206 752348455 344390516 401906096 501599021 883389731 417634799 824283922 426157895 818012835 172270473 416844058 537121920 726418512 819275740 991543253 710678231 921496416 571827288 695318407 280694457 283013732 771481328 922508549 666087225 752666052 679697449 787365564 981727600 983374777 242037629 885046270 63866575 913609734 298304819 465184757 287395516 546421533 745498454 925763292 206299046 433329568 152300303 332400140 335146248 735658250 335694151 757821981 98759336 339812069 392868584 657916613 158979531 365681476 184476871 436779827 910823601 944849750 298638880 385156077 582639206 734604526 747554249 963793467 103754976 250057123 847262974 905822572 407037759 554174165 836835922 960732392 980387127 991191238 430628431 768477385 406128921 627005853 355611401 394571090 474198959 728064454 940544618 979129261 254273769 355825035 194666744 500659909 816766880 980008373 859498982 906519742 660663998 951033928 467539414 621603812 853097588 958167737 974203340 998734322 1586933 357752633 569244418 628643972 717721049 962677988 211205303 783484602 797058092 871281977 497179062 685017072 133774271 681472727 893012976 934294203 897203782 949307004 882475086 962386771 569657489 928016239 149776403 687087644 561437736 896830768 121688075 988949451 312386159 345455021 669631552 693867349 999691571 999820179 532171515 665886948 698936365 705511303 806059103 878552022 998552910 998707681 247866567 921857606 14818701 849800059 335751453 892692025 247277666 481403513 473348453 537704836 792065782 926702011 28473802 259087732 73424336 604425582 605764157 842334544 594785 914404699 287842623 621629547 451070495 874167045 648977518 901033122 888863557 929958442 14645114 797493461 127513296 884004160 631945045 754911976 285917489 702970016 165546413 269231246 619815425 896907380 794259033 840933871 866486120 877536308 591359197 968368427 184554079 611535623 81161472 591774288 805063119 920107192 954089857 961083342 888835080 955318007 488585246 900757741 403251569 491556540 86305345 160813856 209382342 952093264 591596217 681829104 352403805 608829377 287245787 445984583 169216828 535246768 726395253 815563877 548249081 726452509 8536762 389851957 973355051 983911859 97425027 498217821 51691609 541604442 791206080 932526030 618351567 758826892 326854206 745956557 304251141 690917890 543939622 604006083 217938080 542498760 686726415 836710649 164327504 750677422 481276734 951914354 920502770 976312758 447212115 503798794 569774638 690065155 568524340 899624400 668443821 818884819 486351012 507999041 354121275 968216549 681358107 899148816 642871910 942359714 60619815 261517166 616622492 657715296 902681103 941995315 28434870 401782904 972223629 974592719 723131934 923788838 97665046 698742547 378589251 407685942 561903815 619851881 720341122 749601005 92757635 692558844 673960134 929195240 409872985 861664462 543500523 856730499 775209255 900827585 551495125 733812449 362688108 505201697 362460465 687438416 828334986 865201715 403372193 679668217 804884246 915837957 482436749 832805302 781304124 875611321 804694543 895358184 994560598 998842139 924234938 930997741 81363339 761943280 313558311 501463741 127434752 415293548 780535567 900384179 14174575 409136138 562285566 630587761 582040248 945098868 682628491 772474376 396045618 848298027 231398754 714396021 287750489 628007419 215625178 983181451 448383165 892043524 399510963 517417785 573811964 803967250 946495910 967277485 122558568 791327178 130969317 357622264 445573735 628616680 435686248 543253025 236768300 710500546 615256561 778007773 896715864 909750825 732939822 873051244 644728625 655063311 272106446 986804979 417174775 604180761 102362563 836158697 93286837 892619827 160381158 292599307 259080878 625825148 335557354 496605576 108323732 335947851 325968072 909500936 889748408 954016996 462310169 562038261 475737599 724939260 505286218 770939163 622391959 661000865 366743155 879044370 831698437 874992506 638177580 688235514 75032896 193959326 419449565 774017434 844107661 865207971 231096671 693094905 676678816 994779021 559610559 675249543 877356426 937929506 670595950 673898162 138669106 818447771 624815820 683796913 963812009 971048631 877467532 968469006 458742325 729363296 353669704 499883493 278102963 708788725 428737442 808109025 406962458 610996171 667943804 832182974 207963005 871808667 630683553 948330808 984862174 997374498 993872670 996440390 802806404 989007052 100664283 403943028 764071162 781306281 652827889 717309491 905620112 976322152 448604859 548623253 166977423 664704192 861406629 870562756 68521222 633105053 892300935 956907899 240543367 575372986 183993469 596941663 124119716 433171966 700480801 917733655 618947440 853128788 675749717 918278153 589178902 796347638 413830581 702607207 592188251 833766507 322928594 865972890 413413611 794688808 40632243 356603394 201690429 398919025 554034185 909042400 392453459 813732921 877868152 892857111 318480400 974094745 763064057 948000620 494712149 538409676 402252726 469144632 996967238 997412564 527883030 606998051 949199268 967303214 199125063 607113725 388922772 620421617 756209369 805563976 995988873 999411686 403529204 839655167 150035730 175011043 771017236 869893408 468775788 501253365 80668514 717013414 617345423 937473097 973801757 992776148 524054412 571926076 636688217 692260518 353716252 916546968 358975169 674754318 396964756 749337925 549782399 725982152 752360560 801007484 661358661 727808180 427079882 492068031 835885289 878292524 557452622 607459717 500538810 887467708 595795431 887076239 30782693 311962646 699395891 704722022 957221023 958289721 958716501 987067196 606051953 847911970 37670584 515990101 83510150 869525414 938017368 955047211 811958689 851124449 937142469 951489448 887105247 897782694 512562320 744575417 723246841 910542755 449024488 758454916 10162844 132661750 396200409 993321982 361034838 583420791 509767172 891704390 302001957 895074073 977841221 994141886 604341038 871313700 651072442 674431480 438979931 662198764 988890110 996254889 457717980 877545473 542574772 548935718 293404098 373536525 981705121 985553852 539591619 804185218 830163144 938196493 233372605 292872066 220834453 524568336 4471433 596659668 40839480 408230544 663271707 788914679 343520472 511683582 484833455 809928586 138727640 728230365 110461477 660117636 917574995 995826304 757260507 846198381 713044961 871951258 418149803 577769313 717888227 779857169 256000793 808337667 524368572 873242670 348835980 500406858 159066773 974411643 353596219 932472299 700097265 868004635 524034455 614873390 191221419 243023597 745786133 911107208 796734106 906364940 227557132 322428795 678008561 683220991 210100511 596237328 650771529 873277518 920939143 972657924 11090225 424574837 813838158 835109599 730552537 794012169 659049461 815085031 926361466 986829639 429591003 815259797 597342187 631999680 915597076 971076463 162013879 615253590 28121313 244436764 656859953 848945749 870983533 896899782 430904338 652444881 181967485 302400871 704511228 836664789 698912683 979345828 829857001 852665072 567893523 928470470 839409845 977559538 280921922 299517359 881530392 976912480 131411181 315960810 508992890 745121013 290636230 294719351 535459591 831148133 651539716 855353989 975896164 996387494 473209565 593473799 428571469 664279917 66178643 467403356 733488759 961802457 376838795 837761981 863312739 945237023 423695650 767936880 946318046 996473613 475173161 549969722 910460444 979009244 590910257 794883096 84557523 612725084 673821348 701527969 273621348 941174419 279163157 651861044 950128471 963628078 896254598 966895730 483937814 767684508 127949226 466619150 641537665 864969409 342056228 640235920 60521435 828703848 978349386 996247030 297399292 413768421 38560262 482500669 666061231 766068532 587018443 597007702 74185726 563255876 189865002 392648664 216758521 942635401 96020236 931248599 14426217 748455224 892466757 977618906 823918370 912394254 580290232 879835666 22758143 879238368 757479372 981102817 278360518 429754744 620045097 646910003 988225750 997501677 485638554 771521921 283569608 973069973 672990735 812306810 558674202 748579175 886864397 922754152 860636114 871308381 522619956 895747512 782796689 888590146 960273238 996908536 212769102 921464920 348590664 498364112 620814537 946674395 672319853 925089904 616755613 761899485 947921201 960872158 476349018 861387856 59804575 740841257 968220812 982410370 44841177 569678697 918297287 969894844 396920567 989389689 877931427 998294324 472380506 865510728 239718754 554858199 839257970 976440057 261087538 315261427 82394011 851980685 74616106 224658681 627609600 838232125 979776984 999758072 972599890 975193801 604248325 941533600 710729111 824637575 259607190 577521200 976024386 981305688 282106323 967936600 836381699 885374104 47213397 602653291 300993476 762331311 820555295 935910615 659664573 837219949 364712991 442869556 936458931 946361906 932578017 933692641 577129421 974116747 393349625 992957910 286972562 479114492 195614360 495032221 381300782 431157922 634447779 758451399 24091171 372047223 403477340 650523196 425730143 775813107 744912735 816523687 277543083 912871336 15343949 145065797 878891077 904558664 520226777 628430347 173278705 862852764 287393167 503892018 611063599 911259106 100140937 680170376 815417169 866735737 66600790 82906010 447477975 884586738 180708361 420164837 677851761 743226299 909637929 956885478 35675274 254270721 668942310 864756003 121042497 715178550 959300658 984454011 421360258 968814449 185289277 442587615 438490511 538664609 676518163 860243395 415484789 933977888 276470187 511583576 341980346 537050442 550467750 989990199 398535691 975104452 546915400 626540317 831377399 841789733 984306552 996152209 736746006 946492870 429313992 687811326 398765806 624112539 400880112 799208359 363286143 534818106 137381933 525601010 20720949 925530309 864184633 911611998 797798867 896621011 620148707 850471279 798182484 904018596 574792539 818163189 96509255 680236724 414127766 605040582 638373086 707492357 48328832 101353107 633726880 790447561 3525799 739531903 261901537 967527851 376225294 534629059 875048477 986895818 732128650 784513572 578459404 652877522 560014015 764883054 201693588 392292415 824272604 930390884 616458367 877753161 998792125 999085446 825245657 986300361 114606124 405450704 587634780 739850742 201398814 406401193 840191593 923169264 125304588 544507325 779002668 856679790 422509199 781688033 457430187 906263592 519062918 828400023 429429816 862293116 278095892 476106716 201259460 985183005 375710086 386684986 512412247 622849999 131480139 372732818 906801022 943164748 354030086 904935748 158516617 603485746 681253934 849781512 387327136 991068525 896083399 922292175 525550822 584309675 940257147 979831439 798217424 850974201 426450750 863688384 279296930 655749776 524456153 534957989 418971487 740617719 415679568 866920204 206897752 368675826 118930895 466945157 492252109 659821868 463960194 754706383 129133397 630074695 382784832 495975679 939647245 954817513 548866161 987915529 706828713 901638095 813743482 949858859 160228000 668650931 49811539 427278335 397574148 613305518 49166376 433346408 4492985 767003271 843499380 896659167 435728898 593504587 167964926 911056373 544022465 926884879 466752628 943042724 306898838 543530247 501987540 659382520 613019245 698616617 66013644 862519306 431243113 823849909 356884822 844367616 851502579 994684385 340825037 826304082 167850796 567630990 552580829 645735337 925452251 931330935 624715718 681840704 440808712 904653412 207422238 307375188 103596277 373879332 529077609 568569810 384899155 718134451 889854068 907481038 540600600 933098670 871641920 891490668 560999680 873686629 991137699 991967354 588964127 959642663 454921311 556170598 11167442 678893866 652031543 713195651 827427512 976186945 341660501 616089042 377770498 763683704 848285619 906461254 477534130 579048901 88499833 459752822 247212629 754098737 66437439 235735040 675109745 807959536 708796794 922387566 448975881 860884679 75284026 318658203 291626241 634947566 875194947 919033016 343304900 359829467 954245829 962753262 98640333 388075224 83370378 518702011 736311898 857368780 424173917 623642036 787597605 971025505 833799148 901071454 379567501 938343879 634917719 654161739 140734302 532053787 382677734 470404462 93419909 335891083 140369751 794226961 335443682 514808640 934492231 992262307 289043697 664553470 870576404 924393121 560343966 795960381 998797944 999961644 182433800 958608280 147914506 587720144 275869007 641412289 831580099 963470906 585135369 732087170 154138404 219128187 77305118 351192470 343932383 924216354 910322960 931287325 198987056 844879652 964215574 975444685 860481690 980632001 551535739 735892606 290154409 650171699 950130412 974279506 934040662 973678345 890161770 997980753 455559223 555536615 501039307 524395036 472009564 880100783 531675921 691874422 100239507 558704718 683842711 723792857 2204934 137866835 307750578 434009349 223037460 929195540 986655633 990408077 972670219 978001223 963311690 987845824 81045100 124577551 706355920 724030876 34117994 542262220 476572325 832362551 851634278 963135595 623656809 957786836 804291850 948109566 558052689 697668362 766278023 870786824 891234189 946255499 236803020 295748284 292130660 855809911 411368080 469284608 91028898 215998471 14257880 677774557 871166686 941135474 556472058 906882326 15965250 257702065 718998131 982152605 176612868 846139381 442005446 784501758 449229019 980705889 154888313 303215980 637820158 721486087 216932456 949558305 188272461 215522115 720747675 924245799 344825160 909443206 596653807 694809521 989289149 999561282 846471921 894547299 359312808 621663009 489971917 886756834 905753996 961314080 546593478 804892614 980826142 996984183 817532216 869053068 118281097 748194923 571448808 843744236 192710986 813235946 416307333 949691623 392910740 465094049 266634486 969039258 250971750 254940152 115458814 907261065 683857273 742365190 467487131 934653365 656834671 893343448 322429079 548069852 368192840 484740443 80492245 679307319 799969840 887402742 753820663 912832889 297255529 417513011 348387169 766683940 398084030 931668426 688021142 980520109 396099418 465879224 754794478 757190028 103798256 392712153 531992896 718707995 756526 198459738 876526782 938338470 829596646 960508644 62887209 81424700 644451292 941206978 679690688 695039871 258185568 854791740 833405924 982316877 17985198 134869254 302284728 718738206 307489820 955189468 422237376 586197581 727608401 921901988 957908177 981426468 260021875 427463971 529768491 899148779 742177498 816241690 971719686 992853488 430723926 847516793 109755990 314905388 309981 97758377 437760681 787401577 638379773 792383574 745389101 782596085 900483908 917362717 552380282 706042231 249103592 877113531 43013802 925683039 675915736 691524880 56200070 589279425 424820339 706279569 817342933 937464805 355706586 827452022 972342815 990632046 851970333 857431699 226685103 857127559 203007305 307207845 761402323 856087409 491262672 694245343 179597278 532305775 763177573 925237642 616150065 959288943 244194797 630114082 927493105 978541290 731997043 813680354 957006947 985556969 978736879 982797110 304201989 773804798 635325374 645505697 736490253 994956854 76700000 390671527 316601891 360950874 965172842 984483489 210482947 401544613 533993367 717391877 803425886 804507670 867697111 920308585 297347948 489603105 895077320 916370953 235167433 746654214 223505155 394166494 994927294 995595359 432007545 864203570 891940359 921050304 157775147 866524707 136598559 534277182 594207274 857383294 285367943 577323550 390873458 672621657 988710017 996454002 319965850 566896548 418583108 494839613 774224159 837897641 116096767 469202753 113209231 228182392 818032048 994838863 477925039 884095334 990391898 993920828 701226425 839889681 395222294 551819851 78682531 772531947 798637128 886356000 41527115 516825355 498231555 942496698 552299534 769403351 616107283 689171843 297902675 522642755 167352961 268293780 517696072 771784561 717133379 992067118 441001907 904574784 75138903 214852354 590740834 668114353 428862392 756507611 987679145 993192681 577927094 610846727 771924638 804300978 712590551 882198275 830884133 946108026 996250834 998096823 500491043 692047139 539064362 636134746 100965725 281492335 590269676 928509120 907297198 947387239 124495169 845361828 416682067 655418696 911156506 914126254 264757549 509775891 907198306 947541566 8703272 258599635 451877776 528648215 853479585 859900069 51515180 534564101 529247781 749537546 432664614 685774927 261191653 382029748 68694682 853164073 467625526 657909971 859501951 885767514 234442165 679379131 885078053 917863955 351803586 842554127 476878350 589971813 95577472 472890876 258235445 941517515 47442050 617049355 450647912 675347256 891570319 960322441 57458819 549215369 704222781 760531198 317005636 355946649 533905354 801441639 831853029 840350662 806235701 894713837 414471421 949342416 244068501 899348577 112953580 341233986 772060576 991651834 907515312 949084751 266617006 663634462 288638101 656879473 438888313 913119104 45905024 497037545 492914873 494907687 247913045 747036077 20323101 897039743 126926294 971345968 486106183 674056916 983806195 987725375 916898099 967116904 112510175 862621296 39131728 962336894 295587234 537298122 977288179 986398102 596659307 632785954 921043158 979467210 112361850 811913392 634028189 831665962 420408762 955215509 395174801 709144038 620468942 669839828 94461590 543197411 862753656 916174866 98416413 648221257 629482433 910770489 871854851 935622367 395896632 402423705 261204415 450666897 566176249 789914673 784856889 905924772 417947720 609398560 44596650 294797119 881213778 969346351 294237091 470160658 576813837 929662023 52289773 853599545 995117782 998955654 642469561 940413879 195667850 916529063 153674649 274945013 199204648 609235144 218426771 586098938 79937649 123674040 480326207 928262028 174564453 806203943 648914926 839620080 906765449 922178280 165661679 226871942 512805066 881673407 788965773 809745086 307835567 321801143 350463288 516320963 767854752 971740391 212162660 971331764 956635099 992150169 521593707 986523639 196153093 574164628 308975644 936182744 264124655 439042006 443941271 672259027 888412455 901326890 192407779 409977175 54804691 463092798 552891310 870022629 137971526 705911377 897894470 946707994 80147843 887211631 507159612 665112892 501218396 952936410 935169523 966664017 548292575 776780653 694822683 984975479 276128497 879550199 331708660 404262602 732365311 899773488 136875927 883519661 73062520 542715784 454392865 534968252 870357419 969024096 445195157 723110911 389958591 595599646 603516740 942974843 665491930 787155286 82136060 811806188 351469687 592333520 511045292 721292358 845566222 978177166 778631473 977579647 952745335 977058228 987962006 996895759 928424474 996350217 283629580 412615312 427923462 524435705 286395781 584013927 163211673 661752493 766620470 943775687 422054355 529564848 537490489 865112661 178123085 229729427 580267924 617970182 596628236 610755932 951828377 974863763 922882914 937150799 43521780 755870636 486546610 761430999 318318573 383027611 439204899 790664574 207078150 294507965 868759958 887798833 905411480 983243735 672378411 852921948 265759601 888000947 54300805 604013339 571434523 808894012 997710257 999513200 166306392 216714111 66479492 803963708 476066026 578348927 724961385 844637961 18894556 588654160 250056663 406956835 905231706 925528562 498216678 908245091 452540244 819914853 954705181 997867736 969987607 983677638 578879454 734794469 862287575 966179000 785124881 966981534 188401567 386234323 590419019 742575938 925670964 936210760 378786829 995787566 243102955 453316792 6744083 799734240 356946462 580053230 174999854 403934728 53854995 665579382 716914252 868141943 270779209 731249419 166364343 238061232 39292977 574791721 875573115 998756034 989168507 991478231 858849297 916479229 169659624 419220381 894503361 977877449 149890016 683125558 562144550 580785242 772099730 931066513 96766626 568485089 85273085 301333206 997751870 998183660 821056688 912406991 651247885 869703542 140130475 573916715 422204889 479921262 127829246 646306624 15376306 199833252 952554161 957465641 326678971 746430828 301215682 325865539 318223926 413234534 124743459 184113755 802136943 862531718 138851199 778963475 268239757 752202695 617468626 795676388 629187636 910795725 914855829 973950396 899451283 999175435 602942423 818113131 462437009 832361909 318490921 945966677 15127001 703539079 572592977 578278023 519697616 925836151 156819138 659216087 279901188 843948958 81636524 285145806 495420904 766407822 284276695 950469549 88956498 802089533 888323855 942849763 48820256 678072568 849086973 984657221 626153805 918477272 113719864 932163305 374966651 514623949 406507930 996093030 916817146 920685647 59702422 795697297 38376801 456169174 259997930 861135771 741071718 755215943 692116992 920538658 917159239 978790885 659975064 859066053 781367039 919212393 122077093 689430518 753483327 774559505 567821258 982677603 739231894 872416431 381332554 774196151 163859155 852324618 310152197 777179325 83319327 557474403 183168326 324157251 161193017 425970520 879983378 936074855 704937881 756846603 657430549 997644160 551572927 801005240 286550795 848034895 88626473 989639971 128726233 188791211 180008606 211715837 45645997 594692755 305077851 410136661 289939192 310901975 927346056 997094719 927870197 988092141 316839680 559153761 447428491 843598105 724525887 901202304 750651873 936268644 218125013 729251008 21450853 738865486 728793601 750518681 537745608 772245529 598699925 690915062 52604952 364435837 591098444 734485548 343830441 486027264 554891979 982313624 605184634 995924914 253307773 822334656 848582682 905198170 532881442 838346004 295869664 363345193 827004882 961103663 234614252 852264408 546280663 978361844 116678135 945534235 161639775 908552865 366335173 638188301 460721909 887670544 585631428 668405011 753273069 801869552 482800155 830403933 632224473 650960512 851466234 893045716 403435197 795334679 828162383 978812182 1705339 631055198 535400317 764387344 48765725 419948347 589837606 655293157 304399938 855280143 99372552 127967860 258966183 352450585 587495103 800354296 287326561 986589348 18335624 230187897 467100467 539877742 516964889 629189342 734026506 844722472 151020447 574707486 503202472 854291461 420930081 468079281 315803951 758514580 753913336 935138802 36679206 864415641 817019962 929322300 975351615 980916540 585781942 825544680 485647261 901562170 534289699 806650699 525269390 745815142 145309031 550579789 768355401 875215764 101270222 168650422 311466911 922017538 455950146 622574366 757419034 780625821 608313791 813781078 622976241 746516822 979146710 987697118 340939197 981348764 883517243 929645133 13686812 15982072 595933787 863231788 795751832 925856096 105823832 963193350 524993975 596145888 418679358 675793463 583252639 919250537 891013544 984838362 25528340 892414157 535665014 597663407 452112003 932557002 169584108 912566541 35727857 98768829 45726867 290186552 187129359 863162018 247396225 367505142 32243645 456580334 413908247 695718442 385524011 621892065 690167898 993586251 970894756 999151013 748598936 780400208 838434811 906233218 352419591 800734918 26924537 225407212 536727072 629647705 357784161 999919197 932579634 935297352 304306809 548051516 769019470 840220762 506705436 913402540 468017505 818865814 155213366 742519689 728166937 733945220 253756713 393909442 883884710 928851285 968377684 994362885 58910120 576303076 149174804 432787255 29819878 81060082 643845749 793409390 116497156 783137539 643505404 816064802 169361057 306467781 891647922 938641920 728755867 773102724 359017426 399983035 305749310 593729813 783616732 933318515 110540606 141458268 136515631 946727512 658280398 749763698 445217739 833793010 332618644 652454196 443801834 989739242 800393583 933621964 16393220 398885571 452358718 699032381 755040899 894359489 136865447 685341257 209798574 401972105 991697010 996702744 818848118 932951041 242572909 250677986 552988547 573729266 105552511 679074490 992725826 994862395 500781952 513121655 799152613 886116412 743680268 782126413 760525264 919927498 397737825 544413041 924266864 964989930 342737214 423314409 5950181 71862707 839487985 887191559 847482195 929582952 719346507 955422744 394157212 988176634 767118177 960592530 41417240 853495458 767335768 994564180 570122908 701915023 666261410 799169871 734562608 876746435 133581824 665739824 872107439 884041449 934019783 995903001 297037144 376620346 364962411 408233902 940509378 990841005 958556641 988506999 558547297 888787358 129744177 768958103 308722607 815387493 314418307 890581061 333320288 431585999 686526226 768832352 86659382 927805327 130296654 654857941 980657626 986296651 528756916 688454665 887108056 974611342 846692184 847351080 317123894 668624346 348225269 983128215 713436133 997303424 220751819 553738290 33161993 821265060 676551738 987302797 558194980 747211020 98128034 351697419 500092958 549341647 558997979 748644256 165082326 764950411 428587592 497336183 75939437 143960816 38797805 524666105 937626518 988896206 941670615 956635078 704752944 853979457 500787930 746151365 581083755 785277264 844550295 911425020 391934739 477275915 680488493 879162043 493575719 644430311 467716410 541892236 6096980 934162583 410216410 477102118 63325166 485743160 979365250 982980404 998606390 999228472 879662230 931126038 417978115 484870718 371687677 633020738 434649275 795207338 934558714 991483063 913202777 982084325 376080944 524926796 192916495 613339687 503182037 710315666 108413412 837025037 605732847 955567573 488025881 796696938 698712503 813870117 991512203 991624419 664274816 850713113 663587333 800020996 933297908 934472928 643466497 710263448 826408165 945389732 942896291 981303939 257749875 500577697 477431309 492891612 335699806 891685080 551398303 935317536 878118704 920991822 91721241 687879626 950126664 966088062 897246953 994012972 353289744 573074591 475933539 775792974 882560619 974782670 526951942 698419413 839919914 943836926 335965070 408714644 926392043 946212000 972035668 997735896 979092359 993681699 46848051 553171159 384425918 752244938 367056731 808488573 601160307 754256857 893190357 974921389 593510909 616777175 554912687 568389508 754069590 945641778 108184684 432228872 287950116 471979325 141698759 173345350 740325509 899826929 953985377 985426615 657913395 868826011 112170021 904867013 436584576 652158007 118373349 593453736 654001380 822071836 163153555 834057371 512362797 715043198 44849136 616051969 339450494 377510971 369431176 927164128 50996960 409318829 221899368 786400576 517929652 668846041 576444376 875682531 382229781 937700991 802231209 820564159 833279269 877333555 941355858 967495003 67651130 237563987 754762835 909660451 318469028 424880662 123058125 256237726 190005390 636084842 315707234 924313180 930729527 988062400 462227271 794242688 731400889 825337976 253834721 271639520 674310031 842319858 18988302 123390965 66821280 846703334 850960990 956117504 496514350 948528605 767140672 940151813 447260276 961681744 933061890 958220734 664891600 997253078 122318923 872302944 473542274 740901597 348809279 563018329 195977371 468002900 540245425 760072089 715618863 983933325 82209917 350077452 401850210 442092427 998823814 999402603 552020074 558148316 669611990 900813840 974815704 990606261 938881126 947844625 946205691 998491332 335137668 438308949 181183667 233563040 681549598 926372400 666279363 719051319 462607212 463290826 828477161 957567621 307249707 409918452 707739569 836418190 100444539 290734632 420499575 427248804 480573324 654611038 638814304 827566415 958116412 959153274 529544844 649421818 946553992 949009502 840418641 897632506 108524515 942781048 591229861 917949972 721093520 986960060 460368286 690519391 824021400 878113482 440007127 515476204 166772912 167953202 291276382 572228787 959260233 985815786 715214993 901605784 27572618 815219286 18564449 972008486 714546502 798420133 354714506 678671352 847108285 896461327 832023120 938350485 482311477 640492067 79015666 937932154 205966814 608527303 352812625 661945313 869736218 877883744 961285227 969599613 700564842 876893148 169124368 377697650 262613862 685610047 728678466 765110898 265907930 281784382 136522972 897154565 830360645 952501200 680016781 879022446 73467103 880329262 184921500 838784185 950303373 999146533 561109787 577660133 782070053 798658007 271738350 905576102 106093822 303567864 472408984 610713483 585549825 723327188 209811495 786366926 97117596 294280384 593776070 613364824 625358391 912726826 852630957 925629650 372642519 814129867 569063019 901356721 714529970 756138990 929860642 989623313 944895297 972190147 302911440 675388947 564735795 638931533 400867112 798709939 921315580 936239423 655532158 703358796 159787845 213087609 321525636 697612564 490157576 530643618 262138389 971497457 755323450 847222606 547896010 757056863 753740334 951681122 760105835 864545023 854892480 859963734 681510751 742207927 702735701 771884534 482399218 876049164 790766299 978667634 282044426 916443519 849434625 915726061 549446681 999282758 256844160 611552358 184597445 307825353 700808705 898337119 649361818 877708386 132207739 247855645 975069414 994818860 480514184 659578791 42388485 698376997 928988663 952476795 521258368 719864564 618769869 734841472 364301581 611356770 693232269 884938875 912571058 953436473 892231306 894328803 819010486 974660643 341205947 653714246 55122973 451353556 81741481 922354189 201019054 295591742 926891327 941463421 48197488 917948926 868864759 918603752 689310312 917029696 815211559 892810846 564627863 916624832 462002201 747521984 365142364 636237017 797295599 815278993 690659597 895330390 169665292 903097823 355852294 814373396 234053002 730215649 202240229 965452529 471891082 802682827 97442816 694884027 46605011 387585267 294886172 453691021 837139006 862763062 882338128 962907493 256338406 438930468 475632446 963710506 384170250 417544142 314038936 980813973 99880197 760124940 983785977 992101751 776033486 781572411 272093602 440658246 257686749 963152014 831763903 937217666 502385894 706418272 249833128 738719591 242513677 486708422 502297901 532631903 564552346 952015476 984950836 988224422 285430049 918843476 557581097 812078059 206945475 693530519 507217227 618379694 24624496 580991728 796382834 988065142 301499579 755210658 437969655 573745445 289514933 587998368 95756995 405757618 133460551 808995217 398526998 978434601 141183888 638479087 944314726 993429095 132009686 687847550 321416044 591586190 903793049 912758283 953104129 966015631 34516792 245459519 131905884 632513203 177741514 793257520 488807160 495410585 781888598 965769946 641836750 684018488 219452893 970309859 413062247 749442155 858676497 948733320 425411763 451695175 968960443 981815624 909652626 915170494 723007736 928170792 774765147 859527151 807513797 856997164 614890086 750730653 813714149 950738882 869017566 935203145 663569772 755813299 838985658 917423304 266328502 688375611 518278131 628738624 695842374 771471816 980250484 991701030 732192145 843965265 39845634 552161692 247793193 440875261 117674354 959211042 281000822 711797943 992994808 995817030 803891166 940697299 258673499 495492689 726182169 972968998 926073980 981616692 894827085 987107052 865158720 869069526 518181763 945195033 703214023 777068919 524117923 559015865 341167392 738359988 645599151 787969189 759467542 895384448 527034939 904799701 940084019 970174504 635811351 719909030 753996796 814702203 512420731 796667434 955151024 979263304 761698359 910446390 363409046 482782839 589156323 682888160 399908385 654881969 928525854 961672705 239806415 424089658 211315817 413113787 919093929 924693054 556722478 904681159 554653632 687456585 515393854 874952410 336578339 337190495 180518383 752044328 256809861 352194909 507110885 828049307 740994583 744376455 523132553 776701233 509759440 699591303 129669333 915969036 482787115 739635880 492040209 745381510 847081874 883856762 70286340 721535486 779620787 889453254 25539174 483199947 344937355 951174335 914898129 974520080 65324445 936856876 366789696 380173896 395632126 396227855 277017373 316339122 920501950 967650498 973357866 982599582 317083655 692394386 580023460 749916208 577061231 836030515 575221595 862211411 558334476 614453427 224883758 556387401 51300715 956108522 461986702 821491706 30800481 743225481 277909095 787428339 434369380 759443913 809694302 962414197 902223635 905482529 13566842 297099214 107140510 670453698 980833566 986607576 233194379 606263849 843309160 971720074 226009652 231857112 419968231 515932455 998625860 999194668 657642128 837102533 623137017 994571476 657567800 967641311 283329278 832964914 61704602 620244004 37497615 399349136 567411302 803435768 977812824 980964143 361544111 371853872 441633414 973179196 426694053 671445734 440660735 582807565 635923224 763501218 14764046 590678578 109372245 150409660 596182173 817264884 729141913 796702112 476356802 793435918 483634689 694870627 795862241 920680471 30821663 959321806 76700431 944027498 379264494 519656498 137395193 652603592 892958961 900973635 661218096 673015258 107077634 319624242 370790596 766478049 280157735 692985363 406608981 811368808 857457879 938508263 393235647 840906840 495850074 551071566 231005115 859104262 305069131 415518358 153276679 158841828 835496433 841730410 268251725 379342321 116816771 589366107 504915250 887426025 811850693 962102942 382414775 803793802 385654147 638308246 835548077 935406537 175818695 464513221 387023799 432118827 671527631 675863878 970542367 989235198 592184469 830781576 259770066 841045300 75458236 473400645 453819197 695961759 949824437 996619197 968126215 986044685 548996402 634591794 435300623 815466606 865498908 908707809 680033568 893646053 332363192 569305409 687265969 985718857 799175964 812207921 86089118 591365796 76473246 807239459 298302987 496510017 766160507 948018017 660840272 775248137 788959073 913105947 707846762 892465538 408037197 808034119 907190845 913327756 765380393 775759972 130267839 589564331 640861127 894480804 128751923 128988926 264963214 390303878 18511869 33848109 565119808 682856382 234645373 591365845 370827567 734020704 955676520 964213977 958688997 996992322 613540771 666027392 301096621 670845487 655328751 936537008 36612190 624624130 379772328 809888984 157405499 498359164 854800210 930021337 378537089 820907304 62214651 297205980 47155073 681610635 444154140 727923771 541532827 802652073 926927616 944570274 130903264 584045840 422620437 484941915 808572282 989272885 545262532 778666511 600411134 784322129 407753868 810641501 189617156 372753406 584641038 870964242 964424540 974685702 738883887 838017501 103842097 566674168 148022815 510538328 709179788 949297057 375989092 599732861 885754939 967510327 392059579 637878473 324145876 977387053 778220905 884063608 489700751 871494469 648191990 786730529 586282962 651314428 262739620 786300469 767696614 862765852 208642112 593102613 415363182 642536620 673332954 950355972 106796849 112236758 94000407 204824285 600461881 761307010 51279146 210343990 503581469 706192892 258345662 413950828 966238280 978924258 462243599 678314222 134581099 763518849 67138653 112568342 880033530 982703427 973299073 996155495 94362093 345242546 483320938 876986160 119105986 142947957 513532285 989072085 76880523 887379470 429345743 900390516 299759009 541787676 179603259 243881387 183742344 186897908 216099389 792620203 807741734 884822141 312614890 423257982 185559014 475103159 86812933 593926851 414568865 982089093 575155763 958988236 580007311 781601126 290827012 843356272 208634976 622442717 226711309 649164353 622545407 957972697 267220138 704441664 281267128 350280172 895404527 908935574 431342706 766010687 954021367 988701621 322101880 431973253 356270020 479235975 825505060 931456554 815530085 936182966 269988794 987269253 973356091 989102380 980979550 984330015 929908518 983899542 384797643 961101220 448058268 837098959 387336117 565930487 561575143 742265526 129659339 995678075 495249637 707660350 257683106 267212181 382708863 582491451 802839511 996931038 340653581 397076501 791321060 979498211 233568652 906976082 874951352 929429840 578281494 672072675 591100706 874835986 729949264 785405922 552234146 677435569 970936547 979778625 618167707 919997457 120383428 777756116 974488496 986090687 793247998 984856108 346241500 709006747 456557844 966678534 644108517 821326745 513115027 543526843 296328077 389840388 968724812 982378133 715387137 735957362 545047350 605561065 512446561 597257254 840379557 899940053 789011027 975407664 716112048 877677627 870349760 962287332 874068272 875428788 426674651 607874841 612628614 986708069 385375164 623573244 925687411 966537927 949841999 991781210 824198741 825492739 543693337 565972141 854854731 908202057 432062495 940267097 243873187 625727831 900484656 953177418 224365496 889446675 341604949 500702608 587901963 779275332 454277641 613533086 911073742 933285378 306889131 695009321 113376250 640710937 633797236 846710638 617624239 963147893 753053979 987791739 987108288 996082802 745627433 752002765 409348109 787389232 61769408 211242717 626357625 808700406 537250704 552092464 32736599 50347844 153079751 786795250 898843074 971994456 33560490 265541370 250887249 927353568 694108649 938118828 459322220 687075256 763928935 888092457 871364551 891577433 644624601 796059569 910146876 917142022 420785797 938834948 109927963 530122675 924389223 959269133 218990379 893892543 39377494 98024062 32006296 878334398 429817824 674087159 280633340 948299925 915327761 981959082 153748551 313823140 210942740 261115116 928576829 934260155 452870414 952217135 967018835 992409772 495943460 505811682 601255563 792397337 780604866 961022505 334950911 920768943 406256935 522584383 703433895 882346013 892729095 960624781 183267747 626297209 66800243 616599176 740733576 942888159 251761731 352820695 257947427 604462661 846263331 863940995 263015430 349402872 104963079 401384611 358959015 882930925 127649611 446852196 453336501 772532936 621899518 943061496 160500434 705767878 701495516 969613047 548660136 956355223 487878883 547702684 999488852 999496704 546268450 575298869 291521986 745527908 464235091 515054591 42804911 702994656 294462463 703161176 274628179 919491862 254746558 569941872 975588848 988953685 153078620 491368309 87199040 884984113 850453580 903571118 162398179 996219288 25748405 593670622 286046613 446059589 556820171 967249841 182378439 909348026 635946647 957019463 598183894 996489887 689430951 901645415 286779223 576699527 237225837 500179967 513791502 808658479 254761634 753229767 898975265 922721093 876288842 969881413 356290953 619892811 53978825 130951439 861512184 962384009 862690469 945819029 856939747 895662843 778134181 841486209 647446082 991990313 675894583 715651365 933418882 959735147 301200925 476169057 115380038 902766565 319133061 725927370 326112194 580443392 949621782 976835224 929491274 952318784 391914904 851802306 391979006 667655826 347665080 348323204 409820064 627891844 49611770 683263073 479330260 866308076 993178211 994529522 378091759 744888909 460231044 527925558 86226104 887460932 55004971 764721060 736302665 959459805 531402315 849655899 16309035 999816337 743212430 953083174 142672768 514364825 530066404 553252693 347830736 472266743 830614542 909636227 435595065 925777698 674211483 888692087 889802984 951437795 772489509 993554587 942734485 975753484 549955920 953610413 416841845 521058029 545533191 765509919 55864160 645812292 203570647 268059185 816920443 938123132 648412124 907807389 642211761 657581144 43217813 268538055 338033676 630717449 506278493 958201495 342256826 951280880 384021076 994978556 362560739 816103882 298558165 723170818 590313233 674676751 682880859 791787062 393218282 840139265 775231924 821104453 753047405 785091697 630092942 995112203 848262323 999388741 221146314 583216931 125900654 494993494 162997615 184431733 4707865 92688704 201344893 990170834 488521129 890138221 301791713 650950260 293363918 704955794 829815808 912859254 387343325 862628131 635698775 778184500 467866070 758962129 101925357 356038955 526885385 952674152 477140322 807550214 579891865 755460498 74519246 386105224 833877044 850721157 569896946 667953964 481690231 993915807 598244445 856018656 780824723 995526875 478196750 857678753 578930170 670720440 942126377 977387822 216489441 783494559 658360246 810842628 175532923 896447942 208272631 588532705 130294176 260254996 360075312 434749097 656451866 770352402 697671198 768332255 230610745 581631262 742533537 966977548 922750325 964338122 352841642 518720046 890575839 891531722 932952726 998755802 368504759 643675431 465043951 687160609 210946465 367430106 545439321 863462653 675423207 765973305 902616419 942230062 213666082 804318169 66883701 539781646 667178016 850257598 600343431 956967424 14706112 184538480 296128130 316882287 162776775 303941735 955846128 970410861 823816674 902513798 459950942 999434431 586232816 691908702 434643941 743736564 501126263 743527734 890555569 954014441 197219911 624032455 620825297 957363100 533826042 940649773 318838301 922127783 691195397 963740461 243454178 474338892 944174694 970972878 889043813 943088196 306301181 496157212 852845203 934936969 674914911 757162337 429278184 679958299 40088779 267923409 966897319 977707770 317994881 774963764 811702698 910594032 984308679 995191736 239950920 528692416 963583665 977372903 578516340 871598741 927632560 949413537 198456303 862967908 256579323 723943062 784761856 937998421 697370743 939508083 982167224 990494063 14428099 785342041 285258679 312027626 774543133 794655150 944425534 981585766 179822847 716442679 687860161 929453024 905938257 979494628 677479621 759166516 714723735 962129797 279115477 757056090 290071141 443439744 711444723 882966595 923715960 946385309 62981766 417756060 970887505 973439439 353393996 939015205 889710939 946230174 337812666 507959836 63743580 506976334 814280754 854344789 111450824 889958756 461981029 590262967 874829976 927913733 899546089 913675375 341406446 524300864 882732128 975618815 240644640 667788556 988576458 991549099 447510527 636549124 848626052 851237206 735030893 960013806 953503617 989330409 38727522 988849725 852602276 990090114 279605601 320717535 564796441 626633574 358089486 949962979 566949829 850703048 397102370 574418216 459497759 813868586 388701080 394346867 114311012 299075385 535387614 808170934 230069437 401450649 771285600 958326495 760993276 964513860 953808297 994120747 299009432 324657149 922317853 968292985 718097329 817340542 730103841 743783199 584644249 741258364 720927794 948226812 700026153 996432471 665693206 919881264 434918516 923683058 136713149 773023084 389421558 643193418 377364958 948465929 989689478 995916425 724307635 958809191 272291314 743247009 41040834 675973017 446271620 718830421 385905773 730980994 884802212 936548158 708418361 941229337 477562079 844057526 146521902 443470243 153915503 517009315 488051688 868143877 843959535 902833198 875524815 900195902 588438126 973158156 736619157 950879703 44722752 324034364 38371585 50818212 524784884 644400797 504499750 666277316 522865260 645840464 53419400 839024023 981054450 982903877 749537951 774359941 167289423 475079288 378748338 598384284 802266575 916439029 217558564 661896836 217252882 892237236 185713350 923343945 953745100 974208294 370657414 731100975 841671256 907920101 947544496 954827396 150290340 505756790 126197115 326666648 16894691 586874409 488100176 679488734 13538588 123502170 433857496 534411674 669961608 972324829 375636129 391416444 33913598 748514684 989426622 999453727 497877217 911182845 677029099 853489091 155878379 712486667 98359887 399774696 222101915 452735484 217236741 510035350 679737857 712636177 584920224 930016953 632521467 913959807 542268665 785628211 685631329 739738803 454663990 762267460 287855386 935884042 889911647 931650938 999839347 999963110 781004622 794442390 852930122 967599168 952629045 994349245 786941386 975403863 603227715 859424094 978820055 986808822 910097363 997536543 2288501 676050362 606906105 713662397 801493490 893103520 989171567 995943268 545222270 602272296 380717441 605702031 934764299 950087011 793618008 867346649 328720952 435675863 372094742 945254862 30392208 63736389 869491142 886841565 213513902 659487533 940481266 957058684 853702886 947583107 360873596 571490836 481501251 667342346 743928655 749798507 692339092 888073504 490170714 520662509 182234247 686609245 66215192 828524483 997252778 999707067 403278900 744881215 333853733 825797798 996054816 997888193 804226113 957044123 363179875 678331698 932069865 950200957 473428210 814151711 269181100 327710567 410763872 433341088 821258951 969853317 509393869 511150966 125834136 678512370 681371672 726953447 399912549 820656806 78405848 627963904 704834566 975849330 304207881 732657730 19554038 397977522 664366700 976334802 911392525 993711234 830808505 862023410 24048687 557476366 510125814 926254742 667398545 695356551 73760921 273166494 244003936 989529325 934971316 998569227 580021571 661956576 659696889 709062352 218422301 652997280 911499627 954732187 467752640 559413187 53051876 585996074 842689476 869554921 404340570 853095791 519474031 543649344 778862735 979664721 402936766 828924857 764771107 950998067 954067397 965031885 19385865 631526776 97889140 357586348 448708524 872394398 803830367 981111714 879939689 970908071 549048190 801469730 996263935 997303746 410449649 651014536 261448807 315125290 336071256 807894315 280966846 709231555 678304468 969029013 475132091 955945848 993680956 996638401 755704791 823897441 936510591 957634463 343984746 666346171 561438023 594284559 447750403 861501630 722952347 877629459 809644521 986267226 119404584 905794075 880559292 911418701 760120070 783787632 583762034 697976389 625975968 673778808 398122054 992729207 10037955 557670232 486757828 809574254 929054874 940119811 759407857 978459868 269441270 906979423 951753778 987721535 92655315 708829697 248360386 323772076 738528714 758309591 303807061 906238797 213298110 364913590 965379125 967004467 5997711 406139352 712204314 811840445 352263243 870521936 483727195 513066133 324760270 415210544 79470178 577307409 562777320 652130049 7219166 151130758 37310856 467857297 238451859 907192904 26847278 179658563 638242137 669623924 565834050 851730440 2320490 62043041 860822796 904324819 399750193 612738674 257182683 740966579 220297218 569560660 723997694 953700481 439622932 853485001 498419067 709966752 979486901 988751794 131550994 528903101 394633666 417637393 552939574 764416629 235100101 515608948 358008492 384347902 974247889 984397901 963311526 989492765 15766161 722314164 708730492 853793198 548439040 728686597 683525576 954513995 540385978 844446434 481050872 668968192 675051934 881658070 282773047 423091493 204743800 732701354 23209154 972856686 83050933 876974553 421557977 887302131 711978143 925861177 766316146 849717884 311583286 594660277 856090784 958367247 780544395 962462219 239495409 861514933 756082859 899205236 66059018 941968210 738047968 811012523 478412937 747295999 320968063 671575811 49777956 103681047 365026395 904386583 887347899 933471031 536137564 772698612 577241500 639730319 313453185 528016254 665669707 949672958 815398743 978870992 535981796 681976915 862848435 965207171 579534736 721761309 107995775 953593454 365956587 532982999 785289027 832078148 693005745 941882729 308632321 801039000 756485224 938755820 729416234 810682936 973470419 979279231 98633318 421518240 421817213 675725127 287659680 657487803 139515113 876254741 549967482 776665367 458555534 795144647 940088531 993612493 277776515 278413721 238353100 450211931 36027862 588427408 499068491 553835105 917489658 943554115 157023672 266438033 339431871 772999249 713213864 720174219 744888883 836782470 478863858 760333430 154540426 283752005 583129179 889693280 166038908 953273797 94185602 128614330 173877377 460978608 694825336 861621402 119451974 882764449 549499809 964893649 290810073 326364883 573804640 954170193 343543607 924035777 654126732 788054211 907023037 997368390 86815017 841364812 512736929 530158169 26782261 489803722 988397904 993376593 148588451 680166702 17340171 552175143 63025511 374386704 285392006 933641510 464154386 996757215 322856933 898960859 446555153 692102924 666584783 788962270 285909804 561070036 174373531 964813033 866906277 997581949 889126158 934890051 564815664 690401248 791710368 867785508 20200754 396053007 699254448 855772287 272522100 846378900 149319553 585508384 265289474 869235034 843595620 982410010 510988789 512011950 165943919 401884702 784216542 838782995 650844698 839505819 833559507 977756575 856727249 938847393 152647230 768831298 434682739 520458967 167157099 639719258 779242566 871497448 874426962 958690253 554307741 855500477 984942356 987205017 980416563 994150076 758649236 807175340 236800724 566066284 338573270 881725164 80098106 972886112 728156548 927881033 862779799 988692564 889905752 907355154 469004085 602996838 444177618 869179708 102160655 504823813 85172375 791820354 693078594 775207263 685446939 936104560 360888383 923914174 620332248 625107923 201735189 678430857 929555036 942161558 883239393 977481578 394588495 536365427 357953292 783359211 532010287 803163705 387753044 724713747 489206894 502957186 5795298 768935274 40906248 155858384 602449721 977107796 795662655 854495278 661433295 782372931 207848313 611069825 740989532 993675971 698252971 995083026 381485236 619104056 562213112 975446855 566220523 682596639 61284931 157755608 658425078 989372568 552444256 648503751 553717335 838963686 219307173 679637990 821074082 928236927 609100927 687493876 255445241 608347491 122870135 648218204 202994203 912599608 546412183 658364027 917424623 957119299 138075268 940385979 551861865 923621761 334111009 508692629 821612857 978946497 839455361 941123272 348407013 550580645 369168951 562690956 773675781 951170029 918277988 927601846 281778476 417841007 248608671 739527709 774781873 892687300 735099288 899236640 410868327 835085606 985677073 990633547 832257488 982042942 599504720 710094318 232447190 266134122 472586059 643159441 211210846 710935320 496243901 644324716 591966489 931627156 629201370 978865324 851039912 866197865 352485190 530155534 220788367 485639050 979689936 999297313 204398272 455759669 197595765 951347749 772679646 865633311 468603313 521409391 876707523 932645214 214330514 846770314 898713598 912132300 43543211 390759606 569305507 647420793 513239495 932099329 482361743 503484653 426854199 634083712 610680202 777812606 468825139 962695317 169743152 552061270 973699756 988077348 131320379 999525667 482509885 643920863 81542970 531648837 301515352 822002181 693932050 890755522 45269278 759402513 138614437 953997887 383242950 735529788 1179044 851910929 144816958 726299145 240213498 302629498 888451926 953356367 284969996 464037365 599191791 767695749 878216976 963962353 581270386 905632407 736371111 919622341 261218230 603982093 454240249 875023976 456148989 930818404 118672642 462840453 285319482 340578573 202321808 238575222 4180653 595198639 76040114 984945467 276747268 652429122 247583390 916334731 531850281 932277869 209732899 950339428 142894775 942957216 304517373 594556966 15690909 162996059 409156683 877710151 181377302 189895594 141819750 449392931 297287506 437909279 48844368 278637619 113204786 653598200 208942058 611901872 75188992 625144522 19850500 982251982 279509239 500225827 720614917 820724395 297295899 712980915 904481991 905917331 53560630 533576771 384901135 458652538 954672085 970484610 388093293 977124438 7324588 398501969 409062063 761467979 292614518 471724095 981640276 995081607 980372888 984209510 187907359 340910140 963570795 998960463 676135862 931681700 841399595 969182378 803584659 998968340 147138960 774002546 279870556 602559018 91756763 595415432 375214858 979118324 865239546 876184780 723692016 917763471 381617220 644740280 168203736 704740119 982583156 996498671 134214332 482931496 18696754 545701559 634730279 724822722 91978451 925641409 143887142 229660514 547834536 793734089 862422913 923023768 357718385 433071620 63045151 581385769 493496180 513055378 152096873 445923830 4085050 640707172 771413380 783036859 718342358 867018149 202340237 518721878 168025857 805944825 5489580 448021831 638123722 868714510 378549954 809013580 524276901 606967922 933186172 942541493 629811853 860622819 745380744 957041475 764097728 999676324 643435982 899721051 853706563 888686456 626622321 827549361 127963448 766618611 377054342 899711063 49710688 733221666 921527262 969082423 201204799 399467633 560229646 864133519 98454010 130471260 426736689 580534703 993878634 999872142 693874936 934260990 150466274 975958247 633033184 803516918 42841949 621755847 88464742 923605097 917052227 942031317 508951983 724647571 589047624 812640609 184155951 593229766 165563749 809724715 592892450 731512093 769109739 980251265 266341867 540246837 816081360 888617228 88264166 483699492 304611387 346145086 916153751 989353395 743520240 954895418 112171889 523360624 717836317 939908799 930492918 963187147 258959764 516543415 196321366 415948362 263351811 674514585 12644852 647510012 338090912 819338590 824314203 901128995 875332146 903556406 453116349 888206015 426422959 483829181 383234314 496025860 832616426 955882764 418498016 466204979 901326455 941568105 284796917 295615416 737830384 986234902 147101734 717499509 168027131 594198660 265672772 819408075 208550357 363664353 822720585 986898788 950252866 987710581 349576996 644434611 469049182 820553054 722795631 844649368 177407989 745193805 828682396 972250701 833770252 874263211 312651216 763784596 139109290 836686890 136354674 883733831 990018649 996334122 491650183 676090108 414610158 474880258 12170233 461840145 5742052 45909157 910762310 985907743 476247823 778203625 914228762 935424104 194810190 926385606 71852736 584520865 220493789 529808845 76358475 636368518 79351428 817265223 244104724 981097439 879520696 904445932 915620787 944556669 404019823 419972239 269976753 705058422 39044288 677231472 17312097 568252179 279847829 507046992 618070968 899713118 593680224 896493666 167097458 454061616 911818127 943363179 598287228 690636364 832853854 897385348 369595624 562965690 313008818 599464734 724944909 728030514 847388427 991629536 723926467 897188409 676478774 683702488 786907231 863770439 364469807 679716856 668614334 742552278 706860517 917963993 716328933 928640167 850568783 898569751 630887516 721676277 680013988 754795754 741610227 845217326 662127395 973419655 781150091 896284313 500402446 907984888 114503650 376357467 702953089 984137164 69075492 522606032 454441573 997339083 675502762 744178612 260310217 320656093 374965897 978998941 815305496 909576257 458309152 712776810 621813279 818257886 733937495 862662559 63484601 420502333 768483037 952210386 445428696 531951995 775136841 884879628 678051722 748074335 504908076 717072793 286129962 875308650 566597430 869366827 283735656 664056634 309587913 772162405 815837970 936809935 449292860 530941498 211368892 471882434 833987612 963618391 53364566 831692884 808989715 953645826 935482364 941095863 502615411 654886555 14303312 555362561 658095934 986822633 214661584 357372190 7200463 400460957 141345805 622197127 899911511 903157100 786281427 888627989 864711258 923916394 306391881 890945642 509949924 801379269 492666373 802745442 802015809 963945831 389630714 905492426 838690866 999730016 68337185 629284609 594390037 728512576 537405390 940353426 830781951 883729615 710853982 860619211 171120418 825087893 513495230 520359672 461936934 540755266 846949866 876647132 518763096 645539891 258257029 293941968 344060647 942542550 461451830 620353451 720646086 796330042 566853008 731614774 420216577 508639347 253135089 978097357 545379127 804544562 561259686 784738436 44022354 73172201 158872165 278911111 815837393 970857577 930751200 990525394 44813097 777938265 240117216 972084004 726267258 937273397 877141811 923110144 268891954 597213692 78555693 258379283 111949985 731997986 679694629 820855083 961969779 975286586 473890190 776269348 912682740 941766743 463291680 709558521 46552143 581564004 464492800 537650119 491159825 730580776 921217604 932299574 325577563 701845590 300538504 944805085 258235221 746034140 147404364 911957196 894639632 919182091 80127628 779702098 337418008 797779999 438194944 914092878 586244780 942868275 352816699 838502102 877605814 882918758 16042651 418378276 654709671 741804797 139145624 692022562 718111985 988118387 955982667 989232612 250247998 918576787 190158611 369520429 767201840 941829324 10573410 475550371 408628015 550315148 174760489 685095709 40428323 461786108 615334918 679004988 254267757 819770277 977121825 999837533 990612002 991110435 137015607 466622309 658141125 679747678 578954816 971217111 810373853 898351331 636641575 819156185 906284461 911899719 842415810 928420279 881014451 927217281 312613186 994097712 105877616 608867655 193308335 805784053 50501141 57319207 809730676 820263306 273324179 553209727 936897132 956957032 85928706 662551740 332408619 343770742 296379746 893982048 696968804 876828526 648347602 751209109 781337102 824355620 608585461 862153389 644482147 970792148 484314459 837118240 144116152 283310854 82864225 103905999 353536761 718498867 995246823 999661451 623919516 887401987 942973195 953714830 410421546 904324058 323239911 696190786 547070646 735351794 908236559 994388219 530792997 626549636 757293481 798859671 404027235 977752050 309738019 909536484 76405569 872526840 981433337 983248735 268114110 616122512 417037118 989926636 24162273 493620193 363655834 371356335 121236019 259295059 440663705 854509582 751577136 961510033 202811533 735368198 185949792 885721169 589407627 903026018 794100618 944898041 821377456 930098071 268847748 727277510 648279355 657326830 403364379 492428651 98159614 220940879 71756019 519958886 251462314 407949692 205046285 313285252 210106089 239818083 82409414 780290985 185973714 760086029 928475413 985042783 552339 515228787 17805092 863132098 183171693 341313841 537882324 809889971 752915685 874274112 506943299 655006978 30012164 171359992 332111104 702030945 724824224 837050373 711671364 888579028 531370108 823058394 383414805 769599116 645110837 744981974 545201652 871088560 4820288 72211769 989940678 996679841 602398278 793146875 84751174 275595978 85951451 131751457 39088122 248206616 402512551 993950240 786799374 908058902 352786464 871317804 987587277 989121641 29640019 994446618 674819611 914233550 561059351 782568894 642065741 722345623 264390133 966218256 77324944 321089888 507009662 611873597 140691180 475977574 778429988 986830236 869851453 986575548 745491659 947385264 245157235 379798483 965663183 987502492 252459043 546272308 758658792 917728173 845513820 859696181 327167597 357345738 584262151 955400779 735334831 939941251 885711690 963300189 893241172 995977013 756001418 922598785 142246241 317839098 101053356 696454636 55774600 396588593 842801176 982746068 899278743 917287223 447642917 532254799 597692713 676854820 999993768 999994560 720261356 926855670 398214974 880678539 365914408 839841122 482459335 873942383 962079738 986599544 147939272 604769810 359473918 428595910 249977203 364190074 366758767 445994355 131863308 159512049 87517214 685161406 127841358 760596053 669830732 883323068 785741552 911843096 525618131 937962882 783360463 982389704 94621243 484361543 965975302 975848855 294523145 367136381 519889781 736425564 881728245 979048430 682274988 921475620 835820047 894039154 626830947 988881063 248219735 717480428 222615120 759316164 64210816 677695936 768973357 929248295 967910972 990878192 870467043 970911047 464543496 664025490 91056591 727116387 251932965 291994490 877858286 902393204 436516280 985824223 394812725 908431776 354194687 670928711 191027505 234480797 731885040 924767645 658264241 802782410 52068856 88472691 958315600 988830642 474164457 683224887 824434114 859425361 534713546 802032946 445524879 572929433 855633186 968803378 114110642 453918439 503081587 946288776 963800119 972981657 317960864 969973300 853644995 968259765 887626568 896654570 340881770 831200024 180941343 621189654 225823334 420155504 855969825 916821635 960828575 970445875 815706377 910077450 377779558 636411435 482900011 582952528 398426373 642810906 797754622 850996637 665529183 766261072 244713500 806043173 984548629 985396248 486976400 577660380 827788515 965518238 734021464 786934042 51210411 881247572 397120337 981863764 78589474 897373874 37672311 774030913 867068991 954625164 45733664 822465655 664881308 866704876 535615258 733970673 427385593 480137535 879567176 996639007 554413351 977762496 9744064 441451966 30237906 195877790 524614982 699462788 695957556 911775081 744133351 880297881 785509693 946303040 315410204 367884449 800663041 951213854 258336608 816782949 618726616 873407456 345132416 621262684 680000149 891412808 850415373 989442423 630372807 649695174 524343416 727345269 225897586 660275655 990740338 994704254 720081074 920248845 218608175 854319085 95712662 662091552 650351742 811270300 5801917 568276073 505903245 607937055 797148178 865672406 11319299 450935710 543825659 644961272 166895844 267850631 754544895 931483073 265028377 566560912 280140630 900977529 970925740 975047555 715872373 819930659 563694493 904736611 498521197 600866262 408164524 469324883 993963047 995668921 507795111 623852637 10846922 556142195 202679823 235048127 629158860 646838487 777881973 964840649 361510495 857640135 597271531 844089119 560478503 976391035 147265660 323616784 889291086 896898708 868521989 878481557 201266479 898501518 496846550 731638595 469514715 664648635 601814845 649658832 804728548 863469016 983511905 992639475 289481968 306885536 965488134 966293455 175592772 643667416 791963865 853825862 992964669 993061577 998569961 999081974 55299141 856503841 481878353 591740414 9760100 793935338 442789253 864376861 446436733 490328967 584987596 842521179 839183967 961733968 722759985 985883594 587689100 684259793 200421766 734364803 19055912 338675999 416934487 949248439 820389057 835538703 181068550 183091657 797086241 880500963 381559712 624198043 729359457 792845127 943079875 978419767 726032717 796990710 326875334 948653344 272965902 821823590 558627866 704378223 345658879 857765708 734772478 752837029 754650694 763227689 183797011 320372559 970360549 999280033 186981841 530654141 620929507 975019252 685951809 747087039 318904496 845485704 429363722 546530956 361973384 611514150 296583110 884416557 135072231 687908225 894490961 905874357 737841306 817261990 986555894 999327299 476215929 657032693 862552170 956797476 500468762 622547928 91624691 896865089 710099202 771805023 646549549 864580107 434257849 517318423 151775180 399455208 222287326 814382550 901765164 926554649 779792942 937660717 475327070 569361772 833554056 905841922 898762152 946311860 134673759 593997278 938004366 952638449 761344915 897388842 23109203 692112458 349725831 511139551 192758448 916017021 640862584 810049526 522543196 882343056 691712624 711589201 762080409 910637460 926320072 963050428 72961813 987500103 711275760 855351748 199985393 681142657 105453672 766559447 4597055 814082561 821252379 884327000 684405252 720019616 67266660 755054358 467912317 512924465 797714042 814969694 392205357 422420303 67179336 231241053 85302234 689213322 230470235 645937409 29361268 501905302 812422728 900018269 233689694 555908856 559805573 867481901 800565592 840665980 921936001 952179582 552198569 673132897 273107836 746953403 979534837 981807929 269642967 477139221 628719364 694153000 107492057 738305859 671963325 759519413 718421686 742817549 169220842 319964250 513548155 572450154 753699607 957916473 170642620 416402468 513874593 885267758 181602044 260568064 287524901 893231541 39480303 486883659 413654218 734574987 542087646 884615304 165728149 363186507 87338240 384002403 130343024 318497272 440189028 804138942 516935901 849945685 892242815 997128921 599675445 630979970 973447685 977224938 224308995 742848387 771543247 845631494 59330352 617377901 198950871 342026772 609504919 993109609 900118618 932185243 769872871 798702159 250237511 694042373 993169034 993187578 987204869 992824328 507485653 786208599 48124512 783863815 893821548 957729204 622257624 740496605 570968084 873496439 364652365 791727569 75028234 604178111 478210413 564776365 850643007 986679960 51876513 608682985 474272852 559149954 601887131 861796747 744587861 931872595 663781746 798768039 801159410 923752150 275319536 504548899 508739293 706085970 106590079 572907904 4682694 430929134 845947089 915826504 636779664 727166216 312436616 440001026 641889033 883853381 293748440 922047995 641211384 817459700 883822826 949365785 974245872 985660052 151089457 674444213 275996015 904938301 839121290 940160623 204398704 712552346 606195462 768762518 731593726 757068561 811304844 852011219 414837291 917945650 641139577 930665421 878620604 908202956 57012541 383916355 708938485 739639715 340890807 370796827 22428852 27114045 792849464 946847606 394021678 472383273 273419520 493779860 73691967 472928888 415593928 501398664 261147800 524899924 923242423 960689356 294678874 841831611 344297684 845620660 680369467 969162989 252325769 959732841 167102582 227607475 501124210 715181814 515738033 522600768 882692857 982764036 235722758 758821578 575902753 977979455 793558343 912380910 848371010 988369968 298861779 907668550 801174648 826909807 234880225 522029530 24610761 526677765 890693725 919864701 56061439 719422543 989059621 998944380 832884828 848907846 753268774 871651876 406445919 470369376 417268014 433896260 812128739 945407721 709287207 987595478 934261821 949531814 517271449 667572789 660279839 696846578 228679764 274468237 857491618 947183377 750184672 924021185 18081848 218361944 808262726 883403675 151884024 224018138 467269387 709213780 913904557 967089680 591625977 758637263 766002896 825160643 24298817 195740879 693346266 950648027 101364618 354250313 845587412 905299362 258186065 865919519 309605199 641498969 827986684 950273572 424669896 526393207 51445438 122933338 841285658 997903636 238926384 853896953 538516851 823488500 557896013 680031023 63297953 522111139 659986447 852895425 629020309 777316173 205966882 364490493 256916026 548892402 298353944 615725765 832155285 864972073 285084774 527355339 587579378 961038565 730245566 744102575 269972380 386525503 500235936 952450975 239314721 568192489 157678174 817389112 446946119 921824430 401366521 654019447 234066862 656171076 69255658 84245270 27179343 978051368 509571344 703628217 353854266 479960424 88398141 285322228 377009202 559421960 780578050 939722286 22760387 201388941 171801224 380662463 740351276 858365113 952982970 996276868 612203139 862722222 911441265 989477438 393602404 604266687 911830455 915068984 65378263 485660639 925043671 996414141 842773786 908429775 489032388 729448283 882189622 923664769 25828709 366677646 334020778 579869499 692576977 720393920 711336614 799153733 705735280 827745200 7210234 885058112 140182427 817581893 773567575 849743635 972801073 975267482 973732761 986193626 841598523 962828359 513442199 809367012 696275858 970660424 700431430 935652609 937433913 993225642 745460599 788515746 135309943 953985921 301481380 833335671 515190272 695603741 24879748 542057195 49585267 421777546 429904082 684055658 227024579 558905927 802899149 906245941 215710527 415598575 170608825 444462856 77459443 822753099 660553887 714900755 68614092 924123242 216194329 806688857 350132059 964531187 881899808 923054355 809101418 966735809 467464337 889307300 886935823 896799749 852923731 871893312 737676774 833077873 306906984 604953853 554939453 596683994 841472197 871627491 257296728 858408195 39857043 502260901 716447171 802152756 452173692 738960397 568358343 810342180 915965203 989601479 12028945 743458042 315237686 375386887 193294824 686728588 206210879 951108333 328455595 329800057 317702761 578430359 90752501 523050388 272388008 426653746 991342615 999915607 932460544 951915383 286498006 984892329 553417738 906844702 941280203 985379982 818511459 888722217 997580170 999535814 385806553 681167556 406580135 464937412 477869303 670482231 31416769 712089275 673856871 733700283 517286122 914190275 952197128 964015260 13436905 737407924 604418014 733609989 694142285 888019281 276003817 341133872 727891275 817627555 250913961 369444144 76641959 153806013 907724004 931088638 573757850 857719228 895652914 912431936 239499629 668971362 6519363 645998391 197686049 379866151 99771660 534118549 322621252 339154086 156190958 630922580 603659521 732644370 762103904 899640781 202819745 394922459 855483633 925319589 652310971 872939872 608323162 927563740 952277516 998863005 842507693 964514293 754873809 758564339 494300078 596336807 434289716 897644411 60556563 286119955 122014595 276101836 23010553 715030924 78126797 595820865 825867754 873937096 855310281 943292662 946738763 986665305 859992638 963796806 545247240 776943181 317725395 501181972 502226116 584932648 937303681 989394575 137627149 198439151 434228362 901767825 247098528 391827467 917017402 989174827 598859428 665948630 837781957 912911768 479919819 739618701 942992186 971525000 680976433 793994596 924422058 975671326 682092808 923937238 675708853 728232837 159183100 523163459 667708006 985976392 519423892 936154397 557000520 572676081 932337245 946826361 602490660 895215264 617027787 883623229 410247992 948847087 21997834 576630572 699343250 915348036 244656726 684265683 914143938 968233210 535519414 536342924 712090876 987170863 102124829 841062683 421660886 619369832 601368631 623574594 940993190 978858585 26790349 911179069 540327455 561447010 743187085 839649694 592613483 842049161 951206320 969221618 505406695 861898676 587737101 885741743 792304710 818448598 497189348 703222910 71088183 589432893 894738700 991122732 822093142 863070688 720766805 882018930 360516683 815462977 384908421 579124935 661942926 713857389 819977261 949128266 863072466 999494571 364196806 781784448 710005373 812115484 159789000 927264816 257649417 531324313 923702829 994864917 555479498 647738074 837531097 912027644 330883777 770820462 934794969 944625847 428743117 612780926 802437472 826638343 34022258 955387079 283251022 488400744 780264226 871670211 936881497 982996667 720355697 787891012 27410442 115583038 419426401 854896372 216347261 304498431 929782963 954821384 20018924 49880967 420441572 616760412 780903975 985463758 706474618 741692094 598547444 743188032 170346395 194462732 337712641 627315459 842059193 882185181 15789176 246267994 750286632 768295717 819321339 825304951 928093006 987252002 833655318 977161635 316946417 966593541 911619488 951834497 6911866 508435119 861186462 940851733 265710951 906620844 213236938 563063448 19690801 843497532 229357054 419468828 623393739 990940779 181103295 256421269 298918710 430915110 377167281 722557415 469565865 813406515 2539013 688264772 151865658 724005142 915980554 986266789 548156485 685328217 497740293 734072470 252464948 956497475 985908123 988418478 957513923 982739432 791792131 866265224 49500518 272137593 534900773 708042208 93367381 274377060 553438213 639405569 817296909 848538924 371017191 426704326 793047447 879909757 601485843 608149997 506248358 929121216 433723074 930420366 611714604 628138664 770207475 930030433 825056416 994778661 563349486 767271442 860255345 963871779 508622538 677882431 525102081 576515487 966247745 985261655 931840476 992320232 242327997 554952460 432949540 781400025 778949083 973487267 65343 580461778 911659311 952811719 302428580 738677844 991921540 997869817 2514987 93357782 788603394 890408704 953126015 960783716 178466349 727019015 305312804 367753955 808260815 919747531 731910785 818906320 76729901 727751119 115375346 640647817 365522887 399906347 894750652 921118146 298221272 411949531 222832736 543557095 63754118 802613911 449291729 707552016 135616315 470977054 386745852 849599347 140143273 508230598 707768884 713891714 563851575 638171732 477737693 791788609 675737657 934943826 850471190 924911224 809827196 932513026 38514451 410390816 125200121 690661488 690890664 914187450 707840241 817672161 197665266 998366632 904954403 979705711 351706012 720332158 875630863 996109381 101299458 614281939 108324760 674590339 31156839 515282073 395747213 947417778 896593698 959905577 171525530 979540334 683959305 778368745 714646645 908712611 500564595 923553937 29186462 901756745 460500158 619361965 654096109 833936216 728582592 792853041 38996238 856471896 884396525 900930035 566337989 762453303 268742174 684810427 144296416 595882660 561090325 601974221 118692121 776884657 940273381 964748823 991798758 994927401 705375991 737234088 185116489 580900289 776598488 878858219 326468684 647698855 15500808 720537586 43390835 238086063 693436876 817372600 811834579 819115677 127036353 686060600 283841683 463197652 26178767 927626605 886525265 988165070 90794195 716892290 791283229 926594956 860396669 921933956 284363696 514067298 212739397 375862289 761442337 940836220 105639102 871568913 497259434 731288550 14153834 536422737 133241402 391580009 862568252 874639817 228045003 383136046 600265487 729274347 724750889 794586794 358339861 372220594 68527085 407918383 507418827 872903411 514645195 832043659 833223596 989119339 623633857 992164688 714012874 992124516 663980293 848210701 619288286 904495196 283208431 306908010 210905680 215912298 84239626 484211207 522719304 752948362 339854216 667320103 483882559 560073837 287185549 316980495 456050553 975772999 937626306 993709433 404260050 788751991 549590838 983759055 169455665 788704208 784412224 801763354 949007595 972273437 921707817 957575019 243310167 756829474 955267935 989700801 904747580 990183539 324708141 835801658 218968593 431627532 140331269 837755692 471217822 770010691 211511491 949337288 691990403 926962189 688968411 948660149 81530471 211897759 706179008 837443868 695380345 973810868 340988245 384441960 597330801 671595862 132481108 907801662 892774088 896713923 962618518 968273274 498679092 672557720 390252666 644651885 616412813 689483976 76469318 972802929 10906650 663935229 682319126 785946273 40368112 125023928 127930883 952106573 46288407 444283071 563022714 857872524 660088940 675549663 940776341 958729409 460733404 535184256 298542776 962999372 107389453 770839394 88336247 213468717 488592632 664086918 619922416 860773293 514118228 914465087 239085528 285622428 315163216 540126771 620155695 776280104 292266121 615063115 559251501 763045580 747948344 780580084 465796215 475487617 337573580 793260892 525010062 725700404 863887540 993722037 607370550 699061305 876576834 955770058 610903658 617054254 710774600 715366246 882907342 970513749 938356856 949662821 507725360 552403294 157581337 272348484 469208271 572052174 47164193 419919415 329800150 460030022 472089693 707854078 254759177 522346691 152982015 153140203 154183581 593863748 557564082 989933586 885355104 943795922 564739832 739835155 410976572 802761010 158254060 992831401 459675016 566060757 746277042 780448682 795623569 954749016 721289738 995112345 507453606 840126094 421723896 734936969 898237213 946443345 474313927 727915171 4251527 905125439 988614247 990007640 669529434 787695057 848879728 925145931 785797132 944173966 593443868 745577492 207373109 897892270 401588565 463878273 787929460 909679736 505421184 808598868 356342496 601599488 884674819 961208082 664478643 755698100 954871596 961620587 178032651 194897360 798872715 804729801 411442555 921310710 26572824 525911903 864294776 983894664 51767485 146841683 198503068 455893643 134921903 682544210 421230226 915649343 432333081 986910775 245775421 556274031 796557197 822898649 521655923 917955808 984725133 986901505 592688991 739526433 489305697 965776191 859040016 860226031 260740030 417275017 435240704 853406674 260371355 913314825 580459641 921725165 610262194 862720601 903427688 993012890 249194331 765862845 43594975 413061895 488337317 779062101 816975315 995109298 475307331 627462095 273722877 907496550 131602692 275564207 379220083 765976123 619670398 996010663 619216760 832109581 688686660 698486172 39808233 956660245 724466794 978344393 259001139 877472174 602130533 995692231 729752635 961591122 644324184 806046875 775841272 927201690 86626822 213825005 820947084 927664793 14448753 294668439 644093884 749314926 268473765 942170465 18044742 857201554 75413773 773510134 21932569 131697012 542503303 851518842 928617769 949152728 392073735 984374106 141105847 494483795 793361336 942269471 764022092 890124509 440986068 502172886 744717917 747224794 291050315 906246080 353845383 616572679 58927532 72989029 110670860 156816627 620132328 988589870 519926146 669277423 99891239 310518821 947617350 950135991 699621363 752102139 411192680 951246590 311946977 595941699 991549321 998539008 863247900 947741967 859487198 985291814 398996431 871934497 736580697 830082934 304721514 632610025 47146826 882236132 143060050 848469625 293829587 747351392 670612401 891073075 706721207 761297462 717801786 855857325 108922332 280949293 446760019 471971649 343666973 634818596 813037257 876091324 680124098 909635198 581074892 867152573 129754428 377979666 422431660 465552844 19690507 79348348 492362163 519683124 219306188 904805878 778165775 784336813 478919033 721323970 703554151 857544709 51428299 782858485 239576141 392910485 590157342 646890395 193838868 370165094 423397228 461700910 992305289 992398168 507336519 635466955 687643057 866340773 405590610 733267541 560819700 954658678 144335062 923907048 965575743 984559974 580890644 747902071 914659244 972355964 453352584 470927161 203038182 802741412 259585978 753857499 932803143 952107225 537246972 807903338 839569781 938213197 569236725 862520561 108169045 774392216 26422825 660737809 305382005 981006012 242135094 648495939 752414431 959625066 875335486 914238115 697487268 955807482 450827969 901795595 266996168 490457026 382911047 906478805 235008929 964342263 159322020 457453106 504847583 690025558 447230951 818308813 654057595 995965089 985257438 987323423 302437690 697068641 655110548 741440880 821659852 825075805 446897098 450498643 317195965 603759138 194325690 892661621 630909022 952643046 442140155 596856769 495214910 874822783 322506904 997294182 917193768 975383451 651360319 726099384 469984284 639156242 559774121 926042971 169043500 341823979 398516387 507736870 426158588 984818501 809665132 932691357 381482461 755641798 54598102 437525376 124744369 568340988 971871545 993051629 492525782 810906980 858928062 896531145 326812985 447898942 858051033 981847552 981425386 986640577 292324387 425399908 345012994 497977123 525274044 640854097 832278396 956213084 712402776 909844314 7015457 906107177 346641652 355091036 510865960 597383089 552316213 935326727 905073982 964954761 546447394 566540374 842441136 881044652 366382441 909383721 652005364 653375937 570176756 748909646 609907955 841792672 262684923 656726312 5927074 523897086 823458587 897323585 384702605 461404064 520074058 915857551 985329465 998472701 429112117 866666578 907447115 999416234 835221343 997836895 145961871 407273244 651469352 771919444 665831806 892245847 644328142 850955490 988252068 990472587 506372446 612558217 97546415 484756325 322440523 874525864 726620887 954893986 735868844 912086930 346706787 868054888 961623366 962529983 839957479 900795576 991216334 997283232 574947055 654314842 395927403 848823168 209898881 735164977 324168906 707189520 938499731 943983860 75773120 929665347 827491352 999568464 71685871 518041641 707153075 780685462 351344080 505573945 149964687 404492232 73253487 854904325 383080970 594344746 713344126 869213618 167192602 671210455 365261922 404542347 825933828 955731113 219063157 533511268 871475499 996960907 466744566 494046742 820570769 909325435 402681776 673227512 785075820 986851417 845568121 945383917 196612736 840709256 278034730 502522583 518502057 831503286 806876930 837612320 552967859 873316800 423045228 649081920 883552398 931416054 991168093 996529264 178491228 242846817 663204527 817122064 998064062 999235527 432693481 652021287 890113837 968346494 579289680 962103277 444443672 520281569 109788862 825988674 559560660 980764993 269858788 473581996 147298085 825044172 964441833 971823763 316807162 842470138 605437405 618056958 48827729 607464208 689392549 780724724 63351323 118528655 27870828 702102367 393808547 548099402 821267454 906142624 443215925 528346825 570731519 838213864 784301223 960833967 315606090 363270091 736256648 851080361 654313906 776133921 318991231 820645401 901559775 951127951 289981415 303599005 449217212 948346323 115986622 935926626 564005843 952465992 502699571 855155765 186850112 397466673 144773662 170452219 925160446 959610205 834564020 996905568 904516068 935250716 573653292 973189778 729792673 734418749 179691844 278957405 978243326 982191712 384644605 676257331 481819698 862630981 739343718 847616970 409247593 781055347 755836644 887602746 606060030 739275730 301326709 742390636 581455988 980693758 821203029 912271501 227670873 359463503 821752174 988654510 589709064 971907321 847310354 961078822 283167803 786979188 134888440 522878117 859333018 983088739 651715508 831001137 525042882 860554886 307642015 755316692 286872385 459561000 459449137 727003020 287789877 326226462 552853816 583835133 560524626 606257013 556728485 682346412 312344075 735995989 91134905 747167618 592510771 649493544 903387149 919625491 387266377 678364699 525276486 872316504 186869321 796375605 395981067 555799289 156681484 812245350 387926368 810317676 143179904 457562900 166393484 215273102 299747807 316701169 948905879 959876177 795593908 883117834 750401097 795970246 397723728 695998287 344040286 841274340 217898933 986569067 535005714 576793419 850217578 998323390 730914000 982458125 911354403 985759450 477891396 817591866 924612132 929211276 307640112 556092561 668184337 708160505 155971832 600396464 204242004 340450457 588669389 885917963 124379494 796079953 430085524 517968663 120325108 436914693 494366581 994313301 35178860 41056882 417980061 465406418 917230752 923076756 549758435 972482182 523240116 662423242 847732138 965891145 438244606 496481734 59148241 430975411 380217989 560583766 256970988 492503614 118509095 775332733 371051975 506496359 868909576 962361883 795589263 966999993 793568782 794476651 224270461 869585224 192538490 290367186 365320169 711150329 376601348 792522139 23123526 206999777 423589443 616254478 230663567 585545742 743177368 759691187 889736081 948005448 585881546 962483003 835850250 945903900 3788034 89465100 478190844 974440563 661890557 840834702 503791186 526589623 113407120 785130689 133808691 714768747 315693106 943640576 625516266 628813760 571277548 730743379 739920729 884199299 548783910 783032109 671093320 944011363 425773282 500923435 493397457 820014896 362544181 998858430 863858659 978143606 672282278 705090754 193471809 220477935 339127346 733980027 693794654 829275652 465970572 919882501 107849516 128897993 32382830 373521984 141360083 282076154 405158943 484891907 147823589 871992122 902567508 964473308 834661388 965109865 559453562 786647931 346925967 728785562 350040005 734670914 635437714 801086860 457436065 572338193 302736888 663482930 957623561 960593555 368844856 575735184 415415901 715208352 692063155 877058616 311520056 734993600 277754743 363150956 403699366 675037096 557027137 616644076 481406692 972913496 457270064 693919240 420081427 454879243 112250565 565221249 37191361 987246191 847576971 969480490 429728385 600291190 615215488 792123407 186502085 443905854 220974757 463111971 882573806 897241840 799945223 816797862 540610081 638776238 161617436 730604136 194522160 246137260 63141550 608030415 592337204 856721164 153873420 809541866 492090803 536926384 492638741 966039649 575502679 675262403 578032216 879458699 235097643 497877653 136158993 788304262 884558691 962100866 429115081 491725544 338632164 924608813 851198226 899394764 312814549 319958665 321376964 441502802 359178183 651171302 506283531 658818726 871615064 906491378 48014937 73908995 3229502 331126970 792028548 879076392 848610049 906338394 97656111 647957677 153503252 710133607 329380378 768380015 718724310 871622769 919934089 999514565 960055418 986389378 667341319 809553243 13962482 380547041 163143768 643851115 916915989 927548917 96044349 807451545 26261406 637582892 653628384 899080605 581555413 838317744 137434456 991756787 95950808 175156043 940532290 970306256 334252179 402716109 839258932 914503579 904698342 924595462 259755456 581721813 597861727 954044042 124365418 974617523 884344264 925739400 900590509 962646127 880306931 932851004 842255161 928754252 247492579 740045737 188196071 827194049 71452480 168265677 629480550 981477558 898596373 967049245 732641318 821496643 360117166 623937837 231678854 508348675 322962261 503372947 319794131 422538490 221440348 239028737 262022376 455947145 83122017 691735413 78014745 559756471 746441875 829637044 74599808 495947432 512039846 703449109 105502779 285366423 397659200 818318085 662526319 796247316 434776430 944120647 440799214 536129425 515967760 802055711 804144563 884953075 903536952 986962781 319530783 843580307 960407900 990675289 457073065 481027286 345320236 750121268 89027148 881692520 680233102 690163136 62425805 331979342 110914521 630572848 541669482 885830831 281228301 740221247 54931550 926192985 918140877 968586594 56629477 870310393 429169295 626242739 838273561 970754701 352243534 930353396 13404066 671706127 509698040 583190545 990508527 997134247 452027168 874064924 987708810 989264996 711745706 991543384 343403407 787343475 3215706 191593089 891637616 939165711 939611307 955849029 731286930 971718959 450976117 655594426 136940979 547762837 837446502 893504604 927366103 974719311 793153825 967713947 431218611 484742863 336659538 474598855 787428093 892322639 846830419 906069394 115167598 189830418 672272650 979443978 642220836 787478122 206003945 680501360 613373853 722052938 555579680 777761406 831669601 837584143 833574603 857408828 224109959 801712354 215319688 347175972 440413637 890601944 104686206 840985969 254304406 647048499 422055873 474357852 906803340 985791080 285086462 485492464 430051249 804964101 164588385 305317649 716554833 951521441 979524342 994409242 146553024 282575436 978379604 984795036 329753615 869103089 5180393 737737884 862258260 988093568 89769495 342493130 114045594 327898435 821605880 968311413 628193650 782741837 322001504 588528095 370330372 401533537 97446641 296521285 167631453 619920015 569264033 795301440 981868607 982892146 839344556 982859623 513861541 725303688 889805279 949789153 233130689 364241359 153890373 243423097 584090836 889208065 610734361 957775828 939273347 990790720 266802024 706454203 627185373 675874154 681333366 919177273 469661531 695891872 704070707 879063882 890371124 994378867 629837884 965906447 783468633 862715423 148701304 895503937 12778223 750285502 28267638 956329288 101646117 145514629 450962099 460995088 628194543 645032328 47208231 109000028 525183520 892941200 413008470 445945822 149663314 817245736 326387648 662978244 87803741 794763558 502550540 820835744 19825476 739399371 368825588 450674589 816618922 963078115 395523765 552781842 204067857 662543022 926738647 982485947 986675973 997580980 191544062 696359017 288102782 659152926 576987832 763218596 808581451 920443977 288619172 429525138 79389627 285950687 296442980 736806546 956269737 989401795 626088168 847700946 398167276 973613210 758162168 903794135 86312963 612841754 810811135 936407998 254569707 591307829 205085277 375095981 847057758 911134768 90640500 957065560 883732377 957208813 891113845 948549198 874317192 971715727 247318130 571150579 449235037 455845128 74776733 139199229 865575807 990174308 303755207 469910624 487219206 988261008 640113515 990676203 374085162 856750979 33669417 673764663 356756539 463260551 100858107 969585163 996181665 996370963 811917005 902952269 773314920 872909712 891840586 955724683 899987796 995467906 281053993 835975787 991674696 997634028 44462775 690572048 267350169 857321939 305996350 318402510 622214177 932564372 948738313 991239457 379750911 691308688 969812304 986340711 559979165 953023013 387725182 642149771 910809278 984085078 939533280 998887541 171232676 379132537 451260824 853550057 138359861 384729985 481701213 732463766 481613687 922534057 859729518 875397325 128204716 485528293 736908660 909681812 522397225 593920848 301207710 561253082 351521647 992290536 986228793 987154562 689573600 882514873 347106953 744918955 249175580 590355461 487240872 654265669 957292329 998058569 571158077 858860478 968986653 977662276 456365549 495535005 348072438 376150453 291172516 598053888 490356937 608602068 870153670 989787380 162789107 423271652 219043489 643575413 474180531 960744881 299881010 781162812 955594254 978324244 810462631 833890876 574866910 755722758 456744252 510604518 212211851 444723544 548635699 964645846 886823678 954769589 74965170 186408018 23009691 972265113 49454498 287361786 272320578 454200749 361857244 703022532 204951100 260017874 195411399 385654761 312537208 982018818 784154548 945899019 496894138 712464652 864052695 907599677 824029390 977902776 982721288 998469409 654763436 762065961 574726788 935876396 747035275 950610695 429675654 466082834 986826926 999865421 566767063 711981275 363217332 593896592 506348675 994440336 110733302 363039164 134512293 399674678 268910614 382602405 320921015 617107099 872973829 939907225 985193022 989507666 426460951 565421543 388919117 651220607 826598687 867697484 778007966 784119374 177050497 282151017 545755288 802057883 817213777 965009411 36766586 789732571 331406613 892406666 705612359 809960789 575355302 706758854 191326470 626935399 191882528 743212738 524729352 592029458 133660268 663200118 991859230 998223336 534098891 734062598 129042884 828365352 435260057 685529028 481814217 905848368 723566574 996515525 557026450 600875786 208778494 885227049 34566440 257238649 515545005 879145045 329974619 360861910 414459584 450295805 979649312 990531703 446629604 755870165 347834950 674688731 406787722 740329734 412400792 606188409 405041665 493052393 867961497 971184734 599965341 928147099 710052218 981774619 996569365 999855230 647108371 971895940 618684796 751826255 479349463 517060128 723040696 825973638 879356556 922981240 626822815 886800475 890381994 959264675 284489727 636650822 274449261 292026093 547496145 674707696 305384945 542781908 952390303 998297847 257302613 840140278 370633454 430759146 848025837 894028037 984490162 993097533 174692151 901661607 71928159 114559642 160018441 963239101 224570355 765671827 63512677 468775788 575467670 835289919 528378265 556775121 368184353 918063784 122148543 914991712 269426642 405652796 550185381 744318366 123837227 223637884 621208815 990124639 10262268 732347020 658445969 793816062 879175742 879204557 195332793 503802658 138855444 656188811 287780826 432921598 204533822 855687277 542118223 738851423 285517343 399499728 586073377 768076806 623368650 670560156 660853808 889551293 863793523 876755335 268279636 840344995 478987496 484947522 216838201 913809675 437992208 533998124 436057503 560515951 994606392 999919175 821553706 999448715 566617113 577965959 121790909 273880655 601318449 617714008 154703873 539881200 479732529 802169565 629475001 809767155 276179489 499534594 170761896 249286534 473253082 511649024 677249880 950754938 936573734 937674283 837744359 888317953 443027893 773395311 754925808 932026564 923521394 976173805 747478872 997027592 768860948 945700649 403041349 437870539 597375898 970879781 40435777 626288112 708037111 979709473 852139344 926919734 323872749 781707395 46321264 87517446 438590644 510234615 30418068 169664820 452890687 692653859 982512357 987012941 653679346 684084545 236757080 350360018 860515127 936124786 154790925 870942242 818347043 869792312 266856503 427102173 189786681 925107176 685633750 955071575 577453719 630304927 431756301 697182241 998976883 999682993 609006568 854023397 11004694 517543716 384924482 756318489 710214482 854358272 878403156 961449521 300640095 641012471 428657024 935672703 318074728 436430263 890549835 971575008 155549426 158034611 188043154 428351727 645975244 803364066 302988852 349678499 399551876 589661342 751303157 760080209 401231673 669946366 222640891 618689610 313748354 634656703 756613190 814890619 854042585 861533514 756650454 758607913 428929125 791329062 128602010 974863693 150819203 265866635 55488054 205466134 586337039 895297100 9673757 887699759 663600530 735597888 943731552 984460072 53233418 917092664 224609575 304462860 591830059 892274086 254044745 541137999 734449948 849222580 40223143 67290387 787678192 831697698 481297185 810391157 218936561 339045375 360082293 956568749 950696554 967972186 443291580 965902074 808025514 952978474 117865924 675219126 169193414 599297490 564261662 907019313 916482622 996052746 981314569 996318599 297632558 910019416 620270217 722853061 41203357 149895791 879606780 927595849 215596836 637904867 922319476 948435854 497497119 801842920 323995126 591707974 30750556 669930796 455214979 691983348 836988001 978270697 74625871 207998199 719178410 891153218 219187679 756946771 857280630 945782212 403016363 510945781 797617393 917382945 72826553 378952285 972372567 988443802 653905862 721720896 554468222 634134975 664985174 887761718 223031768 841970956 71473635 384465731 182520197 288792597 418469276 970635511 801471459 839853197 359218657 387205420 895965520 921222814 759362551 790323630 718022686 934787401 693598141 732188227 657326470 898688086 109233878 897640101 4465245 346989329 784457120 799943325 503588490 634845520 801773922 915849602 931074817 936699774 755736919 826557925 940120559 963805691 633612485 677375320 438019072 948490885 962100621 963799945 214574593 873596644 837542175 955780821 543378338 953965373 318091080 752514716 160790257 213604360 606974764 813977304 362945139 479427997 165436425 881951225 990300310 990550620 584234596 729168220 736258605 825033787 303050137 893808404 795536853 965993237 235595260 940983966 125902116 382584953 257970815 433143798 480961402 826109880 501405475 708324178 27694575 363940615 685804039 761308334 964739205 993039183 635544109 936952454 822980641 877815996 677431442 925425650 787501683 999126980 90396280 404631336 727967020 964926281 615035542 695462054 45862452 94449073 889216787 905185933 564634050 974852433 86409575 491174550 40889516 623937945 632438413 968590184 18485244 909926225 428714741 775813888 102625260 794330324 68554093 878731246 728311121 828095108 685723813 951283542 360600580 712651729 280047485 324576368 54544515 622577226 781042223 805046897 172317734 194990830 488636313 849541371 89472466 538711243 631111262 849749708 994718011 997769840 872269475 954450178 766359494 797731759 405013852 451589864 395064152 542905138 778820314 963088909 331634531 606428107 778281908 909835252 204292719 941291875 79468800 480227090 508076309 581056792 557617051 628379759 582257055 670686724 835402281 866287811 515686684 665518760 360148118 717394171 54148341 641863218 905062633 988219323 90380392 829304690 456945147 740452466 925540037 980529644 159641810 401824321 94821446 630637027 270245184 373318906 166520107 823636556 470836603 761163069 842542021 894138935 794568614 960807906 869736368 997321773 501748491 555997855 166396440 312213118 147279399 313476626 736590543 767412721 469441532 987753068 840080135 874896765 894059516 954587796 251557133 890365890 250097249 867895644 285595933 707535191 682483586 909236273 1884792 25531311 850582716 968867089 535228249 676793010 416472514 808230917 918954366 973053817 226428144 617494551 700728794 890731417 501312671 947978790 672585973 687444809 527097642 952366856 977911085 983464566 596630554 845501717 60331614 787895944 233797020 781286729 755684863 961480563 788312201 808656125 868970975 979533455 721815589 908167304 798686078 880414588 905168739 922012326 478342111 519999821 374143644 444524725 928875339 933953301 7253463 868873037 219703161 261689541 939111388 954934771 733926096 931983508 764960491 993227596 109796358 621916572 389083736 532206448 45872589 63103563 9557787 953463376 221929616 330341171 421166535 873991988 169676379 911690378 450369596 518364058 997496673 998419647 802138532 914945371 181462 11543606 202459447 786985372 198781630 544693808 578519222 895877349 232039019 517963056 62132780 203264004 244819982 766209507 629331783 690309242 227766863 309359663 337952194 484479636 614388654 708015086 864423815 965867065 113374384 308658491 347882904 674806813 771061468 885190809 183803141 192868142 779713641 928169956 323591221 403124045 645356192 873001838 228349546 365419438 546537978 960478890 801767126 857330764 266120434 391563896 635233832 851450913 53809659 967485560 476437366 935558190 873045872 975628782 518779436 747199603 581013646 902358780 500407826 507301344 63980131 925189925 370686080 664214805 362614165 872425866 694322713 970407751 519817877 800124561 875695608 954810839 346554890 759440631 87801345 838852515 289022956 708900897 84210820 568998213 772419314 965527571 210292084 895473375 846381293 853759142 42748270 72483798 970871692 979247786 569438843 912180018 408518336 988024959 356452276 723283077 63594966 990562467 89106310 967202339 5325920 698908887 725942468 802386778 415837297 824199976 426180689 799653716 572260375 852543157 500174270 849889514 235467447 373224172 235503091 952858705 816499354 930226449 270100816 632830507 213451797 853315131 41683332 551320081 423081118 655932149 171360175 211182523 598947820 838379669 574448016 792897328 745916389 946695200 767275662 940726127 993645973 995850254 101854980 584272806 695886700 871732895 830080982 874651073 584072084 706845869 37047517 753021448 373273446 424433078 457500230 469258645 626242108 735520373 324269491 382287838 634975313 862239487 658679387 917013658 526496885 723583356 481470020 643032839 645205701 682308637 507948375 865607826 353728845 408408276 250251064 995805923 254033118 644288741 235728925 847132256 558692306 730324821 947481653 947945928 587310364 910183938 661738352 882721190 636394818 712942311 327467417 953896237 342550892 825819669 92705552 333359081 184271164 446748630 481754597 503796459 791023992 922336200 170736426 722026066 871211504 899839541 902286265 912691858 139948936 718195147 209005656 297887489 233297916 341896571 804738574 933879187 621290122 947779298 229762602 817633309 75005968 275661144 625701395 710552845 339628999 412784558 906000314 951570207 470269612 477820075 87069175 402467455 567741644 960077184 548186431 987760521 451007374 558506580 688527913 887505802 845168326 985573889 807421098 807901350 359562581 600011856 394483854 668920356 460374278 819123382 108350996 657710270 23324514 473296595 167821154 668519283 901495978 975771059 415678382 812048478 100455581 359442714 107701071 506153156 391151138 945036182 80462827 93873737 631795163 986337407 585295320 855866341 621521960 953739300 268000371 354429201 473468581 909947713 625160699 925469623 554717451 750102173 966990431 994150520 774828173 995624923 344425377 658353832 431395401 675342193 422369121 617061091 731895451 817092777 882686168 965963536 975740650 986268827 50864488 980443550 368062928 461966169 681262136 751295374 186358186 965080608 564799681 749021086 644650041 667309499 421328033 811413040 19785528 588530127 555280710 939217461 551833092 615339432 34040273 92360655 900432041 983812963 911464279 947368532 7604928 865372018 36077957 985907813 178227477 426293123 227534552 425428049 412402607 471776616 236195331 504987593 726344218 908380168 64895889 389382871 778814118 984629677 561249636 925369909 106644147 411025170 931859233 933633063 941508870 995525207 323620515 462353277 646893788 855828339 107484427 678223317 327890269 542659874 985661145 998143182 27087648 194182158 781929746 895363778 355639489 800013931 89568368 244069858 78073108 922642006 619091896 902685270 715241569 990525473 417967553 474746839 4446506 945956311 61554000 911760570 122648246 397556352 539145045 622922237 908737814 941395247 610669862 911074094 75879413 143123330 631643410 809321463 672785901 870817527 476780630 935356114 789541451 864456620 889133457 952148678 91531755 409414258 826299271 885698556 147591951 821469947 23881398 378555122 897481381 905330074 6766544 441681065 351539464 932065629 507294222 805072590 849641839 982176669 851794499 973512281 817692819 970872917 139215716 268583829 954580491 994062916 449598095 633967142 652939129 941009498 285300771 519726401 209350400 719351987 905595900 931153067 213927724 373827537 215705031 516441403 320453976 880103320 496733491 988316826 901911153 921564075 413231361 710768894 432143395 556856436 185870662 501652590 439040431 453807728 693156068 989119754 134682592 600295045 865660578 875230887 276649298 969125817 588533340 697091063 302571983 386251957 600444329 609473816 221808339 587701886 292865553 865663591 371092704 373887713 251963605 799007403 544757054 824771905 237640800 318187161 720095722 915775072 910180916 997474410 691191979 820996012 847880993 941555673 274405982 381171709 192520274 343705339 646041742 650231489 63175658 315764463 634499370 757389617 882873667 992318426 733501093 898081071 433392049 816262141 54542693 898746467 404042643 691356376 887777764 994423442 679302071 859488343 234788309 369820488 852240389 912211014 87361977 245077088 33507908 570942193 177974216 731770449 580434010 717004662 502158359 861812787 715275641 805288734 188481796 720450520 147732166 853784561 42187242 848011922 22099044 280146882 157907956 525667503 11910531 60602369 389532501 546625430 441587864 806301197 481075000 733291084 706197893 897126557 141311839 449485280 115190042 203557697 361445782 366939052 181596291 697344596 289140517 811011773 927469963 992619412 136316710 332097931 456271881 617750970 874071857 955028061 340384268 650111710 510129587 927499604 176015593 701128393 463181911 910526792 493370796 933091054 132419004 397559518 626202970 792529680 143042599 268152411 675536121 761039507 322522150 778438164 233278553 371322214 341279429 994693281 527720858 815412405 754535271 958102168 128355427 476559571 252831733 841045804 519188437 735608662 710923446 874828327 217643384 603548674 225325770 838411573 959103714 990309933 428762048 960939793 740592928 805389782 630098916 956299569 598070703 881035860 284641188 855321412 896785985 927939358 272161784 420944044 998568746 999834817 752170898 880621347 21707960 981257892 959159280 984376040 595874514 707955898 313657120 923157788 54379005 545649667 206922359 356319370 644191229 959397834 682995031 692474589 321874806 782711491 453851031 921749769 757468853 899686536 833580126 874444751 496034819 781273268 369640452 943051845 691372282 978543465 967468076 985323887 35168638 836956073 567148953 629881366 586455156 912976268 566897546 745256467 481301561 849674169 875811522 961424324 812507410 881330750 743803707 782934740 674953098 972320239 279188798 368155050 790314155 841746446 28379134 716565852 962878551 996917799 570970884 737341699 255149322 620975476 115605766 217611843 301948254 866516249 474940529 638349043 43765500 436985269 404035593 528853976 805398259 825827409 657614841 741285215 539321883 624279419 410879023 669140390 858344099 996622938 91527028 795963895 306858347 755985570 807682270 818750055 924159330 974649408 534520259 718473489 819039519 866951943 988694877 991978534 659860627 732121477 937957747 947172976 709787990 812849807 575320446 777919435 572717324 596216649 930196036 984656321 202868803 481546631 688632311 869241159 907947668 935518069 420919584 964583250 196273167 893587473 771516808 988159029 274213052 636417623 989190257 997126885 576146668 794939451 199942364 465240341 462797557 800995849 550626941 614058856 235025950 996866858 807837505 880126385 51348631 261648564 869584497 912741468 447277029 722322566 966858763 997130585 495322992 858726203 851111873 980505328 779033035 925389347 87470139 730337803 403478163 866406895 102387812 491764348 998289998 999906169 392665712 985909627 61075715 966775304 915910754 962359514 30581995 500917709 70845823 538749845 845779547 890874934 948482792 964544573 482978195 533039407 637230325 951432319 40357735 565643862 78081119 623560744 57937610 143659589 849895711 965462028 381683018 717463689 361031476 788477823 348821256 912649733 468620990 706014263 467559437 829644247 70106406 564349782 636471881 974784313 979118304 996712036 65674452 963546027 537693011 783000366 219054450 374723158 830098783 924018076 434950975 601975721 605267091 997556820 197308973 970816616 208196597 719112905 590105168 737165152 265434467 851136812 55851354 350853042 613210720 732275821 39546569 357647661 470282725 628065313 22988628 515856861 71001489 358821322 905641801 908043672 637877668 723220920 361034539 538657931 1449072 639407655 851844007 900805520 880644941 958711007 46165304 727978423 260381158 729624453 822127213 910962131 107925167 504723765 7745085 768016644 765099300 937987356 415206932 614314847 134761675 671842276 285246518 339192336 838972504 865947960 508664215 857844188 844769730 912729940 982613332 999157329 771684564 995287265 625679583 853714318 863874929 954100066 762347829 934201598 22959184 970822310 290756330 956394195 849878157 914875008 14075727 32905701 103843794 716094323 513525865 895777420 816204623 845765331 418675715 429581854 784781310 978470755 753629907 992065584 560989606 989762615 799279491 948680014 136634996 704107905 751492185 815575388 71528467 132017146 406947870 719868199 449877737 555547070 459299313 701769878 70509136 384200145 212762484 651306746 644073704 756783582 357553761 492576223 526220441 768158429 187658065 408758962 879219843 979158795 937516709 957410910 394605311 515306853 170993126 849043112 230589887 336945061 74379327 448574931 550359538 773359940 437840264 692047554 603672418 645946549 618021705 671639718 133632949 234780624 7942582 617482691 823015939 838180234 689679483 946816992 489813017 756933093 497449107 538907343 494805464 725861634 46340562 906169567 392147464 465609120 188488558 858606261 284729748 308014485 651440967 803103479 936730366 951194654 265675783 409723520 447971865 723381356 755992398 781707812 752627065 932016278 46719331 788072297 625568367 741569200 78369995 252841962 714964213 742158856 481657880 805128801 266819309 360553553 170799489 787882490 261249625 941452219 226800444 811033366 507497255 756584479 154950303 570252649 911195462 929781999 621281544 969387055 211474772 319160515 686090839 811461323 491659412 547709887 859858036 994650371 77414028 875528277 481481510 779758797 747453488 935940348 777502421 935241692 830956542 971314573 676572366 865869421 973899165 989447090 443218226 756039762 23511219 329676399 231686498 260645982 957190237 963401841 583847589 969715625 157387779 550669542 325867140 462428965 758249788 920589746 942985392 950100529 654069664 859635956 215202370 834126017 200252003 332261807 79829250 856629135 522061553 952004804 430444093 673114461 375892190 486285127 334293305 358487228 662516111 923286685 484899479 854231524 859119504 886986474 785711020 866848340 733871008 989425369 706262222 953354269 175932167 779184511 264028032 924405826 842996343 957141729 730123177 929108486 844244333 938692310 615934549 859174687 663690748 925971393 468751456 828760560 541491304 927258086 629994157 805564489 682567671 718447507 865283088 985971284 341489467 994097246 448641100 721487971 721935390 971990931 127764266 770741717 164113964 728603297 85240379 987387370 568000766 804820703 706587029 964911925 277284075 378098213 74106047 668879556 641841331 839676983 742112944 934157100 304505278 979078744 418284697 669566109 906019547 911386784 631146911 755604776 95343046 152274168 664452731 724958881 430355878 859326837 1624345 666610426 969693645 996588249 115298294 374364184 150425157 481262464 307395870 970250409 585225014 951132922 251547128 629471455 352732857 976754038 888155067 899722855 481852654 707411961 363837272 643160238 776610521 980777472 413448328 738386980 579314800 761134379 739957259 987767757 824197522 840612044 891841675 986221363 6764397 979037111 210074734 551549712 774514961 958066156 998445755 999994611 721770055 901433745 519759452 998544688 334065671 936149997 288939917 407158642 552720156 745229729 134494063 621512412 19025604 443592077 292490802 744338133 634912692 845373069 510028612 979286795 934498781 939562361 774969074 823729608 521165804 601033019 215084259 556258928 352722062 875790866 685800791 934872010 32766185 336229933 427838686 750301363 749860680 803068413 369856228 794135469 939464456 982898059 139100047 811461465 422085468 980052244 862631244 972268873 628914862 647700174 924831134 973120185 478951602 575406654 596030306 855601282 397010141 505413133 261082217 300234065 103871426 298662101 139723236 827112595 177955790 643579058 31141988 232896213 127233270 826607752 493251176 696316915 659502593 752476994 956330503 990761470 110255307 402260901 474177374 664312218 717897540 830741596 54409971 611367374 862975859 890011768 518561630 748145597 726421290 855658321 640775205 757392499 703643611 919061419 854612925 955261862 647510584 884346720 723438045 883289449 752677257 780586019 131656440 276844859 59824970 731973785 829731171 971191851 114929363 546388454 726858252 931118843 848532103 973783493 41997219 761577929 781780327 856179806 811634188 987563232 547634541 966449762 53624826 914954999 348677338 918925910 603711129 660136903 299216827 973353669 791069658 979788450 373179196 453512740 154937332 677800433 951086305 955794655 124663552 794599254 401705945 468270681 171449450 514319113 115433259 341837039 420251063 657026352 87682810 805596922 841890629 986865870 205893966 820669544 571940734 580913071 521391797 998136754 788093984 897856904 552042153 584160141 257358831 753575204 804735552 899180486 188535184 816492382 426909210 673976696 792803629 898584542 331821337 551153786 692484042 718291017 918880896 994389180 987227083 987343965 340529864 341173028 710252943 731668630 870249371 875642140 695727756 733254558 709407442 837881600 347953816 963169447 639600265 926092981 463582195 827188718 188594934 446283867 646490818 805098977 486737753 618086776 683576688 843484238 569639081 982615789 658065615 801034259 602445323 873191296 814965265 980499678 120379197 648113120 235513630 990991635 411227998 987760233 372092353 982602553 991355844 995297763 767012257 802903801 586852189 661531593 718739425 779745102 441795309 717662785 636828204 976608850 473898064 808621870 995322411 996499249 705668328 747207547 762124560 803679844 196636754 628876628 27693630 714574106 417223462 997599315 701651954 996024371 634653761 651085715 946277846 980628598 888493704 983421342 62782605 542559075 623884418 815434157 340420170 509686830 51535036 714254699 33110049 390429285 170185612 554459987 310412344 708686762 781929222 839327159 858082013 910865414 131199007 829730015 87440929 947924898 954186435 964625056 401421036 762366808 164511143 174025926 934526228 967550772 240310697 830416057 332250523 614104966 310186722 696850701 973514437 998738807 274731465 920099491 534634201 671520392 990950509 999734748 223474882 476032436 562057898 717030804 658094692 892622989 990320301 992586185 342613001 664315499 590754643 836770506 146263666 163186976 114747398 343198603 249169134 508601044 617969308 681045622 520246245 571832568 848314809 870264551 496813744 631501003 75739869 83672276 318942645 495346133 818509174 852113864 967543701 998950252 211885102 447329320 132878252 421156365 317503248 359074232 347350912 454264349 521358765 697191839 96350251 110868623 931436968 932869603 236480424 289451399 893697027 994246034 7031654 212430827 914499033 923886928 935035972 966047005 513164759 533422908 388052531 483543504 449953911 565279430 778022280 830777664 19603648 294762176 787019284 842082539 22162901 642637263 803329380 954856240 645714491 838132541 520006714 529937417 812591375 935694398 634733075 737995106 344298653 430825295 946209781 960765814 453046474 635561507 884776639 954749757 509122768 716363333 83517285 479502196 577095014 985432736 643963838 868338892 708239367 857172814 526604719 879359807 602571038 934822130 108129326 219938782 77931951 848010488 419096700 923379394 827153677 996182507 716130062 753927656 29377251 562963373 192208267 543758891 283092637 697618623 761855352 964625313 861144297 922215113 918554701 960105028 394598920 755962092 9329272 827377650 503883903 567123827 938490623 954781172 535123401 754669132 540173117 607098029 333485728 899861425 426691408 776141914 377942933 757347847 845828457 876725506 496026771 909108555 32702140 414419169 590850515 661585111 739440008 873034609 790918377 920521309 469355821 906424444 89939790 845540459 50610538 314513684 800724876 988507614 409128055 620704965 603250617 735527108 356385830 398178768 943892543 950884126 452538581 520545186 156401753 260901386 868666891 882328036 988867748 996412858 863964686 873525093 390919891 733594122 699084209 756531899 81527619 240279876 283671048 724285654 281522641 771169264 111838633 896567331 355392072 867518037 898211278 948336623 746085993 929462830 74919467 796414668 234762122 307146368 741984540 803651617 472299271 772634274 519141122 702651243 299708322 688209911 393549246 433960524 357522511 614855205 677708304 980855307 104466150 714263377 483966653 545692083 352514157 954318608 24105326 432389783 60509980 408545337 648216852 679395197 214169496 708425030 545769609 938158518 383833096 592911952 325447022 393925823 285645498 564118717 996370484 996376432 314735402 762075841 105999715 110662095 756346412 768331440 512346194 901260234 640281032 770890490 408911635 941205157 624666527 785998808 292709898 435152555 215262412 918547111 119490500 612226010 158657700 651435941 230945119 836946616 71011525 574510611 738635481 978668207 613218638 985685325 539368971 935019111 610697750 869925934 99408323 219276720 992587008 997368412 802512020 809650662 607145896 843672426 147810660 947765519 277527986 449596196 942392991 993163415 939278097 946508922 636789119 930306837 268362341 958593734 854066876 936061386 573427559 583173462 984998546 991271065 318312979 693661443 752519794 830054203 320602211 959599913 9539596 430662491 867643439 909739321 935764134 948335534 544254884 732046178 16473731 119874548 993229356 994201135 989156284 993313066 526840204 850932782 889873773 932943581 31966335 205121360 607997662 902730337 811174920 825927681 229968042 517801163 391710155 939058838 607681655 929071840 202227607 765057567 434771273 537288535 935069535 998552925 677142943 695080883 531339333 696593664 335151783 850325993 295419536 942240953 490299518 504472533 269830668 328370140 812045061 861232461 817468364 928565141 501734284 769544786 140023752 304982912 953332743 961953252 64411097 745103688 604816637 644705524 598291073 690947546 69838141 627198707 551387549 714856857 135112744 142636173 218574150 917612141 317496904 388795877 558366676 786252776 876072839 992305228 630965504 666258389 9259562 567270392 341291322 742889720 845578123 896304246 713133417 810080619 480170607 964800323 374825001 689074087 95694040 318107549 773243297 941374787 599335964 898567593 363502591 854517694 788211547 947876227 74446241 626722913 938242415 990192549 193854436 225040951 977781390 996721809 972399480 987415134 882340659 952239775 143610815 585203823 152302565 559742751 290033284 486233561 947676723 986443748 179657271 453482659 814510212 993118850 497357847 672257129 344242446 818621773 105832406 616939825 831605267 943722132 702741820 974313212 577164385 591239682 922257706 958873830 42290766 452618041 892196496 903600318 828540036 862605396 847557574 896748910 577522060 939918210 193354179 697780205 725678935 978645623 364356620 709557023 663930894 947438811 484141925 580591326 655309991 729445327 801735257 997935224 774616903 834292972 151446459 597220643 506433814 755175949 240698006 900513305 981590970 996589681 429876750 560049832 15467653 680594854 721066138 787587292 810744463 891261002 435928021 960798409 703913798 889078795 651297650 920281600 826328903 901295783 271508367 456502452 738537887 958288966 190483056 375624598 558987235 861605749 58864665 951435143 226910277 308379340 131222106 298617638 242095368 482730771 966042891 995845207 351304129 660936751 951330273 976057831 443908153 947155685 177738773 713793816 313566662 902325382 307610240 609754121 810590739 975008578 460307278 878488295 344470319 443346083 584379202 823795154 626374892 946149871 197096352 622657999 576843077 683052148 57742430 635431069 462103062 992792292 213413270 894632725 447734154 587269035 120154730 265054267 905319307 910264364 164235052 489698295 684598903 691004156 225167947 625721648 811863886 975696279 778909971 838126511 384880135 670343422 98889255 781762187 59095723 562087170 874574580 898305670 155370450 826355510 493670122 518994613 216386572 363632504 385492556 574853097 777872365 836811605 480209752 818976358 48606237 748372997 849409662 862951346 122945539 277184405 566403654 622584463 21408664 462208301 577665875 863331545 797065511 869010884 670595533 935126070 73470114 602169770 450663326 568972968 385224288 824532659 703870012 781848028 606846784 953797603 425902343 901219571 436083860 811721985 745406033 863073543 220633835 852165516 395249958 927380771 146426754 968908232 857369241 861672544 186285158 307578373 637216657 724617398 278370126 857578104 609096579 690737603 70189622 958452521 966250451 983607939 54403269 269103828 434447801 789689514 679717737 879771986 759089213 985227721 766635172 787343364 464303977 620834053 838392457 951018189 736406530 774492661 876019884 920307486 315547377 342200457 236169195 742358231 498033123 831892100 569258077 931447633 940382669 987957099 543907837 964800781 973851708 993688640 962167365 986987259 456162576 835021400 684586326 772021096 25817791 812439080 118017071 371166091 228083494 719968692 309617251 862866329 145157845 357167173 216654266 399794045 466075581 469684672 47437775 191091617 744191252 843078615 987982564 996508717 926820743 975830248 454791056 982679263 174198618 552340746 697827049 712061430 417691809 909119411 488787189 582169212 991350249 994514565 4346427 241856383 429188684 647413759 364897173 755517140 729379159 779315698 481528005 998025532 208225918 775873591 379097621 454195626 323027769 575503372 623640137 747937909 878218959 975699758 281127386 357119075 515205103 649762410 643967513 707026575 577092518 707415845 159187306 308832086 336994017 544798124 679279280 806432615 983846479 994133386 947471639 976691943 213926189 671702347 915211049 952185263 786171543 811320215 452549902 756780791 230107671 315668540 496369355 544807480 926319315 991095300 128357099 207795828 998845890 999613083 517286214 811525650 190655559 460160114 501178665 929009571 935799887 949191407 436521601 888824747 497547119 691574438 218268972 672458314 182236183 579808504 371035154 827726666 343022323 741362108 434643249 493887786 214773219 598173739 677952033 733860126 747021259 828465188 527579589 891271531 133453811 924341082 527477976 962468303 387965929 542016184 62083777 410797653 516544560 840968097 264360939 725616038 123761720 558790677 142251136 542532827 204022151 858933342 708606751 723454714 631034920 689348105 131448380 851366022 8761725 176744203 390153165 803023702 648527806 778594550 865299866 968571635 121744058 461455063 367491727 615829433 265457040 391075852 811808670 965950162 48080053 855538627 973410764 984379669 465849262 635960160 580949850 989180318 687690982 855562849 398011302 836081396 161996842 523182084 280394434 659109852 702217856 711252574 490498371 741935875 165978113 334414809 566618960 640393179 483693908 924685969 574682288 915310707 779793487 827368124 429375890 755585999 337215375 998905926 853453025 930333149 839976551 992079064 94222430 621136360 868396184 961866151 839351567 854175142 237816095 938925343 531672581 810446809 823882513 918957665 347042619 959964273 461132807 732049813 986068770 988346419 477524762 522888876 638406552 830374776 553378381 856608068 494315341 779925501 713831010 948105276 483805805 767833677 909183464 956335559 202489346 844998855 11598135 400688151 389005249 544155776 825969611 974908907 621486535 868096616 433282816 444517716 530636690 706348705 605853283 801864961 323429500 520806919 982919642 988784243 100674668 844970760 842434912 938620873 212449809 856280943 113439673 609895662 374803440 444489362 804160385 824678202 536146912 781082643 378524706 512489582 298235736 403837504 843489968 999524443 530431607 692719788 760401197 840945290 245994164 805197365 492973911 725052200 946946706 985314009 964499560 984497607 829733677 876304951 321596714 953976545 597534460 854713506 629899185 790967039 409948978 912227818 903866577 906719934 372303716 974978263 348708943 718199346 500692309 840015496 408325480 425659201 392830338 545059379 985963340 990413829 7862475 116841422 33125873 590300930 780944185 834715561 924882570 946437192 769272133 971307316 512412102 566169095 707206158 894725764 241084315 639929468 957712692 996897553 41566761 670496194 496802046 829572875 235376729 336047687 211940611 710636854 136240087 181190006 130844595 248857823 439208670 996174413 918259017 925322986 135838195 160503501 993384233 998108149 910225701 974607686 372070824 960430192 364568567 884593795 742336084 821412268 889640867 909346153 285567049 496943245 51734832 693553449 403379747 479220993 170818415 924062381 811976886 812383133 439797357 704950661 467725215 504570672 109675327 352872048 454808962 983761440 881517838 957456218 194381606 263062729 195819202 482284734 122717671 858481217 172652105 834045082 93210529 957458425 528975666 550399533 632290210 723633560 855763786 892190106 805760825 836078004 967135757 980347301 684417751 922341847 503936451 817839151 896038263 939953736 724840956 836573346 239104772 451671032 162888740 719754303 551197647 988945784 630619864 913431509 680068984 851976888 690283033 919392421 950296093 957630285 71420668 666405621 658543019 913120026 863756674 995933900 689928235 889399231 690503931 844034454 243143201 380717593 272597643 308468666 498686911 922282675 772175642 999299490 546338875 780975925 198436756 497013904 396137296 948689210 615638528 807818919 816627648 938009375 635327391 927262063 220226837 640348209 261774497 311499006 424829830 742378587 196899372 919038228 322228339 813282493 326618035 340524015 498775943 832725825 373859384 983539790 363801789 894579223 33894283 34632190 374907860 586907851 757537540 797309362 583040769 599202257 371834200 418129222 845005320 993963956 45941318 337685271 349921165 602634393 573582294 655254981 72233662 348798994 687811858 720819813 677916124 831609910 857350609 946973385 847403542 894684167 105997026 279263911 887081394 939779957 438770157 767961671 413041924 800295769 737371609 916177198 99576421 495930728 386467836 510127000 657538102 777215203 117124846 245501097 266410848 762215137 746725871 825184410 207658501 467525417 275243805 452857408 561598207 806602625 270064885 918898822 33263269 940191391 343134675 935356755 226656641 772962594 989885692 999583442 225136026 809115486 594281038 929226177 267475930 294434597 582740534 949361560 916793819 975994509 86331774 772741752 99609285 713940180 501479226 711183432 214664617 645304684 103764349 984723187 282326194 591478406 224822935 846620541 822195801 874911138 383612830 993768317 558901298 819584198 54495399 150048440 999669921 999764739 239605291 601002078 620172917 695270747 614806531 817183723 84873703 859914418 531312522 956055928 581133750 804755906 337647196 339293054 2685403 489286064 618861079 746175904 119870328 922771197 948663702 972977811 434620323 599329040 320113601 643262228 540553087 592897252 787950247 881121613 714378747 897580122 534197381 593029683 468982976 652066426 326894424 732305542 766274659 820305367 48749715 970808513 629465555 763462535 828084075 872864734 919937706 926651594 204143543 295166891 208321973 502193097 432979296 861128916 912789777 927434402 51035949 127924024 756191773 888744592 585048701 843362247 450004582 576901954 60784125 594143043 726034906 976414238 266449637 772419717 699602988 740449624 245490683 344881189 679583001 916368980 323082759 383178354 224898828 866021522 901735579 929392214 742672761 876515475 746968800 750467119 279519134 895099815 533815843 952695094 443748814 538496274 115482309 551393562 253429005 517598365 540707977 610653677 484143269 868607468 272481008 880206502 400060865 917065724 570539681 692430774 887541494 950636431 514236367 550709947 894288436 937343717 771889801 831753834 630227648 689887978 724714428 909779932 280181334 575140751 882349371 974509115 723234323 911292612 119933280 166090739 884165380 920761511 629118314 859053190 295972598 947969199 353950219 852790775 939451987 987644455 601404732 963272422 99620361 841728909 545727018 735205591 306033890 776992170 578304616 958581601 705506199 795602042 916734285 959541884 666504209 766968699 307796512 388256647 41125783 119843563 421702927 888866323 552015825 846915426 56322129 783162847 211588963 697620882 357022755 364343714 241962295 447057934 261314187 413831025 873483963 951800200 340109488 644109352 448124287 559349062 894070476 972125480 978681468 996722516 992696568 993188285 622564076 907776310 533245583 823824397 741538393 844681981 176088396 193000188 353897660 976849211 284046632 689119894 532361079 786274152 318460888 884537453 485260727 507468401 270606920 708102940 353685564 441847749 124551765 403108232 382254504 922249535 121032158 533238664 599290331 873952198 432216163 863858480 345687447 536891969 354624757 375357364 67864500 815435657 843675470 988535834 402036260 494005139 312733173 372647135 90070897 240031002 949589323 978584146 352440994 935792519 228197164 509702326 58309489 739799825 817124440 862965446 222843108 858074864 868863951 875442596 646009533 953816832 883318948 917093822 62334447 729638602 636093018 638808406 549294379 857992054 504950680 508600999 353132916 947649881 802371342 951652705 196208690 661831091 887942962 990258044 865125720 988188328 271237622 636840588 879268324 925461490 52270764 139695819 482942048 983565438 520131454 841400193 590000291 967655769 663848942 974734324 932603262 975896542 605558068 761474680 954870095 976165323 427161992 711173177 775288811 908304393 108359514 741688387 222723665 529980761 248673775 662228616 372905870 983094264 185746436 581533021 600886760 726974082 599779228 833670861 222398160 247542696 347977446 977843347 944519691 983209250 995340957 996577581 100871304 522047399 297062427 750581076 934359245 988902807 478433956 952601086 36046875 661122525 181567154 894670696 902546385 993953043 420332841 862794837 180370728 433789000 438267304 822386278 987275310 998179774 495655423 997312166 63569041 883814285 386159889 486010837 402998908 986095380 582081985 901313744 801336027 952083599 493759478 693322124 351360117 771839686 404980796 785844165 522724284 995484995 26926066 708600839 199698395 768541470 578356942 787772884 701799591 777314805 405217653 646126136 162890836 826848617 101397519 147360344 705982821 864944961 525409188 959164751 635496504 931191329 453198830 928024957 774264611 927065301 362523148 761860337 9869036 773447227 936554864 958066350 235592227 729245918 559328393 803848399 877516474 903035921 550643745 671304565 453594085 939613048 151692798 994050727 172567307 536399696 844151377 954271816 938146736 977847231 31340336 890055073 922797730 952801261 679770518 962949601 26124404 722776689 688379765 762521020 697875915 913052799 145486855 689445631 640577260 822476272 208746916 511127534 137155962 568265149 47125190 763690493 850499088 910354961 613198793 670196435 27332170 382886633 783828560 919922297 297838452 691919084 244788862 951943863 588882700 673696321 648929434 679012296 843603022 966787782 842647380 925016112 258956465 823184321 403760218 812469672 516543438 981513347 873029780 887813112 39075239 389261274 710314872 774239071 877707305 967090712 649712896 834172819 745039849 898518859 228654289 614416485 544976908 942552359 769231152 832643979 304960859 778517314 131254107 967811688 298543316 311980976 656600057 898660003 147067539 995931630 790964355 942469224 31766600 301283424 160210693 241521937 741312347 873683091 109624052 516791020 817423913 825552175 147685485 391729258 294590415 539530790 988626809 994739391 926392428 976909756 542798140 617244565 185482323 466058395 860293626 961563065 18864937 964329603 20322083 527593693 321963382 561844346 394614715 739284015 421578955 723021702 944326084 967176610 370983828 909228013 173274246 174277852 585629567 892995145 402689300 561105209 590847655 785163084 297401901 963504654 484038696 667040922 810242780 810532218 126973926 490030122 247342058 550098674 509735876 568787054 892736661 973868208 770012777 992059545 24589600 100570765 89757937 592320951 674291704 835368221 775322651 905411704 143141516 962352740 943157925 944996943 409793610 962985073 76496247 857967291 536654682 646986319 118619583 908889633 635984977 862865428 323630223 978258294 249368780 439502611 922223604 960915532 18319323 167236427 416101908 880249130 81067805 156537593 620552341 720392544 593711658 849286979 770535600 980365247 272666918 828586068 801275509 936113449 477799508 889376222 811037272 894841757 44187684 708140513 537780038 899089547 889530294 987774356 928019308 993165775 546172607 548549904 75337377 179065608 687057517 928909390 951595856 974582863 912248477 996228955 743540123 771726720 399358390 597942608 557180107 816290779 380696662 764356752 187679691 609449209 755538576 950028369 228762763 452746572 188244092 707861605 323239036 901191446 125810186 679101460 254092772 843503444 427032240 975690141 950849614 975445503 751993366 971229334 220621720 613387646 464119914 935037808 341092485 558901265 14720305 222841134 619377564 668711723 194463025 521913654 628189283 737060663 685436604 967227344 409077543 764625815 526374168 713166078 398352450 537429536 122142718 431279729 963978562 968140348 927991697 971706749 138717980 452195322 655912141 711875329 187574537 431399483 130863573 466024196 757838045 931108838 758076955 880585783 475026519 547316950 668042487 842802993 421543519 491278692 713284009 792278119 103692703 847255960 948446667 949147250 287362069 751037048 899679688 918821454 338248085 816262950 808582504 957295724 126115936 880939720 25884654 792254702 262582271 850618833 901805328 969694924 878429998 907640895 995765838 996808635 671538199 898599420 192010587 479367058 302623185 393872162 522170930 633274362 777507693 788140102 10344028 220867119 668172932 988132375 52399568 503556799 949276696 987210560 162411734 286467224 32778290 688158135 185226484 619341183 783954036 972823749 708663703 969920171 26866501 774128101 572197605 700886773 597427868 974666821 687007751 959370168 852494014 958672638 612551354 709632544 684580065 768905923 169537391 321358872 599466135 937922712 262583726 861712685 370116419 829723836 484223407 520355543 858348295 942385495 447046293 947090040 463467723 769178833 602622742 872473541 729276682 948374809 600333039 642109019 24696054 53512552 878029502 987912323 674063083 692596761 709652011 777623894 466285761 526489950 540824767 933655347 539008672 547805948 195269468 799961023 744498088 890719094 816649258 937139645 963695325 989041806 793193152 869580248 434753110 698761208 714514898 870787433 113090100 793495690 214874257 735220040 541681796 908368539 668207295 863395656 518320621 728821536 851243828 857075992 371967589 735766929 864157300 895050091 85409917 415843372 813929520 839406756 327961267 884259139 288454677 484241775 291074938 412604836 630784444 898159557 61302763 846934190 203201952 521535926 555421010 825328694 598918042 649341191 655194985 935017093 380167163 506696208 600401691 603914980 177698274 898328891 244621742 506973061 710597111 785248174 438104737 988615315 587399394 699827420 478614618 795976906 393520614 494112271 517251744 621219233 94209405 142991535 959152516 960297341 196384912 962528996 854865486 951219166 177102644 954707690 854873876 929321023 279167104 560070151 67311314 255033829 804101952 977679123 206635086 347713401 127568374 358863143 474536857 703857267 735407903 770345443 555271266 842112199 58071726 702548229 749284725 760585909 227426154 541332976 388675119 500217352 98376664 545103585 645129683 859272590 352773853 859482423 708090905 902593739 355326309 453381953 792249418 841820920 62265042 130860860 71901929 751510727 863701456 942990001 598903975 609682221 152767699 547205261 852727947 898697640 495382152 955183911 474473377 797869886 310372014 633353581 795317084 882545627 19922446 142240101 757532029 844159727 21194437 499629936 778304776 870668705 852673549 990687108 481012673 668121976 38570804 726717795 1969983 867528347 966485875 998421809 254023460 695436013 9620321 489504261 461278323 482955417 159358467 507220296 273065026 619063013 906710186 937939173 598083588 842747844 537413358 948564004 878097494 979378066 689247077 970209121 598823703 671814812 335419359 740584266 298569224 882367791 520156200 911512782 565407300 608146929 981117290 999297661 334682743 390294419 306890439 872289548 276280038 578948709 338748390 466114440 42934007 101736178 547887384 836243140 176273802 397066427 274710658 890825798 234853917 423021714 646825783 913383367 625780903 652777338 47386116 550577787 619134731 809779529 826394298 832053674 8720663 127243090 684919650 911820054 902816145 954042437 902017995 904888999 264219217 540490990 431845428 481668979 261229980 519915082 339419918 649831006 614783369 927317380 514642611 942756749 776988354 815458322 181531976 447918213 725219912 812522280 421705256 626411346 899891868 930420901 301930057 546521871 401847340 949864723 859554918 944915581 870089640 924314802 809033009 846321664 356708624 410765045 107604258 132178374 97947150 591797650 170111791 485716775 196899003 843714708 280702007 935849174 804015958 942916324 987578823 997662180 223980924 388593328 285561541 493527107 86065250 526814363 350759539 796935858 184233105 582856052 519394544 778278979 3092961 984653479 292456581 968203208 308571082 622898704 654406718 738913579 358987305 514321701 304246276 375231511 306374175 619263007 812946582 976556682 836404554 913422965 715393032 825453395 509322531 912786303 366082881 852540995 407329155 535303786 671275608 887675419 300069788 855850976 223112894 579294469 166945157 267300711 978148203 997355967 202915051 444868429 413081993 640629103 353140765 388960293 840616150 847219365 991015237 999662162 980754260 985609751 611950515 720685641 910294642 969258849 843333929 933677977 269560902 986964286 259330595 514996961 953086681 966873646 261197131 682616228 728509403 952299527 617062080 679540468 366720867 543332125 93369072 910980295 748261466 817849012 222204049 603325220 645459250 674635385 527989624 931989050 727049368 853822943 88495687 855121786 491212143 714705304 552832234 609498444 779323736 856558429 245618413 529551669 14535882 350409329 79704691 94564633 322881311 409049436 49948097 62739215 841570895 919194150 200362800 939710249 366741297 739952591 552894890 869518640 289089619 394526528 715692254 935865416 772671132 928536395 510771276 819412159 692475193 795934733 880281521 952524929 735550220 797166888 915152233 969649295 380908808 887907428 4160140 465995852 272897731 975770299 111695840 640624235 416080042 535715002 256807157 587444724 39523678 313112090 148313060 329435361 475603510 896481479 675471424 833666264 578375558 811583986 367912429 722078121 432423729 698477725 618688640 991623877 352170522 984733361 169524082 362247869 846434864 939831835 342481070 625120484 838046213 967220887 967456579 973443975 188765610 942851733 928710591 970229118 361771618 945013032 620425959 980736031 273979630 929132661 609240174 939646487 65085448 384128657 584057718 725261292 138984659 447548383 407576807 855001128 61842741 628340200 21190729 532176919 573493045 680054776 542097879 985922116 761547375 868103317 918587333 971325689 901920180 938670313 441691198 952905920 246477963 342680887 513031385 764321267 245829902 918717456 894223120 998996057 505399844 546801305 657330111 843042385 816256172 867155695 386724054 729532988 352958731 889747631 628644103 726885160 213897402 593307999 831952457 929042741 257646106 460401458 267376961 821335356 283392721 749429089 849174842 882110151 299451283 681654867 945081827 949104526 648841515 909395262 659249376 758745363 31374657 734904142 49231274 554829749 571079705 914831407 939603629 940856182 514560769 654230933 555898510 620050757 906444779 966472482 710797761 790639475 310026904 686623800 744817747 764350993 803280520 806409225 127357575 144777572 829155718 979418213 33413038 735400876 636469624 922944618 259007004 924442911 844589463 892732844 619584539 742423308 13020507 731653261 275388804 782136928 827474564 943542756 904206674 990081967 460253235 610808262 242048680 712198044 219425321 790912277 624295503 653063334 427841619 670444239 108048507 392357657 705568838 818505971 570954820 963044510 661086910 884915529 392209216 686024193 708766842 890287533 986485688 990848002 370036292 837946838 906063185 981216859 108607852 733301563 296319477 364302076 557211434 645801254 678873690 950682437 892372757 982365322 322794105 677314689 656873824 880487493 302258848 877632983 232478921 912168439 269504711 586263364 19974351 686765374 409173210 689366211 223597682 910107141 563105373 893311537 363403894 365981409 821834738 919608300 895310441 998219023 74670898 510001045 520471894 798282158 743830365 827100487 728789458 779621885 904606635 969793178 140718099 488910507 991067064 994299403 285126233 636204610 700323132 721974176 512369806 526982696 130895569 483576763 622996968 892811572 751708695 871218690 769786494 955053291 253666256 575040656 838157788 878597631 103564722 423128362 129800113 477804052 919527805 922249282 555796676 568249604 653014571 822857408 945718290 993416336 121317301 386275162 24661942 77115424 312502891 957132094 276494032 569004402 409765863 529949799 673143292 848008261 21021434 248682402 281897691 958939151 435459878 842523975 777497486 965776540 739357802 852283487 616257961 955459316 910964497 970041123 793297087 896508500 494318986 879309525 442937367 777311285 396600535 903407371 805082552 906426662 851643117 881979470 971542413 994954200 47102986 87363936 940476383 981499733 270968613 929726956 883558600 937437177 428994153 680331074 863157971 874702084 563085834 956992056 128290401 445590617 974598590 992381312 148698727 991473275 206355471 947212453 739795202 988422367 776023681 970029994 18484945 32503361 478500218 593594924 397403526 807976728 415732542 895863550 57201404 673588666 68714793 314600534 511950200 579913781 322931717 697522138 417108605 754740905 79913144 278249965 217298988 943187539 773641078 965677167 285551260 774525698 92492105 937786177 708260299 759362435 816840196 912799963 307935106 942671205 482102359 733473702 315981754 765501652 203517451 482101437 841164806 994199650 642809335 841974837 19501002 427075654 52971974 461891259 217297536 486870597 76788782 556553611 42598349 909996423 278596820 868655475 556967277 768168016 9437388 394775268 215914365 465858342 162950920 495840073 159585969 747842314 528386644 801946176 884407883 938213410 195442560 579651554 321231966 931014154 150188663 218698944 79578073 435459631 302116663 707517329 663181872 882125217 719630018 750785542 224598330 476703554 555588764 651812471 206260811 601229680 745153836 845895610 245153740 672797734 699527982 894784336 926472051 992763225 475692565 793378270 937513312 985121183 851850850 855815642 564962980 581119412 566679329 799471229 477319484 900514339 346967471 915908339 716186175 841441625 466249802 997661664 447929885 725489884 814289376 841075418 612154162 880488404 560372489 565881581 326829182 706238233 256021434 927016437 401969790 758397110 548307398 944920364 111793376 332213083 253890993 710942391 542331489 986602321 557438371 875563160 911449725 977558205 603666259 632323646 590609427 772651048 942611766 999998877 96832473 959214204 884759993 917163241 483488357 787043736 978773412 996996268 131473574 499044795 167524022 385700424 350852443 862327240 589650998 884723911 433613673 890330304 327022300 533715913 378497532 458581338 28392120 508443366 856338008 914437043 212360123 876190194 931336438 997970319 27991483 994750897 333966576 603211820 802411060 832621124 538521760 596202342 836332207 987448364 305194646 357531822 286591309 309371764 418611812 976061558 892073932 933720037 121454735 945596765 676711530 857463966 398286259 885136543 582713185 688739657 809649149 828033772 411614905 476301808 285335888 827976839 658646778 910948463 917357735 936707228 430383870 590756251 707962995 981428595 46868630 923200410 658644264 810206329 736510698 941525134 857576252 905724940 309293317 664325221 981521135 999962566 50591499 469623515 835670406 856540431 846054494 947257698 802874078 892808562 764291479 890257856 290325694 328974424 402470542 463244599 16723389 561259270 243198394 632037800 391703850 987577901 396475278 822024822 284586633 519954242 254170569 445708074 954031693 964544378 332133714 881838530 774353462 875504325 246987753 887009959 726621876 847903575 744693244 963599680 956604572 974174932 510706357 890362031 461415141 584383797 945410402 967192271 681766205 766940303 16469515 640591397 521449688 564024408 557501139 655297745 8486059 751482478 217505902 232770596 156350338 640533218 292083104 854688467 536384367 561848308 30813654 161384562 772104545 956819836 95207870 727769775 87999663 551596353 315330518 477954528 420649563 586750359 157251575 545668982 415721425 464386073 242279154 455829434 196990689 616587900 449813715 478752543 467833313 605594298 998705367 999405387 461959168 485558201 13859476 96991029 879981680 953089533 295374870 954069990 685497523 951681992 542887795 862636227 662077253 729487343 168985317 909440120 621811427 718740974 160228961 404517642 583756863 961736542 992116379 997672264 621711044 985648747 665471937 844404025 564700649 815269625 312924231 359759898 433940672 933069579 923668630 949202482 642507133 985963353 577455037 931626642 752002640 860612539 753560214 881805878 873491617 935943715 567185568 848319189 575412598 738455916 833991232 891927386 496978597 622232368 221239988 935489422 441016517 795940445 510579170 666632651 919298938 973559599 632546871 701036326 633170429 933312014 728808882 976161698 180584446 269742895 262438028 990463935 909028548 993926926 825255491 894512022 360186071 418588385 531949519 883551848 645354805 864108806 997388519 997894390 983697184 989641361 858096991 912559041 107033405 781709069 771652200 781835597 29426311 34613809 552040525 589687461 722514660 872878326 709635699 784571856 937434129 943028004 793456913 939307445 784564043 944432461 192642469 627018451 48737673 661312521 384201712 456033926 601118182 701906698 726260445 773152028 773118042 876191457 457110931 849955271 902242428 971257537 305261838 418517513 698584178 700244729 655321931 831890895 968590624 976639220 791814260 837315687 48276950 810799667 919792191 929965183 109320405 116788087 616870904 822917411 398818591 709715632 777092070 817075883 708784787 771245122 997979935 999584105 52331711 693882608 997538750 999200372 687243108 724432748 310520465 371329449 87649 402577316 898216545 941896349 616593617 805278597 560042354 580924525 255614443 470087190 84570214 213424829 324843089 695870797 391214417 816305158 696256121 884197005 810964550 867455526 675897659 845130667 532707105 593010252 281523092 649100059 900936769 919080498 875228994 885914431 241992485 447179870 876182439 912737026 812378118 820683296 383687058 695524127 130611988 496302185 686556531 793361337 413263436 920465619 541816569 874731321 288324483 465607181 305484142 695577505 508300691 908033719 774284368 917981513 668503469 695838567 172665508 568351736 671024761 693493283 171764947 554520075 641659973 907780489 617492767 770713720 876117079 891715683 857625164 864156299 611141507 772375520 185662295 708387625 132078110 259159888 445709149 612406678 429545121 487060700 988800631 999315644 391532127 605337228 48492157 572674997 132755783 912423427 643313772 985666977 787020591 993196725 465913309 548162628 371001243 484781275 487729115 644049590 766911742 944139771 865504371 996910609 998525172 999164833 728588076 811930070 85311914 182845191 305460579 768090904 827574960 985248090 43492368 269900826 474571107 867872495 638236994 829756915 318856805 424183302 280793043 372996195 451756793 924564192 535371098 913105553 724975336 846147436 601317381 897899521 349262390 399910095 302398976 743733826 82282156 488616893 611776697 698549935 222505455 657710413 503576616 771341374 37751125 163113454 903892156 908656722 915892578 989706488 269738768 695750798 14264331 28450467 651641891 748021929 475723097 492023395 257057794 463179237 909557385 990696193 593518416 624767158 995823674 997891497 502681382 931214066 758646952 774997426 677994749 750400607 864935720 957133861 325986711 570719029 331699638 585800290 389236407 684444005 491434399 716503563 100107935 293202376 797527965 885424276 545744429 818436453 877609031 951250620 774038125 988763402 820555826 915332395 775047064 777579469 988764241 994361151 223085996 955522884 627848254 632956423 773692511 841444077 602227362 808232521 357892031 892086066 983672230 986535028 262339644 897907471 473502003 955970610 189059831 242468598 392385965 566528773 197021094 209471922 691289421 802735790 579662657 667852657 567941149 807257510 687845517 972318676 826279948 834389047 860090724 902763165 734631738 906361120 384018471 492688470 889055358 996651369 818267467 878196000 866622600 927931452 29697753 733212242 435067014 845362294 233100689 349884174 900572524 975039777 917121434 962061565 698272813 737014125 848636944 993298421 909009695 995075652 351598877 413558074 272632209 504317847 168776329 963579040 888267752 999041087 423799226 560617920 389636551 732685215 817724258 935643986 415710930 449665544 36692375 696268465 924546271 939333092 607977319 752323224 552510256 855979297 560034209 896329905 973310408 976835792 531346233 791216790 142438414 192544490 412754427 893554237 201676154 814643340 291969797 680817080 980605466 989164470 288932021 549173632 558544755 989050610 574751939 633328082 904584117 906545193 659319127 739700961 865029884 927161664 821016505 914548795 710641525 772306774 752486370 980499365 188239075 852056854 80898046 575457746 861007878 968146536 923125795 992988467 142190659 593998527 606706106 722290578 774691206 831083876 423411504 775260040 248028027 672771670 845628693 988475859 161599136 922898475 358045079 611565710 864629338 885760009 868307730 930150949 681774971 891966556 344474030 404168108 302900033 604606735 226302893 885057298 152617568 803040381 248331284 480048649 269294635 797471954 884097664 988129214 955261416 988169983 975258325 990335926 841048874 979849885 646035859 724126549 542562499 741168740 157215727 184619399 60915883 136732595 52129956 439723527 609393307 675477704 865389105 908206870 102970855 604071483 935996534 965970885 67615031 598537924 997100192 998358690 433899915 653404344 61236775 423049709 126744142 413197728 668305216 818006378 946079 285541106 211157199 772636350 619371955 820276256 91181415 547234742 634975597 816238693 964974276 967482649 897597714 977134521 38690573 151633169 753706378 907068565 770281533 779478565 387209705 518423385 837352046 906526680 197176826 389780250 826085942 926767731 238521392 477545091 639472584 804957862 291557704 736518798 788064597 824993189 329978306 543293625 468580254 612561120 515499505 616911734 466929528 781713045 906638857 979607458 462592889 811156529 941325668 973625588 821969691 988319790 711080115 879583802 509490344 744646405 875323338 936860720 867851397 892914785 344419821 851253743 941537235 977824176 814960497 890579715 884976651 900240621 355135927 761687634 475867552 620131937 432102266 842371291 359051436 955931441 771257991 992903079 65069161 88974026 662214876 758330339 824103978 905997922 900302075 940883617 116439607 459317910 259463488 565427322 90988046 986004594 185322734 479446267 537006740 752334143 734888670 873835350 629555083 764367330 905903192 926867535 372819601 962183804 973970758 999529412 226075168 762949354 38860287 414417192 208688528 455025096 468681822 550178723 978480293 993278570 698015169 951768346 486652664 610946159 298985344 504870717 474500903 975417890 5685467 588258894 781887416 865733252 13954254 454143226 638488291 782868304 181333271 993263904 272230509 431391199 141956136 604461365 903304178 976415911 543334242 690284313 324124738 687372614 839203177 896854348 130824370 905091806 990843824 996327378 786098743 941185255 42433104 202597962 895967706 962553457 155634513 196522583 58563415 439801197 973531878 995366872 896227234 918275383 691892010 919600929 943859322 996515390 124422923 486155060 112913037 236168790 392146172 578644002 700928602 999107439 958144189 989747895 765950873 789994104 13232143 186790352 825141698 976879661 917075483 921315844 492921446 666198226 445491248 487018297 969916344 975325536 372719886 880915819 554924966 734628673 148006452 700681721 29038537 820550333 205623736 863036546 662104594 957801936 751880237 884532158 109560437 514127398 639925922 843597358 44794815 663937817 15250248 963542025 514044891 790653655 104542239 997942928 286952183 421961290 566518377 601130961 394233600 559387790 440348294 757076853 55028678 590990531 831735955 930718783 787514703 954984312 347699195 530363913 581706771 627893592 372516958 922665825 953710031 992434551 739049496 782056631 834304057 962826619 73047075 527353537 60505717 762070553 14918244 451168435 165479493 712839629 170321456 962585369 771847982 993199017 289708013 907275048 899853189 901583894 219289500 881571515 108014799 664281307 136021928 249110635 659474588 835243041 85167349 624837185 486365993 796307185 687205768 744410343 905484049 969686581 49037781 120269552 517285989 704375255 395178774 562418269 399871537 553652063 756779102 772213334 275167446 999762203 727540415 990766987 992927329 996287468 122850538 350924702 672079866 894082096 261158881 727896634 791805970 801631470 988564646 998830017 620858900 855124694 909906705 932504150 128664274 197923082 248359945 871457448 23175508 877145816 477274606 582231912 138332980 248387238 1941157 717715271 678719041 925424572 642392318 936443547 755110872 798266140 384313533 574836251 857177372 928416384 361862046 944962389 657661946 713646414 142360373 201159048 595970235 971657812 541196257 722292526 45635557 347760391 660333227 950994399 250490641 436055392 727213899 916219066 757616857 951154716 734331030 885432670 342962307 492651330 444184633 525756654 329566435 601339244 448639457 955150354 563853505 940280068 220698576 487092963 841176080 986383304 520515347 528147184 282715098 927982228 766545746 830029314 314410647 657493884 49974269 520481827 626306229 964388586 427919874 947331939 177649173 989445646 25313229 147276882 705515375 872425541 200280279 853104355 549059198 835282738 656964496 761496371 834225931 873596836 232027205 844538099 254631442 357530644 274145237 692769529 835192558 990580017 897922448 940702080 234428382 656620662 2004150 903001447 280091053 374638200 447624501 491768377 707107862 764748887 295744441 486746703 469569179 859232094 5699727 311805447 773723906 941931376 370807039 782617697 697504852 955327381 581317554 669734952 257096672 983682147 816418256 884098304 696820287 994031193 574361312 887474841 338813771 612224044 756387296 885611355 314800174 853636794 570112041 571533895 159483841 730223971 679151576 920007443 267386304 281301716 53861731 284424489 145143902 725414609 247378275 446099021 897736759 977017645 312254123 387037766 758812947 759856881 885970754 916031809 835121918 993627611 46554925 661297943 631596575 841388719 780921993 783295200 651106379 829711052 921754577 962746519 606976817 937546458 869923165 930184724 566870875 671192098 234501141 259643918 53402681 664701159 106376649 739601837 538292687 541747670 72694665 694021785 963565620 966474649 856855457 872312738 987908104 999028960 40393025 413656572 368534524 700941500 346162393 504809947 610552219 923726755 838841362 958917112 385366610 403633076 46760912 563555247 468849595 784963975 221755447 838302574 328902189 668307467 976742107 995557904 858834726 957749484 82111241 843619843 661377199 681895241 529309675 913631360 865265187 993123228 772461238 855690262 792858385 913179971 203089933 597319177 809369344 913517778 54762725 214167309 174989370 248150574 435477039 687292118 875113283 935262706 989276257 990021231 391139421 439899834 211976899 296329787 473439532 683088419 375799037 604871306 319071177 351305942 441638436 455312278 45202960 459056597 935245269 982801070 290475379 580179769 29435818 132108185 71053062 949713009 581866157 761016002 817437013 902483313 425539131 760925978 816627080 852237973 246337409 554288340 598651668 986409959 660672446 894003435 933560288 953757243 691693128 705132976 646636396 707639625 823771096 952059680 836992476 842320933 975008037 995295822 163394511 664812254 463427946 779820196 969988289 975917478 787250326 998499733 655183006 990676448 655635409 882378763 364551406 557325383 911816598 968444566 454096981 559219467 423301485 982290059 384413987 590496835 647137654 660191621 298673941 997567025 224984494 664555997 715747380 813269851 119979347 705190899 377277079 441679091 351116879 687405434 70321058 857767032 525499301 731000021 353386327 396849100 775868638 986332937 214060542 797195571 301904499 825982940 31432865 325936055 570924629 780582271 240302165 826235576 517186643 908028418 256684266 702649576 547453244 827182808 458046523 808257751 764340274 822993479 886669784 947595665 361498661 733107999 245465363 538150566 478675521 617422226 113041718 230138758 74980496 108079602 723772387 855362518 584009072 745007472 590574393 822555733 451789743 674094075 266586779 921903012 781886985 894868225 89717093 589100720 569097753 574549896 819837188 933826184 693727808 849529931 397721296 642821176 128805915 220217619 244199313 685995065 87138620 195535275 797879609 972952211 12199152 803873646 916162230 945698363 518482034 786237606 688138968 774815955 280338186 913077380 997845458 998828624 624244758 683238384 130035207 744973680 485943698 845914172 909112629 983928362 333560653 643308850 656008569 729449013 897734394 899352890 101236495 870494485 488327740 773349721 83222464 541717769 299481635 747593704 965958842 980050306 714184185 839937069 599750339 662520781 721913132 948028584 91727471 370668248 752038306 835491086 263288561 650533301 16263631 553904987 479867464 914944222 436586451 874968431 544891292 687681334 912188082 958082637 500176638 918084240 13204802 136985039 584382803 899367778 620834811 857279055 598633507 608608792 615736469 748327667 931234329 967666175 710427597 716201517 783766367 962237332 245225237 397555387 994238228 994933524 46963258 66531392 912297847 947219721 405853151 866870631 562844675 863282158 838035704 873200555 718215002 759117448 351480521 542984823 660554303 939730501 415066367 498387569 319740871 753083010 361492974 517560045 54715957 843857169 733796186 769368824 302003523 694093159 772737119 833776381 199745859 338374198 14900270 260808243 419505692 622546531 923264573 972366274 813062672 901230956 930955345 947231547 903849631 940215765 460484127 789355297 115914758 701645994 100314414 135216328 173722347 511678458 36615799 526872476 636070908 765239630 8529271 28230880 54521821 590579594 553070203 583888068 919760717 922507196 793856859 915488986 724397841 831417593 298850928 840322712 489679501 916535297 173194557 864816666 339581349 582888142 371257636 948275370 471494918 682544018 156741661 509766070 794183471 941556948 279363153 660919560 524782736 620734360 375783392 724512425 959393820 972033339 357736290 592649968 265080684 652588825 623969754 825709676 358169589 869124184 626666069 795565270 224815172 639018696 212704307 431996116 361727837 996793677 688230609 757633532 983509486 994990503 704149884 972140314 165895443 585780991 12399517 516293919 390280821 855858714 481488893 550581286 254168852 594214996 37976914 982046459 564838951 847374567 356384637 896363612 871074799 954007608 703051010 966086998 592254056 808983245 981364553 993010701 954325386 991766821 665100894 903074621 331680290 521032043 653565773 820062552 569226292 751315212 944575695 965597389 266022514 668515581 40878995 271603190 294734785 671171014 629837999 920378330 695155321 808200763 925063637 940276485 374177144 523878202 512107683 573570794 251634517 413211609 637359174 993050726 218428676 559360649 263857590 575541514 203987637 891213030 865524727 956265181 286287489 694036670 223065433 814130618 800752048 802314537 488976059 736115864 676173266 809616209 600084947 950131379 119186925 581851299 758342125 890308881 329944157 747594661 488269380 794924667 145907439 433154792 825655867 956470292 423727041 749278789 744430089 784958403 869801817 931198048 135791035 421343870 837040026 995154563 620752844 976837641 217947365 914242290 362536474 784312168 291382745 648735562 109731462 252212013 734693247 925690983 802973227 856294307 829739939 936506437 888293083 934699697 334350846 370575950 591922047 817393952 686482503 819445439 463518918 646522369 462149508 623025424 397152918 509997225 319646154 760522217 866664096 887060606 668213203 819579896 701641655 776682253 453767275 908422488 656062552 695793336 142884396 884119461 638837617 785408041 654816326 718358932 954653840 960235450 234751948 497199740 440946663 673729321 841636908 934647173 797546904 839860204 817652191 966660866 658665443 688461658 740323663 972114004 497117476 876814144 34154256 820002125 676544922 874177939 23932742 343208499 659146472 831252785 737825280 744609527 722884481 784199163 829556470 871905941 603445171 699737866 471011663 592276236 370083419 699878681 492495416 847675010 692316907 868394893 695981331 992463039 18821998 937462449 237401314 472017761 934962360 992343006 868290103 936236379 730404067 984682870 928595642 936023399 958515574 993106953 89228841 567256336 83055304 674001298 618401972 649804164 187927548 780918963 205245090 464333069 293903507 673804281 590473853 675926773 141777986 581062158 558471129 938324212 357640643 439100667 715086785 959057448 618590427 805645355 608190065 879777823 347772967 864990031 523328816 542299900 686395203 713239897 313045502 972782058 480626482 558182364 346051602 658567332 406072554 502898680 830314226 991214201 552893598 772134877 218498122 266662849 520474272 645213625 731324456 911221186 787699168 943039329 264210057 472837523 688895150 850062958 687377432 707046991 914370109 983917083 929400550 942942785 870996727 921397604 298052937 672190041 15236688 991687825 303548823 699383752 852407743 984261663 25821715 374758888 888147061 911328737 248631676 598181799 849680332 900281807 82914090 489718792 120949271 537598223 632813535 746787889 143228127 437888819 711056860 831461692 789488513 895755014 187139636 879815962 370833751 378518581 838530204 965171699 320304431 833182609 415310067 616009591 207786774 208077944 270921584 468048247 914242227 958597920 189286395 789632928 325618083 674367234 578359225 669756946 215791424 374125138 596627618 842713672 984656810 999104217 322032265 574545165 460547679 787018882 304390409 763484843 843637219 862055505 95313832 491651817 387607673 999658707 60681531 104112549 657197351 848152470 467724475 976877365 796359115 918309926 357063778 680606317 957379412 998434626 603561281 943498581 516828986 705296509 783081923 913633927 723300656 867943568 645285749 712402432 600640504 801627794 609738498 836422286 321452551 337344144 857532724 860708140 414512270 926081410 64371920 515159371 40379446 461280987 992043868 992900752 868886618 890561398 883202320 984442872 856221906 883423120 905209559 932415826 945605760 947120227 447855825 930902399 732964510 995058669 849304603 990142341 123618547 453322884 542863935 770425211 319485514 491949683 203450031 400292429 960725605 970582353 781381605 786832366 709538780 952273098 784410125 986063302 152518562 910193230 253002943 346291592 654852172 874910105 175092040 231223039 18027275 806567670 737955609 852670914 107471792 237471036 79546424 490798661 578845348 813383685 830564221 843384849 77147668 161957222 526705917 620411794 878787277 975989555 160662396 418238275 911163763 993521421 383581972 466633957 635456244 716195606 288976469 776029770 157930052 791595942 90508072 338017005 455747749 766309711 108600318 200412809 310929460 547676395 562868036 774653823 269213949 858177845 122234311 765090323 151740328 952154476 210736178 841063072 585939248 620616245 998610884 998683029 846151041 849554441 156178980 633030238 528572570 646785956 814847803 847642885 585621783 697042906 893270011 935538366 225566031 389444043 345303352 898731826 393019817 784015897 934408350 988185207 388558045 676986331 780646938 999259971 69425631 242617539 336092486 751160773 654828365 914471436 247110485 311656094 24061321 459200252 472775742 535333557 167521269 284006035 731463291 952217358 3253580 736928920 391009924 400351815 455241259 747761266 636107981 974480401 830679537 912858994 896387432 925364554 387397746 913607401 123502631 250967989 445050068 846654400 829712666 974976917 183113749 840251175 480188809 891635255 760511351 927792457 789801003 923247556 719476684 753526498 833843315 921265172 46339937 265299119 711964345 851351698 682727601 789847741 798697774 992250801 315388656 681193099 682630435 959965058 390315427 734310690 599594700 802081969 426884131 486344284 122716978 668556377 762262676 978521036 39758575 539759853 147070567 903832231 943190567 980927227 943107818 991163922 975020458 986916627 399176960 472720661 668237830 803651410 779127006 934328178 637526835 721126914 491968901 717538154 636410165 931122410 790589431 831837770 358336470 913457508 896635514 991313047 807328167 981928990 599191836 852152821 581220963 798721124 938374700 962140571 325844028 514407395 656677711 925334381 398057975 884658595 815211254 815726327 112356784 700661509 21893999 512414611 239397487 495326006 785991271 910712233 354192637 359860815 5240817 399216291 447361139 985495231 588727777 928405072 783949126 985689226 101804334 660259537 263931373 734227855 535980840 568619664 333265474 969935034 938386450 985968206 75604496 841010220 255723679 902396618 922334408 967315453 941635304 956387529 57973325 790049167 622790474 717150397 646895760 846997169 186802077 477720022 688489524 941663314 330876729 838852135 892966359 900936098 64035506 536105766 375856051 713292890 902069330 942190262 439222504 476644094 686122388 703516068 744133904 910961294 41074345 201607760 689596435 994880727 468894689 887948804 279261184 282455916 309850782 953516631 879930348 951086602 357402722 496966889 835616018 988597056 295140795 821321390 101895715 495077304 380136996 403895388 673707337 874502158 521133625 527338386 966923464 970413346 327384744 970359382 985116464 988268186 993480513 996214936 652376288 802318928 59456840 561291865 15253761 49312661 506485272 607329552 653357001 987956236 441114210 814931775 108840688 194595987 698347543 742537300 889309831 908792680 805666548 827088829 13229454 988330899 516526355 890723111 180000961 344924028 101781287 435198515 418061630 787021022 499912361 812058571 974732367 975127064 474467777 773054173 111593509 474493026 511538773 690453359 538231209 996822291 905935748 948034684 745142883 981345858 188195151 755878022 32029568 658699378 530541376 676093304 724578789 836771187 724258552 822962829 147738277 841319806 381070587 509245525 219683765 941013336 159018615 485659653 440209880 822799653 310541779 733837403 816710535 854310284 922360161 972530509 495788801 536052368 617193677 665925963 982300797 993937728 696682844 939888124 902983129 939316886 808547516 914206467 871793162 878983353 64865793 933445660 307310499 709591132 470370489 727086313 961038105 998668490 628472078 989127635 607097686 822034281 471333999 792233579 403201951 697680595 359625782 793303685 18476063 980944010 10031640 414022232 767966096 791786443 930294719 954243707 365484306 498083307 693576100 781197969 715378058 851382069 582240708 611516863 702338639 757014678 226376163 869096294 598185826 719991158 438689166 813621174 316685201 718933369 726116920 955655604 824084265 824288988 862375124 955679996 748198140 787034603 684030469 750683066 839275915 988979122 187362363 284630035 572023837 666608711 857651003 936377779 969091510 987138694 200131589 549808798 732581298 770214951 735426931 888553298 185966024 654139787 722631075 894455665 634947172 656890802 80473495 191742192 491788569 730834317 177084073 666065353 611690015 878065945 81365894 316509500 388939851 829197311 89480691 693481298 268622007 472323852 684313103 746168740 452497584 916016432 136206483 594688139 674187564 729660907 798960534 892077795 568204703 736235486 874817146 920975403 629211461 934052863 905218120 946274197 530344634 644282090 641869737 824678171 124614314 198866247 431410692 476831846 466584085 735589629 235000014 958868284 514081142 539632394 399211978 563644378 482397373 635118210 31406378 318064586 334213390 561027644 313359207 546867734 21164058 487241277 223848196 577430766 355948471 926986468 943352643 961496713 628404742 712914539 746531421 800612428 747678747 934734073 105410426 958378324 468503152 568489638 546056111 741574437 235102478 942692019 716656858 857248069 623672706 800043951 204524208 638706266 711376677 992442018 331545269 549625061 366969081 563302289 245076894 875584449 69539733 552053587 69610813 599194698 224506389 573381750 120388577 750020423 68646395 827437242 472465342 515683678 39084219 695274876 794574960 989793756 456838950 602094145 142434259 157330510 869900309 969595111 61586943 127933328 952445548 984659027 639936327 921192280 242332418 491121270 513676797 807619152 937181825 952492458 202717518 656347683 190521915 379994250 505433914 802253878 777160525 995443076 863428070 885934478 804879892 864927796 72217713 764736540 138912986 678322121 1279001 144299414 345736910 798449645 429566850 809577596 755931202 865749232 663964107 827792642 452953425 868350159 932653003 986277354 611666816 851255261 472866599 923702291 986441096 989787504 710465026 910118887 25480888 282854679 685255928 964691468 366208016 841180121 688975646 893551511 719314816 895078165 584161722 655239115 57644415 161006630 555013068 985225444 683497855 832804860 343107503 631459751 809694219 849347466 44391368 141506490 878551723 980737675 52903409 474245284 903211750 968862065 100957499 468493342 924047682 999567394 875642520 926905597 897078197 958679804 414421930 591586597 432019865 488320154 372602690 452199819 413303245 725306243 459851041 547594861 360696781 456730436 305391117 587678713 17053880 925372783 34762671 45902104 546013225 647213548 819375806 923124550 36092964 169808978 346086192 758492742 935146494 965088631 441971354 716170164 161650667 792993177 872119937 951050519 773567235 802032502 815865533 869421196 444969435 579721151 309147559 481803959 463774891 712749005 19023041 57998606 270575450 790342713 720748602 925006924 727777235 833005373 473444208 989441494 915669620 934598681 622751433 867322790 895154339 926885233 360421451 495385658 139621145 838097466 853758860 984287630 838100235 974131959 6715337 339804014 978273630 990396315 475924869 624500711 708445391 822095078 658782458 831264828 931108401 976103728 612438634 781296347 687916664 792359907 321898191 702247062 858817287 919547185 573838725 727683884 168076208 711829468 948276700 978734556 502952451 885231708 817677795 941110631 220562274 723916775 435264616 703416341 306705470 526014503 407575063 842231441 518301647 552864605 533291915 770017993 886952303 938976257 385371383 658491101 458909384 981905192 669341037 974401082 981327230 981335076 803583879 825660491 23980300 273135260 513299531 730130352 167615340 950361228 346945873 843128958 557977813 867409371 415893439 697368032 917911021 944345183 594741738 665649151 909156611 937350653 368041940 742210115 357533959 635709714 426236432 613683829 761678471 911041042 73400177 129279329 372434867 417320023 713282432 921469041 868789841 974335485 354449456 766798851 4120587 129691702 313775054 324478709 610390257 712264194 124861054 176808348 225984710 408027748 92064108 143087566 589674592 952907789 57770023 565833266 888714660 997445410 506936216 558815122 132421881 491806243 237046019 465985381 4543672 950830688 461921250 789136067 352969127 886404197 759638160 800487801 287422194 378088936 693337923 831864734 622242347 811907727 749634784 754785827 386342850 756873482 83569903 503221416 315256310 833221201 514009157 585001644 574593142 764098850 299713460 496661955 16587867 590336904 198698791 303435223 565893518 932198507 676313099 862002773 26275045 381059067 395957092 761255434 774981332 979176395 82693376 850296859 80010097 583203783 685683740 798519589 245937604 692570188 33375260 562150002 38028703 635203886 398867944 625272962 302788617 361394456 653011514 837210396 991717250 995579163 558960176 767726060 515614626 894958173 816992188 990130570 29484413 60421857 887796591 979803684 108337262 212583880 593436686 732411639 865458182 996686452 588823800 685746242 851157789 922058134 446081632 459972379 529710897 678781361 377134641 499819912 312289896 322608128 750184072 902906959 641137876 779868622 403676151 865825662 668813684 725027401 981400742 991908398 41650055 456057358 860300444 977517949 547531000 567865823 414383375 442112942 338047452 529078967 590237444 768274491 792759510 837637724 58127459 516034188 970404028 998478773 959861285 989709688 153872064 294822016 91603896 532594135 915429031 986517036 190041581 904761019 30118577 605088301 534812953 563900323 441501926 869592938 502196611 725877662 446615710 495453390 58472959 127206052 989012278 998076020 427318871 577384355 398965655 467665643 609751031 911998641 847113088 871522868 687238599 995732321 703865655 967685402 789167098 855559507 945164949 994222554 758555845 950228305 640394504 962858285 274498543 605089145 49759644 768826309 65118132 919891899 837211377 929170409 18174799 204112590 216146698 398229352 328064989 525636531 655099288 672998748 496077492 762870461 934708618 955024409 241434657 618597761 79597984 742644249 699938664 755446659 171114429 772457394 647951875 959499611 16389234 701577716 772909109 892745082 295576987 949237881 701486636 975959321 488391878 582901038 864828812 999427105 612880198 663911037 772350764 845795278 907973227 957945204 362033294 696139325 120827470 897569954 481551536 559989425 313242546 803005162 375712830 787513406 405428936 545513793 555939292 932982856 43513560 474038347 562616208 649949505 359022432 898343012 433310942 639033058 370213983 589711083 630971532 823480856 373417583 853920261 211096485 541329014 86907376 349780496 689778849 887226329 334103121 958499990 521146212 852487329 110115359 440213117 138627139 534958642 232549425 783801312 512610437 656683142 772362670 801321886 505149171 673170669 676745837 686749833 708987393 986675035 740097942 824627597 752741947 769234959 929946858 948977907 840040276 971968115 354813403 405066855 297845443 978421798 629603067 748487492 664491441 981505280 886654132 934395503 412354052 963334396 318798804 687330632 716972960 958813058 97627090 318404702 734632492 875323254 97968758 99847570 719253124 727402188 743118252 976056483 266061284 615205503 358829587 507333654 56957395 576175272 49152615 619003401 738152536 881437598 82574644 211691438 893939150 943997893 499753868 860246491 489898241 887214969 819470201 963655264 684423467 770609614 168390018 685941678 79028816 616796575 904780781 917059965 914270567 923163838 453078611 732327594 413359797 825723270 444542713 602695790 619802079 953299576 110771727 541576251 591650974 846879642 850279051 939169717 636883385 753045333 651327898 791022733 638918938 881149365 917141479 961334384 43790509 59961280 331205781 620916892 408637423 522925447 863206425 921898177 815513771 834512234 874986354 972837658 987444922 993582421 333430226 792418531 381391201 383133946 251802887 428260999 103250903 157684788 537660841 779988101 445494017 480945833 922361654 955393006 294936606 511844318 926087617 965874517 905664921 994292734 757272728 897338936 210835782 827022955 131374840 866761700 715012856 853541990 755380057 913125435 575105909 604589050 213186137 742844726 874252488 916615012 352168685 557299692 305595768 560192896 300824465 845602608 682959978 802668496 871547623 915480668 671507672 682064063 371018129 797313262 116621971 302930452 382435011 997681861 635092794 701322564 361729897 485165104 311367736 500103210 352637939 965468126 307737212 472320070 264063091 736249031 340191631 423979028 629401001 863813303 961982553 964562992 215109930 682053106 841851167 993329984 544828666 786098003 946670938 962667340 647666786 726183101 79784299 348733490 485334424 993507103 697979888 808980038 116360988 375209420 543705546 990853280 265527711 682335247 751458646 851580337 128770344 895640575 346700267 804690984 683202528 838788624 939656304 985869797 988848603 997380643 610147774 798267432 392304580 510039277 571804493 863070480 12839712 390979447 833361429 990420389 914692835 942896237 417764132 543129122 311372231 840399417 113845256 714366234 777764092 827734874 958843141 974013635 456295601 675631260 982045404 998828369 902841864 926653647 376017539 783347309 747361658 867622199 675432008 780885179 423340713 962216294 149372180 517852206 683543225 999067632 211616820 569132741 541771601 840448237 712109054 802330667 182648013 709327945 389405640 906383401 397848816 651191124 209144529 770615134 321646245 939705211 195744841 243421445 670746447 726893412 415065594 786005259 953312031 993217499 671557646 828196898 181714485 997270828 491963912 508706429 67283242 802629476 383390620 691081138 337927852 563248463 254722224 774363194 340895609 797023569 295799654 663721540 984981970 997495201 456524632 960381510 684547307 756339585 372662118 400007386 155271350 270678793 902648336 971441693 713987686 987327013 417183714 527577100 372526479 694888463 47198090 214553782 568181619 916814604 235078312 251178875 571876654 878336171 348213134 537662772 434967989 639443646 625909205 788087076 655466761 772326167 209993129 366708413 721549695 990829145 291256836 805302683 553774783 992700878 678950991 723839045 453755853 701002333 280050562 839621975 136747583 885738077 530326255 701895388 939786162 955887856 225371055 427654441 436747586 933054380 376768432 589191927 702394570 937532452 502531025 833966308 142114935 252838450 456125274 685250989 458094149 840253739 919501714 972470405 623994803 944811271 875448985 947547639 983171571 986231085 801954818 936584408 631482378 930957392 654431168 667947265 648925818 727688616 465038463 702447600 444568516 911158521 257062616 906952801 250385144 560307043 772159772 939842110 426335087 465232147 198344157 637596914 539287916 849333785 137318186 567597664 494998887 780071354 763267805 996886417 638361426 961468158 403254718 875474461 187237260 498929516 485828654 863931374 9324309 192676103 725775569 976033464 558895769 578967598 305330192 735291543 653330570 913065166 118370042 567400887 731763799 978331161 632204502 732408545 605307663 719681711 619010232 880975716 675661206 790621954 487892833 711759240 367093664 912170933 888275688 898131232 630908641 790157960 703966473 999318241 270573149 778823493 370485550 694193825 999109920 999346461 658063819 941368201 150033960 329819072 677859656 873600107 309527513 365726812 200633168 973794258 879439329 887699039 734328848 740551772 421890989 724656979 496659237 881526337 249012834 754138353 140029913 854066966 106103106 360275146 734582982 936907824 325011070 806992812 766090925 878970482 728009925 924681835 920028838 965594225 917660501 941037000 232951495 972736010 576985201 892590520 574780457 989474502 646464744 981090274 181231398 818659276 95551475 797547081 39792308 812008327 790691064 916816597 256612330 272586914 58730873 808506874 22871759 86224860 683651792 969766264 991217380 998468183 492668294 874539224 879238715 957898894 526904566 822736290 692813332 801901470 634333638 968247987 405876943 958493031 985094029 992791203 825555751 844659628 506898250 851484667 370874545 619935920 126142334 879733472 246321143 987774357 372820266 598523440 424361335 695913902 207286566 450182153 909655083 956153587 743314662 772555852 176998741 683209745 898046047 979665699 130526111 327640410 648364478 878256492 633036598 733349489 539597380 939975243 705064527 818003686 310557977 477660999 151007859 443814273 501732796 656758741 706304384 775744958 648470131 890397344 847253586 989032721 653570577 869281300 607241387 972082568 475818904 663383644 371772897 998338739 581551675 795182233 331023521 481926543 245872193 273107380 220590153 699902747 358854351 600366556 584722104 798815928 459071604 657739821 665462424 840523946 60540771 691792735 354419082 597550291 970858583 982684403 528527325 724926179 137305357 884040701 831400145 920872298 134431051 627686038 898995566 914357833 201253762 637808071 798401836 874300246 367786702 527559435 326671962 942096949 84859492 765028599 798308614 908535614 243994155 607160610 601881049 749301394 361933177 586399363 886326288 916064364 970699320 981109774 370432312 603862049 853695927 868121042 297354696 685010224 263794033 749870316 107381732 858315977 889097871 948161840 94465894 735460521 60116332 695831306 465101611 701570828 903211812 976851798 20084016 236207467 507707772 762512387 207295872 765344848 277241696 315813160 711325649 863543917 658222844 898837794 142861569 238857918 887996457 948322956 402317678 761827746 595260090 737486161 674414478 946969036 51464709 402719881 626509174 672556664 871480792 876413610 344802044 437857033 527037053 737141845 248763278 325970035 237283158 740761135 36822965 140853209 390551653 986149670 410593377 965272748 406287828 842907066 17136547 537056689 75104750 669134964 354320363 436886885 743252567 825154843 214487330 468107276 279676615 952944926 198789964 524487076 913380727 915581714 794855922 922115444 136325294 541072368 27817227 222564314 784026136 977065435 185830172 249436574 285598155 811306504 53258402 911726202 718568943 798553068 24245341 270048984 580256284 703826137 30415603 608884809 72914718 510379396 203516967 554648499 879584253 923115850 738047199 954537218 232960783 405158700 644499445 679233419 441633943 613523584 286696919 548071326 282674379 563129355 904527779 977072897 551681279 938467240 814488249 851326209 504612395 761067105 13225909 369128493 249876155 419175947 656484039 661606675 512181266 614984119 251364531 757825291 103895513 709989039 884871795 911095635 13815242 950460553 731963445 968091354 294636202 539216256 390829806 497326709 839442025 937140617 74479561 271980566 728558991 924399758 812112263 938912836 426330073 588186703 771386045 995004131 447528245 955130233 883066341 925401379 177078908 748474224 580567794 692648280 484461958 505057389 828817072 956873457 677230126 732833061 569543358 897573114 467893655 807523025 560559453 626909094 601191663 964809457 418770062 735317458 7167156 102254936 899085676 929131478 539220553 881295560 774593206 793420410 443750153 561021746 14278400 503904490 305525935 842332629 951955940 990211657 907914739 948880071 639103475 698239148 542913582 830022119 33271684 437469103 476476109 745547167 948268567 980386782 562402127 666853944 747404811 950405500 144533405 478926059 417404014 672070559 911694244 993871152 845222395 919887496 768713648 981960826 999773458 999775072 495996627 677072322 26251754 624994202 166056226 544936700 515870657 661286391 343983204 487061967 939029995 983396664 128895289 722525239 74543966 379737889 258823723 571298190 825020787 887556652 895484977 974899963 208973899 355858601 615445585 640453112 657430765 953252537 715867522 989299641 659111277 769797470 198685453 579558435 180702728 190675098 184310047 710612184 816302890 970933902 201671518 587814582 901853100 979977985 900936101 991866568 771667060 934765108 793355639 869293769 71832411 295123509 622430564 826200649 930438169 962334497 981353494 981927604 78088103 804265002 422800909 602088412 709497922 839272606 882260566 979771210 678458561 702704839 973718675 993816069 511109189 772113999 142847544 790545114 288574999 742727724 83643010 984351416 469203168 624649404 714473280 932031431 172793344 421078498 534755975 680450290 377540812 488381154 439967102 519971210 229213475 262623459 458185 385642800 629789397 913867180 960088185 967115563 728172915 731527703 875268555 912216298 140743753 480235308 266587365 463228984 214109875 709493442 382597264 698771851 855059747 901633258 401927510 544715401 487372083 979568573 361561206 901924764 571612114 695072255 923170499 980119214 454361270 854769773 139285584 870961626 164413615 906611111 851033288 981030301 810250641 859652892 558506419 568122634 968738600 986196370 859130890 963626012 9887722 910818285 747245481 891861688 289967602 575192213 603973901 922599464 819788052 873350990 383076849 680229740 798369209 819417538 881401790 939433107 588199973 839796119 718353257 765188066 861804292 887999410 503517637 735796533 14968222 836921842 402267371 896621436 98217653 401857102 908782282 927182381 612238861 832393448 409933976 539846565 47501847 514769804 435361465 478307557 171175855 239744258 677017645 967212694 235328682 472963015 96733287 348026085 481655352 548070042 486155522 964477796 675921711 791217569 305659177 773481309 399557340 874111015 428081020 915496762 404439698 904689072 973908317 982638654 96077505 161504407 304747867 821496152 96789589 885720616 912320684 918078200 896841523 928643721 214754587 654802284 30852076 370542330 762399212 764910621 428601689 683451467 370229703 542404725 586670892 873437728 618793692 953074925 938348861 994263516 383526500 788374282 683080366 765028874 920053240 941639004 322056996 752128675 54764755 258445929 722185784 880108968 783398619 802196410 397695240 727148557 380856908 599449564 84520275 144214191 553408608 679440207 484259653 762779714 426540027 623820484 426907745 452160249 508720843 640346165 251021070 662262733 84295863 561255909 36499675 602629500 549521754 840792945 939632858 988210609 919113562 948854441 678322952 867961967 505763363 936323938 725896621 834223562 270024709 486709623 462714721 722470997 769423196 896803422 941909667 998135972 102848911 647723996 490692076 673451983 904526925 938906959 980097115 982273105 99977638 264723891 431785455 842022160 16772958 601689056 884944372 896009931 722431768 948816346 865808579 946179317 664062813 838710743 400271076 719291779 539951062 951627506 819855936 876183540 944151677 956449240 833251600 904235688 45796413 204152646 472173148 909599241 102080601 312679056 42277603 333162606 216250382 677312009 355197781 752697798 471429900 677416781 21216012 681680475 270223599 385384438 543426728 732017396 601687009 709817084 227443555 412486934 732210037 881134499 733269064 946828960 157915019 580844673 15955556 948999218 279524435 999714875 422780028 806438670 342321872 952922162 243012584 423087097 786003229 906096661 580478435 739391747 669693047 855184272 747519947 855808398 44525410 224731555 355720296 739159325 550154861 939614773 453485626 995599538 249810386 874440594 411383302 588229036 843438701 856192620 122988903 744723156 110997738 600688301 180671937 401453344 273874293 978770713 96011254 909228519 513406916 692475450 501337755 763689400 295673799 660381303 503467802 696523678 251684773 386515703 969606478 995495447 89855812 455281183 340740976 870499180 833138384 913660794 28468738 993223781 622232586 837353504 47012886 506346925 575545357 852476587 811537657 811632091 41231025 574721481 418978195 559237997 25293461 176511704 863361583 872632923 588222260 880135600 568667341 591083035 794187103 901519112 990125459 997807188 792349065 876570301 766174601 836498939 17042356 187594747 368798675 431166698 538667047 920992416 484214845 928230318 495354139 827313703 132419635 486976761 417189331 906784624 567688867 751048206 586884775 881107318 48375391 633736859 510912904 943176197 857359197 989129975 457488598 558634413 708473943 991686309 932540695 940173289 99143886 370404545 658543023 969981964 101642992 268559708 873882876 990113416 540437911 601254286 151335999 168689413 969328765 991604712 337905795 764884250 614215046 780148268 919782159 996353593 159230748 330705926 634437094 694331493 774241181 811002060 734331104 764205740 326782135 613181872 698502267 951257921 544403175 910486431 376778771 910930357 864442055 977401434 20141207 238740607 890871941 994496047 617878285 799493495 695314219 758588582 536517685 890402744 595377012 774104004 415090259 623744780 527262953 725572134 789138018 800023538 380112887 721950518 114848668 173029910 933325134 969693162 589794562 913411027 975028285 981927440 489798490 736289347 988173438 992968237 930231844 968349137 131217749 903501273 548825145 870808793 876870453 906207173 282629767 298699200 900258582 996045215 383284104 397639937 578158339 741816839 288678143 761502430 203031474 382225174 630020986 711011439 207101466 558158164 579351051 721465400 661995632 741093974 406385758 815346936 679514601 916574471 392328989 808798056 146060765 923612221 707507693 835848153 954510206 976651844 878918225 919497879 459115313 794411618 108166724 168571231 655806147 934665012 324638633 850891656 158380452 532387926 924388494 949918228 942844282 987469623 589690538 892154742 572926897 642800397 461520495 547684249 585757967 697588287 605694308 763507144 805727952 972173852 515493507 842057846 455909212 697874327 592429132 741817229 609691382 881651261 25980921 820528282 314472441 649916630 23057096 492533076 658447506 822830131 534506934 757893803 695430501 900681232 771736110 857498904 763035685 995157531 565538433 601482187 348175994 922340908 412348030 826904917 83485002 84767351 106128441 249287393 380702053 584003731 309343490 578615481 734600613 795703237 886404221 939106228 472316222 648004785 558599622 935592933 857334452 909198615 529731548 620214360 806652242 990995209 704551425 974767856 585598049 706442037 92875035 334064731 80802684 801275641 41764101 960519509 688946583 712640649 617300453 817775071 374362947 581717513 33668985 527013470 731146965 778119485 57846937 805013548 201695295 311521108 559920916 977092861 881141633 908952534 321901376 892294577 816022102 998977278 435920545 757035306 936496176 967330688 722148666 986420540 336403583 931575511 618543579 647085115 183122225 900655052 210361628 571983725 812927747 874462940 434003229 639360604 449488095 557942873 509857658 795236683 211487002 512807021 506253375 862532073 586482007 696120667 447416458 607424921 699522510 827046117 837870697 907199268 200396194 758123857 935097371 939599255 129965773 985746570 386357067 849402074 618282637 947429226 545279765 676550244 589855541 621178028 566888503 966515110 805837959 997907918 288966507 929857293 582879866 653870620 560004944 994934896 433281021 972549502 444868313 702643913 270159743 874183837 568237673 998001922 88236278 504011289 364401356 863191744 463590302 545828612 875041278 969474917 248144273 250514849 232949861 960158339 518114106 978401149 307309458 816274839 292806129 357558674 593081395 837884525 887295373 931299552 675824898 790745337 906884969 912192890 518106727 838585475 755586000 875121758 524920166 665746035 815333633 977287926 12040416 516294866 755943339 772767132 740285448 846713578 105381943 486856896 541591342 802568881 936636829 954929375 831008592 971498760 196557324 683649200 497339913 702644849 340709473 811113069 249661882 763325851 112689167 272775390 41198503 658264680 661678289 916839326 929392422 950858440 102625532 478483091 283428117 556726411 836701814 964658164 836945210 938543410 862726960 946656501 14335016 513401415 113886386 684811596 938795618 955639646 573905894 657596222 487598906 695646482 876835467 954934383 471424268 800536052 176801978 642341363 524549982 535260929 183677925 948973934 40583321 498549653 413797629 776333073 751292039 861946224 808018019 961646661 750210520 889719994 716361077 864331504 320900361 473189119 275023723 813604269 894205097 994604324 895206382 980555696 173707881 673730472 912642350 953164270 843625812 945580843 632525429 721122236 261938392 958107119 842598138 993298975 530530419 687288700 690884654 977652619 417881070 934123897 818001004 946018339 965510312 972250992 124374539 494476120 774546633 783497536 475953290 919602273 37836102 405232538 651231729 761149634 317211860 480470342 564677590 761476104 382030767 939198515 681442170 956021366 265426201 746446367 814692655 985645554 950695497 991297220 699912066 755844896 459984201 890894054 189005358 438080038 891207085 968426220 269330232 493320553 882540453 972953445 982581396 985002692 656391819 882862648 256888505 928432555 741090502 807623594 46109968 806191164 619686216 952019609 27368152 817874520 10342679 105304922 333628532 408590606 34447569 630571415 294717823 341074946 727182297 945069312 84475409 717929014 941041775 968916814 606738218 768076743 418164985 739909571 754341161 775511874 19530466 734070077 688753125 776355567 861649811 862045018 219818851 787560643 274093023 453511921 433236923 756176393 399853176 868383912 65135297 281363442 385653587 829687459 115854083 271942648 393993833 964924922 967957499 995824882 337019962 462741778 822380929 874361497 473928649 476610764 513682046 632374332 995927868 996839801 738415803 794052276 130224634 897591871 163893851 321726116 360983504 580094441 418028378 977616722 864601376 947117156 769644427 986424576 396786522 645476055 912509250 948046293 757266191 892388537 251482905 978935046 844714116 928141786 267464871 441405030 972907189 995674205 786443049 940462766 761234197 929987693 37507069 951019180 644911469 826417193 199895242 865023546 242404145 278083131 193312275 981943049 587480782 684324972 859029456 940645812 545215522 582874938 907876010 951782525 988075737 990539405 659498969 915475082 404675383 867978876 308660104 582916639 731258338 812137959 491307430 496688428 420399099 939574124 294039126 796823226 36000306 719833726 683927928 732107961 577794871 780949347 981322230 985540729 974206150 986918099 881813730 923807464 908139169 924444952 266907364 751716772 853159114 986627806 437704892 843778603 514537911 526823251 312741906 318051665 433668258 673977703 949461008 976960274 618588721 809113998 834925116 971615669 926580739 955471017 541119445 815508186 432354654 508874824 630626152 758143382 145422350 415833256 798431153 967850959 879255707 999468334 52956984 418972129 322721961 617010076 574276215 677205305 884879385 965353164 609202257 662785071 120401610 936087457 67508584 317046221 376965803 983930051 218434615 579405695 201593441 501608392 878237236 887467658 434370683 650482124 923186650 947745078 33488807 256845315 926743818 983933286 43426123 747537348 526450943 811890470 279372470 930555243 987131537 995878797 626081790 746331873 457405583 928988834 154510424 171690676 76741057 174686909 410733305 438511322 182646904 308145653 686033363 937390817 635412903 679917409 112229797 296249656 238600557 415397076 423885521 973691999 725790790 976407271 810323755 818292486 88262002 455704788 582322575 947124181 730465331 878997272 526015700 880169999 12778438 109349575 667074981 966111247 136655362 379967850 512512157 674382476 953995312 959569908 751091999 869283734 837097605 915293104 398855544 819321822 379391301 706990133 518349494 699581920 56470087 866678256 655808236 738533186 309430079 545022217 528135060 732154042 613911441 870356682 398846101 824090178 697802776 959267868 402487867 826703245 384505016 663327467 659561643 695561156 966986716 982369839 910296132 934778665 212723458 962574942 207070735 652958125 74422560 543035370 420513936 852586959 989758583 998007553 283957977 583519093 128262648 884120410 782382472 966329350 633633079 908334232 354048539 788168361 8651975 436744592 580463461 934650760 333220091 988668626 301053709 740123441 655005327 906971070 701540942 903673177 472696860 861131842 744436826 818741353 789195619 792938125 947118775 957666289 180829139 997887401 866674215 871062484 983736809 999269121 71367689 907677392 926379812 985101327 575867669 594637457 557445005 679319316 221941202 629342382 139636897 722236058 379298242 474450537 741701065 751104693 387079674 771028439 259505660 892143473 831828039 991713939 745800453 751263501 593083016 942691529 859399958 895841626 65881068 845809176 338469832 454092449 382882201 902583169 299745370 421067889 74673729 501324588 678150026 935031788 464257678 589328757 925355908 989306700 267036743 671352737 38711213 509211752 980395607 982838596 525235409 951053394 460626349 527046765 95655332 771200930 355928667 652990083 985671564 994741502 921919429 992650469 102302732 768677724 567114786 923526641 266186164 449524709 272512189 590382533 887705266 900506878 287263061 972729376 124569683 535393923 212202464 879053670 44120454 892552951 842758876 952599972 363851528 588977867 244890282 900098439 410562809 582579726 436818426 474081798 843922493 901536482 94477711 612000587 526283885 836480579 576201301 951493397 549822637 852717673 833464071 905213012 98836649 100467351 509201868 802059467 364568041 897259087 474662359 671147265 444069603 964354770 259030649 658223443 301929166 435133758 959147826 979680278 219472974 626642139 822541654 886665322 203100704 988294442 940003291 965733085 268551762 992551817 287438196 950612178 812111979 901793094 821488020 847161475 82146753 914886498 552181372 750646366 104781777 629407097 408633581 832994268 897693394 922660022 582957530 902683809 459606902 482836221 963246444 975441213 746818700 820115231 626321531 643953420 16107048 232828324 423826034 549283456 864667413 949847715 835791871 995812805 788190562 970231875 863193683 941451462 657708111 745259927 535695405 993498826 465397835 509435556 627782011 853711788 137494499 913389888 747096154 929936053 231114112 371026824 154262919 878208716 627275428 801697120 374933307 825491295 102406459 874983102 55987021 485164801 519889796 923064581 934509896 990206156 604630843 850596189 120127088 956643722 39788043 413299708 713977480 968343066 846628922 975296180 434465349 477935252 448085262 540250993 327560159 836475369 205993822 522355605 318965879 697259253 213315003 259675695 331371694 586221022 853093672 964673133 986584349 990503237 726131615 835037931 488517732 692697573 962582081 971967583 20216082 292866077 209331852 648561583 367883651 701473010 326600912 811411563 22291429 189752592 681927542 928189053 4764850 408558072 899908557 911933987 201241227 306822877 277672629 782316816 58757525 570655010 769657670 893413332 220261897 684036485 515911380 714074419 205141738 264397060 755118323 884304441 453248028 598245916 240734428 888267346 229716234 594591787 959575259 967444132 457919426 744261232 348185203 966067303 403715254 673959207 617523664 773718679 945866005 969191751 100098355 233608265 735530208 771330407 247045104 847670369 652078884 829184814 39764034 633980462 218828739 273836428 810478225 981378465 378327465 409547317 637038829 701576930 835388769 955247687 38463311 226838774 589381823 681033934 137949916 250620366 187994708 405384592 787663095 951831249 297649570 478395184 876240997 927598410 915045358 972346404 737296729 908720127 653696545 944578810 518964013 765313244 333755372 617261098 657397802 747668332 755942308 845270469 257065083 897885079 10212988 920112164 728781803 975994722 918900951 974967024 82538030 916805827 279900635 320518718 696475460 928277015 616126543 704821783 731240775 895849421 558549343 761263310 316470659 659838760 161690734 455359223 340497872 877117073 736803671 959371203 97525791 346877862 581983915 747630552 79530945 494489117 833327105 995584582 908191548 912342066 628110079 717208434 801505543 842940508 868335955 982523457 862938443 879039737 561151025 892069802 958732953 987959439 434278304 663513538 853262103 860438717 536686663 704063451 490831011 772956257 635311909 839097772 389851303 921490462 494568087 960222230 103172186 679489483 24875927 808208006 970235783 987471840 961809644 997227798 16237165 543260753 348066121 541423212 750005437 931285836 943055538 962217151 52458985 217698059 984765156 994753851 703730448 713912495 914480383 920642251 41586208 259133078 757192493 803207877 192514599 612918993 209639055 259135555 92430662 724462984 338971916 939979198 500654186 822678990 140618147 556678860 234084636 452565880 491584208 500647001 504530202 690241562 361174470 650272792 283629340 384888776 131005695 275345134 857070244 953959885 114405308 383300526 182382333 769210012 987852299 993224549 785107744 810344257 237648185 282706886 232595285 706588510 945527925 996799491 459048731 685429032 235318513 365085955 953450697 957062077 83570868 733977159 113691660 902841093 976296334 993692732 10859142 213559070 85124869 569738319 619937337 918691273 345274843 351097791 105916716 255921199 981157562 998057090 549339784 918866348 786775032 999315420 546151808 958295326 477172265 779068306 540723962 776066541 432542005 443789594 544909889 588771262 744300456 949319589 184318153 274184315 598065910 808972038 960142226 998126061 399000162 790088522 894167517 983447683 609033253 615768090 545109467 939804004 940828796 956772574 79604665 712840320 629324283 954224938 389203976 476580356 283774159 401653441 749369270 890338424 367429356 576936321 9833894 702103717 410804647 860187297 744726530 792832334 944838778 972644502 386389785 632677901 56007765 145131092 749313237 844536470 717177664 826499732 853191146 934683875 899038195 935680820 506990503 533086071 507527115 759990678 640581957 724419861 799713480 851815089 933037316 969832818 437262120 906444732 550913600 889842558 676952956 735328109 326626266 779992426 836864908 839946051 75460857 307746212 554004652 701809339 508822292 659310976 537632835 550186168 533006856 783780940 957946240 971258079 757535517 916758946 702005638 742238246 273442665 326045340 758526593 920898475 643788238 767861234 116083704 308687466 586038763 943882085 889869736 984696192 251471780 741679199 601566310 983790504 303939820 965648777 344790868 465649626 204578345 918999947 134601207 755992116 917548288 920508524 63924643 146814613 478695553 550225447 84141928 764214152 286855164 862907125 616559074 885380306 793434175 908407803 630149365 646709428 666866425 737813325 302965650 408040179 52829079 242378947 720308674 860564176 907272080 957807302 671615359 901818943 13900622 821100548 102644361 532323634 428532091 579728290 81176907 432221787 328207919 578215613 560891810 596597897 180171587 902467044 564334776 654942157 766021199 993335144 483703994 708504569 496511578 504449794 565855588 567897596 673820905 830890606 935487124 969360967 453898425 822173384 592231444 748450903 85413798 281036177 213532298 801083336 680076307 765378030 190859024 544035925 864722125 976732358 363256389 575250057 572958820 582802479 639817343 727467577 737437692 949504937 428644321 614721382 121133859 682661749 502071181 699605227 399853934 407464003 722936142 863618973 961559197 975115578 940262736 966695223 683873613 708797213 363250984 740849667 117933141 274066637 307302497 991076960 441586476 916951792 96687322 600907257 631553467 722068606 622002026 977751508 924687628 945086292 787145827 946951624 65697015 892048040 450878238 623037542 686674769 825017460 157478228 334321320 106407365 418446039 682460875 711751920 189589573 588347750 220914886 235851648 797861096 830325500 12487846 194397111 655712736 793512790 123961456 630384774 448747193 635500476 207273375 989521482 616737725 760792945 336676209 398860446 905585686 911273168 966718699 977799255 527818447 828849068 512773769 986936957 272038477 366515974 914752744 978751917 591429841 631269544 440414930 817879338 466099949 971792259 276998308 945606448 598112751 751553511 736953467 811520527 41212827 382034592 116671123 970655694 967873991 981064026 324565469 447098273 965884926 979552339 3997347 160638637 167540119 792751599 373038912 871281846 978931401 985230230 329950355 710571415 502263099 734574809 706695694 726201735 646226468 739620649 659096467 709167507 163159765 452594807 503535596 862449471 776408476 815126654 989206250 997551347 567947994 910783746 411335255 652507284 721513338 723253365 898338124 953840255 934157992 978837152 772154205 781187217 507796755 917733021 378551801 461959960 618392513 654223083 940355827 993132982 945105858 996849258 305836281 346971330 618890428 800117367 463563452 846626256 460522416 962731454 557400086 828531045 996632202 998818556 110301238 523955298 120007127 940479742 726348622 823216526 693673031 702373075 475820016 702469627 861249333 876598359 94076866 607248776 358763840 722083430 139240398 207442003 284824168 570138389 541440171 995647418 632683561 666637272 678950873 893936344 769935537 877587164 991898258 998191943 7497530 620729631 734980731 910807706 451172572 574863169 21722865 679443743 649520517 779977367 237769753 433068039 906733246 910645483 906563277 935226497 637164218 907890693 437883628 826422416 384192703 625801338 31718560 497112171 283155425 350868559 451357939 867094533 247871847 801836826 591278111 744014681 645368772 693925652 369287096 689835669 883234728 935741964 225884561 288153167 205298742 917910892 617813213 638581054 960978612 982147389 635370573 667462452 510126478 802255632 897562453 989795184 185673760 492865202 708047904 843273936 107398126 812198555 56598899 266375355 785409210 844178758 881281131 964723738 235096419 485132430 313946506 358562103 276771230 360906674 129014510 758077615 17633433 230168795 358931363 857819069 780862540 856242500 199120603 979797960 264617490 981626007 95213155 358941196 604067954 723891323 427861468 549375826 405637766 507018405 438800999 859688566 839483810 858723977 331116309 921562444 134359136 808322299 832506164 928629329 667363123 904885320 604228947 677151060 832314965 967480798 192299923 654662932 803302675 891665150 398693521 690747316 136068261 780684401 995124784 998532526 914308433 944529148 499773111 899766600 332291098 996502752 87678407 127398611 79403840 152526176 518287210 529163148 170263784 506264693 873125360 978061592 113317002 328203922 159343172 238632606 715793170 745373830 382327610 783261802 307620722 696917649 260052298 592823445 974171330 987677579 334694080 364508964 399215584 988536627 613281580 735031149 528013293 966926831 39855986 51390179 443595790 702516629 755796347 822821679 973139988 976893058 108372981 821623679 677570623 860215496 772857004 810999375 195017756 771513620 674069641 963242987 730191853 987249633 187874529 843229952 941542146 989764585 106476880 588932104 853633119 936432193 266319500 386416850 679731702 906909380 808202085 927112574 51097085 620112507 665382996 730417940 423246868 977091410 720730424 763352958 536656802 800094656 982309463 994229153 612289917 957773010 721922462 897093320 61983226 335532160 533745646 955110180 629524533 802409095 309704749 690808791 462399964 917515499 927724782 969920713 410564014 896323880 5995924 611180245 311388301 643638150 289400837 615732941 280523295 854171724 341246518 748825274 725366747 910658261 272068991 412169095 178733002 614501806 16021374 787488755 102198480 306274943 398687284 939725051 791870867 871805238 56748150 348013989 46613436 834364933 399478901 791379437 309768133 877652445 337846012 861188561 738095672 963296671 119916477 754749276 325589006 845147669 851723081 989228435 818148694 886188488 604258457 688471709 377513284 926815226 204728762 631713736 214725528 276338284 104791398 161829527 478775410 706347321 993614028 995820384 154226426 600734759 815398105 890126962 67583759 675308642 551069838 603597210 509991052 897610768 854061572 874714150 366223543 864905400 185198590 760385852 599916647 679937185 641838106 829042248 57888025 631310024 517116208 864352851 555642284 569620267 576553606 766852521 758271852 927694109 813163835 945606776 231438042 730978915 353823371 746094568 574370781 913814239 625720005 999918981 866200659 954919182 334979930 827179815 196211281 832021527 349152523 422518883 648212698 659473590 742477260 855316022 426578908 610224118 543980577 801989379 985134902 992448426 136829063 580016655 266148853 527249407 745646965 791758424 865849179 877833733 108401583 251800222 762070733 854924469 634229353 684458798 901456252 999304845 914365081 936414559 646384270 993986305 630006162 631115434 702119125 885664921 187957454 265008438 315490492 770308766 845537206 971101272 665120483 736466577 594984356 978238187 780849874 889766060 951927146 991274010 468141935 548828105 362158609 897181040 600964571 858427789 641666364 977321402 898898853 993385818 775076118 931839890 94816351 846107061 833777483 953616648 155542840 408810967 625594450 664359744 985516557 995139395 853249569 990268383 79420726 509465264 185601901 648996895 34525834 976189748 348242682 446347406 763492880 897882708 831789355 983161911 540040166 718295296 216491713 918636731 591042500 601034200 520613917 931590653 422320947 580846580 172767029 477100824 849838202 900650993 632232160 893918001 31942162 883738235 714481785 821121786 891328132 941043745 788365600 864364290 852981433 858750602 992552764 997633458 767815500 792056169 697896668 774575787 320339788 704624606 420177296 663906332 331568933 637611401 565820412 607896850 678991771 717723819 190272362 622837764 677430454 719751280 4056075 460155859 879023809 966902192 906098290 953294247 388078854 951276150 173604995 359348618 568407916 657323400 327810931 775629106 870578156 939091604 763052574 933807512 456413801 669299520 800508 438831732 447795446 588972383 33965790 825778325 388513684 827706362 164259690 663290108 554243171 688108299 540125714 878531105 639716918 650785777 300720364 775461083 428692639 460219902 776131313 873096945 100943433 724830089 182963533 845077200 538513372 614099439 689793578 802621083 248513724 331365250 615956135 667799899 474387483 773673589 473479921 952232582 544589033 559211314 758587655 882953694 90090983 514963718 53157070 543415818 319900506 372202721 706552698 895107746 18892595 999553790 394268479 942845818 53078398 779488165 886744978 922594687 826925517 904685429 387986100 473885824 571995763 962343422 150393949 776258847 463864627 708704467 549747181 998505869 676028118 843905735 107938863 184738651 628831156 662579474 254154972 842649173 393716606 666110048 889495756 989291968 42050571 388892762 277340125 495338165 69642239 282781926 122243384 959477342 177629231 461727242 375318725 529790070 262490679 565313856 477384474 992775927 896420214 907197919 850265902 869754078 794814119 974902877 347627817 729675616 155951361 310085827 690686174 755109611 396945230 806624056 440604394 681572084 614828562 887812694 674984045 698094323 676886023 962464519 508481741 736622787 575211304 780181315 107762806 272175405 827838894 952729458 860329964 944870441 230095258 546369496 55927626 569704066 725414994 751364246 959954490 973970877 958277451 990524873 887622105 931258497 402739282 586957402 375115370 876231504 540679665 645091849 837486048 857854820 426626099 733690427 315717519 517593805 268136532 697739451 186954468 315506960 489215933 602648691 733809995 873751283 327902505 477083130 30942987 298937997 146147975 840830121 455182027 486773643 970942355 987962716 514786424 961568367 509861320 788052970 451448141 606277284 121654397 532498201 709862313 810894203 515304838 577079143 291427607 627423928 483649535 646954859 299579442 344539131 205750589 317930583 372475024 864393513 616472505 816720143 974951476 993256259 777837963 824336673 500772980 645721273 147369006 554564919 176275170 740448935 165734684 899766500 689254269 808662131 603643831 654680016 779405679 956793173 965001777 965450180 812097519 962554204 418955084 831479318 909756900 928163929 919650231 987581467 907789550 913275914 118135101 841125393 891323149 910033696 238174660 682534780 235269892 686537746 878635422 882236990 693076251 869733890 430750505 822962270 803635894 830476393 184548696 670312716 64547840 610968031 140054857 859384493 814812107 872426866 859033605 908357889 903406671 964427462 175209725 851309646 441179363 801244495 313383439 620725350 745842192 818976747 170065364 211916601 886278545 972856406 130164137 758507221 870311607 899075748 792192672 800839829 606564510 886858274 193771733 347918047 527495739 807872717 433940418 772153796 663643390 963345520 320989293 983273971 201378748 359358017 805194667 837697267 572394160 667262371 723930282 908208018 248261262 579316368 339669175 899143041 625661256 898531365 820064417 884457773 622589464 787630684 655322519 723324506 816260688 816613675 310173336 764593020 276755315 898413023 705109694 933880762 286001150 769715990 768726960 849533576 145293974 526517007 366524218 670290824 378692427 958643394 468689285 964086660 634245015 759535703 753524431 756962087 721275954 811961667 745739067 941294044 343676670 676242160 867066755 975525368 478550874 783479427 26013942 338981779 823843751 931191035 193087849 939077277 741106108 883079440 76953612 662028949 568384602 926669711 630880551 847905784 489511430 945396419 973163342 995234268 297373730 563890294 46899486 104474431 761791967 797953560 979911200 997090136 208420237 991793613 121011795 494978270 262500822 799658632 585964351 828665151 288160688 308068812 898692018 923930443 309161729 916169370 754121423 972738299 72316715 942448770 266905179 329803337 38757991 309971941 435534808 894024962 582331199 937467137 502309571 937672552 721996531 729103829 570774979 774611001 650315026 774581436 733373302 891700281 418823394 758719463 64643178 868479891 982336279 985899408 604459892 903506401 724930923 833391789 883220982 923899800 421250361 576447624 277283545 805449031 286663875 625635080 590039949 808574091 611504124 979246126 464968842 471263310 235777393 523853489 545205391 921943026 204091228 596087287 79815482 155528693 831776764 941698699 794213069 835986419 142540139 300554145 97439912 927391762 761716676 954498298 533275528 699275814 896120026 926162148 950406129 987738215 706903177 790258685 752397522 796644494 548287501 657877587 274008444 572153665 277427628 573263339 658323007 771505538 465305119 610310834 884225955 913626911 783223602 867570119 527708654 653362393 215551583 462830116 644621725 665289156 41860355 457452268 544387645 560912923 652009699 907774966 924329446 928214574 348628080 935614712 823133099 912312295 261205202 993753532 732472909 947150656 802584552 879221006 466262150 515728821 969766277 975274957 126818816 461809027 384154644 930484367 19598485 783410400 52872727 253823062 291722650 757546627 683476895 896336536 317489840 631326526 602103886 606517768 848446708 876989856 51792692 485191749 846398050 946569079 260285439 942498258 41110237 673615690 806064809 994156578 488199205 938293644 227893967 646006078 470960410 491050314 574277228 762832071 490045201 852018213 69966857 205011434 161740885 842765007 548335127 906250238 268029103 272630821 489872330 858596702 73530337 100752593 44066208 580448442 364393387 600730622 532338299 684541051 684158858 985156393 277853653 816042167 187145518 820842048 526153336 597436862 332030662 794014329 172857136 786133777 450974093 547654484 912238345 929815671 968243296 993717685 555527634 764941277 435991965 891167895 904707954 965395492 706634026 818183110 81126240 197766473 907300695 954106422 778575321 955618456 354615886 997472163 69193981 131468847 331176412 348707671 970454139 999258194 488635182 639668307 456694411 674679157 308426723 763113955 110815332 803439407 973898369 975201907 716647246 824374620 957523657 982947276 301494447 441085046 307655528 384210186 53721941 596458412 820453903 860121015 36222039 95772400 290395805 478795563 893876501 948072347 359390871 945433229 52770574 148075261 504341289 599584796 671936815 790344937 488494632 722115584 979612322 986516538 592356641 738354367 694768940 771996614 293505398 475040144 7576828 948430083 568578173 686282512 310244769 849615599 783898297 919260508 147612405 597377707 505044623 737105316 225234542 773438634 785827141 901039518 149078370 991198608 999028778 999945272 977649581 999998800 301752548 714680655 887642993 890750574 810975896 857371444 277925277 803897760 192116366 660315100 229415392 274591150 364709463 938941657 824488172 931601155 509681460 572453832 990578033 996608959 690808667 694849723 149888009 312971758 670667694 954066237 250964302 724440565 583064652 670117074 282905234 962512816 61458141 881811697 218787930 942856020 70658440 622529348 357063656 856620544 783709258 827283134 127190235 234060746 466194891 962952903 280112370 446870658 356090032 988120406 822348172 830448821 676571519 864233358 488553879 961825810 422783816 603674899 365977541 551001780 437362239 469693270 782320088 936927237 445941643 732264436 171061859 668536247 424704004 774720737 919836783 937996938 73465122 891881119 97641005 370062967 408080396 593685605 345816886 880432897 682487780 867759721 633999446 814396817 393126465 850174433 697488499 877693656 955766128 981808868 100050645 613159366 668499328 775933417 704345017 755675009 197692723 355644458 104918083 777104197 844668181 972521853 514432897 763459064 861499181 984609051 694655521 777524002 60647185 109239117 331287923 879027756 766139555 992038957 94494315 110778254 492034021 604416157 147164335 227538402 721859512 891968116 800388809 988575046 909942114 931029940 953668774 990339281 376016180 434204319 197576208 779383910 811769083 827898106 525340055 830548120 891807000 952887527 944949212 956284656 308643843 518383957 255531500 522157362 298160715 302094330 260660137 741015980 419288392 787863931 95170138 770329657 103951204 287556613 95630752 406582813 68060871 985575538 277264247 745047204 864036592 932418065 911391558 936322412 426074466 931015224 739285240 747648590 880022937 996262181 692750927 898056941 282855428 559693911 75865700 294289290 568120526 934128989 516786219 896995238 358923681 593930277 122984988 850250592 396565621 754292511 460749607 715180950 492534557 518190912 339772602 941269765 580728235 673475042 861594720 909815134 628026196 868660518 4915270 636055504 80337783 401054308 358557149 642572883 540702460 652341921 479621233 961892317 180001772 427448827 90416973 205059418 624533782 803310982 901242780 989174291 962164500 981081928 310932208 979008077 753812717 979756760 484274794 965720096 983261603 984152887 681673004 822856280 32406675 727893077 961856445 982478802 425538394 518429467 307861341 324907640 11552572 48229572 23770377 760191043 606760478 613980518 774345675 853659872 725317151 858433192 362801748 955537932 226094008 249613338 27590947 175155403 922114193 987150610 923533242 924550937 880165195 923895084 674237956 794267076 604621866 874925644 338875944 601795995 911883884 918509213 991108275 994774659 415414398 947824677 223800848 286903438 277015180 642937061 965400827 970170848 632062404 884321811 903853198 905664147 931339442 940783807 82674503 755309283 183321974 466999623 936383714 963493852 640759968 974471834 522055145 967153870 714349118 981616549 426568458 447705992 707383223 980126446 724041300 992319586 720067159 938763532 984180698 992926943 493474093 795132363 19349855 782152562 9932875 647884595 109553213 385300537 117904464 339628531 627208589 800820262 614355889 806707130 191074087 538999043 363676937 640386710 619153861 799006436 557489104 840608210 593731392 771606873 199643157 251686296 135816957 537977700 257510712 327467568 236080242 583101282 596414539 736843159 293062277 447522106 656126620 788388754 386876581 709855457 407938809 593846135 300219743 704049001 356422319 601447933 772282496 867102308 296790547 430560246 2691519 962985888 66732318 896373938 791619273 846590313 123924388 428097856 875406832 890407409 388204436 823770857 926003899 983983290 266871317 818003243 732735030 826475869 359794412 503862401 892824755 921718733 71280694 776279526 365182702 529052463 831761724 927972750 704989911 709836517 804389986 883602158 982602339 996777149 480690722 747868374 713805388 817401796 396020550 963355489 84686356 112581076 945740792 969977530 375077310 678569794 610528186 813926756 485984074 831854353 894654390 925465235 388747435 452591022 318109710 658636184 661048021 850053394 91258023 958057614 149336316 651189485 766012647 983512884 319640295 743378419 142944327 608535022 482371286 595631176 903311616 920027375 126697207 230825793 171363966 797557911 790237718 974970261 734431106 795220707 928343037 934356328 1322247 515171561 577813141 659392898 951053431 998359921 488517999 542823174 863353835 892451919 312989930 614207208 973211934 995465450 366218934 842786750 452156029 850799411 429598308 716756143 318326973 529243914 689695409 725469078 486361662 816635769 421487792 592665759 715800484 954415428 679376226 712784929 481430642 485788561 62513804 642469703 816252271 960218921 329904139 540117660 117336307 274228346 491729462 670637377 878233268 982215808 197805014 982265556 893557313 905471102 695705873 923140602 241225959 248511159 331833487 357174179 361119836 522896374 438523230 528332419 625562673 715230173 27677552 443823884 284338095 894397123 886957743 912313073 930751726 949883941 812078923 882220594 605753489 648049078 506530509 975505230 104699354 732106796 495091149 930053940 468547873 592059360 601489504 997830596 856995616 903104275 971554417 987109769 878175350 957385928 413920746 814426621 39806202 932200570 949566891 985186402 347028836 792889934 631032220 928218261 786855420 862505039 459554860 663992499 668039113 835646886 209382401 945555497 740186177 960455478 557846851 626260432 205904800 559462365 775347281 986861330 996129064 997997500 146220824 677101151 174101652 200838953 726605512 841557859 763603011 788122856 727495585 964705176 52938628 262462304 249540770 572433447 80248251 662464929 328485164 704216735 582820144 854294096 659603601 809459977 154035756 694031178 957142681 978690833 595057121 932520420 320336892 948895831 412208294 583961716 840611309 848972492 626767777 819783484 66399855 762434346 573757909 755319849 477888237 837919860 552760798 787854578 194091494 847550154 672484757 756326099 403131790 632195947 152928081 986656365 414141924 994301820 708233614 884727766 895024145 973476941 157088139 514866799 305017972 452871887 953413346 983701651 411178480 415192104 770825443 909729579 387597123 902376591 662089833 849289191 931282626 939648210 145515691 715169833 220926922 369533000 81082095 578276728 328409057 634070727 646799321 851424653 868616025 919852495 287842827 750055392 578258801 961489642 787899307 893795767 940103026 972064346 343137601 857400481 78246199 992743435 567379301 738551667 924706655 981135124 333936860 949140281 153418735 566787975 362969316 979735457 33933555 690587421 633340833 797178769 203635151 351323394 799609432 925245381 293048246 779164678 825291615 875506056 990327296 998378099 735729797 834595753 166259380 871825766 904793890 913574063 641872669 849857239 583212305 904222683 240931864 573653194 658545265 934192269 195684464 358543526 491299133 928041042 29747695 689538248 166462123 464004462 472652505 684350108 360654033 543864259 918005479 971802012 762820080 843645149 300542245 419110092 962356711 967901512 661702004 819196400 995992720 999529157 204387518 222266919 923110637 998892575 989866695 996932873 255430800 665776666 362359892 650562313 753620011 997083539 634096654 987816266 219785863 979979323 370305406 588389278 339231437 592175161 83910008 350751666 474996116 836366270 301570223 947896200 361674145 872190044 275063552 446868799 83329695 484374245 782664904 953261174 15915775 854630927 148234148 677692654 689138845 971656109 522371592 843817628 912222600 925018268 658791802 850655255 263554833 623315750 454692342 576989079 125732000 172263508 645868231 674811189 703257584 849897499 288296255 689297152 288020750 798983609 580949147 979005744 919962581 973466449 273754880 913799583 898707119 960645178 61670118 220115522 777103656 927527754 781509753 850212592 708439196 734094234 966797699 967786229 633937959 999465417 863708594 885725858 924335349 939609599 707866235 910837524 807411111 871629801 517848082 948567243 816777790 892784727 572748683 728794845 577697114 997865402 128034341 977097454 456088852 889423834 424077032 696075690 827190756 957290845 94862563 784374365 327238514 847013475 749988392 763174351 737350724 761820792 910721486 965126490 806815403 963832186 514730995 603376934 954339126 960468340 999551363 999815631 777769393 963287444 18372267 962743313 675753902 827030138 893796035 946499514 597082180 778536916 409178785 478604952 78578808 451158739 203765020 551004588 997763789 998993684 545342747 807991002 343923048 704543354 307040201 605004095 719045700 766029799 65313342 952904714 489600426 852425547 908002849 946131299 377003855 439130667 513617972 778444584 729316155 810635334 710226400 937238624 549111199 796773769 254065318 831134993 497278651 988706472 260779402 796812369 196952174 434935883 585412220 906476126 584776338 730880479 382388460 954750273 467432292 730930859 343113174 848891144 383706286 479648530 587048726 616337223 999373682 999617472 820249262 870200493 38924014 656187038 122394148 931264387 722195155 838452439 594593053 774901850 241423759 258679374 862910955 955689734 50580016 134706654 438196551 925432775 136109395 647335051 860807712 972120090 978752992 979016541 708839374 766039344 549891728 886770391 946924381 976740414 429546455 974386541 997626415 999239499 668362918 751309844 473811937 507871590 65475851 183148821 335082271 580037584 539227181 860441013 667449809 962956363 784585255 792396479 552430336 771053827 572006833 747157543 900652349 945213689 859273605 877232138 157273021 932957685 854230125 863811706 160215631 480422493 262822990 620788428 261203975 306702832 519739697 638849188 745136208 832549847 753619421 933426600 498919690 925068981 51266062 985156307 435783794 602481307 961256468 997024427 14395470 169156826 633488474 701055097 620235708 670232016 269491380 401764331 162259525 462781625 386030799 651885973 177768340 251777398 629407976 961969910 933206706 935126888 73802320 668764192 699044039 820725631 30702956 222793928 827414597 830713643 942613717 966308791 593690335 862008067 913480205 944088330 239831299 536642705 175830993 289624171 393452078 429916540 145846860 597242395 126699015 222854393 922688601 944822103 622220190 848739220 27955225 84035930 281726923 500501578 767048316 768256963 87675409 169447413 429704744 602364164 665087575 809765285 370358848 832116570 208904314 459088103 325999342 500745528 584916850 992588082 992358894 996484279 398094504 906849147 252986406 420189922 774216147 825019883 793763310 999496302 131674989 667391500 132193138 362711097 105749226 192174149 614418099 960455881 298985674 842452874 138196503 646727431 995637108 999997772 478092711 495820775 879516950 994167577 465244626 539143739 718093614 905543215 362060702 569605788 527652113 983925429 817124804 970737708 896662289 941525392 584403643 970989764 976572105 998752678 12546767 558756605 505038545 980558258 298825547 483035161 883856284 902346783 552186779 963487554 947737407 969084265 469492190 555610616 73489910 575272584 272997700 383661147 266720374 934215310 346377027 813645086 866616060 875982494 674427110 982426852 83742520 397205200 682606012 719408339 95396528 258791195 922858110 941751019 869910055 951202229 887835122 926072429 807009591 835044822 560172639 632220861 557016864 806551528 722324307 971179140 915141278 956791907 447690725 613414417 630672926 880819951 403738349 983295445 316877754 523314404 391788637 518511337 638983085 844752245 925532608 980592558 187747417 917124479 971884443 976825886 74997376 818550030 382616663 846647429 982244021 997817210 242676595 852266224 760638685 781403658 575625309 707389176 993096334 996209822 194323944 279254751 815962463 923819829 849386367 976268022 831413382 848617153 849887655 878580632 736358552 976438232 134584233 363013839 220152159 629691830 841949788 953986752 915674967 955214933 174125661 401298477 786936994 872151450 573738122 861212929 959821453 968912125 27446966 781096554 819594635 998369440 138861697 741664670 31651046 528776849 243352000 369085774 36173870 539896606 630000826 747876340 191499075 366572816 902804232 953245559 238046228 888545902 624436990 626847296 384873794 719862132 349824775 755821339 946778275 948813824 149367969 827445176 597709397 673949673 627621752 665337364 298483801 357755840 914856718 982137130 113287633 956092371 268839519 420010895 880372006 918571792 885990924 991292223 764327367 913459466 871228759 908883275 250930472 813656680 627294100 838653886 681196161 826075676 393682858 480667848 306162848 370470612 743732485 944177032 273463098 693370184 867295531 894472441 571706363 858416828 112472472 546205195 52932996 777823352 755635359 794114217 894098856 983185442 816447935 907839112 541133072 951591987 703152258 857877122 365389600 811786499 522202179 730106472 429113820 711487154 420335564 938316590 770100505 989900477 172077930 695901820 174693649 396967562 552528685 610171583 207282138 842829009 299409214 714569397 287987679 697941721 170285383 559023464 564163829 814891577 932083583 961670864 797171154 824549714 133076783 624257461 400196587 905874048 734264728 795185727 908070925 958787472 881411132 920382819 884692763 979108565 671946439 767105902 11031850 867208897 753960525 993369973 768427808 771519875 567155485 935287175 753635445 999267091 237102477 721321179 56847883 472351010 113636692 672722712 685861048 875796636 966893980 998628491 133898068 393691012 17469423 721214626 407765413 801264521 673392539 759724996 402544828 440509654 520423400 806939414 268250975 330630067 239227894 661195360 208558040 860892318 24368795 432272701 664355161 940639403 76601821 240565750 935213472 977764090 832361035 907063113 55049456 664954279 263578122 870873004 851075167 930005315 932364108 976830099 82217381 463526395 930265466 997648713 730863491 962801337 288747597 353308703 594089612 983367813 648746235 847772893 57620192 762872012 339868783 734066136 178315376 344832592 187522654 325624958 157477828 633162285 893025761 978716504 616964485 763898921 672729496 905973955 340759841 894919187 655483839 768997646 28838169 456309256 158537413 941070652 603390403 773538807 826431059 958427647 251557583 850371909 771248910 896436861 15175799 123747480 80292388 163430601 548548102 980608478 881043420 944751598 115969232 270436749 78189453 930376278 918428241 975619826 449121157 767014742 56148339 524518070 571180946 819686824 683769275 960546908 476114230 659589342 843444494 895918515 451286252 468696977 518386071 542936329 748212936 783233452 190252466 444615004 131087443 433346930 161771646 307283154 686208069 712295033 259383811 261146971 954332314 964626270 934362381 962825386 928069366 936032898 745668801 910702133 848330313 883533699 850658390 924956591 909805878 945841638 559050815 978591977 659488650 917888979 864298670 922560982 670992531 676590299 490537850 655325501 666173186 842814507 876977623 924027738 922106440 962285032 942884129 972910238 89942536 420704447 747980336 978038228 729645925 958049074 815615745 978405424 67841113 633697021 686196692 694436827 186011849 747858244 312358965 562669064 620827250 934485677 619193983 711300538 947360495 980600316 558681853 560365397 440552958 927964478 947923487 982233371 345538087 946876568 492074499 889541771 742575611 962352325 217054936 993905151 232968964 883325545 159761721 621066693 613774244 627011855 477903934 535996032 426131846 552286447 486672049 583513169 739405197 897862545 832796333 950959859 106262455 952221909 626664149 703850317 602638346 732533864 73949186 236761117 409562372 481299098 868587112 894527845 628705668 655184551 983442717 992515709 195955009 748223075 855662355 942920740 460270222 717477716 82802644 852648298 662370538 838241990 238372937 276581967 874633674 993860892 355746043 526662799 683573163 846435453 36875423 205046693 977551905 995144849 520685601 976209141 621157267 707576168 499600876 718323871 489329467 736852220 420019517 630483930 133681082 793409757 423282796 659186468 688792761 883109359 661697860 813123347 472596603 689607333 251625302 542121462 32583728 447447083 157239351 336438502 617344499 968567180 133120054 597285421 229799761 401739796 28138674 411275153 213455505 907710828 583870519 840485106 865413046 969851876 681058366 890700201 79339391 717891691 864423711 927270453 120477172 772208699 6467937 147848497 110118183 440471161 2291783 204218315 137375024 750853357 115699127 384106413 144001594 519990322 397928333 606697034 644234237 957418270 132861653 454397012 659643486 980140814 716921599 974510028 997582099 999936463 265133300 895466502 79873515 530283713 674405070 829703911 918502601 982412029 734187524 833810333 368867304 603817542 48899177 479497636 788558252 889174953 706133458 940044351 595453720 947355896 380325436 772240217 902335426 960859171 360388348 930727204 580229749 758733499 895216079 907741302 365331784 407241387 734791110 899867237 419365082 925805350 76878405 632298403 246628581 432046973 44054456 336679270 496872866 662612566 504544088 948352428 386241164 725842086 5359788 137734378 948404656 960559208 893257470 962172640 589433704 877465909 109960460 613378331 229038115 788398995 61141211 486449117 791269446 905971875 390203200 977823686 553756296 601906969 252700381 822663056 377967337 757868572 834879891 927512412 980561354 988068756 55960394 657478118 122297568 676288445 402275998 951008236 986669637 990669171 682691784 817694796 561576439 628417171 654685493 669381984 561661325 655922172 186548805 697615637 267144670 349477728 607185999 920131827 407446096 742321564 107620917 402824096 930120496 974400875 580347966 851923901 555172408 667211641 126448827 669471135 344770456 861181391 392737993 612264208 975012984 977720213 715743745 735514948 305986964 345979265 146120911 466455624 260445139 900051169 224498382 838621392 334731650 972656672 880657102 885104136 579413810 743024522 545928304 908631400 61342294 578304307 157934024 289455518 278790023 336473717 302589878 892529765 864105295 908024674 891033056 948878370 63921014 128550360 298519161 939838046 481184919 686924771 410492291 976594808 601463815 949355445 870720173 971366948 32339662 865782621 199868977 660487782 775519494 782489014 982650378 996160349 168327752 259961009 761825810 788745086 138595341 946054266 506536091 531358794 183021656 920463442 898903007 900688871 459398396 492982259 263011806 862026610 628882688 671201155 567468419 648511671 642134685 921344911 803802302 850665617 704153817 796734169 331910520 530315138 469259730 760576554 826823779 933142200 887348971 979768227 255178021 998475122 75860437 585855610 771544043 981834167 956976066 970590562 7276459 981469665 484070221 519900917 170692511 529171389 643837232 690609966 61615776 669766920 647155877 861197637 994804877 997772880 561273146 670342207 907978941 945212431 822871007 972960660 722048633 761964260 446712030 499150256 71547777 285675100 444504080 596942891 475119428 497645790 980257112 994288556 667624331 825367216 121588339 599484321 180984291 665919503 171480532 206204256 355860085 560410266 364020598 587715371 618446576 662401605 615347798 616260184 583793522 883499999 905170205 919983458 689300426 802555793 362513803 460200229 873726582 994725617 17806711 499347463 80468539 525964074 59430209 358275578 297647895 402605234 479157359 675584670 983111583 988255055 631139120 780335296 451199637 471334859 269337143 626900450 772741088 820073532 647753343 940758141 730131958 808881797 85522836 660667651 968643970 979568941 660246383 746597854 28419113 314743902 194128125 491919066 768202389 856827770 181926806 831315909 315113657 636054166 5518041 556125459 925404546 971601136 466535939 609545774 81014155 770588789 741440356 772636930 1986875 289487946 398438940 924003396 214235947 864395200 824859759 964374891 335501549 492555934 744868141 788064408 204845376 355883783 328472204 603325525 109553751 783330579 550021371 862500056 489779369 566792311 808074060 871482279 77244270 774890181 509029947 840518291 609675366 824378937 385696191 945787415 94201566 866869661 309264430 661023628 3257603 962375650 508475350 909556139 966564556 982231275 727120940 803792948 195270216 424455472 9154154 154310783 893683888 897969938 253713937 417188960 71846752 163621249 249054258 899392824 813514813 976443846 845391016 951664096 862962124 925776441 59828384 738013284 607363433 949747325 221690282 257882252 687863531 716657033 386973220 693397073 366724181 618914311 199505322 414087461 731111423 830053933 97175005 702994943 992611379 992788989 222032405 608213895 595639438 768765803 409457604 491812998 319943838 886939646 221601167 254189061 789929487 977878208 629433774 680532999 509488285 889340357 728679152 966551047 289266992 952082829 836074184 870669520 530170331 884609050 681598913 915848299 474346821 896127011 452731101 532809959 603373201 830889057 121159178 451332565 71441808 445535663 52533359 193534859 658339011 672133553 381477510 436833516 598657214 913632676 911324286 974770878 487406298 543129710 510266811 631236904 563447659 848898057 53358252 980734637 405362872 656986446 887167998 981662671 916772669 933775726 678551396 773798687 170079604 715178178 283997563 790353929 680940006 969798454 649727298 671177088 569094099 660679462 826312899 962438524 425501900 573859339 256986324 377254086 4424930 256922369 700543575 803612979 704010124 810005170 111300126 640130840 673300516 896032573 475011479 535397011 70489885 485783662 110291799 454546234 971028351 971651406 515519541 591756868 595352857 883762022 894595062 980510411 369938492 527228767 239150448 609650557 948523503 960896243 956637683 972991877 398840091 714551978 85082703 608024807 338724996 737496157 992476250 998690061 236044670 439396647 635233665 955016125 682884021 818448743 40993107 905638475 839089479 903748830 538170308 812947741 191822539 913286552 724315434 753776177 592566517 965465548 406781742 600601327 579737979 605574747 950216258 950471308 597743278 874842624 561335725 982242157 352566838 449745032 539938484 973983248 128042118 936832468 847904921 880286523 738344223 770447370 201195330 213470212 116684101 221012325 434445035 599257946 417749088 762153108 231331588 539684229 430965183 873132062 762917603 943400276 112359681 320410425 758279839 808072201 558560371 780401074 9564424 481012007 457438699 751659396 317297119 555818255 993490108 996982429 747359322 956321322 334468273 595418763 75731652 557626011 283976868 328115402 989782524 991654117 117546123 681767422 948793903 951535626 236400840 645228210 651595530 992740550 14361292 754369695 393707628 652451518 667851574 828333762 171982926 412968707 527317015 705829307 606050868 820867278 131243091 151772587 810805061 842973139 672122210 921982981 98659844 719096246 175869171 772118051 665180125 895748814 465176058 721217928 587713338 659442192 595630608 627951527 559589226 613407695 504071039 565671765 360788954 547815998 28605803 347290772 21026679 359122893 868124358 988856396 725921731 977122445 400834385 552336284 581449798 648523203 324021510 423723798 573830679 812936157 882257751 982284132 502032410 775862564 297444570 676635870 494351848 800954099 119889685 274242698 913359503 991264612 24197926 41457635 198960569 272645593 764981284 840092887 910961984 976323063 619040435 746886964 764162448 938439958 512553901 773253324 575810468 642491054 293376387 949705304 973280601 992010694 106665011 503327623 768068878 823758539 87233525 600417363 844464399 894625582 67132101 640412190 172492201 855317370 509705062 817203617 811880485 840348895 932484614 982304604 189947184 745906522 29752792 865013723 792882896 846781317 130372761 422519683 102576882 103973968 763790886 911601178 530063710 568285058 950669453 966574763 936259227 966529008 529594283 653032995 935028525 975366279 787803422 960416883 208408353 754068507 416427660 749992788 865840834 869854711 39519559 622678383 963189913 981436829 339544850 580615628 227921126 266987136 363156248 799024155 810189898 836639626 766501532 940597036 731808895 816233197 495976929 521589091 586106314 655425021 477709367 893348492 755771332 812200237 876784475 999397368 917773971 927579048 848614600 882758624 910254389 983861014 531682494 576140893 176632384 305915877 50257634 814599952 94299936 640721115 918435993 965847165 550601119 749267613 178352330 259407203 942452961 988355232 657314774 751485294 90826367 140615817 762519626 868477434 997663381 999756513 100022761 622307635 563953128 903352458 656912304 760929826 763715092 862773037 652827696 927583603 821223144 955653960 526560693 910562552 188921676 534499163 982155609 995233719 707252735 991880947 264180748 435793119 57010456 521801632 237211444 802422504 398681557 782269172 219204492 420232171 613071513 940959570 857792423 880202926 627511659 958707446 929341541 937568365 939243356 963441388 888676732 905722549 891455735 921471743 757361317 903090001 890637077 991444379 4408440 263323930 199368443 644091209 390750188 956678817 322197527 424061295 400532175 878892044 84757928 587888705 699024967 905157128 127515853 150429907 838402670 968126466 701321149 880797548 673100754 895573876 696160180 773838045 307986118 975508386 951266470 979606404 985009962 989671286 704181629 808110661 91167401 388980991 856288945 881216402 261227229 430920946 588817209 729758850 263071625 364811673 557609955 644856412 440659454 920147232 985106113 991685461 549456565 895143154 689599433 756336017 730080587 741375640 909288486 958096794 79529823 646467013 756201966 815202745 371829104 994388962 97647912 617117713 312126895 878003547 859361744 988233293 567127278 988376637 369872736 759036352 464083701 847298080 435931299 761568619 488186300 565119955 216574174 776932982 595148863 940642951 661385357 879103014 755903771 981707596 593700609 824005406 918769293 993200538 542326342 940160217 930177837 979180566 32870096 465519833 345319054 529926911 412458366 985242718 589219531 954519867 297456285 642564361 446319949 953438907 478289898 555755790 408760849 901684256 939812757 952456186 916137559 976762994 769046408 964529614 232349535 844910558 874522192 933290334 831759035 897252254 570126725 576424208 533611306 563542406 438471582 762739943 555874869 673287530 141554987 772269098 593791591 604792169 98103394 386317641 535819596 556204807 615174665 710507622 823674930 824887299 101912166 239219582 31761228 371059516 13202866 470755757 806030904 878043349 401096803 744618425 676123079 987852640 909471703 992718740 657418994 704699455 363351247 767681597 634579013 821401647 197596551 797130751 473342347 624588845 184516254 874588684 305663806 494305207 450127727 563624665 784985949 886172507 143180087 762716812 715509004 974989161 746083700 926710229 708299688 725306043 417312915 775295562 76860551 765293749 220112434 365025689 357295313 625964932 121450192 369916709 693638489 881150730 496906508 880811049 814176286 891723338 664873317 674878754 440902098 862399899 925996911 993097441 783373852 995934215 481169645 678167634 962405794 973936338 330507341 434012313 486469790 903349945 842269899 851681093 636195262 741809850 406222611 546801430 367746271 872570631 932281243 970667830 341095240 841825716 696677394 718824363 988204063 997496448 393832957 444417204 207351798 541401707 971633288 989081242 530414148 690449666 930598923 953383144 548310081 676381001 243501644 449780726 37987970 855848334 88341091 821601003 928909351 937385628 591784644 854193064 3821941 406084228 140502692 484375572 589105550 672503194 668610327 802962688 297942034 618537455 572205346 647239736 631600516 730466262 48514491 88958522 821044454 945911977 14419031 749251545 436692601 757552956 914850851 979057651 828035064 994282265 468756761 710905166 18361346 25886357 311430268 453851730 140921008 553679832 492091585 830387032 618995253 668951901 755764646 865761013 962193431 968172219 951825669 967044729 256168611 842634166 634296677 882977556 144870705 604003303 799210229 985729601 768306956 771716054 649200537 754515697 73333470 521675471 28545207 634344483 51170400 466521061 110229506 910136385 409279341 583393477 530379205 723485473 612541883 874950512 674501522 718486099 134194309 580986206 711766921 844101566 76475227 692207051 605819933 815895023 140678516 276358833 517065034 906490110 322791296 330522952 904578246 928306152 490000416 867120915 145181138 788423989 141126626 483063673 752226066 946549509 672841696 754709520 947162367 990928753 50101111 611664511 123164663 152856009 297489314 999023648 601436446 931439512 45583174 380189079 928077710 949866205 209123496 876768574 842684245 954292433 24371776 98547765 798473191 888076401 865100578 941465866 318682025 516599737 828203703 853500160 479684127 648108744 790120126 937523155 135266803 646335359 686852499 704170715 961446431 965541198 129797469 367360264 624281319 987675849 787664865 900897548 728724312 892578725 344929286 678539870 194923880 777983598 860544471 865348568 761387427 849630537 13360850 817374607 41646372 976469114 34097354 370920729 474723214 691903294 586988256 667451549 70974381 860368000 171204089 910780448 747283746 850825052 622071654 946476085 855692605 898432627 888398533 941297534 4743369 283739045 830751446 938896227 438875356 572148435 181493133 874727552 470074531 487741044 715350296 804989180 492382575 771887759 781717316 907252828 929092068 933691722 158059676 293404949 3656776 563636030 330720211 612143477 629026690 704554562 688449418 772931674 138882068 839840805 800518093 811768544 84539551 944725074 848624748 865081358 798417207 813408693 127880006 487040149 765590800 809543294 742428660 973995864 323257823 863745537 367504793 934005955 383192472 574798171 780534843 898633032 631376538 790372680 932196553 976964652 278205445 718589004 669182030 756205351 597308082 643970065 151433432 547158616 313577950 889201110 96000184 472081511 411571937 872067035 579751493 632786169 634668456 760380926 361976386 760326343 82693988 417850224 265834774 295893051 52377162 978965838 595469877 838360152 741335327 898339893 809928201 951208668 331264945 523604857 424721033 550313825 81294834 914497109 296751272 670013996 892478560 941549098 853436300 915906840 901252919 945873492 849864595 921988113 308221606 649031316 727125418 899894341 909733842 970361439 769763075 785324650 889011125 923862298 491712517 717924303 360324624 399541226 771035821 883873576 399045182 788092079 975683169 984287931 916062475 939615150 764713733 922999434 787382322 981305419 673051802 925708610 64601678 756640333 331353121 361818431 264881966 710345358 574487316 598904472 34294357 329405193 712600576 802148502 868724453 962949586 938261643 988707390 607500928 611352248 801649964 908532069 94576606 254044649 217365483 622875570 920994282 996069305 397693740 725667614 703741643 849526231 676397032 867965434 349673194 812377394 838665884 851074023 737873282 830080386 718858398 888115163 842122639 967013352 369712772 402651768 819824568 968021131 672972875 708980749 224867657 851865025 551954672 572388786 180771743 949351942 315902439 549265291 506715538 804275667 78337914 599363584 17549228 233702686 270937259 750882879 481129499 948746514 475837286 781469354 537086219 814038707 513455611 659954418 161364874 567862854 183445065 381489908 557562473 749129087 90529231 550439738 653217889 805620033 525688506 888170809 510467015 567813730 515886474 906684659 577870503 812998172 976782096 994763947 104100637 107004690 769105883 914096510 578298492 840219591 455113556 907443308 155700227 549408896 648301055 781014844 626475189 942773050 168685290 672222761 641511395 695209660 243911128 409052463 868928420 994387860 767507196 880282379 213161691 429134036 333943775 857103940 197654188 234953859 106035403 693668874 37951840 257132911 381909371 871709758 875598287 896073231 414134226 577093602 249052082 673561403 639236785 864575514 357748943 476025138 86333705 999333302 254733726 760275371 793048588 992938295 673295511 787689996 692456281 833048654 320720255 679252020 996541172 999034386 446516636 800134946 421779957 993463040 942757183 943864994 272842233 330972879 252642706 648556779 342957529 649189922 486986281 975789963 809829483 879543241 743231753 862525876 262462855 872245116 89046938 987742538 973784959 994881557 378773804 722367519 486043314 538458807 679128418 944148720 512381046 569237201 511774018 702858701 198187807 937029610 675729136 975661757 586468372 889904310 738783046 930178796 736249577 946946646 979663549 982663054 901122887 902787051 377191026 829641151 875394375 903316158 830093491 967738727 400881646 741343588 611038904 971627487 358900319 722338843 159542269 611336423 19686651 280192081 391721012 699990990 486351569 733361561 639530720 727763718 855837210 982978056 544993166 927564693 145592450 869215355 112167863 979852343 631241329 972250947 912537166 912898388 882011540 939764598 436596116 772894751 20491947 835771352 236114607 435953531 157550000 392734970 514898913 979932940 398760673 610187172 796445991 887462777 546803030 892233758 39119646 860515923 961315992 966321865 747074641 951346827 169030726 974128278 921313165 994404369 467482050 517836271 643851331 707040981 907487701 924638667 390249787 890977967 397267321 707160599 247345435 846088189 372829713 756211875 837931591 843038846 240440412 252536938 814966957 986488840 402436853 530693235 42696755 183701024 33171212 256386475 75285842 490184585 584545668 962117355 735919565 980404790 123606289 140876429 892169564 975753163 65987883 722448916 114575831 644047560 356547083 950383995 294618508 857981472 870114247 951151830 231054882 877720430 255212026 379032824 975672125 977299574 12690759 241621984 176627158 788615700 845035248 910223427 245519213 496754811 221752741 529712149 575985249 653899115 285355873 629629348 853420444 890150560 670975711 882070652 435139590 476376195 521437655 783137458 267366120 637041289 740738925 776034013 725929978 942023239 974605162 994715192 160161686 846520810 766203538 772368473 355036445 551063511 236549336 845514357 294104381 637789771 299050203 344190116 127341893 712831318 504100991 890524222 936985499 969954406 971243192 982801049 809752313 832602205 132136357 379139687 739981117 867288474 360610906 612647386 531621519 722271942 652062713 863066426 871581898 965883552 315907331 613067280 769256213 798790280 388193994 470880246 219669672 790528410 259197297 533371234 159527230 189528318 181272331 413811070 434335208 878487145 459326893 739845346 748134805 899212908 789426054 847033025 461735372 991603953 398365565 619689075 442158136 851171117 391116521 418564430 623949724 676458100 83803962 811228862 367312227 417751753 156365453 556620052 131829921 826956811 22271329 466695171 222454537 481749888 222760923 975207025 922269806 999726631 444124340 673286639 809815168 888046083 887099981 898343835 651319250 656649073 993475656 994277697 484101269 723648788 964029602 995629169 485217504 764024027 909341372 924239716 80363307 890789173 961079454 969345367 667032522 925930709 291678586 312353902 474189618 703517363 631740881 965023858 939173936 941429363 417019149 508451815 394500736 742720971 787786055 926670784 889938471 981176419 500261647 515658005 510873610 942969957 327483586 723063474 287321972 484272918 92547238 958278530 412196786 633473486 491412699 549877059 409082083 502391046 894205562 980788796 258582167 965015503 374089163 558300846 539682802 745054196 330031339 941178728 466618368 807786332 354412932 494109640 45669720 468249101 300286473 532760564 509226502 797109321 23015300 489896185 714973327 932858904 990377648 999506692 259561940 615485975 702217048 921546386 55995601 514981536 567482879 840038993 692748047 813902859 304935367 929350469 264858772 871871078 746812368 989021632 212325454 644101211 820080626 972511681 727318472 856292913 251534449 884217170 499841207 551994007 172254096 520323165 313884501 756295383 714006604 806029416 937023426 962386888 246431054 701853334 387171925 998459976 586496566 990542433 378502023 654025363 509999979 998527947 503855476 525734547 917396906 980032334 680891848 720358172 678090782 892024128 141216084 664538163 355475963 479035002 426518828 980082938 875631535 968973665 864070046 911614332 338438395 400821804 713215521 907385674 749878448 765616341 238027109 499793842 747669789 768928508 490880010 643952903 62349475 853355279 625737855 625917271 485832779 689466596 762935644 843945320 131663709 482232382 286785575 415796376 660723048 735190429 771313034 847671072 169606438 365926040 816261706 941104886 402197001 439900789 782298916 861775699 328226076 730140548 367765257 952217585 812686843 842693052 380324324 995733871 424441757 831287687 576791579 840766567 839059963 862531273 814206773 868051424 408383456 933464309 647568150 916938332 869920593 894114210 632482121 818664878 987110377 995462467 627456251 875374086 831769634 872267069 275610208 351701202 216662445 856568768 313852239 521686757 374015241 690625530 697156271 757535846 973239256 974549139 837804150 890999299 21802537 959563111 367752713 701177101 121182313 948494244 453637928 689554475 604566586 637249956 454221929 597979188 272772332 746057909 24976568 275655110 119767406 659633861 146267788 166707456 178208242 674991548 9079317 505790970 195820987 954960141 53306561 327758596 199326207 445978403 401142445 578937006 793020926 828281412 97250586 791590923 386705043 559251843 484229985 859066215 487650339 619115182 892665684 904964321 40896309 642756621 552883354 677248581 124209631 466027671 817986616 853209889 887237170 890184323 30023339 67796606 439586994 685655905 601433004 937117225 334114201 513903708 929785802 950959512 952510170 952670711 177925237 967228278 892606692 959378305 562618255 828874217 958146613 986032443 232576955 920974025 855399920 881312373 764282931 825494652 370932062 617795054 232685684 289451373 378900557 528892442 273479696 517141266 309864432 341801665 489273651 619997110 964161945 992498408 840033970 869659310 143443514 944603705 474276078 982452600 912894990 952934572 81781627 996406011 446804876 713731279 63811484 622404565 193704407 400120385 494825042 843778881 223486344 408387382 176164628 574760464 401948168 717888170 885084748 946355000 806166280 905082017 844488348 990723728 198260423 685368475 159933445 286265706 575479166 954508883 476811095 499113398 254523711 627550777 853220920 980825398 440078259 728284810 484490302 975503538 982965929 982982051 457755222 627591752 144781227 178643104 998263628 999905549 323836174 523187889 722349464 993532146 441782989 582385292 650953046 780591957 433815903 867092069 985541602 987737615 964819318 996316368 857866408 920535151 812891726 995900354 190241581 621447323 608349125 933058707 872724852 882882264 666059941 906673241 704656348 890013230 617431363 807104828 654992554 820405411 601797562 774881291 571149052 629576769 433970627 908976696 478975290 805804375 31254485 639488352 802728275 837117968 42607371 817152391 867581085 910163927 168897599 590696614 816511214 990113366 403499687 674803608 771749212 909933970 335964133 935984004 422544977 478158228 884835018 954023886 493534383 825483331 124688469 869054111 521006453 992658103 306932887 615852358 803203006 856001130 83073875 973129268 181217432 344406379 386478275 890076446 918511060 955595460 825689136 943795596 866017599 953088430 159746863 480982041 100183056 490063496 682448511 689499784 102599682 492108728 116047930 152115014 250518725 493501028 323021951 329031092 576307799 838829068 570187296 786143155 38741217 366802766 302911295 901206838 951197040 959204681 662584409 896734205 799338209 976415159 280586403 859346611 535353259 733526528 3941028 198411239 591511433 837564567 130934713 821951884 978502341 986989512 904234197 981274780 608902298 890474016 891122615 943991254 616791271 692874309 80732896 229001660 682788002 744539220 101907735 444691983 9160829 987393338 49453501 486919755 150308287 587934230 114512765 741196565 970442762 992614382 326228961 667222197 436300582 757420260 596575369 726645588 868321753 994805120 560182337 979448238 736189838 945002833 534529685 806625621 71309324 725754635 306991918 820797722 9012262 722713336 595844129 928668859 198393695 213077654 989398322 993961328 701098121 743730325 362822328 401160211 479131474 882735962 951060501 982766171 371493053 694168895 533369042 748274056 429023604 508187855 168660066 214613283 620299764 889612033 136709452 210230620 128108791 693694051 679497531 884023202 378991885 983685087 822558086 992822684 258952787 819500746 326871623 827343626 155672135 159101227 264994967 309694645 443093598 692180294 816141130 844367408 928878152 997037858 562851432 723776711 317733968 629680381 462613274 970321376 509124469 633496168 249833008 289761636 714573473 928855157 967499968 972581567 316750696 797636864 222106645 729926367 709153885 975240172 699558840 985953968 548427480 880757650 770246637 979357555 840040235 864347122 497476187 923237799 992733964 997767948 744694729 824818118 775214174 820467799 123844272 683401752 360329319 671883553 249655694 770610203 666614802 934705497 843718744 998104521 33049212 314472817 540146870 593207850 533512349 867017246 139762956 759265716 205991748 633060679 541042636 883742319 276645110 458045607 767423929 803821484 731885429 843564899 837980469 841897154 82268112 148257008 245776697 832636111 714966383 971533207 20889978 63991489 39447204 225902653 867054236 950662599 401801960 775702684 26746896 273438868 830701748 861565954 410070764 845053893 53765684 78372518 331465180 673168515 978288622 985157788 814662141 850821094 585305833 834369418 816133346 986999774 974409774 988006182 796240461 815179901 961410596 980583204 591294919 912317238 483372971 635028911 680447233 699944752 580941962 940522581 686928725 969678699 886273695 934416791 580751980 964140673 840179449 972057748 113429216 777936530 743784611 882187614 765261812 786091901 86987729 88592395 505765475 671207187 576296009 942983676 295846811 701766066 569010094 709009252 411330209 580166736 947409338 986749238 664319605 823169259 142949341 180824863 488708686 534512143 132938185 991608744 814321645 972720587 420258618 667960427 745019299 978005594 12218778 672412319 149343252 395470746 809269363 881783116 324827943 984468849 412609935 970694853 253724053 577918740 739643536 989504488 475704000 499775183 132459019 325601602 938870517 986932166 889577365 943959385 936903261 971842676 377490360 442503178 794488137 970442838 786710344 803440630 359000237 798142790 610485128 918066832 21905869 205606202 203930587 219433936 808912714 844399833 518596749 940000832 605718574 898774451 359451034 522969864 696424498 948320168 180454603 268667941 966409814 987077927 486856175 935052945 153847799 869594134 311058816 524233177 848161445 892587280 99826756 448469650 928199335 961665142 23405973 227054747 283212511 664984088 901733136 945437570 23491571 220665318 540451623 599875701 51271633 766611566 863271240 954613548 500526062 683790302 974244594 998155172 408878319 793450225 48616272 418993578 159736335 739364979 578762135 888190456 802688324 881288982 412364636 599489542 406323324 877038004 482080267 658558636 64178694 998084608 686456931 724499652 966888161 976592426 209945082 779468489 231216476 439796150 760344060 787673897 372368683 624200260 333229479 828155543 738305206 886027944 525465013 998245526 986347271 990426383 563478809 601389879 725479881 945768866 655403947 791450258 741334320 882090115 204432792 595165088 718623868 902596156 895093792 959783915 354946606 412220130 716995999 733001822 210255049 835457613 277458312 822679483 709964728 973762969 237860379 753375304 630512039 767186994 562782896 672997407 825963953 969294375 124705083 957367345 245494841 543477816 107408599 805600276 679528788 754400487 617390927 957420123 452142196 633271939 218304152 482552575 630391528 717067675 429971913 800707032 860437370 998928600 573278714 730625250 998111735 998274933 349178782 589060151 604618252 703218387 829268475 925530232 955891810 986582281 92481061 368036395 980446799 997380297 642136863 875684368 305139086 803960014 81621081 90005231 369124846 625647270 746299191 878483627 566915215 746874572 685912466 751249745 930054589 934094659 207418277 708857296 231027431 242430806 625691262 956383289 819879382 920424247 508588624 579759375 242918880 438874778 270626640 768026518 749102629 792287428 428088549 441568718 543268547 600096838 182880545 760735955 120684308 896864118 603127707 677884934 478307996 955960108 938739846 966910671 84724756 686338655 237259843 589371458 500473953 884689436 358604959 503019660 2880932 488717607 134380685 389539308 449047694 856184116 420291324 856700510 228866807 318906225 467779510 546994245 833382597 994755500 566532054 861144849 64567810 517072851 880615512 917346850 702143290 805053221 242073998 334074569 507787490 730565059 543186533 715768465 339693107 497544101 258029360 971582715 58430199 219743270 928006072 945298328 505304719 880917268 831038139 895564512 252039250 409010037 210072518 607840755 182864828 236138451 745441646 831368152 83092196 278495689 765579220 784036415 301351782 550311747 702404841 818048011 228376814 875760770 816315584 989046025 106993635 658429100 562901528 649760237 255289273 698088546 818186894 872212678 280096192 560121392 349148321 699215565 895057132 969055083 234283327 396521546 749090385 978643394 47831013 916575295 767464006 825321864 189236153 893918578 258375843 604518505 720132495 842473210 916205539 981947188 614111076 711596499 413476018 483802473 786823443 839650335 25643653 577537807 176159097 223390511 576408129 606962394 248444976 731794376 443678267 447967519 941128579 979771601 970337521 985523036 728302135 745261082 943273879 955019543 6577693 304107616 692190833 960868795 963015313 975056979 223622397 233138152 115622157 361940805 386431339 869127065 177941300 466043644 640488682 643100145 928878921 984586341 717529186 759027426 325799515 847609782 13114249 603866926 258240534 790959441 982206923 991662954 837938289 936720761 167741457 670644096 257286001 475484854 274408868 413936422 838955327 966791743 289032957 761781126 984216431 984985703 326516864 466525443 841255108 915399476 987825469 988434427 983045714 983572641 73283951 739273192 558678932 591817425 902345847 964223954 976843851 994658163 321784649 579589134 443203724 575675301 86006864 90337167 866000324 895657544 752013230 879826167 861679946 983360346 294408799 941230529 629119120 710434492 771726381 874281604 111657330 331344122 75490344 372064359 708928612 982067379 734884931 836459904 651139957 884994059 19376887 490302419 95740338 333739836 551808699 701580365 925299712 963783456 518699134 533086794 138943876 436695837 944063945 946823947 274396314 945468809 199045202 493820636 803743824 966621644 479976828 534207273 851280944 938879063 43184215 410073983 364179864 874354058 860058226 934726273 573367978 997573959 297682749 838891716 759408301 919200510 299342040 893082760 351884648 834010320 830659759 835729016 756027460 827168518 41143904 124128015 391090242 583147486 590204657 790336564 405229873 702658081 485939657 507647424 887241912 961153616 652560730 730952735 20445463 646806611 343626550 953815322 453011671 552018658 716069095 937295063 819600594 883389881 54080075 848189447 251106682 878424429 773939484 818838887 906244748 974175818 592987401 945477732 306615590 348266803 521894690 829826565 167222570 476889495 630286648 961486185 231188574 726794971 82778532 893028461 67263832 226522176 815163250 873448878 776452190 944405703 712312945 922705356 575134238 743801583 630646325 895688792 5506580 546008070 631857748 908607149 423903899 927419859 716165343 838189434 378067001 666114172 370333378 613936949 803788336 855872779 9366647 55214649 618663901 808421168 369907270 612825089 398072336 789225054 744980416 856147595 434696676 699811743 161844037 569281736 877841076 906834194 138714640 755306564 556108883 789495728 530371092 636874966 226283027 550676152 59494342 268241929 510486795 924320927 772637442 805816926 636144097 880585335 977929990 981378949 401740747 464149145 842629530 926721306 401083815 449584816 939931794 979284744 497603348 803612604 873915923 979158709 638003892 813025500 869481950 970474543 744000556 858973195 791628697 795600263 356966156 745297514 73716979 497953322 442532410 706232346 407904911 979093140 571549669 753449408 865423423 889075945 332765940 456740324 833488508 905351767 982171040 988641724 566658599 673205001 692039007 968297493 918476987 962981195 73363877 830127508 873256688 904127264 315104408 563687311 719841524 779390513 156010416 380687501 985188571 998772640 789527091 811066782 302654459 649421938 674357451 876204876 122307379 132250041 440318426 616458299 571292321 770711837 687158659 981877339 64874995 213101620 670993957 689144792 794579297 796147545 567881034 978256101 274122151 320468865 989710180 990067494 911420831 924713058 9079518 942312637 919918126 973450710 588561998 898672093 722826738 772271695 661062211 763736309 981676177 995941868 115837114 545362942 235078900 595301009 405836169 904521533 181265439 444601287 598728720 906886851 168753206 251807397 177134468 454536111 805846821 856550363 518136832 628460699 986934804 991751977 152968679 518413416 966786391 993481952 364641111 395194393 592731132 906436760 260445356 748891610 928046946 969660666 315727739 687636370 624761216 642670864 54671243 506367850 53183144 420559635 759879719 942412616 80237667 364881369 273223297 859981139 257070405 916548719 340404849 342290466 74968778 637267271 506382213 655253125 239586644 604484142 331196085 877666806 220073963 691737155 628604588 771003894 672028159 869683766 56285086 497557776 139980472 620418121 671359868 696273882 96114067 428549596 392054318 685734197 478249334 617385280 216326344 405370757 48742607 690378163 282365571 673955239 8143044 686751360 326608128 529940376 523515592 791206700 156928373 988504747 625394392 954354736 44504626 347222173 4511508 927139231 371996107 729404939 559917733 796412223 313478708 615939136 788891114 845417596 476953608 626103236 303282556 895464947 683187067 685588189 433043114 572226991 73325699 576275922 98754613 797141192 774191936 956380730 521588574 583746649 510622144 695553582 861521039 987588823 437387802 625203073 373461001 406320563 264225625 802977943 209402572 612808896 902816347 909644617 112486312 518047871 366115890 951566476 525006531 730687221 638399481 779665116 491118206 613159218 601953225 985607747 106554779 457086445 389982140 888571707 932202076 981945537 424508361 567883796 366097643 991160010 236220704 581901592 132764588 241789057 828128816 952745573 358188495 504054796 69501139 121471639 502606149 853142587 474790392 541993383 706098282 776879897 886731038 949080022 404713352 663426602 459287577 977743145 655685199 664492677 552469464 990279107 784072203 868725559 195137320 392445732 31484418 137677184 605252541 715042723 938273203 996070061 901765981 905904986 629223568 728398751 200988233 710276806 599737787 745655453 273534376 365532001 380852095 743980557 180842192 296050986 287432221 622339919 560645038 837415186 127842335 913191248 770239533 931891537 20527498 156599201 26410683 36743017 849582670 911756294 175125342 478643549 107974862 603486954 109256836 465540190 737086306 779297790 18594509 969844436 301987296 708879572 878275478 990249414 944890336 963287989 346992949 444398424 925538467 991248048 207275396 810619280 933555755 983475256 734555897 856528882 415760178 632050671 505166392 875564965 732582176 770113686 79899343 357918359 289077121 405681712 365818212 649530446 381729161 813159612 456943507 605766189 13537785 99600848 554884805 960976149 289418103 764286076 400229540 614069033 991297547 999045816 184561466 513466261 304873929 579816532 645830954 903114135 922767528 990765631 540026496 565492543 818632501 881908378 621827847 982905595 923767455 970675545 451063337 638487045 516453247 713737914 147833376 354333131 482192956 988946840 888229396 899208923 311266251 828004520 581244090 598216081 769575764 820845220 789643854 965863099 608932154 871436816 883314017 900155270 655690249 708844054 537183252 874686454 602596534 939519722 525112712 578670054 7557033 743517449 185573987 795707332 244485853 351553177 188707836 461856567 52347247 491531633 609208205 704529358 444110148 950087940 992991203 994307808 751023019 979869601 392081660 429087536 557119704 970423877 380982041 431818475 453331319 879352910 203830639 224156231 737588703 826821053 488145572 528636619 818555193 892491354 787385205 988109752 504350839 903064736 910078212 966842035 329643129 376789536 971085278 993311511 257159960 275784625 785835431 894485532 394251527 691315862 62808394 785203705 998185160 998648307 645561039 909656272 198627649 897402018 823485007 829516694 46917226 123149678 455609807 999055120 680293992 717920152 318107457 369523751 793841365 962968417 538653245 834836412 803888053 851657742 703988781 707166952 508504236 511124667 940710248 989613729 334833290 744737897 888548961 952066412 482515212 807314978 345220469 999202353 478780772 623358204 271608101 959749129 829577399 854641664 107932405 397014026 372247026 871162304 448514010 827747412 556839181 591330853 345144517 512975471 386881191 931557594 675455466 975236053 215117802 807205350 931184197 977062028 38620090 235616220 723575007 827630067 577523251 887295240 782872434 977943321 324863812 517221844 116628413 638083134 245763817 311352615 145446529 693370939 983581519 994146823 944633012 999149367 433047695 840631043 60551720 512259560 37195105 867153721 779821699 992952726 848207565 872996434 560610377 628462641 575084555 672827816 660571569 867426603 809225891 841759021 41151011 202436787 326381220 549526047 81618125 897672088 933720049 990423057 294164509 927801549 776112944 992912291 585903737 917812325 256834444 879755956 964497879 984429102 920051062 934137558 5246148 79815841 971620121 973731427 59494699 138464126 950519884 984676367 4536156 227837166 819307890 973376398 354254749 887767988 591122359 779490872 723782896 824877952 890420207 909007899 502570150 794603383 582434419 837274625 269935415 369567340 239712645 633362615 621954003 813194279 278469059 779964127 635102863 876652666 347590090 715625221 780802510 794487310 714522359 818665040 694788368 905825069 731799117 770153830 463502340 815038332 869639052 935155638 305317590 725403051 308225759 657088179 853673221 945228478 293440318 498931605 502150964 700021402 278434225 858515618 380747329 782803953 744247491 840142166 141115921 221858086 204002042 610789321 513940712 548244236 533659055 976470836 987094544 991343823 229088837 411598995 649995718 913151310 516875311 694986924 283748375 411536293 194408919 546347282 410335462 442204749 927104644 969050369 105830918 362176332 919029186 971615208 600717257 635730858 531951141 644296700 217248369 245035922 785777302 839263433 946209426 961573670 421224776 585896033 551600825 791015451 915061483 918941571 337433016 721886228 358194757 919857809 672585897 712049270 300904163 362670398 802010967 842534690 270137604 404885024 938773585 952764907 880724577 947553710 557870270 622861255 466541002 689406817 512908564 734088154 226066580 718625604 151676094 601468347 781323900 966936731 806057000 835779791 755769021 859013374 869826798 980038084 452077704 814837919 162127035 199333788 696738613 782374344 191029276 432918015 783681840 925722637 181606374 522088404 764313373 809904033 43785918 890271919 370608578 767140745 867245356 978292005 17766193 277771484 369421748 976694232 452074238 640170965 756308688 971147405 734361752 963501833 442735933 547153102 541459496 741207911 566584391 746604228 93406296 731249099 936307194 964769260 950306747 967351970 962229484 986893017 828625205 855690188 754971450 823811602 297641699 986929563 177422479 431941653 286641893 744384324 58026276 235534229 533672473 608916278 418642190 500465741 128406094 525057168 122325615 418518200 9796879 291256705 250376824 871438805 810555333 929975937 965865120 982776208 501057171 594451517 971974045 977209910 686634569 850371166 592099211 818473916 157909120 267230763 828311535 936370252 291997161 476414962 139314507 283698321 949663969 975324167 222231961 518085438 521666324 893904258 14737588 240318870 822217791 840208123 982968911 986408656 752242315 882306284 636009026 739768483 384321562 426101619 870260876 940266499 18558150 27747926 538097271 554771684 948660968 971197490 312561815 997252626 916415596 925834117 17104471 31582410 480768940 870912543 545107975 905121781 797084143 834659646 944975631 954492700 292838208 408006115 539517277 956261150 493286626 748474911 428669617 570282745 945941943 960043323 554865139 560012718 914058034 936278277 924816671 971239540 982155152 993553136 505642624 911617092 870651541 985194510 200542358 519180027 146777261 164502174 339217604 445997354 373298371 405713564 719372258 809713174 441641853 855630640 920394638 987097791 421921592 829405176 491661857 964471309 438009095 637570781 271585703 521962403 833943946 897281638 518991609 674219117 888961853 968798410 181912724 227949420 501925213 594020976 243502184 382066781 50100892 278525348 571654679 869671204 178709529 513262152 142918350 199282929 321469518 729061954 893803394 979445151 164839093 809894031 578119693 957532936 374492431 396938297 22443060 746506418 83495850 472697489 828463622 933605279 183844271 385274820 223612033 354473432 92034401 700335009 838088109 875449786 985723424 998724885 975961621 978481682 376343694 864337665 849171475 975819042 815014088 893536872 731867496 862351959 413675725 924739835 124921135 479148734 558058518 805308507 5637153 551241517 662139075 854916735 778623801 994729850 959910741 981354797 224514261 741060020 838359602 943123545 709949918 995335584 812777983 932617869 701955429 831869565 980277353 990444600 367265914 956915680 370612116 697946359 735123047 872099679 51832630 855773744 965171204 968775859 519155800 839840786 205049317 778707433 275418711 997429251 157731438 491666085 797207400 902715551 642500206 979395884 269095567 649094095 816023537 969984534 139026960 678602419 806571405 904170347 915563999 990109331 924134027 965439457 63744670 326037214 631014785 808711593 374630213 927809257 396963714 766997143 53376724 829238375 440482345 809899218 306970445 803359415 244830725 983088364 975587678 988803752 66290691 427614465 462441377 854407535 40977992 267506899 533357889 539450812 661234036 984677364 91413669 943637351 829504400 959325607 270102950 910840657 129224112 529751337 807852157 885458260 818213500 864105492 545653909 608997070 637924005 718030870 294134435 707194875 968524857 978060781 31846496 263258530 771368473 873278516 479687237 993336024 925753747 944341402 94081685 731428241 97024815 889362082 696996917 737918645 328197143 947189743 507258206 550704378 16320977 846593332 905685695 939056906 439817438 719131064 728161118 931585299 250853093 377487774 602871492 849226962 195666067 975436643 963786010 991602833 8366084 668647579 96309142 899802812 392080222 847993669 84287880 645354789 964161545 983053300 65546787 265390204 100331844 716684957 446820322 711377421 241549972 894726070 180092244 870658498 989739597 990420814 216641025 940097333 796743938 839112691 886703543 905622564 645075894 947654786 600575139 827419711 430824993 664482956 17359494 557974382 857552778 873591910 383130437 444646952 391476038 836698616 269350193 610788208 774636317 994359243 329492428 839544086 110443515 231566274 383129450 581383714 576544213 908774433 214946001 851049836 732309261 988253589 560894176 648787221 311919892 974264292 658631905 875499822 356248497 443301501 24963270 688433201 350441334 380803386 713456115 817993322 951316758 995796111 585975321 717849114 749606273 872655314 217395463 273475549 460876943 546549936 832707749 919818521 185527057 520132544 880935377 980110836 685059247 956114551 504496868 622743436 678197100 976357925 595463028 655093496 486955563 533949287 344650517 947810942 313208655 851489754 77089049 838399287 745141906 848432797 793166178 802224864 40489177 630846715 767114493 809176366 469631651 663963439 679352939 750532362 978331359 995944375 247489386 572374639 916851471 999208260 997249155 997316262 545132020 685804528 687451917 764261800 598863694 913789497 502723923 882142293 485368843 563409178 712224551 860902723 159205497 670504385 578946224 645516840 460657683 774876603 223261047 583216358 161675554 889535971 626339727 714472360 172072673 833697724 116465945 707619284 306156467 558055102 390115404 528200737 367201859 737494899 671140410 808532617 759717456 982693963 523526729 865417018 706433180 797042840 61725878 292545658 591776856 663659374 40993616 420756170 156254373 237986825 934999127 979343149 598288608 876430573 571932070 786121582 861475410 903941943 386115 628263184 854561654 897899609 101837954 939465447 546812308 550180174 818506993 951864910 612534216 886529123 926980518 962880613 600776363 701542797 356215096 937458791 789640969 868326446 795418650 835004704 7165958 314938585 190301026 706712333 475252119 596877912 562904406 847339801 390701391 849172030 191677470 220369741 58183127 233577353 346289822 844229939 848135526 890088146 291760719 542179160 336057571 799206844 102638221 392599971 641581027 822912979 991945464 998094396 590864879 624829415 609121216 927791261 806559640 929928719 577430476 602094275 279654466 809868259 853950435 975339500 703449646 846828732 516202849 842778079 340500994 592645391 966182107 995808995 660823423 977866151 946030194 989707039 276902031 769024064 455199458 595325825 955891554 966224755 335004871 391953173 341452855 510425433 998156694 998676446 549373549 904802878 799348808 865144492 339907778 868604789 171619212 410496359 201490338 977038701 728601395 876732681 629574883 949060319 464621589 875612752 722513556 921576247 664600240 806057709 173064557 789028926 564731627 816069179 669754154 715456181 115106076 226547872 970624312 976062075 272030402 378346744 646823716 889675245 768732253 879586863 776391292 872313759 536884042 757276460 852696461 960303199 648006187 758434991 985697211 997540549 823720613 971527921 70865059 181926861 550764885 955018073 132521382 201879738 629125773 960770686 791686646 931486097 553159588 592791244 294942646 979739499 13661905 213431129 962711113 995122783 283952253 992433350 609439240 637678035 158440538 859526470 223649338 805181818 517308261 525794101 779639260 875660700 91662595 736472620 226847853 692897153 125499012 225281696 603848647 971911195 916411273 957514294 298039618 561435081 301438354 677144801 424252536 723846761 500516844 937161164 282267833 556602624 324799205 703358864 213366285 302245123 411746844 974902307 426479255 887839615 989687649 997379388 387794824 921815949 54087878 897018961 590730190 804179516 214417416 554524752 157982290 834602451 219485225 785377841 700196152 981132646 658231290 858733436 588999066 617790832 748066210 752768012 540417499 662074896 174204034 176886263 132946800 952210829 65665789 774471794 142838929 503188330 954003989 969340930 767412955 830175631 739784637 903231366 410711847 728913932 472313980 771791800 703665273 799102246 676630704 913948621 975054287 986125655 170718034 608606385 71030733 85568680 126962767 952759896 543798400 979085691 414121346 601423118 897482444 968210290 197438432 819978931 279302489 479708136 702959790 976311690 436969818 490848780 396679271 613774785 526141946 652501798 924976740 953856332 241226492 855688639 793256962 971423546 454095248 513875211 882941448 920587846 772159683 815822977 614819346 790014411 247240599 781965009 636130214 664186891 320058651 403388730 520521067 675914152 999494654 999882407 142104026 920604085 769776419 902999360 141331968 889263827 1847761 413382546 922069140 987610286 740146458 773690929 730942569 868746362 974205655 978539006 682558816 780768564 401490337 617974179 627073445 769408744 553568288 586442143 192363518 413251656 142303418 596694015 963405431 978097715 413085828 851438573 519445218 947980587 266130177 601360180 680155800 908396830 595623600 842905531 152540256 889184189 133933007 532410285 247149258 426508327 328859627 377619948 303811128 905771253 109838891 410508068 900824454 901922404 474124835 801664409 812394190 846667182 386867557 832553469 175038439 889191095 253196453 789952327 359313420 713188381 374998185 956975877 172858379 332427193 66272510 376067411 751571811 781742127 340474553 781949105 629124192 829574334 455277835 670299266 581989808 911082084 354785756 809658303 436553697 876894231 777838791 873753934 144430511 733762469 211859789 464480115 124296527 362871044 222939484 225824055 133272573 812016853 585191653 906374502 645759113 930545465 535499123 569633334 576375254 576692160 221141191 309324301 559443285 776410351 663854386 855405552 566623144 838376804 56223730 329852578 182986782 468413910 27582677 246279951 649903169 896733478 55920219 769226262 460813395 696073064 379165980 576708912 121219666 242856943 208856749 844494511 822866871 979402701 614096322 946917609 293880369 582019297 862009941 997771364 733031086 846297868 961505316 977618966 928319593 988858956 270297703 449673131 790842249 961724444 119558104 273017638 576089396 885889098 983211688 997767280 203738922 688101717 530586569 985036057 147753290 435494787 732749032 850971833 385620038 497585564 401647976 661109032 536390022 718746020 154451089 968766726 208477438 455659453 52083965 233062703 659444443 901912823 265702096 789074726 240304888 657852510 991298877 992943716 428307086 851384485 658882411 688282389 71222483 182749559 426493050 461953466 857267263 880571320 153258732 165134964 94669669 709401122 589589398 955279628 120967646 129261614 984208601 986550928 472801562 908160192 807078485 931143667 749082007 939006873 691674504 735070467 677362058 907977994 869096623 953708497 164853127 744512167 127945929 197605310 262091488 472266227 330244097 773773840 905985721 916890541 522778860 784075075 239390504 760062575 566948542 924842444 705751769 872796739 818825579 845804443 499628532 885938734 32086601 115283479 627252211 972449620 157675214 616556853 361992723 612427265 430604148 976721500 910996901 991039769 141819951 244759543 464320703 971259367 744290885 860306493 715444387 866770684 628871127 812604166 542266533 545974492 832614898 908027295 850350854 862095476 487264760 556883119 981745099 995936313 938026751 976258839 802312248 924153485 369868322 382968857 918372501 926499602 142813034 508573907 84403025 858922293 144477067 967300796 422998179 972217781 126473364 268445005 403898085 901497606 209808434 530226170 823163 2185514 862585515 948811064 374580307 430916430 828964096 974410240 475341562 842299334 679759629 701328398 491726463 975486673 453030240 476908123 382342865 855857232 7929267 470984408 171906432 693345939 651771199 939416669 897811433 950164326 717441853 721958042 956382664 978755764 675425184 766603904 826664874 834833877 325960594 391386577 726319786 825211366 513890 332838495 182443477 733635686 307408305 394967764 4718246 573549658 59721535 624856777 803988209 978191277 417033330 543069138 454710491 479938366 87863698 739954907 925611127 969820245 783767286 822835803 895312369 976325560 353372410 430928087 990882849 999840235 857875747 891419983 648242901 653162768 152448350 425134652 275116163 490143987 635546450 788227823 257483561 541849828 20490529 31727656 946792176 979116466 387007589 731970224 438266258 480042704 620750582 628052452 924765513 956701139 990529616 998922744 600258761 703678598 55891331 229310647 931755573 993608160 719058225 965487536 838279830 869089784 723459529 910764400 526035408 723110759 288121997 595652969 113174309 742019314 880914538 911161988 386718703 941532103 426837188 951420428 325679856 462784967 831432137 839819365 652732289 769904895 582326446 790457497 362978584 817507613 457748328 786035856 397575485 556916623 121769043 583492275 280347844 959314100 210682298 502401063 783761329 892887503 815949818 881441752 408806510 657577559 717733590 863306355 910567553 915928099 694010273 725779536 602404179 915238285 291739483 570650278 50587271 946704182 895242785 938685605 844412103 928839698 286906382 632872809 584153374 777004186 257354228 866366641 324761826 974418916 999894779 999922224 443781133 486280743 945623891 981656646 371721631 664895951 588742629 631044650 833422274 933738246 467933460 890535131 574726450 714081003 892739601 962030657 974688998 993164474 969310845 985841309 112492794 173283530 155616168 747039571 611351933 732719248 262247162 557626469 936518786 947447993 868529275 878498289 25175525 732262445 454451105 643430263 414266397 618603211 468837884 814167747 804250204 924460680 900726244 936579072 9525406 410146894 419073204 672683866 210947259 345255303 345395153 758906574 9906764 691571640 772737403 907354490 806693333 901302792 364927723 401152369 888393450 934756027 748890862 956615680 382646157 968195361 736482486 895002515 157562237 310155652 166489858 699224905 459391434 908596902 246649811 903933436 860790679 913898233 136905661 736798157 758573856 812655390 643554399 867343318 310155338 975073573 72128607 694729346 719753113 889201206 202827805 807586380 890633105 908797420 998742699 999093073 354617556 467235051 504692354 853905247 87009993 615698937 692014700 859788017 542119049 801975882 181840746 371242709 670269738 763113841 927944052 934565030 814707379 986281214 618855837 994836691 247519452 850775528 695137032 955960559 480578049 744022085 176080195 375303415 681565869 717175330 539042689 958293178 134145398 833408954 349495686 599762109 111471789 921632543 26502731 296857095 747284756 925825848 904113326 955737022 19561416 454612547 825012728 855757710 108870433 849783601 375858213 655740134 677545914 757067362 926093168 977910215 924999287 978815764 4503362 267417438 482573778 716088071 357954751 545106919 971860715 974645915 156922969 189369594 445735126 469687197 624917559 753527523 393648612 691384759 916274541 947022785 549957256 552854612 326401857 552121325 586809572 791636252 557796893 796502638 146368159 631499659 605288673 841101579 841230411 919535534 760014151 961674383 482686471 669534711 187281400 527799027 785297620 839318227 28506368 35133595 183186115 191172759 892323438 961946124 235798684 324792998 194124480 845700242 152140 167365674 393394162 575679922 504735484 830264887 796845849 972761783 265446741 516949792 669566378 792798861 53935558 503185159 541976710 851179567 349045700 765195357 347663095 957883760 909021009 941543723 819791801 896046940 47117873 912721364 443381827 629459155 24323124 904386827 672581383 818925409 614753311 931088394 858987038 943041891 237793048 448862587 3937291 533749452 873583724 925891475 965181374 988734508 312691343 741366431 918107591 953622698 772768231 929646310 836848136 842966619 328293684 499845731 348606776 350822268 281484363 397001492 29399153 628555755 898495595 978859446 643422559 937515264 750067929 825465710 213111040 895954642 101039181 295701745 472206487 532646017 287002318 638146534 497594503 545084603 360000667 402933595 140367604 666270121 992823495 993344483 114217119 899316645 389084708 530764402 464609168 597224184 49012125 723521610 422013465 904870232 230152761 354066904 447210662 512411995 378836886 947646456 950676657 981507302 967596549 986892004 630116861 937896741 935109677 976627515 557299391 934001098 305712346 856193550 904364231 960984717 653796019 930523706 55107960 359064937 355810034 631054932 472079699 519656513 386480847 722069193 802730228 837923610 655501034 683339009 591867862 869745013 780990802 865395171 233484511 449374572 628629398 664953757 96722631 702376206 532260915 789993807 452522700 874456113 535593555 896262801 51433836 483019463 426423171 591506318 462829413 989583631 655962612 741170918 400936203 496338899 817196180 860088497 54139617 683816855 683639295 722258943 939021041 979960868 27166321 856754800 214154251 298960276 200532858 542104915 201294761 939074423 842005796 955326500 257025169 325598750 421351442 603193886 194015205 631073023 965278159 974049098 694609075 857285203 334196154 998912644 791001320 988368313 793602424 958338381 397572899 534641549 809066613 997311874 781457236 914831233 470928374 677762222 660981920 697080067 846669794 849759014 689639340 890639995 139685373 537162377 247576036 751741664 42932960 825966715 387484163 891888371 563304159 788984397 664914947 769813480 600653704 611899408 819026459 886355394 606633412 797785713 175313437 605622254 607821681 916307075 295523842 940893434 83593464 99739908 488023153 704037678 375425906 797136621 16359040 616028103 898976811 974169182 207930831 465917073 658943522 948777495 206224674 745578457 225424057 698051554 828211652 876006668 35795712 605806383 903295996 943846553 434256822 514358570 661299672 698867229 982381017 998824972 793321560 972006702 735742594 880245069 275923299 470806699 384573512 462103747 447795611 456140724 191973122 431801507 689654810 958833110 675829293 820658202 487597369 586396352 338169397 418451538 643985136 848181513 568193770 980762703 97466507 558858132 80611024 521603691 235387584 381287474 558934356 974311889 797303180 918811203 503833134 948108555 463795978 826061023 215633841 275180942 640577699 900378069 533934060 984470083 782696122 790160426 615394989 947813714 710568651 897058137 49000501 114718680 693054037 737931046 568835656 874359007 659617015 954494309 793378363 840262167 899369056 993855602 21903382 113328343 622745648 667926002 287179489 750808242 467265949 960949535 676734870 874910380 914682507 991349453 350949582 884505271 456344482 951401642 8006488 795269494 665608056 806308039 44517284 313559897 777636523 876285194 458875494 530212392 10066543 907364709 270415221 676839173 259111241 480255887 764967329 934113739 693077158 964120712 404331376 931345465 1812922 394362775 473499599 510340126 613248573 846147506 177427368 253205274 594616489 965309378 321965536 756365596 31252084 618614413 370260398 972758687 891638877 952849300 949506884 971291081 84030067 320440299 550691397 868898752 664010578 723058357 474883126 974000709 866428347 940918606 569499805 947359518 70448315 132627818 563219119 910500447 716772884 923404076 358242586 496891083 19950299 657616234 621037163 972109172 381634535 410887581 608914560 831398996 427324294 899215129 419093747 613768407 351719893 884639927 797216631 886410202 730113598 770402502 814127336 870969037 905596443 917711534 171796985 709904263 329192507 402947415 367186197 556575053 217853747 646610608 610351749 822261431 305325943 871729221 451121796 908885398 125455208 954066918 564362573 961476339 732770615 761081137 506134900 923236190 210508722 662818862 405908501 729821795 721424619 805125707 388055599 750726531 301320777 817593348 625107875 642437621 730526741 974462778 830216204 974798251 654954057 891261984 690746743 897295929 549457492 648855778 146478657 907038194 42349513 781362978 277206063 380568036 721029261 753645838 356707496 613832976 399620089 730566865 754508020 914464170 186514452 693859988 844399225 928431856 59122267 273743819 22277772 25113854 45170839 416568431 612700972 700758918 181409894 634897184 418332094 733854143 425981550 575520103 925687696 978329449 331730710 475681361 64693210 951499396 381112109 968020604 241646405 336015796 42437468 419635428 586208366 859298826 246254458 276004163 970055396 997622072 851402205 875572193 379704329 751251764 402860719 818564382 246343725 832543921 649865204 828878366 517688519 947004160 438885526 844489474 134793780 669901625 705946239 770192792 98472084 983621765 271079636 988066619 823013210 976243151 481716498 866441450 638898946 860096804 392679889 849255138 816296107 960955588 832271536 871362718 783961154 999222403 627642282 887174548 629357352 785344478 377936229 485652899 61401093 672934508 872803011 957191170 644283425 648325651 786898240 944782825 568106637 963000467 899221338 982293750 575473769 809190025 987168915 992285147 283581949 305745267 794706725 906764617 999107416 999789083 699448613 842721864 699253359 902065069 684044878 786539233 810295340 975837370 19311020 194764226 469451452 595522629 293678320 876825448 49522773 767972242 561850679 705574602 411012309 834657763 944249936 995216075 72470780 584956445 303533069 826798595 280934019 877786513 156912508 485850677 23593724 552879872 861749976 879458587 419064107 993217235 185989571 207186341 881307755 995565904 492204320 841238621 481487129 614768866 895549084 910550082 362131237 555131690 371660002 961576562 503692578 642714372 979110873 995835638 108270752 572193394 864435219 945775613 607088177 828320812 310759400 558696930 508613824 657797241 483068965 618599684 941307502 955040795 919666976 930995546 593967395 703333240 521416773 865083188 420183346 917776597 439412345 716509451 866067705 932824289 541817421 559697693 112429089 619619138 507703233 984677059 775909137 795519466 693681694 706646837 870474075 948788369 539903996 753310320 263339396 510670229 753540425 953055719 513743394 949899492 997893626 998598299 464356868 915989973 92680522 568612883 121823639 440529596 921824920 937513548 674914769 981024196 841314848 893660951 387435849 416045313 42241459 944485359 874634704 921523092 714016747 899833090 324840137 617625078 163352337 434406553 610592093 751502043 739037345 833415966 912281294 994090508 32280371 521509103 926019391 986214789 5966324 537456330 546114011 547993246 258662366 994363416 248459056 304916605 353836361 512642944 517723158 699588606 746865636 789614871 547600551 789390314 140800418 798493782 974337200 995469267 584347532 928950747 412000080 454314543 834086638 945365905 589959610 715725331 841777229 851001580 884482424 908883016 920671848 943542981 913907745 993154810 106930214 389054764 323441764 960176716 397760394 646693930 113796133 833780408 40931772 41715581 984294631 984726598 949946172 983101255 720661102 996075720 840852043 849293989 486502689 871907505 434106663 801202127 298779159 669456801 610072090 976454429 286949638 438970968 441758919 633981347 404417478 822167352 520706123 841207085 16374526 273215313 539361038 703638644 142609060 602060896 222749508 510860874 466190365 541761536 503970337 669967553 346628916 406970422 526872522 691090492 645293823 949898017 292793785 878770976 817608105 940541422 810685592 865649569 205113091 909327170 888927155 911040243 636672733 905600380 212775006 792214328 107187242 229112387 735295676 956414779 346504227 557397122 980629455 987388641 116314848 267191080 103416425 981722989 297055478 550874673 832927508 949332639 908806848 957510134 789637613 851093398 894300163 987204995 799861307 966995154 480408091 629002977 59205971 703838766 660761372 955867594 51701656 57577941 329986707 890117120 162054037 288686655 480832805 880389282 992204587 997340495 86123001 491857694 372142457 375327348 78874463 146767709 794694445 983255736 647966297 788482999 101372754 644750655 562641643 949223187 433329112 862497281 783630729 942625491 412614306 622919272 349677191 361579696 584963669 985710850 505049805 648127985 796044941 964365458 904714527 998981241 665005189 884616267 477307972 814793134 143215138 966053360 930279367 973301043 545780519 930295528 388821837 813153011 198672946 541117137 754556679 878114058 399127375 454184879 652899485 791305091 658843153 807257520 430115113 552230370 193057306 478772294 106299585 776770083 270723815 357441461 249119435 343430059 714510292 735441993 262358075 857476414 295427472 536530540 26877501 282475355 337152844 690543385 838814157 946253360 628320141 814789036 573307043 927532492 148987416 741035384 591763923 856305054 498464443 688741709 502540783 832266246 617717841 619374888 516252372 923901954 477273581 685668005 482789316 778475746 787584044 880105893 175920329 322954532 361685467 398011660 633747772 799945357 110466470 285198655 964650819 967202037 880928511 932354211 544505887 730179175 170470177 705663040 701938837 968598515 629643571 729334503 489642767 877725459 907313340 949281013 477422989 707712236 856385816 876938793 985222235 997716496 573248874 809765241 733564945 865778009 432553467 798152602 141887629 445362569 504517823 689801056 313904157 628218999 453264612 483467219 942988399 970325495 134433297 699193109 577720538 931027693 927199521 956474485 185285056 973871516 499393695 726107370 450708541 652333989 176126256 337341361 841666963 904790000 407144096 844503690 636740215 967906623 803795354 896190419 654048260 947228486 786562715 918956230 415556350 430627621 760770487 993286118 486289661 832712887 343669064 528134705 550874645 797935219 364652492 553056755 766618494 970926688 330370766 804259197 225321061 239516375 621244573 812987811 178612798 416202547 137271469 449738976 677867134 955298226 239998877 873575145 403728104 833551632 89475817 624033613 230700256 625810019 936330457 958724509 793913301 906325160 251772364 950288875 627289855 856530194 329873261 486292380 597353889 634890925 36170237 733660061 963249560 964674578 449385937 489349184 977954581 980556767 638308658 917793836 319970685 851101365 710628031 888667741 48108947 815190134 783675806 933897047 145680731 169601942 17988068 370964480 316065763 535447553 239514766 924966165 983496031 989832980 587814880 851697817 370760806 405866060 380221980 534737070 809607448 966315313 831416187 980078329 194893507 649954421 98785560 978568513 748672539 842496113 532101179 684003784 795219217 917761470 248189531 510928771 6908649 447788094 169847855 635477197 108966870 689472735 799253793 957907055 549523263 564301646 462102061 917983638 265165289 749257672 399851445 580400930 379039677 688221829 742154225 989934971 888009978 907239181 17556320 200084761 894111858 999203396 173188453 987007793 462779306 998322803 478067228 829902225 47984861 839165493 431393263 493620955 649252059 808619394 989919345 998604212 105273837 704801808 561963607 963293631 184848426 672241080 914388713 983857978 134168687 478786052 582048751 921187417 451165712 467097768 215126159 407168199 881515493 905083805 353803961 814651091 296207263 310299221 321363714 956337938 29714521 63015574 739987415 797661874 704896274 725117322 837079325 859786196 778269714 805482668 436248603 943137651 219167936 655669094 942212174 960358884 445335330 673156258 872761290 899292481 728901780 852498268 881187040 927040649 63707971 953401899 776917973 916821512 493918937 577942053 932858253 939227840 51781369 920797464 45267282 76674439 619556784 688216281 515907280 920045346 552958755 696084454 613390428 924901427 442631445 714753942 653884732 995699091 21399547 133729290 545445985 604340550 832923047 845427266 271310581 585943109 847442159 983147810 372800558 464545610 38921814 204919274 279382348 747643262 964662652 969684257 70988620 940715801 448029623 512874287 848175768 960043721 818396891 898002458 577652336 906504003 130056682 807174915 641224485 865365087 533818434 617760556 555389531 618262573 71749768 78301951 740445715 996112421 146714628 419344646 581767792 882488767 666492338 792422001 419491357 987081163 909345081 913927474 350168853 987026327 190765461 805926824 569062079 819076872 275836763 889799425 923029431 925559906 233692382 242136734 597087542 646055892 381914122 490447528 964246550 993604239 539353136 718074415 553789743 772095181 86589236 816952572 135970203 492231904 277796081 904948806 166139269 169470257 639232861 982591192 232041223 318711546 959307923 989745142 725994452 779743930 411291082 730661834 587081125 631312960 127145819 625931181 879932550 976541973 857794119 902984326 675126904 751521298 216008946 493230706 805281856 934000318 264818103 712837539 154148786 301466125 114324591 650158088 457975641 548301352 446266401 804690489 6979792 56937921 646818429 972094104 233921523 864402217 420184090 816589559 323541175 361796914 368053068 775927394 364140793 776360488 508871639 883227351 989950480 991991582 793248900 917852991 499895314 561294287 370142437 547903172 730285133 902986873 799613439 935249911 528665957 946087464 546053800 586060750 836017547 930678004 417716775 787055576 465416953 902294209 803313472 849835744 221598281 367165927 511665670 887819871 556863554 934838178 427551734 522831406 344309742 761141959 670170700 828937822 955441933 972269990 866481914 971250179 225367636 847183238 659116533 897335561 508962666 981419383 119347190 265156624 890614436 958854476 566071271 979522772 946889339 970806448 161784703 386787013 934588445 942457542 266093780 958220062 524447484 723832670 903544354 984515025 129378228 979813677 310891897 367227908 963419240 980268590 855417334 993273886 452325094 963795422 415138124 884229587 132305857 658393362 669196857 973061501 626179750 665521714 341597812 478052190 781396565 928871937 659848317 804458723 386563102 563140690 551888731 877318431 827161619 969230305 905641599 969511469 856148041 970057039 7140192 533193516 915839753 952536075 195540018 843836210 514516028 755158921 999163220 999852787 950429537 966185353 312751159 325324742 798288463 972785723 835856649 859906966 971136044 996479076 226860648 634276074 850283979 873470788 683562482 735358245 558064756 907339575 864967300 960711183 931680111 965644840 829553701 906644522 972245734 996086675 365982355 987293059 105050854 652960028 773378593 899733304 52025512 964193519 729810388 890621338 332715574 920435073 525500747 913621825 546742210 870774873 824677685 926876756 567273830 689224383 897460599 966795042 973530714 974360552 848624543 935110935 579466297 858535079 354318651 902282651 899303033 906252839 865618638 879886638 119079945 383282437 479703056 662588102 978421824 983541112 638244299 676222046 594629439 924222252 827556814 837157780 2439688 216995518 426661765 541539356 476551035 831268931 491603011 586051244 44562383 717959356 147118228 647620998 55209780 185197503 84520804 132042395 713255322 987418496 346182000 663565715 570529958 923909014 193940272 259377906 781184928 821204354 61301480 352410730 376076332 894777977 672177253 996036517 748631044 759047420 324678144 811807930 939780976 964138705 546510396 985589078 472335813 638771157 749525770 851657369 160520888 536699423 227236911 836526995 267867434 739951293 19723382 334575406 949214312 964581177 211274231 344945110 523096638 531162952 839207348 919002766 338098546 452619414 524848224 926541892 687589127 901696290 502434592 697021243 954105080 972696573 536305820 630922139 125723478 270306827 258330369 672642527 305071902 710461954 833817961 877263922 589865075 596050867 738114420 752538263 324017593 479948112 538022442 900948113 741305621 769251867 704308474 720405643 229837681 935105494 853357923 968925360 548361637 834735309 268179057 670510014 475751232 933005468 468443018 684026296 979692097 980198779 645057464 876500416 393567423 505663768 733727690 978363762 947537314 974703748 697525909 776995163 286471254 874371121 90371837 866075879 783084095 921435775 965800265 977403258 778624067 968951582 812249843 850820438 119695829 813820557 994740103 999151159 142764178 338954536 908895057 969312671 79822191 937236914 165984445 312427092 194173320 555674182 798947907 868732113 87173094 959803811 217297580 486679088 336032260 382415560 949770128 985152478 739930640 969735074 714839115 939948628 714282368 864971291 621287979 948887799 653101047 828977645 986451909 992872555 129957124 998770659 67366081 619052789 56777603 238838265 913856181 957046080 660982209 680029455 998635272 999211620 460253178 649828672 526064908 941442176 541580258 696457404 51640341 842505782 880912950 950056584 650060459 781452792 159065223 731440771 13002143 257607452 573628987 574452242 373353436 991818457 514305458 676517509 585308338 955509467 409536645 596751601 951116874 959224519 324812346 793017820 45160103 130265432 905256307 983780328 177433623 406782324 708171222 890710581 228797619 470341097 575522844 703272688 853293458 929902237 978863737 988489209 528827784 828339587 244845126 326296897 691554808 889413386 433171300 838347615 977583128 991758402 562484220 730292642 121652880 939060356 837483139 958455393 265765876 902252796 160028110 334568843 317652342 570578761 370325707 637343281 248518546 657164790 966843997 969624284 476779420 689593341 770426195 993263367 861579700 883721775 347994927 429875304 897442088 981374919 345889070 662015458 786184618 896125862 863371665 971610382 153115905 284521798 926052427 945781487 842074170 960310777 768207020 853850158 204757828 235817372 840984426 967415840 931931857 941833926 79132880 904875235 520765630 624872021 375872578 757702704 99997464 518191504 426802893 450264509 723501590 998835359 113229915 597401406 976985644 997589755 216298920 849725540 812655981 933883918 87054653 96004664 223886005 716153766 860601294 947948611 524814316 943367591 403856581 553574947 949931088 999463890 304972659 518847958 911035216 941520697 128713594 526351555 967576407 993575127 846937463 985785601 274928623 590440049 956396010 987254760 793473158 848603165 843543336 996661055 757608331 866162505 281923439 328562900 472278618 900015613 352998849 459623764 494785424 794576623 407617793 829945497 446429518 735712456 616012768 858195456 839643143 998495428 721648994 939256570 231876753 348137960 781508939 911489631 302234651 712749081 443563793 909553926 327351280 471462086 368828994 543770024 793000002 966975336 970355435 995331959 57977714 507900155 753413332 801047145 844544286 882934907 216300684 791713937 971985191 978306123 942963852 952107499 868340503 969252958 568784267 607249569 252923075 795437240 726982866 792147200 70932606 942931673 72104923 936080670 875893139 897430220 290204461 738601575 691301640 824334153 188840259 298798208 466963147 838032242 369260681 548163215 96441920 341905399 193736557 460228170 847547744 872953919 797280397 958717357 328737843 467087332 258530645 899844245 390364015 580302913 988521633 992249554 358375942 434842837 96581997 547710468 439029862 994302819 841492882 857376678 198682369 510308259 125058887 215326775 445118578 581265865 282565606 933397222 317611415 449487755 875351336 934349572 1732203 995945705 785317204 899824864 438543535 464259818 728226305 750537785 215441069 442601983 964126295 965057034 203507773 429023836 986205300 988714316 489002717 695659564 466044132 901416190 411790621 926911202 974424641 974880912 864866181 874717920 164136796 607749021 597426104 750183365 20423379 223775062 953993858 982937873 596710024 755952762 852583184 992123244 328142076 933455842 498604980 698753748 179531837 445631066 149364912 584467178 698644389 739751481 74057225 745164298 793207653 961999521 129360445 649550639 558959255 669820605 904971285 978649092 297325375 859866686 478925554 753939224 936220690 966488205 124113230 240382779 309780685 418802680 103580697 269378286 569172661 966032063 412510102 776295627 801533073 918307477 180882403 365075990 800695015 970190642 350706828 881946257 262657325 574027926 128268533 199764635 475728476 497018735 163613085 537844007 440140009 561096414 798132893 869474005 657798456 978571374 977992733 983806815 715631591 798641532 996746044 996788592 506719627 513604087 635642577 766830844 16527570 562663833 517754830 924011705 262456873 994346805 781085066 833595915 916400785 985771552 70420465 412571423 363389713 384325487 509520289 794431822 298697488 374079651 19226013 64096146 3989637 473142201 826164537 874745087 194869416 555203721 473918668 874407632 499816828 581313823 177875124 448187781 356182288 752465922 593301857 905326722 917185774 937000787 632304835 744209572 287612918 482027904 26596483 187208768 931989772 985614844 60547502 878670581 419952273 957312278 393163831 506806671 910964585 981902361 411722972 784790590 490930529 698013795 765492825 801074828 13865828 286206870 209130237 798088923 824949992 887346796 160594136 388830926 691154235 864993815 383842971 804113654 938410024 950025689 473067600 693641274 688119209 975846495 380079762 668581541 828825862 905043082 996549974 996666345 969269244 980921843 26276254 571154422 57524918 192589773 671225346 857373206 920892164 969875541 451955873 800617554 346101978 953937618 823038943 845758092 336868004 806870451 331929374 944670955 728766636 941650429 831838333 922625152 60409082 795818030 242521837 772845436 235112927 504820722 71388031 194384924 732264705 867228135 28308840 382819878 92007945 478152899 545426293 943025059 845511663 902494652 720543550 862650329 938451612 949909587 392515003 940666484 25279956 608823366 901873319 968155272 122661409 356760788 433117152 653008525 249812296 523008225 826316214 976447949 714949555 783708199 63962484 504959695 413803503 450212178 213378849 330101924 604625462 724671744 973033628 991050862 76027324 994604760 370189672 465550263 54226278 231143562 728470625 743471578 568285366 963598102 734948371 947369037 563684460 827330510 792296690 999703436 742694814 797344842 881869727 981086385 91331463 456489503 548128981 696386410 521485181 919040965 874368937 900326205 684212994 867464598 672144331 883167110 754254413 764062639 449267944 463560644 615390092 917428449 18830532 832426986 472105484 736312802 311553474 640690384 353744228 652131039 512357933 759747105 120784891 906325779 129058538 672161682 727214239 893411771 313874477 772143197 722267117 991100938 804092002 999664612 575347683 607868419 384639375 576615167 142092736 306108756 833560389 929388553 858908871 899715875 571089824 847392646 410786959 976355807 548792134 683458983 159416973 971673083 545251023 837330155 911033826 994855341 849489839 898986932 804752290 928224553 472507632 944693433 156050148 451343065 958553866 991523611 601037811 630326081 864240433 972595675 517119633 559122434 128712605 737266195 460681743 699444522 675084459 875121175 196469617 859118614 199148934 605115616 60447783 534189429 520575813 782767467 897438810 954586940 922930686 924031665 904418421 969420186 20383724 542428197 579650393 926474264 150105712 811144109 799691806 811338769 395125395 834808731 534160738 976172445 612765017 891327515 142010742 810480356 676169932 681381479 203970918 360407584 408795057 660209226 34668013 203586519 975877716 989192701 643790014 923231987 743668406 897491347 439200227 643242605 771143266 835222978 556284538 826163558 242111962 279507216 394276545 410617438 472546367 600050753 141896404 744968733 72546038 221783506 805096144 810874644 735143009 744032647 994349902 998231594 389780487 785911469 50025855 445089693 928651475 972611425 859446903 932312556 989851232 993575330 401916349 862059641 504479065 957553199 511187244 994695887 913332205 918464264 679940211 954566092 534017239 692714629 25468022 899774616 111871342 440841908 547254275 670432706 54683278 821579078 374113237 664861933 102440862 590187541 564667255 728331863 90988449 710657383 378430498 961608904 845884682 891458452 559720560 791360299 188159899 600580401 439992344 477410140 416812908 568766818 435938435 451785662 725820587 880002064 587656491 916665922 759660602 956774122 246191246 416368686 440658163 755899558 948905250 982294696 652262404 830654352 287617475 728125987 864286148 880265824 643036350 958153354 19025805 376143668 415673283 752222734 494081251 811327575 582753718 765790198 331235686 896886645 840317734 928159207 487824459 720583391 835537510 930846973 376393404 767206476 537219460 832557952 785286775 997361194 16521692 743103584 604557593 644478544 408216168 900223032 33619786 383926447 648243348 688329152 221968095 751935494 107813841 775655370 826137046 952023445 622438960 905439391 890416206 923454133 918667989 932724476 216599344 495992465 669113136 795135893 728534059 849694564 727203028 798945207 996367806 999258281 122997165 470645663 362926717 586370433 374746827 656508917 442609228 958960571 320230075 551310004 479780294 636837481 545887044 892523896 234366563 966750743 780785661 934572013 733627402 828320506 192238236 490917337 686725322 689950823 237780285 700150079 431674732 737996620 564730491 658094412 974087870 984438088 478276128 699599008 97123900 712956763 434531899 841224823 950373880 991433167 702832502 964982506 250789429 364299488 484295935 719819891 379232060 960442862 196045825 779977828 922707835 944579487 671060761 914876464 284178419 385541584 458065314 516684507 579700187 633580204 115210896 635001434 298812901 776188797 158118889 395631350 242528571 976690631 974110089 988255968 327051468 449146979 171711411 514266685 10429921 473408348 515337644 634011056 270863727 998806851 711587527 925956079 95648742 229107990 397697851 695167671 843858092 971389969 573293070 749750837 605085930 815762199 108272357 164516796 293008663 862518740 982073762 994446218 259921987 380159990 505949805 931701630 471866611 981983239 391609259 811368188 974734921 998012933 612343024 736385996 862898595 886229785 954354675 974468363 720667788 887469962 255085908 302649043 862489204 886524246 628758305 868076992 701944864 750438771 438999185 466452798 870848938 978052136 913331443 995934972 77457463 859382434 76355953 823822451 880057544 978218514 171229401 792549009 366643431 453418715 809173378 981807124 664121782 919892028 960277950 964065184 144332314 384456012 681980701 947642892 158036958 800455310 728977565 782348272 374665511 563807163 935605836 993399462 599087692 711625678 737057216 810620664 419124303 760272825 568776405 829360567 118327773 653623395 619296106 870323220 771743637 923240431 818237981 858176763 877922311 956797463 842041720 876149787 278272109 365284717 668912683 768661023 341450416 954697067 895573541 981835454 221529062 866030381 57642652 686497794 495299439 886871604 626241957 660885555 679320069 933641416 331823135 349709878 668188029 945228971 751723667 916170080 125182921 420610798 390347517 621777363 758266344 903097783 447791213 999218532 165674303 454992384 433395061 942842360 483062924 722811762 774532975 902499948 278880114 363573984 88735791 471839094 33474186 70794094 157740493 679691950 764365373 971298055 453865814 845131622 854499582 955043312 970664509 984139999 597972957 799894456 922783649 934061008 965072244 975957661 837390726 988983507 287899807 611487006 198148375 793572747 885668655 951558584 710646596 940279979 819461458 889331731 290716367 848780222 306766814 624190647 133482679 459608946 234738827 805264869 36648527 159173361 100041538 705374676 500942343 870808860 40056613 183568733 669259 192135867 727192278 890148629 569564049 686889551 564481379 823796910 515870870 990324129 830372434 910051612 864966775 867280084 746098969 806613967 809528043 884462848 223224735 424982323 647123979 999915347 910550957 915401429 675870508 746154240 736708377 803023090 233784907 780538602 155626746 576840831 626000491 739790867 118701557 658154980 420309420 672594956 634436375 753062039 353855585 676646661 900802255 957502051 332142947 733664145 964608444 993196136 414313543 590338960 155971793 908078139 816360774 965157137 406393969 828713135 168943 633502182 623604064 635786329 79623301 827885826 614376199 754001375 687212383 914908005 11631462 924033360 84818534 711210379 817145003 975369778 917185227 996414514 357859350 803260858 809837895 895166836 282088577 774864550 406602539 905938840 652648786 741355403 251509575 671472646 660662779 853913643 259728598 571146790 979387011 992088898 823185310 952946785 447151774 585182336 328011763 777289171 574252084 617359716 11496059 61047475 330530239 332717496 187106870 503942762 716476168 888713323 926143073 953989016 390700335 913478822 633840889 922892773 580138273 630076271 845507021 926329708 964840854 979928088 617323876 851476669 669935390 908362466 537159387 800563822 655232064 744164173 893590125 993433519 694602515 925096316 751026411 781821964 443073562 688633856 143971396 262309961 884742572 951562855 388275702 906831557 739089086 823612661 134809190 790568092 102700499 579820477 426776355 793441240 483083707 972830866 690566421 756748631 726892374 729895187 461667003 687740887 872058267 889985248 965433976 967898143 916649090 939229567 421199158 911613019 568750626 825324121 817523732 891106412 901134454 935734160 889610720 999510505 144804950 816553302 407440968 580063394 981158104 986750210 190696546 511566752 80611728 796426407 757203415 859854002 872362024 914371991 724780656 965848656 666288508 704817683 155191131 780732928 677718941 756290445 73020469 648913322 442435332 920960850 296834920 740510783 805735663 969487547 685566763 707749470 784971355 997950780 447270348 968081366 300921206 882048893 502987489 621673989 843879934 902146680 663523117 835638570 193405851 600222458 170349882 546742694 307249736 769696456 745075500 880053047 257821549 547437212 332660679 873474292 675398408 954945758 374429068 422108685 313383620 937452055 618604 432177884 500829796 651845758 94807236 766555679 307949653 719012378 443415864 757830501 850928236 995840378 917629759 971839817 709905146 934620873 150879602 737366941 421782867 623224981 83643643 624711385 465457263 949381070 477692513 714614907 6475270 454259974 858638205 861166235 440765218 452777956 426611755 766775378 260158011 270878508 405852491 598834267 667361330 929175063 143076646 750491288 870608851 948179863 229604684 497985431 697690728 854268647 213789058 538670389 433586811 562843653 357994625 627592784 916017242 925119765 507510504 560743126 610022711 640521917 522603603 760759347 460983104 892101698 877783190 968549411 389304472 773094250 679382711 809706194 260974388 337987556 541224661 575934778 613150806 873745693 687252609 958420678 640189573 787772974 952310043 962634304 877966257 971955117 165180197 840018156 816275435 882927226 524206529 870936563 914089053 974247638 329505386 560583341 986259013 994865183 972411812 973127109 181638915 291333488 292897977 841152254 256639466 835694164 174495899 943119514 379789478 631998351 571292949 594607870 211546573 693607819 58823391 609563114 633734251 851212389 801506517 905815198 400970351 461121662 301550549 993505826 686378934 846149788 571748490 759123409 244371143 389555488 212336440 289286319 961696388 991030130 80709516 934294846 433021180 744389885 38319210 489817758 342282593 713790307 996930016 997644346 959659334 966924850 243060792 846231362 499089298 871418589 129818524 645979074 808033500 893805005 304005471 957685714 742664370 976232397 773246579 877590414 852525009 882106636 544393978 721212920 794505496 819444037 918682566 987575844 859750526 969553812 807210223 859794447 149798856 313968860 72176797 451788924 392235874 889597237 220371781 809810816 726095782 794799965 621764050 912763906 385531606 435126110 769689654 817866603 647589948 736242020 955440705 996370190 101034191 931133289 522775901 755345141 840060598 964934883 513914294 655558294 908707037 945502203 94283095 870298762 429600050 934489049 557887385 610731239 730642099 926639124 203364777 890921376 749293916 760746389 533135584 704592708 934188325 939667988 299787080 361278875 486785947 777399750 121610508 974514489 66140001 611357702 471819881 697202868 957725813 990981855 223553850 445767040 983821435 995450076 771453203 958076510 205731739 342051031 392211067 727597743 749302133 960126567 593507387 953343800 302253411 660769029 17959227 153006271 735533006 981711272 337768418 872954615 387756503 814423887 298026723 868087487 197420857 704530219 74696707 580463718 591978124 999873081 446921548 758107161 303100652 972301255 449093735 551379706 525034205 910554825 691401478 953199537 621059786 674627273 216477840 800456131 526361331 561226135 260645626 884369343 402207834 743061572 221639258 493372784 688038434 770180653 127520544 579578694 239366674 384255026 827170812 890895641 184227164 621517915 487077194 912088067 651082304 791162665 277421836 466866856 201959158 737699382 320238425 742372974 265779562 890782507 500961231 568959023 697157037 966642141 162883270 753874037 611404776 812228898 819130501 955454342 851863977 928126953 527191067 931224800 713048032 739616476 932423689 999869834 41546620 815993484 598081532 742920010 33238754 853798517 844885034 890485709 794786182 882116661 246494649 567081505 510651880 978611094 75140707 612726728 792959644 900558407 238607178 397129430 208685538 812908263 400005391 552211977 882207714 989984876 636081602 987114968 413521535 667353758 181215959 934226390 804756480 860396391 146038877 638624248 359057239 633331167 136515821 583696080 298543865 365833028 644188419 993654717 918906299 940552387 215507966 852187968 764760223 982083938 797585883 981462249 125893206 936627251 596136948 813462383 724484529 746499886 321501406 406076650 709933641 731727500 176583564 346308666 195421518 666543081 106545943 860574786 176480791 300583246 342142295 381134221 519744330 616447738 467206202 504152202 849610884 966771737 40093020 597015746 925078874 963507950 544896846 887550220 390252714 658396877 303161859 908640186 982609806 994575803 625623115 835146453 507236167 930542870 815828844 958138121 439828747 638724459 284621939 700565007 564898390 721007356 214801709 607861373 708587872 924182311 319870955 776890543 891461952 903076180 854240524 888353514 9226214 366594168 746890621 900330733 650716701 726110967 3050403 7578729 685892064 835529693 310735760 742401824 120974105 264446534 688888850 887248038 587582186 711729299 161413442 216652204 476411047 701899571 93303097 302980796 618389074 880525289 903816974 975699570 357630648 393904432 187180349 603686917 135144769 966177907 102742798 374651979 343414339 493514393 263234282 577485573 514033893 786347610 747720871 773357157 880684095 936585517 817301698 970128095 251790867 599826311 516870943 634936481 911329573 948443222 360546196 782059955 659620131 776052804 415830524 441100979 307004484 601244624 724047233 752704729 731344319 912694076 902188975 926806311 33131061 726838217 947478242 951952875 340717549 544518330 122824054 449168056 210256129 666487446 583303464 623133524 428582977 609434434 835507557 929584185 753427334 824877752 665845924 889695577 237632871 380062498 585516488 854780380 891307447 910883914 749442393 832166156 3890793 119199055 524801005 861123519 770302024 788366491 835228859 912588303 388968229 726299863 757182956 942311696 951507295 972515639 169234634 261809201 857810536 998558474 506745581 541796207 682257196 941222261 635551656 778755213 582608556 885921789 816177401 838856700 824310706 966414862 278845449 582236207 995204807 999001221 666487400 997566281 863810946 997726651 778067603 792242570 350743235 726514191 407805433 929686449 784105668 909530683 888276099 915401921 651031931 777934242 102985225 586090282 450705429 851141096 421384267 793336513 515785442 656324020 316736201 829906742 652991429 873149118 934058020 956168577 183336888 203332523 916277403 963031267 112137345 150705955 582761531 709776378 496876956 927336456 610957339 931725977 5735043 548727080 289504335 764121357 840601335 995869699 298388439 738902669 422858184 548960183 419332414 738061903 684669627 801811672 807790898 858649621 737894025 871471942 618445278 956795824 331644766 605333570 939572547 975195464 615954002 836393832 488651364 654398307 133452652 803653637 250808192 716367543 142251387 202026303 744624804 809649016 107986903 650771584 220681978 457060657 955075476 978982099 590042397 626484760 125551013 571564437 733985926 978186014 619139213 958625029 653839960 862631226 985302860 997467442 240623503 458294212 873143349 882827228 965317915 987894080 324616578 834723357 35440989 465329484 385267921 821609172 970492079 988376032 228814475 668870069 478572261 872106844 374494468 638731090 265107897 802015226 974984921 987925790 60376915 906330349 992986196 996649910 58432346 382100677 505361346 740653787 942790708 964411266 22321076 908667275 132797309 623564301 31873939 815750468 158174249 753497168 324106211 862800623 673051709 716140181 919029318 989973628 975924270 981815185 417181691 928676560 875105983 925918764 469864669 992366993 421310761 526715325 805421995 962010262 324060666 868537937 447141773 475706865 663499809 817014038 983774653 988879994 388897450 604469555 386761450 742830935 903993894 978742107 26779177 807140092 497079830 908863875 45615391 474875382 88118745 364846581 650984039 728989125 753707862 823938723 844229924 932107284 641044178 964931905 60041187 584694895 767689641 985430032 649872939 662785907 445636203 544946201 589792112 922170396 668280314 788945398 247291740 821298582 121519936 290299409 77850102 414211038 364947892 462026018 661243977 907821791 81323398 997981083 223639136 543455161 80967001 86591935 841125382 879034662 910141295 942057004 972899892 986507132 599400825 929105467 38783680 257426404 931102438 933560393 606786111 729108955 634749956 830524507 365896645 732066271 762426055 803328350 829933751 855401778 895396367 937430478 445119605 657097862 127523254 677139894 261942707 590220918 61030024 94550650 866720712 909760428 163175209 797479733 691456721 903073810 40062217 748732064 491537190 744764088 378555628 384677269 805386372 875003342 850872611 957402608 9416496 274007577 259709661 624667036 212117339 566140670 498935624 681540365 903936640 908677298 177939779 849010622 144985158 466773492 983757923 994288746 446585665 813643837 272129102 487367992 498837240 509945584 755771040 913148582 842575721 866571039 293985989 987586835 946323162 958672538 461899368 704175113 574846659 819095128 243156319 445355612 694800105 821137139 310451443 383924380 394288924 855020968 666712847 680726010 396068508 712442965 88324191 837928117 978508965 992044063 97092064 280178659 288337421 439058174 52168631 720592402 614507428 728195346 33542402 164211243 751631039 782772327 432518639 464059743 39629606 541086156 272950269 302015252 682182775 768416984 720178179 769498481 454335698 648451572 101548628 663357957 485623002 864405942 245292569 653634400 809041046 811535332 25106919 807490753 398158103 538444467 243387799 783444710 668919676 680244408 6023976 526684018 977198870 994718542 526146896 604444714 830197174 877716965 11331519 528423649 334865713 809689507 170891123 698890253 84734484 822426656 131008591 859040227 456780521 742807846 383473864 683033777 894805069 997556965 525954635 561512407 516506649 517842384 332937317 444159438 113983272 553111405 47804873 646412994 661211455 756703269 329461990 684928564 54567940 251633454 28169364 444001499 753594518 808202655 782895382 888268812 765300704 824843049 317816714 400401785 861244356 931513918 529827168 864273163 177445654 566259848 664795657 719391324 108550080 282885280 588058176 744975392 25809565 336297189 947700305 983646596 453804343 620769534 847235707 933618443 855866197 994073580 362128726 527236841 101032595 334575016 506825615 704748858 854007590 974014930 21948688 619171459 453881428 501421768 243790847 559828447 781374363 811717245 595317289 738857500 412122113 983249710 880504283 949882707 998170367 999227303 956855346 982396228 86095110 705889295 356545329 838191993 318073865 755756607 980213556 997229958 724002902 804196770 685515853 744783945 622124729 702100990 224190522 343842103 102719392 794729743 635115867 908359029 769826492 785520381 821242079 899575562 622743734 693053298 630162620 759218422 950712732 998964088 144566748 514484325 474143829 647005690 195541085 920310750 249767765 497656017 686765864 834785732 715494962 792841676 992715026 997936170 854459614 997262155 13782440 585093634 731885209 850867437 787470445 823394697 536790281 574436030 112797822 186621142 570824290 954716435 560751959 917612935 771989842 792740027 200047830 892033040 165899519 212122569 119429320 583379608 868852912 965628118 652202611 652225047 893074428 991420836 152859370 760540015 661427693 666262591 96287046 849894188 277478945 999220846 590001874 677853195 350554284 505928187 219595419 461131358 464555567 848762602 750973041 867243930 63756487 216784205 170402670 658867924 578651058 658865767 185474445 433932373 874266376 959769777 983227842 990838500 902429374 912721676 190183567 797218737 50422380 705571046 83672684 429035866 386922172 601388273 828467872 866897320 382782777 626464330 8274676 364059443 2766984 470732945 438302102 460928916 804311423 956833886 221868438 488884550 621575208 649092811 923139803 923449442 480421905 887020992 256927213 330540113 129457280 300945294 862096672 889894216 324544796 725903174 524184812 674431315 801721124 914733895 888707191 893272075 271353829 687767575 913011266 936597798 459849209 718846616 202023782 974101425 194121432 466812002 652767817 854690425 186829094 242480872 344884149 957048304 297608707 364234628 495317291 525018027 1386977 869686496 939880850 959675583 820772977 831634542 985263121 989806742 611619269 614173825 710760401 744774250 369115685 478839935 366977859 424816902 633873178 962378032 626415510 692208309 754895092 939361124 179287864 272929933 85013451 459772749 462611154 695053042 250480368 900635463 757195133 897667061 315815924 644507732 170050976 837804292 243701232 568001926 302722638 978327537 826002037 937864564 468250973 819246746 169763727 981342964 235144439 241888694 537393476 973683860 708757110 926819752 970276240 983037499 650908508 879109330 733814789 865275695 445835975 648671723 553183399 553618593 609706027 801945771 671877212 709896345 919152012 969578073 243930683 799236531 271354585 776081886 203250447 877545907 182822267 563446792 683776690 798247103 285345098 731743938 233523945 554214066 793271182 963359356 994781382 996630881 63910438 380101144 836606765 950045591 12357908 569291374 571968218 867948495 804477855 886441834 81484007 246484924 8440089 705835308 803112311 886799784 776365485 937519547 787762070 884897486 486134450 851453946 925082780 999347283 365634236 679844194 543043866 993441565 783003170 853054418 190173436 288791312 893335924 921938735 50934916 722694465 969467049 973510125 230707741 427380314 572208245 921223109 279518399 832743941 566655768 847295025 529569940 943007469 280079231 589694868 667373899 756979947 382696680 436138682 647991054 734167979 508195626 651691741 671849792 893866367 759757514 762296053 437745456 886542565 831143756 912952474 908054900 911434513 386976160 570902258 45188772 396467506 828006872 865467503 294086967 946782556 34626431 609392283 649038860 963069447 617408548 659291659 697029348 757469665 128406161 781008561 381051729 419995179 333917709 696664902 310085722 632693641 560226847 568791483 756864989 838452555 113330170 264587733 267919549 430743336 670073210 741079492 260261482 421745391 719511594 807869309 875197471 915639094 174889978 893566431 393742318 546986096 855730629 900234872 546713069 893745858 671891767 990958032 659752156 662609401 131772727 358083165 451496642 484460277 679033414 829369232 806739869 917119636 673375397 991690201 981129093 987853319 13367872 406145101 227852327 402877922 696543547 868778850 965760004 972318168 351991321 993492181 618122691 779831062 84641536 213039980 885696695 935094651 49033674 650013022 390966377 673088215 673830127 874454655 558270688 802014700 226838857 593811635 909425847 912500534 784664413 997526806 212148870 579465480 852878804 893158079 759848603 845006491 420850123 485236723 99292559 643865796 580570363 654566127 13222661 462292324 257179933 605846958 394848593 673645556 201303906 995472607 824644228 863218798 127117319 223552175 386313558 772339308 938689602 989079003 675000639 893563549 822282396 902233608 730905893 847652036 190494568 844392308 293118874 421652756 347063894 608836943 926718399 984184097 442232949 845833892 375996618 562583434 24781646 519240190 553540696 630539511 721926316 994975561 784447142 913605196 409511324 519603700 376232400 627725715 566713183 819518657 996662697 998878436 433012265 878552352 601616892 864609523 379823213 727587279 185483280 948896149 230843359 820683388 996899245 999121624 378110703 801562274 535914046 932196044 85465347 141681471 757891393 924869670 621990567 826703674 528177711 779682003 379116268 501364705 962759098 992444238 705877240 928104743 561074522 590692958 49872614 167767786 450250170 581498905 593833279 898906167 141121997 522400869 840768106 860571008 470035960 905398686 803009061 822267593 838910089 875464305 226203409 509213660 146554284 577914035 350273784 423364740 746591076 887405913 650934446 979900109 491154399 585201879 114438809 965648058 548483209 619698620 401458161 947737665 373168750 782512225 872169077 888410902 784113179 982208207 16412943 481435111 606970189 737847146 250459727 989952640 702769739 903890120 545718640 981732774 333586961 423263407 441850542 939805142 840762307 975346565 681601296 692145661 202401985 792418543 369664512 690880628 679029051 773697154 595629457 957085953 14689458 356966202 122859977 938895496 992626217 993605599 98293471 511392732 904653241 971678132 734303935 911856970 181838894 571602922 831281418 970559516 254724333 965657103 595718829 916277025 185306197 571473510 746270739 926048126 489846091 544255778 481089571 809153774 988719576 990276828 404369977 648174439 172104438 395559774 469162039 967827530 906146181 960897372 249714049 534391454 491666524 912627765 150380855 667315473 556773138 624574947 81555924 877240357 668116202 853659492 2309940 789412924 675483978 894361025 956081726 974859941 243247286 947424725 402613847 757444992 866091508 987502563 71283239 415403159 766415395 812984542 760582215 901392776 516148971 957706788 974064972 974911939 137297535 611465697 822985328 963958858 661848292 780597487 954374373 975912394 938205783 940030532 840951160 930896178 883018068 944437262 939099057 970553310 68258704 420240144 719682847 896711155 954005849 975874941 43557483 579883789 572198428 624081928 888894468 946945527 78248128 584414566 870532550 967495978 777117801 984220236 183970206 393442363 100704233 457775382 478764467 780978474 568247598 886489504 96160069 661996581 544277691 704183051 985109457 999480681 563714494 624345064 109257203 714919844 998660400 998673180 942149774 991386742 292478843 982174905 804339363 856549308 80726596 391133718 23371124 214761230 142128582 598746585 247515139 950044551 551672939 619282437 333557969 912202122 352425671 585780054 106099925 855145085 356246192 822039057 857989117 919593726 161142084 181864017 80920351 177777482 190305132 768684505 589683055 749278578 632255569 980281314 275888566 340516109 857588261 948504280 510943809 751943364 456797152 956210327 211972608 993229887 249737223 985156287 399046629 546097269 751140515 967565302 519162599 853094861 858630513 920752229 188234034 475112589 614724541 720088815 758441019 800116364 697630527 703764622 366484404 560054632 520273082 993111412 676148980 749606319 387295256 496630487 314829093 342823401 739238147 882157396 800062934 994391713 988377287 989051039 679603077 776534172 398711213 911300562 974083519 988054829 804230801 908012306 689899916 795715686 99318667 106485345 230196568 681611948 597013190 764577384 668107068 676759644 36658263 575296832 125004581 928990407 197876163 400086395 684662363 871440441 965429897 968084866 692357747 819393172 296349628 953869317 749101212 814646741 282206447 875571298 889767028 919994075 964843207 983964630 888578122 948182352 417290650 462288680 670766019 723634008 733175552 941333097 316391441 803711864 631077978 899255795 162409587 225766002 860517444 990715826 894986551 945745188 432505314 717577219 969005320 977653454 691748937 872909229 447335938 563369324 343189080 440607962 709726545 966811789 497474644 760615187 803485260 896567121 71104334 586876568 954076794 989708629 791835592 905225629 176917336 764807777 898711318 985572893 727776257 864485466 185810686 779867276 62749677 146015940 162750609 812164289 833213033 932040874 30630407 454647456 82123324 866539422 632878425 868237327 38152498 693640912 99420835 176118888 171461423 264882772 961258655 981095419 931611250 999664363 89194998 119024836 688503033 794976368 538590767 610703605 826085216 920857207 368913997 535256814 72195194 836318105 766066779 987506692 706169968 837725544 422591983 704183330 119935943 246858949 490755129 572434792 369348770 899530282 910209890 957960369 97850252 612212530 56439465 988093584 114061428 414295624 431387095 601717288 819186886 894105246 331230376 914479054 800366968 966911166 995616755 997109297 804904079 904578868 56991842 740151959 764965364 998331590 794020222 902783199 833392785 834031210 842264309 918768027 256703344 688862176 489773510 966124484 212982828 901800009 167295038 507815239 135905509 175003930 378381366 742841006 16138474 127411079 286547435 609946325 973959783 991056423 544820290 684248504 204811742 254613679 787537356 888881077 241203529 549308081 945220185 966950910 886044228 945014195 385489659 949000154 34072000 323902308 606887656 996905770 179529086 258754070 292184518 977333342 994436096 998454361 927343835 934652806 456119206 994828611 331284992 522319690 747418669 925084052 803121419 899019852 787189796 821227870 828087964 998948590 511014659 664063596 686667425 828858951 439007256 566840912 369158476 912182974 788519748 795662255 36748676 101944019 601658121 742945308 226747419 238515146 332472286 410462624 109564614 473002908 125949163 846538561 559061723 687908040 436935925 708624941 310894137 331825812 339492629 835538790 879239265 880968522 195232138 709578243 572440355 801494185 168075328 231040263 191103095 384458180 26234446 314338183 455832008 649844253 356844449 620177769 721327450 939737289 291678845 590582256 260449825 567953178 765560087 977539160 531352577 781671652 64661107 976718023 60371992 939406508 351005342 852414222 157425284 477905759 596048184 679284142 567064420 616645750 355056729 671387445 391618995 835025802 892229230 974561901 264348244 441530783 537457828 839679227 906815349 936697260 800010812 953064732 40319010 516929571 919423420 998205213 429479648 656306888 641771950 691834760 1540135 857510313 470174481 967360310 695762117 718908133 378240673 794115272 955923168 998307649 777108677 940004250 533109472 722477872 692912891 950406393 67215923 516774267 29878812 670070818 158013032 595266169 696861121 993284276 32545533 834345273 171044407 931984136 266486209 796771467 32419508 776138473 233608228 618999596 510278614 929008822 510539713 807208140 500449574 578953675 111661942 644924352 290350602 410097807 876437503 878049527 449574064 696132950 328682326 462880705 630524573 883001702 407295432 459826505 424875216 828781627 854312549 963021814 184582749 804848526 395032689 898922416 677282006 836127640 632784824 914276481 799651516 871837982 610683827 933447261 453777251 674240536 733820693 775770717 715314011 992224844 183215890 394719197 50353148 918389074 357855237 913212225 746010822 884667350 711778412 811868802 491682022 750524194 555843436 981843369 616956538 963136574 968809149 971975145 419147698 953393687 441758339 930203769 585309639 924871218 789343372 799168147 824615783 928500497 301533815 661657692 661726308 749326279 721485441 814236110 409096958 883652936 244730876 701129694 51683313 636790230 208556538 673751203 399741904 477022262 646045350 868086651 928935273 931600095 913495603 978491253 787794725 872395035 822472802 889329733 937045176 961825934 77747798 288576443 578718630 900562133 72051401 89386116 483496248 771106231 16988258 471033846 122583866 268720308 943999793 970654645 364556161 644401341 61760100 538107153 80184835 286508721 290815030 602076718 955998515 956574066 778613394 991046150 116146894 640494768 887849053 895047283 386436051 726194308 904279092 921435633 956054150 960180889 92930904 960868905 925671715 974207194 773929633 783140148 843408562 980019952 15970461 723103573 580761712 627177376 723274037 753959966 14096195 693710175 584616769 759543454 118713015 455398711 792505010 966352544 65313416 327974156 517814313 680366079 99774410 107338666 351117168 443425342 439219575 702027200 31433955 527634138 256294668 486790019 6351586 141479872 340294778 413541699 808857339 924620153 740361322 866350804 808707390 921435180 141780846 862741160 465661654 995585297 135779436 794397276 397391394 744421523 356901550 781796880 414394393 611854790 385462363 474684008 102333973 284608326 764459748 821281914 771319314 984978564 501943134 730644215 190575735 447513244 123657325 927375408 362435575 953978957 391504994 846303492 714753039 861962452 221522435 923847223 307550143 749505848 821562005 913832311 642063872 899784282 909723207 974871585 558242000 917284396 792363606 928317890 965040525 982104893 967487804 982927479 596743380 869629102 130444396 737967385 247372985 579681642 465867596 958287305 809940368 996527793 290603261 745815775 54962812 150593328 666702907 822591839 624313675 887114918 920859926 931586211 448070256 522561977 705710815 903903240 281915136 396766837 359917887 547966016 371238874 951040303 365733742 839845388 724751015 729512433 900550243 983102446 455222187 556883917 87670412 337161135 890720963 997024969 433001829 581988400 808501888 951450559 528473553 918621611 289690000 884506898 724748775 860940092 624757151 859444696 696288540 760028798 574116790 856905972 936982915 985696335 122696494 984835365 615132505 905437045 798475745 834257287 703679428 842053253 34364128 171084627 660738943 789762991 169981492 280943291 357036981 714819471 82763652 407590279 983187809 987184763 582769929 678222112 511690972 764425927 55846950 714175505 397266561 609845091 850554116 953755358 614726044 765802202 419141613 990441264 255676355 896554003 923493044 976195993 808732539 850202177 160129586 565347606 629055679 874195272 453892848 829632305 843584348 921114282 834471859 863128624 442020396 951646196 455731232 952691898 877522597 903107615 349878201 544577578 854626824 861981702 787222356 939804975 347665445 792096836 246820643 793058003 872637173 928391852 442564531 837144186 335578629 826322425 323816294 981496005 585390731 596926944 520805958 882080617 41250626 884676089 646835926 903403504 624490019 942294121 965457852 968417267 594848977 641324645 383236710 978012541 249022235 370764328 656037565 905052170 367425246 460657912 532638931 778436223 570400943 867205451 424178241 924175005 442212846 775824765 885701544 975777633 370652049 862249500 972803227 996287171 394741498 828797597 324743061 394126578 803808990 969467909 602273688 696773728 911277571 921232030 469024271 475928643 884675315 929316151 453303695 906170806 777982481 920678399 294431079 399363467 953646472 955002168 191077233 544544595 949225593 951294168 591550399 627103107 815644452 980962782 667075105 804863650 597762121 883198864 645510787 943757607 351978172 978334939 573867193 782547316 127229002 435088478 132694411 880121982 669197071 824838101 81929642 709581392 542042360 965365967 536862384 816574940 613584802 878666596 421872942 872835905 371464013 859859683 277095610 490685384 133111564 850898064 851881021 892968750 381312896 985781405 795140939 836791130 532631796 779187879 964939660 992431273 440223746 903922710 398525958 710401086 346489399 524281740 943462195 994635997 114308256 256207927 576886008 925535767 190617980 434631761 994882374 996995372 723972554 841293520 277794876 690769649 622756578 705926608 173195815 301426101 444362229 743779447 573249636 843637364 834708450 904933447 159189315 727320148 514379422 800295747 257544339 968487064 304662135 958469841 493376902 789481225 60344940 97092504 964346175 984711975 16376510 376344536 83299571 301244028 996627073 997414171 376779611 535606777 746725845 888425888 429520550 859978534 914827060 971123488 902589739 969195873 394175214 911474690 878581453 930711407 62929718 356868750 169594550 422705049 4099017 873758379 719719944 781247851 103272095 765751401 781060906 940712013 880007974 936001165 164636762 373151046 101725342 817033058 730491264 919907198 377877787 632264013 554564359 734842561 573972569 589285550 651436533 788205967 549883768 643893145 511851373 975475891 5942672 100058683 799538707 911069135 254500679 516105569 730705826 921250485 390678795 926329950 438816757 490971567 358615187 397965840 373994701 529924473 925413880 987264067 903106806 996559248 78753667 287087252 954984806 993915999 282451854 966851015 302540985 688339057 84967483 423889724 214840755 410301832 75157284 931762604 344071868 917455439 947094981 947181112 909666571 979680990 680538034 856008856 329815975 979988008 336572165 816487982 825933807 927771544 770010586 877355084 298435011 985313215 104590052 625082283 541268612 784514125 914602406 951257182 300689952 823180890 653471306 699152891 782226960 899063864 221203 668517102 377453265 804701420 991073657 991561533 854788260 907857079 437644588 808526745 841943002 889593984 272958589 581357282 792679670 890046710 165603148 500792835 991436965 997788829 384894917 388498479 145215348 413953616 115750030 677332511 801822244 838590862 731607606 771458290 352402067 431149974 269808984 836090725 113628548 524846760 421759065 504686389 676503423 760473349 805297498 958808879 281018420 785401543 4614369 533094536 167778337 814815799 829258814 942681247 30143080 57093977 177788664 749148311 246762124 552747373 914658033 949799660 62450684 562521470 160866455 792792546 333746711 537852518 431047587 928348158 160691063 860403775 531312590 741638443 604757311 746981649 813485832 958924418 713155338 732496023 565455578 945100804 254679657 663330154 862014718 866893883 682636931 739630298 519104797 936197298 278287686 447247633 409328446 680059742 746846425 987122338 804282128 922655264 255340990 568872658 630619044 795836554 497091973 748234529 24917578 879703896 738230459 825454781 331909297 845880815 332211435 758314006 307782096 483102579 201196875 739658459 403342841 475588740 293898676 344767090 867660381 896804964 509633939 578790227 401936272 896353111 992489308 994966823 494833069 903680620 811584211 974326978 407229305 847421235 842369223 843081409 697614935 763777244 710588531 818162932 988542758 996972827 532362084 627769054 251879238 366732950 176494076 378850430 41358759 219811540 11126197 807080928 142170849 980024821 189970498 560614865 394558127 546513535 868388746 881937050 108191091 957183948 436060200 931399574 301425326 744327924 967255376 990520358 966058248 992563774 758540975 969331938 960139900 967699769 625158179 756157937 748608847 968875874 652097567 791499984 42606329 403640312 937839858 960741975 593348768 986994801 924450495 938788056 439182524 648140387 537694859 567134829 393568000 607303853 55531297 867773368 805205428 942122846 232187571 799918603 492051586 868221308 692689582 889702573 109168421 932173978 498217482 891840917 49391321 202719446 436172988 726807427 470677158 946520029 921817888 980639911 46342445 424625203 424852652 492265895 980339235 988619938 71743058 831181436 201842380 208122126 933581662 962202767 272766838 423434687 818272873 910907127 917607343 935264832 597779646 659951552 138595731 910865610 112152165 304374414 439350175 630717434 588772077 961681811 36521519 178838458 775116516 921418853 386816151 642246552 786207539 927705281 811988155 875793861 508499228 550766874 325709154 710016721 58634059 984796686 477358960 552380181 72659578 397608593 730491201 886920419 239825130 273781585 22086296 884015834 17602055 225250687 672677711 708224326 232901369 842361896 70328850 665204120 710735456 949218491 751664273 921923179 261109716 538931476 504086122 879563364 735613146 994709007 284433734 954377795 903560611 924292595 505755239 829473629 868285815 936814351 906811994 951021057 418915706 747607364 796080075 935802183 473310055 682537745 585677594 978020263 490592765 584986441 443867263 926509518 319186918 660137213 764593002 975440470 514639267 830536430 516690366 712597397 62453734 631536345 459237106 551514307 293280378 364745651 27662302 862242274 330866996 750570749 257095359 828719174 793049167 960362513 868803786 925082938 429373434 927676401 732185571 983338632 576568972 947977080 703481702 966299427 861290851 892092365 777854588 864868091 400386768 701214229 773760038 847086961 992537597 996848727 158691086 346661901 653245728 971778060 819958032 973633622 487411816 515928400 503865124 928715148 554858906 726458774 338440010 393862388 480367452 708184464 186904549 537893027 837473855 923309736 89536048 501717577 914495496 966763846 813321889 883391431 605798396 944746153 803643102 831298768 183086819 528908037 116612920 808535099 728237889 765929829 251105969 709212519 601245284 713421826 239604875 519183182 784977417 886053009 826006739 882089688 809580065 856910711 656547717 687718954 998876467 999132687 313073510 931427391 206318979 469101319 67344875 536284611 972206638 972932059 897230376 994619715 424174588 667755729 794717564 817973696 781165304 923147859 935856443 967665855 464973198 568986819 936500793 960378640 294534017 793351118 497880545 982163753 110401550 378554317 158029833 234994153 478385264 537103495 529794285 646069957 567605666 885326496 904797861 906509961 693052578 949229824 86169075 637055668 792943925 805238798 29157069 278308974 847325625 930107314 871081247 871851271 142529128 448090080 559662845 904229181 557352767 671067431 437684620 867596180 147752324 891044850 550472717 654195965 533339505 791197955 918575253 994073753 845641094 931242567 44596880 203876307 18117312 221708814 806319082 855439689 358976536 389561979 763072402 770988393 707086862 989149145 173559081 648705459 347471172 838420057 486667425 608979935 635063894 664400305 810948458 851564780 655938904 960786646 896488619 936321531 344673318 795716099 893842795 989469109 383383946 769371846 282673685 532664717 933532227 975391623 933536515 955759824 955501706 989663779 549540983 793887591 596042407 707061323 21521426 88664688 356319391 749924508 122773676 422062423 559972084 775954552 548805387 564357900 49308275 160736097 775510694 803799041 761216443 783335981 900035154 931464805 920324903 924840052 809880110 977175852 951648254 994688939 908643846 997536417 295821574 584939575 113035900 379655838 990417900 997725969 225995598 997794723 824570724 997087318 799934863 939570316 345874921 878468837 351915916 941815218 7511617 955667531 459622957 630088892 398918598 939553369 240796780 848962365 471508973 478956314 927158565 975819747 866456576 937938449 147723871 606059361 877658067 911564286 281392240 730879471 514982508 946224208 288684052 346389976 285127620 784892146 137626857 597748074 136938983 809496822 107158565 429218361 92011165 428911971 559229070 750043219 68998760 410578155 361001900 824334302 742963464 754752651 615762107 718773224 477862161 489845324 482784808 930115349 146457195 721981695 565615934 701117414 523732465 961275236 876751281 910971573 791804294 992556641 479862955 647719106 753825220 778655987 684152918 900340117 63992341 134238742 165502328 795601811 517205710 682457970 265056858 291899092 590420308 780771011 172652060 715860486 55024493 934595488 164005931 979481235 460905623 592404399 718986352 747658223 53465665 559652585 881882725 885680087 35311101 374517381 186562739 414020471 873272601 909473805 508890961 905053789 605973549 621420631 437720442 623965879 496639216 870355858 470967948 841995042 836756698 976629506 833796015 926068371 454069172 962372719 225755560 684655344 893520270 898250251 677275471 739075318 636759325 978693262 550183063 738708282 53275095 507694187 289119683 390960381 38774622 650878242 886516781 904191542 649407114 813672246 217092944 314630475 362200090 853392511 183677613 780767477 996387802 996724730 648578129 878664790 79755736 841229493 741838238 763526828 63810129 958170448 506452546 598975448 75174588 173510398 916258397 977873344 194966743 231162782 764632517 806261374 996296914 998173454 759184645 838640433 602617000 707392726 595873622 842391021 346800508 881104823 861245849 960380198 631496451 768399216 366713551 677786273 701396597 726599995 88174422 458276471 631509612 721205819 765949143 893418388 54256072 154223916 525397625 818220180 290901759 713423263 184123133 700501455 687738225 865113538 991667419 993627709 377028278 378001568 404006794 805956655 361299323 841094634 376439722 774845086 228976952 257447934 3123875 625155387 333037723 464558463 17224214 712807127 386000034 535068975 815718803 966564521 799665661 993954631 294284715 724732470 598314029 760425122 160427989 903969662 530146825 685554029 514635235 577950513 541942278 778659699 993214318 995618241 304740296 400909647 133554495 141627522 161591680 418357732 475782540 527408872 751493380 781849641 569016345 994460593 494686264 997514852 20227626 627983121 770621544 973635404 513990768 784923770 784064381 934918774 295767671 978711103 404220488 851663788 268321430 896198464 440904105 728803981 99853358 161311624 263710410 353848404 875903004 971393630 417413483 966513492 383994323 797872561 657829816 773028144 734027228 921444407 615516323 746752218 603986073 697262441 612204840 664552320 868825624 891764175 353197779 634563254 975191113 992287291 992664278 992792281 304635821 424034714 748053377 941265467 525449366 997264455 826798828 982061384 188628288 850335273 911297878 994899798 484700486 864567271 616481810 691601132 692270696 713925314 724440389 911446606 444101250 881424130 192019604 391137915 701117715 925760888 938459878 955649755 754832750 830720461 386821715 719754311 721619525 965966526 571783541 781731980 488193740 712703968 891437088 898563435 16693151 494770779 558027952 924109190 77518075 868115849 853062639 928727415 620520831 772420952 516606911 592210054 496922299 655140333 725770352 775878090 382893757 899656848 855816828 932067626 448538103 970682452 656919809 683401755 21279668 268253199 954940374 968179136 394290304 791183741 554746948 769300559 327519857 464802153 642750591 770986245 828228227 969960903 272945968 683122116 155273763 372389773 380922293 623683103 544816959 870004576 995836178 997464909 441833769 552146822 798819151 936943764 235110843 814963698 33417584 341375205 52457763 419983786 985697212 993261479 826816990 989195309 401427531 503039341 35259747 972040882 650186601 846691136 919577498 936088093 952115946 983810264 980795661 988470729 472348033 849757729 81321694 864466427 351225190 526421154 997621575 998043920 966754354 991216137 573319105 597067223 365033217 990885783 846825036 891620798 241356411 824147309 464257521 701105123 405929147 988692512 356209892 490586696 402427786 750357594 842585571 950596401 301575882 650783921 704069923 912445323 292950951 915868731 566548010 791167517 954294777 977647489 777327943 966454459 852361780 930063183 365592257 592134186 168703383 557244314 521366768 766474408 460883897 750513828 383974096 768362038 392860462 595893835 362882259 525564039 519548830 882980442 131507450 626834891 514213859 999381292 603820172 868679288 463107307 592185645 305541619 404377254 801081876 847529807 754868367 804887778 233323597 258534665 707589252 831559421 607043553 813279732 226464083 273975011 53207510 734976073 35792399 195848992 787510279 845975064 693405968 957891067 598845226 793178795 899284651 926287425 232106329 361980465 876710710 940834385 774200482 949277959 252170809 294663784 722261108 781759504 702312828 747588378 600593688 946038480 842739294 940025634 944207444 960568879 335585933 590476520 132845676 624502075 237565886 769937435 109933459 367627876 431631475 614992024 186190336 839297772 540408539 598489101 535472748 982906910 970696465 970713883 596064562 744535544 955508364 995878218 955555409 976843592 412353342 563352249 615778060 825634849 701380328 789696474 898971535 947190190 236992496 244346696 40845085 959050599 234699469 435805058 614835535 902003739 277107433 360516426 436030654 454784182 597981378 861813839 925943620 943975623 64718955 665150698 222386759 446639375 25937194 44275046 202051423 865471795 814282532 993347853 702620444 978563644 417723732 445609882 375653650 405060952 653542412 750762681 530184208 817140143 61160909 751230956 858794549 990531973 168869938 791452327 209499013 436946027 789061988 902842854 226540830 380533374 912346421 934888123 798839459 841922410 38616369 880849717 355031053 472997932 168836967 385607922 579113724 672738567 870039854 977328885 506610367 954741708 803570058 982503797 921854292 976307542 324837348 783240606 450944867 477255836 407560846 577938609 229345359 836986434 375908962 595041762 26938877 62504554 806207522 955783396 260153537 742355549 486207378 875396858 117406640 314779085 582657680 737288275 616259365 772529979 346467229 690469215 179709256 236925892 669619219 687763201 496732417 799359133 663435467 815100824 329992082 989073394 885024789 997253773 427727967 456201533 601633095 903345499 606167823 632978660 766628218 826579002 131587097 221346305 817632202 986807242 159140102 484877242 182161444 850948276 849385054 932602894 816285153 920157251 645310378 990158050 150847437 975059827 907039152 951454158 619775816 736317630 783369704 911540621 755406702 941225953 234450934 661551281 319252202 611977652 513763644 794838628 49737480 964322574 990022726 998862320 884995909 967301507 857906565 975062739 179075625 893105170 849250422 915789779 307450663 316467427 288952765 608266810 957084416 997735770 258340566 909860577 683211311 772940338 638418206 746233219 383044645 535029757 372889979 523661805 485105467 502934502 244200642 959569518 19232081 859313486 571211438 818231040 449114818 887387708 58636532 841909950 888852557 978261723 545150421 975137042 999213434 999695626 103684813 855989050 748137167 780573191 636606836 912725413 472203705 783186773 650917936 790472749 354035937 919053369 307351687 922352822 835253342 969550032 391584178 641165966 75605007 280358745 406435872 817800106 538506405 796454589 783990702 897740471 19433356 556090806 922889726 955441730 923274915 997745313 963284123 974337596 600576931 817790446 642015332 848502966 36421863 707981904 359648903 848578581 338822607 411421019 980371509 983304925 140003145 395328222 321763943 661396867 641054781 940885046 288619573 962024148 473150690 863860674 453018700 568795384 771396182 829587112 901482104 929866494 289003134 691979249 269699128 557103287 985754640 989803397 59628596 390094595 441550085 569996310 243981649 997795200 914152552 946940487 329946411 825547106 868249424 935520595 296707693 555583336 781085197 986823885 305323789 799035092 892560623 976188302 279122754 709629220 74220526 851807692 712674122 910890709 835008793 865919562 942000116 980417667 791760536 918117656 718361557 969775360 37372020 841735709 748717323 964674130 723585058 897480713 179861024 596699406 686208792 928083988 629906147 827387759 358997006 955024996 108442217 344192914 746575439 968552441 802675364 911925803 770688716 919062275 602466854 766092942 690881986 822938782 439073592 717964911 551120472 911886262 297363181 578947995 835366618 973461121 918999505 929865529 670675541 700135486 339785305 551755389 50014777 352162216 104103591 233807099 139816827 760848129 693108109 786670823 269672540 568736743 151163116 689061561 918509890 956295588 541030742 762302432 233597118 308167883 218781435 598147534 178849838 288302346 980902101 984180680 301809214 696658347 800766144 974106519 780347625 786447648 555041986 700094291 441605852 523930747 879487362 916905945 709964625 931230359 366395435 951954160 884739486 999088052 169313027 583024517 466440656 774902568 683811889 979953749 993910887 995588087 421207136 860745516 499279665 873336211 880672741 939639663 582360419 983783630 73376899 545521059 424759764 466813458 957676267 967804800 189972380 496430338 344573519 470144696 641966801 747395728 82318110 349764395 513126270 762344300 570914629 621874710 586730393 677167118 986515728 998290621 155343138 781921597 619502619 955562979 835341712 998139863 338433464 742738600 317484608 933457677 533680662 660139481 439906797 455232836 772510952 828967250 420102715 810305009 598882436 633325303 834209229 853595866 779919782 917024554 537343841 661006328 521489254 576226751 212055667 994906474 829135380 868091358 397498250 432736163 629094113 635036947 842888481 999015660 66968975 373901462 204919056 996430473 813085224 988483784 936025833 971204623 251212921 339506020 96826384 152879632 784351649 850886843 410129922 612485220 114453785 432982658 553724877 723948116 673563352 832159752 824974679 860950697 155441701 832691142 799443448 935272603 829423627 913210066 737131677 880146240 690627384 864817952 342361616 844339495 335767672 428588461 897922962 975209238 764005317 834390786 359606607 844600748 378654505 746655601 666739878 826383007 345566806 915055443 193757456 988002907 43176252 622264679 304041649 561671365 431869494 433915405 897708040 985569096 633972653 856640345 597721524 660849455 596305664 978757745 728194989 840272996 667814523 859303908 836290727 999249286 56577784 681012836 622186631 827189814 351322929 394934772 825464259 894651421 652658265 673040957 66674119 439424550 296413579 780464195 165129006 767839868 781438209 989544616 148286537 209388599 835456843 844188251 762116403 793613796 21357651 168591261 721966294 888671514 373168181 376332170 510766448 534583745 396097501 654176812 493458899 525164107 907629482 942275893 112330153 663866129 295107462 807216315 686073268 796012053 818627361 833320890 494167876 597111532 649474934 745302504 557596044 721630918 949916990 999236525 269179036 873007601 521556269 530145309 726326520 979192410 316845564 983049270 3076102 212749612 68106615 915358287 55571007 453684966 345568638 858593754 793141383 964650737 104068278 521414705 625213295 761753666 887877184 974113963 383632101 687075590 616114318 874456148 248826708 643483400 705933416 914992756 773094499 875311610 88058150 972739870 459151675 903285705 189801864 663537745 760772951 791433272 984413864 984787159 95119898 109078093 720075478 837172463 153924184 877059259 930901996 965346164 24049534 239204635 412813445 976368775 223269403 782831590 416864471 428278333 263345944 961211530 711611701 822776145 429531586 781395146 34531891 242375117 536641340 751652561 230345734 480064714 681436634 818347917 160656039 497435953 131674475 318362733 764750885 925359419 442923231 847611170 402238640 756888674 20984278 153290812 317280052 362985121 165627980 730560741 472922575 617819911 553091732 757529787 752216547 871989697 587192447 962481762 306443640 532496581 896256401 945135178 482108324 790516101 7428992 400155073 645091607 842905153 546624733 722896931 807557368 905525681 127062426 700507604 283931123 557917338 534619687 745433131 777004700 962160291 377371209 485157037 527215786 954972084 182206558 737909133 341181031 456095589 996533483 996915878 531419328 628847011 911853365 990447109 883075356 908284596 639839351 668863115 66165297 68471214 448337410 781553968 104828677 982342935 705710890 979720947 58831283 304425093 128523211 434187108 683833455 801009804 810275542 968504279 400416971 544737548 154457358 194100883 903529588 968532317 520825382 926166918 436026908 525101331 74262699 424299595 110196547 704287155 991370248 995693925 304603760 704044817 762236387 858203733 484118608 557968827 244464589 779524531 899234060 917303022 424300345 921873928 398182941 826546616 956455647 988594349 942684305 990225784 888897893 964990521 87694972 890663414 25925024 391428698 491966899 663679104 872435277 955086241 935892231 999090229 115431673 293546075 792879840 927829252 593639909 790768452 464203094 582013432 432579827 963037674 311418600 794253756 67156863 376977795 674403198 881782763 447337043 651402537 889442418 928991186 235927663 902021094 460766452 848432827 507283190 753434761 423225496 651782601 373502920 604246617 17293170 53053935 664822340 806970407 596774235 957494685 691221066 761964117 790080142 914463589 52320274 993131671 624653360 968586416 182644077 991009050 464458435 895692456 108410586 930362916 980054915 987224902 13261106 784657460 332507966 769249107 630923601 657142997 393352321 911657677 334708002 816764317 282354524 811983689 551175033 941494016 92425507 983254069 518136525 546185680 277799061 863559382 119920598 982615177 300619373 922867251 713938207 909163323 919319266 969739816 333111602 894182901 502752701 579123787 968030786 997692432 518425147 851133855 754204679 855651115 898111147 958347370 804556379 954573383 846722628 896311638 637165746 693960910 927168141 998799042 532427640 562109715 832858678 956828177 284279888 338151970 393471992 760426470 222540807 547267438 695541332 819042765 60353133 824461795 784511564 974197831 184647661 489732662 917645145 958238886 595819576 774831808 704476660 877343260 255395768 795481444 698975366 969326332 394968814 462754740 248061472 721875346 417432580 996785642 442949795 748386945 123190847 190158213 727067328 925834214 369706138 586388023 877082052 896373955 162795928 314937853 778450956 781542785 183653929 932244368 446627739 883219199 599072196 794840781 864037341 908637063 296452888 614412078 834446316 851923976 194251921 761203895 347848871 940317758 698705267 700382949 399413054 876719735 902435384 943074255 422558933 797003537 480805903 975177534 244361586 599423546 27093746 500682575 178743240 979690994 293851182 686670200 963384633 984441282 711179718 955553934 317706705 431397173 24482776 997040848 120951880 883417330 303974106 314837833 905010583 912127943 718814778 907773328 62405269 189120286 203202288 405289999 685097061 833107578 17815165 951776144 21901312 238043241 123127857 757525052 579104780 778767033 687497704 814478693 472812963 933216838 717465375 727625732 855637169 911184126 745399807 868403135 78759955 175415242 867675105 975352831 686726125 826627814 746191733 809161647 831438083 876972860 501344596 950146095 593750447 648154088 798582292 990163397 633435227 864622535 197369843 232998978 5260949 842397458 658479897 951693095 690172152 741836005 557460751 798078585 210705927 351189476 830914614 950329197 167379286 876599216 925125091 957155860 45664452 481326393 355568614 492385654 60304173 492731658 680977231 983601554 165602084 466747817 584317509 895036353 846522822 952140451 182336152 219733274 461294908 722133226 51967537 894079311 562197308 951248370 774690719 797941246 175377872 576226675 599263836 929167334 660030982 834167731 587677071 719353720 168415121 827920178 462396373 838670299 770797395 892968674 217792130 853683348 617147647 627311506 610904112 816632519 492676015 929064434 795127003 984220321 379711133 677162804 516568773 835825244 418560326 783663703 19039650 521718336 399645865 594478342 782735185 902026193 803634328 939992741 650676539 654029050 876557565 988611470 414280129 808382424 969933922 990667535 980828374 997010889 532229225 552452515 584591250 790682835 145769585 727729179 938683442 954657827 627755457 890681665 263980513 309036817 816681719 831029433 117730579 524020804 137473582 210379499 315014752 599006504 143956912 731718754 702041275 954489356 410271828 808900665 331838781 476331285 20774688 452984998 885473390 912518747 154150954 302732273 73620447 101891332 143681854 954758252 625481439 750180639 738071474 836519585 696533134 908507481 827141805 874596158 485120464 540477441 105731981 565122078 92464832 405351823 555456178 824569251 582345253 907730471 190066416 577620213 405701228 807015247 685510527 920320177 800754683 968236426 143146167 877772771 900532131 971521610 490103708 523669925 82619091 339345923 328961391 472286707 960844657 973114060 242585923 751825263 314529013 746505191 379472684 694009887 783982424 910290234 476858516 751584729 635347569 746608523 960928503 968846229 5178330 207863520 134465523 741800570 380570501 927427098 798135966 873911681 140695480 223824780 784281651 808327795 868893405 971771829 937512811 959123813 915763483 973029378 602090783 955847742 308492753 508826887 416254374 638796592 971322851 996608723 852705318 992827573 762202024 953887642 949423657 971833794 997043506 998660034 575270319 961126765 867030680 998427976 264216563 656269279 211136534 846560211 394317482 711973769 957239147 994290660 358727236 982112874 43262834 393640806 904634028 955820769 389598881 570600963 623396573 840323268 779083243 918786330 513449076 649566673 134077585 375313085 475474965 698956721 659332439 813819142 166923219 702498875 997019076 997607698 696613265 800398993 505585833 774397896 662255468 845890445 219711857 851975377 833550547 957744850 217714523 870375053 331262637 466034432 752913640 863632390 172260697 821206031 940890695 995854401 544555118 770510785 956245432 998462515 937359367 989241408 616484590 879899460 638670790 693489101 247929069 690579081 162575307 692281916 38106482 345810909 430772625 910084348 423188003 820835493 659973961 867503871 533066494 634738322 445318573 861785606 966057798 988267327 997635517 998672433 658688620 683834208 58007093 947936391 353601026 807646626 849731083 942926740 978649926 985504302 351193345 616607212 72922468 228461263 187447884 694319637 572105320 873272889 527820145 551924631 658732526 842648785 771492755 987012153 81015861 790382737 972658711 980398919 159299280 650072686 216879073 919502686 607642725 645918431 853907402 947923060 958029335 989543362 560858525 610404603 27287506 743309561 499172117 608383137 628481517 721783319 601978161 927635562 580471585 710190625 521161577 878852688 596688350 971077425 451156580 629343609 781313338 946186954 388674842 500798476 436161558 940594034 533933488 952795773 525191420 870355667 750241587 754136738 18978642 87438673 819680343 846641387 310717733 921877190 705016993 756482852 263701220 803142045 306432062 837650061 140499491 532624796 825456391 879081876 217612481 968555427 731840367 950393887 844817121 897272263 787720413 882216650 646381395 651972321 532775934 838365311 835292157 902447779 323704863 649065424 489269366 532416222 683125703 726609530 795996321 811149981 455151011 774824829 274911415 701544657 264795623 465097374 396121317 845812460 348775919 542695532 116385426 153169542 667688969 968406328 737951617 954846502 25454755 380160382 239332501 585157171 130169973 394393235 823323396 952389567 409507003 882574945 519996140 859796266 415495462 496431647 775860521 862310104 162509270 563624465 19636645 980653134 322599291 791504083 874173060 947533498 598763264 646718046 860812353 979817236 53964666 350085930 801344305 816161244 873479506 925615696 610289649 940330635 422236991 467773875 670712281 721397984 426126453 784794549 420744319 771822902 260454829 301892205 582070541 594289682 920616722 948345816 58427750 541219842 156677966 277867993 510111076 590976100 183589780 376184950 986795646 999064593 535157722 714346202 516823491 937496373 327362020 460477808 513472459 815073529 916950211 991556469 482721479 974579538 209483937 434392515 144348211 811493449 809292381 989689377 299574555 948324329 615936312 701120827 365030806 765369335 324795230 436501351 169968999 858685005 450205228 496612368 69140952 866025098 249578250 313127168 87012763 838956978 247114269 432104968 336089090 541794758 360895200 576375788 456739245 722511590 179675140 611836615 520767759 587870762 220003318 695068531 953959707 963094135 624070178 910063618 984277951 987332608 74351080 196392548 628241184 999042648 271984927 332280580 937159845 945777956 301380850 810891431 784486198 982495665 884410852 987228576 500808849 829800541 684671067 860885014 883462997 943021389 710532036 854830949 607964503 885183960 895606528 988205963 447626445 612080500 862774723 965488673 488542464 763272334 300875748 544875670 937288551 991165477 570222304 762649139 254725794 556674699 705743317 996015951 74178485 183041010 901862663 967360119 168620082 336381216 742413429 893214667 35250405 389294942 496053021 551263094 744905954 894917479 657737192 825488293 491340591 568137701 717956469 983728249 661061464 795206654 390816197 979716606 661756985 892602934 279717287 287726511 316821186 815202438 73494341 504553884 75640329 207795654 559093414 561663203 124814991 582734177 348764542 866068314 531578301 667206328 12966106 660678400 247785453 510171629 77052703 133054949 377448934 582070014 315774923 930908557 192710362 263814396 601137502 700595979 350868473 827829558 127943415 644249793 773364024 814436734 407864687 914376593 454088096 648940079 701029450 849041748 782520488 843696224 172077963 750269429 675920107 859275997 920923851 935521792 185732032 225018372 845493042 989808282 479539011 984412332 504742185 648511953 969104846 992854388 584637930 674834192 681914507 698997514 603676285 993625543 508851260 948288409 681730958 974818383 611730397 716611499 339422365 648303079 178164908 206233180 813309511 954796538 938275993 988733803 552724729 581466888 945503992 999440667 216123395 874935103 297371018 819558504 171278281 485223239 152970960 159591210 784730927 917649178 442654504 763523487 663524797 988605160 801129040 893162506 502446210 657575808 291120699 905323575 722302333 991733424 655538520 958444422 738327843 815539085 677183779 721657393 293809419 582553774 755058756 796768978 183215801 637966872 575401257 885620529 806270614 834336501 106387423 792755001 834830043 980222345 392848330 607790108 193968735 307879299 923971546 928017830 851033716 925741022 321399258 786558059 156598412 866306940 820994441 853257162 317247385 945496371 730131644 991167827 859176090 878474634 376722021 517633736 774115560 933577611 681582383 761589151 896309226 976316060 753447246 987689353 734027173 913621128 936554439 975532794 733585504 848851012 816576138 907514432 972125351 980000076 978210676 995323497 33273186 341863796 332226228 738708562 13412552 322141938 612847423 762033836 21315080 586489891 267055333 385184190 586555764 950573528 941698927 960010644 762398281 854606047 833162352 933846409 604408926 988910046 863975352 868024364 79540101 292240417 419939375 723165150 40142506 326066672 795461463 820268303 925904747 944046696 969357150 987764809 514253035 680032171 619573737 820926240 100339967 615905601 497086424 805955226 770954291 999775674 501531083 970732545 940699630 942056924 747143223 979030136 502975129 798129112 716883784 793440008 444656668 451801047 250498669 736595906 523618988 756380019 446327762 513532562 853707836 854213860 731864977 952065644 203303776 596819532 338120990 423966752 574043530 689808860 726542223 774274237 48579682 790388243 776519312 834942779 994388678 999982684 241454974 473481425 122148122 486949009 193722107 608046568 309102412 536391618 575587084 611400220 202366507 209500428 735114774 777187575 283665473 313051388 238521827 755132568 708806863 871479941 277305652 947825574 498393766 601148245 699367404 979285580 496154386 888095465 493973625 549920678 788961505 863766168 266901511 986510609 349363418 893619757 984786317 993418972 381821901 407324222 965057795 993333202 861424355 878220444 622704326 801303137 756018583 862801441 371454093 412984457 233352557 620137397 179902404 988663561 922195444 930652760 340297896 382958197 259510744 934335825 324301424 418672264 780041230 993217394 753076493 764053614 758921824 950530898 616893308 773298990 36686023 694788098 919688873 996687674 783103285 825503974 640852694 657821069 645431100 835247771 530060602 893460687 484866560 606080414 767508690 902229212 582157469 719126858 958687824 994935853 728741451 733427143 784932090 855675135 364210781 806337594 615453327 907889700 764405697 997906147 60533328 535145037 582676799 772433889 480154726 871712173 857783954 971107897 367302054 771775981 220707001 624725380 764750631 882157626 939985902 964049221 408322239 693688759 891468673 927678775 865857537 964635035 587110494 810908648 392477073 618791854 255113945 428149129 606659736 702293172 445928970 602205312 553097736 913902516 690345236 973808834 343903892 812041221 709507457 853211868 966993413 970043507 15573480 961103836 226904076 490437506 409589319 918267934 791685041 882059953 348346836 768658873 601675432 617023004 323412398 976678421 279175464 920780961 390794457 972786738 680069573 849783341 786266392 856109128 518046064 945855487 31205916 417132467 866121725 977642893 927741769 983917046 565513105 889224742 42719678 380663751 121690731 574298894 181257865 452490503 433561893 553940621 636461743 849623395 434240699 986077575 252637422 444556275 471495829 472954006 756927039 945745053 101704656 534188092 339061303 631419409 38231372 278273174 727354483 871291617 868866746 918480708 855162584 999683908 739286036 947490503 755585397 767215845 800655117 890355691 387980528 582663606 804752262 851539598 908125549 917567621 966610162 976704861 523455277 802970482 469822706 881094129 240320634 979894004 798579934 970682419 749733974 842606713 887770329 915270712 906210491 963677454 816760035 824202038 893479605 919903262 251632684 500875427 781262586 960277518 377069790 596562354 758118226 909056818 298517828 728942053 865445051 929029407 166933698 260275873 877898146 926835894 902265390 973019792 829476806 855468733 363956786 386599814 797323648 815228289 687527311 714074025 928048116 964945147 728765070 910460970 533820164 825181907 420262915 552702827 552491942 728366556 971156948 979617354 133936606 807470201 109053892 284387801 70077103 948437369 380516288 640794754 889721268 917145638 406437272 636200444 541846989 866366654 428207416 690926897 931246104 994899059 798050892 810338999 649805692 751428990 558293702 558569498 834656266 943744902 280572937 671559757 938224018 997562961 224048976 717358916 565385118 655014487 447255803 846540432 997035694 998858360 616420314 685467439 781034079 864873216 120199176 177638514 484553168 598436976 105870170 199669269 623273423 834005596 165823011 578829226 217994655 390730614 686335400 885633438 408249618 734179617 931241260 937949934 789329249 891435542 372902677 917639725 845697800 999732228 411989577 849248818 719523598 749392549 169323447 885834439 268643512 318402240 602919824 874722718 711587582 985025635 531014398 560617806 691625054 958230033 782726006 932497598 942972017 989215605 443351844 812558173 155971932 369195293 172351316 946679755 890515081 903103932 571495855 922732426 976328317 995541618 69632389 893674893 1639663 516101837 163174942 349810482 556534452 904786651 780651187 971745711 170911300 752788884 789966166 820391716 906109290 917086580 745653813 848871054 865302872 904274118 232213764 848152288 670776766 841148510 344576577 955072423 455834597 717882879 91804085 349002660 98764943 400404107 55550440 470925017 93413196 506966007 221654162 616156396 533172857 687602512 769005426 999292119 810982362 937653819 385848858 546138849 328712351 698064006 655732437 978878420 275952810 292426180 105045160 129686252 326410301 515620513 327104147 347142130 759819784 860282479 169550995 765621316 145695131 478669510 94076121 104791866 814956269 937127931 224661864 273036620 10695541 940265724 906913264 913576695 39123556 198765818 891593978 914225469 554112374 626381452 895794165 959525301 742529470 821724231 414973883 953979321 558784881 584460477 954789088 974952371 856040696 929821463 774302585 853847822 866123452 933371426 254083419 340260151 64550513 893392900 346081788 468842890 445946641 587015538 780589826 967515922 250847102 318259005 888542545 925899286 62479755 448710594 55829150 183868069 759825593 812198670 212906719 382237738 510460332 848012859 376781644 841851933 185906618 562361312 489202397 585909475 670988203 867087056 103238360 686866106 426904858 723570245 713337369 915308266 138463669 833849507 683582201 837667613 717776038 892016928 757780524 774354825 149647524 402447000 33984692 191723730 981052048 988518015 932360252 965133081 605734277 768389970 961746909 984534917 797576289 974641151 170829811 806626104 621422847 923100184 695248123 929889627 452953878 511739043 562260771 575948782 649591329 900947577 221353245 824252740 279810209 942456144 580739434 855134074 280669305 826292670 448088519 581706805 427370140 949643120 921100714 993457176 486990750 878201656 806861944 843334766 849195697 917122911 608487346 954185699 40746270 963053272 455311271 528106103 523383678 775775112 776746728 964219267 514502907 528895786 854968507 883147124 791364717 809222090 779484050 807087704 282642556 543219388 723391657 966967028 343044612 759755916 488796908 921325926 135174185 436930878 42723663 788252920 863359115 962405919 237366467 820636115 843605759 957099674 936074455 959810399 27929067 408202031 710852642 712008872 91442825 198589218 999611101 999942603 242721153 413937883 606371610 642553178 45894993 573940928 158805981 778797563 772856876 826974686 275651627 877833544 842131748 949048745 365170144 753270689 22447875 860981068 316169787 853254674 230313751 562599120 315752843 999227743 644224997 964610115 84064684 580547218 404749732 672048347 146446448 374629159 860113956 863432791 368261074 847200120 224374954 686532481 759271991 954411154 82685368 772317023 518762951 996406619 545209574 671469621 255106359 744671579 596914633 946415587 942934727 992135799 63077551 86847987 525545351 870186967 723841485 747729728 352864563 476448942 699564773 827045128 225749358 565280364 934876453 938191797 27213138 920429272 298360501 332410525 946884321 973120291 887356639 912559217 630086327 937452423 202740810 511795669 132058239 196611419 12381706 790080095 51257702 543248630 254255465 910900737 991873192 997432636 697889289 710491388 593761649 779892716 744585047 914925996 583853797 807232009 20171341 170908709 482321689 990994570 874176326 921588310 14020138 993045080 528909055 977690597 851445410 881783342 419409990 779820422 950482572 999635025 984990194 987212905 944029356 995767841 105882974 123046622 111709357 516126620 719841085 967616676 103987444 952988386 55266382 143332248 230349820 532731627 601775668 927013377 865990184 992249970 634762893 636681600 365563884 511767790 136796966 763095217 366527741 544734985 860375279 907028072 885870492 999152896 503594100 652676032 681497496 920575977 762139829 808737667 282530653 313601962 429194680 929211894 787706876 976656330 593522496 720833547 946648628 991011812 805301271 901715186 972822080 995580994 159492767 336123388 967640213 973721042 115853394 957582283 525926832 716543136 550116719 743632642 849413464 965523207 855523771 909049664 282430302 620757900 573653117 753953371 214519326 233221766 513664268 552804079 136685325 141407080 142759601 952283171 432845086 600398533 546750202 560256832 67480766 831100850 165193276 601179230 371346346 648470718 392446764 575173500 637504000 835262032 835559662 874217814 471085287 981159474 55475400 742027144 734017161 985221171 167895623 241844728 151050344 177125808 347631972 640433493 538765707 951376125 397418983 707677949 960414489 964829314 324987459 548647485 74875156 103474875 352715945 577538214 477716971 672699097 64615272 499338786 540151431 866991270 937087652 997638823 255217791 494815394 372069335 810297500 702510042 726465761 776671479 929452060 961499122 971474587 337238910 889154431 326036312 436927664 553959293 773534679 506696435 810644005 271687726 757446341 844386855 867307399 198528871 369810148 848284417 876492977 989894981 999033420 369507816 483801516 144932167 747087945 70847211 491113511 963861161 978958987 801396180 989997144 384019979 653612487 765532545 814093210 607193238 626251232 607743664 751100427 365216457 401263087 332750532 615153522 675840041 847854134 895399068 990622323 212508063 496816999 5610981 174768204 636684752 884162926 73034696 747753665 781162672 986287205 563422983 921034306 487755756 539023491 779277056 860376381 703428606 856331638 949753763 984661750 214269163 646015784 500763151 755632398 965675656 969974552 115500878 687204128 582767206 718397221 777882066 925000830 857737914 939837080 797383221 829797299 816598764 855779916 529484295 804452123 423066197 455403842 832325952 884916334 342023119 862147328 674323459 697932139 634777078 838669174 910685672 961396506 521609686 967017877 978904709 992541997 750660349 836981073 383278678 689617075 142149562 252950360 713820701 902228038 29543407 636873666 762403695 853594246 64719638 137309586 748741270 757616564 584484147 729549875 351059983 609409554 87442894 154054790 57639753 223611657 192198553 976839664 434868644 786796459 260250389 828437430 513669504 955889769 877599667 947954258 575258284 601523619 581970624 664528923 376898029 419462813 128120246 561365410 602834583 797803370 825717793 919961355 455388470 823783209 878211702 908750089 302265007 474828151 362858812 493752687 73594817 693405555 233585611 637642757 359056361 694415528 151527456 291365510 826084991 860223151 625415826 792323940 98272293 921176966 986750610 989786702 419186404 811873164 260754959 693223993 449113888 667290175 780999200 803042868 899365701 918442547 969824249 996821298 632541920 736651095 242737612 841255155 574712370 775525237 479750812 850567862 556988417 793469140 659086694 844617879 750941849 776103425 814552739 826638224 691089699 708846467 159020820 444172529 107382368 692686861 597002939 722082933 167508576 923416350 546172248 846680653 70636426 594002479 307828385 519763146 542073952 941674966 623006747 995999397 70790034 386957163 670518273 947352878 774311573 880613214 325841794 837248845 231471542 988166498 593524334 755854931 251345906 327460889 299446828 832705418 241258577 340060215 199415711 481252634 859550805 960019996 58764152 526458022 593312757 964881107 636628641 661738506 381628765 939671179 864817860 943805126 582953179 599321239 621329776 703819632 166668713 698793074 261313981 524624101 189384843 308035967 432508371 576295484 604141023 795527581 196495760 680220743 957480183 971017390 704210181 951830040 129373194 299574625 168235532 690928332 479183837 530824163 760818658 942749208 705996279 986032617 197342535 800666471 225549300 271675403 263670141 875825560 293284561 731965003 982637609 996676460 145384553 169034029 176139909 859855161 900844938 923748684 114747541 571038665 176415512 878176945 725047156 903688288 788238788 997645602 952232290 982607255 106706585 144699197 796187361 934181772 11746535 548215266 993006021 995298232 250716811 713981813 522780473 768123444 706339927 960950204 667942635 735918308 616553540 936270813 711750406 804711117 898352292 955000536 823758210 855981571 113801396 889675602 983781553 993762485 204917291 231232794 749736740 755079063 71583778 924501858 806055867 969617860 272878748 858136178 652759226 835454827 995814862 996898382 178573935 925644398 617014984 821645275 520968477 737620793 275257557 933530459 442003072 471779273 888165957 958247251 359148666 419845862 835319473 944002241 725348465 827951080 325770526 849065855 31473527 152213822 717355226 783888839 394139546 519233990 932201804 954432586 45541950 211732879 363341616 517612878 908690600 934096546 819240837 999286326 173700392 755070227 654221799 947551686 925678318 926360851 259996875 910399239 906668441 985285144 855855294 933240319 848565978 916260445 566631799 634013360 800237642 893782156 622045291 693937704 704400041 749000455 623672560 696470678 2120962 982909191 377741402 539629734 152528798 930075182 53250857 458708672 214386730 424031447 669961684 839980520 838745986 942017529 399934518 578326912 98306045 910590522 197191978 805612371 389356452 792825845 666260526 752131343 928922471 986450035 179271900 471905077 902219758 991894059 713543700 927220245 210726910 467728906 923328272 931996180 567028337 855363629 870223833 921751441 258151809 741259512 271352299 836051943 387412303 578973863 445570785 600841175 424320276 496392500 412033688 421109849 296427409 592224454 659986714 915446564 999395059 999675162 821204529 903655849 231742056 656968616 513184844 656914624 354882459 600888134 899514905 904471181 353332562 370073247 888922726 892873652 234204534 496866441 579347507 896490673 709882894 760703661 272168318 453021321 594658700 854505812 465415746 880545056 189088767 320372013 699671255 918402541 757384185 883262554 578340646 606719510 979811707 999958429 890797423 983480387 588286756 916038924 210507575 464916348 981817124 989917537 998220657 998709747 672065917 786494359 166693373 272396228 603721849 971840114 637625385 953932340 9101725 387977740 105834398 776216792 519713598 925209791 745448856 841585762 963886115 965095097 436068690 786227807 593301450 707161375 944520105 995093988 924880403 995583137 429186010 749694325 325482492 901549147 644252184 660288648 994283036 999948006 32126782 397077768 334468733 373708767 613944164 670656436 162740943 315775938 914836018 993234753 364367839 761993665 317050544 339602562 951509579 980249554 501070157 674529347 13725947 666395760 456333227 844063154 808788307 958657507 631629337 966980938 454870105 680861854 645813689 867422827 496546796 970380006 314441850 986295906 742847183 838434171 242421321 332494929 424547569 797214868 532665040 822696962 514290288 754779448 860724230 936465891 827504248 849237649 400489777 444870273 766949796 974951306 296152921 370208817 791068855 903673419 158451970 513130074 369334980 927895071 80290535 255390804 477865631 524726952 613406559 775812984 160025480 688523418 742222900 907476369 780653899 843073784 831643572 915590197 116067010 461651383 641046657 720000944 832452494 931453309 435108762 599245486 475794819 695547403 251674507 290082449 362682652 620472967 395947212 980905920 636915226 969533277 718883519 759917137 916586014 956707332 678828709 883991190 651217709 985729557 260375023 368231449 879753085 962445982 82686005 726820284 303806805 986376609 858458970 863681689 371271851 371356530 934819786 974017087 364106533 658307204 858786455 938135478 598036505 899794619 859352817 903343639 187198205 459905490 410018580 997666672 964084524 966683056 797750995 930862868 457247562 622474364 368901025 702136266 325243073 639980058 483791762 630379832 353540273 584397603 733192693 913918193 772927033 875795952 615978192 698280356 741442161 929148745 330199637 346477511 994339680 998264110 594776124 974764728 108820845 830932847 869480429 886984247 659264588 931370596 905231005 977957157 21290119 703646650 670136986 677610000 626269865 756446018 427623717 472325425 534931853 818714688 534848203 694256696 703637239 840199263 782790023 984683059 857907567 889243428 344521995 637464926 497171614 590497541 180657272 442818819 698896757 955849890 521847105 597191750 109977267 975541697 770394938 936239324 193406071 782200182 827830962 986530658 655051498 997477304 965772258 985706888 302461297 813946216 894591752 907958466 526065800 843977762 343024759 537492670 630467510 837159105 178853712 513214090 284154111 307383825 226573659 908774403 971060400 981006498 774431022 874484984 338246056 773334208 130348631 758840278 2322976 397449591 139523438 983328030 771093847 814926044 744523496 888071137 70854989 992526020 748876068 869288646 981280052 989386776 61531625 252132748 765118839 890727051 139806165 527563413 893351697 964814827 950816717 984195320 673856586 939182555 576643440 927742498 345160172 902764927 868051308 869231415 397574631 510870326 433817248 678246642 694883321 843751671 149967483 993471602 199860773 442903238 155277174 851716930 811749414 975722581 899471881 914144256 562570075 809467700 744173494 971670888 833841302 893615341 442757111 681100079 59634367 975750309 363791143 692321670 77357056 622400613 498836153 595257174 984258973 991399684 830208323 939658835 312512374 929670614 835076257 910146941 916189691 954020362 743716331 971221682 332928945 883449654 263786061 749492662 677448446 845741882 966831141 998742666 427047329 962048989 141551285 908325279 445259050 564719576 133365286 248814036 737383035 970295826 528761543 633245926 769398782 857895250 153913484 392847061 243501703 580893241 571147131 722278005 874399426 952300880 282461564 435294373 428500101 711862483 120473216 709120457 510509020 793799620 369905242 669021379 152455608 778017949 807021885 955673601 206726029 959528635 120998852 578390207 870727398 959436092 877392027 979130915 33483927 725173246 534480987 956418061 492408302 722285105 90655724 403654757 64826038 111248135 289898395 951539425 755781225 794641918 642540575 846242196 238964924 582166078 727871484 860036361 984211573 991592794 695893783 984133972 986350268 996700363 980069345 993425360 46371639 262037629 402784639 630213855 39454622 884220840 42804116 811343730 695787257 984038274 521965202 957421790 992717220 994887021 873581422 942158407 137142438 318987850 968949521 982720331 346246636 669734759 607689854 625043386 253123523 644928747 452258861 953320577 814926862 981585644 198113569 481303563 122847209 295320166 495426851 897900164 953440880 983258578 575586217 797623201 363862981 761482318 350644864 719377002 561769393 965782880 958296509 995802219 533281069 590582320 885036525 969311258 42316520 478737817 203361372 657180439 899413481 982470196 802201545 991478197 342605752 388541589 415761685 766350573 207869065 734528871 598332700 737981161 509736347 894990238 122976714 210815561 21059665 377566029 835716382 958922492 339399746 341379600 355709856 577478273 566028055 757313542 829348876 987946707 645048912 776204562 246124214 783477780 603784014 871213084 815387421 915325205 295589422 829211805 813990286 918164473 355096462 603105019 715501404 728796788 320835729 606274795 566113199 782278583 185784354 807490362 717821556 758455556 918651921 992993232 759732765 840225477 459987708 917157264 756434413 965631569 478847020 581792991 621216234 738256099 451134921 848609170 419040921 509890278 749459061 928967458 913012107 988523320 962618726 970233846 655442165 976750039 216195140 271314435 631116403 715453092 42999712 783797058 603500558 661895197 121980855 166137743 882916008 985855310 532747505 848125818 776809470 979593824 315440171 808930007 58122176 928495086 742880583 867439026 974333920 975880299 714189850 736722500 216147696 973624355 700981083 949868251 315323555 781611089 521412013 696492313 858028132 875855154 491684219 897284356 880755642 963650501 848948562 991682349 281026229 974275090 788556327 911509318 114213790 710984547 312306207 663875185 399157403 585208611 13118084 892419032 101476299 289951374 502502786 721126673 212694709 957256991 976339778 991429344 588656801 876908807 358466076 652196724 137241618 186096977 782188027 855226466 104611793 753569825 379129692 755406617 185163888 191885550 400583401 540468441 899698121 927918765 729102864 937338355 869673251 976131152 835832844 964204285 28281961 399772863 34958597 943745254 963420096 997660459 56257389 324145054 251471422 271932336 125413375 656709353 959331838 975157750 613146520 664269695 233156344 784536968 632356480 986101767 748752417 925579547 143173895 954557099 58932470 561224330 238840142 858708508 804525575 977358723 765439732 939220799 581270028 626540779 155183990 366437388 841287401 863357393 906441038 920662817 444784972 816501661 921667491 947256400 814935953 879863875 49454203 769183073 808798369 964927415 921190113 968347221 410134290 506138239 425610577 517914915 543548155 775256476 281039960 593801154 751681037 827845372 708738458 949525111 299498782 884540766 205700667 586397490 214958046 385220299 149674997 858684291 457947686 796562264 627811098 664515257 617297079 990952813 569707769 975802551 619756341 785468521 697479683 983128003 565663323 777565101 907080752 937510079 477665385 710727561 262361949 768500127 744006964 943110910 197390877 638771252 23294224 573830109 972858612 984408966 142868765 722579093 184328635 960515456 933203567 985981103 619163771 948245286 642609787 802442584 151610349 805985778 583369424 996542570 543134243 987495542 75174835 901676305 322334110 755935538 693254274 879957296 573889581 802787888 813521388 903673599 28033716 363427923 896286339 976160988 814319417 876035541 893461336 938226925 582881182 641821304 306675826 341592730 925434849 974125170 137043257 280859867 134708886 358903508 784390295 814649400 230953694 421870009 198057722 974120143 304445657 329358417 354085091 760202635 957913392 982327357 874935494 889387788 562422944 608187288 370881694 992645570 68281935 189658954 133105727 181014779 593662474 821783552 725978978 839574798 793240843 854068779 427250275 500919354 704889334 875550797 655748414 930599673 382854058 676824291 168260056 229977607 245708983 533798828 630152347 712707315 343562140 524020647 26470919 808630985 188244854 765068663 163400678 279151507 511640357 840285551 402381801 528934882 413696958 502752989 818389156 890193762 859039969 927288665 400612745 771075550 71008553 742805998 117140021 363387092 751176325 975019945 35236273 850092644 50720290 986346685 306240424 640180395 716895082 807217647 85356445 566540778 787669621 961911061 187572196 771259072 725287792 931466125 364144124 789486155 377966350 940371974 118993600 771885745 564747509 753569611 882941567 903565998 172256314 345142075 75930236 370098915 633480901 935111740 410312470 433945834 473993501 935951645 361286235 486605631 862508173 911390229 312160319 600988125 514424764 691331127 306486689 716820813 775100368 965917948 193729831 647929634 903490495 974254640 864101017 868011509 975329522 982235943 846433911 973552588 201444857 555320549 292570753 496531352 742487363 879574339 173356220 300108149 489595068 846281859 518015399 630230605 111676616 649677129 993649778 994532278 542033846 982154404 677739577 915571404 860190427 904969512 515901500 784884231 319542362 962663190 459360962 542098250 819495631 838158371 152393657 631410925 96773244 654917736 998242365 999731961 17364533 855379057 18175001 113217427 556732286 743706114 348119206 749459991 920474004 962411473 470963446 520714637 31876468 847728539 554739594 837840526 605981875 998038137 783455842 896686287 155857821 230455867 21748779 555353450 374855080 555440974 245791251 839580080 421047573 631105963 808754008 961230117 661963800 775270674 534876501 640852166 635859375 813248988 591026753 729042677 353283690 447359967 842792795 954510097 90013162 183336458 198340186 413705635 669698693 689556893 343563502 646983718 432951042 878433305 456791367 584840692 471168769 649291751 569111410 630220093 131828155 180443134 720527132 793327667 140225984 487422310 662385897 811060860 33336899 939139190 740223281 805848022 302917165 434692685 687403549 879438229 464485592 912438096 932046285 999380927 131743602 420495337 665341924 986391075 959152561 994021044 916916860 965235060 434853611 525664636 57178138 493082689 206649541 675566985 610637227 756709744 744792778 947821671 846798739 938641699 468648361 489181045 324434506 489178480 645892691 955903807 102645902 768806952 708218471 780676011 470118234 497545319 74005321 361210049 139300858 220250630 469559633 928070137 662117841 963961556 712918177 978617476 226901281 424312027 528280385 540233233 602498557 849253132 166054989 877790632 792535425 908471988 197553378 280488091 10784427 629492954 154063613 633014809 208311465 989073144 285509257 875058461 80213711 794618255 953518343 992522025 279724814 650574103 586341633 699685537 295978665 513038507 348333208 513287448 136526381 896108475 529925419 974859638 653531788 881609752 444092970 693728506 850036367 905773176 827131261 951023714 101308277 908391754 605878438 972616076 91838020 276532923 936404438 978727760 837554266 923504659 615009503 983342556 460043363 891038998 33899256 767286827 564587772 769108302 162606755 177005249 402078990 907893090 375403579 958268492 919262713 960253337 714767175 870957083 240433243 304633843 135536191 402005636 316198627 372371281 99114798 114627025 429941286 582003000 643256908 990475245 213580053 630183247 66042283 351462773 938265812 986227435 658179324 892799143 818849574 926792021 766527122 991677366 112345668 580879990 88905642 245259728 550127384 766150079 579641729 897198502 432410292 971116200 8384412 276308627 135235762 910941197 674039642 819091281 627230662 829088799 501158907 998086023 361636949 920082840 241457955 338255197 203769418 840885795 121819556 906657582 423662875 699936798 985813663 996323822 38618994 946050522 922727994 997008734 536786876 596486975 291225541 484663282 730632311 956899154 1327552 255030765 211428851 388874491 859036216 986673820 271658444 541602843 172679590 950744439 680929099 835502511 230046322 457537987 649302791 679853957 797412829 923698581 398635682 404056610 987830492 994864566 7174636 103800371 860290408 890412032 346601814 602093453 54053185 264008741 842275026 919704027 312093552 865558078 641377166 939286270 713387214 962113328 229321888 676222036 754597371 801321574 902474677 912862313 646739882 699577960 462774142 891515682 983899445 996186637 717565943 965998467 875179169 925804971 449469759 469933705 389676178 868802174 108171336 269692730 247000665 377162492 622438617 848985541 911966824 919874300 990038085 997844316 848330502 973584282 128427007 744873550 897527803 901997505 462216683 888072594 490813562 776791133 920378278 977807965 964957800 982447667 516521820 681496868 596132471 680166147 189541928 802739728 702465098 801727543 454894075 461534800 987722814 998586994 114438598 984982016 159018625 871841927 350469744 680531744 879464364 978493813 366176261 877438490 881929584 940452821 856124174 899707337 786445233 947935311 921373455 924849814 169211558 717834535 59991010 771516144 172074164 746994246 829936702 891533221 203233671 281269198 446694479 980387663 294202395 987891216 24561822 578698830 586088984 898722266 298752950 938417146 934653844 986791801 135949112 148181708 323140687 757220799 124591865 772833542 661320483 968587258 352885333 366726392 174738881 200281770 795945235 893808335 898927181 994085133 120917252 869495239 119556573 600437580 146773514 392586954 44805617 895369180 963801603 981765229 590015104 774377183 45482588 292246837 518970831 757798361 367972412 596673125 446893558 634217676 541134287 751801887 517948182 882548099 427577129 855804375 773970557 921987152 600324342 676277937 183307249 851494396 593799398 913227153 659331776 783474164 77791405 482946408 583518507 805946799 530664901 629693438 411098142 956922814 772325674 883176460 240699789 244014427 21790112 862299931 794842892 999270164 282102227 629075423 492793286 687150879 882059062 989142679 36824518 384105094 713534822 769663513 961517678 997886089 488178153 519814689 114166151 858405617 901539201 993694033 910504946 969065188 303450482 668097972 246159364 383940828 576075255 844112888 175783230 217187149 725656084 896629235 347452320 474430967 772564661 821069013 901459875 903092171 576459116 949041952 608536679 821005864 602385567 610199221 717939182 933409621 46405113 155274275 371442830 556419737 930623702 955797334 262024211 598239136 541956808 954966599 908478480 978414264 131079406 994980529 560878469 563753779 23978281 32715725 241261516 577749231 971449778 972516300 876132620 934671516 509298003 793583908 53503303 557667355 604469982 821034803 502532741 789013425 680259897 725450014 80334629 807626111 526393134 918194819 588127290 703036416 748909024 957183944 930914863 969572203 783687651 925779935 693062566 877169048 49535508 653259495 845858144 854787408 262256421 912329941 791590308 981671491 995384616 999825100 887129441 938006179 955347075 990639856 477280060 636309904 975972813 993000985 75225259 806040836 915959921 966134608 122763791 911403870 104782950 470202090 215473208 859507460 567321492 680781154 55610971 420832770 296736480 999777762 541241864 819135006 467476083 799304221 521344970 843299844 134482209 380569572 71015310 342769453 855332183 866091167 135260403 394291965 68008832 229714717 980349582 987079824 518089636 696570814 440661035 972654307 198282840 484049707 353700833 376936413 516559727 763903550 651759804 975292486 850223845 900158358 824311073 979797411 361711112 487556995 26416590 492004481 637727230 883228424 188266187 833019790 593949600 812260958 37084141 823968152 485567863 756359293 240512726 664089227 223129186 609842749 508262330 591357114 617272911 942709339 664483540 982473541 48793203 338749865 811316769 961312566 570481377 700702969 891722893 950433925 695167957 754194071 211191314 453458031 931698316 946699605 507968451 782551980 442408353 525614545 730445604 877270109 766897804 870542582 23028798 684361468 266416517 772209126 617878878 755636005 326081795 744830714 742982515 797488075 365973124 434007036 701740638 948513444 322565050 767091054 523879141 682028615 792444720 869513092 130672207 606109094 939599793 956753260 482443947 958543068 762375871 904668435 89040336 106710730 511453328 934710469 315553781 365689666 256033812 765352935 685785125 772410197 852326020 984498777 108355679 502795549 783645665 974255037 786951467 787333799 509852500 668484844 411150624 887110644 211008617 473001351 352765218 355940063 624408656 677403600 522835414 932647023 840157862 998808893 75025502 677679606 858265166 966966956 351533955 512412623 513209563 795756488 867283582 958398054 90310791 647142980 138068854 201793925 218476433 867411172 281941925 337182197 521266052 940450077 806439075 917293810 370539742 718722762 760636050 883004756 386395436 528343125 822642741 830209709 479843338 712231530 281418472 287216888 266908159 529075622 483499920 958015688 218463654 354289335 379117105 989305117 218262790 812645293 636048525 934516729 32645694 752892763 749640785 871758722 86834835 220950304 925669576 941309140 67639799 102992683 267941045 983989167 488840049 743346651 302864896 824866773 948132139 995752950 871465526 984367936 777846802 987736709 322232269 938970171 170302052 762281388 691906112 987788877 647769896 886025633 573044678 623905428 188406626 983951366 586993416 835387095 241601487 812609279 352389661 593729405 87457086 383674157 671778123 718450300 163572703 831263636 663839715 850033447 591911795 616784419 249976805 604650997 384216787 882884090 483627782 962702730 580613127 846927669 636076783 853346283 165661137 246321541 388945531 787870332 206836440 524383800 648483051 846568201 841145079 993100906 22710752 832258969 973916435 984322930 76519248 304895954 681470453 863681842 461643763 680357570 213581747 913557576 483426206 794906975 981807473 996837510 809109137 815333983 925576782 948465517 157845596 415029311 684081266 839891500 137050186 232071004 654813427 921988043 597848697 896882703 838219270 862894095 687993697 740944478 172244431 685849261 188880007 890616940 226197620 447618132 605109883 725519149 513444499 998761490 153949640 842683213 929826847 973799730 47237874 222169771 718561024 756924049 968860399 970295824 260729281 417304172 690460159 961527076 228458789 712262518 671702318 959491006 69997264 825047323 706851235 911715823 539999271 867575110 405999597 830183073 741437035 836419584 212541331 373175366 791514842 911373085 471265456 755541823 533897274 735821022 701698080 958354195 79922237 815368845 358019229 439611915 792020791 909014384 652700555 840357431 722240673 808458112 499653834 753092956 96862802 645931378 731546528 786221075 934650052 977467898 261431732 371875395 709055025 874919069 38028601 400447912 377328677 457463362 991587635 998342332 103739352 966196072 357606106 768171032 9156239 804490557 955570079 991457478 365789878 446500092 485245986 579072191 14212733 94170510 729791942 864899889 518797367 920863048 489728669 617705798 889488024 986320035 182465446 844413590 986168736 996204400 798837283 910430981 30057920 819257102 341955198 343776003 563633884 669306935 319002992 388655234 88152804 869905240 118131399 962864189 483313009 746170840 34456982 496297832 307879856 327020053 767224361 804630941 812050932 900957558 643706698 895577294 144405326 152446620 698300726 972552069 320439099 718677723 702557486 979995059 301750583 934280193 315978670 652963896 420559784 663373708 936528802 996772178 772618992 831923794 144139546 990164642 460867801 484872510 655092889 914950830 27263555 92809018 845736105 886959813 754819663 813549474 724253799 871365166 921053721 924734009 899288536 978194951 919322916 964437437 824014370 947034309 85436029 726309368 390448495 820867410 5786863 933635282 787058152 829773908 334484793 536186390 520512972 997866360 291365659 362786829 432661902 862047162 997947960 999934070 664950402 727507460 885678517 895188327 622002812 676079696 886479464 920991848 964033439 968263409 563512504 673335695 596109676 783803136 345869432 422144544 990422177 995952334 616684849 981328313 985842399 993868880 40743218 676740844 335671646 697176422 355808015 642927399 198403335 611727487 817003912 868011170 114825310 755861443 280498991 850320099 931504281 940481802 661930040 897880084 495165780 606713094 347572485 872716630 307374644 793482870 852113473 994764713 722042615 831659460 429286451 580334817 630821914 925451893 973848388 986163296 66528299 261074766 389062426 832040956 776910576 944538164 649789804 724105480 957935749 983358716 158388530 768376034 528589346 985202563 7927218 470043265 537530893 858677143 265156390 543574244 422659012 487713786 328559647 911778552 379876928 535024589 39079094 908481616 673171053 791470448 541360668 794178379 216889527 244806988 120391354 608019642 973597790 997587555 447480622 548382890 256901491 655957089 424633296 973202096 394299167 801550151 50350414 649709992 733201054 894054729 973564358 998676166 813560574 916801876 722814546 808540112 856465662 878207548 346557567 937775731 511616298 578407853 783680971 944859972 512135663 554437723 420467664 422583177 397000645 624944027 95844045 933794820 154288370 761243798 910827993 914484201 939594961 976793377 110374463 761234501 191604888 583140363 506703012 640733745 501959495 631880053 486131553 628146592 435473507 776905751 435924404 522713893 326815563 673764436 975884256 985419957 21516312 702470639 351435124 668168607 980433423 989499589 462969021 717037379 691399529 796987260 332771317 346552645 676354435 815616649 746302362 820110545 906751661 973880896 10786556 831645723 938716616 973565326 316806176 768190503 387279131 739734855 370380 155661916 631566667 936418228 197781017 284853034 526589403 626865223 470814357 672031077 441138900 584729806 311613622 440934018 997876350 999365439 351241753 562637513 832496897 967725862 919285288 942159371 231711976 564923068 70718733 778560220 44731641 524164090 525932009 717925367 868848074 898751939 629387810 979168562 456752495 542859221 832017156 870738617 726730482 832198784 864212871 886618022 683484887 865524454 41083217 545772443 751265345 970567400 689244081 939397028 532204488 564558639 519299499 659364846 852167145 861367019 534988185 978744125 236934984 632953954 927711938 942888142 16350341 229731579 148376608 844332905 957883630 986207303 525413515 845546198 313422524 412302244 19379224 203000726 361507859 981901255 207358881 441739908 331003801 688126248 306520122 565065056 436545072 929721293 409979443 929523011 9911292 806726864 855672688 979326307 380156238 543728185 704633863 770179695 648356890 869735982 937402302 964065482 173078384 566399957 300897573 940177636 23405889 777904081 962686210 997772627 538111539 670110305 778320900 885140164 639549092 887410852 191758537 851164898 550954026 623866714 530351813 774380463 396354982 622577393 746969973 771180025 261226230 876943933 445623100 944360107 510434200 729067209 163963913 998024782 908249889 954069955 730286149 981983893 85705597 159801079 677759621 885854591 638969165 916641835 685854215 788019981 875586981 905115050 809695553 855585072 82509935 628025739 851943870 898038931 957960451 986940209 903611174 904746462 222827568 651778380 629967589 737978083 62076806 450264101 180483121 591939559 7824216 830170013 353527326 398847361 289770561 659053751 414644105 663825730 137975227 735080291 679586684 855212275 934702981 958189689 49343385 906457793 343407787 379952864 400401987 834108810 81033116 806424126 138314250 572777046 161373481 904500016 338138236 955528760 133630010 329583069 153053227 179852349 927111304 939978300 549817210 649669883 690796122 719871300 331361334 420489694 475195171 612617463 766757575 907338868 472351675 969732936 896924630 966839233 877807997 938747525 639699473 979577817 275527252 520453483 523265157 914900501 486859083 560559867 284078825 883532538 869079877 964239249 399388689 465314004 21194456 832579945 885475455 997247202 513884290 850307497 326111373 612198671 839740949 964960521 484102399 869206076 857677249 993587620 428850040 557661112 648742262 957047188 466878315 996424690 248292282 596733789 74149385 310419923 420392646 463139932 514290171 763691160 898641446 899598185 629025951 712826135 337684412 911170210 587675892 789779090 964894677 997899985 942949488 999584456 902669435 949402192 65644131 91908834 154319064 360400097 328321161 760894600 883561181 906488903 643312779 653019588 787942985 848278627 473943745 732354595 981690445 988816222 154693469 415362076 635909223 694376431 125008180 847601046 236992978 282113482 508133298 681424249 604744471 894118138 489963560 543658205 513707187 750437759 762505137 878741158 459834020 726826650 250550638 306079608 797948049 913269152 132905853 859976552 903738044 952877274 347858340 548648770 493341259 597407746 434013809 648072762 420162492 726091505 169120101 183003196 161323938 492623054 554250086 862743532 24233344 344122251 948434830 959256781 111183988 250138052 243470241 342030110 945903495 974364922 533296937 855952546 404013025 544298730 963945289 968723787 624013510 664723207 822963480 989224956 999813685 999946635 487686045 775219546 916191112 999197106 705451309 793422989 448468293 958684442 58378507 506742421 648243621 777032705 962835340 988453062 739160373 773722775 240953964 942632793 517688062 921050311 298908824 970172484 623931624 893985696 120596056 630069855 642854615 854532555 501517053 615875416 868401597 886059948 811077237 996063110 791833752 996734715 187048502 233957209 744587000 870369660 698591994 995468619 177668212 380959521 915122086 951592743 123317217 878606206 100460625 352971642 53531308 258374124 152841018 535829256 880683662 949491359 142210762 251715131 679824247 686719658 685292945 985664090 743367815 848847856 162603093 668444610 994808994 997661766 570037282 911608076 944269187 950318910 64089175 747037405 522363049 696352452 446967515 537687693 708555322 883354800 574254849 888874399 773583460 973747780 232978633 392115945 449460533 783086052 698044085 747476421 37496698 237548694 80941976 233402206 987541441 995497419 963616865 973361543 350410036 551085040 614982084 788053695 479720028 614886567 966000259 973845188 57216518 272773492 725246818 924162479 207062971 690604337 317711403 739833276 275784899 659013796 697339550 904385535 621737268 749583091 596704916 795113687 582045234 715509207 180255599 294993452 820613323 955443581 801887260 924317030 273142520 602020652 496443043 930253458 867901645 890879636 245533471 909589137 981641319 981880622 641088754 703018432 731535910 793929942 817874571 922278293 439232119 947003307 979867045 980789640 71179485 816302067 700781653 875204922 112354999 415124276 358370146 935092029 231460531 711773705 431025188 743082310 458055580 623849429 197599283 418888496 916084632 992341561 361675895 708281063 479563914 795941750 992083253 998917929 432813663 472783162 167141880 577994461 71606008 730642535 686810996 912603234 687639335 755544128 267184325 847051027 920358420 943600835 358054483 433303889 519139920 974960015 468327908 580675298 325277334 334357203 34764032 145936567 938609870 971121641 284784986 998091301 936134704 961821101 879907282 979750898 256202884 970508891 55543284 66227711 443710723 563237332 543127333 569504467 735332549 882539351 569120559 754730386 773980290 775895557 670209639 774692690 109602528 759890602 214454630 796593979 149183077 579109108 154580810 571702114 77830036 443578114 934880375 950447055 450836984 897633670 73390514 444597881 629060104 895928042 729225692 956540467 322615915 666103409 190831660 285487368 364438973 745094388 247342852 596168679 689627635 846649951 861944765 937343844 577705556 822138184 88411194 784035986 825184144 862446301 337099866 994852595 928698316 998593715 689959151 925636066 974649586 993717350 611243289 760714890 550479298 591893215 183426193 405973951 891441101 994817155 477546606 583194873 645075344 775638146 367767507 715435553 711023544 790445539 707826262 902822316 847112302 935167087 340757121 821573376 271279670 532565304 586493463 880781121 432539298 569398581 414663245 810492067 327269553 968913287 782318664 876841857 945597835 991044877 415667780 749834249 379373284 975732230 80735794 828593183 541230900 797648605 675212837 791981092 669392524 835047003 297906985 316280700 394802785 952896834 330556042 725181771 474166672 763620834 771810705 852620363 673254293 936292433 132067871 796779304 58133477 658431943 138649152 680505284 50590281 280306614 962778369 991330825 765392309 883780762 128286164 390693304 731133978 987669558 735067347 984844399 743617397 896210671 9845651 752548887 878447564 956649934 365975667 476730983 515932018 855246920 379013074 862982504 926539998 960018052 372115794 868707074 926037988 984293617 212311862 231238255 432842309 467582281 110221037 828853874 88880745 784473405 446530753 490211314 422934850 642623031 255409440 413560497 203847610 586700422 705853947 793147230 405055225 707778197 569474731 967854990 468386272 912196832 844536232 862022195 455989739 989339972 414819226 520269205 724861082 918244527 117969465 262800370 152057505 197136352 705170534 790281484 114932229 427457973 414890829 886787284 374650671 914922872 351709770 756327348 864849907 978096249 213146156 255579302 866930040 872529668 843622466 924498311 381635035 664568434 148168156 480643152 140511521 767892692 604386712 998416397 150458433 239155475 647573653 758082151 394506470 496542094 458028551 954333322 499456923 584238810 218588311 327513897 871395144 925785442 202297808 213678579 628518551 828147700 184860981 971526925 966134164 969990098 138387207 218622617 172754216 667323110 386307244 868738315 866313864 957884011 428005208 918130157 773173228 996461181 521159574 566691912 550529392 772522244 310084698 486011655 468321429 625210330 82624173 752715094 175026451 925927129 826167557 987171269 801720035 868884349 658233709 927923169 665400973 687973026 455208730 639319575 978590531 998734696 396105630 771176089 810767908 884804759 321214666 464857622 9950486 407608787 558779360 895012378 33196224 516425202 520375284 918657230 538587416 944542738 629109662 775916390 376402624 406437599 180076478 302882383 524377156 803735758 499865840 615492541 985378699 988559517 5533489 765037877 912532299 937037741 629155500 685741275 922211225 958057164 486646206 508944375 775776335 806610875 235152717 964498208 241876431 616496944 542615695 704077671 576189111 690564814 960234139 996424001 159698943 853384515 323725854 683474280 373877190 820716560 78780029 320602434 397429522 717053908 934644003 972166435 787492450 908540043 165254440 410554040 318155587 372589460 661823526 805594838 468251122 919916913 373370249 805693184 43479528 627376639 685484070 835650651 355014040 868259523 934133351 977057156 459278667 464680672 161414452 321559326 613499146 968724767 385842166 884014335 563472656 800700649 426504948 989174376 565355040 724851434 197880750 971115288 23270744 583299414 444880740 607138642 896513920 910904354 209186276 664307746 593894747 681680337 521032782 582755705 585421227 662972550 628600903 839482750 353175860 954601396 801904936 870121051 679255782 870887586 594340054 824459391 990730204 992932609 461526660 826756994 650537663 713160476 100747075 127820627 283681801 941689007 872613248 936057086 780659137 803755347 865539491 896193340 367622520 460147336 220005184 334334456 567933496 580367094 459568758 521809171 931632499 991557464 425724727 696388047 187193499 372530858 353510408 765563961 326844013 917276369 70495840 822046363 793151323 932108777 95578124 560702168 746538415 802388567 171741921 224114176 716494128 950074626 505429075 756891575 725796766 805949705 835355891 994229710 175089741 791724081 577313143 956502249 580861196 744792010 885480121 945795197 563910368 670444729 395302456 542909304 519779835 820414447 4578013 196978266 843663337 860524768 691566194 942063826 237243712 361503751 394162343 798426514 428147407 537502249 664734440 763087574 921752172 947465276 399451979 404822302 492435268 963661761 118687389 247580951 300090070 703184622 858855017 930425885 358305404 842215665 180828074 384114722 447285393 773787806 313747252 482373784 168560056 250718628 149429231 575462875 487695646 534413588 402299901 573859585 952382516 964694595 928944643 976220292 80333161 383207540 636259665 790797670 532403507 965977372 304304055 430168452 29695179 932706265 551234333 914502956 598668775 998164019 525006067 586719752 465758837 871646729 423938897 697745525 629332135 952443184 270946936 757305854 209424345 816499559 431304596 595976190 189157324 755810080 853682454 865547687 352065226 799486553 908577303 961326444 264569226 331555429 579600596 687224651 135378795 791353133 713007987 776287655 19224344 218136425 89336722 619781939 931602990 985557987 516528063 790838420 560850054 589131488 141836152 177405864 249786702 663840030 469872666 910479134 851986264 889881619 383814408 442686797 145448203 615285204 12876240 330625849 972451556 972660438 538851421 857174678 260030779 947738238 650797124 774251854 305309476 583845403 163902978 367913456 389404289 512236710 218551289 797273521 890793897 913240741 390521323 552647638 882538633 980063283 284008450 807020577 875568003 883146556 773847131 847247878 982186080 986011446 553055060 823033950 187322943 771505062 748973929 800253697 975019666 997725770 545948474 770774057 73977015 734729101 71560316 985634766 187031466 288947253 838515620 957458249 745802589 837089964 96819404 256241420 788868600 822879114 487562854 749530258 218620424 446196573 346179385 443523873 178123387 486792861 463762645 533056009 617816410 908686028 828480504 889346491 834578651 859294924 402541622 980265934 273151631 980446485 470902366 886691017 637756049 889201018 183966442 513192107 245890402 773670409 358948904 551550654 859805963 905024106 496681789 763546465 47202852 648190829 214461588 366351841 773715756 985568731 54742489 211547626 48250688 723196975 205681320 543829942 211884345 596465994 399834083 640103183 645270557 728756158 271882714 401071865 541353267 568690785 646921471 861377511 683515606 759291168 658646037 891188003 589187668 777657893 594659590 734119631 695288614 973689956 1081719 222892322 262751108 909476548 526771840 945971866 322401796 621281322 258064306 905294996 553573677 624100306 907313814 951889859 932953237 943276716 80333582 484736663 860476851 867092326 470562483 715652711 460964391 524599875 194289765 780158460 751001088 803123001 414433392 652722160 986745001 994881292 139324929 572644416 212652846 434775965 708127241 985899477 750657906 946481037 878623496 992833509 469745334 920531474 279711899 547758670 386763732 464973187 993936109 996364191 518384086 924110072 34741724 395542522 863468282 963820741 476956902 731474938 351421159 723420422 464068991 847540478 575165379 957606707 927602702 976760639 925463155 945523784 642344787 946213904 143306466 762921244 881846497 934374358 334678871 587087335 871525635 920690661 352154906 686248073 547325786 778471769 898093456 954364759 649279746 882963296 369290414 952196833 823275264 835669132 928838661 986938140 914958853 969554091 142152689 211665617 350269221 456152577 146898290 659757866 9005749 648501867 30527756 91843021 413808851 427908722 473542098 751712414 806555726 856905249 687289419 970476041 505814029 816441857 976617030 992202203 94257810 194463416 119734605 756637630 798119383 913206666 721638410 990264226 314296012 731103113 222354007 629019600 37562238 515280741 560596656 570552602 684238949 818036257 50657588 117590622 176840977 580853814 132848428 576045281 818008108 893182769 564366359 885411037 515205737 796308642 381510543 494895311 136582279 728220991 783518204 840265409 465763613 671965504 202328615 336045757 935793327 979584952 459617849 630334069 871639705 971253598 492670162 693174781 957719190 991549300 229253220 392461195 913482409 957860461 468073395 969011964 838056537 948704305 186129310 437928769 978265113 980452615 176044793 618144789 336570791 636438288 410309955 819893101 651709030 669419771 663860603 748667824 140692615 618956347 612706845 826453682 373737415 408303683 898507928 935424577 623567870 915416703 363301826 972608309 821495657 878646874 80665854 944257669 414498509 614392665 620864085 777075915 846929843 976687940 72950660 559478273 885687275 909547168 455158864 661449356 225198895 911932238 644810854 804744376 225259204 766175859 558392231 939820583 384922324 667242004 204933224 393381599 580208317 635576576 706273197 815714847 261990121 357448134 460288779 614575014 251371181 633030235 223262763 886325503 786765318 794656152 136941888 916639979 719814781 850881342 528340230 535764678 642329855 679537812 962840746 977465792 644248239 768067436 658228172 855707143 768372173 788658315 802872764 808469006 824091626 976023027 563368831 766909401 292898557 706034178 772760836 815994177 444676820 468994936 884364532 923920415 596122031 656638042 740902034 892760867 587920976 780620201 553851636 937596837 382965995 669144404 1392530 35585563 225229466 840559440 469638929 989713735 538295244 939981979 354172906 532780835 262946061 373741962 354047226 647489445 531869213 628127720 960728086 994026169 247437686 913143937 974118702 978715841 193729483 809462482 116365560 737458414 543951977 903973726 984644873 997691294 531035938 743711810 406891040 855551512 210510289 681267070 683797878 738804239 613754593 893576183 347935844 623733912 979028042 990239298 710155067 716325830 712911841 862964256 790094666 896069341 989251983 996432083 756511552 908951147 675775785 793653848 296311597 633148020 171153694 956204900 342607135 957201319 591377938 604667379 748643608 923027249 81812708 401520441 277003143 566885479 539560165 666122875 322155191 809619176 879414733 911407403 876223771 954067210 603469871 626696879 971176437 977434071 996799210 999052108 584203001 904766396 730423692 906221134 581042207 784577667 611451876 990391249 447987365 864137137 272145636 955301851 811669292 976049268 255033869 598118736 212916454 873623717 267251738 758472328 416260560 498910959 757170694 797941239 43626677 980632698 934735537 970011038 304047482 773860603 240617813 885095388 551547913 996558747 899813855 977379640 577927685 792945591 416151958 690320400 18428629 506043398 457027653 945621548 430952980 623490223 204102968 865957681 18746246 54529370 247173874 636429953 199544085 461128238 31544489 75317476 487948625 650325075 227368359 606670634 513351028 800793145 292349866 612163064 767795411 931580537 607346894 628373741 461645898 870579794 89231191 667535001 645811064 938304970 936153872 973457200 777401908 874277027 613743086 755551185 916101238 976677407 111193853 625331149 963044436 998779102 634175355 888656864 998763278 999160736 767818881 867821728 661845342 702339264 509302491 833931257 622843085 631990408 601416414 630041917 606135135 722395440 27879563 320390324 723620033 835206119 425474138 896855282 362347808 626105231 124560450 143153262 658465936 902111384 17482147 912604425 683490199 760188061 289646744 999237383 768054930 773767760 549422247 965626528 961887304 988917262 244026579 769281124 485796789 863036353 429981359 617784053 100910242 589117936 794029757 955209239 845829356 975030917 160526178 228798855 382762286 884913382 834562930 973176395 460865336 731009870 474633876 542505311 550974286 983889065 731630200 871581870 55895710 825180043 849031301 973219292 839757813 993810388 133294011 291724460 19730799 841093364 83511584 156555911 520852596 523021388 214749197 763593025 38435747 311387272 561131566 754462601 653767690 693394949 311351052 805640027 105005267 435896984 981457134 992419892 837050914 917414725 216211356 799817894 867288619 960610114 523588195 682468349 810506625 902267536 432624710 620092171 812718967 966261793 212913068 467328745 467722895 983477550 589196056 591515456 655852490 823393900 855189464 894871310 885786985 908305776 956242579 964203526 761774761 960387656 938755606 990532339 10487363 115680639 546041543 554198853 123258975 178509312 821607943 874978071 214900904 851699227 798087658 818384666 167178842 776055907 641282245 824431845 184496406 251158778 809283980 863628995 966485190 997571081 68609923 413144606 974115258 974706223 709851441 846003627 341686980 976386182 598887945 790114195 41523571 367891547 333781590 773007818 331700569 561095087 314796468 735996369 80151581 530987603 155062056 162443671 922054148 925056659 135107895 948043712 568390616 743909019 112445949 793300466 387684205 594346425 35803294 88182025 634229898 803059947 118331701 475643535 654619763 932684739 301495865 560839040 716668557 998554824 570271512 954708089 661795249 979983117 897063367 978667933 120600662 684322788 349365141 568509290 278855122 331267195 315695163 981513679 124276072 221312886 961367046 985051744 586141700 999255674 761199564 978481774 105289498 346616669 189584911 932074988 344063641 833930690 498731540 925685137 604877796 750798081 704148874 797063320 185697060 854533478 717824180 869752172 539623029 864424023 722326243 792691035 174984441 236126662 674760164 961469406 806870028 965348687 901361589 973068077 720671885 927375380 496689583 891635870 267887124 889158932 351292646 401055272 16078645 440043970 252445512 772600451 522467162 705569733 761608074 869087172 927213688 958123908 69372353 484621852 981118037 993807237 329117554 416968639 203884368 811807781 995411447 995667090 138646214 712110462 442140517 657746373 524510518 573508267 959540314 999528799 256341350 521254336 818852490 824208725 658980844 779639652 219724247 285189804 819458095 874601260 883898088 974360098 358360625 950670321 80833737 757526910 107654815 242553769 156210432 859683012 12730243 397033741 54739506 691873409 873878356 915671114 999210865 999553197 348401285 616339271 542857404 812834100 758676588 770478943 281841699 811488718 525461674 791769508 158960217 611699312 270851141 507021377 952184137 985006572 64794639 192581233 424219132 708605815 589954963 630755932 764125105 821760279 265110860 391896440 257982617 450284205 713820526 871317272 644366181 997671881 22760000 814626971 573288218 669130617 81387094 137458192 56837647 297567881 923125589 978963205 91722981 216565656 891058227 972078774 506170963 968139713 510517550 887053072 593417876 906081241 409981788 420600337 622161445 772893130 37638756 764208114 584738035 923313054 910490339 926011415 607595710 871567897 727733375 934408580 601128587 983796399 626257801 889612380 90443423 745488225 856301771 959119637 877314898 980268569 32015489 721279732 994470276 998754427 43973876 845270536 423849787 724178931 249868883 333423648 202928895 797451292 772201676 884346153 200568428 666990052 407054942 915544012 339698700 901176292 17625382 462286022 210596762 477552300 900541005 998327093 981492028 998003646 555123686 620354060 771337163 775374736 118583336 706440481 625711490 710788320 313499093 432086302 935953819 988190803 376669819 396954761 201959584 212356173 253003999 811809828 530232287 593247371 994379757 996258701 849862413 985332009 119845752 555449466 414326841 563756108 716520148 912173573 509883382 710800821 916217386 953341374 309534395 971876685 44956699 566825654 258625394 809118515 400293550 922974249 226641915 776455615 544716861 925314586 619703889 807236323 107609506 483326913 538274200 539520526 1297622 392840243 73777727 772058279 156368757 746068716 989882132 999207709 10538988 746589050 211875199 860846940 528409482 914359950 892472403 928241338 428774723 483271071 695519546 766892050 817001769 892917509 668213999 974982367 700089518 752485458 617995346 781314179 627735447 640204040 505559791 932406652 907790791 992192317 197217279 219728823 33946616 574594215 637225442 776138703 78915810 625636598 717724546 993106797 918737788 954422212 669663960 866309528 769013865 804934939 576994547 692314268 224439497 463489990 682900799 913105385 638277170 793567230 201897833 609568539 688011708 688965709 756266335 962737455 651289917 842549129 603471678 867184617 44276954 609982376 849396333 935790739 605456120 780456013 989475347 995718663 626250311 879875402 956720845 989577366 351402487 585743359 832243405 959727900 274890753 480441514 684510058 715925977 215473184 866701426 205513215 562247401 336332207 629966314 669725864 785109609 330829498 530686281 481750843 611308328 892946117 943114312 383360356 476226348 280018271 942985889 623606068 711390717 420265882 522674494 366346650 756941798 752237442 978935183 365879940 937353077 906952139 907472926 516182247 621077346 734417756 874435859 712171607 957260394 602485322 814731907 227169593 463811453 465196030 545033962 991105374 997339685 650708200 850868306 24297187 296888272 27419039 640639787 858119466 968027647 229399016 618767441 467378596 631350893 35127187 397165881 120763922 843419299 786030754 977863996 76059212 877844276 549898474 772369281 880929587 912912731 931672300 955011444 396846115 979182337 949272224 999820377 217423047 352930136 846296070 852135150 297504588 442055841 302087792 458044858 25004161 763673910 481019638 872918098 449614236 850108409 740706001 742217326 774185493 844505906 920596560 924990780 314464290 877977116 305485541 402125075 373237053 654943230 104818977 147118276 588323334 942784770 759461956 891024402 658531792 954322886 555607618 964329796 31255684 222572780 24062643 509904099 831634661 904327533 822290471 965214182 475734671 917828083 654917791 969215833 755634879 800524727 311598373 864773402 323954827 650295453 551948380 816969037 487796054 516169772 438439831 484204172 337562270 938142153 790874269 964098360 757826551 828382228 303721926 476023280 354785626 492029000 76563137 283266579 361848274 945628482 959735614 965940436 485736428 606878072 830447449 879030647 203250195 985493643 836349731 948238659 686620091 978492824 179416358 933545727 682470488 729072657 271657010 277124809 256850823 502905444 287008381 367118803 716373520 929628660 80093129 605250934 578124580 720729099 739187621 978097508 455354225 887366511 445015618 935291298 666332541 735986181 912197885 937617677 464020673 546528986 639399904 729225697 409645694 599851860 327524179 913288090 784609576 986248316 979753128 995990780 448304259 549020692 855450477 931581524 580994427 603594422 987823543 991500127 2538815 836753521 636419588 990270456 496949314 788141124 617402253 714357719 14133995 273673177 787799390 820783233 177074470 577894921 44157226 72260318 565062813 671342067 514149791 819447401 27953263 620627763 728359221 787600078 29818849 900246708 311446065 996747744 946808430 954938746 894875847 992842322 47513771 712278590 999229581 999289143 900968682 969663020 191910943 197251399 484129716 644279455 164600637 906775079 67606129 72028279 502806537 774142754 306706838 838324173 523487954 972464508 962517618 981379232 922773902 924526317 868482044 959730065 471436794 775903220 634291818 905326058 259294343 854837844 858341808 867894125 631402710 732705927 784023641 991745210 490518146 982995913 59354666 153745699 444610215 840421227 818407689 918051040 813512017 913296328 234110346 861045735 765769038 794820392 357858994 937994385 335048451 695723832 940074072 968065813 476669058 755869156 605270201 619879966 38057111 103043370 736724634 766471199 752543423 912648590 568988398 579020680 800389636 986830147 535304493 945828544 691584521 777486723 261567453 336743515 756981931 763971044 490593738 558728513 46680494 187704847 547629347 899756344 252063392 493611513 542149124 550455620 613144868 833444452 370903505 539999131 239458480 341571446 527845551 720444812 794108002 826879365 296671763 729616069 71526060 223771609 861414590 927759127 978941686 988937478 547006921 630132232 475661646 745497090 490559937 884528754 806180527 926531737 472472011 528998526 142564913 564183525 410205991 455658784 814367322 961538375 824207317 833733251 66739090 832704898 771047463 911894614 640647699 817353357 24922783 320269100 222372677 546061340 83338294 480877951 147139785 835613164 899976485 915842781 485766302 588615213 412530978 752700951 793323940 935365811 907040262 920919568 48703615 465420270 506368920 761551660 11223485 163735116 852663950 899089016 13165748 551651767 56077865 119118787 842375490 956290581 205014281 910672203 3619462 593793505 793765598 979581630 38546810 964397677 915156671 967657576 46750958 927064813 537987549 633323897 931243343 948931273 515401284 881206130 503412549 974814940 990827082 996870765 99455612 339906072 495814521 523416272 850343907 851082685 774624745 964007183 776255440 794127848 100412767 195200050 858727617 885172122 948219468 966215173 833832324 931336185 198628955 210674561 493963628 656674526 10897025 834182423 589165101 603202977 445234866 714884387 65012145 90128667 113769260 925479701 132347366 400432564 462438666 791913783 817832543 944608753 692018548 740202336 531051547 970509062 353755092 749465550 74026265 829886363 335417933 843221718 361036270 513345895 667558467 803555820 85701017 559472629 242449660 990951047 984477790 989478441 408493244 430702357 840015771 937568286 101388190 385763583 641639976 888830876 330148476 951957956 374944988 584895919 282484950 373698192 718206509 811053307 939589545 953929303 765111536 789151290 722027413 899579950 255254463 835272859 595160675 928720061 183890093 328320814 346927101 754854448 638729310 990064772 782453361 797860824 168476441 726176536 442075530 566846757 192413343 557763101 51279074 668694219 93016290 317679141 831757080 849322954 644290953 664198203 444930867 776171777 398267776 541647244 422346130 820436459 922355948 945478252 967616522 977543719 537320835 938237081 74617063 978362416 246069599 982852645 892175198 973366025 199122073 631096836 709104452 899019033 487447650 750591465 62062579 542573150 467719277 650938528 494237379 920949789 777595308 807533203 292235950 866765731 988028013 994512558 744892050 888972928 844811985 969941230 533352032 865034901 403858232 542340619 512872097 845479536 18703910 32657924 619642259 744360977 735385088 923264246 974620515 990198264 578283798 975086785 702570902 990949352 673312369 864479294 72699018 210723318 344664946 679493222 17437079 924232824 514255081 926976655 887532594 908385291 714583198 767481517 448943652 968644573 178048996 421291160 622805431 741932500 155523910 634229548 881748745 953313310 718429860 723848335 769345182 978553936 240140253 282343069 364952210 831194614 997540179 999627188 944525451 951306435 290368101 797088129 985952834 998878166 603147065 787583707 599212069 731151389 404131693 747873986 532710615 708518725 363834610 629491289 179395841 975279695 612901893 651953138 602026242 615181459 147903929 514545784 750820812 804647710 479013318 582348105 740628447 980669413 402189977 883027483 350318708 978988110 970699523 987081188 267353044 430297369 569155924 902083103 657332491 684253924 830637955 903721306 137763015 364209113 855930239 859446637 328564101 537064011 929101976 999946651 627923083 881590848 635793971 864956394 116981233 237521685 823968619 984958262 465184659 477939900 978593502 997280127 359264910 919453832 462625920 489065268 369397166 819733085 475273633 869415870 407221803 566124411 449695487 980171210 604042549 666491624 843946455 997486766 128164266 730999792 344574290 931982491 896896300 960170528 804792698 825636337 573327649 641048645 177119870 185386971 14064849 842414725 655670550 857515013 681423024 810931699 579699696 730441167 962738787 985542528 91480386 151696580 517355983 686447631 523495000 915878598 291363808 469901303 863240490 968476207 286443684 616900390 160239017 818133154 354731975 737398565 835571236 935254987 778051275 964322199 128521192 268486701 990164604 994989241 12462939 668736018 192416627 945412918 997953817 998523400 587240761 701613990 735879863 939932932 294249825 678840694 393403249 830591624 204356863 998386299 376244814 570461756 608874086 623816462 961014675 998813568 207090318 485197691 325780164 806396487 478845664 756747408 712215699 748743520 136345891 434476707 28257655 245210826 447126722 469412592 885403068 927049857 66654578 590960001 328466475 839322523 840594414 883714182 831488816 998773599 175258271 781023780 180811716 317776266 345157731 433460523 842940871 951233752 499654549 574142788 39151529 829671470 221461047 848478869 942602001 967270818 469222883 818524595 127405176 179038218 457117379 485230544 699367598 717767641 134192595 592422399 781770749 816787217 454320718 897894655 854273987 935970059 771966833 779793397 281246707 359522824 683775578 898127604 889835206 964603147 91571641 845265823 83255174 100574989 370292232 803349675 907127224 947416913 966106949 977723505 178044191 243450292 927575099 945261133 665928318 864975383 542000063 652766076 275473626 434563802 462905674 890117784 577530052 627793246 876160923 935035030 229286933 281657858 797773890 852468996 95959795 355252032 832367258 873796947 901779258 975148481 177435962 385153622 844913117 889083042 461159999 938743901 731081069 855764904 88323317 341186604 641084895 670725459 31437582 470883653 264686916 837606851 264201426 737381341 789429444 965405652 304297600 829895379 391213617 708182330 822530834 973701369 665723402 853502442 350970387 561619638 555115624 726826574 757231651 867844854 416281634 710087506 630100138 703930068 102015151 785532172 446446070 590262303 934679423 956376536 824655825 878882847 320647408 865357353 786633544 938604454 924103389 949774910 94040715 212406445 500515117 846021002 110933154 786014775 731435592 900002275 21135473 570765959 502712159 528765570 520356635 771537171 707436534 823083170 511015823 702708282 497715397 754355093 779302029 814648376 948937317 969428755 535639473 940795560 164347253 216235811 767370316 889287913 102031407 556426536 6915140 36878205 985312875 999676836 508903419 557161117 689996941 963172317 356995191 823006189 642074432 864248909 991802173 997883677 913030791 920569954 352208689 718509407 715767828 773810484 554490336 858674405 953037100 979411040 585863854 970308387 332437185 397910169 268919782 498610077 360024138 656203616 766878116 921161460 882821704 901254841 237676872 515104728 732723203 986725925 951506476 977195369 723677234 869840813 57469773 784389937 237481510 825733153 931154807 965741331 931498853 959894281 80952420 211206835 673008586 913675877 310688735 333847887 689613327 882259377 53253704 246794637 608241907 851915152 703390374 824258485 21256124 185941275 590654020 820207747 891988390 943919485 685534149 723045436 204699791 899443647 609966021 628409251 732386817 870002255 516503778 769870119 999031893 999601322 837936691 970437448 697732012 906602688 618236653 707224206 188739618 565623685 270885096 933498287 738939588 807065525 800764256 980315459 955522937 974218786 770015515 788586001 118047665 232950885 587957011 844286128 175640584 977482254 352020335 423756456 414672181 818893500 826167189 842403207 631274059 902621184 888532906 980982094 760152754 997917521 671226001 881724178 156832986 922754402 132008323 515872660 5889107 636662308 419125920 560158849 735720779 900362125 644043290 837116894 216674841 837317276 259625566 638170876 139741862 156355608 745968820 958246312 740589064 992137185 438798341 596191049 659154593 680118256 943971219 985211381 706395507 962004660 67379859 621373555 154213360 616534164 190070520 329129065 248297081 631541429 60094008 279884099 950816553 983791460 582395723 592632368 524783602 727408139 253055732 920228625 739291233 882937942 978237752 997120337 736910110 857338842 864599010 950548495 64860669 818401890 444654841 632133488 444674642 493310411 538000007 654971684 539467343 674487521 146151497 660573524 931906747 982698540 376570071 549790497 611957750 801171502 42132482 779752046 70102681 355494709 285824679 508254836 172129582 648413160 875680816 946431223 964191027 984880956 790398220 879872626 599140291 605625497 538366597 842386774 193855726 409881706 239934459 565194836 285849712 448673915 172928452 398811732 500990277 756101536 490144230 576422951 859335952 895803163 66656141 546797019 25031199 381926885 723362021 786491080 8902506 499936308 176115720 199924034 916299990 951126798 290478873 318064247 149253782 475420602 687707175 896448217 963673670 982789011 895726675 922663756 73157375 975015536 86010015 264367695 292086977 764532392 575387092 945621484 72248163 559901586 527457417 959833939 782641607 816080365 39840267 923931634 461164635 758277355 188310310 360418648 591061925 824165386 915520354 926942955 177222401 991759392 427385526 888112853 913575857 984346458 340889419 976866483 490102358 668541379 686282422 775662894 282426647 350188898 733109125 958822695 919801180 944834315 178680869 726211560 943631664 981385102 911725532 942664905 242764406 650077923 94558445 826576370 412470997 463827642 457756944 898676785 352220200 787097454 947458795 988596880 546829139 882138660 431598653 645382218 831743185 943312751 952726344 987270901 970871696 988111308 659067292 711233732 487240087 627810549 715195508 768179695 755954244 904695435 418157833 749922033 251577333 561127252 735496500 840340925 931991348 935454806 90538609 353595211 193319827 893486869 833170082 993841894 888131508 921792857 860988740 933815668 662713474 959310053 230303883 712609825 709247372 803633301 484350130 776048332 218505325 981370565 607034177 665282149 971331834 996356334 449498447 599811294 627205198 951197943 897880111 898042355 967471920 976648954 451073611 605672734 329042975 705604763 741927110 900158466 71402664 552487315 39890969 472587416 556424071 633988861 964011881 971027367 111504954 661565717 263589431 839309426 501687879 507562700 10771534 253194574 397364358 419444359 836168989 929155086 239360704 790456969 636106459 997774133 304429677 670806482 653484039 996989552 873114862 892873292 153484682 483481248 397661008 869889157 609732694 896741520 424440493 775370460 926127922 959554171 534331605 611099380 860391576 906329000 977545272 990897481 997018172 998092558 492294307 722738670 276845227 801641636 917719585 980996130 331759034 651435134 799220138 857708415 909705238 973330099 442358795 757695328 579367790 637562098 886689554 949087572 74795077 795239837 66710778 807927056 884986827 948865668 850729438 853331011 242147314 251782088 143154064 814779083 37295181 90022910 287318137 381363322 100871198 737759455 586042222 731054864 483784503 530817876 282055018 977982152 653608722 903435190 389062312 789032059 274808342 647481364 808851425 955950268 240501438 648195536 495201276 860387433 26889873 663953106 925649860 947315326 160150800 270445095 220634981 371008467 173838647 675436552 343987140 655829120 231179497 526133054 473342037 670882095 645670230 762502813 538302076 714736667 941964521 953812253 731417651 837249461 4551231 502788001 77786311 726909683 584080389 808643978 144390371 884077669 836872505 875884152 616078853 653575577 992570939 997255592 616802014 882376606 364016371 981407284 29665457 210970339 384424196 871451088 148780754 253382987 489423544 703155318 327516252 546323723 91286502 102138541 580415358 838806406 176806320 739875891 358219999 608267886 311816196 753363068 839124116 866591634 953303879 964500153 86267102 298399211 293102918 767333667 501392654 605244819 6791941 323825344 364835554 810366263 790786368 950160169 864859320 994780964 786288798 876245278 671470288 834732040 612108945 714167937 930551469 957725126 319843217 602093251 335363682 712434929 395187095 838078614 362517808 507643353 489057817 564194454 553708852 666645904 583915427 812717709 350791101 692443177 704761780 708124557 939807589 991109681 915299127 973261941 184223092 647723756 940104261 989442641 415249979 634639006 521165153 723920104 484052518 518108623 547247733 628670391 30629022 888900609 522169165 783800695 946960271 965208191 994902790 997599099 125401782 526834068 998088918 998234985 579519894 821167903 981724101 989277761 979573667 997737326 855748154 930236700 284310384 565040136 514078272 673738787 356219166 411057874 147197740 681153551 478618616 660356443 718064098 990199312 418730442 739949001 697214238 720005323 178371957 321791729 418293599 631086516 823936887 923099576 499633732 833208644 496276096 676806839 225439038 951099458 820266033 894764269 576186922 773562961 396518232 841707862 911752399 957905601 711832269 735631220 160126598 803630042 729460943 798933380 394548084 747095027 704316022 793451664 985759458 988877653 367666767 744994300 682723846 978938954 370032636 563713016 65638129 936678859 817939219 932201155 220677956 722551681 886638984 975979229 439207370 960796903 550896538 553860610 37361628 493868610 515942394 925787592 111259685 833819369 282133995 427993946 798202134 887986249 970886990 994371845 928453299 977859765 183020304 906222761 273830034 886243435 448089144 878196124 987359833 998123745 27929978 460809773 958191746 975480856 968013724 999389909 57337436 141534624 527820326 897245289 644761579 901917248 422402305 791963202 241946857 720768368 987377716 987826534 883856505 917520239 571780454 792580656 167362679 271254311 399461258 818598205 458436444 481703242 719350708 880399282 806237750 842884896 904467918 975932243 322251085 466433560 370965281 517693803 531724510 983042257 743980306 985653087 38062921 362161167 288541029 968788053 610363812 657995167 135158430 690395361 344659980 822872726 92897599 978684848 691251579 902272625 334585111 505521141 320970005 739648779 414585969 459963425 621522139 800685899 712869968 997074633 641310305 660175187 141927066 972408438 285405565 779980685 950143168 950618698 280193554 677329790 943674739 980736643 106784638 608909004 60738260 174416304 612538017 790137646 730705347 940717930 716609905 948690755 829998806 935275167 864827854 890419305 415153036 711283628 867672240 974864295 482771421 867049135 761950276 764526242 159116555 681031815 197063182 306938730 328815509 374067204 405865214 891081480 991928486 998102590 477272595 916530216 244856273 838391701 462221233 959551232 213963880 996378793 383821007 774074526 188654999 562134142 572721407 805913587 573554857 671249776 189091776 561656545 462049934 502231849 820867619 827869693 422677857 530084188 546398474 887737315 701056235 772905384 38058877 240773308 69508030 168458810 344700369 492102885 777541306 863533647 615917960 799480639 618096914 960202028 381473300 755105248 338700596 674573717 849452302 907188814 622443756 848819475 416322870 483119190 505911910 575675204 711315839 821748537 963718806 985438512 732191670 957101659 731679167 984775032 530168653 775928067 291807438 750474172 803660210 822042246 47228758 406838288 784546912 904142764 859115454 921476588 448617810 804822018 778975485 993201394 573471684 747027526 923954802 978430339 148052645 165289449 781562782 819865555 574240802 901380321 345450421 957430331 901228272 961957925 966642760 997434296 314610752 357436790 469209011 563765964 670567444 765365241 118817859 266067445 80321001 111228439 674642538 868744636 754234522 763066324 910213149 948089406 439354152 490350894 420672852 620250391 596885141 600541106 156130103 671101869 599874355 956327937 296298453 761247805 656114938 661644319 340618758 504090061 503089768 562296021 868939006 874630811 267735679 734435893 502167247 553057820 623340445 724262855 213432460 768780240 54036301 62718498 120192243 299051160 691902385 933882448 548977673 830849106 758608555 892733671 538313577 601461967 409413991 449599424 812091424 986138360 478335839 921907766 276468434 430913880 504815722 814710820 453105469 902134458 596475782 829061824 387180428 470350413 687473713 774530418 256662463 902397670 961989985 999915006 71315963 933162392 600820955 905273867 63542128 260116348 946701503 976165889 169555079 317858743 548033711 677548706 997317177 998993257 20447352 992895096 978694996 984777795 14890054 163962509 578283181 930637130 835470647 973786010 810526251 941445355 819782560 983021204 789084259 879023061 583056264 753975197 120897080 697528220 670476650 928749145 834226188 841100258 370810685 676900044 74889718 418707666 740950784 901304128 840791305 996138984 677951730 884978613 590085426 666060189 857694666 922500644 26805644 871231617 197530658 576776911 825456400 944462710 48243178 274007736 916984583 975057242 355816095 503615812 965981387 994562306 998370217 999103359 231468014 868772178 654189446 659942788 480338889 992060087 351558524 962303127 344585856 623971158 484512188 846301942 524797257 668069796 742127110 745488992 802389967 878410605 322149907 680809558 122339569 484234064 635073138 663267227 77310312 626944968 807707932 905760236 245775059 874278414 774123768 774627561 2578618 201536285 841805739 906526857 61853119 322635759 64050769 757836474 657896 575013422 996140838 998594131 830904594 920269213 627467123 936302859 499114618 762037166 674418168 892151593 812650074 932620939 840015802 972111839 143903207 935169971 419822418 661936281 352649651 472283309 355866680 731684096 814206972 947752239 731764675 971440344 49610167 425226345 306758353 803180237 277998446 748160951 759853403 780640210 497349387 711039759 783961614 800743043 293697496 707359987 528534089 704755368 890060548 950383371 867633712 944324022 744388530 826746960 552689825 940675468 271890929 914100474 143965093 243888572 538462798 601270397 353543105 479651504 440743541 574780925 487046858 515803827 826055707 870409597 118731664 410455268 123218421 443312719 171332094 350306949 118504252 677196356 567449018 784862299 434331694 547399862 597947894 761851822 585609543 832386957 856535569 888189503 438650641 485209912 978441622 995081821 55157547 502126011 360410869 821955860 712191574 946383582 62286037 862947890 859609208 974642330 318413083 484998335 315313497 520166418 737322260 953462580 10718556 983042944 548800362 596939805 647446756 651479531 201160790 632385965 284893468 574986753 47883319 197223836 680487671 945579704 469336709 527810680 193725726 902237517 975053693 990393204 267674871 780167169 18158784 174357168 306525925 592417338 312121997 679358099 705621985 979240123 449438609 712436285 639752280 826910586 152520470 465861933 170533815 446151442 985675401 987165527 147464652 636160530 959701364 969137933 963237472 988631682 384735559 780467047 264971468 430660369 427074997 861934648 842589973 930684765 622068128 764217242 290437607 378806661 481535689 797952228 589718510 985312693 791152323 973497560 725205289 879922516 791161370 946514760 935339984 968442884 342380211 967246228 603059659 820467372 841279690 988109811 135227410 906445125 842979515 981423118 859292470 936069242 224362010 728257510 983796719 997933410 43786636 148660988 567844265 829927964 609431348 913026036 540479929 928299594 203466199 636806894 136294653 942953448 543912156 554892656 767246583 945914340 779734562 898284656 871408006 880787972 788219350 917320451 24703423 101355184 141772776 689777811 644320354 875146114 518046347 630121959 313652896 563191781 273741841 802589855 87683008 492912988 218903784 614531200 258164727 998431882 444897971 827542194 52180408 900729863 270050757 692310596 132253092 336384394 742253969 919098627 349527566 813285488 88691481 969856081 730780492 752704267 149634136 779157115 125420916 672858673 604060343 627978563 816973855 985266236 156145558 311995420 21641448 29824035 530157176 810496227 733808954 853112371 80235553 301233158 552288454 976095323 965064097 990876638 284864652 763787297 69371798 570149827 721966280 851758090 135880782 216218503 24756591 672124871 374326963 469925744 387768265 433122896 60054167 813644742 722605262 960562308 507157923 825848887 918529977 957295436 830802799 892316941 33407491 56732194 586289411 705046780 73464263 627683728 508314906 840758273 789647201 822788881 236334507 954907465 223131784 297040653 220376233 642545445 385610570 512002754 247093423 584846032 196834958 846180206 437732752 982775950 206226963 761340898 905716252 954774998 321075528 966411219 941577123 959593697 787105176 919016773 908191697 989004947 87523018 620872516 132515966 137668905 263877077 862211764 551597810 755626611 322796084 909307586 356458554 673936508 176822032 485345628 377471537 768784442 442639460 828808936 433491843 757837897 44964066 90659062 348523475 980726716 287598804 832182293 466813452 494093353 996533231 999765006 640989420 997001873 797367106 926036798 903102684 905391444 713961195 888364873 769424500 978077090 450123394 987518683 266739638 519986314 107797972 109118161 440368300 893732318 648263839 791719521 697881509 956166699 475201708 814655909 495404430 506855523 482256144 493207263 277091164 484146741 852333871 886555074 297728731 605088081 157311571 948082683 264480749 456887965 507760456 610480687 164897405 210354888 912491017 963521713 558316830 598910242 990081068 990719437 666444125 933514040 584961462 737711035 902858114 997636438 822980338 957079615 473300185 751206347 709770371 819250157 660335390 888337718 897834049 922369513 864243234 966576158 642659629 709566285 381931540 599186434 367423733 452524482 675769233 867440621 446557399 651370624 926482859 978443705 149029711 329453002 195477765 441722681 436310606 915388944 978993158 980724377 841618891 955806732 330379778 906765628 902135925 964708928 58744615 234756825 47715863 972743202 766534169 857402410 741588384 801628250 930724455 934528903 92200574 220639333 775241531 907544246 586524429 603716908 603790139 667096139 350777531 753762839 494979772 625034037 492906695 873944379 831551691 862186247 828424666 866363409 180977713 684073593 634593275 869141702 56599675 652131824 214504266 484214645 394418517 808223812 109676962 923398876 704497780 727183019 341452096 856618150 142165766 400541248 484201095 732622456 771547312 950934111 666671444 726168475 794044680 838957888 857934148 940384408 123422241 223214012 590590919 771918234 952586470 954096242 680627904 825962548 106841945 951278776 92779810 237001552 361179566 463760635 110711483 844920435 930850465 978177764 608435694 963179180 160496735 347306196 252669709 753110038 893713014 906964466 384691368 447522659 256447605 681027967 256758542 517918073 444904864 492841561 144641055 940642235 748149609 855847618 749603456 785585269 359777838 830041615 54268382 468858681 983042142 984171659 780655891 966934610 609959265 660746712 227846653 419847397 508389997 532567853 760274810 850368712 699722810 952706319 25577187 802099134 442630256 840891377 487349756 572796940 979665703 996676646 982881586 996560673 544203821 998581851 273148930 601095667 230991033 608271572 169418650 629840083 69562858 559215318 331747371 875694610 815904281 988483750 902889204 984684702 38236702 159367560 391711470 840638312 17863312 551305603 971773028 993684082 131086108 375646532 885085594 892128801 440564466 685102460 326054947 840157678 673369824 808144166 562497174 717209021 736892054 943387478 516565024 656253757 504568743 516248076 312375533 913730738 947787432 973947197 599353474 758155027 3739794 785436402 387256820 987544290 852760111 897638293 290846638 795366454 682413090 715438887 656677170 828423033 849861339 999642937 876367539 980613328 741149835 878197809 772605454 774902242 769020225 861235674 414664625 621453454 170538753 393764918 763772433 958282094 703524463 763803941 730657299 888409967 540400559 893795041 910961716 993992494 588255711 712481163 411331430 425745907 817091413 818170400 532574525 770671520 231655740 343178710 956092463 988116552 431859151 618821257 924202806 961882554 272367450 894070264 812685662 987815812 402662733 975121699 504353571 610605281 624650708 990390955 395406031 584307092 270197716 943300113 522589160 928662202 850776337 854904186 119876255 931996309 628576484 639815080 890450829 908319166 387295354 905994184 429534345 807325292 171411960 400197240 406193485 772052498 509278996 809259659 138976549 359481373 657390464 989993624 955824416 988906880 447592933 524800285 650911275 955601268 732106533 885138643 214255376 557993219 757574162 943837746 714236929 849545465 235656716 302524272 317454822 975023980 820583476 957037168 258581896 392629815 931758245 959166334 916171811 951255952 527258434 606325467 446983948 826641309 442009058 683377359 409925438 786450095 759794300 831646750 754207293 947706780 64690018 429153072 128425331 893301166 669823602 974845960 134789649 871832625 797069964 835050742 301656695 485350992 340280851 770454519 810320887 986548339 13944388 139123266 652080086 791469649 36074445 210782907 676893179 705907635 838144925 916572959 192195619 340929277 82806896 145517776 83007227 729291803 164257119 224291936 12138078 936200614 210407333 592726616 60263649 395837090 181929089 294653409 327326587 818233079 427689274 705330453 351225822 713675166 467677622 963786788 888211973 960537837 628992655 644660870 917583343 972731704 338518975 890798604 220939582 831400294 146836107 970551531 731317186 995621606 279536066 370307363 854941208 900822388 948477912 954833769 2017840 988881648 547422416 967418932 318404665 385624605 39016885 163704598 318071200 950227920 25931578 956205926 544937492 714079781 200667396 658697042 321905892 711445996 944090062 972814752 257562078 780345333 629060778 921772895 200880945 306099696 377605228 741855031 740098689 924399478 779380493 813286873 241055791 924653809 67840931 135299693 51122897 983635726 109688053 828588958 101164592 174371692 25800375 704563710 73267245 988418563 69439456 91386867 762345050 862588595 658171855 693998503 847946447 894429934 736602684 836722991 14067038 220874586 801548942 932794614 766580657 805204717 214044829 700587673 439258744 816576072 486320804 782833659 622175246 714370883 930226757 963888754 400051421 663104816 258516326 503514963 539340880 726292001 843417068 993723147 498196430 976757681 478164145 625293623 410728452 683862114 338858926 385679764 718701856 804337603 648929629 868247546 352866200 553708785 790681160 794246475 591587516 818986412 960417412 961374973 848511102 965118375 935386267 976435259 852612420 962623687 732857060 891541048 376162990 748966441 413866402 635510825 161883991 453675027 623981168 797733781 454197425 719995395 82728439 882432489 163320566 233279261 587180752 792496006 205263609 809869551 119603352 543967590 89362661 929452709 548892154 971974766 320062956 732195125 260463876 817637196 525811556 859397441 356331133 358838489 887452240 895432277 127289389 469609287 314673133 550243096 730524186 900344812 81798715 144135100 310577833 534506078 632609623 735017812 387203446 543217432 912967937 977266948 86558188 392758641 553678077 842295385 780367548 929073132 739477722 804191380 212468309 327055495 579775360 663967653 581056872 713582967 235597969 727152734 534676731 818571634 707484964 913584399 616292397 804730185 445967974 486602231 617375121 689558870 317667100 508894860 225250670 457347298 453763934 531284404 591423963 861557272 421643693 873070928 363635599 868655508 113475292 225159110 847541964 875374145 188203627 631945425 907173606 953562167 350942543 634913251 160882595 702356894 601840437 805229421 604436327 790327090 773421042 852714625 138772208 907566004 627549856 713938615 115146117 219421986 353396595 419529233 481308015 884922458 78864064 457998074 637001274 831926789 30781601 504163402 542091922 715647511 494458044 783987153 650829254 893431956 543018503 823286930 725037182 884387024 423074286 975144340 47088137 133792524 27909708 861140066 471877657 686513309 321341437 383044097 423436221 857238057 936896843 998117960 95158615 632758813 915832858 974643621 220345333 491444311 96770753 608709626 631131263 861866199 1114853 667464451 255469475 480828932 807220910 932766935 245150580 746738984 245517622 734440684 351864330 549733077 189330748 810873231 352748452 638219748 594769013 685693499 20809373 888537393 535212063 981014969 500412995 892108943 545143023 945573174 166925204 684588415 196667519 728394765 929401822 976774584 958947812 968962677 462530953 819245624 177990665 465703301 821947874 900709845 864827092 927403945 580972413 813446742 472771724 956168432 653674474 985716700 385951039 758050921 146400759 522065592 251126524 781895392 165133145 458427600 511887427 777862614 769106620 853695916 350866259 509178497 767350925 893835605 59352191 428525090 376507803 386230769 534121599 897307573 910730848 929991707 74502068 86094639 576644458 759947987 456593819 901304894 515086134 516862429 890522587 899453405 688327214 955136289 159728719 655291164 394742546 749012813 988677715 996582192 424511038 441767056 635664265 849514691 326572572 577783342 517506194 577530969 538014908 982330607 97146997 757339881 983405344 988802724 924369472 982106286 888551491 948031929 761457989 910354149 484780005 845418834 585495961 686529236 308198036 620761939 906506560 911760132 92884572 170807714 481629076 787064816 950939868 971943234 564818290 906648643 177801431 885676300 629167454 891759488 763806981 801047557 800567673 875171690 833590694 951009143 161896525 846504039 630541275 934201389 19125360 202278649 18447688 523151705 265648243 279879257 777800235 827215084 335916430 597639062 493520829 648823426 934634502 976127658 260667118 907841195 387190240 920847934 738352565 906346566 702231679 819266693 164904678 406123774 497677095 871085299 395983099 764387224 282529340 476688563 885654463 887905430 74614959 612833868 479576694 909649302 993580705 995424358 898949530 913135053 303679457 409742626 402077789 520534139 869465642 965996952 80787480 209191861 944798550 991679387 559956880 840866872 541527760 918924328 867106569 983150621 267740844 845324834 257594105 647138424 947755989 974534073 864840252 912300534 55323950 682406243 365449973 474532063 240978214 970016145 649847427 701190176 944571730 982383708 536409987 641592693 219396675 397021326 863093750 988116480 161484634 808556115 600327192 876167873 835966940 911266320 497320784 524735419 958541177 989625398 598267446 859291960 778345608 885148195 693463074 849286137 336048413 454311003 271480144 490262831 65919148 153986755 589568349 636905080 396054370 524542574 64963462 319121435 823055332 876309073 882663711 906756893 632948524 972841111 688550836 848626056 12842639 378652630 799937580 940749643 838344957 900407598 617579956 852561167 710353737 794670306 945442692 951357777 181973117 405215881 747393677 873688207 68995222 419914279 126342135 756102324 365867258 533311870 974382245 985480489 209907005 831119906 70601005 106106271 370000917 755287738 888553232 889809588 420040286 954404039 716431632 801899498 608727820 768732776 444057610 791069990 713169108 988932893 188248478 891338071 355602858 405408330 91658429 329732346 130743406 810996555 694277671 949533173 448569005 631075557 665488522 816503394 830784545 871303452 2990571 433542974 419440801 772136036 694831682 699692317 104507081 871783059 764293980 782576316 680835782 778606214 798402734 840267118 227824313 765447099 349004832 944547211 999538637 999736233 998646637 999683344 584897878 666616335 651205996 722080337 996111020 996915787 95127579 965113844 963704136 964426991 672162665 694981956 750322504 981308348 670979808 929266451 249419232 818357507 71559858 985818037 293355741 369028203 201362200 208438224 469361221 818755196 273200522 804417301 701091251 734372489 139635532 242666769 590201899 765859933 203681832 530901895 542570104 841888751 632173786 883457764 172779038 863046568 653569218 946875872 934548866 955528055 398104073 407387445 965982998 998984071 341112942 896985061 642876723 993520875 792887760 813309090 23922876 637785452 98571967 819585107 357659567 605605681 38655727 945790059 68217015 774841000 637074283 861260570 970648832 972865532 782915456 898899262 111449649 943019383 334786190 836954971 801258344 903430150 375410743 412959010 559922739 989133920 412453526 880704896 110418276 832222435 804844269 810371886 973690387 976194594 792631537 832861881 105701306 599891849 470445814 721715718 578949170 991330270 236994133 914749877 715989396 824705633 174147183 374571090 753869195 758198384 474301872 642525377 975449698 986770930 11097697 730394806 248776935 894278912 754045148 927156124 490735226 691486434 845133350 881208606 842033278 978079676 140011339 888772008 957827567 963338066 449832975 627618093 578043800 894288704 790965887 889445410 945811378 949924595 244043268 855692793 360186993 695429305 387335539 524842614 630001267 653003887 615970660 803821547 822150376 874948860 237861967 988181936 408586906 829331023 944117873 967959073 944802208 991138299 290011893 706786323 868801133 915898203 839203569 889470341 532833990 642900119 704533228 720526287 395796620 952966260 871188609 964919881 268797030 415010873 183275526 665998025 989663394 994136693 32598136 377817006 474996845 908544097 85985788 630241054 269283549 306904301 911643121 972709745 145830061 557379893 627977699 917606398 789386503 953091886 707205422 782962991 556874979 898473129 686101616 818105626 532812060 555959354 892477146 983712247 882340548 974267283 779386339 862234072 115857129 800850687 593252679 818867262 784146596 932015498 171734176 216555103 467621286 539386246 237812875 431222180 684049145 802507971 46607942 573793278 326976857 580121931 829053872 958931133 780318893 886439424 618796163 955236460 682968621 839530623 955842756 962239317 54485717 592984887 693912471 827281030 748261464 749879820 236499381 238605072 507008892 988602460 488272362 488447973 149116702 188983060 51106048 233136532 37595180 174043570 824212241 869533143 442863255 927906291 242581212 655164641 232063255 548417178 242398103 578647988 423147271 504998575 815751116 905782799 746396199 764210309 644044285 869128554 215098017 448823747 59589956 364301891 424536455 589608602 477495647 968164789 831786713 945536841 874377276 955851525 278351504 653494876 94520418 906791877 654505329 734689892 973056056 991629289 311167083 644997762 799949915 913786527 612337820 883168869 621958682 736791929 785710342 806239884 797504870 812408844 178161234 314046442 601358073 767590366 475178916 604799683 718416216 883461895 277464171 975856254 250672680 812049336 805328665 862823457 316570280 327414696 945470860 954453920 762866347 782496207 574818039 619901504 569952062 582828413 5237043 872302166 334356020 745874216 743336335 880866847 78136112 176807468 369113186 481179568 675471779 769057651 619806901 734432416 985885229 996250661 937940803 974260680 669886290 890606847 317897568 927051049 267733750 743681359 443526814 812168665 940042402 991134236 734577031 965172073 302202157 733587237 987744515 995496548 851270557 942859853 397669455 479341838 287935656 490342901 419158055 528851624 534959262 537115629 927096661 929205109 82459240 849956792 737219942 959286369 448433902 676137864 720634799 918703509 692292347 727443635 987570643 995486896 825322271 969823426 904794784 932228642 53075739 87221197 803743269 810148235 237287848 918398533 214053615 350882747 865995299 937237699 425533874 864971874 672233212 719413751 302323899 549624433 117518193 574327099 540454644 802894267 926115469 991926154 530360472 665306864 463927510 814800078 972056111 997053120 147144561 982543474 600102226 884198757 378547649 747227295 906282050 961638895 452704572 802594766 551037699 844030263 420233417 649969617 382704015 457412446 639203118 912615354 960894417 998670247 328441624 756649849 51819395 808070053 436695889 662261426 318106540 840038299 143460651 178378815 525049795 819990574 426085804 985572180 48700509 796837482 70388289 283967429 384069002 812308414 431658231 957832866 817023935 997045289 47207592 75063461 103800438 901374491 74719452 692048801 319634008 593361129 530183076 896648190 558283386 986508129 16481851 479238946 431465496 581661120 544771014 866555184 209921163 685301804 23588046 120872298 768861524 844481913 222502160 736722592 250276254 376753472 409593236 720417418 918724443 942000910 813771265 919568253 56979334 321904236 476756097 542523364 103765816 837327191 318685983 641066985 188676133 522398704 364224390 466110276 982797465 989686368 817375537 998319874 755007811 919852672 127625179 766021950 870010300 909088782 135625431 313640903 716244565 895071510 946102703 987144597 869908272 887814400 345865391 406927540 712963622 973081584 657678993 882112471 830776973 946172592 73690887 224347942 904171900 928050766 633188213 797906397 304793771 511843711 565961885 911728729 950901791 961350373 932109391 986692801 614190905 810322135 4106808 321048828 674404120 750041325 44813925 270691255 338550226 560134342 846659769 882491622 629941523 755308629 956502099 957129177 984764540 998411670 593532218 803870165 157445320 621182385 845130924 855093808 746784625 801620883 49619676 638550023 862106045 988634178 880080078 988543415 786731494 842677674 577226910 718722900 360518551 440525342 626510777 818228450 776464542 875642594 18185260 509268989 835191961 997319069 748383323 868311113 718412281 948848024 604498232 980690624 38454580 897902084 634385336 898568722 51341029 100256547 170525204 225760626 48948229 168465150 723765460 871203104 949975906 952265374 246293973 870472154 447402286 810430708 575943443 720731072 524130547 525265188 361885623 455973323 617592626 702285165 683370543 780961593 311952132 476931373 939367136 958376215 986439602 996114452 530577415 859707955 411085890 976704352 922097281 956819603 193027587 341693389 514220769 773541009 172217969 375216425 618922800 623121992 627843741 937669551 637576443 661547249 699100053 815191372 37605113 940640964 551833028 686028973 835490963 862393964 73945283 223222191 600684191 649454449 145189532 971350325 95507602 367100372 431281311 770785745 839787708 959187585 696826244 836559157 476184439 795948802 103373014 142000648 599569043 633185870 518913516 873550890 149201595 601828287 847314491 984534297 504143451 698812126 630623610 812122048 467897275 977730196 899098994 925223611 171441243 937350131 77416674 875293572 597145508 797041842 980486377 999713768 593428941 764478857 466770964 838100687 895133407 967613983 994671502 995126381 25386474 211372905 43963366 854686677 187378083 876209169 241483570 873638498 949327829 991276873 310911942 847222261 271248108 398480240 658191909 997969949 49876024 272178721 365475517 781324704 597917799 764350650 347717508 761486153 284577542 404083433 314556116 374863564 781193356 986124376 81041523 382750955 369053834 974648262 461426763 823140078 775376615 813763679 16239339 739050112 684095338 977247044 28312461 208571596 681829027 688249279 69916512 533201009 261001360 399131299 169094753 753837997 671781801 745811337 138364154 225592153 731541058 784952662 240130440 360448437 12240471 202284411 987682401 996346325 21923695 471750344 469193223 789487323 921856612 984145683 897654112 988140499 286339776 445974549 942833931 955374372 103050395 819946989 149057107 980559970 283300358 693266905 638765346 749204681 841193491 916035490 540358723 896760527 576627319 657397911 110645326 326186934 943637175 946256261 471314601 899779559 829921713 894348937 654479733 850299593 885655988 945238792 624364060 919985701 468603940 626581828 954171686 994968132 48324015 564911401 170190970 663843525 576356203 855744603 422628086 455758279 969730964 987193986 739848016 828833431 900332899 957856718 371517777 834814802 30766745 567728901 841881809 941898065 337279731 414105364 711153484 830190346 353625421 709639430 725076404 825065086 596199185 687966231 756037905 799702651 667496821 938841392 38230392 213936811 949109414 984473194 459744963 726142380 970266496 992051643 752613133 965970471 576352691 959800596 375429820 436850347 76494041 520072372 383810344 936298327 132946231 921062004 706038796 746617258 561531236 948493387 239821519 804887187 62160652 162418788 142632617 176542891 401184361 939623340 280266684 874677943 14449268 788513418 887009913 963919960 896053353 924202519 163237882 920299345 298505408 854471333 939949328 975814167 627194335 842822237 105392979 790697556 249575829 684775969 975364718 991888780 314901611 667044968 260211799 739298729 376773329 434779980 911958751 940122060 99585204 398776205 646501416 867323037 216895747 985431990 576620206 861034647 55093495 768457028 716611449 904178256 675059958 863645553 299870447 735071228 379076781 381142000 986805212 998743266 566886056 592006088 197758296 371284885 65863843 465107949 738787096 957299399 719566215 774635730 473725315 801118465 394478398 618614504 714001049 974888473 81917833 906004125 957900423 988920357 112165805 894060812 277805870 392429408 71649806 669746274 157365593 461781315 764969103 817848686 895094143 982542618 858665021 967026172 440410572 761555177 85097744 139828113 907411428 996547539 460768661 556214999 442377832 548793503 115124150 419676684 87971335 585684488 372992569 722978079 545452209 944825778 817466020 917438441 923491346 964541779 424297034 862486914 335752610 848751398 764728759 768570163 6772145 962926595 980962438 986259782 987904865 997581194 26658597 280415428 59811681 585528593 826734656 840207684 877025072 986226641 225902312 615605685 341465723 897200951 992118526 994350117 584698989 653121273 242840591 862748735 663929013 737609184 102737253 817351644 368270879 527205588 268439172 557826330 284075021 686883298 140580363 491156313 26440188 130885183 644241583 919927816 218940188 769985022 838197263 957534234 999095481 999666569 264970499 925742616 195825865 723719421 917397926 929185752 393782123 971320261 729724362 864229140 357358603 999040320 87047262 744960026 483821963 772090775 335723852 732661647 748161695 906505558 274344858 755687082 369129597 952674337 356888317 443212796 339312691 514453869 278611845 351962099 833615841 845693192 428902343 839131290 803973455 924323056 155149142 188217990 607645284 882873935 73352577 238154049 586455294 639240964 400207249 471911112 282049254 850760930 795471599 978881223 542434114 931114229 744515195 917160795 614925740 725784600 275026701 444066963 476050173 673576797 113647691 286607653 328373355 942019659 655694890 780869270 380159099 442351320 15048387 932715684 347980437 363000398 419072171 943747595 570239302 981009907 596583176 999037573 852825463 964631515 157700776 499738285 86539401 327474196 978685081 991911097 207949032 604783331 964295538 992791563 829823246 943137365 895511866 946878669 913183077 943637856 186109545 527009812 934726175 975392814 752467264 951956309 629597915 825065432 614079422 628059332 229303985 527284678 697698777 885566056 515292433 599563049 206849101 504073340 137800404 929939347 849412141 933263980 598441811 891227294 836691749 885611441 773986442 820807068 420174842 765672924 225599561 779814930 666445978 982558831 688487743 769797052 745995968 758145962 390554586 957999435 605597878 849547728 974516796 987377403 448419704 669892376 847293224 860406756 442831189 490375775 321100855 415639272 759501792 834601127 501148928 558143805 655765808 996555089 686360639 842014015 695878660 912471647 354414322 358306928 508110950 899691658 426083139 868183608 411324969 484692757 333067081 452749222 75963371 170523666 314517485 570131525 519924853 563146580 424207758 790637384 775283042 934237878 356397639 797151501 714279711 776072857 83746704 535333901 133791680 886190771 206897342 755423352 246105239 402977648 372288075 751420931 575218872 792526314 716300841 981054320 238569567 725079315 420418796 888877950 16364064 409461540 380179076 598790843 846371867 899689461 385758980 455437750 291979476 584949823 249343008 634965521 940844012 956279504 73085900 164427230 854280505 895399033 7565465 483134963 503426669 697020694 306480266 324595185 51445804 221201401 620237807 951476661 716798326 903985181 698631834 700422535 287122925 790821449 235629078 719268479 400660825 874080402 748024334 843979770 216201712 939504562 917742778 938732046 849502360 929561237 894403716 969155129 770280067 772123828 278837821 552400071 585338960 689564204 903442998 906406419 125841509 146309662 688878308 712832746 31405032 474445805 132103733 673136999 855615698 911541598 451053526 732783918 87840893 215484916 7096400 885368280 265721026 748459044 921572316 961397048 938622537 995722486 520856951 962748013 581697554 852515053 755546378 761805137 256714071 882339363 205261182 549446178 763088896 764488837 754517899 788821058 49714441 255184305 363015636 958684764 669814860 836747208 907945302 913812303 605594440 850391455 326922322 899988235 153261397 229901268 161958584 359427070 629735020 992031140 458482081 923835731 950203698 957171616 845214071 879477193 396791455 631128007 565678309 826061010 897964135 952713191 972657199 994551602 85222849 171880406 796351053 858856680 941146468 988198904 779695259 890607053 170200712 844137980 517882726 955034859 436267485 549908973 858163964 870372091 858664894 936335245 511114709 845859103 35558794 564655974 16620875 964774873 558185528 862535052 93019477 434675587 676901215 807888469 956355055 998099219 121460657 449558077 730874508 959598664 634687773 888252824 900243700 967833535 222774565 604217108 117518208 314035066 964172338 986156817 976951845 991998180 650592652 840011319 406088943 853459308 997401727 999240623 108572770 671851773 486605594 488039821 347528615 970185546 250641243 390138871 991710451 995185468 906812198 986310720 178363744 906408121 18487799 579137891 849839182 891554336 870609989 959834281 925782987 928351020 26310509 37318790 236475721 439371758 414632587 457109809 981456109 988647201 983751342 991442074 834732265 845154882 357654134 712577280 828543902 887441184 599320485 672026924 315783658 899993029 267442757 339331191 660381046 678878694 160791895 751556165 101938021 705739988 874429460 899088694 763592434 881345387 126155714 909583750 957813661 976080218 69035663 534875661 937465305 998609981 103932596 463720363 566542143 954522221 159856066 428613376 214347325 942329309 346777172 541183610 524565771 893983405 211155560 719245927 958257967 989145826 618048787 639476504 491137451 680851476 141499890 317726411 853305925 934611290 631234393 670534968 544481359 943847499 505266900 667768110 885634664 933327836 782584258 981046475 784070079 914151569 635246440 909439071 298610676 567055624 980399914 982065097 905980649 959106222 597601086 810203415 650865899 742884400 534136054 839929685 671392059 903151760 905387775 958540249 404097954 797967676 829159254 901076819 556178892 626741904 555946648 951463189 991784892 998005342 841455284 846683520 834698051 892306795 404422533 499063063 266636038 534966023 854698155 949399078 40707386 162895989 834957957 897113567 243202106 729409119 668978742 989260250 248265406 253750462 434273423 495672007 358109856 756604705 579587734 877625714 164838358 484546931 982265098 997886004 538987973 972256841 228140687 460274033 293597806 934440659 910862543 970725042 523577562 850560635 522516440 687017995 329467130 499973909 525994701 833752418 854762116 961011103 504729729 798470792 292325697 460973599 274895266 310640338 311230600 619625253 279563513 967477930 519372908 958196049 848205217 866807329 89229003 692919375 791177921 813832468 996452986 999366790 838182393 884926720 392028590 979125645 377692757 397960843 824736654 938282367 651462226 739391698 939877480 965730756 723856182 994302243 692751692 716048501 864998136 911202151 877280112 969238262 272879431 679763647 816955831 957278597 729623334 928497364 839940545 860057951 358259051 378989918 489153285 808780811 819265154 839111749 746305171 812539150 803219964 886357861 794777247 887243784 620589880 775561850 115551702 507348805 350481054 357320960 444960784 648474446 521376266 916262549 719508363 926729781 272162072 858017124 180572985 983901657 87866235 894215344 952273174 975778270 324767860 399425463 670303373 972397896 487300858 567984621 985460230 994869102 509983977 953050078 170141367 645430498 861990523 952749756 338229868 958593763 88252258 401205855 997270068 998426113 538615830 901649912 344551026 878010039 454560593 501854842 742361896 917234143 286731981 293418359 593827164 978667393 856287947 965402054 761527562 987925162 610424079 939896094 798592452 818958180 368581796 724186292 812667469 925538008 324885156 356207837 616220938 882613031 558529337 915723489 849512415 985584721 195441882 726444419 626299136 789549100 567005788 995994085 323765364 900305506 415915669 631197168 498939801 594880714 656212859 827509872 606335085 729001645 739485529 900912678 695532321 814249083 923278660 939566843 472799251 909452533 899242767 910060189 624109566 816514761 715361048 982936067 123746345 873734236 873111025 959000187 829145252 927979096 359410215 572827571 327150897 683777904 216014328 907924660 98277275 509757156 102078597 874390158 851350859 976676010 114532271 415248979 749108135 999244335 624289879 933011051 501777037 893126181 90788858 725107335 738081694 844195139 521106096 550241493 670788847 869972106 976488563 988137239 6761502 405917786 245303889 353530775 37237294 689343445 904356076 984949956 25811473 579954927 793702359 799379678 787645750 810295272 992499949 999343470 206918968 721020628 336898324 968338122 846392919 896167415 933564114 961485192 567553574 935710555 284938330 661560043 575967706 951522665 185434086 278203968 532942491 872662669 712690567 722193961 459122392 857246585 735019437 788289443 547711537 584925324 289834697 374604823 429935604 827566380 168968256 214406164 489798291 873123491 365758683 370359304 740867169 951369420 230504834 277646274 306451052 528254987 912658400 942281535 986934923 990566066 556593047 630880768 36899175 683514179 346137434 422659630 418792838 465558477 427471270 433683442 438777170 465533208 88084858 114915675 193954789 213639476 406270107 676784697 403712336 747468992 716666998 755659007 186098840 713451277 265956138 549417434 953328348 961566498 617636413 766935139 290484779 493142149 938109676 957638192 266391188 499787572 871360890 922308578 320660660 349695092 779939518 966748829 33688948 237092936 831780504 869072830 881156732 988518533 918170198 948520281 584618769 840546196 824471677 934016380 695099116 909700240 929934304 948514493 224229921 725159220 782216425 849071126 845840390 938986782 126604375 777165675 366503685 429691656 24619143 327946105 657693875 680113740 760248383 933149455 887470603 927337042 676477887 692760126 670335092 943189248 897832792 962958121 175939150 637882764 943213524 944859297 539841921 879434529 856951160 956786978 419674994 896494063 100289390 322783800 475576371 561901696 423264619 464429653 40041518 998312439 855188146 968644620 935718986 953595591 72383795 715018975 244398644 271481946 570804431 994398302 152905258 240293658 556767974 827394553 134486995 323605116 764946367 931345715 659684747 966327855 947808456 972319595 179453798 942252414 672186797 886640017 564200172 928889825 668658834 891124873 531497432 910925450 426793500 837222069 973953557 980277090 119001678 843738869 687569025 875444285 210268899 736810462 150745532 812020106 195138055 691389132 474628375 868673250 366186807 866991000 477320581 577625647 708486046 752910521 590574834 901705852 896488959 911987907 672192969 899957584 272470077 379879595 799897764 962273676 754054577 941573815 956443324 964013947 838124775 959314118 303675226 655874690 354114221 885235694 326370147 995903543 227281764 260011684 79532689 798198497 112144400 133764186 25354850 707722323 984898982 999220336 210475822 931909382 815359456 852580653 936445940 981760311 629981189 648926679 788821328 966362165 119684047 936498221 163771135 256146732 251557558 832855176 861805303 980865177 405678915 417632232 185350681 902329027 73331056 793308486 697536636 890700447 447048147 683944242 143525464 383986776 291337107 924101768 106699151 381362556 567680849 631808003 318841905 453111910 802439797 812003116 666174315 858521936 306833845 864735147 905806462 954951135 924638992 958746329 443807303 443950695 770845985 829968293 801892063 835040480 773113833 836471738 722668500 793748453 243945767 714668230 808872948 809578295 53168987 769465056 468970144 779189939 841488146 869898403 297783272 319296559 50347471 437958828 642673665 643079856 846302255 973657388 768299110 885973903 824958977 997178744 11929853 52714310 838307625 843353590 308228735 680081709 288172162 901973284 291135021 392250265 360749346 735462173 378145649 527662836 130525169 805429769 233133055 277711738 634909612 815446829 909179193 975252215 321373935 985603290 272053584 722808973 467750419 482539369 775906799 909754553 10585156 438578382 70232850 308436489 740881979 862572243 11311016 438057649 234693473 243467890 313492943 790444749 604832236 872450058 573330950 906794327 92452041 187637061 71797518 501217645 789702144 808864137 973799005 996640674 959928522 982952172 365907733 780082038 166133969 815673633 296355712 620459441 924280127 926908462 851517309 870046990 525229490 801952857 926352093 935723367 721315027 725297279 860156154 894434751 733102674 973470644 738843330 879481727 32246901 940093401 658132284 986828553 413172935 862117714 622263058 731869098 861684331 883247954 523450666 787651205 971927030 974326088 816684463 994385940 206468732 321013428 7240039 345797284 633773457 933234471 991262859 998010822 458561591 586390340 702011743 955737710 995539707 996010082 672817834 928428773 48421582 97800176 34080802 730816379 676701357 810515326 485260574 532680416 685921517 983209390 871896587 907819864 69924908 407168248 288106549 764259343 147152682 644062120 198126936 248874266 680234854 806339603 670868876 906079895 79786404 278025340 169964313 335423913 547022446 780126272 632235113 792038547 225713245 393382555 907098590 921259164 157638607 933618773 473399827 789375554 303044286 938340958 546227317 863762117 139516527 986192660 760076851 771400553 38221512 307053517 680498076 953164781 917581455 943912734 133730143 528802422 725108546 903900805 50728560 637383923 85226311 611909083 810451302 949488552 259473130 907055021 871075925 930216440 960442845 965766363 220883884 582698941 473344599 701559622 489317700 937370292 388900559 422708338 141301733 947171419 219022813 893461421 158056197 476937420 764307214 947472262 309273442 977787937 228714334 602525217 792147586 949728912 307900596 789526622 3924752 382027354 366257923 754517898 184645878 641563878 855223971 921920472 834000567 916691576 493933105 643646631 968381699 982930685 457153962 946797893 822632631 978314370 609484899 867317452 260451823 356344971 840459996 973723808 973935840 982948996 791819171 809786099 434303842 892391307 310992349 360117940 636194656 897319643 77734126 345181682 97906361 895254162 82835144 552454851 287444245 605347478 82424683 116002920 203422393 704202020 793194974 843304947 405196135 768600553 903275311 961287701 871200088 894694960 807924235 923110517 350551571 410415024 880463820 910430284 979327535 979926649 863446449 948812037 189424737 461789902 546366979 946309615 868368992 886265430 520879803 627926799 280499024 724072431 521762473 973431105 751959167 915138069 325118856 973116574 773665575 959146802 994161247 995515279 663217770 799418970 430795811 951571937 289657976 331075930 214772935 575722106 479581772 960763453 778675355 859558423 697790693 946661293 509574884 966014979 27282683 855740628 418837699 695954673 106968890 116845112 826340421 853802136 612543726 951081483 855770356 856834650 585221901 772463580 761792954 784057161 754625940 796611160 457449861 519421248 663669607 782180614 935934599 994892198 262032825 315215674 638908489 905500552 770081607 847589119 502770991 522211549 548592776 632454803 931595946 951132350 810552515 935615746 271872639 774931723 79640588 645807261 494437967 990354230 377789635 709608213 790053425 824003160 351122521 597725861 937263899 970396454 803280092 880522881 801205351 998551393 214786958 481385138 764962372 925894612 169805150 998814174 768752618 988740590 531546235 869512100 225473280 378504234 127334189 832900251 387990283 929380067 135113631 637404313 841260199 882660124 627199944 994094637 555076306 633593090 176982995 761532786 259240446 901595554 918336179 946023829 113122395 457189874 639511838 776903300 454778053 592190863 242744300 709374213 591319320 998093544 788239211 839588465 473481314 979280940 568760197 624316674 162674879 738075759 391841410 913544312 965934537 967037843 166032227 548807033 353003817 446680363 181158472 465539664 182387019 510689620 640766199 918008295 935372355 993297612 411939282 936084434 563602580 784636412 284441601 840082504 976838797 998799000 391315995 577896695 200014513 299800488 222004925 879621478 880687514 926978619 285612401 422756255 387578416 532024943 313613015 477609754 35890340 158607657 545144151 821202508 735780422 879612494 557846276 874168408 47409112 301219513 547964910 843945502 728097423 928092693 949024507 976854192 360026339 748556328 814717968 968995926 749206034 769858114 327375159 753634123 565763551 766037795 502329863 710291998 926193260 976838518 622160528 839225879 405194701 623438566 884765958 927692570 734716255 996236625 402540830 432682161 157730757 412409779 519728965 973594853 54379793 387257021 8445620 169926753 287905251 734919736 853706848 997546849 482358904 917406162 884137448 994408145 641339008 945050470 557021376 985305930 21338915 380450093 647431145 698040691 327982922 721114010 797067964 976653559 179675716 346908976 592528315 801116163 800205829 988447330 466538524 808407798 793229147 977389904 688256798 984844103 458259178 983101514 804932762 866230156 882854195 906809144 42368341 831552118 222159205 643822898 882527294 973589653 932590039 985908511 937043558 958636260 456368997 843276109 527628403 715997197 612849894 628068169 106344713 227102718 684114995 745442891 741775871 964785084 989068015 996067488 852089297 947228534 88018644 406011619 826701847 904970435 755055343 977059238 151810302 609860242 894415199 923275682 945484496 978382763 332807351 861007628 909230176 963058102 65821657 937582687 744753936 867289845 916140643 984774248 970141486 980351937 1322338 900904218 893038789 914782391 624436884 848574634 235136559 829503178 479738406 864774305 34643766 187316517 426416437 713739589 7685886 177462627 717484198 737740481 799050207 879664360 313797124 353825042 825270435 888816156 331402997 918341094 586778687 861112612 947719918 953345587 595689258 872048909 150857323 552335692 568655679 896246655 950681395 957047059 267139736 803554474 591601913 679498375 761963409 856697215 605599481 992189061 891100012 940701828 538880631 770863365 660030722 734356421 515390894 525500163 334845796 695813560 68089295 396065010 396118360 952408620 434417202 438857115 232163337 591739065 895601117 910254262 271330871 962975395 969603424 985457009 678373944 918644999 509829912 694575849 521589929 981450440 333953460 601134205 846542995 873043366 371475331 395814936 200079102 243099672 207726301 548524533 932032539 936368082 385104685 922199141 548756082 817998221 156159614 726519260 352871324 906427152 858344925 869754904 944374090 983027015 494967057 936829893 43806992 105018141 690597298 764895951 672085009 680884308 443432793 535600240 974299643 982461353 647565224 986298428 959723238 993913040 418080855 988904685 305124994 926332354 706512409 731056720 520195694 901463353 195795084 310601812 390334375 475516223 992283508 997285565 404868396 705802944 815017988 932236755 938013284 986605231 315479409 670992457 356110469 627926026 462792208 869824337 526059008 806284909 263053373 826834033 825663174 826399117 945812247 993173146 558336962 609142403 513206637 979627846 171454136 282505248 427329219 886667032 962251932 986457126 220571138 874293348 562534040 848431883 262506479 797866834 741155725 897570387 607844169 924748904 551153267 837662299 739290571 941785823 644468635 677066749 453832812 912812795 335142118 596845596 51976095 152897036 828493300 950474052 74494535 504804847 392742460 955737072 623349772 893365383 399994516 911171397 132227704 431056373 666506135 781995731 752703257 776370932 33627875 174070387 776695873 977772634 116026294 312944243 437126180 873025330 542692913 870167354 229543394 424886123 49574672 696856986 853314941 985284055 431692212 620777454 6168845 101367822 885949555 991590214 558969732 637963233 588093866 625532572 142707358 712952741 240099516 773436424 268138442 762315209 414366242 669595156 402622136 564683401 737532170 810283664 798060703 807681571 555090725 924460219 744469009 897154743 891944473 893888296 39042090 507392108 766855165 931670668 811147627 941232181 991223652 993844392 634595009 811062195 720552850 807365376 20423578 116095111 543676101 902404373 702329008 864375238 289542049 981016419 816347343 905294525 9940341 27906890 113982632 851320339 857111623 908775862 646186612 778580230 717997409 986912167 870301244 941261078 342789965 983663121 711736387 957948684 211385094 792309706 195124675 211156393 319668893 880970289 337042054 578785662 943341274 945782094 54285713 854098542 849272598 935729132 853412634 955200287 727618448 978119424 147526482 260361980 632482807 654300830 613605544 791607070 489821216 906244533 461467625 616875627 960680107 966294817 622984041 642190191 102171315 632164737 814137137 846204298 401472553 690883853 53060223 593857504 448319136 554584339 65364353 677823538 926284680 966480966 491538210 532039187 142011024 997272053 384366191 605722067 61770077 221480911 327519691 545832100 108340336 322515427 327771192 794573257 948372944 983519570 842068935 889470953 404879202 655992116 481141395 879794929 25122471 924719598 491294685 720738149 18142666 931528548 198943408 962392286 644172028 660971108 387218920 995805608 727771669 820060497 506555526 893780510 722822273 969893869 414245660 685274212 536356733 820411321 593295649 952886378 630185503 658040774 744099232 880895348 380676784 521427523 685890248 958538044 372340989 442798993 493522446 536335207 659504278 927086355 99798476 659318897 579426070 604955562 200380532 559745425 472743350 475890467 617088071 722180455 805719717 873785014 20686112 269431785 595192358 840541321 822025670 924714224 761103922 976078274 225174482 413623180 681044989 720746345 835603209 954785182 298767790 942699164 617439588 634120999 740572729 819920965 164079609 780394940 459841220 695032370 863548899 871360250 804625946 973881861 747085458 964125435 583838689 819524150 535472661 761676953 1122508 229687239 18339841 927110414 581843332 961875343 399940230 977343299 915693196 998095404 641832911 867435917 758977169 940047713 941215457 945194257 676803256 940211703 797868956 838404567 333723292 754690950 601329005 838718479 344606290 646026815 159510358 661347762 256793522 479788238 340051528 890573081 316858805 948699531 674703138 736254529 338901433 959050853 251635997 862214883 665902173 882500441 719286195 859072504 545332822 874034301 96111830 819472159 241061088 538516325 349016148 541659998 511126390 859228884 451854108 481024131 909806351 916698556 479680069 643096943 992503388 993058057 276300988 437822611 297852001 494934911 212509396 479949018 688966384 809326760 368702079 702137120 283714803 496242523 694982652 866311147 195840417 982267384 685066971 889527411 554671063 598381895 527868942 566032527 206037415 686938748 623948927 724092978 826571020 873221165 214611685 639894651 579993507 686732303 331162735 483502962 666362914 986054169 409228269 536426418 604404938 872582475 87430794 293350507 594449993 621538107 802901349 885327557 615671154 734791555 761196587 990912207 889136210 992761737 865395356 972203810 439401715 709989897 985349289 996307348 297457938 354944289 260629003 419066612 401101478 881902223 267379279 428166468 521519636 816908843 940507237 963627567 504909365 995703318 933765312 995078384 178239688 278388887 348883891 825315675 919407712 951646572 729393923 816983653 140092743 341561175 644595222 916454883 815124541 918530165 869214669 893032626 653958827 989811312 598281813 739097739 50924028 560394922 268315681 726052487 158269888 522252078 26193551 240852435 500762874 782481103 869646868 976693416 422058541 857475810 102357695 256690344 124337748 477139339 381462256 629640189 261387722 596281668 698881528 845308521 885382959 989341939 236768205 432592490 954077932 984620490 257017716 537086598 176149653 910563577 242359037 632715904 473379288 523040607 882832586 905074223 520779333 719449606 131823220 591074611 221894100 508874855 660644554 912161159 409330119 523949888 987903228 995241903 728048140 815470251 981279726 995947782 750740556 884902554 655307018 862369054 191847358 581525176 229376334 883406131 944205290 991117653 440711547 878827606 474626113 644964515 576555470 886518303 670529461 866812038 214021230 835202295 613218567 905188261 108042599 502842792 884663760 952408293 111159625 838403436 108304249 279047633 434160937 553184470 247801914 419098502 378662854 440544851 110368886 738291789 336795214 620277557 480504945 955541414 993844746 998809288 117598694 690342645 60008049 785401119 663022924 927682780 634268809 896519969 36188631 105562512 630232735 727996012 119001724 492551529 245697247 981665643 331823804 671510379 375074425 386249488 415554291 459696005 606657133 953666904 240636143 316140526 487431302 685887473 819870187 820068563 517799363 777984459 920256424 970610623 380293897 656786963 805231129 959408696 25967756 538906139 503848761 674718346 757654420 824880283 801561108 822789752 12487023 830055875 303964133 898641570 951854262 998802257 520154467 544165520 394675315 404140923 619039384 831886986 218707182 699523526 669253897 962676710 505352550 572685439 288711934 799413708 102494772 268775490 797974298 844781200 132212823 213748101 628878910 700761172 136150872 162371188 232918124 448947934 505047739 683019197 136711037 216232721 947172759 948018051 61448049 367353845 507943118 589001796 890686935 945713871 685925172 799216899 275208126 346055332 913655250 958965357 85519968 918760107 317049749 399197952 192527619 892481281 243673794 836687356 220769892 563786479 367685133 994704945 160847495 852059268 138008143 295322013 872211276 943048800 42639034 270459937 568095412 865942194 762622224 848580606 748108682 905027738 359117419 727175949 855299654 868710367 360402794 405373381 517913442 793836273 714637266 733410637 55273576 155107265 465869632 485069856 892954898 928964382 784625654 830239343 596223871 653928016 328866877 434399427 315657357 980535621 51153552 680425816 511333866 917255858 874887248 992443165 376187073 878910839 669298413 993199065 303366709 708732671 687662132 767208759 674542089 762278729 276517398 699976488 647948648 701439240 439436901 667010079 925523801 996018734 584785907 712473757 831229584 949266824 825414923 990287859 683838459 782874250 674642242 881579659 126094491 162886766 564403888 777153086 423534238 836931281 570119266 731668228 931655833 977815279 7183370 804938635 296214620 964562823 77034572 113519403 577840033 975930294 797702348 836095708 997284654 999621491 625572704 743299826 371001455 381683491 992111507 995546685 422195631 767128036 411743668 993558815 182303479 540360277 985439903 992388702 694240787 713236539 312386566 619065061 264398816 733354078 979141338 981309231 139806173 306464705 103489736 816737557 984059081 987918793 251303529 396543608 569437674 769143218 822437679 853031667 178797322 462333017 844475070 884175997 144843746 735106192 664785036 908949616 788070312 956367153 358758691 843870038 61315738 527390716 369662103 683525193 338037355 788105254 421493119 758602611 318340198 445596446 548764791 737642665 18091769 552059086 371924487 797498902 138086265 369575211 427243807 534794341 434513902 873861523 947793007 993225984 431592360 464119631 449501138 901637659 515886734 517604388 491949119 715347445 322749708 606041875 511588711 857802294 474116997 679674043 530568183 575514114 987953714 995298261 422523807 907967651 480303622 943315706 565540891 709745445 236586110 998892578 559747295 751368420 617277959 883105859 34777909 54868330 885777319 942148717 991678504 993501347 829909419 860282461 662136711 913188008 493951677 524871264 202611989 899313983 994941011 998749456 40529511 712741026 388292928 693109361 185302005 246510225 470726305 976306860 436431155 520088014 2274726 862767913 180550871 700006127 859075391 981313562 978494148 988407913 70973983 902906517 879329211 976331144 496034791 953433389 615434782 750125500 397409298 879519788 549902899 574491672 561518199 952021245 994688319 999691225 406769779 590642017 964532603 971582229 762616458 985231701 927061872 977001368 475259580 659518293 600044796 875399482 523742655 981001769 28981845 137556557 77492474 871726068 975265063 995568167 798320919 823843426 494885726 744668205 423474443 758418733 625227315 704229484 448647594 555758601 248911726 573933485 912729310 932853402 772766310 812152458 731549775 735335455 334134970 493541644 391457163 965555320 401433950 611575185 704103057 835108167 325839006 992629631 175521644 844885481 193145276 778147590 618908453 665118949 741172128 741852272 920969430 937378817 727299509 801459612 409864948 588132984 205029774 389551042 611961629 936562223 811538190 814804114 456420316 665905776 363005668 681639293 445313164 537441028 456884373 777314275 704642407 952758333 733190958 778467581 370568207 715122740 421808671 669126885 287053763 380674173 667478277 817674016 747014034 891272115 465126500 935059632 408774079 871835505 618274219 802902764 589370720 899390234 582285110 655034092 893077882 977561251 239465927 594970234 318719819 870690966 786689328 918989928 49236908 138482766 384243753 961739400 648434608 894854245 77300508 105785290 650175597 788934536 787600143 842971200 528693120 568920437 566109650 694434161 464865762 683847421 643250964 869004364 141400524 608132724 386561557 915019853 797788788 922806288 41000160 892176630 121012754 492546934 961780474 992710480 206108907 978253063 397546618 451118032 6799184 345175974 872601594 943138093 481388763 619517678 120942094 364335677 210305595 909006141 585027850 690558529 302936290 864139998 566877540 938510264 320829810 880613037 904716077 962426151 723631352 754648972 372629706 906091448 125510500 251314761 795914588 842033442 854767485 997369982 133301558 929507048 815590314 975435562 301355293 672484648 120004982 589746679 587296145 993483293 755277979 884696492 509738123 981749415 502251936 658718681 328860025 577618570 43816635 803393627 666495573 915658485 795919209 943869274 92090360 116100253 438261723 915615642 642047540 972577089 44187270 548162601 457040731 617880097 475184276 944738355 225439447 887042999 319072941 515275886 239989127 402167396 663568265 931193067 469594687 496062206 494590864 632148681 422058811 507259642 348261087 517687918 259482882 352975001 865742698 923990551 66712806 220319682 538051718 946483989 387061696 543897456 862320569 908769328 310609559 627298773 625453239 853445501 682760916 899100674 880189114 892047065 355241804 478878693 842462330 849366058 442232554 527716270 59505699 89209108 148818267 720197673 548637193 596239901 372610345 443782803 495053151 872823220 64653427 241321321 715797361 851860871 505987200 510310526 553032794 926178376 931388789 960353597 838124695 934995630 409277647 750994942 415513610 830398249 658514629 974409839 263190774 928075987 144564543 337022625 969292049 974722978 149449382 569860088 698430574 845347088 715880810 760211402 938586546 987133143 209040951 215595567 538828592 548202876 697795162 728573360 63493215 146601526 847551034 866086414 773915053 981168165 15705952 471181820 829517923 971252553 283385532 333170352 12400148 984158445 273148574 764021253 154343627 315474957 603977978 741869604 107579887 519159891 828665736 931206423 36513992 151083340 408552170 827589548 729504630 792219169 683438832 778840594 261278495 355265939 812865253 866410742 534595334 774020435 381057781 874884737 965137281 982551444 254660014 663680162 84017956 726384787 201669056 450526385 699238126 761514644 978945451 986529124 181069301 235235916 568993492 955312855 730554313 765794274 605848989 802062764 356528125 576102478 786328014 793123804 742264918 878617861 497648787 899240703 186456715 954353962 848874575 874972167 509012092 798264897 152085858 712157733 875220397 917832615 619540749 856353527 65752006 818116238 390526827 715293638 813811986 985544487 696882971 997713358 429716244 953774050 592387241 936957746 886509766 985950230 251719768 448223200 51003045 941030929 856029469 984993328 166608807 748824940 578007783 712344298 871164705 958536416 835119995 984435671 241877794 900743900 676338106 956081049 546787801 985406505 697989106 985314111 229180106 636450319 199189843 618348853 225210086 329476950 304878077 321363861 29767954 284378856 734584294 915717554 727692147 991762306 192616694 689199856 701260790 915927145 910552494 911617902 781385023 819669827 410757960 845795487 345767939 614196934 412524285 500900140 563487782 583102751 510897094 849390476 245307580 266137382 32538515 202084830 773329252 785216849 223937544 779974208 504672963 858462399 576885858 790474640 807969529 848169633 955390681 987527521 75439597 823530208 87809990 506303699 278438426 622048893 142003104 215949730 714769823 919376157 884810406 970742365 972263105 977821662 553077886 930551066 817442789 874668356 950548823 978390939 139636138 480750913 528478513 764214005 173649600 643012363 885101221 896174249 56009 524853947 717438808 936167571 391628774 792679083 348975680 750189308 18672373 63427371 774470788 810407674 267821572 609136852 592740517 771640094 811285797 913693607 273017361 393565235 893908533 974244975 919715577 976625699 656060026 700032554 781805594 961762646 169497902 385179388 239663224 667707118 550495998 959098041 629758970 647803784 368287330 694850220 784766458 861565700 437180716 722486508 952067819 983773318 214729849 584054303 772146960 895616367 676157245 995060091 883944923 999184009 124128661 645671134 975375053 984500163 814853931 954292250 975606022 991832440 960589536 974901508 21513994 376801520 786985473 793183009 12089209 490604574 195855409 408411116 244817371 515596210 248533596 718608643 26594575 211152361 900557853 991047605 498785094 542312410 225972738 767636611 942249895 990173962 939026492 999612888 490948433 493154328 491240070 702896418 978391367 991459624 226971591 598501954 179014449 624101705 909307662 964978211 108576272 634970787 260062082 906454377 133454508 874165525 807286059 838448953 350351446 713067894 68745981 667722079 628562583 650819112 808964174 956534247 319716402 618723780 882521970 912621503 905184593 913791738 218269232 993072438 661753054 914947338 935719783 981420451 873780977 900946651 464169052 664861856 239824973 318630145 247012671 718981805 927299643 978942208 966431138 967875789 48590700 144871007 483278405 665727240 750596268 948511206 311115388 857061600 311198776 713983750 196093936 349201641 511100201 990123966 212465089 699217681 194273945 832171535 797559834 880075937 532773724 839566548 237199225 832060803 722520320 966068536 975822047 997698449 820245151 941625560 34061773 294889666 675854358 969134514 516451762 983605998 239160019 373431037 225652422 697716463 830703444 915317618 182310523 674449831 681894171 859609036 564264219 679785423 518789380 973206490 172389480 606015818 862856589 920534765 418573929 883375822 424982221 996579464 204390439 672602398 550922692 622103749 40851345 758455305 367137860 956667364 515146150 837960206 121461080 513322377 361210666 456346163 807405607 840600007 87453924 326975656 782847450 792327605 282336583 510166049 112626352 271476806 310361947 554843302 141379121 405051704 396897955 805342515 761671451 954984031 715368764 899366659 605032717 990771436 174364919 992286102 771589120 878448835 597559239 620972722 611628054 673910860 237126543 370864599 991453962 999158784 232488772 543779414 44492740 302034605 595531390 932892186 699768046 717464749 971123966 987747924 301580770 406999848 524598798 970582168 957353574 991118705 888832304 974279719 377779116 723192542 333803513 641604070 916224908 935371001 7514667 868917670 280988232 566700272 484069586 999251883 997043988 997920365 151219049 845466476 709031222 842097017 842605580 930358932 336942386 774475975 71328955 950069412 810128504 969186456 956331860 999427458 970565872 999338759 117791218 259293544 890780972 922093854 23360536 138243059 96843707 271483849 721117770 958358906 881801911 904231065 154592436 306146228 662239929 766863089 385832594 860882245 95484968 421652308 942606556 999326138 127293285 229857318 14724429 967991111 985058698 986301342 86397900 549735666 421530727 851331734 231735703 453421960 40293105 241637070 351003201 532126575 268538374 461340590 836212260 904297534 451973949 556409467 385609288 420599872 99751218 202040317 622079112 913978286 958868349 969796908 96143264 234671972 103503154 599974390 605143722 928790964 60899129 732441903 930781388 973100857 361288454 974859385 981930328 989509310 496806609 809583165 118585768 280596577 280350288 531540059 44226091 743547752 990480240 996449126 318757510 494608260 712464276 861882946 51311031 328220424 849824689 917375097 202950657 835717266 783295029 810129963 675457591 821481028 824782947 962030723 390540264 869188405 104548797 243906313 549590125 873060325 501956315 655835214 374653480 513255482 545826226 646034733 252105026 453893634 922253982 943119133 135303839 628282972 703584161 733237832 872389856 895872767 488854139 784831503 423385522 649709001 798880199 940458230 390007080 719128348 538707453 546400613 357039870 493159253 320131097 793129143 575552937 649582256 157732710 253235226 941335098 954762675 58853688 828400940 758415729 901077157 513732494 812983460 546928670 923368150 73805597 348355305 580861632 985212644 396943036 663433072 741129527 801275952 507468313 803391443 608886569 798902489 676331773 875857508 40319387 169328383 937733593 959189683 8527180 840385789 722937734 867794454 404085825 789063066 404930826 434088654 532245915 671628274 253268795 551649223 557378724 992980625 577861778 882428460 380857770 595103126 628520400 936915777 454865603 519509623 15671440 728693298 606199169 696987109 477810826 595431897 276849577 524148621 123418391 485548715 267397666 358040730 513431200 569493649 785835146 877160498 599886776 606082991 817532730 851853570 280648747 429709061 77658550 239783508 448175657 696682750 826238667 978011802 415257200 598323568 921547711 971500192 675610268 921453138 447466461 838028447 706112482 935962749 722048835 959377650 602408625 962014816 998298848 998643200 72455162 425341948 598700746 997041989 781806189 982631245 543539311 933461303 240028985 527365879 191100629 452251299 91334799 113274693 673938740 851995866 215870178 230432498 916351225 948315359 957341526 979245968 478596981 562019816 857129428 894539455 297687205 740006693 336435927 685499421 668400331 960683880 143369838 713685440 619150512 814378536 14702377 776679678 412189783 724329903 116431678 857521063 512546024 925857579 310312410 661267721 309967162 901202093 623628215 930475536 480237264 795970649 508638155 969801948 546001638 740733943 674189660 938631349 5726396 100776434 583203499 923162219 965232041 980150703 854774502 881381301 735929109 802136930 715737810 837182516 479509754 806420252 511982332 939252624 534430013 784142793 329201570 677064645 234700382 476369707 30159942 215376120 159331480 253685641 429677993 455470658 26587741 676229221 666785868 751133498 644765399 775638204 359357518 873282734 683413364 819642635 214776816 529522646 891858760 893990197 936936810 987795774 829974559 841150031 125728051 784267887 597543079 798595882 356789955 891800301 817965072 849168804 236226128 269563343 916416686 940392303 592105103 652764090 879473969 900343423 822502020 934463919 777840717 999830963 663986301 665217168 404026424 975027055 223849805 352427900 886651736 893921154 508072739 755167174 844276021 983637627 872531107 964888665 252809984 357569723 932980634 935926786 683513554 792641180 307436278 825466787 631997888 698542342 19448571 716482183 936901266 953510527 481245841 821509340 629665961 671893143 139962353 635735069 939638669 992178827 349353795 361471539 586652792 884477434 151045809 573247782 861507960 866291404 268756827 580960947 301617789 750163342 372312809 469433728 779267570 830908969 126264098 967663628 368241660 983428145 807497957 881191584 66349993 76668984 873373950 976163149 852470179 956720549 297560518 647204768 705068738 903855971 949376160 966518880 733212924 773402723 238819159 482401570 67019878 599157770 528999176 631364177 601672743 866317534 179930287 458453512 689208563 889810923 499796638 701091340 786802356 834761155 783861277 861212315 267009629 608826535 376379425 964723971 913590314 914734292 216042979 417163672 480851428 657205924 517740368 833284310 296857756 954469285 705628228 787966835 81088778 666566093 960714682 970368942 880452102 948910970 177353083 908275485 124997586 521967548 209806216 548793772 7077640 740897582 970929514 994074826 484782933 528784165 287992052 803920721 123174209 468428646 804556036 928349576 807965390 867929468 218593659 843823105 443420921 951736076 98849414 875265313 117848037 973107572 312156138 644961316 101479029 399081044 280332146 355457225 201039986 479366505 454673012 506522966 514920373 783579023 904402523 971543692 233250154 774753946 599218131 960311348 122966534 562788705 978271525 986626443 637574078 899064333 36792033 940197841 750798372 921119996 722338989 873861469 693404942 753994638 140553881 487462129 317817271 751702332 822790954 933312942 7881311 941925892 595035487 595895217 43904099 841799507 526939945 934704544 893557583 930709254 20589489 501199474 798797444 990541167 758176568 848486244 707339500 823151978 621291820 729023617 998014144 998889600 241910758 748387320 31114933 470077660 37942841 387254776 338934586 529473783 445487470 781296194 72452453 947964391 860901452 975870478 74228055 420552033 483652436 560345387 806717448 829218356 689395691 832981685 189985777 661044089 390318424 524885341 33367429 900451048 36091123 690712315 875271863 902559110 407723875 482246533 604518048 620055582 722559138 815205293 106113552 430801989 626867168 967022180 215171043 276771514 630190307 758818377 467025964 592717111 752265240 864176052 625608714 735802420 214751734 946040158 375735571 452311029 463345011 929934727 710749174 897279362 408427964 718950386 230741471 887590237 721196561 823078517 506524987 693738293 493720134 715471885 145583187 943766018 161855475 411174105 54082149 949806087 542653009 545210082 415931587 743296089 674148501 721489016 383023855 968343055 935236730 972254980 217156291 256307106 388144372 489815150 836518446 873178699 426930534 992355438 724410335 998760549 315735158 687968415 242908193 984148378 488300514 755831856 794382384 999039825 167919592 890299825 920260538 976977498 534027138 637589871 433756873 458336472 316839556 688015033 891760384 903188069 892430659 958971160 566305342 755602596 749602370 767369380 119693131 396173215 640247150 654629930 725712603 728628696 348229194 657336374 974351143 984483075 538001848 819489656 60929150 658689457 885517218 916082954 389260372 818048202 635327777 921349824 323938362 375764701 676282873 745552573 17052714 884924977 329832607 487574106 141038528 480531130 331770490 761968342 373927703 744393005 576440057 802497950 743545049 934661754 721015315 729327502 20556348 243388044 878864419 921339201 24877722 432424779 303423855 315560426 826569442 967731230 339538072 701649879 69369171 187386742 529225207 614102325 60105111 525545851 491152922 736650498 517719692 866496725 483531275 706576699 919500751 975181454 349923731 499798041 459887183 874622018 961390628 964759153 597661102 768925736 11722437 662739375 441593828 945192471 315034707 532304029 131424237 293151924 255802320 709005290 794518251 964519013 301692211 419328683 13732198 832521336 266592396 344209577 267729591 824526748 868614420 940210051 745976345 915809919 101446530 935474873 931506739 999920789 574829793 992868443 283787895 851240448 728808595 823651206 808550175 872869263 933177202 958636087 11290364 88363198 654319072 991439753 317179659 816721591 820199141 864141663 214750892 424838838 596047286 959440214 648355030 682077113 857290026 954116477 442632759 537393626 985424071 989612799 787913888 995145844 723615549 986860623 754550135 973096022 87930163 205303435 360723894 898473740 738749734 893438440 790902064 849814958 61456234 585019554 283631463 998558535 672818619 899922911 98003728 822366316 360585664 427800818 75431137 119803428 464268923 474341796 451244626 858349065 175019180 341392457 621356399 887240494 440322780 473889035 328897224 488997726 409004934 699848775 413246020 922600645 565337768 799901019 651623856 917889021 814900452 837499577 302274493 477915110 931933924 944940292 450937365 677201995 251403469 883760753 680542632 945995698 434397871 812678000 804125844 828443174 230351314 890028107 57823040 776040400 578255888 808898524 845914419 965973729 249450360 400581564 811490759 983820452 22381213 692395490 577534260 661295870 700222001 938709167 151219975 691052924 909365452 997152398 424057735 769493193 58392870 154588661 676711567 789081014 738265646 782789793 890354234 942755028 296010603 610824251 694182471 835244995 467399470 924301349 685724343 916561025 502452457 956369247 445399198 947507037 687820379 860560393 469742767 726236084 640361045 864619304 164016153 385000289 88921821 451763664 465585823 912424393 776567798 831590151 752472258 818291484 189466275 211547644 835013965 984851346 508602955 538702389 352199341 625421917 988830762 995231575 924266874 958608827 222199180 496267757 279084520 683853823 920052619 992433209 342928788 930208463 19990272 911075142 677245184 689904887 671770593 989569615 673424149 798791328 166626058 921751149 973276618 982865585 107455525 585658182 376233668 571559718 665979222 734490009 654399008 766832566 466213035 688914782 427852683 671104842 359949717 765426011 119289398 652142770 45507883 428925298 874874501 902522993 710593487 907558236 516211293 818968119 108147058 373664972 634574203 695374973 661570723 739122777 968607544 969045333 401009913 490359111 105767103 159826100 951168459 989029932 206065955 764141105 840381141 943537522 880729263 914538839 670021179 693032540 435456500 503790899 968874754 991617224 457474963 759683327 77239448 984445317 421400548 780065410 322192302 926906739 25754394 159272476 16276914 596895615 507339409 715736562 324341078 703517632 855392360 858421188 448132045 587903835 276578541 412291737 62662589 175809371 793631808 825932429 546172849 902920419 896192588 908668956 370389346 647223629 584400156 782535182 639736106 754577544 946312428 946925266 155468275 603810188 690620543 887091570 625734978 932619384 190344087 834223708 721949568 734289277 104483982 468491467 971802096 975882997 503254174 660735917 585294416 917531038 235658931 377074831 692009516 760106996 694716160 740088794 536247840 783532527 558425938 690315772 166585773 653789624 134860791 174097827 113022092 210488098 922988651 987541379 400258902 481728395 607429273 818134754 68830203 529690300 163362886 264497108 305608319 915453742 80538126 89794193 916129718 961849883 265510586 769746019 124318696 300590760 212854303 230765826 566123663 659429513 457435809 679382345 651205334 673314787 2712013 795335984 684536249 725532532 206761063 279966145 804039397 822562243 148497920 711501838 322122833 747800383 931762618 980983536 750345537 760655375 691903501 938482017 516571635 520761595 689394537 714202851 793273693 889021322 477132078 716729944 976973713 980158693 104099722 697074527 371836822 461028531 505329623 823983601 668594255 914151421 839443387 864748050 192333907 437341190 482226941 762973916 691566875 924704578 968337750 977185850 6214513 258307917 178643957 781148567 121842715 765806881 688258748 917488511 703235452 997969135 110649581 727658298 832251958 996945213 411826932 518964253 53309511 193450260 889507310 996180771 430698406 580461629 919102538 993752005 371721411 644999490 520789514 859067629 266262122 982300107 964046594 978635384 911350233 939444357 507628988 731501340 163737083 976742948 243635551 383906707 395732510 716283236 512248989 816547330 874481764 977494258 404819703 879148546 563591298 635220625 537838007 841913417 757138097 857606784 184696969 347176953 441351588 442052096 581928823 637811438 811068139 949443072 180137298 737620060 6885185 523088063 193772391 696783923 909611083 999212911 716402588 753232167 387526706 679847315 66360261 880556137 207668905 507253002 303737793 482661341 893072033 913068291 294463673 628447064 783052711 889609885 333578717 473060786 407591263 718875171 896714204 964026902 405598427 707212725 223758228 943848665 935774310 939203883 905987577 941077310 7543804 7934641 196492795 314149613 933113055 974836562 417005701 634600658 428378027 589829449 881047555 959236536 819296361 843574099 601210254 818548308 853349824 914773620 717227517 718003385 650442110 874785553 935269155 969482458 614805277 780427334 890908439 954250099 200724825 545882761 859067229 881802846 215443978 368017537 490599414 754141092 68173569 289658777 454921752 848537225 121130092 471471885 914553610 932750710 113451506 547286609 576591356 583404934 776735921 809053466 953411260 954931053 861256431 874252553 419234725 932433973 254135309 851053257 475529724 795076849 443523111 988227870 198924766 858918504 239034456 783876624 99350385 785086413 114284100 212672908 400293440 862941195 47545288 588733897 777572804 874972680 666207131 989036515 332901796 887368160 237548853 346891246 873817380 990520083 734174808 777954259 905112732 935061358 581386262 616953770 543337168 579673559 533174886 877665952 52718540 79171371 515169948 877741800 129564569 501542096 430634362 753033484 986342036 989110620 194677848 967521872 670410628 954508599 104520790 111737794 943253036 960485376 160113351 670512860 860706171 896069954 131032158 161198777 738706600 787735667 95781881 153847394 886229521 980936746 201525057 814480453 180538863 470415665 695876425 723689759 402230817 646657032 558162808 948258609 300952708 980206880 572410711 727732895 127118790 619288341 38362606 431512849 984978677 987375000 247931580 307385272 469623935 553113293 942471874 995078879 207963544 647370935 940779368 968768217 191575765 412535616 317008980 452947728 408508498 785025439 360580514 979768462 896640113 953428419 89975259 205500090 695702148 961640423 500088678 641353839 379888259 879410686 629450667 719095618 941365193 999044888 311947146 978952665 333834417 705411338 633331670 890216164 214776547 363018414 884271713 912975219 561293350 858506696 258550600 609704170 375996032 963770211 146541018 345078640 429199844 478259460 82758834 564359035 838740414 998875414 76495856 842229682 366180079 668654645 837680896 950458021 972621560 994375303 758959227 889264036 501361111 949769962 901924024 994303665 910647901 988150366 708699364 927515372 439954919 678635308 99367123 282873544 756395289 849302989 633961272 979911144 483313598 643751398 544658832 757688154 98980154 932439547 775919405 986770718 489488425 913064051 461891579 817868686 109566095 915356237 426223296 881682204 311463274 409919578 184069984 504752653 624824423 700009982 64215058 521396561 228388879 473986116 362823754 952336092 677647912 981440106 217231504 858455916 856191005 862298508 749614327 976639307 850804472 873319487 507030956 758670267 732666091 859922144 204604505 951081570 100593442 342149492 585677338 930142933 112556016 426237890 636237779 777151738 202598202 946378020 482805563 668157423 285663945 443347341 261917956 531997201 297847286 695045732 115283690 869145448 622996719 682395889 69667231 586277063 917609446 976452628 634367834 864179276 21613750 199899524 180580777 672826113 940364488 992250314 611357247 680334434 632995230 892797816 271487102 730800011 322315189 744447676 37744341 369020921 239888550 491897864 266938676 833381713 925102479 949061496 140612316 484668389 971955072 987871921 615010927 694363734 392354088 963658607 462330339 564462775 420911547 854163294 430526857 941912864 658079567 967905639 59399957 306404464 422241021 483347500 168994845 468532293 690032815 967304831 180854552 741235440 29362444 992723930 514010211 697815925 654457106 964100785 903333233 987832269 37336103 797708225 775556523 791138495 465231937 926093691 178659179 370337431 70418617 126702558 485449221 828835180 503913521 853841552 219553990 429012307 629004529 709534263 798261411 960461681 981704626 987155343 143148728 926642080 382163541 637068869 222369645 834668158 534699249 756504434 137913387 906706139 562924554 617435228 688443376 875566391 50042375 615839985 697392433 752085010 707377169 831430664 254057518 866664170 960182266 962084605 580098934 605114579 636349953 928684152 755727336 895788220 993798540 995726771 80243122 281967057 10765067 857713855 674594100 712041774 996554344 997447687 339900093 732431502 667440762 988027125 243690986 488818485 126946151 914653856 100201570 644872980 54676501 932940400 373710567 761192411 246837969 618572206 9658394 945323154 758170377 815246634 35978542 560426534 625949925 794406710 776717886 859588315 749849427 952148622 809424383 956674310 977305302 989591340 987824561 992039702 68435948 534791432 526299448 891255094 902726335 914943211 563541840 816160877 971186615 976596551 574056979 713438618 487736351 762934636 373562115 906789110 6694241 985500772 431289541 791827536 981401869 996898704 94310964 434750046 898255495 985876146 132354044 295358889 640065959 958003982 940266793 985015418 783989097 967475759 859044684 937035919 963481385 994593456 164709674 777810059 975485326 979781780 175890055 654423883 701396095 960678543 551517090 972589548 244780058 433648913 333286847 628762333 529383586 715014388 526481723 844686661 198285924 623168442 77780540 819340785 808611992 852545387 107960670 292598442 430362890 669088622 371969456 536915663 763278255 864181807 51386593 426984030 286788251 506723642 981567216 989774669 842154815 995145047 253877840 613544426 505691432 574801028 638098731 728302797 992455721 994294862 28601970 735785692 358868736 885290013 2052375 230720326 642271976 859279338 303551554 632915884 938549172 980417156 585609756 614571815 507745840 779566655 587097457 682187800 210461260 627403043 531819363 777202043 879896178 895008793 309744186 712455479 491483399 877113457 419883455 528644886 600810219 884381101 200917074 666855548 337456438 550990583 476145291 997956323 859281004 907696390 547521209 740202998 894122280 939654346 941533878 959909506 492813774 592526936 825331777 863991913 547721989 573014615 168720818 936122774 255557242 262807922 124540975 412085902 479244028 872380782 423272998 432948099 61176465 200353177 155119069 829445359 984981064 995335481 756871522 956737799 237767527 704761385 29329742 527209286 341644220 631008841 826417029 869523314 226994368 527105332 141323130 932305976 821986414 972216693 301593962 983206449 603050668 611160816 645904573 838599168 956516972 958947888 600538338 842564413 419987820 915777716 777202848 940583902 577523722 869232315 296160188 556303452 744699856 747608328 972773371 975484473 250197043 645280331 389342730 710041462 991411491 992722186 803504290 843777691 714438946 787892482 526966827 879125548 193178684 402461496 705006006 840637350 805950384 983631938 141295207 937100373 660354276 909522505 136478710 781261108 501293274 571693089 805600091 968441171 786505201 821852063 60099244 823435373 324383964 407142053 964911719 990223279 345435095 891533833 788755632 904901821 984843418 995508950 942017061 961547733 167715806 488585123 468872364 555862786 722686996 982004988 947844543 966333199 282597001 870606639 278825671 582887800 273945956 654893347 484557527 856347855 415862320 749655271 689007004 802547318 896654729 974827470 557487912 757555164 582984775 807410610 421888119 442393358 708330908 867056586 879765482 999545395 684334805 700375598 511330324 813019666 908246159 988972218 928275602 971461521 454360591 917044317 446078026 704315249 47261988 89723342 307458803 960970678 846709308 941067376 188417263 864983641 820860841 843357454 290086820 889691547 563778020 968735688 903597799 913491904 323610592 808313734 859481452 899439654 892209160 918967382 343473189 352056274 11845457 449372879 334466107 588978473 192862598 894801788 388529883 482969788 398139294 498431117 367387388 445652502 128242429 576494822 757169426 938617921 288395151 540767586 11446299 811593305 90424880 534462075 553633452 631121621 769341947 814928460 658364469 995435494 317762955 834947679 221638377 683907986 240179899 298382635 774827113 914509870 987749445 997149015 623763197 965881352 977447086 984026064 54646333 144144030 996983822 997267904 351071390 819725385 352282935 457513314 887214698 888702884 443731773 969271193 194784264 247127813 207671977 215918040 790143107 816548688 668583390 792421113 421334477 919249570 185278542 342562627 582223950 811948496 197196488 598329673 658378941 863014244 134620796 857445878 5931747 571550109 982112931 988081714 584719055 795538045 34474627 189815750 352821185 457735355 430947580 511343317 538569001 969438354 214148959 506277997 69681929 276307530 323061458 453664916 534112437 815399700 745592294 891146472 576641955 828416887 95354973 107292827 518566162 788037883 387410073 659400728 654180421 882771514 99403105 919627996 362098725 764212688 749172553 787500185 739201130 862633770 964387239 972038244 492626755 661022509 742534669 929268277 857671516 875104905 932508548 963449824 237328097 632933852 565216681 629494029 585692974 647418165 291276936 422391240 732194678 883379499 267153214 912402790 602503027 872522572 51755654 608679105 485942155 779172627 767586392 905306617 636508778 944293557 368978698 707953267 713690613 929921181 8514982 920766293 472103325 728492371 655958316 898996724 753341955 945749229 434742878 859143706 760953510 839737563 626598733 945377634 723688562 821305225 498617569 874317625 459525607 592462929 273076060 845365291 417447235 984407546 37287424 441663235 257194590 376781753 985837458 995468320 277372940 979350375 655210545 879487112 922976732 948371150 200720197 926126459 17565742 400847466 191076742 719059460 199961514 794661936 792395607 854164865 977023390 981357116 16322719 924429973 96311640 593766576 527221249 664961534 605611901 715715238 506919332 685153461 233537615 739329417 376332442 465670365 833477071 880464680 662262865 823483428 803655376 898318176 368678962 649171603 484232570 761794428 205727508 665447787 576661356 946918959 840338563 942336232 542486500 572060471 55930149 481684179 978227959 994728602 339732698 608934578 177295433 533395397 766567981 974755076 641367306 742455389 446118773 566400340 484605542 505047841 826845432 859360953 467805918 989486872 860160818 919431885 897164369 915227467 609988711 845555768 210648308 225051192 798568293 804074923 152877015 580712504 799831220 942435030 671966559 845827786 954293201 963400145 846990419 853370812 699523634 957635763 901799272 998300703 451024694 572393338 902896035 942504920 864882850 889515897 982230517 985503521 889630595 893310072 209770801 592168335 755843109 827351002 855076413 907953051 370597729 475165620 396309948 780324967 906215597 989051546 212773759 576599570 894026849 895031769 278063809 637275024 552739827 656802661 181224481 951558775 868982944 869311618 500250187 839643042 61411660 883764823 692843083 981474000 122929259 315625589 95317940 558221437 563817796 781486084 642553483 962241573 266034783 365749273 505607262 897925478 208679729 841260750 592158314 774805971 400994865 828156133 435654368 571606926 879943317 951601090 632436011 842249318 22246302 944591031 841200610 937754554 238906622 869121138 892826380 923720527 301324988 468416590 774746349 960255348 301526513 677638797 753133822 761237136 718614326 921364082 156791276 550398922 618163520 864487725 433422872 991829611 714155152 715096074 319999163 944449687 898487500 961272091 454997750 668814047 307991835 485549463 353390525 918563867 485686525 955466418 537315688 673512042 926699605 976482765 210028264 444650843 423062227 738907889 901096943 914210866 54525662 324242855 304477362 782879664 522596773 856561715 458963092 934264934 712905413 718829339 230602001 483154080 208242895 263619700 200356196 884544059 243984679 576187531 155145706 591556174 647070157 790296280 114056874 383016434 448934908 616297718 930608115 937456759 110870275 335538266 796142126 850826173 51694049 869819529 804613060 846039808 125701517 622983034 660814887 681222114 920339467 930243478 184110562 602516278 255269656 909688075 902663784 965637830 791612518 827480185 12085063 14626949 724798001 795739402 352151293 508587605 348208558 486975097 862637481 933001594 972064503 989432832 180559977 698877090 232727491 794676560 826983827 863822180 782922614 870608629 375655297 853356442 96971749 145635466 302413153 359366749 628917458 886086749 643043765 996309386 552219239 701433863 901496300 985185750 281970106 867029972 578197954 932780414 520075408 637260294 656839292 733047937 23473301 198308552 413393776 714253314 923028667 972148073 177764131 983444162 144222861 172375167 285209353 675259809 383153437 408554957 716687293 992930977 773293790 943686781 439928181 544304419 226743454 728486575 387308779 784453053 42883813 875798240 793665314 914416112 523227894 746449014 639424525 655967263 127130765 816117497 876207187 969351959 860160512 998616610 824255719 871832969 298850650 536183269 504660235 861644770 417833428 845959954 286509279 729024249 817613690 896094308 190590363 916169938 367261557 605605692 524199593 630571658 60795922 334108206 517197485 781166327 190949621 810540354 817584265 872666759 676320184 958700462 477429544 960033438 352412547 592971318 840760621 942294426 455650824 890311997 308361116 989062291 782456557 969687185 908644091 932694823 586758388 798665520 972377080 993227859 516240640 965041008 68666763 105782285 788149751 803093394 869065987 936166987 816762983 833405717 768153130 790059773 460321660 501562502 212684206 694773828 502300577 546638597 163150671 582391942 846744625 881323988 557082080 700746538 618910010 725137094 659801175 798859433 282845431 545144194 559571233 920736452 638833045 737550776 191752364 915849482 59144552 578001377 496656782 744187795 470475668 880717591 496937614 674112994 870768665 877427497 135631070 722697167 179381405 405601633 665978649 753528423 553324810 862325593 219766107 915354633 110777323 432828016 408016961 553163683 989717942 997379664 741522669 770134766 560315628 782223394 32148215 263790673 224785398 989091192 586246775 967082434 32458127 538395030 259281423 607241670 270552928 643090252 460920414 896268963 648558381 991720361 138632146 362641217 180810244 281137826 757150770 964144379 769762294 893346757 33301824 332964319 873773005 929871768 493083371 840086833 824493315 844928180 821753388 850336369 794274884 829719613 994901527 996828063 85343740 686667860 102587975 287948967 360546471 936114148 537495411 867969544 297531218 783726467 659167876 775756937 53180270 548357088 794137686 985442327 811882199 824987217 51012772 268991866 109984102 667593245 936091590 946534927 927464254 955790343 140950417 839054508 70248677 689277049 49796187 428725457 81462600 641816160 571813940 706765779 629660180 848217612 583897407 853015481 810216038 924539357 490016358 900715185 931033414 946505953 459719383 666377764 56373258 520019643 554093399 867198150 204087021 291660573 250699735 861279357 790325837 826621902 274913396 550634240 817403898 906407426 630356389 663545351 58235056 616339722 880825164 981773327 825595703 891937724 365765768 981000358 446147986 648073436 390262105 809894648 449679202 620517022 879794276 897643982 600389284 690384946 465262745 750923755 577152246 599032483 318265429 482386463 803136677 988813232 358700077 530185694 941088514 979971639 166858700 180323165 891521272 892224788 233722402 490468764 624902152 832844061 483121386 712497222 311314158 697712815 704485489 791622024 801889423 991154207 196756595 675998939 432459405 662069777 156603843 363671257 565337755 938365910 407337659 624802949 863549589 902900769 801590319 913824139 820608752 988058543 824735426 980284693 486910839 566582079 690167307 737391909 775670102 938612539 329562276 975831883 316177927 720518949 202073175 234321976 275902092 819180446 1627917 846202528 353323597 689261127 68245021 712090990 163887324 245857793 428208740 531379946 335246382 774184830 931706748 987007511 352378755 566101768 800526369 869211741 647129934 706263269 321090239 712045908 791401505 824260504 391392455 508350216 468696037 943774774 618723586 974458639 491675344 709020970 994658663 996222256 102104764 323970141 220149526 222250039 511615398 805782961 708344589 739933760 493553971 625746476 489192941 701323652 592692444 825789913 471028567 822021612 542318271 745362819 593748164 795911931 956620100 996752512 178446077 183403670 67753770 489803483 548199244 630290266 652340946 838338992 498914051 548845380 876810432 905091424 24903046 982917471 776016932 998255405 66115552 309374099 84201581 992446254 679443793 976019694 543466657 803716311 559951554 973385463 130833973 836924356 49624785 760264839 934321076 952154536 26605580 751783274 111276495 537151189 333132290 908295674 54706075 953604035 87726547 859023102 382731520 568318362 874007421 925390211 893038729 901756389 685557029 716097901 969411250 972630538 714978441 990341824 232037405 965272469 271916916 828891848 769762289 972940608 392522557 433776581 626153749 943859901 81445490 884677472 781255433 967312489 186150073 855898802 571354532 773864808 364199111 933851222 914837040 990360163 353299426 474014674 685225043 921628023 931116949 956236151 513992901 790026819 83142232 319307080 686561232 725775529 713099189 880731676 270638407 344460192 894101528 968373298 674788064 858859193 432035619 609322716 264629565 473981906 268538899 671322755 514428247 895648967 150698615 194707708 233495272 647096092 677797847 803219714 261005807 465661967 807142875 929344396 327090139 984542665 674926060 879234445 854106043 945407732 723061393 943588685 443330070 760752767 435090972 639419039 984185214 995457788 16750286 740819044 652877814 956018796 370483635 865927233 467515322 721296370 502507237 534752903 992727122 996798472 200020736 507528523 278012629 468133345 581009851 944413052 365222358 688474477 244301924 306817199 257988142 650507297 842774337 882652280 128832864 222967883 886561166 890351840 160233191 818195482 554940385 717321860 186928203 872862258 995634149 997309037 27131430 977626687 459042713 854595494 528688280 964272551 583166170 883771904 323912535 837712340 4889375 448916882 517899650 518158615 152003106 158114187 445574940 449734496 989920469 994345994 871125064 987470557 490602975 778283716 910552214 923457332 441011960 491529556 510202486 511540646 892924936 938228458 588438405 968906571 704520379 829800251 647485253 769614720 555025493 877672955 250222213 558562269 590225322 899676781 2605012 733604782 720970230 952532018 248166151 708537184 433867146 492588164 602885833 921296433 818939271 830776973 321347001 504561044 716747417 877364056 797103613 895213245 568300124 821539202 21789063 435843316 127904062 659693753 322562175 885078479 145981298 470228129 436650115 748148577 121316437 788912768 17209235 612348247 934773275 978594192 144740353 272323448 771310835 818516029 364242718 466709296 919149186 955012032 765845820 788858183 599108484 853741122 921136389 956292797 573052440 607215848 871369551 937964604 663548032 750859763 610925335 936106607 127091266 345918659 596012138 926367007 640617102 893695481 96433706 765639810 551741912 751214505 307724273 567885196 242160538 962828926 839487200 944736420 175471802 514506574 654085585 763225322 219076484 240208777 696637773 757330489 414279249 993704502 789751579 877747908 645818092 832857745 425182148 964802789 269228834 454393856 620465241 675676762 369758065 717812574 753930956 942466270 50658841 136068815 986466822 997639121 705521267 740936061 904630013 904928097 621721429 819622106 498418195 810741095 913810543 999419704 476245421 543739117 471872995 576951493 104379966 117796530 656648029 999601226 975722076 991298484 543850357 622384967 326040807 584956318 481413135 495084323 728273077 921949222 46892541 119628512 337901947 458065748 522907064 808615633 557118212 591009845 310187411 327601224 218120377 844589418 868085902 876661776 507283418 641938701 522979568 725962252 838219754 918147975 14852631 304628517 671251357 990512395 830978297 880960600 411742782 611995161 189643805 719168000 368292378 756557556 729131043 921776784 218648251 956463007 438457916 482489116 834593781 909900150 133175045 792116767 783681096 923538161 241095152 576193462 369705244 918764249 472013242 611930045 24772252 209604027 952193812 973123129 291018246 516311936 522166603 986473604 982239000 993887904 430652164 966447963 608138835 746371272 565465099 630992316 720249954 806877354 704512138 956145433 27897441 182314207 846681656 964881036 725174776 785991120 893405654 903339304 611974548 854340409 754280114 911856313 56718287 647489584 202250934 633447124 796478954 854438475 669834366 938205901 32008861 34545602 726331509 889867671 70708360 107038826 928490316 949006029 354076173 673964788 121616608 167692643 19950532 331541341 532526246 580757002 750725060 853544603 377880007 417509484 841461715 915448356 451911686 478405208 787325370 932761342 253542665 705433319 225378653 473021896 179282618 670701606 816960335 818247878 382426049 592698050 474879804 512167392 457965334 872862075 636930974 862612410 240687068 243384866 578134949 604801272 34997094 95828150 291451850 944582247 919977115 995602112 792421857 945481875 174802240 650896141 21843720 513594735 887258408 968814595 470062156 550392922 932085804 964257622 143169569 667552460 848527254 901517427 879745876 948437359 930534532 946777034 637954090 684992975 971058133 992904012 43519607 980091471 103120407 302466586 944094016 979284953 471116099 700455823 623344599 844055813 787108323 917434151 298029775 626345897 422433636 486359719 349868344 686795059 761461652 871452746 437967737 919683387 590405461 853466422 396462762 772520274 502699893 995264202 572724151 842440875 139881825 516973544 937555248 990611475 103297329 218969128 135854866 350724846 142012075 192372674 831814709 867224247 992205581 997303439 943721862 979857190 817769753 946660849 788866512 985981876 484485363 997050097 99820546 720615080 379973416 652275168 348265002 808313860 707047797 872679837 106281869 617534483 245993496 752709910 923544187 949033572 923766153 954333248 843671587 921336851 890940308 941092721 399062654 530117571 775094619 845488263 364240373 576466816 110321344 279957958 887326751 983361071 280412020 351178685 722302868 743338973 2075522 879119888 536140208 691391992 917104698 927613723 417525240 822081872 989019718 995016228 728882804 764423740 292680757 764685964 114580562 353777553 971409601 979617213 981939849 992859848 205430316 672907384 116243619 771497175 141626283 622637722 580594645 894871939 517937166 847560119 934302968 968955019 520210618 855373819 332341405 714231797 275923553 654517510 861954003 975426944 576101335 735385473 259052432 696917747 692204428 938012148 65544219 473257522 163222951 972996401 10223475 884424081 737652817 856909888 825188026 905029611 175226738 591434894 881710630 989426404 230584591 703579993 119423987 384947185 484561010 568456942 687933257 966318105 315601872 578704827 552214120 814391859 393506073 834310233 404739568 588305005 589206760 729160115 97925729 859083872 251556466 277702663 261597732 919975410 911727612 968110441 707688613 873655429 825296447 937118390 353538884 418606104 19523401 292842195 914967337 965455568 386531856 782393372 712312488 724380925 234954277 259530999 250157318 674841012 419766546 866904493 612536550 843860421 118902658 529802013 194947295 411666115 204626112 316627034 409781737 528566367 376341313 855270264 958516175 972030205 941147222 964723005 501488019 578961734 771748572 778679569 420435738 884539296 770451555 947913912 953632038 977320199 619639504 992648338 717788926 827911950 72682282 966724167 509990817 908475788 672931951 842029144 882354551 989433782 17998114 760860383 186481191 215435933 711696421 767514798 63355076 294786298 902473376 924542630 81400360 546883502 4116797 279169182 394177133 746571563 739140323 842153056 43382434 631496995 749080043 943791829 270317694 379254200 297458685 914455613 57345132 711874284 767605362 913640933 397157708 824400331 367266028 791413653 995318400 999673483 308581957 597219605 108750663 908332437 600521894 818423188 60875033 609987772 789703346 793289609 787150 124999773 317096000 496721865 421433189 988887460 289949444 302229196 856371189 993952098 530115381 754062908 49242691 91306988 977948147 987257196 859421752 916818693 30809213 503798259 963657006 974923675 634500420 823392053 47383806 799891136 90961170 853802429 558150509 973457069 738788581 935942815 226083766 721173609 184449582 843683434 238359974 350066359 607796333 700857435 519715513 869670612 200011129 904518992 780036012 982113200 388233266 398048016 365486750 839191748 622104122 892727979 307186486 581623518 209576929 254485226 164711194 277803311 286712894 715901274 988527883 996975901 556101929 735930954 30212852 880278664 310152723 518345966 949013843 966891421 398166027 470935811 737645859 879909236 317338491 394529783 933112341 988574434 962685777 991806834 647544285 881791152 927299790 952948403 535504222 736415124 83081634 806681980 175413100 633739602 458604083 615633253 301633255 550296896 529740172 888100506 427427098 430681368 60928592 343636859 381619756 573822481 410425036 969211175 884465056 888518729 712773279 888161574 554386058 854617885 704326504 757516501 3464819 123328803 760054246 927116271 798585921 937836915 598114405 999521180 747233603 755179794 728555019 738563847 308165993 801389369 101108681 155301885 153125730 773020754 84622984 157099383 380856282 632615615 76785179 93213030 729905524 883173365 94264596 882192645 597867321 861522251 730590013 830483726 14099526 499443375 211507799 614251714 735140649 995865139 517463377 544282765 485502693 510389776 553599094 650325591 725605291 930787956 906143678 977307749 272361155 975197722 978884171 999721078 997828113 999917324 799219695 916823900 255506744 756189633 48956548 897360175 924150002 958313032 60420318 658373502 962212093 994748356 970905036 975161345 169693707 340760583 933240885 974639344 425658887 719551177 501971027 947312186 584954277 644472286 364490467 562173787 593987959 742623049 52826318 812476502 341738217 886404877 714276385 866904495 650149062 976609914 247314404 650957480 184876968 565606854 304268068 961110398 804889865 959016387 203959367 658977762 697515803 742620289 558066481 870975380 44381892 402150430 845889202 925364191 942992772 945715593 872440913 930715076 457656651 922512694 631367218 713280593 210387945 339432752 436479555 516435774 308965905 962762189 238016726 837097664 418440729 962969918 26877322 111696831 203431374 498807159 278911292 309478172 211373144 349214682 203849274 967670864 536714169 691816490 925125335 969578794 430152740 721248642 907657140 915372200 185774572 959778574 23156032 271851323 120507161 629848402 114369327 987061528 686242068 765032917 283285165 506360887 819612609 957224460 59258501 478181557 270183539 397193219 834201633 850879584 154815196 845386350 803131611 818618031 426015123 988322603 266597133 673421799 707342255 820002760 731046903 941689063 397731862 881211500 748068417 784597936 916896375 921091086 980180244 995575771 400487815 546851416 474174027 566086279 431017688 461123472 87992302 530581267 944594276 969869673 282341261 524574734 610147808 843285590 446194600 538416811 21006703 389219168 864755530 972780271 361708849 935531653 658592359 745688825 422211453 560057523 373657968 534166477 888928553 976510143 717516722 911228104 413847307 451519338 375344061 831378148 340109259 848931220 447292781 532274054 963351692 965018810 746879710 908580974 867955381 953731107 692815234 731511718 446262622 642606707 666663083 727407274 861148502 909389830 353438208 980207766 76301314 163133410 235413504 733185826 239757815 676203847 919640176 965364613 537856419 622338394 861256637 909001252 13777492 430735546 695439307 725628876 201540117 988768932 742868503 882944372 276625356 509864900 602452728 909301892 581495722 971379727 55023323 580338162 161554969 522586167 97061028 356214652 585396032 885973206 924315334 956272504 938937728 961682206 413728530 476156554 939225685 997795618 93211517 421450203 707050018 819203469 437514842 720869383 923861500 959219199 976901972 990067972 114706519 152395841 303570617 514549900 271925154 873506316 255949653 546232514 339756284 867153703 774941011 827075548 454428932 745256736 34207461 176335731 162614665 256773637 873821271 962750578 453214975 687654883 655565483 981893677 336740833 700351513 111962754 857790645 612551576 714043950 581604665 853084863 889342418 965086218 993221328 997459980 806615915 930233236 570774562 728934768 449506268 603583801 165814013 951162349 295138098 463564687 116297364 840872924 345951678 492784714 612354085 913688141 467162439 762123630 201962739 821410526 521997126 824880289 389481495 994832169 613530538 753037155 27450489 804513801 99518954 830866036 278374978 649952912 432162416 730494583 813532736 963781417 303974494 988568763 153717784 559625444 347007840 389083182 119179774 531247480 217017313 481373930 517009069 630908586 464389879 688224322 81126679 821371915 16330197 557373732 886111300 914616903 983447259 986417678 857635113 946251814 939692461 997758577 597116346 778197458 837320248 866732342 977798002 997016430 324809049 348181872 161065719 381914211 602852236 619553162 675958333 784785859 663220470 977083599 776481976 951558750 358481046 428062746 514926942 598968253 737346487 807027497 579346123 978052440 948543513 952722618 887560973 982540137 254979117 823580985 952696746 992126431 100108937 799415063 240365641 523758007 389280834 666645628 525573262 635722419 477160093 743325691 794203383 841358936 165196639 670741323 454251465 738328675 45539387 79962833 476163796 948380706 493782063 685768489 407937088 587670304 329754104 985525047 577525219 798050156 839109129 902326242 49601542 634048031 537989640 840178413 260086281 986448127 227666896 703748142 142468327 456931563 531961292 628141969 599725119 962065234 707061929 957887285 591220623 851939170 639110853 803183852 740186878 820102488 598319887 822024488 428326618 716608939 872293866 961007787 583611547 805309090 703512405 855596805 271699255 534787807 8459752 313353435 925993814 953815587 390167301 604078339 583365858 958226978 542441766 652895312 593967935 966383522 847066506 913182907 583433811 949797179 348934265 506125282 718160440 794071200 162630372 184267990 736542165 920742348 792578787 857590170 26343692 138906412 422890869 852367785 333936868 615488642 818965208 906110679 479935602 902800198 150673996 429142953 650404984 797736936 677022591 822049770 716156661 999510421 37898852 410282251 710628688 775187931 150460857 954331169 422015250 423521962 658195354 727400539 963981900 964370951 721345470 762133257 794197941 861307350 187647335 496806535 977102578 996127262 317545766 902987401 825398455 946719159 878095905 970700339 844079344 921366025 484577772 858484411 969664127 992853515 165101708 177610729 892964678 895709306 911826203 915847655 537126761 665966158 331720736 843248037 447986604 733693281 549288285 993895251 125548607 949609780 283107355 636049043 864373561 977759974 476759112 676097092 456914574 690443798 788231535 845838428 574768178 665400648 445328181 566366671 656998257 816608153 601644051 973200207 896230380 935660740 207739895 716018714 592932655 959360428 582686050 983092340 543608384 611833537 685672846 912660200 636253590 722076328 540142378 572385733 847937349 966738479 878819304 980531654 241548190 872638588 4264566 940279296 303452296 455832476 738055221 822754456 910854338 932536146 29574370 222309614 198712103 887195930 129044294 259225947 446506240 521166732 427034710 898005771 665265488 949268717 915935803 959917112 959864880 978693170 62052877 560419723 911703653 930755711 957674830 974815646 495798502 739117735 257592741 958665457 921256037 949759946 297916333 980707111 337422872 355620930 599031229 862465150 966245582 996806729 258927016 741961062 914850260 953190034 460189804 596895153 35853873 711676779 344222575 698623821 909038781 921065384 427404339 991811148 983641188 997425465 759114362 899984113 527140138 751206701 764032663 777844030 660272284 902302058 202182120 667528159 929405 662457509 119991107 296557538 367024009 742792736 107940712 719818678 778627995 869646381 253374370 949934978 763915869 827652191 284485277 739072507 72763412 460199222 796341914 980326061 909875357 915649767 717611306 917585011 33484014 654901531 434401926 640710609 342466479 431750198 552280938 912695576 864703613 934141243 519875355 713742585 313716313 615267232 975219441 980604218 535861096 559679381 996382465 999613855 74043981 496548723 516254457 796450678 883968419 913502323 634257410 955695205 779280039 782481988 676826379 786774239 10961750 809283034 995941838 996353425 592479994 764452069 939304212 977710011 210704848 935471022 92290824 409501763 595165909 730226379 292857421 811088076 927264429 994908002 610328680 753702621 437891767 661122248 15667202 550459822 207803676 344993881 918686348 946623523 687521313 839551629 891966759 939785985 413044646 865125897 684425078 923978390 404982149 890868075 148174577 428236706 588623497 773250109 841296953 966726407 568789382 587213181 199671754 375046444 148541329 608579335 884153475 986219026 640555495 711265844 131499986 986971339 786893398 803336187 273120472 797214300 411982524 876820980 651427911 676417730 593035906 845253845 584315099 946423415 670960869 952353249 49933538 137415171 579449519 595487170 479352481 923087975 165172246 253305978 882369926 917958268 83710659 255472061 921889901 937307552 717404307 984367193 90187444 496204683 405290385 434193161 701198313 959470623 762157164 834036137 430648041 703675286 884657054 895863386 311691495 714018586 69415991 205586829 778846449 885857891 521931165 942855473 949570033 958809223 716674194 732567461 437310577 500282038 898876500 981718545 72794873 392266188 67008840 348031003 323901123 649518632 108498232 812633348 906358332 996272263 28298045 273393439 965445914 979320711 492078811 978534619 759458592 935210754 177041159 786240507 635048110 912168598 840269384 956707581 630097469 860673365 420546282 544768796 238831085 692454571 749954634 802309733 172153102 422898243 816569761 857067197 196973072 688647642 153223257 645280448 761739570 935681153 183321124 301195793 613947982 882174875 572996511 592160559 93172080 909819810 430116485 986026323 475454318 896664827 677407919 693757416 398086944 513503817 943266090 960109202 221643903 685288641 602593274 780548935 790471845 792398206 124745837 468601289 761105382 989115336 374935115 411094431 440741696 518161253 968246486 979632244 881519673 887629977 221094443 485279658 333175764 523641953 683187568 742922372 253757788 308149965 359732892 389524417 517270884 686434805 201434933 776098055 100046357 771570036 21257120 434623111 806360177 831185562 3421840 424578455 766215356 830330706 587575135 784982150 264781182 622511099 599181601 631497237 742143537 925997112 969918058 974866020 519518305 688961661 215319505 730841601 634906935 787723056 812808302 926559555 187506783 974044356 890692125 943748383 603616239 931704173 902981346 936528131 291655449 418876623 559937382 652574133 614684384 882777981 789539110 818555791 717565190 882870992 523877358 623475740 574121586 753214905 678870279 873647221 945392111 985933995 346436675 398513642 153806664 392628229 652773192 784084370 691628062 814841282 713688955 748046750 642888183 924142039 379940281 597412325 482034368 745006295 655235775 837333491 689824630 908442468 374369058 624270159 738875486 786301003 241242150 827274653 627611816 828331697 965997890 996441455 897347431 993210448 749343362 884170395 780305250 987289180 354357725 479970762 576459641 591863122 971598119 993299224 447559099 585955890 729583713 946273173 234646186 259853099 582913755 949408725 664773706 860389854 359425096 752660834 66000445 784847880 657092857 868145418 808159940 817398205 871783041 898154297 105411923 935978904 85179731 719345092 911912587 991861026 811488634 849143508 772721439 805932170 191296085 335869072 529221879 959538791 784856943 889220949 102001756 903172115 174825269 908052807 391218332 867893321 902271170 945603455 729941252 860630116 769050450 884862085 706128349 991165954 184774198 306460609 219847942 747089209 502914591 831031850 842312762 900662332 896459642 919782049 208826627 286894561 444734676 688633080 194386434 619093614 928132597 960506719 290769821 586865120 168170923 906323402 611781353 853283054 358631643 802822591 372232660 864167059 744412257 852870389 212544303 673778805 689776247 945811500 47399218 814438495 809221362 893580640 578432469 686618039 413509374 740372617 302460822 642646433 954666855 975192703 117386660 224552730 470637648 790188708 542000353 815393196 386220273 718348432 87869192 799168482 249471959 469578418 762365133 998541113 948964993 969760398 114104768 836984577 779318962 987891230 820417583 933022039 719016773 769010429 182360703 707224875 32374070 909583759 315133669 904799250 797088638 993349297 935609859 967087155 725243568 996984292 183614974 976211132 226181957 773520753 983996096 985776671 342393891 709894874 326181801 863090151 615858401 985848088 285898402 589558754 140671499 854562132 960239848 984817550 143389704 644063508 533123379 673128394 685563812 898170752 104547483 727889665 437726759 442823070 597739732 717708987 61122441 638669393 224319557 780489956 575626699 620453264 67892241 332282418 677980685 767221166 281834448 843148991 865376688 960894838 355829800 385576559 776258942 850832143 421845080 874125934 812993269 969497069 323833985 562449308 601728533 914068204 166733337 737725824 468521112 544629575 986289806 999270669 435126853 730117924 924076497 948274916 955875320 972727248 810543592 851699916 697653909 996189817 324185409 601324068 431824097 464960406 743786514 929917634 334522767 885921786 472056009 974558441 233588761 718682706 589153707 680518728 158597929 167357506 197741256 462399505 779800015 843070433 796427159 914401214 411891484 973610137 935404101 995468797 413023187 568342387 749648050 807323086 53518412 658372638 66632576 641047160 958069668 972920397 204685420 745352065 540740738 917574213 918281541 996851023 158510663 466248434 150560191 395736553 361117423 840757409 274456239 573135452 491662376 898808990 714699922 904312071 864609252 969349122 488455770 822801043 752826393 835700592 22665641 197580974 904091144 945743100 660169770 678872545 444092894 957144538 669493928 778035787 965130213 995910511 762479328 978088945 184964313 951151959 432031570 517280511 399941665 773000931 848653066 884752538 328642856 336134805 45777821 89557359 305373130 374226659 825628989 892099768 201996978 763599407 133637092 550322145 710757870 963543573 84577826 167309086 211996996 274503467 220870534 723190587 447206163 714703305 910285417 961453872 49701860 737057969 869188075 966279186 893782530 983719437 421987483 429193656 767201335 926277200 946528999 964602195 811710673 971858921 276764668 353806072 887519408 893987082 703923901 941991188 523711869 874588785 146206066 774014566 57646223 633306079 834422140 999369128 644273786 771459876 610821798 881898101 673941547 961450136 479392848 591970980 992648767 999594188 689733071 788659283 139179066 465957991 863083355 980557255 129457119 411790873 451909497 918708423 993486077 998477288 775331198 776909657 101500781 487269915 711115508 726936824 13145528 936808026 907068489 921086055 255618725 578988497 165824335 821086705 601231083 775595851 345134451 819101512 503010565 966146666 819943294 930183983 148821627 908613475 894721269 931129324 516404243 964346076 584968636 686293486 371517890 757034562 330716499 846002222 639051561 694440183 287713287 983091261 182967493 349362763 454167455 568862729 418627902 753361575 673750395 805546744 95464589 828447134 120751107 209334604 283929021 994508038 912133809 936201454 716447374 800241223 131892044 552854722 856323548 903554990 936480401 956307464 711518390 980545237 281416377 453659630 506157662 551556211 33969556 362467179 141292748 290877419 71767823 198908797 667646883 969777510 407233505 629192912 584529213 680198919 241284709 775678742 48158439 188080992 935770535 982804315 965460846 975410811 951873442 994299235 517460116 982858233 592658185 595598767 256883266 590192753 749799915 819521407 679547701 783703660 385534572 489346804 699185432 908721537 911862742 966266633 997747978 999559656 288846350 377574822 940816514 963989659 981727738 989013053 305901819 793901615 330377320 566778209 910833626 930351515 943377388 990025164 932563618 948541343 775075003 813657122 559903126 864823388 421673128 709763518 408561607 604713592 262659218 905771670 514257305 632299032 439785074 569562649 823755997 972997187 446293305 541624307 690270287 693091727 376760401 823523302 548336799 628707574 661195585 897928048 600099202 604541913 605734331 798579428 963858188 970337219 554697019 650323906 589506240 979055821 525117589 900872670 108724154 858576448 307097232 799659659 835058014 846022962 525328214 869415449 438225035 716912613 678320796 699225227 821840870 869104052 248225770 465763384 292210423 641162724 988970882 995617109 727001024 956104270 154086488 666405720 208846164 719070857 440904400 763024853 620321991 857854850 647661468 925000828 385603184 882580501 287134243 425860312 671281919 896781301 44403701 323676132 319348690 474793071 839754484 864070330 815939639 853256382 15356153 138351644 369358954 698333688 359242955 904827241 131560399 947956507 11566647 279002148 683103142 811333237 43230199 581721599 254913214 266729166 225669323 903154125 283177301 426070632 361860987 639792487 283351517 420792472 772423852 985054956 813554984 875655992 22994398 919931591 663332754 681572247 739875533 988237522 477371732 870828269 587756550 861066404 41487385 737607406 264072844 799147253 44880553 236556231 912936634 934605263 10337815 260289291 113279624 626557473 573118370 995560156 427724051 692801869 214444883 468896016 403703461 406576265 573941243 822315856 998132766 998159813 866244713 979932597 817333819 986512832 133594713 283550124 506307330 859113343 757387411 877692511 176641401 311268313 462038989 988336540 519696547 664567148 779886160 856986190 209839463 286771767 376985065 974839084 269325754 916320158 600440081 630909580 190414747 669627890 448810959 470772062 790393577 955173421 566855646 789102891 852458543 931034142 36826802 753860243 227061480 730892189 459206669 530311217 314354936 667332529 410744588 426471969 11681389 508508332 959759726 980392148 612086122 924985412 53886701 615177741 866077460 918633970 491795276 555905496 502231052 950029741 3197954 264485979 77758021 670079355 465565712 601608872 866776298 990319389 197996621 371008117 516841176 896500872 407076871 988096347 529708980 806347870 456851664 912628192 134578939 943261974 361529264 493017805 86963358 839237558 915403303 983846340 697553275 836737188 162891501 301613329 616977678 995905982 402475415 609550530 766793181 801301699 134792836 389101664 529522827 949088167 870754801 988439202 580994186 756757212 729124133 837699118 187854899 568629376 975351044 993698920 494324972 801735472 233932535 616223092 352719962 458700575 917434570 981698975 993914548 998496945 408862594 456705791 887463487 917112946 824541732 921265717 96532548 509804547 295771628 880893085 848495888 881406556 680035485 693870720 614443482 879827471 795779442 936338179 62484872 557673931 144005008 185902497 194303833 621857346 803691573 955414038 832097563 948984021 808785655 950964043 642039408 972180067 326891021 534028578 452689439 873478587 404338421 667598478 113330665 810598275 731790533 955657038 654638227 855178915 613128959 760167066 867437382 926163102 838827781 994582011 757366658 815673073 706455645 887770343 447845696 709213457 40556363 996213448 509663544 871725837 275786937 371178820 711625986 767569633 813983215 920730148 939705375 998015933 428998273 994697912 431660755 500221274 679322859 786822247 816072600 953962937 382868888 977264977 303497561 369709403 246310178 428782124 436194181 557623324 832774592 918048867 902521739 926461373 737030906 977549781 376956700 377385330 571027966 934813884 563868354 570702910 616358038 688509369 288850936 501737393 593026354 964606631 224146535 250563370 626097751 948584484 62835147 781844016 58498986 758804685 7631408 503455311 978071660 994312529 999798244 999901441 798628500 804882014 35972118 295902975 228425587 264755470 650237082 839829434 85912302 765189772 289784774 777343600 620335897 687966382 706937858 852674240 806123909 815642401 257727523 427503077 620861893 989352631 208800250 277137623 691802141 880224591 262306983 512050926 367715260 661511175 348458883 370099928 335743703 935657098 901068690 979350149 503483453 773664862 836810201 889440782 609533329 952416240 166746203 453285566 724772464 756157721 566002483 895173164 444003798 941050063 769796587 909581966 504218206 796072678 737795650 800292893 270250136 847575429 726657850 773468495 183765002 895434011 846883214 904968382 457648734 529471933 970229813 975455875 769686115 821704840 702597533 826474875 205974504 713563112 527380422 785674139 463320519 925340184 107777549 186329822 907135388 967465703 276968881 711706395 525954797 636323089 45570222 543975404 372399992 811377131 833002226 851685878 701150898 902558922 567680047 837856787 991276695 997248693 440661988 607502892 359144730 640458575 732266466 753970154 893660316 943666000 171108878 537096603 624126140 774205575 917646906 978645502 981992922 988751413 821129157 964851829 483320102 798413460 234192754 641833728 915698103 926406223 660539891 685093431 572463022 635056215 961483646 964536368 790341705 960943412 691235265 991361387 266339245 905383459 603224991 728340034 788247385 810644674 950724959 966495786 424870336 524904404 495334276 960522238 817167301 855987486 646867699 688686387 125013128 549114209 858670405 888508658 500232775 561561380 42666337 342874057 438257288 758626481 206845775 609468096 136514163 802252274 868182454 950670308 383174602 698708780 895482897 957130222 406968234 430725117 294840113 912909168 576311033 613672145 210250009 563949297 379683117 744982945 179285479 754019040 444592756 573731665 166477709 936673677 534691497 769192042 21738382 931571885 5573755 496790552 11991568 445645002 852603472 884716391 276987297 475326568 180301736 705600050 171347365 316379629 936719235 965238322 507509186 520124295 82333227 433614296 927203746 930656071 558976149 761471252 185591037 565979761 321820174 549553561 897599875 984932143 926629893 941029790 509489652 838171054 129934327 503163432 744425276 767637569 874808027 995526944 678101261 871658220 164699501 807914574 481117400 629249488 134958700 557404761 285382364 714905844 746711828 780145843 6369383 842513337 407300626 941184707 26333963 518667489 824347341 925151849 725781607 846353313 289691467 340150937 792911130 949903755 586817869 931490409 377213887 991911356 198115692 223069199 902498081 972480166 738335597 796217807 58714905 577767288 905901805 981242039 47361665 494791922 207322844 215577946 117170911 901707379 409475281 908049407 763746981 880049246 569102410 672313325 425469102 806823021 291946876 865828278 258729448 431871606 484456025 522261546 205294426 439650205 803124419 898188475 850483543 958785591 219792248 743784604 219807379 728441831 299951536 683515885 526769992 679967299 978202587 995704191 81924238 82760778 819799086 943646219 507307195 651645048 464170741 961686246 174132214 759401911 61110325 747434684 708353579 981225596 381431457 517873511 996085155 999533312 342763504 770590250 865858546 871544521 477552945 563733913 421212122 883644167 777392078 853319881 195639628 825920429 725807109 890579545 343878197 902222086 582399464 947681915 516887705 820168056 344624571 686319045 480419507 660882483 667125914 968914884 444335319 945109089 649700899 658393765 12604436 459134219 536484225 692620457 742359001 925738369 764501964 918027129 908729074 970174372 855452065 872806459 685082899 976970659 660665204 955293114 590879817 635662755 214068225 669798211 871151328 918429157 421778831 720027016 190161479 560613216 752402219 765336875 186747839 984374233 797808131 854106392 371592469 705181106 910346508 930461919 781140396 950614764 834436001 883534999 481150469 649464770 960116469 994646737 155989376 607552713 210205596 646163999 448720995 529534223 894617260 934850526 622469399 689766917 177595091 944460082 185976068 797499131 871114437 978368725 53469574 192162637 254964013 942401062 140243363 232016683 116136573 678022136 447905844 883119729 354279963 686667911 510956009 930583051 244168475 484298314 566759286 597824023 823238243 830259014 103062212 574123419 414446245 697913056 329380162 765508461 947366374 948752877 126529341 352563253 617093824 878430457 317817776 909715341 953158688 961824859 791547604 982466067 425861675 789020654 266743901 677545095 12284271 938212491 899645618 994085683 144611973 531457207 837678021 951188290 645258804 914079829 405278482 898971312 412160533 893332187 721813698 925453595 449588596 521027213 177263906 711974671 78898003 214346460 288760846 977977769 848306046 883815524 655833757 946250799 668705240 739116012 231233275 703988057 164424724 904361547 757459866 880829323 418408013 780047193 954097215 969765856 692745282 904097920 813726227 899744567 634573918 946991861 237597325 368719929 143804710 912123138 355314142 762483267 881229169 913316758 837660527 859410704 995860087 998682839 935075546 997250345 910084821 912884808 258013616 798254711 288426280 813494049 925644184 926166374 752202933 946758219 467020806 533166854 230131113 839101946 194829362 620241730 459820488 954445552 1494935 446972603 528000714 920758115 208479817 627816426 37064152 820481239 16013484 931246386 384212196 748938990 308532029 358647624 173631104 903757512 188469866 376341401 245834053 673807113 421637322 685560163 206160146 889880271 940030217 998811795 138698966 140081971 525590394 601857682 917314096 931667893 225337596 709198117 997169033 998590087 623176720 742772316 564163211 875401131 793511753 874849073 169620145 899993861 744101592 947467823 946177067 986273635 455528489 801416990 510439678 605796295 985362787 994205629 599744845 832458381 469921642 978033159 412374266 485227465 691784335 886733881 31872022 584262356 332268911 585938700 444191098 890961043 370078679 600599563 592000769 631643655 845487757 985634045 84007764 454561691 809252351 828686072 970141276 992409617 434818493 831230745 87440428 211861438 707872388 851186421 586888400 759784127 334528616 538035428 949381191 963251563 58174517 91750688 421466749 806343863 244358183 617816364 861649128 955110124 650807640 927805093 332355305 445618089 532117379 825657987 498153230 541142145 230639887 434403327 587506520 824880461 618490820 981031681 351107977 761568272 591421299 642377090 274250057 799169497 458664882 751900063 718599921 772808673 928140426 992772407 607712273 996258046 94165665 167170351 445286850 532950912 945681049 992755683 878838289 952245806 506401887 636742499 311517282 346768051 713483266 787597534 734355325 774722929 475337421 874911017 645018009 921602027 235573538 622206832 446876795 971278087 670405855 880454974 266668217 960896990 107054638 521411846 412520995 844425987 555218705 671330327 393713012 898120938 749787185 998663677 417323873 804346112 560424094 603166403 815173329 860738158 63726897 951663871 18561666 522029240 405780294 789644561 63153832 764523908 611426966 699798163 762155004 767158886 450470712 456343041 450130286 454722281 379212372 681323981 478946927 602881176 826784718 959360126 7153742 318957836 424051373 585542107 85312528 107576494 197899360 715619864 157356969 648539550 6745495 470009888 499885826 652309660 925260720 981647340 791870456 854533865 611623972 932266670 585874404 666101028 535320626 536753849 44722643 417695828 109884730 707832013 597654268 614828678 803940447 822758059 926485588 944901713 476688217 733296084 449153252 986175086 869941558 990756876 480079193 527652820 301329059 409816405 789581842 978054647 100993523 900545564 904979943 942523968 727994061 728496299 995627894 998830507 678659980 915152534 636641251 951897893 551836313 742505353 419369769 557732726 122195492 719092117 219246187 568996534 623539153 955020220 18254121 78797474 408887211 800852171 465300916 485652902 502320589 600523084 699836570 836666356 953194771 999923436 552887432 745734098 916480079 934845534 403293317 476190943 650468188 707725262 119760892 621291941 53862518 847000894 573457286 948458092 376712037 591231906 122634174 680096379 858753784 926053644 947355289 953904381 170146119 959077576 868172419 961528875 647894965 685423792 543197706 609099201 962446132 964631799 146199272 783944884 882932629 967923064 935817127 959186812 417864702 580874203 421311404 693079492 550826604 663298304 412433452 480057290 607241124 943768429 29881731 397776041 446966998 608443708 784099117 940143179 517887761 877179475 80451628 114778309 152376964 501870365 944954281 958421950 106318423 180394161 778151167 862059505 542715508 968140476 573320229 741979651 604384624 960005715 360009005 450981760 465209631 884923891 966466742 968792594 6917922 389987046 733374233 952146831 428554384 567193062 118481853 892175183 927180231 981958186 5508133 201400658 812926108 964467315 20893071 40458398 855784072 905212854 703539735 930875879 21427555 815396188 574326513 818824448 747381665 781943334 945423831 983019170 849315564 985108553 491201436 558845718 243496121 332163153 790074018 978507865 364781537 618694418 239229287 469574381 872860484 910559640 677643201 716799856 307053967 811014138 482381809 806933488 815879604 820309824 769036124 872989386 11185387 562076981 21030363 890193997 13530200 315896163 812692587 879104491 816554940 933720077 872299357 930334017 455450426 555890914 761679408 963115195 158914369 943535810 433984485 536918089 995038425 996225178 173704287 647417967 308094988 658341532 701007283 774966275 670389768 791238228 244083307 682355482 911942239 987299106 117489354 442819089 676636191 743184281 861211628 962679971 417573607 774737388 182992446 865658351 442992499 513200448 342550999 667105652 250237979 307255887 387739348 400428720 857340734 901329020 132720291 161705654 611277983 665881296 318891579 992818810 389148156 792614393 463940089 693382321 196997787 766940940 929670503 977711662 441555589 880546536 413802610 625413898 236229555 342251587 951647688 968813934 671835944 831512524 60540240 605149594 20817751 462073772 3237981 922568235 631732888 725717927 812660383 962815954 700985492 714975312 501806334 733376661 336888670 593749555 292145188 332420735 119411923 642223949 814262906 965626179 41893266 608344508 994952761 996334876 822817705 868219461 483146651 746169326 814960844 979609948 318192438 864007303 129677116 688586818 263567054 657812153 705139479 907883854 691035532 857318819 967727815 970601017 566906775 863961385 569297861 781874492 19896655 455081176 429113654 467532949 589563495 984879962 710319365 880975055 707959804 986018287 209855351 492355856 680522111 863511520 703551723 835739358 117283119 719687662 930462764 995542100 207820121 717184850 416623864 425044798 534377740 580975136 274990537 531309882 116325769 651288464 496709495 987715376 684628112 716911744 687757704 969780508 979222043 998974143 99013805 926556963 464489183 721988777 184954412 211793026 566632746 601195052 411418215 774703382 390174083 456396917 963023018 979732677 972630499 977085154 474917103 678130657 475915108 751944009 904940803 986915257 427440325 571627387 253719519 284746049 877934818 918787640 803294238 838135235 689583783 920312020 612559700 973014244 836113197 916138638 163078467 331354642 212918474 998629287 372497386 389959675 55763132 596972155 797555893 808188491 456495851 648088896 103800966 756230465 839485834 975327539 688328717 939040040 219744491 726288739 432992732 693822723 810197215 946635092 948359432 978728799 939920053 969353089 304620228 888244221 92822274 187020430 105236023 203312519 16500219 555411086 190620107 368752522 974573381 986624887 437450572 570584750 244041670 542735287 267896379 293664410 654162666 761421539 639373135 916500523 609594524 932783477 818133995 883115205 174038415 464151587 56109953 506838128 679366506 685278888 944843864 948128032 185645380 765427158 822433928 917703703 452350185 498994104 463748233 965981813 531956061 795378479 474226482 705064684 857028632 992749810 366464332 588306678 109158305 288474664 534201949 671252007 330036939 830856515 358717668 989989482 682150 635561323 838263859 979519942 869603603 912597837 666345742 948578458 665421038 752449973 788229959 863905653 455973803 900344249 800277694 894083858 898693383 908449782 952643911 980076233 598224569 860032484 503567253 688370779 852835660 944448816 147006288 409067851 783327470 907699876 515625864 961196772 769632870 959430861 386343909 881276057 356767844 557606656 805888585 848301311 216295668 782553913 865245266 919311951 526107509 854484993 877737047 945467971 358287992 629109652 566206746 841110043 561166625 900637796 285798431 623821370 24575976 549250862 87975250 487369652 493158501 535821316 884274645 886378031 993887014 999970568 676437225 977444865 344934280 741034586 304800730 667686109 436880099 773036944 706913906 729598118 211089824 775904106 918818182 941534649 148079107 580457773 87986292 835249618 904158794 983661660 632132225 937269037 741158440 862083917 201552489 584758813 340983216 443089272 631127028 761331888 680195620 758554741 895937409 972812730 909130182 957206494 34157855 854375960 546915886 900935494 530672549 625588241 837450607 909095904 44969940 967173683 436167155 931660935 161917776 429096378 918248049 983528419 354501821 392025449 861267471 965994060 123231369 165360970 173995992 179865955 739690974 835808087 850872157 911755672 498814972 691721073 116419954 259167350 384538390 547348908 797733254 892889380 938817378 984256982 847476702 856926266 911645364 942281217 687740760 943109057 926506732 987324228 431228838 643800844 489942060 666814895 316969966 359129231 560432004 815582873 446282090 628323783 613043038 783540284 58867118 61031789 863681136 924270653 44899181 339080716 413083837 905204803 748521304 900323564 882390621 891573146 625054672 844949922 60686336 881586999 74760468 806804743 832431444 853004775 433252510 460830516 196032076 306247744 427153257 518851900 318333606 863943717 25574855 538928369 630820411 778531842 227139175 989610388 856283206 952267696 963424542 968220676 323438084 736337060 397811957 940819401 295420434 976674982 795424712 828926502 968529984 989931597 502111130 583172908 910996674 954625398 371879365 520770686 522267646 567216289 563598403 651613686 170348794 547861250 841397043 932987792 115997053 571152533 761011063 922011269 277168124 723899585 168513225 453691905 893721955 906024590 924911963 940515342 949221024 991318145 675838739 981426901 674334984 680806216 150653965 541779483 305662592 427569955 969653966 986777746 952623481 986846506 563511673 933173734 754215954 806512662 741642294 888721927 414104710 525742639 78316131 553148436 950233086 969121199 23791406 250027248 202837336 421032087 223927195 267947834 134786342 148047390 651883014 895424951 558018340 962720883 855191416 923415533 484444587 909892930 306909445 877286262 951943654 993042910 4033741 84260572 477989445 973181330 421935686 899795472 127855439 895380093 718195809 832293375 742363252 911101269 604719271 926028547 659641315 744759216 992640429 994896230 443703890 652526677 997721135 998850936 872703361 973936733 59360366 420125549 537104896 913466325 234592917 385046784 902445976 924620298 699703140 923298382 377796613 496714313 73230684 911364314 635310945 725131306 118652351 779759872 275308774 694682005 770385634 795988079 43847666 330863957 911709608 944566867 590119376 773097537 588885029 793484578 225611029 975289821 179745995 544650561 428657999 873522831 148338353 769964194 999067532 999485837 623209666 953819322 960998910 990191626 348098959 485223428 301328725 685980020 240832894 607837079 637192993 793809630 438705253 926010732 293052125 692821755 158741486 567256851 655998814 727302780 248968689 773022846 180566894 442207398 752377086 939878068 54389548 136155979 426317733 745060579 863176659 958626044 717093373 743772421 647258968 774700732 43689636 559315249 173097745 569079185 935026278 980879173 192192315 641492107 148777920 840116101 673579 692021205 402872677 490449152 696405547 947630837 334097971 743186981 730593055 905732203 140587570 478484977 297855918 737273062 736842499 763607451 112759405 365258889 359160450 369912987 83331630 554491241 265024270 949555076 411238361 556497511 715173175 770894484 465953928 696135380 596442203 725607007 856421320 904287253 243266818 798014116 874321445 938820105 572324105 578525932 250110632 888471649 233491751 605808122 827305226 863659293 223364545 715016266 895802496 904506242 530786275 778051107 15624569 855048397 715588186 797869630 206101015 417533449 825560096 918826365 975933930 980008538 677600989 720697112 561998561 600359346 165731247 254811638 615381968 917449793 614084481 637612585 419435033 834054505 82147206 145955484 863425366 976952628 586535720 870166915 296297085 616295041 70900000 426486880 163477980 197207878 383402193 993811713 535006942 584990675 472844954 673209155 428093563 721720062 189119565 295604333 570182452 689845414 686218278 767299143 630733571 652253700 631942243 639096629 729260122 849819676 219508771 290068351 633898173 710328748 418006670 467663574 552684421 922301682 176710393 369388547 320862609 957385064 111584286 985713086 604671974 940970123 170199235 654751395 21801709 660593116 230889652 641201300 155844830 786811173 539691755 924046523 868119116 927476966 189509373 730206192 535764145 974316637 267922135 692602284 399814084 935317246 74896582 659284242 598732112 803434553 195698110 331610944 241594042 824410782 799403348 938631178 247377908 767865531 178179564 341635404 38359831 652557764 104953799 415192175 271237575 889523836 634462108 965601310 289291832 812864081 634285151 811877108 810197589 896178699 546784836 878439916 779486075 865184239 768856592 844746091 189118704 978268981 701327406 836497038 532810439 723033193 737245207 938195378 501749951 589524893 734671858 735892015 255957993 877765514 451044591 713085081 364868110 721852093 308006527 995736806 376002467 485787605 302559010 977033418 414608532 485056078 163290925 652579246 889702503 949610803 323489910 507938079 718834256 725884736 451300456 705440131 561927746 646029079 637409609 940394567 750191591 792027480 766533560 908466680 159739861 686698148 754765858 805025009 329348651 674137775 287802881 970005550 736774269 883515772 663431904 903463039 84895410 732180402 651580054 948488870 305602401 652913376 774400394 781476399 201315783 906089297 174502259 878750556 837936325 926588857 966614529 997824247 391692044 866997952 430470997 637561862 362575289 912223409 951084234 960834424 483869527 669949768 389265427 646607335 106684837 323332479 234528441 255798817 377358055 900995675 430544464 502598478 501872431 998668637 639593997 923169646 722237597 849576771 924365639 929694831 283187086 344996436 500824951 688954243 629540226 890007469 632954451 747801619 504910572 535915326 177798205 999406371 303169205 536457046 358812138 639093579 400328563 933741345 787362404 876466079 276423478 919153166 373253435 668108949 594030314 910795248 703408036 714007840 585797484 815675265 814326642 844400144 329854674 392920027 962509197 998093357 488400385 524073427 430528295 634092145 549482403 879574519 89507193 826321424 552054858 764888452 620013058 701817150 664042287 836607807 974111247 993340684 732499926 854085740 709921961 863426998 904573779 921061849 809916343 981962886 732158503 882748460 605677537 951037058 337561947 370477063 809979570 832562293 171694363 857360152 265159134 545389324 641878378 887260339 240095475 292157501 442873676 809012557 645744535 744671066 763304241 948415025 568063125 834135388 198442838 748555535 519264268 805189803 88762150 319392209 35627242 375689639 752401757 826353718 93414299 272508370 431517655 995959000 20960201 642101579 588695301 963617600 506808488 586168609 428245829 972883411 576705397 919833898 284274649 827985056 478555725 919866642 204087211 253612081 159047709 867518720 216903069 495705666 839946448 933325248 840108154 919858612 130776300 394633973 136451700 908595058 604267603 683502392 742331445 896977080 347181387 530879639 19561721 290127373 589171278 826288827 542001152 841774621 638388182 671389538 222126162 970345201 38210467 194384644 981076424 988024254 998554756 999211386 597080791 960811914 912987723 961802210 384893644 827794480 211308848 739537884 115204482 845581958 702561429 787543196 298756716 959203657 81008329 939244591 808206855 924587530 468488550 469662813 832545899 870813697 507188191 635119739 466464069 479850978 199621449 846923208 860525738 945375814 694584626 878664049 954817595 999603619 438717502 845318586 333869727 862465292 366103624 885322955 333339128 519767288 523170079 745192903 866721063 974913356 221781645 841384495 706009257 782612576 821894248 873710722 805628817 968269004 943436588 946789233 579335446 785461581 256934860 732665787 672514788 900587691 604953291 789690166 370318265 774452007 64383835 106668350 800563116 835424583 666888663 704243744 821262797 975466233 790051490 830325384 17800000 790528288 97737268 415232587 343352192 391367837 92542743 202774079 23249672 472207137 402099180 520911576 324644283 939724853 38251108 285470297 981967705 982550618 61024126 75194497 501040489 768441833 41777871 760608827 60374570 358966774 525623334 863241083 276511896 287460469 879264812 938862060 82196442 497325381 719664109 998353465 968671833 993305827 131049018 975610447 740056249 975897972 439839532 899673077 478861874 797456577 154990796 905042826 87251858 592624304 22469753 218662548 282851164 480615351 387541723 815220079 721357934 838149149 469063717 973798044 286192326 415334223 118099350 455436939 651930754 753365386 694075105 794503272 978503191 993036067 780335914 856414557 566096737 825396131 276788125 280875126 82665110 793842892 905158734 940942331 561426989 854013456 658413103 996833569 122606218 926235801 361439666 970819133 745745279 888900382 958208819 971083707 252573765 283577345 815387753 931768095 419478778 650862977 482419291 884407777 229916657 549295133 788660003 935394169 222250770 923331517 788624303 961689481 796772246 854062997 163623127 329505689 852185103 958289337 652247982 767798757 488758503 970956129 176482942 706927325 102727517 112023720 939826730 968717120 146809496 746860021 322298598 642829949 133731810 184651530 638471246 732786800 897705408 917351107 822300161 904198553 91230841 708680088 630493813 850038719 238928833 473623180 336265881 703975815 218489516 886135320 627127419 907590202 22609540 563509466 395613302 706436928 660638671 870540011 835600937 903629604 408367625 517110295 462350126 516168466 827969473 914282435 582768593 943428368 194499609 758447455 352036882 538280269 62577415 533143304 246358696 261173027 239600152 480072220 8696184 510761297 974854936 981941689 731683204 927762433 273330104 876391455 390080365 536090100 228364324 619722807 412917410 447540971 509605960 751514817 374639543 791097738 291240280 829115684 213414015 996942990 366452749 636726841 803329301 914024077 830480494 966742926 794607251 971946154 784856103 788277549 395988440 715129406 321873963 771391990 874117673 951742441 892615846 908910729 272122401 355776868 100343818 406688347 279815117 803301575 764264241 871792799 738480699 756923109 979732682 994511288 625538290 647049552 876112306 951758466 904280521 999657786 806889909 831451588 47180448 666486062 11223522 564993891 366747730 817691642 988824330 992404353 893372616 914240778 884743012 930663733 224968305 235268068 139952181 825198241 705059636 952149079 953361926 957809218 570253387 822249305 5479659 796047070 682814669 719147481 187302946 654367488 701968930 903086491 240955247 657848723 681747606 912186006 488675772 677571037 410136773 917440522 351685066 931961341 742136429 999054348 16625389 180929562 285644213 635851086 467614835 612860884 827984385 870978538 866798487 872005301 242169715 316415792 15400004 753209455 585043916 878320870 668483041 999161082 425998484 672893119 686662796 983365329 959680928 977074629 24158448 450133565 406976913 628012255 161097670 832335204 826103204 914373812 936056490 975819015 781772649 886336085 706908167 756183504 42320407 787701528 383722068 862986952 496351529 970106619 364544544 444588416 257318114 876039811 716103058 729885283 706561704 812282855 300697930 521404030 282625231 879314925 556615799 776605474 204880416 893295177 491307590 740989736 151934398 867248894 770443430 870575732 807457076 892942075 517747570 804024156 169258468 655864826 819902083 917247282 421496204 517729386 261117691 706118682 208628324 382954429 150513831 906977526 318357194 349355203 943726602 955229976 3362418 620744298 479293500 944370228 443152348 782678831 163576453 834788583 76344239 985052109 457550009 565087007 881899867 904632378 632603896 897904000 453163886 927209303 646180325 988330198 926948418 935670064 7149752 592964976 841471790 979217630 268535947 575736020 399235079 791135160 443200776 448176886 988515068 992688908 457426323 806433530 893771444 956228346 475603657 846697285 862873004 910076399 396855309 548956031 773857031 933816706 558130057 803479427 31541699 611230861 399104489 927964649 141906606 450567237 216699149 610127191 801599910 841413468 207355842 882711020 532580250 974883994 733427005 978625102 206916453 967301037 986559227 991428403 363778489 907838034 304329318 457142277 700471875 744696203 399783902 996452253 267891026 272540549 738019232 843142661 591325103 775516786 689520562 852150350 179350585 204928840 337511987 472290489 503485500 861966727 205739958 406359475 618372319 875450537 382974644 551495262 923208351 977077125 709272729 812889428 848240493 947518640 946374008 965667476 499041248 762582260 716850434 843211604 944980821 988854190 107101597 162152960 793235897 799031498 138865822 736132820 535946510 804880501 949612309 951858312 958485334 958706834 255201104 621554691 881106466 994998013 992175466 993178776 697396978 805130956 147051880 507470496 220412819 252686704 801908387 928540907 892905090 983948902 82822441 887117854 952226175 984434916 444798796 448442008 585127974 597008503 697650231 757148348 887632221 962596973 249700640 954845652 273340219 806029957 901867992 955129820 564627214 743476636 720024571 813170580 91090928 873906469 234871248 303231836 706988472 731081147 130979573 859764727 750502750 864113394 545463115 888924464 308881040 331627107 481334857 847196476 713992678 938059597 384012877 431208237 60108213 209586608 822912517 891868653 141882697 471129175 231357529 897216881 547874281 788312262 135024997 219284325 681149701 990250996 384885299 966109470 227551883 894498592 13623228 606307790 487953412 864982491 330049515 702058913 513329384 944290769 450454989 825460599 441125442 936622553 825093427 830541572 233687065 698576777 888174854 937680091 156047266 459266102 116136101 645865074 425936315 695704206 726364627 991321545 277927117 361336390 521263867 869932767 535889808 749963150 707865745 800278240 776882209 911174113 840533119 945962765 611658181 846826658 573206487 634555806 154085541 207504383 810032573 855197636 914018045 975297303 852686597 885272311 95046003 572846290 832423903 896814062 302559039 654459602 551853070 893098427 551926845 670505616 829463269 881318643 442638354 585837598 733128645 941439641 918839170 946841978 508185982 555754495 948615534 972266296 81864623 906320959 510005282 885326645 40174265 960546702 296556493 839971431 857134214 896642786 641735377 780341124 732260486 971629123 383362064 745546907 273539630 889717304 784556518 995577980 720075329 850157426 644280527 819690710 915851748 988775203 677850554 767501937 885623255 991202667 868510857 919040850 675218319 862602696 628824387 926211317 370279778 464190632 436144742 796520087 882415555 980934167 525286476 623939329 757797421 811319206 70201897 84259664 915390552 982672610 863239081 938546955 181963814 212274336 489564949 620350898 407524017 624274857 861580235 875575087 308400489 708518384 346060923 742609366 178516657 492216639 402390122 450253628 724927075 779402625 968391558 986426105 41602071 477791237 41843946 357583924 232746117 429169757 752241475 820505236 844115080 889902191 558351424 822726937 201730598 382445595 80276225 433965032 953220822 971596994 353699372 500657337 64134022 393213691 73605391 729049159 418961514 421711838 820325899 886887232 636089377 781721463 244054600 831994418 292204448 367518120 574443692 645239414 201110254 265436747 991681157 996761970 674941317 993437576 385099014 628489594 930470376 964567043 77810607 360110144 529372459 851728604 364355485 450834387 856748389 894869770 242090546 916238720 38556592 318892147 287775137 827246921 685267916 747197298 47517310 983740599 137785568 236818352 23964483 956739050 285344029 839728814 431166856 431756676 221890120 482990189 482058052 829130783 961770680 996965650 828316711 852412037 345647169 736884870 32186328 304925504 694936766 728573593 101616451 713508714 190718564 349570516 508443105 746319537 896074431 921384845 960548486 969765458 334746881 613609950 215241591 453103667 510096446 798913818 420374541 563014633 472205785 543592066 765723225 805118388 408127204 870186915 74037493 121654346 833274951 932647009 50359523 439476611 938852494 956702402 928913624 949161780 118027155 524496411 74878887 387834637 283946001 874048578 707525296 885111706 675819965 824206653 695831664 882637140 98055269 613322975 261473080 818415989 42672866 570134383 654620832 814125275 645574695 776294165 61970110 583006625 56962568 768364933 12224099 614657433 707881755 736677524 926158929 944859739 452873325 752829492 158782403 260628405 183540531 902436091 123615457 533745146 669681593 883690636 43839737 468264875 869435484 903568162 375272823 561860963 898723473 916342677 759786512 781667633 673628238 844874057 807676375 813821558 107807951 452044458 719364350 811694431 212161785 814392626 128949447 443801548 965689241 995826315 579537381 605607450 106800226 948775633 116492235 842838415 803114700 850236882 764528359 902539838 579178542 920252619 525611168 988340086 718455408 901619267 591459721 952925880 596465314 638099171 431120406 626680420 187160107 569270837 475789089 664286174 46140952 994650872 266611828 303976454 286224532 774850576 415732605 950277843 436126036 776853060 679266250 798282943 579460464 594410891 411427718 865398563 350321736 673921245 601227945 659432584 26929672 649966439 880323143 940203123 527687746 587907170 579397970 623863654 7038025 26974801 368343229 976165134 886818258 961056753 754143676 825311477 873125487 894315038 536876401 948823342 804219799 987328818 487051719 661255456 662703511 667757717 3817801 555542957 827923064 941728361 244415411 806271630 711849166 811287472 611576682 832802504 924288924 972163802 503213087 590469138 64019470 403153527 675404520 998228998 506402329 815963020 80746440 681261464 951319240 986404365 217526260 880027120 244858185 411314391 905814259 976773512 22300649 655834450 877374191 890751524 963618041 999145249 619045934 923710203 522042254 628823259 781265530 982618512 794703505 806898409 926972563 985630004 228064759 904482305 626316169 866297765 228825360 350008948 381629127 477584224 570479735 650776106 787421542 965441956 917098560 970273721 602634534 948325037 696532264 889363626 824900237 842387400 533306736 663814834 861397323 931288291 980389259 992552742 687614819 872903358 518474370 679374092 93675273 574974513 948735720 980036799 846300362 854737908 853441270 942019901 450661203 581565318 870276314 989603263 682557277 739966370 653411854 706606745 203881594 460232315 93463023 643382369 938391064 968129525 149669915 656732581 344844502 512300235 603381357 944347666 78555718 371612915 517149311 816384624 176670662 552970666 852863652 911635364 266644746 387842435 733258714 791405338 782191972 883685792 37872522 488667492 18259317 829228871 921522380 933715629 537714129 721780568 721610565 843156730 991606931 994904554 730590642 742758462 815558186 842751835 228145700 769483076 558191981 872748325 932648597 949237854 78621183 444331274 690525254 801677398 663141563 945637735 563596751 980848258 573895674 679923991 610425339 762591187 437137659 938689339 964386560 981154499 802417249 998358435 314837458 747692491 51381606 640585125 424975045 806810206 699110874 757047744 446622610 867811679 707275403 945309298 985827859 988018066 785209436 886068241 260531737 346703791 271930662 587146508 412057365 546424247 646490129 661257726 948064508 951294165 549409414 882416450 789899070 853960669 796018665 914788405 909923606 982181779 303574999 858634038 157105768 823206203 396323936 916664481 603202209 885874505 479144843 914735836 101091155 992997158 6205987 148454639 901613777 987986607 939174250 973949520 623641135 893556393 570137946 996166035 378537282 532533629 443482375 634479396 753454591 952772074 298980531 410888854 65585857 636522965 254277507 810327759 104628648 799550344 279236817 716495952 939064367 980954914 740074053 832982921 358985162 385145184 219777520 371211873 792849834 902257399 648759547 719777150 363361917 709473003 649104772 773436243 992700700 994940493 243033812 581769897 641185387 934301751 929624174 956967299 773158291 989513173 898660548 972412945 378198496 526796874 97520035 201725201 938738187 995561620 387036217 549367576 333841259 976148649 82639909 523926293 639958760 779547403 530669638 633911183 743472918 869931152 977933081 985429143 944667051 949115416 274964071 778184932 353521894 862379208 663161071 846258266 231386852 653371352 275949831 608347822 28508335 320258024 21424504 883030686 959011079 964611639 250295586 471210498 94177469 452151264 617999727 934407438 433559872 937380837 727301079 822930359 714314185 879976174 800299656 932412465 109017157 863656341 427468026 733282417 17708968 613874907 854290842 913675963 703563932 726000251 398299947 900024491 349709449 760878111 651401301 679256017 729583933 834849993 144386239 703725703 996161939 997621423 113789011 617853890 356633648 743840075 458140121 517511107 453997862 675009474 16906048 421899498 970806194 985894137 111387120 262435110 598929720 604051672 488889658 654427113 99920157 300121816 853613748 994841276 17006991 570529439 124454536 347493980 488577515 840197783 453754270 720114421 518140782 750172984 254879857 287572046 952977298 975858193 126610880 298260105 589206020 931656359 812932587 905427546 422252294 961163808 147370899 287403353 998805312 999508449 328197147 412853774 400437467 951314977 953068490 984821342 724111676 757093410 351190136 850791529 848386941 864940863 105798688 318796939 829958910 856963967 659135162 755182668 102743198 810966760 384540716 397829001 872633433 958247392 999207064 999284023 819835416 839675832 22478769 941218587 877670185 890450115 606351554 743542449 398171280 472514762 627458031 984309326 716792182 900985420 145431999 181350952 967130240 987304978 452205172 953787430 303268542 687717726 895764162 961489498 411556480 862593964 414601810 891672751 125033812 827695182 589254871 956505725 881820753 895368427 556658364 665141271 67368241 820923648 663574636 766747170 806954280 993103471 297213185 454929664 90236536 250159893 442333243 518486975 284014076 813737404 488142904 965832396 238050707 613752919 842831694 949031115 266525491 469799072 840496003 975697550 677526 591543676 850661249 901916515 893130522 986874889 987592091 996711219 921762753 956450611 782547283 985061346 528765386 568061402 617402447 975149889 182045843 658096386 297423122 593733094 480095764 817962015 174741288 560960245 213139480 292931073 594186035 816151775 335340732 884663312 699184982 818140400 476250497 902725860 645874972 666471895 686091704 964568332 210534976 511192580 91041296 703632192 407903763 604189356 228676911 717606617 494594845 515433157 889715603 960237070 533578637 914042339 34462493 518466523 553771442 833954794 650758237 843621742 782415125 872747425 423414413 757451878 113141734 727879531 265867092 912398787 390968009 943501770 365179202 971040224 231103795 752171851 602098128 605327096 400670671 738507853 375325880 972545462 819282467 832784925 98583634 170199714 433634042 976705509 20512572 653056749 676747253 950343425 920374060 948279629 141647942 685072613 509458719 559821961 539863464 845833626 444089954 672430597 349782296 661510241 712586137 999935381 379533709 766036349 14943056 706180640 203342934 289987395 626689701 926317321 885425427 987355903 77691622 919967904 440195111 872471901 754219496 820514182 1822558 612853668 623622974 913021797 350562666 492021968 225695075 656947768 959625348 971810088 504503939 875589581 51784933 318345475 528179959 945511769 37302060 70574878 851099940 966246924 422054790 842462985 975598310 989290016 247743090 662471636 36505221 932133200 268990033 608266334 340599757 967064359 248279332 915874390 81642353 959825383 690177660 717592048 106214717 137199762 514688411 674007453 557646304 738059280 312143284 815795752 123876610 721414494 25082428 693133183 337677950 781388978 800514698 822475151 878454921 912434182 850265612 850567625 181227502 215110781 368304474 714109000 424221927 791092128 424893589 544364413 417739713 726949936 95651048 910598686 544009288 614241079 758451021 992546600 321028747 366984490 732291103 948834658 584428471 866940451 180511437 904822512 735236556 861263914 254625941 360841309 510755109 954387398 564487251 797854116 446500109 994357804 74478691 608977002 921786615 962951590 455636084 691087181 752112775 807559213 744839098 858800792 457149024 603350306 850362097 864119968 591554128 813986669 959621407 966426827 347695415 650018828 645023001 673108286 689829920 831309059 133402303 262425715 67081813 368594220 870312349 954183885 758050714 845075063 53458220 767909020 371705269 393739350 820469756 840405557 437388399 473099531 19943184 843449832 184460882 998550634 335162590 464068230 6859440 574487027 634352110 914216068 691282405 805293779 90738255 114914487 439443128 500817804 131337709 830745547 843385406 978893273 800735226 817933137 226721351 550125259 75543361 624385143 512646119 902948936 981449552 982591976 694647491 839462106 131345124 253854416 825272366 910453833 750392512 928915042 120790741 282534980 433423267 559894664 524994490 654149849 133502903 735306406 70261507 510018912 372057817 421265646 562395735 645592415 30956005 945979343 716633972 919023095 432524132 818903760 762920279 907049356 222028434 398975754 664740160 822438400 831029752 962703353 765329478 772160813 453938148 828230282 493909120 738677016 436318225 746994552 400052192 948543466 165511150 452750603 773024790 980526963 286413873 829221897 509198260 876801867 559609484 752995613 887665863 894164873 690246514 897402742 537700514 634900855 806529655 980919388 389546048 692449320 694100937 710460601 391180586 664900338 325710374 688673677 699959013 881424591 218009833 651156047 960767338 991561306 793758083 953319871 963820393 976562359 123861396 910677688 952345523 958749053 486964982 600895518 960047242 985954852 977572648 988332086 937380580 975696997 676326684 783316667 605354083 784656265 186687156 303224435 588690546 908118289 847769756 982604612 880057320 910808416 238650021 528170956 439684963 698708312 891000527 980646550 402989301 670029714 425409915 452381705 624526269 682611394 650574353 738334526 170635944 640220149 96340162 731545248 550233341 716284613 473651434 674481414 179783923 970403342 562667490 662421578 555578192 925314590 793959209 976869333 708415213 892533125 995937483 999008318 314511563 942018936 574769153 841271089 250007971 643240298 310699333 459652599 949634747 955954333 161711691 485286958 840315843 879145164 436365936 621734015 679058467 984850538 543508978 914544011 962119965 994040348 357057978 809373467 686188999 833514949 43932355 133110357 19776926 643747336 519881801 521555931 701185634 860604153 120446058 955111346 512464409 625657552 566992407 847441619 884750270 938726087 453980240 469151569 936191863 955416295 839173089 954680216 964732346 998548911 975685980 995920420 557115461 572538843 822835668 965082543 871249818 944314029 98915041 831907849 283116254 800452802 894249316 910443525 968344388 988545081 367189878 897178626 292341425 921565435 438000045 998988279 710484172 722164781 245959082 377637282 324151347 620760309 281651676 944489988 221440255 974004403 844335296 918855547 36766806 344642495 844329475 922810841 543514219 744906665 906016980 917057716 755332244 990306012 658519693 889515772 441785270 470217187 211713015 952795661 399955761 579275192 701671495 743367736 554313991 920856625 862295990 958555137 939369395 945554392 784843185 828078848 346250951 480738531 971225113 992577060 983602850 984059223 620844916 751672713 710132285 812978791 215821967 510665540 529503691 600831870 682753349 955876211 9461434 127938644 852545572 986673010 13714590 389010963 641142032 935420981 776006467 874736408 864093527 915990851 305223451 526527215 306222219 939426035 32876346 200335706 137501948 764795942 122744502 168519763 31102680 189666839 490339187 705134328 406914323 993082252 786184929 814267928 510249644 690967493 562415671 699566230 34713458 673418761 340699315 511796255 599551356 648954087 99651507 494237961 448098386 994347670 700196435 959994755 563966810 923523362 613547816 724993071 432198136 801911063 698642852 698850695 252197985 688721957 203536643 412272408 979581367 989016131 578676071 828807365 580034065 866589295 946378334 947310201 633870857 781425717 317914652 558119942 170796927 388035644 120250740 947867769 866780058 914347368 217411619 503561033 876830164 999567271 84341523 435575509 548649306 716480229 192244409 238070211 734672459 971840866 466290261 844101920 46473565 518645877 252853938 632923441 179303185 413504282 671808793 896896909 819941091 974505513 165153594 923713478 791485724 899926476 793535864 979583316 227422243 374346823 856721345 907669709 250122868 754477767 873135152 924256458 661146384 824494427 857919624 866126573 733396870 953640327 665426900 824485985 249208473 736684142 686331235 990028126 249683484 784888236 407887771 704567568 120580579 568887127 288962871 948960211 59441801 188445015 847014856 913813473 268323567 509637023 308270829 393799655 637966976 747919439 899788607 973753971 649349685 897968657 435222657 826496909 62092849 870580002 839650212 886333288 98707604 744557973 402856427 412693137 966086492 986664039 231705901 565156141 888754643 974801716 849501679 953628544 451093831 855962451 899330727 942768947 407841681 785100337 214752357 862725056 324541040 719685898 711471026 758095634 501823059 754130600 393217071 778613648 246007483 359420873 647488150 957991484 400268101 419267895 428869523 581353169 711467605 745812604 256846646 419159919 768281933 787078978 531779161 870225327 683560906 810832574 946284483 985489148 201531351 274810976 597126933 709399058 955261396 966963443 220323026 363523126 448612609 575105684 451739290 530079809 448351075 544612996 689542164 743114635 297609604 646663993 660839736 910474811 710150592 969581697 10074580 368760911 627469630 738614661 733034283 940848108 543045937 879962709 319518541 639704890 681569231 820551717 375960979 832283143 685911385 731332492 4684430 208507152 671306911 761506064 767458954 919577303 372646510 489692122 656021825 707203062 343020044 369869784 309614105 353629547 478221880 718764557 891407180 934288126 132403086 565946940 406357697 537745522 468861523 963749968 936643017 964359739 844178547 912525437 481216374 596181736 627063395 904987624 501277466 800384996 356821758 953490992 994519595 998071204 853609155 853635756 600543970 777864554 392896413 473753357 840397031 851819246 930314094 939168889 763667300 933386675 478542638 794270384 672176213 930083103 422485339 762069347 397452819 780848681 982766308 987735468 615946329 894434648 2146293 533344784 628374950 892224679 487855761 815880199 434178695 922218862 592071257 698997014 975223727 997723678 373615649 442993460 31192996 595076839 502108483 915684312 262302616 460338590 133317495 716170782 947103257 997321329 690142095 898773055 161737655 609337250 942321275 947871854 836758657 887408416 718104931 994782216 934719653 965144226 890015916 967646562 458319035 753993682 52043413 287383528 457819974 718482496 781405504 880678618 92599604 625686807 114893201 566114676 73388102 168196680 913460735 986643624 488844422 713877266 798969499 869558583 313918509 851071046 669802182 822601651 717038966 836884085 26078127 154895303 751286386 785538524 711097547 878972192 344783620 395760989 202267423 280725556 536558821 622937298 21139235 150816725 211459633 951246589 347287562 374193257 21465756 624439664 137089507 388300579 138217605 689530278 322800957 409895573 231608704 261815224 179866451 475902615 500946444 817532902 330525835 561906693 857448660 947899292 675189016 941977672 104754274 817862347 211627920 701385967 986395160 990669059 801215845 849735156 283037935 528981000 580254156 782355439 33358167 298953260 962289029 987080835 851900242 887795601 917263729 982405120 939336680 940469323 770819924 782019134 38281734 436814619 845731128 875783229 632284750 788741892 494673408 935386622 856524330 925915521 571293969 582329331 769052955 780070122 558292904 850537536 161302640 459483770 607531046 932537052 946619732 972133535 1002470 346159444 110563159 144234049 966387582 973321209 40166749 501537588 788441819 910587237 977811402 996886505 721263642 795091451 831941795 909338963 933112898 967015600 94544807 524231463 831937283 977428198 43831485 249112542 479570717 999931786 527428849 801678399 644751659 753402655 646680439 887802680 69343302 619033671 779049937 985696282 720077277 932482840 405308524 857489273 743161136 826751522 775515787 793724998 205307093 985510205 599964343 846137700 747519679 758160405 650039523 792839022 983014532 999944298 797966056 991659187 546834514 954360152 207739730 574291579 272614179 938015179 340134747 727417279 42415862 518408991 787975551 990876166 193169211 523312105 145612671 474614698 836985855 925851704 73465152 638823159 977321316 992878265 827469275 966341527 747416367 952855925 392913651 711396834 439960495 861739726 916534414 935678785 12266159 421907640 798164296 819736496 32324758 405496827 652006993 788572465 231512101 737821233 826144722 926349768 519824631 981331181 811605968 933009316 707836127 842219333 6324574 277597241 90417356 154165127 232630812 887267920 234607009 257903467 577303868 588812491 692246675 798464028 217818156 876544495 640655042 737385723 887421127 941762620 560745397 589976166 153264755 961704956 850469586 863650527 532692507 878009142 842600676 851238064 309949159 602418898 985232561 991204813 460545055 971431603 420562115 668124275 395573994 736665324 469309246 704183329 692362796 955983168 353346849 397462917 829295103 899101121 470422368 917251121 812768948 872199647 239602664 901849406 402846950 811220227 227236333 251438586 278646392 448881975 580355432 588947257 979501329 997793405 778096735 786898916 230561745 462622798 531314074 962666557 240740823 647752083 928945456 944050786 387739113 523100236 943598459 998483454 567411191 850110589 811484636 864679272 377792444 554166053 412471525 640971276 501874208 826315677 22666892 916030779 678141936 890279820 851674929 879327042 387692878 458075598 574284225 707056758 92701076 180608403 933459792 950272338 123415560 891869495 378621935 869007025 587679721 690063293 444438412 835030150 52643246 913758527 338736517 840662407 866959929 868656776 79364055 116328350 20724632 96693892 813813175 896441616 166076596 978007523 646952419 977378256 306591056 330611965 720382496 970590155 708727160 814530900 597619368 693129278 388077128 809070765 23518695 279850541 396632229 496617572 817668448 883090639 247944953 728373358 818194677 823251991 578610833 717864839 240077473 906265335 274061001 672288598 530398308 966906718 381309427 554298185 985501119 992902725 795264795 908693086 84169929 523345154 145846357 390961840 797169173 949749697 248132434 616058862 979524396 982060337 290925315 354209771 212302360 478326519 631594116 737193086 120688831 384209080 762270381 850717041 862409423 881326396 251987310 412762519 189081490 630951894 738666695 768877857 586513509 805669448 998378456 998906972 834274382 962891261 413600589 487853353 851145255 868203554 564531931 878859013 199902149 768196343 576352425 921213554 682968384 751737466 162731094 928836737 700496802 856597791 715881147 884969094 399264620 449017133 503464118 689290612 225697689 725296669 287264 475613494 632578350 788051618 44734150 245250700 30650274 497170074 39122466 366943255 796581154 849415817 501164614 653427006 665982856 825999533 998367150 998880661 303897832 380853604 893990890 911272719 570993171 817115114 500141221 876617262 585616691 894249908 3576143 764547001 455323179 544815190 783587930 948433895 882647906 996550025 807834242 946635585 594458402 767234432 113160718 816416705 911768526 963582196 305133918 824254176 912014073 969447694 231427524 234958115 335059206 926755963 235507672 573336609 964776473 986572633 604449916 643123697 590447054 926512235 216411776 535495928 385349025 740510675 289049320 793240263 243113100 405861143 866053292 917393938 808419562 964528560 833718638 881084969 904184744 910966159 353476895 904217865 885024075 931503212 352882132 448764924 114884273 714169184 773140372 852089813 881463571 926268481 261874758 366860071 690675666 863372838 936022142 953294778 36601198 547674443 186890491 392405185 827836101 963367793 325499570 998687043 897449065 924119753 955723741 985452190 270110330 465992913 150404703 555986665 104892708 236642983 332913852 685722998 355125761 516724576 724841298 860937553 533298953 875466557 997734738 998360224 468431009 584071687 168924502 990537690 111102624 284720734 378414459 822202736 17955362 441525713 525493623 933650769 538490487 758509259 394174169 490843103 859140792 879076945 628714778 826387572 432575546 907400204 110771285 755682578 26878317 96320020 444819454 711515316 920867070 933923533 562400886 987897916 510402746 747933770 869599457 987661743 135135720 968333366 350645667 843195449 75867689 525626806 945433705 996499900 874398790 881943514 575298608 711369308 557554318 599600976 228369944 652619876 385993545 700014551 239218700 610665620 474851256 939281149 73803112 288601129 810469920 920337493 875075910 902386607 564965820 991638501 894670830 923914689 701478102 860414629 76920863 302835570 183125718 718616708 474477048 573721465 300506124 557883554 364466027 535983916 33941196 759407834 963370230 988870671 910272821 941519056 891043387 978627083 276819459 853989250 852031429 961836792 890897546 985520481 40045032 363907773 775867893 818332896 804725235 865890346 91039141 135140124 284819252 597062287 929178524 937910803 801780072 954070504 9401587 853928445 490554487 683814458 756343506 848659941 799787825 883829036 583499679 965036290 545671428 977947828 101227649 214806365 668701098 722108529 342097403 420784121 960546473 963924302 656169307 893922765 223159451 422321248 598059263 714133280 752685647 799587459 378397906 990053828 512699367 593296871 126810034 301835313 627452159 990145020 561341109 950383633 889294098 891121659 882772380 993991404 68111767 72690772 43473438 668547522 337239546 829641822 642680857 866413422 190250391 248309375 804225627 974426244 531869424 620517097 790791804 994062104 257970065 684279710 929831119 969495769 808565506 830235089 546732651 877134088 761321407 867968102 409031846 989424837 753066722 795800149 192195624 692101776 494490007 601762674 155542480 267422646 483083372 843938645 194823297 695178285 58247481 652703933 831522990 907438468 66668293 70076075 790384844 880602712 137572927 220972041 236497226 753929393 849835560 928494916 585816414 741368477 68609637 475699421 286369655 994169558 972663421 972836867 491616235 974204855 333170872 542763770 269216426 778585521 844568158 959309409 730873992 865780125 618884056 883442301 10753263 376554935 843169958 943793697 443580985 690839279 271395576 383521854 534362761 996492721 500226999 895795809 315818061 838155406 449904747 824226385 872670461 972780623 45508946 167437390 95774257 728970080 885849664 963490030 679499158 988959175 993945222 995802063 313170388 351681718 487816588 683475248 718621690 756413170 659867543 750625344 303429240 310634915 191569535 687429711 441754835 992262948 669141926 944934443 82268501 836671027 52805009 829094990 152153654 780777900 245808608 708080574 891456057 920941731 183985736 924435764 668543475 795854171 265119992 335780802 685030683 724416958 676047214 730240933 530332333 616229400 811175851 904650781 483790819 652855252 313654727 546642291 70653650 826271475 841754554 944109317 221109186 537064386 848408242 907518663 730195210 819562873 924992765 946462691 360532462 829717401 699586835 812048180 212148578 441642278 431849092 701351553 624017290 688833642 680342328 722932651 751118887 861997107 743490315 884521233 94425424 859192240 473572094 564542714 258301898 806778976 208909638 912219094 127492973 398339587 298930419 884143135 66093985 805552867 853275503 932403507 912087715 946450068 138520460 454482746 91723556 219273707 590219779 721310230 493142603 982598692 73244167 583685273 323070620 674127653 676176056 793286775 855825580 919112435 627406480 691110622 84225898 389534768 826620273 937107348 535911722 746473821 193681289 310176624 906885456 943816847 333595087 902153998 331273073 352888300 219888382 774909601 250852626 554491646 655684749 696189267 203129651 269883400 117534782 750103574 375861791 886431100 17515273 755391576 301539475 426114713 914967140 951309846 65058081 810293480 218768424 892520176 825005533 971071255 351497187 758417341 115135701 527121502 827096946 880599340 916080529 969619276 157314633 199761976 777758371 848747252 587048957 697959823 59504159 785549048 803800827 974734833 880838344 939111501 458420258 793235588 582755103 644554782 695352454 950295856 846653613 863922031 297141232 331455207 290565336 717443222 977750979 984353369 988006268 998578341 401724350 718668284 938311043 976947668 4281443 371323327 132686999 708700756 728291033 815028209 673014037 767775297 927612806 941719061 385001657 719322880 829019192 947017145 169342715 744590263 85096956 950841347 198385901 489244101 939933967 941039921 390571482 973891447 68132748 971306458 613141791 688995965 666697280 749956663 662040671 830964465 620823567 974299831 172314523 761638499 433209115 450723595 161835058 570170685 894776063 991064418 743603511 974769724 177056052 879019506 632324 77834767 599524183 678651013 118602589 191309048 486468807 609726807 10666563 220839810 725644408 741947979 52328629 827777825 677440443 726607736 930303883 993187513 45681399 90766628 743045429 797226734 505626272 575534420 828412969 935123061 128541215 130029235 73703984 119987790 8171320 32529874 356419429 719529057 969341182 994398049 962851899 986291456 803543283 951080843 588408612 866759160 472843782 712141929 678368754 958837688 381223927 710123597 957736200 970604132 970720883 978302073 393236597 872580039 233260484 946601209 81733782 497748320 381463290 977687392 454686063 558159627 151619279 372632846 121281189 270034432 712489417 782037167 809977279 880060831 627812013 656290528 704948868 783546597 804346096 811683953 303670196 735549838 820072064 887436068 565741290 852604966 582604546 869976124 779621008 941498722 295691590 829790523 386133780 440716239 891843613 894698404 949821468 958985234 695342406 816588169 207497445 318721099 850802267 866995002 934652101 985745440 644856975 719462140 639177429 796874536 120057181 724123726 324853098 365504827 356277768 577204077 996412947 996765540 713563767 738110421 152795776 535517149 515071367 703426532 488157659 633583783 835598101 989018963 422146555 485760374 276754610 914066234 340072600 838359974 928062451 952627442 331268680 440240605 208095291 451844258 995688713 996948978 759890852 894808093 540936418 993387452 965573293 980003433 702538286 833830042 328289286 601161936 734760116 931941842 142731220 341404725 908684954 986416072 958121897 974411138 124526000 544557705 681639917 759191527 163828788 930639093 38410605 152049488 932030249 965495270 469394041 651201901 712210135 742130516 689868888 729565251 483317263 830677007 550698141 996304189 501061941 904108532 615893643 856649536 784531870 825600796 318986572 797204909 453830301 679234336 295336620 304686953 783106783 808917696 114772151 247999062 836927282 887889086 836399303 921103586 580237901 887858379 670507688 696438620 272926448 290374785 545824066 855467271 253896676 412924647 790341327 972135886 741310985 837052027 674405617 690775358 925585340 979392206 282423827 513588048 306988471 579450533 964008718 967732806 924087911 937549163 868211938 965865935 655431018 880480676 159774581 297874655 972659083 996735164 101482427 510676997 736022216 984403205 431393098 597984718 613019810 874597159 499583044 980911552 925829802 969254075 613094331 886588545 785286695 963249703 521248981 940363035 3264968 95437002 667611010 913832005 665659280 852249946 433166503 506849787 894339035 939970968 392273629 465373834 702845814 761490137 100689508 182713983 661914987 936125266 561246733 955675621 899287459 932048933 439955 959926893 198886060 801638848 592792249 720528888 417867948 610011442 213767808 576548470 408749317 644723513 146034320 752684352 606529695 902756804 238916079 950840990 465694234 703482335 611525139 990685405 277260835 841411682 402119093 994915488 24432839 442258123 267241747 968223863 822847396 946218451 259198615 672626985 313890524 487508001 613558260 988656145 926703108 964267694 267290160 295050755 295758070 784305269 392935958 722603855 814137567 826890669 546284261 615382834 961630786 968876587 381539901 511592896 973592689 996137524 705293375 804239079 461989302 574120318 858147760 971139934 397313584 884395065 202427457 789992267 36156253 742923217 178903894 795185537 772178523 775534338 804209535 847760220 698678400 872498601 961433486 984568570 717476451 930864396 785040345 895126348 836937397 865362022 519623348 626080000 547356392 770581498 403107274 567083637 253966570 284956599 128317885 967233047 798480948 840492425 824386945 845890723 159358129 189820341 666134442 791706598 716667263 718870913 914100849 961311830 155469278 865635162 754828701 896046165 860226363 867366614 487602382 718276237 966270346 974003717 45405037 534275347 638203512 930523837 145583721 779284565 188536862 352857626 879659449 941978608 180021564 568719969 510414673 576586193 865511877 984577006 270216225 495985507 17138975 641122722 73637267 102343028 106592768 118525069 196228046 752761246 503274954 873354675 713087175 773121671 98464895 488897272 207685874 924575159 982529986 989929211 719299476 824212052 794419385 942223600 965941453 983434374 548330422 645807811 967450802 986095722 756763882 832930627 182304382 569226573 376993917 682685081 69742056 228224012 81164699 269784025 949911082 999285144 397107395 509884916 937140098 984353571 464158021 619504114 496861162 552380231 770602989 810634092 16375185 970848415 12955978 576974082 428443716 629533283 540433398 887156470 83158495 414521085 97145393 866292641 801450241 819921026 95437202 404461720 471468310 779010057 385260097 987953628 520494436 937585575 905800267 978716339 832067833 969612426 476857674 812438576 878669112 886649825 789871025 795772337 465381324 885392078 302619154 409755134 977195623 990642935 381288735 965566615 569280976 917755564 854481103 970833081 592437074 647889532 171464799 786807259 86078638 128827404 816416579 906023794 807707860 917519510 95551681 678670057 624887715 962695201 447207480 946474722 340523305 659891479 988255407 991667905 969952881 995565944 965547410 984899780 512498675 786567562 147319443 449967217 171206864 911339126 743345826 929863055 652603673 858767813 555354935 661997375 337235721 483469098 815514680 914220943 669979101 990405343 430975240 642082239 306792651 323896729 117370751 589741923 439236666 841831649 377973982 637239284 853891054 900887429 249467235 299523848 30195851 771830053 604425580 814498169 177037232 351715283 383768161 570997968 228803836 591944839 793486586 906506854 751601296 762195552 826336699 964993221 24911716 550553503 849850018 983297926 87126063 572140344 722876678 760743229 257609120 472023842 879713693 944086496 324734610 737903136 597820749 701114838 990519529 998081628 739344499 841937802 950327543 987091144 428955006 485801462 862422683 932024175 177771240 278975417 157332211 466387744 436951253 630618943 845462158 904233238 880953468 882752739 928881473 980486713 263057524 286197073 644381219 672908539 934757834 964644817 164809983 918372880 57360480 986998355 784951797 879424157 397345987 850535089 506359059 940647334 22305861 806077773 940807999 975275236 916741765 985612857 996718398 998339678 54631146 189845307 879822279 917804960 297623501 330431778 216646277 353863305 995565197 995998315 764411466 984626629 850756238 879071070 326875901 661518180 103093084 650018947 553558601 999092862 542219174 829233971 894099893 954219404 161206470 973963151 831485492 871317075 797506041 972258172 248210934 744110194 347213791 681712549 21188245 777706282 797593485 952138964 346306761 481627731 767750561 777947355 384676933 743139233 131665580 682708695 225882396 774121576 933697885 980383634 265261384 291707066 981286539 986480476 249797160 502439853 607223572 922599513 675916689 826123957 306079538 563851456 737222099 956812402 350950748 382335525 907328076 955127170 666842311 876883402 642671077 868517986 15616447 160877800 841530850 898043683 503224055 704744962 577000383 674571504 714009713 792186804 261683706 820529205 800409223 816870433 250459015 949118670 650858855 904578668 871320499 908529516 692295972 768508375 94445043 309754603 794202170 954631985 935081139 988619146 277980162 712728486 734451840 765145362 464349232 737875372 840648965 996665584 867889246 973579349 528952653 677384474 178475980 475468349 908832887 993028199 421210011 728667568 516206338 684135447 260370035 342941073 13899625 658140295 533457699 900731443 854011263 855631871 569233062 811606818 965106124 994813146 280628433 351392008 575903148 945463077 387906328 898231264 445382745 982475996 301544503 489092204 828769859 982553772 513607311 654153647 161502567 286393620 458969345 782650297 987904064 999705328 137000954 398912574 726237267 793222643 681416109 879805555 613067601 730850286 726718397 963891236 748293195 757041516 199024910 383747451 912964739 954109814 409062404 712461135 720688837 919839266 445792522 951265696 360638861 878561618 463047168 505815945 802583818 900102312 564679837 867129913 271869173 480009124 307399137 737248031 812375591 964538839 442432308 578638701 365409921 736195745 956779184 962241363 574140321 981553510 766121675 856120190 948216861 991766517 426999745 841547164 704460996 771171874 640481611 789452437 516996960 772737545 19563439 120130577 262370529 840019873 24390813 163433205 483418666 783002147 824708542 839929514 596021526 946118282 376552740 496931934 580021494 650544925 194926593 373632005 742580723 864276009 465598999 701006860 937148604 940025130 777317291 957530202 59885709 808845106 581263173 737556634 442015216 893414646 468157040 706455202 360399889 566624238 637007682 826381588 392173311 673320791 803544471 877548237 10304504 258298911 537763692 786720504 326068741 444144773 320850856 598896056 649669201 962635167 600498581 618599031 915405242 962602290 708082992 755028288 688835160 878102182 549050989 979457402 788471845 903554228 433752344 599746814 346148683 965549609 727900206 835094333 175595188 308937536 116362314 514271352 275474194 383915985 997845206 999417387 716144194 915537023 906698344 974854245 466132180 542392266 684946255 881478415 939105789 957216762 223671034 382401018 372301047 733456232 689489430 750652619 749817032 904557612 569268033 935413405 389102612 819633429 279050242 991972999 819689288 973590427 435322090 695706176 382931309 857141695 455281078 966096836 917108972 939909782 370995243 936436068 894875233 978799488 729421905 736989736 578349966 757128779 491476765 634619187 313805363 905637189 838906071 878073694 287131520 810247051 487693697 979976387 977904581 995564998 720546900 928360827 637143532 986419426 240725565 813739697 838749282 996456548 296178548 819849920 727798339 826711081 526825092 856412467 288155607 515023314 129826549 665614106 402820558 708390698 433603561 480343736 591393170 963700603 620303658 662055898 146870459 409390917 433482775 838101972 192881025 595997611 778539824 865741990 306936083 497904920 141799785 802476998 700543580 788934675 667064042 722223850 665595077 826654877 495690665 567107323 422197373 816406213 942198484 987205498 897100274 971868568 260175754 744483448 151065874 241567541 572230451 871024303 803397972 980374365 455522185 872618978 132395325 706367795 85378022 302582700 698446481 785122645 689788786 830895655 467916320 500143414 625542933 914503997 838374416 915971497 117036894 376252771 844885773 910846729 558743697 672375574 768333053 815901227 528877823 798008698 166493496 605434555 591135541 762183124 22133251 516383387 40181472 772136779 646602853 765518805 344420763 907267409 107464647 962062958 494729027 761864651 792897533 980087846 240361053 265094271 270433868 463346994 417308938 996444765 74551019 364016686 274967330 613272471 112168094 213190799 308577079 421006971 550776677 804969308 448264440 915481306 61706698 161272412 971879705 980978810 534307010 994809863 37065639 393696625 64109183 929668287 700024824 737516350 684672286 779414767 756059324 854517735 105879650 310478043 126257363 269382142 405744356 480795326 359693524 854952924 876399172 936706057 257787583 270483922 679278038 979195576 553419178 677291113 651441753 737622993 218359461 747030797 158450966 579785085 785905902 909163457 831890959 962989755 20439318 886459116 868010927 904536743 766942789 825772013 759648701 830589468 154189303 403831460 31020827 895129631 957051689 976163250 282994669 832659242 374771424 583888825 187343397 443755692 163107144 903715562 759711580 956855820 794363326 931999098 556655501 745163961 421077875 749763803 766942436 827176030 890722929 971431961 77099364 565454459 780717107 799811060 11027773 596156345 132170413 688842695 151100868 935312254 91545654 905193746 36059694 147440324 502150325 985014830 861744370 904617187 510631805 537809460 601208816 832472026 460647966 808416255 670222897 785133327 811655439 917308102 557714825 974347411 216100109 633748876 705358975 773208689 590100077 893025876 226095059 605051599 413103530 425653641 32914482 772223147 813830345 967554713 839088821 983955256 101195385 736928859 806445470 883349584 184221429 406935722 707924045 873920142 43285751 499244468 872455678 904726004 435548438 879678035 771128944 966958686 567513639 726170144 227976066 794054987 69485144 788218516 109715832 492329532 209030987 220004072 575177862 575266631 632765438 774013923 964624814 978062755 312580714 770688760 518401951 652111545 331519100 751685228 866457115 951132303 933615271 980141260 726292351 748233496 392558530 908270360 712378302 837856547 56022481 634291621 749525031 970896269 92049177 877499021 295350546 476268783 418503325 773289088 418449894 709981755 719455913 978927704 793400077 872255001 824383660 885652672 438869227 955917216 634751894 650935876 105646188 340094252 89499155 973152625 810418069 964647197 297335770 551866925 657855048 921278915 970321826 997688903 236147629 736123915 995872248 997505495 187419707 738008258 478574932 494963255 914301755 990648735 23004213 351370428 331786016 540065295 893312855 966663195 163625845 790037411 634949751 776692347 918307301 956106110 318460133 659284224 734647743 833540859 473895629 908820495 297419428 612390965 187825586 246089127 315880452 964092620 597649772 679805143 462857950 981233082 110415769 944286297 143283493 545697922 767101224 885094302 641396371 689058407 361977926 760219514 744717255 888832546 670918881 958731656 436535423 601314807 39793789 369186156 744258484 917461626 506046402 958791631 157033769 341911971 376891429 703808596 172439457 806081730 232305908 808218773 777494486 949715488 227895493 474185924 306210145 655613592 832017243 921567696 329757810 776821911 47234177 585746729 918432018 939887915 705832576 999575552 747995386 968990439 794933076 969339861 555005121 649012141 719897695 817883635 337014408 610347120 422402973 499032060 651326895 916486115 846941556 914288227 172897219 997879821 998199110 998365605 159926296 768516706 118938052 699889318 825005486 936414473 678315118 738990348 833286757 923489212 347723301 367041177 952880288 974455897 143573944 466484700 745302021 752990759 74592705 522987896 745591047 796221588 728930922 755422985 299171052 950841692 597728653 794594595 205770398 596181825 273725532 828629572 332678484 856523696 164882650 939141407 15035415 825271556 802825158 889253666 167694533 370422877 925051332 992190646 331890075 455479650 850514269 955408440 557207362 644187591 629853101 944745488 535669928 787154961 333862832 558048377 692651418 847354644 425667090 465328956 474481154 900160750 202173325 545295743 485332917 803445187 346909277 943420663 764265505 837147282 940271335 941941082 220051291 621110885 184873964 340650746 17106780 642503566 487867200 543732336 853031344 910162600 612284018 795504746 307999073 415055205 447277421 630218742 973697529 986158474 331159806 455745655 179764058 532211705 977766828 982791731 666681224 859088470 630994674 844029996 496778819 985629847 859354453 883503278 760317672 948040756 599852177 972670797 390582194 424896547 458162751 548291042 891269716 903244567 865032166 938848320 483257309 705899370 859223387 987881735 87141171 825323499 836062188 883045254 17215262 900759891 482513647 917591710 721359481 774325469 757455411 899101422 524758720 619432233 626861601 637141533 978946297 985688361 422932016 988096928 60328258 814974916 445997950 769923434 905887137 956416783 699600379 889087201 307186359 673118464 600700077 772596952 72641501 873772851 603840362 884679138 440209342 570343483 586496834 674652116 157524091 290469832 2680124 901584328 981820044 995443761 30841911 172942704 219412716 679579676 613696220 734295242 604266287 738510012 326940672 539178803 76863452 952434183 409195207 959892077 818991169 826040119 555715636 743336679 370966583 924876470 269826602 637235053 68079318 716848584 204854405 290311273 217807369 245363417 558277009 839652894 725233782 891982144 763473164 888058663 987785554 989998409 566194478 911241355 713577824 950176806 987438444 996620894 220892482 767139016 960348515 976761464 705501391 763189599 904373854 981143467 280852257 665053500 516661228 670854177 538789013 937307309 950163662 962169003 28192015 197014831 987227439 994638240 932581441 987153501 654404975 905454162 567338666 617361641 94338192 613346036 327998367 588884072 165763402 356022846 943498139 982836116 358918373 429252358 524134783 646163046 541841966 602729671 89318688 756931527 218881481 624396463 833778983 944814844 754884647 997269509 760561462 865645183 41764313 807747455 632228319 666536529 417361629 499057364 594554041 631754512 203437625 552610895 269354970 815529262 758591577 788661047 161273373 383945452 564005710 866008905 704252544 720595588 412819017 881395870 371089402 921043973 694405277 912327000 665817703 686522126 316652533 485585114 658287530 711983359 187959121 289681923 633093287 818750594 627497440 918416178 955054167 962601660 896821726 967042361 30443119 822152525 52090784 827668102 854501340 962171111 490999283 735676026 148902434 551840253 656232550 809165173 274311803 549353737 817427439 957982391 683605824 952134989 693122368 799457993 67496126 78475467 109149989 688973818 349399592 870813200 437050601 669442489 781208404 905334898 808211868 936347701 628010395 741979695 886345286 976804804 931017334 939968490 674846619 677022684 240172267 733252823 835096200 988761376 65733510 258681246 778112359 993406591 560232193 874774572 766313788 788933180 460986389 556839460 183019352 795970672 12782313 566531281 394491634 401087740 967603997 972981559 465092627 537955076 106277859 633991925 43692914 212204762 855071245 919763350 244712760 624209698 865359911 878801388 930902900 937553140 657663282 916914858 169013095 689026450 384172792 611012972 566559085 747087192 554408816 857005721 349270132 571753345 897732914 936542683 576465188 704901147 496194149 969790484 344833989 423723764 486607640 783649302 820597839 855310457 662797984 996767076 599932456 854453299 564151159 566262968 395702244 647080462 975531776 981836687 402506113 681382409 40627908 569428979 692724196 923846152 901121393 901874446 120578584 382868668 936723646 998457438 515010895 835806329 48314485 466081340 383039962 935495948 216379356 842151457 839767457 895277060 374503651 779599779 597660977 801973642 725090493 799226571 329605283 606029277 892112005 957868961 257154807 687917978 511252429 791791958 570666193 900568307 366936634 432631299 654370762 717218326 852549058 970898707 567737900 804303162 612518111 940768183 566561890 901659798 484033861 549454056 746646111 852159505 898067343 922756642 528804299 959685816 353793212 567159065 819381520 868588779 556515565 612113805 845269937 883936313 475025897 778126209 593017335 676026047 198016671 595574759 699642860 714650394 778492685 790868944 228771226 818774372 299167544 906593976 873706193 963521939 570128200 700988621 845716868 956299341 420786063 813766415 673912 262393011 673078718 746058271 870733449 881446235 261011022 363116356 817952285 907191190 656405529 816998851 529199237 582138915 753572318 965574760 1589695 74220021 859372212 919173357 491814375 768611766 739025553 891495417 909410508 963762883 119433486 219238388 293450590 886226742 118228870 410758271 126277380 387699288 856605718 956215854 436843822 969690675 30438233 610243680 18056977 900621652 613067420 782725940 957526354 998630244 60667060 252028094 83530902 593569091 257710365 976815545 499247752 678597832 252167952 263825930 217192549 512472274 490444486 646342613 644235066 694929104 687198356 886479869 716759086 946702000 426780620 496269045 369987921 417472274 644360991 739420562 955699684 994371821 881932798 958453688 644431383 999007888 61972182 169399666 237425562 533120649 984699619 996938500 707357274 973158500 622552555 893721059 744855162 747962007 28320663 453309505 562210464 614135310 522203585 781562821 808357769 955562020 640707664 653674323 128040627 780417602 345322984 367398294 731158743 786904560 363422061 956690952 775447376 810572302 648437284 891461103 204091347 258759331 37684809 349462677 706338379 932493024 538922448 785071338 249399950 427334965 976464327 991070248 422846516 627824299 934699104 977947606 488284902 759756837 876089633 901432344 675293953 856374246 854417949 857629638 309910579 357567815 569841362 784236016 57260532 790303798 370873427 674944778 925384996 944989326 708192881 877571343 745747425 893367421 832741224 889435166 242251437 583056780 167391551 497423392 481704165 610004159 579929784 595116180 51630801 688555549 897345611 952635168 138119867 799061089 64140578 283206196 399758450 838662526 897242219 990409414 446305487 932211560 320371658 539383516 948933157 970643243 470197603 658147797 630054719 787935075 916183106 970025142 470538659 870236379 286406277 427277748 100264079 888886924 234394741 827079635 164908217 335141228 368665670 837661760 614712395 832685612 173762433 467480608 680121514 775767629 676438676 978218868 708546385 906072894 186824906 198636718 250037291 357915226 126214250 283366990 343847732 410523182 77342117 154246944 792396870 927532018 478601402 607012526 896577574 974177080 834643694 964254414 821296597 880791842 673077986 678236349 896363499 943973632 210199376 626208138 821324799 913123949 712305122 939547450 837210283 967043655 955684201 994059660 41224201 92165988 503623449 967984323 146050504 785097569 300989584 441017842 356663699 481739454 605670096 837345870 123539170 593472180 92402471 797730997 218603461 791313369 385462217 474414119 468529141 865181723 736948280 780987409 404849504 413809439 890730287 908239651 816965578 989161712 822722977 987483021 289336482 535123092 244418701 581094774 594628400 717849661 943215982 978966051 140491740 182171983 222685193 674275205 920712355 996559328 704455417 938050851 211478386 670760765 75675474 958506245 48952559 949172485 456708648 527561737 853071668 978881510 175273749 285690455 131860234 494070281 648484953 684262074 241817108 328683370 392063167 539737673 119458164 482416841 907692011 964505683 781643937 788335721 131082234 264952706 616058882 708639006 913453395 997455680 690334952 767846908 609780791 925427104 820219913 960280840 913103447 939000356 794421973 931341191 298874728 831234723 446432316 972627309 139277491 361125861 730273974 844788675 255765539 585513238 805887348 930885750 902338864 923664774 494959718 563358100 207087409 561454215 473093126 990796152 141515456 963492546 378972121 875399642 508023340 643811052 870411411 985039149 759040453 810367747 366769062 469028046 749169256 946649647 127778817 771969869 297077646 686003022 359756455 452215716 37145694 995894080 804777403 831738851 36901367 894163529 590588023 904924779 589051292 964585540 673520087 688191895 126566500 363385619 244768806 938430003 905789313 960814208 931839769 955825868 20238633 92043366 702669821 953212000 556002638 575789956 297180570 390611207 307140967 939107142 644180385 802336971 694291265 881628142 258450176 681173490 434911068 866575993 138552996 640150986 958351571 973659073 307031059 382322904 347143379 933157642 151730912 711517315 36124110 909902556 518608790 935525446 467427454 602663612 560811303 936515435 272412416 906063156 230915339 684059887 195614014 588479098 23034556 578027067 40685373 549508793 31354649 118752162 893299489 917893970 561798269 967574208 669493103 803781392 77237248 365000046 131775152 823009111 13002336 490567966 675693391 801677171 282906404 737441899 669216780 796787659 863022542 868773075 719724974 750638221 491009473 698251926 243420004 973573681 563060598 934344080 288011 179547508 599292024 806264578 860162578 977516170 472249093 642804701 330711327 530547046 149698858 400139724 111511634 629201095 592391354 824854337 530762528 723924881 766363381 992899711 572060805 666422414 471362614 775362475 42593866 142267633 481839985 896891799 793323590 885168218 736209468 813504808 43797590 343993819 729918574 738727857 247798774 799151523 330871948 651517791 57833187 288895480 971508877 978463466 389852145 860535869 169067717 425029628 405042941 514222972 150150453 213451277 358942852 376259254 522723800 814276078 342601496 467435102 572982218 724661454 164955315 608718263 719042976 875973872 355144105 381765300 56033192 814209213 540719661 674754158 615525869 761343020 724520708 983243172 363424482 455820375 118210057 725237420 852843175 887288849 634803799 908293812 660260986 788297249 184976114 372847510 33376182 177291387 623582832 998378546 62088516 484218843 703033752 874819008 229184806 615645317 160013065 346920737 923161641 967589499 331551529 671570145 329803524 656741098 353549743 475293252 514374108 535243417 724216745 772167415 903894757 990630738 519689633 799835388 286089967 459961929 305258692 876295582 602888640 798300705 624343914 797064612 491568699 701734942 69139995 959943632 737422616 967053954 278196618 717851336 37480246 311920565 866360264 905472549 803499340 825056037 377032053 787761464 130617467 555429142 921237073 950968247 239473438 880583371 38885636 519627725 413834113 725520540 78701225 588084789 650712958 718514211 233354057 383282483 481501520 482681802 848405436 954902188 142509393 705446332 727867618 968278249 359963214 808745836 834389812 901271481 761866596 964860838 386923946 693847422 997667713 997704091 872505773 905131057 589227093 790151686 199808825 526069054 92309545 210118034 179352941 386504416 824949978 892600542 455375362 663997936 792521123 986714371 879966243 968827200 316867641 830192846 905174002 986445269 900763640 968939643 561691143 686829619 933733402 959136524 678339931 803139547 496749681 661293187 801902810 815251970 112507646 670736308 974791478 980445118 80316866 249840815 994952192 997934581 779822507 830174262 856071269 885115771 16561696 754061209 211559122 596004968 707672033 781851418 448999965 850514031 566855129 841197281 279341682 638867755 945102126 945168227 956771873 958663034 901055805 921925000 342747565 527480799 259361104 294162677 323243903 699400784 890928165 989021800 312465025 676350099 237748802 622271116 195316934 202683871 22346106 595850893 186774286 350232897 418218022 661620870 524021908 757659031 208171351 243079136 274218282 592614638 476712333 800341183 963579569 982647791 197089868 319750477 421714963 744847581 760565953 893922262 276756504 839623736 404991302 948736125 292250176 882187892 424298678 454954135 110712763 894742123 461788599 832272937 87260082 800360329 789942028 836553543 123222404 940781000 487103536 953951301 224135685 497934715 978438004 981748987 698656760 854242710 995800200 999170648 17602726 497704666 766428146 964163197 811150217 949144940 209604625 757892717 852189961 943984969 904247556 955217139 550896998 854687876 645373798 732476244 741758135 974209784 910645860 947199214 46635613 983591010 825936388 898000959 970890834 972192915 854206884 914942856 852754958 921835585 146759641 376177996 763458015 986283862 741519107 884887704 250089679 324058309 73916145 438182506 846360507 895932711 265100158 808256787 558191690 697377121 784158377 882944223 58301805 246334885 387153952 996842011 267154019 915327538 856214512 879838810 388533834 889923870 459829158 659734596 118952269 291870256 925257459 928852487 110542229 479429301 664819029 816147453 320808706 481771302 228617104 639252525 650759572 885386939 709781981 894644504 870593392 998559662 559117681 937937151 292108670 920151530 48998389 453786888 550065369 810328891 585738024 590954345 347447523 667495677 129020146 400820447 682688792 774793801 792132107 943361833 915063422 987747519 115518408 360643764 918871824 992602954 179444866 879622553 746816581 972338726 542831784 943659198 797393970 963100301 548445196 938363660 834037001 856920352 278601991 389506189 507293032 511806121 119053783 535898884 818131962 927450007 115416953 463559144 598077006 757819807 68628973 574812523 381762860 950100914 458354061 823600806 982384276 993847622 10153281 744320512 170930188 884784205 926768232 978273103 841231809 975815464 973310401 976175594 660245582 799445901 193250880 412651526 381382068 618193804 122635811 338959233 168760618 581724373 414770901 645049995 698019937 959224367 637265944 855086721 334550049 425598227 130905848 213751766 718631898 801962228 707855465 734201260 459061121 676629326 397507862 766708220 877040170 929366140 279952523 459933494 605702753 686211158 631941396 782038429 520569024 861563141 25864441 192430702 497927512 873561398 876241759 917448844 702988374 787833692 944852875 955393038 587038629 936054213 873308699 991867848 434756592 534806657 724942604 835277375 333921463 753580998 770309811 804205813 888294607 910780575 550886010 615937346 491566608 983580547 755595138 809088718 350712519 588412697 328144078 848327109 395620173 796075418 30064340 125817485 632674994 944617664 458611092 597349721 65469095 342059134 295844127 590008568 596420741 974901348 809657542 870537893 103663920 183552370 756533049 959572734 128684919 944096018 701685020 815165306 19478844 986154768 490564244 659860500 456581838 816901577 735593768 943333693 66617151 128273170 941058425 996481718 242106209 902177592 303719305 407596733 299768700 935219719 306982700 954395298 709420782 868350122 215809841 441389896 87695919 911788797 133294060 447823565 155856731 521490194 901938625 997906059 849301818 897919228 777756407 849544982 377205453 888429647 515648025 891489415 759976383 784577029 320788994 929217067 927031884 999880638 642538090 861573340 760672219 783056522 200076483 374766014 662394642 831620230 613131137 787053267 830400711 909107272 679709850 788769202 51762880 752558763 144116491 530258913 966662330 979415603 985292244 992447943 120030990 464787745 505105985 904117627 841303323 905999779 517472217 575359064 755992734 859762428 625039480 859026840 757191639 776434354 955340239 997852657 381239629 630230680 939454434 983918113 150656126 688539025 964049845 979056637 773009700 956034173 635489229 672068427 434662329 642213743 613003207 989279715 506894994 889033563 762946153 886275134 643088572 936997872 422377474 748572950 919127108 945497028 316768498 795018182 632378771 881265946 768491555 904224567 649964497 922868490 24014910 197882909 117069583 968869806 984671402 994843688 773460577 914734289 412067038 421489946 201284585 732636040 343384223 545107116 346229261 584355645 268916925 669231762 691993971 845760494 380934230 902663242 406463004 414159154 831993337 843059861 459276185 621478896 260950701 899940940 874686802 966711407 765631301 978024504 243258334 703951760 134858370 229573185 288940623 916285934 487503941 527228448 13798316 535405250 693117626 955043792 308197871 991340581 615180888 918402613 526731047 958199632 214818245 543019531 881886266 932417818 477277519 976394617 990759177 994505592 729599751 771462861 196116995 888847765 185096858 692128490 546429750 679010141 592077105 811973273 999414740 999558880 313477253 378008067 909858377 917967761 682511846 712336890 999700025 999874496 645836516 817801660 90458267 494051737 603802833 778280577 551992168 948672827 399532561 701424148 499494616 822283421 934648770 973302793 718170347 783783355 870076129 973046002 697205200 802178595 269622124 846545761 619091297 761176745 370380744 587504384 120418520 481321548 379671110 782689927 948887637 959912553 85309475 333691547 440354085 555112105 391809481 948851815 896251030 907066221 388675825 533837786 520938810 763727695 194070940 953399645 765120833 863090606 619360116 828705780 513417982 837799005 862892296 930544310 33105415 88073080 58639113 825181237 968778880 972911629 916516065 986706221 820729448 828504696 642703792 967760752 468486727 487229580 605293029 847686697 900532851 907019716 974781157 982483774 99094329 221956765 55653927 744535459 581915223 653826288 903571555 933151140 945805698 993682885 846056625 956971059 598136762 754223173 466704303 792538240 356054769 858046637 857245404 948558186 415353085 514352851 380301811 721648401 336102916 678052711 188378617 469797072 494086302 837372459 153786788 714013162 186046998 842376981 745041183 844492283 499026908 852314657 565456210 786826085 988025109 995235236 2685718 59033498 282464431 491414655 554762084 560238407 430722557 579206280 819969569 906888100 687719278 817778947 173285984 699222060 315060883 382700893 459241359 695240279 435860549 899363397 335732735 767628458 888121588 938186050 483499251 792479403 841904880 892006838 19492106 212970241 623005825 864341893 331106746 402859350 526313047 897162197 902861273 973105945 379975707 666150165 975146525 977120447 533059027 769601380 770492491 901370707 170749843 452353214 57784599 168682853 639801536 711621610 165712392 747166481 674233243 765526955 467454039 625290372 855670273 917583840 887216505 980035305 623826857 730066571 83361471 804993513 384182305 430487850 445399474 971146967 878721674 950553249 229589277 504826300 716301375 724890084 524336628 800079790 136589418 378259419 154604148 906326724 415396291 459940845 259783266 840765052 97708123 833600572 851558229 975033100 542068191 881265821 107244924 418264432 247244118 568550268 52030174 153148692 908820998 947016503 112019577 311390852 600362120 959181542 650382399 728051085 888849958 898192032 228634299 773262653 181202471 614039194 873620207 946665816 138278755 419005263 222795909 682857812 308857194 786485068 84900033 914572511 257072098 458730272 282302134 713092860 293687770 382399768 856907380 895067041 138702226 875952678 244920140 898620897 559831783 700403622 233813016 592141383 526487787 880176057 507081574 634340472 731821565 945991372 810127845 969032918 405347231 752313888 68593129 789502642 450250642 763420296 604705062 802093202 314457494 612335152 67670418 853868073 445406881 494302399 942973895 947673660 21310146 820569430 919206427 991431148 933194346 984752768 318084364 570721478 690411602 796601728 737347718 885148614 570664882 832042899 28081037 278785852 760395639 877032214 190086686 194144127 120479253 393502920 91778207 521558322 799130356 897919259 79204354 410912197 735757248 849027814 846775336 919787317 201231602 673969068 836701819 977359507 147814850 400795512 961081015 974203392 799716726 835049933 119517402 250893307 875784328 998075092 367300246 871074380 491706248 835585796 452683377 999645018 487105476 600227323 708133791 771514342 492166934 860357214 924146756 925279539 596684890 952480199 592894197 594246643 148383253 202511555 665444058 917118276 172954627 755293150 918126459 927065806 820315838 833816263 257457457 824315165 471405947 941798875 961780558 978135047 856173355 918117142 916739173 980265218 345146768 914463513 753253723 867080053 937190684 938556261 114831995 707190362 65327920 388812536 641662274 819806813 675971001 702842847 990890819 995213962 797507117 928715534 229908585 255003451 183430166 515920214 975797788 992594752 443651321 789373016 221489427 335019458 602391157 819163866 757133656 917073447 673550097 912181279 2302028 224655616 748086153 983337913 448090411 722568721 417309054 576885640 555949106 588090277 255326647 426080186 571110999 905583558 752543792 771572408 364040975 946504683 896267341 923623626 97073429 988644392 26698933 75035032 623148027 867330862 968897619 992985851 145226401 168023888 701711779 735057090 95765111 332735523 168444673 464976828 78011662 280478289 535145585 970203001 539589202 754828317 315723732 603677024 529765474 919115914 358833341 852623991 622800954 936872795 450728947 698849789 364549443 399584759 818689946 889143581 662389241 873146408 187916925 951611204 559041913 993260952 396889065 889071235 411735256 967501639 362100637 667370682 781239608 832240134 295013368 643030090 877432600 887085606 710397189 753209121 788378947 821259651 273094522 549666327 4066104 112432904 322832887 709250332 936549443 983876668 205352371 309409944 962709377 976123196 775635089 862973156 54532658 582365450 325777655 976582369 864092310 931899978 757911208 873945907 613097641 921701539 745987333 857836766 365144830 846114542 709031425 751263484 848797366 934171397 431248709 986920518 251695899 473702874 171896677 181047721 779636387 821213147 288424739 721809773 721296607 766450522 948725862 999906020 794297998 846395380 238591083 490347090 504047329 874450404 785819539 799132960 958075934 965947243 360409184 832210520 956904374 977573098 125062422 532440700 580204482 884867157 555418873 913582391 665943813 956720767 221031305 691643339 314491250 624500337 188572092 935994944 873034010 902855376 463489893 844700815 254798829 658061812 486282621 912175690 756109059 862009753 851527412 854592757 867779307 980403661 569478527 691210678 631704005 817966360 39487721 432890771 752104581 840158307 916761332 993244872 795998163 956516523 902735947 932587201 179714064 452222599 592888453 671512546 780230014 816855206 130011035 926077930 201886559 401446982 820770861 925499071 678252977 710234815 238230052 278379415 311785330 495120852 208948414 721146018 33644382 688750330 783699055 786325815 692848528 899361488 710367626 771796280 244952206 324456008 65849597 784370502 724430508 859617113 156005959 663521165 487288240 907859613 593624536 953747574 970911009 997761863 458153389 830080308 849476137 964140167 394507428 624137963 790790870 943231303 272590286 548109214 633295203 917988039 453925930 795986810 865645712 877200409 442497161 954337551 981564727 996686436 164308717 185727813 493380509 592615104 977762711 994942976 213477914 923936070 925729294 944428073 89039865 421809701 191554018 814609477 116550273 461717272 535705837 623874608 113404449 319446761 454101167 985862420 603314563 730317075 508192906 556545465 741215197 912405212 861838745 886236727 226517136 502764424 656169872 999186361 109699429 655577450 242846800 248106045 900328299 988129316 421849093 704044638 134698906 274232753 496750796 512023773 407746230 750360820 494328295 771934742 400155684 958082135 163577769 285985282 78878010 858769282 68673520 152522655 449307794 844542133 76884797 990447421 878291076 988832063 588820352 595495046 50743081 944430241 751873604 862143664 423467950 894934424 135786935 575876858 991669288 994388018 726787568 820961415 864888425 930794560 516655088 788904854 906883471 923180409 245259782 921087477 256910757 398340901 448554847 943360040 189254995 645821158 476581005 513307013 946891572 949967268 970594523 980117490 207326657 825900343 399813676 777646976 187372458 787614648 737684134 848919059 810608632 904179943 113386440 741755393 975384997 996557304 710385739 869819779 411403462 446624032 78763424 671075665 619232141 672351493 319350897 873481298 29218817 309057063 604909224 621956750 13248355 631870205 659966762 903674750 793098212 959839705 877873583 962418356 519932267 828108202 577920212 737864092 521000746 653302779 553920592 592488957 427411137 595900289 987492546 990406789 684343569 888021528 718058548 917499939 522130836 765263981 102678687 946250879 493348184 746000454 953167837 968267967 625284238 998419754 705038078 771416398 420268156 677129602 834682898 933586900 845378605 932064946 568740022 750669950 617318529 713387113 581953973 601968152 175792113 346205443 283090585 687086985 918353197 987617227 212597183 645641985 161809341 872229687 435519505 816522863 204253642 804833344 536336195 952113877 222802863 294911182 928953710 941569073 851031550 946412536 854479785 987582722 2929998 60018671 69421267 301403470 793484941 957871439 710764184 767670528 64046784 169869522 467208098 898630428 110540585 877201782 40113753 808200646 108579549 618809556 423467590 676805435 208567568 467533514 289649083 356383811 810286719 989784448 486897778 634801873 789565789 886361205 636488892 645386807 57171657 259609266 335780804 850075784 675985697 724645274 568898017 867524369 635105799 753765425 462390079 764992348 253689187 426938590 57492132 312988333 439665624 813316995 503332350 828387678 742060935 759686650 905648067 937061241 246785096 815436048 595268834 887177522 196496120 327194690 907546304 924779077 616388086 957886576 38844671 488390216 186427133 471263916 330682410 844034649 9499795 708986948 496212069 920561864 188119342 808453916 15126975 309363469 110262670 699125768 454377647 737213526 517965816 617428448 42103519 287488112 211880752 621196156 990159683 997610426 154996114 277305027 837026623 937945731 643568505 939298892 313890348 394825284 370878957 787840911 127676852 587985612 437656397 889720472 420197887 865344360 752308108 819260723 377261053 583298251 66484501 703198135 193682914 842504026 767037979 919823034 422601191 574817363 891045763 930576507 635735116 637999922 578742889 776643749 940266687 949267381 670781193 880235427 916788164 957130359 886398262 924365760 709169688 711889288 203275052 453012335 192791521 784542707 462273032 632863092 429220315 491609525 68089833 980280769 538531863 706793910 391053343 493119198 264708803 290886639 832072078 923577637 475524243 650222330 52658659 672407845 577950982 960087412 516539270 912564862 735035212 788574836 663003945 985814808 914527221 990075961 776231336 978558918 870006760 930751086 507984894 800751624 439926937 455336561 452953089 937922400 20344960 34901133 452146393 849369413 778709648 867784395 219024788 480302315 222999817 918339162 281338058 426591034 3359947 619684227 680960271 983252611 198875690 790605632 471158273 619783967 292011638 867144668 340980238 764412286 966897054 983378658 215309668 335908136 388666212 627009873 108139804 344067307 372581710 625115888 144486079 575026973 109880119 415894264 738241438 835752704 330651265 881365534 431876510 564951542 710866406 966895859 467398897 510920432 313648392 846428404 119714663 254074354 698845033 799132216 184857694 891115990 385410129 897307666 725831740 796212316 138970686 780518581 791913293 873300434 29131704 124794409 283643396 500580557 797486817 876390965 197447567 517956288 740532286 990679160 375125568 557034369 508705032 577115797 25163835 684632707 960011584 993620996 133752333 404655629 386713882 847044359 344805709 512424093 338993198 607258720 246581325 612746631 139063244 666199989 460325802 669120520 899597622 972813195 773575269 869225686 413759667 784013224 479241577 636884160 264522688 465000182 369859196 870561692 301697949 418472581 427892184 712420500 365362135 700731770 794987252 844931469 596136241 805718641 699608645 834663676 135333797 698285537 471634869 946833750 550207217 608245208 167193697 841430978 491547768 601069080 444491669 559988200 318738970 488753821 306262704 679498937 564944104 795785920 915115420 985169508 410643157 470289064 430510511 469165558 771667476 993199525 142155063 214036860 285218746 795712639 255759066 963962342 925116636 943150987 990378957 999221747 561959253 565144214 615602966 832176234 364607103 541073573 752634228 872205454 253424287 483504837 753416761 822038166 256826378 439631985 94482772 501866834 170159173 876398093 536788982 763804722 63860697 145769637 926255076 947711645 40340541 731362583 690457772 987004499 438737974 807443888 634023164 934803693 59149786 661443577 45955159 357655558 341610567 894605460 612773387 836989635 844612024 906878774 601979154 857279362 804422779 996764831 629453861 982845499 745678590 802657935 674358321 812182531 514844862 710850414 623833289 896402367 951173064 972195938 55658299 320100553 954444165 955961419 562243844 869433822 726114189 945774295 810015702 818248682 26542884 921047898 49624699 80358655 630365539 754355173 911076223 977543353 240587642 834220735 369612231 600175608 719249644 862012882 564336811 981856553 995822204 997366105 207966944 711655096 978909016 994856507 310344761 719472186 90606417 660785362 2495404 375179245 394024307 569441560 134960859 785434190 474597724 533901203 203332847 541301588 244934980 482704829 632625440 799135737 919424940 991801054 39991494 748409005 243034034 837374392 932460812 946976959 67791040 99277049 925234120 926715811 51818263 595956567 986603910 990439669 990776854 993948234 186040207 588553640 503486455 671899410 871138300 992129158 564783623 859770350 653539972 784934640 662586755 981388984 231451412 941629085 752720235 873974221 599086032 734476308 28144786 339796487 698457675 793974399 436343844 911675695 691252691 882916365 242886768 354291487 4664349 674669950 973404713 977980351 330812272 355838708 724156516 902394234 686705342 726090726 891796803 960896377 35451036 257149630 954612128 968131082 150610620 206486037 465737430 479549815 68642503 259552974 159014126 343793686 563637096 721697619 897336270 985046949 968112876 968584216 175121592 249847581 61682855 774761636 962556610 976307558 996808949 999547787 138402093 143629033 917492630 919430809 866149582 955362874 512749958 881823166 655923594 959022600 953837123 990733217 170178565 481331224 378843555 804468575 331588069 894685497 147948172 920722117 912385206 938878205 142440587 457235479 339162891 527833111 436724387 694803644 463530668 690897106 564057787 830955522 639685871 651480763 262310909 723368972 221673553 625795563 470034632 855572068 62227653 668651736 505671102 846564982 754809473 970115996 566160359 897875367 360500293 761630956 110644947 884423579 642449317 645675911 410134507 618181579 53938144 970591370 848609259 932961962 86872613 403777537 163349616 419343591 191582072 316693545 23551067 57509397 172758047 716834961 566144813 677026117 336865201 904077394 967117749 999966332 470232785 882473734 832815659 950533020 102158839 796953849 477736263 511961953 660067085 867555411 601791666 824910650 988376444 997142423 603641917 741400342 802686458 903433821 651757753 741970607 165210016 555135255 92136665 190224637 724098270 786928669 486493250 573260646 404522049 799573758 785035541 909854236 158963995 690987937 429014724 518996123 22097895 479732309 541193695 936833285 859172204 935923079 405268095 558934255 223511846 441135230 709005498 830325673 904458197 922148125 265091325 783801090 9875365 152482689 373280110 618497340 744097071 922475384 847676547 970991586 864741336 952401355 608608899 865233857 576544103 642607425 216800145 295230121 479796082 701488715 671493613 701975435 840691664 866181585 49764390 950204152 188591157 727474783 903395162 947706812 773324640 802319239 309717242 877446934 787343232 842542650 884499135 981439519 415271581 528373850 582191117 727828471 396526272 627333782 782567558 872372099 246120068 629550989 43472502 94027659 186350781 614474335 598567969 770667704 557775783 683505948 429775591 973597683 761083882 946146497 285019866 656090492 892948045 988889564 330288034 561586379 156451854 566687722 911349888 982497447 7937454 570114282 432005479 514938471 263374118 447410042 904995126 936781606 836583742 901388113 872016986 967444127 451527520 544166502 214588776 402187949 830160520 988053048 706829280 856342725 643232789 738666749 169721274 962499618 737177611 881882847 149972454 632788716 557814606 889263017 865410973 903316803 757622572 952348805 729011263 922415178 598515528 673025514 671659320 866208905 284572875 340393939 593262690 737185701 225929071 450238989 355317454 848085341 809512927 968111912 399017490 628123818 69388658 613151344 378857525 975126983 403528395 769321882 955412123 984127646 961941680 971958628 739886014 769763717 936775620 961015085 701759333 724545356 450988963 923922190 410681399 613830547 366293563 721535331 244772044 479044240 839558822 853353974 599163704 856750429 732886993 930265263 259832311 275721172 586241184 729343454 643693650 983783119 240320168 260228566 766952578 860651926 264294647 908797141 256727426 983639299 278883696 367184099 20276882 585749453 748181862 890056633 84009566 873219996 10791750 256559905 191578304 501417602 368011781 984764873 481852734 813998522 299849264 738249628 682969468 775937623 790562781 954885429 203858286 478220723 907182731 925566555 641606477 944374970 116583446 732046653 716691647 775506507 324614960 579335044 108444117 257290678 15311187 132000537 807712941 907583383 173697472 537043279 399782013 850026950 404062466 603123961 732425662 866708998 35037918 286756126 38532406 587989259 532112358 947564030 538184938 811412637 209796870 742047566 307581659 462682283 606940233 904526539 438667540 613020808 370365870 720490593 367896118 439248895 21031236 933380410 275394765 461470977 334801785 817259659 806320070 927507761 808964697 811297528 460636467 519522242 858172339 934228089 218435776 633955877 770164735 997329503 706504750 842975062 974427357 993210930 68473521 221793144 657979364 730949614 858238311 872475225 625481589 999941553 659717827 709921861 823132980 861023830 573442877 824792010 330632437 741454327 919400317 985530794 148071625 168215484 7985963 16239221 657221404 760864085 945839005 969576476 254086091 979859746 98626044 775286494 989177681 992074788 823601425 964860470 903997606 983118722 486068341 987862953 133070464 879906933 395913257 642491361 171197082 953469246 802844338 983636575 34648196 398849433 988907291 994900578 234672219 539043967 468398811 577438525 458971120 518489319 574131909 630299094 39500687 891016096 947119486 973669351 516600033 887713543 866472013 912225554 283663269 529726330 84003309 970062621 965800639 993420790 511021511 708904623 388455323 972293954 308273139 752664353 988832469 994213868 842991328 925318400 194382723 522452176 112919616 391798864 552068573 922558925 891738867 937031407 792759939 845063078 102558333 950852411 268553287 634099168 255440212 948021303 517011738 995814154 833177696 834905895 946619174 954251593 619849793 759926832 806199787 808854351 569480981 586618000 839298313 863506225 312472813 982510617 82628813 552201969 668067503 905782040 764995235 860769250 291327092 431873460 141253102 987371977 875115013 892531526 29491667 361443409 751892411 775232395 408263712 799834755 498850993 587003695 728291234 918577463 407287053 757322326 358894614 872728935 983985773 993689165 831987321 988201768 304506958 827555180 319540401 331142692 332115344 544619443 686121799 804359012 553577753 605557534 287130520 390007976 27455585 219933054 551956956 755792521 816138148 824109426 786825643 922353538 833512397 848763687 652438005 965787092 481126208 951840213 733874231 942091478 301952232 689147686 412349567 452769895 311203695 419764689 506262570 658696392 894391812 896041946 195679242 238624436 677829913 876185069 786429451 868172709 32360126 848945606 191648193 420210992 755686404 945148977 153405694 779124824 828619274 894213556 552033960 955678426 840841273 914159085 273982578 986332830 702370610 759283304 518423246 791162570 285066964 550075152 508344229 662930680 371076676 480094132 802890395 915686742 425995633 725948306 741737685 909183650 509604965 700697264 530667043 800174475 710898718 824285947 21993709 252712826 448878213 998880192 70445891 698103497 113768756 609388339 122798936 383827883 497881695 786061618 441756620 841442977 778765825 842863896 334845185 893751472 945005920 971883604 770383597 961450920 342006533 511155313 614005605 751293169 161468363 718334521 627976639 748806971 729584925 923623401 510279002 699230098 556753133 706361617 6515349 506059354 876426684 928530988 629809970 909353254 599154339 832076231 180925142 471638686 21800434 95729971 327151355 443567426 601455520 867762585 633392899 786115601 291509909 638761073 491770287 830520877 461781983 672730288 599427361 856809152 403685811 911418945 93343255 341969892 758481685 978354106 132089188 307414247 69013895 775858202 253064434 702856347 577217189 581602300 541460020 608067797 57407757 937433977 578186906 591940469 155916652 567111168 407670669 619327728 847609794 849598780 166517555 709343060 324738568 584689376 962759937 971072511 836722501 975307625 386762141 939509086 717232765 770935932 448272240 555214191 525913664 665739277 486765581 574766073 295938110 879661313 359827367 583342522 264508930 288479506 479213263 778037046 186120411 624849444 16003169 383108579 22434811 89558392 772446184 986044510 835780276 954302268 183909217 979784265 508256433 607835194 749844116 912899988 624363387 762968553 971967683 982526400 296674390 321250740 747690751 753473439 81339512 550729524 924044720 961542658 224047426 710046966 92037998 906239742 393082290 904353492 657755126 945546368 128106889 562790408 425454904 750206768 374358505 703073859 766321845 939000568 268010735 701250827 535091350 588454358 237298375 242165979 622240118 940595209 183117542 772332824 13913028 793290189 268982322 773984596 615118351 767098523 682200392 978010609 603258983 676999916 276119699 923358820 826680744 858639000 400680535 803215818 794188849 889284367 406871943 665494545 249690747 931073029 782097780 949797871 268916596 796464417 139175701 302560236 35425900 415274362 325088433 615106310 171034790 569735190 892489187 998293320 857859700 927393247 375085310 795503384 259271612 858318402 288144054 934796690 864878460 931207253 316889276 541859295 749724485 850443997 886049398 942087931 84074249 138619974 435141567 824239141 468092183 493119261 764420733 968949514 273579534 676062565 713220221 906515482 306813226 579422549 80219314 850062723 109962995 949470056 23931091 671553980 433113700 509582560 28631705 881196425 211219509 765917230 639459732 812306303 424914895 442092764 455392729 595897604 704379269 750122710 123124876 851498944 114513554 457696425 280871172 614495911 79295876 844080534 540432372 596622134 36748581 313142645 891726225 974509813 655710932 700865793 276037946 379188541 845340371 902146046 748199050 798421648 588614794 616108347 387019203 599237343 829622509 920582987 287762242 450087718 232450343 398928199 981143789 993259292 615197274 944993067 286718057 721707870 112403712 936703007 49653732 549718288 430231542 621975645 507966905 629994387 908277006 951021650 454906272 881492861 364601282 704181978 29936014 621697659 660650400 963153970 810002938 945688470 663129417 828932245 692822479 791281317 202619276 958247108 455952815 726088250 228179941 466132896 156442112 801834830 847707 532720230 670943014 993751510 610571497 666547732 509072120 959982288 662975672 848312071 398979261 794681541 721309911 811134380 57715485 96907630 431118587 872774819 989893767 994911103 773030907 812312922 821926202 954144083 119165500 378316016 330415344 811813447 76783787 860489576 641271607 912455346 949029748 964225100 551483512 680169553 797518825 854015428 315892365 422367558 760327070 788489422 621593344 918434308 903568652 979946576 462917855 985414646 934771572 968577462 985503377 992432993 448964582 895091756 600221361 760645636 506754869 779557712 536936009 960939768 448542860 617163018 152528936 521541911 763815793 939153514 817877627 997338434 305261364 769447404 673766652 759355141 10094341 602655162 691617616 713971113 910059629 976240843 28573857 660204390 637457920 781358485 603262118 647626827 598437946 857557339 3438858 876917200 188162437 430836721 114643387 325886627 376148056 860761801 803427703 809640598 154832212 163038373 454642039 698015663 726412515 831386034 756557989 940097536 39230631 224213687 701467422 998007274 166248914 653489153 885732586 937067728 2211748 621473020 341405994 484847230 103452630 239279895 223456516 465667590 286033056 692488554 302929104 708820669 433189345 673359193 606935699 861435037 655724232 691717003 892581580 935319896 803072785 850074480 616527295 890977428 187297001 792786211 77376760 390007536 402075711 853706556 943729024 981001289 293339684 573029582 373623824 875730385 620778352 886065785 226971922 539868517 163689859 194964038 423427897 954840442 795881719 804769233 462535681 895487910 635633494 799266514 862273973 990391413 298020979 393561254 661550544 778545188 209637448 364724668 208103773 244283389 457080259 655199320 266771187 837008661 689810199 741911526 252863691 963196201 713384405 781040356 946099337 976439688 144369895 485282474 802713762 924889014 688822818 983519361 304169413 864291866 585439200 696623550 868394055 893110268 538672894 897588999 188088257 762857056 721124734 795602187 409902897 493428859 448886026 826733453 77931757 464121741 611922323 987130225 335717695 908471336 770723904 865384032 485678561 692314598 371351618 641288475 763406512 967439372 975247400 990401615 105359453 765633976 817397818 837901950 498666363 528353854 360818366 786161708 379793312 528741748 119011977 128232659 593956463 640618876 250635900 884571294 128929534 531081498 988154281 990009459 861032509 910826863 660032159 966036989 259470915 711490703 43392568 352734127 619151254 728668279 728077431 896394238 12395103 768703852 907092512 945136155 560245300 947856785 109900168 267818502 47127032 177659596 505925578 863401263 917155028 959731935 989632006 999917754 629453588 635201112 859548859 922542332 469777979 705493019 144267505 600298203 206104432 860674066 626104181 886926004 149920309 275419453 275804138 890126330 86905077 773064230 643049330 987079024 682200313 816770366 206410822 953236317 732795433 748338800 629738809 802596441 608613588 763981954 647427601 656469598 143832021 658977184 675062291 771095395 885418961 901726783 318081335 855446077 292111841 744376650 583069644 948175038 702230920 976839509 998379728 999683777 149260768 244828903 458096823 648578518 72494663 901535666 870841507 972585218 912207586 993615529 767673062 862683847 970880465 985176008 696423997 747771687 34882567 83189482 510552881 978055422 778236495 857326177 803198685 816574713 427499669 511144128 5148464 998005420 73278336 712228852 948185818 965013522 894891449 941454641 220031368 652262925 516473230 957922809 426354417 463107042 960498116 991612489 444609148 965538548 7288713 277534986 27887271 537416388 108366237 453913188 542045341 843182839 634651861 774487197 994649100 999555394 332297031 472943222 431038194 712696579 956755627 963830175 555226395 563709788 343489187 439445785 156825230 631644735 114240919 879930636 830413355 835828742 31081179 814023175 331606244 380690941 884160787 910158573 715266718 996129046 442490449 717728882 790897992 830282751 907010294 929462113 611546131 634633405 394736588 864582758 654394289 718731727 4303010 20044151 626455992 932010819 766654019 860423064 50274260 719582510 636652803 641277115 360550387 708338736 479867601 637929901 289233572 943750984 891536844 894490203 83521209 986096402 590603651 830923164 510940862 571546233 769349839 865738124 584376909 761038262 227313053 731553457 100403745 445848787 732985743 919802087 252386330 777567717 179627168 235316949 234883893 860744337 115844479 267679066 423007236 913130932 597773448 959157026 643641139 942176052 135474551 330262817 324407393 333291521 887300804 957003422 655978386 885533954 744616694 793445277 281594873 300267820 832120157 998604284 29662131 281320544 763783928 855912201 938333110 999457142 97601658 771439618 634059897 798604490 80953655 113748936 395652575 970763919 914937071 921843623 98165703 717258498 288881860 481005143 711209475 875799691 665458844 982538354 515669393 893958848 317316959 370938534 79217528 318220523 332634836 684537762 77026146 344825582 736983461 779188849 938684374 999683225 968137602 983660970 413787034 602262862 50306798 299457483 804258545 839613912 409912103 898621725 514648262 814824160 83656291 347109352 536225456 586775778 437028536 771385050 605552910 690145680 476159784 731769458 22005455 937314989 769062177 822092089 812413176 862769570 237641179 535824797 445013084 546361677 683442783 936365560 652100624 991716623 666007296 910109092 69963723 472177547 974906347 982781409 624344578 768106039 510645937 801969459 349566491 537562583 990392493 998973525 487195551 765521153 491451759 949016603 223921527 961270621 253628528 743363962 594328997 923239873 601091753 733542546 465238390 888938732 27604557 339084275 437429639 498538084 693030176 720075432 416467153 759896420 613902711 993438879 971802485 992461319 92823740 222755636 145126490 718472910 464131248 568269024 633321116 817158081 917799087 954911588 25634207 49829286 69304198 401708229 71729359 954577242 699109636 720120597 216036103 628340879 717074891 725822455 71058259 788659110 822639871 836657140 247533705 847023356 58799769 401908906 529259317 784829417 811087473 984946200 450991583 904707153 693469974 706930950 595312395 611615929 856372947 929575435 173353782 219965835 979773187 993306912 448938616 526746014 913905279 942463932 506848779 863700060 248062529 461268299 928482226 939134154 317151420 953044099 649969285 671485332 504917217 994988557 552602305 602032669 690556108 698279261 519881303 657369225 811990986 875144828 487868871 755392721 974935912 976813785 820640026 939292079 692984759 855024040 948582379 971296123 595664563 907271452 950636842 982058813 933471924 953353404 876478342 969336467 735985732 793079004 934838926 988159334 539797062 804237084 302429269 327596755 99033807 865765716 241007106 560338342 753519696 978092783 971027948 989411241 611593605 750678852 247241726 542536656 488461313 868228127 541738911 849960424 388156877 425242887 293271624 410386691 274748948 468016288 410129542 573316568 959864207 977692717 815134111 901925565 728909118 905240210 863688520 938003913 303145856 487902306 22092038 752323505 39669926 745723446 168306769 682766800 115163608 794739306 946975474 984949460 962120766 966287796 79923353 269607562 528309541 750134636 576489355 921495618 723377513 989951122 650878198 967954462 57585768 799812792 891536940 959589352 2436978 802562012 572505455 986705726 596586582 825060850 447229981 504960597 680512574 708028453 165723633 908386139 259059777 770990981 69883673 765843793 319460764 490538802 622056096 749284499 767266928 952347743 899831508 939196337 437142539 457456993 120553365 632805034 626809958 682384946 140100622 561228954 542685654 828863830 77840460 703903610 128459357 234658744 598372694 807958944 639732172 738956088 104477374 483985312 556435376 597067493 685278565 727494021 762122560 946981319 847757133 964931659 102312707 940941755 601382997 644111334 226985853 371729432 123996252 653099616 978664325 981916810 545991212 847224227 97099118 746189941 248228648 876517561 222271444 360749508 509578961 828808785 214157134 890196200 118278168 882833175 832933604 975313238 691370700 968409478 87860784 842525534 751441760 917767675 414471794 568691348 529329286 755071687 233577686 468017056 304694256 733171995 329391703 472243685 524836789 624631912 640914874 779760230 626537250 926739531 872311150 873723903 483448658 792645860 673372207 730173088 873643938 989260828 182357044 402749447 243035683 271353767 122824085 697709470 415999717 661373582 959858010 986614263 97616868 743855905 896871953 955997995 317925788 583987123 308364809 682177505 170828659 662293600 588844839 818227603 909197881 983007549 166595579 478624103 85398852 923826865 264819283 817798806 11843923 616520853 78658454 725427657 139932257 546759710 436687532 893420937 656152234 774244936 723486662 972556965 477358488 834188427 315598564 675101329 814227323 839021644 155673943 230860844 460905958 800452031 964335699 971877883 4359009 434897924 860087043 963495221 751418986 993094736 478275027 599841153 58764540 160907109 514086528 725723462 483162749 532945986 914025049 952941443 677896709 975133885 15340514 174074700 319615028 735657105 32757890 474779520 890140863 980517227 293063587 778568267 41747402 136810232 348973742 944238383 739281945 809788710 815520624 903169978 305694467 693348790 111467104 355351397 294205854 658850122 383604645 491848241 179852728 624049774 779622838 812634138 291975018 313209380 543881142 854775878 615232437 791756189 43537434 474121793 637398506 905500530 329041724 909586253 918002365 964741717 208521192 422413095 660371368 808983792 629394074 713959450 918791834 933543835 304851185 876391682 143182535 914617519 928113508 986735817 764738723 863506043 529546070 663252361 790499009 902642653 188692271 388229118 333695758 717386759 576613951 715149069 377534998 439473069 953180613 979147696 958683402 964471587 859573933 959439852 804075128 987825957 833603969 907628392 244242799 433198834 286650148 951734958 374136685 762904086 464696542 915572606 93591510 530927045 837850468 888745349 192330897 837946224 133744579 639820365 776717616 970110971 555977468 976041367 523424503 840592915 426106728 987183132 524804394 664415152 738561416 790991515 85451302 536327312 106672631 546729799 455712142 801116372 963221694 979827047 71507571 80619857 148537841 991006908 231936292 664370611 430295465 512735255 27539682 928245956 309131578 344403894 719905700 725635972 210562582 467334783 727139021 915193632 745684038 871575771 329418625 691073639 448466469 886931159 255453635 346336917 721540321 795603117 266812832 593389935 894549184 922114827 565060423 980162302 585986203 796601853 912454576 974457947 318827922 423549156 346106857 618866907 183784641 334859559 331324608 703024873 490671521 894784620 266047036 270618733 215859708 553085306 489265408 717401096 296706574 981918023 908446915 962587896 709501295 834247138 744513150 798453582 160617413 798066184 598721124 722005562 567227309 704634538 679882354 679897434 884313876 889102589 845501340 968086233 417553854 878059687 101682421 385975210 152183962 250544327 293430938 388984771 625499910 943257341 549339774 588338079 950217870 994630175 411419963 543574629 622365139 733381132 58936375 248767276 857991328 938349025 56013105 992129798 885163938 962717351 328885738 856621918 373841118 600236523 362923479 872115880 398083846 665348575 428234764 558070824 30590494 184491740 842847036 878957825 522119452 836427290 732457313 825137171 289488374 973104945 614813987 916403022 956383122 969886880 881873856 943735592 326040042 482142608 374107516 608169189 332290434 340757506 296365887 532470986 906464770 920073142 660990974 681258894 888243279 954918215 126174584 531265536 790638033 943522682 124031755 869121234 577927618 774343852 248023452 627275876 466810258 550339248 887695975 945859989 388170973 681626942 121894389 466864175 20192721 984872703 666065950 912354722 777126213 950920730 666905911 919264228 321852462 358012877 578672974 761770047 444538429 564680292 78150027 268080022 473441597 604079386 611605274 982804577 41923297 114325250 345940684 931011251 100104968 469033659 319968663 989821543 711390832 757558417 866364451 996029938 265614046 318373774 990703649 995212153 542950253 936831388 562800438 961498100 907319024 956963287 565822646 773297843 178123842 776501123 205604187 818382727 291194461 900156584 92533583 401032492 191897386 974863298 22121044 965368236 59288320 879585041 949320468 962330939 516127894 905410574 235639883 932605391 671709006 980702670 346076543 367882368 187060515 312309687 729062506 992651751 336823691 979052592 586234557 734893749 261997518 342232756 592840226 825848382 29831889 214022589 346180324 936944012 966344938 974448770 185134833 220912497 677947221 919235009 284320154 839288256 127632759 746632868 357392591 835881500 148283454 596121833 797625945 800793246 247021080 723527536 601717195 703117808 730155522 959529141 430223152 996159581 764419119 999308361 365813236 551613030 536981118 821301003 852700248 870017578 172135484 433732494 171375543 285536595 794198219 873446465 802281746 877683195 581366441 861717019 543212237 590790016 152912485 669382168 312745318 809369112 586810926 702890129 801594062 905819258 818237516 818814831 159937424 431168819 403451476 999042038 49835908 520085903 53697856 535193191 292085413 449895993 410371735 784493772 681077466 891777540 792008955 826653235 443048170 848542262 875195351 937138432 256013457 953836628 281880011 426032225 260034324 437137728 459438502 592975564 270909962 563881044 639999118 744985573 999187654 999699465 816842251 855660783 562993446 658277658 395693994 718721848 618886663 969946504 36720468 672971912 514041882 635049491 867419056 943311885 179253619 260080100 935322101 945139661 552810069 969492263 73603635 705948805 723117440 873901676 683687909 825374055 936001668 957806196 676289205 914465434 815089003 936063936 518939709 571351351 979386389 990518765 291230728 944036621 87592691 999643410 459068486 742230137 47120567 968297885 334896815 909321923 227311200 750302459 536078638 767052253 561318192 859687607 119542921 531755026 918616796 982935474 85275224 564587339 166322181 369628666 63309131 672254017 983165931 989272876 266874920 658584690 419603412 523056393 200719307 458897502 493944229 663665236 321926714 508003811 646626967 794531485 434231113 465350113 968038867 987299879 789582354 962923132 149787346 192990756 524502963 780523540 877470895 888787845 782256977 867906040 444346876 518213075 666708696 846354969 620247918 759336006 884994640 919271307 41137505 162988136 904177444 975033682 836640574 999810355 265458612 356605672 988827558 991811311 183596619 724759879 93336811 766785876 626379094 815566440 749691524 906427376 379345023 759476079 766421248 940295966 176852403 274852125 750798067 776870453 134921351 489712815 660900640 943355470 471124483 770004776 408916433 680216674 832311641 872216643 168472957 306153908 82347431 395670467 386345228 862453874 691708754 864229217 201194248 675814600 183546928 658190250 692790165 774637069 807906969 997108303 461834349 775334172 773719332 978990778 449654229 703373774 543595033 942864143 983607386 984469294 608705873 820945860 309755518 454238008 817148117 877901729 269046240 623032028 614612539 837065154 18432860 950380055 41291163 512966670 952784110 953543985 778824622 962722713 374727175 516198459 476804290 921759918 809311950 924258923 1188680 924886028 695543591 713870676 772365532 935461062 83067205 880206810 926035273 936082603 236494232 369917824 880785341 884947914 235012495 798234302 484922733 486549582 162036890 636122564 851050490 877008167 20417218 731794701 178082936 611718717 629059167 909676555 879589339 886964041 675608856 683002624 564942408 934532734 976834887 981568093 179109970 837856332 346863135 429216974 149616363 185879881 190859516 407036718 176657303 262572334 305166659 461026833 401564407 737133041 220952629 654388028 340805593 894989312 64060044 86462735 470737200 707949915 35576489 61910218 489379529 544995662 279896172 852504718 550491912 913435312 136616148 801091310 771137394 990266416 220164349 690387837 36544030 209982949 799513340 912278522 872742065 913737395 21659612 303324590 436873947 456938564 219257799 553075376 788793036 997428210 626038586 977825675 764097766 990682973 61689425 208450039 382868962 824970970 159496959 601231740 938161206 979452001 703443866 948110775 577229429 752445472 531475440 612675354 4381135 592029545 926570632 935127232 254527170 318771066 89739635 277111892 364061456 933097870 259525401 720901047 922144401 982343422 914076617 976642608 39778164 344109155 546527014 893364568 833694434 937420408 736417300 910576258 187143118 628306616 809034231 899297574 533986129 834868309 623690217 675598656 645388188 762371170 680110830 801120495 153426966 384687404 438540441 775190162 131265897 503380523 672507665 992230642 147170214 696540090 680295327 971548131 942454658 944407713 79788643 115061064 677431154 910162064 235508448 446665847 297122861 582615805 828133393 884542614 489559097 962235091 565692606 817297357 694444199 729485178 732652926 990309210 976329466 991875864 274811318 620031792 951556725 998409274 611044976 877401623 245530131 596197229 585971016 726455677 530907810 716967342 541295029 999050931 268383146 389438487 312651136 687741924 553085197 970067063 186718216 455862227 804497077 952110432 539218825 832531520 42246455 546665967 636382429 899918610 576237098 619287340 921115139 971624513 894319393 972833352 641361352 866786829 741249008 837362789 586567334 711851121 631891444 991527225 980483716 986097069 502695248 599020507 454123660 970925625 490852125 891040511 953290305 981626020 157810659 232441285 570542504 633851838 179704839 809488441 660485052 712790397 403311756 483408906 92636799 665925955 875291704 956253517 73211775 944926398 236339472 261337417 422870942 558399832 393789564 745621879 694082777 895515926 307802751 553183328 22260067 479187847 39144580 535587728 449640108 612024635 401144949 636448290 972792 35114285 550129025 867952998 255706487 728100079 460535195 828488140 239065542 869313213 142495091 667252611 786866913 875552306 965428889 965727448 385116719 736010472 868641297 925674748 764261656 994990679 298607385 996530615 696642310 876883953 508778594 806504457 564939730 752433579 38518382 914020718 959030836 993322054 894286831 914393975 25011128 623224034 757839759 806381890 648234373 906111775 658721742 799413743 206880436 432444026 552149800 830613435 250144808 277985053 91786226 294112592 343998347 799229821 874789063 993697567 906993070 908824411 193738717 633455548 953607083 999250036 257915730 626930044 51158830 270716661 177652786 577575877 97935190 104591432 659306716 667442295 246194395 948047361 271520964 686929459 676737503 821549054 816460986 887863312 329019246 668473907 41364192 566745160 980991791 995123887 742447760 950585849 602906612 724049611 299004710 733986994 541226444 621399967 439881209 744051145 525654886 926633348 909285650 966981403 750544213 990905460 482418623 786576801 641054856 718753266 863055124 886571585 306245475 734855736 317106078 898485531 486457987 744442789 443954823 694146659 736918461 886523008 967106612 998379573 207000934 502717027 73466880 79236340 281645152 576260823 422387516 843008102 178202960 226294372 618724239 804672169 804667270 946658875 520782877 875599249 172542604 233350734 10531699 914524812 436033693 910325138 587647562 785054187 651132353 921141866 845952188 856432789 604243420 889374628 243231627 995853091 74290306 130461037 103413106 414040735 851774295 869889417 860996922 901793493 573113905 975536906 963772950 976452805 692966451 875915015 830617057 906936268 624882009 967677396 691939796 725006360 434112061 526595002 574836154 897027701 57542676 693346042 770649822 854614999 733443230 761288598 12186914 559447874 73356743 916160365 802961917 899435969 183175593 612833201 609027592 818594925 629912183 673049143 358948709 761934108 158056017 412442132 813097466 981011791 828465069 996773197 533022407 938018245 268356514 628200835 883193311 947955019 106728686 235075779 906608512 971907867 309092819 765078230 320076173 876571051 142157927 711509546 106463281 921978750 759407450 966320035 445037448 841363325 981765634 983913866 288869545 515397158 323059462 485304036 879248119 907244412 700138330 781592100 169021414 902161749 929164502 953587747 527624515 890206712 338647141 414178074 691071118 711751984 795759108 856819125 872482671 901183851 574052792 692590474 353650995 451877916 188335047 291244963 485746601 706234639 830317198 933460256 550021152 740332899 303833683 336617116 753600734 940956730 16635521 159714191 808834404 927013906 789037010 877264531 409237102 909685485 704672082 973408135 199424749 902275200 924672911 992145324 431636147 522536712 87153693 555387793 224533315 636356433 164495794 722285455 741340829 763141718 955844947 989402623 586676327 988253518 226770358 269684891 939386251 995593594 741846897 912582855 675377669 684110591 638232561 835286449 303218335 722440250 461306712 978105001 231615092 590479912 153320650 422031053 471260909 780250260 488312514 932623111 556050044 697538571 265897013 913154865 53660230 882936543 134777965 531423650 863925037 868046559 288076490 811481550 413109446 646508740 119050207 582694320 821642127 852869044 240436558 407863304 115208698 471009611 937806795 949720323 99728516 648292981 80008318 604477434 554787718 833022580 973525944 975358165 192216805 900365338 138884250 910675123 53557594 249638968 463940551 503212575 641708967 995949951 914901970 944980796 517792849 899662357 789481019 911372600 36784966 504324960 863549537 975484202 429941049 674011111 276291154 841093283 900847377 921084223 458058882 839270477 204312910 449879463 375261020 912203733 33238918 967183103 264561519 846046824 221169159 997309813 547145146 984014828 293947953 600963877 463618109 544951293 900461106 900825449 83720499 797744558 55875447 557437952 777151714 778238803 700274937 955414849 99973781 953733560 112690784 548133391 881819424 986213410 47585949 747642509 365371011 763010149 730985599 877045554 388085537 677990076 140193098 796775318 952859561 996063990 107876955 292930974 713654508 984112409 826543026 898314828 681151625 707044395 758109914 956548926 210447860 291760621 687825502 738689374 596354159 764665786 159105306 511354537 7099136 869449023 356681882 371500302 508160948 949535734 594559364 872596345 429710083 537711573 540505224 551149234 116540926 657287651 625848104 907299298 468883736 913452944 343212816 920672535 335250197 651271204 578577303 857052726 368712364 917409935 535488618 781709989 405749644 939787374 623601364 940493528 106604595 933225641 190208989 684216257 333324218 718434664 585722203 806286327 912791636 957331472 861919760 941720540 232097075 905043783 756935708 966872373 716081715 944205804 686746579 782226416 13805213 336135044 592351976 734587471 975333162 981251942 982019453 985101853 129937511 663697705 666571803 734788581 203563724 628712722 831286841 976107985 327140585 484537810 274187155 859807518 867668223 917956540 224446182 618581787 642758211 741994023 766434197 811169533 675384492 780936636 513803645 588362295 415112389 630506959 105711679 358192094 493870892 650498842 482284570 788468509 685210020 837017401 716776698 806222693 179915910 433538126 307779381 924719133 123500212 396238112 687491008 850205417 73603698 150393458 782141986 811412183 832687627 991208498 230174941 364253668 257921283 562339529 403132762 618988242 807866110 815776856 574776526 661828281 889533779 913616330 981833832 997148397 360139387 588458649 17879758 390996965 470645547 709573249 807751267 868496824 242314994 590320154 739391218 809374526 124544956 762197311 530255040 784119032 112327801 301032647 616233048 743979733 847775051 918099526 572966103 998170532 526298220 718741227 300874309 852489300 673978512 938030509 700468661 805108002 189946117 671007413 856684462 869353405 510506967 678115121 947734526 978367659 353988144 664240651 199958473 250131642 992069193 999918349 304353021 887197405 562981577 992689788 327227327 754760736 419482670 788325797 788755550 799903662 693295674 736840586 191835316 553155473 577971553 856066119 49994634 556388886 139130609 874898671 707287985 854195232 119606451 450312794 127827773 412653649 31681807 991808938 44827038 311217912 357040603 794294346 72379394 187443616 714499361 889359078 29143890 262490269 48586337 559765849 212082220 901309037 943819211 977713615 400496192 415004425 755416141 931750626 468607973 677229182 537221423 984723089 186104573 712820006 443138662 575339861 824065904 976416669 457257324 611565071 59116417 167141617 398148184 713788528 765813504 941597719 110614832 141240135 543004163 862540369 92458024 335180007 475936122 787082836 130334010 780983191 976635554 980905618 322181357 553568531 114529575 491849156 752761232 985389350 180263532 329762983 321336119 720650119 745211612 828861177 577614827 797211711 28234786 83048827 570496565 704522481 924371824 946492783 737389521 952216905 994774583 997113839 170672108 360442991 44690705 897619082 72899846 839490888 241689443 304183398 325134684 966922093 412986276 938050069 371869062 809574714 432580668 510865224 45206461 461012406 37472135 176659904 352717230 492367053 614119036 832309305 816790905 837679841 288782144 960371030 612272606 834731288 69920040 487148979 745222298 957667014 320159698 992593042 442010119 911186744 513378180 656493127 334882993 734838606 472332160 986521836 929230840 998966438 572964311 661043426 604984459 861073214 686242012 802447442 731636266 795386933 869890081 963915991 820180416 850425348 544708485 782538409 774819930 839882150 692174782 810796342 763909323 959412650 953810977 974473120 879984252 985456185 840203193 963699972 415581432 826183701 900803099 974227673 203325323 852086963 969778018 991879248 17327617 288166405 485876334 981573239 72482912 396456724 480960281 719515702 278399765 526626435 893023640 949395986 38307730 582395095 553963572 934399429 672565668 868203891 641691959 803125729 614084370 763655111 573325988 634951520 274039281 899591432 818119808 945797652 648667735 706399652 789507138 874152181 868044229 876600018 178486294 761089593 465839984 540719627 738972628 983210944 216705310 722010784 216575273 854737665 853640349 863941440 475034048 917882390 554167203 986287358 313092099 529520828 863767092 942552247 972148314 973962995 148020242 596628299 715096381 934786243 881627517 899147331 536243143 822376443 675181537 891478117 699529549 701224476 743451298 920024602 355729032 581659590 577006685 967512795 408650301 568990802 814841863 997267374 506572014 545697729 503822020 891764354 948591739 975194997 405387388 828973190 986201593 994395088 249871894 554677435 555906775 673443879 41663378 789987953 63590197 731245873 752431662 986616778 217844163 643965340 389177385 969245708 639311070 720169438 526419016 878064474 206441480 915477018 348345516 489296584 64222212 138846867 407324662 809016072 630889918 687990302 355688146 542942578 69090212 476181288 478855215 927153111 842089396 856888872 106706250 520007823 815432279 866844752 21737472 864536055 280679861 976430103 881390352 916578004 955425201 962989730 395543045 930687315 178511997 276647589 766129137 803023517 340989473 386162252 365263996 888447578 160915094 165429900 128643452 393282244 712570598 758844248 875057260 986492251 833861830 986767752 469793919 488668136 331628747 969529117 862448784 949578904 687966096 788929280 854092849 966215730 220557089 716596028 25550416 828283337 248865845 952866560 498747690 816080774 834077109 960117213 11301049 860981394 871842090 997413243 762482912 982598698 206400723 628274786 813505170 823644579 935997062 943200303 612934676 992861032 656240887 989080751 277293315 319533893 87688695 467026884 111521745 155171777 148158393 650985706 32715324 557007042 615088578 825099201 713318678 795829465 795785914 883489180 514032981 785853591 976640929 984925351 577367139 691339220 373103044 646187056 550353919 950720230 985275701 994101429 341701920 536356056 364553958 851787082 696177341 725438167 476145055 621448637 856173020 880523518 678435753 720023455 98907099 265568788 37831111 991970196 594104698 759049581 941056482 955674757 515179504 806787115 812765184 830425847 734292413 941837273 552601635 691724630 796209874 937565337 34270829 291653119 427509897 805837652 311079673 479195362 28914517 841403425 318599934 631270395 556821629 602626502 972580533 980176778 312755198 582119646 368760153 890909612 35740095 339300286 65457655 568506762 832976225 873377296 191745331 783591677 884749442 954914361 598896139 691377533 734423481 755596137 173796086 733217687 46087149 839044699 275386168 761653673 205182390 961895762 808837561 998994678 833195814 876212269 697589750 985994148 497295901 747130639 605282084 900065228 351506660 523155883 100585862 757494782 570844522 986347241 670763947 749205955 744792645 993752064 677087078 879956220 828464602 988203799 221960049 769214621 663547061 692411222 571993271 994259443 683293238 968456665 108883945 139485235 96027233 613509504 349653655 797176223 190836603 311372354 461106116 769052429 62522858 240566533 892936894 991284015 221404523 883216486 477623015 541586836 778036404 787780719 410282176 805559264 124550846 857805633 428171965 985637641 647539380 814659831 831535817 845951598 136093488 466656897 146207407 985106330 534769180 801446641 632901126 951235579 415815165 552467931 205843182 780269113 410494553 751701829 77106052 282468854 368430049 396986236 525218860 874827152 267257502 524044660 527843558 708032554 957925882 999598896 140721481 693393295 639367251 931779894 72545775 96645178 746512800 854917770 440993039 815707566 435793212 870821470 343098230 403524846 479956812 504794117 846268187 962939289 847000964 860980644 960105412 962482796 99353036 650865857 911837853 913798668 995169214 999825620 914850110 974601102 423102099 853107397 205635573 838947541 773725713 990181824 154426203 784460251 533382197 877012680 165813025 700366765 255363455 778212744 988741326 998417178 488069779 669214018 155032857 473434060 626784013 708451294 957127810 998720981 96694284 126142417 522440597 920715241 783189856 943931184 693601001 923352978 754715213 880476294 496215900 593440230 37002311 294460267 251216720 510662502 138475402 667896507 634901583 714247962 335858502 867308520 115328410 734880580 539956082 581373360 797793377 933668169 182661439 763162612 180107917 216697497 226061038 422084570 99896741 154490385 598279598 937942916 894894861 916533435 382741007 989532676 715665633 954849554 477302023 721414721 471668832 965953144 413701548 870102986 325457201 331515940 873940974 937952036 382918949 578198074 422661448 587660884 543673659 876719508 48617869 448545826 948083399 991362617 971421608 983790182 58440317 128678800 261598239 761521538 314241051 497011360 459215183 941473375 261454661 874266562 334612872 421227506 13372564 491858412 197264939 471857681 258417368 317194465 932963127 974528961 244634616 338755562 52310002 289160127 443077434 984637556 335765098 928993244 369741101 792554872 33867062 958672835 776517388 818737335 900507538 936785772 904848141 978585691 665043290 812451476 359737670 370285289 584032533 714971779 322712880 797096924 715998124 772916689 247583911 512035748 447277720 883635940 129313362 809095202 51413531 117672151 170669276 541399932 296488381 621607929 790347571 868568408 191409290 945667992 285975923 802845137 784739049 871240706 533691440 772915986 672132214 889775728 317910480 323832522 48370229 895692702 533737076 865785900 148607035 448697066 523414120 701528924 528912713 995590867 575108662 754504750 326241232 404145854 770807897 841870000 736471284 775141741 689546098 848701662 979356047 989998454 280258062 440919106 756914134 856767084 7977631 535413180 821945846 868195295 807838982 892304026 301576714 595444881 376687270 607360482 182046810 460357528 289773502 711238706 269625396 509844008 28674636 175419864 164133883 526258099 169518921 235327513 260724177 693288839 897434422 945839176 233710101 312538598 236509993 804208228 512015035 767140068 155079116 374578425 245366916 567611496 511681440 882161469 174959749 890681985 221193680 768348621 764747008 962549344 554816404 645117858 532310951 657708588 333520038 904322656 898351230 957386658 708724007 904278910 512275812 615977049 78666831 609059987 361164559 683701508 136160218 311752243 149071722 631953617 68749062 817711175 339376235 483139574 715487446 845627770 650525733 975054933 983530498 991888586 832082788 889560564 367569602 793425562 87523847 328370011 667621493 716564547 575694566 634048165 593340450 987156252 602110886 936056578 924645179 978246095 335141669 797422068 518040236 790294227 25281783 704375440 866377101 903519430 164577654 908970180 708068130 946799307 451094789 709918631 542885288 756432368 218058082 234972170 859319326 876012161 648241122 985331929 232555639 310410012 170984820 260726725 206985071 701697780 683354819 820363990 901306324 910814581 494686309 706059302 73490560 376173710 650979419 988354719 702069799 931693100 625146893 755807401 456208502 920608358 339249825 605241009 992135942 994276960 549017230 841658586 857648053 894002310 889186840 928275002 253213 298434350 855565442 927383571 192701725 250697912 592632616 930335114 438071702 954971600 419097927 483678060 417235193 928451506 474717680 859081413 327122160 797933046 10401638 212437786 517713044 886421712 159713537 451019668 152991712 211566049 573103639 942748734 860353683 905821612 13714597 570627851 304734107 450954213 320932789 689299504 429787863 522240030 213274542 687505533 523834372 922538233 833913092 861020473 233791412 476170021 482466743 834379703 354792591 981779366 795980158 800451350 242886975 519468581 42517798 90909962 155537719 959607890 129972011 826200721 11215211 291779125 306945377 719124213 835586767 954379442 950843468 956626641 766178286 943822407 95334995 531492633 898303429 915442211 704556069 725313894 95580879 692421963 418973482 556606961 12425789 875576117 379039901 863600156 401411319 546362557 556872499 951148849 328220924 885140864 601773444 936416195 463858950 841658963 176923600 587769193 383828309 926065346 574084640 693410870 155298107 257753365 223705152 961932141 6275246 282167007 555002765 908954484 787482657 818762675 346661020 693841030 520329392 601216324 389790553 603484224 838624318 978024067 794805677 939048534 614752387 977548970 49624271 319464933 839814391 959341772 177959943 986954860 783506150 934679364 872255343 908666344 249449527 697760043 170738024 783736869 252367171 540305310 803230090 985164072 331689800 897345551 250728997 367243475 788969786 920710204 989515096 994550615 773083855 943273236 319285130 645821556 610051442 707604969 74560933 539255705 934069614 973499873 653846027 818875025 219219034 486437070 383326034 445344146 807174928 825692582 728964185 908792794 311580806 502284074 230860710 652053111 198570266 336644953 627144156 687716238 507029952 970814165 841930976 871195874 600553562 973141613 287321167 522194639 375360183 715704151 782700547 909243529 392197681 827662257 680538904 997252076 855385516 918084607 321592026 617027739 59249255 156901503 822454016 849283246 332771839 851398261 320878849 387832466 579263810 657942384 991721258 994278592 700400379 767974085 525308344 773366184 135894399 199759450 435848201 868094462 323171374 945647815 876072690 965608594 796679419 857521634 840077083 895071658 377316878 852569807 692860846 736269340 147723498 443890879 684787415 784440930 117442947 700742316 443983799 903609621 36869388 976828932 657395487 726731725 973420639 997019688 387077867 472844687 783707400 950554497 180800487 292963012 179551191 250119469 549179133 846100655 974486777 977908136 194035501 261741044 675275286 958140277 533408924 929412885 583135880 612560276 854380578 893788232 334265223 579714936 99716348 688761555 578518721 864571553 396210021 965834471 187958843 358877466 973660765 993793004 951623860 952496902 411271457 898861251 281273395 738933827 354375775 728789229 529926429 850513005 985716415 993849286 832121289 946989975 64833696 242848314 923779964 960663505 8749375 977607320 900901976 969462152 267843285 735341528 166509805 451063491 505120691 781916681 572192392 837494926 156000167 215219137 781340932 897642619 359331991 708322060 906644966 957392959 999315965 999426287 963510266 986739794 933233080 997434063 627728145 755579880 712743885 782853935 706239814 828733293 50914264 761982346 557864912 769608140 743386489 775071827 522685838 993519276 405490539 548640325 650934805 995950749 235500142 710607955 840895469 935376646 349006261 578366588 703646076 879110023 15768381 777430203 753268875 758514271 970896220 977283152 627019559 892610176 437188732 664816476 269762848 288469653 540897274 547313451 508735150 851574243 460289133 594871684 292513094 763606389 718610016 825761731 330312624 635992176 131409805 591851681 460063809 915964012 688664433 908522785 812181707 997610689 501112412 979505410 983093046 997030897 27653388 177747134 657259094 669789389 955102726 973253055 944007866 965433084 497595935 776457549 169206409 287122266 566197508 634383471 511352368 630842844 469840948 779986652 368904261 714101732 603087139 714141027 296404660 742407530 119437019 541282189 40273112 668106365 447509938 499009937 381742189 502267778 874473765 992207284 838657053 847864749 708482181 879573331 828831079 932924975 823432596 994211665 910602325 972225678 619360238 958737003 783465250 818301288 193929605 624581213 965268603 986706907 200710927 249939504 866660396 902224164 698440974 920105693 26877084 934582664 735730382 850126294 619237108 665203804 182378732 313499344 343032916 452529186 155175775 873896430 873957031 913525649 265518752 708916879 219637303 636901709 617368129 617493797 519729068 688440654 518202912 700146204 676407357 772562392 220654440 761498097 356214066 547400499 588775572 933798720 673737947 701128072 787260346 967205799 321305146 745733368 14255031 333892491 952531725 971383110 613287755 876331195 666977846 806595782 883832660 906300158 312385657 744867847 682441416 874995698 453175371 966804523 25261715 101231868 119912431 696661950 31343227 752076580 571401166 790117983 90224872 878539593 782314570 818987427 477401467 828702412 423383920 436104318 569411345 763208187 877623548 963018112 566137401 939892233 27570442 788259570 743082460 957374776 904286223 946974711 759585094 852693654 88196600 182499504 824560138 948438521 161223688 366849926 775978521 977991495 516294602 532072743 537917653 745944279 614505143 675800936 492822635 616942978 326795027 582813736 337769375 917156745 522498974 977067474 630115756 922332709 101135543 561888126 608119754 760896664 232988516 525176183 947968412 976933893 123266792 454455124 127611873 757678689 569580462 589070040 986968880 990713607 471879232 546266659 606495572 890765802 340681281 604708766 562340194 745779938 893009579 939986351 413128376 583665559 219979308 783599134 540394968 960573036 54866131 504887207 543805520 679459085 737935132 922504504 431293628 892934501 447145662 976941008 816987798 908157305 323761944 980885351 337639743 714674128 279870251 766400996 210458099 316695286 416871048 997516075 697650025 795740337 172720112 305888630 715998552 720789753 193815209 892241168 960218389 965669785 802134363 887407369 791910435 996892929 633106488 976743668 792755048 938953132 174187892 468026206 455328036 739551687 86836566 637896215 138455024 274242984 558353781 974896124 891256117 970183089 837026239 840739600 763210249 979726806 693021305 983592485 164060780 456795805 444297321 677552388 485468816 734873641 595982626 850948817 635266023 636540317 728264528 970030017 133858320 666570092 36291714 222338718 493028045 902392122 200120698 833254908 763849778 974851209 499756958 938296340 839096698 908321079 966237557 993604959 495804900 651344061 950340824 978094558 51068828 296059568 734687615 847588010 590637965 619978933 17911633 882238793 882108605 944277574 585206774 634573362 598747488 694220839 107599779 193120695 313469088 825543503 717864168 827368073 179819897 267877660 274862350 359904509 869196978 978150424 315768112 865399243 504363343 721203084 772344337 991924955 216193323 284881190 882893856 885952259 467494213 668643559 541704381 653709833 130599963 406454525 864476924 877412445 456996692 731861870 33536801 983863618 801984912 881702980 746236326 841648721 460069712 503095532 379130221 599445744 789174634 880865418 410578383 894462295 277856975 450341221 360072910 751623900 620906898 925221258 704813167 812884774 496523559 965832610 119621272 215915609 986463938 993710857 413780512 787892189 129025381 987782373 889184930 932916918 319826929 990085761 645301968 688032047 684325101 944393756 214640038 227451061 28315919 779588958 803030090 962981195 754273131 861167110 445038194 649048387 377774739 969907765 716922437 999771854 485738385 640223328 706904450 746843520 195222378 538960421 612404614 656544681 64332458 972698747 190975559 450373385 46354476 512065840 599514750 918570213 476757764 925782001 890366683 961113835 61965768 181647446 973624076 993581636 778491299 801185082 663571491 724459786 750270121 840743600 102741917 811111565 45507276 153082607 507213109 961114313 610130940 940421127 946648100 964482240 870293903 898664986 742250290 919317896 148051400 800673042 515533011 637522545 267660578 483339050 771126647 771641169 504906249 829119456 703871863 832082352 861286035 862012032 38470514 768680394 58169196 672462335 412688001 494274475 728821077 756298270 925851024 990905452 907588466 922118962 772313151 864944956 976283074 981398084 79886939 500549932 233056443 292690188 147336629 920379730 793080871 821121663 577295594 786856102 822823671 889205108 171375867 447639139 490220594 809210345 694909892 924005324 855275327 988353956 362074129 633588197 951765065 954239749 224196441 954107225 291186682 768460841 976120235 986418113 702757760 806774594 571451471 920829697 580136895 612177731 145231159 938189137 205459753 227364526 924523728 955197572 872313041 884196059 427375620 616168270 375864363 516965983 126914026 544297219 394675810 933401146 390036924 857699060 121591913 896874600 501038684 932043336 373297638 941903096 797446173 974949676 224266846 835385886 96943403 579767392 219315657 265679557 754987029 985806057 666202313 683367058 606800176 670385758 59481252 874260757 996463317 998092663 820258934 877492522 933629840 967454858 502430904 896108326 854448748 971804277 702147046 853456969 718203586 869310004 300175693 977284104 581046912 654143566 306451420 625229255 118940067 359315674 380843755 688038465 55083273 442092619 133634192 929224774 871194219 880481012 573960438 655331734 536109139 997623593 213752621 467457806 991846104 994322012 470893384 916608669 145510438 849473249 5168069 811150966 350633978 683971889 305845353 358817288 545480621 747331586 486242383 537426977 143298603 603016990 182030584 877907887 674169298 732908079 231795787 645375083 293934546 738973159 682911247 804664609 576070063 603300092 223141070 447565575 518764145 690411815 598632709 741251041 284432848 294893436 168896956 358346799 380273523 793048466 106666731 663816045 743214138 915491994 506143191 620987808 714719059 970306347 405614830 617187013 463728863 681122996 455422474 761501078 546288815 800776427 719811672 778069614 935873349 982198740 638436124 974722367 495559833 931072302 974396319 981732025 719173734 824923260 675280987 850359955 551426179 580854569 815645921 896377270 469688424 635138059 221885756 561111943 531912192 620017128 112112907 116211791 961092592 965457459 414651320 475335011 387314049 775894196 913004613 964121315 308157681 929812357 793663632 839462842 731648166 747794853 448218410 736422949 93259326 252524208 260514484 461994655 57977725 484891565 283751885 670284385 952264627 981117261 152868867 265295322 336954254 776799170 349672476 496206800 158435865 787007717 772564286 895697306 123092780 589739894 494250195 564811609 698816466 699121856 137926326 537348781 422347366 540916668 165001704 808976781 691500257 939861137 104415021 139142850 224756451 263984527 209018161 957157188 912414066 994791696 161493443 903680871 402048166 641411331 67718659 117271510 87891977 859562698 687930189 785190141 681432267 874980313 48590136 497554426 645760359 972555969 159475966 226446650 482870324 642725982 948087164 980966082 194026323 449369790 385621478 776351044 352367075 471625153 217532717 621251034 74442980 388340954 226346923 332718164 509569199 605366763 167824099 355894214 99421181 134480429 499172860 554307619 681109174 891709737 631121189 975818691 290552227 583871578 460363547 974504225 220217659 671771104 442745019 831465373 16212482 145124295 473924784 513402745 658903441 678751148 803080606 987368935 362608734 613687682 95498421 294750943 770984388 991342107 574200201 859314955 891963002 932094384 6611026 892075284 344001412 674425225 674176511 680722408 960643711 970438524 247359546 453472693 20415794 527014771 690190146 835879413 730855741 794805358 483570245 569240906 82081092 217785471 973178867 999556306 323429916 821492916 459592133 781587977 996635174 998620419 620789781 924914526 994671526 996763964 866379962 881380695 100586621 912819352 220884089 651336550 442915178 852219598 545632081 617433578 38027710 864735597 99748651 703385494 119565378 504936389 979511808 988525404 114732597 895118039 562760916 871851490 587769291 771958979 372246096 677399116 223540083 516421328 211934134 819894360 167247272 169960957 388428494 833435257 177699043 519345492 777250985 807736318 335804725 743579669 475529863 659428237 133583513 455065921 314996716 657173860 403489153 619158756 718573953 728830736 4255473 526954783 61459677 175212196 272587153 543452068 112601128 492909156 320559984 629206539 41708898 539125439 395276064 417310626 496298652 823971668 613493638 761958882 121946140 351582512 205258193 541392745 380449927 701308110 752966755 884421380 808169753 893775031 703673069 824019292 217618363 435701956 45702921 517901719 656285683 793973947 75758516 200630778 844981211 930618910 728109682 852389229 825444725 952911629 754152569 869141164 532525987 797308372 117326413 182592469 659056973 725276829 144130258 564162202 478874253 907560374 522626551 980376833 634798072 813779475 371825211 744133350 397171522 656252593 70913007 154030462 775696392 916090690 630237289 811230682 252365999 339097899 206608602 267439498 920436912 921710094 49818077 484695479 684745375 908567395 674689730 734311121 685477910 971369696 422930936 556962539 583170173 939142122 409490993 967748928 836913621 857690924 145903501 573209080 766180402 884418301 74704345 713674041 995839119 997134586 454979320 954818539 12385110 338913298 264373802 270382094 913111463 960414680 264748381 663755865 209153831 254592853 805906352 963451858 801086148 953723446 534668963 567771899 344156659 578810644 832941338 985964343 277497588 311260822 178736187 538628348 601390562 746832134 134875523 486006734 823412095 959597313 967677627 994001597 579586164 846445495 990066998 994227707 792559073 873236538 866814649 953994200 317992488 411858225 364784702 988404024 503575388 876879490 931155456 931535832 131858151 247796097 574482876 847668115 533326254 955574851 946381664 994122087 589319192 887009457 83159214 717432329 152940366 266021798 12360269 489949758 893751580 917685297 473942330 543991986 956879150 969110650 852921876 950438656 280342359 577733416 318487954 805954956 674008275 874803387 537407128 572662731 949999665 980416407 962728283 993628300 839342986 955258446 451277520 746007738 170208710 240155306 83284995 594969658 911572319 913295119 721639700 756734662 244750726 671487509 109627971 738228399 173693794 646712374 766085726 807254459 812711944 932647561 94602048 216259737 754818423 920396505 912362946 955493256 87608259 871998754 930283834 938320089 394828210 579965738 984763784 988713754 693297226 708785521 741913310 935085414 998445234 998769946 123667071 793218971 2348120 815239597 812135489 901999092 183727223 371625276 828281432 933626381 5692467 677027140 607927421 760640911 224220882 473898073 783817 484730346 87647837 163962507 962881491 965163177 955080007 971177084 376801444 638394197 300314776 984062960 757178243 835052079 402142213 553463611 837855621 986773449 797705541 971378250 294299023 919809053 903750661 985666822 603240350 618424585 760698877 970332423 616467657 968394441 782795393 959211973 272699851 755246482 172028933 709592136 418277772 534089441 722485009 793603825 991548739 999603918 819754526 832513949 244571985 416882458 495607187 985502236 564011168 859431432 239229563 815481938 358308184 561128594 340506528 460218377 84865738 843994533 908449819 966098018 846888563 895339988 34701440 941730818 221550001 961272501 725639727 864758598 940819673 979672521 300171125 765948059 422461822 925069211 384577431 504010728 305899855 913470735 987670476 994721135 202151563 504980911 658007479 740993165 730228520 811592182 195657459 729605428 307854455 675446550 999614991 999816437 261281675 964425423 755641831 902256778 788656789 896162513 568000134 609289072 282026202 406622794 706609027 784050881 462998942 926691689 312979976 872692920 640067181 873409698 250687099 293305711 459846947 925563371 866865647 914683051 418570225 668248557 172167306 890448804 251893724 266691186 682050569 724210184 684341204 738067060 637022382 670091216 432200861 666441437 472243359 713673511 655789167 943668111 9093524 833140241 63889368 855391919 690160421 835729654 754456787 799583822 783708721 956807944 479714495 592648226 554472286 605764177 994894696 998127154 930938193 987836241 97423085 314889820 616329674 768157883 571129994 829958224 288790376 901439727 103892476 682838727 6453459 859913844 928752526 946927789 55968482 439239434 331633024 674751846 794330956 917255735 441402892 678112005 529559083 533653703 841239454 925749352 585664651 991169893 10817320 940366499 679498811 980286011 936969872 980776166 91388197 308476404 522841614 968499254 723625876 746853079 998436364 999703090 499009837 911777307 461154625 555474445 304229849 307673481 855091820 863522206 679219342 838494473 253042765 848037823 364953735 826130515 251422586 608362024 50968890 215746032 17737126 884025939 355564048 505860063 185750487 579762608 254852309 670912988 862003270 876271235 735121620 831309715 436550561 729009844 564936390 709217794 640833634 795575951 944192959 999395150 467317581 838263034 3742698 766385045 877441755 981787211 602520749 964442602 210676371 465694505 278654519 291449652 662123274 899094457 186902482 737479065 652661 383891403 694758778 853948499 823143617 971785762 122144937 866137345 813822006 847127509 713962286 989422859 345121906 740942533 757596986 866152616 498513237 708878380 941478625 986849097 538289188 990013851 677132153 772750359 939027562 961406406 899633438 915495422 816178285 990851798 968305521 979192012 156863607 350913745 713878673 946312515 156029987 483381164 365476983 519898956 659063821 742698835 560822294 911405406 420831668 577886080 584448329 814200227 6238364 727107453 214109631 917125286 675714376 885276966 847904181 986992877 388156674 984870145 586863889 872013232 89010668 577997211 24846838 227491101 550416420 813725074 684603044 881216126 209320881 632956358 451177770 486895051 582694908 772595351 116558335 237409405 968554698 988665572 438664569 480068769 947014300 966605486 406088831 878335697 928040431 996345431 552036590 907107526 486009371 813426970 610440306 612473178 239639344 368215374 919961158 942887678 715696637 854006213 594534673 824162197 581089135 718398586 525901521 728140067 202570159 361420761 909600929 998373628 643435639 659391893 976005089 994913499 777185139 974810982 601205496 955286654 498059567 847056317 422963937 694717864 937143639 968340535 919665349 932045749 100796677 900422291 19255225 231820565 693649025 736031201 472943371 642381187 793399728 984585360 882901617 994569414 627953392 906249220 877897469 917266772 259915886 261325259 337766727 893283781 320978822 507949110 385156177 649593413 127646258 631312822 419937656 682806781 8117617 263190300 520862290 758527908 194728059 304418984 647933385 930517020 699634058 927662869 995303095 999754307 489039131 553867753 480365441 675941453 913202919 956805694 683647199 685980659 794497075 935837360 564319506 782764373 29460635 182466049 120275141 670021516 981409408 981893164 97956620 248725536 886108380 998645993 54921427 749829940 12850868 991791526 900023132 969248135 37071445 659387695 465747567 550426102 67363160 83719510 830151343 830539556 871231378 986332310 391942411 922360146 438607270 603893397 748517952 828864001 756496307 976679596 669047089 846687478 854193000 865815863 570729849 989460064 272202322 459415979 33762501 760083642 452467706 986684299 783644246 976179320 9529436 872839793 358623687 501629423 780542787 921613602 632546108 840845461 526165889 904912955 242498211 617991929 886092025 948568652 156265699 414549927 602038002 844093080 898437279 914862890 206501443 596406303 701495648 943485275 696320562 970681616 336745610 835526319 365798078 674075022 883164813 885469534 155522945 558594120 949627535 964554575 182930664 908014410 751765221 945752604 778891331 802807288 924665485 924969869 145177550 509732036 295559720 907149956 589522976 809326219 665495457 807469516 256294929 894294244 988462200 996014392 337160393 375703546 208122993 533753327 857741431 984087992 103977367 255660876 755165293 838987341 592194228 602473179 893504599 929687090 230226160 390339933 156043891 517019144 228702205 748583103 514513475 527174674 864957725 955370197 161095975 818371680 858714044 988444804 963411555 998081736 889893807 930221717 370159519 934559535 827829307 940598798 441801764 817419293 252303461 286575252 33387739 731368203 883174165 899641693 613749444 741212346 943862950 956040527 398126284 766663117 522034666 541150453 140041807 532672122 192128192 941326013 605919432 956457905 797118575 925127986 28374689 389169267 659212914 887883753 212714667 270043617 914535422 981426884 774616938 891329218 734306221 810142499 573903809 695704933 313669625 369043130 540396454 721764193 114462435 423765375 474017142 676045026 637289329 760778529 818678 554995353 251656623 568492139 488973063 770700915 428040159 527288142 59351761 256677950 612392045 621382258 296531503 503128157 460447781 481966344 480071408 777307642 994069873 996369223 683607789 991833537 228074110 557703271 492629088 960319220 129840961 131736926 872221504 933966729 320877440 330158071 535201952 653827985 332326895 833548282 497953071 681341045 634459594 666717764 105482007 120198044 376913798 671369042 904318331 998128733 893554976 916614662 147557284 947819337 594320885 724811737 30865511 991758150 907989568 995230550 816838934 829493501 199226255 755736094 587361428 715431372 352399962 565667194 288979819 643709376 443119208 860801825 255481459 497757556 970713411 999531007 44152574 554846059 627462024 757549336 898303973 919724869 303193088 953912792 280224260 463324428 308002970 824589747 20223057 837106206 684234188 701777106 909963534 942639710 324902431 338660214 274020562 800421941 451287162 451398200 247518488 619323987 774050173 856955714 309444633 415711893 588401919 660531315 258684719 516327614 540818755 580614400 643323141 778393179 562676242 900923455 831045103 928395613 894907432 918989627 218168204 489446250 108431384 133561592 680861956 727715993 960808999 975435033 794530638 799696117 146804242 736414889 350245701 399649609 486624900 558487086 162278592 834116188 264907829 481771276 264600779 337275074 463451826 753860792 496475783 514690128 322250012 470410187 612034076 637996636 464922170 628437348 719643551 890547254 457222692 473313546 64467196 414690110 113680523 788200791 539380537 716322481 535937468 965419294 443129162 529917275 13607734 535323209 583262534 862849820 393897791 551019719 951386810 995874415 885656802 992526226 866174150 978895306 536019836 885030003 436342382 680557293 79124081 220261978 362099634 790141939 956907426 994563560 924311061 980697506 361428097 456912626 779518968 976540985 883732413 990346150 119692796 200119260 201164377 243948335 563139983 875961320 228591502 305154208 196434932 650949409 980785795 996058648 306618986 607955665 704567024 757437039 360026496 776813461 648465738 933735915 419063202 634156036 960311091 978973036 562205989 879764697 181912432 620100294 641470490 927391753 693827561 996346510 96720304 429253711 28231430 533295989 355642562 554986299 911309112 995605392 204309734 473190498 621780454 706107251 202235606 695799270 582812269 871631546 795443005 899033661 74149893 170933872 146593049 333522521 929588770 934812821 630216577 927122240 568875601 644794414 491180836 872850701 287328545 316586524 431300799 905667896 15181842 365463340 346007568 781619871 929740964 931528779 431902859 596217224 786581559 842575142 529834684 792971846 95555445 620970976 520815843 562316439 400277549 472819931 411067585 652779519 883297759 885616958 856565611 991872891 526390210 824277940 10949509 934002075 432111694 462068530 296001679 741925279 302944249 741766223 336636650 692139833 47873417 207651182 509800789 834614350 471581227 750103161 876865402 961896545 669080496 697299614 873071047 912853764 461320831 553407216 447635283 819929656 994769982 999495763 276235393 993298990 365606241 604177242 510929618 734493875 608925000 819732747 68244347 858285471 436965598 628072872 38133585 867888309 29130863 298043696 472977300 645025146 816587162 965108052 587267091 960648348 816998115 820189521 394792374 829055438 318780381 769319857 180354675 620577482 459837633 567093726 621006023 780124575 544277582 805679809 733508536 953495455 345024756 398561407 558801273 914630460 513698940 742458603 735559440 920062500 314664576 722515859 460755140 630921001 43785039 363051877 538421624 721030374 541912832 907009258 555074366 812624910 902521182 986724837 853620701 993316156 916079856 938787686 166990754 435321510 232436907 970833244 968464716 974526425 648126570 939473157 53591881 339103734 368987517 532046420 265212521 604458510 144293169 149463462 178819658 752430104 401536606 642112578 2616881 692179483 41329322 757769888 602703892 793218807 876011042 943028076 619833310 875469432 406411364 922758547 406743673 803555613 980918248 986086816 231702521 312499408 84709384 931714442 868434529 920514013 653580189 942034464 501276996 698387878 897927686 908966384 768836248 972012371 911050331 956404108 403762132 723909477 934805188 941298407 366928540 452990522 686230541 707171198 563558431 906427235 380603262 945338418 507239054 794175153 759266900 951635706 893990965 960825740 518647237 810164768 334178435 784960904 389191409 992268982 837713495 928607451 316753068 701064919 788053605 835135417 996366196 998311457 536008656 617799872 587741524 631834340 768195556 858353853 647389479 936538279 339463472 562254547 524971358 671085096 231535491 552729961 498353190 817846316 358145489 365806765 136602655 654750424 878808797 939672961 29956105 904000154 358306915 794596429 559683519 743837578 729249039 977778605 563252564 831901980 969100773 991973279 987997162 996429138 874816266 991930209 329249106 450936034 240359939 985669835 76410882 896066050 471908624 749247319 914426939 976048479 769682644 871306967 279166757 583398646 871001198 944071297 24616388 132963152 175172183 656908655 798044866 988611178 202449931 594552161 228208326 792976115 632794374 759177628 891191907 910147036 482353563 914417851 276322197 903898384 748478938 773802036 897449337 930362047 983720161 994212957 760152673 958644301 232318369 901427846 893591923 921443003 347428879 794089047 148338204 260053405 255067934 815121348 780912270 949602210 406114002 877853080 211597331 300667169 709948985 791869956 664059543 838412031 910881723 991347486 688239819 990672342 211666452 275049542 258668280 462054885 623333178 760604428 706950535 982285606 711438066 992996313 42393646 736371646 259611457 298262158 654424026 823441203 646097286 966700551 589607767 947771469 365944828 691226593 477413485 661086511 132849324 448355335 701459414 904662559 615420168 806398883 137356461 499024994 275337905 835270063 212697568 319068105 334083365 871336134 215768628 616841283 616457425 633402897 609909636 808010422 232088020 387663867 808833275 994432224 204355950 418349712 547729740 619953604 892144960 999074983 260573944 311515500 332300166 831532109 139301566 942333084 932041410 952035031 749800252 956523539 628129144 683752050 528527103 925707157 830531475 846670088 522975416 618497634 502242386 986037296 646762243 830137556 766771837 863106676 571156583 978800993 427843765 489959708 89751592 875865855 843368408 921871419 903416039 949015428 915679564 963341932 377628084 863197951 328492936 688496941 568364412 845670708 517517287 734700583 377198727 467054666 363626029 659221489 909678570 993542990 112256406 719578635 931034181 990280947 268873322 606350738 224427275 725100846 6771342 655837942 122439590 818432638 263759243 767936474 563842775 697445195 27407024 342140528 251090415 778189651 237975251 308543915 889299911 904429136 217007621 875931429 206858429 501034419 79840721 186626720 769839414 902623004 886033529 957745339 671185384 977791258 351432062 550346547 575449336 673019773 424282958 689443910 386537887 576511009 699028954 980176965 953052152 954719879 144068763 867695217 185301105 537487236 349769131 940128038 20116760 958188821 156825193 575724054 396905532 733566448 750343720 949861876 655972794 828731490 1315455 781330362 598835407 713187635 8654575 567961780 392875506 532510069 633469715 836792618 640283494 711694654 264916013 923259946 796025336 863774357 512103542 806741435 286638526 958574817 21366539 541656096 228601756 994186816 260454624 777665388 834622317 926722322 939573865 989693514 419300095 914871491 821325595 873217192 516829715 592343747 314572352 457205063 70956986 740493769 970142966 997411576 937900367 956338302 526116332 602221876 725373549 949153190 155264166 686533454 504720395 573406799 353202834 650980942 455889533 660224050 120597882 501385959 988352894 990627066 385726796 679418960 976607366 989220417 772325436 975520596 863866781 948978905 54159060 774717057 123655911 159310349 116948715 817914717 706710339 948681599 508992496 725867516 32878821 454707731 160072398 628960095 400653170 569205737 858046009 995431434 236365062 272198686 445407112 861047816 223402034 555556377 969265042 985231588 598626348 847100083 360327329 651779057 58833548 130136466 560677740 979286779 787563660 974881018 589251083 821769865 502655490 729046441 637781809 890319102 620003310 632911767 244665574 851478865 184130504 742465786 331108254 869363195 722220214 929987239 35149263 156370833 374045094 747974976 892508440 895189557 442889605 679047243 557800555 713018535 363249428 837468339 480999668 985231002 624625311 969549502 46830205 211325708 419646500 473914971 12506128 609584178 502667029 716505135 47579268 663572860 111269476 311336979 743302236 955461975 436581468 953844162 577733132 930124516 626793597 957221585 24735107 525954402 408015354 482180065 41587295 87724303 273277065 341939420 565703652 819306756 95649546 310879373 763941579 843697681 917457484 981960916 775146888 833752646 56459227 713328475 61392464 721621052 289365310 774130393 690270237 864029638 636020199 647061730 725439052 742989812 161189410 783172677 11971302 882739702 843253345 985154305 122484154 139740611 635747492 832328944 560389650 572859400 14486205 895086543 899416618 997247071 715871200 886453515 136804706 889257011 911287157 967744358 92672745 868104757 253573461 658842011 952419490 978213591 760769561 996964311 664872822 903705155 169170960 649655109 182676255 797343564 338807577 413579370 716032108 717198484 361736120 688418609 959383734 973757731 336889802 827556134 559487669 767281729 549440645 783938693 309422471 881261589 924460635 933719249 368373101 632832520 123879263 562264833 454291775 700622290 700888648 754799043 209080239 325434084 878465267 937541362 669456219 875702450 74601456 416076573 446457727 734461661 545034889 731854694 524953082 965229079 746420422 894666543 623784481 690002879 907245950 920378880 720073829 919831438 72110375 697627092 921019447 975399328 993729777 994333003 753632056 931029946 869577574 995875556 325153856 422340338 783298131 949396957 233276282 954984058 996681928 998020495 503030219 512979049 4937305 644714758 551961278 926558819 412587433 955557120 939937983 979520995 771056986 799665119 970249267 991000719 205595160 411367433 904591882 925998255 159659234 412344060 182639830 197898346 345358244 485312987 51083348 674822067 678970934 789459934 192650847 869066739 772179510 802677591 474408864 836209538 27970163 786005764 44030883 994283859 113203064 802733227 45505231 262529687 536916535 891218412 406397546 517011727 884800758 951459606 403451891 814596776 509016063 873394004 713438561 741843026 698717935 836020812 76923922 199925903 408627836 487488217 866204525 968142555 366117480 446803704 842099163 977305507 445422347 495762489 702122015 824121032 594258486 712765152 308944015 677988647 957553015 980258234 364329455 805411784 136611367 893236699 254242917 398459529 416997448 689596840 293453707 902875350 227254575 908203769 774554934 864271230 169007778 338583341 911703664 932801127 217721348 766468104 675576766 729494522 160724459 546124837 836599867 882679006 792799157 798517882 865922062 884528061 352793536 609361329 687925138 907269196 195419775 573775264 904451204 917884796 349513885 695306054 46785601 850067048 955879374 961263294 88837966 503656211 688021051 949307793 678161356 678596453 349369703 387088654 717790974 763638488 18241527 283688592 287234889 477829384 674971115 707677549 357441154 874569223 308041825 856412278 652573663 880195998 240064264 620853118 61794738 885679185 7638883 278074090 837861355 868888900 701734225 729750237 312041811 828947656 290433585 885233643 666089944 996248333 353376626 779541540 373960089 526971210 344774407 683930818 739630635 790348566 766207771 816320008 16057229 229212649 604760171 980414325 30926908 864673797 140855061 576805259 123331748 561141336 602928697 670280379 565679951 792814889 407463014 702122357 913491776 926753820 265887274 983721314 597493166 819590498 467704842 785029199 955260830 999620136 194253969 262087782 986338531 992790451 563600146 592969298 809479660 858790350 850903214 895144478 677360908 965744598 863876993 966468435 285032400 357678324 568469940 837871139 68254256 886687960 516865433 601695921 981587472 999555088 4696379 704595838 546066819 625105958 244794263 919082184 973451686 977166006 369856624 822388077 32740319 477392465 292847697 956748556 308483155 905239360 895237570 991868880 839277926 954377651 329164426 670180326 740244596 784529220 177956671 999360018 352896481 958482003 356646296 499515999 776595736 901384665 40439519 948362762 116525724 438441325 53479110 975220869 150423762 930223760 36670084 826260406 736767970 741028561 259213118 756096516 352456188 714329649 468723265 656943971 425905953 629363820 405450134 545231560 104651381 718646862 859487855 888268837 334654341 450904554 336862039 928784543 59870395 980442058 705568309 772588592 337129471 531744940 982885672 985825591 964251505 970646569 222876329 626610881 247264630 794211825 770286328 883099563 520895886 582701572 921101689 947009225 699732866 884287205 513505665 551615556 460875312 672360241 343192250 915993624 48606375 392863907 686715225 769711377 26823445 979769463 819862697 935864011 123163560 715343205 915802120 995380696 982714096 996555008 226364618 509648598 345117757 682070426 5230764 50404347 434673542 634734672 328926852 930725409 70377269 634339155 290481271 576030870 955214255 967216812 524854213 748601307 196647509 802801835 37316000 437043023 866125908 954456071 399117577 865870357 543312180 763089943 392330556 992359871 657573205 881278794 843734494 912827825 527475599 979435623 837237743 960218545 841913542 924042862 981804528 990968087 665326240 827442874 843669160 985569446 48737159 222638661 327738205 690901955 874441581 981706942 700406664 993023786 842143007 894260893 245739119 362830754 707565401 942661509 436884465 775531486 241800019 345722140 374874719 850642731 879360029 973160133 725090944 978959348 452429262 598443059 149639698 915980170 782691535 979332516 527549278 706082492 817211664 842639748 562045189 590765455 275707330 931431044 593957988 668037069 770332712 871003489 665201125 976045321 479915229 715119804 573922701 885882228 431320082 764176500 960731016 988538187 370104697 618426932 752445074 956887064 206785423 435667014 279190662 886185947 601722326 842387704 80193181 366210417 396591912 587632682 418858654 563598066 969662130 998726585 716041742 977785924 118024379 429384811 585119376 662768027 185198105 899030491 339359915 981307498 415001461 591106489 725571344 979282250 68809235 213038340 496515408 877039354 862525537 914623042 879934202 912666861 463512927 870963609 164806692 870995217 169417975 477698557 341089301 893816433 628655190 917154385 25061389 481417327 34341242 623159348 67548429 884496477 406799272 828256263 524332132 740542020 811008620 823390970 965031050 982433611 66942113 241754627 453799995 646016863 175349294 486781163 825347042 942069021 780326801 800416931 210265615 667649686 419324315 585776993 691719969 937345751 968156582 988764615 540594950 928738665 296541033 609498728 335615258 466408940 902721944 951910978 716260387 818487670 422572752 524609049 142602581 374090651 577161424 832732210 798533585 946285682 398634252 507859020 48888240 343506625 316471507 923508176 134077556 521673278 929404897 944207312 292222419 432323404 837112525 888113957 78698681 560726131 653483817 743384434 334053511 470424029 270897396 454963064 450869347 850934819 279723767 932324914 67647684 901439426 291480815 486561026 556940585 653203412 819141364 953628521 195718075 476850801 737774708 925422747 536149320 648488602 55050123 112025066 545276063 894497351 285113131 375284309 84402851 90647177 393811950 982562002 354368923 715956670 589647024 624733248 205604590 702554698 960003782 960322911 137292524 529862194 50165348 867088887 443679275 833142467 103814733 314737214 889294408 986789902 401230452 632946484 598658304 819294671 790371548 965281630 672132008 941968827 487402119 876442175 721992583 945305560 773470477 836988120 681550550 826616217 470751409 525229879 125704887 298800795 198596424 773399508 483406213 715046811 624276837 752737128 847111207 961429010 920677556 990281822 624113572 973155768 568731789 686707080 877338519 921709733 974986008 979342537 568470695 982159065 796420339 946116971 563180410 765724481 575444862 999041857 20161512 131806588 246554639 688947564 926002785 989248270 235871096 900119220 544341386 894124643 530887104 607366619 453243733 870180060 383503248 929937708 80056978 624101434 942742876 995931525 620265156 886543210 885540248 978664194 959350985 962673739 961439991 980086013 761803637 912508909 432166629 791689402 488517802 803292390 366789766 447331623 378545365 528552375 607008819 780122865 31322992 74507428 961019400 977857280 525083456 842139865 238423675 898648433 666566397 955299225 631721876 996603814 421285746 646047513 350912677 797372988 3221331 367692813 787685578 793427988 684781664 799762621 792141703 848236014 991831808 998702899 114554745 445003201 554039280 840463462 656414406 831514541 496307343 788978071 358239495 440422463 384912286 990126918 386088588 801753263 368360469 902891464 521463131 578448262 27645892 271044018 710192865 776030724 359570157 446348547 806117771 899533857 480227310 831118193 406183316 720128979 927471565 932116272 709029 114038848 592325195 752824429 427192833 620026998 719610156 997007583 475384303 996124930 831156808 990991587 360011940 592772388 154003420 783929316 160030505 210979410 450712812 549091667 32199063 425527345 685219896 898186805 777327836 778327998 620445062 988659611 209616191 585961934 156806341 906173438 17532170 286122528 67411397 574374113 218604047 419976995 725132930 954281386 919102764 926584430 42419558 434098392 168303237 751989607 540149900 980646455 14306172 28607838 637720222 760552013 531617299 562852950 869707183 978585142 77126724 739788562 833943165 873039941 435789801 747713684 597838656 760882890 529842893 768905861 399317161 530140883 421193655 964731990 304596195 893217665 538321426 867984382 863399058 902263309 719855062 816002702 899464879 929901778 618917402 795725304 634542588 834941125 344868719 589676505 326239738 950245797 562335736 564203769 572425934 613215274 115866970 147650947 89922199 225076754 106471475 305445973 22756105 745512368 728528854 951426520 561737444 787988782 92969630 357985580 129026647 131032003 438493113 863825804 612272278 888216039 595545520 988195615 289272339 947320404 339157163 530067235 312079262 581909728 934799117 981860174 275549655 535535148 227133589 515413231 561101169 939253437 655144021 785289625 834841223 907605220 556594275 612586766 559888188 717653566 608768982 767338573 560922530 945459791 566362709 735774514 702869189 790637223 798373904 805074007 681813243 974673536 458156497 581842727 68816569 782255120 567099130 863758146 460682624 865919331 327023601 594249738 728014822 835299136 858451092 931011947 232801616 449019376 402341372 769219258 676283932 685586688 764135699 989870205 701852187 713068357 254607650 993484971 251235875 836096472 328822768 433816656 400358594 928634481 75771487 523153023 35842169 305314847 899729006 936550989 626367280 996191256 716886229 749675886 528049515 577555927 53611032 395141028 258473885 816691724 875800612 924853131 490338823 757862369 56822425 519507864 867818397 871221587 264156005 470392690 765022080 828684045 343124904 712727292 638293026 869540499 444719662 481852059 757481243 792364869 57150738 908800009 910766714 986866556 728316058 906500462 728565912 904577668 374994357 770088683 95216868 381999320 723557052 787250294 564256265 599517736 104379508 938040444 138408084 564103880 815697914 931787259 478514497 975486869 686093979 978940408 331756099 631637762 335924249 556887784 647642747 666116314 95513055 348623809 983550528 992321898 170972893 672367046 434135891 825201864 346855197 352786992 551741113 893197220 129118090 947223857 218676599 377955567 152087186 763853233 280013744 541545412 172180221 177781329 279846565 378704899 639483167 692943307 75243049 179322978 96719011 973151395 501162189 651147208 198917196 629178617 625232274 880795719 772289958 971195160 583824256 617476195 41477267 331258597 651753439 748580364 824409476 994042306 798525109 849027461 249418315 581474390 324285876 550436523 654146371 696748444 18287585 176867109 983938610 994531543 170058576 523227163 272364673 308000767 589791256 936847268 929511002 969782934 243402682 409564213 655550575 905961691 340988198 681837518 948800404 966397523 856794484 869794475 258821421 346443269 621137312 961508666 985331536 986403434 118785736 133314553 997797608 999187363 764610896 958618823 660443861 986986516 180346708 613425250 398671214 682931315 344348257 867006960 627540220 912865211 768738033 798858669 15628628 20977453 29015560 172418883 109530308 608635755 8651957 629974984 287538344 472313981 829470856 853891858 598355054 937930366 280532846 697585885 787269706 869973448 509293561 932590899 146558765 508090624 564673783 910365062 903243235 914272377 94720492 262717676 633953341 885508594 836730733 856083512 555167475 617925328 336563174 885621700 345436065 492750666 424848327 778441040 195606933 996501237 124646358 704913753 950437479 990264827 975650896 979916922 277006180 611265982 781663958 839793791 116684380 327980516 379220112 639542856 492845631 699752878 260837419 675315015 697513235 825533784 890553623 923223983 29299811 487757883 10609111 787450037 587778730 905685634 343538288 750415208 107377807 654148248 192912930 597047882 783574208 970624282 585530387 629377837 507059301 667329535 827061121 956132342 788769148 990027749 184238213 584474103 708282407 982610993 132003308 232284662 915104484 930397654 986402883 988666532 498026861 605063471 391434397 972365695 654347175 896958910 547826612 563088498 488835669 837759334 704460522 994438014 291950219 516248427 492148456 702432832 54448871 520452798 996488886 997299230 60764540 887970333 477559753 764852918 914039106 924396692 672076627 925888867 226618322 576140406 71276742 377485214 696002506 812021974 573952757 889112679 532067638 851252080 373197708 836410935 837819129 864358275 497102918 844191799 335741098 861231821 626358070 699348804 324392520 766032834 124759636 290907521 773666333 955723703 275223117 715156448 606747261 650528395 443851693 462829022 865688103 904197380 837993053 994640048 317154550 468522591 926202457 942508833 947004911 961340579 260735737 643957990 379351863 839410764 501476512 550311830 1593475 538377932 607560181 616863888 370864796 914181392 820844426 931957646 299768081 494013075 837095945 993654154 8161983 566894189 445709767 793294396 603067750 810137146 418527695 695269027 667680247 832629180 428380542 825831195 850850899 917002836 926542465 984043646 657185854 732055786 300915684 448402909 897423843 952903013 133709076 670732782 584911793 894376792 654747971 864779728 862828277 893577730 571103316 726734876 710941892 750635399 112472421 686924904 966878558 999086888 36752394 304818698 176655484 991605234 692258533 889180061 361320375 683397949 769014828 783108970 126483149 178814830 366171732 539242983 81471459 727355904 461480952 690529744 692172709 777521189 257531190 794544195 96231633 170106484 913117928 920692748 462797952 708204642 241707430 260053508 41929608 439630765 955583340 994402358 225878877 488410625 353524287 999958882 930797619 987939410 202303615 306979536 860848954 861613483 538313454 633808146 72324387 492093518 118358961 649973950 111339421 127028736 68869113 923840586 677765296 943261988 162727016 355925989 170572221 357022819 74442897 817058702 938116947 969400343 666945815 893287049 595581356 685409751 269128370 758777637 559206584 889000902 623689860 624248101 365976084 911118863 256442419 970186358 337298716 717065139 592564205 884150408 894786757 913636154 713459619 794901181 216529098 680131391 907228380 990217755 634184258 769812815 366913059 740548064 205439622 836205313 72712921 958174536 753144900 955842414 213544657 324210286 321224605 575234005 526054721 823322206 407332401 881605013 896385194 920807497 400339925 842885709 699403100 906480419 406029912 590692590 445319005 856047428 665230452 860927275 256218904 387329439 586974405 618033621 631636396 721358462 559267152 897916134 666940853 716651132 923709128 960169914 573839246 704008290 190068578 406597094 945880470 973306495 63490075 971475964 789825059 885514842 864737215 987767334 922168279 943698656 401834090 418749881 104167956 414374325 174612656 184339784 998940557 999915741 846024934 956732576 598262108 805433017 747550488 972410936 134793796 255794271 538067868 758544704 941975870 993158252 23712545 319979777 652089531 957694432 531462918 743412414 339499320 602027016 741924234 977359420 925061973 995071884 517782276 770781760 316547781 826203263 733680519 810127547 880002307 924274897 865267805 959598837 761003285 802013442 344438329 612009863 997783000 998916642 595265423 761498793 347590999 372315145 892557837 964079361 392098916 730818830 236729073 879286076 656963202 691366396 288359927 838493995 216926882 468494805 429547063 719722550 759210406 814120155 741002760 883094397 837225689 883934658 796043841 829556395 586666013 932466082 523341592 802067555 448396455 612596087 965405637 976535239 615157824 866305480 370322301 613291705 336901159 896419216 877775687 959871794 767661235 928379988 598198025 667633509 269674191 414693791 77329071 264509851 599993204 715586479 668131149 999784183 321789511 904678995 43836793 456023949 94191550 766826300 71166134 166161534 623703348 655899677 467795593 995980416 175588194 944395754 811806474 823831937 928873359 956481813 309322241 629604078 627853932 879652196 539758964 973228185 743030916 772535551 872131851 911417840 85099345 662307328 136593705 237865288 761637305 983294182 236121945 963416506 45037240 663351267 323541562 325691891 382766237 956967384 93100410 906825635 921617125 983630007 500719081 845538799 901732270 987779747 254800368 747818846 396310765 582959512 314893956 725144684 897572078 952949052 749581613 950901792 961225120 969621735 258923330 604397725 969091580 970045642 220845222 246970063 195772856 757470188 835097582 889170993 54199524 458364188 166721758 900636559 69907540 446966751 691426185 706918071 707513435 807786481 502406882 716872194 987540067 995462893 349122958 793949261 391842937 987812016 961085204 989370312 993149684 997168137 479860704 697665673 711063476 998415348 877676509 941431006 713635140 853875660 90257103 598271771 330235054 493572083 370523310 877188960 959552079 981136103 83344613 467820754 840202374 910781105 902589767 967466920 350988565 928893668 140963174 587645875 847979403 925966780 158774884 388507069 80994209 195572362 129203955 287164592 388632241 690230404 383168398 924165690 682642580 870940387 744015926 976618484 296200630 994164506 169197185 749220422 429876128 501017131 861294869 991143865 92421360 416261385 643378492 678082034 5559216 559250672 415998718 662684060 256161752 664389588 832924463 902013459 719389356 791412155 894572006 949372739 628799749 942501045 446921439 788626980 221728091 725048627 942522066 977223119 19489451 648382495 870819683 877401482 510825395 659199831 40581367 707507157 783855827 807034584 650899527 899124937 162937300 901044276 530184827 895749391 199185156 551820973 344862189 485187840 245320521 789183290 312395453 315186996 33494570 154350335 699381398 726585925 677990241 785547168 166079178 407670190 931542606 943289077 163270353 926706023 41647650 234482799 948413248 967161141 259109316 598203349 170840602 742773697 276575010 420196085 366376665 499303960 825986365 889838571 892214514 980369049 882292733 960637727 831991344 900880771 741483229 912639676 749372867 878000000 302943962 903562864 458453458 607490338 965494447 968689828 768470993 804555561 879046549 996236850 958884057 969043653 523469661 637914732 987913109 991354313 21410236 388217015 239152465 515407311 411796683 462301645 717967920 910531177 8651374 517509780 731066187 908213733 703883585 998802845 640801578 788683491 263479956 645745913 592582985 599418207 976960847 979230568 828680883 940008914 217846332 862568938 980598899 983505399 18884103 862436941 413134212 923920404 472201055 808157213 231421734 258451673 743029094 944435080 149216854 476772347 590565850 677155000 370129411 436989864 815275004 970795415 865324864 937201317 642536488 907211105 61869552 518495428 789766985 977415515 157670417 463090058 795829400 856134996 331192021 868287219 320081327 460893909 680416322 980592947 485388318 924392951 145037428 356644663 43888576 506692337 346206634 406144416 862797456 929939443 771436027 808313909 743084729 747454526 721069337 776235963 28635795 451849483 677792944 915160259 502562165 762152897 569758460 764564388 43332896 226434144 269903265 484665672 439400340 977630584 157145104 568535871 672788889 818212009 373550424 807590673 668980065 780630539 873895855 991856296 862456932 885714391 24154957 430090241 556431275 901208686 989576780 998673378 537787376 905665909 625498267 835393492 531920742 634798986 988704698 996102486 628070359 753679925 627706474 933588148 704245729 755927218 703672577 815936501 823363530 844280990 170845714 214376668 907639943 917902049 522225856 942157084 830659470 922412386 534762605 881841160 62340536 278672265 395660953 673040912 661912898 833655242 161293921 905408798 202447782 502978802 237726071 491429411 820285638 885636457 929346980 944022703 728891296 963364213 832874491 961829137 532761565 770996000 490954479 833925981 531109237 593081846 559576200 958265542 117978320 340682190 924716513 953970832 280636623 624500133 307651220 761402756 866181541 889012737 802530655 993610202 136784694 495275418 80934233 160895152 903677133 955466261 25001954 795012240 821169515 899323211 126806428 167258209 194962184 459798668 448211520 669475228 322088538 865179306 824695056 825232563 136800244 459923784 777281391 994879577 219053079 887180815 714172895 718608192 187086463 943170761 498431126 782874625 416032712 522150405 205981120 760744057 412670957 457574950 488347208 548495649 4201913 734382734 464840202 777454100 183690905 904612699 430709597 619307353 350928095 770565097 370799074 677862028 121741279 403421893 922518048 937977358 253306004 405543419 3614300 991988061 231639440 596510587 406745812 506924011 77001004 958773407 463358470 835859892 884585225 895588614 142815325 794221055 23489012 604075207 194751720 896644710 167861966 739620849 685295876 695396972 364091532 828856622 247335392 455644306 601628076 931605194 603046407 857256156 538647869 679773219 628775946 902010123 453770162 998413914 546799066 906818498 198567705 699535171 267043332 942446808 135298597 614381218 348152412 429726376 468324535 694559822 126577608 982358279 297619111 484600902 136294378 278359406 346495700 885277210 862008195 994730074 536699622 561468580 535035061 656166357 343437036 736076902 396621308 985680344 22871450 964640201 868015592 994358287 875960606 904466864 144873118 754229753 621933268 933294111 411587344 765445046 200417660 721687638 130900216 957208353 485394183 595763893 402154537 500447770 128318768 165283338 993197918 999622470 133215610 447323966 850680609 992648701 998934398 999359169 388033149 756782165 304772847 725180619 275423447 557983362 696774934 954408434 225984215 912952106 340442090 925734484 77476249 983456296 823082898 986097843 709590143 990704998 299182462 603989403 940771723 952233378 357488887 859712785 64037415 86315952 268155814 441716232 809059975 934557975 62775170 669976170 953563862 978093023 482119676 801513107 38918183 154047968 838274858 907721347 217097611 623156739 811415014 812200878 450446923 636574528 457272054 771570993 811737914 960206124 110930361 215072198 810664769 919320863 532581068 808588024 917927746 952162866 594882010 680838618 181077268 293222439 445933611 759435518 486381799 821144214 179129085 769530930 197564528 778110089 690727774 858523969 272929812 794632030 32251241 162413352 817062022 947456607 442975147 868832117 350687610 876865280 966375023 973504827 486576828 878157416 103844092 387447178 219803240 291876483 845057759 855004915 241915925 474949896 133499679 668211266 945850189 999870649 286242112 959595545 895918499 985858164 229148384 881782828 36485492 511864823 405132091 728514638 966377033 975158307 122945221 660559342 492916453 897245548 657083995 722939354 44360617 351479194 38964007 617203552 912278236 955381200 971704001 975034642 686208860 942976516 546664396 820606678 206371107 537956386 199418502 333199179 486794614 778156406 905481759 928607275 426842645 952556451 51458899 779635428 463253465 933168602 73283932 128871536 93323251 258341547 229389057 803817994 746294047 963193704 547771288 740681707 440199514 942347749 282873127 472754788 406859834 733775498 142833607 853284226 891626788 948535295 484150123 752146829 505059231 738274952 383488512 712718779 531403739 569558119 800436372 929745378 798366838 816272352 729451932 872674208 405827188 548929477 485014715 760248863 512196927 806239585 647204124 985770947 209867052 955869944 164551310 472166980 21744155 155475060 243004063 791401294 606495796 862591071 376077207 746456479 438547240 453404806 365152518 484827987 557368049 916472113 163192311 793690583 962949713 966766581 680223204 877854806 703230382 960955508 855676496 913310615 573701987 991437942 156643837 705391613 208683116 775602015 396562699 767444584 105692632 145533524 760631912 997381739 886636216 965741285 65272636 119767971 400900472 752222073 795236444 837043769 657942872 863743744 256075025 652518794 874988496 884735041 748588750 947589412 551723900 554839146 811421774 853814147 872201766 883167946 201738448 781308653 725077033 908923043 259392330 879416151 885651464 916349570 838992864 922867071 134866516 895300981 21520029 826974482 907919237 992936978 920759774 995550605 241090510 943503508 393537909 543533259 235861509 709082695 855389226 883350512 506578201 899013554 107922695 551626861 711141202 965379915 657461316 766228507 55704816 241813463 550412975 675479213 194030059 519204133 698762439 951953206 973350275 978818516 320776641 385955754 581749942 657173846 457528251 587177662 562096596 894854365 400250071 523918062 317890960 595216835 671256265 896169306 254133983 357292848 878621877 989752920 942606610 981014734 389895558 735343503 300504561 781237677 689829895 908469896 897181919 917732896 231923204 657903416 649721214 880263477 619977096 695439901 924257274 932658463 76684928 167579109 712336620 751603906 73758713 561083243 553866855 931741289 578086640 958005799 794717965 902888055 817327480 830833409 997814332 999854567 376370962 840764730 363015911 762466501 221425175 843735961 782512492 897884740 848799984 995377220 121993812 478223394 966086794 998962366 340266979 618109117 783526667 994748715 284955163 292468398 797355160 828332165 479589260 577847543 718490135 769979369 758568966 904894120 799268935 849322044 658654639 772537420 432256379 589964980 229414483 815168545 127754228 402558737 29417893 553294067 439949332 616775998 711143593 789250609 482139923 626710398 954634955 973214628 790346254 979661265 590127807 912141080 320318796 583821012 411962330 669643018 981891646 996078311 885415461 944270662 440135633 928263962 648791105 830688387 448464195 997968408 638950513 748384612 109725873 328521558 636400554 705547070 684841989 704357918 220381853 718456441 783711009 890048022 902969207 951975122 281394758 506102668 662539194 897191017 638361806 854458608 588723769 865796847 965511053 991021578 815605804 957752519 537008686 581624938 179843602 418300643 94793979 745764997 307192206 606333521 15997820 462028639 212514380 830273931 947408857 952800182 890192414 960298213 989903248 998800520 966196103 976806751 777046435 891739806 252288179 622750390 74147080 488125307 675748231 948921959 545357253 614527335 929509872 938050236 33250462 530438956 484002248 520219117 707261312 764758201 694915509 959536864 426205242 748843379 997859842 999355544 355483362 382085356 37063271 960593808 221861991 888383251 162527979 903996835 890954085 963774798 689932089 866387394 960981673 990958337 58224404 273617302 461334195 776749974 488610766 499676321 253289782 452613356 875533089 987398016 735216960 807132262 386434306 638250518 44306608 337620025 281419642 519949289 714304463 789604695 16080515 232404396 732547798 850371878 399023102 872595238 483468287 797273247 281822283 303589890 722214036 925621662 170647507 733515834 470504916 826366558 875203420 903261367 465092941 647243002 719824438 776793789 338978938 853578072 140126300 231270298 291098432 543849178 21669536 568296898 284304936 490475889 511703541 681001865 846278649 913989883 847386340 860191975 287212026 292823943 603172750 718444879 230949322 378654913 340044136 563148136 976944723 999840977 427377158 848994684 711083774 856811823 104691447 269074173 823372709 845149463 217448776 933729730 761601085 885012869 631115728 809398297 854674974 923917921 396750505 688974380 67035160 77189759 920498548 971410708 369278448 924542782 141453354 695782401 307033352 440232504 191872863 484570990 872646607 966476022 588357285 635450671 513371986 924011680 601279608 757751590 386367871 788536128 668329780 894620854 493101811 509353412 5764140 108488389 930675912 999734219 728711292 865234503 228217633 506128698 873984689 924135901 3633064 406445693 587022027 683837747 169487348 457224987 628830402 685756751 597008662 864463244 137221591 794424848 682208156 849122228 448996152 602680971 453459771 894370197 133096132 431524896 660950432 684335717 252949969 293769227 203517543 449637902 413134680 908398538 212298596 334205793 219749554 481181471 37362973 173664607 60933731 527668383 325297594 923739227 862702571 895533181 795673258 879210621 676411397 883386773 227924088 294607346 875449224 885527804 351958272 989295164 82772859 156648956 772022089 780706714 682499567 974146933 56021048 296875838 478351977 952412315 247570621 452548815 393496674 551948750 563978921 799281829 352798102 837511257 896490577 962898859 63342318 287525613 682819738 932913715 747597046 852584321 839578417 879515091 275030753 572184470 919217357 930587480 714465863 948196485 300597011 453495072 648021151 916766047 313797326 320750605 839367886 853415183 60787185 542124414 619715833 762893750 907080291 998107930 917593385 991574186 944628220 953365200 817207439 865043890 26476869 219334906 453152296 514975726 212738874 339768189 741772927 874519493 169528634 244217592 802052092 896330937 67526842 222771069 409440133 854514074 492106900 864167546 909930469 915667755 24923072 999308413 482225035 686713681 241060739 995269768 154223606 821758227 847680097 892775636 350820827 721322680 269024185 327460254 936293052 997127851 505388160 518581287 731968746 865196446 871110780 973828678 766097300 957464960 652316273 712631286 417314974 605953138 495992986 772306019 156637982 459703858 653405172 824613060 274055570 852693322 994209140 994741301 86734301 792438334 170830119 757507074 536955180 654186763 71912418 96569166 467525402 574435341 276876124 664875542 178317460 785160026 933199141 982608563 822217988 948357606 627816961 725836904 919821701 920654787 645062681 924170438 148153206 450005672 243321267 303164424 30188390 943246917 749658923 849683090 450380567 601875508 422076464 503500540 790382865 913293698 50523694 121735768 132506540 878329590 280457033 954882966 760005179 944953535 380822718 526129579 640945597 688321856 166993163 587639550 529830253 867488025 935680122 972192473 624453951 710331756 648803276 862717581 698931315 875649817 635811032 940027337 447242789 734576089 442118466 518655364 49697653 690472677 903936760 949442685 41712364 410517871 324847023 797680604 987311180 993632139 385287105 539934897 141920629 737626270 44083990 661941044 347004247 643628832 373333868 907529773 499527726 865602385 453591092 992975080 926886608 982458500 450354879 645477389 214323680 344378621 475714513 816491702 965700016 982550875 17430140 645370063 853359016 889394962 310682480 873323765 397111106 712687928 593113647 840296730 274207204 842564827 87744356 216145894 372512779 375561619 361606976 950167684 897886201 997497653 86346414 368283347 872180470 914629401 198856217 588826835 524444602 991297822 427663379 798035707 489538791 644241753 43327747 313167249 843218935 860523399 876800961 948947102 978667215 990552661 354539903 730267566 659823959 880301956 753470522 766229849 465225721 949318060 642386132 960763459 938710619 952586993 850923931 867024102 919799884 955912369 455603531 738878907 329227510 893507222 735048814 787672026 799550689 804448559 645518137 716563808 775672097 934696158 852416327 914830097 741072879 969292685 378369084 736751380 643321159 961585662 550671962 751566154 915966794 917655736 624350644 631225204 316188199 766095759 231610742 920911680 214784320 470668847 506917933 882687484 940728534 979396659 640160160 655613112 829022439 920430638 22563659 967543719 852306932 981293911 57950001 752705180 95619868 759583184 35949177 104977093 888552178 923179688 771302387 795426392 315416541 544472538 123837643 491291374 760015853 995258149 354229221 421315934 166630139 176555987 903631339 947318824 261109929 755412829 247709415 727643104 982180177 989716150 50202738 362117412 218203437 600088977 92830516 838137472 634224321 734680201 11641665 166641943 798783205 920648704 449471318 814404398 258470972 527783409 203546232 896870696 507657033 801354345 166779931 373417061 484509774 984987394 481267154 519381097 431868586 972033034 460481409 721551620 992117929 998432579 747501913 827986315 314973669 865565181 980938280 992209376 910503266 935651885 262188565 853638440 516781874 566353237 393886932 813899769 101443080 683973677 674388008 936368064 206053924 821691354 247382145 860172147 620604218 766472636 444939689 507658202 598252158 889800961 503403398 688931779 181242178 962249981 740662046 766390866 990878295 997946511 836091095 984145190 440129563 719516006 393797574 989106149 801419221 810447125 875721964 918870454 927416572 966459387 831869823 863144806 814690982 959591311 300546970 963772870 325385686 792972728 578477117 824415543 169821353 949721250 839813712 871275551 569575178 981605404 702081351 976217045 809211731 962291413 428239648 721616324 64203981 762153980 978133600 981257882 712277018 768295209 293067276 503241622 656943270 841433147 335583198 462389932 144005321 250501125 251429708 633358418 13086690 169613189 557795078 975836208 839469951 848410642 959187266 970269581 538451515 816766874 462189630 589782420 946596725 958047032 428569115 490292936 349744913 998731192 988985747 994109017 719161254 938428907 385577354 471817200 665289333 687805249 238121218 978858546 421589451 834594540 981544718 997349130 502908626 962522083 558832670 887996126 216918870 385770273 339361461 770034479 528951435 963003227 498421372 579839883 842455617 884843743 172173804 743653202 612689723 638433096 173831843 340891871 54250210 581634907 216226884 996815425 762099055 840094962 180370084 873792565 913269858 980468853 363743698 779197718 751316665 810087067 995942019 998676776 281314346 575311894 222933735 444367314 210925770 633043440 662014994 743522191 314919237 697603297 528031747 531067006 868793660 996039258 689525946 725893725 532099501 987044719 194297042 698406026 188239312 766085311 206110057 909298317 629811510 767727714 961513752 964237326 312171766 589869711 975765886 998539642 222620790 488416583 650787425 907959680 930578740 957107638 33120763 946724146 418688172 522577339 260698259 404543099 501949324 956350585 176911616 809000985 656305271 957904361 264418945 864824011 635878878 763604451 462997281 695028712 704479853 787229120 707110352 724323548 222222568 727999228 901364422 925164552 713658930 961799614 348701065 943730988 913276540 934380754 891507789 964132424 780731938 955237159 725796963 829083433 489762198 703385053 972544107 975678804 912444745 942560176 46748619 977217553 659871769 708331254 598970781 699293005 378628206 712333656 2181453 719523786 49433118 187354160 75568862 894240363 579481478 735792949 738434173 915276078 193215234 405013710 14114666 25153522 349991885 711227986 962493029 981669146 574889112 879980987 42925860 48323640 670391040 786929557 47233625 985950450 244710272 397877952 555091401 955073715 369075705 591726665 818603000 953005406 56284320 972312423 697235031 851011761 581367292 970599108 921908047 998852505 143970992 971068834 306191313 462037577 821838051 851893605 582762644 935496657 313272318 675969253 829387367 858383470 734545610 909537033 887189409 971774417 52032032 352255215 81076775 793117646 846702936 943976594 591557378 794630750 471908914 941919969 135181890 307463952 749421363 784839641 548621093 751038409 351935380 733610669 875959388 983140440 538284210 776960286 615619287 942727237 485815640 711328678 300626033 816822424 861235322 920717861 724858873 941992597 860508225 980969276 44835786 637369755 259098958 733976415 226355128 693044906 903476843 987013631 781018171 782924576 675115356 933086171 644911268 897516168 381996240 977611341 603475342 666192960 797824291 936416726 695994837 821059584 671219870 899125567 88900012 131445979 946439408 979430337 43162379 183089212 734737135 988948938 748920896 960084047 325602373 687242795 930617375 961917974 196159454 640727562 109522855 123354411 560618461 600074487 177978229 690848448 649713575 722844546 26109676 46555322 281189055 822925212 618767284 762301667 493712502 756761869 810122394 813639990 627200346 920502428 89371915 982247244 86213932 964831361 902289386 993699680 783612856 873000048 614051041 767095853 558038120 577336521 709751975 843433224 569419760 959243206 84528935 330476095 126500909 607060820 569470168 767275666 268319759 377083890 1603317 249633273 500346917 920978756 865578538 934714535 903206116 943239621 662729271 760641416 563372229 937044063 9662819 259671245 341764427 498584298 178882009 930957221 396945197 580997395 725894145 818802672 384492560 658369301 746819996 809646102 434286050 841593415 376908651 865720920 67626462 213052494 244448499 837592472 659702437 938570788 866778288 967615139 623976194 931190929 545510455 869083748 78035191 513250665 118276068 483760371 498245733 592675545 90284508 162001283 133037278 924245244 401873500 801183855 519805277 754939093 51827369 417279273 866058065 977508993 568241626 975923924 575650952 884934676 402099332 547753545 748279478 967829981 750786729 864405700 934534007 945255178 279623148 661825945 224657022 829905616 564013007 782065799 445989407 708673553 999229722 999563828 314612014 400102060 23473537 252889606 538306412 705787758 14392469 848223218 974564249 990600195 538519101 808505561 889320780 993650332 374602168 910921756 30289709 913813274 58640111 752496249 341473049 539774238 966241577 968967844 840392898 980952143 522992555 847206778 733561585 955227655 539804817 992638368 886315228 899040657 368437178 620068772 822580857 836919227 921887419 983056317 970881891 995823134 465492389 588264102 825748426 930986926 554200564 931255990 877128083 941781801 796456480 953674575 374513593 560568028 917214858 920054308 786159238 999752088 839375011 937918124 729478426 852428993 527519178 923976482 338589504 573658121 313949346 381561915 29542788 615794036 83657302 482033248 139332475 832968400 779339889 917055598 495942228 650282895 383219285 643774700 320240350 361160673 772441598 853102620 356078106 590453119 908139924 952047273 85001902 868116956 664398499 774162594 699865785 993185844 317397334 478138126 343143126 789296051 610414610 955795090 581235788 827397824 576352095 893124899 786208975 993429595 68001325 827584752 903226427 913884868 603798574 861331983 198143584 585521025 652990424 757214458 856314523 977464871 566032621 985861645 629385503 826749774 519463824 676068597 305735472 612525720 158473761 666071466 646557024 794228957 40338508 531799369 269287954 779020396 735557344 794561810 642756892 992610855 374405713 566165520 365377799 575970795 949976073 950679052 152924063 644992619 796909552 876946572 19480321 193472614 155981774 519692894 460545469 923646894 528041573 959004865 263251466 908680305 729698184 934914134 746845110 910795617 866900596 982727135 611253408 902388583 433897817 549420876 984616696 995123667 66605526 574178930 8173932 104274772 189991547 295004978 733846866 963923977 557903793 991320385 765700267 898186735 487292423 751516486 600871947 650858644 722017593 904698877 110036402 831150327 383542490 715719735 37631420 131204153 611860384 732186404 335418966 358258094 377811229 956048296 740112927 798929866 666779358 825160031 491810566 504549144 871021322 952852559 515852946 924678428 708277235 868904377 735202853 916319807 666009548 721818194 332973271 460613662 836599014 849320201 579531022 665710520 210148102 254822079 895751731 970631812 695060714 954253567 967785656 998151006 49663560 273351660 602535491 730769602 391769037 591146776 210457128 873573015 610328240 965499678 797464763 950448932 734044126 804896260 717780376 840990848 524319048 894701697 911361921 988367040 114823840 857739449 881141525 889549631 922691980 998491282 537561618 718651615 794660224 956508268 679445617 896820111 75440371 400504187 687605614 756207145 292996623 754065534 160307389 994627949 325808936 614630328 603080986 860883020 857408646 988000702 840469432 868888647 783278049 834179341 941415314 956259502 211709315 460705926 15164827 306190815 771108390 930122241 615205674 924206509 282703334 358564943 194900821 869262999 683756159 997081962 850664775 984920466 459216195 726537608 661219296 842071946 177148054 895397054 808294264 926066576 958454697 995060326 89281929 987487012 583049358 614542645 736982646 910413000 142451499 691243805 432424445 908017538 649060649 994960418 456747425 477283015 616395247 666623462 787766157 922664133 536912951 873412035 817179450 823155089 9485801 841313488 872899345 934205139 757353679 874655608 609055047 909442995 937996184 951201010 419395058 963375997 780590145 836456202 604854294 685430274 489200749 888802203 664614841 848505789 373361383 395676975 697525599 786640853 560533697 799708530 129100655 610094915 845692299 855300537 799912286 807828847 217757160 318498848 13453780 820009257 946164639 952227047 727789827 816499418 535163859 581154806 691115388 833506430 393755124 552683095 665981315 711876763 652474188 918045861 164492951 571149262 266774530 701926281 533238572 924110781 682315178 988021346 84628948 916098060 990440665 999062988 695708364 731189529 332015301 336480431 770344078 905299460 678231385 987561309 749316819 925667697 360544514 763970206 339920425 667164740 719153084 845216247 31402853 453696144 600902345 888498498 831979612 892010473 974273090 997558878 887778062 907915054 385807695 896487921 916759931 971603788 709704254 901960753 860204011 885105580 963409153 999295066 547790027 882597325 604604802 625952482 500976722 687663906 246818987 305480693 729271726 942665328 480761548 665127856 790304346 798669308 186588181 536505536 91261107 372819222 690011093 821975016 585296149 649039480 744831264 887017905 998083386 999607411 337904900 644377658 920722778 986603225 349395370 717804123 692512128 744110146 50902898 754933400 267120794 735974025 611678442 709491861 584157391 912040053 289559422 400331042 137765747 810148038 943212793 965486858 694878032 812958072 115041630 751282909 311099869 828556079 685571497 913010407 86187859 101110059 920865988 957215302 900427441 917120244 592457616 795406895 249079139 592395422 623875110 775801608 784868495 829351818 795294524 804617991 268117365 346178655 620152732 838420344 572855638 992977807 357886724 788510587 935414669 999631149 461424059 783696009 577978504 580081780 711195410 736133813 227083955 621673266 513402080 681044729 261108174 397720077 223952849 960447858 692891889 991269570 219024442 759445870 455059563 845737923 249539876 839759102 366964506 518168767 267528038 331347976 760903915 808668072 594730952 875204690 644804184 884602712 45982093 727957400 975122183 991900466 897778649 947868085 134560475 746547021 794011863 998743268 387341265 979422636 490098849 621928468 331147950 397973040 517735192 733010828 253349871 346148920 912560524 916712948 320963350 689702669 792977825 950309234 123305588 673787458 493706431 885093405 741412044 894952232 462448970 617287487 758441825 880298005 999898723 999974630 26251701 501084410 691209287 809831261 875660424 900800120 368742117 647437930 618685048 649280404 796956718 867421636 419373664 530329461 106471544 616719485 179901769 409363851 254093129 354537439 15539444 801689730 966051985 986803887 599081340 962907018 699449247 763557735 781026149 861292546 326365874 961038477 259340403 476597943 976147733 976903011 942665400 960792932 679644767 983778896 301775324 651221243 816471445 882936929 229477581 299220101 609752905 830691108 761263397 816333181 626276599 719328421 27148561 612054090 588736665 715496425 790401789 948229968 281034989 409991355 372783544 397560087 884631368 991384013 700064911 732894013 25220855 445538494 690175495 707305960 872698800 905956928 369810910 615105966 395401812 717950274 612925269 816985854 34602897 974638077 955629283 969788279 14135534 570103212 218762969 851102655 466484419 509958275 709434541 848571790 809983767 949623867 748987770 838177653 331282010 938590642 921112048 980898642 923368503 967974340 683844684 790470263 956591357 959154200 278532946 846230770 640306340 784728192 300247481 900859714 588851006 782558369 540350276 590138006 143841410 450776721 134197852 913760837 828672908 877343541 347248927 676737636 984695673 985175706 536947321 757299294 329860459 461156683 590292551 952816166 706813241 823939433 292142586 961935891 665723530 870295067 938842781 950287798 825084208 872758047 482130860 636321558 609417748 609637220 610518047 719755032 900849403 990894356 377271409 675147057 502069211 956156134 460557220 615934232 724686081 970697739 939969564 990003807 319716949 979357556 749564372 784583320 574655179 784985635 202409075 939449989 149139363 804829336 221603078 482238348 43726940 683679151 441635627 707526860 569305157 653189045 529182631 993178781 560072577 779129130 27417056 242247715 683558032 945637387 229534385 489000567 422419734 970766049 184960893 831746031 621907599 821470879 288454492 790613829 933832850 969457477 85979246 894247350 108783467 239584834 479436320 554720193 4509931 888031835 321633777 388539743 731768266 909603832 835920878 949250857 208677443 683283435 494546912 645668355 900400324 976630880 235963113 892315288 446402942 598645158 541827500 926061521 301041722 563780632 166388886 430414735 647870943 860383992 643994593 883965224 55982281 907303087 483549415 943588236 234506013 987546269 795765629 829956069 667925248 902004577 676271765 869672693 474754631 796079486 403104483 958082168 148776809 891778973 983800933 995865140 110238657 704221405 992085984 992843497 68524976 345842649 562853237 588172526 758257392 855570351 718477979 848996567 845246223 967104376 463387074 571621427 487806870 805483545 410634739 957307368 375507700 567287285 972435504 973438677 573161813 746285459 684819903 844065637 474648442 621196694 856087874 984139467 204887163 220676529 122930100 442935482 851858626 876053455 47980986 479390950 854418245 973433204 43631478 543826673 388784818 549904140 787140287 973407561 847619245 976749351 110880610 366221160 975850585 999614408 657013784 827844420 244107541 426194037 519165229 537276352 763508148 930785782 571904673 909467097 261722831 761529410 818108955 967604291 300348213 835224863 270975441 358730676 793727326 950324253 184551684 455719981 567742177 799944292 598399843 650130417 103327777 346100274 593100798 791026623 370884272 746706367 562679815 748614480 88268316 598170907 526261851 795297899 962861007 971963157 304683309 574720880 576661196 726784512 726536432 845011588 281480349 613957846 88773021 695999738 755088253 776091007 756317412 761938332 425651018 873778267 263225483 868788536 771008487 821003281 102287016 596152755 33632046 890955735 410545612 464172632 48697495 460032258 554308761 565915425 556206188 727379526 927990074 960113115 636620028 766792784 747702378 962009698 676776010 873914957 986076647 988721815 269068437 572573427 358278969 955673861 969853075 991983977 74975654 166424028 114672767 154929823 934171051 953557268 196548590 202434543 524481099 662946570 958715373 975691504 761094817 966828888 578576852 623323464 950461499 961715190 525570857 703650325 893368877 939675279 139434398 307656027 919831318 921028959 75803957 791899169 298986264 847189699 532819891 839633755 802590473 852159089 932870024 967632677 4084149 732433624 655115682 689241253 312505413 948644964 617972319 854317929 739087268 985634688 282524859 587024410 749102915 766244904 181530152 771667522 511374182 615910967 700036495 797605366 671503301 801731519 608490836 879494689 382921080 540399145 914691412 947787600 495610341 745630273 420655853 919310850 7210535 56720178 908517862 935499825 418406705 757723226 825249825 966003215 343957695 376311711 946280900 955233498 492641667 602654589 43887052 700112207 936547725 956106194 859865469 994012446 884305512 938586005 758786562 852005895 993204147 993848206 181113825 405128974 84940233 461376550 502014689 742426597 333998346 999831226 845418663 965004026 781428852 793586176 794242015 857519056 99994581 600429613 664538302 769156281 23015615 279853009 442556159 590319984 874217769 876980339 299421729 861713339 30514093 662999657 532123591 779665341 577425288 850429197 955483887 972482491 416433049 677494015 700137930 719972474 155267077 229575243 139877348 852239515 917632834 979516514 666450662 827335211 424525524 615742599 23479209 591143637 653498693 749470629 176531919 358604364 547774997 645807671 604055435 795035420 855568253 866423546 167190170 609715014 232241976 805643071 578537596 811679811 7281201 789766979 387186254 586029437 686976558 852257301 414759061 973532669 560412116 827238334 104428711 503957742 411034796 818742780 431556405 548586010 923917839 968088290 446546903 763286709 756250273 849185142 649197191 939578831 989671152 992341922 619786811 985156193 455910534 611902419 424864806 922879961 660219208 828013961 845702701 980373055 428378195 986716722 489220346 749352577 627505707 717268536 651333360 963253020 331403664 505490301 843128030 973870738 147495092 204036706 97475210 695457336 118821009 776627193 883272248 901807230 587057140 781865129 665094501 803601476 761288934 880044584 190787267 949692527 52152572 460255285 488690836 674376103 514800612 800065413 426545469 504915975 911971313 967152988 648955678 888749833 310220532 949119512 426554644 765647340 736417128 936204615 605506795 949265784 594882096 745061170 699681687 955702918 372613188 917009126 544313338 705501849 492464321 607586721 197362712 969658454 358195613 726348491 599732772 715800897 125131090 892537680 156394509 413165333 955792975 968745926 956273473 999438681 422149990 952505439 10819383 490399119 132260964 723164435 83022405 84251839 554671262 789187888 281933194 816745790 177527619 725599003 733542866 983407003 893560680 982056277 72731255 571212857 242761491 834015153 414735741 622998611 416367630 661081714 727183125 907754448 314997147 702021169 815487047 911761894 475386029 927389233 879048183 986239499 602703129 928946617 897625940 907006294 451619104 464203728 603420103 983638236 329074565 677207167 350286622 557945027 110442970 506817949 420457269 618578408 381832775 468481014 256643720 653704090 697577062 785820630 905294901 923005381 529318749 950714493 475498630 848609995 877126620 986206443 527646292 837292060 453411086 958423462 785983820 918743166 568290407 981061920 445250427 504457436 996733770 998387479 866827358 895972626 898113199 905456457 908946542 955961417 531845750 867179640 710739551 982941525 746878096 777837074 409737307 533160571 485062875 796169263 626894364 885146344 805826656 992767911 222684838 936985802 361144435 844728276 36547459 847129299 937171996 961782832 227333330 505644220 559951996 890890818 275570435 662326927 906488346 950659102 117151077 655549427 879089951 992261291 332972181 871426126 928586259 986450614 507943423 895034052 577803901 760478275 998038417 998070827 90955683 206583926 20096667 30109138 618973696 946466893 733767042 808908837 93831742 120560058 136382908 181605691 241401657 638508358 215225298 534242244 266969166 462308414 873087068 881334882 931690264 986671477 922294367 964060725 241495206 383556067 628471659 921863124 416038125 876561401 189520405 377824781 279422279 486544371 7485047 594761248 739892591 842648986 846549060 913192261 419061522 504995674 980727846 981711212 573844183 899264779 372980697 732627787 838648563 884685383 732657047 814350890 448534091 510898154 119303419 976630562 355591732 435742431 994777985 996786899 93932591 468877736 822635891 896155552 450810071 602246641 913038102 915804092 577507414 799393909 241451924 820773245 828404270 924880786 340328263 680140273 130270917 818923707 776367451 988227637 607272858 935906441 996257236 999626073 540433287 551483369 87712508 819554516 789971628 914181951 271417639 774997159 682272839 907599678 701864455 907402200 93571809 528952889 93316301 627243712 326454854 621704933 700524179 986073536 82823718 349774399 409007618 935391306 76330357 592025766 822826249 883155667 992079754 993357882 312669702 980344044 89786081 489035622 411058036 698997118 143786707 592627992 771033341 772835573 859817499 875765237 304527474 442669656 44701824 240436760 197220565 747621095 857947158 957800445 271821738 305441088 369698462 650841027 474651346 944030001 827339653 952774165 204134664 765425796 105136319 854137977 380269829 956132610 104070774 620508143 493720048 828839311 509785762 548501471 684799401 908542909 193565490 293288167 429787356 877302088 192412558 856521953 562060198 646547248 791464205 886651526 349016686 924804788 88952355 693394465 380826280 451258055 997659005 999003011 942269012 950592451 524167456 906004077 112055176 491816956 222306571 563541146 48944168 240820514 410610521 799734957 885340682 964375853 133146097 713238820 715889737 864272708 919044923 957122538 305990610 960957897 582949016 968505328 926053152 929996044 866077128 969664004 236256720 458678479 288363091 324243450 979261006 999044586 979095995 992022824 924511088 981079595 498273358 673342817 758851201 971199042 553010601 829760341 469549514 775509059 16499989 325136326 953162521 957759791 739143259 942586579 212734827 240804423 506852736 693455383 345764701 990879149 819427341 830934788 494975147 610321248 62834177 113956616 629382241 635887077 122410980 729930592 983200774 990991416 825867241 834166500 75924976 975731029 139970013 842741094 198946060 926843673 723621694 728039712 696444351 959659514 892825474 975200761 634035060 711871653 155227433 194809574 957314488 986365463 609783805 876715845 318957055 591757264 950468594 979430788 485598832 559504443 592156487 828892775 675241749 709509300 805931179 913996894 485879977 732700099 617868928 988221022 118603266 379479037 515395368 550826172 802107131 989719090 566072034 709743219 322786869 433660668 395451863 905953060 911552711 983832384 562965260 592931260 332040515 666916012 681561457 850419489 598666485 820470071 111178764 639414251 240293365 688103335 149468036 401704090 326204768 619525172 556180511 870962295 489956735 883871208 817044421 911416100 32205343 71784029 636372249 961353774 842968702 928018699 837349390 951934629 118598613 527377272 261998144 468531829 944036501 994189659 452731999 570960009 911137580 924480696 737987951 957094622 552832656 925056787 123102540 799587572 717367190 785669823 523888473 762414993 692237922 964556961 377750194 869425244 595931810 811910038 81647053 401908987 761099027 993637003 43933719 65412771 450834350 909722024 392976031 483872370 914166250 914701201 184776684 405393467 851931319 978880560 786541969 957973527 397988005 918430397 759224812 917311156 155741419 359617655 450486180 805220280 935148586 990587173 592269705 724544960 691319489 959947027 135377495 703215685 525351788 566450255 81035557 618860735 767270977 987742462 689477732 740140053 761235738 948626375 846492615 949438161 73078201 964195875 23666628 253617055 159085421 544025952 158011568 914161916 955351447 976050011 849852411 987511091 509547863 832358037 511160031 513076847 554965853 858440104 27295466 276620736 161585828 416871770 825060110 865517984 490224515 761939759 76801916 445483483 748709678 888399751 859767515 933620359 170330903 704103160 969252340 970703408 697380244 715066876 73902126 323210890 837677886 913174979 330396805 472014099 865217930 955439606 542083325 934968475 198276431 633425061 785841055 992031186 188832443 481146420 539668405 582920227 12811679 17011605 349819815 812925150 471174871 565297483 154542275 507069973 22110130 655181211 420860271 697326551 468243284 835411445 335354442 650008142 964961078 981255220 971405351 983128985 957553942 994051326 847993124 937397316 114634943 755120908 418066478 544107967 270949286 844307561 376867334 567978107 873870770 897382565 223582476 954674400 505217729 912865676 599670278 607055039 930936198 989038934 589711267 924809453 427517824 874404640 480291077 871516521 857908925 910715569 436098042 775022627 861998985 999219089 143303061 526802033 226681763 455465244 258718770 784222583 540694264 815259124 52833831 523261968 272085722 856559930 205902347 447020337 293336824 884359295 522274430 889417592 650008881 718637815 817743070 846938680 320569093 418386416 571236461 795956314 465427731 784714888 104619420 153476044 334405808 890167247 344738196 476248371 79487237 241525054 923219859 960941366 241611022 703893381 938009717 945544243 349371246 785129854 524941529 689225278 764265626 835755811 310440328 652689530 225024320 584084449 543644259 640231880 818021457 987333971 880634140 962245916 123395099 189484583 371842422 703214133 851250459 894320046 752239288 820657351 990754861 998966170 675644059 898407196 968440865 975525346 812169812 894666511 158466453 833116764 709407571 978123752 772742610 944107753 372832906 673309890 607427176 924390218 534446653 805383805 675393134 847649098 667799931 778796232 395237211 611597027 241344528 595317316 942370056 946473465 989146811 999236390 970934135 978054236 257318096 587829301 915151377 963277193 499908783 776523159 31022662 76222048 820644891 926043550 595354904 682885253 810914975 992324615 514056385 574939867 371442194 716943794 224585923 280740931 732011719 890688192 54784925 998136167 690197011 959938257 709865799 877174422 106040161 216560897 125216599 654779664 446195347 964436346 5023848 942675810 70260320 561031547 690596554 699013813 511720263 851823028 291015579 948988780 750742931 969680099 397018625 492852394 146667827 373365905 968060706 989202485 170889679 838293096 802752499 913936355 321810140 649031133 599656114 806580400 580518542 822927035 464330674 543231631 75611158 423165509 978377277 984553725 811177232 890382933 916289855 943367178 274735446 901152924 319704785 656872236 832584841 907784541 645391983 875702983 955309021 969353905 134381094 147432261 389197047 841866728 226990010 923406554 623585707 665857377 904147983 958061833 466639846 955488173 327639263 925505348 521443651 754385689 577041602 908685862 273951625 768661865 45707274 927629031 925480136 991833963 325560807 762003394 139155683 918758222 705932507 819356817 795354052 985468714 798615171 888416075 661784597 870327715 557057665 578859798 555804635 604021007 763937926 793873245 949546150 969282850 574220624 887843921 672963523 850091667 981562921 992242352 303730179 614364683 858162675 938431838 413409740 574124398 736525817 876265349 582035215 588129331 442663863 918283335 380196678 410795387 543750865 935591785 462869631 477155257 600496469 663162460 341361339 914287974 968107187 975436169 614259398 806407725 178431424 685924343 661814036 728058291 615612112 637310316 377598173 509360673 578795396 595613180 390319713 525893711 381741472 613830779 191030293 802347244 630878735 821794922 782971792 871982075 241161026 845515328 605487314 848984935 212652124 972880785 607950894 997747354 499608437 606166557 558381375 922679039 352781199 855582746 765781415 772054434 515023726 706613989 354204501 670382176 912671941 945280169 913197955 995474722 894159778 912667667 20221482 850102327 48488674 906020760 238078198 626777498 200658889 925279425 559384586 836618876 311437787 592796825 454189920 481113211 868959625 913575384 962382893 966943349 15401564 876413611 955418768 973835156 945535385 985430761 81753923 399389039 189858515 194831247 603018325 899916507 225838679 534366639 946411659 961446509 374408845 590847938 826090322 914436129 995569606 995640438 16418893 564546556 194330484 300457699 649336146 858775475 556962183 983156589 340020666 480451205 717100164 847559990 794038707 808429663 690993176 827528103 917336940 960311347 244490886 514020033 101132267 514102466 395516942 411207840 463574417 468925365 840913692 992998746 870255697 969279350 52181504 452713489 795035932 836328096 770870731 870604063 326915612 512984977 851023046 994314824 69094229 673532058 700903308 755256028 968292367 971360341 386719776 512734963 339662859 567370411 812051925 813924808 35516777 204220256 114122605 824298457 392741379 932805970 340413329 719974726 927947545 929273868 587148566 996647890 286270931 393602600 656666582 962452919 601517970 760899666 810467054 861124254 804077694 962860531 355622464 462869801 168538320 346559000 724813679 812478413 876484257 981513266 743509973 836569907 669987631 779040282 606416419 874845151 138244638 688534658 993882689 997902658 690806 602741294 592584993 822406939 821349374 825544718 552957972 574068098 986749802 992798755 640650497 675920819 865655915 933851551 636189697 896496792 490618215 853952518 216461236 801179959 893572125 935266895 627425280 918862781 425844427 917098293 107492782 189929318 427077848 743499214 422937041 937111474 382122545 433537261 780921502 955258117 165255372 851156653 178118330 661158916 959486330 990854087 680546808 954233142 663773607 957244049 378650055 719000550 275312094 417274348 813012255 846667655 695997635 712546443 858823454 956917303 964007869 989653053 539317936 694784142 433186910 875516437 170980957 304827717 384892837 458266848 433048277 754039919 386475184 559715895 58881006 686041702 474653871 686866651 949520439 964715249 321494209 981854353 697102367 759949860 324273998 887747080 923104722 988263734 382406467 456167855 836923619 908969420 886617463 913883483 707742865 930209361 903527692 929569547 301117611 677398710 50077589 244479891 197573595 541182441 921544086 953875731 577484254 612239454 993119617 998715387 414220228 415293991 569778275 764280467 353068632 991849666 445079950 658741562 183306168 623257774 529615890 541265982 24174659 475355326 952344960 974195928 2522030 409314635 521107916 962875412 876860222 911826408 354469267 415085365 6986848 42274051 208052649 636225740 326403308 735426849 915652608 931196758 494893948 910537790 381573985 419414969 156182764 330202371 696459572 982138647 350917878 531561056 329338453 413559055 722725275 850515668 792701892 892980702 278586724 805781348 261318433 483270026 629845466 645202481 805441228 983031446 288298095 457959276 258537345 270345087 793148303 878507804 28830260 173594406 655077990 841454074 602969193 676496682 479999056 664733701 152102145 866694995 801144507 845450938 225322996 721961480 74958162 246859806 963588258 969804466 807050089 996781925 852115962 938469356 868520319 870848854 451429040 631404113 726611229 895542072 210542049 983331043 940779022 993666983 348677191 548671120 501013812 599809316 996845253 998659741 749925248 896005217 939587476 963480358 707338996 781347565 17079338 949232112 12423033 768657820 114334592 134943445 570546540 615942244 575802406 829499382 420452858 956870353 108728829 376233007 714960263 743857983 713344194 897510235 842095693 975133171 444822602 508307028 688474960 785558570 417982535 576744416 419697138 685833022 335775201 349444482 627579985 655153100 303043214 372791264 136578232 717018072 63630688 333201931 793441985 967932525 883034784 912230536 24690042 238825992 340334584 698138121 773514411 878283517 780876551 958066933 76878304 742730594 156162319 828615746 24528000 391437306 807302322 826079704 540812749 846121957 677539774 930938196 367297781 882808512 313371870 861323137 147162103 583560007 620219629 730327493 213471979 529072721 631897972 880644726 593944290 831728965 971420240 988326707 672369718 965463021 925286967 940906840 948714532 948915097 980299597 985405600 666543398 828190993 971970151 978049055 623249173 649770902 539172414 750782200 494581955 542123470 438657699 802477455 640281520 945285106 984370324 988371171 482838295 565635882 844023322 846431624 763445019 774989433 165347907 644475668 988994473 989546131 692574535 838842042 661317576 693549695 429939437 459591124 48528682 68017785 251436761 649484903 241189276 512046324 201758156 823613174 810361559 948220250 859899419 968503004 647581204 878405596 654159002 768938307 756415205 879461417 23708276 115214917 950206144 981961678 174031070 751630533 974303847 986439433 447924033 733562137 610585794 966335431 609867693 731863990 464705883 501676495 706962987 805598102 188679093 737017858 455429039 666139031 379432112 631863992 469106997 584532766 603719766 661991088 383021006 962264439 732473329 880230506 271551566 889844032 804903218 863345805 797000585 998029385 363169242 844036886 823820093 980544403 330432783 857393412 721592434 931758177 393575809 800075790 284070846 760800222 823225944 871444667 753067807 795751410 255181541 423535537 139418507 991473117 419814801 707667037 93928567 579152208 967090089 973575450 639931529 683857552 180771966 307359585 515675024 993197226 517220505 981584397 309773284 524450940 586179256 872428575 150928509 361974534 794492770 839682654 678618058 821029402 494457915 786693486 380626293 854755904 309981798 488515638 599818723 615783346 65684884 559139630 372039326 410181327 87994929 642315510 324212459 466254204 891453286 923998453 890058795 901784696 413082453 973317597 410564408 583327635 391761514 781173882 525938501 546859558 380736827 697083385 271067149 601180591 26224154 753271755 625131270 916949046 514287962 853054315 506176775 809374123 567576044 929986380 893841924 940236544 379236315 789252599 696850744 782676165 215813468 311288785 239747697 446704476 639099822 987042127 80546427 329332026 465834413 609696932 831514892 930630353 973554707 988377593 802957417 914919728 386560514 482862332 296859517 805746978 379226414 684602756 236035662 962702563 876246726 936226958 77105045 759230216 164418973 329560423 775216032 908711139 418540241 628593821 410209775 819340825 385005659 642526215 59683774 88014001 796331827 943254318 864424728 873937608 328896706 838371191 174505522 349117735 598119769 693868625 819826715 825496612 782593293 912090251 607487678 718426040 961060626 969923770 5156632 726336033 345120221 714517972 788729165 970221318 983515396 988500289 127916241 288400756 129414781 853720036 959526673 966899542 16013280 815655458 480372109 516309509 397482385 928822006 566482381 579025398 140965519 164287940 605276222 918051201 754409083 799510416 826345252 907978872 928376466 941877405 106607952 501103120 684441718 807813849 638380940 991819577 571819431 907297367 558198340 812457189 758016610 810122065 497011034 969926520 926582436 969824836 986761270 995719759 844702206 894059465 827380278 906103140 737317054 928562382 894574200 940502810 212349073 302532575 48777135 53524114 623462286 861794081 899062787 902861504 129198550 760944731 932130178 978264753 470370701 954691052 155899676 622400530 749184585 812197134 165610127 904500205 248452975 726690820 473981236 601694925 650094139 794361680 748758707 944246344 720299515 900106055 371139062 512375255 13285904 364808851 531906283 575896918 738770469 998723397 421495594 728332715 701780272 956302295 622447580 858892594 597837134 867751324 847962209 970051293 565257158 630753743 532247701 923194023 890454190 944106739 437728332 630199898 93201180 501996102 500868435 837857560 314762116 509006865 176044680 330880134 532044523 710830651 337688059 360269394 456984569 817449831 860191076 863534430 80671533 530371568 693069510 776614206 797485164 938644247 615237282 976268020 4047601 336654416 353860676 736472465 818749439 904790565 367689775 759125464 642559995 934673404 628913848 969113048 455721941 646467085 719362688 836585102 748734964 789479998 328264276 542031482 421363591 519255508 58444375 398850735 587422750 591167550 502687888 634201828 451249256 927118544 152709862 414563351 531098872 760228957 623875621 939177432 710608868 802451514 295770335 755756331 578186756 686705185 934945908 992633573 693794283 763513291 425804600 869461050 373539898 669142324 941190811 999878942 880582139 941306318 953167978 990995873 67803006 971493237 876787545 948756705 363126909 669954960 851791788 960161035 528846553 531719095 247287113 268825482 982576632 992819362 962368911 964085621 479250953 881833541 764196067 891744482 366976055 430230196 140650328 225372798 978414543 988667514 416164514 494387134 688382353 859128858 371315151 581746345 248057668 538309958 683579867 953151920 180384281 589471515 542187657 645995039 814968123 903301045 347413800 704942506 926854388 970557020 540318889 626821071 149550857 728844334 411800028 477304531 846766344 848634238 688348406 901606984 393717067 656072169 89588535 740119505 54776505 617397987 345598712 859044668 845766739 927020368 529179739 558503127 620671981 873578669 911285662 930069121 860604340 905862176 897115198 967914957 1671169 18930385 16931743 483800096 419968214 972006067 875487943 889884548 498114133 544179733 701055901 984284587 804274759 903559229 493606909 620641038 663377630 978981002 167826686 749097023 513281441 726981719 540949630 699237858 487694189 696714203 96812925 706152695 619077937 720227448 154022277 513894749 638084496 921245608 104317319 885282067 172675615 677158672 20333301 46109561 396766111 846930874 166133289 807908399 579900194 824712318 10518269 728937862 667311552 934069474 347899708 888994784 509239291 817855586 36226001 683652564 972247588 973171671 627734108 992504638 730464605 892238231 955334507 992196418 623525153 805912390 798808059 844733487 268397536 593585547 195155040 203144290 403152259 572752561 563972975 643570604 886423410 902290066 766084189 809881808 772992575 852658097 8536701 958719086 962158193 997855724 423834421 934400699 513419477 930467088 356490617 472417063 68526409 864760712 993527094 999070787 435842772 458602296 479237669 733073624 108137587 225304452 469838260 984027734 345656665 423836792 33598367 128428605 202922457 814764591 373549958 521015099 838494463 889704321 244607503 319900207 584385594 736780490 97930908 205527208 28171696 183019996 81115647 448742673 926987505 933584340 886519220 971796889 718465242 984283443 999372505 999824783 280035006 884023407 309237330 541883195 645191198 692038304 954251735 994499403 677247057 860455891 575377419 793959284 282709345 654045868 609455292 747057806 299514372 638209746 756010510 802462393 985755601 986233272 71758172 541321564 140368147 146473063 37653049 175501940 754328880 780465222 358752127 531417924 141091421 932991098 506311452 753964460 349702495 664220688 615562874 966643328 16467656 102724724 592071068 895180566 974512765 999639762 746387017 867775010 436545127 917238357 659882959 878631896 694077646 969283580 382155022 433455887 388215023 578657639 186283163 887020237 144886822 890098578 955385060 979308024 595343415 867400583 376456787 387403173 697373118 791926445 354807146 953347176 246377196 863363181 429215855 986506322 247642920 344519513 4587257 36152533 969292498 985013321 986813601 997563732 916023450 934611534 846932497 883313597 976184459 993377472 455316274 629891442 419031793 549314888 548697121 811881798 790569357 852845822 882397043 930533940 185596792 409531065 909222397 997620357 217460552 645618434 983141793 995409758 820111617 827337382 114093400 835114404 538421950 982203610 553864997 777411893 754663699 838877020 438753270 689608717 731424835 872743717 457843379 875485689 167935573 270183720 63133566 845932494 281939666 974814761 176502659 754079112 152674399 406683191 77668060 322501540 800272464 941812146 996611663 997732717 851851921 976884624 356468203 627966631 65641531 139912156 507435399 796801789 132215104 754095170 983031704 986431727 543213423 742001246 661124260 869789446 676596871 739239848 953637930 992443364 471713773 808756274 629690468 874545611 616577087 752493875 565402847 884583737 618857857 896043711 486716029 965883818 656755264 857378731 182759330 844028186 475145763 642836738 883256314 939372076 451088837 821039606 971725828 997042649 738638344 897297899 97777607 867794380 307401680 843395516 940175413 964779896 92090577 753279769 253867707 471456070 235708818 305410508 756563324 994612308 899469631 979717270 110029035 590437645 497180747 706339308 575856067 775892120 306745590 338394176 266205312 382440329 972162263 986188800 236436422 642628172 945119486 959556951 943328551 987326508 117674961 872831427 857967038 989558421 886778329 906288410 579502896 947185437 271714609 382241807 218247938 645727953 804199793 990540270 811511356 883480551 50467572 193152904 73888832 605499442 628426167 940673785 271693204 994327219 622837801 895290273 539077928 607988295 450647170 748130355 374391197 902239656 149358070 556892145 710475280 976550498 84722528 241891548 321007422 421390295 503997899 738684269 677299946 872560748 977308553 995276446 763212806 854127918 142715564 878757105 615995895 750159401 840081276 921039285 395345793 475052039 794194776 833546398 880790482 957356734 263884559 438575763 815970849 883709327 429931055 857443533 755942043 966969793 255583549 811882397 231989918 606402136 919055555 986910592 118376295 946537045 5549983 555870342 786091101 931323297 704775535 998734312 178659393 907104865 348233529 521954306 150128242 238422318 122844310 556521707 76011479 761092851 38659871 732274905 436712522 437771779 260483339 580765831 644824277 692856825 120585139 225206562 936251554 957352314 174667226 524630546 346577262 926921992 850178559 964936554 278056997 734547636 686319551 725184133 562790827 618649917 335833185 992571349 287722602 803666582 953611792 996176697 230265753 957985627 587724854 630612284 213363537 949281508 306530994 582210600 30258645 241221809 639138969 908935899 761405588 821617496 443040699 460528137 306447604 679388927 279441511 438986381 415204380 460892944 489046718 942297121 688772518 837194523 548167518 932184522 292987845 514312165 831161928 967821749 306440202 397397392 474854133 980806038 689238964 974930877 882884483 920791340 845435075 885871008 434221527 668256534 511081856 653822266 926266916 985742494 467407421 636244038 818428288 926650096 59253606 782265290 661164399 917362069 131613293 483569676 266803347 419855076 212120799 284524692 690618771 972886675 814678352 960726025 930462613 933406983 385850549 791718562 740978954 770401867 438822270 959393646 10302866 166334346 753015605 996283749 937676495 975095464 983185043 987166078 345946721 512609555 854793958 970814711 961283593 974594701 317228335 736389164 971740425 975356413 624551975 995705222 372066084 488409486 750425140 814039910 431212569 490974801 888567579 961395719 709957114 711792749 97143251 962572094 349901413 676932180 918574397 921536839 380298828 546339819 935694775 998581796 163655657 411002725 607482026 897543650 602295430 788371878 528729908 541936472 319041830 921599352 122120282 714922376 778611545 971068656 998079909 999446731 59420228 598923576 969580441 990184480 773399068 984009962 620148360 842853013 389483408 604862955 244626351 975045849 831912455 862404538 197074285 401385038 590976 334624151 799547191 826636366 951636448 978476819 747611099 879630675 989977771 999126906 686288414 980957287 546110321 852267356 817981362 967085688 78696018 690271780 640985383 683653496 399781062 684843317 11757353 618893123 928273528 992380306 658163469 908857953 607734572 954250992 174649008 810276769 635139318 716670720 977802291 994036016 328215541 814969771 386956794 459128802 994728681 998450155 263826778 663389645 105321471 470047302 437408677 904091041 786280945 994461162 678903963 923794254 532877028 776991367 69957878 400946236 338627431 495782456 423319817 585774041 642668314 732420505 412595622 444655702 969582632 989907308 647171844 859079506 197088782 922337461 344567717 978648515 208071946 463331042 239783022 427151834 387904663 858588136 545655167 615737709 563326340 860752622 42682846 180736938 161871763 555378756 425167558 431909762 278236052 815040193 733761155 957178127 658896018 999483479 234598720 656531587 420537016 531520697 306472086 997268052 136752174 792523067 810591677 889984710 76694997 199021859 196412319 511305834 208107956 622603144 534856269 622764053 153168958 728776684 921246471 990175063 946970344 969466982 949613918 993321100 802817000 807188520 465432188 515860654 369901234 957987374 22666763 183607282 345011861 673498559 990393202 991320836 998994626 999029511 470066198 574654418 826232184 968450296 804392507 908570036 451412978 530886836 297291610 934328621 825810503 827863792 132554570 391825913 917417250 972671551 315934540 522837212 734009382 871823929 890623875 943618317 519519327 697202292 512051371 557401312 860589142 894448962 991758917 995307730 706341679 769200396 4608718 895023441 363467240 792049456 749275489 960441633 934734432 936735875 551253923 767505536 334901187 668044303 682501615 753775035 740263178 986750373 482333588 565249440 309522002 906783113 367747217 628095482 464999726 638549865 532396291 844977107 981839150 994482412 139828155 662226067 252065819 850320141 366549354 886019169 981844681 988809687 741772551 743390803 670842645 674287703 229756640 873052664 146614281 748002933 956237398 986875961 950417058 967180468 813148026 888433283 267584744 703714904 668632568 817312790 894282425 991995041 89202960 339850188 812946793 853050412 989322359 997266827 533217875 599434334 197655800 965834148 496328466 900293159 254879794 400781333 277882162 859003423 744547688 796486067 82506371 435783154 957137667 974153657 138899424 202802529 364198191 663730520 812173630 843652209 972906903 974958028 728031080 826121995 16740594 777184310 300358734 553264290 494675880 980652004 985971190 990130304 834693023 920885196 855436240 949900009 675875889 830526411 876863365 958375831 357241970 888701297 416087103 955117124 832518516 989162501 551444513 646024040 557599538 592649953 389440215 665589318 684967678 867216441 300626581 957604965 867123627 945222914 771751790 807043859 812567935 931772338 453928698 618937132 793898861 820878817 79524712 602475671 171423091 215779158 122973065 502875390 591888687 696774113 985995541 993329380 192895965 362975600 106241639 138811888 572421931 779151712 232546366 763655919 840141343 847985433 78939492 752477187 664467774 869532066 115802891 553515017 243671919 729007548 99965516 946553305 168555376 511558819 748714594 766799336 488897231 828314089 825691659 997041634 123073110 960914414 220387982 253381937 543708531 959336992 169857355 841987133 24622434 198452317 72846247 148291704 211446887 649122205 371716186 682302131 932654864 967441691 681263216 951266979 245142740 974009549 943012803 953033756 760817452 948697576 698094751 814401332 887441558 901948258 385940119 431431817 741265176 998035327 61064823 314418727 725467142 998098246 538180153 993830167 618386181 736745854 107262718 548964158 311587838 768652279 201116475 704354437 833186406 963236865 463597910 622053533 503693817 698463844 419430723 732233926 384854016 949799966 240845541 308460927 543012141 794270597 148222306 791624179 921043003 934043465 82031701 919414491 903234184 931923956 773469802 999386437 419658143 534674407 797438249 942938812 121518068 330652670 72255042 564959404 983591811 991770908 698070436 869232874 356060255 689999419 725981315 976936021 423741429 444658111 939554710 967774403 214770750 497006540 65928243 823328391 915174312 965511724 885287144 989366951 946954115 966531591 704688629 827404477 31781298 150752204 621288788 722958133 481355215 502252025 750903409 862838935 767343072 788668352 930009562 945615770 455275463 531850487 213006957 361023447 932200641 973948934 750850643 834208833 15605759 925213412 780638617 990167994 508099862 809596761 711581382 749983775 580192895 638488540 876741589 967930823 28060059 545727171 182311279 767823782 719389088 792456146 888949181 966080934 930838604 940325709 942062166 954921543 402787381 925635150 449851317 604168157 893331071 915659335 447745538 496656571 458709077 510360568 14862799 403640248 610099878 945150192 205788909 646699079 41410503 574182282 388704210 592726298 126483262 698578601 598064595 926815237 226386906 335574395 915765571 972867912 236115291 825026276 340852627 920240830 543514557 897862172 518605215 560523009 383367895 760972676 648456876 908032558 365191983 998835663 455360453 983469918 521138492 865647241 368198136 382211157 457994278 972414767 324901467 962752358 965666568 967017857 675202501 907192867 616762206 853536781 743195900 963075829 629265714 753127334 923971391 986278008 106310508 997740916 601335365 999550855 42688429 803796917 112018126 894657844 614702650 987032051 844957691 967207623 493055195 880005923 51857723 511308651 318290692 572986019 929635884 950243741 734724369 785099454 51734498 703935998 609667070 861098462 963085951 997528840 873037645 965041208 158904409 658562493 296106741 303499158 841910229 965989956 781374566 926600194 734789397 898422872 99242768 727828090 23967561 671814035 642731251 920024609 121274403 121309518 887204638 976766664 892150133 978258084 946074214 975385162 420152470 514476568 427667765 432971335 968189107 975877165 589022036 925300196 908747079 958193828 965313524 977763397 859054689 984124225 838669738 963521725 525755849 827984402 21865795 704190279 230995626 382290200 658723602 761015780 731476844 919002340 540770148 783378782 102417701 486067088 913072330 958368642 54310134 428386736 190057157 359525632 955906044 994945007 451777313 454252346 616047134 715940198 285358228 740570658 858730733 965529509 333571666 636910082 244543947 440821405 354568743 966625529 217399802 464452107 44347870 543987002 302126328 923713490 27184603 440214013 26496518 409187369 890559466 933369793 675192942 682139639 30608634 324102940 453964617 860010425 559960933 877507457 894966407 981602831 578510463 935479669 236884160 302766810 797484048 964170809 680733186 839161077 738233188 951547765 430500765 743002545 631376236 919223976 818423890 985895802 518240977 810286723 721966795 959868237 480069257 860025140 163246589 626839487 55247396 551382811 718419453 850361942 344603537 775527403 33158532 544856035 782262296 953108036 425694853 948398589 960172250 978949077 146687163 514088958 587829184 888194978 947792058 962233087 78768883 183919298 933537605 967286893 602473640 895671591 425483271 657092452 322087198 621969204 427212450 587582073 982921732 997179080 268281284 350701406 673619469 735473202 172669316 942436176 629942561 984230371 691839130 974142432 109507588 509761261 104793648 264065628 383123570 671957324 679988623 811274652 90914905 808402435 474983019 488170521 854131074 942141171 899890018 999086469 203941618 680955464 789833737 911515763 786362193 819185928 776788429 982432220 545243727 918120146 644335156 762355587 689748577 701640896 860176205 939444989 924034044 985578658 165740748 200888422 957508301 975886947 575133864 922844359 971123831 998973106 361927392 545909808 478886683 947258289 502311372 915614526 773144096 877141809 300243832 417553540 553110576 803335605 536524170 980211165 529825384 939864161 248841923 843429528 755569354 935285740 303687687 662758943 633048906 997592572 71826696 963527901 766975794 891653133 200049796 396108135 659462442 998540673 798925168 806202842 673915695 945213099 848107555 957609349 154245370 682954332 980474652 983838205 338893922 475195059 585272833 985239073 398416563 798237033 30856690 127914511 374955266 407348730 690937523 765368297 689880353 997848810 198449698 377814082 7196652 546074158 289366477 363757187 839964089 852289910 794679296 993038921 673170094 880689466 465258473 566989210 579711596 980636520 193578681 293113637 468915230 604940049 316513417 724661253 799152427 974086090 824705400 935618855 512158895 597311077 885085381 909619724 321714946 761060874 518312568 879554835 840507660 976062475 414607771 687999307 538109054 727061513 205145349 839334479 36755021 420147422 976750351 982726067 836499982 993387323 278667799 865799394 973859987 992518257 708932697 945569224 776769189 974095201 493804186 827963643 552813642 611363325 155165014 963044745 45366622 670055292 221473254 732436059 637555920 800699558 283996406 994397706 634140456 717076554 830184989 867913646 637324477 767853802 250640738 304317172 755827547 890626703 622720101 905211804 823180505 937051791 82117891 370196209 286668819 940183398 737661457 999924342 213036386 354366069 783488626 799446995 907405381 957092143 935912331 942187069 152790101 291409627 86941954 798617518 395566777 746588407 836104137 858502304 286940237 997146072 514378191 531311658 800677147 811134984 352388311 589966666 839318142 940426403 89514789 741567074 446647564 604044060 233236966 575441436 984277064 996580114 13325831 212505172 562605419 859851745 859101353 891632900 381599854 382512995 296454251 744010288 217730405 598712614 282339000 866346614 624157405 825951415 244465820 249809269 972524547 993822748 913696616 919930885 729449282 872190547 660970627 860672661 356779653 948040869 675996948 685501953 574092932 725741345 449061331 799888338 504970302 863870668 54649820 934478002 987126708 996468647 693650698 799185366 677576914 993627148 162567225 643562346 39803429 894840436 641910002 948294692 626901841 719184203 682370048 766641831 110180293 169692567 291250241 483296985 39270113 740742578 453839990 561724811 955429168 968961996 522031244 666821205 113850631 536895333 767632323 776120647 470983170 817406419 671327097 909002064 205671777 730465657 50892529 582785677 142063915 730085029 600399439 816810624 613308684 994537360 747360492 903624308 604575551 783472358 813239885 947542031 491345910 587912407 592320238 977578359 342525045 483112582 380819934 560646976 993390294 997944093 473980699 953778007 172375849 354257490 423083127 885207824 345228200 543546464 941947810 995533691 824103119 884007239 183983190 739601514 709754443 916260593 717787517 793679552 480673002 557842052 939203366 995884846 630296472 787095626 637729527 751879540 561301758 968219475 326373559 916658856 229323064 344884930 588662377 660496588 278751796 439157196 814715448 867209470 917892799 997243091 956635991 975668325 638263919 894097999 753487241 840490510 465718820 801862099 999123514 999440371 482596133 802403664 463825903 773566812 74262157 393658260 50549485 874033829 136468521 157430502 611817040 689442793 508761818 650669926 576474639 635894005 700474062 804331881 692780136 702610475 641641060 651267624 491796720 727592368 339288542 960765693 90064963 855163630 515492603 981722068 743922427 815569169 410805230 559174870 384354709 482039159 478087886 650170745 17906039 691791905 342756507 590430656 383653736 428047172 893228359 988119918 445349945 522373107 405227749 726741414 995468853 998608264 986984047 995721512 257543265 413451366 955960800 957323189 866278662 977841679 543804948 801360809 114684359 127087604 741101839 859536701 844110891 943833863 217413110 561459615 524393302 562687732 26220931 134892493 211597318 669428092 918615932 992049931 5091517 851609853 15548108 788378075 939870821 975498743 692230887 794527859 150037667 504803607 803347593 980212664 944439726 951532136 876703322 956490293 106404780 541745044 215885864 656669319 788440882 993303206 138930489 150634108 890425405 929570171 733640878 785859893 579684768 638671213 621625396 864953016 858614751 870000873 91536684 423578437 402838017 537703172 242197965 404246557 939942584 948638762 274397310 452662976 480894769 736807429 611235999 927557977 798913065 948610729 871132001 956187972 204080475 810654971 706733369 929335580 578817070 828964561 254289156 466996329 86315898 740744151 883639618 938239304 640047780 644082567 606726831 649035187 958560457 967817649 161403334 328187236 962080968 968650879 977935374 993062833 786440135 917142024 322842748 473141833 700345318 776203261 229255694 900598804 119059 271591642 921681101 942431661 874064346 894928369 589287961 724822731 978448960 999800177 292717542 891495947 308435046 970933034 771648280 960432581 770661666 929168160 261336201 733968387 789016136 871861387 501609269 752693490 834144533 973164442 368480757 527950457 310121359 522996935 562681829 766811226 479511430 556411404 12585222 37039183 647082479 649472908 819162049 983757006 503167996 753227353 28439390 43915523 180036477 198152714 241191169 689662907 849220941 856803908 133774535 147305028 849107092 963664722 644561101 802592068 503493818 523844380 988258497 999246312 404985721 579853863 504891089 884433294 900788041 929691192 959192952 982991357 540622761 841726110 455590520 948287663 251799044 720043614 824582244 945851353 380475516 426400445 580758661 655863404 495596720 830415655 584916374 815730392 474460251 890107587 322146294 358311700 713571831 930192344 176169353 724218824 808812202 964592279 861652674 927489155 528654908 768389662 928343915 987634638 178681472 968988998 476648354 535679986 15680594 298177496 807426957 975676051 139261559 767429018 524330932 660349439 247759347 849433086 532629256 678578910 535924604 969703167 160276450 983215356 56616627 266967179 159878023 434562674 262109455 572145294 204345433 547545071 700390815 891579563 860761672 898034223 154393344 441449518 332988944 874572719 569590648 983164053 791382098 808861807 326551308 494791528 723640125 903961967 876124369 924327421 26828444 643619881 947332940 955396884 538058146 939470931 296302593 590959780 497223253 663627698 47906535 917802218 867247560 981052291 694017679 822354526 429040071 826073348 626273897 652286252 437657031 512441449 391641739 986545731 284112003 559847158 52097691 322606996 605754974 732259623 950515562 987089673 993247484 995189254 782922279 949022938 678201906 710540214 735776333 899663108 346437102 393161133 62078989 480812829 474474595 486809444 151761030 531573414 696742983 760395539 983548534 991312242 433232069 994116967 282099879 717302823 335267955 892790477 321133684 910520945 52687348 575044769 670849665 842308546 538396071 617609905 429706477 511277759 515990503 598613563 326734592 890917299 550317035 735957334 9823067 197122257 859527989 985288783 843163028 895912560 286409363 542402222 168935541 336548062 809508657 867814139 874067853 948756424 351428872 824003608 458490711 696803444 173121706 429625659 93573346 560191310 462188124 655374391 756279451 981386885 2803032 435300251 5730399 162179234 14608722 458390154 149593492 632691624 60462025 636461073 365443752 756437667 747872283 949399623 124704401 767692106 253328506 495618455 443185842 954378167 463905685 621647329 918004943 957711100 572871840 609254157 276580298 489763362 992603463 993637230 99863190 584502325 52314565 390339300 979923364 996773926 947187462 992925871 264775259 667067836 830288830 911255290 814983647 969624106 72093708 977481134 545174389 596082344 723176685 918029299 321702360 516225631 291131922 938159475 537153787 773822744 562814473 642777131 993878365 999518767 271215622 754676694 785334432 975078678 153321303 958741637 898112526 957954784 502373806 741614938 816479057 889447650 621894618 882680000 21058387 894266782 774892919 852994798 707656654 852681727 536229775 778530995 105977437 155258661 702175985 962794544 789444776 856593113 193860769 400437022 800369464 983653281 287914794 875635031 193532471 656707438 786525448 889127185 974307249 990704568 627593795 905328296 470326901 843682304 747538625 916607470 804948259 823379437 817154626 955238508 233208369 368253125 225116193 785787012 966765288 990077941 843263971 898015445 348171019 874822265 317209152 622701167 200393151 283019181 276911209 793284838 685418402 716220509 416027224 771599542 367654294 831023671 742014284 807769787 604114839 872729125 633889490 926114422 884064135 968703117 484591707 484689044 878105767 902181357 290577478 635706375 155292280 913210697 791416105 792623229 912847412 922476158 72394813 74219376 33147250 69379973 133416126 827251163 825049620 950378863 284381993 883825407 715181955 845719911 811460562 868667818 307100621 718855557 778362267 998598574 572482684 953114082 809006193 820593836 442883059 919057555 994013553 994983373 288669937 804945390 950711412 980180193 285678357 736092588 550502504 570185690 959731850 986800694 19222865 48667931 295257285 957675743 951958892 988967405 370888041 394532466 277629518 313036034 642913040 877196685 402309580 608008088 942228549 994320216 118293386 477478245 754249041 854502366 90278963 822542111 759057287 892653726 437408257 552740840 314456964 846905902 10911072 516150226 303453652 687337271 488906180 507144058 901575919 904931511 300413926 531712659 864842188 935189824 995511291 998026862 700978522 811471012 43621134 354755553 71167754 426934314 334395989 543659774 353448699 912989551 84854255 636843645 464374867 608150262 919576334 922637715 430352180 531190711 461355053 557297869 915503000 992924478 566056731 766332738 913089275 974191022 53883796 233398954 426100299 446363841 1335022 131548966 215394503 434122143 211339663 216817879 885144925 914140089 12648299 767258236 334487161 923008263 892882792 924442438 734649356 758878865 815423238 854856424 162373734 862517824 335393938 943302344 211026805 851004007 399631127 700487135 293264721 630059349 428353928 437832270 390705749 598272427 260976807 984909060 283388151 347453971 451913877 828132590 490179698 935735365 690515048 898497219 188161145 892470781 453480096 620359957 179379894 555267866 775846132 832840069 480076441 808648918 904914160 919930156 523888658 966840344 463574165 775030203 904794735 957681271 91389236 392933394 415746469 539379529 216140635 992606614 950415226 957576750 613484366 923796533 858538517 919752692 274912740 935310532 59273225 858983108 697952661 729317648 805919064 810033080 409059863 840734883 72668505 76652385 654477289 831515190 427474456 850443780 656681170 996198054 717561939 873383562 29950396 451356177 333730930 944216192 714564493 964154858 773219890 982844509 103721200 874427288 991161453 996144834 250267418 599433923 541209005 672968025 326709051 681519304 407518944 776982082 680050458 910081343 413940263 487698383 464764251 964154409 198943974 698963978 380425283 841716599 675162344 996206430 36680736 44976355 548251663 753098679 566577171 811252502 640816857 710120505 833744757 849811842 857730555 982679248 136945209 246521399 70875597 922397561 277474847 405186528 829508523 864043550 271129193 897635642 382548322 410485905 649384200 943361858 292434523 396038150 706378230 908868278 483664452 935588517 747183616 839897625 365738338 651405389 595687930 798758389 820141677 883007480 31259696 538208861 956030984 995475263 953844291 961542478 773894895 992012271 172312837 208208943 827441454 894643914 374130621 560563732 542889507 845150943 13258541 893328191 507845886 700043117 496852477 765613385 602830981 640800142 362627151 559654614 104079910 211742570 443005522 546219518 599383893 662231360 580420331 863168269 848492525 995950605 380634491 515369991 30216450 59376715 913868209 929771601 982272292 998179534 826617210 914165014 722649158 760841523 423165619 645430574 135479916 224766843 38889110 616831662 797649612 858183790 209460959 286673536 612032390 757474889 307976058 694529080 905182104 913900776 153485352 853779623 793962938 939540691 294645058 549370296 150679855 753973417 151001528 503790401 574248743 762583124 46521797 519093697 256012728 883993464 917027161 927090298 526091791 798235862 479015316 742343075 95646989 421094946 527224670 697861881 216820319 429011461 184286926 398515748 78760648 141344588 100371969 701999866 437744548 714128498 86710798 303767124 69887226 994394138 890658167 918787265 777412039 816231598 649100873 998021030 780036755 949082748 293808488 745436059 12634967 46476928 202684748 984318608 401613921 751275802 239758867 250251224 647243872 651021356 235467477 705508519 427682237 921722999 149835313 828728170 907312350 915007460 878717693 946826697 464973624 574989719 610888550 846933389 702222320 893448448 816715092 830185963 933709810 968862004 188321993 488410225 109690019 962512577 986345532 991762445 176674487 759534942 4863579 112407467 167842417 633398962 82418624 437385018 813678244 885927992 838456903 961297731 71457734 268073126 208759795 816380074 111614879 506261640 96065925 509673288 449031816 492574728 882069492 951125231 34244345 284897400 574587186 741893306 636377104 783780421 729726782 776584375 514875239 612120842 550996417 601380500 3097211 839848233 804736589 981441340 64650674 963642922 628067823 833007928 911974057 955070281 520854263 539946261 255526232 280793443 531432707 977999393 533996669 772498975 390460790 980133888 243696107 490216353 573111438 596410723 542027825 639598337 350206840 767690415 356262342 641132842 54439364 192565175 849885111 960257905 120594510 639162404 124599501 318505777 699944586 962710305 243867717 901657376 625578040 972013688 557868997 994049510 285689775 464577728 402046791 663438359 480463914 488026112 390796965 753808973 680212100 925744060 385702183 439634187 847557252 965999950 587937104 642363266 788636452 890596659 786773954 909697307 216812133 679536756 518060624 664529651 993191438 999728338 50397646 376417804 494936397 636652037 821972493 899492339 997239474 998484284 67798956 238904061 454749361 522267978 327841917 649528198 69576732 932146801 875032420 928060763 77938068 951487368 837676337 855892761 762541144 815376654 299329896 829996982 928569371 931967163 584193200 769287419 586254665 767110108 204999245 328039539 992331589 998093217 200476190 911394732 883000480 907548055 361339946 827370358 445522559 869427955 713024435 874393150 992715100 995017623 297790768 906270326 628222465 821908262 883597531 961724632 478622406 863128811 885592053 989342017 251233203 783235671 295553995 489833621 202161489 231102620 979842377 997621709 274952278 974347979 449378592 891292948 729925346 991944592 270565110 424561762 667358803 997988821 229890434 400852570 856759683 949495724 353015596 700514687 806201280 939245069 470287983 571544010 393060052 497790905 108831518 169727882 711703262 889715079 27924776 218400410 483543510 503003545 813503256 851904534 80152314 695380151 990777706 994653626 481770120 819795242 930849673 973853695 196913539 236450518 43607418 384660079 834887056 906954116 133908925 572873014 409062095 454477741 439016287 466355033 444447819 636674086 766514286 918943914 456094538 958189752 310558964 852955807 415721836 987802512 7569666 226339599 405389715 768674204 634556873 908670330 381461433 964112740 705635859 929204068 223234520 921187916 430498559 452002386 789925805 945275184 969841976 978119022 626421802 743182982 200734806 294854253 722905457 996532844 560279097 819214839 779091451 946596358 743611559 744102085 586424543 666328958 135444058 422133581 346641968 517152548 945436730 976900967 854321678 860777977 143773707 476343120 134465122 990323879 351742663 588789719 819959812 851364094 722876399 798089756 987849716 994550190 791639871 871975589 528545698 910234651 421033030 591617475 956309561 981240187 720546886 967073320 380426036 540027479 738345170 860437480 314771766 501093216 641066711 956046488 853806954 894807859 786813183 845515882 115104264 280862989 496142546 854719700 231255765 925306563 883474183 967328891 644143155 855542608 816206126 873143366 735658811 787142305 677201917 987125901 328184429 755672676 20345431 948015489 891978087 926749654 895875816 905364909 916470437 961949699 718041935 803130888 675007352 988868816 326848309 540651290 154582804 637046226 58052602 617542471 473335464 867335178 963003563 995816177 210228374 712519508 455082807 751529163 532322973 881137983 152748041 886297159 581124204 609091893 908626013 944390622 810297577 962031913 962745793 984102490 605235004 853723636 180826961 624081647 904226077 954101365 47022879 978281907 912202159 952963089 367979484 620280759 526792443 958388877 713509456 713941419 858134015 931540743 315208593 616869319 704442199 842817566 280206784 322020963 477815519 530530342 632091449 640397215 207469490 913964932 252453324 494395457 990687840 998899457 983245249 996319197 541244451 743420011 838955482 903120719 371298375 825586342 645666808 673669605 418520901 817716463 785765655 965211443 67578125 876921302 462887033 578320478 82885946 844389344 919226456 980946876 34019622 79391085 291773137 799227802 632253576 656618310 751696947 912668107 809814597 830188808 43177887 810517625 202384121 730907624 521438609 633710035 601955504 671765483 959445734 993166418 507381958 601664052 548567082 701580198 140395872 900507111 581863367 832611672 693574639 984723250 260711189 356238710 987595887 998152487 748556756 953985379 105589563 795459055 857137388 924437134 748130902 751610125 228792837 296114892 987789999 999402997 668949646 771663266 953591124 973939820 306280592 523807427 55376385 963975990 6762364 533483850 524678350 552638055 772668090 865938717 436948820 731526697 513264064 955233906 442216442 875143268 609447677 849664905 539631541 571721080 472087603 872152300 899490578 987290244 191872516 962175853 851863602 855811688 48983880 886676347 252691091 469719355 526326001 817404107 218813920 723834330 795042171 901733740 322859218 911720075 490299207 825666463 160571999 741897410 944038028 968267760 68070627 511619055 564712420 917763709 777982828 783098112 5340511 867418127 57523302 319329323 573080230 859623832 538695078 590936275 809857224 985121988 735548325 942476976 949068865 980231763 558302160 647108540 965408034 978491256 945909874 993742864 790008467 820743530 570754627 970403682 656218744 910819117 498464058 625114749 796355177 976999468 967992643 994905306 565101754 684249729 769700711 939408123 474819028 711359103 769881965 847814257 525573685 611305376 812739203 928172468 624374385 653932899 551598660 974096099 107833169 488699499 676377220 777514954 398973170 813093698 513257928 608616547 754057071 944409734 439840688 750667894 494784941 914163326 811504956 910959875 7793426 337754515 496122457 665286366 179042419 559583643 968417780 992846301 842594879 906496466 861828541 933888093 197994908 413195206 141305295 968272194 766941055 988570097 826280446 859132728 273076669 720654715 247137519 566158768 852777327 987433959 311581935 683359805 556464017 720712512 927695991 931645548 332544434 335316041 874323669 904081458 117394404 259546723 402036957 503286590 459488133 565805521 181610869 447815929 831181696 914231305 203933405 204396850 734733103 790165576 215749420 846909865 612727824 918792310 184526121 788166948 945235998 977238022 788093909 909124702 193771762 509245212 768178721 779288906 608511721 674775841 622256764 996578551 818836238 936536683 472434941 649565696 905905819 943887993 349863618 864853741 480665095 747102168 848811265 902537406 234421933 571312340 488486422 902543184 734490128 836752490 513676853 669493676 813101525 915862258 611013912 990623254 585185403 658694739 546404546 937469870 658290165 897082774 343828132 897678987 722193888 797577802 265777313 317936426 255325201 661496258 537418289 835962844 724039912 986688588 238267218 796839591 485303806 958333797 375050019 413568797 748989268 992335603 22658984 894614252 355395931 572396328 995107301 996174801 930524650 937604879 978164124 998719542 258690324 889525102 982369849 989107030 140747440 404066682 963897830 971408252 721085277 801074598 523011528 619940888 788468993 980272360 919083379 920614020 789449753 796612624 28738686 342465547 800295585 912774170 741177043 783153384 261502613 696823010 639530985 909453038 230427868 996560542 94861584 411201287 623156354 728315967 823513699 896386888 149087647 238572327 190713377 210369842 653921241 819813004 919004670 953714863 198504681 500246683 997170719 998337787 916879429 963534300 279428470 686331730 325434533 976822804 540144611 719093071 752365677 993973722 200782688 762396684 212222628 728501612 101930477 668581269 341460687 885302364 473552196 892813903 361741316 815098950 308527947 973385589 789921481 886342048 170001853 635398385 192673694 799501603 878764946 966598362 722769732 791085960 114863151 541924144 728428111 911435649 425081155 481018888 378603061 901586674 443027647 503589348 668245167 730332412 782659710 893898189 417632365 743330333 597716231 811726300 400317987 753579220 24108814 837491250 315480380 702940523 703826979 882304936 770868040 826810341 36746844 238764402 40803378 449690675 693561134 785871212 763598366 841078914 647262939 816822098 421901074 505449939 506299880 813798766 461742290 488205650 118380081 670956141 502545631 531414251 973508490 996947556 485344288 567244237 520681261 557907737 657896904 786907612 476961164 498684301 343232814 633766263 310579940 962082024 531034741 547673386 820015181 968648297 816046167 869903121 614395233 795879202 462526463 961911846 822991431 998459324 565917987 635278850 177424449 600102348 292774858 568424985 642254915 666346928 475340013 613321814 65654102 153182405 317785294 358740716 807769851 997278348 6880758 798991611 124690388 247223421 102742998 476478445 222950771 267445256 241459635 640262917 972678226 985184463 603342308 905803481 999947476 999977066 672637633 772934137 556282035 929667000 475894022 890759001 184253282 749138478 967537702 992068910 558877983 912898918 704324092 900337085 302830625 620524462 946137671 951626416 176596478 940333529 247218751 445381889 906666895 986526807 961684660 969116254 249371371 450395476 686095942 967697940 885213057 957431122 382212452 651530057 172539847 750410282 16360566 432847693 426395994 609277051 423675094 587527861 318341545 930800588 227960365 251359822 651041869 657763190 228942144 915421395 372037193 566861270 787046710 796573278 429408374 946122783 264309466 278912772 162106474 887422326 510388666 876395188 188847247 522268962 275316977 447783049 58172971 861877611 294157568 521940103 239188651 747062835 980962464 984316828 360123420 750326601 930947308 939006391 398158989 760268662 417763278 744726736 183457693 818882652 163431178 917963039 525956479 545451094 625917275 672142722 524299871 975412329 893877147 905083655 825035544 925340686 302340445 358612806 473865950 948272580 906699839 916242522 519772977 613693242 835398939 946929782 61992656 591950224 823195692 828780000 987517050 992460146 62512690 333593942 671076935 796368364 467606227 625840354 232985861 766850917 94029420 402906126 309980588 692580028 521056464 787586282 185480267 821020729 757962964 909478362 861557002 922901868 843870681 961059267 514113281 872514765 885406862 909856011 940535110 993767638 314622637 732902032 679763933 798944648 2713494 815372616 414462498 502656536 858304432 998213460 784742320 996404953 312739949 853290517 556797836 573022389 822885133 851242633 928244941 949912329 608631440 772525998 398418278 537266204 35498175 93671472 836572042 992199596 721475638 925644111 393653915 814786569 226359425 666970465 293234934 462192940 942714193 989164122 865592281 933276432 657946196 890819326 181231725 241543612 252578160 318686215 16275809 874922087 735086054 752106517 34432128 482060140 537537946 961761652 748792086 785631353 340823592 942663022 177818992 249212297 171621484 867988798 408341598 652177582 506747713 940267523 723318456 911857801 942916676 951596137 49073379 863908460 404685973 558141325 979569456 996255079 603571226 684936048 947555062 954059118 235814382 774464060 966278445 997046865 848082953 969315792 294734641 590876688 767279750 825797299 478982064 836354368 866507206 962472164 656526285 880201281 357568676 953484802 282141504 927553217 576652041 741939042 556008082 628490472 310840958 636604824 251158437 901964961 801779359 931616912 535118469 656323920 4954168 199125678 339601853 444501577 744207735 768911704 126704702 855852300 702740354 736421304 238413901 264193365 325289720 848546333 651336533 687113444 167475962 502204717 888423220 942292589 535668179 749340553 365605929 731390545 497120713 959426289 816614077 946950886 179359004 423044293 850234578 897949599 587478439 974788348 511224158 661954593 195396534 535600068 769162922 998235166 482132077 759637792 771982872 886292671 99607028 117849395 184306086 915317483 748984617 977122288 172323634 791230119 184761784 193304543 65517646 430162226 800230956 979500177 823783967 979546513 586646489 754388713 797966227 930901535 942361751 984538840 138493405 949421103 920386650 962171803 370888018 734549688 678329232 703463897 525053686 978608313 505582828 704121300 531134437 810260142 850925154 931974516 910325329 936573421 738806132 978782318 936808214 995700010 646596132 842615342 527008357 943331227 361816793 582060243 705235327 876413640 165728972 678839490 833640806 965632850 455180523 903383031 573895491 993265256 938723620 982623744 744907493 811956860 709149717 918509270 985636237 994885984 135338534 898346198 465775899 810893030 65593272 667909229 836396181 943516517 558129310 601913483 674897059 873780872 496202215 654575911 813594964 840314725 464033579 504477288 201628445 891780821 851418726 876255840 280778828 535367860 293627739 761598707 570731085 896970880 778097048 835323397 908470540 918106641 8698881 874754443 765045016 905350630 925059390 938992330 146290187 482538779 245387342 317458598 570287792 899538330 177353002 357441728 626340837 962730641 571445305 913973777 989188931 995169823 789821000 797556826 820572426 910735134 105012359 273328196 81070718 560389213 63386002 220639994 846732611 851187503 361912265 841312216 75301981 872737710 910778780 973192955 595054675 976136340 868658961 909139086 6864960 93733411 103659681 356918127 9617038 269658524 8072751 164546481 862201250 970405691 580575039 638246490 965972852 991852767 78516048 232887768 720073175 775021359 683586017 788464454 869938098 908739245 354407926 442170867 675809137 981556842 460557989 884960889 331041117 752682542 488471358 535651094 255196882 458888790 530901280 539062185 503214947 771186636 653215265 940499752 597871914 864179031 913476083 960926256 749930760 888297372 677178870 808988265 29844851 38780794 124463363 173267584 488365810 886155074 611684168 973728753 947538957 989194681 592908152 836149184 578195544 640642099 505160507 633302162 867298715 870065188 829841048 929737095 624663580 918692967 833838117 982748005 521552556 927655395 934639786 962422221 106556757 742162430 364930436 926757777 123029761 587098114 190658396 737727975 532770048 655784032 404303 65536182 490670291 839419146 773515066 954488265 798786419 879144577 399944048 911466105 700641570 790352124 403307660 616509592 823433491 960880042 782357020 800720996 226182697 534927516 577718733 773235817 386983952 459905099 498146609 974214089 690524475 823062045 160451075 766624227 795067693 830924229 698545451 805749782 413675505 743562797 651927457 994449351 150980712 308812024 300591664 933471953 245801127 970152244 937669736 958281137 609411996 728093087 651994812 681322266 968490279 982521849 149411908 324215422 132459243 217194038 407818437 680063794 380768227 621889328 479929927 772925363 665398112 808467767 136370857 365238220 221297846 743353342 914512620 966745298 610038898 639760549 261743387 655034106 938592593 943866179 660157234 920619345 440930899 809806284 642372894 799376202 534881961 748921845 616708524 915334244 396962833 447737804 174431479 381115865 127172891 244024798 341220256 965022717 200191156 335367966 486974964 712414020 981335138 983018427 274642244 873832168 940277929 954274673 491818886 686874855 804754155 816013326 786395681 795362354 871445844 986912349 515806103 906400971 15562008 827429579 751902044 822133393 709695973 735518367 138227832 429089851 761683557 859481615 273569316 316840281 353784099 509005459 444633655 717604939 587116768 949444715 669781667 782244120 373787184 902971760 577167480 999135317 174607181 720296867 297551487 501014946 481267311 665791612 616709333 774425709 78430388 212866862 436833224 976962467 607035828 622014252 682910322 902661082 691309334 839094970 940353279 941364549 51651051 89665606 374591518 914789633 818580973 926672192 58291763 235045945 782676195 829848179 55400965 723202690 839492022 883193342 136446921 260041225 892425046 939803712 817518037 836579085 477945841 677254373 782667796 896078046 194657877 856311749 510221173 710866738 484336201 641117215 776257342 997971097 428471396 929403959 987763335 989148572 118503913 145943402 843843476 899881778 767370452 820510737 22985865 698074764 879874119 920334506 863355913 864831224 99313938 843124314 580916260 799777188 693964235 837621129 732828932 952732138 556520684 971662056 603971121 751932849 401666299 912572555 318084884 432500373 324103005 503393465 891821651 992064951 380280414 390633284 888862249 944294723 424620902 536892648 341061107 616308656 515747272 622172915 403992904 794580609 257587961 430251544 996842813 998484915 442598308 713735199 853427487 948128918 518034852 926218250 121678110 727492246 252048570 595279635 112515053 642463903 32313311 326353785 101824495 397059337 187759309 455186844 138968850 303388421 145744653 514496291 300682132 393983894 552806301 754814524 404251624 499441284 463471029 838546210 252249253 927621094 199949121 749912534 421192050 680770108 555381968 994643059 471875050 924406789 955867784 998160934 899763058 941325176 252950332 615734563 831311708 907743899 261297346 324046859 110810521 670498323 554087248 661992428 515977893 914269582 634519737 972733689 653357668 746722437 413192218 962549491 183470391 199948761 133634065 757660786 546245433 801274311 675036560 845541314 980785864 982767512 539701886 988978853 756445028 784379875 556171159 609116902 673017601 935469891 225782231 622818361 693248697 725616164 538207733 931928773 923880710 945266912 278768305 854300082 729783853 991755761 791045475 910921785 740744145 968222137 909708209 937620209 943349003 966367495 977518489 985297372 613104011 767202178 756914401 820685773 882311274 980526738 509717399 661070489 165060997 427221033 130402631 140286896 186623389 864731293 776487450 829949087 450984519 902968299 195655359 446989780 216956863 719621179 292406294 564084958 991211336 991669221 703020225 926264198 304581547 498649642 566753838 995379220 355837717 670040229 764407088 882675526 722603086 995135121 700001478 774655712 721103595 928086440 247019264 876302577 643751821 916328032 62367689 263283823 425756643 436706355 586746940 672803794 803762703 822089948 833483988 916115404 479824804 911173133 602068098 855431161 275236443 998068084 718192820 836157966 270704958 849890784 591124656 751709420 781293893 781781531 44390926 429807805 795340237 857029327 972832155 982675928 756867597 938561828 246031158 682362253 217121114 666851881 729909126 875754326 309147180 517381462 533279587 730688489 702982878 936388158 70119492 858683958 888187371 928483054 155535848 643075028 683932853 848984264 342649001 513964918 634820308 974460331 281529767 381987387 168612658 900867531 967910141 994846895 176253947 854020536 675139731 837683654 890912934 980855114 496418666 889228198 688435362 809847193 64766971 350612492 997164493 997167370 704152477 855516884 928584757 980148790 476283403 601809087 266987285 817338147 592855809 707067344 712599138 816111218 853781480 964047120 737786018 838247464 468711350 635007949 134236833 804949617 36031205 37624428 494101131 774216945 442834846 775002720 833083578 985558984 33631191 579284993 704047620 972786546 121450563 780015769 768378040 882507967 829067227 999294398 698864845 867946232 438589595 804423270 541989894 684293065 391900615 967897781 8203275 418016757 539561348 680285454 624214047 925222852 602636357 936002381 187358432 358996716 669923525 803388764 661370962 707458452 723990994 852136227 15062046 987475161 129563718 447220832 175476934 401025887 832837507 967831785 640631813 652232864 484714185 737082926 33966629 57513787 213505179 327407353 903029940 944281250 471881115 939131606 373788650 455970518 21449679 887132526 241197548 874221389 698750774 800497545 60010143 454277926 634135969 939105253 805547944 827089473 991927501 993530213 744474206 766428305 300725552 384434992 600812096 994518057 556412214 897873994 206491355 302432484 294161529 525747011 717500003 830526416 514573150 852801900 347254411 445631985 87622550 138318962 50248328 632483015 755014389 884779879 641648397 698952248 811512635 868949863 487829260 821360587 655451713 865548128 479915690 805204664 432687623 989999872 921837985 994671105 265721608 876280964 95901393 252060781 678168059 775787351 242626210 581736058 716927789 963421603 166052562 531783341 316488540 366825471 560053012 565287211 350947486 394568047 701110601 910674277 825686401 831665496 881795766 984952765 202063206 898393990 147273743 334661463 244631069 285418816 263406279 533626407 247291427 665316473 700138699 748477632 582858368 786108037 48431073 153721511 279144434 422566936 94518069 367955531 983234322 985306445 442207536 609463156 367241163 515146438 73422079 558217629 748179528 881175869 969735033 975351524 121947410 208914082 929355250 950678149 444704817 510372620 322146350 725941200 395918193 454495639 44198720 134956125 296553221 835266535 934858252 992217480 56546319 463905518 323614628 454363258 144216565 520075526 657784302 692803237 435835540 793085441 252455535 601144896 775237136 876447801 722086284 962239826 547339840 854640832 345694702 496268060 629053554 837993727 487350351 733921626 899755234 993077247 82424082 396780712 894846671 962308056 998786094 999344938 692300258 899124195 45652046 952484699 61518244 996520664 984201510 989188337 592851168 616877691 114892282 172379352 199396861 905154970 390799144 745126745 93429617 775434263 57612797 289132438 230868265 594210109 334274559 659445475 823040005 901866914 926313068 960835745 35558811 795687569 401716204 497424185 27902062 972162887 797110831 927258763 691894065 800237945 159769636 528069091 120655084 912671463 569301561 718792422 242501573 837021757 463692441 601713387 17515374 926992406 904801973 988663380 312686564 864776209 358255061 737968464 436263816 900825936 558316550 972374767 292664910 875198444 219652527 480824474 229707807 722382367 996187808 998156760 472894931 512048284 114172903 519308101 37713866 678632370 321461874 969412185 283438707 351356334 682997939 947894668 630980308 957397358 611075098 840229784 732041276 789287739 944041003 985460472 736286551 763908318 909483882 955956997 34690764 106643411 636585683 810769551 602036885 952586061 273013765 764396425 54981859 944938146 28896484 691221778 255490090 813103430 287088409 959184826 982304214 997337740 568331845 640387918 262393573 515562143 707008699 941407507 753484775 754824457 634620815 818108142 874839939 958544800 339649123 375481163 940595513 949742175 6049589 737089057 435891540 884061470 149021175 640471109 318159500 472561717 59784759 874624102 842958691 912566660 801628920 915518420 34164755 965771496 34920250 398793651 668972812 917141236 254838487 560020784 278949125 960969503 132605543 562041645 637374548 904109743 910410584 985399158 741951641 844466731 243008827 458383385 238894210 909255936 847344674 977131065 370914088 735280308 512960298 735356835 944400002 960754313 907181767 979210889 2725889 80096889 691386050 858039487 987401597 992579417 335172255 625920167 995642716 996438494 115812805 330401394 758589915 782579315 33555309 811335651 424351415 809582874 880300268 925547735 851698389 947662388 319054260 658433638 858815264 995205159 431676918 589978514 213879874 627856983 21566770 129120074 429168194 714110255 687283906 887184233 625785806 782455899 829629159 908478874 913595490 974002194 343071120 930922838 107608451 398713224 817983020 971344109 585837441 986867290 95840667 942025964 748605362 770203089 940119032 959343236 547426736 647374066 5469430 136238375 664292127 732705122 490887391 967316244 949189086 986132334 805907726 921850090 297216774 385876156 157133777 751243264 811723538 825715213 227116569 571437787 486977246 986925662 310808161 454371618 634847832 933625797 106868277 647609087 562352692 792750794 729137896 821643362 460820533 565943837 387598339 588637002 235101854 926538598 576500369 930402808 970609673 989409683 892888851 904500236 564645943 744556780 290681563 640238949 611191649 761418593 186063666 339433794 130216091 743943101 221931565 492807285 799530755 954001026 570084717 957854448 712146953 815293390 773126731 912629475 276282376 955924640 639613634 655215088 445265752 907339148 956489257 981402651 903442447 972754596 321408893 874365570 368768842 653360788 981131468 991153056 570791854 666534237 903303599 958240607 146631281 750691090 518334457 811580594 71410789 995511425 5750718 979650976 623911120 737565845 652765173 883967799 571822721 923245722 882742551 987769910 364465507 930527483 515666609 554669017 37276731 622258856 754793402 862805979 307156911 752981954 362657037 810025662 82697059 734235548 461535507 693741040 969649782 977878139 904621989 924104515 958244849 960222939 794043915 870681830 557903952 806907236 608032946 866215148 964639895 966643605 527043655 793877181 816715942 924746084 38633511 753587521 592146459 659050006 958528925 990290417 56896408 976666438 470488817 868481098 942998320 979607562 50616209 331160120 134884594 955431647 270058428 572360663 91292219 714577471 739625626 997785302 290737022 436569275 968088124 985858466 144997097 706399263 166488774 605348963 167546157 309987832 808562283 970816397 59345016 722820837 529949417 805429048 463103523 489485494 565844250 963811263 50306395 106309443 125532778 295652071 91628287 607842587 391725095 835838924 699662224 917100938 719842296 874400589 826984735 941620172 993507150 994483118 862538655 883085668 803125350 901939438 275016373 762083621 245747329 578630167 460828558 964394884 308315639 602896714 632540173 779014187 151268256 668266272 830728209 956718371 741983524 925987084 688596120 837698222 366182614 428497379 168163285 823345769 531273861 786380812 908655292 913817470 230518038 528170120 789397152 812702509 48012358 310824938 560297746 563779821 149112395 602177153 564943836 640031883 112608653 965813051 655730785 841705293 993721396 995395111 746016151 957823330 427458926 630364311 411339598 836470797 950707668 958380425 476098242 648369842 517675211 528904755 386911014 856599380 369508620 796793003 398622854 643393110 450258289 816137334 703454621 988105566 507910557 630041170 438990359 534454449 574656456 658382136 145699968 208447096 246171122 275716921 436494716 977982334 618681041 659238973 413969046 479422022 292981469 566950196 242581693 523516176 813206986 996170290 172429593 446062078 431276679 445765033 755906458 759125248 663727843 892351345 841752575 941939606 383775054 768532003 931538762 978301217 958445197 983260665 327582372 481524660 149379273 913232330 966828869 976212636 227876878 350477832 677707411 926198378 520322511 796161653 725512424 906964442 397216668 686652294 356255491 720915394 290201385 713372194 354000179 881204355 366232445 656849166 528137254 989454547 73866177 697967441 310351429 977107720 992871961 996745711 664367545 739033779 813729349 947363314 645027122 866774328 465750186 653255178 635952262 746135409 723396870 762820979 79689816 890414701 159337878 947475869 120112333 405873406 720360381 965707453 771701107 792253946 752374022 982679161 500472351 527123575 750801491 994501587 572981444 870984136 965120227 993654069 927771761 945470239 642968365 843416472 148749170 714883370 215968668 704026081 392192326 822839561 680685599 778610657 690014912 777634441 411236468 698068400 593223845 982547661 419262507 989009417 285563325 322825750 532137007 934671221 821353871 917486439 73194299 270013957 994435535 995523730 563623093 766280247 971010054 998082162 224036525 648815738 778938831 847883669 409959048 998378873 453129106 824422384 745849866 857023825 999435629 999950539 668429881 724733392 822323089 981849286 313659648 686465706 823391867 918269725 126435736 265790288 350357985 923661164 639870534 869152081 939227282 973310172 255934039 312978265 908594799 969300754 594743429 897356090 85869234 194217295 700143551 824128145 630922701 780431044 695241152 818761257 525456737 573830838 158227916 858862074 741423773 756252574 562087737 903158005 966790994 978612905 826684648 988131427 481300386 625280154 588030259 725017172 592031756 701141156 110019359 540002650 143265887 177205136 251385240 732766647 993274700 995994081 715609410 845437823 455390360 611822535 688337592 797247984 343957312 720410200 403613204 970891611 716945581 974098382 848472939 979252334 219994940 240927133 600934948 817759738 322448320 660362744 708093778 750706954 808333188 886358995 456712134 492660038 865790401 933242940 479538557 814786937 637654673 678494543 437759606 479980812 523879883 597838496 482661053 806500572 103015631 274254011 856951658 908267597 576327094 665721311 816177440 926589476 804344437 995523404 538781253 941154664 750034373 908317714 935254520 954056391 684251274 807795620 517092510 721981678 945425746 958731257 822993928 858156964 465909984 540128911 29476470 770329711 155113787 652722480 338173394 727310907 186905918 970016508 724804027 820530477 689085303 890986975 685301613 689913174 798480270 939490480 227516529 534079654 30316710 462080225 378574917 380722526 677594847 792768266 407981130 916824866 604868038 702842443 160156845 292208669 960919994 980950812 330993863 363590483 666802385 804152096 341895845 974538832 554139010 627609448 859005578 988888650 421305524 967410921 622186554 864114229 943122367 985329052 577707240 973578858 609356983 859756873 415524607 562798602 705589826 926314024 529313694 737257564 909504730 924572020 878314396 963681942 788230426 894423682 432718944 803146445 201909832 456650344 74726472 287594957 756030377 811759676 174642439 553242375 33010000 137306725 283391172 812129301 561956806 926279359 830117341 999096977 56400272 71488504 808388225 845879660 466593097 487041483 211081424 542710323 90373291 826218645 831326297 916139648 855006533 965620870 400529326 979718422 319603493 986747267 119682119 452517435 321630024 538009567 177658821 545825604 99715532 111019437 189799380 321423616 61464314 999881608 243681473 772145048 980037290 993465195 476575327 752212880 342742827 362371318 804327911 974548778 770532745 849967316 438550173 656236925 324093049 776467361 100557189 822108227 960952065 983336236 540775684 780024690 680319471 889137314 278204339 533267532 468234795 550684823 610592797 668599958 995446701 997877810 204071604 444476143 839036022 865532967 599871707 749757767 102833118 925915611 680983423 886302758 886429064 988662100 848102553 908775583 252634479 516231784 795468193 917629997 375240708 509062249 148912262 311032108 20209766 543698559 298326839 853436328 193795442 873440114 294968779 744902051 296493356 983519447 584192616 904030036 116210661 616513549 593503097 855865438 841601655 974983087 292150202 394476795 207755521 487282268 329429704 667023285 656215692 766002073 444452798 823771531 163326117 309662534 110746556 262617834 426891711 583430542 740851339 984094690 370674702 653164152 70094921 471367883 38741479 118911492 630121259 962874531 573040371 781448899 517246599 903689131 731820756 939217493 756151194 995989242 905320881 926987255 132701352 313999150 435451671 705331494 639490337 883922602 83718038 436542320 687575335 990970003 193217241 851908268 9188796 967786441 374316748 649814014 243365583 672787564 411883760 796563820 966623161 997210310 533950990 776965291 902912963 930385925 904015544 960458897 547253557 880218054 399674976 447543304 67143048 258241007 45047820 833818727 526397809 983423426 234269759 553128478 947018227 987010691 853296206 991542293 807240862 857704444 666530351 979799738 571452195 578384165 293416214 694378554 930216232 974696795 221374344 449799060 79278022 191915004 941017047 995030117 381305602 999951467 775253008 827205377 543446892 798794660 376132486 855693941 836100485 895832616 815736262 836394604 700288729 733157457 576365609 915004836 829608234 915230231 172412411 753785955 595055592 902782370 751068645 901829185 67904506 599376906 549038919 779813204 127828251 478172260 414958736 731646807 134760440 406697326 957182864 979971956 787008143 842205956 580843479 867553912 434261967 914719012 194887962 501002380 60206475 545936924 249543398 526833313 19501858 563264406 653048961 735242807 182427868 471579724 902302674 920611356 27643556 409699490 53056686 667607054 345799692 613863898 601122988 671604798 882623327 912760108 153724860 469489836 627393330 724045760 753607687 809090768 240056022 951937854 808475300 947392649 66700179 816198676 609190045 953354438 701288083 791229467 920499321 978145431 738625684 782741890 849139656 855489879 833974253 888743814 937458244 997883240 437942514 618700282 246327212 797380301 110415225 479535033 221309296 736763334 328875079 436578814 740630144 999870889 844592104 853940746 175436052 580066105 79241261 185221865 512252992 876340675 822317112 953512817 147095026 242129466 54242293 257493681 935598955 945540540 426114140 766315661 967087504 977067328 272678626 522309778 572748898 578046295 107558661 597077906 631108166 921994894 523650521 612623351 119131880 978951535 896533408 943675817 344136510 563411546 520858919 636281921 693767706 824034146 639434507 984107233 560151326 662253406 651833538 903664149 39499614 671639258 353983776 707615537 360443106 518529817 127942896 279210330 123338371 707730926 761346461 991366395 262344380 266344889 687507638 856211335 629138328 884900748 400384652 820969753 148182844 267366851 826661932 977575336 28746821 979162802 600747541 790708128 544954657 756830901 709291023 791122454 347919762 402596967 588276353 939854590 219850434 648422029 23723500 104075620 148909862 443310077 371872921 768221783 56469072 832135326 344400520 578258463 95256114 666907165 679885272 780187529 781422122 865596934 417302888 969408249 680980166 905379162 366330721 716854717 557400245 824460710 922793666 967240507 690110872 826817961 652931566 733972729 712823381 791360961 632329933 824926806 622679771 718705443 986248551 989332107 403411209 581477001 523220273 707896648 291417495 527802103 10460522 447126882 309991458 872310833 324152748 464270244 131366908 962159212 932621628 995346102 160447497 189899478 572726108 600768576 162641446 432319187 37525389 676276765 842217016 895982193 818638362 909796998 681761992 859404780 318995719 519755207 977646718 982585485 507614850 547318780 258312956 961302040 541728649 679991371 871114773 900858819 481948760 876679132 85403464 479293332 83024604 559068710 87893428 966818307 108798250 625882491 942038812 989007452 870130111 911616440 534836224 778298354 455588837 537802023 6372313 402852463 822783484 952704774 265026620 901869157 191120927 838930848 154825935 439027325 613435771 620658368 235972957 485735526 728171253 814054233 546035108 751730061 616618512 701802072 573817957 731721315 974801470 983001164 944203836 968741035 316168577 583009156 212171246 848210189 531954440 998834176 86377914 574955983 148607936 339101987 714122418 930329427 152889405 242600920 301833881 850954865 63644974 451732893 10393757 419178155 278126553 526568417 560607754 974337255 886047092 898686774 674279775 676264319 189976709 736511580 464969109 975948420 600150246 867387501 32892406 93037243 359547553 955246255 682072158 983810694 711763584 830700657 546749330 813937823 630668144 747430654 175107459 489180153 592564130 827818715 217951659 392833326 654371468 920335963 789790132 998689228 880077452 961382916 94520662 545844048 514925424 850652397 984438731 991872190 862668447 991196578 747822331 804087898 900731806 907517001 965656441 995051173 433058648 583883325 114570914 587066723 376950824 915934249 189746439 958869194 914524904 965115792 623226149 775402800 559218681 973144815 47287714 937867084 152914480 529368401 987201229 997824413 393031671 638624159 446943365 672095181 452899843 496700859 673493679 854235087 716279712 749204074 454798966 807785305 15923780 430845876 328716690 612367132 814442618 941410255 690462666 777969484 553831348 623953179 469371992 588380403 780214353 895282959 10909195 287098627 538307307 654703631 274746020 937767484 228767507 814891570 6197352 902876645 172698174 441894113 283369386 828160374 439698100 605315258 520342617 892304769 34263043 294863458 15021910 250808623 366953341 968677795 530806455 610323215 963063854 990384792 236185947 563885566 795956097 911629968 216967296 679800568 629153443 959326917 829928917 841757691 411282538 966178429 634259212 748548181 965966898 969821925 318036364 814052158 59083437 380335034 619870587 998707551 780202863 973789585 371312634 492637628 508902542 834610967 44705761 964650525 939906514 941228792 674522399 827043628 212231312 667382909 260097634 707302672 511639626 920000411 427472415 848577720 868844582 934254528 551690389 604583871 651852389 832361832 835770089 974821580 872367394 999763393 616788818 636283626 549132537 583213619 715555298 891143501 481598805 558260025 331679023 756132437 124761687 393923022 634262526 842313470 766216315 778949737 574435889 880710204 396107894 503223817 69471822 630245091 70837483 351843552 23918887 640434615 486971181 690152188 106804029 829789138 249540096 825915784 58195873 283413170 312492387 932951110 933623016 985765349 210428696 311108635 741672954 959649145 675053509 706467901 83586193 749570604 562835338 789615408 484208352 861047247 677775839 727184666 228010943 426140085 881640229 962487702 402484801 629083183 132856042 209019413 427858503 534945327 953072289 962302625 915560725 976660212 426510993 998539412 360404471 805315497 799270073 879826681 171119396 914821267 404792551 718344282 944443350 973538378 95562817 381495927 523345604 739276484 194494155 485850916 221661390 773725583 816909008 980462073 550094518 737548930 448420913 566941306 535228044 770684325 618416361 804598601 266803576 539781133 282148477 988522387 637438908 988216037 636790973 858552675 222399168 449317504 35975872 506063538 6713715 974895385 973226990 976291583 781531680 939210177 223983925 782054868 248709576 921642399 950576297 982001519 543062968 993380807 958346582 965950034 48802016 556756122 403148044 923212660 211850916 933433857 323946670 527139845 338956593 368771642 24877113 253812735 710338214 966152721 888116148 963778300 135650201 372480563 446397241 954543499 27338946 722478671 860666654 974610997 554759651 751469055 852917231 884124223 78043768 646012032 4925 226937007 944112900 985530720 63656825 482816873 90415920 431298717 545247143 755180650 15129005 339983289 954300775 969120628 429287128 467697692 276250510 910724820 879418835 914405226 281233889 423060731 564486196 602044769 334815248 391463531 832908575 963852617 752337055 814616062 415965415 509915083 25637676 267875955 156822310 490565484 610598889 892348481 961555107 990285319 289902129 694759029 954292254 970292098 205304616 733666018 354936261 848234315 775529865 987192153 724851227 775904411 30554884 924057083 573010792 826503194 336433712 924595003 886874479 970058968 514417473 769702613 453574934 482993897 65555017 184075689 726138865 996066745 131276095 899737688 513390859 713827048 327636082 976428801 839231102 884796855 947114960 981665736 997270087 998517811 885901422 968289649 760795185 761122128 697151528 745621851 719107889 800190164 893472809 914916178 306662060 487575984 668506629 932537533 342976522 480427202 109373335 958538916 503253878 809231234 991884248 998106246 793746019 794564286 886736812 934845542 637161417 819282885 925572712 947605060 714776197 983962176 491489468 551176147 476244634 546049622 108030220 688929149 617213596 770645816 117005432 860347964 197416903 980061807 531753999 644166726 808347671 846749098 270549269 602171018 973111005 985688473 872964407 922971138 528371465 721351791 562256179 917675055 735283441 799460340 328452070 471878164 706672728 875382884 94449027 304938130 442093725 470617501 205073816 690683576 827691874 983100939 939554276 983420732 558205181 964374259 781227555 836317555 345529715 420504648 873384107 889903799 263137573 598768993 719717233 821760466 696022481 730084956 854058126 892657082 504953963 992572235 373589124 459642441 420141917 670145864 705495427 944658522 755381786 865144798 266837040 420361448 416116598 668522012 823118178 912485446 531007644 728820383 688531026 893431640 564370454 655369234 5889864 895651897 390203070 918925388 972871060 992093838 376787754 411807031 299722451 709320453 398243526 575137154 716959538 930995920 181905887 879497725 182262301 690386729 810451040 881854962 74803494 828027136 118059518 706719341 123447136 446768809 98233432 354931558 724263669 917989767 42051027 480570751 527843641 654069969 403427908 433090716 863812404 991119304 276538408 667365970 754448182 842465353 170954158 278325376 287395887 434464205 740990203 859397799 394122469 897617153 721220754 780948581 144737038 730809918 945242691 978293572 780669188 960886416 856183596 984141158 463151260 760948945 535336698 790932231 266876323 789075821 550247605 729839944 385216991 886786763 461319116 619294598 273476836 387211878 328816201 817475471 910985295 923099160 262214502 515781141 968904140 988733169 311155252 439608446 648626863 974792845 206053033 442421914 491251937 716839535 706980872 956155049 80508964 831065273 920488623 991566718 535361790 936460325 274126162 581541137 693329799 859699732 571171914 753726407 550751246 848363718 224594631 670720049 612163178 680298780 872002072 967959138 930335988 933810543 304431510 746264291 913608298 939783688 313385934 718762397 129002590 630298796 978582870 997627864 197978790 640947643 490308800 680630325 147999344 165539669 274263725 816460414 453302899 524188423 822429881 912961643 948895319 970938626 927557481 961340056 273595509 318613780 336540811 540936119 632428522 982013419 219414914 711081300 921742295 946547036 991457617 995731258 144501895 652680995 223211127 311249291 345918730 349194636 61202666 65127445 701181490 994009604 742944082 946611288 422006511 547048597 289875149 668787406 188719717 419110384 67453871 166548929 743839649 916017355 973480483 973553162 497905217 904154919 68897354 911032027 716167056 936818619 465278981 897120907 347570792 927886833 476821975 899617492 831998208 976905184 756010302 784758993 90858446 666853664 733310302 983408919 244842764 355406968 712227240 881659685 169547007 302716751 828128152 957600595 514233357 659027411 497217134 680765340 41982784 747630082 283113720 328792286 81796896 398293167 758659830 979977949 652792079 832977350 27484584 40890243 839412011 931709508 437745912 570483842 211591309 879550736 115654479 583411288 68722888 999558529 294029145 523626230 870911376 920734591 758355581 848749164 297056827 444792960 85150622 169617750 158396111 387213156 791589766 975183312 611282904 838667337 616307618 704686103 122851266 293989289 475908164 479923044 463905879 909332367 629758610 651131704 752735516 816250157 307504929 683587593 269786643 909665423 796513625 990710548 614667684 770794125 192071634 461983655 723007727 953889820 259457630 553950280 401886726 533776057 665543204 694446074 495343051 786045940 246201125 435171660 40283160 435792965 531289565 716180050 408544180 746768580 873602807 946087222 428815270 993789975 292123757 494375440 715949722 869077244 142855692 147586018 464584493 558524545 839050686 906544399 330998529 519348994 764938130 989795392 258267411 498262516 992099640 996074997 866237737 885598907 984613383 998830503 887596708 956689034 161633362 854532585 555685806 763493843 234129941 890576334 999775653 999868713 905661606 928885670 900524225 998074718 977916703 996881046 482383161 491169965 810880022 833118643 278221417 297435456 8985256 312501773 590645401 753631843 283559968 479318285 943107903 976343630 34959249 406219856 275031000 700286821 582138345 667921737 41692037 645325624 679050870 971206684 195074444 362585777 805629650 815071157 566391004 798158415 939123908 983845762 945334896 969101935 868845571 970982338 52667176 257732903 753012496 760319929 919345478 944146139 477173350 995767374 352113461 473683930 726938486 920111386 291928861 827302193 641560773 757235317 66703781 467748424 268404980 772766484 891001894 900151915 65808119 980668067 935325861 941282052 363502154 981776378 253428655 688810401 571489754 734584338 951974968 978993454 820369150 939299128 478488413 630695989 679676407 909500797 168701433 829310430 416581465 598712148 194104650 324791746 259250847 672405153 126546580 577529960 570921228 913103491 295586311 698741693 643127453 967741139 716193484 900390832 532405809 695336888 160553100 359507747 532580168 795546723 745025153 898857003 670236811 840094186 838319517 841430746 141872307 678113134 353823407 979624193 679797302 757377242 140008302 952153043 46886663 258768889 382329734 941318833 989346010 998385995 13932203 447601625 950859899 998549186 273355729 977600942 841639298 881195361 478743104 516970645 121433973 993433527 81808038 254164879 401165568 590959665 575002380 771734944 705632915 958207932 698858860 894131770 338897324 608672076 530668429 599150885 568264154 583909692 79122593 398663109 179018934 818338692 494916444 814451070 536090394 897563143 897997331 951356059 467924810 862736665 713699310 922728766 871273163 943539245 852205303 877455358 71032341 302092962 231382328 986115802 134473177 394838717 473605064 584796208 773929550 909226762 110128175 997963150 809446892 920949549 152405860 368465707 258795711 467099726 25120377 800041202 643042402 928597019 936711966 995296243 945086810 983393432 777663875 880578528 798030999 921071281 832987795 934445517 282364022 549432074 480721983 527041013 879428346 976150811 352667201 846105166 293343920 357275973 720921084 854877622 144298297 809218996 553763668 657278508 980493852 986061378 224213087 615010438 123790990 299243996 21962917 513590603 43181385 814166894 432944228 922021205 676619646 824218987 678104220 742073228 574083188 787189093 965605607 966292982 145056174 867518659 367657931 677910903 644915417 710895629 662803830 676618209 817458906 870027265 90194832 609212683 62009492 811969156 188549592 574366366 312614853 356791754 174638192 409037273 765676677 959939702 889921649 996072695 185322984 784877120 737227555 931254396 531882024 602179362 660616367 682588068 394013864 748433514 292608874 516378099 163341540 803763654 90719743 500494854 788673333 826324278 293988454 458678889 85642838 433310890 193889414 783224066 273473792 727177850 201146327 880376368 261618421 888969087 979040375 988517582 204453893 572280174 381538790 789386618 811877330 874689987 40010007 807783637 786826137 923550549 856533975 999291571 796067526 815744404 758704408 770347160 92616608 946438841 566944242 696713053 820827662 941190885 555951508 818417751 569232639 639102597 572208849 893622125 269068275 886672890 936229546 948691328 735102314 789659918 438877075 768330994 87704234 763182020 288567949 329471912 484046483 830068195 503312437 792302009 749420727 768129893 118586520 910841764 285810585 357536434 334993804 956862692 53767464 142598037 330768277 408058520 968717777 979934782 842225618 873301603 946385274 970613612 533626986 616196521 933454528 985737105 776027844 999185845 112280092 670298333 973350097 980048857 694530669 747029435 850077964 918724875 602275134 712806208 331933923 468338015 603701108 626339435 465353220 664110005 430041770 605049784 485986100 818967351 235259882 403590164 697205099 997253631 4142256 724405184 794675695 994501223 752459256 764224712 911645923 961802608 680173608 943505292 47176463 840723357 407080945 716120686 941015363 941957254 580049293 739847102 776556617 857294044 741960152 949072261 375985803 873034754 966259806 995037889 139913245 365298799 856902228 970257229 364552669 632689903 153832553 870731483 550444984 616929995 362841304 427648556 657648050 848401753 961588367 979801731 10075605 66272990 839428479 948016608 21352275 136673522 108701832 480750026 743494847 944491175 241937816 619177216 89851821 578095991 865773989 936594794 369584403 621389043 94154427 209921333 983817868 990091058 114865864 998832617 681641190 850984331 26791944 587777550 164621686 521642501 829402467 832290295 615999832 924641993 902317265 994868226 997893537 998605398 674252202 913047109 906910030 943161325 399850261 596371112 621280463 800079489 818622124 937798418 296614578 865231148 537382674 962654597 855131418 855854544 730047671 784736745 798671128 948969397 877369067 878117962 916174865 983545071 462964659 479582807 886429905 928555660 829295310 984229385 978820811 991964328 605941308 753804538 202934042 660738317 823479997 853728639 283044224 966128550 290198723 888402752 484127225 985405950 680521941 718117717 408377556 743967419 787664217 880165536 25799614 438814826 370053341 396795854 394353396 598184078 372270950 645071525 974792634 983904316 891944878 953415464 418954121 634575987 694790383 958600617 720950667 782111391 117759095 887879045 495096804 966087823 715961992 788868324 585358685 719801090 766351995 834557177 814182108 884631020 598147447 618571702 469702271 524438489 441373044 442687852 816274462 980313320 137087242 939880343 806861987 942647419 517363964 971791934 23165967 263195304 584370366 650070715 180153711 376874334 528891209 581401210 143027916 317800003 766193435 792293142 148198169 696291652 57004578 81231397 615957561 750403955 633590853 898426061 921511852 998801115 172781462 564299053 898270043 929125134 929813356 943970005 222752749 710455530 456410925 497386661 423509045 725992987 842883144 927515821 191569827 308303026 571372165 882081761 958612696 995586670 94211709 819398664 939767801 976566125 241837068 986136302 566034480 909269631 734641927 846454299 258239453 881899728 533703892 707449593 292547478 924711194 162577681 294367492 607085621 684948209 734391867 967201714 776221749 984872476 584750110 937130807 44601404 764280153 477617610 664801756 177908777 468997846 157880937 480465494 519041557 895753988 582005560 981546460 316290628 741510655 379855460 718140647 785292589 913377403 826518589 984013799 396635990 513636927 169267409 792046623 502479831 755674966 236571304 439670749 345321813 837036065 152295092 406483581 796511037 966708688 396888662 606091590 332127843 398476379 639249878 741879207 979196653 980147355 166128850 303274366 451473229 790208753 925975237 926097653 225263264 557206538 530002855 537390384 788437211 973160494 54947320 842309313 47830614 428617165 754382581 909768473 667578779 852216574 779421204 942224149 461896706 503338437 200626414 707540590 241249088 710708144 110648220 164071536 231254147 298866131 494073824 852852930 487955838 791530334 902070627 915994218 910141153 997861204 945939527 959228384 434602670 587020175 390714522 512424307 787773606 836419291 896803196 911541272 264635432 976404466 169328692 674434828 239471215 914620224 434182820 628898302 181505756 224810392 522320190 669440207 164823902 291107660 138589854 956250049 476318521 841919781 970181042 979692125 845538804 921921541 95544500 610747442 237289587 692871159 734972828 793595679 380972208 524373161 793839558 996789267 944543436 980150682 268708097 712871184 341780667 358362917 477710328 688729437 903384480 980018824 263111261 597605670 203778152 702002711 839065581 944282496 44667013 290316583 417769800 681493109 393100953 568078652 68513125 180244673 395158722 547838284 772277931 836178021 941918542 977614937 913759773 919986397 235503772 756261592 652568931 795628625 523959821 694745438 974263697 995546782 343930486 778646406 161067833 187078493 428496672 925906802 96307795 188362582 838746599 842310681 217506722 778383186 131335437 582027077 492168852 628539901 823521545 960768115 150390231 485531871 400621472 467680397 765897431 768620779 237878753 797504929 230317392 778022400 770137714 810041416 847742478 920760410 141876735 308579582 646277799 711441438 324685046 883982673 241777583 981149988 86143955 352325353 635455233 979397509 626265713 991336633 265752754 664924127 76465854 414588729 446813205 477892038 443199135 578557217 498746589 629505411 714001517 926698800 908587613 935018279 303841575 957834884 418286696 725674276 243669606 838260459 839440618 943187795 277227864 996970471 455764282 643366763 614345440 989464294 121709466 718315764 328958503 920521164 556943676 947866436 718986558 786139190 163272159 426573921 947837818 989532825 789063010 978448495 83120305 603849073 274423730 849710629 290378908 618491889 611038543 965439780 233837414 791970782 106290473 718099888 178902910 271483167 844752490 991392790 760915197 869575017 188189044 714750907 333109217 752886123 591016591 957712871 336616768 563075425 585625574 918354822 185622911 400766542 480615949 734980361 790388562 999140052 436297833 607507323 602058356 801730491 283705102 413866558 488263572 703070884 335347443 471122532 301213426 882568516 459639256 952564364 145586183 448828295 342274672 619374517 121155047 692087249 979785397 990141106 146238128 268606342 505299343 782762063 146802402 858423242 663675354 790493937 253140539 287090244 905849946 991540360 310046319 639761528 475188532 557327599 249506652 743956553 572066235 748820284 649192489 765364452 694908250 716468112 219893821 898146850 179332588 567338101 327040860 951336149 345352424 904910392 749447794 864249119 339973835 386633799 278650765 424664092 137818965 888160599 271129317 785251544 572646579 672219999 776629379 864387487 29522750 99770234 497273828 801447210 630989594 671362842 261000538 452501841 221290839 223809879 71623889 694237033 904589846 949965308 499352980 591145037 279738093 358300711 544030523 902078743 160395108 384706943 605694434 871120210 729371775 811656670 332736904 635905282 222011884 502636092 997388048 999314533 695854646 857451640 755379117 904856520 500521525 825760918 475373225 893578967 369928805 722332552 394617400 841984090 853582478 979175855 5727214 84820913 640945202 699228036 671588201 869123078 775097757 867881343 123427298 690684864 150942033 765923588 952080780 961075740 538836042 748285581 638773977 746038240 133814263 656623876 720933396 994691030 613952422 926878663 191907716 269685037 580840881 902195323 934547644 948173374 977386161 984976877 167343518 972733164 111745448 459737232 596674256 779510061 320924463 504091688 69516654 711129454 649621390 722885082 380628386 568854858 34923927 237357889 703314818 715015021 813934811 969505524 394021882 946099441 1675317 308636940 719514358 964516649 96540320 237333973 602696109 621965123 782573353 954923109 352227586 719705803 616554896 632472953 428694365 994741940 16737135 56974644 65802849 897543333 86323903 95347921 824977835 869226219 718438089 761446693 882525849 959080446 96194881 348205042 643330290 845309274 259043389 804105996 590513396 794776579 503698172 702736321 160226760 388358981 348544914 594082983 333457484 634840290 970913032 979586294 481205650 959954546 47421088 388775350 192102668 512965578 969979974 980623775 199305308 841671795 41094910 913159509 285216515 662784551 439447276 639689626 792196954 800644539 184505387 560752638 976639266 985038342 133066696 691039699 648459538 786053492 704791874 792442637 698389754 900440639 840583205 850687022 376633488 651798315 393883016 484370562 679973510 771374767 466757687 983149269 15833572 593798698 382136319 625009489 758326895 970503454 332054271 379500837 227292428 615045551 304217137 660388984 472754754 559934932 727457722 926241861 762685183 854312950 379898199 471080329 436844417 897040238 505185808 625089051 604430153 884645180 309286831 459646648 681361301 736910011 137682371 399729061 671728837 939555074 332268444 333662097 146157610 772190116 445263858 503778432 162049531 262544784 120399688 529007153 105130992 328945543 357129847 656163486 302219781 476476417 790220195 813231187 110206426 466995944 269844658 928881651 868072793 927875306 627056013 735776592 544585338 662003486 798201676 968522942 910623560 991413726 66381007 548338307 241038780 501386216 243815017 404612021 345394542 481425358 655658915 867413501 939538635 981097468 266245627 641036598 216228905 366263246 289229974 859254223 241284379 611997818 319331844 731353517 246474285 395386778 63912832 976951078 8344254 329735403 692477413 700372554 188258429 990478134 381541046 388948133 995271538 995573988 318334393 389925839 74180920 92196772 50902867 500951662 990947429 997026627 589300663 837836547 393620942 461963883 619503901 947656336 945718988 989036910 955254384 997827814 89429635 242187490 346641434 563608504 793502653 994112855 667116171 742894101 9721946 36330568 395373258 983125302 793904709 821709421 966985704 998926853 415520380 958514220 133814288 509875151 847076235 880218761 62512118 647260384 170737543 874192029 504844094 723571269 822833665 943521296 524527978 698755109 933659713 937466364 994400075 999230994 198647728 950265415 239214833 930261843 945918513 947295839 497562773 797526374 258738023 283712960 473639624 576971232 328304513 422825881 278932504 543355127 591801271 928445135 951650897 986999130 810447370 919740846 241177437 854774890 390061645 741563214 151846701 601908985 231468426 327041661 992585403 997065520 677846091 735028870 219715483 948366386 730469703 854098027 439095190 552085884 615735617 646450165 110467276 658640268 532838569 651391763 864940831 896117603 288478862 812387348 990044649 996103159 370294466 629924310 865840522 899425481 476008756 803190507 294269221 780060196 675056416 917148799 341698057 672990696 584733464 739442075 906099951 917375504 70256661 742651122 21476104 488865863 371199349 957845513 732787469 975792369 174333649 900043496 674830003 736689229 974345843 991377691 874572878 996472367 336591835 740038187 399489501 521666280 690171854 881739550 277624138 391350994 725269882 900222179 142109220 472412706 944931239 989291894 495196541 748730994 997992619 999557093 649670903 850863762 50650209 412963964 576633219 747348847 558816538 771296363 577489990 966006996 252235912 546914426 362197834 678908469 987872892 996054483 568794931 863672845 395884872 910720780 515547971 905422742 700051892 934425742 352110395 492110506 69026077 322189865 396453501 790995707 345890549 895293395 717979494 771769448 491286468 874645679 918726839 930487748 894036635 978835421 370341592 788109914 297131812 569982908 55586911 834396200 264833456 769302734 984438586 995397160 665068699 886614794 251749019 618087439 577040726 822461520 269151664 274832147 882919019 907706600 769851511 892725835 818226608 910884681 348145168 680873508 721547318 883683742 275245159 795137781 966895982 988757755 902146376 965428342 740130780 931532656 777950825 854958380 626275262 925791140 797855143 955941487 186873279 576887688 304225998 545252017 729847265 768467511 961875211 985634156 815317025 872572953 848421612 902720926 286162908 487107789 589559351 906931746 256851634 307512319 337300947 777248679 890728565 906310939 58283755 409171383 601140462 828705944 75716626 744858688 251484251 560288757 418046325 984723504 505140490 553997443 926116250 975250326 958694712 997976493 499684447 846728974 32679612 52249553 641157739 810206322 371351312 690098133 435293038 725109711 795987532 864307730 301463511 342199104 624842918 815255807 176186323 854189451 897926387 948521595 242331242 795177713 46989797 857842464 544083984 647475494 404432363 593692661 411001598 642848260 350912101 554845503 198131985 452657287 60026832 943020096 833990768 848829190 133354151 937675804 394574702 578858317 208537822 578351526 355775600 488572902 598307836 691003164 289084354 714694328 130864425 328457017 614879040 766116997 256810373 468981184 543184829 851795548 153904322 530737205 673721545 750653315 278021968 723969180 492681352 619423020 238760868 506359459 1986688 945683007 718513104 896865766 200324940 342906857 873218876 943219100 907845351 940335375 591976770 918249343 856594331 885412564 267368237 348676950 149423278 164406877 920085867 920821698 286690902 893516517 878106985 900120246 947016620 993683846 666218018 940399387 437593924 918280572 505971625 863529855 966086348 987073813 347753880 855118544 37793418 452692451 508033609 657026673 254291210 693679547 258135333 732305843 868306899 950701117 52466920 888296988 564036129 752062092 703475909 820085696 86755985 306806498 915756953 936203981 791722692 797997596 163336729 368036926 578777204 622995180 784717882 900451938 405465814 621355222 671286150 995814849 986629658 999730884 593968158 767924221 619443087 625791511 713628688 779581477 219068462 966162429 332016063 418966584 646602416 951121734 878259784 927124558 488923501 871688320 378093815 446575785 582234145 920667776 908442018 990771971 411305655 582004044 537953682 657973700 186265620 387868625 523109207 620653166 522428620 817611101 724251178 814812657 927295856 993108464 229406244 798548304 448221292 660367371 123757089 527416220 646253134 754784729 193884368 283149990 319798040 521339442 399590889 617240615 885157298 924592410 938887043 945313710 376503671 958381844 785536106 852708838 390545478 789739165 310355818 669313366 149580799 762464971 680275230 897526945 501891109 693265692 167490008 233001764 134149382 772995890 763589031 986885995 809572817 933533312 360209893 607465964 262925187 629625577 587955752 929166530 430383616 574054314 904115652 994616027 124525597 515465224 937066330 939371853 75314929 194215259 113289328 907971977 378918292 532012935 674693856 722338978 937044502 977834096 179124123 945010388 180822924 911048680 440903019 785860182 48588963 150466926 115649259 660219685 92242510 220415013 904960737 933048725 881919501 929150928 260212219 611677959 634697654 833098153 620343840 824027226 507715542 904862116 954319990 968530746 180157521 597216993 200924456 435934476 178504564 363613309 590041493 861888621 869555816 954474018 574959738 690266592 707991235 845225796 236101604 782499666 851586979 885900047 474269430 684332355 734309960 758906265 268599090 363415978 562928361 911504065 379316373 890772322 679264746 745897050 25724254 814699931 893125731 924074239 455342010 671249214 195001500 515004304 919967671 963048089 242448500 387124106 127792285 559058256 585810596 662561054 287105108 654438529 781935915 858761868 994814150 999845442 964442838 985437477 599253339 710026764 890812049 917137338 340841772 728157817 252220898 742970812 272134019 278716129 477883128 503358259 916764355 957696287 70198174 646794633 809953848 978910465 574930215 856858925 624622595 804195784 760012754 978230504 276901272 445427704 137056377 971918768 346610038 775870481 561288577 822697567 630059303 758925954 608073464 679911564 84077860 775322272 630147592 667401334 578199629 691409787 895543221 957353975 269561969 879366881 861071787 887478892 630625384 927015879 653349624 896125095 522738775 951508588 637880110 928163453 569521778 819675336 965580649 999632462 149156565 325707509 421733564 619581913 488388654 953209629 518845009 851234902 195764530 442963175 24991037 229288337 294714900 683014377 192788400 543279518 27026952 354426122 61822595 299566659 379154308 421683540 672416413 719868027 304070927 317301316 459862980 814850758 396112711 909777464 676005355 959820790 102678352 231531146 713478256 809396483 206773566 504499316 557994048 974561911 533997026 588063301 491617910 762408732 638900042 883875019 514302267 595904674 699627585 889926245 3492735 457048971 301638387 914995164 169183966 626621844 333647928 344698038 878383988 911919588 321819244 910342552 925368898 953596240 701201715 900755215 344357185 688253068 828295380 875868582 487553325 672710394 476055306 662079667 977107139 991040944 431305742 637196618 974114821 978825912 464111829 629769374 5712762 601796155 156345036 435942496 722539417 945083412 223235092 358094703 192952635 772309722 486521960 489090048 11236851 587658357 416732400 690709837 226493940 972441556 400346775 880016398 532247259 650537786 800979878 867950692 607970034 851346251 100051283 822491489 988143408 999004328 519435068 881990518 740975134 810885119 629333178 987637385 25368161 82082951 242673663 306750213 385232207 516435250 401534977 648909196 696256591 828398845 328306150 484671345 973261095 986989075 306525490 337087696 207290682 447087608 185014585 965846247 411358435 595162772 717377480 816091804 69870233 229325003 509943368 856743991 625626854 920940723 365414168 632496441 633062350 768497540 340975260 513820626 341865337 782008403 898608887 976640308 92401618 375480831 975491946 987025676 619224740 788579865 720576363 771358001 915741127 932265814 360479964 830278508 440475950 907341503 826652644 978163827 254031938 360181538 984767626 997304156 363268596 910732373 967056974 970980985 865086124 934456840 612200504 679682477 899202497 970652652 180294148 972707664 527197903 912584447 229926834 367398502 771182325 961896768 869003918 893986537 461637017 898361465 158744176 485825391 334158969 812701250 807074047 815532616 415674169 699967537 814609397 899312919 550866695 567363913 453719943 787729601 992123904 993508927 275424804 976937143 759122342 906638735 44928199 940579486 595748661 954813879 722502093 784621118 598659875 959855183 914550243 938226269 689910596 927799661 639429347 752165548 872200926 983646549 882048044 959366223 43842941 636030489 677482379 968247882 811636746 874005080 381664135 389993523 237373162 564460262 101997680 917864641 365302770 577359945 534680157 662757939 238363057 302165856 289062057 756354974 209251562 625050207 622248918 693470791 788623622 913896909 379912107 871959751 467173674 870837014 644441136 857983848 182457440 772988055 986301923 997252929 316223236 387562518 250507422 462470776 950692764 951636057 970521020 981917175 956282089 965384222 711535971 892117616 420075853 453242255 834329676 886946170 381225914 601268079 728852013 945133632 584166956 646322747 382907435 682207107 999554837 999778548 968599820 978212371 518405831 531139766 678981600 959352507 783656126 846477354 308275186 619690213 68924156 229118434 284552935 525520553 247443446 448779386 123823781 806764216 85173297 304133791 21013599 89301673 713423222 751609339 987584729 990818491 157971865 423227449 430761686 884370730 835341485 962182057 6538790 411612362 30013934 918079394 281515545 382822244 533018424 993688404 627954312 874813493 673998927 875276737 485806683 588719692 962730230 970952537 397988814 472349718 432772095 959041736 882409506 885226109 756787666 929673217 232526963 678243121 862856549 967516180 593608826 937454090 42980998 571116551 145415006 786177561 624960172 775221392 540965514 903552870 750730079 993372709 597143964 717799126 719616792 852297221 460043492 888636043 730246213 976942328 713823872 902447229 8037897 574712052 138626111 777278357 55078424 149829013 133148586 301366534 502732149 619421671 529188526 664600141 932865533 982517984 143582575 810888546 386588002 788936507 203419996 275683375 816757791 819531487 37470350 798616956 510498040 538231075 528701685 836441637 181995386 236999389 68019315 188114167 68238333 485036126 863830320 964261433 95298583 112093194 720281615 848959534 302187057 860564673 713922765 858197748 888201499 900164417 698834840 917348128 650852112 829386719 862975480 916230898 422501998 713765837 622991888 675153613 81621188 264132069 916636378 946771185 549275867 961289048 888384688 909950215 42676602 671200937 833358358 963924167 324485744 569060677 691667927 815821433 743212015 791048377 151142535 521751858 824328815 965219151 590802715 685038936 959875042 996652746 718051714 994878079 158506309 971317811 845462622 924503436 373572522 950957655 973164325 983883028 231831036 499795050 246385979 820321199 152121514 294007511 984475693 992827274 839157077 858856795 514743610 613463112 378578978 711618413 127280624 938130569 754555198 889665292 145849361 799246465 656694327 781941389 962151945 992487971 740760795 911284141 737598943 979115403 423673703 740313339 33298595 718627291 868129761 915387877 627060348 703483203 824109362 849429213 937746300 954560380 618148664 701856775 233591847 393914355 876408290 898160495 121476332 162061910 238872675 963950553 475344751 584323200 576119718 942375910 234850166 951733653 50252441 623440426 109301864 479871795 237402290 269474726 939272413 998234007 267523788 349701884 258463441 480977762 946555986 966646022 48206282 469158595 398856775 697489717 996671725 999708655 656103941 678736306 61461258 454918336 365990943 790067653 614377856 921712681 329132244 565203620 788513893 923301417 230453985 358871594 644894663 745340638 326202029 680158482 780016555 813306869 675551794 685266188 850326957 919884550 879779601 933346030 653641539 857476458 537350408 611008136 820698516 966247905 598535413 724389253 159600877 626553457 289658705 377375351 481218906 631574445 862321675 961666497 640982559 947620269 85029893 117776037 229978951 568441698 426985416 653780181 423162815 543271880 924208113 953016756 765404784 847034317 13977905 539585484 145904200 810631909 344159054 980472776 737771644 809100304 280770610 610140162 906002968 970009082 442581693 495961491 805092787 989635110 652707410 832520128 808760736 934986083 116135581 930921168 186553921 596778663 508042481 856385703 786580641 894167313 693878950 867168944 606266431 690815692 341496452 790287595 765059113 942378822 610312399 631842629 591310483 900637839 331031745 821347909 882714689 957737113 15903942 688680940 484025575 525843867 685765905 778122081 503369317 815511414 705730702 828503728 43166233 937445007 581558883 740646015 406733997 668337393 776047037 975044693 172526906 753472351 621282189 752102292 357678301 646823369 62391044 850562340 413401775 835807647 803938835 980873762 775478078 939856051 162914049 611347086 551626450 919805573 194141066 649098261 13925386 76270229 175095235 564942388 130420416 849451849 495705146 657212291 271543941 891340469 350241420 498990429 544509020 946969013 851775956 902388717 562099811 853822937 842431673 942608024 313280797 625120366 835002586 911757965 235642299 573232860 25185002 291113892 26804621 528355695 739015578 781956658 836473926 982942070 734150533 983640878 349833422 719384353 137151188 308693588 970731990 975260217 768607871 932608779 331483784 539468576 479208484 815028767 205276931 709338607 689725381 720789683 451771556 812311574 941992594 991580596 158066052 333513199 735466738 929424910 647926008 822231070 330102949 641925048 323984077 789180649 859421703 873379883 643330317 864340380 83177102 864029703 782626522 834434856 612099251 906930169 169695189 197172703 535364583 923960236 769067570 927170757 816809781 915640227 603929853 970597073 982832912 993453967 785282642 972801152 498420865 805437669 2803379 975747380 143596702 781562984 125682534 932060583 355539264 477580314 937371661 959079158 751959910 954125373 602521314 763559642 685931467 945959170 28851537 767843948 943778436 990667138 67342679 102592992 802716092 992916039 745777647 956151909 898264248 960272650 604514968 997145387 638524060 866097432 469280806 548480189 984154617 985923601 130693266 278315836 225434942 676614779 197197119 858988020 977185955 992470484 997542884 999825010 95923664 814714454 741078771 784734931 331535587 952784945 134791726 918123347 202664358 456393404 307793023 664884178 607945888 670800805 16167705 316074082 162272083 968513337 84886874 829914756 291547262 597096677 624366988 636374786 623619396 791078286 798036607 864336830 804930064 920343749 732487167 899077000 319979009 562060525 831242063 974762599 63733155 532903249 854645126 929690222 498644373 789808108 75418084 215323196 441670831 999808479 3586589 772567104 206522568 216768366 775290957 775774375 404303099 907053134 201368585 219151301 892191989 989920192 706064674 831154448 671295579 755906465 243572671 413727080 543350282 681262415 251624298 533304320 539032781 790945738 769016724 832300205 66024789 598640530 974067826 982771835 697241558 760641684 932658341 989037316 782676681 876137669 126513638 317886686 738064101 902463787 543332362 629093095 964113430 999305971 823233758 983138797 582192465 973123488 118614608 408483611 751991020 812645677 746277785 884589740 387709152 902177291 718085501 959747233 667359250 872681577 917961102 944957613 82580598 831628401 656464077 871832380 369305496 763839984 907307060 969602544 471392387 488049208 977682858 987759754 58774591 553169741 907062172 961434284 733644940 856348594 684450044 800381054 411335596 601773557 274090441 613503625 792392365 970264430 860900219 987434289 904151638 975861837 348910944 734418714 580064836 915736338 458258752 945051541 581822575 680382532 958364457 963037462 837925662 933638200 772708182 996551313 535438752 539715073 435619014 529923982 326185170 936918300 667885867 793264871 57269314 748083938 876856731 881940669 524074001 881105421 463849981 641623973 509609186 904816043 397411191 683552141 738709590 792526258 330796233 381071489 489674630 856268058 457720650 970090749 897614093 934209762 472067956 865608718 838876458 863766038 987812701 998569962 25935803 660697092 391847902 654521433 408528615 927941181 443686072 776650703 686748494 882269679 65633194 988540745 634474288 732111426 129416096 879757979 239978175 931592153 97616531 919714036 918699285 996229568 339502564 873833370 656375524 673284025 973016351 986963942 615851967 628659480 15140327 321579162 176394938 704493883 45603013 849279987 264975680 917260875 491846230 547940721 351581899 866604583 166574499 187816221 709048079 934284828 392711201 910500698 101184906 521445757 98295149 889702704 763425997 879928338 129378705 695361313 726698572 960406940 395071735 626467576 611570343 921254054 954119454 978218835 853215323 951983264 417332613 782044921 687947288 804008810 563992156 861287058 56623263 879167282 357440901 476635524 713303022 833812040 601819058 965792066 519089051 701534453 582085786 814445802 25011779 606390271 274467246 680086341 861172358 866418621 87586617 320353751 392323412 973061831 641676960 979795021 864086147 935173058 663518348 852328376 701091877 864270299 763840193 913076906 785340793 814701955 951116676 976373989 519841074 670687635 37406084 329383971 579636203 648265825 819084579 858791729 59667596 261750585 60831892 747708084 829055031 912194637 614891940 667013069 897601720 989107268 165137507 931174929 14910003 360530573 391063352 748445394 46004363 774375779 443190347 580452829 489842630 950599927 5977753 431503005 218870592 788910222 213804575 500787701 442402403 650716252 268539297 780917636 449955741 541607658 641039185 977880328 389034733 732760008 831066861 996856996 90953115 165648871 315747499 990645654 321676034 478036792 737250277 844970814 592174093 965741461 93557932 636500478 753168302 856313132 767053120 986087305 202920591 954332339 570362284 677117388 786928189 865696341 928225446 974808108 962947869 970277812 251460589 645183943 948725335 966897339 732645383 794504756 385230357 957404061 629126815 965641109 976594034 990296148 19014366 859520467 92051916 890984383 827573346 963420251 263379095 440337666 271623340 966892935 770890974 922878331 189737882 783124298 666754779 718430743 900981174 954488589 163562592 404912779 766923461 836137660 336398788 842586858 131931624 513680551 762408011 887879007 366732070 899115295 606896233 912415476 690136284 787523431 73247435 673936990 512694037 786139681 47538500 633432505 705341147 947420407 560084515 609316400 93203029 971126981 26945744 248488077 590041357 783867245 651803039 974736047 481211313 764590444 190367454 584571119 832804810 845645362 385753791 579204232 21885761 468740277 139140184 597201244 439357189 934587691 910980767 968663745 92944544 708033805 969036508 984312062 231412346 944601872 784402262 972492819 40651330 724701265 182067723 396328812 884079146 887997132 522975631 996872996 348800353 384913149 902607630 929432246 270787166 354950681 320761709 512507274 217524945 632352582 820372617 914991872 319339659 531612037 896893158 987213793 867128075 960102672 662431867 785641751 252014747 998972642 179023097 806002551 917821961 930932575 805150907 902365542 61506112 508156734 171584994 382965046 534545609 913038594 513990585 625405859 892899226 967264383 199716798 661400204 826648762 891585752 694594503 856762301 604501592 640753677 776230801 800018587 688096362 909104396 466158536 700713229 919135294 924129681 9752910 258192017 302641128 506374033 480699747 840539660 473565750 646792990 967935367 971533242 546164384 985445408 192698608 767266363 414246784 931716343 301959037 529967888 583044316 885562598 875357558 978789950 391680641 883549047 909055370 975336454 284894598 647066095 596111094 988902007 599279081 767104184 359404116 810707803 67285972 454119975 468365225 942513747 89828570 230079916 769294278 951365563 230344491 940036000 988374180 997034891 425605937 705199389 261685175 433878835 67874345 122783982 943613280 975114996 335851848 606550800 56322800 695778313 794853140 834469201 821098512 826514897 658706310 791724295 184260244 859078499 602597223 685590365 32811744 331716202 408083489 643616604 912973368 930383536 470348903 789925393 71377033 315343807 459910073 462575153 56482237 538475778 49578443 629498287 834300424 880415218 990361391 998194323 828775056 839384268 121481561 836473478 252730390 587910600 212710854 785393977 996180533 997244938 865818855 986651766 348429138 725109363 761082595 792499623 328578999 608978364 823603395 904154948 498405721 694422150 734855411 977695338 960430348 973612931 754705761 870487963 782699831 854276224 437642829 993559773 458350363 829138329 740596672 897596741 221569844 368176182 492675361 867098353 156627143 934518241 485339543 963842074 436163310 965434187 506100655 841222967 615457991 976246858 724301055 824426294 887152258 923899590 404736172 414680617 803339176 921159112 179110443 402618173 621044866 790038567 35796206 758115056 494877494 540158582 639805277 866382150 692168497 963820657 179513289 978995757 885679602 901437863 423478377 875527801 422814754 789306473 378675669 494508776 374178130 564010147 956160916 984913586 627449829 865224436 844637006 863054887 48037168 72272555 772117403 806273003 321721972 500148625 474092935 729711773 588151687 940845217 389205423 834234759 248033964 962078364 364741153 540999369 238959600 872423664 888412825 980479729 757403443 991766854 953734465 961269799 710889290 827283822 954249744 970758962 826598402 945115613 844999542 944728295 399145587 626750835 427588817 841232093 289941193 420532431 296055768 975389092 868904161 967391427 508825435 939532279 539014275 808799385 853024984 897352520 435736771 460678175 354456079 945773557 938089249 976556620 317342225 576154399 368583938 978438854 144161228 642751946 880391148 984682940 986909250 992575051 207490216 892944173 455186468 985204050 276539131 914471257 733599987 924913293 153333063 363021701 353357707 658376116 485700208 502537633 293598895 887663051 936896034 981427475 808649376 920950518 672768860 891177375 773199711 942696580 795862948 964988757 616603318 652721500 376429196 990978613 491858349 868392248 486832269 667499199 343359164 754597676 757283041 921893546 240778115 270500212 867053361 883130433 74640469 351725909 166252536 934196534 566387554 570656276 330596305 869389329 686358876 862232314 904643566 952578984 618467685 995105614 357033803 688364218 584784157 696995898 956076797 959557883 183984844 576798540 927962249 935133719 806353933 982859484 714620611 835212000 126070717 972680501 370418289 489102390 680175379 988915992 646965585 903836908 474649800 749446985 916822900 966871298 653949162 930816738 441793619 687574050 192094358 434214722 946805920 984542838 417980357 907870696 557513828 697302762 29723540 103394257 389488800 844950926 63292094 338211521 252764134 364619854 260750265 800256157 400446187 827932544 968340500 977289208 843285541 930384731 324781364 552709085 946520815 956485698 345004729 556627960 1605026 891360422 410236588 463702219 379856842 955155250 4344884 779872298 664777514 763421650 569906749 621083451 192912287 610750760 626939212 876973409 231773432 451625791 417160520 700372860 574862331 582294415 735161442 982217952 609736074 962529372 795700850 846234782 332746966 885271617 416019291 707166957 987490255 987797367 923934196 972861035 895668857 945165304 509094802 542236343 107392099 291151684 266915389 315121208 446403188 846298108 298295095 618073124 281754598 728736798 430797718 588608019 307173322 838391942 105325927 181448451 513632122 827610024 190413419 925804691 204912089 894840000 46536995 829010023 226460240 897061945 537211699 700686564 566241050 609268771 381482928 539801938 146763784 852487599 806219928 873433560 151476979 497612868 102020327 878673031 355903032 376053239 925720086 926486049 725214193 861816679 709561402 882755941 6176049 460915370 339362045 983380191 114342500 571738865 448367066 630359903 315784048 673390986 588187210 962584429 553183226 673350290 251456044 749961543 258009818 327793474 265454302 381448883 121242093 121749593 334866722 940073446 510588892 767467638 734709853 869250716 374885833 487903234 242565537 958702303 157447244 260181322 943367400 982008497 66755056 109046373 22561979 61642669 774575455 994460688 755303664 956139535 818955125 854021338 869395112 943713168 409439879 690603956 852205173 903388453 846432114 982379822 492641085 616850279 16975556 94621341 782581329 916367425 280419258 624397866 735449400 983080177 544859937 582685386 596754875 600084154 577986415 847963903 696188765 969874937 14328361 266794374 780849833 979136280 585848169 628069406 101401702 432174099 22121958 689081475 23645096 73009494 311813257 337540108 531872 53274419 574177208 817339218 123257913 154869596 151468764 371806919 786375195 807404212 238773815 341740356 399929973 927166640 167772557 196394808 834342277 877713715 829278662 860886844 549826079 576147781 742179556 964606464 409852740 653379700 438367477 747525951 257026058 378189523 334776381 932935453 210048763 349840410 845400523 853425195 921542985 959213790 981758843 994368128 520614450 688016161 38929684 517337122 93093892 593717998 580985394 612481620 769196232 801316875 824461396 951813401 642359725 978377848 820392857 931421660 861133523 894071892 856360674 993337837 557406991 566592134 816646300 827443119 45286277 729553482 361540756 650655180 912730010 971536040 598897851 944685696 284529710 476828067 622175524 788430164 419897788 658565448 521724933 677376661 94756283 319409188 149212208 971958481 578071268 762670584 792678407 864846605 39726978 48937827 264159697 499807509 762841642 989144038 453790198 659729805 954913508 988294582 718686464 793359151 331898209 732880987 922623456 925049391 713985604 842085497 929321844 994737116 121962192 143452601 648803444 718499092 892895650 897399054 899826570 911296100 466042207 705664508 790183310 900839855 392726440 441501813 816128477 990175298 10576296 163554929 666554185 739497144 481003632 660615106 685369364 917125781 452329099 794800210 299895782 931345553 173217353 458142787 768315360 887397629 723926205 729926690 480366219 815866480 590613896 786572194 763422141 967032907 206779899 566280059 692087749 756267833 697228716 833662509 675560244 942960498 852962407 978614529 169096432 986900590 245936307 538737345 430247444 596546904 191922136 576654194 510876878 842635241 174971209 654992734 553336684 603598469 109351 620059025 243368138 601464172 905251638 922095455 113379583 564749597 55244654 71218616 176540008 723718964 961420717 968887861 334592549 593461054 30094268 46606941 789646324 897733947 91890178 384146836 407573008 410945760 882086846 915268155 445241929 981393521 466724438 718893608 88891406 535340399 69818642 644623232 49804973 892620658 167226328 840845662 874056177 997644531 761591669 843094204 913897629 961041910 668108386 807756249 223887934 920524625 879356868 906575467 470710470 554850277 136385221 562264604 520989081 600434701 701025744 739439022 258129385 970106248 434581270 561441118 977336994 993380422 212263325 372344114 603105764 668108976 389299679 706316552 331869002 410084764 721787282 795894810 740627545 776273392 434890212 972125608 722336854 770303483 20881325 292001903 491171846 816439857 229677366 364393747 558355227 688444371 229683476 322479812 946274870 957712353 370677145 421650158 971639428 977541855 211546104 799254784 904576414 976386857 984456254 996848668 906370301 980833033 284090773 991644789 487979192 826121571 228268441 939845195 762024402 956011874 728797144 926904406 798519126 895233410 478688981 915736905 940643414 985148212 878080672 995163341 535454352 584568749 119258195 639925501 136852572 179055595 211796707 647950660 228516583 311894403 95193013 894113420 666023836 910216154 643194891 805050313 687731675 766306427 652460805 765011803 806567422 913314530 889761185 922211738 382568060 826631783 366776580 915763728 417477527 665602460 801949846 820282937 547695341 581925601 880349607 994922709 471724410 969840721 216004245 951222288 740032742 900334502 373738272 715465956 863269627 925586009 273813129 639782251 962457359 971896848 568044694 691076241 381341067 912968802 969410887 974083341 198590921 845121127 931873679 943734104 323890276 746026989 51050945 664574040 81512007 531838562 128559860 914407604 406025955 466902164 875431179 960852830 886076977 887821896 688977770 736960330 882350928 993368759 790998172 842693821 311655373 535214567 277492289 386926102 29332337 352901446 513745549 792503525 550071860 848502394 422794251 633909425 63622617 904947223 366576349 747082169 520109467 568428977 998913152 999580449 809419327 951005540 661240185 982409432 399791914 653184424 392653297 403270304 256496052 412718240 619888430 761358993 653900949 661039313 739773880 741191507 144256582 371059144 296340794 701739626 363705862 681522584 537840580 812677511 418519889 605250580 454413466 480874394 650800906 849892125 793187908 963543645 956843300 999243491 343753906 823344805 17821071 486013777 203194613 849064613 306741596 399649768 940792462 957482825 315950812 464393478 742259979 757656335 314735046 555338843 544099382 726476668 718700985 736121861 418938364 936628369 63945828 439968005 521834473 534707531 816146921 877052515 360894906 774387557 15977753 541343698 681309044 963771903 118869085 970189358 4353809 998748192 122901634 593365640 395037066 527396290 478751986 549630153 252158611 777580460 679872909 962385150 535861977 809165657 156628019 345894664 848736356 909580470 581539417 682061647 787978208 906969206 556452055 726722373 623143903 913596074 136808530 734260547 943043223 992955094 430445040 829150155 943995624 980181610 360861771 404456453 182156482 837756619 400134868 753620809 913971252 999763938 159342656 704777011 601132306 886684856 164626151 692026369 753931171 809172230 347228312 395854762 193104423 749440734 278690555 811438407 419310176 824412714 672890075 729899256 108999465 721242024 239976361 743513262 285152441 525645869 791012292 820177942 335772995 788474675 523606384 673964640 58036141 729916882 236488572 965327642 893926539 996981803 446261469 905911009 282782403 974485337 176447049 707878024 60185 306334751 500877595 854165420 37809021 713939564 223750450 631245099 583415268 889061722 486723952 737707202 755334281 881785649 41072569 45170231 196864991 585620521 602560410 843645849 443089067 679773971 167509988 394653364 637907087 939621150 69655287 230056878 154081388 843339149 910786213 982583360 781794778 952690745 676308314 796062606 774575037 878542601 316518205 412065187 786689857 907573424 978236451 985396889 475888963 718319767 405708199 704452315 241794894 714100705 324974141 356357579 627610801 641036941 466165063 597025167 628020275 868983790 239443644 825295150 649110850 975926859 984480054 989623638 282946504 741885054 982839108 991599076 403711462 620022513 465218742 698957299 68397655 295024777 812866252 987183973 668084304 914077891 284623227 478348536 469184933 725716087 742984109 961777020 713029523 954930391 5309907 499775443 879851581 974177621 707403962 971791841 142416025 715683354 443915428 606469161 695061326 812362614 683366569 697031988 261693602 377293675 211935724 999593898 374166000 705460526 526637510 961562116 126456276 694613228 889751440 927685506 494856404 695486664 47941682 408338183 287938098 744105786 333440173 857083420 963560966 978791447 67535029 843082705 963129105 986231935 841599741 988488332 802617124 856875057 840861979 904178091 25469281 553543176 626413037 687951193 425282979 756437405 604855592 869147021 331145787 902288984 40573369 657535125 368053918 658402865 814152759 954288853 37118143 773200774 675717180 980570288 824022874 983020599 253542936 616006547 136318729 574976859 437011462 834897710 795200829 942583638 344148691 711444039 258598955 443834972 150112610 524520502 635555761 702753143 698702514 773498794 633767962 828691761 607928523 693549467 175090963 536879509 929306618 976221387 17112017 879035708 321188329 720739117 775249290 856546459 661756812 992823629 705781354 798763720 554796204 860678521 844194045 968190253 930760837 951282373 484204464 608621428 998345819 998874107 201226825 871111828 909251233 939296001 577107793 850952301 319607130 949078384 130645269 618937319 338374391 806350961 643593252 704111642 600777852 688534962 868134619 967066569 873902714 898904778 652825244 995423012 333599237 364588516 38932403 800612772 997212584 997827751 859359532 973821335 693553907 933679626 540221620 969705215 145952136 607620308 288576316 948179362 744868532 827982908 640075145 691549093 84185339 508185484 852826679 896001683 960461936 967037165 969673213 981528546 27096108 481226860 374724783 815020800 779884538 983381156 356990221 778941497 805882408 902353669 578245568 929738672 429213162 926831010 37861463 62555746 434560315 752231574 306799410 681803777 604111582 625528302 901738145 951716867 201896262 610816815 772242776 786506735 12148213 383365324 964849562 984741665 789334567 967701944 442582093 546058052 561664529 635539224 831921104 895213569 986022690 997038879 500476940 965715856 3807127 824589460 422084420 945256935 581540108 703663947 70603932 462743698 460721394 528785993 11042348 502772442 669051551 765071080 508225842 840534649 184705433 659930124 997412197 997815389 164466515 220051815 364133737 682725209 677499152 854892471 696771778 997589174 991094735 998313335 171288502 881802310 558432734 645323994 692521519 994229485 15338900 373151333 903426992 918099137 450739296 861633200 940552282 974075864 295487105 399050864 611804051 830495653 335371084 740730966 683957470 769334615 806165304 949047581 442285667 794900718 955792450 995920264 335295189 618811671 30142993 964598008 162472061 749796907 423846761 742856062 445562463 617654762 482746408 667871868 816167757 990063541 49165377 970339080 101452772 866120853 223579152 865393092 184850062 897483877 741167236 996055125 631427104 646016421 696556583 875597550 74214549 908491881 864498873 915112123 168857288 677254716 344797116 974418099 160747504 380425057 552661774 916317630 567149199 775452197 989364075 999462029 474781022 996726083 959667306 986861212 337148034 364627313 235057500 660680334 854350554 865489137 236084835 613998964 438370945 659067775 343789953 500125920 370287672 565745872 479426271 499589429 733733170 849702055 215517700 782978087 248481922 878460252 380115443 684907421 384351293 731223900 362731962 836476103 393673210 544406692 293978913 384444968 115298198 447207865 664932944 897956452 159267623 457299114 179052748 746471603 867210939 983674976 592331958 732568899 916734693 924112816 957740764 960697227 352187641 488297731 38696695 304889319 383328417 993831266 653338565 871472158 710833904 958092418 131921131 652708195 532972337 714509621 607026455 850808997 209980481 906621809 421071953 793107170 25935341 697278440 812854532 995489026 422735045 966636814 258865229 797280272 675239269 981154111 549821733 977582310 408756101 505467184 854346879 861229591 102893864 438753402 184992874 886914354 152939592 980971327 859547546 878604175 806773224 836098595 673237607 717258609 38442613 795656539 734441783 922775403 790537357 956850322 706837464 729655690 500630470 623474307 562390154 908046735 371746610 750182420 523541350 687980482 831605719 946775930 576037939 655373869 86191775 861410119 159676710 698226452 304814390 870254718 406447643 868470091 740755372 977153928 276852987 726008613 12252131 670703139 675307252 960860963 972298897 993246274 84522959 506086843 357012606 514383340 160725617 559526440 646723776 921977223 399937921 916806218 387684093 757229833 520694193 750728674 616541625 644387323 10848671 301850840 780910060 933841986 125237592 544378999 466123926 724706252 914536175 942029478 465559181 602791496 714282861 729765383 644161627 686982564 266519095 668563570 658574207 882971180 412862085 872546134 816652971 965141287 737931701 845967671 673788009 682739088 10404649 228183143 508221212 976972907 702535270 989852955 713187856 791991539 594095735 978205651 780938971 904266101 94126329 448441805 160449727 407875122 943799870 970494990 955736936 996506305 38052088 445427542 771469590 858018199 993315570 997198921 318892481 711129037 403488507 669506233 376744397 508560366 41181928 862669451 125398567 732127369 117526789 430093510 159630546 306829908 831156554 972082899 390858036 546504422 752387534 769918321 131711312 494757686 924978694 969690176 400247774 887478095 544754027 671138509 653608975 982512969 837892608 897570494 397915578 987616726 689588302 696275212 602642306 694867733 17341717 541896208 175259651 482266301 790081930 794136168 544620300 658866830 406694991 727811837 989570339 999216544 924653108 970876474 575940864 813954640 281140340 367034831 711936241 965190565 245279319 403734866 129300950 768679473 177272926 539098527 351735019 577496152 705284267 962449237 264246084 372585266 461171910 509919221 330271051 802791486 28920516 588901337 128278572 356069634 787258350 977784304 702835209 975115464 517991102 547639657 300822420 649889091 771342823 829552302 494693238 613921792 392566250 615647841 470084064 972853887 251090762 903282092 605345973 643237669 527498279 938491857 238905676 386046227 504744787 906410604 668083775 697919172 485318210 630970242 699749885 749988386 150513188 465802502 597677616 714517060 157158077 806520046 813343307 874779793 254472862 556135745 401475121 490727754 114008487 878858075 381451504 698762105 413421342 899640075 569739926 841747911 719445747 921291310 533411313 763425719 851374398 932828008 715579551 968500723 349643432 429336895 143904699 740338247 774795588 781640001 823196332 883880153 895178175 945236749 330512408 358163968 33810458 774982965 692782426 821504427 343072733 506710639 848869883 920396341 189881937 294205060 611019734 907397075 156851166 695560594 50166108 788661723 864656053 878929045 332050502 904575571 346028984 883300063 443106815 463828169 802075309 992548416 486540287 653970394 986616610 990688526 366054501 578384008 935359137 940202725 779928742 888787584 552730004 869847326 362085454 842074835 80471294 298956618 936396289 992507492 465532940 872988239 728918991 877522561 507514201 767799896 391368359 807878926 338735162 380178002 30382996 255285734 906754563 994813426 800647686 883171440 329337998 901803121 491631715 538405465 420751409 574378820 121382198 623067145 562529530 807111072 395879623 554664824 338372765 751067164 8564196 578721805 612792566 683068731 480046338 845340914 993064095 994674048 961791740 990658831 846226375 889836516 772655674 912578356 558349122 773388407 247047424 341435820 458639621 514180246 149166362 773474024 188605471 366872652 611979953 742746766 88114626 385193156 32486196 830270515 950177764 980096677 646854921 789579370 276518594 715919877 118386705 955107997 581626031 896905271 411935601 488291248 409992915 639072599 246154303 652109919 82445343 505985608 25960849 545601048 534135315 968414327 174506469 387085193 214765659 792556914 726569272 941291643 662719473 778763453 700200338 853508791 370766432 996284421 600695471 637850022 269115123 513672283 104192985 648371666 897508470 935595458 66136752 338435905 380824830 484479372 78065564 416782810 94745955 123841049 641752266 899109273 834400303 920334003 506788306 568473846 420964786 711318074 652099023 671091197 757740083 779540060 366612185 408264569 773689793 861766802 353660855 931826341 27315996 937253230 975859941 982877986 896963817 916569623 273944576 422460030 726002780 870609054 936389474 942678089 920034392 940619490 531677328 678996968 1457891 158704080 549269213 623391260 677174424 853189807 135696031 427764489 143232350 388276190 400955543 868309935 226952118 269933932 274279406 363086478 297867193 455122901 304900778 520764062 318269841 702232936 550499890 973835132 767060369 939845633 879584265 895741915 471083080 611534017 431105401 618240009 339276799 727850824 969653630 976901537 484327802 849603531 67779881 877235727 991375467 996574996 476686569 824456373 888360218 951011283 316880066 823712109 749944516 840783706 591199190 964321832 154448939 924525805 397399420 680479187 913465260 995041208 256183894 656406222 178103933 588546787 292088494 840589356 989887438 993638914 391988363 847234241 24414596 48458272 250212670 434063080 343915804 925971643 783159977 895280229 107797651 460527648 327281407 455562034 873972283 917382853 739723988 905804932 187685196 849954583 52090034 83461937 669977944 910264214 254325862 288151875 2433624 411488677 468917530 592892134 279575626 825714625 647363172 705532075 18143689 183588930 119156806 520043481 979621859 986798552 204127784 294609713 183675400 738468024 994950681 999629556 705924497 829691701 416639855 828558990 641385385 986681178 625933243 664278262 489652043 757166600 758818131 785193535 975038236 997878358 684183999 912959434 947472615 993254671 904007592 976940534 678985738 782384076 725300000 795312684 309324480 819387261 476295051 592146613 772537995 817681588 97920041 453967438 13597541 632799139 874881365 950123065 66542425 971064542 150459968 318722674 686019816 964641504 653419430 770942782 96919941 132802783 699488123 950555117 412311165 940172356 848335424 996319714 784846382 958015348 792148446 833534599 257257248 355102816 189326279 541805332 176729809 487828828 530846563 686759534 97976870 837665448 533562303 623893473 970419116 995579819 562933882 866425369 143664004 470272893 140328139 880516529 136547275 770361084 186374486 382075878 613609163 983629643 923538151 931641301 584315462 830966529 783886523 809508746 484007789 832386578 28519458 777701601 731787017 869852403 508280747 953431351 288018977 481766305 376607673 449027605 986724335 990936358 829325451 964596090 186953511 921444331 81966792 130491666 628749748 875162244 3171329 726707761 301314379 796582987 863312261 878830194 509631684 936840522 747121378 909639058 287314951 474242157 372161953 668268143 104354598 813874743 843146324 879251507 341947343 550651809 873472062 893649144 801876504 990395741 432004763 699572527 54986699 587465154 571704883 693598951 603430351 964773042 787213134 807222504 4081961 208747911 73870186 991269867 185819611 535067971 254745065 266034124 54802580 936966596 731708312 769163031 739371997 842215940 75670113 786829496 579193420 710208396 273368738 831843146 664324599 818697899 178597935 946507067 157637844 227456071 549417576 555997863 986709047 999395749 89408397 97455308 929477787 962303835 269731496 927449636 130847728 302399980 688881723 759482198 139123086 335772794 513617648 711642218 580205895 984249250 984956011 989838848 186299243 968496310 714753505 799025893 356368526 600254738 269455461 416582655 473941023 556995975 552821877 693124674 728564676 830674918 857597163 898826607 466632605 756218254 376333449 714308412 350287897 384377772 67287060 87562047 255195434 328499684 712487776 722324565 930880592 954145873 268368899 360868306 695111853 984988396 273494062 982360619 80560658 83720279 439268352 547588788 986510609 989567318 147371829 365764169 966538879 979999633 359177545 759257447 748212107 798725080 959876821 964215347 448223348 694348883 147412163 642823234 418025380 885310960 863903663 924775013 804506832 827899965 917509118 980321047 430153863 635918703 524145998 886254488 169912106 990702169 738798649 748131832 708935982 995701694 766313982 791015939 131669133 244158257 199417558 557685110 836087896 878227888 543941714 676658834 469944935 496788888 706094286 996247620 719484704 800280812 225493379 918659851 87976351 590139392 858276313 942558450 815751800 866211947 449361041 946873060 306167985 681858784 272733792 531408873 535240961 616972650 597439561 631483344 559801924 796223697 612762096 940243580 932903856 946707487 502262595 796708724 588061379 986281755 514122566 601963021 439631353 555366648 143396754 393576095 529617944 900106977 596882991 675177352 335625083 558656101 742723967 960702242 83351478 851675887 465444132 652720041 345247106 643438231 656025222 904427253 168838785 736682176 449244379 663911182 196453118 790827312 908292580 951313418 198380132 743965504 94152941 211178293 271992164 625494211 899472172 953131696 184956613 998331125 336229098 506904133 105828578 597794742 473960628 643559432 859549342 976855357 190954357 468934146 316418997 538398360 850037258 987507148 193948103 259927115 565811104 966187674 94877956 445854365 554794371 927231288 660621769 759031362 942308816 972685678 788337149 858385847 518441907 986248127 778833849 946649391 29726931 714617013 409338807 434250903 162280657 706141130 196833402 794853562 461687335 978473893 716421569 733626257 845744322 870852426 448125802 942899198 585017982 995507279 633819203 667146358 781003942 879242138 875504782 984706434 603553084 757241113 42020485 580633666 673330871 862465519 603071297 790859834 754293571 895120264 160634026 953568588 418497425 933933144 660137140 921963151 207854775 253297773 845160251 982036975 527268533 880913050 653855947 711039373 940028938 951619338 457682713 515974587 926853783 972805725 77144198 471930212 600448710 854130426 906733492 950823327 215377263 496948100 933670983 964268566 822180439 923885404 406631833 982720877 925996829 973652234 291830169 917992859 499807996 590341253 232470366 272899915 429956629 671114067 817321137 937152815 92320251 661677292 619379623 731043292 794580101 951657853 496153949 919834848 77873049 462741819 937096511 989189507 225922774 544586035 413409732 622766276 180792343 475550128 955389346 961172297 914161583 999650855 186298630 261758864 387650522 544843002 765970948 821998185 639384677 770525115 74906391 918124601 165203220 259888380 764371456 793055652 655382071 697026993 686194135 890749121 801714180 972135644 130430269 998165478 929182626 998756076 88792214 431222901 708592235 973819134 279881621 633569384 201125045 250709405 689222355 858340936 686941681 790558750 780568154 824419735 549531754 963054459 774018875 777503738 82902012 248709037 895911318 989413215 677343054 872801349 163023653 369770286 984293946 996081455 547202098 556617944 188902366 662042040 587138013 687166876 611228062 852918331 456767175 764710906 553180200 646983966 9445145 640620001 193802220 413201328 502747333 771201298 8079312 727035521 871478183 885825277 901105053 927800688 633243771 782214726 587642352 846149953 624693105 870874758 584973776 997755175 230420926 588194658 344110626 384221738 261167821 304632006 214177695 332424653 293839044 987193962 450360739 919197915 725006153 819817766 183532479 505973312 472467606 660112784 792420788 846868922 292116936 735518470 290602178 921761720 10615577 68533452 356128013 732436114 908885011 962286847 240319192 871823028 972340110 972712671 700788459 856052133 752809006 940743641 367044349 662396916 906275307 936070236 511425519 543308673 773030702 785248742 914162415 920270988 512700030 822342679 993509036 998693471 1257189 912432804 69503583 174346877 63275894 188315880 968068052 992289230 142427265 699002319 874622584 933398837 65086946 659958654 334890952 649441241 949222072 983534636 174178016 746901917 201095204 634651467 647654878 718782770 133004030 373106425 170632200 419193213 935833827 983840672 922099325 923026560 263968584 783898172 445483321 993333179 210947957 889300959 179519999 779798760 303348401 602788732 207379459 584426786 715397833 896136071 608460627 694402139 787881622 816187983 792098698 813872270 12169609 298043792 671616847 883590486 406121483 536412465 608746262 655712610 217750191 821737798 521789888 972677705 349320023 661626373 573780329 652360948 99342048 201432971 769847215 794566695 48177943 681521501 55151071 202283842 999519425 999560253 5712762 486908533 165587922 185690581 987032579 996047800 520439078 969566441 287442568 840337318 687061113 967768190 53748127 649709234 587965991 843011661 714134648 757810107 349958065 682722269 936190596 968448948 790900893 949375099 235827751 630862466 650257325 923756509 482251670 904008788 751987483 978970052 73295620 120444208 960297379 977560409 477584554 868776020 78475452 987162079 363659038 721871235 588527195 692479721 973293804 978950892 82155804 400822539 563595689 825147929 917944500 973741299 451281376 872922237 162254430 171842263 272103975 935589594 38656069 480583919 159511760 849543807 92509880 602444062 311154337 949626648 152147782 345077657 289621836 925836967 989628714 992162523 371633207 687682723 332370961 505920745 560607027 833498500 126216774 665149943 789223885 825224789 995530023 997022492 601737035 742632399 413474728 530410149 896904841 897120552 51864138 133634577 618561984 628730697 437173026 725350120 365919335 571828836 667875830 988438620 90321817 625717801 316682926 906549373 35081946 796926213 648475350 780651561 249893641 640875805 772449833 818222109 655208395 847674548 721729366 856546677 830235543 945028138 142453223 789463747 876444999 990969595 570978815 994451731 385504386 865798931 370026571 860290173 899971408 990543007 550762812 603476400 258550477 510429739 639938892 676767732 680505201 882611401 400082898 546628632 559324536 626430970 718781076 935156053 708405270 998412953 458732913 913823888 370655115 939043420 362384139 660211876 506708761 627813489 548985138 601460088 59174284 702522735 660226279 995473277 863955268 942531956 728094928 762304678 22077867 663652879 655827156 999134635 877179895 928501066 783359397 865799111 485794703 536303008 374768865 978167205 1659764 785487422 179117829 731288117 711131109 749545020 795950721 852347208 747467745 817123455 567731138 811592165 362838092 644690820 573356672 597101492 529781419 663976280 964391677 967000243 111183436 442946263 457428834 575517295 15512184 853396944 306956104 961833325 297472956 601479430 808101786 928264204 325061253 562688204 343329956 422426694 564528485 808409402 18683300 347747410 692824015 814098411 877223313 890030144 735451198 895062318 733707676 907432637 926099610 975011962 719610007 911566986 736189628 776982376 965961115 970885231 159046997 819301440 555096706 884077772 615927275 991096577 481729120 758694753 684878723 860661660 163205076 987876845 169862101 185281605 461564521 679573327 32062473 824246282 215363238 342377857 332567661 520547237 149133674 211194758 915380879 989925649 572877473 638962595 553746712 970450357 65145895 759549192 793649397 971114814 279387514 923498815 566072328 879212388 255563721 378513174 818764225 840587879 953515098 988039181 505988035 750555336 685623857 836991537 577885601 819824600 459316060 867827810 897327215 929929636 177375074 213071951 331112531 777292978 12977425 327172651 587748452 678578895 653431275 863960670 898131223 963229894 895774435 949161601 265227238 674231401 303987240 954727777 506241283 514476093 715224142 947415088 306279168 966547359 696039323 762709710 127827330 869195660 844207095 931010582 289647700 749515323 688396818 740152948 154707886 408820790 164369663 604269660 793423664 911085070 981536563 994218771 512931943 738210000 151376595 307456612 590357285 667108727 485175135 787949037 915815363 930899713 261020798 624314385 323019841 484706043 712801558 714277541 488741833 547315418 329979264 438174261 794027452 851456735 47601866 576444380 930946958 992731483 172235288 433586726 906294402 973441881 487127606 884554537 836909888 997095856 322511084 866673095 803991370 886143679 196045347 288328937 464845450 712865250 659217857 755760141 434457601 772475778 969859174 986976045 375583924 891828774 811208063 999629607 146103484 340334765 745952890 873405400 706024473 768723854 339694667 523975651 273028012 745134227 141973788 315600977 494367703 978284445 625194536 917845541 777896196 988197730 294189328 461333541 672774651 886941630 335977496 569132703 374925645 892719625 97261838 757248454 832255794 835988777 299897696 973552630 130126005 604534656 43835184 349123528 817208227 828327378 720840372 930814951 10325112 896794651 19090893 125310296 790067980 827921623 638431848 698397858 540983903 969669206 546364437 858223091 20569608 447838968 193385721 238568213 281037553 589026292 611331445 888850447 9942124 379660433 745695179 810397168 262783274 904360318 792418383 896100025 839139838 922431418 264838236 665169188 412344510 487413152 973688817 992040822 422423915 764886535 377345016 723490362 834354633 836646934 895310935 926299477 561876395 808341487 483357640 498453825 79275544 136612077 232733643 627240405 490816924 984591545 858960728 878677666 693350809 783165264 28735389 117149265 118512350 983493846 500180866 875217616 791218670 804873124 625073036 693903141 587920717 763022836 816021378 888583036 854742466 883191500 316552731 691751837 272934466 801635057 681652425 764919588 854663509 891552049 542548858 638595930 296819063 705451604 395230631 701215980 697719318 893525635 92922547 578597965 988514257 996623083 689964395 937087056 903975500 942489809 547742003 650987674 869987152 873193365 133107796 279394912 607993535 629800669 312957286 539086408 303727119 579060727 815493754 852391345 259406005 705710461 144627163 438664497 71920698 497524142 734992021 826367954 749517295 790186051 869921460 993660252 985730257 996033134 964233011 973978377 112785671 745736392 661512555 668116058 393363475 964598589 469227684 672006042 101030084 326782155 86139742 301525278 812157866 968434448 416579252 855559516 157043821 839597859 222541512 882782313 614048568 735527720 516479301 677525947 208495845 298987838 97146422 460978120 452203024 705196380 942143248 995632375 424278910 980117239 330084979 656724905 538839931 880597114 133798164 327019331 889373661 906743991 401756337 828426098 680442824 755695159 285558712 741430406 179087203 789440055 302368522 876877654 56933144 919460000 955972638 987491293 587732467 899038933 928699406 960679941 960129966 995021809 989906264 997771278 535385670 585451676 846348717 968638041 37850603 50001907 998470563 999109240 632778583 880255461 263601157 480399644 667780204 906755805 211299824 837441676 16794956 591345400 994665417 998881893 294849723 868548167 601943963 663020956 848530292 925217625 772552349 893375876 176588209 380388140 772833147 986630693 727503226 750523185 122978031 877967213 760679381 948106420 365172472 419299873 732667494 799220003 243337956 570780384 810301949 991739794 502890542 782797722 999322893 999786691 689766064 800376567 844098154 875086904 247159281 537779444 866161680 968824284 289135347 387834373 898227313 986561260 963799039 992990634 536115948 901646473 41910599 219334833 655976496 749748046 280610852 894482769 480739426 626965483 116948333 540669007 668816205 784385390 215694136 690064181 588039457 632864650 574811713 701588750 856297460 957911394 694515372 731937149 531524433 943493842 657734734 866996845 334773756 581974070 894627234 914653331 848529331 853121918 140246052 309190960 880634387 915192721 692961175 943966098 348221600 594763704 993222298 993422683 143934738 358975753 748297922 827449070 541524094 690697299 475145772 721767571 550645299 846326689 595726786 682882289 43747452 401858992 562245132 656324164 565695111 697644217 519103820 521332869 140691677 341816468 392352877 935224043 51914737 534849962 954088121 976095570 968075187 968641844 700367997 816940918 132906593 651714858 207668166 896024538 303848452 451461742 959981005 969845722 158340914 685408568 510600896 687658631 208641614 922934195 26102533 399902825 399769681 900869977 161814431 606349538 919824598 977522898 876733627 959753124 238171225 827171037 387653303 797473942 554188797 846270311 256328213 557782525 741453368 772053113 222519454 470936536 885237397 928110645 279199580 351672010 231841417 309920048 349044748 883264849 758896404 913668818 793832458 905395324 33352154 95261647 766126086 845412162 586462646 800479810 126619571 657501775 142025939 722912318 956146832 970191838 507289409 848861068 792205273 826872829 625727890 897916234 546515467 858008738 387655497 950669395 88871019 284306065 666935806 785873520 602743108 737379996 222069281 814814711 191797205 402416076 864489182 923301501 603441157 627249676 375068379 475732842 381560285 753160271 88169007 599345205 846185312 987505477 972235102 982913538 403131180 661303590 837413473 932212849 602439129 620023626 278598268 409001693 224873257 384393616 724056274 758405290 628157421 630358039 818476851 994090932 451442510 919425611 170911109 347279784 969109322 990157391 8047895 174763058 919284905 969165192 743308354 942618000 359954349 593638055 320063575 338843086 371891203 859683763 670857246 793020150 357872 769588942 852625595 945227819 816216405 853945994 480578749 501743096 573718294 988733652 87257588 653802117 437945680 844658649 923258950 954820096 413903605 596242296 799575721 951107051 224104521 662580290 53663894 966224051 46756442 307757906 675343276 982080257 698536660 939963979 154473334 217804781 70608939 151658758 308599902 856804790 147182876 746535082 605011667 894551708 894844320 960622670 688607204 983189532 662759909 943369202 362455971 619410621 558810748 964908872 106764048 939164292 152156938 267234302 830501255 926875525 473467885 909597146 376264918 963786908 677628105 686966108 728699542 907734651 21528859 838912177 585853165 690731039 338358979 377694791 523144887 639938203 460345651 626249098 364953387 475852719 666666527 837410105 700275240 751702724 215236218 715526182 640397860 648975472 482273120 669839561 279151843 896294700 367361093 627703998 677081750 692229121 388785098 424207759 10956413 440932382 587445491 656617202 981848413 988728862 235118712 622510229 761844857 954509037 368570373 747148770 445585932 663910166 759596302 932798303 370926288 489507678 661745792 779322010 557733527 674936877 235899242 877199270 563431636 725017697 621283131 627342743 622591572 684199694 582693467 630019806 672337650 813015213 411076303 964850003 4081414 342239804 735465405 904760343 227532546 282471021 142682604 839159755 634668967 949735795 309584385 452876373 568013154 668174888 914432459 965463745 656202997 712163895 344392860 407061012 307607830 333747845 73677709 772691305 794874688 977931004 802814271 873638639 573751684 681910621 230072023 332515521 470289080 851645384 650154805 974762143 731060173 892948293 486136608 872818565 278918850 413260599 79965042 190398274 78465973 620039685 826764922 921119904 302096283 927215756 637594602 869838486 936484538 954217980 660099629 846786897 647220701 833531670 749346919 847435847 378015271 688293157 169558609 577796191 491468413 791153053 594461536 983318496 551663615 595727006 212670044 772786221 334466582 423584629 753295953 944378742 277046939 729532490 868111254 972057642 964670352 972286448 907692451 998657674 127303111 820638794 112465142 491225301 304618545 838916736 76650017 987059983 804443377 865198521 379880726 500151248 65555232 291720627 854222286 964788373 674950849 995142952 151399742 214888518 986597967 997822252 234795796 805933900 937774234 940671791 811528467 832044871 426495280 900864341 477428252 569422947 881523127 906391850 440409476 628555553 506292437 908773287 631921130 983860565 122145748 702633722 539951814 543745855 203294863 457463487 152556101 930743915 499352766 527619798 434784304 917697586 231069295 313890237 711881776 937389572 828762823 841177906 927538221 977213088 434936513 584993369 439831353 743258273 642120313 992274912 336792387 708817535 696468889 733549301 962599928 985491318 493000157 908562679 243722817 736940873 91247960 963301118 15157806 183349452 493255605 597561243 864822428 932360459 81429396 893812579 15241649 43456928 19716792 569673700 412612275 468083708 660140339 936300786 568851971 961649649 277726710 283524042 93155791 566832180 337407984 530108104 284587067 467070971 451111649 872852213 324408447 606142745 818610163 980769775 731571265 990213799 574876797 712393647 138315603 271250795 494684918 937801384 374118644 459139159 610106313 846391787 449360489 688190916 847014662 864847084 335548667 990117261 385762847 741741671 309863792 871292202 137837508 973198236 861730479 890215251 161855110 820777630 91537312 275242411 315863407 333268489 211833024 375739881 131573876 418217653 20871691 841028506 517184853 755746082 683994800 760336333 774722648 811691677 140577645 305148239 770580879 956624443 551331392 763593005 725125215 838576883 316934133 999512784 411441676 972700192 443059621 717015690 756383961 834170621 624974830 814662306 293190746 976209720 551871778 892549350 645616524 697612093 700365395 817499040 523574119 584008764 608668602 850257161 305657178 396749536 39128763 915306596 895009666 948641331 213850373 931219125 682953148 944299401 37693956 973448346 138774694 449940138 381130470 817410555 38116815 705828303 972966573 996746621 389277234 986541732 287041717 882929042 989645657 993557667 538878053 807447802 42310818 477712657 511778796 698632693 322213709 903855917 585518821 820057449 33653927 501213756 202527244 599727239 443937833 451714373 507554750 825129607 234604054 335995178 280681350 694718346 273562859 811182919 203668938 808133121 235363838 575479303 801436810 939485265 959844110 973017031 622282246 937281116 956235534 981520754 105504051 330795180 322387347 646429579 687067180 796845138 923981852 989376790 535952129 545225927 285285407 636968185 147804010 682561129 989696660 995317145 147225561 766136044 516476972 880593798 915097057 938813016 418767187 828164039 460878519 966799395 16460550 186774889 505580900 518250825 505868777 635243112 214554661 378859433 544462209 695375924 585571680 633714284 782701928 944137435 559881047 870541696 180015423 931436121 238041178 421168340 807536285 919165141 111678509 411697034 452076031 595000984 843894854 992299470 275523558 973004127 740930763 756043063 828171609 948975964 812132306 897378843 678979668 788055363 404933401 621067247 894578196 957498138 736538953 781880752 657027680 754387226 26315502 128323565 31204118 755424622 273999933 545927505 882066049 926003161 501392862 543249476 860337768 944374551 427418707 847497183 641834946 930334452 498627957 524208593 172219295 677645269 983806121 988632602 820863160 831172421 951372427 953100608 39144906 798717610 595904770 850907477 664903188 785060865 717789680 989551149 102270228 374496129 638048321 655690197 590650555 597736303 260588611 278131708 528585981 597142164 783845340 986559198 867655238 934722626 476727860 848075113 280635393 422773471 637626190 710545569 286118819 749050143 128176265 220366864 251347372 577214749 810826536 935496307 554165376 825934735 818627135 818727341 122979186 644818831 903188549 920251741 875547998 917720489 837800290 845415415 347632553 637391400 697073624 734409666 375693507 689839305 860200475 934609723 57515442 909264050 321153922 702366716 251996276 532146389 212636897 421218803 385377946 994005674 268737345 950545867 759085062 991127790 494838355 661217405 97476429 353852752 58073735 92684429 633739238 830360529 515816780 973165989 683680599 864342091 708846629 937946169 554395527 645283383 304609128 650605823 121834088 686739608 941666379 981901870 284428245 638409253 359250065 719716293 498600565 616450344 387461381 549455033 907584607 915845185 745650739 805121305 737405677 988823794 497671516 739584175 993615172 994755906 402682114 821180863 871453320 922875822 874790142 993665238 529862239 834497070 801846247 879976720 517049928 759325225 626136908 983882471 344533308 768474118 294862317 794324429 548878272 553797758 382339038 669484017 348786502 858231340 850340968 938712380 306458767 676039687 880165178 983839544 165562446 503337204 248050927 686117074 399695657 797453923 607472975 978578906 133060089 947121744 19660039 171669347 478832040 945899238 697872288 816675436 417443678 832211166 933807619 998394722 66081779 147810284 505905031 922768736 905869957 973742341 909986555 966592325 747457031 833776970 787005160 799042081 845533841 917912203 600793369 763443865 804542282 878830994 729651818 914221063 840706925 875096897 539553207 573236682 876892867 930549139 408520664 540346113 793161418 970369108 621877331 889818970 113288733 448664494 113011838 480722039 14002614 721333376 38270660 967855995 115011044 155202427 60405815 402395815 188539404 920700470 268289727 317806308 8113767 429076710 458998495 555608739 62637224 190606905 295110671 640763674 205614471 604784350 263770309 444026016 182767548 916644905 40460810 167042824 414640528 859946131 375290152 619737323 840631499 878289062 507793770 588699797 388965724 802383227 41288869 307512780 420839496 612471473 544692544 993768195 116852405 984381802 635004020 662306158 947439017 967444114 956895118 979118318 811606233 826343725 596846136 685822251 46926012 179219787 877186932 954160149 585363336 751794557 160885158 624050798 995252450 998533435 976457669 999405160 550685386 714964222 484793292 819676868 534089647 729195611 850098431 900571528 375247854 692034432 339879415 823851159 63899795 719779014 438748760 699776383 632962112 889784481 702734564 737564603 620756562 727977371 843365649 963267072 492141114 886055104 444997283 671055477 31097115 199952892 189021074 246472600 593578257 799600883 176361326 958555715 509683624 768073036 467992991 925294095 473460479 814331525 769665883 863423480 896809217 925088896 890047 531491309 747277137 873834655 975111599 991992067 170794602 457164584 753359735 919739883 528301466 929988712 983633700 986939071 29479024 887832574 853065426 871017245 569180511 776543219 330242345 880142502 927298937 966822818 29036198 858535316 922316580 931832051 328557695 744825227 677106051 713850812 867936312 903381332 829029130 932670666 718283751 969484947 806238801 987011785 552728212 788409750 32094550 126621297 518562125 923779287 735107339 857852143 842060008 971014292 59021539 448500329 863853674 928637230 335045823 592854137 398373632 957581555 894254148 962522085 575927419 939399281 968335955 988368850 434107552 576514590 306264727 569517984 76636503 175071040 977583142 978862796 938035281 940797654 27330644 719770428 579498069 995126113 315610581 731340673 801440121 965448858 922041046 977561516 33909561 353188817 539093643 854301250 439209542 908171974 488724006 636899564 91638795 853829224 777530547 807804837 631254621 843693966 76824617 899514962 55421677 99278536 165939680 826817136 175841694 650794704 794410847 930402150 370052575 683559670 679051110 961160461 876996631 960140549 352981948 671614127 684747078 785285542 530119525 782685020 334680266 779116550 686101205 955576462 394181262 434316299 457735827 775687915 609174945 682578585 713704917 976161456 547715341 707570709 764943770 935204043 702897251 955283053 443567770 939520246 948545663 969673100 884313719 942233966 99763285 246824712 527618885 713108572 545118935 874504314 952954529 953802689 787610818 892619417 153260143 204021793 682526000 752346996 336967928 404354120 915176562 977411241 409165047 803185918 274458857 537702892 877422815 895780876 213107235 335921268 222952241 871055499 801693503 870781801 69119734 700490752 230721761 727227392 117133959 752777582 996309110 998468803 830025640 935623729 284881193 969002115 973015073 988684842 375532394 429816576 401788104 789328925 811848986 905246409 428080409 578802646 644237990 879017155 456970124 823147013 402578671 976921251 36955349 149173310 801042691 986022425 909794388 919655177 142893803 247713387 505727474 569848642 265523257 884887251 371356860 534296692 799445240 973826013 415728906 701883860 683811684 862673512 972247910 995328620 949194784 958687007 190216156 599709868 196587953 481820038 557049201 634317119 649469760 698987044 187842224 976706134 307813026 865726025 714239413 929795328 938456816 983502686 242067639 940289293 246300443 386019054 529816275 826659311 135896411 797708912 826891779 840302135 699906458 825526421 790017205 816224320 735428865 830281355 981749183 990674376 503202541 888071521 685213143 936029245 652029161 752433314 942155357 947396604 318273630 327997618 388670043 725670386 539835577 849418719 289195505 800521066 753278949 856037516 364841054 939991481 103228144 315709406 768750245 816302107 802174899 956647922 855958151 997015690 251083219 868728432 428452511 743779719 667202567 677227439 932593190 940000452 63524693 761610631 248516581 593135492 25483508 395385229 619537125 800523851 887091445 952235631 512584798 520380290 434553549 641111320 941527201 979587500 321750248 762141364 229764742 614200777 184697222 789774564 214174688 215082953 353060039 919808752 94356885 987187878 370410833 607254972 752056553 835096763 712398141 794582015 170338720 203285150 309475789 668543002 621117858 644820803 609570840 738625575 343912618 643902911 430983421 504833466 419687026 946123213 950416796 994495994 29408856 87427062 506885854 564829589 994362142 995836069 771073812 864434093 928233184 997667257 772116343 849227845 997831430 997966043 322240599 952690112 717198903 765056980 321277471 961817698 960796773 965821003 896511490 953068754 66230278 653991001 980961306 987226946 760590633 855656873 642646313 746038733 571374444 975421394 334172043 684150165 431567531 775265688 776534006 887136039 182469183 903288270 564988476 732159765 546787996 551086858 331786683 381996791 22604582 240103755 897223326 982389478 990334871 991441307 569096945 826017770 452881167 504278316 647702757 941546071 616418892 787174327 883701626 896017828 963016724 986036499 932019287 964580052 838548605 863900500 824698461 970208347 519500503 868674989 276600325 604553064 512832629 651013749 783148444 941384428 99933970 187959558 887035839 982264842 66171303 932462511 733748217 851352025 946177371 971523397 493504614 768118778 715580144 736618371 11823835 80201138 690738405 970947337 684252645 814798331 477494385 804250124 966406266 984411974 789646097 794902091 975676774 991666359 125239365 911411009 266643117 540070395 695347547 749430225 100694864 175222709 144162634 447476399 576536222 868228406 741274807 961811033 770908659 775541922 376581492 918458212 751729204 862746288 98600938 424780883 67435514 753939109 792989672 931452057 84989034 103972683 660694477 856568407 349125226 430859588 730844311 924666685 159723766 264761100 283206886 558120858 24382471 981802352 770400087 970617857 904344744 944702942 979740562 981150218 578324858 727558201 683137292 774727301 306671180 468582653 573367822 732521680 774932273 842283512 821467100 938364800 631195372 708650946 280431223 642980342 205537944 478741791 231163609 905636507 353087757 915369487 90002966 415814248 674141411 821579987 326358124 677846412 451444645 584624043 312854878 334742122 771121990 781835270 220784712 500873350 931192944 967564864 516244642 688354216 479782182 784010445 194549250 713436989 889107541 944201909 538067327 778540419 58082537 775307341 578080599 722041391 190460921 287564317 14853612 176029153 635767420 750825970 660531371 685817197 522325150 977708535 906957847 932519740 189769239 910704668 685769587 706192277 794929148 940313261 557965186 616851301 303663781 407765897 220167529 478764676 964647279 989185519 51845196 206312539 432400876 682214968 72781560 92966804 667003543 681428047 678136388 979371500 960681805 992522291 124282977 684660835 692266922 916448782 100825117 474654693 553961948 626866841 568762664 912905395 707473483 909929950 692036653 770971935 769787273 872471008 246163815 324809232 912086695 954246033 106192741 314133874 22711897 353237974 887308511 997818326 64259624 478331129 406991779 874065151 2575783 734258947 782396278 808383352 345296530 706965055 41725825 825094704 197136729 964620953 453013153 930210317 954119376 955372375 200477561 238380476 963928801 986523028 407563301 611933180 736425310 823075183 983486660 985004098 493450175 927576549 342183808 890165695 400970541 781208200 634061177 703016699 455295695 626260562 430836425 895172599 441247947 743323335 529792200 813803023 29050340 730560342 882509133 962666955 528819314 610344883 351321345 412057106 545320217 588068897 871587729 990848774 456289017 864933811 675312017 739229685 872580643 890927730 393049936 546631832 453915983 950442216 458147918 519596962 974691369 984857430 621469242 799348893 107032635 673274273 44517919 650649193 282295081 995921158 693661943 799917431 334772542 851033817 845387853 870548693 75392878 676948189 638975315 903175578 783938811 787081977 934186773 986396132 406033171 922098452 160827347 385404215 780776455 982182810 15683316 879420412 311540592 953250605 453718662 997897046 87949512 289762378 502248088 668765795 756378589 796277919 121457682 311823602 693863016 726154658 872691594 969838473 410205392 426511845 916445081 927669853 603518343 978336024 662490339 835715054 132586563 422270107 332324945 879632167 707407095 943341154 695040639 787028235 143766552 398000108 975547771 977488333 972348451 983267392 25508188 30222838 651795613 777603925 321384669 672395962 254362696 756599314 594677689 714675369 27003233 103900524 550782636 702755748 605482426 895929974 728949307 962714366 249023569 622823080 512574999 903567654 780202079 789323314 456086795 537504794 280156936 997258948 892645127 898127184 524294027 990296593 774599574 787982448 945913521 987014460 934057939 983579314 277594442 325883805 634094747 773005945 967238033 985866511 248527628 511676149 139984885 177649944 208126757 886268662 605139318 608517656 179564343 517208339 906025902 925122390 135752335 735597094 721927632 851607084 871926525 935306671 325385626 340962058 518853886 699592352 786579266 975469854 79133149 648509132 278219687 384140379 712908264 735120681 342433997 740025319 193591786 582760888 503220171 535427846 876472110 929668748 757135578 806680224 973524358 993449674 192388714 449255009 440250739 509885150 823708513 883639097 527005748 976643543 673722099 955564010 380078803 780795085 314654536 648356525 862699234 866548931 657306409 991680419 870660137 932171075 427494867 991881466 552155738 839425297 187459599 589068424 307087388 959177837 703647468 721833275 642306272 711187238 88730716 127477315 627481946 697250743 519714537 555079034 501658259 614487579 165135897 467484086 940594146 949697485 752873378 959500081 464017682 781401663 694574205 763195821 515697480 777453330 443330462 835242566 369239557 801785076 395986669 993723059 658917842 775279978 308638921 752550678 665703289 700271680 250098411 913279609 890652084 960030255 939229898 975971178 331147010 651815739 552202027 840938380 558736715 762318698 676988635 887767648 491703132 934338927 385087633 624692822 539444434 748568341 138445939 402768979 979835791 990549260 943254661 975280714 526614309 605798708 580561869 983886483 927912696 935711862 785672222 828202182 466645753 746817706 131806610 438221617 70944126 95410327 319161406 456584189 39545129 844040228 365290974 832805670 902028137 908336340 25496479 442147304 708496748 869055254 776770830 870379750 818867223 991334583 410431947 826993261 761167457 812547367 578722752 668488381 949848557 963881785 721960979 834791248 366309747 769565790 920939777 943252824 819105185 942073830 812440416 996745794 907838146 994562053 220430161 919610340 709744756 823623132 530181517 778721318 639003747 922431534 814475141 907654324 243279827 712681472 578245396 783658538 393109019 393267818 200260067 986669670 726071128 941251982 989368144 993608628 102905397 661400749 177759331 404762434 54773980 169101712 377127073 562680944 327284694 500017278 333397900 333886205 939295021 946653403 851402829 932613346 551750314 983599837 160280779 459188691 791114247 834512491 722998421 853760875 899819155 965974331 628121441 817322928 609600442 895590027 431898748 963727319 935676715 948494800 900241368 992326684 997452355 998915895 452620653 933321929 257132734 691643011 122103668 966179730 650132773 945754659 87304126 200342403 326881594 965006273 782400458 956298171 350178466 362163042 559869281 896403083 517790618 960547905 591172988 894811451 972954247 983786828 107124177 531086326 882490218 949707298 595164221 855602076 374155852 599540460 302603690 351204138 836811393 881095220 955098575 992937913 699388869 784000599 716844655 772246012 462872814 650888234 857844915 895727045 824365879 869088819 345079351 895465103 464814226 634006762 297041186 685148620 408665386 618066967 10196766 559607054 174671823 599409316 203358286 825894258 903290306 993895541 423823203 738388987 141137262 443550927 981933289 985150355 816805537 916682340 776874103 785228321 864359956 909831313 707150537 939872809 367989993 896500457 855584299 927714117 300963184 330117089 978546451 991577428 640289919 773659013 86264825 574829876 226642539 572564392 371124877 388216074 337735268 444440190 425256617 442843698 241263307 890751177 993837294 999857553 637567448 883629249 345361884 569276411 629897729 764442905 338200165 845292524 679244860 983670000 526407472 839055198 369052321 412359030 208150818 292440765 100512947 784873154 213111309 637593657 366967759 733022835 668139498 736168784 806036761 887421325 349198872 691636093 792040984 962065707 577007733 708215108 792294794 935079969 118823794 319943613 927438528 927604720 473874294 483220561 72665166 652944242 575165217 591175172 322156353 343556853 366478947 745765366 503009415 612559444 625727710 782370000 464905744 652866657 215460905 923946721 816896706 877608466 680480719 860027298 862044948 948693489 638768633 740051688 534812951 865654227 192858385 854171822 794181901 893508240 350927595 496480541 868127301 886865382 27649200 899951099 973838641 998400680 982157119 984723600 437021454 991072524 416530050 710192789 87003426 706656455 977562181 981842420 319367961 619579797 87615753 312194431 864547524 876864240 663021719 859658665 323258877 947622890 562833044 567477960 248317510 511617080 206409506 235311386 31775218 792657069 677240104 782695008 26480453 427113891 462287787 885565422 414704239 806279242 779411344 891907124 184425632 735482266 687327726 698819757 448139315 826068950 89073956 973835376 189675967 807862260 259541922 674864665 126996377 460527875 53965764 777018120 980770814 989623854 429809261 574805393 265029428 593937618 707174656 869122005 30744471 329701384 520511271 940324963 248649568 601024478 859714150 928325000 312185978 611185442 333424664 881414070 541764166 840800932 579473731 593738461 225648049 911062204 662873856 704831474 877713769 903895178 309157075 315962443 345209865 469814983 860565677 916836510 694953178 964493862 187151472 841661308 214439463 966633867 414700066 848671480 490891381 798913232 532969125 786829591 469095454 975529830 420751306 981717112 122144214 649156546 103587441 543114700 287871930 999804616 277573702 809265371 345494718 688516435 753253642 889188475 920934858 972957142 302169392 845796906 998654562 998950853 908648123 996600668 37227881 309444873 915789436 920809904 192399486 929673704 888612958 936844036 601129925 999728120 137777873 289380051 234009786 559568934 561391159 997521631 666950323 683221769 797192233 906418639 854863148 855666491 805997548 848738972 567056631 940753480 796301744 902610371 582368437 987859895 44467121 538236252 857013235 983844194 3526959 436009739 481267262 928172784 435312759 485980244 539547172 629456235 296638911 965713817 165674518 684053682 538660784 704822351 184112160 826791963 269012783 285406041 144472818 877754517 860546036 932862438 756508572 825608051 668409833 880185578 788655031 955553020 535214611 981475794 355214831 743912156 545096832 662491484 141071821 333741499 789502854 822169508 246481497 435337587 73739232 309624147 362349272 450679744 506195631 683684787 629112572 981694816 862469425 905762272 898457801 902418491 82143238 702254074 83071795 911225252 357856822 765182090 113522324 160725004 438572402 789530061 164702001 376495321 694991378 881846520 711206937 746401200 510261300 645356636 736193221 747707055 415673926 649160661 625139913 742142811 511866859 627129058 816303141 830686610 191337390 225616373 266714315 933484415 798394379 826456553 137818115 628606969 465367021 639665017 744309456 746855387 583324091 638264447 368614495 927741318 593839190 635544044 697674909 866741869 181929519 219850330 842829116 968241994 864151867 940760851 686174480 824611259 962409346 993166441 342884044 501361158 783652779 863514512 249846826 676498903 847286829 985514865 654953256 753369117 310461910 838255369 957738484 990119696 312983984 800445197 302889639 453161134 957658804 999864721 981453251 984371896 839304835 842742728 475131985 477383384 940396625 959343886 885085432 908729415 741069495 955710860 735303367 996199398 498660508 640462508 291320248 872135497 902173618 973249203 296363792 827397646 391804575 751786859 434898264 435650355 611119884 797533060 624526174 981413855 262508441 969890210 790936470 983374438 425177592 939848754 197741116 592385526 40772877 720859908 654913758 757005534 960125515 969205400 9245566 405345370 214467349 912148178 942024654 955629695 156031082 607205755 46771640 235233692 78748259 215557465 514828437 696366883 241857775 488510917 786926688 914917354 198259682 915678597 929647338 931269581 821041095 868022541 763424 663438715 81555051 694216254 634145834 689304263 860077245 927391944 705115987 707572718 785477261 836838476 911230256 989773763 643422308 789028505 713656561 880178872 984829993 998485364 726090650 876953075 266106765 368422274 38769207 186658516 777490344 984379044 837561711 947884764 573597331 907881736 742638393 993798488 240768573 935306642 204014458 685943849 136318502 338930544 318916346 917060744 3995276 250032895 251527077 387252679 793991925 893106332 725154411 933827854 293509052 513104286 654242722 857722633 881579244 933811881 201596186 655613070 705055817 719076509 447030148 674152032 607466508 732205105 766375272 771264061 518520934 797573231 250160671 462660591 969896242 982538158 863802550 898261878 951367660 987439066 342753172 702708958 268226315 469886012 881224547 894465899 222845736 663888926 86859441 985877402 229574740 573951117 382372824 843437521 617144100 731123340 971358363 993521263 869155701 950124370 366132627 734035285 166531002 633030260 580270802 691858472 389006730 827239274 259905709 318336754 439784820 588980529 126954723 347250086 501735670 573428013 979110083 987520028 495304950 704484545 992963107 995353723 868119010 984662115 446406667 655294687 234242867 708320801 205584353 214996533 371652774 869625916 144474378 245627438 333575794 437702524 275906294 678704444 947642209 975939625 851336679 983274421 970479109 983972258 443940264 795608704 750079781 811190614 510996760 850029937 381481308 994321314 79712083 505424113 781815583 833916701 504364175 790989810 11746514 149003023 539173890 833675587 120637507 866594995 80203252 925132489 886169463 928317614 845863120 882675217 489511919 589441438 864488133 920894253 346259313 759449476 208275794 845352810 298065681 315093064 668237085 917086565 367388971 823703068 313562315 854931694 464000341 582118506 109240535 504980041 279144062 340181366 796504273 962306538 791394820 921056100 58554116 993371846 937052528 974933841 933727851 977275740 730858289 854254802 449717895 570228858 69348734 887097699 476445112 550068333 793310750 807703069 599142152 757049438 674442008 720519229 9980783 729132190 196155104 667648978 832599465 965235779 944183402 960303714 239419484 868455346 155655209 589064054 206816885 386585320 153253805 289910593 237393051 790410047 14809076 919122212 203559745 877338844 321386498 527265124 499279152 937723565 339108318 664961015 287091303 309774619 849191965 874148845 988283780 993367472 548160335 895762231 551784357 562765977 558259811 993548337 601840269 871844012 782172834 837920677 494795488 621417637 527921762 531685282 594848359 953550332 150615883 431570839 858209216 862292344 60580047 102058566 307121548 494849281 12225400 471772278 785701620 915840468 898455644 916457067 771195911 927399405 718422731 773425340 590917803 649798114 519645102 969860838 970887364 996583297 582693870 811637109 403246846 987667613 628408071 859054743 421745600 716987634 547614219 853240002 944588077 983957968 953660629 973802716 384856462 818165114 241275939 732886778 429198134 968573193 695785574 929194986 75033133 365524644 854163115 904272420 892826028 967737009 628730200 996803540 761549504 804216009 889390950 956117119 886171355 921603919 69519693 717923183 376942367 965878151 546300875 635977427 418072341 930382409 228191485 876510643 495986246 927982484 989941811 995787554 737893326 784064177 283521723 849407255 916759128 935320782 457359081 548439021 801069598 931773312 817515387 926474858 802156435 886428258 137491006 301582990 146181660 198968835 218223568 429378355 897201338 998195359 66995984 821248408 619028507 781012780 498858413 863436766 3929843 326735688 89596697 425718563 338528388 839139744 885564769 989233009 16963908 547546635 72572499 313390173 212299976 842467458 846828234 883594046 754276449 964508056 369732478 787441846 961496084 963731701 410007437 793447116 888180770 896282881 204471814 471237791 929243094 999290287 505645650 702312457 861999500 919032637 867539782 993686842 581116520 624717694 406404439 506725816 194198976 502501113 588233714 839037476 22335635 744917987 739255405 995314898 168063305 937703814 883958409 992904484 338453371 908469861 505823777 955650093 318665144 460139466 30167239 576480979 539614662 903483107 710603819 767163793 856378075 874551492 746310364 751613054 157969189 715962619 132055481 433274923 237507082 604368286 20839389 751088383 171136029 338682514 136889647 722751289 745307672 780882737 368815705 472342352 872360869 968163929 916719323 954745993 216860051 682806065 692231976 831208810 857953585 960494354 721616938 772235901 508693534 671784133 656189318 912593193 433216810 778635887 79649963 805791290 981907067 995827203 816558691 911181835 662106376 918779212 416942450 826582904 286560016 799675986 96517997 943274121 340756776 941389133 589423956 915635837 941344750 978437017 27940186 127151519 833867485 997808458 647791209 783696447 355839225 627468541 68829516 290268413 96060200 987141750 48950669 569483203 1929046 569132838 379512543 408833209 550006019 556582321 214045009 370650569 579946752 625670817 435447812 931003003 324077573 967942798 700542056 958292490 278473197 687727678 326770062 645199467 47054128 989194650 12422761 301438218 682046853 942557376 85803789 867131394 245818838 812978334 45153865 692042263 906918439 922968073 439740020 612300700 96502659 831176587 508919152 677078602 983623555 995953630 388040168 500791028 774061115 842424889 552976114 587979407 487108050 553186501 433625472 815144655 416691800 658598133 987519076 995326715 49802366 940843622 251697733 480932532 979310535 996147033 818462799 904692411 725842479 922016246 344994562 648705402 811649748 830268047 705854187 822568412 700878612 722558661 774671939 946994753 710894054 935388572 131414999 866042902 709358884 989966171 77480457 666349513 524700826 534006163 270282592 278418921 990006814 997472185 715062657 914045523 903279090 984131799 706028039 721045067 546452105 899738840 351769382 689291343 745518569 850498440 108912909 822882091 77443014 257760862 821960144 990287747 464238605 624580971 227210753 503187603 579903720 809573309 432107107 897834434 991327016 996662335 193510285 658909609 379895222 696973541 30900319 129902313 736919519 870997778 32278011 78152138 919817223 990096197 500562426 953217624 352088618 915796688 454455133 674704448 382098563 444138730 524415249 789545773 136422487 768366083 520889007 940433649 902483620 922945193 298555571 728403565 243534502 565523952 371048220 528086227 475434185 738944920 351647948 614224971 759345415 921066063 11512250 653796932 637332529 707825797 856307556 982574623 304034233 529773807 485559946 615713873 694371510 741024508 358305316 823785490 150993980 170463233 931270251 960975809 366692327 377592974 134147829 977188404 989836081 990601657 999305200 999357039 461134620 876891892 100706069 996196962 214282582 946789202 586621924 803176438 50934188 72222944 630741366 732309841 150614290 252433886 564723664 864961006 190765933 357575922 353307184 552241064 119492347 670751495 866266494 916486751 290279251 551719662 453939753 488877342 506487109 790232733 943366577 999028057 830135234 899550335 80164093 128466230 434729197 769720879 585169597 831449425 615232752 831329526 789740940 818978941 463474521 566515094 604241165 926641516 720185012 739424677 948044913 968744608 980392757 992591961 110546098 348779818 956193944 961699156 114771704 820878090 260906146 864510853 41241741 599592241 414784599 861041813 46184790 939856358 863086820 989236534 423798283 901111996 467179427 587761461 65349219 298444044 777131886 848962096 896493641 927264007 335792810 766008290 979877793 982184647 738149669 835103925 54153948 73217462 338217795 740554102 836650449 994840382 432315575 508762286 696124273 700562226 721457612 845187938 822594499 926868389 651920150 709517524 522997660 590520718 336879758 850923969 463772120 778866548 805897624 949093199 818767614 891693238 363448871 960137343 141376989 339414290 378106698 630597031 685519899 825739160 694878673 735532639 804295474 933564010 238679631 496664328 172107665 188725800 54679914 315167853 935616988 996297345 203817705 790831986 118875325 660404800 249936930 291309821 256890367 590659216 58090858 712273251 260672262 777517494 768141880 785761859 764946536 903124091 398082068 927976863 982525856 989114629 535388196 602432332 407657503 478476552 22215976 411531005 442345364 863446344 376229223 733020101 79679823 936849819 416477653 923665400 905167003 943572869 571970315 940961655 339417216 957533167 464657687 988791733 514067745 806822103 914349957 934584779 934836530 980973947 147779028 881803233 984939957 989491283 671130383 678660197 104388492 377846010 740640263 980009022 467715242 858887236 550757724 763354565 173452897 253098160 610250462 745436556 88935272 837533331 840154997 948397488 704462757 863712897 978685371 990196127 327223584 423829215 527834704 824724499 193801009 710337502 469887236 626618331 745198669 962426215 169639673 287089599 592785073 858048299 760495421 787021235 60454064 351062109 247297143 636119486 518570856 534886245 63947412 838897926 997753515 998793643 91918970 395889147 722829925 727994122 604567023 770552493 155574151 934370668 92290272 513874812 17064822 941139999 430408010 588318503 123071111 871610496 573249396 652122475 908527071 925091882 386447277 948788680 675132044 702867159 651069815 963485317 854935445 973548027 414340648 684300990 734280886 908482335 840419167 967462195 888773301 945043882 827631182 924428022 663911876 844189715 848429180 908566629 55828391 862963951 173591275 599057687 132309927 598794464 137245658 915536525 413547798 539105324 625107403 959049558 375391514 706125130 606901509 801859676 892065849 911538858 175119287 216916004 527758935 571336334 656578508 827116430 250638131 900237430 383957438 829992225 577817296 911991723 77924774 629827391 146406039 874317036 362531942 532772757 924466844 956691202 212252110 422730928 492666566 819546616 794101244 906746833 584503749 970855627 862958929 934967907 741564243 864462407 702989365 739823066 114935322 210641862 952891540 975859164 790931846 916740260 454459401 508517501 355582042 821612998 879259559 915216864 831537615 984340587 812516951 923116222 364325026 697291786 128700607 356276471 808374311 959260019 608690942 932893793 769413310 876748247 24298297 299822742 924489804 976017574 812162269 831908968 711938659 956531936 131840666 958990610 159395312 295450389 749038931 841719614 521588049 733006045 963925085 992420144 753969021 795898705 210410954 847501929 594582953 665962859 401860440 440465595 591881610 825308248 533890813 645460383 471509857 603665335 512344417 961207226 426794902 865502809 975328040 984140078 259359073 975779732 357199022 437394998 851651065 884912445 816316648 960184277 317753295 406912143 869400270 982311051 706158289 869426100 799344661 898047816 317822720 459358192 376475215 816868631 197088280 730374973 551875006 835271184 291707766 951607739 479017945 511860494 9335114 299741937 340834683 967574177 760388264 785351663 597963830 775195534 98742621 882517763 864610271 922396512 699114775 727096573 60529600 244728586 967270543 972719991 950738492 961541664 310068932 866388516 668859656 963070718 401391052 914143773 679958232 807005470 654044501 817768511 241392539 399670119 159082236 252675241 250327149 920900455 751724370 782143352 251889708 850892315 837272070 915837340 289954723 558604017 633873203 956537430 900961267 909970711 268707294 349241283 829947936 918362317 859845918 979697809 97723906 302789885 462586686 790605167 378676507 960436731 990014234 992891017 679308189 733667612 237397413 651198188 171316266 948113242 488313543 708129982 361306328 739446683 511036074 631085079 504740416 564607915 468141426 900887692 718602117 797747666 91198464 977592477 396088847 621590581 912129752 933304962 255382750 345005397 690401116 926436044 901949070 999579800 717953602 837078412 945058939 964675587 126097638 905985987 417911429 823487479 530288984 991562788 114609156 576154090 820468211 876185710 122920620 969257603 111936506 367564938 84620995 745839685 174080982 318213620 470033114 677240111 630960123 951781865 881600828 915605132 987557157 993968174 84850451 643502760 862562581 893215117 645991325 824982073 371331503 702277359 11564444 857032482 255027262 572244853 273620349 455867992 606353368 875231988 643908249 820734517 190967877 490799413 690186147 692170988 86337495 958048795 296440468 897697915 229340131 832728485 266865567 452394050 950976918 958232322 836536719 971172891 782956341 906319431 632947382 755707357 354503528 867658395 263911486 965852595 764068061 911017857 270365194 998738683 260881011 803462200 152765975 225885531 203657344 696055806 373932662 494345247 257304638 394069303 900051521 992862604 429424740 855159178 610799380 983537306 310407147 893132051 797407441 873943147 30568027 786709253 189674824 727821451 563350053 750537293 689291584 838040557 90436577 525922849 86687535 342352137 883286149 980500762 634824527 756513884 848823358 877283984 744927242 924991919 941713393 948583400 73577638 730575311 333099021 724983446 996141275 998788129 371208350 813753050 958608459 992077449 653676131 851834370 198928673 725491193 206836552 369883176 640816953 795510030 767781966 885372830 164972819 951604366 983145724 991215562 450434655 501621527 717430732 724381463 474213855 490847044 869317253 954864577 762941830 901618763 975987399 992241441 135304728 588258970 744242724 772799436 975371365 979182653 787454757 869919992 263680389 366051755 298575241 315287009 451445388 503375605 535979584 819952558 784504203 816290129 757854779 771078093 869049839 955119192 44186431 80220030 837844576 972453579 141163805 914925413 601220474 705967504 702709841 931496166 607319998 924631921 158435426 656485406 114018677 424460912 215225930 983532101 963573964 965320376 842521047 926462464 275255226 556617858 399138702 665614564 810009329 885639017 412501442 494842316 755004011 848704041 810422883 857044154 907980523 962963304 696260003 789802441 689734300 992808183 571842597 632768875 282171925 819948362 114551048 496832113 781882533 942153630 243827503 385411421 984350502 985339226 162834380 738237006 169649797 929654138 661441359 971019131 738762443 746576423 408456771 795198197 495234377 674258360 438061324 839129368 958592203 987800778 999273752 999487390 573199116 918598154 449722811 450483890 907066167 916729385 590957030 609474909 166591033 729923101 336047577 570181480 684502463 918260823 869819078 907892217 160719898 676927129 385250743 689632732 716680083 893298927 23376652 777520079 835574695 949880935 620491435 751057025 202417388 216703596 877154041 882580721 145225867 346648224 524457152 765653150 749524209 761781472 245218568 998831492 548881222 745228162 819042947 915121830 380007543 596465615 297816586 424129728 115307837 774078304 833512477 995836665 597304474 708054799 987899711 994446961 50225317 212634584 225075173 587843300 442752747 804567879 611303292 710138411 474484948 796392445 148635655 413205582 638173230 814907439 597714481 828232883 346976083 823567766 420892755 671941291 375548271 377041615 988928685 989180105 695176099 774196467 140632498 364781369 840345103 973020667 176021499 306452020 837549495 984038251 455499922 597431335 677838066 679352337 337926290 358335382 966855849 998358079 117807000 825068476 728969603 888146178 582760017 651540654 176045948 549413478 936727252 971798487 994114012 998214837 142233060 918244273 144535888 562026375 657295410 803965985 996397468 999985378 739971704 821302379 287227119 604337480 373369852 798320927 240110602 909336267 822677032 909796877 157902113 591965679 382729370 757061832 860955154 939835170 650638858 855255269 567023187 934556141 884152369 947509855 265119871 789906246 611478786 634974156 820477855 876527223 163903257 195452921 235384515 353600522 612993828 691607502 309242376 741672755 270814557 526932748 360324204 562877763 659705816 667280842 843885649 856687312 678954222 790486169 136762844 478797526 815896441 908424389 225720567 569391318 812055742 962315322 151538344 681096115 932714683 995615331 899899212 973883859 837346192 967933764 213860023 657916658 884182664 925402561 227173434 844596701 573458888 599296939 309193994 599642764 183886104 962951176 161494118 496718469 805021199 806693598 645132888 886448651 290598141 961814847 526300635 600847535 666464478 825222971 634757547 790344960 438019586 663301870 707351262 967640362 166137633 356532303 449234464 519420285 152434713 539875889 579958606 939598253 6284424 670830358 368694099 370845560 262749686 852614040 690381683 811742727 207198682 278985937 83576918 242089439 59846757 990109537 780104081 792558018 169135661 872888353 639928225 917922554 431951360 996644582 501731395 607424959 14840494 98529484 603588312 631970826 963445754 974620278 297507382 394927094 27218546 625480795 143734147 938626690 586821688 922277814 518480102 913017670 65538945 778827463 672829833 815939689 421064174 845805879 971351428 973024423 430220954 913165829 964867619 996224281 519432871 729491408 261170469 328024942 481081546 746821627 153221704 831475822 655141862 855173919 178530055 240953013 190809705 497507827 301517925 824642622 476711269 895208816 901453289 958643244 188371523 708820785 707454235 872270384 965847578 979813000 606273868 915379526 847121597 964235099 841335072 899987080 520799639 967156135 827982736 938777576 377476146 706831821 599606359 927694052 881293074 989227104 297998724 346326506 231012466 917564622 446823593 598728509 354482654 931170770 321012043 504913900 765759630 776854655 2437869 733318165 798922897 870518794 617603508 874519086 998382870 999187457 425427908 527992836 30192547 52813108 583493375 863272508 64824037 762071662 441604934 600367039 120058076 573592867 814685965 990794756 578391199 953955216 566540912 796330921 143661436 991739111 119530830 452459454 922239839 940050004 412359977 819590031 957548811 976899533 207030017 885709266 68938692 668747154 260617309 631519726 394981277 787513218 541405181 890371566 225263841 444249415 852654939 908058687 126951379 564802455 839248456 947857628 52755201 400556061 375099994 701373545 445704329 664371153 975450159 986050540 594001079 935163658 571793523 606235924 942862174 962437499 153563224 681758403 956531861 972119696 417856862 715920167 962175469 999887793 665774720 884439807 828282368 972726035 309938954 352622874 367106152 736872199 713083673 922880169 824772166 950826128 903851162 966148482 912199717 999691145 326596972 507129295 792847009 844398517 637406857 872011540 753518135 914835092 641955410 869816428 897318580 982479752 853966635 908785230 161566719 215801402 338183920 639348246 84800783 549482489 369631003 675670591 527588520 919489342 978633638 991478991 161730754 330975686 867573255 928071004 530005127 621590347 497413625 574316178 365802289 669526240 362118873 958999928 427540129 580172686 276021684 913164263 203512696 418229690 132517423 486663446 176996726 225075218 348055096 930984286 599293747 964161452 542184073 562547529 768374876 954609854 535065967 805349761 82103682 642814905 374210059 504249765 144860993 822216702 698656466 898396183 448132400 595480380 825150477 986591759 511486051 590670204 513098840 765001772 934362644 974760166 109963251 426550847 108766981 527692770 38067901 969643227 73394103 618390594 992355443 992669576 571003968 586927865 360771961 767749589 996558213 999510900 925424 819800345 119580780 608786921 206103720 778256135 235549014 638567149 342083801 384739517 280449043 908233745 97801634 515153881 752691803 947318343 719278784 820731469 852745829 988389496 969205717 981880581 812609107 854012319 948709556 981996832 43403261 878825715 978838990 989608583 455978905 482847135 621869941 855954204 372676864 710941768 333978222 779579670 838413002 948606036 84196074 855771221 643685833 874653950 308131448 426577848 41200788 62138532 972498728 980828856 158002589 270884142 566034851 707070777 991299396 993651597 810846863 887778176 575219958 963157921 611226778 732475206 579216528 594348939 904872808 932334274 878417434 977739800 222043954 904672826 431982377 924668061 471347471 849371899 178075534 805826682 826849967 903627543 745518733 949530309 943823309 947335833 331887900 442738575 599236502 939127752 849738115 865694382 104262399 892938250 160994983 824204799 124942328 860356531 103597867 814795950 266328181 999795201 854756466 987958923 285541785 563597379 103035396 505693453 927361599 956695809 479485594 995724492 779928823 960834972 207699631 657659692 881393224 989241227 121868719 377934113 547952120 743141591 912652587 936480923 423991614 620259840 999686996 999750706 521427944 594136181 344244588 424108912 444600516 671498473 666408288 975986541 26770762 82140815 693345585 976306730 703010262 811023442 133920340 988901875 338816888 586487873 72183673 458463820 917704246 934823282 860698001 958097111 664160751 843284588 322210135 981818468 739740284 915344658 472020082 779947145 791064771 993523555 904202694 976801252 506187109 533022847 774654505 791843580 838590370 949456413 805086894 868559755 919416585 990483603 173293714 504321598 430259352 898436071 479870727 867411086 420414724 518702344 121182545 263890279 997650525 999245332 388975633 809210880 665727392 830511162 711951038 859983535 93329094 375748370 671592491 839234317 117330818 360558433 117997841 429234427 796652347 928726167 295116157 419657732 605544728 885204229 190188618 864798369 577810273 655657677 133136682 618870772 73557925 870097755 610437242 697109469 965837507 974972696 332559701 648709920 805031333 854297526 892517429 967862741 927129583 954451979 758577300 882713829 222312852 851876381 743771280 996395564 181801879 820814115 445474157 711683022 887746625 893733675 426399645 797284611 450779563 720801244 125607750 453627778 215441829 907502693 521885525 697756547 128195053 559685641 968374817 995065046 326670901 437739176 342702926 659713578 152341235 315377889 802603726 900095544 141585916 228555172 990695346 997276816 433444270 538514384 102671932 321366263 332446682 967869934 585738068 889889186 779089676 929142745 265597266 934529173 679572207 895747348 181207031 531814356 346143949 683206369 653477252 712911876 914697233 980713047 24447421 61696616 54739102 955788833 809459393 868752936 551870461 824606233 965891929 969784818 837043462 882778083 825564958 890491781 670427523 820794837 367013490 824117095 196462442 880155694 861693709 947727606 925939629 943894396 417819286 717168892 690933119 736246058 774524522 901773929 807716391 937976419 867843934 964744024 171123070 607677719 901868207 984578339 913210979 987039260 492258288 669436666 482116757 874087831 661648293 673657884 460717586 819390127 53571427 970577498 385318528 985844643 216398737 416846089 576197809 886362162 439598614 984592976 443027815 508363525 73690817 727015598 292919278 597542640 411675953 893062070 828702819 925843224 596922402 668496413 334131502 675640886 621238960 896602415 75325964 378401703 375482884 661715109 541710953 648152949 774373525 873260236 786340628 814513327 649414816 712983521 838741009 903002618 919427276 929212651 562846337 807234571 770092427 934187811 874777060 918340708 12960483 219547057 879815720 999644156 524712993 844622769 32533192 467847051 406902829 596992008 600621892 606990303 132710021 277539279 143417307 743843188 83517086 948478175 939407403 940400372 605510742 639591882 798233032 880690927 488109224 689463506 992288710 994109183 190982153 195483970 906466828 990650414 503025430 854108779 500565749 711686505 741236152 948395324 293863680 338556892 989831475 995820501 578759621 642081555 413836097 678050178 106716059 920787675 206080937 561952429 621011774 777379938 7920813 48364474 883042697 967207260 718089052 718138579 346619800 949990318 632305001 705309681 245935689 775247645 331575061 833859048 484382959 806709451 315999973 568895082 146227951 511893497 159995352 533963143 899959536 941678936 101076693 607766517 452424426 616209433 516561340 694880720 939600438 998768591 217338778 319514489 869867262 944047871 885957321 978526211 478272292 721523518 980667115 983109355 534249421 742256224 100524496 921296593 144386859 188027771 200359715 595012007 470520500 851351068 840208406 922145794 499454306 815259080 214078780 628184895 342003766 994924024 978801033 985676103 383267407 732511422 226114491 764733269 850287622 850320128 553021978 778682781 973870166 988710540 898671998 938928699 216431848 758801183 229341614 291203191 814863153 815472816 260290415 813723701 680332996 849283591 824500372 885976614 47417777 828536816 395959041 906934613 192177145 906147300 857786635 947808345 194489878 557244327 682959070 964105341 904022477 932407163 625203653 632399166 364176287 628211827 895004533 898489002 773715354 978197075 695007624 825820370 579604419 890195025 612415303 872927115 690063472 694252212 116058708 710331538 717488052 958883561 953229943 989417497 368349367 500077850 285953522 723164732 651626717 913490117 988654245 998314901 697391310 782973120 815941360 991767527 785038234 841939096 216977924 615766733 602968978 975989879 842477385 861970793 633811539 662589690 769989059 985670776 756804237 832203856 32562918 70087114 323918691 982144727 949546044 996458553 80578773 308158486 35871462 546433814 394982131 829305369 110630386 918422012 37585354 875955683 90349590 94392275 289243173 846032959 193608255 643146780 137501258 677205411 131786 9208430 171451787 836102500 809319560 812201878 22907318 238052567 748091516 829337589 992335325 993828660 545379512 670151391 956610622 975945596 576483849 949833433 770338134 830170164 255285925 625500412 200106403 245165309 898057574 917784312 242176164 724383203 175646076 427570529 923181169 929741490 618436426 662349883 492436904 990928567 602847307 942913044 89595339 964668516 664024244 904401269 97932940 394288280 188986970 732120751 149705808 670603353 526852338 528128899 470296235 644535074 142869390 941316686 571576631 999367221 888431693 928942434 385206388 838791197 210421154 449854266 578064445 693723622 893583321 984450773 358277425 957842779 599907571 648816570 907126822 993992640 562522525 858938526 758961724 856557314 747175718 748045909 690549202 814861813 419922943 530999116 250748210 706427639 371103597 993646971 251274592 437196923 406991559 966067167 615913150 840399507 814683741 861054300 78621197 193764911 554381844 589834774 461631202 965761387 102727996 136840615 61292881 571683620 577704686 882423484 139794073 284957644 984596293 991844335 966346253 996078235 592361218 806484984 688500569 807157931 610752084 876248821 920234571 921902850 986158253 993754103 403005510 814408608 234576286 584550364 696301894 752250418 439804825 674524458 305802890 894762100 893167715 924978873 542972641 666073615 336816854 505656679 29200716 582850818 189108945 674981101 951198894 999320269 322221517 454067635 288675222 419643863 340497760 495831738 621480190 848547221 171896259 796738167 852661682 882054393 897054829 938676007 306036261 973393213 521004769 603567707 431503332 747224136 173116247 816623873 152001 13065026 179059326 912347388 558082637 567191944 659591478 761319589 400577923 562104083 740929829 872081053 492313882 968819579 326817077 883610183 453150458 589879713 159654838 310710495 242660059 623218178 198470004 596366757 529706864 627174066 59947852 177358683 703211939 837236154 992708675 996787440 669623061 825833579 950961947 957385587 599930099 926409563 438818358 726792679 308617820 364058251 449833127 855265233 756487105 967169386 795877327 796309780 363735800 498837547 27549909 537275427 192790378 413852653 263119851 552504972 923389429 949048635 997139329 999222174 797548994 923586475 789195693 909490119 620666898 722833341 769191313 795249656 872208985 969983496 730155476 823885291 135161519 592334650 840448487 948264365 756899445 792761815 252060136 538909550 381834026 605482618 527492788 889995460 999463543 999936877 580385676 702393151 969938528 994031895 4218734 127918310 245898340 888874910 913352049 913465308 866090616 944958629 496203557 735773784 798638705 945580314 805948588 832148108 497014250 566062151 975345999 992449729 50907256 381744145 174096445 954102095 544721496 684536938 932496029 944848818 640533838 886334665 702944395 810452243 789561245 853609064 266145750 544964567 355169104 376277109 685493491 937368918 869655936 979651676 935196907 961371118 966272106 975700864 354587394 897075173 966840476 989623509 932676736 961064030 655527631 708343339 569365616 932332688 522016306 808813823 677360671 944878478 662097013 761721710 178221875 822990731 311563532 743829470 986044396 996165718 817783433 905371696 122107810 323894627 376246533 515223568 952872690 963006549 163931580 953872449 956419913 984981029 140985683 818450416 667737121 730324602 614762074 675037530 753867115 978120002 221359170 575240446 832628342 968784578 109679850 273228203 16244189 919379931 78496849 746956506 906303527 946783767 416403597 870669679 451387388 906112312 829691048 894832824 587513249 603163903 996790469 999887650 773311602 965515319 687933293 930092222 890972018 987232256 499790573 611737643 272168192 814784861 834414619 876902528 488156188 864070670 544366027 943954215 464456146 595168648 262018391 262529044 59554693 557887844 792170457 850333895 218275895 984320956 587515573 902276898 125190691 195112403 720914192 792080439 551305732 971060027 47411630 665957247 689421703 710821745 295573761 330061663 868119814 905618780 528970262 931966408 394815394 816582529 220242283 376009218 392059676 598646654 36203583 266615205 206370859 941484578 700634656 829585847 37545042 336051574 5788918 937476406 991735143 992152037 951186600 960245030 742156887 945453298 435603592 451912297 264272862 683223518 950676254 969482999 738187084 855837129 835836272 989907933 247283762 830404258 23423135 430233076 943464198 996547775 969959427 992390017 60099116 737977722 813095799 910898020 791800311 857136531 463461540 909628038 12491483 912010646 442231422 970196627 57806961 471303697 736857294 967467228 955843107 962431427 499102367 938599490 374213620 787543043 846757203 895194067 519909698 560099284 819218335 963892935 442564661 857719369 169873212 770889470 122873184 562267051 538525542 839698296 376191944 695028107 160733786 742085342 1608486 760736280 256762087 652811527 434142706 526909575 691320991 729153521 179326451 180789552 708616317 947921407 131692036 320531755 684424025 721060130 92170451 543885951 154043184 582915514 967741077 970083720 44902775 214016802 195209255 446407881 341201463 671779464 511416284 907642439 335348134 961985636 509662258 692965172 445852633 488005742 165998860 970731433 788151394 804027905 481564599 611937154 625643089 704624299 569188860 800846023 179069412 569238797 540865537 664516448 969845097 999269612 106033651 379126365 182986433 262968215 251148802 386775129 803172313 933503468 375459470 884081275 826259239 986565485 419730884 480306134 913144358 982795195 825150791 962303087 483710162 813086133 571630774 718190780 295822195 586598636 418412322 878471115 918036914 984525643 975472202 975961268 936408045 963660067 875648277 966176959 317035623 538162138 625826795 958583954 112094432 737612952 110168053 696174602 929876894 983680284 188509989 884886209 427566828 930264765 399853771 542491752 443464750 860983182 913089906 922246141 764626454 804050956 126388640 251736537 206263678 220342209 746108827 772628276 202685236 960059350 502154088 617830457 105658887 863678906 798519822 844706443 601948751 897554155 175700504 835044193 157799869 581298510 581992444 948569142 455042754 553805944 44292211 144347358 836956561 896668854 569382263 654376439 19511768 818830599 228502647 648260654 340646566 733006565 987927062 992307807 954777453 998267020 891022066 902281021 916919399 995657690 836012951 850707920 680417408 868485444 959434900 962216540 295869286 317543826 762473441 789095905 32199103 696872556 723689836 923942211 738824886 975738957 555930184 864868173 206968556 400357050 47176092 527915536 9284152 284196068 322987 759764072 651525084 999514674 854164590 935055213 331771998 836896348 809368271 979027247 995515840 997580418 694792532 736338860 742865618 799122476 125463522 632532303 194807683 317221078 904097075 943348748 550382594 752592819 201559215 231921451 673535129 679844205 73396521 411448181 656483625 977430925 738675032 812506809 218737939 221207152 673456607 885791390 908538088 994319325 664813541 768990141 213786583 741684365 187388452 914965099 183954780 463944321 12092808 378680909 416553873 485291475 68615984 646841077 190486600 958589300 780907633 964873066 406277642 468902808 334312278 684096510 852841944 989139327 133758388 845674656 798635947 846086096 272615699 373455517 594397382 829524419 643849346 862280704 769503525 942784488 665254196 949577074 594697028 775148054 372588379 612567170 866602235 966781561 452641752 627987705 950261826 979797150 359115744 584189141 561929159 961252187 52369743 99095793 820778269 936316773 101088215 181748114 792633635 922221909 589722669 592603745 220136014 817575523 235268763 928156600 485747065 624443952 171824851 942556858 531735383 702289455 843949270 854593355 959552955 979953659 357830908 711366215 81944081 829887355 731904683 969298551 398290369 976666883 678026368 940650384 803141426 890998110 30841522 604208763 358414951 817978255 566936586 730855800 954588467 974158977 170740543 203014257 351671024 382774311 302485179 833120604 807303150 970237200 535959871 547046450 241206497 826575129 87812519 920813531 412738876 496112462 466331281 789029869 264851315 638600363 344700172 855289915 627439285 693917117 679346583 852792793 992192283 995062927 135453996 375756881 856635023 944995040 145609170 325099167 748676324 854813326 104734664 980590479 144056398 190756352 446129087 520678546 492954309 691499474 643073063 698175076 279671729 294313233 907433473 926143090 795289820 960585999 808210740 937069998 994343152 998425453 996059458 997910754 659919611 777952276 486272329 540540469 728412134 904370479 641820778 671575939 972768499 980857906 478387428 736883567 738119607 973981476 540377606 740160523 599151790 953300418 340082844 930271703 982261029 982706030 132227632 973656333 900762467 959583921 676110049 978037473 608695578 716868348 529904750 990721491 407244996 774479283 465220191 554911784 337812949 981560956 366095864 987911916 658663564 899580935 236745140 366989791 721947155 795286316 902644796 959801388 363261766 804535887 798114717 866704170 421556030 803525914 895402525 959583437 834904393 875353688 574370733 785008348 863583219 914888444 92145357 635619088 261863156 510780134 859777651 972132754 195558433 697502721 691815601 718543964 842520008 979940086 817506595 994534027 562961775 981552661 835569641 981021706 761856404 767292268 414917728 667707122 980738474 987320470 98501686 744242452 607043077 641214990 361733304 641425500 416443487 947631001 251320018 547852410 980490464 995826315 43883803 211657788 38798669 994808924 125382300 581692646 492501982 497913636 593656735 686468533 409016367 882873210 840847264 891177052 173861884 840550282 584502645 811446304 836353133 875705254 619676153 691396590 919526429 993632693 741251530 934332280 379480121 789530946 55826140 151172169 732519698 855087175 301149969 432113499 777813204 857671800 665257969 992229068 888923403 924483762 709044043 926581790 354463517 931901189 81603302 206545782 411576510 536683599 480461948 858789887 950247851 983613066 644797697 898262179 60512317 387090340 845632439 932542809 801632187 885132014 548809179 720932987 470954140 710765793 736351771 867827024 592026566 743598415 21784238 530438681 783125217 999274218 59045651 476071486 992462682 997511288 776494357 819357759 814377086 858644384 842493287 940484468 847588135 975324644 262002192 463660927 554387015 909005729 950756708 951020782 474030877 851813575 231343771 397378638 977434874 986292544 810070328 844319603 763058657 934194054 861618075 976273853 438945118 570346047 206449231 681080801 635839686 836840299 154004377 331029084 907760620 931822903 496144987 520673563 284536372 700865123 359528945 362679321 715046687 940186013 905555294 921630283 892537466 964929202 42163292 912395304 460889192 955910457 984667419 994705656 249621417 979933628 373103916 438274574 524829935 579755273 988028912 996301867 903570165 965549348 59998051 727186233 110011486 379381459 11686237 644390732 643419778 859273015 544572851 637645981 912943231 982515526 380656418 844522221 836191017 902650027 12851612 242265931 688347516 857295518 72865699 180245930 505251996 824246644 255342369 428960258 63634805 613537559 945070591 978329744 835993092 878326054 97279238 398772016 37073299 219815376 754699901 884808825 281510713 622448485 676222657 715424207 518771988 658342850 970319502 988258536 162811834 470024490 256504946 768357950 126823890 299117587 687645269 690901321 575969505 744961817 3360796 335429278 469394807 857940138 166588420 202858837 415828899 467869072 366212442 454014915 70104365 851815143 326957701 925788501 59702466 647022348 322991744 765961704 231343840 435678443 793614461 831084235 828101556 878660853 651844040 756210928 797662559 855711476 168450264 595034496 368635514 916766297 308966081 974598971 152568568 487001054 99918551 438427166 330904317 353654151 641672886 965340185 317565700 409946844 294855698 662305129 4274390 695189255 314319876 511700469 568675493 611766340 296437228 637346374 624649053 861131253 705131265 728901652 518566981 876084596 204452361 755554322 28097123 640083603 77637877 969911004 827483905 963119898 615108083 747327510 623800909 697951135 630967114 649170086 121600168 991958735 848112744 995507006 50301506 868329246 602694511 776499165 89539001 223895024 625860404 897557233 601859358 699796919 474643409 886111653 61226603 624045131 301915107 666291990 612109402 676200403 523645745 773214937 562677874 580141378 417011415 878742171 103569396 325377796 114605396 220871389 542091036 604922157 403496399 832844047 230946033 783396996 59917470 134514236 537732353 916940377 847059609 995540578 350747481 630649341 45155840 254533158 976316905 993432062 184950879 322772001 372271456 766235941 153005824 657401070 25578023 208781013 376891225 939896130 508642950 800705445 832768320 943136184 703641181 968263335 395773933 405345785 530712120 981610337 503794372 928105129 582453000 906825177 391534543 475041218 18702233 580511797 173568364 694465494 558528123 910144651 123690797 272796985 798346620 955353391 648533115 908581750 265750624 953560550 241420674 374344546 206290156 633466473 599767522 746847738 386594556 532117810 178808724 362684028 644037244 915782061 71769076 544654870 615603039 783372225 887850421 923982980 293405031 668336450 470910944 869255318 572895725 706534666 11814411 594375207 761450670 890254053 560543447 589217911 776199417 973748431 844380857 925780147 101961645 743353163 804306842 989373714 266924882 432859667 660806451 945327262 134643258 472287258 606619797 639062480 762222238 786597109 576737436 820757456 623895193 661714642 607788541 947162313 318256272 707263034 687158120 801775270 894739535 921637535 804055367 878955614 421989146 787033621 35857463 734752624 761477119 846521353 768231672 799310419 965628791 967880362 15668294 211951441 118986033 642798275 748521812 807193228 173182041 944880762 616487618 728159336 431166328 694081809 476780339 544191631 924921567 993297421 74310983 933511364 415236452 744977282 190449553 217311831 965660503 987854534 765112196 796479097 118124031 214657015 252155658 495909819 241159232 423445085 184185014 764167928 952630744 960273904 325697364 381961478 724069150 882850181 935960290 937239833 695892331 718727655 371534742 960399335 834095164 947894511 301095076 425877003 865432739 882932767 744496143 896256443 621281745 831631591 822276995 888102154 404792604 967206084 814408157 857125714 824701564 946999054 556070037 894400614 302774978 646129882 800226973 813415514 931122341 938502772 14349737 710377794 508072999 920583764 636610429 941490586 864685986 900694127 791729453 986103245 889020422 904081718 553123671 828260224 181385740 366565491 676040887 720856373 296470866 695566867 902583175 978444688 870765939 988960231 875795498 901046976 416370590 590172847 780690585 815697794 576211549 942207816 277691711 370493770 204055525 689943889 68531348 542765538 669743513 821762526 684322128 864641789 306950736 786832556 36758971 587304031 125098370 185316706 469936049 847808857 845707303 972450066 13539878 421594091 422552707 555756290 36794516 724085033 534193204 867496930 73530602 901481286 984370369 987422399 599054204 744152293 416878034 456610359 829528621 995381883 3588157 376617230 262693726 708336922 284692850 986832312 103176483 950967243 39111039 194889895 481640718 949341013 727380517 815969731 421738760 799083515 568660463 956668512 440123534 957428374 510242907 832337674 386238572 448077793 694744288 812397745 187845150 779430224 339041777 404071364 336376685 684855340 816153688 864359986 317743786 336131567 334348576 336598141 360385403 842735111 200920795 396736221 728767916 737105218 2968184 543143974 420513808 779516657 71901386 875275846 316675240 549173247 177630803 657572997 389682012 775304969 165750463 312050755 859933975 957933488 262429960 858059222 115117709 854731535 31241440 933836787 918554526 936825858 556298204 841207885 739527673 834476152 640427245 950761151 6833490 163612923 123127860 201637316 833642124 897298543 907819129 972045285 560759543 963443527 633309878 739059599 90402536 343192198 438768957 731322347 265878579 996804542 722657457 825914858 153982859 850349183 861784517 976363874 487023777 613842675 363888699 873143314 736309966 780933540 548897518 939800760 805058597 839241094 852640483 983518369 9729281 581375518 910936181 940844536 520425098 857747270 105207875 468759543 565005065 861412312 621845285 941279682 521303640 766970840 93318298 520212039 311925705 448855711 840381020 864457027 530703958 635478819 79029551 315991309 950086751 993895017 285316354 922118582 165065857 582009765 604662351 654278802 68045461 144516403 454546260 739749970 314741555 508950768 311388117 465453452 661127702 716877778 381114486 516955527 98255767 149556807 532200290 954383281 658136342 963910368 660484257 974949002 41680250 908229359 824973622 886058865 444111472 576204069 96867323 97599124 686095704 917856907 363215061 687922916 369645663 857489433 123737869 430411210 641350565 985250193 674070626 775196710 711952824 843967539 23091266 522583126 832570601 857260244 735752635 988623565 193288867 503440061 495310360 784639002 363176983 435434549 743184462 886692746 425932759 888997725 527649488 539571400 39838552 871081159 446299323 699963152 523535019 674789523 629427099 724721788 370849795 532947549 250219872 338281523 18361790 203731985 253602109 480827273 937275459 944296493 263631541 757191599 167405140 699844180 762755626 775459354 939630299 958010865 272607838 283603702 692875729 743138349 20441202 493145948 184582016 845848575 365125902 990521356 607953315 829598486 551639946 834165094 187526386 489527146 746053007 768291155 691449387 990978423 675525987 877837537 46320157 224797868 200461835 839760262 13529960 69483819 757533317 856651738 695658446 706846106 174326185 313743545 979490214 999596726 916529973 920681800 460634487 916356048 833921847 936348927 633487239 637038667 508619275 587281092 95302449 763187239 160849560 645007720 288142456 843202249 568049150 572840482 727824200 783657138 921231150 939927052 146407585 650949519 982972583 989607087 137918628 186581894 62048018 793961040 547980482 902595919 555752367 837980840 345380150 781273804 144873485 765027192 188971291 218408778 685335484 953943580 282178743 296895327 321715968 982800495 438952089 871937810 920057934 961893433 861458576 911959973 351121222 479518572 443705315 879043965 862117119 913195139 194301467 943746215 428335429 671989321 308292848 869589479 281976618 326778868 612727139 673872970 847593531 869068466 526869090 985001570 127344840 556364720 9319629 835905504 871542064 897024786 427981270 849661676 580130241 637900140 119650161 409308760 382241935 835916973 652598061 895502643 613344764 918108478 762544027 993127644 86052486 182254333 460922795 606547277 107096715 178722015 207789391 375691945 369463800 772409276 718926127 946663987 73205356 602496661 610471306 753745772 943298857 962295122 86004896 400532921 171278298 437788235 326524680 606613752 507967851 851091450 84796040 696555544 980367715 991452461 897781343 961401141 968856804 991364101 361341580 363348193 86540489 247498050 141803986 848039960 635646568 789494338 353973002 889016366 413709241 525895817 73039275 94414433 383782056 745433125 530767690 858752879 807367545 865485808 568807911 715255394 996542566 999103996 887567341 922631218 217849280 267463860 464454872 967053449 788675576 886689704 277321974 560497363 896043671 910461146 18842820 649992709 959433980 988599612 288610958 506103812 650377126 856593861 678626367 825137746 703487591 910495309 989073477 993059896 623734904 639344056 363344594 926006082 550734902 707784426 753103588 863079422 222476834 842772520 912040022 945839416 642266060 938540319 975498796 995125971 250132447 656137690 239863189 471772564 459405854 935814288 308604984 998427310 921357868 992426721 192241974 975177187 367992633 932437269 668039778 936819401 892678141 944452365 45419104 684163375 191061104 975927959 605683011 746023290 31007838 420631647 243668894 425175750 491499878 624718427 33339123 437741117 687555197 713135749 665247910 772415802 364881649 866825313 708754964 780366687 583196508 800730113 566568406 738031492 214910101 536984646 982963878 997723464 545875488 716789910 163919042 568573371 284654818 946173713 613472294 695209897 923489701 933431313 656323371 690791445 792190555 941600821 415659247 962416261 279063761 525110933 984406466 999119161 121432204 746106250 18711183 70822139 545449281 586964150 911454685 988163228 918662254 991776608 604653503 854014065 305310212 589854547 683160468 817601902 22930040 967769890 187655368 296688394 984779398 999712021 485033708 510442871 139072597 679721350 700677940 819795474 330923024 607295341 728339903 891881157 809706405 827547639 124953510 851630603 407308927 524624823 671552200 963742700 383912967 749009352 380467675 980988904 77545743 705279761 151030172 919205655 635536513 829409903 957438478 985101920 703638630 749675861 107989595 929270279 938373881 945486028 93606235 985008149 989586037 991153401 720953876 726850300 47519661 171768869 979567611 984305569 612908314 886937996 631512913 863302467 234977772 780600169 958019120 979432163 611605487 724176814 183956801 919455511 775596153 946038810 796844403 913628020 971558258 990189709 173096378 261227552 608359688 694938415 204517090 381751622 428997549 498072916 691142328 841727241 698474512 843877933 750847468 982096135 898859115 980257682 279585263 449309214 406552355 921842183 481502538 929957257 720121160 747681130 139556470 755960953 57888426 582502570 227306967 338266142 123803118 635935019 394812994 654030671 961474032 968890406 855507374 919869367 252585089 401268696 105975720 178925327 863420539 890798646 478540355 816640431 792681594 885841198 286251858 466162400 695871187 780777294 858663660 877356552 476027838 684622527 833351085 948125524 993251194 997677361 955851763 986820673 606886455 712149523 718156030 950824493 554873071 594586039 543488844 824506529 654834311 984482454 727635466 893664203 972527797 982657917 935894211 991705796 723221898 917999045 353853744 462267261 784820075 820845329 87729371 324900354 602270893 933842820 928338938 946596588 539347487 836381973 976414541 993306824 462084576 583574811 613806761 986122150 711449835 911524350 574960201 918666071 268264105 864042928 933117148 981943585 423658367 784092907 695394541 890478888 488991474 750300770 947805125 952013706 3376113 651147995 794059217 937885521 775677251 908678753 483925736 643392903 273399901 377731919 958856439 974260382 833458168 871473538 23661981 786593588 114876225 197263240 936550477 975536699 556448608 623490479 332720674 596156262 650866900 777362538 695721793 927283714 743889404 797430626 937841796 973188289 228821876 491651928 290878349 593505198 639113348 982715093 629044089 911680467 880074682 987704364 813994220 865808555 79853799 239121581 967594549 983500159 482622922 809364821 855168165 984717142 507043990 778632727 729272020 904223226 614686328 756040434 867454437 938186486 80402657 144117121 369008538 409848581 575354770 720742673 900074167 956070820 149389913 424347420 759142251 954497120 289889470 773252179 267087899 601442301 112582222 769396950 375611831 486184624 883296578 983376015 104008177 971383724 635789795 980374555 28752666 861170243 963145183 988948840 608537890 823313141 730092956 856459613 37601425 694760685 801822223 952688644 414797662 941944918 319943214 475592162 638476527 828749241 75262400 715384334 720240020 884670338 585251534 658144131 819024853 946317637 266933093 897285038 55076972 864706766 862735822 927200511 996732114 998794540 874603893 985980298 640754979 687164707 292797960 558116157 360033449 985329124 135243691 703975958 636679805 945062621 650882031 780404696 803153423 953371579 628541874 792761224 76758187 638192800 615090430 889424544 527467257 932234462 682237813 890209339 991328984 997039094 200579413 677111093 21067830 550721715 157410513 786924760 947501045 972719847 486496893 981337313 182737182 429375643 968565031 974680155 774115078 964549197 822366380 887996450 225258874 652902044 683759426 754663902 954989061 958378283 949728471 999912246 871867755 881471140 338401713 693452242 231496654 516334363 487293976 572048285 502452674 911420641 5334331 129958190 164425079 963144551 197605767 582293901 288169177 806271831 64331181 622243225 159003322 962170370 521952741 720803515 412937705 601451018 664910663 728509912 361252637 918581959 568932060 942723248 913955957 978348884 187796569 509416438 780701187 962646738 711304676 751758153 784081235 862894511 904797050 956020630 696486126 921394961 815357368 844467251 246601303 353427336 244817324 998256277 443859143 632926469 882806602 988989551 313693923 476846974 171179147 461520455 776902673 880458178 94685229 478113215 754542954 822854145 910245827 958671412 436245626 847674753 593003171 709480838 430687487 796555320 792044179 845216485 284695236 772958691 551141575 916488313 770789858 835220044 580265983 623915455 686544715 697374078 586551540 600663424 812847676 866574768 264964181 931722033 687564836 962409879 65143413 572184947 791543239 878909826 390501429 477862829 921825848 929953400 844156585 845633337 946707211 951580200 675021150 873284319 904874550 957104085 462310144 814242675 519783021 870946406 12231517 801904569 45612859 520278301 943067159 949225624 263744223 902584060 856075185 989151208 659401892 984939507 872005669 933565676 894874806 957573569 636321345 679846962 28423419 359387916 681070127 753374107 95610466 191541092 604128028 680831115 417229843 565407986 823656936 929505751 709561377 939996384 95733603 966214602 404622798 667239283 221815215 446714098 137492155 520110716 918122713 935144242 112232609 978129059 913392424 961787390 588886214 838059205 740149466 998190354 616593368 630790133 111770672 211969590 81257027 617669200 220912391 298747940 823759114 921880964 457368557 986949232 629316129 672789776 760667282 919316247 99755198 608315885 442321282 796822850 303088104 360780628 291515260 641753259 520220509 616386414 154385356 566695206 516540712 601385659 311387984 731146390 87243928 805902604 517572583 784590514 736281753 976117122 809324545 939796217 516011489 883100413 823592369 995868790 377245315 860886644 785962349 935518614 403460029 952663276 158382916 811042348 831973684 904565563 303761963 780936747 804705409 995524308 402139980 796462752 334156896 706718843 437553983 659670897 580006797 636938036 252687958 872335564 169136386 317342524 138934943 502430568 578544074 799388752 483677487 833005048 192247417 384172415 850508142 923097549 378052780 741365885 31223072 384897609 431994549 547407583 281034121 610921958 433182085 947480995 438468155 498184181 357873552 926960334 323694022 839085918 886367617 962033255 750884798 845529366 818345992 878261805 894828855 896599785 697500996 941091169 271454658 626901857 764264644 789099927 637257403 890296603 893621105 994718318 365048723 780733998 316311539 610736411 508375637 748845570 643474924 905401809 194624209 211054615 455629107 730465919 277156377 588403061 661487932 666344425 469313758 669876973 754704342 924264330 431911669 914303875 552720609 724240242 689750238 825014069 137703443 283504191 723176185 789941560 322239861 563449493 221391837 807761965 421878412 915126582 367970317 576765820 122875510 155758526 4639304 461610985 903056682 938719049 614138298 721241133 368432116 689713843 801516347 940233319 397718838 622642751 381182679 947962418 905126826 967358472 73733464 595976653 769579682 961576077 870104979 958398069 456622545 565676526 418291987 840734207 520314103 668028197 927215137 945576557 585804005 847571062 74595087 869494552 739726408 847859145 114807698 605000173 121484765 310042281 820613530 863483204 821448120 989009952 134006750 288220682 277384286 317584319 92871185 519324558 238506844 658117449 860680100 887646231 189958763 429177252 757051610 968533632 700523922 805487925 314171607 863792398 639853226 958150980 319655334 414971333 541422553 660742022 68330464 826102566 192050955 650461921 731515320 950428856 584261209 884550119 607979915 694808912 499904166 919266291 180297163 548404745 569886611 760253257 944320600 975284406 119201304 608712905 462365636 638622722 244792048 355059385 596773690 638593948 534548346 946793213 978726942 980988642 574382672 778482038 438732216 594640648 122652809 139677984 69008739 310871961 851717624 962753987 364010054 429600345 52587026 858171252 501082229 738349751 771981388 882559640 491651721 861629749 761256071 961520105 172491500 988080895 334496257 379746963 684714017 912615137 3912624 8301552 121931051 600253783 196769145 904150562 467924208 982800187 950256733 985466696 280902523 712112607 521618673 912438315 200997264 576738633 559317989 741565733 634843796 872836008 11077394 655932237 140656341 577923669 950177770 985210975 807732332 926279827 380213686 452448057 970183783 974308945 458458744 587265353 480301933 548058282 688568793 739882900 30233887 522115605 154529932 550418508 360019889 380077175 750266730 756775595 329051288 517470886 573395507 737434633 536986248 846021556 193434072 989409809 784847136 965840480 937395475 987628209 906915196 912453818 542990220 742259007 59206706 568798420 292418314 857204426 919190086 981683311 127613648 447684131 724344781 961763631 198803938 451368542 184701254 212852562 781215311 953387110 242191823 992508202 655334322 713631866 510406348 803779385 421365769 434837045 2493600 450934729 170372780 320346485 875861638 898523877 460844228 883213040 599481321 689726883 319142666 909878573 374674227 943498937 804974903 902481261 736078794 961991304 766163609 767891348 661676310 751473723 518663923 573117660 946969140 959595582 712164947 820252774 343618122 685977433 497707627 958127574 24441008 347887839 18000318 22042770 745019199 944435823 205644427 935848309 452873892 734123009 722585098 966427633 817730230 946747466 936533489 998383929 710651662 919625106 309441826 824565133 431466685 551931466 382369341 902913902 844494262 854557319 926076427 969988875 910300395 928428538 104344260 386414178 558910559 716552898 750238493 950761258 711451977 993581757 440109641 846027148 646247242 873289588 160270592 637396996 804537501 840716925 809532357 823153622 35682322 639780312 526626238 564735551 621323310 828783314 363570029 899986622 338797778 800543427 923737425 961718507 28902649 508214945 334715812 746789129 417810212 639519846 710745198 861086021 99478691 908709913 451717546 575944567 541398112 910048297 734367881 896582043 435550682 909839526 60666840 517633448 437402364 707137697 779296561 974414022 122703931 727699552 855144608 934344060 963076814 982735546 820898185 821519159 69895373 804659222 936035220 968372325 9348781 687332862 414965123 599401214 491749007 978399678 312682374 676666807 915670876 926993016 769287620 911313590 265316870 601041142 250607407 920082380 589133461 659384141 388459125 686619466 618080764 688762724 239691627 758533441 461868262 810154675 981867121 997397576 652729369 711943132 871181665 952320829 973097449 982556973 841421645 895069559 218760635 907361788 37210971 357936025 640118851 935681668 150302645 670916138 887752421 947663584 539600824 883865123 956617888 999851206 477605107 637752406 963665176 996446569 457437979 890055831 800868043 860538247 261714825 389646992 524764837 553855229 736672380 743877798 675235267 976237082 118052630 784221556 496426180 735736443 919749735 951576731 650035111 762970288 328465550 482601574 229287593 357523106 191708337 653292657 503798567 745329799 174935772 346216480 899319514 949798608 313636853 333371640 174221702 378523244 585100410 753434502 9758971 312935188 743206739 807852955 571858911 814259243 673029431 683005350 573785460 687320872 946407532 964688924 246454146 997657842 174646188 755786501 582095567 856687684 150453751 259619676 890812775 969014017 519572144 822609105 762208710 792053320 422369661 836279333 962050108 971666626 753816235 835097384 979900475 980505909 128635856 259515698 913357168 966279886 117002792 278855062 680478645 806650488 313570274 663719683 140207688 179722620 646289835 699781172 279849401 604745408 585882771 614729349 532527580 693386257 503321387 658325719 707934991 866786116 874763773 882039259 358875739 711561664 924129267 934177216 990742004 996340485 505955776 692587842 768827939 926235582 603064776 743239444 376242819 978962093 669068374 834662301 23603725 718446637 5945063 421653252 54685599 873673642 872292733 919329344 733372867 876602733 691126572 912361923 504799452 658173172 683312006 729201690 362017869 674334861 738418109 919497072 954517270 998294823 911397307 993655700 483974250 854738101 661638393 976140578 853095225 871863189 817742066 909116560 221394988 825243579 550179651 647476664 395104675 418972429 307156695 613783092 607572012 812801515 950024494 968962695 409384582 948865555 317197378 715325684 919070638 937533194 92802154 465750431 112789995 440713500 927176216 948258530 859332630 900786121 163882916 743588834 699487608 783046619 795362463 956454741 25295786 347178787 663938325 700596565 303254186 605581043 831771112 849414625 457917498 602856748 144679071 145896380 331113580 759202585 411885130 950162946 36439749 962245485 280214847 841895623 448105116 699978230 643785856 859171850 162949557 253299032 490593108 652854515 809039280 983321432 304704705 727921018 226439599 286817191 411488689 479942775 605199062 892267674 345453421 776521675 949577515 955234132 667549436 994008150 110369495 432794492 207796812 642561600 564868570 864674232 508773915 675523695 82718901 751527069 403508369 912932979 190289456 881827983 803529342 976991973 507670647 560513256 932634547 940508784 409111392 490361462 848462852 885105521 181543181 833200974 272714786 444790005 852543612 963555960 603072518 640479100 128856022 258266343 471135295 610234543 970501242 974100329 125567394 415496712 690877444 835562064 344599293 729593115 941237590 987181946 924823021 939246848 855101660 865929137 893281360 935943381 532769382 784839979 906972594 989919258 683907793 843387066 954031907 988055631 363302441 439924518 306841854 472402262 589855324 899721470 948691637 990690093 656794452 923565280 227779430 877921720 973442731 992760111 297992743 402286227 811266490 993964385 717815373 981289144 553929601 613460354 463774463 935566498 690111234 700103496 795339918 960916954 834417141 930020793 710519419 874194767 171355558 667291788 61884618 314334984 399551320 761819556 879220774 950326908 441286800 536453972 129663118 284757558 146190492 173359297 268180147 626150047 635305670 697754899 228672271 664017513 424826192 803542152 776953984 862111863 947179666 990105704 16587220 108492168 140777741 285571221 221510724 827636239 702587136 844791585 436479877 544231425 837686089 966651210 563975556 755589948 399538772 488767345 684439328 973507631 400343138 440459636 796543517 922915084 78348060 100382104 937299565 971120137 168492656 371806876 623491737 880105058 62357152 203953142 297691528 353234745 996440504 998512979 52109541 736727708 817182657 851361937 212383504 455255230 210789878 990609644 429343972 837839473 988344507 994380960 593433327 882000097 295389622 840053798 954961895 970710815 778818656 964241820 31956938 236571877 249972534 470419957 47017065 783891627 386360285 652271992 156327785 582066514 380285762 409550919 269070566 995214291 78970906 834383715 580307156 826155265 801818655 927720111 317181394 613722933 869869807 934018153 606278275 660663993 235286232 882696156 182621212 450500008 887640810 892161028 404398403 971488263 179221499 616961041 887736126 989330645 948417693 955042810 587715019 708568514 119105920 516369278 742186646 983951186 960438609 981846591 93989981 361502260 134275665 583041218 832348185 920952099 228574530 533371547 420737356 828134312 856529242 974350214 858426663 918286871 256375887 894074835 6616426 17368232 166551548 715001723 412358320 761801098 871126892 891648653 582078676 755486626 127582660 671996816 302046282 695498321 204859997 790896187 422624194 896209858 967407188 969216079 571105177 938882806 515700974 622209254 183171788 251567001 10259401 573864389 7764771 853860601 537157963 878895952 773031217 934137751 700576545 985475800 254183060 553617036 908839401 951495217 625004644 711240880 332694604 630687489 665248942 665565674 552464936 627001352 873609408 996519172 85945505 296468236 17447797 808565669 424465169 477106922 788253140 972400744 151909386 242204645 483126202 944235432 131692003 439000025 995588159 999939408 623641765 984478169 608995295 847150264 462766696 945868678 406277829 468202396 707598880 782087800 902986356 955003052 569829355 896570783 989948748 996928960 969322120 985267623 150121108 295093591 882836210 929063122 186812568 356636619 200332135 700812969 991532832 999136492 991260285 992339944 966146518 973574371 433287727 843424796 372023663 718033993 457767956 813018804 677740443 916303318 471464735 736004530 935081781 969269585 512396888 724789903 382295447 382397730 631345761 836633638 651647547 877665440 409281150 778557687 98379269 590496493 763317400 948568729 13254350 600688670 280393231 692737638 593336978 930079148 67995836 482577328 827780298 960897968 444328022 685393168 101253936 685924816 111073981 903041722 276892548 629971872 564219729 593223386 685956970 725994605 76758082 231928260 301387135 809596439 20322011 374535815 554838126 701618355 491915624 802951431 692157565 716795950 584297341 970910942 199273053 452750272 812486081 896016720 175686527 884984904 26216626 132647562 602262116 668287421 974079791 977666579 803199533 910651898 174541166 955238288 240408621 338442327 833005423 835557811 9784808 847389905 996774445 998741922 433115806 680541758 282489482 700956579 475978449 924610130 327017999 377241472 590066315 797779846 441958055 736679734 94996643 242984512 609375078 704019016 525493803 649012040 706289617 861468326 929224192 934959454 51750011 642741217 75912555 416957614 822241435 990910898 761151046 965977023 174244730 358940643 111375934 839241825 983805451 989968078 223787457 243339729 864147954 904692672 787345896 814945724 856181729 971531301 355789859 539138952 590467603 627964244 522586371 944386334 699130062 971468946 108433515 809575025 265809147 937659060 53128840 896463277 541652908 834625523 502512379 841250611 585740580 823946636 944409304 946882745 226789469 730348661 816596841 857181806 867532930 936554910 177496326 328023408 178061872 944571347 836243626 960917012 376277893 634759701 167315716 259206503 25608635 184828993 117297932 970294638 869766928 978849802 536898045 821119593 203345888 207976445 106933671 642667079 279226322 458438191 267804312 368821208 474881033 837050855 388109570 894278047 142598996 794369771 968203683 983649015 542227542 700943771 952090164 970320149 253631092 657726502 398038328 977346096 779560282 805617941 309667681 885454944 787447090 933084225 485413573 626236206 843520721 872011633 571770938 911191303 19670592 517072279 121583121 472281796 347035030 915182332 452946343 993894770 193902708 693308764 191581352 562487281 735032165 980080279 314632140 530717173 767705843 880181893 293319363 319267125 613595537 730103725 981483345 988608087 890326259 894686464 990538017 992214464 564618115 596077616 638392479 985455300 964611901 981008994 710820807 979184614 808964607 847684055 883606304 893830235 576074690 677843105 180387239 559742708 974790630 987778360 295721683 606265939 878304671 996448715 522199175 978130997 326557490 351511834 705567921 774897438 765127786 982847737 946726289 997354714 858788890 937385411 291876890 749119771 247711672 552876551 827348078 936931074 922757154 995151669 27509347 336270384 203258309 822476783 146925007 440971040 873808719 876804374 215848727 928498540 913772260 976385764 694970085 878522621 923313804 972994887 942900149 992395161 199083824 872959879 626809506 800445841 551331162 967083563 86639070 322740608 804698893 988883841 47605636 431921449 876748735 941896396 799817206 852693829 204959410 991845904 454938806 849378944 735929383 993913638 47608719 748598862 866635675 987876616 244220708 830079561 474210556 635551020 390700514 644404948 760633185 862424496 422275410 526835961 331615869 884492031 756389560 900475426 334354563 803827634 824145729 977471537 111160205 245703552 253829753 574105225 652603541 681491529 719901649 880038844 561371753 983391926 857327326 936142594 929117615 964460812 443642095 956585606 194391511 397867862 821544027 885682419 458313268 749423788 412618979 859712478 495582048 791392060 183754152 438778456 887150747 971205539 400146522 985752945 632662135 874363612 122713547 678642110 255790422 275911019 908909905 918726809 435022639 689164966 314751832 774222025 658102759 921257480 500045281 575422149 85908109 895966835 79219313 197964818 341325737 718313376 858854711 899747702 431730760 528457926 932313871 963893344 335235708 974178401 261865715 850605061 304883500 466495418 630455253 983368905 597748089 741387059 176300951 657763522 636706801 759175189 343396571 547713580 965857038 973997817 230572625 832183908 883428465 920897979 673730442 906522442 607813399 998498177 739069510 900122530 597965913 658225576 883120683 888743655 550526546 935695692 742463026 746660728 366991696 735853360 60770714 794161747 520849372 563908161 367992610 869505414 943814485 994754673 937493184 967005966 320460403 438466789 830181910 902953882 67266673 255934754 965631613 995949814 790811614 936191079 25061092 390426536 710432349 868254751 185336510 444583711 95880950 711435778 509754635 837665775 727963658 852167316 606531215 745198543 818431783 843190455 396911543 559769615 592799823 925672107 524054340 548515266 812695169 902417777 530117537 539784025 232963478 754519515 820469086 853966351 98528211 947310795 603389655 780943600 947859013 969216976 907549906 953293389 307675751 828107788 374903485 860446969 484364101 663764353 923914311 956086004 484705453 903827583 541804668 699197574 588388558 640373723 341679204 908146904 268300636 851333761 371503286 671948297 602845128 633526071 316112991 830462831 580446645 817688923 161317101 662790355 448958888 521546634 198255396 308360835 52206083 742241206 296887741 556668137 528682451 956624094 144393129 659984145 926000018 933755091 562877172 651323279 123179706 190509374 680627908 751469350 705525828 914044232 266205326 317542478 512568221 933844495 210639528 318304034 364132312 514483852 482035025 687879851 47652125 110398182 176621086 759109397 913592534 920826078 140630599 290942288 835861412 923021025 138209948 365283660 897795617 968891482 719818466 848217955 570373475 938081849 262611205 361066204 837942958 925717528 804921489 918805462 400122792 491834223 46787531 530840792 611804357 804488977 196132713 777980917 644349041 911504876 814012420 906460296 853163310 960584080 880172993 938453284 835045807 958808915 119512247 997259755 670417618 976557333 499643775 758447842 518344368 739029152 287540862 832069392 968598978 994854643 786143726 918946489 527792521 761145417 374995515 604625149 542431194 805474944 863206058 871570928 63804808 634190361 740626848 925555075 408070881 877161864 565154617 822862625 184410749 698938641 629371041 776515234 554781027 576751949 139919882 994586876 961729157 996556931 38743103 103698300 972262112 997281298 191801168 768750485 152807401 463651408 350036283 765411886 686662848 988749228 321556160 798750883 201347162 399071769 600310279 739255166 912845897 970747486 191024347 636726972 893338758 915955950 883628212 922154157 109119424 971597661 65376030 345722270 779763414 989419483 616439801 875625710 586734837 940960831 335069283 392800019 991137831 999893675 725594177 975642362 658837266 693716823 150826640 829231454 791461190 984797997 1124228 233809666 251693362 591098379 571797731 846468288 875285941 956208139 812339937 888047164 728560912 741924844 702081653 972811160 934987890 976641988 674644880 806073062 384106448 955656963 762722101 844910801 835299571 919941051 247251116 438408335 848374942 879910024 21083784 37421951 416006263 548076243 541405380 824426866 535295289 711071552 175199610 607841821 626951466 853728363 435555647 560809357 35348129 916202366 278392978 857345242 78894898 825732726 891043742 930705359 817057600 933713175 156654296 951865591 999659670 999674235 820449685 887652258 168797989 529589943 359733196 547186171 985433000 993298086 996931109 999989655 809638476 899559839 874487615 988903967 92646083 176676333 299114453 597530644 667997350 732469649 52073771 643129046 549362271 839778948 739699083 931489654 868488721 916836772 41615377 968077009 460152423 612830172 979844449 993929346 229605192 426202704 152842190 733660941 449867920 914508889 126865395 129481151 337359972 633909279 93662562 490697380 266641539 690575330 79394499 824413351 899788715 941359759 619841774 895315816 811485927 845828614 749170939 798362298 743895203 953413245 7412040 575026527 665846614 775129133 553744285 560398066 301691191 610285672 965989647 997833368 130457663 750434754 636068818 962116057 2078428 721677417 297992022 733342147 389363483 895875888 599016815 837414212 273536510 585293305 745256098 802976626 279103722 352365495 480845854 543087751 880655167 884865971 741358488 827918329 96719902 260630865 2516445 90402452 801915212 967711564 214902345 228324117 3936795 877101829 906068002 933916975 610245082 676763786 153298607 153838163 563669518 782858202 96192354 312370488 126258664 924475620 558063415 978128664 680921630 992260603 708898418 741086700 282996577 602422323 688296364 809569230 182994130 883667292 883645645 895985298 585145215 742689809 38039506 940805063 291614808 852790018 318966569 983699860 399517751 931655148 956837615 982607384 999495532 999561717 711071009 932962584 297878168 762971203 68578972 133973536 871796637 917608789 575902484 962442484 879221597 991113718 405734504 832263980 163551574 509638525 31876963 452366197 90176771 693057727 438804080 521042437 425239392 787239145 359741860 555268424 54998417 689258478 780141466 981732323 119726525 274241202 14817892 656298578 108023472 516059554 72969098 701583989 971544358 979231512 769384970 959330066 101688288 338520301 670446437 717279518 544258279 742077284 138357875 255614019 635545707 941160074 707711078 795395570 519288486 911678735 724691693 836331367 869842094 904157919 148197722 347136096 367602432 650435476 301042924 660377751 968032903 976607968 601502826 859723402 653334252 820631720 676672990 892969849 745294736 908500270 744323967 848490285 11936595 43767615 756490914 976960646 512736176 954188883 994527872 996342452 559256605 589862457 427615496 857245851 237593834 987579038 482449623 655109033 776429679 960140055 912457301 985951277 300626645 751642338 19503092 749709172 627149210 634834263 853910029 963473740 43950586 226143976 700931344 767327369 150854669 375389713 947302954 964570829 328796065 603723298 373975255 585087907 71587500 380908628 541533521 810454632 109692350 417709115 758630651 789335683 797182745 985933690 228764313 803980126 873674826 906295094 243414864 907788286 80321320 865169223 952864066 996073518 341067053 405781373 669922390 999718648 215474619 719332891 528202443 683504952 767613818 846365939 436311248 850431956 288356560 946932410 490799557 755769997 360751878 756705812 152386609 808515567 432007418 609377817 569721439 578249932 691049884 774566117 804848310 874687813 851999938 860965467 726580155 984024840 817213746 957438843 9814580 151172998 450741466 834989243 146806985 787443802 523973112 530056237 974925114 998109516 176835528 857358403 549537995 802995957 645591523 870396391 352144611 705700961 658406621 924162942 896004753 997149231 148022611 307234733 737810821 943269317 461278369 931597553 32656525 51561557 869008879 968272256 301193329 329003177 875256555 932560696 241387621 383616349 369264729 460823747 189444724 196345189 372322775 397334530 404681323 682451362 77514827 794441261 33440142 793480637 934400159 940575481 112971169 737723905 927267921 930955133 978024886 999036164 507871057 665390237 547809638 562937772 129880161 342412623 327595306 538070446 658483495 951980376 90967755 504130992 423746893 927711041 783792057 993449970 221314784 272861986 400135782 789992500 113568667 328552514 935913262 949039309 405446380 915431209 226353644 520233221 479783005 603790492 137218286 921057283 797531519 977787143 821621151 945197035 156215637 202720197 349626049 597456943 479382385 690219951 675121758 879113082 919150882 929356959 125095898 664494693 954495409 990568657 880141539 935917873 763482142 842967579 197305944 770536967 329327376 630721277 789243876 821802290 883366049 928331351 563035691 822496221 156266991 900813443 277541448 823088113 743312132 810290710 749062038 941864418 75923743 428916113 826894502 992396696 855461159 857786569 111071607 199701162 444544243 520061721 700069198 941676623 388909766 997517275 379499606 792999544 610048228 621600934 92801791 490448057 996670257 997255525 395393093 745663655 913880700 982921683 681099287 995144804 624097594 887854556 868556487 999366965 200542352 688089771 932605340 965891015 722155749 792066646 364477117 587639220 631197807 751817675 404842871 746133064 177793309 459303581 712182472 877423495 51728082 701081282 68869293 860022716 484130899 547862708 265527272 798075740 546601959 985737554 226366654 715399178 701872182 960088138 761156451 845878988 972412329 979936422 970738892 990461812 608599271 794725113 440787035 991100449 72887408 354333554 928953788 985713896 494594742 729347049 650487757 814438924 487810102 831248476 70058403 246905558 197250890 674057590 286521840 848339142 134281111 689390885 349349466 441701601 792149588 955498216 570604660 844677753 625081482 851927637 950057999 997803685 449422939 512664808 388502408 893695306 228852430 359294221 494643861 856442451 787559717 909030773 200622710 433907644 602520958 792378388 246068182 335310800 23963537 127285975 262315149 719239983 269549577 419141920 181307655 975925600 634470161 747981336 894526168 959140820 22715031 805440668 233399233 506296180 247018347 400413929 679677732 878025486 258598353 337255420 769851045 965304690 509176151 915998438 922510103 933808710 948684153 966208622 260983068 719640572 957323636 978278965 956011720 998585467 431064992 999587250 981145662 993748991 758529118 814668345 599411408 751879012 802874387 920751814 912614804 962483897 155188256 780191896 986707956 992255727 881833182 996353603 560865020 897538940 386568558 487071132 47449181 522259592 567866476 581111460 426518400 545040374 253745273 915064764 76630448 467251631 703673790 715605426 94456240 157920056 19715625 468513560 741762987 827495341 544035085 811116063 197699303 245373441 966679143 989511329 266271163 633794722 264202790 577482160 752359991 935395522 114469395 388814695 378502254 827316004 831912504 862152588 466625753 723209971 455108705 548453084 4641217 692425965 516815169 894565624 73342628 814191788 612964801 726160929 673788859 705630288 676538098 994131982 780165205 826690753 266023694 784921294 393044195 670566307 813071591 942332260 389373615 831582050 223077636 734209400 234744789 507902162 981094380 983068980 196161934 945024909 61460299 739785205 26005363 730886771 142836649 585485031 847131620 857579025 114075589 285416991 622980670 872716324 200318277 521833312 986444614 997529391 914017274 982937269 488840728 891101756 916408008 917731748 502110698 643809084 476376471 614528927 900702635 948399573 114728721 815142983 46881885 226234641 91027535 709153441 959832642 986128975 136720637 307292571 52278420 526343291 790827539 969016147 908030539 919997030 908444328 984727972 504054980 543941765 266236397 370534921 852371035 947771129 594011021 602483794 355033765 986510579 461797274 533193245 790889909 944633611 73909888 754505944 943504151 988749052 650745464 802246220 816375918 893802488 3371388 585608714 324016169 561867740 869375346 872873627 606849080 629908259 722612142 753530303 994772092 995392368 446163306 468611910 191442936 689324294 396823105 471255748 659411063 883986166 568380792 705774557 280898233 464089945 156270290 645041024 396793451 698760528 628069728 739141800 241795383 621306303 345771570 895129731 656358922 982713810 663434197 835568780 418246987 779652993 678255814 777216275 72262266 530296110 385518853 684682457 157457904 435742811 498183306 513244612 999209465 999881824 867716490 942242201 791633247 865386257 906130817 942739074 202797768 934892109 136790931 968077570 266878106 931673342 591766207 841204781 599838160 771465292 525693668 930869553 501855724 685502994 643808738 971898655 884094339 960882470 550271664 552442620 947975079 965972655 246033009 251159806 800193271 888626734 709429102 961945638 18357538 715842254 994460410 996920716 671457367 903017724 481602702 489285737 320404015 837659942 642132291 957634380 149370224 550966900 616785411 634267987 352452330 625826196 115722953 256968616 598139419 922994135 674185097 688014637 693205187 741390783 752259736 991620554 481902012 993091380 142547677 263000620 664532560 838448299 23724392 782137443 975662384 986478058 523713625 900533181 806316612 997357973 923962778 934720976 773408000 782284762 440485630 844697142 771780237 853508185 545225217 851527889 987971102 994903835 359971214 704990521 380245315 492545663 987940269 989493040 779343866 958884041 526785394 912390366 797759176 928370091 695894635 783235617 241970343 294704453 664719324 876235894 192413529 960955759 35499487 591645408 776031824 853851984 347023789 668325621 610449546 726788381 27112918 427333774 945259400 950822433 389518975 841455425 591296075 601869114 415717294 776202469 151948519 783396504 778877046 847874216 713858325 824653335 235773412 286670305 70680310 837278761 592593438 812471305 951034543 998538648 29060886 392156797 113092403 581435405 583942090 783477569 535662812 628659335 482484210 542766397 910087603 982972575 458886261 638779206 376771094 628374650 589938336 796562273 933299921 987074167 401770288 820698040 74625338 239193078 394422404 516790955 60996062 812182766 802773926 903810505 156225077 276836026 977499916 977977062 416686500 570867460 409545386 683804349 63765413 538122215 243780670 779262721 584759330 780016501 422053890 466518750 293632737 630099831 907113171 983723738 942099352 973914095 703097273 709166655 641874981 811226923 738060043 860997791 717226551 956180910 246255792 394326214 194912478 837531996 380394923 911494513 355750649 671485831 454737550 786566948 653950704 773373672 584737481 862678795 916002933 916741922 979815092 982348403 52665963 379625253 81294509 285348393 300236254 998378940 457052514 507920641 736909319 948858157 92406158 647795249 728865264 930435740 147356549 347879724 309738880 924966609 802756931 870924958 796870506 996774044 120835245 173976211 715946556 780957532 191575784 678603902 742435678 807998507 364011366 628418006 128672873 548873098 953668755 975280641 594693283 970155496 274278122 783748910 585694785 794090472 689274113 842617121 691034444 903311869 835689490 905273805 495269743 539561640 832190220 865992571 521767214 878641293 329570843 748015533 284412206 853549744 986012754 986689520 677500943 853646188 377067094 750435302 212478808 249949601 803863176 998034560 616395623 655655947 572690743 723497750 982200459 999246283 450589645 752752502 838569324 972359209 141038902 688439940 734558261 937322898 467612943 889798248 644042221 860352773 929701559 940205286 310545103 571515875 133009841 447750982 351578449 682260122 56588684 263320055 204661252 626841038 692992711 988448871 913982082 916716361 346202032 529826351 376395060 547678426 526790019 638142414 554089785 892348605 320262899 846093396 145577481 612181090 307832745 694393142 743666953 782225710 994155297 997494821 374995355 982691570 800536637 876329420 391586199 545442793 57582796 92228625 786672436 831530093 376761301 420841086 832310647 886744710 944918366 998517155 29572955 723244431 241217487 811222369 648009695 868464489 488420093 682525537 572396208 976649614 330476823 884874764 206127375 461378386 421035989 471061468 426938887 454270072 138422137 880576616 202627684 693450943 696125044 715094548 104537144 670723999 217392740 890183152 642807488 900845457 425176407 979942887 777156973 890974900 777733423 832737892 753045656 839906455 707003081 837599694 4749730 422994619 747739879 869047952 471622885 563411503 193603961 578613361 966694435 995080477 383797126 745885385 985106676 990500623 903332468 907456967 650358286 659591681 861007363 898450433 31007074 777776739 404194177 781202935 985121020 988695018 670322935 712894460 603382205 742798673 677550168 990270409 512162872 695637787 197906401 277789797 705078301 788635187 554463878 665047599 682027260 838135507 14615693 596694506 950492956 998995324 700236299 711405364 950800186 977897563 18225570 103737503 512952553 605569697 879684383 951436795 870835713 919000976 831310554 860036356 724530520 904503914 641400992 850712363 137135196 371856134 437201339 851660681 933998745 987396102 176321229 876021430 704226711 839214714 18225103 979735664 291858747 535622637 231699873 496432477 871968628 882340142 474077171 774295114 113086624 169056731 580094551 804366184 516285665 733955975 442031077 715432993 841847650 844605469 771919136 966494830 313515777 863228906 999458847 999649495 483191601 893899785 942501630 950359091 388076950 564382190 45568463 394424814 184798792 370943282 200470798 233659832 84105727 397287668 54390960 941166018 13817146 339613526 847200935 954591951 260766760 884125415 11808886 677643652 527187089 718409243 209959410 362894814 700179494 726779199 863234333 993197443 896722259 944826995 391679222 953677463 355010776 394646828 552416050 903683791 94047030 374750654 99898525 427008076 113534343 187185599 439621809 678160887 367196016 535356301 394194212 746354163 614846047 834663771 503628544 708006894 109220137 616848131 392201279 585185247 583268448 625168696 465207559 574641209 835896454 906116616 327424370 848067717 667498420 834000337 28717893 337654504 207180162 695494991 91235793 877669658 819655576 878038318 589273946 605718408 603291910 771385930 6508584 862470205 876592679 933881332 274209815 755720960 519597859 841083230 922441379 933141176 661445795 992870230 123727566 991072298 921150253 958569034 533660798 798464155 853969432 986629139 794689791 870599732 243248242 778722695 149636240 378758436 130115234 861929817 384992427 650815821 522719138 793392662 711702682 789166781 538421133 727950827 68731695 234604945 847377372 910371001 477201206 574144218 743961128 878824301 509323718 934599881 601773864 892391362 42256514 908931962 138185745 961184205 515801279 605185589 48041476 490186393 148030496 527353439 516105795 613986835 893569970 897815101 871152201 874284875 622851219 865299412 741067372 880157463 840921216 876376637 323776883 989211850 1302083 716306295 626344483 655246700 862245606 887415130 208087884 551994555 408414143 408963696 605356579 897119204 867549897 876777650 915445025 947693429 410739527 514256880 125416526 982916922 83882254 887283058 33815416 819599501 419146143 440294060 565022940 978213923 588299486 681207918 121959623 907918062 205054753 844449408 428952387 754774881 956229604 987995478 940822379 974453538 159123761 758376447 358211131 531896224 772740966 901781189 933620662 972502052 970603017 993864423 746993934 938990906 352536271 638650546 995796621 998569816 652700958 942796146 541276843 983575892 126284002 823797689 827909553 983590339 120982063 640649146 312832759 584998668 240889924 755284283 704205260 851857209 716963717 990374604 196274863 732558592 532764280 777533556 737836722 786246236 925215217 932592129 889426705 996635357 708399701 857762380 407667918 666210264 855640391 932615262 811886345 831454823 738780393 892279080 971023641 988632039 582128198 881671198 196650324 649665076 279234226 930529684 310276814 339421829 813895953 991432615 620907552 714351664 568925959 909462563 801382621 877350379 341615122 520909989 215327845 355357809 915206655 919584688 407789291 523966609 687421071 902823972 450457093 811149251 755758058 912740884 654040090 699302257 129988735 596471263 248497401 324014039 969162651 976801893 825007376 877470167 282143747 659913008 982298691 995838062 116614004 182931507 992367765 999129435 700961976 948255901 480888471 662781637 367458379 469586191 993549623 997243662 735375270 859728520 77225945 889457592 227097416 864908123 896471656 960294978 823787155 975963970 228173586 560430139 361199622 943896690 202334936 852976993 344984887 486768869 363684811 963580488 652512983 859571528 875076455 972883415 774671907 989215212 865756476 924536201 437414627 710572696 475593378 850612839 715432013 834309702 792605341 955522538 777107939 824678103 409395164 849940327 949369765 960600527 638649682 999137704 830147520 962440938 479391599 853313944 247654892 597701230 999919767 999997541 761158277 769695518 830310849 877612502 503563440 973637320 259192052 676266207 781704364 917322957 99492682 548923667 83026456 349002262 146241248 237517769 212858110 850920990 976500437 986367862 17662562 623790101 302802180 952431213 29378243 54707765 569782884 793909238 514752593 686939963 246992874 874575845 711079258 758165466 387935828 855261757 215513138 873899770 818947129 939418770 1191181 121818009 144407461 356028952 834717435 976447508 543732091 976244201 128295008 723970541 541929883 640345682 302135588 609961284 81672179 951649848 326146452 893591064 609386638 954531210 41709611 780799079 361096119 893781522 134086100 987782488 338438776 979064478 306606311 648647176 566791753 747574023 616432798 676893443 712748232 784557206 270447489 320980965 563596188 756380765 207687912 417565259 238352464 337758296 264804850 828070590 911565017 943356429 318834093 681616098 704740565 890545519 268151734 807256471 552898581 967288413 101634366 869829998 902946620 999707027 647493695 650676972 442149955 803635570 644697821 650504357 907540639 933186629 18320222 588677241 43920352 190190214 472462972 755800667 860656123 957688329 954692402 959458246 530549366 616064065 260244172 964910419 294104636 885698676 972730881 994846122 307304301 483218182 281091306 928897838 861349603 874358127 980381798 998882923 949708625 990150419 148821417 829286362 663061535 835451461 21736601 858035418 654385363 666042649 546850842 844607035 856842513 903883539 449699037 511618676 945923202 967985191 93857409 383510030 27639665 713938621 870100132 982419407 737500558 878611830 186301648 636619697 606308305 954942355 535470760 550079443 347353121 880284982 12259999 137948373 936145203 985644664 950431829 962790065 369439753 995964362 203186707 810262300 204407100 640601058 397927926 489387224 19240525 296127390 920633565 997923808 780083975 864961617 139197161 285186813 716111746 859661937 993827424 999910889 99722602 723126589 666102237 712769626 838141563 979497394 905608613 995260256 771467150 908443881 743475075 756440798 909033968 990004531 534533652 716334849 656160346 879116418 216896394 994670826 822367021 975688288 651234615 811292531 658288394 831140230 759094899 775627092 85594327 777476510 157159099 539598709 655718754 970608882 507366366 757441076 972575237 978138715 656927560 710595509 765728334 999586962 703627653 777302333 682521786 914280923 129536955 280638729 639974611 720273705 172283032 960879151 303083134 987113432 831780752 980410863 804346559 922131961 975459074 979973695 74000549 453339077 709556553 889187967 689836758 789230747 781438243 984587564 15765767 648270271 532923757 541283241 564523826 892520685 816081378 871186480 358353447 741457202 294212352 459184287 94960149 956924198 766173945 980708861 892694950 949693048 858860627 951030298 272346034 842120930 324667459 874428360 546916662 667990765 775114775 924139348 444763447 618519260 253837978 301937388 537366011 967047700 182372621 677162402 338312761 369975409 522401150 864016035 55075458 235658337 447072800 969851518 244333813 325849168 842639366 854323322 165288991 291933128 398225263 446057446 310809933 860399190 734630645 744758733 446415670 783438849 83711152 989742363 632337482 739872852 721388750 943707863 197574095 469794297 546074752 938763115 74556178 663981642 647809621 951703058 1814438 774293421 553327536 886572336 294360655 903848485 248805330 267239800 500413257 637585416 652376343 862167361 701661850 866393538 719815234 745879785 922665331 946929186 376576103 905600645 8922984 808583202 315234235 524523534 376748031 995350577 170349722 232265390 377419349 696593332 442298812 510701897 359186538 616148006 42254015 972466870 447092276 644325319 210096717 595194492 787339044 837968094 120690483 909840276 395767326 811340624 759103420 811721493 156897098 299073887 120726950 804211250 893545318 921576892 217770820 318484444 702985319 774806381 381968990 819775899 502207078 643489699 308997137 859861195 196720494 827881862 77893299 696883607 371449493 619218446 192059510 250995966 74079269 320034894 261040920 704875195 593325061 647762053 262598863 639016208 203048222 727900929 706913766 806255464 173821799 226383181 190419733 472762917 697558883 786677128 173149502 899105014 472953538 793646918 800896539 816871245 394407780 539886986 617545710 728960638 287616066 433721505 25860757 586356100 868032353 882874628 748832442 816267412 884837727 963060712 948620019 975940273 909943282 926654331 874970995 903972477 371426906 443982766 389606833 713103214 949074204 997414074 121201791 843578216 875465035 922467406 69530951 486247616 852536725 907204029 360103925 857361926 384867529 742849373 470725205 510920837 897562167 934825646 249378057 307823288 464842295 916451902 161692270 197355431 620944638 669906728 792941273 952040612 801239048 969295473 225143361 826512498 484532532 989300539 440595096 830030066 563979849 967000512 810465569 970503502 35351814 962707733 141678488 290030431 492097822 689019040 548028168 997416804 592274634 891390181 466338816 492073415 4629983 881326647 638310527 696169497 273746225 970968760 697332650 865821774 725908365 911100964 279022744 450480647 232866828 301276054 407450673 841278500 306052252 367909231 238660760 597461311 96530860 536662710 358054878 431083857 133660235 875697291 904644766 911185176 724887706 911314220 38197700 150904037 36907870 91071857 726012902 744511427 736587819 925158012 34742972 401866882 218836656 932316826 252536011 494625979 853264884 994107777 115338055 369640124 904206851 910982660 67350794 182199041 655643766 821794483 536050082 952024168 957426773 991963558 610030059 795127614 701151774 726026589 543125786 757728955 232616701 830034114 164585240 699583648 5398725 97277802 634218210 988781222 138884680 457066380 669452705 787154538 462943403 974606851 584982508 834525670 463373389 748905215 401618366 773608334 774957173 885488993 237331264 382800466 673329042 997810357 833482908 961268597 708775082 883340251 898147965 964292145 281720438 997272583 172522793 587261029 490784305 551154415 367057312 857582501 756701535 969241724 152729692 859090497 92392125 522145533 504085824 620271438 740953989 821402920 137312580 695617704 833231920 912316335 55562243 405083629 344897109 990091395 375645647 598227906 937686687 982327903 524193550 653536694 720834329 786071530 471251137 822844554 207119369 231751489 452364171 454549502 730943995 983323087 689152123 968635125 867666287 907241649 925783872 935268423 624220324 788143976 669112660 845810928 551736214 576104001 981917933 995030472 501591161 617281557 971715760 988869300 126686121 781802519 253840089 614076093 771721975 783899715 901911756 982104815 631469374 990126155 724561588 982884975 165423329 806809747 846197206 898363368 776038161 933483515 164121093 387996164 261375886 374112103 812783426 839805230 558045395 876186989 961491895 973635006 75035223 818322626 621659276 903936643 308668463 437133521 154395831 786830557 357509891 571722638 502659529 820634568 122730425 312025020 79987911 482433734 158159640 434314533 785932075 795837395 311105897 427222813 583085231 940473187 501375377 702986386 435565322 827486210 264528299 993883670 301061458 533795807 747379401 792381162 842064676 931086866 381078388 462731295 556432102 865571181 583893154 671595653 393705132 839526692 47778574 484805472 98510546 117606576 72709305 837636453 322095861 470005270 957494126 996578122 850188102 963031229 622938840 841291077 402022246 783378593 520657607 722444668 525896537 760034622 652886006 671484254 465951391 981174202 573180832 960544395 713868622 799174954 940101828 992689321 46418733 546280616 354364725 497273740 152772272 240095153 107001871 186728634 892620073 925782185 521434342 913452357 224808632 902977113 262391616 759364192 273387844 472304646 385228109 389621027 669926571 772078067 949377282 995891659 535694508 788249432 280820955 827156554 11187045 228127957 280626426 527508843 665302351 826723670 659764501 705306314 767559055 968736248 108746054 984410000 457352125 526185790 809446366 888779910 214454572 937104988 900429039 978560674 836944334 949482557 354981059 451513298 497077700 991755762 505951263 584994587 236784828 493414963 552346671 760838586 666767482 842561778 666980565 920216679 426717482 792283194 279108165 510459518 485335694 710391252 976342297 987777125 593500603 658699454 285673710 864472145 691386998 939468656 132438974 428830757 286739157 553919149 45795601 706973000 646514705 739555215 272281467 772154088 190129734 227871077 210972591 995844216 745273528 780769624 891569571 978015707 867540757 986987903 456379873 815994756 679061125 854241680 579732755 896219621 27255374 83686391 536431422 990668162 893721396 904541772 170514915 949992753 989319752 996084413 403666173 923173292 921300843 946277380 241749126 696735306 543191650 854710474 548037739 636325404 388286128 981469630 902577230 963011517 63949820 896585930 853767928 966281897 601241296 932663911 350927296 757297760 295346399 643947454 739541292 968107462 889393662 891985377 506826653 872448034 553778904 820606654 736866598 898498199 807214885 932040046 112852428 630770824 746762247 809007861 487478634 868918497 855023868 978396435 577270125 643198706 186885911 696378762 654398197 957352643 451967513 587971934 336730776 383618811 273666763 797641546 674333821 908658509 280346205 540215749 646682335 950941558 189325785 826676409 680156391 994967701 353997205 937210133 669570283 869522175 25638906 942328043 637467722 672364143 565044527 980227600 4259970 122453514 856273963 959011070 823812359 936369470 373643433 622806824 550590460 766729541 861567078 864568879 943542252 968316017 620108192 810422754 879932454 934265360 861873596 906416956 659276955 932725709 206103027 561988307 268934913 580794929 129770511 402384340 648891825 910720775 57982328 119728300 746254506 877347085 689519485 966148083 596753034 752559601 72668936 798024328 628408174 689848445 932625696 966814382 125707457 795125263 505790269 737637012 64879166 345552507 305775062 310268254 996145382 999918683 289663346 627044911 721106848 871386929 292868749 734275008 694993485 839878178 15081593 75039245 136638747 423814748 652354365 922000519 123218670 381805655 576124174 791705469 752551453 820260922 653896739 707749561 878077260 913562129 669253718 918195782 320654300 403824393 464722605 562407710 993020024 998367827 910279579 911722204 860381522 870623294 906209597 914689952 3899762 194250217 257303232 884963923 276599411 830039114 632315138 968303061 742968316 870844886 188849728 874727854 577729060 951877378 314010560 688529620 518200835 749051881 358422500 872280968 491550975 572415011 615503968 770677489 854936116 942719054 669152023 833735162 417098162 750402491 559697657 905627724 298377650 458125331 743475389 987549570 756212774 983301396 292443019 902864512 64822742 451813280 941058513 993502296 43398619 97463362 417119252 974070767 84656496 927258040 832429226 944562559 344805425 596308609 921167004 945184065 750166949 784445095 378699810 893589198 847816326 910305627 917425520 998854034 669149087 741238813 862384119 985828387 241469658 397121707 986520366 987677129 267492169 954640559 906390012 949789065 985522599 992783086 284679392 432571958 950039265 957854274 369274839 939166551 823583953 959752266 608288727 819296336 801681299 978494789 417157241 833214291 203970751 991387922 498566093 811280587 271998369 285679786 734941041 775125468 412236773 676041352 436165022 878993760 161952026 913310658 975721774 985420972 41956563 759919023 905764944 986956842 454327582 743733581 700193561 727761569 906784251 974887354 747020360 750997527 97047814 213826547 325886487 351364826 961619215 997906060 115514435 709243737 834320708 945538410 45739169 772704491 805307923 859030100 606469472 822045576 875087927 887323680 232740036 239937717 315763395 660577745 847864641 957908344 304004936 313772424 904822025 925477672 441017233 977171229 435749710 522632633 83505081 712302936 667570253 743739143 73880358 534546983 626863808 888585882 103961087 935119259 809188764 962131087 491537452 706512942 979138225 987656978 934297065 941674628 147906463 725298201 55223579 806989898 616508408 994188580 411091993 549345605 698247469 746268328 279144260 693544034 741380566 799097547 536208894 651571138 28564977 910521141 734233484 977917015 819027051 956882563 156415004 413440589 293569203 506884439 212069667 329327312 101590078 663022546 759162712 954299731 185636542 556935303 615003227 798329767 876244645 939583262 610910098 681890846 508855632 713158944 705442603 926442773 458442587 777893417 79538832 412327084 455483494 749953514 671281397 762546949 133587081 347665579 274208015 574855115 811906039 862454833 715482448 829950145 916418516 924834963 645814230 850031465 981137865 998761783 857915338 931169368 411861948 613655094 613162952 724027957 774881398 864223078 626131816 946357847 466146415 730195518 22983619 867165682 522065419 691398437 5176327 790921408 419248206 425729086 239141600 421815046 490472650 625716751 338956554 956433630 712428737 851599673 270544343 761069949 172854855 275495230 572265966 758302299 531854573 919727192 140307737 697335503 169501010 506952229 810200437 926654396 623792257 680123191 462669384 984139010 388914473 389822927 662293681 990246902 920727399 941960278 341461394 591797900 693085750 822014036 135553764 711789380 806674948 974271508 666502340 742050011 479558455 568407348 152069401 871369298 669161232 685261607 948361261 985173673 640913515 896976216 436419903 614623757 462427661 879504908 564755391 890632326 750778680 875112721 228950136 360307748 65820668 408281003 974264338 998294125 294451069 929596337 858180051 980819848 798032933 986034939 289130064 717824924 494417311 581733586 241307261 924401702 956976150 979504088 325231726 738746148 812441121 956039352 198409643 430920902 652879029 853564997 373975242 866248091 531548720 962942752 908199786 988770993 912155421 989044735 659056555 827403864 650701754 977963324 179400168 367439397 345502516 858445807 6609993 243806462 928817484 999393264 887751496 940756994 235646193 922090244 730666368 762970853 658264065 960957936 115653315 382567910 417847773 591427677 627725763 994411353 71719036 622253810 705790840 757857787 349219986 586579011 190872405 774190637 937231264 997044612 319467378 399818470 477354611 966688635 904596630 963534129 642495083 645634063 629311413 766241509 506691935 530014403 206713285 564891377 262995457 745675319 48635863 513481767 429806495 800340141 194706547 338419281 810528737 950162531 248446586 655166028 793491240 982202026 112696695 879604477 412352435 697559241 504974827 571638838 238621048 717968526 490059967 523054417 624902734 767127460 154304126 447109425 554062586 562397603 536920676 919109512 811001618 846523257 242753640 763502862 495349429 853716683 830976086 883936437 828820227 965656261 764770782 782861879 425220411 838679386 547552456 810701016 614783645 872245822 303987450 334354499 885106393 973666679 754423734 810728974 599846366 872870600 898818282 911686903 537993731 957408927 872732744 930857414 754911927 971101486 479482695 497315195 278891132 632773463 366710338 550874614 537557934 784642097 190167625 471310361 714650279 819174063 943229558 964020975 718106190 825076122 696675364 855589558 869805848 886187466 737636549 955210780 481406995 736104668 520747812 917640078 656278850 658367972 416192336 874533480 493141457 707954576 500968001 828614618 27013681 724995965 166923178 534412870 90992692 735227203 578683869 681728250 900716640 961390404 443399865 980447390 465784668 625065314 662170769 811653712 263264129 947358996 705373373 995315988 141063675 576420553 405916888 934634050 936905975 950825665 416133264 812618395 439722245 451465942 458032936 907419805 133198201 982802569 544526581 994921611 978270280 994573082 406490588 753603078 875103316 918227588 896192091 974327155 852311185 902152361 581550810 881645582 615764073 855986338 144749604 355906986 566337869 992989048 782888188 839250062 754712826 805242831 466545049 667917488 562162415 917004099 165589843 682099136 4558419 127120079 928784909 967665486 305992988 600541408 189904350 380361427 750618596 995969468 360709039 738788103 305741941 707022846 536453725 668869415 123359527 740433241 125198245 595756589 243649597 630024328 630434035 868561665 364351019 951636410 761608195 821977461 325950585 881307044 379643965 415107862 139031098 602501551 989112610 989476366 315586141 753682376 712147062 864372073 379450554 800142360 693229957 924635328 403397106 444081317 15055548 417354282 180222747 762099962 902354921 948350234 252708496 448072589 206077373 207212714 763399031 807140327 827787222 946017307 824808525 848675681 480229350 733252547 620144408 739396439 537101983 930540300 227589976 630991330 104049433 442523575 878678130 888366758 449744750 905356519 411626311 786974823 588666851 673226198 278561661 731509034 182290477 481343470 199905671 598122204 348068512 809679143 269730203 365445367 444174189 769277240 703411810 972862071 620828342 889630021 487390931 610760207 478438845 674075339 392710265 795693306 738611101 904294178 776926840 785004336 219666615 875963352 820713387 975686252 319895681 950940959 700057390 716552985 939519158 939532467 441952089 855642560 106544468 857619578 546676579 944671327 815559340 956763121 532824337 666015020 947650703 998123135 227887605 560916563 36545703 631936396 257579871 756263971 407806903 582303306 811842138 922145567 32885033 733177455 271449307 707361931 443275666 612047879 627026953 947919058 661530987 750737927 608435589 967038688 913010920 964202443 825534714 970607836 95165900 494286452 591874073 687256123 280324860 321361544 533540109 537185823 665178223 820149664 903482561 920287250 319201011 571177565 90852442 400528375 732673467 962608206 178459577 568262767 739793235 800919292 289070973 403567514 448471760 725393213 362209171 645098756 709861754 952345540 636856729 671469939 749149446 878984784 458767847 871277007 755699936 888323495 415582868 726034633 580387484 936778067 98386198 886186385 108254638 897790485 360130870 590145180 364913464 780105094 218593642 411554123 804519714 850080375 529629260 957381101 581288818 728893673 366884581 657746752 640154241 737448937 571311909 685814908 643657949 847778738 550244866 706440118 724966134 950627403 438501015 907422011 204439103 872738928 741303082 992750958 53664413 493325319 377915300 607957288 329088380 750007945 808970651 946983144 286517374 364306719 817858766 960533341 358494938 465871460 177886563 522715253 366738673 589163813 557675911 736555613 209904200 910412144 430226131 909823168 965721700 987161523 911320661 965981263 193835570 291777663 658116840 832257106 288781605 851928669 193367400 810733127 761546207 849839197 306727784 669639804 644285867 700445190 578842214 821699426 193584428 353710878 218062061 556752768 15032513 941325071 781221505 809732098 148585682 312008975 35823944 159419326 665357630 710303289 422764540 621851733 7505706 713419494 947773710 997092002 912854884 930041169 844017343 913979485 99889366 581868251 318394656 698147495 209210135 280972857 832943394 847645812 65671688 697281013 648239304 837875178 712458151 773879816 547277164 917795480 245673316 256654120 228328628 952657150 206738926 578189051 397069426 611764396 456338789 575244280 434778278 505515224 539620593 550826894 854671201 919622709 72553798 188444848 66407054 354116854 179600852 687349989 643342570 966379313 343616732 788508900 338763644 619354474 838723956 859083876 680648643 697866142 406206341 598940070 18986034 587531437 627913388 954625355 480599727 888948214 946867613 973561856 735482233 775664068 246048805 337105040 779530822 912929869 752585803 895672845 831590638 868252057 227829070 942310812 130136997 428756883 744348521 898623309 855171256 951941013 730530259 790596054 645764251 710174603 652569427 789540142 821913489 988329947 341394317 388583013 75969387 713460292 817423147 949399647 66615858 758830293 981665996 987654536 522640127 649590712 503245962 780924465 841072281 993545021 200660689 435585196 582132147 871186656 960106408 989648081 651176696 918642406 826549981 836085111 537250428 758992075 760424932 933782079 617112640 976652764 500658370 579543488 69403918 364397709 734813761 781745857 203123101 231217076 576982586 947894558 374707225 568988543 918635087 960438494 683764283 889891971 771796970 860616755 239858264 336037295 54085706 683936731 354885275 986729299 250684304 373695032 129146274 712324053 524646154 587489297 244494913 833114518 420044473 915574798 216415733 520403206 36050926 413012307 564241641 584320176 290046778 832402885 870177686 924810915 637671061 942970533 659639433 786111591 590797828 882647675 995936073 998395752 638275040 863392769 689882522 895327759 780386445 850032450 804982744 986067069 921451687 962957038 89835944 843456502 461843384 585997427 438418599 586533702 618413675 673451315 156358059 854712199 599115142 644953479 24223085 874014566 955450953 971240813 859952794 991386992 369513474 593845579 186782372 505784634 127284686 990823728 393473028 707539469 307339251 425193193 96643007 584707709 316493119 824105865 688937597 799051056 351682204 922426080 276233196 824182433 112796792 118540689 112922993 983810651 734416370 809188078 65435742 586741159 123998754 285132263 815539966 941193134 474672407 872100083 904050756 929797892 356958592 854525672 814276864 876546816 527028196 866292280 56608568 759757337 80030050 520402914 85031234 645794156 469222799 983011150 336940353 666341758 96809839 709007192 325492402 410658541 516631325 820290742 583350882 993768268 707068599 750059330 54557965 291283932 69143535 265189544 734901852 921410841 699921409 913137003 91924922 863135917 263509509 448253779 151160184 697834642 170837049 844287937 642721321 831235258 272800644 623194621 669103262 743245677 409888211 738719299 519202335 691995330 715453443 998594263 524236456 582769196 699547697 937083505 39734325 122696058 587102482 969659870 235461983 263949020 410372007 654763796 526302555 535069133 542956223 837237042 156928144 762630395 76486256 991213439 78502548 845523976 122312303 610581362 519968258 584948082 364904267 429831080 411945977 462431126 861895088 864078740 439016687 789510327 3965387 662952771 334580316 933244067 621806000 668851794 492463714 549794904 991785523 995294383 383928143 760545266 453734403 504204371 425828019 486074319 588473718 915614295 877321180 960120597 637306965 845531452 896534453 937482782 284760398 397497288 623486707 746551217 198602990 518655773 883995467 963041817 998694151 999795651 247767940 356167316 3324830 432751250 457014908 608131818 522812000 586230027 142759709 962546916 793860819 832282790 512590973 700700074 550670334 843763259 490127543 520751852 483618028 809839247 633299196 794988012 579982687 717758684 801070137 875633800 515127619 682700718 542998042 579368623 569333736 641378943 93016949 469230966 601957222 663427851 1067144 751825884 253697891 750213808 897594908 947288958 507696405 869722067 248274205 992072855 969294371 978217656 501012576 970862051 354508397 533156140 801286658 912720823 342363593 953686013 977300117 980883913 301310996 825852065 15605656 635938237 303370670 581516590 912631331 983684892 935810679 986290417 842131774 931038868 849571467 944898146 131023476 216482661 200511619 734125409 602324817 877365804 932763294 957479085 339349912 821690639 131483080 682220963 743085572 764878017 240695976 780466186 486784214 628605872 788584227 938826905 182624585 906296761 726849074 835826472 465193008 724984946 492760936 681242763 245056890 740628304 754285389 830109556 141358827 237143828 474235356 493789906 483893910 656591267 321145328 645580719 852003544 980674277 143557364 663157064 182693273 591387041 348192533 381975204 909291613 991659656 376324647 941490629 738856292 792147696 238264508 669217275 479430399 680078000 645217333 922088310 106221480 502310584 488940031 701202523 711517734 811264877 241040638 268623674 197322384 891553171 212476502 585209680 544706654 629318636 710840993 992959139 460264417 549299375 297092349 809186975 310058105 364295464 94869107 980984587 117462648 951754007 431285814 983027352 853294157 955296146 169414753 999198808 490393716 623081532 113955683 868595035 750527751 980936960 770929139 885911001 269845235 983598677 529919238 796257119 833074048 956096714 569360098 936444054 37018815 605452441 257686102 329189756 558379407 817850532 867000479 908653689 892748009 933184339 735825499 942976469 663342945 848375299 620160738 782244555 722998747 954349458 789524101 810487359 129838145 965270260 81629905 718142138 443274739 655556350 576778913 952004823 241435165 794259835 56140856 507308107 602991963 824583353 497508567 917477915 966103542 996622394 83047053 369806216 280734959 821433022 346682408 843988005 146001591 896609183 737832393 748616125 525219405 744997826 889209849 896742224 486881129 569866576 116003508 626220534 243139437 380992842 924773018 988702206 813960567 876184408 305348782 517396984 889813588 943308574 957475711 971446807 641843986 704250265 926022530 937265893 286613329 700884978 630778187 667377057 782635716 971610474 899921154 953656517 929953542 964878081 370711756 959958044 936584934 946564155 751724524 904570846 960690743 979894398 678914561 846023548 875814360 951060556 246769504 799292382 468123693 487844696 93684176 713260631 886562053 959285685 183510865 906414424 77497083 114934611 592506877 638040087 411879657 583237389 135785314 869656790 19378858 662804980 858224989 996649525 525139427 686427010 926244708 940698698 804944220 953264627 868152321 924491620 149766418 242550162 286615523 331105984 604077999 816584763 698959797 771248576 26024540 697064771 355439857 804833708 823595962 973220517 549586281 852058532 147592823 389971250 602471434 678877869 703428635 992220519 433187475 681789117 263793583 549589018 338658230 927617619 832544269 860304348 223608083 658323853 316348643 687467713 53852480 169854964 915081925 979360208 937356956 974701434 603140479 654479638 403950777 743183752 454246878 918392202 577065489 918597545 356775254 487628911 944613515 960118043 96128341 250342651 492412585 885511467 103998623 606863876 616616758 757990646 709171062 760662498 928120151 990680320 548169619 593689382 84617320 338766195 743921936 924541204 175092883 441495736 272044739 287889609 804655359 863143892 884454747 923441641 923830022 983083603 254791742 433507250 687798050 843417512 933707557 935458822 486722028 617864656 783368886 953886447 434920110 928515698 991541515 997289653 271513356 423071076 327388958 435221666 930519702 969292775 124434168 622435046 872700902 979969168 925064002 981455986 559671540 859123669 911933469 953753913 968087866 996111232 781414985 968479201 100308796 867875512 910841392 960506540 532764443 850148575 215022661 960930416 6052852 476081606 875005441 972568242 714361611 834447759 604745036 751105403 187342843 504726824 982636756 988515489 475249291 988140752 954899948 955776399 815498565 934255682 319587183 554085706 163705009 748796426 889615079 915093460 135054496 791767198 842477044 862051756 395326041 534746250 916473595 944241759 509076103 547628295 987925399 994953633 733721835 849951749 786786575 810669409 349118151 359854905 99502763 716935791 740578936 857606127 790585054 865787219 809397631 877172371 388609774 921594463 845571516 864002321 824957270 907159551 361164287 817709174 94801867 683040179 883428884 884546594 622296456 974939172 710562677 890519653 605506302 615318211 738191820 868093721 392246891 973769091 725758611 988785911 854701426 890329714 797308935 872485427 46648822 197555780 719648151 782226309 346199930 379317349 593056493 866619851 946914663 980887648 603571360 622139357 26959401 672831999 354388597 359780402 115018692 914989337 816086576 961716933 108081988 865578364 436721201 635566161 555386260 732293443 922746118 988909858 896527036 983054431 427408768 783302098 75786743 138267794 314797453 412354039 882569203 945290432 619739017 632612701 690050677 752238820 607032824 957354912 785367420 960594236 323846544 928056546 105900669 801376877 833478860 928699879 590943709 691292995 102918696 126411340 379511312 555857206 64967000 865938000 42210345 578343698 264902581 473026123 395446790 649211739 547189784 566570144 624430795 675019093 112416120 386170238 637048014 980557975 657230867 837720549 789230575 952874579 734266541 750226358 939992873 958149140 793244382 832838004 767724704 950913177 827311107 860108447 532435968 557431358 983683656 995064454 820587068 866651082 10786628 766651775 374293101 692980151 279687247 687949018 720771279 832925451 338949580 690169321 165181198 220314269 731439476 787786444 387843383 535658648 754712750 827332881 732934645 891624368 80011437 696073058 452476686 926800445 672724591 873104955 67006390 162767883 882939522 930064042 689801814 965035705 26390928 217059188 598675920 697345882 750412161 903951386 520250912 859126495 171590180 590725367 505078975 549976040 284687717 783306392 459812044 904386558 362705545 544946279 87028791 118907971 258305735 954342686 547776851 818055691 961903367 963430353 38786262 167357816 982148605 992987114 790358027 857384722 892211379 937677023 794734340 907627622 670470505 895415073 286157839 511222452 227423972 948896496 674695120 762003167 423868650 853990322 616606369 892981551 802800911 980628945 607589651 893979529 920101119 967715129 8562129 72500675 313540811 597702880 434342498 723497983 78510336 330062447 164080170 856050919 963964503 972653019 265262061 644489283 990488201 994936648 64084004 463114191 563230857 868477465 989756339 996704840 755241050 914223325 398017877 790713055 575048794 661724041 652856582 745813952 311368348 618105504 204078669 522369966 811550205 979360804 532123989 647048307 71144384 370875262 735000233 988739795 479621214 970201046 985712999 994448231 409234539 942677833 269011723 449542950 319676768 542853072 125269671 187631331 526879540 787775687 546062386 836884284 120460276 739306492 283390524 944380250 57224542 206407365 894702446 989245083 304487330 445801727 380539625 543886810 905929098 995819685 957997145 960246108 603432253 846818249 787570807 845796602 307190233 989870538 279556204 870657765 204921408 271192696 762204620 966755353 577031639 660981773 198124735 572749928 27860021 574552027 978682715 999124982 812581539 986311461 537568479 730843643 275222789 607671772 104114226 259034797 478727838 978180402 448454784 749408891 978253822 984094937 799519031 842435979 221866760 642762572 334623425 578046175 932907530 948331360 132480974 575175870 485824030 562070175 216575222 353895319 742633422 985299104 12726507 539109269 204215643 932858854 575337963 725615703 90038963 524713707 597817475 972556082 4777020 482363022 438936647 867892516 63821767 797435028 751993462 908234086 10201597 734716810 385829208 495663679 583986392 801212934 608764028 894370999 455697022 883556372 731047382 911275971 542313993 820924453 357033492 921349799 501272207 707074973 981530892 998386564 38979639 90807963 919138142 955732633 78479746 777859884 329962775 389572718 580958799 962792960 848483072 902690552 395009690 927562084 692813199 974982644 368126911 742806612 658684938 939335723 587575147 898191804 905979068 915344569 118523879 846315935 712355382 916040872 413243507 678148778 708059292 757663267 391194721 873076163 471832188 730936253 993825619 999278081 535458642 770552657 40283059 441802117 700521264 790397898 678429122 773790451 398330215 937537739 86257477 311780576 927820731 967533695 46582120 699967610 677421233 783021224 727818069 911984462 958098170 991216511 926533399 940950189 876211551 934798509 365888190 915989992 334483877 374707580 382069733 801974866 117270413 462888429 838055053 924923486 461988930 464351773 244441081 639687144 831201557 940057137 186541448 555916778 66349779 197182046 118501715 963850379 439118708 578939730 270759562 527195321 853503668 940278005 635413879 971938156 148864965 286897172 484041264 815508287 845440104 897546325 706604343 807468391 130683520 807545963 438421442 453819867 991005015 999450519 979984203 986479542 526983692 848840791 263293793 694019380 84404846 477672906 592285860 989756367 352532462 364344426 801252382 962104321 865228563 977011914 110480439 215036966 405671064 522493412 254613789 455862070 858335654 870457155 169077979 899511437 515616941 755010607 193830273 957580910 979118798 991056800 763353924 795791702 744314160 830484764 842335342 899166340 189058315 233053558 828951615 962773571 220984541 966166538 626358682 633402767 694193615 710967766 322603224 323659466 749354627 824025316 382867552 859807996 632704273 861567993 497466429 820270320 942167397 996986908 417228959 863084246 192137777 824753235 538312404 643425554 237068739 633850979 105275835 759795533 374889090 656864365 125772075 494955074 141364886 637610943 141483217 664810810 444240752 599168879 590006267 594523471 304643027 364872377 649215093 895213161 80035253 145177619 768012220 808328680 562516617 755720266 593790401 650673534 79328497 928521470 287130922 967356384 265940374 855963383 275202901 832718785 432741689 964216840 956691923 968898641 236491488 391882920 537444264 831912956 739226379 843830140 13816276 349857485 15225860 814395220 595930900 950111888 184874556 527948925 256996799 747194649 815543169 938311730 965746348 966675729 75242681 751449507 580354343 596314966 499100122 852310238 714248004 940625649 230029576 931943204 513039993 721018047 516743028 629171803 168184438 964609945 190218432 368449572 588356234 692989155 803609219 859447104 723703405 957986817 422629537 996793491 263284065 672723727 32256798 132622780 104232792 843136845 709130184 792407706 411530189 612861608 387793079 532607410 677034808 727217257 800775941 927199644 493618767 678831163 283947243 434692435 537995239 925705546 559207799 831358982 920895615 979477789 511607862 609709833 133160316 571445637 941127553 970122718 143891036 252052176 696950584 900756442 735162410 773067180 547031629 706124262 644938609 755784915 277230097 370671197 194962548 767744505 614041951 645016773 111494604 267610165 9679062 392018151 981532022 999319575 396463903 917936142 664751194 993284808 163057877 511350151 462661849 523252476 67527787 333159224 474487774 963896468 819512262 822768424 345026648 561710818 152006488 592287174 344328008 644557061 999438281 999927057 916322443 917629583 6595663 245414309 469663454 650766408 583711760 617279627 471344524 690370683 699768736 921420460 187735341 451294395 2491338 659322648 748553831 925958643 149207371 501997166 754142194 941084936 982285202 987500583 734061296 778194842 336444277 544162734 450305609 741653618 709067132 844866233 97552415 534802399 93214904 388344427 874460048 940242347 389805719 550499395 530916264 884367968 620492893 742640654 494026909 524707877 231395927 819294659 616040861 741147553 986026434 995428809 210345278 583276014 938307016 973844917 155224529 431571517 553477495 607563163 313382686 788352105 265728166 510717860 300744042 844298703 93894466 986738968 155624299 224880537 637868344 662226100 890114772 910455004 850999108 946969615 588661156 851530511 158608465 605606213 326905637 900934217 400206170 495594556 464307005 750789675 962563337 995156276 307846220 314814484 260643386 632222037 715597868 952723239 80323921 851180316 236326808 984828316 180373106 295779534 848432192 950360499 682608098 810696064 636173831 925860115 439995139 912131934 729953271 815824272 17029262 109495214 193844637 588401349 404595965 798864224 205437699 505170303 70512110 337764292 993479817 996478884 217647081 575346711 310235740 531370774 604519738 919640188 849130791 859022910 883848172 974767862 977162480 988385300 705757962 785295627 163311973 289113572 223687816 396687303 623034633 997936316 547093508 563785815 345315708 460818708 902535110 993028422 576042970 614434068 759760337 828352457 890637406 966801182 911281025 920502900 219771419 789350396 621355108 923678853 841865883 942925088 378658566 685450647 334600835 845211227 589770418 858319700 860140662 986012625 577674611 876760532 740619769 971127551 188072565 638938022 448858941 777105096 244150234 467896150 341237898 497974051 20000929 523532966 453099836 960269760 973675462 986875743 420186566 855652625 243229310 244093674 567771184 858508879 811158766 958751249 872400282 914048213 875599266 925477094 947454423 979995633 624067777 768242272 279696603 985473228 624439711 930505839 483185980 632339633 251935698 912444941 786925961 881227827 869858141 924032501 237950404 712975347 341468124 960926553 390944281 419737352 433494481 609772388 361782536 580481364 515635253 709855560 68219363 676731956 335508621 527502463 650203654 775942958 219175029 997255635 253595713 422830236 342401400 403097287 149079123 529721572 826550979 978581143 618189622 830028357 978999414 995923408 933033693 948630165 473870396 879366571 640752793 659084266 470596223 506868509 564000720 905938110 698906554 913133703 802667103 992906049 3604304 987368404 382192726 481642194 720799528 726850271 231619716 545819843 527121485 980230350 435450154 725847400 257192729 320301342 266608137 863198133 104071291 441234352 216407210 346703488 9511479 650734927 739794943 959426586 976313865 994188044 523704551 743435930 262252668 714087484 915896777 974239515 653311571 979435802 164763891 849215264 56863621 62505608 159469290 342551852 404025262 800479461 862987429 907668729 358201411 444971022 883601779 939642098 915032972 968438616 221458847 291626749 699870991 847512658 925677516 996924814 252455103 303743418 929517563 947438426 26480450 737445670 873997392 896553213 171096781 575907312 289804339 997992434 755050222 779704678 299579896 498801020 70697879 265179006 437748140 598369432 943238136 960890513 188247298 977837497 866776672 979314930 393917059 484985434 496611390 848911235 452376813 748132419 405569221 821468000 977145546 981936704 786027085 834688806 176419813 765149461 71116079 509227268 276288132 749204670 83032727 322891485 762316434 801901235 313941016 379507235 880543357 889842976 779123313 895773117 254127437 430197922 169678666 738259662 409435931 649664542 324754489 620259069 237998330 530409466 442816178 838039400 273232896 375261559 170797519 764512754 86827021 930752802 858106898 899204262 99509905 899499679 998411909 999633723 563488394 915813538 595291787 845358676 331813339 685652551 832032556 977991396 292466848 404046474 14886903 629573531 627980041 950627328 963870151 982126905 656937077 806577015 125685008 388953655 545614413 734766128 477024563 844409750 160689450 802628023 479529035 586330204 649113413 956488173 974192684 982334804 440936879 667021273 332704214 348511922 535860804 571069311 335290514 479548780 740331748 998845298 467492986 856183458 306578436 341180469 161479184 578795986 263656660 469556788 599831165 803820932 244601308 706094626 527541736 638714121 410814710 735998111 741841167 799587595 957393263 979043239 613984661 735060813 177290224 992518593 446264292 612851285 679594410 780904667 804286056 927919095 578319268 629757120 382162782 401056554 886344816 958150007 814064235 963703140 66861507 246352507 42426996 269681418 612200511 894644156 605910618 781856310 435693992 483537087 465402946 907444883 533121317 946042788 380957268 516316672 541196801 785282816 628320910 991335120 459058698 768123108 248183552 262930401 989003995 996044309 409350136 591050105 401399455 761555938 127713822 504957731 537763546 925024335 992561351 993291182 320788009 438478797 950790750 989086707 242521495 286476826 558112285 738192429 646702826 935598377 802387140 873056490 710210346 947999987 983735115 985607647 344215607 604248632 468224056 633638493 967417265 995959570 731301187 879971733 832770426 918872755 315734517 826077126 416184254 543004134 932309476 948520765 117836218 519658405 206959371 261564417 442214123 995581108 96422710 485693538 345303400 925160037 107121607 933322727 34592172 818749185 719559764 786007735 130341651 341188556 225253860 272565199 421908400 755162743 506281695 626591486 79992239 259686205 602310159 919751080 800118608 957342501 204610740 611471951 882865324 935419455 275801073 607477854 416249848 686323917 168008175 756781274 400569507 660431680 163184052 959105334 57089948 864203543 958095564 963966459 455337162 614803156 116360162 238243588 846632693 990137711 814126462 941970457 11810586 309995002 4856981 409344701 500239468 679837936 816487586 953743734 123976538 774284726 554437279 685591401 381392933 748710137 678214546 769121413 57934981 166712262 706674623 860296592 674376012 839111839 963020241 983057022 636521905 689138594 971651040 990162619 308998341 828889983 701791336 929546439 97949102 390040960 969392510 998474006 877854154 950918096 289235301 526536166 766272719 793287030 83779891 851984341 159200240 386743137 960044804 979661639 237161240 858262844 923154281 986136536 258537733 779997395 703709007 857105509 292574836 908768650 122350302 404737794 348894581 432865855 720990468 802659766 368831288 946637272 315121098 890044660 220670733 587597551 342090632 658702630 958958816 990267947 443051360 876134074 791634641 862971811 681885875 936812063 285659036 876195919 854145053 940899857 833325831 841450233 618616465 656489649 37491205 974103677 748576660 837907734 894002678 998815174 855713491 983013976 37283413 346084615 974626349 983095771 89596056 810086504 371271044 443617328 36262206 543592013 116097415 412466885 202123407 643877131 514163602 921393378 559977949 597644319 309941858 810779502 115644879 461945309 520653029 968616998 290532735 491862081 172183003 785781804 735481153 906388801 129378965 188882585 72117118 555480480 133104016 237615891 354531721 631634638 811244495 814561185 62049790 671969274 142615888 814748271 687095749 883434947 732506264 735380443 256946916 840632506 129196884 463710849 122070681 534537017 110502868 162717586 847417589 979635560 361709288 389032715 392833282 865571611 133356823 491274291 280415288 412284105 427628156 427679216 813530697 921777906 161475795 277889818 539611381 900758876 207762242 938553750 492363522 916468164 140308709 734833825 550855339 570576110 289441571 337234633 496558437 780980657 800592201 806642675 833530241 928814602 793858131 832941333 177713220 274839166 497524409 963671422 569398654 780047209 941157620 968031908 4781547 29199335 661817737 746618402 597018331 771285620 518232226 878866317 341571983 827674488 315383378 367060866 520229588 653677961 715693378 909307572 984356164 998872023 622220455 903946335 737038567 987906418 32894391 559197810 514762846 777450357 684919279 869844893 680323468 688230125 250229793 346994526 430050638 626926619 854702657 857103250 724957047 833088212 675941786 812576910 621364287 863014667 431719541 641014136 599237134 802920306 662119928 793736077 346321729 452176595 561473856 909091478 395198936 956301095 271271650 544588058 846490496 886353482 712492720 982666804 69887222 843996955 215669360 825868878 783120730 914428153 726623613 779502158 49881287 368009779 359680481 959202146 155187530 813858679 865641028 978924785 472011393 733460533 225385997 587606753 726288253 733271324 818395564 823069043 713283088 965912055 776914758 940746821 994756235 996112245 173083988 296290148 703475545 715549550 147445448 597244759 440202091 723914424 234746789 909065032 356282202 949374499 389372238 737902605 308869463 808152688 269724506 287164151 479395473 838022748 619145779 745292906 649931899 651015318 737036308 972330827 185488686 216558926 200464790 362701749 68130265 423009840 844718593 989129057 968718520 974390669 421396837 992459263 683391333 795877615 447342960 651645556 532374411 870821256 898703493 996369518 604717095 679534553 398660772 550278447 59161641 301238404 339376309 699277261 104072154 211864503 785204403 798397755 358640873 478233565 353836817 756433296 372633137 541593605 903508897 959904086 29964350 775989601 20579350 269926427 24971483 158866014 609723775 922394365 104857173 731316779 400340190 558249231 985003430 987753850 458635741 735552730 806708134 883021147 291190550 802174039 867518764 965614681 549612908 749204534 713239221 961696141 609667987 648320667 148138619 907650595 167311805 988432563 381530166 552700651 502411326 997501354 311803046 678683253 480239909 662840215 748737752 944921306 602767502 962607983 379063154 754012580 326087682 981938593 429905281 482014808 390754643 407310417 482359703 599838406 547777171 928536659 760730952 814615120 309686325 356736727 565353217 999595123 379567071 945706506 866644343 979922012 625206438 889377216 694178060 948538826 473656612 652052613 725065931 986240109 211929112 511250459 284162270 923059051 904970467 932969513 753363647 840604389 244840090 266542239 927230121 980634793 260813602 504151167 310078258 885742001 88764969 232359725 934029608 993054985 961096339 963983466 847447540 969506951 54191777 436719540 309704445 681250542 899981654 943797066 504491773 830191150 377551887 934419882 943710383 963335334 859901450 960816189 655411090 806582682 826672689 833647998 123220411 217694975 836762482 839603840 844254352 934495405 243581867 481784630 706431195 861196006 445987254 996667142 180784859 281531787 970162175 994920626 311559748 633292180 391841177 877723512 996585273 999480589 75695803 743955747 136834793 408626113 249523939 478843341 55914979 240937125 695304757 852157117 514359755 979852893 671402344 734291042 542780913 936255200 923143793 986508419 771085106 960638396 171445624 697692977 589446671 839935701 784993527 794804773 430985964 561622430 45590352 263178050 696073330 773510268 771386598 947644614 972145876 992225314 405083942 751841211 465304485 602232961 898243977 952937683 660634661 805032566 320106803 338903091 337128373 622817837 792031172 809261552 885381117 961363735 834401859 917608235 726231313 975327784 43134536 203584357 497755270 591671235 405469448 977255057 703337186 941133230 452676732 513175026 843062818 984127512 116042552 192771577 997575101 999986932 282454456 414762654 643641588 916759496 431765495 852937136 266434525 979223739 581171308 823053743 471036363 831065274 853685538 855032889 64919095 543333674 84162852 790437488 917954540 951670061 419263222 863136778 564816960 613327935 401912284 608693087 559607887 797174936 245128270 380564499 147113221 521822146 307461732 945009155 912150581 966728056 492899438 873322173 493132421 957308033 941102690 953967942 793422337 799483094 278578420 907768861 559425958 657692695 451877600 627604238 766154197 772199160 258564456 314732827 780364622 784663517 741965330 974609673 412909026 843870286 11805761 852584697 588797091 735063172 376633464 520710763 795080395 869844554 701380472 934110679 363116215 843221795 353030347 763048299 325784752 957202293 671675895 727546621 656061727 681958098 506448263 729774438 549058643 693809503 329502787 503817902 542772413 978715847 265845204 674838425 281156158 935104629 76519279 723086956 581846840 977954474 538360033 704233624 776684836 927237767 498145051 982677772 125145691 149459568 503487498 773357780 515305356 695993039 75724696 839934672 478707728 502265864 737907678 768575070 459274500 899819630 262111585 414561258 79722047 580741826 620522229 641161975 490152051 502812850 941558226 957976374 510591816 588140069 644422156 667761207 771640211 972666262 568119251 790333195 699916033 860748517 911444551 993835639 622115347 960132451 971230654 987675470 797531482 835095391 801101352 938565377 120421422 730141413 33115756 555430354 650801303 835271549 25673934 130672292 48278127 842545751 585494898 693193623 538545976 627449291 473363380 946869734 311144055 619520463 838041843 893459277 273307882 532879000 697768541 977985245 590770677 900672301 130164639 539708396 446028246 758590140 195938963 683703529 364969649 717146437 888850170 902617506 432091475 921687268 341166347 829671743 428735749 688749145 688360938 747468581 840585327 891399507 967078106 969032581 112563052 296227606 47567058 801242123 560438512 936788241 661705706 970009377 89329873 569988610 256607189 748792983 961173082 989341697 484090387 525566642 185844353 334520113 511666394 579360196 6069951 419263800 73221232 510015752 928852578 984248209 944896629 949526450 270228145 846688510 341559224 983497935 544231894 953586448 997167171 999252362 440350109 459270123 420411587 462442804 337690725 676643417 348610185 616216254 163302355 472991707 237062029 769842034 889344888 962075659 108250416 926130740 524679946 885236755 341476440 752657889 996932120 998795900 510269860 979670966 890504550 998300562 437614311 510007142 675009760 995617209 813707089 998099575 722651386 943819683 766707787 872005880 332155336 725278107 407216640 859724529 411142754 733124911 899693600 947321542 769887309 953541439 958575811 969366500 420008077 473360794 597553899 661599772 655268258 742358165 233388969 987595853 383672703 454222474 722608546 814378594 404123696 583759447 371513364 895483744 638816569 872519167 368021506 405069242 960587934 988143979 502659006 781463312 328449799 734973541 752623755 878809500 789299628 990369303 502087331 521001574 725046491 946830748 593731148 872893755 82289350 903698476 126323491 677325059 106544629 285563120 241477296 462408382 812317434 906414298 334163737 837517752 11477877 924046117 284427407 924497165 195073648 972579262 467479614 888613859 20121306 634519199 763015320 778444825 643350915 946735592 705792317 758906518 122195914 672793553 120622891 321394870 101998161 661127663 219329847 476748416 153279127 647848762 32111862 577690695 58291017 108735226 522712247 673742794 189162925 549676551 595787441 980356479 813775000 818072034 422729080 625613702 496896475 531090796 905009442 926081605 652789562 965323455 1294008 933391913 951295090 964802990 102019073 741968487 124559840 468451717 985700353 994065631 186289346 355278019 709411670 959230018 56457964 307949666 894697971 952111100 333747402 753722007 106507693 631154229 434895891 611413835 802849256 916344694 929745881 930893868 291208657 492849449 322076860 490930492 570258439 655135585 242666931 436438031 984705197 997478311 824247692 942355138 935180375 949207133 926837277 986248344 179683315 369698464 717046827 788218515 326776730 751596131 255499556 514662087 61747346 77324249 521853612 925373840 312753612 765785238 860704537 883613971 786189786 968635745 4489953 419767057 398070512 837727092 43202823 650127216 856759568 983047506 438112478 945685591 300257883 467403546 923701564 933744571 292539751 974502980 977485146 998168545 295796116 634344484 814820974 914630402 969200600 969775809 370948070 715351521 34091442 189309107 60432434 297705352 643042682 744356361 693586864 817951047 979080123 990304733 827053817 842899166 9383901 540158369 151899798 241991636 234972448 521306308 858010761 937261351 620698057 652273025 838189450 917444230 163426343 317431416 626024593 871869165 5161575 574659384 840182050 975793698 287707099 730731538 246612501 385960854 699954528 957697361 138875332 502743984 143747859 527096431 18834761 372753078 456003471 473559304 82158619 332185399 116451050 116729370 270415291 820567604 342162450 356638156 401094728 531184229 265484254 921679179 372062224 697475298 617955985 840927535 575493313 734886443 427991524 503036838 745966901 903094795 344617717 601403620 60419833 183492482 251084294 992978976 812273355 888611546 64094874 111443935 319400904 822324455 718783857 810356451 179546204 321697020 244937030 687770746 476550769 921629464 403852712 603337209 863738744 938554054 894490838 971331534 891273658 979739950 63925492 511736616 620008614 815128210 780860084 946011114 922268983 986396320 564700078 569359638 142503427 675092288 490511626 806023810 886334620 964073522 708525869 748086300 106180921 957670388 291261372 813170779 353653300 541868894 564174658 665184340 431571089 522252971 762975659 965693692 337991976 341422599 450036616 460051843 358538874 724512012 174039995 560636525 960684286 961846213 599755567 607310377 262090953 781418964 732640943 855047707 899572780 920807500 180421099 374515094 940310065 988677274 98181578 953505491 516392001 575422110 187281828 310747755 363065713 945178876 125519867 729331430 972709057 982005093 183682247 348793078 942383370 959630611 923766514 952306083 405869952 841265282 338077996 684636739 417995346 674206793 979909427 998424368 445922648 605842303 100898602 834883348 410868038 956938361 529735768 797556962 747915490 797727674 51575306 342682054 529790786 618208262 969399027 981123497 627349540 838922679 447888115 604202996 787307387 788650024 726112230 834010371 25524252 806794275 696683201 756906944 982651513 987631532 343715639 798427069 980233634 980488499 725585972 775521700 904411349 984552961 936267269 955066983 180271943 600487716 629781355 840610710 130151453 433420184 556086982 733352090 504150674 540915921 308743063 740466906 506789216 763040569 906339854 909976163 79202281 162603664 12128241 704368843 27087084 589199292 13145276 633765008 833356646 981983260 662201940 671383850 455875037 837780263 398748493 429914405 120313110 750227966 208179992 662954716 633185837 871778429 750259155 962240328 388537875 790446366 221645352 684235656 214643132 482654073 823090294 893639952 468350276 499459122 58260681 767408181 428783231 732347044 353026122 750635801 583292777 766548369 303044115 625052681 152726876 485050542 795632173 889704123 351290227 482788487 214312253 770811246 380897736 876409242 905101472 989127116 133081686 739316258 830717336 982628371 420819314 866741116 546471385 605676209 631486043 782226886 713556737 722147084 835766160 904894281 441289113 895530416 119742553 708522444 837925172 964229509 518841551 902123287 485947298 572781611 664606277 802380371 431821293 512796885 136009758 788806305 860890378 987690526 580691838 907170160 703431195 907392315 367713533 566142517 206515365 520851747 244932581 716466302 881480590 953110698 371326271 982742421 449906400 844109937 819984570 985281202 433282468 568638508 808127875 890122897 920807274 929492704 944705484 969192998 590754915 890441103 898342045 996567556 245902870 406286110 6525979 198679103 847458900 867780749 492612984 600687523 429387514 589309371 448373315 479310555 413964964 840933612 874059894 907917743 228450474 771624792 13685254 219306876 214452746 357080553 588299949 953790615 334417155 654861341 941463950 971370783 770187910 826056886 879187774 978361967 960925827 967623682 577588162 825679731 708324502 823585100 197408175 449680763 368522239 958589236 452822330 795087221 637590759 802421764 777529323 866469398 176549686 588022900 904795583 960186905 48218714 110246389 396983413 898419749 832333968 989212914 464710336 866237495 608106784 830571881 332702284 522602188 634853511 887393969 80502407 495697803 58356420 799742828 793765333 911572193 465649028 616717900 668871858 713778774 604433165 862042718 605494047 866921690 41818053 290343454 644632456 755297570 580013309 670460181 539754262 862102315 765044150 938085108 957125168 978696599 318800420 365150624 135095149 633015535 939601084 962485231 168211333 449323651 44768635 786101299 826191698 901834595 507654909 979531653 323956793 817912896 797862469 889824339 619424175 900698750 630535598 637892282 891164139 953879129 690871191 942614222 869645776 979946627 456113254 798685804 199016828 259789299 470552837 836647351 956462210 971605784 870164373 937724274 624081924 797190237 267594968 668979922 810434365 894235172 548370473 991568421 715484180 813308832 839784801 863268210 523747293 702425621 353036556 603444217 378600906 879547297 318948684 668440941 492046615 561286507 411221876 701720417 210725697 869166192 266159203 901850011 431876898 930558827 406360348 670316146 642661483 702818644 814235950 857847114 530247564 671481520 168944016 215370770 330925394 942693809 878507717 987893861 7778713 126388135 447416622 769019384 894608136 973645858 962387826 992341593 776972629 937790351 336322462 643057896 40327094 740721683 338308303 839127467 440907591 461675299 84483206 390800350 121479088 913231028 127916226 876775333 657642775 855229560 5127819 990072214 636937048 966641953 86051632 352350900 52787938 670020167 305599799 826559317 231696754 324422254 983424270 987048529 310908580 540552372 27091434 34450559 684415619 809831967 971392103 993758808 940492230 990199725 749076358 787775361 239748004 671248965 881541120 888921256 664723785 742455518 697779187 930679158 162218822 669776485 328065199 615938963 195854701 917847961 788786040 810236800 9467924 571838346 232028761 890629191 665212873 899630961 987212689 991606098 509382905 900749701 813598496 961480028 966785014 987168673 703636010 919747223 469414402 898976991 495358696 891286847 384995220 714144047 104151000 325158155 634897380 682752232 709866191 993517674 955205551 968360148 93560483 390230467 546156060 937605314 497373073 923715378 853230318 996017293 743347175 793106408 909069998 936775094 399256755 459244062 714189647 717443438 563075014 749724413 378665673 582722539 331143488 547772168 590907163 954312448 397201638 696015155 906056295 925650166 982805383 986072185 152386266 628976379 278918785 363172822 341964115 516609060 393827192 711535140 613246807 893179503 260584070 475204807 469956250 604829665 940052921 986991171 521869991 767007555 684486294 899551359 987715766 993421257 451988389 646803596 669769629 790984741 309696797 793657029 585123445 706249682 193158034 954259348 97626057 194153060 399739125 658163476 813767130 942589749 741912635 850817475 400849891 553801084 428379021 901385377 110571997 291122327 201511093 716955398 603927310 936091505 146594000 466955740 404755937 623440916 750491907 923377024 78752176 476856030 851223188 876921597 497157201 668521734 71438123 687705683 507762386 873809365 614967000 619129468 299271323 338877945 12123667 995588873 900174932 981343569 492390339 631264136 915163121 971461267 830020988 978137139 144656772 789347952 604109548 718349423 513236335 955760037 781705617 816705262 260237329 877334308 786556796 993466988 511406762 520023450 921398244 927914939 940847818 947306584 66880919 876594134 518811466 877807709 365621846 868156111 718337446 945083996 290441976 511999951 484158615 907319432 932694390 975098190 732540767 878925316 65034805 595650209 22732887 812582673 591032567 858954508 392983419 648521799 230650776 674034376 299649286 328405115 180618806 510540752 841020617 931083748 497065742 789213706 935804906 989227163 315494650 536655554 444365575 949688894 457341619 589757076 756984105 855529025 483107742 888650542 779481497 998692977 785901769 858901932 363827018 950527862 724637978 969552527 105455739 477337377 326982733 332874202 42225965 802789152 292859297 516767790 765373546 798116657 86597719 921868664 882176766 930420828 60811244 321040669 844172593 969411631 730199360 986910617 99683515 703536298 438050409 754583996 782059813 982942062 923613099 952820689 305016586 892621010 123064063 214896255 256412173 586293073 75467376 521216282 655723277 842279478 930556244 982905287 460333957 780677556 427881037 797138403 386568972 573708434 642808567 844519704 339604493 429937725 394146941 727901105 585736100 992467364 215921854 618298404 261032851 556679563 880829719 965773012 986149236 994157943 472713620 653793976 142151468 822039930 956368862 995092468 69936927 110077662 107307961 837545207 360470819 445675686 997922194 998731624 382329991 994204899 157305565 503352861 55578271 256329353 239561084 452262115 558967433 771327053 832671359 933151602 311593815 446718339 561903417 893738405 757169420 870646829 431594431 770893566 203936647 581799080 511894297 670260277 149517198 217154962 585959303 820205825 349615838 704457334 528207102 703792695 385844072 564118995 931008112 963556974 28218219 917998951 897994646 914005366 529237550 853049338 85203404 283091234 537241937 561353762 155154604 797838782 867197604 871039899 739323218 901479051 151341431 563631008 407306893 425474385 376075769 663615292 326628399 979135803 886690271 929966775 58438011 257813681 666204027 902102923 893544369 919030808 43385258 813083546 679663378 959155156 334069104 892677505 355277567 676864384 941467220 972590185 856066617 901594280 891467236 905314499 504425719 963812957 618916092 883425194 465467580 539117206 167871293 207602375 438213132 877272197 577704840 838534741 138673748 960022211 316796986 790560521 295634855 706374982 694683760 761841652 106213019 177213483 543972811 713273138 12308946 904648936 432465410 823876949 430063126 667161388 493880501 668944002 876978856 983931030 38122768 390309635 469904934 690106544 700573284 758714747 868097509 869081145 521900937 804112568 350683659 644301460 118776085 940536566 926830523 985065506 874961126 947657429 937573971 943312471 210485010 907951999 906385357 993748491 177768555 254571445 258013890 731507914 762512415 872260598 955514621 992720287 544868771 939987622 33079836 707215714 855726020 953249784 204874762 542084317 296669944 522014686 933843033 976938740 896376241 977669836 696611002 973140295 336951852 717574452 746719546 929248635 670539847 981551341 900981665 960384798 448425331 569236659 745989345 838617090 963169586 974882842 131997780 804616302 101577005 622027086 244782840 450057356 895204753 901237703 248094735 362268537 645759162 843109033 849655154 906027138 364035001 548752866 736890611 746427607 308405878 657300226 108531372 503556500 864570399 920610905 288483831 526620471 813837646 859359209 527813756 933320493 803936583 976175940 776636909 893251179 990989413 994381451 5670923 508186797 379957394 644781717 528717822 635396794 130492754 241836575 208306011 853776355 334906088 855286122 520145295 943216377 996585757 996835538 610703493 616732163 308159705 578818006 776589764 823635063 854645310 914395337 884484750 929752374 592566757 670194521 638164073 968764053 880999927 887446291 704097386 711494990 80309654 467730695 63052471 535995459 932780172 954483150 820381116 951893681 550619421 816246763 400791971 547792398 526629371 641860807 917980086 991492939 77907229 846290255 221065117 944286191 255331863 760224582 31449297 888739545 89997650 200883916 244825056 840037502 943151236 949362399 388855306 755757966 610121117 620341382 193719306 416772869 188401070 792437138 436129202 975325246 946556022 969733658 133894843 757014255 507516043 838796624 489093545 581045255 566010228 585831181 297524044 365110521 127362802 738813085 285505081 538792055 748631923 930264317 589610170 781718506 138045949 453514967 698849529 898417502 433391413 968239697 77272473 521001007 608537999 993545344 118049679 898196114 259456117 367222697 546366792 572401507 777958000 949399979 983661929 989684390 508799950 612208376 919344201 947689958 89389855 577730904 305962391 636974863 301854857 390755192 679695246 690678115 827850317 905627609 424931868 995146637 305419463 593567906 841272709 996495247 882696415 973468124 149666625 562344616 944870830 952035054 717064008 987361085 705805168 959891283 905235051 911568110 709016799 942684681 140848642 468957099 436521502 442598754 193395164 588639441 303442565 909265298 791892521 857849859 699068938 869438584 484854716 938348979 390305395 892684910 649951253 690341025 869817194 873973140 773521036 834654895 80029129 471643134 108204320 546783817 835536059 947392121 479494561 618767926 453053972 754853977 55410073 948253853 974362808 997003515 886611043 996181827 473053384 698821591 7305026 62673026 328480181 909721837 816755338 937367831 261242194 308937226 356238581 751165697 604786856 653422690 933646794 948373686 947929161 986708698 914659860 968077973 800387707 818601603 257838414 913686308 81278656 338993024 338276989 625412386 351555802 548534586 885726223 925511287 46036627 560964048 978848664 983000941 31033524 298939400 320339302 883062500 742281950 968876945 639884120 803076956 656971403 720136428 396051846 933956792 331794592 414953775 671230379 708091836 752891675 929701322 297534431 624781271 524027440 549253122 647472639 835727538 66893596 443435700 506793300 763641367 695399588 760642623 190289931 300025208 941412270 951052227 346639744 613872580 605751308 777414135 149065898 929792579 456470047 831532998 11626088 654954267 431205327 698611399 676984936 753144989 938446048 956444058 954128232 966102238 626207907 733310389 455575424 766394421 463461897 488660434 666572515 889132598 390935126 506028907 333394703 740490236 794268039 869801525 26913957 66322227 383259671 983629356 356053864 769764410 261467307 853532603 739453822 796533513 733723158 768307306 431041426 941959985 752542125 835335618 475300364 779692638 247872193 450991243 117040690 258035789 170457365 913994542 807690695 894605825 192665857 349491137 16986649 801112436 301109424 908359119 194828935 250081378 215083717 784359886 670962652 996267117 560665584 775702190 774203444 797010432 981782958 984420110 805667837 874367331 327755732 486775956 700273047 997955845 549840246 926912662 64909620 407231797 411821671 584932351 422671744 619618131 272729401 920169022 389854866 805402098 213326447 457281781 474834464 535943339 38710123 499702144 593406672 775496568 459355483 803752936 721033031 971508844 377720789 775923660 787531777 838312209 613114022 917163523 474583584 515944759 321855803 452641930 249533330 816734284 326402517 753274751 233201093 716376006 18939229 717247580 336800231 444548044 43976065 788370237 472217804 941850071 456350418 603157563 421279300 975176190 619442090 646805143 15200279 696216502 134867000 908041826 378414934 544082702 574129915 755184562 788640362 965479828 532519069 644356059 491767153 554514338 201948568 833844749 944957146 995649209 414211857 684266298 877403985 904564493 766153176 790987891 187989973 485283586 917367597 929965668 117928740 157120703 389483388 562980205 696027150 704899568 39210855 861513262 295389283 860453053 397824633 605213826 908665917 915385858 901923088 960520272 687109371 955809890 71878297 593913999 786748638 810237388 671196373 714182098 808544234 820099775 951655110 953807496 257986510 280725614 684933013 726062867 895544437 951618820 477854494 999368898 933867892 957736958 545524955 931548669 195999171 470429799 302663538 428525069 559855865 915015900 599265390 709232797 399132950 694593482 190085315 659154626 867727233 940708947 588741468 933634259 195787558 772038423 917090458 930645776 353781057 771326808 605381347 813270633 146505861 226428614 522206243 574972355 670720761 689582669 177419011 504083155 898688765 912925160 234908266 708954078 864428403 997456909 441168641 609689561 659076319 871853152 840555062 908202614 437199675 739691231 859672474 997063047 819505796 893370054 101468080 853401850 127726766 498665631 309947135 711665904 492737154 518642209 134566137 965647339 274462958 388734118 432526790 584990748 579487875 976486065 433256307 689493521 575293239 618093310 123530278 748911121 315718156 927283476 145280707 977212384 164844402 297580654 103296336 397731311 178704118 874004335 970960944 974486269 509776332 809575968 606822215 699863521 686752114 897576058 292136718 747154441 983474421 983727637 939975678 978374256 905295751 967493885 588071166 800735787 532910774 790099093 722122408 966366737 807867638 858100386 25658718 87784055 622943698 729594120 780858601 926338911 781690181 926992618 269355372 992419886 902353096 924458628 811865 911629454 99945071 369039233 968727288 993325450 909173652 953157214 410390777 948581621 920069230 957472041 659886707 765084932 315886489 965991136 310727641 602670234 823051956 916625908 709708628 980277869 630351711 646353289 198414055 618930907 241073314 438565693 365187438 801316261 56760299 231183089 191509347 517498029 454401082 507234621 359616863 909948734 230117907 621001118 567674057 903090879 163692429 263367692 273263720 433991494 843407253 934575273 300930123 866080854 588169462 668040256 958316812 977156245 643330037 782333121 638472308 993362911 78520211 967690559 776842456 937383368 977704993 998236946 601689801 757295436 746756291 960849776 873287303 883745559 354714998 733451181 524435606 683250449 366794724 567239700 234177713 370308192 723191692 905177234 752241127 900965874 280809354 953995406 506310058 904736104 382625264 915621722 500382982 934674541 710199075 741799962 783516831 984796501 120359449 619039127 322640769 735439357 474727170 950913285 774842498 967051756 549578310 620738279 887499533 927480588 103711394 687109348 690491801 726066590 450565004 778691280 997425728 998024618 807614479 912165344 130818592 998128070 870585039 896852121 901326320 990780183 667950270 674935466 387595882 861098007 443145801 839962665 417691831 974672743 717946361 872375456 930910048 970927845 636548323 923477664 918459550 936605224 396278671 632227761 658775712 677061946 453622505 893302188 599580928 971449309 328773038 824846637 708434417 818227554 519334758 784747002 59111958 176642185 794990989 912425266 544725757 997998867 980317514 988495072 412803767 984062790 178243748 632977809 954223458 985286849 348680 656065115 108204613 416152819 694280613 953935847 653490023 715514261 401935896 629958807 726461767 970630807 930243191 996192526 119459662 336697626 670989765 727148387 570295400 579221863 166749395 474786267 914717037 967259670 466418164 766213189 929582691 985424058 23747770 142518569 742554119 745044196 926542438 963554530 883025881 895352157 451590955 717982995 164346517 456092851 487913116 538668128 299142202 460423201 971364523 980437311 751198189 776067658 938641830 956189149 630632917 796041152 334441927 334632666 681721933 787772241 577765414 758030275 446579666 490854054 863563689 966954421 515871285 812143819 886487711 974598099 418087708 708437722 847348430 867423684 778447058 861467529 394706855 896488736 96740741 514387358 9803260 461035187 599746651 792122070 213665034 963533704 185440070 649489008 557248503 761451251 143302973 536754291 212357612 234880681 606442759 708053943 127349775 617824817 201668161 957339875 82400747 125095417 264528835 738799948 810249371 882087920 401335472 646757184 622811403 978803709 615622411 886886129 74203750 615408811 946369209 996639785 996233119 998080987 594478652 679199336 339251756 885082902 124017420 330047078 356691378 838403073 158699677 769580660 501130589 555604139 932957627 933583716 828851304 946861201 115061512 980562120 368531918 779232205 275266727 589620788 34145193 75250853 51756363 878819723 995940336 997859546 550233927 848691013 81085603 586925328 975640253 997071313 769638933 789582345 869255324 922655600 87151855 99538081 47037069 677307128 199909076 631388534 372343087 905414863 412404350 670590826 26582413 201078076 807276384 855171420 808010501 885874103 650034393 765596493 185645989 387839753 496252549 792666222 758031961 909508678 670563785 968958092 367437577 765678904 517564989 653295153 107294564 529069572 839235351 907065969 442556179 951639269 419567135 772569910 770388283 855783710 741824357 879620594 898982403 950179961 919671421 996553921 749230937 835990770 810154858 916148831 565547332 973172470 251871753 459193484 938926724 988792935 834776801 956358178 97840376 722516110 204780491 571559269 98375178 681466016 765288818 994187869 919884617 962406112 538543468 973259052 516553045 607801242 297007869 339613922 281326359 822571416 245186772 979017593 566810932 709794862 363616249 707673356 780773983 976795054 180860694 935123495 36742379 189413132 914316700 930680764 991269199 999685941 933332860 937394162 157119041 962082833 671914976 685007611 144892048 195730442 523214044 999766389 100237353 771978195 827399104 915569951 502152687 603733182 481039919 937395519 199379095 620914778 960962996 984333596 832892072 841660351 927615518 979203089 77765446 854444959 974633091 999812029 28152060 688148006 205139512 665431700 756236020 968163608 113086795 595867122 276568528 557374473 952444896 997178760 600723762 705965750 455748704 512444804 291733025 746243679 992802237 993433497 871243778 988095823 111474321 404944548 717533342 729240374 954882022 969007272 289585871 346947965 215665898 539131552 34164982 872535228 536623651 894480321 202615316 441908209 121149236 559082872 494463929 804548835 893081641 916635118 702500182 727263161 665062936 877798367 272201435 361322064 32761318 179785846 918874564 946217561 944671678 964277631 724652712 748768124 845303164 903060094 432693057 624488469 774688659 919941897 740008889 778873790 186415160 765672966 962490772 985346593 78231178 468796498 223275753 735376710 820899098 953022223 575028713 973338155 426531671 996486082 315487531 907939188 157904733 466288873 584505621 760934018 679523489 840533689 544183609 742582470 496261833 697092977 346857912 980594685 365180886 636059060 912468403 967763262 664749975 814659633 107189661 260947920 267750262 795581046 462225269 704470248 906528239 950003026 755379386 888599660 141574646 742764905 422870674 699463075 444909044 782797512 535130722 742679269 429281554 442191147 603744453 706457459 446077320 757261429 335015537 905389468 430688504 881501855 792527812 832757497 248276180 696370614 493226938 554274138 200925582 339835870 263424965 547561962 88661937 869412021 847853868 923974324 908835497 977144587 125904293 965854738 650423273 964338116 699453558 753454961 222070145 835679641 395693148 876369020 86989123 692686010 795854924 995781653 405372391 927857085 381158272 641624547 561638701 985237202 1348906 164875291 137978521 695075456 176053596 412375638 689995482 735954169 462365201 619448845 602402382 665499318 714059145 923860028 927128796 941826663 584665010 715008317 16971229 524400172 335504432 348120892 713254854 742109436 849165117 922154941 730120038 939258688 529384837 565997122 798131510 937687149 133425637 678014307 257371055 877365197 418599201 489446161 674686859 793601280 301123582 524046022 408196360 940110569 282633550 483332564 470631779 944143313 73882811 380038549 743429073 820645923 797093588 954058750 689197086 854890762 883157464 942436360 917263074 945268073 397925134 981807986 16014705 933764922 316002375 703901312 512775844 985021011 465129913 784764244 912390628 998083771 851799552 938541640 366284850 557261209 792251306 880564212 127625544 220643181 415142306 595763933 134044034 828420375 657801253 940147657 927658759 986029917 815811528 838743130 774836647 923228849 746694726 898966625 439013865 713535009 505421104 932065004 395096323 572764988 546951236 849196494 892392355 930276410 327409980 936704290 530918367 700967608 911455782 944661512 612779626 966074600 380955310 863723447 917189850 988202243 398010135 850369771 579952570 758695974 259294618 469638971 180164754 345168929 761348875 882464957 842094074 925620163 26039847 661525230 810224770 850420662 940129755 949414225 701590669 868026522 755165334 759319052 231245306 312920622 903124463 984373572 722510178 808729346 981649385 994727263 5926526 97105382 505085971 540813854 5092809 184709797 194970669 358085524 835284739 971403127 579124149 888987009 342108451 546507232 282778481 491374631 941157100 942000571 967983003 994166379 216070086 743844089 644635206 925370469 47980148 514823863 671813708 918695437 698855946 819947791 902639481 994319801 554543141 940302000 244572617 285436300 36128701 367558881 855236607 909656830 888540518 971239037 374391006 632087391 924657422 955413121 685047098 850816787 95120761 678310473 686641580 820930036 330427661 768530129 804642484 998350575 226148594 737659934 375151757 693053877 256441971 375067730 244120266 782152581 688377071 992289189 273058973 402346992 823821721 968092277 352389293 355392538 920283468 968101234 665548761 717142040 97463771 524876450 147512151 520557348 569933221 742591685 656942019 991814325 171094565 410605069 130580973 716202084 213601043 978876411 636231330 851465419 227753359 654055993 463088363 864591826 377125692 551756900 206510180 213121727 586957946 813751681 467246856 562691281 377901635 408362849 627866803 986096443 990944117 995640726 927009390 981399053 189266165 742891471 816282371 902723217 438650256 505543599 176553924 427641273 630418833 649227728 732740692 896148416 79902455 933889642 636184318 828883805 811456922 887473605 524846190 924376747 913422864 988397876 755234216 972461738 70279419 435143839 456531521 496980035 390839849 409960860 376358321 844700674 620446256 716013265 903216611 984139073 225452566 436852566 541074241 726813704 110814749 769904726 160409992 275164321 761126318 952726067 357737286 510657194 978519860 998602659 952348904 988574409 726159743 982528853 454021505 878754307 218487190 249926568 296865821 973183741 567882006 822889565 709736527 868649971 397513751 865495831 600367689 649509814 763712921 932494088 19349799 930747614 408419523 530432712 885663618 979201983 128607173 750725650 505088185 739809113 358567271 558660933 572452418 882207885 472878592 909194301 121498190 148979339 807045460 951301219 880134127 903860711 655536906 863045749 540549577 997922277 653569032 895284213 525445577 675481906 260331794 278077914 756738484 799654636 16163806 521611342 171503645 565252278 848696713 889067838 865432533 869358430 990399303 990767456 232553485 798881967 753320743 846413849 460033747 798164856 59435330 681261169 36294519 746022803 596835464 948849387 489888663 636572831 426000216 900552904 875149739 903469452 874977261 961346560 127500342 942523880 909115943 967878601 348975444 682063672 832650985 963469139 35098044 974668196 420915065 696831378 486689882 909367561 509743735 869491396 760814394 901329243 621294595 919294239 217942280 907798091 902817980 935194689 843303639 858587249 156787389 715282359 28678215 930494296 203327007 214516207 166566789 445044500 817637552 991716718 506112687 525748485 881179074 949001402 60991188 501452242 61539982 616605253 94307350 324307451 192986593 736814555 40626906 62303650 589465775 829217747 33120021 923056927 952711766 981101167 653768662 658908043 893564152 973564878 119068683 270083431 914583582 927450497 997274931 999195024 574589549 699756066 537314612 763991513 369256109 844545736 655861120 808213475 116548747 901182239 170565591 649765224 990440529 992482785 888681899 989502469 477253058 519382592 714408439 951361045 531864048 975675399 856874583 937806105 341094961 721923101 188165571 674648705 328397894 359397893 961822484 988180043 102290319 886354083 117660566 694239997 793208087 938949350 157783635 692351467 93786664 202714542 966795014 972734094 438496238 599865586 425182448 444023882 502115293 808487462 594645519 798952014 58989193 66562718 696423675 840047200 640704308 650776290 301666667 588239369 871182191 915184646 360978835 551462739 149832561 707373038 21400526 637757246 719429421 854615553 53744078 745459487 347026082 639417822 562759340 804199150 520652075 687862720 114882292 387329756 195090652 691490699 582337254 730692399 430002895 937921502 772798619 972328676 525825001 997248074 490266576 964222898 923316974 967539794 154618757 316202515 204112138 363959176 185512442 849816970 658582706 780414090 61927654 824624316 276176713 416232667 832003017 833651176 178203068 258874447 937280028 969337294 899608062 914180891 911198395 939140537 996968882 999763401 830491082 912200029 813505195 837002597 729850794 839716729 296049396 531036423 768045986 955589694 769525748 873029076 945246297 953139109 913050398 964088790 100402242 867287746 611469678 634330329 964095413 975842665 179990148 848292613 125418081 439619926 809823442 918238468 144030130 818177683 873544036 897355681 75940577 518437414 129452679 131889479 385889108 951316074 435123124 990941828 20432672 386614401 385154278 385883519 303033597 329666564 371060811 395929907 470935722 686502049 366388302 685687892 962464387 976156630 277723693 553494724 115721997 859709080 683444055 724070171 294716795 394614451 976982345 998409534 151034763 495027623 805455923 958699744 72464906 574438579 746302653 762777791 315252234 371807007 983883832 988656089 833212762 931158827 304896278 637349284 412320558 538746119 328273921 622600546 990210495 990378159 490331663 704508605 366005890 494777143 747173567 904081208 799974444 824834214 164944383 957526894 67981153 801966395 931022727 933809713 958308217 980400572 692542914 982043595 62931383 198404253 169071884 904058033 277392736 840914868 463053734 723622165 362238945 640576230 120362761 535708412 140439681 943831624 999103902 999576994 292716946 647947986 357813323 537421045 142104105 619731527 797544646 908375906 17090573 697675158 738034956 995189216 559991415 702243447 269733555 848619038 386195346 832964311 190236659 535235340 851338136 915961595 474783526 853976625 533273363 899672516 656991325 890705978 504810755 972363479 191189608 737152002 342162311 988455746 833301856 936390097 965234836 977656818 416507864 529954744 619648429 726397572 282728294 937139581 401766125 407614267 686277966 918311903 392667634 731199978 162003370 187379377 456289810 725998864 149615832 377034484 756727985 816406879 895988374 978968731 412142528 817171099 948485953 972478350 792123599 900605425 948018527 974500088 93328600 443844321 676678726 816491896 261161867 688666970 773718584 880638597 922086456 985870981 516221403 966960578 573175127 847764538 523717928 574256489 629348733 662523173 538417876 675681276 54024358 357683144 912607371 943096199 146728234 391906415 800388349 819547496 770425802 949129652 543276120 696970163 671444168 675372361 991148612 996103620 505318495 619210827 804620372 977649780 934471287 952811588 49184443 201096550 549856889 855554500 331743774 420757282 372142935 547505033 957521340 966362640 748639625 796583725 767132663 831642469 526857273 910139443 973692183 990213753 243417747 262170136 214283279 620875410 13802741 747853314 458837910 621532638 620805212 863920502 970494613 976818136 892087340 895744397 222032230 602657478 875225521 953284525 334894145 435583896 526699441 708854174 861976343 976465130 507715619 953376364 919810240 942671165 472797958 680144491 699877843 995020942 521099562 626461439 777248592 955984888 333940642 976051197 234881982 821580982 92706571 608315044 746314465 983305650 964830994 988452948 612137861 924532195 940950504 967180658 410556815 516170121 619894441 630670863 854691852 931480204 505451996 687382248 582921106 957053977 373277096 515745403 745970089 973273302 316603446 696728528 978846038 985862919 596188270 832426664 250104786 293124120 940227206 991880318 683358009 898009451 324143193 724504643 563149187 878734725 950381306 976928685 62348244 601383557 872672817 986588888 275412244 644725726 242409533 492099099 528575126 890244829 514982589 766295981 204517088 689511403 633091881 953358429 131668683 132489161 825458858 942926910 640724274 861204022 332493495 653258435 421096534 680547011 648739644 962591072 349781112 514048444 164792958 192512929 213391926 993438772 841152669 906032287 250308858 862759508 470707689 880699437 994065273 994908999 483862004 728183809 610003300 786604768 215800562 354913098 19168667 657617814 641672192 745021290 975521900 977328302 121386515 684652783 975837329 983942213 437188808 607543802 45846022 582543680 936254614 979052272 989157602 993934809 179368058 206145227 620313233 907335215 265275203 477155913 381567463 553229570 596955145 939960704 759076535 890420919 897263542 998054811 243751148 552617401 263386296 467636020 722387715 816082836 137155475 429705275 349599663 923524870 439717588 656108523 716212089 820888180 97015603 825455608 551103310 619384002 417633599 613176799 391741094 559961312 179606978 450845102 889374382 927892216 742958291 756224429 512121196 819212844 483435298 859032878 466594447 930209515 129268788 404097115 618105761 926451292 456067967 991617385 929941066 933116268 847014040 859108259 816828198 940313393 555485754 748804546 406572133 629706181 437351453 725053172 316878234 574466366 635238309 960204063 861858241 919756978 589329003 947263933 159069976 515258890 663842816 975773124 277692133 483084649 400159592 744046653 852339318 947916308 516464936 725034128 96002095 918658131 752232084 753240930 199513679 818974390 81710957 425389025 416373027 824077538 472422947 893830628 680100332 956567279 745508286 929413823 913439207 973101649 427303327 764506530 2754299 457988718 465522539 835468060 393563640 677082916 312323370 886096436 465516129 598848848 61318875 893500050 816446912 980622891 152629733 445247422 321943270 440963321 731032995 858469883 31590084 850350159 816644285 943490587 125965743 567585563 298775615 710288626 325569101 819210927 143309557 377610686 406879426 976401644 81023875 460789278 60959878 139492389 991310204 999668740 524869374 930205782 291081060 351332306 106929838 949019855 335854051 862730431 893364056 903153111 792192161 968987554 45639951 142524152 505509881 611168422 599458869 928514676 186925097 637664278 596869165 904821566 532114367 630597476 809572170 887293109 129975900 325192185 113197590 921979177 410484258 652403401 998936230 999692507 16255722 366778880 367199836 982963260 762605912 894715470 571836505 899008233 973924427 986731187 412441279 755570571 16473609 948926051 122149517 307136786 944403189 967388416 312633304 734080825 529457681 721621050 91723652 387003609 351392339 845591091 17293719 674981700 563231803 891479784 577139768 942720445 914153665 967140478 764780663 940067835 586925102 851543158 943620739 968795846 804047812 827223516 207747068 380187928 142638992 702456595 856297717 866605004 270879459 436656117 312395951 869634755 476290907 648879944 183652755 291174382 908629691 943697207 141092703 765602633 662994593 739375468 91008236 576603867 703186699 714831861 271072869 311943160 774153709 801384058 294169828 316901140 444912250 849577590 664439542 837315253 941802763 987433997 236145769 774085029 336554729 808105549 885891267 998030139 798243327 952738009 82745239 184942643 54625546 900391041 180889250 789151469 130295398 483570500 402116182 414897039 370661387 995215338 179069896 897797871 755268801 851330510 607764138 839346919 10762351 426435271 869821751 894460467 646971344 887195478 367914957 410342763 311324689 973055791 788750692 839050726 580361424 929769664 46012329 920133806 722684356 823114948 474062359 562414978 552424846 842338410 630676175 796483320 53463374 998333547 460858750 729668220 332136013 438441356 340654903 690673723 286749457 450072253 347406228 914743791 174973384 238167532 51709026 99261805 609219473 984577893 227668011 342088592 972534404 976315742 250514157 656570601 280684212 370491286 688627877 923819546 953190346 957667202 230244208 872295466 295546267 791329700 886920229 995702251 601825821 783604028 667137540 714432536 693241902 811059753 463727258 520827653 578049443 640325811 662751297 690371099 778228248 817634438 758705257 876394684 649471911 942859337 788039828 994017034 914160239 951382630 862241780 958932108 232469324 825482872 454158092 817803607 891050161 946809171 481260108 877841877 307340019 679760848 39065808 744853377 64547464 332705919 937605125 983610799 573921162 943179746 260621410 851936161 737888402 754801146 276106168 659020435 550256772 962168271 388474599 394045922 773959154 923077055 778247540 992458274 234906791 237937692 998618139 999851489 764062280 783456907 663490471 894010051 713840006 793908333 178938420 689320798 333041443 591254105 341872924 575846315 955644136 996895573 719013698 817804557 68054274 572656237 515965543 656695350 716579071 921566038 800261952 843427876 252958750 869099773 693457302 948866739 74470975 432090169 618690315 916594385 346229825 686027942 5821156 664369345 85898705 414170237 866315817 896344968 734337549 990556966 350470454 682979974 261540901 632044270 558840756 719683301 627072458 949530826 660127518 691069367 376918386 479426981 139266281 230242170 506257010 699269743 640137035 847578439 720975006 891884849 170325925 622087829 582278140 781049341 602276589 959256974 232165265 747706146 490950255 700002810 499676093 724613807 639258950 677684486 401268919 831070730 752875806 959485134 495294952 555851004 712717130 919740874 123938352 603719087 18569648 200167884 597770253 911721836 260718148 989918876 469910176 981795074 88077009 960063560 744196599 980471561 162414819 899623296 556194511 926771036 963654952 976601424 679710237 986482186 615927748 755733149 241527763 328185312 279126714 779963022 615403020 940620103 485055622 595966370 650266822 856770662 199876073 325134568 559396190 769443503 351471823 946690439 794968803 865420065 663208815 977394964 302603518 372963669 944791672 996805768 21760281 387405546 258393936 494484939 258098601 309710344 916753506 987828881 39578153 510259931 95331017 554274941 962950248 967752591 216833778 258786973 375795259 531209799 129056789 445157418 266200423 992439019 164357729 173146658 737753685 930090328 441238526 784205172 711662624 799361215 519462359 553455482 486836277 890496781 737731940 883173605 536020946 586983821 77218591 392290451 770097034 844133437 7256475 103635134 919443156 949148526 470707465 769197309 797749823 828492291 162271904 898377263 606426000 931313659 692466783 920780993 202941429 793848926 809433604 842850900 451656838 463999096 51308979 833857231 558803171 708977515 776769536 941696738 118245957 181847373 506896909 744930938 447287741 850604187 34287788 947229988 124126765 598222127 780406646 984431370 920155259 998499342 706771735 714641793 629192791 965234907 680809813 768960931 95575135 983622489 965918476 969896958 900735682 985625859 950253654 984240721 434362760 634423151 317957332 683627111 284859607 811726037 190570365 533396516 55558062 115781715 793706666 815122719 652249276 804982398 63110293 519990977 191784145 928168049 399393736 874308644 287964941 692488058 657018321 813684616 217211544 482471815 116253460 933103272 762057509 927554754 883747785 913593655 227556565 642994332 849939593 920341354 910244647 911350345 931428493 996316259 285654000 982276323 297240361 351827044 510044006 832951479 744752812 827802865 521219299 753304937 290114096 771791873 116045135 337006933 147658397 845664330 355859727 441613096 517314633 649306994 195842186 828399584 926135913 959863909 257791319 263126078 566739550 760252926 891636654 979013683 721561506 794735918 786070411 926265632 202313477 815486497 927027140 987568011 373535727 432836518 330893514 887219953 426059553 979472326 288992697 750864121 209032609 891936150 570172443 756399688 692757634 766822021 144152890 427130866 83268516 95821341 24018534 149962145 567890690 571697629 642798542 688556253 862919380 893750405 658195081 706456594 458345739 770917552 353532517 951960794 688631343 849994232 914927707 970706082 374584144 399515679 936867944 946457764 645227986 842998634 550033974 831906568 790527943 860500921 514194898 668538429 905024885 927013950 406892457 857898259 899953810 946479515 90109775 141418483 947925179 966258654 262543017 656891461 655931854 926124289 608066633 719884416 564693333 942083807 796946071 884865578 676360150 925646045 520483497 764047003 615519223 741079699 475499390 877702985 727823596 873376606 61272351 245371779 414451156 872783132 363653534 671835294 242239962 758261036 45559985 941052964 696348954 754653826 772657254 826333402 466791630 568422842 409301229 601438728 143428076 968793420 84806563 775458661 73529797 414546929 959155427 995438548 95675413 482002469 902613291 938690693 305176670 569239841 953726653 966835222 640302298 818623463 75147128 109489626 651064505 670895852 991785991 996345503 134028067 789381654 502664860 561767201 185053432 697940807 263895273 984790035 310983465 957759505 335020179 475033341 194344214 707771493 63820067 646854296 200085094 667410383 382450745 569697128 952638678 971146213 177940400 412040667 638252153 666252157 336768462 996828530 105053215 617782296 991549253 998820886 129884452 134799872 829698775 913630792 375985054 447666668 446878164 615535058 465781916 738745300 895468174 898958534 780222201 783465446 434312298 699342168 914959293 992496125 204330469 740041438 175137591 236182901 151324104 914395299 609298595 966636697 463521722 680263882 465627304 852029066 419711560 718704715 447643062 767153087 980088474 996312591 660645930 924264280 66976191 367823802 660482312 937589685 464412118 813976194 307926985 751093430 109021646 540773540 47527717 885099025 334827851 790705758 429010137 589122564 145144294 596263333 270605012 536737909 388604689 429994778 464791139 971636967 688967571 844640126 715808571 983423814 760176102 927777055 222940978 556357105 587964644 835936667 319980570 582635629 526466819 701049710 142841960 866037055 831589303 880514690 430976312 921911805 251233631 580885030 128404466 772330427 766203694 950245316 634785798 954248168 498288041 928490183 390542465 661929995 573533838 936817635 535340388 665645347 706272577 782282815 104985776 859358246 825472599 857829554 923377896 945380739 950774354 979370846 513559835 717032320 224189869 772896169 556901386 990872668 900508285 941597871 447860049 824091508 312076244 396142012 733542284 822504733 10099844 683662874 633096447 949155096 910475571 981855861 433644708 994633896 514085816 991667338 47511182 635636956 753876490 955510996 880140201 935736445 276063831 603420317 433030967 937579275 828621506 966274904 51255252 989711453 286342850 999624148 470605705 480716637 282095236 312175062 392483986 468892552 268710080 821225145 753245414 981040873 333560012 822458513 319531959 701445000 906913767 938003586 15161727 658487470 663711150 795483029 95843700 421597293 849883163 929542083 355197017 816341370 358712090 922879167 348536851 538239746 37567570 216955335 965078665 990034330 282118778 371012321 663389745 785349805 492099376 682556502 175326706 831405067 130672493 589316258 923609021 951877775 398423927 546838819 682159670 757142638 61622755 109574123 474701208 911186246 361439578 766901621 499114120 521112009 251169976 540519513 348111574 996420022 482167049 756488243 820135220 861291998 709874788 926049470 615963098 745425086 499775469 773321831 428261570 592128242 474386322 808085305 189999484 428968097 297601983 416484962 189989995 524671278 507907047 776565921 683936588 689118222 470945459 725240508 275528136 608214036 565715578 716411878 515919135 965602278 611634213 873576958 431099771 636037185 831918652 877378769 734274701 879778929 280811886 407655447 715892457 802376859 419182957 891954713 75016688 543598605 692456125 855413963 24727783 402134412 392924378 853453672 250074344 504727769 953461915 992263419 286282877 307058133 137694440 985645946 205754345 875888451 957523941 995528037 949931254 976569883 304774814 533154122 295924217 328537789 872017622 896457745 227634205 760789139 146788842 856589476 51319385 955014674 579358407 613640272 969196436 991953960 912475726 918268342 245076326 318071953 660671422 955466038 548645343 996857990 850062980 938900963 694250944 965179820 753952770 825099169 955389237 957497284 370562 63896636 158442939 931963982 21871183 708633837 913693622 942654253 366447535 722920040 811387352 903599152 681145396 994638847 648350605 780145691 790128812 974693610 191955588 808023396 608814300 857835812 402478534 958743006 983901160 991695166 323318461 921102353 747536155 836497962 234324011 786151635 318242720 926732754 775000706 814966786 388460019 548539264 134186193 644810930 872243405 873956118 263552748 844012399 636256359 657662646 16767792 996796062 580360239 970657001 484668486 487277218 69839825 692377910 425277636 526824257 577741222 858618567 76697516 173624838 507961277 693303994 179387113 886217162 371286339 584806523 281359456 450711337 773541208 997617987 311486910 771692392 866345097 947240893 412172988 732128518 537111807 926550213 66375807 72570074 273277304 379407192 774526348 866060434 928224521 976537802 228881462 918146887 752671564 835590588 637200166 958830654 712500471 963574764 445171476 685069942 540002277 831214298 692464922 755365739 565060714 822334204 256455240 612019442 935881024 962827749 996450343 998711096 446739564 683466443 363058235 442772846 24275311 904517181 622600614 741794226 8922511 863978311 190421775 945115008 127690481 874613894 301454215 725714334 245912342 530699167 42456385 991091762 85676837 246685136 964378894 985892315 545693582 729496363 969759486 974135096 60129147 116385104 969639188 983259887 635243921 986021809 714739130 975868747 356334300 635009496 123867202 742328959 990818875 997551047 916670929 999452163 199148976 560915460 607296185 642901022 652779952 863876704 392494600 726691252 765235314 937713385 728415549 943880438 83263605 494100804 125440538 447651763 824039786 873449283 548559039 673571007 743125054 763119800 76066554 432754017 261391439 861641643 27519363 614038090 33303814 662552256 490478006 999596270 16997223 110542987 473452540 721325367 908228129 961811166 694244142 882435928 333811238 616808160 941079130 995652281 973471478 978882566 811046440 886244119 872508481 988181857 439341483 858733856 877580516 969474988 287550411 793494157 889482368 987177721 455695048 844897918 85855565 767098994 224386778 420894700 273036791 777255213 550851599 612260516 457396401 982138567 680505033 775940922 477360325 559849981 784832013 852862898 911968362 975475457 28885098 986799318 145137282 400245900 967715460 986826776 838206159 988970158 70374817 469324637 431394316 690184648 611089706 642633876 863974264 947736106 722081951 739534896 218189802 442199777 719966797 938609956 548140838 594778142 329934130 478445577 891256520 980709410 167926255 214967100 534078400 931863550 13289104 749721435 35960872 230740210 566783309 956550753 560576132 623761324 613379620 637222420 180315217 920364216 735943695 762036138 422071832 744772770 448979983 483216993 39562692 406853685 466000772 877277105 482844770 775706837 879348576 977524266 284930706 859295979 165698294 676286104 936199983 957159348 22047492 626447933 681130756 994318957 305409823 832981914 355469113 605117261 753479326 841949602 223095551 847949252 24638678 653298948 630285438 790756410 720644853 994606414 159608512 503227862 435150949 995755338 299391710 745387575 158429359 216664879 733348984 817923174 845044062 982855127 305610124 991903509 653288090 960871202 38191156 68111430 407843921 762004507 73789663 151693903 975240914 993110275 229216142 584364017 875317995 902737378 462723262 692061533 149707047 765079747 412501257 761854622 600859585 875965542 322489527 657908917 347645635 873963605 452441847 730468657 118764668 291500218 261078986 638144216 395886840 562159417 239281502 504917466 817852057 913714159 353076093 785405953 104382083 808976519 713998056 870384181 903319199 924684709 570537453 600142696 877282375 973020338 624609044 824565569 776312126 940119476 514059889 611816412 467614086 522071151 23949107 171414205 765257377 912804964 450222574 935357936 849753471 864180907 920840695 932495402 641443415 834434271 462132638 778781390 798363478 928300656 155381258 571671624 758618032 977898064 829533948 914611273 941285562 968623416 474351200 770650391 924121340 944160556 617628800 929785939 417084045 855285863 382600369 606493496 435939350 855480967 486551772 881401062 258040057 402591814 791930132 930382260 507458334 982831735 306402147 673069517 314710894 397639481 328581789 849569162 997896132 998367766 33084686 187731006 875343370 912456523 749890509 787650377 217829607 265679899 994772273 995504753 549013513 717186314 458152214 538996201 353896931 469142631 638529589 838942636 271778968 653085721 250115612 411010486 598824487 863154782 568722622 762540334 736738288 912290084 731826077 906055119 14270873 956060025 842846029 898146403 813798391 950738454 884386535 963759131 722852289 755667062 338249980 859830752 842712329 934566495 272425999 364331367 610378012 684667172 603193730 736451107 969381072 973448557 337923270 563733094 808578883 894626847 578299599 978086783 299881962 883207847 244691907 859031179 407873998 848632394 817096478 874620881 413621245 973185745 463135936 522568931 69418444 383683202 937549177 960499290 952288219 966551874 932404652 971043445 549213051 699182841 923957313 998835639 287362629 702935826 4360139 71653348 934432511 947140422 785608476 825835482 479816984 796743588 632514993 943272038 603375601 866251317 416773490 473249957 602572661 706921801 698728644 813942878 636807173 771176829 386611126 497868968 246534457 524184397 548539836 940199452 47501899 768774163 374758786 970032026 65419465 223766052 615951620 791625543 166252909 677617941 729312811 964737434 120314335 536828860 742855994 984698382 345856720 819955704 930472346 991177730 195097847 953434841 671893727 881941186 838202995 966770703 31164780 556586731 563984073 577351099 82680706 179481890 856307929 969742243 525386881 725336477 9668121 810064472 963997157 987065953 371109049 573060395 165186677 259377311 468654077 633561328 665598505 750736696 786482617 859445652 712538454 831310778 889346353 892811366 733881216 995435794 174906189 581393860 200901983 776478598 621204244 870137743 105064810 467867428 818187586 847604328 355526729 876642555 731387596 943690156 121269390 425007564 701467016 898479343 353660349 690806921 598901471 892722371 569894728 661474487 299469329 372363665 881871343 939321275 723892562 741053925 175877038 300143594 988130487 992537144 180125470 853011174 350960067 487868058 889735191 990257834 853380645 928906971 383791796 967833346 811086455 840660715 87471916 535978429 798787989 988086678 13459848 20342573 150353677 282570650 875622057 983400958 622545769 658715900 54829147 621244064 465648085 796710330 78118037 481685815 89943265 431163075 196433148 816386238 933246216 989017946 941391180 946091930 651143626 836867211 53558266 119576122 236168937 831274795 718793209 783135336 923950469 946139632 224999366 283786126 895621153 988630088 435632885 777149066 815454699 832139088 950667510 998168821 348107042 384732119 723854852 963300654 903583954 981590319 659708228 863590006 104407377 879559625 821878397 970142520 266412008 353938849 10154510 989740706 5975916 223031516 242781560 624249000 560366487 972538895 59837158 863990918 320565221 369666106 276175902 610330548 435351509 485246356 422313277 853344698 998634836 999092174 716358234 854689976 3088881 146849578 504306939 992393806 171051655 228874901 610514838 786077508 203943402 802735098 826573870 849158432 298973609 739377285 392146275 532735320 70732422 926000415 118477617 784486429 938126050 947728697 760481591 922269674 227263510 694891780 529905188 719175919 352043468 513008592 867231879 915253754 955383604 970902822 768135656 882199024 442183965 766476441 707544704 964997998 818797137 828567988 896438939 929211768 787278334 822418029 361409988 390405868 790022446 938315054 266745109 668535207 570532251 958626217 168585931 580539795 613574759 642083472 430130205 510587321 286165139 458628351 415893604 816064866 58137898 375098952 436952124 766112052 687935067 941950729 435368623 713909478 435473741 794328297 374791645 874941401 208582571 716893285 465626080 940741853 994037971 996844743 66547641 505505579 886985000 989885600 648536376 652766915 770234804 822405783 409559167 942881280 949103272 952197000 654328568 906256129 785500576 885161111 221411959 258798344 430287746 649794649 775536036 934335516 591371284 866925991 987123389 999195898 862108501 877495934 484997811 606121721 188648171 808670381 54142679 601463485 430044675 461773000 997719235 999594749 46793614 91827667 976041163 978852320 916990034 955249262 544658129 913098941 406591221 921768255 820464819 967804393 404279867 831545756 301997115 938672667 984205876 994209642 306976631 584461189 180243878 575470596 770948632 841739630 789714006 946700103 922003229 966591291 243223501 761226937 704488346 880912512 710585908 828183667 840605889 876527603 993896808 998397360 409119643 716181880 894971828 901610447 831493298 921872587 128377870 306913766 312958335 620317726 498633077 672541089 469120439 808536220 722341355 855917907 216749580 328389225 194692920 395635563 794807627 951792044 425059054 815053513 182149413 991104816 881704637 939365607 343696180 900043981 488669370 729366781 105611883 638858172 24832296 561767586 873316223 890457425 195174819 956634712 723042164 903942837 321713974 975493936 678350407 727241004 380564016 568526619 462061613 822119294 612445327 816293338 80160548 644615270 321541193 640872319 449700278 989291794 814267710 832321240 965259132 992646784 889813398 957493463 326217967 476540928 718597420 759767343 160505500 948913170 97115474 343434790 443023013 480358120 289152257 591949923 731011900 913552243 575145814 703231663 580050820 975624825 336450776 385434998 450002293 730988414 446643283 804705837 397929821 424529359 883210190 950430515 606245015 974250511 311829051 738349790 77194535 509368544 425226057 874119444 711537671 778167714 9434666 317865182 909442839 921305108 261906461 356555637 904577058 911236996 669325870 862478925 817915734 896827674 789843118 815158611 540356261 749748804 675322338 925471410 164184676 612980398 713461639 748044331 664487269 928984180 807620525 976519961 589392374 898497079 279479185 771268230 55656018 430300599 729666918 992846925 632504305 800587792 613154855 866877939 823636482 827712248 500108550 513210176 923126215 944013937 753068020 882563352 190309286 229176503 10860343 420105449 233711064 482116041 623880482 800204038 771814523 883731978 599366601 775378960 431615497 605023883 281825637 938186319 40098574 321115085 339489736 825421064 693573948 830539653 697982575 783445694 639711226 805645863 444514434 661884267 695045032 999932740 593069991 873225955 132534943 779718101 751775305 795763911 813032170 911412570 122131543 235615233 39577721 165464703 207597998 641211420 532777805 602136236 15697904 55910855 807798928 994410193 521299458 757001036 144828397 877916992 86920740 887912299 603917214 771210938 555052521 790645025 277915746 622911010 228253924 410518039 302863443 372474280 342687224 376137065 601057220 625080667 843772855 897623123 455414480 890663460 180004565 339281844 628005892 835461614 93934564 853221417 215970991 828616787 253222250 402212645 253237713 803425059 286337233 805066551 159053425 916844724 512750313 600481650 503162266 536395281 573666577 861501053 383702418 673965448 849817736 948021794 775992862 975538119 64172698 957916554 629646963 741116618 102635289 965945359 882034760 928605276 323341742 701971851 385410818 998778860 356412990 419100212 612528188 975693879 474880599 790124960 34775690 83699141 428872290 695587660 250650291 386915726 791620661 891349558 676866057 688127029 962726191 969426683 862475314 889346641 481472847 918184863 418056256 943143346 19344854 929375225 796287681 904419046 714428027 892436190 665023185 881487315 736632109 970084728 266966687 574744685 348184970 414534018 690025143 855792319 807987478 871410007 730187238 852153629 494944639 972573992 33358191 948131291 336811510 793473731 92676268 691101685 894888967 974093381 50289769 915148606 366266891 543617540 884987289 887271954 154228776 353192827 574195631 813695662 381178977 789061147 272235887 534589467 728472446 943858607 326747217 452923570 839744514 928253016 696062668 816165794 797926813 875026845 252631903 267035682 94527907 798889337 148357960 450209316 173897027 439932278 410439082 809657595 864985464 878366985 123591176 455139603 545333222 915001438 734253576 978807357 512258310 618455564 685904159 881319014 688020490 899212492 481927302 781461917 987739783 995199920 571331543 765160378 512555626 887514416 585869661 621342511 10039773 17310492 623687908 738352538 640161345 923537374 919708922 944948851 754381169 923242051 555583444 946858826 121734844 982905947 46157122 972851344 278452014 586891177 348601438 967581537 404402775 435541281 243625700 413774195 984699573 994738624 881967884 903252758 802936167 998527705 250032891 924831332 591740921 888653378 323661634 411285435 763353996 825859147 633712550 646890724 384693361 651053605 934456188 997423011 490232202 957649910 701563110 967723829 608020498 688396107 886440894 927637307 737596578 897240817 150223434 920994528 313901312 494403620 784808001 814876852 703165381 968995287 417512883 882332367 859074321 860645724 348211027 549744622 930914129 998943657 266323472 485977917 40280393 604572510 600148137 692425060 939501559 961228522 760619385 901951987 358725838 844254016 933984971 965071929 416543025 504533151 135710835 545555578 765240114 848137412 120979021 493094009 363291952 622056521 821203471 845746960 9175024 924384284 93045168 826622330 933042425 993326843 109903576 926467444 307956562 790301348 391541734 984911504 79710290 945237626 178087312 909451667 995302993 999197373 183380684 599698883 594002893 922099093 446944241 482722209 890828595 911720871 255585849 822849146 345047834 759383777 724232295 863349569 133050345 193884941 996193872 999759645 325488311 733250017 592926027 630603725 306469897 680953237 351595535 407261208 175598136 662290824 496181930 534164203 483799149 837938096 437364916 533547306 987242324 999287643 150359839 684665001 257463690 290412613 299887912 307268688 667757641 911348836 413328371 449061932 363783236 813002131 34958225 513684294 804329711 868219592 90344828 623726941 68627284 477379122 342036904 357618201 779647403 905306154 587220756 782017105 137220967 187359143 205861783 492143093 195158090 666380484 480802210 984546372 340820992 624849297 224210884 582302750 967519397 973199057 553513783 579951251 437759979 675255132 276726187 700732751 670275899 987170058 783960527 983145313 726234325 805129087 98539723 709879741 772718294 934397949 37388801 307705527 556685737 869919870 586046309 737764688 489331348 771427942 591715415 986019822 489273490 934496657 186573538 581742358 534752810 879256204 964510633 997555328 745122526 824678530 59512082 398659213 751722154 833378695 361521438 560849976 171908021 418719913 731468581 770393824 683296370 821977481 105797169 317109776 696658569 948669990 488706727 925741172 549018606 610899848 527564984 913720588 362071793 936008399 601980091 615256602 588974088 853199789 531681372 985586336 674992648 818892591 638904789 772051397 194228918 369798092 358227800 536865573 835140964 929825195 434069030 678980588 163469889 590909585 742424468 800254382 693673691 762475361 928454567 934849255 842846863 979008460 282415992 523704964 579341139 888137149 387842592 408284685 18714525 766323023 273495855 905883686 411755335 993111292 176809356 753902565 810501506 985531942 517621686 724152778 678243236 819805401 448390306 506061799 130713486 852632640 70303587 236564263 463340779 795667561 43070799 871730206 449709232 604697318 80289655 488550604 31292669 952790746 854473423 956611255 208574077 236682648 267074836 787020263 822626911 881213901 298104062 331862182 400569994 817845369 593496810 835659755 330365558 370134356 6842398 7894855 724669760 739935447 562228298 615006201 951568281 965851887 508916793 844466165 27980946 867828194 187913197 543921113 853454010 960765579 828228472 974022715 350101488 430800057 598163256 894820828 3389323 409336477 876671025 906656784 885995405 998055310 815507675 924867480 136013719 992805734 434308115 695918525 299060979 823045277 624786751 968077873 631540335 799737109 532621146 876624045 169954892 837527233 684499330 993202212 969184225 972919075 427242472 434716920 136076263 845155366 157007034 288122672 493006936 662202639 617662156 965236581 978237740 987057087 967851631 989013737 387388639 500143347 17717136 970989448 445845674 837890436 67965744 297106097 666634099 939108543 751503335 810480809 522082100 893839816 643820985 792547544 867301504 945983088 561359402 607214194 145563978 807027458 271480952 639136299 166711723 853644047 856267484 964740650 225516446 966629403 392575710 840410220 997479152 999832045 116953288 167595659 673442033 801162391 797934223 889030586 488688794 499185048 196384957 208773644 478215014 820199433 927724900 972024218 865189581 906323504 110125899 425369032 958102794 959841780 525290519 846283449 651167393 723860377 864441094 955942217 202618807 399151696 82396309 924438394 348403174 465727681 699029227 959102212 711645551 938212203 869382323 884678505 254462883 389663326 987937595 990500756 153854278 861246750 292635169 866677199 234693448 433547016 416411594 638726586 406498468 702387682 727019948 994593300 4376604 127031713 339548221 381126482 266142555 513310646 841034835 895329322 575399343 755344309 937525249 948451503 398993063 528736884 813619661 972132736 326521815 690790766 491033400 655374434 993462516 998111104 168991727 174602557 766310362 958741372 944777183 970885367 260687350 473781242 46330255 206098424 164320455 442214490 225893521 576535508 101529742 737015050 671521387 836505638 653911724 929131307 839761073 904410239 283847393 948498948 594085390 770455935 504727841 743886787 639856307 830659589 886180263 906936906 15269202 203374472 553045361 888747827 355853309 934139476 369582382 568388903 363678317 735966025 243402126 692593616 47370232 100383282 462154965 591614350 158496736 754264646 941427914 980003834 18266991 721913135 176401411 420868286 571382859 939290069 445151613 483770315 232344427 397779699 122387655 568774707 576012375 683712472 757626051 933307601 730915803 985920675 343598786 516768583 460443210 620227802 988876664 999168710 534970227 584301861 788365874 823224998 902265366 956955613 299676273 697167914 947836910 969734990 523213586 664903722 484693061 550615823 398770511 672207384 427492076 477723190 390616144 419383694 881284125 884863380 354439637 689181775 964303926 994892235 721856988 977481412 94483037 162389227 414116290 513838050 928972010 971487346 407503539 807462091 860663809 910116957 401306779 552142226 147608372 632703199 328447372 786538235 755271688 951332501 52818532 447538467 345789714 685319794 458076475 761492481 123458674 450346616 332311460 610061887 357432735 809124161 296176646 790278496 146895259 976081966 68944149 333494708 124817175 943354038 385458398 415590902 504441393 793063949 727561654 989123790 64475592 299953561 847761320 942643569 649990091 707926334 237395429 983912579 937480138 962450507 717785735 917605621 286891299 545230192 734910372 847007328 677068359 807302316 889774420 906381005 998971784 999002564 794387930 816532382 863303321 895972203 283877261 443761974 919487075 932747087 963735973 997230107 105934568 175573865 825430688 843353786 165210371 497669058 554281449 614705798 930387589 998350703 909129427 934620689 491243676 681627490 814219844 968082699 530643677 848822595 685898062 835356282 806064392 912790625 115575664 546825655 565304723 573482920 428906789 730338463 410901218 922415609 165148172 338553022 983052188 985816033 527571606 984766693 614342030 751781984 515657938 937287927 931276214 968073065 700931589 787101821 796906242 850721535 968262965 978796393 417434517 802842847 183609082 727441778 177285901 354855360 963595514 978928689 688238035 963217871 469203534 481529955 936554940 974560597 922952938 955657350 569645858 831444552 911987381 973864649 421255860 877014344 483632275 505470153 312065398 655863509 333636608 721326197 325485495 380598560 269984810 839197780 501009142 717396473 195392739 859462171 793479010 939148080 540608110 723163986 680113636 898153410 128482819 546691398 84275202 876693978 52967264 678611213 285913224 916892965 477055103 888447076 521187481 778072814 907391679 999424780 307472278 795307802 679293473 818190751 762728868 836892453 174411740 652562865 375843535 425820013 890059580 952026814 262475805 504316370 814706330 934999068 635580719 936712745 863123116 961074904 516829819 823215513 921596783 933829849 378278803 391999055 219304230 783639091 308094323 363100130 11600300 506744229 834467879 868568623 368745569 817065271 63694723 178672880 147910469 720377734 368452224 369354083 30885323 158733827 93104047 769911938 397406725 758167926 717711178 740677835 807319437 894776884 64836004 286965747 276018423 360711724 908673263 973640054 849860099 880547190 38784739 730808203 752045313 942678446 408852680 616538945 868923834 993185073 441648528 971387076 178482824 884651942 879588776 940548450 70461648 928316168 446378229 568660168 158267664 216067572 981989791 995112590 132216211 670653378 187399901 686242818 28138539 592704451 477196448 666613774 78978417 887682704 120807235 344547223 767201461 980186425 468449704 793484232 915526402 970040832 602649985 701064699 75057392 696356856 471638401 711537340 176745604 426097573 388435664 624254711 119769514 390140713 330824543 426237826 719863016 892161239 605929655 977562209 479991476 583229990 666671106 799972096 957029891 963282836 853269976 861390209 701182911 928053501 351007504 654957617 495579640 627080014 56706717 159446388 163444610 328419970 392212570 694825137 177474078 274646669 650087005 708077534 169179671 551157271 828133640 924738599 250894442 867578712 1959397 224720107 63532258 135000539 193320104 304435275 503287463 763974627 356695636 439346847 823548160 865022043 387397898 805915846 817676433 858833876 324024407 434497369 703789927 709250157 676039132 713496783 689036490 842138946 776362509 848612337 847651980 980837946 313491551 351105591 676705436 724595450 162008396 876718100 447321575 548744961 261664123 936554087 709088307 836069495 765698264 922303041 595954827 757907832 43051876 492306617 128413572 330025472 99373657 293000314 791496585 852833029 990839657 996994026 689691917 772515235 857438359 869560050 128336862 810676164 750396812 822226722 34312845 960610161 523812946 726737221 45420403 99859890 889396733 966078131 821006782 992776657 946730524 964312199 449695817 975331780 206531843 743171990 587089932 904844704 152139742 407577495 358915192 782970864 969175723 994880349 424780744 526994875 976653294 978289027 983073590 984027117 468761093 719362314 790075254 904144122 341597885 912748277 795463109 935008324 848098332 969799874 399393987 634453397 357667728 584813213 413297185 503765192 790523885 874000658 215293909 806691440 435405261 440790318 642560600 934217832 607556063 713495219 288877643 894004530 540969398 770502205 430301022 713132998 262031440 656210005 600441828 961659974 125053618 874681906 510806587 934615138 725386521 954779995 617480474 630783493 815349554 904484495 949177809 977641369 431882655 706111431 114287571 430437110 729545590 780644272 962757819 984202698 562100443 676391505 503659543 656960508 784694255 877623373 679770483 845173037 235810115 671249782 129472880 959371611 675518379 785094454 968630049 989876380 470045448 489044052 676420002 720792766 890872517 984143830 929141474 959210186 206022051 886368870 621156721 932017186 5359737 215954172 813510170 874518361 117032472 241588352 288179594 582961493 273278008 731765787 906657795 949829815 974921503 989931101 622558828 963574937 665478160 849943582 391354900 924892826 647917762 900237363 737778964 912871940 113376077 684834802 785991481 848447111 50325571 268770124 696739867 990686881 200832205 651276114 845885716 900723190 954170243 979424287 826767260 901883962 393231759 854736011 387061676 781865841 557147496 957294895 19447410 71575052 91971200 311986508 239357951 606439741 88084268 452995128 536838296 637311586 842370471 936285381 447255153 722814536 484132930 496874518 261388163 822699614 413388191 585408496 939677654 950853740 872331204 884256389 383627509 911168849 823284798 873979840 280310429 710440307 719221566 746827700 884552472 889291135 454256756 669132812 80629606 876032361 279774053 949213533 256665532 983191836 702168574 851291953 336295043 950347586 514905329 766103895 696986191 955505136 421077285 846948685 442544228 610440907 322319844 658376766 857981135 998454631 811266115 888240404 28604546 408384076 66672688 785575057 643593393 703729939 426998530 579971817 768159278 927451709 263324182 740311518 273960168 831750359 867391480 956703642 797548752 814430702 323281852 534898364 953413737 957237059 495095619 969317848 306957010 749323337 716072896 954154340 437456527 764136817 757313254 798058587 324127967 688528718 416761568 945075161 97113256 874112656 133102514 832259281 554432217 829697526 423306171 539960016 70391595 196233430 450546412 990559818 115352553 794611179 967472473 968668009 929747047 978090533 866585932 874010307 10883269 293259163 107072808 216448098 160977726 582129011 783246347 806037618 620454816 712860426 335652785 783154809 802589722 973135000 745476630 908912277 875236318 889532127 954331918 971576108 687470292 729330177 240596295 919056603 85739348 787283003 998273544 998370787 377586231 463919309 407533335 534436370 758666295 972498727 710791782 936968310 93600446 692190030 751658591 792070908 686299684 881957242 249133941 793154375 72943642 225087598 680811052 782845473 931390848 977242119 596454443 771395532 315582357 539373063 569125549 669091542 834652075 927384745 912965399 946022045 232414233 412349517 605337045 824055812 497818240 740541051 495496462 556033036 432162279 638690238 755707329 878548616 949775100 971771229 281346698 603169129 444762851 651589887 853623693 928133263 303518392 567931193 341086628 590355421 764940023 989642722 342902428 793803100 675596964 972892988 515533662 908858714 987133188 996805710 471815282 669958099 148974162 803922565 498898058 604229672 931978006 933267880 752719607 841624639 846847360 933038676 560741722 598315840 312451329 607615408 458338257 950647836 193960220 225858142 488272709 583089582 614470489 618043880 360845350 484321966 605224450 693007041 221446797 641493089 395877791 930256032 199510445 210758747 371419595 462772403 955639373 964570466 520562099 547226376 653823037 751946831 565940163 874278646 822807416 993933849 196063018 907231160 508326101 666579363 41009170 140361825 67385901 786138772 522500620 987465483 287240266 813740065 703635936 801128912 563475358 593155743 894391546 952146857 570431784 593886373 911039252 987393393 361167481 776577170 80701518 478357070 384169080 568493604 627781158 958712938 914167814 938513368 442193673 843751518 98088810 450810880 353253759 773930054 921084213 986050134 422372212 614002978 522830296 943545069 745483348 843864488 312046417 431162670 704453429 756818778 14809032 335358880 213074395 283882382 1081281 518471828 119879447 162299061 682583971 975502799 274627642 642258359 20649626 652354688 468549794 734181285 530769013 752852260 62420363 197996308 511472231 576293409 147267347 908389786 292281093 724617131 237899904 422390333 333852024 591573454 207172499 244513148 628871640 805864283 313181443 907630410 425346744 752783524 492589686 516274793 547296248 641182634 221171543 735414028 195095582 457954034 361216217 504280150 254337403 342730095 190965292 368358126 670419022 988443323 153688936 667458438 850284965 912347444 199181776 776340157 275939122 468498706 516930662 933148380 503813814 790290917 54138324 632249203 446176528 937681002 634576628 809478375 883978057 922364105 62270775 228385234 517692785 955049434 569204417 981437981 664949665 730271330 855202238 887378787 500446201 504917900 151167641 898229882 590955280 735422806 563055691 941174375 777541563 861669303 281251592 906497153 742624106 920719902 731530008 841908749 405796225 568340449 121654524 351163862 274421101 522743509 153948115 594692495 704332753 984174352 178292949 741164146 166362903 535329630 271000376 625522871 983786131 995602993 950890037 985674073 671903796 714546860 842600637 869232359 971133507 985655945 50543613 894254567 97556882 211635581 51757910 207997724 84269737 599097244 512405494 687014555 576164740 737339589 769853549 969936446 968553677 988747736 319027224 885851805 889388002 949831180 262842595 934446994 325940493 944711440 653812499 902037546 837018257 922278107 705569571 867283125 736671459 881427403 705438511 829793011 105891831 534912493 82863769 742132942 547039211 708397112 30717871 546775127 79098828 602352507 741529716 892166846 366967595 444276690 527130222 620549026 215611723 371608741 976538574 991786064 738187802 839321802 41331631 885182650 704958461 887992986 956847741 996319473 869287811 934383083 997631395 999759750 367332827 932185667 709752095 978051313 954947802 995617958 281323913 639799536 854186592 881684663 67569860 779405853 83226214 868433931 733257639 840495118 798812152 934742606 582881409 954834561 150342331 369644271 357468137 882766860 659335113 706377407 999145272 999869616 101234544 926833216 278350851 652897143 617804660 619092695 840349653 867219761 209584584 987615199 744119632 977574955 93075979 540452312 954895076 989136256 889474961 999539997 978686475 987280845 779259584 873566528 144874685 302538204 859951468 905011714 233401915 551764054 251754215 760222882 92059943 194979902 335340757 722870671 98694310 101004854 603344909 825590782 758273536 879091988 384479700 851086917 299951865 462806068 757058630 778701113 25829983 506614454 276914808 627442342 2277224 717392520 901094849 927980399 614762033 839535805 110941219 938355479 888672099 928443156 74449088 825417909 386082844 831165064 502824592 864862613 894950307 996822963 445135708 869302778 185476932 566585414 400886614 408882549 949948912 994893230 919891961 945144705 92003675 704837833 985075330 992660233 108103897 930459237 999105429 999412499 193628809 629658161 578130031 925880159 72556916 689676545 977279127 992800018 279136579 523126489 695733412 871098950 720803607 902703332 287878226 430930896 836122661 926833263 685887661 772967763 598894576 769804730 863461829 952087202 485277272 850249977 381508963 828595388 872509310 900998322 819165046 912855678 654165228 752794570 467328195 740748150 743741252 869852320 300303473 759065401 247536329 890140096 396951937 509436193 301564191 913712186 645637502 903307570 455713223 694323105 512390869 616557617 617547835 754550769 498141693 851631223 220042400 824508700 1066027 644920033 607329708 776838265 305211262 355960180 371977468 393267281 694444735 740676446 814005131 869290766 357022068 586054355 993671673 994257485 296203809 494179772 617071781 890984791 615106833 961653560 177922334 333297770 830688109 945997081 513500787 634426446 822083307 847226410 964768427 977958914 843112427 971317275 504483009 788624703 337158746 786453979 90581113 744005718 421531312 921740401 4106606 50641242 704619983 862636701 420177333 566353025 4665512 160409581 438902039 564822559 501964409 968966239 707971022 939137297 198677502 509107597 26798583 947109482 868628817 965870494 115542642 830532589 618768762 697180728 247168641 734748120 828641891 986274656 485894818 541273675 323186810 733397023 174322763 273746560 617062432 915396357 71836935 716824078 514759786 950399594 243170584 478639485 516952537 693032278 404301064 614073851 602459295 788727002 311556801 373122904 916926091 946936985 347946645 550666154 413476784 560892958 113908214 268028857 321742973 644811014 984623568 994701811 509113542 899714899 584949667 914817531 366459920 706811150 832030608 832545685 38890549 830031068 930686400 973402188 829983183 989636437 335271319 478977335 698496913 966479880 27193165 45385169 750001184 848215223 464243680 718066184 84358792 429161840 694264815 832148638 72101024 233362078 660970334 830118526 740119154 881128776 571271252 955848335 964394973 997310359 679553748 868480948 999451042 999909844 953971660 992028207 548671197 578801337 336211429 444051331 861233373 884959128 378570125 858573311 713227779 776834999 387721537 777081946 835500094 865784628 836206299 918051294 450531555 806524262 232854752 558038400 898989595 956513548 177335518 454586299 260965722 798761068 866282801 972929316 2406663 18971639 620998680 753502441 83140718 681067297 668237630 812838911 89543052 604438067 986654074 999817493 950611358 971371388 215633232 513444147 607241389 874402760 857876644 902330757 239230116 610658264 372503099 875674875 596026224 703775346 834038785 851505616 668495245 972029160 587525257 741259174 147445250 339334605 867887015 883092003 827772210 966089426 226212152 947301348 32811151 312448958 87983107 971609487 564369751 963393435 260344162 701343825 25390680 608218345 458943513 853634155 464900220 525964888 389800438 900816050 212650393 859718258 103455097 215281877 260264406 418853100 517365053 639266593 483819963 978306389 840485246 906456053 833830237 866409862 120071994 810038628 190297668 858800300 309941232 689724077 1039199 529112834 112118962 979611390 57149503 521535291 530534980 857022641 29477632 611157533 481616534 591244270 488813330 786189732 890134018 914167365 215428676 444783867 14530142 307383070 926730164 939023604 243026140 495451473 704338921 821699687 266128021 736313532 409882488 792672555 234851187 633033635 221128365 850245344 254486066 969114027 142790474 766701809 501092331 540666630 528483535 925253967 901783102 979054012 919279329 984392124 189071761 793201317 924329205 950142600 561987464 860560360 381068811 739727082 32238944 83563155 798861206 957090150 739530102 793489215 437065131 765501716 4636770 119310078 476357061 827336960 5603587 703782173 813451212 992357141 600316916 976418042 192531811 993669511 573849106 971031345 99997382 904727481 992761302 998062508 681549840 831120940 711847962 862983237 133009443 332296012 767846261 817871287 384429827 696873181 374971169 838889914 35116621 434443487 855641519 938492946 421688717 969965154 841914609 878921054 129372574 498950355 272668393 482623653 431382933 841917149 556271721 708111727 770302509 833169217 68078712 768431899 924045946 976416948 683858642 763479795 177145104 987143089 379028653 456929281 76795906 870893821 38531370 374882056 713430279 827195278 622625735 943842252 952840611 981316869 229456857 807227319 544079274 767159474 342565350 946782225 982983413 992648131 713804009 727595258 248872573 350239790 423833709 889041761 822153732 931372340 684487075 996023413 800651943 880840891 486004855 932652649 998185028 999036230 780009214 968686076 188661312 863847185 116496349 168153208 758598960 789526727 517316155 920016231 323962079 648796216 880290310 990717523 825277024 990889000 106493913 919086196 809900045 940345988 828847905 995957152 6444579 216518261 410214652 495062175 55753266 469032798 655867793 676943907 817131095 874454733 431527285 720408743 750444522 846842578 220245638 273881580 968561958 978993594 765462756 855619421 678541070 703879691 515085774 922037783 603350241 926360189 888316467 940917021 808815257 955488689 833433231 861341648 22354624 260828265 106223105 349791861 395407809 905988264 950244797 992823346 215409828 455803169 268762563 745416980 524461261 843583299 481905203 917190608 185433831 205540199 443574186 967181404 301015511 581638924 124425584 153808244 611877670 714441991 781566072 804000117 987644707 990320120 32736057 120162497 479428854 935071076 555437492 918587635 23557425 361025466 642026496 830259593 303730930 612158454 452651 301727622 665122240 826947998 100991546 360131496 632046899 883661233 249416828 390251698 590967276 679481129 639622057 794222577 931213995 932715806 819386020 857168786 182385293 452137654 173879440 764191924 295319944 894855480 376107554 623407560 414607666 835139871 811771435 958381341 22666466 286800542 617617809 911586145 722705772 819508298 142926996 865536064 793034931 982290020 319707690 940282136 676906301 821983762 176802684 948736694 853538491 939552857 151212560 532158652 446023353 711373375 748206288 933025755 516649825 939315772 417707932 546031638 626115649 664844550 741416462 862897905 275292616 853814391 217617835 639165307 525272789 629581933 931081221 959905533 873013901 880957262 525828805 704718464 876273236 941726181 693900822 958274008 636275204 772277360 185640668 546160896 605645057 789623144 171928935 210334629 240293064 507815579 430802367 991173714 992870279 996898644 745227399 845237451 716196915 834722672 209650943 862474635 771235999 959275290 238093251 900378546 753299328 813622296 884040215 968715362 140594226 590284103 269275549 423505683 428160929 602085727 888333616 961757014 269511084 439868646 88013691 331590610 692096332 772137244 861782515 890816484 286073523 405906474 911714426 947914418 423815528 787521151 571745558 610167895 195530936 684141482 561291640 905290026 855239697 914983166 489708167 619854154 5248541 930984067 418286233 991914796 181265852 677337691 964110199 990516912 342898791 739197033 450434177 462721917 809989996 984354042 491571781 494581922 256322419 460849191 839529385 861234672 10926766 760038662 446864864 777634246 634024 727673869 819933455 984702926 965635113 994567187 228960743 516788529 256417194 344043458 97522381 176923568 511460039 932318411 207472921 642940435 628222270 878070844 170165721 344634129 164997729 473495316 748994586 910792980 707375150 743971420 627104773 836946725 234094492 236788729 437297311 986612773 713163002 789503325 218913506 567464319 636876890 638795151 277680785 631775524 841504105 895900748 705451619 845465672 239870403 919145134 538050404 636511415 22648530 604969626 73092468 693890978 349364331 470046121 368123505 600613729 992602507 999326498 90108725 862777080 482122034 648959076 492882518 802830966 391333862 977745617 450791232 871022183 898917649 924065924 459530259 462672056 896115622 978490900 936110135 985633748 630158110 896780292 411081358 565761386 853287769 927441351 134923463 823209764 852752082 999583282 738927816 805007760 325114423 987900003 38273542 746941344 229023210 762604744 368359940 765482751 587111989 615160279 433697314 936020409 207987959 852532715 19810440 277355414 686128848 934823443 607744078 727066925 879597729 983637797 67248990 417468855 462188434 596380668 244133895 770356576 744723050 879834320 537891739 927226598 961162129 985611348 345276437 920245905 48596953 294475214 972216720 982137833 349599753 357601578 632525344 995825615 383440983 663919057 97566009 502962324 806868049 991497714 159216978 792001460 609414578 932602854 164489874 484898340 756379134 962556546 783425202 929299564 876861363 996864130 265343292 714841744 819636037 899213049 456129796 462873562 964494507 974341809 804830793 812628351 602947661 687961074 468940722 662639984 988552983 999690719 978837054 999058498 754980387 978899869 155901430 982486121 294250896 885276793 935666027 962655446 202023225 352135038 8202185 370597280 647191490 773446672 201780465 900323222 796674441 948651389 173463835 527383873 936052588 990479831 715432564 782087493 813804747 940477322 665300342 809603187 302372523 532122012 764568863 980199839 804776772 973806535 654602068 989132909 61466723 108991928 88759743 811090140 201281441 376483893 182396848 481065235 416761524 764025390 644201390 854992939 284333466 886269250 341321931 709838778 319947304 371634299 494631123 619376690 762815146 895659939 716699195 874368170 414311216 736751673 838339460 915539827 54674157 230854398 866375579 976975203 3191488 56749955 834071873 969179726 455223061 873244787 317392939 500285174 321115062 551684566 580013594 811768409 573268263 851982006 204653193 258060652 148105877 419351785 839952232 902191042 488302041 941882990 171858124 492576512 719767229 873007853 786767688 822709176 192031949 389495852 238766618 759645099 523265123 843380402 689654886 698268446 727125244 890857026 478121563 597698341 268343656 333181886 353313970 467160183 716586577 748388590 385394374 943312185 545835905 837389941 812859901 854387286 359359406 650707165 862569258 939129357 739375216 804972878 484610401 902174022 925779539 957403369 975132150 981186204 679557718 929924324 196354709 914543056 951715722 962061037 757097444 812968479 630482836 735120059 43830205 402190398 862948143 975646121 782383371 839556224 935135097 956265909 558361296 912229546 490074719 635140790 414312900 866560028 63946052 832010993 231692228 640415310 953713263 987739787 546672262 966653434 709461965 862414397 736164955 762798245 242966174 679507553 112298143 425098896 393889457 701920664 137566308 889563471 915571838 925777579 651915446 906192441 80851071 646234484 3962805 913127095 797558178 918769318 972370095 992130458 328461048 771517998 926655314 996658937 351813753 512162797 221193562 513713535 779166740 792079987 983894440 986308062 510144578 721349438 418214779 951683619 214369027 386699324 83199024 924637811 660571896 830737220 55880433 687676849 927467713 940771117 343701124 791232538 67201694 130955896 621177641 903514626 711882393 788538643 482869444 785739625 887375657 967296826 757358140 917922731 732764408 764943391 625558476 672367265 87137923 324166668 128396947 487851189 921599963 931220430 478207939 973971904 481973634 817439500 933515933 984084810 300010376 637786828 126922629 529710397 102061987 395368499 166007272 927405405 337829844 505847479 267639762 940194214 834329890 993823343 823900936 887611731 99573075 264660364 632341416 767468835 126167457 530235616 412050379 848557178 469730917 593420335 681989919 995140459 934909903 960965917 618485796 918642798 895588708 950440267 47191914 75859878 983903043 988326801 778900186 804937825 836408661 977548234 456305747 878626414 439793155 965395535 942806366 966038419 468197254 773001914 738650797 905932763 679294949 688791168 62450837 499856214 823510244 944515515 790066485 793631679 467649383 901109644 716454260 908341416 860823855 953883790 278929880 551556125 864555385 943090863 330967735 493918690 663965107 898290601 382579338 970664098 159880032 679474036 225232367 326181174 155075116 738854363 280946244 763999150 826718259 954533651 380767158 655437270 854707859 857508193 373300152 727762739 983728291 984272032 918255982 966689336 293950812 733292601 775730369 889075850 128535363 579316420 56450498 423923072 828499058 857991609 408837914 604003401 772991844 880634854 287103932 493746440 713669347 939354018 132078786 164106760 843042464 860726833 36985462 979091108 970617200 988153061 431660718 581067129 838834008 908231926 631628265 865345697 917059264 968034283 508828678 831165456 468129550 921007231 153186200 827315121 776437748 929799391 866431644 891789698 560638657 595704103 652140408 803491766 175607111 768889165 874760973 962397785 563358124 588595286 339955845 889315689 784552309 990163533 437521616 979406748 833216067 921687734 190673009 581429147 228528521 521105832 627190092 650948693 434706200 454611876 630167837 800389505 887916106 975403615 323769938 388269348 148665602 955332776 628536672 946352410 836540407 910638587 208619458 596391277 939301927 989520709 983145326 987456214 527166325 770530322 76818770 822540142 234426611 235986520 596364653 877560941 260545030 274633807 192291282 804044387 302227497 476491511 929064303 975009722 504092244 935532762 396509651 400326017 38253700 575829156 428965745 556172737 780865002 837186152 594446510 738168053 717847112 883476721 725130723 991897559 843289788 975176123 879856551 993517228 917294370 941390634 708524410 882336777 954461474 967691327 903735710 981404136 909420611 946547532 244755124 626193381 402391414 618270000 548917992 694103368 112942998 697383677 676986330 871330676 592909580 672896285 407333940 643054591 124942668 561402092 871440470 898265194 442220090 865799082 632942385 678862983 816847321 893706563 183496845 758370868 758188434 779944157 884758031 910227918 191011991 600392821 737522521 790165431 313853205 512080148 838249313 983072583 519430491 530926573 655475250 813296780 887784658 969458575 298307538 548614922 274226070 876702109 281896982 740718560 412461464 562177625 492473111 853062134 107155880 570822758 3894010 804362294 148391175 201817825 890887895 987699789 57001888 200467762 431587606 948418089 743367188 989685004 363865012 987672365 152140471 518708121 832017818 916248641 344597630 947814654 557810758 863133379 397639333 492905392 165885368 380198541 467729641 913157694 451751981 846071038 860151585 950758931 135660025 335950564 885955934 951537768 62933120 153558601 237476405 602463381 895891428 916700852 865034831 953440225 287493506 615196013 673214908 920048997 116956341 665867851 346036689 670759809 521746690 858269329 602430015 641389891 949396562 958608270 3143062 548547435 747447888 901391653 453933150 939647804 732892788 914588025 538600276 929768958 765070171 960245919 287474946 309763240 887759846 893466991 707498548 905594149 435054609 829697547 545714004 594238091 534021920 950750961 706074896 763894565 469054741 882819430 417345673 842979001 171239419 882822596 751496715 803442940 163775507 659633544 497053273 509625634 901853817 925152448 989157601 992629021 357041730 608525904 240506644 459225061 821149951 985798320 174739893 270300293 81515900 598875447 402351007 686263221 575799414 869830115 780203565 906283186 522914958 855809234 976722148 976852454 434173425 612017183 835838628 989434516 888796664 958307111 764802281 989855828 415402315 736224892 427696838 981331744 473219635 662303699 883590504 938714745 964645202 966942442 156492610 978314680 618755837 875227644 976205158 982931349 116735724 482662092 647769311 838047676 263649658 727595056 52389081 742067067 782418982 992799976 389732338 578035559 659771737 916468347 77363755 234131250 39547557 271927992 456534390 649140582 624923960 732673398 203972144 863907300 572017207 731723710 363938564 932978505 974946897 976797864 803045945 890093927 800851156 973306105 501410079 606180012 991493126 993039882 458447254 616159359 848337132 908583405 759446681 900739698 610074306 875276405 946474341 999843601 828920463 969187426 383642996 666768614 804762684 819042289 328838247 449768545 883634250 951721918 286073083 380312706 583743920 738934995 879108368 985892703 622891091 882060747 366867998 476197611 716169904 763460388 23534187 182108334 600492593 660014586 66871734 231827730 480915956 743292823 222102569 278984249 613174207 979519083 323190773 811808599 538647253 718225392 429601485 776620046 971836860 975553745 277947332 460190091 913095659 931218313 267569679 310365022 131599783 312131485 713274873 829569111 516512242 999470113 352561654 805441486 66926325 764943332 305405561 761857130 746658039 789250945 501668528 694262860 964745738 995018558 253098863 859126628 394302647 495015744 1094114 335317556 858656571 862294334 376592309 408388000 916503001 969575693 867173764 915077732 780298393 796449529 231428103 422069315 848293383 946246586 499174670 602673824 69215375 403858297 544047527 689139476 351122149 543477078 237808732 420911223 493766601 744858354 993839642 994521883 165514280 532378806 997184508 998799601 319148032 365945744 774115257 955775363 991815205 994492498 282674007 953724787 425548462 816039428 35799746 144070298 204582826 619679251 271439407 585765847 973477741 981240751 599734777 669519894 652143249 917456531 647281375 805693599 804638817 814787522 760081152 978984572 724569217 869749971 363917702 975235382 941005665 972703383 40815803 121420281 210626370 397332449 286798308 427416209 226339497 919874355 943649102 980845419 750632273 992146861 906602585 933581437 901474675 921613688 198731432 844944605 424080576 503473274 588899708 733063692 559900060 738355864 661535821 709209680 45573331 351087611 544752222 775855050 50700589 216016881 926752699 943720099 572325792 931102803 53638841 617532629 955652338 988890762 860116527 864276803 640732785 647497713 902420627 980846182 854730031 970989025 830945821 864708500 265819579 660784298 928554022 979352605 891126309 979594111 963278903 993992434 440760053 985913360 385934908 760517423 385000770 700236982 34929088 232975564 537718867 878541483 395706238 841099954 254306433 779714714 261491079 746012676 561890625 810626099 809075259 853411758 720182739 779674796 164934673 217253918 964629223 984630924 701218877 936663362 991797529 998667201 132032325 794606256 579302163 782527603 865450780 918582900 549474522 992842195 374247275 516681616 995207684 998371895 962942898 970273013 247144318 746295952 970461104 971723434 671349438 765995982 805325582 958785252 11749574 111135803 869815019 902323377 328742467 375695921 336438804 541170167 804630783 956560176 953859970 968109796 275815025 860211004 469157381 878407505 403091848 791115560 188240019 739592644 699029434 812870926 753217090 812996219 317470555 410407935 30397013 862184882 307797014 688919435 77199910 845766875 964153865 971092911 45362187 171622232 798006421 859429708 485571310 716092326 579652478 827447676 699684406 899810037 974601228 980708312 992656327 996570633 951816060 998169746 952339573 962095942 470128837 926890749 412350980 726386144 608639403 760394855 941832385 970981939 954322138 993074978 965883716 984091037 786263659 950679850 165148728 558534670 737703356 963259277 148404724 205279636 277723846 444282145 140183882 868327219 633995883 756706992 881881202 916498168 372273146 599952724 12233418 375835920 569341702 985770347 77889066 949298880 581618129 842548681 261702843 564023422 835073185 944250628 675907175 807223158 731337712 875897480 227272605 410565708 169897162 400385133 444561533 649193710 469988876 723574268 934499120 937466611 106439377 463265387 40059361 326787150 89236577 678015036 583128368 887216611 790512517 878554889 397916436 465336591 839875975 935197578 271103049 671985724 786308399 998969196 375908025 814846848 760888975 849307593 50173164 212539885 576230704 825759045 966827842 975909759 924689394 961773309 184123318 941464204 76108240 116267071 946705493 954481693 202119677 450557945 208854000 829963478 296040238 801328799 923113217 970309046 642650901 827984740 777257705 803725270 36364665 936005766 187884556 757726079 360446050 837598286 285668263 890801715 551099706 949699980 16946277 565478075 784751218 817767283 878622548 940339256 319633479 867122302 150189913 739035067 771609474 805278834 944780358 960969735 238620411 534378921 905044178 951012754 219090869 633831949 497190793 710748100 568941288 770257114 647522697 721799536 268407640 923792068 611973610 928176991 548546030 770065916 382157659 741222167 932814269 982114578 59571099 191606362 720208397 911919933 780776646 882244363 489117777 740130907 489830230 940671816 684175264 804894922 966120763 995676602 147229799 820395414 806287198 954841907 65412861 109852898 578993895 635585000 887808748 949262009 360002255 926153978 936531602 942010059 573870688 641141989 275698320 553225969 162267152 991276246 679078288 941354663 694725350 811314019 942501412 973818475 771911201 922983829 920240390 940958883 256552015 810812121 699250020 787137846 323902769 872249307 174028533 911397047 375738869 879865690 177182834 497546297 720898777 933689162 265889503 467123909 397451776 499016782 435544508 622246684 896294482 918514672 331150311 751226546 827689473 891546497 136008088 725435200 366990136 901054491 622921694 936626192 706846470 832617773 815069894 986463250 205527603 644097577 864842690 895475495 132048599 957862895 253271784 482471338 55943122 396222539 690249912 833872568 469098692 746049328 593455188 598565743 692611030 840441361 490470267 594661519 905805313 962437292 901253019 960545821 842978366 912340798 713815972 827287707 816979276 848251799 234287563 446484281 24340099 333295621 54910501 967487304 952099598 976553797 55551254 392158688 255519809 723245779 851591354 902054783 919681821 937607274 265454835 646291471 990651461 998771546 689920532 985127784 406907729 574661973 931597045 996701881 368126603 681206330 111034046 327354581 730302461 872092598 166789858 904425330 837490417 847849375 86526593 189280451 426681621 498535380 996232666 998538531 787594549 795813264 910138118 986318377 513448194 549212738 566722296 972226421 383927584 790668454 385555343 837537713 828494577 972447650 867821217 881490563 877718717 887400908 875387623 892629839 844927620 940824420 430933782 615502212 528753558 908793383 390437193 630543346 444740497 944138243 525434201 767080118 163060647 264773746 267913179 792588717 80270202 90192646 462362452 499293807 282603916 285013602 222485841 969081293 933436537 960098522 666264619 945991067 72863738 972578522 852645123 874408483 580048452 649712752 150663978 973173563 734720220 888725340 609089123 931719824 304713638 907081850 998933495 999962843 797676356 970789558 126086450 990155613 131492762 696980716 646259176 758891207 349155076 932058512 660787684 777556853 581716253 690833137 807115970 902583779 968020052 988879218 859180227 976724159 522739401 557464033 221053080 515396658 846094994 850670835 691194436 972847960 646923132 665808009 55185887 784599850 214226062 799921087 922665946 989352502 898742663 966301126 391364471 523500381 199767953 282356624 326742710 330700399 46588689 911827813 816817100 843447087 904940495 971776914 420706567 590390315 581237293 937447101 768369105 838292490 232696758 632463638 843057431 902405405 731005769 897285651 778194953 962047403 437120588 847262104 447699736 643842764 72691419 785675042 815896337 938864043 947570976 982238448 480143977 907536641 538375711 606370617 99015380 592143804 724679127 851694124 481455318 663326470 597454763 734225259 37234226 89718049 591104928 719145837 771290806 949707943 933851207 955748207 147122690 589872062 953419735 962834854 50504704 582993570 805460986 864045392 562142390 654717794 737956433 847190690 168158805 601061873 162046613 424468017 396648923 679376028 905860423 929770683 150002302 970209036 83325403 953085172 997877735 998553115 475765333 511361218 386736450 761444583 75058532 426612015 185893457 973582670 366717424 511482209 644604083 691341862 389836534 487229033 307541654 971399915 483379391 507702125 703437085 786738184 502519126 815225982 960045340 962746926 990336590 995636725 279988852 352467862 29365618 252967841 29268639 274050525 674069697 917940737 979291308 981751169 398039421 537604079 617947861 646377824 375958657 797144873 884349361 891057865 956809954 992037004 577222884 599056592 845641935 936326506 916472440 978679253 282223716 497737224 157163235 751573045 672721906 897052649 174140896 811092669 684949143 720046731 427050580 725986218 188955155 247385042 68854282 618724913 176480697 760325679 20756774 706716975 385235019 702249334 94078165 732154032 423241823 660884697 886056940 894983511 380089873 621576442 665349466 732742408 608022179 685120819 846966999 887670119 473971877 524365856 463648242 505420867 666919406 947112213 629610106 820381727 143018187 394976156 455560351 706913287 611256269 949829794 589427996 640815542 400821816 660551251 488556545 649164658 791271302 887191072 685975032 833205064 654676195 688927337 861811187 994967082 750590000 930577413 278162019 324837280 853395992 960163395 538402220 693453432 392870433 885129457 202322880 782224270 596427414 951602781 746610388 787901462 130166165 895235378 194723397 525232976 444464925 887396312 888943448 987172573 110900273 125502202 964470793 973652633 828199035 865425411 874542900 966065010 640699565 869708883 379949569 419970737 896196849 908374292 262866882 559783207 27656593 354236917 813917253 921990910 229993394 400200454 162684228 841355568 273703155 392885437 891279157 978463266 158857580 448209524 284133238 621066238 291351973 769226133 888523421 992249029 404320499 688958521 321197557 762834908 334295010 535527565 602051584 900140163 557170822 905912123 37482149 942228695 381355099 584707852 872939753 878159379 326214935 609537376 322863913 906931629 126813503 631315556 25699608 175157160 674252042 917278261 718771306 932122144 186874948 498227946 698726943 887597372 110803299 657008817 56215291 979948203 931154530 975314863 546595352 778940709 825509535 839797677 861577347 998886071 412074729 604243922 167464881 938918734 499351987 873887286 289030173 605938815 453760108 643850174 34960961 701612591 371457929 780905342 379180863 589706798 679241760 762225122 54113373 182779465 274008756 577619769 776222565 985384801 790503152 990514023 121088564 348817920 334921837 442694754 822623258 871097574 90580571 258186859 236846076 411613485 439885731 985849259 543350938 779638126 127981279 773508158 610561587 858128807 802483449 947592981 948243423 955486952 839617057 957528391 412121898 486328877 943783032 944718297 28660594 324395055 365564679 805064948 612307622 921985573 632582766 858701938 16167333 289547240 872677891 994721061 50536465 300783432 458971001 959423251 129401735 441833825 555717950 695933871 523649370 982132775 269629592 952847927 700503834 762822954 685563208 702576062 248058415 981093101 922505637 980843704 311092848 374275328 433925326 817258743 436509009 655562994 750686016 807234327 714287633 909424402 98084290 747302765 241944364 434519288 833865262 984061098 778650146 934960644 595587538 740790130 284933544 736359240 596490764 639026471 175187482 274932451 338256457 599346772 715567037 936484318 446801733 943942829 723481542 865853787 181002875 227364816 213936040 871776894 57086637 791295655 750642172 936275692 731327348 847753150 612250768 877045120 572596059 888525995 988224661 999654515 32317141 858302461 683512826 742054520 80151314 617424341 338067727 694227447 951250679 976376266 232815904 877624951 880407610 948329562 175167165 434079564 982580032 995583673 384275549 632161534 814560936 860877632 295264509 924500332 99703377 281811858 171654839 339712647 351913722 663441028 296476484 803308384 469695364 868090098 508827475 908842863 166877645 236297326 846723348 985249221 500098645 750203594 685514479 890269804 327863333 604929898 164053452 206075667 159067071 683776267 87036130 779364436 922517213 977234991 135671210 956060100 309465002 458454991 44233873 282290490 901805023 932289729 253046169 576851265 218620472 454448090 692471391 995892886 10479794 117757310 442586508 458411087 133971320 906539757 54629487 673083330 9567135 731414870 439909883 675587079 302280996 336645930 873255850 907662719 143564600 736387516 489084042 562081404 204761272 800447858 622037147 876925024 497560910 835484201 872016990 882977760 678062453 882731685 705072634 806212974 833036096 870341671 604868394 798245676 778064899 779553167 548794624 768836939 674246566 904639528 532574982 681832571 251367684 638613961 227310839 265650060 975829203 976665344 37276745 114828723 679648635 943480675 770507272 979808763 508621734 918969708 121456636 566620134 438892500 468890641 874613762 999797377 179779375 592904237 329846556 594046631 595695398 680514108 46495604 688502150 775987417 801263272 364555101 565687801 920084187 996164174 490120941 674060013 983417642 990762413 715884053 927811540 516395688 722798037 889897540 934238288 182029680 661068843 422339277 501092843 337576721 812506405 161801531 529013133 855602896 964240744 533762862 715499284 883835713 905663485 995622126 999973145 627292178 915154593 543224151 935315625 983600361 994916132 135720755 150787873 555307429 712536692 286374938 323382219 605447678 639692876 435196986 667360786 354168426 807384451 948034020 970954236 336053591 827304580 387949933 686530445 744635746 805875195 193327733 984749344 126412701 712195657 932520337 941587626 383232929 847281821 227276586 854723191 327221429 634355025 412114289 592192464 936206286 956136442 523485290 648837210 716463715 926494724 723619196 819690790 405048109 714071131 366713225 828085064 458863554 801129994 844905112 880044342 721955238 729033470 969702201 981253825 636003832 834481854 63035357 450301357 791767308 877535654 681882994 839691043 774900895 919776360 243139999 405562498 152394005 223236817 293337084 468751501 999668179 999754342 921945461 947519893 159074613 928408203 636435357 846963355 956281666 995877904 100074907 894728850 358804436 419615509 847867257 858984581 676147228 861820021 983242423 984637951 262359606 516226565 900398415 974718584 793497702 860337216 171889467 189529970 388057443 913928854 623598833 706183068 369107638 691420814 714205062 861886728 199191655 313798541 978631310 991380305 217999712 933598876 229406954 688055064 146980440 722927335 787469327 794155060 532624501 657107838 953511524 993570842 840519899 855326562 185713034 259018343 258830158 952704726 43770308 205112791 957010782 990329348 428707082 798040643 564288488 734815674 232918504 713238081 681438057 690818984 452832823 782633597 524793664 862375419 298988586 365201852 368710306 801024672 906311809 930284858 339304260 476378598 249736681 874521868 363346619 638800115 411803208 621147933 566861 977492507 101460573 302228953 793352646 935005944 145374971 751542841 581378482 627340743 451414991 586413596 103014181 665295017 784386971 890940797 255858339 991666406 190238972 703555558 265665730 367417363 221463343 521320548 12149351 456176936 358702063 402995566 341877889 418068785 3017412 46276045 572501046 735753803 716327017 747670511 186838387 671789833 263744893 646050005 409270053 967081096 471710463 781236824 669880401 788436849 290168436 696773716 688151305 708297151 896963427 904820872 376666365 624812475 341947827 610354195 686937034 718556545 406773838 683894502 695498275 776955361 822423413 908685873 587061152 991988036 672738853 963426354 394760950 635861384 916623450 961792797 941505309 991376287 331348158 806408734 541012594 898118892 100197699 506560398 303583913 615795035 402461830 496900139 919768162 943218958 827980720 887149664 157085436 579387852 787756761 953097468 142832922 320337178 638707038 877549817 507037253 930222096 972546854 989475101 687695457 741998758 729303132 953570427 535019151 577619869 600347568 943917150 682378254 937373489 122630239 658033127 598667230 997416564 898117041 906217339 123591934 208075508 515695666 578517348 20844300 595783846 421055547 861484890 156737354 406307891 356346289 993771556 115006124 748427612 389761380 945255946 220044415 613159697 39309100 210011997 83262616 837382442 625667148 821440006 159562643 856163136 827298961 968082080 180167240 982167963 130932380 384626940 127229224 185485294 378798599 901306592 242682247 349553778 732495662 868908444 743809325 997798438 790110375 842905257 247647940 822608223 44645012 523022008 944354818 979451610 33838768 372430546 930679025 978747580 569196718 587053891 48508010 272431728 261216891 710630756 458703993 548971227 680871280 864336076 812529220 814429416 352587885 442920780 763858376 904470486 596376830 894610917 422205853 661429735 452083731 682864070 483335402 675060687 715016441 715623634 124972702 809505259 476959776 765323886 514864035 702463631 311555218 361663791 610694635 872244057 909309056 968267906 797798699 890412463 349664636 655495183 964383845 983740044 961292311 983186027 543766568 659941502 478501264 859468884 579022299 670102472 135310918 145973446 686553026 796799086 434741585 542078354 882641566 892006186 402535431 508318804 899865042 935044547 678399392 996496676 310753171 541878176 680137957 875649735 213482083 321874324 134223070 596775023 72161960 318902505 188843324 843496895 670560778 973196061 223091806 768383530 240685800 816942650 83946264 695298018 972094038 977520056 950437932 986922286 701491706 826049434 406323997 922277637 445145995 495112665 645358709 874497154 154622261 849331102 608376637 763641695 709513331 934221873 968514515 988049292 239610533 410720332 358148472 748780903 379996381 598829577 172119129 596722640 709730439 997366896 583087573 886476618 821528701 886136620 794641958 957293777 763841967 957245410 568091432 623953815 441669776 900495635 306497360 920945648 54930840 728776881 665577420 776473924 107513427 327562924 705934724 733130450 459187712 606795710 819230087 973646826 483448895 999105976 720191604 796336268 397143343 660554380 938480658 970228234 731590064 837896043 195252991 411462327 20032893 350103683 635972234 707965326 425725580 639510688 130639949 384314306 308000594 791944246 670928673 680337913 685348947 896878985 912734595 962596750 45018439 390742883 612249371 675389687 559212837 808213923 423442015 611636126 543080207 786893151 856238573 991091098 996793358 998495563 65133172 639535885 436765436 984135844 996949894 999694670 669959381 892277918 973125473 974069767 526472343 987990360 618450442 708160153 957137277 999807460 441015979 845489633 675000408 913873871 139652358 733624332 615036123 948879356 348698540 638224729 662015701 902003726 965953786 984232347 635787250 767623032 630217718 731959962 77017511 835554177 902757750 995954789 438996205 653191308 264090037 593716785 612067888 637077525 36791891 344790732 104243495 112228446 782628319 828206393 486876750 775267218 802647740 930092456 807355065 910347485 532020634 628987133 583472780 983818139 60654507 996078174 819080858 992598117 908024471 912247639 612841711 831738391 328632101 769766499 256723248 317989159 719211236 783365320 838972187 957603807 790207944 846329720 186929039 812567609 882936246 888402994 634611138 866800451 947425300 991988653 459039334 463965834 257619582 635149746 465403929 756655855 898823526 992851849 116277502 447297222 685426773 697818724 962195780 964204641 422777602 427360201 462355865 667042534 980308153 994802572 716383638 869766746 513671676 624212648 600522591 932354536 567244908 832997334 814081862 921466757 987643905 994260096 700750022 943164180 382796976 550316172 724119734 873807392 727157971 883184708 725064857 747706812 460701946 964079817 140131106 993696088 78643059 183723733 893569982 963682038 858462820 919236207 252585295 928710975 186897080 693263658 6326878 345915341 410864750 501649172 823845697 950606940 6370058 140997636 367834321 714258574 380214182 502974338 641927753 732639275 307480657 627583016 525839173 543976982 82331341 256702415 176855470 314133085 230917287 953403229 688585129 785710980 141810639 451582141 460853501 730714021 882609413 946250528 130924856 793002460 281161428 293359613 441840469 936760686 936300845 939064064 530995688 803448419 690747624 904207418 349584896 724859635 184622519 921331387 559993703 821913907 340977561 716226734 239396682 781457016 5514903 47561151 110413458 884368222 299358829 337432540 769953779 992208757 9337488 145970178 727101297 910770699 448863126 793606766 403069607 818332770 541470338 671823673 224565704 807820786 35009212 210523211 31132370 292129652 951955743 966706690 144679911 886288723 905199940 958349333 204103054 966467654 222059254 625869537 277934711 851309188 58115222 849472585 320652790 691449706 821802696 886530782 917430001 961803494 480569932 974519750 875851703 876990222 215752284 431721180 510358278 660950191 48383679 413075372 472119546 950901476 688952039 700460494 297256306 629523385 90481737 237358746 390227807 671384436 168806434 998233060 763701436 974382552 564292855 890270968 358046338 556408386 552137575 831935105 727654962 750062476 116542371 239545782 392419713 555536110 392509285 768118514 508052446 533184030 208491335 406352630 101393449 436952799 845519603 884228650 850823596 922793857 877858122 929676572 816922152 957717667 741910253 802013292 485038314 823192840 925973577 970154371 842540750 899413306 431598418 893852206 260085643 578123661 362009428 765711232 228961557 576216146 364597745 515525603 575763842 856369215 559701515 973734367 408443398 982189140 19195711 462287272 81068082 981154843 838199567 894229714 415463496 961063293 899450399 906207958 981807365 998719753 715775287 833521962 477759304 595429170 379882835 647604099 548110619 936547596 250221409 466750356 991804976 996708102 949448741 962418939 713590447 861483489 393360518 993159200 533889147 915760931 222982589 387267625 322174310 714112407 765428661 853244406 329469424 339168245 117952815 452757207 169393693 280226128 427219048 616727302 987552411 992397623 983117709 995210069 962435380 995396254 930569241 940051780 423714041 969650816 344128185 975573863 665397226 697480670 40115523 495753995 378878071 455278075 526898978 952659450 258408257 416871599 73236681 540062323 162863967 671228534 507226122 687215784 136003375 543225502 123945686 335885505 465935424 736596062 813000673 860948645 377153129 800431846 444894092 530228443 721566348 878637581 793333891 959971931 172727540 891760074 261758899 923501189 290202384 898375738 101857897 533217901 952196816 996022731 657019026 970166397 708176955 802273894 685819738 969821280 723412831 883277415 813295794 861466210 802725367 952877717 13534427 355662359 639075900 878285641 160565558 973685411 946960110 996402226 125950466 961786735 107161506 127523382 532457073 787140196 249963636 658625596 420496206 895120966 850160562 925971311 397727044 905525115 397004352 637627226 782743044 870033370 543499747 649143757 946795870 995686459 717780169 735225979 456741481 955195330 729940025 798839951 409597318 514772590 704518589 845357635 723916904 735158948 722400039 758272242 869065864 943145556 356812713 985598356 731801562 985004476 678441942 993084298 656223608 952984093 383503512 875908543 251134887 851137514 345401022 853113854 23592687 196372663 706064883 960590098 300258005 470467897 903624145 991250901 684395981 832667929 985240320 998372971 755001947 865067047 479518626 901259142 995438611 998706945 827814026 830240585 900910851 954084718 829952187 966789943 417567760 519693683 667836489 754501391 789950925 974826472 332480997 775440468 361978105 368879731 59445204 933455262 44959272 404767813 734666168 828526801 530770759 682224247 830296411 960298015 260976801 380404427 518510517 880416808 581592639 706460136 504861477 731650118 32338521 798804925 268622935 882932256 954216901 987058797 586854105 952835689 47760020 132569017 669225497 782603600 990939116 997862000 358919856 371361859 554274704 632216382 975622287 998193135 454108644 743924368 104957955 202773931 670118009 727705150 230727393 653997725 926775643 965381772 348323928 883046888 987838059 993980363 829199896 887616644 241027855 827313272 290240281 308195578 420303324 543252792 599865564 625993833 675354516 842558035 586477945 769756428 665766036 666563346 331430202 652382080 21926870 810909888 944014706 989786289 923900755 969284094 376468457 459975061 370067755 595303114 940704198 941259804 77675473 495526071 149333746 396229624 984209247 993673282 429714016 595286096 114910281 989161554 972765416 991029288 371376653 940783500 951279967 967796604 476565440 868527100 68195565 880219475 140967798 769292215 765196243 867468735 211879147 405560775 734002437 986159856 861567424 881186913 164103513 395434684 8897841 691639872 767038637 772463887 954576413 972283920 51629965 343078257 229129455 544871525 215880627 334919176 896154814 932101772 537432907 957246508 530869059 603392981 824379149 851724583 27258954 880826947 315491686 586826611 541589283 887842974 379403485 421124141 218648253 589007683 192547501 491400312 231289797 573775401 45121347 603119495 189596786 277221113 193347609 726068339 154241749 677452091 298373542 376047643 410480763 939514845 716906920 851621412 103270106 590678974 284806388 695524385 418877387 937683356 105384694 666239745 723034402 958798910 613896423 728640855 77926023 97152142 486351666 756203905 49485872 53929305 67041544 414686712 346268971 497701990 813025264 870392540 964486256 969865774 949565021 967873964 598280910 747874193 509705077 784072854 90451579 481259228 409970550 956729807 208809942 303803840 365675946 809854541 317966571 516321056 806224889 820304471 886933502 940557150 462381529 736596232 976636831 993729749 806886729 888330432 347939388 672855251 389782308 579573458 202988131 318841756 632912281 906142303 932050306 943472710 733699966 917783599 761976094 811330281 388320007 602456996 517605018 644325631 465254578 868947543 260437903 800984487 2117510 257148986 653780878 777285354 93845142 466590796 240653891 868217151 209116040 209393879 636412499 923018804 124291380 905509261 994358483 994794300 470488023 700132248 489978886 944836885 100409143 149415147 274253635 569102894 288780534 584581140 890853817 999224487 225604895 469891315 357088724 359449278 214596188 663478277 816389379 959669854 375416572 754585012 285994021 950352936 754891976 963312640 190637351 204451873 788986468 867743554 465901924 914571716 184930798 997572372 632009315 855858281 709271622 990267324 110390169 495799294 399555585 851400727 691019478 886910481 607994842 955314404 283886216 472411790 906092121 966148827 525140498 929915128 813735441 977445313 186974292 470482541 303069241 494222372 32219627 371347083 273578251 577701762 995106043 998223390 809914930 889131474 296533479 559404259 827222867 971478971 92323047 782886215 598735730 954509569 682819175 866253644 95651175 887510753 714357476 808398828 764933027 781796862 804620067 910316244 626396622 850057209 550250274 823590963 107850006 359068186 58971855 91066078 175924815 409470874 472912162 922844725 133666421 227651053 300510254 708035566 13624877 199600830 716036125 819128811 416520903 829198200 967464702 995342094 175079090 532135512 677248881 949412333 845230386 871089830 383947201 438101545 491094842 780373883 127302134 972077514 372208244 694301916 495485595 823603247 847088007 962636180 384240464 504895584 675612927 795188542 657216 351047298 497130954 768356371 719346773 905876481 441720249 506896896 637786981 690794425 819644581 947096030 205781119 479503866 95130879 958071696 654220448 936626748 412028827 529396506 104233909 384631291 176373828 876725652 114798248 721670460 762737752 889825416 450407862 954984473 30005733 155634566 92049680 478125835 561028143 655215406 38940781 675730859 838653276 884129165 835233183 920599751 393246303 878166581 362183037 424210082 493265401 562326161 937176333 984253218 619626224 666500772 852268661 981978307 146759129 542222075 370621045 423178826 917191564 950174802 955198918 967470877 980102205 988350536 810941338 951155200 420671117 664385360 45579251 153543447 818470006 995333279 107500122 715988889 207852487 930777238 857644565 944491073 227995990 702499469 943658529 985692116 24824925 818425658 784212898 876805837 905142471 939840081 70405179 927001417 745403615 804478151 478331009 563143005 735164289 849083695 8323308 366543599 22668965 783985476 377937894 952254957 940920521 962136402 348378720 967182246 739754558 790381049 372704997 466348454 282290093 932901008 512563127 858493623 582021240 990247892 892650804 927033366 544912299 993736445 899036973 997569898 824129626 912303274 362208734 380338358 994804080 996470803 548794075 967714471 590023591 774013598 501404003 958091866 506983028 960781830 682356307 907040547 991078209 991307513 202295118 644770880 525117451 852692774 582842701 759685368 253670682 381263957 74499650 425672253 437460343 723305714 908981689 940908732 635400080 821027697 945054216 971414705 819439591 864591945 162121263 315224714 832330583 974910596 725018386 885105897 314752394 723270042 830803773 840107449 849610005 881980725 769327576 826654437 690239647 960108165 843849977 918782928 654403031 814957694 218369898 283804249 844533733 942262271 997600442 998864270 897415705 963122813 981577493 984117862 557845212 876450775 964500047 972436187 140843641 261488381 741148197 854433974 28452196 769216045 709889485 804378919 594402700 694679538 818946515 922436159 466036316 502413505 270255837 508003747 80596977 635935749 873202911 942991059 511809753 936192523 889126813 945576858 578896464 769038597 306007078 938014773 388550752 674288309 716561866 990366708 425778220 823497001 673117295 897706314 85405098 232004228 785452170 908772881 827366194 910566263 263690687 548682169 460776656 793654889 100727949 524576456 188011497 291612259 688222280 989890479 814536228 961026588 489118906 767678732 469203337 728691794 693627816 699274039 618082685 871444342 106071917 528255632 921866205 922890419 635841822 808547448 37096823 954904750 157084899 571021234 587478993 853623668 483421544 923715835 459020044 775525279 795941963 880859314 16281671 857926032 799391976 941692435 282505656 848674977 498682997 985579613 985434031 985555003 919184554 995783196 818584925 963161689 471044722 763176148 102524643 486139629 587525029 983106570 667128883 865314335 817158594 978813399 558263959 896415629 91563148 352562667 831351077 835430254 56056760 614197737 609552916 747930727 157308994 899517289 695952493 815062942 890623362 898775506 286808375 462858140 446108472 493419722 914596031 921135546 78213776 918195644 922726763 989006295 929718784 942439267 671203035 963440014 703204850 897165721 318693342 988208372 955951368 994375831 729536466 838951312 203092360 678484890 825604789 826913156 162612399 182659510 580342544 965473973 894065312 959578668 525658423 917211133 731985090 746078804 676839299 998321547 279454204 856680474 806015107 972059784 792100990 800975013 703505582 920970266 821780574 885483686 683992016 781742234 160898065 708460361 615618949 825654147 592347846 817986030 939190197 974764022 370950932 723294632 446170302 931689581 63785506 606603636 590109606 628637898 843209484 968892636 168809386 998080361 179109121 891128031 922309301 995750151 712981356 809680229 640484952 718861737 355075385 528559201 113684277 478277150 558329812 838853183 335320995 525846893 982694860 989476493 491965956 521573341 374130519 778812464 712681669 719566251 599632554 832391859 805074941 974989827 408098177 471888259 240769408 780834499 384526688 830162324 794378969 917688926 563619898 973099201 739195870 869578267 53135003 986694436 873774913 909558735 429165380 969109144 111667427 451477532 748584025 813006044 116044386 833598390 587212190 597230194 92654887 762335444 911822039 958951249 582177325 615025773 261888750 626939785 171558953 425544723 894816072 927289108 176857618 614739234 407610127 858946945 608314190 706576360 2805202 804071986 35416561 893956114 474884230 846922073 923579113 936530164 185014520 467826144 20410480 72483805 195150477 558468387 566931404 920116827 660326674 982642381 230502504 964359067 688028205 942179025 887588799 997960311 293765073 335545229 547862916 633649572 194473707 400622000 222545580 406753718 912923989 959921992 996068861 997859140 24707379 944130125 555656400 574567051 706389863 719413794 336574730 358214895 375963325 945446938 332928174 871997975 797966205 890532911 600342215 902619563 328815694 523407275 828674391 861634478 216507213 344329487 689362154 881742706 148963555 213393333 89359782 883486404 790219745 988486001 371082715 986108270 504958868 624388812 853444501 882385831 859545360 952903258 503478096 710423034 95104816 555208196 436646949 872647064 739532404 781616310 922061104 929504585 233536532 922023813 767608771 916437798 958590579 991013628 896088988 957476106 528256163 902162653 548514918 960648368 55348298 144872540 278555927 756775391 962332217 979852464 97177065 861552009 323028302 350709216 508982363 750957657 385761278 645398697 606732236 866852983 192996095 612833632 698046648 810128779 690510150 914719014 920774611 954994744 894506783 917147920 918932859 976567313 767595019 796631926 503321429 579025345 946665605 988049405 547326938 964588175 108228934 811656478 985413331 999197186 982588869 999614651 122590925 775924751 436429760 943081272 333807882 950458226 330210838 827573240 619127963 968072267 502100410 671066755 806452223 848720241 311768211 589522044 602801476 795717108 760702579 843970741 964665502 975044311 40911152 540660517 93705696 199877429 383716700 477376467 352113047 856318652 974263955 981147298 195153929 325042339 98821452 923760340 360206114 415447309 828621113 898714604 435136775 454255855 586721931 833366779 817569082 961441189 427375619 448423043 998995633 999760282 47457928 152689212 140156339 599118338 317140289 571165331 128139542 988573303 793389027 819259957 916741733 922308478 120378146 390096344 42795246 347673976 820413326 926465560 797676963 809030318 997268438 998630689 568596669 675880354 123251192 321285422 719073895 984236628 515293297 863528140 963169779 986108520 213341627 388839722 969771781 980090399 590812610 984287443 657926138 787973656 440046934 745036082 516540079 811198346 284912251 571469265 576988400 740388875 249545191 500051382 716291091 882077070 954234167 999395213 865601229 949676381 554827920 584072376 87237613 292045448 597371541 985127972 156643801 809940156 347348222 804294753 73245051 658923562 796940155 918096370 164951365 744122568 986966528 988050110 492655667 897762546 536321053 626289739 592179338 866621601 173809437 351278391 726588796 946215738 897905564 903261749 723366768 901745077 319743989 990281105 795613933 935810916 929161745 956808735 105532032 812022939 505284700 570529046 724214276 855900260 980079145 999953522 960013165 990998701 532098028 916336004 456803126 704084567 762054230 871613693 67755900 433425599 933462849 971867927 517476327 904263666 959692816 978534789 772174007 877327925 573585442 733473238 599302842 982317634 505701265 568720383 978675143 990597230 833547455 864153748 257776696 758919710 20968174 453594426 114648779 704934240 455622201 668279173 546383469 806244086 395065176 824669108 970105923 990229043 303837988 685269143 941496197 977855968 958014838 968893451 470334204 515556982 235065388 878804650 495230596 771299559 482759168 799798211 797689329 901592260 412867993 855219746 713243678 861502672 313440763 982201557 823956386 980124246 2076889 241266288 418816052 479966284 630415316 950101642 181291108 479572008 767995936 912523457 329884009 942344496 28627942 89406507 576206148 689757040 64265539 593856557 79871035 223487290 303588032 399580250 465194706 725352235 968116729 975744012 100194966 622212351 14405341 158497035 207087620 908417619 452641592 934069676 352801001 856635398 300735407 340733128 643771254 808290501 776817216 809903836 441179394 629825598 927785345 998878015 29161145 957248683 729569426 885107833 331825865 410477133 770637971 774898344 305086820 375010811 431096621 823605247 817753064 981680219 639353620 742217113 500025112 992078414 464463116 794452168 597152298 683287316 166256111 888492276 819013234 889549650 125540853 687880511 447389656 686336563 431117992 444021796 581882517 716540318 498453597 796616294 492954941 596711241 907561698 936115932 442403461 550156137 623346284 663870181 608205636 906390883 488031272 755234257 70176902 171077407 676478834 685093251 381085618 906853623 550549400 639808107 390483357 979165148 559710956 981935558 297421314 615849491 886206325 990160794 419406571 496152206 123858974 490045136 544828956 669531446 727562732 857417221 296529639 915212780 817636121 842445068 662452754 706897189 647966192 799116083 436258110 711461054 22386215 299060462 677166704 905501830 612039490 645924248 411640829 951613772 461185216 935948571 10331762 992666258 472234407 699176777 77607290 924859408 599913125 732062177 98652262 530124616 222850358 718680337 808763999 942477439 301229900 626432326 771304429 787186856 691747507 888663249 176453825 958153662 879687885 951726261 503216155 670952136 43005367 857405639 539875018 727914715 349078805 612680876 226335067 962366889 136782318 907804987 774869924 949060263 386245013 394633593 75674514 718550194 278572278 741695196 787184558 895701707 698775160 866593465 81738766 516237191 794431577 902259745 747084850 784346975 288027413 819652122 418904283 655694283 383259918 817027780 609249006 674473367 336846574 465115437 64157599 162398428 924447757 968548714 917608275 989682338 737770488 938061558 31162200 350748489 827776525 986034090 969564768 972681801 987565986 995212531 813653013 830525871 842996542 941274932 414660924 563705622 941405465 986879203 275203327 389068339 704570704 777397565 728870287 923330350 508768472 675335636 74997876 984856116 446240066 679781695 162171234 797346297 698789664 792326290 168716760 793824137 722002092 772098945 982212077 997602353 194795959 570497298 456801979 963955158 37531833 905396857 918696069 953653682 980100880 990768861 816826230 989071759 913925614 980001578 608376773 755905784 25838008 74282941 280074647 529240045 576877999 774855603 475364954 895277891 985564306 994577499 409348681 754206378 926191176 957495222 971913190 996571452 342741779 683732151 948551528 969887844 64322914 739962892 389556235 510956365 392196222 702602852 318108793 613941675 910501830 947202636 885610287 926415378 740131968 755620762 779715981 864582807 661969752 925060368 482635269 577354399 492192153 957463271 908966727 961000075 183878904 450287245 321763777 535353918 437549447 488305899 251906743 864094573 838393618 906157181 782392009 856148746 561345724 882395564 951108733 987217583 758001840 955646364 850409466 979159310 593018168 775745742 534805947 673188342 806793801 989169089 518558558 663908098 125079562 363123613 853269874 950773518 586328291 729771921 950989252 960152788 158557324 408355742 334576740 894592521 144560726 277243862 946556580 946995256 996287488 997256576 170555221 560414566 845106692 921531241 16298610 522609001 400486231 692365345 475154721 836540928 716564639 737496219 262990595 629275296 969759529 978074357 69739333 233484867 572645988 686775733 312054826 858908125 158365250 568570192 668136400 698442649 132309053 918067698 545166617 599116425 467581 461718581 455432890 720101382 685180748 733173856 969986786 971045422 803858754 879657374 210809336 289850016 648559227 842124251 306375931 492006205 935519309 955372346 617177545 736538241 830143553 966941829 11415595 19224903 722959246 888617279 332532879 677387876 301143111 524321989 832285685 847540989 605976298 818618046 233672443 824780159 721897380 848665279 287308405 644217260 717391980 989022355 704416017 871658822 857253904 863170007 119550664 273859924 138040563 156999801 335600469 964480810 535149951 660146903 446346954 533365515 121881057 924677470 258300456 525899014 609300930 972824205 825570165 967456839 920926394 986879346 645229866 739468635 351143776 765927884 121841635 178557735 763442910 983492321 771638363 938074417 596215552 717887902 258502635 650083216 72041051 877333110 400642150 961419047 222981090 365503899 662730721 964081266 616772525 825116224 679003720 990715130 552108491 984585497 672974590 735144759 978296863 996770176 662423293 932779610 659624948 677854679 347627356 751269772 522385894 980786035 155961771 627174345 746214238 963316175 643698962 947113430 524937534 992183540 829423085 962369292 538504089 540586042 929927507 938494610 856469867 864665904 519157442 600954754 352760776 455127628 172125363 885239083 228821052 874719885 631123350 955394800 283450199 292910826 363082709 826470073 226665722 612605936 104542991 422683070 317270070 650043871 822089574 884744584 244339567 821656700 111161392 150106422 712164412 788182846 319710450 604821304 762193633 861653006 560467455 898042375 177885442 399917838 120115701 136564760 956598320 984113281 927365115 984850207 283283103 861306406 138694112 535657172 360276767 951672461 182279949 952988667 875279740 877891612 670587039 929932460 170240680 197335822 482554137 770906068 744432503 954607149 378019892 855944134 891236252 988342508 981226786 985697726 768555083 946895585 31737026 213997518 67907966 268239787 747405263 806699026 116304180 118435161 321538113 656558315 963699909 964760046 362210926 946546921 544411216 629531944 314606219 805381165 5092007 133582908 114072661 920415975 193202605 895769227 443667289 580991173 234942078 875852157 145982086 763567880 406368635 891314445 251470042 704695507 589988702 909120386 103548263 204831224 530877482 556223907 491610811 569263042 735989176 868467094 571837138 875399215 523411254 552517705 620802823 845706342 788041369 816387338 741903975 976708043 758348252 859320326 990331166 997223561 270783890 691786795 513846824 548928801 314748871 710765994 357393105 465322087 803835755 881874701 338479466 936110746 634198944 883406666 819388856 857203294 102518357 673678116 114256500 872661708 875708391 882587378 199116463 508332429 439341061 487963462 427992143 574823327 683079014 805906598 809151123 975419803 266436465 495629827 392232530 801319616 442387246 475081099 609805207 826059828 58729985 474230521 190663740 320985223 708013415 826340905 859256002 874045839 728580992 820338166 761801347 920885377 110890008 206390026 916313496 993605783 600819702 917861157 879776514 918082815 967986309 976764960 826148616 891033803 482228466 840858613 67229042 110858352 758931097 850391256 501165884 535399225 165919552 637457754 438103709 746170789 693251125 938565170 83358678 167805648 443784908 623778048 795610469 960691357 169184248 758042196 788350257 910086096 405606266 588907461 869189726 999662716 506449623 554110988 389520130 926834933 819377494 839767165 401394637 485737852 664651212 864715798 304254315 731978147 783333542 978196068 101673204 537586793 278096730 428409534 417522081 785079330 331324853 595787778 622113366 966779931 591775493 667758350 353232950 405939724 804646235 930393262 461176473 654434813 817902740 981613751 322506081 811404016 612510054 921220201 684181437 703562607 427345494 612795904 211705479 307233128 626638318 829139137 670003736 733869007 132105708 136813406 668969266 904221429 137006317 353918817 784672409 788016045 794811341 861180999 366049668 399899651 841546111 935699514 495348403 590962572 75819019 345874494 984692625 994774393 251989656 415620550 118850792 653285583 272543863 972072101 482957482 822245055 124837190 558700928 493613050 920099692 313507516 870973732 504262271 719764406 294853473 980522520 305486020 715367328 578292670 600674267 815147564 959280619 908089997 990838216 591855209 926355070 38340531 612312426 929005784 973727352 24037519 807246169 184640374 880634652 553949658 635276066 751356326 781538698 160211292 624282020 626034124 930664925 345349446 906545044 977622745 990853100 315660048 833576710 805685227 967275018 745461045 828448085 743457097 858258525 681479763 931831752 606552701 750294250 336404916 675797011 961023773 965840035 745716592 782436745 46247508 859591978 701827469 797262546 576145916 990730018 717982931 859124674 417200671 512806667 517421353 718094535 116452922 925442755 181528990 732905943 548176823 833776725 973770888 995883820 870513630 921387927 320885163 864750625 406254017 892546325 612544240 949829268 693916238 988263651 357235865 964773566 662100300 784556692 954695954 992823224 244298098 258090865 778421373 838004472 457893343 864365784 999098597 999702053 109190629 879516620 694867172 872533109 746530835 865502075 295952710 814170674 760344914 851824541 114361681 192024705 808632300 873272917 228890088 571580294 391830275 693370601 248836239 275864697 522334194 628671351 534638811 653546057 252334003 879636281 601059120 981554493 313450591 341427754 26188244 446403806 108613205 588682850 600031908 730858656 500217543 956332634 689005322 920150695 988449576 992444621 556459245 722054312 416889120 667183186 148418484 759101105 758752003 885796200 517442329 688736043 936772211 963479857 436663460 480197209 581510686 884624184 366468571 926833526 868689755 989882388 787400994 994803715 49250903 455877127 456125638 469490356 176885845 762696342 503244155 894096029 763235469 921942452 529130862 934251143 331584336 349100528 995451348 996363266 676419070 699152473 601911575 835359045 770460033 987302122 545050625 800893438 462898720 855817855 23465850 599416190 968847128 989848654 986157742 997733399 203858035 977504201 187935124 706418622 7832577 547383439 995621018 997430341 792227551 986371305 942450613 982967907 812557228 906949412 366568226 834424209 359199145 895239201 329849321 400727075 166696540 882262894 450395149 586680226 389241319 920767269 731596293 836564907 497692902 958084553 762902610 835666550 394009404 610634894 638316000 665678066 761547474 824912585 546435749 797699666 893533544 960164744 821377423 854517764 251078320 872607329 395162156 814111589 171187247 240548689 807745125 991509826 158255044 880980703 567849394 616359701 331575921 931486980 92248478 907280942 720130256 992207443 498693798 614710261 147067790 281672033 25205715 143825140 233215586 727658220 877892756 991255789 412332390 900903548 458672968 812706697 956712257 989893992 975961180 999211011 105883001 895568284 196889191 631520474 488270013 620057767 507928085 511007123 701131086 719706442 722672269 891843677 570598481 902487331 259945943 385561121 928233679 948978848 394281668 661674209 598113365 932334520 781519376 857580003 17595349 408378853 191225028 548069903 28051096 107465859 495995216 729755739 659582785 708681942 386645909 571461453 654948086 681969322 616660133 658495252 426635792 557006486 862785289 916948059 629617696 997610669 83673825 289414691 622528831 847940526 464823984 683221564 889053054 987070329 365161848 615150802 996665964 997910615 742456737 998031138 135602520 561203676 742822940 862001214 156087657 853588549 96830533 280784778 815638052 846976316 249415462 616885552 657811421 686143124 996832352 999122357 407985136 541574667 731341137 797309129 40570542 517421884 912724723 948208895 729410216 818729254 637744441 879137941 797887560 988174300 399171162 849892052 425641513 929608390 665783471 691879555 213623870 230428611 4561781 525593055 660247704 737728919 974892922 987373755 97484876 476105166 87783787 853643188 895329392 987617810 219303569 674573859 846457933 919362993 381699932 498682616 72995683 523446522 702518596 887163108 524177039 592911533 131767325 665166156 139948030 777266808 281596082 590062642 456205896 764437002 48733157 826673895 212477482 625737821 465369723 951825887 355253836 930698467 466209561 933008058 869906298 910320468 315588513 722812898 62615290 661422732 728951408 808863521 221534972 768596436 560381469 730627588 445500089 548481704 426028234 846492362 295604324 904306820 784526455 964815143 185773121 727902680 446821021 695698547 760008078 937891870 683375716 864677290 42377437 297886995 15864632 384645900 247074983 372761827 983224953 997471717 87578590 543065650 647693896 840329947 871939774 939718608 273336846 826746451 950855673 988640967 472023408 792957092 742528819 765728438 860915940 912034457 306249831 349167506 471938375 615120098 292380626 327523386 624152349 674980905 899767825 957604100 427910193 935710702 794027753 950504286 590994318 939384607 983075399 984592011 339166844 653731527 7362581 892708503 987899232 997340676 815793703 896879381 608017712 733214100 917761058 939547738 375630330 669497051 237466619 970841309 541654095 780473585 864645797 968758226 179594451 737500870 843261622 894153360 608309063 735032307 94431118 964384124 698668268 878157827 956303571 969351581 435874386 900241717 67023003 610055001 274186091 890631025 248760059 877155250 600742046 784064400 637839978 762399918 645469566 769168420 671288354 958596012 916200753 951265130 364210476 775606014 961654717 992654487 130801296 343884268 180818959 897371603 493144062 502099431 480916832 708206476 459010856 771350414 49987726 506913968 518114642 914905149 287191475 662768861 28945294 580370208 996861141 998480694 627458095 794664529 540513924 769726371 12069000 160388768 704179865 841162572 632253519 716490401 130831337 205173273 183386740 505596466 362711065 991965398 887824305 967903255 415832231 700624605 943305988 948625206 176472849 689124967 744914151 752923266 140568817 229281749 290942924 819988907 733207396 985078143 629837113 847522831 306281722 966514191 758833720 832219758 279836440 842547244 233288516 522788761 630895030 862519712 260984731 375768820 258981443 950213559 46927525 842362566 872164399 954703302 201175231 810762283 13348450 196693861 423406206 763207173 38556540 272242075 426304995 427741583 388949571 973580103 952958025 998847491 665409708 974809393 47750863 663623437 194077206 791257237 934334799 992075382 762361080 839451451 564601479 936120849 812670322 833682930 292344558 740819727 362586010 900611144 996520892 996799834 713815088 955971997 571556152 608921590 429508005 779444350 958991816 969661290 567012083 977435211 683700558 847126464 395702273 637139142 315361394 496482020 641336417 930472751 686381574 900479661 16505736 606952535 498895620 907536787 444222941 964011163 402731478 952479036 733441975 993824554 517963273 879698223 669127383 959806982 954953769 974535911 223530245 893649162 492239708 894645129 71458866 413208599 56016840 288085310 198810622 396170653 368692962 386796976 790720384 947720579 769584143 910773880 120358326 705373906 620950191 642870350 518407510 889118377 577172638 606916131 218311893 594780084 991441834 997358149 320959243 697168761 783283795 871343957 497794899 936994483 903356361 926306705 390991977 782616076 860141129 872843547 887336217 975401510 428625545 958300615 341694301 551745419 448770064 510653490 562879622 980676738 840771505 850274913 840839625 956731423 944257674 946486932 619496037 688867283 75758842 869159252 345395408 719377219 889977175 907309793 412020463 679329483 749050827 960784917 298345274 454900538 946071452 973126572 551215863 582068682 732715285 833953156 867474461 954338855 763888047 766350923 460153729 630253156 781181213 787925626 42697769 142392803 311298563 322417589 634935610 947383520 338607329 360063966 791498735 849740017 733852329 958694295 478968428 759795135 479888033 909369241 801318154 883426305 386431715 769475448 215345671 593520558 137490990 330132396 239294007 843743581 717361941 954987993 761315537 824083372 163537535 308354124 791069281 844963197 222493325 702378134 656822762 946147445 363965298 395961790 767870139 894702046 47042411 939861880 72712718 386922295 249510629 790649271 964483243 965599057 585557433 610027631 725257649 916841030 40457044 163545957 918085672 987874333 282293776 542996174 189434932 557736284 132032049 894612363 220064242 332533516 908354732 942028509 228168832 254338178 928947064 935791811 74424882 989757406 207523306 444594352 765234492 843028930 533689143 935738001 272106975 678093455 302443962 349776352 409778551 589366295 394732740 761285748 305215498 945322454 774542174 859630860 222466052 682916216 27858979 328471058 970724795 976018029 660812604 734759363 726368618 766931782 574461383 883020444 771446874 927351520 236728159 888088962 2009456 431930872 365921192 739342265 103304279 373531565 640262819 872494851 249205178 718393424 122510361 444624262 24701782 562645333 275881541 767608660 549996341 923608236 164596565 300278073 312101658 373949119 878083046 905624944 229964107 699881347 473524288 543787174 682180521 919782220 256041194 676178075 837599634 885653539 590069621 703584241 531133165 962876560 53561246 320976549 279751775 829197883 542958351 954783937 274257720 973532856 95289462 868447274 642231535 662201699 100595013 424207850 386089513 548997193 803041338 960512078 144021821 755772824 12468145 515497749 861287799 935869601 786800451 860715024 899525299 936383900 99619167 358653789 951753886 972796915 846901839 998203950 300204235 685724518 105580865 114967693 51027934 904629030 4043289 735478299 121547814 508854634 202212350 632964874 979207516 993683766 213038416 946520594 878487237 954867707 283252004 900521298 657890836 758761683 79992718 635739460 519036466 520965844 447722170 647310678 59473063 299235736 491680512 671719578 922920635 960338039 727223319 970770570 497803527 960318324 678602814 908852474 37034036 149425728 448897300 947143062 625441718 962909404 873894797 980119400 257976057 943682944 999638775 999710466 199109085 218972324 955535470 957817192 898762322 994118731 497025091 754286968 359087319 752071398 740104401 805631717 58704973 592140025 775215594 967837765 553896943 691439066 511793804 878526796 489482900 621729900 678668003 736469463 200870066 597617095 551277325 584640255 235334540 481003237 25686258 404217595 842864551 904143342 162922886 930899259 932709867 997145130 88762336 785944977 213400474 531564648 929974578 940323509 694805642 998756085 660336379 841921105 748848107 939994696 682378729 738045736 618464074 799383924 14774110 304607160 587564239 779145469 319843863 521603938 922982405 955065643 350661942 754364735 625402898 898746520 281373039 732078966 379014254 829718914 425713456 563403547 423282732 686386050 478909704 841378564 241542866 535429226 726719319 830157833 130312718 663947694 137800338 150541577 715996459 881479206 744929185 919971650 289455757 740849667 881824043 940245696 883370511 921952873 831738574 853909737 768757061 856480183 657791027 724630877 895932456 921351257 734678260 788870452 490231453 669263286 759183779 896207962 810858846 842271397 148633821 500125216 540311408 745836498 768846301 947551951 537200114 763676927 293826769 666790714 786330388 796942918 544221343 667062201 294844110 366048709 672309081 689771932 397780158 606120707 176923105 362900946 87545216 587721650 95863646 846372115 487698776 809844074 830543089 953501649 425420041 832688755 468854944 522317754 78326781 703646082 603956302 761046899 553433850 595204217 427127441 754718054 317380606 667714347 568902476 844009011 174599443 353537412 982409839 983077753 770134389 915263993 105632414 893933927 781480303 965087010 807318957 947644986 167067679 692610575 535156776 608354610 297579455 869793180 44078361 579171944 602089207 744705102 344849834 729769538 354392915 386159481 83819468 974574428 220608028 583986059 353565257 611053295 983309633 995818474 866990893 939465635 474229620 837156104 220613040 372101245 900132495 965064369 174913204 321564992 996554444 998822828 709137730 884837200 246764998 855345393 779749080 913184142 298820495 408941957 156276706 854885178 145453453 818919415 976265027 984952193 120754185 629063023 916696632 957152795 880995832 919670964 11818362 37191919 563643281 566645641 935908960 992784471 920307142 944319386 838105441 946778953 538297157 771476086 136770098 717510033 884759971 902630084 56741397 607685905 758335299 840489094 203669581 605403961 273952896 854615885 230971792 647725704 617264834 958253336 32579539 303513703 903963807 992742468 797574721 894570167 311901797 610951020 729191490 780466309 71082257 106516283 747333305 903428229 18978473 922326744 388444645 561344370 622590345 933086855 609823486 670848546 971308319 974376043 711261124 767458979 115593646 144678381 251520044 293496182 46746489 377577900 729171461 815115680 645428771 823253938 453623170 595657400 544592432 685070672 553182121 893864132 778037847 848725345 718984672 794117637 494895904 973709330 743985035 816773582 780620357 827449552 720815481 934705711 854085935 861578482 594010117 746994249 698398781 854856656 352527011 836131623 810715548 961325095 60842584 639831859 90356806 152111621 392779806 581861952 851754498 950376363 51841252 421224046 303695474 724479437 596273085 807534710 258139436 349060062 503503457 838888549 844677709 862814514 683980572 821257021 91777241 707555256 497554946 571420375 958749983 992635102 408789405 870827076 941397945 989056145 524522718 934382065 939788400 999192227 365528181 828848422 114895787 576351231 43736127 919325162 610316382 702682273 594761247 799093952 357671124 661911424 846772176 942712794 418501522 928445456 696513466 943837629 719179933 822707019 337739462 613750800 794397448 990711032 509733281 926587099 591290295 642262439 792392261 801089760 937822192 974410690 145900429 448598807 512914414 531464142 473437216 580000514 383487560 706937851 987581925 990727600 809383879 883759425 484546496 975200100 22268135 703348232 706708959 793094887 21216292 332819832 787636040 833466110 960277949 973906179 656691966 985398124 870377803 963045972 223140714 855634685 381936636 787449712 238768070 428056184 997208176 997225557 327691483 785179927 696076140 846409511 963326585 999418269 896743068 965475821 707568574 855909020 203172425 957530392 389862419 528285589 356848769 903275383 284739840 647887817 789312541 986685567 956295501 966928191 255196632 830122026 945189985 954912528 868855002 945786190 516175857 969929846 520657015 909869436 260702388 933955284 227751206 428271815 257881388 746695720 757593235 863710454 572254902 868128768 648995998 682653362 981048572 993889785 860511187 873829817 558988895 601142100 899131815 910600802 279806679 427228999 701657321 961403080 61251036 703018142 374721029 701985193 900778360 919484512 419118091 628888490 524940908 739255272 899938504 988240017 709109206 757228289 381582943 399103705 840503351 853165555 960642581 998723452 346120763 495560872 387152800 735084363 181263020 652236705 152159865 291264745 236775488 284058454 854502028 949481703 530078487 704429642 343078339 381871483 291976460 486293764 925984714 961474702 201722549 384370232 512445500 982323599 652095462 657409805 712119400 770910053 763997237 947935047 191979178 981731062 322201203 860661617 376336634 596004432 560864313 863990596 822438447 860789791 5935519 522117771 69375422 428126417 583528504 951377961 323104454 570694863 753685021 983570304 925524363 981799527 735200464 942626459 499002930 603783518 289718202 564157151 461867242 572089341 148083553 362475722 283383874 985061699 926340213 999215095 640644551 929986015 413510082 438229891 593611098 753058268 783671267 784952626 966819461 982438232 588773019 807073255 242091510 987848958 993138485 994727755 989753934 999327157 426210131 910292412 649662475 921457369 221512104 782612574 332163654 343755205 744706310 947156818 575224064 849894394 580105842 836388279 860932723 907457225 677700038 871193303 470636892 570626021 729687489 900787508 456984586 642729322 515778863 780264879 937520463 952992055 144680808 996733980 879271510 914760890 390457840 438486553 747524373 849178275 576533982 727879872 21053474 886059264 634773814 880876535 341419494 784159468 244274745 602577433 103969219 882306035 294731402 897034325 144413678 939001566 5694215 184982462 122337756 994605533 422447288 484092532 917612343 998226547 749654582 993727501 221324657 277653641 6771481 914575715 90035922 974866632 696455101 906143012 70300293 717454108 767778508 803530157 323267863 593822548 989144335 997733882 425395839 794305438 637416189 650421516 297090391 840672521 438280072 740528003 700575089 908258050 966572501 981039188 507608610 638359661 137285343 420234666 208189434 267334034 369926376 919967276 88235023 243463692 960360458 992342588 762742977 886639657 229339461 598276831 762637281 845078918 154415358 324841503 227297908 452656080 100066924 487825534 651769601 704214913 45811975 165014559 117392769 684348418 143926666 526493105 862909454 992139220 720162851 759363046 780808324 983138003 529340850 750719712 702700525 805092040 226721399 319394986 27499085 37910525 441389074 977234850 447269063 744422629 143794429 982718448 860988161 909876878 618651958 943335932 774869823 878943007 619030752 958135785 607519329 633328137 968343680 976149686 579043528 954186122 844105501 860784659 691313585 983166985 781556134 947226225 240972002 560872400 897416467 939529482 377840925 837505415 930276197 976998984 368616761 420418569 214973240 700133638 94138665 817345689 395715179 480347481 673914218 915862899 32418447 369945743 432420386 831258170 490918077 549789826 881226302 906633975 10496414 945495637 206588289 841086926 405394508 515646991 286857956 467978008 775841511 808597175 805506479 946662963 257259097 877790250 107749473 192797577 375567900 400081248 424589269 952134491 482565027 541046185 596716980 869297139 18129480 342338562 542202027 923393879 556548245 771844427 846094517 960753731 505760404 935072369 422153873 422933306 628776582 879022684 249491972 515401547 383347840 784639149 860842918 967591745 71435296 398691037 278606550 463980076 174976744 775117106 352327792 656887836 846531405 967660873 85342717 198544791 62396503 214346659 313583600 914787146 119222835 462771130 43886572 343374344 489538171 776201574 143452634 897957728 881891415 993504212 574128092 789495980 662319536 673101024 217772378 756772577 382012687 549974677 881583787 932930395 165311897 449901135 319353030 824642355 534476410 925242691 730239385 955105579 782582972 973466691 741889624 934514755 324487648 647698042 795481930 886334335 911501233 912446729 268418712 329635798 540902534 764532462 954051729 957369160 337607837 691723939 642881740 787576504 502949166 876982850 36281042 638348215 679011238 951079495 940395164 986561529 469971482 888743398 163969542 514546367 237140247 669232943 347257827 846829091 570055960 742015940 35226914 884949018 48772836 370901909 355148221 993540376 376516530 871094421 168019115 794704416 98412301 396727481 36460768 419239441 882367798 908043330 201880014 760774674 243566547 644551892 356746781 763233552 495028062 834808113 959138786 969918113 820892130 947590674 789167524 964869745 521266338 687041792 346548979 827936437 451195646 884130911 184895769 678414548 667251890 951793784 617156029 882679880 328049022 334627415 763332059 909949239 305202867 715548410 646679178 798459711 605268814 842678261 526460468 744686276 907562591 947903226 772688033 969715976 324676089 944997065 389104833 872314818 332694169 724822797 746606833 802221187 530603409 979784785 120148492 412943753 700708786 805754716 676899960 911533766 922621087 928227566 597155905 860791935 771858472 800186834 251413832 506445266 480412146 942511891 708608808 955113014 800728220 914238389 5148401 798291682 758260529 870686000 586851288 754940016 991685181 994005489 22053188 745882202 204595607 864896245 891476975 923941388 698754307 988990067 231754693 297651188 80475733 725698412 12949606 408562957 611269092 926713645 716321180 946401893 43465567 538341253 314552581 408379666 305612586 557244071 775665437 909565079 946911453 970450667 903440445 991530672 48767400 59848839 493906593 654617904 816007219 965585438 539844054 986510661 467633209 852682958 938940075 979141521 676812170 745761016 32282868 314496985 284141439 684310245 177893615 981471483 1364452 324608495 231260910 526522566 355284585 457873413 942865322 971484540 591222253 626552014 674534090 797586162 330063003 778585346 501913364 718992357 997234308 998161823 656523774 784994309 158501270 167789134 810603790 935520878 929938246 976949351 78499360 705655385 470878988 816165750 343772472 533906507 758709049 790274380 689102823 791048915 156489952 501684099 94156494 831755284 655628054 992817250 37662443 314616593 691160988 907907528 863253549 946805963 422686993 996039947 799582780 899554930 252868561 870283455 753333869 757682615 333462367 432879971 809143232 867276570 822557879 854812610 837302283 995984464 408405346 655651982 755473343 964579540 795493019 832282783 67589470 777017048 81624611 136737164 510538411 772421550 15742621 490474945 638010321 917436373 958847386 982324032 480951172 723443378 313929477 572354261 494464332 900108930 630998059 766535887 292671451 443447202 317515863 849802872 808277864 883317587 440954613 593650658 92439376 217887685 606167333 967541116 729669932 843928773 938586307 998988844 580452440 955757647 807065147 935558669 179927457 899834241 108660659 836979181 892870582 965626581 188448165 659507755 563184991 983915540 846607991 894790964 73388516 620179244 910015551 956455149 787227240 929328260 638278330 931646125 365262292 499113891 67366846 312346253 522657878 889057289 397480938 744601042 857636222 859045309 760429666 903468062 473555691 748322969 655172873 657844893 27522859 927397207 39822757 668737306 685446936 697760450 21507612 650150614 729761992 979433786 162419012 815506046 83977086 241365973 356080924 784816447 62985044 434156432 776919437 887936182 514417075 786787892 203531671 535509214 215117748 225642614 275561149 900613298 730532022 858484484 511566244 829730014 404564341 824979999 424389507 987508424 721323481 908239850 788962162 916402786 242397636 308291741 433054783 476498067 330103565 452894340 911181016 964293838 746420944 823444989 553665500 574008189 724302426 919275993 435620021 599116736 445232090 765121166 902760576 915357774 681308945 819516205 743624271 926547425 467145421 996159156 218980473 881137270 923145534 982674146 88510154 207608743 387703220 396989286 586517060 640320709 566452375 794227756 601736750 996809286 744007105 949351175 715335384 804716177 444080116 514587377 984088961 986665321 540773793 761259564 464999085 876361316 994072355 999120399 505426420 531631737 277509972 979141736 592643692 896700230 291334064 883951038 103382583 766429628 522282665 613652506 415879455 903644120 181145575 535102286 922286063 938529632 331043420 343531180 265801658 865627976 176260056 513574605 652849252 992308563 65990883 864002151 818243570 851290236 991489031 991523957 757481548 954264688 546124678 787138392 570409874 654407438 718808234 801697363 74807588 987008451 168565606 252720062 851558087 990265267 1254536 413399039 239101991 779209819 874208753 905520582 567107640 578221975 9097445 76312134 408348738 604768712 854608277 964651987 79354230 974653214 995959513 998660299 619317531 756955470 693717059 925968474 177709373 428871002 17876245 80366989 976368009 976512740 710047352 959902467 511557632 759610840 465139851 527739258 677511709 844301281 62451886 973379590 69458739 348120219 43735471 518701018 804081057 880817674 819923134 967338126 219604297 653856962 195196367 727311316 676609612 829020534 217313812 906403071 92853162 929935518 66569497 125991884 128889515 305371809 837458085 941917599 614874451 857196855 139274469 605186844 952830819 979858445 115287279 430517173 669279872 911296684 750785184 903364542 156694470 177615962 71824161 176099417 545902735 892962218 882552643 914759809 418175593 910604770 767206627 770721099 507280155 756960072 107614217 414118924 437998160 505919550 902032694 950128324 546388094 583580190 37536099 109950472 520053874 708584938 146928861 706138613 193260571 318088245 894189685 937152648 542077173 903463223 687343140 928745713 80312753 540950287 181649642 501367284 226895762 245882841 175467189 224839915 334735655 609339139 858586473 967516373 76339103 616880058 467173322 869690869 213234049 579694372 25336628 592377770 195103831 879958676 726585502 753803083 807327576 897053901 523648267 628166534 259376319 755779625 882311678 947705882 311803359 964918374 495869293 748771924 988610022 990092100 741314370 790487391 875416651 894662888 708646782 912398269 351477355 441108505 973490442 992299295 828678180 907334488 639544064 669961054 176940585 928912091 952118522 954050307 329430903 597004044 838063805 926871555 411413709 431749499 47332405 141140066 15296977 207151920 129387081 216733594 865889456 922545085 427653999 933561925 756308119 841810630 334586227 569913592 574338419 632772022 286835234 389855587 851723689 923824023 306590846 414001780 738060301 884961382 663042507 834482190 254849758 569586006 265584573 676618495 165001084 578510276 819529990 997273118 135639844 487261520 204627917 679674435 370607311 820215278 291947845 688487511 988200874 993127024 196638232 491133528 401782511 846965768 826413028 856308235 925864452 979408786 994447937 998655614 736388961 973000846 993299670 998044337 607240902 953709352 172535210 435134416 439018666 702589025 602712368 637934890 790902133 959420878 324601391 390144913 129648825 987782210 369047277 647237696 411248259 627830698 838707553 986828304 984325647 984385297 263152932 866382048 731222556 799713095 841716473 893962308 69612765 577411682 823638033 883194628 310399653 364262929 575489279 820978140 504702337 681903997 490454841 957012529 909074929 914379874 919242113 924849271 299870950 408069487 306410600 388814495 8572387 940636753 525913047 571688089 564723299 978717218 579532882 611819568 847259440 886575297 31769185 707854017 415600377 962755095 429038682 928587871 880156371 909665741 128558054 535808206 235026246 876692930 746113212 809145368 21908179 913385225 319331663 725893045 116378259 590473092 98322308 273443740 161673688 956105178 122398709 366887498 167813109 653092219 945563000 986000407 819082696 843290282 365748790 815691994 544223033 692365085 297644247 472724517 914883684 955184832 95566753 669054224 124734287 243476197 929294693 956659980 82588960 90037191 24464271 352651527 275527142 339020218 480239799 487608357 493053342 772417252 184437254 724915217 406680357 886854936 655981398 817087319 903868028 918078911 231542065 731617894 863839912 876281941 245914400 360705064 656719125 999125585 723415325 984705827 712075032 899444990 895465994 898177513 387532886 418564770 364926905 882810615 300975069 375853933 736541933 951224256 718347238 822648629 253629878 889707016 163691662 896870468 413699981 910046190 609598921 810587292 304837365 681908596 171205310 332014617 470040771 931347800 326610723 474716971 139568432 925745211 638479119 823669406 431071218 870266271 459051153 484697419 899112914 954147373 299000998 543550320 110119635 686376639 272845985 613940226 800341210 901018719 465288791 814408991 593929610 773591331 273228747 908013948 216961101 996387085 644596203 991559642 399354555 826673377 363016919 663466289 394363898 497460511 542229656 582850529 396138255 793783028 382453968 836531724 541890457 573926254 627417940 646348915 68498494 588692884 52238458 400431195 522333755 555737041 866035768 869316199 535612623 579977932 376076824 826072544 525406677 979069758 404875992 730091027 881886278 953119710 630187967 924290955 855949237 884966876 720265643 971559821 34153173 965255360 441890999 519256740 844840507 879760204 500219650 705363370 861097080 980994076 486934198 712753189 562845270 691682087 772102839 811693497 534389570 964521456 831523458 850135786 615400297 887325978 860487044 923507489 495089864 999187796 257279274 338620429 554034908 711453478 196641849 856682009 635837534 954184949 756613108 853952047 299871838 458269425 960889999 979675750 819801406 873905572 370023872 678593878 133589111 710040720 461488124 638521030 268060638 854813744 913848175 940887107 178284966 841546259 847593460 848191666 498319549 740901989 278077099 777209473 457341624 606320679 109216163 479707243 682891049 745018262 655902241 685263749 698529899 939923364 902687041 985222287 404977875 712954950 213283532 499399281 901254008 929563349 856864985 880555387 697437701 724346215 801004373 995946969 292664736 370788021 477347420 903722591 199620099 770507639 857025588 859808544 892283987 968259674 520304490 525502705 933051475 987862394 299964567 427736703 181937383 310892809 601729342 764484411 247407339 472904349 339812687 831425889 518452488 927920756 841607305 966314475 591738828 677737267 942728105 944784834 628791313 895857957 974046519 980884081 345690423 919400057 569763259 716065205 555003241 859368399 970685914 994987933 464598212 744334124 991045299 993449659 907455993 954721815 69483313 909170686 66902071 697683573 313998604 650338974 425807517 621760644 88778692 505713832 936001592 968082075 232392244 549318800 665071859 992683812 542601371 931400928 408624049 485398107 376599240 935305708 672432631 912864391 9574499 848648135 325784218 406112342 154414311 368491865 733068015 831516690 688548971 913847355 599872211 859884567 56611883 923642463 495022141 498201728 184483737 227063169 233728730 782220497 475722449 695920186 647402498 881109887 788235617 913307074 381698170 882436045 427230320 842577139 23172357 655913018 706556618 786643652 400043748 720428185 511503256 928128036 514372776 806620609 140133886 552431145 901823830 983593146 739351711 739358133 245852474 488956040 683291735 962662027 876944819 906782781 822603240 895240645 119075483 413672943 64082509 216090037 522056694 588362001 622197323 850634942 481079939 652155015 519773420 972489857 580489922 985640745 12817619 303452239 954250447 955717153 471620815 984296444 996824429 998822512 200090511 268173570 126290120 340811724 822944047 988471236 946747779 953603610 7602202 350595532 864959332 914681002 485778340 850405741 427388616 477955052 450548723 684823790 187071547 515739577 264585876 577786288 813145669 933791529 388142739 712779789 562230267 695985932 922317416 972444673 338217064 751467125 69723247 911441483 607404362 640880260 585004221 689736741 912648363 927661321 270061727 295221229 391143635 979204595 68752193 967233037 743787104 946416237 886708987 979258524 193801893 705582106 624794204 856085873 137073723 312838935 114020409 913550364 428687471 639672595 270673905 305149285 116636538 739456088 617364445 984269078 936400598 976109476 402097367 684083030 751585793 812861228 245637927 420058877 639637851 654382574 118867494 525937706 839571480 941347003 270213361 997862084 374450538 391987550 962313183 989792465 41465959 376151006 299738901 911716218 646520665 925438641 402227877 937222332 54460749 652971186 541717168 966248276 465406248 485478869 830497476 969177744 439514822 992747340 894226736 918516938 391445346 650969655 896796773 927922515 803343440 885182160 476870427 934020480 661009618 805438510 345466191 695833095 27010277 801062848 424309299 803386298 135813850 419771271 640404749 939941170 149574781 468374422 697809493 913578962 367765092 992098904 469385110 812965713 343721970 949862596 975181585 978286694 628444984 949853390 558182860 907944358 927110203 961435041 796793434 974734596 167942973 639578873 899154770 993092173 620229191 991720611 925814771 945392584 289451393 320995908 547909088 660092234 372168451 617395029 815592855 945463472 272236018 931013989 855797041 881984023 649183868 781660345 910418988 943216775 392441422 802082591 587857341 607267396 446938852 678502313 967442373 987937494 530370490 916373926 148014573 989398868 627327754 816581288 458636755 909030723 971849850 993404958 183380312 932151300 194334455 237508313 292205139 404551950 371886658 665046086 89943625 312670300 19252321 278275201 977538519 995138555 73591548 798775070 928243324 960412125 992120012 997708566 665962543 935624411 836552521 842897578 326230057 828788623 797257215 943568740 819537764 856661535 261725505 732422260 686115396 787304923 628510130 883946769 627636397 635108770 630545449 870800148 515248603 755591501 659901220 735589847 407218563 911586394 992128711 996227195 12612679 148566527 69187573 140866308 716661007 905045331 276999994 527771315 626856802 943423130 255146952 734743281 876756976 900057105 900784868 939033348 669879559 686596219 331156837 590377913 459524316 825259453 56976267 553628921 621786482 905871198 288856801 494546852 664910211 981113109 623362419 716180502 29426824 822529862 652007798 718617204 425104676 985151749 318405265 641508154 551383825 553669342 175889318 595347570 961828304 996378140 288180304 789869979 118665842 991706976 677315452 693562136 389457331 993853157 717804382 918981151 899549480 926856456 915874181 919750607 653602331 756158016 831556478 850178795 352659198 753678033 418390782 589285191 76640306 781602107 405727009 688313882 541581756 627745824 440143464 538216140 926208025 947015399 688227084 719156612 273119571 396585352 852184007 991123607 76412191 554186701 990864610 994856839 955571730 981244616 334780964 774493422 334863525 554473377 577152737 911331881 507618266 952877813 289284423 340625605 128187382 395124565 382863462 817657188 886231925 946392829 716104847 801950705 542976051 895620006 968222563 981660218 885993318 960809511 783040121 915444756 943009454 986321186 66271159 331026513 992925141 999665478 617487849 786323351 529660610 626159756 567493460 854599345 363535341 983484467 433928335 941606947 894589604 922332648 850831891 909874287 86027852 918702682 418929689 745518059 827654814 946909943 229117833 360632436 893434728 981177929 414767596 893793829 598713901 603428278 734620413 955772833 476864672 548540186 383620937 676818043 574826513 793054900 541223279 939905854 544249716 837191531 509523975 631470972 274283013 900223365 12755820 822373665 176870908 509769873 517286545 811208083 418001570 557315256 74036085 664055253 769164573 917690378 437113129 611166055 833364084 940908809 782264512 884570744 97941857 503288938 462636325 688426493 988528181 999420651 991236953 999231605 297942096 655746252 780603785 998756803 934374263 999808880 563955898 779883478 321724476 710693147 389567076 561111050 370907866 464595424 487096268 850358254 311409379 371971902 27671772 150061430 247689774 864067748 785007750 966298376 973136518 987854533 837538512 861604717 326582716 337053220 809301601 889434514 746060724 879044940 147345371 193961544 399640679 968699118 120743440 383286496 993541865 998132621 984240966 996177890 381475507 709921621 29010624 835195706 228028142 651761912 485779790 936657359 110343249 914964734 29828623 509075388 182473290 632225757 211214842 865878857 18781387 335873351 770512076 973928954 686488761 827674179 437093038 443175929 239349358 665501209 999504903 999880824 570709624 929074908 908566923 945928129 579780218 621772552 722090482 885988973 524662663 831173570 861590670 899682798 467899836 696568181 79741954 934001134 85067074 124783748 863263253 964632515 668663056 902897957 209772825 467861672 752592508 975093821 971724607 976688267 539314196 867491038 918905042 992761494 270040856 797491010 255587639 935542391 486415741 799600521 16471963 422856625 685319187 898442581 643079056 967119907 686069900 920014587 523825312 884501353 302248114 548770919 192157739 323005573 729946332 964821341 758993062 781388076 781592288 924679005 575826824 856565949 497238728 893071605 115170243 178411217 416072421 421198903 216023661 665729836 358033793 415043566 825227711 884669826 39134902 481907895 186170237 219062329 945475089 988934120 347471723 721525298 560124889 982905541 797677843 828727245 837130445 908753991 963493078 971219202 127804336 140425931 570198829 579108825 578747829 887490248 729065015 855712000 221549413 799444680 859902651 978974329 618658799 717772905 585304027 943326878 869062693 884779112 897771868 960232613 514383166 881289479 613722895 894912972 111050526 806727985 155369363 202398234 146031856 632483276 322212643 949347499 37266015 399317335 390073200 544243296 566374744 578882924 300238494 640645554 660009193 945807607 604310009 808356930 763665943 870115770 51467272 715294801 862059051 995440467 261351614 973216638 788730817 905292428 832873791 981408925 646185072 647183612 52341304 682651457 513704931 933377433 991654751 995626552 153663267 428199487 118470569 214087092 58868835 477658224 691349262 892412297 727685455 746166432 852527634 899591423 292175215 829498295 270483677 413116235 345869304 805187301 655788551 785477920 823865148 889777847 439327830 912631435 212369652 453423891 700994491 758359267 548761849 800243230 898358042 911354255 877477483 978123265 837998572 995130219 189646075 802502123 634692506 900921649 958066765 958946295 520014014 806939828 764988756 850989915 589517083 965649837 914341857 916770225 858377056 949295070 759318913 941632808 855311795 912389761 317345171 379424276 39534698 679828399 776180185 856008153 903495248 990382584 238926881 788615497 999495238 999850245 591437496 690693837 975168676 983765889 542421788 549176971 122369597 743404100 686755723 731178068 193149996 467589308 7971256 99356321 748080302 857079892 532874830 656539901 848191766 932701753 707275355 835677891 715681806 843424984 347542829 516312326 684116435 994795866 108614064 759054027 980627005 997283405 482213097 550968068 510000822 918865653 760981594 918546486 714408686 817700325 714002662 908060353 712389706 728083786 577857051 728683646 483918327 832665199 805278871 815275628 202096984 507758716 660166747 847705611 9568746 48461203 134279551 676129127 459907417 580178863 437634244 843806510 639595212 846852829 715274546 721161666 625039883 706642928 531794081 643175658 301499100 980377153 445832135 533559221 243761967 910796457 116797644 736966994 431462333 860206686 783870439 976717451 915024668 932693754 174666494 955007024 483908958 690592263 164719430 891452919 544261102 991729641 994388496 999632443 876418630 895390128 142198900 373894813 757858912 768109028 80432137 687917099 367204425 717515600 344299228 699822324 850044979 888229616 624757380 812496326 604294778 860985746 1360171 396795932 672493770 797056175 469424812 523300856 717537536 902135062 907207120 958127488 69797395 380607591 167918550 614214808 701113501 898456336 969548640 976087259 538231294 595708622 754968501 829928557 14966561 316971753 177079015 993634113 242737229 722724582 69914796 387933895 674207217 832798340 976760775 979144589 999159228 999236320 478503074 896817524 154778982 487583609 611487295 879741766 642807202 986655601 614515971 849697820 379308700 431218583 977617345 998836479 149254693 310085545 69523130 961507927 531999116 551909654 827002909 902857132 866794120 916941341 545876304 829538739 954021190 991505280 709456864 723389829 132165310 186289052 257029394 317030638 553654129 624626551 620648267 748662409 972944514 992907455 224800563 940649684 915395519 965482967 525920869 770036528 492343693 970010535 639728694 769711182 606025196 666857489 239897478 284720434 903563287 928081259 426478390 929157427 310253089 628178927 123437709 802421297 866604973 945973341 340683274 792503663 275924816 886208608 748981472 784444973 593058873 607461890 519137028 814796603 504012830 583573987 160870748 638590190 164594923 453282303 685515974 691207448 616045985 635205152 116263060 195347316 655715737 758789545 948433860 995821189 393285512 849359801 815077732 980122951 844116652 908244971 457242706 679274603 641660815 710185731 135106063 403536382 404649899 745837942 119207881 793603296 686640743 980585229 707568980 965590775 610604355 989976461 121982676 771102494 578608146 766092226 846986321 976352488 684579313 956218991 594588891 873102478 596871469 820662402 72622435 587199346 868558862 875627789 885809140 981968816 431451404 524445089 857130621 941855487 646505226 999799396 474003607 513071283 167231471 720670948 501026684 818432114 238963929 945314290 871080383 946953993 782108511 805079129 634812255 669231430 151273973 988634227 172689912 950245231 925713575 998822061 289904884 529414086 470428414 771942614 935779012 980920056 264223848 541842690 739667965 943268907 274712375 569796985 801432484 963118212 310859871 745857804 399131090 437712101 629565228 885965307 749802073 918098739 36009841 517483187 106497880 894377065 620759991 960935096 808225899 817202238 232496484 342519694 960119796 994754308 667970821 993663086 525300614 944722584 246328526 559028364 655603665 697135673 398340194 729334497 511666755 865676678 263702378 750468603 491192107 836907495 451033336 688821327 102499937 938569893 323406885 472660147 568606692 638808055 134211520 340148802 887941180 944189734 689022714 846194786 483707100 496833449 939713185 983940413 751388443 807879700 51511074 323405435 853054965 967094660 455406219 867278107 913543098 963992206 397949012 441966135 279653779 631881838 410248896 932942718 227561045 297979054 946432337 960707005 530800784 771995986 308749 153319126 86393682 553723822 646392509 819046522 548946742 860000597 243893837 823913376 345693875 824483947 577077875 939572948 566984538 932645749 272205751 286557189 27657194 157289525 939596788 968300714 944124898 967474451 271871438 915498440 865294288 965362961 467691174 948166882 89398243 459633185 699771797 845773737 294525919 438260808 367259350 727599518 330823490 941771392 853832587 880475502 25809726 823398561 535384788 920038120 695736352 731623331 254812632 480670108 768453881 835950181 591479557 849860428 116833309 491087185 402770881 801702910 14731568 191613388 851074247 867066901 734704836 784691102 839145103 862224126 986234964 993398573 142516100 795168851 498296418 964062316 310275566 851905118 214392067 804402124 136959546 605299555 895194250 909801691 705908475 967876383 367015028 798683672 836730495 896503721 543039281 865759596 520717019 606845050 379601590 817119541 637225917 884575486 377673328 705834098 949970324 958557688 156418391 473615737 510031498 965440452 961450971 986985249 818705510 948288642 627100677 661689976 987979279 994415289 407925295 577379193 490767096 594236261 956347987 973784329 430007496 595461097 131482609 182460236 488542414 782540495 204459941 954586269 89785586 853823534 474158421 859039387 741537797 752714207 881966828 962292888 682856713 715105072 548682605 700246286 19786443 819546692 972852229 983466939 195146508 297727313 439001813 608954739 392410197 556940242 757824003 839800730 184071769 880571542 300421137 977689306 459026952 791263560 913594142 962530417 65726487 454843617 930915694 972020148 946522066 989640471 591277769 684420427 67323629 945877907 29976274 593945874 289462089 359364200 745201700 884531475 855139051 944491471 777051350 926065561 79587849 237848832 326827816 969484603 109916372 474809694 829178918 981477424 124939875 410358401 143594283 961969379 950697256 958378821 252116945 739315249 381960630 929435618 486334128 933828253 108290568 679309034 98577712 516749273 578405045 932619896 778516424 844384520 146670039 341045926 40905316 580733789 141219572 732761990 687964173 799232535 775153872 810864460 912987877 975592512 140012413 676459176 67848211 335471952 848346242 977350956 417889285 828645001 278088756 795792226 102007143 904451187 591116626 715048101 535402576 875155439 635350803 999485153 109725837 501539070 917860814 970806205 596999898 772962176 255364279 933070328 342369421 531214226 336463084 906221460 87806003 238675629 716169249 815831195 198261251 408220617 159692558 792485117 441949633 917405384 925001779 942892934 570876978 703833952 791929011 905358571 184911715 703114070 566896577 623781478 120831726 298297133 190310950 761165912 239940801 772904462 491299214 989617107 544649784 571776575 489212960 702329620 356729169 663073300 143383505 397653616 762734248 815581489 82165524 729208355 695091593 965763263 941648730 996857012 323867930 426282549 547087706 979999049 323118095 510913168 989724546 999778363 174957801 302274463 912645901 999073225 700462707 801315209 409477703 777375007 770794552 994937659 642779790 710070994 779086801 912307875 731269867 990806148 103015543 550522085 896924042 953640109 344390554 736328907 238994826 274516076 541428576 910783337 441901702 818505726 778779759 907930374 238144802 707368590 284371773 444252784 590886377 902307749 887355744 933748752 910767945 946777618 127352350 516637271 573387406 961757911 82691750 136828828 975930174 980756114 674912464 712467976 277449246 921476540 252838220 692691476 640067375 977469097 89316844 759494363 25789055 212590723 779357891 804944097 806531041 905837620 949000797 989523781 660320768 810738288 651601765 766460693 927293423 949019233 659535811 841257297 680864775 979785083 69195528 639245075 43426042 174455309 542268901 943303527 227172679 230034517 932189979 982306724 945129941 961600713 594005011 843416864 128920785 566684560 851757559 882331152 997767657 997922536 9225139 268915197 95823436 896976448 737483863 886756057 590747187 878686409 510287911 815677463 7467291 339403880 222399370 610949319 721854254 941826786 572669367 766120608 999259172 999590212 682808933 756036677 492505598 586971697 765895703 793731817 712133499 951934490 17313428 742174308 478323879 792816293 428424641 731615600 599731547 972981795 110501908 745018989 391098230 866730687 774627430 959014990 337243529 391376934 376655270 775992704 162569267 482947554 96322137 666974819 639275264 639399693 545329897 745807250 451983548 803348104 828290053 997366471 633417599 925402878 281532079 619135460 56033334 921871409 590093097 877263504 909808007 950862657 634084911 854831374 175220041 358086044 438867440 568269597 748166364 912293944 249543186 565888369 762282660 818407780 15418113 835834746 275244601 460415284 765809306 767471560 385929453 773082538 443758601 536723314 987344567 997234877 163057783 777647384 109619526 843291766 657465917 673545284 990353657 996668438 520569365 715212548 220828940 308227819 220971333 730754662 6020926 420774576 798065578 884553710 871209303 947359908 755817068 937125693 89212228 225176326 442517646 658733328 632247770 794269427 684564098 807699204 362267180 964981149 34468476 831132516 91753815 612574007 128631767 310818733 409138694 460176946 748556807 956134279 547358947 841276374 385968260 684865554 989564845 999956549 960862324 979928538 619378527 724314089 631803230 903236132 576766317 844553080 945407211 951884028 563135122 759920231 801420666 900530706 651100741 672180033 6775233 57934035 692779136 700216933 651022484 836227532 772261131 836363463 818371151 991606355 369070734 980743305 940843597 983514662 795324823 940552887 75471870 695375782 143837170 760334905 551817250 981774584 401549323 652502704 202887327 218036218 503676518 641607917 187216410 604948935 943013970 951665804 945318484 948165845 5360617 130865709 353613453 725108779 266740766 478737995 852623883 976929778 497328445 607779130 588520678 853410472 496190102 969537990 969847116 996611166 362866937 862266007 309124387 355530111 188521332 290591251 990496457 994504022 95687152 315802341 419233279 481188135 527969872 762393927 464490272 590666299 127477445 181450059 284489243 290090443 846134789 914638568 724498472 843632849 41973445 343597739 454342449 893022462 347865497 643432961 907009644 917455921 75260976 102106434 220119569 690029638 63542854 914096430 729629818 764697589 995603464 998627621 814554600 914424269 516051989 736011657 378464831 544635019 12947373 961855370 690127089 713357210 670068315 912268903 192080678 451116521 684402887 772606234 245216272 421031411 4087446 737876384 400736248 921229834 763484216 996050733 234609857 902404164 230568014 553636746 777313716 944503538 55073204 922217120 262711197 608131375 494800505 838234063 486854993 872685864 644044308 814304314 386341518 870977212 259741978 866782068 887816701 940580820 931119227 945406869 195977242 362751113 15546840 157709211 235904374 465682273 654571631 941279433 41090910 579448448 775750055 999010391 917558878 982184770 723080396 807112264 876061214 973665941 402756127 760149029 546403391 776084480 160898917 443191328 468451595 836788961 462103893 864526991 235437971 427783729 935970986 949585707 567839298 759797164 376387783 689928767 157627253 830077355 128124670 169337399 559913370 749305101 280822799 908377600 573135924 883251857 161565172 449257628 164143839 405404816 716746354 973985745 527947236 589044034 505069513 802015204 290969680 690342004 980431718 992004510 214003819 737662278 19861188 654386376 747482685 824589985 644469581 769892567 586608298 663409363 567883407 906456340 865064916 902342994 562124309 991998890 98465315 804062546 792295886 930544795 5635939 432521105 547555171 991465339 57690966 848895439 262568108 735408879 324323528 975446455 104039381 956583545 599630340 946954936 566610391 581792843 632474299 778657875 758923533 780980325 737071199 902419741 126117947 630390497 933540409 939273763 802599656 987780862 766225276 967869867 599661457 863013386 765024982 894471205 734572949 909047485 299575038 656787606 377098447 728078773 589953959 734434423 558043673 626584545 115456762 712971365 834114676 971702973 513950057 706223990 19312427 642021090 705186467 896916123 113832313 755717934 221720693 404219306 927901526 956754329 395099569 864224771 543100691 941244470 907395876 934699322 441690116 831851325 300805404 689449014 869526419 970615006 954591503 971225395 243339463 540557168 160017412 284134797 835482494 841964772 155915304 999163781 361509709 427554851 643257595 844782776 190185078 363633223 663359603 839647956 855732271 994183323 582716804 999105203 153294137 685469376 913031758 982454592 580447664 601948822 679072237 972954622 443876748 768630429 710365221 984012995 337463593 337870694 510251511 938976101 159875243 793050832 435937648 814861892 797818920 821898384 855184924 943249767 346073686 964645574 109237344 857809657 215684226 506761241 964291214 998975610 95887972 880743650 670589436 913268138 238567883 288767406 2601800 429727187 590292938 841942515 183086742 671029576 951084706 994034449 580027610 584426544 292825085 602636270 666947329 754129923 297241600 530663409 567228702 673437933 529185782 986144893 432184139 497020164 482799273 705033132 857913131 864395017 607995431 761162316 423120614 777332688 104760567 532666609 516104737 663834361 219193929 484188716 755109765 870524271 618877415 775873562 299666010 473664727 894103127 928080797 258346316 377472645 505832699 755820670 67668987 326266855 504628861 940885324 919863715 979126356 394885194 780965587 173978683 256267619 656436574 693670799 486382992 516104756 13192555 581096481 219594353 944855116 738292835 886437622 44661787 892711458 880671049 924098891 604645557 722966266 435782521 504370210 293603224 878675640 721006538 935702402 567964097 927761596 930973077 996023381 811313630 924609836 158511190 463147423 332652151 448649859 783204428 953288962 446191845 666870790 387582083 964755578 512039808 564550088 96127248 880490310 939234784 992545792 843730315 850871839 63013123 350261004 567483367 982598266 649073 721409455 241344158 585763828 372737805 813911333 490848441 854398285 687375987 759540553 999085532 999962853 108445470 559358004 323592914 648643505 111848170 697097363 25627316 885233538 550060373 895731544 729159507 731622289 244037590 292169369 542760234 563494141 224485843 893271726 182115239 340083410 665662033 932263593 113350171 715505587 720779831 735576444 837680296 885359801 99740534 559843856 216868916 338388643 89533457 570486331 617032017 712558693 457188824 496710546 908055362 980142620 901007930 918754799 823407170 962377260 458167335 635141907 102226411 554854341 805447619 895351952 529047220 724955715 752007777 827308060 424427675 473361195 985428693 999194205 281028880 682770735 999160113 999729499 871556408 930865094 973376341 993591919 321100161 892656164 554404429 986295930 943236421 972014683 519606264 984332939 625843949 946737875 314473790 645773376 274376286 887074974 476882710 756614728 735724779 972867979 215083387 360586117 309690672 614830178 278359772 344085041 177407700 202902423 385337892 832651555 420527128 695440982 395063273 810325590 797894121 923752824 688305109 888490946 52958993 754455075 133043313 389170967 103588778 753098019 615192549 998606545 664780282 665870475 225737443 523563521 927931441 944753787 302689847 409482291 639860541 984353291 499126338 727810226 766763541 851998372 589168256 886090209 335131081 571388408 336574562 882763611 920772840 945948353 449840870 485030527 173893065 846266117 830039773 892952165 903114750 975176938 172950702 221877994 87971796 845105697 612608674 975532816 296723084 684712791 76252536 619827948 663490366 995503940 215200683 466087604 996401462 997637124 16926914 464790605 625517875 981671706 628950012 725678741 583734725 955239208 755322446 794733071 223531703 491168515 706942987 859518271 273419857 924084354 364671198 367635240 483891815 923065546 513640041 973196307 563693706 906036570 626031182 942378590 237881970 758339525 384317595 526140440 890796697 960884018 238807013 733282854 222649514 645300670 233139947 748925650 407235050 770885167 922196193 951802838 585710816 793283465 529075149 665582147 216632851 775864297 504271831 813641579 361974583 721356092 307041263 616740324 588245271 675625996 121377037 592469437 338222856 719476751 858107443 890838547 21971204 93545100 839794136 969532918 222559646 821830175 22961936 289251083 105412967 928940474 477207467 955121353 211106797 465587516 662032944 663614570 33886714 605719695 795529288 916490213 796632872 802319841 297730104 305867150 697284244 822552331 90104473 826544671 288049005 365119986 455240540 611099954 693828013 917544718 88069875 581628173 199718286 515465156 815954925 826082861 919572081 934889138 936214708 987986310 439513429 642657452 8265780 44306386 357476203 771115406 215108682 942001305 561813976 939666128 845566496 994534466 256473951 507955410 729078104 990683513 640248851 901023045 757647632 874735020 254994816 677654393 36216618 284359731 531459297 650045307 890324158 924161458 616405677 643412541 426427514 499630363 982061158 990629683 488007598 769628538 730211094 866859330 305533503 901593915 234992891 523053550 828460525 998398886 331380073 445913843 375560799 491902119 854091014 970781002 508545881 715119519 971216563 997459132 840697076 972425163 115615978 735571073 941343603 984107490 112005265 311235075 197083687 490689522 102299567 393463113 739377149 755574472 60349060 523124395 354027314 568204774 284911072 788958868 699814658 708019557 228722130 229657942 858243706 922781953 644635055 876822047 839312173 942987766 917053816 921151292 747878107 864886023 379406142 454586065 151933109 623534336 996954510 997617521 351674832 806940902 167157071 813983492 229042831 607964731 571612442 764224847 13966865 540369042 397977004 514824978 168048857 641496904 584640288 697776554 841507937 908672635 679969914 813650688 679779239 998086734 783798039 801453159 609029219 905645213 424567080 867106850 624727668 869865455 495990585 668892411 355109728 507456097 599812246 644197297 495123637 631808220 762897416 804772791 496349640 876024041 324385208 806516250 473857722 612258136 960425902 997449630 834406713 965928654 98658729 479070922 110366459 351902334 764350655 957644781 583931108 853450749 934041771 971989653 564441938 573313226 556294131 936235028 80667433 135348944 724083319 960282074 576568243 831053592 338229920 539731635 348533949 755418817 166706554 870783566 724293785 927103589 205208167 367775618 911233264 963893860 612497534 699195992 271809021 536137783 788517682 883691654 341554556 963537774 1040389 368999721 738895724 952766506 327786313 370758268 923072909 989255470 797479981 922053521 556496893 778567173 659828158 800420098 140067616 381631405 145583900 828989185 845851462 941887495 932086960 968350225 875488584 959200834 271217069 768952611 647320172 745635280 76194556 975407524 16119551 185499540 700739152 796201984 620077658 671995997 775732045 823451381 254608398 378504849 716079226 875787964 63231733 213932916 947773150 980434174 802932724 987038817 710330561 881948155 347279170 713190561 28365666 388492843 773489693 872116912 166352814 708506857 516885004 930532617 27550351 617842034 940734297 991089755 30438706 344892761 151072543 833269000 347361954 871900559 328323828 578861883 479071901 532427662 250542895 308720190 100056809 554543797 601374169 771709776 6114265 289299690 400398862 805697678 449843508 594775359 760794039 910785912 764333620 942801804 756733424 804624502 775056265 858228304 212941337 340096620 298243922 770893590 65176491 784238758 992491434 999898429 859779586 986367242 71424571 118990560 692047732 811733547 911844203 965785628 35219506 310434804 577085705 670363545 800596077 859798070 52950420 680052646 718866956 756522069 173868470 912776038 648448598 709344451 342541628 912072672 316642075 795378232 974612128 981492743 990816068 993319113 523265651 712981809 445815564 637248864 988748577 992850780 216496909 397969230 410750263 449462566 914330081 958175294 909043211 947961679 659463280 857498321 276433016 492109882 274845429 918189067 686878670 751729701 267759412 370299605 834528140 926235495 485463267 928339166 61983746 219339073 19905117 488335330 228255093 857262590 35341269 691066551 683521058 812331942 24833087 151363395 323667045 668224509 655881674 918425629 444972319 700816998 383141581 467638983 145691145 849249711 359489455 942740366 95014178 345837937 928300007 967953164 608276034 781579892 974497810 983738778 333261158 870136645 456826653 776315795 583345960 661947923 150177931 895041400 515053250 950076925 361592849 547087349 707320921 750819285 916236132 968869011 295153260 370904579 629056665 651515209 446126623 808238183 374539738 932085834 542048331 938730969 586590823 689472008 364053936 634441886 913365693 929326605 414617347 501545252 164970129 267284310 939939633 963153717 883219542 955190746 449903178 872087243 189590885 651896268 625409732 761407876 406895245 934004822 454569861 790243586 674784420 718109948 628424770 847853229 90632797 410902234 792593017 881795159 780367602 993324074 560691056 968163366 376075990 883082787 487612913 926363603 721140505 846879500 296555183 517230612 665628515 935778980 668135066 970205865 155165434 827097075 924311207 970547326 697603428 999943325 961806608 970935673 543784296 706157391 129557608 377963540 943444996 956641566 203264990 826691559 70444895 731277916 158281040 576480152 467444882 750394826 683488325 962946823 726782169 956287400 331189750 797174288 875481652 928092797 250183844 932586069 989391519 998630388 484711927 762314472 271992386 429782960 150513368 504254943 361067829 763148037 741869239 805322840 489525701 676575930 621472670 688415533 580444311 983201118 792228406 837636397 806328101 847339713 665479095 669136028 840607355 990748865 821285866 925321421 761200798 905688937 752901917 815266487 562397904 813851278 945997156 947343583 703224598 731283034 250469075 876033489 574278677 832302398 662566204 782391066 420413595 983818890 97033297 323330104 506478883 870873628 839870099 956090984 327630628 781135586 493065849 851103765 311187966 516375292 541616071 770061149 86265722 291050972 360898708 669711329 939553590 974599014 126815233 703512486 917066833 986340529 307208192 419714010 562477404 745295974 620191987 673677296 260541132 620444960 584567939 695070718 168279369 294789166 950761860 975459243 791209117 795928288 326197193 411672381 393902630 837238000 324742102 638801833 850982808 969746305 856300541 947885685 972661421 982634269 770495982 955793627 268404280 771267577 716532929 861398874 539363429 668339265 138537487 691916071 652059910 793485784 493582337 716038920 219850403 556353945 622058583 792612338 988784366 989518306 576782920 766643238 47936350 332295344 781179734 910959785 369080227 405437843 99459165 945834403 908769952 943152235 388054312 855511999 593084382 647586440 64178022 460791392 296265360 304896324 656891977 853916075 745289578 795450794 539332546 725142059 572940649 663681218 246031172 387637624 687303002 891299997 113903060 281635029 966937623 972986450 980125492 991861087 396746173 952781278 392666768 567102992 179687543 273620553 757821509 936120237 621184440 703567618 565795075 752827977 270162191 929486358 492500998 979102504 442472133 909941736 728286995 820427508 398825333 619178634 301262754 346802402 523100590 965339435 88603805 136362755 914117630 921613486 859118566 863402449 395424091 749516113 705316758 983524290 723404007 733054577 944612469 979064050 520672965 653566906 452535196 850658210 588251473 995715470 14539220 101331843 365212540 720622369 760969907 847742913 443221795 804728813 629139493 927455954 969010918 985441492 8582297 309438026 118798742 802766066 483721307 673591674 624123678 970272117 775052771 782961078 307147049 503438764 177609467 770942310 854463116 920793519 705452381 931420690 509404051 943154552 790770850 962568209 481857298 856519243 734761233 872211318 619028278 784459494 214050036 953575679 182887908 199308457 534362463 576918254 837053879 902624868 197937798 489066371 285130966 635161517 864237825 871568224 470102045 903311743 925195363 988850343 338053139 798824920 830585630 888405135 133224638 622280084 761378569 988234528 879761632 942479698 624191094 688949179 405356413 717420962 412428810 883667330 678920724 824760959 869956801 936075795 156265298 832966331 528902482 723583993 925630176 986218732 180357953 850415883 115077977 381616944 196989963 252963675 792415373 821684863 257516897 776735203 459432238 767110642 8827033 878887087 373449021 982187380 12542253 795564727 888746684 963865977 993924244 996094971 281926906 358755803 403723818 943675106 196513398 945484903 595561394 777081980 598314772 644857781 247771516 809584427 634209425 650409056 995545136 997677157 475303971 738150694 82524981 649999572 591554917 922174560 774846708 892482007 747401089 870093494 961133041 963593777 827953355 969623912 544190082 866966343 288406887 935245930 407917797 556677213 518532313 911075452 617723356 643207081 50327406 948425075 189646709 571694730 654838741 827197454 866463884 867623176 288672563 849841589 707119933 784669220 487610983 714144425 727893660 803922401 54829640 922959629 268703401 416290482 994650314 996204138 970360722 991648205 285485771 589808283 586764585 777635667 939595397 942032004 749158934 997510382 15781664 648281245 365487286 975429114 261963973 607181446 883479901 953990717 218125749 709494505 580239049 906166935 647918316 930418253 338117047 985353615 713692029 770678485 839485002 884910536 241579640 360883845 36096407 444699850 187284633 806244289 812700684 883686969 975769508 980607596 776734408 845401407 519185892 964134912 359802591 391278521 136322486 886474177 761098108 793379995 488412724 827362706 813958761 851897416 294534872 481107179 51356312 872375504 616444746 949957738 464982847 991594086 312323346 410108629 992350068 992465425 48988093 195097332 685282823 782437898 351989718 517495025 115330012 741138649 826787800 894123363 577341218 749342783 156394210 682126522 493247765 857301897 155703378 417850993 692769393 892343243 208307095 642454860 84551997 254895410 14563463 404816568 861905145 947351779 15633060 221392372 431573286 568690843 223177738 923316030 407429151 581657230 872578814 988502899 410602858 593219245 876329638 888551047 765560611 883849045 757776867 799038778 153003646 426116520 215586519 321603970 976378074 997993731 89414941 225349288 474922142 979393891 568901458 720278522 325873631 434364522 320129687 611248769 507975121 649973876 172945361 811642789 840519265 863316931 117024462 866568701 582308103 817465101 89571730 800805687 705456550 937792811 65532790 159806811 164487542 504654004 706372855 799766958 731057433 841333764 967824067 977712224 128507596 493751283 919187923 943985944 996105134 998780362 539290644 771524669 487849719 830688804 309285071 404520527 310808781 418919831 814476063 837750198 61402716 842915261 788738078 865908860 365185756 968389287 73266992 82115462 729527550 818891190 974446836 986179864 345316771 799313834 349784936 766577965 445721569 765470002 442806218 842146545 347186859 652232796 334275118 398433523 364449983 549891628 948845513 951889277 486288096 722258636 313175392 422167194 860958390 981497553 446576120 568490744 426822060 480139533 446968864 891251250 147682816 392244829 962511136 974195756 749941633 782503486 289506094 568323142 756462679 926147272 317031718 896364613 814523072 957717250 126137837 986986327 895159292 906239164 907798870 976695231 307248010 376252859 315174444 370305161 373536244 898969735 370660948 419530856 165769624 302072915 594785659 724714432 928852318 946847292 744734442 930384916 662518982 973055198 479630457 808870048 162303845 172349514 994952899 996822795 942638339 942991373 400511011 869298596 369616096 447847028 472583297 502147337 985937109 999223524 301013037 890176311 201570676 775570121 744690005 846734870 935252942 942373004 683552852 778888670 714096136 765182394 579657415 875953626 694497849 841663767 985940991 990317090 351047057 686487683 131041220 979096720 548670118 940937333 516604611 580886635 55653884 656387952 761104236 784980325 25907547 965633480 699820549 888814433 826820685 925617820 329737438 489597611 215421225 601753731 493534771 828346299 206329008 399332083 401695946 582626137 379665699 745347904 110695129 362402952 284334465 456101655 857291242 915858200 909235496 996911088 165370914 579378432 725702322 991745288 895464038 975250272 421579028 877642180 770463633 980244591 962384991 989569262 126745594 322452082 391133206 622194641 892939193 977967165 956241876 994524076 35981962 803501112 919266860 949357320 456562448 932278597 646181116 884965236 724596722 903389054 876851201 993531775 337927498 631791286 302265103 538043176 402874922 968639046 260861281 913267505 537408294 836658160 356249928 953243146 885109715 974904665 99876743 615975893 453805615 768991843 930935828 950368586 345266434 799580841 356904310 586436093 866916542 951198830 1993662 644175033 949343700 992598861 365683956 919000066 38219515 216474692 720032799 842664110 403851545 807643434 520594107 863622104 234876795 377028072 728474916 746197915 907167002 928217839 358845289 826333668 630460155 671119353 984244209 996391960 658313916 658986170 683808482 867051804 511842211 571980679 193881826 251770666 6630616 523977487 566282547 693352953 772306293 853130746 545870496 930291161 563029625 891985827 825714183 955301290 66960694 904821258 302369230 417507992 847474850 868201440 574733833 996090801 404965488 515953325 317376241 704346970 193155076 935394294 286039624 833312018 942596327 947367539 948832493 965943668 393208695 677415317 442452721 457886433 684614450 832396016 564259909 631854665 654955796 905024322 939651202 982866946 636963753 637678716 392930302 690546908 810565213 912170794 645898432 859592646 287692920 909925205 76739974 123491897 503014666 761457509 626955915 678988904 568705681 725889168 201651694 431802950 546451105 574954883 760144282 973187672 260087344 424378023 937300021 958961869 706542364 722247680 795911001 932464950 253339425 263726322 96606098 611957343 995678045 999548046 903326676 919703088 886027769 919216920 291263627 849234118 568252735 901126647 12094267 802136892 945740695 976468126 740300310 928491802 964431938 966317939 435430787 789143262 784238006 910609976 798005308 973658990 707288157 824931074 551515156 999887229 937394572 997153307 101138341 866128815 364490350 381470334 345901459 663684835 654577047 939860467 829353126 896370197 3984820 768611379 113136425 777446248 868091955 888786550 808770766 928707951 214699355 238703975 440694785 954445736 267155861 631125891 721743242 918881698 302611154 641565703 224590501 614324205 409538238 449279645 420617008 647743782 312659312 686595562 51771226 542331496 661035226 741588725 579994673 654950437 52230027 987420902 773070428 865243004 498602800 960684539 912447293 991845314 652440292 936609355 762272360 796846928 456138657 687103558 674267951 834676532 451751082 891219902 802663281 935988933 682960860 760715340 618100987 907093906 208508026 595911541 956115493 983347562 138891875 336959681 801303620 810722151 184548887 256604684 991520361 994788766 701040259 856224889 29946626 955920679 574952142 603732147 544028201 951152843 673314373 850320141 684178851 858062438 264871217 945000090 746118497 971551463 60553500 373790561 816747582 945843867 954895438 967001474 671674699 796318444 547038523 802184844 967660040 991623054 710248588 743346966 233335942 429358953 333450572 360276395 687312051 811823303 513847909 573240574 739345345 777861860 196281068 758004783 615195658 658613263 110069150 116002750 897960618 992200313 793151977 991152352 309856037 896062164 368731052 486822697 108878743 227685360 813243380 939188632 308801672 396925821 186203263 395946941 125269656 991247607 159396470 576810707 879476492 991110489 18273892 538191204 368585144 459042586 453776319 966026672 373638074 451787261 160565026 991571784 401932753 448405374 280645557 985438791 977693470 995099269 747670050 757291873 149777778 260728322 242925753 652160996 891982511 975063358 7756821 679893687 307806287 690530517 381708926 494612152 6418231 671427472 995806537 999657299 513248618 953712589 581501285 956780591 569451045 648782403 208693630 808960226 664669577 864293489 827310156 887077340 87670452 389879936 154860251 898141163 195975309 626394787 43718160 208638833 596082697 710742111 434039181 879750583 981149134 987496971 897023095 937714122 823400991 849449841 516538853 763414720 210351943 931429228 762701594 776966848 623776240 769296632 400436944 615955030 565994544 826713703 945613679 952073028 321650950 339068689 320188440 929349858 872534210 969302974 388421559 723124021 156442492 165821364 21350045 283289345 949630476 994093480 833068689 900984247 168604461 648877767 616717925 980919724 973692728 985006706 857659570 927799046 560299941 783522532 699639693 903769372 397402145 725099891 752217761 870288189 687327718 955778446 693673271 926682691 372680527 888280525 539937910 540210995 109244903 913839504 728849544 781696856 690594054 789265759 873268868 977892601 188173888 702538546 424279603 489075592 140777458 568284859 788075127 883072171 617307909 716164561 454298820 660771837 513589336 886105823 510282115 728277171 808776817 848493321 18890176 935422410 353536795 830241351 544164538 960853884 149070616 736894831 179285783 709550923 430302278 452700954 689381392 866502389 280544925 284229031 446529731 664773001 602199335 739814166 897979801 907789454 422995192 738784249 103743871 953439497 228922084 397626911 653817270 887705294 935149675 997361688 313300777 949138237 285519667 879968338 883783421 923501083 185253975 297445914 28667612 732764818 979793561 991992309 218700043 822002364 755068031 990378752 497510848 600525060 355435735 365649448 243845028 600521623 252614549 567679845 413827226 605373983 750708571 926848793 123430429 332803805 532283826 882053660 928059400 941602238 315356416 696996978 730765784 763270453 196872909 915623543 10100200 42730809 325281700 884516198 632390976 891836472 645043613 652100040 647561589 715444349 532074796 835679132 126155424 366926631 414800379 751027378 202960465 929744475 923575121 995108268 383755933 634781761 327747983 865835555 647014618 873592028 983460489 997126346 418776820 712498546 679568989 961805462 543000773 742878354 783902051 948295786 149396601 703065090 43962883 951438051 602472185 866546990 647946535 704656997 923547740 935285617 227541174 661210002 208737383 782887386 35820899 387742751 563536930 920695474 991929057 998896077 699174639 884052672 134421731 379837231 688769164 871830052 588057559 924798869 394632011 409410988 95933577 388823011 903026960 955185358 77499415 274396100 339825411 692403330 859832680 976554066 639686960 807512908 224580448 820200800 629621180 982252638 685434382 999687003 204088744 566919741 600312476 977186222 88876241 152616810 32895372 413006713 119280744 671186270 800783065 944117753 841499273 846079761 343608256 434036100 661400897 679172640 652283431 782824792 106061139 509891666 774181429 933188789 38152529 571390769 469552056 775110530 577880864 873084577 507438808 743634649 832971626 984379952 771591989 772024298 765761055 781196887 761224945 891063388 583507642 853328342 40319925 852362789 359115822 781118362 734698425 925025759 104854147 461769940 915050647 983344240 313207554 737610936 500942185 912785672 883099511 953169340 523738906 663536178 225910340 393465410 120324027 136626669 839712533 952039488 140935980 654478816 524189850 823006402 332815965 875507475 332205227 441624704 950306610 951065756 325272991 925796763 314685095 931136469 702307614 813958379 300021691 670148395 11198719 944006024 104264994 713472574 183588280 649587418 824659333 905842242 699112272 728524339 882749432 989738831 789599157 823174802 374602272 491528314 496958271 522678908 727413732 849982641 577841596 610548482 819094934 819328016 274850327 745961733 18935337 291182222 395852065 882825135 455412728 830742414 122868603 391530658 791266029 902745973 974256899 987739808 73520017 723832140 387636835 594200958 573522529 688699628 705996579 756277773 761556425 913169876 278321777 579642043 677363907 979844627 419495875 808692123 782311469 833307192 667509338 912941578 702087559 853734232 675405639 721417621 724405826 998240747 491164825 650071468 796961683 823508309 762096482 923804205 274759908 520436615 54040530 779817549 381544423 841091228 126488338 270170007 808844281 962942493 874321821 903996683 431523588 921675575 566945252 873652417 673547763 899313279 174850678 514780202 153242926 859314142 353515390 389884756 447971943 627466511 561603416 983819005 193079211 682292327 998273661 999079477 634311463 972736457 5444704 695732933 895125872 952486463 666290378 901476818 718906972 835581033 534522506 596786714 704265496 963765758 2100254 511337932 854784714 860338367 928668226 930389090 751864861 874045219 551753554 692314067 238168825 349663219 123697717 580493570 130294886 354783759 492324129 629435747 582414745 936422214 227458462 409120812 403258308 812895530 45529350 599619819 43721779 153960919 556272680 729901881 188167525 484461297 624417566 802293448 650076997 894978711 569552726 983119983 521043771 698692483 624132091 953188691 212006694 651891997 619420855 810941555 770075334 917353391 865319133 891222815 823052500 903888494 842322366 872901893 118294783 618923481 372076989 427791681 95777795 245664838 585153212 787526638 943429077 988816872 128535760 975039738 817844709 850135643 308993682 404599908 983019739 995401757 596809815 815542320 564986295 832258730 884835740 941358202 128421448 590439249 602084137 655388119 544404114 583618372 950683680 995293041 900272626 991906395 150512307 325022587 423715774 801741853 590312200 783606956 302699266 417325754 856294689 980841114 251174668 998812486 758547629 780219063 250001537 830047535 138810355 962631363 944478704 952444310 261118900 624277115 655884069 711301613 210233616 365626837 639077506 980363456 831845491 999561698 690255320 729527158 223196145 736588692 666027105 837007571 725994972 944773998 689873404 994849414 572696844 839128536 642115758 859478348 911938285 947596954 678254121 961151315 769921589 987119745 169476877 975980578 287771317 874224997 251383309 986499983 733413793 955449171 242045311 591822951 449683448 830717944 769031725 949359774 517645247 914093310 675220011 981716806 51264438 494587633 376432608 979774741 687315034 929597840 79421255 985782164 294897824 839435434 378363664 619352994 411885130 850358318 917710256 932913644 239556517 345114251 418387758 605164860 323166336 516467843 536803249 647427921 388454132 469327487 797196158 801631948 85279759 922417010 988250852 995053781 230006560 556572160 319636008 569097366 935129556 936867955 988370728 995713098 378591165 931602332 159431691 705739997 472389575 662197548 981199133 994849156 100162159 789152832 109120898 696528666 910325933 913219476 560644137 944302480 518318647 524146031 18062950 506997244 515384757 905307871 6062960 623630562 895177015 949654057 69017953 506041486 106926076 814653987 622387925 819706044 390538746 573967882 926669135 940255493 898860903 905912598 406019723 753120769 416391117 708958067 127541240 363662845 539017592 810449909 882727364 907095807 859691321 888157377 672621227 814838806 628955253 979938650 982403315 992045147 327674497 687489899 277180158 311152328 753433075 754764736 363911128 443206197 509075252 993434130 527713179 647798295 316629670 827120598 866792376 877437637 541573004 640873848 975402339 987951721 361393511 394818520 164515340 738989846 630997933 682294857 294170943 960173110 916500749 980091825 325771665 954645253 580993790 886741020 514855141 756817758 46459832 510373056 964624953 998627217 247819130 564780942 184942814 672046235 123906986 947200512 230590809 510375800 483195366 541982387 632696178 884315540 343354946 369777167 461200775 716941676 678816482 750630061 49922498 301562717 306281479 404032232 311866042 820825820 77764554 234903378 35228045 582724413 396071786 686881251 226819552 327168599 518743328 745866320 683639906 910820412 333920077 554854152 162129061 724040961 541223473 825003821 951008678 967669551 856171676 907439107 842922412 948062330 573640745 603572222 466986597 905950825 562426774 643279340 702846573 798243251 319377352 740056459 230763071 620038102 403853535 991034480 903523640 922831167 6650191 961726008 769858888 876700888 611075773 776936189 316473798 447023359 241769516 712571539 964755012 981621376 417173960 944107816 893787486 895846280 890724429 988834790 317536111 394100248 399276790 798227388 982930651 987179687 895588834 954959667 782682739 941315500 990658495 992631517 90751275 734903228 15641306 795073874 663154575 786033959 746632193 812694900 377872625 407049960 589010700 739524391 500634085 534434877 787112675 878191133 938271155 964689806 109645252 169610930 739926014 975147533 232857594 719249685 538149288 783759065 141554439 194848840 659366488 777381833 455543844 727719958 889663640 936203908 349667484 399977511 106677568 577697999 646586047 919187319 161014532 618729182 62315952 160287133 138543590 209289952 850866236 980642022 505525401 726883124 209564856 815716674 809146961 937504687 505959466 544095064 633259042 999766904 714364633 843470569 407338366 613362864 128487757 232892427 635957990 899309672 576173053 905632377 111582731 616742206 854409572 872586430 965261588 970507263 109955263 357891943 744044806 927607302 346739137 467488429 827372136 984037035 310683326 866941780 998419465 999418066 547720109 607729426 37344407 863744654 328028839 842462932 558540826 781792237 569247421 918880037 680464102 932104948 28709498 244653424 399000404 936712922 418689693 584605519 225520866 847760310 879017901 985185860 348222583 491560326 772509698 870392721 444414739 500113534 615694666 853004175 308745325 345049878 697532945 945570142 119465603 442401869 596702491 807273494 380494781 462788509 415051663 560845546 815864198 828113698 912848729 974070689 221205714 494733258 999509678 999628803 565224353 750828284 515264101 820525970 662893258 773878845 570448020 989438303 633746175 682421769 78578512 923775924 880591569 899020901 102598576 710056871 104967140 289203593 215871013 670446539 514381604 847299411 932587772 936753163 166181591 857825443 675995418 800282412 819027812 886766122 586723761 809247391 545446798 832357718 366114258 580393871 753615153 814884203 267486292 740214617 781591279 802894555 338513944 803228609 118249548 886041074 37768433 159421865 319057989 848380031 826820056 979200024 822969007 901127486 14521885 359942349 612601967 874597004 707930724 990655986 714511693 726907326 23694265 254037485 175409752 868865944 916828457 956176996 295133190 671641056 340238014 459426730 366108800 668278457 392832487 407146080 142309502 681355089 809935983 847903238 858063212 917498943 712208088 943043473 994668469 997278122 422675091 734351001 211619843 343393886 501902974 776660434 513673475 911035867 744734782 957293618 213761934 964594549 564961694 959066690 965059738 996778251 954806741 993040318 744117443 890173271 972672832 999639794 401458019 645419129 290380730 668251099 156459351 861497070 127170569 865360663 713492464 773710841 121834180 435636308 847769166 959154290 613844274 721061425 942888526 994205899 86621728 835676167 745227040 869792652 345954699 694802917 768715903 942117744 39808789 576308274 22045405 754961214 423944101 863119104 52703494 439263577 808624001 923958144 451214819 575773589 147209126 546672887 130485176 782362432 54193422 513808891 447555811 790133336 47438876 257523556 841715140 964170325 427605876 459471367 855692424 997184477 344669866 869336967 427226456 917350730 919353492 957985775 967302088 995203218 106162564 782000805 394126167 461602042 563399141 643313555 274363481 353439265 43166808 513277171 605744335 907629040 205483399 218688671 625860958 777091012 723079421 947841701 332682466 424574011 659550330 972822473 256611294 330516802 421781901 769508582 215316311 990200460 930833897 974093337 324076120 798583042 645017837 989522773 327930438 810389071 45262111 268028798 805130349 951419787 686079193 868593991 137917674 560824916 290309132 781831335 535968503 667483756 631121211 931599139 444558481 560736947 868070685 882732854 121009428 761870755 304195649 895396807 190752510 514782278 384535400 561719454 382694810 756561584 49771214 853627897 497317467 942620762 811814849 918294010 911047462 997007042 267769754 462262990 423293729 892080130 390040910 570442505 706279620 919167540 481104308 929031412 833902834 856450499 121047597 773294972 339818052 945214668 904149329 938956659 333302809 747750029 115946472 628335633 888687996 976242122 949434773 968520561 975287396 993453064 642271814 756738903 234359068 494969100 322202496 959511614 748858122 863161216 601809194 648391643 818332764 837556676 116354030 985546497 621166925 945397973 232909747 723747871 120674043 873566880 304616667 716569306 324684926 603769161 675750218 761218230 415776596 942709966 358100710 406022728 938608855 977546197 658198773 764918597 897493035 992224821 260945563 974426686 508805687 910939416 69408182 680480784 712996984 861774412 147373921 802951017 512832961 770020220 295853527 884316732 985123939 993382721 44877926 981594907 150277047 818596345 999572363 999911392 750809591 949371031 131650959 338772811 195257521 886694422 138791084 978794721 426495307 670726529 384526968 409621448 399090357 936703401 816340759 867568133 463521336 774585705 293229043 357927080 879391295 920818825 541150285 585307508 130420000 254473111 388230552 707072927 473516102 794751091 674634396 945327831 218101780 616247455 641502723 729872578 621414449 908324259 777082178 938801391 135287079 579475358 440871602 615973422 725957372 757969274 694904317 992728687 147814428 240108435 498314074 912901844 220214747 802955486 746002422 755750594 36733429 104917171 302074922 756223057 879173201 983639896 975038875 980028664 875344528 988155602 845353909 943990028 125058648 741022215 318330463 362450597 525387561 682266364 493537405 654165282 372802230 524207651 526045651 552781702 619372487 771587517 274384846 459325037 691143042 738579832 411412213 433347412 717495498 723173477 586059129 737156669 529868858 666921230 602527821 788140380 2816737 338786891 92692650 131962702 908110553 976174501 848482115 868540990 640424907 981486787 70579189 786440876 936279916 964259333 688352129 802734744 361518824 602321329 209018435 288063882 171798670 757093683 218421919 691160339 739883565 852110746 744251403 776645989 585343113 742579912 897678280 925337732 378187498 674507801 951090705 991440631 133181996 797161085 530535547 945706228 221982075 278524883 939786721 999516080 720214078 821729659 65741887 345244782 89386184 260885519 644637192 744991319 131322455 835958406 850670528 889618869 14142407 732284490 489308468 614828057 102913134 741463847 480381512 930054479 306694818 823985215 529473757 874175771 160309268 329939080 453511332 712035021 316663367 374023469 939462718 956882524 848533957 986777019 524533470 717201792 994741644 995701396 688100652 858925877 145558344 342375787 127677456 250036909 712772507 938528255 89511397 357977141 925053179 999335526 488551450 492105643 65235986 529591864 796639808 826684457 279527098 647126630 515280605 833585206 274773788 464967283 942945793 981312946 606896373 736558112 643864351 662297160 954839385 990406906 103156888 219140823 786627447 996139747 178835886 366854047 764126966 952009955 1006989 752685610 656135058 659011910 507908613 904900207 935414054 940103005 977814597 999408995 344127577 590327259 40035013 266127328 601177950 792484435 834974715 970591511 113765914 500408281 233530966 783908851 105954148 509490837 735918133 777189066 609849508 843275090 378439427 994259526 966643612 996927797 59523544 290420057 232429168 260636906 611950458 935576492 274827368 458720229 688028416 844287116 887363705 930837547 183232463 711398353 929361610 978324903 870392591 918985375 491896833 638931115 686734740 986761624 988142287 990766303 313029327 627358758 361446576 903300512 336377633 424976184 494305432 745434927 909898664 959792634 953465112 980133574 642974487 715928384 499672959 995601512 154161238 742410146 155859620 369369977 157565017 426106892 288071860 924797195 551019653 811081556 264938463 303980236 484045757 579645614 973803800 997593815 772977776 823954051 236101441 312069324 508515671 997350762 785076260 926961852 10410005 770494088 675943736 998387191 297871600 414875906 327940101 798012604 116794131 805896607 421780945 478506703 747791456 811736798 528678036 916866008 307402062 565821490 573556783 825715853 182079744 421731100 649018275 934708131 10152472 264566347 452409725 729846169 803465258 966420851 433055001 740221130 966906958 984307027 565067279 984187940 601488979 716558310 417448092 923797497 295392700 742253971 561884299 744422868 800409700 927357983 909447958 973599407 849797087 960672106 732697949 766097334 690887481 925706697 747225157 949977442 5852777 805536885 161219724 456363298 881596831 990191169 101119385 867504734 864026066 956506752 265453921 955112106 276074378 464881196 62202945 634142982 724119583 995155615 990535320 998701266 546539485 920918883 700815499 768776371 861095861 931246115 351866440 445010517 400625184 941788062 44227064 168831187 401398431 985430100 49211719 535860119 177690215 985252740 44136870 844316521 943016115 992006991 668565888 813049939 897353652 988874369 469390399 554915806 479307584 538543470 615677013 972416723 29343929 553306880 912167646 956821671 905735822 935358924 749427879 838967688 766973050 771813909 764704338 913931762 617157470 625907982 961960883 987169699 530712859 547227950 395298637 422468478 387748986 996776423 421218495 747357375 830181299 955183435 454334339 783781218 252810736 720536488 889972825 982426407 742342075 904760623 334718262 755783321 336128094 697180687 132304155 654374035 978628532 994047909 268065088 373032392 975671676 977039628 20987898 100000217 563630381 592828909 21818787 321417814 926140884 971028924 357505464 698582530 724513855 945920403 356080495 469096302 496693866 684701476 788118045 875821086 3481411 606731961 960378638 962889707 778902430 947182847 713132823 774092889 887441447 946993100 83258903 179364113 892151310 972935553 570747438 659408325 390795061 467111126 865223357 934688781 665517567 960718739 843752533 991667283 100847200 134565261 702221215 856355115 99469081 279242741 496712043 608059557 651464900 651465444 686028159 896624052 483508419 622283252 369670855 925106571 902910462 927088861 3896114 172016011 427644654 662036428 839009361 884270957 772071412 800044709 179372456 364642125 413533843 436928701 538793724 811056100 907290558 944862888 818262786 878656137 94556877 945560711 102037534 520499439 760816247 904266697 491852100 557543103 230086362 897441603 175327012 737770714 538597183 583423614 604030581 932156305 264078484 674229804 412555847 563611878 189174767 246087101 956961104 960321468 820665110 896639155 947916936 994110460 113491203 430114521 993554783 999725048 877818836 953299605 484631830 529287353 624409689 998878490 866185498 951779386 654729402 829702273 90453720 590907869 634231355 896244269 203193891 289611976 520325082 923677674 587130341 653773657 373274391 389914646 775591099 820282503 591586297 592386464 786076517 860114111 534835283 744507237 321718848 782801930 160110095 227850145 361591411 829255041 889040693 924311101 289068935 917932044 128270709 974690620 560237974 734209754 573144289 937061706 943121575 994375889 365358894 790819925 551485080 912280277 727310479 901215333 130339343 831670202 922066654 927976896 290797748 904675476 324335828 944942809 187627379 858247517 934626369 957325336 132796223 476444442 356283471 430811714 161463640 420337250 612649584 658824907 944395331 991712855 985418853 988107857 176753067 902511362 268076174 964505730 596860995 701195769 487427245 735689692 753302659 853613673 575202458 987539557 808201968 905992047 27055315 534938550 617329693 715072884 968555376 972493682 669154258 839698896 232312346 657256174 955196810 990148372 483393365 767828610 635942587 901455801 336170118 743859005 937147455 943238294 347839991 460320747 914211224 923207503 265568090 325883036 879410042 938781246 573147819 618740045 418253514 862481011 683351730 993476615 180694666 542260290 810201106 943063740 867398202 871720859 293168578 708265318 383385487 855901702 27848131 702047729 371984759 662278987 787090403 855187023 351938290 409192442 681939393 692232578 6204999 79640820 975626323 989754824 831078950 874066784 40295704 980573429 623670794 774553675 179862531 487493247 682261487 805737234 391622780 714405551 861397794 955218519 977924955 993115479 254226061 480578779 706837565 853483303 525751696 772679009 774699256 792131666 587242670 606280932 324042622 750451483 705395490 836332562 143421753 309046615 571766385 955546272 863002667 980938951 23766241 35588227 267527781 943300689 126343233 914053232 92236050 491326298 913045828 934886309 118510639 208914946 879952645 880526985 363749568 420594094 742559965 954590672 693141406 950256881 649963811 717393832 501603001 562277069 137536482 201394921 518540082 775700424 348335635 528256475 733508208 806190068 955499703 987679462 711893003 944782285 258920035 590708207 385124413 894073642 559201514 605819823 980747833 998235399 60256542 170588846 856088938 897924537 558055563 604357703 290556690 950361599 777316166 959245015 494000163 801078029 390171671 752882164 886950027 899738509 527772266 720101419 261414748 803770123 211855889 794957561 261519663 713565419 627353699 800632777 769911308 817780454 411441197 548489779 374969759 525678786 903255632 965154944 830997432 962775813 84047138 866368048 661719718 748158225 878616231 894622904 720148329 831287533 973940666 975612574 136018925 439695099 693492367 868441517 966280596 973887922 486684575 981317373 370256250 959453991 712104019 713228696 4471200 593547699 469923594 937272548 49434005 702642982 961668527 999692494 803594807 983225947 875207797 958053589 365010696 616925760 859502264 999569609 138058173 541901886 588969520 706228944 115953635 164425208 687866115 782814818 181463760 806728113 906463476 939744088 40367949 604978519 465339965 937478426 972158003 983765326 102246097 311663779 390725061 914667275 501760346 866086110 529801278 917460727 291914375 569607002 129680180 924651601 47039678 684525437 883368619 973459017 260401551 390939019 253197788 346067925 259197948 952556871 565635533 857256941 325844927 667074506 375230653 963538653 548242598 596390670 22593785 522262651 824378379 875850734 211762469 474015577 448307483 894787010 296073478 543269857 880173656 965085462 590855288 662182351 318680032 500725264 268245012 694893288 44393603 939415475 100817164 726906641 607890052 715220634 635508791 711487047 121521670 180068193 898117118 914650279 35940873 614693646 14562941 811428909 298620888 699242099 97114954 743121633 101828798 429390502 211343509 876988013 373423014 869930868 517688179 935493860 886431893 944089012 7927600 568267514 283182456 600352412 402921741 568541897 439210796 573188265 484283866 703698213 37548984 920462225 792624503 896929580 229606460 647833205 56547032 874605503 421890636 927119504 281178800 301700310 827453579 912741736 202916721 786061897 669549708 740501789 488040577 842039473 999242753 999815598 24364098 402787212 50157479 869104862 205271265 279348068 993290882 997664457 121601938 859079151 71733189 158865396 729743703 955627209 9378145 513743465 124179288 712733853 808732843 919273666 371718422 863824027 732201410 816346699 910837679 934768607 704607491 860300739 566898981 676425533 923024073 946894430 464643471 989392018 681155031 837455294 524877944 758939442 652208823 859384034 137865795 547984872 783910528 852529591 892266335 967546141 568524579 629675539 288021247 731978556 433339042 983950719 369588542 676367128 861463318 962073627 446651588 893693181 442716361 751973202 690159606 736879769 332373807 752809655 844774978 913823151 423111884 903851407 622631522 917914456 3184241 919563381 339003616 789896772 867292804 919624888 478822904 854180747 925415104 928386051 397784747 713628597 639349701 714732668 741115352 848603832 501774536 938268245 51791071 445532615 224778282 321964575 879649547 970560569 760090897 871112965 544781696 809871929 330758353 865775472 819904643 842429197 694261350 907731613 156985116 391484828 671740861 691520107 873711067 878285344 942684738 994710689 60789950 213123266 945883012 950152781 233145047 472244753 339898724 555804054 286452335 583150081 517167539 676286239 771575680 805558988 856464928 932857155 733467874 822740915 379054105 629626222 220326337 548299220 413702526 958006997 724060923 851373749 458558805 649358328 728707238 953580434 210719947 940203088 363830167 846969045 379009509 569090068 678079505 995065783 291102765 564054355 22145949 888290877 381373636 427841569 694805277 758549860 266550417 456852572 263318389 701652856 591329929 765771785 995106167 998113406 948020639 999674281 266004878 402870848 671024631 954043839 344292552 620588694 307713843 611472749 203309049 369711461 312374705 564091595 576889249 719993177 941592442 954530924 288543139 607590500 542256301 640218038 216592858 936799395 766998038 918740570 998772510 998898900 607906427 773733197 965160017 984609016 5713128 622370717 536367806 902212949 107408745 615850536 651119411 758004577 837374516 906094085 219149612 603823333 844621894 858578005 476451596 631328627 860869561 912774278 605940311 680074146 230458211 551251865 782769477 891283038 311610620 510327291 686338202 751721428 647742481 848187303 690681131 826251980 43924384 54315266 591489212 876083617 448367376 562338880 233102303 405232901 167365121 901616001 515822562 530208521 708057351 721105348 42174675 296185057 599939176 607632949 344208882 621302492 162384062 635484224 425050729 656303921 861464477 918842858 905245056 994550158 318756624 494789215 475059907 704478615 735925961 825186848 687147886 929373250 593136451 992415760 577223071 593770559 475324821 589005588 449068935 560967366 639624815 723625265 937458036 987444802 989089977 989357388 271372856 656415799 284240627 859520957 122439067 323267414 359657824 696388113 243233967 675958631 766711027 948180730 267095617 572537489 96079842 308502397 981578952 995917196 389380519 675169078 476633179 561631666 625741933 706005916 539073426 726019312 798076467 814899270 110270882 211885605 405083440 752944538 822580102 895677842 157822736 946654432 467953947 587229674 543429782 766226275 141063217 270214303 948996157 997046510 278563092 292093997 118662850 438142613 686767459 803515994 165549988 880483532 384091397 422277898 172841702 611940333 152417234 686508199 186017512 200056370 347708484 501445087 764822546 841992753 18727545 103945788 481180210 534473931 624103155 956591677 175536980 664744640 133170110 952100195 898967055 905011243 446941450 808013544 930757404 957918366 228816216 902463472 763238682 891414314 840819830 989051747 835429414 932280756 636110445 917538679 492505824 836254275 437156274 657012061 866427336 990931642 423899501 678709458 645281393 851225810 678057117 753940760 316489982 631875255 161566774 668743715 20126593 906168528 622680321 628388260 33767264 587018574 67017666 873716364 827704965 852996775 509786237 883027494 900666545 994328030 625254704 860924523 886658545 968338498 873838974 980220178 403465113 864133935 241615504 868331516 424274061 572652653 495120070 693811719 932093666 955246608 772782142 823535261 148205316 843800473 510622755 697225988 179669948 905386127 352263771 768711106 38148482 65520298 78478121 215893153 871357749 995353689 343002872 926037349 11486505 108678734 717119212 793921929 583768324 870442482 474807038 978054090 679492422 922417032 157996594 812794987 901839489 929860687 531888651 877676243 17877573 556134146 96861954 607833809 251334990 251815711 341760172 890758961 133319646 748075580 929050821 987986589 232343005 438436556 358953330 656094946 290784137 868481520 363642097 525046126 482139896 888813285 259737588 527801265 930970541 995958474 958735713 973138485 473991134 509959042 219688670 564280236 456537868 742955286 789416438 948706763 646918359 912640023 826186150 913971872 933808611 952168592 320209810 707058445 933683137 935788630 454163143 924585767 985522820 993243892 138058173 545162926 100952279 886768076 30952304 534499058 202529415 765826316 746337760 998884091 574696453 728849122 968762876 979263895 560995197 685650012 645091039 888700394 699873464 884518390 843083855 848245347 108862975 840102190 95151632 745636844 784336850 987064608 548284757 818512868 627786047 759656330 719364094 826339229 8285788 465480307 923190339 966357610 417661966 892010009 690998116 930140308 258222204 714786579 184861379 906360017 490915949 533658714 325555192 861958111 524573984 746162323 385073389 720098550 859710627 915463962 379812058 781686387 504895731 689668266 625300959 695685173 165380446 520914833 126433840 510313271 486404140 526000477 866029054 885970856 979978294 987927277 798476378 966736894 287054448 750847282 275232299 306048252 661529090 759891382 800779862 945704713 788505118 969996299 44859065 351556670 82414373 376529454 161472361 886755659 656726115 698747013 570860941 620346783 176900084 813979931 331724573 539636039 810100107 962554384 56817933 309320420 5165608 79573353 692529091 961978716 170363162 316808939 584899459 626728049 945492667 992693858 609995387 690375796 568015779 736874399 586499135 937778961 643759924 672519524 658392184 934315375 845178426 918216961 615175353 709048492 881300877 907998768 405817715 998793375 14762104 421925118 536896750 618754477 881783798 933491915 697015550 771461368 596421259 964169419 792866078 827747344 447828921 810181065 963258755 983662072 510954564 926830179 520447778 883449129 673642485 800710212 518300930 737997999 764362709 987103520 561775820 649734769 325804609 964346373 843398579 992414185 376920931 623069203 596397939 809202034 651377887 857016612 730560491 809611692 489563751 575704753 248088677 874336567 148358143 244050055 944870996 991532483 417189458 474587287 277857545 368221831 456493967 600410750 970905105 974066739 250539795 503929136 114957998 608888873 414489592 889488967 469638425 880572924 716500582 734628933 391415041 451602066 279825137 833274212 410956107 462342234 448104129 624488865 627065808 641171834 813121554 912897097 112464590 585711778 120378437 275392162 622592276 633286445 68670987 437410786 698195228 994159161 43386111 325732681 515908047 692973949 41295812 552502904 101503948 979406789 279097922 352474838 57120991 160651867 695755036 784249615 17767278 213639494 170832682 191806016 666118717 788323922 581009926 882106310 21672832 853984348 828332933 911357062 799169157 930251358 137216821 990544652 254293118 629299610 449117261 496897876 636103544 860158583 874984504 944075799 689670983 766111393 447442592 541616349 594476844 757128942 490774420 900626894 820596 318434450 207589845 823026969 540190799 755758685 184020464 336628734 621588981 970044647 189943953 674476772 993322691 995369355 942231110 942253603 654215384 984554895 376202832 709357215 289148956 362439576 405246154 408484829 925307511 939665295 100622252 274524699 718835973 893356813 736849705 805488286 801689771 892919759 303186611 437886135 219492640 617597383 937303774 945783508 646554148 663115305 839721452 973105257 86237027 547825695 550236084 894892176 978332877 991261216 126724974 205616654 767502851 923100975 765330940 961844065 204395623 479917885 228786952 968244587 621480787 760862922 238073377 630289499 415313198 500702839 251821663 264166979 506686708 608742651 924259277 978725849 285470518 958976022 25440105 331608056 28065306 610067555 271737443 891490502 867383123 978076132 754777086 981155944 49299966 283621230 258246762 379903152 552890403 938461353 230832054 630527472 273877809 926572430 208194494 998147469 621156281 916048581 21503997 541445030 553161896 665938622 180613582 329676363 796479478 940594931 972640305 985437269 638508717 785872222 588161140 759873088 193264933 311726281 41364168 716805445 584572667 825080410 880706467 997877517 670480604 882719029 257369776 603461050 112216471 780938743 681463364 968557298 975958305 984973715 691797104 771545054 436891504 566869459 384249245 960239229 176397041 326445117 336785361 406470419 465143318 501415689 804364163 984642946 907916115 942779388 453621130 893309430 571681254 691009333 626429049 873686788 320716090 326531605 569902851 888419985 152280050 319324124 887440966 896969777 336953980 990712331 990407245 996885514 915187690 919063690 211949852 836437670 233066964 416959546 851006175 957100915 171215069 919073344 785227680 810098507 601014811 965523947 938642158 939710856 851145340 912255509 837213934 901363033 950259643 982143822 591315459 768274157 526733679 863709030 489375061 603611036 487570763 755192471 304344688 524280211 489867901 701953410 252235295 897348206 446090885 633977525 843575096 871772141 780788365 887728961 143902121 479954622 751758622 789180329 213989450 807278974 938170492 962576476 42485173 972855446 56301494 902406897 149769062 589751500 971887307 979633998 288620587 565316711 225328348 824133869 867019031 916120247 774152935 798766843 681739596 776048218 427265768 972029741 731400586 851911046 421463528 765039473 427443991 737254854 938823367 960238071 323044057 406147746 174451786 401310103 154702280 317522261 111828936 877743337 993257392 996781741 292716127 464357337 388805977 838933456 413013968 501379586 533107691 680969745 17973286 794131282 774343844 805176783 453289567 759720581 850440530 892959588 871295691 933746685 403279990 691970659 827200351 845499833 632750446 786453517 77501329 851977291 718126897 877789945 783032087 796472123 39455115 253440560 966209965 986848115 569025832 971518435 472739145 825995278 133392007 380780701 996969967 998158088 753799095 791628361 749348218 875592989 11502601 844741623 981173888 986930504 637538709 718540060 212840042 995978669 957128139 985347901 264958980 862487319 445205517 681624278 733085328 804002434 264821515 854208807 528197019 855198956 643925119 985478752 365268269 614895088 531249249 607164472 318441840 484501739 909224475 951833901 125528066 970824167 564700746 976313814 671951385 994691957 708418747 919119441 704896890 757182413 897286258 928474765 391549727 998635416 290307824 296094446 816229562 816715562 445901619 687280582 382282950 592342597 180105905 670048895 414145989 860956145 804094030 858755411 937694343 942417996 789569994 960539028 177861668 708213157 710615481 889518496 524035276 589320864 106339365 930659678 981874394 989138115 495276417 808301106 541061251 590846618 314594855 684036991 516293572 630154998 114962730 371530791 561794354 602488737 604666021 903934583 729476029 736005298 813558977 866678696 507353267 777612919 144570229 968586884 904082413 970689710 683445914 857618418 454617043 752956345 5026755 814604703 479939735 484869631 201955713 244375137 562892862 883091534 293216529 759920459 835760351 933685338 219912581 316064026 228520059 796157640 944969420 955563835 67644556 848727906 212110338 601386834 168482427 662184982 160540596 197873599 726808632 857157457 818056071 853401479 495310953 714882396 395920336 401344399 313515057 490083655 81204874 846412317 601479756 834042858 689716016 703749744 572642648 866575791 646019552 667430627 751195576 773434154 415823204 531280724 815354900 824672843 308783355 448558191 954390602 966263786 323386604 883059675 968634519 969809420 205765147 234382608 950799568 964943686 368653501 748352849 409887632 980018779 121652965 455069936 795730632 833860750 760546576 920068571 186382554 203802307 445505041 774487013 628165034 951006131 632426559 945790135 920287972 975554050 787765703 844263325 381714039 978951694 720729325 883184970 422381738 456221011 216501372 789668444 335987855 662261427 968702691 985904248 821269185 960134702 309294917 310454367 306136640 732582329 800551799 804818156 995005920 996173336 136861339 954528775 304404157 529382309 493672765 533192900 84773974 854640772 250963772 838678763 959319650 965455994 455740441 570727962 160452866 366021382 191597012 984544647 124323227 839861005 214660127 391483424 614679497 932775182 62548374 551293389 476006346 879934160 172504054 296387879 472352042 833689543 788172927 832786247 834498362 959439279 528042063 810709423 456199461 461671252 892427785 972419687 85913560 425308115 81518197 812516711 903031411 921361869 999285573 999293266 635302008 999849221 510266453 604234932 781309119 814168929 147022056 575369235 466925098 703508735 147692430 812826037 140347884 470447174 720153433 985682339 356902196 713712977 535923712 541921033 713002427 771390622 77797893 459697596 833233859 970505973 862680302 960208706 26421145 213765419 575039671 790515471 420275446 864821346 91115924 946285565 46710429 742376703 871682591 872579585 384512189 902507146 691062153 912240291 836468479 859609832 985908657 992574382 531969281 719364994 555352269 710121275 83573776 745260399 14877071 104214913 613836335 848061948 607994359 743290357 290346694 790107610 489653584 719093672 366322891 439232110 788964361 906278068 814238009 989098699 467520980 561341509 675274938 874587670 480044280 613197746 369108220 387286439 767396531 893728357 689049043 704770705 311585705 684641768 800644906 990390357 920045285 985984810 621784798 785935512 824661206 925930824 847973426 971911868 919114012 942672838 553155792 761617094 166667082 419256824 665619586 852561733 378318385 837594871 540722777 705167136 974842798 983158454 884195745 919906117 430926186 938002005 56152929 949097700 861161293 942007870 728270615 890885525 886730130 966444596 983070614 990225222 251988001 400292195 281544375 389543468 1568798 473153758 110919167 452330615 25049215 130403304 671818435 867772154 290299271 400315733 980163458 981500000 177662244 921798949 836696238 927784828 456870986 606999013 398659385 787707146 296622049 736724256 989407543 998396730 748983074 806707509 76519967 131106852 942222698 965732004 104840971 938422063 684790891 954340652 381973112 792617037 409353072 626627298 587886428 833764566 106037097 840350987 344178979 680752140 438170997 721961903 507630881 745229170 309141813 317501686 46276459 395937010 569714283 969823255 740657176 808701641 129577480 502389626 87609162 719876668 893576298 897517509 331929686 504601531 117815721 652321145 515132069 725778246 799082253 873575080 309531339 865230804 661434134 759098321 236666667 581772474 984680006 995890747 49050287 883445846 8299378 324803106 116406380 694234906 540172559 844219455 276979548 638391428 444388205 978112965 488416438 724793292 803718406 934930878 701954942 768364753 294449693 751436801 204259109 543365691 288709884 772138744 362268078 520624230 485581444 545158002 556703024 704347620 175006244 549422810 198829593 892309875 314715776 596047739 455389222 852570205 749497057 886184558 830086795 929175203 592479640 844668493 118212081 527094503 119747369 574756924 674775444 809067998 628200295 636064273 476344283 761418496 295691418 967010399 502921065 519978989 436124882 768188941 312761429 737923924 339558348 364348640 363872029 795016427 737869536 804673395 555862881 709514226 957149230 998207264 820830563 958729801 489955367 521184779 222544836 231827392 536247654 975493423 537264512 977996246 760246018 981582704 786980127 810840690 21406083 115761879 940442401 991092550 550914223 631236362 665083798 940465639 858889854 882191836 550312436 748752706 372974495 404118207 777727749 785652668 114545569 863259359 471256371 726552651 336453266 972213333 896198231 929986492 840637284 986719599 146719264 854355520 220865336 394365209 599417435 739992357 380913427 497763006 547477023 764233030 252018939 764748264 313713242 480087603 928692112 947582795 333899196 726103293 841597701 970765591 820428111 866301895 787036270 830413044 210213460 595673161 223626577 516884370 95394431 427735492 569768579 776465475 385418556 665343503 688857771 735281191 569515708 996967397 44567083 572235891 322017840 905014331 948964599 961502168 105203745 916502640 294309637 837212399 911738678 933072729 177418150 406468439 434394548 777447218 137107865 857813820 862870759 935138844 268676082 886079855 408068054 930091532 167817234 959687181 889594137 954402998 952140315 987516784 722510043 977142575 332179272 354287702 142434545 985443869 547754098 791529001 830020775 929483951 759166871 835152578 33998001 249419770 706276274 810666386 281377265 856771885 253829794 394170743 216787361 451962045 736273582 877691051 141218355 591879169 473355510 546382788 955794778 983924424 871115566 977956940 239451956 687228486 681615316 812428853 275202613 931160729 144861346 992048067 664333764 891395905 713356553 828869687 474508721 860770866 256989867 546455973 617063430 847959475 911092283 992825305 281377010 406631658 958766943 992377812 328231271 930589320 589351929 829241352 306585521 623544065 395445188 967524085 203035394 598402845 198970802 644969864 50678678 192390030 993078621 997929855 487934412 765481488 678182453 856968225 905300410 957064089 158442845 286915015 883599781 936859851 872312346 980834936 145143114 152008964 36707918 812310106 579042692 909270544 630479776 919780339 364089549 966540116 334868775 774055292 709108577 829515468 452983857 660403559 655638795 760314986 670454448 751113011 667252022 991177049 173389431 453848786 200818072 992163532 176599711 669384391 243770136 449784774 919366518 987570283 760609121 867869070 72172172 164075981 236192238 579707756 994922393 998066626 899614873 995178955 480582101 633589697 980040942 982793757 100730660 945635133 628686266 967264968 988793615 992407428 552887770 809142823 691807743 964127772 736258458 744597889 111196300 407165496 966067364 969725109 687231467 837096380 139788389 946371434 337554803 796588983 658059096 827658466 227535400 396070950 453391317 513986588 971291911 992577325 483386027 499586394 34831599 107372769 683790942 852437805 150937561 677042008 733690243 765947255 473126618 741342394 771870263 956695462 707889175 843872980 77855877 973413980 645256888 967334127 410903483 520756012 234559223 862265925 685641138 695872454 351377075 589718898 816564299 855270623 853604601 941923541 181201654 624311134 518148986 921272989 609831033 635952654 606150002 686264179 971471835 980656111 610601002 654142941 211675950 847614582 751787947 914048902 973728282 994890808 911118796 919393990 192902350 330084582 935752884 979611457 278904371 812647406 854779015 970290302 498670595 675406934 103552142 542952450 617121122 776050615 300423843 611833878 795434514 827817974 688706407 874588659 115098940 124166469 13858301 13859465 901890365 902297028 178338744 197652890 17628499 314396768 637923769 677550105 181453659 369787565 435131656 449206792 852293142 932216312 577184923 730964598 732711758 805148067 356926557 934692992 247325895 836102632 840512107 993514155 603558737 617483441 551891087 867459154 266172032 854220941 357859996 997041142 80143387 915991743 535893556 672575572 103654855 612732831 581346772 604157559 687357793 954064770 331179251 957779567 81031034 739299713 403067994 895946915 249008608 689676178 743740095 936260301 377662715 819289215 667706677 849788096 254497493 514600794 94443048 312398110 778622990 982988561 53837931 505719524 412020007 870011699 531877616 925875398 826313222 879544340 546741625 548839298 975382423 993921597 625802885 992596354 68676607 982684311 837986274 986475238 347704374 876496381 13395729 945530223 902861780 990038120 24678446 891691836 732318105 732505760 207726386 553799215 80942824 296312791 309023607 790587050 544525419 671452319 96067008 803649804 465687283 560297394 206352610 601481300 834901465 933957625 66945310 325759133 394468475 593686414 812756868 988185725 163199551 322112765 839444787 929204153 29195947 454199841 494957685 874621696 259997279 303631370 130103428 247941796 257097708 851031150 746587267 810738211 372061728 813044925 117730130 309304194 64563944 73927623 223896005 885553545 819907234 851816938 319256581 660423514 746180861 850190474 376788584 661517084 981321415 981750524 238157890 291249832 885530863 968940981 850568952 934331309 154093497 295569558 620586219 788800622 836454012 989664913 690900563 923652437 423438146 855746932 187570624 325872438 260740364 819159273 815299664 965793998 900679605 969224301 130419058 920154996 277342071 583294841 153659738 641526076 190878805 766984682 454720608 538439199 228216680 564543982 925377814 953415420 843882461 980585927 966833235 985949959 918798021 952654137 343531514 381324424 641830007 842600171 954834867 954902933 166174503 305403981 321850402 622009019 386473999 933502562 842759741 909761246 941466250 983035722 926614980 991167718 675219714 915899905 956335686 981306135 449351230 878046593 21627116 462385066 8434493 553394431 935828649 971399828 670526538 695391809 784765616 879126873 700366068 924844217 392311488 888343660 256927173 700137168 102035345 133676957 299907359 379599874 773576061 986120104 309932639 793455619 191469673 246298792 609359522 823510348 842208096 972509618 41185805 963282893 952160471 968751835 445807238 756497030 943354773 949713541 42340780 525517837 892780319 986791783 787811942 808536339 894104117 969396388 825365920 840966817 959316541 986498762 693055025 779713584 564791103 893485242 549721435 666134741 895166686 957604346 719439819 754026749 797660037 866712207 784513720 939608770 256898733 507939822 692551962 784743634 719594855 879235020 40410170 584126548 117170718 492847554 721193330 786549525 191957861 569423137 695521816 937562088 792168572 914809486 938856042 998994343 469274500 472992474 570415779 651201686 316276714 406615682 957150465 990033277 438548937 895048371 885086833 887989809 311063495 565992275 900344856 933527488 605559890 951352441 705757289 839004721 590309606 686289710 703242136 736867893 7967986 638483459 220106952 982452850 330918133 449197602 655496852 874515654 819094629 931917676 711992781 918873239 881888289 935741855 612391710 804256712 932966595 984968749 637042793 725961511 740628859 803587188 474584135 521645492 138632757 614250191 539001677 668018479 402641184 752606440 665770299 846490131 76702352 295008418 286804719 641488640 904294359 977783588 48841718 466818134 185836917 833153521 825124676 945005714 606159268 880061360 300570024 439002588 561618608 697281449 441313291 841808443 476487363 921197686 916364395 927906056 909581047 967328314 833171746 991129292 866042735 973211646 670858582 983570889 701195276 746724868 353089099 440059295 769299327 935174433 589667828 662200575 528406147 662292737 695231267 864095421 515498275 522505793 599276335 817124936 747805006 924470022 23387139 736830989 803430951 959524365 461914733 599116398 14329630 245293586 107798703 958801918 102368778 376691692 656695934 774596042 471824941 899408062 57132003 274134714 579327074 678357382 906103818 918750272 367466940 470306263 736285851 912107100 859385210 947199054 614992750 712132696 561517773 997683980 41854550 584596505 362197586 856360784 567006542 998926782 269258189 812787139 275815269 490560861 359865710 620412782 340457042 476194521 959615059 977517410 881409830 956352119 928442536 977454052 70709780 97113714 476381178 865744788 77123070 540539873 791676896 933336417 268292642 532964221 162875045 743213223 688543730 819172476 161138788 942974664 273407469 830529669 445067214 460318103 180055899 867589804 828601591 907894333 253588099 665683802 991239678 997956850 405212180 907170877 2488941 647942565 669466722 852139787 701238887 792082703 530860043 822415543 341744200 487858634 748363344 839960636 196805239 935826142 491340057 967890531 758934527 791139958 68269308 720081349 147613011 791961794 795772926 895702103 673744323 743946630 444962778 848417315 204084289 639673038 812315046 877435419 735233747 917309896 794482136 892820240 20882816 920412920 633788792 710359370 868788468 954524443 477529028 983648035 181006159 280016269 468492826 843679196 119119841 787117755 273457514 430413940 217861487 383366818 479672646 918868267 973786055 998079339 272874830 435399447 486289176 595460622 289212084 938146812 154849224 980437876 749492042 845236844 824923419 860889646 280481859 871080498 874948564 904602517 441873605 589509846 16963349 450489760 812391331 985225387 977618453 992194026 864507081 943903600 588743135 987218919 61988726 430229194 54906789 391029663 508176283 669993437 887997601 970111054 790391459 801020683 426693756 981821519 716735098 932746803 823054637 934093939 203485197 838340031 510019345 710775647 130488233 975485219 896904741 905158504 277352614 952975799 818966024 931045779 610653342 758324598 617931756 986378509 359010184 441817812 529533729 981116319 602995687 853257984 641758155 984473518 623767865 912560159 673299561 889402523 180776661 579246278 719304223 804412709 584291050 869760421 952341355 976750328 202414179 353174874 923817508 925878007 958385191 996337826 874029015 995856201 219788155 690606649 528438265 576693905 221927365 393173507 330771770 447135639 583940777 804278744 4615091 571496669 215621293 272051531 490366356 638541391 726240869 999793594 567655878 838094376 236723125 654628726 309327112 821972216 903725941 908567136 609442031 679773830 91797907 697101332 950380616 952764120 744235562 929032936 459922124 811489382 524726094 889118027 96102787 189283100 992711717 993863155 83257476 965236394 46911527 647160715 920385373 966891335 120031704 409056286 543815590 717657404 465926842 704474954 439218495 929586084 954878976 956000745 569403991 975428922 753028308 893021063 204106821 930982768 994013494 995063829 46674420 483699083 476253052 858957444 194382594 931638485 19367716 883671488 947678343 971625638 571888464 697962395 838329989 898454981 61564609 368290511 892298984 941422426 974712629 998611319 481796554 948109035 8491556 459155329 708190386 934970521 3337353 63993878 774916381 832256836 77950396 82960285 705135066 891390626 375944188 879470601 70106690 397602212 846407723 953223118 154805074 703501199 223562484 448263047 18076356 635115758 998171306 998993607 829570886 927723649 807159738 956606590 356557317 559323130 752810800 754444015 550572667 818802079 707447441 919598271 232509167 743825996 550210881 947858960 720623813 751471076 526006789 938992231 553339870 714949683 113679573 932713804 184163783 341416597 703037538 974365541 87675449 572410915 173490796 862156834 371022731 944302813 118102388 604936864 312605592 893663725 276070411 761195360 165264515 637572734 892053549 984313833 502926238 601057929 784162570 840418646 990841008 999093008 685776443 861512731 917963136 936518831 668992703 954541758 21095406 393154308 198553244 337333197 59505328 675123342 512557974 700585187 19861627 129957003 626680854 660324919 693710572 737014881 868959231 993267968 946651927 950160969 48085147 335237835 863044923 989271353 89593608 541190266 166289874 937773238 562983039 805415593 982849350 994187184 119533898 522694004 289452706 861001888 468456441 871803198 534517052 743018617 169520077 936060004 220060969 902715504 203419196 796250123 888910165 931062666 377468137 429181062 112725277 222472741 449588112 539816209 620354986 686291429 27623004 953808696 754254515 919494310 213437769 467758465 805293788 877247304 245579553 277286740 716686453 929720554 857515197 935138030 522975164 679078939 724216094 811614056 556877852 916436632 886721714 936192164 245866123 717305283 285235252 818130863 948068717 999628070 442864868 904381973 253093805 537016634 715205685 898433938 628993988 757737787 671380097 681994100 499333510 643579101 577536742 920654717 947547242 988107023 501592721 960356744 65629507 511179164 437852860 468399161 331386665 913467916 981675235 992988507 410286359 720635811 486264459 864656318 589618605 609007217 31795653 479592080 931281856 987529363 640718497 921877001 55369255 915955509 318846941 331390546 277783391 514235160 52537981 627496787 421336527 679722966 452507634 524737121 978690916 994561128 452490026 966249246 619082649 931660419 514868607 612695358 780329216 819368879 23371883 235549535 530806852 703947282 504581935 699503351 879479587 939976651 885367012 887277235 918955561 936244072 596243709 691123865 925901625 946378502 338101115 640380439 172230805 617300686 27549143 407058529 922436262 985043080 943945666 996359456 45288007 154681655 285971789 665663096 657048060 996187841 601890024 996390483 279939196 445891743 676772790 909511452 71036021 863217939 306205191 704450650 497539923 942897697 990709561 998038228 316660922 369897452 281811550 747886884 55083780 779682998 785994287 802194144 465269729 983503224 450787606 962629493 90886076 429218263 777244613 929742592 926775897 991880112 176898788 831816891 359934850 797239973 268099172 520266205 109162745 146996943 66731013 597213105 682551547 940972206 964275619 992867980 34991189 443542482 374757917 501426868 985301952 986007612 608996000 978105303 683999124 843841134 652969272 662239321 485925462 633464649 803281150 898983958 85602827 721115663 645284868 671285706 166918471 615779469 165299516 851796443 493076964 506207851 554125046 842832350 983012588 986747317 92724699 560490902 979218668 994494801 513794695 673902389 231085622 976792016 519485800 730530481 200242786 523081213 883702905 959708744 524293667 825548039 453618744 645150529 483137916 594534913 101845434 214406463 278074132 483764759 976685597 996645515 491937397 578532249 555722679 835078076 61919609 932037943 110768337 542952146 599113456 774751262 709870937 733463639 356193398 364668717 583204870 936993067 991560217 998523199 185322819 607877119 553731137 904940040 580112655 670502480 508778538 992315573 294103689 561088670 406958426 484044882 267898149 444048269 218289238 425988654 911552360 923297880 976244052 987604397 265541269 344170689 654886412 771284449 249783150 808628917 151911290 204499275 230023324 990738308 793557836 976005921 953388654 977972035 706062615 853894141 418472924 742036967 225760854 876898823 285220364 893514214 773425182 813544551 752414382 922975067 924796639 997030605 249618229 386855196 768201569 925883262 234615875 508916776 407745709 675414159 563200070 902529763 294787373 312324970 828092237 848971027 767702590 926978603 832512264 970283530 327976671 481410407 162061013 961055260 330144979 689236482 920939881 947727248 87622115 749733148 406568386 735487090 352106790 356107573 723271050 747800045 985717643 987706263 639987882 716274692 38274011 616742492 552266379 851256787 77994878 717855338 499368391 976543992 754142863 924678711 465187942 818012139 941684336 963227793 659667452 791078016 512693109 940400450 109429648 997251447 519535733 794976130 187824485 237204407 223166022 760484322 675193144 827131545 227504070 892882501 753826968 942277756 154167819 272208540 285642861 393924504 975665334 979638511 642671868 794698614 180272926 926055623 980850724 997843441 407386076 764126525 245694240 920378979 963903515 986387361 652853290 989233752 535055205 847692340 542956681 970986763 994019276 995758793 190434285 767059007 202010986 396631823 142496910 641360565 672899289 694603349 997557145 999737131 144866220 599771355 473809214 945170427 837021714 847972719 552753278 996231384 859128801 979908815 339429642 963187938 793301807 970220538 395946339 819334345 641053623 932175759 645383999 834462605 69479443 307810224 633562169 825038121 806843916 926487283 52521217 236129982 165523470 413796649 309043664 849674031 146402117 570457929 251510129 428753276 616913161 674682653 458686545 469903627 435520195 744027106 345765145 384019591 684567368 730903932 270951983 318544002 654792758 812569629 751862893 790834047 249911246 268668994 926161716 975004052 966596801 976273724 483114245 729219196 975423829 980961358 248595883 381830718 552680149 647134674 827632528 948449037 455412415 867554376 98577104 823909740 783363897 948267197 238106146 944338809 941594 896622777 667108292 993549727 886692078 973392595 421670309 973035381 932914716 996627850 51143163 605768852 905258128 912154529 514365271 864299430 155241133 184292226 605295747 976718093 904273965 911099508 129755065 336688994 136535838 517584215 355979849 501916725 677455901 757058029 519673091 692089251 521671457 935699173 457770595 880394602 278274125 582006145 687707399 939645330 2629743 349001405 6556116 230194964 559672355 923937473 400004644 956556975 286958302 365044287 419124738 636743399 219325817 664029164 528864508 601973605 769581860 941404891 778002552 973272785 210561632 624020110 915798059 928514870 357205545 387715625 357169119 754621098 910764737 913635058 266798342 433629299 52578782 976760546 450927221 784524428 711607992 913270177 520964880 605120154 998137508 998692350 277957164 296058952 902275891 963525525 280176469 670097149 725137011 874972081 343162809 567026749 670332868 826670530 287855212 976335216 73498838 628847834 171417979 755553607 659183225 909415110 165067458 607097117 640640525 844241872 10677691 256236727 716824899 914760487 443383540 652582939 483644502 949726169 140931244 851957566 768926986 824144753 771926289 842506270 934361198 983897898 822488104 968446261 289133523 624876945 182392128 674719967 127347138 363390556 59189879 529362468 125183955 200639717 14520249 882613969 382771992 985525260 273998754 791189759 366799657 597038882 256478724 730516297 193570817 676821749 570075940 723694128 424939760 606215252 67952433 151013978 825829954 951292351 678093789 943802747 668457185 769186359 153746697 622894028 610806348 719806316 396297220 603273627 557290519 986560985 746696867 798906413 516313381 992639797 319797791 738376787 844181743 850562477 991822569 997513972 453209599 582669488 959033353 967438596 742742501 929069582 87136653 505139981 501919137 969198275 646897149 814152712 47494800 560905875 124587182 918098946 112621648 884976219 734018279 763261686 265153011 522450519 715271268 753393430 12947323 662207085 402288186 922821239 320695852 822023222 902757521 999137147 639710567 835630387 914210901 988655387 69739546 359280688 581149243 850179118 975830369 979573277 433377730 504648475 151434326 848918455 884411616 924402803 776699605 831598231 780298767 979335093 220945540 956587797 383198507 677079702 979354754 995478815 616390371 917231062 828779314 893302888 684559564 755908759 313312386 557206275 149250036 604811155 534024665 743355111 773656687 935031909 246138295 706692502 965561423 979934722 85621314 508484685 691602679 952831663 630789184 670829810 43531252 960918197 82100977 226481842 663340450 894378520 742451418 951564179 518106313 943306126 642834278 724826700 446105703 826885117 514403103 915428236 855424262 945066478 614493094 968260464 702339829 804212580 564201461 738075875 169031636 420359332 197526557 481341691 822397400 927160512 665261040 808523769 755792842 855914520 82316422 92776184 486342024 845794700 241563090 343560702 320718643 358462172 715915041 869319098 54369056 55535443 864686060 865696682 317726777 932246468 935607376 972019837 108103464 648763406 392497450 401382589 199463461 425763993 211797314 394184768 857236763 987821622 93189308 456536421 995403224 998600921 96938172 459021114 777133648 869762888 741670396 990453584 928185077 938484592 86672624 534063296 641057599 727131517 570208316 683358220 821246361 943384078 515072695 873026130 680687685 944095463 83254618 111445614 789144847 965009397 270932469 348881988 587738067 849795965 285967934 687169473 628721773 896206245 140604764 489228788 638278694 702489566 858645190 876524944 547315697 700798791 23607625 131765000 195040729 766037099 288967041 547835719 942530038 946150440 385940014 545023297 194458931 932184229 315595015 605553361 64978400 244899568 76608279 967790429 799172073 819449779 233555240 355024867 627002247 859278975 518844846 968657168 213771086 635703861 828496762 865105052 840547923 960505374 133042592 649286056 973469611 987793555 875409609 972570869 421749516 624736408 77401250 476130944 905481564 966505297 817349777 979180038 441146731 630170829 364565204 988806000 183328090 529301267 502784830 589134555 212377805 932990161 178964343 569903896 644220553 926974643 202934424 577616331 975325572 975639184 679238870 711553203 344376673 879503433 830461656 898839379 329234730 851244470 629278900 799901130 764036759 820573807 95801275 768093992 507522734 570405609 678092702 829213061 105134676 946304145 989297885 997969033 647648469 656195005 677869355 938750611 946680759 967286747 567861765 955361426 347153918 720611464 5354992 561058255 10104122 346500045 780923117 898706689 10378421 652025689 605767186 810752387 334998777 707300302 609578326 636983751 764493051 797586524 739332732 929213440 202998937 717956939 909434859 929972457 143064265 570960960 853392773 956649336 664199443 834373004 246816922 687132911 841567360 865463186 990677357 997297793 13906047 945097002 306598925 412556022 241582868 293415666 973400201 977919299 319277306 796607661 489024080 931147730 435257344 940524213 883187238 994123004 260978661 346360717 979511554 995095915 212884022 868395492 686457683 753809950 874786779 890603580 716558968 889080612 115794021 463317820 371054653 859201264 656567425 976750153 130082160 297596460 69126361 983742646 480710585 815237980 911481404 926464160 301848033 600608850 130064040 404001851 487940569 989156643 777521220 910940026 869940903 965085467 937089571 953387775 265907865 429937679 487354408 838658669 56618232 864326960 503797800 817600855 366551631 710933716 379504444 746286821 965284507 991207780 161882789 285464081 594280983 798040253 908693414 929357244 223902417 428867442 529652233 696065858 105928626 767576296 923123327 934324352 695128226 950206769 648270820 709854876 735125345 892739923 367929028 484667942 278996587 942915648 756261460 936744321 743223488 785710660 180890287 779506574 895788819 943316529 517840302 741478432 470210859 956703872 649363676 785961161 532935857 758846069 159732652 258147102 808310052 973191081 29059374 176406095 224656354 804573188 426488599 722267233 516953951 878601993 233893965 774081376 901058923 954218025 393505085 509564960 311288110 554871733 472785660 484020604 212783840 882196256 454566193 647725009 960287949 970949414 35482552 774471127 327184445 523478960 375177588 619662856 987918738 989797315 616097153 682684381 194729707 258502876 274569293 401210316 823226102 979444814 550747583 608525385 233484691 780926902 585278459 604418352 699350274 996560311 54755220 336526398 656353669 734044199 670678004 799052237 774419370 908267939 96653558 282582918 447458834 547742300 267575215 640935443 816942286 864257024 104391104 561906064 322425876 549641925 489668860 506092053 294939374 509427403 45766362 516909219 60840183 679969880 455791661 532816737 51373420 764362904 627146781 758306307 965743506 972719525 254162530 957195082 974246679 999340640 132651353 738616081 928028467 976832515 939568032 983481840 526959151 708826915 70095861 843720211 125023432 374168954 670433922 981659390 303350911 461487411 127692705 625814730 469767732 747419422 801388090 853210115 270913349 689784252 383596053 508468278 278122373 516523926 587679222 677305198 145253426 752789012 186884718 392838191 54533025 588117001 292658553 496919747 968883724 990035943 954013978 971572068 718929159 786114204 294851595 567147887 485703037 889924830 680349350 690661373 554848092 961403061 629453296 879544177 310291288 433080178 449989281 664265443 618887976 686885473 904399769 953003979 876047836 877192107 772582744 807542967 279449016 646229453 534056688 981923127 5481245 454389526 435807144 465551584 402426080 888369072 924064376 936814507 966594036 991462969 838684101 999131046 684990969 999843364 737215874 946407749 784968449 954467359 842987986 897316451 352128954 453493064 266349636 598736196 897885864 961677515 31073033 365877002 543874842 773392247 241356368 501552035 469030880 793141070 983231800 984625554 693305189 751349142 303020033 342255422 758958675 785137461 190929557 801208458 349607315 366811999 182595408 379884795 736535888 754453839 103657603 514361057 314541250 525000560 901359178 924901005 676755246 749138632 507353273 656323199 751757910 903951076 261910404 756425360 350617142 566382051 738937902 978942973 54806445 313089525 618692710 920177428 840087294 928975617 762810070 923040641 233147921 875582466 403583473 587393955 220734296 865249361 493810695 957969964 413537691 674871567 409835242 568196226 552920235 696302309 425702826 982926261 895910911 925189778 739782358 762859294 83108024 791341632 610365285 960306267 478464637 525067736 634943390 727501308 658392914 830496498 96481742 168393804 815436787 960492498 260635174 687892899 698358204 932792033 786454010 967745399 4252051 214055875 624911132 781744166 231591800 356408065 225973017 417714735 92608475 153891042 399221792 833976933 293537970 676307085 901858814 961481098 704727753 952320331 948380457 961921349 721949846 932336109 268933829 548371331 634323867 767192805 189147091 395336908 214524695 655546577 49964026 347330498 127658470 929526417 861562259 889748675 559122124 716330666 170597649 606010312 188232491 472374654 61874246 579586710 421266040 986731408 270131972 959744499 503105069 791239078 476203583 645682253 807342842 908663042 638890352 863555630 287686754 360685210 530605880 858840883 562394753 990178269 951041898 960435325 915120747 929324978 570582561 888184268 706164093 989109754 348188310 913889811 708919622 853509499 910650146 937912430 981149057 986501212 59969077 765042319 905012394 944244576 887897511 954591862 93559890 139134567 5533767 947801744 95349060 666513108 141937069 314168664 816594740 930635301 559919188 984953286 107092672 462647928 345411682 960445894 951713971 951979353 769434298 819620468 566953744 913011412 607065817 868454355 840787580 852409371 285087453 760710507 365693583 796175586 661164848 707688855 63301863 385319596 229654479 770240166 814300781 923019713 992760076 995754798 278137603 621352793 132490404 456061250 565484747 818022360 207274515 494284710 896033142 958549905 26443293 425436581 103586529 688252978 739914433 884360486 205554950 950484199 654049413 776644652 434627009 636473420 351634296 818913916 583116815 869620528 910991941 968182453 561876934 894899731 754167130 898274034 925762270 981909286 407720971 477666622 682576487 943872783 722492822 731675846 973453673 988600781 56319275 394126879 295350632 807091017 531219123 862000063 255059799 872615325 311305122 935762230 451560374 764386638 45494979 388687312 291632886 638168215 549210513 656449889 205765076 309660158 118222847 655834289 922129577 990740241 317812076 855374815 783719452 950568013 93274148 499504543 657750066 955213105 290544294 957236411 356544541 565394526 758746151 843065884 529668639 893109916 35585137 758296720 528216626 954729649 447588064 656628339 796396546 796676355 885116519 959280094 369306502 376799218 487774649 768131683 965115247 980864210 386210992 774301187 650147926 951522111 345979034 885878152 535940510 745402472 533373262 788301534 644327921 987071057 114831057 901208179 917068727 921188978 992975143 995612617 975681945 989217704 557497851 647696130 306246209 740270171 427918192 483159460 416655290 829936685 491673985 837471401 203768842 717205116 321729191 617140041 108245332 978629151 767199121 797511668 423855045 441070136 600037585 923457338 299790969 428116225 274599522 509578948 378613923 910721874 364408899 742623758 147719736 577271656 537517951 686557193 598844737 748984545 635500454 848990624 186399785 343607678 753108809 868710997 824758792 884846177 807053396 993235551 516798504 898617777 658000911 743988964 324744926 630123944 896922216 978385769 227211715 945371004 844135286 892570460 792784366 985189274 54630457 656812912 256038612 419420285 780006691 930007056 893748095 927096510 605088370 760984277 880711552 894410708 227399626 470155540 174950656 768965294 370579693 705098748 81570483 722352891 204126320 984103232 531880404 591403985 818789500 872908700 198182602 661775626 385106106 959211907 221518241 683227830 220898378 941943440 551615874 777706351 621672846 925923601 867044653 895542179 34861174 75197649 839438322 909142811 925052844 997375403 700421340 769202110 323538183 689014855 796998037 867957759 905424657 958866140 830694050 991804389 53700136 718848353 786467003 883429134 577137962 820954282 997411183 999751410 573777495 710129334 932561193 948249339 4863282 923953222 330509150 887414954 28376344 629892275 660417631 786945414 925858851 966735640 14226133 76557490 950567288 966170842 807503255 990346736 372481256 507380596 6559443 979315972 740876947 835659110 124547291 663175764 326904241 910997079 783624295 902071991 216721302 873057966 861562948 983476627 614322856 760803055 69359619 294102150 655271636 906779725 61571154 788354327 681896288 916752758 163757843 836376691 793462752 875207077 719165326 801357944 552129073 839472976 768534783 814165435 421306964 514454723 526142657 620578228 177597219 849399745 755655561 797237292 77552090 556603208 324463799 421721397 680325252 680446028 978751727 986771182 662001984 694738052 366721680 698926891 384826319 648138212 174608449 815767289 431745110 599498594 511624737 956340819 142466901 650398210 349598222 424472707 867086254 888833878 330630642 890044633 801259117 875205538 536569818 692817829 241432937 241816914 225848882 286500320 693987209 947651627 152741414 712067150 438410672 611870333 984826885 990943115 909703054 941438883 112132137 937051816 662758002 815266544 299928744 879255065 251545789 515485621 469383963 620048824 373721052 992508684 845238315 891441034 323653105 751134689 444459144 967842132 986675767 987619130 57471641 854454208 142526127 144032081 909104866 969793601 939353638 944419154 63244962 153639823 813768386 958535676 544256907 883145709 991523265 995552542 581050054 925350140 475634134 567909108 457343642 459892019 759624604 810201862 407519899 809245770 662184002 766021056 740717598 985888104 551894353 679455712 947010832 947071324 149851536 825068130 238317123 922576066 237728720 758983470 448946547 499745638 328073013 341299029 372668670 935483207 426703331 938061992 709590693 886435705 627790051 805497151 397971003 703505546 150276905 185127395 523019362 943143408 393585564 670831281 263098715 663175398 639736467 988869817 466472149 498003633 826556462 866858320 406285434 545178689 42777169 277623875 838603010 964467687 996274336 997505805 347612346 642775068 443098383 897299375 260437584 285383819 760577282 825014467 472517476 994685516 421520015 765055831 67814870 264631644 913656479 935271730 25730573 420575029 517867359 789325289 229631088 456808487 239058206 483750880 902642154 978493004 728328668 839405704 66758217 152713366 418737893 649889580 464698157 796857102 590048815 921988306 438026743 872582185 400463132 540658180 367223752 900746377 673545370 757043928 772252407 920655635 835179169 953345266 225387470 302355767 959393938 989617223 140874590 842994484 964848553 972667207 198708849 469785959 884997759 941126296 959369411 963923571 610792118 725392639 175299885 522648467 768120715 873868579 320271536 446039379 967440118 997765458 532680141 858622321 437218537 929733111 718025010 935530636 611263941 686585000 303908033 845570988 529427180 774234987 658807175 842637865 686627061 931800115 804749323 947505537 546328889 901651754 375260508 960439990 155369181 476967782 202601802 812823264 879295412 994893660 423793270 760475931 864139995 876513145 75569394 182735643 529527925 586595677 364906897 916635174 99243872 941130305 950966403 965500076 279691280 431996224 318038707 965659851 749196742 849189740 192509021 608136125 296148929 586038090 389142994 671469080 293642647 665378989 400512437 448720372 529777280 947401784 421191953 580344010 205266613 297173736 899937467 922020472 739151939 955978979 337403619 777232196 165690039 891113388 749946855 965631269 86937763 713860086 128387602 198431088 692157848 789038280 737297734 811847857 218852020 434671483 944474643 979258299 799063550 971700639 504912958 617233998 670675518 748864804 570727852 930795867 251787416 518304712 24767038 492128197 820428083 969946253 575303512 808523760 941557320 952587389 639976668 897563089 62577028 199200554 833367070 902075830 724607238 907109116 622666060 711292507 60428964 816129082 321848553 658388052 400178474 923655819 72969563 268976401 814204059 944740307 628741819 709608296 809170032 844051955 952434232 993253528 757851621 798239678 493308295 821845722 667031740 796732931 756081515 986375087 857938137 914593916 916501553 958381165 414184984 890865303 996906201 997593758 690781721 838580057 283591871 687880690 949156 364413929 986945452 987530404 608282573 905542373 841044584 901905665 425870637 440522301 590133149 631519982 610416202 829898970 728304651 904992045 137012166 608481497 131035936 983386746 718829792 869046208 932613588 964609251 768405783 980446818 739260226 912697826 594689014 953380334 76155327 913227576 428453592 642000207 577351589 737527562 395170558 404819657 108459584 701760933 349996674 412108953 722261838 881611829 762900867 874612699 492068909 591161678 535775989 940511209 488729950 546875925 874958897 880365706 335631402 341196121 103796502 784476926 607207493 652040479 696429242 747138770 369648796 662425239 224667225 505986259 70576249 619284025 93680403 830780878 599636369 977883521 588898630 719651540 541581843 795557366 644907767 863548871 946258016 970570056 798286185 995727423 478453419 815951956 51089113 936811322 752793127 922658776 724567702 767141625 440817619 729150753 104943816 438055756 292057716 585736714 46008568 688516909 144500373 818683483 249957364 472353730 346486821 564919497 360939022 929258360 985829283 988285771 837687439 986455626 177048821 251582701 223333992 818683936 395174568 880706302 839065314 851899905 497133626 635608261 462000096 767486322 410500913 619290912 705642135 758197717 255541574 842131498 374622466 761824891 302595830 592692381 37611718 146469655 695979931 735145690 230230131 849173994 7902488 342586872 5952679 69497816 570956608 906081644 274345439 947024312 333638829 363580478 868112266 903440802 277987116 813652349 843973312 988996723 303955208 380211176 733192642 893870277 295498462 923089150 947139979 998016131 685342618 908063808 879637212 977334493 753400687 902008421 348739380 939613408 393894723 760344093 430388123 677652496 522038220 545444217 743356031 838768652 679340540 937654160 878250435 966725977 524591466 778031399 759406252 977516147 321038110 373799560 157253287 195466114 836591726 898959471 732575140 774320071 359011013 797920475 603084265 665902330 61966119 902973037 115709247 472923581 992569743 995342743 553666318 871814350 555145404 979558240 887520469 962710841 90132954 982878420 687963621 970688058 328789658 897517194 646830633 766079246 415309854 984146185 378285349 973008899 39659633 413984103 67598819 804983763 860206072 912807428 1849406 168711874 832638247 999358390 373511659 831165753 678543973 751737232 617207538 669218800 969379203 991970399 129438679 479666473 484932721 697514367 407248285 498129406 623332916 722193069 357609089 965416948 459884943 700323711 812877026 851787218 915097621 986695496 136109243 173835636 948110487 995820180 840933029 963066992 625547679 700478258 754955944 864188877 638147513 824217580 357433976 897721998 218085673 271473527 926947445 967071849 350726763 938127334 921694656 977463139 702466574 993084837 749392801 896406819 411091860 445419446 846062963 956227476 492558318 525808046 2424307 489603090 580510005 668750482 374533425 453776669 86614402 668665076 571975320 955613778 327531085 610596756 373670357 852388174 685895388 846864079 311625328 556406667 291344092 945463212 591436199 704576712 533978119 621376609 446291673 836684926 199046658 617700121 808123361 936905127 726465212 914329178 330049753 451712996 646824435 899371991 162285165 517964628 457335561 982432223 560869611 693283378 344256283 484688084 154481415 366626621 541274614 986305440 729632497 808529183 459308526 526673778 252194557 384847957 662491888 991726786 690011745 842084039 642381942 698642360 212673420 823567359 537042337 983696299 929142528 945944430 420733038 756116612 270955882 695724127 252881745 330431656 80962244 82176370 44135360 667148790 979433280 979678113 567711929 756131401 655147222 740305656 20805311 905511307 649347145 751495336 59227534 825570725 292296631 515578418 248064594 561764988 718755165 749395919 842492583 853493230 488956908 922199912 827084489 964949780 109308244 908902396 38516749 402669016 756126925 945780208 300215959 782306901 133767760 408195352 449611619 508056360 819603511 887115786 610881549 686240239 225879908 780572618 50272035 836600966 383232875 636377160 315660942 520937210 833205496 976164973 915208623 981409220 60798274 316492271 749720749 812432471 126855648 221789583 502618304 648597593 490058437 547206925 748746322 794248223 216552082 984556001 309474004 571035278 394993244 783522693 633384036 942748506 659956330 786379110 423619671 860602524 115362305 904499759 309230161 769979674 304102307 625574618 201502688 639237748 77416097 285628582 567776803 742838106 277085396 559213801 624706049 751353544 347457734 670263485 989878486 999499392 159142831 780287852 116198459 545186025 512160822 636078958 733668783 817934340 211205981 659802974 762737527 986119669 586216387 607560376 593656291 735480561 372778573 895231525 301698010 673435550 826756983 968933830 308473561 939545396 981864511 992094385 150729659 761897883 948458678 972014820 441706567 887727112 494953771 602795198 33040449 224902959 568410951 674718380 353431163 502185992 439169182 814413223 174100528 721691352 405454733 460633663 726124356 915663681 365646705 543145621 292321081 580991150 966825064 993459990 490404832 903184879 217960887 777622848 298507050 467656843 458175577 707312622 931367556 957469637 385452735 573181626 119673484 361255127 19201561 342619496 220395562 391404184 500127824 613445718 916522698 992527592 567102618 806578163 994135029 998334793 407424749 610350896 245747413 439602150 970332886 988439191 402358082 799745071 546922615 609741079 372204006 740467215 591936393 790924809 834513162 982502074 940032020 999330571 875751043 946467682 523608075 897021806 375895981 727685220 615167285 637011942 430960847 482663021 931589861 964405368 823201743 922902268 443633657 491682789 225674069 396927606 994935380 998101478 408373260 705384005 702829319 872328840 430426147 505684926 81458168 917461818 52823109 873891571 670659824 794161307 354541961 992345978 949971401 957403738 938735404 950905727 199694609 466835040 506187233 918527398 349977088 621629183 231004715 670439752 409079631 653858964 770003358 882501312 175376401 373144433 98747093 100304282 98023577 990558466 773513571 956385235 933294763 989116563 424276287 995298236 640882408 679553436 2886555 86194078 697628872 725920946 45460074 709786911 72749022 701365607 406487373 756168977 77949315 136805631 989257417 993755161 982972629 988391207 529377179 949692794 573643953 895658733 901305359 943795896 148490480 944844699 300999713 411828102 599491177 792569960 57353208 894690717 376596619 538619026 311812076 805539022 250497903 971064491 83654414 701893202 689632183 999023242 841422589 934815055 111004444 786718162 386810538 959205601 834000719 892062766 494478451 902764260 278684849 793396270 261946546 642689243 89918364 855206709 236223193 762490093 381354961 653238854 497103607 507096352 263000796 956534524 847432957 917914275 443274724 483396818 658503115 801944786 359851181 420133310 199759355 903134921 497178515 701574131 748906507 844676902 249703723 282591613 669221801 705871739 338542792 453485414 568821669 987957283 70185506 472623663 671496222 678716656 485820270 987767081 839848958 914254221 103790701 170901343 198244687 819857780 291276760 294169747 826142517 846844692 387883682 439153015 619366329 646743352 490807257 624017068 504770154 635552664 392099241 931863656 626522631 976818242 698770253 824585379 353326641 818603273 797650506 819946427 601005050 678294185 239767324 674193717 957139395 965805922 782802708 950469504 995895052 999024421 641960988 649508124 460837389 805340312 645682702 864153725 368745216 745669084 754853580 792290323 796217317 838561788 871766333 902192006 592708175 695654820 787370359 983525832 151784636 351645004 199335866 740080548 535005274 943658602 959911521 978172922 214841246 355013995 209139598 722281083 874238773 898666984 475577716 735584917 300848498 561265385 403346385 953587437 734485994 858460585 712806255 832241970 554683515 841246157 997497492 999753383 234886466 328008271 404013433 760354795 212849806 219912897 245568996 437855439 65216414 380615443 189662561 193323743 685287446 918878366 685291148 749502426 510178232 713337018 971077423 981482312 962615063 996081051 319834673 605819931 565917211 931046907 776843663 786202196 615459772 725399328 561960339 747110473 823140084 852565961 288816841 861222287 251523829 922376298 510804628 854987839 272830306 314960554 349679118 448329337 368311144 496909315 546841396 829271374 843957147 863502522 783938007 972276567 692034791 791723080 476135566 845608568 458750868 925363131 670110440 737323443 620171979 971890200 395179374 816556892 155416450 373478993 691284131 934599381 484302384 718350428 279809100 304160302 24063019 899542177 945304762 977160926 168247089 265489340 607303251 926312050 880195188 966704805 394795127 482256372 183870273 979558053 655414491 794912215 468443789 537231500 60091852 799770539 607941915 748297891 596567430 667696859 980306758 989508977 248469513 302374449 197029451 295663042 778577632 852475483 701850616 835016357 879390763 895197413 559023126 837643266 269926466 456884917 389729726 992057052 902648812 985230941 790157549 927775346 548036051 790405317 164922037 664377487 347276819 423971409 256373588 707806713 549055651 852560397 746067514 839137329 239886250 884384767 447900110 958728518 604979632 807855147 469067043 872178913 277622752 740526864 59378075 842278900 109578958 397464654 508301522 981461021 938221348 970778178 545150954 859439158 213875288 844067298 263148385 828595687 350717948 506665533 555822068 638119195 191993212 329187615 74763285 583404125 519008869 960606487 586730638 718493097 703339291 870774761 932757687 994351946 837573575 915505133 473495134 540433947 741482164 865487935 278204182 341490441 44382237 168047116 600471350 871984538 640170731 940861015 105137354 845491473 690566296 794252263 274725301 422403309 492173954 967514945 641788616 974589701 675070348 967389788 452152996 879535147 739177565 836979120 325402842 946329173 679412982 790652430 730278609 777467535 667557090 723153226 66333949 165889914 790358336 972546951 725765408 822844451 461154701 551956308 568106707 705444461 65534920 867764201 702349864 909185528 411907844 434878559 213273931 536412905 84301424 824248950 792729922 977705355 780707607 864598809 292924433 650625311 923792095 976728840 860103524 866574587 238162138 816040377 982804512 987139197 730119925 995350261 976401856 981800114 320332657 620773370 400977982 430777832 313569239 836646371 554049133 937060806 604127118 727818221 515883440 602043050 72276819 282750455 354417594 970287637 534962608 937244631 851019436 857093832 161359685 537189648 447045748 453362790 459044326 672630200 16908531 618164212 635686347 731030083 315103414 582233878 953346246 981469062 570007622 932433680 889198622 915163406 478861230 914291586 380406829 720864753 105660137 760844894 522656235 561707283 351264002 995787139 783641800 871879618 436777216 620231337 133132027 261760403 498551678 639776177 130045963 233171500 554995333 659224999 640887593 831762486 97927856 194810575 94365353 524425476 16538385 529390374 352000631 355152217 234137491 292888052 368837839 386347094 812373210 993793441 618172061 974964660 429913880 798755460 682241885 972454118 548366278 752389171 367104194 829429179 3966162 901432249 491025148 759705817 242628458 491716533 450352367 765062666 802437941 869655831 951733474 972362349 483763044 714174724 710706644 835447674 102344196 779454727 782873278 937863157 315419643 807749884 54888509 123827289 614333884 929145428 284317293 985304598 287613114 405525977 749004570 802185666 299101473 885218520 380841182 935875608 178746025 672389920 523847065 616696415 674206286 770195570 507602462 770455705 110449573 920881359 422699179 786628585 905232667 946240932 987685699 988531811 780043363 833890843 623181833 854766395 452588836 531974030 594601496 656744984 770143574 890335784 659645520 950161102 214002172 306836638 871515980 896836909 23191119 580186344 266439921 731938080 722298387 782950685 452182664 963325890 564677031 889055862 112998396 152365816 958081674 973758062 15948214 139243975 478792351 739616052 730886163 749694524 5783359 859301812 397153185 400983444 456647931 461816684 505409918 982135440 816972685 859328517 839804425 889148887 454266206 545887876 873115910 927769937 726988108 811714359 525539389 636990751 586292233 729576209 716843955 747555448 817264237 963451631 218557260 773357910 439702976 462597540 359555265 686014611 800063698 823594891 592551931 951892470 45930478 82714887 390445176 496902450 168359159 491809143 810380484 840788478 676865955 899816839 976874102 989788616 922783543 947575550 741148914 991448072 258947359 553724395 410287326 495787627 823324125 839944273 322070064 579436520 910889884 954346520 380732682 713138435 950488905 990864928 311583351 536435327 442270211 733922001 264425331 274399978 215439154 891829989 436819914 659814446 531277097 872569728 792342877 943529583 122515510 923915109 318199370 967003177 298763602 322544636 627606063 811510358 285607716 490440552 678834428 831764376 917427170 998054715 203054820 502207042 826367140 936491226 27920180 750708960 835285237 871643812 153358413 610951396 924813196 968280033 801837399 986556568 980680808 980892681 125805301 144295957 663562879 911957822 252424867 896063507 679999116 830908358 613850576 858401231 259961469 829124645 403368949 651952782 633205335 700914337 555525836 995758319 699206394 900028099 494438321 897796305 230912931 537862059 174115524 757106598 235456503 862314164 113504424 150366685 231237523 578916721 646811692 897525696 216613117 361525437 818717099 956864552 962972068 978833605 464496451 609961376 599444293 992128808 779337888 991856169 164618689 225173132 449440364 983271775 65845369 742904860 411644273 926704038 918370530 993543625 712101193 973935397 998345937 999006992 224969241 827282493 380704739 380978034 920830073 949204456 200163065 328463126 769622296 970522542 162972782 748904232 59183920 749892346 67764034 983862449 918158662 996405471 477867119 944922212 165450060 669496591 518426890 908216005 770246534 775975054 462311906 872167115 167788740 541444463 570590411 791650938 550807079 784655808 322696482 859993086 320623966 576100911 567859543 738608476 984953963 990617479 958041683 973088045 978823202 995416869 684180524 791055898 984008544 998993421 378704541 789571184 543163110 676144201 304120520 933638888 25451127 799270012 713575464 815962244 802785366 920386196 234302267 896125554 236690474 603652260 721185838 776824526 120922962 718712606 978390847 995042373 784321239 961439846 736950768 973731018 700686106 903260669 620715486 880343174 593263640 767705023 193460755 745306589 454649739 995259699 852327584 950845619 173580637 956106744 658408496 789663424 56389213 174939152 157291497 696179041 382603228 946367453 943691092 948479169 810045632 829923722 879216036 936728595 389774272 622205620 495610836 594338620 218935161 852905627 345652114 885609769 266473897 323544840 702009954 823661772 102742790 200180837 214347548 221347684 853961836 923456239 219525884 632467092 777742338 904023230 280785601 363188576 254696103 845551360 919419353 922058564 684115374 786034857 814803535 941939025 395106752 863238106 391119028 805991875 932136471 985487111 54672459 518678661 612979679 875436664 710527075 742950444 969494038 978554610 659429348 782240039 273387855 580248675 2631779 199552624 474337329 763175364 934541380 990282925 590724426 598754097 305340959 932146069 611042705 743370022 337550071 440210709 193938530 831952833 456582357 574280349 360065200 429970884 376851654 685098228 628521836 759084204 800205676 822602670 987897097 993795289 496426317 505778452 905213499 964185291 775161346 966796304 766366459 858413986 799215044 928989772 959749212 967958263 508215056 973026178 133719085 916423802 279943918 806628608 322744621 755294518 648753959 803476579 527897607 802687605 765085218 923642498 73929483 307997383 236286462 322998278 361422529 728962735 990827800 998069853 312942164 733280019 7763570 948753845 465322503 903188535 603315125 716034679 199965331 358816372 703527749 722968268 7922858 720170096 940632756 969216617 893890894 974041534 888659731 903959012 319723578 458593216 758354510 889469949 531928136 829101179 593602921 623006681 833254251 992752533 661124557 784184614 772230958 846337107 94906514 951142333 444252557 972449215 164758333 880235476 237974850 368753957 393220262 845125784 790882178 972464058 990473677 995945745 929058040 931660040 31583215 49280134 128793883 927520015 457179624 914475468 631655707 759256644 39592377 177003373 672486669 817897316 678542051 802654368 986627579 990871525 406209086 591108582 976505619 981926411 685767785 878064261 313214848 687223940 21266142 506520914 64359091 658297152 274907938 457640559 323117536 861730772 769386719 966278491 70886725 506620678 337425343 426800004 683588199 722240122 229912603 818923894 261140352 337863544 334735143 654099475 712237320 912196659 976793908 982243939 499535204 601973541 688613141 826921558 300931176 307414078 665655166 892698370 781048155 915446586 247172597 733397203 492734293 559357781 991636384 997444120 677007315 959870423 173751732 657651002 148565344 970882538 260551985 866606906 178532398 909983425 126210478 245690279 823693437 920201640 397532569 409731394 370960377 714596878 594586720 878909728 910179072 958884573 169161210 211714575 86171553 647201864 165118827 748176462 431919654 578125249 848726767 870654421 276842508 686606594 237384827 802423498 287386422 932540481 848718166 927434701 612444579 955857676 56048078 409447521 388730342 734048867 939586714 950431350 327109851 555504254 364377260 365101736 731508754 809546192 846067996 877642591 622404288 856720679 802326141 836866632 378601526 745431815 828052011 946383960 371221280 389770114 194410294 791949353 747778681 825827987 986196256 991651616 847897021 867934368 626145717 905397403 770391938 867726612 549649937 890330592 109506851 651551679 671085789 984858708 893915359 931819762 202659571 571647629 339443465 890480528 499135040 573432970 283304798 784578112 443392825 865511629 665604263 889278573 96637642 464685260 498050192 743029397 911284219 939867926 596228643 682008977 873154833 991141536 479312480 567125286 405942484 886432491 463196535 832036735 363071944 665795532 149463011 989446469 147223718 526360734 223320026 782599178 866309236 982725165 865438422 915641557 256082985 562179764 737248296 851533684 448104077 604133075 941981877 996982140 585515046 867921367 625308651 845263254 38266023 759304601 238732473 279779647 653099378 968309653 120385264 424935850 797409257 898180389 266060670 327112959 590151120 933688009 715719437 948072760 936568911 958373174 174654151 347309866 790555051 826734144 626976216 999830260 45883396 902468194 782062863 927629578 403858163 988863509 619976394 806284052 720590058 939664035 460293270 860585348 609006369 998660940 436439016 940923748 451160535 977640048 326327519 644581499 412252426 665544317 216440498 587908006 445604330 804448305 837005690 999602751 848541303 932255243 318820541 709167276 756259771 868110381 235315212 733096977 544769814 584337269 992863744 994472627 425756941 618812686 627376611 829805387 203425957 766699560 210865191 925530493 522326350 913667791 57278870 763347099 559042571 607657979 200892123 546531691 66709114 270695050 432094183 590687966 709723213 747913211 212061483 726228937 262957872 891228621 714369271 865669501 481011326 546661258 736699424 866924565 308331043 326227940 858180201 953074179 1047330 981272731 825679722 854372303 351523384 427175975 618193161 725387168 829485750 978032184 113190345 247106139 81767989 885333651 466984354 625779041 77208268 547880015 17524741 731799711 543959769 826488875 347890117 865883467 785478780 899347997 776096540 782258151 569631414 656508833 32029616 756006991 220808419 415287069 191353133 595354466 981987455 996818739 891586429 958478167 637788982 908065866 18379479 357014130 478298438 988247548 213653675 858909671 457789455 969943433 784605397 905596740 603024450 780853156 783935310 887585540 605205518 936120607 516769016 857337271 393501788 506056332 872535345 894660808 434063122 610810376 892409883 964607059 734730102 875772933 640537506 991474477 580267277 585427700 283032523 335464222 465365380 789773236 166297961 905246179 106346177 621150731 43317467 807373076 881862685 945621858 81116673 770346031 516559515 641517914 256031153 670898415 635123813 992061070 115575236 220892089 283124378 990301372 713957747 810895414 997886726 998786466 125867344 939099378 403049805 986771930 249175605 855224345 617681999 991029047 135149340 700634404 220213930 750931997 329289999 769533573 83813952 252867627 37668197 704852131 907324474 957049906 421630728 879021386 783297119 953882917 574689882 992710886 151308906 646261981 260984943 951676295 873696300 919141841 442225340 834607849 568224445 966853071 446496095 807753706 836086700 839309086 191187729 545329052 586678707 942214864 917591461 939438776 981063242 996093454 555899837 840901090 738532962 800185069 927887649 940539357 250437468 437169078 454873056 858455972 827307484 873439932 209854328 865560480 791971854 999029579 34572143 316600100 829579467 928844732 692885911 778811901 602664288 666659515 311867755 853829878 70080809 110779913 378446785 635189671 235407438 350998935 849605439 885520481 640985949 888260638 683293162 742331118 475352101 917915216 443323224 570577000 482337545 920935425 466761443 599994715 528564596 768048634 411461921 798326847 529803119 795471162 131480539 684226643 366925222 382277756 763732300 987462989 72145444 231237854 206936880 478261997 541535711 893940209 203445328 929974882 397797045 934296995 260637949 302672148 66433834 456716549 457750357 581969206 153827601 233503092 343003786 543477207 818684203 899237304 572353943 691775204 183723495 585685856 249830338 538798682 945028930 983820551 906775029 918567168 23124636 972177224 820709024 971085814 606482373 622272950 592724928 898718094 494797500 513084827 533407828 729436941 128219427 235390436 770090121 827308956 721358533 979171269 123093385 560011850 226595701 234954673 909019297 926497376 66369239 191731876 844833404 853417052 646601774 982329978 480274868 829958169 404235116 997856891 598358575 613714657 791726630 986546324 641224451 878493789 965505005 969636912 604565172 948910764 466394508 634803172 287375378 528840533 253977190 558308903 698682483 720862543 958590433 973875709 959189475 992593879 628255553 699784654 900526110 999142577 559893514 945108036 69527597 561101717 868949919 952593571 38467557 401530897 419271065 419951027 9612574 198968288 638537412 759344241 404826536 961894870 740287516 978705209 708871526 978162995 70354341 883057984 676921233 994288215 879645936 998835898 955907584 970459438 176117176 505259682 658233600 989760357 222563385 843234282 538935957 843607978 518065573 994085882 208814424 480865902 901205156 972058479 852506132 927476332 485771340 682059663 48998235 913942704 524990414 743810468 55945807 612582648 450413232 821668634 649533650 791199970 353156500 775766390 651309994 834169198 199021271 568160967 249115967 386406376 710635711 859484895 296939692 962438846 497992477 584203903 152383389 682887504 753727777 856886390 319748091 497677278 69065278 585461878 999338767 999896970 670241823 873779002 136546665 402508971 961707183 990940135 778579226 829817775 32980410 877992148 307799028 308688793 12141002 45728517 992340163 999925298 373911871 644835678 939858855 959306213 195420594 212476596 799228189 883090434 289477008 997314310 346985121 728607462 903590159 906198880 495460256 885289138 293696027 616725723 136871956 389102973 521269447 620607016 913077039 990591669 391148057 863618042 400050936 406299819 797217058 830419754 598641003 692914081 535474056 858380975 979496413 984842378 203956843 717789639 4845274 687711684 369543399 553931613 405094669 445368054 525569774 981802846 90647781 427936867 142117800 228346722 182804610 560194633 89794158 583744691 494678021 589661624 37737103 352747346 295976548 600188704 675924546 851859773 121597914 315296794 405151557 852733358 77394281 98326335 415597383 620034016 775770520 856604220 618331178 711912483 938645978 984624398 439871833 614067731 339861032 671190714 254702226 631584383 330135860 548635345 418121855 478319828 765179450 814044679 821297650 995219731 785817723 960666748 347229492 670608461 616483560 972664976 400611048 441839379 204833657 979635031 698992676 931372341 545544893 875239772 676935778 844827763 670247318 974052742 100182629 917078751 845565692 947885356 41081159 922468946 244541641 358377228 782563268 807220658 739953878 925369305 959674341 984424684 179761959 397986465 959394021 993298622 23434796 827962604 24814759 554234731 943556669 955001384 71679549 422012245 609780005 650491451 534345956 665275599 635030618 884166550 363145991 400319210 84093061 103219858 274546816 943102433 823487187 957451697 157298942 991723880 682023880 935707034 749312523 755379393 369301074 903844901 680350451 909812816 965150601 992256556 876151734 926052318 604963982 634855058 592302268 817972974 483498889 600451287 14143476 86702035 285792970 341850384 273271708 674988527 736788529 741329223 761711380 802571070 857822596 985218664 279323389 423361259 752497301 816651660 496551459 522234935 12551519 510132572 818566121 941704411 113352516 810391206 46471106 578890921 981022450 998824134 781121632 853925895 436963691 480436134 914928843 963164065 932611799 957816729 473623874 952411992 824068525 867798322 700589424 931382123 484754556 516203746 451356425 516510504 422214363 469511747 254349088 728466371 111033815 433821245 684372578 871462762 540145163 738618522 457528172 711929372 633918783 661627666 934360422 948760566 289239993 540094008 703451968 884910030 101977511 806740894 347072727 749109856 40460887 966445778 387584568 535959175 910481937 954790836 921743446 958935509 307805648 652226568 938239115 963518312 671918371 852272663 683469114 707055604 943929586 954684365 859759610 910986430 847356623 947928836 437983530 811460699 995172797 996763885 655418364 973318466 627636130 857343190 394605410 904615819 236003355 341395485 919696681 937213596 520208659 769285004 486212306 837643779 137476984 619515864 861448708 889762690 395373514 424180907 640891751 998363817 836451160 975219057 531613236 690774190 554656695 977978969 792846068 857829252 886948408 939597053 695413902 980412887 740733031 964348372 506591066 980877159 414659485 784115853 701632737 856604524 672187333 811953606 341449972 519714572 880696577 942058964 983387837 997564816 536829272 606049589 194740193 537897796 225592314 613041716 228589438 485751048 390743687 692460579 92028368 404100989 714746530 936174559 507715066 709161370 833093184 954617807 447117838 731281597 697739104 742681744 323959492 351793002 352159474 530796874 101733438 941796987 933788871 943458904 531374614 745860414 500483786 687039751 649773163 726689899 354178959 458177977 899439829 939620593 287390644 587485976 432313031 455757903 252194722 606287371 632525960 988840254 637690930 829981551 138641088 530092695 558989693 690827001 260312279 576228924 966410582 968313283 52692557 847173935 188552471 911706424 991662843 992762794 202546751 330819257 333942629 541088484 295336742 507578104 999461237 999630191 59593613 696693148 307589091 782930715 540406942 949400825 419707269 737475598 61008040 923523880 388946515 598382618 290314670 960693997 567408683 574483146 388659007 877055851 970436123 980712514 977400539 979837668 538846658 833145725 961825599 984375933 868218050 892989344 976262145 979199286 485664908 922048902 465024519 492896978 981236309 986328765 95591643 158230747 338317972 500142741 501409026 511745038 534909518 598907536 63059354 777730927 746781077 786956198 636327730 673208803 235981656 892103198 516035177 844039724 676417810 928181743 622639929 705619929 889573090 903811140 864595043 958328978 419312818 515568906 511355351 654090588 620255052 639391205 681362567 909049050 303053878 457123788 845960206 925175905 187096974 376703631 289655319 484509573 614829477 919354924 131761403 484846717 717292485 894934173 822640793 899453989 431839175 558762911 716593586 853711396 549994702 752264203 938631066 961662629 932958636 957845436 97357444 260358334 522396306 595535932 820364398 907452055 843678468 869723641 474090672 990568996 305244793 776185283 727266993 868568713 476301423 989897550 510314470 561027656 746032900 798864678 891670976 918868100 874955134 909599899 508837987 540424877 939862343 992663665 183080847 935480556 814632685 835073603 548735565 683825493 353096412 418001283 291021163 472280049 1923546 904393028 633730872 664792281 950976154 974193655 987740973 993169126 407226128 581385216 182777821 985343250 576514621 708899353 822989353 954144932 593876055 876386636 544264347 561472976 717457189 908248538 737307598 750551770 781532194 947497058 766030684 956103386 228208690 902364900 448100779 778015854 102739826 681133169 282321634 456915415 425604442 750827868 291811960 865845299 711249390 838724472 140271405 469307361 184324986 950446607 273561582 480026823 409640588 810994610 710470125 797346327 700951212 707329097 766842034 783782854 168538914 722414493 100779985 455766818 562245309 954867879 289149036 628616521 117755278 555823334 757050788 972229672 329173117 660517751 528794991 757885981 121547703 582696048 802795746 933305299 655134831 917907421 278167651 328224565 285266764 308216890 278897187 875209943 391756426 905169574 599309469 704578099 614235094 768306753 270717057 564817471 248853355 947868817 459367576 470793289 237858994 544935299 560814500 976210107 896222615 963339130 618516231 940211147 21931219 58304440 752493287 975679048 249756956 737442662 755282713 825526925 248081829 475194368 282784300 572414677 892698446 920190502 789133170 935550981 948824867 989333640 703213861 827310282 786770844 948858508 611159844 613600416 681710080 869123427 444192058 595431054 890733135 910498600 328708086 582494508 458273619 575640527 9568817 813345253 362816188 601266743 172604553 418026634 255632419 409579225 838607659 845117830 428629136 893963065 431171378 579676018 755611270 859146036 353437502 652432135 525775396 910613891 213286435 685765437 964302501 975053570 634198087 955588848 773878267 848154924 646177287 871291962 681888116 966316144 36001367 678637866 654947483 711141740 563489800 742510121 519783321 805807475 6315699 961712478 311277849 873461811 433411610 837429606 557788054 942012276 260145812 506454669 871263682 981867120 438686203 613762118 875105633 972010272 876559020 884757317 545466455 894714334 551265636 899935233 467566728 956569804 222268855 986173674 910485291 919267272 979332962 997201668 832311774 961259065 308332663 820668083 834127640 964701477 961336650 969388396 488878906 488925981 932711097 995737840 998275049 999538189 519511484 528084590 244300981 915303577 71976525 728973961 276137368 393586300 147097968 679621118 874816723 903056224 333003036 749458240 660196125 847084294 816778125 844258625 141291273 440749148 195005271 668433722 39405117 929044496 155108746 620788546 747514407 849810555 543594772 814633564 258843049 735215996 383228951 970186997 737069803 888735657 478156306 553394744 863521263 886826555 517811186 832072378 106996716 428170213 545991183 665355644 421327372 588552411 998178550 999773043 365346967 900279868 387922180 577679310 174249195 286626468 415963781 839277426 531416374 900343651 71536137 170169596 61675376 588447474 728509660 949833167 175891988 690021995 606063189 680174837 689340752 911840771 257203420 571970334 927170097 971835759 705115102 987473068 515033329 583967271 741530199 985493120 875110699 975596765 789487932 954786993 871248057 909926321 534432369 964868335 217928646 842776086 350549304 735781619 746176984 824280073 213501992 629136196 584191759 876495631 37639922 206941542 520391655 823703432 714011264 867086642 298637429 506498926 332411419 480366413 575337286 631116885 255009249 331654736 943613847 961469350 385607896 735474771 786555035 934747628 929958007 941880307 188084284 832437279 173490026 957043965 358963673 394810551 399026972 408798053 279446832 369585084 184973238 700195817 516716610 518070501 443318930 868909171 742782100 972325439 951876929 966940992 25842083 830911557 28499802 956094011 823668506 847791532 654857066 683154841 641038012 929902744 530392146 871426193 383379903 654054078 769679172 915953750 312391369 627572947 122867186 360188428 65003440 574865285 69298275 412957478 948603265 970594785 322113781 901104358 83677554 423355316 899524369 949307261 828775790 865910788 856764908 898825614 455749551 619491787 924102751 994750882 810274181 926416539 861277500 891093863 753037659 946944719 670098591 795379639 489622091 960673705 839272497 847054074 514114378 905476877 200038675 231023337 18562657 218542200 154016137 400584417 600363445 988737843 902732881 935668827 632023274 872852448 300175473 415192312 718197489 743856568 374036902 966855793 363972012 699133850 957161850 999046809 369297490 969866689 333607489 369430112 782088713 828915654 737222970 767171711 451304558 836609494 351436565 821715376 332232147 377722186 641497309 909228318 39190324 450087769 837523569 855813362 81172824 882687516 356809089 611260116 329637573 414495239 580035564 897597902 571122550 900579295 463269694 813038503 551285959 688153249 471638035 846622564 117932402 496987996 539292512 951081023 200071932 725455303 526902977 849910371 824747890 828789399 653590697 654530629 588057205 630087400 63978258 294536514 636195949 981624105 663746436 754679033 221095088 959181033 920078829 976258750 920570200 947366660 320921723 430221659 431033582 876363645 772920200 857967130 911635590 973171577 460962792 523055347 467545359 826709314 294853681 891439845 335969737 414709120 884314586 894505788 934808142 955822634 23351880 262042724 831657271 963426033 661586097 886118378 445419762 795039649 755254269 817547580 975838273 996222736 771312490 815996572 827854015 984777169 203788326 961358908 483764952 682756681 101878847 840185085 407335349 413180037 684755491 902679133 857498026 916497943 334459381 450884872 129770350 283786643 687220348 972386662 363535007 617227311 531911782 637262992 324443207 419702531 169054169 797069883 403373076 617583190 64022242 604605952 730916815 977412443 861609785 933194845 429382808 820286789 719699166 888077624 474090468 949642986 355914685 924486984 834608351 896815992 496906628 927305760 434289752 968992365 436594475 714866350 889694373 904595624 185817088 860769719 585029675 591789666 170595669 509460545 300301014 764754454 75322823 266776210 575513347 895067686 452480825 942839256 182713133 730659299 365547428 787804873 511623869 739278059 281682208 441887953 852286708 911527178 762884684 939899895 636490715 965432942 840636846 978825444 611534474 827309734 837711106 876348609 531444854 652858454 960390697 966579421 231646758 424306954 508126603 897307293 338235179 640743230 871594922 953997001 522615094 898912097 929555719 992018746 79868671 204842032 478810226 640053218 156214762 411739583 981957368 999973509 64891695 956468343 767837312 827553478 148197425 612958875 103807063 595779366 581610558 892927881 177458865 575145409 950557409 979115767 155778984 389013345 548579632 585413893 478296643 650101831 869933700 958680719 587150537 918617729 948699416 991279477 707265347 980354333 433178747 692607414 273879475 451285104 498532020 787176602 683022753 892069498 441383580 838401971 997368705 999315975 584492744 909485886 388698830 573732742 317094115 473203448 921982695 989837585 391773626 796681367 157317163 530892334 453324179 653274686 703321190 839984622 755696442 910863866 683065385 785093265 698777436 968538985 647747223 648300776 209497167 584564827 752674064 928066868 437261429 574596286 689835629 744898170 72544988 830217513 790941899 801735080 541430194 934646611 989890262 990469299 754171649 873464922 438919462 748576215 819058814 862258234 72216500 589892951 521369940 910540236 408943687 893013616 984443292 987315176 925468999 999099908 109677102 433888299 726631130 835034981 345948349 755587070 468932688 934596815 58679601 505277007 997636755 999575377 762448630 812625098 209577098 652809476 516446899 998418321 707703864 999560037 20688646 666148473 673671471 859776058 726599230 895792573 496710362 703776009 240007564 335887325 240333500 244332738 545729647 976750300 990318603 997646767 721353560 726986077 471531422 720721229 204474774 577187286 938956904 947637762 655821629 826612451 267709446 711547391 370787085 611976256 765927335 955541048 267678774 615087478 874810198 957802124 75744960 389405682 801237628 914020460 781521652 795842731 869410020 976732188 960156994 991279313 96740624 214807146 884583137 963520649 829576207 958845399 214425268 765672039 89196717 257242996 93325813 103945655 920229131 981618901 818741450 819650027 308982536 485298648 506560165 547321317 116898603 759855271 658877860 966873983 768725411 779511754 619065132 733645932 531717434 723366526 741102766 822529655 698637941 773103432 96548241 605276380 870312875 943441409 204956903 769541358 24683862 96214643 837092877 873235049 83009253 692140930 844763119 888301499 133639776 886797267 772670919 802539833 76272466 315715136 286505408 659452040 304685768 863997611 216711476 583319298 949541148 997868228 340579451 697490962 911179594 944517344 481503497 681842595 158427365 862660043 925326078 972881696 947593981 955469660 507128400 913129272 504996705 642488091 482049270 564782402 89135483 662428780 349121180 620102697 187194384 513123957 584619017 641965751 684487160 936154486 388027939 904465116 834528412 902258984 986242530 989789362 974912631 988321388 165118868 354709855 989063459 998551215 189983224 203908424 346078427 537068251 816948411 874430569 327203300 741699836 311825248 618304946 494679712 632432823 582606906 592299471 528525277 997889795 27647226 782300471 160824993 420418855 468893076 545781095 927224892 965591376 59648891 370865223 655050519 860197184 704821655 923951041 159032282 991929010 764346085 911941553 800683388 856753979 476768756 761854433 382241941 448260885 56146268 880680455 377558247 413894742 286529430 738479059 589261304 957160267 682150910 945141548 686180448 715345619 999467409 999906028 311796389 363897583 117791327 190437450 942321750 948072332 129025888 560334243 148174342 612445438 268775936 379463239 249714472 598102172 694724072 815688379 729478707 835984844 844289476 867225755 470444371 657817060 955165152 956507451 237400032 621169736 404659006 989639691 459790933 495462265 145849068 783825573 455251834 902073810 906293500 988413363 19693494 724359208 689627917 852342653 54898742 978296425 306962022 746821315 126426882 474908458 630780263 850869936 390228588 780185068 995353101 999689904 641115979 707560614 418000418 432873964 744750857 848082105 190233916 783980472 957383237 963042968 191163682 817302186 206315580 972002856 879676787 961516391 282544763 318553582 977609279 981287316 980881751 994582879 848685383 911373755 576491819 675091468 266363877 516652460 516477249 772261106 957225040 997862248 452416741 459294475 986339313 993982224 176853589 979893920 573158875 882970958 674096710 965603358 697640990 895956798 859992951 869407423 318596328 584215623 729999002 777071519 441267119 774406998 285200987 596994520 266389320 336849582 201855624 829730687 789250128 847551256 860162388 929323792 441849691 936548930 174223827 204479177 89768604 715769389 604857493 990399347 61338804 503546042 795998015 944709566 688172807 703267483 160766199 639685879 225767560 453345080 584382165 819155160 554064318 743018047 141732428 643050603 912011248 919833024 873552924 875316934 431954515 881352752 137663613 141064113 337345683 490666537 671409618 764916310 865635360 981928817 371389453 755012353 796314251 867432182 468988878 724677429 336157493 740244462 974310408 994957800 609913388 825071830 44379270 468154608 785630966 987598158 370451429 502130606 252737133 266774002 631217559 886419455 263132134 923504907 179332969 439538218 408304889 428813862 701559820 708080146 976114311 994468113 510477942 792352422 922050928 979224621 962547929 980243698 567509886 590637609 190939166 474792231 528647837 966563260 95731900 931838827 395469711 906233134 432364621 790765151 441081369 851050368 302320412 953084844 728702573 901156691 226037015 611647029 664377807 716700507 218414544 857221452 23055005 106071695 975304440 990260585 321275635 807323911 955410837 997086023 536705084 616049743 773871863 853458861 12653863 532604481 969030998 998281933 454925908 738182892 438247694 751535874 286420417 342014791 802111100 883814960 146140443 695230335 98934000 603040747 487430940 840612350 586591629 914191196 216377505 557944021 667989932 764914165 165049169 747084562 184916672 377665610 343564822 906807351 14720212 456111553 936082449 992518670 967132406 992991737 751026457 863057458 84622155 604654611 559791652 915049874 721008100 747218319 506762212 698912390 739889235 786563517 551970506 571577886 906666826 931683367 171769628 539187551 163329452 309288096 796254529 968189255 953610789 994970533 678820026 709455552 164637686 799520427 224752506 385503324 982865112 988239365 546377703 830032052 956072179 958274559 255664756 267177607 529816031 541476193 363724391 797397145 902077413 984461750 689235296 740501368 524778323 543837220 805213703 809594259 849651656 854266804 578170478 616303062 530154446 885600959 423522920 742203337 784098829 985693240 616269348 942174065 222768439 444631002 963881147 969185872 162748007 809714997 742978863 827754324 517965382 543055700 911643072 982200423 709620228 853735891 499214889 685116008 609264126 624064411 431628068 446068860 93098151 446710381 620625879 882035680 403886291 750238093 491620322 494721662 668833290 836683038 451810799 886694821 754537177 877469576 129388259 745225078 540127800 753391022 507700772 549728445 659520725 995134071 76013530 878858927 67247572 919860742 449590199 507850893 495379542 939516003 856551435 872611957 388866448 950622700 83765815 553906417 516149004 914655708 710790020 975950149 779529237 943194468 603413512 852051287 229010 562756835 923788588 961927933 431270422 984118757 727925380 875560945 44255707 560582249 982339675 998458964 63742972 344814260 474756507 535971405 703714162 926540698 848613524 983846754 827606426 842186394 305547600 317133798 366247767 386926790 112775090 989227752 36043193 260696278 556291253 608472213 921075654 985982924 147399154 189147663 644326476 881550570 582284783 745697140 543697849 584602050 652201179 826422633 937363430 953880577 367047848 883522182 604991104 757053658 904877705 918266486 380686645 514897307 239483841 557496443 332235563 773641206 726328766 995334424 69058883 486549584 773198313 777148983 386152155 512986026 498920285 739209658 207952955 821989449 170929088 853236729 243604512 904122643 909849181 987664495 47145927 269443207 818752725 960569615 966199369 973245824 246740770 329003700 460612896 533022732 586938798 879046407 715561430 990312388 680755654 868100612 352048385 542096996 738650522 883758011 120398830 856678026 595907582 684241917 534704153 606392865 908155837 943061500 828821196 868894932 668784570 936454239 468625436 685822808 374295526 682230650 623991757 759313770 616489667 946315107 404961364 663262895 714484630 967963873 830536671 843000922 717018672 963789274 46503258 671710268 895797017 948078513 899108963 980486136 224805280 238084737 444381776 658006619 311088325 652511521 521967594 829202502 563847268 823030515 314130323 908471090 950610101 971804346 298847619 918885942 639787692 862508376 580457154 978817380 221134718 776044085 473187589 680199209 925527114 934155036 544148164 704456650 481309098 695178035 932576529 983254400 340439463 994454485 799237932 876035378 746841079 980221919 215896826 958326368 826188598 849472378 884728401 963575465 930640375 979199530 141567611 156510905 748184183 810230978 801259829 953341190 443977511 834235224 698967018 962802717 568861896 892714227 75999674 562814962 239145770 580487606 163450624 482577584 185536855 900722487 62583644 771619281 308197753 701987699 328636504 909752270 595619634 697409792 730065112 953481696 266517374 914685963 180683345 198099397 211516711 287721908 735382931 965021291 579347405 932360598 2954505 774502195 113387487 257448724 909666404 954992516 282230743 409383235 499942137 529304052 19821307 110207600 111638698 308452432 361891327 746852143 284549424 755641492 512519167 645463697 145656007 166718571 854937162 979754190 441347482 919499797 523511009 704995727 69139011 922342597 193515813 503588946 540562143 701048594 133586827 412587436 641736348 928242515 458856440 934062219 886916148 965063400 660970885 959877226 51478125 53107313 456632228 967740536 300698444 965469588 776132384 881768193 985454508 996170276 439377483 883103905 556155439 734601988 994971171 995870376 138230065 801040940 902885069 994066495 945623418 955326951 930188418 993972088 585250394 690743241 312296054 963854826 876811130 948186600 367787353 800757918 469047491 923266080 102089706 675444555 949080257 959928324 618274934 910384611 254029422 488467893 920456118 972854407 897933037 917953672 636275564 763349499 143044856 277592148 620838104 623297458 926215941 991171225 881412577 936092456 242324395 825783369 208455678 599627906 761803861 904950859 750148323 882256086 99004934 921687175 308282102 819580302 952221115 983715717 428361672 839844173 711372975 980854137 736210226 873204878 46448881 809894850 194888014 331474425 163851426 284241257 869059397 934444381 708136902 788759851 302541887 748419010 343454859 737067396 540719278 653136712 773834973 949487157 727269970 810028683 401152683 404138858 31622635 666325466 659430219 682502330 635048388 871657716 62160810 549327661 8704858 545833275 360788281 575420666 241572635 661698121 637384412 817004531 31872309 297247533 183175786 709793635 681040210 810980345 845468217 940819960 525726110 595886466 346999885 966659387 827043336 836169054 758871785 768514923 221470282 531566318 400359113 445957555 31264236 100067413 786757765 856293659 761022612 982686311 172362079 719460467 595264820 916454249 481372812 715895935 543299866 979549343 312719600 738792212 758810422 772138868 49653785 350911558 914366313 971980615 232241141 692904418 132571825 930227675 183279692 640319341 87421491 269650865 777024477 934330900 106641446 569632486 292218242 469224726 977160698 990715618 338980805 690957237 124130359 351888543 383941436 931258058 72626224 569183910 894029387 961827349 624498037 734510899 600390197 763486040 120819461 398267702 65834109 114315840 216009137 579737683 116592890 784030958 940886338 971264424 860945928 876659333 421125821 490297530 734414524 885791631 666423021 872343902 764101755 936857089 704711559 833840465 565483610 729000518 955079832 999521044 508837098 718728370 585144070 725178853 728673698 936651382 242600933 951987567 488839518 653933356 745692124 972634553 460742289 537723856 510305214 556317925 61139776 119146071 367297814 524295849 639130580 931776704 554148995 900553835 545695432 581923173 40387198 881219271 756901059 784854167 432827448 471787755 503628604 849421030 661228743 833338405 908597761 915312367 776459105 822635976 388677839 742677698 930154317 937633961 610930590 904623300 768230570 900395129 934630555 981357960 797117519 803328895 535809403 616737310 893231838 983676736 370842741 482959297 755185906 908856302 736065268 947905414 323388551 367545190 427658418 697274036 506122137 722698962 865998329 948669249 311472960 921824684 818394834 951790521 39879784 185859634 735746833 890502685 478147 319955692 680047461 926064747 932955625 939538166 797126811 970037446 996735450 998892416 568861750 922971299 38164256 91908714 715818025 888974713 858500615 861474715 658376311 748490750 762287378 824545923 237933553 743877002 160150334 507055185 218593456 726665229 41302365 356418503 719309094 783181178 377811796 514438537 825517829 847661202 181743535 484953522 127073481 154836992 686847535 775233173 562283686 704764688 980633012 997772894 886510835 908048608 565161598 852363168 360410101 480340578 720479527 827848624 861370714 892738531 249585407 521291841 291471027 781173009 994107032 996874499 388230629 792464075 19200743 875878665 212444641 803586251 328392136 636697457 651608809 884939912 650744052 988235382 344714614 854617769 115773562 255133661 130949296 705554377 911034708 966091484 171799305 190326899 408933932 626894057 574372549 897781349 349828188 423408828 694461196 790206166 140274871 527127996 638350959 855861780 305884440 910849332 347063427 615287360 369736717 907935955 115962090 679439157 268943722 443214714 543326098 643793042 583010326 904190356 956776042 977735419 230457785 544056856 23307611 332605165 873918706 887121156 600670318 890170194 41134976 735954319 992963882 999857207 274827419 826596956 654013544 961790216 643537106 984870912 691952937 874467063 866481697 948755177 683290824 979639826 685998708 920383302 890968998 933532242 95600773 395399779 494918621 967245104 14939484 483398680 310970504 423332547 621270071 791125675 710423434 848781766 293595087 776751111 613765209 714044888 386888781 465679356 132911850 687388818 156580653 792271029 696379003 912456566 95954312 187968680 579329720 923865222 632449141 633158210 702415823 982056087 820767758 939996435 825684967 894159853 527194223 527211683 635331750 702346132 577153474 978081918 656092757 707432403 603817186 991409519 139414595 377935704 723183675 940966819 834794428 977254752 558625046 906544936 447219120 740838545 918714503 986678799 592261254 734485589 600844646 923544881 186746045 758157137 375058923 843232034 339694744 859462910 47530907 802095910 477643359 697604751 542429987 780374939 405687472 826856132 562751748 879546636 215633973 519231146 961580250 973661919 360294621 721780153 928925959 937684561 532098092 859438019 514243768 774171880 140757312 395445653 999957271 999976248 116328013 233727836 372330919 634543611 75729726 725816703 492010712 735013675 550401509 743855710 744943453 974860985 292047117 435313795 882747358 923309460 296450642 833370102 587205052 952652236 750650867 803072981 161641634 573956369 294950902 748340089 828001980 845706209 364506379 812811755 131734078 975410603 561086563 774176140 176335070 681388163 56206575 500237313 782740798 841141991 257146822 987607804 995674392 995699602 306813173 620267968 705290377 722240445 54826250 560970499 177304537 394545751 62872401 417982445 768793649 897916171 87404478 274541080 285662246 621083380 62308722 396314758 787049915 971662622 147417188 907437695 548558808 929592876 786561817 931522436 707804111 805851837 766641068 838822496 840973303 968228789 278409882 888559267 556384900 704412148 928727378 937040550 568672776 919846264 445845491 715972449 613434378 795662926 943871153 960089884 243128313 460326863 949818940 964445611 938816579 963159028 477870294 955072846 47836973 210559254 989143663 993626889 448654801 658398428 501707704 949945019 861455723 909723636 242126604 396000952 119810399 297255512 902120930 963202515 772044864 991738294 4781013 257742515 810421763 856607548 386200064 637653095 825056655 863064129 66432651 192537866 657590763 838831676 278940815 720412261 672700389 807182323 322167752 984629085 31628545 283484846 563947022 702021390 765590600 779635294 99643582 596797738 964020879 980427595 542224330 747754114 567976591 748472983 969130441 990150828 842656398 906080152 446163683 932586258 824488615 896038202 357168717 753851176 509399988 895502664 364079795 859207260 384818424 966896790 438573913 965728888 830428547 995723269 292502202 316546866 636885757 735754447 568214256 964474282 85394196 295191398 674302618 842631633 674186426 736536890 623341600 742212738 731996994 904732857 97153038 279552208 339265687 807764401 173086424 656839776 853283231 908568857 454907152 972332655 441663401 615498509 452383805 848704711 956787759 994245233 186937105 480322846 926531168 961319903 426764648 949371714 930148264 971487382 724126908 973945519 71149497 827602022 296398310 453588275 312491680 890552600 253813460 471229060 35815535 870311667 922949144 948731017 346313719 683283903 828301879 878628860 40820308 60254592 64779844 792104895 919007170 968575834 464182525 733286988 416939175 789385100 63420595 430856998 779592498 976630969 491045829 589603464 369724593 769379716 681014247 963254085 330225303 525323938 313627544 334252501 329733758 533080076 637207841 795351400 461637047 562749270 767147000 810564515 17155189 774443131 705976971 755051514 435749253 748666489 451078779 809042647 832708792 952195168 439503692 723255494 155128290 255072849 922509362 922618764 322478063 920304840 558479470 959955623 333125416 592191757 7673882 829338271 386607737 417921787 842056791 869359601 504732878 670209782 903281939 983049379 781198175 832782306 225704068 841768825 646936455 834795600 410177883 938274877 769285058 994832182 693508437 920298069 278283707 369951555 245853002 864016194 150858218 697345183 208258645 413604762 263245385 451854172 487488617 864354684 124301769 459578639 376684433 494936398 357762063 617376919 371394277 670120449 328243027 687077299 708237735 955513962 907265255 970756449 238646389 829750312 317078306 740750486 662126597 976091902 712939986 735583694 733835880 888553084 262622925 908548706 953889172 961888617 811064223 906858239 861361493 895484709 788678896 825804138 529244833 641599621 188895579 437098993 607608893 801768323 775525312 831758061 981435716 982922649 182519017 760758052 273777184 551396370 416514854 709322984 4414183 556309692 429203772 974165791 402777952 599655449 147002284 831990418 218025556 471715437 690505424 811784638 682536904 720237697 466207357 544046711 917131266 943324204 242948935 752011509 198849219 650960803 533108260 699191004 451234316 838619543 858909346 925824772 707664083 904837572 114713832 553723643 326442416 986721132 118309875 237080253 39757664 947209377 658024103 865273107 441773090 616149842 208482639 232037546 141311099 971361535 681085728 894409259 735255526 801949571 754842456 947250055 386083087 990292232 529684422 824145858 866639709 987421999 761899463 963754788 889508885 954723184 719175770 773333346 581628690 629292021 826562703 920988204 65333671 960965819 95853671 437060612 835868090 935769895 212959401 587235402 105254403 832041975 758021747 907607172 818906708 830087674 998141608 999561227 6562418 886018077 31101498 419593987 457598726 699209516 387023325 398131245 858537745 953457453 999312359 999502092 771153718 981836687 54261663 661891249 420510671 489789720 422202299 584302682 683472902 851570968 203414136 353836017 517310090 540429955 414497476 904717631 585056730 683770047 68497682 494503541 425517511 562720102 819430229 925103504 684234030 756106793 44957383 535847652 6655258 338847210 225164037 354704705 284687501 472486778 23606274 63902396 942087633 944674218 609334518 870374744 925766380 958444436 546597370 675169117 944458692 992786788 723045383 874584864 387397489 548939340 869058276 956903989 71501173 784903024 676828726 692445498 219434945 660864763 597714198 681052260 102475215 872045577 977817537 981819347 215596009 690356332 796919250 869385227 839810680 872482157 777619286 938391215 207174774 764635886 250725506 538800781 921754446 947784126 546712807 910331898 655721617 945018411 515075137 550079899 676800717 788844716 741925089 849796915 787734274 806541874 401724592 772270674 952529066 996441375 211597702 907765166 803007605 901393229 429497860 462325864 143533502 767623108 574859126 648885363 205796315 576147846 62125441 157647949 159250693 968640565 952820792 985563587 104832161 306494572 95714179 266690361 579458658 604731693 280670207 689925421 543166101 935630348 11358337 768967998 821619939 882374388 218242430 701500221 105163090 780641901 74783013 172260021 764846270 801246240 132879178 217206782 684380855 914878121 961875812 982720691 388779418 906872820 797204356 920271611 558040700 688787230 254650830 916320780 548636674 720857162 44972484 957500541 555896674 778582277 188255132 656146671 513001603 828526757 83228335 640293653 872013788 980874846 214358948 891680441 57931183 249772240 15092615 913493708 337053668 651466826 960760185 963859494 119457123 932005967 786329336 916257406 920897315 958697185 466268937 680132072 792923864 834652834 910159581 950134800 498212213 659192376 420835707 978117825 852272307 927324410 525476978 968491900 45876398 663174884 915276179 949338772 40215525 962279694 341689083 486449111 380122937 443844715 737488155 904062777 953536654 961528847 604305352 633745901 856834872 958971015 902405383 944568434 190053600 850926869 573369863 788013455 696066382 824309747 401987338 570765619 541440666 745773550 625585866 956438793 245615594 948344957 774136095 992982550 317590351 917144710 47092878 287030585 185153565 625255756 807891420 852789505 15129492 795278458 531452976 918433078 372476628 886776930 761100306 911991619 554476939 865651656 595954956 911167480 865446675 867172773 866188206 959298154 606061430 680420605 616948590 723245459 580136459 644261514 169881097 525605969 293507063 736190187 73263359 702356089 792936557 857661071 996721346 998849200 495430571 875563528 218843002 639111207 891564703 954928843 663147559 879450276 55468313 780838150 669758688 685885361 939055780 986601694 108748849 326040234 898505913 959959958 958946237 973601085 973224961 998234831 947405374 985294606 668307124 787310546 640119318 652279237 654545011 918970004 919973862 948689465 377802540 981759854 546497510 900202772 639048025 970413472 548156895 894009582 433758902 542826914 867795455 996569864 348099266 804174698 158855810 579520815 423876235 587697395 402813822 959173480 120916314 484856813 860762550 941764504 102003973 408253236 104668232 242982529 150463937 162999747 654098597 837911952 447342260 566062889 673239318 819275503 730818646 765662353 607047141 847302309 806090554 854710709 751167909 934663368 940813025 979771288 552578998 892720166 819950121 945902956 124992241 694626225 264845238 714500846 774737328 802505963 559821800 957651904 479036726 523244439 413650940 937242228 119135956 685610225 927770310 968453791 142969344 553421692 63138681 138603395 258374149 530115547 195877201 284394932 667351580 680235738 734339037 966319733 943776379 950809033 908404081 988334105 963561530 977344760 13034102 277240330 667372391 681819115 965039253 981396444 295008535 373676816 343457391 688538487 92456699 755823792 710184046 919529763 635113430 901583996 348872466 717745611 41595715 501457950 307518051 437522543 366401925 397859284 660775598 762138014 43466443 576730092 889452927 958873545 438195393 842937881 756658028 775793723 206242817 635683961 173569267 294782163 333909364 601179825 864001385 968942825 227579109 529298368 452925392 759899706 606510170 623598662 187206905 374487135 209010186 468257816 186352158 979062090 252769850 800252454 975751798 989854992 411636092 413349613 391445484 926062771 428572824 653922119 888119386 985021719 172529894 925823223 508222696 819024595 402074746 679601404 877152663 975119393 461229145 999727444 806837297 897777747 344742972 451021179 133847632 388638861 611627548 748511869 870245959 905544009 411594166 791821162 454556523 454905797 80995611 330199107 322445812 705406040 775514278 846635615 812998433 819527552 30446244 974622063 348520857 884651810 522151464 968232497 283471434 437079868 839981391 952319281 776501034 889563497 914264450 951852059 192204481 816747968 901404462 916554651 9767366 930589845 356302886 570755622 528179488 763295821 508001354 897878813 19097228 577750921 556116400 933383064 731942321 905597008 575018811 616745104 851210129 952284040 87393030 641682144 491763514 930699517 845053025 867710090 212803220 833460528 757837260 934295485 817237624 913458558 475503942 660270010 219087831 451794910 141683894 651253126 361938229 957076651 608821995 892930805 416563082 706181399 455952883 540212258 136166185 443032295 343556165 671459955 671272250 759153050 680210404 797715911 467847348 540381515 297209686 859014230 28675147 552065059 139200868 460304558 736694382 854041937 752238673 944933446 825348746 865492948 617260787 891590770 415748592 862028498 1973561 324488582 287259133 652792423 723398656 876676278 555398946 814310226 714381961 756696984 332301896 390947045 125661180 188157240 384597332 551931109 334649649 626712000 241341732 800774752 181293615 344983816 310899843 911352388 861152794 917663588 379651682 519980718 889897679 907869350 614401278 634756236 820354221 965976309 612131745 642482112 701604723 732729325 101814242 739987639 615235909 740796753 318284573 457771095 995147410 999552342 565067824 693117582 634255283 661612883 673065388 762038462 253732332 554515577 126477318 206393975 477324504 828204584 751295058 812719907 883122121 941664391 945391905 951606887 802326494 869010768 41748340 624559922 621233283 887385975 888882308 906303120 879070365 975190949 557784055 972300378 136534339 852436512 892086624 988092627 648684363 741391992 891479344 978074254 339011472 636491505 297408920 427270404 877205533 977598660 332197652 718611019 992875019 999881868 678429758 873161385 583568137 844892890 889289198 899422041 84914208 927427494 875016890 989432054 71676688 403443376 616991912 745982397 230306497 795677465 359403270 593681601 191167873 258067665 603699459 986951684 260890184 691496055 131188699 326467673 977905022 990464431 598857857 895965744 305395349 483989119 519981872 957461873 281711240 860818427 654985315 763645162 844186253 974248278 147169055 947740408 587752616 726436578 845313568 960348243 854066588 929194029 990249269 996784117 521167750 622352424 571838032 986402546 136317811 552832814 748896701 757800046 65428017 320165633 116275654 408329947 332491435 965190508 518021269 645212505 679874430 704469636 309466277 571216825 499051612 869371903 547632410 725284418 890982483 960688637 624305145 949435995 673091606 818008890 525397250 580615225 72631162 306807455 653534823 902589449 542613649 666932466 32343500 738029635 158597319 508292728 942929884 993888497 324150673 520834033 514837641 616920007 192598800 516493552 67155809 482756682 811740157 931005109 867244480 891562725 332753892 698835728 557539363 818801770 661495700 844560459 568778213 866797588 860759024 875383434 630653178 930185598 356954395 991377798 426203274 827518282 931995772 961823983 233197681 588446880 909639542 991724169 677644850 688917000 570032899 801733986 462784138 818184283 310602295 814758953 310574880 972347457 668874252 876429739 369895032 911734732 115067640 611741026 19235470 892330222 204255099 691452543 458467095 606788749 873243123 876914134 661834978 997864765 313355196 546376647 404853406 590972775 801530132 955049013 464487951 950357586 792322788 919944241 611376244 855943262 875173665 940230322 26967598 291722326 672041690 965820214 258576207 766537665 198622811 830967641 766816495 771265163 62350186 711474809 389144239 893436108 186028302 951633094 876064764 981210705 276317940 925191327 621628251 798682431 922916901 971339475 537456434 687499082 705201549 740450240 765130954 879119411 367714817 922317759 224121424 935108405 420762662 519461460 249816005 698337723 458615037 914613965 975080163 987049940 257888089 357307019 507478291 914613364 712443389 993083166 389338741 478581900 786580715 839494325 592130068 777917805 663353523 822502709 986816839 987768473 211165870 490414082 2797795 333086760 576205714 905171517 465194181 590740201 392613010 812611919 797639536 883582954 734107624 919043208 219765267 334117334 533641167 913131877 469014153 924217105 963538125 967807724 144226549 342103863 865821935 996724746 811884001 930695437 777458941 826868120 778530392 920519759 815284537 842076810 112749970 751582912 572534224 817441623 190485108 394731658 907224172 978894472 521007671 601179722 858456501 906744500 135758628 475984737 650213105 685477296 370448021 526329889 462895167 898413190 525604525 736367970 996063032 997925074 294234391 501531411 128998732 685142875 95585417 541442225 778430228 989490213 390895714 687043974 752958 191382975 319038859 890806356 838831771 990806442 991397708 999762004 583339519 703984466 513861981 878346572 800444450 978020612 903106132 929077448 541791238 792090096 579150929 786536824 549218214 950839813 523857020 671582450 394736152 762126771 468676697 647893115 563771095 878478043 823178156 896559906 596169687 684119630 590576362 761994916 194854209 274848659 379819859 421620095 823677913 960481203 654543083 780284811 79201903 650688957 597366752 989875664 159326427 704971879 171344051 848915790 14957392 325875621 626171622 736941150 567581664 798399228 228447793 963050439 749689932 901934212 868531699 967214524 679835194 720569666 787984762 893886185 446961725 763618992 352383876 804441161 943988180 945307952 349445410 374852109 688422939 948057733 659033260 982724143 689594454 692197952 612052962 923201481 13144104 843006199 772431803 959581786 545935577 739788389 431666450 520716636 618955170 843385749 210253843 841317898 377133722 896857762 736465021 918611981 537659330 574700772 453119557 512780945 756515500 869288601 302749279 604100154 517507014 890228970 132843666 390830750 914928037 986879808 6635876 682719047 411575090 779214409 702575467 741178424 225614981 489658044 869719043 982935553 361744109 568599322 918173811 932219857 786769710 999962199 529245336 649239320 105621990 700299477 124990870 376790748 14414135 615674748 76853001 705570700 802028035 996618942 323508682 471841368 432432246 515509303 922906529 998502105 150639480 156957046 356304899 760111139 369056878 619234974 869409490 990312036 584432638 861752878 851264500 939737586 124995524 523734477 682761652 889938206 744381750 864102938 236028515 846846781 325154614 819895104 329014212 536398253 945432793 993115408 688162707 916518634 173495798 390158102 906727930 918954508 171889949 790750223 599096617 679431670 917897920 933845781 227062669 764815838 551463820 702324104 29339444 613956130 859898088 913064167 686645886 900017664 566393543 856231427 171985087 415920934 250805501 307002475 228332198 702188905 743021749 831332032 851321323 992873814 191904237 571441280 974306971 977735348 952410211 979120251 450223050 537616280 448105731 669497422 178291770 232285906 621382886 728214455 513091170 679027132 656465409 981306340 69290714 108407253 129521035 728216175 882417899 987846693 456884018 788607939 746885957 963588071 950173268 986148565 606332592 747411016 608128545 752982414 654767206 908283355 811146248 821265980 478116681 850774586 949494439 977221596 592419927 818714560 209917791 562443411 358176799 874206291 926182678 930830607 578245931 778088204 330543901 883584218 646301390 884311887 60248225 280235261 481027338 673682709 495409464 635390084 78832198 84841823 251365087 689392603 904703295 922452250 269895832 841877678 829429746 897780429 280645377 566794350 531305542 564566542 548151726 976258097 340097655 890287518 957202206 994976683 123017581 683043506 457079633 773406475 653043150 960250102 403884933 754036332 43561851 477904359 162577545 249416443 508153425 623914881 584150128 775611175 290283309 829410030 422136334 907766718 779649238 785076077 408130528 497506374 932230109 934543847 902545486 953145682 799453620 918567800 44287893 453098238 832041789 923149250 669228536 725138985 325817749 457793199 470813614 619689092 443845968 938539714 470668846 829763745 737681101 841915735 699146665 998901254 393764478 705471903 527648130 658178300 865940087 915597335 263603149 336789688 979137644 985109444 876715288 946681953 352404801 486566470 164584805 684506285 874506547 985321447 409223328 416686110 951161964 977762521 3971335 226880151 152865467 445072970 312902347 351611297 41874933 770059942 732596627 967913691 327839376 658951275 522242606 938694132 861022782 867091908 120880192 452702405 644808108 649507363 742949031 880493570 562775015 746089899 672484252 766166150 846682337 939184369 144201290 411412428 579154964 677138581 969574595 991626867 583184904 858313208 132266846 556142348 762775649 876679241 637048864 998656927 904354675 960586925 871938997 960997333 239239873 473962373 569553373 636243144 991286746 992205905 984253319 984508145 183770342 983153645 693109887 944027438 415099999 831621765 335614252 980561791 412449749 967637723 250297945 839900279 682262266 746064122 798386702 953059053 99212738 627823626 810894776 883496884 801994940 835709136 757831107 888959320 933100019 992809112 96137447 803316672 999184583 999924759 517140175 914853938 443462281 720219092 801698526 849328148 15462531 931395480 349291575 554121276 717279523 763245638 703214459 762227419 369912334 472969237 930708222 934185449 999025525 999701615 918010788 919047533 759374772 906975884 634671264 901875298 939343484 953244297 420952860 543242514 987955296 992859680 785353761 951154869 670408619 761702473 836747975 896198468 160405570 945425906 190827454 823131242 643121417 831138904 107908045 153800270 268834991 704379478 856393192 946974489 478143365 820921698 118227858 193197483 319611785 443846584 869510407 925623583 935560588 984677912 303279290 389198858 749896475 987587402 887263223 897553125 28171023 737402735 783223515 962890327 462778121 909179848 311853490 616171472 626253008 698333630 613409643 967453326 8896829 708889009 435897242 772561846 761242522 836097791 525993595 756462735 960809959 974606395 763723267 795853815 303060318 910110297 762168006 862840186 64889319 638127780 870625614 975866799 566752698 881636695 79551699 314594987 61186635 141359951 281219240 354691173 793296198 855656320 242366764 563533910 237635797 393854804 542292378 671128602 484889037 792348370 542955373 568621602 404817890 879778671 822770536 978327102 503723932 525582768 917823172 992640727 178576246 482766431 94609506 145584369 766344403 948954927 163933616 956660038 451442503 908146794 398507632 833957722 663415530 941846285 659163400 898883700 331131702 896691293 665735174 858886848 352756249 396869427 960717769 997900806 133018538 208246261 514787834 741101135 32597046 272558012 458390850 941114827 202272903 479585885 605989168 725698364 94354986 963199486 340553706 511218258 349273276 512295385 974286938 993211371 69970549 426805917 598118283 832618655 672349182 728783703 812462202 838762762 302160039 396616858 426050429 959770701 463928737 644565222 199335543 505908658 36361686 92141866 168505677 695703812 151284357 338443922 288862003 730595123 605264677 732477444 777603113 984625332 316852010 993711149 894089470 909917752 145560423 217033797 184034635 589367101 370177534 370952776 459673357 680007441 940957182 955503063 585558399 748150238 80583734 749541214 511134321 787961236 49386851 917791742 249990617 984435824 540441328 580893352 867765337 957176443 556887841 686010905 812178845 974703642 172580099 355564872 361761646 638130938 530751672 729039543 761104224 878949061 389327959 413660094 604012799 865133105 199320798 805143851 8422413 57415156 854142408 995971235 48121807 647673823 332912309 812795491 236786895 388172185 568212213 688262617 113599926 219291536 264737179 583390808 678132041 939058799 859620157 867989126 153257985 876090935 179029628 583460356 707178918 947615382 919788990 988437155 626134707 723037004 511613182 997170830 825201691 988031729 825651113 909752098 31413336 359999811 99735653 849498483 532212384 792227938 425130895 998678826 923102639 926283574 36609942 129095904 693947007 729461847 343028571 980209026 43538309 391809578 9705125 661354013 932653021 937802802 303359697 928829723 273091143 920111604 699849863 703711804 677513503 686388299 382950420 582044284 45981908 291917297 788098876 906107950 348276543 911564265 928585937 945459863 912823416 951620291 998492013 999587099 86786908 748450174 15689591 764932094 931364255 955604168 886366332 992484079 409583081 701656533 708107075 738160303 158179778 391997191 30773196 938418586 617951824 974629494 359407001 836997693 790940983 809338416 660795719 972782847 496038267 709973437 431198405 460640899 74536208 190751157 200170692 592618079 675287654 994710754 108017054 899517699 775019460 895536282 690291912 691266297 413792186 583404190 406133570 921039535 588552134 655490477 52165589 779768829 560393511 809963203 187268979 797937479 976076527 993843611 240502203 943124829 797314028 934782698 206904967 988235830 948808650 983841556 84301436 399181045 628513597 884153925 441635625 608038278 288990450 777019144 714468558 876356056 882549236 899856353 10858505 40252488 468329009 534712552 556708286 582054605 911680868 950445678 740434995 970065181 818538900 842294376 646439584 927775821 766112370 779309392 388329500 920432365 446852237 566776185 305833567 549091221 451957569 645484311 810769814 837748681 491286310 857862386 348149676 646123132 923739959 983679367 103468832 567972423 812089264 957669934 141281852 702965279 650635305 954428788 442165252 528389327 983822350 990001757 359533608 658119180 557182943 790953259 520125631 892068741 345205644 668492648 805370781 965083707 706439431 818244335 556144981 949617710 26018026 845538043 714354023 965515493 148705569 977630975 178513391 825182449 417278157 682468142 767113532 979872266 365347528 575292151 211091993 819254558 64414538 303489987 181544135 375932506 277149646 631226601 90720974 895876385 765015673 899247804 430329738 512172669 397573739 411377449 309820588 724434437 995056924 999156466 392164656 533324916 752743511 996271166 587996926 994847100 799500972 994248422 487201960 585396144 303812447 344680106 570700285 745805675 550842869 591561936 721462985 856691927 811452210 987382339 884360106 914032451 118103348 167903864 536855488 648435324 411797728 621558114 742941956 756529894 302439946 800197899 59478420 383254285 994364716 994773587 558708034 832811349 189430163 746115101 687885407 959100956 122642393 417683211 880244775 886579622 861272962 886137554 850972085 877060745 699024978 845464703 60373215 834270108 333421057 656513270 204840415 999604167 869605984 974522269 450951466 507625818 110595377 727043521 707879713 938262626 857406200 869470044 866238409 993948155 654394460 829023441 268104236 319624389 87353987 783802043 521580057 834570220 846203946 966022129 452258854 958224197 536876603 837748654 653738271 780403589 428954377 604335898 627347631 838764043 527434054 704631662 693663699 985052938 164322985 577132466 610966140 903130691 694803394 960781359 453683837 955961431 205879585 929490192 15338824 594776418 67079723 666954455 947494229 992620573 455304281 544008140 102174867 851773751 949405012 994177574 517478074 994184730 66597462 962423165 461885004 564770168 954595389 978784122 261583036 877996378 656977918 666284048 103641094 904586452 226668236 762415249 109610217 569995521 370214977 481615624 245038917 880895239 874644581 950546486 43113647 457218160 256624617 767422398 116232805 685137250 977628841 984874078 509875599 895336915 459614743 460126527 415050421 837953938 649765109 885087651 722726761 793147813 824404397 986498988 614453164 999312969 433166659 722786763 296519552 821907358 807361967 956771036 143146984 534281200 121569446 339772768 324270155 764682333 899216009 902998120 2660347 736857396 999044192 999832383 308226056 382237040 417558281 548118669 998683349 999086767 406728155 428070523 419233426 887773879 663893535 984831181 270719437 311726374 465285870 897037744 801186716 983446609 130997409 510882314 110112802 812597815 878834095 988867169 759108255 936799633 517628663 555117928 171904155 592084906 592177327 758938430 156881732 418385852 637977332 706454166 299189950 668322047 88033318 823241774 39682931 453684461 760735261 919361730 667612122 941547436 223244431 761477212 144422114 932549978 112601969 166639060 541218542 626978379 927824416 952753246 631045114 817873001 459716591 963312901 523315302 753334450 131428006 648413591 64602664 394988873 897261604 997041903 792915021 871275983 576560281 701788681 51343148 646406770 318916919 669327439 951586095 984980154 862185724 891344483 131270581 795739071 564612230 904375837 478455033 586079339 56528231 348542487 867493574 900963399 619900321 884708241 358803314 790387854 274599042 806228470 113308414 623510848 985095172 989802249 770312356 995661632 332330330 680939856 374341349 836252635 212634817 245041543 763521153 807713799 215738567 424156757 230271990 846785173 563076341 784855460 202529648 341729432 935319000 954565206 207411166 666072687 465526083 500343405 27117162 230063885 692809034 973604681 638381332 883815573 54132503 395055246 956101152 984401839 600648301 789605892 713150691 993746305 198836067 685182357 250663310 950965328 301815567 476140751 995883502 996602508 395083570 924443139 302358616 889723218 161341056 236515189 790961778 982941559 276868365 310652349 778258005 804388211 34180010 642316265 834261001 936107647 92512270 498791142 966813476 988914443 90284382 415456362 100638999 180294775 752006827 895717606 314671533 718625060 35737789 431432824 107386806 975909824 942873341 948082736 118679503 476393990 507640419 728965895 405871166 490921290 152067466 758077182 952032745 979571811 179651901 610700806 165692570 656332123 609872225 799390922 728799008 833779105 146978052 179229402 276793816 601466745 261492537 710904033 625116380 956410549 95879661 833420878 866980529 954384258 782217737 953363409 94791242 236944428 63591046 509365079 709350240 876922161 337948565 509852442 249659205 889754566 336455675 515126075 154004495 453870844 700240929 952655827 824934640 970693359 244641986 913599150 719002267 990785896 927046531 966634985 135690188 672332300 943056336 966269646 953753694 976211526 301542048 871038689 894730144 935687515 538384282 931157584 910845356 992111817 478243230 944984259 278813217 986535341 653384477 683299098 814320925 888041285 582485927 600961636 34422137 495890290 770318982 912288205 342146346 736458348 554713535 949405685 623872689 793534728 514242853 891474085 194515410 289200615 65967115 239952020 229390612 694355054 837810382 853610465 904424398 958505022 813476568 913323537 87311446 432769642 426836007 428815619 273265421 629172514 109829219 948247644 744409972 783933679 565215513 739386097 190779106 658500728 15671618 276504363 732665498 923796587 360199600 730577162 251136822 802815193 773873523 802295499 826875628 935378600 244082526 455627319 948784620 985594778 990948172 993312137 89514205 380927423 445866150 757215038 969139541 970213438 962042477 983420275 824954522 837446861 755145456 971093339 627886800 831056015 23616162 839464142 817588164 901228897 484282015 523729637 333138699 896750992 163750031 995480543 74058483 538743948 551254823 702640792 767534454 905091195 983561309 989178428 429150492 963202455 610452303 784218113 914670816 918425127 807956878 816164748 466684103 924197971 208981689 633190113 472125174 496641161 349950122 885241126 243848377 768985146 950805517 990074701 349746133 923470791 863969583 989874592 388534413 478703810 28730148 383645483 370678271 490764618 172085204 421514583 596782644 915765158 341945893 949947981 452134684 458796286 936721609 942698832 313388737 522835639 942268106 945810639 822841501 943008868 919368072 925527851 635965571 853493085 329188377 547831762 2592049 884883811 912671204 939303649 939858355 985403120 465492692 768596260 44648228 303450435 60853335 956632473 968976925 972635542 131272593 172924802 86205698 218001729 892568891 994613286 985281878 995314477 955587528 985883463 810174837 867657634 644097582 871362955 243109244 258895191 925507122 926945405 877822341 880754378 434630059 804338010 485923206 620138274 61643681 740104298 75404510 859890678 460976970 792983381 883275186 917540214 598841645 971642222 311492412 738617741 98958824 858922494 370323962 551424901 978524874 985830492 385920383 930148197 745269132 914450278 672930330 881721423 529574390 845812645 162601066 664603961 967279052 989674242 6053670 651294724 548495685 714977112 491668095 562049275 786569368 927519487 628820846 844684737 273675870 976019976 705390841 723204841 641533983 878585522 970002574 993186924 98259199 871277715 903040809 974560139 770015320 878835461 538026581 571027857 86954261 850347753 826462848 992628261 514978787 881960800 805497860 821232487 635640692 855937208 778517624 879974666 940711462 997686321 713354802 970216682 728232237 863553851 8871447 255166819 386003939 465298586 853218692 877650376 393609561 476149691 155015784 241665436 566462202 732227354 896512377 964112319 152693542 902961178 706019329 829166424 167577278 589628852 657436703 926085030 878000110 923363106 807027589 947998443 955467973 974711660 588052192 932963254 383154526 620313052 809299694 930676793 540550983 836098646 906916834 929631935 820443924 961431343 472265874 918053224 15175750 589872830 930279031 957588108 990726380 994419826 696452852 728033981 500785242 809078674 623644791 646671541 490016395 588416463 7041075 376527057 932935949 937657621 237291439 980388252 56058336 362098040 557614866 848748054 655450537 942626778 988474842 995133200 290951009 722630125 322412567 584713057 877347658 915790403 26559623 630102160 330972239 695486055 434661698 628959598 851604086 863776708 176612583 388737518 869079188 944004330 396438707 971568883 147068641 355027126 58381022 332260683 121807304 553254765 74301804 811834226 643139708 787578673 782895938 966066583 188617839 585628738 259044433 668957615 305349857 590866096 527696938 575472233 869194349 946248875 849542250 936242418 905059470 935032302 616762005 937278739 304662527 639547417 670324588 982668406 308088110 313643446 123224662 809677482 38179485 779629713 684169289 712673943 167581169 706301359 730354385 983947302 211470206 444694823 209884697 367603762 826122960 997870621 991956628 994456857 350279355 445065151 909990874 965245844 13349555 678830160 503360693 571544537 931225191 937205066 782599483 944866591 810661576 894173405 714528756 983368062 646460550 820303453 636908918 874961873 129830054 427759508 795827931 807390751 277411055 949465979 269189348 771324315 612737393 932731470 886455732 997204326 330991517 848586881 497453566 600498074 727509669 917948605 649485018 797465385 241837879 587695053 995543391 996155445 322344115 611224688 796576479 949691100 140667443 710861187 46072024 163394513 975542345 985690122 268835653 936365455 624764971 979881110 793874851 877861819 600001480 750984389 587425107 947022009 592267558 641833040 812508476 903302048 46254842 588139728 836780870 884759709 768897513 918658608 450350228 583143500 464923620 767137015 408689897 415855522 326440211 928892535 771554140 904715014 814380808 913216259 404206413 540849015 996774548 999150106 726257667 737980048 185809248 251852678 789229642 981872426 278059578 305074772 167354269 609059070 563742437 898774125 922496902 986152540 632169650 762902819 694510879 890947531 851519216 978565650 514156175 540740528 867811403 910679006 900335666 981398745 399571011 624356063 633891219 813801050 164446988 534612420 262958957 673238831 488168406 619215445 422670918 610389729 294569727 313454752 247172092 990973029 338624725 841966421 821414636 936027337 451688045 451881475 280542350 557870065 870347143 964021020 194272975 984599060 554694494 705581444 244287571 533338594 975409067 998186198 59214993 413729096 947016499 989796329 184385860 865599040 157397240 696689798 958481461 963257761 121593284 770258394 702370415 797200013 563683307 673485560 615664636 688891658 366221953 408764848 523892050 905169924 782281217 833449403 174253190 745616408 157838577 797618412 184602910 630555587 192228108 804913556 557691713 819443849 501269752 875761636 658076196 904007123 551156108 583984758 609320485 752339618 995796882 998364336 943181775 990239592 347146394 527563787 752006100 984006912 292798926 369355581 700132276 966481002 256236095 847532040 788014903 892418423 985139615 991303692 366851889 430798711 6807264 118289804 123811898 517797601 61651958 710781260 804739481 871390471 557886031 981106608 827543859 944762632 895782678 954351898 486303427 599585799 854058269 983179515 449398774 814893944 568107408 861395681 318694757 809038674 846777607 919278411 256208164 307549007 685666699 753497062 840741437 863308101 709537435 841604898 319335340 588035649 780781551 925878989 894416210 987892046 250593561 498461070 909483576 930905925 410263533 580050737 507056374 966083620 914195841 959641760 879362320 966921341 11713674 736760709 68669517 220501210 603128535 761544919 96170210 289134095 914753894 931267601 746037077 810101498 48588871 101283239 142372864 838886745 9673349 853614053 157369067 616970655 971709517 985880309 403877853 619491207 824102284 898360687 150714743 743072300 721553346 849963952 29461383 669980602 796327724 960083973 109860050 146361485 284906909 461153949 231517185 950724845 659400520 764733819 418391371 958352230 730083695 787470986 715884062 924288506 938274883 966492286 387103684 884794759 546276595 678298482 630356547 798247449 123450661 828904631 157891836 306591560 54164916 867581196 581248035 982999386 604964741 746591703 581410947 981157438 514866522 911582136 904480177 921440051 654563868 813037756 605746777 946062866 852004594 904839709 640284515 774455535 595277711 677122520 696005393 952809532 233608139 621553711 529166146 652282837 714273761 721300535 420364635 687296719 170196394 983896985 268556735 726728417 826970663 840010045 717376385 736504656 571615196 975549978 432484176 984682742 771623897 896981288 46857076 156238491 61913536 159626351 279255442 570741950 359821914 793526072 41398426 797003206 255969045 287264672 94382205 718177712 970427911 981714501 308043516 383956714 132025194 542309091 935301427 948960530 506953727 581734459 266883412 440527224 443261411 686223971 250193509 678474746 104156856 378417764 147069056 556122492 809087892 814826727 117542272 122259853 411406957 507082508 931237063 975186546 394129706 864262661 201854498 674370019 267502049 469744462 620838829 651918277 494385882 539901921 514552471 516974945 711092362 999048611 65214842 841844367 470491132 767544406 578358111 988646381 747205428 748103742 368120314 421808546 351267189 756625211 206761715 747179251 120926236 398145775 406839209 453391139 233799730 354098879 981638039 983508194 781086217 903594058 663542398 894562736 418599089 666088271 369269276 543548220 886654613 987650347 440965723 571161685 782448020 817931213 995898951 997280123 970981929 997068131 571255594 942440916 230560959 921559618 237917242 875170632 514451372 675367218 71180670 393663156 820651641 885091843 773003382 820230814 864017402 999911056 918695047 951788026 58905332 198198931 829475099 967248448 806454436 919013750 589448898 836608178 701976176 820393089 537156003 713361108 527139311 997856949 768805436 956822008 594673020 901759286 862170677 945799228 525420388 671917175 987333233 993481327 23878424 543781826 58195697 229668641 248720206 799973790 317216936 497879707 455801167 949624871 792233573 836228150 195106039 824146330 823623167 891753359 931666947 957678430 837028505 876693239 116660568 136913831 430572214 845848782 961773642 993605042 564607934 826128320 490556594 739846065 33677249 409170304 470792224 814128442 873783142 915053707 785694038 818168747 333552112 975561264 759881422 972120697 834616194 891096395 46233905 504201257 60777242 625626902 115325403 637438280 16726352 396131595 128574687 548975386 296452528 582317548 384290163 491494492 55054040 769613529 575291793 849213591 357898519 708123341 340380249 421148382 467650135 613076111 48475847 55052055 699250064 776072134 512657867 677909257 841659041 885220152 848161068 887107933 89975870 175340026 656678262 924150655 937186511 995466453 197582902 926729652 182604328 521063959 567542279 803378401 743032408 897374662 18273889 151589737 817764646 992484755 458943666 884289066 671933397 897280921 722647241 945399731 21083417 26819387 476127046 825761445 177065684 505355511 298118441 968216402 788399721 814498476 984615925 997318886 750459393 811662606 367937483 606451404 855440155 909639527 332594733 803579459 794568927 817942148 215795173 759566275 829892173 877820728 101942036 479632238 340952370 877427068 215140970 941713216 211535489 947828325 657072014 723494698 230943136 761047401 780810370 991483285 352661327 642851516 672158520 970245521 42697434 900657239 937962049 939217328 436402241 634469020 227335271 565018255 569018805 959271066 902652480 999098110 162302545 804206737 278651820 606233141 899875801 907515936 229448521 572961710 739058199 925102169 724427687 937079259 342197601 637810889 360765674 622014798 443639190 692578701 333121244 840847633 861725975 885449544 400234018 880750015 329631614 563356575 620234216 643466536 746147286 762364958 204547764 626307968 857644391 962254969 97898421 464441108 691714375 869851746 108302376 694729587 304520559 822255260 256750675 865937324 740690340 904543144 796547455 928064275 803033977 985192142 192169482 659642018 741189955 889070070 22048753 42414488 32267261 428513991 923914365 962543456 504848862 877975197 465196411 822861585 775685128 996100543 108948615 869723196 988294058 995623164 667429499 988872210 134995213 518592378 11303376 891063795 510387817 588277785 608054650 980265580 23025825 275551451 604301682 786775405 922697962 925680052 97461828 434913367 980688213 981587877 591916066 644109892 500781482 691334436 747528575 796455090 967119631 999870101 433475721 563008967 778171183 819597416 367363183 380725634 895885053 965984403 547998496 870116599 345596235 750624182 511320967 711809848 84356614 475102794 834750488 985583250 235018098 706419973 697778283 954457449 306012433 772858631 810717172 931879682 208104962 486295193 437003289 491547751 129626233 702178583 885213160 906140618 50475143 663971986 591402831 938089946 100770194 869691928 537821908 737971975 250345347 814713594 897261648 981906712 250489915 947467857 182797561 346613640 621662743 675306222 631781961 896478120 60544086 560957950 24482623 424890791 538761029 728757943 497628845 571015423 754384424 995960468 584481610 787080677 356610843 832797022 438301159 692273506 74327179 157311894 267771606 489643870 338646330 726402044 701466993 847396422 831398756 950789901 490403218 979743219 880682985 965320219 171468635 414881821 868687011 922596616 817534537 950268930 742252232 895213360 481818408 988931715 915131046 993736194 538374567 985929418 250182505 902870594 495987952 534069406 533048208 648231813 400180346 993441781 760154233 871932499 283594401 676896165 961004429 985273434 931223200 944916193 601279009 807629903 880286086 997832451 641230919 736132347 455830168 487460165 663127948 717940488 610483682 801786990 74473704 306022768 307222773 692741769 663846565 748853879 991839367 992309238 750976230 763505681 427890708 802425129 875169064 981671197 609027605 965428366 576782197 961539782 102193944 788257293 311888126 325603336 848714514 996062184 57002595 337629505 615140095 829591802 325685473 402194406 83731175 184529159 544674486 870238938 926289618 984510684 94998764 203755253 552283234 575902033 414005809 473618160 490716015 895223488 811386116 812898322 495678848 777584554 551463119 794024777 519185744 553907545 328827650 729106804 459883419 951349280 758253029 772809423 258037961 642992448 164843663 305064247 55072970 215213968 566956054 983883325 316693701 968942420 607424335 854458522 190188651 993493030 3183551 258578401 812584998 885135474 384240311 430883792 290630931 801037798 322076438 836327348 373696184 617312062 975255648 988913812 183004968 282160929 622363827 713914174 853348306 921492555 696715752 895773107 861727832 993643111 936777186 943898797 35357403 475174486 104352864 700925462 487216146 807966632 487611983 812808191 813868619 957177998 688571254 787110701 279490278 880303438 792351850 892773808 109023449 299175764 170141531 410558259 31877851 853537967 665360474 818497809 202634923 920789028 199966496 457562903 7212143 466078100 694778904 848511787 458927645 796691934 585376828 865057714 371330193 547413975 116933297 400638355 830208766 931165855 380200853 674119770 688639631 874954470 764245591 798570882 50665628 463532336 15126021 916429207 69951825 154367443 74404657 213902798 859901918 903739163 604774892 763219367 411655587 800273907 946583371 957480202 883666015 969753561 74817611 214368268 382360408 816550868 981414448 990943477 80932765 898487111 833033525 866233478 669046210 857088951 397839828 788568021 620288953 982234679 680984270 853004659 144291144 967489985 818971519 971246352 913923431 931988057 371556764 827307272 643323163 876609046 365581324 805141447 522254151 782687889 513543442 629818960 687012647 731352809 279008345 964768271 466384356 547449949 372916465 830885954 673277078 853972142 994864994 998433082 999105758 999176886 811221084 812293219 497712076 863162870 483923065 861316831 427418169 572733098 870596248 902724655 602709512 812664195 375977841 910887333 226199608 331612732 604422579 835872366 874823202 922839845 650399668 710478421 228856370 349094861 662684185 874559364 205608498 578023995 140383566 305142361 498175761 571689369 278101154 889409962 418469698 728921837 558458557 737812864 332512172 556142330 296019657 621917885 414631766 758745205 671010461 745080459 371570417 856105493 575835080 724447597 618006743 989833989 986861572 993609636 124711225 416284262 901763059 941924493 462418164 556113954 628579681 933005428 456344959 496626586 891097139 918009165 229808413 410613253 495477486 823424413 839229634 856466888 815062907 852145071 15107355 379218314 765289727 857721215 404775182 442940856 904207091 963914732 837642212 909834699 853718532 929320809 790824348 800814921 503573650 805772669 855592237 873112482 290162776 668390077 353319079 605434039 904773552 976720914 702165171 879972297 448117197 477008863 554055435 866452500 261543710 863702175 301424442 991530565 612659648 773727961 526273607 555426895 228958683 821849311 526657291 527667584 692651847 840808970 201453171 240533492 562938223 592764683 332178247 397794744 966751027 988534016 720506169 777144696 771044094 913703603 953813811 990593537 688134057 759962255 968450201 989109142 805198380 899469671 311714836 530752407 273215114 399422110 300877380 698802095 860190702 894295309 274259669 989405127 646882584 854343158 126300228 181696401 995246641 996202951 347881931 955350900 353101680 611994830 264890727 377001083 65587830 214064377 600152959 796470963 938134163 938845539 447074547 946574690 74620680 344637917 792931647 864751787 400133585 785086698 631052300 879875000 492395017 573886022 193553315 852527709 374098910 803933355 296838789 489299962 220185968 828603830 509656012 548942760 521214469 897609069 385659522 502034634 987116204 988797595 789165501 923723459 448377200 666020000 586297705 919155956 642893287 910246729 57825857 349195099 869434736 993749740 211319773 579933785 888715974 932985176 118348858 664410706 742174767 977780893 969151759 984879758 313677318 648376468 805241506 855554519 47144277 230008951 807050568 906082963 667815538 803673231 115004096 800070656 46026157 762206567 870074181 991677006 651424174 934522785 589780448 942333577 421318900 803385242 300324564 732775664 422053415 523537999 198380429 886483422 580993804 634633636 840304859 953509441 855311943 918621523 723297712 819748707 514120990 643861172 645070631 696516366 204835748 615799917 778145198 814432885 953345790 957004027 900216801 993926607 435479048 468958829 133372244 998512609 777815260 857043143 898201160 936289297 261304296 996073567 127576079 574364452 299372168 843710654 211434033 913903279 413527987 545875197 14207898 165954595 452667194 911468158 154573112 572860233 762511319 967036970 647080540 945914226 585356175 641674094 189642533 928304643 841318424 843740165 501056422 914132362 43201614 636372796 889039300 977009654 745495170 755682376 638117917 836452068 973258573 986373465 28671868 695395729 688944088 926835408 936041937 955231995 111275484 811997322 665027841 920443875 813608470 949473211 530470419 991125520 422247275 598691137 613441148 720984440 303691071 943180563 953878285 984859189 184838829 705678278 403610285 591009015 625287160 907513280 906920755 956006689 704091633 825343897 380893173 708360156 716809841 760135281 686071662 756997825 550361830 710231153 20612629 360354066 271311098 433120783 550217599 588761276 637649799 874809276 115771030 784202255 633629827 805825393 205321462 285916326 55252675 454057076 654214116 889421081 271021978 983761413 856353507 927377331 302377736 842091787 6576922 969403379 697212370 822425156 819236522 902658896 629956413 717975230 398253884 681884644 359545483 487632244 400598550 835577528 906422347 945723193 202082471 423787370 97131547 417962733 806326990 894290108 713273726 989726138 240322063 783204652 870588428 947586543 460211318 825235230 154048400 966302412 476690000 747556116 59460759 516255681 592350009 619530704 583256271 857324357 101955076 765104903 632975190 925070605 686003863 879803330 204965531 957065250 306736601 463166082 206015027 715168520 607173131 704447723 524217016 846964787 943684741 974412083 907752881 985933045 387536314 483702399 608860142 854851458 867364704 902572559 981109194 996316665 54667760 806339369 177045503 369244817 395371787 557635070 564256014 973464186 828321376 978320251 584679428 706813367 58365777 484612233 619597990 823079749 271505192 667731237 250480040 527184494 197057007 453492678 834471192 902666466 384710346 698835986 828859750 845496580 344233085 733444574 444482655 892143863 433513121 725866637 26886284 286444770 641612398 756672707 683761697 767678049 271411548 678807722 183332452 756950357 492040010 795415159 365856684 705400475 13565392 65147344 323420790 868038683 419940610 644113840 882046199 995328843 730712762 817643615 759705525 983124286 378544147 494275315 776490652 885916704 835570820 924390362 224339590 531720651 258485415 473813753 371369709 977922682 649959227 779232446 307352786 807921272 636671016 982309570 267774622 382038151 793380678 977626643 104529426 974425318 561350465 786918520 298721867 705964912 969637526 972992021 498847828 828572497 681136919 970473831 903070859 910419724 156755883 194756874 187827569 448364491 459681638 968886878 56291184 432102909 51617454 652825471 590019504 663254005 808194410 839925269 51435645 140874683 70956340 968702853 442338012 452032134 40945813 155732370 831048201 926475722 625214603 819581740 913858464 919354191 212972647 757783289 92421270 589232067 534718345 660512485 915905483 971848818 865293813 891220951 932130305 964083019 868271660 904969967 1996199 446446905 478126249 571101093 991586795 997477297 905615045 969564038 770910931 801084769 199886717 243698174 297974461 310555501 8374787 470218232 745112710 924251774 706286186 930016485 471626970 843660305 354337389 665900038 439292709 873555954 326392155 475660822 387222929 998547945 430397168 513488075 635212821 960432518 578433137 780998761 251896784 931655525 308579062 881425623 8685228 108740933 28663022 759340195 559471512 888064133 735421878 906061114 239693296 295437663 122099230 266786019 584071566 938660340 502301112 960474290 686735767 944041406 460526060 860863929 63747896 566336948 25123404 673497297 603027780 961149288 834638429 996203815 345936408 544769156 460916856 605041018 876756055 968746921 535736409 953594519 900077849 912024792 753928711 985812950 836938959 988705981 384318799 713097403 88097433 96881491 668269299 873539751 127439004 220410846 847068050 995776053 665257194 945770368 753893242 972813680 407873724 483354392 491193276 527276088 514919883 516466285 211773662 667519027 7797070 320679992 842940813 947631022 508215816 823354875 293791967 684044500 504219608 743975574 21448399 831343193 245001969 527137221 724807740 981686336 906839798 964264428 130449340 873928252 726986815 783899141 40661387 808266508 346243916 383450740 675328948 930828403 76167794 104881257 921218666 948698777 635524039 647421637 504833424 903837991 964399728 976898534 49644749 672661527 989958272 999395483 437680548 811758951 597616072 965266774 281209177 574499576 53718539 260451359 989331486 991369214 203464806 249013971 47445166 826693352 787341357 798246334 579630614 972861022 609304406 865795886 394325979 462685406 953110229 991085326 577053462 588551564 981620539 996151939 922047529 973882030 509892127 677844800 142043421 292438312 803928869 910454523 40090412 909414310 285039837 857397959 7080884 791597350 45471697 670164305 100903113 138515730 458049941 891411409 438222972 790197748 403126738 532605968 806886361 884295743 573713722 849524778 407059438 863076205 680520615 718484669 208287855 328314225 411123082 958232485 773567744 928896281 452580539 701417824 340093308 484174927 695612365 971914988 825696517 830085328 386776202 679791909 618026346 900048215 547985426 784232878 301778800 966537195 677387670 912356122 103929122 409334077 366223635 716973693 123477013 770403364 147230063 572453451 820960952 853922347 474562997 995940841 539024281 739318205 437998410 667536462 993962272 995814444 522075084 538762787 930751902 950546831 519549023 970239980 539988266 830998090 980096243 997977848 949716519 993831035 831866708 937663112 859498865 910443849 868304269 892237204 777288671 810590962 268493031 319849357 111047551 570784604 105141871 934898741 525723132 572600261 752714048 930074164 646563151 662995722 396108813 910037710 468702852 491447402 812577935 976419761 126396546 192313782 647711774 740872893 568984861 587433233 292209434 608499763 178415802 350502551 267876229 862026487 58922752 497209768 372813386 383867826 759948951 797783662 146775651 939947899 495652551 784677822 88632314 871504688 953652647 968752095 504715847 776774564 374463701 748559359 391841465 529645191 58334466 751723115 469451175 978256456 379153372 682048630 495637266 604565658 383230763 554937305 522719345 793750276 724411789 840707112 651099573 672653909 135759122 624010805 447680195 619844879 980623709 991788447 100327983 772258656 466126677 800353170 849907951 992707044 41125048 74931809 971869167 981221534 922732841 956759629 877046217 979674940 895130860 933059076 879032819 937654014 438627808 541998053 672972772 957159584 671479150 860081074 690679165 880861239 572938103 757872398 74497838 377060258 78240735 318879854 400307155 789491354 587849146 698972151 768035412 921036759 673704014 805734013 89229517 212864348 367716874 879671999 477867651 834561161 500151277 773761137 613473585 670895350 950520202 992228310 464328 157638514 913397449 921544590 482010462 576981048 540748941 786185676 272020476 732508989 792759428 797930357 247573838 702700004 294779689 694364214 568836799 630974369 613772870 695958894 175136394 408908048 953547876 982928025 415878824 697437272 828775569 899267005 243367009 585846305 666585022 988258573 666711890 872647040 871264427 921333237 491869029 759413207 721318428 785121608 571049111 875822750 209932166 240761452 804198399 955870714 944312067 968188346 234592699 655705153 609302985 675975052 150084624 973140579 186715859 433506211 361309698 988080663 841857487 872698300 947214531 947266861 879528032 891463203 146884853 148282120 930329034 950046837 971136561 978761598 450539814 684285717 934729865 943119351 332073299 514944492 133865508 355141361 528350084 901485821 39512908 886602627 650413928 917745963 623426807 943722783 70220391 507364869 815640949 915632445 489135991 958174168 481175640 702896194 928266349 998195883 469547733 840158050 893940567 983926139 380043462 625418032 254123080 929890405 194054384 194288578 237090591 720683286 376998151 442781465 603503792 772858766 512013308 801344886 319462917 955450079 27894380 749839245 133253669 615566605 120058710 911498870 699914503 732143878 863571448 890639939 836705091 880903581 286928405 351681208 350282391 405067537 57455099 253138451 483040639 733076437 263128068 424162925 278565204 523167197 49210177 53097955 72829538 721398560 942405037 944940948 623640917 807492819 102723014 921742117 507703993 985707324 496342442 963299485 275425793 612908837 327087418 859660924 648645840 873426102 328850224 504781896 836325010 932004422 789809294 913358929 392103955 980491791 834086533 985043344 440162378 518954995 269273066 660878021 501453049 731307138 163627971 572138809 238352946 314376077 274703637 568732111 266186468 868949491 187253582 420489490 54239411 796113380 399764159 788369209 72275981 627636532 124780313 568000845 900867745 930728583 479847270 909532503 601729336 756572262 564832749 825377914 290079100 946117033 380693309 902199967 992812438 998138920 805090835 987043333 138855111 713604139 720418955 938356996 597307544 630117204 67810165 85740104 300352516 843232646 558493316 618774727 852479468 946434812 694299095 698416664 929643385 983917811 384780766 818568733 661607239 994300199 20339227 421075534 435787050 633468702 172638184 825865563 669004394 732360615 313846292 819389681 70895672 608509550 133862131 727179828 723132614 885146873 482214261 541008402 265030380 970411210 576508108 846717529 755928144 793575669 620533606 871938703 876437616 957097894 307343973 307435004 214742312 692141952 940796006 949004908 457608473 865213325 135271317 635663092 289062675 940081508 190314969 773743613 505625573 842000756 683527846 981085767 215509227 895293281 445648513 711556857 149907476 397897371 816032793 943030824 1975512 380298217 876637084 887746586 119253196 733805402 299214196 853212992 738273950 743643940 745632916 746456970 768080300 842740007 135232601 568998931 799472836 901508112 496211389 517630254 171246176 758262136 160694297 503047134 732406002 740188068 648699284 759149484 726509706 797517766 842561306 915269303 689630959 800643762 335683220 382674891 353618505 626781696 215132904 506797657 686026858 805268110 951547942 980247620 31636498 365444182 889399002 960071870 272570814 630614961 882370657 894569035 540847882 982831027 713768361 827965029 839350147 984046275 688821346 758684987 899010041 908347061 58167480 401782532 153767295 239120117 547515872 609883245 18265997 739025018 370739154 930578863 549986115 722461796 740485393 830470727 243151197 817862879 499296350 703365599 254647067 925910469 11479457 617225184 234776493 261050492 354667087 620249250 532659787 797921364 25955147 923918238 86456620 703978619 716116883 840152547 812954017 893622567 228234182 559854660 216538510 868052471 581490604 926039020 690064374 852811854 288793503 849338919 524556729 967424735 426070385 916202423 243452020 884686314 526114768 731136219 561132850 647706360 182957725 324520535 901838462 979058181 759323227 969776047 96736160 335808337 133896540 892918353 5547912 285827376 383437781 553280700 58580899 396299972 650396166 679767396 475448450 692279638 209997505 379186485 561469751 602200825 688013046 725189814 892898927 916076997 403434009 905126981 861951337 993726187 719320125 997856038 803468696 959849064 635550913 820658940 135180413 259081782 489495539 836286876 929201167 953569969 934787285 976190040 4397482 231538154 95109395 500334474 240376154 666400895 878460857 983663771 119442422 491083293 541517022 706001535 356779894 811935375 629282541 879115785 612264007 892292377 812673662 960678253 923796835 939745063 915627512 955086035 743768221 763966923 102723203 440996217 548658193 571914976 997182611 997247905 578651384 808416937 476617825 757517794 347520432 655205716 908133528 994132623 653106879 968556674 317163990 839969070 698725664 897497420 707397995 934194934 42559122 510628736 608047848 694032917 251873071 797173292 972022390 993917386 527667279 583709775 705982252 857007174 543182849 791978337 180930122 995920939 461932133 553903666 747139201 832724888 76103458 124125093 225603242 607911384 7395463 799024444 350532631 842271190 133675920 839823105 756136444 818911056 574637539 813911965 419688545 927789401 594344786 754248474 347771380 408514682 463171510 955118480 747550418 936417678 782063888 897009814 191804856 350786776 48903970 816841960 461463194 635408163 156732521 747858688 297845419 779276936 382113391 563339458 586109457 987131132 472373646 933337928 731099489 907289375 924692140 933424088 364965781 882316616 22812059 381773446 664588453 886695367 123377993 222928850 77430436 422415767 352990907 664029400 737970885 985337131 396806140 730403688 973567014 983465948 720278875 977682788 421036183 601000212 118759555 938886431 37950306 384977551 540684301 828359004 424301522 511183918 890644890 896748410 165387251 634317340 82879545 977273594 229078200 778883123 244631946 499134841 845572799 880748358 277194326 751504204 55379015 495689327 765792754 916408479 289084286 936318255 647218789 874141536 832719796 886716672 634258793 661611185 472334635 538803182 672837445 741368886 545696176 921104413 739037125 982312927 583879961 680101874 339497553 854375148 911273687 933204013 461632539 532287404 83315123 547107895 718889082 985027416 711947516 717194071 669653218 728362394 674737023 921201079 391184566 468286752 483042512 594779425 479582831 525188258 904148483 953195981 505940900 713843513 539953116 821919847 737377620 929280864 702848302 938948914 215237229 327118465 515133480 612304914 319586418 677562893 295464465 339025582 313640631 520852942 443984847 953943940 960640022 998888044 186734429 951889584 424577328 740912154 802346952 809723828 851330036 861313965 947007342 959347315 193617386 827692911 932339486 953843629 458842287 821832119 712051691 844681026 725039626 839034120 79283535 937107215 750875477 808682871 963495530 988694570 381402799 480575089 319066202 533807380 264321773 670268789 436126465 741060882 628117157 944321117 215233757 452867950 759833447 937455205 730488473 960393920 595700828 640314705 606459798 928364472 389712405 486010824 896904710 949400336 140134315 456691196 638430153 908825628 725519604 762077154 973020299 977028462 91737640 759301610 785321670 820251429 992487603 993489125 577954293 913210015 183893145 605120429 75570471 583237159 188772134 919874071 679716550 985184654 206335045 370079241 295939876 583950727 426696927 996004887 70597969 866521360 630007648 636343327 582860894 758078737 348825319 481307915 492970695 886583936 966091644 966768635 829841952 975463816 102416047 245588121 306306122 533291350 475964468 815265416 542853683 750725926 989407106 994921613 81749563 893225032 61013057 757668794 99873592 631433487 44262504 616195334 431843151 622673219 698794252 717426149 375405049 502871311 936106827 963313034 460933454 487440995 104501129 271121199 976828320 978438387 210720650 767551054 688642292 709674174 401440204 799253346 413739689 949142792 854904020 868931485 71878237 655008172 165172492 244733979 723254054 986574568 965825034 996527603 136976827 430128651 124221512 449738115 809555290 978441344 618842528 753008628 283486642 640374901 717719962 897860904 400989350 431167417 263151897 446465880 247892688 954822733 631469601 889251117 983998633 986276963 754389673 767092558 733806725 833895790 676599130 707473005 706170916 716649154 392931166 454722337 299093921 407259175 171259225 257735244 54468800 265548295 101644454 655305901 267773182 349889327 532524432 750413275 372434121 971933519 905867072 963006539 375007113 731228851 400752787 584823659 464128852 509747877 838168650 890622040 89454377 616595297 709353261 716684562 912068076 946758214 431308473 533446721 470689452 474762062 573227276 683156165 57137072 406829207 129219279 343035692 173745451 531808342 163586186 186572006 817691740 967255191 724228950 994160269 181113619 396963268 775022472 820436613 59018133 806407100 685829258 759606319 643986842 834551734 482968111 623193779 78575109 606009042 883122692 904395089 505555192 911391835 984956280 999479397 956193843 963741359 919305723 953130712 221270531 561326529 372381920 898576899 142445805 707895144 60320094 278195127 849461469 926413998 767913509 964646970 22801108 752614189 541257529 673016477 198642030 356402211 589222527 709603940 876941449 962943669 292868361 337523918 723646688 738602976 886317789 971049917 343453537 415588981 981673212 988632947 454718317 457144577 116981971 364198505 692145338 816134948 750389385 981562987 60124785 987680879 571042712 717192284 835539079 895529054 133334348 938539195 197372924 580649661 686307653 980481206 898314883 903847413 155219034 829849440 502315963 604199713 685644758 982042328 605905546 654925617 346078329 941528673 755492793 806357197 205801255 598694610 66800345 106780122 705842184 752859356 713072234 908968924 288417746 331352866 984353533 984926873 724476191 909615028 104811102 794124842 464552628 826875800 865026526 965806845 26770238 96428375 43004204 766355222 826508135 962022857 87896730 314470587 495212140 569334560 541852300 972223695 812742391 916444400 359329605 907379496 446523150 554129818 5183647 86564497 108494916 924576153 57024323 655434913 573329082 758489900 846364510 860748561 136642818 741369504 405721129 614825773 846009919 957619319 850278632 940568653 984963311 998314356 156100101 671054247 120267519 363697459 931318525 950691252 499233653 519935590 705180744 960546734 570617381 902682902 722423567 766708583 597055357 974572161 872991294 968730576 715545779 788680238 138473432 251983406 814721437 926305658 115361857 233908791 883337291 903539037 403521102 756554288 256066125 265253939 806148994 934685294 175538252 962799712 155289665 964994626 160347466 436507041 512784832 801843000 557967360 791903237 886688684 969956197 509548616 754648852 186102131 621744864 592760432 623270476 280142950 744233639 710302430 786622030 482755261 916201034 695744544 774525288 853304872 855212978 287786813 394608446 154035283 445371243 515860465 797213600 784395703 907976274 603723106 715437784 166193283 908705055 726733771 976497482 250040847 553500750 471960400 655506036 26379425 56618906 668011455 683881333 679872436 762939664 167748320 201479387 826551415 933198516 182524941 289932288 980241119 985756133 914513349 949708071 880616089 998237409 193954005 903464892 112941077 773408696 909628916 981442400 87371258 141165398 689164285 948486058 821895861 826776906 355102858 971423988 478126293 965464436 40152665 804400555 927385852 946668301 24273298 610764014 542439675 788583326 640852503 880374500 674600294 849385529 372484280 875366398 763520357 956602703 937439694 985378122 797780700 933516305 216559278 717075335 327069023 684026517 501421899 863606387 718416426 815391315 432906840 822550281 145900672 586329132 420081512 973843864 582477978 819308160 214174967 368769241 664257380 941728971 156517243 758671299 331655610 896473468 4606382 767406172 753683941 999579610 424722836 694337819 923432225 967278381 725830361 940428527 777458729 887866713 94830118 204579194 261999537 299370145 331323917 656113494 907050430 991763654 567584893 985392978 400619719 853418896 296841650 963585362 577242621 729876679 120985191 852046884 826676578 978085102 189346047 471979718 510846301 699837034 931855344 938093431 545072936 714316601 346886350 778963295 100922002 695372216 499497987 516369269 207000107 516585994 499486319 649545051 999666689 999893104 638158531 844214439 254504672 456764953 977216420 977947293 865477973 881316074 836776385 843316200 163462020 619923433 388295146 978881717 155823304 882412774 3069547 783267944 980953346 995363335 633601248 661180858 127366204 524030166 700139905 709520851 637722767 690631496 604456606 858132231 917350935 933543243 758481780 950746857 45074319 176178427 433038073 555627715 900675322 938922727 45568186 246344472 803413467 899578452 146990918 627790779 831803503 855243766 130235166 598139378 519839737 534255670 54712329 956468427 244978570 970034795 104560944 936419753 434677807 455076651 786291317 838067655 975036789 977648455 659679595 883764631 117712573 848216212 870164369 896024698 862596393 883106977 484169466 518568336 55717202 425229636 71969081 103717085 268665249 621894251 367294462 411202851 646677924 732352925 13883351 897260601 967779516 980199247 430674661 681318417 192765965 278420265 561865080 837249320 196312892 988634316 546072222 651658229 385345258 787697865 241074939 888739907 344725577 743093087 849827898 871405022 398566463 445891871 903790997 961916871 141191007 899837001 93416802 962496642 953977787 976172423 489709297 787564153 359764125 768964520 626229300 718384929 853575952 858534661 615961108 675651479 46668206 443644504 473894761 886030382 566698209 717678471 52639057 853816403 428270822 669333151 268000512 374693925 410659936 952468017 645744188 810904239 898979523 972793342 822535206 845151792 830438159 845185104 961136685 975559171 279118215 943066699 149112804 273492655 236899899 324242413 867827907 869846451 654050726 739902856 848810363 982780010 858687431 963680704 59772085 330883248 806223752 895962859 418806419 714690822 929531146 975117900 970506368 998711805 694616273 992226040 978922334 999787198 560550808 948105649 87019049 112203631 769854287 993131390 256190046 792513501 197392457 232138092 260020297 857517184 596434259 969180875 394467385 814849585 296139425 732015418 965379596 990778788 680759234 884720667 62811595 979759812 252954778 560677175 875207998 927124246 950171538 975642510 896951663 924279191 288732628 473898623 359127644 617685886 638733874 982299177 433772707 666491063 609061479 818751537 757454506 801181653 567791199 897666640 527995914 583102066 37418144 949209918 109793180 486977107 661425136 980003106 335081914 854229013 206772903 346416221 879961570 888291930 463024350 782024749 231125931 347972622 797061129 967461921 467132102 869586338 761824818 978589353 696615509 715072804 761357914 859795154 230166162 698206103 106316663 642265735 929801481 969879588 722007132 990299476 987382879 992630912 508333601 678907333 250510245 619749877 270652999 577645546 45837656 484948856 360539676 896060388 115632077 669898980 173279878 303685568 598370240 843022974 630891576 997761942 625552137 949685770 257329863 482652160 92177220 480764852 531669634 687576920 121075023 933448961 72690964 803155892 286610852 540022341 369627485 676630501 18259832 269353848 928070049 928944282 223652939 448720673 875616887 906389012 335961210 502987196 581252498 948505265 633375615 667993693 498782635 925187848 51172824 52366535 966320419 979920763 610731767 890131880 212187538 984133596 983983976 987442096 340066945 920919727 467155221 548027106 406379119 542617100 515198449 744602369 52072916 69706963 767708124 888892999 865282567 966116135 591475230 732337952 114831966 249182532 92681243 940732026 149577016 436698408 454880859 935463109 554089987 599710520 902366493 959111420 912669923 941744773 379856831 668375545 372590847 784386949 136990286 704250970 882442509 987955449 57324532 329704590 829477560 929805397 976393034 994150629 474441605 477236289 938379408 939922964 650942595 666591114 186283671 759596555 544476351 989493696 550049750 616902474 484637548 871437469 648875356 664469827 531858788 594253145 178882111 806634947 995163961 998139590 351315410 785669706 694176990 944176044 287920679 630619609 917737504 939378282 507106839 668056871 181108849 770785017 454351866 704217933 309924880 756453415 285979016 777258298 776481649 860212335 657596187 730077692 598720322 700044770 145487070 680834488 526203935 551263425 208512832 827585087 45733725 476042448 252831227 546203128 668853172 939756061 223644946 375538759 557077266 775756189 242375804 451299396 879352805 972304410 636027217 778786105 946380631 966017545 497298152 998289542 338266536 833100291 728091599 970891304 845625364 927838530 317709477 572312805 687561686 842694838 142506400 847122258 294707489 921876810 873805947 989806386 309724411 995721270 489047414 539269663 839572719 906570451 511699115 742967366 169682051 570385824 241976326 853605595 376051559 939192050 388614606 451791343 363175066 893965841 643324391 972821746 381778727 922470819 722907484 801083570 216548842 990723565 751193416 861318123 19957695 274404759 603207227 957203113 666856413 862077505 254640780 574312759 762306826 841629052 251581128 254778267 426818929 937845605 939083463 941696073 707138923 922903623 441000749 760571059 802660549 820160005 959676029 963860894 928736752 929630535 992379173 994864961 115759182 479966904 762120661 993825683 796253784 891034854 45881770 945898238 584381044 807762183 968359932 997727175 881697790 939101380 655017687 948501532 953524096 956610471 510349476 521585020 255462964 515456503 467590273 763332830 28163537 273225819 590792560 637935070 542587823 928108922 112127565 786130718 237288341 756186612 78942096 634362538 760498566 856537725 164552416 668255524 113593933 144383077 332054607 902640517 721533085 864351622 487391815 528197679 465287075 952408488 554966587 925951958 184207651 470937861 27156186 898265371 242716430 296757182 303529677 954004169 355038062 895034145 944335160 974786475 824013374 833336203 616899313 876204683 579935706 705886941 638000527 927253538 787255554 918582404 419405466 716918121 137328026 823169763 356777151 763435373 500034088 542493994 266557284 453814717 672706239 899848839 133472229 402064117 886675688 954647210 719938738 765528471 707878674 805031329 343529708 546259494 900855451 978981349 923634960 929531118 315108714 868995514 366018969 687936971 929093013 972708077 532023344 894570598 362879572 511846379 874857999 929204821 243366370 674616783 644204467 676808706 707434659 987754023 865508093 947839547 445172668 911518540 768262469 901155069 433163658 587521109 158171745 566923656 770566524 782773583 790141149 912191981 333395233 642497175 315769598 915169876 217027985 521376769 373820536 636475613 73141789 669477017 455540395 507407131 379779136 962502194 575884005 937209477 91364671 122987074 549196513 932146607 243056852 576012461 818480645 842407078 737630518 987849819 700238802 957132701 335926049 675464242 248925665 490087004 511693607 645158766 955701522 993553408 101665621 110912903 516979707 584028966 802311969 825505703 616116809 681369215 312650985 851728601 657318406 779998863 397418533 537475801 912019642 933105357 829887045 955706985 672781229 953505740 95595243 687181691 615772701 750095055 549333528 973315722 78964668 413431578 611037468 631571821 61892731 165574996 229356927 886897760 966640104 995669285 723492622 798727173 294926069 907135351 350109798 604808738 877877275 888438350 199712267 699093738 226630367 542812193 156942703 748907574 609753179 967681458 426728726 927921993 102461921 494177289 712305621 916821044 172925804 504964299 573966601 594780572 217995989 542128660 511146007 668202009 675391395 920400257 418465148 943108046 41975403 823756765 661111697 817995351 366816556 600881832 801083747 950065491 289904494 675668491 6075845 466975129 724908482 759254096 714702230 974319688 336173443 660620587 768400513 803434646 252980274 973632999 139780906 396777331 392827922 617811106 795460514 910197946 718101466 742412320 793882350 797901152 482864115 700460241 832873637 896467802 367688715 505790484 51667434 824963317 352001798 367251097 393461326 759211627 923228088 981613969 601526713 762279216 526265934 920646709 128835061 397680287 750555153 819333817 97805670 222061269 522041886 605114463 91060771 149710817 991648059 997362216 764583323 977203880 150023924 873176118 391094254 796848963 974624239 982452277 993167478 999172514 942846151 974310135 472823753 598787405 814418357 928442626 385674316 542973677 429664184 577413993 619920861 637177828 914587563 966139474 998398422 998994745 905494528 978889921 665440504 822202141 904675637 938258249 260966231 864635815 27192016 103115002 777061775 957204775 338019701 879025878 255760282 401530053 779832378 994427486 147652718 151371300 85797914 220732185 740774352 744829108 659371643 775241505 53622802 183332886 151275480 560550028 111768715 861912998 939469222 968165248 413294 769458142 845833091 985061588 854043540 862011176 911911655 924741668 913536758 925167670 404147357 990654850 558101903 564692011 494212164 902792053 345153992 764925999 810122915 855927104 791632522 931498934 577451436 600842040 856404097 910477574 634546351 650245319 102310952 624733625 575834033 877182271 172805698 652380472 223085856 647529691 575482188 714906824 639403395 981728628 632803037 822220508 906917426 935631975 12658839 598639742 982505015 994137678 811489619 938936519 26113506 810527749 466088717 479172575 859693617 937139475 491377015 714913986 836938643 886452939 17125603 427449393 628214903 868851030 315086491 881332405 778818882 921871140 922254338 992507419 445031984 894311406 726435943 874394297 65714316 256933763 452846350 747031525 976946087 993567534 258427637 480517292 52545698 779758213 844069112 987854636 169882377 280940427 30150982 866473559 851343523 931963933 826834802 966031054 607392093 942415865 60916694 109867190 15221581 585223770 659844383 884163494 611338998 974534070 796676997 934797499 509666053 976509502 564244793 616998196 315763439 376264953 867850937 999009637 355517197 892805442 78554457 950981756 554937327 901217814 332660987 667882982 197053363 883076408 228150725 380463020 350359184 997763781 716295188 756768283 779591216 965273334 677977531 757008685 266626729 557915911 778132714 923314731 769283532 999436833 396866110 653844319 618353265 697066530 840210109 930244253 898274996 961038842 842544218 969543291 678784219 815137158 320962018 330744197 897882938 974568847 324719172 433056675 565952927 802366842 171489630 363970659 886616670 998465600 784097872 891893745 578777782 666110553 770727790 804362495 306874408 762242832 656171290 999908240 755228670 842886040 842196099 983862127 213150579 849557775 553506576 968684615 948699172 986707726 342285490 731130260 643588683 839073644 281882705 386619988 390963621 551492131 438332397 743876939 427488096 917268766 935529592 953706301 550157941 647143060 276310615 476328112 942992843 964868168 597881615 705579464 951511055 996131318 755476132 956363297 485130853 615020257 875004676 920555145 930063048 981762276 888254537 918827500 423340423 484895416 744376915 813112837 530121259 562744916 422730486 792053848 616364034 800584077 606004612 783149539 800965931 876592033 953308118 989234218 927764770 961702955 639450138 791088890 832578782 876308836 163793317 230215530 451661630 966083335 997117646 998423633 406616760 573542847 262641321 645687648 210430913 562090651 238978585 295456166 499052098 713714939 206842976 217306917 188039620 518729408 936669629 960867240 946997771 978225044 198250787 437523490 301769066 857797493 823151503 990388887 759958431 977123112 437392800 513745171 136987552 838557269 772672693 858807227 530882194 876590885 916014933 919027075 710274391 767391950 121795810 907942296 245671777 458943948 276496559 308759942 712573770 984492949 246462605 983953777 998840233 999127425 613683016 871567791 221160091 360535475 453181963 731139253 302355091 557532717 771373341 896887283 510572930 948482333 439089843 510027431 639883505 647507781 706036100 798671197 362603888 417807946 566814043 575621260 914913209 944117004 397040382 950967095 211138574 214174821 849041830 981822783 518477397 972546962 280486551 866854293 695455438 866986659 835819599 865220535 950806290 968587776 151786870 989010961 668288914 840054772 410405246 692276953 51981263 783124735 971044943 998965211 860344339 983707831 147094661 773928490 139642430 576109212 209994601 611464049 861572793 962331636 83054363 522515280 470325657 751683893 665990209 806324909 32183192 376790540 204329255 563998858 886712704 945065822 821328840 918944297 970788009 981383942 374719274 740189575 434543196 916081957 59774290 167673677 754042344 890442107 607903822 686765151 223359767 818672905 538870978 987915190 532048769 858819846 378261197 902833481 791212336 837583288 744050826 887927536 699895658 768546306 933699471 939134638 650046093 930824269 745038308 967462275 752684576 777698768 381346469 606079637 581686287 637671738 426423317 528194678 339163493 685018405 5647489 870791541 192790470 373707335 570593885 962039517 384285721 792938662 563912586 850081952 720505844 972361817 920860980 962561825 172728868 935073553 740868077 865093888 719794693 863292002 363046151 602551677 542471370 742676817 149095047 149571717 68119603 288353268 4931644 174724786 183717007 520075886 388438109 631834976 199336686 711094679 193008795 737771402 85616066 273872884 9911392 552184957 396745031 583159664 479589253 797279226 65137908 807954039 132439532 584361024 103717178 278241478 184857612 778361819 535317359 730938223 477271551 780817818 130618828 764256964 618317279 624666987 270513156 520876772 306564606 487324791 59514606 152168780 774249402 894208037 507621251 769281461 235904464 480814856 200475025 781029834 935341852 954172891 679609920 746441036 660854678 757212379 490384744 801461463 292832667 887979499 997127128 997570402 169154856 742779935 543721585 567163736 91784716 335806433 613448441 801163666 391825297 530342349 707600068 748859003 408080403 937159911 933332104 940436676 331149210 684000835 389998271 807889564 219591547 354461896 715355198 771500343 845378412 938163268 737775763 780857354 956566724 978177057 200127964 845360855 943898576 958647255 963264708 973442810 545771987 909177671 468004148 781632387 229972081 388202318 756620506 787646433 189784122 285840080 471286046 858474978 686585518 833959810 88766404 606672159 605621576 650328281 234472539 560588646 485862322 488716395 945552931 989706347 471228235 652286532 255499075 667263873 964120404 993749505 90119616 785804120 785585186 923536973 363850211 739544058 379658340 460472685 939783407 953422566 40692860 732085916 371806365 449481325 339146333 818077506 873331973 905806041 657614083 910334447 82837166 496749243 51152808 125217218 779501118 799695503 843767825 973636766 768332507 937668870 539128485 868123741 51021603 376610466 564384438 669664550 443250917 859840176 673409002 995142477 832472942 985983814 278124461 445016349 73051494 614754110 945106365 958756683 110816267 767157137 22581438 833915646 198887865 464229104 64847470 854081047 837963660 985683379 547701782 673793892 919658072 966741107 369954750 704244378 350810385 517511786 788403654 994526389 743697089 999453539 306413040 543277562 517202503 574314073 267138868 879788210 861826879 884131895 811642177 894969023 608148383 784091862 914078150 965382435 781186973 900278566 739070987 781557565 958567402 973545694 599696713 746711658 336378952 795186773 822260915 967965754 680642120 746864352 224047437 632185961 27578076 850951340 348599458 753165174 558056807 836540265 156417186 708107692 12876916 820026144 518272134 583719072 296955763 916911841 151295859 512737147 839122279 982992109 936428815 976022358 758626021 880464571 336700245 410703073 558938808 916614123 734352735 799428508 703801056 972118233 916718814 975913675 735520191 866403148 270781624 836277499 438521455 467740432 261150762 731582866 229569419 556168267 633655104 753366606 741296080 778015277 805482053 998995892 983411438 987859005 324397649 872505333 765128950 825768054 411916306 981251026 590251044 761791697 329424567 345043432 530127569 562459561 471100999 636352583 799780002 906203270 355516235 611777644 214190189 303853498 653802539 710463348 110377897 809528183 922737377 937818026 518415061 945625075 55225550 186476904 601109479 783530659 115836053 926031353 339024240 520832730 800708673 926365254 114277990 790012550 103410232 777444860 940275130 993481022 633387962 954127185 41701986 798317291 806141424 884760357 83133841 438319083 938119437 977335733 873857969 927951176 674079092 704563106 237036273 643026899 601117289 871381581 764206019 962095647 309649627 576193959 288854025 923315134 228126804 543104098 229050428 675509884 229119702 797720049 279114276 692913811 63403809 367098400 253979105 414996849 45597174 50190340 41098436 289095814 710821480 749033788 220545032 360513285 556906772 577982627 429815392 691176741 350589749 620906202 654235026 784910570 738594881 872640448 465996080 855514862 778587142 881119612 326378182 674600085 864260458 944843580 37743722 720773942 169897378 824755669 301818145 607908171 659449948 697525600 126309193 255240621 432157079 799349848 794678124 976884900 771797722 778382526 353107835 841591073 931372963 968130440 586634396 992654054 337918058 439881476 565593293 865943275 415255692 651139517 326901524 821905018 854655237 877957617 613779324 837354643 458527593 941578437 207867903 820305833 57925251 907019647 772005150 798391447 893825761 983717912 18542680 639704523 897219529 992495221 329807278 475607225 69121885 291531967 882003787 922407375 607021303 657124216 921230505 955027241 125312232 716924955 762797161 904547162 607208212 938842899 728799432 974272242 802199551 918280080 703783533 715664414 692742455 880123691 16711673 685130889 476849449 913393487 992041681 994620007 482035696 650744726 409359220 544207906 366697097 985927739 371025157 901158014 422840794 753258891 187058726 587329339 252963791 923338272 638739800 962409453 898849579 922861552 87810355 598569877 74204440 460353058 104075921 314503027 717326893 762870145 375865654 549911037 425730419 544785236 504857970 928730674 277163560 521445197 957681598 990503555 62980943 166874104 342382775 730328187 904576239 941817131 872667710 928973945 95970738 686134243 619180975 897464132 869542671 871443600 880600886 960944270 60721764 435398710 666136134 924812297 599850474 847019875 64866740 725314557 320386020 374567267 51461627 478771004 872430935 998288417 682507810 765998769 171952006 304248070 606038652 643452124 256587388 402866127 681221960 861488846 259224623 637368053 458050523 990400112 504119845 600175613 502359320 648893900 434064316 619921927 913055124 969137511 713153543 832416598 89642082 335983826 558883209 791818997 730421747 925847404 903645300 987783704 95548805 719710264 996941899 999956932 308959424 436767669 962236608 995952787 849016298 977031968 258781487 479938880 234700265 556808397 697732682 785595255 99617122 751515551 994485726 997412816 745768736 931382320 388157715 402567514 830885400 939179856 165705488 757061688 379665185 751781597 28874955 62437935 991537343 995252749 421995798 498948895 194223850 713499616 33528949 643356008 711669503 816294946 366358575 610375931 873194291 950331521 363471020 913294944 516421533 766343690 611164725 870511778 508155927 790318130 741626339 992321489 981959108 985864991 105053867 575742075 29085539 728787342 385572508 666655607 330960529 654753397 559470279 980761921 504032972 895273865 248748096 981022612 98064474 207894345 427274029 569604361 508289624 771863734 276449195 980992351 413022295 997098897 109442148 568219716 280448463 291517390 637177779 891558197 786357848 811710048 657517357 705062861 173342112 575211708 906610430 955843670 84683167 588024330 709153469 849463314 816487174 967324202 173111957 410461942 79310715 534414750 121329301 570883180 739876247 910398614 872333665 951429583 652902788 795250533 201787030 396118427 212854911 471815341 926916361 961117818 365229687 780062949 795469451 827309902 327482631 661550933 57530241 212755145 231816971 468590806 755408521 785675532 64176320 914251638 546984756 728808612 293647953 403474872 121502972 287604193 838263368 901658802 443750309 609587521 310606051 575220227 609332105 843204209 449978951 839949858 22830105 141468679 903787771 913421332 230339219 937254518 852689821 898952409 23226640 170095694 994752908 999842656 164221803 431685770 677858646 698506569 789239434 925343133 117883598 220863259 675064093 689012978 880903048 968715861 986546330 999772544 834920908 893957511 540747406 588096302 5315689 805096904 902196090 954339255 339427116 394406565 971801482 973003165 480682103 540813584 791498861 857512762 448428264 647909577 893792424 948154023 62155750 718134540 73847709 878406938 760754873 886492923 458965310 977950158 927523700 928458469 608911349 996749629 708680288 909174653 677611422 931197809 726716531 901118282 872973823 960159360 734518142 851128121 251045743 741602480 135476526 907126754 245911650 736478466 62739800 474971949 467366501 499883532 849545206 876795714 545521834 719243173 600416026 614821595 908568209 972467483 95214001 680029742 335933370 441915551 594904919 829443384 887356185 977310392 266379292 993747321 739202499 832255150 938770424 989003400 663982438 964547800 523907425 646072835 187640889 734510075 236114268 835712710 427272006 683425922 964981047 991937960 57866749 131762042 566397750 622792912 367753248 658529566 871007186 919065423 293245227 823173150 733012813 951465620 657307054 890758295 332348520 807953702 704430088 800588464 641392483 961349644 370047601 534767274 890202033 916089926 749401278 844663161 363261998 644091724 224228489 457427273 852053254 859765398 598528081 994908350 252336134 511904069 6530912 916833652 828065167 942959493 306894672 931894945 171635277 243479313 257552634 497764536 13965630 181855251 626049956 802047818 866084641 911083059 24680505 732885535 979665129 991560372 489885548 874940965 167340455 842993024 818797434 950917925 865992941 890807611 48359447 613770291 469900834 556402990 24571845 772515977 210896351 512561911 926270442 996922176 599737943 978625877 972606627 977167063 667812016 861439945 835603153 895524144 190629189 706262597 574742218 759763883 399143020 993928281 148662610 465647040 306038240 739388820 60955923 735451262 492857035 781344522 344748619 459495504 61279375 484820720 173756097 898742731 747511127 903355209 539789676 651070912 568959587 624681973 234561979 588841047 352000248 934891639 420103645 732751677 346042625 521099626 539070377 656672674 986426178 988799053 407303628 834539558 190002952 197298664 995773165 997858829 187674330 638341138 962481482 966426398 877725094 959837824 640572375 925898555 603252371 685456281 780761639 798552066 135878538 877710082 988559937 998259428 135359421 621674509 66493492 433377164 212548854 458655681 527883655 760465580 338684919 912396547 581920579 689292502 313675865 450056591 683756643 791108405 464319863 552544925 83142328 293298060 333843445 614728717 628595827 731404745 212402739 915049022 676179686 718521569 12643333 757634485 574645472 617780877 925231930 935171182 449760822 907446219 377288119 637281873 709387932 904888342 403053226 460701812 926421023 941246452 707763015 808606095 747256717 835789998 656939777 983076783 919007413 936397945 881055073 949030742 248547870 778429733 693514399 715160435 888511809 989599206 68994682 800994586 285791193 491532986 303527138 879565470 983941964 988783862 693773578 733215592 339653029 377934059 886048947 893544737 441689229 825998390 465860862 466538746 589895545 998476157 818261853 936250619 40365748 776713298 389242124 438987389 663044416 957883336 243714403 623985876 696973093 732089142 949551481 979950112 986633737 995160294 716855763 934158086 849408286 891684479 550306622 765869083 750675543 908696027 135686304 870850573 540338265 844828314 243986436 449256913 258648609 942625444 331351538 654761431 988945675 993541521 27785859 439198369 513597990 861837505 208775646 356952460 884987815 890644133 824368060 852115368 132054539 307869524 475515819 856569754 662218270 878138507 559571155 900896116 353693226 770040791 97423006 355984231 730430901 777551327 142287262 295720837 334587964 721551554 486384548 922328252 981238335 989331488 538964959 873840596 879439583 937439038 274262194 305536833 258775818 350389457 130031720 726069844 176320198 509699046 675062359 919429404 194141175 979773663 724702611 864441906 127638364 753289036 152148341 387524116 272614407 764894634 275171777 384452838 159536758 622627235 197281354 260184100 286748543 779072295 284391710 397829168 609094347 722563414 443088232 813693686 546082221 714929486 309090237 818614615 807239172 933393967 706676551 847046565 983392094 994213348 917218867 998100086 559263054 802247012 894779616 958385963 96527370 245828697 29278510 561967589 588201737 614564624 245995656 858754689 659134908 837966231 24372409 712351982 649081980 800537550 715740267 725229055 5081423 657858245 283949122 552593304 402917758 876810497 224126434 680388986 26586275 146893354 979994678 987473895 691786547 975079127 828290442 921087180 639700562 890683855 991454678 993755807 663344064 794888570 612423238 821514271 604016454 694095176 604525350 654387095 102272285 446846611 590764822 767080217 379526504 644625792 448903525 559516762 84214344 846768183 230577198 499461298 495847307 658301896 577207381 979340487 880559010 901954944 649005376 884699359 848563547 954042680 188318388 573491270 823222576 890242611 518051800 527114593 404273491 981043536 887405202 983218529 41315311 921975377 775424528 990191846 714048358 735787895 680095175 774478513 921600275 941001257 839495555 900592434 856746410 911941330 613518916 780508635 513670161 914217608 661480395 802950710 928956282 976777380 993203059 994693541 232076478 473376715 691198059 695176182 687355773 916217734 270134746 796074154 579699922 877319028 953104043 997869645 789919601 857161128 691809735 825595972 747967108 852870765 918369387 983611137 405606993 571607925 737014549 768143425 977068246 991601685 807083044 937609289 483274695 925903762 439416143 562680695 202629451 903810421 832956703 992139382 160281489 369307928 349819853 466819455 70467986 472656226 948489819 955411787 121765213 957900419 28069763 407885195 539228572 786523920 646746379 811502311 280076089 337167871 513525022 838142990 174978 617067454 497825153 933987878 376389821 790846605 378595720 495011567 951755976 985290092 335884942 428478287 472265173 750774361 17774732 466745355 455456933 821902669 314099145 828392058 704726329 793164584 99479225 154664818 213452315 253161383 288955000 426906186 814837942 892207486 344743017 576370088 931381528 962275702 79098735 194174517 881532818 947728389 920792290 926696338 952597143 971558033 573510762 574629007 764515614 930355035 69798700 655934873 363402857 557630502 489678506 817377544 117986013 233589309 451412661 804401728 492921404 564723917 454740094 486631011 172019874 979669738 619186223 896156319 777934019 978000061 407232116 826453826 851913783 923753369 380107095 699846296 93847401 672238417 985575555 996114813 181935486 651832177 494802483 956283359 175097150 244401268 303215336 592614904 53821411 476026069 154613961 288111741 909440791 974949299 472335576 786524851 163333798 229526057 277933665 676811871 703260847 969061446 15545889 784268324 787054200 908592492 236590426 796313425 510878356 928743553 750742560 876449518 455611423 844857320 313278189 649924710 169365784 549348564 244426847 842160111 801453931 856371358 77876032 684210733 36749924 333259502 848513560 937841278 270329148 854200514 850145843 941292444 446351003 887321442 478770695 649153577 466687732 823683919 839956242 916347926 15201163 794169266 620037180 697680294 582413060 849801466 98723342 561633258 282794005 820813547 339607416 391401009 780260835 905446101 411392942 571033694 414890294 592891044 847380795 944432644 889303362 984913049 483694972 738680259 564943166 785809463 22291874 908347378 788622076 923877054 999807392 999869676 796565857 972663720 629926044 937476987 94626766 958767305 792288480 823480295 608407084 902262191 68718814 123418387 102766095 386287297 559806557 912591307 334546772 822871406 119924048 969386600 588586408 893389747 213937094 797639758 678930097 980608889 114967126 860215848 676639290 790220336 706643299 960507853 446958314 996398337 537994314 581645899 967291078 985155694 309331577 643885113 746797391 953246806 890945996 927584070 755775362 800839852 241951594 910952306 426465154 704996257 813636296 938703540 892380063 989868230 963181440 963495776 652945038 782236409 739135357 852536775 843195554 909600507 279108129 835900093 98440412 709226641 130979950 309056624 366510182 793490786 456132513 827320549 743385249 938926130 342000135 603690765 811070643 933279613 408353590 541362154 580357886 996747233 136985458 568622504 285916358 319942115 681523611 987480617 448799913 841690620 112758112 469747371 898500945 948464840 141185801 601030272 296142162 801662211 259953814 413546833 296969584 550949378 265442899 495746679 691236738 835424432 604904640 693944031 843143378 931938901 471192000 660719787 381578812 930169944 45546790 374916730 586234158 752213817 60469578 800915836 230584435 809279790 44876778 577341902 375504853 976827047 889449018 983465467 342987918 492131115 705971893 990475376 769669474 943626892 264604828 522134319 664513063 840811184 260789736 525602524 818317763 993930004 139959579 992385564 813421650 853356600 278743421 590867982 647237481 723113227 400651572 918800562 209915586 567529862 615090194 878663883 86219845 440534856 418944040 932414173 544839472 693500089 81216865 969943043 876532900 914135983 865900471 963475713 64903242 733610621 11086464 57455392 841556902 895885437 890334002 929068315 787864260 995560898 41429995 271617623 119537492 233655861 173465010 253675883 456992865 533526578 144150387 400708026 888300335 986601426 879632836 944889692 860410189 944795215 39850785 197057634 681112498 710665538 579115 373589217 292718174 608690338 276187595 614640734 605520065 883650628 925069269 985521813 480596733 952634914 366888497 777979914 834203196 866290395 320919754 738599105 694800110 889511788 401787864 717352847 222633758 699137609 976161578 995001845 100343413 139663105 858032486 964943820 524941539 727570766 365249452 602825271 452762877 946485829 940296941 979461365 399168622 648986542 812288485 965858640 162615855 493473444 392900827 508222985 740655345 989199221 256283925 458619399 125090385 803079822 790100900 936552297 258457563 959016018 41101475 272987564 78788232 394662260 736392577 997241188 893526070 940533694 996262431 999148019 560575076 619239218 507122770 561506170 475006694 932346684 444403172 677437544 873358214 975820821 772377531 785191264 210531051 960997837 341284861 894733959 531448493 540507745 407862215 752143221 493070598 996414765 237445163 826383513 916759264 985499151 8600621 626716975 287212369 675887534 540410872 603838877 888690522 925218963 591679650 994330470 295754380 697895682 989738445 994098436 409321134 672268627 528697028 533860347 428532795 531739245 552719100 577243768 529750436 631591877 588574123 870337363 618325566 722669761 928971922 945797462 495292220 603362076 555872200 659450548 709075980 899264736 125349006 748607773 447002850 721893596 632901730 817610113 389013586 401211507 32490974 469208829 380286614 462762392 131782995 822742763 118647138 701306570 547383169 610239865 935665908 962164694 520823950 875409687 538952965 909974173 906857404 940211601 119919574 679818949 725987345 869089877 721340164 773018289 906145297 914343725 262598764 803213250 934526816 989235462 443246605 943828464 52630894 312558111 311877587 440147991 313219467 754956822 736667972 794878783 489577539 715352860 596202326 849461986 865315292 887089074 516230597 592241023 712099425 989729317 750478924 777870313 333335468 406477458 817000474 964594757 284277459 718431033 476082118 696451006 188983305 417241517 618648941 658171601 270516320 392386811 588049927 938923603 14307031 751735110 241174233 629254841 823924859 859443918 314302216 614315795 723526835 902153666 392065629 412718612 458252466 997026255 163072 174210670 833577942 999554099 258982974 316486641 212028225 995973174 138940483 232035036 305197081 924418436 567133411 771438387 817929216 914258107 585991048 762566988 163894562 821139413 451715739 884996979 173101436 243026122 736969420 907236615 160049399 939489375 838199575 958529421 372509560 971666723 808737813 975874301 133115023 166142067 600392022 795840535 461846806 903969441 66496720 223987535 233601581 728148479 858645868 901228230 617332446 647344357 385858393 753475333 412226050 636801709 225926418 850492825 547466873 816657169 962914335 965112405 918394908 968674683 511034729 776072946 972979596 985797741 392123329 746497515 425628470 890583746 776486996 941847152 78445157 353180386 987875608 989990792 218246801 912811134 757555067 961481580 138462201 998809210 885693745 978223898 538379537 784038967 878490526 928549351 83066086 905263748 541576605 719729054 485920206 555006337 825374172 996294450 58284012 177387938 555137808 720155028 665215868 929270769 581855223 872387654 143898913 300872140 756729778 769095053 628523503 717320364 228649882 483165824 837484877 874567256 509615513 677779305 192789986 397513818 187628150 254378113 982985273 984525745 919858976 953869300 344818929 648588192 404488809 645437170 225282379 887459897 994059162 998123707 729326500 913780117 728318241 956510749 847460980 920572419 339471608 911712621 936754344 954793245 36308137 274751884 867126843 965090313 17188181 731264736 960525290 977486405 475048062 925942310 881738770 915209708 351730597 562045488 780802503 880271756 273682886 497142652 319362237 361022745 431690315 475654170 763899341 867214883 647849422 859022224 144230721 621067563 779293541 866435224 257009562 445077911 327370243 457396071 812843347 975087895 30472409 792781662 930494723 941708844 124816546 695291412 852258390 950215817 462527023 559808257 147468005 302570556 272925099 574766531 784060535 803027962 824906624 856045324 313260703 932555154 272540811 569256897 593417762 742042377 936878892 954464112 78139217 312947169 106796515 945016760 223299471 985766560 681196142 927055360 258885125 348357880 427072723 455361049 858855763 899425034 157820507 832459329 325463187 821768019 532099580 707818013 795586492 976150642 929133990 963427521 175072593 581446536 136611849 585275795 387066475 441715337 37664793 589382410 637175416 758404872 206243794 422923410 587121347 950077523 437997400 841628711 274406732 500134024 948694406 995041059 373183807 933121726 571357550 680903868 186571134 248195881 326247027 785780913 350808894 363492838 614105702 980863208 874312030 885303315 692768429 810076047 687978726 911172367 662077328 679352407 390289178 472020765 77542780 929745146 809599997 830667254 468784297 913782231 169976067 723585344 178982430 395055975 674467525 790114171 619567916 698833857 824561946 843118821 66586975 156809434 93558120 264681403 193561326 741361657 971757796 996378332 33642157 601863761 628874806 906808950 920508151 945930857 924529365 995199646 901441158 964256348 559857535 666178312 362278171 865775815 212640900 691493836 364934285 598636562 638200796 645040164 345891870 653569315 410064278 899708662 620698320 683627889 364709015 973838700 618528354 837639555 957270921 994410607 201909476 722561475 855676553 911781745 418803701 667700335 670405386 911070903 566455931 968122925 354325389 710792584 435384960 584404520 675819147 828562762 81499035 161029566 184944798 718027914 914482127 934465898 964234167 968926510 183186790 257975245 628660413 857497780 96820285 298362901 251594031 366884461 868240232 911703205 804090320 955620890 122380351 226067537 196672302 865100635 420498362 834304917 696468988 774220906 625179789 840416268 514795015 732667458 274747567 695724668 366890063 382211326 616602721 672483331 844912473 851052787 836550983 988092562 311209409 387939531 878715766 911498184 137435600 675860549 310308321 872933973 942221496 983081266 504669822 621057021 247323205 733664262 685368222 764310564 49197832 726121357 629659198 811891355 971293442 984080234 595965595 615221734 118959831 841909250 857930383 858626050 933092390 946342077 538160270 770601572 373075390 471781479 139624603 983838748 801369739 819480004 504566154 721821925 649801365 658643447 831195639 836486133 610904443 999800542 227661169 778786666 491672564 827891227 591720980 900398130 322741027 964641515 229772054 302747299 46805055 947490182 572778931 810422637 630314707 976180194 333424685 367760996 687854541 838689509 156796723 386644475 27434374 220211559 257627371 715900662 331936286 442603784 59487570 675424531 309939685 326441913 870173113 986049532 488075278 863647817 911977453 979155114 113889013 899457217 261633033 369285620 718786614 889848192 302750937 569690356 699250385 762446867 346546406 369276315 950286834 988342652 363517876 891431985 56661609 305475575 852782861 861090360 554356339 889996919 715967004 921601035 76812631 489862663 278769989 427828681 632546063 812928815 496085467 864576844 351276793 412000902 988207169 994437259 599047560 989398198 538365854 696029187 815935751 877782293 565412839 663336556 776409598 801966895 612530710 889950210 627168323 717868938 553598117 804527298 441393776 442281946 19339902 505280317 828817884 897636014 180890665 998406578 622063664 658273498 664530107 877102180 139255973 791837036 265864260 716456747 236805103 430840828 533659968 534906562 370161270 862128422 702478085 811826715 817056553 942831528 121668378 198509896 303105771 834555029 215757781 638153448 766322214 842842440 88751544 672993104 845147155 901095389 103271578 462567475 437833647 962686153 280548804 371641636 356314110 468607875 931557347 967564367 229808715 630964525 783466451 785434406 525113360 809413265 996014132 999243266 540034935 630167394 303872149 996353088 175026517 774803371 858672497 881054921 303663494 538675242 977435129 988392030 395435592 403490179 302869895 626379577 408385705 894875166 720888395 747450880 95840835 745214636 871480665 922479630 595694260 656412164 181649969 909536013 142976382 635151932 152464295 789598489 425099197 951365258 867808219 890521244 477923771 973351800 770560370 940813703 968854940 985478806 922970911 934314239 164601271 488717729 751269229 881986010 941038024 978908659 820170960 978588567 706471098 706584048 787460370 807823657 665201557 969730902 812655700 852668378 999711700 999816750 790295398 989638704 653303846 873823397 697989751 815960306 473493428 615435957 918265937 963480234 167937575 773671267 78206834 565822135 951343432 985186279 802172867 954019710 436913293 606667384 685143886 861125644 104367189 555191520 877368468 971923094 951525452 990834526 201164790 936030149 970726925 983981209 883294675 995431985 35552861 97602298 24764109 517880522 832964681 975677164 179210576 573221470 45613693 871763994 822842250 852534648 520699164 744518936 31749992 61888040 235292050 325626994 386214872 730042146 529038408 600741744 283648332 734329522 114328233 665184992 578529661 670078491 539041170 757079269 476503687 482960482 431363977 825621030 281825906 421405083 365229588 818547943 208322563 402919547 689993135 865506423 53271439 613530904 909794149 972839177 452864159 465284349 890872345 909972298 454553461 465732060 460035114 849406892 497776215 934880746 344946527 563845215 372983291 507676387 647504456 717052267 864606011 898024963 341346250 844746759 664388974 705039631 732942699 959135567 850941684 999624530 275245431 433817530 690730980 931004454 238038031 685585052 43925526 729574953 401603967 918425820 507029525 889033381 179375846 668185991 657034114 711274113 874694429 974501325 26082101 231127299 563386969 873031845 728063956 988241042 655242392 779658991 635366943 913274802 657157408 717837811 251607425 399995616 224239129 462986796 449968153 959795896 735495103 807316442 153787817 158675562 971516793 982333412 948438019 999975176 709171684 969007718 883516655 988481384 336832247 748517741 918326116 927930691 445043448 842823021 555990964 591883739 169352875 781360646 344257606 563397762 151348505 810333760 111307701 741301854 407282964 661411864 316941025 519372467 81496567 120116313 85923295 994142753 863848655 890667791 342719477 563456149 615194877 789456118 178904987 771377396 49606154 584282835 92455380 980775848 957468287 999553278 146725547 985914162 7899089 91428337 607902243 721502846 743479704 778790922 44928962 902079305 609930779 787037449 292953909 383615828 238534539 354755078 694592392 825932805 434144126 791243612 635953790 811281216 838884596 960117172 353093760 659558484 916362520 960207687 367264914 580805802 290704187 810780186 506320083 965305148 973005071 980813824 34657616 953618561 609843134 885224233 325014905 489428130 589500687 959581255 123438234 191787733 882430213 890908075 255607307 702544524 137638586 759433339 882711406 943454460 952177378 993794895 44526072 162529717 590377774 902999025 199827094 393813638 644624051 919737549 812383110 819160131 969003291 974717840 324455392 732473545 807171006 926348848 217009012 461956056 825287870 982007246 233683700 719758659 825443040 893058435 493032479 883462818 538850913 822843022 92691832 634675023 114787626 609887095 533433909 822362612 809582777 880291228 130759083 525210101 455279807 731139281 556127074 613792692 603585075 886898023 108186806 124577248 743921606 999647155 672185344 990436983 973022433 974751140 38622227 286788306 824382953 877785538 298701146 452792727 467221473 822342336 432045372 887640646 229082198 243218714 616041133 811167345 557291939 662503481 7088071 399593309 874265939 902889076 419050016 802222814 720638387 905076820 647854788 847618913 212236064 858052336 238551490 342490949 852351319 940441845 592310442 623885061 904821128 985445977 341987112 822804586 300455052 556430221 757397247 993493298 3118054 975646325 632613833 671251943 10597758 246821154 920833680 979234186 73410432 603672192 341136037 850532573 481722179 729600100 983068255 986758380 119480289 754339431 969525154 984817901 388131448 823101724 305560662 421317244 796951823 863467550 761986968 917227499 895776832 948235422 855922542 986472665 934446075 936511380 518608175 577392017 45748950 365180227 26202900 846726792 794089563 979277984 574593494 686726238 633455249 726832664 226475145 377684829 215715745 528107999 99469039 341015843 682163639 866903222 173856081 500046488 467441781 976962891 523360916 863875673 382770402 659798797 29579885 438128820 186668183 513033322 152234101 503095999 504538887 931079014 786960338 799583871 931347402 977376830 29261172 425132599 754160194 791433415 706983333 844422670 867507033 889560161 540816361 899772364 69008250 864585526 947197712 990994900 635071022 802921004 243347635 826674370 399969788 711538564 726069540 823291472 663371694 965283786 143117881 318548376 209092665 847354662 79044219 767759313 3565700 930719610 31317497 759101026 356346700 745309457 285439507 859946161 689880668 714911632 315529087 995743063 313482103 454717003 804587765 846100532 215597897 890343848 496149031 920694515 844049212 883203014 412499890 791003969 487545005 753126634 457741720 805583042 427398220 609741634 302462076 841546228 826384740 881037582 787390433 838524059 796333395 817066476 804834265 815936597 122778287 193724261 785049167 996280579 72874666 787020508 470734607 787084708 559127762 606107865 577331620 801392253 412199433 836295162 778978182 907230535 458580381 980247965 479401492 854063200 980562213 982469721 484756331 913574213 974879470 993694467 866945853 970620120 203204335 494867393 414981257 911812782 111345417 726062055 723071061 939961290 754959423 915810625 298471206 887230457 225054125 659197201 474377713 879011015 695060816 859985390 178067190 675299227 548315977 898282946 556688140 901741854 80220616 890973327 890265391 942628042 172480292 649950075 623393465 935688580 955153546 955156918 474758860 852032208 67857653 933113974 164702572 698729747 45326036 143205598 785498774 984976551 305691173 739391748 522438900 908237572 564408857 867403326 922850067 969069415 739956776 753615566 59710211 627259828 402838147 610482231 46387095 846680322 782600633 969675279 900982551 925575583 71446253 866639181 281250082 725070005 75453512 699752838 182766625 938322803 201559023 584710775 210839478 618126578 988537101 994532190 777696969 800343689 292657720 896797493 290686031 770474456 675119780 835700262 247018466 588004776 707628749 784599174 514451229 516597236 729196684 899959640 928547046 940195132 735748250 979756927 817577115 880866451 546162928 618007295 430677240 492191800 479758666 883224704 647833301 852253485 92893389 666214265 397812827 753494229 86513088 326446879 358190809 947701204 155010111 429830466 88403490 797226520 102412004 871523103 761042209 972796829 857005531 857137920 140809604 558301602 859844674 987925216 911567663 916694524 299088496 945075184 27623665 902389617 388841320 565164676 679388550 868873372 254859137 912112119 874123100 908388881 906447859 917184922 274805652 355749234 410643266 665557279 50829883 571647544 707909909 866514257 911639819 982520617 306736460 568652558 183692166 222666573 479416936 878066395 984704722 996780126 928258015 966580537 103273438 891396280 363984447 512614430 322679173 679892985 614906411 823533812 478568200 968868478 652160130 692433990 251668201 833272068 617346895 864106348 778301134 847061528 320795305 855919377 177860707 984313285 690380389 772280488 268112412 810248489 960596627 973676452 524836802 944591249 68367179 837087793 638492974 981042747 285569142 954518891 413978432 933814007 869326284 937075978 282110135 359259987 34574560 867516866 179986476 879858221 550419848 627854240 306288143 516782468 417416651 573428484 603114789 867830645 770600105 834144484 281734118 308206452 816102995 963941731 538173309 973585813 938773518 957213811 703857432 707083313 645708965 805131481 822511439 936618825 881072727 932230953 480452162 647278193 568646824 721914780 718680914 957599007 381112214 482640774 456140638 536233370 684465596 960757849 456428322 863804811 157590603 401252427 892906094 941811795 128144507 774941725 668042357 851498593 473493912 921495270 3691630 362722942 880747309 979510793 900758884 956948378 389366176 767911614 144682386 207343103 727496516 929666149 828438559 967969800 119393733 525475303 915587177 975945308 988846577 993056966 748639932 760569956 121160935 836561179 855181940 944605192 428084224 574913756 790860010 793679303 352125281 763350217 200403250 906302691 137730073 324006824 937996010 968019232 534635005 594441944 589907831 591383998 74517078 210341993 328401429 639457351 451404662 658953330 378392685 533949199 897245357 992948134 307460163 478618323 76824691 955874177 788377958 803810002 240966664 634634832 926179131 999336335 177188342 677924476 881340882 914653494 598913585 831442216 662931071 717759682 32818398 794555723 192722824 692971223 388289420 413597953 946873631 980419683 349964332 998465556 159719741 269888255 318610723 472725286 644097310 788861525 281882868 916860872 91853241 545573631 551029097 821041716 839178358 965562685 709668422 886435416 836495899 950126718 778943390 826329243 536291180 934347536 7068224 702089463 202346575 742567778 646713704 710749197 443473851 809175114 969184533 993457191 837660896 844685664 802500117 999853866 695429342 854063453 595567411 684985261 305127881 583207131 197909143 273029869 17382063 537975325 927920566 948014502 505631412 604272138 653650069 677885106 583074288 765085698 461222804 529189609 729337859 948349062 76878729 586622488 341500985 406429052 53755306 658081028 201424163 756384200 11418910 346248617 204295402 433891226 745363748 768251717 191334307 787670746 981547191 989431442 843728394 853056088 63850421 717359308 359277272 622055702 652019889 821762094 113610523 859547966 942020838 962242263 720166008 845420709 414966440 619888267 23931105 419060433 23139889 274361343 428131858 459997341 930214888 990254664 672511302 931904175 84432441 201125862 163428797 337210929 394619109 501433420 880484635 895598728 257989257 409305631 139194947 758269667 88617943 317267398 81057538 885836124 383661857 524512520 208943134 763570765 178980003 569115951 427017201 579896378 294767809 531894546 750048956 767140406 182462670 772642311 881398770 988810401 739411808 851051443 1628996 331827569 189439803 537764708 99576780 291523941 311825913 475385403 85895678 747898924 750808068 938031778 378988410 707466186 897118240 952667360 853806784 888150175 106995217 407651939 361590570 735092716 208349533 428655271 501225310 599257844 157486798 222690762 419332769 590052846 556757375 739877942 747000118 970018546 626566477 976267028 879983391 958139457 461473707 768208087 512995785 785730995 192666873 380608830 642886736 752234844 313111199 982782630 365496988 669553757 464130927 558957897 545390967 547524880 897540373 988359849 819694615 940288243 346272881 658830098 522810851 657378361 465976907 680380064 609049927 744415199 611201064 978597616 369844945 791402114 149448380 683698407 727834814 789844424 194431352 909346127 401914991 962357614 909224399 970874361 260082963 859823258 229797740 876101335 302991921 589012010 710341088 962937111 568703437 606378294 653876960 704780207 693753454 908020536 317467448 517274703 11545586 342246292 689888066 879683763 11511055 972014517 569407616 948453561 325789697 660207736 294598840 929268128 410505401 882632811 740885154 874070600 553421066 743855292 596170319 668972296 97227246 547086874 457716401 578730507 309688031 918853684 881184247 955908654 345659066 805570424 716184957 936757993 583773150 707167131 779753155 945035390 932471175 959293607 777720165 812884185 877732774 986474296 707175498 773999167 839802200 962182771 163594679 332831837 572029354 819095717 46293778 339377018 774573790 809057545 23320425 939363115 106733000 552682420 836639936 966694514 732071939 897887054 733198609 895405692 44579908 657891362 399179773 607447656 857444769 981778385 408851011 748795777 976879974 996400000 2384402 911552498 94492479 341468042 690312769 871929799 456457550 702976232 937521766 940504287 432668344 954814144 603605891 680352058 569094156 742085970 136730425 221780393 283746181 679903990 769244620 769355574 377042547 996469641 691706369 767162898 180260520 780756584 898114923 898132255 34141116 325247014 801651030 888629576 659523871 733675201 843909218 932699997 513143083 634237539 517100059 766223410 884391550 924491805 739997827 916197726 111536947 243299208 962965825 975800528 499451207 946491996 938306502 946969538 596911567 718769894 160842495 412548924 36172802 96941486 750965181 841678758 322120293 964490757 82054973 836197078 339133287 737397897 71573883 530837079 491983256 638152152 705928653 834094454 519864776 757265163 9330276 592328473 13975571 353341607 486011077 828531819 906378600 913512751 550971680 929807731 954111373 975649738 100434159 554299422 246082436 608613492 229266165 394952435 343655316 797788833 262439304 703659070 794792002 822065434 162371570 410980150 162748666 833927925 213822376 425021576 496528474 609022580 278104527 304478350 513701995 570973777 129487147 273086372 906925748 989924396 627061391 790489614 421511861 533356694 860724476 867059810 907694594 913572309 466673293 563668793 282708868 407640872 90977977 226231076 123001940 903817748 898278901 972897201 645896321 871099274 734088677 859384148 270875198 470068918 365825514 716348299 2648685 562469284 662398831 975682527 830573877 836578468 859162227 992336172 963034187 969363322 48202803 467158336 967577708 993502970 257290589 899859693 679257681 722702441 495727661 972645698 405196240 806313021 240808843 768382770 295649062 828585315 536416553 698555492 235851622 568143933 709819905 964083578 872474985 893339562 13370314 339321558 334262911 896922344 662677968 710935607 438567991 616468336 768407791 874883580 456833902 969240011 989566028 995340674 381486691 622936991 710204517 837442854 573934846 895474489 416206901 467034024 750995796 906135751 609222691 841188317 936860597 955347443 129643552 383993596 69915995 920421357 671843461 817581842 228208818 936282810 188999160 607381223 865361258 967188149 765396315 808345039 775771230 868852402 364978634 533796750 602870742 857259665 732762718 742380880 181115697 813922017 247095012 949932386 292174571 645988139 233054919 849162439 204944012 210834875 812748588 945892721 108875149 512559882 465203318 852089923 682320874 949960176 62318038 549792475 919779058 969283424 751382550 905206007 905876035 911289438 302113490 984459775 335291465 846828493 695474588 939498281 348066228 961056724 245933746 990142177 879425278 920010300 490085081 774713290 250472664 363243623 644275830 696983161 495544263 914985136 33482493 644942255 765974720 964208839 394968071 885448018 480224720 660946631 964934799 992849484 665810456 979941824 289822194 802090160 87164223 195256783 860727907 989243421 721828137 796623127 358161182 745453881 666968827 766483707 112015229 177481743 73267167 258974927 952854005 963761336 432387212 469143742 153021339 482004144 842252448 871863584 235464746 672999202 44546526 597992790 751538263 840432826 610924913 784838351 534158822 569856690 997929447 999636421 464425789 517006122 263940042 378926868 224331626 901880662 563055647 741488521 100012549 732673724 962261012 983227444 623955712 762234276 693799642 886464743 702509025 877302548 385688887 436707958 227629544 580322538 474516974 851038687 563286306 960721032 732837780 807069752 448886297 527892070 911020051 960380022 734197224 869703351 804061113 813471013 505167609 805939579 336133188 708609444 21198412 766060424 889610938 953814897 795552891 987997727 47626284 159742548 221267010 341807807 643705175 667586822 522274361 804383653 961073095 986578293 252291800 627197452 374071045 714544672 520725793 684661960 244517289 737231645 18530962 986299848 151865167 666701310 604776690 846037840 890773903 916415631 726141693 970947711 814501317 914873640 364913718 804604812 498502481 947922953 574472264 872597935 409454625 809260785 694383278 881677029 182126035 256006007 144303654 239878590 375112119 382611042 544739528 715988912 341281140 743730918 859283789 937521878 295822067 437621736 396951021 538370575 827736482 966046203 552839958 821541759 57175203 409500124 127936538 661895887 203752344 395678502 841235212 883090816 787745843 893577452 869434674 902899015 719905861 740599210 870974912 872004040 692438261 956701965 365042380 424978410 942019216 960218126 481481713 620084548 35810810 172324601 778536467 796065157 188991201 453108794 728395461 864239546 228433321 488421538 969895997 991831131 617972235 739247157 125451486 220148828 638616333 839534098 406404839 590690442 43194607 598735638 785894373 826633558 571187648 762989236 291405257 865795818 642627006 664309885 976809933 980577119 872079951 890364150 967308263 969073069 918637051 983768193 838087110 855098964 117668956 419391121 758475033 895567666 12936223 654214236 178983981 952689478 285668627 539318746 684313685 827738206 268671481 682438498 537120651 561308340 873199422 981709773 149283757 760186798 277809787 952057410 212909104 355005798 500634671 891136002 727882918 835723424 884562614 936858362 70039113 426751330 665971679 895258523 122779238 244529585 946006542 999437252 515977667 630423176 136791150 774186441 200449188 325698071 172562334 367974741 832313163 858751262 620094756 976378814 25012623 956798906 215932023 852332507 606897397 651097788 894288334 968727751 953315630 984561734 370030823 556133563 787325060 894557365 855628024 987068727 884371837 917135628 44901393 900861867 254985674 903071967 201525088 668695223 148656568 489305799 191649804 251397160 81001592 272252016 100856514 640288337 527611735 732147671 866515737 897045952 604994370 897715563 319334771 577103677 397554095 780633780 83769437 946481655 7436484 628945674 771072946 861544278 640360524 780805938 613739090 741908542 349507386 698284887 675698749 682112633 522486685 663056880 618223758 822222227 588840739 867658980 76388103 379188618 135230979 834884516 54638855 436669115 901164655 931689071 734709916 913544094 244077348 822936237 417902784 665027916 903529097 990948539 100802341 669587460 987857583 988838799 41377975 996551389 234799788 431643430 690019895 806977864 879476973 942896858 664609859 780095419 483751286 594361679 925938071 945302895 45981877 183073225 413579653 572191676 484895304 840490726 316927549 462749869 659921891 935197107 507998989 835009941 396280534 675401121 512448730 709133165 670383142 832574930 454408417 955053074 66896260 95146065 396330436 425105477 506618236 577346308 666765196 917825724 273296072 992126386 686946867 989972411 448356431 450520547 906590770 969552772 72414294 954979732 850932881 868311876 348883732 542916584 388878118 784257259 121942354 572702489 687571521 701354382 155289571 273148224 528904806 896239430 233099661 420909031 499013265 856102716 546611706 975255965 982305287 991502544 340698287 989938599 735648078 782568159 569816952 901927281 428013636 721689753 679245080 927536601 501507367 999893265 596024150 640128866 151587774 877419433 388399224 636669196 952534603 987812087 803701029 826305076 171368363 205149439 468567186 534346380 293339984 558803624 942358369 948959144 766297713 960872342 243917967 715224254 797554822 968720586 549685490 759105351 383208779 902290639 950938630 958583558 626479128 678823705 695246978 932601186 143941203 166124050 777746773 906738161 97283076 448871400 585635544 995687878 561847315 745270193 90197711 865213203 261256913 884706533 342558996 692291766 944778981 981384824 645176038 971917938 266326589 427857162 713738581 762573375 753658530 800276200 684219747 898940132 194541426 630323336 519936965 536723940 731661525 821269544 462696343 705784531 325494142 790408238 890656742 919587681 540000470 747699765 854794094 970440790 402326259 752730755 196187009 241672116 910572611 945211576 756264230 818458576 654581877 820866317 83494133 109395192 993729417 994431324 544028441 735359321 140776886 354764352 102329721 686109075 484763739 867349822 962310300 996466530 133153496 298593883 514824119 724826626 100108476 529950129 159195130 230080984 49378330 543523382 985311491 987709858 906365572 929769506 191454676 333727850 931508658 980502265 840276228 869763517 79271561 291785995 504661763 956179064 915592772 997602848 966665082 982023755 413753304 626486450 717103928 973415422 981575853 984712557 439290463 855010206 502095984 746598128 666717689 691312397 512890438 584608949 509093783 842828949 131550027 855936069 803352918 805276751 156419873 624877391 959144367 988631965 994042379 994239657 250898106 412440233 413670807 890661505 542933639 590293505 175985363 677495281 509354490 827368251 617310037 894524314 490753999 749649444 355293884 383117606 597106787 991629612 659085468 701468129 559950470 701778358 393744779 599651925 701954607 764785741 339883480 508887307 950788227 991632382 751378155 824477583 652794867 991742469 3929604 617521942 914450723 960500879 93968418 308240356 253203575 371912026 918627472 968787779 928756879 962269776 618195757 908634445 259455169 966996289 627900243 869365754 50256398 140992924 729304054 736973852 33116584 984570223 322456093 971374584 834107032 993611508 333602960 762651068 460063459 885926623 910473004 925653689 682261092 984446427 442310815 714247757 346153360 793359959 388303915 611162549 241506461 289658360 652877069 827846181 880260511 891051396 624468747 918614303 72417781 991686415 649487134 914040658 772387224 888178460 125583414 243558072 518641868 764563135 8237353 570468556 742203136 929359931 456309494 661098207 861083447 931848492 908355673 910708500 2233198 995748682 348370382 445990098 516056478 540410346 873893943 916656880 131243961 357887822 82389408 281271677 77378481 620957117 362754923 798741652 540507414 634462583 54629389 714375721 32953100 79793171 848414198 972403429 977021268 995464645 950987692 990948101 776614750 794693863 519765542 620542383 38780549 671874170 127541566 825360107 666584233 818017455 375245179 911651492 117439169 792416941 875765375 978738758 413236375 480364606 41742785 106657094 374706906 826488668 214038034 528641836 716452576 987506627 433901831 868392638 517622041 904515806 28548497 953217531 619361192 738930657 335082933 931962010 430704076 830501006 26009331 451061079 817054344 863520482 968820 624155687 877901661 951393825 109325649 352152436 46904291 52578722 92269725 285103335 317362243 625818246 950286688 981646188 501200459 876616633 858110973 942536307 87520082 642416058 393651945 746759246 891451188 941340483 303006028 727543034 796007820 831025801 93432512 860818617 384486073 614547947 935779156 958228509 52623537 223546858 414798213 878748393 659044417 811915811 464142991 963508631 428217595 870780074 376559525 433631242 320125874 378041966 121060837 644361028 507874766 814949007 314583102 854007767 409733882 631701845 959936469 983807756 563518857 892882221 263016704 977643242 764337337 764818135 257853303 426074360 562935109 971375264 481689342 865672280 800636042 987581555 882321660 885693524 417797220 859467021 193555906 267078436 56922795 964514601 789884238 818670431 446115567 935743593 745077794 752251868 973956957 985571429 552960314 816079681 187646634 331142289 270933480 782296766 65145458 721861441 69073572 524082765 384799044 446139681 988794007 997416922 419250467 601543505 95276722 449364385 695856743 739434361 903378236 944110359 425336337 621609073 35466020 878081250 643364840 746293171 683901038 950669594 261439432 561957632 364661247 532926549 5036077 398924763 531271397 768406936 840883277 852911294 60116559 347530530 172642623 328260495 725548794 977424802 271516906 431339370 444026347 560211425 855256734 997752189 968528270 972581005 405967471 713866982 117990341 778365292 631579083 927257363 1947539 169497995 814930980 900900317 906018907 933474532 410990576 912408690 835987252 871301416 226798479 959942952 993047545 995836041 674349634 714199435 222777329 428966664 725529021 901302652 597869145 925042609 20968549 568720918 839789517 889969607 625656630 784869757 388997906 825752071 253001270 610030949 583228993 798387630 6040197 648582477 750783515 937833657 701875357 718613070 334929440 894395189 962322358 985588562 256774751 642151451 211125867 485106554 848805961 912819837 717361140 901751524 190777140 861645241 726731025 908877335 653009017 870967754 935260068 975523190 44131459 564399239 165530959 690887394 334211134 469062283 553050630 579158087 666899741 686165920 557305289 847683065 246561053 282176700 187395610 407085515 712046700 878039344 920933895 931704920 487600070 525341711 577188550 957748836 737194247 843586385 535094967 860490830 136106637 536222242 158701938 699736578 701374422 851134185 922475161 958237064 586820984 863707405 288412043 668197905 863856211 865270881 775045367 908193344 66573806 944414106 178927049 830330724 257513221 507554620 708108055 937916653 220671855 343179473 192539542 735250582 16664295 799577311 161064177 944467526 801504081 981062398 612581250 840324622 356967834 872737027 769939642 843930851 907712562 934512414 179349180 856631747 903446811 968495137 300375607 424188135 58378116 636402862 663111654 903360822 352069377 995708456 139838861 842214065 62216088 277384147 715198585 936505646 353805030 496892731 205912227 416657055 451062403 623349136 38972407 298473348 177275358 856549683 450422134 951490311 365845788 682335160 881902554 981518536 156992976 779545754 270327096 703055446 764778932 859067104 522331065 581383064 140258549 188682881 695826393 735051432 466799162 835294296 561982342 995913230 960556827 967243006 54452110 322937581 819137297 877044389 359148940 627784232 598962721 951298329 255942490 668085783 524291176 685913933 662610566 746756029 222814445 629250688 583530273 681188937 165228879 430404986 822659396 949896731 965282513 966263185 436283526 820820696 259978718 902893187 708785252 881257459 321550759 864688742 237542787 618180418 140686097 501853552 720884894 903956133 741082799 858308394 162826980 783551938 912261557 956166954 498254996 675272525 943837799 953022823 572970134 642896852 755846646 878101976 340713615 811389330 342091770 361327597 472850650 771344884 282156418 460561601 111929601 588844608 587349448 982407307 526390146 749240039 824485154 927985644 778655137 988471449 922966636 961683245 47740536 225595356 389375452 945442399 79595181 334529482 303076357 960233734 140691561 630183451 225420408 920939707 42382089 547440591 297819080 708400745 430232244 805680723 533101445 742235897 356490852 377316983 491503039 821667251 555302754 949866166 894913578 921372074 112941756 659907584 863637694 920955287 305306034 872752924 713203450 850802098 951857853 989696339 401355677 784370315 206374278 759765165 318699280 466577867 444421288 699937604 126023157 178544696 834358460 903742493 214465163 453747570 465934933 832227931 213691292 527799969 659767261 940108487 427842976 537235467 784682581 893745860 429936175 888809719 672712028 715902929 11989352 133793073 375550956 685857808 372289582 942121309 292790051 452988717 858259859 988943356 475166093 750805181 457295923 699488676 5928295 465618369 338166887 340314774 38473652 115626127 375853367 443864364 280201037 938532324 87623512 293453820 600726341 778162266 213123907 782267790 332382035 405922167 750914462 791619400 911687698 967647485 678150348 710613445 172132812 876809676 126157289 714673608 15325582 951872914 779091143 987140282 769822312 903081637 157455697 969172393 563484012 796879449 901789570 991694052 562406114 941370386 536955345 692320495 598927726 930590659 675496057 967455396 42447013 325756782 794973800 892388849 990500128 991459297 714729570 949119927 485563332 984458253 429013662 914916865 348442268 849187919 761059855 873746239 549315243 824755883 528681892 657436144 993193912 998401776 933092506 948434708 713526732 966184188 799474882 886120461 470178864 677138475 923884429 977783650 691453824 962630905 790253525 803256355 350511999 412817193 436135963 756534123 412730030 842907380 307875832 510857834 987251709 994277354 600823943 717337916 475886670 972416497 258361378 632742266 610149484 676721368 9797279 430261704 604869670 692250898 718330633 945971368 143363862 875203679 138318165 209203197 944413928 991115221 511876422 972486843 475764362 978017226 324172779 701183089 512108788 928506295 392528041 566425788 269752187 962683353 559439449 868597077 512649555 656079509 430583121 920577825 282432192 792947901 752099845 864972233 953258937 984730172 60542584 276454258 558672806 976309291 862419026 970301459 266064853 322570869 300041230 867296658 848673321 854388722 306522630 368612970 555949786 581881426 313351521 969353013 158966296 299019185 415916370 494354684 577615437 928264000 252863772 376834506 912422011 939456349 344567202 975202556 718353616 863280416 317564873 986936299 891760331 893916755 893601388 943469567 434927065 455440609 749738678 967705340 881029097 913994214 655395512 791525708 438244502 897895740 762974474 887006674 369008013 963619037 207756242 877751231 231046776 416462518 939907074 951604063 441434654 876055205 823201469 831054728 597978138 800021289 694554684 991340200 228206114 703638461 14964244 267246436 696577637 820685398 647081282 798537107 475724811 569584528 109054596 663031639 696239320 918044395 568977230 764613605 544468184 634068668 752770633 860114928 916766412 959853673 999295220 999759138 394231269 838575535 273599407 918980933 699399091 913145628 771856417 901070195 764374435 972485443 50313896 227345230 246195993 322773114 189906643 675210297 188231963 218459951 765018297 947924517 266483904 756202227 460385084 614383783 179776221 536226529 423029346 966253924 5675876 236145330 436487721 601184571 738616696 923703258 998483969 999790203 371146961 424779041 278142814 597754057 312850366 890231250 240906401 750610612 804530421 938044833 857502288 905921422 375448709 421113995 951766815 976301292 518934192 856748143 547929861 861992137 706251060 936870544 104989914 118449091 305811326 880963771 770995815 778926625 753401128 975623059 391791746 543673982 660029763 693163557 629062101 839883582 955109257 955574486 918857343 946532575 973658558 977699511 393892575 743237921 769750032 897297321 502128750 535218163 815275731 955632734 768613225 942436323 821079038 918212506 479788934 859331247 258977627 410563033 336670230 415913763 153305136 406360009 955282966 962939382 716362425 801549687 481836697 621484707 719763387 744375016 109248275 369802564 390077968 489917048 891708336 893507635 751342982 987199425 631977153 921024198 170085393 663928083 736087685 927036845 120672537 261625804 835724948 923084553 815088933 828105902 246396158 583481312 662953571 942812848 146020445 773817762 854058129 970478352 580415115 726081463 700263570 879763440 997711233 998270362 247105569 328625441 851914743 994948591 547459367 828168680 841746397 957530625 549764908 781130797 480107367 622975561 380632520 876055331 14753290 831089413 282434114 547718771 720643036 933139193 216303238 217332550 977618112 999176773 576102143 896905551 493475861 662059295 239919627 856296107 77416548 716043160 904123663 932824589 975188300 986482245 892414829 984311603 328975184 694376496 717901999 945014735 755725035 919994001 662249622 707681362 112155092 348371831 569887819 782348240 753594816 944465625 406753884 469037008 782902827 885338414 824551775 826062058 68523058 567413257 955219935 978422655 478830877 586042270 857462845 949762674 706477007 750536636 458333458 774987389 561171358 892771340 709217602 831266834 655985797 901076445 74315501 89519452 941266679 987539381 355249108 856852618 316643738 732882714 993302654 993415512 658934516 667450729 77960116 682145159 947984004 983989850 807402663 866287952 329169833 329931902 808648845 942551238 963985234 975897625 460400419 565776435 121593407 690845793 934197620 949537528 822180843 907069708 38530414 861570594 457651407 838650725 985219155 989235852 197995575 225526314 779499711 952052683 70394800 387896601 871815366 966704506 100605022 992780133 195563394 934458788 151625576 544690569 500254335 536657486 326828043 953139745 873382830 902345420 136987472 656200191 985356432 998932559 736498666 748708047 93047132 378287098 728246328 730182848 910779159 920051588 232953029 942488917 486773874 759713505 287868171 519817692 394136610 543555645 545027446 773278620 898213892 979105979 721499281 871693242 638187191 859930003 21518628 726229068 388226572 429911621 76965482 345576521 410147561 843356484 839471996 924292286 870607733 911820170 536479983 888137926 883510561 974900348 29624229 615866654 610642973 670836641 776695806 954781429 113989683 974316966 633888348 921951757 183575629 247232658 757879516 866521837 213804156 337738531 549723378 998702548 354654829 421982039 919610432 981959943 240735687 345707113 580730750 881992494 319665675 552673292 444043880 760598840 962793641 998943421 467453097 965776483 853075787 928195169 784368239 814193525 847896626 900424484 308551902 745304058 88233172 277593472 858827642 924082410 864842585 923489233 977081360 985045462 515187644 872551677 493268251 905285570 381798935 918010324 701734767 944606824 380092211 975615570 464922418 816351642 292949379 522362261 838952062 963796888 887061108 970596870 373840086 575832354 991849491 994082371 21961858 823278316 348888579 370913192 842130863 922924668 399593578 594870136 661672631 999032153 127626878 547151853 799204105 944486798 967939441 997630326 736865430 977835659 275884787 964739481 921135366 995778207 534916521 650220864 91869286 481784568 160674762 416619816 673028233 889276739 657884141 852005939 439081384 514477273 445799096 587478071 698637570 784708024 555276554 676852226 46356611 667987005 967781338 990594910 753663284 832031510 613854237 913360206 806540667 936192902 689614006 921368955 637399939 961024748 431928970 531789902 132805899 873350250 617041427 728536998 987084762 998023092 917125609 996122007 42856718 918773392 994907238 994978355 699497135 805035171 276004292 967264508 764190483 970343134 976820641 977455670 993375058 997250141 274251244 423427833 333036917 843260861 857500343 979995815 844999761 938721098 620321649 808299910 857454299 879347520 10587328 300999261 341146044 989076447 267684750 750531275 645124474 739427702 139255348 992183246 190003986 983811542 124981548 987800374 780133256 913514835 382675399 771022035 404921640 977277797 291489332 520495665 275973940 604458697 684196994 794474978 980108298 982380153 16675167 619747186 558125082 840370868 309127012 899275095 641524604 773489760 254347174 274628956 506574869 728815772 383176920 683194311 931491834 962001986 213926702 942018348 905484418 922122314 499442513 938764801 721923883 825292316 511121695 811226987 467918744 470466039 639880967 645700196 475357487 790346679 183994329 672964922 547910936 657827826 897622459 905388792 429624266 775462464 591902665 779398830 771240386 885428165 50560202 149231037 587595137 841608266 805905381 894989016 850373846 919010395 817519559 984689146 7273846 388019595 408060063 861682759 912977488 919939303 816857505 893570690 336705062 916442584 436747043 786199777 778023422 827543594 632825349 800708379 897899848 975326736 112541354 954181412 859167549 974323319 146594322 623151930 31332046 773005912 880229166 894389092 595406777 604746651 619503303 747829355 851083024 911704177 974384451 976887707 520987529 857755704 221250451 303245282 522030794 532704977 771493964 985835073 495633324 635534056 606487581 970634094 633491420 854032666 871744300 949918059 661148050 837192820 796509827 982299378 584129077 718167209 600163503 609088766 115649098 134133785 824481981 923706247 370042576 396078151 555192171 677198037 167631594 626481193 494820640 783781603 655130099 710285979 638748201 766122759 317044572 996220301 526955155 831725913 554413059 950754714 600157515 827121511 665520261 843225548 11496956 703046847 659021687 959513165 310289336 443998180 702779319 711999454 368155965 459292077 655700069 908440293 348804870 789776500 657236479 686220351 973778994 991308386 145376153 853883853 767498287 981281080 164502691 540788872 344171752 661997352 408576830 789436920 318286026 797429000 895149888 974594718 410306659 723944912 70959895 497728616 572367981 933976744 301038269 909072908 565393856 679216434 898976559 917259425 501530057 934074503 671183711 900949012 446491881 554868615 85620715 663615644 795219601 796132243 107615015 894720173 828320950 972631938 238158040 391630184 989584767 994635037 820557769 838824751 181319629 578388445 645430518 909051221 521477617 856082874 931387444 994401092 549969186 896835215 187546104 635342727 630898679 871980434 328949311 949948791 482964819 706205741 378496631 524952781 80555329 786284268 773022648 826344155 550710076 848292572 464373721 658736403 702369884 919426905 230181643 326048474 824829423 945071394 100175949 340664091 670982271 779246618 435076415 625783517 832309253 882103161 626994128 766910915 907412342 913200882 599829570 907345538 671779846 968957437 823529473 966645154 700617472 745390285 736903810 843090994 839801043 939670607 594547560 674094353 173240994 211954890 354186687 657505746 303153740 340623770 810916377 969489044 363652804 580558197 490616784 560882690 937537536 986492918 157724709 312343444 521161051 585569112 856819074 955033830 828781 943446384 731269734 869720880 601290550 723903439 531675084 701848883 630051264 750032947 165021966 920394856 69474310 562003054 744154724 954160468 553942744 916673330 295521671 979527087 207830439 408179950 886473116 989135981 854562740 865293453 627304642 866778906 601122334 923578056 710855914 715357777 354214335 798705533 985819132 997755557 105889712 333349547 140540433 808720153 606402317 960058008 332947561 441170211 709238727 790117690 218540715 329977360 411303668 729256665 634952275 727031215 337377240 976535093 126771204 283802890 513416822 929998390 207207672 851204869 403688588 479447793 847467436 852363672 904614085 932136584 144320392 944216202 953179862 980638407 625703230 769291430 767204137 821431183 145623967 995362059 721013187 837227551 222410757 225434007 913289951 975279183 234533360 995034418 4495090 681421099 111244243 373172955 811469122 949346752 465240591 596306708 506194418 606482744 829206162 913438106 672694027 718163761 810905069 927447692 926701451 956062706 280059780 774462074 83073131 434849711 72217869 226654999 68092702 175946513 544438870 567971001 824050752 842885495 269186056 579290820 473159073 748056450 92716841 308518826 91501989 478733464 729777868 844179567 914020864 914421411 447883683 857962985 46015167 752131373 605652 724377316 484209490 833915191 740282921 916885488 334563343 412382912 646886347 748977341 948060724 979287375 442217772 832029175 417368882 566319888 759878031 850192223 36278470 806244748 20125275 497791409 74238226 184802985 765009062 839810968 295706193 684560200 265135950 819688351 588072355 722219379 986423333 992288232 690968162 849482968 111990019 684681472 84637637 391617319 324401688 482300857 413848530 989082056 676284157 687554973 752416787 986524065 337833846 533506513 77040089 284066541 182557719 527115339 925477249 998473226 266453608 274516067 896056996 963080968 146889095 734152794 661152367 893315396 844882791 883029071 912180157 961204798 522245465 564897948 186052105 582447567 863937686 953199968 4624547 963403027 748399012 910129931 507194828 971194206 464235367 511600489 244283067 820969049 593020352 938433748 29373393 600535948 128680625 854639694 798325269 958984875 212255551 588926949 217482268 615137757 588412258 667375901 978380072 991536778 485549023 670866268 298594122 771012580 219431539 312974860 43455373 801133078 9866989 625963352 370039106 679562258 581434535 787835780 187713088 641737657 440883087 911724061 461168496 998642934 639743380 704875399 167343900 345004592 596944335 719491873 890890498 964222800 873337480 963852411 511747791 579536816 921106324 956097428 221722403 470270794 978291131 982512005 645790773 901357468 120730399 989391988 34842140 773856341 795960487 927442470 221374139 777072809 62006129 75331145 95272296 588261893 809041823 941205224 751715188 849734591 887541651 925306841 951242212 979614976 423558546 794702603 303326873 754770556 687616359 906679178 939988488 987411986 532859212 626635790 17628596 107144460 394970975 687239725 712089043 772444069 955083724 977298898 948884064 997017713 603734464 909436863 332365802 786888841 176239452 452153199 871487617 953815350 922571382 966975190 669566954 738739007 756501486 911964112 388064271 892546742 68619009 744642926 51337150 194571454 250778752 428171546 48918488 988648790 221921001 700775575 118701694 461610621 890763428 990388020 598057679 735708432 54586347 297895354 933486303 980281958 85051734 153935971 894451357 960419224 695780300 819361498 804451679 943649859 544227439 677321485 952892113 953033893 139840462 873411568 484280522 538101494 668966558 785212042 591563758 663168681 8832193 387380997 407474373 799306356 262403602 281446390 875784228 885303011 931841944 981500127 736338832 759143161 354092716 671889612 81499394 750271750 35525270 490430183 625962615 999134615 57575 195711693 341624636 363010457 477484766 819088413 144708504 626073554 502161694 606168726 92903176 902616366 441164859 998999596 371718442 661460682 999255695 999909709 107209848 321838906 639157315 665258747 323359193 833673310 851347249 861110106 610019807 764836378 144839564 887127279 164789134 277858879 981307927 997952888 955716212 997008632 867761632 959773607 971920096 973830508 886171434 927945435 560443796 791476940 682067552 715688992 448871570 672126971 136611092 764785944 816055303 836659613 148405988 242234511 19274716 100620714 859016193 944263114 473617069 864011463 118140686 136815767 882738068 950048147 452424952 937478847 720331002 897575030 797228332 978371754 965555791 995826908 455584295 944381975 826405962 895984734 812473677 895146323 651440750 742843022 949165049 955995602 610176203 717582746 568493702 644680411 705335741 775268593 758133470 759486294 556210047 951944703 308912912 771254623 692450318 813794216 71619490 796865778 411425205 458166461 860239142 969956178 578972237 727700486 827378095 963292688 775318093 940765970 607705389 910191338 58503962 625320309 726707338 813057283 542014030 988980380 588070409 740341268 400285883 878531243 355689334 503689763 883142284 976827790 255765427 556925047 434478117 909531257 296013892 411375361 685377963 852123090 775792813 981221744 205230065 652841575 769936105 832740151 207378210 262281412 320602183 616288288 779695795 811257497 834844947 997165465 868056932 919966510 973704016 981866313 365269576 918688025 925605771 994861538 762290462 783796376 913511536 990709643 244076920 307464991 112977247 513185765 666982627 950647963 204900514 843325340 580887111 902870863 70225985 483964864 592400789 851447613 38766145 532391058 404692229 750355582 451927539 574957861 52240641 290727260 406950097 734634369 814929843 941848629 709116157 742964408 557390684 989112767 363589844 382087035 652005443 707611746 513257635 699258174 966701918 978467958 145038376 476583683 256809339 567409143 187680379 576742259 501317799 811738848 224298139 634304123 921771561 989901907 77157696 392869619 904052983 905082992 726066451 947762942 15333181 213354645 482643538 834090382 561601195 600298936 249535772 695323251 75976388 534938513 180458416 823438513 474080742 855329257 308637706 763809059 91956114 198913433 16172786 353644754 867103955 982180880 24697735 198583376 131902630 852788883 964175187 982266484 207210287 534217953 944887566 970523455 335807143 572636126 807098273 896758120 387780570 522277034 876602334 973055086 813780872 958873774 521549674 600162646 855128992 894382726 463964539 617391570 579009748 606324640 311267597 529717917 336393780 393741812 158070094 925700003 124329003 455828298 953235163 959818635 155548599 601909404 558896291 906874420 43469963 296735464 25025548 605306789 778545130 873901653 920698546 978649513 970167736 975379508 214395151 356415036 799356410 871962838 292094592 866683840 653195547 818668622 743131197 860917869 906646316 972683431 3018302 242720195 727145660 757854490 88070559 928612558 212281381 983522756 579919677 704131348 395300744 815381364 859109911 864630728 49041449 825937842 463008126 779331690 739976622 901168796 977258077 986405324 704564619 827425995 108033726 418574105 317934055 814199760 983167243 988605625 494248142 827751834 11300989 135791175 841245873 934248594 855223285 990078273 952507616 977852192 555866503 646685757 645205844 727753081 299700904 775967511 489770683 526956547 139433686 661136885 898370533 901409399 380038449 423839186 652428317 946129851 287278408 852871577 374514538 790222299 855760623 894982455 306116035 380931523 708887307 829747365 913489222 957145149 432853535 930123478 321609492 841751783 885165592 906519512 146142080 401642011 517979374 881706246 447709307 765824031 108527990 492112251 99021682 633995234 276767646 564843138 528684940 814215219 411809773 786073326 723565813 863495473 860516852 935307491 620052019 755241618 542848990 867509967 711226189 968256903 449318685 701520887 51002180 284466092 245312505 534430010 729681348 939459940 840188970 879155585 756993084 934908815 429498012 839228659 27681020 667029386 476550890 765631141 804937973 884430185 179674051 545320851 868427456 944630131 758750070 937654580 13302876 472273693 168225384 703766694 649267431 896391479 809579609 936374114 914636562 954073512 524935018 533387070 17064819 89417249 721497430 881630606 712071634 889392198 73412531 754485426 796168697 917519879 7172654 985136664 164821558 693058705 192409291 976295317 273954152 446698843 209515341 898350535 160593472 234777251 263778396 959637306 104346831 605145637 692272905 924494784 787944393 910755419 423152623 787512465 815402202 863156112 445726741 732611627 494124181 623506504 53053402 418513192 768009892 854955054 855213094 862502654 854990572 874524430 642177057 809801399 2320855 786028752 916592372 943885931 993084630 997161593 838002721 918827528 720047669 925607555 442611437 615948548 190065736 196363701 15090311 108718016 838345026 912535085 341457451 494022932 498195002 526435622 904546655 943061585 326213961 866302817 309133067 456814473 83833605 361988254 701517024 968357341 510791415 590743440 168399600 855187515 132486424 997259032 961236887 967925601 242751509 871173033 110779537 447369863 398028891 882805828 350228716 911108979 509810488 955157945 169257386 344837493 200775741 475267372 130798666 672050077 145981678 871524890 509704760 895213507 404357137 977901615 272623575 472336821 350306331 974956357 306115047 581387684 57321614 601029467 32617989 410143655 558648533 917076824 920031847 942599872 265751633 413603454 715220590 821740170 984293510 986979470 69801408 958884130 48671024 967218283 912401741 930433243 446794768 909508830 619774857 986662201 925513530 964795759 81783499 742175254 124956190 642940937 835972812 999589715 997638182 999722827 87205454 778733520 49713055 498455430 379116385 555772203 767245043 904003216 339004869 347356363 807448247 840037252 435909898 700282247 124952599 216661970 797312176 802802229 468244673 678347457 504361155 685510492 987282334 987564978 233507593 624813261 898536299 975993854 453619350 973096512 569105487 641038512 32299913 399634369 369371703 463410837 861708268 861938572 109459716 261942326 411640465 922778447 794965082 868076712 92111122 710301059 262894436 494419062 37160170 105481719 296651595 376720115 229638910 621685516 984629692 994045032 632605151 995478849 260104480 458014408 792013770 853402439 542289859 667778845 906552662 935940287 877611371 934347028 681603078 896860412 560668952 948186091 585611946 823380737 614563780 699787019 670216673 723034150 613167634 669517516 471238691 559135711 999031486 999815720 410702797 605534294 898018360 965268874 120151875 428872128 531007239 594026397 899037723 924684721 884475787 936975362 489733945 965004762 796236089 854350116 413420192 740911055 787629709 963479808 398607750 436712668 791621364 929042876 369582135 410054348 59306050 379842105 926165610 973520089 315392813 667857825 330982611 831697531 201687075 806891350 1781453 789793892 198889289 343416522 323574233 464221560 100265709 692112825 87885290 684718922 308948673 573918067 365851971 454210177 808138715 911766629 839975572 965857843 977247488 990938507 39684333 726647360 632265180 992922412 44345623 822137782 415227471 904715653 160905489 938255008 305804035 517025619 622990114 852564774 69152568 510393650 899870394 997542271 845595285 904383189 826414297 967401158 163430213 512816986 528860796 958861446 450377476 816196575 538176027 620369943 928315504 982023589 151268552 945066571 978867253 994733275 768765270 964070238 53274032 307551023 189342536 914597906 354317713 570804034 628864748 790797936 553486537 613078221 862093449 882670084 376888772 887915515 550830424 956671120 887939022 906911846 472295815 865394687 20268242 747884428 321538890 472095836 443493789 797101371 424271303 512241251 864396056 898212225 256292679 503268401 713722806 980218420 682824535 794003262 273900161 294015480 303409895 960508086 257190042 435778636 992239212 999139057 667829249 857901555 453882000 788259630 243630039 667996348 368812417 988887282 116966351 836149366 178628560 848498686 711593807 874310044 540025492 583595753 874107581 941081507 654151861 960740918 262070982 858034005 626007729 924017000 210956566 238679335 500091949 558202037 499115553 535865690 2498434 143405098 605544409 784384630 610792674 813728035 872707632 926098749 726414124 909392815 781188259 889241893 21704128 156678260 60145443 84480451 709955860 817353617 256808189 640127520 70179470 209899607 189166184 921149549 648183189 723520668 982779851 984299061 427029936 518938482 987336112 989640060 426605983 799088357 935122666 986387858 852849297 857258405 550452439 926602772 820192073 934653144 775672467 777463453 145930582 516462860 279321264 762273216 293133326 460738854 478064812 874211502 646759803 738187879 168977278 461571000 827773315 917654781 374227804 866525369 882506579 938019197 954411922 992301924 247260309 416169070 456328272 743197719 757628314 820219351 593626585 688032803 26072488 264617885 46432412 207314677 283183395 860427509 763358481 875511239 172088099 281161818 787031789 890551755 824319184 982214293 85569658 568640403 702090605 909491003 915081525 969057990 470780309 680830094 228482470 872000482 527097374 647923037 270338837 813939077 196960362 605832039 678689275 800072267 609263056 731444231 774915016 944001146 753593174 824971833 614275168 938347290 875567785 981924568 618300867 863373740 841826253 902019692 73367572 523256323 273668887 429178142 186142833 625679782 720477158 742170536 881271158 978284077 243791614 727171566 149677805 693441914 824282155 948384491 578834170 624343218 376915064 844362211 371715612 660446878 593958709 773863946 882156441 920069463 515412237 546395928 534096526 743590903 215990193 565846076 41851692 353107723 550463853 815349076 526098946 748392862 307853039 706667484 614231359 853497328 250486395 425317879 6624505 351979372 284501707 661204090 565584252 939206641 543162242 748610598 951204542 966128518 145277600 650624102 325652551 969516929 34024888 825068109 5839725 301557042 123510599 501578712 401914076 770218666 725143244 752241706 46288077 234596800 943044539 954499730 680272508 821012330 418883121 422841225 308218107 799750277 977942956 990319884 893565710 910597054 878783555 962083099 965020788 975761907 891373692 928611745 333020645 850293666 5700129 771156587 185167261 475063171 459842569 717107642 259289943 603708102 487935281 788329678 47740441 521524898 796715810 926534622 908871321 963081652 283620901 749363192 872044804 883550842 146125830 889544093 41158750 122233039 731813962 908714782 379684532 544242241 52844012 655585578 813372064 898319881 777650653 894281982 585566796 660794963 328301180 442773380 629703077 859214584 410695133 980509080 267607518 950250442 167334517 299272795 907094625 968463966 657044073 745479692 367419004 985769861 540171521 706969893 604531545 988756557 906229686 972986663 529686145 816465723 426827758 595056973 840614661 850224612 266618731 823767319 268296570 984144974 859100552 902115937 437415468 788648917 789481555 952987441 240062408 585705716 948427931 948451123 523606906 824265747 683817226 808241810 822248824 826501321 584313614 923955058 728994418 810969282 573188306 876683099 271054836 579592366 401382025 532916349 785900191 996965832 244660042 525976352 146771798 876370151 575920709 858716052 765404237 850913672 79948433 275092929 944230166 988936106 666754573 911128510 749617785 797540726 478349161 937306503 775571744 960066248 716218402 875994138 224399754 737413641 576303291 594285603 963223144 972111822 46716704 956502405 816447945 904440833 429704764 782783228 941378925 960432826 669708650 703834325 148412055 603458598 90562182 952624181 333662924 973666639 336803569 918066719 371337719 889268637 44926243 516742675 575510519 982296713 823627094 959260601 528868944 797948600 243107669 738329888 890241752 969741084 309105714 846651168 603493471 651016324 298362985 814162410 749829729 839832321 52359695 354056791 933173992 991793736 656218174 809293866 737493793 808305003 937724949 993981204 641782517 863188064 879410898 926420875 343639694 861001048 530190181 939958261 261336985 350111273 430592899 464853002 856431856 868054610 640166353 992892774 597182527 906332295 713625016 855856658 432165229 617971951 832399101 882157687 230939935 575090595 296047755 905757219 361281032 491595347 706178333 946049670 525354533 919331938 560077710 675652174 229417455 340912297 90688206 206785436 855749857 987313028 686445243 750030176 666338098 977484730 507828128 604356088 350282516 538041733 642110601 671332196 925512264 969835009 321751241 883603147 874669504 880749722 837538536 897931914 513021505 676173058 209220292 218538055 575988430 710430584 575411071 689480755 248758403 511870041 286893238 785800389 877402101 934184352 486943732 874462097 757778271 958721561 91261927 187769274 208710315 743414875 394763211 995198729 322383197 861793947 491674568 751413433 766214745 869295524 850893885 987501470 370129327 533530758 795011297 953085848 784306318 868083935 354417951 675929414 981268667 996703565 111314491 409100517 565411592 687150380 763940195 991214173 852300217 925573739 408546084 779752114 429268959 852410476 381295122 690173281 594461495 761217146 387946958 568733921 221834050 253986114 43826117 317277995 537280341 657138857 976654362 989965564 820463467 896388029 142565372 452644054 693027426 775388531 437755565 984268189 533472320 860369694 914784339 918103674 156836780 533339395 549672808 734129296 62533804 837021179 229904233 742748566 789885217 829529016 797004742 982743673 367814575 477954553 722264318 854902090 696984765 797931932 349270287 445746555 65196774 214942493 314949426 977856137 789097954 906391033 114522476 171539639 537425025 975559774 733094014 830336720 800042365 917653592 713379126 768503603 549973407 657210925 809851108 820402891 758151316 979524227 171217301 280057777 512212638 918693167 21226667 735394911 213258101 214497999 875542383 880058865 911910947 975455558 506806640 567382749 450911543 955840379 371033216 712472998 365647811 515667547 145849986 854276274 97658404 786032830 240541382 930991313 89427377 593417054 907237301 978384663 269326209 520278117 256416462 683894449 426479741 862017082 560762568 772045665 798932239 827123261 752611902 753575148 937710198 972047950 730399250 906554430 165501090 983648618 107127622 431540084 117733394 610838202 721664647 947013115 544098092 585340218 557076347 589840215 14398958 787962601 763688714 919601609 143276174 730656193 621616418 710725807 328383496 874831833 830193883 997159163 88090265 200561695 225406735 633057668 954996327 961331987 990558645 994979954 457648637 901262513 894131687 946573719 813827350 857565139 133484849 724985747 31053854 743486471 699825560 702791448 172395259 640092073 802266425 858472980 404040618 987474780 592967637 679108044 226198026 998810472 269970126 512061797 873320555 984043778 938642882 974548767 826971970 881394527 897474642 995149741 48510282 442724400 833478093 935887745 195310798 708814878 813286955 981314218 538079193 625801664 392033617 775953734 268655496 778693328 473386708 881177046 834715612 857787159 390357299 626091127 5420595 238579636 162582121 741687486 75324459 651532018 723053199 799222715 402354133 420320599 157275910 950861207 315155875 937587002 65750838 890612862 551028109 714834681 442129145 929544819 996335132 998904649 264303256 729450729 66214845 269726010 574988771 685445431 248503044 712813552 873496484 953606471 828116497 866295398 605161705 723730627 382307147 654940159 43368256 747308747 855706092 955721956 7753813 901084415 904473081 948327648 501118169 862401194 867279327 959779334 868553167 895544943 43058699 983357785 451425154 617177249 776685232 928629540 836407025 981733950 588304910 924380705 774279541 777961938 602877137 673840376 370409869 391108778 496996031 623263452 551357948 576500060 644411832 668556347 504244916 878343394 332453159 650084233 128486843 685514258 919109429 982189858 696333116 893044217 685928506 947241034 581371915 756506645 826390713 944630652 595066582 663390555 64479490 278665826 158449511 632755129 483477878 872078270 654558094 905739741 973205193 974518168 610791332 681571170 230364400 700336793 943484237 989125506 834886632 876648789 398340163 521009241 801666624 930853552 937188539 990878384 671839745 680872711 375782750 708098286 331637108 594058895 355382284 428294921 803990679 864015279 825249277 869731723 602903476 797682316 385919334 809766968 961601264 978981374 740944777 887498219 761049538 778014383 403708769 456404183 888006832 964862456 851079438 952102558 13730662 156716652 966537884 972947713 53409510 444448227 472426814 608683271 465199183 864840608 630709958 984611314 734186865 904583419 12136982 905276072 275865178 744360735 679536994 942974802 851993333 918779558 34164933 758825442 992473889 999036535 665587380 894697007 554008922 554543908 677374563 718144718 90401786 771129754 309416052 619348529 978390208 994742216 264882706 645468655 189240705 465596081 204515539 224012153 871916679 966281807 277715812 651687549 816130408 999001938 815853233 968412607 498977059 629637024 703596075 948261115 552422647 642882849 7338217 490510885 782600531 920669808 315115244 703239957 306348124 648641315 264326602 332930973 54578806 966649012 117743170 983875104 10642555 667927712 67405732 338003944 658070195 696586602 170180327 531101713 929176156 948396531 97503113 419366795 962233103 993888364 797193685 876978361 759635189 887497148 466310900 620067622 148013540 402652466 878580235 980983500 376594162 970369628 852080177 860926489 474032118 863554714 306777844 718936963 663426403 859656492 163784395 473402359 218768713 575489021 510008259 942700651 64717485 430414150 108305420 759097705 907830233 909063966 20786770 748582311 363751329 949079845 689273891 806875134 201557513 680958876 121851332 325271650 17623323 238209522 929443039 979046424 20197465 911347877 296099859 855453578 145459154 373644332 283234957 536146725 220894592 626639136 116712616 800990987 25489299 449612296 430828042 717381876 805693477 974488392 481136241 790384312 920047299 986109745 830990881 966931837 548933441 566217183 55176866 762802638 496595209 873013963 331442816 961282761 315041566 503929951 342471705 351463557 263832201 790495952 218972771 747968984 248387613 807851670 445362625 497116133 730443374 898512805 171385441 331395629 548081761 769280901 331484876 957256481 847296570 859454787 190757489 930533683 464542193 502756078 758789795 832625302 140107392 528665145 846488141 967304670 417510766 469006734 390842153 539115636 334332890 633198742 442163184 709583982 97921811 842826069 151102971 421435885 758828512 777879297 779308225 969499454 253189228 628039870 649244444 926687299 887159693 971204343 200646785 658977332 573975812 617912833 853703044 990745523 954086187 958385176 407059062 514830598 189220515 446470642 845217431 859751894 62056762 342312602 617318737 934759027 71216487 152668037 428799129 540622363 76483288 105198328 979240465 987762419 411739034 756568067 649728205 900449768 959851171 964081730 882802944 888666912 518489197 857115024 784734635 873433613 373081599 457096964 503502305 656635082 712208073 793901405 449142881 571959472 338492059 770263857 390384462 513982522 460211110 520402576 321670258 430850689 946685529 974440118 505331171 548189847 188504812 859359846 660025653 798544462 647388448 795119948 608274375 726422541 957134810 958603382 517450706 770031747 290376086 704648127 680698329 935410814 344368111 787670990 849431790 984675376 479211455 733758538 90109978 290893435 429317364 767637901 598685296 753884466 173732125 223247166 932974501 960206070 119529474 695894039 97969654 378884474 338646234 436120773 226986514 300564591 662850892 911419187 977205119 980133626 494349360 672043049 676868883 907442971 848788873 901753655 840253348 856760532 793551004 927354716 408092005 986858195 303539973 496577319 395415216 823519706 423766034 523752530 941156465 978790817 503178091 512198427 681254410 746571921 697740918 958795527 317616272 685291648 925537477 982152473 538857349 990766786 137728644 300673984 780395118 973708500 595470252 836778614 616464362 824773014 650757111 918871092 60632764 990664924 524408602 722244917 658059051 760034472 3590832 387090651 948209824 979113108 764131799 945726188 73765724 978013779 684597433 857543034 526640565 705594596 437394611 896784581 254148921 595175876 540580861 697364665 846754036 941264064 352629010 794015990 310976805 397840382 410469925 456965392 959665141 997368246 926244638 963478836 201218844 932897276 388025581 449549680 767364344 803936556 196886314 784934329 307037128 796170537 706973692 716354281 650710516 771413820 804076509 825240074 407966521 832851219 716653661 842371673 889061247 925872140 958302632 984995205 92942610 133699950 473399426 919234563 95112160 599971297 590724329 595132484 956516165 998899852 407232000 951700174 340218951 950193534 234451919 464503965 872668450 998158398 53241012 214494744 731556719 771225928 391969456 431970921 932359476 938886190 773323743 939738578 98777511 347199251 288351167 785635168 191060920 350368083 860338553 967100165 592364928 777579467 963676923 986977994 363117299 534441602 754154578 889959078 726951101 743371232 184563666 833949276 899630215 945463213 211182570 427421745 951455497 984533673 117567223 421548851 716462737 778936019 535394230 736549022 869504647 941189035 493177247 796655880 941153283 995783077 190719776 238667965 741152979 864125512 207271327 529278958 170455689 458023701 484171529 931499687 9185526 292822890 947320160 981551991 215788996 390637630 925939756 981198298 411935329 467360422 558389716 835211919 60310524 192077581 785441662 804030675 75261276 757596117 589528690 746260423 812143627 826094913 902236384 917073520 84179227 465610622 754294458 951925250 924004476 929626545 927995681 957157237 637146783 962088725 499701823 997226335 671067347 696235231 423555939 996606415 131970709 569574477 994470616 997613958 290686220 655379082 468135988 504177850 294323494 932138887 88549355 934268131 554290689 777772394 32235026 580373037 418705440 687978975 857786531 972670872 812727951 844535776 287818759 605298542 89297013 204814348 430934784 890074998 810221341 901228141 782006894 893221257 658848312 858577934 79377373 911346800 762305228 964842285 557856847 833808669 393162355 401810863 872759782 936685197 915506663 932129087 100895705 893580653 748430859 872214503 547558144 988445003 311934549 892472992 773966325 973330674 270872447 565770265 481780424 613472472 614281576 695920812 993626625 995379292 718661349 964781915 403887752 673420887 627099742 760968543 255397686 597614613 467810867 503578004 442607906 862629269 840257108 938391204 294674867 674871582 507711444 957959546 594279911 704960143 511251099 671371630 768701156 962936800 895153894 926482164 492029358 763661226 714319437 773917183 955162382 964828294 976635577 984782500 930643289 982962518 126844092 581422676 286104392 946896735 932276522 972138918 124915635 370911642 921003375 991534252 543741688 756825886 888480892 890600422 923609644 980063417 850065703 917071517 37871863 409466524 487557165 703094092 459951905 858194962 174979929 368231358 298579731 789521032 796465718 945135644 941859737 995785000 170923523 492436977 131408445 406226287 381321469 902311760 712565785 748096435 646888274 929718334 683508998 733284532 827021366 956078797 542707995 725746843 6461666 363959937 370835663 724158999 569488135 894894132 688096707 803550186 579381338 983807703 926611239 936748169 320621536 835314905 169502454 900519804 833056871 861886766 287694374 327577902 453910000 572024171 150565196 531713727 517067876 622817386 31889032 336990560 67608517 477799711 920521939 926484207 788520006 992666957 277219881 538502819 123041071 359324000 695800792 810267095 827226953 969373454 686902620 976676268 993988586 996783353 488308381 758392242 260438960 494537595 725380970 950148680 579522886 649876344 576970133 806648282 900036640 935456523 858326876 963036140 250183618 817800798 921603027 933158628 921342314 974046339 809615673 905146117 759743984 794185654 718875829 840964136 919197387 999472940 87067418 885430804 128052697 205202367 811502107 868272668 623280383 870591926 906026985 972593899 431295784 828097810 286699432 305615907 142469084 168151888 62946799 304046137 362697797 593963163 266559478 454005518 33817 102153558 682265401 715197658 742318745 970894996 102512737 112427418 609987230 880776388 751344654 892363574 49416392 453510863 878880633 917726082 609612270 619744863 527129308 844682599 82614053 798041457 571138993 823401194 94567389 858821135 694211366 922164394 166556368 508636930 790365767 906368839 828187758 847334362 445248384 703158541 142981180 865069426 620758557 971423516 485651091 634000249 190864520 540556317 482373840 501472677 502959467 749240736 65355714 857188386 829627502 951820058 530208161 591877246 448407947 617379351 110389248 509922425 210536858 290053949 61910843 895822429 606782409 858011164 936934581 974087712 589936231 593440932 542285277 623886465 128858211 152033203 322608398 339824911 252235087 375490589 605971134 810960599 824881037 994471433 673154098 776569001 269589178 828961276 49303431 288625388 209094730 275374582 636869117 906546744 690586005 748134164 447559150 895475445 403744752 509154893 151021666 539741728 60860515 686037918 212858926 841936905 395317687 977845506 198655095 804474074 658301805 960809469 184448882 671168603 445106633 798662115 511515272 779839111 1858404 397613957 39754997 281425633 831698621 935425361 181416205 953449051 184929372 940290962 654428453 676520946 981577155 988640377 440873470 779983731 925700757 964263590 145345775 538809232 295570702 477054517 299336773 603456115 318806758 346910873 653639572 974252938 498754781 890316620 803898831 920095947 52719461 263157105 693688150 755978561 41424093 609809418 290614199 744121503 230088934 870108125 307794282 874379111 146551080 936188599 300873357 384451332 149175397 489632028 61249806 592784530 206993877 938080861 946875202 971869853 822183526 855886138 685527724 736729243 672523622 713493450 331946897 680998993 559141425 848696426 35014532 629736778 786363795 817024575 66502115 678442142 299568016 855836090 986738967 999554974 754398008 783184727 967590588 971170356 269547662 705512668 629053255 894550711 865220706 889328777 37286699 697842895 934266262 978682786 931901665 994893825 696284832 812630750 655194003 668674012 36786177 162511615 826196568 870921380 215368237 591514759 715240033 795516567 352603619 996705865 571843933 817258157 841615242 943515402 940929914 987715758 39447985 816585758 119029067 975269422 21630704 756556985 432994423 751443948 806122191 851647892 298508431 702370332 651741171 661057560 607719452 704693272 211951370 608752279 777777194 910943801 586983787 654775258 453862930 911613139 652532860 689080667 916913277 954205759 941996130 952412824 262323426 391677255 512764829 566852951 145754003 818379210 910323676 947301535 469373484 808673173 726842276 728917405 153166584 180808123 931124774 996590137 590348516 603984705 58399758 469659413 886757366 948742060 138556244 229910748 396920603 542847737 27510232 300391143 425820087 517529435 194716679 536404570 643622324 917273898 284735264 441913524 461865962 950347844 821703922 990331536 757871676 912820852 392483112 933431762 864194090 946523368 65757449 174235860 565814484 565918191 138486710 743565548 397043892 403268660 588487319 776545559 394070347 487448956 355818727 635317830 277557597 408260306 159058296 968059089 706548392 774494163 729395211 742338813 545737103 921587432 465253498 529985564 455402806 564059930 633135016 638919264 573643931 926543172 505199096 513082767 500332536 895061534 511443311 666791503 950892279 993878593 499240049 536380390 989140471 993130485 518042010 798284846 399786732 638896422 112525711 227534872 624319166 900550752 656825618 806617010 248324399 406213439 280020441 545239760 413665303 583724410 378926936 380381888 471808661 664621622 661640888 685354752 444828287 555519218 279185502 459340936 803727348 980772932 514948285 789066182 364799188 977613734 721281818 928538151 777535661 831655090 299528912 418272664 231580682 526812701 588022688 781089336 853454392 930730592 928612596 954035743 366586752 886657353 728496239 792169414 102993079 988088829 143947495 866935208 655728109 873220789 451009260 464394196 308849517 371593444 958509873 998496985 634869918 772598412 328065633 903959501 761103026 833709786 583939546 622760228 583801088 906959040 112542089 347306621 846533670 895904610 336008824 664748498 84524680 404669659 177015692 803378286 976115848 997594169 684625543 803949969 845691030 920540674 757751154 806777957 611493505 668230041 966541221 988465263 80402967 717224124 380793081 614712032 708356022 961238000 424932650 626727518 52938897 653671507 728633726 819438988 624928408 643067758 669562106 711787352 985994277 990627726 800059562 986075560 592196565 895977593 860456716 976318214 213835493 251550404 484807351 521429529 642471639 891768486 787515386 886939901 342377079 622008257 535294967 951415530 251112663 699701851 233369405 612598788 138930766 475212812 384898620 935467170 191579612 818421583 87434349 172956684 352816587 483435341 551238234 577016682 618239816 854408649 876873870 983732378 202890777 918373221 410032707 435145368 223875744 640243971 117850864 654324744 322168509 646996140 966424751 996715398 183400758 761169439 639435495 860603961 778523470 860689276 18711229 345919086 720727554 988273750 940837813 966264104 260284334 772143060 414908652 558822014 116937633 452654028 175974604 444024474 787194753 875761441 257708347 324129892 506878241 704488290 567115608 586289530 445489466 537658536 128648035 138418938 124198698 665174995 484893273 666109382 341568106 560214457 15608033 136551040 103846312 409153939 546745031 949850375 609784814 761596825 248896988 728050662 718005203 811429793 990028668 993354914 756354661 935883826 325400523 707348505 697000686 846253758 121590035 360989689 36946616 738316131 910928633 934956120 623181913 868307714 191470405 863512473 895659117 968141817 990670452 999554689 885323288 888710073 335327693 407948195 707101466 720391943 931072736 973674647 597010680 733496366 26190574 326335062 212255574 501353819 474389560 516886020 457371738 823007701 986011987 999170305 36730207 450627253 984970183 992690901 324683774 690562389 671456883 833313617 59662692 676169968 420317166 923261005 502947330 534516634 187563512 444311134 215362965 868527722 974807793 981629432 463369911 843473167 728827262 797805479 302130592 704170667 909477928 911083995 759275283 888052555 296435982 531569823 731080157 937246292 563334626 893204726 773482110 802705970 857955079 867589930 651625381 939592354 384600114 450787783 622413300 661300822 739331144 875685882 140835190 656913030 43098821 80784312 743268884 844390692 683645475 757354823 908519178 957406914 918356679 921707966 714428611 796323403 701871172 709320051 901782545 919786979 476239952 600120081 251524279 972712317 834578535 995569305 715193071 735275394 84696848 483854213 715731293 830896118 308644388 504157140 42493934 993501006 788255360 894653718 891763987 976682309 605411871 629802682 783366667 855210832 703718425 890909846 925748706 932753069 306010777 621351240 992639633 997048298 227621097 705855023 466857154 628863515 476983098 780924997 732854589 737254508 769444930 785878177 111827183 677114320 419033386 748125757 633551237 802923979 870983337 989461522 441872635 830073033 526287339 980194391 922192885 957222442 884264284 914404485 986044816 995524260 224783565 677971160 87605006 518687137 249194853 734954730 453706765 829730248 907463232 936590924 94820144 328451395 852251878 906511412 243454725 602875404 487022868 996990565 323760019 968666941 365843284 967057328 188494849 374807413 912547552 958023845 52872666 346211967 808106510 817160372 321568156 927446194 804269652 941582241 48243940 254403380 888813408 905261390 644000618 834551910 733725507 777782201 39090198 710240256 61653410 348962752 813715763 844593064 931952958 976037785 100999998 215897353 870190342 940974407 356375837 854402811 831213663 850646922 475886496 728662968 703278121 786397456 725299713 912865815 404561493 965704777 103958726 512094129 464644343 594737507 834359908 987662575 840727312 925376036 876472625 967165640 838053725 982065544 787189258 943653239 818181308 988211777 393783240 507512934 114017297 328546219 478522150 490233941 144027626 974644232 632788740 717057036 716648311 829944097 675867321 921146185 770099474 790017519 745575159 884407784 167080575 969319153 159406866 538952209 426602903 711983354 869859934 920047854 702605363 865146015 707299685 760769013 210851709 594858815 431280242 890055631 622984451 660264189 762077092 950544573 601503617 643670484 91038975 976190651 684833929 872373175 47872409 594379868 89617656 204397764 311899969 947313584 525261060 729599802 670015242 887398939 162150162 964195227 836509428 993736760 90675486 730149529 11725230 207097004 271427895 568573467 496891388 508679361 816795616 873816643 874841110 916102862 246147966 277742282 967603500 981015536 475852910 842324955 720603184 778731374 788844407 926383045 435410060 641851241 543045077 644301788 134507058 861324143 447423019 959616382 81183823 677553783 400815023 648423756 153907005 463240197 897774197 919885897 334463510 486578043 768989323 911227176 354867026 556632263 138355297 862682314 225871729 590449016 305206557 409042143 108635623 271537037 829280379 889271731 129895331 489386969 596843382 891404858 220426854 971300080 657476811 967387645 673351072 971812616 469286406 669930880 406377784 729682932 402571442 571468802 830452058 839530232 660354796 961846008 245943905 574838098 116324080 184435435 787945357 810428579 609414482 681224250 35442811 93541302 245986502 251006281 330068966 662099867 318537713 709370985 712619180 785041290 699774537 989691569 658375516 969360644 891784632 953571838 164829336 381981295 443340590 934760103 586839841 746252092 933043946 965766011 556218792 635724865 407973825 751385223 267688917 651844824 129831360 335733972 517014038 831041658 85864944 535366721 814468384 946153143 418793356 633312972 896134282 949714516 452527914 581151795 429909768 675604502 890166717 913778441 445329662 697583978 306004804 653736708 23040082 978636483 161305843 683571332 823694276 970230587 596086600 663791703 824671855 976937594 678033180 969949010 862755316 961304335 529479471 867663843 408111327 409172061 530706530 623204211 123690058 242789708 688225467 916897434 548722522 958590516 595282316 698211930 105600113 776584127 929940028 986745090 253544614 272500312 369207964 421704681 317714906 807357101 913434781 952753613 912386570 924983005 769392376 975072603 456804496 641401989 455795305 495537222 249428310 544915416 986749542 996000321 890386904 931561215 870745977 909793412 808607297 893543461 254158165 896270411 998421251 999238972 887001785 989713831 1753029 182061647 364792709 886813043 564766189 589650548 455008480 897083429 743696126 807085857 481291689 780348537 739956611 957043010 916930811 935795093 895639957 906322748 734556183 748214941 195618323 555149884 962654192 998018231 388624678 985877822 729202795 902055732 253038475 681775393 881383028 951538532 970640117 973068805 909894591 967234182 48290638 406153864 949672703 958204129 247613704 717503027 799306000 868525698 314384703 609357052 639499025 959703998 68483672 697522654 396828506 657225856 660341588 749726161 418197986 611742776 65395607 342829681 456815198 990031980 86399844 213257598 183406859 840541674 290848503 618529406 137055901 946151369 806575537 938294912 38514314 665910885 943004984 962355955 232949536 909038321 178917808 187927421 766292126 993570071 109079217 748618978 186426205 965067129 724420543 741647313 865488261 932893023 413164607 655672866 859735500 948941601 749604916 994084771 625613596 720362095 311458558 338304680 529224451 802592115 495603424 872004684 155205390 351933056 392648918 541191318 806626775 947630035 566516799 966193859 571825988 617044360 804294450 955032577 317370762 790100927 594090245 840831289 454671048 567995340 466106572 673128575 811827051 984309401 840404257 857379266 291120645 367675425 90873138 379116639 245259978 694145703 440478336 941842634 864563583 929826532 202774504 702079245 332168448 715740649 30435992 354077915 628940302 650874095 802834370 847529429 533438490 978041887 265690163 925547093 362475904 669989599 370925592 453209902 505304795 578014617 856099541 906699261 618476536 713299191 277107876 809165375 832826685 892191781 288007197 881426690 608296739 672493258 215865451 397743592 867352745 905472619 549128815 790392936 747114265 769466594 879944742 966844810 879187873 915192177 340207048 545992726 808099803 986819979 399902839 789455697 33014616 976860551 740301578 877357182 37082349 119606206 303216443 470591064 7187005 572309384 713117002 803688870 996092564 996339521 691088117 893797179 651688363 712455144 987359708 988781718 720883461 949362839 273144749 468363111 477954730 970262042 816047625 946494603 143210790 930432722 423270352 722136311 998992717 999231270 369607378 793928476 972596250 990813416 753503145 964470623 15702788 335595901 301400199 788460642 732033512 932908219 965382570 997803923 441326773 562848093 744846919 895348792 796335300 829803966 784246428 946318135 698207280 993014197 74106271 758168070 583322227 729024545 381624974 610113892 693765779 812502436 33523821 58280852 650127908 975993784 648409730 921844709 728976254 941299009 691237463 842417002 544044657 952732092 658835712 777476318 922205335 989779713 191444843 732132637 486319699 794852002 212265077 407499267 139416707 936546002 419946772 710616379 989267332 990810676 477058158 875601565 479159450 887203941 755143458 849280004 908787729 982579627 286396393 478105198 108443676 477076215 738653890 822411171 212181751 986303768 52914317 756754647 97547305 893325869 48317300 249450814 427289808 831550967 27354051 886819931 124289720 316290821 544649780 756716703 259667293 407434825 100513834 522643688 661465061 715109515 492927201 554281758 208788057 630195157 940231765 940380037 603895529 831931592 209733972 767833738 550415723 719508225 955020576 972461332 925333494 975738368 245247067 948553434 235714807 850309030 360323059 898904229 100543504 475812966 247667170 667803740 625882639 799394739 5335138 606101920 355725320 530131798 69624275 382828656 403983657 502614179 616540888 828932197 557770538 854475208 361301083 720652377 379856742 498902865 465508853 590122250 441667584 784024232 539059084 770966154 164432504 353375622 76557389 716141760 698346928 966751190 89652341 463516872 961708274 969161687 62658144 748142931 768007367 974603590 328112647 441292546 348167024 728796864 278102182 831050300 401748180 884672785 184195160 909822004 243682978 502807692 593242376 842606546 701912742 703408245 69630575 783391718 574797684 859618359 289458359 857881314 120928086 552483293 129925286 406186388 799053285 811982969 426335003 444197988 400155502 819213411 680144724 815760577 468941199 517873509 199996946 872807454 302960512 667588893 300018825 418883304 639667574 738825808 765362572 975845725 532957932 736234101 217825815 907894342 379163406 580569727 704179377 877365217 827158328 991068406 425916564 751158324 932594208 966719616 576286448 644983140 556551740 783495954 546633475 760740024 613162850 728304896 977438802 998960574 664793834 964724627 46191580 798098494 54282628 76513285 738463579 752015424 444988119 885663486 735119505 924052324 130511768 486749113 763827512 889897816 226009264 981399624 840245776 925390046 142960807 758561332 537817445 540183022 619504111 793030191 221305496 818959347 358604964 588928566 533468990 754262959 761774220 798289141 149096350 718635922 655017143 933629725 510819311 817915628 898728684 932562869 99703187 251715382 279421506 583273592 362691574 822203522 560765946 729135459 805532216 949021627 397795614 798579470 418216236 835723165 299973994 909089322 268755837 860945727 310472252 837601086 822436036 875963010 572210281 597829284 431982177 934788476 557026908 915148613 561622668 867771789 400345934 522668109 433625585 756177325 814723487 974479319 796030913 797553614 789491751 803777980 500659681 955895924 38282296 908335816 986998328 988779583 329068735 426905498 327230204 755628416 552081287 572868699 944246268 974476526 965506533 969108755 382576023 862590524 124691069 152169227 475674465 776201926 77190244 949754626 620224526 711059142 903542115 994331018 56238835 971693545 373920885 881666067 24490171 646111024 541475877 722346693 786191841 886190728 538070356 579671085 814823877 956053894 810666463 978002047 513450718 570364722 24060883 907430725 352902857 836128696 945127543 989639874 446960689 747096723 506906457 865586036 38705213 199257974 26842291 618859550 61940506 217955467 739729302 763445866 447429079 905778780 558746720 914326072 32401629 845287712 150616898 537273746 248157433 881772565 898567591 980786544 804626253 919124693 319907796 416365832 78931430 333644963 825647365 948079844 687018515 923324168 240679565 876186958 333353076 658957767 384944521 393157446 359806424 834353199 794640360 910962215 44362304 696581620 854896914 865744435 18110927 947606351 797948599 827490622 110844105 481428949 367828600 875599102 812994160 966922014 699042054 877870542 797701388 933151701 50048743 495574286 736135258 799147598 411153610 699397455 360114259 917587711 200731013 637748198 685169761 874389452 558109436 795888321 459036326 839848896 51485605 328154436 161814682 493674523 441198869 803288805 699871462 724697474 469495663 605205716 829646067 867772867 226030932 985554431 621122381 878516457 155133589 525885976 927814184 956420184 20110360 202939516 841218273 999317831 959158656 988059227 190183746 943986811 840832953 843769665 585237790 672216171 514433817 660159669 571206991 696137380 240185218 814498305 271728189 568855705 527751596 946870426 660098075 869766463 899464344 945459929 330880535 541267555 360845419 783326741 591444301 830535432 617374345 892107618 718766825 859029099 465930479 849327748 782767649 980475349 182022969 757718158 306202588 933800993 218246949 937774008 633756147 907651893 159798272 216449203 872723832 882384972 949176650 954650441 267640622 854678224 120975133 879373514 110630886 545625281 674185854 810385417 510049240 971139907 332492091 606282071 229051543 304737890 361358883 370805702 865856207 992057662 766315600 990773341 199744037 326421728 755696761 776007289 219804227 825266500 268282164 878359696 687849538 886277530 790658232 797846477 607462304 806315699 814649344 893351007 295133517 610788955 793748272 830063464 239459048 291202288 905412053 957526767 20706040 280305776 807812764 979416679 578134984 774099297 636625684 987350725 248228460 423371489 848103108 898749624 789688 8962422 478151574 630974055 62006557 373313285 630066373 845978051 294082939 983443366 348142811 908069325 253264534 642817085 677157011 786181716 119957244 676384702 503076729 960351061 727663553 940633835 954905166 960999116 33398725 400349550 880984485 939105261 22510220 413721400 972652362 988414691 562761008 649282415 724218095 943732212 262249826 547073809 973843387 980353603 425348815 468715466 535010048 735792679 797124156 954352295 282215249 947219121 394548193 607797347 222554769 857882644 123522379 421214794 977409869 991388338 875125126 947372867 655620965 869532319 292246806 829160934 754659567 808182833 289386802 879017584 626443503 887820830 823079482 987481700 578576557 760431356 600280036 752902059 806355451 986479142 398316283 733879882 445677976 778789117 505436856 965991154 609189184 947463179 658449552 822361426 733500332 936921570 808439124 866068307 146953603 958138846 723091305 884974820 607665086 850078397 4536949 56888027 520948240 779921421 646913848 681111159 629375730 773672117 450868906 656389949 281161047 534914532 405978976 469212899 494372741 781378319 479747984 794445879 676960330 780144718 237208025 918511908 472188214 773051912 339157251 624970720 446204405 793733165 535311568 657326147 400028715 927512553 247876534 704562490 398167859 508409888 868153279 918856731 786170681 960809317 727004043 824248904 957722673 998754068 625214769 856390370 736681724 822257272 366101819 557395284 60020238 520384832 484206804 941810458 466824837 981811775 421239852 667951776 840908677 904145193 137613282 201931758 324828163 522113048 554397437 677628551 722615029 959859567 797842355 858737240 687656694 722215260 21838979 643611095 514172163 541349733 998879753 999470598 998115734 998733258 276429902 380101321 42704171 734736527 219358884 309748513 758576183 792170418 789844500 880856648 436144082 723204383 516474572 977912365 735347842 858208918 17187898 463489066 783183702 810606151 206891724 711495204 65649838 418974093 229999759 688213244 652185874 868524851 329057052 570430425 415862898 752822124 558794806 886046026 163966632 602083844 732462228 920965551 955708917 995453100 333459528 455985177 798743197 970815356 349206434 808188581 412252932 888942992 548435906 716874285 793005369 953403567 973249340 982124444 192585372 241097593 45736084 545291195 822522565 984591754 352701131 634244918 165728936 495165386 86229106 797872040 624865177 902999072 953592475 982846952 369570550 978244844 759349756 878279192 979936580 998034665 452256423 679629113 255472337 593060527 861648152 994662742 951175222 955048233 719463772 784378640 188714943 890399239 970562566 998380004 242294026 841058623 894839093 959614056 298341483 687892369 342206204 466752344 340519284 942814547 207771080 454243867 983221547 999831379 273188257 634917668 501019360 596935770 498289480 863404979 996930995 997793086 495098108 908512066 752806003 987121331 20920431 345459333 552142956 917572252 39180479 428306814 976790995 997921793 211499566 990279118 602267915 877350107 644815639 824233898 594624310 936356195 422547602 637078425 705890682 949639606 413769731 892656988 249260655 785366235 680418546 993193699 549131188 914384499 610763241 958991504 613309208 684934978 65648315 226886121 356099438 861490723 288348824 510154935 425833914 946288470 58561652 265000564 894093150 959120010 809893789 939507664 668582523 874157257 958595668 992430575 469881359 897212971 783110403 810838057 689655718 712660482 884672198 910031741 947582377 989038799 934314348 956859884 731405118 908318071 24466884 712692721 487386317 856089398 621301364 653616818 528417211 626652423 129060503 675366487 745073842 751024942 973378674 993540731 935214227 976593546 311159565 400576076 723569550 731001297 373407774 405913437 43930694 869812420 691824614 714370574 470682185 987662660 48908397 921275922 313095997 887435964 175335524 275162409 675524210 811943945 610837948 802942808 531394040 713339215 719937139 812616661 643643249 902510523 670594834 861599234 190108099 902169418 926095223 946601689 379984902 746968727 912293547 935861844 64363589 538234405 708245670 876174411 657226202 777004778 844128313 961065508 528940335 703625299 393619027 558540782 324466655 863746669 528942783 662222285 792218350 834744967 936819870 964804170 270508918 942727515 537010331 608662079 432890332 966279538 568732904 901062177 292806093 367486400 120622431 252559291 174441097 809120135 838203408 984327514 489211161 595696563 930302409 977166984 125161092 466890334 590819093 950700549 408908036 940901698 706382368 800358583 249803008 928181025 80878529 577688158 313139003 314992848 598207816 622548607 523965540 808206617 769015693 823894479 120680096 820998515 295988580 371600960 93289165 290248448 808544337 846165429 790433315 915914529 399818671 981753085 423235567 760562279 463792896 945862844 787842705 951139882 44349204 833617769 501214434 789184837 787905276 826995938 802641085 886792652 935979606 985992535 375497512 783387169 927829070 962700266 582634788 768186687 176882676 594220071 500363484 970705461 627686599 792012405 688076793 701986396 505094965 529445004 837067062 995993402 59568869 670638716 203289467 582322189 720999690 831665869 907949021 926487110 111036330 270778570 304152579 578890093 13322504 914202459 493093759 757184886 591784882 961806684 920202202 949022163 344360975 492346044 350588309 450545169 835410938 968866876 123051642 843003639 443289131 898987160 425928530 874462365 191594244 972250084 15315497 840585689 516962652 591484102 399478126 497681796 800630360 890955649 501429643 776432132 165701828 256219257 38079602 935959270 466701144 531507937 211953019 796306485 939704626 997427902 341333502 714242713 248341273 444516588 42898704 977211271 349129456 554075468 132128140 485210389 216017315 844974298 501554569 895993886 957492101 957630805 668458110 711711337 470803894 525511518 396892345 930741885 714515345 739944957 88906337 598849224 205941400 311253239 967305281 999579375 55950075 125296520 101855247 346765741 744044244 767407256 2060447 735231480 152061689 297813113 666083891 776221241 61409875 999396552 784299375 950148385 674281621 814519177 763687103 814950500 250594369 738581463 168275653 742587708 9952546 392347652 245963328 851273699 656591618 971100381 885577445 908087515 738102743 797630548 175446557 530251188 654695664 862844528 205499766 756183065 831437545 927344724 49187999 142910642 392332314 743584800 555552797 979135362 547349508 571337406 608228261 828995896 712844032 850789297 400596835 667714370 835187589 936139446 196424635 586806802 778077276 797053011 981597582 984274137 228757963 887835004 832920255 845598352 597255136 778862343 653933440 782606296 974314613 984316296 501354809 728017368 824857054 947776905 75543064 351734369 811701380 823309463 461279767 865127994 473790875 931598763 987497860 994141740 599895307 779494597 99947652 593014766 141998717 709487321 916543437 956980424 389028654 473193691 433618335 793383058 663019927 999105061 2760275 906744902 66748297 792056882 190128565 547575593 333901785 665922343 97345483 121228384 218841162 499806224 504911220 759184277 308064529 603574943 581471449 680310544 443406383 864653758 757436213 825842223 947450362 980647403 634318753 756122349 672462174 688259768 439655924 956075432 153312034 176754356 212353831 864946812 699154185 897237034 763442654 984627799 67860170 116033505 39048695 571829943 93916857 886072889 389694611 669078674 337677964 689109750 495713507 572468465 990935430 997672136 357828092 578655672 548144448 884648837 383279841 515613630 169691921 170818959 746653272 761165672 598776178 604960946 803324417 865289710 216417983 365850771 590375967 967430489 593214487 975494945 342557811 710936966 888635291 957050202 201924637 929423940 573068888 665017712 644493918 901328724 436420163 999103953 586805721 766964144 156811833 294494910 176548346 261875863 561185401 615745906 44963701 826385597 163841931 826219299 852879476 866589700 417945834 886047798 406976978 623404510 399637592 848464734 484029189 495298855 571997073 875997551 443083798 849697263 210057033 773729161 303977340 844137235 368795622 635747822 232688092 630045260 148838270 243424133 456874911 562880794 72462700 228886022 181277796 890673833 68774315 167910632 635777624 743116218 636808452 663438478 602560768 983572419 756503888 850849561 578999764 715881898 87167736 110075393 394730171 768135237 120050100 783676248 808044389 984602089 837571021 907677422 115237997 260522704 592986323 809207285 793522913 904864574 915488948 954910421 883618871 885337346 808466863 846348012 338133020 972585078 49565479 471196678 597764795 924368961 92774362 312403432 503773673 588077188 316924332 768673541 628516886 856199988 688505979 960852937 187714170 733388975 807185310 903168027 553945688 876539958 863964427 893953509 479646523 652639341 934942512 996621581 267633165 443422515 518387199 568036884 141508729 321731714 301863012 685192882 781150902 787608892 774082881 940233008 954116933 990426672 25382423 364989360 579054018 968328578 145483637 868405628 419772951 950640413 31108456 782669817 445447466 865853587 47386090 499917304 178463059 358742515 170969086 905907178 683660625 819701745 662552756 944013566 145274732 343781316 894771028 970802277 511555797 694755488 35900718 511379385 392399628 820978760 439084137 992854110 820817246 977939838 710757766 837108510 901024036 973617235 747723771 920415720 585536141 829617993 69489376 120613250 263841312 470258157 179490048 946142616 813780970 873489172 985921234 991647916 83125440 441106435 116756247 993588792 605060654 824986974 341021981 461373845 452285809 797857892 308844460 888004227 807156903 838121917 197269500 770520890 521190634 538599931 794252862 966938840 183989745 845169700 566076413 735525536 662586275 677220581 957103095 993737517 740331379 830090260 157038418 980243502 976378812 980517680 769357807 865335484 451418602 999274580 553939262 578741949 20712261 832803503 753501897 974803330 171485101 179853336 40829219 124736306 502567983 531586894 400470467 509971380 287858508 925588313 515817270 821014398 204868536 515200001 961069611 973924836 26699382 757558308 836447364 890490489 953454751 993246233 685844647 999159406 200776552 612366864 845950279 975283859 624729207 762190034 497265063 879499132 63492161 455293745 920422096 946309573 220501483 466689665 819311227 852755679 801509256 965849382 781302318 939994326 165350516 768135349 890904034 902200491 789982707 967799573 895152924 999376614 763835736 933384441 338826349 583040429 4342264 741088389 740254220 778104345 221131766 660977550 16569379 331595653 102499981 218369116 656784688 669018372 871139982 919842873 425864693 503603500 998994978 999022110 734521184 937001924 134301836 990366698 98115167 773731668 412453662 828043784 191397640 702584180 139764493 703734467 922456119 999944268 929700647 931506635 147795303 378236238 904604558 993895168 688314168 913509443 526119292 852851988 229331742 544638148 81537716 107984232 670035889 864957471 142029718 629406305 535826806 851781256 491325499 687233571 530506201 980591266 71905784 982842924 808819460 818715128 691561383 778894967 939056706 956321458 890712318 919980247 658725532 784415936 553256893 877244030 670718897 969573164 33061987 757507526 887748955 977363254 75234212 263601647 821702744 981834058 256617607 581566120 211095364 348585712 212852528 596573553 454239412 466546366 593028585 875943051 545432802 910145802 257149888 968607850 334709533 796293140 805457730 988025586 363412531 978578820 470194764 770224208 626767852 947814620 188368540 785139282 454928240 807040965 359010278 614854669 882924619 905187978 270352562 441139963 870869713 883556483 347954277 935488245 656257367 846972971 705786828 944210586 354023555 582539382 421280882 918462522 831318429 984019852 309315951 558886635 68500613 863743371 997630738 998585865 533264431 541104799 319656669 474145411 418046336 421757753 715708699 843156042 167419653 380860535 258515563 685991208 158242355 629410595 337705955 391398833 957751637 972113877 151243001 572958117 633262959 843671948 294029009 424452628 902708623 943440406 635353551 830088830 136176906 565845203 72979903 753509946 552056453 888921082 87859907 578534650 482068808 483745340 360707820 878592875 212021120 341574307 723228659 849751692 94773226 275496151 694396702 901122630 994106265 999959228 709086927 819635545 930163248 935098914 709317768 902990396 591472261 905823795 862553680 939278164 922115208 947690574 764253455 966444803 235847319 331986819 794730071 983706611 872828333 947956707 572899329 747555809 440578938 499215828 88298906 103905796 56244982 809233150 468789115 851343572 150874099 493027614 731615300 798627402 9447722 461072514 522107030 589630688 545895112 600167640 432625164 960861365 637628922 639706615 472712256 946483134 446239415 604998720 186819570 637565477 829938291 983158465 450305144 707479635 196670573 310338370 514258431 860282033 820722268 944710942 995240366 995772492 599058732 989294899 49268901 577153695 452452175 641343459 299239430 704460041 748370653 944158796 884959383 982021445 187542953 999004939 860821901 988698491 837839636 926718297 161663373 938067287 180153236 285608416 324416783 695742381 309528677 737138307 209870138 812093368 508630039 928235100 268420716 789200661 37082024 788487932 564051153 881083990 106168238 472351653 869463631 973569927 772675633 804015096 765320937 858428009 654867605 724015017 915474945 954974062 487966821 765427556 515537516 985646988 750842911 923289035 307972262 809699601 906523570 938130170 560938998 822999071 513164047 527702782 331480312 780581398 462242778 640619317 700157612 782193926 553567806 878914235 940096529 981114677 842417937 854614935 208205212 698467443 42080351 528211786 40615162 854301547 625115062 866739235 852128677 942408098 757345074 892416985 882401368 998313884 962467600 972992155 438038270 802886480 861459453 930441058 143782810 725762352 254592143 612058289 798480701 811289416 282603116 806634975 390865508 869387781 952672579 969865973 584879289 654203867 206889776 317969347 389910755 498544454 655169967 769313884 381799348 485755870 236438314 811100993 430468925 469899812 58796595 173774140 685276722 973289481 793263735 814155605 483207518 660675444 148772601 479071326 401537838 890537050 388596556 838006407 883392872 918282150 996777476 996930091 28237050 625492425 852992689 967942144 733339057 870661887 772561873 785268085 505266944 894329070 363779688 587745465 649086441 775462862 852374382 981732584 972786226 985586545 857445915 907769806 262828581 342982174 233673155 297829604 784112592 836048584 184945879 348944937 335633999 898123443 549402900 938914177 108020445 405351459 762915352 931848394 623012709 865497039 963566250 978597514 958069484 966886595 312525856 761731026 334732275 825109249 623301342 682961775 297130854 657322069 671316802 816565163 37294370 280359767 951753073 981574999 658190714 852837298 396041825 962902729 743823945 911696408 478151316 708378865 431710041 781666167 44574969 538844289 978009502 979188773 256861141 412846536 272205094 345661334 891158142 893282046 604735048 650161621 470499286 878996098 355952139 626611986 236277698 529261482 10498318 752324754 856402820 946921678 262719878 820972057 800393336 967513499 19828727 859433000 596966358 850854606 508289289 556886032 27413792 908648113 670997420 915359271 585024236 645471048 104757084 965574980 187012242 413586092 88576311 350175516 172796472 828564523 602138179 713545624 572483378 851748641 808551003 893607689 967391572 976431540 859711485 945320349 256766793 633367527 110697010 951179485 807596921 845032128 1281527 456285424 871352315 879251129 772007629 861842170 708333245 939092028 511171030 757743427 389700753 716622786 437430243 848763093 881792389 896599031 335431817 476533522 269040320 999158279 318263515 991506440 956698972 988398981 960793593 981084989 683445309 971282658 326497569 852089475 158497470 163571156 619702607 891006773 274456248 383419865 5946348 64750582 359740375 572998654 856397894 940377474 928719282 991392242 793329933 857776509 260256759 367093080 264605406 447272549 566509444 734164066 744109706 817295569 989974009 997860908 973164828 981027169 240279640 988606024 624177505 947862382 840433375 882301430 434968992 903867036 10654666 660346300 788579715 858715928 480106919 927049278 156814257 487808651 270057618 734900127 733876596 751971188 319479365 648064487 923226651 950701491 280879317 515249811 372562523 486992219 519690504 967679529 646683983 756635185 143703298 612814076 512358334 854768240 861355536 995550482 563667336 715070218 154182184 864408327 788101735 926085407 495537348 814661851 125533553 332745303 903345741 918328179 183041703 775571903 597433900 711869495 799857332 875083035 600848522 646691710 217011551 950849914 683986536 864085264 777329240 970057181 732493144 893617990 447252299 979878307 466687521 905152690 604402084 657933015 562567611 776218329 95810861 601938790 326990960 843929671 102217310 259680318 110288750 551991737 299061697 989154274 715885802 758021397 59567376 741251529 828351724 903568954 371549556 975453036 748717886 933793362 314730738 831813565 882308994 909478590 683921022 745746614 79675558 765956658 654545894 774075835 893790861 961077968 741566271 775799577 648257843 867327275 900312286 974810237 232536230 639843537 330761487 988690825 923910762 977604633 380431792 715348462 532995386 543913793 822930925 953868458 429071681 839264891 120507606 935766668 812322868 872908740 704697322 824180402 38900986 654725097 749212224 810942971 278710252 579221842 231040260 274815567 983064180 998371818 275431795 452617792 776991140 915098578 483541029 531722028 322857682 657023780 617976394 805900055 690224987 752697201 222011892 732260560 614267344 916349853 238494918 314970699 376920940 906990994 799435538 983440861 843570812 874858284 195816312 776131218 599945114 745130115 536588593 825599341 744320805 766211143 240518146 549841333 480225597 803743471 514248040 673963192 718916360 967949958 65049446 81987755 530658685 828254891 826928251 932855149 491195270 844888470 636236106 751715384 796067352 825830726 597355611 714649368 345529656 616953522 849269912 886983163 610261412 699221797 191807087 667139646 434259681 688495544 936848881 966693316 691475946 954862122 8622895 541664808 413138649 915854517 637990225 850895119 600808519 800784601 476067262 576617965 540468678 661972147 534943526 685309866 113168701 712838768 732142701 955424670 615122625 629888210 516244773 786781282 156714598 188824575 44149565 668379121 725718076 849634713 11093451 448743456 84044918 286718207 767432223 863255875 602991316 873114496 154981641 966475734 577130147 709558336 713381891 763469284 629635659 806105398 54400688 126029019 392504850 695211685 305289953 461426135 211605039 828586561 586438130 843123513 929612631 974794718 870715856 955890894 927867384 959177922 789122712 974814980 766537266 858905924 663406594 770721955 688613847 957736683 386656248 856612921 6155722 323434553 863029240 912260683 952491692 993233728 747175557 813192186 733993335 997240167 147360095 559148596 810925603 872191899 844055964 898055763 787925643 882824273 888668598 999957279 518716409 607220775 750875514 904209772 776735837 994721292 178559407 752851083 821385380 917066547 916577221 946313608 480314505 823928636 155113670 919581989 834836115 979074265 151839411 471003043 177944311 404550497 881839074 963832328 306797356 471977350 7438162 565025238 358436392 986432294 139165367 979903788 445727924 817110213 32804097 549554766 386252274 776620302 183313549 232027864 919411743 927436020 244690213 397471187 754085829 867754979 121738584 708407261 633553706 994891421 511987116 703770761 978787450 991975395 486061841 915794992 118447453 279242743 227617775 443194874 442705123 618391264 459960672 787334061 623315229 849545043 243584813 587754172 313505080 361825171 433687004 706151052 656642988 991384403 37155735 221101921 498249819 775881482 450180082 533219737 233304468 486401433 762889564 796783455 537480333 854413291 924924206 952524935 576264956 651615836 552771530 882242362 285598619 352052017 872252824 982408379 544754330 911308288 995521235 999518091 864885569 872454681 748818478 820073130 486827033 869575857 131737903 791847830 796028743 856090187 829479650 934924726 132184973 780269650 188185291 895186183 338377635 960132709 299824312 718315594 45338967 438452734 602560511 694705004 870925221 931117638 732413117 840944864 735704276 972342580 294995370 678737940 932594049 958982908 757453592 845852458 801595 330529383 140268993 926580514 33308618 160624977 898001514 998136807 708611666 806134255 257849666 380580715 141070724 143662712 450849466 590784402 790660621 795102215 246333105 439558423 522750773 650257172 904968064 980500506 270320492 834600773 361043983 593115997 222306497 352970659 775785529 917886275 42586876 694182862 805447721 985808436 872486104 955382967 723653600 995986725 987429520 993268670 615523585 775110042 117777887 795199267 437713642 503007043 106860310 237665220 911518010 941877543 661592488 808866398 772886299 987340855 402784058 723740572 24044117 649513709 82149221 452891215 200293153 724105738 344217211 608423588 74939221 432123161 797490764 851066085 378732204 571644947 213778782 421123365 761313512 780738215 344844083 809084091 793791476 911208010 143544691 451329493 742841943 802006445 505891071 698448296 282814406 475996513 435445353 764236970 168023624 169852496 996077070 997758176 986017364 993833011 680597709 996953901 871990882 967643587 633977011 710501737 158783119 668735804 981615142 998808145 162827366 210519850 978197095 981132014 196489083 646735007 356562486 821589381 238510844 843995510 665696901 745993875 179839410 295744983 774898553 829115454 329013446 906015654 75982570 663685048 659659153 681196096 558757609 742309747 925927665 950514984 644671101 858125107 527392853 985335986 307979627 961042147 28747839 761679027 379965512 496199485 297627858 593975021 787046025 898799065 482311927 974206996 620667163 680856445 986171963 998081121 468836741 915789178 638827575 955610285 69325531 164097990 722705281 912378238 726580041 999178832 303524960 377938008 436004361 620819032 834271467 903691963 177887098 319598033 636426765 751198304 587781558 971682551 105470806 248031374 697382474 931081779 320793456 862137529 828602394 912265474 900644806 976151448 869741793 872106753 472546732 531813868 48124041 607540387 813160156 912813721 875986717 889485720 109789687 772801951 918106881 972890852 758029733 878056970 18633823 915443161 550828186 745002944 761351313 803561186 193746382 805635572 321064091 946595525 458342867 623203284 120783465 370867392 50442868 634668268 580506567 795121866 474808103 633158127 469606440 888120457 478228488 771043232 409481124 578388248 545768820 586194132 248844962 379634102 631874129 891568860 656192537 725263146 493588355 979576438 30864631 845718954 849035708 940399005 415291041 854061415 11064752 679438795 255585706 698897792 745086433 801790193 485627379 876199344 487459083 757556211 8157962 400715629 982722232 983849490 293308678 864695417 926894338 979174290 278864879 505974242 482689860 783636970 698035666 727314075 860252143 982341505 696225536 935069221 439447795 474655151 85538023 134935520 740687191 846718610 362565920 965152170 214120635 573934583 979967199 999597449 179901112 440267439 663744156 938531635 902441019 956437756 818368548 848863939 72155479 564931277 837686591 906599218 354475473 737167226 745292515 975083811 373105712 632988758 239100835 575647242 517246824 758480122 160051254 725367325 257331312 420395278 580430456 655766404 562156887 940739930 607230312 677383514 507308204 617637157 386505504 909400462 437285800 898205477 789761646 822263961 992994119 996839011 175468116 286190997 460444614 821757772 217172237 952763227 693403351 935501111 616708317 632828304 199994110 430470344 763936477 975247746 161700153 559918796 498079435 686367099 828220158 961633906 13612233 51633215 938658625 986955400 309434006 863711299 553647159 822949125 120139482 339485554 528809195 670414122 545603453 546308167 505186857 760807794 72437374 315358251 570980419 811066623 612574550 927031664 735963273 864112284 962341048 997598932 667869588 777773717 266314672 691031924 479454998 581425314 889015372 913551298 112101102 979397355 84360610 317112340 5186877 165842265 846991536 978213682 30724659 220517041 378690312 743898012 540241881 774687012 731419143 985257966 855752313 917530746 13558830 986698031 293054552 823524610 337716228 827402690 507722459 605856534 230995580 342730410 37467821 100222741 713277189 746006643 95889847 147639153 651718898 821093117 247656149 420518394 274387993 660434019 706538396 810059423 369631063 452899345 786490745 883451373 66129870 135718307 66527524 454905468 804102390 963876791 965735482 999098918 154017831 372951966 869078936 911457107 355153435 753464611 659894327 843186949 766553644 984892473 143236939 152862956 298701396 424992318 991855123 993843811 486902902 935967539 816136242 960516524 843718760 942624627 344595193 662239547 676491641 879024841 252757126 624482853 460051531 958631352 741473399 843235232 145432847 828240323 386373172 692443406 410881323 952778644 161583861 769925496 804614478 838478932 539138244 758409604 760129307 973941503 599023272 764378703 535783343 653541692 299383614 389774019 272132881 938618171 630674434 953347997 29991678 422270878 666682655 812897930 856991354 984845210 210598868 276563694 5300806 151284821 934079625 966123798 993595615 999950306 821378900 943923647 705438272 879388057 918048430 994537650 48541641 133548568 644984252 899863483 29736744 90683370 162953323 730565807 921807248 985374680 676040726 810170054 418350219 628131683 523235541 942810379 287323652 449419174 634235096 652320661 950774337 975969290 956146941 997533907 553845603 718840885 798769416 942951246 547490874 969436267 800065018 824284721 184617147 763519206 279254662 483861873 511025458 560471308 688001087 906962085 767395648 918890921 296506738 494217877 222316970 972958741 770078913 901754143 703771162 852842510 637650728 979091773 968410310 969356304 22772277 775222624 741188901 940268777 145260569 418211115 58330783 930336124 953947500 992454233 559479159 967538153 663346672 714140083 203340953 218168295 18905192 818622127 541184186 798725055 813382711 930341051 219903789 856695270 631499871 896498913 402140523 867133320 695124800 985521185 279550368 456659804 251264379 982236276 950488268 961625326 948087598 949301049 701168965 755267917 354852537 550758939 303305592 783415903 768430179 974147976 322064446 348879972 549948161 845457116 839890337 988627562 495535487 600847613 320710182 616883866 151245390 151991787 78687773 344492559 998299113 999701745 240190452 614937376 786807781 843947056 85521101 625748747 750698037 764269339 475751336 759390525 318711140 500126718 544343197 756036045 808207021 948243945 195139182 382454875 260450345 704256419 525458889 913713150 20783257 581194445 277008412 694755943 699870469 718625886 99409343 914795120 274070615 710390190 556275310 908226981 88524821 532160389 410761597 955161051 527411288 824532932 587547249 898544082 543519934 655242641 651784849 756126579 326436475 627156843 807784903 842232722 961339243 971403567 788601020 841861816 64798164 265758147 479692569 887846680 525304480 773996474 774686158 782676129 36067929 609101411 102663042 939446388 103008108 298593192 195624993 424729631 545819712 944124764 147273297 488494503 829080002 866151022 340511363 602704931 742282838 836347844 807234403 931338428 421829990 984431731 34547630 72562114 103940432 330811780 723183324 730591618 884387174 941469939 985651480 986605683 518803925 917893378 137897010 287522297 329575117 746558318 516702796 963648854 583712398 893939969 721098893 800620401 232915934 737429386 345355269 468978519 632597282 761019638 879795496 938937548 449482277 796794584 426082676 587127599 631304065 683949114 600618817 704888946 722353112 918975362 493438945 932573056 972249400 979113036 896469444 936172245 154885833 793127234 409479766 735000244 112922557 264110797 21025016 295034230 115625664 350247830 766113526 806583891 627340914 637688858 343661793 678085562 984066348 994060649 58423871 103296141 126173981 898089954 941666578 958560669 937283443 948777097 474672262 885656274 442097402 896763586 327776510 605731150 367840946 550800441 388575508 924025440 787300322 987897123 374043576 807239482 807394275 870922612 937468657 993945571 651617828 750810866 292450110 963756006 648952895 656083595 534305820 945667711 776103432 995033857 497625142 786831999 44241091 171898586 981524308 982630983 535999832 912523389 98387907 999279233 23011107 174781674 736962754 925150841 290953009 964325746 306862559 883591558 306148667 491809764 67177076 539176265 788711758 960220622 639594298 716494732 705953727 846295592 611831852 809882275 958219279 994407444 79800459 757334373 510758904 578275813 156903709 509850397 897055815 961229776 425118436 631007519 250695739 902361092 233893855 776481375 452741383 811732094 955576983 997757464 954681503 965145308 438789918 947810555 316363894 803464733 724666809 996307896 496787573 743961119 891200554 979463896 604397993 674823777 161350215 604819989 389794487 614825762 194168192 491280040 883787829 914580283 849594958 963066138 870100376 999186503 674318552 843614474 978761978 980632037 420238129 698985463 192324898 198404554 503220289 678859666 694838985 742442033 259392301 303981087 52716284 70637691 457935379 666607871 242663262 358308133 655339336 670168134 610162366 652821591 352687457 744743691 178848753 962186444 945529377 961375857 239941153 696364450 132779542 385613342 342926880 527006326 226717837 534729425 874932583 939671359 266130612 424496409 619870657 649715343 776112467 912771553 23742477 101433406 194016462 625011601 760893169 937040564 507196397 659821596 964560149 987960588 267116810 297443377 839045711 845449105 651373944 782606939 223728590 250508739 123548267 478033162 783458626 865964893 870438875 987084194 569849294 917543606 255344363 456289261 618816773 883635221 796461982 971002680 247914659 315901727 245600975 513482801 394392494 753902426 859563373 927779021 339817122 893188016 422737660 579626976 76309802 669270373 159620374 238832120 869798802 986352470 297039172 671318412 808677296 822053675 59197866 702272187 391810748 901577946 623878574 854114303 866142178 896368264 965530046 998926931 649695784 687023292 913797200 965075154 761434384 770472475 708256624 909696257 951523547 976170169 972297650 985435695 462756178 918929254 560931879 873491009 839575703 967378020 487298905 934413216 812860736 985054290 330237301 613697462 194198556 305220539 558908149 932561571 273671639 368643746 81623179 144992399 810813316 830030182 458351318 698243599 196428621 848028683 422880745 551061840 984903700 988406346 969113244 971827026 682251104 684540033 777948714 881301258 81149863 998349690 277207929 573286387 704812639 997823750 863352606 966253715 693298131 776254888 60688938 862637225 884535822 987758268 915087398 941435235 108413767 201976643 105235682 134608415 900539231 958297922 811163377 878280314 978604325 997193684 735828274 869745359 307481896 715712680 785687263 908402178 200158979 761993685 180998667 562624701 836732621 870553000 836680058 853551327 969510374 986331147 354154701 407610973 409634361 673604842 946830539 980217237 746425350 792966147 350177073 469946855 911615748 922273652 341599838 674954350 840124421 990185954 76298715 810261771 629899470 698864693 560385860 951941661 671857872 692089053 990952246 991328161 511203108 974057396 578641899 609781017 469363387 975156091 452442992 654477888 428492253 632968088 40927136 858333606 116668325 732079251 933990057 974634390 779749023 832230899 163464894 479500948 571875629 637851216 883452163 917844853 164160273 754700389 633074586 821163612 469250771 732574916 571685629 922014001 503635957 718231651 988187698 993743598 605282632 845947097 256250128 733178005 295860743 428749358 401587407 580179151 525005797 679617162 366304265 731273694 165388657 898941733 166990184 568051216 877831764 999273726 301821872 890561159 246236225 420315153 612920942 895723642 988969788 989698760 385947200 595505451 439015054 614136236 523046035 665345926 91436767 403444694 183179013 378202685 675973376 858119126 966107551 968083535 777469241 929293513 82081424 657538354 368644784 736811559 181651602 311309627 355348063 477809340 269048867 325098749 982436198 991781693 402633936 453967851 258935463 965808142 377347565 510929859 66188463 973373394 312014221 847987682 978382281 990066578 795252406 891341142 788255818 988204360 356686442 493675314 639266491 822198206 303461307 443180438 252168021 636343266 76752305 831283858 548657706 896835270 340875532 393173284 196234629 445264730 505970724 765643753 939249205 973052413 468655482 928433923 503319341 596840846 853722219 886552716 111809575 505613845 242397788 495209837 246131341 355904475 705014192 849585178 554070955 979628939 46654990 513508965 266908858 484755451 803058297 857522448 440596542 525103517 684159392 730165353 786272666 834508371 397354680 799953042 13954229 227732325 284258698 658599358 792631254 968926308 355245121 394795928 98589328 961496491 245976072 253073546 937039146 987641190 666812729 995282530 72209711 805423879 493151369 714378082 912355408 975502626 920413776 924866521 38320003 303586987 28794371 761159870 822892997 983398473 272941205 613906272 707099384 860712975 248396118 292131903 241407483 588388206 554951271 759223182 393349830 572611448 762565879 824922071 43796140 518127436 490602392 940752997 683196031 839853352 96131879 392918662 432402415 649998493 110536729 271611525 679163884 756378050 447373088 666760648 476920847 770169834 754810576 919504792 265480177 290114526 812833180 921035086 327082132 339003269 894433226 983502080 984653672 988874543 421545033 695750183 764616393 867532840 385136785 936241561 20510569 795150350 740369968 836553824 154183804 918844600 315220238 943950601 352329710 442303605 465654372 872150059 111573929 433242929 914064194 922035083 806893186 985360971 278387712 383486430 545301815 692925662 805197980 807101428 872161285 961866425 897714304 919417984 231155503 789335912 685175098 848761513 730038311 816333916 382803328 965662991 614997081 879452306 869275315 936151879 529173926 760625391 10346669 41189268 836796414 963089276 837349714 990817582 220687853 606936232 53449719 132254308 753879746 794762023 683412550 729306878 588832273 818486080 669583368 963359774 166231959 885102609 624447828 904661718 682539649 859908106 23794149 322586436 272633155 274127091 631306715 889666797 436769119 560716584 531834446 626719675 987587089 998385208 85771983 812683058 264744053 541554476 600296587 771933648 310839303 700157995 213502977 682321762 903156461 984325727 411752480 677488213 790016130 815221074 220473891 314366529 460366982 674536544 46686856 55650816 101381368 980916155 423985856 893746536 399286232 735113981 822146430 880093556 272840928 399649794 909948690 987507262 93242746 876060123 724234226 933267098 995900400 999242547 853635835 998341973 2848962 245876401 569365592 681852291 596209509 935151259 125349819 509327936 885194993 918899170 390997401 532509586 331031975 405603832 966744261 980262581 787823346 965415177 517617314 572650522 355751770 432444329 468159918 916143231 351500436 746741414 844002216 975418646 444275333 854457764 983566607 986417583 736057487 985667979 243861463 446576046 852136890 961282024 162473413 464553937 264509536 311281272 804974143 814510597 324433626 971245797 285708056 902243986 797957106 861149464 361335753 784146191 482027822 655042093 963927380 967973087 548751767 875333476 734514105 804894643 74744324 296428083 884376109 966496935 205973575 693259718 445477877 834374393 925789629 992848773 12328068 91983697 178788955 561111701 587024548 851520989 797078639 959818672 602953373 691179143 376697480 474674698 700686110 975349718 972471296 988295434 238017891 965011981 587148916 629821506 317070193 801047852 751573668 839447766 305132300 979148897 382331116 572048011 482810508 537500010 799214687 882394216 783126019 939740763 154862074 944834094 914752315 931599695 475098014 811179992 89258064 706121411 202218168 775202713 759461123 795385739 277413661 414830692 584855804 927284917 87330858 268829146 923931488 998417851 887472897 988833286 336581495 369017514 298852952 903442177 569548554 927386006 954701822 969132137 916332039 965367541 107932266 314356262 278025554 322615783 855396945 982764736 253590154 375103511 195755999 640020467 552811231 555195328 574997356 929886203 834497120 967412726 166079070 732266421 909560640 935635754 733368225 860811113 959273729 961369315 370576147 888334462 392821853 820338078 46335400 531527457 553668537 819832610 821521730 927719927 721241492 974164883 264685754 919686484 229817026 239691846 857209445 998531010 224081507 793023682 2880768 310437987 668715955 878310253 653077930 777255656 169125533 898228369 737664908 749856612 422227468 724087015 334050152 679669496 87511201 119249927 24207844 654106424 901818738 906408430 544717551 637031054 958845803 984917648 433783991 805577354 135833231 695503619 343037818 359675451 246590440 946809381 245794891 768546181 460476986 888938777 336147040 799435206 852410848 905655245 247825930 810556795 540468595 724774777 642440493 954922517 358644632 413475829 529344376 695799642 858247653 895366011 771375061 818987133 672420901 811162539 484162187 895542992 988225588 990974515 731059546 755825247 969513674 996885511 418486232 919333483 164259274 482363833 566996363 924002977 284125088 905806813 14633593 879846104 687817586 768710224 592542629 960751013 195112840 533726809 590902798 949868660 527848623 703203306 435331329 485782784 649518758 958714214 110322702 934218672 974926460 985633799 61452488 252418198 176406196 884456282 343210296 448779427 738079791 749562845 336072688 356434548 397017430 561339153 627004883 659054532 215267082 913308516 251604824 862175230 387295886 473546909 833994060 996243482 416481638 768312777 514769554 640559460 863987053 964360240 604683647 878722815 467684843 636060016 230443192 318453728 997580849 998256565 745898133 789784204 689719408 834247979 705575287 738631274 535032539 544423751 130846616 147694539 408748872 922292588 697270529 812423226 278734624 852381728 265544894 687228351 922582943 979150722 938457543 991171383 389490744 812354626 998470844 999653030 619456059 975450139 297345704 680513348 434361361 498171218 132877153 607997624 925051811 941216751 402073485 681400104 675491000 742202353 333327658 673294364 809778635 976347045 190997360 901549245 135075533 399261595 508033194 510313159 913682857 930970714 483482958 772128709 56868268 836395568 854377415 861977434 208990759 421843571 769223986 873274698 54430753 128205410 67266172 497202458 294471187 559691121 873281705 933955523 307969176 843392630 345199991 919679574 42338778 969113608 202910168 752899544 507643610 662321346 964501006 980059662 711198904 805329592 909755893 975835351 917962020 974133320 491987816 727148731 462822683 598888492 810253800 933593472 453985568 568176378 802185595 831245337 126202141 563011464 740736692 886430883 244110707 674899541 511721978 607532416 556094480 890796845 496588051 626975963 10003252 972920466 931860095 996172738 203012159 764784368 668479978 841721672 359225652 907345635 138277968 610232637 117951337 185981831 510004926 579824445 433037389 464250324 188905103 379605602 680220611 848974286 436029803 640735890 679353139 868809076 292812036 667878190 630789251 765425464 620066318 648512195 116172231 565619043 863856654 870524644 714465824 791810026 116030170 453534590 883671115 909412155 480292383 590714641 348149256 758089371 454534092 827284371 241846965 933796896 999114777 999648789 762548613 806146945 92086082 485998008 757877487 763178007 808380861 852091605 426095420 891528059 178649891 688440088 987702859 999545752 981611478 987753140 573277495 602307366 593253701 626673185 162207177 365867506 636696546 777019651 178596292 228359663 293083575 841897952 422809901 561833852 529527264 668310501 42968974 587727551 704456251 795137886 747798698 881804099 994308476 999623549 30124568 258623523 21920629 920627918 686175463 775027428 93546479 881198393 8951758 105393781 37185549 779622494 829270168 855890446 687656055 814802428 7396723 339391582 935272021 993349112 978761192 979658543 377828221 972172398 847763503 942137729 537618115 729554268 528864809 728419304 766598988 944720403 134306681 311179412 889734748 913144714 193776418 240392866 514686508 556482352 536215667 768209340 360707470 939545828 993811474 997569000 199208404 268214103 123086855 653099383 517138326 718831458 538396726 730772833 843817061 928982201 719548630 919158118 438850903 738830146 235728263 730104051 615423254 670200136 271885128 686844876 468323555 607505631 47841707 123932958 821849542 978867822 820333625 979478763 792769574 980965998 372386538 939599307 625401144 752931523 286188704 743714850 834793304 953099709 828319063 924827465 157611282 627680032 300334727 593659084 205623486 249412952 121327433 379199476 907523878 938056152 235428997 872896343 415478991 523667362 30450833 771401634 92005479 591559842 316253924 573120556 651429546 887627405 946074077 966427306 745957148 786211787 777009172 885826500 452324833 967752405 308162393 432008123 300380339 614096558 204754847 497820152 850722859 944235937 712979135 820838511 885585932 933770577 209484119 511883280 450899694 556425300 26605521 47105340 630641633 657749951 949490887 967240527 414269728 976696652 781187590 852727097 294838523 505068523 17375292 672538965 89886448 963559798 990545280 994812910 346999627 485765856 847271806 889269251 300674941 711002761 892235408 896260009 199182462 867510698 42517295 337421972 815618761 844693486 884658789 951872174 590080699 706076876 513613082 518431197 185060598 761986019 874064327 996793689 345764025 844263862 553954220 785666755 466568716 769987414 226178495 615899777 140617469 918859611 301743235 609555390 449161276 592136554 734128059 987152724 858760406 921066956 740589686 826040140 444563351 716980339 56174697 134127922 989414722 994317593 581424380 949701506 449926954 510874478 605949118 872523884 265220504 677444738 523361075 562981878 710464467 817553162 330680067 670950535 404123908 792787776 652762261 878548294 509073544 824659528 766569690 959012694 6033925 543304946 185054275 328845861 520244868 957530301 745876540 848645849 614285659 647961708 85219684 227663156 918499812 989813691 874561202 982638324 576341812 597676456 641768131 900298866 847102029 969393740 681863119 845784118 490189895 815916370 380513648 494407105 43961010 83108631 656493971 948279396 507638421 669047283 622084403 838187771 777486219 939676933 371101918 739350112 113140096 608638522 66713741 324254855 121064433 413791779 478145500 542986879 497483259 717073771 853024101 955482859 274636901 719117803 679229869 851473664 295761274 306016481 935392434 970276934 566845773 752166615 707126107 735540015 405983305 774858492 199189387 427521227 333901943 953062963 924908776 996882598 206345647 501949891 134917111 456438339 932541261 938763639 802973384 974887575 495962858 631504286 335647144 930737720 411041303 834415792 268336225 322288661 392820079 534373051 707220951 752075260 518994541 579443855 784134309 935455054 589728440 916556723 739118530 975625124 644087932 963794614 753841947 833078393 105140379 809636850 503818224 964789447 426816676 719032064 153576187 923621614 156259282 915465137 459037753 944110401 124052397 362993547 260774537 883857862 945790477 958667364 915307461 930789678 353848214 795677981 87531520 596663181 365701470 380265592 319568374 965172276 238073747 668580406 496279475 530735088 925999657 999284267 401859858 988741987 368474413 795253591 29490442 338272521 705362312 991126660 727169883 769798244 191480599 771038251 78535430 730012647 352891020 991709168 454901266 969336844 728536566 996807046 432714114 435909864 488954672 952355476 59798185 594331955 45812875 798706754 22728748 245964554 599790937 887940581 840076117 856725874 997753848 998757187 608574139 848018058 313256530 964834404 341964231 377828576 976903428 990086381 969448273 978789367 266632143 794835857 821399510 871415644 735886524 796893497 786645185 857102845 359187539 417811228 322564612 609552393 24991366 47100262 482247789 667217682 353729077 627563432 708688187 807341049 622939150 706476512 657684663 785094785 70599291 199911573 652933686 962475916 12191029 477020301 892303648 901288906 489023753 664193947 682401250 982566340 509101394 684863157 651755958 938939661 865313500 952100756 582490004 679531829 237637486 350501721 4570081 442243653 898622521 906609807 326439674 725991175 76069185 995954817 287304616 909734343 828604335 935299836 611554412 743176764 91338489 402028653 977620460 992633478 533834707 577848517 493774250 747237428 225661683 271115548 615823052 717628005 837325812 930742921 194079713 377610291 993911568 997251346 495844367 576058550 222076451 945331486 32236755 398859508 530613869 857764479 848537184 997925568 155083096 454056607 124430388 531097218 811158145 931599992 374799359 826210591 532349644 657292162 372182830 830853556 242392984 504178932 884666550 956641263 483699745 740298628 532299322 897370610 90672549 175855104 102367466 346183149 158995951 343140889 694489619 821009816 530479689 893907855 78691609 265946080 130440059 457976061 880314988 963164337 829406843 853067785 709859050 818000032 82231981 130943798 333947494 523072532 408450058 751201420 286118825 958683739 71133653 76726502 218328256 285879666 142093757 826165590 805327323 869689991 728343149 853088647 494049017 615948808 443228972 514099977 125471722 806108975 635286553 666337704 537028911 931228580 155518842 405190092 483289538 953577625 954220085 980361840 143871301 393842392 270157769 813238845 247834660 486535865 314686722 818327547 184955839 208415248 75210839 714547502 283823085 922593641 541075700 837457034 886636701 957408512 674768406 863926251 155278493 269897551 458928033 921344976 173238646 414611842 155834803 372413723 34308675 948791277 755150103 791947257 430032497 574501449 686866593 812864563 217354423 994078556 600984353 754717455 923041472 924802167 615238003 981079336 405029815 653746914 362738654 573022243 533468564 760086209 199943488 309372548 555848737 854280854 741736069 863359914 420129822 522274359 156502741 764731405 342675008 352959109 963121535 980752954 797423992 877685237 995755684 999021017 656116589 741988254 143708338 202648411 694712929 886311586 836568832 977597556 114492839 868625586 200054605 567159941 827920536 938213336 251199632 789495556 27708780 213337406 95860783 934777694 854917257 900534309 779919097 996260111 164883924 638099097 994288063 998070022 811733536 973958432 653372011 656634155 579388664 840536415 585939214 942742673 830933685 957019425 359217553 576867616 849789671 974019089 920683196 931568276 29709983 612851277 115110962 642150595 744858280 966667510 681034094 996526353 493121590 682969524 700031032 908385995 485090620 972811543 705217835 904496100 178585230 451363069 724842944 788710014 860654507 991174190 105667427 292738091 27886284 269410038 770345609 872931243 799059944 799484348 9878828 486381214 762666616 920901796 477674904 691119558 482803470 663764559 998490068 998945323 165694695 832151335 540732018 856101110 667771056 857079023 858513929 908671905 990021636 999880071 184905839 281045349 580484308 746369114 361807312 752638940 195188241 493309093 221929931 936371875 9927318 892354526 797741496 839293960 180606975 746109836 152052848 488340895 244155213 879472199 904054221 961943806 460983093 484700576 215273631 486913901 176568064 181793102 351790628 958471314 613174151 847429491 830382505 908835322 668504925 711563262 552257146 624789278 817386095 935067271 948000614 994099868 219790650 652023158 104079474 934722305 907508287 922555576 110000857 797195825 942303227 953301813 404169535 730760369 695116158 876553065 621102517 896173804 572015422 827388643 568195880 731198514 534780101 763655720 99276353 198619336 801330087 976346468 677853228 893120009 648850085 674329083 789210730 837797550 284291705 377779517 253547712 916290225 549461918 656176335 692269147 839259393 911793627 913497906 757521257 757888134 980573375 995066299 434782832 791189611 627118056 636881368 178201104 949974191 409072476 909580905 758284668 771379971 259480566 395013290 17051464 758761518 393147936 975167716 88954927 234582472 754322603 913166012 202092251 410125244 954464258 974851203 330590439 924669786 279865550 787110675 698767185 940134553 410415488 570652238 823692399 825748315 37677134 974698347 765289332 936267347 168270897 387719268 755122093 775597727 749262449 778638699 4503993 906750161 598815465 874748798 388527504 578339749 343913424 675241710 33453411 631662486 274975350 618379363 625153028 676849564 189397157 610783418 396487747 835827586 670961464 673121138 215032539 686645372 673906444 900292070 398154139 437712782 703778114 956772170 361433544 905927803 289259065 311922542 214237444 378299982 195794042 327063568 929658716 967765852 873646923 952125395 346850848 768623849 620489247 722479511 200055128 421049310 786925152 899346861 904906002 912740651 996237484 999634151 215973049 231535081 474172584 792994884 794287398 943729762 159765363 911519376 149042835 364651717 267314336 656954663 788058402 967581496 598847578 618106940 864949181 993772811 627240499 813504463 233066939 602095562 417839567 428312911 447983673 932321001 36762383 766769176 558036131 705264900 255690362 632702406 360962696 855429455 396118023 469091288 917529133 958983074 488323409 489542141 494940034 502686100 256475116 778121444 34269537 894592293 967384516 985533026 819167811 852562245 520071484 853849326 879757530 922325616 379816541 595620350 437754948 791335880 294593302 467241799 188410490 655727227 418019889 866473725 638641586 709339288 205324547 279445220 844626729 858541270 466202431 650901659 378718269 948575685 622852550 877027154 686019573 899250235 672185688 980319571 490815844 879374079 79987798 513943782 933951478 939907881 290102378 682236335 249441006 586964857 876654788 882466360 58345486 531532928 885018674 968032992 739707329 971740378 436841717 535331685 188774542 690594979 779220506 889902406 920153872 929789306 414606556 817643636 457049226 757161840 843370605 991159155 707822218 853884620 63983765 882780505 167997452 195803198 953671679 979772802 504819315 555557935 593823974 910807365 240612606 563444218 338689221 705411085 691264894 975895764 304966608 798821479 524285876 957070853 807315539 834458270 452118993 456496249 160555474 385435193 344758279 636550000 766090701 950565021 63592061 500884365 102331861 657469117 754446437 834670255 709496991 752684097 864101684 869857579 616866602 905712036 355727372 673278715 62288685 815934945 132432187 820871167 654303410 963814229 674794227 889861538 304905274 368656115 936887259 981533842 918426136 956286578 520448584 815718964 709714975 828487861 653988549 853654844 909990617 976938358 260854493 358187620 556328837 569445864 515998045 632828226 62106323 852418395 938189783 946359497 940547019 970740439 474830047 841117767 31021339 153708216 424126559 933092333 768115919 804147373 677611586 888875628 817205782 996312735 247079650 427404370 571720233 975441296 391930538 460686410 445619932 816044130 392276125 840481589 570081575 751359687 900560910 962542709 882615344 938527136 409480003 494254917 56412608 749039039 130503311 567983557 860252110 982638327 318329605 649452910 459190435 807164483 214937829 657135856 775470144 941084550 355763263 404003411 211603518 606111730 110124998 450546368 999002074 999136735 154753541 523836690 104459915 512221004 574045966 967247610 135539295 638268049 622583877 796353582 994157633 997533904 978733968 984870259 769311201 806146879 705279041 905409900 107265002 128449119 553364752 673508156 78488641 178935359 324004591 485731056 941495480 975232757 788813522 951729905 661012295 775822210 356316024 499173278 834076805 892026108 752928503 789320953 407889646 647042142 425767453 656179963 596886542 743147435 62276426 717003003 371975515 923748184 167905198 611819389 902696482 996035745 485303274 631910359 700160832 836832324 360527320 754726062 378937176 851506536 886878135 895147333 156634573 442208688 839920530 996038198 982109562 982650320 209605646 228876136 600848282 717214815 951092487 968988469 310698098 863011268 502991954 621202261 375403074 445175519 996817615 998922014 227798181 880451847 311145163 344861259 425169681 745251535 691288110 924426940 984083108 990082620 663552017 971852367 699496728 958457679 43106689 109772807 675979320 894633581 522935582 546692560 784907402 933896429 35299144 46392172 692013071 855101735 887378667 949522093 448555517 635571458 133293973 384545980 412657288 652255044 933398067 950840129 12263050 324499023 302823283 308921554 498785419 797864989 926397800 940489220 714800202 996360890 203297032 567465448 291839647 796104127 981819311 995732568 607215219 878208694 808698697 915100213 508459305 934880077 108856203 645780809 76755936 968197213 709825722 931046810 602968783 953981513 108315489 284359494 649506427 911894019 810354417 848072522 918958581 970836963 354702002 678380477 426620828 628733277 390045041 477064799 351152594 780562586 457843508 624406485 698662179 731560362 752021468 974351465 888695191 971922765 58763965 542561037 495124058 692134906 630357096 780578578 308732268 917188819 546007571 584090863 144318844 785844912 757199478 981895564 963107059 969607276 197079539 940863011 138010921 680912663 276802328 631264181 612799115 874129801 477364322 701578906 898514459 952203348 913061183 998985117 100432243 414274627 515236766 520077581 29925331 116642065 927525112 973111012 709704016 889270958 155881451 182675164 958897777 979579018 152353143 949467871 73004438 168326223 757993684 966130364 19960865 83695881 949281963 959655562 167820225 571611564 756131708 949764059 837387363 975246166 312506709 645104446 188613697 359431337 377488202 570886056 58520847 866761861 890058346 950546732 970899197 991225974 294188149 996956289 85543851 217881007 705522955 730635311 152514561 305311411 649729467 682978127 228673003 391779592 117961395 809177697 577744879 691447046 8807612 717778398 393024060 927627054 531030526 851342109 806038071 926714593 591024722 830432439 293274836 785603974 476086523 875632886 228792750 866629244 953172566 954933238 506539471 679830130 738070097 782686680 67890600 683939006 209075752 876931537 304739999 773719577 587938467 804983447 519768980 989713350 450174694 720144357 698765567 798312487 116911574 861462125 889587205 980420600 507952036 882154775 987207744 998665892 653400796 893376680 225527617 755660450 224435620 570853575 571649742 675537414 163334196 637007707 317233691 985189268 927163450 945463637 896131269 941391148 677498186 694267145 532962365 564651746 241645575 397934047 959910926 973177297 338765351 899868709 32335040 288098571 514788570 562551193 175904373 447102848 486168358 560375746 193773845 670763531 559256054 699594414 510989651 701426539 808779923 902687966 956826617 969310026 14219065 288883942 685612738 866362178 999706110 999922649 576339070 788198814 178380149 399433586 936659175 943902840 626098664 829344240 919779609 983573728 400615967 755485283 299800218 914163368 805871604 911043698 591027665 832516440 985422538 988910340 358910575 666329880 678103313 730310053 971564883 996425410 144448592 789152531 756839023 919080629 257727779 486056868 980548921 985214682 745087593 828713383 259170745 837840134 975194600 979525900 157220043 867232865 313469497 671798924 381796316 847038797 120815223 229588775 797450327 889696577 250794481 365976895 456231155 648144223 57823638 135080072 382673388 514622096 452970631 857269658 909754497 967696597 643848290 649127483 700257348 886505108 330773278 527346859 15397964 66689587 319086424 379201019 268712846 697256650 975227952 997996665 475821673 552785033 797592345 844713088 143750965 422593906 823773193 844965673 279284179 450903753 553121864 622299534 719853578 981140300 640393811 924666238 276786769 706100496 789284671 822504720 699380182 831144783 743934547 799285689 496479963 785878804 753206364 766557916 821370154 942783328 656859258 691888453 991705866 992065656 371395432 958463846 45390740 865408096 705804302 803301512 351158511 478407910 744588742 820952513 742203024 748728392 127253246 556302809 235397861 596870984 990695202 997216309 139651056 497519283 344484189 805911607 97945702 562184702 602839867 671955375 634890571 773032860 905024650 917241164 123402546 617397797 783405079 814981615 625300770 663481468 382444642 636575024 166834016 680126139 767569977 894314006 496528039 700044724 797270493 880439225 514105978 580574608 89339596 739135510 879018170 980000028 491941731 570201602 589868542 817116301 465943323 594705567 71927466 105434473 467620619 587053566 726012647 816315301 197473024 417247127 604756149 888751830 221643145 441134525 116212409 151211043 721534898 759131438 897543458 924475541 86957626 136390906 791844610 848410841 716652166 993406201 682487110 694807060 925006572 987259821 651239250 778294572 829454699 855233254 657376236 951133734 269073427 547521279 647814398 671701184 588815038 930024998 808813666 976743137 565799421 818913481 388496515 451055975 410094474 868721498 764017168 860549355 794001741 928171535 702772037 831000412 914991580 949450989 714129516 912471066 740932305 796169896 29089256 567002536 572858175 660572324 841965722 938375591 372476458 637130288 65754467 453532582 639734338 747259201 700463796 748396187 501808645 641285507 121432826 373006962 697925855 819730094 890230394 928481230 109333959 916645327 593583528 625047300 605243024 951753362 915603059 962482162 301701395 965409844 375239501 513276174 762931406 958379012 944646226 979981353 189967088 633692444 764802222 991855135 38415114 422913905 730835358 960177483 237371717 273914608 431710483 593309319 566549114 972528304 171269636 741660171 884521685 895480824 310307340 365579186 412762265 967489264 307088318 902882861 124913262 971250024 853960938 954733043 125444406 257695518 220784835 673565324 702914546 829879598 699055002 826326539 282905647 456118197 737774759 911575962 606979523 823398012 5869011 720422682 91653526 108222554 952673199 966029874 888525344 944038387 174173876 719256016 691596234 863856011 665542781 975716896 620475501 963642777 590639334 703091070 145886541 869344276 894561389 998619114 413271067 877814313 578756413 806947452 585372117 970231407 676293170 946593319 93162905 471304230 790151973 838640766 320476621 700159441 789565528 983332734 572059810 867017949 109009769 948102767 399549843 707536098 758991225 773107822 394826393 511477971 442278901 892522465 904286866 998371743 606509106 995578032 386016821 796171476 651052908 856466392 915908578 975818305 881600576 921250175 437096067 479993636 91312368 981474505 164597953 632682890 998006639 998041646 995368889 997563091 678929086 885650728 86554419 107809302 784457124 880757882 531751537 860402565 371440726 670056665 880010918 908204614 372582864 587000506 950178558 967558674 423772465 686678538 728192933 743193589 326622640 461724174 511730516 606991887 165870066 541674059 257555430 781018566 253073752 571592386 571168456 847569867 825928682 883357255 544934152 980741322 946789161 956091591 456425937 975013242 304438149 494635469 101246523 167421424 260184703 323617512 548777555 707388218 482880947 897317473 629047306 718674152 206903124 797122948 708289812 834169041 215085646 895732752 703531349 800980785 486936218 826231085 930780387 957406287 640119397 920550783 106044948 353995771 105669634 531817895 839538237 929901572 474101057 816312855 312162490 512629799 665246690 719553993 896982536 991769848 261426048 578926023 833387227 835649449 6694347 39345548 431400608 483389256 113366801 807575898 576646667 719712149 353813796 838569857 371279661 948051663 959170643 991305174 592057329 722088681 702351591 884204631 693790967 759991247 983185964 996498224 993000434 995664389 766506968 862052614 635770117 755197440 137999169 340910998 994878457 998719275 162314560 604932041 448306129 597156740 201049267 646819029 812945670 934711874 605811329 984676370 815397080 990036183 330400423 599922371 965947553 976315900 565763035 906876307 621914133 943997906 245938373 988850796 280569363 330273082 727821108 849492648 227121892 631021703 133307168 240686034 934502330 941072087 181319162 647369153 664290995 947667218 790422429 959804947 400173045 720401338 232891017 532255582 126273915 662558951 200781478 672581050 282254642 763071900 704166982 940067542 1469792 94948557 288758998 784751893 847208127 948870095 266015411 927325797 781352982 802241988 529869847 540375561 298424171 480948428 531235238 937290451 211751234 833780725 772589351 936359513 91708101 955861517 811026743 880465462 909784202 994675077 188797995 341142843 540285863 544587423 321262591 360398637 473225714 881256619 15030168 633661223 265406110 528231955 529515990 688880251 285128856 833969005 207138831 699006398 154661345 214920350 356280305 874148758 711227895 732823151 230097065 952677921 58165987 343431951 560633174 884328986 805529671 896338647 747730807 788462837 309345248 960009617 51354755 270432087 289913636 450633147 894764282 974076827 544994317 917173287 957760239 973533827 879804040 936026177 312904837 572974180 831837066 932554515 614343223 764933547 763253417 969855475 972731519 980349134 31232684 153960728 938330160 972043722 199032870 981007095 168716223 743622095 455806683 752828914 496817765 501831129 387836506 601855048 182565161 979023409 128783347 909047473 274602868 716281830 120458063 739600520 253400309 743162298 26407602 61315080 348803071 497460250 32930841 486389230 512134562 951215680 126220860 486876261 795910593 841150273 477305248 828490440 83430797 674074192 914483259 972630887 588610085 888313150 563016767 596175867 481427735 625300216 827438766 829039217 865772266 939188730 975048071 982101143 310781390 829272157 894785853 922352561 217063651 564193809 871302872 945029379 419757043 446840835 340391846 687637220 331025951 641328520 821338303 895108129 612387980 674887340 409223281 595917746 456834534 801353862 74961767 339170192 12950616 383454252 665897710 678777459 718646478 892537628 735092121 845991550 504887153 596990833 496877076 934786286 40150495 190156540 252604061 952342894 661333265 982646329 599667783 906983185 92413014 128356917 516444608 915996568 691350653 892541095 878012261 953601559 150625459 730406024 157891071 707287214 208415412 973523994 248214094 641648859 81986418 352206367 248180120 420374010 649100364 731422600 513956128 863980646 223436117 802906377 61841527 184652804 672663502 948536387 554643128 559050289 320045544 398831920 587047432 915318484 59855235 788881218 28678027 46877051 820079516 850638222 25402501 47404116 587170561 946278309 814273574 875716030 776183244 884897437 381680178 947648363 993858362 996539874 898117498 961343433 756913330 965070617 482421727 677237257 565782977 789221505 277734218 484245952 584881751 907328639 182621639 970764091 952219892 957542010 161599025 966764618 486985536 856486331 416594601 942600853 382028119 503599583 323482211 806571788 850416370 958321980 253145936 283631628 957124801 988579512 645411455 719573925 257818145 597841930 575671263 946938807 12819862 672222478 103489327 359391121 580279948 748366642 692311838 951628128 647819032 741874635 297774198 703649417 742564820 930821432 572574733 681669215 648228458 658029034 449957532 793066446 495526472 930561279 225933071 406758929 704457291 979295051 17049637 782146049 813675887 911339673 570059865 653732347 376963069 985060489 563955384 741917716 77104200 755886496 791218217 938570015 596805982 753123064 688028501 858722793 697957015 978269215 39473098 515308789 309880493 781029313 788895155 931207098 363173905 909966097 427319378 619616242 486068685 775494576 333050882 928705332 418674706 430426192 795855428 984037857 535504893 708227527 308897218 560106125 770431914 846864527 134536541 814591519 951828834 963151796 660656021 998631105 332816596 961962300 637294717 833923414 74671900 622150234 273101323 471204387 416204210 991140787 482791832 933975514 433901124 934759536 694259510 802411794 634921386 882759567 364729079 799675238 920120758 953298402 330169571 687150794 72488795 425323811 89401890 740536598 576638522 759023648 670184256 938097139 376431179 580926947 572045639 905117869 163549318 543455327 577223448 891290101 928867795 983745658 228321014 908647409 457851645 644192750 486101339 981235397 544984479 677692010 587599518 670809277 711007427 938325674 742554872 932597459 525777037 848641684 136938681 644350193 523198851 992375993 106455039 603235948 415499562 947954923 73218802 508998407 955855700 993824897 538695201 538999337 984668704 995424472 217064009 897911353 10851184 116192021 396348219 743444178 685104919 905638765 615415914 724091239 601670666 779560895 206253105 560966018 245548763 450978723 204475935 644694351 144287572 371450441 297078352 597413314 747201038 907661266 586645773 923595817 51335501 693238388 606676509 644794346 717570108 852732545 818969663 867693651 748043585 849950114 441043354 594933893 283598323 840494460 472908301 976831518 22913309 191466377 785427429 943992137 208711361 381557579 656420994 694366989 974872631 992088596 390282588 515495328 223925615 597888122 423577237 533394148 286890576 895761557 914156940 919274150 27756046 885796346 777186808 913339445 921795663 960855402 366128526 654407722 472068866 870986718 779626951 796298618 514449759 721853972 644426112 701401013 127721277 494327132 618424083 676746056 754555589 993611167 658697657 766984299 158398427 413149581 561793470 591576776 55545594 314661279 678623565 719734021 40391863 846430196 54311930 665793664 467527308 747469122 918278358 997576810 221295817 628858474 467929797 955410832 86303940 901341672 657524763 772413616 350205439 860289115 791934477 929106971 759267129 920322314 500395630 531232324 436465791 753359622 628242302 999948479 157951605 853580685 157802535 289185825 902393782 927499348 530019869 684674675 137846250 910305678 324468429 842767013 670998662 997610254 492047529 968194831 924955577 990915533 133604644 660953308 126404974 351049580 907810342 924493260 628625498 909765353 716347752 849758159 562533735 823156325 952934919 979369974 893715453 974753960 171443623 918965218 413745813 678882291 487293253 979972717 721984271 926888295 914800718 994938711 555544644 879834467 204093556 950759029 892210627 922962068 843460197 889735830 645629763 686048896 559311831 611833163 185016751 445042512 542110858 721536262 887371945 912750055 884870995 984462005 509158267 910499511 393028482 419020792 512680180 615316011 93253923 803249141 370270458 732877868 153489232 313513250 110682483 416567327 238663290 709170746 722276276 796024683 636102960 699656372 924430116 949398576 100235930 712271528 756737505 953293203 324424950 546586873 286551603 955717395 483340969 847010469 232310989 263862253 703015333 918356686 912329925 924118163 703355468 975804956 853911828 976137586 698354407 883372588 898062625 904883561 464978966 749872543 5496985 413718446 73913813 358619235 231603966 639177047 904567393 940946824 359528826 944839259 581297090 759820745 642913610 886963958 651201546 842438179 423372179 471360668 607517872 994955267 269661006 831442473 544215978 842545165 940016263 989136227 483242889 810336630 142457470 815636450 557228004 863169701 863578807 904425563 229493643 337616652 535724575 841110400 602976492 927804952 19549612 136430691 22308623 41379267 754427878 883287244 654541118 953147339 796087705 883046215 534549609 669138925 748930415 919864003 517674497 565891185 455612830 466246021 271658161 365424248 425396685 774153532 30276300 501921240 813581636 827414060 544580498 646146296 964378028 975949083 666961437 894044391 968008061 984023109 361838774 702214049 919390348 943187843 22901405 348260697 755768415 770062495 634740531 673064491 268991016 378435662 825356173 930484028 395385557 889648844 439641870 792151821 333191520 492665173 964475215 995876681 946625555 955607059 735979154 876267693 367392719 611199128 906268413 966811389 219636360 342201836 839372406 915243770 900729456 915973061 643860016 988053488 848601977 852627379 400039268 474014172 147370414 926000328 176877297 995796234 209032753 430705454 868658977 905263285 652645445 869238464 1405400 491595055 483742900 548105654 613592215 828768677 533775896 579459593 277523972 956322122 983358487 999017162 432888096 881181393 734278315 768456810 864815021 892330670 259543230 665911214 614326668 820997921 533429836 936062122 297171740 423512216 353810914 425171509 933275451 987184731 171888731 476646768 568598385 576226750 987678186 993726263 593905579 990301424 105623064 288673700 799729505 822333366 620202920 699600533 696107007 897191714 732782774 902860717 715090600 999075507 360755008 884682270 701765720 748926698 922777236 988835533 843293390 880748734 253166255 512635869 846166754 977731957 611869475 918061343 811942604 827364422 489166925 882285565 71827253 860840525 345100114 406455006 856766991 997279141 857847237 975264060 384963260 594734750 505668091 542355842 504703293 827553808 758034258 848701006 458641638 991171572 194056357 969628685 754916297 859587508 828158994 837706623 264670654 730843690 39973052 265220134 281695301 570304262 849941064 851427486 700829928 901784902 249660158 784296710 364259527 596480259 244711392 437489347 853573922 929276430 379436953 773803922 139219819 915777424 23788516 779935145 646582683 804800144 312603469 667959564 679651394 969559808 389547679 400189556 955877407 994535280 951844142 971593662 443784213 635250133 3357042 810755120 934374997 992871140 507847775 751441147 297771681 648889585 703973708 915061466 438252917 916973259 934983044 983317098 522037353 692018308 718483930 752676488 751548632 991758273 765526766 795148234 295843355 859541243 898659616 969063449 975047455 976702454 378809002 796903502 910980989 956883766 732992230 895063701 77603188 130050253 227204865 717411415 734916272 966603738 715639540 749474271 826284424 925887279 288080079 336656247 697680394 952116978 65348764 645587549 976018400 995689998 842650890 972832285 367155623 502616922 81685728 433693171 266461308 588833469 356909459 475179550 239934020 890161190 522110717 802393972 640357299 765861963 24762744 261934116 371605112 919127162 53932187 743810013 426903022 954589420 40443294 235483572 969422454 973979371 233708507 930286927 272764232 402564180 63613841 951923814 370492345 976043087 781090941 819814698 2755789 215677769 650068915 965094843 870577328 993142645 59189201 582679463 180582814 476387355 371728511 452712963 28979293 193137258 256949365 504505781 902464621 955024945 583442035 602636064 880922077 975564811 339763566 818523117 478080890 640545945 845158187 906519087 72977501 654158293 995737556 999789783 888420326 894938841 992942592 993134791 501208168 983485161 536003325 939223411 415451843 793080373 728265985 983652697 811845243 963771627 278133716 643493839 580574893 699940214 2025587 366454204 553245054 612235498 522948916 667764413 308398568 547027030 34272448 463360547 441605837 520318848 454228734 797347807 199330146 799345928 401596479 850057850 937907230 987903897 944783682 947639432 319709064 844044881 70094169 576530870 905389676 987892515 818633429 985202324 139000047 920430353 710281361 803531034 503779186 522266511 963656284 969008050 539934250 588467465 605033751 672388274 167098162 676674747 574763339 806624764 468645213 989160521 348113405 486193907 543182958 900347799 874449455 911769718 942874145 990307616 797645191 887726741 902533152 921402255 237291776 934540710 528056572 992714430 163866185 937899436 342677171 904199415 159088110 426230238 47965856 616811082 659362692 973214438 487762116 665543262 545891819 709367280 733922265 781530154 530608580 635065353 638534490 841907019 105964449 249026621 713112769 877406400 293321194 453778422 254681137 544316605 744148108 832534785 801796602 809596537 588125097 843170336 419029461 437995708 72147116 766797277 933266220 989820773 56060766 474212771 729104385 881670529 523668908 896376559 937595754 977651487 425046777 741060522 983722790 989898115 124381062 674906716 94347645 412351727 509297352 869871484 161133483 596765653 620736732 898131168 557637693 782781118 987797110 990077039 893014844 905529588 400491443 612387845 476915281 589008827 682090693 738636305 832636870 924686122 407543390 699933488 251957811 872004354 903122031 904028723 558938496 995887458 360225400 980958699 224576383 451453300 17180263 883146574 417644041 615252824 178962765 876194402 483521012 931531506 827998987 964742469 7792963 451409227 1080286 281381397 766258747 932884605 444558522 829159018 432264449 567163968 553332430 951452026 984646008 997140740 234157412 471538486 215469003 692476793 358329218 479146141 229764520 313952096 474011507 786657477 273384122 713341697 966334677 966762429 521214304 955313113 2445250 143897566 729421696 811212652 647469175 896002818 153071884 477283132 71140312 203832088 593241673 952947992 225304197 998946835 191753823 846178880 172007232 797312610 537558654 853432634 980089851 998789483 185202365 357888981 348875978 987691125 700123483 800783381 957877297 996319994 885617773 945664305 388034115 423378463 256752394 410563688 826155583 974041390 839568284 877893347 280061063 657085907 561169593 955368033 461832957 626578081 968393765 993264840 141417324 444854510 510497792 891936303 959175713 997855340 12161595 266712275 386953743 458187933 270974337 751197370 155845929 422078052 1606214 355298860 345558321 514637029 435265813 853703129 835092878 875622413 286555555 295535653 691023169 849009164 9949345 703817218 176678643 670959552 154897578 167823008 477983684 495529607 241218818 367407041 88512412 366706278 723770141 911186631 496109796 827015918 34283425 120993525 625361612 975815645 956558968 969769488 915287178 963668327 493573570 879686836 977979091 983028437 197830633 630016799 134509784 748328173 305899188 474100654 691925512 837578734 583087235 964291814 384811650 584776906 962761785 994485081 697898280 869235196 165992647 875844193 405879612 490480940 6621997 250497030 34873681 923896266 880990095 930992409 98943669 566838303 220118180 499847676 286358944 324022777 366075735 649023716 324060078 356204236 70848472 712566327 279194139 774812199 380991669 613786997 831198734 981599707 693798555 829345521 204796486 827759890 435732193 850014194 128459525 742480459 914563949 957927472 730950240 911512187 984350017 987617515 305390234 976381716 808132598 979367639 192380573 743219884 48964966 148384432 834220112 847587512 183123663 983556049 765901343 897870928 162710853 418345582 43850118 112310205 771291614 860689095 82453974 111467067 88075909 773553332 407759746 612502448 348758120 617284270 38647258 348525874 374916697 499772357 928661795 979908387 611636947 749843224 602398569 933243625 162546707 312094026 204770241 630461686 690699529 908120968 653585196 958354311 167508968 296538974 878074872 959298798 344139866 609197648 668150649 744561020 286616825 627415424 105334905 404340650 154768202 533306198 978783042 995336029 325072034 825625076 139218431 742717473 721168015 845376827 944444890 980779472 838248665 937724038 940789059 947209389 333556337 861977500 179043925 660262874 480367577 921169463 878700777 951539163 138985546 947953165 724015900 980668313 320462955 544603534 991941757 996829984 428257763 460503928 235087396 618494133 63129712 564779889 484983847 841568583 130409014 296989635 536990453 542146265 600435644 803089683 699686255 823701558 461775755 669891489 842603889 868276496 675340247 795976503 61012393 798430686 839068176 875265138 193008923 805450231 203201634 679113793 186340488 444896553 154851412 425185970 940383193 948462949 101376608 987644224 693078880 704746070 949331341 958906499 447797270 791239484 278892634 403821923 929001870 982245543 141670828 428467056 914045695 960442253 700939111 821221844 88755672 289500279 372637052 811155443 4847227 694066724 333716280 908141169 778641224 881235113 100839434 718780755 744250805 865426791 145925749 213970913 709709279 744204677 869919476 924895084 379052385 628727453 335545998 684691446 494079277 910614026 113521876 187414209 710402502 741244785 282642006 679352071 695897185 837653237 691542376 777326735 831930488 946924513 55875596 382208979 764860485 779321429 159922378 831979547 674475258 733601411 955168132 973809691 669419735 702401192 539640738 545052227 584300379 766597842 780196203 943944426 804987218 930214003 685958791 925535716 159148198 559863302 698007707 972133260 703867390 838288616 546412042 904738554 655430190 919178099 578589346 979991139 236651019 564305183 300549340 587712874 184393545 373581283 348244710 755479084 511123914 658239302 929956216 992673836 749694171 817029497 443597751 645389572 65430056 696255630 591739022 875627758 700619912 908364453 632942276 974246229 113555762 262243372 488990073 878086843 176484833 390830962 7583117 94699929 499690352 624830811 804536195 872766604 693375953 975489224 289290717 839727607 639550660 694816917 218651204 518520161 910251359 948928583 195802761 382211625 71306110 916597378 279445618 866517260 279093666 676585212 631655660 945347345 43069345 453094283 621111179 917151937 178415248 969129268 649764002 972406302 395332739 675177340 803918135 879915541 908942318 991961346 306170162 491305168 979651130 993875100 330779643 841837041 3963332 846630550 523205576 729309678 273022868 711766205 595216432 843066287 314765437 788408857 750789537 756249172 20654816 591065939 747798432 878748621 759541718 880524401 753952652 838647685 761716473 843735468 682542799 917460510 811808318 981581293 63605573 771000814 224858208 607989076 27280830 505222370 491624484 756592733 18495573 414954907 731476267 738527652 498865288 637395073 171144486 314395214 370573012 763382347 301457702 876828679 251310761 579055201 632232155 909102576 962055390 999357529 222884416 926054294 639325931 944919347 758943798 865881832 75963188 159509049 639083837 816929326 665476559 816368876 434712460 836303194 464961958 864914983 136680963 489478132 551849265 909900071 694206473 938173447 880828440 949318647 677306328 956999577 628984371 995653632 656918829 847858512 634788739 685972568 597364983 735286076 328655685 493786692 742730978 964939575 50274462 437416664 675236915 888952795 552696322 613224804 532450685 832165893 963703580 998857650 792895456 945082389 145762964 167746710 372337110 884447603 406067983 409151922 248920305 423366152 712290940 781681938 497138186 580057656 169647750 324538989 452165962 476076741 893399461 925990509 927738580 986528772 225478701 329670017 349881160 547615631 275426016 636255608 611510727 796218764 654168258 965021868 388479037 937520858 36482852 500748222 564697113 608928229 390514908 559556802 216676665 943833158 748394466 865262874 76410939 231041460 914148289 964147148 467135521 955593306 717611439 883990690 362908952 384689103 928915056 993851127 280982564 337520818 388273630 713863246 955864630 981089899 344818236 727089595 195608474 489029814 246730867 961119985 72886307 372252480 426225715 595971348 907627245 926412510 613723281 784919528 635366726 855886728 685099412 914276510 993677391 994172177 217228511 357725181 310383402 834117934 745327752 874560321 70830414 698633852 819962119 834997766 457868320 558820445 458258333 891902479 533726867 745850676 145567127 167435176 735084403 849400574 32349178 366977920 347429574 932747147 817380545 910577035 695617564 850337475 191206621 220444887 676357265 834008959 246129468 403902759 754503772 856859540 662803438 858062938 521980856 814584060 91155086 327174946 313745804 699522258 804492521 868544470 223430249 687266030 499536820 703248775 494449388 825205965 335974854 511676498 351410280 717417546 276564727 956934764 418661982 551110069 531864066 879321658 295054657 898695047 34523183 840211224 260914495 678087173 913240677 965562434 495052354 779929795 867310625 938306163 211055728 217247530 455123927 662129034 340075409 764153361 919066242 993452251 892587998 954183842 404832690 921133070 162332593 525362226 501855128 907550186 410796791 700859416 879256672 925391474 747213310 845774640 401703046 957872219 339596592 692466394 257137713 475594721 972565543 997627292 15084322 263017120 215107921 757474415 795840727 931622925 408121530 555775017 716769605 885751094 198709196 680417612 509495076 735808643 946069024 972204473 158214906 283601131 133463684 625963243 698681610 784280397 40312919 690154466 154486678 532053124 273521089 707426984 885349970 965676350 763650596 821545833 681320768 730587003 872324677 911521571 840656944 933192037 691302434 975803531 827490419 950407593 513895120 648822038 577976763 745962769 643312030 809821175 105827248 633909857 524430084 754271902 342851168 815513148 881469876 998720141 9002895 330425945 384333516 681600628 811153962 820780523 422351916 752205145 652231522 716716128 766758939 830326699 182575105 270109225 423059004 908906787 763178275 865247120 41858853 163718208 121176441 633161934 335094787 724479338 445282669 564705522 389515594 562386713 248249859 765492886 763059918 768895501 891715220 914671295 329254213 656435346 298554667 503651690 779192660 802054723 939476693 958189664 967773105 995815026 696807446 772015745 289810394 303749421 983405899 997577278 817382376 949701207 672352754 717083968 81945613 445682289 965916139 987824566 15322812 40735194 812629867 948737972 750363791 800183818 420004864 517601336 188130727 446842976 986859049 996716822 462019313 968712919 176518406 989582685 958680873 989548897 787547108 859714379 691325550 699965592 693158056 867730208 56448735 569432104 649612024 898096237 210995298 534915143 726709431 823251507 49189284 500258627 644643111 957818790 526838694 639699063 654339940 759244973 625431848 801161451 586468584 855022051 609324813 873483346 135781048 925358980 543427260 692465560 578446297 821089617 132703317 665823191 990348755 992761127 965888370 992697722 388637426 708156088 418341738 923508833 445563163 838364757 134882458 624543728 793744086 815050006 747614787 776555819 610346546 948481177 551835494 707819810 631492051 887103509 395592956 877119675 948978622 968679368 474076490 773229473 740014044 847601395 620743983 756689532 642398512 994632528 541479222 684316081 352928792 739946508 288595184 592831598 928933074 969306184 899656357 944912393 320390122 477534390 522662736 817543733 363216982 664911531 889363524 891414996 235408667 285521428 111462942 740796370 43337160 592095861 398087561 851296841 877728474 968540517 72381932 765318187 990831679 998522367 597999947 859429963 259755443 606774261 139364314 203029765 580059997 949629855 971058323 977764260 557674292 664953320 708565439 778319498 641092870 926453723 896434128 955542712 863450744 920515081 400799946 528538020 84042292 269054047 3927261 209964809 531535048 925881003 696830170 991152938 817185702 870829402 151719278 706852404 595871427 820857529 49521509 959362443 286457328 674966846 64989932 218953586 148505113 581231096 277824820 413544734 181795875 716075008 380454568 605932644 796738869 843099538 178515539 223531155 899759049 965755603 942217859 952048922 306424413 502252705 541763757 965802367 14251420 538153025 711992392 803247642 438987868 527856278 305930073 501975680 274185961 861096954 22644248 413469074 425674876 881894105 319857861 396760496 503446347 620460012 179747402 329332243 190801407 562427134 41723216 321483050 846338973 935533198 55764432 628185629 578285671 588963912 765122563 870103498 403849312 658698937 922669794 979706892 232759380 614700914 600536584 827035934 612984844 955998258 230227435 659351911 21600002 433851940 278151959 542303496 119109869 472203385 527546111 735732394 267681977 568394296 731938706 768594309 585256222 713296346 459360876 692693696 779466315 797337698 23922104 182597044 273891647 354387743 373980249 488505688 169094245 260669979 181540385 228219768 285298335 316917986 872534375 955493014 119920332 476362679 173199916 295485145 268201987 502454739 424371419 715593690 971577594 980381245 273763504 656988417 592772287 660942125 700500442 811979606 539178331 802625587 691938867 875015639 828074085 840894033 120310306 868558982 844205657 986064495 315104287 477614004 929112827 973807451 909734215 996992328 228395244 991203058 62661054 693889586 401981920 466158634 934248619 973613157 816384045 950558615 581826155 883730801 411927121 423507526 268720639 377873354 942594999 974101524 653998793 744236480 914518784 990736789 512522611 992669291 542543883 930284219 557535344 967576509 318483027 589203094 117095387 337814410 568241225 705457561 72463816 537461844 332948399 532125926 651684691 684762378 480308300 725375243 638256084 769236092 788578310 814201144 915513495 961863851 619162905 631035496 534252065 913959404 802708391 909670028 159517656 245792391 702064516 798433640 751332327 899881835 324481260 962110159 28157954 595478628 415547681 558962992 387308318 430520141 239010097 456904295 239211009 526497997 553988424 916836975 927660284 955151701 102036974 382245972 28469402 473062924 116561421 856261791 499337328 893372957 736269192 756326483 930528408 976620740 140155350 577959075 73393189 416785797 402051645 961533287 155320477 535717291 657990010 831558301 837569410 930972056 841702907 947341384 721991442 929107046 11389471 793897175 666211722 706786375 805250341 807423754 409993599 534010922 463997053 538743235 813949870 996205200 928809292 942663850 410823207 412693415 96450652 821340703 420559713 948257700 877753261 951779370 507496114 594614188 28938059 296725241 146584374 553293980 367065890 445070973 233736995 526821553 316102457 486644307 363538702 563026177 164003685 835320483 423960395 757702797 155639642 472605727 592409888 945817161 213688349 800388734 266907614 851096987 214606576 391761897 99226008 501519580 78019080 777973362 662912 153264160 550544749 723564520 714514628 996100244 298917036 567822949 117438900 745467650 127713783 510901589 299190590 321502425 197405290 681335925 48519279 518009403 977780744 991871294 958066577 978272935 125871870 156298981 185109682 780433312 109131979 348378793 44330646 248206730 250584955 681855483 609100949 958311471 491342062 715334506 224744693 511817903 557234788 780472699 501290923 739032721 812574384 982230249 618354297 643342346 694837449 697169693 391028874 702493205 135193080 233586632 184591 439658585 853569687 889104390 613426329 714241363 200230734 673249148 913965624 952839352 612975729 782867857 627590131 782987278 414716365 581180772 274773737 714210207 232343918 720944390 862996674 876123967 53452873 217792269 497096017 882311392 674528815 738798132 798818741 927713114 796348557 849950896 321692193 848728837 722642915 972549972 14617959 682530247 529644568 929173208 192933191 489901204 999630568 999633314 422020411 735904569 768698102 786402697 499855386 611363453 411325663 789737054 501860134 760375507 2060596 428265291 103762050 606820572 289597249 765769816 57268598 486893292 357951924 869408856 54851461 927919836 447869315 959215505 468469563 549138213 995466178 998460609 5261670 572552727 188598910 330835878 965144243 986647438 262047854 333755969 458769697 897842587 208688440 853709969 259705058 610026801 274295704 339269519 997098882 999204068 126905896 908632320 728866286 835802704 829175054 833901895 888474265 962302987 680413308 689844537 523811724 701845875 627288552 787363357 137021399 645449518 872929177 981038916 696172361 829080322 368791796 555754125 311084486 919356867 972223085 973965917 239670301 322753404 217378525 534266113 957652542 984133392 963310722 977218354 771727095 845602351 272862097 522085115 321596984 739382314 408072375 934285139 885530682 917556781 308171762 850697203 20005975 902999004 988351959 988857019 248487886 750233129 73583076 825414064 606855071 869354367 510174689 784803760 565057571 910151944 558127202 657897589 485538303 891788875 417022015 443887610 669058217 767164037 93306951 496548891 774643056 848050197 953881519 962195676 748147382 928023451 532294723 837502823 955192307 973555642 506799407 943483165 864899492 988620775 205462950 344732107 532703574 589020603 50523174 558243947 843430427 987253988 465366879 536327308 552422807 774825949 371704689 717676889 480864569 840993995 51646065 352985838 299147773 792902871 787478252 987995780 939873527 995554295 221914314 431906977 72117887 551956335 260918294 288871803 620805800 880154782 855255695 876639355 731639607 929508637 676447308 763531315 275262229 974311951 701165027 995542925 444539793 854849842 246535870 277215085 135858982 301224496 705746031 727661526 669450022 976723446 20038832 297092984 779118852 780587972 607958723 800498503 424182435 601718337 563729813 752720419 99471308 951637025 230725289 965195604 656368025 978701253 689993832 718627966 125434630 970914792 449204528 908499873 577263417 777621035 26815697 102075643 540640200 813394974 415637820 509279814 382713081 631079919 808680092 914869024 711182599 795314542 600635804 826566893 279402905 352803250 770166962 820276888 702016352 787903660 493836983 821690516 705688851 892559990 825599815 839965302 479130488 554079332 272584831 411289859 572444770 833442459 253555228 832201001 528206689 972466604 413442340 747262748 356455400 440379853 215742323 922838413 972111530 980415253 106080130 350537228 498050044 921509029 701554637 953959937 18837199 399883601 992177943 996588123 274863647 703374485 998305003 999578587 106459640 368197042 299939548 705868161 460528662 774622179 223695730 389992941 530562052 830092877 480232115 996723078 121379105 837761293 964877831 965313075 61168290 397361911 257524679 799299848 503947069 564328522 118311227 480036727 698653516 850855454 263084446 837981969 763737200 808430231 434273679 993374828 444972538 809997856 983449877 983790448 724202075 996199138 795189511 815969005 186504728 895035656 707837285 975961631 795518454 875572780 143579303 203765311 132960004 268592325 567221221 743764033 890252353 922042023 226744893 511506506 974601867 997695726 414709967 445353812 862592883 986184778 89080814 349231569 997051027 998125554 586772215 670566474 885789104 932518633 90106582 441544335 577384289 999178801 920566328 947739768 89173279 790586688 412105250 949072372 753395522 853562880 955640173 993603980 629715653 728476964 164984004 197703148 890747449 894986483 436515736 629473681 771538935 833973672 274168905 438446816 922337853 979243429 838789402 878696856 288549869 502763061 656384968 998180079 155887131 272991072 520867626 921920807 367968125 818953945 640751725 782018349 8377392 885523413 162295276 826428808 416293441 585229768 27975143 212930878 556216957 613764814 981727259 998223695 895190948 932700919 541810759 801446764 896477276 939421741 951828795 968705596 632645754 941018157 621725069 759094657 866864899 997770790 182724418 472176739 159711894 316139624 164174772 200447102 305916321 454942853 199558798 256079534 729345295 880714119 716458398 827044768 328369776 581158248 795474034 922679958 180642457 919585249 432345374 660817623 177583816 790219510 578903094 738333998 940010454 987573417 901194928 931951513 623502109 754236684 205180646 327874375 522222053 565525316 222607105 626142758 272893673 483269159 580704202 986251910 450976173 830772616 337195902 473129994 775049888 886642766 41504837 407461398 235178644 534347463 366285960 761525944 133163384 983463960 930914090 954193557 422161712 843859756 703655119 936512087 763860474 894260639 729168988 977854062 940013760 961142442 528140382 604823430 669824712 778937066 922275754 972441824 150901001 266093259 991349223 992998958 239492523 366910073 389784755 516621731 50854445 812689644 518340405 870946097 34507251 496679856 665655539 789337512 812697233 826621656 580249570 696535340 746873935 880170673 884528306 934367621 77370722 459135747 457366764 694671858 850441146 861154075 359565076 531744011 234593252 697598194 21711583 159445018 328820177 889592275 808926539 919110731 281913271 998451905 966203559 994238416 60799948 198028824 969842974 974577120 763943464 829864241 994594735 996706764 313009638 811738324 298412255 610102528 939641624 984333137 910791635 929961423 233638886 603111869 604053439 764701669 595598586 785337729 21725923 851249681 53745789 920910599 703583156 839072736 852657839 903034745 528011957 931374618 98497130 942073415 594250954 978589681 832787170 915432827 804261600 992566888 442037258 799280959 85838790 558264934 205274256 652409206 396116791 822972025 386691577 391036704 497731380 958674881 703019829 883170857 853864601 983383434 884908575 918303551 286322784 641647518 57865441 779522814 533258730 550559844 967726892 989234128 362463993 427320922 141462992 167833311 323058620 958707772 823934220 826442180 580725022 869981001 48311154 921379626 226704757 991853134 22677205 909685147 392837359 703382689 36658886 411978118 283157727 549420029 663889430 745192237 799046233 978994604 262986184 718218865 167694273 261870941 509526742 630615719 882616771 958638173 484664693 954203827 418070160 692711807 334944902 507577998 385248056 838249477 184554719 621147191 856695821 872258750 124369025 615449557 642600701 670299936 915873318 947864856 603619902 920752395 792605518 854215119 301314826 832186339 950142225 965357880 404564917 998893003 262855016 877666313 771679273 797089212 98169747 561374057 600689010 900031957 450795687 627744380 681715312 931291975 222176731 790422892 430744107 873282801 138092304 427032594 846684424 948408573 733199257 754502197 91349716 681551493 858311012 879234179 274598376 941414252 193719568 380569973 715583288 917669567 339820819 565315276 662892679 699895470 808889220 927435998 321915338 514387562 489276379 979624741 135355621 389105625 377699149 729781674 145759208 312137347 872718569 877689731 545525150 799615955 842442787 875868418 159090026 679680350 522862521 582868393 7610761 371881245 492453875 627107966 824274308 842691197 750324845 953498271 184015094 795626331 906965225 956625567 709064713 948834296 828609280 907318248 315762821 389203108 292916727 497348277 343838566 639850793 169136202 277197750 620822313 841376068 691175776 717027225 780038326 989592427 239897052 997313885 497034007 603670615 452382315 572977593 472511481 594599821 151790479 593449504 188667483 439883888 4049425 438079763 457193635 616634784 984584104 986313700 100381775 973982344 855200072 978154138 257773365 613976765 624494554 812456434 370927524 742277624 757650977 864417778 752413315 849110931 948678038 954291807 884195446 921157077 929407114 971098957 243552248 293234167 794712816 857847611 393431949 395552336 471879576 634655848 233096325 599093819 457605149 588268868 36112339 984425222 883865329 925740808 441422883 625669042 612367821 672275952 72551708 515498428 601572341 626063391 50118259 483451572 833684921 909446538 920078188 950286722 770681269 874190524 355219309 929121100 250482579 713310568 512697065 895776768 120478422 892707405 898288492 944488948 678173846 786688158 483651428 572751305 54616902 232649413 473625341 562083699 327451768 888857995 219241621 219305304 969507081 969518927 820224078 967707931 520335101 676688335 52425548 90124121 767027808 865656511 51198618 415327842 142184526 620789776 642412300 730246709 571022405 841277702 671963915 808329687 846064524 983618977 217815123 541386361 678819310 770519782 104855586 145152856 741243210 928030676 463339613 806093213 167038398 703163155 172238104 497335460 654822026 850609163 870876628 995234964 489755399 893756884 821832252 822579185 103059500 531952362 370313349 738799800 690024749 760576135 637618957 941701492 109069846 261280070 304952484 368320035 753775780 940897194 973705744 991438865 869798756 978433043 131609608 404558454 71785095 609843057 941282749 957756341 879273290 880740874 128679226 807079744 280690152 996625188 455920516 568249266 44724093 500207210 643096993 663632314 873083911 936172190 697639834 959668011 960125146 991893530 767652132 932219124 933290361 959131336 9056720 404676962 397665430 511945380 594687141 737075081 968754227 989583454 450027654 961139733 262440786 348465040 205574899 993524387 824544451 950348156 945247937 947566533 452390163 689013620 237549298 574827960 28294757 345039193 852568836 908533369 440739565 643786972 463888636 854282540 671720152 964795924 376172555 794135162 167440859 808555191 813802659 816798865 551484800 801544272 128154380 403281861 366453383 622976124 235231539 539867629 509894345 837502572 236018952 642863962 221316364 330623766 710301251 890198950 13144905 913168797 820310678 871700870 906807001 976858201 886816673 890239370 470532545 687630085 663962003 720551862 925953951 951801764 118040169 678831011 87132597 475482455 368927079 872662582 632018702 675441550 896629436 899293040 601230030 639894746 257894881 388622722 28156762 67598547 759112307 896489821 747586495 768849319 982738755 992149531 693528752 744777805 999329528 999468711 812437989 846527592 181079237 191837711 724680747 963923875 366945315 639656199 640786535 703047758 650758922 709707291 65419830 625089468 348193111 791346098 711455786 759866951 237470652 277867028 573316709 736355113 890099866 956320598 871324171 964049062 421741672 652240008 357137660 372737648 957388671 969198301 65833842 155607012 374195802 579659531 551922595 989556180 509004659 987450601 404216750 651427696 632432285 717279024 26531727 603991472 546755935 678437163 311130014 765127370 724770029 749938635 860981768 914389547 997399780 998426210 517344894 768869993 996785954 998747541 590646040 794435193 716073357 820053622 760837062 905632634 721123333 961567310 256361351 961090356 933019933 989594432 668652677 776798273 756169381 848185165 622307659 909995855 143123087 502719394 114906748 742721373 535044305 681996637 501892810 802954835 802023670 966646148 898762070 925152103 523235857 590646695 922944494 992930779 13929424 715568719 655964261 708417398 153647588 202553680 511552097 772635835 92780027 942762693 368477741 820357377 475141180 504741832 587756922 692118770 663746393 707662871 214449100 955953567 441247893 862740346 261250607 834689677 940292299 951241695 840853422 946603906 745578405 800558005 108511893 460996612 54132235 600484553 819255265 965028812 667683147 759854454 389907066 740314903 830988432 932571436 311056108 510707775 902801756 994095907 339772090 514882229 126422354 387140136 858793962 965862413 465625174 609669494 396169755 818275430 212507071 450424121 657850607 966588560 615457161 714622934 261015117 833716086 793941140 857902281 325647234 995874345 877468053 976223789 502211273 800620467 895673979 990033350 626426147 805604836 842578064 900111863 253122638 771647994 286510256 773821058 930221586 991413558 372124429 637425308 64083517 366861065 715414141 894205803 6616975 448949597 782136297 892687106 925023718 944608629 325277390 430720609 363633760 530409301 833805162 901960308 346839872 696340097 496062659 566988161 376371537 676686079 466777393 905208768 579034221 733280416 725326246 850224215 541962571 917125194 991237785 995477679 169182602 477457958 393088510 517714905 813922136 955847944 745442823 757172508 8786801 568480351 496133109 504137084 600876559 682589344 99540059 709636172 100507243 725653046 490279759 951605760 307219337 843598573 975902064 996376165 484895119 604633237 706619925 770624188 938915306 967740586 787902814 992641851 306272391 834584933 479385934 593505352 788662499 930927745 83948665 211365317 165911311 435537711 15777958 551783084 516639254 667546796 755777060 832363435 287638312 561737374 298157246 987360429 436143245 453990883 858717441 962635626 92187008 147485167 426497858 577663084 148069683 333710033 229587815 289449938 73136322 74750722 339435223 756962352 815812225 960511102 266414313 856809610 635529897 843743394 16889789 96002454 971933941 984855150 446412913 898118235 894416301 959114343 314510016 467377801 935805128 958597586 126493289 338414315 821614219 989919911 868688982 916279614 724658497 938425666 637961016 878613619 178755900 230482103 677725422 695735535 498057012 933779136 413733947 454844751 666217041 715329379 604265103 930147587 763829481 946414356 109276790 375813503 481814231 784635344 481053212 813390996 607798019 709629349 700290768 859396768 927474694 928217398 231894951 890964144 215624061 462215617 294544552 642259969 781819345 784064108 201771514 405903594 102902903 439011124 384201707 852672284 782995932 869639885 929282242 972969108 345540711 482161962 292027238 984839610 786950622 827841880 808017911 962138247 823574205 951572037 482341325 870619679 105672549 878985954 483447668 781524950 80860800 802283947 422199028 680536596 547395868 698355662 717057244 882829971 869683327 969144894 406836599 566360072 147577631 649491877 531074751 809859345 275375320 619716968 799575398 931807425 661258415 830034183 325898784 641302110 799606788 933217645 161097078 529183838 397301852 434293953 554482023 979962210 62195282 276901954 20504323 428192731 922018605 980042717 213695811 967277903 600893208 737574057 854379942 994012493 545839754 952997126 850514073 885436968 394520893 648137240 209726815 735219661 517710567 854297253 584783421 800998125 648526681 964075888 96914158 454504899 985918811 992755431 556874519 981440677 467141431 499582703 625915809 839609653 970887088 992859047 356935916 496591935 688221846 739007211 650664708 924162082 138692173 799069537 533057172 762097367 155823558 477833365 403092794 577179921 936520047 956626416 360758078 738733457 521711527 999482941 62004648 752465306 737465474 935692954 713363541 836993616 265025102 680031205 154348241 287564932 509061326 556269617 375037802 999381150 822101608 883688324 646629399 660547619 639274677 851460278 781368799 818133922 410860166 695100320 624313543 959250215 516978473 901452148 792472393 899380991 807417278 950153713 453931037 661969490 109523819 954362869 13955177 741431465 868323469 897162643 802155665 809428960 640633733 965359789 521992325 865987918 15773563 68849649 959807502 995238192 782338513 976972961 898285348 993586049 800551299 833284792 86316547 557460336 500778959 679641180 482761572 587844622 393253289 497537970 761222283 806457186 562596226 658837994 445243123 903551899 675749572 744039460 647127109 742479149 542096657 807426404 961977209 970043371 372903697 531598743 206753479 361695449 407904157 970895176 283212473 685192960 262711224 764684565 384000975 968206063 562760211 829464207 624662639 848416587 94205774 164404934 52722997 381195761 333335455 875770905 478362160 930485629 91793635 411945944 854265382 950897727 311108651 538790744 308248961 583409669 968932805 979792721 442490850 959610148 252096940 479468718 292962503 396005933 865258913 935136125 102097421 711756267 447717369 871900420 178600418 363725285 830783394 967903067 222430995 228208696 843417686 858450874 56289682 700232157 767367015 903905570 26918316 678353110 259190522 575167920 227303404 516793743 171356343 558922160 65699968 368218401 944443568 944862925 464127916 780391868 309448381 622592400 608108597 848836801 775161297 902085204 205164218 269939924 824917260 935772684 47471839 220632315 114963441 266374434 841005438 902952824 685191411 764283199 472180688 965343777 466150705 851571609 127101202 574350506 573576020 958892074 905395840 961126392 323009525 612402664 943975585 999147177 892028961 914355687 503661917 572847600 994819452 997351375 414654419 523326526 967325551 984629925 126439319 692768471 484675918 588437770 139341062 287537380 952332517 995394859 244978927 474269658 348823163 836074515 512044952 878820793 500121282 958080425 267961769 355816702 475780406 752064805 338700556 565057399 3216557 638836606 464722914 583781009 496758300 954669144 107593009 759606189 623848854 675796189 803703689 923046253 861865679 899668093 642115501 715587770 874975496 887015351 382389849 785432035 196066808 528671946 365529098 941373091 468902633 519542478 569187546 932781498 107074499 283583048 259387998 433909632 772881271 917939853 83771869 727652518 324025520 899169262 744283172 893917763 401387637 517696914 461080273 870960956 870196808 978023962 770816286 780409765 747985885 922626927 682668262 703394577 986697553 999956242 728414455 810754330 333279493 720451057 379906964 692281141 877696413 987375127 314222053 359337037 917305485 974294009 856165763 872616713 946693252 992277161 258717273 516223668 884366648 962872394 737547232 950825862 999457304 999917259 178520341 745775885 850149645 961210673 401848690 991564044 987220359 989602401 699639938 944734224 724545737 725544830 769993267 875612241 446962766 958365104 846072942 988520676 529420616 732916442 409522362 657765889 117046683 649834704 634904306 699444233 725372045 760671843 979321128 981450706 907060415 934012052 512226159 898084452 822817516 831035498 750839903 849997727 640314993 996085068 974141664 977842255 467049968 814545346 826817517 911250843 120890239 159294712 43184813 125324510 668400893 937531150 582309202 847362926 558859030 589672661 853116677 979083313 377277046 631636382 549983554 858266756 582581679 837503115 932347048 940006218 545240782 724924825 132892025 272356881 326089824 849524497 571003419 942436673 953178733 972993847 59692972 698283363 705064203 881458181 575146258 894131723 245967064 932186492 105899073 955627356 477851311 865275844 90191273 879045898 656983683 718128074 308891946 941186594 21645094 554386263 307955076 889741191 249197580 541739961 154594331 270884190 558785353 743348878 123867905 181045284 635876911 998505005 986033753 989726129 105868112 876000556 680233395 896774576 262208417 615383201 420329678 545434862 380181284 879389758 643138733 877288378 507105278 596838199 782030467 852495483 203112806 251690385 127705305 922947970 116655859 849200743 423059079 850475314 760645185 922824253 521927773 931301421 835356755 927052273 12724011 485305798 496921472 974102603 181691035 732874752 59529620 502367000 198723102 749669077 532678430 671054797 432207933 654004625 165041142 482339680 90338737 905458036 198412046 693531328 851748936 949918219 230667311 840907416 170940841 707827243 879521318 971812851 793683397 945350580 897120630 987706625 917426540 969988883 769933416 972634461 483338105 667836443 524234654 922375622 77703384 303964839 623221409 870467229 560070750 937421959 368673672 781426448 771960222 886219900 814509247 868480238 486466320 947431038 118716274 605268041 351163430 583261533 408597811 570859098 196380364 301991858 973659479 983918333 961962260 993540396 587630528 955740509 635863502 983927652 918053121 955296838 881070522 886487673 33712410 640190713 858559579 928385712 610923605 949290637 659479944 788812119 348735138 395325722 129361560 828071741 743034142 860655275 856131172 905183928 684358149 702559534 593470024 811627228 233130918 833637705 129059512 751091962 203272492 737908455 611138772 628980752 623004453 718835733 465645934 738894475 325667202 524405482 102815400 493999326 664898925 900347402 482205892 585320271 440474151 944073383 323019426 922596041 373539049 699554658 639908678 951086935 377278228 763142579 654963284 672235484 463258241 676219928 335452015 406448487 423375656 989757138 719482091 867292184 461845926 737335483 539886381 576730703 178686530 820430080 605000334 654359175 156920278 198205514 276667892 854092484 353657960 378992104 808421821 829857225 868978878 918552544 269539823 938277080 233513635 516493224 925297122 952508353 170453814 363133553 825752661 959613651 150267379 632987941 758443782 833881274 889284977 978166612 70012052 637562856 686392275 741578477 689426910 778036037 712822802 745802421 859091162 936331983 81101451 175019021 431084984 473974348 295922482 361040948 573876910 713611732 810267608 852016150 882629865 981550137 527348646 980796930 440797116 572736426 119332761 616820090 464939391 484057568 765264648 910790113 47211759 438914132 778605483 980906890 667729849 796870513 293854357 450129668 631927394 785981337 982662294 994888831 972720806 998767991 447142377 870344871 962447631 963565826 64017944 796595184 293195558 766438852 973312828 979301159 533775413 807257543 109063919 124861313 788374765 824441421 295677257 641391063 102780978 131600694 593501123 798237647 594300024 820604658 158491489 584744711 725576886 962723853 132551415 898997175 732693687 914499159 48488265 530874907 236997817 449629246 731951099 811090008 416803028 634019098 221364893 930671923 444004783 912254835 484636536 511141871 665354592 914151543 43534310 697727322 496032016 881207154 674674071 995218413 752604996 919199265 237751476 575647845 740935626 929664986 170718790 862295598 858332004 932004790 778804232 868548791 958044196 993839219 786927253 852703267 382852656 841707028 883728190 989259142 887192507 959709293 47515837 553621563 517212774 899433389 572746069 763474114 34160258 91288538 580962050 631971869 996060217 997998828 63178962 723074848 1453716 824569746 78134373 214265748 932512721 971344768 114721540 169487415 301818711 375905813 701648219 944027723 819174881 957489140 935066154 999620194 636008765 884403041 34474368 426263608 4811823 493807267 588565742 860250665 775692507 854960798 969530194 980666059 473985250 488584523 67874556 172731298 442677160 909460069 946626391 969514081 188208075 733198504 338012041 642734741 175228610 798364910 965446737 993458306 558315387 766819693 586939806 702367626 383079641 875364057 590387034 741684534 881756870 961341177 286367608 721382078 591582422 630287997 973301169 975379807 429310261 927799371 909040777 957572923 588995890 677174667 29668080 506619495 846995642 991234826 59962950 986085880 724885529 827408003 92904418 905346089 633421927 857400668 837739188 895487176 885726592 968891369 549927824 938990939 882346851 913338653 222824673 748686956 158211743 595530068 127764883 177100623 252769742 695631694 187079064 974064090 764665090 765493908 193813503 348151652 490485317 774080265 9142104 538864616 258052661 314966296 497230397 733524194 724806378 853515716 662092586 945871106 674875406 754129582 31970587 213119025 739609202 823674532 567438641 842324164 10419256 761669699 682429841 690391300 78592804 296426348 671753991 977602539 161834257 893209227 445194183 982913598 523892430 972004037 745038151 941003592 893318977 950974107 920640439 943363224 866416989 918758376 621285578 977138045 650531164 797676513 604677293 915524246 478993918 890390678 811761042 996624729 84538028 451953698 467095758 976382782 93306089 173129180 182085249 569868327 110195612 819008371 261271479 775954646 538826722 874154285 123162256 574167479 483260638 620382751 549687512 564181614 921434385 927961838 240994832 541387926 367441974 647710684 770476121 833957713 813706666 820967107 809787205 837894184 260913440 684747878 498454634 516882563 715321582 886908747 70263387 216377385 543116504 862034072 755863436 947286906 945623762 963118488 927698325 989957648 440190669 569589469 477427068 873460224 241657805 495865955 276198833 437575514 594687502 679505638 959973990 969920821 278797524 906974669 852708061 912745432 763340778 885040209 911262904 975514934 46354859 861691834 346032391 735417695 958814649 961807314 792009621 794386057 584621491 892699309 606827805 976596348 780612100 961397550 89512816 204488362 333065539 726378187 110477735 555149447 75440266 915659573 205124604 557152073 127813878 927398509 761824106 822884519 227501947 501503205 815745270 953341567 960803486 995985311 820533391 951779785 135628502 372088475 810694009 962781194 387250928 494688046 868278239 962270065 231492753 587988550 619041136 625634605 715662538 859568361 326289328 562465700 130180028 635081190 203418013 496182800 901827540 921456123 111292175 775864132 877414594 920233031 487850158 969391362 935147376 935699924 798440836 935066257 765923900 797291824 291411465 890733778 297821218 332680755 307638752 709114979 687930935 811955636 273776531 600861694 621560129 869382854 820893452 928754036 915403774 983065292 388952350 854662254 696055362 829653474 734220147 843178817 853132303 869651436 965910571 989332332 813799597 937015251 971436351 989898898 814491924 922086310 33036227 965346493 959509312 983842326 947943578 990205851 846498623 893744799 259904323 750762523 65220418 543268908 13771308 132279802 484268803 733542627 837724453 878193973 627851302 740105604 852868931 948257978 608325776 870389171 524533694 642605964 298571757 881203646 705555502 966161337 111393820 280234665 249845790 335595701 834757258 938088932 994782653 998691708 804183210 992001936 330102875 730568458 406989835 549748994 136480409 418509538 331338843 622709122 972241392 979623104 864459496 901875289 318142661 856737435 60337979 843766395 915072227 963013101 631947114 962223200 155366199 600156256 299462579 509354628 937569249 982305436 850139331 904996020 763777776 873776619 602036214 748061023 903289585 998337357 673850348 687193526 662071761 678435844 665273224 689874156 994826370 998208929 441840571 442007338 649035103 965624053 85937641 170332413 357403393 464320258 733086054 884769547 409705899 730186420 648645693 912146985 272455418 455239389 771082582 987114405 394214641 559786273 953648284 976866230 614317581 774001914 229555339 875010048 330952450 568187301 696147003 715698703 447915632 558565104 507591905 745155254 799445832 898821693 774980528 849598712 415487113 760843606 436575433 842136687 44948840 760585496 139331368 765522996 37014145 466298332 967991955 975069459 266459469 913155857 863019917 872627534 532281220 735141465 707812 30183981 239355148 736805305 213296652 442721506 541098855 810540165 194456861 897267196 405023933 668670842 493448394 886622667 114968703 621821429 933675528 999313307 835865917 859335147 522819075 651898390 657481277 910279315 426975586 901426290 97161424 192810588 448955421 609082705 800594991 983566127 103605951 677010307 614276887 998235157 221681725 812915711 571246843 961112030 182324943 776417168 170255136 626118839 944210648 982328090 899854102 996891330 914667537 991269434 258192770 757598593 47264634 938048350 316514301 602863265 752559265 915777297 705835192 824138072 697582805 872573928 36861971 705234057 745560699 916509993 201448554 659518372 104048122 593461730 642635805 729338521 213072124 670956728 718811488 932176238 674863383 907249633 160118092 525421912 873634988 920241551 547119042 803193042 860506689 927415472 103552593 856936624 822636328 938686889 442917531 677877846 123339861 546296117 244124270 839256348 164716464 547309369 521775443 812513623 443248592 606947617 159004784 960690286 960655579 971682819 278777795 859977033 682220242 825087775 831023731 892674853 920423859 970653940 170761062 629075813 525402632 622391855 237719765 503134742 621244044 715968271 297343605 762304350 503353730 662782247 457200857 558420921 210633709 214590868 433037675 722001150 45724119 883058957 184577937 770946184 788316174 887903830 836289709 982206674 887563893 905302446 776516783 969785803 725154257 836373616 166427649 754073119 932787469 965495717 656473359 742365558 267258880 640942269 134861634 485603701 872491732 972295174 48696532 532906510 379066309 812634401 412165709 985435415 294256083 843719266 593052458 970048402 971183191 999977720 196361266 427611404 552590792 844332174 815202925 943936861 389601751 405074554 616722749 793789967 705314431 883187658 466737830 656509726 299866184 860152806 859377414 964621370 282149216 965913001 959557427 986076493 832406511 853435417 793502394 814821716 842533483 901570556 372574147 391194428 451433509 547945286 133881154 527136244 149425698 284695307 425578550 725256853 408397703 797819247 909930578 911988698 564369578 657057375 47716221 320805725 465201059 940130078 955257568 960939859 935393948 947996624 229096051 791375634 788912968 981247933 846099055 922558906 176711068 937160354 785852302 865290855 577334027 965636555 622083755 824083431 964256610 966664243 548697657 939503355 442274813 575418372 533430276 741897869 797291904 884269586 899041827 985076570 796563030 950427833 401088134 581181768 200626515 947524934 250991570 252085434 140057826 714964049 936223863 970248160 547900063 784815810 179280106 781619376 938017130 952456797 125617347 380064834 329282205 392116586 476085780 938220913 18105393 509770942 734491990 917771564 234905528 766058649 287590179 355239741 454850647 792493074 414454353 546905963 110060109 905334831 917261001 935729368 304950388 333249006 831905965 901545368 812035486 953895109 606902857 610302008 183961642 592577637 282978325 390181135 649734749 712194138 692510441 868947309 623690706 716929325 535536258 610474343 469624434 711147037 727266773 829650195 434224821 474569934 804211341 933186188 254251168 588676940 680415317 692827262 456763103 540336212 492296761 723787895 888504911 920405565 715213792 762982258 410189911 997581818 716034468 718259314 244569910 764787099 33390794 100036435 965607421 997697144 684171757 934057420 730556118 846965954 792318001 905082636 78436099 236217792 377500627 876114866 160855877 473020499 616978067 945060423 867109019 911947919 67487517 822958180 79990258 992690092 211034556 747255713 206866170 703018865 712010268 717801762 453088218 506343170 415785880 891583306 57054351 434472970 436232436 978387358 647703487 833657948 7425361 628154241 489738918 904882851 510992969 848740963 973829700 984389374 441542150 469726229 139971546 476006658 960553317 975279237 222725543 430369412 912233308 999778834 185641739 912745137 246106398 505913204 968153155 981118844 144459407 337142869 880659204 943176470 29948019 473704417 499985057 818669155 968456583 981965120 699150129 972862384 494717041 873011850 88170747 446828417 676698918 679792108 528186585 915057865 691005878 792704482 83558068 698704566 600241671 997669636 508420478 589061981 927279109 941101128 435165328 565401274 801955445 872374549 842780512 865041769 747829925 931338533 674800206 777866496 371794711 379973912 228412725 635236855 584833649 951768430 414915720 542357357 182531212 250428256 180526624 713687673 220023529 351903087 457426974 861284931 260224228 535848235 603244736 711640555 431010466 615831927 44825918 852607216 255715400 631403240 368427579 828829282 21987005 494954519 109253703 310706587 155796485 262523531 766052655 923932862 827270447 981212518 864658502 961710893 650732428 882353944 47721051 623280628 131492097 610534858 477071468 981190837 631386061 983374062 594845069 915012585 243928644 923309868 502252862 671389380 330716218 522858003 702940947 877475767 933799225 946609318 733703083 932055445 661212430 921083490 760413701 845775377 301374687 656708157 399711480 721971435 903986382 955939884 45832039 196158629 787920408 871449182 828574564 865880158 690350394 915473577 843051986 878017818 867831646 972577850 851913272 863967093 207719420 765457758 745140709 965799550 230148488 675144370 190019902 510009476 868908942 963868474 360601803 609134057 40145094 599703838 29805153 413641366 582758492 731368391 248720381 764962076 319750239 958111625 311927720 726752753 935878330 936180021 650525690 927453464 609154979 722790977 947854674 982690778 825750939 922183435 948054113 980922004 144753731 955521371 211819511 988102211 45897565 352403619 514039349 699322441 343404829 836424565 945594638 967706851 176282793 630641653 521905165 936767720 257495380 964293403 686590407 688241968 634816675 830776112 194496906 628791924 646435832 713330127 144851147 849438313 234538851 887022440 523977813 823497289 178026287 455427975 905698161 934887668 718526396 814083715 786608587 872664854 647024495 762374423 317974451 543435869 447073359 771158738 515005780 707712902 670846852 786796907 447073446 498014083 879175220 948227688 631536863 637964708 570065324 653680528 283022464 448315170 709533217 983655174 484985896 932366956 540815828 760459240 629160248 690599836 318138990 662586535 25816568 880535876 593310486 846229806 837621124 965712977 895205305 907931259 997513406 998001169 699411448 842860142 868231415 912172384 917001886 966412604 332708676 887102140 311124897 613308741 204606376 337413125 795280861 896874378 281383192 455858296 476505390 884483081 817894822 949014259 529434550 776134530 337151716 766961403 121133156 162887638 241540497 778261975 92905503 913955405 407602982 782765886 278171002 655102364 285804053 517477245 681356259 823093237 212403907 770354613 611764072 951331744 790246236 859449318 328083165 890851737 657449990 758149601 734333708 797476370 577553938 602854843 435812679 727228582 52531961 948239662 426290506 713708393 411568757 794714670 200077036 914554189 665089605 964952120 572605404 626485882 138790173 381138701 548091654 763362460 252768448 815711826 264490696 275284472 158922793 845108388 103394982 241555915 308166490 912699574 949697938 973267002 213971975 351185284 797366671 834413925 359031215 489156014 848038097 910541846 515116324 971990703 816510111 845219865 501801360 729049327 234289647 843586266 587323746 598130758 224728176 341758920 814372591 968861349 767168897 972588031 551380037 595824125 558529514 752291616 752863260 854364187 17159240 137010632 348297579 681837623 77917370 519780239 654328757 791249807 538607865 857147282 478241776 727915284 434872803 899539906 803200477 901214915 75433340 405099404 385498256 916213978 963470762 998921364 506781866 736855118 344437816 764231463 125247878 838142045 949751286 988512587 184847710 508789665 505378456 810577529 952144010 982465792 347067274 720196495 888593103 990279138 7136052 131283130 856481709 981078569 905533267 919757001 763918914 900657894 290897905 732808105 265711922 472482208 687304015 874037688 802504081 930971320 883726969 913952387 759227150 972981444 395194640 576496495 411096406 430031569 691476380 757748019 181833881 337727741 979163073 986433080 564866827 914671680 328981274 471263398 394864248 499310190 693569384 980604844 556213553 896182740 521180731 853493966 5058931 499722117 516271572 723489789 418287402 969107558 201925330 330517458 889650614 922191372 145723967 987486122 109194898 779945374 427910072 944039186 829454490 875699812 563885752 930661334 280831173 966008491 785673566 808034330 692972861 736749610 121964737 451532084 708910294 834307062 915833873 952482022 655862650 802765243 789504255 873087572 141512054 584874375 120673018 551154360 181935076 973881705 355277925 496580288 116112093 561844164 828596014 919531737 178119190 707983298 284300621 762861045 157985494 851141951 499353729 716665984 556540252 671767231 393931878 647177653 134989008 176292469 347756746 958356748 442897832 911835188 235517032 542734071 540870005 935648414 30694037 436815521 641770747 952638013 925402231 957729660 366862471 905489499 134076421 494949182 30400604 399339681 208728088 757349638 258732148 442699047 537839212 986986845 476697112 814148282 613314877 995238590 176091694 900890188 787636680 993753769 186542547 306467600 170541905 665814403 771486073 917152865 348315415 592500801 249078065 777838360 778219800 843886746 515445035 609087878 161654076 668535664 209608328 383770227 381274252 636319778 131287830 427805042 658741324 795183775 297067019 520692620 824207993 842883370 267628047 596745285 511196789 572237294 353311476 769456919 65025067 601198038 181912052 333159500 182262761 452125441 239110707 635241705 463515173 635266619 514635333 828711677 191419153 668145730 9285354 152353426 251991013 536783098 428538535 595801276 711792451 973978213 36274747 111735441 394480419 570643690 175428028 280598747 964896462 978707163 88373861 888412783 535652154 762667706 922484740 996106439 899633424 951641735 472176144 958915253 991597153 995865567 566996187 792276865 442232858 945971509 91412067 348919805 771908214 853401893 618441730 699793139 409234645 750082064 523496165 889959980 604059932 759845851 677551816 833092186 740250753 945289744 890816203 996313549 554532120 672052365 88131954 544766801 886945068 939826404 394082223 802495199 417511164 802500752 739877908 824064464 95695501 599949718 817786021 959807354 431261412 496731360 101338643 912200795 734174613 860789913 59805192 62575725 230593897 303888613 773625022 820963842 204570840 352871830 967392359 975630958 252053689 590359467 760822597 823695643 524112373 651106036 714497148 772756765 395006554 684819659 198253954 538884310 329278168 738854065 928697829 982010689 114834375 768373472 797125921 826664909 548140286 807918278 293090905 919673222 961884888 998919285 45663133 103384837 918545968 975703790 724657271 972460196 525203027 821223400 378176988 947955451 559719177 829382158 718997706 768069350 403926352 882274447 693986340 702480575 890678497 947535457 650978723 986785925 409090112 435098431 88256973 781097882 911000469 968980124 427066426 566904781 902902445 906808710 201559252 695521556 284367857 405420916 86053854 753610633 846900152 924718469 155156762 666792944 425928233 622361705 143481564 787223178 634336432 773194709 472830209 747806590 100660420 339558926 947330748 965127650 957024213 988286318 266990349 944549298 967542511 988047361 882341852 942585952 559679516 848956660 628513064 925261482 156507795 460830710 37421642 281379694 773724906 863833528 396903847 933524122 843366562 854589181 894615301 922774898 540840273 714594357 442583288 742725484 533445785 765432807 143541833 956614022 815777714 966302422 397360057 488610745 352991788 746225005 737678289 878044865 760796718 953754670 748266409 903927082 826689895 960792329 446568115 852338869 279939548 877096908 661754618 859064925 742269520 935915811 723190069 899427378 115479352 173870132 638458419 754189723 287995512 472092645 124367475 915716192 729230357 824542270 261596744 761196222 814455562 930899923 501917314 525717272 974843024 982342562 49814126 863738537 398001633 488788252 367709393 975719020 188225192 432048116 12233490 271414162 805677898 955059518 51313746 221138296 816160013 996533664 743714691 925264864 457664369 774097046 860271173 911003870 975120585 995654365 225472338 802353126 949061393 983166583 37107334 675664409 462730500 706084693 190085399 440080678 464552465 806929854 584789110 871095644 688111051 696097510 116441715 522063842 745253278 884663690 869593983 917737417 488912092 708316675 83478802 132854572 852053605 871001487 655584296 676183644 402682274 892682769 34609848 90790412 888216553 947442456 924023218 928193819 93063009 653219407 621777266 854331312 395176233 808648167 125673260 574078068 72926829 179160654 418102317 795201764 199550278 275369157 468642331 573780751 27760150 637612179 694726760 909927931 771534040 839496637 585536685 624225209 50107709 67086760 69957336 646510826 867089170 897780641 340279736 497870140 20410236 940160948 603796354 722724306 559402417 999916839 451136682 844577305 796822862 874787115 8718423 381532665 919529029 989371162 92680562 208125762 984533812 995899861 889472473 892730793 125062361 260622701 164986503 180533452 267116774 504816937 395248775 882769234 325437730 356113309 727323336 862507998 738474894 934222311 659489241 967446954 967095020 988133454 239106036 740314623 36854252 889028527 789294897 905157645 88761730 181257454 582007230 972386830 474253314 852025809 259957716 267367862 49630027 52986600 16168407 936864716 271371098 869397055 30547377 297955943 843456674 882044289 416652143 799220638 898176078 921843757 741537489 861804339 85315535 959986730 825866725 932001635 618144563 758699456 207281802 647147517 535001686 779846680 846391935 900544146 72707100 537016166 478800669 987009757 863531471 886468910 915985413 940735587 106588178 261223302 471002992 715706990 894144645 934956901 432325211 715168897 936916527 950311723 183355131 816689944 340279124 553524199 787281075 818023779 467187811 837292177 867144717 961429019 990556520 996936789 3089186 107863977 90269534 249701131 784400896 806352786 53331471 991147127 707310033 913470947 467189905 878772739 163906613 979303807 19122314 797818885 637456697 779152995 834542969 925009511 406340635 720786795 67348570 833343963 586849727 719022132 595594898 717855780 50446398 742635044 573783312 617113352 215337020 277315626 223034552 583360609 863332907 987687575 557731295 884700638 688045036 983860485 682363363 854967641 447410355 846419061 917180402 964106636 22020944 912255692 178493479 840632695 221904129 979437904 824698235 994814078 693321228 840118373 364233786 412338779 715768821 844851923 67322766 715184050 627457396 642351213 53782885 397415053 64152366 448797123 512435105 735793826 43863346 482266659 478136306 543778619 957809419 999502709 787065836 888687529 62183942 198372681 423944720 674713107 517447909 537788155 836688633 973482727 465905954 836056441 475244130 596743237 681894780 736965655 544218139 622332678 640007924 976674393 924715018 931603775 653784977 699989550 908705481 936143875 659781929 870614918 263596780 533763256 365787077 981566487 395261719 836992518 896533905 980864652 892312476 911374704 353391755 616442156 966778472 995647243 24365179 715743720 104516246 160547543 70108368 997824111 242436919 252242965 175564576 321243360 29292956 317077612 27813879 674701958 225630845 891192149 369605 920185336 118231834 969676713 898977204 969737700 509809870 751649300 113857711 825399625 220571231 683523775 636029369 679248447 851745124 938066132 703875235 817741293 890281902 988127394 229844705 880901834 774661814 963330667 114956413 534230194 444550789 537504747 106839174 973427656 924108512 999709622 700281955 823390761 183597313 351230247 904814485 924799766 834741575 966714452 199575934 330891440 899736652 928429646 618339591 696182695 89360845 942432903 447826386 860246066 791210911 938081986 704517227 709344287 158879265 533459317 667959194 816568781 305210069 361825637 136565757 194478849 902242558 953815101 937474789 974760192 543136099 995429049 307167885 438140745 738714794 806028408 838937671 861848301 500001048 961296460 795500384 854075038 907328767 928997747 807643819 819353833 368649400 423873832 746255303 866834404 376674242 659675009 231012286 983219912 91526273 342941931 184139090 415472621 915459555 950873709 309088448 655111677 7508011 157399723 706913539 967687196 780337413 824850546 898026573 904031698 650381819 912045706 636494835 851825957 60781392 98071377 896405387 931943480 661354266 755300048 59717709 219783720 961970832 977741631 970990381 994795768 866472210 951740233 790867581 958663130 609766060 669661976 938201301 973141005 90373729 969341664 297729023 430217549 590123980 807951177 978790291 981496935 158318341 993233546 271604171 733300767 712681023 795959991 76004490 783778803 175100342 815741326 150200346 151660090 211342695 741971301 167759602 947082745 964347240 986643561 403253355 811508154 565151119 795834643 353775782 859186381 205498334 961363023 141889283 169976912 311643020 870847378 859711242 871413370 193510118 204139499 422433240 567489840 717776769 909265204 488694596 536278877 329987840 562627688 115940498 230452324 765360886 831138182 613685821 629096096 853862818 878265531 240059830 462131958 99404545 745177007 561827768 645395717 60263277 386998889 79251604 118488251 921625968 980951364 754189266 887096811 192998463 551425352 519123846 539831888 826433310 873226801 322966577 539927241 645170081 836340939 534543251 920741369 384212112 389966269 794133167 843144764 712600916 741487355 678702910 733562981 121412378 805374436 749683600 845923796 65913524 629359358 611812735 767325723 618048110 989211156 652484974 911049214 387185533 399421411 636288907 815769658 733700779 900034377 503609419 892138175 700590231 787695984 309761655 797528552 902828326 968913975 592722724 943644983 199826102 882771876 393148353 939792468 51047245 845109091 718199513 765725273 425758317 468199902 182877294 775283805 134707867 166455825 492014369 680885879 842595594 944891287 822869320 877025317 581170131 611283016 426270099 449885973 569171795 748284993 376572019 907527247 85916392 989936427 962226596 994869940 742744911 869455493 360370459 778075211 835949926 842241656 921142792 952999722 662590547 836167341 233635743 266337047 17273819 298664307 679995668 890351138 147569671 837426262 6220662 301917994 470647620 988122147 531752448 687889076 437970150 839290221 740918511 803021033 917069325 932717769 374816550 911434106 391423588 692429374 446508980 942894854 551992442 704997797 609610155 818821143 34791300 593081963 619309300 944532299 706845298 866484430 306007865 890911209 790674946 972892308 722753441 868821623 96920304 616384016 496687219 519690474 594440872 866222286 439226968 556051466 145522094 174037244 99448789 637604798 702564270 777439843 596910333 653177592 315672284 687432754 550745795 918168591 762662184 995856653 202058567 726275979 654242346 879114175 336863421 627477286 558277891 624694790 732935159 740269041 584702733 934852867 250476936 518839320 214529405 440600439 680287650 773689933 873221265 890841653 530994650 652815446 380964288 827033532 791448928 836255348 122017887 960260464 265268715 426941084 444032709 853443085 249149516 350851555 775217665 924649886 483797509 970587829 236643204 814322360 847471094 872035483 442076588 768799050 278768080 866124627 854242365 972469944 373673686 723478073 918975261 948868656 327966409 765123314 287365417 378592160 148896234 838129565 747030772 871535317 923695996 949732277 355537862 903428811 405068322 707742455 463812167 484453192 501251438 603127947 669594631 753983436 940414045 993146362 883379912 913131866 717109665 895016372 692124887 819610819 688736591 908618856 317218573 419710230 508107184 770464053 594824104 957861052 413050887 587381687 975931139 976263152 123736567 229760833 367131653 732559810 565205070 657626708 65493661 120108432 629884418 931797725 299186352 514006060 52156880 489782403 239094692 745284292 211853002 460501824 137473545 153681513 939388750 956508695 518279296 926734623 162708204 729682380 343757696 935401497 937788151 973318504 136371236 893871734 419228585 869623168 96236891 210558716 538071234 883533260 232296647 717670096 425283562 493358203 275116387 441361661 625285199 793496864 196694856 345554075 913960856 950680313 199192310 280820369 539733612 647806546 991654657 993894673 13365147 559781688 992487108 996498593 779296755 861214080 861564636 920026910 914335972 934507133 492810910 717682332 511046245 916560398 357104284 711806133 336939135 563234927 341194877 625559930 258427430 944500193 10498011 991056541 836097475 859638701 360799991 644678365 312561088 945078219 208734675 863013000 811632023 851627300 301435474 736436012 776674881 895208479 348357731 513723938 585677796 808635489 183328472 951666630 300263727 545556947 55974604 351936393 612112198 732660906 452218748 802776683 442356135 838755157 956030794 956775745 170438739 686941012 6419710 934900227 477139483 494396565 891781021 952316931 830873602 934785298 182739188 720152321 238244823 346671250 65810393 767987239 14175384 978308917 713285339 875532887 481676147 785884688 372424092 492458396 219308599 956163592 110023778 473983645 584407806 988534062 149334977 996216652 223887491 502504688 666446231 726696357 410298615 528797143 978475272 993587365 261552634 860299475 738460497 987684484 756465504 962096010 426065011 956285291 66469300 496363162 737872787 776154904 522635111 713884671 382780734 592404668 803895487 913386567 884863711 933307295 128317344 214456183 22360039 951416092 156808316 200214153 198990133 574426490 698857730 892562426 798949786 893549292 696215351 705495264 221241400 970645347 186689167 233829435 593233039 905438494 777240881 881390273 877245111 988747472 50312397 606063807 294776528 483796396 107977077 649550088 801153579 812371619 394529342 542532512 538240771 966999259 233818550 981821874 925836019 953664462 740529144 759287629 653091120 896035072 569706627 583807412 286924460 714651123 297196647 659710783 87387808 134321054 729904759 860211118 870184813 991347847 707481022 827191825 698639594 920197698 560424272 691388374 339676493 644273998 414758101 934036321 523936846 646598164 943775908 960047950 288187758 851680757 142847406 151848043 644018251 822862858 455693199 803697708 98830594 899885880 965988383 988223169 638470204 937351957 926026431 972889927 925681781 932789227 423478422 485702532 623126702 887503875 944996253 954262618 965150983 977849706 25122316 414759193 106133456 573644031 642468339 953649420 823965446 826784641 620631354 984405981 115198667 291524380 135424294 706821156 378818025 468186233 148784373 967517699 47037588 104249726 650123950 911500705 45929797 284824612 749143671 831050086 802978261 965082500 918186443 926593331 882738054 909807854 499076228 748763590 990328256 993889904 296197053 357433432 734952383 741542836 630493982 812946697 817506373 932409705 285545280 444279225 661096702 761106084 381214765 610492116 417578373 657985931 189810772 241510105 376006332 660059820 749062058 824771727 419499269 519860045 301732308 994875573 480137105 896896749 647700002 744379692 322738516 878882371 271856693 447727584 329774301 842974353 887021168 898708677 336026997 742337177 368060941 681903933 745099076 790286442 374592773 382097300 428398506 791723334 26464932 433905705 889924632 967294923 87305816 254116094 869752354 900078010 308990423 882463161 308484177 883811227 76555100 670069319 828436107 851172875 20309049 37877260 969717225 990013052 264594992 374340439 990655737 992290595 403084752 674289548 718452968 800013997 780620368 835769699 926300858 958340008 63775864 620266275 359806463 882965603 682168301 849731212 640930059 787084001 940483063 976359015 905458987 965438419 695328058 791540985 104300548 568900684 807565897 819897240 462393034 895642660 722135981 741015837 504914055 953035825 290214167 699551822 813219956 992806730 8209631 929941531 870364183 878294181 428969416 640469749 257936014 612166589 136352095 736192727 264029110 646682498 286696271 927739321 365631793 525443332 184804172 477251848 288827711 584497966 883782021 976902053 995455813 996319591 239280979 736651612 721058672 769513504 730837698 900369206 250166931 690218509 938921015 989889345 259708486 922775141 741108505 967624617 914882432 993343423 529490658 975592723 36263629 693015967 508608433 948389376 639010730 765335423 862481098 872131559 333169369 413161747 475315910 534924229 541410469 722244548 355932109 607127434 204053742 412663601 754374544 881114792 279974441 898271176 466574255 649248397 73114735 198097110 118417663 921500553 812607889 867470555 290539837 634204601 410925979 479098236 416314597 588759498 953063498 965402936 538086671 644262431 26376694 521661311 787207150 895178465 102597949 503082546 191992421 524878025 255556710 931445135 451702521 912421687 53849639 774677726 327227317 780759347 627892849 981567411 886645187 992560596 207534305 328150791 433554524 528306648 484400593 569112780 906119016 944807026 355101285 842494628 931632994 985987654 214183400 307175740 965227695 999857176 761013245 787905621 437179644 710434434 933249729 979451802 361616073 872370657 853706124 993508215 393122842 951648574 296900696 472482565 806676431 884341603 185220943 882595576 457889718 659297402 526452927 861825444 475249313 946470283 386273397 840531284 315998985 963523466 255797925 664489671 236183865 703106575 538808543 945997404 803073301 862718225 236835770 252298206 783737472 942778597 84611960 207572972 939789555 953140868 492536858 785845785 873543177 892278482 638056329 862026545 490276882 894418244 596811192 964046078 713512672 791436755 611633818 638580157 947074143 993696695 871900773 873689918 53940042 701219456 62838855 640245352 565200049 640064834 694039084 862056945 291690613 633117873 671878895 964390910 56047615 420089131 676969636 728569222 39231408 925168738 161427435 281743064 423288394 803081723 640897852 689936938 634025074 715772016 334751839 619571053 333415510 617769441 645792387 867259468 788498229 998448594 637359748 768607880 493362253 564919607 303795611 785707130 754208732 952028817 377293113 851842674 183313453 747962678 87987304 147556557 122563125 936904669 162978899 973648950 677699995 999502871 747859404 803597417 812447359 962424472 827829832 870279013 436444701 508814444 894786441 897206898 931274279 955241410 511196359 848624526 414989410 740716655 891157407 892419988 454519504 983036337 984723943 995089754 879376385 887369227 484293185 957693976 602262538 655278441 894516662 964636096 295433687 769303042 859089254 917554606 436582808 591498552 438991672 976395287 857508494 878955273 188006324 776796323 367309124 572984924 713185785 793921534 350883740 921950133 267183869 305391572 992667252 999592292 84242380 680038350 897927425 920780353 836834068 847400830 334966522 744066056 463238521 581365381 532985879 810473198 212641837 924638174 548452738 912683168 546158332 633125626 140532501 846833829 119770091 569444084 736883286 959047311 896933149 976752469 303269716 664492289 282096272 476634872 41946090 390669322 130222921 999092289 391698128 533196716 684862000 945668788 776070624 941590766 323413328 553361680 649784142 668472502 375223719 964493619 70345384 154478510 315759244 318748872 173193607 492164285 554178749 613404690 407996629 712363294 33013550 291189823 335802910 336903909 463350148 841962765 623874635 632637978 55735749 710672709 488848241 892095531 667071207 829178357 580595659 805887914 978247575 978850204 432499301 721602377 116962171 674683821 519392745 569189196 594385338 615636883 203661270 638851481 508046174 660357712 316665249 654878353 544376486 922296816 924146776 949690742 845641428 882528445 750211097 750836159 57663370 745260702 831384551 967829922 914320123 916092285 447480944 703079924 437642728 994969058 102270675 416402157 713994584 742082540 21505028 993329497 663543017 845760129 361546110 494163363 345794531 858097405 542072425 909411458 399604857 990214755 281200990 992181606 321201464 895847238 872079810 958801485 970852663 985570418 823667159 861921905 11740856 233374692 901291964 986207584 345668867 914330260 257576015 822930914 106228186 483548619 836340252 978513387 545984408 695247657 569264950 735346663 61108370 559222076 660637956 971409368 350703289 543160772 280241171 540809127 900660194 918179660 817333950 958792131 255191334 260098268 341173586 433783076 333104880 934571287 215899623 348150415 219255999 845444846 134579717 532485022 718282820 977059685 89531049 904796808 830168117 990057512 556990319 639984311 557149893 679521229 766629219 921280707 732300001 914964061 971299887 989814733 409985900 975421985 506872200 671876363 693374571 979009971 495731055 642075809 358669457 802888099 890843282 949606173 470101626 676809657 588625605 733875029 74169038 283361590 77418876 587509938 915663181 993092071 302860255 937665746 256885254 287080247 736084037 758546270 609499316 883371739 364881553 408897704 645130004 895408482 96565782 945368452 269728658 560208042 571107839 874388905 169868442 676247013 525919322 588188045 873578710 929662313 798858238 888346164 664692937 879258749 428726039 516835544 383162213 689942678 313319244 684271741 21673112 835606862 462621428 927774554 842826210 973547462 503735809 801181445 877187714 921950672 471029974 572550847 576933573 613616992 288330833 796950631 288937470 458746988 716849950 850022579 614935143 629765616 141044583 380360089 451100732 818691312 550333922 874294793 26245516 255821398 46209306 822656363 689150618 795469009 617759908 786775340 88477081 299246071 857511032 933652026 142900818 242380792 338288000 687028942 437666811 994602544 628341502 799187718 798670458 951979496 146806694 521748290 73391963 879597004 163974937 350616727 627723906 888203716 125709227 976680891 686109262 838866219 57980376 794650857 279061018 516092414 352187120 522198644 483206017 706629270 532629501 601567730 864092950 869941356 672835391 809219616 878814533 957659246 506252482 600075473 760929819 984573985 858222212 936791581 579027691 737600895 734299216 958840545 719125059 931947955 736286865 895239326 73271193 105870027 385863249 784552047 403027692 611914993 875887063 913674882 15612709 286698602 782818506 883677266 562156433 696874490 389855101 899336298 849863245 887675013 442458539 550931901 612192145 999553784 427224737 689533334 20858132 680597761 416352368 823810219 240530210 454219842 418320348 904325915 539042442 802167793 803761814 940866173 838178550 878493261 795469715 929558664 872455981 896774725 461192761 787096678 836725096 957149455 629687640 675210790 382206192 975555975 665557783 713659451 162031856 423928550 781642971 787182516 749922714 975663484 220596649 326713263 531591091 589291940 817680811 925895677 869429141 890310244 169984561 449616700 18067071 583472115 67743925 549128648 819320943 848336948 528023080 786243242 765557758 772908548 619880731 884794807 244686568 526400697 302174852 587863625 351130914 891623556 125642147 458307822 260236825 803911184 714178705 879864079 284784327 394787910 676500857 958832444 90065398 907024797 446278969 542739672 851401394 886647346 311310629 881397522 121566762 841553378 647757290 846041244 892353964 950495251 370056833 864776502 280770508 765943954 256553981 793279514 72898451 554214309 657229110 946793822 232245267 483384019 981316608 995114507 570021123 791633998 104610519 638169131 202411809 519131084 5397540 776870111 803453354 917991114 930775443 950411647 274148831 661411300 613795039 857564085 389454333 486953819 183070120 520617666 288250621 436387305 883469999 919697790 99893443 937027937 58034457 685515045 183812559 522828473 928600533 980437125 901848948 947456254 737437633 841460678 829450827 848937088 263107648 298483200 2996769 509976038 191317374 731613628 786960269 945684181 483617267 830021446 664874023 877951969 206744179 565861389 754413361 924507715 197383666 988934079 758565361 800221063 275635268 493777718 665883660 840156065 844157012 880694413 81616743 475312612 417773702 954252317 618304168 914756270 56193199 881114405 941894390 981378302 398673916 556475545 462686326 666881695 941148032 986964254 527103990 732575774 208136240 775054253 223272862 959410097 104174043 601973240 773578692 838315083 639605992 671252490 470832639 564039560 162010535 961172432 827625268 975168411 442956484 485953165 255842146 758827072 817828237 974525934 965110017 982048312 276641721 706250941 76316713 825337301 191359775 696265921 861618375 902594275 455675108 584883100 115050645 581810211 516805905 918101517 8039887 354889395 22308352 569095609 212162455 532793634 984483730 998929229 899943721 961493255 638822674 994046129 255572266 818378922 879834306 917607792 405766629 519232372 859820027 994607842 513557693 607439037 348970058 594292967 9849892 324853666 914331840 954052993 411241970 971688842 512516548 719600599 763785219 888385042 484272166 909069525 621771948 700603118 106218408 962136744 942439188 991747849 170101904 182562925 864977500 967918336 14804463 462327391 699752790 951070639 858748637 980897195 871472852 994641852 358756371 790243011 258960516 681624387 691126612 872206862 368878456 640584132 970978092 990510807 181035020 719643647 853159864 885386635 335733005 699343201 972143765 997774642 15296836 404914131 673901701 721858529 386829939 578845173 427995927 930033856 880948698 882456779 863494573 877267156 786053904 822823442 246735136 875234481 368959993 450308689 503104763 972062697 566423515 696819492 966428914 988000870 428046077 726549364 553361848 658490900 163421811 339177265 91371326 207335159 888465642 942032271 3332743 914613299 912633723 934599206 478501289 771022242 446401555 679534016 329599860 930491667 994999107 999425910 359986825 901127085 682885145 916983769 521324909 676654011 946264952 976192712 516911298 999996573 693462425 916403383 591047211 670529242 898115649 963894284 453478771 956097137 639202949 943410739 22644431 908598572 725435318 817350853 21295328 326682851 506005726 591013248 917879185 971514099 738464157 930588946 594214832 974307020 924633420 931814553 612376950 692175968 821429818 905602306 368379505 462808248 63778090 197578357 968525078 996059220 777271615 829347014 331623703 349444593 265403169 306912778 683386472 827067832 153617468 349763569 615348886 894779392 350589590 534726951 747502233 749418038 248132306 599877816 916861622 958502168 986409435 997805944 750154776 789186530 691133172 727585925 369026046 657247993 169658663 943245627 228063436 337965978 935372879 993590644 195639656 911863858 81236553 194250352 105500288 567424023 835863716 976623743 76401043 312116620 136076380 521153454 831559594 851549279 161373695 446758310 656309465 762198549 362152933 532168103 924322306 937240261 163363901 165747775 950373052 997938298 921012230 927630166 353163424 943619260 917228377 926113344 92969608 464618672 901281724 922543393 627182328 854882937 695409386 777674639 91808752 237459158 24692495 405308558 792838340 853832192 65292464 128447483 608437131 669057519 371482937 632208792 724648472 802791236 631944657 764959595 810100365 969161643 99452483 949314728 121174570 801640638 337066806 440784276 920304548 927958944 711383956 801692332 73983579 303595612 216133569 655372644 449176943 763493280 937844804 956003827 516998060 579843079 776026323 854861159 886919945 981159704 430221666 782372863 296333470 688582948 142516282 640281708 278992017 436179717 877357956 922371026 864060666 876970640 998173592 998935995 542882485 746069617 972989879 973448325 274055129 453445702 886952388 924391541 326620111 849964700 277119250 513999930 870055029 917780176 462508322 491261259 79748898 660422228 527899642 930618773 779137089 878159935 547975434 738257344 979779534 995996226 232308026 396169990 189893084 961900017 395675213 784161348 640202844 862486440 449162591 519038829 439454299 830761105 248456898 831113428 251636368 831962094 230117390 702652071 45269413 373572553 23141122 573200802 411596512 877992001 292881489 540605973 325153741 631045702 416048850 596005881 34444423 35500429 931081802 946115055 896391340 961915045 721421256 755958528 90634124 651983969 518916858 704020560 525133776 825820022 146456484 751235846 607082268 634116181 888461663 973340268 310345900 841215924 602845090 875189546 331557769 483016410 198008717 861232403 654377415 849914673 237416087 925383439 235288348 498377373 620790807 942743530 967805178 970659700 851668262 904058543 663283942 772212702 620784854 861799434 136468754 583845880 494659689 684318393 325742824 603749147 80487302 543733270 440036561 689685260 986799739 987826379 219827904 357843943 773794473 819689095 664068627 861756369 678223770 873469853 415705746 701407654 244796398 982901572 936922703 937262338 337174220 519216788 47298791 196719899 110527990 726136270 539449453 925622332 358386013 552898728 55874145 378313068 921480110 967411530 618826466 706061431 831800192 892086797 387865739 895257410 808742898 847550272 991154308 992420918 981753737 983064200 392694010 907774552 930661768 945429412 489095663 758871406 170378717 196070773 927894949 941147924 601554929 744746010 463928052 540826943 861910840 974780082 205314799 336720441 182564926 263689512 610189311 941016226 882331569 934511816 709638187 783583036 692145854 910909051 43521572 852417611 783453371 949704021 740456829 777752449 349739182 859830136 17670767 310606632 929507626 997439528 454497138 932874072 536157580 875565698 491773649 779880148 318734138 347659560 842166521 927256492 3940851 734728613 39760439 708115808 259753687 748232685 506759396 876562370 166292414 193670618 115206088 157846020 844413120 868215454 237194987 330361694 343303554 572232677 588486878 823213807 939899917 992289203 408125961 983324808 136397348 507848727 254508026 875537837 654925668 655618158 833601438 995438257 587625316 978310035 426526646 783925659 163499778 946342394 963788957 979876487 11547071 150825167 461436357 504561546 493957626 510990302 405538195 606805965 476047064 800371283 703857910 838077665 584424307 910252266 966032635 973366598 640136346 831102222 167859575 723223533 571559231 835856754 718984756 759103627 306722642 752094353 197121004 232514868 369094523 768913162 399746538 700727403 613193497 659813851 295515798 422242538 205872699 592943250 443767827 933975385 415755436 603261500 749300488 945928648 445527143 770407551 793963645 941678061 656416539 986683061 439591419 865782690 783713663 918232533 385143592 904383364 195839429 843206585 93593891 485760380 763784939 812246687 688556032 754931796 99963488 749687052 590504871 973703625 801926509 832026451 420382281 509803558 143961368 482166792 767958533 871205803 968012324 981978976 326829870 524288889 427403403 940010228 899855844 931279943 813838730 856281342 607737989 875813393 123708545 387165029 650686685 920815253 626517055 634049785 590999774 991148791 675434499 853654629 129564228 740603863 971322284 985006563 174268489 361070215 599938766 658428061 467602928 876993821 753646426 966070752 957975741 989197640 497941188 892237672 730607105 797133841 221356358 720977517 959751983 979169150 173492173 921965354 466915489 548348009 583092701 916714662 219462651 704427185 296079189 339700236 403180893 633188668 597970339 708845970 550537615 561693134 464301769 630075226 330489924 555812255 644722252 949574294 8021084 916114246 125339038 634748037 842280906 959445496 129725348 532910255 302407179 863336843 203551136 800700509 278665044 745785556 41467274 988823226 649212676 699289213 198305325 679361703 933077052 986312335 449224208 857309997 375480716 399556342 374566586 734715735 86426607 512788287 62578678 466591513 450501814 665237420 895921912 992855677 517181592 608341699 407461553 815924722 886050521 899892182 387783284 666744401 413290491 456900315 316758815 750033978 416359189 537274627 117903765 298949345 667293779 850738141 712199016 781635852 141644559 755113249 559346349 808146324 896014690 978291201 113910871 577039130 627304900 677819494 987120404 989855667 962256165 974248999 113868466 892804271 686964390 983751178 661455124 900523712 885369223 957241091 553690421 686425326 905040908 920724003 108844678 709974278 999877266 999968155 652917720 948574766 956486207 961848121 897664079 906837611 947835726 994758148 955191541 965772384 415539643 418138111 13459684 19262238 771924537 839459163 751632784 924368990 702604588 802782769 344972158 674273622 20359487 533717705 680115627 827651844 118868873 565433375 74797169 594708410 345434936 907270424 189176233 472223674 821787374 910418162 994624190 996076210 911748782 959628816 599911225 722753530 906716100 940001652 990884951 993068074 77610618 917071419 848641783 928921988 59289140 286850889 708866030 961125115 702951054 885120541 912276553 989328646 531600340 714718120 332667170 561889443 819019599 865193476 977965863 982109788 246309724 581696002 317683159 482138870 556124026 952046067 309684034 551515155 157113883 801959807 208657631 905853276 186572121 783509401 621222499 822922400 164117855 546126569 422727415 967279629 184033569 595389735 657254714 796021628 90063958 313341111 552206422 946066343 425498959 915362278 694055021 707971933 218939313 515026729 901929601 924651656 562350759 770342396 474753302 866135333 82805778 170711271 797809646 883384833 412943540 757154032 69042200 474292538 431870362 996308096 83850909 514511457 608379829 832032091 887501516 945079813 603797001 927244503 146841590 244419948 540203042 652443560 37096800 752136397 648470303 883663204 103828543 361233490 513896417 689123660 196350342 757725960 395936307 431383319 918193486 965627353 808225180 976116094 164776361 211875819 208560328 886097976 785342595 958183168 276189221 622247845 981724228 986253502 123746225 434112046 981077090 998873902 535617365 883641634 253043992 452993124 184320001 429417845 839071170 914075523 394141969 671730603 9282133 891850226 728403967 945248081 816643047 992083204 341467877 590120514 142866309 632048136 120396594 176297088 447556561 720506868 400200457 809736730 442764392 444886095 53432577 148482077 13182975 488243382 658525892 707620877 909099358 945140490 328743558 861055818 475604401 717013800 732662011 882595454 516920628 701469869 818291116 904445204 642476529 832997325 912104145 962334945 131505396 830378290 919889382 920330713 269271945 529281641 452580453 880320499 275044340 878922353 558092070 825644965 108130946 425517807 391069805 824777813 403186 955208242 433616313 474935674 317889643 430629258 616553611 906888639 576189430 668784150 425866157 502780631 140753723 822097007 398393264 879429064 228746697 285888082 153637325 791104013 430679205 938652021 864428785 995683039 211218742 959073813 385994557 964287269 325746350 902623466 861235355 948162852 233392741 833412724 629931092 979725200 572287704 862077726 652722154 735245255 306527125 457601145 24042898 609498014 657304690 927211819 404494348 856856678 265488596 402651391 725823313 921689222 186896279 396145933 827619816 944954019 34659876 582922788 114253751 945060572 560869866 794447681 994187951 995027308 983434413 995602151 114445979 411351298 562280468 866773132 304573046 814983798 456037272 972211363 342619379 687825033 860371326 899046255 482325899 955162505 780262806 798108033 848351883 855233207 801463826 953146735 707417828 911956356 398653459 590098370 253390573 964016816 742833138 937995559 342710638 666538645 20052922 449219334 23701582 521132373 747589848 849809551 29224838 690883934 419072352 562093918 588572136 662764879 107350405 397000536 334640615 562049963 619519772 914874173 476822588 584483810 173941577 806497834 415211549 632143659 148447168 191884613 877112859 882287807 804178488 940970820 969553567 981860092 424981604 666933794 67329741 548340534 121046856 802291188 951443206 969023445 793147142 956532468 15981827 60643628 701058129 862586040 446265323 744190283 739661478 917471607 584411501 589602105 906730950 975599321 962766178 980533115 136038948 807487871 453837931 799952202 792736403 905216996 578689678 594646424 780960066 964414650 475431037 657815616 7550007 711901244 583469870 985438718 51593425 219270527 475947959 850958482 463651684 826298019 372891451 602098359 586252452 778986298 949092201 964611078 650299187 972444849 629821770 812506141 504534691 625018169 56252873 263686401 336432818 838943985 425019335 665881775 740788852 800701703 14575501 682063812 157969338 743297773 719206378 729107764 117502618 190791286 141789063 550120108 550339556 873130559 449214750 707834423 530203902 900245369 106663511 356776530 680049755 747346082 979295764 991313632 475696517 708568907 914042498 940628156 97823226 465351465 397380616 915827548 148398133 466695673 79600660 175355608 223349295 715405571 8760738 705680423 237667157 388441070 50082286 383263372 316823837 937583688 10421287 396841790 332771345 600579682 494033649 749874532 348766868 451217440 680106866 965014207 793862344 849607885 600383041 927771283 181939362 293615843 953833164 970366812 110453526 548755400 128457198 621269818 750451151 869727138 31934053 616670397 671926586 809386404 138522358 324622312 529461922 529469375 519206824 627892198 226136398 608452335 789912506 984633204 323537275 987176373 690328090 928598321 798479962 888627248 131130305 593494781 901985813 939780936 858176483 933383230 314134079 753568719 900010140 905668207 234918603 726024686 186896507 526774543 679421185 842458592 94205507 720206715 783726288 956106665 107031571 229919556 980364246 988333807 47407067 688732882 58297278 86020738 885234518 998837262 857503240 911989819 73923170 362085320 453951187 595833257 486431513 565657806 268802356 972107014 963137004 993913332 228564317 372722342 197877537 455181349 213500309 946287987 4941353 63808779 937130086 967359526 441150005 838358706 844515983 967865366 280617680 842058121 386351823 627411572 393119413 400714766 142320246 826972643 911199576 969429356 76810951 283205169 902210471 918617595 378401720 586318662 633918574 924753721 457925650 836839406 704433183 904809390 833674549 926061280 59654177 417976046 10891447 728993996 506746370 545271707 936315677 958397663 159957559 802316191 570225189 994438670 498973700 647152430 106833591 138309098 481909162 685927401 243330141 690709799 912177694 941296911 249154174 630159273 127100967 278114385 991115408 991393308 553326757 959069483 478973601 664896568 887546771 916253634 747508194 790188390 207817542 796395242 100383311 414631922 483365606 759770254 148799250 985640429 430045760 644425554 83984953 216797115 315599912 859625345 464801325 927866080 467697699 567138466 725733599 941903853 357133600 712529124 791238786 894876655 446433585 811088081 281594956 745521947 957771962 960291873 35559243 485721957 708612632 934967990 595239477 867106326 124616944 517844821 136040253 166633423 712361259 831138954 786856904 844342839 954889114 995945407 782236649 870316438 927831930 969294198 346136033 383529778 14794869 702658776 438987019 751196084 1087745 942771143 351069082 562581869 701403105 823884557 952662438 954747200 63031422 681362010 453067874 527415014 831049869 870816224 224632945 840228951 149068523 450880902 89587832 469852244 227215457 985232182 228505102 264889009 717494871 909955878 633538605 700240892 5626536 325419160 59438976 768203306 434689085 913212574 813174878 828619593 103635704 410442987 675667389 757766441 852780967 926317706 371071232 421634811 990358211 995416486 695961538 860752537 487518399 887034402 478260286 786249898 430024586 767501846 844722264 902515570 156954795 480129895 314693682 528214572 642101053 929385898 183209572 559940246 272914887 758483531 79191060 926302549 389969505 582068334 371950078 628913582 16773840 320436353 519558145 528813291 432048919 566141421 619945478 889001990 794615129 875154861 704217534 783225826 758976930 947408016 4208395 938527167 354226189 784916131 823176941 940550530 345177574 345830032 588715895 746856683 236052068 594851578 601705979 793883662 679449170 782319756 768811747 944304208 11724192 219508866 772126825 874805467 7421013 518542281 961994517 978365746 468095571 471082524 841322892 861831914 193694678 843634695 484485084 714679483 844215197 857983356 224622269 421454866 777183097 879587030 110576007 749525611 824741235 859994960 378629240 918870984 764583420 881745582 411418169 976228447 28380108 727024091 546052298 597638903 3486643 887288775 682668785 900158848 653072427 679184323 381495977 705131238 405772248 547988221 546919158 896350111 998948271 999683158 933857781 939728318 840732264 843700787 572627212 745183095 389009308 703270759 346674223 759773080 144060996 229925118 678729960 960753219 640121196 791717162 505492130 838078559 470590358 617287763 48141315 665570807 720259683 909744688 4694714 394099190 921259953 951177632 339907654 389874463 269393818 562748027 845974838 855657980 899617160 953001238 909478847 934246929 413715855 630165935 422315948 546356094 339379088 691497277 122130451 505871169 952920000 971007813 416361572 932847700 13004539 459889282 703290955 977261918 574925728 666587786 640636617 664645639 115564713 137317446 974645000 983025815 37559644 93494323 995216539 998848598 974027030 982171645 696982567 939158823 66268180 606965575 901117477 970228025 776778093 788305097 315680534 546087338 591818345 923232260 352985985 863631317 943049854 989062723 540324801 593688641 161237631 873830299 623125405 818834818 624253340 629053819 847229607 950355125 68678101 151318075 111055425 238909202 895808996 930160841 48851961 925746008 222989622 953680688 238467213 816256975 819700604 858175316 310387851 930061973 272409055 443371759 60304492 859821711 654660877 742382187 364665529 999230361 486219606 535724305 597401500 734148412 196342107 546370753 330995614 569934017 902190514 994041319 322329473 407336440 287544162 598652882 997949929 998310695 465722345 874993935 74002359 535377059 755636308 912202691 92663398 504237353 62013281 276842008 551646256 798126365 855114591 949790487 845327828 929667222 145078042 231257796 513651462 677262977 511363357 925243469 842761532 855109557 994698077 996387831 194115162 486264483 784369069 999876752 583436585 773319683 899459957 940659205 326800661 770794018 226516777 411698430 572901134 689247149 232519962 373130467 312280664 634089597 282746158 671921621 121105474 344970376 507235808 998399742 823353646 863212103 735280491 925624512 259216658 484342312 509196545 587726497 375149808 426064561 329550836 713329249 899529220 921295289 68229935 525404839 667089955 861870621 8010609 901067220 390366534 839520403 593361267 739685320 161901790 563899088 266267489 846412082 111785203 720406892 550643730 604745790 478611136 872828246 707913869 971921891 735821644 746432526 998723016 999633596 759650611 982162820 425183187 580379749 824763829 827447444 194871387 570729850 626039075 972538744 496727014 529493270 319903419 632670924 344482804 489156152 963899953 978017180 366217818 391660103 95264194 766520919 34987865 217428556 792517393 793685805 572651885 869463293 141227415 927102533 312734296 466709981 854645548 998300460 576712750 625120676 265585011 834957093 867065579 898517438 134041646 827932879 407512905 585163498 175385924 897194911 447367214 621478511 29067985 284212206 847436317 966639708 772363687 934951729 798167523 961431098 638140295 856797788 373898740 593624354 838611378 988121294 502624754 765141652 449264148 727825868 860997198 993794972 524463590 793934221 624405487 950327095 84773353 992848888 708900489 809893432 107440904 888993148 186128398 346030970 113445621 849065265 72207588 348043802 625858717 888503832 925435012 954171735 653808709 971435264 962776346 967470234 298040360 577162393 595187435 857782529 897868336 950290454 583465553 924993248 424162884 434801125 91255206 345271045 977586500 999614989 484591612 535156399 897316371 986126376 468018750 814704497 21806802 116003467 500456798 864653996 870292567 981442798 456137540 599567584 577675367 974378014 788643536 832768552 258531113 746723077 15328086 434853230 931820137 998570738 678201833 905972191 489852403 497230326 487565573 859091154 581813605 949668057 84541650 534500693 572717794 990619532 948110142 994833217 775987644 984472407 428734478 832509754 830561447 976051064 483252507 742842183 449068030 936666566 833211921 855878846 501160477 580510763 923446422 947767103 562079770 743813130 304776301 970637441 102977770 602608733 948024841 994841947 956789928 977616874 775502724 848570488 398122640 477201838 738490165 903237174 287324885 377389355 310979051 601564548 3347741 605599241 829608671 988105309 76034164 123853389 479883130 738547398 834099309 949968196 262992484 651118630 83110638 875534294 285021270 873581257 253882626 996435061 524145277 967427297 401417373 949103182 770977554 932382862 465409311 768857252 137807144 510010094 495377447 498075847 569499909 795500253 702813247 742887351 699225966 974214268 304570143 776861105 344446080 936458768 987568966 990298557 597838458 656104828 726934018 964496554 839935779 903267481 770753131 806726242 144654955 235794452 16339159 491225645 859741343 918706592 387483705 782132616 38503032 759886246 3648017 60991696 538548742 943612760 329673996 525306081 39606420 401765288 208566495 912881488 835103653 907426007 273850502 567773322 245939295 695312955 344312343 868212272 418735632 728479694 397767020 734476960 165476096 626450907 42177113 835311645 144427262 839943934 690154105 845901565 350893234 978994871 286174574 870258383 266740119 987293417 778510206 972932597 749705245 985670488 651835462 923136483 147641969 697994700 239971726 525261425 729227379 818183835 121181395 382247560 191096982 666716822 734319662 920615937 708588871 751215154 560383818 743676848 415970069 599514054 190445340 701834849 585026780 882807911 370900617 677159917 463797171 497310644 718446110 995290008 645868845 911304862 44374893 99266215 968666547 987834563 941164908 999572539 720288746 757882768 446340387 770108991 742330442 862193770 713191371 719454476 293323071 856411538 88916392 781660494 220598988 603108968 779305082 874663946 78256538 214483056 640649820 785434872 714030603 784616384 43621450 831918520 355621630 884016624 203432605 495040746 184303936 872648707 777897741 963171477 590320039 648325168 529254174 741284331 719872041 868902331 428976713 682580558 427679167 790193735 749188304 871211639 981797465 985350522 573699125 689434076 498489029 890820676 789644762 850237697 442581364 950676179 79749644 843280201 341672629 677048995 623098347 758663319 328074036 439385039 812941048 890821073 213882192 776353128 363721963 698438771 355899506 690980967 425652540 814655297 662830880 736262707 530247007 897295443 55066751 898009833 585725742 804131384 676873571 833518812 129248087 321132118 741987653 991893194 394602848 906626599 640683524 795727279 417233544 566519759 940717057 954351734 477879207 888780484 567552162 858674959 471241135 848217732 702432507 997048453 960814629 980566817 659529960 842880841 354809495 371042568 794446101 839712272 350913860 987207345 822466709 904840439 217709546 306814897 232468144 380439444 987267088 999458319 215707931 733387059 608002706 812631389 496988886 510913355 248982437 932276703 85687581 731895136 852970373 888736497 409075271 790337651 986642497 987572190 402769692 451577801 539467329 588265306 705453134 785737677 696579816 994499786 305453811 674588166 333190410 568357869 551797476 692648654 161952327 776713934 362060847 801508542 827612621 862737462 618698609 971346298 183208063 323788619 782651497 783939332 33218351 270522244 645696484 825338670 701385864 791097317 982416718 982832566 945880929 956789932 237903110 601201364 648249783 990394068 937785031 967564325 541267818 584366433 31751848 624287559 304743607 785018931 497940782 589994165 774440790 783429828 854925654 947780881 638770677 900254724 301895450 877260466 656717802 815456858 623673360 841871958 42258824 516725300 448645780 942209991 712717603 983094583 139396257 674844553 699311554 769533976 840684494 981496842 169745899 564774978 481300528 647713979 844717067 887356505 233233031 880451556 450303656 755121215 719885191 986471991 211982650 407569297 43523139 484150443 894472024 898592945 203392231 382910011 520878005 653652566 796981482 810198657 582932137 739995113 335803987 582398321 179546979 364174958 219048169 272295720 300304049 655418690 776457905 911541959 263255292 539102785 521000691 716081893 238268778 371002153 635519152 735165841 2977798 273782245 80649085 570559837 279892983 796316618 328238835 934070518 692075639 864744601 282930603 847620698 89652626 561419963 612146864 622603625 7502191 972623778 341793417 979717616 965176807 997307333 758414415 792672943 577299118 992597334 909079149 983046009 503402664 563175173 144333482 669476018 696735414 894458999 907168967 963631915 595629889 813291344 796946035 983187297 151894418 160986382 510189994 723515863 455734286 459259505 31616896 681846656 801661314 811103832 167968725 177584524 513826769 587077084 832819274 875335078 255374866 467551608 471075596 823476747 675906811 798397567 517031118 927131884 924344998 968560294 516258282 545451286 426063361 906450520 236922863 963045780 857543830 939791431 387616792 652059267 475550539 898125874 679733327 997624329 794231284 896228058 844209077 870454648 102522649 140573166 966847144 966863998 267977268 388715132 527831824 667578430 740538121 912168345 278572007 679885906 883125117 995755822 107256707 175103672 132405760 674175963 225483358 781394778 639523322 820068752 828375346 876631492 589305549 739715668 32341609 719593977 792373793 842224515 195240914 335691834 907617185 926017234 625367684 977877307 777274270 839241662 588099390 987380993 585893387 952406784 927798767 936096581 635560435 812599767 117580363 760704753 64786586 464248985 249960589 633093463 902717606 981421917 282180349 573904031 43402661 873809565 362004261 587864939 904789902 954216349 876001476 876447976 679361845 927867412 189658185 681774115 611991390 804624207 691323057 951228752 889225869 931211905 822512954 876105591 546651045 808346407 781240517 882425777 870145342 925479650 964998588 968621678 65945554 421995222 3110098 905313236 158688326 981839789 599357757 635539959 288088362 496578497 925713609 934737932 269147758 561239196 413133682 606004929 442350904 503109984 768812158 794449419 49270468 329417197 447437927 587610409 729899108 909224206 266488218 839231098 830275904 955487847 775001070 969087779 348036977 957162059 216011444 591933230 709807589 796035567 711769939 964311033 714092841 775118835 700494271 749322234 469863739 823481607 143210060 991835462 893932651 917861630 81174252 495766919 699006598 832706199 710465051 756348985 210940427 991074262 584097578 690407577 770191882 982567396 26302449 952038763 946247865 984926665 822397794 977808658 960674675 979001219 697149347 726088408 780665289 996167602 969243705 984371720 656201967 908564914 721013461 874464505 134661682 825769641 23709934 751753692 981702669 998667558 699622682 996858462 445377504 961613104 129992817 942631343 361937168 566602709 117732771 969783887 961761751 967418782 935874114 952899765 382110361 468106925 333665332 345454967 975953858 984972637 655585219 822887885 332068501 518029529 624345297 997887078 608353528 791157162 460418101 838715010 161684084 804360691 319851903 676307266 186583513 232613313 846685431 930021499 15055499 691172410 371166100 682498752 573829468 736716301 390588501 663469902 910997232 922195430 425601276 522865950 334688717 407256206 990931061 997940420 604693518 712445985 35219213 671120668 940320582 990530626 95298864 205136043 901401139 929161407 937084103 953599880 181023992 228247949 227867523 291163214 469993454 996163709 782172328 924367121 912341323 989043697 428076651 909950783 484168956 763675051 389453176 921931922 771261854 820392565 309861513 863574031 135909583 981700403 320976067 950869204 945746931 953980220 31981892 686234823 199325369 330040478 61459871 993332184 713691083 733689322 550786284 658612373 190941277 298724656 762911901 804298315 696472295 774548990 621816236 779037809 393815656 816830306 165315831 940735870 81288345 558195013 509406135 638251078 915872785 996631729 741391548 812612351 996124939 999936756 781359164 929371057 707359574 823233595 425381598 787334542 830792432 836440081 84672625 820870341 750218428 867935004 913560188 952525228 877552372 951720136 775087265 830547057 79725867 825997672 725848225 995708264 63804316 201712749 586314742 934102509 507530445 976646967 573029485 820944759 183992111 660596665 635832423 988469716 156787452 860155935 301914625 811926718 998476258 999862292 708768024 989804897 153597218 673621236 687470829 909054342 722211949 853553439 971187375 988155002 163164981 752663128 893083128 980641941 319610839 872629732 621667248 684094372 722167671 809819373 656808945 858661266 296027700 709737570 277080500 504455882 377794903 440384694 444866379 576493083 311530838 592858506 765472083 908107214 801866875 868421247 987219350 988964861 431323520 454146712 93470485 404212313 805882787 985852507 896846116 934099092 392683424 477359638 431392930 492319978 452124570 495749446 440442019 987541040 409956690 612395548 880812072 902301441 114284191 612842916 378536400 686673986 764167108 843343481 186162529 528607743 82193317 553650228 445966375 875680141 508613908 922544932 714139136 967214177 52806349 678720778 375228159 499200159 379506761 787628538 161798592 189252672 686395699 774160243 505756970 520847270 519919605 713797849 329454980 480482295 167014315 748862884 531020576 537298362 939123737 996848978 614054063 628847570 708126850 759579404 289342416 546141950 584616279 983816389 251223817 606257999 211220852 344989139 65867790 751362121 403698640 972003900 325830400 695657590 301026698 736485094 4899589 173713615 456840354 769977108 224886254 948030447 40339164 599501243 93622976 145068531 998445897 998814111 109636112 642808005 493434429 945818189 567659420 780425528 979146293 985667068 658349596 951875831 338588445 956356311 70115464 897539014 897789096 939489667 489988515 663699422 765720201 895485061 995924183 996051350 714905859 778260088 876100485 952028971 550548702 914722045 95356151 204117098 213762259 235033850 305176673 666320168 752894286 968707633 910109607 979799902 64310090 297572643 906941592 942452246 519551195 540935434 830553775 958451166 887794826 935176895 274629382 831496233 452544603 470185028 75685474 139405285 388937692 397034954 807636197 819542460 378047762 865981108 378231874 780540033 68025243 384408918 72167469 168018842 11159369 125902097 46240763 852959339 828295013 858095279 637007131 757338553 729089477 931518548 832214208 844236713 37143779 329703503 39884850 310440459 544487419 985244743 241837450 650016744 727383128 779142152 665848277 763402276 331183751 604565300 82979615 105670635 947722889 981834321 101120889 523001595 698247937 784367271 365748029 929610060 304857896 645745490 948977749 986089592 362069178 577821667 794575895 851853750 816421771 946549740 483167203 636961000 285784020 827543731 993077935 999404561 815846495 895772278 150627216 293798280 303359808 473742629 667848929 721443423 906440075 925340575 54920642 524990225 494786674 638061313 882486561 984481473 906214828 993921228 846393261 959428958 42960137 487556145 371749074 675225798 30353685 634698700 380339134 386585183 563356151 810545935 264413016 855443198 23386408 93098215 199960137 913257885 794780517 917397050 620895012 633870709 548396606 909262393 436348715 591802234 10184854 18966616 546355033 915767659 863528900 978006754 409463099 462129958 967775246 999087876 72431837 764398665 41155476 112635707 157322189 837685121 443568481 802796027 295218233 820743495 356615833 738021979 575581849 759094299 424298750 757010233 380525426 901405632 600178523 679184735 126987585 422918808 221446940 624753894 211321508 817564928 307724560 705417374 827615400 922309952 954718995 982616642 164024226 395937589 771118518 926354970 252478010 878003035 254141258 293771717 20320182 619945036 51547969 304826514 49297440 518276156 813555160 839409480 327991809 757509235 263051621 673426707 166607241 644446959 691784713 755568710 446123762 959741967 445910446 541750204 341148953 602750586 754191772 990714269 918434719 970943184 761062192 891123438 857222199 972810074 968512626 979674147 850132656 999077521 194653044 698979564 660600666 725537002 789864617 805718858 522312988 866965155 619719909 844480685 190862249 717619701 573002499 737538146 315940565 565095573 455314090 507284608 1471276 928573850 125056552 638389399 558363272 983929715 533495567 539258992 77588057 805466936 808664573 842243501 657524637 919449667 801294315 804090890 118393360 190504084 72558340 927662717 615792314 909146781 117008536 605112158 324031346 758194123 889607380 919504940 431053976 828551801 383719665 673060940 407752550 626845307 327269497 631487329 192705268 259621626 485441731 922549357 104446129 930915184 622808966 937008756 550514834 869580964 460903704 663127720 199792401 660320282 708604757 926740241 965569419 982916371 258362013 269665706 770891570 864268400 838217517 963730757 488278307 553152370 871686113 950898943 450335990 836367858 531680187 585228670 626043619 656684069 463847752 960800796 430606041 579528705 709587388 815911769 979367027 994414044 105855373 307312337 961387816 998751097 668178508 892719628 796359872 811024198 49604635 99279131 210077779 262482538 858374764 891715388 36178537 483726063 439645913 664371523 435149543 695790692 472496167 858798967 525983278 795040434 813115287 824667816 332014439 469159196 81505168 416146188 15663934 407726816 286238690 601311399 179941033 816162798 820013904 893705242 849487307 874073618 301196532 444417922 609114264 872538128 485443651 715323913 699633402 960303750 460940865 996782700 949736544 953688375 376942844 653591127 418328933 665002536 734542418 768487522 608515278 704930886 440093615 581410712 52155792 491518095 738684603 770398326 713836515 995603432 384388607 627960788 864574800 923188103 935864830 970727547 152130934 513569577 770103685 981889032 317807237 681379340 494637434 763015698 201240381 236668130 49493448 778514249 950444782 961362407 219847427 984201121 96208231 179703334 314601012 584085719 675196942 970334744 848291087 914268215 959192099 992533862 529136833 532517029 210130319 516810271 82298832 230361764 213779060 644402617 91914176 105358892 940357459 949970101 899428487 939575297 462523347 721349077 483170745 880339390 875901117 981724464 63738510 257374450 346901248 935778213 710479307 960456759 218632943 750857543 557232573 682056269 296611065 966668859 87705759 120883347 791957620 947307941 484642097 621031554 234717485 609420798 758034835 843734198 131926892 405231434 849374517 880477673 548252939 895859629 894289451 971019858 230610101 778858679 562422439 663539754 513207370 911765450 380050824 788892926 719536050 835794693 518285377 566185918 804737084 893986805 297718048 766500061 672876958 809632539 447400317 583391702 433393710 977401272 420074988 936079785 870629658 924032209 575219920 860305123 256291953 826140777 713023155 761199209 725530358 846104139 345668496 697371203 275551216 478051336 719339625 901667547 177053370 299602731 424939271 660212023 318897565 866332107 812580200 994718969 489912010 820824983 380038740 770717655 403207535 653713733 280873171 841089684 927496126 979735152 280864495 966250735 869468345 950932843 327572393 892340049 419646985 978220046 671545751 998301857 29108757 199369961 815486392 863957002 906161509 996843966 784833010 794677429 189914227 611355475 92142629 428749750 777488487 981794717 245920874 395202881 768434409 936455555 818174361 955434973 490621487 726867340 84498045 96575941 860584776 909517583 112429258 297500565 787892853 985863833 443313082 463794823 649534001 752517524 212387778 423107283 31062354 925503940 729999532 755542542 761035359 781903774 895804086 959255394 814619178 972218246 257781606 927391361 810019329 982769182 276670720 485492039 387283260 452423402 915687505 971310130 636722973 700787229 874028878 919176384 293560286 576924049 330069623 848043989 670204929 965941572 95112215 936371546 276615326 860372869 485729511 727813902 317871676 986317182 317416298 981585642 465550152 937518767 691838259 816918564 802883465 939089817 715501030 717081054 831383920 843908752 670428500 977673241 470877818 981990132 309988571 994928838 524946513 681370698 68738268 387536250 126314631 528586005 711378699 763336943 917384793 966600127 300840219 703298716 956425947 999462280 517116874 653679250 792207147 849350641 854872769 894093045 810606249 847099891 644589327 841307092 318336280 898523195 542082760 801689599 36262126 510092956 420061813 865706881 193715524 750978203 264689320 756794720 396796124 451202157 899984026 929071741 605960220 899362972 783183515 914066047 866465339 896595473 103011435 213908224 593920494 895373557 173822086 921580107 823479999 883574357 223779813 306535186 721958779 980282857 380196129 698932921 273832943 460430400 684420486 724963679 251546357 957685470 565588483 638801133 132207469 833831684 653455817 924370137 253146228 404098476 28049815 454580292 638086544 850113365 410669826 450723637 568914707 816087061 112062124 207471618 105085947 900318578 260249951 276180503 790199148 835053631 377808463 615380186 596444075 672866154 343408202 829650734 531969991 752493981 164052873 879456102 654476921 763448164 991323188 998870132 270445607 336034449 660663277 950089345 755705887 770816499 101584686 323564371 379469711 845855570 632545082 738275572 580856461 951431425 618845249 792536729 581274021 825247558 466848745 857959656 658123784 793141656 403157558 908378505 553774945 873038075 232864090 757374658 301168599 412221263 915227907 954714340 724305294 981679987 878059406 965266719 925486205 978522799 810862149 932596088 165224144 852448920 445777459 636270429 737143972 977771185 568615314 768043154 435100349 926160106 705655003 754994221 640198576 640541977 479018984 888269525 769677562 954030738 716965125 937929554 768040560 949650626 181243206 685526492 75790311 454800674 25319032 873890618 174816411 635331217 675821622 896522002 633892047 784774152 421241418 592452513 637715715 917323057 841644056 901108852 828024529 959074128 888180476 985950414 309666036 768451780 136067139 827180630 17485511 995993070 171389117 326283608 409112918 432370477 995822212 998735107 51825879 385429156 348135312 478173166 15403075 467397404 914503681 983952833 374875538 474680270 651757336 747939869 372935617 437567307 293124500 419200321 147113048 647405871 761661186 888200330 342731973 901596514 244272510 838173152 913114216 943795948 667493843 980849705 585820361 912958337 948339143 991187724 710168726 769939052 911336144 965651685 599969485 964766031 203419993 645635335 233340091 451728450 72904949 852995156 266862635 314869209 312601439 448231858 158327460 738793380 431412336 681716662 734911815 896000154 342933942 448977034 875302037 957919959 330865108 423142273 871331697 922942632 309539534 909268719 347481709 758513326 72146855 103242836 648765425 974190627 709623765 946086448 508956964 619867895 87775418 153076302 836266063 948076960 205700770 406390281 952928156 960250811 72396412 457865342 104020338 675069506 749154137 810316157 171236138 236046626 659832014 833969663 94160664 234273608 315999274 978935193 600660043 932722044 2942744 165992487 981570618 998658610 734491642 986738077 909420547 950978262 726834502 810079059 938617326 967785941 427835322 566315689 552870050 860728863 89204972 273359997 554465035 806077787 528160862 649931742 183693415 713932855 955248398 963695011 127144126 895656491 781686751 980792038 329790484 766335882 189254133 898375962 342519438 534117506 164425202 822542578 824426008 897883769 359294922 916829167 569349360 990450527 611989889 962904787 275467339 967454949 900954154 924714929 490776483 538203690 175297461 737970764 18564968 561164547 216278420 581658225 343570865 931524356 498604915 680834895 539794736 582997144 580923825 806923141 692758064 975121743 776885800 937051954 452149992 796243617 388837089 972866101 613061713 798763424 859788191 925446971 696545711 855360698 787095919 943352001 503995245 776654451 551780571 958738107 150038522 976388960 575100895 741507905 534567664 591876357 882397429 949956160 904787397 923387571 505108800 767009602 802081667 945835353 516435988 879749202 516758658 735353742 885991842 914625935 915337523 966555725 101818931 245656368 697322807 768040829 55049997 766175911 366971759 772292719 504756376 668650503 422869552 564651165 666965159 702932856 288030990 861346554 706264324 832326138 504087061 643667890 721061876 829649518 342641847 610067817 258536872 980911065 857784889 869168852 534015154 766894669 544201720 852723627 593802298 872461152 626613923 848200297 849335401 914963718 186390102 497196036 172744532 913357413 345288717 368475649 668001341 799827886 609205947 984539657 600409797 732586857 818498238 967033349 973443937 982276476 206196063 290237358 104810680 804998375 52180139 851639032 662362682 882916475 834777315 978396229 264811416 580046218 274827789 728640907 973946036 980119582 51295999 369938660 504472926 685956250 528235836 674251145 167989408 835112815 47258415 964587149 255450126 530654139 753117134 914894050 961268162 963835098 474339483 717740485 936519739 943879210 511820875 812859011 291942748 654469078 655907357 909954322 737142669 987948416 443840659 727047428 143158261 678818692 697620197 853694943 486900815 943740659 778488964 904554341 452191632 855492361 367206746 790507176 215700135 937610978 827995845 980473055 527081772 661116780 190954269 701570254 979627361 991900193 247375533 283824754 796869892 803776826 169529643 221296683 894497989 990062729 212507244 988147228 176209972 911570514 682156743 898372324 525606566 750269558 572988808 987219986 201924626 367831192 687744685 693001644 355149735 439006095 441015760 731578497 650410679 661244220 173593132 672673143 7145311 139088498 546345590 825481615 179404766 574071216 561472456 957469160 872353500 931652707 476855328 541728077 358515541 653075377 24149256 397630450 158590706 874375498 64351872 443763100 1965752 306578092 211712507 488444708 638491747 845152864 542113641 790524626 429374196 801677499 795529013 814690726 425865550 673611602 158216438 883555634 131791539 701490678 417223381 993577785 579071390 581928414 706139786 990641116 980619331 991986737 587808847 746836538 250928076 274527930 916052588 938737910 273908251 451303453 763151235 992264219 628664262 633188498 275877266 448011647 881907925 883047876 982652061 990511451 641766600 773234258 251663961 702975387 388039133 455456964 657863308 794306823 665735548 718474615 882009691 932605053 428404470 608727923 564366755 580274662 850138282 984766449 54517217 390231531 799968096 957032501 232833493 629895862 126380270 551979906 783600399 865002832 648006319 998440173 21516872 451572184 77310 741927827 14704528 25242415 313831572 656876914 88074827 194286759 553012438 743687342 132113572 279397005 319580536 797231222 941050359 957295590 559842545 659461111 659797734 781534769 744831339 839029307 278640828 295934341 285072528 358150416 874870668 929145002 123781584 860269899 245560879 554492555 609347822 952921763 319395911 821343671 594191272 878116000 33985686 627804544 125982161 199003831 389390714 801860310 679133185 992086089 486781832 531691662 836236040 885158376 655817657 939908500 159624202 822655767 388856431 760671063 477934228 856262530 647899155 779280883 627583241 629558599 82602844 990152865 809308566 944942795 274626076 432883973 11106992 56615369 208767390 434152954 664114120 949620484 778967180 948090424 561607713 592417583 854933820 884030793 233949541 524286460 140773783 413886496 13709646 18212300 864497632 992042500 629029820 914733214 152626679 685277393 653592806 824022020 996837779 998897673 171005720 624400366 225908503 495770075 654455646 803680000 625475976 704280203 103101080 808656483 923142586 999219811 402802463 640966673 523126170 705585383 557176002 737771035 628207890 735795023 683183907 721920642 921353761 930745209 215271538 576511139 567625431 980778955 497921963 876862774 843208401 923996045 760186116 787994453 602292226 815626909 842226745 954398979 642841023 930966098 192755863 996273751 382012046 964004098 891780809 935610632 193017882 800418294 194127717 334439780 471942977 964563037 458759496 939881714 148324111 344348596 95982525 317655616 225636672 786375287 240924315 530719814 982981953 987494317 111319051 168213927 319648897 643345679 565645956 944659387 571145746 879108810 986341953 991250154 897822688 974947486 325244097 333057334 51578868 575018348 77854208 992147222 375687338 761729726 239636998 551132031 106337176 537158467 423097584 674027115 168926402 568343550 612909671 886440115 674730570 701811846 639181531 871333320 513856610 947298629 429915950 570287084 456378683 799913770 392618998 818234226 772023836 864552890 995998136 999186962 258269087 582882349 750985967 907519950 397652086 855435731 644626177 725982607 312875768 465787697 273469449 364081742 665934330 946421711 602326832 855877789 74222394 290761736 306100237 647409363 774013607 815247490 139095673 409982073 940407516 988131475 444290955 807116951 1850725 542902778 947204301 968760892 270923060 561348840 900704180 987428237 208219253 976036477 259767584 430521227 868987894 968138677 314921820 642099353 450896838 832591985 100721464 430693980 99683404 811042033 849212678 864362147 609235541 702515594 680072181 710088182 387748133 847666594 49440212 468833758 51193026 545333828 846157522 900692478 716316222 932071959 763729710 919965385 539279492 783402906 610656978 661004788 170928641 944288705 992096553 996358476 122101033 894726172 641382341 986945960 642550758 800139968 913430352 914070489 29582132 661107896 646484452 791571560 441107882 760706015 394613483 917577744 740909107 925278679 688246224 824297768 290595648 463142072 403306887 584372096 818895010 930660197 229092437 946242991 84750746 272953396 451778260 747723908 367586143 435838351 613175757 666074094 903764051 976190277 924968379 994894477 583138597 838539388 1695104 516166383 182487377 706560743 941191285 962655053 453042102 718855527 449240554 633505611 705772857 880447630 914747872 945457657 860398704 897585989 781011785 914648703 950184398 958590510 966406539 977017445 325913826 751071886 564948931 831406766 411510985 875032930 965882651 989690091 591147313 633066138 428295272 735450015 848254878 935749849 746412104 979722250 887311913 933451538 610465152 688479798 248848752 445565325 497283021 828422550 838481205 878255690 392714906 539837441 208080398 346423717 343427814 609378476 639161487 707203624 725971037 963576054 192744413 887797556 420343007 648781281 563768751 995404371 78184631 590487088 256747473 612008596 828842439 885585624 152013946 757900427 261327154 753928369 392263710 559915806 442149216 779709709 121216637 643054037 258132157 287288837 37415747 186122881 927201694 949783472 852264882 953957365 267923368 849884683 88712973 297897337 807820766 968648732 954909274 994191442 694448171 918317477 620035803 922370233 332968415 972291698 892932721 989636167 917115081 996308362 376973789 985279408 886595884 919315351 962789889 970488691 77453970 130568967 240215892 553262614 297503144 538356887 438748354 962236172 768676580 964480029 333915473 479578132 803946443 880596720 281009508 447446976 856969591 969360443 250858630 654879314 361152942 383915707 561664670 857518603 170322332 686642528 356676092 960603279 140764285 157071518 820254796 956084331 838509393 856542737 559275289 860221915 791917061 974593550 443360360 468817730 833930084 907174364 939176870 987661404 150200122 714882775 57291507 284363661 397356663 734115506 882025998 996409352 250406155 354438933 370101580 578400249 996376132 999008197 646661227 765230397 807190945 943326027 54791375 69117137 631008244 847025402 904580959 953786322 746604020 935343777 191452395 479919913 489265956 493079323 12707871 61472223 822034023 846639894 476097610 914857078 960541790 969078847 79585719 268286153 496749096 649475244 477680330 542468530 162715854 203342173 953584908 957069510 731360861 966041664 571496831 988532181 294112246 849500411 642200490 665346435 88579241 781244702 344859159 983274121 958297326 966023933 460430869 809050022 137510424 276466156 296400799 831174372 343287673 536789803 315832620 858853826 218889253 238415157 334398495 627966305 521151349 666113660 238858295 271281577 382543148 618991786 635080935 775596491 786290716 985984392 712292785 902452790 211317926 463261368 375707582 564293370 97951340 856394421 271744770 610274376 634561468 921308492 288728368 698548032 46414656 911738578 181117544 578691886 854566771 977913026 306134498 851289099 209165998 498219756 511707573 569501016 708137707 777564192 16285452 609411212 100275813 309056129 300711959 550064834 416525117 753621437 292989587 318686007 957151269 987538074 377493971 876427701 164787279 671796950 855063708 902617168 2780416 970856177 786788088 972365016 120318495 398505441 681923428 776516535 16873901 571347018 448798985 787708985 819067604 958302364 817446277 851670512 353630878 374205350 215711310 820142963 934862474 942098854 548198845 799582794 412078675 435306371 364537412 379473050 778422268 902913020 930507198 990850984 34434228 697465666 26216586 181845191 229145994 940846767 6908438 186848784 452474693 614984515 54727542 733060027 259462096 657019956 811313203 910270040 361604741 889181251 396476374 492446631 811030631 852326025 219524735 894184094 745402345 757663105 386591841 892461396 956202541 963718315 224077424 830376924 864126833 936693782 9009057 617957904 462503012 580423016 992480375 996542185 966089865 979256371 447619859 940079297 233510566 613672355 149912401 210749603 333031933 565687501 617074449 730747544 287088865 369951586 926910297 955196002 335950282 560232931 458905931 797209559 655550541 967934501 205151919 328499410 156285223 444453101 313432373 870312755 964880417 969293675 512526385 979369385 38754621 279884905 541422845 706449767 486689412 563715183 143853322 199414792 52504366 486155454 791245052 908008097 105447413 581155899 577574028 732185465 746469764 850403872 740201920 892979020 872431280 972389327 82199649 168556125 114995899 867603852 584002365 937709942 855380395 898391926 513658690 633932905 610847249 645317915 383257476 997952281 289127364 311033196 992109397 992963240 92230196 766179063 425775165 834179495 166262785 860195409 778292039 913957187 169381783 831207774 589676347 926180888 678389398 888227514 355062278 842011705 536442194 794021437 53903895 433150371 569005356 793415368 49377116 507398168 814142334 899557884 743571166 868828312 219953837 267940764 452078430 664382994 803450769 896577853 797620615 981351207 329834329 603407997 529081139 582494349 52820679 923845673 962661484 973258448 821941781 855436671 750764988 785286707 870967665 952725105 302135605 690762254 455773022 803162173 111999990 360823963 864754859 964368325 650775732 888846533 865360217 932197245 699748561 737798202 604429539 701368167 887916318 944540545 152266928 558642556 583404714 812499179 149962260 776053069 915134405 975328823 59173471 267677911 238763442 490105395 418554247 853347762 480936536 640704148 797242854 885741014 835860969 921234214 156997544 550638523 133381014 927133649 648806325 896683266 835663962 915779946 256356129 819974060 155038065 665062057 107978244 151922214 978591285 991524633 756615772 793060342 522434937 869525171 836806901 907083993 675377531 913162879 308346790 558553952 125236138 823656256 7382818 943304386 697266148 823836429 70957272 585973911 750185663 860586791 394743615 405957987 671167221 723422563 362745704 362901653 962400257 997866719 485854444 588471137 941868963 977047442 588803983 909848602 951861350 963239314 907040747 967747830 341656689 919441143 619923986 778586299 63540653 888163986 851311553 996628326 528574840 849164804 328057322 902845197 142779518 949356269 534541642 993308133 167018982 675915363 935804485 969797420 372849539 953727099 852749838 871895185 596341815 868064631 608928069 893104518 956972728 999056714 680915806 813421606 947700907 972469765 256868764 303129507 723871399 780990019 299829849 512781642 658652144 863650123 901215642 920086488 966037368 981933258 165471134 726954488 125766387 299005507 371027492 846125434 675542392 996470169 198223467 440013018 468325476 868571677 592480064 869912069 178848546 658567118 321602069 693625221 158671301 970770130 94680286 695316481 574996673 814865705 871510458 903429920 400999507 433020385 340717295 886586914 921403441 934388140 298780517 506900137 270892137 359894179 218750826 522985930 41743408 350514964 367378462 959510562 651765905 709658607 768233783 977316745 520084300 798347670 111560424 737388825 575394415 662169092 627155817 693339137 568140701 987423846 373932147 831539003 121861792 411976916 420086879 504024865 866312511 934668724 770650259 992664644 667677244 965802001 49411886 817345415 873172608 879688906 765556601 986128554 691555309 696306217 199034628 440079883 172969330 215112881 975972860 979118052 457108353 990704973 818161562 891586133 358445622 775033616 148641962 808979661 983442919 984627210 767525957 816808108 77711174 402944612 334189632 814795159 571152992 816710795 61081306 984678477 486780631 797606194 544276400 670294037 945035824 981618894 909305027 970789793 234448327 505797260 238984520 611056447 783374611 798245300 5862154 116136108 316301323 403173388 889501510 959276834 273102568 505391190 652130617 687771385 165172260 720431072 976360836 981068642 293403768 755483191 663366382 885227523 381039796 990223744 49629643 598479941 265712015 578867744 314499974 714079238 651219874 814616335 142633258 146141309 550248179 844977977 968677171 977283755 187024890 275640224 411664453 487369973 287782748 692268353 599561191 882625422 702149458 875187647 869063023 892531175 587489030 928477674 559624810 801009881 920591835 953701767 540430978 653106229 771005439 844812997 898059511 919935794 517937953 981348757 241741615 796012548 981254606 985257218 235121379 298563345 840744153 876087036 185628049 760747732 408380008 641724509 990335828 997550273 787885543 811880529 397689930 557452777 958547061 969677295 65959071 938502582 393486494 473390883 624213910 804480386 453094289 559067330 162323632 487910662 748849352 938595847 989300079 995152072 984392893 993794659 722807514 864210865 148791890 409676851 623236594 774779374 408864977 846196200 506318377 667864198 793490608 845536074 425019794 886107067 310216878 440217629 244283860 466926383 274854586 866216245 229223284 481591421 574623778 842543714 521814192 847653533 539154420 872365882 658935405 908570959 465267779 870455380 82970385 964981471 464416626 488705297 469274501 891801416 969926310 991352059 749381979 957177980 327814116 990284705 447331225 796951954 413636474 590670393 514482892 770289345 911077861 987493346 421339689 649325275 228439714 819450772 103170165 358253804 930692220 984083779 470246043 943339439 448546685 764401682 520109421 528653641 877475696 915176915 318999593 613998659 699064228 912011489 718132301 874902259 961054989 974774555 716573959 812119567 428217338 997155469 1432960 673508715 827220470 947750012 660836514 906428689 677624984 821392226 137372413 451021576 242387299 372423423 91265423 212656708 429929887 463229518 944740998 987995658 648551978 739770563 514807234 813705633 129961191 996867076 601798872 847435552 911507418 987123079 678990616 866906684 678494443 889668412 784256972 863202374 927802038 988948359 659989998 741173823 703699106 856962592 95415751 100355251 852633956 910908137 312779835 319944628 945349477 994611875 851146312 976706031 629906519 923869920 559126631 810678962 637293726 897837015 555791914 925539800 924126067 983300045 444512085 529803068 875928165 921606521 82778985 278241396 377146213 561357646 952970554 955497156 443149420 879994328 131799605 914830595 14996252 926487125 562056835 959487255 444652283 713716531 126218522 331092735 535462876 600578781 309672144 452471668 598831371 631581305 354428722 654353564 77068335 715576128 865808675 911793590 922186171 956945597 545329972 765811261 452112154 788503760 481654786 775856153 137018082 475017129 476346882 645436105 727028049 748342187 271514468 558108167 275604346 342978675 795420930 841270800 352864773 883222106 9877086 363357202 188410548 537933672 268780776 890484574 619247534 630029389 150948533 427558612 646223333 731864121 749124668 910244356 889552299 898386388 744656318 941422645 342089656 797645361 963065693 966881083 317173859 986207713 853077135 920877653 343956496 545932088 881926826 984844724 632690028 853028759 430008723 758670165 248233956 951877519 104480649 297647113 17751801 55706972 603231191 926515632 249404108 626453933 183257994 781044285 428086473 906316009 932475818 992990963 917487670 968410551 739486902 867281153 106044761 243552877 451377734 936274862 850857074 999155307 781372015 799066355 826728324 955591427 109062373 678871870 86145746 821343465 781117818 951865286 912010127 939295800 763051321 923193251 71041051 110406817 905636791 943792488 907462478 947194572 262726870 326069530 690812487 717232736 134887328 539975225 714896296 891317408 295014229 590220069 930673449 985809234 255774167 458407285 438625531 753251010 839985596 971978647 97719106 872106268 433626443 494361974 288454163 317445760 294639234 949842036 563058646 666113835 385229551 663653351 654876930 765701643 40338644 40450383 143432952 632435721 934708728 948196841 531112168 722212593 326280172 779514857 54127538 625554266 22553881 877414326 799558562 991249080 629038905 972205879 659015996 746298124 552305267 922866507 53799176 750037999 595963368 816920593 39179671 750130872 69922988 294848916 966940463 970053483 659468795 825220736 296919395 777809356 85678994 750547573 816077377 826214635 767635663 914383125 641662895 658141493 298275536 299380493 739012306 898918512 613459040 879511579 144193323 504968172 635957375 832016476 67733303 743283398 612142732 715930227 454088337 535356176 320515086 960215843 941784718 949258150 192925841 814753464 713695958 827856636 197040886 786375706 704010996 749483763 355312477 721437900 560748567 666895703 198344689 985108150 711786315 833496582 916188014 990421999 859786167 980480351 922953342 925952184 767614660 814021558 291083604 649866446 347245087 447048532 347074993 644884606 472856385 936037260 500009855 541168474 322127642 452790012 58911538 789156375 500733267 948423906 643559237 802292013 740669616 827117132 291963195 306943874 415014872 517675341 872606438 949767175 994834840 998490976 297279639 497540198 113761020 151813653 558249805 806919266 68284141 408509786 95791265 115039826 592635673 931377561 229843230 992720968 154518126 818836084 183913829 229352148 743469942 982700206 788584650 865607036 713020178 867984317 639370511 885176618 2996306 495914109 730415250 943452259 46418380 54555062 73445489 658492920 757403873 775913300 741255426 851120695 903368644 959558369 671372255 694786318 356969670 722280989 867039961 955201539 105803214 727505228 488656363 732269877 331296049 774263951 583000880 895726203 918476712 996660765 19457289 495991147 675636360 687671854 176137199 412541092 398239072 707997465 508754180 873744344 186803309 474705270 923872497 992491208 923262063 956572127 180444823 804769440 83764710 655183964 810652685 902418358 556866736 849744848 306041114 599211391 581615402 719033766 927787868 993526363 15240402 819519549 790691583 829060595 588641153 656514231 985664091 987804419 670500348 987057019 724240058 746608447 24305230 91774558 168861686 200661568 173525258 490270913 19460972 264601972 715730920 993008004 640082155 651264546 255182904 650851985 5069077 343714902 174071813 736833400 894176720 921914099 303071258 919144979 281433951 323370421 731526964 972038308 334795339 576261510 425051975 705623596 910106938 994199231 392902667 748925090 265853107 569412092 978094300 998937303 582553215 789958280 698739119 977318818 277194397 826296041 932300044 977544341 316564527 357447962 246168249 959446226 12384515 620986268 445941548 694305495 929534921 986365556 904559535 962212428 21650595 105005353 605463793 657487472 109459786 481509102 680842655 898226175 223432595 763171576 210161482 311788341 937772356 979571911 712267269 831325431 538903806 679310663 887321099 920048402 280022916 576626356 821598346 962278788 731262493 963860957 916883858 960873539 542698610 856634718 669324295 937158391 678694124 830908239 888503748 899452415 811592613 990728920 798332272 902782689 297023912 801823963 638321129 978301994 368912491 601319226 307236257 649247476 706685371 777115289 910831354 925796991 608874575 950840174 693526253 933258501 673550729 901058076 657613720 773010670 179445743 913771619 12689604 233640271 547297698 978016550 733096511 902057144 658722674 969429808 323189667 872087190 904386318 988443986 376644216 662852139 546145813 613805863 172393204 686802308 733598676 744365567 402824696 700999893 662802078 813671204 504918937 688385880 750332725 824885551 231766371 886106814 725026381 811063272 405755433 416564777 462325468 881361707 742278864 796093872 87191330 688405924 982583325 993234881 889150185 926139863 344509139 983881221 440962002 917577389 579627410 988159755 422713887 911843069 10575 498613062 879870317 921088524 251744082 311723139 424982265 969748149 177783325 365296760 485396118 918443856 406003542 712693203 217281940 544103340 801958657 891787144 610456239 641993405 830042353 947957214 559422764 786969356 741287 685327549 195782725 408915545 439588721 885450456 73762835 865581008 816066615 990411504 191709746 386013449 262243987 836651120 825311866 996389966 236760602 722021608 125718331 390633638 612742078 809905946 8691968 325085598 722015019 769261326 607220913 650974580 290903577 604368665 996691322 998679406 286136102 529821628 921105143 956396520 657324021 828464513 406839894 853036524 74768701 78830945 570567385 887008638 4266122 179478727 149467470 388375490 546413991 652864895 408352331 740730840 169974718 482354246 250877471 520177668 328489820 798427832 569017967 893175735 94460699 561728167 501734641 691585729 81930296 506557250 811595455 869156494 371922955 737685413 257548236 314224085 787069257 940890640 58763606 813605638 415119666 582797712 793382872 927814971 800862952 829514221 154365833 867532590 480180723 828209578 15191270 126644779 50765814 59707659 690693738 838787155 346052828 797581407 169954223 251852003 698970665 928687885 857064335 877841689 589570197 915425932 104226010 149771667 613281571 883283003 785617272 842308480 501205893 804730594 139922049 277429582 292642082 767561731 437193015 502938070 444085387 612329628 356498766 481118035 782213908 800021095 898520643 981713113 946083412 992634097 201595154 668357125 455461108 952963647 952530009 996400189 31549750 654906609 1790021 199265695 215730391 474284419 602607900 739124007 542703086 718448625 263037492 778937140 189179262 976922485 976148460 993205264 669406490 942613373 253658263 502294791 574402870 832166310 669970579 879685475 816551931 919805358 440127329 907647106 58874748 471823684 798154901 801490988 597235956 711674595 631278670 817480826 725185924 936166545 667368576 894519471 375083664 739714336 10797040 324391041 491479267 509756071 5401828 626371089 469549928 536476458 869389150 922280398 310349195 639091036 388172355 510951777 96674503 352771270 411947235 460656736 223395934 284824461 31972799 694553906 415010323 751693226 857180883 985254783 194091957 596518128 105315811 188289183 228406280 250870808 855130624 987909554 93671625 623326392 407778871 649996268 723740950 759163058 800869085 905998222 375072349 857584509 581478495 787153506 40219978 64948462 472282949 993865522 113886593 782439262 165213224 231928557 55348250 100037820 406196741 482831701 82124444 223710542 320122992 570969617 512636822 678215781 14378460 825597784 200683607 477070605 324628987 373945019 563823097 761531493 750455472 870309441 720261372 805652838 949697575 990730146 454482896 470701492 302005501 355313221 354135232 946669446 739506999 836515416 794106052 853900645 59043494 200787066 875475974 930443429 339493972 351666954 777950844 793062193 79400723 513953396 582222401 786048903 855668253 990037529 508432473 758416006 180494834 831334582 269511990 490839689 673272955 904156781 320248363 554859126 968050773 994897040 104610895 161943108 739278673 767337737 892641516 958810817 738503283 932692373 397643125 985039462 329028406 887590189 18593559 137754371 744009152 791298873 123877582 848602700 901892835 918795710 416949968 427649820 219809762 926505749 639564736 868271348 635960549 644894270 21971918 990500248 232999214 568806486 195101249 204559382 183465125 744621630 108963120 147664480 634048330 957753591 647731996 875937349 226463897 971293746 996431085 999898237 637172101 902982779 249349445 602060539 505333601 751588345 487665984 773615041 589172455 754233742 654687048 797086573 443182419 837399569 260982324 919505515 96411397 642720607 625000445 970767283 210481022 790376449 927468579 964591309 252894366 414714156 970484704 990209754 93541694 822999330 233274794 378422206 855037468 932143479 890982236 994183005 424265797 482604046 653618393 955530847 857695612 970115503 204067674 958525295 911665864 999145838 211160211 441321948 472425453 976550002 686642914 886223295 151813692 995670027 996991179 998189447 67831230 293019945 179861258 273426955 591524458 756706729 663973878 897227167 359825896 361574563 270855417 399498373 507346100 739015994 84998784 103414584 23863293 933438776 644723875 903867487 259737427 326396297 197554525 759275162 287661153 601379937 569619128 574603660 986312075 990985665 603648782 657097626 482634659 573103616 15106072 506515869 408866285 771245787 64768462 338241006 865154911 868049242 240964501 301205338 352695513 658090167 603969212 655525888 177386398 583492228 541931202 757905621 706311604 929675147 603917576 785381160 763660017 958019318 891638407 941020250 739716678 979874332 149063511 289244350 762471271 834819985 958815192 967967193 41700807 735472254 113787896 292099540 420359376 553966609 642772786 679824383 827925208 868608961 705421423 722740314 551607517 640142459 9520991 126767485 706053170 900107708 937089843 976876799 74941145 591753889 315178146 714010879 544566635 731386650 645908575 974451498 281404250 652705659 570477073 755925429 93131196 707379687 19631064 69668716 295114864 445632337 87434768 325319093 92136586 487345501 22333054 519676063 569849152 613590168 949768356 960597986 36232550 987451055 562415506 665663528 168806556 794305222 488681001 700898237 673626644 722151347 148202820 462763490 117007263 139685221 984718971 984755521 51333038 518362320 339615982 967471505 700442390 860030418 63599141 359257986 53479659 906545709 855913290 934341066 460622411 546131436 847948416 982659766 505134458 914918345 74098242 624563799 376596957 407648215 829632782 941119715 677728417 786203351 160529705 422499299 790862214 997541391 115338290 549340043 364992017 865273489 714915098 850902097 273019161 649148753 355939791 984783507 465764879 554477763 553558297 592357253 399922724 993477606 60441365 312079460 114745022 192887641 601335750 925485045 230542226 846234521 778394231 810585981 693904736 969776144 74769164 511698887 837481542 982768842 495753399 986918160 508665861 720487102 356719789 977373547 311770153 650822015 625735463 782955578 948402149 995640735 630666416 897477006 472207873 484986481 789394566 985652295 500461215 561320428 378761825 607418177 275830076 401237729 5320142 312933993 111171739 662743993 275212423 453976694 811637091 861233636 475638137 944934797 611295838 948408263 646924403 936543231 696489632 925462941 669938056 731610941 232461121 725887557 87067969 828333996 155106597 421081635 782166420 900602445 425384664 768667034 990723123 992941954 805767091 819997605 310173922 464124359 126792468 946424187 886517145 945203634 966101646 969594533 767862398 872515440 728305796 734553293 839089834 844826596 793242682 961792266 181084008 718073724 364344860 992908373 780555590 881034805 246897736 995100319 41086440 679187583 873465588 993070936 365616365 487217376 940803535 973365989 766392096 799158241 666341228 709448042 608273662 866379002 638375161 733412833 225361308 395883775 187097590 542389517 257726631 349480121 383097238 453175104 195983482 349448824 764914424 845934127 810824914 869196983 485290287 671823196 253289906 850751607 945640696 958732487 464701567 512536470 868447178 905636173 700440728 829831315 900470625 952159812 854731063 976050848 432523599 582089832 671572390 709889900 303673832 659772120 910406405 956533642 456889802 879709797 440610896 882546227 374931032 916248690 718679461 820403674 362511973 771337982 161714358 625329574 620559131 821429294 27767616 940994837 149610027 623487895 627781002 914143914 927547561 965695297 374338700 476078108 974168137 991476554 116489087 281427052 64454063 355695389 630169979 898877455 114688867 243065407 73879979 875720392 31773549 465382993 876291731 910344249 145396475 551155189 635854488 834853892 208039741 245657984 697579634 981901414 580213929 608016923 469323848 616211849 347452190 968306929 840957501 883135692 493130684 731451135 606531038 849737582 941715650 991674655 142819744 235565605 171399660 341106857 330147890 471411824 164027311 590896148 747253843 781439551 354969784 419854203 389067503 710174054 464317544 795586444 510674756 601398786 237035544 783655044 130887340 402653162 147385172 888240446 715275201 716330158 836305032 964004565 752788789 812517089 893558378 896798038 219312602 401802634 345374405 423627858 401360646 540819971 377309422 776827913 849735369 926750946 855017756 976283351 108050883 556682244 20872176 486267868 235279145 329436408 963211622 993225456 157476053 324574702 883611344 930803233 517596099 910935782 559861354 721252434 249969785 596979325 440064544 497110667 705979072 927005489 96426689 182845586 10784949 265481992 213099559 257609455 538678479 986885498 162571841 796593373 880371653 960806870 395709842 691665820 377845407 817035922 484321002 872220546 148867892 862351170 722988359 963136596 556924807 811797538 151670249 164712751 51643385 265203417 189250162 937841272 231072966 255838220 162486109 795600046 400315585 603975506 598570157 780557335 861327291 968817753 172713517 789778057 627447992 728368280 180066828 185059952 335818862 927577452 453604692 722029802 339133857 723911161 916021662 961266075 625609191 642743810 399848102 835919164 920463195 993129409 56832768 936889180 467229121 476713529 747576898 938063555 145687892 655926746 966864246 985939031 606156553 689249753 208042445 781922833 642239605 808126701 278726444 439504748 604357455 814417094 457124994 959866145 52957833 75346918 730819184 879512042 799252615 854506389 874484740 905670911 759186750 818485333 104575259 435071790 332660855 835998907 11180926 403056696 589817820 994877144 508612796 713066595 630307206 668188475 208863853 901026429 366351804 579270574 774377668 823042104 183872737 594582538 416887170 775112141 286184380 340479246 644253797 650087507 912171121 914656753 440285922 827263618 537225822 649973858 594146428 918102340 655015781 832890089 442810208 488449891 337548365 845540778 38140841 254809853 785510557 966365528 141682854 258959967 743498727 769012757 763883632 926694566 705944393 712530184 858529656 996525996 71838325 951345016 668619119 924956919 80287009 122311730 876639160 934827836 721356807 737475878 209172069 262126906 672706945 782125729 595538460 719793242 890277675 937883689 415212979 819269017 768351427 804279961 510170081 951973945 757700410 931627887 737351665 789490677 400369840 929393686 886521593 952354002 877229322 888119279 188677782 639069406 816758091 822845416 227519240 479232262 671748587 926758766 301237539 956847651 234610340 687348639 845332088 949171524 592561226 603605227 235288286 635615959 571676769 874723155 443911171 739746534 501273555 814977285 179717224 361907580 620058417 854754991 692147382 722633640 851717488 989408081 825288325 834768951 617963521 905073593 908392010 977882435 500074754 646177078 865669540 889399214 942908648 956034767 474676517 516805279 16637541 351771837 82198054 475544295 347454051 949251720 150407987 831613105 505104885 806147839 224617447 689430198 52298469 881494542 395492269 495850761 997713440 998248371 867442087 980993433 70617282 804705367 747941915 894412091 998054268 999720818 929644083 965217812 927475852 989988748 635427894 639855925 277297290 869225724 694795494 759319037 547818399 939340967 198257074 741881825 649897951 989664141 664025929 719779738 342747153 819648318 850532836 937794364 558770059 627597292 644999869 879127301 122307744 434145330 151989629 571769779 850348229 895498340 159037050 408040673 924365480 954772909 137556573 650773813 862330874 907723025 392747008 521610036 260967918 889326028 990311667 992321300 274305803 390583447 549081952 891775452 422163096 711090382 131447562 623753112 124712756 564881581 643513858 916923758 431346375 450348026 141345881 980815008 990539316 995017468 830082348 973311554 918631141 966441644 763880909 956685383 72719929 921723446 672181180 826021497 202991038 268625339 808663116 902471946 618218462 837949079 395907961 764224277 432410295 741820280 918324131 927626527 240970782 505004591 62311953 550689703 394833365 601047328 456585998 773242393 365836671 390962094 319864689 802306239 928920683 955739163 371698491 744756535 34730121 968146064 22977754 112027632 253797505 412129636 438401712 770843246 195557925 977654504 205142392 994585143 443040739 928507578 345106246 756021150 403159687 696942667 738315383 816657483 862057918 978357458 612311218 718719128 343817541 565767905 205134415 562746655 902264096 932758716 227822508 346841351 925146909 999857794 415071414 620125189 458547706 973253106 285958913 919892862 48176214 288372539 831946130 975966180 184868330 409191426 724127904 993582438 187446466 376052605 149464834 855500232 710401139 917432296 76769928 996036201 107768919 251609098 229509792 872045171 504657116 821605129 823787795 998907537 345712445 491023364 566317424 879268934 946223310 965594871 422180496 762221334 257315469 661368402 593694462 732645383 419408055 911284360 502266377 804014844 996531154 999997258 74094314 121440121 202152558 738263341 235307322 560379057 58245422 110687715 170394774 478194945 243729783 916981548 397158526 542210914 300508308 606479934 190929026 590609674 983941991 998992744 666005118 963927684 754544431 768299948 465698007 829854919 825801903 826999234 727460127 848741394 104869330 946499702 298343236 656341675 952848855 974482076 741924459 787896270 777865901 951368074 641446670 879297154 159783205 307215775 461075116 525704902 570970693 810744409 873495941 902536517 29381822 718032630 970359983 984603945 698179119 962650871 486261853 797377951 198546807 840217498 457795864 849417609 905025894 964643983 357473526 496716750 540598514 668868151 23237450 738690793 859911592 905996079 405896760 572422855 711649411 885207251 46471734 721597094 910476495 955473735 212069535 905506395 457949645 975544211 260850254 994293012 865889530 996217678 314079111 868617854 82946181 948859381 466578769 551908901 749309424 822402994 609276952 631843739 472586775 553893217 900123140 924500311 417948814 862048925 109166678 327830047 205127260 251497670 602986395 709119826 495849874 872067882 806780578 862286726 881310510 998447626 134638428 934179119 650910972 942630399 292092286 349248998 650035247 988235176 789101302 979266482 396807665 761209420 995084504 999049340 277199441 511189734 947420408 964357341 712744660 869385854 799087264 881929288 190677022 874056983 221117504 961279443 925675537 983905058 134195070 675226085 65349944 643875399 888353167 991448297 562384644 634336677 339477491 742307536 664668413 759323213 546927283 700993561 423222217 991839209 407534171 609645990 526617947 614460494 881676787 906430782 257216674 679550003 554358601 880648249 246412957 428074907 181240811 401867971 83364015 756200801 650235331 777454059 726384590 964504827 561636743 995445879 780264262 965509785 917667387 965456230 819090061 988361450 968662375 998562143 565655959 627356702 526299761 651636997 400101826 875001982 818769865 958851947 441902744 754460398 911706227 978810277 318491307 565920174 209248778 712846850 848613143 947719613 846772891 989846481 867313607 869292577 595562160 992330236 665736003 736310682 404862664 721956448 195029018 967928129 834325055 992527007 935826205 944233876 752194099 803945668 911277666 932381005 475494115 616313099 742674981 880541053 850366007 923491082 775775655 899353472 899906964 957417866 418707190 896076981 474542047 721352553 455723568 818900203 451807473 690391154 993737645 997967312 620502345 733282665 746613329 987710433 430100670 835318302 334164807 828512880 74332940 339084718 787531604 821225634 312299843 797244766 616582668 761456794 915044486 928758211 435287294 444833627 449972017 454556513 20321052 441228489 88610067 705001323 517434788 599663906 557482828 906448990 751497231 828944990 25499150 996476783 719743905 779086632 207573919 357385621 682197617 792284881 820135681 978390781 99769111 511738479 35107937 367289566 501046227 935051584 587435678 984678395 855606994 950577529 332898302 409140640 243997025 600530584 596579495 628890814 624524394 846677124 782213130 894052243 553443300 558054589 789829191 821780623 160842712 352259963 611741213 871839036 418525585 937793603 330514088 416172333 925106963 926506887 35122199 708893556 134619510 230601022 166928445 790764824 300675047 589690326 187803746 697846296 121698162 830459785 728417660 811236568 507527275 666303601 744599032 865262780 907389314 959909663 895208058 917747884 560445524 747981036 106401266 898366576 14712137 62352530 473359578 708426847 485304690 763683885 894866240 974109294 126986478 341257994 899980116 908433678 288939860 461373333 688730126 691051488 395590180 983394301 222682437 402250332 285713060 535009664 332263670 723443939 556891091 603871427 950831001 997292554 357552964 698441374 875836189 950044544 604121106 700651910 422730339 763322176 754690523 809672273 378742060 820239246 269755616 650912287 794500813 825980315 343542516 614364960 988051439 994069454 562378624 646273393 274896047 759223892 437859316 896530421 248043499 557053929 904894242 914963150 121508923 291548190 110115204 323325955 672887812 765511674 673808412 709604293 378893 536244457 123703474 597808630 933618557 948805672 680165515 685866716 52921999 523848356 813838320 872842398 215615096 672407770 443668618 970228548 763238075 788849736 960171362 974518910 69131158 741249008 509910380 835935109 389802129 531632939 37546111 762418642 231529485 730548578 7278038 99246739 697686904 943612826 351256023 694976244 744023557 766367650 980218804 980966183 378085644 447402082 427683633 612664683 166727877 167924558 994885147 996459353 516072721 910089537 353009018 488550225 232706295 855452610 33573319 945183228 572149312 980530395 364460048 972559123 327918332 577681930 985702807 996279345 768000864 968933573 383410930 966340679 736490994 960533862 141550190 959366040 786031451 864135341 655781315 904015731 734203168 788680620 832920106 968984736 161850468 482232153 304898006 709781646 288567775 850371166 903015210 969473759 891123485 923952424 190624690 762006628 842236797 909717023 747740413 902480236 667861644 689967720 397404831 608609895 112556592 609504444 178863033 828121275 16256492 374011935 375821443 683449193 779229155 843025870 666616461 677208256 10812258 431425681 780286967 866293709 583043557 833045456 578196119 736792474 998078169 999849248 523236731 723716956 28105555 421105274 767333823 843754750 962661410 974106605 587170765 609824817 924470314 934224211 73472475 919862292 365638029 603655613 750523246 923617630 19514623 378418915 688926711 697219367 683293332 695962474 881620107 908769205 950718058 970779123 830980948 891888444 844194226 859896758 692671897 853565595 287912839 899462825 746307262 914115114 65143757 996057935 490907942 799992939 174197223 414891729 384856055 534194369 126074329 696818137 842227127 903204747 817973247 984018281 743780063 906567967 828896053 918519933 339331220 865447741 504509934 677884057 144687686 563153457 121552338 890603676 964382021 995272128 654945531 669999734 194177354 776053607 961972321 962428450 696356197 844871151 433019949 494186855 25340651 800720528 816818745 926874827 269931697 946052325 941145787 965122405 995826953 995910318 443360170 917216846 621468472 983759623 287329134 798587678 826008048 943965413 495597269 554674357 565091407 635074623 588236474 789846025 772960847 806345024 118521969 819043641 1133446 118474348 55377542 145745539 293454424 312501430 408478056 489209752 99992917 464080484 916595050 918907279 229575581 902356474 824837742 941887903 500125399 835963951 865154240 922641073 957595997 974435439 662477166 872773622 167388966 931444871 834100498 910069366 425369630 997512923 589499833 710109297 720671652 810818865 596757010 796904510 214356838 954280797 1117492 124646864 376269879 941551495 108420708 700248753 487173565 574203955 227439521 609411856 708684473 891805022 745278268 962698895 914924296 979277581 234682162 528734914 816684144 910298374 823289555 903593989 45429527 258380848 639048979 654371922 235505069 523299934 602952935 910414946 401895713 605489789 789158433 900721250 637696140 671114700 445547135 794723759 282867282 863110855 690461123 961903842 874872661 956848081 696791378 921813376 362516537 771783306 383982735 526012532 794308741 852191712 348677891 632485492 254531157 551433695 786141996 875863572 351274281 514718128 657286201 852199430 36518713 431755039 434047657 585340977 74565634 101335763 2168024 526052298 566658361 996867272 738102478 910065711 740262770 770993334 181192958 799368593 220431100 827607575 23923653 105976693 821665622 957444359 467397455 959588307 842670629 873278290 923737598 982037584 418795775 894829702 931747512 978681265 142586872 158171696 777307494 988788058 618060289 812409981 429477875 859089953 596415148 895964528 286550160 741138386 901798394 963156335 492271337 960072262 244404780 367031109 245832627 498124486 199148844 759603428 63115948 344577493 178864221 511789269 392578864 565171162 619066372 724592827 213857654 732040229 974576653 985901502 135721605 870759990 502871357 850852440 151886798 378465801 186157032 343622353 842461988 846303005 381852724 925786240 353570807 987403775 529305565 622252972 402965935 597114151 605080796 683085698 8770585 625976262 813263112 916005727 221740076 822769002 873034127 910548359 968529481 973720155 65199740 275721828 420211073 484777655 303561903 600328268 302920782 675037789 903278255 987464421 326156519 860805430 967201251 980286145 692140081 765523724 614113350 860633048 644431219 840823117 629198929 791739000 159078034 266444836 892524562 923057104 610058680 630789267 80627649 178158069 643823004 943585436 620666931 658857357 26051654 102570729 801545814 860150225 93979870 250800929 906722338 958145109 248623220 473209058 659640249 720933527 716343404 973717211 861662356 956714848 965340758 997373323 109299406 823515108 339901818 464519673 81332265 486724661 878917407 972058108 629781988 867023646 124739327 819572958 782843627 849394426 67335783 182410007 39433693 826479257 358539899 934028519 514274777 815641434 690684306 697915884 976052527 999953156 761762076 764396784 507177812 964172464 222176292 764602551 86879249 95335704 414013611 940687870 116621768 604480358 47844624 803542217 10948351 460595121 860273561 928272281 390103231 727430291 806759657 858782235 38426425 48239208 160182954 641210105 766300543 822334258 765179442 841341869 227564891 367378448 172164996 731287621 492902844 642100723 216521898 630660339 668789595 786826041 834227259 913192420 366751893 572169708 914807465 942089571 953277633 977174995 894637564 931165248 962857534 990294527 23997471 953439478 694502686 934960585 41980268 572438849 660718181 959409385 312075573 965462437 970439120 977370382 317274108 654931490 713145353 893221074 625367546 752320220 351713371 868257147 26196781 83126722 498873840 839246981 410756852 914062083 196320695 808972820 245895803 317873656 67826184 210188480 885838073 972172330 795441159 956769424 972044226 983390546 604620565 945879128 662895574 674885731 520124045 657605703 754162086 948139510 896048572 987502481 152204110 989108198 320625524 605508037 957006280 975265289 958669708 973708875 539696513 646229530 217223563 392951675 339291632 496050737 975579047 991718659 812403955 969720903 120348117 185358234 14743754 275922645 794816689 983137484 424841705 979255784 228059588 407497533 367754351 797710951 758890352 984252311 906086188 984555444 235875413 394277646 252854492 688377284 786866100 994484125 676061397 706634310 362337081 772048274 386724517 408844114 635113390 664458930 772866902 907401064 145483321 654794399 846273572 939297657 737092433 998200808 972747796 980752664 988341954 988645172 713454174 724507279 318315322 842030751 321044569 949057385 543139577 720712640 112389192 128207384 496636404 762965012 504557192 533556718 149123544 697505454 133818317 442386436 744654606 840436460 259755785 607509466 377053629 668845322 682037255 695538662 672582264 913957778 589026601 880265550 170890138 875142041 656842853 692163778 42939151 50049185 115942192 390885610 823529949 875694740 549668202 551291752 406033198 919665789 940795699 953648008 84760269 993288085 729365757 885720218 638731582 959849956 840788421 986947388 984549453 987038710 806514405 861546397 69209398 935249314 427722472 909956535 570306820 787061871 988733913 989292492 382148214 616661975 475155734 933503373 111220300 915729137 20019052 32095416 436913144 495604366 856739701 998907940 524379411 599260905 36258986 936386577 697091044 735682348 902359852 981497341 893253591 948328681 961944582 965028620 526678989 565667191 351399551 582263863 222800405 603992726 843493507 964557414 165205599 990590822 878888952 890916577 109629571 360528352 257856376 697471622 910854913 958876468 583586091 720735631 645489980 948628704 973434579 998842801 763352361 918592090 807975120 931419111 65126489 794720818 221913622 841470189 50839047 163432616 762406071 808545261 860733965 966945753 261209636 860189629 172781568 788997993 816047542 837374571 108236504 824193035 198783663 277061326 151103973 967263480 187513660 217355829 150598568 416723122 236424701 329637738 956370675 997024225 25085199 998308520 433746969 864202412 159465167 448390540 612456512 728961415 644493942 699047575 872294328 952102461 31475046 604638812 876058593 945989062 373964590 473507693 964180776 965198183 711391922 903040262 951628437 998230677 874413742 973648024 798365008 905432244 27764721 923829000 490889284 704885180 370628668 721577629 8827179 327141732 14824775 137726282 873513659 880830514 825896709 993905036 397881135 772551243 843581234 939269570 727212910 798495890 729767910 850015954 44816158 750769949 333707143 872484045 911009686 996333435 626143238 814244155 358381613 863062773 159182787 784836752 874293454 904036367 553277178 853785288 199758487 596182760 281829384 461556590 90396249 94856700 713507199 955703506 942922698 962466374 8931441 187997740 247973181 737169355 181469769 657154457 456190593 778573478 803725323 851202505 364304581 931129657 76637066 404622854 415926324 664668811 274325055 506458984 543333493 733477340 433756154 484872171 956358829 959789624 448316504 642321681 287255797 715631220 90802773 745284851 988313591 997773259 33006826 462319826 994244802 996149592 258906371 269657427 302482653 405097242 215804690 755212082 333103870 741117802 904287752 969138626 28120727 909727655 911081143 945194415 314470407 445585827 727320007 896671211 737797228 919223799 195011161 738642026 148421260 213739582 985012861 996469448 10831855 484855664 160681613 174258792 203977617 863471763 978243606 991110222 32190187 357912007 517709989 719295117 467376308 552063510 420521690 902931878 584856250 773359977 550853896 702964077 296211357 478152396 781881178 892229234 51975909 611994936 261872127 293457154 893137851 920484264 976478399 979541911 373002220 899438619 566101981 889814297 150534078 987403730 234696626 678318673 692949076 930385226 561909686 771148720 425432434 976948318 773529004 885930360 716241155 758065220 44502421 571473185 369608242 905161360 544168140 967884892 955392231 999898283 473322713 842089657 212868825 844664505 710344360 720374465 735210098 906884412 982640222 992836747 268168670 967952271 409872660 527183192 111197968 601284585 715690432 939004414 592582216 867899751 726528156 877889491 685586003 769306094 227226162 547602299 601010952 991895391 712608046 771412695 164303506 782064992 217268322 568919252 486147150 722804164 844318497 898307059 970684699 983029221 752524859 771216141 826501152 901209286 560166040 994030934 778294355 827451118 250794462 481453103 136504730 643557278 513279206 546704081 333692145 805867828 125975712 809738497 528234227 721083423 496724746 711746826 156002653 429246174 667484847 825254923 910769822 993777391 374392793 825927155 21425196 869455477 180395903 218200299 117312956 424168280 208600136 778818142 711925642 933034908 193411500 567345315 236040512 305815059 396314513 618175729 920014199 996501992 347651846 893040791 383183996 870081088 817596579 859729223 737873495 817700431 839724182 955370519 406162780 728051857 993249809 996058618 40085297 807906136 13358815 905168993 1280991 148862237 454199528 716498249 928909280 949780682 932955966 951402585 695003892 760138325 281415093 346295069 786705515 995207523 560754195 630470050 425568382 539310071 410002418 615015352 148484253 151534960 429946481 499831026 960859262 987719411 664997951 717753562 613690480 932113329 332428088 817758121 966433703 999918581 861341708 956535053 133779108 600817907 120685110 910494050 625747161 827019412 46797867 260035145 705755845 772011566 52102385 82263185 514314454 587403689 312844330 914288982 982125105 984048686 208189454 644168604 258944839 748201555 699586549 769835670 104671140 405777069 747545042 932768040 579430037 704234295 871599718 957637021 555913651 795557113 388433455 490743988 284127092 366434165 936215885 960015146 751192349 897880006 508718197 994898702 848706398 980310756 640424874 799515228 275587738 638313174 923729020 943319829 868799834 970330400 456291111 920432062 404836664 571262703 137157858 898371420 679405344 969107847 963820656 970844933 693687059 799119761 421406043 704488342 866167113 945650860 30406678 323321918 113870579 925704710 285706772 637997070 578203933 698800065 998642677 999399505 859107045 868868970 473883563 568475693 355822596 833783974 812239528 970586494 203677920 371866028 710200647 867501819 50287583 797301378 395165171 498741868 799640958 849081958 977064679 987992997 314075691 767974036 6406919 781028181 701578983 954663248 670150298 733129457 77205442 288828409 269630417 959246277 154353135 812365243 46251792 355652950 68516039 194743310 983180951 984932451 507456848 982698000 430865607 800062596 102915518 691161207 721359257 812954357 756989915 765282179 253420696 902739432 893838681 931665170 589227897 777835946 960171139 994995088 560008738 567538654 537716906 651103922 246966036 355137055 972416840 976341392 988611543 990213439 847192904 919207993 306909176 899475950 765064450 913243748 498973557 548635470 507478212 934596624 394478469 472297189 933646239 956666461 125550387 251854668 302124172 591996790 876764637 909851015 985026659 997713262 245273371 566455265 63061317 346120468 572263099 876281685 599996180 680569270 238164449 507074666 805133918 931743420 11853089 155691371 728727991 749768421 291651384 327086226 121680703 500036616 713856884 944964201 712528562 883866025 14108263 614336704 999051974 999794770 882092241 971741244 70703510 852386158 462550530 970912251 958454175 983097555 116825276 799611468 611056032 749107784 894816602 986015041 37338328 84305658 158870294 960926314 318986773 447630039 210868554 737277591 771674368 856403816 618180324 965784186 716956117 881221937 812233064 851270768 721313086 795990989 242849575 667940308 766652515 883935044 106339823 975176028 158928530 180946426 637641699 971000072 96487783 200654778 598864166 759270168 281349804 648772130 423127480 483828487 736032360 903351791 161363790 570241669 982925917 989130471 343167019 782258827 336673984 955482860 808934096 995110082 53349803 213281818 574091934 694436736 175400946 229681492 874666938 952453697 327342911 784391794 688837349 733110294 181816732 539899847 521856417 763179503 24341498 732524418 569276709 798091277 209109498 825097077 487358608 494341403 193877749 880184210 141574294 293913837 398250376 948185774 318672568 389980486 746772410 791024498 887998748 906522339 86756960 373020418 922472374 988727976 912593795 915555263 767536460 996104314 336137978 540744408 727068097 864105444 774557272 952830961 617898107 867193459 398260284 741239691 549418897 612049784 535505227 621199431 298293921 757127945 560107088 676830134 708566955 916891507 13994500 709267262 942600268 961314234 453901192 910429103 775661016 876492293 632717343 912259679 116854222 992855005 230344324 561452166 520491244 819337870 493974105 953333329 282296893 826130238 268003225 417374522 587268997 991621717 358852080 471943190 340311502 796496983 616034325 916742174 709087031 917262798 95335782 159615662 696897411 846422197 754282672 790264750 226825315 624740539 666424274 704291734 177461397 415782614 874565660 892968588 905805356 947994869 467302446 471608736 118287469 826261363 607387065 967952303 987173433 993708738 225782591 455173933 580008488 619049563 296095261 299213265 235948544 257191592 325103009 397190515 375352810 447866359 136298982 888127026 968302644 993523080 952904952 967069623 304088217 664003201 431776073 509894245 181665284 558622384 583851287 738191619 878320275 990799315 517148463 788316012 199182966 866804436 459559488 652187112 46568853 845254717 550622595 758547985 958975489 964812709 817876958 974099481 332971662 700448311 487875390 923462430 681053471 979797873 27015597 661703137 857537762 969380078 307772168 310778151 892815228 981056233 990768518 994028799 55179363 649580818 182343030 364598840 147178678 420647398 426086833 883388183 444439501 498332696 933026646 990302234 999021675 999238835 995585439 999385963 330798984 574300396 954289080 995118936 220957006 778547744 856397972 921629282 52640595 434080917 995710362 995841342 539025672 783458602 154103529 350625177 949928614 954587460 989965940 990072684 189432302 672497990 315532052 351905315 914970463 960872259 77682471 585986821 205233109 984238836 796320326 856017984 960599779 998247924 448286683 640718317 74043095 754794292 949920036 975439057 153946424 555639691 998496222 999577266 383793989 448373630 667099486 878460179 108442462 174461270 542749415 887001214 851727620 945733147 188472492 717006044 477982849 767972203 989006648 992792764 380179649 496642282 76835032 822404515 682694201 745295088 291380169 915614718 450343460 760641696 855154832 937139209 883645046 969190501 462223451 697015216 872605959 964976925 411292234 597575661 304072249 917777127 684112864 854496566 184894529 547687541 222088149 345437211 902672551 990791456 284356166 556549739 349758425 587158400 323415909 424935041 678471469 737044969 978375167 990996261 70962768 297813104 506512078 970077716 88780978 813543707 546075830 671238653 717256372 939390474 913101983 936141628 588157326 770006164 342059518 853731735 375490893 586884965 359081587 626592022 971079219 978499534 196756205 527615511 71871969 547357571 254959549 386968161 324510983 737881480 427704839 926891082 222398091 691298867 902218789 946352956 225840776 713094567 865502440 958464273 697673126 756059307 249654533 658821950 469330659 556745777 928162338 999154743 227575100 295138358 322558638 821427749 231099123 345209242 399714628 427384098 984213570 989628824 268901573 347346836 527203813 616711039 608768509 777960629 257697512 783753442 561066528 722115660 536190365 629035878 899969882 913308092 209713095 297398708 626325498 894526530 271910321 961315425 935599256 963243621 286812460 422592800 231944691 929731248 16837510 733086689 293563970 782795188 739933128 824971444 522466334 699956986 984406583 990551702 338504735 496114762 597469537 787394481 387692519 800406530 41798111 325437662 138694394 533188338 979361286 985739662 780188612 975917551 513294760 969379271 503377068 961521136 652546728 721408109 505535895 786943306 669432814 719913739 356633003 671844994 326497647 708607464 290334999 468650368 548575071 799432634 271509430 382077501 359942137 888547442 751072775 856679488 4920077 193994864 855960906 965478187 422879693 659678632 340367017 554876188 836031342 934942253 297915046 706755515 506060151 648934045 242837938 930827861 364473904 790300745 124320827 233039186 992000382 999934105 27194581 507756102 437742313 640131281 647132405 941234516 173693360 838869285 65206643 946774052 946752908 990585287 250283167 676385238 741075550 933418179 481915938 988153561 389840162 888784152 84861829 519988245 487411818 780441165 85095316 589967176 701951133 883335738 291062824 912048905 459616983 571395214 517230639 680497742 264148985 392879041 329159507 850879308 977807525 987251288 684158637 818137413 767177175 809367332 65770448 485293704 682239081 896618737 790385846 792063235 271441570 294114648 989562401 994529566 815638691 885777612 40729939 672679680 668689961 832267533 525315848 820187853 363296134 553207582 539318108 735208611 800259448 862773042 321252759 725736169 573386029 671305336 629531481 797101708 840014695 874762950 738589767 914204390 29986596 193268880 34339558 143500114 111331936 896592239 401476049 545986919 49088059 571516288 469253487 757999270 27614190 514582972 298536371 723671202 393985812 938732055 733341792 765676242 56975868 997303926 393353279 482804681 786948079 974764497 146616580 679988235 459096169 842611420 951693224 967382679 46800448 852705591 612773175 993211635 881301134 934973132 95424089 116775594 786239619 941397543 653855632 875909534 967938429 978078134 876595805 991171459 641668342 856113316 968064622 975992813 410812260 625818889 969295742 975430059 266754363 775380346 742618769 970128177 303270927 482557637 540175228 731589029 356665746 522664366 643303230 704255975 69456427 652006292 617693608 626145125 717523375 795863783 305152590 693400676 629111452 908359776 668051344 788888964 876741186 984590216 331931938 845912655 156042877 273299258 274135625 524835950 352971083 704638411 882583069 920436552 315287265 359538745 38767806 624675000 246896072 322402193 594855170 834979125 406469489 505404903 13372138 265554674 757885322 997350511 387055182 725788356 284248631 505841124 582823515 864149943 631595701 815475395 973674977 979421270 607563519 696759943 989783095 997414261 526165937 677730591 46836586 398535560 417582081 855589052 423435361 792745168 728978013 899956259 791568493 820497341 72215768 945500494 5391810 112779667 160981030 463661863 890149087 965906686 839096091 874784348 907042537 996228326 917681902 998685391 917887667 992696923 276590542 989029277 943063700 960912052 546093271 707794893 863624630 982898550 291934736 469507147 369359098 554015603 958021652 998579816 255871788 343343859 889633204 967682784 747421161 999084558 773515245 972153944 720153889 925465311 862250415 962054890 84866927 956687174 183850923 241675701 465681557 807206427 234898993 841744689 667867177 671981799 803484190 833272191 965266428 983757391 576553513 725872921 800608442 830442638 903731012 969471086 689652309 943932511 167416466 916458917 446239167 876043245 329279761 773071369 525659676 650071742 7405520 657495195 677998109 703836170 608740348 668068843 106508336 373423596 149071473 643572244 708383729 750858042 213475344 434725766 734869132 918657720 3349538 358599457 840202406 964088003 207714867 956114943 936546067 956431149 865114368 919162642 187924943 383065717 229333392 594799232 765432210 821433470 202584182 952212476 263096006 919295435 739836253 839091230 510581586 819514241 733974604 802252562 486539383 684346088 526442732 657524173 675559189 817241833 550935563 901158475 877188255 890995351 372445620 937194892 563803343 820732010 669871074 921176642 606291885 700583069 652005173 661930217 461110033 585840717 351024706 443077183 960792047 983761173 992963491 993667709 350400302 868149219 18397284 661234306 36105365 696082865 605517602 829807780 59623347 158440750 474058664 612065719 489267921 824014200 833498708 918193340 970113184 978098757 589876371 870208095 306084921 823311718 893102886 926438050 703225029 841669989 556459106 940089272 876330483 935080748 392782346 536126779 71299732 285245334 156595664 969493742 270877734 612811863 415841804 800185402 471211185 994626103 169024739 229055566 369697868 550942514 193243 977632754 521307723 906613219 504709281 646944662 401233728 554205424 205867185 920185190 695683011 849047719 119192044 158477917 688456672 826411447 139792280 962368151 917499483 980653722 325823639 689007945 688054421 849106936 424294930 811641693 41342519 429119580 348705403 825932665 308384741 779246842 309317685 461583658 10943277 496581083 905299413 996930266 792557528 841696897 567581992 934054903 435958604 438196109 323229155 718564330 709963221 850613812 484768995 843051283 256598353 689143347 339940669 548801493 212201853 335126823 773400282 830934199 799355502 821672185 631264547 783281563 346259519 881854090 328145854 899697145 468131931 832405989 459893387 623462547 266033225 497813843 755044804 903964978 618728525 988942012 386889204 405779517 76291949 373977525 325630780 668651437 799311621 803705818 989585180 991122131 195324691 376585375 471827794 575666032 850675198 900495929 489322915 550209441 833631446 900309321 247908586 430296816 274404225 959728054 576037350 928683734 51393494 82644880 109237896 321950876 324424311 596310399 584754570 745612337 961377761 995895207 796181461 860775317 259598527 651072461 901152648 986087628 664568382 931711124 155555125 751282580 229225146 765741114 366587034 829393359 369821510 689698729 221252654 278191244 181779619 391253040 807593198 955787250 14770109 522692667 854275700 980811503 237841075 771510891 798497183 867150309 592413979 654749124 514813421 749377352 599154509 801155911 602516761 629561613 308665995 839509657 70006594 90019717 587431728 801457888 939678582 984572799 793635833 891956532 807499688 830087795 889390 83310872 71429492 991269767 224290483 718143893 792735953 829810020 864476908 909254447 940354609 943546084 282701353 631937073 146008464 777945635 476227304 582773710 189688840 502210560 889743051 897918593 139493983 873256458 119055428 143328824 457863657 799469259 284258855 429580240 552642393 796541495 813085758 972573797 820474131 848863228 505567683 527787921 190796642 201297787 465275279 625189046 409582209 696388121 672938178 991851599 412061681 555110130 325927316 835034938 108972710 762969111 169640311 893782224 179269310 334318288 353942101 690156738 896658904 964200714 565706422 913211592 185633454 392723991 239887666 290857587 348395254 738002243 159366190 971651162 882602235 986528175 910024127 934648100 33955220 176843026 896967708 994111993 304920786 314618948 678832791 751780667 588505298 884054637 769056981 822479775 161167750 392045309 864923688 883392415 418410804 942469303 105067719 573072451 63696110 403843775 977491948 997975239 593556153 918954461 546605530 770937234 305905096 975104332 912887440 968523143 703187880 822117342 804681620 870141335 782789981 909125743 726916689 808091558 45603503 907150568 448546676 676724531 108206510 593472184 861958824 985302297 805250766 993874486 269112804 273015292 116150836 980414744 717317246 854120897 472291372 956989028 844418388 894783023 700899376 712548174 36465565 410379590 547456073 831209170 620737662 834254036 466944049 839326422 222681451 564458178 63598352 796982883 916048144 929543282 151207441 579013807 680375328 911955430 246984818 266791571 97375130 425521245 677964761 696666158 841070731 929219117 998275870 998432707 645882349 695558974 261835837 665263000 154656999 983580968 702638646 918117055 524602684 580832481 202822224 531275539 38671467 594581992 854432933 907228479 423472077 599099787 876091848 994923166 320488499 855867085 679831077 909808386 938893515 961212870 695737949 764860368 505946791 720167426 186190993 850321128 334373546 477143993 382628731 962262614 160077005 410168815 712420693 781938863 790515809 795331482 642199512 997880930 678652767 923173969 52829896 183537615 378312446 940190351 463053292 626399545 295777156 895066871 476230553 527475163 50680028 868265003 213889649 686025209 789533437 989953894 261714404 482597091 281445363 932668104 941012218 955639682 25438483 603464577 293873897 306341797 520672172 702959843 86140688 583146182 320941281 369718132 192618870 622750919 589483476 930281566 304071705 767124192 999006209 999438797 328046536 476223902 752726813 839010667 600769714 952631831 490621454 703238832 31675651 503911962 950931096 978519060 868210696 880504381 842177348 960914547 780257690 877640368 173155605 789464370 144291734 924809140 51321934 660003641 751247925 894263212 112444588 841344777 323194178 819455300 392134596 434876057 385177928 779893974 18499594 692885365 119163997 468326777 692782667 825387808 887743136 958954841 917345248 923822441 738388775 867761297 882081407 975278716 671061991 691808549 348041452 661746181 272395854 998350800 647687270 742099351 158571920 417832009 974417951 977142566 518706169 736723676 353941553 586308721 571753424 970526726 447393746 559997662 248221728 559307735 388532856 866039843 654438798 830320731 769962720 939994259 854898875 890137912 802987033 995141601 37731007 761612018 338360284 560284682 558094446 701398871 62329610 488366880 943401781 944785602 249599615 859282320 638728519 736773955 606592005 935850909 776710223 876302676 327205714 521010754 343297975 898347430 309759488 821812311 351745864 539390746 736358805 921306647 536019815 603189491 414653846 943019694 58181144 334584393 336853818 406605615 870715115 905693551 961235218 982110329 617379955 897360944 904887752 912354825 24191038 901137491 892254370 989985272 126437050 673443558 961538096 987822143 748164327 882299835 852500619 886703472 948948343 967395531 946723280 991772938 167941282 451287208 918133803 941807657 491223927 539348986 519900188 560550581 324842925 705318312 199956701 576829254 627577295 695339830 184144756 655347093 41997506 240930640 98238048 383646983 256774950 599315157 293271648 666138937 321038626 698998324 560482792 695670672 762718230 880180929 979283374 981083403 354766904 559597047 552411418 943518819 70240314 974312939 862906577 993196453 228435769 437215215 226764515 478552991 375420013 464114029 172096348 346098449 590176649 833709228 525575432 664406441 169229222 301218036 346676312 406105300 171125272 615190974 332947074 367303091 954705308 984774351 932263913 961876356 798908234 952138907 85839627 837973203 464282744 719122032 562951098 793493018 24753235 331412809 900067758 958132282 91260640 505497074 811404023 846086850 32998809 982243180 950149443 967262235 48082062 405059182 309462539 624603272 139980004 445037936 570098886 957190727 824080397 948623938 477900815 584605989 822663257 891561544 472379291 474183913 919041612 948581171 12718229 375694620 148769687 278369159 128325299 319176877 3188809 374157767 781492082 805958997 7018588 518417725 493020515 618951200 759447811 952633920 95754508 408655478 526222772 797547718 389722866 930286607 968499585 999027342 191496961 790319567 88609999 783685636 530100234 626131321 532281874 778338587 367187307 820765651 909429276 928574770 726794173 978623736 642139388 892167174 645383366 692565954 325592543 484829421 332662846 431715128 469980896 757939285 143262354 594526240 236740490 746781975 118149079 876915773 728687607 832845519 212858652 808844143 735127185 851380828 402073982 433810295 913365704 954166145 189286125 215888065 568386688 705254787 649508338 922251101 650369835 695676846 65629001 841302765 300515975 551938357 540999577 877155560 738394475 825795273 584814775 975927468 745514406 939104701 505071412 571387341 293659692 602188147 12149995 545613318 770548708 890205456 675268470 895019610 838544556 871227821 287182460 350885746 182905798 346693459 878755488 937450817 699086822 838550390 516838629 776306085 226629419 636414230 77810022 145339278 804675194 946645226 603496988 922672560 838964113 847786021 86597941 768832593 422291862 707767697 394992177 442492465 642296850 810349883 312116851 417784932 181761985 740077188 60279052 327399342 139088109 237160291 702555137 714270860 837637902 994979530 16205490 219367760 679186773 877673577 388702224 907074786 800145302 952753773 441744792 507696574 187520621 451186272 846330241 967918267 49429477 294681322 687498106 719052373 170375831 766665226 147473906 261868509 576651997 951827710 983585453 989801344 844996051 967221829 643755562 867777381 108215658 822482556 576734884 688837216 264760340 378107468 815229462 830069505 802281917 996661506 451077299 472486050 434891255 598698462 843562400 901167450 401966821 735036701 385424598 905562846 153110100 853453732 833774976 911252557 481541242 686839248 319247718 674176287 151984255 911581913 762623283 772192662 308287964 787183574 325447864 434046921 407061290 823375503 653686856 968778327 35460381 467972040 795413884 820504720 654076446 881861810 381425947 473006408 717713418 903542299 134881896 812813007 333991834 336648243 778693727 838346138 411685626 776728617 194075404 335513810 442367710 901901878 61144544 247894895 326382123 909472085 612194067 813551561 69929965 315570950 273399947 735935808 228166990 842030792 60468522 123160699 809400687 813160627 977098305 986019280 444887884 698629117 356477558 742579646 762003422 764180191 235530697 981118912 657503224 906439276 300937717 855933578 813392970 893069872 39161084 998491038 632050837 668164707 675865719 766631072 992680302 997923936 345476936 426194998 923032201 971259283 566903881 829526094 52234423 597389993 4251100 761762226 863843021 966144674 774864010 795281056 234759856 667935536 665846224 850305155 174421037 433299544 543512384 636551549 848239441 996193297 619249539 886838165 297193631 564963310 647105777 734205008 708305323 916113637 128382528 502592317 900449819 916533931 943414187 974842397 915550014 972060694 981729642 996077452 319960469 424225619 604950477 759240732 352313369 655438649 221469671 513422323 963571134 985982424 251865185 656808122 189095308 540608543 885455894 984126892 175165719 570228594 773432630 908319996 984283640 986171569 640539668 645992637 345612915 764333486 918999015 977470471 166181436 698222442 701486359 982648023 202713299 627811928 241190669 691937000 537583886 857391904 640068210 945208093 16159789 902123267 113998124 912641067 241745890 680756680 751971477 824781818 104574923 230644597 510307764 618331075 739675693 969541586 842414737 978745806 744296638 762379461 590001239 959998566 802464413 920804738 204605877 623384839 642278679 975804014 478365491 806776467 46111897 818280089 267719961 305577257 918902669 971731897 797048051 854268680 511281668 985988662 994218568 999762222 143308276 235499886 24587827 191168317 929791071 933634654 847423253 963991847 501536031 604933893 516300053 600562834 498333582 756067670 137716466 932852662 570520230 747671943 537555075 742082223 583633125 824601656 867058722 892350113 57955446 936903301 868076477 955861716 548184183 937449988 407268078 731037239 556525399 979694343 917608967 940537338 878136571 995580623 810297963 948043382 676135552 924932196 574048542 652614528 822256707 966688122 113130406 899454308 626877819 670894065 231546584 987110980 75420010 986076498 86320417 830470165 666872797 882908086 876051213 986849264 874958045 978318236 700325487 944948641 150342332 219274206 863325236 979641692 447856609 644192387 417578147 485005907 595280347 846612205 716067619 982239434 124531751 958293349 55712299 193496371 495524106 531804218 440277996 545313782 978491078 991908424 691973219 786603477 725296234 762622483 32531619 229082161 426290200 826548000 285529330 571025156 315969352 406917334 659751053 885891322 211606067 328496616 411889434 523538361 413594267 933625021 973895391 982354898 627291151 877371075 614644001 784363282 902705945 915413737 488502079 802036144 883863071 932454841 12440829 927389945 389060485 623072552 546117922 578301166 826676910 893273730 544154849 555128728 134975253 301966871 59929722 966055047 361835741 917960572 242768771 929577663 936731387 983800634 209816105 597055994 662420191 749678778 687511678 904188915 606975849 746142224 801816864 943179861 528636410 841707964 468970745 760530014 676709467 934959588 429849735 687499180 143762761 490003420 681981488 827030068 793589340 982377986 535454931 579999887 48023326 665269675 952232480 961778483 220455228 275920441 29269430 85044362 480046181 965016711 431091347 992341030 310372658 513790809 418483554 791832310 397741887 640598595 294723963 846901975 41812407 948096459 580811183 793083988 26168926 54752346 639174958 918109202 440238267 920091672 862732226 949874861 212559232 733344116 115743538 639121712 603977341 695910193 846183379 849878208 863599190 934687814 767698503 904016244 617539535 973427217 848739436 864168614 976934526 987971726 737007760 792287966 695140968 902410069 880818989 993844979 839659619 877553753 302361215 325618643 62654744 186517954 719269321 861248378 793321514 968495825 660623097 894685975 541961055 885348772 473885483 785774807 905259591 934508160 894611397 907788135 659346099 966988785 345494675 752915897 541502499 735401936 992158432 999135225 383555621 918011495 594202788 966027543 501801307 810305064 164200285 878587509 589502318 641906868 799256776 902976991 828376155 886149745 174111185 209141209 633554142 796626069 665970217 871510605 934076616 984500254 269844411 451600232 246150839 594307777 192655008 580457288 844067434 902897454 723995011 993837048 145711374 719538175 63211489 106128309 61204034 626200175 708092823 999343294 161717874 511963577 101415681 570075220 999586325 999672112 703096457 864965873 230427958 684591976 43488981 445009464 195099978 274783303 493399315 755957534 223000938 815965956 164433478 797473665 139000216 981425855 600893443 660047068 509302619 904895768 722198480 767235132 535171012 664735932 523765723 847119197 509924405 821322643 473124080 566451526 326302109 360956080 785059420 960580998 119305099 758722856 123469877 798045707 483451306 508849280 24410492 753222028 353380037 818398686 908160389 941237402 620871072 849762562 641067665 875675818 580841262 722894451 250161481 780282670 432976279 888049258 473203785 747493067 426337388 479348655 990263254 990483587 531109965 737006072 253377529 529522982 389176404 462546681 831813634 859296804 982487102 987721234 315927262 671916847 715762032 777686367 444328666 487543924 948282486 965679539 43021111 532877976 541348972 932781965 685122189 959287636 114774975 239122812 656133943 851861073 312399373 671410580 49506105 601468019 39019228 907461622 522886823 759597735 743739304 743909907 638258830 779016534 645960649 657470978 753930197 944927431 304425526 717491633 580213696 787475090 4593324 567786000 417633529 952041526 72101758 194686596 992406774 994110113 180801943 514554720 753058898 851992142 511847851 608155259 684464107 747482487 804147034 975426084 889672273 921673673 662094127 925809365 847229328 999172294 512600409 658233215 809201545 874371578 342692240 852537297 795169872 922715824 451168219 888175834 307102202 684902764 644960145 880928736 934739241 956540924 735532981 753447776 702219576 960459329 8666337 313471949 357090723 554303597 415644598 858364009 209310693 782138762 545706938 886331205 741371593 921293229 565764803 587549318 953757498 960123725 764168174 892806733 239569724 996826308 544488245 939726600 777285488 881336750 657581718 752325732 24510755 290799119 664254142 999513838 143673938 832007096 275673168 924493240 773167568 942893137 815736118 965307843 146001887 180766160 164104188 464926374 287009018 370518029 740972981 758462309 907275152 952196406 17858193 590513927 869390436 939011490 546234211 940979302 388632114 490194321 230649260 482763263 22840327 719616610 975921469 983816295 675662924 851090082 904699770 907797520 170983771 419946518 235362427 286682383 47318641 725771120 477260114 979124782 309200144 829315587 749253382 752283964 517120784 728494416 251063062 630106023 888514945 970967040 250717238 630164877 389036636 606852249 711206135 971725767 295491096 739801457 85472827 430570923 422952431 525427035 444703304 466928714 783528623 952251781 118931818 295318728 814429750 833836548 731752268 927321978 990348818 992172468 158686054 789683399 985223633 996874988 62263628 282792896 28463646 435396249 725275056 841739150 527351111 614698723 546402748 986140613 402680883 540481407 49409526 63681931 579425976 940878267 209545439 278077827 787238917 939310976 687896342 818762552 247733436 568678087 25098515 237128134 853292050 887082226 301974906 810991141 12144941 476504406 503289285 563292795 955076124 969442600 949754011 994023084 300920469 468283169 709862796 789798438 14916572 546000723 341616129 951823852 620666284 915619051 560787622 990735595 216011032 307683945 68230206 816400579 822536858 958424982 797338230 968553189 53338506 579636293 159830495 763133025 69190168 571262251 804530982 940737505 237462085 696640345 202166769 504440475 527472236 681016734 900921855 903695695 798211107 849073147 504462406 658009998 693109861 696928856 368238807 706276456 612865921 927044246 900269208 987877204 169214682 864377680 347167306 734668758 110177960 700469226 147079472 844152937 944171355 995842229 717213363 755223308 226151870 888195848 389617753 605194784 422467421 451430947 253855947 442112934 49148147 888323230 857722407 996147307 361574120 850019100 656726236 965195182 626739446 671208096 159376721 959302105 154527956 794028038 955296720 967971749 76583994 850298470 348663725 575328843 138966454 141025184 888373155 902065926 394507015 839690876 503981910 676772035 699143874 989701439 762386959 913360026 372516405 786483656 93478801 247283098 145527488 637073644 880615772 927026126 598440443 988639433 531124947 843724893 914805885 918008972 63212972 385939671 874098534 917213824 993634905 999490192 724290566 952255367 55376154 693720691 601811935 946031545 247945701 734051226 907886899 938196759 804887654 868571736 50090258 377580225 215790153 864398073 661953730 980164091 425800119 619097654 763113840 939445510 756273200 990296802 880461089 972911401 324213346 661846218 648548755 774793112 702422897 973143142 281938180 535587029 824751467 913499665 600432012 923905509 768580849 957426236 737533349 955381105 375133603 391302361 217578609 391378457 184239535 414300919 746204387 989026536 292433712 901559111 490314291 770445042 739692 705042691 759996684 955184543 125706660 803633953 16825988 517859447 388243126 494828338 705514032 716333931 347673567 446521875 944153528 978156885 283281794 533333289 528827901 607609469 954802770 993006073 815201913 835256926 892136607 973131126 159943469 656190497 536720261 920195296 899112413 990068098 136123339 773842494 234234327 522074666 360842686 872606013 829148860 920149790 187034524 545292369 77556241 870039887 584589349 979844961 471903472 983784737 600011267 617605638 362077199 464288777 193145330 357435917 837622981 938167588 528924653 704600865 271549248 445997427 689440737 781928938 452595728 789043953 858259301 942582986 577816917 919023216 607156734 717449739 973306894 997417954 928858129 949033809 321056143 699081822 238841355 899098331 403214063 478657345 118870074 280743545 967837046 990633453 799240037 958560794 834465298 886843736 126482323 422172218 712288954 779616905 722702799 927892786 273684271 857930514 602559639 871080339 627572839 644791405 963616462 965354245 777559673 853459226 306709857 941608383 761973152 936095848 880866243 987258242 581890489 919723462 442200459 479514344 463715671 671792227 282664412 963002205 168367260 327120437 991819841 998973298 363758125 996787104 780290423 906011665 331025714 631869683 952288751 971307013 225544249 373080434 463515439 497243996 961937171 992414014 55883785 492108286 352737401 816232579 336503100 951563914 833097506 917768919 147823234 643675317 984473599 988659326 872074837 873199135 136986992 411536491 55127677 338140968 936616663 957235997 300122313 608421747 800356876 984149062 24463169 67288747 398949776 847180470 724490956 769240745 459695511 477464414 914882920 982777222 505367109 528232989 320544655 807612477 336626284 774145693 379944196 757434108 996773867 998211460 866517200 922826265 967130147 984803701 31569794 869899168 590064293 802232998 761989665 789743225 941337392 959561930 722946520 928934030 466633760 674880763 855668417 856000340 289291082 429156930 2441495 262821883 870868338 883995487 594056990 982066133 1122279 954881376 158470839 836596660 32318924 715165298 380174803 791735224 382625919 737842474 238572638 603730646 809183485 899402372 169563701 527074711 264420346 937600918 566602026 732114279 833483224 985596492 629273636 953232047 300347959 508317825 377283109 617176646 994889619 999334209 18295569 103714201 326519966 502758556 726296282 862775178 88890283 871526844 483107403 739315759 779091935 956450201 672028624 679415921 623676764 663211823 708428314 983575758 531965488 736219643 101158723 298763187 502115504 596295360 488163601 803620623 968470956 991591069 905068935 986866608 35728817 882776687 879381161 976769766 337092138 857011919 553380094 865586381 462009071 538801988 692170967 785686598 358896602 835425592 948505655 956090432 359410333 883847740 948058514 981029429 534030942 731490437 65020207 175136566 945791789 998441097 128961234 894758751 191080163 907206423 633800339 856453562 870687815 903532939 286886216 515025650 394505996 407401519 871652884 958239544 546543131 766390604 852338124 907403667 703979496 740904096 795839195 809291606 957045827 979097242 929121450 984225852 391700081 767623093 935951051 956682407 142703760 145003687 634210172 898193294 443161893 650481878 112974284 531795140 698636369 831663815 390832992 835719293 633475959 770459825 679113571 680324886 637707196 846743467 554220657 837082225 300443848 882626521 364361026 999492983 11905451 419326576 315377007 358162275 287346066 779332217 830784315 973644422 183161215 585266632 123163097 135644156 475172264 913533678 86956095 677392643 431415297 768515136 222253998 586332239 666430495 970463392 722908785 856721663 838200705 946764549 797037689 931431533 342873488 946361716 890601772 974962372 155411440 740552519 190848501 298840781 626231570 936878793 458754939 594470850 453788678 702517220 998702330 999499207 231723656 289274859 71683452 874495615 831235970 872806658 962660015 963461738 502946914 712303027 540525814 985877829 796751748 942650292 635865182 748603645 219933335 414914549 519604258 545448841 306468086 674067013 462128068 722767927 498330160 738997575 938821000 951811647 685789088 727640905 638817792 948815698 897678626 909342500 610546040 895009359 232859602 577036030 784331106 795993242 51020166 175353482 1597046 838431647 973467000 975781986 731822780 819541768 891996213 998987414 514134896 789738193 523555301 771338429 932211851 983647732 671801960 802695067 295978512 903684795 565308947 844338937 422885650 881776311 70674824 777652367 14634943 731081580 129730308 837178237 690357555 701337934 491051012 668677165 408809127 818126315 859702811 956220688 674323676 986801044 833763008 852286033 355597627 675800963 690883186 696755035 112806874 816679884 967282935 994500173 850013931 974650406 544485974 932839923 609703418 633726102 606753863 980422507 159680963 544562203 527159389 547573114 225067292 638387248 670946317 892730735 58323804 158515866 448437082 893495714 959350561 969333982 616111088 784599485 569809970 904741969 84232233 771466151 109476000 607548163 17908527 835990381 489511193 637302729 685431448 910045732 278155292 835948114 688104305 712165403 550248358 944030113 999005898 999614281 492969116 959587133 804797649 809138925 761559175 860420378 898122169 982089292 528999186 893378177 685610625 925044151 535683573 615340511 354684039 558864419 624067457 874197699 555674134 749613449 479487752 768071239 704961168 745973918 699849287 857880273 641089551 886830404 544730645 981761835 195630754 690021496 451656807 570048630 388893398 949766647 209068319 281503390 528632128 701602714 172519863 426343147 359746670 929881055 314450206 823120573 773509831 901527981 838145328 990541157 836098702 947965058 195255074 522196339 668669740 885522339 244461666 890352323 576482913 668647975 123525376 434762633 589803726 678759731 848819451 865054498 233259002 412734625 20348989 574007951 930212776 984238277 440454071 482742011 732424672 933504592 178823092 253124379 32135179 394549131 460771994 601733684 957731589 971554680 681604381 867990915 108077774 843001509 621937259 943452696 381635743 790982071 154104448 223554251 821302274 871987528 842906351 984382227 279381514 582792736 532532235 964784739 425014590 469939633 324578826 571077181 850273284 908743224 577380765 845076591 502192974 750408518 297392461 490181062 827686456 962045931 278209151 317679445 342350908 644356828 251719378 664257442 460223486 757024008 610324243 766351908 156207947 402230853 453308162 619116325 451064848 453046725 610630021 666306291 516256788 557706390 38483550 776201390 861731781 911705356 313685152 475530935 825882521 858497100 453496263 939053884 797366062 928865470 68761064 139947338 154572013 327342525 634545830 957491664 496457407 561625795 438261670 866990449 195678400 971176042 517515580 791064230 970630936 985703090 73179393 208703195 969841722 999867681 450271303 969729897 353267882 603836659 370447352 465908014 300002401 715082359 892297132 944202691 2741734 670622082 881414867 894199571 852637055 953056129 479861609 599388257 311286908 647003438 494165026 829658921 808319625 889350827 98081840 290104627 847282364 905647771 732802514 876196811 641740219 675424438 303159243 984297089 41587375 271007051 157427263 984740354 481166111 777114513 390500826 896073668 897797476 985101352 548106992 840177306 601510778 839307067 899765911 984411486 636137774 984996999 807251642 850969305 819671220 911021900 941881567 970967806 787977728 805805331 760983126 957129144 920067226 954344714 586335520 649328551 312794004 754405949 814062048 897554260 267824755 791495675 920905949 927805824 578395746 726728845 391029924 867336996 81536878 630736657 865994703 898982979 692200613 957687285 883061109 897660328 431063313 576607595 965410055 972656726 520067861 941588239 966766902 991173806 426113082 503532667 68613271 405041594 135797719 598458760 770097661 999976004 71076156 499016558 105851204 679855795 283720211 987086064 993048486 999149318 633115058 942089776 431791753 460946637 588340451 866594205 265992549 391668958 497746322 627699952 152503147 975184488 850370683 928109418 296532689 704780609 515511748 661062121 708209830 938085885 802915954 953786807 381436305 589481598 673192991 748590938 632142175 741517392 765470304 991837913 428708103 499401037 271719769 388661299 485967353 563666184 559921256 677246625 61296942 130029086 36008849 383221337 682141290 800361816 742049695 982262710 449933356 535563454 961318903 971551584 286153564 805019196 398488770 402018254 147321406 380669123 613732128 935109466 417127016 948195745 637761220 906702595 502638946 656767529 467612587 916839980 242835075 995476580 608659436 758841356 439768812 999531052 588437956 866667922 478310258 852530262 48872033 742609855 761196094 872025272 703057804 924940914 59866382 871629666 931236315 959672258 606255385 606307088 328310176 587752451 80792304 750600477 463265164 566928176 370818428 396555922 679621704 901118202 808440552 990310168 589618306 738298282 832434759 999115963 494299961 880660513 265513168 984779043 210546801 521499250 551890886 785117701 626045141 791062347 647803578 889027114 543837337 982586236 327534896 620244764 351113494 570142906 762127081 886967059 285106651 376580297 81232323 451415825 432688758 904909350 738647285 779571762 143597626 881785933 98561638 576339133 819067138 934414279 826028814 866986804 68266681 133487462 882658373 993640381 885741376 902802741 964315745 982554012 555115157 775038256 512592043 588310356 334835798 808960618 727975645 989005578 119655300 136684215 945312865 983198737 353353411 451767944 104525256 145680869 580849604 830035011 895398795 945823573 407389748 921113826 739069331 861097219 992562115 994816476 443169946 495510140 346776306 900147879 119278622 893923715 525551423 567205901 922055456 963003553 178461011 933646779 12255600 241026793 900632376 934582889 800944481 933195402 407561893 682541846 493173814 878308653 682850619 799663371 223715411 479752877 123449183 478046789 130095477 358656200 3445894 839854921 108209856 459639711 392817370 712029578 473964801 927568460 887322536 974927961 123312539 308989224 194851513 364194558 354363238 591823151 628382845 951374157 984862398 998467683 516608373 527153693 571768387 727573660 986815666 989933369 142809946 760031139 519146867 723225879 925939042 948420141 638558876 786233949 639590960 665746134 131175620 699618618 293697976 718148763 932745527 971858534 496742245 962536552 988472694 996246954 950461990 996613152 327851028 983736801 906450146 940500529 588167644 888289118 451858788 851402602 773577740 780261393 496609493 972067980 638879386 677797112 653998639 686770200 140196501 403039301 641603827 690340772 706822123 793225053 53077185 912760745 128963321 710848017 982626383 989237542 24394893 678241551 703356559 888206078 956601518 994337256 219087503 361091580 854580047 861218246 266704969 558467298 407024261 942240929 433404076 864548029 133682321 993976272 725528721 994162083 900717601 954447807 902261424 996036773 111452434 319005104 117887985 320610528 805942953 876195980 781352891 829594917 355846130 727392922 917919613 985086115 833877588 864893790 977548563 994328062 646400843 703756582 624572713 760316514 375023305 987287711 60326169 851101818 13830529 20740417 237389703 622912470 834133482 895259225 91504085 587056404 532383701 784168639 933360088 985523244 952966198 971444590 846752117 880379023 191837244 633870906 761728111 955188766 826098052 955164073 244615473 928219585 277121883 999370880 683205867 974272074 781530942 920340367 688501262 977329054 864746380 885161178 370843138 767241800 756126468 857268534 577172768 946144940 880044487 948455737 384109006 781424635 165814380 942941553 839599447 982081644 692347718 745579903 522747154 575605490 7115572 907097010 6382794 218600514 174946834 539893325 754816950 807580548 262203671 340007530 735083930 910140284 654232399 695791684 163591271 595161405 654854174 771087496 458505586 827802993 559133671 676643994 32103758 528508071 953866073 996969055 253979075 385374987 589398800 844055740 845411609 985599310 405422116 918616708 850457904 910465518 178768901 274425704 398989466 562581268 547620916 571510266 564726779 802919664 8358844 125738785 330512846 692172787 928807590 935655374 872597905 889002775 859993956 871018416 22820662 301860858 797642510 840387155 301990457 638082854 538240219 850507542 360388941 642051588 234338515 381223264 807286986 952053297 473831974 833331772 453880453 506490462 235898895 802481122 336488317 376169927 289744896 894825385 735604337 865768078 299973859 667244258 38747486 989970807 114364682 297519598 776953747 964204336 220005657 646617395 329122544 534274552 840059533 982192977 740644883 801175781 83433567 598412556 537280932 848835382 676411974 879486128 847669541 991442256 5130458 642175008 709494498 838729897 423072809 601820744 757798712 906323745 583245620 663329221 752525823 889921819 701796733 939756889 678570584 835232648 7814837 644720969 119384540 491201336 958052505 998179083 475637993 711547671 803737629 877528481 867598022 906210963 666081911 686455987 885247799 952629145 389116856 945600451 373620183 409214208 572805080 618854111 469937778 587950929 719405724 825780770 805814805 928277145 172798112 793706382 670108327 729473309 692433726 911605396 126219704 335637128 795494768 943476094 694184020 990015015 888691281 977230648 239311303 585987933 639905375 698662937 559298194 581091327 375839619 967988562 703723837 806842880 50442333 721286853 988446612 988851367 716435938 749039529 739200359 903229980 898244435 989562833 588376434 921944760 496531350 745360362 304018476 667115784 821085289 860285221 521509782 748725244 825255276 891163728 563043938 642248206 481240711 604714168 156236617 351455630 333682336 665585177 867244646 952104244 519249323 922218241 850892116 994458443 680264088 906873204 102782069 176324081 450089069 971486637 751066652 851257807 929744598 997927714 543241855 599688015 993361767 995489071 375124669 533901633 546992898 614708309 442968127 613231282 775797902 994340302 591505613 769705076 648306305 910037969 825751214 916687450 44470172 649612680 870125934 992367501 937292801 952124948 635851327 881934813 992579369 993477753 508117222 849283154 362818862 452867455 87803480 639005039 211340556 360865056 820654825 971853522 130430568 138229716 567585682 734070076 246894596 850140210 781639676 783799051 882223588 970536654 30478701 489351568 55842140 811580592 768374515 921575087 272613961 422199044 412906446 976677268 148845415 945698844 836678203 990106748 321696252 749127335 65492533 822736502 310152956 986428744 323325414 468278956 371898658 884222699 987684177 990581045 526305758 616700946 831821942 838566300 333983584 363807258 752836989 937006012 744382405 915534018 353496277 797757840 732634638 817355333 329785749 494098174 585965638 934222354 528200874 586175727 87996379 673482523 640023451 731936251 746021435 919668564 515895691 737541512 610974628 620209611 280125336 342749514 499888135 737001948 685746060 730616052 495039200 843893053 673495844 970274798 85301202 470277699 976444331 999343458 6322130 452017481 369656310 697719396 557710548 866598665 548681524 687438971 20959330 936765860 121302082 290423296 495756847 796770252 23929130 781899315 149354132 474766184 422175065 730045313 583455310 738552390 857582384 864768778 270855223 475456897 764046081 808502165 551065419 746408679 717630196 881673770 148673242 431597823 558318542 961433888 740202596 748031809 596517917 944267030 858523128 982178489 526004391 980544120 489021818 832793678 498273837 646740607 42283457 276877917 844952915 926374377 585279827 735493677 506974090 868805437 457826881 920158687 103852942 983611088 636293385 886885681 809159526 996945535 26197104 511480333 672925607 726352435 711820590 856569762 411106439 566713072 334544388 854130831 772926528 801605546 251708225 662156639 748538517 835452186 974343150 987159252 875026621 980999056 47202147 732727416 101344790 337554713 356835134 942918164 722587499 925658649 421299761 658115417 983087796 994706981 976090354 978916137 272867339 448279783 128233488 242253168 951471846 958378277 462181202 830105674 15481260 590938389 509991259 525412703 211256343 730323030 349420165 958329443 82137505 863747080 449308947 814363096 339478938 584392500 188529430 242935101 947997689 971239215 604393333 907763702 300000917 606514743 897870029 959784345 726179940 778640113 404984166 885631842 326061351 379502491 863180393 984322964 799447252 863866843 615795953 865100107 45342178 96476685 90754760 177397045 281155368 328253804 909500282 951471598 571733236 785934425 80175569 526554238 877113231 952673897 924150035 953203128 139739030 773556232 785240263 994712548 453899265 842644794 639835440 815930926 829719730 870169183 145475551 622416673 688321941 770994031 803525758 847037678 460853058 657693696 363369212 926594626 217739148 711190448 159529718 541489317 348135772 488681332 408409480 449618590 982759868 996117724 214509321 302037662 387764171 395584586 167517008 638413180 989958140 997130706 246598269 557365185 330470605 396020331 531278997 672086794 628925016 807235334 165419901 878832892 278589304 954302582 187486364 842611954 252115065 345044520 829301158 969857668 463278863 948050442 32209314 480058306 51434449 135372430 331627851 497424710 801144805 959455568 561407767 922261843 398631723 621164558 302123886 643934553 158961961 637573094 790311258 868037536 397514210 981289973 323795865 600644523 521979451 633562039 219658501 746892216 152184778 270115861 757253090 891654422 62683483 961577599 333172175 740059791 23004015 370674027 314579763 814487886 273726611 480714890 509532984 758216091 644376518 964085735 131789831 518506783 185815877 194970823 926930071 971442976 572964718 752896167 854714557 886590830 513201081 958038895 877294901 978218462 728370269 785373788 511253780 977391727 412112622 910018177 645502439 688307183 928469551 998118113 689148065 913163351 133502081 675624912 518477314 807412936 203435646 737593945 328328247 358733101 310414015 335552820 123008908 521984292 886650656 995232190 704927785 984292198 112637322 593426127 288286681 736129516 601815612 883269366 288684705 292570299 19120425 380805445 327198278 809344718 33505017 380174149 295573194 671432971 521928537 641691837 267498409 942741564 156261127 937409812 176294196 850233325 47809492 545303283 727300001 894337695 970896736 979086150 357631575 625785560 751027919 966912387 631118943 923689200 753370788 966346531 957725352 999150315 441906625 954517338 730503275 787515323 51455081 299151947 562534319 640499639 258178390 900009533 855939708 914140552 215428324 878503532 489410884 825286500 346979789 854413359 424675198 476074958 364095452 609275955 113933470 544773390 253714781 829834146 679436647 731957673 227575435 562544316 413600471 642885216 200007420 344783145 35612629 925020121 942673762 971854905 255725094 287901103 883955620 970524357 177504511 993089827 110541530 221412677 86395359 694735223 917815433 964942544 65928638 858906447 231085649 466373671 392309579 462529709 840156409 876825190 486225116 882857051 41853777 398572015 430718039 548129853 863780556 881972462 79034775 351415246 374354819 777313426 673845978 961879438 860649683 953023126 868790201 999525096 158027053 767251686 718979685 839256351 270815793 558188343 271220258 928539515 934435672 958872741 919246201 978521438 30450262 690694940 552117424 942997363 943504369 999087491 616082219 884980469 895768929 942136772 580704990 782377259 677208908 782193594 440910799 464740632 840476177 867114304 838514162 989318322 403374555 580688990 501174111 765660614 452072380 802917846 949877758 953069587 739186397 994346103 596295686 933433767 195508034 905908466 39791795 788354526 101240066 542992255 637188254 970865128 47827258 854038521 700317866 746722653 108943232 562934037 933410902 945383127 301005478 857002866 373272665 805331449 192812594 204763954 841761776 843257937 917743389 996867231 73514228 508526871 650411284 794472814 832473506 915668674 83274620 492686225 250814800 688519332 59550171 824697000 868238793 915834488 579359062 916380462 254561567 737975019 427224691 842187209 870258946 989795018 47591397 990121595 44019659 519330007 378878807 633641829 715810699 999052010 631474470 669940117 667708091 991318123 959879651 968604065 600893214 676856485 954248535 963981061 876476918 941280783 383057968 843097559 273968437 536652073 243264546 782089314 47182516 142173718 462226537 619487941 667079617 983514746 66932217 566934544 706159644 769277824 417788304 501240017 254974933 379508275 99349999 174077310 380544386 552848263 929592689 954297642 935503576 967909483 315709980 799944394 880428243 998294972 212539121 306676973 720016003 786090658 428475788 877379406 44710947 969262102 435463720 770483132 280127135 647788245 486848664 668790619 588023054 949842142 2818894 930961589 901305521 981377380 32156289 367665001 708626695 923998692 200217364 774534232 147474718 291589591 621317858 792307217 930330859 991594305 261239947 385371411 323635843 336136507 271395301 909299869 157571972 776400040 243000294 256369260 975918321 984540148 554018632 810074183 819502690 977217658 557664123 750611712 690436853 862855569 488605512 776995724 906784421 948550566 58940221 526632721 964949618 997186021 91359139 771339086 114911974 907235333 520401615 660522116 7737250 15254000 146310217 363309196 146794209 174650432 949996725 987814936 261924611 581080196 940519523 956998141 861778066 883373971 754658162 875239013 861014546 998100988 726686881 862206774 206044877 659349862 574048062 607610673 832441568 902637616 771846756 898034866 797838183 866255774 26612769 935725218 846951624 890142956 506745367 739412382 931051894 984902260 298247123 977641221 106187553 431301110 180102519 522062719 230898294 491385291 42567486 686262954 246290609 637386142 864149967 977954312 514321078 682701840 319013385 482215673 487854294 499504401 314175679 589097061 350236576 833647846 932412828 985306693 582701096 710088907 283167835 660884847 927230900 953523579 846656080 862143181 984901205 996516483 754749176 860432125 935634730 970796307 450253275 577712132 503738345 985822799 237995780 769423581 1680629 962214424 301263454 468828378 707160690 837269484 947408508 959184941 973040361 997919986 575266268 648625409 341653872 908194486 310903148 585822414 725169833 990188373 3474517 350470785 288006866 586246788 626847512 860780084 44813371 257351556 884164323 941910721 803258834 956124783 140264744 554566440 828378569 935917852 568646520 809860250 141780475 166961727 120196685 365810870 392136636 940766182 576911471 579515656 370507020 857714034 174203513 549708384 977275756 994818583 478639592 772109437 38636306 696928677 280135579 619869472 794524161 949581453 456723123 744243393 926467360 978043441 991532700 998170502 110660511 904606036 976322914 990889025 189915278 371962695 79131807 95332949 969518638 976233369 43182511 570327472 96284166 948368764 415194667 653640436 303168357 718625755 887618110 928930365 453460552 783580976 381996868 748740635 949410309 957749353 168139264 771295983 651187484 867739036 460222741 605578457 207452310 937026576 371332871 679782668 176272100 794955707 115732300 167277573 780220954 965561738 826521501 970358807 120662682 635780466 926107369 987839436 377521702 391358039 12393761 470246516 295828532 457579831 118705533 261924769 419357450 467645271 64886450 764120106 543880139 988071706 73367233 755019510 540728000 690760216 189840952 969960596 302266995 689568167 860324359 978203116 975438706 999363805 896303888 912434871 437811047 581497190 728172059 947574247 575437788 950603220 545946503 658569536 617624656 976977034 253262416 483259724 800715799 934899881 512029768 838250429 955030016 973862933 51696894 475683986 381489773 407896672 719227020 845803427 541117008 915403194 398020947 655521057 498092524 930607641 565925578 907561779 385188258 677068471 96071296 682223362 227253540 475463433 498904520 951789545 124026903 930802499 21641226 775187800 481429754 848082484 474985395 692429919 846377941 860859537 913673810 968372893 399414466 462294819 319189279 509027974 189307601 597504479 790399853 798493278 670276190 676340503 286539550 965408603 161909827 282521157 696567175 917975549 653884362 904544848 39422226 256467313 135221806 404721523 32745495 361602049 511897576 628540909 470029722 550900811 23701989 544485760 627666515 640494522 610396193 702905207 141081435 673196091 159992288 896623620 204208092 228054250 569928573 945209000 57046494 288378729 732189758 976090535 301801073 433307410 955167560 982786171 221819262 945149960 471327448 934520816 552429225 710559021 277354934 736010631 198983201 450956604 984464248 991857638 677251369 788441595 385215065 657263040 378727291 382497307 858772392 885790319 829827537 849505834 730692546 975931112 134727680 711657603 327453103 510916125 786638247 837184836 253850748 779560728 464519009 914094132 442907706 445233683 818860373 945676468 137659629 441008090 667065484 816867022 883864909 967341215 523801547 934033110 369581196 946779334 539824357 957299390 515321005 545724892 820480489 901431048 123896925 983349355 406265461 598122140 108113961 673190160 988647547 989049016 73039729 201981357 845892407 852289749 711611474 812929995 849549742 851442835 926540527 989329547 211919570 558449162 435913621 758185039 334186511 799239861 386613106 532388870 479944604 799986856 862437673 951972376 682864174 693733809 104428603 533435524 293570787 552399115 186342678 589784698 187005814 557845267 268197419 373541744 244174953 311973929 81764575 731681971 800419891 891848620 674592022 937157320 496284611 896745388 15057989 747915275 456391572 943914757 200714671 771081144 153073665 580893966 325070664 795800809 456625827 508133205 538130746 578618395 596257720 890624603 240600718 908051603 191524112 434430102 817128440 974585588 75521684 342564713 598591942 822322200 186405607 701339352 655792869 931701097 118717859 490966611 247495492 928352394 363019184 476736426 34308587 430652776 20811227 167736172 830055062 900422136 892411167 893924232 859872944 932119885 655766767 964174914 978508559 984700818 872465700 985348397 793998220 812673050 115646746 240563974 604565074 680703501 116442539 313019581 122039831 703979390 728837829 977365441 140220826 766470080 606680138 715046610 782418862 803297806 185855033 577842743 364293166 447975762 378914279 893093358 306711869 404894511 563743514 565045908 581547061 612078383 129564194 576633316 736319026 864006829 798097850 886838972 530836342 613176147 790057865 882908140 370758338 671582363 565528435 955020183 870314289 893749934 91107573 173630370 929148884 952825758 358199030 913379627 55234084 667068735 379350170 871727218 868440726 913979801 836800154 856582605 771567907 867579981 116452168 304175880 451378726 792424286 567233533 956608687 131367082 444011341 851723185 986315413 484415072 513346217 380324825 843084804 74024411 606329279 904044147 947887664 182301207 221354502 776133625 955656973 763909673 838213066 947113208 988478481 686406774 693160411 314016095 394231951 613025999 842704385 535626739 943386943 805352038 812764253 726677742 750794682 599094405 646338770 131924099 580424332 191677492 611666570 928837092 992375200 849720972 874730744 26793542 559649048 291151330 713094537 934459968 945640187 930061018 972241553 535634069 771246295 884995717 914142625 188524244 270108963 940915212 996110311 800395525 863298835 692530003 991865386 296539722 386327071 14708227 294193906 240984824 744274654 419444365 688477472 504164067 987801681 819437770 928218802 662478079 738160852 785776021 807228183 405273623 419419267 37841769 531854407 97435100 957755873 410968905 746046680 911724753 959725166 208973425 297143396 628202831 992894658 379350999 447292841 988033458 998687617 206938244 388246903 278251796 446757387 272126537 713962501 377706202 867945912 27709143 330117018 691988109 717285741 70795856 331822116 951165586 998171139 893358753 911882503 564279397 685678082 181164626 336439745 746786502 808077836 273658524 889914967 62745944 164929200 905097204 924339674 767147019 985001440 895787173 937073320 995380882 998444986 314478238 370634601 6618018 442970646 844725735 884261794 490493187 849754923 76434790 454569741 28647457 114212666 900725363 915152729 686707465 948046187 491342027 851783731 556669649 829306853 747904894 800680541 482042167 905113476 777334516 942919724 836426234 957403857 175504442 472326305 398132562 410099121 624461339 719336374 15362355 491151207 942184602 946495122 168211208 543876493 548179120 598725350 994200852 994920889 701709176 786462383 324878418 704501921 446759858 495430432 180913263 458061655 707609117 753271732 506802838 966526131 404772929 541243916 642691892 900812431 1806041 706729468 654094790 728675557 591660373 623359251 525619656 893821985 623752691 679613186 847967069 871056329 499996879 672159873 360025408 397379959 586574017 821843677 475283475 932631503 131600301 830228702 223385679 790613785 147063038 677647877 300200472 311914557 947189175 969832145 950046142 974034965 439558904 734371443 37988655 132998084 195554490 894062151 678654714 886218518 93960569 741022321 91680355 802760142 541974310 667293999 887660513 925661363 75234150 411877416 174049529 568182704 401084196 488155304 501364234 516216774 65032241 127877545 784545899 898295843 3139626 933295159 638194818 779796938 986309844 992619813 804636012 857919337 538641626 833937521 461829198 545762868 104816723 241099033 359474206 881332780 612290337 685915921 309620426 841201832 671131868 889336841 474620193 475850876 276029747 977149159 956275481 968469533 841267780 866813181 11276508 145222150 731152404 889330030 688767634 779011509 622447182 645950763 235056510 626055773 470061160 498610143 556586550 773589806 360903489 581549456 46823207 211021521 701138574 791547577 725972810 765302645 217454306 689079156 696476320 774426567 327576101 382460001 991421797 993251387 518148641 605372742 788943823 958616198 296024633 510594350 921730386 966226298 339545306 653177299 628106002 718364995 609822545 973661576 133158555 814577695 302086211 732330528 343936668 564936603 93752577 705269695 240347374 386483396 496212579 726548551 850188386 930697924 491876700 830929556 731010438 861448584 420524243 539258623 35982316 524941356 822846531 829816404 976603014 991009192 975150818 997525335 252666406 966334561 782628463 907505669 868438888 968967699 723486287 795320001 845477086 899910299 991962078 996740353 584369837 714376143 405227348 835283945 301778782 987843246 716757615 807156759 825672078 988830174 414282616 422533880 520902892 718948423 783000152 951319244 34143052 471246402 857314356 917521718 37338530 699847093 31066218 837988157 422692397 954758432 521903967 694582431 364430838 575721004 582321707 928144776 846092938 898003500 638659104 667251009 963128691 999867174 140655757 151846500 979858011 998136716 289747234 745986646 814655276 966294680 117338937 528127101 436499975 728421072 803974684 978264090 123008513 214280126 130765439 638927368 114400002 300482262 731062270 969638836 698959645 710618144 187626338 936348132 867798471 976376268 683817848 988525612 705902268 766043362 991912202 997198128 71799327 250708781 459510242 639223728 978867421 987317281 109331514 736762337 257419329 834095894 693470098 994801287 436536970 813898023 184746414 593952654 163380748 680108901 866545510 889143082 173496483 952397406 918280943 977625745 653551456 712024883 195952685 843208164 4051496 198137953 42654646 618191229 833304584 928464992 676276634 686773559 927058644 991635665 88007525 93512853 904487807 990087633 993136391 995509035 732532947 806929304 136297947 275436573 817234816 971596938 165513551 941396237 415193444 573903791 85081564 367506228 239083916 633890235 233983534 874419253 375404164 954599450 100754333 992891812 883471002 907848459 234122993 346994105 374918165 661096322 412292414 882512573 691076119 719364625 866733850 959907949 430068385 619254934 522163771 988764621 503160836 912472771 458494952 541410102 170176487 525450980 469116382 939801934 72944218 733591466 316718419 432045373 172414865 605520755 808518118 880834651 603808525 604003489 122379966 444933823 895410634 940936267 727713008 997443178 363189696 969232279 971196339 977734268 705386223 897189649 217963025 605402684 166573361 370220321 303963250 556676483 703742907 856263618 870958520 938585032 313948568 789253381 391686586 462413664 287733238 851067371 284239612 944372035 578484578 709729015 696231394 928645427 127281077 572143795 675561378 890451006 815925044 999645639 444228232 517258093 910316400 912106910 245126898 278260944 15776076 536563193 689224382 924340967 783270566 895980411 393139481 500027315 127941513 135889040 358125064 613411176 394108655 964604445 779495907 866454397 72596169 969185075 34549912 832895013 68836936 167325115 152470235 161501074 444186094 746703872 57239245 724708185 624847628 667878863 829514410 883184048 316755034 349630767 798620891 878737672 324613000 381068211 374133775 939319748 849517694 933020647 876876758 890555020 247240057 595485382 524644304 633844298 338776798 810465947 635022833 821816936 294162586 372515739 179847080 636407205 652406615 702777759 677090224 784128482 161701987 459049101 70970844 875119851 18191956 928851979 468561206 599453239 724002239 981378618 185218624 838758198 362743963 438492059 850360524 913071763 30265920 73243682 572169368 893244820 479762355 877429802 868260109 968378208 220201759 506261563 99033849 752288263 836896757 867914939 836442337 916372573 730974210 845183598 571056432 749395034 933164641 964085163 600113053 745610256 48855029 473463527 776988122 897601236 149461919 439888627 174870476 817266570 877538255 884433721 180414620 979772745 455196740 723538490 679661220 712209450 78582167 887823414 30468017 794391034 812505204 853972234 748094932 970408033 465961086 759183897 663364317 752031269 397074994 833889525 873583524 933494620 727396051 764623600 525305946 877338665 569531228 835125573 550404743 962292251 314685137 945926108 949968379 967990381 797998352 986553156 939862247 941757362 770360134 812949787 668776927 907176040 706008468 816411792 644010847 706948206 544811542 759155115 952485632 953758043 230188487 313721048 982558286 997202052 92797396 902020932 605462368 648331539 64551736 476478550 684856157 766682242 24389278 189445288 902154239 966652703 621514542 830245832 710097031 902620485 294259474 840164196 359060642 645277482 109431139 863759175 211927302 999155309 868003521 985603533 770407925 774321908 6437907 667399885 465201147 494861985 316035607 752081628 344402329 838826118 735843583 981450296 514386056 657755947 810917097 994497260 762103213 913274523 754227509 839278453 71256077 257047361 850859581 911686096 875966775 904390500 411662980 650110333 619766383 694429061 848608778 984168133 159503459 713516990 181238352 984773311 647279349 684056291 991483198 998953430 729303209 818754309 592221671 722085185 809080072 981333638 499094661 804870167 485884528 971307014 567641197 802976590 820421438 988319797 76754336 898872738 894557959 982356720 808640129 870417429 933727176 937892540 471498677 965956291 420473217 526871423 201432937 648949502 606420625 973065478 163728658 999167268 171067319 662070889 888352097 949973233 435068208 671200615 483710215 486066829 396727153 802773766 371219814 443757115 400373080 635127446 805933447 826053361 703554123 938699639 950813087 968279110 4326128 519923163 799116066 815294023 265880085 954043706 761142840 981929321 941700395 962282246 774552554 931295885 113887089 747615363 180969874 236403191 435878868 949916212 881843181 995057693 543459018 888562326 426024485 679327739 998980863 999900149 375243114 847113295 322375522 718160054 45199834 662092829 546711475 676802111 47979951 165329880 124956546 209306671 877967213 980814839 425467333 988841594 266423449 467609221 370255464 921868327 923811015 953540851 279694253 631008305 175822320 566020793 893872997 898913339 328486318 655689954 893405384 926343222 657920151 730782285 294669924 547483179 41209682 927745366 888902692 905464807 933473701 998088680 665515481 845049405 567669396 597019263 887202816 911964771 278139217 668884736 53657082 979798684 692540521 703368724 336000065 687510970 494867815 904877389 546807193 676976843 98083049 948900600 177792948 275561889 729490801 798187546 479997099 604003497 104094759 406459230 509864550 617422921 361088225 980051563 284373456 977362770 205924830 309344406 461254020 483547571 887120524 987268431 336135853 419089443 143309841 584481159 811457002 835596564 949636233 976590850 945062037 948888927 627978774 681850770 250544361 405425631 62130477 288034355 390639476 399445324 698681567 814531353 151706698 179481250 861949625 981206625 503254886 803410033 395785770 570413720 896976660 907316851 872496451 942797933 193087062 747472313 906817094 992506458 157245898 425321236 237627248 932586541 178795426 331094938 363921715 480267206 846732438 903565427 418256211 978452916 764324732 809501383 792868511 820306866 87851958 343323904 509966134 814458432 372280252 391500501 890199436 900099315 226859328 413476986 937576494 937754243 628685945 816851163 263142834 829024908 742428114 790698062 529278051 585192781 38164125 278644253 721324458 981264194 35562028 891537276 959095025 984453443 62256055 263975940 465145696 602469709 547512764 946478910 901639123 922802298 440475292 918053527 647953608 877989150 659067650 736600377 393956695 465184140 659336561 899119480 626641801 932876187 92109912 861811600 543067429 555980381 721272332 753725138 425913736 703458873 269109888 696811068 716032508 717018938 121259270 667187302 433578911 583793533 761210743 964013786 887309048 936698472 156944426 905460658 233972796 580258388 447597253 528798649 280084717 843967406 772897475 819604235 309789013 851906234 408410063 532088209 487347362 966239757 767146485 862671797 877315175 928204598 805607567 913178417 906154973 926327204 568245168 911024314 710920073 917826552 455249070 535935008 424359639 948529154 383901486 741950934 869033095 997963822 475509547 476839772 361646510 759572770 714084725 923612845 72522817 735532598 298710772 886052371 539505600 962576634 395197715 678814201 323411397 980933883 122633345 219913679 524776144 590157865 340862050 575688812 722088302 978031796 380565038 871974609 539091544 942918606 191643022 742435964 321933031 689876479 342335488 644225335 265795515 639178284 845690850 903600576 679391324 947170323 159673503 291955173 72199601 671169932 406245701 639298405 215939113 804948124 460605392 617801626 400343438 983177642 545938327 866712557 209430937 688135148 134222458 941277906 695349727 704468161 22536505 601349478 379575820 796909845 981433715 996192405 572651928 681480097 234163731 938881488 630187486 804616027 169589522 772158611 594072883 876703050 266227950 952752457 428538979 458132347 33499371 420001782 942977711 983463739 975021873 984204754 379099977 939493738 29945402 229261220 641396217 660626724 568642809 689520855 346058238 815051583 633432052 851022363 517819359 710764046 684538675 770930866 421524569 446782092 60774615 900361385 642000173 823232634 151764428 473026270 110657475 911275746 9846182 23047328 209582241 422687325 352107096 769886850 858205935 864657199 807557012 826433866 405363901 789937060 304987244 789427779 162692400 582312083 929784607 944129466 513078054 960028821 2747430 848035907 777183297 779141999 752348309 879488899 803911071 867072375 382303375 836797649 950254877 966064239 92694502 529813346 614916822 919764327 857761348 889685322 183552334 417388006 246319553 850696957 47898172 246485017 701812626 756716761 675994563 823792869 270153792 439956498 57774888 735188543 177607119 347364095 756801565 773562798 107063091 135742740 565081842 726817791 720784595 830886467 460033104 901183457 468347093 924356535 732538560 947574475 726244964 831178998 50909567 423908589 716708202 810835062 344165146 375591399 565615178 805881937 17497916 45125298 379761478 952118443 406959300 656751998 846478650 951292522 180383268 385671672 398675017 730719509 701337119 933780028 664162895 750359064 58258181 539602515 751879045 952444680 946893276 955907954 210659400 237846749 690416571 857245457 486657683 523053139 430018682 780935443 446612009 570585027 912980979 971146131 596466605 763812139 871450232 962503827 380770854 543362687 1037395 958283077 151130058 911231850 456594835 722404109 32937355 90691969 732157287 915099877 635022048 785750547 206062953 895325686 410840315 738244533 325216807 682012406 766713982 973569816 77044933 633778656 338376127 391968615 122389226 495483111 380266124 535252117 446368267 632649485 204043676 982048727 499398549 580307757 223414187 840714619 860991416 883431686 518297713 634971402 425906530 463147125 936889510 940853842 377478841 967303523 602020159 724616440 865105978 993481755 402324430 471944788 948708486 998797200 722174806 752344822 841205977 859227507 702983933 826360683 784858389 869579663 290398120 829825387 235736731 411042341 794437278 819583590 981014499 987650828 578988006 992901069 537286146 703666270 932777341 992032113 70580085 297274292 534186608 688446482 456187478 733076167 65104903 364653176 771092843 954334771 323543037 518375763 250794735 958816860 52332138 624658612 405304314 457171050 549365153 560625358 308537099 747141262 347322148 806533212 480079776 627832270 298643362 735548783 665497378 981436463 51217237 55127623 179448238 622744753 192477380 721487919 528358450 767551230 78714517 85597056 961912689 979902261 741431435 861333808 650758898 724998501 166858695 563896470 782379750 815730124 998650071 999900103 693915484 931684086 14904968 337765737 970496628 989172264 708776003 818265768 697145675 769279894 488009405 641591782 644957737 923228838 777982822 937859822 708481606 739476546 592393656 787186551 379398701 631673811 391292846 701711944 484495237 897541836 637664140 947810156 186898351 304539694 774528445 917027424 792077956 978736795 466921190 613566499 778295232 883899370 543965029 739303051 904753423 988238533 463168875 472354319 806448773 808322862 867626586 885195602 639777166 679344591 442763190 506924951 925076047 929691040 460121813 498856471 796572865 991532159 129451314 204280058 763707122 996163634 365203205 707245031 320877783 400985723 960945607 977160330 707464841 851099157 880001429 889609519 68149524 121112372 671931307 923676001 583643710 969389073 738759615 953232993 662894792 871927664 697973835 866687660 648845997 676384970 200861940 604662121 635888962 891228117 655519075 678565978 367987065 646561936 865400038 972983813 229509557 569889232 408008934 489855738 647296154 954029121 895519866 905626043 899886103 936066312 948871400 970382683 514180305 736404464 491869153 810167212 795320536 928851861 85771414 323015212 70389817 123915801 819001250 861175291 710723816 725803965 613775127 700901400 557189290 564962716 200796022 207394709 378313105 639383139 380004099 405077468 506621392 879480276 18358516 128511575 610759148 866852048 488294149 837453904 410759762 463288536 457639951 871849373 282064667 499108210 766074949 931564125 47590609 989900716 47644800 762379985 323147738 847876769 284638205 929119386 42467366 604705184 962610022 968816989 645965236 988062290 485646660 789548998 750949511 956736932 604891434 884541303 830834872 900354922 292847006 991163212 193942275 787071124 300890586 801545878 208105263 544751159 152994176 178293892 967711597 983807657 672160936 824368315 201159378 302271584 329227154 760031551 501145400 952568591 75401858 612005524 736424585 918177291 600658957 771410568 917483594 953681955 156880645 637096651 315527602 552611530 442967678 636029531 418197977 708475481 594123369 659390616 509574528 689421653 252381976 294785813 974440682 976798046 825522415 898720668 673262235 742615446 298002644 314859618 167970342 991804705 897643808 959918118 301131947 924664997 245220947 499846481 272800949 715138791 357638855 679815990 303585614 765668523 994067579 998612774 970350273 986636425 917694973 945225165 845213057 860923555 577708165 841076031 749737319 973806781 903551389 948107021 781683888 947994810 626185876 721365764 97512780 585446363 555497943 709157267 198075911 242736708 210165183 577053410 675105999 775949106 910961462 946595368 460951740 860864019 997338154 999989430 313112987 376781712 433784293 847606882 516775247 538022791 374304282 861687260 678238678 808781990 92157394 163946711 730397053 806038302 145444028 272899953 712675492 944479336 231013706 911130790 753782989 884060668 975870164 994030457 701314130 865380142 129684845 680232296 2499118 831198972 319091717 765321889 298204847 720641082 161338891 649624656 538031220 551662103 657358816 756451080 910720020 980962903 363567012 642289217 152526443 327338753 666102442 934893609 663723651 842252259 811805201 989677318 6169536 982089947 685447877 824682221 586347750 715564954 820836859 958096415 370471640 562351587 51814969 833370372 955184572 980991584 738781448 797211344 905904688 920608008 441324204 455314298 458632781 482741677 619979330 725889486 780733847 965780930 164579824 937776926 371917127 486810998 98264158 257648858 676879809 706020492 64795018 206153633 163774424 699061168 937534724 968736443 491190509 893353824 860559320 862560157 324105802 922413707 467791654 919024206 719551215 968514437 786563372 905324803 675620759 758374296 583990305 697964889 694582467 919328460 512194898 852927663 103561488 895534583 947200652 982041170 35941283 150602019 497332994 838864360 676218085 940610288 178486725 607617871 282502435 684877632 253245111 652060855 286939922 826522767 9386925 162849287 98901674 168612455 892100622 896465969 130313968 416687497 649445334 679229954 888980128 923780103 497594556 835321789 643771748 870087013 56277406 576415018 567735195 892116509 723500698 750775447 361953352 406531227 822594790 874973327 328602249 344195006 64679745 704101804 808373407 960067714 373951931 760450291 795737583 852764653 388562420 757208935 406571400 934547598 616373921 747390912 533578199 909474252 153655555 505129195 884091411 963685328 675665238 980753924 956045963 990022655 284929356 487129866 285565447 338983895 343736637 897243041 42256036 960324937 156704193 854858452 538295659 957024368 796403576 849679050 826801191 995919041 262882353 838919289 953122692 982657870 467339851 987070388 650575394 856820144 14129565 321337981 94040718 801685247 225735562 615260863 942377662 999086048 56084857 421980309 77910895 242171405 961250397 985945669 502264902 835345863 188240125 312291551 823435249 914907802 257034888 956647659 141643341 805493530 418356044 554108674 664666605 921070911 270940844 758951852 751128220 906028812 553660380 870429379 211133838 709048024 438758595 729607406 945265484 953797931 758930506 898376864 397335823 621683810 662571667 732466567 71153564 641167054 65229503 478939970 969562337 976600726 471377814 852666799 73772077 639471911 156694782 665948172 74353702 893103580 786482929 983750662 126377754 980538507 930730920 984511681 832109280 849416271 632673233 726792363 946743033 999779313 319484202 623005755 958333336 975490056 53224547 797107051 350040048 485407951 437799569 667222604 485415308 748572758 539874709 729181435 519215373 556467926 424562785 682830831 792279649 900415713 664071102 899889055 908594361 928380880 472197379 788711036 593177156 826509664 324605441 503743594 232459157 540475181 413557828 815660787 44015497 914098372 316391323 477695541 284108977 983297667 565898222 660511781 613718056 618695832 138897031 703962922 993088606 997538238 409080634 829020553 118723235 378339157 117293205 846808153 730660811 837868382 429017954 743093337 616910401 970946146 121918186 567260771 407733566 989629527 720746398 905653032 30115533 463411581 148353120 327038227 509048643 533067220 515417160 789675562 722743167 765591876 320932377 864885791 115512650 877498428 33997943 110885223 677824604 944958861 503623677 850183487 500843817 999224662 841157645 940144230 799569960 981688572 274435632 339989094 349174973 610635420 945749613 957535714 625045195 675349449 772471058 885924632 898591138 926057378 337023737 608192341 439354612 497585062 813670750 893612808 89417268 589400808 153568896 766305089 136391417 429739527 772535828 933561207 840425126 911645073 76874520 465635316 140912712 950173123 373671631 804341561 552269626 997443460 815586333 964626975 310287381 667805078 116646485 428066003 954613991 964548299 258309950 490728804 649717377 819891835 739090650 930738524 574481860 613520878 411980085 482071805 555062568 903724894 437337938 698474051 750434638 799946543 26625125 982025627 320327838 410224811 292599585 552585390 294346813 556528973 348235054 788779018 901443648 990715438 605075986 621235143 401849279 616216043 762538195 899603543 930324743 962646646 821420913 861217664 164815722 248408225 823822362 954061674 580880094 908761575 216557255 470300170 183159431 825586362 445398094 448231152 350737869 566277613 359028692 846841275 767914045 922973658 314044776 889408447 845140432 974452479 988679493 992318354 877028824 909796065 813074099 878541377 536996208 748777415 576943022 770446045 101063964 700600902 222576345 237942450 204865265 905333373 658389434 895984239 505529362 899593183 657859611 958734529 995605309 998128941 418506232 584358082 299786522 895304694 804069209 957136347 856459164 949497125 400214035 545666586 160090935 783237956 689587954 921038417 674076381 830257070 943573001 962861722 498248621 550897687 192099789 670404351 57362094 972952275 668630475 927562561 974605077 976734183 423003070 438154996 913716164 980399958 255670179 427641742 904848398 956834291 898604490 962830871 735510699 830649890 473903675 601276341 368756120 429643575 498912387 924211843 666321321 863456814 143998609 902819572 382264892 894314591 335658597 947630067 923922975 988755201 75133462 724041962 225185550 809944055 421049055 577785393 551835646 916392113 496031873 524676569 433642466 990050257 677896172 753849074 183386535 301650852 832490453 870792453 251077701 949923116 478530464 665552782 524117359 980610347 558314275 976990894 319780042 621082365 84835411 211882832 514968165 754710206 355186146 410871779 983467629 991606859 518044311 941025279 516134043 882497968 452537559 822000117 837079871 946977537 352211607 994110266 279548582 497116855 459629992 669764890 605347869 665810928 299633620 836167785 698099013 942441761 105773087 163858688 139439639 404809763 516088149 776211748 932721769 946284263 639267840 978756096 950856676 962657299 692485742 904870941 786401372 963133079 119518777 571159731 635528738 993572025 709358468 800528354 303423131 898349778 985945578 990839622 302159121 454861453 986618634 993634055 402202468 775203240 466250049 562972366 801361482 834765987 238900498 528053828 506375818 981547223 505116090 916166986 727038056 799678412 331303735 528695210 534544216 703340743 887638669 920349767 98002706 558370349 605850226 995092206 242502141 718480771 621425749 639110976 295948470 905521026 853461295 945307535 853621111 971991726 805506563 848860374 663420387 838694230 628313396 740256752 524460738 731391430 181362918 639014627 162723370 842503005 87230167 219424362 404459210 899891078 141070850 734782037 141401140 211281357 315978262 375451630 199491483 404293297 146033240 148571017 772513888 823902026 798746928 835968059 405698910 544078457 714360469 862188620 977091039 992090133 928281201 982707765 110546397 278859305 585666457 710106571 994150576 996311722 211088796 378848617 134611204 282550161 717940291 894895707 36646765 152908300 429692124 998727552 671168707 829633057 799839507 923131122 832523485 865238173 807444291 835636579 437934691 749843116 436900074 795662223 945133491 948284832 458675699 686070727 826329716 971481476 317815974 961962501 660167348 765094961 976474516 989979899 96435121 494300442 133498333 154850516 988305999 998604711 870137977 954770459 283976431 727303239 699857569 755882717 265782818 947839754 232093915 595237665 297874736 848005710 956997980 989450039 29463740 925955632 184074912 366549526 538760204 929424334 927742740 974424156 893280399 902032482 12510401 983114847 795385496 846785212 59738342 223936221 195422112 463434517 750809024 936702766 688929845 704845444 662480924 827141226 197979913 560569377 999776898 999881848 103766114 420422066 130260062 481105981 943438604 951148364 747172673 898691639 434458758 813536102 390754622 873996692 981183986 982979509 310462225 947258450 634478995 788619790 74940311 202872077 196462951 656545500 449506616 839553975 200150072 592568300 31258761 802759668 830034126 945587743 165217133 397599041 638470047 989788007 853711117 991036280 282392051 432747357 818878182 839391311 394942361 889407877 148849639 418809546 816355468 987991404 220695905 353340486 274692389 407949287 848534154 969330971 3827032 602076998 642755201 657839081 600306598 721673268 275998875 489049472 844378711 988494755 796294859 840352447 279116201 832278338 253144278 864335432 599516200 611861376 652609382 968888039 485164728 762739830 958368730 982547428 915255774 951149147 310202995 933098754 608636092 996843000 844533385 909224898 967958286 992859436 745408185 807541078 225185447 940713878 303426152 723122084 126113377 629082736 956042941 993839916 721871628 905054538 765523363 791975302 967918234 989124591 435852842 744119791 574057973 916894847 680529122 799035277 572134709 682412273 660159195 731905798 265601284 979479285 163544835 393723292 216884176 951966018 914396360 944206538 961243566 984759872 765905712 883356193 989387914 999565117 276980046 598572784 737615814 993939975 432697313 721327063 86568773 278762598 12800984 309855035 919580322 996016383 458568292 849649067 298228993 344494797 371032892 647202334 684705420 831951313 377025997 812760582 188303687 290642911 485115573 876599737 811193925 936683632 799825417 887559616 113037653 596371167 25429447 297196171 164466104 699964051 454818773 598244508 477917441 703116274 970217761 996555887 182337172 397476460 404799551 545300036 641980239 788379345 122193476 752031545 492179123 819255309 984474275 991508474 194290490 620584655 873328149 955716620 589068694 748236353 310180990 311108061 633151007 882090937 381101387 921964760 947295848 961549436 890223654 970394216 26591853 90943873 213174904 936930736 74316693 204091592 411980578 693141488 386215389 649294403 329117193 492190231 377869341 532661687 539608430 949879651 458250118 909072843 23880906 650351440 662095369 694374589 557543404 763030557 761385381 803762025 541378561 778238801 382685837 414798134 948231370 971055544 934339726 972400415 426498163 852462779 455752897 665005626 546903588 707811323 425566379 979008046 333401934 917341528 34868117 227569932 244830525 957878533 369010773 717210169 159798540 510035750 948287563 958505926 471002073 983416223 441600135 882875981 231193127 265234810 928262294 970877946 481113769 590998723 518366050 654860921 739082226 883426190 468838068 908548796 961659696 968516287 28507440 802528185 669477677 769374268 318027699 816371263 950494370 997256627 428767688 923407337 958448169 960804508 805672815 942771427 873819715 971928461 947849820 949421780 571216390 961871273 219151559 815515698 510465916 941306403 394721299 849550336 452888260 583938608 676961414 880609995 630516684 901340836 760058472 886344271 583663246 702314974 232634843 694909588 592614827 786165043 377046376 989252020 944393729 986680816 539559283 656225226 369137477 898593889 27112730 229309419 74689722 649158622 492889812 789558632 540086671 987498516 418352756 757504116 612935200 714455539 360801559 904339043 221632829 691264962 564395461 637409363 854321034 904704415 154929282 407177486 970150163 978320079 553006457 712599704 739209312 919138056 743809563 875919726 358569686 619351948 758822956 829855238 89895576 280236394 765667591 916554535 21308040 374627956 592636141 789547431 350349404 450777543 410343204 994201110 150132677 680882908 421959315 474131900 566309159 974443995 125126738 700135606 851030172 915407627 605863871 672429221 626595769 991768438 737334328 819866581 855705715 868443113 181504306 437533160 454018276 781403106 629680611 702062123 186946471 505743304 41351974 772742290 490076318 561604221 202268635 971197585 823393992 850383874 568932786 840390547 722884560 899904840 622898939 826592922 35767130 877569158 522283599 961852975 374145177 956005958 672166115 937515770 811559086 829166800 59460439 739342143 122727040 836725974 300385305 548420185 44680673 541513168 791650141 975304142 921188176 970222097 212016891 461748800 802547111 910689228 283435179 413594058 229067775 560148249 871658447 964578244 729596310 777025091 549629636 873262058 33415608 625180945 249938062 450993580 276276666 368492220 656539320 841094853 491387741 835833248 134681409 278262672 463482153 547891801 66418039 93291263 110507844 829877905 779565764 982117423 96859046 971078293 89957112 309003642 32796676 632975477 883686874 980485826 951542527 954014181 653139161 674657195 145878497 367910232 652640135 785950593 798198061 877896888 55216645 475764899 202892536 239382299 667777643 984421850 367347770 635284898 971183043 978587404 498998228 834210470 168183651 631138699 892708073 935438265 468639377 481468631 328179242 757187313 527599072 578573162 769006744 912318068 514976295 936595885 681159930 726439825 803550400 859591033 654692695 738136629 702343533 767253714 422127095 688229830 161189623 231085124 89383418 317841050 421138979 575396085 158685376 994006651 887297991 931844745 482345775 533123823 127581682 719762647 117991503 903630572 970737296 998684685 85152700 553988981 580940640 890617127 370539868 498502265 665163721 764829032 301404995 786424843 703792042 931161643 109378637 719001660 509013119 885018868 970735300 987046601 378879079 640721684 866034329 925637207 96358173 295028992 605048856 900705076 381554726 862913958 876912506 980348363 951656874 985128055 845930491 898275405 923788963 978614299 650961753 790065439 245713275 594785040 213006932 951997776 485131984 864106319 751292592 981403073 213818237 851746198 276745484 459704416 636633892 891916600 316704261 748538174 216462707 795054634 656853215 779024195 735904524 793757179 128575017 788111049 917371785 926583198 99997143 335228156 817663954 880512619 291994721 863778800 97654887 695982165 234057852 864747006 165416137 670383204 939826365 973814623 278737554 723328826 308461486 808973596 656315360 818352031 992279943 996792862 370921046 889369597 73835594 155651497 426680329 934657447 716001062 968849610 788707405 824983643 198283436 857435494 497192406 746060488 863680751 923027119 175855541 244158916 294525348 630584826 253694558 662019667 581096388 724189328 192368029 967568275 159279092 375604857 629063905 667917232 951585417 980870257 666573541 836863103 714749095 933323271 185661991 392585517 497858970 715087590 773724284 927096101 922185163 977840754 433039791 715970790 184802455 349580102 583208150 726034271 167262819 441154390 677136767 803814795 219535871 547871517 56031155 889343333 686225468 756802812 768062969 880020031 16186508 163780396 101076725 203622612 330752886 568632607 648900227 999235706 568622035 599325552 970130957 982185604 772912537 791415359 470364657 502389643 197862542 625322960 252462980 700989957 342003276 752058946 954941239 960770554 325598557 328339954 1798572 123914727 780302845 842850710 822800286 862250400 239409838 753078262 749588044 767465849 349872405 407336122 671996757 787596084 441772903 732073443 975294750 979867892 490411459 707724489 531193577 765447109 786322641 946862376 45044244 950544220 585312085 614736812 571831527 939756136 30027964 161215958 375534334 689199087 267683991 528799290 460668467 630446921 59336356 847694539 802402756 844929773 720811853 746043331 212072563 277248833 187774283 250527760 443484689 848143328 796350634 826708600 529217424 838064668 663736719 853682461 712290862 887893022 711934363 921115504 833624629 977821724 498600186 981350110 940880831 947719203 532180056 845330731 723557832 979457854 830860850 966594181 534194939 772454486 79393309 163386407 694045896 724348015 845085583 975980596 579108984 827440801 566411595 928963309 295079763 974989684 534933711 780516453 267946622 484478724 632854099 931037353 153895583 902430044 756971786 993124103 237863285 462861434 261828212 326213261 674096267 953650340 15134152 161201622 877329844 941688126 279674078 466358713 203301380 876820525 260252187 916100998 73460184 492935863 482100291 630939254 342414172 816747879 422426527 779949491 475027484 931762832 843904331 995561968 848545722 866465332 891799319 956426485 774694872 963276112 321023052 941071615 317105750 363912344 940553505 986949357 32650818 894507959 161030396 336516340 584068394 890148295 431157149 922060503 252450970 558276903 710558441 877241867 622770178 811992619 732365470 957730285 779618130 794477922 438699677 597568960 250954813 392033354 400184597 624673053 60023898 414171382 695520721 837311402 224398626 904870838 465629115 962550231 550805214 703590301 601793584 967550374 256509110 898250161 604748373 987685335 278957763 756002465 589790585 598935710 456832657 602382157 842938376 862284239 515491143 725855185 205510317 330933960 293538643 973561713 209843877 276679082 88137039 590728232 751360068 918432728 783362538 810513254 128270247 392930782 922425891 986119407 477679727 905371446 321435150 658820690 951458480 969279242 877748006 902168489 924777814 969960190 152214857 906152016 433721778 858719605 466498154 976802490 815630679 855917691 442239877 631373421 260706233 886950496 345670651 897576049 525758020 952823949 318057380 856422095 325594869 610279282 164535976 334838613 876466662 877684536 197206880 743146242 528827257 607872153 450937007 961172035 995659592 996528722 751567519 826469224 875261329 921071967 173208088 381319873 151512342 834998181 369462700 674535884 285226739 717170556 470688798 571045713 753818281 828838650 864485775 890957052 169169447 650712296 88704249 553171653 619594655 950794484 161345599 602257843 862522942 969370961 971023387 990209847 250284815 352689853 534193204 934983691 41948334 774514035 175402604 898983662 696101141 761344177 591601227 946499191 876157386 919133969 352862835 617580087 389560885 729346938 759684389 806950564 492261241 894604606 718128425 720283149 620950800 955362038 118304787 303524146 262151549 693005610 939951588 953473360 634531421 749020185 232375233 886494203 221529684 308560281 734937345 801224301 760856797 846878087 186170555 220685707 34755550 996987802 491658336 540380202 271983561 684366899 107431354 970599244 708474231 804125775 672426990 836264386 366080516 463309774 675015233 690953762 851407437 931684912 953791094 964665217 971200407 974495465 431894076 991166605 519631281 554309208 786763030 897916151 573112080 621912255 351328 131741602 14039278 751062064 679384976 764421951 790748287 951349117 264586996 335843377 887363936 908891847 971235983 990951266 99879209 653240508 639849509 968781919 730894337 785269935 576784679 730363692 233431527 413075024 341123745 766524880 52382518 986880576 941282388 942997525 827910745 992312798 208458449 712213318 260323621 839294717 203247729 366908595 380357993 446127647 278084108 388230286 309207606 806942910 277260131 510092577 425485945 835749643 963189488 986255532 629290186 707650936 224863740 896666868 990368682 995676688 263369587 928748911 231442793 491264359 433025705 561861866 376559683 419367614 742412811 997807116 909026867 922295772 141244031 330752768 606577598 946444565 528800008 598144653 958646707 981071044 202648137 310117078 315600364 656043913 991588504 996603846 260368467 674157221 202539881 641837124 492030823 615272759 150337079 429110949 923502850 924869287 523549876 878844284 380664365 568273168 614722735 681871037 724221742 892167311 382149200 719784769 148156330 239240621 812552789 945271774 919593924 928586519 896490021 897688842 166099462 748807987 706694758 790562588 804449952 937886000 991780345 998998422 780645838 984844840 672311670 768024830 556523620 795507361 923499975 986834346 858048437 872869726 162685044 386747455 865170265 915993428 257382572 635173834 461310785 540577401 145301952 486849996 78198886 372385057 945923814 947653801 285684086 600973503 498266907 868170216 445752772 831733647 941514281 959587373 607543459 786840511 812775607 962267057 307503669 476704553 861557097 919655532 560296281 926846146 571918308 714115846 336698813 955475036 899171608 910765342 442020023 858768309 340869260 866997285 564385264 690268305 164660830 869898309 881318017 979790802 531268208 639131552 307203949 366322569 855597191 997457304 998207705 999141299 906734217 945288990 914599307 924935701 654543087 989373811 806930968 833691879 171508681 351376336 129259583 993433364 510126778 548510187 806847355 887655643 91757062 958091366 849502744 929985492 293488309 294799248 528144374 541532981 592634982 709919591 326877635 842407404 220851356 753816165 507667018 723931628 948813332 998641874 246731533 359262076 884034891 985583754 657539053 983828478 10814804 327896194 343568554 979575338 374095601 397469679 443916045 772553796 191596389 710483373 875106253 901785696 246276711 962767553 494501380 994104258 185751338 492660008 224369096 681938675 663884332 993722838 537073346 964355142 968295976 988521252 259858772 691901707 147586598 801537222 186094127 270117952 846138205 991845773 903214770 940974978 550609410 902913701 107042610 263681282 934541219 999454628 501863297 561773332 648354309 721619593 277334865 611912502 819706698 992202277 813727260 982789195 634699404 836542162 349701526 524407777 892426149 900224254 638607436 774033572 109981089 937551613 409536298 918745298 84323139 633916106 852530160 867563977 168992090 679993832 279993408 284140358 622358922 826765318 415101950 953333306 212428986 632923726 562026356 669692137 633352797 801571357 496651925 789863602 25398064 777735972 86699476 639028219 431110233 847426185 609175693 972427556 558098106 768530208 319043899 720580406 791523305 863309765 413618861 806428264 129166208 872194256 163245312 834605864 738371656 951764754 427345241 902299689 767210035 793816482 205269894 295297399 163141505 307027469 322515893 756097649 320131722 395650853 307903713 890415052 128187560 557681212 875484609 902605509 713340678 788346670 324365944 858827971 619731550 790516924 113945871 320543239 281150763 610182791 683777097 715947573 767594137 795318719 289305629 654168669 376183053 729517112 625530598 673218631 370158799 458992750 673181719 884202584 572203296 610107732 55450101 999673240 659310512 787902248 327242641 953951531 411627310 951831625 329625261 367491302 854997684 947715490 828681449 834694567 989673614 994608251 997712088 999729136 545109090 918393722 968010204 976734471 999000037 999401462 362095371 370340630 302270466 355343647 978447477 997391695 833522459 862835884 167798134 582199474 283880129 953769732 30052784 673213974 526191101 917665301 276545771 474725766 606721953 795608175 732311891 776082403 921482232 973163810 858793326 905548818 180975333 985630821 147316990 497847359 369423452 708108264 774583945 812006022 583887508 615386593 74090736 205120683 920985719 923883145 731600849 823143243 230613497 549033327 388119865 480925096 550599652 604478823 744712107 864643158 380285314 928254646 267125825 526362428 304977776 348872044 846755703 919306924 614029390 821322477 816501727 883781962 627617318 863305096 315782616 833222314 679418607 942731463 313343843 640289220 718531876 819095286 709431795 986902635 371668864 668163646 231894815 619718938 702513039 805500086 923157826 932722942 593544443 994696332 372486305 899469953 446773211 525243847 797159400 832709243 200639596 542513545 768933899 867605864 173596166 228599963 710802508 926123525 965757056 965996352 237780035 365856001 40635129 207407844 927596329 945639444 335531925 884813176 935461358 977868751 987539939 995750072 41885472 898046180 249380089 531709258 907774175 929767246 43329393 188160320 755958547 905947604 36474983 742710917 102313360 310061434 302523176 984842046 764105125 857152960 324308897 879606704 566297309 972229409 784868669 997682869 524080252 736620985 777699526 825345036 71963009 843950858 166406340 325902395 885174277 898134329 156078658 266190118 24562453 517523213 472399608 911041092 778424816 832220895 570087914 729776587 193051834 378145968 488317003 755433210 3408448 325211364 240327409 278125552 168083440 756399543 81913313 181462762 832619320 869220773 6330976 204986974 160553970 743300005 388109205 435342821 505297337 942733453 38686675 813905684 868577838 946049697 427087006 446505206 373083370 880250079 945241882 999458455 875754952 912692797 471244954 560095944 838645839 863046970 262529338 624338752 408095533 702512123 766566041 843604023 335283556 350158512 346903833 860798887 420966522 968749503 139003973 966631481 838279002 989719209 715872887 914507843 183146167 590841497 716248608 735940691 946375930 996607582 777511097 864864645 950847836 958423479 652467379 666188528 792365698 834896596 28047766 43683193 517936752 960175339 233773199 283012204 802452344 909683703 224171622 260347393 646069723 904879943 373247588 661707500 640986555 655151708 194465001 402022341 859208743 962501527 518518137 704351611 447604660 925396961 806844013 964730964 51001312 742034560 141369172 523565757 640408129 779672506 739586321 969726236 982363190 991421751 69084209 431375734 627447102 724252957 451046855 790780818 198973421 564902107 112009018 885018905 899455471 911896385 703780982 913649500 522052591 765123784 902849395 941737678 98214678 522061885 169369306 609880284 570863136 761044686 773884054 866778357 815734056 820282141 156635680 262391657 908882733 954003398 896997979 984625342 159412395 321905618 904719936 987497019 814535657 980174726 245687904 859754890 792142511 825423902 868339192 933359787 148346174 793385961 388109164 744485961 890543191 995317165 94189243 210399570 388498092 682104979 195024637 564745763 377357300 790848310 715180352 739994774 61899421 660728994 617208482 769003992 718648665 981868346 461232924 638802014 971651931 992091845 315343990 398004270 404468575 652156507 416135948 577237523 732022883 843152125 330016853 617363269 299223011 304728200 883009424 932847380 892369215 983756642 733233171 895789342 491271601 818460360 818028435 822153944 975277396 999297562 720254093 997714944 998552650 999920947 561956650 585543681 415106932 716136061 752065253 964049737 707920503 873323196 152888123 942582193 534724367 537372220 331704555 578158827 75227730 528473636 731118892 921602046 651911953 832659217 545344130 927373421 164013036 918224191 220529162 358104658 550816501 969795651 782968905 970216763 303920292 840902522 718693389 853586409 761548663 810593458 822184246 868331307 899123012 940879970 782046561 923288355 228694389 252663086 791373926 925356740 433855560 992255318 3125526 677262844 456438435 790574977 344338745 477134010 809313708 928490342 814680613 923417720 848930307 955365574 212231689 409391587 312326757 586719051 70496102 514535445 361314675 424283341 436381159 610759471 426420481 701444643 65160025 295210018 117042295 519411919 706044389 712394948 801736597 900298887 869340090 987495390 235852736 255288000 879098309 912476866 962580517 990087043 369225687 655397692 5498878 339332969 454568319 471589896 56449067 476791604 679413026 726824008 180487517 939388613 345313232 603322521 682375622 723584651 314081676 555202368 468776919 781480568 511636513 663373767 199225036 446417659 298588551 328178322 517837629 922928133 455106371 805353743 431193288 789559842 636046394 932298462 111082349 757095579 974408031 976001365 369029185 811150600 57469330 869852526 153277656 456940080 978611731 993266824 153831160 975818327 605066248 847105439 7867041 176845350 857162680 877642210 313834601 724244920 840607907 975934422 44124820 567305815 69297332 402715395 886013990 985232654 203557839 239961429 95727800 679276447 163484042 704834282 257724685 857958522 952424939 973219942 559312860 617384657 780270453 925658972 923941670 955930364 769243687 830632390 99366533 406055350 636954473 767194959 881016748 932169005 682041729 738284293 6773251 318484448 86362512 174077326 951331927 965156028 240584635 698062371 12951112 463997277 275378659 953471476 257109439 520237331 974638231 981811139 345643910 609173422 402226432 675194200 509342260 915641613 84884977 137350614 47721278 284163848 111118113 133593915 820618058 874260921 63352394 235859710 588104029 627023301 972469915 993374898 198058875 823616285 984724053 986679390 920676287 934324720 222393670 491678369 758930966 969052850 995152775 998077355 917998158 938618934 598156920 689834773 367962676 970088916 452344505 830044172 722289915 969583620 40634022 289317041 732205283 909502928 308357669 493751776 264852341 863068020 295890480 521969201 717997445 986682225 687476684 940822802 802392649 993711831 164338117 583574014 882174183 981285510 220062960 588541455 613698684 954095785 435488954 476072960 901673608 953010677 659726916 684263542 4287140 27778081 394800415 888110546 25663393 381952593 998148263 998797740 82587826 866914238 690625033 896890432 515931558 694417693 533047961 829944302 637603965 698109161 745967443 824618691 797994642 882110151 1303392 599084427 679353900 720175518 68055078 76164694 398898965 745930125 179475112 985021313 415187161 516841127 657963251 928257337 130773290 743649014 205225887 365934212 417484762 513869186 497532223 732617195 960188728 961585910 256870763 743468954 68377788 71346647 319848219 368570945 757672174 864868009 658895769 885024227 38942211 268280055 215845426 593901544 290170365 331618876 83888355 804458549 853260777 895894297 713648910 932584475 95077022 104448761 405136373 716630105 138310724 922988176 991665463 997208898 511698329 829203311 309028820 950412804 549640272 918297039 345676044 877253642 836904689 977374421 585890253 901890764 619154856 735435472 866484742 975406076 324266274 708918404 56123272 247715475 617315915 620371246 182974845 209111660 762782850 938652554 134988706 905841968 519015558 973783655 232743702 895797572 827036411 919879313 198473857 865108019 768621124 935673371 706223934 792806563 833111197 883744490 573429570 782373885 772261444 965678722 478807291 636640638 97182525 941618224 689083599 917100116 398191871 574505083 161359443 703217297 393863600 773920387 256854718 517245786 26312027 479296915 771873455 998403522 801342349 928972063 647930321 777219660 154668771 443726458 927814028 990543148 813437754 831649545 748993897 819497990 87083629 617897819 567932418 725913905 19395975 413445737 381274095 555833662 875947040 994930897 96913176 514504455 937895696 951447233 248008365 414731074 347636165 558384671 167461848 608765140 578719337 965961030 982468496 995843305 252852820 767083722 501120164 645729931 823133934 964652153 883045669 913493125 21088290 262020470 702893134 771058445 359103104 603453340 719790322 947822562 536317500 689069380 181736812 939291373 662553631 976055003 874003807 909188837 149221040 370937336 773499429 913627741 215395819 678769058 502476556 669701656 86695505 603247718 591561171 671904217 656925445 717356231 837243683 997082687 662524335 878410779 816315884 950347012 915234166 947739164 523774938 707593542 55482022 285278682 264362028 457024203 923102920 941273449 279411077 739441434 741823268 763077193 941976560 971168203 555887161 955926483 533197324 978030404 153088646 782163380 338952383 924079106 168917196 569806335 636777976 751193344 176536108 788596411 540403319 911463130 404542702 835627045 303985693 668043879 109946668 199982844 715832449 855100681 44756726 789904614 71001742 454949326 74216285 579141880 833308657 957576209 37057344 45316018 246453957 713771999 576443784 786688778 206518746 332518289 107594669 135577233 941864766 998687440 690986318 928099206 584915857 746660690 153489168 778764661 263075071 980218429 125729243 631494832 844555012 993986573 366526394 923281264 209601242 883835356 536979654 886578509 955163142 997249659 807365081 855080868 332024257 578973137 509213226 657216397 982909127 983106308 70443151 336865286 631392962 997019642 191413309 627790520 381129204 526036290 235185340 346927153 489735912 556719698 158506280 992352428 466790171 984439647 14039086 789448666 927905846 994737108 540490077 848156407 910063803 994631713 78805311 935574279 791999139 978755715 14685106 804261560 234557938 384316314 131954575 140032288 112058252 462215742 168665662 899490766 161335128 534790614 353461544 650728044 965693974 995504358 636621349 946416921 533552542 770211885 156305643 572195381 652030673 788678881 270332542 307963350 41802943 731435499 196235277 809702869 606726356 968032123 644091371 779538414 818472763 862193308 995899390 998232341 877788868 966273669 248083402 759149118 13989574 560002881 107017657 206607615 296249200 650219816 211106262 214317920 249631838 471159801 108142811 993059405 291748556 926499943 16544080 330957261 333608645 902110930 813901664 941544394 828802917 840374357 684890897 931097359 172272674 445848441 420066496 449354423 314911998 819415955 876505108 986330860 499956913 698804227 390828674 732605144 42774728 508502866 129277150 809457494 408965290 598773625 793443566 864227259 33251064 215399684 813953851 932854440 228842893 854261004 589986248 607447612 809389086 995733108 315323447 635369079 720109558 922389988 945663089 997780310 1174324 556510386 681216488 796314599 180624098 588545444 239207863 882463140 700716045 969627386 642301165 716398742 15831708 343615560 357327349 694083926 692932872 741990014 76285179 953321787 361218037 507288695 639352894 985366687 130270190 772738152 995323899 997896660 502771402 515704820 327941469 379726117 800931317 911243643 471922289 717337350 294843806 618293253 756178747 794872578 964999006 965669815 849075199 912308679 895845787 900792035 16571213 425399153 784740490 982200121 383652000 893173723 422042851 845122833 137210169 894557473 896291427 924832526 495784149 598282478 700857532 933314053 615302200 685912773 545420008 997198957 208716149 367224724 263747810 713989050 311557584 505765489 292736840 856989951 817284580 892589143 679328719 832733161 226593156 665466301 611717400 810260820 81237193 245469857 39436825 511452454 103852992 936762119 331324043 517169799 497024010 651350368 128722694 936237734 651766029 692166396 635753957 921989886 143258188 983424996 470816273 685335560 802298193 817330573 584584197 739908525 519439049 635403200 262030368 625659435 204908399 986096967 823299562 997729238 530413686 835922149 638606170 838226135 981603555 997538493 208764859 597566475 346158183 993898834 480647138 584856368 928388368 988760156 932366027 969524310 421417165 970688840 801526577 872860743 774442949 784101253 620143534 923679956 262748883 790208205 178107886 430116237 43726163 243795529 187573346 539553795 231737944 302733731 531701293 892722883 278027234 280827967 789404048 940175865 233890563 606444941 906445909 930540980 654395565 930559954 884143384 967555767 45345233 502792073 880795973 973869597 436351402 916901026 286452299 985369886 266486635 297362129 386740554 849821140 561165132 887002644 598581465 942750209 330294449 348461233 147752416 994787411 767159995 868396416 840178164 912863620 930108379 978514621 406828700 802887556 174998305 254014000 605516812 917083313 341492212 882335864 741268596 979247399 401495700 904382712 406343900 428543922 46340140 523556075 886061183 963283005 994585505 998334831 859153651 925360817 826042928 882861160 24566873 834521112 799701128 807947755 65386337 517051990 306737673 506569627 354192590 945894072 48849110 382904235 697276195 783757730 406127512 499635318 954742188 984452658 183933919 493233971 87510052 527138180 727127453 941020066 687134814 986194740 124635105 977851995 210655844 435053338 188333376 234060423 933361845 996778180 837734083 979378707 529723176 970132547 238806741 784545698 822882626 885807325 133330971 631156922 936360994 940709127 325111074 635781453 862854531 945997788 68110682 950219782 865173261 951265715 383788504 873182246 108048963 870660777 279587813 832801819 105206300 833130337 967275455 982789584 903656935 997034036 514009745 964267194 184407127 613655268 870826398 884725425 180724708 709573961 53960490 73214103 734764728 910023674 514770976 729945550 900819669 998775548 277518034 857522409 205514528 486021821 13039713 623825333 803203672 920983636 622680870 826420710 523119728 716019033 441977668 804493701 260915760 808945305 596038043 734686816 828184838 870238778 244067478 583923641 444619934 969110315 489956743 832358644 881737554 961251864 807651663 911012078 141580897 712261820 914703216 958278317 678091202 790698727 872406329 930619587 448317041 586038654 566507850 696105349 668618579 867098266 549632391 949383676 974688241 976645620 496915827 658367948 31212003 694275968 25990588 308725591 362066862 752377682 336329000 495062370 921470164 982177778 862704961 944450824 194047057 650354090 656778615 724609815 546879788 627305370 122457729 588202781 925106439 984286741 314204783 877407271 825734106 941144473 667525953 829871754 731154408 973296779 219034631 434415309 115580175 528208964 204214751 616195962 590271168 998954113 713413142 846823034 629342955 903601099 524830157 867457567 421320948 530068978 234683259 680116153 677011560 720213335 1549144 314528224 288393024 636834307 790525614 822915326 391577776 842920551 717402996 911705251 801865318 900212567 582597382 894382538 367784208 436162581 509267552 828164583 251245406 384896422 199487297 360620255 888650746 892047973 68546593 886020648 544760593 838827168 384380605 717804020 218315607 624005826 130085274 975910379 674837827 931007714 924086041 969794265 983445909 990355137 943701480 992489522 549328611 859453732 709120864 774149620 257044951 858949770 399070599 694012561 509746773 725088885 473803093 589479615 136405633 694123081 778508119 803730693 496841163 706640077 772866103 865729139 994207514 997581291 788204325 916365873 289369238 663012605 122309353 327981206 769628718 877023168 400994038 752480485 389371804 447449744 968853566 974065736 406800679 799135764 247218609 982402084 435760463 460794375 344658676 978946211 241823075 849042485 173261235 729044860 61558365 319185098 726572435 782876836 149135261 194036417 91654299 844967974 719002922 747358510 10924959 244855267 983640064 990153410 777383650 994672144 692581162 836537364 80161908 227885620 269496663 441585938 262115770 372825729 923973857 934553879 617547921 991803880 9769222 131715698 908979247 920356932 151559026 381298979 923160821 969727072 832880039 994975975 732279226 822798924 475722924 943504881 413778305 947933325 765289190 971979109 498369043 935539796 87938287 699150340 664882818 848561128 469350159 639588782 60068768 717863295 127205457 301220669 616699871 931546511 56795895 649982392 219847208 536712301 698798233 813830662 819262255 916672594 816470918 978213766 359516274 730258687 373714819 821804042 872163645 909079517 533660906 930817936 804926046 964539571 918341062 958292009 393864276 894844287 37583028 194235738 746795233 956831154 946716978 969285732 394099945 501770439 395549224 547155360 114258623 912950885 592922130 739364498 804730712 992696305 930480353 960146630 578835656 999154408 546882073 789181432 939321077 970691449 103645928 792593389 619104948 936948156 980782061 992707421 515178543 991313819 857187147 923913921 821054039 909139092 821866259 967943324 463474376 841663225 423470148 837069630 203723740 888673047 281947501 654919583 879821192 962010719 86553973 360635151 380066628 443315358 937403590 939473128 35639213 265416758 934945737 968795522 307354103 363930090 452717856 945978855 899631743 941105791 246462815 286273368 449278821 732953717 219193790 959248807 512220438 629188465 744346996 810586491 271464435 477675820 529041580 878097990 819644694 991138518 429872282 649324487 869784040 973596059 627865228 650116440 143332190 698848639 439052087 907297863 379419843 679691525 862972354 922266774 625337354 928612956 648248813 991873437 798007598 868631608 794204314 813652761 218847861 505912605 219185674 432269301 20083304 691228632 207152442 806850069 171793919 386360618 916200069 935011036 408072804 990334610 808003847 882567520 278337049 907511456 823228793 968716595 951916815 963117920 246981652 286326353 708743134 857720331 403582197 565270112 537601405 544763422 498602435 703416310 567622210 764954160 74504479 211304472 433059003 721205826 747632417 777097429 301053484 634647676 717582361 784750882 474115842 860495167 258230894 831943724 907840331 918863923 128857746 862642650 322687563 874903797 575394579 632559096 658936240 725218083 151218052 503565868 129358302 364368139 869858431 976973933 19987960 904582669 636681524 756683123 83250410 749466057 106778264 522765822 964519057 992779210 732907565 930619135 596308712 880377007 743412525 917974524 143871076 865961853 754377188 850901435 815878635 830211691 666323504 839265692 549354529 648242639 876372739 968687813 195222059 222951898 136333529 699214272 333794270 344480279 477287007 728731791 46601894 488248763 599658604 776151185 209705809 386489978 527835759 747753459 913247742 964132118 124986518 806005015 231910544 905105564 725445332 964466807 470651424 485313466 593175377 948660022 143769723 442667782 43262416 667080088 895639660 918660316 540058589 812134771 473446056 811764187 71290725 554264290 367330867 968713424 779049616 893751363 6077900 929455819 414967116 839190620 57848519 116320567 898414626 902645149 542818597 905331076 385469454 601607922 651361999 869853680 547631092 652779061 844686629 921926727 127970634 513807630 675637612 910868619 915359828 981080117 115081501 347771634 729534461 961752864 512971029 784500392 600732079 903774709 89871905 891308487 400097966 739740490 268968893 628426562 206874014 638264822 523232533 904477574 29587731 539650721 810676059 869311516 761037088 955754928 860981216 952153459 857311536 901679463 818789061 850512666 293833960 898422506 496406757 886520275 478097145 920969252 58884850 580103546 794121414 989784218 573697398 651071776 110642421 232349648 899261237 987741998 717949909 783388199 542204324 970504615 662203548 925834858 722118730 850402786 743621729 988398195 194755355 859220786 423393845 846430089 717564601 872692879 743593574 909482594 271683514 504097601 619584543 960584021 178257114 325578616 458326091 501413473 499819715 987223065 504570205 509888245 742311818 923505885 69764983 129036220 617588000 674048580 735381927 922145121 881671184 955789879 384223832 644770216 553724431 556717851 43907561 69300301 230216445 514607742 727289364 806759478 515566736 593406305 233406175 627784603 721174335 947287166 486174334 721726719 797147257 860232427 459360818 698866078 511277075 695663852 258949692 522305831 307982552 917457033 578403661 905867485 548270293 778441696 612180319 708490833 823375614 830695863 415683608 739769860 134092525 871311655 976397872 976780188 967026247 971613897 669942404 895337413 703918656 967199268 970159784 986506474 199560856 668880824 890935334 911303089 775103216 957856639 821596649 964240621 644701751 875455342 214957845 632701010 72277184 186215818 540140254 772148062 331816449 650721857 402039336 810636434 923783196 969563261 732404693 970109314 33647324 63026589 94892537 878922859 287946528 354294995 993801871 996117401 208099180 458923470 127824729 284620826 573653232 877503998 519151444 624089138 187690777 781491771 743970916 780363221 791198108 816570644 485196094 987706318 676132744 952718925 356992981 993846165 297361990 596956738 218341679 939584703 238627033 549764051 50105897 645387052 788574187 862348418 573064379 956609563 563481174 653050556 678855273 804525433 638684543 738788766 490074863 648751468 975994593 980208192 440333032 943161302 473565146 581434746 95828429 687895222 915073608 965404764 281458271 656963938 796789062 907744117 24378342 873115690 860897966 977034097 78132579 361701672 675052120 960544483 156307414 907504768 747110559 772050077 899589830 905869208 350991689 800770848 595444671 858826637 396201807 878965120 728397909 981004301 402437467 939862014 117443486 928885410 789715262 828159295 142947627 912001695 173024608 485253061 863075482 933979652 832957822 862154950 870149901 937798729 869081756 952288096 713796930 921262185 609945004 724510052 262264642 588719734 127503484 220902376 431248364 524907272 372347342 721386957 521340786 833147643 594175965 786303781 716109619 736583065 745093022 856378497 590883640 596288311 684027206 939731141 920510347 920712228 901909840 925345176 179595662 740453935 122197068 235632205 274953720 483282066 440682093 559563457 558790644 790595782 650652740 854935044 137210400 769714649 603403478 891833010 665400184 676899864 582916910 788033058 933849586 976578802 546908310 823621373 821197870 995578863 325082307 998334187 445322482 502561378 984923643 996100063 746009022 763053463 611610421 648450790 409015904 948247799 914393277 926834795 439910913 854236831 731177096 734417740 489847811 883488439 597903160 620804984 883375415 975621456 117328997 985813240 799087164 937610868 606611309 868456776 969192909 999410208 560929548 888663361 886555267 929384411 448354351 849649870 352495213 550016439 944181825 961252890 709330524 986602032 472197316 514025052 134601063 738006420 624259928 846354208 246447395 915894654 415808702 711386263 51331037 485868042 324271346 913238140 515986377 688117691 710787458 756824224 922765696 990064271 194329668 565714111 517635705 759421297 15475958 710334825 800266483 889111507 300907308 473549106 142654447 931851708 231984510 295538287 897051631 976010154 94993592 722898421 94098980 236127785 970069763 982001155 996186611 997868984 6226738 25084009 327819240 816238651 274634889 520371702 306483290 863774837 436849528 921371781 267902426 329951317 690997349 849487941 845819926 928155742 13727914 149985599 472320012 493829861 608899905 872327451 282978929 608389725 903531662 996529710 882554075 936763452 206311597 401063634 835754908 916565932 662706705 696429274 988915571 988919484 90639785 119778549 364646500 586314588 795226140 803434384 985187693 996215856 602937685 925263028 403106935 579320843 87536988 297154332 114196734 247515205 363169911 997959764 99832952 263556912 967402839 968623913 295825772 770440924 733390810 808271939 881424440 938589352 552627706 616308598 370089819 697617526 330700873 751635713 440662516 992594054 681637762 844637772 446246073 640728768 945470655 984338833 494465306 851628839 351856663 916213155 676592582 885913639 655591356 943019174 884471960 920764303 739534341 981953309 861801251 955108204 932022495 972873238 76618551 297452204 28939205 966975312 861372085 945766534 210257671 548389298 266563938 650943915 351780544 385662154 158080348 478260490 965375222 971903935 106778436 784073495 284215235 397551847 522111923 818093332 994487193 995267599 389026073 580665318 641408360 654836337 70099700 536308731 535613040 960926112 39089505 351446341 96126011 194932721 20350406 380836990 762887876 980922205 404767829 913542660 5561077 435346232 542287344 765339607 898273609 998556903 825806283 864081400 171992515 491079659 760201064 950396828 99135255 668230810 270552556 848282728 364919697 459997951 212072424 320492056 999982679 999994902 296477405 818320501 806129146 830063024 661062691 906408925 971313089 984796652 348865640 715266908 970753715 984240225 361082279 835261699 12875660 487392369 623088356 750009672 103204033 229785775 755353527 871266448 656327165 755572857 858589265 924980685 677377457 684051929 904650873 976675187 2435844 156298527 508825489 563004554 338916733 965755447 997959340 999508015 592291150 604400384 117689706 229144586 723419297 866700372 365593752 639789022 12771919 499799816 881366378 892020213 794013657 803391815 655114789 819071089 742008408 962256908 515231482 957488995 761911559 970406632 691280178 881191196 941659326 966185920 164693986 632551467 189675119 637359296 133042435 314489735 475914681 601123636 448033323 760514815 670209835 712928722 259398510 827458896 308376718 314354616 629785306 802289429 395279907 444542959 137034164 185279901 762309814 865255811 472455818 578379652 462939757 948359472 207121838 578885109 87516670 277859561 17998507 113298196 589328647 599959673 619139607 796483891 804797046 882266359 553733130 742183204 487344751 622573602 21488618 305960710 218310011 658166959 439945887 742537300 960713472 963110892 249112642 872149391 434429187 446767685 119181291 602586931 718673099 874146507 140896975 589376818 521192608 954465042 183232354 318567439 958053488 996017316 380102447 812676318 169955747 360805297 446995300 571758069 89643432 313369964 951134099 975430592 976969487 997907062 141930565 737584324 60579611 642574116 662736057 965253600 599971559 665872687 964851567 988415489 604633148 919245793 776258186 995465835 845536974 848679841 773226406 861387314 882215296 991655842 773629996 781989639 641057810 874659051 151651245 587420406 259803148 527873684 920104415 945191591 12049563 412874673 357269302 509894918 924295825 948392733 411783763 694992222 392568775 499744449 958330679 961550386 696675848 847684253 541538321 891316153 977535204 987701737 954379929 968819608 948604104 992450850 303286091 996022987 934067030 962621665 740799681 834370663 870002401 941815224 426917168 859701042 851824178 904675555 769007622 872336632 32413010 355482708 890229247 910104582 734174857 859610265 904506890 981399811 861848086 927656999 159495737 163942889 716582394 723949147 788076032 942939066 302148554 615930098 888096175 954908001 479857704 689331022 481266064 641111062 954734722 996116403 804464220 848440216 519454171 834507482 558578861 693397408 558406172 651550444 41104602 560243584 91660326 954539745 824508904 910377052 300443353 485746630 525195026 600350169 474448201 669617282 6935901 509807844 759906977 898702419 465502614 959376656 656371045 973970267 73430994 985822439 873757040 941437652 994618634 997664958 254172281 271323201 890569652 950701503 751537729 862570586 257991862 744306224 883249221 955434179 412927222 506136720 727751798 957466620 829173820 895988150 199990913 277578487 783266192 845283807 747051340 984487758 483455893 756018867 255824150 552978709 184862516 892750241 866957607 938657475 208933622 812437833 701614518 980388354 551129247 694871047 455681214 747505237 631856223 683775243 570998123 991117419 175167089 307439567 512478411 813887305 266097412 788585914 339451529 902326468 360570906 472900764 127351182 498866327 922267361 985528095 714977482 998618598 180658312 992572557 667747959 901967472 733111729 875979602 675004484 892013929 518418176 873675779 696522653 797767648 19416370 916708198 635891319 638437237 855758515 867492894 652661301 971604625 417240319 547478814 465454043 732790859 84664449 364163012 336678214 777064873 35437403 841601637 258862344 835454731 540780084 960434820 924894023 964826421 872459170 975724017 212937532 893386004 62035267 909828837 434852966 540038615 851229290 969812427 290812395 975223023 948100463 977947610 93801975 101392363 591000852 867829328 664970676 675981284 1945909 626027993 779858136 948465689 730067550 872557275 161586754 523006358 915417192 977673370 630891086 690769751 1895448 593635449 785239070 874168756 377600932 382844457 650196574 667556710 478278023 994023155 936030148 942743373 808112173 851148571 150573197 405481625 227447076 425863754 677479583 937475587 437783510 866142251 961451085 998645425 551951477 885693534 914630265 959579644 476583572 551813832 505383249 959263961 610367087 678769240 526956723 625360433 71898187 728669845 69069602 326716963 245345903 408462322 771481360 916539461 883258187 918165575 899787431 961071040 125167327 409024653 355309159 997608229 187111476 682941390 914140548 998201242 889187578 980581981 31941383 862447418 605924404 890762942 987288886 989000013 511822862 849341090 349028156 901580213 614090453 849160971 806768884 910913672 468929153 645609482 368809337 981652255 434379809 483576910 764286380 936617236 461826323 575200865 929152222 982043590 631187208 862250368 164457123 386712230 804615252 982441959 604055213 875462241 606113514 953812700 924046416 944930907 903026380 946030213 732221551 773248944 438652064 842185257 4045387 89840841 8523388 719416828 950676625 956691130 99211459 736965217 421720577 950558733 752259314 777885495 940200206 953250568 130129371 826399840 684130985 842959739 454174482 637388216 477527656 639144530 700762457 936508048 912028320 973874013 465775362 657558655 788925944 904322042 271497132 577455812 324577597 332999985 246688374 756189354 953309840 963010615 80125020 794005145 574551156 918727683 502193300 865414125 505524153 884198242 588686114 869125195 184652965 519472514 446616179 959987231 454728017 536065122 832997180 931349952 52804404 890067059 770328428 929169299 107100022 233422932 229383065 264195752 373732732 973971636 682410282 785769287 863942347 899663932 871577070 943502573 746168191 994990003 132202637 952374465 632330075 904461556 880729316 957901877 637511275 891614013 908269811 978986065 555468767 691936565 449512334 676167668 287063206 788133626 631330137 710342601 815406893 988014910 192665226 554712628 413739313 567750656 329420691 707106183 534606971 746867363 504274225 562382195 378172413 793878525 462269305 933008113 38982709 60194873 4668609 890806708 249471423 795440776 591931732 851010770 230817290 591443857 128999387 137556904 241893383 713535982 140948450 805723937 912525616 961869985 363626394 527054490 316347716 511081577 706649725 846013771 419277980 911740885 56784477 796961839 98384121 115517622 206190916 217170441 842323213 934041101 816578883 921854660 285761259 372146953 67667011 146818662 799980114 961655612 861125108 900778354 47454220 874983425 593919874 844410763 187059479 450468846 35487057 287593189 570188846 792357918 334580185 746178793 822279538 867384945 907433705 987754653 33223452 912551568 504976576 869056947 542516021 663709963 704626472 795085601 514326389 771485968 119142338 175405107 179331423 646924586 148401850 557861614 255983191 756504248 271217425 522151709 663673568 860022711 441412773 770538856 204245956 808176978 133654134 746631829 644423722 778253588 791391926 870036668 510365098 555094614 98319688 410072525 486567827 618160714 793663637 932695391 357609953 643324319 558456932 925512153 675536808 810008878 370895068 891028232 190113178 636297357 836574154 960901328 805411471 877874042 308257136 949664890 376179486 511411431 266906688 860042954 63869766 286823069 97388749 110568661 718132361 774553104 688919940 843676263 83771763 694035617 234281508 725727964 123728258 203259337 822996443 886245781 842815401 847996775 68727866 431605301 563575267 790968531 557361987 938683655 816032666 854008789 427814703 534571758 342972734 566004582 481287683 574402154 534652151 797024034 96840271 281175449 418921611 532283981 43942642 679932812 277695674 780693035 682030435 902986703 721136862 876661347 482179521 950893258 294468561 450401075 400543142 931525402 58805173 379387391 246051307 786974860 626401564 705306170 253265788 783699141 265669583 335142783 581438111 825478429 509927554 528696100 523128251 696654583 139129547 653354799 283172522 917702890 188577931 746689418 582917348 731769869 482752230 619367675 253116126 279321732 914702344 950278641 128436097 688082579 885579405 995238071 154731805 315670314 735504696 884799385 366459892 629744545 129741239 591209369 407903071 974589838 587618862 594458044 508890856 682986235 406971768 474535240 811646353 981310138 915366546 987826124 862882604 879952671 904340810 940619644 245434078 292686438 698386552 996732613 437090677 764324669 613556120 858204481 312638685 733509536 197872559 812767769 415414274 603464105 770594815 955613052 153848960 741173251 54370816 554342226 341595037 431518913 562545752 952992499 242292387 506492970 37391003 812886713 557394446 607698294 696672554 996527469 612617984 684084050 552460182 999443463 122065440 983746715 618494353 985040167 719669575 746793262 719248248 959168641 808533480 999457288 928268185 955577939 782580072 919159819 243742112 842324627 838742052 940445871 603871015 853704351 22690137 29714562 88424372 885960964 833097073 990977727 238216198 563886244 997789455 999413507 634231661 779774449 498070730 765724173 377990724 608396366 125407224 208679413 646973774 823787213 43623890 124609114 338654321 353973642 706847365 771760556 305249651 914948083 884677385 885064522 870322489 968586238 864553042 997625100 212326045 420623240 937973963 987749893 375349050 474556092 63213206 972587466 636399200 993118249 321652887 794131662 888739830 984135907 995342598 996948355 18057825 685492729 468096708 538360286 831515928 900988559 656603076 796092861 999768492 999970229 457505634 646069892 688246044 968118926 588147453 728213175 744272352 894523851 563539343 800194281 588437810 612549880 265830377 825193895 773201116 894166053 390812388 682330493 713711113 859840696 2226237 867193597 671958754 829839448 619070256 834462792 762457855 862934855 96706972 487958874 674741067 680553909 493496624 889309169 270677648 584986537 289533785 689192331 202490840 511376349 615268458 710549806 114926797 825379270 599377728 844849493 901674579 982481526 403286210 865118750 145547513 287673166 172971787 351055921 842850408 926865939 50897897 108677466 630860035 979747690 405285373 502767482 391983887 879805243 8527781 292358951 135137830 844064615 422419169 812300523 855137814 955205435 581946191 852995742 753724789 857605537 833713544 891645309 769730946 791466135 635682656 924020248 660627630 878608761 334816333 477379132 694582644 949417888 888613842 890085436 847595465 878259128 7043069 476861692 910142777 999258985 446283144 916394516 236148485 329066748 502418643 707451541 157421387 904333484 277017929 921561971 136504300 445597049 97241457 889212293 187739677 427106201 397436649 459053951 2549154 37427973 62291359 418552614 318589763 427062667 605042585 771225966 49625359 903499548 704086137 899671914 920098386 985287531 903650566 940869512 774976290 780358707 729080214 839078114 599594990 983988732 769016335 866375129 649125869 745238160 466037038 828070771 987154942 996056005 406683118 776047080 626392668 878148559 631382806 722520325 233191876 249781572 623640575 710479300 455637131 898174451 173366963 442673453 177085252 209633152 157069270 735176938 790129006 862319653 699569856 716566554 48846817 770696155 140321423 287181991 921536519 991562642 817848014 914065493 590513858 768715968 763858821 999304035 194568791 283289603 270823284 812414631 182444794 297196091 741972438 892271987 720479666 932345077 106449263 397974170 572295508 796897054 372742503 976162301 333387985 506833731 501637831 706054051 468833667 540870719 797165845 946530628 441283154 907185252 877222790 942043029 977798502 978712882 457652105 717548491 867299246 891997137 906120765 977932387 653713993 692664612 100948496 338870719 837704993 846744246 994603203 999786710 675069660 970605148 33742059 974869309 38746252 513253460 168938369 986407907 817314397 963934160 566309255 817511368 778239461 822243640 272675136 761183993 806433455 855908583 17398582 383591261 743686849 908262386 382714142 992270273 122581685 672748627 491573190 629526631 682666733 875329604 428436317 602016546 362079541 516063107 164281580 260172122 425749324 773938266 997044482 998594110 1226718 14221844 951829596 959017991 9871429 646863289 550949235 840315599 433227887 851531255 356790281 389951591 935364590 983648900 41909162 607891192 182458368 627626942 347631253 884450679 995508886 998702342 842705906 927699986 380857279 687479119 779033785 838453238 265281837 278801086 384703648 997516486 354847966 808840391 75956519 204007524 833967938 844384837 88202953 148057378 443635679 597491906 928940078 942146619 404442921 744338051 598186481 717223342 61355829 636327340 786741855 808684835 559635758 735552936 571472549 872756912 992466325 995261327 119477159 676929773 563971304 631754900 101478457 677567021 688693200 780420090 87193747 391798771 666889886 826684557 446795523 820727671 993298354 995074972 580362457 773485689 470687181 813293770 719492443 868790277 905799995 964280406 614016333 816015413 380812902 786808802 189229829 258805170 137745542 667800471 292323323 668314650 286145928 420252034 543871986 641292946 206142818 895074575 564405450 976515204 65961950 501178496 45017336 540104373 19310283 228231951 127028614 659886371 477348211 711919925 214256312 854789324 296436895 630192799 864413611 989084374 2914831 577785319 266577890 295080634 198720207 313538695 18564980 880236986 273356700 863341548 391462193 922061275 539114385 613228362 560306277 955025613 619893348 825267708 341455657 953732480 926672130 959033406 636984819 886152834 917523757 951999813 385797909 533972321 696951790 988390784 588659101 808332562 816061839 913274074 893553888 910863045 702012859 909848275 74317437 930380262 336478469 546928613 939888544 949840917 130920253 653270226 453651983 621611238 973208144 992881269 477875489 553932524 68545134 682760092 927488814 932492658 460208816 980073695 537737491 920365731 522686638 877965355 811979834 914314036 388861696 827541467 85420006 697083767 26863406 104439208 256277952 262036774 762859164 918050414 507968985 708471927 20463391 579943570 958088991 964771728 916213100 981519002 285428614 307309361 517918037 917141071 967467264 967631322 197691540 237481977 121285826 257876282 560408963 633119579 67425899 490026054 622538544 760514083 32030326 311970200 131746130 274965046 399060310 847567880 867846608 879202240 590213010 987942724 912328623 969089371 783438078 920209373 875640306 946057611 364733201 981485919 852859221 853478840 314432377 520158602 982643920 995019491 653739209 905251079 332990853 967617493 310009723 588781630 825770962 936048335 285183711 977139897 960126499 998331094 530850253 594178540 635609372 767555449 163531734 354698027 920746049 947268877 830061346 967534346 957129932 967309165 871882492 913006594 146126394 332311907 34162543 235338682 723602137 882631332 424709960 623773022 567724975 643443812 424315847 956190275 334356638 942605510 905664265 952624759 588281236 731674090 461559921 655578171 38517157 874430197 283799605 913495473 691768042 899142491 937572326 948851498 454741367 648103577 449408958 634253507 947270576 971300487 145816897 419305954 469105042 790067528 476015908 554855334 787876024 926633968 511369207 599940627 860230469 983537264 96792419 426862538 23152372 326548518 531202661 737479575 916716523 925029324 549109841 779998870 709296505 985544127 235362005 408897887 318009891 514898607 82714631 965403086 26027605 447144620 8882832 679320981 595858330 707410600 430714197 683004714 378993817 640913687 26608877 434554966 963291202 966111635 51141025 163748328 205293697 831250350 262871776 801080454 785302557 872053910 123923929 771268164 721633692 900581849 407573509 533742919 352509165 506750921 438619232 855919759 257197744 427365845 575835154 654298932 404841523 831368224 342208796 889018196 100546345 276524472 193315041 406987310 737492692 965722616 550409461 601465428 931548359 960874842 335409556 796420329 183999463 559295406 838854188 847490309 28249750 972903219 363778680 465227178 694882318 740552075 140055654 447480297 764216496 896987539 990533785 992427460 33697336 502550675 933170815 973408756 742469129 918374788 449414111 453279076 637978054 707057444 353596926 743942099 358065649 537019309 727600694 973760419 513263159 926432280 780739783 875136588 873601172 927315572 84281544 896837653 919986928 990790548 153950973 620000049 593994379 733500787 43336508 183290798 83095716 403900532 899102785 919384290 879036819 973466121 346144046 856521431 428696499 481706950 951869750 952443161 326248000 652154129 551565264 850751489 952225262 994714549 245224299 804815117 740680373 933848071 131120396 913850342 378963416 666027542 436847169 462742607 326993669 813923560 389656805 755787187 758610225 781694631 217161391 512622115 804978428 962690696 443443510 683109455 632682269 724890113 84475383 941233685 143996305 634708764 981449723 986333418 972936418 987366187 906210450 920504516 355037461 379024743 327912319 980587554 712026283 938913594 271602664 319671209 429330142 660123329 322839031 422333936 152721856 237538560 330960375 941789547 677285202 718466609 50721951 784702384 264385424 546113348 788537466 879921963 808041715 937660208 133277702 141543547 358516267 952574873 232117170 771155814 754696420 856599029 324662956 913931053 460077000 677208449 199917235 228664103 134251903 830159073 101114639 574102605 581411328 992411088 824233193 882114957 618447437 879408777 513207028 721751836 158659358 999940258 564908706 930721502 656650793 880537500 98049181 143658621 940687084 975341944 499749367 622374445 76434935 737003158 441483812 555343680 337295017 764784659 142887138 667024429 92408533 181206969 388511943 820743566 866114453 972311660 670415942 910167500 59430998 324759668 709488182 801844752 846675726 883799782 246930296 602637666 373249618 548251437 309622798 724296849 207383218 870628499 362976929 435692500 259971265 909209515 320494572 967070484 85158050 301830470 607187538 979299427 29795981 375784059 9861934 375394723 503010855 524340490 808425706 812295895 381499944 739818032 567794787 918449546 817706930 945317927 390809483 393462699 969410120 978819235 737838887 896965245 318505933 663958056 925287410 949472951 558130340 940235849 844358028 994171489 795375988 958043294 873920839 992392965 915084194 966634871 601094122 977699993 727664921 903981962 666296974 717682214 256430373 439220484 85012701 708043301 456022260 863423636 833107694 859313995 10426963 207608606 504343040 746239373 307926732 726049096 911091670 926309098 968035556 974563660 610454773 648545658 454296400 945601329 690583077 770690691 261034031 321320875 155295295 561503501 714602257 984251535 916886277 961287581 569493433 783806393 148429514 239749337 569364731 841003084 848221658 962502049 11448 424614278 1119985 975558804 106198591 114738549 945754887 952186972 831576203 922444635 129240967 786907374 147910819 360829874 277747410 356499672 93634993 326960604 149533623 994641190 424704462 453663061 867215118 899918134 627226495 756596156 326916773 512719364 933794211 998788880 999678043 999941676 953475935 982136210 453756320 680267875 963240316 966202350 290826081 992708644 248587817 956113406 774695379 997636279 723022746 807550172 474622124 975917054 750233009 991797894 915990148 993500992 278548746 428668727 529255664 882675331 561180499 807631999 118841414 554673578 910829929 998275297 536385063 736371321 290490867 461205343 258710745 864462703 737887190 797888383 423270213 996150292 54591824 464066218 21583846 360861631 125752377 310084806 113717866 576302779 487599236 953064483 963680836 982725689 9304339 887248759 571290126 773203624 149257287 248756960 372573866 649061790 964946967 976621646 687524789 759626970 532958686 692997558 642843031 685525874 86104424 258834750 531004973 852002723 169420254 895066796 604167565 843328979 237577696 566793791 338263732 499669028 267073654 633844789 508997666 714563219 72826926 928094567 735232053 804160585 807232658 922248483 296032859 852035064 401022138 518124073 872921177 875233484 595684131 894770595 841941405 913017317 413831442 840543094 193575626 395180211 58794793 946750224 128996968 944377429 698238209 772617243 937457717 977557073 554442902 994170832 548600246 888785574 666720118 887342149 204181615 446479316 244611030 583807442 260322434 540216346 451505186 756000783 725041932 939277160 193326840 604583491 818997096 940853918 448612355 609642594 588806409 799688524 684592816 886940601 30664803 480125452 447681841 951359315 180066248 633682442 940164061 968389172 490778640 590325259 974031248 984983647 452061121 880660242 586977902 678512446 37521374 344899462 165964449 331393767 106415216 957011386 355909369 737440727 103370467 998414163 889471054 947469271 253590530 272506143 91138471 759079557 675373461 941218710 585161821 643995694 9349597 814028163 406577494 959414070 158378244 993884500 77865595 788245372 315266405 940177923 757144725 852583182 711140888 743697113 755264553 978552603 429113319 556070700 532554026 597237903 964853213 996726686 709238447 770608751 283463145 643998281 335095753 621123680 875420228 949844838 450628355 815955352 595593312 651049958 454912112 787014778 4073778 234061548 974827401 978970056 775497650 829420741 324814471 340612439 487677455 942595695 787170690 867240927 802964623 927735948 103396024 838236757 445708998 498072922 766186843 768266123 483917859 533027614 51987763 697791422 362390494 518991214 131891006 949848955 975512443 975972749 587601500 691980266 199613400 406521648 758084193 767150756 504904659 996114042 667404191 792887918 435642687 557116281 445902190 482862864 855084891 972784140 684294282 815708695 568938492 857264088 60403048 993374949 183306506 593401377 294210355 482926748 818589688 984522116 680400588 921693667 902942175 932186241 175011425 563534171 706349573 903940202 802822445 879364526 492725731 875164802 332124988 537748930 826070894 884225498 543993453 563388396 97329464 232358695 445560062 692965736 698657434 854601195 799519843 917071944 715261701 763582336 157533007 527906559 854209626 920756915 328030103 347938067 539205400 736819522 238984782 486852711 240498962 655760547 259643077 568469611 206369979 618817180 75498330 720074860 683839354 684481197 927349120 993692751 662190722 875341499 884265218 896110270 312598176 494029237 214098847 403732633 214859195 234928905 247209805 919657754 568154643 681764608 498258868 728822565 841735835 946929677 226707978 567907071 466637852 794482615 201502431 872700709 882328060 950111114 241568425 885749836 13022847 57515263 190289863 580200510 683678455 947374823 230579313 687067255 473014155 682712883 123740165 205059118 846382142 857249192 458419032 752158008 104737347 642904776 27061878 431980382 502824443 821008690 40959139 698197464 176896374 949490773 122810829 332714983 786581619 934647131 41953187 763646022 545944219 585294122 53519009 451069215 731948470 888105235 668517396 748460798 157194282 562956267 694044186 816209314 670464572 915119111 573997274 845927768 96414891 525729336 24514470 934354678 770729475 893606177 572430160 983663377 280964794 294852490 959644209 978943993 943179626 975716498 22586223 761612341 205475515 559790919 482572445 672806912 375438636 439124901 65662699 684934585 209585910 900474605 612225654 703013119 308564203 950537870 526523422 792486608 666349147 762836908 60320241 446748937 4377122 618113321 75774536 113849627 486307133 874067715 288985928 660223161 536870213 713510342 118543856 953215152 777814469 979933296 315983602 957913517 574232600 839454839 116956937 770655751 698174715 708878180 438557899 526249362 551369230 981190525 912330287 986340689 292254140 840177958 145242719 998632585 487495495 691109887 645323356 820590013 247175694 844601355 522380730 764139128 824022721 884437548 757086679 761123665 673417445 963221071 531174207 552335536 478150855 554474281 891024970 971378489 196195541 764802132 399042139 626519576 414702918 591738352 39182763 739595348 74768006 630377131 48879255 586473059 575160945 838865549 87648765 506050474 136998253 167691459 77925982 561907538 798435600 895596791 614305576 740788654 252627497 629077895 29722540 513177490 408526490 412554542 661185064 950559730 121382735 752247197 914605260 958967031 428109390 986125310 2271946 635166669 928518379 975344786 217523333 589832967 353789084 970185166 279261160 496125980 952923437 973348262 121979266 487360482 932803186 978406677 659892745 882551194 843210552 954193270 17495457 63836958 571736216 666542348 776045469 943196855 197105994 920447939 890980106 972870917 767631643 863805056 706897940 764312315 46254118 894667991 166839229 684031310 115496525 806624237 134885594 468414066 227450465 967473514 132381405 500072626 856784237 933790550 673309030 813477709 592010486 746378464 781735516 930067035 825158353 946338213 479326556 875094164 266082235 388584174 632572292 779409838 641991594 982505003 894586776 909921576 917037811 956300331 34723822 537687274 47682046 839470721 221628327 799591191 994503667 996191291 455192007 960664755 664544814 710165530 347805095 951454459 562463645 919856552 105127230 464982363 848737674 924976224 932925053 954276857 444387766 967440473 71858731 790483661 907454 27788385 275580297 582383622 635322068 860028932 741839680 971660617 282621914 995604389 73583139 424545466 198001167 432574052 876364045 900781424 298066677 460733185 496223016 900205409 275378680 820300347 828229902 951788770 284049153 455086063 61810998 128815062 856142947 957623480 854831485 914289440 62255448 119315482 233657623 681565442 916630514 924987920 675077465 915430502 750515512 812503052 421338691 690581905 694421647 961886976 185218842 628148662 474353102 954666157 408129377 859248519 154710849 871319482 489558518 716396456 423935416 923176459 52491893 219922901 374664264 582395433 661563978 754736557 889205852 949615711 507151326 759226252 313479810 737854007 522362493 686560850 954644540 972272813 185336169 651214046 38687957 228419701 685135305 887080920 173896222 854626408 507254828 620039249 354982207 576231165 758675403 856433018 197039941 482301707 180215290 626915224 133989599 282591408 265357449 899392926 167948561 736860287 481176678 746522465 313874840 915116255 443422832 824024053 958541837 998348203 44981424 52216389 621513713 671332479 816464039 899147809 399344065 596785068 703375392 737326384 487188199 531488227 345218712 447933811 442406985 581688659 733106455 783916917 203029417 574734344 607600324 627810084 179297590 633110501 646166339 896532063 111180113 933335466 494292354 995499477 904874620 990122468 881388461 993549299 323825421 564254219 27144121 127154315 805378937 903915501 263843251 636106556 687796437 787028843 80390176 477605731 755510631 946816401 991257095 998499810 131648247 219436677 567170401 683967895 977400618 984170186 250654768 532765523 985865937 992891341 360336300 412139407 856491697 885458786 94837321 517258415 621931584 758012972 262869619 375934871 95319954 806446734 892959405 983560793 986024994 996930910 748434734 794841430 792670096 846122328 98805966 688638166 213066326 715979042 61453850 548564821 241494589 697388731 646075052 857807863 290379052 687185413 172414063 592080892 589537016 676225193 160589624 627371436 926980347 937175396 56432803 692755306 580781915 899270604 57516703 166603628 636305732 898519607 161668887 387328833 816916641 843355708 976544714 979732569 984139082 998175660 930840401 992028400 175104207 317851681 6340595 105844573 83929081 850492709 645058637 701772125 440165652 477486982 6904588 484623331 634638461 692131288 685162309 772940206 759488502 927237787 11791946 381390291 919239532 949009164 917087380 982714335 894158351 953493573 339348 783962623 813094273 862138694 713290112 825349014 38272849 257069979 179799899 877758342 644688548 975718501 46736247 641430514 167817795 329282951 609304317 940217745 671855874 898528992 939082358 974459208 691820023 967687820 985727237 995603275 724636090 868106303 390798235 511334315 8154997 338628752 617905090 982692833 834652134 874352640 652381439 672602498 156847012 429478681 610728076 994498411 283566375 863444719 932388158 939956756 971324075 998312400 568982816 782144344 394009899 885601240 414254708 714790009 984609327 999490821 990485888 990572568 956138490 990122216 893397917 993331679 208041596 640082039 532304231 725563255 313195179 791877348 99353889 125287598 148267953 356202113 886034912 964736822 813398039 943109771 399982488 921596265 460907261 555541014 327587483 550409162 974153914 991066321 738598766 885174790 89991225 817102286 190008636 960495239 143185671 275544750 764922821 937383789 999261277 999426066 566239609 763008729 439291260 738654535 523523344 682467199 183132964 517272042 204675828 456815113 169273225 285352230 638021671 762849790 37654272 891967005 521513159 537776278 736794525 976009569 713163401 858429239 387352504 444114961 801355782 959993679 421558831 592451603 942478355 967705916 343093097 419956740 227287391 427648081 60795398 779869204 628945595 944174097 854070880 913270628 103886516 159586516 111690812 230065754 149722263 679835378 395503879 826887258 23307491 593603539 829774057 954703621 954001470 986128819 546344351 592914241 706888185 795840633 714174458 901214260 86538281 438211874 427409932 778540349 846771937 943570908 301985918 452790944 869500086 990528635 715867744 779469963 732437004 951518592 936509340 972785570 13135893 508305730 824513539 892039230 335721722 812249506 119069902 580784690 858813275 869241619 8758923 596314837 434489244 796524635 342830903 740668363 282057739 830734090 6117522 886286340 406955613 565559009 494784594 766306833 745592693 796248874 491529682 878159687 918792166 994544366 696121388 983091990 721174207 732742988 101694378 166515573 492006170 903441322 966569573 968373148 904820923 919223994 991740610 992166873 702010513 722874260 447408824 755873408 179422378 782776604 685871300 970694255 615397241 651293492 161269380 383057559 317266204 373288099 58975417 236312167 365044668 725954402 886454765 972543045 519249203 559895306 370990164 942522044 959207831 985884702 510300059 863356116 118666490 527424599 947349824 947391246 79381655 308235507 953545782 987538586 148038435 952219228 915844909 992201455 252359346 834448633 341269048 987636504 630636886 848368336 705794015 808509648 424890318 658201502 336560573 516364868 971087391 986547014 132590630 524094552 168845639 720185288 232943240 763900880 650106877 706645362 154152830 924351915 986416569 995930157 126876022 194425349 274569623 580335072 118110658 462658106 681634195 691504879 659303297 911569898 844209530 899579065 130239565 190746807 288563580 446614128 725581043 926145222 980332191 993284232 462052026 571608599 152772734 710793126 514962067 947764523 968989936 973075119 405234710 417473552 889655996 922292360 958982429 985101172 458260180 797246070 665667553 713413643 32692529 533858277 606127720 632036052 33260721 724278189 32044504 43479107 568278376 573196214 937439409 962159019 842453440 960831622 702321942 944547848 817700902 830917028 595494046 880218232 268933116 842142424 441033432 950519694 548046536 590428662 718676063 722182935 641399618 902556177 338894220 343513636 274827585 979802158 410755856 547339137 397369353 936521486 792537660 936744549 915999448 987407736 347482491 676688120 618162669 658622877 747520796 886061222 174638241 820149529 558607163 750302101 190289528 292606597 184524111 320074728 544724071 780997052 523831441 737961193 190640046 307716947 989039710 998167939 350017447 825252930 869332036 928952693 641887297 878539780 627149615 827245439 222004569 693674765 31867393 63679856 963295769 991393587 282101571 738899079 221855200 785936275 892461078 958289201 827387104 885686720 232816309 643248496 430768279 899764275 405570212 922204628 174650272 402439565 881022613 998767006 139311182 334998987 272040214 832809962 986410670 997578778 319537842 835119548 872439625 996336914 358275468 969993331 747813001 941971452 875578889 963030348 257381355 565376310 480855439 725444079 956084644 987121844 87296389 447212750 132680193 953614971 698904610 958863616 134072954 840032390 619567056 989205653 901138638 925957961 771745399 992115321 23179453 66561686 663037750 893586087 343299169 867491794 659627329 864790848 688822942 984347211 878750086 906852825 551181000 661399025 890665380 923028333 26844639 786347415 467455133 977408931 68540133 277000952 383751741 622620781 193122275 848519992 996079580 998370102 55234640 797072079 579957353 829796973 230262000 577397909 600753641 630501108 490283724 788368725 685588966 880697060 146121649 278200848 190944117 911297119 747904506 981772603 922104636 971790454 884032482 938416201 657780802 742196871 569726210 703470362 698475755 943196988 194009459 470799917 193315044 329617190 212018171 277563705 466498308 758469168 809048508 826625627 282101497 348388550 720188987 727386246 621024015 695812783 627173148 883698249 897545250 949154523 576268394 662797735 694779983 787430897 337105941 701852085 370766745 840756472 503233923 833581664 442860776 954451920 630009235 963907470 763829953 805523314 9030437 507880545 109229249 716572570 302372800 624218967 5208807 194107492 411109397 821678000 762270534 900346551 121116066 196259501 887646977 924432887 89824322 685768560 132238264 418514101 685707997 777814789 16168313 924700923 538147164 576005601 237031568 490295635 169017861 666426689 981961993 991703435 741455669 974758993 8762858 726747910 184176212 638896392 79413032 921534111 631702618 837998885 995281507 996910533 900204993 989155944 257638216 788565563 979408346 982517502 25634032 188436322 725756673 729820326 263049443 850028967 737037628 953037905 794573809 864478197 740015778 768153410 865389011 870180356 667371753 855633308 563013921 998828651 102890111 951469837 561269211 860932111 979036524 980591844 444114402 527453244 629724727 988976354 316272282 435125280 47962737 51315239 477713658 938245993 356467353 604267336 953311187 971698917 534708416 801202956 371805698 429522915 824531550 846893080 505338526 562643973 73412661 532236485 818064234 999046606 26102207 114796201 134696916 532985695 684601055 707051098 159732194 563891478 905662303 943805562 399769943 734699436 629505901 747753770 336078041 683547238 744568680 973505273 221620681 843334263 682325998 976462752 601018913 668878616 751303983 954307097 218345662 379264816 896941883 976341926 628880527 786817805 636639474 685952362 298325963 826237455 383091770 977213617 602696561 841037385 349872713 435358014 238987202 662451141 591788178 968337792 460483337 828891865 804415568 939308693 459181800 688991840 798351875 889865225 26532760 698736889 468206437 784895938 110726472 150277213 76559569 440455297 10079384 550696791 26723920 491042718 670838134 999981644 568804046 966520106 241550181 532838507 832162783 867734260 559966313 609325970 388552978 490944069 867778332 962793612 174242544 674075880 311587853 548842223 823987236 865340409 803939396 845289408 162428182 367726798 219725952 275827935 988553308 992324520 867591288 921375195 918700877 978069311 491395102 630298995 763624194 865333531 23481724 944152670 215147306 907192626 854872169 871038572 138176650 609944302 307114177 417908880 152000978 616196802 893401345 901939458 306318458 899400847 440360625 887119688 544686800 917824682 307824445 905092747 697430569 724609945 826236335 961940275 1112527 270166442 489523179 942918343 66749294 843446414 494158456 864302492 284567909 350258737 209735597 227426549 853417195 878161313 875794129 918129757 545652224 740385610 651788706 776900297 139612411 991893685 693543720 741525664 687969080 989666944 44027911 191192263 982854537 997355522 617697646 966741799 396031225 616660361 911665939 974138234 596951820 800664926 328564941 513964344 145000746 410178074 53087682 162305025 724764318 781110712 316599697 323226277 61971879 331492477 10805406 248979484 706876113 825703629 582502558 896278728 246861130 930130157 25021392 410683775 13191987 775391017 900736900 999471847 823897304 859861325 808239042 844833589 368764846 961571983 782659658 971724803 554897482 837743351 395444640 600559038 84214913 427283270 996607078 998552490 153477686 379213350 988497357 998798281 704186054 807233952 183590549 548164595 889009246 896461722 303132279 498669623 748862131 975664753 433766149 604138477 413111543 798022279 258457515 507141342 731898545 803202323 502302952 686643721 927583413 961273763 280403354 680935194 441282594 693382483 269229008 845976180 825212884 837072743 227472015 827058275 717895016 761063415 925157498 994206677 726363178 750932442 404511399 623342438 777912647 789138929 624817231 662451601 852607832 888192159 177887213 402272138 610300043 833234071 541221526 673461940 662576244 764546705 632475059 677488596 156183070 634141237 789705249 826847368 807576552 906387117 899327368 971944386 195394769 505421372 484389101 615633827 476439054 682388485 213877332 596440223 634797050 847380836 383990089 443726731 803198018 910109816 185836743 868038889 387691023 660085660 612894399 895670134 911278192 969554525 970588897 992848176 435446283 453719801 663709904 791983212 643784598 768816748 350334491 805710035 549022645 835470882 935052035 987988234 336232381 785991765 778321144 844198254 254979054 913572111 54388007 784304522 391177190 828269858 924949506 956364141 122755796 819806507 563570597 680493608 768276696 898379517 845820580 871701864 483980729 496702811 483936949 624276741 893900378 984177668 143589094 696822457 463252552 756478817 747318090 955436304 278746023 282365418 118008001 615501120 975068945 986034961 732681711 844504592 679015211 929634793 684992929 940906264 136110876 398580797 5589528 128238611 413316458 889400392 56116993 959114000 383125265 653540074 641132797 728221777 287775592 409437177 436853607 609114926 190297798 650405318 689760911 804866439 208592584 815031722 797049425 929701764 568338131 934614429 829378424 841422570 939244279 981119466 128838664 514278208 198807755 505117120 233853712 700408974 997298415 999480958 285504627 744094698 350437753 868576910 500024880 600634553 560877732 753653547 120180120 165264008 331324282 524037923 120562247 431187744 668396024 899267714 107996176 203927682 462495 327919597 961706503 978894043 805517313 872616738 314123278 972946448 950326767 960421863 947948016 998589383 35611446 220517587 202641538 815693600 491276611 783844926 408126821 832468291 494009185 936368735 829993508 913004514 195773710 546226485 215580964 297877061 111057612 260900155 991656606 999241643 184386759 861763954 837883468 853096049 150133820 999844074 413111179 952804623 215012071 905451759 712292782 810539588 476021875 668376048 27161513 557767693 716665620 779452674 189930169 360339160 382527248 636074478 713183884 892041999 19426655 78478868 946490886 976679656 562834239 975576599 789440817 935257118 629372180 860056054 848739727 903856294 294048865 995270134 927570038 928633717 737365274 808864146 914880792 943275042 365282366 375538958 461543214 930401178 590233093 625318330 255038394 637782950 191856746 506427613 645987989 710672832 208840388 995892539 933335765 974852723 180094807 683473018 765263724 893629556 645875430 811609017 741755996 755596332 97228595 713987644 962763476 998612974 504132376 703217599 221725089 851962344 497939478 668939042 568289793 702456130 677534804 711564044 311425751 642384894 137308267 390263423 908978195 932937117 7483484 158937128 456381064 938115439 51452468 736428640 14025219 89716452 773592392 819043683 61788800 764988398 581526704 687848065 157282582 670058835 245520898 635283585 552829879 680910911 104219945 524312061 596132358 845076075 453373103 816302842 871682480 980249932 857866672 991796937 344806742 802170353 4663900 607121298 470265427 591944987 666116761 959882907 967944235 969124171 847522134 971296126 631719606 676722043 543445382 736216789 217449171 527224698 736176523 854599541 523882588 583970732 84359617 509973153 334288604 420995507 889863749 991621316 496602598 853833306 447312 355117090 737264645 916209136 65600554 225126447 24036931 944253056 388677758 706583004 61117895 684418524 164013350 976282789 88587767 379165051 316282951 403663333 458279028 894855043 491478092 941645563 427550122 506244199 743627307 782533959 986225747 991761646 568943627 592424551 856838844 863426589 396296994 727795800 92391392 594564153 252405 766456226 294532479 676179848 663032575 933930341 664658245 867925784 402765274 711158798 299473586 381329186 705385864 944600613 201404387 769733347 180669775 432364372 734511426 846888805 347023676 577117516 372097739 604284665 282771198 571078459 903894139 964959548 987679538 993067142 300929705 975391973 215823203 349468660 32808678 978471730 137917908 138075908 818550529 827674723 155005611 453973226 379219694 887802439 45486398 818598743 501951001 526952635 935108550 991186609 670726470 913128550 538302910 914807342 789917996 817795969 945055977 948643574 685212443 809376114 749450753 759567349 825214559 913170231 688895504 788128381 311002025 972431073 463251187 754057492 102486869 835120175 209263935 418045976 165457647 382999018 797394319 880508057 820283914 833210699 114368152 584066345 472913966 702005647 958278498 983924084 254972499 348417652 241650022 289525097 671910662 753112950 943196167 976290276 812141965 842303238 984353768 995174467 719967111 817269324 449650156 743496036 621194476 840775887 203402459 489940959 921019069 956376075 913044740 937809983 95510845 591351846 211159538 316611625 715150459 873972043 139636609 935386755 905674158 999423850 566732289 848797862 497436107 752956488 389226683 456020593 6665149 247884940 70362238 808085423 596672851 796587916 922238559 926993107 86409187 440632313 444057249 634334005 797527545 922340487 885609749 923240999 715796876 802205789 970579562 988064812 420295581 450462412 651778746 799854338 76604004 828793000 201310675 364644501 474010053 569715857 50939438 975247906 976015551 986344505 755162678 843152061 427816677 842404818 717954077 889233772 245482102 633458396 582004566 788023892 68968598 194224408 67244778 496382059 991807714 992481261 433818434 570245411 721794442 820504800 658951377 741975932 11771467 743488275 697213822 748648423 510972230 592453784 914618783 991003807 748318147 835974639 900283932 997079617 499843809 709382506 240286306 566622728 52440342 427127335 537369223 993402865 552173095 665767362 177911091 883049951 14983247 747402496 850399849 978328371 289250289 727575116 833417660 963040531 985980987 993082490 651911187 841054446 943837262 998776075 77631895 611892403 777929179 830425032 732918826 774383153 229101794 275912428 590386985 848329570 112903760 923353769 723931510 799164795 837181373 958849788 42313432 226026612 117620650 258492916 250318390 279803240 14915671 493285821 531856287 629876702 692155873 986152140 405059161 456717282 241364053 738111517 198087565 878504200 849945801 851593570 883674081 943267994 704662118 961890577 842544517 867662582 220459184 408501989 960462016 971702792 613795404 910754556 34201129 293948845 794899586 813756646 20131405 999312840 541180605 601629448 387324812 811894926 216152117 776371972 803312934 967903957 251303086 746403232 511747195 915271697 719616364 949407519 475905473 856127192 988872240 997481571 734272141 800694803 529093427 691450295 434458487 438167460 382277478 825769647 427092657 928290499 773684377 782705399 369989935 571613406 981138212 998894086 11205880 148935497 176792409 443142233 947976932 969369960 928462035 949760087 735003161 832149455 342225209 543242767 573212751 864683503 688590820 927293011 815315451 924957768 882620361 990249996 443035651 839545961 666512710 680773114 860648116 968617944 890222626 914640531 695796017 703521165 321701578 978085569 753520827 758199900 779541795 938847807 596334758 735677446 149689350 771462254 11263019 510088666 919229230 989975470 791748277 911049975 466630208 486758822 813853599 857619550 939547582 986225741 54786943 440438717 518797116 745159625 76675743 235691640 94806933 522519806 143125963 483867453 912018059 926579951 577901685 819093056 588305261 707434584 688015187 920755303 907908704 942660430 139548981 393921349 122908808 603422773 13911956 617097007 162225655 541669601 324426993 545864273 165036624 602767953 880685689 958260131 44762088 785277473 310962560 720046513 735700517 832829935 177962977 702724397 796541997 961957793 879181403 900119303 346546740 725562949 613741460 883978738 992174391 994666082 546879069 731958349 339630538 954402402 874307143 924282042 857338889 902763918 558064856 623646403 878669884 936484753 210484866 226504697 884399035 885307321 787939745 899030265 985254057 993702012 270404075 581092477 929110127 987715119 139304761 232468066 986581211 997324896 77427158 596087223 556425546 798463242 741268670 911819958 119122109 790917919 759645392 851712056 9809656 710396824 711330787 858603298 562836145 647268011 442801930 944044461 823711238 985101859 192735969 722394829 895084273 963197513 897141272 934380824 979281454 987696457 118386810 926021717 239640040 513898649 633467713 682314773 689702299 935344548 738123297 942116583 736899074 946242395 281289762 750918909 140607362 165549334 687430989 889424580 709810475 944230814 993156704 997707342 925652781 968854236 9441566 944933706 774894709 943700241 921034146 987332429 480291908 935796368 968304524 975074484 294630308 395159296 606013924 865066102 913120003 979342777 532156235 600692421 99962176 650512982 496958369 796578949 355128353 710444824 966041418 994835419 862370127 870621075 113716658 948324729 964711107 985387315 605303813 981587356 816599111 877412568 592969335 775517520 204059301 733095707 509891626 563239953 979997615 987070570 356459635 669200069 663558499 796653493 794745017 828888577 413398632 615202179 545353626 904926847 230281906 837455401 527457570 873230333 493225828 778443885 408841837 483763699 858203292 863474659 586371323 636468726 510929087 976946479 6460780 600423261 190194250 999566562 685373825 739335436 63841183 570290241 74500479 982590690 114626446 801984657 289167426 347478638 212522805 812148375 806884594 817442474 163261470 497492522 950571257 958660977 403308089 869385397 230340146 780665251 505386449 521749826 950099351 986872574 965203867 976462934 836168993 854549826 568521257 983201134 649362538 711517247 601889796 750674765 781167856 835055016 408235879 735138785 32598023 672704221 915423814 965334084 205663042 991674199 673424201 795983797 178706678 209247859 969822740 997126686 514501642 675391241 114083401 769342134 660738071 981038081 593380467 938847856 783436912 944656425 994431822 995485296 844500025 973357230 22540049 322856469 50940604 261122490 216086539 410591195 302926875 356341636 375539717 770034911 674664433 939665802 325085660 994318012 916659223 977313987 771023370 861772475 308755079 972688049 242177428 386378318 826146041 935217350 365779603 885678133 627597351 649743472 910863920 986169032 703804482 794287654 738625345 769116203 134416425 881516307 278195884 560616635 873854347 878608754 808486608 877638529 623285249 863194248 430131798 821600998 895507498 944499851 935109098 971606675 313805505 325522183 233341410 239842313 560538437 624565760 152891434 378231027 54197367 629140216 752022494 885532164 107785349 399727538 237104467 759056007 387526289 921435537 928986021 953006550 400753665 543032791 144425301 921349734 639151835 984958108 409501379 777537301 495346553 644878453 739688041 754905302 716543008 892344864 604397275 971235759 234124964 916450051 122443405 265094122 831050991 902308427 143636072 567964343 71317136 683471929 311044897 419332877 288600038 756326892 287614248 411292181 245382565 975501204 626304290 842119562 453787555 725842372 413514982 620340158 37415808 954475088 907801430 958304905 98825618 543362462 282678134 834747987 734332097 803788514 462436298 600059063 647677950 764613147 195463916 891471125 192933835 385486869 858705363 887246338 796156872 901556798 761141217 844344655 24508350 39224878 381766888 409523383 887358627 964758225 623447155 719931572 444718861 921185844 285151559 930289163 89017939 412292576 550255524 992981902 203840153 723915901 507835050 605409053 335240610 376110877 371664390 723004820 887818845 977898235 81219676 240665082 471221253 898309769 645553554 669588593 868802000 923255275 248016133 904277614 530536425 635750638 349817569 800933830 701356121 842034234 701364719 981648965 912549114 977524540 146811104 898673217 465074510 742143916 679782323 727549569 175717559 674410442 575733951 577087764 438215826 824408268 298746755 525576160 514136130 716953572 561945941 624671749 313121787 773679531 799512416 845418598 166502470 330300262 381052404 825937800 755879179 923573797 133714706 645773449 254531594 361810515 895979206 916173217 124452052 968272647 849063515 944183257 499803354 803487759 781801374 873810110 431609398 623392102 767286974 847989578 196752051 361239924 554824818 973515543 187074723 276460871 362326664 913605979 960882238 965807833 713582794 872998402 604451823 738159590 971528661 991521561 962054598 996582171 64556856 865075479 165775106 923350932 969215347 973784221 518309452 648180154 272383274 343118884 874236984 888592989 158001111 928578967 7393045 276728417 335604097 442981119 225610450 818759976 407170437 551764222 664650464 995657773 466362818 492082640 332301660 885585451 339589175 847179617 333445034 897979543 255266497 615271136 983323131 988703518 297783510 804290907 632247064 964617832 148991714 438661768 963740164 964876857 846709915 847451136 513950121 606281743 408458737 471567114 131025413 466482243 824359719 973496379 765745270 931435028 491456405 978076200 309689433 587773640 302861336 832484436 583945462 671754758 182269029 926990756 327646357 535455160 733663630 797547648 269705268 447222858 562358514 642603557 585280825 916992534 716830296 822127541 459842238 771019241 462360905 928280918 242130086 342187569 537425037 668605880 573426147 733333913 208556503 534654347 15778444 752501694 347235736 629471527 912414341 994353134 934309829 972427585 64594682 119739220 465629295 806866627 786789667 839605387 115280264 806197133 586999216 630559592 802935402 931992398 980376552 997608219 723582510 976175236 463431988 800300680 82205380 132571719 185268355 428959810 681350167 698132856 482232024 622228905 941057844 946800039 666788521 760983020 364895422 426930604 394201994 599818771 530987106 818550841 897911019 974510639 657658142 741634776 722986590 906168275 346972378 542229191 935577573 963322151 885459682 939357647 738854007 993089196 432137404 470086266 990668620 991260015 564057035 996217179 846480052 928843621 525131990 913826317 94094228 656387547 313949701 504133710 739914448 794153991 783202603 987999635 119770514 746796926 909684790 929412670 257420554 848946067 64827696 328296595 325570469 991459261 960692450 987843873 409016240 999903457 391747797 838606815 800605437 949125483 743430480 883064892 105203641 941290048 27742997 231125284 884119822 893949393 766491370 848766155 944903325 955305287 74349900 123904290 843049337 991511465 173586369 567934485 902946252 970515776 840912023 842294282 134674981 849175602 182747917 907336881 739879852 800133616 838764872 942302512 634941959 824689794 744185220 978634217 50655420 734297340 410852075 966085117 759584467 987475315 899640 428251291 578458018 606163919 230927707 235613255 662314936 999377936 795513018 885641247 238164126 278454809 491617779 924034076 501223820 890770784 582941200 594061220 492208728 997802598 324583853 826329963 350907590 765469220 740295694 745716656 547160988 640453216 355721477 643423343 573603293 721349094 416364092 570378330 465061423 715457029 763011698 825048370 723281439 871449126 810127835 920830663 224543718 894481579 66345710 369162594 977831570 996165693 664627563 829327894 486873794 575418873 107008583 604795694 198625589 234172257 612378034 725302189 771890881 794796177 426494320 715778192 105736740 166454579 274312816 321208332 929348062 938398917 654195687 856414427 193411188 557617849 138170119 466511818 795833241 879460732 969040715 993730144 420691570 719425038 619398972 903026575 270937283 638607534 441307106 903512291 127087010 201090249 508643578 987231751 167326623 210981081 375022052 468931231 934761466 990668256 426632869 881030239 219569290 689975240 130004547 567287142 653346349 873201834 326796525 839799230 825257913 986877170 621135580 876748821 486349693 636700700 5028877 407338154 852156509 871368257 779421263 783126903 688387850 811179746 714257587 978243643 471285308 793039097 74465500 235287952 700831847 715020056 255353939 912151458 314373373 640664874 85335712 99132824 980206972 998978984 178805482 611243937 266486785 777556426 158314506 926757799 976786481 979608901 889908938 964709258 523639756 750257144 862863300 887321782 160933523 586121362 445321445 752732032 443651048 820481398 651964336 852048851 914653875 974076707 713177213 995508637 925416743 952085385 681381633 753830280 603838575 934300017 145261402 753311166 781044947 810300362 956166486 972973458 571173094 847596556 819300038 831890667 605379859 726580338 36431301 431334479 36949526 196007681 173411806 784878994 134218502 431603052 442648826 773160700 228717770 609555629 303964274 995541005 886221750 915032009 905636575 957936152 587955530 678826856 603014566 981146581 973122504 975105410 310179950 370780032 649108341 745208227 729077694 864113207 306905352 880400023 526457213 799392768 479557191 981338162 608171905 690935910 759626109 917714588 298767277 595397394 660654704 685072001 269097902 802806767 812475474 932633929 231409915 425924995 906788201 940931704 862021662 936531279 77758902 980040757 108980608 981520281 635960243 845235701 876109756 897937701 810440715 962490442 466135940 725755167 733995458 807130030 863215789 899587423 786106266 796758459 891292842 912037065 924400051 945277518 782708318 799276937 165405836 720411998 576227530 820553944 670734559 838352402 386968676 551109159 14053539 557951599 554824088 722297416 909237700 982961669 644167568 914100934 283216222 750240796 626744124 991731819 700294498 810731329 136135900 212456348 578219294 848147472 948548434 966343108 767747257 910322619 408105096 886870050 413980149 639696570 435424142 512657661 908151660 939780684 900314657 975346327 532602617 629811111 351305832 686597265 442153771 720008176 582460263 647582961 979108779 979583114 714618975 857953286 544679292 758619725 176393184 961142553 125789383 383141202 937996131 997384187 200859023 675538855 754998027 855767433 840534592 975121331 713664131 937299355 809372654 986845348 887536570 948449293 714350212 936019117 999838809 999966846 861486320 874254997 567188402 962498864 640862487 803310327 438425577 566057901 858966661 864672117 985871533 992521428 220668797 325073840 639127808 669390693 705874025 966741919 176004566 278241066 12301326 410064890 726411183 917476875 874217215 939006600 366611676 796051260 190340051 922125685 887267427 997580849 476107442 509192036 601456755 871222642 401510339 832462293 171781297 411828955 94732241 404618836 262490580 981351196 999174598 999422072 564298963 564627457 238622036 339883676 965895181 975147717 631047280 656075907 804638773 856716404 333380157 694020050 802346661 978259771 180568187 548418751 252055738 528258637 448971972 613453435 139586449 904456657 707343021 900626665 104815075 236642709 489817828 544409215 873835213 916268278 100174315 706597818 165569414 699150972 76263260 910396975 382654357 673721265 197086956 361099707 150692463 921595401 182232637 930969895 296530699 330447893 927860481 971151828 961222189 989146058 862636402 965672589 313026989 633683237 233933181 651136364 697403432 911638252 331576224 963710817 217412995 571679654 406197374 673888533 268460181 810831743 951363119 985857864 83437173 734276198 329509835 745597981 380671862 715047274 309376116 848605799 358984309 492378431 677779361 693628430 954592063 975635079 303024386 430791093 283433351 358054146 844101487 895182186 304329666 331747085 176695987 532083206 618719375 835968251 898629095 936426581 266485533 942003604 459649720 554906720 832180906 922403015 961242096 989887847 247530830 777092498 43748063 212342896 311933427 395369463 253363729 697491757 696694054 951015759 689110555 720699138 591007031 699184523 601895407 821603706 606738366 844317629 85666166 881147738 256751120 261487345 138801270 707189792 717272696 881909491 790641050 824296953 135678860 511492559 51500077 410845211 916057776 985521436 76675111 405479225 881226200 950369347 260544445 352277474 389913200 931242000 713398761 725325313 564415231 662593207 712064264 842493611 148480417 713876727 491373028 918629526 723252808 882026130 784965452 904230719 25805104 424326501 667679790 779811785 60472976 764877709 427770307 881338438 983252707 985951052 192540501 397916032 765617130 999653827 807380222 983695181 214498192 251260810 203123762 650217122 407132291 957931026 6315621 269179981 769927298 924903896 862251422 899461073 166669150 651222905 829552848 841113524 692025824 721186033 577170973 782687981 361418734 938860145 979284690 993177534 261795164 313144453 788062520 969328523 773576541 992421147 337133862 501649067 990961465 992437990 317737557 833527286 652983829 875846109 227713790 857950716 686129948 726293387 238485054 813225594 501813831 895171410 272888397 997071425 200544992 849273062 696484750 863778740 362078216 899461723 707007802 903502302 860610716 915053389 790439916 979802588 439253083 456559914 433890931 490166156 963730925 986389396 476651001 498894963 533960370 907424563 187838417 954492967 421388749 809335184 721153700 831929735 970806778 976641423 892375261 996918168 254777872 971034118 224572336 358620169 258172244 270710066 456967443 685388319 578240761 868779763 73670851 76655970 772949790 970824170 350307534 682607669 885954624 944564659 102754227 635650133 346444897 735500411 253294973 795525098 81957323 755796932 779773101 904983724 1231053 3156544 853319853 971700304 992725249 994979202 718938714 945262353 932764174 935106249 734620362 902252766 423551608 753339446 554826424 903638055 455311719 804049806 109939453 924727067 920919536 927415421 355886660 794054220 175510 116933383 225502540 915080471 844720168 996421071 916071791 988644910 417784533 498435000 230895091 719587956 624336922 939046910 964415607 981468987 399085091 898588375 392108103 423482065 996223494 999119144 348152834 587550530 792488969 876762237 699360392 948761506 80302794 863017641 471847050 514179319 167132978 697113893 429091521 446174844 414122063 895149729 808254244 852775440 523956905 645033119 505111469 977846556 539628825 971837905 854241788 926077433 232543523 873343517 465038909 719810534 990032490 993733485 911941026 968653297 776295130 883214375 650127354 854478148 469657355 596762248 35640341 909097172 729799029 819257169 386908039 413957163 504416301 983860241 118586453 551297097 829163584 946828005 533672141 550460022 603877278 610974074 760651496 966020764 776939170 906186180 206615769 478853868 894705067 958656363 111427041 830687773 165369682 294850927 388978596 663049642 886364256 967801701 963388984 980504129 978053798 980008366 714632841 863839200 409033392 418752656 2335734 142096359 846272625 893671084 713862149 732754095 643499012 814162725 355833708 713919925 828188219 901606593 740417401 936704578 94993957 808650666 349414209 671585436 656308797 790884641 356617038 499150822 352422223 863754403 648118324 684252284 162731791 971028917 566560437 681180384 471771371 512255095 922081056 965865405 807721110 818637187 626365159 771068128 175454589 984921245 331058319 544873061 156036833 710068031 333730925 404036817 776924730 857042002 223632534 226565738 990675084 995046747 285343848 508580864 393650422 721572148 644709326 837286972 387588838 907719570 134706497 450165864 346372272 742602481 233286617 926615257 825208613 976580366 595231175 598943395 795261854 919635898 500157393 544185599 917313723 999979518 823977548 831966796 121090771 287944187 45863864 543308749 230680359 358148932 246760147 512772003 931350236 983478089 558709030 801437395 455294483 523096863 722523346 935941524 5736009 897860163 720380362 984241370 35790542 561975530 382195833 632434532 675680377 778008125 335449812 750709163 588026755 623896604 356777592 428517063 446066644 927821177 659010531 732775200 529849385 673332510 919063902 990025248 536949204 697472356 299055949 441502389 761163555 979100891 640527662 722411319 194647376 588894775 156487997 176578898 58715587 176411284 8188532 834311472 29804689 43429626 651253448 670096739 473701722 655136344 611422495 940352701 701860248 733773128 602944317 731246665 401904436 762524826 669802848 740551575 187885110 854417763 552906558 582576517 871240549 960338199 666346294 802002064 47156553 651577128 47822076 405542286 3332556 47116675 808148130 973366878 949084057 956786355 877674903 995497929 960411417 986845674 88463687 750205916 180914393 242779501 281399644 373895242 202169471 482257647 836801844 967508961 16318393 283915141 899354600 961642372 465731248 530880793 845351901 965307342 308808233 329450085 495934212 964660145 982408902 999887469 502833185 516530155 385239293 999527991 258372261 908866182 303019895 475044617 984910086 999070293 878068157 972988351 424147638 940450295 851924759 919871728 990111634 998554325 347317375 688381286 238485742 812836604 320220050 663448491 393215588 731777881 650608166 761043744 751440276 935650287 518399187 939196654 736799154 935061929 259733177 797352078 499670821 871566257 792893571 830903103 388487517 918826142 981344792 984587673 105672517 381711581 484276157 854769559 144942858 675292245 533556740 686227544 370377252 908201278 787310221 790918380 706590831 806965414 115530568 925718424 568314805 645392168 22763391 603266884 547991556 731768173 836845935 960554600 505674321 949154688 530992755 539307815 877725653 987200348 886015737 975568977 204528419 738456029 703160027 756662980 143281986 264905295 579251483 913824496 241681325 554917617 50320729 269310668 831947026 993399261 972858730 979963471 852544457 884461120 899843153 924659702 145435116 264570474 72005 949840718 714477555 835652818 131148750 813851427 521663460 617570686 189056839 259246893 516415334 605826375 53427867 850589529 885704131 979288234 834657187 849026224 296480337 315817766 620917212 961820553 633992464 783834588 781083666 829203046 371743139 954762183 156100942 534038707 301016671 451628331 885915337 977457236 72930992 315515880 587904991 615124724 481807614 672380919 825655820 914730616 599306206 902362538 571402544 913843970 277781729 997436285 525397265 788069420 537182293 773074013 80698406 344273369 605021188 789662547 356641252 471109848 780158709 792433923 308744223 964604600 788745506 802185950 388864330 473964657 891291836 894099405 389125326 821636086 230847856 413040660 982544768 983363923 387121971 985041911 764154415 974613361 367380804 618418606 198955513 609804992 858207076 924628950 771474341 952187512 430772315 798513480 235227028 428740908 302333160 832601910 25009806 653576182 89723764 284953295 356591189 872955840 265800116 664608126 743354412 777900341 925337069 997881052 108022044 413953972 444552031 714768213 456238004 850572771 934496646 954399483 299721021 434864618 977834734 986390369 828609049 978001625 70230364 619886163 109722701 764814619 898751900 957584290 789469707 847350324 841806695 974342413 878290745 904471844 260884889 926573232 790592039 896900460 215864852 498836788 936156822 975051091 564751687 990583903 913716556 991587322 501043080 642088111 392111120 606074269 248544279 970747458 699756500 973120045 837979053 873187020 46420955 624579643 752627655 801881655 175379981 753736543 792655289 978058157 513922308 775697796 253864743 496141745 912711626 919973403 425644848 492485385 42084105 756701751 476404708 792571683 625493087 740905638 924450552 987051535 201263131 386182956 494799539 597609121 124477663 409081763 853340986 859988130 197322077 866029585 73880371 522383717 59370559 743217634 194262348 319067462 149227332 477513273 578795261 751811692 438037895 733813440 890537872 958500377 828901201 941639412 390388138 658146390 545008423 774432475 908104935 995383441 337187744 746690658 511506774 591312121 136909046 419986081 261287116 926519308 77458613 101138819 898311824 972792478 576490372 812155945 639179724 991995836 463521351 661590945 416481623 891776461 154511576 394217011 925896110 959389293 966731792 999923185 134676284 877583910 620297306 786744248 904776593 970408560 819686605 940580386 468217335 920680210 182295302 907995718 126977254 938503243 874346297 925711622 463489002 937584752 763014907 868803639 259314281 773652689 117644762 255533704 366587274 663976131 678519 758853440 522712721 724193245 775783068 991883931 74832023 140343536 842294837 889189684 444690981 474206961 344968512 920392371 803132096 883661861 26161976 918029114 803596646 944294554 519565921 763189881 771576054 846836422 731925092 764204818 449049374 643311815 996560181 999842586 209885431 250868477 82329551 473312152 431014454 792902767 660962938 713373927 23190958 938670150 664740710 950622101 699519200 875890223 432155604 727114359 102739364 202741953 241997138 706392518 845793097 846648889 559379021 656072210 812595071 909885649 553442511 961232064 758708976 934443041 934296424 959498334 425697867 915724558 820537219 875174498 743014486 907901536 297822769 683692543 352836561 924148999 990063932 996715615 946675475 959082144 194096555 294016020 683851637 925785452 269299997 532615078 720961791 837651504 827068852 850299201 742552989 780329121 912582579 974844319 846445285 867296381 33754246 899996553 683872055 728925162 450916362 629500170 357821592 782179940 339591049 574427826 980855048 988965436 49584455 138210308 708711454 710449144 288105344 931909895 405740198 967803890 34441837 499142591 913707663 990029823 87523757 217655457 73050518 147599738 770207375 807935907 725845203 912597821 371016561 796011605 868677406 979318104 666776423 774828379 995561044 998436799 112734557 600632656 451223699 820713688 996746401 998177601 424800666 782539434 266601679 830246859 552745689 594616619 16040550 764941560 356047176 655255069 88371783 108699693 280223456 844444855 135343309 254282775 467252150 605179688 616679288 821374307 902149511 909762595 691415740 940342600 249611255 992426016 179948223 271045947 249654114 545756127 43549212 264454981 829041351 860759357 396209600 560559261 287173197 756019499 256040297 501980015 607038019 956057488 617722616 917055379 556514554 726039085 574990670 577993706 517742340 695249116 557173917 798419768 258036991 678521229 243588647 644457029 606184736 774919213 858541665 883831182 696319638 986457909 196464625 676183899 139344971 169495291 119494446 849777375 983105315 987683812 26517071 833133541 543154656 911261045 63754979 435223008 672107186 746230363 173386264 767555375 920737941 984086625 878620137 950394195 451030442 537088840 250395261 399147312 128878833 357610361 691920234 810633994 904624539 991512831 636020314 841786371 272183021 480349412 572597077 596860065 260758573 602593497 73476093 193308519 189250198 322480132 144957880 984640223 997177638 998388425 976444912 999943172 808068223 917221873 971447595 981871503 589510085 620218305 731071093 905318114 206351029 768474088 658566630 713128440 566390645 747632204 4234669 908360718 568563493 931325962 535976095 677456271 535826899 593393178 405321271 614368555 488375432 713728719 179970922 604128044 790276662 999315115 185892582 894870013 386445984 510490207 939475586 977306179 932361003 943215488 554630587 874886984 292654739 513622595 8825806 678793167 104989488 925133534 796220144 916481232 44656822 840042586 5818979 881999923 563922622 738174705 475711887 550314679 133453473 497114634 649331283 657984126 399239828 713906028 841066632 913788030 126871181 509567296 914204553 936146658 927285328 967562677 813382808 974089607 959545093 986063115 184614255 660170631 520958984 606217712 675434537 727110684 964571490 993079936 576541455 625277701 254356851 361721873 768895872 931168367 72096816 875157983 356072253 742215443 406073333 983824043 117302491 904130211 418076726 783139885 727116826 769133805 946285604 949462825 978656676 989736238 107855504 769048877 634157867 742549735 124099174 923045187 893062795 974034621 421161622 674646542 776913125 847484265 882465464 993441918 83869433 712204486 113560900 135509183 854800197 865516939 331765847 461910907 636224531 778711762 456269993 967551748 762611241 960657415 251083942 599376998 487287585 657224136 915907914 919937741 909662646 960465969 809975685 909118974 773392932 895322589 277354438 973161949 373863339 649933672 182271497 763902860 440574498 670763833 835732564 870448676 14039487 382675964 598553591 614073738 461790759 464897960 271096764 724643771 108468983 227024049 647567756 966229153 850090230 896293705 366225409 747906749 270136970 845942406 787748006 917985229 911857147 978682803 94066055 520915276 406709664 981405017 463833560 851467620 84682164 362945223 74437345 959922801 743488567 825833477 324396045 901694595 729885567 776927667 187512892 905244484 205419558 500399159 120744550 249792815 630715817 637773426 479101914 604183700 495813408 593108115 230938669 649908099 193340502 607955775 905949800 992064715 242680165 818499242 206354491 705357133 492270183 808246862 501324642 673999091 701213299 760656825 19744420 961733698 120579457 850768649 938379517 972349596 49587888 215645780 224093888 687127405 431055155 635114492 211584962 357648518 999095585 999470861 729517374 930935767 231840948 399594110 869862607 925502517 193450948 815980397 546235633 898364627 485253389 906332878 536420557 716621348 857841912 898809934 164874846 636851656 686655950 756753385 976197087 984811381 140549743 553782262 665590157 939697526 214030022 961457144 767848718 903457660 96558439 342408750 28076420 680915720 303719503 713458506 284780707 708718690 134585962 780782762 580770557 851364188 482248042 920937586 699765945 874207136 229678563 262459685 397681882 588340762 851147433 917154221 15947826 365751935 892505137 936537689 488179764 921330167 576473619 804233264 854648710 888536718 566452908 811938701 828332988 974251667 220096488 741586464 329888307 343252282 783001643 948190782 941447585 951916057 227927769 492117275 804808698 881874751 930269461 940284791 438500548 555046044 924831840 994041872 876812288 987575533 10851528 970080439 241760808 290176425 837745358 993523418 415238146 975785737 932791345 980812562 951566496 993195581 534591533 776042907 949955817 969208336 373914770 585453936 24811565 918040122 941184786 985523312 493479168 742932887 842886538 909261158 863726307 973831088 668679 102063929 666095815 852026499 785588757 959790946 826474744 950086387 379537050 605441035 170950009 856087167 307774788 925757780 756562663 943905033 756414194 910278032 244940192 804892288 653423192 789186864 284058159 849211459 706576291 807657144 599644513 941304342 227161832 974041005 902575126 943529975 424937730 495067103 715146311 779332525 526041664 992749532 585978472 898615996 177769968 742294871 353312113 416432494 337229234 485389604 992108667 994475232 341390444 360875099 260822703 819653716 258029944 359231241 953471262 977245827 923865528 984306562 670708430 723710885 600599875 800645315 41799049 930731820 11061992 485755932 350799834 696021209 946606972 998945012 722324284 985706600 636976191 729911811 215774189 267275651 149662297 599553369 313497290 927921641 884025250 938277948 608639567 808140084 136459754 446900175 991487540 998448262 573539264 693372462 630029250 816961693 743941471 756848019 439538122 631014953 6481762 887148337 619915213 771005201 94247582 108023204 263826692 716659879 292174908 494135349 814200704 905351317 300278941 827044286 219525293 907860065 218245900 766908744 340892151 721284771 133853236 825825719 960603058 994542528 1977549 288288533 908203486 919370812 186000662 973510119 92847206 965582954 660930503 798724813 632095532 679261174 617904298 844350392 681153680 942021989 176618927 836706074 347030548 990039429 580782888 734297654 541560024 761229180 205892872 841262040 478555433 622563613 2612034 535666556 723779157 861372300 280013210 795211129 587159139 853811980 777388124 922599492 421025965 699351409 645689466 802064172 762089706 900644469 776812265 787420550 786604663 904187471 828563691 977329025 445083363 529358654 269292355 358215304 328745763 604767056 151295459 613691313 908635289 987575600 585340635 968503615 40847 478624839 469346362 799554728 76941549 607789352 133524072 414153788 714332435 949816413 625089536 667740289 567439408 763209843 489446739 750681698 315886916 508690340 847687104 997397018 706630497 850670547 905398325 998503776 39148838 907203451 445084110 760102770 178446610 698018519 995622706 999548773 446613825 561750813 5811967 622626955 118346341 251879084 923987404 964414309 340168553 503281503 318040842 743298752 672301376 757952632 428294094 869519018 114256462 643073440 201350371 468749371 366641254 391217868 35440898 519769501 520427938 896033067 789671736 974338409 907747690 974138441 654453549 768658876 281350184 728884116 173490261 964995243 808549694 907477871 366425242 782708108 855810689 909309836 768519095 872474709 616019063 767698544 233946310 877051370 387234607 394253295 715988425 888461080 367956911 617024402 148187229 553213433 957799130 974893122 41139403 60110789 754616446 922196633 529978233 900745018 147085764 606615387 675224023 997762430 479875399 811941551 914390792 984280573 184110685 728773278 474409947 738507564 284308086 608135102 392761982 833529224 260357113 816109024 926001020 969539381 859252721 873567359 649029379 749601150 847749385 962128484 771621512 867833503 698134365 881893834 154733472 507535467 886063181 906555635 117306626 235750081 959074497 996109321 563332803 778833175 530208180 848520160 811461405 997080529 490164534 997040624 313830780 762407951 348560160 530388858 795823486 832029292 80430863 264453977 690587134 849763206 26334337 223614384 825017398 845049039 389116429 524080260 257588848 296440456 581618951 713057636 454169877 708495347 509013399 539182555 465575533 570141639 46218749 489789974 147060322 703858650 700407826 959650471 730330850 957871416 831939033 954144420 664881382 885080124 976867069 988945577 289980652 326669681 91779727 989613325 696391859 896580455 218402217 355247324 123442493 840664649 36338357 284778832 531115708 648617779 974464584 988209481 866133458 878241955 980121962 984825668 824163145 919862057 189819295 987271148 659381675 765168173 673766267 908337209 864888962 984430372 779834615 929351789 887729285 993370627 745667415 905062933 82119840 307187036 938572354 948505867 342498857 614726136 911566642 956491322 648142476 662207387 16272404 483812716 256021040 711020521 872241674 925324163 225148934 358654304 926649822 944941597 756410018 899051474 828101323 872040196 664388589 800129617 499503491 528902594 500788807 799007358 178820991 877232525 382642628 588497211 202946990 914066377 803948088 849045410 993513867 993719138 670150270 792815066 661078125 941090446 656295836 730713334 208917404 897139125 234689589 515207259 343150636 827118994 361425929 402097444 537758439 652256089 336545422 389114262 813729 953706894 431583204 492314623 745407636 950652717 130692656 977944748 502675422 514342094 9303252 402434565 432488823 743260212 521789625 775545966 250301447 469421367 200854728 363980896 932390395 981688922 624108760 944837492 548370241 573723386 910470521 977841346 136253695 825827848 439461991 800754681 969565387 994991706 378265815 534761988 168403793 569939601 781249757 921935072 680330920 944997593 135063825 162469535 244587376 949843968 757393176 766749834 435995029 643673755 72921315 794528123 212877580 669248722 258950447 855838520 196378714 198796203 271511841 707785638 62017721 337279825 659569165 735112243 385887240 975114392 901705935 921355710 145730804 979307125 138048665 905079257 343338210 687902838 108023130 520684912 7273694 850226120 887575113 952594893 613622884 826625572 212921716 388055122 24947780 934877226 616011303 717538696 791277827 948820226 802165064 893432284 160705177 962000987 188960282 401627176 614786911 872857597 821630107 944076999 605355274 864068797 703983980 892318263 633251856 903604944 817728686 880403819 25257393 206873337 709104316 899514135 304288056 947721832 173311021 527983160 242156158 400450995 83643892 126149147 368354795 937383806 314468133 600092976 104716308 802319292 441602897 731881239 56259487 416769817 463022273 584907748 861814867 874437636 912223448 916554838 802032704 966280983 574576590 712528305 565540571 744904225 749640510 908444220 504120289 795202865 240620737 607149539 74826987 487483806 143744288 471198742 515539422 891598985 677671010 752361226 634256222 657561683 273117853 640975308 946812101 991403974 937067269 995212770 579374578 843104033 563666683 903681685 861993529 903839325 761619791 869378712 679577171 897271962 102635470 583077810 672870068 757595211 85744821 430570981 202021986 305442386 580910817 692923748 600439074 635518633 518327893 887488340 349881662 713926329 565440797 568725994 251336455 789774548 977249022 984307628 582955971 860766937 304930376 736163097 735642778 795338534 899205271 995272479 867255907 868191175 691283707 976492956 968733391 980857615 311066707 941754627 680023929 733898477 455143870 460502738 418445212 580136173 744074934 798747700 915812270 987618593 31397512 80745736 324460434 494731742 886252140 911259542 790199264 952644069 889119853 904417603 595782237 703630290 727604672 879951504 665825265 688852640 954567516 988080877 539512810 920941824 489486796 997311207 236541841 521766003 306997875 480429769 512797078 864496626 760731196 890609275 83894780 177450541 363378100 417210369 727162705 941095302 54626041 386090123 505220981 613757643 510109678 806600786 144325316 906960492 293294011 346048085 421099994 694292384 917628338 949707808 851498715 875154119 729215900 970157887 583755314 739520744 104863832 415454934 559007243 947925978 667798068 836539617 230611689 789083018 244349575 613207849 921178561 988253355 701493817 858050913 229063614 837017124 391597418 813690088 892582250 952487722 541866911 576620867 209505614 628672165 556106687 682048238 752781240 780587720 340322991 819336565 495217425 803229475 146763517 330728501 142442003 790024117 811082060 849573102 179412656 487357103 146338984 999913000 842532792 910684820 917018263 919685293 907293957 910222845 49762073 949361534 592499812 617405197 78403334 888790115 486852141 905170245 947172133 973665597 238420870 745309670 91366406 297480829 621614484 835886713 387637634 502494053 474472234 916549126 840095107 999351627 906361135 953815622 980514920 991934269 460740527 888199512 475544981 574173564 555097924 827377721 591987579 883800272 638943408 945301513 43017959 496901099 351543385 781050192 820825411 919087294 341043553 879957837 739797973 799751358 699173729 712977944 397992079 662715375 757423433 776742833 843950148 979621051 977379787 983679194 998059376 999518019 344434708 910634351 961225499 996675010 600476103 952998896 841186368 854136809 173109836 845398184 97043715 730917401 427039756 666638452 431040189 570304258 603910923 860338056 765077877 913822898 19017537 539060312 839675033 875386674 718911868 761475884 920347216 941372206 351737476 983005752 734900663 761433105 843564997 967169102 714406391 728662002 503310253 896106343 272213995 385428784 107088811 960554341 184783103 684869855 7762353 943878255 361151968 508495203 77821307 996843432 921462038 961903729 671689862 759370504 912933871 915500267 19100271 161052929 23706287 373004550 961842909 998803114 329310938 457233779 80280429 232117831 481508104 738603757 746986789 915783758 232986563 641889317 547664988 693467001 454338968 679064274 590570114 887513262 448176010 564992466 217254600 990537370 901410419 990798012 167397501 632277081 340367670 680008929 827082453 949488598 584811132 664107733 984989042 995285796 480665229 630212334 522971512 777397534 803147271 881690367 544744342 693766789 300581921 911413845 546031348 649286694 878054329 904587401 901462042 947581126 495448988 683652922 339456927 724648180 277270754 905931789 384421708 877813626 295574810 533318725 640561304 764974015 327270424 949355062 874924226 898057184 129246566 610558409 369345542 720169751 431755060 692320947 361475103 888710881 791662599 929672990 532342599 750878301 78680131 898540468 57239217 945462544 198943246 954453423 101688710 204167080 340858084 712912781 106107856 528623587 563327296 803750353 458427262 632410245 695799946 996056532 474685360 592044700 173215181 596397844 542021190 638809583 21785730 582399682 616476982 899930729 960501880 964835310 287725847 739235995 989493967 990483962 97708817 815947126 112905889 168895537 267387711 404439688 477201334 843717188 969256904 992376646 174091377 720904027 133383223 415403390 757347853 907776659 290634759 621536766 652942751 854234770 79003132 951222304 78873514 498490663 20217025 643416682 174887603 872712067 749952933 792367333 753279041 954571167 938649893 943959229 950803769 982047540 55272434 875260602 637216947 997859592 245604285 637249434 471489615 896939553 297641035 432320943 436130874 740681422 395683661 718404185 730587638 810990060 842366216 915721387 103659685 196590750 419940057 617768310 744036611 907626908 857217991 874577263 115687174 891404200 739632624 751638404 830858765 917798473 825389846 849079405 983294310 995974849 949287987 974874045 915024589 946781824 715820415 925867082 760731074 778096173 318478105 945059616 241931828 903636898 40801905 462811684 231936840 909797695 228078277 380882498 726976967 916003016 574749496 630559793 138278858 714216890 880466259 951342717 3170069 716607416 432567552 553168990 173435628 972803037 775767646 914851471 944923273 965188271 58253638 310488856 684621074 763297905 787693256 844011064 944316726 951597542 410200804 701857876 839237844 972510478 171143642 636938260 108880728 142897166 953092492 981567468 820259423 850537947 2482576 517665232 775157645 858073673 932318075 994581929 600288193 603222794 893086851 993826056 520492283 547308896 286422540 675221636 278362243 665716509 535180709 627190397 461070500 792120442 245188390 306849613 540734853 926253588 97194189 377988329 972747630 973338153 176375315 679319711 765028917 800728998 146691848 289804535 58085357 606793985 711241338 969908522 936400783 940140336 438292986 968045982 686481870 861170351 642592381 648844073 537064132 554995731 120978415 365392574 559383752 969481394 256997950 597069906 653216628 750660585 675183263 912361711 250025915 944947847 92764326 615494335 538515687 589879984 782990012 893245797 821512779 967846014 87351041 947768030 17498418 752218167 157872663 523778324 217980005 672438403 312037808 429204699 763719784 961472491 839271242 962360747 88884045 939454629 600056801 730830447 511884560 829948549 855626110 880221215 820435183 906265026 799934105 876564579 940915803 984463912 458973311 685982687 195283036 417398337 335924313 722264445 421048209 455894174 295939460 319651327 240165378 543263055 172306342 351463350 406279589 739353329 807061458 992278447 93121073 836563406 741699381 812657966 289752527 982665614 797547711 964782494 621343781 885789240 799931503 932924376 44849900 953780439 137461503 896306241 559155084 840153779 186384996 224063807 764028518 951342587 346869654 423766751 459450629 541551792 965122909 998748390 382759317 648783841 2308458 34777192 719138341 882528448 536682762 658961958 553277921 772003673 439924853 810233402 608898360 903193859 520914457 656773621 524336174 775508079 77387765 722244989 562937748 930536577 392251919 850082419 682393014 724026206 564596362 988850796 153355048 351931130 161439798 973494885 521224186 684909085 627602402 698816218 425066004 806570513 291124002 939772972 91688208 567608094 779366691 818413499 830349323 929798305 433730009 646593861 32486614 117268953 746412123 979823790 311279248 854880267 213548433 349246189 299684125 556334708 861757359 958756721 235191010 276753586 702565579 952763507 972967156 978797123 576296350 773509564 988096802 993212298 893930374 899187804 449739883 809826862 631776889 726429803 555962714 747726186 783935847 853924599 424005593 823336087 887963038 888029519 511970615 603420326 315378678 885786565 42861113 713651476 879022392 890936552 908614294 999807900 80267482 746518376 579359196 630386209 347289109 575581893 753310170 946105115 116757404 582296494 319676203 519341277 163840244 363461733 241393313 447299418 432928583 480857610 751752282 941666110 565558898 671938802 901845744 985002996 968490682 993079487 51017609 430686104 688267305 861511642 536975841 795805991 795609182 817995874 768759646 835877143 659367346 857309455 320360879 834038856 264829176 890867060 416989039 712679908 263393538 346635132 606834000 754826916 113020865 371709911 26276552 411747723 98541211 680607845 296620566 363805890 402793795 838032689 533201520 864834518 130620197 955703697 261080472 896250131 732536763 825769905 422451201 580363278 800398040 915938738 837086909 950943338 53676712 973442872 191737352 680877337 998061265 999650201 395708224 575360145 590842541 679777921 857451001 884717052 25453570 472893442 647397630 852448759 818584447 989389188 404565614 872895542 226163798 397212669 25619191 689025729 503641561 865508245 334725306 582795544 980099343 986976574 26091765 626170181 204209677 239941176 459891581 505621587 658048243 898484735 88005896 931354365 686331107 700930390 111577480 875153306 422181438 815073325 706182000 763248722 12203441 983978644 369942508 994640494 446872383 642934195 298047586 660986256 320585405 372152698 831995039 913167053 574614109 591977785 283045895 470357150 663963829 856789120 699674448 940060344 668626187 957201415 334626702 570910797 534860418 926541746 964508579 982417958 503688802 741830102 367314665 965706769 98308627 734905648 591280244 736473749 587894869 801958676 174292091 946715393 663165161 946058614 101372592 341991114 264902167 822168140 213081122 588043176 380478412 429042783 399440609 789536432 567293042 636824172 236015440 596562915 751535086 776341213 214536357 260629666 802192544 810643987 699648792 754312010 134350116 544033763 567903746 736418450 755405055 894585126 285748932 340016403 788114802 837847147 865309804 904316178 272139722 815611129 507260197 845527871 306899663 396256237 634748041 807469759 989913867 991385725 475382852 631978260 569260008 937805515 284043099 595473475 209937912 796686285 620156314 657115153 336938349 755021940 367653485 640201656 992594662 996421223 385917278 595757610 862642053 884142566 941520273 985701677 433579283 627077674 694211984 921728647 63046371 223669206 370161558 753437347 114770032 436768777 420729257 929780616 622148193 665650917 505227143 949311154 314295135 589664584 432472070 773031094 95800983 234102903 748559844 813548893 250018016 747232921 865659788 899801728 385081489 591546223 800145891 888355793 88426534 199073858 171157960 406104005 190687385 435220171 216226571 478568546 982758859 993371101 697547980 784303811 919962184 937260217 69693206 376741414 336331719 777923861 479502447 481955644 299150355 664059248 640145315 950911562 878316942 899945028 220573925 892595827 338215397 596541714 688769393 819874408 784884371 961190040 817909732 925709875 162092766 517865645 194964376 232561766 108027403 874121824 732616290 765373170 79738057 889507679 862147555 998247612 52246769 193549465 124952773 553299197 588614507 751737233 640648798 801549052 567524709 768229131 547919329 778051223 660375223 691824515 430242194 831683979 42870426 461201717 558889052 624573371 634351270 791919735 965283471 989030738 431511063 531992021 331820516 788031491 550436391 794074388 774091819 903343414 949907438 962136182 567808969 710993501 714354102 917181552 193885284 254574586 185197272 655230601 317584429 560798759 753078011 913340313 266320281 782524118 791809655 987691194 518288597 627001583 620481591 955007883 25885041 995891720 224044650 384565702 429103187 952447678 510957225 572844137 693947279 799239000 872698498 881401348 661126857 951442735 254675855 588214841 191237522 203916866 614277857 817850136 975160206 975846979 91358963 721953954 488758162 728560849 993870369 998575811 327076545 914947703 10574433 696912928 717187413 996367244 7773911 595220631 443832252 822417045 999672458 999854608 908060939 953771589 895526803 984914185 922554639 995127261 836340082 845453831 52165542 685122748 973995370 998312648 875222812 970748473 783561466 825509868 574489653 732034416 573651884 827502367 497745533 983353005 378498691 606986656 236181512 399474569 841246589 856646168 950813219 990464710 12754305 713790984 845388451 950275712 796984464 825240879 604490414 643382092 616580939 922228794 855895339 957687195 640620331 997985618 903315585 921027346 954747665 955228017 71886817 238056503 118811557 589012794 899929373 923008915 178980790 963970614 595427074 674442377 751212728 977132859 498050887 641373584 517005391 632393886 225882815 957983482 865479220 922615392 261828131 524838826 500241650 542332673 399572204 528595689 433957620 586888160 999016103 999445643 393181442 957953967 524652561 632883305 313654921 631503989 561025200 937658683 31046119 481689699 342675910 746463248 266291518 946026602 438204227 894040382 779525532 829221685 233133250 981120887 296789712 861647736 561992777 958021501 282364081 645794213 951469619 979783365 585438659 798996470 494373923 971383736 616056061 722345811 207294004 842612054 363301877 735979124 486538076 579611934 706156344 845106445 846301463 949627194 697863383 826759068 238503824 555043550 885341076 923438316 473776729 972765273 648219111 689870491 594395406 897273496 35817887 784082783 548432650 614762989 383797287 418400352 477294409 682109404 811834571 860030153 508821323 680986040 622537207 740015402 89876894 359253320 269741230 398113146 833815179 908957195 653645676 720945637 652537552 707674662 683510045 740215615 77143634 145794379 870324092 956573846 401099332 671826140 185742000 646192787 777276971 866027768 220646189 837192824 640541573 774889861 84026371 380570143 184550495 356201552 870718421 895712450 931054068 979642467 584390064 934742587 674409448 852825114 991643405 998071491 48932413 645027349 308147794 548127121 504449393 769836816 269907548 426775375 842605129 877794983 643954228 663510064 218783549 970290050 180268298 193820797 151719390 950431077 746987584 790793294 110892516 684573783 744280948 936922176 772146993 861271162 379750937 629653340 500185238 718189479 625338190 898708886 826906801 864333786 193891815 804537248 785445267 960164408 320569503 460269310 737181107 856742733 29331420 765028022 35671358 139192082 565634245 940082251 783434859 974287697 544692495 915125576 765897831 892027604 355727948 807565277 285726276 482693695 382440322 411780225 514016057 637781849 719379442 788041109 111689596 246696301 843981303 907241757 699276150 962787704 577024174 690394399 393705825 754733831 893783779 955639121 202907580 768473634 852898726 903415692 183602890 718594324 843262442 980860646 906869617 950959401 908863181 932925714 906019270 910604511 364501405 995418306 234621076 867250693 657813988 992887737 647892696 750553425 540276767 881690039 419508548 435929059 62489183 523036511 5149678 410272821 503075488 635992140 904891889 910446936 843685010 995578616 828581636 972803846 61561725 369978625 701040957 948369215 670910670 747712865 816786971 948955599 660863277 792394296 656682901 811216321 649949963 773296132 244038512 472112923 623126557 853502119 205510856 738536076 870444493 873171974 686523739 730652078 187892048 624053028 629194343 722638587 946272587 990376626 806298856 943620857 101575196 912862922 237542123 282107072 882299122 995813974 591716741 866777882 703622707 750173096 704582230 864890869 941553119 964035583 102397365 688602273 248718979 708190136 735533636 782576973 645809974 966815450 773437498 852136428 615318516 863139107 24031886 506111773 8600653 20722796 549282556 736643151 592330368 928120212 149767836 609484874 403265329 710472287 528197212 668716423 486104022 916213959 643836767 961789206 418549699 699440826 403035199 867674168 280811648 691962992 782027741 789612380 57034842 591294636 946531724 968624247 449676171 916133131 239012389 323246605 617331174 988444831 572666606 612289468 13701610 120802880 63164345 892933059 306251324 441448226 434904352 613205341 314094797 974321825 574913554 674385009 742072197 920894887 275065069 995173689 804431420 891829279 737998423 904819999 492852809 523564778 509283297 938369564 441636974 538965702 851495260 876853961 312449123 837316960 366523775 495823834 209807093 371749543 999069073 999342778 27089177 947651443 803568899 829981761 531380347 712500776 775156980 800180318 298475007 528340184 945110038 945700626 843832330 872613884 882637963 953569428 347922479 824204396 655686808 862042802 941938094 999858254 236149224 291781375 580861245 916783658 124434100 129550183 860479691 886911223 575157321 638220211 281413568 778579551 654474749 710481883 857614613 898929186 697104900 716209627 46746281 84893514 378148654 626717212 995690745 996036968 105697757 940446669 270164189 574637867 264276625 293891535 944988146 990093378 79197391 409521223 880213195 959733179 295535747 412389850 342878839 685747382 232132592 936387108 28957452 435350171 421205618 753080824 837971128 959274810 112365808 592183895 687795116 716078803 764902242 779511834 117265647 598381789 113440962 741321210 8449093 351279612 145943336 785344188 919546864 959779707 450489332 541419924 201496975 808618694 916356359 985494577 898906263 992917544 572202279 907030581 246609692 554354563 501524491 783236811 597995261 997345109 438903305 591836813 610870529 683014393 336758071 837827056 989811338 998063309 547014620 778151239 740113050 923156729 88604700 861343065 984367716 988096753 207501543 252841408 780697337 948789176 447384991 728523835 152170695 281556932 762946285 799501072 467305100 877266801 227328732 860929547 706112895 979746766 739238196 825598010 896060195 899693936 363196149 377605707 213003192 310400307 296464210 586247264 651122646 690789899 903581945 972896076 221578812 840032531 818208136 972787321 603449575 709321194 711734686 993061941 884361030 887247790 464875568 757274069 879892048 935175961 645417129 819757901 943858355 999007973 733996306 935666388 480767015 489796076 96415553 651185178 263490506 431137329 817252519 885694818 290979759 578749131 616726710 680415131 698642180 806778931 553597447 824006503 229479050 721841477 450982340 574779714 897217624 939959250 915935520 973984574 874845037 960226854 391997592 407198289 482388807 986087202 628693716 879285524 710437388 812374274 428955887 748945656 230651060 404476243 676952424 735989681 31810623 487262543 668907333 709243105 152163248 845776541 873868972 932482926 803211224 836806886 808903076 890927344 247572751 604534518 180374755 594430196 541187230 571870211 838983937 958109742 300070684 849875479 373296735 653682465 384852786 796121696 188325538 193671836 635847197 770148997 626321380 635734864 4759916 663332890 50637015 376396120 44378447 253776878 445832176 488257122 604695011 629042401 55651061 685733368 198673398 265665451 520160962 569624384 439277986 525316929 56554309 359741788 522262733 727534720 616614108 978578831 572149791 587126565 916495095 921795699 812651392 936494989 137369195 597627417 161230706 424620096 959828712 975505019 310135781 909845576 475813296 908001344 618813655 862189691 580958972 970112261 712601136 912157145 690923542 855587167 217604970 682784592 272436174 286185772 173058041 594816423 373125981 864169953 25861271 699721125 319632567 767100399 957196128 986028620 533140900 858238865 917525441 925111812 835154522 901011134 750759667 832142730 43903748 317197057 73467368 658368149 940701535 979477559 291168979 767476098 740372138 959701825 147014844 655439705 950968815 962480052 361818601 896855335 20238580 869405809 37257907 181089901 362469787 916541705 928001843 984570084 774467634 962180623 497537925 708913893 533944315 592913268 390350177 866796322 550150935 727132735 476931257 617800989 438535938 768534820 368872710 433818160 605918533 905864382 328805468 640969021 677451335 739652507 111487567 844445540 413111373 546404975 373609143 746049834 285838292 744713568 413599189 821561779 657753906 757662625 793412575 862201321 782689728 986253224 500403654 638935961 18041792 472162714 917554017 946305837 290494833 817045797 317286953 456155796 924053180 967097748 376728083 484141830 268831886 398117467 406657647 637089284 914871006 941563188 187201502 882721535 273654767 282637744 671717145 799263276 384875103 552417099 70407281 770668321 429583113 652094603 878534586 959961588 194269566 198246769 277701490 884371499 542117877 849861742 266083798 663752418 478544227 946959570 212281698 709463643 20729291 562556018 125225217 628694855 329800726 827299063 415109093 791556585 720255996 909162835 77756354 544187801 868634778 888265632 199130031 204414976 170221352 889689156 945119638 970522035 124478254 307683685 538520220 990879223 617550587 680447164 556139177 761257640 967224 754317481 433014679 546354326 810785954 849306005 839556424 922454587 322439567 706511503 148570868 908887798 247727764 576553174 329476897 342530801 950105440 973983893 742242249 745918824 873501210 916001203 786284476 863837162 54351306 641341808 273195598 556018635 441335502 685540402 644310919 780154868 720403810 883538906 170233072 528742802 827880867 883212644 901495601 935270922 362611098 711845787 958440338 961449937 826448127 895297851 804257058 977423653 974371467 999008183 831894149 882244106 726753965 932005389 90938097 750351841 949670636 990458300 915487730 970511942 839872709 893015343 608296114 979938846 900471077 903662618 469776047 784758703 400804573 799115220 262867144 896106038 614430487 657877916 647115286 752406735 513477755 784878966 454987553 601552964 615151227 771792621 899976595 952930642 526834294 920095371 31254083 540548712 388537271 896013918 620323318 656292879 625835134 876225710 594742203 661712059 943267842 963038824 72315703 540016467 276036830 361444272 458653579 829164207 994025040 996218200 671778441 897785819 104404221 578820529 830750626 834757019 709917799 930843165 643050618 924617450 416671833 904485607 556761216 736509450 825875423 826833522 382592708 498723995 642926352 901310148 199159513 773419799 826998488 925549695 176270427 546057877 875187011 939882486 736125906 769169314 915354704 960270452 444126360 951764536 282498861 636228908 429797068 476356223 680534826 784756874 157810084 420280122 63950339 822449860 888518673 888546081 145464544 317816415 301470474 771915035 551168770 572987067 237442032 505987896 242522655 302562626 746588648 889030642 746908753 963973698 156755587 780906626 468785586 509824449 134800426 418705626 210652275 677945972 889127575 916011421 874115143 994663559 575174336 861732932 262673758 645774830 342677309 971545302 103126813 778966504 176256121 345027471 836835309 940244006 761144476 777368077 10535273 435314305 387922128 625781877 604510522 741647874 604339082 975212392 491503619 975856504 958212871 976916100 792432432 956378864 88245366 97750886 54410240 125888675 787654809 890282086 253359282 563677421 592975198 819599460 822559535 885368425 624448989 782680597 53643152 377650542 21202545 865043522 871971656 888489276 945746791 968345712 496514432 856013580 498354076 719997280 362096667 588327297 744850578 983182216 714674023 986018372 802600540 904317500 602296535 631044565 446847982 881041891 819414357 819928815 791890131 908368294 552059844 743796864 578858186 679457132 889869115 973046860 759558606 800028994 452093115 980690331 897128186 949705430 535018940 711644003 54222033 250359775 632165291 863526280 343570198 516475719 443620082 697327988 606895474 701096902 417697877 495251893 809505170 898574562 325741425 642467835 866769506 981589878 687840325 726966241 266502949 498305581 43239876 960096400 562741183 823997088 826154750 840863253 520992739 795250434 839754684 944590016 398825052 946766534 644625099 932390493 891044915 928471254 307178426 780921185 668004740 720405549 615980947 674685680 682676115 887078969 623545180 708920048 587672590 852436455 258331457 781291481 840383386 854900725 216733756 968303167 639267923 947085093 76298681 653702474 636171717 967357977 76433929 229128172 733100450 998426732 375340474 592929675 328310797 560310973 189311644 662807827 488371770 491095041 396864222 456667958 137258734 564721951 288836160 390681574 60559308 650744328 419322458 627971629 306826263 373041100 159005354 797136808 963231973 972568468 3764140 189246831 484671309 504592072 23806931 93754379 926440377 985256694 275533393 978989201 931921716 935037867 321946336 423692727 890646310 941372471 466980630 720425248 266270648 932277016 374082748 457728769 931361500 997777263 424545280 900343700 249720872 366579070 774704502 833600538 865347904 880709629 446056476 749329032 891461668 897941962 724369798 844046710 539321959 857232519 10684292 590913381 417469202 763931350 981787907 999496824 555940052 846244914 296050639 301896179 603298117 843806994 710565495 747670642 847905679 956638705 333806392 783593994 813788226 868127773 677862302 774677459 270412248 503969521 612545059 967426695 559846973 835387938 878143715 982276942 820176882 994208795 551411161 887600211 901166863 943928143 85644961 420318725 457986048 666295241 723856101 879405610 5296248 838771282 381884788 987334301 445084941 724134159 2023432 679579118 793142394 938689107 365522840 367172316 953620319 978928476 344661206 953373521 514705962 859265146 352912323 728170661 552000518 762769227 939113525 942179868 43362611 965417069 515817482 563861472 965201503 999228611 312636262 970395176 639633155 995941597 314904258 377104682 19080413 141283491 549919501 597358090 209350323 279427545 186672054 981103086 769100852 915520466 136107999 986507721 637732549 830806351 282017525 575621919 244794180 335117515 678310759 938632598 809549133 930614804 478094995 919685399 591105204 991119258 288911958 380283887 903798519 913767313 110407221 167168607 466493059 988994109 905408877 935006599 204320250 425987153 826347041 841380556 148784962 391837991 436499373 810312502 892259292 893046880 159981026 623193057 939164913 987673222 723478046 928576142 61425821 246726266 182219773 495417696 86777454 947004886 839577461 900449053 500153834 511985632 483701751 530833666 589384236 718454249 656747626 706053333 670369118 787681712 371767999 378189171 749445492 786165297 393977662 734430308 628576871 803412054 397300999 677440580 661041383 751444639 957403667 995857878 43437334 642527516 443442437 627995162 420260257 824613752 720534843 747068493 985824994 997125969 732472513 974797494 437478124 990563039 586436272 764553282 715020825 899702691 776001421 835393030 878505753 891682134 665980034 991321811 662602107 731769153 79298015 111449467 560670520 646148700 702387440 836780922 506908337 759002141 995156630 996965172 702148214 786375880 189712160 333960795 501233454 850169300 522354548 642033550 45876974 689491082 330870582 890102032 370636014 552067943 561046867 740291036 659384436 994289297 739811392 752988274 821916806 914177990 784995988 829577679 916971873 933153422 278385233 478311663 342830388 633055346 476717727 683894055 96053750 505920354 666965948 953775778 82380684 426565368 955111517 979605157 654524613 804554100 79982428 148503964 682983624 688231831 16508472 78866925 282156552 938123775 276279064 833130143 575215004 843735684 458369081 618221159 444998617 569720432 399846629 743014035 911047903 953720819 715504447 975618242 592119928 746999392 233212634 987967495 189567613 512447448 139425371 207149905 827294852 890911557 228700452 360970456 619352819 737093131 918453501 939154084 505421562 805481515 990261681 999433351 905769202 932292648 502371212 772378235 679237383 988250732 806553711 821062239 132698084 479558377 950417167 972777807 86824796 210483415 629703964 717653790 830805864 965274426 667223418 705063332 452109791 596310012 916726858 946244226 31542921 785482943 664971895 898585867 146767661 865024200 615212033 803630866 997328126 999005898 433078335 483394902 671252144 826876496 607975312 978196511 717455103 980260402 719489924 932690756 424782332 740537649 139882385 586164462 415044384 482241259 853330513 945543857 95331737 927943515 982805370 998149247 489736894 557352816 203398176 631284332 603508660 865711081 485222533 711278618 75736526 962358123 802307596 938811883 846531917 998288993 56975797 777147857 385948775 602803563 728168514 814864134 356724192 413147632 438755074 885894032 991516049 996108862 491629148 898074022 904774073 924910624 176499308 317308469 970896428 979036213 438883283 867160169 147467068 792274683 880428937 910492987 726985519 842919644 410592053 678186825 872925178 951603514 611737859 894710487 659323838 980988960 336832529 672612455 963014308 989849368 768866692 811319681 822562744 859996271 780884783 801919518 981614852 997131930 245590876 314290486 450302361 848147768 367934074 860209892 254332871 732159032 19016245 899807994 715572116 855779185 922999874 948712576 608530243 656911504 827234255 938656535 581061243 807799204 702555919 713492806 423991662 500621602 800673078 917562378 329040319 955436111 708287136 937633913 781964897 903650365 336475775 696290658 732665490 739783331 668527905 791505153 738941519 806853062 536345179 722058439 419811184 737776679 718173874 849485907 697985555 819642604 958445644 992147164 750266530 818734534 271370865 517304289 612522353 620375744 455761845 530271030 961120653 985382868 709254285 974476415 733971196 901291459 210877666 572116108 620412642 933161918 850861808 975255029 813028689 832666346 964814120 972653770 896094142 991706054 736041528 965797289 375788854 592166197 806784796 852819478 232353215 637496244 187901979 551658282 573086270 605304093 272868494 987630540 772824129 848803143 405835257 853633662 126706505 146487106 15725690 788043162 835223745 946105519 835156585 873951277 568421350 681155000 515682822 740194546 4464050 197009733 224875259 357073518 586268076 974539872 875659425 965455896 217500258 292019600 341416661 384312345 810872354 856610531 324524862 343033886 590844306 808161019 245084987 735897731 90271879 260582317 553835856 792749936 777848018 965958222 641013372 994725802 918160557 944253026 986121811 993882395 946983124 973897304 364815473 841314591 123943737 503935630 297881 796852545 569547706 759882580 937685338 961791022 142335870 523551884 132649702 392803416 949857006 979278246 290824982 659694855 665947299 727051977 145766660 548039799 150130196 519334301 878306747 967657656 551429256 941577951 248605895 875298665 434771425 735424146 482836038 914608961 976093808 995337047 485955974 732984346 663406163 919599020 100353610 988803214 267680980 925876247 179544915 608009140 936152279 936766113 376472990 544971457 365044159 561483947 561584402 618688641 482139888 557052766 660841476 927056329 843334685 887483010 687272573 823816779 145024242 708670157 402464 904758534 721127256 955824058 747160707 900176488 454674295 918800689 556669178 964800671 492548663 717082171 383362324 926887289 482594198 865726893 443206270 671463447 439472356 709213607 139654909 901538374 492216620 631239349 757725883 827659405 766970660 895481205 976487961 985879593 740615023 932032709 846633776 954600155 35465812 197523614 289818809 622451660 626454734 902382695 532703455 568757000 144839630 214880845 910616153 933819019 936683410 999130727 844540055 863252140 344020377 474847317 331834994 528649729 457403087 636975152 155045277 715179675 201948291 720162365 294233775 877351714 211878364 946133420 264591157 551469314 129245660 340260067 756083516 775666410 253703427 487863485 882549726 994308125 672004449 938310644 440291389 963064714 215033864 641195236 176726879 702921383 621797625 679074143 389458304 701795520 436437588 966697968 58647896 588706313 454237210 915849438 523893639 663662817 835251940 889706667 815306920 867144753 449664126 537862916 804617030 943845080 23421918 562517516 134583124 517555516 234092408 526748405 154726065 911548871 307895967 690755139 907356958 957342975 259902819 638408305 990054541 992341555 592855263 973450434 851058091 851291323 213047009 936276901 54171845 493148422 748255106 917510038 132352984 203208860 387583166 627634247 756433081 946383274 437251650 669450976 507997516 555869383 225422347 684922621 166814855 314543350 975382387 983485873 721501746 771521425 821702578 944737752 124077538 826146097 631893140 855052645 621136294 765125813 860039529 944910527 401917919 665874265 217067966 311927399 487526365 813916492 269990678 996437419 217443676 752670469 468343261 646271117 252721758 592573601 995866817 997295326 497421638 584513399 12351217 400282721 827688585 971786436 81699541 460932859 542473547 667480744 780865230 966606623 204965368 418395521 708396538 999435508 850112349 895512495 662800595 956127809 433822635 739721013 999265543 999880893 904148258 953881379 503315954 829505757 755849702 991539438 880271905 957627827 988657472 994377193 700859024 945738971 988419015 990630119 962414381 998482900 595142420 870658905 970481278 998204148 998085815 999650969 829147185 944013068 235603975 360497866 972803782 977076192 624251505 638423318 623377153 639913147 446649222 801635100 216560168 590505356 875640257 933685269 11770699 959784578 944021443 974746854 86987019 225998022 102208941 481504690 787216309 812312052 58347822 228132159 720640614 777462370 391484445 462245943 447906887 889631454 195610102 667402213 69974514 315125204 622737539 925698750 811126455 852560650 263585371 993243023 260370956 806661817 31836362 557175147 421563132 704240866 654087831 790501132 367277318 410688607 173912529 541379640 962620609 995343977 150345730 973370411 678998171 745028836 321982187 892978869 364360718 776972332 219662640 955492780 59305129 534918805 407064810 513435959 639571165 862467658 581438801 933885487 850791424 983313139 367621886 411305634 152912929 388741131 80996788 527388066 881572206 952803928 672491328 694601539 570758940 930656632 70604342 454879764 134249038 576317509 8266033 64522474 374997416 437564696 930720301 992570426 643436168 842620735 402463228 517615873 786175256 854301412 31849348 150789970 669952261 951453780 249503570 409287044 969242036 996720152 95385639 457408995 69183251 944178392 986477980 987598784 503628645 823536530 615432139 697299575 156130244 843792927 629889227 636880083 889983032 893386595 378226964 791137725 495551193 520568747 642521506 789302914 676788615 726383945 665592480 778397763 69079551 713045053 601271565 870751304 40271709 273793571 424981872 868214445 920081309 928298334 336087736 753112079 432200480 909135198 571684412 603304142 652327274 817282134 911059370 981496398 380843911 804343019 906777266 940958521 102399526 786159520 951276327 959409775 205368750 279924354 168017401 595811342 949485398 949949500 174820762 725697275 367103078 436590598 939290669 940764119 807576887 993368728 839506293 923455939 509306472 657580391 387323247 863969812 529508499 933341657 642495096 745599276 133313172 665807975 826092055 953369105 314088642 783287539 721632840 950032940 984325807 990857882 443533639 772576066 704040195 878709953 284160834 827958617 155565160 773847868 130036436 462270147 989719209 995166233 130098558 586488596 516356472 637095531 116963194 512390491 103328510 526022290 762423891 952881509 597310609 619438873 185431892 460237620 32845941 466897448 127495525 627862704 254204005 626646408 332000843 512473967 247288342 940101548 379126847 459357852 824650463 831934412 480891055 949904132 129646397 483968288 976487093 995834834 282014259 306734781 220377264 491846663 693331084 851807717 868123111 970472496 576864904 821151217 841939635 955168230 711966084 942579002 76856006 972903597 297738448 766736728 49536410 229183436 438816945 702079514 615133894 917740190 729303827 973091024 49252966 122640872 454340124 679880748 257715834 994716012 10984688 336194561 785354180 884454786 466190146 911150534 995959817 998925282 725044503 966203441 171655765 877198564 141987384 581259845 946685599 980789297 876848986 984152212 314340577 316233002 278344421 564177200 628195679 963017642 331872509 588590911 350697954 595495649 14221831 693597346 912241918 914482723 388773440 589904680 802121808 830445240 496346304 720421877 348291648 414070488 623089042 675269951 13768359 162568406 31899216 958354288 608097975 737735123 616538107 952754137 749929797 814589732 960825035 971912118 878604395 878740434 490156855 740409308 267647328 501089078 700562512 863938518 65396266 80641186 236994977 775795692 73879682 854977862 373299735 437159561 758269194 795619614 602955987 993273602 686762921 756934153 326821274 593946072 861351127 973575398 624240614 964030184 968233317 998902801 252723887 371514332 901055922 956807787 623127057 720362180 517685613 768361458 679178693 687868995 532649945 919327585 261219426 495547976 530383587 682210099 990236210 991874457 844114581 905867964 781890929 932763473 767020982 851757135 500787140 532557909 870369166 879626929 392326119 883262495 960138745 993474770 279126 850828030 421799758 752716809 362486780 615407453 274537452 715950889 796908007 882328384 595306907 975094323 924959517 994318794 752806023 827332304 586657807 825120064 581182498 830169963 730513944 890950775 660375709 662211595 527578190 837460812 217193240 965756272 417506602 856634671 594196712 829442502 990664543 995282509 612993481 720487763 638155202 734918857 947698368 991015798 264681844 881729523 417616596 503774492 556592880 850752943 961498591 987768177 925152385 965679189 649160228 651443732 123836834 599189255 414526307 766504664 676529619 692904122 481325910 912511514 668848180 969645971 943592379 973223982 575054580 781979607 248763113 499893089 120512930 294272796 234971848 433461966 528089300 605874844 829094416 991049642 840946440 874831739 590456095 673096839 634170910 760864982 985712438 998270208 982085017 984458837 960084101 976978237 290715160 597307645 898609698 922225681 400465357 800616689 712577855 918798432 69268486 241030973 402914768 685598103 4156713 429531897 469316863 675480287 499523957 866606325 15622247 813289008 189212880 457469887 471085330 997763215 956084936 996980189 474007168 972007321 620030353 933267233 773208822 777569969 723130075 858810486 196020848 779757639 483545191 576237886 710404574 824210470 448229891 824728640 631672029 999858786 353168356 846865049 524009393 853571001 867507124 994183815 209417057 229872679 307452988 995584586 998565364 998577506 421126647 924489277 229367964 417434689 214010645 710523793 202730326 749693366 886266293 982973559 627436119 631724650 813099025 973395938 419488318 618292441 758056346 866773377 636086035 759603868 591262682 785896020 989410389 995846273 109475692 204087060 401211042 773819550 99103793 173175927 193487592 542236323 176402302 686905412 298066606 647228653 699394041 821985070 739666732 803429406 125758746 850255041 465527893 853302346 750992447 790818125 513362456 763096425 732335204 813575270 556506739 918715270 385005020 809547711 334734397 382383535 86979442 942875794 624907622 808353517 214630251 273311165 514709575 616099624 814653070 835081993 716855809 749981998 720184755 819852308 528395418 734928430 549088780 754121442 148712606 920065913 764235590 898531629 218333376 492218195 799419457 813842476 409565402 577415425 631441493 969239159 681288951 797050455 998113926 998400998 708541304 769854533 508202920 917315907 194925126 486962439 853963028 948348022 138569174 687739381 288267557 291906818 904965857 914236691 778566760 989489519 828995751 909697186 217586003 903841318 999437393 999790679 800982317 986146607 773976928 968665182 328956098 642184107 527285530 720371371 506209340 676728847 547357768 973429761 503091086 932270745 53713257 211117181 385910553 805880413 971945365 993699855 814536175 993230089 531616866 660453836 210223277 895755601 35448247 315272936 738025929 765663489 177643989 745815491 151298763 536204013 764623185 946994457 248853937 968044944 127990626 701023033 634155420 927142812 392361110 839785342 865947529 973846362 56711344 100335246 533223850 682623197 412472384 995298650 155858603 867785133 730270700 743779080 960979659 983299027 247781895 319505335 637784682 667048393 659203322 889744845 163687081 761376362 241588474 915393008 440173411 837234251 989929660 999493360 552367361 778286243 667498698 752116288 339144554 450350829 528519793 706769355 7946556 172116722 898882016 905815942 858636656 925377546 616116889 663756937 502885289 581627683 366266630 513037463 181090131 697428170 334644960 591079072 417820844 977392555 56436934 212731598 501693488 821776290 528243308 877376067 858574402 952246302 688908821 947515271 785044660 905371311 92282277 712455134 196524309 775872026 837423600 973602142 888473146 890796049 824282925 935468228 99184376 364515234 297941706 886896303 652882911 967642223 438692688 809317731 904812926 939112168 726942564 804336972 570226923 964116608 631464906 771484688 310260252 571724270 329527894 763749020 65861668 196405028 839849743 997184404 772206683 798314437 559002420 615267518 501763657 537061366 882122850 990761004 187270313 499884540 119063435 694576203 937066049 963600453 487793962 997433046 996809597 999581637 69411283 546991638 26219594 781678568 851570788 959008667 834071051 860674822 260394382 456179732 710351259 960525504 897260100 969681614 302193230 715850457 6106880 148054237 312539644 893412914 140345088 865517621 600174314 856957287 542592844 776788446 730100718 805980580 397707554 532861735 416248561 907212202 773758962 842857105 762248554 859996713 764502854 810745402 887536638 989619905 923026311 932239839 225480692 508856816 87042327 568319690 263345241 272540745 170873131 381161868 668471882 793509244 351084548 373692490 856066481 899805507 559077128 684159522 952672113 965873682 856770281 873891145 627890715 676623396 965618567 990703167 667514179 941527285 249573528 704108152 359781571 469434026 581768283 804505103 139659892 984631113 867088879 994087796 760246748 808929318 746567093 769147072 81442002 358551187 763120059 909027134 939913133 947721213 6331623 513114706 557064594 606712866 974744460 987316401 435633268 921085075 673802065 859806964 447793458 908720852 844903748 945161089 962938256 976783158 173009689 253854823 843141961 958462945 296436227 921610848 772840893 909783782 634860951 999236116 81668795 171921028 672873633 961895430 814439370 953697849 738910196 960481460 137671978 599326624 753466746 754655904 681611123 834148083 28456292 428001170 866004847 976977506 870837898 939359427 876867144 911507304 470301924 772629164 549905226 582609122 11613695 595982755 962129731 979961245 200849980 379610402 819095808 930523320 38624569 366085249 225374581 407895155 987654236 992594567 679697361 924832834 381916481 421641151 683777461 884584393 780460837 843280266 780331082 885592293 611203849 935937770 336846991 658386554 951869335 999225087 396390510 670804319 798030791 983437694 530331653 726405717 776866048 962228988 307946329 701745725 193481301 710654722 229992862 782749145 803780427 883012697 649308876 878486408 553836263 902625116 68839054 795055793 486310036 982533449 513756130 979610279 526563759 574582525 188495790 769510895 514028468 698368284 795059908 967243565 379500585 774485007 501033506 948035620 869979413 920466149 109618660 236037008 719621135 746808855 545130463 930943125 386616260 580323455 848719370 858708492 167900569 388278779 153345978 817034311 346700240 838802292 108987589 377211528 204042842 979088065 590162358 765638844 286283675 618527552 286882942 287265086 4847088 181035974 731341815 806166769 74952714 956362486 665615733 952590355 108580522 243036240 97088568 194561173 470198153 857958340 457147495 884691306 825497232 849739362 125909502 371919924 948038284 953704773 960441692 980551767 583547636 633782225 504497847 822051869 247870043 489333580 131333034 332285159 162052080 674890377 419934218 997449793 379016847 729853066 901528363 911709121 497562980 596492028 947255971 957038697 271520979 956115842 471613678 725461842 890450464 987630224 684935182 863997034 301659274 336366577 51340780 605443090 885409016 980732849 229152225 571825218 664700888 814706696 11343267 719684138 900889710 949081531 677021439 877839261 238850107 939366020 796129155 889447163 248944857 650793784 785522220 925475298 324009232 747490126 511364745 537886183 344726527 822617858 148414318 458892905 856415289 965877719 917673356 955138998 246227851 920749276 981841887 990525894 748379902 866604891 232989275 907081808 233520253 560068140 320758173 561951074 11275751 265895607 590271553 695885698 517285292 960717640 423521685 709389642 821536776 868575770 466862878 848607999 241295418 396859426 818329457 870161404 223855365 702697348 817409648 949342974 707265606 821267348 342678912 843498393 36128301 764404638 267521354 369617455 868014802 929906720 911674689 989518743 283790715 942200307 726803757 905638636 851101130 975524311 785583148 945607354 159383249 681658856 779687339 977440657 965058422 996970898 768033449 788114404 281413698 638544767 728597454 838569975 76771853 91993708 589436039 953074225 710483415 837736707 8280613 921417835 526693327 699901971 506456398 532150319 826596000 922594933 192326189 341178537 215295985 960707376 896806433 957237559 970121656 971999753 313301036 669308915 133280566 179372209 660278391 871449549 258198069 263675622 274254504 823046697 669504057 908811649 724363003 798019896 754514143 978272871 39520852 937249977 119409221 192400476 357212223 723584826 690829211 712224731 11047052 208570956 939234984 999143058 928965548 939664438 652807117 976594111 787424033 994552072 482561948 482658678 68688282 565705224 242858100 646133618 331066946 997642346 40212829 628060638 303049154 658969439 293625127 803904964 267971857 396233986 808315596 839997915 689233063 953497307 575852792 902040704 640202308 868929234 248297700 943796445 215161609 981039299 981238346 986639174 784943555 843134969 76100639 893963096 434143696 646086640 661018675 842566947 15775946 886402787 108511139 251577003 976557344 977095458 636704582 879329963 69973872 647332707 606896801 712461041 111427387 222922079 45206466 576950111 458824875 604017679 569432069 758121919 733579218 904869550 894080468 918983507 264593922 352357966 585373077 716255141 126659801 850024991 447729549 661419354 481795838 646411264 965031702 971513160 62601181 773338249 299947451 743519343 492797554 818080081 130243847 372373560 752044001 889685995 69518043 110597568 281197757 767954986 854748752 927193749 482010506 742475369 459438736 663741036 865463214 942101191 339512286 434116156 800147820 978851330 941875680 973158946 507795109 742473913 236467177 808383217 926367065 984724254 268115353 555273378 529225866 886744429 830881517 883510589 640764424 727961752 568924703 690330106 557025345 631389840 339462340 852061079 852199461 987540327 820102775 950519162 846441702 858815945 209401300 277531250 171009541 918428174 775227689 972920063 126735308 308346045 900192503 918230391 647124623 991370350 343781645 823956246 773806765 816477408 334566958 613895798 976886948 984410433 925091026 958560076 592950403 743229730 943047163 965950389 76035872 365343855 981929458 995780475 333133498 453429535 628397968 987684121 524188094 647593153 931861055 950630449 776842908 934384233 649205658 807840754 615110354 747214711 120072689 336767444 237842317 631096692 989273372 991789866 62143231 382628803 980831973 997697386 706918545 775590042 283178524 299832211 585907964 770317493 959259795 963897640 819156398 966458495 234162453 897126548 84431459 575902840 929049458 933716915 879431693 908629663 182070597 726311490 337379435 377764453 359257122 657715428 332524317 840613791 366549449 750145571 789244044 996846645 71673481 137844600 325190372 431678705 512843699 718504632 388497482 638984946 745768337 973590277 370477539 490163826 8007925 506541599 688196463 980671273 471374793 622294240 899181456 967662895 912135090 943107595 240589849 836221597 244160737 769388801 968305479 993407702 371067587 637887416 197749454 886250749 572396469 880512650 810635552 878344390 307747396 469581486 952896415 977086437 485534942 606654433 522763283 546522710 574575450 836513030 56040422 744464902 313470130 600476161 600274741 791779429 297694129 846574517 220316307 741077689 510618267 619942403 2587886 175421149 664219822 696249134 241710372 873360821 853852041 912198216 906208671 952746588 188984575 574906243 136059082 778306894 634557147 748157331 874142995 950222074 351720598 588829724 691658490 725525305 869988920 913006009 886516291 998932427 520086657 719412908 303718070 777963800 989729917 990017857 865616916 913708067 989057108 990149632 157814578 919527696 433937320 699633599 429596091 753961346 876600730 938286897 386536974 559343856 235355296 320279764 630343835 728009176 795163753 932038067 703172441 749489387 345379168 599628222 363963633 598052360 780937169 828256035 96161609 696361694 404414373 511752193 858508872 969283136 380573072 761990619 400036206 618236515 863837619 992629229 28913147 30334576 634223360 725652109 992120493 998789411 741443233 945534662 535644531 834723996 119202985 745353676 88913430 521884305 653051005 775860130 837210064 845258547 811956011 815586103 953583113 956601246 828133141 887000187 39918794 518161795 799154235 983368946 538335654 906471847 61711599 997451489 689070033 966696565 970849902 994628650 400232994 801967570 280007530 466304883 632924919 665237833 403924891 547129671 494408917 996855072 277623083 696931968 865504769 911539416 796437457 872927272 946087758 991788594 297744584 354670012 383825909 661996040 756351946 996011666 940013511 987140705 635478305 993862676 471070156 950483042 161957116 437624565 251701998 347381818 244910817 368938315 609879675 647770098 223015726 360030507 599475058 906101540 325238486 626030386 56978656 91012415 721292002 851787893 81556773 965286749 195582751 612823236 838874357 881167770 895218481 952342610 236846013 572703223 729443302 950844032 83778970 643619181 87308577 205902563 501955701 793930550 926164862 945986679 608854808 918879392 774120331 863189665 726917821 888131301 544353758 843124680 995441561 999660411 770892843 864000644 331405722 570524810 675112408 904965377 925449654 978817544 377920381 968058350 470598214 652724354 173617550 236932814 566619729 781851810 651157790 677551587 725219398 913732578 363515568 698593043 617377095 694645645 870319245 986872234 287721107 387817178 668426061 699724828 960587818 967548484 563149758 837958676 910624690 920074723 753414287 990813994 305476072 780336672 87387806 391130007 511290537 548408271 274983361 353384080 881588296 937154929 159062793 737355219 457994959 840932812 673306907 942212392 508061724 932407576 690439356 782456521 819116379 820056181 788780035 939318264 456532663 829641441 265291976 854384044 375529974 933334889 60408823 108439482 355501791 927094995 537225987 979186701 853005512 990905289 402481227 971663085 832038638 947640235 383549360 957253548 516076909 617105831 843804751 889084723 274849746 805409132 513472304 653992822 478926995 858966556 319262094 926543764 629171113 663757799 511739956 817238899 746504488 948785648 671063146 690186331 665014764 753044362 367979604 986560783 606357916 791949337 379052396 759907379 473058650 480030268 290643785 446239512 687129178 813122429 402928354 509744137 809055194 860083661 48189851 64844141 870217529 989532277 607509529 674632200 51994525 747716323 985032517 994096306 13180083 23748016 594661311 612080693 919953621 965222125 364129757 397895500 748432653 782098187 461074613 523423097 806147484 819454178 434394313 862515306 829472390 938529187 291480878 988385203 370719971 488964946 807193889 850081001 139072283 170644553 690374058 697369154 927582908 930610914 209164485 488022656 986571780 998310083 105533164 876052610 906541447 959725909 799123897 997325501 96429522 980992719 849291136 912949963 11960483 492603144 67707307 698047593 848609445 866748108 623318852 790632907 917636562 921638319 872296578 884532536 433695733 925387184 722263834 883205278 447849884 883558258 598347687 735431711 295230582 357599202 305140499 992448035 350076610 949022484 61406248 122322200 644869116 779004752 241109481 929450151 677232004 960871347 85050029 870519428 511482301 761838192 650405442 752661717 545529950 924721071 679013611 806063295 398285868 817076444 498180720 577120239 1871578 832337100 889524560 899421083 923634198 979090558 715632402 858614054 349222638 668877498 407052499 670386553 803162157 925432942 39150362 413023603 752767926 942320650 259018524 739902417 906832452 926081834 501513030 802118450 535618501 977710143 85597269 498795005 268656833 516636941 741645840 854552603 503542568 936339437 77236958 80067846 978846475 991291114 852679155 856136824 61819104 312749848 544164354 742763198 618513355 835420003 50650320 240682941 682264957 857290828 615887136 882266153 385919019 790067173 170299672 727222843 215401954 687004954 647155031 910498992 907957497 967232968 921577030 940778592 690271750 812230955 404262963 646348918 620345188 641315976 924528086 926683377 288072733 438099105 289359192 584062835 26382878 53092255 150270848 624415133 396638201 826850126 583432990 950427530 283533271 702172232 964651407 994221538 644297449 848473852 404925696 628796774 623336860 976969777 283794409 345690483 134788230 502412248 606878071 896826549 719342634 949691948 100626756 732115691 40499535 390632817 990488317 990495223 598554528 930858224 793691148 817797189 308779115 310866388 77441227 933544174 100137144 619322245 577000745 746652654 290798602 554795273 608921531 718776076 149254537 861381235 514637832 598230164 383097649 614069814 330122639 718504462 967017278 986774006 48613952 187502796 840706994 980414007 3681727 876045937 436006730 536858952 513207848 944745141 330930913 406130456 950834549 973596182 620768535 933311533 133546799 786191078 918214262 939433335 840992932 980289571 281658385 823186153 895081839 972718513 50768894 208720939 597209848 906666508 869562735 977945479 174834639 785650367 533830002 882828880 99698419 193088189 200462506 568233604 284723958 829575903 319897027 396011861 686435793 856628516 681918640 893433557 259743626 675461461 270172272 334576007 208313975 304505687 174991489 356240677 910621746 972168029 792490257 994123482 401422565 829371333 975938027 995686868 992700870 993801800 233886694 295710485 346170135 624135836 766681379 841554174 945335104 951112598 832720135 909028639 303514484 616232225 465374442 890213493 758705664 869658627 851002939 977990100 531041582 699649554 27645438 654723164 401221228 556947060 447312320 858587270 81053304 792921764 684272358 720108434 343325075 367408972 846759315 945689518 561566784 659016830 582899038 668059326 509560531 897432207 169413417 406494329 291899755 571379532 339304374 943598011 299060241 754467599 152716914 170404041 159559820 729519722 878391275 936654895 118761445 466352985 900338214 996779495 865087160 914635148 422012233 432657141 587357 691712473 625213530 778713232 415234054 582882915 748847164 941288723 119440882 781832423 655206591 816902459 571237223 773471163 243887058 896957576 163643460 423882429 294971435 848758177 772114785 939567034 310976518 708834383 399194053 770139128 382384035 464496261 486409864 520314538 723929674 835427665 352977038 899098860 780394950 867611451 597060637 804200238 166768868 646590359 23805215 936955691 882987506 992618722 901811871 910899469 117022647 492077935 306848405 863503940 629668394 785848229 924375383 991421011 216430391 339667050 628277261 654983472 829440539 875867613 76991117 752181671 976130923 981983533 650209953 748306403 946610150 970723448 699443873 953567340 466734299 878250475 110702425 377404656 614768996 632697985 928976729 987455411 968936050 976385723 414420956 638682157 633027960 803765156 490561042 794052614 18285611 416084789 708243740 790211080 599732299 955915066 66182962 635868309 834798908 970093909 692208974 715976745 596375834 625757944 752035087 853059792 502025981 727238188 241604419 375890776 619495525 746486796 148075990 244975869 845367007 995868193 666116019 797822629 397954603 816498638 460655665 789129012 23245658 275528951 808979914 973807806 359606034 582215672 527163085 968750665 322941347 381934282 452524059 724717507 27298067 298823892 92568411 173681074 978783202 996341003 753352891 843986446 179363823 876223627 46769536 366479831 888067145 915315347 719424996 971099518 90048494 837214425 601683366 878388347 330117703 816605117 193786517 504903795 977452059 980313522 24437553 717189327 74806501 664075881 434006089 622511833 998833965 998921790 412207863 499286099 612484838 943439147 347449103 540454407 621802888 707888961 468788966 544835633 799586308 848172330 870905126 888235581 15725616 302978847 661411410 821524499 504063663 559613144 138721037 173106502 776347036 839538110 334004054 754136612 324271900 701575232 589085457 906975381 37436799 902982272 352488002 363523906 689803849 915488924 26365785 726547472 677174136 803016949 13456320 573331307 718135225 911550241 720678066 888026787 953526449 991389825 776163334 930041533 966595245 974773284 99018665 771193330 306810520 343766364 460656571 618120294 502531196 973975593 134324252 778073985 887335436 896559528 234121867 273270123 596215184 943484176 869752620 955900742 4661403 627983323 358677427 608731949 681229096 936189774 403799141 444964973 334658279 924147096 734745727 914337149 669903942 847581522 955485146 968915488 557429120 632588236 662219298 944259742 839096820 885833020 925515429 989285568 527616862 944560920 937811644 949080427 402292691 494320611 13114898 592337646 954054318 968224163 466675457 771106097 248864551 480648712 916279949 945653046 139875780 535673441 69659105 563833343 681796522 740772719 229056659 234151586 495739681 722644060 351627389 645043175 844258542 880833725 43292410 904742725 984210752 996314564 522840052 831750259 114656776 636779346 227509576 698598370 213209393 428341437 528210568 562746932 827695505 950549986 728064075 987623282 554681215 921450562 156855366 729553547 173638235 496448409 658039387 825789255 255252193 319324182 831802485 994953562 128175930 791250056 906260677 959433633 376969221 630690166 135512020 221183668 389346136 987500989 658608153 883840475 411419939 559384005 593881400 907601260 132719973 595350156 835235974 902423641 72376973 476515572 493556898 924897703 408180809 837620827 223402097 465493569 756847146 852022758 414655484 593103309 235025913 486874059 242074091 545277702 919568448 999592275 515682297 584045373 39295895 452668808 294800581 393877365 79030180 757088970 71837007 229602414 965003643 978413242 995065025 998383677 444846323 847300906 395756783 895648279 983751927 984717116 548977725 982369052 312717889 845563720 905106212 951239047 16314520 337976568 105442937 473018584 96684112 378965925 116684691 989709380 76136785 213211439 933773895 953081697 407221054 576974999 151129070 760515136 491726577 911253602 533197260 811644253 808517012 879198417 222090084 297950238 371578270 381677333 304016258 476147318 686279138 697141963 371865071 798205743 38199764 306049671 86488543 564420164 712302351 967603001 592461004 970660266 908176185 976789227 990867787 994601569 534275917 869278050 977181429 979400786 19320595 286483989 485335822 789272580 960335360 987974869 556515800 623047485 521737573 866829455 602523051 990660309 402625131 560104834 331677239 918190966 881661478 912021585 462255810 728237293 704828649 757375142 681479641 710503509 926858376 935589885 592516223 631812613 24139219 639448879 951268520 993662725 539294187 657160533 203529291 310119590 426616067 550589335 842731811 970520875 176537225 539518467 989912104 994090101 480520468 662226259 14275745 745561371 238910957 471048799 307211763 534947356 16315182 936342752 376517565 807080757 458447937 571758458 506322024 751053059 946810382 987452300 680135616 834028639 146226541 954676277 292956678 586306758 967921002 974840482 487177377 563093104 874917185 995991673 132027101 879382683 918890178 964466032 350341675 873437739 269441508 480370392 916618211 934936613 358008236 901337472 2439296 339156799 255295057 735732667 188958310 438356725 715338633 908166385 434453412 764663676 801915666 838540753 143838626 528130696 26099320 325122772 89052810 537648210 873618337 936489869 172411074 511027326 877738347 901187157 479112150 739942353 663645875 728960019 251099397 913368340 685087357 944345589 929946810 942662224 855124888 939796750 469887416 819027770 240568620 412205287 425524342 858987289 20443922 124760989 254405942 790834306 245400994 733660806 56748062 670300540 80563772 452468165 478915541 635570187 23116728 81435662 746038451 988478804 216018695 393639004 517344617 794461117 829244359 845566142 10225441 730627733 777667883 967961013 930479316 968323257 526465936 542490921 570102197 854920017 713443579 855975146 49364815 159122301 833120066 873485165 856305189 991790598 451440399 477847680 514112251 763943917 705514725 989256345 995077010 995102116 848972242 983193400 803105594 898870990 482152840 576707477 542985044 821321387 418089361 864125770 476577910 828229954 82585601 393276197 624355832 757042868 379702798 861684997 397161418 434992631 913314954 921391629 698652936 955641786 638714004 846768345 648026022 925046083 802198109 942356434 7353576 376093174 882673606 957200879 211753855 605429272 287656408 692363595 582960526 956031836 231694929 617308393 784067704 917776832 800368863 928867377 625089531 711935039 773964601 859441932 315588812 769786730 583373460 597857965 644850672 814424585 987000916 990663415 789733354 823441730 495614050 793122863 584580813 622507290 467967087 546250578 186644999 733003491 357873150 961746857 395730457 935017852 775461519 835522238 978236491 994729635 509909642 689314418 603364739 936172403 49018727 575864993 706779083 773950831 124754838 953440594 382882705 504736727 208387326 974679903 458241650 598869055 256522913 917135255 523768992 548486012 405213681 425112241 502844962 507454341 867677662 868952782 939748839 988427562 288059533 740826602 142128380 666905239 266187095 559587056 696775042 701487882 222593160 872412623 723227612 729863959 842830521 931089043 134442868 855062818 436813793 861867421 785098576 931639381 848406946 995126125 773426679 878949819 158449017 867079888 154741839 985666723 339005234 870413098 163350132 835531063 936117552 998689075 777921495 835619694 881114267 906019633 498343539 917860614 732092771 743672622 331838021 772676266 675394424 762945995 933794020 995591434 610028226 663998415 627765825 882334497 417676696 433349381 778517611 883180953 50964006 424854102 849899524 960595229 890797471 989437038 252649833 350416296 924234764 947106521 876029102 906471221 897694645 905045719 688332187 968522573 373476065 521990103 939996736 996214985 461284792 874194773 98288570 822530072 84185796 565705906 261506715 736822364 336924826 586600836 850262608 950019667 795831195 823546778 755968942 981406891 35308490 171761014 608468708 681830147 654043945 840485866 237773638 838233070 793198037 793893413 261903581 266729680 604558064 881235587 419125358 658760804 288574977 589856739 279874177 299201666 506363569 666925526 350099508 714858262 987821379 996162191 430852813 854151228 756640610 912300867 708658859 895591491 321075984 337603091 932974522 934168768 832914377 900214877 780072458 955790801 614928163 906742205 951993418 963967377 962884998 966859652 910483534 916616661 573172371 643748172 236635253 735699667 470680264 922590857 842143647 900145151 72302440 251199946 639042373 965943102 536758479 649797781 406397768 958828302 233210202 751345312 336897914 553754861 484088344 627434901 652987728 676113044 223427790 476221472 326496675 534991424 68019684 267850357 816819585 851113346 863315788 876960292 446655400 476099710 806043564 851246759 114269193 136312383 86897737 709091471 237462215 602281918 457522529 621904793 204332923 363165272 263887451 724073650 552209355 916453026 432062808 567561677 850868884 945037431 440765248 736143162 580469439 682845651 95187737 212589317 210083619 934892467 28813645 396794521 323905918 510027675 347068856 555661661 614799882 794721583 334656917 800289355 121734597 365153570 65339495 676676661 487630628 637344156 976480626 985443120 4851970 25038792 970412725 988488121 359291780 987733643 236304268 531172028 321589654 396203200 349830654 947249615 966567144 974714845 242175608 331092510 689816552 728924800 192148282 492655788 223310088 547611861 693070283 818455673 979396405 998609653 853408832 979509673 411498068 718556773 737601029 831053539 887794894 945125872 293764647 713904122 128016812 263465618 266531047 748474133 931155898 978529820 417362394 785018867 900441364 980566034 849194769 881917044 593317504 968240954 74777890 800488011 393220307 516849093 362317183 876580227 433358112 767300078 785997850 880077437 840161605 992055168 534485275 865437590 985936803 988539978 321906481 830722032 253734723 652568876 407962222 834749788 645729021 903298666 692247149 871830540 468325320 718904929 224751772 640030960 23307432 284467796 275648338 570585167 404972527 805326423 709228045 971468274 773624623 959896592 587449031 806229716 319968254 837513987 86484821 386214927 8949127 924013174 578463965 995236890 511112158 577060489 13069966 71443793 210164354 439749046 811531872 995257027 603684735 938670522 777584595 786933846 104710595 315543671 135899548 656927666 732598693 773000417 241330334 736891545 245310614 260196567 165015130 813870103 215126329 521272849 415028061 884739533 129023753 307317742 839806135 988899913 88491402 841845854 901281226 902701675 269933427 415712292 504019555 593372648 813408729 850657373 794632379 808607178 570683708 633768875 990717968 998938528 84147380 260932082 473312468 914523646 81380421 452448459 712927938 921692193 543329993 766235513 561178106 692713187 247583470 522536333 521386746 557485538 73682513 217935958 425899896 607973888 746349753 887199879 229298033 366500844 197216274 766411949 610320443 723035142 569209252 624354289 299265067 572064698 696834389 971639219 663238594 856970002 257451642 647414004 660166389 931628759 378272471 671260281 107238008 492086979 225627646 537567321 452531110 820670979 410490001 716165677 651123585 914355379 23623232 524014294 449792952 594948442 458412008 997020944 390252788 570109796 353741077 576816256 620709246 981922561 99325714 153860653 640164430 805913511 642824031 758817686 668663586 811629000 110796915 765002327 815263159 851066713 785068968 848988299 200574827 221938465 428392447 918030139 109292615 332529952 156327322 740876895 746086995 916262931 399506982 551297547 927664205 938576587 731670534 812099813 943088228 979229425 789469283 964245487 535378316 939078289 819583313 998951476 858041624 920604064 883146790 949009799 755285273 755646514 780962179 927108905 362599482 438614218 844619036 960156580 242531549 749793725 797748036 936482885 274547067 697472057 564809606 776363043 48102157 699921923 162298170 390373485 104412610 211668021 999331132 999643333 481492838 888790096 964059418 983817668 487341077 955572772 976249149 984087427 302553513 375125495 287273974 405172701 723540112 783982454 822049921 903531124 434528983 605375671 96179262 945425512 67985495 913581357 49498271 400665205 145119483 922035026 485391910 863530330 515844492 833861670 244616503 318601246 805299034 878285821 444316392 582710200 134082874 421957765 905167703 919784825 163373603 175957318 893972470 919120679 443896205 795924627 973143092 996205130 961727680 973719436 83801290 110245447 140126838 613319877 156446361 848753583 844591435 923175977 604702346 969721111 466826706 866114213 255492455 786626290 557767569 935476053 428342923 511730845 364422575 559656003 749641973 852505563 528643496 914804308 632460047 757145956 323784434 582589113 841845956 845043667 138467164 642100579 754305927 947804325 491822625 782329696 748302998 793787866 97128566 659757338 526371514 961117091 955532200 991093327 814386062 908025235 94193070 738192216 383115840 509970003 216322475 524006189 563328911 669879485 117490409 175531390 600584635 789137643 887532739 986825408 769097917 916936371 117667038 274094482 392325624 472406564 331824013 567393006 988432730 991984705 581557189 954510946 467866841 556021002 244891742 396737567 754212032 865497920 756814891 800840963 449340788 580592945 286874728 999783964 940392409 977806428 148426200 184365734 435367748 879054794 144300134 567931442 750530987 900702772 771300887 823679284 594643681 833278294 864981314 895780180 215481508 614719565 135962258 462192943 185824130 516047927 990973662 992538199 131497311 267237116 258961214 739132018 182595830 594640426 820490022 849141686 206237882 958322319 333879980 335373123 995007071 999157712 433968917 873907929 549412196 885361239 229635521 559987366 388876406 995160900 529101439 856887865 270655361 412657700 521791935 528390575 6224272 620292073 910928209 968312975 29249294 49304988 813813714 875872740 794561868 855152932 920760156 964444309 277313181 657171857 522399613 972385858 670198360 786563800 175150193 859278338 160147540 731786165 471314482 985035070 107327917 911632552 790899011 794054603 380730669 848842078 929004579 958410028 219692223 703946461 446612305 457676310 620695525 842846165 357284821 685023610 897965221 906163885 827765764 919427480 181661064 778252456 664047007 879379325 802294171 887276592 881266129 884222131 905659789 943830897 573108853 648577537 328114474 865700434 241150866 548323132 403239521 427481903 221035978 389429880 938003218 950164540 92485521 405563986 128326870 204933366 857289881 933807194 278317161 984156339 346775989 379147015 249372597 277911103 272814451 467170037 447014402 461867163 281511268 292081785 605246524 908701367 205168300 843686727 601961559 693805807 949928279 953677069 467191199 467487248 574636961 658778728 627942992 845186618 38368416 769228952 208687136 208692910 889695812 998981573 464447616 656328408 916262455 998307903 202535854 453425451 312472552 565931894 385612299 946422309 51396263 505870825 539573797 923533295 206394017 697232243 788045677 992028567 155680964 253808235 87008784 815002015 671912218 906708671 593687611 759968296 732284601 903773944 333088125 333962250 104724375 113213681 286892217 460196017 561012400 970876514 54643372 133087191 188379256 646883833 655279657 911866199 951993990 998337826 276403273 651444473 972307574 988411362 965088910 968520434 421666517 883584345 137506475 570693163 127389561 767588260 481683833 644121781 662943839 777633095 650988691 916993163 983614719 995825643 837711397 905438056 449607706 493311854 272970538 413881132 503688654 706298900 631384937 841775345 395542761 650697455 884127726 981514649 980203782 984087070 127661726 668247114 79169711 107167631 421977556 795920006 753682858 779814019 715158650 814351748 811404753 949951081 924698118 951485961 212076208 725767599 104408811 213640663 427070925 575113260 614810081 999114152 55774250 541123587 769787753 827151823 38508791 988799424 836884019 855035509 755392255 855436538 3972323 737134678 925215745 972550326 845382097 962289976 715040187 814453308 189729750 845266640 915504440 916990849 570879959 842408713 479284297 974230810 497522370 625012975 625063596 771820302 403769875 640929632 897310353 960728103 428443497 762782502 881580405 887462896 907222851 961313554 531778218 618848975 211692640 292981378 113704085 971550656 825887226 928936162 583415109 876390598 818866156 872586782 938292681 985252529 886550926 888266720 524885232 545970438 382381892 844209432 19279573 709247723 71847984 654938295 353503869 745629026 535579882 824512597 38509584 168103298 642112383 849543838 872441291 976223820 702792188 846178490 500501067 927082674 982650945 999295565 597055536 871167722 898099083 916346166 805258685 972459167 841288225 999077941 686698128 793418817 944248714 967446989 226103604 405238498 489579626 735427565 254484446 407975345 946490964 987008110 732979024 952777762 814034704 975074857 517676748 974433218 791798744 957876134 616326847 959106637 10453910 703941990 368832106 488762205 622540029 971407499 673707714 686763584 519373553 841599449 633584914 902473496 93950734 607747326 114104183 528711876 970851110 991033829 540809854 624176343 393783026 846844149 917050150 978816438 939454635 978407080 820601203 911801272 507185186 820516886 19682595 902677226 403387262 723075089 441941992 630217738 918965486 962747242 212227264 575617580 971733922 975667210 645737503 952878373 872745561 955836318 635872273 867124699 789912580 802687271 701105199 790531473 513253335 998198180 306500289 880498700 113491098 959365944 107102791 256932111 706423938 809820786 385642133 755041098 656669684 872547504 190508029 498530801 950077704 950299125 877610601 982372253 905183412 958055351 465811462 770399016 391080051 955362934 476805619 705051104 562660669 987513265 402760697 444527583 93270749 498797383 907621742 939563645 652401162 878537115 941347792 978427840 888984102 986097626 492595551 607626052 95955314 422842465 847026597 862778821 113006311 369377513 126443167 565092328 467857408 985702911 816162453 871070449 967641681 986416783 957077595 961549218 126182951 470092206 237645394 456287423 814520569 995727802 308782702 547634222 220308264 282742725 770206008 951622232 397343721 443920899 512670027 598984897 5270511 156525706 776010181 882907330 188052612 860277344 543821710 763314618 840042982 924756642 354421721 987153055 944394468 962904026 345304487 830594935 304108795 326726672 973687950 998100111 547470028 718837344 714064390 829075578 628678637 851379199 971664011 999031601 907818361 913878185 398311080 401279593 33181319 531988440 354681772 897347269 183273006 706434028 97974321 155771141 320050136 925302289 153997848 349324612 899568935 928990184 416822404 947165912 632016554 911669778 53646574 867676310 51758756 552907251 632740338 922555107 158546089 925861396 252605078 673002308 96403312 691590755 355967443 378527811 286289523 697431211 648571345 963440548 940862686 974158787 905541285 933808814 918042348 996276900 397047672 846948431 390977179 950366538 473048339 993985544 426690885 844499083 933098888 938431114 706929057 891359865 938791790 980934803 136484818 221167604 883012776 988126795 560357066 879307205 980633855 991218712 723097798 759360922 142489300 605754803 288311145 799049016 786394810 918210551 361500046 771035892 573327121 945021382 481584093 490120100 10380171 43670058 223882039 950478646 863428211 977064024 453751484 783434830 551608575 949063055 44846924 339879329 411547092 574985834 553467634 640215099 749776251 964740834 728060220 866070297 594785201 640566609 230273407 818079832 305991729 796385464 151310660 505037812 484615621 720459581 86912415 908070081 226197745 914253686 323565216 418451840 655082199 864232829 31862368 623079181 910526755 955473728 960145658 986011971 623139995 724269863 709215930 974293488 878615841 925846175 801040632 962331672 346125582 673439261 52511431 394003569 387366845 781940428 322473393 687586847 117699966 851519754 991172754 995491186 896704132 960547406 835050514 907202584 118653188 330888636 88468586 396850467 5831241 863476781 505544008 717157855 719354092 781411948 189683273 291276335 680580458 940873678 789532645 946194233 744518861 769400442 456126315 785334799 427843280 742399867 65214184 236355198 666730025 750747139 997381688 997484409 770677017 936296427 287063474 990745886 373823718 768102078 790770476 851735446 179542172 516087290 284208551 468595646 505276458 917823530 129996147 133987097 51159779 96666141 67891230 118429132 256514660 915865589 709609228 795894532 312211063 639113644 677383711 921106862 523529799 894548683 831242928 950124281 105483184 707691374 907494813 934375859 999233775 999298312 687729291 744272347 883757235 979263828 425985655 530487332 268117049 343591304 218044238 895271871 502431479 936800438 472825375 848894427 418841681 551905905 228730461 912273190 467992655 518562495 927965231 954172605 32768603 550305802 309749443 595101382 689139214 746590920 65962169 495574468 460974757 596416733 65700538 157069658 148326582 258823963 182706470 599655946 290323807 575507119 714367024 733006866 460600105 640177819 696011161 932172035 236007928 615171063 792967721 839419517 960435678 976481052 8860970 96585074 141985751 887482424 250188578 670902142 499951227 510697926 2774427 376903599 377267144 914994241 778029227 910343761 836605009 862504582 334383769 601510089 12917366 715635546 946582887 998694384 973846645 992823596 245937755 714435828 191617285 943121715 920133639 990520177 488223070 601935003 851663943 859449771 187528776 660848380 133886069 476850476 825750683 858263439 168798482 251298895 763597128 845737824 651318398 979614478 205893401 427206039 395968716 701186308 819086098 965631798 116760986 500201911 347815490 783295659 137349848 211180030 266668830 889813918 85835516 418096542 762033785 985131914 836842002 884558056 16747394 423078769 973761572 995740945 39342056 904625108 728066050 812752889 607390035 752050993 742534450 779821727 268466761 288804254 800889923 806028726 842155586 981507618 232098900 488017069 166274989 302520237 77100916 412137764 662663938 871846676 133156549 506219797 724647805 748485277 884404749 916073390 234627635 327899736 596448967 728553480 280634110 906800573 874031063 977321698 16194804 635373619 918545173 930187891 981740502 989456982 641202529 721679746 498209335 562768053 729140738 822200717 627830885 880489599 908143925 957761406 826607923 962116773 109644206 980714969 827008829 975098120 906403271 914338883 936676007 947608639 291211279 876239544 979815729 993921903 256204244 850362883 810220180 881448333 999980850 999989557 994555709 996507987 910973323 956949767 744329870 882839740 992815058 996027991 615742282 752365029 629037622 792291745 724233339 982002139 526882324 628772386 190029454 559358507 591205982 968224578 173375539 420934902 918070346 951352175 483471061 710736371 458746844 692747649 604018962 828951220 49988317 283564786 628634349 646519811 181405030 912300047 985049847 991494032 602785880 767377328 71655274 431614900 316439443 557357034 29246573 867568220 729964282 761127916 146074835 454009334 718001958 740477238 25862580 71038437 594957776 990163302 603324989 670378841 618069935 745343379 447088996 776886973 480259950 547958563 887719622 988408019 220838740 497713714 78143017 341727506 247557392 389381800 200482093 445299627 195329057 798649427 541648403 654671338 992246846 997741595 755462667 986513724 654716682 735680265 565703576 861456635 878148725 938954824 777972838 830648885 189008406 328338531 400015899 997842973 401850116 997442500 878398165 998811228 179351341 656605639 51329179 841512498 649098732 861308772 114026719 899039534 780219540 951193697 95498846 302923463 715644131 778056753 547162750 710964060 784921615 837073787 959166799 972920537 64910507 259746869 794084762 858472103 123926577 570102473 126306223 656619227 534307016 703671643 15957063 88973720 676998701 742202254 63439860 741487774 267576264 574189702 337661629 912955127 138063612 587644350 648356119 935367198 75968872 983188888 956795103 997595551 702592547 832486291 824761469 913173968 371079264 795889469 343279434 709457254 831805271 860853968 345218370 799225107 402603979 615207181 335217463 385089417 419294930 517460001 200507841 235018618 935908073 951694942 341884768 513350672 559766643 654022296 147354478 546339289 711580438 828458946 176912700 705007834 919109414 939422681 619650585 747205188 416590849 876989251 998148440 999432914 385137081 692692017 101017898 443826938 827599797 980349476 531516913 981422012 882909562 899181801 949364441 977520535 900321313 914614174 328800092 389413272 222131450 398838079 780139859 812501842 773063679 791937253 387201350 925117884 628961016 958275481 369320866 551684016 664951434 965225007 470691228 490193471 431027879 676557227 726248050 987500328 795945298 987892566 467631089 792588272 284699438 621914075 104112211 484196397 791660494 886127403 674311205 829061688 777793844 890175463 431034075 477619454 563339431 666453077 464372661 491282250 527353769 533632769 785820766 937020796 831811035 951459000 167920665 970624603 185439052 505044880 820234535 935445975 374649035 493958127 602912981 932326041 545733782 885654019 489698618 929695748 542731490 982073825 773165995 935290002 115060447 751615873 995355480 998539850 856901824 963086163 535271248 655717537 364043527 673989340 252508937 747520188 957987469 972562272 854672973 941360433 436262137 787657240 642837175 644733105 935782159 990628672 65589903 702303506 386366748 961206091 684861797 937154556 660259732 992756158 971970512 998062035 525622090 591288120 67640269 830240646 203909608 762980611 576322157 966523801 50912866 757398727 926363211 985692312 46129207 370062466 287811925 632482068 525486474 793932536 210393092 763257242 841782681 904434822 46047113 279840970 931318899 932801641 840421044 862321452 265280081 565312803 564543341 718784787 276357358 836947457 307455378 504069379 76685542 816836595 47384616 320422464 932589397 972475070 777087939 855508155 158613055 248546271 279842804 777553274 875561187 925171290 499533391 748364882 429267051 654664319 8978311 96260661 966985140 978720699 481435716 936415651 452394478 857087403 291512384 790072712 568415054 867722581 479567504 976556487 554171696 686536783 648015482 665116526 851483647 921412692 211227987 398576014 878041235 981880832 143843738 722671208 327687167 877562100 49576191 967801026 703056771 864775702 414004206 744749526 814372223 981415287 10948421 33206809 764938138 844893541 978831924 983232465 912022342 964077816 155329425 567356513 941264271 945944301 27715406 423871034 439307253 904222260 479748075 791725267 259238003 600072076 562925987 902175011 289074428 414866502 40478158 365567079 472107617 568190233 379439883 772974491 26048040 612240455 721688152 883768615 127327320 858872894 758270461 796783230 630004369 654381870 428517170 701414111 16543778 790233109 186569231 617084069 408243961 612135955 598613326 806089609 520785881 697719459 96112259 573154411 78910431 446079389 888417179 891468326 739233817 780458194 761651868 977543518 389166659 735076741 210639262 638257531 843585530 871714801 872171874 906725131 653215741 979981066 500652780 909239447 176761791 642148055 847343309 856191007 864218862 994497878 295553467 369026980 535719055 871864327 577304614 771393434 587805462 662958935 571407188 949638717 123279609 617993451 790258963 953882947 218267833 270609910 436695513 480977850 201049568 348395373 1976037 17951020 365996438 601693507 702759773 706479078 935965156 941904822 285548610 639191496 219287200 583085652 328206989 528819593 83199832 567473473 771179510 960610021 766638516 768511834 36016028 274148388 546091631 748961890 649445289 947582403 893742351 913780147 347661186 495141744 256673119 446333568 895258727 939482895 389572639 405663988 767492069 853280867 350854947 820597280 156074454 865824485 133529711 532967100 917657449 942289436 831048734 851405779 34308572 657831129 307299820 958641037 789301739 809115363 563866665 579253526 657381488 740610903 730978549 761883964 845677250 968203573 759604740 932836109 722474718 829203557 544454077 839525387 566286848 612837576 234163098 805775961 962111806 978608764 385219250 425738554 131193938 861817332 399381921 959681229 731317712 885017039 445461519 616066832 152294993 418909380 208762237 598290428 676094909 923158853 502898476 555714031 481481279 835990117 553017259 871290604 104581068 547269540 803210962 804397628 557542153 866246550 891132940 936632405 986470042 996499477 132900296 155513624 963082908 999798737 382899894 446238906 281591071 746438321 815820123 958114138 505733059 769598974 50963104 576427254 116492667 302881591 453587702 620436854 175224495 760158321 230551243 550190794 11758803 541655148 877371007 912455582 679140191 953070098 356025060 498592029 841406391 909359418 458254745 973619086 502307958 505264633 799417435 942505236 239776572 855747877 637965104 668711693 684192184 957770178 446250339 548222410 552613407 725651410 253064731 787706000 917362522 940715844 471463829 940333234 18971623 242057705 327167547 477428919 831638022 877613010 891321066 999485022 337133526 423892162 745055727 996127825 249701109 347108182 974394835 992574755 909385868 997680796 710235438 865300909 74638000 286095072 26245766 910184967 661609727 826474729 916583109 991924050 874226742 876392850 580325579 727382329 158444103 737082801 175906575 586909986 449174287 998797390 242389609 599139511 652249929 675715563 862900292 876272224 743858793 902633713 459591714 729568456 643937446 989972807 373749912 444634703 373791261 416333786 775734831 886220821 399717494 890203707 809792605 893359209 482153216 541711112 293785298 963934735 376732268 402638230 81363567 95490081 511008350 805908470 2688912 163784085 498587436 944736942 488186089 583475658 458709583 790741101 780913309 971291908 608386550 638524883 333749398 590335623 156087856 170547001 2863548 758034937 579874755 976811715 643497599 882805207 846637059 996212009 204971569 719478161 429261275 831561779 907251672 920834068 137858268 226402899 12564415 857413277 48402233 253016521 269702315 487886725 148946222 855607067 69252255 441187236 864493618 908089172 784045224 868898182 339230376 910313028 962127272 984589561 170976320 883278916 205659324 815048545 271065115 932831864 490566105 636689705 45535349 666431216 70473178 605253304 294843124 344376615 867383140 886712757 817928766 984606938 170298505 824709463 838250280 923011524 873490003 993666553 371737162 791551564 581474403 985055714 520246582 763114338 808913299 874344578 20392177 371460843 437113185 799589432 435995239 439820521 42788368 821853963 292352198 963791369 887305421 924033344 415926484 920078650 606113826 705474408 633990773 729293112 296533770 677378466 917037344 933032835 532107847 607759927 642590633 760492587 44432526 800639695 15139107 353842704 333656139 481093919 392002328 786083350 256673214 864333389 891180991 946848827 701556166 763713934 255645196 700650883 49152744 995733402 795320785 985497661 22165028 525708355 54024110 250028848 31253020 286918903 684924442 889432344 48178180 786692190 999021188 999140562 884944650 981944191 97396765 205725200 813493899 864723472 794847702 837663832 74881034 415937030 882529713 964868476 9953913 798644168 348988196 497304287 294221584 514404445 217007806 356200651 534456542 611344825 661644490 917952140 953972240 985211366 270617459 543003933 744480478 849531131 165924051 874286041 455054301 661409932 131531064 648373970 314913381 669844520 593381971 599370672 156816481 931373689 104872034 363188633 669243499 839221305 18540108 415479586 325006611 679298430 930322879 978601552 334858168 982556329 568777907 984009660 845678687 982180633 63167883 590977149 660664188 887468181 272244554 573627789 586753176 756433927 388824569 711828063 441133749 486583491 148727332 532274030 908787708 995102398 252426706 851356654 312706150 948029887 997750006 999701338 991886505 996279726 767257392 930682235 591955449 732734837 168075196 254065400 145970402 293890279 562396800 890530177 937858213 959184239 832832497 866530459 238376082 780307668 47188641 359282849 638049653 976622419 306218855 328036842 409600256 601342074 40299490 817264222 750274688 774309598 664059357 917074503 207462005 232696670 524236924 816522665 325562659 894719533 456534254 944723014 390948962 454584561 904264819 941769965 430953804 486131194 296633972 808785611 5352169 132377527 415540729 776810168 140573980 786427901 708366018 782579606 730373493 862066191 513863914 574666916 739608466 963095218 145396677 322530894 156414771 754379405 685017426 969460710 364414105 518177722 221893832 695147427 736294277 846124139 738906081 825878944 865116812 885923247 455332194 917960374 69816952 483531048 2372887 121993911 265465751 730815189 67011704 483783432 112798869 987667470 765339988 815142541 351451802 930796635 646312041 907696576 359475828 700949066 519797757 795827537 425789637 750611875 798878662 832811203 251532114 371430784 892578332 915077735 300332601 601859501 56685906 515851314 649239832 710357025 264465001 770566744 441767306 831946842 2168758 578942256 344405914 930471782 954759561 971345008 521488044 819778491 404901162 827507056 890055073 969456549 733691738 912026390 917985248 961184997 972025730 999746677 713902300 954035851 620710468 657558704 156041580 932516104 887637338 971645028 243932906 880075662 333799617 685408052 277926489 656321218 525432508 616399153 739308357 764491863 69539495 787631259 773252756 921631548 338190992 683206401 331897132 344829776 567597413 605825988 332741346 854810246 55007690 759207126 950549758 981602818 98016635 145740571 681795796 750048367 660089635 815384459 534056917 955997867 941551645 962982820 360076902 374999517 295534438 403121360 746657096 891631113 863245933 868368924 911656317 981408419 45248621 776640720 171838125 984284577 162879025 757490528 48249547 757918812 979719507 991913205 890321040 948007983 844201582 892709203 361877532 441105616 313223353 558576171 244279750 739243960 434591993 547594568 187307306 955068789 159172112 391669535 89365181 681823135 314360619 888020279 72543073 909834750 54182671 614209073 578950202 613100643 136384683 973776154 559216450 860860952 35834087 455620560 526257052 633305054 639352057 726865067 620124649 785412985 267062759 362154748 215342060 876906587 178297837 670676516 939638390 952362177 35160277 360180001 207386926 710419123 376053222 439045706 68532130 81856035 803347831 829865845 18041219 745543376 232736791 820410618 962894010 992645541 717961838 997722904 6329998 725965910 982455222 985948137 790077155 797335293 501219128 576055378 309945335 819233897 9965903 796061010 27489318 373007656 53306194 158173749 980231594 997638955 465133783 744311391 637424192 856961914 443653691 749971858 929958868 942344811 980343992 991517629 893385873 972547661 817255518 848184400 313766760 677805153 361966157 711917752 713756488 762310702 682078682 877436970 269023784 313732438 697206721 896986305 893741804 934125247 168338782 748533147 231086719 284681653 927358770 952413566 739941115 901528821 149997672 833899086 884747496 938052593 321793909 680572174 197062749 738241005 500106413 816416191 39679399 125638535 59009879 122026000 368226958 915807659 785424614 851346066 373755398 975454632 52613231 62874722 256698249 325226743 176327530 202034295 523850768 819254427 589480649 867460905 687104718 866270689 490933974 498728581 491168443 999348938 216971914 769754699 777440462 824240283 271827964 529927037 328310841 836440231 799685733 818920820 944343552 973734958 220902997 797828432 699652071 999114189 875390024 994272026 799820872 875373073 78483763 400848798 29783619 811284127 44669005 675785359 448690403 638929288 549339235 887348486 891124220 913679713 877212006 904119423 327271696 460571405 459260796 579440376 104316587 895142522 981192297 992133287 916641682 970203254 183975443 815676532 795921114 916268717 596223915 730024847 7757722 553563814 151081429 702263926 408002741 507088910 315576978 579696561 908046930 909572861 692370813 752547398 500729 483080572 385226574 747514957 101165483 757194031 707491305 907447756 477960306 673737480 175345302 265540657 414711617 612777109 129954905 307947861 859500752 921773394 964686898 999439259 797104499 907794847 894229492 925904026 528550069 978717569 287434357 671483818 384065061 792019893 559349329 853401270 950271400 952401201 195345477 780685658 586576663 621489087 918858336 968922384 871546743 943416936 465564975 680755562 167692809 734017190 381317764 587870477 251695485 830399733 880085786 914717824 844850596 866118622 418824740 456749631 772425531 847300811 704134107 824024917 707313066 737631121 809880027 843510737 735396689 823004308 384478729 537998975 86379280 354263679 472917156 501565408 229013282 275433467 59562637 815630797 403866778 814687630 219496396 666274093 602728934 943427340 526997968 546464934 129971522 764954942 29521969 482559068 397483781 965650127 509435185 855737718 804317893 953875640 24898565 634163467 868157551 972976676 119068549 428705759 283489197 332778949 794373267 949610820 995999955 997733688 89456387 797806156 544383159 636135036 35172729 381112695 148621867 448883405 456228178 652432065 780973686 904827467 806284097 892015175 626307610 833231396 948209963 955659238 336689965 860352940 361935216 643069451 405055669 649698363 154019669 281551909 484330081 835474816 434699481 721316189 229647962 665162426 166091054 733233291 940484565 946976831 525240730 886482012 813485761 939069073 769438468 863704075 999575249 999874076 275758679 421047783 970603010 997614850 468993408 990927933 140868163 814969363 146799044 329814243 193697976 624446841 49752345 326980060 747345369 860230095 903747909 940758014 275602362 411024631 174263691 840068176 138349478 435615669 142372768 534285332 146714444 928970071 44286163 838431111 779774400 840472273 931189113 977034142 323343424 809339737 391599012 960266324 724144263 850657167 629387932 735290942 429938151 509777557 848127100 980424948 387086333 667030383 628409565 636760329 994815707 998085863 864180139 927627007 92852723 765993597 143541648 479924300 574636645 599259273 405172052 883636866 101562310 582803512 896926717 993414379 996378948 997103111 24700149 228120437 313843813 563588021 898348040 907805117 33966545 778803565 950051678 950342411 25966505 887130611 143333398 937451510 536496550 651750580 455470715 610772457 674350562 967913015 752782526 994136130 325494166 843072753 275489836 531512642 624360086 627324956 547775682 943778496 173102278 790523089 670913393 946221470 681050434 808130839 856782828 966405841 622327401 828979950 462820364 555163377 780048935 802310558 769984164 903036153 549979180 884483283 4016524 374546974 563710797 848016233 362352476 621674496 537511394 813026783 875563208 944607907 407046855 564540829 380025424 861119975 36302453 890306500 100976359 530029007 733376728 768578924 879525922 937956222 696145136 856068128 958484392 959524887 443756426 575023450 311867202 645523889 570124054 926266417 589886008 999361618 165801754 279805263 893040429 983702476 499216816 565172812 652863232 815388351 383104482 689471608 623874093 866554418 856951074 883021355 491381716 738384447 453486908 507212188 530176831 851242567 682523401 988249967 113634204 970479325 646036651 888846828 659288508 715244967 450713853 613219673 440212735 730007097 253850943 426758531 133709868 802687986 83137769 449679924 322272233 704601380 818993818 872884651 762350826 867936017 352856678 915141740 836537675 947672106 980374283 986394655 154884936 831163900 627376600 875388084 991462315 999646754 841907305 976901304 759160050 931392413 747381225 954374280 745848283 784625463 224453533 908545666 728133671 881415533 497979957 619408507 314749161 644386697 881042907 943481699 13338473 526710015 44000551 597376955 478451730 479037549 947540972 985479578 967569128 991726507 13073956 413555344 522200695 755999649 22715778 229333358 594327339 975699308 133880226 294771415 654008516 790846698 951036919 980624410 204298064 739173393 975091558 998070749 405445616 622822481 192426026 618466847 180146179 303347769 7694208 263253863 945035 584307294 984851259 992862108 840083736 996860254 538669281 866508437 270966073 547554886 382050300 753465412 478239217 883504866 523990198 737211334 73363714 192713749 276743335 559058331 838978321 985256890 98780497 927310964 752340654 945533295 730165878 895433935 526421568 997519224 218938288 402421460 991787235 995216653 893431624 924580328 89103365 487232325 621860462 873137101 297494786 601668120 457093527 634736545 273376186 865322148 132435431 602729280 394539159 690867890 638374299 876536757 916585801 963761350 210080161 765273699 648146873 739714798 926821835 964008556 876711465 968585184 120539253 579941268 29258761 986503458 850905250 923610560 359279228 398386812 904904983 978625336 958032912 998467141 169463380 562595711 64838525 780848497 727751051 975730885 6167419 946992341 805946750 956011591 511932603 950911929 15685079 772172118 46578590 814989048 579855435 919103993 680340392 967672685 622720586 837163360 324402325 577039722 160105790 896039075 153503529 271702774 117337128 162267127 767829858 964819564 416430439 814715775 1031359 769276415 850425348 882002673 556779681 828573702 209243650 552256887 611759364 799711669 890922008 998688759 744734088 941745856 782586288 876048589 331465752 601518624 676411949 690380708 523384315 743467776 152878823 531566900 1576738 568867927 744545693 876104903 709169960 995909223 992815775 996975334 41682810 552191434 941824499 993291657 806229931 866189661 123050645 838845896 327553572 978384933 692613755 843072207 795836667 944490449 897028694 957062755 558760398 949251324 583053952 617113445 998941910 999362862 407061516 438431859 532587668 809019684 201218040 271190498 510915702 920445612 450197703 824623450 261148958 552566833 909355670 939216867 124080280 551534574 107687092 777150376 807769917 900826758 76969724 933098252 222464391 277991828 172342489 242307786 415458248 713948686 982366188 982750763 629357131 859613603 448823622 823183920 611230640 757490967 147387271 796779170 251662220 552712698 243650549 645304673 380951661 755095335 844350469 956246926 118107966 227382768 109491636 438546588 270223059 834544863 783898778 862645608 726896018 991828719 366900869 385806312 89272946 870276801 936426762 995156045 989647849 994566256 219517040 322076711 463630827 538343546 882015773 999162453 661292969 946632934 955916985 963554270 753577964 896708899 621630153 921756792 321111547 716576408 958773050 989800664 60084123 839776058 312506245 725508808 627290081 645658607 825198885 847328876 954774273 973609995 58608571 538264035 645456288 907510337 179300980 907031379 809937047 873288551 385619074 866725943 170057708 629450015 646325425 682229236 747768169 771743904 750329383 796451148 267817489 341067163 219398812 316979232 176617065 650401050 128335463 308591476 830931241 924684909 586374744 993173633 197940316 681080287 138931465 151274264 207643537 241170801 337006143 435328834 204047993 830606493 263293405 990854203 778549868 839164612 510131126 645034068 890648276 904747242 650050988 838272964 476202551 601703235 159578736 867252760 691880376 830824022 182902467 195709732 353770577 583657199 515808302 852675751 491529461 689061471 925356840 964390861 189279538 450630651 838428974 962083620 105035620 611701545 788958750 802018796 427048894 943837674 834476446 950081374 999660346 999934110 110834141 760468104 696192076 873742766 462191395 472155128 225028396 944019811 744982277 915054449 195924886 943110184 473326633 998735541 446764733 513239688 169164521 886664494 567769222 970734774 863047298 966404404 805815361 968798639 222546033 229365128 230504990 811471255 578811368 921666256 3313114 71737596 349971069 811146660 500857957 503206974 736658915 969883074 72556334 911581140 119111556 801866049 51905631 693853995 451075200 799985528 263997553 338359946 167355745 742330080 339130473 512186185 990172309 999336763 912487721 988306380 552412387 691560535 45763392 752949602 560896983 913611611 853622011 986527748 807077693 910201706 338263206 498955276 962194448 972814070 63675625 794193199 108659651 202573520 586316830 661988555 463969802 550062744 208872670 334640605 178252917 642460530 893206403 893788302 83492838 100293622 574301171 800310314 432931597 968962240 931258576 971425945 10386033 127680874 614991956 618869349 561335786 919746060 260876948 642247026 307659187 323500665 2771672 574557107 668269888 750794949 737669994 818144509 223415212 752755124 750423527 802178111 103348486 992438995 327344266 426670472 258071030 644217670 183379569 315622278 890873523 980542141 26876806 447359474 691673039 801607215 392812913 702349008 592812111 603997229 957303863 987221803 859592120 928254035 543262277 866390626 409753036 781743262 791933355 818092260 553771005 786457516 333233009 366531569 559132958 798041620 628996881 717589705 655755934 807958140 28364500 900494852 165919664 957375281 583257627 969969332 458268924 894294763 73604659 611678499 411991413 849548084 646693118 746124927 37079682 471181811 401900508 498187015 719024685 892035460 733293844 967818224 93128116 95782069 483758350 672081709 168919411 438429733 885062860 958705017 725891927 920682612 916348966 940490880 895906631 953744254 499259600 516541671 346468162 673375241 436879364 448470827 664699019 684041234 250946627 690321178 209777304 480587901 611171976 838671954 332386981 662882632 535826356 647703723 694523820 929212427 913857405 994360600 208634145 843740208 696283820 727545418 886381992 888609833 630436565 888784505 743749595 766229796 694725682 790713952 879684316 953567055 386807548 537506491 852216587 869381008 543659566 677224327 612441405 670039048 651356456 993287714 581790609 968069330 607035042 795518037 407696419 960312109 423819332 708069710 746218808 894882421 573869748 996995816 61265177 792958453 544610460 713641791 874051340 909977005 650917894 969156464 478282282 916264399 936092746 948148009 578666617 690985254 922776573 958122322 593496252 936444434 188746785 635150128 384498787 649258216 280235348 944620547 652327354 919958136 437758641 801941516 928151057 950087056 614901852 985523712 657762987 919145843 577623429 973071809 508150816 725972619 340903310 815200132 998092317 999098055 342767087 482370149 244036911 739382375 115675413 538785613 610950987 746825958 649517656 938584714 885917762 989032947 97872591 706855349 458218266 747963923 359064569 942543058 933370182 993806641 444018486 500304798 114522369 832743833 610780975 939137553 685374765 870359070 868020364 892430286 662482479 983011022 876837314 983394003 963369144 989766085 786939643 892170468 265267280 921337947 706162163 828598978 812768185 954020628 366118297 852231192 252172288 768771577 546228510 632678064 318310275 469995153 240256540 679256657 580407729 718326734 936300440 958923710 530606986 931787849 565206682 686304243 328133012 556372706 391751074 615001680 740543763 784924598 906442055 983785233 799078213 941057203 233060944 750456647 685131868 824554035 79847888 887295506 801293312 848065911 908377276 944547260 428626542 474458162 355085516 839754646 36224662 254040156 943094310 992315750 884810841 945684842 853316226 939403176 171757040 196957210 861823671 970501073 5299110 818449098 896525362 951561328 608187490 936735671 602636390 730461400 697113435 716442094 688590232 739868105 576963119 892060973 659924351 713965834 877118765 980907712 66626130 464655225 767910953 925611000 69849990 280149940 225362786 269537809 995719565 998358879 920652782 996907493 964428559 986136363 646031144 887149163 555768688 830175245 328278785 893218633 298208377 381615329 479196647 686793231 340909174 907744197 812380699 844288229 748390770 955193315 661060828 908387667 164304823 803218566 126232909 171976365 736216765 784514294 772166752 957372888 830632475 984818563 629757322 941497275 305587668 997235331 663378277 946285143 46933259 364358572 115050103 929098208 25260333 533637830 857822812 882873108 358592684 843143254 365006643 750730884 714848919 748213097 953243558 992798200 117506515 839196710 180316832 330994448 440932684 654386543 81571584 709336787 897603416 998378072 651396371 920703445 61306769 524628956 162428618 406000344 169924078 319270565 910122865 957069116 588445562 953906043 464669450 697937455 836924446 889635129 935823028 956884060 671981750 722354441 137123061 251585368 681964377 824803097 982825331 995023087 462473469 972432675 338428376 362175160 160967111 420455722 603130593 632982777 533527050 606673988 462725080 879664224 885147015 983684106 734289863 757340905 85634000 731101505 342002881 645666103 124097136 679814423 351230476 987075353 135923147 602176014 706347076 946969013 18390286 120590835 832407920 864071417 744033413 841361280 365940544 485029264 775195664 949504538 33361371 476306161 690639338 888063695 381389096 689472235 804265531 807406999 732172833 882717397 407494784 464992317 779707347 945761718 225116887 501153665 964080981 985929047 21565619 29646392 590589543 738258998 281446066 667357476 70144493 784028887 757298402 884853394 982653538 991520222 18491471 64665190 367843158 466329208 766805766 890302229 386367214 404669887 731710263 825747264 328922756 514153468 540405452 874528726 640482708 996785998 443478899 545674757 227830720 728269223 818370675 991855467 91398052 791863426 110988529 538596187 128622289 158955909 646784522 832229936 665952834 695899838 483485648 956771800 356788035 649614432 743738110 956024453 855579256 912453183 896810119 979480188 508730952 699075503 691832744 790008477 468090263 816607253 849449433 993043122 822950066 891987899 620279154 871712290 549424265 783594433 845895013 890317046 285987364 490287912 95839663 278596161 856870351 944403499 672550804 748243982 896357464 999302432 981290528 997041146 675570005 698827342 846826030 865980385 826345150 884355883 246790120 890732978 165079324 380604929 621388231 846286183 850003320 938670378 791788270 920532454 76323877 309791471 463136025 505101440 733102624 986142338 147320648 151980989 735394470 967226386 833948155 934024446 570130456 626817617 833779430 911219997 791360321 939064828 690923920 851518760 895858934 982982696 419320127 714188401 748634647 758614346 972211874 985736922 333047899 815178345 517382275 540808717 735214502 840723602 837768501 894661510 717153575 775670676 869921606 986925953 991486715 999802288 803633820 977733966 365096597 683346080 274477320 954787496 997919022 998423757 460082302 863031334 322316908 989184601 149100889 781215268 906023544 969839442 405332725 964854451 658077835 867174705 93691040 612692807 871169699 889927594 700456508 913411202 303222360 634725129 652013303 942493265 192138351 506568632 463704863 571001121 95053037 711350674 838252668 926544930 851614125 945331942 850559399 876197948 158428660 460068707 733197823 934163849 782042528 860551024 906480024 947529139 12938153 367236083 462828513 593317021 184942608 843564865 967188804 969851520 805381884 921618032 580573768 876581738 159365549 199848258 655394731 844355653 603389884 604326505 351526695 647430101 984153203 995143795 393794894 745505636 139092798 191653131 581984408 830545744 443312134 750726277 140071816 302466402 948081788 953865985 656475107 749870253 519133696 656847774 480173295 614260882 973720466 987679901 548677040 853357095 336527263 808372247 266633643 906541045 901946912 945382857 118376722 708317900 630157462 703423374 833847274 885852616 981626613 993852158 946661753 983800402 810522658 863582657 916048114 926430846 564740587 906564743 342673606 558090293 669880796 784538836 227032771 835123989 508660046 931695278 490295646 976830577 736409232 753207825 790282681 882743695 71186511 144309813 32450251 427739193 59157748 574250250 68535595 258529814 28523945 987190950 736939881 848878643 265725179 554625080 716911938 858123858 589640003 843708191 243718698 852401305 435433762 637214150 930020466 961405044 607424199 786836147 302813934 475850703 738371253 861358010 985938847 994613572 417387631 943228771 714837303 976002785 994516027 995372443 274535099 942367423 96735189 925395560 572207847 803133219 288769836 737531103 199463835 552143901 271041029 768442990 14442994 346072807 691764883 714930476 910246515 994194811 171921234 400705544 87948727 296276622 115289104 798362823 989422622 998209042 721062575 991575190 949546047 988594884 207441639 517105647 697800244 825578145 504876618 754096841 473330796 850513184 6551646 241745390 97760731 369082394 263311245 627089728 44265646 970836696 25856357 447213562 36306345 821150178 217854864 362294942 22662877 804462750 2154088 274183436 863542447 919674646 880697464 922008298 496947043 698097953 860782627 978255026 344575810 763808525 381454296 447031298 247043636 612886779 824145740 854480561 611503881 727409882 279958801 963090156 323932924 952718614 921108569 993753844 346770889 433925834 138491919 381519783 18413836 272556405 482240947 624120292 908407816 999931654 403530163 693984939 841787451 957654657 358032588 634427944 546667129 883822542 206988650 276990933 46674434 701772856 957110055 977451909 567296924 777831504 352665615 743887412 384374478 877026239 329974822 614373545 662644197 949907703 236097450 885262334 763832980 868331240 309932923 786077366 663021919 687910632 893651242 945085292 941922361 955209264 707432457 892928938 520496663 970089727 15838361 229695370 102314669 904498665 338321089 599572721 928305132 973914778 495248557 958604348 788601281 850769637 859435072 959248380 137021316 853246861 627816747 771093965 245172991 440204957 565342185 806424804 808987048 949387637 836813893 959930894 105498496 891695325 644854964 750171144 932507688 954613597 258468860 947076043 86677921 660910859 890026220 952533361 640121671 970352297 476872776 734609108 589957069 810926144 445864470 538881546 30587551 645281581 176554823 413994708 862042175 865535624 340502008 972332588 600163989 612880668 961681372 996107736 659196503 715529066 833462999 835449734 235716843 722004443 882187461 882650055 271193661 427497437 69659002 846741064 293237921 995168377 377772024 780877236 987051163 988992104 747159668 864384768 784678690 947488989 386102773 766856535 458727204 995671727 266943452 796466962 502296529 991095996 768905078 913310330 1327160 176051079 664167285 955853446 933813298 940937614 932074465 979565944 727479463 829268628 792959164 818943781 419509352 881715869 896625338 983608985 771079883 887544638 111551131 905963022 799430570 951636302 89544595 222577687 395301158 794226100 742767316 846854336 880444836 917977695 244126766 369485392 575679674 754545661 571252451 684694964 908376299 955411054 467150776 841095744 383333077 501235393 904681758 991456139 809281231 848793217 689065248 948328867 838049622 892138820 262437697 465910844 426379402 552587954 645218556 775139744 781034311 804783958 215569208 641625778 377522393 478037789 293402709 772564624 613735856 893926423 847029351 897369800 973193512 999401171 916777853 922726762 454715470 589114172 561749266 722293759 838054428 946525206 797447632 867164110 724129663 992694678 726687845 982110367 289590368 467075219 411165104 464642798 230301248 400746314 600979264 739207698 759580617 922083266 357510708 841506214 609136467 653881240 1388776 446860425 996286074 996879104 92468392 861649046 908940398 961667421 648184168 840804419 764034307 995038549 407833617 691567446 424354687 479726746 594520665 783372998 296232375 612379089 441561853 992148642 164889866 457697486 836188436 987015242 725188437 910795747 858607069 969845787 561903470 931154317 88700971 743961282 475618890 738287106 841170956 940776191 23743344 970265795 51638138 729271897 847815190 897172244 465875783 466066451 359735887 942031044 929623470 977299567 428908390 766511977 703524852 868153447 945516577 984940935 482889912 845698404 280757216 849555285 436749783 472255703 113168637 310643178 496214126 570465849 785789997 988289372 544208865 549388466 807434890 918681986 333727035 496497457 763840446 867253309 921243808 932858498 8190362 90874999 313817494 356550676 671060530 924433537 725103384 837566363 380151045 782986186 831324308 875447366 668678533 936327443 667063641 886251754 836827944 901947920 818042403 942342191 436995227 452623938 214292634 342827058 720768502 971183673 679549776 894656227 725762580 857134902 390462614 730398589 346869882 777291694 328307786 449514105 975933081 985402090 12316912 415574549 391234343 401694283 624340324 805739206 221861122 560784793 184676017 626383227 914062447 920739503 931225209 994873373 82445410 813902030 7682576 878935699 592843803 938238329 726942611 920804791 992185705 996728148 313535534 440002490 187258781 804368092 651468572 723856289 295285874 653126494 22847523 524338295 265865886 759770669 706662704 841650977 575070652 643212368 322435033 805619259 893512994 959798895 205480069 991836641 876123027 885893591 635220556 970206380 974992968 997421810 423511466 451085879 628524049 877700104 358990705 997181211 935045231 941998532 610893953 666486537 423233263 977400527 517413066 801788466 664308288 746400595 782350880 792842162 309775624 708365073 744826809 801414049 713124875 906499048 921478249 945930400 274333852 538185553 147478682 451713194 320748165 570432251 954189577 991412004 21036355 57867429 621452187 630846476 373716665 972700221 633437644 724457735 385224780 847493194 917737120 918899971 936822292 992182825 376780169 453275207 134989426 781933019 12022883 444297067 304401181 990535401 574280829 903917466 931894093 934471852 121080405 421311073 853949451 992537953 96852571 717127553 305907777 348397294 289728996 699585133 483128440 897136472 437464715 913435557 549222631 613014709 484390327 658912753 512226609 976095723 335078836 986914280 162432998 650595038 124094556 496566706 958477583 961077887 838070694 854577373 138951381 228508859 713018051 970743018 40244352 691791812 227226727 880938587 706966622 841501298 946639807 969518337 681106347 939801776 877453727 976974972 991593997 997750341 334620219 572380370 780794488 900512874 657574836 980913438 491207664 695694273 978895557 998495436 11167261 411451231 606366000 841257500 107027509 615669628 949891304 998136433 499214498 947059807 310906786 986432734 499110820 671381045 362293089 492854840 490687296 915739033 888171769 983114560 963064158 974102937 597108303 791177511 957254424 980751536 555497446 843150048 552870174 864025706 195816809 716927300 473954022 640467745 415774120 483064826 815755115 969422564 987651997 999912658 856245372 912739542 300090937 600239676 520746566 953460179 686175303 750022947 24154471 288929978 438086172 837980169 588494125 971137057 162186463 536988410 967177224 997239502 304321378 973668677 949341639 999880156 333073329 966973268 932919447 975079380 362469068 918672937 225743593 538038255 386261865 623595960 331222031 654626222 877286600 929821088 520961742 899433356 437514760 541443715 670530282 857933031 77368566 216261938 753647901 991106659 537414927 957394470 584701571 644939179 483528705 531161057 997795095 998841448 112611849 890747390 262896195 586857619 363114833 529610938 121435601 270056572 601318393 686461255 133551264 243922017 294107712 674592255 453596910 558392591 247986552 814363917 819631019 925005046 324347780 877663964 134950221 753298243 213680260 590963687 710486314 794342688 559143287 685269302 67108307 466487934 733837632 891901613 429904882 988862786 974755363 989547564 912879450 917570762 131599934 800176889 31236896 180256169 464200289 540095132 133963062 925186130 132240718 673360723 893101897 902023570 993154320 995134808 213733036 310911447 629935549 772873996 547617562 898617847 60218454 378804139 224500770 244130914 234217045 345002342 679177733 866336443 211577156 539762257 106961819 150339275 231312639 592074198 720636471 855606698 341386186 444932953 86000643 721361532 6120443 44308178 162612405 782900594 769849194 867873935 889557056 891358875 183623058 528871108 551346648 623500394 635049648 837610504 662234746 842975644 702033485 860620107 675180743 687615300 846886959 988714996 485901733 834644955 123860625 321008086 680538210 725551134 4287871 902519187 257800322 841797113 554085515 770475112 844310590 967941018 853359840 890026877 229984825 655257175 758169022 892480636 261887878 933446951 499698144 702253954 577148983 705796181 724096783 845459006 807178065 837533654 13641665 88389962 854660671 910207698 335510325 500691622 663620567 865769309 684584777 791947867 551139805 730468031 787221284 906577893 542691908 543735991 412945184 915439114 555838394 820212263 541835449 641879780 595944200 754348970 88978226 234279903 188006991 539284608 230055672 770361904 248786305 954411276 690019007 772529699 124448755 870492420 420003357 868838093 80964906 891155503 511907813 869181337 602783897 812058956 813045832 958396979 285744381 295337739 549640962 618736987 900425466 910425196 303631715 989126221 165510282 546190158 535758867 677541979 890661713 916982645 899915070 988074861 174998291 562118034 467439543 718151156 325385756 415005028 929226911 988933698 987822716 988541232 734045988 953099916 297854477 460444894 470252409 867323144 493191491 939164726 878069329 926345152 85107654 487698688 585246730 678250148 52052071 663810922 556425150 732019724 93918816 329134695 915249212 919683766 182855674 397510427 78436702 177573472 538727282 796509079 570937676 593255327 319777965 537136943 664260108 813038703 597993002 948292127 554541959 769041682 426825739 618544422 540885729 919396403 918563849 937476949 220165385 251800291 617013325 967912795 971057968 992615552 767913785 868035943 290841272 391967120 236617105 460083275 839428776 855898899 624561563 789908779 524455491 634349164 356274157 455525134 4481755 92319445 958420767 965021947 560071157 710822350 968016259 973822536 288544088 802948099 517483323 998825554 671298364 893123151 994758025 998077658 183058932 560186904 140658835 434894064 581367376 833907089 26301091 151537962 424875651 965502701 498204864 989084501 762395855 990218562 920987754 985961870 238581690 283572294 739111571 762845439 424700422 614474702 241895288 969771095 576097957 902223819 692733509 899943067 518345666 592909274 239247673 441020092 164654432 706853020 982690121 999477993 735911413 969567252 674061996 735533984 147149725 727605603 996253690 999370898 706186000 849748504 280694274 387500410 609930833 868592633 283125895 353716839 207875320 705873278 781063625 958031251 490194714 955433536 102460025 743271569 813402947 878220259 13477642 26646735 141214406 319674507 557480286 943635774 926151917 931090748 432941273 781243838 703505512 971527396 73658522 394394281 854965978 944375023 916711970 969970883 170826125 320030543 560366651 671572526 499664013 966012079 882761656 954741423 705552253 789373182 913110634 947337229 408965068 719931753 178660660 289585639 225900860 951064064 158997012 848487176 458576274 667410525 301933216 482785849 655288806 706742240 743600931 896842053 706019729 711987871 252887245 854555014 534170636 879787345 430417295 571389871 249409121 646647450 133507237 340256503 684588639 918547132 776627382 870483938 394854106 878102722 871328646 889721140 24249931 664133056 494667941 910571766 627235998 691581930 193668240 825355076 799577085 844081058 889137822 964986352 513124722 894897876 824562447 950090792 880110927 978784140 465426552 989888408 767015619 814030831 490075451 973937486 915896668 971504027 2136298 575058342 369685132 962826251 494147224 900111688 654779119 926473919 589557184 857822562 737599834 937306413 850007299 974974533 90011887 314021947 649221684 666557483 456654002 606590031 257299772 868782363 133607498 491717329 321204964 848538937 405395981 872301524 297374769 528731626 404414858 822183969 630703776 947465085 489873490 871517632 194457919 407152805 122875972 154690949 306942427 767205649 149435849 367988228 864639965 929420447 439681734 623817726 737024202 966686872 162090423 856364611 183214812 295424001 452024264 654101681 961403869 989245988 202441807 517906738 769236941 797055125 786265072 798198903 329070237 968400156 470377691 495870268 17011583 349351297 898819704 929102250 206123338 252103718 887759761 982584879 178856568 520687877 925756402 962768615 350992498 458784017 743282734 835754761 756517262 990728982 991073115 995581124 340933032 715705345 261211319 531503175 479547838 824631261 796018710 828353853 24694247 809730586 751815626 814513867 419273499 942859253 331688948 596482872 598608110 711116320 589984370 623061014 269178928 918251961 875263416 937991795 221377641 775357291 872450087 972303959 75947172 387933594 626624041 876561085 684334910 987811489 545393383 718696961 338979768 942583869 760459266 945535470 558270250 861866434 98366026 627175495 670748790 809165410 535512538 973863045 740577235 825996873 198677103 990238897 574381581 629032331 787658356 868476984 320501576 634007006 171310197 338848935 427818351 791268753 658286589 798330056 35061659 968089201 312164271 961606351 926273195 960719299 396632755 556127820 676033102 712136817 725764153 866191105 871569592 976767373 539766780 756170892 742367496 860373623 420300710 465347247 530843723 610080106 409576135 410710645 404371189 953721839 482629478 978323156 129454693 437355592 193389977 805781549 412724295 601156980 807245326 927083607 479700077 810767485 875101809 923720580 771275190 917940278 203509459 307947596 189818347 409867314 253397346 660993816 372652657 638752880 416846128 627618442 721416012 784529762 899530696 984430730 100673033 323401266 960790512 976180141 664730459 927271493 591491997 787797465 581838076 770677321 743552534 778996226 15556979 313343856 700894825 911860764 830121989 964182947 126357636 834074010 980751238 991911542 255664035 307808422 121443509 794586699 280551168 695812187 977144749 997812095 738020157 993720342 711354863 772257551 887545994 938303609 821217444 925822600 783187370 905438952 730503522 953108992 751780465 975449304 353732578 883326758 38267081 541426038 900840530 992867483 349949251 957769614 616073568 919940049 920084776 983979442 777868292 817936747 866662694 912881773 348780667 456007473 238557063 919454770 483869093 493895460 600451520 759193179 90611734 869167849 325807626 553618777 471336505 498364741 248826565 284571608 535378988 813717672 725324280 872583500 971968852 977011068 575276683 945648593 654326010 782628804 544632591 836520867 785195435 896704765 415998823 624866531 818887721 895969278 789072589 858855232 562671508 904792701 264499669 842013255 620670142 701120009 508707279 610939292 696103017 739798743 73913663 877188896 184295996 679366019 667824186 895635977 536703646 880794602 431103045 641509000 411667331 548939591 984499227 996963810 731653565 919061295 110796006 306731021 768227849 789398498 508218008 962829955 904478115 950075107 48338910 761565622 518171059 712889301 552713211 890641086 10029266 577716883 161772587 667871954 389979397 937748197 420776939 980594539 684203316 997514851 763747920 867156581 667694224 975209128 65260179 551071396 827155397 892332331 763173066 853327657 622839933 950297924 264414084 940411129 48834431 431702983 230630474 478051202 623831944 662609381 163723776 446308787 58320385 874259348 616800627 761586607 66066 447853731 122791940 301225622 889192643 964436775 275271278 448681470 212941296 965023718 694082516 757293461 965943277 967933739 797731972 956028774 228879409 554392053 109115627 977106885 804429064 967434514 622347312 847278450 381894693 620261852 681576442 764807793 273863795 564525423 87068146 718451364 108899281 968452811 419031615 456337498 548456872 644768351 145406531 230666045 397941298 838087863 822713869 940388354 481948671 622221119 606028616 792304702 703907661 927992597 464853253 616869195 741402063 979243018 375565686 387755557 864975034 884298666 172551809 670935780 190981374 234603754 37065242 692446249 581764847 902193467 744054432 976453464 876569660 912256780 794512182 921327895 598940030 879592936 767990121 841788908 699624976 746956069 688745204 850785873 49962388 59506863 180218598 793125050 229882009 277116991 951405291 975931471 67577380 658567750 204065174 810189533 441371221 767702093 263454829 949804097 345194303 900045640 822991141 857850773 400756865 968032503 190537237 927684442 916721815 934749886 398415915 942557798 408084507 557743562 79592577 518129234 596852033 623248923 43773494 660284347 247526966 713022237 299239461 793275299 388423948 587533536 360894410 650695757 139517300 683628065 961839493 999732671 14026302 298290175 198902276 469543135 77841823 814195692 807319357 945822552 43986813 162743512 891143129 891990619 54082696 189228563 778714811 868600842 312766024 850421670 150160912 166464852 100151323 866851118 484692332 949830367 511690680 883388807 402164682 447537262 953223708 995786567 27898074 565756981 427978595 709875609 677373986 688189324 179364569 697918653 895514530 899696019 725776410 772148338 301112438 564001037 286393101 846648259 748255377 823112758 996266482 998194481 751973789 765362638 214891211 358310735 644587422 818828651 910048385 975173310 288961209 681134164 128072761 715078913 692557290 891023687 9626898 461052950 87003521 426886159 979353307 987028838 760004763 852377849 502281532 946764454 374718295 449848118 823138282 823215186 991362096 993449552 143046122 844380286 804307612 817433104 963463685 974161810 913317869 985281598 40511854 340563683 507788362 743947061 42335980 356976917 427101054 882250273 79565640 779908336 872682525 995808291 491226867 831393533 491076582 961412600 952666983 970317788 582638540 842975540 966032673 973403881 248585564 917825492 142090783 276520302 791521661 867135224 503881553 748304982 481360079 778224976 647745278 668064310 797270499 832463747 103684421 841625869 517713765 672472123 436213477 943912866 839427214 931111938 283942911 792209648 141326951 307237209 445261727 980004280 646155548 834340270 725690540 899209391 961792406 997019661 968224660 999989527 209615355 256185368 822876780 871552184 295549276 777919652 753431958 976913614 828580921 996008959 332919629 579513792 959522100 989064311 434251327 999218972 813905570 818579192 485443325 665049953 203526055 433139532 651949530 931158860 773710569 875223294 624057252 770941108 660646127 667682013 743204081 988642302 878411646 895105611 507866773 884881397 710326664 781926715 703681623 829651519 741061764 992954439 461996120 585208550 685432101 909229999 154694695 257483197 292425750 990248402 609402582 758615102 972359601 998731673 292850110 333752197 349106632 792535511 112895070 241779533 652381336 822819576 178793774 356750767 700830613 757922870 827996802 904081789 529043144 936732026 426080634 974126672 837887378 882027392 666007274 803316292 502457644 658901394 582008533 775313311 338444919 873661681 499295662 956908958 873362452 918912995 82868320 649970164 615588757 757239741 637062956 656592515 321049302 790317540 378035237 455616278 590710692 671876358 41661087 776380821 157590971 752608627 875950885 889740261 752176705 771677255 706121037 737398309 225640994 856464193 444528208 981503159 200128089 426038881 990830885 993715036 842933507 952135961 845173129 944796682 210202125 678412007 343368886 575346255 526082360 747012446 690738526 793750115 960130678 986712439 751850376 925411091 848973694 877699583 830199302 991810717 694034444 821865183 413612756 481817765 49913707 425563497 595054196 608754129 682334382 682883342 634178705 662042887 592052207 637367949 505222537 553925624 895192481 972878411 848563913 961955573 329348622 702912564 198684137 234554470 109693198 139725482 205854458 247563846 997250990 998626500 985911554 993734336 874856673 913008492 66963525 331212632 580774839 631564753 686762888 808062760 325730963 829531822 707240810 979118148 893506470 935628282 517501010 840310646 534635560 703518792 472050625 735038525 802331708 826937603 578552051 911473075 454453842 626096563 364974368 660846289 332249576 684606043 699341610 768888745 662971088 871130136 578370134 926177890 121136947 985471853 586887917 987612649 238116633 312629497 437934767 594287169 983063210 990125281 307131550 503741619 276945688 892328636 771496615 788255542 242668521 785087882 547173163 974885341 142053608 169846090 537489564 542685964 528555526 547870629 545838636 926973126 257670904 923473478 572356176 837975344 150574710 772814328 681756339 765959989 29681405 325012840 592763136 940967298 490587563 584665654 98155091 368469526 532847639 725633745 408058875 641152776 233577033 613679303 180858539 702788291 839537151 889377472 617785240 706880574 36918027 464043983 751902227 795699961 263764167 721383001 985666333 992143210 231749824 337607755 315351722 537922046 71925151 481201581 616342824 623760282 176070030 927163873 263648140 522685740 335305239 873531254 419949812 622326042 574563414 807065993 322254746 795940437 294328735 482812154 509778154 778159512 482886912 499754913 575675153 869725575 596057295 923320902 735763659 959149817 655335062 726837340 81713677 88859498 811365 822007006 406920016 628819291 453571013 588774509 79140738 588451127 144838535 149860187 608235907 952958354 431899518 452892602 771906909 840522243 429620853 883344461 741671315 857667547 645848624 934346689 92116283 886800562 832486674 888689557 62357175 262233003 500290632 950447791 33268337 119436144 161685330 593172439 984654192 989052319 661145029 803200734 380790354 787326021 124775432 742132324 856534110 992337623 442524178 756078885 230109166 984687870 416989028 691699992 676670864 884663442 401887505 741797194 993796229 994379840 275402336 497225335 793578032 918644609 569793323 974581109 751394078 937517902 239215771 502663903 896706311 920269245 204863896 689645643 527092262 582227411 827737773 945840945 91124753 717472957 795389721 807802847 337158200 374097190 821063291 904377244 944638470 958388472 155682715 500226253 343340647 740343514 232309577 598746524 804408035 860762460 672116189 726706558 739822719 998826132 686041982 873159203 919128075 937147799 123772204 298563601 906725740 963142385 941313130 968930316 850854737 914894073 865743288 989563948 102990879 488191033 744135355 755307589 956470424 974605533 249422780 380806888 335276819 661047795 76386044 442879592 449254541 711436771 506401760 864528917 225903163 339506426 894360356 940539358 156280850 707338053 930055893 936565637 882279410 943190959 131807750 760593535 406672590 426139864 979159173 997154490 197222255 211026329 953725293 972959446 511628456 514027639 635381779 993489369 700120238 780088592 347769868 974454064 543889585 853691165 587772988 951506653 784827379 851543943 566063597 671137018 224367568 871066955 376171260 783042701 957092190 981808138 942593455 992319490 866036399 902750257 530108181 666953030 522015144 703447410 256567099 485100908 300580797 833191403 756721004 932195709 551019105 583456761 157646734 881280542 801211344 990010426 698922644 745850193 224729858 349894969 630911086 865799683 492090763 910526339 942751290 985792731 889143586 929224833 825509019 990043012 745967730 946380262 797576636 890382469 306277776 316860064 702461350 830815315 67963985 250393407 563177866 867557023 694246642 839506034 940293838 950008128 666242388 811134244 806364699 910848375 671860071 842749806 579464123 938199460 368699262 986831541 765867190 989569169 217544346 711445066 425324592 736966328 984053682 991022161 959434717 962990822 750333267 854232536 90400659 644849225 435800897 588605780 791844231 945548199 274694912 524372742 334174067 384858112 650802636 803294510 477520178 813399011 432174568 910438756 654932351 879843164 778403123 899358850 966974206 973883549 881768772 997384803 820439010 896065339 788328516 810717431 863822938 918532803 178686000 655392643 709415151 955608465 854957141 895518782 976278511 982073542 382609988 414028152 580799735 900038845 365543688 748039286 457323419 472301594 622655170 988987753 552439501 968367898 122208062 835411835 814912304 988948134 976414073 997880849 689786303 772795068 179468605 937223869 365454765 672732176 622967283 932510837 675813160 690880448 897045338 940762506 958881921 967597759 441772795 830539567 179406467 462223303 959493633 978597122 811733065 954095383 257628866 444739388 441366828 911554391 370846893 401821614 591391463 742348489 157146255 309174993 960150924 962925131 907174449 992600182 900216892 952610851 257138140 267210818 54713309 798431796 643707710 982320519 950783226 965371406 602296332 690171706 122039948 572490253 667514032 674374104 539862799 742106480 395740635 643249081 155156725 655542738 644737437 847829984 927454871 997596131 713772443 784665394 390852181 771314729 47216764 645656045 804445591 955983429 564349939 744732537 671740460 935435891 242267341 952397164 950854927 965642541 161581751 391147165 382840578 575674607 839919798 979796031 869383551 996159082 632806351 694816507 85679689 988120131 978459939 999175648 432434451 934951807 346817353 792030994 48875961 773361332 359817060 694469655 169186361 871069165 759291481 789964554 904649581 985169837 711894216 745033662 519503887 727630997 321212910 533341359 852425290 894549226 952776655 981350553 763490307 837955160 669841265 696632912 224898510 780754419 222489485 834424619 81771041 587459419 931599035 938615672 947907166 959441339 929929540 990496977 390896891 700816673 277145616 627201831 934756455 999534052 771677924 918096415 351926986 961880007 699554139 933796516 144192956 521969362 369402151 864561145 761744915 781985967 321604521 925126694 892828786 936149935 108056351 888789253 695889322 895671776 805272377 806937567 818361722 916417108 283533288 370197366 322433546 835178890 72446719 874796664 43664986 362061945 435277417 473557182 668388883 989854145 546962816 973232565 262603686 393665556 182800173 739384388 9381421 746983236 219054587 778007837 834480236 864929877 622996970 927044500 255576684 615481289 479664382 947424472 118131710 918318349 588959222 668936091 279518739 338589287 677467794 987991285 195115306 981757616 919564627 948757026 288472402 651382564 719629195 777569943 233809639 648770111 847314952 888802323 170022918 926451754 223864579 752712065 245139695 303525058 457535024 980606735 464529282 579525837 618127572 745465013 387340354 504526866 432340652 624717553 412695170 822381544 609059650 668244165 872394089 997399972 960749639 986112234 706038618 994455767 138935848 301919531 557534490 624355481 313918050 560552660 373011170 397854803 591460259 728505873 828793707 862842086 408819946 854509766 140524734 423889695 872055490 878795317 196573460 463397833 774714918 848362138 305449683 570646818 407551675 796248093 972396490 977065604 60208779 331133760 991472556 996883403 903844776 916424472 36117979 681848166 616718689 765487967 90786498 689038701 100230841 638618720 239931568 400186131 240603852 349037678 696216829 844400447 54777167 288730103 206523696 977284216 684296709 811162239 450550534 480316164 457897464 810361498 308512144 882817279 608125508 968504739 813285859 875426483 160642532 292565253 97019358 859392460 674300681 879905960 475397736 967228485 953844812 999886180 314971351 423991271 74779816 179483173 254631951 965068793 558251009 671776954 887605526 941821576 127626109 425137312 242673537 407796001 608656811 640022358 217217848 879759086 220839304 344340904 285408712 329053317 349456640 571632983 367087796 730136143 239193955 273063394 654317700 911517751 925916380 954792209 134158428 375559065 298641410 745089263 641208684 755556970 85638675 582449735 152499977 707709232 137559753 325389718 234504763 764061897 14530942 434341990 235339931 300911679 758931793 834488137 775276864 830538829 620984945 740498612 573935275 891498192 808850685 912922657 832795586 896617806 889475488 966381249 395507870 753540591 506212395 781247178 12461334 996085140 327178723 646777466 587015683 992954860 199300154 572145162 706586681 853286385 776683104 863563146 795943039 991117699 253413604 270806399 310861063 385476177 37158348 690783969 3494771 903845570 492998258 520134477 520281221 932517208 673063658 684762991 180413488 834647499 367748137 974903118 630873294 786947170 168751887 635453939 219903093 442223694 940518063 998098154 923673655 963306380 304698765 614705614 939456608 953706602 677143961 902183072 58385346 393538106 778881092 945021627 284324204 709692558 444168914 811333934 786269293 943671251 282302136 941102899 583962475 929785106 272822443 522035273 348758309 991062686 201107429 709367152 488638232 536843351 543732714 811866537 534088581 697468156 679686640 819089747 200611187 316891841 835652128 995799616 590899822 942950572 765772077 891127574 508649953 615235080 421550815 915834744 661812563 806718031 158922370 311420318 53943871 83044345 87492542 627105742 348139664 883169115 33192024 891127506 485149198 854218351 98022995 195028587 821471850 948707988 57494608 919310534 103560196 930237585 401252372 606700119 620056120 704182032 93727209 647687679 359460903 752086516 36662110 544285436 367571441 561476112 83771060 954700183 986459479 998000557 643235515 755858756 107390295 110026513 966332567 980850191 807430829 926836102 39103793 451738176 174555917 255614542 532359066 705277412 409042727 948287589 718029249 914605408 936665686 993484293 941843314 946486192 920355890 939407221 191134171 393003407 419043043 932796730 625479830 961495177 270982028 623416432 577177602 822301255 620960204 623727622 759292788 804442152 9015723 370608212 457468361 980222815 64015670 132154237 972843483 987484634 648267291 908444927 230876221 698724930 129744568 897618845 923425117 988670579 382424692 418098514 805159151 814565640 428335964 573421432 350964684 419598307 929425055 931680276 552287995 858544191 81785203 814091857 876130986 993098963 327168665 652251548 278115418 302572634 982035039 995849661 938571786 950775889 120459491 907092509 731856556 864339235 393312503 933468479 988821136 996011859 622811393 930841346 552294910 828834130 102278114 622039612 412057044 891368080 743279104 923535718 344806857 983016615 588009811 806053416 291250868 915480392 228853945 584737887 276198213 323566650 558479463 844779583 429127100 752249887 598931186 928841255 356460392 830388398 281242069 365651585 629721002 630109477 106007051 193800138 634947866 933473499 137937417 973789491 212732545 481686823 152717702 449138581 246125984 470019762 108594349 802583569 590663652 969801343 714323894 770759442 16966499 412139888 228370147 927680217 820606142 850864590 697777174 841942058 259003420 535655869 125461919 365979372 832493545 968819902 962670641 964647910 95285301 701649622 691335838 851932899 461470096 993489792 931059765 968039740 12816676 646356595 198394377 611204853 22724390 347600829 53998841 579963801 280253299 889094686 949077778 950099359 461717410 591958775 300484243 506746694 780325135 871388779 630503672 982497715 666538133 795215397 142609526 952519385 280797790 421776013 144665294 795695359 618957163 715263257 933661308 983817521 678269902 747775653 248993655 813462424 739545139 929599129 711885499 853484042 913909688 977823929 230533375 562786404 137742579 418522639 615275031 903629796 460546450 472062883 288298275 401496177 855268 817424632 893201263 912476925 532176291 613765619 146697053 569862575 875173707 988907661 764777471 855866630 607094012 973632242 782274483 815952634 789699254 799359162 312776058 774807619 473284544 764562886 309033102 797985918 971213514 984147849 698596634 951802241 997364648 998308214 771051876 978483758 364547953 397237460 414413980 968176611 700831363 952601563 919622044 973592834 167017946 608692959 485459690 839042965 695952667 918380400 682867762 762890513 674337549 809131412 728796541 955432492 614564554 879925706 157079755 641716159 356213803 740460839 88456515 839625817 578322394 747020344 715847945 946198618 699893155 746917895 479308882 975183697 622884867 626424447 702692993 879307421 307669576 884996017 365362936 636280886 818013305 839692142 37197702 510121690 659962807 891400211 191435595 668454076 634442244 913224153 413247600 761365743 607866216 753661253 823288229 965741261 567932887 579280192 306521411 922430864 553598893 930002295 533565408 763237708 68783687 376828362 789752564 848170609 901487460 912927863 626802722 892350425 438631465 972883031 321050556 447827789 32675545 435537007 841483141 842075653 3827518 891054991 706707846 828433463 368184057 459466726 695038915 816305471 765283354 989695399 52728127 738937189 704659426 883971297 99669813 928496851 247835282 560075508 87203288 499051866 86411869 93771299 5642177 440471899 52605608 551088648 69736657 841835039 610394214 715221130 770301859 861904873 715289734 749944837 905803555 962351774 725536509 931547589 974913436 977485774 862165857 945723452 506605516 778292517 619547683 997529865 235195319 441181664 83874434 674696264 104149241 729992934 253362602 841882806 149677293 368190623 372979733 999560528 3263309 602210451 954097059 997703312 302224284 725671797 901946336 912721752 709518050 921921065 248989219 862413555 755935323 935047190 4119023 157838540 193373750 224410946 684579524 970403801 745345540 875888620 841667207 944573138 545295367 876431067 231170396 716884132 89232261 123608207 962412232 973724640 949176765 992065363 114459413 308112349 348336193 599198685 179188404 223843945 804945946 928355288 450333964 756538211 186339123 287701737 805672709 940566211 102954698 193400558 764537754 977020705 450770269 652834499 23695729 483217361 799021016 872199784 503182416 563918684 731202688 794155166 709231917 916353244 903667373 987637225 325340454 373141270 885452253 912665926 998708852 999718901 928098229 963044450 656016764 946734556 193415054 289797021 542949478 822584945 85336949 861835707 896144800 924492200 39727378 57181334 168551138 884748337 400258369 929640722 179917014 515726587 843165956 966954703 934504793 982392519 93323527 348318316 527616337 715628248 301233268 955108973 724849930 825213723 354990150 601212820 311701034 512316311 477984762 788801345 571547749 814273497 236227218 868252317 69230844 836479951 728395528 892911493 898223663 931110260 652636880 910557227 413574913 776164211 878680939 936446941 706076579 892893452 247019806 868063223 186081555 843669670 136628225 199702879 429641699 962174181 144642342 711551617 705320811 793137324 686427746 821590468 518216349 978854115 372442374 420165449 314858967 987215518 633000115 939609930 184494480 380139830 665380589 871616393 779136925 988709148 622541636 951688806 266468407 571567226 288234822 636967769 341435453 981040274 668083700 965954580 256518622 338186970 686686204 777204772 699003797 888157931 536069498 979789925 935273065 959426439 716026665 824267483 499903987 692342623 33959601 321076676 731546640 757428752 716439045 838475800 966388491 987674854 98290755 899678675 700606667 860060011 166923207 783797676 335091359 606472209 253057650 658634934 735605438 874275425 793873264 803734244 979295620 987333334 626725248 899929172 389110154 754139299 556072828 934141219 481382677 999564637 227463520 321869199 596419622 836659835 305289705 470628186 634060912 914276842 396996429 805007715 405944461 703689704 555222953 591242185 654240163 713261816 745886388 949938176 371435907 941071838 14510247 821138228 229329450 643609375 544486485 967580748 994204256 995849275 399221129 976322590 672317817 781036727 562285912 752526174 549813726 753148754 527395103 937061044 294522415 559498020 920911465 985326967 104625956 965274395 46987007 934891287 381788554 874571285 542882515 749422806 417867030 599503042 112269509 325685202 998311101 998394372 183402652 887053978 814862605 899156198 518434761 929394026 61802560 926839332 283314465 499523837 402741034 648471799 712046864 971724273 872001860 933977465 627969724 660933148 312279646 468188405 247749132 302222024 354729725 712895743 499920400 663174523 524048549 589717984 792216044 963624505 975185696 988948959 333225970 558340743 954207240 975668650 566664750 766641422 526806730 650833548 480173907 759008457 286829229 365044769 628370508 973930900 184608144 285549192 327270596 940881095 455122775 509008066 369602218 873094994 274822077 661730201 515737148 836708370 2985733 184426643 402451762 849923126 854158101 930443413 217955162 982895884 773857823 809428783 621650441 907574357 525580390 556046370 649119600 860190557 177747973 840798387 709634658 823058066 122508194 706661476 660449383 891827137 998452696 999924971 262770492 784811254 933997067 954559155 276252752 367681829 970895287 971758876 563143118 918953109 481592982 867843680 90114866 227894805 295769844 816524145 175492541 704942954 335228395 340170780 269041986 743412703 320352236 934923282 923129578 984799390 552486930 827848551 104696554 377333224 42671034 999469644 751739234 790565670 165852432 686359533 903108408 934798179 956617538 984209146 614733738 884952473 233262989 980222065 179085388 247540127 264420766 443897381 266930295 779653594 582539388 999542639 941233396 956537242 592916700 742657071 526353199 645542375 598923038 629781830 646319722 695292624 318368512 924402749 586637052 762660759 144087918 202349930 150449094 626932658 992720158 994763271 114322431 780694421 525402731 844755976 750107379 825944649 579460054 629575059 647880839 733472801 912666915 931948985 252141343 400900577 213148834 275280457 351272127 573860704 71798221 943941043 603506534 768190791 253659768 471798707 549335261 557508115 40215747 877932195 138208531 406676350 394568800 921921376 301345303 436605395 844876796 991230298 815818949 903972106 287562647 374217398 893293503 964943367 771086329 791997940 631747930 768176377 59373918 694386204 599515498 745101261 237173653 759999985 62266995 815440892 351070567 747607733 607330838 987520836 450698319 938363392 167575689 946355715 570391215 845965438 502732456 767127493 436387573 924369287 322473633 402072127 658955204 666025693 225765212 799992665 519792676 655918690 414754914 519733555 56480389 906830587 499646126 507905430 80057148 695437591 684233520 741013893 928580702 943946862 338370625 401444022 428639713 473838133 21462948 296902508 218931855 464073838 59013324 124730713 698789135 934814771 544722113 665224236 844800075 848235260 601189394 829320560 71437736 339072667 357934779 864133837 483495323 853393484 171055813 259856601 13014288 43751330 663176700 885731617 626731364 980725373 253655910 658953454 717122622 930560300 100052260 661085668 64058574 626829126 435033871 983817496 651790499 871177957 497936078 880790601 221847131 559738797 977808445 981550500 441708280 470394091 668601877 787468864 810594486 835869202 143299980 977876711 63859661 787530260 405916696 651507464 816633302 921920367 327123950 690626751 685969309 996613810 638626900 836501791 94812578 666991323 112966329 163220620 637103005 950007624 270753760 782801817 496099621 584802734 484916446 740685620 643613514 731739789 529916576 642540606 266259690 631427720 892402464 975258079 378571651 827358820 81964365 987028126 981104393 981371252 382791425 401321747 848705283 962339334 713825443 998272905 719932072 914124925 285282662 752222731 859673445 859754110 779966004 895924624 948873234 998410208 959139696 960858690 665410177 854766427 737835835 814861468 631407945 805052511 504602752 739706445 520014214 766799641 828645995 990496871 567368931 662178063 675176700 712773207 498376528 645211150 601522071 930500043 384749568 983849096 945610478 968901151 626146946 846416006 251473821 256863918 560849917 858218634 224135097 510539501 894847492 941694850 150907044 566081008 305668967 757362539 719284839 950396923 697861114 870806808 988327336 990232411 688917740 742969750 563327129 843950717 791612415 823225433 746170291 990241785 894586359 979143715 230672393 410956738 904628990 948458617 249742115 491659048 295456004 321440035 6077115 716658005 902623890 947502007 885945496 928130172 705725659 764463920 170467408 186947497 481087850 843057396 652193436 991025522 349136127 585908839 870607957 978030328 913415693 944997164 160916665 522214286 871979689 951547766 591243817 855971316 207281559 403367709 415482665 881046192 56051028 586434977 447423109 961421418 676732502 711325303 955012063 998050612 693296755 994626143 831963771 969484105 363762390 480437655 679720168 720547803 494402602 821041853 53079073 181886537 719605528 756430764 557337211 778964530 398018906 706313581 552268824 944430508 990714827 991189785 625646863 772703027 313236016 519756203 313245561 587808435 521514112 800215571 843572368 934439481 101106142 880480278 369931722 939330702 345559784 952885704 676481139 855987271 392695399 851826783 224582262 524933753 141065769 977840173 830911073 932633655 347221022 542456345 220239976 433789606 113864612 521514670 40098578 219268632 491035551 519364247 516025341 570593981 976863967 988274009 243491798 451837820 865328717 866610420 851525289 957981842 525104751 671602520 276817865 555741269 870016326 884799676 83423625 397818034 553461839 804892584 280013948 674966229 317072811 679690127 690777257 923957510 957537859 975553316 273693123 858676403 282547203 666076316 919656827 946301399 704068630 903348394 212805307 419564706 719673721 978667932 526972394 659703025 718979515 975129731 785965369 793329850 218388066 329287525 492415412 778529998 363697750 560205921 207803952 647601365 316210299 920875900 656677201 755497624 767899434 888643495 775743046 951857166 612643752 704414477 483788957 566272636 562401049 969445005 565754801 979684699 46390935 709491129 692497519 706961288 169412915 444389835 928831783 993814090 235500304 396432164 45525928 96311260 482993542 618997187 122378939 321147635 842531355 879070361 430436577 755679549 780641554 941631054 769084834 785684096 50051949 285014197 489936981 751924910 148322539 825907373 81267080 322731697 729397069 967079307 92008915 411025135 16762164 81918866 546492257 962860407 311075897 557763923 873910350 998613815 864665855 996937142 783267564 944067767 457369630 728584494 828185025 863513558 549463695 595915242 138043336 565882635 201859975 910622136 373903279 403487084 647105010 720777522 671659515 893882976 900758945 956998295 154391149 666686860 607802282 876649079 46182104 416352049 826838561 974502059 269347391 751850693 755012748 927225565 140677171 572290939 254289206 350728830 886060091 959988394 808228452 874007947 961285624 980486190 582604850 966876383 942785440 994687463 162591405 690199478 901921583 950572312 323019031 568867135 924720389 954168865 964036430 997339932 355934787 784743015 651245090 809593619 128269075 645976073 38983876 231597171 652902710 783174456 569750798 682803575 939813621 972254840 418094091 776232350 869278425 904856390 601363940 859901576 387963174 750302228 119950666 857797001 664518307 699890708 330746815 911709501 221795727 998566501 648162344 720320585 568528891 614035776 450117260 876190054 70557515 829491397 424296171 768645415 100131879 479838325 58183158 827673421 317311901 912132756 654133180 971024150 441497132 611194098 942177266 945371314 972740201 980359546 871682221 882066569 784185591 978099860 252258886 609378240 824279824 925102239 261368977 823752680 605538540 831765523 688804666 808042700 858625266 943724043 177032816 705629694 59333173 247541725 192898395 733610580 343651085 382240634 38116636 786258604 322230520 700075574 582047744 694705613 662043576 902910651 842995364 969651126 85372432 925102346 95637465 184182026 378505457 414752639 104165598 617473694 84470252 237758450 813179467 924030512 549381510 860603923 709073686 972605779 409035818 485850022 688534574 791583758 475381832 696070898 454833922 863935201 479933987 567276480 789104449 965776453 56586173 487022356 863998094 887250621 434035817 945411846 417585842 608729448 412619027 477790896 872246364 902068663 196940721 967355563 840341054 979979272 89282336 661961396 658164480 793130587 167319857 781992176 971023955 975884960 306315371 819707246 456520654 725393576 215375754 412168862 347230094 659796330 831739555 850593683 33254080 216053185 906028525 966249008 225409258 420372990 55584744 784867521 488946031 597312413 522622508 705516699 785011033 819018797 593937908 639981722 224421267 930821757 15606891 471158185 434906736 796415571 141470090 678874169 850646861 922594930 771119070 926355339 810383940 902871258 421320261 552456220 993608335 998265152 63931760 450547701 413774375 733199052 315281881 420847075 374502299 622505557 649640838 684608807 34785873 559321823 328246856 471923669 423296814 919238183 899930231 948205818 872002777 951812324 212110282 313181794 65041287 115512973 597454324 920969515 723786043 961080976 782309353 823148753 669286088 916606056 581078149 970072324 52056242 436016886 767469414 982515469 818907276 993977308 115570622 905597304 805779835 895374926 476825871 836676790 203556504 500576970 268269491 394212188 222186766 641339257 365008905 396601566 96539522 730844758 398988818 670841328 900190799 968658492 662744527 771969280 783497783 799724425 500194336 651868375 27737670 748734668 134854067 901396512 553905274 664975181 415071933 705435241 225419280 979585768 371461831 811365219 188936168 961636845 505176365 861733007 45898696 87791566 763265777 943553490 962898822 973921662 812834612 870832955 484592487 596797446 145958594 304560537 212552478 242602156 301711339 378454064 176807645 616609902 539336899 707246743 739853272 740640148 915641370 931019136 849462079 976123599 663687873 838723963 363786900 741892462 477732751 630358717 621501427 862254868 65470150 95365345 819406258 988668631 492183639 764790905 801680345 899941838 752690567 955431685 252497754 259568857 872875840 920142750 863328102 868965020 350834532 634818586 351108966 516986402 698602565 812321853 550471021 653002082 248653123 374557488 700289252 858987627 520335409 928579133 531439254 561527719 305358932 755283761 241060063 390787897 653176963 947523001 463099340 943031651 865876710 893692887 647008216 806955811 147067919 244490793 679470399 959537769 884855858 965017433 322936005 599113701 666497755 897200461 479134913 592527115 112157273 355086370 206597128 686454434 695814608 776969575 174162069 769491975 749429606 918330560 163594336 333571426 641107047 648812848 729840142 986861653 901591959 943212469 194508463 932246005 984554875 990814435 40504714 158385711 17210299 334165119 987654771 991921203 744356573 788870675 339582941 394774450 232230559 261432000 939778069 998643245 891702505 917471005 799648843 905240576 65987803 425117188 855954174 967482181 705901270 995512251 774172305 809363217 471322428 564360681 245980386 987739359 448494170 722931193 849635727 900573320 223245156 764020603 566702969 941777173 429123447 998839363 965315543 968185409 444111370 632346574 26314069 96052932 110356964 186060970 282701677 813870355 643037619 728641376 167001296 877556997 823567084 876890743 100733781 237683634 811236155 858083661 646974022 819617292 510644027 651604312 70374149 828481894 290522781 956987154 55546552 750956212 507748790 936105575 526034172 903072295 840966825 904145258 302427369 436275251 410784582 767309962 576178455 614571797 977775918 988607024 795810876 828984259 73479026 389024600 404383543 769176854 543726178 807138378 735475142 795882347 134164127 947663112 780796890 953133127 761571648 788366765 649582203 868867617 271922039 577950524 894762718 986954334 330148817 540754794 142807906 654289977 959066314 962438528 807351564 918360075 473219783 605314462 877083861 924143600 867530767 949468103 208446062 851900242 816599821 874921803 354703974 452945015 55851018 320748975 122229221 173684510 379448734 864386161 540833136 924831202 501560314 651730580 585110256 909779440 780191204 787322643 789864659 958249169 664722020 723603548 54263451 760152163 262516163 764344688 830284319 878563236 832407972 931306506 47226819 305075153 528970806 592854644 540057105 781175450 218469429 946754402 570806437 960646458 91458772 969481855 623514524 643436812 816087471 910347033 194069547 847540680 917743887 987459475 557734493 707975034 151186427 546308320 323177493 387712606 869795549 925226875 253189034 297532612 837080764 842769698 724377709 904744413 786356896 880187393 463021936 522244031 180990311 207246183 599210463 972042328 491761454 934614777 530646737 576907068 609533322 910678110 710595074 852081285 594377203 894086582 770990944 853540792 663858263 667343661 322186418 992748434 952919400 954580900 107406151 356917765 45495144 339170759 713335332 884980724 637165015 776009124 246110531 488211868 475818129 664190743 231454925 348689831 247822077 489187579 326914504 588827197 560156404 852217464 159042658 602573846 567265554 812190799 870971180 969908670 269066431 881098733 189119672 761268658 147966315 697100697 957184841 999304731 94600458 178963314 903256911 920559507 465140442 798782200 816785454 863989879 207428165 818641414 451066174 825916527 384333940 980256794 147949582 304080138 61787275 786812198 793075175 867832547 166598401 810565748 149615066 556817509 759470320 827325528 437519431 711781177 784793146 960284645 810407620 915748974 993437475 994308931 455829939 540151150 917931375 971859785 994951623 999579033 545553822 654269844 605253301 884409112 782075750 876873408 875977402 924429098 780879189 834252322 129376508 592696400 520274151 754996541 567311943 693609223 579317393 883941723 499866879 965465655 356712957 951321254 418189050 786803561 14041054 851927289 25491011 809214969 793272292 835688386 13035505 913522933 140000450 511444489 674016780 694613979 380389634 720040562 855549322 860324257 228194933 522350445 743912595 939357558 742533902 758247519 288994083 599923502 449465259 719694500 454715312 873276303 975622868 985626116 317846530 919130496 416734460 775826128 794479750 834946214 950521824 974357451 989401477 994638443 290312576 876857943 979197964 982746729 846631455 873559816 663822030 895480990 423961256 862966417 255938578 887127757 594240553 917524258 444469159 510782559 725298902 779906920 797947115 930283980 38696925 78039901 494820540 859509200 468275508 949626465 611929126 821144940 766636427 945002416 442311095 788445790 679117209 984890278 753800982 979974600 822511014 869546331 202316342 273169748 303368551 699288204 645068433 794541647 308062910 679014984 30781288 117563736 194805423 359962158 895316921 997244336 396935337 611208004 429282262 559776494 256565078 868429009 913547158 928524380 660478882 955999094 695361042 961259407 426181542 686326582 271548572 623391270 616083973 847030537 465751756 911970465 10518797 855949871 791964336 858673216 676788897 827608219 282046930 713253658 489524064 739823720 13363665 680563041 350271241 499933041 937309200 989789550 51635751 222114535 752193866 810447797 159690684 255115614 334863034 938716537 252881841 991695053 900666565 985110654 250684773 448008906 254558501 916166047 481179592 625237911 185384327 441300333 546404145 903203821 926924410 933750810 916916377 983437254 964199651 986505912 245937427 289768471 61179970 364936480 175015951 837444475 684799610 960314803 416252333 581598561 267276206 762757849 524294057 680064414 580271617 689536247 314590805 910925473 902539634 960317131 203923430 291570891 270890033 921318574 441461538 507753549 209241259 238184136 342561707 555978126 863889553 897508229 231410971 273106369 512453315 848474907 169656772 964531478 153940229 712717776 519539425 921329362 527696367 735655972 262173178 503718290 536389075 878284957 946265930 948682965 317376636 937445530 35720108 645108765 39108596 53591482 345064370 921162846 754067792 855864989 312761920 368541916 646124476 717369624 557245502 565391093 817690418 986479174 768834598 970258151 940654371 980846757 118330371 760629155 404070607 912586613 781245170 800817370 441949660 578480467 532349792 985972551 724623818 906736850 389773934 899090763 946858865 967788016 383545713 907372965 439253978 755523376 368879290 984601502 74699606 95624628 258298347 302878455 337996057 569887117 244375987 312155328 588923284 694832736 472897619 924130853 452485227 760627977 819701939 944225441 78415881 371581078 400594657 406092407 202301895 400763975 69997656 253593435 36056600 375281572 350524334 448955278 981941533 998861302 141044833 279725862 41760658 489086903 673941952 900229448 997059956 999976095 313364942 640510877 218921828 758897165 451956675 678715884 429459192 486679237 844920028 913818343 352088075 528268553 715374739 798587617 622718136 988367671 158532004 321217710 387337070 801632000 138948641 694612765 955040894 963160493 497821630 934177672 78846949 749080536 700758250 976445404 707711271 994378589 205494180 782769927 555479810 594676117 299291288 471998523 907771494 919372778 117379818 551911751 656917585 733412421 649534826 976915904 356974494 801134969 872885512 905595304 959731700 992120650 173733390 728643882 841149195 884650832 324951130 353726420 680744073 989141185 292860973 451806072 387539360 618957896 139538361 747787368 943262284 999662673 362183472 958495419 700178140 858513774 644984084 953942530 900235808 927769705 969741177 974060072 918219008 982075846 922799976 955626922 472851428 973968452 936495445 988814436 575553661 695866996 259487415 947032493 612600544 861765487 755123193 827267816 857265463 977882186 88829384 877981941 981209398 997914047 274224861 609466433 557686554 747390519 524802119 588842188 379810848 577132072 845389393 878596002 406432416 750165694 910268723 982906103 840530303 947089895 886814029 986559021 580625461 835990345 365910991 860730561 634973340 821429536 453428678 912912549 643624386 905664989 746839710 766379361 252085406 489973821 638660054 919332300 289227619 971401413 708142155 863958215 615039248 647444806 848860424 939920206 526632395 645476049 406941336 464684107 567859671 801590053 139174099 696988017 702087140 789735087 168088773 438082903 521216925 833258030 412772939 712135898 534170207 731302048 543711152 993121777 672986394 821838042 395913069 601799570 805401263 938672752 124348850 219566538 727082459 856703032 813075667 937347871 753445645 802391957 187281393 805099992 974955242 994453514 686957869 971959653 627746256 803489226 869544810 946657234 381714058 862744737 463913971 591969475 79349770 892966217 706070965 821004767 440604657 907100642 770184079 994125912 408318021 872294085 28839448 90781640 937953565 944242525 906013204 963619264 499921434 848374119 227619715 730590356 722649961 893999054 35481185 509966374 831477670 962999980 296010830 463698837 748759900 843075532 76681129 225665046 360747589 808615181 833015644 966191405 936151405 988474668 379010940 641160845 380840875 777901705 826392435 877522261 795616532 802401381 412717724 453550625 165480799 681246869 543464619 616234467 759233737 949899163 586568425 669408835 524115078 604588899 419316210 808234492 840216085 911201066 29984764 715001314 126055588 221417770 604647826 906227570 557947196 978555757 823793515 863970361 622210731 698091429 143613978 727353153 128232922 848003972 554765580 576179307 413454232 887509948 329974556 446646214 367367683 585332524 307737459 355228047 211042896 547831473 615676428 759325170 897962555 956436613 389627488 702829590 628536507 781811086 386325967 700836326 922248086 960392057 369498541 491841087 318639827 684100548 163017464 362942248 643720983 842583718 454645176 512121757 972702622 993893330 149032808 742246261 896535183 950109249 741410191 863139203 656069748 762143102 54673078 755352361 853646837 898998356 734713308 883311946 629199060 643489819 885908370 907350759 700982411 918104915 274342038 917304149 524810403 546987116 245620249 620054112 297599798 702134045 700771957 793364221 757629681 769397207 935271592 986567866 423166369 820143141 54891189 766931047 968240804 994790658 833672642 931323307 462090829 957577078 245647340 432282931 96256310 985595747 636003215 657300446 163229656 527531026 809692333 843922737 261486962 934242849 990721350 995057987 914278634 962950284 438933601 593311216 13082726 914333081 515643350 900695388 765495131 867471676 621853640 984546648 486625889 799024772 204657983 681700947 414634929 625399854 510174445 729317021 692469091 837292683 609772216 655647990 569188865 825104699 478642449 924294806 843357539 901591371 887683206 918213865 492926713 821995860 31865713 152127596 829319125 905458211 392316144 859825912 289214843 886689115 301556030 753487027 558742349 681526229 8633413 253380848 510140527 953399585 746903911 905324252 266266689 371431193 654771707 797560188 301413933 851710018 539872488 947674495 346034953 532792171 170900192 416234836 157275093 231736671 500000137 553649242 504188058 729529079 994377090 997123097 208734847 928329048 935734472 983180149 90956333 394382626 943841693 953833485 492258224 717508578 90689797 655140522 285156865 565320678 661024321 976540051 462462315 684358092 275206294 309192811 160390226 513154272 662417463 857691809 214666530 317481907 113091772 397663001 560500999 730230747 718783543 831746408 825718506 906015835 49275954 680540897 791234035 857724735 589566635 773823947 789938054 999548411 56263614 921930660 633854761 646677314 986837239 991211549 958738446 989720424 209308285 485368629 826562298 972141320 656567115 825093700 120906673 154150466 118766793 954858817 213150934 563622684 23815389 726953017 408379885 728430320 637711261 888680202 182092267 328268235 748023686 810825418 557116719 826613239 59579127 370997685 950804911 972812936 337953116 869160703 23686760 471595179 579572462 702618769 673905755 767219342 165747992 548867398 216116732 646771010 249605722 634483822 105904955 470371566 951338918 972862329 47552702 905494922 389614615 761663000 459132869 889132137 902605459 935836461 154381232 763399240 893651438 923203991 811818183 972421286 337830161 803671093 414685676 699247969 474754152 576629650 507694752 816425002 450579097 776762374 92186052 639296679 818443548 822949041 956712052 960504923 431286298 714334835 456100726 553686419 75033839 588110712 839592293 844471098 926653135 960345026 211579104 801087860 515259542 566562031 429949735 740803344 762268800 906262475 993167945 999695187 812734861 836986653 668762498 979086379 257407075 704101740 529683635 936317219 323037041 991189821 1817182 947412300 249915091 561268835 306613531 471885769 435914291 996282186 174849084 886955430 615422458 826593541 799141614 870055991 514340079 807978742 539059733 570718783 37150605 495048191 517969910 716448695 629866240 953093769 129818181 902997785 282563937 522647886 573887124 866713056 994729650 995089863 519448761 979791941 237184079 463822945 691490954 876775592 246166726 364814518 402108326 470758688 411333803 775843011 726804677 977605349 735230681 987799713 11074751 15354205 159662660 846495961 45482095 548956067 446523361 589510887 882638482 893925407 928034712 983790660 734862190 860534380 894585882 978100034 509226568 644178715 293125044 625425341 773602092 869347926 312764198 434277294 800610896 934332186 691606380 713391506 118022621 690822430 876726443 895834036 180470879 471095428 902306518 995341745 57213775 261761101 838205390 989491735 14501351 79036722 642898392 906302221 426869274 601869848 85732126 124420366 6135619 605399713 609762284 770334789 717484529 786295364 627954852 718231900 548900928 717663982 270760257 567783794 862496082 965376695 119212762 630488954 591502312 990601133 518516800 631065527 299188333 425869994 820701537 851825335 722791030 742727798 534643400 729710868 626549484 899960528 342571062 877355330 265263879 622048306 499641045 758813116 383126964 718063102 896677302 945592463 291796454 485801135 541159010 933157494 715026320 737916251 375594230 849763471 513767667 849637309 927403358 938970407 259122053 788258992 938827994 964207413 137138209 373658052 157067569 313687622 704262209 829977822 426547312 678969953 663036049 663738740 681676605 906035334 538569556 920928613 101332134 678351612 613805995 653641480 474064208 697446129 671812166 987968484 810474116 899698829 775884043 979503849 924117475 970827913 812370050 847977800 275762934 406367165 871484498 978911112 556241390 644104609 710949260 896663203 203885129 501219746 221698070 628060796 571746502 590236914 589075322 829899106 597219751 695235850 618969037 708032661 95056486 844368211 890928552 977785145 256789599 460021923 123894195 895360823 912489428 944114410 991326416 999923759 802819999 885727996 565659971 942822545 818347575 889012320 360840995 445498496 782756523 899828560 891760081 953407894 190535336 506628108 15722322 26565950 333760040 809008722 342137874 667697895 113907186 785170557 163018415 596539829 712434755 784084309 770682059 824876893 763328324 844742154 590754693 862789197 933167445 967034684 905221295 910021105 317794062 811945736 584101670 633846741 133387431 256764926 502783842 988897444 374145833 947755704 287227759 331040086 166322105 329807501 664111930 788447234 409901 869497486 848335706 989457237 585410169 717340972 177798661 698284745 582725813 891395095 387637880 965399879 201546546 652887657 909944236 972413666 68081498 364810576 863391825 992080704 685372020 717524248 673384462 857441420 383413778 997333965 445479185 983904440 949068890 999735174 477772755 793974142 552258417 870224635 398599767 973874168 970901550 972230859 683654954 861348173 852519011 926652077 390211005 743556992 395919458 437963813 681390806 821964584 819317870 845378788 593382464 643739982 939539888 958132593 110257957 236608280 607582942 811700748 746114887 806335242 48955893 443080109 386537668 767274980 232123986 478091738 841425685 873573750 712343410 775398596 181718404 529913295 971903144 993015276 140372210 356382570 941356850 976636314 811647475 954953830 186803945 695904986 843536558 964877673 219667518 563701640 69989806 498985471 670954438 849967758 978699208 981382428 90793906 908648987 526719959 934951245 933034368 982314805 223985451 861383312 690835858 744857996 136736081 316981895 872535640 932433071 21960575 315719593 302617560 950722209 238838174 919466576 507472462 565199827 581686757 823652735 931668022 995204886 335572376 621896723 155489331 695266386 396111583 473957100 281629946 451925437 576959567 805598233 88587359 396399753 536462696 619283466 713533790 779126303 298104470 585457035 631982779 952418747 951437152 964852330 916725832 932374498 284284766 639450558 560852381 629759357 212798167 858125285 518113189 947884959 148513913 828394507 706003913 866510686 769608888 990731364 608430759 964244025 14840840 184561519 257534765 273894459 530263180 758775981 28676362 925065553 75540670 495997872 560340407 810574813 963600932 980471510 699554380 943155190 945265377 991655445 760635536 827185123 132324907 507570554 98238833 524774546 949407371 992979329 885914841 996365701 243656131 901095837 35814234 858539779 81337402 887466497 157341421 678884701 1817771 184069227 894668891 944586014 687909596 807083887 342054273 562590909 960419486 986902959 658253827 928985471 923775680 977140142 414623793 923330134 262961878 329768772 486734102 596434746 218277573 815360796 348071242 734700046 361771828 895402905 304332311 773126306 43626420 507308015 578146304 756188007 988500347 988918747 547306601 851089288 920148117 952821204 304209621 517212423 218947136 704161999 169185022 270043530 496415512 778442198 503102746 509991364 114138447 527366364 649341720 747755423 142551090 154519269 808775493 879608301 482730265 981864897 928477687 945787628 528913164 767971380 127300799 139562265 285028436 760957188 11354989 969544181 156123487 271740247 912125029 989071562 909557072 926187822 984292702 997249147 709247947 879385840 836361806 894684302 601286036 835880626 105242932 815996365 365691453 441215240 118721506 121509230 291797262 336070089 645718225 832625591 878050544 908863234 135877286 159759999 831425789 836551475 770290682 816759545 868484005 946458773 289448782 804218704 305828309 906607810 191025185 225515656 496262782 564738995 928634489 965993741 615687372 838474334 2252556 550420838 499842448 693078040 462047241 524627809 644037183 878607728 545212855 681816450 293158372 765364675 112678378 562801513 838492815 954131598 943493901 997592410 388431838 388818086 638446624 944707875 977411107 981519347 179358723 462288563 463153973 783320382 951351812 965361878 406089202 655551568 394771527 811950532 639036835 813099711 375323342 598990204 348848312 721889151 298875083 863599016 254167726 468828148 92432998 252635627 281655645 346432439 864803186 924470096 26692185 344712787 26565518 614730179 466206052 754285641 808624682 842260812 868407658 933054975 48780898 926703433 333227371 845982234 834390879 907361346 478247781 754428077 67061137 398769905 124621643 885564572 197922042 460189618 77741036 777307099 629421079 648458391 762235715 884395112 278753538 980765654 157578457 267825530 632535738 692721833 631512624 952319510 721399300 789679318 163012786 424158069 117912125 343444777 497865409 864423662 623825714 808188769 446393466 478533762 719009997 912552943 799697549 860639481 783207851 787296886 436534315 987436945 602378684 697816166 503579232 943879039 539024966 759383706 618971238 908571090 305468672 346843580 242149376 677454117 55883587 383510653 689006223 832280680 319384107 599107702 351940111 562423323 872290322 946300012 848819520 973167534 267834996 938031968 541212564 864698411 362898093 911964300 84890304 430196571 448913753 974034489 291800263 325332449 703733883 955672754 70045407 437774218 734811502 967046437 772847653 851998433 492122980 849732087 927775488 964248231 665454972 896996083 644064968 908853215 298059182 893533237 740894200 745285908 65145056 804348594 64452287 489631351 538169664 712504333 672300288 862234746 338514630 557438704 225202550 384746115 278757245 658255325 978715718 980769445 659292857 931687452 165143490 738809435 650213282 814469268 728330319 803627661 939892194 945600057 382724123 850040267 68054004 281196643 992432851 994828293 603324276 763054436 573595349 943672097 633015128 722484329 708310085 934655766 874325168 895125057 322330847 909603010 368413663 531872861 349896834 750167697 649608644 832910857 942500094 974582932 405676928 925693743 758393199 906342792 812558556 910179379 726633958 982412432 360475241 644390649 378206471 698315337 810783212 832654635 729010076 817282317 367352781 845490866 354944787 368059064 915603237 930974127 94205861 154021019 859457383 970175859 332223862 438697664 347182487 927951244 522637834 578545983 488170969 989139556 657997919 983950533 750026559 770082479 150515575 604619199 803233870 943099916 209304401 491935334 931788941 999446931 697271381 956078305 300893028 503107701 230756071 779037265 531924659 903084608 313815364 985192660 850274776 975618553 649303487 700002554 727743013 902298591 425639249 866401331 798019322 914665013 462951786 703613552 15308078 144021972 511324433 776263076 598489500 852009092 475687062 560326146 602480743 821058509 219614511 421303050 954704699 970202566 597204715 784263089 471334094 815958991 670065491 670681867 499784322 526680927 316648633 526155806 166763395 352806399 400515318 760461898 576753409 732006244 981805718 982464087 170860251 912563812 777926025 935922163 650474665 948902354 896288292 897288147 969118628 997867623 135130514 782982556 342965808 493845757 942238776 960374098 919633886 927012611 669610834 703202636 874379837 968922764 749064047 952557539 395950139 483412167 546769634 613804103 317786353 599378161 257820229 585714446 757409694 911458685 299376075 907657581 564411434 600285665 731502017 743856155 948111008 992715005 58895184 239820337 982121592 989456012 23519144 356640912 279218888 419091777 425137007 840565875 820500224 850392826 315205039 355745609 803670355 951012759 108827831 780698524 496244783 977872573 938571146 995442052 280018999 411853945 99491251 116401323 561204624 730116672 505233875 555590605 711399182 732876941 953823466 981529574 893681748 955038831 203544625 709349107 811033082 942529379 817162092 865916450 941892209 979007736 775894775 994302634 474670823 597252966 981434508 996076536 988348554 995789549 480881052 540819855 12208581 892583167 181879832 218896879 169103978 238916437 366168014 849963800 321936962 893280277 778893464 910578870 550523626 739208159 507759302 683105573 891112248 971997197 54860080 956036642 211563926 593159218 439911258 766938335 663330742 801816673 616245046 682647511 337440635 771525525 283850032 393128380 578756587 763604274 483016213 909315988 755835384 854388879 255431942 788864186 300589916 640474158 60740303 664936508 529188438 796571659 358065432 888714758 813999316 847039990 339511878 905997383 310470877 444625876 273993115 364417209 816048118 994857785 976207528 988332233 609603163 885084843 979771662 989842720 154645634 542368919 708385611 926729464 472245139 498514622 826486952 916050289 360027869 642471312 207555856 977859117 635082203 916275994 217610319 911075558 680387608 861390990 66646754 450114282 822582490 830713178 91634941 241704191 690492866 847034659 593739057 599118071 138476502 498399221 77574250 606317578 688124284 706906891 703972058 860863773 120577438 828143149 861448119 914566254 688433091 937254844 351365529 947764931 84896261 655457370 350724217 473221283 827756671 837976888 595068651 801869526 514331073 595487769 412231639 926423649 207933367 464954719 275650580 668748158 197601261 846810728 513984070 720785648 103635904 199302921 756771277 998090607 792751902 833626523 359671518 973205260 106315129 244683170 344556811 935614309 320823622 395288969 194077812 793628908 39378165 91410815 430739605 517303312 424162247 997839952 86749815 907417633 221909783 622852341 316171902 683821144 720123710 788773977 194748061 915510981 271536666 567189815 669137963 691700981 454053533 825800431 625204345 717647737 244773156 979954037 353927441 898145320 655970251 705436771 295867536 644322306 500734337 664378098 156800198 652025132 612237024 946722180 540350527 972750443 57413368 475738869 430586180 839394720 6273302 845346943 562918959 786464034 530436283 872662729 192231923 935236996 52484489 452317262 935282226 956351868 641329129 714153254 957263962 984572174 344689172 994676673 864907965 991994341 318073290 694316244 451842722 602897093 885268174 971563403 766727973 786118556 530383503 688025752 9301914 673756605 497220432 524572485 185543289 399089811 812920759 996804148 437849205 818177133 451598899 489255393 431122999 897909629 573925822 783867382 890183483 900713267 452675631 911614805 467590229 878893731 957628001 974099490 479971411 806145798 865197324 917608541 702804291 902762303 101101257 860186373 836561732 959822175 578997932 700942186 731225162 864761794 286950677 855072135 749052731 828294638 739063653 780172949 514014867 858843700 804239993 980887821 884511780 987850568 354412483 474181814 997559558 997993112 910165074 955794853 201480506 913394854 417388976 597846838 446549831 951096478 10478984 104391561 160109527 984614034 503725409 979289546 310648185 440815623 845589255 950176490 29184972 248929589 797632876 996907988 263178554 924518229 182836313 744699623 251602206 428787985 71339655 593003644 168745781 310181678 683754207 853518188 436382352 679561371 977929107 993063867 254507130 256717307 166524625 452307857 900503794 904686511 349099100 571594445 348924996 639859755 517543036 686362709 975072322 985286871 527038829 563709080 353324062 718751093 876533011 952897161 958688375 979682215 870641145 882506696 459274182 915487356 192014498 706706407 416052705 641678452 632009850 746263759 930481323 964806436 722747939 832692188 929960406 961713373 455652769 830790559 702414634 792922365 51446936 304904464 614623613 660379358 375042806 696001163 782126789 884598204 925378315 940263989 924982815 995145506 459262166 708170521 28338561 310851137 745188381 949076564 932907573 964020869 262632158 791466241 25790082 134249356 136642156 584495420 205657077 361455617 84056706 482925982 768984762 914384115 562811959 757351921 695696918 754040084 383953216 849354900 935075776 990881015 319062155 560566019 173654177 886859227 594385655 798346600 439803894 496728249 868298529 986354734 682005438 926228443 937684954 947394946 207255766 263976527 298709222 515801522 908344316 950640384 997823459 999450214 419500206 480048353 295056851 311772623 400514596 788598617 687057447 805268678 708388499 816869787 587539895 996774947 759204962 912729967 748244830 892069302 800182671 831007313 733419185 988786904 678177570 863977916 654172944 704665666 634752521 919279958 368698428 762065156 382794095 634214452 636839368 708871355 257742891 263485064 430676194 932862397 905860667 947503324 123222786 639320615 790926372 924765339 53936494 389239110 54206574 911180993 489121832 490864100 61771618 238111885 814886502 887234406 404685666 967557984 200970519 283815247 690946038 809980830 648178793 903729517 50738791 624023721 584295346 944186740 223402341 442024631 113970545 581821989 25031767 259370884 937671576 940484744 360976543 643394846 616417424 807882362 831023092 892380164 76383707 781248420 38928729 733162252 286926963 488129761 490020514 946646908 91085950 875085861 389832955 698331821 398177300 418220550 432191363 982447887 152306628 313945843 185860856 595126752 481575908 639339703 845000834 954500682 251592837 977427598 801970537 925818154 425332637 495524035 206726016 901515278 149589842 609604616 502324266 652563249 110623645 371697889 809211525 871646385 209638425 251015756 411150147 833081788 954900224 979249343 70050753 538674879 887786685 984192369 481383824 488473057 3264739 658962436 78714128 748791572 80204376 266379589 645365464 830530912 571833529 805573514 904166685 955782881 862620337 974267872 455477202 486978534 5342520 635467950 368549533 426943920 241566263 844680241 703212834 734780817 798026574 996270221 861961643 931181899 941582483 982826861 774257000 885108609 753689242 953876314 418829420 682603047 918060926 995972894 5215344 948649177 757893649 802236461 968403229 984028971 713668809 731101816 509549072 647893396 661937165 807138503 614339916 986212611 721215984 808122353 903760720 972606555 641316474 958857197 526796733 775866697 517350603 635838327 55005444 116346748 40729322 639849102 787131878 799048620 57356472 813656035 732061454 968874639 23613954 425899546 834318760 895241418 583147354 714177260 16219641 244110114 837846615 965691484 375964608 456974189 671414335 960255688 347747406 544982896 800985344 818373047 54061394 305573633 647388383 968145400 681132022 719920610 298658238 850954026 261811120 930468742 173420745 573837990 326145814 644978469 480806045 590741445 918074164 965932448 400268172 797696846 971622502 997254229 499385773 962284649 938844085 950121886 602695136 615823130 845871876 918943516 252233785 488883798 199591106 377418476 602477328 897171977 574785896 704805896 866710901 984342801 77000186 819681392 861933486 994595128 794847248 855889697 228060136 428926459 330052373 881704787 564644291 857814635 878065168 892371390 311324427 741058718 739256314 803319217 42005644 860305305 132326004 572116250 138927941 654659171 216711694 675832911 748288966 874269333 150308274 637329403 423523244 473480320 359608873 646686670 873093315 997386201 159848946 166631292 628568317 719451977 529026082 547865629 138496642 927304144 300279648 950414372 280907501 879321934 638513242 894403303 99521992 297463504 774374476 804922334 267306147 627792732 310083067 431052400 441565757 787776611 261118758 939063035 938186562 978138806 872353868 928638070 973971961 989798016 464044601 959436557 86188095 916867126 116598473 518993329 86199910 582984234 748105991 750632134 982050914 999038614 284492982 470520222 400780548 532615524 731634651 973111372 550309654 842448738 100156202 703068235 138029652 735776498 150699620 951081642 252597713 979857490 161731627 184286514 417982782 528334380 868377405 968656198 679231569 811245173 18818016 995504781 246415810 843844776 305313107 500157610 517296833 598057585 983553770 993444673 493041165 976750595 436116603 910806177 24487908 179414448 956906460 969395706 727581199 902170816 116318539 611647859 799073093 948073845 422754277 933867936 601593760 780266749 35343919 92242646 728008520 748829929 138003328 510575920 521764171 991887964 618099174 944115952 941797060 999716168 757624925 969177516 382399310 732479927 12147404 389603714 89985642 118513516 622896325 768299516 866469840 880674338 519764362 706279604 685866653 908064535 705253021 725294016 463587009 763841282 828353471 992485248 629043609 922952957 107751101 746192735 237033956 979508192 312394755 839483421 662404062 805012634 512715932 823005489 890860738 957059920 669354056 676242639 670617096 821679240 408784485 538636515 749588870 819589364 624070718 871987996 770672583 886664247 391566665 477448896 842871469 916114704 492512049 969463878 38408790 596137066 799405433 814083552 369255667 524353596 377041873 531078488 666715770 869830191 863383654 971366943 864594113 908281443 288095872 580240440 70173612 836721907 156747446 824286122 546587884 609399181 74701315 871012393 511041679 710172540 884311835 992550675 721129901 907332674 639447485 942501067 474413518 771289902 521102112 924231138 977943689 998487970 99913480 326809841 400161875 491142606 237561807 956217060 449161592 950155686 537426547 706913016 632871879 914374733 634957562 829226589 252238351 307563972 677238049 718408538 435233477 573668536 268003230 428447560 653203817 762265553 289499169 987640113 167288085 882502469 452665979 558998673 885476807 968701628 867898435 993358503 198633924 672414174 496354022 930089042 528348712 612003929 793931981 848876988 281211386 720685896 844323210 929979445 161224221 536203439 828255541 883808100 466715743 528830384 194267531 830099900 45681766 235278552 543484644 792665225 410106883 991003546 408105545 548312212 659911263 861925875 257027633 865934506 945452755 960677221 233977165 684337421 630661779 769240538 804390927 915204967 724190692 966606280 898389005 957236266 9392092 806368725 799265152 904400836 416237044 760532179 543917403 873890635 164714597 652763761 502765439 859800000 234668525 398535830 836945829 927623658 374948820 958976435 425695350 928431892 286484685 695611075 215021842 554075884 53144422 990345958 588493515 725408531 991917488 999865407 259555858 886944828 386543175 818574224 275081534 691615764 486657970 549857655 62272632 993441086 518797220 901970472 298076097 417601062 859287513 932017211 861717534 950497386 413966428 580121337 740095187 851719561 14384877 159942074 945267116 952755127 999589367 999967483 235868382 471606835 739663101 748836593 890344524 968446462 208318026 824656902 845998508 935807364 877590679 953916729 142936135 192871147 680753562 778382947 121606359 860097627 765167223 906834772 981962490 998183962 754746239 970684636 978250638 987815271 664632060 971520828 420875340 746366817 247944633 933831855 920440487 987018766 144906674 733556009 271511840 277876540 102421548 666607082 922969625 923556267 51501082 883224911 547431410 995899545 797992878 985241983 531218427 796273228 897383813 897536530 28081210 246886435 177588101 583861126 203223453 437957759 322637043 784849181 746781986 975487735 232593507 879896016 582010795 662609727 540784163 889466767 327574661 850414956 655857889 745695062 892531768 981526413 241273999 894918288 957649989 987540555 351767995 581415873 420900564 881428785 262907584 450591801 568413256 861186952 870574160 957208588 854882014 870649929 591505559 873799045 77515027 121714419 628589654 930017869 710213242 861857112 382752161 726768966 511510103 661869305 458796172 843083679 672309845 858365087 281035426 989173948 108306689 350958205 326233625 382449323 422146195 575345775 812613919 929811829 419484367 572211381 30979031 303674242 718676718 853220751 464798553 904193316 515521364 725185663 306194506 913260383 633764007 783829546 993792496 996138379 897119674 993401557 484964901 669654070 208062222 871958582 411329605 624632990 198271172 375539608 603934349 645939574 322184547 643604852 917909154 926705222 32294203 32303322 205580401 625582913 800328905 847557722 10163820 25180698 903648969 956089344 186749309 242259351 671134039 689578690 451295190 797267315 451334092 642960014 422199604 458662613 317170957 645686448 496197058 684896697 704380423 955287121 460404969 942087351 667124774 903653340 999432449 999600935 596511472 626857348 192135015 659018485 256289060 850109466 598754612 638298337 339120919 533070376 402248334 420818210 706963219 946148971 713034379 874165444 315775511 341605937 286613479 872177971 420712256 891330263 33684103 795581040 968437797 996757646 283783903 723950838 751065143 866789582 435905370 638320920 938870024 953119495 328020397 687249054 951943830 988720738 511208771 723072245 561920652 935935283 882767991 921043127 678641766 958364010 480510935 672577204 685850634 911510864 326915998 793674095 85465392 657227840 518051995 703645425 989067633 998553729 669870948 791638043 845564695 902401610 822487669 966960054 884824636 893687877 209184827 484093018 996375505 997105416 414848371 585063582 61714255 196738320 296203450 924990813 528537008 902583467 825536274 854826740 414481000 608897537 860976769 977074120 960478507 991705396 242049971 327667620 616086356 940454205 725190145 948757553 404510712 466078040 742566101 933040884 763160502 838785382 228532333 464561027 172516034 638650511 367761296 477528855 654231686 882096180 413411462 518758196 383416437 766191354 61192116 307972700 295610624 404789115 109939978 369988722 208142730 766479787 156511460 348222915 22401029 883404059 246674398 902586608 145749342 780190008 755054973 841857011 464897031 978307904 579891626 644839909 189545228 373188448 163887366 805467189 36544506 242057339 703427103 850662630 463462951 957626514 153438712 557667917 67447996 396926576 69479583 790542527 362288084 387159281 946356918 957958377 114932979 959830201 620911769 903434402 716072203 763727587 278308072 524907527 365797970 967897055 184146567 704853509 964919366 986452196 964346996 994855941 929913466 981653867 290580837 536281347 701379212 762571862 385900747 675833993 909765001 990835011 460378096 943800866 659290618 689948248 17151008 183618241 137299841 978028981 553868048 654731819 399600434 967749994 803927667 839663099 304419586 814119092 353101104 780210366 201265078 308602664 815863742 907330386 1322129 232436132 612577841 765367126 516727183 648484430 828241008 975190942 267050251 827615779 766090020 973276475 911672211 937335114 738620404 834873414 678646059 772511256 641490679 933589183 976816951 984839812 538096750 950949503 887602577 923169583 904721988 908116735 988055638 994847001 97835596 460992244 518458514 659944021 845199752 924532431 874772787 938003376 525493200 972807119 964625113 989631362 525354382 952032598 773283490 942827361 441026931 864725605 330105614 724624678 95357388 381006402 273500045 822691010 417610417 697073638 154128433 741880812 469138679 682329500 127729474 166733819 673069857 906295664 556962973 834477033 439812597 576159876 502657113 836499214 46899749 590988573 932256794 961595921 897604863 987978854 905423605 929787834 890037468 980439757 280351260 729839726 798255729 990424199 352857258 551427877 676224231 844001291 252271738 628492187 788451537 815437392 452487638 849194319 49783329 470742172 185892258 762828039 102981502 235882017 350585792 485531166 963202957 973074574 862074663 918798022 703425733 976803037 348337553 777434310 938567823 954083892 932022159 953783422 58819421 392820270 969203879 999392820 130199888 153148610 168036820 235428707 535629105 639868408 857399945 874025063 855316402 874539181 79941687 783724585 144591504 948061266 24025878 195760563 275033218 664466908 27254921 336201241 38196844 275644956 685937463 954865223 629059697 911933660 985725045 993175304 66337345 601905417 999921970 999999140 718130937 810680259 745318933 810275634 743595567 876848055 338192196 524991430 231573375 395315846 624743960 799000919 73710856 662922333 454513558 753404662 586006361 952375334 962736457 994877734 85078772 260431041 917186337 936043818 625423920 742947532 861185753 971788064 968483041 975606135 246868303 487505654 321647427 528791057 828551657 855721258 24907229 780423405 614419623 818316103 603411646 965296006 905398298 994830463 889452509 976158921 933948003 942246746 991539548 997030704 494745336 946386762 761004291 766960862 616732562 848091922 534221061 903218679 290809505 435081592 659391221 776516908 214735566 418606781 205457279 700381583 363109208 451606217 379004861 818850123 519138085 929728728 761953285 964072126 82023190 851834326 953221503 980964104 513075168 927871281 902951359 989572287 827243030 926046730 692590289 892854005 681633520 872333801 759568440 801697879 656301504 720135120 853907438 940120756 304913103 795460281 262034657 755170877 417763088 489574586 664157682 845422398 770858575 884012689 253806574 306666469 606961622 669895896 252147274 627114877 668678441 695451604 845007533 917714302 390630855 884752404 419500505 794417013 802411475 807710313 763410716 874539273 108260485 640689232 110260178 429734247 108821065 914730395 10875349 164577603 857897801 882592922 603467491 971215841 910974962 972910021 697354370 933113146 836164929 979488190 507332829 752091785 49196363 248808613 220672037 960832640 873749825 907815730 467199478 841067009 915560310 993628266 902385021 937808483 732195261 747301797 341993130 731002437 39623666 813801857 333202231 641369228 58462330 119095161 743452318 995145142 221632254 239452200 368829134 586565845 255049341 339281929 406809635 814123280 244360325 535494848 543756916 935393383 348792380 524462010 312895047 846144343 562653192 863240960 736762871 803853931 391596568 611511419 421282974 635737084 745283041 842755805 676788868 850815779 736231621 896437924 205581571 252032005 716402975 939538768 498752753 578573418 743595899 908502312 116154637 796875523 149129329 426661784 227074697 608477992 271789732 943751715 871159288 984711995 434213566 454744064 861967011 999756257 463204391 825649519 546558617 859223091 824354191 937799633 374407610 998542898 804874810 837745894 701514669 921327309 345679105 689713374 113559824 565844404 543885283 867000538 753292866 856170723 526439359 623843135 651008108 861519265 548628034 971141654 208209168 769632048 773006053 865757132 246606478 463367254 414084962 855518478 302597582 743877719 188987742 667389523 205674141 403568781 352751365 863829670 410298561 599794634 172306282 199313994 889961838 914260663 590964742 600420171 225779947 447291966 309502750 579782811 118769111 125372954 973237764 976770958 658464076 967141060 793731307 915523354 658764276 743327455 399409698 428209306 858184382 963325426 249399340 743624072 486642990 897472266 533340637 875382787 436032924 594400340 745790222 836704106 932522539 983158328 378435931 991196173 351976763 955993718 404075452 964439569 113811772 749538367 465630083 693827998 892984071 966890746 101000545 986038366 65222110 659030954 898953375 918323781 696111638 952258040 178747599 352911581 627913581 646534466 495018519 573050844 333398172 554927913 947768925 988122451 991209779 999540014 309127657 497390681 449888485 680792311 113789675 225106015 342438412 433470184 61466258 497867774 64030063 395148076 807399448 832916750 40585428 186231770 21932842 776005353 876761698 904737420 461299160 951267807 112249108 431213410 874672552 961775907 528634354 994154850 539787413 633137111 144234299 616895332 873983593 977666840 254076142 352169751 826661649 865916509 4665638 744874463 990162575 993426813 807326993 907060477 337067368 359050386 84764143 595662204 957150882 985005247 997192179 999955633 395077419 694581862 628042776 657764485 83946629 773711347 995950118 999992518 135360738 644566723 384442508 715487917 704317273 941960898 63469930 540854686 648091934 879102411 470543292 547828951 701570627 883249528 485976278 659282320 104273518 257965539 152525785 238596447 566576680 970773602 837534503 919707625 996564018 999128870 949227038 998292579 910211183 998105551 458314104 526935750 215464745 607472936 473759417 607313341 935643736 960686649 110525376 531425693 183874645 223328669 593868613 982783849 46928902 978476654 764014244 974355320 820955168 949035110 141222675 773093945 295798562 735708569 114209757 479188721 60771804 711282150 410628843 743078107 131922416 730396029 750613439 936698429 588173681 874891817 396582631 546706394 173002112 381983839 561369372 996861423 335838489 641326011 783096934 822152151 133854719 213093430 802417031 840418051 782696850 854697851 970005541 987764054 681515726 811324605 482488451 574320993 792825205 901454615 774893981 860577650 916793218 932111313 324245007 921175138 338610139 719372459 590576606 857927847 656350136 892162314 942323659 943857520 734175539 821555988 25589209 488727853 970411417 997544622 413985346 659001134 358426774 507992226 547181244 717192418 459646136 770456955 294534086 725778133 615503899 725977850 319850051 843339506 419870015 621738685 732132151 767431696 312454759 715312032 273077258 624299873 650647116 721605584 195732375 798398626 234415724 587656467 253035963 446194054 73584612 730331584 106624748 605794845 810976758 927776898 507095121 824221959 499859232 589554018 525639425 550294162 688346854 870848227 721867449 808142664 814014925 928781675 738152415 995562971 893602534 922643819 753148115 786207969 904225677 963450741 347878710 504166113 9548794 208927481 722604933 772577146 264753387 532853792 883096466 891513315 767638718 838445127 306296949 652606129 214099304 788111214 966447920 974771736 968969044 969623499 516325359 622361845 908691537 993840280 444409945 729911205 507671362 575665781 706409088 790028790 41057182 823134382 901549928 925929446 714754681 930929351 96767003 571903504 713911555 949661625 242360172 306412148 594831032 925713472 91126653 482051462 414419365 632782817 674061950 742728531 244316994 506434037 116827443 510969200 873101887 963035984 881710895 982906399 922928195 930385231 957287270 969913525 906541120 972227353 454752813 603252127 849699931 955047337 957591283 983963763 930933613 989441098 339276578 550943680 335280344 455305053 125119344 952367239 53872560 645535548 394760300 524021127 781935092 863706921 14223052 732232766 512594100 604789463 323118299 850903703 730385966 954599972 90646867 345276436 215661257 490370136 232782760 668788713 705639309 797031308 434170733 562628381 883385540 954711112 678566552 910524401 559914647 876770475 709451557 879969109 176040832 930169655 843807439 936902772 832652373 872585927 876733919 980153275 822137871 920989259 251823680 738179736 421737179 927499569 939669837 950263961 614495515 901898123 110825470 682144993 745271808 988317342 129477514 342191001 411915439 525071600 31003315 991828842 21800346 95131831 412407977 620366075 622373352 822874094 367649780 802204054 371814601 597685009 623278182 942937752 84234787 217282345 982589858 995349559 763672663 951378388 324942528 420541508 90404662 784890931 38181028 664891069 491467249 557013300 220267898 434460033 362651309 896370314 481438670 813116665 263902449 764797422 323407005 421591920 72546330 644613716 721942045 786789799 144424092 852620783 341835916 666350029 527893280 825971123 121606624 718158952 182139755 896254683 700922412 744223994 706393111 951506745 196008323 927845785 1232824 229296586 367107697 746201721 180938419 366254313 148146809 227910137 997110924 999463213 310552079 381979769 460842938 537876558 562465221 569078430 477444249 633906561 831264095 891395010 523023714 701441604 415342677 808970474 641440816 950044225 600103712 795851266 361263449 610688280 475948403 977478432 501465727 594711566 437158570 726303128 47588116 992431664 981898549 993870391 760225563 849379487 314314234 668389796 660078073 811364392 624542903 853797688 179790012 566269509 369202265 708547452 532928843 826385302 753778535 815840190 447923510 563215275 94886628 375791027 692917874 982906366 33094173 497591664 529641946 583925032 492154400 717605602 930352667 945841121 317648158 691320248 531380416 833678213 156698002 761908468 726802720 931409881 25782366 308708406 280734258 376681058 649328116 718208031 606533721 955730015 359566519 746412303 332794209 780790462 304364640 784253693 499315031 682370567 175396907 611049719 744306935 951882332 171439827 299345014 557999801 901799789 182833596 735961082 494715786 609787919 282538724 354446348 888507928 945307723 212642751 661853396 9706703 966725975 684526279 765761638 503739129 622237461 643601883 715854614 497355858 540095581 908957975 996051959 195528842 410166916 662190925 928585847 989153246 994552788 910415110 934028641 511932183 974251366 218321922 958164851 115132109 873334450 198918966 417720183 887212580 947319088 236879267 841291804 332802653 354146585 822356843 875370767 171999306 396060978 578476834 768086797 859814017 899431465 931547139 986475236 552758085 838076814 178708113 633074964 613484833 922203366 45503749 584575151 104403340 946925755 56105869 914819806 693537238 858273692 857097252 873735447 233598082 692017891 34924696 782333013 103256373 397857699 953466531 972068370 334758424 546109503 8291300 83594358 514423749 911841775 510940907 626614957 269041526 524868011 181758493 201095939 246877344 679487864 29381199 766032629 546096657 900785883 837148750 943741477 623034860 908947623 324449358 507030638 628710799 906144249 843928810 954647205 866971784 925938129 228649609 517354847 700232428 919638546 909386616 950760025 855058532 866884904 610114760 634811530 216673996 448017163 764692935 904126968 933417766 971216219 411616103 720646774 575152464 624843327 597090125 673520979 270814495 307848270 332943426 961828473 94048382 358711906 394330203 877683897 522197242 938584595 159914765 532362967 489203362 555179592 115125728 305435911 932154704 938675214 616793532 954138929 843925332 848061208 50913617 390843899 542248998 725412600 353739628 531869947 168592133 584132304 246454666 288787944 305218593 796445891 833069723 923811988 316453102 456773241 640425948 884078961 366858606 558537976 965121012 988657680 268603823 368965736 819899441 917022840 600311633 878254255 406872123 584720563 980004345 986020394 421860325 451724933 365078743 930672925 739441589 811843202 593013477 905388087 459875876 537198734 164805454 418234284 631524887 662911033 740964894 903829565 446396894 922847567 627370982 835656981 419262792 996150351 410620143 647687414 661469061 938945225 416915489 864375996 57390456 496361900 442185346 665711828 620486093 906315033 692983063 957247502 309600352 625346700 226104399 829640800 476421317 891996367 303627443 518004370 778241809 841729667 383651924 643996258 424292600 653261304 667799584 951686631 125885294 661025339 506972932 589314913 874869296 975745483 44235324 406633290 630715653 767626273 73162367 161250455 591484212 780231387 770377439 925053105 959940763 984992303 377663548 428257189 887947328 973354599 227929618 782280648 695302640 756750006 533801120 789653024 555349713 617746671 530754497 860567621 796417590 960366903 74295989 374577119 271801187 751356187 572730684 666262898 394807644 499807466 384263101 426421597 127641990 396205166 730304545 988914107 128053294 397301969 26369808 898410880 94862492 308772005 457857777 795390860 272525033 372410433 272686930 446956584 802249727 910787905 5706585 107857074 73107802 110441807 116776408 933908624 937332955 937817052 675654684 973888050 991802636 996109889 887818971 990792610 999369954 999606228 341496897 381260551 21923595 828687898 664486421 917077463 926327564 968735810 663407992 967447004 982219350 984930866 255579025 298387752 530469376 645716368 175347223 592682783 632716075 665309285 589374911 615156374 41961615 692228922 774101214 999274983 982955230 983395303 144330710 693688149 972706299 989199229 756242216 928693083 903773886 976509167 503723651 530787770 736061010 777603654 416637456 902647993 489839772 830471132 844122185 954161764 331728559 755049599 326249864 470991109 295785401 656041930 522597535 809299805 635273198 745734282 826184335 897336458 13425707 665402065 56188018 890675657 958961343 967048425 23219112 297955672 145589610 792202013 75242291 564481651 863898282 981275015 976986089 987839797 447968824 662555212 466851347 861695254 958722009 990330635 107828857 869773817 337258592 724631165 124274208 896253466 668200601 949943417 521525518 935856995 910210861 922444495 852612539 874920996 356646993 891786954 578394300 749012497 704936476 975439789 34148210 263504805 880433273 918213963 784718490 966059175 26271555 706473277 599542439 893920066 932615989 984283930 182100366 949181538 793184090 905291203 663156010 927237173 182350091 493461509 884607223 955435179 173106272 751846520 329711983 550506526 585664849 712108659 869969329 877140104 663640566 961020874 805238702 973013708 55202952 346698795 976797889 986297892 381843795 496443229 323467513 824394728 944429479 946331776 115407150 666273303 952516272 977938586 650180331 792512057 199672081 358007227 563192478 599526472 703078875 730334153 790123153 928832700 376190530 476885529 864454593 917910347 464994492 589839460 819510561 894933728 515091429 549039850 18592746 357195106 206313900 937978703 19554847 627473831 262701743 738861768 34499793 466279219 982604620 985134622 749966658 796766819 635592614 910948127 562305160 843275059 310665113 733922234 880244184 888225473 666068277 877885383 206273456 268426995 531517759 884669690 115792042 636150757 398247754 802146227 877705940 927271893 483166371 563371364 19603443 962901863 929027715 987544651 623282734 866359840 997220921 997333230 781678500 823766565 340563126 386628607 739512929 811493110 223652675 724270226 415211362 596703399 186087330 382934933 368819954 433410909 616828668 804075358 982242154 982282225 864985788 899985581 753235994 947206458 737221777 999754948 448835383 642697286 81610981 740459996 588071779 710912691 851153713 916201582 655389519 837858384 889611530 918212524 427358688 847883082 841361992 892358102 374382175 906318250 957716606 998570021 189503723 654766449 487844558 782683670 58417478 468987369 8997719 561359760 185287617 657713216 626614205 914507745 457019953 747454510 568497557 909526944 959196999 968078493 661716358 784952118 769538207 992416153 875277627 961721014 874706113 981018826 26710126 579488978 189983071 525646095 325713904 574210315 51257793 374656042 457503834 813157951 641876429 998107555 267507165 950156363 704871495 866315764 492163371 949907382 698792882 930055314 980003779 986990355 850964006 875468461 28424963 58627193 771075125 878145234 46888397 730434749 160859931 334546505 236685648 291757660 533024837 657098411 19947535 142041760 10964585 687700178 985072397 993286056 448230832 585180630 810451371 972250724 410130196 669648752 899887550 981202255 734920389 994868363 246762079 672852058 435218957 604394731 847827510 974492339 661188375 898141015 878080250 910371794 666566281 843856916 7433274 491158771 946588459 997988490 156684979 519680807 202271126 290073905 250141465 403586098 107999131 435219609 246900670 583061324 102397945 825090198 981759760 998085649 737149825 968281201 744182656 748839016 692066069 759238960 267837691 727759235 682223477 946400619 757200755 869106378 300104199 493653140 114828763 326397151 148476169 370559356 284315704 421021998 22298142 72761511 363589174 638649793 320127089 592184893 798345903 964940049 596285699 912414753 994278918 994647164 439489274 816612632 325153943 732238321 711087004 895331582 284030264 313810968 219855719 596045268 938571885 942481979 853300962 971187537 412503037 739131783 439962837 692776806 815835316 820997336 553791080 597752744 126420649 894165745 731736548 894953770 72826835 425632600 105318454 792269834 646188111 888711063 935493304 963610198 545340949 828118552 301111117 602094656 275451210 821275714 595358512 764477691 492344214 934445731 733277840 853602796 155674285 642748613 665843931 798172129 624402710 635823790 417026511 518490700 705367452 755385364 963050311 996400943 942910701 961232377 823075837 869403541 35331980 260296461 733803743 986489584 284392571 850430939 943267519 965516886 713950572 828954621 71571675 356417885 108319273 470143736 97040770 790492625 92692138 299246045 662066083 704636148 628708698 677166315 725575833 889575806 81174608 288997155 25406801 318480567 270978042 893403549 623381696 866680329 404253068 917789578 897840925 901841290 181456380 520114541 645085 698603140 450583823 975345060 960880816 965837560 346799228 611213394 217159271 271749018 420040726 657085284 50231648 259268384 582984838 594529601 475074155 536229835 129852088 904489855 467752364 690888369 517857662 810697808 564424359 816030407 969221891 976555147 72680521 192697423 646719807 964974346 454844056 783241716 589305731 836614873 7490520 183571039 485177256 816854018 273068392 444613079 367360426 375199357 546467958 593128188 25916798 749604164 878757737 920361392 490507619 791518476 517991137 861903860 198183527 984141063 970213697 993696877 132740403 708186957 399869686 811119968 565367490 860069218 910698478 999124369 402734389 969228500 780510723 976820646 241148113 689435395 708376059 752524425 332730670 476401412 671801254 892453731 839992534 874107734 885792498 990303073 777825233 987007311 395480340 900149729 317490058 780719580 11979314 407575360 568079853 682294610 531025004 554345349 634079517 786284280 337584916 419654292 343634533 778580276 638086956 890695897 645799564 929683105 391079811 785131010 759903753 982642901 951360585 970050422 112459903 161452130 673410480 880965704 876731569 907819961 41846730 812318484 904558516 953379401 36093248 371855271 528721211 755652020 175021620 514129843 973784527 993963817 155345699 417973983 522169572 607086335 6151108 560635857 84933746 229769209 219419391 372260969 946677975 987657780 127359491 305170200 969976535 997619064 898139649 931125365 531396348 835103633 837944834 862582092 544264886 594246195 947277181 970837871 726473543 804919756 770589467 924311117 743909373 938030751 112281181 951089764 236037029 531269588 942149222 958180353 424991051 425502330 21698733 904024009 726839440 934212776 460378420 928128858 584468577 723398051 711360510 712189922 130579292 402097545 142225254 965174600 489432287 726572159 761143189 919096278 532738379 872117116 618449014 648447870 57446765 524436038 392817897 827182818 792323097 913526320 415233956 913755284 441334270 939789588 595203093 869410837 450048034 711599318 903982939 921209381 412305311 911418939 760706625 919710763 814751287 923371665 322962536 530352404 577209211 750613920 776575688 863301980 310520953 746553726 624089101 907984700 494784050 557561297 537380288 860065992 508749303 552919796 495011013 987602588 712856296 845181612 784262698 864019082 648327735 790145259 59828197 913613902 341411775 799105322 229874205 300497616 436566390 508127731 23276658 149573266 512811450 674017429 680982707 928793338 407122839 955279706 532939857 896288616 231043762 620460474 503671611 713108721 81772382 290561583 148296397 775576567 840777711 967578693 280678825 344306266 517322450 866769421 585330794 990611438 580636935 685020145 410292878 531025487 282392924 299187027 716300876 988517165 744462386 848560104 108843488 174634722 276740459 866689486 369494036 854729310 220958579 774977861 442358499 593148270 21368453 924804522 647668749 955091396 146912540 791962111 73154387 915632558 98651172 895767941 777567136 778751773 966853130 974560315 705949049 817920620 25390479 587697918 677268751 914947973 921809067 990615225 263399832 422698384 124097334 376927980 821534081 934814791 458440885 958137054 498885647 949531664 234700255 540527977 803812139 901641294 973188471 986023197 832074240 988857290 539514299 619852503 171373446 383405148 738702525 779699388 477543880 819651055 625873203 727591330 296184748 719886889 287497534 554829929 42959904 233067679 145567159 760399300 442655724 516619657 707703137 729112610 6234416 875487664 39310549 960689009 87539260 999835000 408446338 445014488 501660261 730980366 444717574 603603287 87285112 241521767 1118564 50587950 207992406 327557278 746061483 873060209 822016387 948516555 701610985 706281941 393904956 803919092 722257318 905167406 544714986 804886713 882784536 990159877 746414081 823536748 125587236 165367123 212408116 675953814 270442111 530592438 127668641 717296842 807386158 938313339 598228703 629944357 416291942 728516192 883889441 972035453 762495384 795195026 333638249 711864158 720382485 977183515 724062582 797563121 712748773 918291032 225939373 529588321 923433080 927740868 56568974 283827021 212089966 270853439 306362667 721917100 913619924 914113126 439487097 973170020 659109201 684180248 292613683 783165124 775728636 967182221 754455357 856553264 305436115 440346114 12358834 727727730 666567420 842875036 946028260 982528704 368298348 800938319 806926703 898362245 500196875 844691375 526970012 920067533 651823915 956819327 995827262 999757349 514901460 770075233 735326814 823690237 551694306 665249715 266316634 536017249 951357346 976418655 348441843 804880895 661018035 908831920 871562283 987585514 886779274 965192883 203730781 919958747 783550485 961141592 875698570 901880320 898395581 928402252 798129123 800011609 262353866 792885792 489547510 740988845 78892298 882413358 583135479 695847291 839513680 944132500 908737561 997272532 992537465 993453490 554384302 928738985 273432314 652975380 562712410 576460813 441048525 917616642 905409122 988901608 118021751 388779310 347321313 384442103 29297527 980377609 150105052 156192530 747782294 801547850 460229406 793815322 964733285 983843588 690763887 873851725 757474901 946297127 928453528 942246224 959661603 990786362 234794051 738471422 769255771 895951797 993443127 993717309 170203700 893127491 341762240 789450477 842332151 953354634 332538123 512199618 718978662 742374375 492891272 649463652 903018927 943907790 294720310 626149374 770247920 890197199 75672684 512759703 745967675 808063481 501447128 575833903 406508926 912128196 582338412 987728712 248963408 689672878 758548044 970647529 721736052 813000047 557787274 788210685 918828403 946762772 972022491 996274608 145257807 342681619 447841058 915040087 646485419 991397897 724198266 924082335 296097702 645926022 746522670 761424188 286779949 416628696 155084380 597343743 57195578 338097524 679213738 852214952 877649317 944582473 501721542 553764556 725847478 753832901 853557725 917408212 852852561 861138123 986432170 997824911 93477188 873803652 697107437 800060138 554677631 788709052 336028078 721575841 775428887 800556280 338485566 923872318 700917416 802835071 588990135 688740436 451346040 510932385 79079681 833132859 361531190 660934740 438525255 792270895 930566271 941802723 127225786 213640233 537329219 915735406 233202995 441413878 355326552 550005741 313573005 887541861 481525872 614829891 224258345 258210272 174450288 852936164 920167392 920500352 708089627 908497616 685644801 894352359 8681280 65504816 261997010 987625477 928226333 983586311 956645801 958977494 206365472 482561445 963201678 974276227 885135557 914605496 770432631 818613785 592072286 686765083 752817831 886165520 112337658 305237591 882228744 984431615 841415105 916416917 52585459 378558638 412356994 931563675 111513053 374348014 157228137 695535611 862113282 923678954 138993141 469141933 736977214 755869016 286279729 782361052 180164274 336994060 749699936 787297639 29461293 981874557 684837726 858420401 358317714 638103639 700600722 904331244 906022673 944344324 26282616 205469792 986555526 988555671 919844155 936550261 527518423 767723931 456222992 521858873 268538392 427513527 665615277 809513313 408526466 448080005 273622423 792287506 558148753 979394400 839739640 990981309 443567554 873572767 577258395 745359864 149312964 749929737 687645082 945243799 251828295 960235028 752478830 799058908 889390733 944969622 190784601 539369800 398535691 565154751 512642048 808384238 602098516 797115180 460860224 921937114 340224833 695949105 913837562 947202713 482801014 704703194 69267299 681916462 193578978 439689318 309097361 788660258 521724419 592188799 500735991 779002399 382114475 675194775 974921313 995346321 875767607 968062475 584546548 911684440 664816907 841235148 187708248 745275190 945092180 957937634 808991680 838099208 326609357 849150997 990565714 997669663 803982858 882321080 721940701 795237100 728428591 842749177 526943027 841228283 943368955 966805647 443657282 637422633 788586548 809300704 914177922 975237265 732316159 747665322 317533647 778151885 197758354 588436026 103485357 861019754 355770817 538055020 388145664 769767409 495418293 728709452 711046537 768550346 90240583 741254739 759598590 823703443 211064570 557011218 469895326 969091376 61533693 323410123 639192322 912037913 467846400 589732669 583232267 918722838 95814630 374743185 939199336 942411817 312968297 558349167 931555534 995251309 693269221 901599137 973245888 984409414 169498000 589463359 254447270 913710034 247572289 709300035 190505256 822851755 58899791 980601551 51926541 896420220 565817455 950244466 331975111 357680715 326243299 819630740 72543682 637280799 511223067 693979792 318256284 848945585 359030527 502705229 97101478 187954402 820661329 955614296 836284653 964550915 448671475 642249367 679336216 825712104 3249280 581054793 962103883 975703278 568472326 702150985 582221489 779573952 70057246 267200860 23397876 90083216 937018853 946553852 403910729 893954496 614038570 899481949 498253777 524264294 590031846 832603567 547273067 926630975 614896663 846882331 775621871 931265653 858390197 862132156 474090972 697324457 938735283 986712401 879540670 927600969 497804408 802405494 317433195 797952156 247755148 312707939 321674943 988197137 438052690 712309614 316547609 742382157 487065554 790142164 961186282 967138976 40432023 681020962 25848390 363147733 155307049 631803597 956908201 989015875 320798929 499310979 220994050 272924377 684423493 949837107 516778334 609108847 233145651 376353575 711152653 905315629 119149551 778468019 831941131 956474338 621049646 642483140 692840152 810713168 124473805 220137404 244872881 506179039 999386762 999554540 788790754 823156132 198810269 218426033 311932438 604941910 520622230 877012362 689494949 745958386 213770098 368034696 408878236 850192892 251501490 348887120 656264667 786172243 299098323 302818202 650835086 681205566 975904466 993870964 247877350 891629500 720010533 846188617 655319774 779710429 788668250 870138838 493053540 549750997 100192153 965414492 192354899 573287158 81086182 153924196 636743747 960293397 747265606 784157691 591345060 844749941 245660252 981686015 511859639 743087929 791583248 865020735 354418889 625052036 515474855 558118430 984178451 994231411 16603637 377237187 369072948 538592298 517081084 788468663 211468125 933936531 580763793 653511568 900412011 978777276 572242108 960630547 563585642 702041287 531119723 561113482 661540775 733452205 655148564 884010142 459785632 569245293 976831777 987328303 277183118 509165793 506959976 617224262 872046562 954051309 574587415 825306446 657998392 982546013 188638921 219266836 345553301 805905795 929873428 951530934 154593885 852243820 812291998 834581760 285576158 743059604 213384098 284033165 961741137 970448135 204971039 426496044 316908209 721597458 339634087 919428981 705499870 826486261 568797386 669701292 845843160 855638672 148243238 780695548 917316474 994810526 715442298 820655772 632657960 929579738 646059937 691741631 26313466 430791958 814616112 967625949 470429531 594180469 677217480 852892009 551843519 739940658 377956281 570385446 151120682 282974846 841785596 963733781 10382574 463065083 652251340 740410838 216578306 629404694 738854160 846505666 392613204 662364227 777837882 963311646 355730141 913699777 466880382 889743572 460780309 833048761 566206667 910803749 762407209 904049294 711966490 994897325 783989415 878222244 417623312 431381506 540642169 775972712 874664973 911149348 165733648 242976191 639542206 829876360 892797985 905451059 272098576 775033711 149086554 553989741 557188630 643552544 356671693 401440858 85766301 693991694 694296200 874631325 884426361 902273059 587306628 696411445 153054914 823792285 672025775 981497861 416774302 545136096 110393682 429329611 490373877 930331435 931969579 978786930 388542167 474590260 487590061 865613025 553357272 964541825 75843140 733112709 815086410 831003342 480996441 641240899 794376758 926149133 116867907 468189158 411942732 757751704 385631784 558696844 183289898 299462296 982762747 998099433 398113153 660485798 562094864 601399336 676676809 957345069 348522997 636974815 196242028 520961367 109841679 464030450 688734596 751104314 793330387 979629565 470338348 767249926 704609468 947826630 747435404 883749685 890653409 954341349 956258673 987486461 199574059 686494320 490947201 508322262 382531137 563036235 96832412 271804091 502988207 789800336 714822400 853337155 831043560 884602343 250581196 346646642 989929303 997536740 436026792 746797451 196599565 389000347 903269879 957435467 524731702 946797308 440698162 975216952 962872680 980868394 625559241 817014625 297341150 334826018 188636357 427331748 849982589 905346082 332444373 756574349 520084543 634062161 188290571 998387340 147086779 285555008 680542443 683364758 184216791 461714427 274617752 863079646 317120938 500066631 860762027 896993308 483188814 703447149 252412782 730106765 12461940 88857266 277245880 459329209 162930021 605346710 411915842 649319180 780004548 861960553 565168056 760586796 747522766 995619141 112393035 613160961 465945583 513075424 490091682 874563739 902006386 902090279 248575551 259142982 304800862 430457845 661769196 691004938 315569894 352484273 890392022 951038944 216529166 573832040 843379854 921590954 371635949 471471016 471771560 880583066 146281315 420790053 23512159 624598991 115723868 740130990 215957930 386510799 702407499 784250515 774347764 816366381 634185392 799520950 951508821 968721042 344683714 532609262 529427394 782288216 287310057 440385589 205793905 954451599 933974706 951309685 263510654 771705707 834364124 902774311 814123339 960023954 755183099 919954890 477548734 808067050 570409234 702091297 823431846 919339399 265734694 977560575 771200907 898968491 790331143 980069657 627175845 913665140 681211063 716761225 718542008 837240194 946616628 979271387 584841630 707511095 304098660 322613604 931832153 981840046 520975503 758924865 634333961 690938768 701644958 768417682 655144378 917918188 237072150 588626066 186642638 299394443 783148615 960927411 261505162 378306212 840659450 848540387 117024392 875619538 609609565 686883333 861555399 923652512 718555154 877282059 791149945 810570011 681268960 862914817 635953479 932490669 455671744 501081961 390260581 867187777 725950558 812041407 638766347 769048651 314083121 663138255 667008757 761461430 639490132 714498489 7535263 628196728 363645668 428747697 680487615 684986476 272766729 629818416 364369599 509893140 136470348 578027877 340519692 736921550 658898797 861368478 686509705 731541962 306683509 944979880 778607302 816679783 497921519 911757560 265393489 642544088 582026200 691701954 921366259 999724767 171810484 824891310 554360996 746427454 638124255 819051200 416508081 612450229 839165728 966477480 21060268 889923826 482607633 522168200 87213582 346789883 821608481 900256412 760918415 908361764 855698513 905663041 756616435 857314223 8139945 415865702 380621748 529171801 847248023 919686530 260820731 800136528 564567104 862622816 91106931 563534699 513821946 583747244 978198901 998343103 801236725 978564944 468458535 772392364 334192521 957517802 898973875 994580816 571254257 740301431 543157184 800616099 360924202 813307781 177408245 763088892 382943582 501333362 498160663 511047169 400711118 747670599 153783079 555758275 14860134 704165750 556373288 855637753 460419975 508241842 666613688 971636300 228029263 923332863 171339306 824561122 911513108 915236480 789507549 924537300 547374303 604944394 361677119 581572079 901107156 992579547 754317572 978586883 778886441 940538649 785440975 871868812 414132934 999187074 659524630 770076747 109214390 352719156 827113871 911196207 796476441 934997434 394771391 805406089 810834928 881774601 519133464 535870795 488635375 690400889 246186953 513487732 621941196 897947609 650494640 739064372 112193125 730435033 117542946 551710751 206110355 981174558 371304095 371407492 810536468 846655392 479377029 556992063 310696796 533368459 882032666 965669344 512003065 670307535 671351391 936168201 830073793 954875627 86976080 180483592 298532760 588105146 188356800 468788611 286723308 828506926 462138752 971286110 27533948 427582613 152929410 437475278 462104439 570694041 112100545 528514553 253785601 440468390 223003864 327057382 860974509 894370724 775693311 848268772 47276347 960991156 413520608 680039545 370340974 592183198 541210219 845640720 520559582 848084440 848981784 877595118 940079074 991804187 684560826 865391544 972366325 992980524 802070631 878949698 725646278 959475417 674205259 869175735 842081304 869955690 193633844 720466805 451891812 691764202 526506157 925494445 586279033 607539409 428879741 592335031 640943251 753821933 483192623 829734829 171612385 863921443 465854897 726466758 450549085 685027074 589282991 840675764 920609028 961971435 762218339 780939017 419723083 423315305 459791192 745967513 309685871 651427367 726734788 999892393 586647693 800884215 939561536 983778507 503591894 632872400 863458737 886248499 33109188 578221516 789391232 988206685 415317643 460401525 337614322 844168598 216608889 441198324 940620333 991674714 359182941 941295548 319596845 718320560 412195306 847966975 788763987 962757393 977401339 986263111 682545747 862161154 950784900 971072486 286943706 573717286 21325416 560822687 946369083 999804960 535694605 543293276 786877173 896002898 936034263 974859571 742493036 877134587 838081501 902654483 142336497 977734040 757463882 939728196 284768432 830013370 882105420 884799666 835600134 883371858 363400390 728862756 58130775 131200643 237830743 496918519 201446390 510235894 657668817 720659469 25021213 310819322 16937028 426594927 538309462 839418595 586509765 680312140 803297421 826484384 684473526 897674965 504658925 959955769 98759278 154099986 57455641 403379038 941139082 994900878 153500223 312585591 158951139 410078575 274145145 655628815 2191492 720043475 555330394 576574707 797613556 877783035 107315536 343021077 546429005 712653852 976038784 985275675 775311813 857968593 630741923 820384382 159639353 413209162 297707950 671143608 63624309 497335486 438314401 463023800 948244542 972956827 678085634 920772453 67183396 628281981 601920209 830564127 947833807 950787529 960683134 989487274 41127739 388570761 857395599 865728293 917718017 952027025 915845559 998762217 15480223 779164059 52524226 336315940 426791303 999306968 970024643 970742862 942376391 944566737 344493863 546363185 531504600 811087014 355560366 459201624 614464359 722374693 215724547 330529884 864974060 866657984 225355702 727972918 149266102 374422871 337650116 415054869 449055925 510239386 511404444 694985900 100902206 378709571 996187461 996905700 315445188 352084830 396564591 911156224 10812559 569742425 435294852 591381225 545438753 780754583 245862514 523214232 367033760 582179722 949598372 978498781 292203202 697378728 60144678 476109732 76285671 951011654 769754011 888348610 545150080 976311300 19760560 772719508 244404444 434467826 604928945 708188380 598908598 716395485 875427319 948568223 530273074 663864077 726543418 967230644 969602341 999780009 681787620 777785261 534235111 626712052 689188846 767801137 683509827 713729935 219879803 892633865 325397806 965091383 341251685 852004146 464610841 677191846 7039053 162322476 672889150 857050392 974029575 995689247 767885125 810523262 420624443 716650545 827785037 834979167 471581454 747264272 176652009 722893819 824289771 891286162 392871493 711316527 130372143 959901205 268694442 282014737 485926503 501605428 36835757 52428446 807857826 949931200 258282222 823934170 754822706 792520021 983023784 998638308 769325615 833170356 944672259 945785229 372447658 454954816 508900859 724681416 161774077 168153807 169330666 390937726 366348896 367007834 277064819 942112471 849624733 945655439 474235875 996911415 898882149 951372061 563493852 742030903 526690769 536266247 447482725 869204359 568302019 927905883 509660813 802250350 432565089 462288046 18556010 890249656 769788222 793382310 644810653 862904942 646903752 775225725 839783044 998667279 392163537 674727098 897930449 964762055 654047475 956487216 371292049 410134447 690494592 979369372 963842983 991847598 940996171 964303174 657681592 923421740 790874180 888159144 446250060 536604198 173172658 318525638 414519545 967633658 329945332 463513286 278800333 782068105 105483146 691997048 580905878 594767223 739672665 801495678 242429650 939121578 247288877 504134979 863510775 983289075 243800978 412292690 118842320 265499448 530259271 563540168 25780298 164959142 408863487 552870180 977398156 988480709 770128573 805337979 84795633 427297767 554500304 681064012 116225525 446458731 267367321 467335691 651695278 890470761 845363047 909072495 350461070 955317125 704497925 808490807 123146091 834195398 828003662 867863761 89851955 927053748 772129765 878184814 251424125 462497038 456355812 701355870 144852665 644380425 781504569 863953878 532215929 565900395 537969738 742647867 244669298 959471957 42589032 729526899 507887976 870057276 447664517 521804329 218409995 291783906 504297638 832542129 319346386 519167953 664171473 967963936 79086870 870885459 910624936 969485098 711604204 718090544 222186812 265537010 994260033 998545555 25645664 460456931 750806934 780526198 198296669 339083045 270231101 935913107 260420647 445681004 855125304 913138873 854031005 954651165 391619448 719964569 432467179 568094256 603979184 713279637 36937410 413612198 50011352 694137148 487404228 619904019 827315610 890919668 240128588 833468078 616795853 755547094 637743019 833855445 731792001 811885323 521410972 685563930 983889705 995757092 759446973 904961155 771473504 901491464 66999565 73582502 477438408 651506027 985081644 994009936 299248719 725096379 502967640 703758791 815871719 984219727 362030133 920352908 952356883 970641599 664266497 798115246 765114497 862670803 780455023 823585660 562696809 845537917 652674597 914842537 94362230 111091344 469514146 980399500 540889815 748863430 197227599 463582957 101091555 260889812 654685304 949210630 608331774 692831747 466396648 821718479 304912503 582192043 529998659 756893172 340980564 896606191 483656938 631156584 309281043 804584602 582807718 927540899 764636572 999597386 404052667 910155101 274072893 623078876 442284396 572836944 621197515 862073807 3538977 64557740 347080196 451826120 716122726 976813651 850643752 912307862 657365294 884147830 697169603 944696205 247101798 547757981 965777313 987248974 86349321 322108557 727491117 762529702 221587323 475376850 143265317 156074756 2168411 605768334 627054254 975874109 70052882 174808514 182234099 822606127 631852298 935501267 756676987 983413293 880381054 906786135 283140011 775439211 478473251 793845898 445511090 451244313 556548371 731167070 260267453 307153584 151063827 474840873 293450867 296425806 939026737 960151612 661920154 938046306 976076547 977917613 682561205 884035662 633989429 970766809 563375393 690950054 106855022 713585031 83807517 935660972 756502167 776924935 806792375 877508446 922040202 988544269 881317284 912819929 766235990 939601507 593596919 646500611 750944319 937630030 782148111 786295428 389683707 653523922 693494325 765535439 24514453 289320177 861284088 927193055 605015213 716771614 747692910 760656325 446443690 890702186 360081998 570567436 451251086 942566940 50264914 712546586 704106658 727978860 902887400 926042906 672647377 727027762 752579695 783113873 169015707 398358384 885064513 959146476 691366415 801723518 32127312 319868502 114358618 175741093 701612901 859322647 714003247 736567045 831099040 921136161 843368306 928616188 492625756 829387961 784460576 954061973 146590974 355593786 782497884 803102901 492354101 810637656 861900154 935809281 622167598 689405053 896150289 934111926 509814712 903819259 208650499 521142117 543407073 889324520 881701059 922935121 491411343 942281377 386988454 460552981 41272980 825539873 586115283 597898182 873995006 966511384 406061075 515613689 319139151 588624900 69021658 149093387 657168663 953722504 566350822 901437321 240322164 460663066 933297064 979155528 350120376 642390395 49656444 157036863 424626371 431152648 705540169 707901996 919397546 978365163 63217652 756229299 745253379 753968104 943014293 957915092 74375681 251357135 718143850 816010434 426665117 936904932 213761486 799135186 885602497 899115426 626838009 994202489 827602753 969872045 7316328 183516740 443253104 728147505 342954427 876982956 33453080 127129579 807980240 871423891 730975560 939340856 247161709 634277576 951366505 961264082 797470905 888564415 603818827 632444879 311715552 832929750 224250245 472213829 172954540 575000072 236345374 880011621 466189205 602195639 967200702 981438661 713988412 865576490 620274151 808843450 887461119 954093810 817161258 917301213 993984577 995301332 690873015 777486168 531202077 713591013 504778372 588947218 824174334 938647669 722449365 881612153 568287762 767956066 166752245 902117332 554069150 921984570 530329853 665451020 954762543 987417809 447267485 879171245 320591981 379884591 982210184 992413052 605309566 819759075 408453364 822942386 916364568 987848840 583372181 711978623 503663597 629859544 153967325 467168194 893414019 913993559 277920050 375620592 439051823 833965396 905414645 967172026 543095058 609571171 457513729 897483607 746596938 769656964 682290723 808635844 372673509 995216423 80808815 122725613 838185635 886020475 862324989 864186682 554187946 608590760 131257758 400515857 678704105 712514971 739014468 828713598 469658916 729247713 196112950 535537832 375421172 872241539 873499222 921244614 994660967 997628242 881095977 925512706 567494350 685390397 487645951 616905578 233583241 863510382 778578495 998435067 631678548 732166657 129825771 912927122 951021896 984013948 173284438 759386189 312651792 742809127 714439802 736757642 129637792 407737202 203882124 658890659 999446902 999991140 408332927 913796794 345427817 465222767 57315173 479781671 757039536 980168502 532702475 808615025 940733189 955720080 580246756 742476732 963849471 999157783 562743241 882237542 786287816 789895697 255535232 891207248 777837830 843685603 553966998 858263076 349346282 743494796 820856694 921265590 43463136 634842805 824303364 829454594 395742282 591826383 802060566 958103612 562091985 655605419 654763281 956204255 873392935 999638706 832384904 992475894 664335122 773870032 816436876 865692341 22319965 687495889 460821434 870683284 821230600 950904056 563698253 708484620 954649453 973489889 882729713 995452126 200881466 402847450 88739207 518940574 368864225 796116400 862832629 907044310 966394998 971901728 975932752 980344731 818534180 948142433 307548419 529120383 11497336 95740382 803251040 959394025 888314305 937127373 70035873 121772026 126671177 593401182 697923734 903165986 547640693 729691611 216462305 408199985 677733584 758612129 751669025 776633576 411074092 750695674 336584725 348007128 323027774 645130149 103040727 935210582 858772764 913795225 407323267 513944816 78772398 226815973 115161029 743602644 224989415 458954356 965047619 982298179 319211920 757531686 231693072 441504658 95195444 95775368 386590031 976513259 251115286 387410017 54153644 879998142 158675215 165713638 415769127 890222098 436280651 994013481 545857494 549466960 565398514 975644346 552681709 944374339 978376626 992338773 847464597 940389191 774121964 873478919 652441692 748947040 127544884 533644332 50155809 440659123 283632280 712757568 815637879 995494251 327069303 397954039 268699461 342977809 894964212 935696723 940393648 974456513 826480789 851798077 418224929 510602519 263466072 604819271 418947873 510411704 107047397 908493759 177823537 720630182 139341377 417287933 380136470 813898059 407843594 893382358 26296340 85961372 948053286 993682432 639400156 971621811 27829081 663518667 394062821 745472469 524954255 532593858 920010432 995547386 917206762 986481455 938749587 989718971 61147856 840852963 590488019 747525378 283577851 824729461 392442698 810562661 744926254 934263803 724621096 868496308 727933017 903530816 602551171 702116003 835099223 887560138 498263572 655278147 786474403 973198740 417924146 953508205 785539486 943820909 252292371 505126540 699765817 779040489 932065486 953483032 858249576 976733869 600063313 819382841 497690355 658439545 25340357 417983918 305517047 732964100 368589406 524488730 895478871 927069615 295603897 904618833 306205355 548731655 176642751 716899182 73875269 314075907 917107860 928956038 148994157 466855433 524435142 686562117 346205795 768242851 414926695 723860457 657474340 793274735 86571463 505286779 785672308 828950657 397495380 547310429 54847966 913367186 949494772 991711807 933740032 966060871 396328329 813629531 299728538 795468074 483641151 962662501 315852331 786314501 569989322 656196447 775881160 836193198 702738325 908470343 474586980 486623969 55850375 77004732 825544088 981683484 426984784 920235757 504605700 661122518 402934595 468495745 765687526 825326022 754004685 878140021 150196339 200551077 896368790 925921120 531395835 629981838 121961553 953959480 808807845 924262073 58341011 261731556 588015821 966902172 708136857 736378280 146714811 713918122 809010098 879340702 787001942 933782315 761920972 864887117 447477506 835483488 652014423 956280343 838406806 881711563 82393441 188146234 381393670 593529607 145921234 494318999 529061969 720578894 288827126 609086556 666665469 879037523 883371861 994906327 264241681 849026484 144814000 811213480 697921338 933356815 108871424 156540687 679433929 958063580 372444212 520154396 830882001 993048594 698742930 783458236 97005524 796796138 514717914 608603410 672013879 788792559 965509378 996293085 589438977 590504560 314002067 384396294 96337600 935005146 125861048 291773786 10946681 299089417 902702577 934728194 994006520 994313571 961774701 985774686 446042633 789256497 134001445 617265304 268918854 411640131 818082553 876911680 141691651 277161155 146461531 363903216 880483302 881798713 311378275 469006997 647794004 916776324 332123411 851058124 3863512 655581012 8185693 364908651 399946467 661619911 575572887 869374511 291337843 529407057 419955313 839853048 795859677 943434114 190011837 780317365 386627708 825995880 267345510 748203626 772920490 988845849 72228243 186137401 444833793 544693471 119604351 575259823 371298552 622396192 340536355 966148268 974371574 984415959 370005738 736454438 46126018 423094312 295711196 733059950 573680703 583499142 122846472 637095361 921021930 991157875 919184342 988898591 880728946 889815531 390493444 568594056 558927671 728676645 197270897 679157534 634699215 937968020 217804367 559693882 154432606 856471568 40856575 153431235 761673657 828732068 487671461 898519174 885427120 946381576 553394577 856373528 666724067 921058683 13501711 498469032 769608399 976849073 494695492 902014471 966461494 994772885 353213967 959844529 416868590 811680099 965993028 979277898 387429340 677610952 558763441 896621842 856973974 965824571 783008360 786770124 12821404 887943142 395445429 547742811 653954959 777479121 351027716 370287635 716047908 914070833 399713411 802443368 765926969 996100320 343609506 828672480 178045959 841619030 465794667 699918987 116556402 243052380 790395559 871655516 530246850 680704031 456456811 655893579 942490711 977895601 495749883 867502125 235698296 361240188 985725627 998423633 329194771 726835782 861302455 917150555 527867376 628804679 52599444 439144483 978642244 989044631 451114699 945317485 193759058 746632105 569634433 941387612 935173690 953143508 39659340 826233345 25666534 369134484 838678328 903335242 257334216 696423388 745908818 847745150 768363417 886681152 181315710 330410467 620120454 739394080 803552298 917703273 623192203 856439553 337058007 986556799 25041371 510649718 654580908 972741227 661029402 721283292 937432776 955411849 374462777 655192750 92657764 481030419 423397848 536442480 223494244 502116833 111066126 879406418 317352673 733804126 945451394 954924684 40126902 268209691 404010748 453482848 921562274 936879125 949823144 972015119 336403549 622581662 171352931 698002626 684637529 835764189 222691387 714549257 637970425 644457187 518497466 564569794 258837517 272990047 939161085 975802666 919330135 936440343 193202861 855349986 742294656 865761002 939496027 946403766 312340899 335564389 109733176 754448436 962720281 997649246 814939695 952661218 964377558 997463317 987857544 999768021 513745997 552183024 864001175 887456992 970400275 977660427 375968923 442663598 258090383 493906854 281238113 285980233 764017185 856446447 296349686 304516666 639415187 681038725 244372301 336589680 713653924 747060530 855904253 999889776 642954754 874262028 594872351 649244839 444956765 625913905 646630083 682842508 284328762 720402501 13068822 90858816 212484763 261771888 823345530 983949553 699693845 934895766 2322628 742562490 676765955 702295262 922986934 953353357 633451205 667535443 856449958 857191476 210188 79616180 340895833 832642995 344714475 832219071 531837005 931631043 458415570 745034162 548458448 591478204 973842083 985318892 58462237 894476980 716917415 777551835 926655115 969225440 780250648 951711788 850762128 878080339 121249273 159816532 88846804 890214217 505919312 575292605 11480986 351245128 410935278 911626281 979571087 987718133 574493645 888432453 824860538 897575516 814716259 846867827 821713999 993036759 2672691 490385502 674381633 977482550 442249626 509711174 506868041 892721516 332521376 571146938 249267678 741907189 953108774 990155014 400759753 512994787 207770804 602932901 681155926 879537844 323855890 687259773 325393443 375717929 992472468 993208754 53529298 55404526 700975953 844518969 352541109 867734823 955788394 961707992 4628092 229853659 375341641 981216921 249999926 369023937 186829582 205176387 836121367 850888581 950402732 995927341 887921449 955808063 706522409 912125227 734476932 980475153 435603173 666006701 166750595 842706920 546354342 569839694 661411170 778002620 693354132 840663117 710803327 786200565 258253350 771923959 319583491 471413060 588701007 692445116 521956272 561881195 965582816 979701000 763901200 824514013 520591748 948070849 234033431 849532111 44838948 504907818 541302184 740226724 102790127 151926137 794266972 970931734 287205576 366274959 526407441 536178353 507691402 556978338 788649316 987801726 189984374 786526934 634037900 937120667 915134870 959860258 342871377 761655799 396990229 932650602 165396352 773155424 771459292 902108636 516547136 703053625 527773219 706399440 811309416 866774112 794202457 866987451 706715484 733477155 843678545 950380622 428224209 587370899 622565222 839577670 151683434 886769696 65919779 136788247 140578102 701067603 903108290 953705978 986237491 999907078 685028709 693128227 561569445 724615922 574666444 872325182 945193091 950512176 866759490 951012019 614702171 790129967 951699235 967202208 870657217 951201001 824217738 992569072 17512906 441220627 254867671 884287711 490239182 959474828 32685196 143567743 858957900 955057430 351112459 351410173 498781506 977392110 134569375 583776787 849863099 874235052 740794464 784963531 596509250 945987694 537495424 797821729 268720836 492230347 577607417 739944828 37637591 500151436 959769248 997570391 254976470 929029663 154138414 881613253 527141055 738146502 314179088 826626992 517270066 904935559 237451676 874154729 907100829 963309739 713864542 877963913 217702921 455418043 808470035 875720431 805568410 836271921 434006575 799056990 59173182 825523608 493593538 521884820 187128617 846446658 54166752 337971721 622266741 693883530 385834795 632060217 930505190 974774864 477120182 527245563 289834476 323131037 288762188 365044501 41733020 141307668 738609242 835494266 514762658 759954867 164122108 551074249 920870228 988272442 152090331 458359421 983504304 984873614 860008830 980444899 118920955 684950044 296570585 771179039 693360175 705085361 469728444 497899587 474809084 646192256 173369764 243075368 969703545 987680511 861045008 969215032 358847529 403479192 893686655 964598986 745776196 832144386 241771264 614670233 998905528 999358598 393921189 665900641 810943728 899047188 503554572 560790349 118319217 599983812 563377486 990607612 950509202 995408006 667814527 766915164 880556826 933481578 225417571 392802172 958239246 965113795 527734883 644992860 179543585 737499381 390950354 889865215 258333354 510087940 860287660 973567665 740803649 842426422 211512007 674439020 21079297 995881025 46990559 340335915 260476877 906907027 243626174 671106162 945362954 985478803 773788970 779275378 922468822 965693254 346436397 549195361 122350068 407559895 597335363 646899768 121374488 452276569 66247555 735632802 801522716 959700416 227961547 302936604 462923237 539429880 799971946 949727853 180676394 544169451 984709643 993120989 370865843 982280015 192686936 977149197 631081275 647869337 248423795 821683098 871057099 987305913 415636318 817545181 753661400 877160825 512133546 792359337 64746985 285932382 100361117 769004048 160059099 681576887 186599981 727648253 576570500 940952354 551935830 820465868 917273025 947002195 581905599 680465779 446911273 951990048 940475968 968303273 670717961 919726321 498684754 641734349 456352434 735674869 792790968 933358449 573798495 762471735 451477898 479880059 724882930 916759662 668650108 686629367 700351507 819434908 418882794 625568195 326324604 518779875 630276491 740121294 389777807 697707166 42490908 610510180 358343062 598605195 606395551 938364322 765954545 914723858 392736649 569392435 900342284 996126939 836391533 857167115 556583670 695046230 455108720 816217379 560217308 712040150 365041716 951244926 989397081 993121551 30247480 322801177 25730969 428444951 487183704 575883681 553193485 764842201 711422229 803556901 402246508 752108574 634864779 833836759 77620781 722875997 452551010 989262799 897412655 994420254 469610472 985503043 958846488 964342515 184711774 465334187 667621605 764594532 271073799 922266203 43217937 342074218 216074051 790876057 81336566 635552483 687985676 838248885 83750874 418200840 119394441 822786505 54978234 282466196 22440075 222703821 284190230 835398652 775650008 794017902 925091489 973198691 311201718 855265081 976053153 988377701 911403691 951888393 744293263 981950545 101923308 204349814 445320985 792482403 207956191 733176818 928463440 956418859 136570691 344661250 174925259 865188666 594088808 922287900 734923269 956794146 290054806 839317314 689788880 819158668 956404410 959998323 337014739 820908319 574579252 968812886 686604035 690050271 447678156 753596376 844853828 948016967 762536059 817208259 317279440 421102269 291098808 645975529 806179811 902089450 982757997 999590158 512755682 559034346 123961709 310470153 733394777 952849794 28352747 998548674 304284199 814657847 145645559 480973828 778627890 820353038 470262715 997819390 749190901 933671093 458932908 695328470 989427907 990298001 706471181 959222009 187180027 292798310 417191431 560950873 399238421 811771947 196278400 558073245 24828548 62226760 148775201 172766209 484560244 690641196 106179634 989490728 864330440 878013883 318084423 493015689 972678147 991559129 314797761 600722190 801891532 943755208 733397453 797636261 892326464 944521589 261799514 669235962 887351246 957605574 783657570 994915105 112326359 710888437 42310648 163143715 790126663 827380622 210049138 500723035 692671946 971299930 889785225 920720012 400032341 469813813 340140974 815625283 319958651 792993419 64901710 107320483 57687181 181283799 97632580 358557825 901678215 997897583 130286121 230758215 604914162 663664397 391323653 616639543 939630549 959311675 269184746 269358893 819818285 893538269 559221725 693915570 447120730 520204422 786290357 792622595 516503339 919970894 733979489 801313715 818282850 826831576 987937208 991700021 331958994 535896846 727067272 986304341 177765218 639592608 85263874 536847720 494149953 715081690 762763808 962091569 444633367 983348496 578074473 908803658 328149454 610692746 144995262 658477140 542130679 552160931 232452212 815107329 200032548 758709777 76073934 344024821 664702526 906030611 82313526 125861639 642990689 832671830 676930726 733001119 865074824 876084880 693673930 982577847 880767110 973241214 369101844 821839767 381241759 385588875 858778404 934120328 24935420 663986660 339550520 533795324 807306799 836351116 295753875 640962372 55474469 732162946 127602391 196482858 435642263 619684463 994886722 996963328 983177680 992585536 652904630 938587300 542364217 989745932 740732074 884226605 291137181 669749693 517804395 885064407 974298465 990037787 731516159 971657828 434352292 545444518 399645613 946803627 459385146 671713847 977556415 982367280 197043097 618754447 450151829 930608997 973329382 990352858 178569989 650587361 896652777 949415219 392155588 435846091 413868754 439582644 576632214 952839932 981132935 990558641 515363389 522952492 272061674 853435680 326375999 953184658 781821274 800348308 227308502 557122745 377067026 591734842 739527165 982157634 563225967 769296257 41069932 751196535 13277513 737120694 645212521 839757168 961944422 998901104 693634979 883663928 800521118 853192093 505840749 628101728 347563386 365224086 839561383 935405558 336165618 569047901 550777979 874233292 267629358 608328802 219202512 737851119 571999859 630972695 156999590 844231765 806050857 813297905 335687494 579595248 936833826 960547613 279488920 728076527 355514559 511195067 848536130 916947140 108957535 912467237 500864226 540571818 958166958 984828227 829959962 857592655 222601500 572356540 427591888 854586676 951987270 978332879 329914135 678052109 967501276 974786345 852086461 868074167 12651637 264501810 53015579 183009589 884322782 940093706 219370115 650424381 212010174 701431995 742714347 762482599 829800111 966109767 624553169 821209881 511892324 598322385 696957552 772836143 213369923 575980660 63381291 183875508 401779970 578689311 450257739 618093220 731351912 887310356 986329173 989227208 663616778 943769722 382617637 996627444 108249744 261263422 902161019 914146256 986441085 997281853 137183766 584240417 708395095 972825092 75182066 418664124 367860926 949580376 324974775 854776126 623780674 630246476 850715693 872005130 260895674 734350193 753332770 756592096 706432252 805744984 665593574 978312889 924269327 981230112 186947035 433176428 574129845 992101157 934125355 946377329 682645692 714849442 671657344 770824214 502401134 711183344 836510197 997475479 364916650 400594874 963929692 970701083 501097185 538586842 270749121 912651727 964695754 987350520 140725133 918887784 86762181 732065488 324687465 388232491 879715109 989729330 792773035 903374736 294811055 373217795 955806752 987007944 486561004 632202927 871350549 930305171 621096540 630006691 683689073 976090769 583153705 968946041 191680031 319394174 556915196 696001760 20290965 591692197 989335390 990492597 261701006 382924641 725800492 737432059 340183848 438148976 587504940 598785349 160457670 581342922 304651714 753266029 746894366 749111726 44377132 933316276 446948568 992733357 918345157 931138091 142227567 349277504 938162760 942486824 752957729 958539850 823133080 981992998 950618344 973572930 319415447 371401668 557495757 867457075 316447548 482652115 632716472 700837250 484727135 586048043 828182476 860768518 237521122 948599182 502558717 815282159 117093515 836354847 345010774 930215814 515275266 858831690 372372953 391147064 504379770 945367755 191351903 976401897 362505925 415941457 946154286 948231634 552594191 999188642 630897679 896194540 451629187 691339810 100430320 286043336 292438355 714229191 274728418 994869689 444715215 460410267 445944144 536266357 344736029 842236347 811084683 987738841 632173709 748488427 896282084 939193412 418645444 445133520 733142638 775620759 418464871 596378203 617253247 749669437 287742710 532691802 464135961 558285291 547266741 943290464 277816195 794036541 876166017 915827566 815119627 969754168 396826356 956939267 2725528 117026004 864336395 947979416 965587612 972167077 24839653 194643987 828406640 911626563 491094206 952687276 785687767 937387736 732759851 959826588 438100381 751560261 653255654 765250471 316067640 762875106 900551104 955457474 854244925 867786385 98851908 920388167 79987452 361435314 157502201 285926849 252036841 777045608 878484178 983546748 352661186 825436444 926462816 944535620 639801648 895192225 881369725 985603431 353221061 975887518 625799122 691081955 521977308 740980155 819391208 903885486 362611405 813010043 566054942 774117745 865283438 890969953 54356597 622373981 554155361 837872563 137821039 467602950 888253590 910218024 44324285 740394371 670988897 798026229 508273587 707520478 681463744 908819864 862122707 894695018 682168503 988117272 155915288 384661745 164851729 471887361 604376502 777306526 668947313 837965761 932816798 952474029 776422072 960472780 840211642 903886993 81594117 105898712 410070488 889441126 713605951 997363876 923578296 933656895 359351579 661979284 295291741 861149652 312257754 395581674 30979760 425020950 255454578 835179625 602390937 802489720 584205458 912839283 650662536 671554681 831878754 982022234 507363894 642831045 653528829 821215736 502776259 719776431 565120743 921494404 106116163 434122929 11507631 642758542 768558634 830269559 360437458 488038092 974832144 991334273 972999634 995391068 764008314 855540540 276335364 376522592 432498591 802410431 790588362 894092614 661438414 794544149 595623490 640287588 282175338 738374898 79037441 167377538 947691030 976969110 457618963 872985326 517948787 924627538 291326487 528065927 591321079 921618403 824527944 880467255 609645490 884224324 191559347 682259622 471366416 948277050 778668207 834443892 818331414 859321038 748890243 774707395 114405544 142227884 705914282 851463719 167833950 413396479 582197022 808578116 390264441 758155059 99945889 668509500 883049655 975710158 492707413 609485546 346320407 803508312 576360600 635456383 707208554 947810966 252533567 652556813 570069740 615192145 543727849 778208799 746493491 870600564 949053762 983972940 715729182 781930151 482273350 988539672 510695701 514582800 10675051 717003675 287853732 537530473 757414559 786583364 280329310 597106949 168998292 943673263 699954813 897929376 81068510 904467361 956550968 995596922 122319420 877566610 892107482 906803909 849806251 853165884 349966624 653111700 894482684 933045690 76164307 664066865 290832142 362078049 270807408 941171021 768774411 965067810 113021611 334937845 76439433 383044317 25787772 942908040 562183704 625094637 722312684 748228672 223975845 772167293 282198787 721784864 664283033 950635554 942835189 944611600 982853322 989955625 659814809 707135627 329472526 832614624 234958847 519305582 202200169 421616040 560661884 938203523 8056396 191230345 229125827 910172726 471241658 970586963 946860573 947333631 529612356 998809246 950041917 983692242 797526076 965020462 12330286 387883853 758397813 848196708 394586401 822398752 858956800 948302819 237139291 373084144 553364125 781599330 263381339 392476619 141423649 690122735 269760350 270554339 22689587 469532639 38854261 776973769 764880694 797267832 857135572 935175319 226544130 962700024 489785775 524651865 970369168 994586409 799347440 885468348 371167155 706429093 449245050 493957000 588595693 802407610 582818633 631440919 570836303 689698591 445411656 747500288 389745772 710908305 37676687 528027826 799545632 976517424 968763882 971655464 726520640 828996982 587655936 726851301 995104530 998044609 442583047 663207572 61721302 249980805 230501397 609747067 875724586 970450653 633067356 838489132 983181648 990772569 775617098 826565068 555924276 687228174 886807448 986388221 556153781 863801866 647952786 919991870 426043821 442245830 805379977 842681800 964464878 994745838 135582606 987924766 287573731 703880352 944665437 998082193 238660101 785678275 309096818 457377815 936601322 944935483 869580885 939001926 618943800 823198188 705015897 748782108 326050009 390206449 51054561 440489715 157655076 373492816 323980681 475512264 474102431 686023899 922038580 981541320 445335238 927933097 843952290 953330352 708595899 913661815 753210860 904155202 191858502 695949005 813781109 934642269 612323065 780312100 126030885 589617853 792838315 949012639 199827568 389898304 242922542 447996526 319668869 798074491 51832259 476821535 775654087 895409317 120975953 665372593 451186533 997017155 128194032 970501264 969537651 982752883 397352106 487677590 110759672 252949385 464824204 781036616 873306087 937642033 251472760 539945100 835642583 888619310 260416571 673586896 675711401 689924845 683481302 840396733 650824905 876358925 199887144 387069413 473005126 685079689 902858018 935712248 863438715 920323631 532735109 748965649 64649041 839929828 2956408 31198498 372722256 980260838 979538157 987005594 123679733 487578164 714846017 989593822 409799572 715025646 586428573 984539110 468201736 563730271 94990164 743232469 797380639 962498002 483953472 637986746 755241822 976031178 183135906 615770269 164360914 271676737 119839749 693678176 472811490 857632490 793977402 880835020 174170301 872546440 704304598 852394343 214950383 559686099 657200292 759057103 117560123 943639795 407974252 664903680 208518609 922857330 129264818 982761129 664898078 671450934 476818108 939368146 318715357 802686140 718144280 838325010 803581733 840684956 243290532 614511963 961893195 968287787 528606219 567086250 91893954 910526256 451181659 673829757 429446928 553514362 415991349 579444822 544498298 748270540 167477905 934165545 946860479 977318118 917054518 967627980 72430903 179176938 36362604 510080204 396456756 704984303 208518140 970474308 818918395 878178100 320159788 566404272 530318144 695350283 215103127 998174849 239366378 944171154 66548251 782835730 225464129 680629931 102076171 694494865 881559593 939760383 414681311 659326360 182190166 792746913 152357714 943652694 776666741 896562359 410452325 904869989 553462124 704241949 490104934 925656403 992684482 997636371 890127372 935931479 722378216 981693703 687074668 894759543 621142591 978328128 779549232 946464872 20689050 86102746 953090656 967926531 63441692 370669465 163844116 706975363 544542914 646783940 833897500 970322703 923108789 935229528 805999462 929405374 911367250 921911622 150770046 190561443 668415957 742120996 107507393 356860038 546019490 623932810 611485274 703194588 300363214 616196179 643833188 773848297 623225398 992061038 502408335 604454015 424837867 525035923 642599152 790092193 142944020 463393164 68616794 905066254 455678549 839590160 112146122 910606956 373057396 441335008 413814833 912075828 196847366 779873536 654537836 987331360 282389433 410883280 893914501 908359505 295988307 460612121 812912935 884433682 102554507 375653235 135951939 214458424 503889752 665143026 254200969 731550373 390526950 871106210 873222061 984382806 909242028 914572516 751940284 815216166 775353236 981507791 479302796 649555905 48862699 527718387 765035647 780261757 912391666 924737228 928608455 956815897 306057512 657427259 440834665 466660693 53905479 252853221 23238599 805167570 247346957 993149989 881838178 890090785 311833294 806922103 171991911 861322444 143582223 998730548 498893203 608396891 993399890 997122182 737346684 748236485 79900875 986294276 865828968 877133945 365945727 646830851 310510167 374657740 288360380 302878144 23309309 842805936 14737724 694098872 21003916 343391532 751673755 913000700 286220022 612953522 585935415 650519340 822368472 886441296 12787961 333062609 601079253 822639503 540595026 651775528 739087686 820578840 646393914 885755149 22869777 863566545 180435953 554847367 20243194 149002143 504209773 948119897 684427994 844161248 988630692 993482062 334636710 943488447 640541148 759964487 59585228 158136726 809136335 842704285 639253369 831644253 113897504 894642347 289846261 295254982 85841738 489035505 839600137 887277918 822976464 879795736 755682227 835138072 531887770 841732254 471366154 476375341 121844421 660026842 33585302 455530532 522784007 822149981 41009287 819204525 59827266 72014557 320495518 366533789 375070928 488858249 120733482 908885156 890655582 916649714 702633193 871371483 556491598 743366707 112702296 889762697 527902127 772465571 540372362 991081931 671580888 928086918 303871401 310234228 900171838 922623474 167881053 899872848 969701494 982068259 452666438 568378785 628598671 845026680 173826059 373836867 521804667 789533758 692424785 782983680 618257959 844215422 744173999 948096236 839508770 865188879 661687078 807326686 258047463 793549812 809484673 832514858 570900993 639360701 159983730 965715682 304268170 471865696 69176648 272757789 296406445 821155368 13331864 831436376 325605656 717233951 975541491 986756116 618703304 688241220 730951393 763580025 289850564 473244596 647478998 999246953 115078778 571111480 496272076 644890351 522670085 930371762 621566424 938594821 75551951 217415564 642076655 766664199 416437444 812045686 671384570 748684403 367619673 606573323 936839714 964200051 847174918 997531134 81803452 816757823 33769666 183626624 938270706 954121811 751842531 922194650 600213960 775810078 329872507 702892061 750613470 920511569 597182176 725811981 763980866 766508237 333365643 855230743 513764144 972674317 8905733 899609880 456510033 939973407 485725933 923273983 884321857 928272898 466561904 675943535 71206215 359777182 255382553 636741011 168569786 465268433 734382706 925446004 915407658 992974973 548833014 668763997 508201505 944350349 93518286 346712284 261152647 939806526 300585507 877322303 241818067 541219423 653342554 740588090 396335965 536812539 147857287 713182373 676210580 867886515 668219255 794367572 858331520 859027561 620020397 942342538 469725334 497856018 459959699 902870519 777411541 778706191 580224942 809605419 974086483 995917074 513795000 877364149 448955828 498791449 933343285 962186118 730819699 972041137 29277322 421573682 857505269 875999875 878274529 969438951 477109034 800687244 340956019 897930584 866842493 980970671 131206880 580021941 855876987 956945377 766130159 968168435 186699818 535757706 441723602 846790722 175152890 657349631 675910475 880152034 863690095 943364983 68742452 552517369 604066592 806570310 292898832 917156423 191572895 690849160 200956914 555602119 676365256 947372996 845330222 891737551 524717525 902502008 174481261 520189811 989480739 994515645 609186527 880123878 57001362 406737439 916581199 991186430 905926298 983044664 605042645 693288050 899660109 919174390 419171819 548511606 621918964 761723238 940519623 948403082 90068065 512446258 574160164 663962330 540697134 715931072 320263251 536172908 949294652 953842043 375423316 544749936 915078302 993136903 804462818 844486908 44902581 885349603 534076567 649947509 32420075 958547817 269940777 399407347 924986030 948365725 785041792 912105462 545455300 638862791 673192272 843466007 226174254 389141557 883665642 980991674 21355294 602507625 877560155 914034634 702411318 778852571 244305105 408838253 661613834 767821017 707859670 927883238 533725518 995068515 665570312 924457063 419083746 622181219 516351530 860870590 854056489 971927477 585125570 960091215 4348757 366301190 482251642 660935341 683231434 799838561 508805790 984426709 615744279 685243387 373317835 954564706 736567 399259343 253485577 304977504 918729918 941448884 94819971 948903386 407147652 444621871 909314485 949619110 911269553 939586825 789802732 998522903 375417310 911813250 676987561 774356530 722787475 863377809 110649083 360456199 187854887 965288718 149786683 242467884 453912319 556109706 529567769 831923670 874717140 922951124 291425119 987530261 795796047 969815266 724371836 768395236 562370929 786367508 561963990 921293451 219815334 531315261 656549135 788061258 626546789 830107446 105660078 293818066 523237370 539103019 706323900 731140835 700126399 778834368 221937119 877971479 435850102 853920419 212048021 273131939 652369378 798981431 688829122 768494927 323332984 860099494 279912582 973178254 646989113 739180083 552988944 690504347 437396995 734133393 15870241 298355710 277953338 735609194 678353937 921118129 8588744 241632331 749731986 850950106 976277672 980253318 445617908 790824922 458175963 883095311 583982138 693953079 128302742 598171661 915853727 927890373 133285669 152808345 966943356 977654132 12600715 480394154 574802211 748549038 395674469 549838190 314167486 941826058 942409836 980719498 906031350 922902587 740647564 746228250 617940381 767121115 511553165 863379083 701995418 950950413 534675888 551401456 330721504 997589497 775480485 971769847 945089636 960305018 607426947 613342673 275992115 798113356 784399434 801396998 290128311 614881245 405023769 664570626 934258292 965906874 60167646 316643715 423630830 998528732 542587961 791645605 790771316 982708678 572745 439496910 39005258 870389026 56079910 116311104 659977179 919851624 676283741 704220722 827260012 889479193 789480623 990916358 167786242 229840046 835842003 966587177 823291956 933158282 863001290 942769996 105694261 417810443 908261346 968603759 625169570 877081542 253013987 338674627 318706061 723889989 856869456 938132719 306342127 358494755 954554146 977419949 261434818 913851316 382966446 599389533 484097884 943141564 831486329 855009851 761660389 783322531 219991797 286946067 402936670 706124269 780471397 958963646 969141751 970144905 17903180 399184914 617608894 785689060 490946828 661320913 568955284 907522673 338823544 379817734 272386262 655154826 704604818 920025093 42374773 870302814 540015760 879704398 847040386 882249667 121347963 481158106 747686743 910591769 792677010 951999504 265823484 979068102 267834039 869048870 202018231 333839440 581419787 845904194 325421213 579528006 315911774 968519789 47551538 417451779 258412563 269719124 665533432 970468217 523667490 660562288 316377667 800854399 973693122 994027011 846010407 989119409 881536298 990960981 773826311 863018133 362715121 506350221 883188691 924537610 593417038 876636476 116371067 941713686 656231856 757762578 94878259 517438645 945645146 963966207 306315800 327279447 654437124 747656177 475879695 876559243 708457057 896493782 315397683 611778987 249666295 379090073 687163660 733014998 844600378 999249421 499601394 822837443 361831615 363898478 874364507 984302495 413359445 562506266 21039758 422890509 737857670 790538554 398333683 887662487 503998670 821555071 264710561 880715123 55047983 533019438 180994413 782037535 875908124 941629164 980490079 982221759 994616205 994702372 637408206 800843648 668507223 927984578 220069926 830149969 448686654 967656821 910901472 963704504 700324998 796107258 966141481 983052407 403754261 537213936 804880470 984947937 122376470 323612290 552663526 945731665 859253541 952091334 473733270 748037354 811256675 860996128 294278468 326970539 290606339 806285770 630872380 871095442 660818786 704729442 948151329 982728303 262133901 840416543 314743028 481413938 311972477 791022296 637883900 829735575 556713969 839249753 650940248 805409813 10827716 296110566 873326781 924791143 206036697 357444137 143329198 910370017 821656438 939471911 459758131 785249560 374323227 684678178 241332978 267533019 833635994 842348006 834323506 967509726 904213312 976854846 569582229 590393835 124593665 603806576 122213751 551888322 630807243 915789733 979693020 995080530 534176788 692077532 246099370 439582212 603493117 683666635 107556413 240870362 840693820 901202596 820641206 868878635 157968335 735410650 127701475 809189607 47352444 985066886 126116316 687551033 947034573 999254983 414536555 556559830 359019249 578178370 723323905 925374789 263010422 420049756 168429179 489271958 94961800 683921196 201321202 782859154 646554253 784167999 759047991 947985627 503883293 882529253 744839178 773814007 553103890 901595669 813269957 982689943 343145315 589432328 238068775 743307584 409614135 787655964 934408338 977210893 942900925 947785235 984606859 985916797 368267790 481132575 200694582 348358025 498679162 657783942 783832430 977164536 833058217 980851807 862598654 958107005 230689310 582756503 979281783 985772015 794501395 807482024 143547314 558813331 226033855 646790580 173045268 769038329 357560781 955332480 989756978 997323712 884962899 951026836 628265709 778021497 325976987 732150475 1373594 81671250 162180939 287278693 756244792 844758292 136972830 583742530 835600079 987951651 98677749 836746090 795651731 960415273 523245755 801762662 197824385 841609512 541944101 833440441 47013690 118827781 939700076 966246161 297043678 691245238 683819188 911753968 928396910 950677593 388867210 938942398 24760253 928256553 928854243 929175691 143314739 705207789 559663001 693369489 599296079 797035903 849098758 898500912 562117895 670197026 433878459 977347905 575941460 693660307 120653632 268444500 781931838 916667762 244572225 810866973 678415302 813090347 445636334 775797121 942538535 952911661 25838420 905598475 613818698 805441045 388891147 396693786 704545843 997436412 714667239 839156446 951747159 994035264 956293620 972387703 395357972 846015741 188093265 472407301 642625511 800536872 656228386 870477137 836246318 843827033 431428636 951550198 580251969 646553106 905464544 955934322 861066340 936517362 38653708 349832131 318096846 466579386 278701642 566297913 897060784 992664782 89031909 294546559 268683592 716469416 291717629 560953722 381463116 534294553 636560990 914255588 493454420 835450704 705739350 721822476 48203329 426388521 620992855 748071849 532804566 912584306 979014779 996312400 735933148 741102557 818604662 849033970 852617945 856552042 505583949 838720620 116113672 970486028 165098873 584673248 7638668 926167369 505146225 819802050 488814019 629710454 730899993 995220882 749909742 935692622 837710427 879710636 270274177 798595824 723250776 755478874 28532032 587471494 537166364 969549935 953525434 959474297 485416300 788957405 176620510 638871309 200897447 302231631 255057371 530798379 890558922 943575060 289934499 623415532 581113078 650067552 946313230 950599751 520240310 779694114 125312100 482617857 493070478 525783099 651082671 684454915 541044863 699799383 669984003 901541903 939362181 998686587 777772549 877364364 55483569 358967094 76664301 253053168 351965003 419943194 757635105 783859006 279610346 776448902 730991931 938714534 572266267 822042077 711877110 721453378 437447403 605255493 155086987 692162217 747122803 749738354 767683866 852380901 336466644 577273321 678337326 813027653 516635484 995183996 402765613 969596465 985768107 993411953 273217602 884721621 830544841 900335574 229054163 610300710 634245590 762054516 857199015 911399765 898234527 965823514 148860174 483375811 874784457 897586907 18028397 99785717 895555934 908741424 977195162 999242530 144692330 685196884 999650337 999670986 284060902 425784034 816356800 836121987 467021109 805269251 448786111 484660392 422190455 998638841 888725252 975595283 728221373 728937344 289920842 500521031 671977356 803958458 860527157 869175313 694669848 977337085 370293144 784638771 919291711 937717370 745076338 815814272 267187318 802799885 146572484 914428475 431762306 762138283 651595102 964795138 143686811 229258771 471687239 528177927 431264296 464168805 898315179 946302812 36855484 792288680 356589308 395075590 585170762 833190943 969684844 992891580 157545212 761833146 812751183 978351476 76641324 108967585 124724477 726410356 682594461 686161853 865002016 879232368 226302316 396569477 59752531 169680491 286112244 320478974 889500712 903660703 925255336 926496988 593333422 856834702 989053745 999432268 573876281 754685928 475102462 634221771 195554383 835843411 813846751 911295086 47326576 460234849 12317765 293169704 865768255 976381196 709657612 793978543 547383344 853308416 876927456 898668509 911334711 965051645 125776636 914289156 964308622 986583051 247078575 315409081 361866745 671056980 482545604 740752916 418862562 758824535 82771503 871877428 829717847 886963474 363771709 691003760 847179761 915197236 371298587 422490447 724855587 732502073 606172892 811950618 630142457 881856688 414690657 829977820 280531500 542304597 944238359 999184365 197704403 966243337 555239127 761030007 365228321 713598015 814432445 874201204 774890260 922700994 693726775 806406339 956088208 992049861 490907102 507870640 371371857 842957242 325931294 942204955 859773939 944438710 794087234 986914886 771336364 920407594 292937543 429288754 630539848 795980971 734725926 744722978 585394155 758678393 902245910 965451212 812082538 903116185 225416396 756262293 931723428 955528956 830912488 878644310 411886258 640038414 940675712 974364536 196257973 507025392 861461745 882257712 211527359 275939164 561551785 579445296 691907438 976197021 523409861 628161736 332365741 517519030 527434793 719320664 430114409 653936789 112244912 632296160 524978490 692564005 296749828 850526290 533166652 635465746 839979058 908566451 283074420 996940734 555048218 946353793 788382894 843789182 861949413 946486915 401551023 969617659 249346251 833170106 478090570 765865114 139462672 905801906 633653978 983713768 158815551 206782308 601851000 841151472 530117170 597158082 983212706 984798501 109125989 902755426 497153178 969414304 225191494 277113603 426218429 657034574 580416174 846073155 43183469 213238441 78516297 907256862 333945196 441405523 159906588 310993500 523600441 746922545 400781501 745659970 428466734 771722008 304859198 857161829 770729677 917610666 95236404 556765177 156634072 833884833 223226184 313363267 523817040 643323242 893884968 986915091 803805064 853918184 81757744 479440250 311579181 742352357 273350078 312371226 325742123 496705096 979896462 986431837 624565764 785063582 320568285 942140571 91872531 462676806 45727949 712763763 761898826 803398120 562961398 819118429 886445719 978144753 773430579 991218153 601391018 741875651 563319380 591330955 628533666 691547609 528947880 827559453 306618213 928368993 696537542 867396668 397476750 816811587 636908153 700508872 708177243 845300283 851334598 991555733 514703267 972522761 747137049 985025083 4952343 134010861 536619132 716324306 265783221 675329625 988570513 992901989 44998929 160093937 403178759 944555152 781176060 885740980 160662645 685797371 7539000 291353164 949251785 975622534 923240079 995315290 710996436 994956385 673283033 717045494 607551438 629639577 609306774 989410483 889207 198466657 90403979 823501574 662238488 964302574 436053043 615490145 389136040 862488409 30730077 885825949 236572725 331409660 755819321 965480813 848867188 958659649 69538494 291993955 710607073 912662351 293982415 917895354 622839213 985602548 33422416 645265158 354641172 593236245 69751378 273335878 876347294 973692960 149180828 909458789 609964292 746424142 922549106 987923763 40114762 860017866 11058564 947561612 607643485 946502599 81301656 408241462 219640224 443858741 320222533 688231574 242389781 874283843 22616761 113305758 579168823 637321152 421824436 529594329 297124091 867217279 361373010 711523687 313568543 407671936 730440599 881884302 567942677 890246642 296844418 393331067 686625568 991901570 506673260 717839098 689754121 853368302 803209285 867121182 187128522 320041809 653546614 951612284 489783028 666904489 274467035 573516769 170549235 930947509 70888266 277676728 579847584 996777244 668950430 733003185 439420573 914408685 891134803 999650239 487699611 633852811 30548149 345449583 772311072 925470930 688692743 801037387 243810411 406882160 478370420 911476621 972271972 977073380 374332092 849423544 431958997 523631495 218885206 412715742 89449727 246624268 767553541 879555519 707243201 903554243 197936007 500329938 919224975 987186678 322555140 570435440 755337303 986318142 372294518 883840269 526284893 753429594 958311480 989466953 575537864 754680257 281907024 928880955 15581441 485048592 906203292 929572209 798772259 909786438 696595760 805465781 367953783 697169888 448959308 941197550 88765805 471952804 217596608 717766831 958813760 975026060 379608623 976175098 789235616 908772289 737880912 853181267 836101086 900630069 411748492 484762415 757431423 815396890 1590109 781208540 551222335 629099819 497174619 706786765 386131439 612644102 448536076 589709063 251494778 646593555 822578601 874283650 619040707 626741914 822553205 979649700 487420574 744024341 607024252 946624131 951273844 990243604 807890260 933882569 209039799 389491242 244082512 438276865 547810638 571313497 688100394 714079868 127770560 394741570 46416641 215710375 400596630 640135929 753163513 900042242 277110985 302645620 167945415 822656409 138703402 606568104 739391934 760884135 141816770 725381523 982587781 991513521 217013354 489074928 619894316 689121750 183888195 446008980 312683903 957632082 224100013 835779872 348045429 415042836 107412227 212126682 834652129 887172766 723721103 920161202 575607687 835033787 882851138 925936514 191460237 958516888 308461039 314123633 40906836 312668660 79682208 448473051 566188550 731548999 113708290 629418875 577755346 729288775 954260541 959078684 873607703 980005913 221848030 748353546 417873637 699545861 443088693 837096024 84939406 596240634 791951587 792432615 100281217 628383372 138963188 905935721 500581932 863039437 648874959 742589429 237813753 501670651 612372017 756794135 669511863 700427540 397722850 954349080 616059195 685541514 467863914 917363751 236805626 816874751 9647057 37816111 756721067 777430184 976519805 990654070 695387040 833074121 216293352 925588647 562318083 930970529 572469356 901326882 746743678 777471298 817112683 969577241 331532462 470027022 214084193 228688833 817849275 851498184 941704115 956500981 580897076 697841950 879404494 938046647 953291137 955749834 687488984 772388539 503509597 949135069 145096501 750228134 551792433 633080416 74412557 282513756 190635813 433307838 891253944 987361943 879287878 902967932 751650753 916006970 300525065 775107384 138900306 782051064 252182047 733755240 100941295 748647150 178810977 864695216 589446922 903253228 350492832 889009337 570839661 872212907 601607186 798665552 930214803 992916563 33354129 146696171 750101228 770230163 884003987 907229070 377760652 884064959 414167910 978394263 279259339 726247541 982817009 988058053 110939891 894339878 188457140 278530837 449923053 774234540 825822882 899063263 309645176 525675822 999573712 999643471 572438868 841278022 665925865 908178902 179513930 513639569 542821797 841046140 648073055 910919585 421221938 512885570 791253300 903666661 628819967 666938438 836539543 967380882 947105619 958086107 796204554 835318836 633635815 641608483 591311883 718345187 621873873 904757486 969449577 999258546 165039011 542071104 770186013 813513246 804206848 899827214 881053411 935055638 957292974 985592148 701733923 728364202 540551560 618157858 669332187 806949955 74099769 274415495 338608419 971749162 798052910 892905600 718213277 865335945 125471986 792476305 688053825 903383083 248564855 273189498 371228447 627989732 877453037 896000413 928615138 981750184 963611537 964089367 344530549 400894969 95272961 520814679 994010941 998708047 718339967 762814808 907280630 999120801 184198345 866006576 57384355 783431698 232556572 255463233 378684100 986773137 909327483 960873759 710837895 886607126 106589075 124528487 672747812 800484376 683673857 701877747 852222555 926096400 794648214 938174408 646009544 741716636 853936360 911823939 338053623 809230519 779535606 957916018 345921254 731279756 643465910 950078067 725674347 767337473 883309097 947816448 491858088 997327664 986571913 989840136 494688080 971802010 151366835 948661451 719385057 759739399 920674880 935812451 713143418 889278032 202609091 422309623 279886788 777502295 929786127 991077383 669786948 752683162 828653051 998557611 541260965 604060549 729079740 928675349 35620239 677407896 687419847 807713787 58780145 94064794 267364012 476667731 552227400 966457921 307152183 845788734 290289494 637375047 672229210 726607497 928291811 977331647 890259044 959893619 97378987 446844736 886557511 984924775 273392050 689493695 288063896 768272685 691219875 920276098 481330649 741273405 5495480 102874940 54165205 106859218 300594566 483562149 364621457 831168591 565378086 978509333 583486338 846791379 926308786 933726950 13557907 171793416 535045250 813273812 129376938 375714608 288590781 411954848 806743006 994467113 796189802 824420848 756999546 779129656 76336882 243113815 385189273 737732303 37549424 352442060 674795336 713051841 148851600 640344982 402527969 627957078 762988966 911428071 288290308 755462793 244518696 428031490 525099952 645054198 697472757 929229636 202734269 974460741 539410951 615804391 601681900 970060474 106031189 397919398 64026167 680919471 664994559 934109018 704761809 712875427 925569465 954558639 661462245 896372654 163092037 310416617 218894636 569618446 258068742 395341739 916789892 979245307 855968510 912642095 135389642 319052456 169702622 487646991 305575600 846034139 824164429 920387147 455277085 574698908 162518803 242677392 429165445 777647762 97288728 775394147 228632060 753298227 132205708 844102332 689957665 813520450 422328998 884791213 234555607 640415725 79271671 780813460 722928546 997954749 866759016 946636082 90977752 302521826 45813777 360268441 900268483 928886833 209677798 857816111 67538586 901428201 995976060 999923550 27314221 356141775 823233502 964660899 920685006 946643701 826722343 961292673 972926653 992646458 520601827 944091098 374641682 894647846 131215402 600366605 798518180 815871135 589941396 644267267 142380247 490288205 960343519 994215223 883147936 935760137 537403345 835932137 960648388 994385186 325291405 766177839 96882959 586156527 478100136 902706160 793543623 974375471 630132114 801041729 890577286 896271850 475938670 476467241 76580921 621713256 219611910 946705453 756176702 982563349 562822642 712437891 395766889 636744680 334939585 952355428 80540517 858474828 627901451 647078028 964554653 984908220 634544864 959776884 741025796 792520686 736190394 853782372 221080441 348553917 744298019 792235206 899626779 962699177 865323492 937862928 484367362 603276147 664131843 776733146 224305650 349135091 864847733 962765780 66276309 651257793 532178410 614156589 691718432 736668126 845922576 945356783 53600187 924501000 240551627 379373687 86256804 996136229 963647199 965567203 310814526 367368888 542174320 614988513 731656235 786986953 274008242 455832696 338296484 408691013 215769148 954526553 16071990 886511504 538045872 810138205 372923726 846334778 516343659 725913451 866455702 901678609 421499189 592758323 232662495 541465429 101953240 952078700 409363805 705109448 107718858 163486234 370147826 764138826 128656870 617637970 508274999 566578537 74075857 245462009 713274846 778444022 687334020 761669189 320794926 382972408 914341552 975094680 354433316 935722414 957969760 961099428 539336403 581144564 710138023 736826356 489010434 696939693 612183069 792187830 896627041 910482580 910217433 989497396 325908939 848866513 361333144 691319972 949943489 959176200 549826789 818063992 91539875 299957661 774413951 979516641 599694927 856961957 629819708 896166780 489486233 534297165 836269719 980824995 770774561 888649525 812114992 818846401 615912918 938477499 144558896 544880277 701476336 907155463 129014174 342712585 539055726 908588463 161309175 790211634 106176774 719172256 653025569 869194473 872657641 970431207 607270184 761727958 812349980 958691087 998112728 998298519 174808751 266084494 274838333 652200885 398680512 876598967 260928955 521665821 870194796 948777971 512665013 818884089 568959578 723953442 12408314 82039140 259690316 621933668 103652219 216613836 257930660 492424400 274022080 485785462 544582157 922836711 797155179 890027987 850181186 962409606 280548401 482304940 478704036 623895903 90010727 181439178 518871573 687555347 91132500 514032317 234523802 963798926 309666599 526950874 234930241 269769992 16620766 843409484 16464231 732856658 28494650 75057644 524342809 642407101 626647066 954075175 76780064 478328440 812390735 889582774 226361660 774616946 334216854 916081895 442564940 491212838 821996796 838631388 898756784 971596221 401550000 700139024 221388076 242095859 786187288 961505250 979625132 997230063 444299584 573196552 212200379 637038089 268364367 554670320 621626640 676040858 499436373 872618475 72583065 878912484 931472741 998670116 725460294 782026299 249844559 727333873 820066642 950520096 925424114 937501723 869095232 960271193 833099276 901480554 54735756 394325967 459731679 929580016 322702046 574060788 581568179 850595746 988542267 990133583 973564715 977943530 588544871 653429999 104160002 729505732 665299394 734677521 972031581 977089999 850940794 902498735 143215625 298843296 553170884 774426346 544214520 601744258 462926779 722638550 541651944 675708472 419758880 818933765 800420593 980312711 2790256 448401236 865281652 985273853 134283000 992683100 646244930 704759600 714117253 804333734 396434689 645544839 188437050 200566398 859256651 934792957 292877303 889300096 286156274 658323422 777155574 781686129 33666918 923996679 653775994 900742116 114760819 141513106 699820105 990857364 398327806 773195161 258446103 519818030 150094877 844463181 439915992 853929422 247450713 833630480 302716914 880862652 542509907 775643053 554491946 848701995 608284346 713681548 327992497 329989221 498130599 971409769 968802785 970806313 395698605 990266968 696645892 991393714 999840598 999940214 95635104 296042589 755813297 905543371 176658569 632884604 915235234 997789511 973381835 974249063 109536850 636547446 181116700 230212972 968522734 968533977 393998509 607779879 70225811 515901583 783500814 963298253 955168931 965478197 613502233 774657792 95842643 139556806 644305612 901582819 683882077 882217871 62382812 627776626 753796678 962877955 594401562 609043081 501669436 590720953 865305546 940232931 635955244 903082398 258602925 263046265 720502643 761831322 40775219 384710285 369265590 941437495 683119436 890683507 406343990 426418019 788457291 884482951 712774058 936195415 881837392 984669917 55876576 916796522 930252744 956322302 896250697 904565966 301468595 887993968 254960330 430821378 466550949 757794965 380808099 541632577 177970563 486556342 242281457 622692514 161860493 504785889 878622974 884182402 371571841 388070607 640483513 863530574 773180539 857401712 996863317 999547787 590734545 790087660 408691344 864344207 712637921 929379710 889783380 996617144 342979677 856237674 806206524 988240891 334917685 917000065 22148109 800170356 525386694 714053150 302544922 951174258 926367291 980090025 624278146 636001118 309987638 618973646 329636747 526390739 267776441 270803010 81792560 932034947 707231663 966968792 692372041 692442253 838680076 912735428 341025864 456856316 432448691 981827254 955376548 964172990 6435362 45806017 926279644 993502151 290203974 857135316 152513435 652995572 461609734 979379330 258382823 422384124 849140752 951413936 953892378 989986467 605939067 779561520 70793172 406122951 184986012 698340589 37028933 359859494 109065874 407583705 824768413 916910935 670455702 976115353 218880686 405035493 203779220 512391816 993235782 997062696 546483430 705018015 930087987 979615704 270256164 421999405 587026140 634514508 755339201 885281601 834746900 910678464 464083150 557739227 740734500 806322274 648273339 921794791 331625742 544504471 601403008 677235052 813524921 882119419 987668550 987700930 422307894 435029344 640324965 766456693 911991405 994956363 718873320 766431538 544641193 738107322 63429704 685490407 788483509 933953161 25438644 485069167 213961488 387130110 454880466 787640584 976755471 991534014 347018908 703941032 565629694 944533980 502986713 563807328 865906765 921243932 177130580 984533752 661842241 851368880 594085312 728201411 142204548 840642323 454008314 755273419 432684346 755032424 866512692 903020311 323096540 649527324 847635247 913029926 697773956 831043650 589211462 738452654 925934129 998068406 948965469 968032220 920530716 973711287 849429744 856922110 937894196 948662516 530961820 697940145 54688293 704185131 309079024 784562269 602156117 684751269 882713001 953423120 933766049 996085014 297063148 358839032 928654743 956530987 336057530 368129415 855929029 978276152 76733003 292926504 42620397 931625789 894327208 945222406 221445217 237297676 649535999 688469785 839072930 927808521 647794249 761227455 693479325 808338791 622755094 666205441 904537148 937704093 870781290 907871234 219067661 487516202 827872741 903809344 174637319 967473909 154993540 309859026 978602245 995132209 676562552 902324159 662847643 853541689 707649250 888803627 31907492 115617954 247298631 794157099 556994508 630369730 646106014 826395852 739938640 880072811 831493458 958958320 734118148 800132879 585001846 636107378 741291644 968001428 825412256 872662008 321181033 848543456 637013135 699093388 177167428 756548320 111250089 266684845 528081311 705420532 212714581 917726696 19206250 829371645 372317837 796222884 317470284 697324326 428993203 948474066 924205337 975456841 36528052 274633983 155413647 608351251 856462749 865794460 29181280 393774168 484961835 826338859 760745232 932728513 931396948 960219742 827316389 979112848 892496367 989587999 842496412 929948532 460182948 560705580 854751457 988117491 755723338 852859013 607205781 846643972 684487356 742182585 583454092 669707889 577463575 964555601 478114319 664628736 663726282 721230826 945807379 981358188 262050889 950865849 993384861 997796020 232678303 774637234 460811808 868346007 271384045 486601473 888031929 914738476 355354634 931124731 951905055 958194194 489604158 690021280 656107591 967051463 143256922 604104681 245399937 849398968 333559847 902869843 439408222 699022514 870490118 891082805 673184933 773844305 269786189 384349118 472599167 629496522 823792527 955543718 364949142 392380574 207087384 946551196 183157912 805803311 659007112 879827025 857233862 948005126 674445270 694751878 424884819 747160570 305574589 406285926 464632221 939127719 393946482 579116846 60334775 986381267 335973383 468403694 844808822 886374362 36127338 112044410 361306377 685656158 189680195 572221231 719617021 997143183 577674269 840293684 125577862 841217755 781103072 823508461 966182053 987558671 140911422 401212255 266818771 393241629 850691766 870702076 531195290 801029658 358541908 730767500 53421014 532068358 121703779 226048597 129311524 250914045 203675991 984148133 315962660 909477141 711560809 843495472 97989154 327871193 455957064 802778114 262678659 980597057 670690806 776516004 787508132 952975787 757229386 905376685 982943362 998345907 939550907 943752241 405274838 945403685 220889772 348532248 236162248 942199599 698792058 776618827 785863631 813771871 753948488 776137585 343764888 409448466 791140874 870711541 260839380 262888794 945969952 994945313 69162165 164403528 77667528 775069722 362655708 534823859 682356676 777210969 744989311 797002552 131617278 619073033 651160090 825091853 812283976 984519007 236869496 788569266 738373678 954827214 151481822 157461637 571968191 974449584 457369346 661524642 763176270 872530011 928675843 989654482 198305187 275784698 180465552 799365732 758262168 992749610 782831917 975147659 577362588 603199962 509861824 558865548 26067916 803680650 925990824 986513824 315608220 825908004 813648905 962893496 771182262 993343903 898435752 983316412 845526905 981559059 51737135 610804677 887289705 891492065 630345187 840482087 993322268 997627583 66648812 87902096 331030812 672917839 770600894 966987209 34095556 183923084 927808586 956296308 249707866 307275260 271077458 411740372 581621128 933318887 145509042 397505142 456246537 606118420 22235873 226897124 137381419 393909323 614438263 855378727 235511062 373248487 81437901 363654013 560390610 581654280 185089096 209873896 229927201 584140812 28041915 547943812 725821788 791689356 38796604 277689789 790862516 974508450 810113078 876787026 289111218 629245779 143915452 959535358 438326472 818823267 938327825 982271438 917044113 984161132 571481806 587774743 507886008 863160688 798779370 913456950 834886601 855306821 167990484 852217012 896693483 988713142 963620306 999064553 796720342 987269646 231899999 378925000 466817262 946687935 21926852 748893386 585300747 763869019 852667843 966895113 169500908 329409530 557561843 601633431 644226063 942238247 353196828 926720574 700036084 832457790 252874875 744278324 438042932 653590827 170522016 673851159 589930283 845048185 309444183 348932101 477243868 778759853 743152316 751673751 529973201 663099646 243657223 954208146 60676606 541116706 154424638 350317733 445619629 886971054 360255116 533230787 191169390 835419723 160360797 187553572 272137257 533738065 744193923 810564398 984620504 997260213 946115898 997428186 856837446 930247528 568479043 809950135 730670820 765886720 520443439 746276401 390630424 822428949 704577248 782216962 116524898 762436844 749818286 936966017 823180038 941751666 436950598 564830846 498977208 697596214 289647939 370906092 193319262 193513762 225078623 607250004 275336135 694685092 925957376 946075896 901135310 959981640 406568426 752271292 114607148 424971191 980358734 981582954 248485484 689348825 880462078 892423242 818780904 976962328 593785590 661441526 307427694 969184401 834960373 891445757 173917801 818249831 343710443 621045866 217243895 766648683 999074761 999470870 870904700 947744640 231551861 416535444 944040296 973306484 960303734 992699728 404309134 486785360 927634012 948023922 272168402 378037742 30213100 514425386 411249361 649679097 13168765 713324508 570791192 994304495 315892095 654383039 946323616 961716739 541401693 997826938 512647940 907858483 548568842 742686698 232776648 272261513 57749346 566746767 617372029 912443912 842118659 931945737 530627241 851384412 253964188 582495619 923247854 965634337 279353888 574466457 732907716 938031020 494812633 985812599 524227689 771321693 889592101 896402828 553169358 712168479 219870263 670313001 111786172 875042479 300115163 674818948 417449302 818003170 580412393 733232857 872648441 979603579 69052248 179965346 334421844 742791068 795802001 829562707 66911299 228379034 585478274 887698292 984858488 995529007 400646042 739345271 695169951 920885278 860662786 879318870 166386820 709621555 103338637 416971407 603388796 750711588 719160244 978192576 275423343 645202231 612103637 866712859 172822450 943911199 767018617 990678088 90503641 581750002 792224615 993541494 74692492 942488177 820945539 988649148 607381723 622397176 473785932 588266268 353692378 889566971 547266858 794286103 438261258 921634102 133652146 774738712 965270776 977081444 497034156 622560419 35987783 972326377 83773182 566903995 63704122 891727478 454688674 950756378 409324481 546370648 536808923 705681605 959569624 995214239 537769602 765436352 868639622 970625193 787964096 847558512 109375262 947195749 895911407 954044295 455771797 523161894 905681005 968947362 713694308 909929284 768277193 857043752 941456611 983096175 921170968 992614361 690336724 800300932 310827098 465834195 589343283 834478747 294179434 357303203 591505882 902171986 573987201 797975381 902558075 990536414 39963739 662193676 23547869 703743927 103362115 334460113 617745874 828046400 661944471 784903402 265308777 728178912 577252695 619729511 959207821 991131094 920598002 974167207 100152504 765962323 366321313 512249794 259136945 583939544 551825759 757634741 542094651 749521350 693241814 903186448 909944119 987160642 134373988 858723679 150814781 319942381 79189762 956093536 954060468 982759156 503336446 847453928 260194797 449434936 761030300 763934045 732581316 833949575 614981047 852999867 697845777 763124072 623360438 733323802 548087187 632083476 999834584 999861697 232417987 675520558 461953364 593143655 735060905 992773769 692070322 940582716 657636721 959040949 250706585 370156400 425761378 499602853 310967289 736056373 327718192 395490619 935444 456851435 580083913 863343833 834926821 924180660 997265832 998418692 967179805 977655796 390345337 768563830 997703867 999527514 362633116 933709134 415815348 459463415 329015690 938812607 28804645 337613705 750024800 923394804 934372801 972076711 261346081 376875543 411939971 772951946 327564574 910843326 981135998 997989659 835863951 858001483 399720454 463278046 694810811 989623503 442231816 745543850 5779319 903485932 731615669 909120966 756503039 822690077 307803939 353877584 910673213 941330162 349973653 592152394 21492502 581034821 919950393 975530471 483036301 553149303 503465675 668872373 606468775 664710483 525604452 645856601 533945495 896031651 261634803 330844486 990267747 993722488 876068144 951190440 712385429 838504024 884124290 982834841 96920506 922257881 375860409 627967348 864727126 968857445 998996229 999503059 243133273 839188788 92247019 265635648 163841571 686921064 8439748 221237888 141394978 587946742 308891404 758894700 959682954 975766274 697704364 859100736 91762323 806904464 930537007 934655766 800159771 887883540 306967573 530897142 815050513 957213785 202218884 975172603 982121947 992792718 692060610 727835253 873583078 933349130 586992466 604463495 546475671 969159993 63418720 544025050 834760180 949346658 886218302 936356253 938414819 996792605 574694298 759638197 968530314 983757089 756116686 874040937 429309676 518344527 792422791 990336598 341875360 783627367 533006234 604417320 324285623 391237536 927325198 963775101 580272565 641283960 735872455 834422491 356309683 466694489 613818164 948754651 466913830 738583236 102299831 852124528 763148804 913039105 282535400 329350042 966046029 977595225 547146995 731153575 544904608 789987919 373272336 759230773 901789211 929830993 647259077 838636707 976709207 980262828 682903762 716890122 115140802 597588431 718588982 961435228 399787768 797245898 355305918 753605149 468742823 623277008 185895207 384160031 378158974 443690468 708510818 795771838 273566042 339189869 979900984 998762838 11637809 489442139 697716056 828287191 260423197 458620452 325113291 747429321 237696545 953666753 287302245 630085693 489701324 906861371 838550354 856517050 526288923 546518021 326926526 348550737 638374429 872388251 365200514 532919946 994625071 995437965 398530385 558274055 403901193 496363148 451362762 776026000 335872882 837733221 678904439 774168334 895307537 983019448 651615720 973237610 295077399 526775094 640260428 644223275 372089731 493658068 209129140 561196402 323625186 354274502 386890902 676897768 394751611 482096606 960537536 979502837 7994370 967833913 635672809 820207136 704205001 993459333 43997241 784876171 148062563 208837930 340200085 440826639 609707479 932308080 595195092 787692434 48922569 506148640 696272780 836589817 836183817 902481629 541599409 665496463 660616237 929382244 320648886 321862154 546578698 890702873 192573776 379536088 46964871 378760551 403363208 958951120 79465081 797033913 119727150 430029307 755274854 861816117 75744430 974753245 788262996 821703671 896985916 971572946 31341343 53374096 169455717 512037604 989089010 995623675 986975361 994261518 712253985 815444183 67242356 520560073 72418434 766815242 868690379 931280673 426888427 879017760 704766495 792436718 608402633 660399901 220990733 451385599 84291880 236675737 59722877 942877457 734590737 763840993 565331077 598608662 838075096 852374186 340396489 404595369 57982273 790809865 10617956 289469583 522960430 596841500 644347609 762677588 626096439 953449787 190434620 274243097 325455925 534246954 439041228 755082347 807473705 962321068 243973605 956436909 113755631 619529580 752947474 901887069 617232699 818501712 353503080 742861766 886948918 971679196 695513559 703977675 206714225 712299507 152398529 562127767 430450978 442531591 328134254 762786011 504112105 569082177 833137730 971860858 259246301 823282611 304910290 307688311 384905030 645167111 425565839 697392009 516957323 559765488 497934043 806584547 532081979 817146451 390186143 741150935 461163586 980411242 669878423 979156310 699526024 906651776 74945644 944000704 868479690 892347760 299534649 339878004 813883580 859514083 224580890 782385542 188181515 471806509 117693278 403257717 993754434 994477383 172480021 457580267 726142029 994905130 95816503 855012622 316880217 832993963 951124422 979888591 733936105 734686185 36738528 999052681 585841518 695192155 903149544 937832912 751624835 926237473 618622762 804763711 181710734 618724489 53506249 178956005 691804489 780705874 150857328 402963575 510758790 741410390 446968623 587659522 374786201 918784599 45558771 273398312 81475791 289984155 934815797 965828832 4670857 322709953 780517138 882310240 763531747 838563515 965271841 982151106 904992270 915435694 875573435 986533415 189673776 668030681 998466997 998651655 374907043 750499428 723430965 772416386 144627275 858711034 277562407 423656530 287646261 800292808 532638278 991909374 597580776 999800448 375827402 894076579 207091824 669528978 352405273 928462688 79344569 961424615 91697029 816313893 791599888 867189423 910846116 993954902 776020274 798004411 104351711 718708811 353093211 803846473 592805473 828840667 818973114 880062379 592194132 881055720 593546690 740516756 84648523 660251888 204411529 672481884 188326340 457484086 695458743 719823487 940209061 983579196 180941061 767854049 530331130 599100923 856706121 939104682 222365762 359136922 327235927 345571290 621497999 742288893 238102781 702233641 923191371 928699600 707751818 951165346 1052678 43001903 204003146 474111602 993533005 999253004 200477372 938696194 102967666 704875171 765431615 970988475 399417868 557007498 287399044 421497547 879995165 918521522 410085215 628542421 73876104 843679131 399926435 818797949 69516838 128501186 23273823 435813648 699917632 735843411 257123065 955286539 329487101 766206894 446131206 811766462 951885668 985098538 737845313 927541871 661762095 863851996 695697039 818687596 611475364 684653054 745144718 885940052 699830824 998870844 295316774 795134409 97298645 321490028 825921267 893969073 672343920 969922087 632552443 791119229 7379131 553862425 995264196 999254959 174245691 813283541 159246815 292621634 400794014 641175215 345277023 782971739 465573035 601296598 67981811 174921118 397396629 876544778 672698362 957346306 592583059 972963020 159243248 254397392 316129246 970195116 539148459 677136777 668237140 957382393 32291973 171629505 645256573 830246085 997325364 998009394 909845439 950486699 216073121 768254499 84486087 909623371 500764365 824907199 598392070 879366213 28200593 749568938 548681659 610910774 431750274 860961036 124859133 761705258 145753708 795466274 202559060 722194727 307149504 921424779 851613761 859019578 792356360 846640661 786380520 799566158 886096674 998964717 616400888 829210080 121552334 689456130 73478058 74085823 564520095 730977570 259038689 602572871 611990445 649671665 301866822 796045165 333050077 566608023 673711127 962527942 44268178 550498962 508049588 742404187 754145095 758770747 800095505 838705873 580650751 894367748 954913642 981544034 618648505 833850193 618456988 719558799 122520598 886062371 322752758 777322328 446820924 586871501 616401259 734034282 749891491 981686444 955021954 976101135 903013269 953945306 149205200 715663663 802772976 853724312 633558163 782142469 298479943 329423994 285309760 308778816 5712874 73980226 529594095 860597387 599947253 989908814 793775210 987045220 904572127 916517808 828847249 942889010 580235957 749901472 80961291 312806515 803753094 850121645 485730174 723259567 708835363 933616443 850755213 971863627 221484806 547061405 385782469 944883394 573846085 775604199 992489603 999693252 966393741 969164789 69895415 850629516 646917724 666682890 907731716 917982427 182505833 207937777 100221690 510853213 807220086 948506155 608950121 958330889 749743266 834382467 182792701 419539804 267106758 396098358 379147381 392568678 317897763 654642802 956398638 995990241 785090291 982899789 75480044 188524065 667091937 898304140 9503437 50003007 385879914 501222031 565882880 846492750 389010419 800346600 428319954 865365283 696862934 906602092 426698387 571933833 418118355 837953076 886340718 967418660 988262619 991807781 661664059 980715612 491503892 585378626 804863881 881651347 323876531 384256346 24466973 817746512 843165624 856782603 522397687 847091898 751195433 999519578 378500171 997414479 833823839 863529234 450331261 928110767 683852451 730003109 661324696 856444701 535342146 804278854 624085940 977541984 716733791 843164806 876315114 921745683 751107293 994600938 619649442 867288021 773189015 853573865 713018531 954910218 263371397 678088858 722629830 895797810 174558153 931420345 754457343 881881547 537042493 870202221 879538843 997996436 29664781 614349837 206848762 718030049 707959212 820704730 709113574 968705827 97848048 260387731 957523783 997630779 97838839 684110555 707707208 768416519 554901845 875876386 43946762 787805389 857980085 908877607 914627729 921591423 872502648 994714991 644058216 945050051 525481719 736694683 225985942 441053982 20330288 930293117 541867370 705138701 516697559 746847935 101822658 724613494 229789344 700689170 550772159 582461171 67912306 549316075 566233196 879129574 922247100 968654160 918635914 998336474 127914365 620472566 345508381 494588103 898000478 924846181 164720688 710656871 779481972 941981290 360909853 942807985 634070735 850117288 403775148 843781582 361972238 986637397 60413557 339850251 142264270 998057001 543212174 743428282 193393296 983223286 634206056 985573694 813498464 926065458 396947705 640810835 439652672 846558238 617247000 900043916 748608622 751438648 657948905 837997293 753856245 804696336 58625208 546952219 312643261 708567840 564721165 864033053 186017296 866886159 14121058 114043522 910748033 985145766 642954897 976166013 861553993 993224920 573207521 676938499 508778056 979173190 605332288 992554307 350842359 392435229 610406904 653303249 904565431 962363623 234458381 892349759 131598823 156543080 882005483 970309965 915511938 927525004 85970525 137075682 907972049 986236144 142336822 961757600 197967404 856323399 913493900 934405963 917272111 923198996 11902246 824403890 248969905 302402713 959383452 964733987 720962941 958278164 920744761 963507555 940146019 992918433 3251006 528459857 505464447 680222287 167287035 254005330 877350004 975673239 890180891 983083334 625409452 721148132 402211945 518227658 109857915 809489398 761536525 982924598 682584354 817955609 141448763 959254771 294384928 841019068 955918899 979295655 31143023 32644656 436416971 812968400 199263555 617499387 660480520 796659761 836627535 983790455 750383419 945382058 316526845 862095237 651545830 889413775 883958979 973911002 770031937 873833985 420388608 482480525 726077515 974039757 777772921 822476177 450743938 724069223 399120221 928138185 579456857 658945703 970482349 977484430 307491523 793467023 762302425 841332129 709418284 845344265 165037825 524610935 346049216 964620313 852742551 899386402 763099093 810819250 989856587 994827489 704024781 863915258 941005150 952370427 520051815 920787902 79876275 433900470 515148644 696075033 857445743 900916722 319728962 868642613 555703401 628914569 766002654 939281470 420883479 958330365 380644174 461588418 428050496 695508662 363535647 915111718 14026889 768019213 550706888 837936736 751990798 769582048 608808600 806371047 930910632 959189544 55595629 874870760 635843672 869738184 118192905 763010823 347999482 851693978 915107697 944782515 673963541 938586886 45649646 574578604 115603476 196378606 913948968 963357309 87203044 223872139 656698840 774731962 482416842 509536492 270481510 484542996 575977322 769925350 287855758 762116159 819712077 927939599 855301166 895761976 489122159 712778500 995858534 999769464 4691169 331961433 614669064 745292431 126970074 933514868 854082210 948662852 792223945 890994135 466297629 829013351 735423593 970126911 936511895 954608311 828965631 835644741 214599319 987579046 41590348 885054695 146844197 983599787 332379703 961301919 913078297 945100940 37067214 366339469 807850163 848572265 807247683 828218101 143964796 657478505 687527025 874897446 424978030 587067299 999368191 999524156 514758760 674277312 320715515 523128040 200907940 469129740 403944415 954649586 530607288 857040847 578855725 741827169 323865035 871667269 644933500 809341684 42319452 821600691 937195329 970550732 577715415 773580752 653075010 836350202 412511465 687457751 488358907 637995154 829995426 838953077 384878274 654759547 494053970 995724382 545608906 711311936 793286675 866346712 915802653 969862711 431295470 785749466 83291662 419104725 142699451 224421227 606131968 714774680 427367757 761992146 442765269 839716207 916453775 929774529 533555708 954649781 983356 31239554 218363742 568649003 558222296 727171070 743778525 903939312 893425945 971162111 565939286 690061333 638338979 893138109 125189465 279913955 513774349 986318854 868945121 914146172 660457738 711640595 965451599 986770800 554118035 764238232 612373467 966922698 412200638 650087790 111432428 893223048 305019995 989455933 375293750 873635241 185634872 914192726 31125118 107297705 47042068 456089858 598271777 804265109 299548872 462116672 778276022 791458558 48116866 724021562 474212638 859276681 844571186 937266454 996322344 997009831 105796995 700411501 754596061 921097038 742949773 997605124 971658845 992194579 7425257 969898309 872202653 947338242 401249618 971766927 420329284 863712432 100192917 742509842 147829551 896548575 600025043 919714086 427299543 513294523 449977697 715073807 270779793 942658517 406081993 731434260 358320863 628031038 79761862 885507343 351498083 520741385 661878906 915659576 154174968 514882373 49882170 599350727 52892292 737267994 409814905 895973317 504385946 906553602 907140743 914900800 298206217 525749328 192066525 879073297 809673725 947562989 485680694 527339506 976485540 980952966 482523820 601878114 587449841 998418573 912331514 975417905 953172073 961892008 719750946 855395436 976785588 998303948 970025540 988838354 197180754 788581553 557214058 806477186 240772754 465850252 286378971 430825784 615407215 955075727 25577578 758314105 520201818 698225683 456162881 904575653 208116943 650769126 33142367 892235838 574220006 997048274 558701553 886549560 140085759 810824995 193028204 665498853 792897335 828649411 788437139 867398005 113178270 383191126 552834902 756587525 733934199 813286800 877590043 920147474 177142286 947340415 122227044 134889859 581873153 976820566 857336478 991642334 639224724 692162863 832360545 899084599 812648743 860587708 858806139 893867204 150836094 704260726 973747869 982099259 541324046 857766787 627868451 701673517 332498169 979694144 463669096 665341228 509816665 654634734 566564450 731889735 514553872 595010769 310755072 709542247 227491008 253558604 649039391 680927715 247139318 924512598 260050617 968561807 252869390 644239953 36361318 545978887 731370004 828306150 38705900 196441111 434898514 671864351 472468700 885784351 525565885 793719044 629693513 844738020 63401228 346910029 426611240 895896368 852873743 936789954 386292731 905950649 482735817 893034558 626198425 906609260 625042651 719785276 108379091 271846353 884963133 954450072 222218806 298628486 313162936 969939774 29997007 158623196 200274519 889392387 18317734 732255969 791610022 809928108 69979753 165743945 778282061 936820439 713622259 897329134 241057404 389507639 733325458 815613812 294245238 500586211 808450574 830104554 281233634 312974461 926249299 957724820 149068355 259806908 410510388 946447244 780666520 964168065 109133953 450208443 337111812 932785566 29336926 357581809 875792157 876575072 388125783 611431265 18298986 431278102 713821972 746904012 702492022 862450532 909254516 961282557 718810380 757247576 203765162 633922882 108772077 144306231 332006621 733423285 376493607 664637760 722514467 998166724 578067977 949364770 372164858 804845032 695750574 843825067 703733639 830994213 884982709 977744919 172193612 819191711 250147880 853229922 262509586 630985879 803451847 890478061 883940608 899304220 6380749 859810563 995053295 999077787 343780918 458545812 263056186 587029070 429110975 907373039 171774700 179757672 910116020 991682448 421628917 689693362 411038688 597859943 254586564 802426605 63612106 967561029 416300703 432480963 688809365 811430899 967814136 992594042 206725082 396096382 368167080 883821054 402420240 465073877 32524435 947787254 179763329 569180331 349083968 727154840 318897200 668726121 667634641 681619898 507273867 561110065 740250036 925638515 504241736 603174502 458470262 901454953 527816624 727159348 329133147 727651720 405450195 533867068 232927197 758279277 558758913 908315155 734816128 856128892 269525312 367748346 876069081 884032045 17586990 796245068 886923797 942698203 622994389 968683708 957726622 974557372 921827623 929095456 337568307 979572785 537473481 715133328 308520559 551442100 487921041 836740724 950395961 959478225 492884323 993535646 616263575 996219332 99285781 971247856 4562457 520884932 976213081 994629179 532242515 658100816 727893458 862278667 805448622 906316253 736321463 831558387 372015591 695718507 992846722 999151139 155785878 562329368 206543025 270793797 515019565 593882873 557810969 708067188 883750181 926675087 58428708 515633263 389661686 968839908 750468323 818685496 290683358 731300005 652855977 807467284 813759916 882507355 414361008 452208596 959002533 961343874 911044073 927295370 745588992 961742443 840290526 951980135 236760502 936854227 604904578 762952689 733558813 785612687 676316055 794605457 95734674 824034576 609640250 885776845 681850524 785215754 138595432 501198838 487725414 832576947 495395225 991868960 168819797 269786968 514377121 611705184 558873849 595274948 269672912 647634557 718954203 930899630 839132090 906205287 843705941 904382589 259818546 815044438 303318432 554299337 612424806 796509118 796572561 880694860 787014103 788072750 979965685 991473440 132432201 608674680 481512983 611624833 144793653 444550402 156168429 923784555 294531693 926328951 176436244 535529924 679018440 764842592 412934283 738768653 598148417 623044624 942358448 969997084 121085982 395127941 213115630 225297637 825982088 843994160 28120986 939286280 99300920 660244793 969540721 990713970 14779307 358463201 833684393 954037773 104707003 880489202 243835290 868063975 586643578 701312029 705095368 821922497 444256354 605852412 323913347 540343977 981656558 998981957 727824884 866039065 961049876 962956381 580986384 718093595 369802933 725064448 909519290 998959105 463203289 681535405 729404209 993980147 136877407 489181132 409244749 882580184 817747713 844414425 186099145 976290257 208335271 916580300 240748794 544544209 7849715 662757032 115806476 617952005 704162229 799280419 34028863 834015883 243111759 461994186 808228267 824218338 485880713 728376550 298553952 843198786 346702489 672348336 58225688 807818703 720766078 768674749 243770700 324404624 260263553 487809360 930149174 946396174 942700772 944935234 566076748 911571988 957221600 966536651 995677522 995953905 439507715 478817051 619579534 947136531 988277132 993050511 766878244 879028883 576446567 883580727 544527979 561768420 572549117 677036315 898832116 992798608 345249579 825703986 449438454 983024676 589445941 682962035 804203050 860058022 118288406 126068325 664356562 871072698 380635528 917225442 304925538 416988910 957490272 962030214 776280672 976834970 208980286 594943268 158582260 571437787 15711301 664678399 474863492 567321167 814621627 917053174 997847664 998520737 869792090 973190880 240228940 482590303 947980641 976216348 30723511 846040556 923856163 944203640 635730480 797722637 179903374 939179402 435867525 839174210 261609319 590146625 292736768 420251363 903260784 932001553 646623145 972135576 207046631 303772199 392259931 889240943 525205353 956153541 11296463 78218468 988163485 989272254 170434950 405379259 499418227 807983192 339520696 828063666 285308605 991770855 109983653 942931267 736800542 992779665 839394620 914403095 817288142 857759391 365176888 507121099 632150808 988088408 611310650 825003333 649927799 690409062 728642756 804326016 143523392 508272540 836533486 873124469 920098463 928786093 410117722 888845675 285216042 495421496 86462800 169791275 233186938 790614510 94429735 554826915 897341324 949209705 469541134 849165179 260323516 936825492 94682259 456553592 214083780 850511388 839846730 896484792 507714991 514728387 334198671 832674389 508389623 676063484 479175023 550813249 28079373 577767321 747785144 845456450 714414733 997538623 779024020 885510846 711183752 862625357 461907588 530368370 589132878 616601518 753039780 964397165 113850446 759579700 898931948 976750269 134840984 283747447 228781256 959640065 40235094 629823746 636346860 895800056 184761439 932705531 83123848 345973115 981550520 981997836 438969416 646313519 88671508 119490027 645099621 919448493 2840838 649245543 307253375 667666542 971433742 992619340 231015485 858865886 545199841 709259601 371527209 591369184 457031505 627452511 656340680 706578082 638417580 811332287 259488869 416863643 2380853 303334778 502753189 720510288 652121357 800601399 733354359 856159886 171331973 777481850 297199821 799978780 172458759 432365478 617276013 653732655 592720186 826678441 335973941 773995832 822103446 834037373 875645861 904614985 142618095 780169326 244498921 510084812 190188638 421783380 721937971 885853712 631290618 990709765 246129404 694458332 1328839 423459959 807800099 973256843 169458550 515722475 492272863 552242744 542364640 970081689 890683815 954350887 401804578 578670639 888391108 908524264 938163592 988361263 624027385 706595620 772395022 856704326 744067232 858180154 672800488 701786209 729634816 928991667 498449001 777839667 924925195 979564021 834324411 904340488 465227493 611952770 36168152 296871852 522223069 725410618 780666748 911462858 784298363 849194226 546424135 746571174 865335098 970522231 414628424 925496387 984823376 998874218 474355067 675083116 949372200 974544028 346931096 806351830 970285381 987830012 721607963 896973741 561579820 611433538 362911989 847552745 11323851 40566238 366413020 782856138 797259691 952831223 240707427 497387917 101238567 204002904 150207146 734031576 204142017 961370769 838944370 982952459 857748820 999555732 399257627 643206628 167052279 696305679 446608861 687845210 531125760 848159003 565000929 716374549 535906564 879622255 899426875 928406738 952054284 978424764 195994330 741518896 113306732 721790225 10966409 52940548 562621727 784191344 727003689 846888496 61999637 386499388 593094202 750866333 39564659 719399235 678392947 778003252 805003797 899514212 367433762 527000150 667527229 861132601 244477385 442500490 402208894 554375210 964466979 995860651 978330194 982878828 443249016 909641742 431714944 594073740 255821827 933071560 555249491 818772621 826617460 943584614 312085057 916915028 253269008 793405876 511986199 563921184 128871762 317271334 816315489 889521764 239985500 834209742 375327700 405228789 141116699 413242833 413134733 732010332 164413116 344550935 632144920 813295015 417721461 830006990 409213691 672410751 307184815 335413716 190920744 558922343 515739565 592585821 67663164 281351693 588868954 647850543 855207970 970319729 799941774 959787856 373597779 661954515 560047038 564703613 929449417 976301240 740483676 951156872 724996090 959910168 899743203 909949203 547961435 953747742 287351446 747785553 578280081 834434708 428996553 578610638 389111361 826695146 109838791 413461250 256834492 996033887 782214774 860011168 546716866 624897325 474617849 627340498 52657896 628057444 356758430 903142634 127897960 974467027 143278168 843309269 428666714 868629090 504341305 650440116 946286416 948907644 265534208 673591859 374719951 900881587 429466630 576648375 435658165 535033025 408809437 520390372 39807996 989325311 773966848 816076145 6309334 822235228 722625977 785791821 718455815 891349922 249095846 896384842 702587044 763388911 122790320 613171478 962469607 976208792 446185181 531173644 660765805 780804300 479946223 530316216 558820414 586893893 313481646 457600308 289989005 325273862 222734934 502137323 12849335 644634716 355927893 779853198 478750050 683253966 58569367 627469489 487225218 649430454 685846230 903733194 210827458 274913470 16058811 789168958 256632977 906882854 141531228 859370464 34326386 719587655 528130054 688796890 745565972 771126428 221950545 754769951 192994906 393526620 812211416 839938680 668992321 969518452 660340489 712883428 315653260 653433791 243656817 345678824 899626062 957528192 227290529 236352494 344649115 628973174 749967501 760182218 926534318 953319676 10854517 530269452 53592852 327881911 834997563 997233836 438794640 549405030 698770880 962101375 321788315 937009565 216440108 566716890 45554060 272011546 882731065 944791677 597640718 750645031 361454202 773387738 549398261 622494098 239997213 886132143 572236330 738312812 23717673 133719948 532832645 823562966 430117112 503201890 84260894 502376983 204145973 903543979 904143656 935847312 947952354 950821663 858732197 955442318 665241301 995350614 348476757 504536382 535000295 681700499 531363819 946706591 907179331 967510382 122844068 743524538 415426373 816916712 925789829 976481208 193233360 697308603 33273593 269041360 686633005 814137960 25909466 281154499 172133424 885411182 348274709 450110831 790589012 916503044 575396644 685394395 385755251 685104760 800932894 951989213 836611663 867832713 382735172 388428377 873227226 909630715 719331576 851254127 408272180 618197974 51550662 683460971 875293168 919808302 738274978 912608010 86083261 644443229 552766657 912168918 644792404 855844644 732721039 961877031 913533494 953662422 502823909 997282600 539444589 765023943 108140514 730835629 670344148 961754916 484211987 953203386 68006393 934240316 247684298 552647092 448019261 699058487 183696967 356711205 345496006 845940532 554181444 755471402 624338831 926771189 454662843 712058063 226553704 385446739 523227952 640856584 803088724 937547133 142086772 712389514 65685334 367981036 154868078 397989675 640503099 807412110 565071853 920783971 358724297 919369602 337942064 762290643 329686380 434112783 752878905 843840559 421574979 427586395 257981582 274054625 46821810 416243338 786547054 835773551 179651260 377848061 777575196 966587516 719976935 926983828 502730179 709311835 182067207 754723662 30862978 522269789 454300198 622694873 334547975 900511590 962474199 975840824 123482988 372855896 918309462 986477213 635382942 675400081 630016714 688677703 923125659 930010882 263154364 479316319 846537524 980805131 266678048 396562996 260784454 557775182 878973392 927805014 301452987 842542375 265290185 537504942 982570145 999939040 234733746 321104997 442167218 747201883 450389111 997430675 135432148 687256288 727791640 798222381 61951800 802735759 206058838 502904542 219103751 940705071 402700132 527833307 811936363 975130170 926253383 998137612 773416299 979612051 245804789 703792383 125108545 208688072 813943390 918623603 434095665 937162470 848238822 927034830 433926888 615423222 200571315 681947052 192170788 577239813 728020100 748395218 415100832 834330424 507877053 721563635 16713447 84933154 301785215 330506120 434191378 682800911 736619200 854975440 186058093 653334418 233664000 934859313 990748212 992507652 313805572 406249720 784022319 839118999 400273865 707140259 390765546 475209300 698251027 919916365 781182923 848946148 717776365 930161873 183195081 401304561 494593176 893372080 193341780 409178550 346651418 415977639 222274960 281327730 300648630 340591393 126793627 370945949 129826074 313786059 639332239 995050861 831600709 997994878 359899528 828706423 481438731 988794076 361864307 465207044 124697085 480713812 986782118 987968159 404255275 476818119 9101916 937456588 514871195 879922500 106621024 932301920 256790452 387846799 659430478 994468917 321417714 768854047 532367145 663996094 499457210 933102957 15777471 44563742 323091081 400108314 929026270 971455023 31247886 540226312 310348609 520421513 24284782 122973733 846434533 930101088 972879044 997470506 510623041 713411932 662666692 709524626 818627396 834229868 684877333 762317658 560157355 694204872 731074961 984528155 161813913 276013538 858079187 892234005 665466405 805199197 11795201 518282804 474026876 987452071 339778869 839726063 988739743 989132842 677830645 688178305 723814374 915896138 845999223 869050819 118924561 403181822 962049702 980525421 782854628 896567033 592399111 787032193 107989952 906407054 275289671 461089143 913143330 914696475 19034404 225465439 790040443 996001451 973627417 973746276 19304001 967187457 560679653 825267138 343391975 733293359 210532708 885000235 941997217 958079111 288468375 967930255 465626428 981393046 197612064 802469649 528286208 760506623 867312718 959846523 491099474 696729302 993281004 995565209 150020712 424912260 835422431 941338476 420081355 489386869 125958616 640329760 386282411 538068341 794595891 935712831 945641281 971521865 690624255 869885827 295977476 590833362 104922128 701874520 575921540 749240749 649808558 793865169 371121364 814032186 854673346 898480358 498534537 844160319 774751673 924616166 147022010 416245541 348682569 788522186 524429269 829719165 277079369 869206394 589141997 614029904 514288194 829880741 494098365 609638105 140120837 250659448 195327778 285626870 694653132 740131842 39949555 107799051 148889286 853492190 111226676 659220545 99788071 936210967 298630575 330764481 605608381 853495695 721417321 895504857 252778584 275411882 637693854 743570662 562868281 865784737 104045357 529845100 337221729 358419355 127490848 793529003 181915644 783690546 665892644 719017093 720991752 997616622 419792809 680021490 188419992 960209419 58083583 410693145 213653194 911695648 752498689 899845473 838315104 985190164 719577661 863204912 775377918 878766534 342650711 835091642 753453500 851030974 209403213 441777139 697564898 962954782 310974193 530365135 577725870 821802520 413609772 869248288 211902067 528136659 521916118 595532926 979385621 989847318 763717536 861700172 422059046 470109690 9468006 800037836 910867137 941285187 407994588 834327293 201924333 337041621 779683795 957053153 436653440 800305424 738632203 811468846 327592995 431871069 57589656 794507295 962233580 971515148 416476534 593470434 965975668 990052345 165861129 205405619 898585768 978593764 466822131 991382730 136803118 296020572 149714974 254104854 149872151 816750896 260846177 870627444 661724500 960685260 290088339 594818954 342840511 696608071 414881107 795305245 248035300 904437166 273247669 378213609 361400851 631272789 692216750 797370785 496338787 665373502 480414196 696338778 694238929 700665207 533635578 748000690 142903876 710505625 661642521 992195605 29210098 272990073 372539828 913050581 291656511 799527892 194259814 641829602 189950969 497479629 594834564 991783769 373812450 473409872 421530093 596977753 472439403 740112543 659983076 687067028 343593115 560890478 361512296 783736277 312760198 948751358 643052212 875782516 882714836 894439089 352414444 574625176 945728747 960423340 317094273 815326476 575122857 586245164 797742330 964109582 280957680 604970330 910737512 930683789 247197919 786503945 32786458 338564263 138949534 164207523 497195780 576683527 615848692 972955272 266827543 448657890 837045451 894172642 380366620 906172272 856171686 891920227 756584887 873642567 27827242 84180351 444921925 600895918 446311541 510502164 184157425 342709238 811881684 890232386 918374177 981946629 688054283 690653886 417407649 921896189 965717072 969811495 156483407 372297136 703752645 924259159 544470560 928949483 670669952 744725517 801518840 803623870 185993454 438623994 351903228 402888021 438542625 565194677 546564528 800619338 242587446 870549520 612877885 900748187 272708278 725755064 689342896 888715578 906252364 973377514 82246934 282722895 783226242 961764805 222754184 785063052 686041565 768742348 286100438 787662166 69532833 316202091 645043695 825129023 698813401 852921930 224298279 320710146 347798117 828670187 17972816 293958740 134807581 980963194 973811061 992736386 225354453 974845814 401338996 721044696 524610848 610814364 539634411 982743697 282995907 380305894 220429385 992313140 133883988 484622362 255310055 275969960 737567990 780913984 209187501 461625053 222433215 897309067 878737205 908982318 390074492 631178652 446070566 471643089 525994871 693426021 809739577 846441340 821247459 861621534 928072294 973979124 807502673 972261571 407568331 683585821 26571865 587290955 349368559 974621329 781870973 930208003 292251167 711447091 487491280 526658857 640709731 781899945 508986551 522763170 439270317 553183044 75937582 463326475 630744154 639804953 552792889 846580622 707065207 916776688 480270931 799795186 958773617 976473601 301703761 763956075 810691145 927920871 301262952 340904476 20850460 612306456 509876045 672524074 566779596 853514656 15664978 660033273 599608534 645762830 645818146 786612975 919457349 936920806 487988660 566726616 349209467 949637031 506891317 564270633 728531901 877989028 401179697 733700949 504768928 680732487 216405099 987905628 730652484 894175599 492664489 827939454 302371558 383581925 372191564 635420208 86182722 288316465 229755580 411426385 529258986 758923859 21660481 728673186 8562440 78048684 205183592 929156181 134176078 349066557 522064398 639467463 463556895 731022421 873658405 934416465 67217254 694813916 31116381 380218204 429939770 979792158 441222965 575486811 710630229 828551443 795068759 882316977 650909907 978847661 561684759 991538856 684192192 890480304 57216215 586966753 830202574 957460942 206921175 397873672 866197187 979514811 957743884 997174399 695702182 907635838 638291327 869967612 937182531 977171578 469260349 636245992 627744851 720951965 72398068 210803628 901148324 969527466 851161899 994282532 846035066 994400127 814398529 841523402 126928660 619713055 879002253 974148181 414457604 761816014 88667012 678373366 978095971 996169285 225759576 347337666 598960700 638480964 77835818 79017375 686425261 790713794 437946055 578481482 272734520 743019411 826683884 927591946 304517499 391053864 584469825 678074567 729227046 858955390 552921064 839231804 207105344 242078694 11655146 796847202 314717350 373572078 12703715 351096282 320717891 688457572 643781558 661206419 28270108 796402565 402855420 903710230 256539173 360661711 720119152 939261761 371737267 526309684 41933303 842242835 488328275 876490124 515991813 878988148 611523015 860038586 244295618 513653054 831010891 965945695 94954083 422654966 657975002 915250088 91982488 546805984 943029310 954217207 288044194 990535377 175246630 917449404 649696810 989584224 417580777 776815374 500280660 857228581 739079093 932348907 160305286 418930142 737630778 871635140 757055359 763372036 886147139 905771836 693974799 913059992 374717373 842654968 537260869 749093339 154054413 690173041 235123346 552343420 623302650 774029024 710908003 849875838 965865863 996230698 508482401 908721063 543576254 864285114 123140133 664116443 432158520 867141073 931898215 992233203 310970767 841702959 981836157 999937924 937513162 997795812 831090660 998801665 265942751 512781350 713694050 827782569 834221531 881404938 49401550 870797214 777780001 820252418 50379482 996113466 775801381 807396020 144155829 826808604 100129938 765422607 759552023 929917123 750860077 829336768 734040329 796864434 576165893 881753356 914538984 981035820 410646114 475369811 242688496 895341784 985117892 999499627 359254102 913233346 967812339 979437124 325327570 399608901 32747370 864908865 362483894 774758932 568842482 768309571 756940992 805125490 34380768 467296359 466010519 938634350 926107205 990446016 870821228 916310777 137146042 940558963 488580820 509110945 395624893 615414137 780345513 867224501 224861431 612826537 258305817 676551950 927078908 976363628 40274316 878099423 164029548 219357621 564742422 866262356 36357599 667486314 686991978 992276245 162093720 721537443 745767943 910069087 88199603 683457075 874338379 923023539 492631231 560844891 941832525 983129735 333543259 761537885 97458046 666196954 938003220 999096356 700207335 880843698 694508542 830130298 714995142 943944779 270453653 698782459 48509333 170981178 531086128 866224980 695237228 709052113 752070099 920901171 23218203 449017939 943875469 976529918 882325626 907330404 441515345 882459152 288311024 330751733 433691762 452250850 628003196 892738825 486233789 683590367 796949274 962604870 853150941 967567734 998322834 999667766 632994742 806622583 607937427 645948678 979879380 984707656 867259087 989078644 583716575 713614920 392754744 689494085 898103226 965311175 671690197 880946182 906859980 985415453 400432606 744245755 727997033 792548877 300035809 369724582 757144478 802813718 552394628 657672760 662474301 851213728 624152236 721949620 180810723 799532184 684931630 735284061 950523266 978982182 8853407 396433096 381658787 473252057 641372368 669846342 58065817 572407593 103586788 115037021 57811745 461229240 393093372 971786480 810732014 903929718 523858097 721230028 940347151 983680974 621390991 802104567 142883530 238622186 449085892 644259093 422053618 682658372 158842821 436794285 827384352 916798624 337690111 623577141 865554131 984284202 445551538 697737818 350487212 931829640 831404113 983389836 103052487 768225137 403313127 880825638 232704244 445875439 131794811 331081223 182146399 812001964 341588576 772302048 179816813 757072499 481524293 691594063 646183118 727167380 417649311 827331164 506388424 874170981 998534815 999693266 953738715 998834753 601727218 835466915 714589833 768684320 86209475 139050415 234867339 531928774 679128528 769255233 961197478 975336986 95375087 344172851 817569688 974452573 918569736 987403577 81526152 856977003 6619233 980469434 208049811 469740002 595753495 756732512 444271837 545635999 921645 236690102 201715883 361224932 85823921 687092321 161182328 486889046 78185196 814330196 214488886 709777460 168931756 702803773 257977404 604690462 184743814 290630909 741233396 883061894 221633033 519596313 637859386 709273253 676077782 890735016 626115310 865998193 178570904 709986662 207367122 726920037 112557981 207371523 183664392 829788174 548801091 975252393 588061402 915488562 827246211 887613670 307890170 754859415 896012455 929692599 880031299 961926518 745842999 852754972 871282195 954444199 332908710 688588530 313004576 859824283 59104290 984678857 546216406 739123840 464779606 535163364 146470694 803804176 531663487 921265152 972954492 978869116 47627457 476865658 508906555 966963792 358224784 997330724 174888735 939727740 746813246 902178972 573020599 886927170 47211920 713051480 688392047 697236787 943719906 952779075 867160099 941152385 622439550 774997446 309498750 988494316 370630221 483664966 380622459 683841511 447649551 805933411 774844036 981002839 967073772 975758624 701438748 897823648 654308073 836041026 480643677 538599272 939013851 955336692 100285857 721923075 837408647 942178131 101680005 363096890 367268503 681393896 325018510 907108683 646405436 794322777 716470004 894753863 120891266 764805027 204295374 931744837 432672813 932342581 439310906 553866774 252736033 298198877 344574993 395238408 586552729 677710872 229430898 926142094 336097111 573176697 931436931 950837384 358425320 784852995 246627984 689466805 384051815 754361667 418034579 982199713 727106452 786965607 815009014 861612743 975901568 995259047 236086043 303483373 58784721 66039583 604049809 644158090 741369934 805189171 170900437 637509386 568364086 983684366 557465262 628508696 982205556 996489130 438161460 861679636 136773946 851651768 916794072 951900643 319241707 337538953 501426250 765384975 477393356 595606377 290935880 881907748 105991598 352024049 716201342 904815981 124073567 593225096 744072618 767480508 335579985 710342728 156918532 211241424 902118355 982777085 645644740 692432504 594537184 811645558 606895026 664711760 82564273 415209557 535096717 625576542 530511930 913608496 275379811 543085975 784340934 807814442 178455455 340069005 905532890 968553929 127622455 453754805 420589097 689609058 462457814 966602451 731032098 907259325 676260949 887575932 375145762 510648332 168501804 543041963 35918363 433601915 293642166 317556353 857174302 886157857 885364326 893051834 507318135 686844552 423801067 598900511 368111956 532896395 305386671 853176882 922831130 986530843 551792867 584050701 724816575 923550044 69662496 917906811 776185085 882815591 166331230 898541731 537898050 561865201 24656900 919840366 352275741 666094719 947556387 958873060 672283016 770847520 352788648 976815321 177003537 533446763 29169345 154040607 938376418 943018479 131526856 239819124 948661241 991841583 591460631 679430984 195862966 823618820 769340811 821619240 586456346 989373703 547707915 691736225 924941724 948758984 312746234 494899329 940451110 955146799 182268615 299089477 313044658 359130587 446545667 810457617 801899267 881134891 587593327 992274551 874543136 879351332 44057056 247678460 425900223 590343753 855197909 884835727 415931635 607823143 374134379 894917983 459134884 737357913 709486545 990524702 357541868 410544578 665472109 868247874 491698895 518108009 619728040 966748789 981137681 984408404 18262674 391569645 453975615 853331441 470028154 997563123 459098758 621241431 950003964 999295018 208909485 336787010 373938462 506291446 746558453 771994610 935421706 978259743 759467127 868796610 364373364 834336102 781753324 848491995 192763099 928236202 406579563 415680961 197454172 234092145 162806938 168878348 135855565 632375249 997544345 997574544 190723275 360636334 267143136 318451470 912414927 970279419 747657202 861009999 308321411 633466299 876918598 878210277 305701133 885803605 161155609 966826794 172357815 796336739 938292120 986726726 214238279 768778377 279969110 651590028 258044337 774364723 338365334 884177974 293178300 365075190 149948187 170593160 712343880 898879162 16236041 23523846 176399189 924838595 664312364 725720572 839317947 994376177 902445602 906497500 568767005 638527717 544123421 798286383 502560271 560759714 47894027 223503712 128124594 990088202 78504774 757645357 422157296 975538032 15006636 583576770 891040581 928942776 744738666 934090247 734567007 863167625 720760558 913633240 569716151 935219960 325176753 902032961 397831554 857294911 682199196 833210148 923707415 955212545 871229547 990816530 392474872 873995324 17901391 552392992 158517277 505205650 267521888 448606803 242772967 736990124 325348629 703641369 797381668 910312740 684927853 720043759 460064123 930973602 173262836 182030964 943221422 957326156 639163819 743193601 886126939 971178390 890396188 977797997 417858482 449017817 453435140 680480505 518318057 697169408 803028002 815830661 832871272 841027782 712792671 983788321 106649685 432317925 268010831 702816150 257699182 839855136 209251906 742583661 556506746 565395579 700012722 992316887 259353211 639322580 116578664 379191462 429789266 733714459 28713815 913763016 615542268 663555738 64258295 729821340 420201083 778598339 414141517 657036633 727720277 764716920 709378741 916139340 184170284 350492486 281804492 467435396 222526533 357451992 481276941 686580796 127075459 759143555 166633168 185761818 280609137 441899236 592764873 892941972 20904126 648145451 422291897 491251809 192281942 453575539 296705699 450857987 175710199 490499810 759956694 846592334 76121136 368019979 893864079 915942120 611286684 860167525 145639670 459971281 481111153 714025453 727542509 886296649 17881164 984719961 610429062 763654479 115964412 326141713 954499796 956570943 945665704 956511608 966285498 999799248 765556437 955230524 909071985 986102809 728436716 846739116 51592396 731325502 873575828 948006594 356409348 504246687 627542507 780832318 453003702 932364276 475570069 797112764 906540505 934763223 948528256 958061954 602369576 795648276 749408726 817410208 635933278 825149317 525200393 799282887 568333025 985575520 355058056 640034450 3730456 51017315 880075026 973527142 88870364 534769066 377484820 620709699 450960570 655318438 859092280 958332845 923747723 931661087 731450392 849496176 452840227 457842115 724131819 985154558 741568758 807293120 906645455 929477470 148818483 369501183 925633043 975563199 187034473 745509214 367551182 430187601 1345682 337002739 123114596 532192364 948197011 991647895 10693455 794519014 286845005 634596842 792722938 833598721 747667094 907880353 456534100 733698013 722362604 888396465 150561342 621779868 752554687 766454921 298888040 759015222 987587862 991383584 159142625 654154555 241536697 931134406 392544768 417101721 960659572 964509451 857162656 932144461 924317581 986528364 324871104 604991646 255017837 837015649 523824796 599445768 512425504 582317836 581833232 977792937 478905641 518117000 504485600 763230121 319232878 873835150 257274635 983366374 627114772 823031474 435943729 785567106 692994777 820071159 752006838 789528336 931420232 965580647 364458118 732361253 832290394 987684013 62806054 558192289 2999148 432029885 146869954 698807089 469357469 836221072 482600702 960161477 102476646 454429498 752935061 773051944 609899315 988254681 993122839 994121783 349966218 979736323 805129320 964269413 923976302 948976563 625794484 654901232 169919285 890279438 786086938 892957033 592751917 827733891 683071201 692946957 709484798 960179706 119206425 198011170 375772049 584526683 380722257 392257358 316459849 797541602 500373444 650915984 957923471 988376569 926413746 974679238 187044424 755929870 424645866 438866503 74175400 404552464 422184164 554515211 443530191 818665371 542048414 985121625 333766944 568841818 916829743 982045863 20581655 911070449 878536246 976487825 90574319 241977935 729123483 982105377 296507877 387317968 356363551 470052105 489815933 654018511 870276 957470880 286848893 997631028 73788963 951952034 504826486 611758586 605958972 642655502 994769280 996169286 724721539 864758005 676398527 967893921 826748622 855247505 769624398 771901020 696768275 812142173 15352462 386477668 98573840 695686134 802573024 952309404 525419079 761672482 487646449 621873142 416126035 751830298 644536746 847829022 895845156 956599959 427905675 689998478 475864914 702129882 767142328 946810683 753798782 816058168 951864111 962100707 517051512 823320551 438012281 848818507 253415727 785662208 977007208 989737011 673578277 763490879 537260463 834392963 382306149 387631686 217285039 959408040 968188263 991937620 199018568 959026636 617514805 762258715 418360142 986156214 364788724 960949955 466198664 842272282 523606734 833650013 339697364 444588318 342765053 439667695 387520366 440327530 804929314 946230213 899731356 944528901 99239583 696148096 735143962 838272100 899327732 979054801 354202599 733187489 698879847 826117798 427277363 452194368 259778728 770011691 857098386 924578112 307898504 654762433 265133968 521908757 502783288 519393324 812101396 961627235 787347459 957260019 499181705 535688267 912849324 980103326 53010621 655725733 266916391 650631404 249308274 393213380 557379536 900711942 784582132 881590979 726522575 813052655 718521315 741783035 906340574 921430920 532079933 769469031 743440093 994564669 617615977 818267969 635871357 723904898 20287881 829776300 875864561 997376799 504598634 927864418 606606772 614815751 184278890 579879799 196744652 797634972 277353302 294268665 643285564 885623021 224265095 724789509 359703836 421764836 839215358 958019071 277650619 339896855 721520985 757038089 533564004 937992093 311944257 994514154 489027642 848915369 233190708 277701520 813208111 914593473 247634002 784925870 221201127 707138798 586347047 663919504 197778575 411158858 796139693 831979662 791168029 981943241 880863736 961422078 256852617 621080208 191970530 818386211 993954406 999175596 489270057 576752934 931669575 946996381 662209218 861172272 691281830 773661145 737985622 911209913 74218231 622223370 383667912 734969845 747201973 965109285 904863409 967534612 886970341 925225940 202550424 844471422 462017268 631350146 682787246 847173163 510028014 724999188 602550206 968503622 558776443 944900055 6149393 524401260 149509702 432005968 790792623 803360783 116923826 898333625 875728138 989890706 924335774 966432618 150841359 422361797 963941326 979340073 905018679 987537385 286017306 305102038 490239498 617505713 16060716 74802748 786692752 944032568 459648903 469529399 433731612 639156990 431318973 596160095 869269214 882088037 598304010 707525764 771385556 833111857 445705554 584244523 378938177 952672898 167916689 680607266 635347231 694411171 826854408 993357036 553339319 739414314 711554565 794153182 304575970 468334077 339836559 624745014 985496586 996146528 301262279 468280289 339756038 883112341 645364664 941960024 429526495 754841071 538203544 634821950 146385387 552811100 90567916 597721792 86671755 657340437 985106166 998363944 674771756 879861538 422208153 708189724 248896642 786810902 796580325 977761742 575979890 870756451 620981923 906932457 322479116 360931749 450927714 696882918 983531822 988735608 924201938 948640015 573026250 998163159 592223185 977595283 758237737 820372316 632637211 769500895 246025682 983635422 723646370 894883865 940438166 996408061 26251316 269498658 657496781 966322645 541497328 947858830 562469649 840520472 376043121 604953005 842326115 949923599 936096928 993628070 881236757 893457839 826085618 911945952 168834847 512494401 742256695 966868702 248325725 764133217 40971985 912253049 22052807 978358144 813471083 858363693 338823110 388273236 103130508 418999584 918232163 952634704 332254682 841683328 229825549 797683033 572320871 761706328 261471521 339930073 806391307 999574351 166776533 547176338 37139507 557850210 199944748 613699129 783251068 951042570 759362290 924977197 606604352 857793475 469772649 918760954 14620730 466295918 923483603 986096464 330583788 708198238 420623379 614969197 471445225 528125052 444912508 736712740 156643846 588249458 376075865 416577649 317246238 694384302 724216847 728402947 16277156 280324529 541376984 975484867 455380597 581044052 495339881 497592644 127240307 167720014 851731885 971817336 199575438 791642295 746928606 860880836 33308133 376447134 253654594 566210097 403691691 982939440 592936505 867141022 792345171 916077300 828794033 961729255 620625282 776284467 236848195 247468229 548056414 912427983 435404765 975004206 600160733 683740472 508200649 705638669 158376329 630079653 191088225 899070074 626474029 651035913 216117496 770348262 123406701 132607957 187795394 810881257 957458852 996008190 302110782 605058782 928463863 966402406 692729723 974714191 277647592 469748718 700629320 962015910 35439483 40927428 866489286 925721091 319501452 836453768 957976620 998226502 415540519 816111947 787595198 789486742 927336685 935880415 693902290 920599588 544617129 687019827 714629680 965789216 678051581 809671992 348302138 828991237 5524359 366342943 857032859 896395985 589856363 953713729 951292750 956821586 259289660 961854428 422236687 771599328 581035746 735784994 352511515 598788188 484229855 869230166 829316211 973914342 524020317 673431082 145019811 297318492 283250997 600108345 507408708 625794060 770595090 995608137 718150546 796850583 960782081 980420035 765009144 768806702 263769355 380367372 911927585 972498529 362588417 872924696 469607671 889155309 804064541 840541676 305231114 765582128 142194616 957227373 347380354 359929968 516714970 704169448 770295954 877013939 230699299 352583785 499045670 711215046 143867152 631968390 861778437 968304766 995639297 997867699 467346934 912666168 170170038 772118164 48995112 199897955 136095250 827671817 285772641 628592891 678849553 890799119 550431892 640927461 365588894 611855167 880277219 912540131 689147810 717160943 544056911 795711070 219882460 500415920 420304174 614029661 452015226 569012307 613067915 842984274 366097062 369541378 581926434 904816883 496323577 516832508 1443699 755107251 369202042 989085147 48673337 966289527 785926944 839300237 733358326 733645429 183911590 313613859 64060409 758334763 480136105 996065999 604576761 855964960 700446345 964339217 30701027 605684794 517336473 795167189 158391988 572585125 312532246 387209983 887883565 965379445 443315606 789422093 864040895 883078861 274984740 836591958 957867625 988736639 897116204 946811490 885675997 971987171 305484653 667331236 656642282 761248094 369770635 389196173 202949488 209400527 357530723 873434276 253772068 422979676 863495311 978434987 894854064 941765513 471438874 755422334 930152379 942055752 382973768 921377016 161292731 847566265 819861860 922309579 764858794 920311869 542860070 916927108 811495908 816420843 541882082 794805550 643825203 854523429 336169057 976365421 199554297 822708177 241973914 617643500 381048519 506413891 168951508 922582301 983610742 998201499 897951783 912985899 80192737 348001099 153921113 610090068 229728978 988100091 65657527 577595204 945363840 955237887 299950810 389098597 400395837 706218111 735063018 930907357 348223667 397919772 807253947 824129957 643187774 798620188 971812967 981606918 334022455 863218544 106465174 395974785 779010147 955439708 126972535 999607408 260523671 984961651 364792734 976650496 688885385 834557120 647609722 661472240 630104322 918997188 551458842 607117180 101599730 184436954 741768957 836993597 281414850 922195285 857724812 875729452 585899296 940506397 15471562 321197443 447946666 690959640 885441292 972684247 130889522 830329051 223421088 550838567 240276676 921278727 732795678 773077730 727365972 806484151 989827108 989979558 404736838 654855443 447903605 722296986 367292095 629420849 735018232 865628407 539030466 985248299 544286785 741430319 646952049 678782050 488966658 912083249 138037921 285753396 189408279 426312148 821989070 924947785 606986818 717575966 853696266 878351084 979644411 982540504 185989138 439900458 568796412 929548141 647699884 770282303 138106463 409808629 272344678 512600797 49157727 943844076 718435109 796075064 58630298 543847917 633664357 753570455 746207893 935126974 543936176 955939155 976879910 984310576 82218999 863561708 239159075 692020700 790619518 834653290 90118887 366285064 132421351 668577302 197088111 652337558 137067533 225001832 487501336 671851174 368603588 434479594 846400911 856761883 899023128 901821196 833645286 911721123 434272840 591570629 135078972 489467146 780141324 862417649 860646759 896981736 870765175 972252841 758599229 765379550 884717387 961797182 909300689 910236876 832752799 894089442 229654457 965638295 515613419 821007011 182839091 593214535 973879814 985930267 446440789 591084709 143576531 901521348 400198954 791729240 419382410 990197508 935102291 939540282 885307042 912668941 890940328 924602988 733245091 742902835 321727065 915727592 98765407 890293232 259016074 302676002 758772480 999315508 158281855 203600059 816143482 899205791 344424930 925155778 566470135 830300348 204329376 207093002 561787959 659231820 541742543 568225060 932497063 938893741 652900618 710284326 983339404 999035676 82716719 935449561 375910521 893407742 938171896 953637309 111807449 486752229 690835176 803962144 322966483 577699496 68084056 155985725 173657619 855536245 402943067 803992911 989540038 994710568 510960789 540905797 374954684 891635459 591404050 729472042 213640262 672960363 661938847 807692576 169932392 376030688 639151840 937921546 728663915 955011520 737289643 765154729 683011847 917848202 383225903 708305723 965781913 966560253 15071875 92114469 734142724 995511201 139686566 887700201 52816302 373605433 269346807 332498096 991106174 999122480 351704416 693271772 289629386 550601060 971454866 981714296 405137766 819063867 302978140 751779451 843265751 980034626 631726302 906317178 975837346 982360237 212730647 497132080 931292576 959151610 618589988 789422725 435686013 865212067 699455070 954926128 121121166 974781651 228951413 961240669 225570028 837439761 937263133 994080710 353425108 737625068 755479497 831133125 223248141 763216879 668342025 982260448 826019064 999305114 436732840 676539035 905065233 988613346 117766849 355195639 519210912 957012477 542599623 956405101 724926361 963023865 130112202 229773979 7394666 543217121 968163473 982026169 13978293 899121418 949580917 960163979 249621633 860816917 664942366 889552848 763602114 949706032 662465187 974783396 389355591 412797910 240190353 327752600 553965870 691553817 770925896 778253942 745038461 856982932 252254953 770784516 495620413 836952738 48554655 693558965 427641476 588126748 913965448 937610894 738325039 908354724 372094849 746745199 930522608 936771455 639130868 869572427 798103384 799933221 154509775 376310062 878967374 961666338 251038827 479764809 153560237 651631046 174649233 580761647 257171346 697549965 955907267 960513727 954535146 966562442 856229149 891500046 311442871 978983522 897006415 937353479 972415792 997781350 333357708 703848536 410013290 496033467 2315656 656489781 282540361 532863853 586099205 862038534 390285028 882974134 694221106 837523575 285259258 441618143 17120042 574208841 182263925 859718348 692162369 738766300 634713382 720379841 673289675 721710624 831717977 972107259 468966603 529552738 991633786 992272138 886788450 958852274 461062481 977830863 390502336 653544226 989044477 991161755 931016838 997624062 184412228 516749085 44910298 901887526 255184454 643654984 383337019 945360192 245727861 879417113 899858442 943059482 943563653 983394890 284518881 464123805 679196413 941090701 145740897 440948761 601721919 732744923 254964767 739257292 517128413 872463714 773608472 868477601 619949591 714803948 515342834 533250207 851296431 965452844 130485446 569534817 724439819 807583570 457130326 902571014 757332534 929237692 880056256 950371375 711982226 935382579 701299829 733020706 618492864 805037212 349606094 376396663 225058980 568182575 21610545 486123558 260073557 522843885 575288183 644703143 85751107 260936535 763499221 811190410 312106426 555581698 459458082 762447723 336718973 559314358 474275844 722691486 417022541 743340346 283371789 875981734 683105746 799110137 254387425 337631304 153084723 591454472 391497210 771716867 349733041 970221433 847710940 996263114 835995804 892490123 528392450 618373888 3862502 982609782 798358486 892969712 60723163 979626300 352018006 448912491 269374802 678708867 91018044 208843440 378315081 745148953 205414091 737596389 767841891 892708945 900649443 997890396 39388397 586815009 740862214 741729454 905268701 928951624 615929425 734929377 352571193 615565975 980250502 991527916 822041539 901816168 458468252 953677810 825148188 851155095 693693174 950226672 426897807 536618398 310609458 877621521 639497893 752149950 263251481 472607800 693034289 873041907 469707378 531843421 682286820 795816725 816088795 971361631 607653794 925139935 315797962 871138191 966159115 990765683 532430644 592135263 209846663 749342161 233584015 639938660 495364488 847710838 794406107 819883082 831320089 832326067 445432123 708625526 229247689 327976912 714482399 881091878 220862010 975149402 892976266 913743599 591727886 799453249 924991381 973554588 355546512 551905662 685597076 832445460 550546660 774441875 403768024 593129358 676272215 901549737 846219140 984782635 960142227 962490510 543354517 993054590 336458633 984663304 826517297 933252252 720790171 765461427 156479883 375329143 109678353 169424737 725327934 752333790 241446019 592905610 582521243 703794578 504659483 761611067 155267543 610402163 755651179 907852821 272588989 811729421 754238498 857844830 920433995 941465737 19583564 815514651 244953990 816179245 271417909 744390570 76190709 339467492 887651158 938756116 348517333 362273049 707523713 751247561 945950291 953275577 159418738 893646125 416316453 697089573 269996015 514434096 486737955 924423527 656667584 902543690 420099841 920920061 57175361 847878518 754321518 888416939 507713021 738741451 21568236 242357722 611401619 653037795 311252987 960942778 170271921 283299980 256312353 666898368 456488267 689144249 958807305 969879101 349044423 827110630 297048841 634111536 114990809 612722706 518593855 972736588 571894428 834626368 565179293 845152620 248938955 514759373 295030356 421234727 417434329 464794254 249423176 655963165 427393583 622600394 230564628 489779983 839891230 944385533 645945490 724230038 938682275 952051771 451705421 736563580 991828352 997474713 691023157 955928163 809389057 848313385 313073862 403628758 268546221 930056376 136207096 932804002 29571756 65211945 576551335 840961149 707389840 879578913 622488056 831770353 797688966 893653738 114491312 282944002 62786963 274684909 52804882 165484708 222014578 465006928 299676859 595639322 47852988 416656179 442253045 551393687 26708580 275418756 694703350 800828365 965384297 980295804 570429470 990331112 408431229 801881227 26416637 681653756 32129379 524644340 222212650 864809380 878241029 957288469 388524356 755761943 167576129 774102249 651082586 816435126 601247592 899889099 674792246 866296217 574383024 843467348 230896961 820766070 643666431 677622173 920466831 923733255 795822922 818150437 824058336 901995310 596552385 604482422 596007873 699745174 209793141 996463941 19935778 514931731 41829574 180179376 842468260 880575288 962227835 996610470 294515458 994350322 659051157 852993123 561324049 806617309 7659973 983029085 407876334 421169007 747586819 757411679 989791023 995005480 365830942 735457943 816775028 850732683 156484066 715668443 201293767 935127741 652604289 854726690 165866899 210235746 478755074 729864753 217651280 919101976 889318807 937706476 355600224 387233156 563208915 916940069 798553860 993602689 422132017 456422766 89455356 753587870 599716523 615373820 810126314 937749767 550527173 975140352 634157038 678886354 537431466 633024186 132899390 663303345 250040057 968668854 847617181 863216757 546910886 902523552 493718324 606615354 724038562 887371816 724048785 883137231 688806406 815673574 817415993 955733628 764898891 810117420 634923922 948317315 894114663 959845208 590831384 703694944 555107291 830254622 699335454 932654618 932958558 998419355 793135877 899313527 748372087 985681908 1634042 477001580 293439318 473091380 618501905 944894222 123808394 696287543 252729756 480761040 779890073 867507525 780809508 874962656 327232610 931043582 699121891 828850341 612600476 818964820 153598331 860110243 530280304 866945585 170556721 658453713 357538499 927414205 86133046 424060805 351682066 876129930 459490841 689038281 935643952 976072881 980397251 986088746 86207462 144295135 336721090 598714157 458580554 859924288 975505604 997087310 108839962 912331388 34746248 112528322 415412624 646893985 968287946 974893171 155076851 316533533 174522128 514398150 388286073 402894921 792779605 924544042 928169642 928400692 201985599 368672417 468161018 535854056 477973828 871817373 835470165 984125762 831146544 966338223 917473987 963301939 924475810 981395555 217285985 380648050 596023906 961659552 509771125 547903362 458923469 931939582 742341323 884651877 77206033 337170511 608199965 666859249 490944410 875972000 143927078 505809093 769239344 851866992 634230748 713762305 89916406 368151883 233539093 242641535 950576476 957448489 127889672 229528547 882404818 939556180 317178003 404862867 763874218 941187768 555905303 797844748 63010639 511590258 263333125 700879610 473884742 500483403 455723667 838207315 482434596 992088362 790194554 999606995 863444935 981071138 426445681 819069122 991263641 998141587 658604944 710212990 373293649 486122502 788067362 944299891 882229554 994535378 668032893 748946254 984882982 994572484 114816227 214612031 293410559 461457527 804740500 874972594 736847962 796924754 26256806 688448010 116724589 155133958 932121916 979155279 266589864 439877167 914558164 995308022 948573277 968273059 739057905 920021454 971820481 971850170 407841370 934682889 495794088 779558684 28814382 299055470 590055417 678411912 424380941 529181493 507187469 549160561 868319317 960387338 700781214 753722904 612551066 745782785 196261991 421319009 663128663 715351601 802193344 951678466 943024671 985288525 912099529 949840765 696222589 890831579 352065048 608805426 751373049 917860886 764540783 917339175 822418662 926610278 156072340 832215670 668960663 743669340 99253317 164050852 283808022 775931103 822463970 957427923 996719620 998966361 112725748 897228358 423478587 774774304 996825471 999908154 499496681 648310032 460927115 735659978 452651611 919786976 592134147 988999934 749713479 990128024 931808514 980741960 175091044 312540480 635669710 782355151 711145527 856818494 398441357 586859840 867470047 936281497 742925308 773904941 509873464 660080082 174873618 676502026 840515883 863222223 45043596 723018815 63121994 868688527 698340172 727554752 362609560 646328662 494930564 567910859 707693335 956695867 524735930 904496847 85778477 780592521 20839982 88081218 48239973 390220313 437622633 758480856 129139533 990054503 235214471 331895497 387767760 659060549 454115871 979880239 272506418 546777537 701249462 707673692 662354765 834805417 516232518 643805720 791901820 845329666 352934211 360538456 320242476 635175250 234483368 744749254 175360554 381582094 198182347 582095904 461645970 654666247 363242683 379125801 621443156 862529890 87135649 326410040 639767729 831108700 737477144 966799108 910260576 979394313 768491635 938314387 363490608 548151017 215802446 817660740 372604375 463007610 829656593 897456605 882678527 895524782 351910375 449673197 303815061 589517552 426326623 924084150 403909402 774599462 93206109 551212018 780190843 965496381 177684984 507540335 925350051 994647553 41362580 827402648 121017326 746145048 209020643 643548470 122993855 281296074 436839041 542877077 92452145 157695579 508785518 885527775 623905203 733372147 516408296 640349318 720682693 937573504 115029348 776578950 429464788 562625191 510700473 824662689 587649969 854585583 496492296 955776323 745973183 976919138 127527426 539664207 473927494 490464670 677577857 946104151 584318357 612471242 195439884 976055807 269887375 980609599 894595066 943745621 704148549 968465586 825352968 979206711 370032182 626359380 934888192 970383205 986530762 998115305 61132636 611346356 392015701 573902727 440443159 659404545 584982493 960781373 685644547 995609914 198190793 747088593 661426576 747519534 133261160 723312041 82764702 436213858 531720328 934118021 485209615 691033206 346453801 875078038 11431974 252259644 906670954 991410802 826361753 917613258 338475455 388967762 852466456 962190534 887454866 971929175 505980443 668393619 325599991 648735678 964397167 983814001 145801413 436692262 179051014 377177841 997106204 998626645 226649078 596972093 192848994 452030641 87866686 575187698 290125981 667628316 917314181 979906910 119226038 626279110 72548828 177108270 52065808 384898429 353579178 975076596 27964365 500947463 360595602 562340347 205831814 747639915 43890060 748561104 640422528 862409023 778528506 800673957 727715853 936660286 206929028 393521990 188306424 437791892 624648073 995378473 182793984 930773061 672207390 923493077 162455298 239585257 708964567 911370140 108137517 356450786 715300537 973580422 83622256 236023112 264639138 769091548 733908925 951015946 999348783 999353670 829454202 903778442 770694189 833334815 462015817 683951513 402921095 487279588 752656458 901972623 511206538 814466846 633524198 710578682 580205992 685053079 335205342 797834591 443003401 789648171 371096416 458794755 320587719 654601968 133224781 537183514 790090820 864231706 869378162 887515574 439052557 633287045 381706221 783968073 932601490 945538448 157123003 337830882 363797262 835770572 995074654 999483912 164049065 765225544 884108113 895404575 296776156 533655096 406893674 977339151 296462012 853625134 335005002 946878340 280380221 353160380 250840563 388229688 535638475 703281211 727584851 994836994 896823533 970059995 565310788 575136224 476175118 603651745 659537218 667887081 933445384 967429255 368314012 606917970 331145890 401145579 518611585 568749108 242460886 670783346 405930683 800710092 424905804 843135002 88779066 535577402 189232709 730880540 20659780 44021379 79801109 165607697 523447340 744278011 938468573 949670306 665469390 722666126 902496206 912535940 658041568 835666884 680809207 835172225 532939257 553292248 674638041 756249891 703694001 824798871 491565032 563700812 493527501 577178602 595531838 810707185 247056646 336292982 259989737 928406018 867921746 947761399 643793652 660547499 600882 341060299 417560513 882462774 523847024 684300919 748663540 834714619 448699991 936477376 350656496 695754515 378556289 848942899 262052102 708549339 950052483 968150083 643317858 749158707 359849208 720977902 444146936 638363732 818091840 913477585 329085907 908652607 94625552 432561827 614846055 649738692 816918558 955642610 463513034 637131620 886524853 900101493 781866109 822534827 148644965 372249092 373029506 927434707 768485791 830663072 251225813 814616296 240391968 997588861 904769084 928463014 236203988 380552838 359193375 958425747 144338080 269214552 337805091 877444090 286871922 564158742 87439895 494495856 957321228 967732619 271799556 384491572 392262676 471884999 257107081 372535691 823943578 852797064 718012857 856440480 38901248 44779461 364849862 967153222 670811494 767051450 678552666 686289780 417156534 866299972 99266187 666876290 989760274 994021421 872437711 995011724 612962150 699109235 655878148 778500771 143088136 593616622 955441122 991135816 116236323 157599375 291937308 714616852 43239567 448302908 364808450 538561274 399803955 561471500 978612708 984613006 766908191 983076723 767198350 998912072 79405355 812839938 409120107 536611038 4961101 91021902 87158020 499004641 247981608 259712470 395990585 993363936 372175742 378899650 487947740 698078228 909560282 937600724 189999591 323765409 842861046 960123085 154037849 171261196 426061159 819129529 686969408 820550837 884161582 890504840 257911502 639916972 520781441 938848821 647384681 665485947 380959588 531352691 66778693 910743907 62203764 853252034 755991594 778890950 290551975 502110042 381749697 465249739 774791901 938535071 896077594 997879596 593805455 960609196 774165159 820200538 219401014 945302680 505194933 598571149 575473663 932784593 274586247 748804242 241822892 747658348 747680771 783942593 63384291 249564984 970155394 990970077 682527384 926514400 80758365 832565577 623048487 835229039 89759622 259673001 303282111 999080797 240070824 736584005 430766520 947362293 448975479 473570420 149927365 581598415 106442880 777343320 161502329 905304988 716987197 824367007 464168820 673986081 373496650 537592835 242577929 486988915 648047715 659459230 169224413 689719475 281233553 662645582 889988639 969436134 729068156 870352711 595652117 956738552 20537243 360508618 936076563 936953684 805144724 888910501 687764232 836349243 960914253 994244700 208558584 477068763 624890674 845087545 708373975 989539303 712710286 848207815 184829953 809130014 332080809 804201756 200170609 677697653 136956957 361823145 610433154 791731307 619677163 713832957 330978118 349087451 426266848 960943772 690121088 698479557 812645670 904543210 874003481 964361533 538441401 926800703 689207476 853755991 363087582 378283047 310201506 573158448 282839819 662005780 125558512 919229626 644751349 831028542 969731825 997981532 239915182 995451928 877960600 932664830 450068875 756811008 39426373 981974689 435705314 520205742 557298945 822278289 339482369 563778459 586736617 913334529 857738873 944288845 963601529 975933575 638119697 934963622 501215994 572310319 595900109 924019328 544030722 883013539 241489902 764087965 133824237 348571960 590404940 740805240 213340364 413713181 779717038 808672148 80402239 230494105 527662375 889295533 798242786 899634692 50108049 60737052 885618763 938403105 253945215 789490036 645453955 922606281 79572358 227835253 974715480 980073969 423286662 835751581 45606876 500372194 37824599 777995761 508026127 799407902 188306118 774431473 119937558 511103858 443280740 993159479 99496482 306254726 354709512 870538104 754510715 882990861 722926174 935710811 339434647 624163045 669182563 969476933 413820146 909145610 721902364 854889915 369140534 561119876 31384074 310739187 928356535 975373806 333098472 679280952 459037995 827696522 623443932 956039925 327152986 626437311 651344430 671144626 98012451 659898844 697264847 971580808 617351884 907414723 845489785 885829763 524752258 674084082 418576470 954617242 428781341 529880802 564930655 860387537 421260007 618257176 545746691 894313415 54054267 157350383 625218288 971419964 665762439 940174699 9916362 59825337 79445729 782488934 319245704 626049093 159732900 426755133 517873192 608601571 224017043 354224041 985678797 987532983 870237543 973705120 534668524 947332522 412888558 540119245 217898832 725527316 605494167 794365361 365721379 531423551 587595346 686813673 8340753 83025747 428431834 699479803 334648169 644022917 641303302 695392778 940380020 944924838 212093898 698169472 689656414 898467821 345346115 682253613 873236458 973269820 564767366 955673464 865697232 892589871 312093303 981095701 881936794 968196310 665908928 890682386 77523622 243010453 33457821 174296646 871695829 976629817 257737215 258696022 464287000 836774596 304278434 486776147 580633280 726310446 352898853 993114213 862315772 886303183 343983675 774365400 170661501 893006332 3487710 430226859 497391527 876918131 897935153 899422629 194608123 468222126 537512401 982380879 224995493 669264487 480383682 711786336 561973811 852965670 961079220 990881308 693267648 909469682 790244143 849089915 282382596 621967798 126626409 327992098 463679125 837279661 993163787 995246066 188868038 189866861 380809956 658889215 184120602 909673999 515793324 738960501 849441786 881798662 499479031 609346874 896738342 966447330 579078515 842847874 57844025 635073875 807771865 846556610 16263740 381789554 933779437 990908732 96449304 308977162 759150493 793967598 644987378 822262531 991114968 992169960 619934654 881783900 25125121 441574861 308017780 566883926 296097210 684598696 88535192 454767975 886589964 911072075 373551569 412878965 89530949 233560557 598678281 969626028 579008985 876425068 839882833 877810110 802374016 981773607 800203085 964981008 35173394 914203314 696537202 850033521 17210619 908138199 495254165 686548690 495137187 624523132 274212636 433562453 505930408 648282411 14805679 185665089 681305047 927955770 534154478 845195205 439202804 816743547 223723012 504142257 174618186 639628727 767046503 861074724 452115440 943076715 720609831 926283192 851981486 995483016 763971468 868667699 19006712 106627714 861497333 941164354 770176967 788234547 879760163 880734411 979467365 989196419 566686307 709149671 759354131 921438202 10630344 822120020 905656374 932570475 821223526 857212994 333523782 686095915 719729739 756815742 661900796 915702205 771992517 911610141 796880819 935585014 94704854 516600776 241664334 279211404 261205383 368938040 538831541 547996459 398114015 986857973 252497800 356979328 558928194 719154847 491562043 592343831 354019682 967966791 815710600 976785600 656520035 741336260 603196576 979034987 188953206 688021650 909958578 943572305 781841360 964107343 80717877 491910261 270700496 893414838 578744443 885090230 91980811 930378274 83553199 345223479 555662440 797303041 347407018 981643254 290953409 570212018 464143503 703143205 714091582 953734732 413580015 710541331 177062543 643160920 760995068 817467854 734693303 875906632 2306411 484345922 621930615 972339602 357241845 463762419 618487173 778732100 916619584 931076306 943600356 984675893 168968627 744207886 186125694 653947901 942338076 993961948 677640428 918292102 685985705 831062599 61900860 80262337 254494155 927663975 533247142 800756235 284966717 423476258 621629908 916119545 870671273 964319092 201928077 699925843 937893008 975329910 123582058 352801653 992042546 999763713 1305323 470507798 966247546 998684084 295423346 372547731 260131597 747282227 48191422 497732106 408842186 766289485 998852259 999088491 590818125 948572802 602355947 990321652 933984542 988196075 442322080 491850686 542843302 924415670 827576578 943694819 635335380 846401396 668435941 897399644 501197014 790775012 584558966 890821481 70009053 931662061 944131300 998286156 923870544 996464440 406139756 517148297 416778164 998679756 889718671 977619160 572721636 711257463 426426374 892970119 776729043 965982837 793465372 973668535 828665333 866772270 627206972 684270323 446555413 985054846 605526522 629060400 812311631 966694844 156080942 158679594 504254370 620343953 341897115 472841492 960117927 978867707 412450854 879668731 45783924 835386398 548070336 757227142 91250971 752551695 56788791 503312722 562987446 912717626 553615800 677497036 66410037 990080331 267933735 450189818 420139933 845657533 607637273 931195248 623299710 710177123 317270719 650920747 464611052 941272652 550060962 837539271 379262703 776950537 218324992 434059124 783037683 824184507 699889418 856614859 358755031 434135564 799619372 805426540 912273317 954252248 354473819 728076993 409775130 937838129 761484038 896692378 892732466 939185760 731934723 857392123 439067804 646488637 544563194 727826179 591483288 974612706 647282952 676095141 455127816 487503014 570220743 767258918 589780532 782252503 647490654 978262322 293639527 755187219 140252457 675296951 71699694 133603478 14987779 571429431 264986577 348340309 442634 655066272 404087334 670959016 437157019 560209126 455834535 638167026 172665714 182648638 821810188 996577158 868886466 943234585 672213073 805109865 44192853 540383922 84345248 565786698 227859536 306225956 701704006 764328837 53493852 332374555 625877856 993139531 407464076 440063291 233181786 754105253 344527271 991508429 511521349 969847741 823724215 907624722 893974961 996256955 350907821 443573827 622269291 868970748 375599209 925246936 138420576 564745448 939098199 985969018 551984067 867949354 621084602 773529250 825098304 939249954 821487540 890134297 586704121 910021925 760104071 855549180 77308812 511137101 531520221 679058854 334566177 571201684 160765407 314722349 735743068 797380041 557903021 951147207 826479740 976278464 635498300 931470667 449216960 740894286 372439795 552752961 756614192 931181080 84421856 301615065 870503284 930920493 224089223 721144363 852320702 920866800 750977389 966453602 442136714 597841211 565513062 774616805 387205485 982813383 755344788 766784979 412749290 427551701 775203005 899277249 505942493 512675381 949185369 982018102 790910127 858324848 878450705 891044457 960391757 972404621 986631040 997602886 601409743 655499212 949714260 977697247 853447041 966815344 227424794 228445022 88999868 867374395 202810951 425906623 677246299 751510655 111244692 453827004 750727410 934328942 566354486 656637797 443452455 552455602 873878107 952624160 635043959 929971169 977505241 989181380 624704429 853494863 273106334 911135667 23568199 759380439 26465520 99301549 368573122 692236254 237563769 244511453 654979088 747838466 569724633 753799525 530843625 637288382 979399612 997250359 979160831 986416102 902183257 978282758 621267901 678681000 868171139 901747746 597948878 788300836 106899771 128122185 194226907 699737272 146577470 767207916 369262863 465329293 724989468 987145098 68296786 79957725 523669207 768846559 764624710 929873530 875260042 907204221 694096626 898792191 928782151 983836071 341623135 584262202 207732502 558001678 224958589 439025307 651834254 725314299 811893122 963653198 443811909 965070111 268885490 759603993 803679477 829874463 329970136 788701376 614112137 766211866 379650112 481457770 526514791 812040439 199188598 428179067 70742455 874748875 269887749 332615922 332421204 633517685 936000124 982190825 634304270 744971938 923130493 942358885 364747242 637242074 193463692 572461755 809517122 918955848 724631964 944719746 107077429 917094774 16252667 514057975 82545722 245370295 206704204 777311941 947118604 961992863 20344159 819934426 883410379 982700272 594447287 643664021 672276531 883417314 985609765 997408741 553932897 970988754 455452996 946086712 802720853 816095080 568926071 984691296 550718504 760062305 936662779 943708054 446652350 503280170 56951950 58374965 822850174 962548082 283618859 608999641 904287833 904463141 677175763 895294079 778467223 831848639 799202537 815134810 200396774 302837940 962632683 999667351 629859340 749834914 70182485 283647917 662450583 984434642 833656183 985419318 17215303 213956018 864130404 894424886 898211822 987263261 372152938 796025950 486003816 763613395 27889260 749857531 665146803 868412654 735456028 961853958 786374896 789935104 814955623 921094971 254714730 892538304 434883383 494917668 411510760 463879619 272869232 384709821 846311663 888445773 131775830 832601369 155638892 168315089 734947831 871823091 127139923 789288205 446683872 792930200 191535538 632483601 127334472 814679191 781012953 940085570 381866996 874863848 148406490 487440468 700870706 813366824 650778442 889246705 225791268 494490667 890747145 978966438 285710051 938275230 754284230 974077393 886824491 891795173 978566341 991311465 928860302 952867509 579661652 621085129 566015587 910083127 583115456 645941817 991858372 994219931 906794524 924050879 195828296 619126880 185891442 669587754 113760732 138224093 706474650 960794313 530109600 686100941 771729071 824508719 952471614 964015653 738494678 751978647 21150100 821995047 945912475 982913681 873428286 993893563 544884088 981940811 610799235 731422889 357410331 530204034 538043593 541278341 337224782 873190270 155424604 200847791 945942407 988750610 526581961 752758255 858424329 896559299 941017944 982524190 177170888 330864603 416668360 583417354 944691981 990128825 801592894 876403343 673064742 779332619 329983910 560729871 965161067 984520539 701943295 730687917 965239373 970879256 418127113 729268836 362249696 452367997 764126904 999749458 653773342 818348010 222875470 465974108 982958339 989013269 820111691 939634369 507034950 529418793 83123843 176440274 432229166 865217109 808404424 989274751 894740844 986840493 780839713 957635212 403434684 478598600 539046006 642200064 727442598 730201382 466280156 516366455 438051507 573605087 242866711 703102468 91062309 199360108 144595260 318567361 209102398 822813930 768356824 978301672 530908181 913032695 223073135 240788465 363055736 939236105 110135291 276034843 636629144 744231041 578905875 787492527 26618561 372607197 991679906 991771746 285678719 389706920 523620851 838421390 863380069 865759176 86698867 262595691 741911387 847375271 871911802 898885024 810908909 934688039 345190695 959088008 261486561 587923292 360922586 389334977 161572999 295346195 548724850 992440131 322419896 839313499 989594090 991788014 321750807 858236097 173018257 433933092 578225139 796057275 543646941 831640966 203723276 801666042 886795961 909416258 456205779 686145279 719344769 938710541 461331352 840416869 614756307 927693667 803687299 896455497 885993327 929380090 720070299 972133841 273939714 391557139 912671062 956689241 544087923 814974742 501418684 812267992 226281273 541112055 399032092 945871160 815917801 974786853 443662926 813645631 645878627 813943556 53108888 522580755 410041391 527749259 979719933 992929319 392690461 523666928 942913166 999580157 423014606 744081847 601222571 792255868 407279281 539447081 89738079 789238440 826492776 964954799 875197849 921641400 182558522 566221451 358231193 889194155 790698878 812380777 607314414 669064308 103346198 714653793 702667211 841259589 234951662 373803002 456953164 946032537 756798835 822045515 395197610 810535114 640680116 967169879 861815734 908549035 797497263 803650375 410198595 896222182 511974941 744398457 484869377 848736202 473720808 830186066 547182872 771520841 560572054 675680101 338956056 703875610 883621915 897014492 991270504 994599637 119293368 779546067 15076037 653632082 720718882 920361234 577405215 767789490 180873008 687443950 336475603 676725536 499034767 527396063 960940520 970279844 901768408 919543975 211132200 596297700 750034344 763450252 416273307 732994356 153014056 361015154 682510933 880228767 91994374 920750052 789166891 975916397 943478846 990991145 95259740 953737498 540571931 974285373 847098379 920036753 900196500 907812106 410816873 645854466 186925009 292465232 594957615 740203157 999889987 999902077 928565563 997704560 82581298 398115104 783439854 929951546 659071903 993247129 584522814 670054779 80549132 662976330 390318511 493569476 941787005 974556459 778171431 886429248 341174012 459304073 677419483 901368609 781331624 881781868 289565899 334440878 183853128 791342048 906053870 941699476 866569272 921708596 923888659 950766184 776409392 919795412 335589297 718572709 49382106 941479879 582614877 771468852 510690940 954940870 278362166 866593662 442954378 529558740 187384692 570137116 248798275 923942419 513725163 707757280 280098703 649453818 312197831 926396292 822264957 901281865 727831695 850188515 932470585 942757865 232819555 650987191 383123836 415251962 318352927 450592899 100168136 359218746 979654648 993651705 736821782 878243023 621598802 793354616 589840497 651375777 289357858 406331667 405323938 677258487 850857125 866739774 810737939 872640334 801287481 935810368 495800399 773015150 56700741 301575981 814247402 872774192 177752570 358682579 461364716 688643158 338985397 664969434 647527476 835794752 380587868 618115817 107911301 428658635 180023243 183525224 302682049 312839168 960019303 983262237 198240976 523688454 469704100 617209732 514003126 671598231 668046245 942127158 935164318 936008978 613169316 714650348 951482502 977389959 156561772 801463562 609107624 751839173 727241174 812029217 951511199 994124465 580686844 608951016 615581509 687834154 596398512 749978289 372244169 670997209 497536937 884159617 823141924 979275084 205159627 314701421 953152756 997595987 333239746 869849041 187641799 212779172 375881056 598907744 822327901 881585138 911836052 948854507 774938125 810636636 450971509 647149794 398775485 585445772 289031166 462576172 833681726 982869652 986558067 988829196 82654591 385556118 755164929 850753887 16466070 872082610 940374870 983774282 284162369 479255677 222625277 587453989 933478553 971468037 840394115 984039444 688664522 817707357 946357428 966369257 882703773 914366809 487823909 510498386 965234323 974800822 672336824 964078227 939232095 952612873 34404999 512943577 416561753 507637023 253635725 514186275 365943957 471699329 858522341 893864565 809748134 903565556 908372654 941194811 349879195 790242652 877238699 882072864 672862334 932943890 204333220 835809481 423631530 830007185 670761006 939463638 921325620 978886129 657107518 699894092 450883312 565259312 59218067 420964276 918019022 962144923 463282522 524137923 523403020 781863470 710773618 987693973 664029644 971646440 849848094 860170101 176093110 305316895 773424375 791636434 638748901 893638286 286323009 398203714 699261450 736779447 25465538 206445799 664550686 753780341 574038011 869259199 908063026 983960255 304995057 589930415 677943042 908225440 670938212 933438504 154652568 328582010 376072148 775887077 682769491 874722864 829895995 911799537 933797610 962748809 494325575 881846761 608322052 725936354 606529035 951994639 124454027 751584643 619592767 830067281 304611384 746336755 336001750 409204739 505562091 982541293 266433784 836186572 286599425 864673850 261064191 902219207 172144065 267583812 130845395 891348404 600906945 766999796 526364165 964219382 806483996 897757111 409535572 723323484 378649582 418044044 34964905 638140666 659945005 807729696 532734690 701817655 941950750 945093372 616560493 955725491 250195471 454871543 854856423 869367783 582358878 645466500 929888842 989353746 412491699 738027712 703309952 910551394 471914209 891854707 587599077 834654162 588439323 701544729 220128908 557929150 409511238 720591403 201712164 549608361 373342484 654784903 290619797 873394883 129688411 971365972 537586551 905791959 470514731 761703376 472865081 583117783 177491676 453923791 277600097 914723396 591246550 654403983 72954495 615227151 535094008 611755837 982261243 992163153 14627098 926710554 789760607 852812784 19164876 694417375 464314408 472836604 405706293 900634309 310571137 660751745 901237593 910391898 907811689 975718242 744713769 961580811 503647526 605799145 487640186 970229898 177624025 541313217 608608425 986557410 240223178 915956130 331389531 652045016 313291130 415181098 813423461 968887543 680490102 868690978 557369890 722527298 84792213 648093391 52095152 785943977 133377082 388508694 968539508 983899239 526465011 605735631 336501343 844249260 327944481 879310985 593950530 791417768 609193282 860224190 159838413 456189330 458205467 791206583 733644404 978976945 519111814 636392892 236338992 704753921 37374237 155561423 45280185 985254750 937434825 943202610 36099345 810911869 246380255 519582056 299797612 934626075 974043909 999140933 969576500 982403000 932246458 941455783 708642958 851688826 723301667 796442189 718744549 928125151 512998221 890174805 593710074 618496424 915504251 997758797 991064254 993596070 248566417 734963356 265385552 286898170 974585383 990524450 94297627 552290467 43766364 379611210 975816347 997199296 529976865 896872979 786026509 957770410 890798684 931964328 515153216 925771857 464614311 792135051 944858027 974487044 566329193 567357697 561381729 976191999 823137420 962070396 418127890 565685325 328923773 910491008 475002135 829093573 748086642 823566443 267328670 599957154 12621303 105538007 603467019 719135938 785571953 964266846 830409795 831432488 24513856 196961687 352451188 629776332 476484441 819101131 142852501 386414281 369383927 718947863 671534000 901991477 463817356 660267051 925742755 986740755 974664524 988650601 3577229 101206393 748107891 750121193 426598755 512475208 763044334 916259124 305868357 665493900 39661475 324356020 184014399 522444734 482930500 488214100 109460240 226701851 445967964 761388828 146739544 357320443 514296380 978954484 583222718 914943010 50761496 209444407 242959773 684589655 604705503 728445065 178649109 637594497 925717448 931571610 497465624 865441319 399015422 891126104 272239874 477336016 611711561 746543728 17341709 468838324 124595435 588914163 938637741 991412966 55847610 807572904 305186725 325530181 720763940 882687204 673960089 800107498 644097839 932981138 291193723 697239909 624919061 978090363 799710338 946364871 24523233 577509313 20367872 611229016 88556238 300689853 539743254 716967449 254634104 336652419 620252445 931042938 517856760 891550232 670603580 957707145 865826317 933236171 835245947 889710818 87911104 535827182 182593054 189710618 308070178 695807591 631300764 824003145 129899429 941912244 235757621 274795935 344181296 498438333 17976283 18785246 345580905 375121727 165450606 969734382 47331759 150226325 959361058 964307594 453692872 883877680 780842128 935056148 132855836 664222328 444288700 712312746 356457456 858824878 656880884 989954203 136178813 294302093 332630071 459196852 938584738 986911697 685318320 878610535 894638258 956432451 2168063 736361899 114973326 684922303 991366407 991504242 178493770 551872077 24287040 146192750 325979125 520414516 724052193 724550345 129092727 341610057 120187223 226446736 671311728 748329284 736474801 974898210 3497566 90198267 199453097 748029045 766842644 950180959 168179127 969680507 791300920 851045126 625467885 847881384 367096868 787538600 701708284 867897716 659684909 815141475 626538284 925926395 566250755 902596002 96609561 980947195 463153457 641315624 364311068 555768466 896475949 924362441 312780652 943819667 740348237 912318364 965049483 967498131 713874122 789513942 5983898 57322877 16454276 817435088 472470885 651923723 800738013 956599028 824478442 995183186 348605547 923039957 465291129 908864388 255650633 578962523 897722494 897738946 773603748 875389274 848441744 989092454 558780796 714100395 481868189 842019800 229968041 571278669 208712566 511960289 848933550 937843290 199620367 682605459 544881494 761783186 170312602 686402626 55314963 778343136 226349101 427737099 548460284 954695532 220411205 875867884 946019803 967079413 794696331 960466460 701503424 798420108 711842214 810536395 310845949 863912075 307164585 947495324 495161454 993136976 144744082 385216893 261891864 881568681 180634601 855109916 455796548 640181542 866155875 951839129 51471720 449162303 696690086 826269270 617935651 797853528 675683891 712357663 474807336 870464674 311632487 939327518 348271548 964264218 399854305 658448275 440345161 826400448 59253849 442279546 773923358 994944483 216455122 961080028 573129765 610250573 543983029 553900491 798400174 916437782 414103908 885986524 4549737 392144591 457540173 835390623 417341447 855255965 636163222 749182800 316864107 625293444 272590735 459640802 97978673 944317863 757691558 795474853 390652820 574052849 812036034 963897110 788267052 866498409 420334757 883754169 731992412 914800155 762301869 976190405 714211118 978375964 666019080 896663620 845231605 989630216 41376086 904128067 733413262 786604772 549252978 551537880 880183954 970991299 321890444 616161350 128743605 862670642 433514261 627806061 511632312 759539751 597929100 651103532 528972500 681807539 18036736 339908176 862308971 896966884 464708840 623131052 520190791 867575701 80499434 608838334 789652810 866315213 4531303 43311611 111390284 750171911 224333605 227911407 460716043 897877582 525251807 606630728 749711481 975265234 200200777 778172113 707723819 838339844 743791607 933968401 962132243 968354507 18241744 993126744 238050308 616704798 324402517 792935802 855740948 904463402 680762755 804260827 267795483 474205665 43041027 181338418 669905203 757369034 444220260 687525266 542070927 861052234 912607040 922252796 672242565 774171340 450362919 505464033 250952161 952656262 405000492 965163656 322839579 611575542 451366963 543153935 848894106 862651559 405581103 912457673 332022829 408658536 257282954 555889972 442456859 747382676 670912602 708957440 105069097 598969763 981746174 992346726 421182650 438246446 643160449 643459805 630872912 971248161 576101970 815030639 310075996 946238610 354589447 438788701 355120332 642782501 717029750 821681676 892933109 959757042 425197203 897793734 832887792 998282406 458177989 646576737 578423973 824489614 38302725 53713586 102393808 433648635 285410549 969212902 978440441 981264609 959147697 967524624 40456779 598005693 333428264 813527801 948193627 986976578 144921091 905433107 553374348 608263544 548356283 668572577 563668422 716015976 368690749 576210389 27078880 719320735 70461526 198923620 778229698 904126777 839264044 940191274 986986409 988230022 946878606 981468843 251015567 760802593 871170840 909117510 595221626 982503491 728685115 887552674 917152154 959694344 517546661 564460198 403596384 563861627 603973862 919186048 737405493 841978935 248920265 386566003 492527073 780809790 754056583 932646904 920715990 969809409 700232257 816533871 473314254 938802086 623162917 890059752 625836589 764500340 109756742 771214506 808828589 908394186 789602934 970541998 647875665 677365373 898039157 906025914 290639512 374946608 134816458 925482884 876400981 973987271 94153487 871274433 295756460 517661942 410441916 614371500 427181582 983517153 725671869 870073791 781732221 993265073 11970483 318615399 798503856 905666911 64729005 540652866 369265112 951149502 33068778 657677848 207393110 665466712 474329649 861237066 232975794 457456936 400396978 868170195 510021477 959613562 36311668 612603343 950668911 973430465 767074961 940403824 292274012 680525027 509722070 631660050 369809659 913573591 690676093 806296408 373871032 544296483 52317735 409664495 681075753 877954554 267319399 727007668 809301784 894028961 695462901 868783275 974917424 979102873 336077168 850991189 722879072 912185001 446577314 988919202 80513962 186852730 337508642 903018633 40569834 185088397 997462690 997572805 402594192 654549834 112404982 408388567 824612086 829104210 370393666 614203765 284073786 619915443 589956997 838484455 917086507 941907747 641371256 712387469 275732287 707070574 357204131 985249077 705542641 865916978 293309813 934437223 340248777 518234945 769720580 870911522 86053249 763259857 675534275 813406451 661856567 686429125 989487552 993607766 380746631 724846231 188082566 834346979 255444169 878299908 542050687 628959355 548637869 805248814 202241655 489735793 335361633 714241689 799263180 822788521 613999762 921888912 212783754 397501294 715504686 947315904 805805776 822687344 421847651 886635286 232648309 622159968 997871577 998699429 730133652 895937851 941189545 990439776 537304998 694593817 689382295 925840857 998938238 999180841 791687840 914404127 425607693 504250034 919788399 946886681 936791862 960990971 521514956 710837361 78263607 609904689 617943647 747713247 149493826 783652092 410764601 980185360 291276660 931544522 872338359 897693995 185904869 601217869 682005595 756205407 120088795 318396843 311970477 495575123 991054096 995161283 638057908 824157079 942320475 947788225 164407012 567402602 72292101 192344606 265875679 593412315 95691737 787902405 626541845 637046099 702985826 907782421 897757208 970207976 759683658 848077459 242875505 309445613 892171702 989317577 108635402 113072162 231046639 627788383 536415811 822216427 750332527 791243684 587433867 800091419 704704569 748300739 889123341 971916595 683615480 773967271 707106869 962289601 790510579 903525179 727274233 865475004 503251205 720202196 740655321 754769703 501582544 926936175 592373458 761663266 724757111 816279396 510366577 776311658 443777506 475425136 340590706 897644318 980654236 995413004 706113346 746306473 596219721 718072605 747670355 861692836 696231209 984689772 168924833 494222149 861916560 944748199 168914912 453695706 950682692 960566124 813996259 992608928 769427609 779723737 554891607 719645341 586604163 627381567 18224190 586805678 761299390 951656012 774625933 862176830 811501877 860169393 524372189 743321555 996957590 997854871 91280553 775931616 524491325 981510465 365589169 411985196 882138330 913933244 177681335 707413633 488811946 672264049 533915932 690248317 506561596 803240617 576164888 756440220 675171977 771426900 988003978 997313229 551330759 622130949 290694380 814702888 233319102 457133301 401408029 916383500 568401038 811403084 58770048 840400343 163941404 229808936 794720646 887256835 573051286 727875939 720624755 766240497 703605377 946504333 579331841 900912549 546603259 939669502 210308888 600593986 620741719 938948425 149331990 278238815 341227859 467033546 488574600 545452030 312762703 912228159 487111856 845474943 49918986 620329427 964068298 977236282 407411862 596744235 313673794 883000390 815927831 822603791 239293702 923416072 647152757 754398312 226190027 649755466 691141346 822824531 964117989 993452407 929437367 970157878 812487070 997397186 911961495 944017947 600958060 686336776 817928370 856063952 684544250 937591784 841255017 970732922 716667512 808529405 860269490 871703622 154951484 290725822 914434611 958979016 767150613 840709188 864791459 866824762 110107447 818886636 41723434 724098414 826135934 929907892 517553624 998520805 611636924 647085160 890633301 965263397 81732672 508378688 557139496 818541511 250691101 326630816 509682797 925041606 110696398 737107834 511696309 594726095 715955452 793937317 969305948 985888984 205509893 439215357 205461442 752586431 245229735 782529078 34614558 923844753 763012823 863841068 716350937 773599059 620163720 699248067 876585257 946738393 33665817 263439449 913898180 990902553 150260957 558889363 529223778 767705373 382339789 799929939 227321809 315315631 799757852 853053462 117705509 777202090 269116644 596623217 437809152 701165895 852020165 909067718 623440413 750029912 57004497 735109829 690935870 720425568 552383325 635623465 246376293 669753303 831244192 894505723 491167552 763511625 304371865 623312296 171508764 777037965 570544689 782675450 879632305 982792650 278464658 959781361 469414714 523787145 265422447 961023271 734612476 999673180 762254629 844443267 428322881 854205046 895910950 925563160 282077665 334479324 107076003 379097663 68444565 840595407 572932048 993673209 324510119 564035843 690060397 716106885 879126412 892012466 779789712 900332082 399158432 692416376 196536166 739645834 16851392 620429061 462560622 487574156 710809943 965120961 644584936 833806977 153222024 786976036 368877884 766047551 433905631 922662575 707011798 747679150 493874403 738636177 280268480 322723763 207293654 996726166 682565830 722136664 789158 604566260 594005957 785666921 682210190 840370252 853039741 907352048 471545469 989820606 325972660 648662858 922440572 958183587 77082602 133740069 319568424 842962323 160231089 539493118 729395411 783689466 650570568 818040006 243899011 713435366 651789181 836100230 484632878 988089094 225018896 302140457 293292579 507020795 548849954 997821164 365436380 782653638 359858824 912192585 524700659 616670811 671787187 961849137 877183044 932082629 668410075 752569193 529984872 843931753 686044940 762649081 776935712 848368389 574142013 785739238 436416186 995566497 860196175 934950104 460602411 623544197 376005037 585232417 521350780 625815653 166152516 273507422 624558387 851068978 912438318 929067042 216792951 647538743 661103154 759985272 113476839 352620980 235221327 527170606 269382671 677342139 686108624 784567877 737219939 941616398 194789105 288933678 280077686 986034305 901761809 928579215 619500003 952525421 954804200 956324685 324190196 807413035 730587019 944708436 939479641 981902724 805330220 964818099 195636759 401640636 589075230 623216931 406320993 934473846 843733474 935452440 616156261 972282700 606950998 982615859 549098341 893188450 392990031 529659541 172702577 754125407 751783384 783104677 33328587 57477253 791188672 886160701 269545039 593488406 126514220 304452486 987656653 989347311 357129237 455862055 200807540 455443785 806672193 855464857 995889325 996127115 955131923 998704718 765943154 885318787 754778768 800406945 335575180 961163339 631365944 926266933 6723382 998069689 835076667 922691300 215856961 743939464 656633718 735808351 858190686 941346841 92891454 922297912 687962170 743664478 742678663 750076806 365080214 873454898 80568466 817677578 824766973 838294994 673832782 735505366 259496404 735520705 654396767 963520636 257697614 342585379 660721213 757603323 445502464 767610632 370792068 629169737 637208266 740017681 233737612 360967947 65092289 850275910 750464285 973281995 412635008 563651380 433764266 976419448 839068548 996508900 134654959 504897985 843231461 922210709 136704256 267875264 960539945 993779096 417589495 802760150 717672652 855030243 552274363 993466843 269374648 320023043 597059423 810338026 55151448 341431078 813002197 918491003 654805839 740233676 793873333 874527688 15354985 230169979 694876257 994379823 390079663 574545719 183008470 441591852 446500415 750607201 984876078 992643616 887284014 936340043 739454038 924618190 521687470 603998687 618897640 674715798 615314842 978762937 494817624 505743982 235578763 883985029 509842306 914343537 461963369 829661174 286552585 865891683 95343029 669324166 263841300 848888866 647684970 667134341 170606922 552274201 405444227 863439181 215311173 489944534 503224055 837830544 640135296 807413526 861204137 948401864 13287305 303807469 557426553 674997780 492549439 855832215 207095519 909026506 477094497 685830463 121180915 583287780 564480826 608641649 14549243 717143610 128580406 761576832 110637487 351355005 466862407 679816777 539378220 878765522 519938010 586849544 436108370 875578676 763094225 813140917 452667236 637002717 881430756 936625219 627096737 868225954 412147002 944080044 866898744 964814232 684325518 756835720 222036767 315121480 571409952 735362846 658982082 744233401 494588205 941478002 383822299 981978619 293789565 330080429 836103098 974112741 849958853 967178508 647216259 985198720 704267408 930731404 840170025 894612118 60879450 567934070 898982592 958109377 706774409 996784877 78325403 550877923 695897910 963873284 555850375 889554898 289696966 710312263 850003876 888328780 219311108 972208388 898997604 908811390 748695720 794383851 283116471 777180744 732524707 792224528 279389387 611985460 971532244 997112484 467395275 475741574 658738266 724277707 923256823 964151630 939190243 960644555 257677079 789438648 570699192 643679084 717123751 919030831 929280464 978219772 939849378 974945401 407093090 907797444 870488786 995944588 334309818 681772423 273013729 300364386 339096408 903996338 247699983 739514216 511389649 734928673 616324171 830872792 72538078 847032889 265243233 905006300 448227721 816698296 384180957 898470416 294373360 604825208 488825725 637609236 505459943 605829895 469057550 492313710 320705701 866008584 874081052 894150362 552060876 810744101 673425185 944371557 681463905 768408533 29383342 905780969 890793800 994806349 50004029 396981755 21839914 687784208 102729765 219879681 888491071 919473026 907517429 915183609 182807874 218566200 614966029 989155712 667352405 938207241 772106187 821691601 659824341 780206169 659002211 842606021 862280711 865835572 386541442 565151213 200575615 267178862 84710419 292668952 447315925 752101419 692218571 991354380 443533557 497298682 549442515 567168423 589509872 854498242 709325815 962949661 824918639 825286159 641488328 698128691 872742177 960373096 409181878 702123533 442485369 963165676 586532563 923294714 300216989 773836371 816547828 892231745 835711722 932444444 896733577 908021457 579248271 955875389 699703207 823021373 905835244 929650765 42934439 676579712 892451227 911001686 773829488 948995382 535444061 685357514 373959695 529600183 302579074 898811326 96144319 504638045 26492190 804713785 66397019 940609576 279141313 351202192 169392182 539261844 459260690 818195331 560943360 628457273 327772017 811885237 281112556 476921248 285285497 414074373 767159447 829899559 159351889 794402249 475504831 799628352 806534742 946989898 131989918 664758904 736263574 745709036 497280004 647091450 637023833 968299083 143941154 721851179 172396190 211097237 888487140 940994840 486444615 985343141 215189534 817345098 530800006 897552553 44072374 548989922 125799986 367225860 594012042 984999416 368713466 835230232 989751882 993437089 534337363 646965533 327959729 373207046 237672169 508090424 596811327 871221399 506339735 933434853 712913239 729385744 483854447 569769266 942620131 986005380 782393042 922517132 303753447 594563051 266042544 502812340 614882997 774838657 509997703 952037172 572360849 874717630 667841262 766577577 2625699 252980906 257180892 839948623 748428473 950558859 612053913 884399460 544442833 845238494 371141605 717834143 342474059 985009053 441568904 871063503 335795043 863192850 730241208 944127936 734806408 903579287 692932489 936001675 843372572 996592782 498221107 923990945 290380963 984483451 275853655 308323900 391289197 451115924 384132817 846013302 351234797 760900767 774983793 965302496 674170518 767587619 812368611 888653903 384126597 516855308 228540109 698506441 282828339 594181986 510950683 671062126 285153989 486342325 526491099 633958355 505226845 979675999 933878360 999347612 717040922 873564228 98118094 128094585 662063747 917604794 954855340 986435372 679377143 758523653 756511649 976592163 272387805 321390181 980044185 987432194 761590241 905216423 193368915 793058037 300457197 910320086 673143678 696004684 600774240 696179934 560421398 567990871 185801576 874844009 938984975 998981823 989862984 993958122 234266734 296948474 172473068 988729493 673270111 829196538 384584367 426363616 550256230 936053424 785342446 884225898 77362484 423864781 627636339 932862355 979491181 981285946 231089263 742141481 103666471 427286852 878199821 984670022 57037145 498473966 743193449 989122211 261619234 920583175 544435379 578357056 955618647 987947986 93809537 114210946 413109990 577560530 419481372 605192662 814324628 907638177 294013974 295194843 204075201 948002230 528275772 877702071 973240432 974122356 10480942 347948839 685543220 904181153 540817430 988985813 397755327 852130759 172093798 722261245 407937968 465283861 698812166 981289021 494971992 963933781 568471987 979083165 632657215 681156686 937661474 984028798 748124391 810789426 280489333 372299737 399892196 551814106 328223833 575075716 712573411 960836810 761341666 912295097 640939965 837327693 824502552 903977328 82606627 255360590 231207766 762647732 901441871 923635395 864076498 921621120 599795627 951307682 966227793 998093099 863917489 993177595 374314370 988674493 387753837 786742687 826944054 942050343 530214886 606827896 231614999 312326260 827210852 989330796 847789904 957936649 812984637 924519775 403013182 866945075 699107212 705946037 164955115 570408953 716258478 948471412 385818065 633638152 696412901 807321901 123608232 827919375 557362292 981844072 457037166 992995883 868785250 983057600 596744661 858765632 613067002 945395622 562260199 616516014 895306116 979767061 649282696 764382127 397716030 763617374 804616300 812532353 892391885 959791787 312952435 847064775 490297578 939753734 844915402 910519118 718496112 992002203 63755689 263202981 283333054 599404932 875066590 972006100 443425615 456887876 17091668 338420182 923019560 957101993 975053650 977700123 241297153 329490570 468451297 559204446 982625036 985348106 159640758 555145845 838444289 961613049 33302011 955042373 118112834 850489154 538925734 815943239 759880145 963726943 176062592 892740785 902077591 917605943 185538938 243884366 314076875 884851749 370823802 758055056 954520147 966768808 102052212 321335036 228517223 364481243 282960872 392154304 552201642 642832260 802325411 969425102 122912654 440166740 905618786 922680439 472205501 507952629 818867747 952331242 649237874 983425187 635959334 687159378 858270296 911670866 906804225 985386128 149465197 330268988 86397265 921907431 100616489 911733430 849370880 854506570 544557166 853856086 646972101 683625979 916845101 960211624 183494092 652371757 74025862 358274682 341611356 530792302 690930487 923368693 840881414 865368907 292472005 293503604 162804774 681810725 944484889 972441695 508360000 690981795 931029377 937680142 384222205 569894797 650032942 835015402 433628400 860619103 41021281 744107005 6427091 422569684 468631377 536468557 829436455 898088396 591369449 919072925 882148754 957166704 187665138 401310235 535929198 867641783 285764873 292956628 486570197 695883098 956301244 983342227 587279237 850295878 801750970 832014774 340921784 445733674 474807153 613771536 385120933 766633650 578820086 891863870 61723439 335741005 125793758 807064567 710321809 850956658 505450225 870367467 439171638 644967891 279273015 518530545 280476663 973964670 172784881 479845860 195001072 895914937 447970816 889463574 959309280 990138259 571013903 613026220 221844844 286975991 369781895 770041719 638562390 772509327 636394092 938833107 259531937 525601734 670860741 736279152 786169523 923251574 578321106 813266140 510983183 712434167 444621732 785138165 901378875 952784183 6756210 153327792 125450178 951047321 259839888 856025051 95757390 386814866 345910630 415121523 871132588 971001884 43290692 493060480 609780148 903647999 605224374 667328182 981702522 995681264 835252778 859023556 276254955 573100774 52579022 977809694 953807302 959783887 406108067 445311568 802514015 818274387 120586475 128062449 223619860 869363786 690545740 938698316 333548757 558515588 220491316 719446356 675636772 823388926 134793569 334913375 208140867 498925028 65156292 797989717 345069894 882015462 351751109 677100679 150167875 759811075 369674357 724554784 976946297 987425134 394515687 989213842 836511598 902420864 621648961 857403994 149537377 657301821 391433897 506186571 99378563 871007843 755472508 888331622 38833463 832802162 202253174 340916430 210719703 747465593 603852641 843249126 873372850 966150395 794519164 811430135 683425401 913353338 836583011 962204408 162861555 577456824 10887314 131709066 832194841 865510305 49540611 780664935 129185021 646753484 827977723 853115280 237806186 476532999 627143188 732571195 235629583 498894707 800897811 971548009 290848216 411396361 693541566 829389753 439499064 937849552 108723704 808639959 71459543 346856975 812550846 831695858 718738831 971597068 815598114 914296550 381940748 814046759 252091349 520449542 279149905 910011019 550592350 655591309 360837451 778885318 727430513 886755870 517339392 877866942 82742339 134216963 85217496 864318548 196040816 761314609 724772286 747016711 201173289 443228566 763229536 849017131 737636910 841150733 961486546 962753511 78748545 484147713 763485846 789051776 300015201 520497184 877957750 991251684 340760174 770669210 35931133 179122341 178779760 424842815 782176668 955968834 908478666 984164090 734244880 742066941 667711168 871072282 439554032 663796295 126869597 831306388 617493549 823927467 465110304 796205197 960537354 990985474 402453839 473742691 229928190 231272994 577554045 725193078 32890009 638560007 586028847 931582415 765430141 941748638 788843990 899051499 221228513 471891630 205876212 676955839 705196619 948937931 340366358 631932846 216257127 311094632 451957292 757288469 531148136 811282295 585469879 964148700 369416877 735012050 316218326 777766355 597160484 626439376 465101578 918453606 189475647 381796134 857392366 880684914 489990117 602959547 612048575 817001874 437219072 518000200 804525535 980009307 280471660 949916222 251620542 700997152 309782310 385490446 166892049 213868332 941586812 948855527 237995287 979832914 47993069 323139752 165730562 743350621 652678268 933234190 934982428 992200017 113744157 474748677 85362764 512467423 152822915 936751696 674959164 952669357 521652298 866496947 99302625 446453583 482606352 808382197 459544549 755499661 676068384 874039872 469173590 763639801 170799772 272599036 428317039 469632450 34176515 137270883 385379450 858517561 181290795 535465035 334416652 999234113 310126762 749684323 601345320 891881309 114940947 720757027 925364800 964547671 407182798 750884941 163290799 582332955 680088128 814868396 924617754 991730095 451910769 996343878 612376409 952327055 957971847 972082794 770227355 984782252 890427654 914784420 579167982 883254685 725355321 956391628 19462669 753038457 427816359 570768060 478791513 837648957 607805055 619200522 837738700 879627299 726371884 877152498 113085851 246342347 669856458 737757944 654005159 874363488 202845409 517330812 61983663 321420482 909203659 984122125 161233069 561957675 297567089 742100741 194989552 514366057 556286554 808556588 481812358 959252833 799935685 846269222 628495247 784237980 960088182 975566486 17220378 200135711 810081269 888422143 258043759 447309950 643107451 695843482 517568384 923548232 835701201 870691319 266477255 692996917 41411074 458500491 492643686 998933152 234838794 837419966 640643164 776109511 446958591 929495161 496344504 506814525 99251251 794807597 422160129 538316690 11068748 873264768 221080447 895006365 460514519 894566815 126866600 313828129 4228348 736465430 371542785 646942809 28014894 292535270 951184161 977805550 780220925 811915977 653825881 655558795 513551264 980403919 975216773 983896170 187636321 459744059 339371368 916744352 811215817 970708469 984540588 998423475 602971298 707475951 130959411 255814292 590099973 720754619 40945387 592366480 234911784 994376841 243948393 654791208 486277665 835044641 815037870 853561759 428836616 916058010 409773708 807898955 882535124 942102763 995324812 996675994 108616140 883046724 5776081 427072645 573502826 575200688 390481722 804026666 192839932 846149235 91232972 731090336 592933967 970325466 215437697 441319557 667397739 930665466 649636349 869332204 270938385 460691303 530323501 975131508 245182786 884585336 22059962 489394866 992210096 996626943 231983288 952398223 855041088 992381103 505215420 868263879 298303010 605520835 124761216 357302981 562481986 912736080 373881487 412132129 30520129 497186817 12769380 806615312 982952827 983022751 619066510 991188100 244426394 250569866 219749765 281430418 663862873 722879253 647876248 748607472 838055245 965183015 213918681 521328809 911888005 928748419 83669286 999403481 415913003 552846865 72750071 447601129 653759553 975467085 497788366 932363859 613668595 807692666 992869944 994397018 320391119 508350388 158650815 265803719 431460707 522745016 412941022 935745831 147427711 845158709 52631818 482498672 663722568 688272617 189287649 826671008 615349266 997265066 87417998 199772904 981684325 995170046 365973325 605143412 392530008 451249448 296506963 691552183 34990749 236479790 28859789 67256460 962834528 994972096 706287857 865175782 717361984 788361063 361133398 927698551 466289894 744941464 409836166 505873677 277591824 315282516 876887121 977686982 582385026 724004886 443205581 783444610 379953980 452272736 239485341 996264773 308201582 775156915 248510533 383847388 496655684 975576429 338527580 806911569 686834959 793155774 700056314 982909462 98140995 856531828 610773934 943096226 773602221 873469252 125378224 972706536 620068243 714816237 31628917 78643834 248599336 337817929 408314594 502538535 92820198 417107154 133800924 287391175 791245716 894422989 531267690 661182201 404176754 953284685 154939625 392802470 287302762 506778271 622092493 874419590 778690348 983058078 549780678 786256197 594641582 912085734 715554100 837346920 447208912 998904074 642285997 863231246 121859102 467547297 391086248 462402593 174862873 979597970 320344042 722985126 703322863 899277904 885095524 929949240 65401098 427686634 99875110 115800464 772626710 861435450 329686964 692232222 779350628 851159538 382931149 763826152 113320714 605979109 616085739 901291686 815640613 871224082 728203832 828359696 630576156 894572092 865442604 982974231 726748038 912746867 170643741 440131915 661663440 912795858 138621161 886207447 779142564 801622988 999812250 999883700 88727290 939728217 175378532 423282223 416447942 839595466 803830553 985005000 812997829 818378747 500009342 995915664 882685486 974991038 595539653 939648824 17271360 213420542 241281671 427119080 949169733 975001667 738964662 742166379 79743805 588831101 77776126 247795878 445648772 447097918 228033010 325847774 567704151 751706833 223188356 420923711 88980341 982221647 923445831 942321886 110265566 540267849 208040839 476554731 75204049 96897551 997349468 998402296 74422977 407341215 472705456 913599018 208212475 378892489 713503245 873239309 356711010 939852974 947401776 957043005 985531101 993746550 417793801 438073530 591334049 744990087 811185398 920026523 748376768 808443944 59640705 673164060 600084227 765993555 683193007 896541823 982867048 992461364 374737795 783543924 271023830 362505438 22608988 419623114 7455179 659036489 820440007 877252705 479336268 911441563 163318610 643328146 439665530 715129537 323729972 857107242 164918257 521941625 510682843 702848495 576837324 776977769 699711900 834599295 745054102 896542882 374978096 411238521 138732764 599337114 917709757 953762720 698781199 941341346 148250664 488526862 310865430 975610998 992015771 997162701 188075211 351382784 290742660 399612337 147956177 409461077 970607019 997919233 914245798 927958635 508780454 625238980 173853340 271766169 776849300 807933511 508887848 620768572 290658794 559050100 140800926 402608736 186018272 821202644 984778910 993078223 778753708 917077188 711261309 963800348 661116143 736292902 703788796 798052544 169758133 630491377 546845000 840056580 572265273 852067793 456811500 781068164 879897295 995476012 862400017 951871220 591725539 776415979 303033759 922349178 252580179 641565626 267833718 619995883 282062277 569645286 18600866 37982918 757953378 992451506 67096559 767753506 584787675 768716744 483386317 891811437 98194373 769316037 49088761 93103081 246014739 894922441 32328869 199288189 169567262 811764033 178348138 681172544 259234365 305755360 539431931 689446121 763967196 920249272 374640199 691624363 5114542 627082148 733762724 791055889 889575893 901051546 696836056 982459322 316056670 756064049 631611276 702022611 216161987 710183541 581433082 730863153 500215216 786726812 863074679 873097334 667571377 968178688 619573785 911481455 95455962 991297319 443443405 990526573 288876876 358092257 40785019 712624420 989394230 997463338 340292792 439085553 181362488 364327245 922779594 958466516 396638665 739288933 855638803 924146606 382547129 402897050 5249892 612968737 490626032 653187677 246123672 615706128 521856353 568271977 278689238 580174947 68789190 577198121 289241864 309395632 217735135 292500350 625176604 952279041 612944165 829725161 525970404 877101697 395213340 845885590 911310713 969000669 29069325 800848110 738886054 803462955 294292983 740005146 347642195 759403727 129804796 999841965 361680097 881804839 98438726 849481986 162426447 950822973 671201671 978809258 949391174 960723966 767907303 787682949 667671499 849719534 29550013 954779754 351352505 897972993 257835445 439702256 26352252 865452726 734512205 891273581 105131905 209470968 120757859 234498075 308584842 916318609 87128737 395700032 759648303 847978121 186993201 709592431 266234126 781199090 123981439 180604185 672445275 846373037 326985260 523237535 974830050 988887212 502555540 782779060 258488472 741340124 696095829 807634348 426960056 867758041 235707648 925776772 121266492 289787328 673645560 921261211 672048547 778545036 495618355 872031681 893968944 936744981 398986726 949025429 563355657 611666534 226960307 736398806 975411263 979235734 608288100 793945456 756276765 954974764 623521103 952211800 878122886 881404349 409656223 623840467 563054372 564174968 32493257 257078406 243061028 813334639 723592903 850440655 64866221 649311252 55628809 377815356 171221536 294919843 383971793 753821321 851075506 999170523 907959410 985460870 813932131 908380833 625924011 671943048 10779787 609468542 134876497 190835948 790427552 805268402 560026536 655878884 377707761 659647209 581043003 614426978 783707966 872063198 818693606 873510218 340802019 711980801 558554683 977515209 395104503 409160675 750415397 924240892 410112175 874212386 197399009 283776380 513912576 892058598 429223457 452896477 789175322 892534346 223191828 438580355 132808495 434156484 536648559 985708014 16588143 576806170 409725577 478054695 347444034 774004938 961836912 969089595 677466026 716230013 335912932 345315944 686233959 825981203 987179078 988775834 200498061 240570670 479878192 776063120 326553993 558359394 89988212 348274589 914439757 933923856 114651898 186935647 558966658 732021864 735264316 802813831 419113282 844015464 836073085 965118129 98129662 357303424 234809244 599493765 884504114 986201471 923418561 924767419 15165676 646032158 70294670 455880908 832077637 928305899 708399805 943903582 458295610 466793191 627295279 744873410 133055865 885560820 913517982 969926192 697485108 898447605 812835438 917608657 470263429 584848823 752477364 905539251 196667604 551234639 368961818 585482655 929783057 983039690 797509497 842563747 906711598 929347245 394842021 729958236 500418105 818879699 465121875 588422993 451538869 509562120 500305175 971298078 392910120 574511565 602858699 689649786 929079066 933910123 937778848 982482584 742999439 773702703 273709545 458509705 344010013 926503039 571140161 780579609 228787237 614355622 879165769 888241457 257041378 390343318 679639471 866142888 725364167 993372846 281002541 336022974 68336142 783684788 136339572 216284220 236992773 345227963 342116680 734956571 655987701 767795743 259254961 856732204 495254733 833774621 661069732 889134150 511498334 710385850 34635298 58086838 214106448 678286230 811342356 843964832 796891764 844741563 451099180 633892978 897085264 923179852 143918087 329953262 432821032 725764679 789495035 811025334 263857139 759161261 602837268 923364718 929277530 945405270 737333264 778355452 349148779 693422846 623929001 765757744 441425162 939722661 227417345 724267459 802849740 999515426 649737369 829749196 116569655 466852937 484624124 485892291 450339191 525709741 735739904 987820431 846944075 867242145 303602803 332680394 877469744 880446698 997954614 998131361 117973489 821368483 943075106 999670105 128760124 354470468 789988956 915559060 296693308 577913099 518664858 746547598 372361889 801722507 327598946 966519370 294129390 624175591 491622918 774123258 817039927 829495311 126625508 700418466 297962544 458804404 477903529 590152123 931700693 972660340 521656548 702149158 933620965 979705635 568406083 797089077 818860099 993156291 676285086 687842130 648518504 930806909 962400192 973048841 707256352 738731377 218920343 825664325 327664278 704182805 999465304 999770476 583620315 926493226 37044323 739058741 246265250 719044680 26807451 584178046 372788756 788113864 787247097 900345632 693441351 717666202 882934637 908668044 679818476 805823268 912183357 991388767 335531460 962041618 622829394 627614415 790495815 989273953 438292274 914920367 131195261 881171967 391618896 574442579 421926848 954685496 36700645 150256236 811847357 994589639 10928557 529883282 438358275 734365864 818776143 864384799 663603177 666439499 849309914 997494752 751413728 811494259 125671975 342363795 270818308 360947713 434755222 729049771 857676016 991343811 881924479 994969800 445199195 630309817 346880591 551017041 452656500 468170113 634821548 817541816 313419973 589393245 941821842 982437309 468587290 609671916 488809158 991658641 493203427 599573077 41106631 717916321 331920790 574300371 150094421 829557342 704304366 991144782 551532112 691608034 54048979 521010878 13359718 573396043 917057149 977196165 580015808 644880293 814826148 975190826 55885023 907426232 218414611 357347137 41010401 721938333 573838584 728926732 414606796 564150877 695973530 756054138 503544993 763649315 511292964 995643637 370640310 974576911 558677496 638786760 359293914 395057482 9449883 528902330 901319456 960042243 874931412 951164689 507657623 509165342 590850146 824904118 298152101 859127606 189373250 277481626 114473637 469907487 492210451 621096165 614263194 721923271 145754124 158590382 843122177 852905317 885304646 964146835 492886647 595561949 996180900 998518950 753102516 793972889 493001566 712238815 580396739 980968927 7621268 715030463 570987426 592771969 846784269 948987113 30555984 311941592 616241697 792988188 407918388 472326952 630207185 824423450 765178073 932482509 913285168 921643359 941410383 969875007 394240776 423027184 856719831 972792732 539593844 873633452 864139183 914124826 414454942 895420841 913460518 945679433 610721604 991010660 534662338 950691153 584072591 768171863 846790257 925023896 448726729 727525188 327524207 516045430 611685656 788826941 502256764 652867817 335805896 887755000 540827644 766809550 741044843 965545804 269507969 713434374 724167809 948417163 770137524 820997374 561728235 968253840 272826657 590186631 813061297 922204398 154444563 283797314 414133714 858556718 809522789 962320111 717637567 796539909 597334981 710159555 118697831 493959161 790089606 990059601 552857069 771552225 587033930 756392250 184169877 970375085 236450132 350703478 694563459 786400989 647727704 782828379 638419469 711105974 531082800 665764182 460578008 600870667 654297175 694189172 634632175 673679033 620969474 812392608 582566003 802374119 834323960 849412399 159031006 567995873 379459254 836916797 92316679 922700168 81140207 530213420 613509170 866639789 663401520 983644854 789502715 946801522 141733796 510252582 643518024 660337267 591199995 702617720 309357031 617301719 777689994 906551873 451412313 467551888 483364244 557955322 734325126 889571823 137658133 231868874 682439786 760036075 19725550 752398429 234988022 720642732 561191740 786385811 545509429 731589991 246430539 615666235 520681957 563471651 373526704 593450634 987944203 998754258 349724823 507419582 928627313 955459953 524693142 921707919 845856720 923787358 725652119 844538724 38244623 627672756 47995594 606434534 983978331 994719851 742341186 853928197 315590632 499469219 604605675 754134407 230724289 715945982 246204365 712590129 814242254 987511563 62162810 109510560 366926116 697660057 33486436 909812960 340132141 808357782 934024212 955916232 340080854 408573474 700743003 881552694 788120661 813812525 407232665 945240303 566962557 658682637 123739562 461485190 456209469 925027362 954760681 996673367 459974963 885203448 97365247 204579397 387152179 688861507 670083563 707813437 653502480 799787127 37203900 474332654 549284584 567558443 552541715 996456257 38383288 301295644 640053770 941064725 810125367 914862450 189530713 724675539 208969161 937240605 850706144 870914420 265372053 811682506 551324972 607479569 984730325 997356383 526211617 755657128 788653029 975079940 77991379 810209014 546613525 718168498 253625279 712876241 834334550 852552699 301471248 817765025 851814439 956798900 806400807 878541815 349010665 506245408 406292398 837298741 772711610 988377615 699661088 832263718 962566231 970120052 453300053 644097815 695317179 854822264 162895629 921631151 710539220 937660089 944869512 997583207 550506903 745246250 830043705 977726257 445908882 589551981 143808500 259866403 397811051 602233529 39644552 268250816 958343281 995760626 456574364 767400350 489811447 574126066 299882281 583801058 340972389 830233672 140760636 301191023 68940541 340535965 28329360 985234781 483557264 874784646 36874607 297945802 648422185 665613248 865325877 906591069 332879673 491776798 735663932 812814348 35362923 810076153 734959730 946559285 702550480 976589284 840113391 956326106 881175032 957796990 421576434 695948816 104567848 670348471 76103925 903682877 142644304 771495854 321771073 854053236 553907660 691274528 256890371 633741511 434297158 723344829 691390570 811028839 157846615 705408047 466507308 719534241 419699763 773106103 856016222 858007735 606832334 725682307 414219891 498879081 774212877 860723573 305241691 397361526 448786393 814032240 142619576 578160693 74139768 583125268 828697327 974967634 666403201 795785090 578059524 609220958 991467932 994418447 899526325 921914405 61364218 640625744 788920221 953343610 165252028 414598024 386478508 811396525 711395892 822517273 927300069 972053641 148014391 756818399 437798156 706964807 262405748 748136991 641865660 682569363 809460572 871084971 625422903 796857499 468517908 615272494 415866889 504306704 438002380 865536764 284881786 391724822 680665980 939230151 117240936 509666003 320688453 624820923 419797243 642615530 295131536 677317040 82426122 790580652 357847166 977809888 523277557 613309265 231702558 365722831 727482835 848426437 549099955 855180650 619340064 861338599 6245874 239250958 280237482 300656436 450310921 981039589 211313697 517274788 760104527 813519556 61790502 104586988 456171584 827519114 704975846 999686569 738404129 853914095 275835486 596131531 527429520 805813229 752380251 817684750 105389999 410755574 187594607 521553189 30258895 508398183 256243365 673126228 304883421 386757830 973352540 979137837 867690032 996129278 949080324 968151584 209167501 251702607 566397268 621188938 342881790 557667523 290397441 731179862 951102715 975935386 691216754 711287302 931810659 977550410 308275237 622753599 921479873 928069070 268279832 863703525 793078559 798460394 883829263 983052859 342534747 838907773 213831414 867082783 513494945 756792607 196409742 412956778 608226988 705019170 429888055 774253765 349473749 584555813 878744948 951051222 542322098 985571264 854464812 957349005 680193907 902688189 245056328 534562403 749957738 890660720 821535062 927166510 306440068 444881781 383355016 733809702 524969922 993574079 329224332 475240789 794327371 983778519 498661553 996627288 498220210 761500239 175483036 421111833 708834790 868330508 727973705 906579107 199227273 513713420 608678832 900980176 845391567 848821492 438449807 574668341 908786192 941102859 922438909 927484957 996260961 999708025 698585524 882795685 707453902 708035522 476772619 477477190 362729342 671800145 963336513 990193411 454468451 514560120 544043483 814318332 600729513 814484637 307127051 445104407 175393383 794449409 891601832 899115922 366165443 975036125 766834270 790998183 647237393 687452018 457081042 770115132 540384265 981965270 615051640 922544019 902203284 917135868 358954440 814411654 963730266 986945356 213007653 702424530 283382411 927222755 597589926 847697910 448685653 735426294 105887827 320408323 509567908 976053481 836419309 995973963 423365947 761857433 744883288 966835651 882556343 888229892 840994137 863750378 492819488 554299947 562106362 711475738 158448736 704314998 959617729 987785436 868239342 988112836 401323068 822719645 656713044 879858798 56277309 356076385 32622266 402298335 134842931 621213115 489709245 887562491 7048456 250151476 123235632 409109031 375422310 601633053 127018230 671897025 536218633 850280870 533042636 867606561 278346527 941860670 368185613 496998302 782478462 850705879 349061042 559370211 574271445 999322553 518316126 650457937 72830565 970804382 346315292 719936010 918330983 956904626 968154241 981882288 805392139 860716096 882323092 925836886 535249723 648599878 701603589 752831279 111658348 558782710 387172628 837746810 526830986 546130341 325532983 882094262 692623042 797106724 937669928 993176674 176323385 270477865 619843307 789787335 54168644 803172847 528229703 711244176 139714065 240801795 396439124 428430069 777654890 984396501 978293216 984937719 138690902 953333570 226140855 997475514 32864162 917677846 467035521 852431494 661603866 714622029 400426546 458687689 226447877 985329650 185933592 876484661 485752365 591995823 781023543 889168949 722235872 846621704 418199453 935808479 99361984 487402482 816173232 960248106 710641383 923937924 234429058 952572737 442164168 524540560 696540289 815095381 134999152 416175613 328823831 583530093 414889311 872552531 96216600 923294762 520815875 645213034 833335720 953094917 36082471 675476726 364281690 972319447 876308747 917350401 835579629 930209800 744473531 785805690 674220476 747265798 617208120 812586622 622250249 674780585 339422077 667775270 567578886 582695758 193345124 311836432 63886839 436466541 334085438 892058445 672334470 759939751 402969191 856249451 936595297 951524713 388302888 621751245 966782174 998342348 559252846 621643054 111194174 924576452 616736187 735571036 761151655 773525716 591912159 909698314 798685655 964231338 739214145 839276483 384753820 696602202 987568091 999516457 506597630 942327152 888862930 905268358 18181645 503811224 126425426 303021770 904327155 967641484 281377722 607082938 890584816 902303315 700010466 856385288 656131594 915185923 148578299 804320402 86269020 441507660 174426516 894862047 952795007 993059817 314522030 537091385 393964328 791707846 763234801 999386408 923820345 977394727 911932651 926814678 132382497 197849360 731450306 957408688 972792510 976187279 998041605 998584719 257608646 426864772 90107377 799021898 278924342 347315602 822149836 923368546 938738331 957842006 206597461 379094485 683350893 709943356 602189712 958065383 141158151 201375363 913814508 937027098 764554693 782918073 509512275 892208459 898788806 908916034 697168079 741392987 343467301 418948399 639496417 799058910 565217843 921208573 958125367 993885537 152961941 728122886 338427022 886265565 426331697 811227825 324101081 826414195 385763672 566677823 467527158 661032086 393469451 614192865 363023181 463913945 240851643 781471319 790699963 940884859 956218621 964430384 362075920 852679690 156796392 975831928 355857679 512353253 537008016 824223171 219414230 392327747 248341342 890548464 86300922 831273896 83336811 571131545 636101943 715028340 973391091 975318232 930924284 999648777 373010796 593503296 423101010 879383552 7171661 530936060 102666554 941698615 184877680 742411298 452783585 513760112 531218151 686610357 649859609 678736639 394666008 755285783 774641131 974755313 931939996 939393906 256537864 903324746 213537930 724889915 617838849 867538051 391959614 597994024 870728208 885234428 429560351 859602021 729489854 758911457 300935793 575280881 517770571 753989842 104060456 133186968 352285987 613155490 168886008 305940367 868075241 875147137 159840150 231437293 167079754 386181754 74946185 923477771 302515875 309593960 197726162 376102391 907785030 987983538 466361687 826933424 370793720 975602928 328382737 436619249 195763730 785084950 19508265 91614833 318599203 569471002 728297572 820207340 567347364 591805383 437593447 723827684 171011498 197731564 652041399 877160066 68661832 958731718 623886437 839575686 425446065 660913640 728053946 844514513 809897940 840384551 686720664 860235482 879851995 967532026 717171683 781080924 72074926 358325599 91393300 466003613 330455801 466524642 388291844 752908056 693514529 995794870 294243131 997610087 422480213 833688616 342364302 846542499 141418416 991382023 80338493 653521835 157238079 617802673 667068650 729803471 432074047 550339428 162527092 325373119 354351946 405930904 515481587 713674064 362053953 786441669 172383798 535333129 315287543 721605064 645843345 955932807 395612174 846911950 604281492 896322331 28334982 851466937 377203177 993015831 42668135 702987068 296421259 694369183 352570083 543338393 790251699 890157044 660027223 704540172 885815994 979065589 430843224 887181320 369668817 424896411 675654527 799231908 383934212 903418134 105313711 400315741 550342496 918869013 176635657 969362708 864419760 900882484 338113572 524119458 487802805 873230188 495808806 508663411 37381173 214524235 781858776 844567481 563997271 787496061 98433634 417762758 334158423 807461709 129053233 987985770 286683534 777520342 22844561 568453335 65159033 133271685 403777444 465703558 399836697 689471443 636070805 970859217 453791870 975361771 645639073 749529027 213473381 691950000 825032714 860221954 279052179 409109531 286253596 792695922 775314363 977375093 495417709 539633767 405554519 410172759 251078448 926043588 523750865 784376465 101413347 377178575 556191050 800624519 771167436 786848195 18971406 837354752 478408029 506701600 535900973 703519608 468113124 872831371 135419140 606472248 292236538 825368700 288888203 876959069 176643622 770722170 601745976 627150137 640880730 882650763 303171028 329390157 834004557 912666236 246929965 682766344 176824251 670060934 955352783 965887950 77959660 792858198 456159688 942800849 258812933 456576097 940360217 988513665 90221739 657221675 22909449 806534474 102749645 231438938 910990672 950700190 45340682 681783823 894340927 923696788 666628249 817506430 57402327 327292855 856096249 947489534 580548239 990099925 943996222 984596193 932333536 967146057 996178840 996583401 112538829 657656605 767624980 786526551 12745296 461958712 312457960 803075695 160520345 385823130 316281647 389615215 988209247 991847668 299032994 978671611 981301659 996911565 704345585 786281114 898388614 954429061 325877693 773587594 415247852 662458192 484483647 549497076 900958331 974438084 167553228 793432777 392752824 628488777 47125744 963049145 15942796 869160994 717428507 861995171 437907908 552313444 477043008 750812097 570178923 674415067 469603838 732006503 895885955 927506713 74146051 468313286 736773434 994729133 421530715 959206341 651198115 878941598 779544236 959678046 898619177 967242538 240136085 362376956 657112630 781395760 543300540 985780625 68388344 672606673 232200060 528348130 160005273 502954379 765183571 996419249 500031578 964805060 332552628 660628676 334829207 973012641 821041395 913778516 944150460 951716492 378693565 421037821 172246908 796976238 581012040 655457073 711530613 768261859 685575575 920635016 670698774 690604853 610629110 861651517 174103530 249835645 839069144 850725205 130502356 483364688 902623352 918278902 573500057 695293536 392445757 993294799 307416164 735390776 165711670 426733418 184274593 791920811 988859225 989844490 285788919 589059408 216447248 784529320 962323789 997273864 747611177 822413260 7907140 278227554 654299297 976506538 492211009 746247899 72761065 857007125 742458271 896325634 716492112 905332804 428855090 691144473 263063537 642154438 964042388 972004855 595388108 793016420 968669484 977026678 480237370 827738574 524175237 713411857 960533295 988683279 819329462 851270132 603816879 920310474 666803044 929857513 693531624 853755346 868210792 997894153 369710106 971545349 21639323 420552209 286709587 905061904 865187683 924141707 33505757 327557622 662588978 878994676 121621037 723626381 647391877 891662598 537443329 928715651 983972708 998927871 176196986 538813678 20113970 368308511 638875336 730794362 83613576 356005637 189236271 576813639 849892225 930046960 730180991 939353688 51058755 947058110 539817939 729435241 813900462 944126707 621236551 913432674 924118082 974655232 940921898 951484018 166273961 508890775 594081521 939186875 637884020 669406523 893543290 965160504 491277973 680896519 361601384 980898124 703201727 907082772 943361912 996008744 601502072 659187791 194511130 229182969 549014498 684308183 384859966 764767161 148598577 807410126 403504911 525197622 433067354 702748899 9596148 496315902 213686615 821111048 811725422 866046536 922769991 984519764 204696769 417409806 614931749 765312051 37799306 512460525 815905916 896336248 374276974 970080830 233004558 666819946 950210246 995264687 294819003 303256565 666290975 871216067 183722032 777068801 315640245 738046781 449437996 829651348 670561736 873370722 627656914 739639751 627944226 814765631 984493040 997014909 282362102 352326775 861549159 866791090 841462564 843281501 418237010 599647977 332676 901871643 440277983 721265272 612114088 929174989 45416399 586148203 890453320 985024758 793774655 968899829 34122227 774649218 741694366 904889496 913386205 955655788 79960213 783120859 565774224 656738902 61646283 566732977 258820213 624091728 41056032 530556994 943988925 981866740 553173890 630102440 852594619 898987552 508430080 738463602 365903532 543888039 640090874 899523337 676800073 946646083 390970645 540851494 802117407 854666099 933323439 966283769 667518350 754809486 121556905 637807811 22025133 74803052 259378102 713792816 251230179 353243314 278931931 454180536 734005857 750592831 734590515 833694911 929270195 934599837 277045536 621652940 279809420 957599316 5503266 186037277 967053038 997986709 365495734 515813223 217463899 986950280 295789108 576176475 391285276 916474791 158213513 810008874 335107051 795166185 407928754 560123727 739809184 811710050 299179256 935747228 842803864 970169543 256513393 641867958 237561697 821393996 542198996 763373554 77928630 134104760 233677883 441917540 875750860 939574778 392287950 674394362 859904551 965696164 471704371 625984383 764501623 825583802 788140193 835143627 933262549 946297102 538059935 653795577 665038018 721809796 185070271 798595742 50863887 586156334 105942321 640698980 998408399 998624344 319318943 904231049 574134824 791826566 557583880 604303808 66229142 237430229 262887913 677666625 550821403 677143767 979594608 991508863 992946884 998353433 725035139 998337289 458667648 897007251 117039288 375644728 216491553 866900436 851633091 902562166 133593807 645801277 10888019 326982415 57974530 950914863 396538660 995414332 893347218 984654552 520106193 613039030 264464762 679035504 971388263 982211504 837873838 973407753 970746962 983493382 483779985 853730182 487433853 611296848 349516196 976359973 450270712 878167999 444669850 601530624 994446042 998251358 828954923 892820008 492931051 696661410 298202075 482963468 929985536 999389058 994338567 995263528 417445672 500921679 176502311 428112634 396618477 827232128 660626426 790138254 789235017 794101648 696365913 699556633 961590521 997926904 492521932 762196115 334854080 705410331 177028961 733016719 459111533 551690379 213295973 560184157 61834991 198548096 956571269 965348132 162696070 371810862 712962190 950836720 918019546 966940897 896111311 955678230 748235108 906906819 637935777 930858028 65623923 306374733 194178008 577190590 825007987 989206327 893772366 934156178 786488303 968464063 841687078 978524654 497058461 666411810 476912646 568998652 177361534 317614247 293777937 827622026 491951802 544279615 374085999 955903799 320721987 575438527 377309060 719797535 40607524 536089366 141554216 397452726 847389433 983568048 954877102 969617343 620913928 960994204 412759158 721034371 16356390 535383435 726936261 822591774 162450938 560720701 408660671 440634564 362795380 466622697 214639874 356234384 310990525 517912444 843658860 968547295 84996258 620810485 512678474 902446033 772676280 860729978 250759208 505761208 356183890 522372967 931186347 981116029 236407128 867537796 183333528 664800707 899985486 919321922 230019194 531451647 951883821 959070524 581098314 840956087 787056836 929810114 140734063 275413209 465706488 674823779 948448742 987992585 486111934 826976411 120390220 708050624 287647199 310793285 941085287 954825577 622723337 734459412 900832800 920554084 111537216 939851974 531874850 977102501 115258086 888232836 569455279 657046400 680438447 958220299 265256595 508968457 535302656 619080879 251695380 786866721 806321403 886992402 384603884 474614373 327996968 363181149 63179020 704240451 223900003 817215764 659211708 694206530 3994433 98410960 896480499 979809682 504517619 549273283 299429306 990659080 161591756 992615261 306523652 471137114 404458259 941842562 387242802 709389874 109909120 334617745 769524969 960245916 510430573 634161311 544792763 675837712 873880912 983685880 643132537 958379360 534712820 809195412 878968315 955444859 115969890 128072469 897384992 974992261 369453510 897175158 813741859 887417476 954459391 982166996 482221227 501796721 487428369 798985991 451737798 787973363 267364022 299923156 365020831 372840643 15720430 179815780 483506355 712377359 641165091 806223242 759227980 890097421 136575766 550405742 975210846 975573897 73974380 289764670 708531020 946972040 837843219 861688729 679336941 855672737 299514552 813612711 42094188 436395973 972198286 984723744 736083795 824382838 143306318 714761633 485727071 505750446 62118507 580541776 629522908 840558115 224587869 485568075 696448135 698509460 694903767 887514603 827944603 979526831 823793252 831874441 735387582 900637660 318745829 607851405 368705530 872230142 822145940 997397861 503754383 891764314 896686849 930206712 328398112 895260630 486290002 994017775 389554550 918472563 985707617 995528539 248383966 663154411 549607692 593399596 606785445 770141844 308874423 493244219 755968796 759464271 985917150 990445716 123596593 243433577 174257556 304791751 200665278 812231128 862735204 900699321 630440619 749574943 39417928 644528185 232987731 697278198 846184753 899348642 202456580 228650788 43880925 464027663 823367264 913999894 93628466 906463633 527431670 928409229 8340026 215271473 461124866 475702687 27669852 140765159 426716177 670259160 663269163 782669201 935674793 973749972 56171587 280622523 734615876 840021565 636589193 733821332 605626350 618546667 271114183 676307971 633272002 699146184 768257275 920415443 585238186 727666110 613030397 666209708 216940882 468821108 482412912 544295537 901943024 958501583 891183517 991600082 632169708 676725012 544089940 919815957 668250497 875095969 168651904 596776802 760386245 873957841 453307212 459064906 153140919 196879822 375457561 533895349 931965245 979825401 140225105 862051661 287035946 906845393 849481477 922993241 668165493 702498460 909386103 946147074 512501957 819006034 283051286 356910497 375792396 378554403 876738186 944370368 786084997 855406988 832765152 895209718 505025046 920049134 268665491 924280239 147298352 333551748 613472612 759296585 101730459 847570165 363718222 401547400 208077882 950930943 687146856 843254634 584885594 943756474 325582203 983000397 54203339 481391697 116353931 210046164 863692545 950786494 402460080 807076706 719225403 877024036 733759977 989650126 249384841 565858677 254480257 424841659 775805819 825330132 144991569 914756890 422058153 434857029 826073921 884404454 295185305 366427249 87258418 463035988 605504490 727513275 209733554 843220906 786947291 853557195 334638708 624168560 749045220 986139552 623540280 715391703 922446341 940759656 789086571 837733304 248793078 438798678 974860784 990872321 993124236 998112895 728173473 735366591 868442181 937369206 216892272 891229715 525702710 749635511 145133804 869227167 261369525 996853620 657522310 704199215 437541060 825711641 149425573 195729909 394567835 978291257 604903931 733471645 86885005 140021441 876966607 922399152 916027653 998021914 25960521 520154983 358844785 474320389 285387753 406378960 303935493 407298715 292817870 887128279 212608558 777596621 931771183 964173278 45397261 539256603 750329349 916959864 88536434 988465308 20183525 922048735 408613987 730174585 747696595 907524028 35271211 332072057 807074406 934629998 595175968 747203109 196100684 648444154 765100759 974045972 332565272 595811167 848660330 851493948 752845232 933502079 345976629 607498586 231160831 792281997 169420055 603693662 46248666 445854634 27315855 880579912 806809149 915950383 199560851 538359068 460449429 876143149 407647540 525509119 574972491 892813782 260041669 341164151 929243456 942039160 552263379 573062402 809820911 953665675 210161729 735752242 974635460 996652978 658054335 836284720 464334852 657997088 608455190 954090676 834753293 883991297 741213154 962574572 405694958 911479478 664008241 774416274 138222721 971557720 601736795 762100170 258693752 532364085 737262613 996106190 50304226 868929287 777037248 786476668 664785551 759820766 446438433 640210421 95952938 939030554 822292989 876678530 110608437 402162932 755287161 805074899 809719104 837276156 183139493 792040356 847820143 914476645 895978113 984369063 396082157 802494585 837913313 915080170 411045542 888136350 811217169 844616898 408848848 414726227 960978557 970122425 873571236 981079625 440561011 819108983 815120707 906683790 464060424 479302524 685524720 705628632 15313080 747360928 855829098 985716921 300183635 427026974 356899562 920981515 247173637 441128537 464244705 648371499 936412873 969970205 956039772 996487180 178695975 656780694 813586871 959816237 743611635 878500841 28285686 961241626 542247138 842151829 579861567 792241835 192973076 464372126 947958850 992439588 38545671 535415868 553765531 815089813 212028659 388381788 87471500 675880702 402084001 988873417 581399438 800794360 946427720 972910746 870407508 994835653 591096113 965597605 806664775 854826350 16860055 871563434 903364467 985064665 996122942 998400932 137458142 412501851 485385693 654901584 918361986 992158948 864791326 987545030 717105413 835326895 29789268 339715322 998126953 999052906 607224419 747280464 904280731 950419533 716682995 872287719 115670467 514425451 883032640 977896485 251804988 491186997 148130738 225988926 293095170 785502237 606549327 987896032 718652351 947939179 615652156 868874577 708938306 969078487 575142324 637801859 40283725 317595768 249122590 642052580 936657855 969870032 192966527 439857270 306061682 879988564 964131768 988156148 842522822 998267245 846217954 958458396 297620590 814119139 455232990 773403156 94195363 159660699 863097304 878099822 555281790 957355368 502320948 765319866 12135013 249197006 334824554 978546111 461982694 556499410 98520441 309474164 791553314 975109664 118261362 593511412 196917340 394196306 585655309 842131319 265392845 454090978 667426849 990864779 912087677 965429730 238591604 793935426 510056295 515739870 596689324 967208141 815956776 887105193 904708666 952003981 300051302 732706407 563511648 902921848 383982893 557353145 539457555 978746622 329630044 369080958 113817543 135346146 642937517 845666711 982040968 987781865 156891413 523759134 858283271 870878432 449041921 947161862 215357572 222118580 451177416 676604840 865168884 969468691 504567830 913806579 595580366 715979366 526967208 612420081 269726408 791226715 867184751 884466606 798715759 977416348 277769919 975774011 520689308 782029373 881984307 989184941 713752115 883455729 842755294 965216012 700377973 732444725 332945003 446886094 445925064 806392293 31524546 554092390 252862616 802381184 675788189 965342848 318096326 342665404 422742392 559290038 700320128 763396287 435688081 591244920 59675274 719192438 501540945 993569942 850975241 884952757 70467801 916817633 93702361 805103970 697733675 782174776 86259500 227031472 687033749 788618792 931902804 959335671 752248183 836255989 675455464 880110613 301465140 522796249 64065585 616829612 881037019 902489545 440543180 540943132 795747610 826720340 145698256 762950310 448176765 947744776 520519285 844972211 283292785 668390560 770565560 925485731 737099587 939695876 118766709 417244812 186693210 827939602 544332940 651857704 105624919 823450627 405886021 676691719 287445978 560015888 360438919 484095715 827811232 881429010 348472196 443590638 495157618 809894437 852595739 878466997 81114867 662352652 752438480 820483446 973947282 994541081 606049967 607021437 805873687 913160758 360766263 444836834 914441662 926494413 820030474 870379777 23136458 125925559 722965800 787718939 429215225 778976782 740887960 982445493 328999544 642480623 62299590 418479376 4590731 27390097 274497574 859137683 277778432 677651290 728857714 923915761 180090146 190839321 610527191 687835802 517554968 948360770 532479561 939250558 102270488 514315002 154182639 406753296 480691010 580564208 897908510 902203079 348422938 621080765 404392634 556141085 408678956 903983667 630092294 717145661 842583969 931614123 687341068 729430450 438677622 645828286 121336812 741176588 292060022 819960701 199848549 601637432 737086805 796364983 927619065 999561493 149963614 287042771 928785658 954208676 391363383 754855845 625190002 792454161 506972738 644673554 186929118 689438020 295428451 742469396 810391306 848144526 704668601 929253157 576714055 586719573 834073133 951380918 605920885 820369536 195819018 988508095 394219752 960224543 50577274 778808802 493976094 777754024 89677230 529485151 321513908 884342949 620044133 783351000 393678935 699421088 27914529 297149031 147739828 925450960 687202681 721188725 173737859 566924052 347590037 995837530 404559533 718765245 808557295 921301251 348692127 948172871 798872160 942050898 613025366 902813588 304407983 417704169 455650651 829372302 161749449 433720665 383440222 529033518 920520895 926419398 835340743 999459666 489126555 987025165 373336558 651759698 771822967 962930483 603525505 782445588 937350264 981860560 285666120 836815455 761581039 792950976 854421623 940235722 273163086 278327503 444475666 633022820 798011424 993113877 342602023 544100018 433278456 914891025 306482407 712017359 393512118 480099252 226381156 689965252 47300154 282854382 599307317 830361069 124094992 897967829 944285796 996916924 330818266 378288622 251601237 766503849 894501541 956168071 988131739 998398101 184957615 774565165 438775014 772614052 275218387 393350627 232965571 545470287 260407850 286180546 74787742 93969584 684003400 802300974 332017047 730563123 466693521 581974547 681787515 977681807 166383085 804839396 735783708 956252566 796025055 877591827 21816462 861816663 417506491 625723889 775262470 851845855 156188933 456214155 911186004 947375647 312122961 387669797 548679584 846438345 210745774 618580653 703157375 958359039 456325071 559854862 517983405 826120224 185418290 544306487 419143050 637696170 812199625 991640670 282298681 937891004 655502209 818667473 574228708 928554850 642145719 930105893 798463083 891825033 915894940 974935741 308322405 593188819 574190072 899673962 856777046 951467185 413502075 649577408 622469799 944523286 981499507 984700676 293542151 717722717 732651411 983956054 375099895 703099298 586464173 931672443 803551661 854205860 831959024 890429436 542938331 675706127 68870839 636545528 199054818 251692031 385479435 874179075 366028411 537354071 469669411 974434840 75609773 449985259 761723065 954028544 75281912 498191316 592970044 723571182 833872708 927453440 414722379 882892462 163900240 397139598 967294126 975880045 609582983 671265526 26384096 493591605 240061018 732217558 285215724 462972594 605562048 627899640 373652994 778334911 698409606 993662253 659085804 759758930 937561531 963719369 138207075 474446044 307163435 846544552 761715248 936870648 856922338 922051872 440838980 710929042 711888549 777455478 136667622 550943017 420631465 971492158 885528546 998351750 879983303 907629894 113983066 273417055 19269847 498840831 28702316 470168738 940754390 975207958 180494206 795087346 717086887 799029589 563660840 639085024 720118764 765063929 746045454 810005849 481812674 722249993 757954319 990606751 766844378 865006000 462005468 563371755 32384064 348195704 440240613 490936950 398477808 542631775 102762698 576427771 42092777 541350002 667478481 753273348 965444913 992889550 233029386 384475530 687180618 956353930 556054426 742680601 751715872 896915679 835578449 958732990 381675766 981409150 434867803 697932048 918457614 926283213 903599122 930166458 713237019 988544236 73393674 894059065 556618509 865040099 416102080 798957982 875321904 897302320 877810828 946045801 931061084 990956164 335815599 933732924 216808654 901911075 334691698 510801985 912527019 953582129 429046459 760278354 757368027 782248147 922984990 951277042 430977610 981549038 573294142 578520909 557955680 775498269 979000845 984034672 502967993 536036928 761227374 893634510 991235512 991785482 476220625 933150203 301106462 351963228 106026633 208895388 102074912 108738637 456464084 605888188 780759630 972804003 575738018 671322481 830107860 871478170 236997721 592584861 166861801 439802684 994005413 998779199 174715036 902167748 135852398 892776870 762146414 893748221 952965255 963532520 465068872 790845029 593423108 665037460 874496268 883191713 315491281 547548589 445230149 932289864 396064255 928866163 172465944 178395406 909655803 939185535 434609557 641929815 587773817 627369724 507648486 852833738 756931329 826596887 506913122 637815866 683245412 847262240 347525434 781698591 729695173 801639470 638002278 849307195 914547136 972616403 422861973 532852478 220094079 661343623 206687722 970879798 190216303 196290143 836057321 856446173 985822318 994389789 611261751 915451127 346650028 906064602 311395825 472680912 315169386 404423966 273780412 403621772 522863085 876039107 356190794 472269553 354601410 879467408 471484523 553762559 583871251 806276278 685846151 905258477 756401304 849940485 325995488 802775788 132701887 739282155 719922560 956138880 339650630 721837612 69634831 411448801 44023725 852511131 575516840 962552445 753845585 962980290 252706980 710676212 556180634 876968999 485430249 993179678 717115071 790478051 560486588 715488284 780675472 948042228 452336770 694486738 767425229 906109822 749776756 933171881 31449101 133859290 141762400 359486949 445575081 774397839 645694550 710112015 762535283 892825670 645802945 867063066 492752512 786342738 944340339 983596224 16347469 883671014 345647246 513117465 455982736 890094394 817774265 885136398 492078279 788026543 662785149 843411856 715157906 961548841 432915458 525894550 137180023 969365363 781114310 884522262 533182391 859825919 965672082 977393363 821864571 913246216 988803888 991131432 996019123 996850339 726490438 958330740 706193685 937597684 791553334 954693757 526412938 778187284 644151601 922841860 516589803 897230964 652596448 745188326 456984017 813228119 515119988 522510993 668966271 856909540 249669053 688371358 260966581 435946698 572968618 670474161 489037570 878256112 444045256 846985498 273933298 346789972 253451683 793359307 788521896 877660368 146318756 211495043 839319774 995078683 81963070 847367223 965482529 973771157 660127337 754199640 464812332 904144691 753170448 961696257 646652265 741585688 401573747 951426409 709451111 996970380 883036643 972782098 741023035 951477993 106960970 984132895 157127410 739984715 406847920 983808818 96368910 965185752 570136906 933283172 887224507 931225430 633566934 857957972 1544232 738625871 471997261 824928192 875385265 991811159 965360625 988560732 485143371 636636916 321566741 437902290 630108977 655150008 923703516 993955539 405097011 940805189 308480249 893158870 253308621 617036200 978191183 989033407 673255308 800330431 260764020 628348442 149429528 831388106 604800745 634503593 259116196 482200803 887970420 897644716 814133777 906044779 214846457 360607412 819856298 839737899 440402891 452911270 622024194 862397137 378620929 645879373 189658982 997263741 959968806 978274330 303238922 979416016 346081519 394138212 718003931 911683614 935055611 967457995 88411192 387802207 154415121 361792195 411272547 634057180 180713634 556421874 584660209 640848386 798753194 808585117 484560217 768222893 204921489 781730439 451335277 823336386 181667371 941927315 512004013 713420869 327273009 468738627 898617770 990915381 127171620 469513689 274624309 576741671 886918739 956488377 388707435 970608621 977142075 980754706 420196696 722021383 147195489 641212224 711261836 901946051 37190090 370058379 151754642 390772753 281531106 299279449 57174661 255317864 187407311 942660959 541038410 674657129 574053568 850700392 10316356 860255817 730955198 870114816 187332606 937561849 544914585 689869120 533485592 785315972 660473240 746965715 497989552 899183553 817149926 975840739 558210830 578286930 234045218 565667180 954593825 996984352 418952753 528391632 333902028 590836443 328223892 393647838 469759762 751688898 584320265 914800819 867503149 990312721 793300593 897818480 216081862 488360469 790244636 944677492 910139743 980438585 709949926 821952380 766367744 933871571 518509009 846848014 63893308 545193948 309062629 449034818 309050426 567840741 93094346 836041791 530607799 744598075 264520737 799590170 475762032 885241595 924933964 952491200 50700880 415138404 24347745 68338205 833379585 990370597 958748671 980040267 414550516 681866478 527247464 896842366 245970224 741570639 313808507 914908184 846514398 968065051 452093501 615215791 601998527 776758732 223091533 750593813 987698290 991683033 19943636 24038882 273257185 360991243 909975488 954295759 504574056 806825195 966654182 980528806 588630505 854457187 840019529 996786877 659758478 916826421 198986466 697077247 667153905 980680987 258040370 281970394 806141639 882753463 986404791 996451905 199613338 541015319 876101574 958070893 376139803 859837118 870432903 946001110 40295456 908465112 380335203 421487616 268358528 713943349 583437823 716178732 511607408 578257007 58003997 831082722 540723892 608875622 578193783 619705990 622637398 779571106 589844867 742923959 876069597 943830144 63487631 529764609 571781239 628252305 220023499 740214485 422314793 699570681 796612978 968811619 406886258 619646577 554437860 887464469 364083505 924857545 601463015 860301022 36308465 392048476 493072800 803931746 971463824 971562556 301379154 821210061 72271004 960651856 265478083 501197565 288542836 795890879 516035124 869849041 288348654 732676631 535265612 717105379 832522636 866922059 816916293 857821465 142170245 438304154 829697179 838859762 413174512 600295950 227489294 428206318 806751138 850839239 103423938 622350219 753785488 873938469 744389258 874359179 545169419 701163992 632771411 750366087 687943562 912300017 733499279 911686348 407320992 727779437 255651431 941379090 428999902 615629148 459173161 719755483 119106641 339515425 438711504 841135278 888887176 987902485 547474748 997040887 2132449 233178037 576344779 624903346 127230138 202282970 375554456 824058541 393852785 446394221 698590472 971662929 965230093 970177468 327369236 494302820 397067061 603467551 383788658 903514638 880417068 956151557 876769143 972965701 639982336 905698904 125503732 315897584 351260721 867668399 974730314 986845374 570085199 965356511 841802477 965620040 326868754 933995844 31915287 650772472 788115533 979332854 938020974 998873661 172606682 173743120 756438449 789165828 722538093 780016024 455534434 824570995 87190883 550130788 74129180 206743339 259385345 754946941 837623476 941834587 85577632 666198122 195166308 901043180 700774154 832309426 229307512 438303520 768773407 891015227 499642737 615227824 700726080 706585478 956084204 967063915 483543939 959727762 274400139 706804327 747104305 931877077 299094135 736940959 590968003 875541695 457560506 635023776 704589447 847954846 348726039 506495337 238207925 982540636 282575969 898827008 897877778 974092869 390196619 493571520 33230055 526428500 149525012 527228852 566566495 696939236 970672568 973354790 138249351 781741123 413852412 859346810 452503694 512997499 579478009 692798044 491175543 844205765 527630193 647053414 869818634 890992014 837254997 998782748 117697679 270209322 40312559 442677680 931633648 973666739 117348338 900308838 343078456 485556709 856883260 995240147 787985008 890808306 38656858 785815979 815573156 928386722 471575565 895498979 890232121 957921889 476820824 970432302 764155688 881569812 534439307 864955325 270285095 489123648 774347769 995937647 792539785 906931564 207223771 369947775 176431930 192309355 764657396 916738171 578755557 793582820 682499361 939938277 692899313 726394738 123190964 789663905 496981870 827405420 100016821 869982979 341118530 591404779 170237493 976880417 289257085 714602078 546063743 706452053 33734612 723418317 9001630 839400764 945271824 951053133 43357251 863137599 28484844 970401163 663030290 697676594 169199994 176510856 462754895 498800852 175705038 356756855 832077160 954779163 442334839 949925837 575463264 631821160 22958958 648472067 527302834 546174250 884969119 987151406 874424257 875995645 710385798 799267939 589282205 864832339 517718797 908588929 9193918 29906068 195706945 718531260 187665520 893261130 925321220 970549555 546465981 598883654 761731835 875331451 822356000 975549465 112099832 206638489 644636443 876201867 45399177 833988265 697956944 845109356 599373875 903216936 77231345 822710841 289409777 941100745 121017869 257413038 280140618 676970683 121616301 856467939 364609734 468779975 834430023 917522508 668435883 961686506 604621614 756590959 777843940 875180987 31089332 587087570 686916734 908741570 268258201 417882356 364110127 817560514 107892378 304097827 210765257 251164923 557119761 754940104 317011847 814264132 798838511 919943958 774794815 798351385 899541459 925470125 784827181 818138353 872400071 927127085 966596097 970021316 557512397 997979858 314499643 603852631 201494471 698959651 641790000 791553876 200261946 901224906 913201412 970752045 102425790 257763504 908157515 936581739 739701527 742002460 586245306 608109008 144840444 623220501 300103138 789536860 538198832 765395023 818116769 916735970 779817765 897364347 574464043 797210280 462867619 701527984 523061007 865382708 123702173 642603452 179556170 432919394 150544433 166852204 417715619 695083929 534253324 816852790 918967255 990092268 795703243 896293767 985281902 994963472 9463282 301147115 472487183 875836713 371194237 892029196 861530545 910662442 25744241 675940016 734126371 811937492 191868045 224951275 521846144 654421264 642463372 642517358 271164184 514981364 204803975 630222126 535932420 990970633 607043147 814805017 606017976 889733824 222088527 691639440 510753847 726494555 863086145 894442337 912916214 951388380 355194157 756859223 940205316 947446994 32757051 448687856 122760172 327447774 282039938 302161711 860377684 972726540 482287044 688503481 59048640 310670657 719508534 736043605 595909671 656700322 266942594 453464848 116768546 256518178 337767712 371780654 643666235 750352456 179315286 988125060 49032027 473011167 827725833 986654839 357311067 853991443 887314699 984624162 896662429 907794536 666008147 675098426 307644728 561329066 441847075 570531540 511891853 869502302 57362314 633883243 422301776 699320642 170807698 704163122 221407378 599918047 427025707 770797041 186856648 584470347 361277712 739510790 331211372 815187473 807219557 824990041 670302035 911225073 584255523 588009950 819596545 833305355 730592659 874058858 810047179 935919129 138056329 763047815 166948207 874629535 106262648 752031643 452052229 602784713 135979536 465740835 674226405 828713017 726127164 873765044 665945417 687034604 853295988 884456885 840656776 991671195 733430804 956941038 925730962 951273950 233013489 562381705 395035987 452925481 982716598 999938785 229474533 466712248 761154063 855573455 814741767 820575903 743803142 972875326 385878078 817841232 825022483 993154715 642651461 810064532 592236032 895611778 473069826 920531609 689508223 837197836 168140481 436205487 272064367 372417720 218613321 681642939 236236929 423152656 518441267 782452137 448817534 782023113 545498242 845871144 697066657 956256650 804048524 831170912 553843240 842422568 234642524 273784114 954402859 956690934 353599317 560444711 190979418 528317395 367830547 412713416 896370936 938800624 104535238 558673608 44116478 620556307 262371664 505529386 739148966 932850010 774119004 959873309 156187561 982608500 373656117 563062096 89892604 983960060 154778975 991054624 635364760 961764601 202633445 609413495 647450679 805423683 614821762 846072275 76157775 325698711 492308185 494631847 475233699 852651250 505345841 568574224 214560863 660964637 666790563 936735865 383587157 636735260 588439124 690296497 101246595 212321669 839521869 851744189 229818424 517655718 827436211 855432088 568958457 729515656 285173539 450986620 123411287 450984528 49890284 456907187 3392773 343507133 322687324 782685086 430928850 788570040 98207196 594374560 249730588 321451913 215818367 986492180 53092183 782873525 236345730 738394730 127955022 998684678 71668951 231059461 862555981 967784080 892497089 978467910 336998229 538411305 901028634 911120066 807846188 830460031 901372809 995456432 206282142 705750488 490341893 851843096 103599792 658985122 621112449 835667644 127498419 862887046 56043508 416603008 189342337 252936442 430240617 440188673 218565862 767710422 560930714 638305166 525469093 725657174 156441744 213785214 423075700 549062538 671327331 833348291 650167876 816362754 175007165 723933124 54250009 410183505 658165918 989050691 351120114 478606985 565418066 949363005 243144928 628464442 562944870 923089087 797074006 972686752 909061913 914863196 740276047 764341369 577261653 869633331 928366567 978298935 178698506 428963508 100712078 535678929 656109447 743367275 970945983 971913399 317693815 861435923 825350596 959830034 550632119 942737637 242560213 583339925 735343884 999692555 399881088 614971139 653434115 975117804 257549667 724298217 125638286 530971717 71276909 614909591 248385066 449975046 310184368 967367454 965970157 990666310 758071684 831849097 595407509 975195654 205471514 436642499 257997375 391867428 653039755 721555354 643742659 818015967 127273944 640258159 143623718 951120436 48209718 892262702 917612818 935226477 949609603 965598526 145420718 516238854 205440324 866568203 976178125 997631011 682171881 762128197 598032442 817753244 792114004 925325080 159569737 203785286 456143139 828521358 820905770 910430498 568618440 647723109 180596841 643703668 209689671 803970093 609181173 706604857 600688635 849393053 270646753 404014857 90331470 306540483 333416517 742851434 856005050 929457663 25288588 410057308 107108569 413221112 189130149 693421757 170896920 189731093 245006608 710330452 766070982 890500840 427486770 859924784 24827327 895828900 429609999 788112178 372337338 498845870 218918648 467372099 760809638 849565242 751568786 958715897 30244937 814427369 508186220 879303162 533533900 682073543 302007706 855094675 810929433 938708745 965462525 966632009 739115560 810490922 73690890 425893452 739129229 997999655 200646288 755042919 478346227 874666373 336087428 641278448 573848393 992325046 984553389 993929809 898773105 938028191 50184518 238837177 45216878 295370020 351021256 680315265 834755518 865780048 244506508 264816542 455192797 612226082 625710310 970307625 764805672 769439513 164760071 384815181 30368526 892147906 301098567 839208223 783198574 847657923 973965045 995344536 415654957 942870702 427942342 462546212 35435946 890469459 310875464 500242148 863961389 876312412 225931180 359159475 825623348 999231059 590168051 616014824 541695550 942788370 581610691 659907912 514731253 974314876 597643888 836723945 669478395 917544018 365057615 885403724 451084813 996057455 434530059 634503615 502035144 886366850 965108667 991916188 722904444 876322971 729476376 762777071 319756232 603362934 523134235 907379640 255967175 441054960 583680822 865258484 87916447 187124455 8056497 647829753 55277218 493848753 315263890 885641529 223344058 657819771 339277267 660361654 423186149 423353898 676112778 741982889 784146662 868197458 811856804 894537543 167638373 892091114 331684991 899940989 522614127 720614484 926428705 949117276 204822667 778398596 899138492 989149171 981875305 995072197 447073208 877568847 330700665 931703382 491534665 690394317 386021856 982524967 68952353 987871472 652186997 979509651 891185196 961926755 697815658 765109908 133721344 350812422 626739850 742999789 500428012 981296410 291143075 595156449 88309211 89007945 939039692 952753806 625857144 696562952 919009815 992729447 519242347 521980229 466833306 715624861 688682707 740203997 957310417 984023526 72364722 255064382 647628773 675605044 156432138 988659961 632991643 752151607 94807391 302317386 585787901 698436208 482389996 880054685 85537756 347930487 935344268 982054686 382649552 626532614 382731607 884252113 75108616 736233709 100664922 608752827 78805946 912731802 321302270 677939710 75463747 282100062 564856155 585547410 484576075 704901207 635030104 884271528 722719209 918420483 519649902 731471389 205668545 581511330 938386632 965307208 83877997 328020062 216668638 504048009 141913068 457183458 4275760 953578996 372919570 643812942 648031607 850831849 307686637 908965041 426483987 692824760 286714532 923809138 30780388 867881491 128103374 421275398 992627239 994863023 837695872 974100678 163660814 278695018 977817825 986900545 210635907 880592037 634880575 681075653 372502357 420486080 279262982 286849986 532071215 982537062 257284937 534379977 111642054 748673938 15965798 446515026 68065366 277589299 541027254 596924563 857671141 875452800 677317519 965239567 615099534 868504394 996405886 996612471 638284608 697166245 496228830 821441411 372530788 897162840 840835071 915388269 142300906 978453210 551975563 685655709 452918786 929169187 655035840 789570095 6885144 443841407 696377069 713900576 318728347 727964153 369513963 734050603 571053156 650218380 449227252 481415206 627596929 805115505 645928665 851207096 634982916 950758154 63629559 617559175 908219457 957114321 570410155 938311977 500852132 664607787 928661049 945100809 15385500 582645064 687608247 793201372 381415148 600059774 242399198 710830183 570963028 983102273 137566804 881263981 708378252 771492871 413091224 601785187 870983525 981741848 471350600 520091354 365662454 397663669 802981351 836422719 105315299 112463505 962026264 968541020 584255111 759471502 119098730 723428943 923147816 928822508 31140201 351010329 429719497 993557739 115599565 313830855 563704912 565170800 19832890 526815799 3250982 282366911 513798393 675728262 560131164 763283940 671267756 903258407 50238584 106044448 40859907 798854230 338868010 730711275 501900869 517952757 133002707 326165494 653307494 895419787 333370317 578586519 816891179 885408201 396431649 401438891 976246194 981892164 228541041 301418854 129138887 999565703 996598174 996816642 65789058 630368622 652890756 961298210 33282655 341046861 134819826 499313363 498414576 706212857 304025102 571632500 847416514 985451873 980918801 995159478 452855362 966486694 405276522 588203611 384770075 745193708 816631621 874334069 726447033 893096464 372762494 424426397 899712324 964062754 351752180 639589276 453631009 705980971 151934715 291001569 342335368 696852910 167138227 540717241 394176266 800036123 448944903 505812259 169761616 249581162 158249392 649790619 753831954 953283376 138351505 507237671 320855938 867468369 927702448 962688337 814895963 999427819 70183560 880244932 73050409 690291169 331416014 841360924 950262333 974808903 238417942 895780134 202061873 618981499 618891751 800089978 155858736 447384509 963932309 987955916 440359884 779975146 705016279 879992635 944018607 959718060 595433941 820771727 84914240 244247332 385723059 858728699 211807006 935487124 200102051 630503866 739647825 881747227 691993458 896836419 50304181 795482179 666848954 829763047 55019933 526359984 240799672 685560464 314213977 889551403 558564847 943146454 540569453 706913658 367852978 923915205 603097379 807087981 988116421 991416123 442143693 886052187 992690995 994258674 498419031 641777389 15918351 216782656 651386808 682558081 838714768 905814150 278618088 567396867 45563161 184257340 180197665 639083978 695309313 927368045 230520304 519164907 77048012 361827720 560287424 766468535 938774742 987809847 239194778 543635945 520720490 888642644 855478314 871614047 880301228 993313946 806657329 988074655 240174858 309937507 324573466 457594679 844335594 874504125 869842836 905460587 862368458 971052510 621711419 840493682 819407709 963921497 961858681 976309563 622961105 925341724 657537447 803422849 642940990 786469476 159061453 804684705 950802124 990615241 142841273 628493425 317814482 460587072 610953170 722552401 579567960 580672046 207946671 984410504 441601508 947103602 945479756 986114830 933719896 949360532 984757599 994181371 918923781 964668760 363457536 853053885 86960307 950600902 832831650 942691889 915946814 944102473 500207670 689873799 573106469 836634637 83677908 574736108 523960643 731042830 974285408 974582419 732821827 948664581 840463876 935746766 950437117 995460260 513242892 996552991 993704629 997184683 66679643 629910699 160539563 357386003 503309993 837008080 527760944 930218515 784088485 909931388 867655918 923127894 545426209 853967425 300145393 841629999 867738529 965589089 213809177 648420916 391410930 455696912 406925890 582177134 886951949 996990454 87404714 816005350 479500843 737918872 93659447 595728859 204448810 976030011 583818384 711041009 36583001 547856459 436941114 979696754 695249153 836323001 100580706 133961750 905242498 946829786 808299532 825948057 27636034 953819870 163551288 511737141 889496250 999084306 312972784 631860828 377520028 995336609 263062467 515109917 616452462 827709509 964196179 964807700 940002482 973534209 603478861 610047344 31550853 335351500 128736624 141505906 834150390 928429289 114640765 120927648 230938943 870614662 839866151 897145062 113920758 118006113 695144248 720322852 177164842 676028930 755136096 841207761 384103864 817355613 476647480 808304488 338379829 346481062 26680258 250586721 105350992 698917750 900599817 953120763 548624231 827841784 796201846 802324780 204054502 521812353 340126627 434791131 2524000 475471692 967735478 974978523 486450922 531755232 623328763 746424419 225553493 535562115 656319988 722663137 18954683 200431026 692356457 974665769 969925448 996281976 693191757 884975387 676767563 986582681 911451124 932653598 431953974 775192958 121725204 861097652 564197579 602098792 104136960 185169651 57242615 141026862 222598482 607425092 323951458 439522130 301512058 434235964 939077980 952992366 991613012 992892231 452933769 488139160 923961112 952429951 163627657 771305093 857966418 903222924 928004253 929204008 218104412 364605099 709656520 969455496 141944682 725497342 235410598 957010383 356553302 950240088 847493942 904135221 62254181 827281535 31835964 155174334 151334151 835917990 138834021 938695042 716181443 846600696 295121206 755825473 380128534 777710295 892746966 950490861 958883055 998937266 296664929 985369673 414332626 527428753 127051057 297809802 13361733 936024411 333728451 530452098 705808064 969122931 287519946 460835345 922314416 978805108 333692155 466387717 497027757 694302341 211276087 810619338 715114113 915823796 5321243 412170927 426269417 615466108 586036475 839170971 615833127 617822436 323584007 686088200 586674710 679941473 75910550 371903092 817478757 897242355 3302757 832232601 280649011 997330982 211035828 673866980 267339343 903283473 678570733 963520871 935900695 985779101 286340359 606849962 944609821 995042233 797940112 968430048 986928119 987913635 890149531 911342316 266908058 713262294 687171506 848586894 603841689 801400086 250348010 662937497 637721955 787852267 718896506 796407300 423576852 926107208 430057770 878590425 42582393 196489709 762385191 841837794 998758652 998838100 605679278 761457329 489860542 592808779 986002123 997207517 233226884 644257555 130551271 447813082 108929765 515116823 529176126 565631745 8129475 9219865 559068519 917034553 561929192 766189349 352443747 437940284 766973606 952867914 52395912 997263697 498266200 670824076 397925180 946526461 607605515 791142321 124338556 568002029 115762589 337110036 655949396 866788033 871153382 880106633 565510700 949948172 818777466 904474197 864288114 974369717 394461867 477109769 183140803 934286083 801439485 990782873 891059294 899774441 681103534 951837918 871899545 979514121 409431444 482545414 812893065 823094278 981641838 993777250 480131948 540113749 227824451 540468260 854200880 896819782 642845229 718906595 609951045 715333873 767900092 824468884 503687368 883078695 107113517 171504496 839236920 865089607 726408115 983980952 392469025 982860852 268276302 542959370 632131370 876043885 644813918 796186407 903463493 993614724 984550444 992480442 620609044 924140497 507335006 855074242 110587161 597903707 160316804 641141031 210230552 725828298 809494664 941818352 538145603 685709970 907581282 941136889 585025505 618839252 956575519 968854285 862678421 888247354 222744477 884636193 61472309 472887305 38121180 544876032 291596691 757965890 72019256 671503847 819462386 830567240 967696594 969477454 386157620 921955585 571195304 898860223 403279858 992462966 86052608 488503318 910994735 933615432 44523645 308975629 707543942 873808325 983669958 992579942 754315846 983746965 918808873 945166884 244124657 718603462 146281406 802150212 208919796 386496637 553113547 839025921 929508176 977496480 586517209 772925459 213198360 903490394 407616076 832660464 585394714 642202506 660049551 837484234 501685658 687175884 70604496 941627285 925426148 995712665 409466914 692200878 27248174 785240088 206160845 565309769 581890582 717318379 976849293 985530396 656812149 962779489 282165924 523785083 751444715 900708767 726953061 978923939 644669693 828301039 25757321 119866513 712070305 888347521 551632797 919224635 112738689 566444034 973030485 989008513 793508511 804741813 791078585 912642676 473611341 762065179 940757618 944571946 515851472 751807722 382072796 822441960 494288316 947352052 413702694 546215106 898180176 929063911 622393272 777347896 900964874 931029631 354156080 693394295 26747063 940087529 446286949 822465715 338068094 799547589 6524261 551025993 639339155 936466481 8382123 813802406 652746046 974168939 210158872 555776589 201785603 459167155 84621428 156446356 810153513 825928004 920808629 983857635 901578526 959720778 611262292 723240732 618324412 778824899 213810224 266309354 945428615 988756932 602516494 663228487 464480354 647532528 976918862 991130548 310836284 813772959 650692905 799688038 634584519 727666123 31050119 683886397 649403987 813430826 936475530 975565860 848866374 953401493 692490952 864061856 307014532 795627638 798702901 999296965 996408736 998391763 405848991 920390343 214550934 707494758 262252522 514511135 694675956 890048423 954470786 981815633 737511353 745704785 898342691 929612301 996425829 996471062 648053704 684691791 217772066 761865217 255544627 660819618 408982875 472619581 652415626 790288012 41016649 225253917 640817053 983157035 445469197 596138253 607752090 656418309 418100858 573984617 155591376 195438956 103475775 553266150 285221586 794049250 662826767 883099888 488685324 595339646 335918319 403985390 661879053 771309675 307189144 375395607 8715266 868115692 439570719 984018346 535248183 747970717 692249788 731393294 40890022 659584420 261836786 641018787 618303367 996674731 875378676 891427385 392367527 741075543 742500393 787419329 580531931 585643219 761028133 918278803 808006301 888018674 140302044 149309759 592386327 657771448 847711483 991715782 718687804 721876379 924524110 986506289 268732582 794806951 943834339 998464230 717013665 890562996 623514610 977960718 925344942 952967848 277420319 953791348 472490778 786032237 237635254 605309875 766308244 947886964 794000110 912144357 801875499 897814953 144189511 908590671 679063231 906482222 678519914 937620118 232647923 855155812 486448802 875388281 537953568 936612587 342713300 419406511 24895188 949995557 188669073 344676176 892794208 902537363 550754007 576790271 3901823 283824577 242003747 533783653 795481360 975959011 186944942 201408405 498708379 974310334 538858878 770481652 652198208 718495630 649117979 838969861 864200 931282460 448535166 520461500 631950568 909380806 938357926 984848581 924819021 969642098 618201819 822014390 829710812 838255068 47790170 849172725 144498832 235264678 392198915 544668345 680364438 789607218 83360048 250482175 957438969 966761918 133881051 297165825 629816933 733662047 73151693 794680123 547454223 641976303 553595378 572084363 821284741 990178787 222075423 538388746 937484280 984368478 583922388 728563649 362422931 684154656 783188083 913249868 583382858 926818094 777450470 835923824 976223326 996136902 751451963 988241102 82949298 779422421 677846211 718225255 318426937 748183950 394692399 846488763 303599749 693466277 331060734 823171391 972682447 985799849 273725976 307563735 283021819 350407097 537123930 968377112 85521102 516108163 488297820 495724494 890202740 912795605 620773669 764029771 398413092 828853342 505436418 941788347 219763748 639701326 132334450 855701111 990966489 999989541 640979810 756336419 186261730 558303001 398060564 990663507 930900682 977972686 191380834 987691462 63654650 604778818 308138760 613931048 131025697 184629057 422527675 702976149 148123670 754625922 255197596 365125370 689501944 956822490 445749659 689881166 163738850 535482786 50354164 275665056 375399421 859038552 508876241 680031556 699251258 792047253 877642352 909714023 231834536 427896238 689554579 848610558 975123392 996702736 960642682 961338671 935131561 996178472 560007023 563467570 369178195 652638798 889725691 893594219 769589995 925159336 148303922 493350065 415603018 778436756 383727118 385428869 686946999 790637124 826207662 983384733 928732775 946020446 983823303 997393835 828786011 987604339 971307928 991703336 709938067 736206428 485250265 789451739 583303301 925412785 403337496 598725098 489169993 755440311 169138765 913060505 251559841 299194418 834094868 908189921 681570920 770390631 770258154 978531233 692653482 834242837 508079807 914782907 564118335 877216322 819930620 998310949 591448974 873557001 105849286 477812759 800977026 826516838 120059008 927040245 775893693 803756447 264987791 748435633 760145594 929517552 5887743 884168929 988273093 999166980 241712646 255966291 262244577 657406547 687335182 937959700 750136934 934561758 905248428 913806565 88777324 275117578 206256394 944330681 23887948 950246226 665344603 672451025 44240908 614734576 544888312 603715508 300855090 801918357 924151752 941684995 338624229 653796667 63894256 721485691 233511303 340961569 892450461 991877919 835400908 965828456 619430867 949956405 284019075 804723607 929906677 943691105 67361814 489244597 795924969 819555140 639791126 987466384 443057191 581067705 373257993 897205543 205143331 350122600 142734661 835547051 151584178 722562636 891715809 911741583 622079938 751714322 881429063 921779100 962539774 972028288 345478399 411488948 52384025 908590045 594799148 906547214 874090625 902344670 934139838 963359194 912412207 931898713 859157803 963561196 473726635 694480845 546143290 853918561 35166610 825436922 495981339 928998987 980116990 996829608 872405330 912091994 556739299 971958136 332401345 609227641 440602721 761254465 977127696 977615996 72992544 313553834 124328370 365241040 529969098 650004935 819694255 993881898 228300796 668662160 462153573 528615087 200250511 534858638 825664099 888938852 8889809 631110985 828368429 836177840 235587376 453073585 565977789 784692855 55705971 852049073 97637767 857900386 650412055 970738404 716261839 854215262 676034834 921942915 25354673 366109269 758589871 942682167 927256990 978735219 58343940 141219749 980006610 982217052 415157396 719299610 771130521 944207677 122796684 868761324 403068136 847327466 480146695 487306985 814789622 974044223 630177729 817476797 96026109 968006314 256036738 864060388 449633189 486647047 913477923 919011702 738110313 760784987 158942593 794873480 450815905 640191952 762608940 908995544 398192015 826687125 734631486 745350155 703355096 873799440 642340785 735642560 986488836 990926677 750744628 934055707 791831944 861356082 167400323 413211439 337052884 652158693 587624737 769966607 11409838 502659296 539545808 734037612 104124743 377562689 868117115 894866348 828466091 910603591 719468338 725569567 550331694 803165103 830018897 949488387 725907426 791581058 52207530 831711397 434672013 886039398 7710647 596613712 799463214 884778388 350191607 954473005 429291031 583835535 519376146 983086054 162375104 831664629 611813600 951387027 281269780 545331225 451430183 794374064 861320499 946377731 51578908 371865357 200346972 655707719 953631756 994923795 994380415 995174869 321818815 411964822 108988286 333004935 933751604 996686772 217103285 982201144 863251479 883175177 302740991 590614394 832955248 949321810 42490815 631947748 871513528 885628101 786867758 827118196 715037481 879141685 351700255 753382113 259609088 962532777 951536702 994541138 592587505 891217613 128857895 311333191 75771376 922390481 105058783 188962976 275346672 964451230 383988042 845887815 201331019 508739704 276093557 476225183 412768874 871622410 520524563 978137191 437409425 894841004 50311754 821530356 570617807 695742175 328574979 934974639 128924116 560669763 132193832 628877609 218965464 861598603 416329567 558516925 324780449 497570945 267365109 643712608 542085038 944703913 485846326 768824927 205019751 557906337 336291931 992394425 37965908 650216247 52802088 116988378 811205185 846523726 258413827 521521432 97200827 758179988 741942908 835230936 556343488 839945653 356296888 831829011 808572686 872227096 387687780 443611517 711689594 965223072 258840944 689478991 420867117 662974444 679083870 919639867 898529330 973444470 355676900 401074189 637488972 850765420 285133311 386660766 854359985 954811754 207633178 561522730 622615464 917552827 409307122 584160622 453682554 984455649 841074222 894513198 548749452 623304933 762956469 928519271 768151722 842956648 609172528 786869456 396041345 451330241 215771583 602719832 377819793 884064040 611748986 928766112 243126997 415907273 796763616 857258584 117184186 290551673 881908283 997773386 885603221 927325774 517466542 919135145 448049258 846570633 894512590 924690382 237537118 390605163 341085835 568018755 9716837 639176716 809194964 866253272 944280896 948485182 559415095 773961555 214521311 228739737 586557226 791752591 361299323 599599946 798761664 818602542 970034538 972490737 97563465 455476503 947548933 993140659 489967853 552936847 338180399 342764946 916444777 917134304 662267316 970366357 309908386 734634216 381276647 458894781 305330075 820932992 423235263 636135077 216610660 835713486 681696679 857991379 527069490 746601645 842645461 859907039 719633583 848319056 734751212 830538854 701076133 912434474 850200489 915523370 129078673 966746052 591837240 700427364 499489610 979499278 841374983 844642858 910698907 918541587 817570560 933806293 535325963 982942401 77338618 395412511 990907014 992824731 720017766 941312100 213248019 828198444 482907286 793301013 235229728 797093394 540558192 854655555 496254651 624541246 319279491 379891296 784619367 935740058 920107878 986483584 299795457 819323666 825220376 940198499 515073003 779734419 759066048 997409512 870200589 871836049 70980652 335589532 278466044 777185398 801304451 808475542 773369124 790445351 735133322 926035449 801770650 823937856 515448461 882239946 253949028 851212431 427324376 961715738 749089359 963036351 4104558 428911026 750196001 770237302 927515137 965706436 939479430 960496407 761979225 814332729 269940079 900912159 52530751 227786426 687912557 708402667 686490195 914152742 761990095 837357791 283032512 831973053 228741994 858615832 699669486 947209249 479992996 620313277 761975530 863480651 716109012 823077045 860572258 939575197 866132227 915122606 879923472 970703817 428577368 664971580 291529375 832212721 255733686 943092997 589340076 793550095 56722957 642652153 224595217 679122567 525301110 931367074 339808506 888437230 192467115 495839224 756340268 922738262 574137155 968128888 56655674 478425480 597950255 801275817 58437965 780533916 284784431 990852976 222038584 812544189 374999998 669996345 980226545 989847024 752457105 979922463 413029522 852027139 202088220 670496843 847486022 951453295 242278494 924560062 609491983 712583368 731116532 761335564 251176996 841741184 210038858 739997098 955100886 956710216 192321743 581520879 119994523 173760752 109779593 957219033 183087519 881602972 580753012 820480783 772593579 827443730 739036632 927269812 441409066 806438572 65781516 897897001 40331608 798785358 615678005 750512431 743611595 757200925 921055343 967699921 537125774 942290799 116123913 503220893 573676846 874981513 206653108 609354462 942519089 967754451 836303369 853609789 881984434 967633533 361074170 977220234 893617733 930974087 889137806 948172526 885265458 967672141 393296444 608237602 628893681 855970865 142975410 416604059 673241746 760553694 209667618 241879840 769001810 908923839 314944168 324465955 523339964 925657109 137601817 279693237 642677715 995318655 493850177 659300261 884348110 925048302 680040992 844337807 274297214 981073958 397834506 789608710 179232706 622399058 298813997 571131644 946449889 959300124 630369129 762549277 446439121 886556909 63569042 291856599 380536597 924689454 358567162 944777264 965152839 973400389 796685597 891985017 800172149 951935263 716504786 876405886 306916470 739370706 324260716 768297998 168203270 222335909 821475625 944647766 716613637 997471610 524750774 942114716 775244725 853391364 660143869 778367641 51511846 815950966 778532221 988621003 530734070 590402719 696948077 797197480 154092399 544388762 632592137 828005600 867793376 878792428 404493572 906658785 880332167 981691274 907882204 983360738 758520082 993069186 677361853 833537839 581858534 779270107 231907164 362418796 952127463 955279015 19243012 469618530 563649974 660993614 460227982 642447455 341862923 939099057 500178386 563464569 748457598 931974900 601329715 919012773 329333834 627138278 476661932 828393791 267045746 978788241 533955632 727734284 935369912 971682842 885015606 972433712 916733638 929064805 217059462 403793601 534385120 952678528 985230720 997631000 714038106 857551528 145989403 618193931 353836906 783729056 32327218 672858819 383548066 686566412 983060759 993644279 343035829 870247911 231787929 860094005 297104271 672211232 614872081 899894145 134711973 523334282 613738023 800775764 904494870 917535607 100505431 328997134 814055528 941932928 898213802 948590831 711745699 721413634 147678745 750580660 137662603 969142939 512118296 684019183 173732180 557560421 849562188 907303909 846386579 897583570 159601349 567001237 425017145 783346220 130199754 872692921 790295285 899766441 167732615 701398405 703951729 952008649 912531272 992319894 779036594 843994276 962184299 974798311 583425134 994860014 296480508 795772247 300699904 857167198 806819503 894116019 122266759 673430270 514768590 652126832 223326679 360458941 948083529 964281562 642482421 856385424 390720077 944649365 82968222 347253150 36543197 219218887 224399519 602747353 630881810 717691006 405902533 912396497 234880218 699586294 297190693 851929364 537472653 668477190 925512769 957346880 165442234 757931234 373914196 719603383 385544160 635996044 265321229 629158638 375368092 825725918 634735512 938189418 508619012 785910438 8948621 321774286 374026568 702651913 543307330 863474745 359816666 901052640 686141243 729238061 887459545 922021752 699218474 782216212 534624884 767825062 87036973 875888129 790798851 929121987 799096779 901047895 418784897 727716720 206814784 313728908 266189659 903661073 695520077 900168594 577958078 715373216 993420647 996456003 468721622 492511604 583096456 734681627 2096225 220409933 923430223 951937303 896122333 973510306 336020950 481834690 665903253 911337243 236981322 302125002 769062467 973416549 756454173 845800426 637749567 929596128 832055067 902195886 839073467 910975602 959576628 973476001 28916482 251024582 18342295 381495799 888303445 932618843 771285875 842241117 895575165 937512841 532777136 750589629 312290311 609703715 702520504 725449505 381668027 794609735 860752835 905566034 139132465 170907277 679130677 788765550 596612863 978421450 768404160 882070531 433185040 636646067 806775241 876182007 210060222 530901048 456001950 588877927 594641155 615022473 515769823 920998233 902452035 968211132 846283715 892559174 928186108 939195109 620088122 793394051 465407119 901451978 790354746 983457149 170278349 647001593 955575292 961453027 46302171 416873903 575683582 679435084 291984334 929793428 455425706 814404764 872002667 953221403 732076497 890528897 568455540 904543666 581318705 938029453 16362158 185040016 495710590 647631856 409164321 883856290 975522278 986756723 274224241 823250277 653845808 908719068 680726569 952348975 737999132 889137246 863232362 905786387 446295109 504823504 326012011 733754301 770135840 807779340 614019121 740662163 919330795 951901196 877635157 949124353 156709025 651274068 485706003 493298850 241258372 720885790 693039430 926191648 826154914 923945220 881763495 899983349 699387927 979939571 23899685 413259628 41248342 340909608 371211598 919211359 755260908 841136962 391529035 627749745 650516431 784410024 676258917 952628318 740422733 811465214 298875767 791462238 798791525 916220031 674138809 691143429 746472216 957133352 163516186 812645631 974295475 988122133 329142870 924507189 511813300 556411139 159685861 398068001 924050555 992557975 260790293 868607139 330487239 815121539 542811413 719513541 179344399 799592650 677650567 840570453 669332624 699884941 688420208 833832417 969301517 973426525 701446298 708994475 565130030 648888294 353440527 460488254 907765444 933384517 952362952 993971847 579627075 607485081 991111558 994022022 752874170 762896917 735483339 929051364 457533508 902822575 875180986 930772526 635244630 936897292 375275802 514035205 504178124 859072733 880924122 938712681 621888996 689278745 719197477 800177162 469490848 732479276 136405748 776092782 202751842 660798948 168246612 367752820 179808993 579250330 860908155 905166134 222710968 933783352 917457014 947463283 261819633 263508506 638263892 823758217 871363648 875130863 465496458 994728813 365542422 534563398 369973035 548940108 500214049 541555418 1772330 175553152 136476572 328046813 305794529 476016082 489788641 841868482 649867673 998226078 140421649 532684307 307020402 969655059 273342299 561296209 770581933 877147122 426529344 697990815 2135260 622724526 822401783 921617105 423204490 582805414 790575139 817047872 401340430 404226822 317601526 337184968 334640097 356846680 741126556 785266242 513888346 935355117 349691338 809148071 297730003 657609289 180128601 589128477 699041120 772846471 617391240 950998169 393865297 953330066 507736706 931608535 695468773 798701554 599634398 777581446 450105040 924928149 339947481 986819785 437469823 943305909 997238653 998790658 717728106 781213278 528711451 808535532 315899425 385375532 720479719 871544361 830690451 918574125 425883981 699243010 800574055 874398710 553672978 894802813 208902540 379169465 544805419 870785590 32949561 169776199 179056647 690840925 691505427 846074662 10989396 772202521 647549124 867117162 776059354 984360834 124932281 724709374 482444892 949499455 920817315 951406158 827710806 849491909 545259459 745418246 853616441 877758384 658765979 860852490 930444926 940288928 2804874 108530505 775252691 833285270 584149334 905522612 712931986 725593560 930391542 982216430 469545510 511851814 757845365 985910693 986795342 993369789 26262393 200654851 975480053 999072987 737814612 743935229 830516217 991840572 236775193 612888854 531167317 624153041 878075459 937238255 999463667 999527925 933524810 941386330 556742620 791527599 470930616 946523801 880191951 888170098 842343239 880046990 716555132 779367767 650533227 927259403 335234296 704431694 721460767 867595979 651648540 893080760 844870895 992812754 804738870 989144189 273439443 973449360 189755036 658709904 309003358 968371623 578576509 943855384 973399732 993730325 963785069 991684802 649704495 742651032 284118416 870460322 41152523 137495586 484947452 764793742 673007562 870170442 611946082 815542977 912686674 947298401 628888207 867669620 837989175 927923705 783722051 967841913 583054352 892133396 609938245 963251596 306180833 599844019 453954597 760464730 356037394 727246158 850287192 921728801 333427347 641863340 107039147 442399639 172907188 857815602 895899246 896678936 601389749 738298881 839431825 971978151 109733143 811719454 817012076 874220831 24235471 656052998 540524174 912558894 489379633 931135684 678615506 725598593 314295954 753651996 765577054 874995344 707478478 853525302 752919808 755248281 476855523 733242617 312886708 664116909 878728691 897991485 375092173 431726352 370306166 568664207 948784362 987824073 174450118 288630807 501460275 701921406 776076223 935642685 145871915 979012462 40257454 593311138 57983886 189987892 757177790 788547109 217915249 908879493 291481501 994190728 499655688 993707125 706925066 736784396 538286982 674444699 225857781 662761745 388328788 410815768 366642076 649750914 89773257 990933766 238801453 811816434 528400840 867520605 897738124 996793882 861472900 934367752 796514678 809858169 120449665 456400781 149272846 992709764 157730921 958147456 214411116 622450794 747391743 954667700 426994875 717351498 872618559 902345914 745573063 997499070 704858525 706749429 106888730 293185703 925320973 980744854 626270743 718744820 741132929 961324128 71206146 663528979 53151253 233762408 82673323 233753020 132978536 900810600 63462458 379989203 723292279 857946844 557774848 828255698 86643484 954015196 430610799 656448211 825868389 838260666 764921435 946091393 228718231 354847093 76716104 114970217 438242493 567712954 885394426 963065904 405093535 963700414 312553913 903442717 775031070 873797542 763183078 805007542 195894327 244868150 512556919 678817106 512592643 824786755 565468842 975793819 73701937 314692524 811189511 945992513 104554532 203989246 735837435 804251389 210652227 488682732 303661048 747106802 997571243 999971206 97854929 990957358 621641259 889984396 895607666 997737287 688273408 769597675 494469765 721062662 657858706 728759647 368691532 493440137 351198102 885105882 240767832 682469946 197494676 942179141 338831696 993488570 293087376 786294165 45808452 90998401 751049459 898082086 706753788 750646670 580082661 818866646 535436902 794727855 908984336 995733758 825645481 933652293 468305124 573801352 113714244 896161603 58781595 110981332 324564962 474047267 117027553 235486611 326819644 767029240 55981561 359720795 982274724 986397165 391685129 598502333 92444217 624420473 181612999 672659565 369321212 549902767 604313376 685408044 660753392 884247314 331785304 655546368 496394022 775657014 989825457 994802895 679593029 987425514 401712258 622449727 714893622 799065121 957712559 960566256 963314425 969628380 291999310 551847754 955114958 991558676 59342716 178858141 674444007 913149774 789944328 926523237 825944400 987263808 777188990 853102706 760872885 936749258 456317768 854434520 89415265 721582484 966139567 967155507 293957381 830349153 868710285 880441434 241341159 248486280 7584792 410272580 795370127 945140166 547742078 899109373 64355447 384728430 885411026 944302758 712876170 843133913 128099457 196968388 816743559 903881210 202722065 860661098 292709238 443232645 732145338 922684309 269277031 447388611 974567761 985768027 762601712 958900183 428042426 473333112 547190075 732658662 66049618 82346394 617956110 782307297 210514733 762627804 437001594 948957887 107601633 440268869 643187297 906027596 642946482 893608794 111668462 219530500 504911599 728512598 566204922 672530806 299779101 501699320 97405892 933136767 34934600 248222110 323563731 698086231 363733563 760071521 915189704 946986012 841185589 942188702 229655768 984674077 231173186 724791603 870826425 903534715 736316305 982536855 956469402 964312406 529005074 577568813 602977647 934874521 191456542 269512185 92091743 966128900 405897736 877028026 351522850 851603994 622499489 735473757 666181277 899378123 875031559 917596206 202059092 313067093 40168225 236190923 261158890 382995453 290811332 597854757 144409028 999486298 166742404 579218604 986400360 987442297 827421259 989040450 508584459 783920535 377009403 799086503 473968703 888189428 418746337 811770366 877864147 992581509 253310048 845855322 27103254 707205890 844318885 863436478 481137940 877114335 923305242 992709083 668503426 935183268 141352469 307691634 548636655 971930500 254759472 800357732 975485651 991506445 756668607 904375509 22887937 469282049 25087903 223830104 469466683 967818630 390655365 443190221 765093565 821551786 958056861 985021007 120688285 971160270 708357772 779850316 300733157 434532803 8261559 829289762 559083390 770893643 393323394 544735170 890703227 925077140 309609578 827700484 56350190 794316133 746009577 909261419 530974987 732512937 346388437 357341510 325973417 963932061 729406315 800924763 487513348 488483238 877838045 964583493 178124896 183702998 657744597 710718215 734197270 942573075 613615533 679446965 775365517 983580100 990349919 994606337 738125020 954621927 790551277 881073376 52979740 808794017 151356221 392510152 905021395 999384633 108216104 695701864 406354621 805019583 276469420 813430791 63786481 359258442 501080910 528739918 2923462 694915396 142331258 477139542 30165415 367282083 544770663 680684371 429377523 612248241 718354121 834077550 939216892 952463659 744657650 926403785 640496675 825775827 298631325 756736324 712984266 740020465 789849836 943543981 767987537 871665124 820220468 916674139 462448883 913718302 419174350 659033439 659822059 729045360 669050132 846270772 409082185 737021910 65261375 819937856 638300908 905822016 534916453 810078506 857656262 987410493 610711827 936596486 309153027 547540164 926904708 982027403 722940986 943084814 9312017 477115992 851245235 927301178 924844393 977188486 578065413 855271022 81479422 852670185 249398306 965341995 129906513 624545427 342543985 716959575 824486347 982001196 935450781 938453830 512406582 897561410 113752018 874826470 346460160 966528662 87910622 668654729 805229436 942350874 628571818 877687773 146233658 443067167 24608083 428867781 147704443 645839220 517425249 662232943 488013658 760894318 629368770 828511799 410487616 885081376 611568948 643925698 119923302 925987838 593010997 645975813 652466183 881307963 135112070 349565867 562287638 767079918 600492007 693166064 552714601 685421497 830733027 940597292 274888039 395436454 24628739 661515454 969955012 981489201 319522526 974360208 582749276 613714901 658388387 699238544 194874817 620575422 159645789 963473099 541542291 559482674 354667630 740231174 982407970 990627230 363939720 444095270 710739541 822430709 702898467 987093971 195698114 501585896 516244559 733574668 209552144 998704921 244900947 307584918 462175378 776041920 237428233 835491062 671594565 806870867 702052944 898065099 53283230 365978997 461233411 796240447 63496657 291240922 615814570 730004341 218328225 332631675 829436786 884713898 925806570 945892023 196837828 845118706 71253148 445083412 19026674 184131611 651846948 965584798 503484644 600728042 177131195 257115224 147524350 590523325 526842627 642539479 430535215 751032084 669325651 711737028 457426468 914602928 956777584 977229641 470031515 491804284 52316424 145731427 293513999 385987634 764381616 880693329 80355839 634778452 708669079 907999401 663629124 943435863 841803522 946724706 96761705 807426192 746938673 785604714 561714262 637732772 816126144 936130505 473022526 506410250 885101302 981604888 112047762 798587784 840573859 968511883 338313270 907590795 852511752 966211931 955675454 959979454 23509769 466544003 24592612 48046733 691672264 796355810 399046749 545999574 363311725 760930333 57796731 807128097 256034655 766406078 651782045 754267962 633756680 660524534 873170773 994360349 602524968 606465063 637316042 684575959 591011444 899566741 571756320 936501204 92319628 148501928 91644981 144343038 50770618 736828550 87778990 163835049 6821543 995650424 705970921 933358588 904897849 927937888 608773284 620571962 970854557 989547485 954817079 988584598 285558107 411542205 205839973 334559380 973783304 988116385 185896447 486723166 424708676 630316488 367122443 469506893 932174300 958025930 56036909 377311340 936256872 976191296 170589042 242127801 105903585 835084815 853390375 926425522 691958646 798646846 403905455 580565002 922137795 972271974 292678671 664100791 679618153 914564933 829182023 938524418 994328279 995442536 195684566 751486081 715690506 881869170 154349513 332765314 671234149 995420643 774206172 980456361 448333332 962124993 142993700 677152684 848285594 980554669 462768613 989758293 90525519 268716633 810682229 884373021 142637015 212258070 238581738 654403873 236915141 277472355 857767739 966864894 484650610 547432270 564978140 646480443 677276456 981264723 773869126 823616141 332953989 666002942 317631102 420845878 138169681 822563864 825030867 882099308 626657965 878078556 43996864 710525994 158096813 618981422 626069647 934036319 867627245 976521244 416244885 690798087 634573033 668225432 377800475 976910225 779513394 991807695 700503550 874637886 185291332 565500081 147961946 202393314 966526753 972678532 800368082 975724683 269434866 516431324 496345691 985705993 421072129 765069428 289521152 968608917 688506623 877229829 704911245 720359436 345732368 938301539 410743537 750681078 830756354 854033773 892466002 895350876 971321814 992829217 76135994 743687658 653465436 917520856 387602681 590923099 717703845 788901132 848684127 911285508 238690603 360378285 266184433 311873445 257815881 436556079 848665505 893258511 268807501 288889155 360170511 464807270 825664339 993742161 231156861 723544130 723740629 821239891 421773736 835497280 404445821 469865557 187053915 378056424 730191854 993233706 896138513 972472195 194622395 524714577 357041864 923287088 437541863 963184975 240442623 353512492 2532521 871527874 135288388 266260206 434423800 805789981 162564158 214081579 399007322 808697115 535730527 748245399 580295285 790968056 383170200 897708470 269834772 507780953 390588289 776268183 396974707 841809830 917892906 956725191 507204617 581483480 367610418 380130125 783315930 868062752 171823021 474239419 451214118 829264970 421184849 970486654 371947268 839785101 823475313 868949452 872614860 938319365 824558823 942279392 747321362 979797165 43784608 453909165 78499436 573261615 273452522 569563166 312097785 573537787 39492145 811725388 980415832 997858337 830069741 881789103 615771943 888591960 302714429 396772845 157058053 563243390 556099686 671011135 453694591 803359059 705182153 881361844 551244575 652292418 969872630 972080559 458366647 579565249 593176671 747601014 740915487 920423170 63289926 71044838 275322723 815859903 345397014 574936683 732515961 888660697 493154487 598662752 705959513 950418925 348028709 394780289 52526954 798086967 474597245 639370407 949919108 969406900 360952443 943933592 933355321 981093812 320091540 387121835 643690157 742179225 460633499 467690574 90129580 537413988 890865536 942025365 764861123 777149906 667337304 754058462 308320493 974660267 266389406 636145964 984235340 994648594 759364932 912048851 837609234 960584906 134015951 558568599 32196563 116173321 420478440 533605481 89468543 517458856 793991474 822377244 12353851 637576340 679517548 944262319 282887111 560531315 554730862 918923798 370393095 896723013 788127396 857917848 23908621 415856065 146777399 313240328 390145386 526512985 650412619 758726316 962510807 985584036 394293182 407557222 412521549 856004530 900464954 950759634 717520005 863965502 198080447 819569111 380426134 561473856 150905962 820751402 114849188 269138844 675762661 838501053 466848968 742675327 331771179 696902843 354225889 497805784 869846837 920660961 323655237 812745347 460976907 703401507 797890147 923941797 31376700 961492330 243265791 400297637 705841787 755670117 926573230 962510502 370368008 645936840 625663674 817651752 377119339 630963889 648440670 856875283 589215690 770133216 306787856 833989573 381622865 586350024 882894416 908327861 822084397 864447423 477207156 702865659 17910791 116027053 36679396 755679361 159092485 267608511 897802092 905355917 390176016 551449503 157564653 548298781 650236264 960352424 353643084 814318578 751378534 971883532 485873636 551537943 990825394 995188637 477460875 800030384 948026658 950512971 654733976 893922577 906644578 985188189 447210942 587230209 81909122 314674535 163331562 823050210 924793101 995472002 953276091 955413678 148942936 826957515 232440253 733754594 207142630 562043139 821975691 877992913 549999868 585412133 677078796 826179469 370323053 709882414 316709811 572941162 259191093 576586803 185861065 362962045 3453177 36144125 708882750 837792382 700713502 978392485 556547459 558817225 71181910 802210301 849221049 930886837 204744598 397655411 768086594 846491334 567517351 796985558 709932650 928334459 974276693 991219817 700184878 921415056 606880062 802294800 755234743 985901833 807273476 849785389 19202073 408315368 832440097 998278398 78986413 397397070 22238024 132679073 112846405 513277938 245237079 825272319 811811698 866019911 406277249 493152730 420069446 570031026 809142191 975404046 797510063 887128375 547682305 896318723 212507398 596637489 577877939 851084138 702686836 756372904 175843004 390514664 243756157 815489500 383200417 392350347 428165230 636329440 344205184 759645279 455357020 890422338 493720900 957650548 304633571 641575595 772646216 803296346 562530426 675530233 849857666 865789050 873308268 988878580 477042988 498713360 246913285 955208473 865069082 974845118 469664733 908102844 184261914 870937629 749298208 829912942 359610616 690899093 54748047 779901112 450675894 610815739 106656198 688146872 350414874 939829752 582929910 635253979 444839604 923774418 718449952 990105921 742184494 969148357 62200980 180005620 94677164 342335395 296418333 632279646 757778195 808294428 531749039 660639209 556362554 574411459 798619881 983921295 166788890 325839183 612803556 865002955 470653290 490294091 841721654 842791372 957028685 987607716 349139012 359482886 831440647 905469559 383562810 841805556 964636924 989928978 963562565 982129847 830085424 831262215 851731251 853531893 594865202 837605062 72506410 415053951 39947663 834200254 474697507 516572700 10154968 443242619 380814257 718839325 933390755 997289443 369269017 574187992 35185813 363533414 497649398 623246446 777960883 930126296 794178286 923487046 339783256 416687781 560612488 659569078 813765868 842617329 347872663 502989345 644173453 678387175 921183878 979701630 126529572 150738733 37619895 59521863 302197709 761233080 494032091 747365944 83914987 149129331 392961196 572776233 522422123 975910522 485260241 731463161 77549905 909681868 322986175 502344700 832899472 859110923 117511264 516188117 245828030 524145855 223214518 507951121 992935774 994979703 501049467 781797629 748597505 879988149 129669004 773675772 632890143 973215570 520023230 648248760 57243008 410959786 399289869 515687866 659188156 669920418 854709710 917594317 525145612 590741147 819235866 905285427 227276214 704037690 71594260 226791097 131667101 843879720 871028536 873135941 28064307 462106431 853451515 930492390 842081103 912525538 608763843 625595421 891058114 946158405 336645262 476006573 335226096 682327024 153821875 772524264 426888895 670475461 235787996 914333252 588326560 953137173 446499768 864493768 511216031 893665792 235582174 712642568 525899485 786720737 627549248 720109422 490200537 902499930 3937911 277513996 239952392 670233567 862604600 947167899 615872944 842009803 321113592 838296938 779901500 893923779 197553188 565286178 660812012 748837950 421693944 719868795 999555670 999749228 491503419 602314202 56656232 904364021 141881493 956732266 867801633 975491289 957876845 966054684 6536716 12394302 935034286 948615576 183548471 209270520 260985963 414976119 517791670 549612977 35602845 301726383 154375214 660322546 808697379 979619849 803982678 908152558 493506987 604590796 525572479 654274587 773799221 995882572 465511719 895131607 626577043 743621278 664380337 923907046 604470974 683727493 585599403 690624669 860397570 972666395 810430355 911249826 385872243 600914917 344946307 678883199 456004692 784792467 624188110 682658635 729040311 816618288 904466645 939482745 984850598 989238172 164036470 873483684 702634853 718808011 823597619 938569286 132416504 852384099 752302698 944919090 363517294 999823189 464010698 820807546 278810935 993392468 772537224 905242502 59029730 543986485 274441323 881733576 20105590 451365240 101019019 629124019 109507788 545176836 310946758 358054539 616186996 797399917 621831134 674029618 803233812 932656541 367884393 487999273 82750183 421613399 137866111 218114121 551662427 603368044 440555147 454891233 389890263 495039662 598596885 752072944 400716681 725151470 628077360 944050633 820833744 866491371 791746172 894982138 320895308 760245571 73641147 665393891 668260824 891702941 885184304 958364622 262220257 730585252 798045277 822940561 535000179 627379934 218468345 539343694 207723893 873530465 386873557 947529525 359458508 594135879 739862547 749344244 874923070 891321212 153759776 513131563 987900224 999977610 922905724 946979477 858350476 900234779 378704042 684027344 271180755 597326556 509639104 630960784 56531442 493439604 250620878 283046588 930701289 964977018 243359454 615196290 20322824 429940295 623264092 725843264 275842433 806276613 628073042 790348232 1419983 761026464 835763507 850274812 395816090 643870965 226713616 886780711 93326790 796214467 592044520 884348312 696984892 819706138 276690307 714042080 789304376 864952450 323252883 690912785 90586947 571660051 449718353 753818894 330843166 711461396 526693849 930335702 960361686 969635043 608886383 798915843 609087942 611651584 535761762 980454737 865185335 881432351 192319599 943389923 548665498 885168931 19130468 728570948 404509545 836100131 184258159 308140634 325878536 511681947 652305410 791024613 5166197 806791627 690897203 826744430 93583993 136604459 168405773 413354527 271819692 674818490 79786608 678316819 841458889 951039358 727422585 970225524 779087902 935341134 225720491 630615580 444997157 919441918 715222676 898983953 417015794 994114521 812488907 995541901 26482822 81388779 508739323 808178140 909904258 925392154 663732820 746601966 700903193 835234578 88189982 289910896 700637546 974790223 483941146 825091198 943121337 994584848 43002592 292116925 311548510 529468648 653412800 696345519 870301548 907713119 947940790 962142729 787400263 839200911 659518233 987300928 983986422 995940937 583660514 730331175 934857625 970028416 806402357 848143667 316893723 962214038 284162784 349943188 773065630 813630881 787581940 933291380 474038558 729510181 915418202 952678821 616001634 918461283 276301306 461152375 61091315 686033282 947161256 997943599 114254902 128653180 317992479 922655958 872670245 901255447 148249350 499517805 120702412 660709659 792965885 801877352 295252689 651325291 504293303 938759853 534730076 637988163 280435786 764843416 445444585 655269173 119266864 666884848 65889786 499206620 174253389 649729938 35124249 608733654 556214453 659441720 73468576 401628972 747995328 945238703 786927776 971745316 372579422 947717800 93295883 592741976 326207320 802175833 834077546 988185734 934463567 984733581 592745712 992186132 57911602 353987722 823350218 844633240 543512700 575922824 822772165 957079712 876764187 878883427 433537886 579831458 613441119 790260984 215292228 717065057 836628064 974661956 182116607 871291752 555886028 963038981 778081237 869445918 478377096 525478440 258310423 530882306 697307095 903562169 800083479 981401690 112660720 197439693 8996833 451482678 96450986 574371727 43045377 432821802 957918505 979577657 540482489 762184507 502548784 905804753 480619990 965231346 327624555 999211519 13556336 708213606 389312134 805660382 525471967 570915688 86788946 152292279 947742501 948527552 427894183 815443569 272564127 273791477 746853468 764900524 105617527 871364640 851829311 899927797 744382343 847985157 246303690 395343611 950890334 964742419 516390525 924812711 653531068 688430060 834380027 927209412 858867155 925689362 853102037 930899146 90196462 277632390 458697823 466981206 56066389 167220350 810256785 954009825 333809698 874678392 547889064 891066914 606393207 896965837 529355727 698591479 338507872 656282632 148928233 642227597 659182099 813335695 339211450 940699202 378457238 830458154 158071075 402101457 913312740 944463980 876515734 939428229 860427395 937686359 775449143 808376298 41232383 241069097 718030052 830477818 62695042 966175570 671994900 851287856 383345149 481794455 872817390 993927748 235033598 814327653 803562489 897125113 763562848 973171774 232909887 843297343 293944047 777437300 207256391 732077100 658587900 890305483 385010143 753017091 194463104 486925093 24105751 926106087 933934027 987678976 777618192 915972322 49107033 439935112 259319024 540456113 787533578 976803878 357597835 725554197 701443805 840649270 239591064 539350154 282951766 512881539 385976221 924118053 424237791 457264678 113746585 716472863 263970644 735848857 762179626 897959488 475571246 700723490 864659200 917966706 136100476 969163214 577929553 627454347 962982667 977609744 779850667 847546546 984157511 988698299 462841345 520272135 943492239 970558456 972627982 985596537 678011926 988637301 73661962 765773055 346517044 608702960 202679900 275002067 232269019 550191801 772263976 816842904 291391242 545460390 654048536 868445525 661879146 880595845 255706599 326118399 781326729 935547605 965702967 982553323 844565225 931777300 575591640 981084736 869430150 960534937 886983439 944484050 643820807 925614682 14662371 36554656 396094382 838266761 518181376 819123876 337454581 942545110 693414733 743625636 879519935 933003565 597794436 987472335 125714177 588273160 101020408 713789167 223402382 485291101 565444847 928052392 674325102 789443079 28838626 964625697 400622879 813884426 847134 732475996 939839833 963838617 473240614 540947640 716222230 932580195 329676075 580607828 732261306 755247766 607989063 912957188 75851008 287314595 157007270 372564993 298421183 775646569 941134600 960618332 941785912 946065098 673121786 791475370 904673604 958319407 839999439 840018570 464855173 874607400 426458080 708450957 512319801 819029571 932732412 960627008 248991068 742350564 478178074 809877011 993626945 997715552 882485407 970352164 882067798 956542217 168372963 528801512 442059390 963270524 709212038 969389835 849085821 916343602 970889159 991896280 704236834 758432227 998618738 999554404 773306591 969441182 252246452 266585157 347735977 988916831 10091692 848672708 194714304 856374823 648090070 742850648 227213334 767710661 574919920 703556002 904017930 995510267 538922204 724282565 454388065 782480135 162129725 861886300 465154145 910542412 628792676 888608649 430299321 585161450 31756255 930173533 55868298 589619150 874809678 881546173 109536898 849317657 424296833 506816053 943231533 956147606 587350338 775898788 161312883 252019811 811528977 930748836 713457000 846836104 610723913 693020882 674588955 989180703 355847772 443486189 231917727 977962572 817054457 851521949 980622112 986500100 84834168 956087418 689643610 907766466 301567435 303640516 760512337 800828600 815394154 863466199 528774394 869330594 86574314 705556555 107450421 637827776 172084069 848042096 449216829 495088504 432320582 580813051 744918033 956875077 7129249 658423261 896952947 954313172 717408395 971367126 354607708 681993905 703772570 890062966 974017045 993390856 289879755 420338132 885982110 946134307 851796237 910278544 789641800 939570810 91807233 215373027 895386019 904751384 382455724 590829981 793190573 860470185 236261121 535900444 77123320 778138043 551564137 906823057 766678640 897178284 743091440 949644511 765408507 989251406 162421466 877309421 66762046 752237853 73977531 778637442 241193517 254308364 859884867 938425273 545849148 831534474 188923355 377507061 527870200 916491774 693945079 852352035 382602508 684074006 36945924 945009333 844171988 980269899 222025904 510782017 492923939 711351491 987272738 987351296 593423628 935600011 428519017 843115929 450125920 600718554 530826277 644845394 227403404 612376616 860309236 998415601 253022927 929235915 666064164 917384726 455786022 472947879 107846944 499156487 101525087 735701493 479414572 631909901 586626897 650489600 796316679 819316732 767793420 941155748 849907962 909209710 575971176 697478320 895441716 905806168 222598982 598972893 287629937 805503748 665664822 741410097 681462519 903779814 380393592 812107983 968162273 978680926 304553694 924147064 945918838 972052019 98359815 589249043 440715159 996183234 486090986 537157938 82148285 318653414 543039872 606717387 817169631 935123282 222560850 830749186 658179555 852355204 418948610 523475778 487509774 627723965 105617468 822110219 923497793 942093128 419138782 890225769 805562887 999534830 3167698 912788378 22546508 718670304 998405472 998879130 811376933 961730002 260414530 408519510 156750839 840143727 54523289 519908842 183956093 427326824 848820929 868715617 88368306 702777611 464586662 770998814 338978651 633742892 580250389 829358513 247654197 260724684 543622317 868994928 343804271 803896211 352452615 717030131 975296807 994360652 477112603 893373173 864850931 992774114 101680460 312279030 748964258 768682879 979973043 996910749 125998575 745638251 221818427 609711707 933546890 974582110 480402122 492646682 415954571 475565886 502011330 600536454 385545048 988308640 555690556 713008120 91051851 685592626 582733506 596405123 279371781 869172159 943992634 954561945 260450937 425183861 749711462 838952702 336278066 778911925 859463375 919651907 799207748 997667757 297649275 696399540 854133774 905315555 544276199 766376044 980541546 983649124 317930321 805103737 747069361 907577145 688657708 814573420 380985199 566353872 475624810 681216950 437691244 847603664 226778925 507783422 859071729 899782136 19288107 827598825 152734235 400300759 518336430 726825903 107545459 435742552 342244986 699331676 735555422 996852183 255600818 619596160 370368453 971431136 850189469 900455158 355325363 999890352 717524045 812936223 320538245 586381132 924016438 998477383 1012841 697077974 940619455 977656898 282545783 792730044 645513056 736456484 854253797 867309170 182235794 584438069 349430158 867073936 48374949 421835811 180172997 828489856 857127006 905798649 782886252 797771236 512614368 903636833 311945777 870289534 324040347 949846554 668371082 756962740 424175951 906268507 110743137 346563187 466449560 769252311 800697729 925323079 635145013 639980666 340501234 462767626 442999441 677254793 547706757 864358454 873894389 924534766 673204476 997165959 591098812 899520376 361549813 372442265 504620484 860233245 148752442 215042294 161780789 495320276 550100797 770326303 691821962 734694511 482726341 621934964 881212672 945043802 377941744 586867629 234437458 558966406 785328762 860945327 630147348 910514941 121369556 995331739 936333708 944663135 284266858 541916244 688437766 844291336 506830222 780904398 568127377 998541114 474090545 517207347 698639239 987467932 472842772 940444442 321684335 992408164 845845784 862902604 86407737 502786973 409583776 964267180 476264975 502526836 321465271 476519805 637600497 738174697 709156066 790484021 40375006 71533035 99686591 824048878 725123928 824864590 335154593 545021631 423741022 782613319 612443076 636243666 295674750 835738990 603117922 933437983 287266771 291024719 721746711 739945428 459193997 568514897 190764636 434616387 26204763 517332726 412490501 727753615 91353354 202224987 492080175 640199274 734923309 971380893 161505511 913371079 790479049 858674037 770730654 883663949 528849100 557141106 636133497 699407930 496443429 851200431 670342180 700808125 131825062 344848669 427011983 529512881 328204723 934458709 471101603 991862279 728430426 908996579 527661817 822182348 204738166 723021599 936409232 985243930 575972128 911935779 910812539 925889052 548808609 749959300 169299032 469267593 680418747 684408262 644374080 664726257 71720009 253512690 105109411 785362246 443777335 540846340 405321486 898706980 467849305 938826997 461165596 860344734 911532766 950057000 186807629 969659044 955908546 995201915 420524273 618024014 354879421 403651291 170710523 601913393 398432823 511839207 500379796 868265562 896604401 955267575 545358486 560659912 744288178 957961888 623985765 858284354 581131913 912655125 463298333 532829031 977932282 994814920 245442376 410760672 586609545 929553289 75020362 215788713 34164819 808787528 729575673 861312181 208999076 765811340 691700214 808920875 427602901 834090475 933123633 976292294 960235941 966124867 352903665 964905834 526264939 898382215 99773143 425245147 32130925 828855897 198598164 431084295 660236281 894897713 573822149 925257669 297532414 385959892 226551941 655081493 560918207 766589954 333990682 694609797 728939990 862805134 745414545 982941260 193941079 497015715 752307369 863326392 488820380 602679163 337132810 801140098 795909841 919612246 50857974 413224954 164491418 586305435 848900150 862823678 665988757 776043087 923593765 951241587 317339771 635042707 737145824 901872938 770441883 844565940 133573955 867984656 220403277 812945175 408906274 881939637 32307079 879338365 240650496 348977433 894239415 976634593 53568346 917169528 617673363 755295447 996093325 996691586 399875356 802941301 269486500 659879970 612313616 809430064 550036727 788298863 54414038 895264933 466998529 593187853 786347171 837570123 425696968 521391215 813122497 815578841 547893375 687527985 576557458 662852084 81840559 710857165 111610065 236247104 431967611 443556368 555500401 985375501 399571455 461728485 565731778 885737279 208057155 815917825 983784279 989608234 289370007 797980672 154116356 970933933 231589031 813214133 304073428 436950318 358622835 760349036 291460946 507373159 328582039 923390801 420467218 471869400 167039374 275705526 100456440 469883037 95261570 438903840 100850094 939036264 376171718 760849005 138513612 627973085 776731601 784942171 638979393 752419230 826862456 995556317 93444489 202219944 844757521 988727509 727425026 895102768 142558921 955599042 287673097 740395711 693186236 698119068 934284309 993212543 536562513 562967445 472206078 711497445 652596934 771077591 717989292 722125907 811360830 871405146 504741717 750336774 431929585 525346877 247694667 478643974 735392201 822803919 991924033 998489688 334862487 675772642 76934342 689168435 728574114 945203019 155460914 799734252 789205993 815806034 764798098 813027649 373926596 378554582 724094644 862718495 195796210 399735940 379438536 682757344 38643198 226896943 434894117 535533246 158717695 592689715 257133344 479560749 147582938 911193827 310818814 932396201 289251129 555661807 253898645 537260140 348712596 859279167 329700672 579996954 466169977 686498442 804868384 931603595 668639119 870618890 795542514 958935565 39635855 775943029 587151716 870075911 109855192 877249804 301746486 848583080 993010953 996441746 572831961 755778685 789429698 813381251 688491145 949070505 864190019 886824106 137770532 762394927 168754242 590390796 792095211 878086521 925213315 982381261 605956486 752079590 675164854 917840120 680262286 901869678 927931810 964098738 205325206 574111984 202253264 503348368 772578026 995943690 570796688 785949426 539002450 658252683 62864035 503124345 327841460 551971485 629771430 716736856 413530082 615929578 927546914 954829471 712807737 833005075 150843958 993102194 304887787 340248707 234348982 917371683 995831403 998616672 356134505 672297763 417730547 437348008 911304917 926784310 134335341 925857980 47961815 160622645 416204487 572272383 441343555 878828364 748994530 757410951 18021165 181638381 37572089 342652088 604064159 786851616 549695352 625042246 423064419 730910369 324677117 465682606 791194346 819490935 317266584 939051823 115550702 672744999 539056376 986905545 41539083 349348567 381642953 519095288 98938807 937653573 757935620 786197011 450992144 709955418 247539340 562671125 532644089 597929578 805385587 999079087 165278257 895531802 487161362 782718625 234629994 594299239 999740232 999754075 854715620 858483448 214568346 316759213 505266487 738842253 269626855 379421550 470642961 818572330 36493775 71546026 999969549 999991974 134393077 425791159 950907755 977149464 73565109 572334796 991532832 999500450 903155171 920652653 666004824 823376722 420147649 572439318 732455524 835592893 780211428 947848708 688096186 827968297 914630859 946537082 442863106 971759291 526102135 945642248 513951503 951117936 430753889 615849184 734071230 785947705 490538332 839802668 672393901 880462503 250158992 765648429 382813145 738614750 633469420 735444346 280335342 391630738 778811162 929307548 442730536 541322701 424571403 808817526 531395445 828429921 418248282 620491707 374451790 718746625 251057709 635981866 561051217 950437731 235066838 424040355 540766994 901083206 873835817 877949343 397581816 416085176 525480995 772411174 134361929 138211954 770272646 980252151 232423415 802750875 481551522 570655536 421979236 845831425 720375623 880354470 192117119 498789948 209145814 757467466 482719678 635866518 618104031 934192111 881511626 898397192 318155802 534477972 956707101 983149577 591119492 678804286 190233861 917690289 337849220 643313813 210829792 772932783 409554269 439811108 755359158 997608193 486178121 725860075 87197362 624243833 838152629 990433168 429966135 984700064 882618102 943527499 618212202 777573531 742875008 785541328 897884301 963774198 896669971 985441386 170679792 317180139 506743814 664564990 610083499 977540041 199228645 617939827 944092346 953973420 540387796 959431224 913378770 964517036 562808108 719484050 984222490 987465231 61504000 524850454 809550135 997010289 397307465 693079138 384671576 995456240 278578429 887852372 986888743 996013407 4085090 913658491 422246375 725109273 237678555 448635112 390832492 508789398 964318260 978926437 709770216 805276187 433388954 779302168 207928653 288643549 725005181 795605701 232516290 735807666 70670545 710279785 86775431 784918880 304688983 745493484 457156727 643421281 75473668 589785852 523476418 971792000 832342200 893882295 64284810 259843502 61848888 741903539 220116556 569904009 53016134 502874071 690874196 876456767 505039276 529051235 128556672 519917088 999613642 999769489 33281081 465036055 376717561 737102863 926441879 952010118 380117554 948371038 983770895 986288523 227755478 312820565 19793059 174623118 438378709 763533615 56097336 254465119 684257146 875044218 717236690 735333542 697394360 922442577 570851440 677788217 615473032 861932594 140118994 267076431 656922245 880836305 471822387 726616646 704113707 850309793 390004879 519068684 400484289 448584124 469574131 972212613 109378418 345314277 495500006 521357012 47829302 580190082 926821044 935446126 73098250 329837221 268188732 680852783 292000661 840461593 210380420 402526171 945395356 998362310 624957363 781246676 315012398 728376215 522282708 663933714 154665349 265888939 577790905 869885315 222377788 383812453 131222054 137798925 553715537 687465264 451974079 951017495 457501897 631369168 760234139 839171091 119192730 623601238 981596961 991435644 844234178 999381543 583204496 898576246 233476972 570492620 63291164 522439158 320263181 734974131 515498017 592937107 916136479 934527439 98117718 183805260 605823074 950075044 940486753 974511813 535869836 796020023 693969483 853716623 350209136 757245832 672370619 690085437 386344298 889089229 541561471 990704660 260759106 722403488 436728905 562048643 317604148 358977893 737895206 920033301 169900004 248501226 968747999 994147853 190941716 754944594 182743796 376276573 807578188 941079509 135435273 581263344 835948662 933910445 627887842 846738658 876988435 962263416 986181663 987936117 362819539 761926315 353106495 608180104 888641084 902853806 624083132 796775468 532698113 796311980 357833646 453634239 989565817 997713776 467161936 820768238 798242667 857763641 627963039 679862949 468088729 596605298 789695365 903855311 55994974 692815592 612286595 971710998 399486647 462226560 716025378 716712461 227807200 973304556 663897632 859916875 828449851 931588156 102114802 695133288 230875581 458339479 271200427 854103999 742620750 882764534 562628245 726848034 432252409 840873048 180184262 999177177 533851770 893496242 940281277 951267979 714395367 774392867 115795328 136784992 756734027 972013980 855042823 922693209 989409132 995712311 805400527 900713720 323199879 342565100 952552366 973570794 64186200 659812936 374000554 695072607 855574569 941778032 68034913 139708966 104677202 207861659 958756584 964386480 143201784 725070671 111441635 164364155 39422013 669377761 537178834 749671389 983074427 990290165 655937232 676390953 987037855 995479668 99855952 636616505 981727192 985844301 630042548 818787549 711453567 850977167 830405447 953276701 74969734 890738891 563586217 665572266 879108677 907231929 521001650 626658727 621538447 726604883 185525456 580839301 178289175 735055944 231498020 265179858 984338971 992510229 663919492 737187943 706190038 823827816 626176115 763841938 629758670 937970400 462521401 910322244 214834535 843505837 247300264 632594296 758196467 810141215 763557996 948833384 42580370 79600032 634449866 937458507 770200351 990249345 832773165 867979036 471793619 472708425 88031078 552328069 502571362 667098236 654610480 901112069 138956735 195634498 846343810 902048090 439566020 961085100 938509710 960643053 579362926 590396565 492627420 644390413 612573828 972428961 279895360 594821019 197228711 923436539 718254543 912679077 642324877 844233178 337250794 831599253 711159836 829783204 317428730 343254051 332871401 809650909 20899333 25414524 782038641 819882162 83822156 413928927 674069642 749651864 651898516 690115143 152555418 256279585 522558228 752075589 959570266 961980719 461302762 852896423 24974372 658800169 219583146 689510175 238262163 739939912 489465845 730073378 344010043 612663538 723797542 747920274 417113436 862822826 928194877 934116836 829089094 847393964 701098337 978702209 262270860 450530146 882149297 954625011 991860343 995574920 745897228 794745042 489945321 953838435 775540192 822794049 763950511 809335546 548885800 566616765 201969503 401912796 427932731 652020766 549390895 904862668 185482248 383821763 547222782 861600685 902039654 986630899 116933754 840895106 634774129 960171553 145312710 421380712 942870655 961118876 715880188 769948366 915173305 949331498 330619026 972563257 524600361 980341341 402214741 805061410 128620470 773667829 805800251 841003241 94669601 365787343 67311392 120825787 678983872 950506431 61431152 325143598 393285838 764213100 28508144 318738068 206284304 815630465 635643465 842373157 739401806 866573129 291794372 737872045 811974380 978858414 994107184 997032569 295399718 504265240 177654668 608045070 351122493 455114954 225293983 571278560 432796552 849677697 808391176 939541253 913759367 978925557 869987835 981788291 591904104 891143564 445306088 951995016 322890601 786775316 693600987 914575718 855388244 867524847 882765299 951967151 38984547 643466549 45520748 476380259 124737292 369176756 459844787 547905645 330910864 985788555 258420879 271271682 988468622 990763545 792576817 873485775 824493874 983897689 415709583 820429109 365621679 876859127 900333673 933185856 867304739 981126179 434796437 706640475 245548677 503868582 556529544 861920913 31654299 299880906 804339854 906339971 62118773 663486380 243098834 646680983 170384415 404293432 737191475 811522744 661908039 913696884 22820768 969734074 293611540 399437431 964711773 964755528 139985410 188051122 389250291 850504301 749966218 815187981 983921292 985903091 392181786 569200825 477013961 487290738 811901897 941984183 693884038 709280676 604292319 706523552 920559822 995280153 393284548 817408110 605135948 888337522 164189467 943324886 11406868 78608243 121933123 950831083 420106936 563772518 354875105 652455899 305253342 445412172 889040380 914029296 971544924 997018090 262410396 422659682 123825928 982590998 942256586 989560980 723972183 749114952 259897809 443884251 679871404 780361906 303485656 517044024 778889175 932214270 648316358 751497098 869384448 926385674 233895675 831733688 114319405 446879286 989170378 990063316 102411448 261167666 145934841 758329583 287520503 908781473 82220417 842284299 52583548 64447519 641889467 786207596 583076011 731848797 585979189 629340919 659377404 736068189 881291525 996009851 695455735 761559075 636285718 884498904 874869158 998419387 697296412 785153370 875195140 894410980 280580030 590459138 804383840 879049982 897718737 951432688 313800495 988830481 61584814 898058041 999174651 999996451 762975036 916881690 183064370 256125660 402810742 724274421 835015932 936092307 689865504 851869860 945893257 963188752 12774764 788699251 401338915 803242045 357009410 381113435 64122121 897083773 624554124 626837732 153821064 722708727 770916238 935013130 241420958 970764447 377335495 573892095 574454006 755758114 122315472 606937497 271048308 762043323 630255337 676857156 957838168 994565495 253491009 261249392 397468661 560295167 986842879 988767013 354672852 813995950 821517365 998418885 664413626 715938309 751891200 950956388 434298553 443765462 460836821 595318341 637067352 938684157 704890801 890503795 171382260 194378848 602103497 683007192 698604410 745293608 428263408 938952563 83955335 473160415 43933443 157411126 463578087 855699505 326271182 713060592 954271273 969493712 511545504 592473401 306109131 624430438 301549570 567238780 116123919 347503392 939463840 962761796 381277632 960823344 186354995 802861490 880172002 898868980 109211334 283930677 495681729 958824852 840167442 864184980 911977556 980700590 529953586 765608003 52469040 373013677 844368364 990069827 142450239 393979041 923029097 961484346 334230125 657859755 164089431 319363117 968280529 976656612 138254431 152440147 355420997 724663913 72599774 877191634 22989778 209609426 379120449 779926045 399481109 894931567 298084467 630710551 886932270 943838460 717901817 977536834 377912452 551989485 155545231 616505428 921230217 965972884 114527797 453308449 224877623 593436262 461340698 789926568 967924780 977487084 118489189 828928019 90007104 331457366 62273527 640232655 454957780 786078235 576526916 925211948 531709879 660845317 690374435 994798333 261188915 982722333 94157254 586715313 949481776 977167672 448782687 754805179 986950796 990149268 274302264 658890313 968164286 971941770 365758171 981684834 378726251 790565544 931154782 964017282 721602092 829399753 684998619 760996264 368136446 971763353 350415362 776086592 399121094 836720247 229830481 401607959 387424771 610395450 760789256 843042587 60287693 683773703 712898650 961032012 768543777 774418798 31841031 903466706 273066330 415354453 856793021 891400155 412798236 919713351 376405195 548117588 602988150 952186257 519938391 648589714 735480245 964794659 859734402 954944041 693512892 987372253 996528400 997647046 395760212 803618985 401777902 791228808 826072975 921853313 774951804 991126905 963501424 972739153 16297951 319177829 372664837 374754553 258208679 847762981 750940480 852960970 396553837 440111771 633332710 954624260 788971957 931172615 635863400 711132559 756687548 818508011 877174243 889203516 963866576 995040854 681345461 852373502 723581377 917183604 947899221 966098316 693389593 852546792 210833557 750385785 674061354 836763449 848020523 953636565 179632845 361571285 32308331 521172953 276748721 627852183 457596471 904569172 566932382 984950820 661713503 683979484 628157207 762509324 493389432 951726615 226749124 490953053 473376918 940065248 350990908 952208485 483389491 494455840 486601569 499600673 783649999 844157218 727328577 998677535 118294658 620499691 483915190 508680824 771842075 816332012 985450174 992620310 209396981 341617898 525960171 663142112 535439961 819237924 529458156 778151409 364265035 501739535 110203487 244903555 560254296 952755030 631892092 701837151 615387751 763664280 407878225 477863308 753713677 801857576 676371294 744690870 701829333 979036967 320420833 374341806 929136971 929194730 335636126 579676044 418110579 897192670 133352877 872382566 696901487 709204365 949533785 990535132 670036031 896127572 510977301 564997288 144765203 850055557 119976321 923746249 563675466 667731478 88181169 110680639 679603093 772866217 635386787 932924684 543561894 583295601 645574325 665563815 133286614 748096795 477985878 787208016 638823099 774475612 995837824 996261349 564971916 628651452 405692035 445744486 511211659 998297031 314259472 385644300 263127060 991371208 360458347 538489027 125155261 471737394 255763291 814791993 870747442 929046470 252117754 639967316 55141260 466950408 301281259 392470882 817123701 829033319 863420165 958170828 68812711 660532558 881728566 939301954 575351386 867623316 426495919 452157523 59137642 207263498 435012033 896988414 679575066 751614922 879732699 915834050 704430236 783721091 628242418 746068617 938434547 943929975 310153630 508308917 251866345 879813913 279608578 538777665 138110373 247737006 817428153 966189672 737265480 766404390 232879797 566383849 340806114 994422551 448119444 543834933 608391961 865054174 645509153 769303763 914598471 957898912 449986097 520355780 755709613 766832954 658170813 797981841 221255089 539352735 61525656 883292913 220127384 969293901 539091761 547302991 587499980 929949172 445803202 490412218 828210923 948415037 498908187 840528794 34983412 179605009 511250384 653306748 990222738 991423271 527180103 553924977 45534724 724982484 57152606 351667955 925700839 976690447 435657797 724369104 322168243 991431688 830185444 937233426 204224684 498469367 720740867 917957138 753264038 804185880 487791860 565760514 262313617 701011055 170167729 926150696 56708109 832169383 185397325 794955367 195271439 507277720 859317534 983727718 723539926 981109133 598969156 897362261 787232180 895029244 568853036 613240332 274276691 863552166 291130148 649896043 808250374 906000956 76315348 879634552 842161026 887148551 977552435 980563543 222301598 736090537 5397488 750534419 876826394 997347724 226644683 497155754 664170287 961695216 559594692 952759488 666950884 962109967 547702512 570916820 166985980 441184511 970047350 975465167 626918064 942558878 265486300 734991950 632034270 821905376 503046243 743440195 211439749 661591527 74877003 395259292 671145936 774865559 918054146 993373718 798540759 933644129 768373247 842270083 410971671 446672730 426696133 864745315 493620566 973906089 663531848 766532908 267705189 957198543 173098815 456432361 573933598 966606663 280681246 338055021 185155743 412561769 844695799 927839844 63821059 809256414 394626821 612514519 739089490 983591667 945448110 969310136 597825814 869891171 781344539 941415213 600551855 825228685 73945563 265037868 741612515 767291032 182675428 975977916 400974208 859773706 865492893 941912881 259333823 438049179 675242117 940783587 644688225 690189704 974019724 977094732 893706210 955937829 983824810 995820713 670607480 759791299 888640435 936877565 997020845 999715658 435166219 881810294 564426289 675752011 470356898 854930149 397938200 574980896 820783704 897538156 873726451 934600629 386742367 536582569 392576038 804600344 770465483 927877795 631306107 888548825 797949924 825766821 340734483 393083589 295292912 888081566 448586567 877150170 39961762 158150234 764897790 809923454 26046543 85797695 105084336 669054407 721555909 839799693 401118352 686466864 999033668 999975211 958479624 997199415 715738151 919038846 906534437 981948665 762827694 791857506 429036142 692779957 751000835 798673285 272841560 776047065 696681464 704406373 812204287 817000465 998846294 999001673 712974620 883169358 885893011 950908879 146584604 286173276 66234515 397910282 58208254 678860559 636369137 677016767 887175645 888023195 524666574 797765113 762140812 864920804 68019473 620243143 798402400 983225438 363272623 941690646 228562651 764201496 69337351 425655423 961777738 996286261 582856559 827592284 446531152 696266549 109598982 170384832 116779353 302629371 484261367 569525817 311551594 516702782 414291521 895645502 623801058 904314040 798351337 864879416 198663042 946954376 214752015 895706621 222403458 675147462 631376801 863962400 39894837 555938731 485256262 561507889 394860206 464268517 178770541 799230474 835388348 978347441 734736362 956240851 620767769 973708709 384483970 431326519 273249722 482666656 902440751 936107296 867538897 960382520 184175256 458267629 983196161 992857614 605399137 676749719 615204448 646498333 589997214 827818219 371362386 507146151 913525156 977259291 303993751 427434045 739486845 761715758 826841745 889934036 444519708 683967312 738716661 825113327 951540709 965376262 933068373 969158324 521895651 872795972 853689492 936516920 245155149 843979151 881488741 985170122 870479436 893106576 575610179 631219870 142004100 667970710 879112218 971766849 274369186 304380682 238445105 314109140 771396362 925077129 465441543 604124098 759022460 888894755 218605038 695246425 288516289 765913352 415289850 712082058 196018487 971972393 436244775 815095475 229155768 455347594 691395782 945568243 970922787 980869545 389762641 590340066 637781202 927237291 941129745 980966473 8107296 216274930 969179597 990661238 441684494 713513179 246598380 659322240 626439286 799298322 33241030 314737144 707394630 980390195 19867554 638057514 810188475 868397167 919592333 992076255 615436118 914627929 488587991 640055650 729315760 968955543 391152441 828370096 413383544 520779111 249911124 392707416 493540328 783611303 820527835 854303442 833679165 911508834 737991912 853252533 169274325 312843943 900562501 933623977 973767371 990148844 902565830 999575702 44781278 96621239 769708891 823762065 753938353 868109711 685736181 714167609 3665444 706595426 92711027 588123047 342373077 646242328 506146306 511000040 229562056 475579039 590372578 759944153 831743034 996677260 97668784 708017314 161383444 429958153 528507789 925736902 994314868 997296704 743231981 900303892 857925248 946334892 69663076 213575733 806948585 831385230 941786798 958263864 268641787 721269740 323714553 470639745 950998659 964137434 749378148 871709663 86241032 443312289 474938416 869511519 591488440 731105059 435793792 596881441 412745295 441927076 173045796 386185611 235473572 261499012 300026205 856221880 218413553 976045273 670900004 744216634 499813393 929365484 674867967 795797500 519064762 961804945 979177677 996252371 128395134 741420129 773160581 932560196 434789985 606076312 564756959 801801370 735321275 976533389 260305013 809189900 619395128 870642513 825231042 838298886 120178340 230941211 582339192 920933172 655281216 804383408 12755627 167496092 753031882 957111337 886682271 985109408 355741373 630079077 771412323 851667651 164559866 555446304 2996278 755058764 358145448 805328880 620310180 800855948 215699756 501937203 84446365 849013349 336967205 487720202 138462771 708831286 991634262 995093828 240139459 450501198 229790570 854429083 739177620 844346118 916905099 927867602 693807905 870400316 347033668 577531907 783928529 917091301 645679360 760028869 710102488 836038838 5082774 297672840 670948784 768148131 958811123 973919665 801217384 852002245 230106955 660000520 6436289 923814547 167399484 817836184 603652165 778031300 32930013 697369397 900384073 935051212 694907457 833378845 1577148 700766382 924128932 935894012 324807725 732519667 531783494 617008662 257490485 600849627 440765263 826050359 261409247 426692207 784691605 830223122 767749589 979726088 452899850 983643249 907932805 976540201 412798988 907969781 6834668 888622823 523307387 798663629 355915251 405741438 603556082 751937865 488358321 863571557 46303255 904695936 465469755 706074515 512315258 631421249 450104396 686587131 676169044 893577216 749785588 773545136 228658507 579694851 518607231 725690699 644416229 789800694 517811413 677285107 507977891 879888571 340247673 697139039 300723426 393805512 185172861 244688662 702795621 718505341 136563878 622591815 399154697 899457478 984758327 992932854 82984328 242000854 899829398 929745095 195604038 847059389 936184960 948443972 974576482 995015847 872680398 911869647 159585248 886617353 460607828 520670364 509573168 952312933 380768671 622186702 861743234 955330303 573803130 866508971 967658008 985498089 114208074 965370503 884942541 940679854 148871915 972215851 641493501 865266100 269980741 817722879 771540606 827675770 821354606 851167250 706812894 967870605 556237549 729626399 688594633 758033597 998137559 998418908 920098581 961966381 308143292 790177393 670008840 680732644 208287438 790442641 499123723 504043458 324775218 386124227 342827753 951405028 869877708 931408521 919971977 933085475 941091915 961698002 630136867 740784898 845953761 884703053 929587618 935614298 400877308 489512941 456023908 946205093 604109076 976271127 377643500 391898822 51369870 932086157 188999294 671609884 539567077 822329856 385062448 815403898 124524242 765957830 418046493 622719442 444763869 505893296 195323039 596697665 679222993 704428290 775600836 995782544 545888332 807644835 710369373 958734245 359667229 513759955 52781085 131218017 623414673 835968188 1193389 512073006 62795094 811776402 949498376 982566196 238876521 620197329 776180930 954487303 721309250 754275573 595716135 719912454 874055796 974944193 251282975 337272862 167458607 519103796 6850881 767699965 229318898 811011556 703781796 747500303 857152882 970627623 881199099 903613652 321345447 716605487 23304010 957566324 105740409 506318798 951378140 962020368 825991379 879909315 824281596 932707193 310022638 815687772 778321923 811817110 716581810 839001644 431451883 629184707 166760960 812124938 842271001 920586836 333780825 586108411 340106443 839670407 148797577 516970004 95293313 325328616 423642890 586484056 740824298 754272370 366224627 778070502 698899742 760979533 817248567 858724109 371838708 892826619 636506817 755853664 764479521 781023696 481502383 564341715 465015121 861782962 291170210 595776211 796915845 851874006 739964429 793734351 728197633 744255165 604817862 946919226 359883651 985035395 131040901 168522385 858208277 931644590 246518706 451226372 515227840 597637340 357036611 537792113 771424792 919851646 287676042 490297433 22659795 252354907 319331515 467740092 233285222 342005793 599406308 762150047 416225657 858533950 417262730 696605846 170591052 314836372 120594141 739841569 806822977 931926404 923643086 969841300 342004097 828544492 630805649 956571083 783751475 799639115 595554111 966228151 664310197 756436528 479569820 513743311 715574479 770599964 210796859 376886620 399419557 913142405 539959632 976539656 24274469 524408115 151749921 932822189 595772829 652122071 976218952 986895631 504976986 544959097 519897439 826340606 815639945 991258863 857503584 899155755 973025631 996380804 249413649 711409393 230390509 747019157 529840182 574230314 995591281 999010857 672697380 779904854 931460043 968819975 718650110 951252987 297269693 804780127 126546131 730266428 3141071 656697674 728113462 817672832 334089858 681041403 730209345 889112641 320121689 922012518 891164903 922758434 483238171 764169702 363653843 485755579 816691 429820953 693083813 718381850 798703948 971001271 817012480 990705073 334516114 894830592 937035487 965778987 953457037 956242002 228247760 318301049 25177954 666959408 946215284 968183308 381577370 896097286 623032918 677113952 33663807 134322678 87262825 547476116 627915477 628872164 686802853 902532172 266378156 448448431 431499216 814806514 594110102 865483946 845027016 862773081 137484905 158878160 962255881 997814178 271559004 852725521 807400856 983987316 41248434 604355684 802725938 870932744 686789679 888400471 495529817 624064709 22882150 108442455 714905074 886978299 114261241 870212312 257200890 959659136 82188390 805657891 185032567 954705073 912145405 927504163 493270742 919142160 167331583 615226288 129476638 560333550 877406358 939903863 233996682 910486963 604194866 638092259 310855017 863866078 171127206 948757507 201743783 609491392 265968045 789700690 796608503 943540174 508914640 897450640 557048024 929538412 246603334 491716781 284126788 512618755 476408178 479841792 67560853 338830620 558683438 745145291 771267296 847424600 311222525 374818616 120077336 871994946 904254652 980594451 88613863 849325346 644591708 828563890 344276362 969144178 494387553 734805933 807972606 873522793 384370564 724130005 138500744 342312091 481523922 787771935 286640645 989424491 999413662 999592934 393086228 463153274 345182299 652175781 235634658 747679177 456860155 471961343 548302437 752738213 350982093 765963809 332530591 647232571 624972841 886235894 841948348 961749527 45215434 752000437 455664060 922487986 71471639 971846392 429830186 546102758 613715393 693016286 556351986 764221067 305100890 711251633 281727336 318049084 971314186 972293836 8588269 836202013 723577400 763333942 27372152 106013288 930351357 969775896 889921070 941069927 437447651 565810303 11651822 953029838 312223840 561142227 490687875 762441152 88525043 243533843 968157828 988622527 857593904 921529558 913738184 980166817 713227231 900265762 953122175 957104817 510400166 918960578 931440977 975355856 458068805 602622259 822478995 844429859 266689432 815110912 815502845 844407806 812656956 853541198 215331694 459598432 241142817 527706813 340835927 451493395 508439068 588012381 854581186 971418438 544241597 735426957 34577768 161950424 347365298 696152703 584773923 914225073 120953230 931347538 73006446 952375445 793229920 998419260 701573103 756245932 743652528 749931248 716719911 895818344 241001639 906583953 27048146 411684663 616230608 918998351 665941702 742857918 484234912 502713001 374065476 640228506 265343037 342858094 910793763 945674063 550748524 861086112 948525815 973052396 856094158 879986169 85495711 620672884 257272979 660951422 46146889 195999174 706242239 913717165 37889760 742204646 505706508 646899728 212599745 652022892 22790257 855026932 746144899 979170913 960253017 989711471 460588105 990228999 647995857 987203535 886925591 935783976 892297802 993161097 532284908 548556277 811788814 835162019 183604676 890518585 682632909 876920207 701592336 809938797 202175702 744731909 518658413 755635118 663387917 698324661 169028751 408894185 883000495 906413464 675530784 788915286 632484779 684065356 754355788 900963504 86387572 966033661 17605722 33507471 572509563 846853351 853883950 957832850 277259248 941643943 792294364 843690926 865181922 912435035 153535927 294924310 454262102 817701972 141838200 956895581 652461957 681926809 304427558 453762873 612347437 707939765 584245996 701382711 218854665 530376486 872283419 923445935 106977720 295962787 542366894 912839150 153870536 179885444 95313003 973786246 252076780 446884335 381562479 693074413 87919498 523594415 657940875 691721218 918413092 925037234 310081760 996295057 241266550 752766667 656532367 899872317 929862739 968807351 593317319 676160544 431629664 637190609 95269226 624764168 902150184 995593939 643489768 864551322 970925051 990452687 724864818 784444244 254389721 359745004 970355087 996763414 659430992 970935429 125381951 831922478 292864938 989233661 248704309 911376242 281778351 769440729 81049195 815686281 145034169 946735799 59245940 99839178 146975956 631005507 896647286 920784584 201422539 542757443 881793074 939400320 306679425 893447795 64436979 361429162 599160291 648152313 805779967 951150277 808745789 921253898 699657220 933141857 663925676 754448376 546623522 891907834 60907093 350299842 393044944 496355432 790475909 794564873 573843635 622971091 496135638 738319948 523930797 815304395 361041047 703364431 569411437 953974317 527100834 710912351 146298001 251196839 111158013 728732379 493103904 794973880 724718123 742141434 817105657 997902296 827401018 997470662 744783835 819133710 369781939 411299897 534950735 687191214 810840566 948293898 20330826 244012217 2842964 83893980 158299109 797143367 757430648 902102026 613855725 672537218 678383528 699593946 835384486 968452177 51219429 520716144 174547318 633297436 398128137 902860194 153535834 510526841 586040324 726177938 187160608 194789457 134683313 818079497 514096423 942243346 809060007 966382742 684111604 774481108 118689755 382218063 598683864 904777343 523017058 874418362 980615027 985014866 844806293 962664817 263741704 301117983 644880884 979703136 862875271 962411350 3423170 817988539 697280312 869237434 751780838 776055574 923561991 971492498 427489020 726388193 548758611 749035013 460541593 715286894 841517221 880510192 496485889 686764075 237038472 539719105 192956058 331914983 586203071 694450008 304200228 420645142 840068112 987432316 363241686 591181852 801908533 925653250 895406244 954260240 724392456 883530998 878674666 895374607 36913969 46943754 922823823 964187931 377507410 726959233 933409895 963652120 737852856 880819082 1804804 485165262 968604747 978289715 735857987 960615906 636296668 992128186 303379965 369290870 202418216 884856540 355046990 729110729 109024261 644304951 663944124 962119846 780533163 869717620 382448767 719474395 42431231 343712236 943707983 975291076 672893670 854595273 847696959 886233727 713498082 812534865 40872077 429748317 886692318 956576391 212885471 295262254 866609723 993465660 251377483 425285698 857084309 860177168 502013381 720004168 521052114 789038832 131166887 574639812 449640538 544302625 209119463 946369162 87913573 371271978 887458707 915269365 716652464 863296070 252037604 490440043 363839673 474975311 487284774 561399694 925654709 928964128 320142869 364320770 490810447 499891503 190103714 243216325 599875270 926191617 227784897 883253444 977059504 979889606 736655982 832551453 662200721 839644966 337292138 519009014 822073032 967241339 882412565 937713308 139644120 376093177 724021459 844679016 25475674 736975803 813621747 981697801 609811916 729456250 98755534 329995691 34762314 144194540 31610357 776967073 986350677 994493461 525244048 794373519 249436352 618757996 842061280 938792630 507063942 574006590 62416531 832955672 693802055 802890000 517601978 898527993 914350584 987366872 384494111 595900609 328841471 676160663 846090099 896909253 615249936 909630462 334289418 558985799 244443629 908972050 239488681 489932023 636909438 914751628 951513633 973993865 814738972 912605957 66794311 483961384 776173848 860769751 424677176 430900482 175268481 702367218 189061048 547864408 312049594 358852472 204054406 305778996 980113814 982242753 222476109 550136097 518888881 583775945 978946764 992333557 350695720 590981836 44725506 956416581 738008469 888953075 158289141 678648584 106730267 263915826 34610902 882402516 706151208 765210886 222064532 834775839 201210703 874518353 280342462 497386346 488393003 850717752 422829960 759205913 72560523 81093251 463449399 860352802 489892376 672295599 16710347 907082858 954765397 989568336 929997903 969071187 316975297 943968654 978470323 985970243 530891971 548744391 869503576 968070504 880970128 943536300 486724363 951882148 48211167 444296075 876087578 992308131 484813790 498897279 598482024 987352186 395817100 406549322 406242174 518755437 684801430 840092438 188677855 310898717 715691016 732605518 590175427 717244571 552985642 748152324 365161206 787218782 936799896 983112437 741926647 990655529 190758791 995894011 604815480 642660880 885398379 963774208 926104915 931163400 911246763 969316933 454801480 485960680 899415410 970629625 680384941 889237177 377111815 610006989 261634710 760821429 546683853 813237082 631248047 806444967 100958418 133657318 697960663 882372676 241225701 313390155 597709609 766636284 573409482 623152995 447196511 597668387 732447187 804265300 709851501 839533921 90314285 190688926 537769167 805148614 491388379 548041312 63146239 113068505 944248941 987219819 724193648 953279913 612940006 764508305 721450390 737699348 786264353 840369307 987824267 992084919 515364617 652998267 627336950 949286918 878317752 925685379 180870339 971028741 473913023 672776247 329626202 839786048 559300257 702784396 495353557 853694074 814004614 883223268 656972606 908513305 884941840 908807649 829447732 917231206 729728937 956638228 623576695 860030866 178361936 502555819 621225381 754078578 638314621 968976833 422647941 672890008 534308932 744025282 861631271 987038340 385979566 800184936 926689100 992034689 350196970 620387155 598234103 639163737 966241793 980894556 487897575 804430259 193621808 655367895 20124336 475824988 444420237 872781598 374481001 838693198 21621310 754311930 48610824 288036221 520642005 718614967 803996183 904838137 968843755 998127747 338694654 896232593 623575403 661254012 172587464 352536362 610302649 992665761 458603615 521819577 803266546 865915251 523203421 561253839 886691476 932406447 490310006 937686645 433877002 787054333 699394395 972151834 539620383 846591729 364891364 592729061 472717958 771341556 738574285 867278487 354876459 444428421 137145858 428142000 110076036 686805362 94377812 374827844 134928609 300733931 878315237 949244039 719687361 761738489 780078230 887644370 355489638 714334902 321411657 851867270 187543715 664891937 501426310 766545327 866896962 973686263 884408353 973455698 346986899 592826188 621928732 825638914 494382749 522397684 950888972 977063339 37033536 988278179 761256616 997073052 876613685 936699236 292385272 354835125 215660641 982280164 452725890 849813913 297562319 835630062 52454078 123050899 403020382 879821856 986222376 999323228 275520002 401248750 650693802 887698614 609435660 828996924 366740499 913124134 619948873 674833713 800458967 863153460 790432909 791284039 50810948 887151392 305980243 313539838 568427084 968169695 986662185 988656720 457247616 973576070 827484794 942943448 172558786 361503420 758885248 943657150 845329055 936759570 56189115 770452972 744251083 841462929 603706753 728161003 830685386 857278576 93696919 500840231 2060450 542283656 574931799 696558559 310059702 404965208 711985374 941721945 848121797 949405517 260796259 837586428 585225284 819731493 242562774 343455172 424506751 489492953 868988231 892739582 11706360 230566986 538339614 965276451 457727691 786430547 308409146 690362225 441519033 867382192 124832638 643548712 314537324 400771490 812732290 942782776 659938049 995922554 167906005 540355298 375738060 663203226 397218517 827073822 266363064 313094861 34622482 711827260 995725155 995882466 220669824 465969638 254164042 953160999 385399080 689714300 45103103 437108632 522991377 548354424 592488406 594647882 601518753 906410841 475959973 862497960 671951315 889108786 13621859 228957806 403840922 798233980 41385957 789882576 783018261 958343095 38359014 158621292 735336309 923949006 408133137 972187868 990564915 995005802 102062488 397347655 647952783 908733091 233854172 410462638 884330002 962205195 404252730 574553054 225096944 435861025 876849758 892548161 35733075 988082067 461091660 882780861 550668832 718788595 30683283 107563422 78268356 293368372 580856324 698793053 646030929 968942290 423243039 690462656 18494600 567173526 894668927 919117511 880265212 914051492 473201496 694203940 145118949 633359925 896485860 934380816 294041038 316316766 596387472 931223895 242031518 673481265 147343 688658506 298116373 759948997 816146008 954666611 131641475 547402116 116674591 158895334 133581514 439759736 358138732 661339719 4747561 879159654 985699191 997249962 289515 288579783 121290334 240124331 169749120 462777003 357952710 590890581 339898186 954137338 949675808 956535807 360809275 642588634 870143855 929273824 741568948 939601044 757151477 969227752 987016528 989855159 462021384 950320718 928173742 960999217 883388585 993360019 736977058 866276569 58691021 800864973 362603479 424905624 216976611 294259281 814635107 925021916 431377138 672781626 209189307 821043719 407948254 959586908 291844714 863786342 800839958 970761193 266315350 418441107 106403532 905459039 505191670 988106319 474536224 908260017 881434800 887374087 368337558 886133974 251810582 936968250 336525764 411260820 723631115 867788067 471836262 926021052 432141612 961820413 697329045 976589002 589046154 688210551 34187109 419972847 109808607 796466364 685267098 853634647 24365428 637000111 234249179 842380911 900802451 986085997 930882401 977731273 465655570 760228287 689506381 837130292 304390940 667233502 170187219 888310520 604949875 642349197 381943895 463222142 475774385 970745749 669267780 874535500 17930499 286112042 293327896 696172644 877535262 939930626 978998404 983714418 408387285 884321045 305542048 650860703 390298951 734925859 276787051 670302423 465500835 904750960 614544121 972732213 235332000 531135236 135441959 304261963 191657767 410956867 948061179 949806185 439280450 718485141 678332871 833974651 464356506 979030315 240538713 513178764 513007181 992063493 719258524 789832863 325448441 499822451 947832178 977258990 918155691 931683897 509923267 668080507 740492576 955586052 403294616 815540559 817601814 918683841 112589545 704137244 180621970 186608927 812913103 885310797 687099439 919894981 873465241 889049587 460470167 749766112 503545588 888707458 349998416 825081957 473356017 784206544 300810274 733931080 375610377 849455526 608591479 778352311 912723524 960304789 840838372 842092097 778570069 979107700 476268991 614977990 306684534 772140180 152030664 368401464 254962010 659029265 467592936 884243482 183812198 642020389 917259579 975485245 972576161 978625935 139548665 870517226 574923152 585873321 267928962 426824814 806971538 843832389 412282556 645615852 112514112 202199396 927371659 941666644 994667971 994972479 959078901 968115667 652052572 876945913 886940593 905042462 153762507 956024088 678194217 967921495 246698197 573445121 66980583 433335489 177159760 461812862 737265674 975284200 667468438 699461025 89696460 310769921 443878520 472859692 787577952 829467588 622904233 887410502 504939118 687656769 273388151 841124321 105772626 746029141 192651884 359610221 145450624 221137076 671834106 837139344 37860764 704762250 429385020 772311219 503486264 991014639 356376645 711436382 994133132 996130003 526856204 973233845 712362993 785323913 297404376 625022484 381576424 781557354 960637777 966073242 894154410 992842138 821773364 855324489 360218783 774044757 280464189 876994998 446769921 641810875 354777173 473514903 570749101 841466574 952077196 984387394 549251225 801568847 4236946 940480457 934402422 993210438 607834954 718828084 440158426 903896611 698177747 807225602 92370206 731210943 37675317 198097497 370821592 978728016 474135943 809405739 668935673 957117419 32194698 342493359 483130677 981513265 711302582 850494191 83640789 665076931 330385491 826930075 378841549 845317990 70907704 723373260 546976877 732200117 425938319 636583131 856948046 859685264 994681559 999465191 18065975 322313652 915870647 926958485 615734558 730200979 356994993 979620116 688289185 850226269 168340396 778509427 970380306 985113512 622318660 670709291 371286002 802967883 309780873 336380289 337616846 564984737 735869708 835420484 228256559 874762211 338927552 593116788 486764651 631077875 36845150 954447875 863729084 948261702 567078311 926636690 145182791 375910526 881485779 896116268 599770938 956492385 84177911 658892648 275621833 342049047 155072465 183323994 913735079 975518517 943606518 976254547 504734131 764658507 680110876 830037776 91342848 711074621 785685651 937306507 126156848 167367481 602258265 912581078 794173509 864774024 152580037 625563268 690942792 693893638 294475965 684353916 44903824 726367041 669450480 787205619 190545878 612390386 444457926 971928722 678875833 838733690 32030813 857528336 624629368 860206625 789263821 920012243 340850301 428652243 83330901 925485655 645580344 862662475 871438154 897921487 598346441 777486158 439341282 804186021 254211731 336596792 634511606 910365700 160600084 930948216 856985214 966578307 642039116 738111326 581881046 722478250 700790738 898927471 785550918 912582048 692539862 969468777 638395546 961390145 637481976 683797654 649884519 894810532 38146229 681025544 117172416 369960352 324436998 375657602 623525559 989874897 951124502 978573367 269785413 468498597 779425755 987719212 528184857 744502576 247487062 564622809 600365989 791379827 615672925 979631688 675765898 752515935 45820355 118060998 453537678 649377661 662645800 879380182 99857820 866989327 24704117 917907827 705743587 884427717 453388761 731468028 876440279 961912493 913846410 922197624 38777584 170006944 813784259 823405339 784548721 794723663 522413836 658953353 569472976 658784834 50036952 96311585 735971040 910687231 678806176 785602060 918393278 987069830 143885412 964249368 944566423 984116295 924909913 962537407 652208862 731898453 827932046 950024675 362031314 759410136 679654991 834941242 681529522 952936232 381694387 778609325 136658949 877786476 170926309 789905524 4330049 290837239 736272020 854991370 353030983 380991906 581722272 645659324 951809170 979228383 313342122 431383989 383292905 457800016 669550757 985576377 281550730 789766444 596233988 936996379 928658650 975019750 610390887 965687356 225844764 814630964 514487535 827179772 74385864 305366580 516762093 687375870 2606230 283963827 657781376 970133065 37007091 354245985 321520247 878595151 973698459 988462025 542851900 963747805 526316838 688111937 434594746 815025008 992939420 996885845 457900149 625672189 275115634 593843484 35737376 39655668 944901572 962838935 344537896 549611903 156859394 871364178 122192507 212222690 188046679 524931391 194238955 225131181 29914346 848731802 962123974 999324068 685099097 966221138 687252736 939711400 660312003 785449524 311903401 359843479 706002597 858208550 324680167 995947799 58864523 549676891 88854455 371336886 349812132 673847286 598633663 874726110 57597098 866436706 936619725 966663152 715626242 940567722 760944010 984111458 640539109 672849011 67341292 138221663 831377257 934275181 619388469 812416086 693258809 721120964 52605725 898835849 765013831 842996935 568748901 855950537 638836277 949268037 85962599 248404167 722038822 797692879 857199070 996277205 7777421 128409145 780445758 852962194 804809096 867771176 714276704 933422753 154600162 719677696 509035635 512302598 765684128 915414513 192495862 745994905 972293061 996129207 68172231 233564014 203803714 685194697 659492475 716273217 652824850 755461036 117474079 742399033 384019397 549689373 442449570 850289225 536744067 920926666 768968110 831873830 326140970 815804988 89758717 153278132 114921125 313494627 624449102 969944722 248763551 678589492 530714816 961661011 613506772 947254538 407284932 834078860 42916338 675478417 350070597 453164784 436599665 482315000 93989457 985462159 829089704 920599632 116307723 989693293 366432468 578680258 96552256 176526831 391326067 992407997 557918014 993887155 387046710 635764667 420520988 765042395 975057776 985675333 162870916 307760392 669262166 970194381 624315851 660620307 806665491 912095944 543060601 701045521 759984682 847679269 377985906 604999494 504138585 901132204 909211743 991792349 129423713 412436275 879499277 915051259 778401156 779547030 364024358 902742538 418371145 513985689 585996800 667641884 950536668 950854961 126862543 729397853 615077385 807393196 834373281 835366941 570642197 773439105 438684175 477337016 804996683 918780690 161759263 617388716 191089635 911943091 562889997 944951989 479075001 666463766 426192972 539121445 794148868 956594967 697497988 968574294 330269468 333635843 510710044 856566686 932324039 982836774 448955603 704241013 766541342 937895125 784379517 894829178 495084096 614219586 342071998 599370134 671929574 958319832 263702129 554891461 590176777 929880755 694365400 875061202 12354191 250362139 269743696 746052238 213622831 775958553 9149356 602538591 638490466 997976425 143903420 684288181 746972734 876348514 544794902 762703271 724936120 877190141 385201232 905214635 447241977 660925064 899967882 958985555 477681172 915595556 844763407 958050605 681848562 838547613 663256518 929915208 173238009 892267148 385909155 629533851 94435156 578986394 386603449 947604220 500676538 842180295 696116028 935180908 629472708 742329114 803934358 866804681 770394562 991927368 395771882 706872451 259533011 722639536 596848717 704616014 117400947 244449256 960428990 973238001 252225415 857025470 9959367 137961381 909324596 982308594 956916087 964304117 901374738 995586925 90878713 396026924 39338082 690785890 31557374 507604064 931870732 961236342 491642880 735036658 591873086 749848757 346735447 977831242 639921751 964091663 272021446 276813405 830584306 911165902 86496574 415423363 902272267 964706351 494604894 905675730 332638048 484780110 840716109 882094343 884063411 966435342 837983387 871293705 247872298 484095680 855715585 956931918 88669382 524951122 37220211 887963111 265183806 514768757 625859346 720137761 301257646 349802896 299052487 368936288 298137916 862211258 719151212 967441773 581222811 761875500 12647402 615053460 249887605 896426172 783718796 877119073 411329108 871092276 90037800 662502610 618521276 852167862 812658970 997810424 593717420 871558504 515193663 764084587 173004057 430533552 877296898 922052471 242427929 813249774 275053988 521810065 543920743 731761176 215051614 948931510 326221086 851322852 18279953 39741196 207072709 853543323 103979171 915931725 658036442 788268912 911097218 982099754 266861290 617630212 487181040 714712657 283016795 674319456 486385111 816971392 161861453 350983855 940784306 963552471 68911060 136306045 858527143 996172215 490445637 901005618 617035446 645791945 151035679 957240776 783104634 943561421 29057390 779240652 293027082 596976587 579852496 830141647 991162969 995731046 257782341 298388068 754215691 833337237 767916837 786165804 700863224 827200351 861018114 934888702 573187924 752393132 694742898 990004110 920749556 984431029 370610547 734516872 76222663 110039975 95621293 757098627 948184485 962552200 302314968 673129281 142376715 890253818 405412491 514581397 569632649 676110388 36802719 365215748 369960237 944270505 489384233 734846230 532644904 739583412 241593678 358515038 382728610 948834703 875604144 880932958 960562705 960834415 984322486 994117042 267240043 740924780 471820749 800372038 650438720 806958126 476133689 522452419 600832548 634281503 80872660 854524774 412923183 861479260 958281728 958992192 293631178 542976816 599096039 742501560 751783218 987469358 671376159 679718182 692355655 713927542 815013192 918013058 347244058 403499257 507103949 649455755 148949977 469611398 393446097 831864446 942039612 998272754 728884484 919762383 761519173 945063126 141130517 757244315 697758457 793998230 1212464 962000106 519937314 615893064 235384602 247416498 65606890 917532351 747436064 987220639 715590075 923432887 144789501 399191010 225686640 812900159 385249308 387519782 581824155 907063863 397374392 723963403 778707371 951785771 960705588 983304802 614635115 679282290 277950383 534346090 963665799 995131171 293164521 908250433 83123943 115163201 945404428 980923964 506804908 854400775 380349047 718862245 7807827 404407472 745659379 922548950 536295262 965192256 135280637 521857371 226734076 672185069 970712800 996081486 336813403 530753616 699780379 837046208 184391884 384767730 651914631 742394756 830695444 944106680 889097106 966179226 59309942 153801475 368941421 740511336 125095739 730949969 38093395 646555808 83205414 471768350 472520922 768865154 267100665 979035035 284195298 764910710 449259089 456474909 212820721 931294167 932847384 946553862 954044782 978318199 253722419 491883066 237154430 381800244 578110277 789427560 653987021 951237460 123028128 356366107 310772503 460634979 641684430 927788168 397698333 417852951 357447449 912115348 533582662 979439127 819056306 963358959 235205583 378606211 517871961 796914092 873375868 916815485 649702547 767389657 814372479 986257292 117178201 818973160 455570259 834005615 744185669 828916464 730778880 765817730 526886348 641123530 818977875 908552471 614556153 787313800 170689314 824692028 722289165 964859930 894404628 947142119 440145475 611506260 774025321 996854104 437181288 486219796 45847083 210666163 254302109 716587500 355438142 814783265 243077682 672080443 890629212 985749522 614962073 715292979 750289921 973506341 549374867 669130952 752283228 771009559 459855788 673289915 204994974 499059360 663457538 668674992 722062863 979067121 50854586 122820857 228479255 511802798 405188530 531157500 239598097 414529282 159739362 655501832 26403437 877671774 836061830 994648334 669296263 673307467 144894799 297274420 970004165 994725280 191359461 892247250 421084517 461392767 339722689 734843983 851272452 920070804 168647385 210726916 633504436 893320272 586040602 781984177 823836124 867841017 146018428 945786989 296929703 300493662 326330749 790003883 25643622 26921976 350917899 901066322 192172203 849026794 612087588 795876181 964331577 967941192 135002435 579877190 413762531 723837550 822739862 919421531 773807726 901008982 27139880 263358033 742791464 928531511 640737825 952110287 825875673 965087456 816352469 910339855 31754670 903854835 214112087 950096609 502883902 993772989 352918678 563787881 639018204 667057347 162179516 477107227 385320089 591472614 451171965 480547459 667737263 927861070 574594711 923421410 690662724 915462295 673773580 781872113 299245272 928859302 532483873 794364065 779395232 908347217 71662491 977487045 212835739 369893094 460490620 643539905 205435048 267097214 261233442 873185535 231258115 773964748 452384424 925742204 185018807 273887793 737546352 987922446 906595429 998225379 215635750 454325655 974976179 992601704 860288430 886628981 14691287 810943190 886350911 909064153 47385313 114735134 924032035 991791047 252286730 870515789 107382021 726028224 455827497 682384987 463901140 523986158 152109495 232882354 409182089 611338436 679830422 790621349 910398691 927347704 238949806 403603531 448071035 998579459 4442521 654409713 290471924 495962027 427123943 710341088 229685200 742417028 596564976 671295282 882128308 887413196 953684997 997936447 602311633 944584362 778178268 847628381 503300330 637472756 826919433 986219950 851466915 935787841 502770776 534913083 510808754 667703684 803884243 880315083 395047752 525173891 107974192 993129641 495025546 631177526 30338427 914348127 997596521 998785144 557197385 726363495 941310370 984476120 651522806 903743501 407699294 598536694 536805960 780207061 899818882 963029969 69697967 523859017 505472428 778435730 19524583 686098006 59469136 593017952 808098205 811476368 827499914 934388287 264045449 593633151 10099430 561789909 771852349 885139656 323718883 535782905 49108350 845855498 165793731 442256370 915337909 935193364 261868460 768578607 741886479 755883330 735402371 818466736 788842102 921001236 276888116 534446118 767619927 938894423 136507682 839934882 569692923 990712132 116795205 141636834 151018292 862401103 964294015 973331943 6159432 236052216 175734400 523270757 259581619 642141407 270472799 376682897 230321648 977736419 658770895 830829717 188252017 554151150 445477609 591734942 21223862 408674453 255031671 625623795 887695014 894709528 483678665 655004315 630941751 769472708 332986973 861548369 781182319 971138179 615666490 726278039 170214826 725493871 536787499 754247560 173060544 532734221 406764036 620146672 863239188 875023015 52660854 646632040 348426496 523437972 663183464 694550841 392405486 796813804 280132537 949161199 185846425 578567955 707787461 723006699 905926278 920750694 224134728 753724213 198103666 473506615 991654875 998880079 185135539 619066428 634213996 836489001 7051270 97000526 346965007 850231162 895462610 914903295 165293200 461934277 277310358 486269942 66523787 360750934 292870484 520691923 782448465 892845352 774621750 957635129 558780337 714391990 780923394 984731875 842540822 945455255 17644112 404823821 240632572 327180218 746517237 863759580 256476318 326365291 66250679 470121819 733794364 830987641 532026387 611310783 439964974 464321719 183106862 734433212 810810418 994323522 987587819 989529376 940280274 974564523 500933291 655090355 914525262 914873180 450573504 986293037 659426246 750255272 371122859 638418619 36775682 394255195 97126838 463218557 55224879 171211407 175505579 540281292 970312534 989411321 388019804 563878228 407018778 655143166 525899675 912036793 24080360 227999204 73349556 824492116 565816758 597727389 567744896 878596553 485521866 500099335 14698806 430876505 829446529 898976142 417390493 426654586 866512893 978095153 581212406 829008043 613173809 861804860 88575308 288303784 14929965 896728821 976059566 986475261 696475837 859188064 106913513 253598592 116021886 270327732 988347425 999446695 522436953 859720936 501126619 954224353 222322915 500668311 964411078 966969548 106517471 862257075 176473963 306437341 959632570 995064160 256407488 555996053 376636410 969218277 51954546 133683025 851537514 930659947 708796331 777407149 427619209 975920313 466275189 541537725 136246951 715994336 286699825 632379676 738779861 816728370 803343407 932468822 148743022 450293708 158621854 233649599 771749901 931167028 67388079 238238851 498826802 730903633 558634917 918663387 52904539 365080462 858209867 924518298 965270860 973686650 793486645 793697094 797426630 822532176 300477439 685201841 242300700 911715458 200541071 712438002 257221646 310141165 446813410 716172652 657675584 893566569 703171954 814690769 307983103 718179917 534252450 883411749 126777447 890112457 244744521 663053024 643656501 776647809 145855168 253104992 823439681 996339707 627127216 961123457 510900879 922927246 38174010 629789619 761033381 904221925 286910908 395429755 702587395 837472319 453852681 814537330 431462805 728274289 273349971 480864189 425565768 607813650 4222473 275915213 692642449 990698430 870395975 870731798 263303472 404113458 331180533 872074732 732019087 955703143 233725234 882680040 896355346 947244259 706024328 837582059 674658084 885511263 453920045 565573881 254850596 711992565 284404832 653374483 982537584 998477724 8080141 744858959 837692808 893298054 390496699 950007198 572223521 876315556 344257020 362259734 322879909 345740276 476372405 962055353 654425978 656843338 719977219 945894477 212804237 411444102 342308401 582139355 54677893 125010459 91514181 523146908 418802823 562962447 333521028 758645279 198675677 830265934 808624670 934498419 103466668 593591601 124564721 259176983 378377696 965173943 156348149 218042766 763499318 971731514 94013780 465982896 60595977 376135279 536250953 541012453 83648820 676335449 801379319 993602934 431534890 816083273 531287660 598452804 796280692 942256188 793633553 901373359 64347501 892625107 665554420 926029248 999440424 999687209 699257838 816022430 140678526 821095766 943641693 981636227 585547691 979322845 512932495 915297309 212727277 458053253 130912399 942933241 78879348 131308305 365899820 951213165 59553456 485317823 194026751 365507569 545442583 660760346 732149973 991901721 955278455 971080442 470652235 575085338 331843244 737733376 80462417 610316970 755919841 862046485 48887227 213285932 993046706 998034814 779608418 953592839 453590236 612579652 675470565 815730226 189117034 588530396 483395356 881370038 922901267 942868548 527427739 535669346 285621567 545056699 142653974 920925996 519287830 576478920 918108275 961536643 757089455 779775653 550915320 736596955 895821878 987438754 600275367 781750825 71329313 898562171 867537608 932911535 848147956 859653075 60190495 854251707 936475322 956614404 969652753 987396731 816465365 935519612 406934821 474148520 508414192 705700264 485140516 703691058 350703689 447364862 245266222 737553730 479760623 730576442 969564717 993157877 263903771 989530278 936330816 999742995 58146202 110968599 652134259 664603166 891894923 984939060 528171306 603373257 394741078 692791124 772202455 842777211 61915073 345806849 365930346 671285881 870024433 909620238 791221240 894369563 638891251 644427639 854000797 911343075 34162726 659810711 401632281 642459365 901309052 955773874 617714576 994812301 174600367 683533357 702655782 752593748 608448589 655430512 28055439 943266015 425104675 928833789 887785014 923227082 614588446 883668600 567473654 840547839 84995688 552418940 988283231 999762794 397452488 590389374 868173454 933144193 229706389 714827564 561289795 951332551 654733974 985582022 986309293 999872651 274307596 733896888 602008004 733420281 88654906 150908285 390033387 583744115 665946092 691794719 757767380 881111853 516827381 652337295 227119327 540771694 829984918 867634226 685708815 877519289 614457214 833201841 237866895 781164228 605693549 644607056 765983364 882395786 959443073 997034751 355754665 531692918 815847858 827932697 588121348 918788667 892327149 916711008 435764894 541262297 360779786 683542204 515246817 836636748 140337794 193794461 128083798 334990957 200329551 988719319 342287234 738112932 579377767 881316728 479001341 913053767 461263679 778766447 785344738 857752459 16982595 335888260 223851485 377431403 154305141 229878187 901480650 998815791 978543361 979285131 131672373 887903639 111581391 610023758 389154525 537890039 84795766 179831350 216899191 769045758 833433719 909036296 326335840 990027829 300462177 555604559 334794434 508564234 566983687 927020400 18687510 953931106 39059583 982925896 496793262 675251911 299996306 732077782 202139155 771078547 845990240 941497390 881522749 998671719 621492302 814537123 943360195 966209360 583066054 845127401 211995234 725786504 899249274 992226634 838010387 861010998 395383193 908321648 429303851 808885695 981829893 990628767 367995870 777491826 609887820 809621490 18408190 484537932 264648970 814351616 723657973 735178935 201614577 806633522 440728727 756210931 957867910 975377960 439367422 714368628 2675063 146769479 414465149 922198115 295465135 886843888 529954926 690276569 791200192 828159405 447310225 479900258 377914903 565868658 818685025 932599725 428203071 882042880 263877292 815956128 128048217 989986004 336818001 646285361 741014541 797750235 750199511 987243137 451474413 665036787 115594952 334224376 829276132 860912023 97170956 585462115 328492534 668963893 294516059 824847460 185443840 322283383 197808035 466910513 638215804 905402128 67074710 619021100 140761729 812895631 368785133 994257661 515487813 568072445 108970138 206544839 889235072 989964930 822084541 937059363 237750115 502020784 414915430 840230447 271460546 671181907 801830050 867814740 672410545 772563861 814563374 843819085 517161507 890015127 394288835 627997930 424294399 969476004 502139853 599614092 714448073 721633380 544411551 955426018 493990470 917393863 511034147 939701048 354975496 773309450 423005621 751365044 141543568 749394726 378955938 452639593 583616753 814004194 269225944 887399907 6122064 645272711 470672982 827321166 52190747 940506846 755991060 835057257 879253556 968212730 883926820 977796760 601156500 883141892 632929246 724322141 543166666 757365392 735750406 756908883 460022474 576164604 241201626 932306536 493789394 842232915 281040839 294694034 634976043 684847446 996709825 998286178 400178335 767474827 496852419 734393400 815603905 883308583 1183296 339761242 255393658 341295738 113703431 899690239 869138519 932493864 281131654 317138577 335785014 835056239 706250945 722702284 134920970 534206837 742434714 976515829 376755062 680587098 831454812 913959264 688604491 848022665 781717727 917043241 932795730 965950098 342892821 863573683 311163125 655578013 350326088 478506053 725571474 878331019 238141958 909098734 330925058 851611473 554392082 836434466 331173906 578553282 925970614 981944042 273629438 450599311 731244071 950929848 621986138 791166834 573733628 680136687 311445947 869316464 523002570 879130043 299410324 897673175 887594714 887657308 678514236 704541764 343975642 988835714 350554536 607744424 163751310 426948697 720694653 839612993 555275124 993294886 281908701 748813282 847081952 968485011 493161123 554282233 868214929 920827576 304687992 758062203 794509232 901001986 483835967 753325310 999502987 999760850 484537473 735705504 764320548 953487823 65198467 883789973 539140543 886972209 949496339 990814026 827005888 829161134 846882912 993802067 303077432 352689293 611883359 986965023 345072268 629542635 107353107 301429581 819487170 884226550 948617854 974712105 985049920 987022685 850865078 893446000 841065760 875681802 289217802 644608277 705167025 919596949 53303026 622753223 804523498 825246576 539811399 600140591 101318090 678126614 272889157 751986024 326106582 331605029 961755927 980449813 607881590 855619933 881128682 993636361 414877517 867225523 867566206 970423733 533573995 802348095 884690552 903150897 375066634 612864294 614077783 714199695 392245966 598990226 811901169 876208777 242340115 698276656 335192528 866885115 314463138 731596460 345596668 403519662 581830028 745084269 843704826 856350966 65473238 263378364 443769439 555688669 344514970 668637939 731698972 831464862 932348342 942298252 452223502 555284696 50363790 930135443 958649888 963954685 662653006 778197560 849515908 871660520 182854091 281649183 779780768 809118945 237554614 430392770 514402545 682468065 535726827 912703524 82817198 224161528 520711185 797138412 98925110 258048726 468186174 963921955 123336216 194215789 575204989 638302861 161560912 382685289 377177672 520534183 599787345 894436405 205505701 546686229 28760509 322783941 266654968 414763164 866589445 940842950 370183767 629181690 536194664 977116671 417383914 965747157 69168024 242823761 168172536 313915249 918528784 942929022 99664237 442387821 965562377 973884876 175891968 746134043 732177929 832323002 876713394 943412777 458539923 728673063 240716793 961567742 508773328 865263452 79027985 786717932 126320309 983913519 555575215 848235755 156162286 421659415 898454389 901412654 700389760 921335395 73422683 169879458 399125282 774061797 704118192 971081586 945061468 981342564 57947745 656831182 329087574 547329486 679255776 795531206 628407441 733779785 194150184 662236407 261126603 278749907 358329494 856464430 418170897 931336577 134642036 512718698 898825923 945936032 808738561 848771319 283691052 895811396 755865440 955821264 433117976 543612794 694827234 969536907 874327775 960042963 524442321 675516327 449770944 712152017 894070526 926413149 978001227 995290801 590203525 728749580 84816031 317958418 984306669 986055570 927103914 963808249 861433663 864961905 687188272 761441383 734809766 860163477 556851099 905596522 121284103 987440595 770414750 826184587 15213845 568755726 460781909 732488730 135303961 337774185 978302799 983958384 710437352 904259040 390339805 500871869 53663135 509586863 560239169 949749977 454656463 772024395 839726268 927668418 507276412 852963094 15664846 984684048 253840589 633446104 271205488 870627279 552859236 881818692 536575290 666010560 752940125 840038379 784832878 839106228 970447295 983138331 439745880 882221148 614020582 928100490 414399385 949234714 965283673 996718223 741377574 959588084 921546009 998481799 198417115 535217076 540353131 607303792 35700447 956473800 477439761 565426043 387697033 638577836 456435525 714261378 26169969 630414583 727530413 842833741 498456344 847946959 894835973 943979261 746166657 889559888 719315833 813920590 229261381 465763581 695146243 945648667 764375713 987730798 178800508 392984584 883062781 946200472 681350621 782455736 901607410 970321017 944388050 978578918 257847900 280618758 297964066 800650772 445641515 471098922 606340663 819573338 874258897 953049815 854622857 908264278 929129102 944604322 803234962 840170811 831091481 928785081 640103198 816239389 447822475 746200220 421113684 434873589 840509393 891217524 278934446 850672419 405590522 859145504 988237623 999648014 251304488 424301600 222689890 882172342 896391756 969664996 597345187 983811861 660111947 971274457 661290571 935492133 452929277 934319352 603234391 771554674 634295655 692360634 188441312 586269204 705368421 973279209 697266983 941733035 78588756 766476298 790486287 903733791 803020855 844385045 888166836 930460645 547695872 805995011 357004024 702377251 129593110 163617671 810650469 884234757 30607327 168723977 248937803 865804562 30766886 268261725 89546525 972897409 77699980 743769271 773673580 993626922 557440344 732929196 431325516 677151471 163655810 847156298 314751999 534750343 199247363 946254192 879577175 918685363 192210842 703145131 473147809 493858644 764036145 999622225 309487779 324613442 400872399 748912758 43446956 782764276 44849584 498875700 249283050 796107017 57849964 422258524 305814795 408333467 435232219 666427228 701389819 794373040 543726622 695399289 512503232 522274381 655066617 744681034 297546539 855270874 708668577 732148974 555005443 899365084 752747928 940094372 448322197 782710884 932593710 969145621 106398785 331776497 857889007 917740266 468048627 797332597 781881201 991788155 571102864 962672754 35689213 258608747 253765678 512485947 196619797 876978061 976306416 998259068 38490105 227477287 86091014 688554146 351754462 452946216 276699611 931558829 115603395 441572665 273967759 678112079 183897322 240610321 536251643 930749829 613826572 892962865 518128682 716148704 646718766 925313803 57872364 197816559 808623240 993758635 321982935 814481462 25871218 699034251 107601710 993098459 366221369 558005452 422900114 709232675 167901370 621123969 399060919 819646086 133039268 511714573 229761947 257133691 489883075 815767224 663422391 852431588 366576878 553698184 711197944 969029039 653294775 936775779 616940220 828258090 610234783 956004145 518620639 856680306 811231738 974143398 752726599 879953328 584927637 662807815 208351589 951142253 249908976 268395764 466248095 558058656 617214212 708747043 691355828 891485827 103893049 255553977 908355121 995646308 239695592 692870757 168258146 898447316 309638849 505984068 7706432 916785890 505814175 866452121 791660394 881455756 409671425 519119565 605440553 702832722 871615933 990295468 63805841 104274302 797659105 841542478 307316092 337662766 55765169 246788087 745186307 943627665 242404702 591625895 786837777 903008271 99312095 291967773 942191608 975941310 158014720 885339931 183698878 420450303 787166477 987014963 798895153 966625824 476989729 838399228 741076492 916790564 816668920 967402927 755360659 889122821 765318209 906490749 585110065 747834151 444153416 859191805 276849361 833481247 565719119 879913652 915723623 955936405 11160916 72893783 827275796 962529170 390171867 450335084 184817825 988940785 428434231 551086792 584722042 948588526 49250400 257561729 504678307 690723436 590416204 833527217 127773995 208812223 466435874 709141559 451199661 486800340 804101171 908679247 362031924 814016872 833699119 947111273 288739738 530822926 855241840 976062897 242197617 991878296 756565626 904772370 149180224 335993284 791846752 899100832 462421361 942866007 526642228 714452924 478286845 531996281 665745119 690189321 407683373 741611361 819116396 908600617 6286592 960157050 363221061 515975375 109480054 380816474 967732108 996038456 655435266 678834843 363194568 562215870 694582586 826101586 984372166 989684206 639794719 821182244 949335006 972616153 437111295 782008399 605678240 928167195 143665632 821051719 251744479 535442695 574013458 951739414 370161716 497330785 236035535 474437788 836429065 982785834 755958924 898247684 890076547 968536965 992045370 997459704 608955117 826932356 406469711 488770110 369982071 930997601 206615064 283870537 608554567 656653663 885338967 986993771 681160519 822432095 11684309 549247943 15605421 819404404 906909368 982465814 913410209 970305938 995458973 998206431 887191677 896879521 313732300 774324309 101429943 125447928 376049561 474726084 487123188 760729747 405420051 682459463 970984274 994364776 308721872 982141215 978847879 987683797 760389613 902387595 416689555 786796160 229735416 885080957 57651994 294538328 302329598 398567673 920556638 981741190 17122995 528766541 290827288 391507132 591171775 876191789 774079185 932176880 611503935 728837178 68328245 418151875 374592307 525196956 726837797 817233355 443029786 567588165 724120068 853755694 473726100 588096260 153436592 190226807 488250742 995363297 582618562 633697497 755963579 794556737 625300622 747573709 277417250 572144687 529466766 864189521 671851746 837437569 338247780 704603428 229536389 451779917 788215681 793604571 383814430 976670175 272297016 655253122 895526913 979164730 767508658 994333574 492567498 925388443 793754723 844424686 667289885 926217162 519159201 776523164 34572819 821930933 954853849 993409002 394213824 462150089 581447690 599999155 290248769 931138801 724497810 768517170 952842278 970130550 145802570 400200319 718189077 889803894 758163461 908863782 818353305 939593872 918739254 970099079 452436839 795277050 696912476 745844738 431765777 480541232 316958800 921350514 685632709 984066940 593211282 819484358 4920034 7368505 901829216 950931470 926048016 995704882 565900039 630761732 780041625 802561311 192741152 905160730 626270468 890361933 789596512 850658061 794207263 917763401 599290078 739427049 437124777 905553449 696149363 958368277 511853385 708982102 175655981 661179007 665861123 869320049 450092978 453638214 583145330 946960158 910555540 952109560 933586403 950052674 556113997 787892575 298236044 568834878 842188070 944827183 926005627 946081383 546184624 636565581 570939672 995641403 98623768 209445138 196939142 971193644 82893128 917936198 810080574 965649407 576364845 617072944 359683898 583271624 361631349 997251365 412159216 543345917 259152731 882991123 453967496 862441005 532551004 747754365 363700451 828765039 513120155 788970732 521699959 582403957 491292543 630937840 9559166 428858831 198428423 408292356 457529254 741136335 230297078 408441253 246298538 262740324 990331428 996220889 711297759 904124713 630430246 648455668 233993717 650512847 302075065 330938344 540793871 954924306 528265911 584709713 32966501 655755354 614947989 999891704 778420115 858735702 54508857 856714416 520808284 723024494 420196561 656400422 289945593 960272121 882791743 925601473 950788170 951599214 95472753 152306850 427326945 477764278 326389074 996538501 522137462 552764752 112147113 213200507 652810339 974816004 318519488 365161219 44531652 163594449 880411687 890549379 222455298 542453763 753742219 812306112 334497226 352316852 45036904 653062190 752444545 866747202 207394945 587340627 836951578 996542381 211833270 914020755 92878122 878383322 769169415 978517658 12343769 342753729 889929418 911472654 784873921 950727334 298383542 644181242 655154825 833094453 421541374 703498943 103559633 138429997 175022809 435568656 290444567 703983553 181008879 467806626 526833524 678628122 600653230 651576372 151498168 695927577 18836661 92935756 163514611 961254421 596652182 646635297 819567299 964835479 387095072 960926595 108144128 849470462 724166111 953604135 580828943 772765547 908913073 980739401 137825953 655927549 849233071 931525392 930849787 986318900 183809006 735097613 554267745 767710548 288000791 948379316 364058742 621288196 868708479 895163158 893878418 967258611 288753001 464268580 169423259 191105938 121047970 955018880 521365103 561861204 327889331 473846453 580285704 596977910 327474954 376602394 949360434 992320462 645022599 727022445 237706851 567900551 537180551 827970117 758128048 893375489 959518164 976450479 121851459 957451227 499087749 618793814 816866117 903311489 821283615 950059097 28033947 976090276 445699852 877953538 34137866 693372649 532350084 709491174 673339969 740718492 205760065 552363596 296725356 777985321 410742893 840998063 191646700 307732070 448187971 971009457 93330079 546677584 133477111 560862258 168730734 312474855 601691230 956331601 884064459 941317726 364447099 672989288 178474710 320915641 633517871 648902860 99420484 665081072 471882948 591220583 962348333 998473895 898150701 924159997 212567715 793061611 920779629 972109600 675975896 924172370 380744941 878697072 623684230 982502082 765505283 937931110 555830567 990352540 114575804 599134981 353550117 902710775 944503703 944510383 335877483 933449956 763314723 796464857 51075031 241420240 448948409 460349836 645498873 779431123 776233392 895890985 880110525 993538818 785163072 840378353 341598102 343984797 25029741 461078778 847061593 986628961 369026372 834995186 257272843 448957699 598583841 829752012 484407385 724729434 979580137 987202428 273126658 829535602 107103824 680911118 991811354 995266417 763678346 926753655 32356557 356742276 719657416 898966308 409237280 509343331 653180812 836419224 687040772 864004606 661806711 908737016 172904347 950252052 37408416 321373277 345960062 370491122 970345430 974115225 234195207 307362919 826329088 963833461 714404859 946715435 931047874 959760770 795865388 963030826 869738525 886746888 655446629 804539313 187739490 343460627 872151219 994541482 626191923 895976607 489755439 885502889 739525343 989461666 732001336 754771154 388267992 934565084 168029681 927675471 776571061 792177017 892987861 918171423 443376947 493148359 852260998 928522396 135068744 411456018 414169625 859546855 940571050 970160479 888732696 959684031 174602986 367374114 3132854 959549036 795551128 851489391 409251878 678807181 791828898 822419192 919468396 980675919 472318628 944212877 66638764 306936132 747701762 846606066 761380681 936601134 663194736 754327711 759539614 936299568 132230443 583342301 444457103 916522060 715156774 838562622 218438807 981736901 352517595 912482359 483840588 834944592 200363434 354640404 874105281 909834791 696886392 855297406 39277373 910746025 946570674 952664455 39746753 563121059 869197609 879946319 261618109 833089450 387769760 871915262 205665544 415092169 215229800 645006010 200174584 253318252 38060409 233564238 423943326 584921398 934102662 938691495 498474595 798512728 6659588 698540738 536679298 954570534 272459949 925534177 634852345 696549486 689673411 775301780 314101533 559968888 899386883 904146971 419587655 530261058 266129764 794315002 691205448 772064699 616954524 670695258 522808331 581727849 440579174 699590212 822412697 982456063 148474450 368718104 813853352 943945269 626787326 633516364 750800165 822743105 49770551 695822903 515263732 963889384 969315203 982643188 527195070 600242477 718651300 839563524 349345348 685806366 443181460 552427581 602487725 899222268 714933944 736647830 747737820 778927547 970272532 977067091 977946164 996800317 436167288 973438711 723120946 778247906 145352073 475416240 252794707 273184278 601909510 923293138 892518974 945283009 119448703 866622324 377796785 799156088 387368021 538234880 728260395 762612953 663553805 830148623 381126662 744685844 557082471 979814424 665823186 716113251 877497720 951123711 388659672 812087916 562719180 807464339 220432329 475627990 300953248 497164708 434019957 573118397 788270063 858059281 393750568 847894035 213086091 925731057 92868181 156810665 128187880 914870875 336394878 403752055 871580442 971579099 60287584 408354766 10758911 379318241 54860094 292850089 861358519 940953000 452804327 472705002 999282592 999850118 476354572 610939211 249577525 767870901 83795365 457748113 76338231 941623954 961741323 963334740 611645449 623432934 614644407 624510529 573672152 979427507 730197513 988598804 667369277 688040787 290712883 691372215 284163977 531942639 394262723 698390709 545501008 875510755 5027567 968240387 616434995 744595283 744962943 764157071 229425949 823299478 233700269 518057969 482143207 539592088 919412272 979311859 680744664 750504784 207945755 244501109 597608471 661073814 143046804 656640250 198175018 371893638 910678237 923965633 919303402 939774616 721445508 866361097 423519545 957786656 230150484 330949252 751525319 810356432 907520777 963875891 184205319 823604251 433207824 740852951 450185432 841596979 640528290 761413908 264004074 854940239 423636467 615094771 75405753 534140556 859226219 950938373 775497815 923435158 463394927 956806140 839350629 975281131 270978330 611206981 935415017 944090874 404386730 558130662 173782017 967144819 156031080 358795689 579211097 867488552 14119601 213108452 101638270 419372679 497601814 497830293 848424912 909964158 138734375 276493305 787158897 790151411 896603513 920021708 406283386 668859678 326372033 508875543 78060347 769506515 837044967 887070166 456788463 839207032 489931204 902909950 361237300 597409210 305469947 882881984 999467378 999616656 679880021 748914386 828394901 987822916 423104958 817951181 633138142 943096061 225138969 568563947 354893944 824788298 866845358 938991725 318815853 438823956 250252461 906791356 766955971 843646961 402500824 452019600 921175305 940986474 802030124 808028782 510292657 941534620 508849336 828931769 858494447 962736192 642379331 644365256 415551679 976944403 282498719 643032156 348691579 938016378 202509587 505177537 770354826 845088369 921428580 961033225 254046801 589744980 510936043 620074863 468136110 631300668 31998281 317650229 599881629 805971636 610870887 643509521 293378457 880365426 109256935 157979728 245311036 743410304 313799821 529053455 542887799 665387144 810702978 891833782 65781168 195437721 195423141 492941656 197631143 689499451 742368603 753090283 778019787 817904426 686141791 916435025 345256270 844385106 627253134 967916447 741087276 843215144 515865209 931010082 686047339 724983135 131154078 709569988 334516370 770710585 737689077 871330577 800447380 844059622 934632407 969621797 301028820 493781640 953777060 970823401 459842465 667348890 245116003 777004161 50426362 745658840 594129662 870309994 176790273 243672267 5738187 109389353 383232354 582696184 769374651 886554234 649897487 925735998 242324200 529532253 181420885 839304939 413821708 728553587 388799214 420988920 457964831 813707540 884268061 944783327 319417402 869470231 864552383 903353280 141736259 472028814 863984825 940620921 307051969 620101011 561546346 702027505 236304669 356107627 86940846 699702561 169940054 540321593 257235972 604406754 169681365 753382908 77251361 968890342 49104584 401471841 75225356 262721597 197904747 620596666 899716497 908815647 647469492 966766388 334176947 414595523 7863551 237375036 766329598 902604312 730516478 967729534 514662404 940645058 757524849 764736935 743807605 857917767 758900903 946928894 548208028 833879728 943879067 961748826 233895894 876414892 931825121 953210182 694350294 874098456 42277816 303039575 479726888 873372827 151217346 860235309 466486239 640710065 62275013 633888249 699772231 959688901 700960838 755137007 569069411 686407671 6634180 447334789 39702579 268940319 624379814 706350848 279027048 302444853 534421465 729826677 536709912 945150622 267246564 506370432 129650353 859952971 772001564 849404976 147165037 860247007 993105846 998026306 729888613 914310913 834333545 962167807 297974870 573772849 689949452 787480195 537672548 624879886 250749976 261110214 118250444 157013664 442872556 980336392 118232260 903894610 169248696 339012134 189850227 369904237 675275547 821052945 962114733 993420758 20938186 340298898 3366014 280907687 727964159 784490563 497850413 874623038 870621172 895426139 269060764 769325755 570007444 808790354 833405438 849988574 398991258 999916519 992787628 992971640 96104348 445139792 621094985 975253920 362710009 864814082 462105343 901421435 508794363 732473022 445022720 694317576 694673735 937219815 366774605 541948042 927207761 966998929 286863679 360763103 994007148 998119500 784968595 962168576 27182219 606317284 967093366 967981635 456323286 575110482 107267686 227311843 737573599 949830078 611627860 683044365 864736267 969982505 237310773 516253249 540536793 555169672 939772433 971102110 905640088 990972528 258866118 683115722 31615445 222509706 429739068 623834915 438068190 449293158 883146892 974989278 588312862 990617255 648855264 688941022 163579224 220009776 773946970 818041534 818045741 936324535 827533246 926631183 116890297 618510115 785718444 851044684 691313465 751001799 380197521 822317351 638014820 727845034 651920638 944129966 643893989 770904829 109909325 863714937 24610868 874680515 290388395 329151145 850226298 942885134 556205255 649851853 731192450 744490565 10927621 990806145 397378687 853442795 670448401 950309981 876128150 974052489 997069951 997400548 645886848 893956607 356744434 417136383 387912741 722829334 188607251 737200463 525832607 732837506 546919940 555623466 187461263 479624432 305055459 597195464 419916102 691078319 720074869 731196384 101350976 758374884 173151690 559335098 852565869 881414207 675833913 905074451 516501865 641439222 383123997 467594039 427848555 643315643 599033936 727688603 430277414 927419690 59330987 447455602 358066393 376198821 11553060 698066170 189338136 406649470 141162704 200698966 251254746 334119026 710795817 939525300 791049526 921076221 655195754 987016374 192706606 563638037 349141714 627646964 168487524 507637856 578612981 833015906 905279326 978592226 965579366 970789197 165781108 955648966 236326386 241034970 322245323 865834332 231694196 273153355 766132174 890233422 505466628 600003221 249446215 643503442 721881292 790900312 711129958 871947274 602317544 903380031 873889935 983149363 638624379 681181416 11318953 793478009 756393605 893872415 821574071 890556953 17555086 517098209 913058526 960908307 623924193 651875706 468830188 581578822 649396170 873825661 900723163 972890675 952050070 972530373 764159778 830802386 299703050 315680393 781519580 841696629 669751521 774688054 66647734 809423108 40185083 147813086 640187760 717137812 937942609 972619668 26433385 729417370 9083874 205457074 172826253 427963106 603590211 650832777 18396720 337432515 313507269 827588193 969645134 980728556 75744645 854476501 501663624 710609269 94226123 427640681 571940233 744645994 730961465 860892305 120656346 817681504 582088625 629624582 728442831 800330546 16818640 894876781 479596842 881433048 180051700 981940888 914368110 971461020 752038646 833653831 246260426 982350622 725250450 998575531 600546309 732866879 588825513 828553966 840275856 921377978 663272567 974384122 705814493 777481918 787539806 862478759 112350856 774157489 214722936 703352187 635976750 668516654 235536903 305740522 325725639 958541765 239629113 353637523 987537218 995428990 159305016 749794172 602778506 974358849 178124303 425564692 705680646 949818601 195638259 951533701 122453585 991770526 596670957 709672091 538634146 636994998 844178058 889380999 914691918 954168483 241573654 609708552 11292832 955936353 84924329 202130852 584015065 830518428 161092130 246635358 365261384 738702773 584347568 817717097 63965525 651454246 354150767 449397938 156836025 635806180 650083474 999380764 151527338 617244924 774398963 809200397 327270032 624230697 749080056 927457067 953018428 981240728 689350108 778506618 226185270 937813811 220081261 859202460 609810517 828276137 520080606 614497652 182547972 864017593 236488727 515377423 896408742 904236997 456752841 772625814 527599068 604396951 607154386 942882896 861492661 891282955 182547598 843704579 644720990 939342437 532514603 543829380 28652042 168769603 303336424 325238920 276115179 537200647 963416612 969998606 771282125 960619395 612322914 741428400 190775439 995881627 659748523 953654138 597180949 817043119 553321177 910375647 894773968 938127227 22686672 101741135 883742051 998239391 8748144 524278793 350581849 778169654 990089657 991190443 350074402 740572553 716334598 784281238 622753267 822039432 679300230 915968875 291837890 762364699 703749417 912242881 972371706 995735468 512704493 597215851 484751000 568078122 569420952 798840749 586742900 649475292 257623226 713390053 435801916 823569857 87191604 679042731 67887254 696908260 680982776 718126943 556298001 954943777 707460800 712185738 806076754 879704969 979227766 988701107 29290003 487400023 605294564 991619236 807142523 840720958 195495699 245893868 99125077 616427363 306270878 860126653 452599744 565770729 467832306 872605581 151378047 541558055 137763372 446377436 595572235 714249956 967949398 975162894 356699171 395432093 113777939 348155626 285761274 874309862 624143021 952046592 399826726 402944465 755105891 957886443 539922895 928549803 224074691 390145247 327621714 980708493 886330352 976086643 169359014 568972571 258553204 360728497 392214254 746369658 658643227 707523178 470109223 952722180 625992084 833993483 618411386 678948485 90926660 123947989 70703423 587110253 811263918 814888516 809897115 923636676 655101910 837258334 681237840 787123647 805736246 931762033 324001697 449514462 856523955 984271744 839610744 864713048 288622973 846368232 294139353 640693817 365061759 376516157 17940252 389768292 574796864 943876875 809747521 964042677 756351814 798672410 631547469 768416216 887591303 974733528 351084739 508828745 723558203 887044704 506197142 875970079 957906689 985785691 733783444 929332151 22766682 106716153 470731927 915528377 932747319 939055144 265877821 284851061 63331181 271252907 783630102 872611635 520537590 536644890 977076141 977546544 238331983 552216541 754339770 912026703 546720353 982253069 587087741 611741310 85587129 681547911 4293429 965549335 46581144 517632678 264523256 464017850 698849072 804012317 323455893 394502943 246570427 519558820 798106793 806427984 522249624 628831621 670857836 931158146 860820667 879149569 173643804 879449779 529141946 607031914 611635888 850517876 390315889 867145868 314531619 329028858 157052405 322074181 276170397 968969347 622255256 822559981 288683477 346216169 746211317 858184946 547023659 948904376 953981212 961253673 962243035 992698322 172995384 562373894 505218990 915974050 452551748 838439154 352511696 510541339 350559249 926883961 453254163 816465168 831526806 970980828 553850533 625888601 240930063 665020271 528098470 820025603 689436232 717006390 34133508 397640309 207709979 694320058 622181111 821479634 402172000 551003792 867929122 912295501 954259647 991103889 782663182 950957293 385064269 549582481 149012367 963253689 716630123 811899629 169557923 404307820 946406307 951735153 907492972 930462206 844586706 937003388 880100983 960212640 594552478 598946158 544654499 701222464 526579776 741797481 764824935 984390068 146031662 960254761 673541445 964977509 235892738 505557243 739732920 788488412 948130059 981844495 676318853 971190760 979090394 981192377 973739416 989777673 947022530 986922396 3498173 432838792 999132311 999829681 879768626 960227217 357155136 541598850 965760385 977134002 836323393 956733454 527560801 728041336 320344636 788828527 628725874 650036764 472074253 729777243 160488041 794033905 738901296 820349855 103960093 923569196 342728567 371654862 825013575 986671646 520823921 952822906 605664089 761657746 755888350 793041972 642311214 861542706 592370715 985861887 221763192 758635508 31368762 80176604 767217107 786059728 728656871 962506089 360868484 405633356 792571239 951280527 650089886 859987638 634250910 927084761 475691755 648549802 160095896 578733807 996240878 998528849 662266206 703179722 827747237 896006785 775343616 784330984 383270472 547475000 546974595 611582393 649190008 853657953 842035383 958244459 749498574 978650854 718944994 955316327 424965514 784561539 583580907 705460298 533244836 691117715 378282036 657329665 250258245 263745379 505624262 664017689 825059610 855328785 765699665 882450694 767350454 845202266 439985635 646429543 706837607 908664125 415896032 967292935 961340783 963504451 130001045 776405133 542100303 930770727 131606152 684487466 907079524 920813399 11087433 880849158 329437086 647473469 124789305 505531611 512494214 890662755 674868155 789446073 544515825 544618342 680831211 791689392 529727507 784085903 989450766 989524435 568437816 835896437 336813722 884727109 179878685 453647485 300676302 481195448 252453212 993473155 166123950 697571469 356981131 921364986 7584855 735900240 671768571 967004574 636518197 976611460 261225244 870310283 353099751 692851410 201127454 422577288 775220615 936851707 850815240 932752589 754141630 775880667 71301329 354227716 929929575 958268833 54141029 672511617 186507860 314286295 435554953 691894038 746097265 979657651 844384969 975210709 434399489 842885134 210651124 623513465 768471691 811438073 560290857 683360191 605531466 783800142 559176096 722159424 227986773 230297226 213619406 560189303 449066907 862469003 124167776 566962829 586092714 843294047 375522694 484076922 464780337 540224686 497982158 940637493 825418258 971182711 828052049 898613772 781242333 928162634 352588225 820744703 529283390 628020369 10110498 562083684 416093781 445022264 41934096 352475609 492118231 651104527 274711302 919903693 642607706 920522443 160238853 629420209 535552502 611005918 249498043 385464688 51849179 295338984 63380583 123222562 722250016 972841351 254975561 290094055 100905248 676407374 797831237 845330516 54339047 705100011 881572870 917005253 347478437 595272953 879790904 906716973 125483622 524978016 223995661 365140907 529965384 577884734 128171959 979463187 612453850 908453856 526734079 975845653 774762415 797303378 96429252 315237772 953568578 969196285 611936449 790346071 166407724 378557221 387354513 901887419 82920949 578456165 452256489 885730877 516432655 557409782 473007509 937138760 224904066 886299949 18456059 762663990 972578877 995233243 430769101 957919240 264171581 830694942 896684526 986413972 303484858 795976823 413778008 796569474 756380455 985146914 163066359 673929008 596893586 812582121 635100693 669073985 156133456 442024192 86700818 316000843 9348991 21691278 809081844 904270242 676466665 820445528 721721745 984810959 244762857 612268238 201713628 469505338 281284151 426858484 231014075 669020835 437677363 527729297 686074053 924430373 86021607 735438801 680598076 939876516 150370644 339852215 515960945 750599278 828788173 958274445 178595304 278311579 50806026 739201288 574251458 781925061 847767056 932818742 371671572 773262570 573549050 714813379 432507402 579459150 273297313 287926085 670443611 933163884 622993667 724356206 550991407 656777841 634638491 925212400 623407893 905998003 206957044 274716298 216002320 560932815 2366638 319629513 624990342 793579952 344223441 782346072 68592128 716007903 90097368 370744776 706320107 873981393 19992712 941896014 169277776 804275765 369351925 745576809 158314065 978310055 159934264 634491471 791177957 945990900 36428127 277304063 65926507 460250011 142134862 790927708 723370138 851941010 148404411 416681206 748816715 808581878 786760844 892430862 644378525 670985045 295866973 674460107 414234937 902032530 224072654 645730937 657418112 898845148 555818176 771851099 915453377 978853436 104330515 936833389 868058146 926305318 511395439 569071005 473074643 953488426 241045573 330090369 818711812 894568274 927279198 974545624 216261070 605476241 964724739 987243013 937622725 950209975 991683759 992064359 214881005 487780433 682344603 724539948 91365148 246576281 245258446 495109369 629113425 832326948 757576299 912815854 776511011 942817700 426645236 577500926 128246718 364116999 539829042 822457823 862183516 988624236 495300271 765937730 613751041 691735422 598995228 862532681 843911229 886100779 466952422 709417909 635845430 725995348 830475847 936808502 553172725 932509179 783982085 861547567 798070657 952584066 994993640 999875320 973143411 988805399 152984734 533859973 349710286 729576312 241464538 793376284 933835369 956743797 437651323 765129745 247147663 871039586 14606519 28418004 398535831 969605069 639291685 758151565 399231784 988741308 714742501 854801769 116333422 776276131 305695345 377501659 675718773 949190266 752198956 932273797 76941040 834377445 788278027 926480899 936833811 988994231 810602030 821098721 738063357 865701727 435788029 939206070 800181878 870892935 230018580 887260933 346189973 428021179 323602512 741341346 690480035 777740226 329168055 945640161 613640814 748056788 355918734 612242846 315163010 620259075 894753684 945506931 603773251 820999382 934678927 960069728 402119853 502453855 959498386 990789626 315338693 975698028 10096272 169651088 710893327 937363204 964635890 971043394 566830370 601823182 844897308 885533076 546207636 823592351 47229919 356084217 508105039 965734094 690299571 704676185 983850541 998758659 443683674 582943686 181000111 898134585 764992826 829270849 608495292 999280221 85342702 407533387 137574554 305428847 301279082 671614152 533826788 583159833 20132010 240027460 443270886 903765766 692534613 864749215 634847172 868640925 545220280 782160094 475911742 799765886 722070177 811932602 809435569 992372503 590832245 780254118 914771454 972860439 212065432 419289385 863037853 910796996 50107482 210844577 4286803 644982034 977416464 988967653 510602062 565873456 867190353 994629722 766682664 899236566 870068564 934491063 802906985 921216040 452300803 958637244 510521101 846414863 758502490 880124144 419565728 420126688 695405091 952263498 839892206 950591157 809597342 968687349 128088021 652382710 617137214 805373055 148901417 530053454 382737095 720585760 701858927 816754007 637515703 905927555 439648832 935534603 273115748 731550409 828460329 950965177 864374130 948412462 809506165 974924577 98857631 503995066 448475176 906577909 135378669 661839452 101196997 224114117 891618302 912021504 314008186 984670255 281180985 638579238 666977974 839379267 916112960 942765447 375647078 711771616 717547153 808584358 643879452 849451706 800812210 894663871 783304688 950001868 714529757 930962140 860350308 935094880 932884225 964369092 582958908 908255630 738061051 785482950 10183581 527787816 654974487 659593246 632988754 854176971 178660861 179163332 218246940 834594028 608073223 927047772 554793574 570616979 835078501 870383629 659674488 817238666 5119110 324245065 972222824 996676372 988809544 998433396 732296207 811330366 87467364 909617857 706004723 924524241 345024979 474447253 8132231 851601575 823469071 944960722 611324649 952431817 683285752 767306495 519920125 521139777 220997373 273076871 833963444 857806836 651595201 783308405 351429989 791685528 477268529 744649816 875077550 926728584 100478127 871871675 884201454 884560389 701953161 882056409 562013301 883758777 801846129 976891186 96695634 210899279 146791731 154349479 516151830 926274670 292679709 694410355 970244250 988754654 128974948 278740539 700552279 750500827 761914205 924076318 592512505 988014169 527711671 678074929 303219147 557342879 733595484 968634158 883253042 994175236 698290145 913400457 313622869 662402144 644079241 944120669 50881658 990676320 167687678 171868343 880344739 934513929 221934036 399734471 888476417 921945094 797774492 990132441 490035441 658048382 721432191 916088471 786887078 967719188 292249907 838970963 324631486 995305012 83939146 902939760 523147764 941228599 760571322 919847896 492950820 705244194 254728945 691167136 999510537 999952520 380253218 418657235 528928260 583246803 12144323 832201939 573455107 969928264 150338574 668962532 557658351 650375922 177431534 335701924 506825572 949620619 721549207 971848721 165482511 288228046 53731255 816919360 888204662 979941713 475665749 840168631 256086833 481733847 853508452 947292142 885977439 998308757 382089676 399116387 285479500 412942373 951257673 976355315 638105781 923034771 369349683 762934151 885497645 953934352 483193616 975185935 866205155 889894474 942861834 953467492 184266514 745778212 889891976 897709692 658739083 870952193 643380535 830446191 69072559 362479537 756852803 918447424 662115477 675341423 153920545 541122115 824393740 955991357 413227062 999601144 470066440 870830084 370195262 976529883 973907087 976849098 180037403 320839203 509446261 866499377 643091691 958771511 873856086 994054306 549257530 659216218 558637074 763511287 618947600 728419566 638076894 872357409 296055928 978156328 500528926 521122499 248366224 870051772 52678556 152207284 507957320 534866571 759663472 782563801 391074364 667369145 166123606 783238095 109411536 876637807 114307538 859215194 335336897 415863704 690525423 972947592 435248348 753435829 915341331 930000306 221037164 535843083 923370292 925252967 986983951 996148954 243674758 647512849 187174418 818466194 611353071 993085420 137039059 638235304 554454288 889874697 593408004 770567378 398521192 484587657 961963806 967694496 565952633 684616888 118958683 618657856 304435510 693259805 557066718 646499812 310423069 705146890 26083475 309676703 401521840 992515003 793016023 965324836 504207670 735679472 67164357 745586983 763019331 926892416 106754628 968229317 803600021 933763606 531274179 945376352 284945895 602119523 414789733 747693834 3247639 576915220 525133943 667752531 310567763 760303978 216093272 853507413 298196766 885217219 213069218 919974350 322028140 639981589 349995231 751107283 471763336 782624020 726188158 730204351 461084886 714978442 810278009 847960025 242938352 551219169 666729735 704600874 852260283 989405284 445719156 965840650 890042578 936853570 464237227 849503904 315250162 665042528 118607989 345282082 898605350 965067018 671317477 824883860 159105629 217212291 745880271 993335092 638306396 927582644 603961787 635229552 312638685 532253439 230626417 560252525 410121914 691560461 453255734 781468072 717908744 982122166 376186048 450221514 530590827 634212522 665637094 952638309 394761425 606852436 747890416 884753372 581489567 897463377 573388369 673281410 857675378 988350611 290447731 958734813 585916503 882944988 55851059 981306944 827194650 932350099 285595762 885591862 498620145 809920774 954030460 989786049 228725520 868002973 53835387 820917902 720287703 897278093 582561243 860290180 486333546 589833519 68386127 513744541 883371716 883377755 762049287 890605947 461932185 570061998 768689351 820897952 174238234 626724825 503106545 944961934 663346246 922140263 853864938 973397954 528061528 691894598 711712679 780298556 532255329 946335195 331060924 756687864 716389242 965339354 287558596 494389584 425558630 947943864 735389402 855886631 976253949 989028710 528281225 566122530 472318353 477568534 123361812 941311299 614346180 694662920 789900068 894307932 775372856 798120670 804722275 869150732 182629990 377902114 926543719 971875566 927224262 978522211 380596863 683681705 207488183 717492637 745337488 972974482 835857712 891022094 577089648 589307641 535220384 605510223 119719443 838986168 778921450 941175063 962970651 983777273 198126892 436986957 427971686 643311164 929228250 983952025 687200130 983200558 411371470 509282487 406037046 440300714 991957960 997700345 413034519 507219821 327026026 831190343 726407582 915133266 712516760 809007988 836377656 868607419 182364377 996901114 35133340 817511734 729280052 910373294 804891602 847672617 634512508 831437246 612750147 696137330 3115274 659613432 860711848 963743790 708208875 759682639 46583959 993203944 405954807 806480543 553470000 869305958 998639639 999397439 175969396 286143393 262647737 306822901 885658347 965431104 674446844 868314375 947740761 992444670 798445526 986707952 975619374 986382629 594488279 734707865 581793940 909423976 120294661 887994086 936515790 936671499 789830160 899581286 527245195 653224319 37047224 495239300 988940129 995814323 77204900 810076226 351434347 856302134 623271405 969096777 9719469 955128516 74242141 411226961 366513379 964897155 562885824 903195155 540463912 909807409 80714856 893947541 158952979 625151195 188790442 480705637 249702477 670304545 213524058 826827258 968932140 992899227 719212840 951290846 726078793 793177153 43766327 748523558 447578355 968134450 127243875 619574294 68399463 487662015 954777364 961630497 761504147 955118655 682648150 771951816 454093756 675113809 251189586 733743808 213631717 939967142 329598280 749934194 597035200 827279165 121001657 824890928 922285147 980496609 344103886 401069483 205898991 997580451 147758979 332534266 404658839 868576652 550919506 609653351 436108828 663506533 591940454 642926070 266128977 996526852 115582959 861640890 477223802 488973030 565969298 866454524 114981722 713118743 612263008 697230315 556662688 845700192 812467817 833476414 815085713 926498764 722901916 973251181 473508006 715836406 665307863 718612552 729836187 805575655 295101339 704505151 248449262 836524144 169755178 936270588 390899743 762629655 279884171 988642687 298367153 641534986 241761508 478298954 173013812 813570084 775260244 859382054 530615022 813578569 11640196 563134894 816483220 972132848 964061033 998681352 242048951 532493832 757575464 972982924 72233066 585492912 934310524 990968116 728264690 837505127 630530596 700547439 263731441 939392846 47676340 977040302 980596676 985462457 966198144 971023553 98207388 763897542 774653219 804113976 471185947 732945650 713220729 891176036 757204806 772618316 241759706 860639625 227833863 782288832 968854036 993311598 904113752 918057440 393366766 683187445 279502510 767949192 831613695 996816188 467909637 573874957 85822829 138422758 958402554 988993288 602907439 864514521 974036888 977943039 178466185 871258940 352556003 719879704 858035841 898435415 326119393 994697958 219419038 557392278 840907700 931465884 676136262 950595574 716870765 926893242 329297438 780882808 92312757 747979176 51588617 154807615 827254847 884702907 658767045 678379995 617555388 856635882 324202529 540678892 902261049 952984502 68542215 830153460 799381551 803478904 895800329 941199685 596343467 944998928 809274195 913842520 391909784 873829425 248322338 666401248 958040074 985268572 323150730 469737123 26047141 911702611 454566445 780189803 719306825 910797762 238627025 332402287 738683383 793402934 713258659 738391549 590440385 939727958 142826892 915426476 542704194 909946746 942524092 969398754 1725086 259260717 237441596 588492770 512686726 977438068 629839420 940713473 888184882 988095602 646827107 727714676 781501119 818256261 891522002 935628525 138650424 972670011 79832533 954015665 808394909 878129437 22567195 303744747 595337720 628083205 265689870 443553269 603763789 636550232 429543513 602626265 98894109 690811237 760826136 790713499 181289742 846738681 707168691 813967948 497045299 902217009 21561406 935411640 462013628 909531546 739196795 845433286 411010834 501536192 545594646 675583550 932724519 953648703 415670166 732890121 851649339 998712617 610903485 783092123 395250987 843960135 134806144 839592701 483057922 963791944 720603749 925398679 632393853 999853786 658921069 808802009 823703286 833015194 419211694 854879752 225281522 235785183 285073522 970420653 836838993 916518693 23727881 598601847 502885679 993805009 239111176 832085530 353160767 681362171 74125355 930695239 540826879 828755725 732356088 903699223 908432001 951875133 696545204 947743313 735360693 800084811 757993252 999967963 895392875 982358604 301549430 589005220 689550373 784452635 630283750 729166947 121970565 465374378 734338281 960793713 895336729 973712321 378206802 956049492 579277238 665764323 230144815 449673194 275022182 632403409 320990074 684751325 462151094 901803769 304238629 308186174 501572129 727975637 193224758 321688880 325114568 667228942 109073670 156907516 68997844 741751277 50679539 453372727 174963733 677842075 403160721 924622651 829990991 988340336 310998836 797851157 681880481 821948529 883039912 907309850 4951842 326605571 248108385 748567890 772455547 983235018 30575758 543025763 166642046 250728300 30311288 173267381 649857683 724459208 513545516 829465891 134622885 321139915 206746341 706211233 433083819 797500349 228092496 512130407 267065155 816420025 920844880 933899161 563583305 699937724 513625214 994681756 629080667 651511707 632472446 791134068 546984605 913195901 888734738 905557921 647127424 807580672 397490121 654534365 457447849 570636841 808812892 985051554 954737583 961163208 752492970 888051629 634260228 665073398 305009318 719513100 227236623 590753411 953536254 978848839 176452671 470664794 192143125 432633203 778246919 893116053 116387050 160161216 862773280 925768591 90714228 584969725 533755850 581414283 761356053 766824072 853084222 885794939 290304115 801520129 765711047 797894433 331528466 786632774 446322956 695054089 870033953 979579640 765816107 786753525 131834528 557520517 183900733 718199198 462350827 903253322 470226862 780385021 279505095 301948531 697991541 829528054 75055109 750948095 461060931 808166031 31649259 839042427 107154084 361957205 700170519 883065525 258596877 270259270 33871504 223172524 856588938 955418204 321334580 779877889 455774594 777865803 774706600 962285602 154752491 586463150 248331734 256791985 129136869 726033582 850175564 919782415 441806478 691486773 587144725 957192238 613206433 683700451 68521181 330953627 65167062 83551176 636439724 871049210 150475785 494472545 734488475 838247436 538991498 908188849 837363825 853319978 448067981 543561233 767826205 835800756 445812222 577659402 744822117 790394052 650610837 814622064 275780593 721895231 44093131 155543537 25822076 243224567 296368327 377436695 592653225 966258039 961781970 965031542 112778665 830731971 278022731 826907808 540520595 693639180 567715552 592145891 718080982 845817131 439234828 641713021 715300354 759029990 814542290 929891008 688739600 935551989 574090922 672762954 89493049 451387465 102533924 392624125 441095464 764642560 664564892 844331255 948635865 973226587 122702071 830991001 350196881 773803045 978090511 978910773 299456593 953236533 946984733 973926576 450540506 909542408 667936108 696181677 202649141 688665445 989991249 992777063 475203106 717112040 118660198 434066422 440340791 973251035 190143159 673911185 521191176 952137519 94155293 842939973 816230235 903568516 704969154 870649511 523547645 997536752 857747471 909072000 604288976 738256966 988286715 992470764 943144013 961238330 529358581 755722636 93925072 252818837 843593411 972022466 512922542 656912862 551754049 792460161 335676277 896650666 76033390 734685895 803685397 935704883 491002398 907985573 840705182 967036820 457422848 912586435 216535439 921089321 219096281 844121527 296611444 488138660 185103017 582683542 50914497 579101776 687823892 732036697 767098045 980784450 423977291 611830799 264075975 567482851 46245818 663749182 420218169 885502859 157293958 870177408 242400618 872722960 544976634 691463349 161827015 209098865 874967348 997128344 441107727 772189806 844108650 847294652 791831669 799013468 992038413 996163626 673169628 723093444 999075405 999177695 834256406 974917324 63130412 545890916 290646539 707991996 530398761 551583128 455774407 505964099 396684391 642594646 315797338 810349886 88032946 737734327 525283991 939835068 816734914 991318426 791141359 847913035 263086540 716010600 919578782 978903729 790366560 882582135 875118868 926031176 81668263 775807264 989301441 997194498 148717567 351355509 826648824 830645407 696314521 931120469 725532900 984767518 251592052 923192558 565077447 743326434 60528721 162008075 324072772 955437944 313675312 448942700 703528146 889865646 228897259 616415008 529964976 792029412 741202478 751032892 869928276 956688702 872898829 887421451 262757290 367825635 47249686 911125237 758789953 900850409 694248237 730355653 936191209 944289318 775572135 896725500 277330237 586798948 679488264 974779407 963725159 987936151 163275454 828991468 241940251 702168690 244450825 813993612 493778156 888364288 532374005 709495991 401103003 710657368 203359203 469100496 517049336 908039386 844105381 885236674 765929051 927099749 783899297 895338702 747644289 828733943 773267216 997472591 126405108 805895644 882919603 948752758 644339756 884540594 884856288 924979332 521042296 986814888 60457280 705994526 956235098 962379729 381724448 412409065 766334374 836065919 691705716 800583180 415966254 654991109 131282950 886562192 22052770 333897228 802488967 903279856 258733769 673680557 934206462 997349269 641106030 927328508 801907890 896499951 596450131 709595237 482869576 551885851 482369713 625219017 54374335 150051361 852420135 880337012 594315723 840860087 714282865 796068992 571543708 919103182 323642617 516853923 241273989 907701278 384397429 914559528 655746103 864508085 901489494 990176186 890768386 959055110 507652036 853250587 276013989 488324272 536949509 603128534 878428101 919590470 591837156 698594301 644595179 788551540 657724702 835551391 683088052 912419695 81144145 287491046 715481820 985754828 504017156 836112637 447822281 459303556 906426786 955889572 918086032 923415364 982371103 994926486 356777937 893157881 307232597 722630022 745718803 819649656 386294974 461103631 885336405 886762188 60518024 287351175 951440988 955259339 19140041 904039055 899742696 917470752 129365284 394668626 134506813 249352808 941172390 963236157 791278102 883179169 31124105 678216677 516073242 964889347 942606206 990397470 683977959 926334073 88899478 715561328 881844314 991542728 443929512 984455967 796617610 967139141 996505733 997909228 155907630 203839918 798981104 941592222 377159288 680296329 365874195 957819473 547916039 722050700 812027390 994995630 37535598 724048824 219149488 819551801 115950709 789629218 89304492 178404406 675194082 790094864 393927563 999973261 450059770 611617039 97284316 757113338 428577500 637801020 45921355 98141509 997413087 998745854 158335178 450588828 607320723 820328391 881509598 949155714 972533643 989109459 348265539 352017448 649141424 767610972 58278862 473984519 838452194 943347776 458001881 741960527 134641805 572344841 905593668 957907573 545235030 805464343 695522113 755385303 515447440 674385343 578718442 808468771 588957489 593984878 445538647 738388041 582976620 711678376 890051776 998317407 894482347 919498845 199102925 843837787 491295676 773026108 417854000 927354814 807954136 963984926 753358115 916401205 781664030 945023201 19228225 93855059 782604978 946910849 635685363 872626501 236892010 902485659 378961887 380279252 978136583 989999020 457294663 893378124 92218723 974320942 525361626 579696654 698072793 801427795 485153945 666089099 145312489 663318464 627017667 762459405 163596341 598371937 949161440 996826825 645639368 913316259 486981317 490329870 438123216 990806275 679964685 884565471 411272099 563214059 120413498 701468970 685461281 828874027 643329835 686246882 851702719 895064439 922355233 925667493 149213912 598452978 111487464 195364857 342458397 399860731 16663065 216246685 124648634 298500911 877031541 892956688 920697052 999597151 432978159 975590828 637028360 726298258 68175758 619887566 881626006 970287573 796536761 893492006 700253099 952245213 186129893 773470033 125385309 989893923 833232260 850313299 726304952 858579473 37759319 139026626 823518787 881017946 674069035 856401057 677927591 836564673 408012540 886703251 713525888 753560515 318144381 972423940 142461359 414920090 415411363 437339871 10582271 42581337 710915102 804664652 168210855 831897069 105337437 592791285 318956766 507500325 42673856 453180224 7315865 459728787 593580153 935290248 196640410 718168169 151428271 463871956 854749684 975424395 800321771 922057769 742505746 963256153 4299079 197870894 557466358 707725471 792200967 900226762 629494070 943014889 197321192 378797921 716907857 744812522 344399427 896558032 181026114 830827679 651809541 918141508 945023101 982335426 681960339 860355495 355327137 770369291 429036143 714361829 899912446 907845015 115339871 154326292 252518385 510737873 823473356 843929570 120144378 755093023 952044454 994436471 576874228 921852818 983135844 997460599 785409588 790897896 945611727 983161271 937084822 957531357 778078381 997079793 161090390 194562354 276092971 934475601 876209392 887329800 858048844 892156284 521994491 793615120 197829080 328078724 778063655 864744054 210128540 490347259 943833893 997660942 386285861 417955417 405670056 823098357 726337832 986235646 891384449 899771690 499115069 550153943 639406951 655869278 197298558 818048091 302454940 581263980 666289413 708790254 831824618 868861416 603031703 866164307 157487071 772231147 743769821 784523402 10361535 761839286 83573651 841485134 682260534 871395724 294261873 475590047 203831043 382707403 446854908 688341035 913443163 955906421 310038598 966320093 270761507 778179446 205471873 232468110 706629729 709532351 670848037 815614717 787957921 913929056 861479457 936836453 642124373 806544226 354854192 613363365 128060852 421912940 786530222 916122413 558103644 919147539 98125156 910493658 960327974 994125240 114708614 435528203 677610189 942752208 351887651 443625381 426093649 796353521 252631482 863468915 144273460 174887567 669132873 771294661 809090751 909058981 554701053 736002660 260546066 270838375 611900253 991373002 533768695 936943950 964997991 981735820 942281552 963800165 332953585 952683422 146324642 997702993 742849035 836365926 69239443 536968154 926374104 975795142 371999918 574109671 405466405 891477754 837618177 978431880 75961208 285392721 899065381 902306381 398482272 483731100 847017012 951981958 664401522 855134801 319826773 863369220 230868435 901691986 951845705 991893616 271131366 537474709 797152674 811212046 873871041 966800848 698712726 956169734 395669839 946077944 223013169 693444397 438188014 542637572 252317640 370132542 850258805 884620724 766449386 774769714 866848821 877334421 778405315 801514871 683466048 867978374 449373787 875343012 378090619 932013407 297606676 444766351 746633644 746799381 1410647 163139214 321364482 503039687 848921485 928660997 778908211 954048273 356233951 597385444 825542756 946191802 634536493 752679536 506226396 894022996 995103483 999810507 124518033 589010248 629658166 748400925 606420704 984275720 215149037 520200312 796606819 878292672 786419012 883197336 482593772 834220452 473805593 932432964 190850306 524848578 857656304 998100208 642694216 743524314 298152698 568768609 801140768 969250435 351268675 417582421 152278272 382996149 629028950 883132913 811771406 946458467 970092901 970301992 884418073 976264941 606541326 892982451 912605820 948969875 796666537 822242528 349859653 992611784 25389971 695115068 83694174 622967861 888042149 889398546 526036850 702047515 624668908 702796757 129776149 333469309 718850857 969655946 272896934 691053730 764719382 843021557 354176760 917876363 179628663 718139561 803713329 963864723 728581940 833012018 885864921 895984136 397477989 598759609 827017366 885217843 379774114 688027301 512231226 613272587 820386681 842628801 603797252 831127626 142585829 860059487 3900031 172352225 359068640 614478837 154742285 227327827 921983027 958330863 668512399 731320118 908760310 909080146 751943049 949801323 19628446 450062071 471056980 996393924 824848620 857414768 242844081 558186744 169602177 472519648 296628974 395755126 894853264 970586386 937560807 940659219 684983347 764986763 232049043 623454027 679126364 974321164 975673616 977462176 374929833 479271806 338969082 450675489 825259565 876491136 47433833 622281051 12167730 357788265 133416670 536768939 298944107 486873215 226386821 868212617 707840232 906447650 461020331 769289327 776826459 844021396 669613520 996978577 443342899 528200827 80190746 244012104 996544805 999116870 934608070 991908883 563557812 656170049 938259814 946154130 96179554 680457982 759814086 768854546 274601607 886849315 552681803 770323450 917957131 956929883 293604538 602700439 252408943 591493924 911051679 967322140 210414664 781695651 511667137 975987681 612687848 819877349 574304021 699002496 483945831 865201463 121942201 510550659 134835642 315088504 468029890 812141871 521304009 597596698 668881115 942414640 877060518 902440892 55100798 588394103 966932694 971054617 727486888 857481347 83914153 108993058 474870753 555632386 719434805 792332540 902145054 984593177 689370739 933918137 868957014 942507267 190702781 538308915 373177357 907576447 823305721 981560706 449308027 890720601 870150071 902056854 649099528 915050093 519230463 674121772 698702569 822260851 952099688 960323002 127743500 428763517 971531854 974250196 198766907 986088715 572958378 577953647 761183928 789274749 783176891 910131135 307447153 881553532 18157485 183447159 801976223 927539512 501316375 580659880 544445715 939900191 24200305 608906032 761397941 806683173 35985786 387879915 439240244 869231818 821683901 874557825 120298297 490946709 639709829 853418794 527088481 782188416 496390472 802259785 235351391 309894618 780864444 891569623 61937362 219088041 552719239 675967608 69459822 456640655 304735969 901259474 131624480 637015883 708095360 830742116 648411862 767631491 80554164 862989396 833703654 960845671 383274312 984900981 495099860 911626885 981417769 987831515 396299621 654155889 789885400 946254677 681685776 953308144 485236790 794729545 592457129 699154974 860982938 925168127 916447011 978757981 487649740 924377359 762089997 924575638 62697295 971332315 18432164 932071307 438941574 471137638 107176330 475042572 71925926 675826049 402981280 413568940 83410635 170699417 488212545 739353721 511744194 899788913 53405437 334606093 591418910 674693204 749591533 800213023 943442223 960072562 969335065 981226270 201950835 922432451 123609004 137451524 228046093 793805727 337558193 997428047 947088312 968168456 339704375 982897108 947676273 997717518 647421749 899453761 773682376 854659972 394103534 883748055 312555996 637635387 294534065 308304851 152675375 990019730 11464253 258266158 51320382 805864621 40586372 562023219 431725828 874575518 920454301 947168551 630668091 694044833 445028180 908731921 731202203 897514999 230399914 232578756 387870624 822504933 398248593 822538510 865005376 993258632 10329450 579665234 845655859 850225121 130426944 471203296 656364977 852792065 258435886 934201989 438283460 705874712 739107760 967913038 233605232 485108059 992902656 995560708 89782647 990365564 68665695 629242773 369038265 720776477 669638844 851390971 407851652 733013667 783023536 891655061 392749062 619626562 144583013 669994201 155705037 590622239 159097530 774814543 931181785 960000779 85795207 514418917 847689376 862962427 127279747 304373123 646529233 958015340 433656185 909945815 297130152 317130300 160729527 645160334 981687516 991017106 724268287 991797686 231351852 991008798 70337890 864561380 417226252 539442156 855309158 958638145 43688288 900212851 18571704 246208826 681972105 904585689 385551526 799389543 737249735 941064682 96652929 157880140 633825280 721088067 409320024 871425262 379689339 872473905 148648192 783584502 287454725 716860804 325475647 882126856 537506403 988541462 794374331 808943271 492627375 929876010 961392983 969663459 674123969 822467607 238208720 252412908 201333474 610122410 566409855 867750734 380542636 671835897 625117320 961082283 761048913 868537905 960446499 971189539 726523303 913210769 837281881 910753987 650566896 777610383 832666020 979301936 452219033 534026308 267889171 435051619 689885049 795688685 326737435 609437988 164065863 530363566 66501400 204294467 233628233 953943236 387459863 632852654 34441410 236742679 708547647 869676812 343168551 367874239 966614911 993487705 112301211 942473380 796852295 897946330 366322160 643074527 800884853 986722489 252295941 909184012 788368723 914874925 769737433 954856753 738748513 858574578 958679460 962244121 364452832 795492230 364502185 875471210 718858621 803069200 452068544 774925207 476157555 744691219 498646442 867911318 379342150 397778501 920232815 980310851 912448292 945204266 859353743 920815615 839382252 998287309 968876290 979285072 370830235 810729739 117802969 271348404 532965208 715321958 406601668 859906258 184485356 567188402 951845739 957193468 150199815 253376578 218604285 616222108 27225633 856203225 524463457 945687517 926842928 987047094 566056695 925887120 12840632 878889706 616253733 950093811 969282792 977613865 268511511 579181543 507276585 637992079 336910685 972728674 868306436 890152409 747978378 803454460 400253981 675607637 336325476 936086983 914360397 989035618 470329053 793816360 558420934 770317295 386360204 586194960 272293645 283155634 703403724 832979318 915486607 997798193 733736176 810202010 860815130 865234490 355147508 874969591 503290063 886733593 276509409 598493250 6100875 865822000 261184523 561424112 327722153 982251068 76794073 956972197 472647640 914521765 684004897 856652310 137446093 313325939 146013305 745203155 89692787 193660939 439797859 735984350 812948285 904321412 243819126 385712901 818680242 893543943 396604469 917198636 33418922 555795885 4992029 726743479 333750746 454940630 99121237 469509748 356374965 963946234 900260668 990655818 200854614 225301635 600611954 721649189 404127905 879901207 466067335 573136952 908826094 958313163 917824172 929542449 59332380 582606338 279110206 631597414 244335072 998977021 483852396 949142808 135019394 831873993 880256890 980079925 408936113 969193122 522515572 848658230 474807855 893209289 991663140 994045328 918501036 936886939 24168383 465234385 160229370 628142912 856597206 941520889 438378610 828736751 715310163 897033641 721376462 892430231 373582091 399958147 226184622 238972020 876964135 918359577 334975162 470757408 89566728 170097650 961997664 980455843 494459672 868817893 990848696 993646027 723465193 772048045 715631697 978586606 411990165 764672581 400934822 926056383 743539439 994175179 935187156 955957703 650874188 913512360 81362071 818243074 930358752 968149666 571253482 875869317 715823955 971858359 727623156 918666836 332185547 568100247 198071440 966604024 820832852 914146722 653880155 795272700 554588682 827833593 739118419 747226811 750454688 926171758 860151160 902625061 896637723 986010948 928104555 929050064 592743225 742454487 308374219 645754161 576315472 754282543 859711271 875517959 341519879 597867870 435344753 843525549 996218798 996661725 182891173 475422109 122817106 170821833 391591868 442401632 573214291 874087936 291556390 586990022 843239358 920549702 866981669 902141392 236779095 295708336 829526001 977125750 289008528 383420198 580606000 714263448 403443393 497344202 698562436 990526210 907888118 976758337 483263916 597070473 301181859 948593183 671731336 939752524 934355988 993240930 931420961 975486552 902210554 902436350 475153557 900745725 793609613 807778384 247887407 986221775 965143695 982039091 854997704 899667439 825269282 833918812 141105961 557178872 159893055 615014666 594732887 608433348 632021708 651682756 813442189 868265086 646979936 959010704 65436023 689052523 790722555 923178955 632002236 750138184 742141229 853758899 246843657 539396379 480468688 623815778 149109959 862225764 178164898 226883512 7027626 249941009 878010234 882993146 325996109 617381272 119551079 174605682 428791187 587440668 651471770 789287258 189541963 656627710 308262104 929495574 357992443 900903681 789753516 886267055 435162230 697805066 493694536 979894647 169301184 485064464 953768216 966289492 532502154 714184793 630751872 839263055 917451137 921517694 93647487 139664534 707287250 826600880 458618097 534813284 15781756 415422371 98121312 105391939 887497469 989558641 251325328 533482933 538702398 568624545 830877578 872276730 338684645 412371467 504693067 837978989 830026187 878347454 304175015 931477769 304076984 974303127 592550303 894950373 414232338 454606554 664066275 878362909 86653905 287970370 286159375 371373791 350300895 735062050 777434766 989423588 991537943 997726459 238521055 820402833 735106498 763201452 828994207 848501853 818675655 986730388 596436560 749286203 840778713 873396169 548598810 720567592 136876519 274621201 726546033 776876218 984158977 996187388 767659134 975797429 806887834 847800091 301938746 342923215 339073143 908420876 502139497 573036607 689206549 757206513 642184379 955696409 375998315 716907301 841521089 855414536 34825103 597360136 891043430 986308982 755352078 937392423 203284758 510269814 783547591 973660901 268681381 356860812 711177517 968690062 246769484 813005995 120297642 336104887 152142712 667234787 891158606 990458908 56789109 110971472 23568789 762569279 152173493 164136609 51758912 334252448 548613022 627850122 896137265 962516759 867957431 893324394 270905080 885479487 756417461 781814677 969851605 970127348 523245396 536649361 787819355 902365823 591416676 925261624 975047923 978135598 386303463 462003831 843911399 909161641 633716284 701367340 833157429 915532149 730757378 873359522 486088631 871775277 833505292 881945079 236603497 733782227 989544269 996623617 830290735 986102533 178641772 552640374 246657448 535897821 714966167 882061643 402444062 600831687 209296674 690005537 600092475 714129119 351288407 807374211 726046766 988677100 315044670 678418151 18902022 239073800 897455020 934843920 469073520 875005335 561269182 984018702 196353034 985936902 104556708 107669733 681973928 875360224 406286063 433673023 465953170 773063615 410588290 904471460 174858759 726098876 219517485 433064410 880846264 945435869 459760083 501449544 975201359 995493319 146287961 939023484 602944858 873128230 335282180 352839343 18479403 469461058 368277562 386978514 908920280 910471525 551780457 790923526 169217719 627354716 692689158 776871536 626359781 990388027 617662185 796699736 249721608 715291413 968568746 977258635 50327065 773491890 378985778 629694398 463736535 994976822 535972844 968619502 513843259 823499849 614705802 717799858 5484605 347752690 553016250 916399854 404169095 592163475 478609286 904829667 200704897 248176001 266437950 494038756 274811966 662295733 639400420 734834471 726967573 880088295 987300119 991324018 244804856 999757943 81612423 629980117 703182526 816978272 587792097 823229225 490913734 725282241 704857035 910074790 692865256 954704503 38590032 84812353 92675669 941751581 31844494 402727869 533053424 891665097 375798338 979960390 405436167 537438410 4232752 692899892 964933629 994797600 64901131 608795714 809774897 839628941 496008245 891022738 25267085 154307531 742085097 756418618 702946477 948812003 899257775 960687909 825266092 920452664 166997598 520727645 196853033 279703232 486007165 797632738 537677239 667629969 392816211 764574420 590665070 735487536 453168194 608835853 460089282 767855076 940625887 962450431 716552476 752943674 210993160 581178999 574179655 672781336 403654393 490548610 603720479 661752689 287824432 810987397 435543954 453568202 26145688 755660831 22445644 802445158 842034865 954401715 480232882 595725059 557074120 704397766 359620446 535152223 67671719 880251568 672142460 950283153 305383523 680748196 634874991 861723043 626113066 972013851 309015939 764799118 347624250 456242420 68415526 257846887 120201653 507981808 286994554 345022086 917809310 934096776 578360843 712473311 638931799 736876530 667615100 856133626 239539021 978091900 344807052 797398935 407881391 495564920 234778482 479284128 44308901 84579252 962015341 978115388 259973314 790923328 292210499 545573045 169034342 585674074 569850838 680375651 401633340 802990197 568367778 888166211 931672281 948898340 66361273 994920925 974936488 979542646 781077368 827120826 705858922 782283841 123548660 743504875 766032021 824150208 125021156 834124807 380441146 563365665 953762925 965348878 532435730 994189852 295176078 339834360 375513912 445631564 455404255 642083468 138167364 216520931 898286950 992097379 608111884 806406564 138374794 552607074 759981066 763183665 17630920 554041916 724988441 979395300 500372042 687634577 268564705 451621466 561900244 768567953 666850036 845466449 760511091 901670365 597857100 650187355 122110650 283564480 459199727 641972851 114948209 355446832 445763712 859659968 85135046 488344645 24038009 701601645 205767766 771625899 285806431 795677108 787575713 893013152 786885483 890818945 194166290 980962290 879483247 920735750 610348102 788969816 780329170 833096383 932661770 950648001 134155306 269440767 752571984 929195752 136369362 478000125 229734475 920060774 373828222 748642458 904236014 957721894 613526231 979159521 392866798 525999729 444671218 662296083 772592771 895992529 636190741 999223817 888171270 950563333 978327794 987396064 789850186 881384600 355124875 499838170 784712820 972465764 832086206 898341649 988447674 996909305 716270695 772305915 492271756 710739821 74974408 554326106 565688985 791746710 514039447 595307735 167695961 383573569 817581676 959757803 696655000 742335842 588856318 819185908 207814626 658026118 675706432 729003712 647583686 668773999 514919609 972475109 170807050 631387380 435716632 654500604 98582802 889293976 48658344 237679256 525039142 779262057 602226927 674835266 386538464 513661170 840877630 884781855 785196994 911242001 909762767 984031215 240546924 328110150 6838293 404122698 383493096 667229169 169458890 177994368 915823242 922705542 12963870 854700395 15519427 167669261 206750908 848939889 338879635 862478862 48699234 870224279 811048681 820978274 909855230 928467173 483321321 843572917 606996985 640960544 376165866 841613140 785998249 923702763 590456549 694723245 937602016 966345348 146074257 147773062 911367500 989900726 367283783 976660602 798641443 801198318 427641409 891113416 761391737 927612044 523976616 686236087 432195479 620358531 990973544 991244825 985981877 998545727 92012706 728098855 507938776 556395761 579196199 856069706 457547894 520939461 825611641 882654588 582023876 674618249 700217694 796732742 499773153 639330428 68155158 430467008 909453435 939224986 927476319 976296196 136511574 628549384 545743220 612268465 762428037 820668948 480672192 944760186 421378981 785101002 181878129 878149868 489552698 510366258 150176956 496361027 537416447 614285733 18154090 301627844 226992519 713917224 444422436 725177526 960647383 988600041 818881600 993009365 320790868 832886683 492728989 966345083 395358077 991450650 249860986 329108502 520104800 843649010 867953938 981046708 628042740 680210815 510000406 716545080 289966849 953051972 610978371 965746145 203703420 319828118 96134251 903130614 530134226 540714793 741187085 999089297 457855058 531000205 130093109 660997432 790449221 829916392 495740913 979336082 148204321 773725751 406251873 897661359 672291906 969686356 477005568 629010953 108247058 398015533 822591810 926877625 148081454 552231054 289874959 712474141 858101760 938880201 524572060 615412538 775095595 962433319 774003651 815395405 614788772 988919611 82500013 277623569 575783973 869357820 448129520 470971708 674441333 726970945 80805735 942625305 83840260 741660984 8205364 22702343 271501364 664418476 852051835 892322624 685862036 800603869 583680768 681901911 331621306 916668570 325066660 535979829 137510898 393482437 273453752 698643134 78675601 452887470 319045343 815429486 64947007 502847390 786319985 900046802 748689453 974225348 408763267 688066142 263062559 701770258 746292832 911030680 406148654 981591720 910321120 994775222 796124905 827303508 162902623 924247006 857464081 889385204 294370912 873497939 444598083 900115786 549830086 552973014 663298021 931116766 432266944 916145541 310710503 961144553 810267379 868039104 837909956 927538880 183226673 933132689 227814580 237487477 37161011 260712752 940332663 997366271 772233216 879934402 800018368 981527616 811016985 865294427 105272626 941420267 773322847 916800993 383753311 574044788 821746698 876015071 98584092 450503046 104059254 519786368 321266889 768859213 182397695 410410635 9407973 891110716 830859731 996195063 275978395 703489081 264512348 405023905 93869320 194262357 36106789 115777884 747414407 749956216 364650364 598262910 285728938 404860593 611400528 705188356 920770749 976210780 76196870 386948000 160973448 793482198 965752872 985078111 833960163 901344933 897456392 983313476 904810604 944972838 969495637 993729446 596651344 834574009 874096072 982037440 999097203 999376702 79387143 910097580 708292415 747880427 691383321 698631880 859667634 986577235 624459690 755900195 97776258 531691683 234478835 253747620 571177221 806788658 468695603 519534190 869925612 971422807 109143575 765105575 224958564 434356977 452602872 576370546 434764013 468229624 172554211 934880923 620247793 774581074 770466146 975809325 16809069 331485554 575815662 646879192 129639232 197621568 805213003 899577341 897584105 902862225 583425762 740045174 51308480 502333118 782623750 912200566 507108857 945056309 670199378 735142956 918946699 926987050 737668909 893399369 450999381 724111593 48362532 670098556 793880874 853725231 122253187 920808743 454798009 827241181 506500695 995450619 93998808 334749232 151635970 510814010 492783891 650447678 30964376 43214914 162450640 423866332 366959044 657062693 59536051 450914046 431684193 686287085 446522105 576244349 757173450 777359284 624691988 673404641 939122701 945426518 630699720 681687108 311137690 324452594 766491526 789168693 218913057 281718544 601516783 830469827 499283701 710877772 126514788 988572968 484000790 615231738 180873118 804891779 981738157 984591032 970385029 977832623 45557867 832675073 833103729 882315034 244439589 878223445 569880720 695242638 899212130 935991822 726003932 755076611 230940583 951165872 133992138 831531236 885301741 895080473 75922142 189528232 338985366 916369237 685917696 797590840 397554425 411523000 899221914 942299564 170155115 261081339 47314180 474719834 537352511 860127348 534317118 694292731 722011935 895121778 814029674 903596703 197716990 323829496 881266225 947375645 475940176 784169526 294815338 686510494 303638546 518672073 440789527 724271163 451025573 547171282 547602000 719181188 203360269 626741126 272361279 508855857 94461600 680209896 337226538 730255920 583410077 903720882 381359469 738519026 470287436 634709660 602530863 788547245 527379987 870550658 887148048 982297182 41383611 468930410 750414941 909149881 305647863 598410328 799943950 893245515 731194145 963485869 137999847 143745120 720266438 763612731 751956766 877180178 474033124 901411701 754011647 984465999 280199551 852310089 425852026 638204089 503222605 585982319 489560795 898422279 723320143 942541662 183643807 832865365 290426061 688935217 717957374 781902223 570946766 828808653 3105027 216409348 214495513 955349492 554759907 744369108 727145170 823002033 196658487 595313922 337031084 911915201 686381612 752094698 956143092 993652221 337405894 891565536 194608778 723113874 373042600 622292189 288950343 585539354 568347417 937047975 411446882 523911693 841736545 952516536 532141568 551407498 61017789 297656529 36098450 691256134 847876765 870693096 395408419 483943349 153879944 462175372 923021210 937518472 628563567 723307330 269119859 306403592 76123659 140538489 799018149 953626551 590912243 594242712 787761903 919203470 582167569 986343252 314427082 687368158 966301433 966697248 973196470 978181894 274146239 679729460 660599028 728267425 341727834 642497083 884931006 903696710 824403546 834424744 25908842 925377273 648232573 778033912 601903674 734831204 838223788 951723831 16948102 444525391 95235742 796539878 822986851 868631151 274531404 422215728 968132783 989821696 787367017 863165555 854142110 890407810 562286457 577282719 150708856 517008054 739828480 753825882 787205031 966796549 620846847 982026141 77852507 406017216 473431995 895484854 809955872 810695917 467565501 474183019 158712366 889651860 549253648 652084856 347782591 726491920 328990627 900077867 598787031 974693963 885781792 938892195 125119946 794030264 521111485 960146137 885393087 891192496 905937393 975703702 294758144 477635417 11516481 849112627 651787610 872636740 338916338 572438256 286038241 394490225 124687380 773577424 699048453 818323602 707212751 766683999 721120695 943425220 905585865 956907144 160993167 410353459 515388443 914625465 9231486 221143812 497677336 653446019 744794296 917420983 374952255 743421824 852535628 951326525 697876305 789610299 407518941 439202723 357030170 482276109 15822046 156912216 118185290 262809094 658764222 748867062 781229706 915958289 943347719 949793053 202770967 315349340 269708280 342387666 77124203 263123962 188408568 910794687 646551171 715884694 849020218 888846008 41647910 109692823 912933509 995359970 964057109 985696164 153398181 885244231 845620096 858084242 601002779 624080118 472703087 799505352 199123430 628544662 147497746 499203793 775765903 802783803 280155598 766699305 103797227 468574188 962254580 982930432 418744353 930006682 10616459 837562197 523036363 610745794 726771541 926762243 163028763 317083906 288284525 592447320 658675202 973431541 363360188 501188128 896720356 937046447 33651808 875969780 101347212 506126490 141142872 541695533 200161821 667007346 738295637 749292307 298543348 957930529 126049039 837678532 848290347 990438228 42593073 588834358 576878634 844720920 946722886 971991349 768934473 968911564 429831060 727966519 687427946 889690289 252066949 622121242 368512928 651671333 895250145 935439648 238056619 841773112 209506733 692021947 924277705 939383019 381749521 709227354 51796076 868494747 412425522 663229461 328561454 458365428 462761839 626583281 381666951 457002866 636552598 660054382 435177878 776588449 207205401 961245401 174614313 389885537 891278403 896593694 249878108 273575274 920634117 955309418 143564798 273172503 325480042 660208609 64238952 984520011 823877110 945053437 155619589 820041467 251851394 627899317 458253929 969541084 638293783 992835767 512925728 537627200 132459415 672760810 820310029 933129255 383639932 548005234 102249890 304828669 822793353 930524277 334178860 735613062 809743293 848810054 539953224 555738153 192234138 271079902 381025643 585450516 324406446 865976238 843504333 862983908 962582062 969995877 161993857 448696515 649188509 869339372 29205443 405302336 303932368 732102846 758907686 913579291 785794181 960498881 313288890 633771087 277903887 441814509 924578285 931395285 303135406 977972400 11466261 747804478 893465705 936940339 354228029 459329867 295293667 450539010 18256184 553762980 121005705 735619878 415002456 934251897 781956256 935549447 72453206 903606981 484734987 582312924 189497854 609086295 225053582 560993432 788350250 989518823 453472942 965915771 844241492 960394328 647482770 669725300 785765448 925122035 294733981 518927576 937102808 975840057 908001594 991590915 25410508 249913278 671165377 752230599 45423902 262580038 556623234 665438038 771013174 806153824 942679538 943628668 841181492 861383589 258907150 635282980 745239306 886700613 135528715 642865794 549423350 604890285 975357245 979307388 732467125 848020245 791259323 952627040 495929870 895398160 823066509 894950082 289277981 396948284 122856738 131193812 809860071 818931970 575885856 916219239 452409270 503869370 514878978 615327570 772454939 965284939 443815922 641804025 749991669 812153784 720155597 992703577 326821155 885619130 465021090 573642450 928875514 976773447 303037652 885566400 600364096 689299062 433979307 603798121 64516981 472450972 26857129 177324568 866833141 944680337 192729145 613300707 914604622 980557731 659925341 680246514 213918916 919116328 337735254 729008637 819629467 980459807 932451745 964128120 775746881 860941769 611359748 824774681 951899236 981539590 407652835 567638368 120214590 466658414 235965703 862014712 341141385 843698471 323709845 357065901 399696338 575795764 131877376 211554879 585563428 961838350 475617137 579033945 538171506 964138273 463834951 656144830 417034178 927626447 622241704 857430539 773133216 783771913 505039190 845774772 345967997 516655294 514881148 868078813 203288808 672498534 318783400 430566405 201409967 215184964 74717007 231602378 478632924 805294717 777700836 849652423 620352915 945719583 469833757 697033976 197326766 875282250 63115977 703183444 123804629 950745108 465962445 922926981 459428446 858962146 707640087 975708520 564709255 788622510 527668476 749354716 237686672 635708354 130400758 440761783 777018769 988522685 819351605 908377776 91563925 811643063 355155897 819163010 406878247 690181361 370003606 792377896 972993571 992300791 823410978 982751722 669641065 863823307 323268030 938723165 947590383 993892100 128694330 934398561 457502898 680129430 302128574 546709951 38980629 358253494 770294872 907344308 654467177 765551311 14153040 107074597 265531014 611592537 664409591 916515464 586864142 769011483 35470814 405048512 553638403 993073170 445766881 556193991 596562954 900847931 263977378 933521720 28734965 805675491 302143809 873880476 603922365 773883477 538709536 775044571 53293651 902641253 825218068 832074578 12570063 223373842 614092297 772887496 506248325 743550398 108817652 435472194 876674384 948527485 623781042 815743291 62872251 438152423 941009092 969904977 624528071 664530209 759909039 977729725 893711673 906680953 836713150 952885855 322685600 591730209 131759796 588012684 831813878 940425500 121804575 865064908 199267757 885062427 445953691 579052142 991820231 998286435 749602788 819865676 99158959 910743664 269525309 688390943 30277309 741849979 679324330 756355284 963238954 983783512 42215230 465033504 434449544 887004091 652401252 990000199 557367528 832588873 666281295 824841873 663035540 914253861 809224190 838173715 893159641 903834211 885017454 939190500 572504990 832005473 747378116 968148271 109249576 808918661 205239700 615676482 791456449 977094158 612807833 836367096 362848809 456037149 103662374 932515734 168839246 534401680 740633730 824101646 47154149 782639559 166885526 593358742 278802046 437595217 186094389 828499594 47248686 685748997 864368984 866027441 618177629 841602984 284317855 654099939 980070760 990571352 683368089 975949771 135272931 931611546 422537958 944650344 832870708 943001350 454827999 962920330 504507359 795656615 387794740 983512791 835765462 975481269 942796550 981919000 287423762 916102771 908608029 939951497 499080120 571164273 699550912 812867860 227617331 343506402 789611617 915451317 786281405 998869109 748787229 980778513 763090760 801883075 691156819 955690312 477171910 887798460 637729619 692118903 868005000 972857056 696206131 744083639 783579779 888495493 692195345 987215674 262706754 322871124 793994683 829429775 485179657 941476175 298396178 453366105 494488922 773906230 554065725 767204128 513007978 575868106 861834576 937667690 668298943 686650482 556720268 746637310 741868736 916757255 44606620 398447450 262407458 829603592 129517581 770260781 559825403 841506726 840417976 904024736 394993079 587876322 178194131 225978513 229030619 314279375 933159768 956526772 205868254 461903257 193564187 945147245 1614114 990109702 779153296 801680670 762432359 822693521 392496475 854954233 117010547 389492498 101803141 952519572 173566889 299280972 53411940 284609010 549315302 578977023 497052618 614695961 371560533 646165664 145912816 169050064 4288159 785625204 717261897 995918146 577792474 892793921 368923512 943927942 681993429 823168585 218512767 820654169 416769806 990705310 718270278 970362875 551300941 679216395 951793495 953586184 953436281 980895764 332493699 623870108 865424550 981831584 486843625 996862986 925098228 936816761 706396449 952994583 69305558 944659713 549722525 897820896 835442896 961688874 920522411 977991853 957374992 978269281 482874599 703297398 13853308 479294173 399760552 798222449 355442005 501284592 541739328 665990229 278884556 455971551 246206213 908088734 305499959 644502819 411751622 984578606 548549578 895606453 348408163 601782225 336952580 474302361 565299703 702197640 659913408 670828611 924585353 948404129 80891236 321751866 725741574 815756234 930567137 959523139 437453912 649391256 546814047 780580051 993914478 999328789 785731348 945315264 590544390 644695294 659872090 802911405 861997405 915205463 328758237 856465571 102890996 924044722 945846346 972378109 342182534 675090767 620314137 764670365 325011323 571931232 226453477 380420179 250459141 707932250 577284169 742283252 862070916 866560350 184278582 853599896 643071172 737060770 251320802 633165038 210701757 326119030 173530736 754850651 699875501 835159382 768103461 817796450 267693541 771974279 589613811 725826898 803102640 967934872 153788895 885078526 472143761 805296122 850217916 994695149 827406569 868246902 356257105 507181322 582050542 592766547 614291213 841004091 724246852 809465395 398362918 487384120 270387230 688533419 908107069 927164610 604497231 941870920 55392177 758133557 992899724 994348423 923326697 967206564 459891738 524374707 164335474 587793565 284606727 956992918 940541686 957891800 960199688 971452185 728073258 983704745 873958429 994643437 480831844 929367236 55044197 147817806 672068176 781245317 506928974 614340994 357048282 656045810 326199123 945830584 406924331 914395448 63365656 80009414 12828208 677908859 969232367 976661108 654930468 953448548 703187874 756865534 6005726 734166420 690195879 829015192 843389865 994144596 351103372 858798387 937446821 989194409 675037911 745183537 438717710 576709347 401704649 855545890 600579199 621382883 661197377 667345752 654857619 655800411 756078103 969191114 248408301 679817892 910343337 971424190 109785546 717965896 677703866 919890858 57720845 64677113 392023875 463108297 177450948 909657259 827752214 886417087 59954771 234277530 457700120 801651287 746296583 957410341 730071733 972287488 448404580 756511268 646458624 835126956 215978406 432919881 617333897 619320995 267035356 398233552 688985942 976159530 382142137 753912062 683137299 857340644 599326069 954160919 759314368 992215534 870420035 963272447 872452621 989003179 550147291 791035377 992671425 994320323 701147203 885445067 82096946 222036844 736556556 802419223 611451446 929068932 276748378 310350731 572315665 986824238 955854008 987128566 146459255 590088308 438278566 581083576 38370693 213333219 783516388 998278788 553793719 972904202 186547400 381985645 151729518 604296270 360769689 704704317 724992143 997495385 729510799 740541266 639684566 707368926 792074868 795105308 117197612 863283042 2890982 350492554 854596727 870601812 237126297 928171810 233106253 295414578 738164672 968927437 356665822 527680937 956827350 965061202 699361338 779234599 559691704 582685129 187979385 597444780 712553410 963822418 382004959 467072082 95201362 415160521 860796285 982055025 550286027 651382022 242467296 486509774 987447570 996318556 462819941 829190863 735518328 991209264 426207191 736814785 671283612 740234757 799723817 833683441 876189429 902690291 608277188 972512567 662163195 960818299 127501123 232765367 675223306 974241142 855055607 977447294 416605587 696384664 395941447 467316683 727071655 987872546 325192740 702000372 780425561 981008173 116623506 456974379 224438602 543206698 219053575 351236381 568123960 600656789 194210195 540085578 301389018 613984104 505313251 815097391 403166072 419356872 364761926 632985330 549217906 996829776 433745764 758851240 645277741 901457688 220694435 494321167 718746684 723898893 778905954 902618303 537375145 893588784 163097023 936960125 755893058 772076689 854604467 913454893 852945024 944383411 656869220 969648763 466136281 562640974 887782554 933447340 941363101 979302640 185609666 538762920 359354832 438682767 689155260 982135137 420524696 636963219 753425197 806798733 742679069 899793019 840329569 873983778 432811982 656618648 380077666 591950874 820705860 853474810 282254426 770138688 690702977 799561780 175222233 511823180 673425041 951162146 933135857 938678510 749002803 918550080 247924601 468752295 541850232 587791918 828284824 892908381 950258789 953475782 347293696 705549808 380560856 599660348 518965058 779474679 634037272 689545799 544234721 892495865 833366361 940812840 489512989 885634320 587771620 759773446 317495723 879213793 303822219 585981461 810090406 949634807 313376043 805789417 542682872 595729091 323227779 853860140 620567138 959635479 779374300 922796648 294971965 914166501 581424870 944699979 962455635 999830073 372558642 527798301 896647043 938066640 152056142 623884477 677194361 681025035 51249519 555736702 385045423 633431862 251064336 682360159 488620224 821835450 973388954 980182233 723061716 750456230 717200520 830310248 638423993 816672313 171288938 539546259 536668558 708460076 24405280 785602381 74219277 222250425 279178282 842383638 610740828 996216556 457300477 881191398 580249482 674498814 153133233 710099283 434726972 656103683 236528314 693888299 949165463 983906675 678211619 728827627 334904179 711581220 912634205 978996646 201667361 362078410 483875403 564631883 187355811 251027143 847146865 999244081 515371370 920186570 81073032 423071251 781856320 828152020 798710088 844060564 165705366 565246756 86820131 958007084 897233910 975304093 49160936 198940650 378154270 389619034 318678512 654431012 751082004 918267545 554431873 985870489 653511982 942280140 102606344 914947662 975418013 978052092 211038984 673279538 140382168 346685846 522360240 657803428 656709867 924578000 36489870 178658845 895254219 936970609 28758519 261273428 316110785 734591968 320530388 841611018 355673551 794464855 212966587 809148594 131618007 792988125 251121436 283590238 220536217 644202165 812595804 904678792 153869455 898918818 218818764 694005925 497461553 765285034 800509262 998622729 340264082 994910725 464739833 634011793 790640109 873871461 894524222 999315234 880519699 914058628 303318625 919081350 117448294 124114366 990304545 998485277 122299479 848908673 95386686 351944180 409155129 899004236 252161620 655187092 430410530 734636553 630596201 836754123 343049819 679124663 867946609 999750614 640760910 988925194 844137384 901090265 940980854 958115095 675524002 750977239 185784732 804358256 80093275 230622232 259759194 558939627 791653273 947771081 158644393 190219212 762899634 953348282 98502790 491571637 989339761 991030327 184166809 705851994 771015373 780280794 238877501 663432843 535376978 541838247 135152555 937458263 23325069 315623521 190712394 230599346 562557556 637731628 850314723 966092500 699551343 728616225 527695191 544936907 471570698 759217529 187093282 275441406 811364472 865910837 785571969 994992330 966447068 988594975 603930770 899538074 842632465 871499719 213034358 611182914 756437909 999944091 100635472 661317409 107224169 448397985 877078593 988469122 57741250 910179710 360444333 536897352 580821618 838657446 151847099 480028293 711150427 974273866 513384097 566210599 359423684 847173702 91060765 845395302 584906061 887393764 197425347 834280311 716729484 859749743 731974948 786648726 646665935 694368531 55355245 406081432 733417767 937501822 803117675 971838384 942141041 950460924 222966551 716408846 75747251 508916888 514053123 691892898 72333970 118215379 717580965 877583047 368674787 585545182 891917120 997067038 36502196 176166799 409113236 426463730 187639470 404438793 556754156 617339377 656258138 778622144 473922378 740079786 575501749 781711568 11057826 413377502 877753208 896918773 771303465 820692190 581513468 730449564 964437299 992232682 212493470 296009322 743208955 763812261 784247835 949295229 388971846 835209801 927315506 998280306 288672571 990761212 833929389 961611816 463544922 558690246 481151591 906717135 628397864 823607084 30127831 274547675 318933703 538173164 233719620 379397896 969316764 975432175 295298656 396445572 201638443 389008922 887210839 984495951 48610916 960042682 391335922 468411424 463184966 960985333 749878214 964748838 575648184 743617969 284702240 546097852 27732878 678371361 893386760 953321975 225291310 642400952 611681902 882390537 57398810 778996633 659125478 801070172 755328814 963327548 759418484 938932454 425943035 685598426 42190932 485610354 479551697 778466251 21368809 996653244 548475587 652764284 64344288 607347168 212254063 784869112 434135216 489618712 420059399 773855296 36745782 850692613 456425355 999482362 970277011 985111561 188566212 292480401 303461790 899017424 488777226 991638061 28839388 307585062 384147172 706432025 208384012 381826398 737764059 809816897 320281751 944619560 503561014 942476997 633420192 830462697 300289857 810827803 751202983 970366083 537735983 653809761 325450125 854289653 452531098 906397524 134577053 560762226 855917447 977352793 386451709 794028331 43524843 620884870 823494549 904324128 764353630 876838174 480841787 893666702 459433348 555625187 256038074 304134568 717430898 747768555 931424639 949168027 659313483 747723057 769615185 874002479 927247305 941542127 194959892 263273499 530745832 637041429 622333202 696095840 58188561 406589977 278505572 388938748 444193348 552140487 423273979 725344404 829356739 998051559 323003364 806557403 999134684 999341027 223100337 911830602 705364761 956489842 691834037 805763952 89412446 958052916 446509176 708824138 207160474 451022449 44522281 163245829 932567640 980460934 705788709 935476074 706384667 918253085 381333062 429231217 688402591 774728979 261440557 473268980 50928294 251891050 838546505 890083645 782299775 959827074 293520435 661097060 295833328 401225848 217148772 837239343 284376366 690119281 239067984 924391502 708581325 860432572 744473750 904017596 317048881 689940229 820986291 822742883 113144453 615117720 828510053 874294870 204533692 525349517 736560701 979111656 46547958 369774267 774001145 953504949 896574405 961040264 22993549 957618788 10272493 443712790 341910567 540173623 456474693 729002334 345865544 883087837 236370239 335946457 848517057 949198057 197726883 297668669 878137724 976378654 482737777 669042902 654767718 768729232 132941185 438757043 371873883 664339523 671890651 729505478 397779321 921407716 647297321 787264466 958291611 990366491 523208572 936404532 129596756 701488226 985114521 989387234 750329588 992510293 386513294 919106872 695912163 992471463 144120960 240548778 969892293 973821841 4363643 687792662 864180750 903202373 519804903 944867736 486322780 877862878 918120137 977305642 290858892 305582508 679306358 857101134 880485082 888394573 112291189 187344194 122842414 219533937 414066334 600041469 366922442 481722445 615118490 819131900 767774779 813478598 93328573 497911399 782386652 876015348 709210869 809118375 252609266 508941185 25187567 275978606 270336026 480546643 311452081 580112709 830790745 845427730 890178842 917462609 893104345 936614147 776292003 812966640 538217323 605814827 137853919 711810077 583920086 586698218 85795055 316851962 562454982 799816136 386620530 754764367 638893258 784947077 630903318 971173803 767347370 949326307 336209196 560480046 845157063 858003048 490085818 926148415 789027553 935749805 697801528 963390390 12805313 556156708 691030194 759907138 188109417 522391509 517327943 981913227 852262260 964525195 141602460 191815666 722925464 983054239 126003793 944583119 998835585 998861674 204931590 766029209 280731087 410742232 671691741 770430660 879978332 997539992 540862353 900084267 495610215 629052154 645244297 922321266 789669843 990151832 785548251 825783455 948999296 974510471 724260547 928827488 446780665 985867968 797673677 856160227 457327454 523874001 492139245 669616425 548271021 553311583 212836671 688273858 952265968 986412979 509237539 556891756 391798016 452457803 586261555 969413420 113810172 976314952 907470338 911414611 866358965 991733299 976774272 984034885 569722963 596767272 38597583 301271400 652466626 954826694 75428396 614595554 778083009 829521595 485837636 924302164 478362191 704232400 378722662 879471056 63576329 162931193 104833734 381623405 336108102 404919384 526919412 800884313 23191958 419385555 589820547 963344164 378348096 662296850 839599458 923867832 151649420 932600542 847842393 926441432 699832082 824484338 799746999 877042844 696994511 738530944 197076013 268451636 998824216 999067336 504333771 538923936 994623302 995728663 749891129 799198488 718081577 771423077 678689446 896142376 521137710 653213671 122424339 977525143 296516755 319852094 937701141 964915934 846238835 880821131 589076393 922229347 780773482 944865670 397598025 978516739 692727965 984463142 24371713 385808571 346370305 386113433 854302713 989126336 26864366 631740812 784476647 962841313 326624484 472118694 953568054 962398630 290391019 365796972 666473064 758454406 436840817 721635106 438735397 746359480 959737624 962662210 408015020 572350960 989258562 995645977 278268807 562286236 40624148 381776450 819990809 882762667 186051816 255572554 296422109 556939117 782719283 909475120 657050572 955263243 993556897 996423622 208352620 304853949 375960581 872288257 723282460 965110955 892132390 910957867 770384791 841014066 994785665 995019825 766157939 870892524 17556350 617448431 679145602 952247799 523983813 831301151 139870205 280381773 128299301 595174386 338532556 945296251 26433575 551640823 617754523 881970427 324373922 499142650 169211895 703606659 147284718 860367076 773818740 791561690 353215786 677304609 27763306 139485867 532252978 602351301 445744827 665692130 240691042 865811247 376202409 976333236 498355559 654983516 737839420 856884608 924191058 976122805 649771724 686944367 24233067 70628929 347887453 786139522 849580694 974596635 881264923 882069311 172925735 983329269 637952646 899321870 344831463 605605800 835126061 966755232 546409669 601415543 255473072 398418883 870153369 875379510 703774277 933867450 124299862 619342035 392651728 994094703 267871880 818347702 443590355 817009531 252718608 821353653 122425100 623554347 833178994 955118771 410320060 773023136 877857127 897399330 276151996 405626544 238233667 685748849 392487661 943807600 32550591 751451853 589178856 974631694 395918960 522033510 800244483 933015475 465171268 983448233 766388851 926904050 743346847 977228805 818914842 879897635 94881089 819460058 264234976 839603830 75548290 980065540 296712899 422345424 956368180 985752826 117911090 665378678 345979494 703746202 406968273 616321557 844903534 868297295 882321989 948372020 6681955 862975270 594440299 925246800 316812363 362701161 769837537 773443040 2114962 155506333 902631544 958587138 370534927 378387699 825369709 887864512 947502476 977507347 306727505 600239239 111806955 946301849 797843538 974549768 137726193 609386230 667912660 714335742 505131324 846886681 283531728 590015637 891591358 995458915 634396613 786640444 354823631 588326769 792343909 876473152 203652689 758599707 860588632 886053082 184867288 787241255 372118299 547422666 879188156 992271837 469401927 809331249 176700117 277328349 481429291 654143875 321435118 336087715 274195490 351193797 602876037 617523393 237581760 983633835 595128324 705105783 499943151 994526530 131242695 613541844 926163863 984805195 673344665 976951636 159776459 188687023 261748833 890170180 414978786 947088198 60742411 951286433 911919147 927346267 148025155 783766007 748902348 890227702 833810576 928171061 920232317 943511208 744903322 975249711 640847778 925712765 898075146 929936991 769620981 812977010 385183367 774582514 407055852 529525393 143737929 875120342 705020993 964424307 94447940 473735869 447178910 938094789 813178137 952519466 740528598 877298911 935321568 944117743 62927129 199037811 796859998 880214657 38657115 202089393 174835507 575090904 284182275 847164610 785607382 864415722 955158381 989906604 402958540 500963838 396197187 435628001 18892506 666302720 84654050 307860821 760598143 918372904 787917953 852730090 568210685 912755713 889325167 916510805 650902140 973428489 698760062 882995548 462320665 650561650 506425285 986920855 661321115 875613754 594701813 750476129 428117314 429525790 341766986 983519003 614072074 937253822 295229413 994031543 661563082 828255515 525720282 935932108 633164728 912947446 910392120 913153586 594573203 848278659 887094687 992130919 613138419 926389016 467517946 500647751 564168837 899972100 559965726 618562593 929094297 994516293 161099077 370835914 144976493 467652464 316988811 967399410 845474783 907840240 997393372 997473122 456152922 642723532 211055569 598132487 423033649 963988727 923532134 964061046 15650171 890459348 645486354 678109140 222745397 280769442 697500968 996947033 732830760 748880687 393324201 959859857 323164830 514475521 292833850 929907487 7222751 830777237 316894782 879676028 945266157 995038521 728313148 804511453 693193833 830669136 749931440 810976477 571161015 911205512 515704140 721561453 917714198 945455749 476474984 529975846 914956789 969850853 374153727 988150156 488252026 702362749 627582968 850279810 341056353 962607888 457372274 724339178 113985832 748085837 817374148 959925136 914603695 944785503 333006456 957308482 259158841 267789125 115732254 876313401 283526878 789388584 375908043 376050633 520863446 628602709 364312427 441589798 98707459 239459696 564049347 715737694 371872747 705079458 326498612 829104433 495954374 775789137 851010950 954306832 869344047 927111544 579482072 909868275 137432243 287317137 988752431 995382033 131243451 441323442 241094495 313194451 814718419 851311238 544741043 851795539 904514131 985993998 303469660 488528311 866049695 971208272 76483875 631431851 960638312 988499126 207662559 433219379 829821080 898135379 21141642 361211803 764567600 794048289 858410511 862796912 408972834 743689789 370148218 776090863 773210168 933236644 400547401 999208787 927932098 986132317 835256651 926967433 260154166 285022463 551530240 641963981 584926931 933165919 256022339 543057685 839716534 902187828 857590116 976309488 324934708 763939617 57975401 292836364 232668002 593671480 990956231 993411265 663854280 720549632 515167997 811823076 559133769 836296651 99882866 597684923 824201582 825213251 244483569 645506140 485438979 767248492 145214127 298397163 613696289 962435780 118544659 404488743 481806613 710033559 688372722 848409126 153043798 807047914 469094736 602171488 690245050 892444154 88267618 252863065 260941779 738275797 471050447 796022708 540944077 623129442 720383907 856218918 208811034 449663181 833327453 981044999 231333728 303494510 366649480 877452684 712480506 967910687 104261397 858088641 72300628 534160733 98237623 519831246 584481552 723239242 690194938 807780929 106006877 342715426 90561898 101558108 738258286 894282199 222830506 351257285 183157546 657289439 321508251 627196493 126076764 600790677 631319974 893320878 848476249 933736905 201549920 264391476 496166154 924703014 206869603 366854480 337443647 581834490 925076048 957154754 475998314 545616876 291464437 811541151 449887442 801027616 807710589 878883119 139316490 910418227 969911608 971225233 456573831 608484561 246231700 614166919 879353603 963600415 456927303 944724679 988454669 996464625 207902218 530553933 556651322 591085739 881391544 975975456 13968997 981989961 55812358 737377225 86080897 336059869 494517641 530922805 781346131 895393612 598374931 620428580 338956268 690022918 4240402 285808317 102240060 705047432 366526618 535148077 423648342 590067242 264216409 336002078 487211587 862735838 180321826 279524067 486414915 843510557 958808359 969762767 825082757 996381621 169283912 662187754 323130238 878792518 628220921 681305606 860109913 953459060 452965415 527484961 558035320 920115465 453516511 776960613 589552757 911407495 797745570 955424747 716194293 871969550 394418488 729643865 74109568 693068212 80191075 179024599 860430592 869783265 746294556 912237614 105503729 585589246 39480837 511156321 2911897 260411528 741060585 791852171 57476128 331796051 747071958 931571645 237543327 628715275 353312312 967439404 771099366 848203343 472922081 906540174 145725944 502478811 201748388 872062884 665947449 747782728 255417512 424435939 1487515 385032813 941135870 975611366 250443111 784841853 200977962 239528933 681191068 817450777 67023129 346926765 853776917 999187237 966843779 992648216 286584589 759909922 34492067 914030264 460114775 521672315 693651592 694174444 527302256 719689152 170617397 971337047 783702030 894078970 591968793 941387019 748961685 979067465 306572048 516137629 340120842 499811891 502815075 560159645 909145815 940966356 887032146 911025480 595667332 817023924 120367429 121175389 80863809 847017177 577184866 603423150 280254013 889877131 483085064 831480309 646996395 710196137 292839499 492834788 34110637 496562723 903132917 931830017 42903401 727103211 913504105 951040620 795108384 830374163 542411459 930531151 997683486 999441948 927745751 937091970 34196301 960277566 154454320 781408682 732028345 950362552 174769006 932584664 881120544 958767141 81605494 729591490 553268931 879964197 411879457 887812698 73157920 421187262 299657388 574522900 489049231 685413262 365975940 799192105 375411579 985182684 108839172 215033984 944415866 946555253 863049876 900647094 894985213 959707097 114815188 548647027 681321261 728184912 149934709 404265779 414372537 477482280 679083378 846949031 805916166 997491113 77933244 943844042 703250374 716323368 139763522 992304319 650195503 703627130 557779446 829619323 399710227 460187301 9127206 83469231 759353579 879375931 27583986 883519304 666160597 997583240 453030199 834304148 773384655 958930925 456004079 981161117 517015792 825673969 983062787 996643020 401451730 880239998 435472164 912203178 82413308 878216727 581588976 840199146 986780721 988791693 149451085 458586553 342860896 635961264 265657917 828429603 285633436 433834048 261654638 978508968 41807562 405619205 570452810 654460845 675786430 992649796 644229158 913204564 226416062 354071703 289578483 519983868 646777089 777779445 428360338 643850944 97481540 822447505 347858329 628880912 808979488 978909719 574372471 836356227 145523137 172651113 127842611 907189705 102539151 790138304 630231365 977801191 455440546 934735030 331458314 802605759 727904717 791883955 656100547 929915556 839733769 939875689 337064929 530443776 175659301 534570947 314529785 857865282 971615212 993481611 20755144 953782966 807030360 967290049 976774438 982814285 574776889 604266137 886123408 953999020 107524811 628762497 717693505 874521982 796270382 879378891 477423304 978375316 559731669 884495981 957284286 962922130 24018950 529971495 913223501 953040299 794663762 897586979 543531328 648015997 650718902 857385128 315955257 782656479 831898906 988187056 418319088 434890036 767125998 890788408 809312764 957643611 363487031 410190557 486710014 902882984 520600864 876754506 835385007 855649006 864274890 971470940 791480894 995289972 597361267 771593257 522618486 833753526 459029102 554097152 234439882 948385456 996390461 996976215 783850172 902094805 722486152 803318005 245720200 345160894 936385296 943342067 986737376 994941609 723232130 830802896 298621214 529704580 658763203 908991465 703246363 802400578 887511373 954586988 149352047 463415272 667637167 883098692 463603477 598284404 989442414 997396068 578100098 939314784 665402230 870389113 819942742 825359266 164863432 413767953 361504386 654823407 383561560 988003394 789100498 930738997 68437674 71421948 653818499 908406510 387699098 538948881 534166170 987383437 764611850 773962835 561191208 653727606 149535711 477801863 175685149 590119365 27769351 779026503 324741622 884900424 920710379 955268009 954004054 991483654 928642753 958739494 625391651 754093184 158479158 365141211 408606392 640946392 746464407 943064887 182186486 389219925 197806392 959147178 986047583 990500237 953416441 961335687 685889319 766627851 928480513 955587253 310990396 819947906 797729211 851018144 527069909 972549343 7352132 599030588 610572714 630377766 329864356 335851158 374927298 699249673 838825225 930972965 466355018 673497741 66008442 387492642 234635455 672132334 862744165 956288289 568547358 875376877 379501383 734412946 38390132 940372127 885851866 905595486 21459603 394316564 158342582 561810283 345808642 729256105 903065857 964761282 252423905 425723562 438700543 839732760 159747437 427830396 836337119 914686177 756266061 931360492 684734077 958186464 845015853 963118365 108194617 779426957 962855194 966271815 773262342 817181859 213316686 489077176 425650496 535585946 197021993 434701693 352885049 549261665 713055474 757141234 182051832 484492008 541409147 924788261 919781661 971766448 448626181 824239513 595968030 629127126 926782571 963307910 708057864 892842888 766668307 937007731 570632082 793895804 93459960 221913564 368175320 777792881 291086467 803769777 319389051 714813376 515107676 843518848 793700060 867757254 775175756 912877696 133013394 962541839 156137802 485937551 341165247 769555137 792152205 794803242 882603660 971602453 660411205 859089275 88958118 360691044 537161617 640453822 191096381 767463389 302338317 752108063 882174921 930798407 126102300 354204619 706156384 930298590 100686597 758370171 684519581 857849154 72208937 537897778 956138646 964625587 582557393 610123380 497612994 909673641 138028396 299201853 14222021 771030738 707286567 819488738 874154016 916248699 944476716 992380180 993573917 997416779 812147799 834219203 56355849 696491600 321984958 847216345 332622769 730112956 187786370 451004230 215228299 669851515 347952993 875806861 904774603 939334293 633012792 725726271 901707786 952509661 348458900 992735061 287538482 795732354 768399817 938888419 57933163 396438711 474827645 797442592 442307910 462247999 109357194 795952086 955818622 999316025 16348402 78647283 29706485 797272664 313888218 414149987 236598332 469992603 864079973 934522653 618353364 949200191 58779445 257953058 591789582 865978163 607730307 987994796 676096201 982445930 452058907 465521672 350067846 543438477 856900827 928569031 464036537 653765421 745236165 777575905 491232321 832509039 478844077 634992883 164361545 394822972 150388743 959203403 789112842 996822599 457474534 502979532 352527647 389582317 617882483 839764708 133696021 256120139 346400235 980196182 603385285 641321392 683083169 930491645 338410832 800409033 286940648 615978773 529132020 783972732 529394925 942075388 118509735 735044280 466905316 675559362 602694552 830272134 531338256 551387988 54517245 359796137 148115544 483739987 965374986 994359273 239625359 795199500 669044460 782993537 702396892 838936143 592489863 966201564 313074782 953590665 283464421 869741118 327449481 715303688 569588915 711193917 862200181 968427720 721382105 953472258 520689049 622526049 509738962 819073278 92388754 555259201 496130876 667186424 133292389 181728040 414396794 525724294 664181593 931955941 246906647 329648720 195059968 860062088 79692634 803485055 538991861 584206822 251612413 314708547 764822922 807261740 391046496 605380877 675950069 882445683 256751721 380394837 106397754 765947489 380798479 415164849 52264340 846104371 85369587 628159836 894410282 975904298 800378378 885230565 890121732 994532154 773235514 821547504 87020646 230169198 1243423 296205797 82881396 467473598 754029895 924674771 390049649 871267314 908641897 921698023 127284403 293938489 18148074 507762518 888949226 933802900 106469322 739284757 800718311 892828151 637325291 881131174 293806895 747655511 360096319 966883087 174921893 962584688 457193772 986430628 374964802 838364264 35166074 691545694 399449478 598576523 184856996 728473275 216400755 765149146 654068191 706381146 817904961 853991049 400210616 993885535 588511345 967305009 383645111 553103020 448213314 604044721 274996773 922579718 107919191 572726102 998766186 999897176 560833244 669045470 9781597 310262633 463986132 662529467 611522953 732049062 191757070 800500616 649451948 672829887 478864076 763164237 890909405 903829153 503189594 883411125 904743946 967661858 378319305 762252421 719449572 966011449 385210895 456262402 944409040 989295738 368495155 895647013 785698113 874972014 24156758 424347920 427184357 823003567 628146532 741303945 732947121 797175365 994274738 994901073 845842521 970373311 670257384 761915094 772792596 795249579 85342009 838622526 791493835 877912447 976922264 981860961 678775664 976773658 682210037 829232365 780783588 982329574 242555436 783310575 927829589 982481215 337265107 378003461 414620936 781410762 826908964 872732913 840088206 970428510 856280556 891800421 849604856 955285539 164056878 916964694 819081973 912105148 264656395 887594086 627948164 760872047 722759307 817767896 598478652 987260699 561629133 604581709 666572934 938793105 82033546 207218452 715563390 851998417 723825183 762024363 748802887 832352650 27991081 945650775 642402888 860520064 623704013 671641465 163028905 539997369 442523865 987113257 644037070 967867375 772453111 895985708 982049312 988719650 620301715 689422587 491517843 713340337 311447733 936069737 784174670 978085485 657083585 713528600 839355441 900910696 498689047 607816906 597657647 784943624 704396756 972131973 860934317 888539670 35568398 344180479 343600247 816514733 993582292 994988766 144890145 482707422 111831449 959612748 948165853 968533457 975931977 993887458 167130842 207118277 620838034 776598883 345907563 821422955 96862396 989887773 838879733 925916787 291365122 800407039 746143276 920703544 383704448 784539006 894078145 925933912 533725305 672044967 786869735 913654683 549507181 707154632 98564897 822137970 916070978 989178732 569637221 774722167 942508474 995335318 105990361 805995432 408884895 928471398 968949777 992630917 242000472 773819381 653175818 699133590 245886078 612822845 84231459 197959530 268561945 792172945 305040765 465255001 523652085 768744306 851769653 854195030 940515456 959531238 803305918 840320193 455799736 664579719 198189895 976325058 184269589 314468214 297790539 783802692 464257069 854697879 700685385 850038544 43602048 79919872 725115151 857464687 165122591 316679925 821888563 835033932 638740532 773325312 971335545 993478431 399183425 468644123 934470921 956291558 627138990 848625616 428899938 652654212 764118057 863156282 361336087 530132312 614862744 647613536 274727452 970367626 736780090 977640054 781525695 985704889 39662762 445821337 771740721 989395420 192029128 333731218 265380238 278589190 429373185 800012183 367786120 474244965 491418294 782690679 870909312 928354040 620322423 755519122 821422223 875802021 89229622 303549096 99934838 538996651 195809370 728859030 15533620 137801815 494244769 672951814 617380440 943190285 970894833 988098603 78297208 819437250 252279538 436499396 96301268 810002005 898754943 958277216 461019215 954360058 59913707 885393043 771708321 926932609 320071794 665285123 199898496 269105076 832758636 951565053 165085655 463774697 773431319 856492458 966116189 992979387 724123215 895693311 447002509 638408843 111151956 239318840 903238930 971720358 7774549 47719237 398602131 544652402 335569906 530045106 179551397 448891679 988424740 994401785 697408440 859915259 214923971 522282034 935348387 978716828 925378290 983403007 514890316 811300539 476004260 476248346 651965648 874285524 998937324 999623246 910814523 975624337 302803272 750552224 845718456 943443452 574454387 810267896 502460548 830838365 538858681 544282874 520174267 816743845 149350071 490969417 452341685 541017441 158441042 658193507 256443239 308155860 580971350 798566061 908793168 970246928 357850948 624584029 563546470 947693626 795768452 854411127 265512773 404627423 653487309 959536078 483881811 582552263 782364590 939407461 225528839 593137551 276754184 758489252 536166342 542443011 665559041 932217760 891504063 988375214 164290774 759344849 200636731 594040649 118460307 354687312 681156772 980855592 960044233 973931216 287663982 345067478 535357224 867443829 298415673 919504332 542946784 885915055 944180132 957460849 939257528 939927137 270265369 744938245 511987002 978270596 548325544 828180589 913447171 955781210 773811381 904166932 317213437 657474683 522236040 774544976 726996649 907041932 318330724 440119768 379230343 396092653 389300267 612439592 500143419 966376373 633240824 916163475 807179701 954898821 703594145 780530635 417861112 603281301 79110842 306352294 793956064 854449300 543266416 683124258 113142353 235051195 491403190 864191190 254819058 868898399 790478836 883146149 545042538 588468770 690452849 790227783 214343000 825979872 325396677 719837523 609634728 733293422 215984151 756957573 735210420 772199716 31226555 282295597 152449705 165215130 287791904 876892755 937163914 951479213 628190266 934900192 679235478 930306119 601970046 976788503 683707147 748681072 75756010 204650114 639024184 965280951 527939057 730425004 807949609 981010416 473902662 628902717 670755869 741774019 938887654 946020332 318341303 591064910 336776469 576321943 22441675 59815376 112228161 992980320 165213368 609408072 361826546 761430679 716522846 724865900 695028153 928033667 914739089 928419841 757875093 885200977 422131853 646560795 606850328 746246282 833188015 926420169 366318365 484585036 355616901 754272020 390988744 857778531 191024782 264885962 404485430 961484855 540121828 737124939 292037160 569272707 633849649 767757968 718826300 845301906 343893580 399719480 987814591 995371094 188303261 506993800 708503926 812370119 886598989 991790842 489351570 877995663 663557512 887900661 578560911 818886638 63274865 127833932 955686537 993652056 715569377 851656917 107808061 795180225 756303740 975107107 81281979 472438374 913184361 977906459 474737792 517726105 619889202 896426659 902321163 916136084 846569461 858231151 710610426 799079604 543248684 592188015 545423323 935627489 306621434 803773747 404509753 547973361 687940344 769959085 663371289 773966977 351528761 393520009 302585838 475136142 734230805 787926416 611479277 763916017 573146875 767374492 655423045 675063674 574634196 965969682 843924374 860565523 131318303 176319989 982239327 989639422 155925929 241402814 276428380 306148231 519281319 607803237 684983821 913080340 415020329 452251946 995178043 999876458 352594989 733024979 837199704 857291887 241587091 994780345 283294803 495861644 71217104 916564190 684456204 747689556 684777709 727013155 649107713 755513592 331685342 405017360 889858814 948173199 843357844 852837995 625448034 758098859 372341842 646748521 983834461 990327669 8850592 741508344 901083716 934054265 240709611 427890689 521768243 915458106 822486282 899050239 746665196 788674152 626059204 845989841 601531909 770112485 724582875 885076912 350730900 357625163 170707571 174150474 516937211 566724342 606649882 951815972 809774562 883899255 79041206 816022375 516078546 898993174 986813855 988807154 142975114 436456159 544274883 573063839 604943910 989965507 651979387 685017386 879565783 970943867 563791687 707510972 989359978 990415629 821517096 932150723 304952114 711278994 556712980 757345458 235218979 334244449 375563409 710161636 743546676 891578851 631084814 631694361 792475148 988622632 487126054 700004940 993596135 998996060 381933537 771521124 156189639 682422404 295517716 328247982 595575082 797960864 784090598 835515499 419638522 931191421 139137565 682092764 575230700 999975437 769551178 905463615 754585234 841093265 566447088 664844670 879850126 943580441 619541614 757075341 823321714 957592985 516636506 878244203 431960830 618056963 367050122 830652490 820722232 965822939 34198631 732129070 370639848 382796060 949435742 967918235 400118470 829441090 507805913 725889111 384345040 898013027 890473320 982185149 789346123 847634362 542610650 834334723 251917114 443277847 652275407 677385327 744991361 800217848 483114952 671507198 279833665 541183355 675862135 760558871 977504258 990017991 11838723 952124961 396264906 608869151 92382557 322816618 209185653 637052383 69369327 640063337 598366191 881663728 496159511 956492007 613496885 739707406 108864030 834432251 543203542 946133116 101587286 894166695 524458872 540004952 584439785 601196870 512927884 546465957 66875574 500836529 990945928 993945520 151418288 453363151 620120963 766581834 443212222 673101589 126502223 583234424 234918135 384580337 58981904 170364515 542353363 684420921 562525118 998491380 40990414 430235686 269274453 616663154 699273642 997994695 692398379 916724868 692638658 865068528 428026861 818818205 607426240 674294614 426009250 966228953 784286990 854891495 571502563 805477569 302424374 763037882 765290863 927112921 494658891 846278024 396192908 417146961 189477523 803682783 472973808 542181099 810315021 859614788 16469719 949857419 822289097 886668768 427986418 948683586 90087385 703249170 803715644 842905872 53459081 538971070 514377405 663993006 957258602 994719523 464067646 547870846 603752947 930976039 515696317 823582731 688449452 804543315 843056154 945478501 858324241 978289698 439709600 738281391 717235097 919378082 858303491 862220114 679780147 802278073 412945428 836366171 487725392 638271434 631090100 973169508 464751928 971547830 921773437 974144380 145825690 783709663 862438145 876770142 366407416 665656747 822085706 986506533 753124008 927706984 84231956 549619127 394974137 610590566 713738721 857745178 600830217 610243756 547997146 557809563 587600671 992813945 886517313 977696320 413360497 602852835 244484764 812143808 246763147 986732484 232558510 697561132 915088342 952286545 505753701 758509763 64654749 471396268 334202855 705193173 518199406 812632833 683228503 687219970 448484011 911595574 308067036 483345256 111843402 792883591 94616157 190848427 77047875 712814116 892604857 992451183 413770208 716564347 56625225 304143582 501636911 862222267 263512279 481448741 359324174 406433964 177328248 231279254 979457664 992589091 612789679 635605880 744631117 816303090 708353640 942587052 652521454 918257936 251900841 959468295 275269310 918348383 487523166 932099205 721112996 876022730 171382761 326662992 182951834 514294957 959576922 962898674 553216430 637981611 413849986 518554568 655176120 711335624 202160575 592614839 424164366 930615553 899833199 912856331 109635399 736305876 426267015 618575548 990166680 995783454 91819898 729171437 198293442 704559693 483713731 865907145 686475960 930451601 255459575 490837865 175093739 926661786 831159335 973125645 852374972 937286493 318348039 519069418 444392019 931425259 241577627 253074580 400800493 609468375 678710863 883082626 754853993 996913235 51818959 645687611 713134816 731051334 751169782 874206053 566454740 571406092 86512266 508837482 618307846 931331956 968556536 978299028 500101566 828354191 459889051 804293551 856317519 957710421 929093627 929900345 371491635 607470537 579878684 647986564 677480165 994751927 615835488 846527277 963144121 986155748 423971067 476310782 613109635 827671997 302270922 420838559 68004155 409278975 324189447 404413577 848408682 975958806 548787773 631138274 971260949 999921635 454985365 675126320 202412832 818026732 387665264 424758613 714337605 853995837 762944571 787869437 609915005 985715139 121999758 484536759 832879485 907561272 788452982 861511622 608324798 801167617 757522936 902271648 704682560 979413869 665834881 928015851 609497597 974574349 549553320 680581511 22626408 444751611 256928288 823813093 562481468 806049783 36680995 568227864 492131453 696798476 290209230 612303510 526051361 953736234 560828770 590383432 251198059 663763428 438724593 608542224 489074235 491549341 788198893 984653689 286592010 599302597 156201516 515702900 635512122 759464975 966439130 974076731 590949073 689797674 5701219 932323561 733287533 831176417 356949965 941824920 44357867 906013940 807455498 884782144 350304231 445994924 784865816 932408129 849447494 934952711 852759422 862210843 293739514 752574494 150453922 489412848 298746694 921484473 92635666 623127054 911100372 938106277 679447716 876385240 603276308 868137526 850500527 975929695 211490867 951811419 534818917 802255737 680244367 979963832 376018113 389814372 791255470 849315441 429098574 985453202 955776096 997435975 989387674 995886931 936588221 988142324 393004233 477672530 143061537 876116553 968646056 981805101 111858869 956545601 730395886 832334143 815311366 992791649 120689905 283178163 487823039 538519163 60784104 522431315 373369733 633472577 463462825 895878433 293227972 723923103 630226744 747346171 779795476 832268733 603552163 880343823 783872339 788619727 917465039 929000620 849079573 983347652 988620611 999537883 33598462 219530680 444695505 558128889 817001268 952355955 625933273 937891625 762814758 884488135 276175678 859136456 94868607 613125092 68580997 865685149 719724486 815023267 187908033 932178648 524170183 977177595 175151621 398426492 482792025 693666048 402593947 814452925 887317504 967428852 752404543 924680655 85907188 750594782 141880765 323296989 156730519 788066394 632105754 771567390 444178247 630446110 775654041 962455604 842180128 913642361 298406806 822110595 58780315 451273426 535756249 957885010 149018330 502121019 308453748 994120248 332683708 452848331 383670800 464734543 248564897 767935538 392385346 769543273 534939937 778622952 770095003 777055953 998779158 999804846 789021009 978752934 267930608 873873536 634146798 801732002 8053339 119640203 280637641 369556307 431335408 502019098 507407186 881347698 255679488 575445206 697845973 739092491 200655152 343822389 180771721 507833829 943597513 946248118 918328670 988746295 301685786 604750663 502788601 633291737 389230432 612756343 619601278 977816640 89981598 909010262 798399183 799334460 385414042 493901692 679551930 749267928 423095482 614988244 420429517 672419279 382674629 894209763 187735265 202605820 791500834 984236237 830137699 897859429 158145306 841592919 26515772 409585723 662068723 715007947 783508309 977581287 93638047 654536542 26974206 725415400 984460454 991023828 615989339 716944661 776315342 987165235 506371555 788077785 916942149 962160766 320208327 856860016 816787921 998446434 192891633 884458872 275499462 473912475 515395893 568564387 430771230 519910231 203007730 990262377 892582799 916351736 64532907 700996563 416040037 514658517 830294996 861583144 218106532 333574144 548307406 601169457 837502135 930371823 828289961 935199835 685624846 784212738 405898260 945770548 340160670 503150461 803315618 957335794 812993023 900643720 5948734 572127331 618001386 865804848 898919556 983409221 635692061 646708662 907592425 910110259 180020530 365564362 73848088 447875496 663223172 856883481 165651230 271656485 921762519 924234046 902318487 924135051 53288608 150673928 770213781 907393602 549321298 687542937 965747 287214542 51055762 142369039 176102787 861825132 822414444 891114360 425609800 939375884 538483809 979644797 627705570 702524787 460684190 697009785 306546015 837137653 858765245 880617680 432332238 581978410 406660763 680503328 460853146 835284758 706414839 970343269 286160375 623176144 107402595 369371393 619801998 879212175 259075886 464786353 806873617 933950519 504656789 635328853 761457605 850267581 722086943 839020144 619232125 886043841 862206853 936783448 455316337 467471130 149862307 615927137 447400031 595176847 133259473 310962720 537239136 647868445 781826485 791212147 9284523 18537188 942379077 981476079 783715348 971576213 234251831 661510424 826088317 994285354 101829444 104536305 275117112 924374022 174642760 534180921 44074913 976931354 408529753 418604761 652965818 660892973 945786710 962626404 236023059 640995077 341342781 497966920 31263937 624542153 805613542 807783172 790875770 867282519 842788694 903854767 298767822 602561845 479033391 756123309 908103568 954066927 689562108 810341698 615374788 660121279 332472921 949269418 54254703 979967633 955432036 965234904 432354955 573240784 513051339 589412611 666811127 943924346 154297013 201045425 40471047 403906273 770272586 835935998 856132192 935183800 401375350 621195696 599207154 787844822 347164875 808009999 926521474 930091306 586980189 758267920 11297270 640892055 980128890 998035383 819572902 870779285 419127963 895906796 645027853 963389980 478042977 882777534 482711994 756476198 557469787 610290874 189676761 698404127 400207802 762170896 942841856 952706535 569125783 620935198 160602150 530388970 951391242 985962791 334145792 802656474 102857165 779203246 311270621 808369783 249374088 936488219 963508322 980478874 940801200 982508312 436010773 817519919 982518878 990270375 114875087 355587117 777968343 860294560 536958200 538094368 39208019 848108825 576342240 797800862 152439226 314413689 69168720 620081218 384863359 839889366 433252971 997346111 292605469 448348800 162970890 256026180 206694374 471861024 406110627 510240587 248024344 349062619 214111322 477198946 872782554 894006967 749488305 954035576 479006286 546775993 567171255 664738636 923461810 943094680 282670647 981613735 355104300 905872248 863644287 997898150 85731808 666241795 748955123 953522825 101854432 698865152 702337591 779159156 109312958 687463008 657147823 743418644 140954108 187813999 247585627 682837889 610457896 941733073 877867747 924170684 574612530 791359012 614456233 905536919 220468618 788390901 356743571 991918806 451330685 574839637 335923755 903819208 240391190 633126407 69875671 450318637 656658580 684753385 605794255 765193344 314544689 900074817 371670044 640505622 230755405 587496139 247722456 552694994 920901893 966035224 688005033 749695329 244853517 994162078 233382783 248140352 727263169 792927879 739213718 784285970 47706410 106711037 644578379 933321891 890594955 983921231 732095025 932823682 351404909 390663123 141313530 453163560 671630216 805866504 827928959 951976770 546866139 781740690 611032031 778661665 307141323 343123713 953206232 993920016 529948559 836640215 753089943 854788314 577814408 601176377 384351130 929299230 69067212 243957498 737115067 741947841 237391011 972636379 890308465 948658185 513160645 648105777 491100660 966295504 692332917 822893187 690036951 989214567 484956686 573696506 196574473 689097068 741818842 920073633 984809107 995875416 901577542 947252170 218074959 634711552 766252395 914052906 414895172 952590508 843616668 991615722 97463815 240236931 714371404 799491656 227163446 802577603 65574665 837161480 724497320 758095985 164260306 689076083 830828554 898839915 207372255 912740532 784090103 925277235 39375031 42416552 939501320 940251037 237276826 770080106 614845999 912979262 289777532 433117331 355629388 958868537 601433632 839298950 631286939 914498303 746940731 887435570 871419980 940531159 509460087 639771216 548631394 633189472 543702316 826079493 918267377 970077856 784070492 994635865 721445841 881794293 394554784 470814012 349581382 867638660 594674987 821619661 248741640 985399643 139151492 468133454 426972166 484145698 576525521 624333372 70724859 745297900 725676011 902026054 885119633 952607508 245431089 595219434 862566353 954412509 813262688 906805755 647209173 737875540 695962680 800836552 785914586 942286914 250069958 709652569 587068665 844258302 758732789 863478026 42323009 730675321 208850309 506170345 412277343 810283482 972886136 973294416 875132390 976143964 956249186 971878562 976661873 989396324 392525108 494282599 144178494 774388104 754020632 894658190 353124191 798676815 781095048 931273955 22110794 214859921 28210656 744003432 736844272 767393891 14969304 238384051 439552042 860325124 158614207 286748906 765304008 961084931 293658387 400587127 189337903 460846039 460155823 705174782 983548865 998867422 245092284 844854999 230951749 402368927 849326196 949259775 546789969 785108385 329007499 854948884 234062748 618090740 1964228 273516245 816953814 843586818 118000872 804758958 384722630 697027293 727633078 944368464 90461026 307004176 320617012 457942821 864376194 973473102 599554020 776200262 509696292 948715705 771661298 879663862 119617124 975423883 291082729 951948379 136458218 307447933 349797637 800321775 246477439 679276528 14623479 622682293 173235294 979621710 978446502 983534351 788413473 920840224 280330694 313008693 200797426 896822663 793381549 969935672 828497305 929635617 77817413 591150397 933995638 953557196 917327894 979559025 410007379 618939369 755675207 811395285 346223174 705177852 416200017 432057381 989235187 997068399 777922698 846772541 130756101 398573153 890335234 987446530 522858068 646238711 546987249 719111661 928655944 941315174 381956146 930075654 915887187 964160291 126246947 127074489 459974422 481385209 655752582 847716351 446532151 582355848 830179595 885621765 443984901 744009537 391745068 707226867 977717238 980562222 682711280 924222952 297804441 587904575 25466642 791500997 912970111 937508939 31948397 144954037 218141162 856922522 747803692 838088094 3259675 370545605 638573855 898012292 286788359 399963501 903980639 935711241 670959416 965512536 397870005 942936515 216079513 786200424 574883374 602107262 397971347 552783835 712390072 908470154 829878671 911309079 310945944 818819993 534729341 945666710 808258146 840056995 449015306 495633216 60647437 274322893 395537601 702816443 43527873 568318142 260451740 321553158 739930619 864561433 667356932 790925948 409604561 697292459 430703413 627830422 446355716 520674007 649632001 875243837 466634860 749703688 699622819 779665746 313504542 966290389 360574591 724634229 612366 754014338 742577192 796149135 857463796 921415249 70097552 449930796 791531392 821267812 713530451 937424199 91915771 652090627 722109556 792083989 73182204 367411775 844340696 950247849 941198747 978442213 336408979 672345622 202531740 309138887 790921476 901779637 593933158 611185774 995213406 997480930 749026105 882322935 509584942 800083156 88793825 738143872 378401991 671356311 120302162 815740824 978398544 982815924 658221934 696106843 949980889 979989320 884555013 989324496 638473393 672720734 809641160 967379085 763168133 797549660 90483718 398637434 665572604 938677578 363523796 626026622 459830658 601481883 85464498 676151764 252701353 662497462 966789519 988971133 899612587 936376684 257474432 328801082 382344637 813033680 889745730 953704718 356199666 967094335 104325270 282363622 470796243 699867990 2065016 858948821 431672084 974007063 372762445 512827850 328670184 350692574 334585178 721612585 490500482 643437080 915788967 921429493 633765736 824988245 387986798 618534240 484045889 584252306 681138318 972679509 41780682 912448937 983935713 988420984 133927460 863264661 428341214 463749723 823286907 833209414 432169418 819323107 469829655 491029482 993877647 995263940 763730996 853796394 638384879 950301166 855290287 994846444 974635755 975485660 283053390 297331623 140265108 987164866 464762236 726174139 886917325 922262928 693577115 869160887 311088971 400896143 824526878 834738742 613943429 621116084 790271648 866879775 882331757 987077760 124213224 437977757 380241135 734409656 509857982 786804070 119721054 574586683 968877353 987870655 729646699 905850033 852970653 984570604 726086415 866066410 735163297 848558789 47075722 677047024 151080065 283852509 670653062 978292925 970001479 986163869 694601222 871528579 460089754 980948259 277696310 633935245 251155851 909864217 831421233 911424998 596983395 796686621 1642236 611345957 648332901 701049002 124877353 590713004 764518936 790834613 915861758 944791958 612337311 812139508 410353115 790531279 872574132 987050305 454873527 988800008 859949906 933779544 955035461 979742437 597718196 641768848 260603303 551426596 306490994 749334803 173010680 722835981 326003166 796669121 445546105 854305174 894583504 894960890 586508470 799280041 906136966 993435700 283984626 646385133 524810903 965579082 163224662 516605959 565517824 798826326 905638566 983194303 996056439 999051652 221276111 884987672 347201194 515869623 551648001 961766638 336979988 490763841 704490503 750507636 654890761 931352332 576804633 961510390 148293572 753182090 554226991 593513383 720389990 836405265 613031005 843362616 339112655 716282820 162053264 253349134 652161540 881982824 940646364 962021275 887196510 903086965 53504736 410483625 113741362 165559769 967040182 982330816 731827577 917763148 80155754 599066997 933112017 968766987 693301091 926336456 441105837 688045835 744052296 789403483 375076738 484388238 638648972 641815548 767953305 795736139 680691360 965228339 522765263 693068272 978034067 997925181 61586507 114629752 960588574 967487136 29046610 115762066 711650428 835684586 253104502 986118714 617929448 861728907 646214554 695235835 186628065 468569508 185617706 471427859 637078109 990265004 245266510 911992148 142930559 582593936 480683940 703515270 573112042 921171753 784757503 957986090 231259012 932276584 98101215 476310590 435565832 974282718 589073203 728797637 95137723 400507249 151438987 634775875 433756946 662519809 392995190 484131642 797995801 945952785 857806198 914065369 491974091 828501323 665828193 857397511 634720244 646404721 839244466 972537846 468967585 474790965 837426551 981954894 916068487 994872121 581812431 959657608 372212591 684238326 968107326 990551648 164729430 754202902 135008120 436297292 62299639 449196559 186831441 785589567 801334037 830658626 345953306 442366334 682818527 725411885 976475021 995268212 290742908 789699636 687349584 941056251 562686003 902321313 336753510 706792405 826062943 832472549 301764932 380942208 475939074 924557164 160220250 203652467 784484083 973896798 813976057 966826340 783772867 872250102 944454680 983687893 344996248 546653668 369839910 895085827 674456800 755622743 893520919 900394785 607050127 775295733 619356238 845112404 732768754 930097676 622365232 888014855 859597372 971057306 444279395 544108529 512290234 732809324 637717592 926969310 920270649 953014857 533472175 678107946 60936127 237059686 890234763 946662999 514250829 711088159 257998823 860329072 822998271 989598069 761267107 946830865 756530945 869927946 5214484 199746874 370177659 704900424 262345221 690099874 385872085 882077212 107608024 284360739 898976161 980888325 836308411 964367762 48726966 451676192 338355983 366260352 414762611 808863317 63197073 669734581 899512895 935995517 654334608 780926427 578595674 695354525 5890748 911850900 903323781 920790415 773231418 880950461 187746277 817791503 43216260 714260193 875265803 917251782 764766651 780167737 561520102 821032370 534754286 913143469 740432882 791335934 209532515 551987014 344808314 847019854 707947543 932627809 556237815 789839400 569326247 890247939 13947300 284705616 509560387 665337768 890193704 978603829 527380071 610271552 451424447 526114424 956280232 990931679 81030301 179122105 560573153 616734769 266338568 995411569 453535520 799316104 284890940 683386025 575031477 770666773 435152216 609115671 589039292 713762729 193720451 927005292 853000996 872417307 570585052 605270764 403041783 559181204 778554348 791952778 656530523 963216093 161726145 980636311 990438280 992270947 810964962 858565585 593215064 943126372 213184049 670896853 930109581 930691001 738575390 933724135 642202408 789424040 885171555 976859514 403999561 587773386 155315757 472734168 37761571 149360229 542335525 918576399 749903577 877526337 830666891 994870152 15442588 580432920 899662414 922789530 368515756 390291145 89849050 580410332 458083003 568671783 772842027 855771953 80640097 442036208 860581557 939479691 523427835 940823838 28834439 719648750 213860464 495773186 929055056 996870274 951781841 981025649 582759252 964805800 409815778 774895309 736384542 760662054 839825124 855578068 734351725 859067631 263140967 924774128 10954208 35115544 744036492 772811237 678115550 877844571 436601593 831812953 77107748 124552473 792940934 815641036 757204590 883172348 531663897 920458817 323305753 691732477 978091355 999051423 332738204 967848221 193775465 370277309 522313414 699730890 547416014 931323867 10556932 794679327 22493292 225811591 273762669 576558254 85532475 758035313 430746942 573917508 817895948 915603453 28448915 674653511 208989096 501486782 867054508 939836424 922944036 969091308 361763904 501756872 784395998 921891200 21741284 736803085 538424 904290823 208677044 754190062 126794979 709296643 779437869 975047956 560258247 705198183 965751502 983614074 987007995 999764620 534666969 879595909 919394214 982722063 951426620 992302164 806738556 907682496 183057701 345883941 718612686 733343930 546358339 703761927 348855274 609221625 271658125 319125427 222681327 474736948 73221630 691653711 70137863 726082698 309961076 676798909 840604306 858319106 561529648 880246713 279268663 395277990 951620511 971322065 583286553 716794525 901480000 987704275 444693009 879237485 670998401 726721873 333030808 390507539 962164503 982742155 171018346 610272604 95516330 233222127 431813660 930379229 945123235 966455264 43187873 487304070 740577467 744529733 576478920 743746908 378358614 408696031 306443386 340233352 377954287 476782065 767167744 776551910 28562955 118205435 3693161 383732685 538489711 643290230 533945285 777683999 421161202 853306353 264211786 396957387 543271325 664295226 152417020 907109048 536374017 803049470 237216369 480850883 696491976 891462916 545539238 893964204 372914083 933078514 444842192 717817691 528946171 549597919 767864140 930618017 837395776 904459336 87870587 395214696 95786876 441507458 63955777 876217960 666762998 975072732 617496773 958247010 357148584 766101536 906313083 968218561 385962171 400618400 29879866 859822893 984086015 995067499 474718026 487280787 423762040 919750504 349233919 558631639 309158530 983299420 435311244 867561170 766286144 854212413 136984824 179440329 623836792 948942236 499679728 701525925 252077802 332481693 247205647 998469163 63179544 513966446 789417711 979945369 196795040 374621151 364045242 818679056 394206015 860473043 77748219 486873845 100876395 408179921 196457613 334358142 102085852 876886640 981801295 984854769 382542493 533261634 893546783 950415424 836959325 944995756 62067357 119694553 68303265 498567217 760752316 938871815 101688299 234269555 388804441 936450917 400899233 797528228 780981586 952906309 716803128 738093931 14612456 95990790 662488612 897098344 781190473 822096851 764668496 882176882 43952150 524483183 578911523 831296792 830611974 842308291 572084590 680473723 919426809 996753433 507543210 913187116 213034728 563496550 706521322 718202927 217286666 565112437 207288391 933493082 967825784 974410762 674853661 773633858 645102058 831157194 599478169 768692917 218350537 501924756 926790988 981702433 378277644 684042176 48215665 569332460 480621093 933061463 854373831 937798556 179903140 582501590 739616585 946363836 152826796 522185765 96249434 762099373 265360121 332294728 785630096 799075889 872932729 993435292 334862755 960863860 997022184 998779636 671659911 673113208 932947405 981159818 769280072 899596163 703252533 944937636 357355832 649992929 257426031 652583269 579645856 812830784 121488781 232280457 681151740 701839510 194200432 237319182 941656888 981020420 709247853 999714993 241524872 708654893 916425026 985317953 647403382 828485321 666491615 965006700 384845854 731496919 667093826 834502257 344368718 832475335 550860399 770918572 539944970 991051918 196718614 252215459 339317055 874569674 398247468 421799177 442917725 663636280 152429899 209032592 368261673 775158445 786681812 862817530 515835999 763394881 627644998 790427322 807195535 811401860 705061453 862356618 532712927 576307872 195177107 317075365 919414911 961663132 501927139 836664877 78982543 951720182 144940085 552650669 947920485 951387913 936356385 972428739 573479076 919246765 247376436 834016361 124580584 796302495 522273653 643284525 459102472 525822324 436733118 906422810 488893798 920825399 658922860 881869852 902534553 977186323 877424226 938306351 253621665 921946923 393274572 968282373 657071562 704364500 29110205 614612867 801846115 952589892 245280814 395314142 817115766 924416943 725756460 872076264 424010490 672128463 291914575 868029682 130141144 814572331 155272529 701862119 845590221 936354918 329274501 859635711 139200091 186913166 588013245 819311123 544506262 857242955 195340301 956067237 591648704 697682389 70400965 242784577 571711132 655462378 119726070 703475146 852144427 909057255 410557582 988270882 379403375 722796776 541903506 922010244 121108396 403686488 719507797 990216910 603536287 689754080 940798741 947660136 780717951 824237339 383595117 689930464 891864474 922142333 463658540 642183132 270781567 679707305 477694439 482876080 600828737 855478168 607660208 851698432 781562349 866801577 631533793 660956122 128943197 494994143 658587935 850951131 964346059 998249459 521728188 793644755 416630643 806141725 308288569 635729234 190562032 219113131 117558350 868311322 143065727 631464768 431983214 826777888 969668182 974129229 310853937 807907248 726586990 854478453 929048092 933784949 909780669 957471315 422735139 720548522 410583070 538506645 667584859 701200087 213100086 954556320 689246289 710682746 302194335 701243003 844716414 849946469 927684755 947465217 92787986 778974109 719492548 863171714 171665146 977288519 950281456 960623012 760264315 882458122 163773958 554832108 760837251 837147875 963993263 984693890 372227259 750949185 781175473 879055323 904940777 924995032 120791788 543569458 931369792 987675649 986523697 988331690 292478091 609393573 349414722 429423510 365413508 936691989 951313683 986419233 592069597 781325630 862508650 965602444 227766857 721067789 311384995 595535215 50703386 88182382 844965954 869366576 87022125 486002852 434093085 693695010 281494514 709680407 698721931 889063250 890825753 929428839 873302955 965854010 729858081 881036900 1794777 681712663 916727097 937324641 493082809 978304664 532725268 750537991 443812174 979428223 485911197 976663306 527364823 997554760 953989165 955745257 566667496 675300137 768979067 826241923 80667269 238184336 854448974 943885727 98476959 616030720 256332071 431578372 417380369 815668150 598128281 845201733 428327552 602819511 647244021 776717671 844911047 960088596 376894933 730041673 608030229 979883274 892138690 953827224 521213643 585957999 523056290 935448672 124762530 842248074 647355178 806383155 134121984 329758001 793274844 973925678 38525316 401352077 648162000 818622085 995663724 996059987 594402034 899943257 318171508 393314146 343627521 549060973 76054565 150339252 537576245 656283977 561319184 988601388 931202689 955056860 799403398 906835692 992129918 998497295 10967149 32034047 707268069 767446101 214694416 804840373 450208616 804616932 780623835 826695964 674410688 868812434 919029033 956020795 916254326 985212628 998989143 999206523 387840107 592309400 63529625 912407891 922160288 944560171 525428237 631601640 742653317 974860327 768996634 872218166 725112762 781438339 672391160 958330022 326852474 499262371 936135138 947067158 911685909 956682701 622719020 842768923 538526128 773021741 435836812 917686383 208501135 365737446 818654653 991962860 22078382 884905214 572415764 702793696 570599779 919511102 655144417 906814718 780900091 816765379 684102088 718178692 107170721 318367445 262486266 532087941 30755496 646500031 155654038 953683283 654275051 912492155 165783999 481457394 686967422 699445402 546554984 719444029 741464232 982104081 909129637 987702868 794032215 997645440 511290656 740107474 677781059 880875465 819570248 959831730 25270253 526242911 386277373 509130196 375677163 821921760 343820891 497782883 113874307 487171714 601479237 935377082 130773628 201602171 855920835 905529639 765040032 951246441 596165334 902498083 966674679 967250655 835853661 985953169 769234993 906399644 752688293 933967684 409978456 551237643 289661050 779070518 452034461 985349081 19466181 798307108 798822790 893660308 511882927 887925108 16971676 148830618 7155108 208226142 949032495 982652317 446424498 630948445 962423371 966112661 989872718 994866947 603620410 741642985 613675939 805560040 741044656 878564562 661772113 980965558 502495284 721555618 522908619 614850088 381216357 701284595 716257049 894195834 268164202 334315113 767766804 958439991 811292935 870452658 760240038 904207045 106342153 197108152 434842307 682563559 403958197 544272239 734447513 772772392 228254226 431485292 824401673 941715701 171151912 613762158 928343873 941438586 104355792 124559014 278188371 595410425 948639748 959233727 104588829 237020049 719528464 877037034 720474559 988972056 325176609 344036124 6057920 336826709 594011790 617678245 819758555 992696299 586097560 972170401 498709989 502039026 886261427 999291881 820351530 939849333 908159294 985389066 662386769 935598984 340658947 667154314 737317474 773821132 982174441 990985931 249660958 830756762 434524006 703286930 392361777 966760282 849428332 912761447 744493604 929483730 418414548 819168084 619136838 625043743 947174988 967536865 215568023 409308700 12225389 218584992 467380830 491174821 773599576 838714436 820748447 929893042 427240881 522160806 909735611 930462270 749719579 767667845 41471078 104887955 974394971 998238252 413856346 584294296 816577413 978167224 751996208 952101208 559231634 562266562 316326435 648110737 431547551 896032714 224988854 609849373 217414197 616708049 770287613 837400299 950743448 964831161 671448464 839382699 220639128 993713581 614426517 731598764 374326166 824673514 911831330 927781601 226323500 756893998 249972999 319267867 622980632 956244236 242189538 872242713 503077330 682898060 890684202 991573581 190405409 456565131 900202938 931499561 959836406 979341216 869336151 897929447 398175168 997153613 271324022 296351441 42972781 507014063 289552202 831865724 344610444 371236658 5711223 693108416 601964662 960833342 211560376 791205808 355935519 756438469 501819493 843753684 275396329 450575386 841909594 894514584 162113884 636373840 827655081 875041737 244412 749350075 339300519 615689390 111773016 854102875 718760086 883185699 526482265 803859153 253377823 988798869 158620750 497870607 183470144 962036277 760238395 924348795 306862688 368212964 329035714 554117281 379818815 534966708 440764916 542816938 992086994 993110866 683890225 954512876 574407909 785693991 715241889 732807599 708860120 860608234 66089196 425120146 223189739 844886475 452813923 619015491 291711707 898504141 702741207 947567661 181604017 841379400 338708323 370045554 963238514 965355081 886865354 888036817 521306976 534119359 340684153 908364962 592162248 876094702 117487280 273810690 452672522 742296612 633194364 859279415 492296233 956876759 452116276 872313785 299759447 323420521 498128618 556431153 366724 238326577 553192067 988099597 198228646 865120625 775008896 998160079 515538483 566593752 74746969 763325259 920177201 926099834 757297882 760775986 997717704 998523103 416404904 924418317 287862725 323708667 109535932 991307780 935948286 985236556 906073510 997568470 911813776 996837315 36544463 523354068 742064018 994930254 459434406 901723930 495314533 966285698 216829386 546723110 855542410 870542453 489415555 741362321 387788002 648834648 483070362 596104373 846946600 944542845 823370788 922475306 127408787 646762298 383679786 911105141 273772277 653518566 422071082 923703671 112150890 401571860 141258894 696304208 436855836 857023827 860874090 921552393 913535364 926444141 450450540 810052624 90082185 634154939 204530981 435576621 682008488 990412655 989418649 994230311 361080157 795298885 615107961 615416062 554657302 616540537 995255518 996535519 494053273 982618043 265476812 919163097 861904954 915233187 719521994 819364147 408243307 753343494 382740094 578534790 361298963 361751852 597972017 799527167 858382583 907421401 583360911 996480218 335642702 360112480 590122922 603398991 466306210 750855698 978767843 978928235 460833853 947122014 203736415 526720244 837867411 975167625 205553777 475806475 636340992 789718449 167853890 945866997 264423609 871658830 982703781 996670108 486706452 913264618 913170831 954597430 638345367 855270339 685527531 771669826 767988342 847260353 66468420 772697927 291071926 773469589 50527327 340094669 195304464 522984440 294726587 810314362 69443538 178247576 487027791 562568699 781723084 830998835 815341898 835681603 626702820 858045243 550337508 771665547 409490116 847544156 793003532 888159534 487160653 820499283 573139151 816702863 115955729 363787863 32172040 242799860 131623306 583903624 933207636 974798078 540547329 967563033 539319434 881866453 849035736 945632998 653336567 799317981 452447759 911986120 205570821 643858805 946279532 993376366 614413512 770650668 621604731 848548006 943770427 952844628 192770832 457870670 272844906 499871146 85112879 101461394 729221008 947150814 238337872 595200884 481076131 744293644 463064313 635489128 308596058 523318452 289596231 682793084 977133610 984639185 22654679 833207346 424931378 917785053 682416606 924187736 386919393 943638995 55333283 584236420 449688814 684443023 596259192 610266139 207974646 700306880 824537184 931402266 169876138 646398569 930820926 953034782 852328833 900896166 876171195 907731765 495136052 844866404 412847962 783963976 504147553 913349999 407015265 650656741 136099376 942424441 157745932 485309751 59607138 203881725 216756152 720339747 21987404 174279553 466057477 482116853 297888179 505647346 743187685 927556039 475390645 814801581 607267588 920216995 170619666 251559898 410913426 643018841 789604668 848808647 701485331 986220938 838152129 875068720 593315642 715473111 861572409 949711412 589579356 673388498 834392201 876297126 387275523 841220974 290772569 342762257 720861668 998840936 871948656 876633828 592042260 854410960 641797315 996415385 560646496 992639859 964198671 972622192 177336318 450986608 206882537 790124760 98208085 853696521 452643561 935460570 371976501 867500273 259708760 807168573 219229175 428699003 24283481 923088095 516321382 828288566 161913438 285599850 481343118 589816409 792134231 961865282 165559339 917780318 111972710 788419084 901101779 984217580 264825932 925822589 790163440 866701768 440429284 729996309 777256495 806296114 380176355 555748348 818862933 897928256 910309739 971555857 868273621 916523001 747127739 955243365 541903477 802539915 96203538 156282111 100114301 731727498 286683969 755470038 901515131 959589608 203511181 390262676 388875132 704506736 404346541 447127518 419317001 524502877 419299889 471817272 233722839 977210608 109368362 455104448 375011540 795071994 158461068 534715271 931841750 995929810 166627244 484831745 328636867 439601149 880722142 895383107 556628637 776757917 887755928 997307163 256030922 751992766 639367776 957357660 113852047 898824090 814978058 986516070 782389001 928045379 806710500 849123832 904882562 959269402 594697780 778062639 733959940 917071597 571064050 589827825 774975696 887612629 63963326 500712378 965253868 997078880 918151993 932138112 590262264 611868646 810599932 854808139 687529154 878336115 151885985 993072818 818842240 852576579 554102321 872964598 820811579 849285079 349693874 513244414 82498421 348481006 269497867 476096832 543269419 841751598 137623043 148984415 66004492 387241885 747473770 955836243 681926868 989693363 900142918 931354391 163185637 283338614 513050668 758340685 12931990 117611503 106517021 504142337 171321549 901749843 746911736 975921609 325260599 373128580 636857535 743355853 569634103 840656046 336026450 345960561 9796971 421892805 316986528 944956956 684162014 765466972 381308657 998326356 963075562 976595972 838802913 997841867 264390579 982809390 11347596 429282145 334273644 367811099 929125641 958316130 898667008 969925622 690234210 815275227 357830312 754045525 974208385 976607590 39649105 360295320 740467442 814010341 819715562 974563988 225654692 988223874 693499487 916180507 767330963 866437433 485030282 547490828 944093325 961702527 196522523 405858059 554610263 670626854 58177636 589794983 296299887 456297196 483343162 694066476 108739261 268960676 619063562 724610503 136125543 991947368 153256976 261198958 310727187 530121734 926444837 934835529 547191187 790324030 393752087 550677174 810435198 938289107 786143103 799569319 628740247 690106985 921846643 969372367 725998319 784366222 912426583 952829299 355490145 942742312 586491969 751112003 245700653 632670172 493506588 970631343 912417752 914145222 360565795 949477597 901820642 924408360 429774511 848715921 268108699 563413196 629660649 881762359 833033523 940741974 309703789 426451842 675500178 867794568 219919544 889738544 798091984 989552221 505689677 851560417 326556097 885411030 296581728 709945591 136640678 506964682 907122863 960590525 464864136 884441846 484539237 973672820 553384536 604854259 303902728 668646265 170395213 525785476 57286919 291981245 741976814 817772794 221308249 497832943 842334589 989503017 298127108 412899108 86821490 101924207 715168600 970438650 12831634 920929864 341423780 938003993 358589341 480406493 805890341 911322764 1839699 77028016 814470204 909159584 10366836 422733138 418111552 930451381 232775259 308721446 614856597 634454840 149899707 795498602 405919909 753221967 386014855 968606397 123517167 305307765 25608036 614104205 833025343 905725254 498515117 699638129 403669971 707647916 725150797 728118592 845241325 867184272 795718186 853585582 718084410 874050044 297951302 749640636 412989610 728777402 813671355 912962329 576159459 902468989 775233394 961256039 71042758 371555898 153077711 280226976 409781831 734268294 872348511 873147118 91445591 208673093 518749853 769321454 328629705 437190316 122751872 143689491 582628045 629955089 626146970 718928092 395127850 764324256 846350733 959960700 589014365 620604840 980502406 994016298 428616536 919555351 449190354 678204717 228754949 760605937 414474775 689764103 276243258 675814221 825052005 956962374 492689145 942058856 266628586 421475172 813576875 935088439 568590191 628621812 364711725 587876061 360654157 844874076 307216695 549136769 907283411 959536305 306275057 733619919 294970222 315463100 195434324 446700298 37401094 471316332 979292390 989413499 767146812 820605498 864278112 890647708 314794574 789598950 317527792 747457120 829698931 910698237 447066556 739554083 228695275 483115360 698235571 718174446 626241431 877371388 789500374 910576884 530763617 803592165 859878529 957386746 879064574 920292407 714734573 890203085 623462125 746962553 842921941 928130743 444532854 519694787 394902141 619592826 729465839 797896205 161009387 814013674 567986505 852744196 553862224 640098129 675714825 835533759 715704792 938895034 395499642 989352769 10530375 185764899 95291503 231990722 260885067 479246220 866893043 905778282 259332271 847899366 918445925 932112475 507248755 765984067 929812004 936744986 369543470 754270634 228570998 885670655 251446192 499262930 458864378 534329740 662073402 920792821 517856652 864101469 136698933 457238412 431963291 891346685 942012239 986843889 17119664 342541211 898457282 978361249 357391056 452160805 358448601 404510952 66038890 568732932 577393418 939794359 918110089 924696789 925712027 960435422 334751839 791267051 676713944 773969561 192912546 342339081 942784380 983186725 117914267 640138796 728596599 962536038 513830106 546729853 620648004 676116743 836881215 994884358 129414646 536067913 231343544 859228755 104091394 149956769 499118465 857015242 311976082 936253597 596361166 705765561 908869828 982336677 562991859 750131129 622029442 794054157 759117012 941791621 576498302 833954857 186078732 731620809 353222760 524126049 975309062 981698774 472036640 977619657 55552399 649767133 491236247 956667204 671241563 988885317 293584130 867439565 384674796 613197401 342764569 608321525 801665920 956476422 165468869 488655462 476803339 572002588 511214203 959477414 343482147 584869167 735687610 957746281 750640053 860734830 690439274 706503038 502742316 805659680 591462275 757170807 561863518 593444496 517062834 839758441 385531616 629140760 35424236 473420213 498138586 668309189 218781095 717177026 11570907 618960589 429344643 988726106 99452021 517771799 779889275 994261471 637805737 986364026 133442904 252824698 328868614 730982554 183178096 197718750 352391689 707268863 613463948 846789342 432964735 464571057 996533566 999135156 396390715 631295678 652586838 932293856 862445955 884168781 906222847 966740352 589474033 695580395 511303827 683320187 271905057 654912835 434934356 485651982 57231773 147534193 405533451 703128134 454256048 793077203 711044956 724693112 300606489 803852217 128362057 423604696 636100838 971053035 500781172 735524538 495334724 523690850 402981933 989560354 340393352 666331608 770029618 832841658 289960945 682670852 151445492 623881973 904776559 978745940 35282128 654255176 674033867 690560741 409752608 731454374 914107039 921625786 312396892 842154330 68865135 812370197 894185444 943769879 311077903 377502968 277948405 840704195 915739621 981965801 256444868 730986356 289721340 509279093 873114031 940117592 970697419 979836521 383497061 605036289 58259052 707843937 393843149 498403100 272744591 753574846 609060073 765137283 854890782 862403411 351336579 668911540 221232005 584065826 650559877 856449550 728536188 973887286 203305332 212191115 153444326 747843493 371924017 713118666 497504082 858496780 755684463 993977280 434939835 806969041 502107985 723007204 315123066 576020595 759613584 858915668 814998986 946618305 547679635 891567430 749421008 764876956 935322611 993200566 889566447 927630368 594356378 724594286 193230180 358519611 393678787 651887487 511641779 709065539 853238759 948106440 231641293 839248043 271805176 675811229 198411704 845511797 976587026 998389314 735822189 993878488 786150642 857507615 160475737 708737780 290566416 540191553 537827821 921138368 789718465 887404557 936659259 998059916 750986821 984023829 22486868 486669114 913258152 915307513 489773683 790373044 9687585 515691979 820681630 862747824 162353195 298445512 528985922 949571380 752293014 927720101 531489245 996342847 969281408 992709947 749296625 992817797 449664427 668393628 224793519 877789113 571131797 992695213 396662310 473927308 207704134 408938438 990494290 993728342 562602307 940984211 328698733 993805518 565714745 946499910 540877138 863211302 548480466 664514400 256709086 348905858 687937221 813531928 446128041 746688196 145996597 248348535 907424813 970884883 429940183 931541494 655602244 971565971 183884592 325945743 496999971 968631940 604272552 621946562 701553290 860301687 122912395 886025420 835425570 879085399 570004685 949320472 928058588 959462954 516857890 767508448 964925309 983946354 45397514 856762566 775841832 801899704 240380467 635126559 637729518 954914251 972443548 972476020 886381656 986284563 393552114 905840585 981913658 982891596 965234953 976234742 135915036 790316897 741558052 968022623 452239111 668496471 880681115 967749598 586965655 678316963 26442126 690319204 327380366 611781461 93939550 415296625 794732358 919276620 402403686 825810726 674939383 877935231 749328073 764319832 886123411 926471806 681256031 690948161 827646332 971754417 100676115 508511664 236564849 288013178 985607316 996070541 909205770 980581808 534422125 685283650 356051494 562246154 820078328 914708303 310887554 850945108 748330777 921065196 188577235 599616156 575044594 650604812 218795230 464449966 673628657 767245234 272274684 966674478 987002506 991096677 203092297 235915795 683074882 839344498 689570312 693268071 500657889 504476252 34771950 190504422 700011666 702719535 371319989 825112639 364894357 449551323 586788878 713847166 661174721 787550834 717979338 896469945 798116258 868289187 73410375 721119615 115433375 967020880 846402074 986968015 400261035 624071852 341248288 970217693 464382304 550658806 510671276 893926868 779694431 869823328 807897718 857297077 474247592 648366298 551466136 939076662 231944113 620162073 15438700 657345538 271042132 906667865 217272330 867779842 961933258 977148167 687763671 881062669 636873132 715177897 312640274 625675521 153814339 684747872 123906991 802500376 378688743 845554474 576641908 605945655 267588602 298556652 295605216 524050068 306773752 562816109 974346403 988711557 47809842 267786600 566234525 737032921 957953188 958314721 515596565 860530904 429059735 907618613 619258355 782416631 29860975 400937181 668840082 777550990 166102247 889123383 192082522 322272122 310150420 595447717 804761445 898452937 954820394 973799088 47690408 171341075 785245516 977423728 522074076 787468480 780455623 895722378 977139385 979056879 261430905 938289994 706787516 860834132 357591274 472158774 706910374 999435807 449941786 915835258 142966923 206539366 742585113 997961353 767583699 881138432 127671380 226738405 25849902 769095105 12802392 208368668 315990499 587436964 302241081 894716998 797413607 924278697 821270828 914736545 352621908 842213873 772927440 954012276 240466884 958039491 65450966 923876813 903293340 955457074 614693549 836177157 10370818 889463426 891466436 925203904 402341405 863883666 297937457 794776962 127389393 206245168 390915596 735066940 627505329 835008478 951507839 984845255 592555747 838506041 191085492 666349895 752734370 846785137 388360531 584839475 514667640 638241806 185553467 313878709 368290158 595300574 347507030 823560362 38044254 895295560 385210034 734660231 730068128 798280825 441024635 891031465 501510988 719437788 863827129 998082308 366323485 383209343 717908562 906154862 35902422 527401414 815536822 818042165 70390751 260715003 405925533 524439749 800957673 816447016 515528812 541974130 967636633 987607219 984030176 988262325 813489660 977575996 371994358 890283238 927157138 985686021 191541597 259415426 595246109 765035628 598931201 700473614 314898946 587312486 620756044 965031975 728040545 973355213 670183096 910225715 725225043 744598797 175055878 826765058 11781122 100953276 830528451 930580659 190150481 859534915 771395508 779428710 959544307 971158317 41363321 88084735 639043819 768141870 907127074 960456372 814195563 998680268 824656076 885393503 877206456 919385870 316358576 722378149 153783668 876338173 833350104 923548144 995363056 997892951 855047301 861953558 928891646 944135449 685227717 895910222 734435910 852324481 449015298 870272921 160567860 807468652 857968568 899682355 383091182 390425511 990147652 991338380 552888988 807538762 917982551 924766772 79978988 919394875 886841004 996766281 845217896 999266573 694460299 956363665 105456168 241543350 563268789 701348531 442591972 500058755 530935264 632124985 703616085 832931839 329012713 392775249 50814829 410689498 498087730 691611597 936180614 991102921 977034276 980097580 939787857 962249215 531091180 636941555 342319427 864654029 433197624 767666728 79152954 807106538 522175739 533783988 221855794 588838947 169918001 927273796 255465779 481884916 68916156 365051190 887296477 949691020 618545193 976510564 453492458 722138220 947288602 952527036 222806638 476546548 251782823 541729040 16031468 315681982 468804941 558353409 749540236 761988331 189994351 860927166 875554788 889721975 22057139 253113937 960675445 987093091 606155769 617503809 791579709 916269280 495290512 923674522 396212273 921892669 640427183 915240615 462851862 627627228 58514652 977701182 233892894 398896635 626028952 882014408 101352026 167234421 871884797 999412299 372302690 940617069 339519093 954550837 323562834 816016648 288291044 964300830 382142803 828784952 301154147 794214404 53307153 961710474 508582760 750985258 681281566 718151768 143112631 972715289 388893915 588766382 765021605 810728690 807388795 825561416 990854107 991910404 855634774 870601996 375878509 763187943 63880960 643150331 940096818 952235449 327610385 958192980 203741827 236586408 885925343 887005859 254332453 611603171 783790805 898144733 224510035 678578152 130344177 271951435 918593946 990535712 798956535 980952607 506074137 618631912 561337325 621745385 972713392 995289185 869153619 928035235 174057591 299672575 269904795 538310873 144485783 481828002 90660929 168178992 702542743 811559656 787718661 954937409 681771472 958640159 825959671 944782675 241614010 522475273 504567578 715082880 325118202 509322430 969593959 991183886 286142879 446540973 465729600 779485228 856929297 946671215 526203114 943081314 667281849 768188582 650858250 981918841 501301897 731034208 465035574 632179420 977091456 992895268 891789952 900204714 844891042 864678020 344780030 537860635 181351183 635083111 522947514 558504695 657818783 809999782 297836314 509546668 105452432 196471415 82517968 657761066 288357467 732442641 394857109 945897559 798690297 984261494 640660061 666721550 493813652 932720796 427658630 698341683 985800981 993671956 681920118 781471105 352359147 867291488 82788572 194667496 983399321 992903518 990267154 996972637 542460308 909716363 379779082 571106811 341041825 968945036 699906685 889768773 272916926 867473990 314599442 681468488 613262249 833088759 273552833 604027504 732427034 757672274 164400352 589719710 994191602 995702272 250673537 275347479 961570572 997575649 63169911 616523302 214133564 532094154 880864588 886503852 514776065 841658703 458100490 961422255 16645631 738441843 391556380 529463113 179406226 246139876 21138668 693875410 229520052 569474760 574316170 961854587 874426457 967329031 748768180 827051690 647033081 884445452 256411323 958559175 245739336 631921150 131472763 744327800 978238580 981730170 936593838 955784765 366910143 675376581 857409216 964418145 825990183 935289020 869084191 919356524 713589900 952409213 522506336 977346185 13699424 563689037 894835968 953574082 108392643 373914758 309468494 980671046 558700211 935795613 302391055 896224154 638927217 903468919 628007241 947707499 614730802 877839552 957481180 966421774 316353920 604358186 634721424 707303234 243187121 399210777 114397477 312134429 519180663 822396192 210996232 613686240 905668362 978902773 448850235 463159227 353996291 751799861 572123811 611985084 924598073 988002829 402118455 821630862 225840191 722278846 519536873 908728879 582651791 834676319 91031891 333083422 46075412 51696682 405578498 949732234 589367870 790299726 78241153 803447264 632544864 651005094 949391413 968667089 846231680 936027123 49442548 250872931 997803812 999402797 13501905 744550154 275134363 667692212 324659555 764877804 132678696 390027756 104033894 539953549 602092962 899052072 105728608 989681163 859286254 944735591 79461248 578706310 15801531 915174775 456542185 789749699 450023105 525274268 428017297 470842275 618742061 642077023 529757383 778296916 445904654 545876045 963493839 979090105 192260012 765941504 993163917 998523381 979624706 982485181 632102651 653452557 693453348 839753928 2589949 471907651 485320243 800143182 19105463 115137111 410948939 824751642 819784693 989670243 681893288 891983638 495253192 624154976 122926149 324043655 599810771 611363849 740797976 836205261 502387694 650839584 588455851 705637383 265487086 331306826 661054304 802734370 30269014 281380001 817586766 898939516 774875824 887924851 170117883 534916748 819669512 910774399 42148750 347513988 95793767 700711445 74668124 281697572 879304102 971296982 890092530 916203449 466433512 972760395 752569470 921601744 492742295 595500547 6719010 517512415 246183096 688863592 444684833 834341565 196847083 892596766 230817181 464571924 983905934 996680719 329263842 570656295 293548854 851588275 323642920 594872662 331912780 902887318 333907311 640066510 467158475 568465871 536663833 826315166 482056967 624581237 474820552 914441792 635518922 994186662 455300191 662265310 130673410 482852103 833586347 853544977 500799983 948844759 514406037 812753653 806602764 858812715 746317918 838880813 980941615 990351024 957264929 989975045 734953056 808302262 411179270 568782943 308155731 992124984 546703987 636174832 753998134 786698209 343822016 556164868 741505664 859381468 498079172 610975147 540605593 592236179 336712079 360820696 626824051 755740624 289760746 561192397 639291075 835688477 39904063 280391144 677976246 877997912 283033740 432536860 270837046 424413421 396643148 447455674 370582079 894215679 241798751 350798702 3255006 969310255 202878724 414827495 828439746 982731581 632773551 822786016 566759690 766139313 934903423 943435890 995572929 997133330 589981600 615112480 937008943 949454403 246735243 650342146 439316886 883337392 240269033 855366817 68790253 254807661 76935968 553285855 676522566 754429731 558254758 652924785 571225836 962951665 911890487 958090257 987299412 995696431 39720801 804821479 165935064 715996250 894817931 942995856 528196626 710554751 139741562 199441730 51196293 638791546 94417102 543878529 562776287 749883475 377646055 958801923 226649239 771865883 823221318 934257403 261872616 607916620 429984721 884454143 149273338 157414701 746270186 900615939 220270182 683871613 665162006 724856630 800962098 947486809 27934804 971774136 559403456 704966630 625229168 996488055 580204119 903301149 303639637 337164234 54012296 601800391 116267344 494063114 193030257 608161188 279142812 680996115 380861954 811436947 604454778 946265208 106546704 183883031 521276350 985583994 222951576 292386096 871545648 972289819 346955735 361026799 500883304 807953645 496968220 520683915 871697918 937903115 879308936 981378625 63591395 670421739 663594071 677734947 213688025 231382382 803824470 910091314 98327663 311727190 659661244 877207028 6120354 693170037 723743377 832378852 155823373 863474278 421789189 852621682 92559378 93425909 443992749 821463616 637326143 953150030 903320460 997913102 453782690 938760605 457673908 795937631 643261296 742817585 883609844 973812538 161181324 780250093 298843668 609391071 949083161 998431384 70168467 403584069 264657377 679458609 638545098 871804168 513556484 698089159 317260446 602829659 48027701 846677897 196293284 836162030 22439165 373737307 204755562 989231864 478782889 842505486 599277834 894225301 516381106 771900823 408001150 550517605 184829519 292893845 443613776 957515588 517438107 892381227 806017350 847945213 846093558 915795038 400467236 923257107 338302220 760124457 505476728 630016865 887416902 954359505 936552272 941096136 165248630 794008517 959296964 974929667 464063613 483878254 158933234 541479717 703715936 720961880 23570490 844832014 169765451 954345905 430323216 573800391 584328039 599055127 853464660 855254540 689664642 896392814 372517900 480798079 841864390 934283061 164004921 377500108 720090115 860815203 533503117 851855812 487502509 953887860 310768581 725026982 112075324 785767611 541511768 700495395 279236274 557721147 457110808 657080192 137598267 552420978 205200510 815326622 775896976 821543494 695040166 735514595 45687479 126412127 96625792 313341126 180162059 884904157 132596463 430206611 843674599 871866466 204579063 816959233 967932447 986158028 797543587 825683566 231401630 891421281 682482260 925699953 155945482 769114076 342952452 398293055 138153078 962168846 406497355 632874147 87932585 526470236 895066907 990736013 281116253 455408976 869177570 957096408 421132622 661143664 310167904 517365246 717344552 851471551 314979608 835516316 692980387 820654661 52128982 146277760 887272702 929636967 285034674 929023673 686492236 726846128 944625615 945596891 502244861 516692223 204957436 890017064 842657811 902516140 525239687 797880428 196310272 405529009 697053216 743454370 85913265 442911797 324853921 921136776 808317246 926455307 195171958 856971502 152317799 191872554 96920321 741612222 923670509 952554630 288588111 809029460 574310926 626669243 319144433 762980511 855566511 903319926 767421216 894276688 454745670 824305126 626004470 937576879 201290091 768648811 2838206 105749508 422370246 597338762 792557772 975016478 144153341 479089253 462732723 784240240 879114856 886817814 803411509 972689996 295172591 920073672 105756263 711772988 817521218 829300863 9666600 737455891 74929091 117805483 834721271 857970668 749778499 951080490 639505050 826494939 283771208 657684755 789885905 987192305 443124322 576952900 816236109 991164836 680768471 809911309 99566617 355378365 320338118 342887237 395194920 575577463 903208472 991821372 586148912 779488876 799008254 951397562 883820004 930600164 925143912 966833125 688109927 792021086 233813896 993335603 486776290 777339894 171490847 724132610 486580495 665809581 896927636 904040762 498753201 884478973 704725702 890645539 2372108 893082119 307676903 577736643 398439139 948107552 139840677 913361618 367111504 701603401 474672756 944935060 202863113 410775149 448466513 966238459 660372970 746588116 25340380 642984641 375614485 700962975 531143404 913277316 629935392 648314255 922426195 984412207 620227161 737477532 894513299 896453446 667048861 969973081 315351115 735526064 929619516 933365664 183660561 543659095 427136546 635255582 268483016 743991327 249669399 390820259 98798860 301014939 361854944 883511059 948517671 976146746 59952999 519301842 826534163 910918678 226153427 264902460 877985129 996985182 520326958 659965890 675175114 846585059 709631530 746494672 548567476 608061466 998112251 999867766 202594428 817352014 200369568 687146280 373295932 815758068 385602529 785722784 599393010 904369640 885967857 954090920 219476231 900333190 286565854 704998451 971394832 999367725 246268948 876817143 328126559 840980550 317894448 407914017 217244648 720150305 375934697 834387021 579659283 679045700 556760396 919541002 325265244 467008683 147649071 829231479 892820810 929321465 992370062 994134653 954489487 966383052 802170448 985034005 193704835 482035906 934417660 963215489 78531566 404437468 455149432 502169902 461529629 712174337 427841189 447550321 267363448 550263698 894175958 988985255 963014124 963851161 830907394 873619832 508914352 636119738 422024946 839822672 358304071 569377506 344525087 392193826 623417558 722454415 529165534 725474593 390024007 718738867 751785001 800603369 448677895 488978779 334685747 495303893 324802556 479595310 232567560 582478662 574104578 701253143 877818905 902173197 288934323 451719982 430184546 752815088 606036032 935675713 828068095 984324512 105752782 331050828 516836280 966227466 182193300 510806095 945126927 984980720 138465422 714848274 235501938 924818145 397458749 456913101 59100321 428360381 52020150 443486289 157376575 550668336 787378356 917201508 383793128 622341949 441263929 840128608 150297853 476177599 94797092 907823802 422081016 824862457 424055496 499872157 685982107 897389088 533501533 938978533 489082057 995402836 312993359 716278325 76313208 830068117 920225072 979732974 386058797 597299830 678817121 912673176 429458937 559345665 993833931 999869300 868659721 953356216 764893480 841580230 550817002 958209215 59029699 590704005 213498659 363472667 541391676 951136669 704641728 990884451 612761358 949706595 190236993 422738870 747425497 844793924 587181789 750553677 366393952 375194004 165900625 280288494 466476906 556922259 891084647 943113816 690946578 958337607 975546603 993072367 662740953 869166613 767697265 915889461 5696485 278813459 195070834 466766103 882215775 917840361 933614983 994868270 239708982 400364402 883987525 999631013 601279669 681679055 33345757 198531964 497326801 895114081 531286625 813851277 235722984 997881934 249407058 744025658 679827503 933044802 858536128 898715966 841154959 966352054 139091099 523111947 488123140 501095939 341496554 913335669 101423319 636196175 829049819 994987523 77539634 506585687 832088091 945075963 37586327 443901154 489176400 654731532 362359034 932830486 434802718 890056513 124545986 328085073 44938397 528335707 381095070 443874985 582934060 676820735 537762294 658952842 564337989 802338646 19897715 79014047 736921443 820466419 311153277 723539077 433423341 880382131 946080862 967701818 813403204 965109279 803769292 994925823 393050049 831127779 244782488 362680747 599683082 754487994 954991705 971238532 651028549 914748569 222136457 351487329 801319009 995920184 128953420 149852776 133753518 353287532 781564811 938655923 118486007 903481520 581119512 889749582 500570622 803158562 856152311 886202211 204986716 454272408 312032401 532487942 7552879 625408019 543020886 719247905 633210458 799301703 478968925 939868236 612456807 968040176 746946653 968613324 376931334 595592493 683596645 868534179 343752087 416457850 577389288 862444684 82516844 715672240 593989545 949873288 968323081 993916982 127603891 325684841 275174467 489588559 441191415 589682196 873262992 967035987 54225347 882365542 304789248 500432083 351103024 928142381 823798372 921791099 658646582 806786542 820485054 943138314 160313469 690881546 875065913 917639089 215498980 589550863 223572214 928583823 365841436 794433970 299349792 691158749 892511023 923644312 331444386 441397293 903850290 929157997 819485 238324856 45582683 805303919 823952400 838053674 919458615 998422001 545784729 781820835 170503080 289672807 394874524 494237360 738389165 738579080 307209980 615710795 944201222 945126239 673593754 725042635 230734342 782852446 427004010 523578998 673110565 704086406 214626616 231975953 726626749 776040306 211031201 645131214 283509792 439513259 5444971 745097976 18967566 225384876 425734157 655705256 572623650 703590198 695794776 928839716 310156437 665802203 164381365 796627715 373040302 715449663 715256171 831877856 174398408 685984673 851586820 966350441 206803600 343411480 631682963 797939346 193155936 960762886 621592523 877288817 129328451 306421278 337436079 478091249 561124882 679061867 537990517 752032102 605607265 741317306 691849538 893240428 590131025 612765062 753304724 894985347 376281979 980768852 590658747 641556255 873466287 990964864 527243308 869522200 402159530 435874295 94774192 975451093 852706325 866227778 302869019 326769061 129062099 290491776 438733429 938345056 938453499 984885965 79287767 783267605 70201283 252162651 723712551 748595731 718626574 972794817 909497193 917381857 50750123 469306024 70461246 976298649 667721232 970953548 816031818 914666687 666841139 834867192 955379983 964213830 754355387 933592668 508755668 935466158 916691275 981281718 474763341 951279319 838993865 918894416 649235964 676557744 211593846 729919951 601697444 815454680 27428020 940200315 865750586 928565495 612864931 742397274 64005086 883776658 11723403 193741762 545125032 853638009 451493294 811237916 827852072 961754696 268415668 959580454 939303512 968239252 268716947 528263822 643412790 932031477 134617021 362246544 18248539 846806066 594330522 647299205 327963964 477673128 835405466 951988092 829980816 998194381 215588428 768005053 324808225 908246232 884806838 997344766 898742968 954661205 169479971 802836707 858037598 941264608 157330646 206843572 825991347 832704835 732592672 980910153 766293828 959418938 864482622 947116428 280540853 477195369 187206791 609636254 718620451 982359148 260073698 275045257 21716382 483120749 775929997 852234960 614429749 855007004 780690964 924819778 254734947 535535229 683091066 813828330 200921381 971196001 504297741 917789442 555139459 913202524 75879827 562358613 336299666 697422462 275790738 466578582 907421733 976590591 378471724 951379214 286116492 326182380 77464977 940582836 709627302 749883034 743681554 912006260 107816277 843698900 534203653 977458108 246722775 593140857 136384601 156281084 843143986 983942586 190295805 323489920 61779041 280739092 729184482 864480590 226666251 757704057 138614642 254437864 173867284 721552730 211605913 977759424 682705631 884181884 631793618 916019756 986100550 988066080 530470306 724253404 671346098 732034355 261329610 322096394 654780128 659497569 329419404 676459854 189293763 436609237 404328102 724997888 377426973 873500000 608441873 654841726 588136687 843328461 797724678 861189492 797739411 859651136 213915469 509655614 634589839 722656344 113849909 360633938 141318172 837666781 445982578 518555713 688800387 932994772 22399336 433143445 838501245 963591574 926253008 997680135 188069934 230680767 180590653 207851678 111936117 910315925 243728207 926463876 822068541 847896898 698235331 758070774 844978839 863627476 770080343 824310747 266093212 973754505 97856280 125283898 459571522 954842005 643978378 879406420 882510092 897459448 964980052 984251534 222958043 841614882 732845039 848777954 905976888 979730272 688597868 747529356 975235129 983930656 623144222 868781592 943720040 954700081 703297642 740446922 919337447 964456172 463149428 744067104 257700545 416733100 428463199 523729160 67597824 103118018 708559782 813800439 818392061 894098040 244546136 382086638 545792441 926949422 163573610 592847528 301012549 666374797 215851198 740595327 622038460 768845824 340756400 651144940 188997349 978194450 52567813 551641968 394151210 709946336 391108635 576953876 196632862 589247818 895580930 992477493 214456232 595137272 909469902 930340838 411034522 952716955 622475674 750419030 758731701 982588590 272224542 512050871 280075376 500323438 339672617 447182059 989709565 989817241 604091862 851656224 295655286 816550715 982669305 989774727 584453911 638257849 586481436 621214515 373792301 863059642 55095095 880202520 408445223 857440224 372484834 611333787 431856965 889902042 107902372 971757593 638923810 677678652 37180380 275540526 553436516 626157051 317347595 393975444 564687481 749837669 271151219 669942382 533823829 768834570 857302245 866532831 897702754 961565363 555590812 814154323 444823073 786203037 388393043 722752261 497418888 772871414 492905490 769292653 905125232 930704759 377737221 849236324 573085593 881333334 771410225 849332140 591383640 779921567 363006113 604178483 955729454 981730495 875438319 995755163 973306446 988268414 291102007 377514033 538944416 968542419 594626052 833252748 473719595 811255780 250762120 421451791 716565396 937222560 923211494 925811564 735959946 796383823 543209068 891277497 557727341 975449216 685177598 792234746 213664823 844853099 91356594 182536005 61067383 411093790 947304433 980621437 984721942 996599549 615659641 868700513 906138372 933507462 630205961 649124482 905833800 933545463 214605870 738032894 600830887 746714901 702782427 726911671 143684474 611171278 29364294 967848182 625074285 788384726 519842764 609231363 667228824 775107240 303382479 910785360 400658061 471326269 653437231 966906957 621599521 751713150 523757873 702660838 677660445 955225876 300609670 694060581 169953060 540408046 889059503 923335107 41989977 76089805 122602903 773487095 995286021 998061031 796922488 966831265 672898854 829312707 514969957 775777383 696120269 801152391 935843591 977770329 895649868 947406707 596676814 614383523 128694561 215699014 104547414 778501824 499820878 672775089 339949945 398867219 815863743 921401744 773623626 814254634 549403807 886922085 358803762 914127129 333766650 857496672 370130269 853315558 740659096 917058760 386578303 785200943 565505694 857678525 9686357 384796893 297743051 392001133 39861315 73695522 653671001 693449341 475929438 979767677 200596827 621859766 54876659 520273861 875054228 949760822 873450524 893241840 265473633 842841132 985541016 990024359 842043727 860069373 129436759 505271059 810520583 868450967 8269517 73762862 147126776 682129668 500564370 599487252 720385326 916533474 115277784 942946018 855843931 868347306 630565544 962648751 875315879 962859793 509708519 771770164 451219891 948101213 557774510 861888766 538909353 827615676 950284280 971201700 513866296 854190492 688032311 816850102 815348849 851556345 88050192 116563125 593078421 994521076 725076672 898573316 464900629 770054459 311368228 600299950 536490228 681525278 262432721 849463294 694653250 976779162 569681050 834251395 727318941 827397380 908443061 987763358 465596575 820843263 609856771 997160040 990664720 991430889 732482315 904501475 31968935 161034779 165567277 224021576 436678185 781601043 438406582 983098584 705507821 941439314 905483050 922292721 752701100 770778067 739018287 826031799 488918187 868824529 596440313 640658540 586523164 952154855 741264843 889295540 989983203 994324761 915129129 991902201 240354993 919365493 179448633 528751868 246013723 463025504 58540698 376531242 104223174 414892891 359838625 769292848 702279407 787113756 178447660 845806133 65865819 878937441 144471825 787642161 794231209 890081181 326888300 522387525 220457293 897658385 987718045 992384553 850987339 931615026 75592177 329090516 181283142 393346571 16308481 309982298 44319663 114803985 64798764 769471291 528475099 659833497 281868490 447991411 833541175 877890269 463038327 755620607 956946464 992126132 438806382 836079459 268734020 321644469 601185756 999530137 670638159 996120198 565833450 966953883 544528035 699798366 438457985 620376357 64352693 619549387 735097151 934364538 929561363 929798999 145879303 432361555 596869588 646592435 947264127 984613461 101148415 189864296 697644060 913920838 9691135 197670926 532570574 972781732 668351124 924567383 52438396 396537478 235733961 256206480 580821156 953328554 678144449 921451021 824093954 923708909 791811762 919893081 460780069 509657725 745846288 764574414 759097051 921980847 803199628 865058248 210223796 692026333 698445470 919148849 349868313 891139084 400731057 509224186 401016296 469053356 270697175 832891569 372303215 636587111 833686623 834572912 476682804 495912720 773927101 872345176 832600301 973710866 756558546 842939926 850786232 955067137 126103382 804288623 258947663 382286199 29070690 745324123 490393802 741352641 991332483 993766910 397663774 398603170 469512088 746194598 966870927 998273241 102911462 638756338 750856524 990863787 480720293 692510165 279439810 396055498 255795694 355803044 812845298 948409597 993953051 999002624 940112053 974643036 562509932 843327847 804155747 816128354 962297637 963565715 922070056 963281456 101022666 226636927 498469035 718877190 71173765 640144655 913939813 936142439 183626167 411586775 558504031 628621097 930080468 968460164 763328870 814562126 737289077 860768195 180637084 866337247 297600769 413491220 515445111 898878250 696814871 854412257 438898942 910850232 539808836 583420475 181592993 268052630 632789821 759646385 886165407 948994056 955781682 958287081 226230665 866470325 68680424 657517797 701207423 786325781 162956074 576094885 496927064 826003975 243576510 297017356 670717489 915261951 418189828 965661446 936564627 954617162 358665568 717991790 722406065 795998483 118946204 491990319 53291855 211390470 607306059 678181919 631266474 742599876 417952237 866669174 769184347 901958214 377118547 705169159 327099168 726742202 537494493 923997347 586086545 770149349 791505797 828513467 587014216 820281206 67349561 189964190 112238127 985654529 187959658 806349281 149813326 635152928 685780151 827388701 995228843 998050772 299659473 306393931 676357067 751989921 422483206 942625795 887718762 933182748 810337345 966976127 563513728 877410252 252533190 252772442 157882319 868474138 174224311 712794351 265768447 825667825 556411559 977682765 114749506 230003563 659349358 979638979 193059470 210476082 937960575 963619586 43683399 253087782 988646722 996562854 590847632 821265545 798358405 868467564 959809296 965204212 356121543 910408357 693187088 851331188 518350813 863877473 910463742 938131424 951891667 987413484 724506700 815442526 248027477 920939713 441092031 472373241 319026036 821004775 747039712 887068244 105919718 895063668 748426904 977835718 41612191 659260591 41720783 450104303 374820733 829230813 129812985 869513319 197112863 748726965 894710669 954565024 130241459 848363116 955383584 989838798 953453147 971608320 436102037 851212778 870216041 883426180 586435156 980545421 595623675 604185936 302540624 567386767 484692377 747184441 592316964 995541084 789037638 793385750 954138236 991913353 58774947 866969254 635329232 880256249 845980692 968756193 4093182 661637671 90569928 113628366 861285285 976907756 165788271 852600517 774537030 881100032 725607297 933162584 208513162 515640139 584131734 892012485 276863831 334827226 121944764 189493452 670325913 685140987 122516554 945195353 739043932 923163414 392754994 544059057 542744474 659279035 560222069 782826129 560976414 823526912 142687406 850833338 537777033 772421986 683233396 881348759 586248866 683200115 198014785 676946966 151565414 255549009 198072560 293572291 471127322 879458793 691789026 929626801 971599846 974762350 258942760 716731937 649737122 873700434 633484375 848151133 369487200 936095742 354050730 862335957 928798973 946751542 514481359 886679688 228385294 439264415 168938240 687904012 208512302 326361582 438903172 890298807 92691853 169358976 368376589 863020547 859788121 887570634 341515111 896493713 788490754 904292011 925188126 932033055 375519755 808591973 506121892 682087465 261403537 880487949 190440416 797388967 126211986 150989207 949224636 969885050 560307432 705587851 153820494 924154038 262555223 427374341 212466080 292531865 211774982 590653530 655303800 693494497 918950112 986955109 979133816 994255973 949891474 961496489 649836905 676782255 57532489 332355778 110937949 580629076 989066227 997399245 715096381 784545120 466149127 816794930 240576511 436054435 854494532 855425268 34138467 415553608 642245114 913856404 750759204 790030483 871583596 986333647 971619863 987564939 24785237 583320350 610319202 626742002 424233950 803137011 707987804 730765936 352282528 554573547 491690626 688944937 989471285 998794633 700851417 912701872 756996649 768590659 392920260 580056932 177179474 371784347 708539606 760174444 880263990 904900797 221085143 883053601 491239135 632335270 571437572 843231655 54427370 376261909 965026761 973033023 56151590 477359126 884558816 885905815 951288598 987694592 58199424 846956625 891042459 980153977 321962785 501507588 770642531 963532768 45777529 483426360 952921134 983814450 52837108 252473136 299413798 603420609 37366874 840007353 680449283 771222082 885146922 981196313 429431049 878920132 1163154 399947568 16265063 409581726 934153144 967136432 607465002 681767937 607107415 679399856 196735615 239907757 721585774 920226443 512071046 722786778 639712912 823260145 532098802 749116502 536490271 665537115 381397554 978438982 278458818 758277596 944815505 969569276 984714562 992133292 960059951 962808609 296661172 335189322 962536993 989926191 645295731 832356555 96572603 760686310 492993582 536436615 783675713 884979390 649154093 652498299 954101924 976999400 530604379 843291081 415336940 749305469 586650728 896231959 304679911 863157737 391872387 779885942 369901722 870730438 709881249 956970484 928574249 956810380 89191424 779411068 170401047 469082455 462503713 787765500 201927995 880364150 950314205 997747205 988762096 999396782 412962283 509422943 655434552 801830058 85311071 506183090 952125613 999414491 678590699 810317672 697290324 843341339 538379416 954743748 426591198 593909259 293983608 896633919 580565360 634047098 618805516 756750961 879751775 996014798 247104193 578695401 676880511 778899905 486187646 613433534 699424597 880956973 133161201 735913250 324846954 388425718 652435521 989874938 323416633 459273310 920207772 999759890 203838357 349065207 896284944 903599517 735715556 851317646 601136237 767848702 471699533 875483991 544531803 920461231 189807144 886574742 76216348 340136415 651747331 972660955 976301965 976802039 406514820 625342105 992605976 999198911 728299983 979119352 561409444 814837499 779019391 990375414 798177947 864147232 345135254 766884339 225192782 667554723 867539164 868860194 532876065 534247882 561614500 830393143 698713352 982612829 711396091 897081704 703205501 809514805 217105448 700040128 287167252 592795337 922936253 926817907 488305437 865847709 597380567 951008694 542623676 646890894 121433606 760034888 701191504 923090165 408301880 733787240 110766624 680793072 129727070 735856550 819115286 901368316 217348963 799572448 191821901 710675751 693515295 987705384 379322595 953741642 404173884 506198885 768359608 885736865 777400479 971630284 150456428 381402478 265623559 269767166 921757902 948237140 362146961 926853478 652841191 929689078 759798552 765364482 269948578 514114687 577299859 960371767 69679800 451155167 255550664 293147572 959867608 997896573 715179157 967634534 461051304 747061808 140706183 934395729 133846856 507642540 867985163 881952772 264469202 427821651 429965986 739058170 450841563 613051287 55699834 486050677 56204868 243887947 511667423 526884881 154517614 450985283 946008064 992422657 814398106 971839525 557963523 603428523 398196479 570404854 517159207 577993193 291244296 298843665 497922144 597961984 118264551 123032420 72336702 654394816 75713399 432771303 324369578 605640912 350576362 623415165 941457838 979924663 873760567 958406678 842620374 851808104 993041269 993556882 670383074 928228857 953800991 959247226 931417390 934200092 136715930 457786919 608673912 803706261 551630670 631157564 216492982 600992685 575955796 687149859 495223385 951138494 430087181 841981783 556634940 741936707 511130375 774032731 172551657 446494798 816537076 888775297 504166772 629905719 706522594 837547642 915964313 989232812 299044433 929350046 838756397 968187355 760455847 997586784 642855024 758568880 148033485 191620635 709898662 926406236 78837963 315684006 234489526 992855980 54373796 339050560 874779399 988123702 624169317 835771225 249084590 619747716 170600295 410800825 224703161 762333572 912454886 995586669 404026810 856659311 668556004 810153882 573872117 970951210 777730624 816235364 660795691 732920860 407918305 762383106 292083191 471498483 716158286 795590077 435176089 635565274 11795718 658332882 294006390 860761360 386853942 398219224 301217241 830288703 371148258 830193091 861415854 959087537 561208384 948914039 417577703 462135035 390771635 739213748 385042997 804266776 57223688 355986236 548775464 584879277 593667587 682786768 148984974 169680444 959611286 997613930 859267729 921522377 451422908 576483089 679220598 690392611 833231575 859634200 406949040 760757020 392492917 550647489 455771700 868168403 196543061 922636183 811482633 995964235 95435177 500512106 229300379 856196330 906902904 959111385 642568257 760498232 880929704 943229976 747129921 835138545 511313391 684401156 579367643 792401540 882532739 990581309 101482677 880780473 824539783 992072658 793180267 918802174 731630514 897493779 400290329 875551651 72577937 716008975 707398578 767886403 651933418 924643079 455556550 567400166 992647586 997419584 386164283 647855920 978930239 984966019 254772796 371184478 824339925 978830378 260420923 262186463 833671948 993886899 171325304 882193712 406594226 690787397 851876745 978197460 509508315 592892320 509584728 588316382 811486665 847210671 621200624 645784764 195396776 260016370 330396501 419739045 316162294 345556608 294151368 639248422 838365604 987902612 887886911 922836138 978305336 995354653 768243307 817356965 614626512 980344438 97301480 561835897 101699680 142867098 123790540 496593818 6036500 300231079 856742158 902317415 917849431 995849762 189227243 597771736 891840316 910744221 673725603 980489125 220262534 602900729 320859837 928492418 873392007 953859198 527484160 653180926 183910472 709063582 652626583 654748752 75495141 316626758 628551556 778939925 535988203 542466042 787043295 940571376 840433151 927965546 15873967 587354557 48023551 396973076 810639121 992346706 427806165 567498742 283950304 287432041 23042929 133380139 406900371 429687530 598802297 777280961 959504025 984926128 439631242 927219596 594487726 882379877 673999742 920953156 701579939 765524953 563225582 733959769 903750527 960981050 158237082 195223588 302664676 749640309 325057909 723358788 57105884 539220686 321449053 526395004 132935988 184759315 152565076 360078177 766143766 951457733 658760081 885042342 134241065 354228864 225399742 778864779 20909724 143133575 152614914 808757305 207044428 886661447 327873770 473983553 643189325 710538321 513984993 896093936 495861336 532202443 54291633 668076226 310911766 457846032 828234134 865797002 524379438 763020341 677260823 766274349 996969452 999805057 628871990 823775632 282757984 581634217 328599074 422353960 208886878 803345474 42717089 199874931 174604331 598078436 440612656 998183373 973970070 978001760 875430893 947272654 220173878 734972492 600590449 806847045 206660467 925700522 289463418 530292737 662623989 835866521 825854052 897548236 796798701 989292710 816809650 959818919 293677027 440484334 195146109 695875243 276419180 816123165 874187232 955646848 829863188 884964433 888975060 986141793 772380538 783363139 566580706 689078652 814840380 959502256 940296520 971102998 380171336 778930919 501515002 589827177 974760445 993726417 696532725 760101907 699376184 709578970 412782865 415282661 764629130 925313046 405305913 510324595 330093294 418864101 48724718 547246003 810227567 846552301 817349439 930026298 682820882 831933855 390297738 450758943 955985403 960189402 852570753 935190320 835821202 903556651 224253357 794001113 393134706 568002843 34446320 507440096 936260002 976955229 859113039 935238632 782982694 857039654 976152698 980851643 875265873 926021247 745938870 970101481 671382517 804489021 198850678 607508052 349017597 860437499 53727891 563209535 815132332 821187881 291675767 562657450 605760320 997725055 855823004 878673553 163910252 881280164 403752379 949843602 279504154 398822377 240732147 644338754 606634559 818339038 747350757 784232766 874087625 889934689 813145938 985149873 223398469 761539427 769777953 820672490 814881987 935993953 396995038 815776460 934695032 959750994 813519484 920180205 388985638 947978804 668537810 685272963 346849565 431392136 661287881 928029455 206221610 888264009 475339101 824506850 333307748 457569629 87899152 629980917 299217168 450960190 169656341 499708950 283105319 810417747 883495989 978353405 337747409 765452504 70398706 422445968 139000031 268158339 421024185 748831057 125041166 183466669 317293894 686347705 511336926 583240184 400722502 928510383 935382928 988295310 992264742 993272959 108298591 310212208 275965492 460075623 510504781 621453280 562164060 977117900 43308129 248671586 385526828 456115500 855727644 881353185 922881953 980881057 772729388 779585040 491378663 955360799 874252449 944927795 864357346 878698438 142205063 749393454 517623453 639534263 425194675 493434772 653551770 712912906 856086647 917693827 75125882 293732880 719206838 795647202 300078164 365044041 611331970 645525021 144185729 850569909 213445691 570944460 449741180 762891147 999370121 999840091 886560843 977394977 585667997 985090431 737795622 926808239 468559402 985020535 84730025 779654199 925268584 975510614 199082733 690054140 615082321 906996502 845644957 910251120 780379141 818219568 563551151 902459477 939828264 971396254 768792000 973643795 46544569 97641469 807130689 883827383 548799216 696334414 651509015 934698270 783885770 881296615 950407825 953470283 230035664 667284445 733057999 953700547 879946517 942894096 931628953 958769671 501407637 920960141 952057494 964291891 607093708 853501644 169645298 176467782 547784651 763501103 126550207 705946747 553112312 950779822 855867340 874888436 784157883 931293728 148970749 268101808 580916898 640616029 650052820 709174299 811201118 856188682 838989592 965356140 925058342 992436349 521169436 771503753 763713635 948229786 373423056 706824035 921437737 982163728 945347337 972287600 554669354 657688145 705399305 923995610 90215682 600886130 504187733 834657230 877690581 983128112 907570080 970066157 297017665 375921209 162835696 343886875 424946998 648557294 710821998 993894817 936698764 971699909 472992024 789631011 243823705 881898429 642437746 770492212 959049847 990339879 756127122 916703575 408460860 809908274 819840501 914099085 353880995 860280618 527142009 795254134 420494373 922354975 510695369 876027338 529927324 814898739 22584625 464526714 882229983 916184871 627142333 686373163 153723895 508042478 223563857 875056766 758896127 762568445 898181863 971591003 591931720 949575414 799451897 869182300 419136712 819038672 519383730 915254996 923666569 942306136 432092536 833170762 158510033 881401049 842171305 994197524 50396850 322347491 448733519 960133938 790977803 959603809 850933483 880480215 724105701 899779561 404294445 563108053 853771643 907489535 186615497 635909867 592240706 980038409 8281281 731370438 419363863 809737919 595217507 897379209 32632797 613309997 301201364 696379518 201557585 483306122 403266356 849809909 352764334 917514077 310052754 398172078 168574767 760969130 415051531 431865321 981871837 997361191 127497394 869569846 617058416 785027930 233760820 824330682 658345931 827734418 947634399 950221967 715559034 938249874 328390487 415473585 229889756 515205969 732720278 975049024 32265931 366497259 686207967 940972006 14692188 775854502 396937363 930834825 819980140 899774654 419555932 537046825 278435602 430020880 155982779 739173961 96780248 209384763 308896361 902222615 116367689 860191713 956698571 976647362 385060536 844508048 686214905 942899467 876489408 928950811 132492501 863590511 268724460 962648215 643442048 876564009 229376041 648743640 138508754 660839794 929384589 936743219 929876177 947105695 966609469 967745726 978948169 992834095 856734005 864637375 145511236 331193159 90527809 269965372 424182214 755908741 42601162 765291063 170201509 456970491 440384843 597770749 422474030 992223056 82697088 442707640 155439990 774963303 844935425 991426039 602463942 908274787 390739547 615464386 546316714 769047029 189071912 388685290 416773477 707262283 991603816 994498660 965530365 984620681 689104745 888536237 62124064 588722924 259961236 667935743 409194729 823068318 654036361 848884923 731534019 958898524 33971040 654353928 784531457 851454914 953760563 994036920 375068140 635782340 706990510 736159062 988857368 997675752 183659841 685304254 674262124 864455937 476551139 856224179 696702772 888931709 70952756 937478132 184236922 877827029 674463763 938237622 351904947 421766195 289657665 290133573 104127951 688898956 628442869 875456124 617612267 655039047 292816019 737404435 437792307 968325915 505620190 755359850 724609398 816304681 45191165 587359340 113263378 219350259 865941967 983396244 508636805 540787072 109078957 897016381 400189229 632850649 933966010 994922999 994754787 999198113 112025662 720480272 680482734 866951572 944089712 988883318 964078547 978242904 142898259 467563734 55970130 324102854 944310920 983768436 86487403 538198645 19055163 822291552 407976092 687629237 164650414 559417758 382646585 977494495 15758632 517529988 435889033 573358946 438860936 834717264 520938602 798944366 50822826 502711740 368169806 923948890 41599225 871147950 418001380 694898079 626180007 629942226 480295778 873759385 329481465 439880640 985777280 993007858 950301742 984438481 338012101 871638534 502357975 784461352 959020115 971676676 227294303 497347542 906514250 976010302 993373194 994992556 583256150 803141470 302621142 717462863 66720549 975386172 196104705 204257609 42840116 95232681 725338614 768241475 821194790 960583367 826445526 949241188 169967487 323776999 346957567 728929232 320909374 822350840 619019089 739051283 595782960 669865313 331575737 702915501 702117313 962473533 77769123 578410981 301446764 420522572 275787660 860393524 43448097 335035467 368539853 693887618 257492205 775733687 289065620 490677564 936772030 977344625 221568644 781424704 170691249 668421863 403724832 969464895 538972244 882444418 487757267 766520443 592110549 655231011 20444025 679359649 53858388 439117162 820427105 992142950 770923540 935451579 938193584 948413894 871597238 947979516 965176648 983372573 279697530 664641400 581671099 634920230 61697091 881906439 136886014 862898761 75855902 763638303 750687274 890021880 523076174 623938487 977277148 996859960 928816710 965000698 252374200 987548937 732919688 739019072 119076667 891714777 170416872 860606534 287502047 617093130 52999146 498854748 404524977 716816627 779218055 889029753 36287469 245997709 537309648 979564399 42659980 306632360 646094664 933767716 133351527 600982069 751619338 809905675 636106025 702384922 50071812 628237293 717159658 822113521 672587202 679517741 129374021 863185568 741638893 787299362 494963508 894910547 871589432 905585917 396665341 858694294 300858993 650892046 999128412 999520006 366128438 792764524 669299411 794652520 11618644 581465718 435295539 865324873 63004346 778220465 828685053 969547019 572668038 858381202 607506662 846086726 113279028 631987978 939792893 992430229 669881744 810104594 595176680 761231454 550019848 745813544 704018288 743439760 972904004 990759762 512247953 852287876 154970499 663864140 452762356 531970623 688485891 876670828 753853901 844103830 292646374 848627890 434123715 722430385 416475409 929441419 684813129 790577952 667514374 883547388 132938471 991580596 966643964 998881045 198496205 929115653 397118496 880663102 967946394 971214072 552304528 599168429 53470693 390669732 65199562 803187731 653817050 878475089 960880353 983414219 336586855 368036349 723082722 837355144 9071137 395972673 345526587 523451449 514681433 967551178 960028408 961043182 814055043 959628714 915964612 954047240 106085099 752873882 567111046 687124765 705632907 969780339 980962199 988051989 422567992 451193236 59048447 594735418 895593436 986893652 856757379 896053132 190805090 814138882 324037834 613757335 715191149 954606639 27736097 752661121 735066781 933701155 794991480 932594395 807086098 820614344 133432152 850974980 208631663 491744039 196587352 625840154 845159755 975897316 555893340 882156952 948248041 955285258 360741359 625332453 979653854 990751947 473841310 582809427 277453336 979463093 261782842 629644408 959377442 966485117 888418743 910515545 534547812 663735679 785450861 926120178 18257803 958518289 333341206 847597765 863450189 954734592 953274928 977785150 362878697 436024633 854932359 975556794 645641932 756126936 308085806 898633347 437377499 632650576 355802906 823109312 533799216 890278872 800622128 877035415 313298598 854836097 68289921 518782451 572357461 897904918 688202627 713009066 620638234 788553774 642189338 855766440 403162782 795558611 148607452 772133576 933176557 947251375 590178211 826771457 164917557 680483447 157730348 951724528 444049123 574387276 171873388 916877443 326699025 534106377 640379881 943147708 548195930 623694208 565406158 919920746 110848857 819803448 145363591 405110605 451956312 814913067 810579049 966685097 492476440 519758964 852343697 961294183 740953206 861744092 117413052 140585552 37189067 792048975 509131233 989360691 792234281 911626139 998754907 999395040 683390228 775071796 654319155 766223165 652225845 803730199 846153059 956742404 283884056 386124383 535667863 988394096 196756348 988652016 425901830 587892516 813058631 876713053 973238087 988093023 411234790 998132362 309516331 898816055 71648715 832474529 679240126 959328964 301477035 623550752 856695353 964596633 21808645 669467293 475763369 506582910 370581091 588319945 839096303 953059956 326287441 797797865 603947773 776444302 935903949 982265079 430578427 715161167 116533405 123563287 396841023 795837109 299923575 988410378 286703775 680026426 441068019 695790308 900663711 974408734 965676595 994048353 725442987 926775545 250709184 527293770 791799687 871990992 567869717 778986729 878000160 989356188 8307102 954815882 5730797 641114715 274035003 541140263 23822979 998774152 666949337 697342115 188839955 810729671 183455644 738660639 682166325 953819992 990639816 991076235 128092195 469615170 493881411 611418079 943162546 969338912 231454614 426270995 158352564 916272546 964532346 980300348 282795121 614064703 438538800 721138248 507262398 798607027 694119940 951274545 595954201 710260988 666660133 876875078 791787103 791798500 70648115 450201138 208360380 565314787 311050469 311456255 390145192 723640918 821860559 884637814 122331244 963311512 104891141 189702589 540699635 728966987 654281014 944779738 621603019 650605401 959243704 988908115 354599081 951615328 227539914 688049551 930654929 991980908 567475188 919342326 371077145 552264719 132270167 814005990 24480043 234164040 589214145 634234442 263308610 949112191 414351500 561137633 567878073 696464071 13317510 511187522 82455137 466970344 951569584 986698212 687550381 740754307 551389912 877664286 99000932 595257210 416525582 849065667 334057159 996423388 129762806 247810332 841255549 865231671 454454546 901767554 582662928 744576112 554148890 603521209 111767307 830211264 89047061 847934370 116003911 394849455 709668427 928781249 205980340 847088186 49137213 337448211 325620535 522681973 614540720 907577779 593393939 860222998 772882660 829426375 178003394 762736951 887911803 906443501 78775866 686957612 40831043 897528980 340248826 629743280 608059953 858254787 943447 887864191 679312860 746310348 709445252 905733460 118934863 321214308 69451163 786258785 29947382 254160366 334359173 535424655 949261156 955867795 742992692 779871010 88094989 880174548 373558666 524909214 821299433 927353611 282232319 367575110 697199196 875580169 92689606 331073418 685659260 786348749 947393825 976123701 359866899 775739703 200557823 479343607 283781561 711873327 21113880 450584370 781156173 931762475 84356897 813151168 443663702 474026683 74989498 633848082 612767774 928944823 560369444 953193482 328362243 789185530 603680035 613474816 209802844 763985788 76091050 597863248 557210223 936063964 581313068 813331307 538112528 661270830 13584077 671665636 314812724 941108132 403362743 472000071 42841663 875016923 230702041 321213175 892400035 951378850 640802141 773679237 625971321 934161630 970583508 979179683 319355636 938952905 677575139 831912995 675669582 718232484 963957 327161708 973551094 975246794 94296077 801923631 230911835 745447950 339622981 361942855 201930801 555303536 22080911 866731984 644473515 812813952 179849239 642957962 24696282 753997001 850984486 911478471 614982846 848450509 482161228 618518359 47636305 975869863 169655500 218552293 393195592 511063499 60711423 635589494 95552087 303327256 576319344 989013597 361282062 437900214 79878154 698424480 597312751 877299079 847817572 884057296 372136155 506249348 633044134 884656143 714747480 981475139 773851699 861655521 532819171 889970908 44302670 475873780 104955467 288164505 342760308 859863529 662360312 725556006 20021237 61888389 17816534 46285416 503279964 961077694 166044558 921119622 593045224 932134743 258296554 771742897 175607938 737969054 579692127 743742796 992782341 993708276 289976895 601048979 236367308 693377892 288399385 593289092 1204874 234501634 678307365 950693427 137991966 703625945 64882725 201873549 555336197 778709470 755449442 939246863 860630439 901486666 523784378 574129570 93093734 612861197 218995775 672179575 755503076 910107921 496417395 907258096 386160828 479703377 801144818 822881730 462999726 671447303 470090065 685633645 919847518 984668883 435028235 602831610 779977569 898246815 721028424 880338722 473521784 909825692 194110811 941250254 935459711 956869128 979137244 998044115 325354585 995167370 386440185 990283236 436664640 999515107 604536283 655375906 818943075 821259665 974582775 993425937 57027073 357106202 957761461 974510495 448588689 895165690 24756074 949002868 875388528 922835042 843303939 909561527 397065988 750806192 806622841 981602298 685404390 734806839 643985150 970902463 436409948 488006554 536574693 798849981 767530419 849133419 952020059 953892774 990817536 992242586 523176760 589460755 133927174 451733400 372666181 501099146 285945534 895554716 660539041 866913877 203805987 776672014 667567613 769715638 510912682 521594571 928148970 944927252 504762279 616615724 909179581 940453245 194262271 534659398 7797907 805769321 367874600 949073652 92298671 397404579 558247703 990003878 684206623 889818146 805793721 916695929 527266962 930001119 304662541 835589261 351314762 511802115 800334888 934547078 369462745 636598788 249909846 800087968 262915535 814436057 10507665 459292623 51586397 755401506 924466484 983707225 205518869 317288406 27955434 696164401 798611635 812291261 32140471 652268627 836852607 945999092 851124802 853310874 159359667 585786217 60373824 472718317 362054671 734167039 896184099 954297545 699848108 976186020 461740901 934554745 716469837 744908256 932596322 995466251 579597063 654186600 899020349 981100820 161217600 705160497 318439515 569688829 998156586 998164568 701360829 936708450 661688235 796314584 454810192 911956704 737894514 907457947 457677582 722071074 198458287 675432970 811895909 978641853 388811790 532119122 515749551 576374759 412622635 548738519 424373931 697050721 702283224 707449455 963931883 996548361 752309536 979901824 722086201 788440263 967759447 978205376 655439793 750315161 400752288 942979260 652580635 935170591 295229965 518870312 700447883 945199949 170173840 870331176 77253778 154613016 359611642 705295687 837843767 986316253 375764326 826006310 36426732 195611378 97388398 424566561 453871192 668927477 905125111 972070614 227957529 300229283 331497658 822404817 621314892 929435763 792411630 884873840 227564735 317651981 965252720 986219242 674026111 811744284 392390314 538898021 700447870 719783382 244147773 653949749 140350125 884812071 505221191 683733502 428595512 874673174 649106541 757502221 752771000 837350757 270127697 568167106 866326076 920337892 376273605 703076579 768244756 904101434 223205705 980640317 375803329 511268740 2192194 398024676 966116072 989271543 902743724 975365344 125014454 931747611 513859211 529071825 348693670 747031686 203302617 327018620 299202408 557175477 438042728 989872652 526879682 622105579 965760791 968408273 413184797 724827549 90390761 767144612 345783063 912431248 450179458 476057048 545574265 886476274 417399458 616241726 175627358 262553250 39799107 821535682 118072318 645341895 463746863 691236757 238731210 890904387 124635626 911885461 962138330 964899308 272418770 634637367 917415062 925351199 557518285 779605569 147690311 828035675 688122006 868571688 396676519 851719552 385933541 912980241 766608351 858962163 534139611 912267400 733317076 816927754 952495925 976672934 196274363 279835037 635904311 748296915 808148705 957995047 843124476 846138449 475601547 859999299 660093647 996368784 398731049 933182502 520697800 538320769 963694141 998193916 170835367 286348073 236050327 855867662 507579406 563816489 398951027 847948208 515402099 789753518 814270307 875817445 985202024 997396646 828145578 975535733 135635379 586844189 229934082 274988468 644534324 834139803 155997601 812399077 139291642 463561091 205171498 786224871 228476337 922789725 132472607 326267051 936596466 994394526 503275984 510345534 20085780 986739858 394661041 513935211 648344167 839830162 629307443 819249735 921874189 933973707 840890968 965081357 788176661 954958962 179431109 354376610 729096802 790884570 576949213 976728873 455628713 890677280 61433516 271616723 963468145 971818702 697286905 827427159 472158130 951345209 634237756 997732993 838154528 920607740 871115683 925180807 68721494 625387611 800288406 842389526 553393104 723922162 694475310 881309601 906879552 913343725 701785793 824454255 490200063 597613892 622115058 929021789 474449458 844964097 136677797 470930975 826178707 892869610 901156673 992610739 738090875 966630474 330474080 477580770 769438508 926845213 474700714 759303630 677770022 830311511 90385667 286746346 984812464 994964083 129225562 211350261 181567870 653871610 699536554 762036662 60451025 576457340 168893090 663879255 569708692 942048635 239922465 489365226 290019032 571510889 207858641 781930266 378114754 499625350 652021391 704716463 58908663 172105024 601803954 679053005 818548208 950829988 8498502 970048707 316944844 618973698 784503781 870298483 68202015 887540802 352285224 881074195 425704357 987075202 523916724 769288005 923911607 955085291 228748876 668085856 790971474 868275648 342368468 384454545 480921155 630818339 66535853 160576153 495123496 907951765 497305298 751342562 183264817 362157573 34264017 55624151 739741663 945832877 426135683 993747756 472646965 573764979 476851103 774457590 798328945 844760077 116167053 567425794 123857176 515900019 300667381 744184838 457807522 767748289 761733003 826281989 150495139 450116867 648765315 751455437 24424121 134501704 548746003 688942453 687362219 718737653 819091864 842847871 386538648 428492593 628968507 803527530 298630926 402794363 903242964 926633924 624069171 677217369 524435840 612832184 854147698 938294131 210718929 436601859 786141518 989567142 299425316 662016074 431723706 718322164 457574064 864083347 923378451 947097261 23872588 67511817 281871648 318078408 386422285 993834255 601106742 983523042 157553204 734342207 557054047 571214303 749811421 934486912 898173535 949950253 233583369 310677139 837334341 856810669 717699217 734383110 436939683 806350128 475005668 858861531 641257627 666176441 797474470 908189726 70444926 222272395 876126896 955045948 997713012 998325536 883224047 940753689 375171194 827735882 395063435 506003378 795533454 946380819 457623210 989990026 879773736 955689775 483087584 854859569 181356935 225253708 658835118 702870107 575611211 918662325 147832113 741458648 496257383 686843115 452731747 669767008 155590665 648994023 229267122 696201324 443749539 668936128 921748445 946613330 753680335 876239386 242243104 636491507 920110691 924358991 161880520 328703784 536600964 923214267 369886530 999103701 755571731 851027613 259264147 854349946 881321180 888977105 836326398 951116958 788575194 999774356 904102791 929564166 777291268 942933972 796028695 938873437 503492919 585225350 8966516 815911338 157851877 499734786 636250996 919824279 488093513 888557776 620388872 873166011 806775509 991804038 402890158 793487620 905975138 916927394 649964675 664953842 565059916 848895083 321707629 783987830 845714411 887980321 576987063 917896558 954862126 958259431 413196019 537087729 782882556 990529883 203246807 689476329 658449627 965547627 696511513 853932860 704534919 824547335 145170629 761508329 268586338 838276999 246666334 296537096 418811047 773090044 16225883 20921579 311409565 994665348 98325925 141345533 319307830 956544277 795957705 842369419 231078838 509235432 427057941 954753120 215681521 246164701 455354915 904088794 662421273 699133409 624804180 654576546 806432899 808910580 89698524 564169615 277932581 390047034 653551997 753787149 81257839 933713664 999138679 999493026 861599001 952711634 289095455 615838906 110335851 336536430 903518139 981216269 832284538 990109746 854397258 911016194 781812084 875681745 342184142 564935779 257155 851299062 196063072 275664482 164549674 612421310 883980103 892484839 424213542 689225377 255318972 486915212 937597094 964160997 452138362 744409905 401556478 482104550 241592035 302433574 163276952 456109635 671238432 709123796 347968400 969760652 184166732 842344347 423409237 741159601 626095592 897704831 766781489 919338960 91916710 461005516 671027365 823584159 891211559 995694162 712000336 764665427 475764465 544968518 178282976 749342835 590648705 683021265 962826450 978478398 406155856 801020437 997503154 999847020 723067280 827829752 331674106 792285903 559519258 893698148 280290629 551289941 349547930 719229749 158333117 329566605 891297516 940341191 931762961 945995834 186399617 677792294 749520326 760574524 322692543 698078042 953892443 969059209 460832560 555774976 117534311 618263127 307061721 797066880 401573892 460148598 598610053 887265689 892683503 919174276 387052290 579340281 348888253 406230001 956917770 977524916 494415089 628313498 148247631 573163386 284074038 901206223 610757348 951987135 954495406 981277867 262711757 732974052 860052398 962655671 865637646 938678713 472305692 768866698 50734641 745508059 211024288 826339420 749495751 889029277 436579335 994302824 843479928 877306241 952911596 967708249 992064582 994335058 387876737 779860385 393116745 560157877 337715648 494874863 578053116 838796979 150605329 296450039 199198224 218794928 823883627 979348853 351215660 971866056 961887022 962958598 315650426 668327157 133702720 557217179 208829883 789852552 946706586 959856743 39704562 738629559 222457942 702290896 313845583 874454790 528136325 586886162 672771439 748480982 631104548 752408549 933877724 989940243 719918784 945263211 236067296 508822076 397750460 440497452 44410518 182255308 424453926 698119943 298187557 970739876 204881187 748880195 46920923 742061542 609271753 718371910 849202314 994968765 127748518 597320894 89715922 353846636 281087606 462859759 457110684 480387776 287709699 731230572 550542433 984071013 974521672 996607723 298553663 901059176 707057766 975637071 565176407 775063288 571462798 907071248 156919025 210716550 671561551 836308230 205868262 394545945 619058870 759763477 979505101 991066349 831397435 925429052 409822264 628732212 280462146 850616391 261596028 832732258 123618868 409657046 509642415 801742087 696875606 996094244 309343691 407579342 486024042 629250799 295197115 483416325 402680415 511450239 392476680 904063821 203998678 647085870 835379181 964351044 156974774 443623876 995797660 997178842 404658527 811049826 541305580 867745410 554741568 954294406 17382355 734050136 356841068 642629258 202060363 957812891 144749554 265635123 589271354 782178872 436096530 855022803 453340258 605666591 690863036 896486386 60722906 225797154 826981812 910738176 66844668 914203234 676404988 771032574 439518383 728283064 443230752 448601694 399647180 932934884 400143934 660835380 187524875 773275659 439846084 814495190 177412869 951670054 23687359 883855309 118307528 465632582 310671363 471248357 419074304 869841866 339230936 568675886 731997449 786815253 346252397 882314135 231240416 856175946 259562245 879563687 427427244 814700515 4993311 250438585 702904488 758905274 397177218 854016172 541858468 863474479 789356922 821710360 971406550 978777202 265511910 727324926 617238210 782603640 232293080 722019990 301112041 899273514 264119285 273441466 145061233 611107230 660938579 670365592 761471993 950814859 183063407 882651290 736277227 909814015 173720493 329374200 171592100 465124749 317944706 479474158 544526675 669790052 199247803 684617446 999459778 999513780 350895659 437612366 528106692 542247565 99011077 784048864 352365495 638210508 474987023 535264123 925403072 985479111 722806808 939492394 663353938 795968401 245269041 982118822 116821747 980976252 703213841 769808317 355018355 465018929 358387606 698354191 907161925 961520048 998326837 998442314 55505030 137487756 674627989 982788681 28696757 55497946 839452969 935798835 929511593 962875389 133555471 272218583 5057406 892662575 443834033 706079230 130618096 620278811 583401699 972012582 433643339 698793139 925951134 971338326 906738344 971656468 170665078 410551791 90864888 93327523 408811921 627497549 726009814 804613528 60526802 285601450 276175841 695322840 163323216 932175092 551170126 682341737 822581784 964771584 918426243 947809112 77303088 732124046 312740593 872565336 206128362 593633056 245437650 587864755 369957214 988528461 274023454 756297965 862480474 932498872 879302858 880131353 398434954 970872183 466770739 938274493 961841041 979337138 344601461 767366124 274563585 614374572 903692566 957366422 767474932 862779945 70775503 622782025 273965411 304172709 872888034 951105208 930202354 945084633 85185695 392789177 10152985 834957468 949105128 949366042 698029316 821060878 213605195 326175631 856989126 883224482 829357152 880586032 632161862 808406030 225852540 638979765 288067756 990208953 719464173 738720647 500984151 691509704 277810839 804308251 587353918 882247915 915409668 960314921 167066378 255138163 501434770 720520073 156115797 851627281 760980546 921607242 230487347 778359891 519065034 763981263 268386043 844976977 65878419 266124255 634149400 729673665 260916455 362248379 349247507 671295262 351769498 649174310 826650398 841708182 825822394 898200535 492468998 702717819 825694177 980559556 192311415 900746390 329744086 629526546 72365622 947074746 81979348 976089914 351951699 839145395 829082900 836645257 117197470 266673788 223703019 969873173 107647842 404631882 633062035 849424466 848239836 886681182 627227472 929012098 420857002 478853070 974835585 991602008 947850752 952668143 686023163 840266416 798300808 895970353 469047955 703771139 68559457 697811159 968153365 973154780 360237573 372805545 773861247 893925389 806329229 973774095 60537910 211199835 729901174 795971275 504779813 704457599 899931743 928317733 190687896 683168149 510552707 763081861 119473936 640800038 633257364 652300870 415563363 939008787 498030390 996504109 539833567 873577719 892942135 983682494 70680831 235617932 181478362 894032245 708357823 744110042 526994902 571334964 265730099 898463854 252927346 789827634 645417126 746932214 737330820 911647632 444396387 467193351 779724474 823604343 304030786 366241640 17908125 609602448 184383914 461125948 906783060 960942989 220087915 636624330 282502383 540845189 1295229 157409352 425439624 727378782 863598314 993116138 108034095 414406600 767143440 817640343 25387293 313875504 193858519 521930764 955880466 982108170 744007407 986751706 303037764 910680421 470790390 767322226 339246752 540136803 455549135 674864180 306930143 715668377 11589395 170758750 749840997 965498915 835750735 973741643 126933617 923565960 93910151 132155879 956526607 961900139 22288391 985727270 323057696 959250755 80451534 331101151 759807638 780674197 401672194 855927783 576650219 741249826 267994749 583426776 431979461 987102313 950061389 979935600 329614896 335401699 886280589 900812446 683398687 988655024 405809203 880285758 315496648 713614603 74301552 970895382 644372822 946922292 197626917 487675630 976463501 980744369 271771268 675560545 4670472 628024071 110626474 600552540 108640369 837062969 993426163 993631051 747453424 893669846 85983477 709735020 760968317 846774654 896879971 961007434 704609633 741451903 969095893 982624369 813850201 817663313 374992 341517399 162031040 966070337 188906137 957023914 8031828 874596782 263301477 587599465 611986392 723194655 107203663 126540584 340494694 673717343 388020418 938821981 362951257 910702509 22604765 123029321 663582012 915456250 849514057 895731079 705810275 754430402 236075543 870754496 892420710 991913465 997181125 997625181 799595894 924241137 140292547 357729438 418580396 938089924 117998381 441319734 930508125 980933842 186129178 729524841 886460418 929093774 925449897 993615960 108933096 254930326 172836025 669308847 267172517 412180908 382476064 619371191 198173788 611698271 258204156 429426603 509597299 839929490 668653121 673969885 105503922 755706114 73795853 256008650 154443919 211744630 984605362 986392339 370609933 742092146 705781745 826170196 9865785 831667869 757598852 848434144 597773949 801438484 398626436 492676389 985166512 986347937 192855940 422037473 202783811 235160612 462066261 961781016 580331843 859754464 117338734 361320885 699309498 987160490 686602464 994574630 916135000 973744527 95408840 151628302 329551882 758528533 943639515 955198862 409604128 524094884 123564261 842643372 744894493 820905972 309656261 731371981 650270686 677062044 624410749 761197772 78765110 662252446 368583617 779922175 415534386 836786815 523862458 765551371 635762082 836494405 807285534 880519256 526518475 813089733 742070530 934460690 183404886 829891899 569704169 948637640 15176952 214812499 590009994 677428003 826453885 851940815 134718451 156243807 109812861 206313781 444531484 492891666 293784499 990400325 709506459 730004321 921472666 926806795 744828686 900808307 331386045 553325818 789492226 823980761 898264396 983517991 744903395 832279117 539037809 591235289 755149880 757656236 795099546 918892902 88171495 996870803 659747956 849928346 849702625 890018051 124321577 514037500 444633982 707920707 730458252 969221608 754568319 972599206 525245099 532825463 54953995 184473075 986136671 997386866 648267952 799274639 249601761 337802292 627420275 685929185 189048717 652833677 859566085 988672743 355117072 479410825 223262643 335850049 955320944 962339330 320378488 729221195 4210518 961257254 724625190 837166113 385460314 698047947 847844732 877921364 828105984 849715549 78995483 577120361 450347611 673244238 163940849 979242395 749788013 762635996 604800277 804756044 729363179 851480504 946280079 964663023 511239614 928509415 480752951 989534200 330960808 468700316 831159055 964721396 849824777 956433727 841220324 998568181 913403234 993380152 689995373 759412896 839758815 979751422 79477158 438582164 643703706 652978155 72289232 665894632 993819819 997244394 88229567 223421223 623699065 670129790 660026272 905080906 592755833 895644810 225944726 790000639 672342314 848733717 2196422 899402753 399712576 737060959 768828091 814798111 285068965 314280016 83290604 233142417 468674598 515823563 539442606 849338153 177096011 489570124 493644873 575331594 218878335 948524588 880659940 896357527 287724319 884811114 734373208 865665347 1228148 577440049 884192504 887158645 571954892 827964256 703276996 782233372 326677468 791790921 424017193 920714717 732863224 800509855 715442953 756099566 675919083 892477282 538137643 867936191 24461447 408988022 424853575 565463817 248821625 802779309 348959629 660594553 559658474 640459940 740110418 836924931 223457839 997162587 543867898 572188341 22013744 29037253 336808680 387070816 929254294 994236895 69857897 779028790 415244916 617920477 691602531 781438257 454499841 735396041 980253036 990696720 456254097 782287522 860281305 934510893 460220084 711172403 468420939 562053441 422950118 511387982 248570423 835479442 628835199 885693872 960684802 962499561 778773795 922419143 791678191 975085712 502041553 840640869 772478027 963550353 274646759 972967645 503918224 977482629 386941882 919984149 101306472 466761404 442981406 957485206 263512493 810351156 704584339 795976258 601583596 633714480 57771886 464096007 494040110 526587151 207344468 712713630 971481854 989700705 51560851 819046426 569743135 750238100 836754964 870037612 550115610 600772304 822183474 833970541 457421137 506462138 866280347 980218044 822036720 844127788 134476364 740943943 249958868 290681961 267082386 956697604 687742978 746388850 368598426 586938975 186878888 977929471 965585369 999485413 359476864 362136747 179581188 335683426 401044610 564988492 872168371 968292856 573465721 932814646 364932695 599344950 682658730 947532071 655389264 733755003 709244351 822400659 223678330 351705074 327414390 958535455 576340277 612934420 779218146 931692918 816314738 954539623 731754691 797224213 180592447 603787339 502794776 800780089 975867242 988317127 752341182 855659326 784500049 953417814 594079832 933887528 591247616 902714228 704255262 723573902 517155855 980514760 960824125 997621448 782756335 866002728 265100679 592880326 305518763 926543524 914928884 950253331 378365251 562791090 580452482 990337187 120397945 639017475 788954280 970840585 71386942 471770768 476436694 563923968 377865622 567202027 409720572 953640142 851505200 935532705 451870987 876709804 691784874 960725607 90495318 597605253 853380049 953727220 80666969 81802999 522293321 829007554 358387257 442031981 566203225 629281177 751290048 978594504 104869180 960751091 39362658 83578154 809721201 951821131 479252305 650232355 843306348 904948689 890762972 890965515 715673861 891781397 192920109 590632341 578587857 861735307 380270146 857258798 441695619 522754567 143710106 298148641 144208178 708462695 74594598 864220045 28181569 112109895 558996460 876029523 10326574 189403829 662070109 943528193 468490240 992329198 139681318 418449690 459755096 693614127 837606146 868078445 697629643 844750875 881836945 928828303 489773774 749268798 712158835 915806305 279239437 461555262 135838096 461989204 240887482 672944169 406947711 480203818 420675445 686461705 963015857 974811802 181512030 621279797 564742412 969279916 457934761 733739147 914663325 921787125 458765455 803525484 236519024 246110896 564009577 688521920 413255967 613684201 385558298 505453538 23551019 424159246 68037140 838071517 541469222 819035332 599765333 757440134 4226003 497167867 236618931 690481247 389813095 840878010 315449371 369111690 38778939 654183274 921212601 987857688 947459665 989988206 317835858 615109866 809372055 973252315 802642838 957169524 712387016 804638771 139171761 582787134 961656081 966947864 521037056 828371826 373852799 431059284 115418846 130410757 65449531 294442702 359059760 768833298 173307932 984152352 401245045 428055284 619253165 686063720 518309052 970259485 150950058 214536504 48475210 377413010 362491607 873812734 999838781 999880690 493205829 943885832 357795735 749461203 812810994 899351791 397093122 977611278 937520476 965864641 250563380 713699865 198146467 245641240 225857708 238821664 21413112 487637841 804487669 860061485 577568723 800446024 55416342 160005831 618474092 895548689 977875089 985588564 466523642 849065433 139750202 375737516 719363222 884583273 360229197 825051211 894207506 901476756 146647058 908706602 765806878 983009576 961264455 971609322 117298578 493179862 71350435 249785267 708397037 740567910 302239195 920935409 677043800 839810956 268364231 619531600 990266629 997599109 768489350 904919768 955278571 983846141 86211838 925244469 345917035 446881579 37638900 456132206 369088148 527193426 434297405 503237831 195839869 435300746 72922047 528238605 175937074 349166454 235649571 270840608 406546464 927118631 704321455 955777052 593321852 922614914 429096652 494146369 69363382 738775878 665309521 670580368 438321965 862470066 751623765 757618854 92900033 241175819 958801651 992404704 515378318 543721383 199649045 668335556 940521194 941442700 360442445 574639201 403611034 445125867 573268884 788389623 593535965 719482157 975049954 985697165 349699471 551489221 205752458 577931425 321204517 825658540 621728695 928789726 572203588 996958009 154049524 400684048 337435849 637422208 902189930 936925014 802131470 835109854 297113748 525251444 805235009 813660063 570474609 822734083 59419473 793264434 806757071 928246906 618824067 968723901 892037027 928449238 729199056 840310677 370883146 399596657 168194271 429390361 989307212 995455450 678380052 859492156 644240983 800330780 555709532 938360925 828683298 985767880 179623840 363729848 280752078 844283042 461498565 940458555 619657040 760276686 421558742 895087448 224661696 770250531 693296733 703776844 475965678 642337860 62450357 221808299 890188635 928548239 23637506 621526481 917161410 917791568 928268101 941079595 410949607 430052277 463185711 909331498 217797963 662832792 771206149 915959559 600052278 727037243 293097234 525759586 673016826 947439978 69999506 473125119 32015299 107345439 536529316 689123313 505152529 947054801 874636931 933379077 156951107 667346400 89049707 124462266 888114596 902277283 802925779 956229484 25111574 68794745 464672760 469181150 763118607 887594582 696777269 867361830 920973464 957326995 765912302 978169195 92679026 572501960 905036897 930696255 866022144 920840588 538232844 716398176 879156973 887055724 573925922 969297437 608581373 710115572 685329088 763222401 705187926 965469497 370282319 651567141 43427639 978892685 2277508 710874790 313067175 447934828 609293765 702042539 408253222 970207552 25039991 177285551 149867091 227033028 512747009 620738702 330400221 674168219 463616704 922615440 654663563 760253347 142876896 382583451 210728631 228207561 207875532 943028471 937124370 986671627 393100886 699283798 590357679 939109579 377203741 756183704 839847832 919794373 234902486 512087731 916075183 960652055 581570832 920920802 490544189 828707999 913555000 949869095 635184505 739239412 648361923 762282034 236324407 602981852 172385088 271915340 867220804 988834588 467710002 573688952 194549531 644119047 739847639 942287032 968643011 970989220 203003611 787077601 901690166 966569914 481020579 878077280 674670099 994289945 50655191 52199578 377141780 915638547 228558845 948197742 506140370 692485641 661526967 761937367 805837270 996717174 501879251 841616096 658808696 890282646 243678214 383594278 913980049 976724063 276667024 426297427 84538666 334492832 355865318 993765456 501021123 565164218 157794820 323017277 792297821 814234922 707165376 760663761 752429734 945535121 705536314 961913425 506507643 920515594 544672606 832082605 864788206 984012890 40155754 635149291 361667732 839820013 519396479 862989065 858144541 868189954 335293612 768236394 688248754 747357936 878687248 914308088 563790509 745988557 927490369 985065923 873509789 923917311 211892602 767825529 613358957 754050636 828220040 975333321 928867775 972627494 744482364 910286241 252571631 837396994 21355838 137328872 289791020 482172534 13902596 253614794 479946114 946640162 904399135 963577691 299995459 980987992 95441327 805314075 207199948 798990884 213479102 866420693 593883133 963480498 421480879 957063502 299297962 794389355 144469585 403392445 512074103 809298193 2914385 454124051 389658875 770509290 60466873 956980371 148916979 325480952 584156159 956459419 421533986 806793417 517933753 633076806 158086719 384081858 679503646 686725025 368971747 968397463 313141086 851550852 664596615 879147131 306486200 384304028 287537791 575572536 874651822 881931560 457915523 813456576 909035857 991749356 490838224 949753748 404822073 664837448 466467487 609279559 892352729 918803437 538931781 928670140 397778347 615668599 352035605 745251149 590136201 611170876 407671562 447147058 932540346 938065425 846405651 880591693 107719667 380249315 965227185 990472852 945780033 984591036 921935187 990698911 529224063 706434973 295709534 869246201 964363673 975257821 919793459 926058886 783169081 965268947 840062699 960847016 669406729 708891187 302260033 383100107 86082420 571217142 681090715 955882738 832746170 908191365 503198123 506108356 288190095 444705510 119946535 935017418 918677431 957941309 790278688 806713603 559557757 865948831 408412058 695815445 331432299 961560028 144526099 786152435 699264759 991157237 556692232 557585228 812177999 960263354 634744350 884814376 158114370 230987309 154119543 520757946 10526798 951418104 696183388 962506139 143796092 866079324 492585382 556083378 202544825 755333804 680160632 907189780 1442683 160501278 135339363 218130902 308187835 956010156 956335119 977423038 729447336 926248006 484676274 485054717 393888344 469086049 994588710 997121625 578014009 796833376 170935055 379720715 557201850 594625177 377363912 797888622 553416236 655111980 370919911 541419707 9126884 723876302 256316242 716622025 905972180 985021855 651777818 959392030 799498335 897118934 263164201 365351303 386791333 864671041 379341632 987666947 586669637 594570506 70927396 991754482 118054364 886610466 328234925 947579587 318857374 980180131 917401154 945432019 315316303 977140243 840464002 957072494 466961785 581872843 91191195 472759264 91342283 166076770 467967769 799898534 392900848 427032723 922698717 949557341 682080174 704105988 775843346 844683982 157747367 931051075 817618913 884470576 770505334 870441032 431111345 536062580 163445664 382102395 107113759 628923113 957340163 977324905 567222763 963089919 109343936 793937627 79810497 343668916 73204207 584137856 477469328 493932233 64469038 243149057 175482915 872959700 332689613 355288481 602800111 751000213 117456354 493153494 737307168 911763030 602713637 902742366 564913188 732330952 913156764 950102475 378132103 723515261 756354712 963972120 207149905 542788249 652813811 870424624 138678063 290465909 245039971 982322313 999516950 999573432 278786317 596593784 885127984 979764760 789446476 805072421 475043002 552924945 978555014 993080303 667842197 840830803 890120187 916471336 50304289 686527095 280697086 849535654 705382723 909007570 231907970 469293459 270344108 697644461 754925081 886815295 276086267 381929903 801332816 958853637 158008276 387690396 138110399 509332496 324590738 948510651 32932562 816976813 800777351 915338663 475826118 767407908 716924441 888677434 804943423 812745646 780634161 868074013 839061312 897490414 319124388 768798615 54688343 275071385 744921294 897232452 56240112 110373575 319985375 879960862 20252149 733105293 533519856 829432132 534575243 773869735 761146782 990335805 8411375 806166516 817065366 946867373 528944226 658150287 599143398 806904840 348052941 726842585 115911339 286621560 349589891 511805228 827377391 985037948 733300102 978222474 636401009 977698416 531896156 812670191 387890591 832638908 833104646 976292635 642295562 818861199 754566711 792095266 26918903 647099962 305834718 610936282 773962087 781486934 452174003 730028561 959926527 966912621 19538142 953363343 757240953 831345764 800508320 922092220 759557541 997400377 298065193 717441216 255846008 984545872 911664426 999906644 402826764 626619421 688452189 983587975 297264261 298804946 331204338 413326005 813847828 964138902 97300350 810748499 23395085 852397014 190257706 458744219 98474559 145315623 871716980 989662968 998260217 998586337 684477509 976529519 479064503 613983890 811882970 894240695 375033495 902640622 454687882 633366519 233240927 680328083 788233854 986304001 809144938 968175040 776441781 784076111 611088116 756270339 923546496 968184537 907734040 924197988 817263913 991068065 279365066 333830448 23210129 957366926 830200391 975888706 720617985 833854468 500554234 905527599 11516984 626118272 790664685 948776297 119280349 868678783 849566437 890056188 793348726 967242582 554050275 634331696 260106774 836400821 912454462 998084298 335662494 734702639 469409830 826854424 569944178 946133387 706807250 909668928 417371984 437072537 223254919 741916116 49101644 380594989 791524961 909068101 95241832 106638187 153454392 875465828 940873919 948407213 400182292 650878622 96818959 857677191 325678598 857986137 475624998 622082917 147993060 684137917 923630512 927620432 844226438 999589249 470806324 845551627 580202804 981527185 517465451 829813639 390219030 419961950 473834842 736372890 725157930 917948777 818328917 869134269 626779060 868063537 627622050 677801615 680666167 702088126 540976689 563427515 461972639 909622828 457789311 630080060 741748711 761325909 869460052 890165071 947010540 965859069 483746350 911047458 79807314 213786821 314296184 485117387 827834540 988823017 369940866 518102397 376672812 691623942 817355770 931641653 804591342 813217922 865456388 896436689 440610374 955872939 109117809 552417606 473568017 603479300 894343635 941262495 515713801 599864855 804301331 825642872 938329150 942640100 451512567 827519323 593199711 679808215 380784933 774764213 161281485 865389986 275032017 816891080 952004525 966342866 120309553 589125514 744958522 847531847 693718282 937276228 934671052 940291983 844757715 880922589 567870631 584369424 81434790 233297180 576259392 848890370 60517524 550773950 280190508 708234172 162757917 656583245 781740826 789921617 195708434 890640504 784984648 841384512 76059360 405168358 570622009 693199338 189829396 431224909 154084912 779969074 169527794 733732838 72915901 779112194 720353988 793987576 44017075 727191993 464377638 507048374 293924318 846828051 50916259 991904784 511574154 989808246 287745064 684194583 748254632 754407322 297435575 735847064 890317409 927421815 92529114 781785850 678513283 760587200 230338445 813285857 75122864 770622120 376351191 774173659 423048184 957667744 58044507 240693937 242545294 447729850 124242150 856129757 68627160 721005341 654747181 976520992 412425560 542880264 854386258 893871631 643427089 909517091 241167638 611981605 450520007 768615041 456064716 456851413 679705102 695922933 833734435 970654895 285428485 719577868 687210171 886408081 379818181 683088672 942725284 965587056 764672990 805070782 203653092 267466115 17700656 509151060 623349944 930788759 920454560 927446250 436438592 552828673 762562020 861553468 339364331 689404976 603155989 628401189 437556234 856274930 317512686 559285591 566436544 920367103 103094033 798009325 133531510 835983859 693403874 837206574 923752473 924702321 561882631 805338828 232106408 733377274 287684346 857190295 425566896 850001447 45430270 371000231 191556188 257860049 844472992 999905288 835418098 929003495 32551310 926277192 169366364 735289197 177144546 758255187 946905794 978699201 37910215 451621194 408615719 544414157 567698473 697239044 478396435 678920351 141258914 185518513 705923836 900852828 197866232 213626787 396862672 896169259 50232139 763735012 114472744 633959623 766695376 902102239 434235244 850175604 696749808 731948889 275893640 960843101 973578102 996436332 352222399 958268449 337532992 497662280 101882848 291830335 642330012 835762746 438678522 583464486 504819727 532336267 973370817 984745864 665712144 849855308 237115136 433276328 817121559 866139453 230662982 619630258 62032801 155273290 559627777 616918303 434811215 500757980 394889379 986417155 249015413 996721785 501276800 711568850 9020791 832844712 619050364 935285145 837877925 959933137 480656354 914035059 423436865 629104226 897000007 974968946 55796642 931409263 839937631 990265752 857188661 910300506 548569590 613645443 64678715 574909679 352831326 356579307 410585247 432941700 622426655 974507139 237440952 363859621 678228802 827591186 59367664 679143170 12376828 815495578 226715493 534360707 748117139 928139208 326490342 716281266 4391158 357478185 409343742 676089465 153633023 932614446 910749060 939996388 681430233 917094360 35455766 864610527 146244925 760238331 29867122 305882323 790151660 847466777 188388505 220571318 262297887 402176960 762800930 877493382 251749128 631215568 49854244 553581586 148086514 793073885 452035431 565810972 982283096 995740265 966944211 982771632 252859884 562684812 524852120 796292527 66896165 474832993 471746257 474151704 328393397 485086522 386491930 631755737 998733578 999506225 57120427 157133401 689038143 904412572 597338849 602807453 505778509 962270541 505888339 936256156 414335799 737032316 215756184 251335368 86907506 406896627 300112352 534177170 609114274 626654839 757927622 882409225 886831594 941168009 529469506 640403457 693975889 972748382 645229444 750945013 778404270 912774766 961276588 964299991 417061130 514329499 14120890 243688348 66321396 635351798 659370974 673362043 718051589 961471578 727673192 849326635 533151673 960873941 157455065 859199418 620264591 860454041 199034116 795932668 936625099 963645986 709678726 797445782 414064033 995924816 752323619 972304613 292921866 789635119 548035809 556169692 626097647 849319351 246133308 449793613 769821871 978742375 151782274 659831587 157025709 592276264 861390991 950282187 298832546 563908704 125417845 644198978 710211276 806390933 769741258 794620648 642693277 833224492 614236490 859709422 385463961 525253048 460905719 487591298 88955236 731890369 617945386 754225858 655848309 992172575 279124193 565660546 644931592 937805441 544347695 810676655 388589677 776280036 932183592 940230865 717154103 920506605 744667586 971550351 705996774 796938205 437348300 756470123 660174951 684262576 726874327 907911502 454154567 976571431 224330417 351370765 607028466 621142974 537269938 863135500 319464314 929890456 473899840 887563178 81313718 342174950 675001419 806366934 965497001 972223922 311205323 917095598 81115625 663947475 490455389 731914637 659645600 744503491 802938041 956060092 109181797 839769156 787208822 969462464 2368717 893935009 342315610 832816817 24645502 768415633 337201428 735635220 404537878 587615894 947787162 968336784 342265967 934669814 92565104 124380013 758374812 916429507 908315832 920319155 976897078 998831511 822792030 917885481 524528816 807498527 513800804 686249565 299768780 449119952 881288367 908822539 115946965 771194770 323100858 890777861 376977657 840727683 482173605 597534271 536709885 904353608 970580506 996204242 363565416 646595274 571146119 667051011 2465589 495313656 873871719 992516587 207541063 310539234 631196860 651789637 784274882 940317533 832158765 855252477 838634749 864353976 380084321 404253519 352987221 778978724 417053190 811485835 812992067 849320998 123455758 926763249 391350365 485085329 621680579 993310238 78129954 309070292 469422595 478489818 467622999 619685444 696942550 777147278 280190845 620375572 902545967 962225073 693682147 878841241 199216878 463985010 251324732 310083477 989800903 993293694 882940104 977791274 256266618 987805003 336940017 657795331 464895388 777413448 851042475 892985241 558111074 951877788 650938330 737716477 391399137 562579604 429415411 546551052 288938511 315226586 664761145 842343271 203571363 578793373 835764190 845838921 896862822 899504480 674041616 760938183 398077087 436420744 904771099 940432976 546073030 669135780 562792446 983410411 723504090 965585655 474468288 565263364 46467622 713973839 957198686 957940013 881366983 995667974 71901074 506973441 980311823 995284190 774346982 888349425 613255250 825148441 560945714 713932653 40061001 298616565 642439830 992334966 688064615 960339505 543236388 979959713 63054636 981178276 725888954 765536124 947506828 962476427 218705647 623873078 232873836 683592945 572069533 706300359 529052153 959969767 502964394 820867078 571829363 805303301 786978926 883715625 139699706 802053653 826340428 875185786 4093382 910372893 395800077 918856633 944455326 996819251 18434102 461995929 481346393 664444904 490749465 913944159 533623937 732935352 176391469 384106925 262364278 439294191 449332490 923680148 961384150 979402630 650823876 925032970 18230757 147552602 755514197 927709902 718573777 754711938 580791039 658398174 903950196 976916948 346083082 936061402 322599487 335255196 30361956 311745702 826599556 854191921 5654522 724551648 11296944 921030370 371966754 647950085 382516599 847478760 313066039 531648844 122438775 695085753 326972781 914823973 65299239 363602264 15201700 436956323 194084296 649065501 391066533 549650826 251993580 888238349 858045202 881832013 660247144 671327209 187707620 503509912 42684074 351548785 817394795 901611904 403101449 684586367 146950240 307271882 518138826 911041838 915903989 963952546 431429642 988473189 376218965 942471374 4059236 765979025 517705341 744364249 580746293 646743258 700465368 910783629 19451176 175598074 235778560 915407938 827550729 833299012 284552558 332308874 155375050 257607169 509646229 985301620 138564272 255906096 140873598 497853824 445863945 767611331 866681845 925106649 332044971 504520134 896500653 941472878 992371084 999419070 276831605 462028349 803279465 934760623 600653583 895241176 228530282 507160295 839281002 974843667 841849051 875622711 669102695 859706221 195536764 532456935 456801911 603948374 400766192 724879092 961826665 970917212 124234542 994455587 768665282 872524557 60142334 533224206 699773643 929109880 800995594 934652743 487131152 979279683 755105251 775220163 486610244 875819851 563366604 849171454 334158196 361349475 760502024 933298501 198772087 943700957 794464141 798738684 41695044 142098194 988400675 991588163 220872175 249213252 167944599 674836862 722772312 781489273 347697186 458810294 783627045 887491402 821557490 947602259 614771546 720994902 172537668 541932839 892250355 927969370 438939627 549414577 9634729 340922575 42571947 462165746 600365264 903478885 221027287 875773455 600278160 648679182 618569632 628058787 435096817 665096815 49829780 597172812 527460336 917524053 451180077 526701460 164013820 409544673 160429151 179055823 718755896 786961331 468453633 470771940 144369572 183333736 852865523 868140387 407319516 774125106 450041399 484528268 781344708 846446673 114224094 968136299 164950087 947446308 527126252 633815868 6745001 133446690 631634983 865858720 861991431 871560711 23525371 526545066 920965456 992838022 883277792 990202150 720204929 775775339 654851169 896423252 403680608 793129558 18209350 132005308 16236545 22070581 54008103 372299662 544142410 739197913 147899370 787161340 698452581 860041831 442198084 727196755 330833121 977155634 984926524 994284979 537043684 825659881 765553600 989658670 610102220 616235693 335937073 553947493 936383029 996778169 456065985 520393357 892725108 908947728 827462237 973071411 7150102 433949833 914614436 925735138 60938015 962094516 737100956 953522746 356779330 803404084 115527718 483715582 652228728 698722778 207537913 437945350 676787873 898464189 261110326 647069921 815366108 847519112 81835752 254451270 879198566 900341019 120456836 433030490 933408690 951552825 577913707 921895113 622950554 654723322 596865705 710503011 874482209 907579824 826071260 871557149 260257448 383950650 538033442 914751349 51591360 236540070 734781970 922757861 324728228 726538062 723467735 780700532 110892441 240492621 616017435 898172346 350729260 401174718 850151929 925749403 547318700 760417325 372130521 652173692 634999441 743228241 710222875 758597985 470851449 837619833 95400323 268139525 667975231 679508038 41559854 543282745 383532450 877065033 223547330 496677669 302441845 713846166 328332404 587110151 348501808 727474599 135887824 751918853 534399319 752817263 365953387 523950759 134855375 361023869 572020401 744810695 111217159 631912876 640547951 980998047 614397822 798091842 427432539 813865048 689064173 993217569 430205306 997216286 134537066 915430970 385003926 496854703 459847172 626527545 641478572 679864150 7318829 611452517 414392169 644084311 21987518 822552587 109771011 687262132 530881458 819342977 125163408 194691978 202255483 756431720 418432556 569177993 170894211 866595469 326372948 708982445 363411018 445575668 859369951 943511547 157861384 584846404 348327693 655367054 827407118 916878591 982616165 985211266 514835434 876028301 588279384 840770578 390816067 887401548 189880486 303770556 373143345 376784017 948358543 953558425 80732289 517203031 977928235 980829786 235710144 621328055 651607237 742570473 186305510 956198159 700570520 733745617 219204584 935045932 933634338 938316888 745532493 883627341 745256164 976060909 647010250 657251110 194850458 475676419 55611220 291675632 810620079 994364748 39070669 743801336 362081625 422188006 411396457 455487421 876374528 911142847 629853192 996163488 861753957 886136202 866806146 943038177 375185203 753860435 328343504 334384326 378524707 476940407 350308986 986227665 649951666 870233459 854458995 863245636 209460148 567885805 393349771 789644454 525056840 884536861 716145481 889901662 666519791 704098222 441414256 920662621 718129711 893615967 489989454 556199094 619425562 755405935 127146025 156640404 568072239 639984279 579636386 999768942 501321492 999434964 32115337 667578922 947526543 973666707 738024781 793760078 495650522 626246829 251765747 641950954 274476073 530588859 87693520 191108560 181843235 236902898 846923803 867562295 584289166 626566024 632296990 851443492 620975185 657867409 110251643 248286795 848064193 874967272 551089233 774194197 788734435 916587677 54460165 210890900 718676762 929567330 857527603 887428460 717071451 919325842 32552391 821090942 918713925 951355369 115679073 997509025 289427853 580225133 502329521 654515285 856237989 856368567 661909480 784715125 540267588 549839133 144938942 246780336 710820828 730679451 795606653 840544627 204327483 643899490 805940313 856584296 700173797 897441259 423917878 969003608 992105364 998347283 442253691 777099572 511431688 849741408 748148566 804668657 868845611 900726319 562462327 957746850 152163110 507481843 209256795 670905662 176716389 201379922 735081642 772910162 682170376 953508961 837051264 954220541 246064390 514590134 525854297 695119765 586539708 883660505 363263692 681109395 810930751 983117481 993170643 995802602 32010606 176375833 657787605 802087127 583900762 925010602 733781805 900489703 33039992 523075167 65550417 454623977 729177396 876963367 268595361 652847137 267907952 557970326 154038108 868493437 404794370 882331251 209278892 686734437 215180484 603467618 517178839 714747031 711057619 777144143 354338441 636477911 19853851 605669302 625948722 683224874 239295966 966753594 246322261 803053417 798272113 809976484 338295965 789573512 359842460 638666352 569447446 797165456 940239172 962257404 545895234 693133880 170428258 529136688 298278769 764235814 673110485 736267673 347718544 417222969 289978645 471450126 129909861 238189940 953498927 965571578 463009247 816522814 679869264 987212889 987659851 992040978 45623916 101632943 448346196 590542850 572224589 599746972 548293569 765540338 886185996 893832197 237429802 883792698 22864846 61513833 614020685 916362627 618095527 934954262 605656225 791609684 868276111 960037899 448581868 728014380 441012480 610543251 49940636 983244220 330834758 495741444 448952246 691998759 253466924 296617146 554264371 732545810 775898659 945955533 270055440 450290129 431792091 930682690 451214739 817482018 641952758 770128191 615969475 962154544 485248969 631009702 689295702 746820129 918343647 928656159 251989316 648236260 710620393 934298928 988399927 998172563 308212387 600831795 743487243 765418171 633749148 722877186 996572276 999043573 577648530 806101713 829191519 917514348 930515386 993529294 246656773 429461048 14767834 170877621 979039875 990489865 677393018 852859944 606328013 849720716 873678603 955884501 949121174 966821269 326736863 824206602 134347324 302782939 852449233 948075895 246295494 806048530 513388946 819265214 52109956 377677519 743679193 967925320 295860487 948773990 805730990 862514620 271925712 849185503 303429719 594313932 128713688 353906187 148746212 220326773 676404264 805280298 436842304 768942425 626014525 700621141 152976783 670970220 287017487 860319099 118164086 121153418 246713334 886011076 847588797 968881217 454430171 494097508 292265320 384255590 95652191 655985078 244908491 543851880 696718727 858554035 209146425 761234941 599461299 950825243 516209639 954510874 694017425 948261885 659804865 728961971 889400997 952338173 790422664 901557888 624240577 735742649 105162473 904111390 488080469 795155717 833390567 925966948 171271683 651971449 250054633 408498950 211711679 338843580 548250106 875855583 251568354 986972498 787768890 995807357 433972987 866398518 721526219 804856101 246393390 607896775 787059563 841927954 304475566 585030748 888195727 927745939 246600964 934100079 869425649 999690462 426724806 963915948 617778941 866460128 304405597 948264669 779634359 911380951 466517277 682588493 704524945 921676839 748394264 911118934 894670596 995380792 954000513 977314461 997566476 999063034 893132098 904680074 525409143 689531007 159722722 997573792 940033294 958065499 265182522 683477454 182854417 334216573 476309597 568553743 239501957 899013758 880327797 925930202 179011163 372565055 16783656 643080688 66933346 811492055 926176076 933078173 783862870 842867540 457803109 965062899 801860112 812965057 162738274 182085336 574109173 644237518 7618762 472695920 532069226 578958839 822451235 832388570 443902985 695646485 179736900 323369962 601902229 758180981 949565900 991204227 788348857 954311262 112024050 868357777 506846152 825146875 582886548 796965051 83605555 242864877 739345025 983017181 199665033 325491527 770457431 893212597 598499378 751576946 873483281 948021522 871874645 942159204 814881895 991994438 86113848 107389375 824448460 884333429 704644671 859576495 677551997 976232674 547175471 929699336 969889821 985090530 865647497 912232143 839964245 880779525 469275698 618196450 448309671 786310985 536145247 740591096 560480063 694698593 880845473 951002562 704655042 719629370 83191068 761888294 197387402 832892859 450164793 535939497 53876599 509905149 724193862 964983449 259556569 317571271 181221169 413217538 372492867 483563712 455209309 675974969 892157006 914103231 947523587 966549705 851035957 996988951 782653555 785110752 932523714 947999555 220027216 975654405 729430080 775881573 178617025 867767909 666318967 799685242 26180772 831791848 481367921 484182712 229203263 839431327 689418169 985979820 312296546 378672285 252723673 951175033 963558799 981014607 607634365 742753559 690733891 938428018 238820242 771754428 447948336 805580476 757646514 827184787 735825724 781600753 733649813 955986820 338592002 641750508 879125095 915329665 941281290 941646305 908399586 941025827 461758599 499043054 140434797 847551651 102759964 670852382 779182969 927169518 927579650 987057834 288513123 890874879 592969543 599193504 746215280 749892661 768281370 987400700 283658045 563581898 79315530 413925581 153480476 881443724 939628816 994115845 372490670 443880676 702237694 857197801 231822287 684126370 12032898 595760537 337986025 977000284 968825881 985799446 357665898 932471622 187308542 255003201 650047677 736474829 227332833 507981614 50062440 225634951 787705347 788162555 421791063 831809916 753006194 816655371 504740423 892970216 575823112 696448481 34225402 311915376 438215774 987017609 559992754 755039176 58122242 627121906 962848132 983535612 99107310 793269801 429607780 772574260 253046332 931513305 46076506 795287872 225221586 377959533 488767842 677825981 206057132 434966150 338646083 520126682 779637081 995056840 834789704 862658862 913778249 999325088 215407485 498597426 839549265 883934549 221242780 935144422 823395045 955301630 674483678 860803698 134446069 503026868 565835666 677356587 922654840 946803435 663365828 819166717 910367535 998493100 594705090 835759038 770071601 805069441 277410073 999423662 425132369 565930206 970163397 999759012 895415292 951437861 856837643 900609621 217621749 870541063 953887067 987450782 624105739 834115521 176984520 497385068 118387860 330625706 187361137 952995966 83882976 819204838 488372998 923930901 629453627 819394536 933478268 976191232 31160643 218941016 799188373 900201752 612954749 673811301 592334279 984917150 650921025 701002059 655191434 718292162 462968404 894956431 978106933 986596257 208989314 434168397 151137979 431851876 877009466 943101542 615089411 674602868 358575992 497655261 75960774 960109733 294656540 445355125 879149651 927534634 887711245 951436120 749172577 985959871 743306586 905698987 82620890 885552361 658807496 760016258 905517998 927540215 99419969 558197473 84203138 645435546 927035498 967776780 487419380 651434061 834308227 958297743 390322500 401295881 210850370 549135149 985498759 995582554 658676026 669931211 731364477 946218292 853538059 864633307 648537835 797040185 323290041 900469452 77482160 87940859 671471023 864537648 226791588 327666779 232223705 907214003 44498374 314417749 449897787 763354315 425029309 978632632 694008708 948812934 291763849 816474412 660799790 817062937 889854994 913940740 846654804 902819038 557149567 740680235 414168293 513653547 757310087 858977497 414546786 459469804 769604774 909805702 47520581 790006654 631556575 712615235 995246385 999997354 338046449 404718150 618864342 885196486 683331618 966538876 526446859 777671218 375218226 493192418 711095761 884339683 500151073 570827029 271131143 536287796 113930358 990686310 466307647 597077200 451028066 617881158 82516116 544066907 224336093 299370542 719151429 857607354 824490690 836549004 894968860 930354947 20120889 325987803 554243502 830061776 712154273 805372354 774123463 988031075 487882810 620128944 668757541 697313105 936002609 994753732 866494529 886772885 522952606 814897114 417618433 770509621 248728696 669948965 13872592 468533870 966591500 972425197 586028477 704991985 11109650 161778663 688310540 887340096 198822254 457207465 551278626 848185254 143095889 592663203 78537889 455361450 823122325 952596651 857261707 933658134 155051326 378343818 802708833 861722278 545239717 915676095 164654424 825878071 250672379 835958844 950637844 983940980 563688471 770799501 997841095 999780885 172587903 382055155 600847906 662171703 672184940 998184685 655589903 803678450 603651087 818894516 743940156 837021829 493130654 686503377 423401095 703441669 579124928 810988211 943829763 976570691 726671561 775213399 515484697 555563063 375730109 841820858 50810134 820794505 958620104 977664586 389645422 603645795 889150146 945162195 139597481 355989763 351782970 915009000 24425437 421496034 918190458 935760166 13306004 218723879 882788317 896030544 559294434 730570555 638749043 959801508 235187373 865952236 56487993 809497526 402652824 768935992 934555744 962082530 851756689 966532612 780266206 923697505 120241986 223104648 865090265 881444532 545679112 866305060 640672681 719736653 186369989 572516875 17763568 150136227 665757847 948863908 843318548 844768171 311761251 903424109 521324144 599519982 475797820 820074303 116667641 749503675 999722667 999892123 574655019 622053149 51616186 801641678 247195999 812131593 162962055 202607969 314602081 451537842 889796599 892888405 644317526 968660230 63559338 717157373 676672260 698747404 429925861 501831550 868269476 995708598 335522954 703388285 43295949 407188477 59465764 465207930 880499982 924252800 678978792 979853878 338600888 386699686 245591182 778406362 969620671 987072926 364917239 744017600 127099761 561010364 216025812 480103455 53995281 486436798 530504808 939200395 432930704 592476254 965393277 993872497 950465955 989882674 855753957 956844606 930647278 975123361 535894505 906264589 43676453 372015436 129111278 364649441 202796553 264183095 435309664 986643461 494243904 909215899 483215776 917228520 92504043 620365007 671690636 749123326 513647148 625970946 937707574 983859883 547119999 696980927 657335350 891784466 705411425 912909837 410094643 579488797 419143906 638111771 543895410 546024707 17594239 488434776 766362056 965747441 864111896 951176986 308989199 943220678 537021609 619232190 850494873 900268270 949663735 965548545 981577832 986887168 314584764 758577047 408530895 903261508 348152765 830633428 550577077 634349969 881270513 945586381 681899322 731829171 446566409 913769864 198385599 362963762 727067447 743524242 242955090 973296397 671211173 920671407 558020346 787117534 85063507 235898829 353502180 575781449 847261151 987382002 522890933 803056955 687444404 702409359 443142803 974083488 815684139 964531756 212401459 953440591 357070336 450911964 869405038 897335322 506691929 967904959 838472939 910787778 165816246 852476169 135151802 659708040 170195868 790296439 699024749 974356091 741066446 993531556 729361163 881407666 73763931 587596052 2511980 39196199 940238290 955275454 417914563 791437212 525787125 562509455 842519515 928508083 276149555 913029184 686941935 922178587 939335347 987792520 545495081 975931023 791500320 998278962 142244685 581921522 312460823 907395302 88004032 705991033 345603899 748544720 974131755 988026768 949188232 951331859 25301172 264910921 408555170 649891455 91964098 641244692 651524847 823919539 197487814 695983156 393486939 440415253 629259616 713938230 479879079 619288638 589483898 792860849 117543212 596264448 839253126 941547568 444139712 968410004 365884853 924920705 704090482 829144934 2353082 791675118 3196545 180344768 560848138 950050116 665886022 670442045 771180222 952306379 753013709 792724399 880415967 882138394 309930062 825698783 853554309 887066041 383946866 845169651 625222213 680506509 63630221 912727040 599327772 653212617 930886477 948655512 933831364 973955706 322536198 676312645 968082841 991815537 523913826 775058268 594230295 786765748 59740014 274436474 676512393 724894207 111998753 630974011 814044980 928531332 900349053 902382127 312899213 489392142 552029325 979884639 494420606 819613623 715106000 838742222 387781341 899636914 315820409 646875029 719790373 759834716 428650142 864278616 910788465 913455868 421427783 546547422 574116168 783189803 459578631 853771063 881841656 964328824 264554386 522859278 945592989 965821086 149907337 869764724 667291407 986941764 819167729 949667427 851589268 875008551 841206923 885579710 425345554 537974195 912275449 964393141 111056415 817908368 239296374 678653489 767194725 939595562 671652935 743709251 260689237 947461321 303260792 474784005 58958881 942653074 489597297 593896115 54826319 585168517 844226019 916157677 82575343 557279447 350883555 423077872 549395251 719392067 384817576 402892889 77073472 107380431 461542271 810401703 987869428 990201793 187827061 403564079 712185280 992769664 881212076 965490072 73636775 520396642 135798365 695546871 609099667 838869656 895296016 935518754 915517581 985034180 88646870 322649728 844205286 862103569 942338062 965056286 325454694 538613227 226532721 965573370 591933583 649342345 122388286 475954733 45537925 78311735 636075097 750724291 930833183 994482884 886811973 894776762 729085269 982243164 656478757 754659158 173517607 363487481 867262759 948151112 218081041 558006176 10159005 768089250 438301204 462985615 577410977 988665768 120294224 455014166 410605316 930482460 996490613 997693918 723951188 864305469 561094818 764874267 610668557 814158168 630636205 666684963 824803870 866181944 585075880 771255253 447554804 695907324 478165174 784660453 422650531 755111880 831093216 872266696 355547014 707296321 499205183 982427381 32238926 436969839 194438454 745681923 213248365 676978705 40729070 312515269 389487502 611780841 949646829 980687368 715398240 732393816 491883888 837434511 213963210 856409366 730332929 915044837 766742708 982623691 544382834 802599268 875578403 934745986 240897062 273621643 786650366 996816521 14951796 607402035 35143945 291928742 509675778 910670826 737375692 839228916 55290210 326313183 311599924 517880774 872846184 886728003 828380881 863633222 590176633 840607759 136783843 628165304 54437701 639101965 488230726 494902329 472238143 552909995 19680023 64317649 724454506 839475182 974751947 983842807 644015909 734989438 222439019 429246225 401400990 445371190 569290865 668342437 567949243 811687625 643625363 987904156 320324117 398524259 891125874 996753294 839835528 872563115 859344875 890888146 791303393 999409698 668898011 887243439 223088681 505684751 926875526 959179274 409838319 990249883 676638200 986555693 822294059 901560424 631162098 822842302 421816145 541693207 582868007 953700670 771484090 921560281 563368355 610371679 206923362 479132481 685539069 792465518 657128679 872614416 766697148 936620866 406365469 918513048 231816122 745090964 757408040 941247193 663316124 963677012 891835743 940136927 363437265 810391472 118947659 645409852 1929639 269249768 859056242 950048088 303604710 481851389 189696590 573692256 257239884 721808436 225052331 399211850 10980151 660189731 717876883 802189799 648041777 877375770 478620151 662141227 228278922 969739906 508330519 539313019 915215430 918137801 129374324 553064045 770498028 868514239 284799770 499661970 782302865 854292943 949427669 996769657 781015788 854489660 649043324 922492844 708167630 749147196 191457706 498362307 532048175 608376300 277693100 542143137 637598354 773155085 185093421 185802347 76732024 677087406 629565358 649818437 586627706 681148950 673173003 734602689 97851737 876349195 227410044 677965213 896285113 943654293 933068009 936809059 948009023 971969674 553020883 915053176 68773321 348453051 590093716 655291437 799404477 985723973 996384571 998605719 841219520 955447583 756319532 783078669 631514255 713107736 471167441 769726565 889795357 934514436 204130121 848616875 996030914 996939223 90286530 751438601 428958610 676069026 908082319 966455360 835702299 942647449 795944589 800218384 832146826 930321994 987299950 998514198 969286228 996385394 788719011 900088295 42286404 429713386 935867409 970070644 396811652 645871713 465459447 761961550 348098135 938343866 809355844 991783750 889792352 944873293 925774620 964646876 211582559 520700400 831470712 964559949 748955603 838208005 927197455 943445196 7383790 876753682 976966414 978732110 130317557 809417912 125963611 147898937 121700234 388336831 745842677 977849123 57016026 774496622 436981385 681714759 532159670 661747433 907223912 935341946 296585810 696445213